OSDN Git Service

V 3.2
authorJean-Michel THOORENS <jeanmichel.thoorens@gmail.com>
Sun, 3 Nov 2019 08:44:31 +0000 (09:44 +0100)
committerJean-Michel THOORENS <jeanmichel.thoorens@gmail.com>
Sun, 3 Nov 2019 08:44:31 +0000 (09:44 +0100)
119 files changed:
ADDON/CORE_COMP.asm [new file with mode: 0644]
ADDON/FixPoint.asm
ADDON/SD_TOOLS.asm
ADDON/UTILITY.asm
FastForth.pdf
FastForthWords.txt
MSP430-FORTH/BOOT.4th [new file with mode: 0644]
MSP430-FORTH/CHNGBAUD.f
MSP430-FORTH/CHNGBAUD_pretty.f [new file with mode: 0644]
MSP430-FORTH/COMPARE.f [new file with mode: 0644]
MSP430-FORTH/CORDIC.f
MSP430-FORTH/CORECOMP.f [moved from MSP430-FORTH/ANS_COMP.f with 53% similarity]
MSP430-FORTH/CORETEST.4TH
MSP430-FORTH/DEFER.f [new file with mode: 0644]
MSP430-FORTH/FF_SPECS.f
MSP430-FORTH/FixPoint.f
MSP430-FORTH/LAST.4TH [new file with mode: 0644]
MSP430-FORTH/MSP_EXP430FR5994/ANS_COMP.4TH [deleted file]
MSP430-FORTH/MSP_EXP430FR5994/BOOT.4TH
MSP430-FORTH/MSP_EXP430FR5994/CHNGBAUD.4TH
MSP430-FORTH/MSP_EXP430FR5994/COMPARE.4TH [new file with mode: 0644]
MSP430-FORTH/MSP_EXP430FR5994/CORDIC.4TH
MSP430-FORTH/MSP_EXP430FR5994/CORECOMP.4TH [new file with mode: 0644]
MSP430-FORTH/MSP_EXP430FR5994/CORETEST.4TH
MSP430-FORTH/MSP_EXP430FR5994/FF_SPECS.4TH
MSP430-FORTH/MSP_EXP430FR5994/FIXPOINT.4TH
MSP430-FORTH/MSP_EXP430FR5994/MISC/TESTASM.4TH
MSP430-FORTH/MSP_EXP430FR5994/PROG100K.4TH
MSP430-FORTH/MSP_EXP430FR5994/RC5TOLCD.4TH
MSP430-FORTH/MSP_EXP430FR5994/RTC.4TH
MSP430-FORTH/MSP_EXP430FR5994/SD_TEST.4TH
MSP430-FORTH/MSP_EXP430FR5994/SD_TOOLS.4TH
MSP430-FORTH/MSP_EXP430FR5994/TESTXASM.4TH
MSP430-FORTH/MSP_EXP430FR5994/UTILITY.4TH
MSP430-FORTH/PROG100k.f
MSP430-FORTH/RC5toLCD.f
MSP430-FORTH/RTC.f
MSP430-FORTH/SD_TEST.f
MSP430-FORTH/SD_TOOLS.f
MSP430-FORTH/TESTASM.F
MSP430-FORTH/TESTXASM.F
MSP430-FORTH/TSTWORDS.4TH [new file with mode: 0644]
MSP430-FORTH/UTILITY.f
MSP430-FORTH/VALUE.f [new file with mode: 0644]
README.md
SciTEDirectory.properties
binaries/CHIPSTICK_FR2433_16MHz.txt
binaries/CHIPSTICK_FR2433_1MHz.txt
binaries/CHIPSTICK_FR2433_8MHz.txt
binaries/LP_MSP430FR2476_16MHz.txt
binaries/LP_MSP430FR2476_1MHz.txt
binaries/LP_MSP430FR2476_8MHz.txt
binaries/Log/log.txt [deleted file]
binaries/MSP_EXP430FR2355_16MHz.txt
binaries/MSP_EXP430FR2355_1MHz.txt
binaries/MSP_EXP430FR2355_24MHz.txt
binaries/MSP_EXP430FR2355_8MHz.txt
binaries/MSP_EXP430FR2433_16MHz.txt
binaries/MSP_EXP430FR2433_1MHz.txt
binaries/MSP_EXP430FR2433_8MHz.txt
binaries/MSP_EXP430FR4133_16MHz.txt
binaries/MSP_EXP430FR4133_1MHz.txt
binaries/MSP_EXP430FR4133_8MHz.txt
binaries/MSP_EXP430FR5739_16MHz.txt
binaries/MSP_EXP430FR5739_1MHz.txt
binaries/MSP_EXP430FR5739_24MHz.txt
binaries/MSP_EXP430FR5739_8MHz.txt
binaries/MSP_EXP430FR5969_16MHz.txt
binaries/MSP_EXP430FR5969_1MHz.txt
binaries/MSP_EXP430FR5969_8MHz.txt
binaries/MSP_EXP430FR5994.txt [deleted file]
binaries/MSP_EXP430FR5994_16MHz.txt
binaries/MSP_EXP430FR5994_1MHz.txt
binaries/MSP_EXP430FR5994_8MHz.txt
binaries/MSP_EXP430FR6989_16MHz.txt
binaries/MSP_EXP430FR6989_1MHz.txt
binaries/MSP_EXP430FR6989_8MHz.txt
config/SendFile.ttl
forthMSP430FR.asm
forthMSP430FR_ASM.asm
forthMSP430FR_CONDCOMP.asm
forthMSP430FR_EXTD_ASM.asm
forthMSP430FR_HALFDUPLEX.asm
forthMSP430FR_SD_ACCEPT.asm
forthMSP430FR_SD_LOAD.asm
forthMSP430FR_SD_LowLvl.asm
forthMSP430FR_SD_RW.asm
inc/CHIPSTICK_FR2433.asm
inc/LP_MSP430FR2476.asm
inc/LP_MSP430FR2476.pat
inc/MSP430FR2355.pat
inc/MSP430FR2433.inc
inc/MSP430FR2433.pat
inc/MSP430FR2476.pat
inc/MSP430FR2633.pat
inc/MSP430FR4133.pat
inc/MSP430FR5738.pat
inc/MSP430FR5739.pat
inc/MSP430FR5948.pat
inc/MSP430FR5969.pat
inc/MSP430FR5994.inc
inc/MSP430FR5994.pat
inc/MSP430FR6989.pat
inc/MSP_EXP430FR2355.asm
inc/MSP_EXP430FR2355.pat
inc/MSP_EXP430FR2433.asm
inc/MSP_EXP430FR2433.pat
inc/MSP_EXP430FR4133.asm
inc/MSP_EXP430FR4133.pat
inc/MSP_EXP430FR5739.asm
inc/MSP_EXP430FR5739.pat
inc/MSP_EXP430FR5969.asm
inc/MSP_EXP430FR5969.pat
inc/MSP_EXP430FR5994.asm
inc/MSP_EXP430FR5994.pat
inc/MSP_EXP430FR6989.asm
inc/MSP_EXP430FR6989.pat
inc/TERMINALBAUDRATE.inc
inc/ThingsInFirst.inc

diff --git a/ADDON/CORE_COMP.asm b/ADDON/CORE_COMP.asm
new file mode 100644 (file)
index 0000000..1dace28
--- /dev/null
@@ -0,0 +1,573 @@
+; -*- coding: utf-8 -*-
+; http://patorjk.com/software/taag/#p=display&f=Banner&t=Fast Forth
+
+; Fast Forth For Texas Instrument MSP430FRxxxx FRAM devices
+; Copyright (C) <2015>  <J.M. THOORENS>
+;
+; This program is free software: you can redistribute it and/or modify
+; it under the terms of the GNU General Public License as published by
+; the Free Software Foundation, either version 3 of the License, or
+; (at your option) any later version.
+;
+; This program is distributed in the hope that it will be useful,
+; but WITHOUT ANY WARRANTY; without even the implied warranty of
+; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+; GNU General Public License for more details.
+;
+; You should have received a copy of the GNU General Public License
+; along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+
+    FORTHWORD "{CORE_COMP}"
+    MOV @IP+,PC
+
+;https://forth-standard.org/standard/core/SPACE
+;C SPACE   --               output a space
+            FORTHWORD "SPACE"
+SPACE       SUB #2,PSP              ;1
+            MOV TOS,0(PSP)          ;3
+            MOV #20h,TOS            ;2
+            JMP EMIT                ;17~  23~
+
+;https://forth-standard.org/standard/core/SPACES
+;C SPACES   n --            output n spaces
+            FORTHWORD "SPACES"
+SPACES      CMP #0,TOS
+            JZ SPACESNEXT2
+            PUSH IP
+            MOV #SPACESNEXT,IP
+            JMP SPACE               ;25~
+SPACESNEXT  .word   $+2
+            SUB #2,IP               ;1
+            SUB #1,TOS              ;1
+            JNZ SPACE               ;25~ ==> 27~ by space ==> 2.963 MBds @ 8 MHz
+            MOV @RSP+,IP            ;
+SPACESNEXT2 MOV @PSP+,TOS           ; --         drop n
+            MOV @IP+,PC                   ;
+
+    .IFDEF MPY
+
+;https://forth-standard.org/standard/core/UMTimes
+;C UM*     u1 u2 -- ud   unsigned 16x16->32 mult.
+            FORTHWORD "UM*"
+UMSTAR      MOV @PSP,&MPY       ; Load 1st operand
+            MOV TOS,&OP2        ; Load 2nd operand
+            MOV &RES0,0(PSP)    ; low result on stack
+            MOV &RES1,TOS       ; high result in TOS
+            MOV @IP+,PC
+
+;https://forth-standard.org/standard/core/MTimes
+;C M*     n1 n2 -- dlo dhi  signed 16*16->32 multiply
+            FORTHWORD "M*"
+MSTAR       MOV @PSP,&MPYS
+            MOV TOS,&OP2
+            MOV &RES0,0(PSP)
+            MOV &RES1,TOS
+            MOV @IP+,PC
+
+    .ELSE
+
+;https://forth-standard.org/standard/core/MTimes
+;C M*     n1 n2 -- dlo dhi  signed 16*16->32 multiply
+            FORTHWORD "M*"
+MSTAR       MOV TOS,S           ; TOS= n2
+            XOR @PSP,S          ; S contains sign of result
+            CMP #0,0(PSP)       ; n1 > -1 ?
+            JGE u1n2MSTAR       ; yes
+            XOR #-1,0(PSP)      ; no : n1 --> u1
+            ADD #1,0(PSP)       ;
+u1n2MSTAR   CMP #0,TOS          ; n2 <= -1 ?
+            JGE u1u2MSTAR       ; no
+            XOR #-1,TOS         ; y: n2 --> u2 
+            ADD #1,TOS          ;
+u1u2MSTAR   PUSHM #2,IP         ;           PUSHM IP,S
+            ASMtoFORTH
+            .word UMSTAR        ; UMSTAR use S,T,W,X,Y
+            .word   $+2
+            POPM #2,IP          ;           POPM S,IP
+            CMP #0,S            ; result > -1 ?
+            JGE MSTARend        ; yes
+            XOR #-1,0(PSP)      ; no : ud --> d
+            XOR #-1,TOS
+            ADD #1,0(PSP)
+            ADDC #0,TOS
+MSTARend    MOV @IP+,PC
+
+    .ENDIF ;MPY
+
+;https://forth-standard.org/standard/core/UMDivMOD
+; UM/MOD   udlo|udhi u1 -- r q   unsigned 32/16->r16 q16
+            FORTHWORD "UM/MOD"
+UMSLASHMOD  PUSH #DROP          ;3 as return address for MU/MOD
+            MOV #MUSMOD,PC
+
+;https://forth-standard.org/standard/core/SMDivREM
+;C SM/REM   d1lo d1hi n2 -- n3 n4  symmetric signed div
+            FORTHWORD "SM/REM"
+SMSLASHREM  MOV TOS,S           ;1            S=divisor
+            MOV @PSP,T          ;2            T=rem_sign
+            CMP #0,TOS          ;1            n2 >= 0 ?
+            JGE d1u2SMSLASHREM  ;2            yes
+            XOR #-1,TOS         ;1
+            ADD #1,TOS          ;1
+d1u2SMSLASHREM                  ;   -- d1 u2
+            CMP #0,0(PSP)       ;3           d1hi >= 0 ?
+            JGE ud1u2SMSLASHREM ;2           yes
+            XOR #-1,2(PSP)      ;4           d1lo
+            XOR #-1,0(PSP)      ;4           d1hi
+            ADD #1,2(PSP)       ;4           d1lo+1
+            ADDC #0,0(PSP)      ;4           d1hi+C
+ud1u2SMSLASHREM                 ;   -- ud1 u2
+            PUSHM  #2,S          ;4         PUSHM S,T
+            CALL #MUSMOD
+            MOV @PSP+,TOS
+            POPM  #2,S          ;4          POPM T,S
+            CMP #0,T            ;1  -- ur uq  T=rem_sign>=0?
+            JGE SMSLASHREMnruq  ;2           yes
+            XOR #-1,0(PSP)      ;3
+            ADD #1,0(PSP)       ;3
+SMSLASHREMnruq
+            XOR S,T             ;1           S=divisor T=quot_sign
+            CMP #0,T            ;1  -- nr uq  T=quot_sign>=0?
+            JGE SMSLASHREMnrnq  ;2           yes
+NEGAT       XOR #-1,TOS         ;1
+            ADD #1,TOS          ;1
+SMSLASHREMnrnq                  ;   -- nr nq  S=divisor
+            MOV @IP+,PC         ;4 34 words
+
+;https://forth-standard.org/standard/core/FMDivMOD
+;C FM/MOD   d1 n1 -- r q   floored signed div'n
+            FORTHWORD "FM/MOD"
+FMSLASHMOD  PUSH IP
+            MOV #FMSLASHMOD1,IP
+            JMP SMSLASHREM
+FMSLASHMOD1 .word   $+2         ; -- remainder quotient       S=divisor
+            CMP #0,0(PSP)       ;
+            JZ FMSLASHMODEND
+            CMP #1,TOS          ; quotient < 1 ?
+            JGE FMSLASHMODEND   ;
+QUOTLESSONE ADD S,0(PSP)        ; add divisor to remainder
+            SUB #1,TOS          ; decrement quotient
+FMSLASHMODEND
+            MOV @RSP+,IP
+            MOV @IP+,PC                   ;
+
+;https://forth-standard.org/standard/core/NEGATE
+;C NEGATE   x1 -- x2            two's complement
+            FORTHWORD "NEGATE"
+            JMP NEGAT 
+
+;https://forth-standard.org/standard/core/ABS
+;C ABS     n1 -- +n2     absolute value
+            FORTHWORD "ABS"
+ABBS        CMP #0,TOS           ; 1
+            JN NEGAT      
+            MOV @IP+,PC
+
+;https://forth-standard.org/standard/core/Times
+;C *      n1 n2 -- n3       signed multiply
+            FORTHWORD "*"
+STAR        mDOCOL
+            .word   MSTAR,DROP,EXIT
+
+;https://forth-standard.org/standard/core/DivMOD
+;C /MOD   n1 n2 -- n3 n4    signed divide/rem'dr
+            FORTHWORD "/MOD"
+SLASHMOD    mDOCOL
+            .word   TOR,STOD,RFROM,FMSLASHMOD,EXIT
+
+;https://forth-standard.org/standard/core/Div
+;C /      n1 n2 -- n3       signed divide
+            FORTHWORD "/"
+SLASH       mDOCOL
+            .word   TOR,STOD,RFROM,FMSLASHMOD,NIP,EXIT
+
+;https://forth-standard.org/standard/core/MOD
+;C MOD    n1 n2 -- n3       signed remainder
+            FORTHWORD "MOD"
+MODD        mDOCOL
+            .word   TOR,STOD,RFROM,FMSLASHMOD,DROP,EXIT
+
+;https://forth-standard.org/standard/core/TimesDivMOD
+;C */MOD  n1 n2 n3 -- n4 n5    n1*n2/n3, rem&quot
+            FORTHWORD "*/MOD"
+SSMOD       mDOCOL
+            .word   TOR,MSTAR,RFROM,FMSLASHMOD,EXIT
+
+;https://forth-standard.org/standard/core/TimesDiv
+;C */     n1 n2 n3 -- n4        n1*n2/n3
+            FORTHWORD "*/"
+STARSLASH   mDOCOL
+            .word   TOR,MSTAR,RFROM,FMSLASHMOD,NIP,EXIT
+
+
+
+;https://forth-standard.org/standard/core/ALIGNED
+;C ALIGNED  addr -- a-addr       align given addr
+            FORTHWORD "ALIGNED"
+ALIGNED     BIT #1,TOS
+            ADDC #0,TOS
+            MOV @IP+,PC
+
+;https://forth-standard.org/standard/core/ALIGN
+;C ALIGN    --                         align HERE
+            FORTHWORD "ALIGN"
+ALIGNN      BIT #1,&DDP    ; 3
+            ADDC #0,&DDP   ; 4
+            MOV @IP+,PC
+
+;https://forth-standard.org/standard/core/CHARS
+;C CHARS    n1 -- n2            chars->adrs units
+            FORTHWORD "CHARS"
+            MOV @IP+,PC
+
+;https://forth-standard.org/standard/core/CHARPlus
+;C CHAR+    c-addr1 -- c-addr2   add char size
+            FORTHWORD "CHAR+"
+            ADD #1,TOS
+            MOV @IP+,PC
+
+;https://forth-standard.org/standard/core/CELLS
+;C CELLS    n1 -- n2            cells->adrs units
+            FORTHWORD "CELLS"
+            ADD TOS,TOS
+            MOV @IP+,PC
+
+;https://forth-standard.org/standard/core/CELLPlus
+;C CELL+    a-addr1 -- a-addr2      add cell size
+            FORTHWORD "CELL+"
+            ADD #2,TOS
+            MOV @IP+,PC
+
+;----------------------------------------------------------------------
+; DOUBLE OPERATORS
+;----------------------------------------------------------------------
+
+; https://forth-standard.org/standard/core/StoD
+; S>D    n -- d          single -> double prec.
+            FORTHWORD "S>D"
+STOD        SUB #2,PSP
+            MOV TOS,0(PSP)
+            JMP ZEROLESS
+
+; https://forth-standard.org/standard/core/TwoFetch
+; 2@    a-addr -- x1 x2    fetch 2 cells ; the lower address will appear on top of stack
+            FORTHWORD "2@"
+TWOFETCH    SUB #2, PSP
+            MOV 2(TOS),0(PSP)
+            MOV @TOS,TOS
+            MOV @IP+,PC
+
+; https://forth-standard.org/standard/core/TwoStore
+; 2!    x1 x2 a-addr --    store 2 cells ; the top of stack is stored at the lower adr
+            FORTHWORD "2!"
+TWOSTORE    MOV @PSP+,0(TOS)
+            MOV @PSP+,2(TOS)
+            MOV @PSP+,TOS
+            MOV @IP+,PC
+
+;; https://forth-standard.org/standard/double/TwoVALUE
+;            FORTHWORD "2VALUE"
+;            mDOCOL
+;            .word CREATE
+;            .word COMMA,COMMA  ; compile hi then lo
+;            .word DOES
+;            .word   $+2
+;            MOV @RSP+,IP
+;            BIT #UF10,SR
+;            JZ TWOFETCH 
+;            BIC #UF10,SR
+;            JMP TWOSTORE
+
+; https://forth-standard.org/standard/core/TwoDROP
+; 2DROP  x1 x2 --          drop 2 cells
+            FORTHWORD "2DROP"
+            ADD #2,PSP
+            MOV @PSP+,TOS
+            MOV @IP+,PC
+
+; https://forth-standard.org/standard/core/TwoSWAP
+; 2SWAP  x1 x2 x3 x4 -- x3 x4 x1 x2
+            FORTHWORD "2SWAP"
+            MOV @PSP,W          ; -- x1 x2 x3 x4    W=x3
+            MOV 4(PSP),0(PSP)   ; -- x1 x2 x1 x4
+            MOV W,4(PSP)        ; -- x3 x2 x1 x4
+            MOV TOS,W           ; -- x3 x2 x1 x4    W=x4
+            MOV 2(PSP),TOS      ; -- x3 x2 x1 x2    W=x4
+            MOV W,2(PSP)        ; -- x3 x4 x1 x2
+            MOV @IP+,PC
+
+; https://forth-standard.org/standard/core/TwoOVER
+; 2OVER  x1 x2 x3 x4 -- x1 x2 x3 x4 x1 x2
+            FORTHWORD "2OVER"
+            SUB #4,PSP          ; -- x1 x2 x3 x x x4
+            MOV TOS,2(PSP)      ; -- x1 x2 x3 x4 x x4
+            MOV 8(PSP),0(PSP)   ; -- x1 x2 x3 x4 x1 x4
+            MOV 6(PSP),TOS      ; -- x1 x2 x3 x4 x1 x2
+            MOV @IP+,PC
+
+;https://forth-standard.org/standard/core/CFetch
+; C@     c-addr -- char   fetch char from memory
+            FORTHWORD "C@"
+CFETCH      MOV.B @TOS,TOS      ;2
+            MOV @IP+,PC         ;4
+
+;https://forth-standard.org/standard/core/CStore
+; C!      char c-addr --    store char in memory
+            FORTHWORD "C!"
+CSTORE      MOV.B @PSP+,0(TOS)  ;4
+            ADD #1,PSP          ;1
+            MOV @PSP+,TOS       ;2
+            MOV @IP+,PC
+
+;https://forth-standard.org/standard/core/CComma
+; C,   char --        append char
+            FORTHWORD "C,"
+CCOMMA      MOV &DDP,W
+            MOV.B TOS,0(W)
+            ADD #1,&DDP
+            MOV @PSP+,TOS
+            MOV @IP+,PC
+
+;https://forth-standard.org/standard/core/AND
+;C AND    x1 x2 -- x3           logical AND
+            FORTHWORD "AND"
+ANDD        AND @PSP+,TOS    
+            MOV @IP+,PC
+
+;https://forth-standard.org/standard/core/OR
+;C OR     x1 x2 -- x3           logical OR
+            FORTHWORD "OR"
+ORR         BIS @PSP+,TOS    
+            MOV @IP+,PC
+
+;https://forth-standard.org/standard/core/XOR
+;C XOR    x1 x2 -- x3           logical XOR
+            FORTHWORD "XOR"
+XORR        XOR @PSP+,TOS    
+            MOV @IP+,PC
+
+;https://forth-standard.org/standard/core/INVERT
+;C INVERT   x1 -- x2            bitwise inversion
+            FORTHWORD "INVERT"
+            XOR #-1,TOS    
+            MOV @IP+,PC
+
+;https://forth-standard.org/standard/core/LSHIFT
+;C LSHIFT  x1 u -- x2    logical L shift u places
+            FORTHWORD "LSHIFT"
+LSHIFT      MOV @PSP+,W
+            AND #1Fh,TOS        ; no need to shift more than 16
+            JZ LSH_X
+LSH_1       ADD W,W
+            SUB #1,TOS
+            JNZ LSH_1
+LSH_X       MOV W,TOS
+            MOV @IP+,PC
+
+;https://forth-standard.org/standard/core/RSHIFT
+;C RSHIFT  x1 u -- x2    logical R shift u places
+            FORTHWORD "RSHIFT"
+RSHIFT      MOV @PSP+,W
+            AND #1Fh,TOS        ; no need to shift more than 16
+            JZ RSH_X
+RSH_1       BIC #1,SR           ; CLRC
+            RRC W
+            SUB #1,TOS
+            JNZ RSH_1
+RSH_X       MOV W,TOS
+            MOV @IP+,PC
+
+;https://forth-standard.org/standard/core/TwoTimes
+;C 2*      x1 -- x2         arithmetic left shift
+            FORTHWORD "2*"
+TWOTIMES    ADD TOS,TOS
+            MOV @IP+,PC
+
+;https://forth-standard.org/standard/core/TwoDiv
+;C 2/      x1 -- x2        arithmetic right shift
+            FORTHWORD "2/"
+TWODIV      RRA TOS
+            MOV @IP+,PC
+
+;https://forth-standard.org/standard/core/MAX
+;C MAX    n1 n2 -- n3       signed maximum
+            FORTHWORD "MAX"
+MAX         CMP @PSP,TOS    ; n2-n1
+            JL SELn1        ; n2<n1
+SELn2       ADD #2,PSP
+            MOV @IP+,PC
+
+;https://forth-standard.org/standard/core/MIN
+;C MIN    n1 n2 -- n3       signed minimum
+            FORTHWORD "MIN"
+MIN         CMP @PSP,TOS    ; n2-n1
+            JL SELn2        ; n2<n1
+SELn1       MOV @PSP+,TOS
+            MOV @IP+,PC
+
+;https://forth-standard.org/standard/core/PlusStore
+;C +!     n/u a-addr --       add to memory
+            FORTHWORD "+!"
+PLUSSTORE   ADD @PSP+,0(TOS)
+            MOV @PSP+,TOS
+            MOV @IP+,PC
+
+;https://forth-standard.org/standard/core/CHAR
+;C CHAR   -- char           parse ASCII character
+            FORTHWORD "CHAR"
+CHARR       mDOCOL
+            .word   FBLANK,WORDD,ONEPLUS,CFETCH,EXIT
+
+;https://forth-standard.org/standard/core/BracketCHAR
+;C [CHAR]   --          compile character literal
+            FORTHWORDIMM "[CHAR]"        ; immediate
+BRACCHAR    mDOCOL
+            .word   CHARR
+            .word   lit,lit,COMMA
+            .word   COMMA,EXIT
+
+;https://forth-standard.org/standard/core/FILL
+;C FILL   c-addr u char --  fill memory with char
+            FORTHWORD "FILL"
+FILL        MOV @PSP+,X     ; count
+            MOV @PSP+,W     ; address
+            CMP #0,X
+            JZ FILL_X
+FILL_1      MOV.B TOS,0(W)    ; store char in memory
+            ADD #1,W
+            SUB #1,X
+            JNZ FILL_1
+FILL_X      MOV @PSP+,TOS   ; pop new TOS
+            MOV @IP+,PC
+
+;https://forth-standard.org/standard/core/HEX
+            FORTHWORD "HEX"
+HEX         MOV #16,&BASE
+            MOV @IP+,PC
+
+;https://forth-standard.org/standard/core/DECIMAL
+            FORTHWORD "DECIMAL"
+DECIMAL     MOV #10,&BASE
+            MOV @IP+,PC
+
+; https://forth-standard.org/standard/core/HERE
+; HERE    -- addr      returns memory ptr
+            FORTHWORD "HERE"
+            MOV #BEGIN,PC
+
+;https://forth-standard.org/standard/core/p
+;C (                \  --     paren ; skip input until )
+            FORTHWORDIMM "\40"      ; immediate
+PARENT       mDOCOL
+            .word   lit,')',WORDD,DROP,EXIT
+
+;https://forth-standard.org/standard/core/Dotp
+; .(                \  --     dotparen ; type comment immediatly.
+            FORTHWORDIMM ".\40"        ; immediate
+DOTPAREN    MOV #0,&CAPS
+            mDOCOL
+            .word   lit,')',WORDD
+            .word   COUNT,TYPE
+            .word   FBLANK,LIT,CAPS,STORE
+            .word   EXIT
+
+;https://forth-standard.org/standard/core/J
+;C J        -- n   R: 4*sys -- 4*sys
+;C                  get the second loop index
+            FORTHWORD "J"
+JJ          SUB #2,PSP      ; make room in TOS
+            MOV TOS,0(PSP)
+            MOV 4(RSP),TOS  ; index = loopctr - fudge
+            SUB 6(RSP),TOS
+            MOV @IP+,PC
+
+;https://forth-standard.org/standard/core/UNLOOP
+;UNLOOP   --   R: sys1 sys2 --  drop loop parms
+            FORTHWORD "UNLOOP"
+UNLOOP      ADD #4,RSP
+            MOV @IP+,PC
+
+;https://forth-standard.org/standard/core/LEAVE
+;C LEAVE    --    L: -- adrs
+            FORTHWORDIMM "LEAVE"    ; immediate
+LEAV        MOV &DDP,W              ; compile three words
+            MOV #UNLOOP,0(W)        ; [HERE] = UNLOOP
+            MOV #BRAN,2(W)          ; [HERE+2] = BRAN
+            ADD #6,&DDP             ; [HERE+4] = After LOOP adr
+            ADD #2,&LEAVEPTR
+            ADD #4,W
+            MOV &LEAVEPTR,X
+            MOV W,0(X)              ; leave HERE+4 on LEAVEPTR stack
+            MOV @IP+,PC
+
+;https://forth-standard.org/standard/core/RECURSE
+;C RECURSE  --      recurse to current definition (compile current definition)
+            FORTHWORDIMM "RECURSE"  ; immediate
+RECURSE     MOV &DDP,X              ;
+            MOV &LAST_CFA,0(X)      ;
+            ADD #2,&DDP             ;
+            MOV @IP+,PC
+
+; https://forth-standard.org/standard/core/toBODY
+; >BODY     -- addr      leave BODY of a CREATEd word; also leave default ACTION-OF primary DEFERred word
+            FORTHWORD ">BODY"
+TOBODY      ADD #4,TOS
+            MOV @IP+,PC
+
+;https://forth-standard.org/standard/core/SOURCE
+;C SOURCE   -- adr u   of  current input buffer
+            FORTHWORD "SOURCE"
+            SUB #4,PSP
+            MOV TOS,2(PSP)
+            MOV &SOURCE_LEN,TOS
+            MOV &SOURCE_ORG,0(PSP)
+            MOV @IP+,PC
+
+;https://forth-standard.org/standard/core/BASE
+;C BASE    -- a-addr       holds conversion radix
+            FORTHWORD "BASE"
+            CALL rDOCON
+            .word   BASE    ; VARIABLE address in RAM space
+
+;https://forth-standard.org/standard/core/toIN
+;C >IN     -- a-addr       holds offset in input stream
+            FORTHWORD ">IN"
+FTOIN       CALL rDOCON
+            .word   TOIN    ; VARIABLE address in RAM space
+
+;https://forth-standard.org/standard/core/PAD
+; PAD           --  pad address
+            FORTHWORD "PAD"
+PAD         CALL rDOCON
+            .WORD    PAD_ORG
+
+; https://forth-standard.org/standard/core/MARKER
+; MARKER
+;( "<spaces>name" -- )
+;Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+;with the execution semantics defined below.
+
+;name Execution: ( -- )
+;Restore all dictionary allocation and search order pointers to the state they had just prior to the
+;definition of name. Remove the definition of name and all subsequent definitions. Restoration
+;of any structures still existing that could refer to deleted definitions or deallocated data space is
+;not necessarily provided. No other contextual information such as numeric base is affected
+
+MARKER_DOES .word   $+2                 ; execution part
+            MOV     @RSP+,IP            ; -- PFA
+            MOV     @TOS+,&INIVOC       ;       set VOC_LINK value for RST_STATE
+            MOV     @TOS,&INIDP         ;       set DP value for RST_STATE
+            MOV     @PSP+,TOS           ; --
+            MOV     #RST_STATE,PC       ;       execute RST_STATE, PWR_STATE then STATE_DOES
+
+            FORTHWORD "MARKER"          ; definition part
+            CALL    #HEADER             ;4 W = DP+4
+            MOV     #DODOES,-4(W)       ;4 CFA = DODOES
+            MOV     #MARKER_DOES,-2(W)  ;4 PFA = MARKER_DOES
+            MOV     &LASTVOC,0(W)       ;5 [BODY] = VOCLINK to be restored
+            SUB     #2,Y                ;1 Y = LFA
+            MOV     Y,2(W)              ;3 [BODY+2] = LFA = DP to be restored
+            ADD     #4,&DDP             ;3
+            MOV     #GOOD_CSP,PC
+
index 03262b9..68e189c 100644 (file)
 
 
     FORTHWORD "{FIXPOINT}"
-    mNEXT
+    MOV @IP+,PC
+
+    .IFNDEF DABS
+DABS    AND #-1,TOS         ; clear V, set N
+        JGE DABSEND         ; if positive (N=0)
+        XOR #-1,0(PSP)      ;4
+        XOR #-1,TOS         ;1
+        ADD #1,0(PSP)       ;4
+        ADDC #0,TOS         ;1
+DABSEND MOV @IP+,PC
+    .ENDIF
+
 
 ; https://forth-standard.org/standard/core/HOLDS
 ; Adds the string represented by addr u to the pictured numeric output string
@@ -35,13 +46,13 @@ HOLDS1      ADD TOS,X       ; 1 src
             MOV &HP,Y       ; 3 dst
 HOLDSLOOP   SUB #1,X        ; 1 src-1
             SUB #1,TOS      ; 1 cnt-1
-            JLO HOLDSNEXT   ; 2
+            JNC HOLDSNEXT   ; 2
             SUB #1,Y        ; 1 dst-1
             MOV.B @X,0(Y)   ; 4
             JMP HOLDSLOOP   ; 2
 HOLDSNEXT   MOV Y,&HP       ; 3
             MOV @PSP+,TOS   ; 2
-            mNEXT            ; 4  15 words
+            MOV @IP+,PC     ; 4  15 words
 
         FORTHWORD "F+"      ; -- d1lo d1hi d2lo d2hi
         ADD @PSP+,2(PSP)    ; -- sumlo  d1hi d2hi
@@ -89,7 +100,7 @@ Q6432       MOV #32,R5      ; init loop count
 Q321        CMP TOS,W       ;1 REMhi <> DIVhi ?
             JNZ Q322        ;2 yes
             CMP R6,X        ;1 REMlo U< DIVlo ?
-Q322        JLO Q323        ;2 yes: REM U< DIV
+Q322        JNC Q323        ;2 yes: REM U< DIV
             SUB R6,X        ;1 no:  REMlo - DIVlo  (carry is set)
             SUBC TOS,W      ;1      REMhi - DIVhi
 Q323        ADDC R7,R7      ;1 RLC quotLO
@@ -134,13 +145,13 @@ FNUMSLOOP   MOV @PSP,&MPY           ;                   Load 1st operand
             MOV &RES0,0(PSP)        ; -- Qhi Qlo' x     low result on stack
             MOV &RES1,TOS           ; -- Qhi Qlo' digit high result in TOS
             CMP #10,TOS             ;                   digit to char
-            JLO FNUMS2CHAR
+            JNC FNUMS2CHAR
             ADD #7,TOS
 FNUMS2CHAR  ADD #30h,TOS
             MOV.B TOS,HOLDS_ORG(S)  ; -- Qhi Qlo' char  char to string
             ADD #1,S                ;                   count+1
             CMP T,S                 ;2                  count=limit ?
-            JLO FNUMSLOOP           ;                   loop back if U<
+            JNC FNUMSLOOP           ;                   loop back if U<
             MOV T,TOS               ; -- Qhi Qlo' limit
             MOV #0,0(PSP)           ; -- Qhi 0 limit
             MOV #HOLDS_ORG,X        ; -- Qhi 0 len      X= org
@@ -193,7 +204,7 @@ Q6432       MOV #32,R5      ; init loop count
 Q321        CMP TOS,W       ;1 REMhi <> DIVhi ?
             JNZ Q322        ;2 yes
             CMP R6,X        ;1 REMlo U< DIVlo ?
-Q322        JLO Q323        ;2 yes: REM U< DIV
+Q322        JNC Q323        ;2 yes: REM U< DIV
             SUB R6,X        ;1 no:  REMlo - DIVlo  (carry is set)
             SUBC TOS,W      ;1      REMhi - DIVhi
 Q323        ADDC R7,R7      ;1 RLC quotLO
@@ -246,17 +257,17 @@ FNUMS
 FNUMSLOOP   PUSH S                  ;                   R-- limit IP count
             MOV &BASE,TOS           ; -- Qhi Qlo base
             MOV #UMSTAR,PC 
-FNUMSNEXT   FORTHtoASM              ; -- Qhi QloRem digit
+FNUMSNEXT   .word   $+2             ; -- Qhi QloRem digit
             SUB #2,IP
             CMP #10,TOS             ;                   digit to char
-            JLO FNUMS2CHAR
+            JNC FNUMS2CHAR
             ADD #7,TOS
 FNUMS2CHAR  ADD #30h,TOS
             MOV @RSP+,S             ;                       R-- limit IP
             MOV.B TOS,HOLDS_ORG(S)  ; -- Qhi Qlorem char    char to stringto string
             ADD #1,S                ;                       count+1
             CMP 2(RSP),S            ;3                      count=limit ?
-            JLO FNUMSLOOP           ;                       no
+            JNC FNUMSLOOP           ;                       no
             POPM #2,TOS             ; -- Qhi Qlorem limit   POPM IP,TOS
             MOV #0,0(PSP)           ; -- Qhi 0 limit
             MOV #HOLDS_ORG,X        ; -- Qhi 0 len          X= org
@@ -294,7 +305,7 @@ UDMT4   ADD IP,IP       ; 1 (RLA LSBs) MDlo *2
         ADDC R5,R5      ; 1 (RLC MSBs) MDHI *2
         ADD X,X         ; 1 (RLA) NEXT BIT TO TEST
         ADDC Y,Y        ; 1 (RLA) NEXT BIT TO TEST
-        JLO UDMT1       ; 2 IF BIT IN CARRY: FINISHED    32 * 16~ (average loop)
+        JNC UDMT1       ; 2 IF BIT IN CARRY: FINISHED    32 * 16~ (average loop)
         MOV R6,0(PSP)   ; 3
         MOV R7,TOS      ; 1 high result in TOS
         POPM  #4,R7     ; 6  POPM R4 R5 R6 R7
@@ -312,8 +323,8 @@ UDMT4   ADD IP,IP       ; 1 (RLA LSBs) MDlo *2
         ADD #1,4(PSP)
         ADDC #0,2(PSP)
 FSTAR1   mDOCOL
-        .word DABBS,UDMT
-        FORTHtoASM          ; -- RES0 RES1 RES2 RES3 
+        .word DABS,UDMT
+        .word   $+2         ; -- RES0 RES1 RES2 RES3 
         MOV @RSP+,IP
         MOV @PSP+,TOS       ; -- RES0 RES1 RES2
         MOV @PSP+,0(PSP)    ; -- RES1 RES2
@@ -322,9 +333,18 @@ FSTAR1   mDOCOL
 
     .ENDIF
 
+    .IFNDEF TOR
+; https://forth-standard.org/standard/core/toR
+; >R    x --   R: -- x   push to return stack
+;            FORTHWORD ">R"
+TOR         PUSH TOS
+            MOV @PSP+,TOS
+            MOV @IP+,PC
+    .ENDIF
+
         FORTHWORD "F."      ; display a Q15.16 number with 4 digits after comma
         mDOCOL
-        .word   LESSNUM,DUP,TOR,DABBS
+        .word   LESSNUM,DUP,TOR,DABS
         .word   lit,4,FNUMS,lit,',',HOLD,NUMS
         .word   RFROM,SIGN,NUMGREATER,TYPE
         .word   lit,20h,EMIT,EXIT
index becf133..39d17f7 100644 (file)
@@ -26,7 +26,7 @@
 MAX:        CMP     @PSP,TOS    ; n2-n1
             JL      SELn1       ; n2<n1
 SELn2:      ADD     #2,PSP
-            mNEXT
+            MOV @IP+,PC
 
 ;https://forth-standard.org/standard/core/MIN
 ;C MIN    n1 n2 -- n3       signed minimum
@@ -34,7 +34,7 @@ SELn2:      ADD     #2,PSP
 MIN:        CMP     @PSP,TOS    ; n2-n1
             JL      SELn2       ; n2<n1
 SELn1:      MOV     @PSP+,TOS
-            mNEXT
+            MOV @IP+,PC
 
     .ENDIF
 
@@ -55,16 +55,28 @@ SPACES      CMP #0,TOS
             PUSH IP
             MOV #SPACESNEXT,IP
             JMP SPACE               ;25~
-SPACESNEXT  FORTHtoASM
+SPACESNEXT  .word   $+2
             SUB #2,IP               ;1
             SUB #1,TOS              ;1
             JNZ SPACE               ;25~ ==> 27~ by space ==> 2.963 MBds @ 8 MHz
             MOV @RSP+,IP            ;
 SPACESNEXT2 MOV @PSP+,TOS           ; --         drop n
-            mNEXT                   ;
+            MOV @IP+,PC             ;
 
     .ENDIF
 
+    .IFNDEF II
+; https://forth-standard.org/standard/core/I
+; I        -- n   R: sys1 sys2 -- sys1 sys2
+;                  get the innermost loop index
+            FORTHWORD "I"
+II          SUB #2,PSP              ;1 make room in TOS
+            MOV TOS,0(PSP)          ;3
+            MOV @RSP,TOS            ;2 index = loopctr - fudge
+            SUB 2(RSP),TOS          ;3
+            MOV @IP+,PC             ;4 13~
+    .ENDIF
+
         .IFNDEF OVER
 ;https://forth-standard.org/standard/core/OVER
 ;C OVER    x1 x2 -- x1 x2 x1
@@ -72,9 +84,18 @@ SPACESNEXT2 MOV @PSP+,TOS           ; --         drop n
 OVER        MOV TOS,-2(PSP)     ; 3 -- x1 (x2) x2
             MOV @PSP,TOS        ; 2 -- x1 (x2) x1
             SUB #2,PSP          ; 1 -- x1 x2 x1
-            mNEXT               ; 4
+            MOV @IP+,PC         ; 4
         .ENDIF
 
+    .IFNDEF TOR
+; https://forth-standard.org/standard/core/toR
+; >R    x --   R: -- x   push to return stack
+            FORTHWORD ">R"
+TOR         PUSH TOS
+            MOV @PSP+,TOS
+            MOV @IP+,PC
+    .ENDIF
+
     .IFNDEF UDOTR
 ;https://forth-standard.org/standard/core/UDotR
 ;X U.R      u n --      display u unsigned in n width
@@ -90,7 +111,7 @@ UDOTR       mDOCOL
 ;C C@     c-addr -- char   fetch char from memory
             FORTHWORD "C@"
 CFETCH      MOV.B @TOS,TOS      ;2
-            mNEXT               ;4
+            MOV @IP+,PC         ;4
         .ENDIF
 
     .IFNDEF PLUS
@@ -98,7 +119,7 @@ CFETCH      MOV.B @TOS,TOS      ;2
 ;C +       n1/u1 n2/u2 -- n3/u3     add n1+n2
             FORTHWORD "+"
 PLUS        ADD @PSP+,TOS
-            mNEXT
+            MOV @IP+,PC
     .ENDIF
 
     .IFNDEF DUMP
@@ -127,13 +148,13 @@ DUMP4       .word   II,CFETCH
             .word   lit,7Eh,MIN,FBLANK,MAX,EMIT
             .word   xloop,DUMP4             ; chars display loop
             .word   lit,10h,xploop,DUMP1    ; line loop
-            .word   RFROM,lit,BASE,STORE       ; restore current base
+            .word   RFROM,lit,BASE,STORE    ; restore current base
             .word   EXIT
 
     .ENDIF
 
     FORTHWORD "{SD_TOOLS}"
-    mNEXT
+    MOV @IP+,PC
 
 ; read logical sector and dump it 
 ; ----------------------------------;
index 3a218b3..fe94527 100644 (file)
 
 
     FORTHWORD "{TOOLS}"
-    mNEXT
+    MOV @IP+,PC
+
+    .IFNDEF TOR
+; https://forth-standard.org/standard/core/toR
+; >R    x --   R: -- x   push to return stack
+            FORTHWORD ">R"
+TOR         PUSH TOS
+            MOV @PSP+,TOS
+            MOV @IP+,PC
+    .ENDIF
 
         .IFNDEF ANDD
 ;https://forth-standard.org/standard/core/AND
 ;C AND    x1 x2 -- x3           logical AND
             FORTHWORD "AND"
 ANDD        AND     @PSP+,TOS
-            mNEXT
+            MOV @IP+,PC
         .ENDIF
 
         .IFNDEF CFETCH
@@ -34,7 +43,7 @@ ANDD        AND     @PSP+,TOS
 ;C C@     c-addr -- char   fetch char from memory
             FORTHWORD "C@"
 CFETCH      MOV.B @TOS,TOS      ;2
-            mNEXT               ;4
+            MOV @IP+,PC               ;4
         .ENDIF
 
         .IFNDEF SPACE
@@ -54,16 +63,28 @@ SPACES      CMP #0,TOS
             PUSH IP
             MOV #SPACESNEXT,IP
             JMP SPACE               ;25~
-SPACESNEXT  FORTHtoASM
+SPACESNEXT  .word   $+2
             SUB #2,IP               ;1
             SUB #1,TOS              ;1
             JNZ SPACE               ;25~ ==> 27~ by space ==> 2.963 MBds @ 8 MHz
             MOV @RSP+,IP            ;
 SPACESNEXT2 MOV @PSP+,TOS           ; --         drop n
-            mNEXT                   ;
+            MOV @IP+,PC                   ;
 
         .ENDIF
 
+    .IFNDEF II
+; https://forth-standard.org/standard/core/I
+; I        -- n   R: sys1 sys2 -- sys1 sys2
+;                  get the innermost loop index
+            FORTHWORD "I"
+II          SUB #2,PSP              ;1 make room in TOS
+            MOV TOS,0(PSP)          ;3
+            MOV @RSP,TOS            ;2 index = loopctr - fudge
+            SUB 2(RSP),TOS          ;3
+            MOV @IP+,PC             ;4 13~
+    .ENDIF
+
 ;https://forth-standard.org/standard/tools/DotS
             FORTHWORD ".S"      ; --            print <depth> of Param Stack and stack contents if not empty
 DOTS        MOV     TOS,-2(PSP) ; -- TOS ( tos x x )
@@ -130,7 +151,7 @@ WORDS2      .word   EXIT                ; --
 ;https://forth-standard.org/standard/core/PAD
 ; PAD           --  pad address
             FORTHWORD "PAD"
-PAD         mDOCON
+PAD         CALL rDOCON
             .WORD    PAD_ORG
         .ENDIF
 
@@ -142,7 +163,7 @@ ROT         MOV @PSP,W          ; 2 fetch x2
             MOV TOS,0(PSP)      ; 3 store x3
             MOV 2(PSP),TOS      ; 3 fetch x1
             MOV W,2(PSP)        ; 3 store x2
-            mNEXT               ; 4
+            MOV @IP+,PC               ; 4
         .ENDIF
 
 ;https://forth-standard.org/standard/tools/WORDS
@@ -185,18 +206,18 @@ WORDS5      .word   DROP
 ;https://forth-standard.org/standard/core/MAX
 ;C MAX    n1 n2 -- n3       signed maximum
             FORTHWORD "MAX"
-MAX:        CMP     @PSP,TOS    ; n2-n1
+MAX         CMP     @PSP,TOS    ; n2-n1
             JL      SELn1       ; n2<n1
-SELn2:      ADD     #2,PSP
-            mNEXT
+SELn2       ADD     #2,PSP
+            MOV @IP+,PC
 
 ;https://forth-standard.org/standard/core/MIN
 ;C MIN    n1 n2 -- n3       signed minimum
             FORTHWORD "MIN"
-MIN:        CMP     @PSP,TOS    ; n2-n1
+MIN         CMP     @PSP,TOS    ; n2-n1
             JL      SELn2       ; n2<n1
-SELn1:      MOV     @PSP+,TOS
-            mNEXT
+SELn1       MOV     @PSP+,TOS
+            MOV @IP+,PC
 
     .ENDIF
 
@@ -205,7 +226,7 @@ SELn1:      MOV     @PSP+,TOS
 ;C +       n1/u1 n2/u2 -- n3/u3     add n1+n2
             FORTHWORD "+"
 PLUS        ADD @PSP+,TOS
-            mNEXT
+            MOV @IP+,PC
     .ENDIF
 
         .IFNDEF OVER
@@ -215,7 +236,7 @@ PLUS        ADD @PSP+,TOS
 OVER        MOV TOS,-2(PSP)     ; 3 -- x1 (x2) x2
             MOV @PSP,TOS        ; 2 -- x1 (x2) x1
             SUB #2,PSP          ; 1 -- x1 x2 x1
-            mNEXT               ; 4
+            MOV @IP+,PC               ; 4
         .ENDIF
 
     .IFNDEF UDOTR
index 703ece5..475b8cf 100644 (file)
Binary files a/FastForth.pdf and b/FastForth.pdf differ
index 437274e..febf85b 100644 (file)
@@ -1,22 +1,28 @@
 
+RETURN-STACK-CELLS  = 48            maximum size of the return stack, in cells
+STACK-CELLS         = 48            maximum size of the data stack, in cells
+/COUNTED-STRING            = 255           maximum size of a counted string, in characters
+/HOLD              = 34            size of the pictured numeric output string buffer, in characters
+/PAD               = 84            size of the scratch area pointed to by PAD, in characters
+ADDRESS-UNIT-BITS   = 16            size of one address unit, in bits
+FLOORED                    = true          true if floored division is the default
+MAX-CHAR               = 255           maximum value of any character in the implementation-defined character set
+MAX-N               = 32767         largest usable signed integer
+MAX-U               = 65535         largest usable unsigned integer
+MAX-D              = 2147483647    largest usable signed double number
+MAX-UD              = 4294967295    largest usable unsigned double number
+
+
 FORTH vocabulary
 ----------------
-COLD            WARM            WIPE            RST_HERE        PWR_HERE        RST_STATE       PWR_STATE       
-MOVE            LEAVE           +LOOP           LOOP            DO              REPEAT          WHILE           
-AGAIN           UNTIL           BEGIN           THEN            ELSE            IF              >BODY           
-DEFER           DOES>           CREATE          CONSTANT        VARIABLE        :               ;               
-POSTPONE        RECURSE         IMMEDIATE       IS              [']             ]               [               
-\               '               ABORT"          ABORT           QUIT            EVALUATE        COUNT           
-LITERAL         ,               EXECUTE         >NUMBER         FIND            WORD            ."              
-S"              CR              TYPE            SPACES          SPACE           NOECHO          ECHO            
-EMIT            ACCEPT          KEY             C,              ALLOT           HERE            .               
-D.              U.              SIGN            HOLD            #>              #S              #               
-UM/MOD          <#              STATE           BASE            BL              J               I               
-UNLOOP          U<              >               <               =               0<              0=              
-DABS            1-              1+              1-              1+              -               +               
-C!              C@              !               @               DEPTH           R@              R>              
->R              ROT             OVER            SWAP            NIP             DROP            ?DUP            
-DUP             LIT             EXIT
+COLD            WARM            WIPE            RST_HERE        PWR_HERE        RST_STATE       PWR_STATE
+BEGIN           DOES>           CREATE          ;               :               IMMEDIATE       POSTPONE        
+]               [               \               [']             ABORT"          ABORT           QUIT            
+EVALUATE        COUNT           LITERAL         ALLOT           ,               >NUMBER         FIND            
+WORD            ."              S"              .               U.              SIGN            HOLD            
+#>              #S              #               <#              KEY             CR              TYPE            
+NOECHO          ECHO            EMIT            ACCEPT
+
 
 COLD            Software reset
 
@@ -32,34 +38,21 @@ RST_STATE       removes all words defined after RST_HERE (COLD or <reset> have s
 
 PWR_STATE       removes all words defined after PWR_HERE (an occurring error has same effect)
 
-MOVE            https://forth-standard.org/standard/core/MOVE
-LEAVE           https://forth-standard.org/standard/core/LEAVE
-+LOOP           https://forth-standard.org/standard/core/PlusLOOP
-LOOP            https://forth-standard.org/standard/core/LOOP
-DO              https://forth-standard.org/standard/core/DO        
-REPEAT          https://forth-standard.org/standard/core/REPEAT
-WHILE           https://forth-standard.org/standard/core/WHILE
-AGAIN           https://forth-standard.org/standard/core/AGAIN
-UNTIL           https://forth-standard.org/standard/core/UNTIL
+NOECHO          stop display on output 
+
+ECHO            start display on output
+
 BEGIN           https://forth-standard.org/standard/core/BEGIN
-THEN            https://forth-standard.org/standard/core/THEN
-ELSE            https://forth-standard.org/standard/core/ELSE
-IF              https://forth-standard.org/standard/core/IF
-;               https://forth-standard.org/standard/core/Semi
-:               https://forth-standard.org/standard/core/Colon
-DEFER           https://forth-standard.org/standard/core/DEFER
 DOES>           https://forth-standard.org/standard/core/DOES
 CREATE          https://forth-standard.org/standard/core/CREATE
-CONSTANT        https://forth-standard.org/standard/core/CONSTANT
-VARIABLE        https://forth-standard.org/standard/core/VARIABLE
-POSTPONE        https://forth-standard.org/standard/core/POSTPONE
-RECURSE         https://forth-standard.org/standard/core/RECURSE
+;               https://forth-standard.org/standard/core/Semi
+:               https://forth-standard.org/standard/core/Colon
 IMMEDIATE       https://forth-standard.org/standard/core/IMMEDIATE
-IS              https://forth-standard.org/standard/core/IS
-[']             https://forth-standard.org/standard/core/BracketTick
+POSTPONE        https://forth-standard.org/standard/core/POSTPONE
 ]               https://forth-standard.org/standard/core/right-bracket
 [               https://forth-standard.org/standard/core/Bracket
 \               https://forth-standard.org/standard/block/bs
+[']             https://forth-standard.org/standard/core/BracketTick
 '               https://forth-standard.org/standard/core/Tick
 ABORT"          https://forth-standard.org/standard/core/ABORTq
 ABORT           https://forth-standard.org/standard/core/ABORT
@@ -67,71 +60,26 @@ QUIT            https://forth-standard.org/standard/core/QUIT
 EVALUATE        https://forth-standard.org/standard/core/EVALUATE
 COUNT           https://forth-standard.org/standard/core/COUNT
 LITERAL         https://forth-standard.org/standard/core/LITERAL
+ALLOT           https://forth-standard.org/standard/core/ALLOT
 ,               https://forth-standard.org/standard/core/Comma
-EXECUTE         https://forth-standard.org/standard/core/EXECUTE
 >NUMBER         https://forth-standard.org/standard/core/toNUMBER
 FIND            https://forth-standard.org/standard/core/FIND
 WORD            https://forth-standard.org/standard/core/WORD
 ."              https://forth-standard.org/standard/core/Dotq
 S"              https://forth-standard.org/standard/core/Sq
-TYPE            https://forth-standard.org/standard/core/TYPE
-SPACES          https://forth-standard.org/standard/core/SPACES
-SPACE           https://forth-standard.org/standard/core/SPACE
-CR              DEFERed word, https://forth-standard.org/standard/core/CR
-NOECHO          stop display on output 
-ECHO            start display on output
-EMIT            DEFERed word, https://forth-standard.org/standard/core/EMIT
-ACCEPT          DEFERed word, https://forth-standard.org/standard/core/ACCEPT
-KEY             DEFERed word, https://forth-standard.org/standard/core/KEY
-C,              https://forth-standard.org/standard/core/CComma
-ALLOT           https://forth-standard.org/standard/core/ALLOT
-HERE            https://forth-standard.org/standard/core/HERE
 .               https://forth-standard.org/standard/core/d
-D.              https://forth-standard.org/standard/double/Dd
 U.              https://forth-standard.org/standard/core/Ud
 SIGN            https://forth-standard.org/standard/core/SIGN
 HOLD            https://forth-standard.org/standard/core/HOLD
 #>              https://forth-standard.org/standard/core/num-end
 #S              https://forth-standard.org/standard/core/numS
 #               https://forth-standard.org/standard/core/num
-UM/MOD          https://forth-standard.org/standard/core/UMDivMOD
 <#              https://forth-standard.org/standard/core/num-start
-BL              https://forth-standard.org/standard/core/BL
-STATE           https://forth-standard.org/standard/core/STATE
-BASE            https://forth-standard.org/standard/core/BASE
-J               https://forth-standard.org/standard/core/J
-I               https://forth-standard.org/standard/core/I
-UNLOOP          https://forth-standard.org/standard/core/UNLOOP
-U<              https://forth-standard.org/standard/core/Uless
->               https://forth-standard.org/standard/core/more
-<               https://forth-standard.org/standard/core/less
-=               https://forth-standard.org/standard/core/Equal
-0<              https://forth-standard.org/standard/core/Zeroless
-0=              https://forth-standard.org/standard/core/ZeroEqual
-DABS            https://forth-standard.org/standard/double/DABS
-ABS             https://forth-standard.org/standard/core/ABS
-NEGATE          https://forth-standard.org/standard/core/NEGATE
-1-              https://forth-standard.org/standard/core/OneMinus
-1+              https://forth-standard.org/standard/core/OnePlus
--               https://forth-standard.org/standard/core/Minus
-+               https://forth-standard.org/standard/core/Plus
-C!              https://forth-standard.org/standard/core/CStore
-C@              https://forth-standard.org/standard/core/CFetch
-!               https://forth-standard.org/standard/core/Store
-@               https://forth-standard.org/standard/core/Fetch
-DEPTH           https://forth-standard.org/standard/core/DEPTH
-R@              https://forth-standard.org/standard/core/RFetch
-R>              https://forth-standard.org/standard/core/Rfrom
->R              https://forth-standard.org/standard/core/toR
-ROT             https://forth-standard.org/standard/core/ROT
-OVER            https://forth-standard.org/standard/core/OVER
-SWAP            https://forth-standard.org/standard/core/SWAP
-NIP             https://forth-standard.org/standard/core/NIP
-DROP            https://forth-standard.org/standard/core/DROP
-?DUP            https://forth-standard.org/standard/core/qDUP
-DUP             https://forth-standard.org/standard/core/DUP
-LIT             execution part of LITERAL            
-EXIT            https://forth-standard.org/standard/core/EXIT
+KEY             DEFERed word, https://forth-standard.org/standard/core/KEY
+CR              DEFERed word, https://forth-standard.org/standard/core/CR
+TYPE            https://forth-standard.org/standard/core/TYPE
+EMIT            DEFERed word, https://forth-standard.org/standard/core/EMIT
+ACCEPT          DEFERed word, https://forth-standard.org/standard/core/ACCEPT
 
 
 ASSEMBLER vocabulary
@@ -156,13 +104,13 @@ see: http://www.ece.utep.edu/courses/web3376/Notes_files/ee3376-isa.pdf
 ?GOTO           used after a conditionnal (0=,0<>,U>=,U<,0<,S<,S>=) to branch to a label FWx or BWx
 GOTO            used as unconditionnal branch to a label FWx or BWx
 
-BW3             BACKWARD branch destination n°3
-BW2                                         n°2
-BW1                                         N°1
+BW3             BACKWARD branch destination n°3
+BW2                                         n°2
+BW1                                         N°1
 
-FW3             FORWARD branch destination  n°3
-FW2                                         n°2
-FW1                                         n°1
+FW3             FORWARD branch destination  n°3
+FW2                                         n°2
+FW1                                         n°1
 
 ?JMP            used after a conditionnal (0=,0<>,U>=,U<,0<,S<,S>=) to jump to a predefined word
 JMP             unconditionnal jump to a predefined word
@@ -270,7 +218,6 @@ MARKER          [DEFINED]       [UNDEFINED]     [IF]            [ELSE]
 [ELSE]          https://forth-standard.org/standard/tools/BracketELSE
 [THEN]          https://forth-standard.org/standard/tools/BracketTHEN
 COMPARE         https://forth-standard.org/standard/string/COMPARE
-MARKER          https://forth-standard.org/standard/core/MARKER
 
 
 VOCABULARY ADD-ON
@@ -333,50 +280,60 @@ QUIT becomes a DEFERed word
 
 ANS_COMPLEMENT ADD-ON
 ---------------------
-PAD             >IN             SOURCE          .(              (               DECIMAL         HEX             
-FILL            [CHAR]          CHAR            +!              MIN             MAX             2/              
-2*              RSHIFT          LSHIFT          XOR             OR              AND             INVERT          
-2OVER           2SWAP           2DROP           2DUP            2VALUE          2!              2@              
-S>D             CELL+           CELLS           CHAR+           CHARS           ALIGN           ALIGNED         
-*/              */MOD           MOD             /               /MOD            *               FM/MOD          
-SM/REM          M*              UM*             TO              VALUE           {ANS_COMP}
+SPACES          SPACE           BL              PAD             >IN             BASE            STATE           
+CONSTANT        VARIABLE        SOURCE          RECURSE         EXECUTE         >BODY           .(              
+(               DECIMAL         HEX             HERE            FILL            MOVE            +!              
+[CHAR]          CHAR            CELL+           CELLS           CHAR+           CHARS           ALIGN           
+ALIGNED         2OVER           2SWAP           2DROP           2DUP            2!              2@              
+R@              ROT             OVER            */              */MOD           MOD             /               
+/MOD            *               FM/MOD          ABS             NEGATE          SM/REM          UM/MOD          
+M*              UM*             2/              2*              MIN             MAX             RSHIFT          
+LSHIFT          INVERT          1-              1+              S>D             XOR             OR              
+AND             LEAVE           UNLOOP          J               I               +LOOP           LOOP            
+DO              REPEAT          WHILE           AGAIN           UNTIL           ELSE            THEN            
+IF              >               <               U<              =               0<              0=              
+C,              C!              C@              R>              >R              NIP             DROP            
+SWAP            DEPTH           EXIT            ?DUP            DUP             !               @               
+-               +               {CORE_COMP}
 
+SPACES          https://forth-standard.org/standard/core/SPACES
+SPACE           https://forth-standard.org/standard/core/SPACE
+BL              https://forth-standard.org/standard/core/BL
 PAD             https://forth-standard.org/standard/core/PAD            
 >IN             https://forth-standard.org/standard/core/toIN
->BODY           https://forth-standard.org/standard/core/toBODY
+BASE            https://forth-standard.org/standard/core/BASE
+STATE           https://forth-standard.org/standard/core/STATE
+CONSTANT        https://forth-standard.org/standard/core/CONSTANT
+VARIABLE        https://forth-standard.org/standard/core/VARIABLE
 SOURCE          https://forth-standard.org/standard/core/SOURCE
+RECURSE         https://forth-standard.org/standard/core/RECURSE
+EXECUTE         https://forth-standard.org/standard/core/EXECUTE
+>BODY           https://forth-standard.org/standard/core/toBODY
 .(              https://forth-standard.org/standard/core/Dotp
 (               https://forth-standard.org/standard/core/p
 DECIMAL         https://forth-standard.org/standard/core/DECIMAL
 HEX             https://forth-standard.org/standard/core/HEX
+HERE            https://forth-standard.org/standard/core/HERE
 FILL            https://forth-standard.org/standard/core/FILL
+MOVE            https://forth-standard.org/standard/core/MOVE
++!              https://forth-standard.org/standard/core/PlusStore
 [CHAR]          https://forth-standard.org/standard/core/BracketCHAR
 CHAR            https://forth-standard.org/standard/core/CHAR
-+!              https://forth-standard.org/standard/core/PlusStore
-2/              https://forth-standard.org/standard/core/TwoDiv
-2*              https://forth-standard.org/standard/core/TwoTimes
-MIN             https://forth-standard.org/standard/core/MIN
-MAX             https://forth-standard.org/standard/core/MAX
-RSHIFT          https://forth-standard.org/standard/core/RSHIFT
-LSHIFT          https://forth-standard.org/standard/core/LSHIFT
-INVERT          https://forth-standard.org/standard/core/INVERT
-XOR             https://forth-standard.org/standard/core/XOR
-OR              https://forth-standard.org/standard/core/OR
-AND             https://forth-standard.org/standard/core/AND
-2OVER           https://forth-standard.org/standard/core/TwoOVER
-2SWAP           https://forth-standard.org/standard/core/TwoSWAP
-2DROP           https://forth-standard.org/standard/core/TwoDROP
-2DUP            https://forth-standard.org/standard/core/TwoDUP
-2VALUE          https://forth-standard.org/standard/double/TwoVALUE
-2!              https://forth-standard.org/standard/core/TwoStore
-2@              https://forth-standard.org/standard/core/TwoFetch
-S>D             https://forth-standard.org/standard/core/StoD
 CELL+           https://forth-standard.org/standard/core/CELLPlus
 CELLS           https://forth-standard.org/standard/core/CELLS
 CHAR+           https://forth-standard.org/standard/core/CHARPlus
 CHARS           https://forth-standard.org/standard/core/CHARS
 ALIGN           https://forth-standard.org/standard/core/ALIGN
 ALIGNED         https://forth-standard.org/standard/core/ALIGNED
+2OVER           https://forth-standard.org/standard/core/TwoOVER
+2SWAP           https://forth-standard.org/standard/core/TwoSWAP
+2DROP           https://forth-standard.org/standard/core/TwoDROP
+2DUP            https://forth-standard.org/standard/core/TwoDUP
+2!              https://forth-standard.org/standard/core/TwoStore
+2@              https://forth-standard.org/standard/core/TwoFetch
+R@              https://forth-standard.org/standard/core/RFetch
+ROT             https://forth-standard.org/standard/core/ROT
+OVER            https://forth-standard.org/standard/core/OVER
 */              https://forth-standard.org/standard/core/TimesDiv
 */MOD           https://forth-standard.org/standard/core/TimesDivMOD
 MOD             https://forth-standard.org/standard/core/MOD
@@ -384,12 +341,74 @@ MOD             https://forth-standard.org/standard/core/MOD
 /MOD            https://forth-standard.org/standard/core/DivMOD
 *               https://forth-standard.org/standard/core/Times
 FM/MOD          https://forth-standard.org/standard/core/FMDivMOD
+ABS             https://forth-standard.org/standard/core/ABS
+NEGATE          https://forth-standard.org/standard/core/NEGATE
 SM/REM          https://forth-standard.org/standard/core/SMDivREM
+UM/MOD          https://forth-standard.org/standard/core/UMDivMOD
 M*              https://forth-standard.org/standard/core/MTimes
 UM*             https://forth-standard.org/standard/core/UMTimes
+2/              https://forth-standard.org/standard/core/TwoDiv
+2*              https://forth-standard.org/standard/core/TwoTimes
+MIN             https://forth-standard.org/standard/core/MIN
+MAX             https://forth-standard.org/standard/core/MAX
+RSHIFT          https://forth-standard.org/standard/core/RSHIFT
+LSHIFT          https://forth-standard.org/standard/core/LSHIFT
+INVERT          https://forth-standard.org/standard/core/INVERT
+1-              https://forth-standard.org/standard/core/OneMinus
+1+              https://forth-standard.org/standard/core/OnePlus
+S>D             https://forth-standard.org/standard/core/StoD
+XOR             https://forth-standard.org/standard/core/XOR
+OR              https://forth-standard.org/standard/core/OR
+AND             https://forth-standard.org/standard/core/AND
+LEAVE           https://forth-standard.org/standard/core/LEAVE
+UNLOOP          https://forth-standard.org/standard/core/UNLOOP
+J               https://forth-standard.org/standard/core/J
+I               https://forth-standard.org/standard/core/I
++LOOP           https://forth-standard.org/standard/core/PlusLOOP
+LOOP            https://forth-standard.org/standard/core/LOOP
+DO              https://forth-standard.org/standard/core/DO        
+REPEAT          https://forth-standard.org/standard/core/REPEAT
+WHILE           https://forth-standard.org/standard/core/WHILE
+AGAIN           https://forth-standard.org/standard/core/AGAIN
+UNTIL           https://forth-standard.org/standard/core/UNTIL
+THEN            https://forth-standard.org/standard/core/THEN
+ELSE            https://forth-standard.org/standard/core/ELSE
+IF              https://forth-standard.org/standard/core/IF
+>               https://forth-standard.org/standard/core/more
+<               https://forth-standard.org/standard/core/less
+U<              https://forth-standard.org/standard/core/Uless
+=               https://forth-standard.org/standard/core/Equal
+0<              https://forth-standard.org/standard/core/Zeroless
+0=              https://forth-standard.org/standard/core/ZeroEqual
+C,              https://forth-standard.org/standard/core/CComma
+C!              https://forth-standard.org/standard/core/CStore
+C@              https://forth-standard.org/standard/core/CFetch
+R>              https://forth-standard.org/standard/core/Rfrom
+>R              https://forth-standard.org/standard/core/toR
+NIP             https://forth-standard.org/standard/core/NIP
+DROP            https://forth-standard.org/standard/core/DROP
+SWAP            https://forth-standard.org/standard/core/SWAP
+DEPTH           https://forth-standard.org/standard/core/DEPTH
+EXIT            https://forth-standard.org/standard/core/EXIT
+?DUP            https://forth-standard.org/standard/core/qDUP
+DUP             https://forth-standard.org/standard/core/DUP
+!               https://forth-standard.org/standard/core/Store
+@               https://forth-standard.org/standard/core/Fetch
+-               https://forth-standard.org/standard/core/Minus
++               https://forth-standard.org/standard/core/Plus
+{CORE_COMP}
+
+
+OTHER WORDS
+
+
+MARKER          https://forth-standard.org/standard/core/MARKER
+DEFER           https://forth-standard.org/standard/core/DEFER
+IS              https://forth-standard.org/standard/core/IS
+D.              https://forth-standard.org/standard/double/Dd
+DABS            https://forth-standard.org/standard/double/DABS
 TO              https://forth-standard.org/standard/core/TO
 VALUE           https://forth-standard.org/standard/core/VALUE
-{ANS_COMP}
 
 
 FIXPOINT ADD-ON
diff --git a/MSP430-FORTH/BOOT.4th b/MSP430-FORTH/BOOT.4th
new file mode 100644 (file)
index 0000000..89a2804
--- /dev/null
@@ -0,0 +1,68 @@
+
+; --------
+; BOOT.4th
+; --------
+\
+\ to see kernel options, download FastForthSpecs.f
+\ FastForth kernel options: MSP430ASSEMBLER, CONDCOMP, SD_CARD_LOADER, BOOTLOADER
+\
+\ TARGET SELECTION
+\ MSP_EXP430FR5739  MSP_EXP430FR5969    MSP_EXP430FR5994    MSP_EXP430FR6989
+\ MSP_EXP430FR4133  MSP_EXP430FR2433    MSP_EXP430FR2355    CHIPSTICK_FR2433
+\
+\ SYSRSTIV decimal/hex values for MSP430FR5994 (device specific)
+\ ----------------------------------------------------------   
+\ #00 $00 No interrupt pending                                      
+\ #02 $02 Brownout (BOR)                                            
+\ #04 $04 RSTIFG RST/NMI (BOR)                                      
+\ #06 $06 PMMSWBOR software BOR (BOR)                               
+\ #08 $08 LPMx.5 wake up (BOR)                                      
+\ #10 $0A violation memory protected areas (BOR)                                  
+\ #12 $0C Reserved                                                  
+\ #14 $0E SVSHIFG SVSH event (BOR)                                  
+\ #16 $10 Reserved                                                  
+\ #18 $12 Reserved                                                  
+\ #20 $14 PMMSWPOR software POR (POR)                               
+\ #22 $16 WDTIFG watchdog timeout (PUC)                             
+\ #24 $18 WDTPW password violation (PUC)                            
+\ #26 $1A FRCTLPW password violation (PUC)                          
+\ #28 $1C Uncorrectable FRAM bit error detection (PUC)              
+\ #30 $1E Peripheral area fetch (PUC)                               
+\ #32 $20 PMMPW PMM password violation (PUC)                        
+\ #34 $22 MPUPW MPU password violation (PUC)                        
+\ #36 $24 CSPW CS password violation (PUC)                          
+\ #38 $26 MPUSEGIPIFG encapsulated IP memory segment violation (PUC)
+\ #40 $28 MPUSEGIIFG information memory segment violation (PUC)     
+\ #42 $2A MPUSEG1IFG segment 1 memory violation (PUC)               
+\ #44 $2C MPUSEG2IFG segment 2 memory violation (PUC)               
+\ #46 $2E MPUSEG3IFG segment 3 memory violation (PUC)   
+
+
+
+
+
+\ SYSRSTIV values added by FAST FORTH 
+\ -----------------------------------
+\ 05 reset after compilation of FAST FORTH kernel
+\ -1 hardware DEEP RESET: restores state of the lastest FastForth flashed   
+             
+
+\ note
+\ Origin of reset is kept in SYSRSTIV register. Their values are device specific.
+\ WARM displays the content of SYSRSTIV register.
+\ When BOOT.4TH is called by the FastForth bootstrap, the SYSRSTIV value is on
+\ the paramater stack, ready to test
+
+\ --------------------------------------------------------------------------------
+\ WARNING !
+\ --------------------------------------------------------------------------------
+\ it is not recommended to compile then execute a word to perform the bootstrap 
+\ because the risk of crushing thereafter. Interpreting mode as below is required: 
+\ --------------------------------------------------------------------------------
+
+
+\ it's an example:
+
+$04 = [IF]      \ if origin of SYSRST is <reset>
+    LOAD" SD_TEST.4TH"
+[THEN]
index f00d2d5..a505bcf 100644 (file)
 ; ------------
 ; CHNGBAUD.f
 ; ------------
-\
+
 \ to see kernel options, download FastForthSpecs.f
 \ FastForth kernel options: nothing
 \
-\ TARGET SELECTION
+\ TARGET SELECTION : copy your target in (shift+F8) parameter 1: 
 \ MSP_EXP430FR5739  MSP_EXP430FR5969    MSP_EXP430FR5994    MSP_EXP430FR6989
 \ MSP_EXP430FR4133  MSP_EXP430FR2433    MSP_EXP430FR2355    CHIPSTICK_FR2433
+\ LP_MSP430FR2476
+\
 \
-
 PWR_STATE
 
-[UNDEFINED] CONSTANT [IF]
-\ https://forth-standard.org/standard/core/CONSTANT
-\ CONSTANT <name>     n --                      define a Forth CONSTANT 
-: CONSTANT 
-DEFER
-HI2LO
-MOV @RSP+,IP
-MOV #DOCON,-4(W)        \   CFA = DOCON
-MOV TOS,-2(W)           \   PFA = n
-MOV @PSP+,TOS
+[UNDEFINED] SWAP [IF]
+\ https://forth-standard.org/standard/core/SWAP
+\ SWAP     x1 x2 -- x2 x1    swap top two items
+CODE SWAP
+MOV @PSP,W      \ 2
+MOV TOS,0(PSP)  \ 3
+MOV W,TOS       \ 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+ELSE            \ 2
+    XOR #-1,TOS \ 1 flag Z = 1
+THEN
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] 0= [IF]
+\ https://forth-standard.org/standard/core/ZeroEqual
+\ 0=     n/u -- flag    return true if TOS=0
+CODE 0=
+SUB #1,TOS      \ borrow (clear cy) if TOS was 0
+SUBC TOS,TOS    \ TOS=-1 if borrow was set
 MOV @IP+,PC
 ENDCODE
 [THEN]
 
-[UNDEFINED] BL [IF]
-\ https://forth-standard.org/standard/core/BL
-\ BL      -- char            an ASCII space
-#32 CONSTANT BL
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
 [THEN]
 
-[UNDEFINED] SPACE [IF]
-\ https://forth-standard.org/standard/core/SPACE
-\ SPACE   --               output a space
-: SPACE
-BL EMIT ;
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE     \ immediate
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] BEGIN [IF]
+\ https://forth-standard.org/standard/core/BEGIN
+\ BEGIN    -- BEGINadr             initialize backward branch
+CODE BEGIN              \ immediate
+MOV #HERE,PC            \ BR HERE
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] AGAIN [IF]
+\ https://forth-standard.org/standard/core/AGAIN
+\ AGAIN    BEGINadr --             resolve uncondionnal backward branch
+CODE AGAIN     \ immediate
+MOV #BRAN,X
+GOTO BW1
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] WHILE [IF]
+\ https://forth-standard.org/standard/core/WHILE
+\ WHILE    BEGINadr -- WHILEadr BEGINadr
+: WHILE     \ immediate
+POSTPONE IF SWAP
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] REPEAT [IF]
+\ https://forth-standard.org/standard/core/REPEAT
+\ REPEAT   WHILEadr BEGINadr --     resolve WHILE loop
+: REPEAT
+POSTPONE AGAIN POSTPONE THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] DO [IF]
+\ https://forth-standard.org/standard/core/DO
+\ DO       -- DOadr   L: -- 0
+CODE DO                 \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+ADD #2,&DP              \   make room to compile xdo
+MOV &DP,TOS             \ -- HERE+2
+MOV #XDO,-2(TOS)        \   compile xdo
+ADD #2,&LEAVEPTR        \ -- HERE+2     LEAVEPTR+2
+MOV &LEAVEPTR,W         \
+MOV #0,0(W)             \ -- HERE+2     L-- 0
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] LOOP [IF]
+\ https://forth-standard.org/standard/core/LOOP
+\ LOOP    DOadr --         L-- an an-1 .. a1 0
+CODE LOOP               \ immediate
+    MOV #XLOOP,X
+BW1 ADD #4,&DP          \ make room to compile two words
+    MOV &DP,W
+    MOV X,-4(W)         \ xloop --> HERE
+    MOV TOS,-2(W)       \ DOadr --> HERE+2
+BEGIN                   \ resolve all "leave" adr
+    MOV &LEAVEPTR,TOS   \ -- Adr of top LeaveStack cell
+    SUB #2,&LEAVEPTR    \ --
+    MOV @TOS,TOS        \ -- first LeaveStack value
+    CMP #0,TOS          \ -- = value left by DO ?
+0<> WHILE
+    MOV W,0(TOS)        \ move adr after loop as UNLOOP adr
+REPEAT
+    MOV @PSP+,TOS
+    MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] >R [IF]
+\ https://forth-standard.org/standard/core/toR
+\ >R    x --   R: -- x   push to return stack
+CODE >R
+PUSH TOS
+MOV @PSP+,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] R> [IF]
+\ https://forth-standard.org/standard/core/Rfrom
+\ R>    -- x    R: x --   pop from return stack ; CALL #RFROM performs DOVAR
+CODE R>
+MOV rDOVAR,PC     \ 4
+ENDCODE
 [THEN]
 
 [UNDEFINED] R@ [IF]
@@ -52,6 +188,47 @@ MOV @IP+,PC
 ENDCODE
 [THEN]
 
+[UNDEFINED] DROP [IF]
+\ https://forth-standard.org/standard/core/DROP
+\ DROP     x --          drop top of stack
+CODE DROP
+MOV @PSP+,TOS   \ 2
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] ?DUP [IF]
+\ 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<> IF
+    SUB #2,PSP      \ 2  push old TOS..
+    MOV TOS,0(PSP)  \ 3  ..onto stack
+THEN
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] ! [IF]
+\ https://forth-standard.org/standard/core/Store
+\ !        x a-addr --   store cell in memory
+CODE !
+MOV @PSP+,0(TOS)    \ 4
+MOV @PSP+,TOS       \ 2
+MOV @IP+,PC         \ 4
+ENDCODE
+[THEN]
+
 [UNDEFINED] < [IF]
 \ https://forth-standard.org/standard/core/less
 \ <      n1 n2 -- flag        test n1<n2, signed
@@ -74,215 +251,237 @@ FW1 AND #0,TOS      \ 1 flag Z = 1
 ENDCODE
 [THEN]
 
+[UNDEFINED] - [IF]
+\ https://forth-standard.org/standard/core/Minus
+\ -      n1/u1 n2/u2 -- n3/u3      n3 = n1-n2
+CODE -
+SUB @PSP+,TOS   \ 2  -- n2-n1
+XOR #-1,TOS     \ 1
+ADD #1,TOS      \ 1  -- n3 = -(n2-n1) = n1-n2
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
 [UNDEFINED] UM/MOD [IF]
 \ https://forth-standard.org/standard/core/UMDivMOD
 \ UM/MOD   udlo|udhi u1 -- r q   unsigned 32/16->r16 q16
 CODE UM/MOD
     PUSH #DROP      \
-    MOV #<#,X       \ X = addr of <#
-    ADD #8,X        \ X = addr of MUSMOD
-    MOV X,PC        \ execute MUSMOD then RET to DROP
+    MOV #MUSMOD,PC  \ execute MUSMOD then return to DROP
 ENDCODE
 [THEN]
 
-: MCLK.
-0 1000 UM/MOD .
-;
-
-: ESC #27 EMIT ;
+[UNDEFINED] ESC" [IF]
+\ ESC" <escape sequence>" --    type an escape sequence
+: ESC" $1B POSTPONE LITERAL POSTPONE EMIT POSTPONE S" POSTPONE TYPE ; IMMEDIATE \ "
+[THEN]
 
 : BAD_MHz
-    1 ABORT"  only for 1,4,8,16,24 MHz MCLK!"
+$20 EMIT 1 ABORT" only for 1,4,8,16,24 MHz MCLK!"
 ;
 
-: BAD_SPEED
-SPACE ESC ." [7m"   \ set reverse video
-." with MCLK = " MCLK. 1 ABORT" MHz? don't dream!"
+: OVR_BAUDS
+$20 EMIT ESC" [7m"   \ set reverse video
+." with MCLK = " FREQ_KHZ @ 0 1000 UM/MOD . DROP
+1 ABORT" MHz? don't dream!"
 ;
 
 : <> = 0= ;
 
 : CHNGBAUD                  \ only for 8, 16, 24 MHz
 PWR_STATE                   \ to remove this created word (garbage collector)
-
+ECHO
 42              \ number of terminal lines   
 0 DO CR LOOP    \ don't erase any line of source
 
-ESC ." [1J"     \ erase up (42 empty lines)
-ESC ." [H"      \ cursor home
+ESC" [1J"     \ erase up (42 empty lines)
+ESC" [H"      \ cursor home
 
 FREQ_KHZ @ >R               \ r-- target MCLCK frequency in MHz
-." target MCLK = " R@ MCLK. ." MHz" CR
+." target MCLK = " R@ 0 1000 UM/MOD . ." MHz" DROP CR
 ." choose your baudrate:" CR
-." 0 --> 6 MBds" CR
-." 1 --> 5 MBds" CR
-." 2 --> 4 MBds" CR      \ linux driver max speed
-." 3 --> 2457600 Bds" CR
-." 4 --> 921600 Bds" CR
-." 5 --> 460800 Bds" CR
-." 6 --> 230400 Bds" CR
-." 7 --> 115200 Bds" CR
+."  0 --> 6 MBds" CR
+."  1 --> 5 MBds" CR
+."  2 --> 4 MBds" CR      \ linux driver max speed
+."  3 --> 2457600 Bds" CR
+."  4 --> 921600 Bds" CR
+."  5 --> 460800 Bds" CR
+."  6 --> 230400 Bds" CR
+."  7 --> 115200 Bds" CR
+."  8 --> 38400 Bds" CR
+."  9 --> 19200 Bds" CR
+."  A --> 9600 Bds" CR
 ." other --> abort" CR
 ." your choice: "
 KEY
 
 #48 - ?DUP 0=               \ select 6MBds ?
 IF  ." 6 MBds"              \ add this to the current line
-    R@ #24000 <              \ < 24MHz ?
-    IF  R@ BAD_SPEED
-    THEN
-    R@ #24000 <>             \ 24 MHz ?
-    IF  BAD_MHz             \ no: --> abort
-    THEN                
+    R@ #24000 <             \ < 24MHz ?
+    IF  OVR_BAUDS THEN
+    R@ #24000 <>            \ > 24 MHz ?
+    IF  BAD_MHz  THEN       \ yes --> abort
     $4                      \ TERM_BRW
     $0                      \ TERM_MCTLW
 ELSE 1 - ?DUP 0=            \ select 5MBds ?
     IF  ." 5 MBds"
         R@ #16000 <         \ < 16MHz ?
-        IF  R@ BAD_SPEED    \ abort
-        THEN
-        R@ #16000 =
+        IF  OVR_BAUDS THEN
+        R@ #16000 =         \ 16 MHz ?
         IF  $3              \ TERM_BRW
             $2100           \ TERM_MCTLW
         ELSE R@ #24000 <>
-            IF  BAD_MHz
-            THEN
+            IF  BAD_MHz  THEN
             $4              \ TERM_BRW
             $EE00           \ TERM_MCTLW
         THEN
-    ELSE 1 - ?DUP 0=            \ select 4MBds ?
+    ELSE 1 - ?DUP 0=        \ 4MBds ?
         IF  ." 4 MBds"
             R@ #16000 <
-            IF  R@ BAD_SPEED    \ abort
-            THEN
+            IF  OVR_BAUDS THEN
             R@ #16000 =
-                IF  $4          \ TERM_BRW
-                    $0          \ TERM_MCTLW
+                IF  $4 $0
                 ELSE R@ #24000 <>
-                    IF  BAD_MHz
-                    THEN
-                    $6          \ TERM_BRW
-                    $0          \ TERM_MCTLW
+                    IF  BAD_MHz  THEN
+                    $6 $0
                 THEN
-        ELSE 1 - ?DUP 0=            \ select 2457600 ?
+        ELSE 1 - ?DUP 0=            \ 2457600 ?
             IF  ." 2457600 Bds"
                 R@ #8000 <           \ < 8MHz ?
-                IF  R@ BAD_SPEED    \ abort
-                THEN
+                IF  OVR_BAUDS THEN
                 R@ #8000 =
-                IF  $3              \ TERM_BRW
-                    $4400           \ TERM_MCTLW
+                IF  $3 $4400
                 ELSE R@ #16000 =
-                    IF  $6          \ TERM_BRW
-                        $AA00       \ TERM_MCTLW
+                    IF  $6 $AA00
                     ELSE R@ #24000 <>
-                        IF  BAD_MHz
-                        THEN
-                        $9          \ TERM_BRW
-                        $DD00       \ TERM_MCTLW
+                        IF  BAD_MHz  THEN
+                        $9 $DD00
                     THEN
                 THEN
-            ELSE 1 - ?DUP 0=                \ select 921600 ?
+            ELSE 1 - ?DUP 0=                \ 921600 ?
                 IF  ." 921600 Bds"
-                    R@ #4000 <
-                    IF  R@ BAD_SPEED        \ abort 
-                    THEN
-                    R@ #4000 =              \ 4MHz ?
-                    IF  4                   \ TERM_BRW
-                        $4900               \ TERM_MCTLW
-                    ELSE
-                        R@ #8000 =
-                        IF  8               \ TERM_BRW
-                            $D600           \ TERM_MCTLW
+                    R@ #4000 <              \ < 4MHz ?
+                    IF  OVR_BAUDS THEN
+                    R@ #4000 =
+                    IF  4 $4900
+                    ELSE R@ #8000 =
+                        IF  8 $D600
                         ELSE R@ #16000 =
-                            IF  $11         \ TERM_BRW
-                                $4A00       \ TERM_MCTLW
+                            IF  $11 $4A00
                             ELSE R@ #24000 <>
-                                IF  BAD_MHz
-                                THEN
-                                $1          \ TERM_BRW
-                                $00A1       \ TERM_MCTLW
+                                IF  BAD_MHz  THEN
+                                $1 $00A1
                             THEN
                         THEN
                     THEN
-                ELSE 1 - ?DUP 0=                \ select 230400 ?
+                ELSE 1 - ?DUP 0=                \ 460800 ?
                     IF  ." 460800 Bds"
                         R@ #4000 <
-                        IF  R@ BAD_SPEED        \ abort 
-                        THEN
+                        IF  OVR_BAUDS THEN
                         R@ #4000  =
-                        IF  8                  \ TERM_BRW
-                            $D600               \ TERM_MCTLW
-                        ELSE
-                            R@ #8000  =
-                            IF  17               \ TERM_BRW
-                                $4A00           \ TERM_MCTLW
+                        IF  8 $D600
+                        ELSE R@ #8000  =
+                            IF $11 $4A00
                             ELSE R@ #16000 =
-                                IF  2           \ TERM_BRW
-                                    $BB21       \ TERM_MCTLW
+                                IF $2 $BB21
                                 ELSE R@ #24000 <>
-                                    IF  BAD_MHz
-                                    THEN
-                                    6           \ TERM_BRW
-                                    $0001       \ TERM_MCTLW
+                                    IF  BAD_MHz  THEN
+                                    $6 $0001
                                 THEN
                             THEN
                         THEN
-                    ELSE 1 - ?DUP 0=                \ select 230400 ?
+                    ELSE 1 - ?DUP 0=                \ 230400 ?
                         IF  ." 230400 Bds"
                             R@ #1000 <
-                            IF  R@ BAD_SPEED        \ abort 
-                            THEN
+                            IF  OVR_BAUDS THEN
                             R@ #1000 =
-                            IF  4
-                                $4900
-                            ELSE
-                                R@ #4000  =
-                                IF  17                  \ TERM_BRW
-                                    $4A00               \ TERM_MCTLW
-                                ELSE
-                                    R@ #8000  =
-                                    IF  2               \ TERM_BRW
-                                        $BB21           \ TERM_MCTLW
+                            IF  4 $4900
+                            ELSE R@ #4000  =
+                                IF $11 $4A00
+                                ELSE R@ #8000  =
+                                    IF  2 $BB21
                                     ELSE R@ #16000 =
-                                        IF  4           \ TERM_BRW
-                                            $5551       \ TERM_MCTLW
+                                        IF  4 $5551
                                         ELSE R@ #24000 <>
-                                            IF  BAD_MHz
-                                            THEN
-                                            3           \ TERM_BRW
-                                            $0241       \ TERM_MCTLW
+                                            IF  BAD_MHz  THEN
+                                            3 $0241
                                         THEN
                                     THEN
                                 THEN
                             THEN
-                        ELSE 1 - ?DUP 0=                \ select 115200 ?
+                        ELSE 1 - ?DUP 0=                \ 115200 ?
                             IF  ." 115200 Bds"
                                 R@ #1000  =
-                                IF  8
-                                    $D600
-                                ELSE
-                                    R@ #4000  =
-                                    IF  2                   \ TERM_BRW
-                                        $BB21               \ TERM_MCTLW
-                                    ELSE
-                                        R@ #8000  =
-                                        IF  4               \ TERM_BRW
-                                            $5551           \ TERM_MCTLW
+                                IF  8 $D600
+                                ELSE R@ #4000  =
+                                    IF  2 $BB21
+                                    ELSE R@ #8000  =
+                                        IF  4 $5551
                                         ELSE R@ #16000 =
-                                            IF  8           \ TERM_BRW
-                                                $F7A1       \ TERM_MCTLW
+                                            IF  8 $F7A1
                                             ELSE R@ #24000 <>
-                                                IF  BAD_MHz
+                                                IF  BAD_MHz  THEN
+                                                $0D $4901
+                                            THEN
+                                        THEN
+                                    THEN
+                                THEN
+                            ELSE 1 - ?DUP 0=                \ 38400 ?
+                                IF  ." 38400 Bds"
+                                    R@ #1000  =
+                                    IF  $1  $00A1
+                                    ELSE R@ #4000  =
+                                        IF  $6  $2081
+                                        ELSE R@ #8000  =
+                                            IF  $0D $4901
+                                            ELSE R@ #16000 =
+                                                IF  $1A $D601
+                                                ELSE R@ #24000 <>
+                                                    IF  BAD_MHz  THEN
+                                                    $27 $0011
+                                                THEN
+                                            THEN
+                                        THEN
+                                    THEN
+                                ELSE 1 - ?DUP 0=                \ 19200 ?
+                                    IF  ." 19200 Bds"
+                                        R@ #1000  =
+                                        IF  $3  $0241
+                                        ELSE R@ #4000  =
+                                            IF  $0D $4901
+                                            ELSE R@ #8000  =
+                                                IF  $1A $D601
+                                                ELSE R@ #16000 =
+                                                    IF  $34 $4911
+                                                    ELSE R@ #24000 <>
+                                                        IF  BAD_MHz  THEN
+                                                        $4E $0021
+                                                    THEN
+                                                THEN
+                                            THEN
+                                        THEN
+                                    ELSE 8 - ?DUP 0=                \ 9600 ?
+                                        IF  ." 9600 Bds"
+                                            R@ #1000  =
+                                            IF  $6  $2081
+                                            ELSE R@ #4000  =
+                                                IF  $1A $D601
+                                                ELSE R@ #8000  =
+                                                    IF  $34 $4911
+                                                    ELSE R@ #16000 =
+                                                        IF  $68 $D621
+                                                        ELSE R@ #24000 <>
+                                                            IF  BAD_MHz  THEN
+                                                            $9C $0041
+                                                        THEN
+                                                    THEN
                                                 THEN
-                                                $0D         \ TERM_BRW
-                                                $4901       \ TERM_MCTLW
                                             THEN
+                                        ELSE                    \ other selected 
+                                            ." abort" CR ABORT
                                         THEN
                                     THEN
                                 THEN
-                            ELSE                    \ other selected 
-                                ." abort" CR ABORT
                             THEN
                         THEN
                     THEN
@@ -294,8 +493,8 @@ THEN
 TERMMCTLW_RST !             \ set UCAxMCTLW value in FRAM
 TERMBRW_RST !               \ set UCAxBRW value in FRAM
 R> DROP                     \ clear stacks
-CR ESC ." [7m"              \ escape sequence to set reverse video
-." Change baudrate in Teraterm, save its setup then reset target."
+CR ESC" [7m"                \ escape sequence to set reverse video
+." Change baudrate in Teraterm, save its setup, then reset target."
 ;
 
-ECHO CHNGBAUD 
+CHNGBAUD 
diff --git a/MSP430-FORTH/CHNGBAUD_pretty.f b/MSP430-FORTH/CHNGBAUD_pretty.f
new file mode 100644 (file)
index 0000000..efd0c18
--- /dev/null
@@ -0,0 +1,402 @@
+\ -*- coding: utf-8 -*-
+
+; ------------
+; CHNGBAUD.f
+; ------------
+
+\ FastForth kernel options: ASSEMBLER, COND_COMP
+\ to see kernel options, download FF_SPECS.f
+\
+\ TARGET SELECTION : copy your target in (shift+F8) parameter 1: 
+\ MSP_EXP430FR5739  MSP_EXP430FR5969    MSP_EXP430FR5994    MSP_EXP430FR6989
+\ MSP_EXP430FR4133  MSP_EXP430FR2433    MSP_EXP430FR2355    CHIPSTICK_FR2433
+\ LP_MSP430FR2476
+\
+PWR_STATE
+
+[UNDEFINED] EXIT [IF]
+\ https://forth-standard.org/standard/core/EXIT
+\ EXIT     --      exit a colon definition
+CODE EXIT
+MOV @RSP+,IP    \ 2 pop previous IP (or next PC) from return stack
+MOV @IP+,PC     \ 4 = NEXT
+ENDCODE
+[THEN]
+
+[UNDEFINED] EXECUTE [IF] \ "
+\ https://forth-standard.org/standard/core/EXECUTE
+\ EXECUTE   i*x xt -- j*x   execute Forth word at 'xt'
+CODE EXECUTE
+MOV TOS,W               \ 1 put word address into W
+MOV @PSP+,TOS           \ 2 fetch new TOS
+MOV W,PC                \ 3 fetch code address into PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] SWAP [IF]
+\ https://forth-standard.org/standard/core/SWAP
+\ SWAP     x1 x2 -- x2 x1    swap top two items
+CODE SWAP
+MOV @PSP,W      \ 2
+MOV TOS,0(PSP)  \ 3
+MOV W,TOS       \ 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] DROP [IF]
+\ https://forth-standard.org/standard/core/DROP
+\ DROP     x --          drop top of stack
+CODE DROP
+MOV @PSP+,TOS   \ 2
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] ! [IF]
+\ https://forth-standard.org/standard/core/Store
+\ !        x a-addr --   store cell in memory
+CODE !
+MOV @PSP+,0(TOS)    \ 4
+MOV @PSP+,TOS       \ 2
+MOV @IP+,PC         \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] + [IF]
+\ https://forth-standard.org/standard/core/Plus
+\ +       n1/u1 n2/u2 -- n3/u3
+CODE +
+ADD @PSP+,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DO [IF]
+\ https://forth-standard.org/standard/core/DO
+\ DO       -- DOadr   L: -- 0
+CODE DO                 \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+ADD #2,&DP              \   make room to compile xdo
+MOV &DP,TOS             \ -- HERE+2
+MOV #XDO,-2(TOS)        \   compile xdo
+ADD #2,&LEAVEPTR        \ -- HERE+2     LEAVEPTR+2
+MOV &LEAVEPTR,W         \
+MOV #0,0(W)             \ -- HERE+2     L-- 0
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] LOOP [IF]
+\ https://forth-standard.org/standard/core/LOOP
+\ LOOP    DOadr --         L-- an an-1 .. a1 0
+CODE LOOP               \ immediate
+    ADD #4,&DP          \ make room to compile two words
+    MOV &DP,W
+    MOV #XLOOP,-4(W)    \ xloop --> HERE
+    MOV TOS,-2(W)       \ DOadr --> HERE+2
+BEGIN                   \ resolve all "leave" adr
+    MOV &LEAVEPTR,TOS   \ -- Adr of top LeaveStack cell
+    SUB #2,&LEAVEPTR    \ --
+    MOV @TOS,TOS        \ -- first LeaveStack value
+    CMP #0,TOS          \ -- = value left by DO ?
+0<> WHILE
+    MOV W,0(TOS)        \ move adr after loop as UNLOOP adr
+REPEAT
+    MOV @PSP+,TOS
+    MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ESC" [IF]
+\ ESC" <escape sequence>" --    type an escape sequence
+: ESC" $1B POSTPONE LITERAL POSTPONE EMIT POSTPONE S" POSTPONE TYPE ; IMMEDIATE \ "
+[THEN]
+
+\ : OVER= OVER = ;      \ replace 'n1 DUP n2 =' by 'n1 n2 OVER='
+CODE OVER=      \ n1 n2 -- n1 flag
+SUB @PSP,TOS    \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+ELSE            \ 2
+    XOR #-1,TOS \ 1 flag Z = 1
+THEN
+MOV @IP+,PC     \ 4
+ENDCODE
+
+\ : OVRSWP<         \ n1 n2 -- n1 flag      flag = -1 if n1 < n2
+\   OVER SWAP < ; 
+CODE OVRSWP<        \ n1 n2 -- n1 flag      flag = -1 if n1 < n2
+SUB @PSP,TOS        \ -- n1 n  TOS=n2-n1
+S>= IF              \               if n2-n1 >= 0
+    0<> IF          \               if n2-n1 <> 0
+        MOV #-1,TOS \ -- n1 -1      flag Z = 0
+    THEN
+    MOV @IP+,PC 
+THEN
+AND #0,TOS          \ -- n1 0       flag Z = 1
+MOV @IP+,PC
+ENDCODE
+
+\ ;THEN                 \ EXIT condition ended by THEN
+\   POSTPONE EXIT POSTPONE THEN
+\ ; IMMEDIATE 
+CODE ;THEN              \ IFadr --        
+ADD #2,&DP              \
+MOV &DP,X
+MOV #EXIT,-2(X)         \               compile EXIT
+MOV X,0(TOS)            \ -- IFadr      compile current DP at IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+\ UM/   udlo|udhi u1 -- q   unsigned 32/16->q16
+CODE UM/
+CALL #MUSMOD    \ -- r Qlo Qhi
+MOV @PSP,TOS    \ -- r Qlo Qlo
+ADD #4,PSP      \ -- Qlo
+MOV @IP+,PC
+ENDCODE
+
+: BAD_MHz           \ abort
+$20 EMIT 1 ABORT" only for 1,4,8,16,24 MHz MCLK!"
+;
+
+: OVR_BAUDS         \ abort
+$20 EMIT ESC" [7m"  \ set reverse video
+FREQ_KHZ @ 0 1000 UM/ ." with MCLK = " .
+1 ABORT" MHz? don't dream!"
+;
+
+\ conditionnal EXIT structure
+: SELECT_BAUDS      \ -- char frequency TERM_BRW TERM_MCTLW
+KEY                 \ -- char
+
+48 OVER=                \ -- char flag     choice 0 = 6MBds ?
+IF  ." 6 MBds"
+    FREQ_KHZ @          \ -- char flag freq
+    #24000 OVRSWP<      \ MCLK < 24MHz ?
+    IF OVR_BAUDS ;THEN  \   ==> abort   ( ;THEN does nothing but solve paired IF during compilation)      
+    #24000 OVER=        \ FREQ = 24 MHz ?
+    IF $4  $0    ;THEN  \ --  char frequency TERM_BRW TERM_MCTLW
+    BAD_MHz             \   ==> abort for other freq                
+;THEN               \ ;THEN does nothing but solve paired IF during compilation
+
+49 OVER=            \ -- char flag     choice 1 = 5MBds ?
+IF  ." 5 MBds"
+    FREQ_KHZ @
+    #16000 OVRSWP<  \ MCLK < 16MHz ?    ==> abort
+    IF OVR_BAUDS ;THEN
+    #16000 OVER=
+    IF $3  $2100 ;THEN
+    #24000 OVER=
+    IF $4  $EE00 ;THEN
+    BAD_MHz         \ other freq    ==> abort
+;THEN
+50 OVER=            \ -- char flag     choice 2 = 4MBds ?
+IF  ." 4 MBds"
+    FREQ_KHZ @
+    #16000 OVRSWP<  \ MCLK < 16MHz ?    ==> abort
+    IF OVR_BAUDS ;THEN
+    #16000 OVER=
+    IF $4  $0    ;THEN
+    #24000 OVER=
+    IF $6  $0    ;THEN
+    BAD_MHz         \ other freq    ==> abort             
+;THEN
+51 OVER=            \ -- char flag     choice 3 = 2457600 ?
+IF  ." 2457600 Bds"
+    FREQ_KHZ @
+    #8000 OVRSWP<   \ MCLK < 8MHz ?    ==> abort
+    IF OVR_BAUDS ;THEN
+    #8000 OVER=
+    IF $3  $4400 ;THEN
+    #16000 OVER=
+    IF $6  $AA00 ;THEN
+    #24000 OVER=
+    IF $9  $DD00 ;THEN
+    BAD_MHz
+;THEN    
+52 OVER=            \ -- char flag     choice 4 = 921600 ?
+IF  ." 921600 Bds"
+    FREQ_KHZ @
+    #4000 OVRSWP<   \ MCLK < 4MHz ?    ==> abort
+    IF OVR_BAUDS ;THEN
+    #4000 OVER=
+    IF $4  $4900 ;THEN
+    #8000 OVER=
+    IF $8  $D600 ;THEN
+    #16000 OVER=
+    IF $11 $4A00 ;THEN
+    #24000 OVER=
+    IF $1  $00A1 ;THEN
+    BAD_MHz
+;THEN
+53 OVER=            \ -- char flag     choice 5 = 460800 ?
+IF  ." 460800 Bds"
+    FREQ_KHZ @
+    #4000 OVRSWP<   \ MCLK < 4MHz ?    ==> abort
+    IF OVR_BAUDS ;THEN
+    #4000 OVER=
+    IF $8  $D600 ;THEN
+    #8000 OVER=
+    IF $11 $4A00 ;THEN
+    #16000 OVER=
+    IF $2  $BB21 ;THEN
+    #24000 OVER=
+    IF $6  $0001 ;THEN
+    BAD_MHz
+;THEN    
+54 OVER=            \ -- char flag     choice 6 = 230400 ?
+IF  ." 230400 Bds"
+    FREQ_KHZ @
+    #1000 OVRSWP<   \ MCLK < 1MHz ?    ==> abort
+    IF OVR_BAUDS ;THEN
+    #1000 OVER=
+    IF $4  $4900 ;THEN
+    #4000 OVER=
+    IF $11 $4A00 ;THEN
+    #8000 OVER=
+    IF $2  $BB21 ;THEN
+    #16000 OVER=
+    IF $4  $5551 ;THEN
+    #24000 OVER=
+    IF $3  $0241 ;THEN
+    BAD_MHz
+;THEN
+55 OVER=            \ -- char flag     choice 7 = 115200 ?
+IF  ." 115200 Bds"
+    FREQ_KHZ @
+    #1000 OVER=
+    IF $8  $D600 ;THEN
+    #4000 OVER=
+    IF $2  $BB21 ;THEN
+    #8000 OVER=
+    IF $4  $5551 ;THEN
+    #16000 OVER=
+    IF $8  $F7A1 ;THEN
+    #24000 OVER=
+    IF $0D $4901 ;THEN
+    BAD_MHz
+;THEN
+56 OVER=            \ -- char flag     choice 8 = 38400 Bds?
+IF  ." 38400 Bds"
+    FREQ_KHZ @
+    #1000 OVER=
+    IF $1  $00A1 ;THEN
+    #4000 OVER=
+    IF $6  $2081 ;THEN
+    #8000 OVER=
+    IF $0D $4901 ;THEN
+    #16000 OVER=
+    IF $1A $D601 ;THEN
+    #24000 OVER=
+    IF $27 $0011 ;THEN
+    BAD_MHz
+;THEN
+57 OVER=            \ -- char flag     choice 9 = 19200 Bds?
+IF  ." 19200 Bds"
+    FREQ_KHZ @
+    #1000 OVER=
+    IF $3  $0241 ;THEN
+    #4000 OVER=
+    IF $0D $4901 ;THEN
+    #8000 OVER=
+    IF $1A $D601 ;THEN
+    #16000 OVER=
+    IF $34 $4911 ;THEN
+    #24000 OVER=
+    IF $4E $0021 ;THEN
+    BAD_MHz
+;THEN
+65 OVER=            \ -- char flag     choice A = 9600 Bds?
+IF  ." 9600 Bds"
+    FREQ_KHZ @
+    #1000 OVER=
+    IF $6  $2081 ;THEN
+    #4000 OVER=
+    IF $1A $D601 ;THEN
+    #8000 OVER=
+    IF $34 $4911 ;THEN
+    #16000 OVER=
+    IF $68 $D621 ;THEN
+    #24000 OVER=
+    IF $9C $0041 ;THEN
+    BAD_MHz
+;THEN               \ -- char           other key
+    ." abort" CR ABORT
+;
+
+\ CREATE ABUF 10 ALLOT
+\ 
+\ : TERM_LINES    \ --
+\ ESC" [18t"      \           TERMINAL reports '[8;y;xt' with y lines, x columns
+\ ABUF 10         \ -- adr len 
+\ ACCEPT          \ -- len'
+\ drop            \ --
+\ ABUF 3 + 2           \ -- ABUF+3, len=2
+\ EVALUATE        \ --
+\ ;
+
+\ TERM_LINES ABUF !
+
+: CHNGBAUD              \ only for 1, 4, 8, 16, 24 MHz
+PWR_STATE               \ to remove this created word (garbage collector)
+ECHO
+42 0 DO CR LOOP         \ don't erase any line of source, create 42 empty lines
+\ TERM_LINES 0 DO CR LOOP \ don't erase any line of source, create y empty lines
+ESC" [H"                \ then cursor home
+CR
+FREQ_KHZ @ 0 1000 UM/ 
+." target MCLK = " . ." MHz" CR
+." choose your baudrate:" CR
+."  0 --> 6 MBds" CR
+."  1 --> 5 MBds" CR
+."  2 --> 4 MBds" CR      \ linux driver max speed
+."  3 --> 2457600 Bds" CR
+."  4 --> 921600 Bds" CR
+."  5 --> 460800 Bds" CR
+."  6 --> 230400 Bds" CR
+."  7 --> 115200 Bds" CR
+."  8 --> 38400 Bds" CR
+."  9 --> 19200 Bds" CR
+."  A --> 9600 Bds" CR
+." other --> abort" CR
+." your choice: "
+
+SELECT_BAUDS    \ -- char frequency TERM_BRW TERM_MCTLW
+
+TERMMCTLW_RST ! \ set UCAxMCTLW value in FRAM
+TERMBRW_RST !   \ set UCAxBRW value in FRAM
+DROP DROP       \ clear stack
+
+CR ESC" [7m"    \ escape sequence to set reverse video
+." Change baudrate in Teraterm, save its setup, then reset target."
+;
+
+CHNGBAUD
diff --git a/MSP430-FORTH/COMPARE.f b/MSP430-FORTH/COMPARE.f
new file mode 100644 (file)
index 0000000..c559ea6
--- /dev/null
@@ -0,0 +1,133 @@
+\ -*- coding: utf-8 -*-
+\
+\ Fast Forth For Texas Instrument MSP430FRxxxx FRAM devices
+\ Copyright (C) <2017>  <J.M. THOORENS>
+\
+\ This program is free software: you can redistribute it and/or modify
+\ it under the terms of the GNU General Public License as published by
+\ the Free Software Foundation, either version 3 of the License, or
+\ (at your option) any later version.
+\
+\ This program is distributed in the hope that it will be useful,
+\ but WITHOUT ANY WARRANTY; without even the implied warranty of
+\ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+\ GNU General Public License for more details.
+\
+\ You should have received a copy of the GNU General Public License
+\ along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] BEGIN [IF]
+\ https://forth-standard.org/standard/core/BEGIN
+\ BEGIN    -- BEGINadr             initialize backward branch
+CODE BEGIN              \ immediate
+MOV #HERE,PC            \ BR HERE
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] UNTIL [IF]
+\ https://forth-standard.org/standard/core/UNTIL
+\ UNTIL    BEGINadr --             resolve conditional backward branch
+CODE UNTIL              \ immediate
+    MOV #QFBRAN,X
+BW1 ADD #4,&DP          \ compile two words
+    MOV &DP,W           \ W = HERE
+    MOV X,-4(W)         \ compile Bran or QFBRAN at HERE
+    MOV TOS,-2(W)       \ compile bakcward adr at HERE+2
+    MOV @PSP+,TOS
+    MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+\ COMPARE ( c-addr1 u1 c-addr2 u2 -- n )
+\ https://forth-standard.org/standard/string/COMPARE
+\ Compare the string specified by c-addr1 u1 to the string specified by c-addr2 u2. 
+\ The strings are compared, beginning at the given addresses, character by character, 
+\ up to the length of the shorter string or until a difference is found. 
+\ If the two strings are identical, n is zero. 
+\ If the two strings are identical up to the length of the shorter string, 
+\    n is minus-one (-1) if u1 is less than u2 and one (1) otherwise. 
+\ If the two strings are not identical up to the length of the shorter string, 
+\    n is minus-one (-1) if the first non-matching character in the string specified by c-addr1 u1 
+\    has a lesser numeric value than the corresponding character in the string specified by c-addr2 u2 and one (1) otherwise.
+CODE COMPARE
+        MOV TOS,S       \ 1 u2 = S
+        MOV @PSP+,Y     \ 2 addr2 = Y
+        MOV @PSP+,T     \ 2 u1 = T     
+        MOV @PSP+,X     \ 2 addr1 = X
+BEGIN   MOV T,TOS       \ 1
+        ADD S,TOS       \ 1
+        0= ?GOTO FW3    \ 2 end of all successfull comparisons 
+        SUB #1,S        \ 1
+        0< ?GOTO FW2    \ 2 u2<u1 ==> u1>u2
+        SUB #1,T        \ 1
+        0< ?GOTO FW1    \ 2 u1<u2
+        ADD #1,X        \ 1
+        CMP.B @Y+,-1(X) \ 4 char1-char2
+0<> UNTIL               \ 2 if char1=char2 loopback
+    U< IF               \   char1<char2
+FW1     MOV #-1,TOS     \ 1
+        MOV @IP+,PC     \ 4
+    THEN                \ 2 char1>char2
+FW2     MOV #1,TOS      \ 1
+FW3     MOV @IP+,PC     \ 4     20 words
+ENDCODE
+    \
+
+\ [DEFINED] COMPARE [IF]
+\ \ ------------------------------------------------------------------------
+\ TESTING COMPARE
+\ : CMOVE MOVE ;
+\ : s1 S" abcdefghijklmnopqrstuvwxyz" ;
+\ : s6 S" 123456" ;
+\ 
+\ T{ s1        s1 COMPARE ->  0  }T 
+\ T{ s1  PAD SWAP CMOVE   ->     }T    \ Copy s1 to PAD 
+\ T{ s1  PAD OVER COMPARE ->  0  }T 
+\ T{ s1     PAD 6 COMPARE ->  1  }T 
+\ T{ PAD 10    s1 COMPARE -> -1  }T 
+\ T{ s1     PAD 0 COMPARE ->  1  }T 
+\ T{ PAD  0    s1 COMPARE -> -1  }T 
+\ T{ s1        s6 COMPARE ->  1  }T 
+\ T{ s6        s1 COMPARE -> -1  }T
+\ : "abdde" S" abdde" ; 
+\ : "abbde" S" abbde" ; 
+\ : "abcdf" S" abcdf" ; 
+\ : "abcdee" S" abcdee" ;
+\ 
+\ T{ s1 "abdde"  COMPARE -> -1 }T 
+\ T{ s1 "abbde"  COMPARE ->  1 }T 
+\ T{ s1 "abcdf"  COMPARE -> -1 }T 
+\ T{ s1 "abcdee" COMPARE ->  1 }T
+\ 
+\ : s11 S" 0abc" ; 
+\ : s12 S" 0aBc" ;
+\ 
+\ T{ s11 s12 COMPARE ->  1 }T 
+\ T{ s12 s11 COMPARE -> -1 }T
+\ 
+\ [THEN]      \ COMPARE
+
index afc6661..5eb3221 100644 (file)
@@ -5,12 +5,17 @@
 ; ----------
 \ see CORDICforDummies.pdf
 \
+; -----------------------------------------------------------
+; requires FIXPOINT_INPUT kernel addon, see forthMSP430FR.asm
+; -----------------------------------------------------------
+\
 \ to see kernel options, download FastForthSpecs.f
-\ FastForth kernel options: ASSEMBLER, CONDCOMP, FIXPOINT_INPUT.
+\ FastForth kernel options: MSP430ASSEMBLER, CONDCOMP, FIXPOINT_INPUT
+\
 \
-\ TARGET Current Selection (used by preprocessor GEMA to load the pattern: \config\gema\TARGET.pat)
+\ LP_MSP430FR2476
 \ MSP_EXP430FR5739  MSP_EXP430FR5969    MSP_EXP430FR5994    MSP_EXP430FR6989
-\ MSP_EXP430FR2433  MSP_EXP430FR2355    CHIPSTICK_FR2433
+\ MSP_EXP430FR2433    MSP_EXP430FR2355    CHIPSTICK_FR2433
 \
 \ REGISTERS USAGE
 \ rDODOES to rEXIT must be saved before use and restored after
@@ -33,21 +38,191 @@ PWR_STATE
 
 [UNDEFINED] {CORDIC} [IF] 
 
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
+
 MARKER {CORDIC}
 
+[UNDEFINED] SWAP [IF]
+\ https://forth-standard.org/standard/core/SWAP
+\ SWAP     x1 x2 -- x2 x1    swap top two items
+CODE SWAP
+MOV @PSP,W      \ 2
+MOV TOS,0(PSP)  \ 3
+MOV W,TOS       \ 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE     \ immediate
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] BEGIN [IF]
+\ https://forth-standard.org/standard/core/BEGIN
+\ BEGIN    -- BEGINadr             initialize backward branch
+CODE BEGIN              \ immediate
+MOV #HERE,PC            \ BR HERE
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] UNTIL [IF]
+\ https://forth-standard.org/standard/core/UNTIL
+\ UNTIL    BEGINadr --             resolve conditional backward branch
+CODE UNTIL              \ immediate
+    MOV #QFBRAN,X
+BW1 ADD #4,&DP          \ compile two words
+    MOV &DP,W           \ W = HERE
+    MOV X,-4(W)         \ compile Bran or QFBRAN at HERE
+    MOV TOS,-2(W)       \ compile bakcward adr at HERE+2
+    MOV @PSP+,TOS
+    MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] AGAIN [IF]
+\ https://forth-standard.org/standard/core/AGAIN
+\ AGAIN    BEGINadr --             resolve uncondionnal backward branch
+CODE AGAIN     \ immediate
+MOV #BRAN,X
+GOTO BW1
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] WHILE [IF]
+\ https://forth-standard.org/standard/core/WHILE
+\ WHILE    BEGINadr -- WHILEadr BEGINadr
+: WHILE     \ immediate
+POSTPONE IF SWAP
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] REPEAT [IF]
+\ https://forth-standard.org/standard/core/REPEAT
+\ REPEAT   WHILEadr BEGINadr --     resolve WHILE loop
+: REPEAT
+POSTPONE AGAIN POSTPONE THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] DO [IF]
+\ https://forth-standard.org/standard/core/DO
+\ DO       -- DOadr   L: -- 0
+CODE DO                 \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+ADD #2,&DP              \   make room to compile xdo
+MOV &DP,TOS             \ -- HERE+2
+MOV #XDO,-2(TOS)        \   compile xdo
+ADD #2,&LEAVEPTR        \ -- HERE+2     LEAVEPTR+2
+MOV &LEAVEPTR,W         \
+MOV #0,0(W)             \ -- HERE+2     L-- 0
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] LOOP [IF]
+\ https://forth-standard.org/standard/core/LOOP
+\ LOOP    DOadr --         L-- an an-1 .. a1 0
+CODE LOOP               \ immediate
+    MOV #XLOOP,X
+    ADD #4,&DP          \ make room to compile two words
+    MOV &DP,W
+    MOV X,-4(W)         \ xloop --> HERE
+    MOV TOS,-2(W)       \ DOadr --> HERE+2
+BEGIN                   \ resolve all "leave" adr
+    MOV &LEAVEPTR,TOS   \ -- Adr of top LeaveStack cell
+    SUB #2,&LEAVEPTR    \ --
+    MOV @TOS,TOS        \ -- first LeaveStack value
+    CMP #0,TOS          \ -- = value left by DO ?
+0<> WHILE
+    MOV W,0(TOS)        \ move adr after loop as UNLOOP adr
+REPEAT
+    MOV @PSP+,TOS
+    MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+
 [UNDEFINED] {FIXPOINT} [IF] \ define words to display angle as Q15.16 number.
 
-[UNDEFINED] DABS [IF] \
+[UNDEFINED] DABS [IF]
 \ https://forth-standard.org/standard/double/DABS
 \ DABS     d1 -- |d1|     absolute value
 CODE DABS
-MOV #1-,X
-ADD #4,X
-MOV X,PC
+AND #-1,TOS         \ clear V, set N
+S< IF               \ if positive (N=0)
+    XOR #-1,0(PSP)  \ 4
+    XOR #-1,TOS     \ 1
+    ADD #1,0(PSP)   \ 4
+    ADDC #0,TOS     \ 1
+THEN
+MOV @IP+,PC
 ENDCODE
 [THEN]
 
-
 \ https://forth-standard.org/standard/core/HOLDS
 \ Adds the string represented by addr u to the pictured numeric output string
 \ compilation use: <# S" string" HOLDS #>
@@ -91,6 +266,14 @@ BEGIN       MOV @PSP,&MPY           \                   Load 1st operand
             GOTO BW1                \ JMP HOLDS
 ENDCODE
 
+[UNDEFINED] R> [IF]
+\ https://forth-standard.org/standard/core/Rfrom
+\ R>    -- x    R: x --   pop from return stack ; CALL #RFROM performs DOVAR
+CODE R>
+MOV rDOVAR,PC
+ENDCODE
+[THEN]
+
 CODE F.             \ display a Q15.16 number with 4/5/16 digits after comma
 MOV TOS,S           \ S = sign
 MOV #4,T            \ T = 4     preset 4 digits for base 16 and by default
@@ -360,6 +543,10 @@ LOOP
 
 ECHO
 
+; -----------------------------------------------------------
+; requires FIXPOINT_INPUT kernel addon, see forthMSP430FR.asm
+; -----------------------------------------------------------
+
 \
 10000 89,0 POL2REC . .  ; sin, cos --> 
 10000 75,0 POL2REC . .  ; sin, cos --> 
similarity index 53%
rename from MSP430-FORTH/ANS_COMP.f
rename to MSP430-FORTH/CORECOMP.f
index 0440bc4..aa0aed8 100644 (file)
@@ -1,14 +1,14 @@
 \ -*- coding: utf-8 -*-
 
 ; -----------------------------------------------------
-; ANS_COMP.f    words complement to pass CORETEST.4TH
+; CORECOMP.f    words complement to pass CORETEST.4TH
 ; -----------------------------------------------------
 \
-\ to see kernel options, download FastForthSpecs.f
 \ FastForth kernel options: MSP430ASSEMBLER, CONDCOMP
+\ to see FastForth kernel options, download FF_SPECS.f
 \
 \ TARGET Current Selection 
-\ (used by preprocessor GEMA to load the pattern: \config\gema\TARGET.pat)
+\ (used by preprocessor GEMA to load the pattern: \inc\TARGET.pat)
 \ MSP_EXP430FR5739  MSP_EXP430FR5969    MSP_EXP430FR5994    MSP_EXP430FR6989
 \ MSP_EXP430FR2433  MSP_EXP430FR4133    MSP_EXP430FR2355    CHIPSTICK_FR2433
 \
 \ ASSEMBLER conditionnal usage with IF UNTIL WHILE  S<  S>=  U<   U>=  0=  0<>  0>=
 \ ASSEMBLER conditionnal usage with ?GOTO           S<  S>=  U<   U>=  0=  0<>  0<
 
-[UNDEFINED] {ANS_COMP} [IF]
-
 PWR_STATE
 
-MARKER {ANS_COMP}
+[DEFINED] {CORE_COMP} [IF]  {CORE_COMP} [THEN] \ remove it if defined out of kernel 
 
-\ https://forth-standard.org/standard/core/VALUE
-\ ( x "<spaces>name" -- )                      define a Forth VALUE
-\ Skip leading space delimiters. Parse name delimited by a space.
-\ Create a definition for name with the execution semantics defined below,
-\ with an initial value equal to x.
-\ 
-\ name Execution: ( -- x )
-\ Place x on the stack. The value of x is that given when name was created,
-\ until the phrase x TO name is executed, causing a new value of x to be assigned to name.
+[UNDEFINED] {CORE_COMP} [IF] \
+
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
 \ 
-\ TO name Run-time: ( x -- )
-\ Assign the value x to name.
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
 
-[UNDEFINED] VARIABLE [IF]
-\ https://forth-standard.org/standard/core/VARIABLE
-\ VARIABLE <name>       --                      define a Forth VARIABLE
+MARKER {CORE_COMP}
 
-: VARIABLE 
-DEFER
-HI2LO
-MOV @RSP+,IP
-MOV #DOVAR,-4(W)        \   CFA = DOVAR
+[UNDEFINED] + [IF]
+\ https://forth-standard.org/standard/core/Plus
+\ +       n1/u1 n2/u2 -- n3/u3     add n1+n2
+CODE +
+ADD @PSP+,TOS
 MOV @IP+,PC
 ENDCODE
-
 [THEN]
 
-[UNDEFINED] CONSTANT [IF]
-\ https://forth-standard.org/standard/core/CONSTANT
-\ CONSTANT <name>     n --                      define a Forth CONSTANT 
-: CONSTANT 
-DEFER
-HI2LO
-MOV @RSP+,IP
-MOV #DOCON,-4(W)        \   CFA = DOCON
-MOV TOS,-2(W)           \   PFA = n
-MOV @PSP+,TOS
+[UNDEFINED] - [IF]
+\ https://forth-standard.org/standard/core/Minus
+\ -      n1/u1 n2/u2 -- n3/u3     n3 = n1-n2
+CODE -
+SUB @PSP+,TOS   \ 2  -- n2-n1 ( = -n3)
+XOR #-1,TOS     \ 1
+ADD #1,TOS      \ 1  -- n3 = -(n2-n1) = n1-n2
 MOV @IP+,PC
 ENDCODE
 [THEN]
 
-\ https://forth-standard.org/standard/core/STATE
-\ STATE   -- a-addr       holds compiler state
-STATEADR CONSTANT STATE
-
-[UNDEFINED] BASE [IF]
-\ https://forth-standard.org/standard/core/BASE
-\ BASE    -- a-addr       holds conversion radix
-BASEADR CONSTANT BASE
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
 [THEN]
 
-[UNDEFINED] >IN [IF]
-\ https://forth-standard.org/standard/core/toIN
-\ C >IN     -- a-addr       holds offset in input stream
-TOIN CONSTANT >IN
+[UNDEFINED] ! [IF]
+\ https://forth-standard.org/standard/core/Store
+\ !        x a-addr --   store cell in memory
+CODE !
+MOV @PSP+,0(TOS)    \ 4
+MOV @PSP+,TOS       \ 2
+MOV @IP+,PC         \ 4
+ENDCODE
 [THEN]
 
-[UNDEFINED] PAD [IF]
-\ https://forth-standard.org/standard/core/PAD
-\  PAD           --  addr
-PAD_ORG CONSTANT PAD
-[THEN]
+[UNDEFINED] DUP [IF]
+\ https://forth-standard.org/standard/core/DUP
+\ DUP      x -- x x      duplicate top of stack
+CODE DUP
+BW1 SUB #2,PSP      \ 2  push old TOS..
+    MOV TOS,0(PSP)  \ 3  ..onto stack
+    MOV @IP+,PC     \ 4
+ENDCODE
 
-[UNDEFINED] BL [IF]
-\ https://forth-standard.org/standard/core/BL
-\ BL      -- char            an ASCII space
-#32 CONSTANT BL
+\ 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]
 
-[UNDEFINED] SPACE [IF]
-\ https://forth-standard.org/standard/core/SPACE
-\ SPACE   --               output a space
-: SPACE
-BL EMIT ;
+[UNDEFINED] EXIT [IF]
+\ https://forth-standard.org/standard/core/EXIT
+\ EXIT     --      exit a colon definition
+CODE EXIT
+MOV @RSP+,IP    \ 2 pop previous IP (or next PC) from return stack
+MOV @IP+,PC     \ 4 = NEXT
+                \ 6 (ITC-2)
+ENDCODE
 [THEN]
 
-[UNDEFINED] SPACES [IF]
-\ https://forth-standard.org/standard/core/SPACES
-\ SPACES   n --            output n spaces
-CODE SPACES
-CMP #0,TOS
-0<> IF
-    PUSH IP
-    BEGIN
-        LO2HI
-        BL EMIT
-        HI2LO
-        SUB #2,IP 
-        SUB #1,TOS
-    0= UNTIL
-    MOV @RSP+,IP
-THEN
-MOV @PSP+,TOS           \ --         drop n
-NEXT              
+[UNDEFINED] DEPTH [IF]
+\ https://forth-standard.org/standard/core/DEPTH
+\ DEPTH    -- +n        number of items on stack, must leave 0 if stack empty
+CODE DEPTH
+MOV TOS,-2(PSP)
+MOV #PSTACK,TOS
+SUB PSP,TOS     \ PSP-S0--> TOS
+RRA TOS         \ TOS/2   --> TOS
+SUB #2,PSP      \ post decrement stack...
+MOV @IP+,PC
 ENDCODE
 [THEN]
 
+[UNDEFINED] SWAP [IF]
+\ https://forth-standard.org/standard/core/SWAP
+\ SWAP     x1 x2 -- x2 x1    swap top two items
+CODE SWAP
+MOV @PSP,W      \ 2
+MOV TOS,0(PSP)  \ 3
+MOV W,TOS       \ 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
 
-\ \ https://forth-standard.org/standard/core/VALUE
-\ : VALUE                 \ x "<spaces>name" -- 
-\ CREATE ,
-\ DOES> 
-\ HI2LO
-\ MOV @RSP+,IP
-\ BIT #UF10,SR    \ see TO
-\ 0= IF
-\     MOV #@,PC
-\ THEN 
-\ BIC #UF10,SR
-\ MOV #!,PC
-\ ENDCODE
-
-\ \ https://forth-standard.org/standard/core/TO
-\ \ TO name Run-time: ( x -- )
-\ \ Assign the value x to named VALUE.
-\ CODE TO
-\ BIS #UF10,SR
-\ MOV @IP+,PC
-\ ENDCODE
-
-\ https://forth-standard.org/standard/core/StoD
-\ S>D    n -- d          single -> double prec.
-: S>D
-    DUP 0<
-;
+[UNDEFINED] DROP [IF]
+\ https://forth-standard.org/standard/core/DROP
+\ DROP     x --          drop top of stack
+CODE DROP
+MOV @PSP+,TOS   \ 2
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
 
 [UNDEFINED] NIP [IF]
 \ https://forth-standard.org/standard/core/NIP
@@ -169,6 +176,46 @@ MOV @IP+,PC
 ENDCODE
 [THEN]
 
+[UNDEFINED] >R [IF]
+\ https://forth-standard.org/standard/core/toR
+\ >R    x --   R: -- x   push to return stack
+CODE >R
+PUSH TOS
+MOV @PSP+,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] R> [IF]
+\ https://forth-standard.org/standard/core/Rfrom
+\ R>    -- x    R: x --   pop from return stack ; CALL #RFROM performs DOVAR
+CODE R>
+SUB #2,PSP      \ 1
+MOV TOS,0(PSP)  \ 3
+MOV @RSP+,TOS   \ 2
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] ! [IF]
+\ https://forth-standard.org/standard/core/Store
+\ !        x a-addr --   store cell in memory
+CODE !
+MOV @PSP+,0(TOS)    \ 4
+MOV @PSP+,TOS       \ 2
+MOV @IP+,PC         \ 4
+ENDCODE
+[THEN]
+
 [UNDEFINED] C@ [IF]
 \ https://forth-standard.org/standard/core/CFetch
 \ C@     c-addr -- char   fetch char from memory
@@ -201,6 +248,269 @@ MOV @IP+,PC
 ENDCODE
 [THEN]
 
+[UNDEFINED] 0= [IF]
+\ https://forth-standard.org/standard/core/ZeroEqual
+\ 0=     n/u -- flag    return true if TOS=0
+CODE 0=
+SUB #1,TOS      \ borrow (clear cy) if TOS was 0
+SUBC TOS,TOS    \ TOS=-1 if borrow was set
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] 0< [IF]
+\ https://forth-standard.org/standard/core/Zeroless
+\ 0<     n -- flag      true if TOS negative
+CODE 0<
+ADD TOS,TOS     \ 1 set carry if TOS negative
+SUBC TOS,TOS    \ 1 TOS=-1 if carry was clear
+XOR #-1,TOS     \ 1 TOS=-1 if carry was set
+MOV @IP+,PC     \ 
+ENDCODE
+[THEN]
+
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+    MOV @IP+,PC \ 4
+THEN
+XOR #-1,TOS     \ 1 flag Z = 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+\ https://forth-standard.org/standard/core/Uless
+\ U<    u1 u2 -- flag       test u1<u2, unsigned
+[UNDEFINED] U< [IF]
+CODE U<
+SUB @PSP+,TOS   \ 2 u2-u1
+0<> IF
+    MOV #-1,TOS     \ 1
+    U< IF           \ 2 flag 
+        AND #0,TOS  \ 1 flag Z = 1
+    THEN
+THEN
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] < [IF]
+\ https://forth-standard.org/standard/core/less
+\ <      n1 n2 -- flag        test n1<n2, signed
+CODE <
+        SUB @PSP+,TOS   \ 1 TOS=n2-n1
+        S< ?GOTO FW1    \ 2 signed
+        0<> IF          \ 2
+BW1         MOV #-1,TOS \ 1 flag Z = 0
+        THEN
+        MOV @IP+,PC
+ENDCODE
+
+\ https://forth-standard.org/standard/core/more
+\ >     n1 n2 -- flag         test n1>n2, signed
+CODE >
+        SUB @PSP+,TOS   \ 2 TOS=n2-n1
+        S< ?GOTO BW1    \ 2 --> +5
+FW1     AND #0,TOS      \ 1 flag Z = 1
+        MOV @IP+,PC
+ENDCODE
+[THEN]
+
+\ ------------------------------------------------------------------------------
+\ CONTROL STRUCTURES
+\ ------------------------------------------------------------------------------
+\ THEN and BEGIN compile nothing
+\ DO compile one word
+\ IF, ELSE, AGAIN, UNTIL, WHILE, REPEAT, LOOP & +LOOP compile two words
+\ LEAVE compile three words
+\
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE     \ immediate
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] BEGIN [IF]
+\ https://forth-standard.org/standard/core/BEGIN
+\ BEGIN    -- BEGINadr             initialize backward branch
+CODE BEGIN              \ immediate
+MOV #HERE,PC            \ BR HERE
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] UNTIL [IF]
+\ https://forth-standard.org/standard/core/UNTIL
+\ UNTIL    BEGINadr --             resolve conditional backward branch
+CODE UNTIL              \ immediate
+    MOV #QFBRAN,X
+BW1 ADD #4,&DP          \ compile two words
+    MOV &DP,W           \ W = HERE
+    MOV X,-4(W)         \ compile Bran or QFBRAN at HERE
+    MOV TOS,-2(W)       \ compile bakcward adr at HERE+2
+    MOV @PSP+,TOS
+    MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] AGAIN [IF]
+\ https://forth-standard.org/standard/core/AGAIN
+\ AGAIN    BEGINadr --             resolve uncondionnal backward branch
+CODE AGAIN     \ immediate
+MOV #BRAN,X
+GOTO BW1
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] WHILE [IF]
+\ https://forth-standard.org/standard/core/WHILE
+\ WHILE    BEGINadr -- WHILEadr BEGINadr
+: WHILE     \ immediate
+POSTPONE IF SWAP
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] REPEAT [IF]
+\ https://forth-standard.org/standard/core/REPEAT
+\ REPEAT   WHILEadr BEGINadr --     resolve WHILE loop
+: REPEAT
+POSTPONE AGAIN POSTPONE THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] DO [IF]
+\ https://forth-standard.org/standard/core/DO
+\ DO       -- DOadr   L: -- 0
+CODE DO                 \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+ADD #2,&DP              \   make room to compile xdo
+MOV &DP,TOS             \ -- HERE+2
+MOV #XDO,-2(TOS)        \   compile xdo
+ADD #2,&LEAVEPTR        \ -- HERE+2     LEAVEPTR+2
+MOV &LEAVEPTR,W         \
+MOV #0,0(W)             \ -- HERE+2     L-- 0
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] LOOP [IF]
+\ https://forth-standard.org/standard/core/LOOP
+\ LOOP    DOadr --         L-- an an-1 .. a1 0
+CODE LOOP               \ immediate
+    MOV #XLOOP,X
+BW1 ADD #4,&DP          \ make room to compile two words
+    MOV &DP,W
+    MOV X,-4(W)         \ xloop --> HERE
+    MOV TOS,-2(W)       \ DOadr --> HERE+2
+BEGIN                   \ resolve all "leave" adr
+    MOV &LEAVEPTR,TOS   \ -- Adr of top LeaveStack cell
+    SUB #2,&LEAVEPTR    \ --
+    MOV @TOS,TOS        \ -- first LeaveStack value
+    CMP #0,TOS          \ -- = value left by DO ?
+0<> WHILE
+    MOV W,0(TOS)        \ move adr after loop as UNLOOP adr
+REPEAT
+    MOV @PSP+,TOS
+    MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] +LOOP [IF]
+\ https://forth-standard.org/standard/core/PlusLOOP
+\ +LOOP   adrs --   L-- an an-1 .. a1 0
+CODE +LOOP              \ immediate
+MOV #XPLOOP,X
+GOTO BW1
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] I [IF]
+\ https://forth-standard.org/standard/core/I
+\ I        -- n   R: sys1 sys2 -- sys1 sys2
+\                  get the innermost loop index
+CODE I
+SUB #2,PSP              \ 1 make room in TOS
+MOV TOS,0(PSP)          \ 3
+MOV @RSP,TOS            \ 2 index = loopctr - fudge
+SUB 2(RSP),TOS          \ 3
+MOV @IP+,PC             \ 4 13~
+ENDCODE
+[THEN]
+
+[UNDEFINED] J [IF]
+\ https://forth-standard.org/standard/core/J
+\ J        -- n   R: 4*sys -- 4*sys
+\ C                  get the second loop index
+CODE J
+SUB #2,PSP      
+MOV TOS,0(PSP)
+MOV 4(RSP),TOS
+SUB 6(RSP),TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] UNLOOP [IF]
+\ https://forth-standard.org/standard/core/UNLOOP
+\ UNLOOP   --   R: sys1 sys2 --  drop loop parms
+CODE UNLOOP
+ADD #4,RSP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] LEAVE [IF]
+\ https://forth-standard.org/standard/core/LEAVE
+\ LEAVE    --    L: -- adrs
+CODE LEAVE
+MOV &DP,W               \ compile three words
+MOV #UNLOOP,0(W)        \ [HERE] = UNLOOP
+MOV #BRAN,2(W)          \ [HERE+2] = BRAN
+ADD #6,&DP              \ [HERE+4] = After LOOP adr
+ADD #2,&LEAVEPTR
+ADD #4,W
+MOV &LEAVEPTR,X
+MOV W,0(X)              \ leave HERE+4 on LEAVEPTR stack
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
 [UNDEFINED] AND [IF]
 \ https://forth-standard.org/standard/core/AND
 \ C AND    x1 x2 -- x3           logical AND
@@ -228,42 +538,62 @@ MOV @IP+,PC
 ENDCODE
 [THEN]
 
+[UNDEFINED] S>D [IF]
+\ https://forth-standard.org/standard/core/StoD
+\ S>D    n -- d          single -> double prec.
+: S>D
+    DUP 0<
+;
+[THEN]
+
 [UNDEFINED] + [IF]
 \ https://forth-standard.org/standard/core/Plus
-\ +       n1/u1 n2/u2 -- n3/u3     add n1+n2
+\ +       n1/u1 n2/u2 -- n3/u3
 CODE +
 ADD @PSP+,TOS
 MOV @IP+,PC
 ENDCODE
 [THEN]
 
-\ https://forth-standard.org/standard/core/INVERT
-\ INVERT   x1 -- x2            bitwise inversion
-CODE INVERT
-XOR #-1,TOS
+[UNDEFINED] - [IF]
+\ https://forth-standard.org/standard/core/Minus
+\ -      n1/u1 n2/u2 -- n3/u3     n3 = n1-n2
+CODE -
+SUB @PSP+,TOS   \ 2  -- n2-n1 ( = -n3)
+XOR #-1,TOS     \ 1
+ADD #1,TOS      \ 1  -- n3 = -(n2-n1) = n1-n2
 MOV @IP+,PC
 ENDCODE
+[THEN]
 
-\ https://forth-standard.org/standard/core/less
-\ <      n1 n2 -- flag        test n1<n2, signed
-CODE <
-        SUB @PSP+,TOS   \ 1 TOS=n2-n1
-        S< ?GOTO FW1    \ 2 signed
-    0<> IF              \ 2
-BW1     MOV #-1,TOS     \ 1 flag Z = 0
-    THEN
-        MOV @IP+,PC
+[UNDEFINED] 1+ [IF]
+\ https://forth-standard.org/standard/core/OnePlus
+\ 1+      n1/u1 -- n2/u2       add 1 to TOS
+CODE 1+
+ADD #1,TOS
+MOV @IP+,PC
 ENDCODE
+[THEN]
 
-\ https://forth-standard.org/standard/core/more
-\ >     n1 n2 -- flag         test n1>n2, signed
-CODE >
-        SUB @PSP+,TOS   \ 2 TOS=n2-n1
-        S< ?GOTO BW1    \ 2 --> +5
-FW1     AND #0,TOS      \ 1 flag Z = 1
-        MOV @IP+,PC
+[UNDEFINED] 1- [IF]
+\ https://forth-standard.org/standard/core/OneMinus
+\ 1-      n1/u1 -- n2/u2     subtract 1 from TOS
+CODE 1-
+SUB #1,TOS
+MOV @IP+,PC
 ENDCODE
+[THEN]
 
+[UNDEFINED] INVERT [IF]
+\ https://forth-standard.org/standard/core/INVERT
+\ INVERT   x1 -- x2            bitwise inversion
+CODE INVERT
+XOR #-1,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] LSHIFT [IF]
 \ https://forth-standard.org/standard/core/LSHIFT
 \ LSHIFT  x1 u -- x2    logical L shift u places
 CODE LSHIFT
@@ -276,7 +606,9 @@ CODE LSHIFT
 THEN        MOV W,TOS
             MOV @IP+,PC
 ENDCODE
+[THEN]
 
+[UNDEFINED] RSHIFT [IF]
 \ https://forth-standard.org/standard/core/RSHIFT
 \ RSHIFT  x1 u -- x2    logical R7 shift u places
 CODE RSHIFT
@@ -290,6 +622,7 @@ CODE RSHIFT
 THEN        MOV W,TOS
             MOV @IP+,PC
 ENDCODE
+[THEN]
 
 [UNDEFINED] MAX [IF]
 \ https://forth-standard.org/standard/core/MAX
@@ -311,26 +644,34 @@ FW1 MOV @PSP+,TOS
 ENDCODE
 [THEN]
 
+[THEN]
+
+[UNDEFINED] 2* [IF]
 \ https://forth-standard.org/standard/core/TwoTimes
 \ 2*      x1 -- x2         arithmetic left shift
 CODE 2*
 ADD TOS,TOS
 MOV @IP+,PC
 ENDCODE
+[THEN]
 
+[UNDEFINED] 2/ [IF]
 \ https://forth-standard.org/standard/core/TwoDiv
 \ 2/      x1 -- x2        arithmetic right shift
 CODE 2/
 RRA TOS
 MOV @IP+,PC
 ENDCODE
+[THEN]
 
 \ --------------------
 \ ARITHMETIC OPERATORS
 \ --------------------
+[UNDEFINED] M* [IF]
+
 TLV_ORG 4 + @ $81F3 U<
 $81EF TLV_ORG 4 + @ U< 
-= [IF]   ; MSP430FR413x subfamily without hardware_MPY
+= [IF]   ; MSP430FR2xxx|MSP430FR4xxx subfamilies without hardware_MPY
 
 \ https://forth-standard.org/standard/core/MTimes
 \ M*     n1 n2 -- dlo dhi  signed 16*16->32 multiply
@@ -383,15 +724,18 @@ ENDCODE
 
 [THEN]
 
+[THEN]
+
+[UNDEFINED] UM/MOD [IF]
 \ https://forth-standard.org/standard/core/UMDivMOD
 \ UM/MOD   udlo|udhi u1 -- r q   unsigned 32/16->r16 q16
 CODE UM/MOD
     PUSH #DROP      \
-    MOV #<#,X       \ X = addr of <#
-    ADD #8,X        \ X = addr of MUSMOD
-    MOV X,PC        \ execute MUSMOD then RET to DROP
+    MOV #MUSMOD,PC  \ execute MUSMOD then return to DROP
 ENDCODE
+[THEN]
 
+[UNDEFINED] SM/REM [IF]
 \ https://forth-standard.org/standard/core/SMDivREM
 \ SM/REM   DVDlo DVDhi DIVlo -- r3 q4  symmetric signed div
 CODE SM/REM
@@ -422,28 +766,36 @@ THEN
 XOR S,T             \           S=divisor T=quot_sign
 CMP #0,T            \ -- n3 u4  T=quot_sign
 S< IF
-BW1
-BW2
     XOR #-1,TOS
     ADD #1,TOS
 THEN                \ -- n3 n4  S=divisor
 MOV @IP+,PC
 ENDCODE
+[THEN]
 
+[UNDEFINED] NEGATE [IF]
 \ https://forth-standard.org/standard/core/NEGATE
 \ C NEGATE   x1 -- x2            two's complement
 CODE NEGATE
-GOTO BW1 
+XOR #-1,TOS
+ADD #1,TOS
+MOV @IP+,PC
 ENDCODE
+[THEN]
 
+[UNDEFINED] ABS [IF]
 \ https://forth-standard.org/standard/core/ABS
 \ C ABS     n1 -- +n2     absolute value
 CODE ABS
 CMP #0,TOS       \  1
-0< ?GOTO BW2
-MOV @IP+,PC
+0>= IF
+    MOV @IP+,PC
+THEN
+MOV #NEGATE,PC
 ENDCODE
+[THEN]
 
+[UNDEFINED] FM/MOD [IF]
 \ https://forth-standard.org/standard/core/FMDivMOD
 \ FM/MOD   d1 n1 -- r q   floored signed div'n
 : FM/MOD
@@ -460,37 +812,49 @@ THEN
 MOV @RSP+,IP
 MOV @IP+,PC
 ENDCODE
+[THEN]
 
+[UNDEFINED] * [IF]
 \ https://forth-standard.org/standard/core/Times
 \ *      n1 n2 -- n3       signed multiply
 : *
 M* DROP
 ;
+[THEN]
 
+[UNDEFINED] /MOD [IF]
 \ https://forth-standard.org/standard/core/DivMOD
 \ /MOD   n1 n2 -- r3 q4     signed division
 : /MOD
 >R DUP 0< R> FM/MOD
 ;
+[THEN]
 
+[UNDEFINED] / [IF]
 \ https://forth-standard.org/standard/core/Div
 \ /      n1 n2 -- n3       signed quotient
 : /
 >R DUP 0< R> FM/MOD NIP
 ;
+[THEN]
 
+[UNDEFINED] MOD [IF]
 \ https://forth-standard.org/standard/core/MOD
 \ MOD    n1 n2 -- n3       signed remainder
 : MOD
 >R DUP 0< R> FM/MOD DROP
 ;
+[THEN]
 
+[UNDEFINED] */MOD [IF]
 \ https://forth-standard.org/standard/core/TimesDivMOD
 \ */MOD  n1 n2 n3 -- r4 q5    signed mult/div
 : */MOD
 >R M* R> FM/MOD
 ;
+[THEN]
 
+[UNDEFINED] */ [IF]
 \ https://forth-standard.org/standard/core/TimesDiv
 \ */     n1 n2 n3 -- n4        n1*n2/q3
 : */
@@ -500,7 +864,6 @@ M* DROP
 \ -------------------------------------------------------------------------------
 \  STACK OPERATIONS
 \ -------------------------------------------------------------------------------
-
 [UNDEFINED] OVER [IF]
 \ https://forth-standard.org/standard/core/OVER
 \ OVER    x1 x2 -- x1 x2 x1
@@ -512,6 +875,7 @@ MOV @IP+,PC
 ENDCODE
 [THEN]
 
+[UNDEFINED] ROT [IF]
 \ https://forth-standard.org/standard/core/ROT
 \ ROT    x1 x2 x3 -- x2 x3 x1
 CODE ROT
@@ -521,7 +885,10 @@ MOV 2(PSP),TOS      \ 3 fetch x1
 MOV W,2(PSP)        \ 3 store x2
 MOV @IP+,PC
 ENDCODE
+[THEN]
+[THEN]
 
+[UNDEFINED] R@ [IF]
 \ https://forth-standard.org/standard/core/RFetch
 \ R@    -- x     R: x -- x   fetch from return stack
 CODE R@
@@ -530,13 +897,12 @@ MOV TOS,0(PSP)
 MOV @RSP,TOS
 MOV @IP+,PC
 ENDCODE
+[THEN]
 
 \ ----------------------------------------------------------------------
 \ DOUBLE OPERATORS
 \ ----------------------------------------------------------------------
-
-[UNDEFINED] {DOUBLE} [IF]
-
+[UNDEFINED] 2@ [IF]
 \ https://forth-standard.org/standard/core/TwoFetch
 \ 2@    a-addr -- x1 x2    fetch 2 cells ; the lower address will appear on top of stack
 CODE 2@
@@ -545,7 +911,9 @@ BW1 SUB #2,PSP
     MOV @TOS,TOS
     MOV @IP+,PC
 ENDCODE
+[THEN]
 
+[UNDEFINED] 2! [IF]
 \ https://forth-standard.org/standard/core/TwoStore
 \ 2!    x1 x2 a-addr --    store 2 cells ; the top of stack is stored at the lower adr
 CODE 2!
@@ -554,19 +922,20 @@ BW2 MOV @PSP+,0(TOS)
     MOV @PSP+,TOS
     MOV @IP+,PC
 ENDCODE
+[THEN]
 
-\ \ https://forth-standard.org/standard/double/TwoVALUE
-\ : 2VALUE        \ x1 x2 "<spaces>name" --
-\ CREATE , ,      \ compile Shi then Flo
-\ DOES>
-\ HI2LO
-\ MOV @RSP+,IP
-\ BIT #UF10,SR    \see TO
-\ 0= ?GOTO BW1 
-\ BIC #UF10,SR
-\ GOTO BW2
-\ ENDCODE
+[UNDEFINED] 2DUP [IF]
+\ https://forth-standard.org/standard/core/TwoDUP
+\ 2DUP   x1 x2 -- x1 x2 x1 x2   dup top 2 cells
+CODE 2DUP
+MOV TOS,-2(PSP)     \ 3
+MOV @PSP,-4(PSP)    \ 4
+SUB #4,PSP          \ 1
+MOV @IP+,PC         \ 4
+ENDCODE
+[THEN]
 
+[UNDEFINED] 2DROP [IF]
 \ https://forth-standard.org/standard/core/TwoDROP
 \ 2DROP  x1 x2 --          drop 2 cells
 CODE 2DROP
@@ -574,7 +943,9 @@ ADD #2,PSP
 MOV @PSP+,TOS
 MOV @IP+,PC
 ENDCODE
+[THEN]
 
+[UNDEFINED] 2SWAP [IF]
 \ https://forth-standard.org/standard/core/TwoSWAP
 \ 2SWAP  x1 x2 x3 x4 -- x3 x4 x1 x2
 CODE 2SWAP
@@ -586,7 +957,9 @@ MOV 2(PSP),TOS      \ -- x3 x2 x1 x2    W=x4
 MOV W,2(PSP)        \ -- x3 x4 x1 x2
 MOV @IP+,PC
 ENDCODE
+[THEN]
 
+[UNDEFINED] 2OVER [IF]
 \ https://forth-standard.org/standard/core/TwoOVER
 \ 2OVER  x1 x2 x3 x4 -- x1 x2 x3 x4 x1 x2
 CODE 2OVER
@@ -596,12 +969,13 @@ MOV 8(PSP),0(PSP)   \ -- x1 x2 x3 x4 x1 x4
 MOV 6(PSP),TOS      \ -- x1 x2 x3 x4 x1 x2
 MOV @IP+,PC
 ENDCODE
-
 [THEN]
 
 \ ----------------------------------------------------------------------
 \ ALIGNMENT OPERATORS
 \ ----------------------------------------------------------------------
+
+[UNDEFINED] ALIGNED [IF]
 \ https://forth-standard.org/standard/core/ALIGNED
 \ ALIGNED  addr -- a-addr       align given addr
 CODE ALIGNED
@@ -609,7 +983,9 @@ BIT #1,TOS
 ADDC #0,TOS
 MOV @IP+,PC
 ENDCODE
+[THEN]
 
+[UNDEFINED] ALIGN [IF]
 \ https://forth-standard.org/standard/core/ALIGN
 \ ALIGN    --                         align HERE
 CODE ALIGN
@@ -617,53 +993,68 @@ BIT #1,&DP  \ 3
 ADDC #0,&DP \ 4
 MOV @IP+,PC
 ENDCODE
+[THEN]
 
 \ ---------------------
 \ PORTABILITY OPERATORS
 \ ---------------------
+
+[UNDEFINED] CHARS [IF]
 \ https://forth-standard.org/standard/core/CHARS
 \ CHARS    n1 -- n2            chars->adrs units
 CODE CHARS
 MOV @IP+,PC
 ENDCODE
+[THEN]
 
+[UNDEFINED] CHAR+ [IF]
 \ https://forth-standard.org/standard/core/CHARPlus
 \ CHAR+    c-addr1 -- c-addr2   add char size
 CODE CHAR+
 ADD #1,TOS
 MOV @IP+,PC
 ENDCODE
+[THEN]
 
+[UNDEFINED] CELLS [IF]
 \ https://forth-standard.org/standard/core/CELLS
 \ CELLS    n1 -- n2            cells->adrs units
 CODE CELLS
 ADD TOS,TOS
 MOV @IP+,PC
 ENDCODE
+[THEN]
 
+[UNDEFINED] CELL+ [IF]
 \ https://forth-standard.org/standard/core/CELLPlus
 \ CELL+    a-addr1 -- a-addr2      add cell size
 CODE CELL+
 ADD #2,TOS
 MOV @IP+,PC
 ENDCODE
+[THEN]
 
 \ ---------------------------
 \ BLOCK AND STRING COMPLEMENT
 \ ---------------------------
 
+[UNDEFINED] CHAR [IF]
 \ https://forth-standard.org/standard/core/CHAR
 \ CHAR   -- char           parse ASCII character
 : CHAR
-    BL WORD 1+ C@
+    $20 WORD 1+ C@
 ;
+[THEN]
 
+[UNDEFINED] [CHAR] [IF]
 \ https://forth-standard.org/standard/core/BracketCHAR
 \ [CHAR]   --          compile character literal
 : [CHAR]
     CHAR POSTPONE LITERAL
 ; IMMEDIATE
+[THEN]
 
+[UNDEFINED] +! [IF]
 \ https://forth-standard.org/standard/core/PlusStore
 \ +!     n/u a-addr --       add n/u to memory
 CODE +!
@@ -671,7 +1062,45 @@ ADD @PSP+,0(TOS)
 MOV @PSP+,TOS
 MOV @IP+,PC
 ENDCODE
+[THEN]
 
+[UNDEFINED] MOVE [IF]
+\ https://forth-standard.org/standard/core/MOVE
+\ MOVE    addr1 addr2 u --     smart move
+\             VERSION FOR 1 ADDRESS UNIT = 1 CHAR
+CODE MOVE
+MOV TOS,W           \ W = cnt
+MOV @PSP+,Y         \ Y = addr2 = dst
+MOV @PSP+,X         \ X = addr1 = src
+MOV @PSP+,TOS       \ pop new TOS
+CMP #0,W            \ count = 0 ?
+0<> IF              \ if 0, already done !
+    CMP X,Y         \ Y-X \ dst - src
+    0<> IF          \ else already done !
+        U< IF       \ U< if src > dst
+            BEGIN   \ copy W bytes
+                MOV.B @X+,0(Y)
+                ADD #1,Y
+                SUB #1,W
+            0= UNTIL
+            MOV @IP+,PC \ out 1 of MOVE ====>
+        THEN        \ U>= if dst > src
+        ADD W,Y     \ copy W bytes beginning with the end
+        ADD W,X
+        BEGIN
+            SUB #1,X
+            SUB #1,Y
+            MOV.B @X,0(Y)
+            SUB #1,W
+        0= UNTIL
+    THEN
+THEN
+MOV @IP+,PC \ out 2 of MOVE ====>
+ENDCODE
+[THEN]
+
+
+[UNDEFINED] FILL [IF]
 \ https://forth-standard.org/standard/core/FILL
 \ FILL   c-addr u char --  fill memory with char
 CODE FILL
@@ -688,29 +1117,43 @@ THEN
 MOV @PSP+,TOS     \ empties stack
 MOV @IP+,PC
 ENDCODE
+[THEN]
+
+[UNDEFINED] HERE [IF]
+CODE HERE
+MOV #BEGIN,PC
+ENDCODE
+[THEN]
 
 \ --------------------
 \ INTERPRET COMPLEMENT
 \ --------------------
 
+[UNDEFINED] HEX [IF]
 \ https://forth-standard.org/standard/core/HEX
 CODE HEX
-MOV #$10,&BASE
+MOV #$10,&BASEADR
 MOV @IP+,PC
 ENDCODE
+[THEN]
 
+[UNDEFINED] DECIMAL [IF]
 \ https://forth-standard.org/standard/core/DECIMAL
 CODE DECIMAL
-MOV #$0A,&BASE
+MOV #$0A,&BASEADR
 MOV @IP+,PC
 ENDCODE
+[THEN]
 
+[UNDEFINED] ( [IF]
 \ https://forth-standard.org/standard/core/p
 \ (         --          skip input until char ) or EOL
 : ( 
 $29 WORD DROP
 ; IMMEDIATE
+[THEN]
 
+[UNDEFINED] .( [IF] \ "
 \ https://forth-standard.org/standard/core/Dotp
 \ .(        --          type comment immediatly.
 CODE .(         \ "
@@ -718,42 +1161,30 @@ MOV #0,&CAPS    \ CAPS OFF
 COLON
 $29 WORD
 COUNT TYPE
-BL CAPS !       \ CAPS ON
+$20 CAPS !       \ CAPS ON
 ; IMMEDIATE
+[THEN]
 
-\ https://forth-standard.org/standard/core/J
-\ J        -- n   R: 4*sys -- 4*sys
-\ C                  get the second loop index
-CODE J
-SUB #2,PSP      
-MOV TOS,0(PSP)
-MOV 4(RSP),TOS
-SUB 6(RSP),TOS
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
 MOV @IP+,PC
 ENDCODE
+[THEN]
 
-\ https://forth-standard.org/standard/core/UNLOOP
-\ UNLOOP   --   R: sys1 sys2 --  drop loop parms
-CODE UNLOOP
-ADD #4,RSP
-MOV @IP+,PC
+[UNDEFINED] EXECUTE [IF] \ "
+\ https://forth-standard.org/standard/core/EXECUTE
+\ EXECUTE   i*x xt -- j*x   execute Forth word at 'xt'
+CODE EXECUTE
+MOV TOS,W               \ 1 put word address into W
+MOV @PSP+,TOS           \ 2 fetch new TOS
+MOV W,PC                \ 3 fetch code address into PC
 ENDCODE
+[THEN]
 
-\ https://forth-standard.org/standard/core/LEAVE
-\ LEAVE    --    L: -- adrs
-CODE LEAVE
-MOV &DP,W               \ compile three words
-MOV #UNLOOP,0(W)        \ [HERE] = UNLOOP
-MOV #.,2(W)             \ DOT + 8 = BRAN
-ADD #8,2(W)             \ [HERE+2] = BRAN
-ADD #6,&DP              \ [HERE+4] = After LOOP adr
-ADD #2,&LEAVEPTR
-ADD #4,W
-MOV &LEAVEPTR,X
-MOV W,0(X)              \ leave HERE+4 on LEAVEPTR stack
-MOV @IP+,PC
-ENDCODE IMMEDIATE
-
+[UNDEFINED] RECURSE [IF]
 \ https://forth-standard.org/standard/core/RECURSE
 \ C RECURSE  --      recurse to current definition (compile current definition)
 CODE RECURSE
@@ -762,7 +1193,9 @@ MOV &LAST_CFA,0(X)
 ADD #2,&DP
 MOV @IP+,PC
 ENDCODE IMMEDIATE
+[THEN]
 
+[UNDEFINED] SOURCE [IF]
 \ https://forth-standard.org/standard/core/SOURCE
 \ SOURCE    -- adr u    of current input buffer
 CODE SOURCE
@@ -772,8 +1205,102 @@ MOV &SOURCE_LEN,TOS
 MOV &SOURCE_ORG,0(PSP)
 MOV @IP+,PC
 ENDCODE
+[THEN]
 
-RST_HERE
+\ [UNDEFINED] VARIABLE [IF]
+\ \ https://forth-standard.org/standard/core/VARIABLE
+\ \ VARIABLE <name>       --                      define a Forth VARIABLE
+\ : VARIABLE 
+\ CREATE
+\ HI2LO
+\ MOV #DOVAR,-4(W)        \   CFA = DOVAR
+\ MOV @RSP+,IP
+\ MOV @IP+,PC
+\ ENDCODE
+\ [THEN]
+
+[UNDEFINED] VARIABLE [IF]
+\ https://forth-standard.org/standard/core/VARIABLE
+\ VARIABLE <name>       --                      define a Forth VARIABLE
+: VARIABLE 
+CREATE
+2 ALLOT
+;
+[THEN]
+
+[UNDEFINED] CONSTANT [IF]
+\ https://forth-standard.org/standard/core/CONSTANT
+\ CONSTANT <name>     n --                      define a Forth CONSTANT 
+: CONSTANT 
+CREATE
+HI2LO
+MOV TOS,-2(W)           \   PFA = n
+MOV @PSP+,TOS
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] STATE [IF]
+\ https://forth-standard.org/standard/core/STATE
+\ STATE   -- a-addr       holds compiler state
+STATEADR CONSTANT STATE
+[THEN]
+
+[UNDEFINED] BASE [IF]
+\ https://forth-standard.org/standard/core/BASE
+\ BASE    -- a-addr       holds conversion radix
+BASEADR CONSTANT BASE
+[THEN]
+
+[UNDEFINED] >IN [IF]
+\ https://forth-standard.org/standard/core/toIN
+\ C >IN     -- a-addr       holds offset in input stream
+TOIN CONSTANT >IN
+[THEN]
+
+[UNDEFINED] PAD [IF]
+\ https://forth-standard.org/standard/core/PAD
+\  PAD           --  addr
+PAD_ORG CONSTANT PAD
+[THEN]
 
+[UNDEFINED] BL [IF]
+\ https://forth-standard.org/standard/core/BL
+\ BL      -- char            an ASCII space
+$20 CONSTANT BL
 [THEN]
+
+[UNDEFINED] SPACE [IF]
+\ https://forth-standard.org/standard/core/SPACE
+\ SPACE   --               output a space
+: SPACE
+$20 EMIT ;
+[THEN]
+
+[UNDEFINED] SPACES [IF]
+\ https://forth-standard.org/standard/core/SPACES
+\ SPACES   n --            output n spaces
+CODE SPACES
+CMP #0,TOS
+0<> IF
+    PUSH IP
+    BEGIN
+        LO2HI
+        $20 EMIT
+        HI2LO
+        SUB #2,IP 
+        SUB #1,TOS
+    0= UNTIL
+    MOV @RSP+,IP
+THEN
+MOV @PSP+,TOS           \ --         drop n
+NEXT              
+ENDCODE
+[THEN]
+
+RST_HERE
+
+[THEN]              \ end of [UNDEFINED] {CORE_COMP}
+
 ECHO
index e58005e..30df14a 100644 (file)
@@ -1,28 +1,19 @@
 
 PWR_STATE
 
-: ESC #27 EMIT ;
-
-: PAGEUP
-ECHO
-41              \ number of terminal lines -1  
-0 DO CR LOOP    \ don't erase any line of source
-ESC ." [1J"     \ erase up (41 empty lines)
-ESC ." [H"      \ cursor home
-;
-
 : ANSCOMPNOTFOUND
-PAGEUP
-1 ABORT" {ANS_COMP} word set not found!"
+$0D EMIT   \ return to column 1
+1 ABORT" {CORE_COMP} word set not found!"
 ;
 
+[DEFINED] {CORE_COMP} [IF]
+
 : CORETESTSUCCESS
-PAGEUP
+$0A BASE !
+$0D EMIT   \ return to column 1
 1 ABORT" CORE tests success!"
 ;
 
-[DEFINED] {ANS_COMP} [IF]
-
 
 \ From: John Hayes S1I
 \ Subject: tester.fr
@@ -1096,48 +1087,13 @@ T{ : GDX   123 ; : GDX   GDX 234 ; -> }T
 
 T{ GDX -> 123 234 }T
 
-CR .( End of Core word set tests) CR
-
-[DEFINED] COMPARE [IF]
-\ ------------------------------------------------------------------------
-TESTING COMPARE
-: CMOVE MOVE ;
-: s1 S" abcdefghijklmnopqrstuvwxyz" ;
-: s6 S" 123456" ;
-
-T{ s1        s1 COMPARE ->  0  }T 
-T{ s1  PAD SWAP CMOVE   ->     }T    \ Copy s1 to PAD 
-T{ s1  PAD OVER COMPARE ->  0  }T 
-T{ s1     PAD 6 COMPARE ->  1  }T 
-T{ PAD 10    s1 COMPARE -> -1  }T 
-T{ s1     PAD 0 COMPARE ->  1  }T 
-T{ PAD  0    s1 COMPARE -> -1  }T 
-T{ s1        s6 COMPARE ->  1  }T 
-T{ s6        s1 COMPARE -> -1  }T
-: "abdde" S" abdde" ; 
-: "abbde" S" abbde" ; 
-: "abcdf" S" abcdf" ; 
-: "abcdee" S" abcdee" ;
-
-T{ s1 "abdde"  COMPARE -> -1 }T 
-T{ s1 "abbde"  COMPARE ->  1 }T 
-T{ s1 "abcdf"  COMPARE -> -1 }T 
-T{ s1 "abcdee" COMPARE ->  1 }T
-
-: s11 S" 0abc" ; 
-: s12 S" 0aBc" ;
-
-T{ s11 s12 COMPARE ->  1 }T 
-T{ s12 s11 COMPARE -> -1 }T
-
-[THEN]      \ COMPARE
-
-$0A BASE !
+CR .( End of Core word set tests)
 
 CORETESTSUCCESS
 
 [ELSE]
 
-ANSCOMPNOTFOUND
+ECHO
+ANSCOMPNOTFOUND \               download CORECOMP.F before CORETEST.4TH
 
 [THEN]
diff --git a/MSP430-FORTH/DEFER.f b/MSP430-FORTH/DEFER.f
new file mode 100644 (file)
index 0000000..4e5266a
--- /dev/null
@@ -0,0 +1,94 @@
+\ -*- coding: utf-8 -*-
+
+; --------------------
+; DEFER.f
+; --------------------
+\
+\ to see kernel options, download FastForthSpecs.f
+\ FastForth kernel options: MSP430ASSEMBLER, CONDCOMP
+\
+\ TARGET SELECTION
+\ LP_MSP430FR2476
+\ MSP_EXP430FR5739  MSP_EXP430FR5969    MSP_EXP430FR5994    MSP_EXP430FR6989
+\ MSP_EXP430FR4133  MSP_EXP430FR2433    MSP_EXP430FR2355    CHIPSTICK_FR2433
+\
+\ REGISTERS USAGE
+\ R4 to R7 must be saved before use and restored after
+\ scratch registers Y to S are free for use
+\ under interrupt, IP is free for use
+\
+\ PUSHM order : PSP,TOS, IP,  S,  T,  W,  X,  Y, rEXIT,rDOVAR,rDOCON, rDODOES, R3, SR,RSP, PC
+\ PUSHM order : R15,R14,R13,R12,R11,R10, R9, R8,  R7  ,  R6  ,  R5  ,   R4   , R3, R2, R1, R0
+\
+\ example : PUSHM #6,IP pushes IP,S,T,W,X,Y registers to return stack
+\
+\ POPM  order :  PC,RSP, SR, R3, rDODOES,rDOCON,rDOVAR,rEXIT,  Y,  X,  W,  T,  S, IP,TOS,PSP
+\ POPM  order :  R0, R1, R2, R3,   R4   ,  R5  ,  R6  ,  R7 , R8, R9,R10,R11,R12,R13,R14,R15
+\
+\ example : POPM #6,IP   pop Y,X,W,T,S,IP registers from return stack
+\
+\
+\ FORTH conditionnals:  unary{ 0= 0< 0> }, binary{ = < > U< }
+\
+\ ASSEMBLER conditionnal usage with IF UNTIL WHILE  S<  S>=  U<   U>=  0=  0<>  0>=
+\ ASSEMBLER conditionnal usage with ?JMP ?GOTO      S<  S>=  U<   U>=  0=  0<>  0<
+\
+
+PWR_STATE
+
+[UNDEFINED] DEFER [IF]
+\ https://forth-standard.org/standard/core/DEFER
+\ DEFER "<spaces>name"   --
+\ Skip leading space delimiters. Parse name delimited by a space.
+\ Create a definition for name with the execution semantics defined below.
+
+\ name Execution:   --
+\ Execute the xt that name is set to execute, i.e. NEXT (nothing),
+\ until the phrase ' word IS name is executed, causing a new value of xt to be assigned to name.
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(W)        \ CFA = MOV @PC+,PC = BR MOV @IP+,PC
+MOV #NEXT_ADR,-2(W)     \ PFA = address of MOV @IP+,PC to do nothing.
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEFER! [IF]
+\ https://forth-standard.org/standard/core/DEFERStore
+\ Set the word xt1 to execute xt2. An ambiguous condition exists if xt1 is not for a word defined by DEFER.
+CODE DEFER!             \ xt2 xt1 --
+MOV @PSP+,2(TOS)        \ -- xt1=CFA_DEFER          xt2 --> [CFA_DEFER+2]
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] IS [IF]
+\ https://forth-standard.org/standard/core/IS
+\ IS <name>        xt --
+\ used as is :
+\ DEFER DISPLAY                         create a "do nothing" definition (2 CELLS)
+\ inline command : ' U. IS DISPLAY      U. becomes the runtime of the word DISPLAY
+\ or in a definition : ... ['] U. IS DISPLAY ...
+\ KEY, EMIT, CR, ACCEPT and WARM are examples of DEFERred words
+\
+\ as IS replaces the PFA value of any word, it's a TO alias for VARIABLE and CONSTANT words...
+: IS
+STATE @
+IF  POSTPONE ['] POSTPONE DEFER! 
+ELSE ' DEFER! 
+THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
index 436aee7..d701261 100644 (file)
@@ -3,18 +3,45 @@
 ; ------------------
 ; FF_SPECS.f
 ; ------------------
-
-; display all FastForth compilation options
-
-\ TARGET SELECTION
+\
+; displays all FastForth specifications
+\
+\ TARGET SELECTION : copy your target in (shift+F8) parameter 1: 
+\ LP_MSP430FR2476
 \ MSP_EXP430FR5739  MSP_EXP430FR5969    MSP_EXP430FR5994    MSP_EXP430FR6989
 \ MSP_EXP430FR4133  CHIPSTICK_FR2433    MSP_EXP430FR2433    MSP_EXP430FR2355
 \
 \ drag and drop this file onto SendSourceFileToTarget.bat
 \ then select your TARGET when asked.
 \
+PWR_STATE       \ remove volatile words
 
-RST_STATE
+[UNDEFINED] AND [IF]
+\ https://forth-standard.org/standard/core/AND
+\ C AND    x1 x2 -- x3           logical AND
+CODE AND
+AND @PSP+,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] DUP [IF]
+\ https://forth-standard.org/standard/core/DUP
+\ DUP      x -- x x      duplicate top of stack
+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]
 
 [UNDEFINED] OVER [IF]
 \ https://forth-standard.org/standard/core/OVER
@@ -27,51 +54,26 @@ MOV @IP+,PC
 ENDCODE
 [THEN]
 
-: CASE 0 ; IMMEDIATE \ -- #of-1 
-
-: OF \ #of-1 -- orgOF #of 
-1+                         \ count OFs 
->R                         \ move off the stack in case the control-flow stack is the data stack. 
-POSTPONE OVER POSTPONE = \ copy and test case value
-POSTPONE IF                \ add orig to control flow stack 
-POSTPONE DROP          \ discards case value if = 
-R>                         \ we can bring count back now 
-; IMMEDIATE 
-
-: ENDOF \ orgOF #of -- orgENDOF #of 
->R                         \ move off the stack in case the control-flow stack is the data stack. 
-POSTPONE ELSE 
-R>                         \ we can bring count back now 
-; IMMEDIATE 
-
-: ENDCASE \ orgENDOF1..orgENDOFn #of -- 
-POSTPONE DROP
-0 DO 
-    POSTPONE THEN 
-LOOP 
-; IMMEDIATE 
-
-: ESC #27 EMIT ;
-
-[UNDEFINED] + [IF]
-\ https://forth-standard.org/standard/core/Plus
-\ +       n1/u1 n2/u2 -- n3/u3     add n1+n2
-CODE +
-ADD @PSP+,TOS
-MOV @IP+,PC
+[UNDEFINED] DROP [IF]
+\ https://forth-standard.org/standard/core/DROP
+\ DROP     x --          drop top of stack
+CODE DROP
+MOV @PSP+,TOS   \ 2
+MOV @IP+,PC     \ 4
 ENDCODE
 [THEN]
 
-[UNDEFINED] AND [IF]
-\ https://forth-standard.org/standard/core/AND
-\ C AND    x1 x2 -- x3           logical AND
-CODE AND
-AND @PSP+,TOS
-MOV @IP+,PC
+[UNDEFINED] SWAP [IF]
+\ https://forth-standard.org/standard/core/SWAP
+\ SWAP     x1 x2 -- x2 x1    swap top two items
+CODE SWAP
+MOV @PSP,W      \ 2
+MOV TOS,0(PSP)  \ 3
+MOV W,TOS       \ 1
+MOV @IP+,PC     \ 4
 ENDCODE
 [THEN]
 
-
 [UNDEFINED] ROT [IF]
 \ https://forth-standard.org/standard/core/ROT
 \ ROT    x1 x2 x3 -- x2 x3 x1
@@ -84,6 +86,229 @@ MOV @IP+,PC
 ENDCODE
 [THEN]
 
+[UNDEFINED] >R [IF]
+\ https://forth-standard.org/standard/core/toR
+\ >R    x --   R: -- x   push to return stack
+CODE >R
+PUSH TOS
+MOV @PSP+,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] R> [IF]
+\ https://forth-standard.org/standard/core/Rfrom
+\ R>    -- x    R: x --   pop from return stack ; CALL #RFROM performs DOVAR
+CODE R>
+SUB #2,PSP      \ 1
+MOV TOS,0(PSP)  \ 3
+MOV @RSP+,TOS   \ 2
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] 0< [IF]
+\ https://forth-standard.org/standard/core/Zeroless
+\ 0<     n -- flag      true if TOS negative
+CODE 0<
+ADD TOS,TOS     \ 1 set carry if TOS negative
+SUBC TOS,TOS    \ 1 TOS=-1 if carry was clear
+XOR #-1,TOS     \ 1 TOS=-1 if carry was set
+MOV @IP+,PC     \ 
+ENDCODE
+[THEN]
+
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1 flag Z = 1
+    MOV @IP+,PC \ 4
+THEN
+XOR #-1,TOS     \ 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+\ https://forth-standard.org/standard/core/Uless
+\ U<    u1 u2 -- flag       test u1<u2, unsigned
+[UNDEFINED] U< [IF]
+CODE U<
+SUB @PSP+,TOS   \ 2 u2-u1
+0<> IF
+    MOV #-1,TOS     \ 1
+    U< IF           \ 2 flag 
+        AND #0,TOS  \ 1 flag Z = 1
+    THEN
+THEN
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] UNTIL [IF]
+\ https://forth-standard.org/standard/core/UNTIL
+\ UNTIL    BEGINadr --             resolve conditional backward branch
+CODE UNTIL
+    MOV #QFBRAN,X
+BW1 ADD #4,&DP          \ compile two words
+    MOV &DP,W           \ W = HERE
+    MOV X,-4(W)         \ compile Bran or QFBRAN at HERE
+    MOV TOS,-2(W)       \ compile bakcward adr at HERE+2
+    MOV @PSP+,TOS
+    MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] AGAIN [IF]
+\ https://forth-standard.org/standard/core/AGAIN
+\ AGAIN    BEGINadr --             resolve uncondionnal backward branch
+CODE AGAIN
+MOV #BRAN,X
+GOTO BW1
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] WHILE [IF]
+\ https://forth-standard.org/standard/core/WHILE
+\ WHILE    BEGINadr -- WHILEadr BEGINadr
+: WHILE
+POSTPONE IF SWAP
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] REPEAT [IF]
+\ https://forth-standard.org/standard/core/REPEAT
+\ REPEAT   WHILEadr BEGINadr --     resolve WHILE loop
+: REPEAT
+POSTPONE AGAIN POSTPONE THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] DO [IF]
+\ https://forth-standard.org/standard/core/DO
+\ DO       -- DOadr   L: -- 0
+CODE DO
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+ADD #2,&DP              \   make room to compile xdo
+MOV &DP,TOS             \ -- HERE+2
+MOV #XDO,-2(TOS)        \   compile xdo
+ADD #2,&LEAVEPTR        \ -- HERE+2     LEAVEPTR+2
+MOV &LEAVEPTR,W         \
+MOV #0,0(W)             \ -- HERE+2     L-- 0
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] I [IF]
+\ https://forth-standard.org/standard/core/I
+\ I        -- n   R: sys1 sys2 -- sys1 sys2
+\                  get the innermost loop index
+CODE I
+SUB #2,PSP              \ 1 make room in TOS
+MOV TOS,0(PSP)          \ 3
+MOV @RSP,TOS            \ 2 index = loopctr - fudge
+SUB 2(RSP),TOS          \ 3
+MOV @IP+,PC             \ 4 13~
+ENDCODE
+[THEN]
+
+[UNDEFINED] LOOP [IF]
+\ https://forth-standard.org/standard/core/LOOP
+\ LOOP    DOadr --         L-- an an-1 .. a1 0
+CODE LOOP
+    MOV #XLOOP,X
+BW1 ADD #4,&DP          \ make room to compile two words
+    MOV &DP,W
+    MOV X,-4(W)         \ xloop --> HERE
+    MOV TOS,-2(W)       \ DOadr --> HERE+2
+BEGIN                   \ resolve all "leave" adr
+    MOV &LEAVEPTR,TOS   \ -- Adr of top LeaveStack cell
+    SUB #2,&LEAVEPTR    \ --
+    MOV @TOS,TOS        \ -- first LeaveStack value
+    CMP #0,TOS          \ -- = value left by DO ?
+0<> WHILE
+    MOV W,0(TOS)        \ move adr after loop as UNLOOP adr
+REPEAT
+    MOV @PSP+,TOS
+    MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] +LOOP [IF]
+\ https://forth-standard.org/standard/core/PlusLOOP
+\ +LOOP   adrs --   L-- an an-1 .. a1 0
+CODE +LOOP
+MOV #XPLOOP,X
+GOTO BW1        \ goto BW1 LOOP
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] HERE [IF]
+CODE HERE
+MOV #BEGIN,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] ! [IF]
+\ https://forth-standard.org/standard/core/Store
+\ !        x a-addr --   store cell in memory
+CODE !
+MOV @PSP+,0(TOS)    \ 4
+MOV @PSP+,TOS       \ 2
+MOV @IP+,PC         \ 4
+ENDCODE
+[THEN]
+
 [UNDEFINED] C@ [IF]
 \ https://forth-standard.org/standard/core/CFetch
 \ C@     c-addr -- char   fetch char from memory
@@ -110,7 +335,45 @@ CMP #0,TOS
     MOV @RSP+,IP
 THEN
 MOV @PSP+,TOS           \ --         drop n
-NEXT              
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] 1+ [IF]
+\ https://forth-standard.org/standard/core/OnePlus
+\ 1+      n1/u1 -- n2/u2       add 1 to TOS
+CODE 1+
+ADD #1,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] + [IF]
+\ https://forth-standard.org/standard/core/Plus
+\ +       n1/u1 n2/u2 -- n3/u3     add n1+n2
+CODE +
+ADD @PSP+,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] - [IF]
+\ https://forth-standard.org/standard/core/Minus
+\ -      n1/u1 n2/u2 -- n3/u3     n3 = n1-n2
+CODE -
+SUB @PSP+,TOS   \ 2  -- n2-n1 ( = -n3)
+XOR #-1,TOS     \ 1
+ADD #1,TOS      \ 1  -- n3 = -(n2-n1) = n1-n2
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] 2* [IF]
+\ https://forth-standard.org/standard/core/TwoTimes
+\ 2*      x1 -- x2         arithmetic left shift
+CODE 2*
+ADD TOS,TOS
+MOV @IP+,PC
 ENDCODE
 [THEN]
 
@@ -119,9 +382,42 @@ ENDCODE
 \ UM/MOD   udlo|udhi u1 -- r q   unsigned 32/16->r16 q16
 CODE UM/MOD
     PUSH #DROP      \
-    MOV #<#,X       \ X = addr of <#
-    ADD #8,X        \ X = addr of MUSMOD
-    MOV X,PC        \ execute MUSMOD then RET to DROP
+    MOV #MUSMOD,PC  \ execute MUSMOD then return to DROP
+ENDCODE
+[THEN]
+
+[UNDEFINED] MOVE [IF]
+\ https://forth-standard.org/standard/core/MOVE
+\ MOVE    addr1 addr2 u --     smart move
+\             VERSION FOR 1 ADDRESS UNIT = 1 CHAR
+CODE MOVE
+MOV TOS,W           \ W = cnt
+MOV @PSP+,Y         \ Y = addr2 = dst
+MOV @PSP+,X         \ X = addr1 = src
+MOV @PSP+,TOS       \ pop new TOS
+CMP #0,W            \ count = 0 ?
+0<> IF              \ if 0, already done !
+    CMP X,Y         \ Y-X \ dst - src
+    0<> IF          \ if dst = src, already done !
+        U< IF       \ U< if src > dst
+            BEGIN   \ copy W bytes
+                MOV.B @X+,0(Y)
+                ADD #1,Y
+                SUB #1,W
+            0= UNTIL
+            MOV @IP+,PC
+        THEN        \ U>= if dst > src
+        ADD W,Y     \ copy W bytes beginning with the end
+        ADD W,X
+        BEGIN
+            SUB #1,X
+            SUB #1,Y
+            MOV.B @X,0(Y)
+            SUB #1,W
+        0= UNTIL
+    THEN
+THEN
+MOV @IP+,PC
 ENDCODE
 [THEN]
 
@@ -131,11 +427,11 @@ ENDCODE
 : WORDS                         \ --            
 CR 
 CONTEXT @ PAD_ORG               \ -- VOC_BODY PAD                  MOVE all threads of VOC_BODY in PAD_ORG
-INI_THREAD @ DUP +              \ -- VOC_BODY PAD THREAD*2
-MOVE                            \ -- vocabumary entries are copied in PAD_ORG
+INI_THREAD @ 2*                 \ -- VOC_BODY PAD THREAD*2
+MOVE                            \ -- vocabulary entries are copied in PAD_ORG
 BEGIN                           \ -- 
     0 DUP                       \ -- ptr=0 MAX=0                
-    INI_THREAD @ DUP + 0        \ -- ptr=0 MAX=0 THREADS*2 0
+    INI_THREAD @ 2* 0           \ -- ptr=0 MAX=0 THREADS*2 0
         DO                      \ -- ptr MAX            I =  PAD_ptr = thread*2
         DUP I PAD_ORG + @       \ -- ptr MAX MAX NFAx
             U< IF               \ -- ptr MAX            if MAX U< NFAx
@@ -160,106 +456,159 @@ DROP                            \ ptr --
 ;                               \ all threads in PAD are filled with 0
 [THEN]
 
-: ADDONS            \ see "compute value of FORTHADDON" in file \inc\ThingsInFirst.inc
-ESC ." [7m"         \ escape sequence to set reverse video
-." KERNEL OPTIONS:" \ in reverse video
-ESC ." [0m"         \ escape sequence to clear reverse video
-KERNEL_ADDON @                                  \ see ThingsInFirst.inc
-
-      DUP 0< IF CR ." 32.768kHz XTAL" THEN
-DUP + DUP 0< IF DUP + CR ." HARDWARE (RTS/CTS) TERMINAL"     \ 'DUP +' = one shift left
-             ELSE DUP + DUP 0< IF CR ." HARDWARE (RTS) TERMINAL" THEN
-             THEN
-DUP + DUP 0< IF CR ." XON/XOFF TERMINAL" THEN
-DUP + DUP 0< IF CR ." HALF-DUPLEX TERMINAL" THEN
-DUP + DUP 0< IF CR ." ASM DATA ACCESS BEYOND $FFFF" THEN
-DUP + DUP 0< IF CR ." BOOTLOADER" THEN
-DUP + DUP 0< IF CR ." SD_CARD READ/WRITE" THEN
-DUP + DUP 0< IF CR ." SD_CARD LOADER" THEN
-DUP + DUP 0< IF CR ." FIXPOINT INPUT" THEN
-DUP + DUP 0< IF CR ." DOUBLE INPUT" THEN
-DUP + DUP 0< IF CR ." VOCABULARY SET" THEN
-DUP + DUP 0< IF CR ." NONAME" THEN
-DUP + DUP 0< IF CR ." EXTENDED ASSEMBLER" THEN
-DUP + DUP 0< IF CR ." ASSEMBLER" THEN
-DUP + DUP 0< IF CR ." CONDITIONNAL COMPILATION" THEN
-
-0< IF                   \ true if CONDCOMP add-on
-    CR ESC ." [7m"      \ escape sequence to set reverse video
-    ." OTHER OPTIONS:"  \ in reverse video
-    ESC ." [0m"         \ escape sequence to clear reverse video
-    CR ." none"
-    ESC ." [G"          \ cursor row 0
-    [DEFINED] {ANS_COMP} [IF] ." ANS_COMPLEMENT" CR [THEN]
-    [DEFINED] {TOOLS}    [IF] ." UTILITY" CR [THEN]
-    [DEFINED] {FIXPOINT} [IF] ." FIXPOINT" CR [THEN]
-    [DEFINED] {SD_TOOLS} [IF] ." SD_TOOLS" CR [THEN]
-    CR CR
-    [DEFINED] VOCABULARY [IF]
-    ESC ." [7m"      \ escape sequence to set reverse video
-    ." ASSEMBLER word set"
-    ESC ." [0m"         \ escape sequence to clear reverse video
-    ALSO ASSEMBLER WORDS CR PREVIOUS
-    [THEN]
-ESC ." [7m" ." FORTH word set" ESC ." [0m"
-WORDS                                           \ Forth words set
-THEN
-;
+[UNDEFINED] CASE [IF]
+\ https://forth-standard.org/standard/core/CASE
+: CASE 0 ; IMMEDIATE \ -- #of-1 
+[THEN]
 
-: specs         \ to see Fast Forth specifications
+[UNDEFINED] OF [IF]
+\ https://forth-standard.org/standard/core/OF
+: OF \ #of-1 -- orgOF #of 
+1+                         \ count OFs 
+>R                         \ move off the stack in case the control-flow stack is the data stack. 
+POSTPONE OVER POSTPONE = \ copy and test case value
+POSTPONE IF                \ add orig to control flow stack 
+POSTPONE DROP          \ discards case value if = 
+R>                         \ we can bring count back now 
+; IMMEDIATE 
+[THEN]
+
+[UNDEFINED] ENDOF [IF]
+\ https://forth-standard.org/standard/core/ENDOF
+: ENDOF \ orgOF #of -- orgENDOF #of 
+>R                         \ move off the stack in case the control-flow stack is the data stack. 
+POSTPONE ELSE 
+R>                         \ we can bring count back now 
+; IMMEDIATE 
+[THEN]
+
+[UNDEFINED] ENDCASE [IF]
+\ https://forth-standard.org/standard/core/ENDCASE
+: ENDCASE \ orgENDOF1..orgENDOFn #of -- 
+POSTPONE DROP
+0 DO 
+    POSTPONE THEN 
+LOOP 
+; IMMEDIATE 
+[THEN]
+
+[UNDEFINED] ESC" [IF]
+\ ESC" <escape sequence>" --    type an escape sequence
+: ESC"
+$1B             \ ESC char
+POSTPONE LITERAL
+POSTPONE EMIT
+POSTPONE S"
+POSTPONE TYPE
+; IMMEDIATE \ "
+[THEN]
+
+: SPECS         \ to see Fast Forth specifications
 PWR_STATE       \ before free bytes computing, remove all created words 
 HERE            \ to compute bytes
 ECHO
 
-41              \ number of terminal lines -1  
-0 DO CR LOOP    \ don't erase any line of source
-
-ESC ." [1J"     \ erase up (41 empty lines)
-ESC ." [H"      \ cursor home
-ESC ." [7m"     \ escape sequence to set reverse video
+42 0 DO CR LOOP \ don't erase any line of source, create 42 empty lines
+ESC" [H"        \ then cursor home
 
+ESC" [7m"                   \ set reverse video
+CR ." FastForth V"          \ title line in reverse video 
+VERSION @         
+0 <# #  8 HOLD # 46 HOLD #S #> TYPE
+."  for MSP430FR"
 DEVICEID @      \ value kept in TLV area
-
-CR ." FastForth V" VERSION @                    \ FastForth version,
-0 <# #  8 HOLD # 46 HOLD #S #> TYPE $20 EMIT
-." for MSP430FR"                                \ target,
 CASE
-\ device ID   of MSP430FRxxxx    MAIN org
-    $830C     OF      ." 2355,"   $8000   ENDOF
-    $8328     OF      ." 2476,"   $8000   ENDOF
-    $8240     OF      ." 2433,"   $C400   ENDOF
-    $81F0     OF      ." 4133,"   $C400   ENDOF
-    $8103     OF      ." 5739,"   $C200   ENDOF
     $8102     OF      ." 5738,"   $C200   ENDOF
-    $8169     OF      ." 5969,"   $4400   ENDOF
+    $8103     OF      ." 5739,"   $C200   ENDOF
     $8160     OF      ." 5948,"   $4400   ENDOF
-    $82A1     OF      ." 5994,"   $4000   ENDOF
+    $8169     OF      ." 5969,"   $4400   ENDOF
     $81A8     OF      ." 6989,"   $4400   ENDOF
-\   DevID     OF      ." xxxx,"   $MAIN   ENDOF \ <-- add here your device
-
+    $81F0     OF      ." 4133,"   $C400   ENDOF
+    $8240     OF      ." 2433,"   $C400   ENDOF
+    $82A1     OF      ." 5994,"   $4000   ENDOF
+    $830C     OF      ." 2355,"   $8000   ENDOF
+    $8328     OF      ." 2476,"   $8000   ENDOF
+\ device_ID   OF      ." xxxx,"   $MAIN   ENDOF \ <-- add here your device
     ABORT" xxxx <-- unrecognized device!"
-ENDCASE $20 EMIT 
-
-['] ['] DUP @ $1287 = IF ." DTC=1," DROP         \ DTC model number,
-                         ELSE 2 + @ $1287 =
-                            IF ." DTC=2,"
-                            ELSE ." DTC=3,"
-                            THEN
-                        THEN $20 EMIT 
-
+ENDCASE
+$20 EMIT 
+['] ['] DUP @ DOCOL =       \ DOCOL = CALL rDOCOL opcode
+IF ." DTC=1," DROP          \ [CFA] = CALL rDOCOL
+ELSE 2 + @ DOCOL =          \ 
+    IF ." DTC=2,"           \ [CFA] = PUSH IP, [CFA+2] = CALL rDOCOL 
+    ELSE ." DTC=3,"         \ [CFA] = PUSH IP, [CFA+2] = MOV PC,IP
+    THEN
+THEN
+$20 EMIT 
 INI_THREAD @ U. #8 EMIT ." -Entry word sets, "  \ number of Entry word sets,
-
 FREQ_KHZ @ 0 1000 UM/MOD U.                     \ frequency,
 ?DUP IF #8 EMIT ." ," U.    \ if remainder
 THEN ." MHz, "              \ MCLK
-
-- U. ." bytes"     \ HERE - MAIN_ORG            \ number of bytes code,
-
-\ ESC ." [0m"
-
-CR CR ADDONS                                    \ addons
+- U. ." bytes"              \ HERE - MAIN_ORG = number of bytes code,
+ESC" [0m"                 \ clear reverse video
+
+CR ." /COUNTED-STRING   = 255"
+CR ." /HOLD             = 34"
+CR ." /PAD              = 84"
+CR ." ADDRESS-UNIT-BITS = 16"
+CR ." FLOORED           = true"
+CR ." MAX-CHAR          = 255"
+CR ." MAX-N             = 32767"
+CR ." MAX-U             = 65535"
+CR ." MAX-D             = 2147483647"
+CR ." MAX-UD            = 4294967295"
+CR ." STACK-CELLS       = 48"
+CR ." RETURN-STACK-CELLS= 48"
+
+CR CR 
+
+ESC" [7m"                 \ set reverse video
+." KERNEL ADDONS"         \ subtitle in reverse video
+ESC" [0m"                 \ clear reverse video
+KERNEL_ADDON @
+    DUP 0< IF CR ." 32.768kHz XTAL" THEN
+2*  DUP 0< IF 2* CR ." 5 WIRES (RTS/CTS) UART TERMINAL"
+        ELSE 2* DUP
+            0< IF CR ." 4 WIRES (RTS) UART TERMINAL" 
+            THEN
+        THEN
+2*  DUP 0< IF CR ." 3 WIRES (XON/XOFF) UART TERMINAL" THEN
+2*  DUP 0< IF CR ." HALF-DUPLEX TERMINAL" THEN
+2*  DUP 0< IF CR ." ASM DATA ACCESS BEYOND $FFFF" THEN
+2*  DUP 0< IF CR ." BOOTLOADER" THEN
+2*  DUP 0< IF CR ." SD_CARD READ/WRITE" THEN
+2*  DUP 0< IF CR ." SD_CARD LOADER" THEN
+2*  DUP 0< IF CR ." FIXPOINT INPUT" THEN
+2*  DUP 0< IF CR ." DOUBLE INPUT" THEN
+2*  DUP 0< IF CR ." VOCABULARY SET" THEN
+2*  DUP 0< IF CR ." NONAME" THEN
+2*  DUP 0< IF CR ." EXTENDED ASSEMBLER" THEN
+2*  DUP 0< IF CR ." ASSEMBLER" THEN
+2*  DUP 0< IF CR ." CONDITIONNAL COMPILATION" THEN
+0< IF                       \ true if CONDCOMP add-on
+    CR CR ESC" [7m" 
+    ." OPTIONS"             \ subtitle in reverse video
+    ESC" [0m" CR
+    [DEFINED] {CORE_COMP} [IF] ." CORE COMPLEMENT" CR [THEN]
+    [DEFINED] {TOOLS}     [IF] ." UTILITY" CR [THEN]
+    [DEFINED] {FIXPOINT}  [IF] ." FIXPOINT" CR [THEN]
+    [DEFINED] {CORDIC}    [IF] ." CORDIC engine" CR [THEN]
+    [DEFINED] {SD_TOOLS}  [IF] ." SD_TOOLS" CR [THEN]
+    [DEFINED] {RTC}       [IF] ." RTC utilities" CR [THEN]
+    CR
+    [DEFINED] VOCABULARY [IF]
+    ESC" [7m"
+    ." ASSEMBLER word set"  \ subtitle in reverse video 
+    ESC" [0m"
+    ALSO ASSEMBLER WORDS PREVIOUS CR
+    [THEN]
+THEN
+    ESC" [7m"
+    ." FORTH word set"      \ subtitle in reverse video 
+    ESC" [0m"
+    WORDS
 
 CR WARM
 ;
 
-ECHO specs \ here FastForth types a (volatile) message with some informations
+SPECS \ here FastForth types a (volatile) message with some informations
index e54ad04..0f0ffa7 100644 (file)
@@ -1,8 +1,12 @@
 \ -*- coding: utf-8 -*-
 
 ; -----------------------------------------------------
-; FIXPOINT.f
+; FIXPOINT.f 
 ; -----------------------------------------------------
+
+; -----------------------------------------------------------
+; requires FIXPOINT_INPUT kernel addon, see forthMSP430FR.asm
+; -----------------------------------------------------------
 \
 \ to see kernel options, download FastForthSpecs.f
 \ FastForth kernel options: MSP430ASSEMBLER, CONDCOMP, FIXPOINT_INPUT
 
 PWR_STATE
 
+[DEFINED] {FIXPOINT} [IF]  {FIXPOINT} [THEN]
+
 [UNDEFINED] {FIXPOINT} [IF]
 
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
+
 MARKER {FIXPOINT}
 
 [UNDEFINED] + [IF]
@@ -47,6 +84,62 @@ MOV @IP+,PC
 ENDCODE
 [THEN]
 
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] ! [IF]
+\ https://forth-standard.org/standard/core/Store
+\ !        x a-addr --   store cell in memory
+CODE !
+MOV @PSP+,0(TOS)    \ 4
+MOV @PSP+,TOS       \ 2
+MOV @IP+,PC         \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] R> [IF]
+\ https://forth-standard.org/standard/core/Rfrom
+\ R>    -- x    R: x --   pop from return stack ; CALL #RFROM performs DOVAR
+CODE R>
+MOV rDOVAR,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+    MOV @IP+,PC \ 4
+THEN
+XOR #-1,TOS     \ 1 flag Z = 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+\ https://forth-standard.org/standard/core/Uless
+\ U<    u1 u2 -- flag       test u1<u2, unsigned
+[UNDEFINED] U< [IF]
+CODE U<
+SUB @PSP+,TOS   \ 2 u2-u1
+0<> IF
+    MOV #-1,TOS     \ 1
+    U< IF           \ 2 flag 
+        AND #0,TOS  \ 1 flag Z = 1
+    THEN
+THEN
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
 [UNDEFINED] HOLDS [IF]
 \ https://forth-standard.org/standard/core/HOLDS
 \ Adds the string represented by addr u to the pictured numeric output string
@@ -72,9 +165,14 @@ ENDCODE
 \ https://forth-standard.org/standard/double/DABS
 \ DABS     d1 -- |d1|     absolute value
 CODE DABS
-MOV #1-,X   \ 2
-ADD #4,X    \ 1
-MOV X,PC    \ 3
+AND #-1,TOS         \ clear V, set N
+S< IF               \ if positive (N=0)
+    XOR #-1,0(PSP)  \ 4
+    XOR #-1,TOS     \ 1
+    ADD #1,0(PSP)   \ 4
+    ADDC #0,TOS     \ 1
+THEN
+MOV @IP+,PC
 ENDCODE
 [THEN]
 
@@ -409,16 +507,15 @@ ECHO
 ; (volatile) tests
 ; -----------------------
 
-
 3,14159 2CONSTANT PI
 PI -1,0 F* 2CONSTANT -PI
 
 $10 BASEADR !  PI F. 
-           -PI F.
+            -PI F.
 %10 BASEADR !  PI F. 
-           -PI F.
+            -PI F.
 #10 BASEADR !  PI F. 
-           -PI F.
+            -PI F.
 
 PI 2,0 F* F.      
 PI -2,0 F* F.    
@@ -430,25 +527,26 @@ PI -2,0 F/ F.
 -PI 2,0 F/ F.    
 -PI -2,0 F/ F.    
 
-32767,99999 1,0 f* F. 
-32767,99999 1,0 f/ F. 
-32767,99999 2,0 f/ F. 
-32767,99999 4,0 f/ F. 
-32767,99999 8,0 f/ F. 
-32767,99999 16,0 f/ F.
-
--32767,0 -1,0 f* F.   
--32767,0 -1,0 f/ F.   
--32767,0 -2,0 f/ F.   
--32767,0 -4,0 f/ F.   
--32767,0 -8,0 f/ F.   
--32767,0 -16,0 f/ F.  
--32767,0 -32,0 f/ F.  
--32767,0 -64,0 f/ F.  
-
-; sqrt(32768)^2 = 32768
-181,01933598375 181,01933598375 f* f.  
-181,01933598375 -181,01933598375 f* f.
--181,01933598375 181,01933598375 f* f.
--181,01933598375 -181,01933598375 f* f.
+32767,99999 1,0 F* F. 
+32767,99999 1,0 F/ F. 
+32767,99999 2,0 F/ F. 
+32767,99999 4,0 F/ F. 
+32767,99999 8,0 F/ F. 
+32767,99999 16,0 F/ F.
+
+-32767,0 -1,0 F* F.   
+-32767,0 -1,0 F/ F.   
+-32767,0 -2,0 F/ F.   
+-32767,0 -4,0 F/ F.   
+-32767,0 -8,0 F/ F.   
+-32767,0 -16,0 F/ F.  
+-32767,0 -32,0 F/ F.  
+-32767,0 -64,0 F/ F.  
+
+; SQRT(32768)^2 = 32768
+181,01933598375 181,01933598375 F* F.  
+181,01933598375 -181,01933598375 F* F.
+-181,01933598375 181,01933598375 F* F.
+-181,01933598375 -181,01933598375 F* F.
+
 
diff --git a/MSP430-FORTH/LAST.4TH b/MSP430-FORTH/LAST.4TH
new file mode 100644 (file)
index 0000000..0ad7e96
--- /dev/null
@@ -0,0 +1,527 @@
+
+; ------------------
+; FF_SPECS.4th
+; ------------------
+; displays all FastForth specifications
+PWR_STATE
+
+[UNDEFINED] AND [IF]
+CODE AND
+AND @R15+,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] OVER [IF]
+CODE OVER
+MOV R14,-2(R15)
+MOV @R15,R14
+SUB #2,R15
+MOV @R13+,R0
+ENDCODE
+[THEN]
+
+[UNDEFINED] DROP [IF]
+CODE DROP
+MOV @R15+,R14
+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] 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] >R [IF]
+CODE >R
+PUSH R14
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE
+[THEN]
+
+[UNDEFINED] R> [IF]
+CODE R>
+SUB #2,R15
+MOV R14,0(R15)
+MOV @R1+,R14
+MOV @R13+,R0
+ENDCODE
+[THEN]
+
+[UNDEFINED] 0< [IF]
+CODE 0<
+ADD R14,R14
+SUBC R14,R14
+XOR #-1,R14
+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 &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] UNTIL [IF]
+CODE UNTIL
+    MOV #$404C,R9
+BW1 ADD #4,&$1DC6
+    MOV &$1DC6,R10
+    MOV R9,-4(R10)
+    MOV R14,-2(R10)
+    MOV @R15+,R14
+    MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] AGAIN [IF]
+CODE AGAIN
+MOV #$4048,R9
+GOTO BW1
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] WHILE [IF]
+: WHILE
+POSTPONE IF SWAP
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] REPEAT [IF]
+: REPEAT
+POSTPONE AGAIN POSTPONE THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] DO [IF]
+CODE DO
+SUB #2,R15
+MOV R14,0(R15)
+ADD #2,&$1DC6
+MOV &$1DC6,R14
+MOV #$4056,-2(R14)
+ADD #2,&$1C00
+MOV &$1C00,R10
+MOV #0,0(R10)
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] I [IF]
+CODE I
+SUB #2,R15
+MOV R14,0(R15)
+MOV @R1,R14
+SUB 2(R1),R14
+MOV @R13+,R0
+ENDCODE
+[THEN]
+
+[UNDEFINED] LOOP [IF]
+CODE LOOP
+    MOV #$4078,R9
+BW1 ADD #4,&$1DC6
+    MOV &$1DC6,R10
+    MOV R9,-4(R10)
+    MOV R14,-2(R10)
+BEGIN
+    MOV &$1C00,R14
+    SUB #2,&$1C00
+    MOV @R14,R14
+    CMP #0,R14
+0<> WHILE
+    MOV R10,0(R14)
+REPEAT
+    MOV @R15+,R14
+    MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] +LOOP [IF]
+CODE +LOOP
+MOV #$4066,R9
+GOTO BW1
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] HERE [IF]
+CODE HERE
+MOV #BEGIN,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] SPACES [IF]
+CODE SPACES
+CMP #0,R14
+0<> IF
+    PUSH R13
+    BEGIN
+        LO2HI
+        $20 EMIT
+        HI2LO
+        SUB #2,R13 
+        SUB #1,R14
+    0= UNTIL
+    MOV @R1+,R13
+THEN
+MOV @R15+,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] 2* [IF]
+CODE 2*
+ADD R14,R14
+MOV @R13+,R0
+ENDCODE
+[THEN]
+
+[UNDEFINED] UM/MOD [IF]
+CODE UM/MOD
+    PUSH #DROP
+    MOV #$407E,R0
+ENDCODE
+[THEN]
+
+[UNDEFINED] MOVE [IF]
+CODE MOVE
+MOV R14,R10
+MOV @R15+,R8
+MOV @R15+,R9
+MOV @R15+,R14
+CMP #0,R10
+0<> IF
+    CMP R9,R8
+    0<> IF
+        U< IF
+            BEGIN
+                MOV.B @R9+,0(R8)
+                ADD #1,R8
+                SUB #1,R10
+            0= UNTIL
+            MOV @R13+,R0
+        THEN
+        ADD R10,R8
+        ADD R10,R9
+        BEGIN
+            SUB #1,R9
+            SUB #1,R8
+            MOV.B @R9,0(R8)
+            SUB #1,R10
+        0= UNTIL
+    THEN
+THEN
+MOV @R13+,R0
+ENDCODE
+[THEN]
+
+[UNDEFINED] WORDS [IF]
+: WORDS
+CR 
+$1DCA @ $1CE4
+$1800 @ 2*
+MOVE
+BEGIN
+    0 DUP
+    $1800 @ 2* 0
+        DO
+        DUP I $1CE4 + @
+            U< IF
+                DROP DROP
+                I DUP $1CE4 + @
+            THEN
+        2 +LOOP
+    ?DUP
+WHILE
+    DUP
+    2 - @
+    ROT
+    $1CE4 +
+    !
+    DUP
+    COUNT $7F AND
+    TYPE
+    C@ $0F AND
+    $10 SWAP - SPACES
+REPEAT
+DROP
+;
+[THEN]
+
+[UNDEFINED] CASE [IF]
+: CASE 0 ; IMMEDIATE
+[THEN]
+
+[UNDEFINED] OF [IF]
+: OF
+1+     
+>R     
+POSTPONE OVER POSTPONE =
+POSTPONE IF    
+POSTPONE DROP  
+R>     
+; IMMEDIATE 
+[THEN]
+
+[UNDEFINED] ENDOF [IF]
+: ENDOF
+>R     
+POSTPONE ELSE 
+R>     
+; IMMEDIATE 
+[THEN]
+
+[UNDEFINED] ENDCASE [IF]
+: ENDCASE
+POSTPONE DROP
+0 DO 
+    POSTPONE THEN 
+LOOP 
+; IMMEDIATE 
+[THEN]
+
+[UNDEFINED] ESC" [IF]
+: ESC"
+$1B
+POSTPONE LITERAL
+POSTPONE EMIT
+POSTPONE S"
+POSTPONE TYPE
+; IMMEDIATE
+[THEN]
+
+: SPECS
+PWR_STATE
+HERE
+ECHO
+
+42 0 DO CR LOOP
+ESC" [H"
+
+ESC" [7m"
+CR ." FastForth V"
+$1810 @         
+0 <# #  8 HOLD # 46 HOLD #S #> TYPE
+."  for MSP430FR"
+$1A04 @
+CASE
+    $8102     OF      ." 5738,"   $C200   ENDOF
+    $8103     OF      ." 5739,"   $C200   ENDOF
+    $8160     OF      ." 5948,"   $4400   ENDOF
+    $8169     OF      ." 5969,"   $4400   ENDOF
+    $81A8     OF      ." 6989,"   $4400   ENDOF
+    $81F0     OF      ." 4133,"   $C400   ENDOF
+    $8240     OF      ." 2433,"   $C400   ENDOF
+    $82A1     OF      ." 5994,"   $4000   ENDOF
+    $830C     OF      ." 2355,"   $8000   ENDOF
+    $8328     OF      ." 2476,"   $8000   ENDOF
+    ABORT" xxxx <-- unrecognized device!"
+ENDCASE
+$20 EMIT 
+['] ['] DUP @ $1287 =
+IF ." DTC=1," DROP
+ELSE 2 + @ $1287 =
+    IF ." DTC=2,"
+    ELSE ." DTC=3,"
+    THEN
+THEN
+$20 EMIT 
+$1800 @ U. #8 EMIT ." -Entry word sets, "
+$1806 @ 0 1000 UM/MOD U.
+?DUP IF #8 EMIT ." ," U.
+THEN ." MHz, "
+- U. ." bytes"
+ESC" [0m"
+
+CR ." /COUNTED-STRING   = 255"
+CR ." /HOLD             = 34"
+CR ." /PAD              = 84"
+CR ." ADDRESS-UNIT-BITS = 16"
+CR ." FLOORED           = true"
+CR ." MAX-CHAR          = 255"
+CR ." MAX-N             = 32767"
+CR ." MAX-U             = 65535"
+CR ." MAX-D             = 2147483647"
+CR ." MAX-UD            = 4294967295"
+CR ." STACK-CELLS       = 48"
+CR ." RETURN-STACK-CELLS= 48"
+
+CR CR 
+
+ESC" [7m"
+." KERNEL ADDONS"
+ESC" [0m"
+$1812 @
+    DUP 0< IF CR ." 32.768kHz XTAL" THEN
+2*  DUP 0< IF 2* CR ." 5 WIRES (RTS/CTS) UART TERMINAL"
+        ELSE 2* DUP
+            0< IF CR ." 4 WIRES (RTS) UART TERMINAL" 
+            THEN
+        THEN
+2*  DUP 0< IF CR ." 3 WIRES (XON/XOFF) UART TERMINAL" THEN
+2*  DUP 0< IF CR ." HALF-DUPLEX TERMINAL" THEN
+2*  DUP 0< IF CR ." ASM DATA ACCESS BEYOND $FFFF" THEN
+2*  DUP 0< IF CR ." BOOTLOADER" THEN
+2*  DUP 0< IF CR ." SD_CARD READ/WRITE" THEN
+2*  DUP 0< IF CR ." SD_CARD LOADER" THEN
+2*  DUP 0< IF CR ." FIXPOINT INPUT" THEN
+2*  DUP 0< IF CR ." DOUBLE INPUT" THEN
+2*  DUP 0< IF CR ." VOCABULARY SET" THEN
+2*  DUP 0< IF CR ." NONAME" THEN
+2*  DUP 0< IF CR ." EXTENDED ASSEMBLER" THEN
+2*  DUP 0< IF CR ." ASSEMBLER" THEN
+2*  DUP 0< IF CR ." CONDITIONNAL COMPILATION" THEN
+0< IF
+    CR CR ESC" [7m" 
+    ." OPTIONS"
+    ESC" [0m" CR
+    [DEFINED] {CORE_COMP} [IF] ." CORE COMPLEMENT" CR [THEN]
+    [DEFINED] {TOOLS}     [IF] ." UTILITY" CR [THEN]
+    [DEFINED] {FIXPOINT}  [IF] ." FIXPOINT" CR [THEN]
+    [DEFINED] {CORDIC}    [IF] ." CORDIC engine" CR [THEN]
+    [DEFINED] {SD_TOOLS}  [IF] ." SD_TOOLS" CR [THEN]
+    [DEFINED] {RTC}       [IF] ." RTC utilities" CR [THEN]
+    CR
+    [DEFINED] VOCABULARY [IF]
+    ESC" [7m"
+    ." ASSEMBLER word set"
+    ESC" [0m"
+    ALSO ASSEMBLER WORDS PREVIOUS CR
+    [THEN]
+THEN
+    ESC" [7m"
+    ." FORTH word set"
+    ESC" [0m"
+    WORDS
+
+CR WARM
+;
+
+SPECS
diff --git a/MSP430-FORTH/MSP_EXP430FR5994/ANS_COMP.4TH b/MSP430-FORTH/MSP_EXP430FR5994/ANS_COMP.4TH
deleted file mode 100644 (file)
index ccaba20..0000000
+++ /dev/null
@@ -1,581 +0,0 @@
-
-; -----------------------------------------------------
-; ANS_COMP.4th    words complement to pass CORETEST.4TH
-; -----------------------------------------------------
-
-[UNDEFINED] {ANS_COMP} [IF]
-
-PWR_STATE
-
-MARKER {ANS_COMP}
-
-
-[UNDEFINED] VARIABLE [IF]
-
-: VARIABLE 
-DEFER
-HI2LO
-MOV @R1+,R13
-MOV #$1286,-4(R10)
-MOV @R13+,R0
-ENDCODE
-
-[THEN]
-
-[UNDEFINED] CONSTANT [IF]
-: CONSTANT 
-DEFER
-HI2LO
-MOV @R1+,R13
-MOV #$1285,-4(R10)
-MOV R14,-2(R10)
-MOV @R15+,R14
-MOV @R13+,R0
-ENDCODE
-[THEN]
-
-$1DBE CONSTANT STATE
-
-[UNDEFINED] BASE [IF]
-$1DDC CONSTANT BASE
-[THEN]
-
-[UNDEFINED] >IN [IF]
-$1DC4 CONSTANT >IN
-[THEN]
-
-[UNDEFINED] PAD [IF]
-$1CE4 CONSTANT PAD
-[THEN]
-
-[UNDEFINED] BL [IF]
-#32 CONSTANT BL
-[THEN]
-
-[UNDEFINED] SPACE [IF]
-: SPACE
-BL EMIT ;
-[THEN]
-
-[UNDEFINED] SPACES [IF]
-CODE SPACES
-CMP #0,R14
-0<> IF
-    PUSH R13
-    BEGIN
-        LO2HI
-        BL EMIT
-        HI2LO
-        SUB #2,R13 
-        SUB #1,R14
-    0= UNTIL
-    MOV @R1+,R13
-THEN
-MOV @R15+,R14
-MOV @R13+,R0              
-ENDCODE
-[THEN]
-
-
-: VALUE
-CREATE ,
-DOES> 
-HI2LO
-MOV @R1+,R13
-BIT #$400,R2
-0= IF
-    MOV #@,R0
-THEN 
-BIC #$400,R2
-MOV #!,R0
-ENDCODE
-
-CODE TO
-BIS #$400,R2
-MOV @R13+,R0
-ENDCODE
-
-: S>D
-    DUP 0<
-;
-
-[UNDEFINED] NIP [IF]
-CODE NIP
-ADD #2,R15
-MOV @R13+,R0
-ENDCODE
-[THEN]
-
-[UNDEFINED] C@ [IF]
-CODE C@
-MOV.B @R14,R14
-MOV @R13+,R0
-ENDCODE
-[THEN]
-
-[UNDEFINED] C! [IF]
-CODE C!
-MOV.B @R15+,0(R14)
-ADD #1,R15
-MOV @R15+,R14
-MOV @R13+,R0
-ENDCODE
-[THEN]
-
-[UNDEFINED] C, [IF]
-CODE C,
-MOV &$1DC6,R10
-MOV.B R14,0(R10)
-ADD #1,&$1DC6
-MOV @R15+,R14
-MOV @R13+,R0
-ENDCODE
-[THEN]
-
-[UNDEFINED] AND [IF]
-CODE AND
-AND @R15+,R14
-MOV @R13+,R0
-ENDCODE
-[THEN]
-
-[UNDEFINED] OR [IF]
-CODE OR
-BIS @R15+,R14
-MOV @R13+,R0
-ENDCODE
-[THEN]
-
-[UNDEFINED] XOR [IF]
-CODE XOR
-XOR @R15+,R14
-MOV @R13+,R0
-ENDCODE
-[THEN]
-
-[UNDEFINED] PLUS [IF]
-CODE +
-ADD @R15+,R14
-MOV @R13+,R0
-ENDCODE
-[THEN]
-
-CODE INVERT
-XOR #-1,R14
-MOV @R13+,R0
-ENDCODE
-
-CODE <
-        SUB @R15+,R14
-        S< ?GOTO FW1
-    0<> IF
-BW1     MOV #-1,R14
-    THEN
-        MOV @R13+,R0
-ENDCODE
-
-CODE >
-        SUB @R15+,R14
-        S< ?GOTO BW1
-FW1     AND #0,R14
-        MOV @R13+,R0
-ENDCODE
-
-CODE LSHIFT
-            MOV @R15+,R10
-            AND #$1F,R14
-0<> IF
-    BEGIN   ADD R10,R10
-            SUB #1,R14
-    0= UNTIL
-THEN        MOV R10,R14
-            MOV @R13+,R0
-ENDCODE
-
-CODE RSHIFT
-            MOV @R15+,R10
-            AND #$1F,R14
-0<> IF
-    BEGIN   BIC #1,R2
-            RRC R10
-            SUB #1,R14
-    0= UNTIL
-THEN        MOV R10,R14
-            MOV @R13+,R0
-ENDCODE
-
-[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]
-
-CODE 2*
-ADD R14,R14
-MOV @R13+,R0
-ENDCODE
-
-CODE 2/
-RRA R14
-MOV @R13+,R0
-ENDCODE
-
-$1A00 4 + @ $81F3 U<
-$81EF $1A00 4 + @ U< 
-= [IF]   ; MSP430FR413x subfamily without hardware_MPY
-
-CODE M*
-MOV @R15,R12
-CMP #0,R12
-S< IF
-    XOR #-1,0(R15)
-    ADD #1,0(R15)
-THEN
-XOR R14,R12
-CMP #0,R14
-S< IF
-    XOR #-1,R14
-    ADD #1,R14
-THEN
-PUSHM #2,R13
-LO2HI
-UM*       
-HI2LO
-POPM #2,R13
-CMP #0,R12
-S< IF
-    XOR #-1,0(R15)
-    XOR #-1,R14
-    ADD #1,0(R15)
-    ADDC #0,R14
-THEN
-MOV @R13+,R0
-ENDCODE
-
-[ELSE]  ; MSP430FRxxxx with hardware_MPY
-
-CODE UM*
-    MOV @R15,&$4C0
-BW1 MOV R14,&$4C8
-    MOV &$4E4,0(R15)
-    MOV &$4E6,R14
-    MOV @R13+,R0
-ENDCODE
-
-CODE M*
-    MOV @R15,&$4C2
-    GOTO BW1
-ENDCODE
-
-[THEN]
-
-CODE UM/MOD
-    PUSH #DROP
-    MOV #<#,R9
-    ADD #8,R9
-    MOV R9,R0
-ENDCODE
-
-CODE SM/REM
-MOV R14,R12
-MOV @R15,R11
-CMP #0,R14
-S< IF
-    XOR #-1,R14
-    ADD #1,R14
-THEN
-CMP #0,0(R15)
-S< IF
-    XOR #-1,2(R15)
-    XOR #-1,0(R15)
-    ADD #1,2(R15)
-    ADDC #0,0(R15)
-THEN
-PUSHM #3,R13
-LO2HI
-    UM/MOD
-HI2LO
-POPM #3,R13
-CMP #0,R11
-S< IF
-    XOR #-1,0(R15)
-    ADD #1,0(R15)
-THEN
-XOR R12,R11
-CMP #0,R11
-S< IF
-BW1
-BW2
-    XOR #-1,R14
-    ADD #1,R14
-THEN
-MOV @R13+,R0
-ENDCODE
-
-CODE NEGATE
-GOTO BW1 
-ENDCODE
-
-CODE ABS
-CMP #0,R14
-0< ?GOTO BW2
-MOV @R13+,R0
-ENDCODE
-
-: FM/MOD
-SM/REM
-HI2LO
-CMP #0,0(R15)
-0<> IF
-    CMP #1,R14
-    S< IF
-      ADD R12,0(R15)
-      SUB #1,R14
-    THEN
-THEN
-MOV @R1+,R13
-MOV @R13+,R0
-ENDCODE
-
-: *
-M* DROP
-;
-
-: /MOD
->R DUP 0< R> FM/MOD
-;
-
-: /
->R DUP 0< R> FM/MOD NIP
-;
-
-: MOD
->R DUP 0< R> FM/MOD DROP
-;
-
-: */MOD
->R M* R> FM/MOD
-;
-
-: */
->R M* R> FM/MOD NIP
-;
-
-
-[UNDEFINED] OVER [IF]
-CODE OVER
-MOV R14,-2(R15)
-MOV @R15,R14
-SUB #2,R15
-MOV @R13+,R0
-ENDCODE
-[THEN]
-
-CODE ROT
-MOV @R15,R10
-MOV R14,0(R15)
-MOV 2(R15),R14
-MOV R10,2(R15)
-MOV @R13+,R0
-ENDCODE
-
-CODE R@
-SUB #2,R15
-MOV R14,0(R15)
-MOV @R1,R14
-MOV @R13+,R0
-ENDCODE
-
-
-[UNDEFINED] {DOUBLE} [IF]
-
-CODE 2@
-BW1 SUB #2,R15
-    MOV 2(R14),0(R15)
-    MOV @R14,R14
-    MOV @R13+,R0
-ENDCODE
-
-CODE 2!
-BW2 MOV @R15+,0(R14)
-    MOV @R15+,2(R14)
-    MOV @R15+,R14
-    MOV @R13+,R0
-ENDCODE
-
-: 2VALUE
-CREATE , ,
-DOES>
-HI2LO
-MOV @R1+,R13
-BIT #$400,R2
-0= ?GOTO BW1 
-BIC #$400,R2
-GOTO BW2
-ENDCODE
-
-CODE 2DROP
-ADD #2,R15
-MOV @R15+,R14
-MOV @R13+,R0
-ENDCODE
-
-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
-
-CODE 2OVER
-SUB #4,R15
-MOV R14,2(R15)
-MOV 8(R15),0(R15)
-MOV 6(R15),R14
-MOV @R13+,R0
-ENDCODE
-
-[THEN]
-
-CODE ALIGNED
-BIT #1,R14
-ADDC #0,R14
-MOV @R13+,R0
-ENDCODE
-
-CODE ALIGN
-BIT #1,&$1DC6
-ADDC #0,&$1DC6
-MOV @R13+,R0
-ENDCODE
-
-CODE CHARS
-MOV @R13+,R0
-ENDCODE
-
-CODE CHAR+
-ADD #1,R14
-MOV @R13+,R0
-ENDCODE
-
-CODE CELLS
-ADD R14,R14
-MOV @R13+,R0
-ENDCODE
-
-CODE CELL+
-ADD #2,R14
-MOV @R13+,R0
-ENDCODE
-
-
-: CHAR
-    BL WORD 1+ C@
-;
-
-: [CHAR]
-    CHAR POSTPONE LITERAL
-; IMMEDIATE
-
-CODE +!
-ADD @R15+,0(R14)
-MOV @R15+,R14
-MOV @R13+,R0
-ENDCODE
-
-CODE FILL
-MOV @R15+,R9
-MOV @R15+,R10
-CMP #0,R9
-0<> IF
-    BEGIN
-        MOV.B R14,0(R10)
-        ADD #1,R10
-        SUB #1,R9
-    0= UNTIL
-THEN
-MOV @R15+,R14
-MOV @R13+,R0
-ENDCODE
-
-
-CODE HEX
-MOV #$10,&BASE
-MOV @R13+,R0
-ENDCODE
-
-CODE DECIMAL
-MOV #$0A,&BASE
-MOV @R13+,R0
-ENDCODE
-
-: ( 
-$29 WORD DROP
-; IMMEDIATE
-
-CODE .(
-MOV #0,&$1DB4
-COLON
-$29 WORD
-COUNT TYPE
-BL $1DB4 !
-; IMMEDIATE
-
-CODE J
-SUB #2,R15      
-MOV R14,0(R15)
-MOV 4(R1),R14
-SUB 6(R1),R14
-MOV @R13+,R0
-ENDCODE
-
-CODE UNLOOP
-ADD #4,R1
-MOV @R13+,R0
-ENDCODE
-
-CODE LEAVE
-MOV &$1DC6,R10
-MOV #UNLOOP,0(R10)
-MOV #.,2(R10)
-ADD #8,2(R10)
-ADD #6,&$1DC6
-ADD #2,&$1C00
-ADD #4,R10
-MOV &$1C00,R9
-MOV R10,0(R9)
-MOV @R13+,R0
-ENDCODE IMMEDIATE
-
-CODE RECURSE
-MOV &$1DC6,R9
-MOV &$1DBA,0(R9)
-ADD #2,&$1DC6
-MOV @R13+,R0
-ENDCODE IMMEDIATE
-
-CODE SOURCE
-SUB #4,R15
-MOV R14,2(R15)
-MOV &$1DC0,R14
-MOV &$1DC2,0(R15)
-MOV @R13+,R0
-ENDCODE
-
-RST_HERE
-
-[THEN]
-
index 89a2804..b1c3798 100644 (file)
 \ --------------------------------------------------------------------------------
 
 
+PWR_STATE
+
+[UNDEFINED] = [IF]
+CODE =
+SUB @R15+,R14
+0<> IF
+    AND #0,R14
+    MOV @R13+,R0
+THEN
+XOR #-1,R14
+MOV @R13+,R0
+ENDCODE
+[THEN]
+
 \ it's an example:
 
 $04 = [IF]      \ if origin of SYSRST is <reset>
index 3ee4f9f..5680131 100644 (file)
 
 PWR_STATE
 
-[UNDEFINED] CONSTANT [IF]
-: CONSTANT 
-DEFER
-HI2LO
-MOV @R1+,R13
-MOV #$1285,-4(R10)
-MOV R14,-2(R10)
-MOV @R15+,R14
+[UNDEFINED] SWAP [IF]
+CODE SWAP
+MOV @R15,R10
+MOV R14,0(R15)
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE
+[THEN]
+
+[UNDEFINED] = [IF]
+CODE =
+SUB @R15+,R14
+0<> IF
+    AND #0,R14
+ELSE
+    XOR #-1,R14
+THEN
+MOV @R13+,R0
+ENDCODE
+[THEN]
+
+[UNDEFINED] 0= [IF]
+CODE 0=
+SUB #1,R14
+SUBC R14,R14
 MOV @R13+,R0
 ENDCODE
 [THEN]
 
-[UNDEFINED] BL [IF]
-#32 CONSTANT BL
+[UNDEFINED] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] BEGIN [IF]
+CODE BEGIN
+MOV #HERE,R0
+ENDCODE IMMEDIATE
 [THEN]
 
-[UNDEFINED] SPACE [IF]
-: SPACE
-BL EMIT ;
+[UNDEFINED] AGAIN [IF]
+CODE AGAIN
+MOV #$4048,R9
+GOTO BW1
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] WHILE [IF]
+: WHILE
+POSTPONE IF SWAP
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] REPEAT [IF]
+: REPEAT
+POSTPONE AGAIN POSTPONE THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] DO [IF]
+CODE DO
+SUB #2,R15
+MOV R14,0(R15)
+ADD #2,&$1DC6
+MOV &$1DC6,R14
+MOV #$4056,-2(R14)
+ADD #2,&$1C00
+MOV &$1C00,R10
+MOV #0,0(R10)
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] LOOP [IF]
+CODE LOOP
+    MOV #$4078,R9
+BW1 ADD #4,&$1DC6
+    MOV &$1DC6,R10
+    MOV R9,-4(R10)
+    MOV R14,-2(R10)
+BEGIN
+    MOV &$1C00,R14
+    SUB #2,&$1C00
+    MOV @R14,R14
+    CMP #0,R14
+0<> WHILE
+    MOV R10,0(R14)
+REPEAT
+    MOV @R15+,R14
+    MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] >R [IF]
+CODE >R
+PUSH R14
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE
+[THEN]
+
+[UNDEFINED] R> [IF]
+CODE R>
+MOV R6,R0
+ENDCODE
 [THEN]
 
 [UNDEFINED] R@ [IF]
@@ -35,6 +148,39 @@ MOV @R13+,R0
 ENDCODE
 [THEN]
 
+[UNDEFINED] DROP [IF]
+CODE DROP
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE
+[THEN]
+
+[UNDEFINED] ?DUP [IF]
+CODE ?DUP
+CMP #0,R14
+0<> IF
+    SUB #2,R15
+    MOV R14,0(R15)
+THEN
+MOV @R13+,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] < [IF]
 CODE <
     SUB @R15+,R14
@@ -53,52 +199,61 @@ FW1 AND #0,R14
 ENDCODE
 [THEN]
 
+[UNDEFINED] - [IF]
+CODE -
+SUB @R15+,R14
+XOR #-1,R14
+ADD #1,R14
+MOV @R13+,R0
+ENDCODE
+[THEN]
+
 [UNDEFINED] UM/MOD [IF]
 CODE UM/MOD
     PUSH #DROP
-    MOV #<#,R9
-    ADD #8,R9
-    MOV R9,R0
+    MOV #$407E,R0
 ENDCODE
 [THEN]
 
-: MCLK.
-0 1000 UM/MOD .
-;
-
-: ESC #27 EMIT ;
+[UNDEFINED] ESC" [IF]
+: ESC" $1B POSTPONE LITERAL POSTPONE EMIT POSTPONE S" POSTPONE TYPE ; IMMEDIATE
+[THEN]
 
 : BAD_MHz
-    1 ABORT"  only for 1,4,8,16,24 MHz MCLK!"
+$20 EMIT 1 ABORT" only for 1,4,8,16,24 MHz MCLK!"
 ;
 
-: BAD_SPEED
-SPACE ESC ." [7m"
-." with MCLK = " MCLK. 1 ABORT" MHz? don't dream!"
+: OVR_BAUDS
+$20 EMIT ESC" [7m"
+." with MCLK = " $1806 @ 0 1000 UM/MOD . DROP
+1 ABORT" MHz? don't dream!"
 ;
 
 : <> = 0= ;
 
 : CHNGBAUD
 PWR_STATE
-
+ECHO
 42
 0 DO CR LOOP
 
-ESC ." [1J"
-ESC ." [H"
+ESC" [1J"
+ESC" [H"
 
 $1806 @ >R
-." target MCLK = " R@ MCLK. ." MHz" CR
+." target MCLK = " R@ 0 1000 UM/MOD . ." MHz" DROP CR
 ." choose your baudrate:" CR
-." 0 --> 6 MBds" CR
-." 1 --> 5 MBds" CR
-." 2 --> 4 MBds" CR
-." 3 --> 2457600 Bds" CR
-." 4 --> 921600 Bds" CR
-." 5 --> 460800 Bds" CR
-." 6 --> 230400 Bds" CR
-." 7 --> 115200 Bds" CR
+."  0 --> 6 MBds" CR
+."  1 --> 5 MBds" CR
+."  2 --> 4 MBds" CR
+."  3 --> 2457600 Bds" CR
+."  4 --> 921600 Bds" CR
+."  5 --> 460800 Bds" CR
+."  6 --> 230400 Bds" CR
+."  7 --> 115200 Bds" CR
+."  8 --> 38400 Bds" CR
+."  9 --> 19200 Bds" CR
+."  A --> 9600 Bds" CR
 ." other --> abort" CR
 ." your choice: "
 KEY
@@ -106,129 +261,93 @@ KEY
 #48 - ?DUP 0=
 IF  ." 6 MBds"
     R@ #24000 <
-    IF  R@ BAD_SPEED
-    THEN
+    IF  OVR_BAUDS THEN
     R@ #24000 <>
-    IF  BAD_MHz
-    THEN                
+    IF  BAD_MHz  THEN
     $4
     $0
 ELSE 1 - ?DUP 0=
     IF  ." 5 MBds"
         R@ #16000 <
-        IF  R@ BAD_SPEED
-        THEN
+        IF  OVR_BAUDS THEN
         R@ #16000 =
         IF  $3
             $2100
         ELSE R@ #24000 <>
-            IF  BAD_MHz
-            THEN
+            IF  BAD_MHz  THEN
             $4
             $EE00
         THEN
     ELSE 1 - ?DUP 0=
         IF  ." 4 MBds"
             R@ #16000 <
-            IF  R@ BAD_SPEED
-            THEN
+            IF  OVR_BAUDS THEN
             R@ #16000 =
-                IF  $4
-                    $0
+                IF  $4 $0
                 ELSE R@ #24000 <>
-                    IF  BAD_MHz
-                    THEN
-                    $6
-                    $0
+                    IF  BAD_MHz  THEN
+                    $6 $0
                 THEN
         ELSE 1 - ?DUP 0=
             IF  ." 2457600 Bds"
                 R@ #8000 <
-                IF  R@ BAD_SPEED
-                THEN
+                IF  OVR_BAUDS THEN
                 R@ #8000 =
-                IF  $3
-                    $4400
+                IF  $3 $4400
                 ELSE R@ #16000 =
-                    IF  $6
-                        $AA00
+                    IF  $6 $AA00
                     ELSE R@ #24000 <>
-                        IF  BAD_MHz
-                        THEN
-                        $9
-                        $DD00
+                        IF  BAD_MHz  THEN
+                        $9 $DD00
                     THEN
                 THEN
             ELSE 1 - ?DUP 0=
                 IF  ." 921600 Bds"
                     R@ #4000 <
-                    IF  R@ BAD_SPEED
-                    THEN
+                    IF  OVR_BAUDS THEN
                     R@ #4000 =
-                    IF  4
-                        $4900
-                    ELSE
-                        R@ #8000 =
-                        IF  8
-                            $D600
+                    IF  4 $4900
+                    ELSE R@ #8000 =
+                        IF  8 $D600
                         ELSE R@ #16000 =
-                            IF  $11
-                                $4A00
+                            IF  $11 $4A00
                             ELSE R@ #24000 <>
-                                IF  BAD_MHz
-                                THEN
-                                $1
-                                $00A1
+                                IF  BAD_MHz  THEN
+                                $1 $00A1
                             THEN
                         THEN
                     THEN
                 ELSE 1 - ?DUP 0=
                     IF  ." 460800 Bds"
                         R@ #4000 <
-                        IF  R@ BAD_SPEED
-                        THEN
+                        IF  OVR_BAUDS THEN
                         R@ #4000  =
-                        IF  8
-                            $D600
-                        ELSE
-                            R@ #8000  =
-                            IF  17
-                                $4A00
+                        IF  8 $D600
+                        ELSE R@ #8000  =
+                            IF $11 $4A00
                             ELSE R@ #16000 =
-                                IF  2
-                                    $BB21
+                                IF $2 $BB21
                                 ELSE R@ #24000 <>
-                                    IF  BAD_MHz
-                                    THEN
-                                    6
-                                    $0001
+                                    IF  BAD_MHz  THEN
+                                    $6 $0001
                                 THEN
                             THEN
                         THEN
                     ELSE 1 - ?DUP 0=
                         IF  ." 230400 Bds"
                             R@ #1000 <
-                            IF  R@ BAD_SPEED
-                            THEN
+                            IF  OVR_BAUDS THEN
                             R@ #1000 =
-                            IF  4
-                                $4900
-                            ELSE
-                                R@ #4000  =
-                                IF  17
-                                    $4A00
-                                ELSE
-                                    R@ #8000  =
-                                    IF  2
-                                        $BB21
+                            IF  4 $4900
+                            ELSE R@ #4000  =
+                                IF $11 $4A00
+                                ELSE R@ #8000  =
+                                    IF  2 $BB21
                                     ELSE R@ #16000 =
-                                        IF  4
-                                            $5551
+                                        IF  4 $5551
                                         ELSE R@ #24000 <>
-                                            IF  BAD_MHz
-                                            THEN
-                                            3
-                                            $0241
+                                            IF  BAD_MHz  THEN
+                                            3 $0241
                                         THEN
                                     THEN
                                 THEN
@@ -236,30 +355,76 @@ ELSE 1 - ?DUP 0=
                         ELSE 1 - ?DUP 0=
                             IF  ." 115200 Bds"
                                 R@ #1000  =
-                                IF  8
-                                    $D600
-                                ELSE
-                                    R@ #4000  =
-                                    IF  2
-                                        $BB21
-                                    ELSE
-                                        R@ #8000  =
-                                        IF  4
-                                            $5551
+                                IF  8 $D600
+                                ELSE R@ #4000  =
+                                    IF  2 $BB21
+                                    ELSE R@ #8000  =
+                                        IF  4 $5551
                                         ELSE R@ #16000 =
-                                            IF  8
-                                                $F7A1
+                                            IF  8 $F7A1
                                             ELSE R@ #24000 <>
-                                                IF  BAD_MHz
+                                                IF  BAD_MHz  THEN
+                                                $0D $4901
+                                            THEN
+                                        THEN
+                                    THEN
+                                THEN
+                            ELSE 1 - ?DUP 0=
+                                IF  ." 38400 Bds"
+                                    R@ #1000  =
+                                    IF  $1  $00A1
+                                    ELSE R@ #4000  =
+                                        IF  $6  $2081
+                                        ELSE R@ #8000  =
+                                            IF  $0D $4901
+                                            ELSE R@ #16000 =
+                                                IF  $1A $D601
+                                                ELSE R@ #24000 <>
+                                                    IF  BAD_MHz  THEN
+                                                    $27 $0011
+                                                THEN
+                                            THEN
+                                        THEN
+                                    THEN
+                                ELSE 1 - ?DUP 0=
+                                    IF  ." 19200 Bds"
+                                        R@ #1000  =
+                                        IF  $3  $0241
+                                        ELSE R@ #4000  =
+                                            IF  $0D $4901
+                                            ELSE R@ #8000  =
+                                                IF  $1A $D601
+                                                ELSE R@ #16000 =
+                                                    IF  $34 $4911
+                                                    ELSE R@ #24000 <>
+                                                        IF  BAD_MHz  THEN
+                                                        $4E $0021
+                                                    THEN
+                                                THEN
+                                            THEN
+                                        THEN
+                                    ELSE 8 - ?DUP 0=
+                                        IF  ." 9600 Bds"
+                                            R@ #1000  =
+                                            IF  $6  $2081
+                                            ELSE R@ #4000  =
+                                                IF  $1A $D601
+                                                ELSE R@ #8000  =
+                                                    IF  $34 $4911
+                                                    ELSE R@ #16000 =
+                                                        IF  $68 $D621
+                                                        ELSE R@ #24000 <>
+                                                            IF  BAD_MHz  THEN
+                                                            $9C $0041
+                                                        THEN
+                                                    THEN
                                                 THEN
-                                                $0D
-                                                $4901
                                             THEN
+                                        ELSE
+                                            ." abort" CR ABORT
                                         THEN
                                     THEN
                                 THEN
-                            ELSE
-                                ." abort" CR ABORT
                             THEN
                         THEN
                     THEN
@@ -271,8 +436,8 @@ THEN
 $1804 !
 $1802 !
 R> DROP
-CR ESC ." [7m"
-." Change baudrate in Teraterm, save its setup then reset target."
+CR ESC" [7m"
+." Change baudrate in Teraterm, save its setup, then reset target."
 ;
 
-ECHO CHNGBAUD 
+CHNGBAUD 
diff --git a/MSP430-FORTH/MSP_EXP430FR5994/COMPARE.4TH b/MSP430-FORTH/MSP_EXP430FR5994/COMPARE.4TH
new file mode 100644 (file)
index 0000000..00a7d23
--- /dev/null
@@ -0,0 +1,64 @@
+
+[UNDEFINED] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] BEGIN [IF]
+CODE BEGIN
+MOV #HERE,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] UNTIL [IF]
+CODE UNTIL
+    MOV #$404C,R9
+BW1 ADD #4,&$1DC6
+    MOV &$1DC6,R10
+    MOV R9,-4(R10)
+    MOV R14,-2(R10)
+    MOV @R15+,R14
+    MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+CODE COMPARE
+        MOV R14,R12
+        MOV @R15+,R8
+        MOV @R15+,R11
+        MOV @R15+,R9
+BEGIN   MOV R11,R14
+        ADD R12,R14
+        0= ?GOTO FW3
+        SUB #1,R12
+        0< ?GOTO FW2
+        SUB #1,R11
+        0< ?GOTO FW1
+        ADD #1,R9
+        CMP.B @R8+,-1(R9)
+0<> UNTIL
+    U< IF
+FW1     MOV #-1,R14
+        MOV @R13+,R0
+    THEN
+FW2     MOV #1,R14
+FW3     MOV @R13+,R0
+ENDCODE
+
+
+
index f61fa0e..31bba0e 100644 (file)
 ; ----------
 ; CORDIC.4th
 ; ----------
+; -----------------------------------------------------------
+; requires FIXPOINT_INPUT kernel addon, see forthMSP430FR.asm
+; -----------------------------------------------------------
 
 
 PWR_STATE
 
 [UNDEFINED] {CORDIC} [IF] 
 
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
+
 MARKER {CORDIC}
 
+[UNDEFINED] SWAP [IF]
+CODE SWAP
+MOV @R15,R10
+MOV R14,0(R15)
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE
+[THEN]
+
+[UNDEFINED] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] BEGIN [IF]
+CODE BEGIN
+MOV #HERE,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] UNTIL [IF]
+CODE UNTIL
+    MOV #$404C,R9
+BW1 ADD #4,&$1DC6
+    MOV &$1DC6,R10
+    MOV R9,-4(R10)
+    MOV R14,-2(R10)
+    MOV @R15+,R14
+    MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] AGAIN [IF]
+CODE AGAIN
+MOV #$4048,R9
+GOTO BW1
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] WHILE [IF]
+: WHILE
+POSTPONE IF SWAP
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] REPEAT [IF]
+: REPEAT
+POSTPONE AGAIN POSTPONE THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] DO [IF]
+CODE DO
+SUB #2,R15
+MOV R14,0(R15)
+ADD #2,&$1DC6
+MOV &$1DC6,R14
+MOV #$4056,-2(R14)
+ADD #2,&$1C00
+MOV &$1C00,R10
+MOV #0,0(R10)
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] LOOP [IF]
+CODE LOOP
+    MOV #$4078,R9
+    ADD #4,&$1DC6
+    MOV &$1DC6,R10
+    MOV R9,-4(R10)
+    MOV R14,-2(R10)
+BEGIN
+    MOV &$1C00,R14
+    SUB #2,&$1C00
+    MOV @R14,R14
+    CMP #0,R14
+0<> WHILE
+    MOV R10,0(R14)
+REPEAT
+    MOV @R15+,R14
+    MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+
 [UNDEFINED] {FIXPOINT} [IF]
 
 [UNDEFINED] DABS [IF]
 CODE DABS
-MOV #1-,R9
-ADD #4,R9
-MOV R9,R0
+AND #-1,R14
+S< IF
+    XOR #-1,0(R15)
+    XOR #-1,R14
+    ADD #1,0(R15)
+    ADDC #0,R14
+THEN
+MOV @R13+,R0
 ENDCODE
 [THEN]
 
-
 CODE HOLDS
 BW1         MOV @R15+,R9
             ADD R14,R9
@@ -57,9 +196,10 @@ BEGIN       MOV @R15,&$4C0
             GOTO BW1
 ENDCODE
 
-[UNDEFINED] SPACE [IF]
-: SPACE
-$20 EMIT ;
+[UNDEFINED] R> [IF]
+CODE R>
+MOV R6,R0
+ENDCODE
 [THEN]
 
 CODE F.
@@ -82,7 +222,7 @@ LO2HI
     $2C HOLD
     #S
     R> SIGN #>
-    TYPE SPACE
+    TYPE $20 EMIT
 ;
 
 [THEN]
@@ -284,6 +424,10 @@ LOOP
 
 ECHO
 
+; -----------------------------------------------------------
+; requires FIXPOINT_INPUT kernel addon, see forthMSP430FR.asm
+; -----------------------------------------------------------
+
 10000 89,0 POL2REC . .  ; sin, cos --> 
 10000 75,0 POL2REC . .  ; sin, cos --> 
 10000 60,0 POL2REC . .  ; sin, cos --> 
diff --git a/MSP430-FORTH/MSP_EXP430FR5994/CORECOMP.4TH b/MSP430-FORTH/MSP_EXP430FR5994/CORECOMP.4TH
new file mode 100644 (file)
index 0000000..bc77d10
--- /dev/null
@@ -0,0 +1,1018 @@
+
+; -----------------------------------------------------
+; CORECOMP.4th    words complement to pass CORETEST.4TH
+; -----------------------------------------------------
+
+PWR_STATE
+
+[DEFINED] {CORE_COMP} [IF]  {CORE_COMP} [THEN]
+
+[UNDEFINED] {CORE_COMP} [IF]
+
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
+
+MARKER {CORE_COMP}
+
+[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] @ [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] 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] EXIT [IF]
+CODE EXIT
+MOV @R1+,R13
+MOV @R13+,R0
+
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEPTH [IF]
+CODE DEPTH
+MOV R14,-2(R15)
+MOV #$1C80,R14
+SUB R15,R14
+RRA R14
+SUB #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] DROP [IF]
+CODE DROP
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE
+[THEN]
+
+[UNDEFINED] NIP [IF]
+CODE NIP
+ADD #2,R15
+MOV @R13+,R0
+ENDCODE
+[THEN]
+
+[UNDEFINED] >R [IF]
+CODE >R
+PUSH R14
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE
+[THEN]
+
+[UNDEFINED] R> [IF]
+CODE R>
+SUB #2,R15
+MOV R14,0(R15)
+MOV @R1+,R14
+MOV @R13+,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] C! [IF]
+CODE C!
+MOV.B @R15+,0(R14)
+ADD #1,R15
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE
+[THEN]
+
+[UNDEFINED] C, [IF]
+CODE C,
+MOV &$1DC6,R10
+MOV.B R14,0(R10)
+ADD #1,&$1DC6
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE
+[THEN]
+
+[UNDEFINED] 0= [IF]
+CODE 0=
+SUB #1,R14
+SUBC R14,R14
+MOV @R13+,R0
+ENDCODE
+[THEN]
+
+[UNDEFINED] 0< [IF]
+CODE 0<
+ADD R14,R14
+SUBC R14,R14
+XOR #-1,R14
+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]
+CODE <
+        SUB @R15+,R14
+        S< ?GOTO FW1
+        0<> IF
+BW1         MOV #-1,R14
+        THEN
+        MOV @R13+,R0
+ENDCODE
+
+CODE >
+        SUB @R15+,R14
+        S< ?GOTO BW1
+FW1     AND #0,R14
+        MOV @R13+,R0
+ENDCODE
+[THEN]
+
+[UNDEFINED] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] BEGIN [IF]
+CODE BEGIN
+MOV #HERE,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] UNTIL [IF]
+CODE UNTIL
+    MOV #$404C,R9
+BW1 ADD #4,&$1DC6
+    MOV &$1DC6,R10
+    MOV R9,-4(R10)
+    MOV R14,-2(R10)
+    MOV @R15+,R14
+    MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] AGAIN [IF]
+CODE AGAIN
+MOV #$4048,R9
+GOTO BW1
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] WHILE [IF]
+: WHILE
+POSTPONE IF SWAP
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] REPEAT [IF]
+: REPEAT
+POSTPONE AGAIN POSTPONE THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] DO [IF]
+CODE DO
+SUB #2,R15
+MOV R14,0(R15)
+ADD #2,&$1DC6
+MOV &$1DC6,R14
+MOV #$4056,-2(R14)
+ADD #2,&$1C00
+MOV &$1C00,R10
+MOV #0,0(R10)
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] LOOP [IF]
+CODE LOOP
+    MOV #$4078,R9
+BW1 ADD #4,&$1DC6
+    MOV &$1DC6,R10
+    MOV R9,-4(R10)
+    MOV R14,-2(R10)
+BEGIN
+    MOV &$1C00,R14
+    SUB #2,&$1C00
+    MOV @R14,R14
+    CMP #0,R14
+0<> WHILE
+    MOV R10,0(R14)
+REPEAT
+    MOV @R15+,R14
+    MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] +LOOP [IF]
+CODE +LOOP
+MOV #$4066,R9
+GOTO BW1
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] I [IF]
+CODE I
+SUB #2,R15
+MOV R14,0(R15)
+MOV @R1,R14
+SUB 2(R1),R14
+MOV @R13+,R0
+ENDCODE
+[THEN]
+
+[UNDEFINED] J [IF]
+CODE J
+SUB #2,R15      
+MOV R14,0(R15)
+MOV 4(R1),R14
+SUB 6(R1),R14
+MOV @R13+,R0
+ENDCODE
+[THEN]
+
+[UNDEFINED] UNLOOP [IF]
+CODE UNLOOP
+ADD #4,R1
+MOV @R13+,R0
+ENDCODE
+[THEN]
+
+[UNDEFINED] LEAVE [IF]
+CODE LEAVE
+MOV &$1DC6,R10
+MOV #UNLOOP,0(R10)
+MOV #$4048,2(R10)
+ADD #6,&$1DC6
+ADD #2,&$1C00
+ADD #4,R10
+MOV &$1C00,R9
+MOV R10,0(R9)
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] AND [IF]
+CODE AND
+AND @R15+,R14
+MOV @R13+,R0
+ENDCODE
+[THEN]
+
+[UNDEFINED] OR [IF]
+CODE OR
+BIS @R15+,R14
+MOV @R13+,R0
+ENDCODE
+[THEN]
+
+[UNDEFINED] XOR [IF]
+CODE XOR
+XOR @R15+,R14
+MOV @R13+,R0
+ENDCODE
+[THEN]
+
+[UNDEFINED] S>D [IF]
+: S>D
+    DUP 0<
+;
+[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] 1+ [IF]
+CODE 1+
+ADD #1,R14
+MOV @R13+,R0
+ENDCODE
+[THEN]
+
+[UNDEFINED] 1- [IF]
+CODE 1-
+SUB #1,R14
+MOV @R13+,R0
+ENDCODE
+[THEN]
+
+[UNDEFINED] INVERT [IF]
+CODE INVERT
+XOR #-1,R14
+MOV @R13+,R0
+ENDCODE
+[THEN]
+
+[UNDEFINED] LSHIFT [IF]
+CODE LSHIFT
+            MOV @R15+,R10
+            AND #$1F,R14
+0<> IF
+    BEGIN   ADD R10,R10
+            SUB #1,R14
+    0= UNTIL
+THEN        MOV R10,R14
+            MOV @R13+,R0
+ENDCODE
+[THEN]
+
+[UNDEFINED] RSHIFT [IF]
+CODE RSHIFT
+            MOV @R15+,R10
+            AND #$1F,R14
+0<> IF
+    BEGIN   BIC #1,R2
+            RRC R10
+            SUB #1,R14
+    0= UNTIL
+THEN        MOV R10,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]
+
+[THEN]
+
+[UNDEFINED] 2* [IF]
+CODE 2*
+ADD R14,R14
+MOV @R13+,R0
+ENDCODE
+[THEN]
+
+[UNDEFINED] 2/ [IF]
+CODE 2/
+RRA R14
+MOV @R13+,R0
+ENDCODE
+[THEN]
+
+[UNDEFINED] M* [IF]
+
+$1A00 4 + @ $81F3 U<
+$81EF $1A00 4 + @ U< 
+= [IF]   ; MSP430FR2xxx|MSP430FR4xxx subfamilies without hardware_MPY
+
+CODE M*
+MOV @R15,R12
+CMP #0,R12
+S< IF
+    XOR #-1,0(R15)
+    ADD #1,0(R15)
+THEN
+XOR R14,R12
+CMP #0,R14
+S< IF
+    XOR #-1,R14
+    ADD #1,R14
+THEN
+PUSHM #2,R13
+LO2HI
+UM*       
+HI2LO
+POPM #2,R13
+CMP #0,R12
+S< IF
+    XOR #-1,0(R15)
+    XOR #-1,R14
+    ADD #1,0(R15)
+    ADDC #0,R14
+THEN
+MOV @R13+,R0
+ENDCODE
+
+[ELSE]  ; MSP430FRxxxx with hardware_MPY
+
+CODE UM*
+    MOV @R15,&$4C0
+BW1 MOV R14,&$4C8
+    MOV &$4E4,0(R15)
+    MOV &$4E6,R14
+    MOV @R13+,R0
+ENDCODE
+
+CODE M*
+    MOV @R15,&$4C2
+    GOTO BW1
+ENDCODE
+
+[THEN]
+
+[THEN]
+
+[UNDEFINED] UM/MOD [IF]
+CODE UM/MOD
+    PUSH #DROP
+    MOV #$407E,R0
+ENDCODE
+[THEN]
+
+[UNDEFINED] SM/REM [IF]
+CODE SM/REM
+MOV R14,R12
+MOV @R15,R11
+CMP #0,R14
+S< IF
+    XOR #-1,R14
+    ADD #1,R14
+THEN
+CMP #0,0(R15)
+S< IF
+    XOR #-1,2(R15)
+    XOR #-1,0(R15)
+    ADD #1,2(R15)
+    ADDC #0,0(R15)
+THEN
+PUSHM #3,R13
+LO2HI
+    UM/MOD
+HI2LO
+POPM #3,R13
+CMP #0,R11
+S< IF
+    XOR #-1,0(R15)
+    ADD #1,0(R15)
+THEN
+XOR R12,R11
+CMP #0,R11
+S< IF
+    XOR #-1,R14
+    ADD #1,R14
+THEN
+MOV @R13+,R0
+ENDCODE
+[THEN]
+
+[UNDEFINED] NEGATE [IF]
+CODE NEGATE
+XOR #-1,R14
+ADD #1,R14
+MOV @R13+,R0
+ENDCODE
+[THEN]
+
+[UNDEFINED] ABS [IF]
+CODE ABS
+CMP #0,R14
+0>= IF
+    MOV @R13+,R0
+THEN
+MOV #NEGATE,R0
+ENDCODE
+[THEN]
+
+[UNDEFINED] FM/MOD [IF]
+: FM/MOD
+SM/REM
+HI2LO
+CMP #0,0(R15)
+0<> IF
+    CMP #1,R14
+    S< IF
+      ADD R12,0(R15)
+      SUB #1,R14
+    THEN
+THEN
+MOV @R1+,R13
+MOV @R13+,R0
+ENDCODE
+[THEN]
+
+[UNDEFINED] * [IF]
+: *
+M* DROP
+;
+[THEN]
+
+[UNDEFINED] /MOD [IF]
+: /MOD
+>R DUP 0< R> FM/MOD
+;
+[THEN]
+
+[UNDEFINED] / [IF]
+: /
+>R DUP 0< R> FM/MOD NIP
+;
+[THEN]
+
+[UNDEFINED] MOD [IF]
+: MOD
+>R DUP 0< R> FM/MOD DROP
+;
+[THEN]
+
+[UNDEFINED] */MOD [IF]
+: */MOD
+>R M* R> FM/MOD
+;
+[THEN]
+
+[UNDEFINED] */ [IF]
+: */
+>R M* R> FM/MOD NIP
+;
+
+[UNDEFINED] OVER [IF]
+CODE OVER
+MOV R14,-2(R15)
+MOV @R15,R14
+SUB #2,R15
+MOV @R13+,R0
+ENDCODE
+[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]
+[THEN]
+
+[UNDEFINED] R@ [IF]
+CODE R@
+SUB #2,R15
+MOV R14,0(R15)
+MOV @R1,R14
+MOV @R13+,R0
+ENDCODE
+[THEN]
+
+[UNDEFINED] 2@ [IF]
+CODE 2@
+BW1 SUB #2,R15
+    MOV 2(R14),0(R15)
+    MOV @R14,R14
+    MOV @R13+,R0
+ENDCODE
+[THEN]
+
+[UNDEFINED] 2! [IF]
+CODE 2!
+BW2 MOV @R15+,0(R14)
+    MOV @R15+,2(R14)
+    MOV @R15+,R14
+    MOV @R13+,R0
+ENDCODE
+[THEN]
+
+[UNDEFINED] 2DUP [IF]
+CODE 2DUP
+MOV R14,-2(R15)
+MOV @R15,-4(R15)
+SUB #4,R15
+MOV @R13+,R0
+ENDCODE
+[THEN]
+
+[UNDEFINED] 2DROP [IF]
+CODE 2DROP
+ADD #2,R15
+MOV @R15+,R14
+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] 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] ALIGNED [IF]
+CODE ALIGNED
+BIT #1,R14
+ADDC #0,R14
+MOV @R13+,R0
+ENDCODE
+[THEN]
+
+[UNDEFINED] ALIGN [IF]
+CODE ALIGN
+BIT #1,&$1DC6
+ADDC #0,&$1DC6
+MOV @R13+,R0
+ENDCODE
+[THEN]
+
+
+[UNDEFINED] CHARS [IF]
+CODE CHARS
+MOV @R13+,R0
+ENDCODE
+[THEN]
+
+[UNDEFINED] CHAR+ [IF]
+CODE CHAR+
+ADD #1,R14
+MOV @R13+,R0
+ENDCODE
+[THEN]
+
+[UNDEFINED] CELLS [IF]
+CODE CELLS
+ADD R14,R14
+MOV @R13+,R0
+ENDCODE
+[THEN]
+
+[UNDEFINED] CELL+ [IF]
+CODE CELL+
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE
+[THEN]
+
+
+[UNDEFINED] CHAR [IF]
+: CHAR
+    $20 WORD 1+ C@
+;
+[THEN]
+
+[UNDEFINED] [CHAR] [IF]
+: [CHAR]
+    CHAR POSTPONE LITERAL
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] +! [IF]
+CODE +!
+ADD @R15+,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE
+[THEN]
+
+[UNDEFINED] MOVE [IF]
+CODE MOVE
+MOV R14,R10
+MOV @R15+,R8
+MOV @R15+,R9
+MOV @R15+,R14
+CMP #0,R10
+0<> IF
+    CMP R9,R8
+    0<> IF
+        U< IF
+            BEGIN
+                MOV.B @R9+,0(R8)
+                ADD #1,R8
+                SUB #1,R10
+            0= UNTIL
+            MOV @R13+,R0
+        THEN
+        ADD R10,R8
+        ADD R10,R9
+        BEGIN
+            SUB #1,R9
+            SUB #1,R8
+            MOV.B @R9,0(R8)
+            SUB #1,R10
+        0= UNTIL
+    THEN
+THEN
+MOV @R13+,R0
+ENDCODE
+[THEN]
+
+
+[UNDEFINED] FILL [IF]
+CODE FILL
+MOV @R15+,R9
+MOV @R15+,R10
+CMP #0,R9
+0<> IF
+    BEGIN
+        MOV.B R14,0(R10)
+        ADD #1,R10
+        SUB #1,R9
+    0= UNTIL
+THEN
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE
+[THEN]
+
+[UNDEFINED] HERE [IF]
+CODE HERE
+MOV #BEGIN,R0
+ENDCODE
+[THEN]
+
+
+[UNDEFINED] HEX [IF]
+CODE HEX
+MOV #$10,&$1DDC
+MOV @R13+,R0
+ENDCODE
+[THEN]
+
+[UNDEFINED] DECIMAL [IF]
+CODE DECIMAL
+MOV #$0A,&$1DDC
+MOV @R13+,R0
+ENDCODE
+[THEN]
+
+[UNDEFINED] ( [IF]
+: ( 
+$29 WORD DROP
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] .( [IF]
+CODE .(
+MOV #0,&$1DB4
+COLON
+$29 WORD
+COUNT TYPE
+$20 $1DB4 !
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+CODE >BODY
+ADD #4,R14
+MOV @R13+,R0
+ENDCODE
+[THEN]
+
+[UNDEFINED] EXECUTE [IF]
+CODE EXECUTE
+MOV R14,R10
+MOV @R15+,R14
+MOV R10,R0
+ENDCODE
+[THEN]
+
+[UNDEFINED] RECURSE [IF]
+CODE RECURSE
+MOV &$1DC6,R9
+MOV &$1DBA,0(R9)
+ADD #2,&$1DC6
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] SOURCE [IF]
+CODE SOURCE
+SUB #4,R15
+MOV R14,2(R15)
+MOV &$1DC0,R14
+MOV &$1DC2,0(R15)
+MOV @R13+,R0
+ENDCODE
+[THEN]
+
+
+[UNDEFINED] VARIABLE [IF]
+: VARIABLE 
+CREATE
+2 ALLOT
+;
+[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]
+$1DBE CONSTANT STATE
+[THEN]
+
+[UNDEFINED] BASE [IF]
+$1DDC CONSTANT BASE
+[THEN]
+
+[UNDEFINED] >IN [IF]
+$1DC4 CONSTANT >IN
+[THEN]
+
+[UNDEFINED] PAD [IF]
+$1CE4 CONSTANT PAD
+[THEN]
+
+[UNDEFINED] BL [IF]
+$20 CONSTANT BL
+[THEN]
+
+[UNDEFINED] SPACE [IF]
+: SPACE
+$20 EMIT ;
+[THEN]
+
+[UNDEFINED] SPACES [IF]
+CODE SPACES
+CMP #0,R14
+0<> IF
+    PUSH R13
+    BEGIN
+        LO2HI
+        $20 EMIT
+        HI2LO
+        SUB #2,R13 
+        SUB #1,R14
+    0= UNTIL
+    MOV @R1+,R13
+THEN
+MOV @R15+,R14
+MOV @R13+,R0              
+ENDCODE
+[THEN]
+
+RST_HERE
+
+[THEN]
+
+ECHO
index abe9c36..30df14a 100644 (file)
@@ -1,28 +1,19 @@
 
 PWR_STATE
 
-: ESC #27 EMIT ;
-
 : ANSCOMPNOTFOUND
-ECHO
-41              \ number of terminal lines -1  
-0 DO CR LOOP    \ don't erase any line of source
-ESC ." [1J"     \ erase up (41 empty lines)
-ESC ." [H"      \ cursor home
-1 ABORT" {ANS_COMP} word set not found!"
+$0D EMIT   \ return to column 1
+1 ABORT" {CORE_COMP} word set not found!"
 ;
 
+[DEFINED] {CORE_COMP} [IF]
+
 : CORETESTSUCCESS
-ECHO
-41              \ number of terminal lines -1 
-0 DO CR LOOP    \ don't erase any line of source
-ESC ." [1J"     \ erase up (41 empty lines)
-ESC ." [H"      \ cursor home
+$0A BASE !
+$0D EMIT   \ return to column 1
 1 ABORT" CORE tests success!"
 ;
 
-[DEFINED] {ANS_COMP} [IF]
-
 
 \ From: John Hayes S1I
 \ Subject: tester.fr
@@ -192,10 +183,10 @@ T{ MSB 1 RSHIFT 2* -> MSB }T
 
 \ ------------------------------------------------------------------------
 TESTING COMPARISONS: 0= = 0< < > U< MIN MAX
-0 INVERT            CONSTANT MAX-UINT
-0 INVERT 1 RSHIFT       CONSTANT MAX-INT
+0 INVERT                    CONSTANT MAX-UINT
+0 INVERT 1 RSHIFT           CONSTANT MAX-INT
 0 INVERT 1 RSHIFT INVERT    CONSTANT MIN-INT
-0 INVERT 1 RSHIFT       CONSTANT MID-UINT
+0 INVERT 1 RSHIFT           CONSTANT MID-UINT
 0 INVERT 1 RSHIFT INVERT    CONSTANT MID-UINT+1
 
 0S CONSTANT <FALSE>
@@ -1096,48 +1087,13 @@ T{ : GDX   123 ; : GDX   GDX 234 ; -> }T
 
 T{ GDX -> 123 234 }T
 
-CR .( End of Core word set tests) CR
-
-[DEFINED] COMPARE [IF]
-\ ------------------------------------------------------------------------
-TESTING COMPARE
-: CMOVE MOVE ;
-: s1 S" abcdefghijklmnopqrstuvwxyz" ;
-: s6 S" 123456" ;
-
-T{ s1        s1 COMPARE ->  0  }T 
-T{ s1  PAD SWAP CMOVE   ->     }T    \ Copy s1 to PAD 
-T{ s1  PAD OVER COMPARE ->  0  }T 
-T{ s1     PAD 6 COMPARE ->  1  }T 
-T{ PAD 10    s1 COMPARE -> -1  }T 
-T{ s1     PAD 0 COMPARE ->  1  }T 
-T{ PAD  0    s1 COMPARE -> -1  }T 
-T{ s1        s6 COMPARE ->  1  }T 
-T{ s6        s1 COMPARE -> -1  }T
-: "abdde" S" abdde" ; 
-: "abbde" S" abbde" ; 
-: "abcdf" S" abcdf" ; 
-: "abcdee" S" abcdee" ;
-
-T{ s1 "abdde"  COMPARE -> -1 }T 
-T{ s1 "abbde"  COMPARE ->  1 }T 
-T{ s1 "abcdf"  COMPARE -> -1 }T 
-T{ s1 "abcdee" COMPARE ->  1 }T
-
-: s11 S" 0abc" ; 
-: s12 S" 0aBc" ;
-
-T{ s11 s12 COMPARE ->  1 }T 
-T{ s12 s11 COMPARE -> -1 }T
-
-[THEN]      \ COMPARE
-
-$0A BASE !
+CR .( End of Core word set tests)
 
 CORETESTSUCCESS
 
 [ELSE]
 
-ANSCOMPNOTFOUND
+ECHO
+ANSCOMPNOTFOUND \               download CORECOMP.F before CORETEST.4TH
 
 [THEN]
index f2c3701..f4acb8c 100644 (file)
@@ -2,20 +2,26 @@
 ; ------------------
 ; FF_SPECS.4th
 ; ------------------
+; displays all FastForth specifications
+PWR_STATE
 
-; display all FastForth compilation options
-
+[UNDEFINED] AND [IF]
+CODE AND
+AND @R15+,R14
+MOV @R13+,R0
+ENDCODE
+[THEN]
 
-RST_STATE
+[UNDEFINED] DUP [IF]
+CODE DUP
+BW1 SUB #2,R15
+    MOV R14,0(R15)
+    MOV @R13+,R0
+ENDCODE
 
-[UNDEFINED] CONSTANT [IF]
-: CONSTANT 
-DEFER
-HI2LO
-MOV @R1+,R13
-MOV #$1285,-4(R10)
-MOV R14,-2(R10)
-MOV @R15+,R14
+CODE ?DUP
+CMP #0,R14
+0<> ?GOTO BW1
 MOV @R13+,R0
 ENDCODE
 [THEN]
@@ -29,77 +35,223 @@ MOV @R13+,R0
 ENDCODE
 [THEN]
 
-0 CONSTANT CASE IMMEDIATE
-
-: OF
-1+     
->R     
-POSTPONE OVER POSTPONE =
-POSTPONE IF    
-POSTPONE DROP  
-R>     
-; IMMEDIATE 
+[UNDEFINED] DROP [IF]
+CODE DROP
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE
+[THEN]
 
-: ENDOF
->R     
-POSTPONE ELSE 
-R>     
-; IMMEDIATE 
+[UNDEFINED] SWAP [IF]
+CODE SWAP
+MOV @R15,R10
+MOV R14,0(R15)
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE
+[THEN]
 
-: ENDCASE
-POSTPONE DROP
-0 DO 
-    POSTPONE THEN 
-LOOP 
-; IMMEDIATE 
+[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]
 
-: BS 8 EMIT ;
+[UNDEFINED] >R [IF]
+CODE >R
+PUSH R14
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE
+[THEN]
 
-: ESC #27 EMIT ;
+[UNDEFINED] R> [IF]
+CODE R>
+SUB #2,R15
+MOV R14,0(R15)
+MOV @R1+,R14
+MOV @R13+,R0
+ENDCODE
+[THEN]
 
-[UNDEFINED] PAD [IF]
-$1CE4 CONSTANT PAD
+[UNDEFINED] 0< [IF]
+CODE 0<
+ADD R14,R14
+SUBC R14,R14
+XOR #-1,R14
+MOV @R13+,R0
+ENDCODE
 [THEN]
 
-[UNDEFINED] PLUS [IF]
-CODE +
-ADD @R15+,R14
+[UNDEFINED] = [IF]
+CODE =
+SUB @R15+,R14
+0<> IF
+    AND #0,R14
+    MOV @R13+,R0
+THEN
+XOR #-1,R14
 MOV @R13+,R0
 ENDCODE
 [THEN]
 
-[UNDEFINED] AND [IF]
-CODE AND
-AND @R15+,R14
+[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 &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
 
-[UNDEFINED] ROT [IF]
-CODE ROT
-MOV @R15,R10
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] UNTIL [IF]
+CODE UNTIL
+    MOV #$404C,R9
+BW1 ADD #4,&$1DC6
+    MOV &$1DC6,R10
+    MOV R9,-4(R10)
+    MOV R14,-2(R10)
+    MOV @R15+,R14
+    MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] AGAIN [IF]
+CODE AGAIN
+MOV #$4048,R9
+GOTO BW1
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] WHILE [IF]
+: WHILE
+POSTPONE IF SWAP
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] REPEAT [IF]
+: REPEAT
+POSTPONE AGAIN POSTPONE THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] DO [IF]
+CODE DO
+SUB #2,R15
 MOV R14,0(R15)
-MOV 2(R15),R14
-MOV R10,2(R15)
+ADD #2,&$1DC6
+MOV &$1DC6,R14
+MOV #$4056,-2(R14)
+ADD #2,&$1C00
+MOV &$1C00,R10
+MOV #0,0(R10)
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] I [IF]
+CODE I
+SUB #2,R15
+MOV R14,0(R15)
+MOV @R1,R14
+SUB 2(R1),R14
 MOV @R13+,R0
 ENDCODE
 [THEN]
 
-[UNDEFINED] C@ [IF]
-CODE C@
-MOV.B @R14,R14
+[UNDEFINED] LOOP [IF]
+CODE LOOP
+    MOV #$4078,R9
+BW1 ADD #4,&$1DC6
+    MOV &$1DC6,R10
+    MOV R9,-4(R10)
+    MOV R14,-2(R10)
+BEGIN
+    MOV &$1C00,R14
+    SUB #2,&$1C00
+    MOV @R14,R14
+    CMP #0,R14
+0<> WHILE
+    MOV R10,0(R14)
+REPEAT
+    MOV @R15+,R14
+    MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] +LOOP [IF]
+CODE +LOOP
+MOV #$4066,R9
+GOTO BW1
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] HERE [IF]
+CODE HERE
+MOV #BEGIN,R0
+ENDCODE
+[THEN]
+
+[UNDEFINED] @ [IF]
+CODE @
+MOV @R14,R14
 MOV @R13+,R0
 ENDCODE
 [THEN]
 
-[UNDEFINED] BL [IF]
-#32 CONSTANT BL
+[UNDEFINED] ! [IF]
+CODE !
+MOV @R15+,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE
 [THEN]
 
-[UNDEFINED] SPACE [IF]
-: SPACE
-BL EMIT ;
+[UNDEFINED] C@ [IF]
+CODE C@
+MOV.B @R14,R14
+MOV @R13+,R0
+ENDCODE
 [THEN]
 
 [UNDEFINED] SPACES [IF]
@@ -109,7 +261,7 @@ CMP #0,R14
     PUSH R13
     BEGIN
         LO2HI
-        BL EMIT
+        $20 EMIT
         HI2LO
         SUB #2,R13 
         SUB #1,R14
@@ -117,33 +269,93 @@ CMP #0,R14
     MOV @R1+,R13
 THEN
 MOV @R15+,R14
-MOV @R13+,R0              
+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] 2* [IF]
+CODE 2*
+ADD R14,R14
+MOV @R13+,R0
 ENDCODE
 [THEN]
 
 [UNDEFINED] UM/MOD [IF]
 CODE UM/MOD
     PUSH #DROP
-    MOV #<#,R9
-    ADD #8,R9
-    MOV R9,R0
+    MOV #$407E,R0
+ENDCODE
+[THEN]
+
+[UNDEFINED] MOVE [IF]
+CODE MOVE
+MOV R14,R10
+MOV @R15+,R8
+MOV @R15+,R9
+MOV @R15+,R14
+CMP #0,R10
+0<> IF
+    CMP R9,R8
+    0<> IF
+        U< IF
+            BEGIN
+                MOV.B @R9+,0(R8)
+                ADD #1,R8
+                SUB #1,R10
+            0= UNTIL
+            MOV @R13+,R0
+        THEN
+        ADD R10,R8
+        ADD R10,R9
+        BEGIN
+            SUB #1,R9
+            SUB #1,R8
+            MOV.B @R9,0(R8)
+            SUB #1,R10
+        0= UNTIL
+    THEN
+THEN
+MOV @R13+,R0
 ENDCODE
 [THEN]
 
 [UNDEFINED] WORDS [IF]
 : WORDS
 CR 
-$1DCA @ PAD
-$1800 @ DUP +
+$1DCA @ $1CE4
+$1800 @ 2*
 MOVE
 BEGIN
     0 DUP
-    $1800 @ DUP + 0
+    $1800 @ 2* 0
         DO
-        DUP I PAD + @
+        DUP I $1CE4 + @
             U< IF
                 DROP DROP
-                I DUP PAD + @
+                I DUP $1CE4 + @
             THEN
         2 +LOOP
     ?DUP
@@ -151,7 +363,7 @@ WHILE
     DUP
     2 - @
     ROT
-    PAD +
+    $1CE4 +
     !
     DUP
     COUNT $7F AND
@@ -163,69 +375,62 @@ DROP
 ;
 [THEN]
 
-: ADDONS
-ESC ." [7m"
-." KERNEL OPTIONS:"
-ESC ." [0m"
-$1812 @
+[UNDEFINED] CASE [IF]
+: CASE 0 ; IMMEDIATE
+[THEN]
 
-      DUP 0< IF CR ." 32.768kHz XTAL" THEN
-DUP + DUP 0< IF DUP + CR ." HARDWARE (RTS/CTS) TERMINAL"
-             ELSE DUP + DUP 0< IF CR ." HARDWARE (RTS) TERMINAL" THEN
-             THEN
-DUP + DUP 0< IF CR ." XON/XOFF TERMINAL" THEN
-DUP + DUP 0< IF CR ." HALF-DUPLEX TERMINAL" THEN
-DUP + DUP 0< IF CR ." ASM DATA ACCESS BEYOND $FFFF" THEN
-DUP + DUP 0< IF CR ." BOOTLOADER" THEN
-DUP + DUP 0< IF CR ." SD_CARD READ/WRITE" THEN
-DUP + DUP 0< IF CR ." SD_CARD LOADER" THEN
-DUP + DUP 0< IF CR ." FIXPOINT INPUT" THEN
-DUP + DUP 0< IF CR ." DOUBLE INPUT" THEN
-DUP + DUP 0< IF CR ." VOCABULARY SET" THEN
-DUP + DUP 0< IF CR ." NONAME" THEN
-DUP + DUP 0< IF CR ." EXTENDED ASSEMBLER" THEN
-DUP + DUP 0< IF CR ." ASSEMBLER" THEN
-DUP + DUP 0< IF CR ." CONDITIONNAL COMPILATION" THEN
+[UNDEFINED] OF [IF]
+: OF
+1+     
+>R     
+POSTPONE OVER POSTPONE =
+POSTPONE IF    
+POSTPONE DROP  
+R>     
+; IMMEDIATE 
+[THEN]
 
-0< IF
-    CR ESC ." [7m"
-    ." OTHER OPTIONS:"
-    ESC ." [0m"
-    CR ." none"
-    ESC ." [G"
-    [DEFINED] {ANS_COMP} [IF] ." ANS_COMPLEMENT" CR [THEN]
-    [DEFINED] {TOOLS}    [IF] ." UTILITY" CR [THEN]
-    [DEFINED] {FIXPOINT} [IF] ." FIXPOINT" CR [THEN]
-    [DEFINED] {SD_TOOLS} [IF] ." SD_TOOLS" CR [THEN]
-    CR CR
-    [DEFINED] VOCABULARY [IF]
-    ESC ." [7m"
-    ." ASSEMBLER word set"
-    ESC ." [0m"
-    ALSO ASSEMBLER WORDS CR PREVIOUS
-    [THEN]
-ESC ." [7m" ." FORTH word set" ESC ." [0m"
-WORDS
-THEN
-;
+[UNDEFINED] ENDOF [IF]
+: ENDOF
+>R     
+POSTPONE ELSE 
+R>     
+; IMMEDIATE 
+[THEN]
+
+[UNDEFINED] ENDCASE [IF]
+: ENDCASE
+POSTPONE DROP
+0 DO 
+    POSTPONE THEN 
+LOOP 
+; IMMEDIATE 
+[THEN]
+
+[UNDEFINED] ESC" [IF]
+: ESC"
+$1B
+POSTPONE LITERAL
+POSTPONE EMIT
+POSTPONE S"
+POSTPONE TYPE
+; IMMEDIATE
+[THEN]
 
-: specs
+: SPECS
 PWR_STATE
 HERE
 ECHO
 
-41
-0 DO CR LOOP
-
-ESC ." [1J"
-ESC ." [H"
-ESC ." [7m"
+42 0 DO CR LOOP
+ESC" [H"
 
+ESC" [7m"
+CR ." FastForth V"
+$1810 @         
+0 <# #  8 HOLD # 46 HOLD #S #> TYPE
+."  for MSP430FR"
 $1A04 @
-
-CR ." FastForth V" $1810 @
-0 <# #  8 HOLD # 46 hold  #S #> TYPE SPACE
-." for MSP430FR"
 CASE
     $830C     OF      ." 2355,"   $8000   ENDOF
     $8328     OF      ." 2476,"   $8000   ENDOF
@@ -237,29 +442,86 @@ CASE
     $8160     OF      ." 5948,"   $4400   ENDOF
     $82A1     OF      ." 5994,"   $4000   ENDOF
     $81A8     OF      ." 6989,"   $4400   ENDOF
-
     ABORT" xxxx <-- unrecognized device!"
-ENDCASE SPACE 
-
-['] ['] DUP @ $1287 = IF ." DTC=1," DROP
-                         ELSE 2 + @ $1287 =
-                            IF ." DTC=2,"
-                            ELSE ." DTC=3,"
-                            THEN
-                        THEN SPACE 
-
-$1800 @ U. BS ." -Entry word sets, "
-
+ENDCASE
+$20 EMIT 
+['] ['] DUP @ $1287 =
+IF ." DTC=1," DROP
+ELSE 2 + @ $1287 =
+    IF ." DTC=2,"
+    ELSE ." DTC=3,"
+    THEN
+THEN
+$20 EMIT 
+$1800 @ U. #8 EMIT ." -Entry word sets, "
 $1806 @ 0 1000 UM/MOD U.
-?DUP IF  BS ." ," U.
+?DUP IF #8 EMIT ." ," U.
 THEN ." MHz, "
-
 - U. ." bytes"
-
-
-CR CR ADDONS
+ESC" [0m"
+
+CR ." /COUNTED-STRING   = 255"
+CR ." /HOLD             = 34"
+CR ." /PAD              = 84"
+CR ." ADDRESS-UNIT-BITS = 16"
+CR ." FLOORED           = true"
+CR ." MAX-CHAR          = 255"
+CR ." MAX-N             = 32767"
+CR ." MAX-U             = 65535"
+CR ." MAX-D             = 2147483647"
+CR ." MAX-UD            = 4294967295"
+CR ." STACK-CELLS       = 48"
+CR ." RETURN-STACK-CELLS= 48"
+
+CR CR 
+
+ESC" [7m"
+." KERNEL ADDONS"
+ESC" [0m"
+$1812 @
+    DUP 0< IF CR ." 32.768kHz XTAL" THEN
+2*  DUP 0< IF 2* CR ." 5 WIRES (RTS/CTS) UART TERMINAL"
+        ELSE 2* DUP
+            0< IF CR ." 4 WIRES (RTS) UART TERMINAL" 
+            THEN
+        THEN
+2*  DUP 0< IF CR ." 3 WIRES (XON/XOFF) UART TERMINAL" THEN
+2*  DUP 0< IF CR ." HALF-DUPLEX TERMINAL" THEN
+2*  DUP 0< IF CR ." ASM DATA ACCESS BEYOND $FFFF" THEN
+2*  DUP 0< IF CR ." BOOTLOADER" THEN
+2*  DUP 0< IF CR ." SD_CARD READ/WRITE" THEN
+2*  DUP 0< IF CR ." SD_CARD LOADER" THEN
+2*  DUP 0< IF CR ." FIXPOINT INPUT" THEN
+2*  DUP 0< IF CR ." DOUBLE INPUT" THEN
+2*  DUP 0< IF CR ." VOCABULARY SET" THEN
+2*  DUP 0< IF CR ." NONAME" THEN
+2*  DUP 0< IF CR ." EXTENDED ASSEMBLER" THEN
+2*  DUP 0< IF CR ." ASSEMBLER" THEN
+2*  DUP 0< IF CR ." CONDITIONNAL COMPILATION" THEN
+0< IF
+    CR CR ESC" [7m" 
+    ." OPTIONS"
+    ESC" [0m" CR
+    [DEFINED] {CORE_COMP} [IF] ." CORE COMPLEMENT" CR [THEN]
+    [DEFINED] {TOOLS}     [IF] ." UTILITY" CR [THEN]
+    [DEFINED] {FIXPOINT}  [IF] ." FIXPOINT" CR [THEN]
+    [DEFINED] {CORDIC}    [IF] ." CORDIC engine" CR [THEN]
+    [DEFINED] {SD_TOOLS}  [IF] ." SD_TOOLS" CR [THEN]
+    [DEFINED] {RTC}       [IF] ." RTC utilities" CR [THEN]
+    CR
+    [DEFINED] VOCABULARY [IF]
+    ESC" [7m"
+    ." ASSEMBLER word set"
+    ESC" [0m"
+    ALSO ASSEMBLER WORDS PREVIOUS CR
+    [THEN]
+THEN
+    ESC" [7m"
+    ." FORTH word set"
+    ESC" [0m"
+    WORDS
 
 CR WARM
 ;
 
-ECHO specs
+SPECS
index 9cc3c1d..de93043 100644 (file)
@@ -1,21 +1,92 @@
 
 ; -----------------------------------------------------
-; FIXPOINT.4th
+; FIXPOINT.4th 
 ; -----------------------------------------------------
 
+; -----------------------------------------------------------
+; requires FIXPOINT_INPUT kernel addon, see forthMSP430FR.asm
+; -----------------------------------------------------------
+
 PWR_STATE
 
+[DEFINED] {FIXPOINT} [IF]  {FIXPOINT} [THEN]
+
 [UNDEFINED] {FIXPOINT} [IF]
 
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
+
 MARKER {FIXPOINT}
 
-[UNDEFINED] PLUS [IF]
+[UNDEFINED] + [IF]
 CODE +
 ADD @R15+,R14
 MOV @R13+,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] R> [IF]
+CODE R>
+MOV R6,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] HOLDS [IF]
 CODE HOLDS
 BW3         MOV @R15+,R9
@@ -33,9 +104,14 @@ ENDCODE
 
 [UNDEFINED] DABS [IF]
 CODE DABS
-MOV #1-,R9
-ADD #4,R9
-MOV R9,R0
+AND #-1,R14
+S< IF
+    XOR #-1,0(R15)
+    XOR #-1,R14
+    ADD #1,0(R15)
+    ADDC #0,R14
+THEN
+MOV @R13+,R0
 ENDCODE
 [THEN]
 
@@ -281,11 +357,6 @@ ENDCODE
 
 [THEN]
 
-[UNDEFINED] SPACE [IF]
-: SPACE
-$20 EMIT ;
-[THEN]
-
 [UNDEFINED] F. [IF]
 CODE F.
 MOV R14,R12
@@ -307,7 +378,7 @@ LO2HI
     $2C HOLD
     #S
     R> SIGN #>
-    TYPE SPACE
+    TYPE $20 EMIT
 ;
 
 CODE S>F
@@ -341,16 +412,15 @@ ECHO
 ; (volatile) tests
 ; -----------------------
 
-
 3,14159 2CONSTANT PI
 PI -1,0 F* 2CONSTANT -PI
 
 $10 $1DDC !  PI F. 
-           -PI F.
+            -PI F.
 %10 $1DDC !  PI F. 
-           -PI F.
+            -PI F.
 #10 $1DDC !  PI F. 
-           -PI F.
+            -PI F.
 
 PI 2,0 F* F.      
 PI -2,0 F* F.    
@@ -362,25 +432,26 @@ PI -2,0 F/ F.
 -PI 2,0 F/ F.    
 -PI -2,0 F/ F.    
 
-32767,99999 1,0 f* F. 
-32767,99999 1,0 f/ F. 
-32767,99999 2,0 f/ F. 
-32767,99999 4,0 f/ F. 
-32767,99999 8,0 f/ F. 
-32767,99999 16,0 f/ F.
-
--32767,0 -1,0 f* F.   
--32767,0 -1,0 f/ F.   
--32767,0 -2,0 f/ F.   
--32767,0 -4,0 f/ F.   
--32767,0 -8,0 f/ F.   
--32767,0 -16,0 f/ F.  
--32767,0 -32,0 f/ F.  
--32767,0 -64,0 f/ F.  
-
-; sqrt(32768)^2 = 32768
-181,01933598375 181,01933598375 f* f.  
-181,01933598375 -181,01933598375 f* f.
--181,01933598375 181,01933598375 f* f.
--181,01933598375 -181,01933598375 f* f.
+32767,99999 1,0 F* F. 
+32767,99999 1,0 F/ F. 
+32767,99999 2,0 F/ F. 
+32767,99999 4,0 F/ F. 
+32767,99999 8,0 F/ F. 
+32767,99999 16,0 F/ F.
+
+-32767,0 -1,0 F* F.   
+-32767,0 -1,0 F/ F.   
+-32767,0 -2,0 F/ F.   
+-32767,0 -4,0 F/ F.   
+-32767,0 -8,0 F/ F.   
+-32767,0 -16,0 F/ F.  
+-32767,0 -32,0 F/ F.  
+-32767,0 -64,0 F/ F.  
+
+; SQRT(32768)^2 = 32768
+181,01933598375 181,01933598375 F* F.  
+181,01933598375 -181,01933598375 F* F.
+-181,01933598375 181,01933598375 F* F.
+-181,01933598375 -181,01933598375 F* F.
+
 
index 059bc71..91d1172 100644 (file)
@@ -3,6 +3,20 @@
 ; TEST_ASM.4th
 ; -----------------------------------------------------------------------
 
+[UNDEFINED] >R [IF]
+CODE >R
+PUSH R14
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE
+[THEN]
+
+[UNDEFINED] R> [IF]
+CODE R>
+MOV R6,R0
+ENDCODE
+[THEN]
+
 [UNDEFINED] + [IF]
 CODE +
 ADD @R15+,R14
@@ -10,6 +24,24 @@ MOV @R13+,R0
 ENDCODE
 [THEN]
 
+[UNDEFINED] - [IF]
+CODE -
+SUB @R15+,R14
+XOR #-1,R14
+ADD #1,R14
+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] MAX [IF]
 
 CODE MAX
@@ -28,6 +60,21 @@ 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
@@ -37,22 +84,40 @@ ENDCODE
 
 [UNDEFINED] VARIABLE [IF]
 : VARIABLE 
-DEFER
+CREATE
 HI2LO
-MOV @R1+,R13
 MOV #$1286,-4(R10)
+MOV @R1+,R13
 MOV @R13+,R0
 ENDCODE
 [THEN]
 
 [UNDEFINED] CONSTANT [IF]
 : CONSTANT 
-DEFER
+CREATE
 HI2LO
-MOV @R1+,R13
-MOV #$1285,-4(R10)
 MOV R14,-2(R10)
 MOV @R15+,R14
+MOV @R1+,R13
+MOV @R13+,R0
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(R10)
+MOV #$402C,-2(R10)
+MOV @R1+,R13
+MOV @R13+,R0
+ENDCODE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+CODE >BODY
+ADD #4,R14
 MOV @R13+,R0
 ENDCODE
 [THEN]
@@ -81,6 +146,13 @@ MOV @R13+,R0
 ENDCODE
 [THEN]
 
+[UNDEFINED] DUP [IF]
+CODE DUP
+BW1 SUB #2,R15
+    MOV R14,0(R15)
+    MOV @R13+,R0
+ENDCODE
+
 [UNDEFINED] OVER [IF]
 CODE OVER
 MOV R14,-2(R15)
@@ -97,6 +169,57 @@ ENDCODE
 ;
 [THEN]
 
+[UNDEFINED] DO [IF]
+CODE DO
+SUB #2,R15
+MOV R14,0(R15)
+ADD #2,&$1DC6
+MOV &$1DC6,R14
+MOV #$4056,-2(R14)
+ADD #2,&$1C00
+MOV &$1C00,R10
+MOV #0,0(R10)
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] LOOP [IF]
+CODE LOOP
+    MOV #$4078,R9
+BW1 ADD #4,&$1DC6
+    MOV &$1DC6,R10
+    MOV R9,-4(R10)
+    MOV R14,-2(R10)
+BEGIN
+    MOV &$1C00,R14
+    SUB #2,&$1C00
+    MOV @R14,R14
+    CMP #0,R14
+0<> WHILE
+    MOV R10,0(R14)
+REPEAT
+    MOV @R15+,R14
+    MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] +LOOP [IF]
+CODE +LOOP
+MOV #$4066,R9
+GOTO BW1
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] I [IF]
+CODE I
+SUB #2,R15
+MOV R14,0(R15)
+MOV @R1,R14
+SUB 2(R1),R14
+MOV @R13+,R0
+ENDCODE
+[THEN]
+
 [UNDEFINED] DUMP [IF]
 CODE DUMP
 PUSH R13
index 0cce854..cc96786 100644 (file)
@@ -8,8 +8,130 @@ RST_STATE
 
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
 
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+CODE @
+MOV @R14,R14
+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]
+$1DBE CONSTANT STATE
+[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] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(R10)
+MOV #$402C,-2(R10)
+MOV @R1+,R13
+MOV @R13+,R0
+ENDCODE
+[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 20_US
 BEGIN
     BEGIN
@@ -155,19 +277,33 @@ BEGIN
 AGAIN
 ENDASM
 
+ASM SYS_OUT
+    MOV #WARM,R9
+    ADD #4,R9
+    MOV R9,R0
+ENDASM
+
 CODE STOP
-BW1 MOV #SLEEP,R9
+BW1 MOV #$4000,R9
     ADD #4,R9
     MOV R9,-2(R9)
+    MOV #WARM,R9
+    MOV #SYS_OUT,2(R9)
+    BIC.B #4,&$20A
+    BIC.B #4,&$20C
+    MOV #0,&$3C0
+    MOV #0,&$340
+    MOV #0,&$342
+    CALL #$400E
 COLON
-['] WARM >BODY IS WARM
 ECHO
-." RC5toLCD is removed. type START to restart"
-COLD
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM
 ;
 
-CODE APP_INIT
-MOV #%1011010100,&$3C0
+CODE SYS_INIT
+MOV #%10_1101_0100,&$3C0
 $1806 @ 16000 = [IF]
     MOV #1,&$3E0
 [THEN]
@@ -175,7 +311,7 @@ $1806 @ 24000 = [IF]
     MOV #2,&$3E0
 [THEN]
     MOV #19,&$3D2
-    MOV #%01100000,&$3C6
+MOV #%0110_0000,&$3C6
     MOV #10,&$3D6
     BIS.B #$20,&$204
     BIS.B #$20,&$20A
@@ -186,7 +322,7 @@ $1806 @ 24000 = [IF]
     BIS.B #4,&$20A
     BIC.B #4,&$20C
     MOV #RC5_INT,&$FFDE
-    MOV #%0100010100,&$340
+MOV #%01_0001_0100,&$340
     MOV ##3276,&$352
     MOV #%10000,&$342
     MOV #WDT_INT,&$FFEA
@@ -217,21 +353,150 @@ COLON
     ['] CR >BODY IS CR
     ['] EMIT >BODY IS EMIT
     ." RC5toLCD is running. Type STOP to quit"
-    ABORT
+    PWR_STATE ABORT
 ;
 
 CODE START
-MOV #SLEEP,R9
+MOV #$4000,R9
 MOV #BACKGROUND,2(R9)
 MOV #WARM,R9
-MOV #APP_INIT,2(R9)
+MOV #SYS_INIT,2(R9)
 MOV R9,R0
 ENDCODE 
 
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
+
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
 
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+CODE @
+MOV @R14,R14
+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]
+$1DBE CONSTANT STATE
+[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] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(R10)
+MOV #$402C,-2(R10)
+MOV @R1+,R13
+MOV @R13+,R0
+ENDCODE
+[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 20_US
 BEGIN
     BEGIN
@@ -377,19 +642,33 @@ BEGIN
 AGAIN
 ENDASM
 
+ASM SYS_OUT
+    MOV #WARM,R9
+    ADD #4,R9
+    MOV R9,R0
+ENDASM
+
 CODE STOP
-BW1 MOV #SLEEP,R9
+BW1 MOV #$4000,R9
     ADD #4,R9
     MOV R9,-2(R9)
+    MOV #WARM,R9
+    MOV #SYS_OUT,2(R9)
+    BIC.B #4,&$20A
+    BIC.B #4,&$20C
+    MOV #0,&$3C0
+    MOV #0,&$340
+    MOV #0,&$342
+    CALL #$400E
 COLON
-['] WARM >BODY IS WARM
 ECHO
-." RC5toLCD is removed. type START to restart"
-COLD
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM
 ;
 
-CODE APP_INIT
-MOV #%1011010100,&$3C0
+CODE SYS_INIT
+MOV #%10_1101_0100,&$3C0
 $1806 @ 16000 = [IF]
     MOV #1,&$3E0
 [THEN]
@@ -397,7 +676,7 @@ $1806 @ 24000 = [IF]
     MOV #2,&$3E0
 [THEN]
     MOV #19,&$3D2
-    MOV #%01100000,&$3C6
+MOV #%0110_0000,&$3C6
     MOV #10,&$3D6
     BIS.B #$20,&$204
     BIS.B #$20,&$20A
@@ -408,7 +687,7 @@ $1806 @ 24000 = [IF]
     BIS.B #4,&$20A
     BIC.B #4,&$20C
     MOV #RC5_INT,&$FFDE
-    MOV #%0100010100,&$340
+MOV #%01_0001_0100,&$340
     MOV ##3276,&$352
     MOV #%10000,&$342
     MOV #WDT_INT,&$FFEA
@@ -439,21 +718,150 @@ COLON
     ['] CR >BODY IS CR
     ['] EMIT >BODY IS EMIT
     ." RC5toLCD is running. Type STOP to quit"
-    ABORT
+    PWR_STATE ABORT
 ;
 
 CODE START
-MOV #SLEEP,R9
+MOV #$4000,R9
 MOV #BACKGROUND,2(R9)
 MOV #WARM,R9
-MOV #APP_INIT,2(R9)
+MOV #SYS_INIT,2(R9)
 MOV R9,R0
 ENDCODE 
 
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
+
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
 
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+CODE @
+MOV @R14,R14
+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]
+$1DBE CONSTANT STATE
+[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] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(R10)
+MOV #$402C,-2(R10)
+MOV @R1+,R13
+MOV @R13+,R0
+ENDCODE
+[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 20_US
 BEGIN
     BEGIN
@@ -599,19 +1007,33 @@ BEGIN
 AGAIN
 ENDASM
 
+ASM SYS_OUT
+    MOV #WARM,R9
+    ADD #4,R9
+    MOV R9,R0
+ENDASM
+
 CODE STOP
-BW1 MOV #SLEEP,R9
+BW1 MOV #$4000,R9
     ADD #4,R9
     MOV R9,-2(R9)
+    MOV #WARM,R9
+    MOV #SYS_OUT,2(R9)
+    BIC.B #4,&$20A
+    BIC.B #4,&$20C
+    MOV #0,&$3C0
+    MOV #0,&$340
+    MOV #0,&$342
+    CALL #$400E
 COLON
-['] WARM >BODY IS WARM
 ECHO
-." RC5toLCD is removed. type START to restart"
-COLD
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM
 ;
 
-CODE APP_INIT
-MOV #%1011010100,&$3C0
+CODE SYS_INIT
+MOV #%10_1101_0100,&$3C0
 $1806 @ 16000 = [IF]
     MOV #1,&$3E0
 [THEN]
@@ -619,7 +1041,7 @@ $1806 @ 24000 = [IF]
     MOV #2,&$3E0
 [THEN]
     MOV #19,&$3D2
-    MOV #%01100000,&$3C6
+MOV #%0110_0000,&$3C6
     MOV #10,&$3D6
     BIS.B #$20,&$204
     BIS.B #$20,&$20A
@@ -630,7 +1052,7 @@ $1806 @ 24000 = [IF]
     BIS.B #4,&$20A
     BIC.B #4,&$20C
     MOV #RC5_INT,&$FFDE
-    MOV #%0100010100,&$340
+MOV #%01_0001_0100,&$340
     MOV ##3276,&$352
     MOV #%10000,&$342
     MOV #WDT_INT,&$FFEA
@@ -661,21 +1083,150 @@ COLON
     ['] CR >BODY IS CR
     ['] EMIT >BODY IS EMIT
     ." RC5toLCD is running. Type STOP to quit"
-    ABORT
+    PWR_STATE ABORT
 ;
 
 CODE START
-MOV #SLEEP,R9
+MOV #$4000,R9
 MOV #BACKGROUND,2(R9)
 MOV #WARM,R9
-MOV #APP_INIT,2(R9)
+MOV #SYS_INIT,2(R9)
 MOV R9,R0
 ENDCODE 
 
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
+
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
 
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+CODE @
+MOV @R14,R14
+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]
+$1DBE CONSTANT STATE
+[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] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(R10)
+MOV #$402C,-2(R10)
+MOV @R1+,R13
+MOV @R13+,R0
+ENDCODE
+[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 20_US
 BEGIN
     BEGIN
@@ -821,19 +1372,33 @@ BEGIN
 AGAIN
 ENDASM
 
+ASM SYS_OUT
+    MOV #WARM,R9
+    ADD #4,R9
+    MOV R9,R0
+ENDASM
+
 CODE STOP
-BW1 MOV #SLEEP,R9
+BW1 MOV #$4000,R9
     ADD #4,R9
     MOV R9,-2(R9)
+    MOV #WARM,R9
+    MOV #SYS_OUT,2(R9)
+    BIC.B #4,&$20A
+    BIC.B #4,&$20C
+    MOV #0,&$3C0
+    MOV #0,&$340
+    MOV #0,&$342
+    CALL #$400E
 COLON
-['] WARM >BODY IS WARM
 ECHO
-." RC5toLCD is removed. type START to restart"
-COLD
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM
 ;
 
-CODE APP_INIT
-MOV #%1011010100,&$3C0
+CODE SYS_INIT
+MOV #%10_1101_0100,&$3C0
 $1806 @ 16000 = [IF]
     MOV #1,&$3E0
 [THEN]
@@ -841,7 +1406,7 @@ $1806 @ 24000 = [IF]
     MOV #2,&$3E0
 [THEN]
     MOV #19,&$3D2
-    MOV #%01100000,&$3C6
+MOV #%0110_0000,&$3C6
     MOV #10,&$3D6
     BIS.B #$20,&$204
     BIS.B #$20,&$20A
@@ -852,7 +1417,7 @@ $1806 @ 24000 = [IF]
     BIS.B #4,&$20A
     BIC.B #4,&$20C
     MOV #RC5_INT,&$FFDE
-    MOV #%0100010100,&$340
+MOV #%01_0001_0100,&$340
     MOV ##3276,&$352
     MOV #%10000,&$342
     MOV #WDT_INT,&$FFEA
@@ -883,20 +1448,149 @@ COLON
     ['] CR >BODY IS CR
     ['] EMIT >BODY IS EMIT
     ." RC5toLCD is running. Type STOP to quit"
-    ABORT
+    PWR_STATE ABORT
 ;
 
 CODE START
-MOV #SLEEP,R9
+MOV #$4000,R9
 MOV #BACKGROUND,2(R9)
 MOV #WARM,R9
-MOV #APP_INIT,2(R9)
+MOV #SYS_INIT,2(R9)
 MOV R9,R0
 ENDCODE 
 
-[DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
-
-MARKER {RC5TOLCD}
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
+
+[DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
+
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
+
+MARKER {RC5TOLCD}
+
+[UNDEFINED] @ [IF]
+CODE @
+MOV @R14,R14
+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]
+$1DBE CONSTANT STATE
+[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] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(R10)
+MOV #$402C,-2(R10)
+MOV @R1+,R13
+MOV @R13+,R0
+ENDCODE
+[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 20_US
 BEGIN
@@ -1043,19 +1737,33 @@ BEGIN
 AGAIN
 ENDASM
 
+ASM SYS_OUT
+    MOV #WARM,R9
+    ADD #4,R9
+    MOV R9,R0
+ENDASM
+
 CODE STOP
-BW1 MOV #SLEEP,R9
+BW1 MOV #$4000,R9
     ADD #4,R9
     MOV R9,-2(R9)
+    MOV #WARM,R9
+    MOV #SYS_OUT,2(R9)
+    BIC.B #4,&$20A
+    BIC.B #4,&$20C
+    MOV #0,&$3C0
+    MOV #0,&$340
+    MOV #0,&$342
+    CALL #$400E
 COLON
-['] WARM >BODY IS WARM
 ECHO
-." RC5toLCD is removed. type START to restart"
-COLD
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM
 ;
 
-CODE APP_INIT
-MOV #%1011010100,&$3C0
+CODE SYS_INIT
+MOV #%10_1101_0100,&$3C0
 $1806 @ 16000 = [IF]
     MOV #1,&$3E0
 [THEN]
@@ -1063,7 +1771,7 @@ $1806 @ 24000 = [IF]
     MOV #2,&$3E0
 [THEN]
     MOV #19,&$3D2
-    MOV #%01100000,&$3C6
+MOV #%0110_0000,&$3C6
     MOV #10,&$3D6
     BIS.B #$20,&$204
     BIS.B #$20,&$20A
@@ -1074,7 +1782,7 @@ $1806 @ 24000 = [IF]
     BIS.B #4,&$20A
     BIC.B #4,&$20C
     MOV #RC5_INT,&$FFDE
-    MOV #%0100010100,&$340
+MOV #%01_0001_0100,&$340
     MOV ##3276,&$352
     MOV #%10000,&$342
     MOV #WDT_INT,&$FFEA
@@ -1105,21 +1813,150 @@ COLON
     ['] CR >BODY IS CR
     ['] EMIT >BODY IS EMIT
     ." RC5toLCD is running. Type STOP to quit"
-    ABORT
+    PWR_STATE ABORT
 ;
 
 CODE START
-MOV #SLEEP,R9
+MOV #$4000,R9
 MOV #BACKGROUND,2(R9)
 MOV #WARM,R9
-MOV #APP_INIT,2(R9)
+MOV #SYS_INIT,2(R9)
 MOV R9,R0
 ENDCODE 
 
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
+
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
 
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+CODE @
+MOV @R14,R14
+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]
+$1DBE CONSTANT STATE
+[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] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(R10)
+MOV #$402C,-2(R10)
+MOV @R1+,R13
+MOV @R13+,R0
+ENDCODE
+[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 20_US
 BEGIN
     BEGIN
@@ -1265,19 +2102,33 @@ BEGIN
 AGAIN
 ENDASM
 
+ASM SYS_OUT
+    MOV #WARM,R9
+    ADD #4,R9
+    MOV R9,R0
+ENDASM
+
 CODE STOP
-BW1 MOV #SLEEP,R9
+BW1 MOV #$4000,R9
     ADD #4,R9
     MOV R9,-2(R9)
+    MOV #WARM,R9
+    MOV #SYS_OUT,2(R9)
+    BIC.B #4,&$20A
+    BIC.B #4,&$20C
+    MOV #0,&$3C0
+    MOV #0,&$340
+    MOV #0,&$342
+    CALL #$400E
 COLON
-['] WARM >BODY IS WARM
 ECHO
-." RC5toLCD is removed. type START to restart"
-COLD
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM
 ;
 
-CODE APP_INIT
-MOV #%1011010100,&$3C0
+CODE SYS_INIT
+MOV #%10_1101_0100,&$3C0
 $1806 @ 16000 = [IF]
     MOV #1,&$3E0
 [THEN]
@@ -1285,7 +2136,7 @@ $1806 @ 24000 = [IF]
     MOV #2,&$3E0
 [THEN]
     MOV #19,&$3D2
-    MOV #%01100000,&$3C6
+MOV #%0110_0000,&$3C6
     MOV #10,&$3D6
     BIS.B #$20,&$204
     BIS.B #$20,&$20A
@@ -1296,7 +2147,7 @@ $1806 @ 24000 = [IF]
     BIS.B #4,&$20A
     BIC.B #4,&$20C
     MOV #RC5_INT,&$FFDE
-    MOV #%0100010100,&$340
+MOV #%01_0001_0100,&$340
     MOV ##3276,&$352
     MOV #%10000,&$342
     MOV #WDT_INT,&$FFEA
@@ -1327,21 +2178,150 @@ COLON
     ['] CR >BODY IS CR
     ['] EMIT >BODY IS EMIT
     ." RC5toLCD is running. Type STOP to quit"
-    ABORT
+    PWR_STATE ABORT
 ;
 
 CODE START
-MOV #SLEEP,R9
+MOV #$4000,R9
 MOV #BACKGROUND,2(R9)
 MOV #WARM,R9
-MOV #APP_INIT,2(R9)
+MOV #SYS_INIT,2(R9)
 MOV R9,R0
 ENDCODE 
 
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
+
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
 
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+CODE @
+MOV @R14,R14
+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]
+$1DBE CONSTANT STATE
+[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] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(R10)
+MOV #$402C,-2(R10)
+MOV @R1+,R13
+MOV @R13+,R0
+ENDCODE
+[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 20_US
 BEGIN
     BEGIN
@@ -1487,19 +2467,33 @@ BEGIN
 AGAIN
 ENDASM
 
+ASM SYS_OUT
+    MOV #WARM,R9
+    ADD #4,R9
+    MOV R9,R0
+ENDASM
+
 CODE STOP
-BW1 MOV #SLEEP,R9
+BW1 MOV #$4000,R9
     ADD #4,R9
     MOV R9,-2(R9)
+    MOV #WARM,R9
+    MOV #SYS_OUT,2(R9)
+    BIC.B #4,&$20A
+    BIC.B #4,&$20C
+    MOV #0,&$3C0
+    MOV #0,&$340
+    MOV #0,&$342
+    CALL #$400E
 COLON
-['] WARM >BODY IS WARM
 ECHO
-." RC5toLCD is removed. type START to restart"
-COLD
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM
 ;
 
-CODE APP_INIT
-MOV #%1011010100,&$3C0
+CODE SYS_INIT
+MOV #%10_1101_0100,&$3C0
 $1806 @ 16000 = [IF]
     MOV #1,&$3E0
 [THEN]
@@ -1507,7 +2501,7 @@ $1806 @ 24000 = [IF]
     MOV #2,&$3E0
 [THEN]
     MOV #19,&$3D2
-    MOV #%01100000,&$3C6
+MOV #%0110_0000,&$3C6
     MOV #10,&$3D6
     BIS.B #$20,&$204
     BIS.B #$20,&$20A
@@ -1518,7 +2512,7 @@ $1806 @ 24000 = [IF]
     BIS.B #4,&$20A
     BIC.B #4,&$20C
     MOV #RC5_INT,&$FFDE
-    MOV #%0100010100,&$340
+MOV #%01_0001_0100,&$340
     MOV ##3276,&$352
     MOV #%10000,&$342
     MOV #WDT_INT,&$FFEA
@@ -1549,21 +2543,150 @@ COLON
     ['] CR >BODY IS CR
     ['] EMIT >BODY IS EMIT
     ." RC5toLCD is running. Type STOP to quit"
-    ABORT
+    PWR_STATE ABORT
 ;
 
 CODE START
-MOV #SLEEP,R9
+MOV #$4000,R9
 MOV #BACKGROUND,2(R9)
 MOV #WARM,R9
-MOV #APP_INIT,2(R9)
+MOV #SYS_INIT,2(R9)
 MOV R9,R0
 ENDCODE 
 
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
+
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
 
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+CODE @
+MOV @R14,R14
+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]
+$1DBE CONSTANT STATE
+[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] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(R10)
+MOV #$402C,-2(R10)
+MOV @R1+,R13
+MOV @R13+,R0
+ENDCODE
+[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 20_US
 BEGIN
     BEGIN
@@ -1709,19 +2832,33 @@ BEGIN
 AGAIN
 ENDASM
 
+ASM SYS_OUT
+    MOV #WARM,R9
+    ADD #4,R9
+    MOV R9,R0
+ENDASM
+
 CODE STOP
-BW1 MOV #SLEEP,R9
+BW1 MOV #$4000,R9
     ADD #4,R9
     MOV R9,-2(R9)
+    MOV #WARM,R9
+    MOV #SYS_OUT,2(R9)
+    BIC.B #4,&$20A
+    BIC.B #4,&$20C
+    MOV #0,&$3C0
+    MOV #0,&$340
+    MOV #0,&$342
+    CALL #$400E
 COLON
-['] WARM >BODY IS WARM
 ECHO
-." RC5toLCD is removed. type START to restart"
-COLD
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM
 ;
 
-CODE APP_INIT
-MOV #%1011010100,&$3C0
+CODE SYS_INIT
+MOV #%10_1101_0100,&$3C0
 $1806 @ 16000 = [IF]
     MOV #1,&$3E0
 [THEN]
@@ -1729,7 +2866,7 @@ $1806 @ 24000 = [IF]
     MOV #2,&$3E0
 [THEN]
     MOV #19,&$3D2
-    MOV #%01100000,&$3C6
+MOV #%0110_0000,&$3C6
     MOV #10,&$3D6
     BIS.B #$20,&$204
     BIS.B #$20,&$20A
@@ -1740,7 +2877,7 @@ $1806 @ 24000 = [IF]
     BIS.B #4,&$20A
     BIC.B #4,&$20C
     MOV #RC5_INT,&$FFDE
-    MOV #%0100010100,&$340
+MOV #%01_0001_0100,&$340
     MOV ##3276,&$352
     MOV #%10000,&$342
     MOV #WDT_INT,&$FFEA
@@ -1771,20 +2908,149 @@ COLON
     ['] CR >BODY IS CR
     ['] EMIT >BODY IS EMIT
     ." RC5toLCD is running. Type STOP to quit"
-    ABORT
+    PWR_STATE ABORT
 ;
 
-CODE START
-MOV #SLEEP,R9
-MOV #BACKGROUND,2(R9)
-MOV #WARM,R9
-MOV #APP_INIT,2(R9)
-MOV R9,R0
-ENDCODE 
+CODE START
+MOV #$4000,R9
+MOV #BACKGROUND,2(R9)
+MOV #WARM,R9
+MOV #SYS_INIT,2(R9)
+MOV R9,R0
+ENDCODE 
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
+
+[DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
+
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
+
+MARKER {RC5TOLCD}
+
+[UNDEFINED] @ [IF]
+CODE @
+MOV @R14,R14
+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]
+$1DBE CONSTANT STATE
+[THEN]
 
-[DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [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] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(R10)
+MOV #$402C,-2(R10)
+MOV @R1+,R13
+MOV @R13+,R0
+ENDCODE
+[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]
 
-MARKER {RC5TOLCD}
 
 CODE 20_US
 BEGIN
@@ -1931,19 +3197,33 @@ BEGIN
 AGAIN
 ENDASM
 
+ASM SYS_OUT
+    MOV #WARM,R9
+    ADD #4,R9
+    MOV R9,R0
+ENDASM
+
 CODE STOP
-BW1 MOV #SLEEP,R9
+BW1 MOV #$4000,R9
     ADD #4,R9
     MOV R9,-2(R9)
+    MOV #WARM,R9
+    MOV #SYS_OUT,2(R9)
+    BIC.B #4,&$20A
+    BIC.B #4,&$20C
+    MOV #0,&$3C0
+    MOV #0,&$340
+    MOV #0,&$342
+    CALL #$400E
 COLON
-['] WARM >BODY IS WARM
 ECHO
-." RC5toLCD is removed. type START to restart"
-COLD
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM
 ;
 
-CODE APP_INIT
-MOV #%1011010100,&$3C0
+CODE SYS_INIT
+MOV #%10_1101_0100,&$3C0
 $1806 @ 16000 = [IF]
     MOV #1,&$3E0
 [THEN]
@@ -1951,7 +3231,7 @@ $1806 @ 24000 = [IF]
     MOV #2,&$3E0
 [THEN]
     MOV #19,&$3D2
-    MOV #%01100000,&$3C6
+MOV #%0110_0000,&$3C6
     MOV #10,&$3D6
     BIS.B #$20,&$204
     BIS.B #$20,&$20A
@@ -1962,7 +3242,7 @@ $1806 @ 24000 = [IF]
     BIS.B #4,&$20A
     BIC.B #4,&$20C
     MOV #RC5_INT,&$FFDE
-    MOV #%0100010100,&$340
+MOV #%01_0001_0100,&$340
     MOV ##3276,&$352
     MOV #%10000,&$342
     MOV #WDT_INT,&$FFEA
@@ -1993,21 +3273,150 @@ COLON
     ['] CR >BODY IS CR
     ['] EMIT >BODY IS EMIT
     ." RC5toLCD is running. Type STOP to quit"
-    ABORT
+    PWR_STATE ABORT
 ;
 
 CODE START
-MOV #SLEEP,R9
+MOV #$4000,R9
 MOV #BACKGROUND,2(R9)
 MOV #WARM,R9
-MOV #APP_INIT,2(R9)
+MOV #SYS_INIT,2(R9)
 MOV R9,R0
 ENDCODE 
 
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
+
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
 
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+CODE @
+MOV @R14,R14
+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]
+$1DBE CONSTANT STATE
+[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] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(R10)
+MOV #$402C,-2(R10)
+MOV @R1+,R13
+MOV @R13+,R0
+ENDCODE
+[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 20_US
 BEGIN
     BEGIN
@@ -2153,19 +3562,33 @@ BEGIN
 AGAIN
 ENDASM
 
+ASM SYS_OUT
+    MOV #WARM,R9
+    ADD #4,R9
+    MOV R9,R0
+ENDASM
+
 CODE STOP
-BW1 MOV #SLEEP,R9
+BW1 MOV #$4000,R9
     ADD #4,R9
     MOV R9,-2(R9)
+    MOV #WARM,R9
+    MOV #SYS_OUT,2(R9)
+    BIC.B #4,&$20A
+    BIC.B #4,&$20C
+    MOV #0,&$3C0
+    MOV #0,&$340
+    MOV #0,&$342
+    CALL #$400E
 COLON
-['] WARM >BODY IS WARM
 ECHO
-." RC5toLCD is removed. type START to restart"
-COLD
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM
 ;
 
-CODE APP_INIT
-MOV #%1011010100,&$3C0
+CODE SYS_INIT
+MOV #%10_1101_0100,&$3C0
 $1806 @ 16000 = [IF]
     MOV #1,&$3E0
 [THEN]
@@ -2173,7 +3596,7 @@ $1806 @ 24000 = [IF]
     MOV #2,&$3E0
 [THEN]
     MOV #19,&$3D2
-    MOV #%01100000,&$3C6
+MOV #%0110_0000,&$3C6
     MOV #10,&$3D6
     BIS.B #$20,&$204
     BIS.B #$20,&$20A
@@ -2184,7 +3607,7 @@ $1806 @ 24000 = [IF]
     BIS.B #4,&$20A
     BIC.B #4,&$20C
     MOV #RC5_INT,&$FFDE
-    MOV #%0100010100,&$340
+MOV #%01_0001_0100,&$340
     MOV ##3276,&$352
     MOV #%10000,&$342
     MOV #WDT_INT,&$FFEA
@@ -2215,21 +3638,150 @@ COLON
     ['] CR >BODY IS CR
     ['] EMIT >BODY IS EMIT
     ." RC5toLCD is running. Type STOP to quit"
-    ABORT
+    PWR_STATE ABORT
 ;
 
 CODE START
-MOV #SLEEP,R9
+MOV #$4000,R9
 MOV #BACKGROUND,2(R9)
 MOV #WARM,R9
-MOV #APP_INIT,2(R9)
+MOV #SYS_INIT,2(R9)
 MOV R9,R0
 ENDCODE 
 
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
+
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
 
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+CODE @
+MOV @R14,R14
+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]
+$1DBE CONSTANT STATE
+[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] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(R10)
+MOV #$402C,-2(R10)
+MOV @R1+,R13
+MOV @R13+,R0
+ENDCODE
+[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 20_US
 BEGIN
     BEGIN
@@ -2375,19 +3927,33 @@ BEGIN
 AGAIN
 ENDASM
 
+ASM SYS_OUT
+    MOV #WARM,R9
+    ADD #4,R9
+    MOV R9,R0
+ENDASM
+
 CODE STOP
-BW1 MOV #SLEEP,R9
+BW1 MOV #$4000,R9
     ADD #4,R9
     MOV R9,-2(R9)
+    MOV #WARM,R9
+    MOV #SYS_OUT,2(R9)
+    BIC.B #4,&$20A
+    BIC.B #4,&$20C
+    MOV #0,&$3C0
+    MOV #0,&$340
+    MOV #0,&$342
+    CALL #$400E
 COLON
-['] WARM >BODY IS WARM
 ECHO
-." RC5toLCD is removed. type START to restart"
-COLD
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM
 ;
 
-CODE APP_INIT
-MOV #%1011010100,&$3C0
+CODE SYS_INIT
+MOV #%10_1101_0100,&$3C0
 $1806 @ 16000 = [IF]
     MOV #1,&$3E0
 [THEN]
@@ -2395,7 +3961,7 @@ $1806 @ 24000 = [IF]
     MOV #2,&$3E0
 [THEN]
     MOV #19,&$3D2
-    MOV #%01100000,&$3C6
+MOV #%0110_0000,&$3C6
     MOV #10,&$3D6
     BIS.B #$20,&$204
     BIS.B #$20,&$20A
@@ -2406,7 +3972,7 @@ $1806 @ 24000 = [IF]
     BIS.B #4,&$20A
     BIC.B #4,&$20C
     MOV #RC5_INT,&$FFDE
-    MOV #%0100010100,&$340
+MOV #%01_0001_0100,&$340
     MOV ##3276,&$352
     MOV #%10000,&$342
     MOV #WDT_INT,&$FFEA
@@ -2437,21 +4003,150 @@ COLON
     ['] CR >BODY IS CR
     ['] EMIT >BODY IS EMIT
     ." RC5toLCD is running. Type STOP to quit"
-    ABORT
+    PWR_STATE ABORT
 ;
 
 CODE START
-MOV #SLEEP,R9
+MOV #$4000,R9
 MOV #BACKGROUND,2(R9)
 MOV #WARM,R9
-MOV #APP_INIT,2(R9)
+MOV #SYS_INIT,2(R9)
 MOV R9,R0
 ENDCODE 
 
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
+
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
 
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+CODE @
+MOV @R14,R14
+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]
+$1DBE CONSTANT STATE
+[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] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(R10)
+MOV #$402C,-2(R10)
+MOV @R1+,R13
+MOV @R13+,R0
+ENDCODE
+[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 20_US
 BEGIN
     BEGIN
@@ -2597,19 +4292,33 @@ BEGIN
 AGAIN
 ENDASM
 
+ASM SYS_OUT
+    MOV #WARM,R9
+    ADD #4,R9
+    MOV R9,R0
+ENDASM
+
 CODE STOP
-BW1 MOV #SLEEP,R9
+BW1 MOV #$4000,R9
     ADD #4,R9
     MOV R9,-2(R9)
+    MOV #WARM,R9
+    MOV #SYS_OUT,2(R9)
+    BIC.B #4,&$20A
+    BIC.B #4,&$20C
+    MOV #0,&$3C0
+    MOV #0,&$340
+    MOV #0,&$342
+    CALL #$400E
 COLON
-['] WARM >BODY IS WARM
 ECHO
-." RC5toLCD is removed. type START to restart"
-COLD
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM
 ;
 
-CODE APP_INIT
-MOV #%1011010100,&$3C0
+CODE SYS_INIT
+MOV #%10_1101_0100,&$3C0
 $1806 @ 16000 = [IF]
     MOV #1,&$3E0
 [THEN]
@@ -2617,7 +4326,7 @@ $1806 @ 24000 = [IF]
     MOV #2,&$3E0
 [THEN]
     MOV #19,&$3D2
-    MOV #%01100000,&$3C6
+MOV #%0110_0000,&$3C6
     MOV #10,&$3D6
     BIS.B #$20,&$204
     BIS.B #$20,&$20A
@@ -2628,7 +4337,7 @@ $1806 @ 24000 = [IF]
     BIS.B #4,&$20A
     BIC.B #4,&$20C
     MOV #RC5_INT,&$FFDE
-    MOV #%0100010100,&$340
+MOV #%01_0001_0100,&$340
     MOV ##3276,&$352
     MOV #%10000,&$342
     MOV #WDT_INT,&$FFEA
@@ -2659,21 +4368,150 @@ COLON
     ['] CR >BODY IS CR
     ['] EMIT >BODY IS EMIT
     ." RC5toLCD is running. Type STOP to quit"
-    ABORT
+    PWR_STATE ABORT
 ;
 
-CODE START
-MOV #SLEEP,R9
-MOV #BACKGROUND,2(R9)
-MOV #WARM,R9
-MOV #APP_INIT,2(R9)
-MOV R9,R0
-ENDCODE 
+CODE START
+MOV #$4000,R9
+MOV #BACKGROUND,2(R9)
+MOV #WARM,R9
+MOV #SYS_INIT,2(R9)
+MOV R9,R0
+ENDCODE 
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
 
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
 
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+CODE @
+MOV @R14,R14
+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]
+$1DBE CONSTANT STATE
+[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] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(R10)
+MOV #$402C,-2(R10)
+MOV @R1+,R13
+MOV @R13+,R0
+ENDCODE
+[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 20_US
 BEGIN
     BEGIN
@@ -2819,19 +4657,33 @@ BEGIN
 AGAIN
 ENDASM
 
+ASM SYS_OUT
+    MOV #WARM,R9
+    ADD #4,R9
+    MOV R9,R0
+ENDASM
+
 CODE STOP
-BW1 MOV #SLEEP,R9
+BW1 MOV #$4000,R9
     ADD #4,R9
     MOV R9,-2(R9)
+    MOV #WARM,R9
+    MOV #SYS_OUT,2(R9)
+    BIC.B #4,&$20A
+    BIC.B #4,&$20C
+    MOV #0,&$3C0
+    MOV #0,&$340
+    MOV #0,&$342
+    CALL #$400E
 COLON
-['] WARM >BODY IS WARM
 ECHO
-." RC5toLCD is removed. type START to restart"
-COLD
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM
 ;
 
-CODE APP_INIT
-MOV #%1011010100,&$3C0
+CODE SYS_INIT
+MOV #%10_1101_0100,&$3C0
 $1806 @ 16000 = [IF]
     MOV #1,&$3E0
 [THEN]
@@ -2839,7 +4691,7 @@ $1806 @ 24000 = [IF]
     MOV #2,&$3E0
 [THEN]
     MOV #19,&$3D2
-    MOV #%01100000,&$3C6
+MOV #%0110_0000,&$3C6
     MOV #10,&$3D6
     BIS.B #$20,&$204
     BIS.B #$20,&$20A
@@ -2850,7 +4702,7 @@ $1806 @ 24000 = [IF]
     BIS.B #4,&$20A
     BIC.B #4,&$20C
     MOV #RC5_INT,&$FFDE
-    MOV #%0100010100,&$340
+MOV #%01_0001_0100,&$340
     MOV ##3276,&$352
     MOV #%10000,&$342
     MOV #WDT_INT,&$FFEA
@@ -2881,21 +4733,150 @@ COLON
     ['] CR >BODY IS CR
     ['] EMIT >BODY IS EMIT
     ." RC5toLCD is running. Type STOP to quit"
-    ABORT
+    PWR_STATE ABORT
 ;
 
 CODE START
-MOV #SLEEP,R9
+MOV #$4000,R9
 MOV #BACKGROUND,2(R9)
 MOV #WARM,R9
-MOV #APP_INIT,2(R9)
+MOV #SYS_INIT,2(R9)
 MOV R9,R0
 ENDCODE 
 
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
+
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
 
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+CODE @
+MOV @R14,R14
+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]
+$1DBE CONSTANT STATE
+[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] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(R10)
+MOV #$402C,-2(R10)
+MOV @R1+,R13
+MOV @R13+,R0
+ENDCODE
+[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 20_US
 BEGIN
     BEGIN
@@ -3041,19 +5022,33 @@ BEGIN
 AGAIN
 ENDASM
 
+ASM SYS_OUT
+    MOV #WARM,R9
+    ADD #4,R9
+    MOV R9,R0
+ENDASM
+
 CODE STOP
-BW1 MOV #SLEEP,R9
+BW1 MOV #$4000,R9
     ADD #4,R9
     MOV R9,-2(R9)
+    MOV #WARM,R9
+    MOV #SYS_OUT,2(R9)
+    BIC.B #4,&$20A
+    BIC.B #4,&$20C
+    MOV #0,&$3C0
+    MOV #0,&$340
+    MOV #0,&$342
+    CALL #$400E
 COLON
-['] WARM >BODY IS WARM
 ECHO
-." RC5toLCD is removed. type START to restart"
-COLD
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM
 ;
 
-CODE APP_INIT
-MOV #%1011010100,&$3C0
+CODE SYS_INIT
+MOV #%10_1101_0100,&$3C0
 $1806 @ 16000 = [IF]
     MOV #1,&$3E0
 [THEN]
@@ -3061,7 +5056,7 @@ $1806 @ 24000 = [IF]
     MOV #2,&$3E0
 [THEN]
     MOV #19,&$3D2
-    MOV #%01100000,&$3C6
+MOV #%0110_0000,&$3C6
     MOV #10,&$3D6
     BIS.B #$20,&$204
     BIS.B #$20,&$20A
@@ -3072,7 +5067,7 @@ $1806 @ 24000 = [IF]
     BIS.B #4,&$20A
     BIC.B #4,&$20C
     MOV #RC5_INT,&$FFDE
-    MOV #%0100010100,&$340
+MOV #%01_0001_0100,&$340
     MOV ##3276,&$352
     MOV #%10000,&$342
     MOV #WDT_INT,&$FFEA
@@ -3103,21 +5098,150 @@ COLON
     ['] CR >BODY IS CR
     ['] EMIT >BODY IS EMIT
     ." RC5toLCD is running. Type STOP to quit"
-    ABORT
+    PWR_STATE ABORT
 ;
 
 CODE START
-MOV #SLEEP,R9
+MOV #$4000,R9
 MOV #BACKGROUND,2(R9)
 MOV #WARM,R9
-MOV #APP_INIT,2(R9)
+MOV #SYS_INIT,2(R9)
 MOV R9,R0
 ENDCODE 
 
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
+
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
 
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+CODE @
+MOV @R14,R14
+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]
+$1DBE CONSTANT STATE
+[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] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(R10)
+MOV #$402C,-2(R10)
+MOV @R1+,R13
+MOV @R13+,R0
+ENDCODE
+[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 20_US
 BEGIN
     BEGIN
@@ -3263,19 +5387,33 @@ BEGIN
 AGAIN
 ENDASM
 
+ASM SYS_OUT
+    MOV #WARM,R9
+    ADD #4,R9
+    MOV R9,R0
+ENDASM
+
 CODE STOP
-BW1 MOV #SLEEP,R9
+BW1 MOV #$4000,R9
     ADD #4,R9
     MOV R9,-2(R9)
+    MOV #WARM,R9
+    MOV #SYS_OUT,2(R9)
+    BIC.B #4,&$20A
+    BIC.B #4,&$20C
+    MOV #0,&$3C0
+    MOV #0,&$340
+    MOV #0,&$342
+    CALL #$400E
 COLON
-['] WARM >BODY IS WARM
 ECHO
-." RC5toLCD is removed. type START to restart"
-COLD
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM
 ;
 
-CODE APP_INIT
-MOV #%1011010100,&$3C0
+CODE SYS_INIT
+MOV #%10_1101_0100,&$3C0
 $1806 @ 16000 = [IF]
     MOV #1,&$3E0
 [THEN]
@@ -3283,7 +5421,7 @@ $1806 @ 24000 = [IF]
     MOV #2,&$3E0
 [THEN]
     MOV #19,&$3D2
-    MOV #%01100000,&$3C6
+MOV #%0110_0000,&$3C6
     MOV #10,&$3D6
     BIS.B #$20,&$204
     BIS.B #$20,&$20A
@@ -3294,7 +5432,7 @@ $1806 @ 24000 = [IF]
     BIS.B #4,&$20A
     BIC.B #4,&$20C
     MOV #RC5_INT,&$FFDE
-    MOV #%0100010100,&$340
+MOV #%01_0001_0100,&$340
     MOV ##3276,&$352
     MOV #%10000,&$342
     MOV #WDT_INT,&$FFEA
@@ -3325,21 +5463,150 @@ COLON
     ['] CR >BODY IS CR
     ['] EMIT >BODY IS EMIT
     ." RC5toLCD is running. Type STOP to quit"
-    ABORT
+    PWR_STATE ABORT
 ;
 
 CODE START
-MOV #SLEEP,R9
+MOV #$4000,R9
 MOV #BACKGROUND,2(R9)
 MOV #WARM,R9
-MOV #APP_INIT,2(R9)
+MOV #SYS_INIT,2(R9)
 MOV R9,R0
 ENDCODE 
 
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
+
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
 
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+CODE @
+MOV @R14,R14
+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]
+$1DBE CONSTANT STATE
+[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] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(R10)
+MOV #$402C,-2(R10)
+MOV @R1+,R13
+MOV @R13+,R0
+ENDCODE
+[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 20_US
 BEGIN
     BEGIN
@@ -3485,19 +5752,33 @@ BEGIN
 AGAIN
 ENDASM
 
+ASM SYS_OUT
+    MOV #WARM,R9
+    ADD #4,R9
+    MOV R9,R0
+ENDASM
+
 CODE STOP
-BW1 MOV #SLEEP,R9
+BW1 MOV #$4000,R9
     ADD #4,R9
     MOV R9,-2(R9)
+    MOV #WARM,R9
+    MOV #SYS_OUT,2(R9)
+    BIC.B #4,&$20A
+    BIC.B #4,&$20C
+    MOV #0,&$3C0
+    MOV #0,&$340
+    MOV #0,&$342
+    CALL #$400E
 COLON
-['] WARM >BODY IS WARM
 ECHO
-." RC5toLCD is removed. type START to restart"
-COLD
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM
 ;
 
-CODE APP_INIT
-MOV #%1011010100,&$3C0
+CODE SYS_INIT
+MOV #%10_1101_0100,&$3C0
 $1806 @ 16000 = [IF]
     MOV #1,&$3E0
 [THEN]
@@ -3505,7 +5786,7 @@ $1806 @ 24000 = [IF]
     MOV #2,&$3E0
 [THEN]
     MOV #19,&$3D2
-    MOV #%01100000,&$3C6
+MOV #%0110_0000,&$3C6
     MOV #10,&$3D6
     BIS.B #$20,&$204
     BIS.B #$20,&$20A
@@ -3516,7 +5797,7 @@ $1806 @ 24000 = [IF]
     BIS.B #4,&$20A
     BIC.B #4,&$20C
     MOV #RC5_INT,&$FFDE
-    MOV #%0100010100,&$340
+MOV #%01_0001_0100,&$340
     MOV ##3276,&$352
     MOV #%10000,&$342
     MOV #WDT_INT,&$FFEA
@@ -3547,21 +5828,150 @@ COLON
     ['] CR >BODY IS CR
     ['] EMIT >BODY IS EMIT
     ." RC5toLCD is running. Type STOP to quit"
-    ABORT
+    PWR_STATE ABORT
 ;
 
 CODE START
-MOV #SLEEP,R9
+MOV #$4000,R9
 MOV #BACKGROUND,2(R9)
 MOV #WARM,R9
-MOV #APP_INIT,2(R9)
+MOV #SYS_INIT,2(R9)
 MOV R9,R0
 ENDCODE 
 
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
+
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
 
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+CODE @
+MOV @R14,R14
+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]
+$1DBE CONSTANT STATE
+[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] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(R10)
+MOV #$402C,-2(R10)
+MOV @R1+,R13
+MOV @R13+,R0
+ENDCODE
+[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 20_US
 BEGIN
     BEGIN
@@ -3707,19 +6117,33 @@ BEGIN
 AGAIN
 ENDASM
 
+ASM SYS_OUT
+    MOV #WARM,R9
+    ADD #4,R9
+    MOV R9,R0
+ENDASM
+
 CODE STOP
-BW1 MOV #SLEEP,R9
+BW1 MOV #$4000,R9
     ADD #4,R9
     MOV R9,-2(R9)
+    MOV #WARM,R9
+    MOV #SYS_OUT,2(R9)
+    BIC.B #4,&$20A
+    BIC.B #4,&$20C
+    MOV #0,&$3C0
+    MOV #0,&$340
+    MOV #0,&$342
+    CALL #$400E
 COLON
-['] WARM >BODY IS WARM
 ECHO
-." RC5toLCD is removed. type START to restart"
-COLD
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM
 ;
 
-CODE APP_INIT
-MOV #%1011010100,&$3C0
+CODE SYS_INIT
+MOV #%10_1101_0100,&$3C0
 $1806 @ 16000 = [IF]
     MOV #1,&$3E0
 [THEN]
@@ -3727,7 +6151,7 @@ $1806 @ 24000 = [IF]
     MOV #2,&$3E0
 [THEN]
     MOV #19,&$3D2
-    MOV #%01100000,&$3C6
+MOV #%0110_0000,&$3C6
     MOV #10,&$3D6
     BIS.B #$20,&$204
     BIS.B #$20,&$20A
@@ -3738,7 +6162,7 @@ $1806 @ 24000 = [IF]
     BIS.B #4,&$20A
     BIC.B #4,&$20C
     MOV #RC5_INT,&$FFDE
-    MOV #%0100010100,&$340
+MOV #%01_0001_0100,&$340
     MOV ##3276,&$352
     MOV #%10000,&$342
     MOV #WDT_INT,&$FFEA
@@ -3769,21 +6193,150 @@ COLON
     ['] CR >BODY IS CR
     ['] EMIT >BODY IS EMIT
     ." RC5toLCD is running. Type STOP to quit"
-    ABORT
+    PWR_STATE ABORT
 ;
 
 CODE START
-MOV #SLEEP,R9
+MOV #$4000,R9
 MOV #BACKGROUND,2(R9)
 MOV #WARM,R9
-MOV #APP_INIT,2(R9)
+MOV #SYS_INIT,2(R9)
 MOV R9,R0
 ENDCODE 
 
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
+
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
 
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+CODE @
+MOV @R14,R14
+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]
+$1DBE CONSTANT STATE
+[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] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(R10)
+MOV #$402C,-2(R10)
+MOV @R1+,R13
+MOV @R13+,R0
+ENDCODE
+[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 20_US
 BEGIN
     BEGIN
@@ -3929,19 +6482,33 @@ BEGIN
 AGAIN
 ENDASM
 
+ASM SYS_OUT
+    MOV #WARM,R9
+    ADD #4,R9
+    MOV R9,R0
+ENDASM
+
 CODE STOP
-BW1 MOV #SLEEP,R9
+BW1 MOV #$4000,R9
     ADD #4,R9
     MOV R9,-2(R9)
+    MOV #WARM,R9
+    MOV #SYS_OUT,2(R9)
+    BIC.B #4,&$20A
+    BIC.B #4,&$20C
+    MOV #0,&$3C0
+    MOV #0,&$340
+    MOV #0,&$342
+    CALL #$400E
 COLON
-['] WARM >BODY IS WARM
 ECHO
-." RC5toLCD is removed. type START to restart"
-COLD
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM
 ;
 
-CODE APP_INIT
-MOV #%1011010100,&$3C0
+CODE SYS_INIT
+MOV #%10_1101_0100,&$3C0
 $1806 @ 16000 = [IF]
     MOV #1,&$3E0
 [THEN]
@@ -3949,7 +6516,7 @@ $1806 @ 24000 = [IF]
     MOV #2,&$3E0
 [THEN]
     MOV #19,&$3D2
-    MOV #%01100000,&$3C6
+MOV #%0110_0000,&$3C6
     MOV #10,&$3D6
     BIS.B #$20,&$204
     BIS.B #$20,&$20A
@@ -3960,7 +6527,7 @@ $1806 @ 24000 = [IF]
     BIS.B #4,&$20A
     BIC.B #4,&$20C
     MOV #RC5_INT,&$FFDE
-    MOV #%0100010100,&$340
+MOV #%01_0001_0100,&$340
     MOV ##3276,&$352
     MOV #%10000,&$342
     MOV #WDT_INT,&$FFEA
@@ -3991,21 +6558,150 @@ COLON
     ['] CR >BODY IS CR
     ['] EMIT >BODY IS EMIT
     ." RC5toLCD is running. Type STOP to quit"
-    ABORT
+    PWR_STATE ABORT
 ;
 
 CODE START
-MOV #SLEEP,R9
+MOV #$4000,R9
 MOV #BACKGROUND,2(R9)
 MOV #WARM,R9
-MOV #APP_INIT,2(R9)
+MOV #SYS_INIT,2(R9)
 MOV R9,R0
 ENDCODE 
 
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
+
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
 
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+CODE @
+MOV @R14,R14
+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]
+$1DBE CONSTANT STATE
+[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] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(R10)
+MOV #$402C,-2(R10)
+MOV @R1+,R13
+MOV @R13+,R0
+ENDCODE
+[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 20_US
 BEGIN
     BEGIN
@@ -4151,19 +6847,33 @@ BEGIN
 AGAIN
 ENDASM
 
+ASM SYS_OUT
+    MOV #WARM,R9
+    ADD #4,R9
+    MOV R9,R0
+ENDASM
+
 CODE STOP
-BW1 MOV #SLEEP,R9
+BW1 MOV #$4000,R9
     ADD #4,R9
     MOV R9,-2(R9)
+    MOV #WARM,R9
+    MOV #SYS_OUT,2(R9)
+    BIC.B #4,&$20A
+    BIC.B #4,&$20C
+    MOV #0,&$3C0
+    MOV #0,&$340
+    MOV #0,&$342
+    CALL #$400E
 COLON
-['] WARM >BODY IS WARM
 ECHO
-." RC5toLCD is removed. type START to restart"
-COLD
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM
 ;
 
-CODE APP_INIT
-MOV #%1011010100,&$3C0
+CODE SYS_INIT
+MOV #%10_1101_0100,&$3C0
 $1806 @ 16000 = [IF]
     MOV #1,&$3E0
 [THEN]
@@ -4171,7 +6881,7 @@ $1806 @ 24000 = [IF]
     MOV #2,&$3E0
 [THEN]
     MOV #19,&$3D2
-    MOV #%01100000,&$3C6
+MOV #%0110_0000,&$3C6
     MOV #10,&$3D6
     BIS.B #$20,&$204
     BIS.B #$20,&$20A
@@ -4182,7 +6892,7 @@ $1806 @ 24000 = [IF]
     BIS.B #4,&$20A
     BIC.B #4,&$20C
     MOV #RC5_INT,&$FFDE
-    MOV #%0100010100,&$340
+MOV #%01_0001_0100,&$340
     MOV ##3276,&$352
     MOV #%10000,&$342
     MOV #WDT_INT,&$FFEA
@@ -4213,20 +6923,149 @@ COLON
     ['] CR >BODY IS CR
     ['] EMIT >BODY IS EMIT
     ." RC5toLCD is running. Type STOP to quit"
-    ABORT
+    PWR_STATE ABORT
 ;
 
-CODE START
-MOV #SLEEP,R9
-MOV #BACKGROUND,2(R9)
-MOV #WARM,R9
-MOV #APP_INIT,2(R9)
-MOV R9,R0
-ENDCODE 
+CODE START
+MOV #$4000,R9
+MOV #BACKGROUND,2(R9)
+MOV #WARM,R9
+MOV #SYS_INIT,2(R9)
+MOV R9,R0
+ENDCODE 
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
+
+[DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
+
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
+
+MARKER {RC5TOLCD}
+
+[UNDEFINED] @ [IF]
+CODE @
+MOV @R14,R14
+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]
+$1DBE CONSTANT STATE
+[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] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(R10)
+MOV #$402C,-2(R10)
+MOV @R1+,R13
+MOV @R13+,R0
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEFER! [IF]
+CODE DEFER!
+MOV @R15+,2(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE
+[THEN]
 
-[DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [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]
 
-MARKER {RC5TOLCD}
 
 CODE 20_US
 BEGIN
@@ -4373,19 +7212,33 @@ BEGIN
 AGAIN
 ENDASM
 
+ASM SYS_OUT
+    MOV #WARM,R9
+    ADD #4,R9
+    MOV R9,R0
+ENDASM
+
 CODE STOP
-BW1 MOV #SLEEP,R9
+BW1 MOV #$4000,R9
     ADD #4,R9
     MOV R9,-2(R9)
+    MOV #WARM,R9
+    MOV #SYS_OUT,2(R9)
+    BIC.B #4,&$20A
+    BIC.B #4,&$20C
+    MOV #0,&$3C0
+    MOV #0,&$340
+    MOV #0,&$342
+    CALL #$400E
 COLON
-['] WARM >BODY IS WARM
 ECHO
-." RC5toLCD is removed. type START to restart"
-COLD
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM
 ;
 
-CODE APP_INIT
-MOV #%1011010100,&$3C0
+CODE SYS_INIT
+MOV #%10_1101_0100,&$3C0
 $1806 @ 16000 = [IF]
     MOV #1,&$3E0
 [THEN]
@@ -4393,7 +7246,7 @@ $1806 @ 24000 = [IF]
     MOV #2,&$3E0
 [THEN]
     MOV #19,&$3D2
-    MOV #%01100000,&$3C6
+MOV #%0110_0000,&$3C6
     MOV #10,&$3D6
     BIS.B #$20,&$204
     BIS.B #$20,&$20A
@@ -4404,7 +7257,7 @@ $1806 @ 24000 = [IF]
     BIS.B #4,&$20A
     BIC.B #4,&$20C
     MOV #RC5_INT,&$FFDE
-    MOV #%0100010100,&$340
+MOV #%01_0001_0100,&$340
     MOV ##3276,&$352
     MOV #%10000,&$342
     MOV #WDT_INT,&$FFEA
@@ -4435,21 +7288,150 @@ COLON
     ['] CR >BODY IS CR
     ['] EMIT >BODY IS EMIT
     ." RC5toLCD is running. Type STOP to quit"
-    ABORT
+    PWR_STATE ABORT
 ;
 
 CODE START
-MOV #SLEEP,R9
+MOV #$4000,R9
 MOV #BACKGROUND,2(R9)
 MOV #WARM,R9
-MOV #APP_INIT,2(R9)
+MOV #SYS_INIT,2(R9)
 MOV R9,R0
 ENDCODE 
 
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
+
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
 
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+CODE @
+MOV @R14,R14
+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]
+$1DBE CONSTANT STATE
+[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] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(R10)
+MOV #$402C,-2(R10)
+MOV @R1+,R13
+MOV @R13+,R0
+ENDCODE
+[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 20_US
 BEGIN
     BEGIN
@@ -4595,19 +7577,33 @@ BEGIN
 AGAIN
 ENDASM
 
+ASM SYS_OUT
+    MOV #WARM,R9
+    ADD #4,R9
+    MOV R9,R0
+ENDASM
+
 CODE STOP
-BW1 MOV #SLEEP,R9
+BW1 MOV #$4000,R9
     ADD #4,R9
     MOV R9,-2(R9)
+    MOV #WARM,R9
+    MOV #SYS_OUT,2(R9)
+    BIC.B #4,&$20A
+    BIC.B #4,&$20C
+    MOV #0,&$3C0
+    MOV #0,&$340
+    MOV #0,&$342
+    CALL #$400E
 COLON
-['] WARM >BODY IS WARM
 ECHO
-." RC5toLCD is removed. type START to restart"
-COLD
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM
 ;
 
-CODE APP_INIT
-MOV #%1011010100,&$3C0
+CODE SYS_INIT
+MOV #%10_1101_0100,&$3C0
 $1806 @ 16000 = [IF]
     MOV #1,&$3E0
 [THEN]
@@ -4615,7 +7611,7 @@ $1806 @ 24000 = [IF]
     MOV #2,&$3E0
 [THEN]
     MOV #19,&$3D2
-    MOV #%01100000,&$3C6
+MOV #%0110_0000,&$3C6
     MOV #10,&$3D6
     BIS.B #$20,&$204
     BIS.B #$20,&$20A
@@ -4626,7 +7622,7 @@ $1806 @ 24000 = [IF]
     BIS.B #4,&$20A
     BIC.B #4,&$20C
     MOV #RC5_INT,&$FFDE
-    MOV #%0100010100,&$340
+MOV #%01_0001_0100,&$340
     MOV ##3276,&$352
     MOV #%10000,&$342
     MOV #WDT_INT,&$FFEA
@@ -4657,21 +7653,150 @@ COLON
     ['] CR >BODY IS CR
     ['] EMIT >BODY IS EMIT
     ." RC5toLCD is running. Type STOP to quit"
-    ABORT
+    PWR_STATE ABORT
 ;
 
 CODE START
-MOV #SLEEP,R9
+MOV #$4000,R9
 MOV #BACKGROUND,2(R9)
 MOV #WARM,R9
-MOV #APP_INIT,2(R9)
+MOV #SYS_INIT,2(R9)
 MOV R9,R0
 ENDCODE 
 
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
+
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
 
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+CODE @
+MOV @R14,R14
+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]
+$1DBE CONSTANT STATE
+[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] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(R10)
+MOV #$402C,-2(R10)
+MOV @R1+,R13
+MOV @R13+,R0
+ENDCODE
+[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 20_US
 BEGIN
     BEGIN
@@ -4817,19 +7942,33 @@ BEGIN
 AGAIN
 ENDASM
 
+ASM SYS_OUT
+    MOV #WARM,R9
+    ADD #4,R9
+    MOV R9,R0
+ENDASM
+
 CODE STOP
-BW1 MOV #SLEEP,R9
+BW1 MOV #$4000,R9
     ADD #4,R9
     MOV R9,-2(R9)
+    MOV #WARM,R9
+    MOV #SYS_OUT,2(R9)
+    BIC.B #4,&$20A
+    BIC.B #4,&$20C
+    MOV #0,&$3C0
+    MOV #0,&$340
+    MOV #0,&$342
+    CALL #$400E
 COLON
-['] WARM >BODY IS WARM
 ECHO
-." RC5toLCD is removed. type START to restart"
-COLD
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM
 ;
 
-CODE APP_INIT
-MOV #%1011010100,&$3C0
+CODE SYS_INIT
+MOV #%10_1101_0100,&$3C0
 $1806 @ 16000 = [IF]
     MOV #1,&$3E0
 [THEN]
@@ -4837,7 +7976,7 @@ $1806 @ 24000 = [IF]
     MOV #2,&$3E0
 [THEN]
     MOV #19,&$3D2
-    MOV #%01100000,&$3C6
+MOV #%0110_0000,&$3C6
     MOV #10,&$3D6
     BIS.B #$20,&$204
     BIS.B #$20,&$20A
@@ -4848,7 +7987,7 @@ $1806 @ 24000 = [IF]
     BIS.B #4,&$20A
     BIC.B #4,&$20C
     MOV #RC5_INT,&$FFDE
-    MOV #%0100010100,&$340
+MOV #%01_0001_0100,&$340
     MOV ##3276,&$352
     MOV #%10000,&$342
     MOV #WDT_INT,&$FFEA
@@ -4879,21 +8018,150 @@ COLON
     ['] CR >BODY IS CR
     ['] EMIT >BODY IS EMIT
     ." RC5toLCD is running. Type STOP to quit"
-    ABORT
+    PWR_STATE ABORT
 ;
 
 CODE START
-MOV #SLEEP,R9
+MOV #$4000,R9
 MOV #BACKGROUND,2(R9)
 MOV #WARM,R9
-MOV #APP_INIT,2(R9)
+MOV #SYS_INIT,2(R9)
 MOV R9,R0
 ENDCODE 
 
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
+
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
 
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+CODE @
+MOV @R14,R14
+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]
+$1DBE CONSTANT STATE
+[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] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(R10)
+MOV #$402C,-2(R10)
+MOV @R1+,R13
+MOV @R13+,R0
+ENDCODE
+[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 20_US
 BEGIN
     BEGIN
@@ -5039,19 +8307,33 @@ BEGIN
 AGAIN
 ENDASM
 
+ASM SYS_OUT
+    MOV #WARM,R9
+    ADD #4,R9
+    MOV R9,R0
+ENDASM
+
 CODE STOP
-BW1 MOV #SLEEP,R9
+BW1 MOV #$4000,R9
     ADD #4,R9
     MOV R9,-2(R9)
+    MOV #WARM,R9
+    MOV #SYS_OUT,2(R9)
+    BIC.B #4,&$20A
+    BIC.B #4,&$20C
+    MOV #0,&$3C0
+    MOV #0,&$340
+    MOV #0,&$342
+    CALL #$400E
 COLON
-['] WARM >BODY IS WARM
 ECHO
-." RC5toLCD is removed. type START to restart"
-COLD
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM
 ;
 
-CODE APP_INIT
-MOV #%1011010100,&$3C0
+CODE SYS_INIT
+MOV #%10_1101_0100,&$3C0
 $1806 @ 16000 = [IF]
     MOV #1,&$3E0
 [THEN]
@@ -5059,7 +8341,7 @@ $1806 @ 24000 = [IF]
     MOV #2,&$3E0
 [THEN]
     MOV #19,&$3D2
-    MOV #%01100000,&$3C6
+MOV #%0110_0000,&$3C6
     MOV #10,&$3D6
     BIS.B #$20,&$204
     BIS.B #$20,&$20A
@@ -5070,7 +8352,7 @@ $1806 @ 24000 = [IF]
     BIS.B #4,&$20A
     BIC.B #4,&$20C
     MOV #RC5_INT,&$FFDE
-    MOV #%0100010100,&$340
+MOV #%01_0001_0100,&$340
     MOV ##3276,&$352
     MOV #%10000,&$342
     MOV #WDT_INT,&$FFEA
@@ -5101,20 +8383,149 @@ COLON
     ['] CR >BODY IS CR
     ['] EMIT >BODY IS EMIT
     ." RC5toLCD is running. Type STOP to quit"
-    ABORT
+    PWR_STATE ABORT
 ;
 
-CODE START
-MOV #SLEEP,R9
-MOV #BACKGROUND,2(R9)
-MOV #WARM,R9
-MOV #APP_INIT,2(R9)
-MOV R9,R0
-ENDCODE 
+CODE START
+MOV #$4000,R9
+MOV #BACKGROUND,2(R9)
+MOV #WARM,R9
+MOV #SYS_INIT,2(R9)
+MOV R9,R0
+ENDCODE 
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
+
+[DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
+
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
+
+MARKER {RC5TOLCD}
+
+[UNDEFINED] @ [IF]
+CODE @
+MOV @R14,R14
+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]
+$1DBE CONSTANT STATE
+[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] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
 
-[DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(R10)
+MOV #$402C,-2(R10)
+MOV @R1+,R13
+MOV @R13+,R0
+ENDCODE
+[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]
 
-MARKER {RC5TOLCD}
 
 CODE 20_US
 BEGIN
@@ -5261,19 +8672,33 @@ BEGIN
 AGAIN
 ENDASM
 
+ASM SYS_OUT
+    MOV #WARM,R9
+    ADD #4,R9
+    MOV R9,R0
+ENDASM
+
 CODE STOP
-BW1 MOV #SLEEP,R9
+BW1 MOV #$4000,R9
     ADD #4,R9
     MOV R9,-2(R9)
+    MOV #WARM,R9
+    MOV #SYS_OUT,2(R9)
+    BIC.B #4,&$20A
+    BIC.B #4,&$20C
+    MOV #0,&$3C0
+    MOV #0,&$340
+    MOV #0,&$342
+    CALL #$400E
 COLON
-['] WARM >BODY IS WARM
 ECHO
-." RC5toLCD is removed. type START to restart"
-COLD
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM
 ;
 
-CODE APP_INIT
-MOV #%1011010100,&$3C0
+CODE SYS_INIT
+MOV #%10_1101_0100,&$3C0
 $1806 @ 16000 = [IF]
     MOV #1,&$3E0
 [THEN]
@@ -5281,7 +8706,7 @@ $1806 @ 24000 = [IF]
     MOV #2,&$3E0
 [THEN]
     MOV #19,&$3D2
-    MOV #%01100000,&$3C6
+MOV #%0110_0000,&$3C6
     MOV #10,&$3D6
     BIS.B #$20,&$204
     BIS.B #$20,&$20A
@@ -5292,7 +8717,7 @@ $1806 @ 24000 = [IF]
     BIS.B #4,&$20A
     BIC.B #4,&$20C
     MOV #RC5_INT,&$FFDE
-    MOV #%0100010100,&$340
+MOV #%01_0001_0100,&$340
     MOV ##3276,&$352
     MOV #%10000,&$342
     MOV #WDT_INT,&$FFEA
@@ -5323,21 +8748,150 @@ COLON
     ['] CR >BODY IS CR
     ['] EMIT >BODY IS EMIT
     ." RC5toLCD is running. Type STOP to quit"
-    ABORT
+    PWR_STATE ABORT
 ;
 
 CODE START
-MOV #SLEEP,R9
+MOV #$4000,R9
 MOV #BACKGROUND,2(R9)
 MOV #WARM,R9
-MOV #APP_INIT,2(R9)
+MOV #SYS_INIT,2(R9)
 MOV R9,R0
 ENDCODE 
 
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
+
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
 
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+CODE @
+MOV @R14,R14
+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]
+$1DBE CONSTANT STATE
+[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] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(R10)
+MOV #$402C,-2(R10)
+MOV @R1+,R13
+MOV @R13+,R0
+ENDCODE
+[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 20_US
 BEGIN
     BEGIN
@@ -5483,19 +9037,33 @@ BEGIN
 AGAIN
 ENDASM
 
+ASM SYS_OUT
+    MOV #WARM,R9
+    ADD #4,R9
+    MOV R9,R0
+ENDASM
+
 CODE STOP
-BW1 MOV #SLEEP,R9
+BW1 MOV #$4000,R9
     ADD #4,R9
     MOV R9,-2(R9)
+    MOV #WARM,R9
+    MOV #SYS_OUT,2(R9)
+    BIC.B #4,&$20A
+    BIC.B #4,&$20C
+    MOV #0,&$3C0
+    MOV #0,&$340
+    MOV #0,&$342
+    CALL #$400E
 COLON
-['] WARM >BODY IS WARM
 ECHO
-." RC5toLCD is removed. type START to restart"
-COLD
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM
 ;
 
-CODE APP_INIT
-MOV #%1011010100,&$3C0
+CODE SYS_INIT
+MOV #%10_1101_0100,&$3C0
 $1806 @ 16000 = [IF]
     MOV #1,&$3E0
 [THEN]
@@ -5503,7 +9071,7 @@ $1806 @ 24000 = [IF]
     MOV #2,&$3E0
 [THEN]
     MOV #19,&$3D2
-    MOV #%01100000,&$3C6
+MOV #%0110_0000,&$3C6
     MOV #10,&$3D6
     BIS.B #$20,&$204
     BIS.B #$20,&$20A
@@ -5514,7 +9082,7 @@ $1806 @ 24000 = [IF]
     BIS.B #4,&$20A
     BIC.B #4,&$20C
     MOV #RC5_INT,&$FFDE
-    MOV #%0100010100,&$340
+MOV #%01_0001_0100,&$340
     MOV ##3276,&$352
     MOV #%10000,&$342
     MOV #WDT_INT,&$FFEA
@@ -5545,21 +9113,150 @@ COLON
     ['] CR >BODY IS CR
     ['] EMIT >BODY IS EMIT
     ." RC5toLCD is running. Type STOP to quit"
-    ABORT
+    PWR_STATE ABORT
 ;
 
 CODE START
-MOV #SLEEP,R9
+MOV #$4000,R9
 MOV #BACKGROUND,2(R9)
 MOV #WARM,R9
-MOV #APP_INIT,2(R9)
+MOV #SYS_INIT,2(R9)
 MOV R9,R0
 ENDCODE 
 
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
+
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
 
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+CODE @
+MOV @R14,R14
+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]
+$1DBE CONSTANT STATE
+[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] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(R10)
+MOV #$402C,-2(R10)
+MOV @R1+,R13
+MOV @R13+,R0
+ENDCODE
+[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 20_US
 BEGIN
     BEGIN
@@ -5705,19 +9402,33 @@ BEGIN
 AGAIN
 ENDASM
 
+ASM SYS_OUT
+    MOV #WARM,R9
+    ADD #4,R9
+    MOV R9,R0
+ENDASM
+
 CODE STOP
-BW1 MOV #SLEEP,R9
+BW1 MOV #$4000,R9
     ADD #4,R9
     MOV R9,-2(R9)
+    MOV #WARM,R9
+    MOV #SYS_OUT,2(R9)
+    BIC.B #4,&$20A
+    BIC.B #4,&$20C
+    MOV #0,&$3C0
+    MOV #0,&$340
+    MOV #0,&$342
+    CALL #$400E
 COLON
-['] WARM >BODY IS WARM
 ECHO
-." RC5toLCD is removed. type START to restart"
-COLD
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM
 ;
 
-CODE APP_INIT
-MOV #%1011010100,&$3C0
+CODE SYS_INIT
+MOV #%10_1101_0100,&$3C0
 $1806 @ 16000 = [IF]
     MOV #1,&$3E0
 [THEN]
@@ -5725,7 +9436,7 @@ $1806 @ 24000 = [IF]
     MOV #2,&$3E0
 [THEN]
     MOV #19,&$3D2
-    MOV #%01100000,&$3C6
+MOV #%0110_0000,&$3C6
     MOV #10,&$3D6
     BIS.B #$20,&$204
     BIS.B #$20,&$20A
@@ -5736,7 +9447,7 @@ $1806 @ 24000 = [IF]
     BIS.B #4,&$20A
     BIC.B #4,&$20C
     MOV #RC5_INT,&$FFDE
-    MOV #%0100010100,&$340
+MOV #%01_0001_0100,&$340
     MOV ##3276,&$352
     MOV #%10000,&$342
     MOV #WDT_INT,&$FFEA
@@ -5767,21 +9478,150 @@ COLON
     ['] CR >BODY IS CR
     ['] EMIT >BODY IS EMIT
     ." RC5toLCD is running. Type STOP to quit"
-    ABORT
+    PWR_STATE ABORT
 ;
 
 CODE START
-MOV #SLEEP,R9
+MOV #$4000,R9
 MOV #BACKGROUND,2(R9)
 MOV #WARM,R9
-MOV #APP_INIT,2(R9)
+MOV #SYS_INIT,2(R9)
 MOV R9,R0
 ENDCODE 
 
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
+
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
 
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+CODE @
+MOV @R14,R14
+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]
+$1DBE CONSTANT STATE
+[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] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(R10)
+MOV #$402C,-2(R10)
+MOV @R1+,R13
+MOV @R13+,R0
+ENDCODE
+[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 20_US
 BEGIN
     BEGIN
@@ -5927,19 +9767,33 @@ BEGIN
 AGAIN
 ENDASM
 
+ASM SYS_OUT
+    MOV #WARM,R9
+    ADD #4,R9
+    MOV R9,R0
+ENDASM
+
 CODE STOP
-BW1 MOV #SLEEP,R9
+BW1 MOV #$4000,R9
     ADD #4,R9
     MOV R9,-2(R9)
+    MOV #WARM,R9
+    MOV #SYS_OUT,2(R9)
+    BIC.B #4,&$20A
+    BIC.B #4,&$20C
+    MOV #0,&$3C0
+    MOV #0,&$340
+    MOV #0,&$342
+    CALL #$400E
 COLON
-['] WARM >BODY IS WARM
 ECHO
-." RC5toLCD is removed. type START to restart"
-COLD
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM
 ;
 
-CODE APP_INIT
-MOV #%1011010100,&$3C0
+CODE SYS_INIT
+MOV #%10_1101_0100,&$3C0
 $1806 @ 16000 = [IF]
     MOV #1,&$3E0
 [THEN]
@@ -5947,7 +9801,7 @@ $1806 @ 24000 = [IF]
     MOV #2,&$3E0
 [THEN]
     MOV #19,&$3D2
-    MOV #%01100000,&$3C6
+MOV #%0110_0000,&$3C6
     MOV #10,&$3D6
     BIS.B #$20,&$204
     BIS.B #$20,&$20A
@@ -5958,7 +9812,7 @@ $1806 @ 24000 = [IF]
     BIS.B #4,&$20A
     BIC.B #4,&$20C
     MOV #RC5_INT,&$FFDE
-    MOV #%0100010100,&$340
+MOV #%01_0001_0100,&$340
     MOV ##3276,&$352
     MOV #%10000,&$342
     MOV #WDT_INT,&$FFEA
@@ -5989,20 +9843,149 @@ COLON
     ['] CR >BODY IS CR
     ['] EMIT >BODY IS EMIT
     ." RC5toLCD is running. Type STOP to quit"
-    ABORT
+    PWR_STATE ABORT
 ;
 
-CODE START
-MOV #SLEEP,R9
-MOV #BACKGROUND,2(R9)
-MOV #WARM,R9
-MOV #APP_INIT,2(R9)
-MOV R9,R0
-ENDCODE 
+CODE START
+MOV #$4000,R9
+MOV #BACKGROUND,2(R9)
+MOV #WARM,R9
+MOV #SYS_INIT,2(R9)
+MOV R9,R0
+ENDCODE 
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
+
+[DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
+
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
+
+MARKER {RC5TOLCD}
 
-[DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
+[UNDEFINED] @ [IF]
+CODE @
+MOV @R14,R14
+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]
+$1DBE CONSTANT STATE
+[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] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(R10)
+MOV #$402C,-2(R10)
+MOV @R1+,R13
+MOV @R13+,R0
+ENDCODE
+[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]
 
-MARKER {RC5TOLCD}
 
 CODE 20_US
 BEGIN
@@ -6149,19 +10132,33 @@ BEGIN
 AGAIN
 ENDASM
 
+ASM SYS_OUT
+    MOV #WARM,R9
+    ADD #4,R9
+    MOV R9,R0
+ENDASM
+
 CODE STOP
-BW1 MOV #SLEEP,R9
+BW1 MOV #$4000,R9
     ADD #4,R9
     MOV R9,-2(R9)
+    MOV #WARM,R9
+    MOV #SYS_OUT,2(R9)
+    BIC.B #4,&$20A
+    BIC.B #4,&$20C
+    MOV #0,&$3C0
+    MOV #0,&$340
+    MOV #0,&$342
+    CALL #$400E
 COLON
-['] WARM >BODY IS WARM
 ECHO
-." RC5toLCD is removed. type START to restart"
-COLD
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM
 ;
 
-CODE APP_INIT
-MOV #%1011010100,&$3C0
+CODE SYS_INIT
+MOV #%10_1101_0100,&$3C0
 $1806 @ 16000 = [IF]
     MOV #1,&$3E0
 [THEN]
@@ -6169,7 +10166,7 @@ $1806 @ 24000 = [IF]
     MOV #2,&$3E0
 [THEN]
     MOV #19,&$3D2
-    MOV #%01100000,&$3C6
+MOV #%0110_0000,&$3C6
     MOV #10,&$3D6
     BIS.B #$20,&$204
     BIS.B #$20,&$20A
@@ -6180,7 +10177,7 @@ $1806 @ 24000 = [IF]
     BIS.B #4,&$20A
     BIC.B #4,&$20C
     MOV #RC5_INT,&$FFDE
-    MOV #%0100010100,&$340
+MOV #%01_0001_0100,&$340
     MOV ##3276,&$352
     MOV #%10000,&$342
     MOV #WDT_INT,&$FFEA
@@ -6211,21 +10208,150 @@ COLON
     ['] CR >BODY IS CR
     ['] EMIT >BODY IS EMIT
     ." RC5toLCD is running. Type STOP to quit"
-    ABORT
+    PWR_STATE ABORT
 ;
 
 CODE START
-MOV #SLEEP,R9
+MOV #$4000,R9
 MOV #BACKGROUND,2(R9)
 MOV #WARM,R9
-MOV #APP_INIT,2(R9)
+MOV #SYS_INIT,2(R9)
 MOV R9,R0
 ENDCODE 
 
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
+
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
 
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+CODE @
+MOV @R14,R14
+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]
+$1DBE CONSTANT STATE
+[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] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(R10)
+MOV #$402C,-2(R10)
+MOV @R1+,R13
+MOV @R13+,R0
+ENDCODE
+[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 20_US
 BEGIN
     BEGIN
@@ -6371,19 +10497,33 @@ BEGIN
 AGAIN
 ENDASM
 
+ASM SYS_OUT
+    MOV #WARM,R9
+    ADD #4,R9
+    MOV R9,R0
+ENDASM
+
 CODE STOP
-BW1 MOV #SLEEP,R9
+BW1 MOV #$4000,R9
     ADD #4,R9
     MOV R9,-2(R9)
+    MOV #WARM,R9
+    MOV #SYS_OUT,2(R9)
+    BIC.B #4,&$20A
+    BIC.B #4,&$20C
+    MOV #0,&$3C0
+    MOV #0,&$340
+    MOV #0,&$342
+    CALL #$400E
 COLON
-['] WARM >BODY IS WARM
 ECHO
-." RC5toLCD is removed. type START to restart"
-COLD
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM
 ;
 
-CODE APP_INIT
-MOV #%1011010100,&$3C0
+CODE SYS_INIT
+MOV #%10_1101_0100,&$3C0
 $1806 @ 16000 = [IF]
     MOV #1,&$3E0
 [THEN]
@@ -6391,7 +10531,7 @@ $1806 @ 24000 = [IF]
     MOV #2,&$3E0
 [THEN]
     MOV #19,&$3D2
-    MOV #%01100000,&$3C6
+MOV #%0110_0000,&$3C6
     MOV #10,&$3D6
     BIS.B #$20,&$204
     BIS.B #$20,&$20A
@@ -6402,7 +10542,7 @@ $1806 @ 24000 = [IF]
     BIS.B #4,&$20A
     BIC.B #4,&$20C
     MOV #RC5_INT,&$FFDE
-    MOV #%0100010100,&$340
+MOV #%01_0001_0100,&$340
     MOV ##3276,&$352
     MOV #%10000,&$342
     MOV #WDT_INT,&$FFEA
@@ -6433,21 +10573,150 @@ COLON
     ['] CR >BODY IS CR
     ['] EMIT >BODY IS EMIT
     ." RC5toLCD is running. Type STOP to quit"
-    ABORT
+    PWR_STATE ABORT
 ;
 
 CODE START
-MOV #SLEEP,R9
+MOV #$4000,R9
 MOV #BACKGROUND,2(R9)
 MOV #WARM,R9
-MOV #APP_INIT,2(R9)
+MOV #SYS_INIT,2(R9)
 MOV R9,R0
 ENDCODE 
 
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
+
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
 
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+CODE @
+MOV @R14,R14
+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]
+$1DBE CONSTANT STATE
+[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] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(R10)
+MOV #$402C,-2(R10)
+MOV @R1+,R13
+MOV @R13+,R0
+ENDCODE
+[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 20_US
 BEGIN
     BEGIN
@@ -6593,19 +10862,33 @@ BEGIN
 AGAIN
 ENDASM
 
+ASM SYS_OUT
+    MOV #WARM,R9
+    ADD #4,R9
+    MOV R9,R0
+ENDASM
+
 CODE STOP
-BW1 MOV #SLEEP,R9
+BW1 MOV #$4000,R9
     ADD #4,R9
     MOV R9,-2(R9)
+    MOV #WARM,R9
+    MOV #SYS_OUT,2(R9)
+    BIC.B #4,&$20A
+    BIC.B #4,&$20C
+    MOV #0,&$3C0
+    MOV #0,&$340
+    MOV #0,&$342
+    CALL #$400E
 COLON
-['] WARM >BODY IS WARM
 ECHO
-." RC5toLCD is removed. type START to restart"
-COLD
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM
 ;
 
-CODE APP_INIT
-MOV #%1011010100,&$3C0
+CODE SYS_INIT
+MOV #%10_1101_0100,&$3C0
 $1806 @ 16000 = [IF]
     MOV #1,&$3E0
 [THEN]
@@ -6613,7 +10896,7 @@ $1806 @ 24000 = [IF]
     MOV #2,&$3E0
 [THEN]
     MOV #19,&$3D2
-    MOV #%01100000,&$3C6
+MOV #%0110_0000,&$3C6
     MOV #10,&$3D6
     BIS.B #$20,&$204
     BIS.B #$20,&$20A
@@ -6624,7 +10907,7 @@ $1806 @ 24000 = [IF]
     BIS.B #4,&$20A
     BIC.B #4,&$20C
     MOV #RC5_INT,&$FFDE
-    MOV #%0100010100,&$340
+MOV #%01_0001_0100,&$340
     MOV ##3276,&$352
     MOV #%10000,&$342
     MOV #WDT_INT,&$FFEA
@@ -6655,21 +10938,150 @@ COLON
     ['] CR >BODY IS CR
     ['] EMIT >BODY IS EMIT
     ." RC5toLCD is running. Type STOP to quit"
-    ABORT
+    PWR_STATE ABORT
 ;
 
 CODE START
-MOV #SLEEP,R9
+MOV #$4000,R9
 MOV #BACKGROUND,2(R9)
 MOV #WARM,R9
-MOV #APP_INIT,2(R9)
+MOV #SYS_INIT,2(R9)
 MOV R9,R0
 ENDCODE 
 
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
+
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
 
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+CODE @
+MOV @R14,R14
+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]
+$1DBE CONSTANT STATE
+[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] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(R10)
+MOV #$402C,-2(R10)
+MOV @R1+,R13
+MOV @R13+,R0
+ENDCODE
+[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 20_US
 BEGIN
     BEGIN
@@ -6815,19 +11227,33 @@ BEGIN
 AGAIN
 ENDASM
 
+ASM SYS_OUT
+    MOV #WARM,R9
+    ADD #4,R9
+    MOV R9,R0
+ENDASM
+
 CODE STOP
-BW1 MOV #SLEEP,R9
+BW1 MOV #$4000,R9
     ADD #4,R9
     MOV R9,-2(R9)
+    MOV #WARM,R9
+    MOV #SYS_OUT,2(R9)
+    BIC.B #4,&$20A
+    BIC.B #4,&$20C
+    MOV #0,&$3C0
+    MOV #0,&$340
+    MOV #0,&$342
+    CALL #$400E
 COLON
-['] WARM >BODY IS WARM
 ECHO
-." RC5toLCD is removed. type START to restart"
-COLD
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM
 ;
 
-CODE APP_INIT
-MOV #%1011010100,&$3C0
+CODE SYS_INIT
+MOV #%10_1101_0100,&$3C0
 $1806 @ 16000 = [IF]
     MOV #1,&$3E0
 [THEN]
@@ -6835,7 +11261,7 @@ $1806 @ 24000 = [IF]
     MOV #2,&$3E0
 [THEN]
     MOV #19,&$3D2
-    MOV #%01100000,&$3C6
+MOV #%0110_0000,&$3C6
     MOV #10,&$3D6
     BIS.B #$20,&$204
     BIS.B #$20,&$20A
@@ -6846,7 +11272,7 @@ $1806 @ 24000 = [IF]
     BIS.B #4,&$20A
     BIC.B #4,&$20C
     MOV #RC5_INT,&$FFDE
-    MOV #%0100010100,&$340
+MOV #%01_0001_0100,&$340
     MOV ##3276,&$352
     MOV #%10000,&$342
     MOV #WDT_INT,&$FFEA
@@ -6877,21 +11303,150 @@ COLON
     ['] CR >BODY IS CR
     ['] EMIT >BODY IS EMIT
     ." RC5toLCD is running. Type STOP to quit"
-    ABORT
+    PWR_STATE ABORT
 ;
 
 CODE START
-MOV #SLEEP,R9
+MOV #$4000,R9
 MOV #BACKGROUND,2(R9)
 MOV #WARM,R9
-MOV #APP_INIT,2(R9)
+MOV #SYS_INIT,2(R9)
 MOV R9,R0
 ENDCODE 
 
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
+
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
 
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+CODE @
+MOV @R14,R14
+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]
+$1DBE CONSTANT STATE
+[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] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(R10)
+MOV #$402C,-2(R10)
+MOV @R1+,R13
+MOV @R13+,R0
+ENDCODE
+[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 20_US
 BEGIN
     BEGIN
@@ -7037,19 +11592,33 @@ BEGIN
 AGAIN
 ENDASM
 
+ASM SYS_OUT
+    MOV #WARM,R9
+    ADD #4,R9
+    MOV R9,R0
+ENDASM
+
 CODE STOP
-BW1 MOV #SLEEP,R9
+BW1 MOV #$4000,R9
     ADD #4,R9
     MOV R9,-2(R9)
+    MOV #WARM,R9
+    MOV #SYS_OUT,2(R9)
+    BIC.B #4,&$20A
+    BIC.B #4,&$20C
+    MOV #0,&$3C0
+    MOV #0,&$340
+    MOV #0,&$342
+    CALL #$400E
 COLON
-['] WARM >BODY IS WARM
 ECHO
-." RC5toLCD is removed. type START to restart"
-COLD
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM
 ;
 
-CODE APP_INIT
-MOV #%1011010100,&$3C0
+CODE SYS_INIT
+MOV #%10_1101_0100,&$3C0
 $1806 @ 16000 = [IF]
     MOV #1,&$3E0
 [THEN]
@@ -7057,7 +11626,7 @@ $1806 @ 24000 = [IF]
     MOV #2,&$3E0
 [THEN]
     MOV #19,&$3D2
-    MOV #%01100000,&$3C6
+MOV #%0110_0000,&$3C6
     MOV #10,&$3D6
     BIS.B #$20,&$204
     BIS.B #$20,&$20A
@@ -7068,7 +11637,7 @@ $1806 @ 24000 = [IF]
     BIS.B #4,&$20A
     BIC.B #4,&$20C
     MOV #RC5_INT,&$FFDE
-    MOV #%0100010100,&$340
+MOV #%01_0001_0100,&$340
     MOV ##3276,&$352
     MOV #%10000,&$342
     MOV #WDT_INT,&$FFEA
@@ -7099,21 +11668,150 @@ COLON
     ['] CR >BODY IS CR
     ['] EMIT >BODY IS EMIT
     ." RC5toLCD is running. Type STOP to quit"
-    ABORT
+    PWR_STATE ABORT
 ;
 
 CODE START
-MOV #SLEEP,R9
+MOV #$4000,R9
 MOV #BACKGROUND,2(R9)
 MOV #WARM,R9
-MOV #APP_INIT,2(R9)
+MOV #SYS_INIT,2(R9)
 MOV R9,R0
 ENDCODE 
 
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
+
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
 
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+CODE @
+MOV @R14,R14
+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]
+$1DBE CONSTANT STATE
+[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] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(R10)
+MOV #$402C,-2(R10)
+MOV @R1+,R13
+MOV @R13+,R0
+ENDCODE
+[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 20_US
 BEGIN
     BEGIN
@@ -7259,19 +11957,33 @@ BEGIN
 AGAIN
 ENDASM
 
+ASM SYS_OUT
+    MOV #WARM,R9
+    ADD #4,R9
+    MOV R9,R0
+ENDASM
+
 CODE STOP
-BW1 MOV #SLEEP,R9
+BW1 MOV #$4000,R9
     ADD #4,R9
     MOV R9,-2(R9)
+    MOV #WARM,R9
+    MOV #SYS_OUT,2(R9)
+    BIC.B #4,&$20A
+    BIC.B #4,&$20C
+    MOV #0,&$3C0
+    MOV #0,&$340
+    MOV #0,&$342
+    CALL #$400E
 COLON
-['] WARM >BODY IS WARM
 ECHO
-." RC5toLCD is removed. type START to restart"
-COLD
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM
 ;
 
-CODE APP_INIT
-MOV #%1011010100,&$3C0
+CODE SYS_INIT
+MOV #%10_1101_0100,&$3C0
 $1806 @ 16000 = [IF]
     MOV #1,&$3E0
 [THEN]
@@ -7279,7 +11991,7 @@ $1806 @ 24000 = [IF]
     MOV #2,&$3E0
 [THEN]
     MOV #19,&$3D2
-    MOV #%01100000,&$3C6
+MOV #%0110_0000,&$3C6
     MOV #10,&$3D6
     BIS.B #$20,&$204
     BIS.B #$20,&$20A
@@ -7290,7 +12002,7 @@ $1806 @ 24000 = [IF]
     BIS.B #4,&$20A
     BIC.B #4,&$20C
     MOV #RC5_INT,&$FFDE
-    MOV #%0100010100,&$340
+MOV #%01_0001_0100,&$340
     MOV ##3276,&$352
     MOV #%10000,&$342
     MOV #WDT_INT,&$FFEA
@@ -7321,21 +12033,150 @@ COLON
     ['] CR >BODY IS CR
     ['] EMIT >BODY IS EMIT
     ." RC5toLCD is running. Type STOP to quit"
-    ABORT
+    PWR_STATE ABORT
 ;
 
 CODE START
-MOV #SLEEP,R9
+MOV #$4000,R9
 MOV #BACKGROUND,2(R9)
 MOV #WARM,R9
-MOV #APP_INIT,2(R9)
+MOV #SYS_INIT,2(R9)
 MOV R9,R0
 ENDCODE 
 
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
+
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
 
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+CODE @
+MOV @R14,R14
+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]
+$1DBE CONSTANT STATE
+[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] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(R10)
+MOV #$402C,-2(R10)
+MOV @R1+,R13
+MOV @R13+,R0
+ENDCODE
+[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 20_US
 BEGIN
     BEGIN
@@ -7481,19 +12322,33 @@ BEGIN
 AGAIN
 ENDASM
 
+ASM SYS_OUT
+    MOV #WARM,R9
+    ADD #4,R9
+    MOV R9,R0
+ENDASM
+
 CODE STOP
-BW1 MOV #SLEEP,R9
+BW1 MOV #$4000,R9
     ADD #4,R9
     MOV R9,-2(R9)
+    MOV #WARM,R9
+    MOV #SYS_OUT,2(R9)
+    BIC.B #4,&$20A
+    BIC.B #4,&$20C
+    MOV #0,&$3C0
+    MOV #0,&$340
+    MOV #0,&$342
+    CALL #$400E
 COLON
-['] WARM >BODY IS WARM
 ECHO
-." RC5toLCD is removed. type START to restart"
-COLD
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM
 ;
 
-CODE APP_INIT
-MOV #%1011010100,&$3C0
+CODE SYS_INIT
+MOV #%10_1101_0100,&$3C0
 $1806 @ 16000 = [IF]
     MOV #1,&$3E0
 [THEN]
@@ -7501,7 +12356,7 @@ $1806 @ 24000 = [IF]
     MOV #2,&$3E0
 [THEN]
     MOV #19,&$3D2
-    MOV #%01100000,&$3C6
+MOV #%0110_0000,&$3C6
     MOV #10,&$3D6
     BIS.B #$20,&$204
     BIS.B #$20,&$20A
@@ -7512,7 +12367,7 @@ $1806 @ 24000 = [IF]
     BIS.B #4,&$20A
     BIC.B #4,&$20C
     MOV #RC5_INT,&$FFDE
-    MOV #%0100010100,&$340
+MOV #%01_0001_0100,&$340
     MOV ##3276,&$352
     MOV #%10000,&$342
     MOV #WDT_INT,&$FFEA
@@ -7543,21 +12398,150 @@ COLON
     ['] CR >BODY IS CR
     ['] EMIT >BODY IS EMIT
     ." RC5toLCD is running. Type STOP to quit"
-    ABORT
+    PWR_STATE ABORT
 ;
 
 CODE START
-MOV #SLEEP,R9
+MOV #$4000,R9
 MOV #BACKGROUND,2(R9)
 MOV #WARM,R9
-MOV #APP_INIT,2(R9)
+MOV #SYS_INIT,2(R9)
 MOV R9,R0
 ENDCODE 
 
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
+
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
 
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+CODE @
+MOV @R14,R14
+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]
+$1DBE CONSTANT STATE
+[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] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(R10)
+MOV #$402C,-2(R10)
+MOV @R1+,R13
+MOV @R13+,R0
+ENDCODE
+[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 20_US
 BEGIN
     BEGIN
@@ -7703,19 +12687,33 @@ BEGIN
 AGAIN
 ENDASM
 
+ASM SYS_OUT
+    MOV #WARM,R9
+    ADD #4,R9
+    MOV R9,R0
+ENDASM
+
 CODE STOP
-BW1 MOV #SLEEP,R9
+BW1 MOV #$4000,R9
     ADD #4,R9
     MOV R9,-2(R9)
+    MOV #WARM,R9
+    MOV #SYS_OUT,2(R9)
+    BIC.B #4,&$20A
+    BIC.B #4,&$20C
+    MOV #0,&$3C0
+    MOV #0,&$340
+    MOV #0,&$342
+    CALL #$400E
 COLON
-['] WARM >BODY IS WARM
 ECHO
-." RC5toLCD is removed. type START to restart"
-COLD
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM
 ;
 
-CODE APP_INIT
-MOV #%1011010100,&$3C0
+CODE SYS_INIT
+MOV #%10_1101_0100,&$3C0
 $1806 @ 16000 = [IF]
     MOV #1,&$3E0
 [THEN]
@@ -7723,7 +12721,7 @@ $1806 @ 24000 = [IF]
     MOV #2,&$3E0
 [THEN]
     MOV #19,&$3D2
-    MOV #%01100000,&$3C6
+MOV #%0110_0000,&$3C6
     MOV #10,&$3D6
     BIS.B #$20,&$204
     BIS.B #$20,&$20A
@@ -7734,7 +12732,7 @@ $1806 @ 24000 = [IF]
     BIS.B #4,&$20A
     BIC.B #4,&$20C
     MOV #RC5_INT,&$FFDE
-    MOV #%0100010100,&$340
+MOV #%01_0001_0100,&$340
     MOV ##3276,&$352
     MOV #%10000,&$342
     MOV #WDT_INT,&$FFEA
@@ -7765,21 +12763,150 @@ COLON
     ['] CR >BODY IS CR
     ['] EMIT >BODY IS EMIT
     ." RC5toLCD is running. Type STOP to quit"
-    ABORT
+    PWR_STATE ABORT
 ;
 
 CODE START
-MOV #SLEEP,R9
+MOV #$4000,R9
 MOV #BACKGROUND,2(R9)
 MOV #WARM,R9
-MOV #APP_INIT,2(R9)
+MOV #SYS_INIT,2(R9)
 MOV R9,R0
 ENDCODE 
 
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
+
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
 
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+CODE @
+MOV @R14,R14
+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]
+$1DBE CONSTANT STATE
+[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] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(R10)
+MOV #$402C,-2(R10)
+MOV @R1+,R13
+MOV @R13+,R0
+ENDCODE
+[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 20_US
 BEGIN
     BEGIN
@@ -7925,19 +13052,33 @@ BEGIN
 AGAIN
 ENDASM
 
+ASM SYS_OUT
+    MOV #WARM,R9
+    ADD #4,R9
+    MOV R9,R0
+ENDASM
+
 CODE STOP
-BW1 MOV #SLEEP,R9
+BW1 MOV #$4000,R9
     ADD #4,R9
     MOV R9,-2(R9)
+    MOV #WARM,R9
+    MOV #SYS_OUT,2(R9)
+    BIC.B #4,&$20A
+    BIC.B #4,&$20C
+    MOV #0,&$3C0
+    MOV #0,&$340
+    MOV #0,&$342
+    CALL #$400E
 COLON
-['] WARM >BODY IS WARM
 ECHO
-." RC5toLCD is removed. type START to restart"
-COLD
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM
 ;
 
-CODE APP_INIT
-MOV #%1011010100,&$3C0
+CODE SYS_INIT
+MOV #%10_1101_0100,&$3C0
 $1806 @ 16000 = [IF]
     MOV #1,&$3E0
 [THEN]
@@ -7945,7 +13086,7 @@ $1806 @ 24000 = [IF]
     MOV #2,&$3E0
 [THEN]
     MOV #19,&$3D2
-    MOV #%01100000,&$3C6
+MOV #%0110_0000,&$3C6
     MOV #10,&$3D6
     BIS.B #$20,&$204
     BIS.B #$20,&$20A
@@ -7956,7 +13097,7 @@ $1806 @ 24000 = [IF]
     BIS.B #4,&$20A
     BIC.B #4,&$20C
     MOV #RC5_INT,&$FFDE
-    MOV #%0100010100,&$340
+MOV #%01_0001_0100,&$340
     MOV ##3276,&$352
     MOV #%10000,&$342
     MOV #WDT_INT,&$FFEA
@@ -7987,21 +13128,150 @@ COLON
     ['] CR >BODY IS CR
     ['] EMIT >BODY IS EMIT
     ." RC5toLCD is running. Type STOP to quit"
-    ABORT
+    PWR_STATE ABORT
 ;
 
 CODE START
-MOV #SLEEP,R9
+MOV #$4000,R9
 MOV #BACKGROUND,2(R9)
 MOV #WARM,R9
-MOV #APP_INIT,2(R9)
+MOV #SYS_INIT,2(R9)
 MOV R9,R0
 ENDCODE 
 
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
+
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
 
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+CODE @
+MOV @R14,R14
+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]
+$1DBE CONSTANT STATE
+[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] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(R10)
+MOV #$402C,-2(R10)
+MOV @R1+,R13
+MOV @R13+,R0
+ENDCODE
+[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 20_US
 BEGIN
     BEGIN
@@ -8147,19 +13417,33 @@ BEGIN
 AGAIN
 ENDASM
 
+ASM SYS_OUT
+    MOV #WARM,R9
+    ADD #4,R9
+    MOV R9,R0
+ENDASM
+
 CODE STOP
-BW1 MOV #SLEEP,R9
+BW1 MOV #$4000,R9
     ADD #4,R9
     MOV R9,-2(R9)
+    MOV #WARM,R9
+    MOV #SYS_OUT,2(R9)
+    BIC.B #4,&$20A
+    BIC.B #4,&$20C
+    MOV #0,&$3C0
+    MOV #0,&$340
+    MOV #0,&$342
+    CALL #$400E
 COLON
-['] WARM >BODY IS WARM
 ECHO
-." RC5toLCD is removed. type START to restart"
-COLD
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM
 ;
 
-CODE APP_INIT
-MOV #%1011010100,&$3C0
+CODE SYS_INIT
+MOV #%10_1101_0100,&$3C0
 $1806 @ 16000 = [IF]
     MOV #1,&$3E0
 [THEN]
@@ -8167,7 +13451,7 @@ $1806 @ 24000 = [IF]
     MOV #2,&$3E0
 [THEN]
     MOV #19,&$3D2
-    MOV #%01100000,&$3C6
+MOV #%0110_0000,&$3C6
     MOV #10,&$3D6
     BIS.B #$20,&$204
     BIS.B #$20,&$20A
@@ -8178,7 +13462,7 @@ $1806 @ 24000 = [IF]
     BIS.B #4,&$20A
     BIC.B #4,&$20C
     MOV #RC5_INT,&$FFDE
-    MOV #%0100010100,&$340
+MOV #%01_0001_0100,&$340
     MOV ##3276,&$352
     MOV #%10000,&$342
     MOV #WDT_INT,&$FFEA
@@ -8209,21 +13493,150 @@ COLON
     ['] CR >BODY IS CR
     ['] EMIT >BODY IS EMIT
     ." RC5toLCD is running. Type STOP to quit"
-    ABORT
+    PWR_STATE ABORT
 ;
 
 CODE START
-MOV #SLEEP,R9
+MOV #$4000,R9
 MOV #BACKGROUND,2(R9)
 MOV #WARM,R9
-MOV #APP_INIT,2(R9)
+MOV #SYS_INIT,2(R9)
 MOV R9,R0
 ENDCODE 
 
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
+
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
 
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+CODE @
+MOV @R14,R14
+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]
+$1DBE CONSTANT STATE
+[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] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(R10)
+MOV #$402C,-2(R10)
+MOV @R1+,R13
+MOV @R13+,R0
+ENDCODE
+[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 20_US
 BEGIN
     BEGIN
@@ -8369,19 +13782,33 @@ BEGIN
 AGAIN
 ENDASM
 
+ASM SYS_OUT
+    MOV #WARM,R9
+    ADD #4,R9
+    MOV R9,R0
+ENDASM
+
 CODE STOP
-BW1 MOV #SLEEP,R9
+BW1 MOV #$4000,R9
     ADD #4,R9
     MOV R9,-2(R9)
+    MOV #WARM,R9
+    MOV #SYS_OUT,2(R9)
+    BIC.B #4,&$20A
+    BIC.B #4,&$20C
+    MOV #0,&$3C0
+    MOV #0,&$340
+    MOV #0,&$342
+    CALL #$400E
 COLON
-['] WARM >BODY IS WARM
 ECHO
-." RC5toLCD is removed. type START to restart"
-COLD
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM
 ;
 
-CODE APP_INIT
-MOV #%1011010100,&$3C0
+CODE SYS_INIT
+MOV #%10_1101_0100,&$3C0
 $1806 @ 16000 = [IF]
     MOV #1,&$3E0
 [THEN]
@@ -8389,7 +13816,7 @@ $1806 @ 24000 = [IF]
     MOV #2,&$3E0
 [THEN]
     MOV #19,&$3D2
-    MOV #%01100000,&$3C6
+MOV #%0110_0000,&$3C6
     MOV #10,&$3D6
     BIS.B #$20,&$204
     BIS.B #$20,&$20A
@@ -8400,7 +13827,7 @@ $1806 @ 24000 = [IF]
     BIS.B #4,&$20A
     BIC.B #4,&$20C
     MOV #RC5_INT,&$FFDE
-    MOV #%0100010100,&$340
+MOV #%01_0001_0100,&$340
     MOV ##3276,&$352
     MOV #%10000,&$342
     MOV #WDT_INT,&$FFEA
@@ -8431,20 +13858,149 @@ COLON
     ['] CR >BODY IS CR
     ['] EMIT >BODY IS EMIT
     ." RC5toLCD is running. Type STOP to quit"
-    ABORT
+    PWR_STATE ABORT
 ;
 
-CODE START
-MOV #SLEEP,R9
-MOV #BACKGROUND,2(R9)
-MOV #WARM,R9
-MOV #APP_INIT,2(R9)
-MOV R9,R0
-ENDCODE 
+CODE START
+MOV #$4000,R9
+MOV #BACKGROUND,2(R9)
+MOV #WARM,R9
+MOV #SYS_INIT,2(R9)
+MOV R9,R0
+ENDCODE 
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
+
+[DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
+
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
+
+MARKER {RC5TOLCD}
+
+[UNDEFINED] @ [IF]
+CODE @
+MOV @R14,R14
+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]
+$1DBE CONSTANT STATE
+[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] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(R10)
+MOV #$402C,-2(R10)
+MOV @R1+,R13
+MOV @R13+,R0
+ENDCODE
+[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]
 
-[DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
+[UNDEFINED] >BODY [IF]
+CODE >BODY
+ADD #4,R14
+MOV @R13+,R0
+ENDCODE
+[THEN]
 
-MARKER {RC5TOLCD}
 
 CODE 20_US
 BEGIN
@@ -8591,19 +14147,33 @@ BEGIN
 AGAIN
 ENDASM
 
+ASM SYS_OUT
+    MOV #WARM,R9
+    ADD #4,R9
+    MOV R9,R0
+ENDASM
+
 CODE STOP
-BW1 MOV #SLEEP,R9
+BW1 MOV #$4000,R9
     ADD #4,R9
     MOV R9,-2(R9)
+    MOV #WARM,R9
+    MOV #SYS_OUT,2(R9)
+    BIC.B #4,&$20A
+    BIC.B #4,&$20C
+    MOV #0,&$3C0
+    MOV #0,&$340
+    MOV #0,&$342
+    CALL #$400E
 COLON
-['] WARM >BODY IS WARM
 ECHO
-." RC5toLCD is removed. type START to restart"
-COLD
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM
 ;
 
-CODE APP_INIT
-MOV #%1011010100,&$3C0
+CODE SYS_INIT
+MOV #%10_1101_0100,&$3C0
 $1806 @ 16000 = [IF]
     MOV #1,&$3E0
 [THEN]
@@ -8611,7 +14181,7 @@ $1806 @ 24000 = [IF]
     MOV #2,&$3E0
 [THEN]
     MOV #19,&$3D2
-    MOV #%01100000,&$3C6
+MOV #%0110_0000,&$3C6
     MOV #10,&$3D6
     BIS.B #$20,&$204
     BIS.B #$20,&$20A
@@ -8622,7 +14192,7 @@ $1806 @ 24000 = [IF]
     BIS.B #4,&$20A
     BIC.B #4,&$20C
     MOV #RC5_INT,&$FFDE
-    MOV #%0100010100,&$340
+MOV #%01_0001_0100,&$340
     MOV ##3276,&$352
     MOV #%10000,&$342
     MOV #WDT_INT,&$FFEA
@@ -8653,21 +14223,150 @@ COLON
     ['] CR >BODY IS CR
     ['] EMIT >BODY IS EMIT
     ." RC5toLCD is running. Type STOP to quit"
-    ABORT
+    PWR_STATE ABORT
 ;
 
 CODE START
-MOV #SLEEP,R9
+MOV #$4000,R9
 MOV #BACKGROUND,2(R9)
 MOV #WARM,R9
-MOV #APP_INIT,2(R9)
+MOV #SYS_INIT,2(R9)
 MOV R9,R0
 ENDCODE 
 
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
+
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
 
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+CODE @
+MOV @R14,R14
+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]
+$1DBE CONSTANT STATE
+[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] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(R10)
+MOV #$402C,-2(R10)
+MOV @R1+,R13
+MOV @R13+,R0
+ENDCODE
+[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 20_US
 BEGIN
     BEGIN
@@ -8813,19 +14512,33 @@ BEGIN
 AGAIN
 ENDASM
 
+ASM SYS_OUT
+    MOV #WARM,R9
+    ADD #4,R9
+    MOV R9,R0
+ENDASM
+
 CODE STOP
-BW1 MOV #SLEEP,R9
+BW1 MOV #$4000,R9
     ADD #4,R9
     MOV R9,-2(R9)
+    MOV #WARM,R9
+    MOV #SYS_OUT,2(R9)
+    BIC.B #4,&$20A
+    BIC.B #4,&$20C
+    MOV #0,&$3C0
+    MOV #0,&$340
+    MOV #0,&$342
+    CALL #$400E
 COLON
-['] WARM >BODY IS WARM
 ECHO
-." RC5toLCD is removed. type START to restart"
-COLD
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM
 ;
 
-CODE APP_INIT
-MOV #%1011010100,&$3C0
+CODE SYS_INIT
+MOV #%10_1101_0100,&$3C0
 $1806 @ 16000 = [IF]
     MOV #1,&$3E0
 [THEN]
@@ -8833,7 +14546,7 @@ $1806 @ 24000 = [IF]
     MOV #2,&$3E0
 [THEN]
     MOV #19,&$3D2
-    MOV #%01100000,&$3C6
+MOV #%0110_0000,&$3C6
     MOV #10,&$3D6
     BIS.B #$20,&$204
     BIS.B #$20,&$20A
@@ -8844,7 +14557,7 @@ $1806 @ 24000 = [IF]
     BIS.B #4,&$20A
     BIC.B #4,&$20C
     MOV #RC5_INT,&$FFDE
-    MOV #%0100010100,&$340
+MOV #%01_0001_0100,&$340
     MOV ##3276,&$352
     MOV #%10000,&$342
     MOV #WDT_INT,&$FFEA
@@ -8875,21 +14588,150 @@ COLON
     ['] CR >BODY IS CR
     ['] EMIT >BODY IS EMIT
     ." RC5toLCD is running. Type STOP to quit"
-    ABORT
+    PWR_STATE ABORT
 ;
 
 CODE START
-MOV #SLEEP,R9
+MOV #$4000,R9
 MOV #BACKGROUND,2(R9)
 MOV #WARM,R9
-MOV #APP_INIT,2(R9)
+MOV #SYS_INIT,2(R9)
 MOV R9,R0
 ENDCODE 
 
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
+
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
 
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+CODE @
+MOV @R14,R14
+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]
+$1DBE CONSTANT STATE
+[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] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(R10)
+MOV #$402C,-2(R10)
+MOV @R1+,R13
+MOV @R13+,R0
+ENDCODE
+[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 20_US
 BEGIN
     BEGIN
@@ -9035,19 +14877,33 @@ BEGIN
 AGAIN
 ENDASM
 
+ASM SYS_OUT
+    MOV #WARM,R9
+    ADD #4,R9
+    MOV R9,R0
+ENDASM
+
 CODE STOP
-BW1 MOV #SLEEP,R9
+BW1 MOV #$4000,R9
     ADD #4,R9
     MOV R9,-2(R9)
+    MOV #WARM,R9
+    MOV #SYS_OUT,2(R9)
+    BIC.B #4,&$20A
+    BIC.B #4,&$20C
+    MOV #0,&$3C0
+    MOV #0,&$340
+    MOV #0,&$342
+    CALL #$400E
 COLON
-['] WARM >BODY IS WARM
 ECHO
-." RC5toLCD is removed. type START to restart"
-COLD
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM
 ;
 
-CODE APP_INIT
-MOV #%1011010100,&$3C0
+CODE SYS_INIT
+MOV #%10_1101_0100,&$3C0
 $1806 @ 16000 = [IF]
     MOV #1,&$3E0
 [THEN]
@@ -9055,7 +14911,7 @@ $1806 @ 24000 = [IF]
     MOV #2,&$3E0
 [THEN]
     MOV #19,&$3D2
-    MOV #%01100000,&$3C6
+MOV #%0110_0000,&$3C6
     MOV #10,&$3D6
     BIS.B #$20,&$204
     BIS.B #$20,&$20A
@@ -9066,7 +14922,7 @@ $1806 @ 24000 = [IF]
     BIS.B #4,&$20A
     BIC.B #4,&$20C
     MOV #RC5_INT,&$FFDE
-    MOV #%0100010100,&$340
+MOV #%01_0001_0100,&$340
     MOV ##3276,&$352
     MOV #%10000,&$342
     MOV #WDT_INT,&$FFEA
@@ -9097,21 +14953,150 @@ COLON
     ['] CR >BODY IS CR
     ['] EMIT >BODY IS EMIT
     ." RC5toLCD is running. Type STOP to quit"
-    ABORT
+    PWR_STATE ABORT
 ;
 
 CODE START
-MOV #SLEEP,R9
+MOV #$4000,R9
 MOV #BACKGROUND,2(R9)
 MOV #WARM,R9
-MOV #APP_INIT,2(R9)
+MOV #SYS_INIT,2(R9)
 MOV R9,R0
 ENDCODE 
 
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
+
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
 
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+CODE @
+MOV @R14,R14
+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]
+$1DBE CONSTANT STATE
+[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] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(R10)
+MOV #$402C,-2(R10)
+MOV @R1+,R13
+MOV @R13+,R0
+ENDCODE
+[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 20_US
 BEGIN
     BEGIN
@@ -9257,19 +15242,33 @@ BEGIN
 AGAIN
 ENDASM
 
+ASM SYS_OUT
+    MOV #WARM,R9
+    ADD #4,R9
+    MOV R9,R0
+ENDASM
+
 CODE STOP
-BW1 MOV #SLEEP,R9
+BW1 MOV #$4000,R9
     ADD #4,R9
     MOV R9,-2(R9)
+    MOV #WARM,R9
+    MOV #SYS_OUT,2(R9)
+    BIC.B #4,&$20A
+    BIC.B #4,&$20C
+    MOV #0,&$3C0
+    MOV #0,&$340
+    MOV #0,&$342
+    CALL #$400E
 COLON
-['] WARM >BODY IS WARM
 ECHO
-." RC5toLCD is removed. type START to restart"
-COLD
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM
 ;
 
-CODE APP_INIT
-MOV #%1011010100,&$3C0
+CODE SYS_INIT
+MOV #%10_1101_0100,&$3C0
 $1806 @ 16000 = [IF]
     MOV #1,&$3E0
 [THEN]
@@ -9277,7 +15276,7 @@ $1806 @ 24000 = [IF]
     MOV #2,&$3E0
 [THEN]
     MOV #19,&$3D2
-    MOV #%01100000,&$3C6
+MOV #%0110_0000,&$3C6
     MOV #10,&$3D6
     BIS.B #$20,&$204
     BIS.B #$20,&$20A
@@ -9288,7 +15287,7 @@ $1806 @ 24000 = [IF]
     BIS.B #4,&$20A
     BIC.B #4,&$20C
     MOV #RC5_INT,&$FFDE
-    MOV #%0100010100,&$340
+MOV #%01_0001_0100,&$340
     MOV ##3276,&$352
     MOV #%10000,&$342
     MOV #WDT_INT,&$FFEA
@@ -9319,20 +15318,149 @@ COLON
     ['] CR >BODY IS CR
     ['] EMIT >BODY IS EMIT
     ." RC5toLCD is running. Type STOP to quit"
-    ABORT
+    PWR_STATE ABORT
 ;
 
-CODE START
-MOV #SLEEP,R9
-MOV #BACKGROUND,2(R9)
-MOV #WARM,R9
-MOV #APP_INIT,2(R9)
-MOV R9,R0
-ENDCODE 
+CODE START
+MOV #$4000,R9
+MOV #BACKGROUND,2(R9)
+MOV #WARM,R9
+MOV #SYS_INIT,2(R9)
+MOV R9,R0
+ENDCODE 
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
+
+[DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
+
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
+
+MARKER {RC5TOLCD}
+
+[UNDEFINED] @ [IF]
+CODE @
+MOV @R14,R14
+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]
+$1DBE CONSTANT STATE
+[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] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
 
-[DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(R10)
+MOV #$402C,-2(R10)
+MOV @R1+,R13
+MOV @R13+,R0
+ENDCODE
+[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]
 
-MARKER {RC5TOLCD}
 
 CODE 20_US
 BEGIN
@@ -9479,19 +15607,33 @@ BEGIN
 AGAIN
 ENDASM
 
+ASM SYS_OUT
+    MOV #WARM,R9
+    ADD #4,R9
+    MOV R9,R0
+ENDASM
+
 CODE STOP
-BW1 MOV #SLEEP,R9
+BW1 MOV #$4000,R9
     ADD #4,R9
     MOV R9,-2(R9)
+    MOV #WARM,R9
+    MOV #SYS_OUT,2(R9)
+    BIC.B #4,&$20A
+    BIC.B #4,&$20C
+    MOV #0,&$3C0
+    MOV #0,&$340
+    MOV #0,&$342
+    CALL #$400E
 COLON
-['] WARM >BODY IS WARM
 ECHO
-." RC5toLCD is removed. type START to restart"
-COLD
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM
 ;
 
-CODE APP_INIT
-MOV #%1011010100,&$3C0
+CODE SYS_INIT
+MOV #%10_1101_0100,&$3C0
 $1806 @ 16000 = [IF]
     MOV #1,&$3E0
 [THEN]
@@ -9499,7 +15641,7 @@ $1806 @ 24000 = [IF]
     MOV #2,&$3E0
 [THEN]
     MOV #19,&$3D2
-    MOV #%01100000,&$3C6
+MOV #%0110_0000,&$3C6
     MOV #10,&$3D6
     BIS.B #$20,&$204
     BIS.B #$20,&$20A
@@ -9510,7 +15652,7 @@ $1806 @ 24000 = [IF]
     BIS.B #4,&$20A
     BIC.B #4,&$20C
     MOV #RC5_INT,&$FFDE
-    MOV #%0100010100,&$340
+MOV #%01_0001_0100,&$340
     MOV ##3276,&$352
     MOV #%10000,&$342
     MOV #WDT_INT,&$FFEA
@@ -9541,21 +15683,150 @@ COLON
     ['] CR >BODY IS CR
     ['] EMIT >BODY IS EMIT
     ." RC5toLCD is running. Type STOP to quit"
-    ABORT
+    PWR_STATE ABORT
 ;
 
 CODE START
-MOV #SLEEP,R9
+MOV #$4000,R9
 MOV #BACKGROUND,2(R9)
 MOV #WARM,R9
-MOV #APP_INIT,2(R9)
+MOV #SYS_INIT,2(R9)
 MOV R9,R0
 ENDCODE 
 
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
+
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
 
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+CODE @
+MOV @R14,R14
+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]
+$1DBE CONSTANT STATE
+[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] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(R10)
+MOV #$402C,-2(R10)
+MOV @R1+,R13
+MOV @R13+,R0
+ENDCODE
+[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 20_US
 BEGIN
     BEGIN
@@ -9701,19 +15972,33 @@ BEGIN
 AGAIN
 ENDASM
 
+ASM SYS_OUT
+    MOV #WARM,R9
+    ADD #4,R9
+    MOV R9,R0
+ENDASM
+
 CODE STOP
-BW1 MOV #SLEEP,R9
+BW1 MOV #$4000,R9
     ADD #4,R9
     MOV R9,-2(R9)
+    MOV #WARM,R9
+    MOV #SYS_OUT,2(R9)
+    BIC.B #4,&$20A
+    BIC.B #4,&$20C
+    MOV #0,&$3C0
+    MOV #0,&$340
+    MOV #0,&$342
+    CALL #$400E
 COLON
-['] WARM >BODY IS WARM
 ECHO
-." RC5toLCD is removed. type START to restart"
-COLD
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM
 ;
 
-CODE APP_INIT
-MOV #%1011010100,&$3C0
+CODE SYS_INIT
+MOV #%10_1101_0100,&$3C0
 $1806 @ 16000 = [IF]
     MOV #1,&$3E0
 [THEN]
@@ -9721,7 +16006,7 @@ $1806 @ 24000 = [IF]
     MOV #2,&$3E0
 [THEN]
     MOV #19,&$3D2
-    MOV #%01100000,&$3C6
+MOV #%0110_0000,&$3C6
     MOV #10,&$3D6
     BIS.B #$20,&$204
     BIS.B #$20,&$20A
@@ -9732,7 +16017,7 @@ $1806 @ 24000 = [IF]
     BIS.B #4,&$20A
     BIC.B #4,&$20C
     MOV #RC5_INT,&$FFDE
-    MOV #%0100010100,&$340
+MOV #%01_0001_0100,&$340
     MOV ##3276,&$352
     MOV #%10000,&$342
     MOV #WDT_INT,&$FFEA
@@ -9763,21 +16048,150 @@ COLON
     ['] CR >BODY IS CR
     ['] EMIT >BODY IS EMIT
     ." RC5toLCD is running. Type STOP to quit"
-    ABORT
+    PWR_STATE ABORT
 ;
 
 CODE START
-MOV #SLEEP,R9
+MOV #$4000,R9
 MOV #BACKGROUND,2(R9)
 MOV #WARM,R9
-MOV #APP_INIT,2(R9)
+MOV #SYS_INIT,2(R9)
 MOV R9,R0
 ENDCODE 
 
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
+
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
 
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+CODE @
+MOV @R14,R14
+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]
+$1DBE CONSTANT STATE
+[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] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(R10)
+MOV #$402C,-2(R10)
+MOV @R1+,R13
+MOV @R13+,R0
+ENDCODE
+[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 20_US
 BEGIN
     BEGIN
@@ -9923,19 +16337,33 @@ BEGIN
 AGAIN
 ENDASM
 
+ASM SYS_OUT
+    MOV #WARM,R9
+    ADD #4,R9
+    MOV R9,R0
+ENDASM
+
 CODE STOP
-BW1 MOV #SLEEP,R9
+BW1 MOV #$4000,R9
     ADD #4,R9
     MOV R9,-2(R9)
+    MOV #WARM,R9
+    MOV #SYS_OUT,2(R9)
+    BIC.B #4,&$20A
+    BIC.B #4,&$20C
+    MOV #0,&$3C0
+    MOV #0,&$340
+    MOV #0,&$342
+    CALL #$400E
 COLON
-['] WARM >BODY IS WARM
 ECHO
-." RC5toLCD is removed. type START to restart"
-COLD
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM
 ;
 
-CODE APP_INIT
-MOV #%1011010100,&$3C0
+CODE SYS_INIT
+MOV #%10_1101_0100,&$3C0
 $1806 @ 16000 = [IF]
     MOV #1,&$3E0
 [THEN]
@@ -9943,7 +16371,7 @@ $1806 @ 24000 = [IF]
     MOV #2,&$3E0
 [THEN]
     MOV #19,&$3D2
-    MOV #%01100000,&$3C6
+MOV #%0110_0000,&$3C6
     MOV #10,&$3D6
     BIS.B #$20,&$204
     BIS.B #$20,&$20A
@@ -9954,7 +16382,7 @@ $1806 @ 24000 = [IF]
     BIS.B #4,&$20A
     BIC.B #4,&$20C
     MOV #RC5_INT,&$FFDE
-    MOV #%0100010100,&$340
+MOV #%01_0001_0100,&$340
     MOV ##3276,&$352
     MOV #%10000,&$342
     MOV #WDT_INT,&$FFEA
@@ -9985,21 +16413,150 @@ COLON
     ['] CR >BODY IS CR
     ['] EMIT >BODY IS EMIT
     ." RC5toLCD is running. Type STOP to quit"
-    ABORT
+    PWR_STATE ABORT
 ;
 
 CODE START
-MOV #SLEEP,R9
+MOV #$4000,R9
 MOV #BACKGROUND,2(R9)
 MOV #WARM,R9
-MOV #APP_INIT,2(R9)
+MOV #SYS_INIT,2(R9)
 MOV R9,R0
 ENDCODE 
 
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
+
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
 
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+CODE @
+MOV @R14,R14
+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]
+$1DBE CONSTANT STATE
+[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] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(R10)
+MOV #$402C,-2(R10)
+MOV @R1+,R13
+MOV @R13+,R0
+ENDCODE
+[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 20_US
 BEGIN
     BEGIN
@@ -10145,19 +16702,33 @@ BEGIN
 AGAIN
 ENDASM
 
+ASM SYS_OUT
+    MOV #WARM,R9
+    ADD #4,R9
+    MOV R9,R0
+ENDASM
+
 CODE STOP
-BW1 MOV #SLEEP,R9
+BW1 MOV #$4000,R9
     ADD #4,R9
     MOV R9,-2(R9)
+    MOV #WARM,R9
+    MOV #SYS_OUT,2(R9)
+    BIC.B #4,&$20A
+    BIC.B #4,&$20C
+    MOV #0,&$3C0
+    MOV #0,&$340
+    MOV #0,&$342
+    CALL #$400E
 COLON
-['] WARM >BODY IS WARM
 ECHO
-." RC5toLCD is removed. type START to restart"
-COLD
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM
 ;
 
-CODE APP_INIT
-MOV #%1011010100,&$3C0
+CODE SYS_INIT
+MOV #%10_1101_0100,&$3C0
 $1806 @ 16000 = [IF]
     MOV #1,&$3E0
 [THEN]
@@ -10165,7 +16736,7 @@ $1806 @ 24000 = [IF]
     MOV #2,&$3E0
 [THEN]
     MOV #19,&$3D2
-    MOV #%01100000,&$3C6
+MOV #%0110_0000,&$3C6
     MOV #10,&$3D6
     BIS.B #$20,&$204
     BIS.B #$20,&$20A
@@ -10176,7 +16747,7 @@ $1806 @ 24000 = [IF]
     BIS.B #4,&$20A
     BIC.B #4,&$20C
     MOV #RC5_INT,&$FFDE
-    MOV #%0100010100,&$340
+MOV #%01_0001_0100,&$340
     MOV ##3276,&$352
     MOV #%10000,&$342
     MOV #WDT_INT,&$FFEA
@@ -10207,20 +16778,149 @@ COLON
     ['] CR >BODY IS CR
     ['] EMIT >BODY IS EMIT
     ." RC5toLCD is running. Type STOP to quit"
-    ABORT
+    PWR_STATE ABORT
 ;
 
-CODE START
-MOV #SLEEP,R9
-MOV #BACKGROUND,2(R9)
-MOV #WARM,R9
-MOV #APP_INIT,2(R9)
-MOV R9,R0
-ENDCODE 
+CODE START
+MOV #$4000,R9
+MOV #BACKGROUND,2(R9)
+MOV #WARM,R9
+MOV #SYS_INIT,2(R9)
+MOV R9,R0
+ENDCODE 
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
+
+[DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
+
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
+
+MARKER {RC5TOLCD}
+
+[UNDEFINED] @ [IF]
+CODE @
+MOV @R14,R14
+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]
 
-[DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
+[UNDEFINED] STATE [IF]
+$1DBE CONSTANT STATE
+[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] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(R10)
+MOV #$402C,-2(R10)
+MOV @R1+,R13
+MOV @R13+,R0
+ENDCODE
+[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]
 
-MARKER {RC5TOLCD}
 
 CODE 20_US
 BEGIN
@@ -10367,19 +17067,33 @@ BEGIN
 AGAIN
 ENDASM
 
+ASM SYS_OUT
+    MOV #WARM,R9
+    ADD #4,R9
+    MOV R9,R0
+ENDASM
+
 CODE STOP
-BW1 MOV #SLEEP,R9
+BW1 MOV #$4000,R9
     ADD #4,R9
     MOV R9,-2(R9)
+    MOV #WARM,R9
+    MOV #SYS_OUT,2(R9)
+    BIC.B #4,&$20A
+    BIC.B #4,&$20C
+    MOV #0,&$3C0
+    MOV #0,&$340
+    MOV #0,&$342
+    CALL #$400E
 COLON
-['] WARM >BODY IS WARM
 ECHO
-." RC5toLCD is removed. type START to restart"
-COLD
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM
 ;
 
-CODE APP_INIT
-MOV #%1011010100,&$3C0
+CODE SYS_INIT
+MOV #%10_1101_0100,&$3C0
 $1806 @ 16000 = [IF]
     MOV #1,&$3E0
 [THEN]
@@ -10387,7 +17101,7 @@ $1806 @ 24000 = [IF]
     MOV #2,&$3E0
 [THEN]
     MOV #19,&$3D2
-    MOV #%01100000,&$3C6
+MOV #%0110_0000,&$3C6
     MOV #10,&$3D6
     BIS.B #$20,&$204
     BIS.B #$20,&$20A
@@ -10398,7 +17112,7 @@ $1806 @ 24000 = [IF]
     BIS.B #4,&$20A
     BIC.B #4,&$20C
     MOV #RC5_INT,&$FFDE
-    MOV #%0100010100,&$340
+MOV #%01_0001_0100,&$340
     MOV ##3276,&$352
     MOV #%10000,&$342
     MOV #WDT_INT,&$FFEA
@@ -10429,21 +17143,150 @@ COLON
     ['] CR >BODY IS CR
     ['] EMIT >BODY IS EMIT
     ." RC5toLCD is running. Type STOP to quit"
-    ABORT
+    PWR_STATE ABORT
 ;
 
 CODE START
-MOV #SLEEP,R9
+MOV #$4000,R9
 MOV #BACKGROUND,2(R9)
 MOV #WARM,R9
-MOV #APP_INIT,2(R9)
+MOV #SYS_INIT,2(R9)
 MOV R9,R0
 ENDCODE 
 
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
+
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
 
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+CODE @
+MOV @R14,R14
+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]
+$1DBE CONSTANT STATE
+[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] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(R10)
+MOV #$402C,-2(R10)
+MOV @R1+,R13
+MOV @R13+,R0
+ENDCODE
+[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 20_US
 BEGIN
     BEGIN
@@ -10589,19 +17432,33 @@ BEGIN
 AGAIN
 ENDASM
 
+ASM SYS_OUT
+    MOV #WARM,R9
+    ADD #4,R9
+    MOV R9,R0
+ENDASM
+
 CODE STOP
-BW1 MOV #SLEEP,R9
+BW1 MOV #$4000,R9
     ADD #4,R9
     MOV R9,-2(R9)
+    MOV #WARM,R9
+    MOV #SYS_OUT,2(R9)
+    BIC.B #4,&$20A
+    BIC.B #4,&$20C
+    MOV #0,&$3C0
+    MOV #0,&$340
+    MOV #0,&$342
+    CALL #$400E
 COLON
-['] WARM >BODY IS WARM
 ECHO
-." RC5toLCD is removed. type START to restart"
-COLD
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM
 ;
 
-CODE APP_INIT
-MOV #%1011010100,&$3C0
+CODE SYS_INIT
+MOV #%10_1101_0100,&$3C0
 $1806 @ 16000 = [IF]
     MOV #1,&$3E0
 [THEN]
@@ -10609,7 +17466,7 @@ $1806 @ 24000 = [IF]
     MOV #2,&$3E0
 [THEN]
     MOV #19,&$3D2
-    MOV #%01100000,&$3C6
+MOV #%0110_0000,&$3C6
     MOV #10,&$3D6
     BIS.B #$20,&$204
     BIS.B #$20,&$20A
@@ -10620,7 +17477,7 @@ $1806 @ 24000 = [IF]
     BIS.B #4,&$20A
     BIC.B #4,&$20C
     MOV #RC5_INT,&$FFDE
-    MOV #%0100010100,&$340
+MOV #%01_0001_0100,&$340
     MOV ##3276,&$352
     MOV #%10000,&$342
     MOV #WDT_INT,&$FFEA
@@ -10651,21 +17508,150 @@ COLON
     ['] CR >BODY IS CR
     ['] EMIT >BODY IS EMIT
     ." RC5toLCD is running. Type STOP to quit"
-    ABORT
+    PWR_STATE ABORT
 ;
 
 CODE START
-MOV #SLEEP,R9
+MOV #$4000,R9
 MOV #BACKGROUND,2(R9)
 MOV #WARM,R9
-MOV #APP_INIT,2(R9)
+MOV #SYS_INIT,2(R9)
 MOV R9,R0
 ENDCODE 
 
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
+
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
 
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+CODE @
+MOV @R14,R14
+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]
+$1DBE CONSTANT STATE
+[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] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(R10)
+MOV #$402C,-2(R10)
+MOV @R1+,R13
+MOV @R13+,R0
+ENDCODE
+[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 20_US
 BEGIN
     BEGIN
@@ -10811,19 +17797,33 @@ BEGIN
 AGAIN
 ENDASM
 
+ASM SYS_OUT
+    MOV #WARM,R9
+    ADD #4,R9
+    MOV R9,R0
+ENDASM
+
 CODE STOP
-BW1 MOV #SLEEP,R9
+BW1 MOV #$4000,R9
     ADD #4,R9
     MOV R9,-2(R9)
+    MOV #WARM,R9
+    MOV #SYS_OUT,2(R9)
+    BIC.B #4,&$20A
+    BIC.B #4,&$20C
+    MOV #0,&$3C0
+    MOV #0,&$340
+    MOV #0,&$342
+    CALL #$400E
 COLON
-['] WARM >BODY IS WARM
 ECHO
-." RC5toLCD is removed. type START to restart"
-COLD
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM
 ;
 
-CODE APP_INIT
-MOV #%1011010100,&$3C0
+CODE SYS_INIT
+MOV #%10_1101_0100,&$3C0
 $1806 @ 16000 = [IF]
     MOV #1,&$3E0
 [THEN]
@@ -10831,7 +17831,7 @@ $1806 @ 24000 = [IF]
     MOV #2,&$3E0
 [THEN]
     MOV #19,&$3D2
-    MOV #%01100000,&$3C6
+MOV #%0110_0000,&$3C6
     MOV #10,&$3D6
     BIS.B #$20,&$204
     BIS.B #$20,&$20A
@@ -10842,7 +17842,7 @@ $1806 @ 24000 = [IF]
     BIS.B #4,&$20A
     BIC.B #4,&$20C
     MOV #RC5_INT,&$FFDE
-    MOV #%0100010100,&$340
+MOV #%01_0001_0100,&$340
     MOV ##3276,&$352
     MOV #%10000,&$342
     MOV #WDT_INT,&$FFEA
@@ -10873,21 +17873,150 @@ COLON
     ['] CR >BODY IS CR
     ['] EMIT >BODY IS EMIT
     ." RC5toLCD is running. Type STOP to quit"
-    ABORT
+    PWR_STATE ABORT
 ;
 
 CODE START
-MOV #SLEEP,R9
+MOV #$4000,R9
 MOV #BACKGROUND,2(R9)
 MOV #WARM,R9
-MOV #APP_INIT,2(R9)
+MOV #SYS_INIT,2(R9)
 MOV R9,R0
 ENDCODE 
 
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
+
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
 
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+CODE @
+MOV @R14,R14
+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]
+$1DBE CONSTANT STATE
+[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] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(R10)
+MOV #$402C,-2(R10)
+MOV @R1+,R13
+MOV @R13+,R0
+ENDCODE
+[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 20_US
 BEGIN
     BEGIN
@@ -11033,19 +18162,33 @@ BEGIN
 AGAIN
 ENDASM
 
+ASM SYS_OUT
+    MOV #WARM,R9
+    ADD #4,R9
+    MOV R9,R0
+ENDASM
+
 CODE STOP
-BW1 MOV #SLEEP,R9
+BW1 MOV #$4000,R9
     ADD #4,R9
     MOV R9,-2(R9)
+    MOV #WARM,R9
+    MOV #SYS_OUT,2(R9)
+    BIC.B #4,&$20A
+    BIC.B #4,&$20C
+    MOV #0,&$3C0
+    MOV #0,&$340
+    MOV #0,&$342
+    CALL #$400E
 COLON
-['] WARM >BODY IS WARM
 ECHO
-." RC5toLCD is removed. type START to restart"
-COLD
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM
 ;
 
-CODE APP_INIT
-MOV #%1011010100,&$3C0
+CODE SYS_INIT
+MOV #%10_1101_0100,&$3C0
 $1806 @ 16000 = [IF]
     MOV #1,&$3E0
 [THEN]
@@ -11053,7 +18196,7 @@ $1806 @ 24000 = [IF]
     MOV #2,&$3E0
 [THEN]
     MOV #19,&$3D2
-    MOV #%01100000,&$3C6
+MOV #%0110_0000,&$3C6
     MOV #10,&$3D6
     BIS.B #$20,&$204
     BIS.B #$20,&$20A
@@ -11064,7 +18207,7 @@ $1806 @ 24000 = [IF]
     BIS.B #4,&$20A
     BIC.B #4,&$20C
     MOV #RC5_INT,&$FFDE
-    MOV #%0100010100,&$340
+MOV #%01_0001_0100,&$340
     MOV ##3276,&$352
     MOV #%10000,&$342
     MOV #WDT_INT,&$FFEA
@@ -11095,21 +18238,150 @@ COLON
     ['] CR >BODY IS CR
     ['] EMIT >BODY IS EMIT
     ." RC5toLCD is running. Type STOP to quit"
-    ABORT
+    PWR_STATE ABORT
 ;
 
 CODE START
-MOV #SLEEP,R9
+MOV #$4000,R9
 MOV #BACKGROUND,2(R9)
 MOV #WARM,R9
-MOV #APP_INIT,2(R9)
+MOV #SYS_INIT,2(R9)
 MOV R9,R0
 ENDCODE 
 
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
+
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
 
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+CODE @
+MOV @R14,R14
+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]
+$1DBE CONSTANT STATE
+[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] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(R10)
+MOV #$402C,-2(R10)
+MOV @R1+,R13
+MOV @R13+,R0
+ENDCODE
+[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 20_US
 BEGIN
     BEGIN
@@ -11255,19 +18527,33 @@ BEGIN
 AGAIN
 ENDASM
 
+ASM SYS_OUT
+    MOV #WARM,R9
+    ADD #4,R9
+    MOV R9,R0
+ENDASM
+
 CODE STOP
-BW1 MOV #SLEEP,R9
+BW1 MOV #$4000,R9
     ADD #4,R9
     MOV R9,-2(R9)
+    MOV #WARM,R9
+    MOV #SYS_OUT,2(R9)
+    BIC.B #4,&$20A
+    BIC.B #4,&$20C
+    MOV #0,&$3C0
+    MOV #0,&$340
+    MOV #0,&$342
+    CALL #$400E
 COLON
-['] WARM >BODY IS WARM
 ECHO
-." RC5toLCD is removed. type START to restart"
-COLD
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM
 ;
 
-CODE APP_INIT
-MOV #%1011010100,&$3C0
+CODE SYS_INIT
+MOV #%10_1101_0100,&$3C0
 $1806 @ 16000 = [IF]
     MOV #1,&$3E0
 [THEN]
@@ -11275,7 +18561,7 @@ $1806 @ 24000 = [IF]
     MOV #2,&$3E0
 [THEN]
     MOV #19,&$3D2
-    MOV #%01100000,&$3C6
+MOV #%0110_0000,&$3C6
     MOV #10,&$3D6
     BIS.B #$20,&$204
     BIS.B #$20,&$20A
@@ -11286,7 +18572,7 @@ $1806 @ 24000 = [IF]
     BIS.B #4,&$20A
     BIC.B #4,&$20C
     MOV #RC5_INT,&$FFDE
-    MOV #%0100010100,&$340
+MOV #%01_0001_0100,&$340
     MOV ##3276,&$352
     MOV #%10000,&$342
     MOV #WDT_INT,&$FFEA
@@ -11317,21 +18603,150 @@ COLON
     ['] CR >BODY IS CR
     ['] EMIT >BODY IS EMIT
     ." RC5toLCD is running. Type STOP to quit"
-    ABORT
+    PWR_STATE ABORT
 ;
 
 CODE START
-MOV #SLEEP,R9
+MOV #$4000,R9
 MOV #BACKGROUND,2(R9)
 MOV #WARM,R9
-MOV #APP_INIT,2(R9)
+MOV #SYS_INIT,2(R9)
 MOV R9,R0
 ENDCODE 
 
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
+
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
 
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+CODE @
+MOV @R14,R14
+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]
+$1DBE CONSTANT STATE
+[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] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(R10)
+MOV #$402C,-2(R10)
+MOV @R1+,R13
+MOV @R13+,R0
+ENDCODE
+[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 20_US
 BEGIN
     BEGIN
@@ -11477,19 +18892,33 @@ BEGIN
 AGAIN
 ENDASM
 
+ASM SYS_OUT
+    MOV #WARM,R9
+    ADD #4,R9
+    MOV R9,R0
+ENDASM
+
 CODE STOP
-BW1 MOV #SLEEP,R9
+BW1 MOV #$4000,R9
     ADD #4,R9
     MOV R9,-2(R9)
+    MOV #WARM,R9
+    MOV #SYS_OUT,2(R9)
+    BIC.B #4,&$20A
+    BIC.B #4,&$20C
+    MOV #0,&$3C0
+    MOV #0,&$340
+    MOV #0,&$342
+    CALL #$400E
 COLON
-['] WARM >BODY IS WARM
 ECHO
-." RC5toLCD is removed. type START to restart"
-COLD
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM
 ;
 
-CODE APP_INIT
-MOV #%1011010100,&$3C0
+CODE SYS_INIT
+MOV #%10_1101_0100,&$3C0
 $1806 @ 16000 = [IF]
     MOV #1,&$3E0
 [THEN]
@@ -11497,7 +18926,7 @@ $1806 @ 24000 = [IF]
     MOV #2,&$3E0
 [THEN]
     MOV #19,&$3D2
-    MOV #%01100000,&$3C6
+MOV #%0110_0000,&$3C6
     MOV #10,&$3D6
     BIS.B #$20,&$204
     BIS.B #$20,&$20A
@@ -11508,7 +18937,7 @@ $1806 @ 24000 = [IF]
     BIS.B #4,&$20A
     BIC.B #4,&$20C
     MOV #RC5_INT,&$FFDE
-    MOV #%0100010100,&$340
+MOV #%01_0001_0100,&$340
     MOV ##3276,&$352
     MOV #%10000,&$342
     MOV #WDT_INT,&$FFEA
@@ -11539,21 +18968,150 @@ COLON
     ['] CR >BODY IS CR
     ['] EMIT >BODY IS EMIT
     ." RC5toLCD is running. Type STOP to quit"
-    ABORT
+    PWR_STATE ABORT
 ;
 
 CODE START
-MOV #SLEEP,R9
+MOV #$4000,R9
 MOV #BACKGROUND,2(R9)
 MOV #WARM,R9
-MOV #APP_INIT,2(R9)
+MOV #SYS_INIT,2(R9)
 MOV R9,R0
 ENDCODE 
 
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
+
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
 
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+CODE @
+MOV @R14,R14
+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]
+$1DBE CONSTANT STATE
+[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] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(R10)
+MOV #$402C,-2(R10)
+MOV @R1+,R13
+MOV @R13+,R0
+ENDCODE
+[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 20_US
 BEGIN
     BEGIN
@@ -11699,19 +19257,33 @@ BEGIN
 AGAIN
 ENDASM
 
+ASM SYS_OUT
+    MOV #WARM,R9
+    ADD #4,R9
+    MOV R9,R0
+ENDASM
+
 CODE STOP
-BW1 MOV #SLEEP,R9
+BW1 MOV #$4000,R9
     ADD #4,R9
     MOV R9,-2(R9)
+    MOV #WARM,R9
+    MOV #SYS_OUT,2(R9)
+    BIC.B #4,&$20A
+    BIC.B #4,&$20C
+    MOV #0,&$3C0
+    MOV #0,&$340
+    MOV #0,&$342
+    CALL #$400E
 COLON
-['] WARM >BODY IS WARM
 ECHO
-." RC5toLCD is removed. type START to restart"
-COLD
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM
 ;
 
-CODE APP_INIT
-MOV #%1011010100,&$3C0
+CODE SYS_INIT
+MOV #%10_1101_0100,&$3C0
 $1806 @ 16000 = [IF]
     MOV #1,&$3E0
 [THEN]
@@ -11719,7 +19291,7 @@ $1806 @ 24000 = [IF]
     MOV #2,&$3E0
 [THEN]
     MOV #19,&$3D2
-    MOV #%01100000,&$3C6
+MOV #%0110_0000,&$3C6
     MOV #10,&$3D6
     BIS.B #$20,&$204
     BIS.B #$20,&$20A
@@ -11730,7 +19302,7 @@ $1806 @ 24000 = [IF]
     BIS.B #4,&$20A
     BIC.B #4,&$20C
     MOV #RC5_INT,&$FFDE
-    MOV #%0100010100,&$340
+MOV #%01_0001_0100,&$340
     MOV ##3276,&$352
     MOV #%10000,&$342
     MOV #WDT_INT,&$FFEA
@@ -11761,21 +19333,150 @@ COLON
     ['] CR >BODY IS CR
     ['] EMIT >BODY IS EMIT
     ." RC5toLCD is running. Type STOP to quit"
-    ABORT
+    PWR_STATE ABORT
 ;
 
 CODE START
-MOV #SLEEP,R9
+MOV #$4000,R9
 MOV #BACKGROUND,2(R9)
 MOV #WARM,R9
-MOV #APP_INIT,2(R9)
+MOV #SYS_INIT,2(R9)
 MOV R9,R0
 ENDCODE 
 
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
+
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
 
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+CODE @
+MOV @R14,R14
+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]
+$1DBE CONSTANT STATE
+[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] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(R10)
+MOV #$402C,-2(R10)
+MOV @R1+,R13
+MOV @R13+,R0
+ENDCODE
+[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 20_US
 BEGIN
     BEGIN
@@ -11921,19 +19622,33 @@ BEGIN
 AGAIN
 ENDASM
 
+ASM SYS_OUT
+    MOV #WARM,R9
+    ADD #4,R9
+    MOV R9,R0
+ENDASM
+
 CODE STOP
-BW1 MOV #SLEEP,R9
+BW1 MOV #$4000,R9
     ADD #4,R9
     MOV R9,-2(R9)
+    MOV #WARM,R9
+    MOV #SYS_OUT,2(R9)
+    BIC.B #4,&$20A
+    BIC.B #4,&$20C
+    MOV #0,&$3C0
+    MOV #0,&$340
+    MOV #0,&$342
+    CALL #$400E
 COLON
-['] WARM >BODY IS WARM
 ECHO
-." RC5toLCD is removed. type START to restart"
-COLD
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM
 ;
 
-CODE APP_INIT
-MOV #%1011010100,&$3C0
+CODE SYS_INIT
+MOV #%10_1101_0100,&$3C0
 $1806 @ 16000 = [IF]
     MOV #1,&$3E0
 [THEN]
@@ -11941,7 +19656,7 @@ $1806 @ 24000 = [IF]
     MOV #2,&$3E0
 [THEN]
     MOV #19,&$3D2
-    MOV #%01100000,&$3C6
+MOV #%0110_0000,&$3C6
     MOV #10,&$3D6
     BIS.B #$20,&$204
     BIS.B #$20,&$20A
@@ -11952,7 +19667,7 @@ $1806 @ 24000 = [IF]
     BIS.B #4,&$20A
     BIC.B #4,&$20C
     MOV #RC5_INT,&$FFDE
-    MOV #%0100010100,&$340
+MOV #%01_0001_0100,&$340
     MOV ##3276,&$352
     MOV #%10000,&$342
     MOV #WDT_INT,&$FFEA
@@ -11983,21 +19698,150 @@ COLON
     ['] CR >BODY IS CR
     ['] EMIT >BODY IS EMIT
     ." RC5toLCD is running. Type STOP to quit"
-    ABORT
+    PWR_STATE ABORT
 ;
 
 CODE START
-MOV #SLEEP,R9
+MOV #$4000,R9
 MOV #BACKGROUND,2(R9)
 MOV #WARM,R9
-MOV #APP_INIT,2(R9)
+MOV #SYS_INIT,2(R9)
 MOV R9,R0
 ENDCODE 
 
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
+
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
 
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+CODE @
+MOV @R14,R14
+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]
+$1DBE CONSTANT STATE
+[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] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(R10)
+MOV #$402C,-2(R10)
+MOV @R1+,R13
+MOV @R13+,R0
+ENDCODE
+[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 20_US
 BEGIN
     BEGIN
@@ -12143,19 +19987,33 @@ BEGIN
 AGAIN
 ENDASM
 
+ASM SYS_OUT
+    MOV #WARM,R9
+    ADD #4,R9
+    MOV R9,R0
+ENDASM
+
 CODE STOP
-BW1 MOV #SLEEP,R9
+BW1 MOV #$4000,R9
     ADD #4,R9
     MOV R9,-2(R9)
+    MOV #WARM,R9
+    MOV #SYS_OUT,2(R9)
+    BIC.B #4,&$20A
+    BIC.B #4,&$20C
+    MOV #0,&$3C0
+    MOV #0,&$340
+    MOV #0,&$342
+    CALL #$400E
 COLON
-['] WARM >BODY IS WARM
 ECHO
-." RC5toLCD is removed. type START to restart"
-COLD
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM
 ;
 
-CODE APP_INIT
-MOV #%1011010100,&$3C0
+CODE SYS_INIT
+MOV #%10_1101_0100,&$3C0
 $1806 @ 16000 = [IF]
     MOV #1,&$3E0
 [THEN]
@@ -12163,7 +20021,7 @@ $1806 @ 24000 = [IF]
     MOV #2,&$3E0
 [THEN]
     MOV #19,&$3D2
-    MOV #%01100000,&$3C6
+MOV #%0110_0000,&$3C6
     MOV #10,&$3D6
     BIS.B #$20,&$204
     BIS.B #$20,&$20A
@@ -12174,7 +20032,7 @@ $1806 @ 24000 = [IF]
     BIS.B #4,&$20A
     BIC.B #4,&$20C
     MOV #RC5_INT,&$FFDE
-    MOV #%0100010100,&$340
+MOV #%01_0001_0100,&$340
     MOV ##3276,&$352
     MOV #%10000,&$342
     MOV #WDT_INT,&$FFEA
@@ -12205,21 +20063,150 @@ COLON
     ['] CR >BODY IS CR
     ['] EMIT >BODY IS EMIT
     ." RC5toLCD is running. Type STOP to quit"
-    ABORT
+    PWR_STATE ABORT
 ;
 
 CODE START
-MOV #SLEEP,R9
+MOV #$4000,R9
 MOV #BACKGROUND,2(R9)
 MOV #WARM,R9
-MOV #APP_INIT,2(R9)
+MOV #SYS_INIT,2(R9)
 MOV R9,R0
 ENDCODE 
 
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
+
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
 
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+CODE @
+MOV @R14,R14
+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]
+$1DBE CONSTANT STATE
+[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] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(R10)
+MOV #$402C,-2(R10)
+MOV @R1+,R13
+MOV @R13+,R0
+ENDCODE
+[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 20_US
 BEGIN
     BEGIN
@@ -12365,19 +20352,33 @@ BEGIN
 AGAIN
 ENDASM
 
+ASM SYS_OUT
+    MOV #WARM,R9
+    ADD #4,R9
+    MOV R9,R0
+ENDASM
+
 CODE STOP
-BW1 MOV #SLEEP,R9
+BW1 MOV #$4000,R9
     ADD #4,R9
     MOV R9,-2(R9)
+    MOV #WARM,R9
+    MOV #SYS_OUT,2(R9)
+    BIC.B #4,&$20A
+    BIC.B #4,&$20C
+    MOV #0,&$3C0
+    MOV #0,&$340
+    MOV #0,&$342
+    CALL #$400E
 COLON
-['] WARM >BODY IS WARM
 ECHO
-." RC5toLCD is removed. type START to restart"
-COLD
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM
 ;
 
-CODE APP_INIT
-MOV #%1011010100,&$3C0
+CODE SYS_INIT
+MOV #%10_1101_0100,&$3C0
 $1806 @ 16000 = [IF]
     MOV #1,&$3E0
 [THEN]
@@ -12385,7 +20386,7 @@ $1806 @ 24000 = [IF]
     MOV #2,&$3E0
 [THEN]
     MOV #19,&$3D2
-    MOV #%01100000,&$3C6
+MOV #%0110_0000,&$3C6
     MOV #10,&$3D6
     BIS.B #$20,&$204
     BIS.B #$20,&$20A
@@ -12396,7 +20397,7 @@ $1806 @ 24000 = [IF]
     BIS.B #4,&$20A
     BIC.B #4,&$20C
     MOV #RC5_INT,&$FFDE
-    MOV #%0100010100,&$340
+MOV #%01_0001_0100,&$340
     MOV ##3276,&$352
     MOV #%10000,&$342
     MOV #WDT_INT,&$FFEA
@@ -12427,21 +20428,150 @@ COLON
     ['] CR >BODY IS CR
     ['] EMIT >BODY IS EMIT
     ." RC5toLCD is running. Type STOP to quit"
-    ABORT
+    PWR_STATE ABORT
 ;
 
 CODE START
-MOV #SLEEP,R9
+MOV #$4000,R9
 MOV #BACKGROUND,2(R9)
 MOV #WARM,R9
-MOV #APP_INIT,2(R9)
+MOV #SYS_INIT,2(R9)
 MOV R9,R0
 ENDCODE 
 
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
+
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
 
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+CODE @
+MOV @R14,R14
+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]
+$1DBE CONSTANT STATE
+[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] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(R10)
+MOV #$402C,-2(R10)
+MOV @R1+,R13
+MOV @R13+,R0
+ENDCODE
+[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 20_US
 BEGIN
     BEGIN
@@ -12587,19 +20717,33 @@ BEGIN
 AGAIN
 ENDASM
 
+ASM SYS_OUT
+    MOV #WARM,R9
+    ADD #4,R9
+    MOV R9,R0
+ENDASM
+
 CODE STOP
-BW1 MOV #SLEEP,R9
+BW1 MOV #$4000,R9
     ADD #4,R9
     MOV R9,-2(R9)
+    MOV #WARM,R9
+    MOV #SYS_OUT,2(R9)
+    BIC.B #4,&$20A
+    BIC.B #4,&$20C
+    MOV #0,&$3C0
+    MOV #0,&$340
+    MOV #0,&$342
+    CALL #$400E
 COLON
-['] WARM >BODY IS WARM
 ECHO
-." RC5toLCD is removed. type START to restart"
-COLD
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM
 ;
 
-CODE APP_INIT
-MOV #%1011010100,&$3C0
+CODE SYS_INIT
+MOV #%10_1101_0100,&$3C0
 $1806 @ 16000 = [IF]
     MOV #1,&$3E0
 [THEN]
@@ -12607,7 +20751,7 @@ $1806 @ 24000 = [IF]
     MOV #2,&$3E0
 [THEN]
     MOV #19,&$3D2
-    MOV #%01100000,&$3C6
+MOV #%0110_0000,&$3C6
     MOV #10,&$3D6
     BIS.B #$20,&$204
     BIS.B #$20,&$20A
@@ -12618,7 +20762,7 @@ $1806 @ 24000 = [IF]
     BIS.B #4,&$20A
     BIC.B #4,&$20C
     MOV #RC5_INT,&$FFDE
-    MOV #%0100010100,&$340
+MOV #%01_0001_0100,&$340
     MOV ##3276,&$352
     MOV #%10000,&$342
     MOV #WDT_INT,&$FFEA
@@ -12649,21 +20793,150 @@ COLON
     ['] CR >BODY IS CR
     ['] EMIT >BODY IS EMIT
     ." RC5toLCD is running. Type STOP to quit"
-    ABORT
+    PWR_STATE ABORT
 ;
 
 CODE START
-MOV #SLEEP,R9
+MOV #$4000,R9
 MOV #BACKGROUND,2(R9)
 MOV #WARM,R9
-MOV #APP_INIT,2(R9)
+MOV #SYS_INIT,2(R9)
 MOV R9,R0
 ENDCODE 
 
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
+
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
 
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+CODE @
+MOV @R14,R14
+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]
+$1DBE CONSTANT STATE
+[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] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(R10)
+MOV #$402C,-2(R10)
+MOV @R1+,R13
+MOV @R13+,R0
+ENDCODE
+[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 20_US
 BEGIN
     BEGIN
@@ -12809,19 +21082,33 @@ BEGIN
 AGAIN
 ENDASM
 
+ASM SYS_OUT
+    MOV #WARM,R9
+    ADD #4,R9
+    MOV R9,R0
+ENDASM
+
 CODE STOP
-BW1 MOV #SLEEP,R9
+BW1 MOV #$4000,R9
     ADD #4,R9
     MOV R9,-2(R9)
+    MOV #WARM,R9
+    MOV #SYS_OUT,2(R9)
+    BIC.B #4,&$20A
+    BIC.B #4,&$20C
+    MOV #0,&$3C0
+    MOV #0,&$340
+    MOV #0,&$342
+    CALL #$400E
 COLON
-['] WARM >BODY IS WARM
 ECHO
-." RC5toLCD is removed. type START to restart"
-COLD
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM
 ;
 
-CODE APP_INIT
-MOV #%1011010100,&$3C0
+CODE SYS_INIT
+MOV #%10_1101_0100,&$3C0
 $1806 @ 16000 = [IF]
     MOV #1,&$3E0
 [THEN]
@@ -12829,7 +21116,7 @@ $1806 @ 24000 = [IF]
     MOV #2,&$3E0
 [THEN]
     MOV #19,&$3D2
-    MOV #%01100000,&$3C6
+MOV #%0110_0000,&$3C6
     MOV #10,&$3D6
     BIS.B #$20,&$204
     BIS.B #$20,&$20A
@@ -12840,7 +21127,7 @@ $1806 @ 24000 = [IF]
     BIS.B #4,&$20A
     BIC.B #4,&$20C
     MOV #RC5_INT,&$FFDE
-    MOV #%0100010100,&$340
+MOV #%01_0001_0100,&$340
     MOV ##3276,&$352
     MOV #%10000,&$342
     MOV #WDT_INT,&$FFEA
@@ -12871,21 +21158,150 @@ COLON
     ['] CR >BODY IS CR
     ['] EMIT >BODY IS EMIT
     ." RC5toLCD is running. Type STOP to quit"
-    ABORT
+    PWR_STATE ABORT
 ;
 
 CODE START
-MOV #SLEEP,R9
+MOV #$4000,R9
 MOV #BACKGROUND,2(R9)
 MOV #WARM,R9
-MOV #APP_INIT,2(R9)
+MOV #SYS_INIT,2(R9)
 MOV R9,R0
 ENDCODE 
 
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
+
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
 
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+CODE @
+MOV @R14,R14
+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]
+$1DBE CONSTANT STATE
+[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] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(R10)
+MOV #$402C,-2(R10)
+MOV @R1+,R13
+MOV @R13+,R0
+ENDCODE
+[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 20_US
 BEGIN
     BEGIN
@@ -13031,19 +21447,33 @@ BEGIN
 AGAIN
 ENDASM
 
+ASM SYS_OUT
+    MOV #WARM,R9
+    ADD #4,R9
+    MOV R9,R0
+ENDASM
+
 CODE STOP
-BW1 MOV #SLEEP,R9
+BW1 MOV #$4000,R9
     ADD #4,R9
     MOV R9,-2(R9)
+    MOV #WARM,R9
+    MOV #SYS_OUT,2(R9)
+    BIC.B #4,&$20A
+    BIC.B #4,&$20C
+    MOV #0,&$3C0
+    MOV #0,&$340
+    MOV #0,&$342
+    CALL #$400E
 COLON
-['] WARM >BODY IS WARM
 ECHO
-." RC5toLCD is removed. type START to restart"
-COLD
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM
 ;
 
-CODE APP_INIT
-MOV #%1011010100,&$3C0
+CODE SYS_INIT
+MOV #%10_1101_0100,&$3C0
 $1806 @ 16000 = [IF]
     MOV #1,&$3E0
 [THEN]
@@ -13051,7 +21481,7 @@ $1806 @ 24000 = [IF]
     MOV #2,&$3E0
 [THEN]
     MOV #19,&$3D2
-    MOV #%01100000,&$3C6
+MOV #%0110_0000,&$3C6
     MOV #10,&$3D6
     BIS.B #$20,&$204
     BIS.B #$20,&$20A
@@ -13062,7 +21492,7 @@ $1806 @ 24000 = [IF]
     BIS.B #4,&$20A
     BIC.B #4,&$20C
     MOV #RC5_INT,&$FFDE
-    MOV #%0100010100,&$340
+MOV #%01_0001_0100,&$340
     MOV ##3276,&$352
     MOV #%10000,&$342
     MOV #WDT_INT,&$FFEA
@@ -13093,21 +21523,150 @@ COLON
     ['] CR >BODY IS CR
     ['] EMIT >BODY IS EMIT
     ." RC5toLCD is running. Type STOP to quit"
-    ABORT
+    PWR_STATE ABORT
 ;
 
 CODE START
-MOV #SLEEP,R9
+MOV #$4000,R9
 MOV #BACKGROUND,2(R9)
 MOV #WARM,R9
-MOV #APP_INIT,2(R9)
+MOV #SYS_INIT,2(R9)
 MOV R9,R0
 ENDCODE 
 
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
+
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
 
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+CODE @
+MOV @R14,R14
+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]
+$1DBE CONSTANT STATE
+[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] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(R10)
+MOV #$402C,-2(R10)
+MOV @R1+,R13
+MOV @R13+,R0
+ENDCODE
+[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 20_US
 BEGIN
     BEGIN
@@ -13253,19 +21812,33 @@ BEGIN
 AGAIN
 ENDASM
 
+ASM SYS_OUT
+    MOV #WARM,R9
+    ADD #4,R9
+    MOV R9,R0
+ENDASM
+
 CODE STOP
-BW1 MOV #SLEEP,R9
+BW1 MOV #$4000,R9
     ADD #4,R9
     MOV R9,-2(R9)
+    MOV #WARM,R9
+    MOV #SYS_OUT,2(R9)
+    BIC.B #4,&$20A
+    BIC.B #4,&$20C
+    MOV #0,&$3C0
+    MOV #0,&$340
+    MOV #0,&$342
+    CALL #$400E
 COLON
-['] WARM >BODY IS WARM
 ECHO
-." RC5toLCD is removed. type START to restart"
-COLD
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM
 ;
 
-CODE APP_INIT
-MOV #%1011010100,&$3C0
+CODE SYS_INIT
+MOV #%10_1101_0100,&$3C0
 $1806 @ 16000 = [IF]
     MOV #1,&$3E0
 [THEN]
@@ -13273,7 +21846,7 @@ $1806 @ 24000 = [IF]
     MOV #2,&$3E0
 [THEN]
     MOV #19,&$3D2
-    MOV #%01100000,&$3C6
+MOV #%0110_0000,&$3C6
     MOV #10,&$3D6
     BIS.B #$20,&$204
     BIS.B #$20,&$20A
@@ -13284,7 +21857,7 @@ $1806 @ 24000 = [IF]
     BIS.B #4,&$20A
     BIC.B #4,&$20C
     MOV #RC5_INT,&$FFDE
-    MOV #%0100010100,&$340
+MOV #%01_0001_0100,&$340
     MOV ##3276,&$352
     MOV #%10000,&$342
     MOV #WDT_INT,&$FFEA
@@ -13315,21 +21888,150 @@ COLON
     ['] CR >BODY IS CR
     ['] EMIT >BODY IS EMIT
     ." RC5toLCD is running. Type STOP to quit"
-    ABORT
+    PWR_STATE ABORT
 ;
 
 CODE START
-MOV #SLEEP,R9
+MOV #$4000,R9
 MOV #BACKGROUND,2(R9)
 MOV #WARM,R9
-MOV #APP_INIT,2(R9)
+MOV #SYS_INIT,2(R9)
 MOV R9,R0
 ENDCODE 
 
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
+
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
 
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+CODE @
+MOV @R14,R14
+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]
+$1DBE CONSTANT STATE
+[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] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(R10)
+MOV #$402C,-2(R10)
+MOV @R1+,R13
+MOV @R13+,R0
+ENDCODE
+[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 20_US
 BEGIN
     BEGIN
@@ -13475,19 +22177,33 @@ BEGIN
 AGAIN
 ENDASM
 
+ASM SYS_OUT
+    MOV #WARM,R9
+    ADD #4,R9
+    MOV R9,R0
+ENDASM
+
 CODE STOP
-BW1 MOV #SLEEP,R9
+BW1 MOV #$4000,R9
     ADD #4,R9
     MOV R9,-2(R9)
+    MOV #WARM,R9
+    MOV #SYS_OUT,2(R9)
+    BIC.B #4,&$20A
+    BIC.B #4,&$20C
+    MOV #0,&$3C0
+    MOV #0,&$340
+    MOV #0,&$342
+    CALL #$400E
 COLON
-['] WARM >BODY IS WARM
 ECHO
-." RC5toLCD is removed. type START to restart"
-COLD
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM
 ;
 
-CODE APP_INIT
-MOV #%1011010100,&$3C0
+CODE SYS_INIT
+MOV #%10_1101_0100,&$3C0
 $1806 @ 16000 = [IF]
     MOV #1,&$3E0
 [THEN]
@@ -13495,7 +22211,7 @@ $1806 @ 24000 = [IF]
     MOV #2,&$3E0
 [THEN]
     MOV #19,&$3D2
-    MOV #%01100000,&$3C6
+MOV #%0110_0000,&$3C6
     MOV #10,&$3D6
     BIS.B #$20,&$204
     BIS.B #$20,&$20A
@@ -13506,7 +22222,7 @@ $1806 @ 24000 = [IF]
     BIS.B #4,&$20A
     BIC.B #4,&$20C
     MOV #RC5_INT,&$FFDE
-    MOV #%0100010100,&$340
+MOV #%01_0001_0100,&$340
     MOV ##3276,&$352
     MOV #%10000,&$342
     MOV #WDT_INT,&$FFEA
@@ -13537,20 +22253,149 @@ COLON
     ['] CR >BODY IS CR
     ['] EMIT >BODY IS EMIT
     ." RC5toLCD is running. Type STOP to quit"
-    ABORT
+    PWR_STATE ABORT
 ;
 
-CODE START
-MOV #SLEEP,R9
-MOV #BACKGROUND,2(R9)
-MOV #WARM,R9
-MOV #APP_INIT,2(R9)
-MOV R9,R0
-ENDCODE 
+CODE START
+MOV #$4000,R9
+MOV #BACKGROUND,2(R9)
+MOV #WARM,R9
+MOV #SYS_INIT,2(R9)
+MOV R9,R0
+ENDCODE 
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
+
+[DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
+
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
+
+MARKER {RC5TOLCD}
+
+[UNDEFINED] @ [IF]
+CODE @
+MOV @R14,R14
+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]
+$1DBE CONSTANT STATE
+[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] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(R10)
+MOV #$402C,-2(R10)
+MOV @R1+,R13
+MOV @R13+,R0
+ENDCODE
+[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]
 
-[DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
+[UNDEFINED] >BODY [IF]
+CODE >BODY
+ADD #4,R14
+MOV @R13+,R0
+ENDCODE
+[THEN]
 
-MARKER {RC5TOLCD}
 
 CODE 20_US
 BEGIN
@@ -13697,19 +22542,33 @@ BEGIN
 AGAIN
 ENDASM
 
+ASM SYS_OUT
+    MOV #WARM,R9
+    ADD #4,R9
+    MOV R9,R0
+ENDASM
+
 CODE STOP
-BW1 MOV #SLEEP,R9
+BW1 MOV #$4000,R9
     ADD #4,R9
     MOV R9,-2(R9)
+    MOV #WARM,R9
+    MOV #SYS_OUT,2(R9)
+    BIC.B #4,&$20A
+    BIC.B #4,&$20C
+    MOV #0,&$3C0
+    MOV #0,&$340
+    MOV #0,&$342
+    CALL #$400E
 COLON
-['] WARM >BODY IS WARM
 ECHO
-." RC5toLCD is removed. type START to restart"
-COLD
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM
 ;
 
-CODE APP_INIT
-MOV #%1011010100,&$3C0
+CODE SYS_INIT
+MOV #%10_1101_0100,&$3C0
 $1806 @ 16000 = [IF]
     MOV #1,&$3E0
 [THEN]
@@ -13717,7 +22576,7 @@ $1806 @ 24000 = [IF]
     MOV #2,&$3E0
 [THEN]
     MOV #19,&$3D2
-    MOV #%01100000,&$3C6
+MOV #%0110_0000,&$3C6
     MOV #10,&$3D6
     BIS.B #$20,&$204
     BIS.B #$20,&$20A
@@ -13728,7 +22587,7 @@ $1806 @ 24000 = [IF]
     BIS.B #4,&$20A
     BIC.B #4,&$20C
     MOV #RC5_INT,&$FFDE
-    MOV #%0100010100,&$340
+MOV #%01_0001_0100,&$340
     MOV ##3276,&$352
     MOV #%10000,&$342
     MOV #WDT_INT,&$FFEA
@@ -13759,21 +22618,150 @@ COLON
     ['] CR >BODY IS CR
     ['] EMIT >BODY IS EMIT
     ." RC5toLCD is running. Type STOP to quit"
-    ABORT
+    PWR_STATE ABORT
 ;
 
 CODE START
-MOV #SLEEP,R9
+MOV #$4000,R9
 MOV #BACKGROUND,2(R9)
 MOV #WARM,R9
-MOV #APP_INIT,2(R9)
+MOV #SYS_INIT,2(R9)
 MOV R9,R0
 ENDCODE 
 
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
+
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
 
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+CODE @
+MOV @R14,R14
+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]
+$1DBE CONSTANT STATE
+[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] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(R10)
+MOV #$402C,-2(R10)
+MOV @R1+,R13
+MOV @R13+,R0
+ENDCODE
+[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 20_US
 BEGIN
     BEGIN
@@ -13919,19 +22907,33 @@ BEGIN
 AGAIN
 ENDASM
 
+ASM SYS_OUT
+    MOV #WARM,R9
+    ADD #4,R9
+    MOV R9,R0
+ENDASM
+
 CODE STOP
-BW1 MOV #SLEEP,R9
+BW1 MOV #$4000,R9
     ADD #4,R9
     MOV R9,-2(R9)
+    MOV #WARM,R9
+    MOV #SYS_OUT,2(R9)
+    BIC.B #4,&$20A
+    BIC.B #4,&$20C
+    MOV #0,&$3C0
+    MOV #0,&$340
+    MOV #0,&$342
+    CALL #$400E
 COLON
-['] WARM >BODY IS WARM
 ECHO
-." RC5toLCD is removed. type START to restart"
-COLD
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM
 ;
 
-CODE APP_INIT
-MOV #%1011010100,&$3C0
+CODE SYS_INIT
+MOV #%10_1101_0100,&$3C0
 $1806 @ 16000 = [IF]
     MOV #1,&$3E0
 [THEN]
@@ -13939,7 +22941,7 @@ $1806 @ 24000 = [IF]
     MOV #2,&$3E0
 [THEN]
     MOV #19,&$3D2
-    MOV #%01100000,&$3C6
+MOV #%0110_0000,&$3C6
     MOV #10,&$3D6
     BIS.B #$20,&$204
     BIS.B #$20,&$20A
@@ -13950,7 +22952,7 @@ $1806 @ 24000 = [IF]
     BIS.B #4,&$20A
     BIC.B #4,&$20C
     MOV #RC5_INT,&$FFDE
-    MOV #%0100010100,&$340
+MOV #%01_0001_0100,&$340
     MOV ##3276,&$352
     MOV #%10000,&$342
     MOV #WDT_INT,&$FFEA
@@ -13981,21 +22983,150 @@ COLON
     ['] CR >BODY IS CR
     ['] EMIT >BODY IS EMIT
     ." RC5toLCD is running. Type STOP to quit"
-    ABORT
+    PWR_STATE ABORT
 ;
 
 CODE START
-MOV #SLEEP,R9
+MOV #$4000,R9
 MOV #BACKGROUND,2(R9)
 MOV #WARM,R9
-MOV #APP_INIT,2(R9)
+MOV #SYS_INIT,2(R9)
 MOV R9,R0
 ENDCODE 
 
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
+
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
 
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+CODE @
+MOV @R14,R14
+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]
+$1DBE CONSTANT STATE
+[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] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(R10)
+MOV #$402C,-2(R10)
+MOV @R1+,R13
+MOV @R13+,R0
+ENDCODE
+[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 20_US
 BEGIN
     BEGIN
@@ -14141,19 +23272,33 @@ BEGIN
 AGAIN
 ENDASM
 
+ASM SYS_OUT
+    MOV #WARM,R9
+    ADD #4,R9
+    MOV R9,R0
+ENDASM
+
 CODE STOP
-BW1 MOV #SLEEP,R9
+BW1 MOV #$4000,R9
     ADD #4,R9
     MOV R9,-2(R9)
+    MOV #WARM,R9
+    MOV #SYS_OUT,2(R9)
+    BIC.B #4,&$20A
+    BIC.B #4,&$20C
+    MOV #0,&$3C0
+    MOV #0,&$340
+    MOV #0,&$342
+    CALL #$400E
 COLON
-['] WARM >BODY IS WARM
 ECHO
-." RC5toLCD is removed. type START to restart"
-COLD
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM
 ;
 
-CODE APP_INIT
-MOV #%1011010100,&$3C0
+CODE SYS_INIT
+MOV #%10_1101_0100,&$3C0
 $1806 @ 16000 = [IF]
     MOV #1,&$3E0
 [THEN]
@@ -14161,7 +23306,7 @@ $1806 @ 24000 = [IF]
     MOV #2,&$3E0
 [THEN]
     MOV #19,&$3D2
-    MOV #%01100000,&$3C6
+MOV #%0110_0000,&$3C6
     MOV #10,&$3D6
     BIS.B #$20,&$204
     BIS.B #$20,&$20A
@@ -14172,7 +23317,7 @@ $1806 @ 24000 = [IF]
     BIS.B #4,&$20A
     BIC.B #4,&$20C
     MOV #RC5_INT,&$FFDE
-    MOV #%0100010100,&$340
+MOV #%01_0001_0100,&$340
     MOV ##3276,&$352
     MOV #%10000,&$342
     MOV #WDT_INT,&$FFEA
@@ -14203,21 +23348,150 @@ COLON
     ['] CR >BODY IS CR
     ['] EMIT >BODY IS EMIT
     ." RC5toLCD is running. Type STOP to quit"
-    ABORT
+    PWR_STATE ABORT
 ;
 
 CODE START
-MOV #SLEEP,R9
+MOV #$4000,R9
 MOV #BACKGROUND,2(R9)
 MOV #WARM,R9
-MOV #APP_INIT,2(R9)
+MOV #SYS_INIT,2(R9)
 MOV R9,R0
 ENDCODE 
 
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
+
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
 
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+CODE @
+MOV @R14,R14
+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]
+$1DBE CONSTANT STATE
+[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] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(R10)
+MOV #$402C,-2(R10)
+MOV @R1+,R13
+MOV @R13+,R0
+ENDCODE
+[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 20_US
 BEGIN
     BEGIN
@@ -14363,19 +23637,33 @@ BEGIN
 AGAIN
 ENDASM
 
+ASM SYS_OUT
+    MOV #WARM,R9
+    ADD #4,R9
+    MOV R9,R0
+ENDASM
+
 CODE STOP
-BW1 MOV #SLEEP,R9
+BW1 MOV #$4000,R9
     ADD #4,R9
     MOV R9,-2(R9)
+    MOV #WARM,R9
+    MOV #SYS_OUT,2(R9)
+    BIC.B #4,&$20A
+    BIC.B #4,&$20C
+    MOV #0,&$3C0
+    MOV #0,&$340
+    MOV #0,&$342
+    CALL #$400E
 COLON
-['] WARM >BODY IS WARM
 ECHO
-." RC5toLCD is removed. type START to restart"
-COLD
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM
 ;
 
-CODE APP_INIT
-MOV #%1011010100,&$3C0
+CODE SYS_INIT
+MOV #%10_1101_0100,&$3C0
 $1806 @ 16000 = [IF]
     MOV #1,&$3E0
 [THEN]
@@ -14383,7 +23671,7 @@ $1806 @ 24000 = [IF]
     MOV #2,&$3E0
 [THEN]
     MOV #19,&$3D2
-    MOV #%01100000,&$3C6
+MOV #%0110_0000,&$3C6
     MOV #10,&$3D6
     BIS.B #$20,&$204
     BIS.B #$20,&$20A
@@ -14394,7 +23682,7 @@ $1806 @ 24000 = [IF]
     BIS.B #4,&$20A
     BIC.B #4,&$20C
     MOV #RC5_INT,&$FFDE
-    MOV #%0100010100,&$340
+MOV #%01_0001_0100,&$340
     MOV ##3276,&$352
     MOV #%10000,&$342
     MOV #WDT_INT,&$FFEA
@@ -14425,20 +23713,149 @@ COLON
     ['] CR >BODY IS CR
     ['] EMIT >BODY IS EMIT
     ." RC5toLCD is running. Type STOP to quit"
-    ABORT
+    PWR_STATE ABORT
 ;
 
-CODE START
-MOV #SLEEP,R9
-MOV #BACKGROUND,2(R9)
-MOV #WARM,R9
-MOV #APP_INIT,2(R9)
-MOV R9,R0
-ENDCODE 
+CODE START
+MOV #$4000,R9
+MOV #BACKGROUND,2(R9)
+MOV #WARM,R9
+MOV #SYS_INIT,2(R9)
+MOV R9,R0
+ENDCODE 
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
+
+[DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
+
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
+
+MARKER {RC5TOLCD}
+
+[UNDEFINED] @ [IF]
+CODE @
+MOV @R14,R14
+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]
+$1DBE CONSTANT STATE
+[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] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
 
-[DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(R10)
+MOV #$402C,-2(R10)
+MOV @R1+,R13
+MOV @R13+,R0
+ENDCODE
+[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]
 
-MARKER {RC5TOLCD}
 
 CODE 20_US
 BEGIN
@@ -14585,19 +24002,33 @@ BEGIN
 AGAIN
 ENDASM
 
+ASM SYS_OUT
+    MOV #WARM,R9
+    ADD #4,R9
+    MOV R9,R0
+ENDASM
+
 CODE STOP
-BW1 MOV #SLEEP,R9
+BW1 MOV #$4000,R9
     ADD #4,R9
     MOV R9,-2(R9)
+    MOV #WARM,R9
+    MOV #SYS_OUT,2(R9)
+    BIC.B #4,&$20A
+    BIC.B #4,&$20C
+    MOV #0,&$3C0
+    MOV #0,&$340
+    MOV #0,&$342
+    CALL #$400E
 COLON
-['] WARM >BODY IS WARM
 ECHO
-." RC5toLCD is removed. type START to restart"
-COLD
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM
 ;
 
-CODE APP_INIT
-MOV #%1011010100,&$3C0
+CODE SYS_INIT
+MOV #%10_1101_0100,&$3C0
 $1806 @ 16000 = [IF]
     MOV #1,&$3E0
 [THEN]
@@ -14605,7 +24036,7 @@ $1806 @ 24000 = [IF]
     MOV #2,&$3E0
 [THEN]
     MOV #19,&$3D2
-    MOV #%01100000,&$3C6
+MOV #%0110_0000,&$3C6
     MOV #10,&$3D6
     BIS.B #$20,&$204
     BIS.B #$20,&$20A
@@ -14616,7 +24047,7 @@ $1806 @ 24000 = [IF]
     BIS.B #4,&$20A
     BIC.B #4,&$20C
     MOV #RC5_INT,&$FFDE
-    MOV #%0100010100,&$340
+MOV #%01_0001_0100,&$340
     MOV ##3276,&$352
     MOV #%10000,&$342
     MOV #WDT_INT,&$FFEA
@@ -14647,21 +24078,150 @@ COLON
     ['] CR >BODY IS CR
     ['] EMIT >BODY IS EMIT
     ." RC5toLCD is running. Type STOP to quit"
-    ABORT
+    PWR_STATE ABORT
 ;
 
 CODE START
-MOV #SLEEP,R9
+MOV #$4000,R9
 MOV #BACKGROUND,2(R9)
 MOV #WARM,R9
-MOV #APP_INIT,2(R9)
+MOV #SYS_INIT,2(R9)
 MOV R9,R0
 ENDCODE 
 
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
+
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
 
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+CODE @
+MOV @R14,R14
+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]
+$1DBE CONSTANT STATE
+[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] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(R10)
+MOV #$402C,-2(R10)
+MOV @R1+,R13
+MOV @R13+,R0
+ENDCODE
+[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 20_US
 BEGIN
     BEGIN
@@ -14807,19 +24367,33 @@ BEGIN
 AGAIN
 ENDASM
 
+ASM SYS_OUT
+    MOV #WARM,R9
+    ADD #4,R9
+    MOV R9,R0
+ENDASM
+
 CODE STOP
-BW1 MOV #SLEEP,R9
+BW1 MOV #$4000,R9
     ADD #4,R9
     MOV R9,-2(R9)
+    MOV #WARM,R9
+    MOV #SYS_OUT,2(R9)
+    BIC.B #4,&$20A
+    BIC.B #4,&$20C
+    MOV #0,&$3C0
+    MOV #0,&$340
+    MOV #0,&$342
+    CALL #$400E
 COLON
-['] WARM >BODY IS WARM
 ECHO
-." RC5toLCD is removed. type START to restart"
-COLD
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM
 ;
 
-CODE APP_INIT
-MOV #%1011010100,&$3C0
+CODE SYS_INIT
+MOV #%10_1101_0100,&$3C0
 $1806 @ 16000 = [IF]
     MOV #1,&$3E0
 [THEN]
@@ -14827,7 +24401,7 @@ $1806 @ 24000 = [IF]
     MOV #2,&$3E0
 [THEN]
     MOV #19,&$3D2
-    MOV #%01100000,&$3C6
+MOV #%0110_0000,&$3C6
     MOV #10,&$3D6
     BIS.B #$20,&$204
     BIS.B #$20,&$20A
@@ -14838,7 +24412,7 @@ $1806 @ 24000 = [IF]
     BIS.B #4,&$20A
     BIC.B #4,&$20C
     MOV #RC5_INT,&$FFDE
-    MOV #%0100010100,&$340
+MOV #%01_0001_0100,&$340
     MOV ##3276,&$352
     MOV #%10000,&$342
     MOV #WDT_INT,&$FFEA
@@ -14869,21 +24443,150 @@ COLON
     ['] CR >BODY IS CR
     ['] EMIT >BODY IS EMIT
     ." RC5toLCD is running. Type STOP to quit"
-    ABORT
+    PWR_STATE ABORT
 ;
 
 CODE START
-MOV #SLEEP,R9
+MOV #$4000,R9
 MOV #BACKGROUND,2(R9)
 MOV #WARM,R9
-MOV #APP_INIT,2(R9)
+MOV #SYS_INIT,2(R9)
 MOV R9,R0
 ENDCODE 
 
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
+
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
 
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+CODE @
+MOV @R14,R14
+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]
+$1DBE CONSTANT STATE
+[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] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(R10)
+MOV #$402C,-2(R10)
+MOV @R1+,R13
+MOV @R13+,R0
+ENDCODE
+[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 20_US
 BEGIN
     BEGIN
@@ -15029,19 +24732,33 @@ BEGIN
 AGAIN
 ENDASM
 
+ASM SYS_OUT
+    MOV #WARM,R9
+    ADD #4,R9
+    MOV R9,R0
+ENDASM
+
 CODE STOP
-BW1 MOV #SLEEP,R9
+BW1 MOV #$4000,R9
     ADD #4,R9
     MOV R9,-2(R9)
+    MOV #WARM,R9
+    MOV #SYS_OUT,2(R9)
+    BIC.B #4,&$20A
+    BIC.B #4,&$20C
+    MOV #0,&$3C0
+    MOV #0,&$340
+    MOV #0,&$342
+    CALL #$400E
 COLON
-['] WARM >BODY IS WARM
 ECHO
-." RC5toLCD is removed. type START to restart"
-COLD
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM
 ;
 
-CODE APP_INIT
-MOV #%1011010100,&$3C0
+CODE SYS_INIT
+MOV #%10_1101_0100,&$3C0
 $1806 @ 16000 = [IF]
     MOV #1,&$3E0
 [THEN]
@@ -15049,7 +24766,7 @@ $1806 @ 24000 = [IF]
     MOV #2,&$3E0
 [THEN]
     MOV #19,&$3D2
-    MOV #%01100000,&$3C6
+MOV #%0110_0000,&$3C6
     MOV #10,&$3D6
     BIS.B #$20,&$204
     BIS.B #$20,&$20A
@@ -15060,7 +24777,7 @@ $1806 @ 24000 = [IF]
     BIS.B #4,&$20A
     BIC.B #4,&$20C
     MOV #RC5_INT,&$FFDE
-    MOV #%0100010100,&$340
+MOV #%01_0001_0100,&$340
     MOV ##3276,&$352
     MOV #%10000,&$342
     MOV #WDT_INT,&$FFEA
@@ -15091,21 +24808,150 @@ COLON
     ['] CR >BODY IS CR
     ['] EMIT >BODY IS EMIT
     ." RC5toLCD is running. Type STOP to quit"
-    ABORT
+    PWR_STATE ABORT
 ;
 
 CODE START
-MOV #SLEEP,R9
+MOV #$4000,R9
 MOV #BACKGROUND,2(R9)
 MOV #WARM,R9
-MOV #APP_INIT,2(R9)
+MOV #SYS_INIT,2(R9)
 MOV R9,R0
 ENDCODE 
 
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
+
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
 
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+CODE @
+MOV @R14,R14
+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]
+$1DBE CONSTANT STATE
+[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] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(R10)
+MOV #$402C,-2(R10)
+MOV @R1+,R13
+MOV @R13+,R0
+ENDCODE
+[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 20_US
 BEGIN
     BEGIN
@@ -15251,19 +25097,33 @@ BEGIN
 AGAIN
 ENDASM
 
+ASM SYS_OUT
+    MOV #WARM,R9
+    ADD #4,R9
+    MOV R9,R0
+ENDASM
+
 CODE STOP
-BW1 MOV #SLEEP,R9
+BW1 MOV #$4000,R9
     ADD #4,R9
     MOV R9,-2(R9)
+    MOV #WARM,R9
+    MOV #SYS_OUT,2(R9)
+    BIC.B #4,&$20A
+    BIC.B #4,&$20C
+    MOV #0,&$3C0
+    MOV #0,&$340
+    MOV #0,&$342
+    CALL #$400E
 COLON
-['] WARM >BODY IS WARM
 ECHO
-." RC5toLCD is removed. type START to restart"
-COLD
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM
 ;
 
-CODE APP_INIT
-MOV #%1011010100,&$3C0
+CODE SYS_INIT
+MOV #%10_1101_0100,&$3C0
 $1806 @ 16000 = [IF]
     MOV #1,&$3E0
 [THEN]
@@ -15271,7 +25131,7 @@ $1806 @ 24000 = [IF]
     MOV #2,&$3E0
 [THEN]
     MOV #19,&$3D2
-    MOV #%01100000,&$3C6
+MOV #%0110_0000,&$3C6
     MOV #10,&$3D6
     BIS.B #$20,&$204
     BIS.B #$20,&$20A
@@ -15282,7 +25142,7 @@ $1806 @ 24000 = [IF]
     BIS.B #4,&$20A
     BIC.B #4,&$20C
     MOV #RC5_INT,&$FFDE
-    MOV #%0100010100,&$340
+MOV #%01_0001_0100,&$340
     MOV ##3276,&$352
     MOV #%10000,&$342
     MOV #WDT_INT,&$FFEA
@@ -15313,20 +25173,149 @@ COLON
     ['] CR >BODY IS CR
     ['] EMIT >BODY IS EMIT
     ." RC5toLCD is running. Type STOP to quit"
-    ABORT
+    PWR_STATE ABORT
 ;
 
-CODE START
-MOV #SLEEP,R9
-MOV #BACKGROUND,2(R9)
-MOV #WARM,R9
-MOV #APP_INIT,2(R9)
-MOV R9,R0
-ENDCODE 
+CODE START
+MOV #$4000,R9
+MOV #BACKGROUND,2(R9)
+MOV #WARM,R9
+MOV #SYS_INIT,2(R9)
+MOV R9,R0
+ENDCODE 
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
+
+[DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
+
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
+
+MARKER {RC5TOLCD}
+
+[UNDEFINED] @ [IF]
+CODE @
+MOV @R14,R14
+MOV @R13+,R0
+ENDCODE
+[THEN]
 
-[DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [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]
+$1DBE CONSTANT STATE
+[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] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(R10)
+MOV #$402C,-2(R10)
+MOV @R1+,R13
+MOV @R13+,R0
+ENDCODE
+[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]
 
-MARKER {RC5TOLCD}
 
 CODE 20_US
 BEGIN
@@ -15473,19 +25462,33 @@ BEGIN
 AGAIN
 ENDASM
 
+ASM SYS_OUT
+    MOV #WARM,R9
+    ADD #4,R9
+    MOV R9,R0
+ENDASM
+
 CODE STOP
-BW1 MOV #SLEEP,R9
+BW1 MOV #$4000,R9
     ADD #4,R9
     MOV R9,-2(R9)
+    MOV #WARM,R9
+    MOV #SYS_OUT,2(R9)
+    BIC.B #4,&$20A
+    BIC.B #4,&$20C
+    MOV #0,&$3C0
+    MOV #0,&$340
+    MOV #0,&$342
+    CALL #$400E
 COLON
-['] WARM >BODY IS WARM
 ECHO
-." RC5toLCD is removed. type START to restart"
-COLD
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM
 ;
 
-CODE APP_INIT
-MOV #%1011010100,&$3C0
+CODE SYS_INIT
+MOV #%10_1101_0100,&$3C0
 $1806 @ 16000 = [IF]
     MOV #1,&$3E0
 [THEN]
@@ -15493,7 +25496,7 @@ $1806 @ 24000 = [IF]
     MOV #2,&$3E0
 [THEN]
     MOV #19,&$3D2
-    MOV #%01100000,&$3C6
+MOV #%0110_0000,&$3C6
     MOV #10,&$3D6
     BIS.B #$20,&$204
     BIS.B #$20,&$20A
@@ -15504,7 +25507,7 @@ $1806 @ 24000 = [IF]
     BIS.B #4,&$20A
     BIC.B #4,&$20C
     MOV #RC5_INT,&$FFDE
-    MOV #%0100010100,&$340
+MOV #%01_0001_0100,&$340
     MOV ##3276,&$352
     MOV #%10000,&$342
     MOV #WDT_INT,&$FFEA
@@ -15535,21 +25538,150 @@ COLON
     ['] CR >BODY IS CR
     ['] EMIT >BODY IS EMIT
     ." RC5toLCD is running. Type STOP to quit"
-    ABORT
+    PWR_STATE ABORT
 ;
 
 CODE START
-MOV #SLEEP,R9
+MOV #$4000,R9
 MOV #BACKGROUND,2(R9)
 MOV #WARM,R9
-MOV #APP_INIT,2(R9)
+MOV #SYS_INIT,2(R9)
 MOV R9,R0
 ENDCODE 
 
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
+
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
 
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+CODE @
+MOV @R14,R14
+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]
+$1DBE CONSTANT STATE
+[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] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(R10)
+MOV #$402C,-2(R10)
+MOV @R1+,R13
+MOV @R13+,R0
+ENDCODE
+[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 20_US
 BEGIN
     BEGIN
@@ -15695,19 +25827,33 @@ BEGIN
 AGAIN
 ENDASM
 
+ASM SYS_OUT
+    MOV #WARM,R9
+    ADD #4,R9
+    MOV R9,R0
+ENDASM
+
 CODE STOP
-BW1 MOV #SLEEP,R9
+BW1 MOV #$4000,R9
     ADD #4,R9
     MOV R9,-2(R9)
+    MOV #WARM,R9
+    MOV #SYS_OUT,2(R9)
+    BIC.B #4,&$20A
+    BIC.B #4,&$20C
+    MOV #0,&$3C0
+    MOV #0,&$340
+    MOV #0,&$342
+    CALL #$400E
 COLON
-['] WARM >BODY IS WARM
 ECHO
-." RC5toLCD is removed. type START to restart"
-COLD
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM
 ;
 
-CODE APP_INIT
-MOV #%1011010100,&$3C0
+CODE SYS_INIT
+MOV #%10_1101_0100,&$3C0
 $1806 @ 16000 = [IF]
     MOV #1,&$3E0
 [THEN]
@@ -15715,7 +25861,7 @@ $1806 @ 24000 = [IF]
     MOV #2,&$3E0
 [THEN]
     MOV #19,&$3D2
-    MOV #%01100000,&$3C6
+MOV #%0110_0000,&$3C6
     MOV #10,&$3D6
     BIS.B #$20,&$204
     BIS.B #$20,&$20A
@@ -15726,7 +25872,7 @@ $1806 @ 24000 = [IF]
     BIS.B #4,&$20A
     BIC.B #4,&$20C
     MOV #RC5_INT,&$FFDE
-    MOV #%0100010100,&$340
+MOV #%01_0001_0100,&$340
     MOV ##3276,&$352
     MOV #%10000,&$342
     MOV #WDT_INT,&$FFEA
@@ -15757,21 +25903,150 @@ COLON
     ['] CR >BODY IS CR
     ['] EMIT >BODY IS EMIT
     ." RC5toLCD is running. Type STOP to quit"
-    ABORT
+    PWR_STATE ABORT
 ;
 
 CODE START
-MOV #SLEEP,R9
+MOV #$4000,R9
 MOV #BACKGROUND,2(R9)
 MOV #WARM,R9
-MOV #APP_INIT,2(R9)
+MOV #SYS_INIT,2(R9)
 MOV R9,R0
 ENDCODE 
 
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
+
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
 
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+CODE @
+MOV @R14,R14
+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]
+$1DBE CONSTANT STATE
+[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] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(R10)
+MOV #$402C,-2(R10)
+MOV @R1+,R13
+MOV @R13+,R0
+ENDCODE
+[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 20_US
 BEGIN
     BEGIN
@@ -15917,19 +26192,33 @@ BEGIN
 AGAIN
 ENDASM
 
+ASM SYS_OUT
+    MOV #WARM,R9
+    ADD #4,R9
+    MOV R9,R0
+ENDASM
+
 CODE STOP
-BW1 MOV #SLEEP,R9
+BW1 MOV #$4000,R9
     ADD #4,R9
     MOV R9,-2(R9)
+    MOV #WARM,R9
+    MOV #SYS_OUT,2(R9)
+    BIC.B #4,&$20A
+    BIC.B #4,&$20C
+    MOV #0,&$3C0
+    MOV #0,&$340
+    MOV #0,&$342
+    CALL #$400E
 COLON
-['] WARM >BODY IS WARM
 ECHO
-." RC5toLCD is removed. type START to restart"
-COLD
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM
 ;
 
-CODE APP_INIT
-MOV #%1011010100,&$3C0
+CODE SYS_INIT
+MOV #%10_1101_0100,&$3C0
 $1806 @ 16000 = [IF]
     MOV #1,&$3E0
 [THEN]
@@ -15937,7 +26226,7 @@ $1806 @ 24000 = [IF]
     MOV #2,&$3E0
 [THEN]
     MOV #19,&$3D2
-    MOV #%01100000,&$3C6
+MOV #%0110_0000,&$3C6
     MOV #10,&$3D6
     BIS.B #$20,&$204
     BIS.B #$20,&$20A
@@ -15948,7 +26237,7 @@ $1806 @ 24000 = [IF]
     BIS.B #4,&$20A
     BIC.B #4,&$20C
     MOV #RC5_INT,&$FFDE
-    MOV #%0100010100,&$340
+MOV #%01_0001_0100,&$340
     MOV ##3276,&$352
     MOV #%10000,&$342
     MOV #WDT_INT,&$FFEA
@@ -15979,21 +26268,150 @@ COLON
     ['] CR >BODY IS CR
     ['] EMIT >BODY IS EMIT
     ." RC5toLCD is running. Type STOP to quit"
-    ABORT
+    PWR_STATE ABORT
 ;
 
 CODE START
-MOV #SLEEP,R9
+MOV #$4000,R9
 MOV #BACKGROUND,2(R9)
 MOV #WARM,R9
-MOV #APP_INIT,2(R9)
+MOV #SYS_INIT,2(R9)
 MOV R9,R0
 ENDCODE 
 
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
+
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
 
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+CODE @
+MOV @R14,R14
+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]
+$1DBE CONSTANT STATE
+[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] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(R10)
+MOV #$402C,-2(R10)
+MOV @R1+,R13
+MOV @R13+,R0
+ENDCODE
+[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 20_US
 BEGIN
     BEGIN
@@ -16139,19 +26557,33 @@ BEGIN
 AGAIN
 ENDASM
 
+ASM SYS_OUT
+    MOV #WARM,R9
+    ADD #4,R9
+    MOV R9,R0
+ENDASM
+
 CODE STOP
-BW1 MOV #SLEEP,R9
+BW1 MOV #$4000,R9
     ADD #4,R9
     MOV R9,-2(R9)
+    MOV #WARM,R9
+    MOV #SYS_OUT,2(R9)
+    BIC.B #4,&$20A
+    BIC.B #4,&$20C
+    MOV #0,&$3C0
+    MOV #0,&$340
+    MOV #0,&$342
+    CALL #$400E
 COLON
-['] WARM >BODY IS WARM
 ECHO
-." RC5toLCD is removed. type START to restart"
-COLD
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM
 ;
 
-CODE APP_INIT
-MOV #%1011010100,&$3C0
+CODE SYS_INIT
+MOV #%10_1101_0100,&$3C0
 $1806 @ 16000 = [IF]
     MOV #1,&$3E0
 [THEN]
@@ -16159,7 +26591,7 @@ $1806 @ 24000 = [IF]
     MOV #2,&$3E0
 [THEN]
     MOV #19,&$3D2
-    MOV #%01100000,&$3C6
+MOV #%0110_0000,&$3C6
     MOV #10,&$3D6
     BIS.B #$20,&$204
     BIS.B #$20,&$20A
@@ -16170,7 +26602,7 @@ $1806 @ 24000 = [IF]
     BIS.B #4,&$20A
     BIC.B #4,&$20C
     MOV #RC5_INT,&$FFDE
-    MOV #%0100010100,&$340
+MOV #%01_0001_0100,&$340
     MOV ##3276,&$352
     MOV #%10000,&$342
     MOV #WDT_INT,&$FFEA
@@ -16201,21 +26633,150 @@ COLON
     ['] CR >BODY IS CR
     ['] EMIT >BODY IS EMIT
     ." RC5toLCD is running. Type STOP to quit"
-    ABORT
+    PWR_STATE ABORT
 ;
 
 CODE START
-MOV #SLEEP,R9
+MOV #$4000,R9
 MOV #BACKGROUND,2(R9)
 MOV #WARM,R9
-MOV #APP_INIT,2(R9)
+MOV #SYS_INIT,2(R9)
 MOV R9,R0
 ENDCODE 
 
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
+
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
 
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+CODE @
+MOV @R14,R14
+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]
+$1DBE CONSTANT STATE
+[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] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(R10)
+MOV #$402C,-2(R10)
+MOV @R1+,R13
+MOV @R13+,R0
+ENDCODE
+[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 20_US
 BEGIN
     BEGIN
@@ -16361,19 +26922,33 @@ BEGIN
 AGAIN
 ENDASM
 
+ASM SYS_OUT
+    MOV #WARM,R9
+    ADD #4,R9
+    MOV R9,R0
+ENDASM
+
 CODE STOP
-BW1 MOV #SLEEP,R9
+BW1 MOV #$4000,R9
     ADD #4,R9
     MOV R9,-2(R9)
+    MOV #WARM,R9
+    MOV #SYS_OUT,2(R9)
+    BIC.B #4,&$20A
+    BIC.B #4,&$20C
+    MOV #0,&$3C0
+    MOV #0,&$340
+    MOV #0,&$342
+    CALL #$400E
 COLON
-['] WARM >BODY IS WARM
 ECHO
-." RC5toLCD is removed. type START to restart"
-COLD
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM
 ;
 
-CODE APP_INIT
-MOV #%1011010100,&$3C0
+CODE SYS_INIT
+MOV #%10_1101_0100,&$3C0
 $1806 @ 16000 = [IF]
     MOV #1,&$3E0
 [THEN]
@@ -16381,7 +26956,7 @@ $1806 @ 24000 = [IF]
     MOV #2,&$3E0
 [THEN]
     MOV #19,&$3D2
-    MOV #%01100000,&$3C6
+MOV #%0110_0000,&$3C6
     MOV #10,&$3D6
     BIS.B #$20,&$204
     BIS.B #$20,&$20A
@@ -16392,7 +26967,7 @@ $1806 @ 24000 = [IF]
     BIS.B #4,&$20A
     BIC.B #4,&$20C
     MOV #RC5_INT,&$FFDE
-    MOV #%0100010100,&$340
+MOV #%01_0001_0100,&$340
     MOV ##3276,&$352
     MOV #%10000,&$342
     MOV #WDT_INT,&$FFEA
@@ -16423,21 +26998,150 @@ COLON
     ['] CR >BODY IS CR
     ['] EMIT >BODY IS EMIT
     ." RC5toLCD is running. Type STOP to quit"
-    ABORT
+    PWR_STATE ABORT
 ;
 
 CODE START
-MOV #SLEEP,R9
+MOV #$4000,R9
 MOV #BACKGROUND,2(R9)
 MOV #WARM,R9
-MOV #APP_INIT,2(R9)
+MOV #SYS_INIT,2(R9)
 MOV R9,R0
 ENDCODE 
 
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
+
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
 
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+CODE @
+MOV @R14,R14
+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]
+$1DBE CONSTANT STATE
+[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] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(R10)
+MOV #$402C,-2(R10)
+MOV @R1+,R13
+MOV @R13+,R0
+ENDCODE
+[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 20_US
 BEGIN
     BEGIN
@@ -16583,19 +27287,33 @@ BEGIN
 AGAIN
 ENDASM
 
+ASM SYS_OUT
+    MOV #WARM,R9
+    ADD #4,R9
+    MOV R9,R0
+ENDASM
+
 CODE STOP
-BW1 MOV #SLEEP,R9
+BW1 MOV #$4000,R9
     ADD #4,R9
     MOV R9,-2(R9)
+    MOV #WARM,R9
+    MOV #SYS_OUT,2(R9)
+    BIC.B #4,&$20A
+    BIC.B #4,&$20C
+    MOV #0,&$3C0
+    MOV #0,&$340
+    MOV #0,&$342
+    CALL #$400E
 COLON
-['] WARM >BODY IS WARM
 ECHO
-." RC5toLCD is removed. type START to restart"
-COLD
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM
 ;
 
-CODE APP_INIT
-MOV #%1011010100,&$3C0
+CODE SYS_INIT
+MOV #%10_1101_0100,&$3C0
 $1806 @ 16000 = [IF]
     MOV #1,&$3E0
 [THEN]
@@ -16603,7 +27321,7 @@ $1806 @ 24000 = [IF]
     MOV #2,&$3E0
 [THEN]
     MOV #19,&$3D2
-    MOV #%01100000,&$3C6
+MOV #%0110_0000,&$3C6
     MOV #10,&$3D6
     BIS.B #$20,&$204
     BIS.B #$20,&$20A
@@ -16614,7 +27332,7 @@ $1806 @ 24000 = [IF]
     BIS.B #4,&$20A
     BIC.B #4,&$20C
     MOV #RC5_INT,&$FFDE
-    MOV #%0100010100,&$340
+MOV #%01_0001_0100,&$340
     MOV ##3276,&$352
     MOV #%10000,&$342
     MOV #WDT_INT,&$FFEA
@@ -16645,21 +27363,150 @@ COLON
     ['] CR >BODY IS CR
     ['] EMIT >BODY IS EMIT
     ." RC5toLCD is running. Type STOP to quit"
-    ABORT
+    PWR_STATE ABORT
 ;
 
 CODE START
-MOV #SLEEP,R9
+MOV #$4000,R9
 MOV #BACKGROUND,2(R9)
 MOV #WARM,R9
-MOV #APP_INIT,2(R9)
+MOV #SYS_INIT,2(R9)
 MOV R9,R0
 ENDCODE 
 
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
+
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
 
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+CODE @
+MOV @R14,R14
+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]
+$1DBE CONSTANT STATE
+[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] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(R10)
+MOV #$402C,-2(R10)
+MOV @R1+,R13
+MOV @R13+,R0
+ENDCODE
+[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 20_US
 BEGIN
     BEGIN
@@ -16805,19 +27652,33 @@ BEGIN
 AGAIN
 ENDASM
 
+ASM SYS_OUT
+    MOV #WARM,R9
+    ADD #4,R9
+    MOV R9,R0
+ENDASM
+
 CODE STOP
-BW1 MOV #SLEEP,R9
+BW1 MOV #$4000,R9
     ADD #4,R9
     MOV R9,-2(R9)
+    MOV #WARM,R9
+    MOV #SYS_OUT,2(R9)
+    BIC.B #4,&$20A
+    BIC.B #4,&$20C
+    MOV #0,&$3C0
+    MOV #0,&$340
+    MOV #0,&$342
+    CALL #$400E
 COLON
-['] WARM >BODY IS WARM
 ECHO
-." RC5toLCD is removed. type START to restart"
-COLD
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM
 ;
 
-CODE APP_INIT
-MOV #%1011010100,&$3C0
+CODE SYS_INIT
+MOV #%10_1101_0100,&$3C0
 $1806 @ 16000 = [IF]
     MOV #1,&$3E0
 [THEN]
@@ -16825,7 +27686,7 @@ $1806 @ 24000 = [IF]
     MOV #2,&$3E0
 [THEN]
     MOV #19,&$3D2
-    MOV #%01100000,&$3C6
+MOV #%0110_0000,&$3C6
     MOV #10,&$3D6
     BIS.B #$20,&$204
     BIS.B #$20,&$20A
@@ -16836,7 +27697,7 @@ $1806 @ 24000 = [IF]
     BIS.B #4,&$20A
     BIC.B #4,&$20C
     MOV #RC5_INT,&$FFDE
-    MOV #%0100010100,&$340
+MOV #%01_0001_0100,&$340
     MOV ##3276,&$352
     MOV #%10000,&$342
     MOV #WDT_INT,&$FFEA
@@ -16867,21 +27728,150 @@ COLON
     ['] CR >BODY IS CR
     ['] EMIT >BODY IS EMIT
     ." RC5toLCD is running. Type STOP to quit"
-    ABORT
+    PWR_STATE ABORT
 ;
 
 CODE START
-MOV #SLEEP,R9
+MOV #$4000,R9
 MOV #BACKGROUND,2(R9)
 MOV #WARM,R9
-MOV #APP_INIT,2(R9)
+MOV #SYS_INIT,2(R9)
 MOV R9,R0
 ENDCODE 
 
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
+
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
 
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+CODE @
+MOV @R14,R14
+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]
+$1DBE CONSTANT STATE
+[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] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(R10)
+MOV #$402C,-2(R10)
+MOV @R1+,R13
+MOV @R13+,R0
+ENDCODE
+[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 20_US
 BEGIN
     BEGIN
@@ -17027,19 +28017,33 @@ BEGIN
 AGAIN
 ENDASM
 
+ASM SYS_OUT
+    MOV #WARM,R9
+    ADD #4,R9
+    MOV R9,R0
+ENDASM
+
 CODE STOP
-BW1 MOV #SLEEP,R9
+BW1 MOV #$4000,R9
     ADD #4,R9
     MOV R9,-2(R9)
+    MOV #WARM,R9
+    MOV #SYS_OUT,2(R9)
+    BIC.B #4,&$20A
+    BIC.B #4,&$20C
+    MOV #0,&$3C0
+    MOV #0,&$340
+    MOV #0,&$342
+    CALL #$400E
 COLON
-['] WARM >BODY IS WARM
 ECHO
-." RC5toLCD is removed. type START to restart"
-COLD
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM
 ;
 
-CODE APP_INIT
-MOV #%1011010100,&$3C0
+CODE SYS_INIT
+MOV #%10_1101_0100,&$3C0
 $1806 @ 16000 = [IF]
     MOV #1,&$3E0
 [THEN]
@@ -17047,7 +28051,7 @@ $1806 @ 24000 = [IF]
     MOV #2,&$3E0
 [THEN]
     MOV #19,&$3D2
-    MOV #%01100000,&$3C6
+MOV #%0110_0000,&$3C6
     MOV #10,&$3D6
     BIS.B #$20,&$204
     BIS.B #$20,&$20A
@@ -17058,7 +28062,7 @@ $1806 @ 24000 = [IF]
     BIS.B #4,&$20A
     BIC.B #4,&$20C
     MOV #RC5_INT,&$FFDE
-    MOV #%0100010100,&$340
+MOV #%01_0001_0100,&$340
     MOV ##3276,&$352
     MOV #%10000,&$342
     MOV #WDT_INT,&$FFEA
@@ -17089,19 +28093,17 @@ COLON
     ['] CR >BODY IS CR
     ['] EMIT >BODY IS EMIT
     ." RC5toLCD is running. Type STOP to quit"
-    ABORT
+    PWR_STATE ABORT
 ;
 
 CODE START
-MOV #SLEEP,R9
+MOV #$4000,R9
 MOV #BACKGROUND,2(R9)
 MOV #WARM,R9
-MOV #APP_INIT,2(R9)
+MOV #SYS_INIT,2(R9)
 MOV R9,R0
 ENDCODE 
 
-
-
 ECHO
             ; downloading RC5toLCD.4th is done
 RST_HERE    ; this app is protected against <reset>
index 9bcf374..ec6e109 100644 (file)
 ; RC5TOLCD.4th
 ; -----------------------------------
 
-RST_STATE
 
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]
 
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+CODE @
+MOV @R14,R14
+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]
+$1DBE CONSTANT STATE
+[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] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(R10)
+MOV #$402C,-2(R10)
+MOV @R1+,R13
+MOV @R13+,R0
+ENDCODE
+[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 20_US
 BEGIN
     BEGIN
@@ -154,19 +275,33 @@ BEGIN
 AGAIN
 ENDASM
 
+ASM SYS_OUT
+    MOV #WARM,R9
+    ADD #4,R9
+    MOV R9,R0
+ENDASM
+
 CODE STOP
-BW1 MOV #SLEEP,R9
+BW1 MOV #$4000,R9
     ADD #4,R9
     MOV R9,-2(R9)
+    MOV #WARM,R9
+    MOV #SYS_OUT,2(R9)
+    BIC.B #4,&$20A
+    BIC.B #4,&$20C
+    MOV #0,&$3C0
+    MOV #0,&$340
+    MOV #0,&$342
+    CALL #$400E
 COLON
-['] WARM >BODY IS WARM
 ECHO
-." RC5toLCD is removed. type START to restart"
-COLD
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM
 ;
 
-CODE APP_INIT
-MOV #%1011010100,&$3C0
+CODE SYS_INIT
+MOV #%10_1101_0100,&$3C0
 $1806 @ 16000 = [IF]
     MOV #1,&$3E0
 [THEN]
@@ -174,7 +309,7 @@ $1806 @ 24000 = [IF]
     MOV #2,&$3E0
 [THEN]
     MOV #19,&$3D2
-    MOV #%01100000,&$3C6
+MOV #%0110_0000,&$3C6
     MOV #10,&$3D6
     BIS.B #$20,&$204
     BIS.B #$20,&$20A
@@ -185,7 +320,7 @@ $1806 @ 24000 = [IF]
     BIS.B #4,&$20A
     BIC.B #4,&$20C
     MOV #RC5_INT,&$FFDE
-    MOV #%0100010100,&$340
+MOV #%01_0001_0100,&$340
     MOV ##3276,&$352
     MOV #%10000,&$342
     MOV #WDT_INT,&$FFEA
@@ -216,14 +351,14 @@ COLON
     ['] CR >BODY IS CR
     ['] EMIT >BODY IS EMIT
     ." RC5toLCD is running. Type STOP to quit"
-    ABORT
+    PWR_STATE ABORT
 ;
 
 CODE START
-MOV #SLEEP,R9
+MOV #$4000,R9
 MOV #BACKGROUND,2(R9)
 MOV #WARM,R9
-MOV #APP_INIT,2(R9)
+MOV #SYS_INIT,2(R9)
 MOV R9,R0
 ENDCODE 
 
@@ -231,3 +366,4 @@ ECHO
             ; downloading RC5toLCD.4th is done
 RST_HERE    ; this app is protected against <reset>
 
+START
index 0d9145b..b3bb3c9 100644 (file)
 
 PWR_STATE
 
-[UNDEFINED] {RTC} [IF]
+[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]
+CODE =
+SUB @R15+,R14
+0<> IF
+    AND #0,R14
+    MOV @R13+,R0
+THEN
+XOR #-1,R14
+MOV @R13+,R0
+ENDCODE
+[THEN]
+
+[UNDEFINED] AND [IF]
+CODE AND
+AND @R15+,R14
+MOV @R13+,R0
+ENDCODE
+[THEN]
+
+[UNDEFINED] @ [IF]
+CODE @
+MOV @R14,R14
+MOV @R13+,R0
+ENDCODE
+[THEN]
+
+: RTCNOTFOUND
+ECHO
+1 ABORT" no RTC found!"
+;
+
+$1A04 @ $831D SWAP U< [IF] RTCNOTFOUND [THEN]
+$1A04 @ $823C OVER U<
+           $8241 U< AND [IF] RTCNOTFOUND [THEN]
+$1A04 @ $81F0 OVER U< 
+           $81F3 U< AND [IF] RTCNOTFOUND [THEN]
+
+[DEFINED] {RTC} [IF]  {RTC} [THEN]
+
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
 
 MARKER {RTC}
 
+[UNDEFINED] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DO [IF]
+CODE DO
+SUB #2,R15
+MOV R14,0(R15)
+ADD #2,&$1DC6
+MOV &$1DC6,R14
+MOV #$4056,-2(R14)
+ADD #2,&$1C00
+MOV &$1C00,R10
+MOV #0,0(R10)
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] LOOP [IF]
+CODE LOOP
+    MOV #$4078,R9
+BW1 ADD #4,&$1DC6
+    MOV &$1DC6,R10
+    MOV R9,-4(R10)
+    MOV R14,-2(R10)
+BEGIN
+    MOV &$1C00,R14
+    SUB #2,&$1C00
+    MOV @R14,R14
+    CMP #0,R14
+0<> WHILE
+    MOV R10,0(R14)
+REPEAT
+    MOV @R15+,R14
+    MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] - [IF]
+CODE -
+SUB @R15+,R14
+XOR #-1,R14
+ADD #1,R14
+MOV @R13+,R0
+ENDCODE
+[THEN]
+
 [UNDEFINED] MAX [IF]
 
 CODE MAX
@@ -27,22 +159,6 @@ ENDCODE
 
 [THEN]
 
-[UNDEFINED] CONSTANT [IF]
-: CONSTANT 
-DEFER
-HI2LO
-MOV @R1+,R13
-MOV #$1285,-4(R10)
-MOV R14,-2(R10)
-MOV @R15+,R14
-MOV @R13+,R0
-ENDCODE
-[THEN]
-
-[UNDEFINED] BL [IF]
-#32 CONSTANT BL
-[THEN]
-
 [UNDEFINED] SPACES [IF]
 CODE SPACES
 CMP #0,R14
@@ -50,7 +166,7 @@ CMP #0,R14
     PUSH R13
     BEGIN
         LO2HI
-        BL EMIT
+        $20 EMIT
         HI2LO
         SUB #2,R13 
         SUB #1,R14
@@ -71,6 +187,57 @@ MOV @R13+,R0
 ENDCODE
 [THEN]
 
+[UNDEFINED] DUP [IF]
+CODE DUP
+BW1 SUB #2,R15
+    MOV R14,0(R15)
+    MOV @R13+,R0
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEPTH [IF]
+CODE DEPTH
+MOV R14,-2(R15)
+MOV #$1C80,R14
+SUB R15,R14
+RRA R14
+SUB #2,R15
+MOV @R13+,R0
+ENDCODE
+[THEN]
+
+[UNDEFINED] >R [IF]
+CODE >R
+PUSH R14
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE
+[THEN]
+
+[UNDEFINED] R> [IF]
+CODE R>
+SUB #2,R15
+MOV R14,0(R15)
+MOV @R1+,R14
+MOV @R13+,R0
+ENDCODE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+CODE >BODY
+ADD #4,R14
+MOV @R13+,R0
+ENDCODE
+[THEN]
+
+[UNDEFINED] EXECUTE [IF]
+CODE EXECUTE
+MOV R14,R10
+MOV @R15+,R14
+MOV R10,R0
+ENDCODE
+[THEN]
+
 [UNDEFINED] U.R [IF]
 : U.R
   >R  <# 0 # #S #>  
@@ -135,16 +302,12 @@ THEN
     ." it is " TIME? 
 ;
 
-RST_HERE
+PWR_HERE
 
+[UNDEFINED] ESC" [IF]
+: ESC" $1B POSTPONE LITERAL POSTPONE EMIT POSTPONE S" POSTPONE TYPE ; IMMEDIATE
 [THEN]
 
-: ESC #27 EMIT ;
-
-: [ISDEFERRED?]
-    DUP @ $4030 =
-; IMMEDIATE
-
 CREATE ABUF 20 ALLOT
 
 : GET_TIME
@@ -152,21 +315,17 @@ PWR_STATE
 42
 0 DO CR LOOP
 
-ESC ." [1J"
-ESC ." [H"
+ESC" [1J"
+ESC" [H"
 
 CR ." DATE (DMY): "
-ABUF DUP 20 
-    ['] ACCEPT [ISDEFERRED?] 
-    [IF] >BODY
-    [THEN] EXECUTE
-EVALUATE CR DATE!
+ABUF
+DUP 20 ['] ACCEPT >BODY EXECUTE
+    EVALUATE CR DATE!
 CR CR ." TIME (HMS): "
-ABUF DUP 20 
-    ['] ACCEPT [ISDEFERRED?] 
-    [IF] >BODY
-    [THEN] EXECUTE
-EVALUATE CR TIME!
+ABUF
+DUP 20 ['] ACCEPT >BODY EXECUTE
+    EVALUATE CR TIME!
 CR
 ;
 
index 63c8b99..8aab301 100644 (file)
 
 PWR_STATE
 
-[UNDEFINED] {SD_TEST} [IF]
+[DEFINED] {SD_TEST} [IF]  {SD_TEST} [THEN]
+
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
 
 MARKER {SD_TEST}
 
-[UNDEFINED] PLUS [IF]
+[UNDEFINED] EXIT [IF]
+CODE EXIT
+MOV @R1+,R13
+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] >BODY [IF]
+CODE >BODY
+ADD #4,R14
+MOV @R13+,R0
+ENDCODE
+[THEN]
+
+[UNDEFINED] 0= [IF]
+CODE 0=
+SUB #1,R14
+SUBC R14,R14
+MOV @R13+,R0
+ENDCODE
+[THEN]
+
+[UNDEFINED] IF [IF]
+CODE IF
+SUB #2,R15
+MOV R14,0(R15)
+MOV &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+CODE ELSE
+ADD #4,&$1DC6
+MOV &$1DC6,R10
+MOV #$4048,-4(R10)
+MOV R10,0(R14)
+SUB #2,R10
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] UNTIL [IF]
+CODE UNTIL
+    MOV #$404C,R9
+BW1 ADD #4,&$1DC6
+    MOV &$1DC6,R10
+    MOV R9,-4(R10)
+    MOV R14,-2(R10)
+    MOV @R15+,R14
+    MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] WHILE [IF]
+: WHILE
+POSTPONE IF SWAP
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] AGAIN [IF]
+CODE AGAIN
+MOV #$4048,R9
+GOTO BW1
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] REPEAT [IF]
+: REPEAT
+POSTPONE AGAIN POSTPONE THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] DO [IF]
+CODE DO
+SUB #2,R15
+MOV R14,0(R15)
+ADD #2,&$1DC6
+MOV &$1DC6,R14
+MOV #$4056,-2(R14)
+ADD #2,&$1C00
+MOV &$1C00,R10
+MOV #0,0(R10)
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] LOOP [IF]
+CODE LOOP
+    MOV #$4078,R9
+BW1 ADD #4,&$1DC6
+    MOV &$1DC6,R10
+    MOV R9,-4(R10)
+    MOV R14,-2(R10)
+BEGIN
+    MOV &$1C00,R14
+    SUB #2,&$1C00
+    MOV @R14,R14
+    CMP #0,R14
+0<> WHILE
+    MOV R10,0(R14)
+REPEAT
+    MOV @R15+,R14
+    MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] +LOOP [IF]
+CODE +LOOP
+MOV #$4066,R9
+GOTO BW1
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] I [IF]
+CODE I
+SUB #2,R15
+MOV R14,0(R15)
+MOV @R1,R14
+SUB 2(R1),R14
+MOV @R13+,R0
+ENDCODE
+[THEN]
+
+[UNDEFINED] + [IF]
 CODE +
 ADD @R15+,R14
 MOV @R13+,R0
@@ -32,6 +197,13 @@ FW1     MOV @R15+,R14
     ENDCODE
 [THEN]
 
+[UNDEFINED] @ [IF]
+CODE @
+MOV @R14,R14
+MOV @R13+,R0
+ENDCODE
+[THEN]
+
 [UNDEFINED] C@ [IF]
 CODE C@
 MOV.B @R14,R14
@@ -39,6 +211,14 @@ MOV @R13+,R0
 ENDCODE
 [THEN]
 
+[UNDEFINED] ! [IF]
+CODE !
+MOV @R15+,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE
+[THEN]
+
 [UNDEFINED] SPACE [IF]
 : SPACE
 $20 EMIT ;
@@ -63,6 +243,20 @@ 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] OVER [IF]
 CODE OVER
 MOV R14,-2(R15)
@@ -72,6 +266,76 @@ MOV @R13+,R0
 ENDCODE
 [THEN]
 
+[UNDEFINED] >R [IF]
+CODE >R
+PUSH R14
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE
+[THEN]
+
+[UNDEFINED] R> [IF]
+CODE R>
+SUB #2,R15
+MOV R14,0(R15)
+MOV @R1+,R14
+MOV @R13+,R0
+ENDCODE
+[THEN]
+
+[UNDEFINED] - [IF]
+CODE -
+SUB @R15+,R14
+XOR #-1,R14
+ADD #1,R14
+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]
+$1DBE CONSTANT STATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(R10)
+MOV #$402C,-2(R10)
+MOV @R1+,R13
+MOV @R13+,R0
+ENDCODE
+[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] U.R [IF]
 : U.R
 >R  <# 0 # #S #>  
@@ -102,6 +366,12 @@ LO2HI
 ;
 [THEN]
 
+[UNDEFINED] HERE [IF]
+CODE HERE
+MOV #BEGIN,R0
+ENDCODE
+[THEN]
+
 
 CODE SD_EMIT
 CMP #512,&$201E
@@ -122,7 +392,7 @@ CR
 ." 0 Set date and time" CR
 ." 1 Load {TOOLS} words" CR
 ." 2 Load {SD_TOOLS} words" CR
-." 3 Load {ANS_COMP} words" CR
+." 3 Load {CORE_COMP} words" CR
 ." 4 Load ANS core tests" CR
 ." 5 Load a 100k program " CR
 ." 6 Read only this source file" CR
@@ -145,8 +415,8 @@ ELSE 1 - ?DUP
             LOAD" SD_TOOLS.4TH"
         ELSE 1 - ?DUP
             0= IF
-                ." LOAD ANS_COMP.4TH" CR
-                LOAD" ANS_COMP.4TH"
+                ." LOAD CORECOMP.4TH" CR
+                LOAD" CORECOMP.4TH"
             ELSE 1 - ?DUP
                 0= IF
                     ." LOAD CORETEST.4TH" CR
index eb44ae8..c2e5a22 100644 (file)
@@ -3,10 +3,31 @@
 ; SD_TOOLS.4th : BASIC TOOLS for SD Card : DIR FAT SECTOR CLUSTER
 ; ---------------------------------------------------------------
 
+[DEFINED] {SD_TOOLS} [IF]  {SD_TOOLS} [THEN]
+
 [UNDEFINED] {SD_TOOLS} [IF]
 
 PWR_STATE
 
+[UNDEFINED] MARKER [IF]
+: MARKER
+CREATE
+HI2LO
+MOV &$1DC8,0(R10)
+SUB #2,R8
+MOV R8,2(R10)
+ADD #4,&$1DC6
+LO2HI
+DOES>
+HI2LO
+MOV @R1+,R13
+MOV @R14+,&$180E
+MOV @R14,&$180C
+MOV @R15+,R14
+MOV #RST_STATE,R0
+ENDCODE
+[THEN]
+
 MARKER {SD_TOOLS}
 
 [UNDEFINED] + [IF]
@@ -41,6 +62,14 @@ MOV @R13+,R0
 ENDCODE
 [THEN]
 
+[UNDEFINED] ! [IF]
+CODE !
+MOV @R15+,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE
+[THEN]
+
 [UNDEFINED] SPACE [IF]
 : SPACE
 $20 EMIT ;
@@ -65,6 +94,15 @@ 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] OVER [IF]
 CODE OVER
 MOV R14,-2(R15)
@@ -74,6 +112,29 @@ MOV @R13+,R0
 ENDCODE
 [THEN]
 
+[UNDEFINED] >R [IF]
+CODE >R
+PUSH R14
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE
+[THEN]
+
+[UNDEFINED] R> [IF]
+CODE R>
+MOV R6,R0
+ENDCODE
+[THEN]
+
+[UNDEFINED] - [IF]
+CODE -
+SUB @R15+,R14
+XOR #-1,R14
+ADD #1,R14
+MOV @R13+,R0
+ENDCODE
+[THEN]
+
 [UNDEFINED] U.R [IF]
 : U.R
   >R  <# 0 # #S #>  
@@ -81,6 +142,57 @@ ENDCODE
 ;
 [THEN]
 
+[UNDEFINED] DO [IF]
+CODE DO
+SUB #2,R15
+MOV R14,0(R15)
+ADD #2,&$1DC6
+MOV &$1DC6,R14
+MOV #$4056,-2(R14)
+ADD #2,&$1C00
+MOV &$1C00,R10
+MOV #0,0(R10)
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] LOOP [IF]
+CODE LOOP
+    MOV #$4078,R9
+BW1 ADD #4,&$1DC6
+    MOV &$1DC6,R10
+    MOV R9,-4(R10)
+    MOV R14,-2(R10)
+BEGIN
+    MOV &$1C00,R14
+    SUB #2,&$1C00
+    MOV @R14,R14
+    CMP #0,R14
+0<> WHILE
+    MOV R10,0(R14)
+REPEAT
+    MOV @R15+,R14
+    MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] +LOOP [IF]
+CODE +LOOP
+MOV #$4066,R9
+GOTO BW1
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] I [IF]
+CODE I
+SUB #2,R15
+MOV R14,0(R15)
+MOV @R1,R14
+SUB 2(R1),R14
+MOV @R13+,R0
+ENDCODE
+[THEN]
+
 [UNDEFINED] DUMP [IF]
 CODE DUMP
 PUSH R13
@@ -153,3 +265,4 @@ RST_HERE
 
 [THEN]
 ECHO
+
index dbf5c4c..f2febf8 100644 (file)
@@ -7,13 +7,22 @@ ECHO
 
 PWR_STATE
 
-[UNDEFINED] PLUS [IF]
+[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
@@ -32,6 +41,14 @@ 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
@@ -41,12 +58,11 @@ ENDCODE
 
 [UNDEFINED] CONSTANT [IF]
 : CONSTANT 
-DEFER
+CREATE
 HI2LO
-MOV @R1+,R13
-MOV #$1285,-4(R10)
 MOV R14,-2(R10)
 MOV @R15+,R14
+MOV @R1+,R13
 MOV @R13+,R0
 ENDCODE
 [THEN]
@@ -88,6 +104,44 @@ 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] >R [IF]
+CODE >R
+PUSH R14
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE
+[THEN]
+
+[UNDEFINED] R> [IF]
+CODE R>
+MOV R6,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] U.R [IF]
 : U.R
   >R  <# 0 # #S #>  
@@ -95,6 +149,57 @@ ENDCODE
 ;
 [THEN]
 
+[UNDEFINED] DO [IF]
+CODE DO
+SUB #2,R15
+MOV R14,0(R15)
+ADD #2,&$1DC6
+MOV &$1DC6,R14
+MOV #$4056,-2(R14)
+ADD #2,&$1C00
+MOV &$1C00,R10
+MOV #0,0(R10)
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] LOOP [IF]
+CODE LOOP
+    MOV #$4078,R9
+BW1 ADD #4,&$1DC6
+    MOV &$1DC6,R10
+    MOV R9,-4(R10)
+    MOV R14,-2(R10)
+BEGIN
+    MOV &$1C00,R14
+    SUB #2,&$1C00
+    MOV @R14,R14
+    CMP #0,R14
+0<> WHILE
+    MOV R10,0(R14)
+REPEAT
+    MOV @R15+,R14
+    MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] +LOOP [IF]
+CODE +LOOP
+MOV #$4066,R9
+GOTO BW1
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] I [IF]
+CODE I
+SUB #2,R15
+MOV R14,0(R15)
+MOV @R1,R14
+SUB 2(R1),R14
+MOV @R13+,R0
+ENDCODE
+[THEN]
+
 [UNDEFINED] DUMP [IF]
 CODE DUMP
 PUSH R13
index ecdd66f..fa3421b 100644 (file)
 ; ------------------------------------------------------------------------------
 
 
+PWR_STATE
+
+[DEFINED] {TOOLS} [IF]  {TOOLS} [THEN]
+
 [UNDEFINED] {TOOLS} [IF]
 
-PWR_STATE
+[UNDEFINED] MARKER [IF]
+
+: MARKER
+CREATE
+$1DBA @ >BODY >R
+$1DC8 @ R@ !
+$1DB6 @ 2 - R> 2 + !
+DOES>
+DUP @ $180E !
+2 + @ $180C !
+RST_STATE
+;
+[THEN]
 
 MARKER {TOOLS} 
 
-[UNDEFINED] ? [IF]
-CODE ?          
+PWR_HERE
+
+[UNDEFINED] EXIT [IF]
+CODE EXIT
+MOV @R1+,R13
+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] 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 &$1DC6,R14
+ADD #4,&$1DC6
+MOV #$404C,0(R14)
+ADD #2,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+CODE THEN
+MOV &$1DC6,0(R14)
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] BEGIN [IF]
+CODE BEGIN
+MOV #HERE,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] UNTIL [IF]
+CODE UNTIL
+    MOV #$404C,R9
+BW1 ADD #4,&$1DC6
+    MOV &$1DC6,R10
+    MOV R9,-4(R10)
+    MOV R14,-2(R10)
+    MOV @R15+,R14
+    MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] AGAIN [IF]
+CODE AGAIN
+MOV #$4048,R9
+GOTO BW1
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] WHILE [IF]
+: WHILE
+POSTPONE IF SWAP
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] REPEAT [IF]
+: REPEAT
+POSTPONE AGAIN POSTPONE THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] DO [IF]
+CODE DO
+SUB #2,R15
+MOV R14,0(R15)
+ADD #2,&$1DC6
+MOV &$1DC6,R14
+MOV #$4056,-2(R14)
+ADD #2,&$1C00
+MOV &$1C00,R10
+MOV #0,0(R10)
+MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] LOOP [IF]
+CODE LOOP
+    MOV #$4078,R9
+BW1 ADD #4,&$1DC6
+    MOV &$1DC6,R10
+    MOV R9,-4(R10)
+    MOV R14,-2(R10)
+BEGIN
+    MOV &$1C00,R14
+    SUB #2,&$1C00
     MOV @R14,R14
-    MOV #U.,R0
+    CMP #0,R14
+0<> WHILE
+    MOV R10,0(R14)
+REPEAT
+    MOV @R15+,R14
+    MOV @R13+,R0
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] +LOOP [IF]
+CODE +LOOP
+MOV #$4066,R9
+GOTO BW1
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] I [IF]
+CODE I
+SUB #2,R15
+MOV R14,0(R15)
+MOV @R1,R14
+SUB 2(R1),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] SWAP [IF]
+CODE SWAP
+MOV @R15,R10
+MOV R14,0(R15)
+MOV R10,R14
+MOV @R13+,R0
+ENDCODE
+[THEN]
+
+
+[UNDEFINED] DROP [IF]
+CODE DROP
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE
+[THEN]
+
+[UNDEFINED] >R [IF]
+CODE >R
+PUSH R14
+MOV @R15+,R14
+MOV @R13+,R0
+ENDCODE
+[THEN]
+
+[UNDEFINED] R> [IF]
+CODE R>
+SUB #2,R15
+MOV R14,0(R15)
+MOV @R1+,R14
+MOV @R13+,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]
 
@@ -41,6 +253,119 @@ MOV @R13+,R0
 ENDCODE
 [THEN]
 
+[UNDEFINED] 2DUP [IF]
+CODE 2DUP
+MOV R14,-2(R15)
+MOV @R15,-4(R15)
+SUB #4,R15
+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] C@ [IF]
+CODE C@
+MOV.B @R14,R14
+MOV @R13+,R0
+ENDCODE
+[THEN]
+
+[UNDEFINED] AND [IF]
+CODE AND
+AND @R15+,R14
+MOV @R13+,R0
+ENDCODE
+[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] 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] OVER [IF]
+CODE OVER
+MOV R14,-2(R15)
+MOV @R15,R14
+SUB #2,R15
+MOV @R13+,R0
+ENDCODE
+[THEN]
+
+[UNDEFINED] MOVE [IF]
+CODE MOVE
+MOV R14,R10
+MOV @R15+,R8
+MOV @R15+,R9
+MOV @R15+,R14
+CMP #0,R10
+0<> IF
+    CMP R9,R8
+    0= ?GOTO FW1
+    U< IF
+        BEGIN
+            MOV.B @R9+,0(R8)
+            ADD #1,R8
+            SUB #1,R10
+        0= UNTIL
+        MOV @R13+,R0
+    ELSE
+        ADD R10,R8
+        ADD R10,R9
+        BEGIN
+            SUB #1,R9
+            SUB #1,R8
+            MOV.B @R9,0(R8)
+            SUB #1,R10
+        0= UNTIL
+    THEN
+THEN
+FW1 MOV @R13+,R0
+ENDCODE
+[THEN]
+
 [UNDEFINED] .S [IF]
 CODE .S
     MOV     R14,-2(R15)
@@ -80,34 +405,10 @@ CODE .RS
 ENDCODE
 [THEN]
 
-[UNDEFINED] + [IF]
-CODE +
-ADD @R15+,R14
-MOV @R13+,R0
-ENDCODE
-[THEN]
-
-[UNDEFINED] C@ [IF]
-CODE C@
-MOV.B @R14,R14
-MOV @R13+,R0
-ENDCODE
-[THEN]
-
-[UNDEFINED] AND [IF]
-CODE AND
-AND @R15+,R14
-MOV @R13+,R0
-ENDCODE
-[THEN]
-
-[UNDEFINED] ROT [IF]
-CODE ROT
-MOV @R15,R10
-MOV R14,0(R15)
-MOV 2(R15),R14
-MOV R10,2(R15)
-MOV @R13+,R0
+[UNDEFINED] ? [IF]
+CODE ?          
+    MOV @R14,R14
+    MOV #U.,R0
 ENDCODE
 [THEN]
 
@@ -144,31 +445,6 @@ DROP
 ;
 [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] OVER [IF]
-CODE OVER
-MOV R14,-2(R15)
-MOV @R15,R14
-SUB #2,R15
-MOV @R13+,R0
-ENDCODE
-[THEN]
-
 [UNDEFINED] U.R [IF]
 : U.R
 >R  <# 0 # #S #>  
@@ -204,3 +480,4 @@ LO2HI
 RST_HERE
 
 [THEN]
+ECHO
index 0f63114..1780488 100644 (file)
@@ -1,7 +1,9 @@
 \ -*- coding: utf-8 -*-
 
 ; -----------------------------------
-; PROG100k.f = 77 x RC5toLCD.f
+; PROG100k.f = 76 x RC5toLCD.f
+; -----------------------------------
+; download source file sized to compile 100 kbytes
 ; -----------------------------------
 
 \ TARGET SELECTION
@@ -98,8 +100,189 @@ RST_STATE
 
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
 
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] CONSTANT [IF]
+\ https://forth-standard.org/standard/core/CONSTANT
+\ CONSTANT <name>     n --                      define a Forth CONSTANT 
+: CONSTANT 
+CREATE
+HI2LO
+MOV TOS,-2(W)           \   PFA = n
+MOV @PSP+,TOS
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] STATE [IF]
+\ https://forth-standard.org/standard/core/STATE
+\ STATE   -- a-addr       holds compiler state
+STATEADR CONSTANT STATE
+[THEN]
+
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+    MOV @IP+,PC \ 4
+THEN
+XOR #-1,TOS     \ 1 flag Z = 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE     \ immediate
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+\ https://forth-standard.org/standard/core/DEFER
+\ DEFER "<spaces>name"   --
+\ Skip leading space delimiters. Parse name delimited by a space.
+\ Create a definition for name with the execution semantics defined below.
+
+\ name Execution:   --
+\ Execute the xt that name is set to execute, i.e. NEXT (nothing),
+\ until the phrase ' word IS name is executed, causing a new value of xt to be assigned to name.
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(W)        \ CFA = MOV @PC+,PC = BR MOV @IP+,PC
+MOV #NEXT_ADR,-2(W)     \ PFA = address of MOV @IP+,PC to do nothing.
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEFER! [IF]
+\ https://forth-standard.org/standard/core/DEFERStore
+\ Set the word xt1 to execute xt2. An ambiguous condition exists if xt1 is not for a word defined by DEFER.
+CODE DEFER!             \ xt2 xt1 --
+MOV @PSP+,2(TOS)        \ -- xt1=CFA_DEFER          xt2 --> [CFA_DEFER+2]
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] IS [IF]
+\ https://forth-standard.org/standard/core/IS
+\ IS <name>        xt --
+\ used as is :
+\ DEFER DISPLAY                         create a "do nothing" definition (2 CELLS)
+\ inline command : ' U. IS DISPLAY      U. becomes the runtime of the word DISPLAY
+\ or in a definition : ... ['] U. IS DISPLAY ...
+\ KEY, EMIT, CR, ACCEPT and WARM are examples of DEFERred words
+\
+\ as IS replaces the PFA value of any word, it's a TO alias for VARIABLE and CONSTANT words...
+: IS
+STATE @
+IF  POSTPONE ['] POSTPONE DEFER! 
+ELSE ' DEFER! 
+THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+\ CODE 20uS           \ n --      8MHz version
+\ BEGIN               \ 4 + 16 ~ loop
+\     MOV #39,rDOCON   \ 39
+\     BEGIN           \ 4 ~ loop
+\         NOP
+\         SUB #1,rDOCON
+\     0=  UNTIL
+\     SUB #1,TOS      \ 1
+\ 0= UNTIL
+\ MOV #XDOCON,rDOCON  \ 2
+\ MOV @PSP+,TOS
+\ MOV @RSP+,IP        \
+\ ENDCODE
+
 CODE 20_US                      \ n --      n * 20 us
 BEGIN                           \ here we presume that LCD_TIM_IFG = 1...
     BEGIN
@@ -113,8 +296,8 @@ MOV @IP+,PC                     \ 4
 ENDCODE
 
 CODE TOP_LCD                    \ LCD Sample
-\                               \ if write : %xxxxWWWW --
-\                               \ if read  : -- %0000RRRR
+\                               \ if write : %xxxx_WWWW --
+\                               \ if read  : -- %0000_RRRR
     BIS.B #LCD_EN,&LCD_CMD_OUT  \ lcd_en 0-->1
     BIT.B #LCD_RW,&LCD_CMD_IN   \ lcd_rw test
 0= IF                           \ write LCD bits pattern
@@ -135,8 +318,8 @@ ENDCODE
 CODE LCD_WRC                    \ char --         Write Char
     BIS.B #LCD_RS,&LCD_CMD_OUT  \ lcd_rs=1
 BW1 SUB #2,PSP                  \
-    MOV TOS,0(PSP)              \ -- %xxxxLLLL %HHHHLLLL
-    RRUM #4,TOS                 \ -- %xxxxLLLL %xxxxHHHH
+    MOV TOS,0(PSP)              \ -- %xxxx_LLLL %HHHH_LLLL
+    RRUM #4,TOS                 \ -- %xxxx_LLLL %xxxx_HHHH
     BIC.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=0
     BIS.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as output
 COLON                           \ high level word starts here 
@@ -176,11 +359,11 @@ ENDCODE
 \ BW1 BIC.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as intput
 \     BIS.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=1
 \ COLON                           \ starts a FORTH word
-\     TOP_LCD 2 20_us             \ -- %0000HHHH
-\     TOP_LCD 2 20_us             \ -- %0000HHHH %0000LLLL
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH %0000_LLLL
 \ HI2LO                           \ switch from FORTH to assembler
-\     RLAM #4,0(PSP)              \ -- %HHHH0000 %0000LLLL
-\     ADD.B @PSP+,TOS             \ -- %HHHHLLLL
+\     RLAM #4,0(PSP)              \ -- %HHHH_0000 %0000_LLLL
+\     ADD.B @PSP+,TOS             \ -- %HHHH_LLLL
 \     MOV @RSP+,IP                \ restore IP saved by COLON
 \     MOV @IP+,PC                 \
 \ ENDCODE
@@ -321,14 +504,14 @@ MOV @PSP+,TOS                   \     -- TOS
 RET
 ENDASM
 
-\ ------------------------------\
+\ ******************************\
 ASM BACKGROUND                  \
-\ ------------------------------\
+\ ******************************\
 BEGIN
 \     ...                         \ insert here your background task
 \     ...                         \
 \     ...                         \
-    CALL &RXON                  \ comment this line to disable TERMINAL
+    CALL &RXON                  \ comment this line to disable TERMINAL_INPUT
     BIS &LPM_MODE,SR            \
 \ ******************************\
 \ here start all interrupts     \
@@ -337,23 +520,43 @@ BEGIN
 \ ******************************\
 AGAIN                           \
 ENDASM                          \
+\ ******************************\
+
+\ ------------------------------\
+ASM SYS_OUT                    \ system OUT init, replaces WARM at the request of STOP.
+\ ------------------------------\
+\     ...                         \ init specific I/O sys as you want
+\     ...                         \ before executing default WARM
+    MOV #WARM,X                 \ ['] WARM 
+    ADD #4,X                    \ >BODY
+    MOV X,PC                    \ EXECUTE    (which activates IO and TERMINAL)
+ENDASM
+\ ------------------------------\
 
 \ ------------------------------\
 CODE STOP                       \ stops multitasking, must to be used before downloading app
 \ ------------------------------\
-\ restore default action of primary DEFERred word SLEEP (assembly version)
 BW1 MOV #SLEEP,X                \ the ASM word SLEEP is only visible in mode assembler. 
     ADD #4,X                    \ X = BODY of SLEEP, X-2 = PFA of SLEEP
-    MOV X,-2(X)                 \ restore the default background
+    MOV X,-2(X)                 \ restore the default background: SLEEP
+    MOV #WARM,X
+    MOV #SYS_OUT,2(X)           \ default WARM is replaced by JMJ_BOX SYS_OUT (ended by default WARM)
+    BIC.B #RC5,&IR_IE           \ clear RC5_Int
+    BIC.B #RC5,&IR_IFG          \ clear RC5_Int flag
+    MOV #0,&LCD_TIM_CTL         \ stop LCD_TIMER
+    MOV #0,&WDT_TIM_CTL         \ stop WDT_TIMER
+    MOV #0,&WDT_TIM_CCTL0       \ clear CCIFG0 disable CCIE0
+    CALL #INIT_VECT             \ reset all vectors other than TERMINAL_int
 COLON                           \ restore default action of primary DEFERred word WARM (FORTH version)
-['] WARM >BODY IS WARM          \ restore the default WARM
 ECHO                            \
-." RC5toLCD is removed. type START to restart"
-COLD                            \ performs reset to reset all interrupt vectors.    
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM                           \ performs reset to reset all interrupt vectors.    
 ;
+\ ------------------------------\
 
 \ ------------------------------\
-CODE APP_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
+CODE SYS_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
 \ ------------------------------\
 \ LCD_TIM_CTL =  %0000 0010 1001 0100\$3C0
 \                    - -             \CNTL Counter lentgh \ 00 = 16 bits
@@ -383,7 +586,7 @@ CODE APP_INIT                   \ this routine completes the init of system, i.e
 \ ------------------------------\
 \ set LCD_TIM_ to make 50kHz PWM \ for LCD_Vo; works without interrupt
 \ ------------------------------\
-MOV #%1011010100,&LCD_TIM_CTL   \ SMCLK/8, up mode, clear timer, no int
+MOV #%10_1101_0100,&LCD_TIM_CTL \ SMCLK/8, up mode, clear timer, no int
 \    MOV #0,&LCD_TIM_EX0        \ predivide by 1 in LCD_TIM_EX0 register (8 MHZ)
 FREQ_KHZ @ 16000 = [IF]         \ if 16 MHz
     MOV #1,&LCD_TIM_EX0         \ predivide by 2 in LCD_TIM_EX0 register (16 MHZ)
@@ -395,7 +598,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \ ------------------------------\
 \ set LCD_TIM_.2 to generate PWM for LCD_Vo
 \ ------------------------------\
-    MOV #%01100000,&LCD_TIM_CCTLn \ output mode = set/reset \ clear CCIFG
+MOV #%0110_0000,&LCD_TIM_CCTLn  \ output mode = set/reset \ clear CCIFG
     MOV #10,&LCD_TIM_CCRn       \ contrast adjust : 10/20 ==> LCD_Vo = -0V6|+3V6 (Vcc=3V6)
 \    MOV #12,&LCD_TIM_CCRn        \ contrast adjust : 12/20 ==> LCD_Vo = -1V4|+3V3 (Vcc=3V3)
 \ ------------------------------\
@@ -424,7 +627,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \                         -     \ TAIE
 \                          -    \ TAIFG
 \ ------------------------------\
-    MOV #%0100010100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
+MOV #%01_0001_0100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
 \ ------------------------------\
 \                        000    \ TAxEX0
 \                        ---    \ TAIDEX    pre divisor
@@ -490,23 +693,213 @@ COLON                           \
     ['] CR >BODY IS CR          \ CR executes its default value
     ['] EMIT >BODY IS EMIT      \ EMIT executes its defaulte value
     ." RC5toLCD is running. Type STOP to quit" \ display message on FastForth Terminal
-    ABORT                       \ ...and end APP_INIT with ABORT, no return.
+    PWR_STATE ABORT             \ init DP and continues with ABORT
 ;                               \
+\ ------------------------------\
 
 \ ------------------------------\
 CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
 \ ------------------------------\
-MOV #SLEEP,X                    \ replace default background process
+MOV #SLEEP,X                    \ replace default background process SLEEP
 MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
 MOV #WARM,X                     \ replace default WARM
-MOV #APP_INIT,2(X)              \ by RC5toLCD APP_INIT
-MOV X,PC                        \ then execute it
+MOV #SYS_INIT,2(X)              \ by RC5toLCD SYS_INIT
+MOV X,PC                        \ then execute new WARM
 ENDCODE 
+\ ------------------------------\
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
 
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
 
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] CONSTANT [IF]
+\ https://forth-standard.org/standard/core/CONSTANT
+\ CONSTANT <name>     n --                      define a Forth CONSTANT 
+: CONSTANT 
+CREATE
+HI2LO
+MOV TOS,-2(W)           \   PFA = n
+MOV @PSP+,TOS
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] STATE [IF]
+\ https://forth-standard.org/standard/core/STATE
+\ STATE   -- a-addr       holds compiler state
+STATEADR CONSTANT STATE
+[THEN]
+
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+    MOV @IP+,PC \ 4
+THEN
+XOR #-1,TOS     \ 1 flag Z = 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE     \ immediate
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+\ https://forth-standard.org/standard/core/DEFER
+\ DEFER "<spaces>name"   --
+\ Skip leading space delimiters. Parse name delimited by a space.
+\ Create a definition for name with the execution semantics defined below.
+
+\ name Execution:   --
+\ Execute the xt that name is set to execute, i.e. NEXT (nothing),
+\ until the phrase ' word IS name is executed, causing a new value of xt to be assigned to name.
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(W)        \ CFA = MOV @PC+,PC = BR MOV @IP+,PC
+MOV #NEXT_ADR,-2(W)     \ PFA = address of MOV @IP+,PC to do nothing.
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEFER! [IF]
+\ https://forth-standard.org/standard/core/DEFERStore
+\ Set the word xt1 to execute xt2. An ambiguous condition exists if xt1 is not for a word defined by DEFER.
+CODE DEFER!             \ xt2 xt1 --
+MOV @PSP+,2(TOS)        \ -- xt1=CFA_DEFER          xt2 --> [CFA_DEFER+2]
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] IS [IF]
+\ https://forth-standard.org/standard/core/IS
+\ IS <name>        xt --
+\ used as is :
+\ DEFER DISPLAY                         create a "do nothing" definition (2 CELLS)
+\ inline command : ' U. IS DISPLAY      U. becomes the runtime of the word DISPLAY
+\ or in a definition : ... ['] U. IS DISPLAY ...
+\ KEY, EMIT, CR, ACCEPT and WARM are examples of DEFERred words
+\
+\ as IS replaces the PFA value of any word, it's a TO alias for VARIABLE and CONSTANT words...
+: IS
+STATE @
+IF  POSTPONE ['] POSTPONE DEFER! 
+ELSE ' DEFER! 
+THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+\ CODE 20uS           \ n --      8MHz version
+\ BEGIN               \ 4 + 16 ~ loop
+\     MOV #39,rDOCON   \ 39
+\     BEGIN           \ 4 ~ loop
+\         NOP
+\         SUB #1,rDOCON
+\     0=  UNTIL
+\     SUB #1,TOS      \ 1
+\ 0= UNTIL
+\ MOV #XDOCON,rDOCON  \ 2
+\ MOV @PSP+,TOS
+\ MOV @RSP+,IP        \
+\ ENDCODE
+
 CODE 20_US                      \ n --      n * 20 us
 BEGIN                           \ here we presume that LCD_TIM_IFG = 1...
     BEGIN
@@ -520,8 +913,8 @@ MOV @IP+,PC                     \ 4
 ENDCODE
 
 CODE TOP_LCD                    \ LCD Sample
-\                               \ if write : %xxxxWWWW --
-\                               \ if read  : -- %0000RRRR
+\                               \ if write : %xxxx_WWWW --
+\                               \ if read  : -- %0000_RRRR
     BIS.B #LCD_EN,&LCD_CMD_OUT  \ lcd_en 0-->1
     BIT.B #LCD_RW,&LCD_CMD_IN   \ lcd_rw test
 0= IF                           \ write LCD bits pattern
@@ -542,8 +935,8 @@ ENDCODE
 CODE LCD_WRC                    \ char --         Write Char
     BIS.B #LCD_RS,&LCD_CMD_OUT  \ lcd_rs=1
 BW1 SUB #2,PSP                  \
-    MOV TOS,0(PSP)              \ -- %xxxxLLLL %HHHHLLLL
-    RRUM #4,TOS                 \ -- %xxxxLLLL %xxxxHHHH
+    MOV TOS,0(PSP)              \ -- %xxxx_LLLL %HHHH_LLLL
+    RRUM #4,TOS                 \ -- %xxxx_LLLL %xxxx_HHHH
     BIC.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=0
     BIS.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as output
 COLON                           \ high level word starts here 
@@ -583,11 +976,11 @@ ENDCODE
 \ BW1 BIC.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as intput
 \     BIS.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=1
 \ COLON                           \ starts a FORTH word
-\     TOP_LCD 2 20_us             \ -- %0000HHHH
-\     TOP_LCD 2 20_us             \ -- %0000HHHH %0000LLLL
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH %0000_LLLL
 \ HI2LO                           \ switch from FORTH to assembler
-\     RLAM #4,0(PSP)              \ -- %HHHH0000 %0000LLLL
-\     ADD.B @PSP+,TOS             \ -- %HHHHLLLL
+\     RLAM #4,0(PSP)              \ -- %HHHH_0000 %0000_LLLL
+\     ADD.B @PSP+,TOS             \ -- %HHHH_LLLL
 \     MOV @RSP+,IP                \ restore IP saved by COLON
 \     MOV @IP+,PC                 \
 \ ENDCODE
@@ -728,14 +1121,14 @@ MOV @PSP+,TOS                   \     -- TOS
 RET
 ENDASM
 
-\ ------------------------------\
+\ ******************************\
 ASM BACKGROUND                  \
-\ ------------------------------\
+\ ******************************\
 BEGIN
 \     ...                         \ insert here your background task
 \     ...                         \
 \     ...                         \
-    CALL &RXON                  \ comment this line to disable TERMINAL
+    CALL &RXON                  \ comment this line to disable TERMINAL_INPUT
     BIS &LPM_MODE,SR            \
 \ ******************************\
 \ here start all interrupts     \
@@ -744,23 +1137,43 @@ BEGIN
 \ ******************************\
 AGAIN                           \
 ENDASM                          \
+\ ******************************\
+
+\ ------------------------------\
+ASM SYS_OUT                    \ system OUT init, replaces WARM at the request of STOP.
+\ ------------------------------\
+\     ...                         \ init specific I/O sys as you want
+\     ...                         \ before executing default WARM
+    MOV #WARM,X                 \ ['] WARM 
+    ADD #4,X                    \ >BODY
+    MOV X,PC                    \ EXECUTE    (which activates IO and TERMINAL)
+ENDASM
+\ ------------------------------\
 
 \ ------------------------------\
 CODE STOP                       \ stops multitasking, must to be used before downloading app
 \ ------------------------------\
-\ restore default action of primary DEFERred word SLEEP (assembly version)
 BW1 MOV #SLEEP,X                \ the ASM word SLEEP is only visible in mode assembler. 
     ADD #4,X                    \ X = BODY of SLEEP, X-2 = PFA of SLEEP
-    MOV X,-2(X)                 \ restore the default background
+    MOV X,-2(X)                 \ restore the default background: SLEEP
+    MOV #WARM,X
+    MOV #SYS_OUT,2(X)           \ default WARM is replaced by JMJ_BOX SYS_OUT (ended by default WARM)
+    BIC.B #RC5,&IR_IE           \ clear RC5_Int
+    BIC.B #RC5,&IR_IFG          \ clear RC5_Int flag
+    MOV #0,&LCD_TIM_CTL         \ stop LCD_TIMER
+    MOV #0,&WDT_TIM_CTL         \ stop WDT_TIMER
+    MOV #0,&WDT_TIM_CCTL0       \ clear CCIFG0 disable CCIE0
+    CALL #INIT_VECT             \ reset all vectors other than TERMINAL_int
 COLON                           \ restore default action of primary DEFERred word WARM (FORTH version)
-['] WARM >BODY IS WARM          \ restore the default WARM
 ECHO                            \
-." RC5toLCD is removed. type START to restart"
-COLD                            \ performs reset to reset all interrupt vectors.    
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM                           \ performs reset to reset all interrupt vectors.    
 ;
+\ ------------------------------\
 
 \ ------------------------------\
-CODE APP_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
+CODE SYS_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
 \ ------------------------------\
 \ LCD_TIM_CTL =  %0000 0010 1001 0100\$3C0
 \                    - -             \CNTL Counter lentgh \ 00 = 16 bits
@@ -790,7 +1203,7 @@ CODE APP_INIT                   \ this routine completes the init of system, i.e
 \ ------------------------------\
 \ set LCD_TIM_ to make 50kHz PWM \ for LCD_Vo; works without interrupt
 \ ------------------------------\
-MOV #%1011010100,&LCD_TIM_CTL   \ SMCLK/8, up mode, clear timer, no int
+MOV #%10_1101_0100,&LCD_TIM_CTL \ SMCLK/8, up mode, clear timer, no int
 \    MOV #0,&LCD_TIM_EX0        \ predivide by 1 in LCD_TIM_EX0 register (8 MHZ)
 FREQ_KHZ @ 16000 = [IF]         \ if 16 MHz
     MOV #1,&LCD_TIM_EX0         \ predivide by 2 in LCD_TIM_EX0 register (16 MHZ)
@@ -802,7 +1215,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \ ------------------------------\
 \ set LCD_TIM_.2 to generate PWM for LCD_Vo
 \ ------------------------------\
-    MOV #%01100000,&LCD_TIM_CCTLn \ output mode = set/reset \ clear CCIFG
+MOV #%0110_0000,&LCD_TIM_CCTLn  \ output mode = set/reset \ clear CCIFG
     MOV #10,&LCD_TIM_CCRn       \ contrast adjust : 10/20 ==> LCD_Vo = -0V6|+3V6 (Vcc=3V6)
 \    MOV #12,&LCD_TIM_CCRn        \ contrast adjust : 12/20 ==> LCD_Vo = -1V4|+3V3 (Vcc=3V3)
 \ ------------------------------\
@@ -831,7 +1244,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \                         -     \ TAIE
 \                          -    \ TAIFG
 \ ------------------------------\
-    MOV #%0100010100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
+MOV #%01_0001_0100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
 \ ------------------------------\
 \                        000    \ TAxEX0
 \                        ---    \ TAIDEX    pre divisor
@@ -897,23 +1310,213 @@ COLON                           \
     ['] CR >BODY IS CR          \ CR executes its default value
     ['] EMIT >BODY IS EMIT      \ EMIT executes its defaulte value
     ." RC5toLCD is running. Type STOP to quit" \ display message on FastForth Terminal
-    ABORT                       \ ...and end APP_INIT with ABORT, no return.
+    PWR_STATE ABORT             \ init DP and continues with ABORT
 ;                               \
+\ ------------------------------\
 
 \ ------------------------------\
 CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
 \ ------------------------------\
-MOV #SLEEP,X                    \ replace default background process
+MOV #SLEEP,X                    \ replace default background process SLEEP
 MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
 MOV #WARM,X                     \ replace default WARM
-MOV #APP_INIT,2(X)              \ by RC5toLCD APP_INIT
-MOV X,PC                        \ then execute it
+MOV #SYS_INIT,2(X)              \ by RC5toLCD SYS_INIT
+MOV X,PC                        \ then execute new WARM
 ENDCODE 
+\ ------------------------------\
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
 
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
 
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] CONSTANT [IF]
+\ https://forth-standard.org/standard/core/CONSTANT
+\ CONSTANT <name>     n --                      define a Forth CONSTANT 
+: CONSTANT 
+CREATE
+HI2LO
+MOV TOS,-2(W)           \   PFA = n
+MOV @PSP+,TOS
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] STATE [IF]
+\ https://forth-standard.org/standard/core/STATE
+\ STATE   -- a-addr       holds compiler state
+STATEADR CONSTANT STATE
+[THEN]
+
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+    MOV @IP+,PC \ 4
+THEN
+XOR #-1,TOS     \ 1 flag Z = 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE     \ immediate
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+\ https://forth-standard.org/standard/core/DEFER
+\ DEFER "<spaces>name"   --
+\ Skip leading space delimiters. Parse name delimited by a space.
+\ Create a definition for name with the execution semantics defined below.
+
+\ name Execution:   --
+\ Execute the xt that name is set to execute, i.e. NEXT (nothing),
+\ until the phrase ' word IS name is executed, causing a new value of xt to be assigned to name.
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(W)        \ CFA = MOV @PC+,PC = BR MOV @IP+,PC
+MOV #NEXT_ADR,-2(W)     \ PFA = address of MOV @IP+,PC to do nothing.
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEFER! [IF]
+\ https://forth-standard.org/standard/core/DEFERStore
+\ Set the word xt1 to execute xt2. An ambiguous condition exists if xt1 is not for a word defined by DEFER.
+CODE DEFER!             \ xt2 xt1 --
+MOV @PSP+,2(TOS)        \ -- xt1=CFA_DEFER          xt2 --> [CFA_DEFER+2]
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] IS [IF]
+\ https://forth-standard.org/standard/core/IS
+\ IS <name>        xt --
+\ used as is :
+\ DEFER DISPLAY                         create a "do nothing" definition (2 CELLS)
+\ inline command : ' U. IS DISPLAY      U. becomes the runtime of the word DISPLAY
+\ or in a definition : ... ['] U. IS DISPLAY ...
+\ KEY, EMIT, CR, ACCEPT and WARM are examples of DEFERred words
+\
+\ as IS replaces the PFA value of any word, it's a TO alias for VARIABLE and CONSTANT words...
+: IS
+STATE @
+IF  POSTPONE ['] POSTPONE DEFER! 
+ELSE ' DEFER! 
+THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+\ CODE 20uS           \ n --      8MHz version
+\ BEGIN               \ 4 + 16 ~ loop
+\     MOV #39,rDOCON   \ 39
+\     BEGIN           \ 4 ~ loop
+\         NOP
+\         SUB #1,rDOCON
+\     0=  UNTIL
+\     SUB #1,TOS      \ 1
+\ 0= UNTIL
+\ MOV #XDOCON,rDOCON  \ 2
+\ MOV @PSP+,TOS
+\ MOV @RSP+,IP        \
+\ ENDCODE
+
 CODE 20_US                      \ n --      n * 20 us
 BEGIN                           \ here we presume that LCD_TIM_IFG = 1...
     BEGIN
@@ -927,8 +1530,8 @@ MOV @IP+,PC                     \ 4
 ENDCODE
 
 CODE TOP_LCD                    \ LCD Sample
-\                               \ if write : %xxxxWWWW --
-\                               \ if read  : -- %0000RRRR
+\                               \ if write : %xxxx_WWWW --
+\                               \ if read  : -- %0000_RRRR
     BIS.B #LCD_EN,&LCD_CMD_OUT  \ lcd_en 0-->1
     BIT.B #LCD_RW,&LCD_CMD_IN   \ lcd_rw test
 0= IF                           \ write LCD bits pattern
@@ -949,8 +1552,8 @@ ENDCODE
 CODE LCD_WRC                    \ char --         Write Char
     BIS.B #LCD_RS,&LCD_CMD_OUT  \ lcd_rs=1
 BW1 SUB #2,PSP                  \
-    MOV TOS,0(PSP)              \ -- %xxxxLLLL %HHHHLLLL
-    RRUM #4,TOS                 \ -- %xxxxLLLL %xxxxHHHH
+    MOV TOS,0(PSP)              \ -- %xxxx_LLLL %HHHH_LLLL
+    RRUM #4,TOS                 \ -- %xxxx_LLLL %xxxx_HHHH
     BIC.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=0
     BIS.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as output
 COLON                           \ high level word starts here 
@@ -990,11 +1593,11 @@ ENDCODE
 \ BW1 BIC.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as intput
 \     BIS.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=1
 \ COLON                           \ starts a FORTH word
-\     TOP_LCD 2 20_us             \ -- %0000HHHH
-\     TOP_LCD 2 20_us             \ -- %0000HHHH %0000LLLL
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH %0000_LLLL
 \ HI2LO                           \ switch from FORTH to assembler
-\     RLAM #4,0(PSP)              \ -- %HHHH0000 %0000LLLL
-\     ADD.B @PSP+,TOS             \ -- %HHHHLLLL
+\     RLAM #4,0(PSP)              \ -- %HHHH_0000 %0000_LLLL
+\     ADD.B @PSP+,TOS             \ -- %HHHH_LLLL
 \     MOV @RSP+,IP                \ restore IP saved by COLON
 \     MOV @IP+,PC                 \
 \ ENDCODE
@@ -1135,14 +1738,14 @@ MOV @PSP+,TOS                   \     -- TOS
 RET
 ENDASM
 
-\ ------------------------------\
+\ ******************************\
 ASM BACKGROUND                  \
-\ ------------------------------\
+\ ******************************\
 BEGIN
 \     ...                         \ insert here your background task
 \     ...                         \
 \     ...                         \
-    CALL &RXON                  \ comment this line to disable TERMINAL
+    CALL &RXON                  \ comment this line to disable TERMINAL_INPUT
     BIS &LPM_MODE,SR            \
 \ ******************************\
 \ here start all interrupts     \
@@ -1151,23 +1754,43 @@ BEGIN
 \ ******************************\
 AGAIN                           \
 ENDASM                          \
+\ ******************************\
+
+\ ------------------------------\
+ASM SYS_OUT                    \ system OUT init, replaces WARM at the request of STOP.
+\ ------------------------------\
+\     ...                         \ init specific I/O sys as you want
+\     ...                         \ before executing default WARM
+    MOV #WARM,X                 \ ['] WARM 
+    ADD #4,X                    \ >BODY
+    MOV X,PC                    \ EXECUTE    (which activates IO and TERMINAL)
+ENDASM
+\ ------------------------------\
 
 \ ------------------------------\
 CODE STOP                       \ stops multitasking, must to be used before downloading app
 \ ------------------------------\
-\ restore default action of primary DEFERred word SLEEP (assembly version)
 BW1 MOV #SLEEP,X                \ the ASM word SLEEP is only visible in mode assembler. 
     ADD #4,X                    \ X = BODY of SLEEP, X-2 = PFA of SLEEP
-    MOV X,-2(X)                 \ restore the default background
+    MOV X,-2(X)                 \ restore the default background: SLEEP
+    MOV #WARM,X
+    MOV #SYS_OUT,2(X)           \ default WARM is replaced by JMJ_BOX SYS_OUT (ended by default WARM)
+    BIC.B #RC5,&IR_IE           \ clear RC5_Int
+    BIC.B #RC5,&IR_IFG          \ clear RC5_Int flag
+    MOV #0,&LCD_TIM_CTL         \ stop LCD_TIMER
+    MOV #0,&WDT_TIM_CTL         \ stop WDT_TIMER
+    MOV #0,&WDT_TIM_CCTL0       \ clear CCIFG0 disable CCIE0
+    CALL #INIT_VECT             \ reset all vectors other than TERMINAL_int
 COLON                           \ restore default action of primary DEFERred word WARM (FORTH version)
-['] WARM >BODY IS WARM          \ restore the default WARM
 ECHO                            \
-." RC5toLCD is removed. type START to restart"
-COLD                            \ performs reset to reset all interrupt vectors.    
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM                           \ performs reset to reset all interrupt vectors.    
 ;
+\ ------------------------------\
 
 \ ------------------------------\
-CODE APP_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
+CODE SYS_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
 \ ------------------------------\
 \ LCD_TIM_CTL =  %0000 0010 1001 0100\$3C0
 \                    - -             \CNTL Counter lentgh \ 00 = 16 bits
@@ -1197,7 +1820,7 @@ CODE APP_INIT                   \ this routine completes the init of system, i.e
 \ ------------------------------\
 \ set LCD_TIM_ to make 50kHz PWM \ for LCD_Vo; works without interrupt
 \ ------------------------------\
-MOV #%1011010100,&LCD_TIM_CTL   \ SMCLK/8, up mode, clear timer, no int
+MOV #%10_1101_0100,&LCD_TIM_CTL \ SMCLK/8, up mode, clear timer, no int
 \    MOV #0,&LCD_TIM_EX0        \ predivide by 1 in LCD_TIM_EX0 register (8 MHZ)
 FREQ_KHZ @ 16000 = [IF]         \ if 16 MHz
     MOV #1,&LCD_TIM_EX0         \ predivide by 2 in LCD_TIM_EX0 register (16 MHZ)
@@ -1209,7 +1832,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \ ------------------------------\
 \ set LCD_TIM_.2 to generate PWM for LCD_Vo
 \ ------------------------------\
-    MOV #%01100000,&LCD_TIM_CCTLn \ output mode = set/reset \ clear CCIFG
+MOV #%0110_0000,&LCD_TIM_CCTLn  \ output mode = set/reset \ clear CCIFG
     MOV #10,&LCD_TIM_CCRn       \ contrast adjust : 10/20 ==> LCD_Vo = -0V6|+3V6 (Vcc=3V6)
 \    MOV #12,&LCD_TIM_CCRn        \ contrast adjust : 12/20 ==> LCD_Vo = -1V4|+3V3 (Vcc=3V3)
 \ ------------------------------\
@@ -1238,7 +1861,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \                         -     \ TAIE
 \                          -    \ TAIFG
 \ ------------------------------\
-    MOV #%0100010100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
+MOV #%01_0001_0100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
 \ ------------------------------\
 \                        000    \ TAxEX0
 \                        ---    \ TAIDEX    pre divisor
@@ -1304,23 +1927,213 @@ COLON                           \
     ['] CR >BODY IS CR          \ CR executes its default value
     ['] EMIT >BODY IS EMIT      \ EMIT executes its defaulte value
     ." RC5toLCD is running. Type STOP to quit" \ display message on FastForth Terminal
-    ABORT                       \ ...and end APP_INIT with ABORT, no return.
+    PWR_STATE ABORT             \ init DP and continues with ABORT
 ;                               \
+\ ------------------------------\
 
 \ ------------------------------\
 CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
 \ ------------------------------\
-MOV #SLEEP,X                    \ replace default background process
+MOV #SLEEP,X                    \ replace default background process SLEEP
 MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
 MOV #WARM,X                     \ replace default WARM
-MOV #APP_INIT,2(X)              \ by RC5toLCD APP_INIT
-MOV X,PC                        \ then execute it
+MOV #SYS_INIT,2(X)              \ by RC5toLCD SYS_INIT
+MOV X,PC                        \ then execute new WARM
 ENDCODE 
+\ ------------------------------\
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
 
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
 
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] CONSTANT [IF]
+\ https://forth-standard.org/standard/core/CONSTANT
+\ CONSTANT <name>     n --                      define a Forth CONSTANT 
+: CONSTANT 
+CREATE
+HI2LO
+MOV TOS,-2(W)           \   PFA = n
+MOV @PSP+,TOS
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] STATE [IF]
+\ https://forth-standard.org/standard/core/STATE
+\ STATE   -- a-addr       holds compiler state
+STATEADR CONSTANT STATE
+[THEN]
+
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+    MOV @IP+,PC \ 4
+THEN
+XOR #-1,TOS     \ 1 flag Z = 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE     \ immediate
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+\ https://forth-standard.org/standard/core/DEFER
+\ DEFER "<spaces>name"   --
+\ Skip leading space delimiters. Parse name delimited by a space.
+\ Create a definition for name with the execution semantics defined below.
+
+\ name Execution:   --
+\ Execute the xt that name is set to execute, i.e. NEXT (nothing),
+\ until the phrase ' word IS name is executed, causing a new value of xt to be assigned to name.
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(W)        \ CFA = MOV @PC+,PC = BR MOV @IP+,PC
+MOV #NEXT_ADR,-2(W)     \ PFA = address of MOV @IP+,PC to do nothing.
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEFER! [IF]
+\ https://forth-standard.org/standard/core/DEFERStore
+\ Set the word xt1 to execute xt2. An ambiguous condition exists if xt1 is not for a word defined by DEFER.
+CODE DEFER!             \ xt2 xt1 --
+MOV @PSP+,2(TOS)        \ -- xt1=CFA_DEFER          xt2 --> [CFA_DEFER+2]
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] IS [IF]
+\ https://forth-standard.org/standard/core/IS
+\ IS <name>        xt --
+\ used as is :
+\ DEFER DISPLAY                         create a "do nothing" definition (2 CELLS)
+\ inline command : ' U. IS DISPLAY      U. becomes the runtime of the word DISPLAY
+\ or in a definition : ... ['] U. IS DISPLAY ...
+\ KEY, EMIT, CR, ACCEPT and WARM are examples of DEFERred words
+\
+\ as IS replaces the PFA value of any word, it's a TO alias for VARIABLE and CONSTANT words...
+: IS
+STATE @
+IF  POSTPONE ['] POSTPONE DEFER! 
+ELSE ' DEFER! 
+THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+\ CODE 20uS           \ n --      8MHz version
+\ BEGIN               \ 4 + 16 ~ loop
+\     MOV #39,rDOCON   \ 39
+\     BEGIN           \ 4 ~ loop
+\         NOP
+\         SUB #1,rDOCON
+\     0=  UNTIL
+\     SUB #1,TOS      \ 1
+\ 0= UNTIL
+\ MOV #XDOCON,rDOCON  \ 2
+\ MOV @PSP+,TOS
+\ MOV @RSP+,IP        \
+\ ENDCODE
+
 CODE 20_US                      \ n --      n * 20 us
 BEGIN                           \ here we presume that LCD_TIM_IFG = 1...
     BEGIN
@@ -1334,8 +2147,8 @@ MOV @IP+,PC                     \ 4
 ENDCODE
 
 CODE TOP_LCD                    \ LCD Sample
-\                               \ if write : %xxxxWWWW --
-\                               \ if read  : -- %0000RRRR
+\                               \ if write : %xxxx_WWWW --
+\                               \ if read  : -- %0000_RRRR
     BIS.B #LCD_EN,&LCD_CMD_OUT  \ lcd_en 0-->1
     BIT.B #LCD_RW,&LCD_CMD_IN   \ lcd_rw test
 0= IF                           \ write LCD bits pattern
@@ -1356,8 +2169,8 @@ ENDCODE
 CODE LCD_WRC                    \ char --         Write Char
     BIS.B #LCD_RS,&LCD_CMD_OUT  \ lcd_rs=1
 BW1 SUB #2,PSP                  \
-    MOV TOS,0(PSP)              \ -- %xxxxLLLL %HHHHLLLL
-    RRUM #4,TOS                 \ -- %xxxxLLLL %xxxxHHHH
+    MOV TOS,0(PSP)              \ -- %xxxx_LLLL %HHHH_LLLL
+    RRUM #4,TOS                 \ -- %xxxx_LLLL %xxxx_HHHH
     BIC.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=0
     BIS.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as output
 COLON                           \ high level word starts here 
@@ -1397,11 +2210,11 @@ ENDCODE
 \ BW1 BIC.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as intput
 \     BIS.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=1
 \ COLON                           \ starts a FORTH word
-\     TOP_LCD 2 20_us             \ -- %0000HHHH
-\     TOP_LCD 2 20_us             \ -- %0000HHHH %0000LLLL
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH %0000_LLLL
 \ HI2LO                           \ switch from FORTH to assembler
-\     RLAM #4,0(PSP)              \ -- %HHHH0000 %0000LLLL
-\     ADD.B @PSP+,TOS             \ -- %HHHHLLLL
+\     RLAM #4,0(PSP)              \ -- %HHHH_0000 %0000_LLLL
+\     ADD.B @PSP+,TOS             \ -- %HHHH_LLLL
 \     MOV @RSP+,IP                \ restore IP saved by COLON
 \     MOV @IP+,PC                 \
 \ ENDCODE
@@ -1542,14 +2355,14 @@ MOV @PSP+,TOS                   \     -- TOS
 RET
 ENDASM
 
-\ ------------------------------\
+\ ******************************\
 ASM BACKGROUND                  \
-\ ------------------------------\
+\ ******************************\
 BEGIN
 \     ...                         \ insert here your background task
 \     ...                         \
 \     ...                         \
-    CALL &RXON                  \ comment this line to disable TERMINAL
+    CALL &RXON                  \ comment this line to disable TERMINAL_INPUT
     BIS &LPM_MODE,SR            \
 \ ******************************\
 \ here start all interrupts     \
@@ -1558,23 +2371,43 @@ BEGIN
 \ ******************************\
 AGAIN                           \
 ENDASM                          \
+\ ******************************\
+
+\ ------------------------------\
+ASM SYS_OUT                    \ system OUT init, replaces WARM at the request of STOP.
+\ ------------------------------\
+\     ...                         \ init specific I/O sys as you want
+\     ...                         \ before executing default WARM
+    MOV #WARM,X                 \ ['] WARM 
+    ADD #4,X                    \ >BODY
+    MOV X,PC                    \ EXECUTE    (which activates IO and TERMINAL)
+ENDASM
+\ ------------------------------\
 
 \ ------------------------------\
 CODE STOP                       \ stops multitasking, must to be used before downloading app
 \ ------------------------------\
-\ restore default action of primary DEFERred word SLEEP (assembly version)
 BW1 MOV #SLEEP,X                \ the ASM word SLEEP is only visible in mode assembler. 
     ADD #4,X                    \ X = BODY of SLEEP, X-2 = PFA of SLEEP
-    MOV X,-2(X)                 \ restore the default background
+    MOV X,-2(X)                 \ restore the default background: SLEEP
+    MOV #WARM,X
+    MOV #SYS_OUT,2(X)           \ default WARM is replaced by JMJ_BOX SYS_OUT (ended by default WARM)
+    BIC.B #RC5,&IR_IE           \ clear RC5_Int
+    BIC.B #RC5,&IR_IFG          \ clear RC5_Int flag
+    MOV #0,&LCD_TIM_CTL         \ stop LCD_TIMER
+    MOV #0,&WDT_TIM_CTL         \ stop WDT_TIMER
+    MOV #0,&WDT_TIM_CCTL0       \ clear CCIFG0 disable CCIE0
+    CALL #INIT_VECT             \ reset all vectors other than TERMINAL_int
 COLON                           \ restore default action of primary DEFERred word WARM (FORTH version)
-['] WARM >BODY IS WARM          \ restore the default WARM
 ECHO                            \
-." RC5toLCD is removed. type START to restart"
-COLD                            \ performs reset to reset all interrupt vectors.    
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM                           \ performs reset to reset all interrupt vectors.    
 ;
+\ ------------------------------\
 
 \ ------------------------------\
-CODE APP_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
+CODE SYS_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
 \ ------------------------------\
 \ LCD_TIM_CTL =  %0000 0010 1001 0100\$3C0
 \                    - -             \CNTL Counter lentgh \ 00 = 16 bits
@@ -1604,7 +2437,7 @@ CODE APP_INIT                   \ this routine completes the init of system, i.e
 \ ------------------------------\
 \ set LCD_TIM_ to make 50kHz PWM \ for LCD_Vo; works without interrupt
 \ ------------------------------\
-MOV #%1011010100,&LCD_TIM_CTL   \ SMCLK/8, up mode, clear timer, no int
+MOV #%10_1101_0100,&LCD_TIM_CTL \ SMCLK/8, up mode, clear timer, no int
 \    MOV #0,&LCD_TIM_EX0        \ predivide by 1 in LCD_TIM_EX0 register (8 MHZ)
 FREQ_KHZ @ 16000 = [IF]         \ if 16 MHz
     MOV #1,&LCD_TIM_EX0         \ predivide by 2 in LCD_TIM_EX0 register (16 MHZ)
@@ -1616,7 +2449,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \ ------------------------------\
 \ set LCD_TIM_.2 to generate PWM for LCD_Vo
 \ ------------------------------\
-    MOV #%01100000,&LCD_TIM_CCTLn \ output mode = set/reset \ clear CCIFG
+MOV #%0110_0000,&LCD_TIM_CCTLn  \ output mode = set/reset \ clear CCIFG
     MOV #10,&LCD_TIM_CCRn       \ contrast adjust : 10/20 ==> LCD_Vo = -0V6|+3V6 (Vcc=3V6)
 \    MOV #12,&LCD_TIM_CCRn        \ contrast adjust : 12/20 ==> LCD_Vo = -1V4|+3V3 (Vcc=3V3)
 \ ------------------------------\
@@ -1645,7 +2478,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \                         -     \ TAIE
 \                          -    \ TAIFG
 \ ------------------------------\
-    MOV #%0100010100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
+MOV #%01_0001_0100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
 \ ------------------------------\
 \                        000    \ TAxEX0
 \                        ---    \ TAIDEX    pre divisor
@@ -1711,23 +2544,213 @@ COLON                           \
     ['] CR >BODY IS CR          \ CR executes its default value
     ['] EMIT >BODY IS EMIT      \ EMIT executes its defaulte value
     ." RC5toLCD is running. Type STOP to quit" \ display message on FastForth Terminal
-    ABORT                       \ ...and end APP_INIT with ABORT, no return.
+    PWR_STATE ABORT             \ init DP and continues with ABORT
 ;                               \
+\ ------------------------------\
 
 \ ------------------------------\
 CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
 \ ------------------------------\
-MOV #SLEEP,X                    \ replace default background process
+MOV #SLEEP,X                    \ replace default background process SLEEP
 MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
 MOV #WARM,X                     \ replace default WARM
-MOV #APP_INIT,2(X)              \ by RC5toLCD APP_INIT
-MOV X,PC                        \ then execute it
+MOV #SYS_INIT,2(X)              \ by RC5toLCD SYS_INIT
+MOV X,PC                        \ then execute new WARM
 ENDCODE 
+\ ------------------------------\
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
 
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
 
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] CONSTANT [IF]
+\ https://forth-standard.org/standard/core/CONSTANT
+\ CONSTANT <name>     n --                      define a Forth CONSTANT 
+: CONSTANT 
+CREATE
+HI2LO
+MOV TOS,-2(W)           \   PFA = n
+MOV @PSP+,TOS
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] STATE [IF]
+\ https://forth-standard.org/standard/core/STATE
+\ STATE   -- a-addr       holds compiler state
+STATEADR CONSTANT STATE
+[THEN]
+
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+    MOV @IP+,PC \ 4
+THEN
+XOR #-1,TOS     \ 1 flag Z = 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE     \ immediate
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+\ https://forth-standard.org/standard/core/DEFER
+\ DEFER "<spaces>name"   --
+\ Skip leading space delimiters. Parse name delimited by a space.
+\ Create a definition for name with the execution semantics defined below.
+
+\ name Execution:   --
+\ Execute the xt that name is set to execute, i.e. NEXT (nothing),
+\ until the phrase ' word IS name is executed, causing a new value of xt to be assigned to name.
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(W)        \ CFA = MOV @PC+,PC = BR MOV @IP+,PC
+MOV #NEXT_ADR,-2(W)     \ PFA = address of MOV @IP+,PC to do nothing.
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEFER! [IF]
+\ https://forth-standard.org/standard/core/DEFERStore
+\ Set the word xt1 to execute xt2. An ambiguous condition exists if xt1 is not for a word defined by DEFER.
+CODE DEFER!             \ xt2 xt1 --
+MOV @PSP+,2(TOS)        \ -- xt1=CFA_DEFER          xt2 --> [CFA_DEFER+2]
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] IS [IF]
+\ https://forth-standard.org/standard/core/IS
+\ IS <name>        xt --
+\ used as is :
+\ DEFER DISPLAY                         create a "do nothing" definition (2 CELLS)
+\ inline command : ' U. IS DISPLAY      U. becomes the runtime of the word DISPLAY
+\ or in a definition : ... ['] U. IS DISPLAY ...
+\ KEY, EMIT, CR, ACCEPT and WARM are examples of DEFERred words
+\
+\ as IS replaces the PFA value of any word, it's a TO alias for VARIABLE and CONSTANT words...
+: IS
+STATE @
+IF  POSTPONE ['] POSTPONE DEFER! 
+ELSE ' DEFER! 
+THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+\ CODE 20uS           \ n --      8MHz version
+\ BEGIN               \ 4 + 16 ~ loop
+\     MOV #39,rDOCON   \ 39
+\     BEGIN           \ 4 ~ loop
+\         NOP
+\         SUB #1,rDOCON
+\     0=  UNTIL
+\     SUB #1,TOS      \ 1
+\ 0= UNTIL
+\ MOV #XDOCON,rDOCON  \ 2
+\ MOV @PSP+,TOS
+\ MOV @RSP+,IP        \
+\ ENDCODE
+
 CODE 20_US                      \ n --      n * 20 us
 BEGIN                           \ here we presume that LCD_TIM_IFG = 1...
     BEGIN
@@ -1741,8 +2764,8 @@ MOV @IP+,PC                     \ 4
 ENDCODE
 
 CODE TOP_LCD                    \ LCD Sample
-\                               \ if write : %xxxxWWWW --
-\                               \ if read  : -- %0000RRRR
+\                               \ if write : %xxxx_WWWW --
+\                               \ if read  : -- %0000_RRRR
     BIS.B #LCD_EN,&LCD_CMD_OUT  \ lcd_en 0-->1
     BIT.B #LCD_RW,&LCD_CMD_IN   \ lcd_rw test
 0= IF                           \ write LCD bits pattern
@@ -1763,8 +2786,8 @@ ENDCODE
 CODE LCD_WRC                    \ char --         Write Char
     BIS.B #LCD_RS,&LCD_CMD_OUT  \ lcd_rs=1
 BW1 SUB #2,PSP                  \
-    MOV TOS,0(PSP)              \ -- %xxxxLLLL %HHHHLLLL
-    RRUM #4,TOS                 \ -- %xxxxLLLL %xxxxHHHH
+    MOV TOS,0(PSP)              \ -- %xxxx_LLLL %HHHH_LLLL
+    RRUM #4,TOS                 \ -- %xxxx_LLLL %xxxx_HHHH
     BIC.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=0
     BIS.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as output
 COLON                           \ high level word starts here 
@@ -1804,11 +2827,11 @@ ENDCODE
 \ BW1 BIC.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as intput
 \     BIS.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=1
 \ COLON                           \ starts a FORTH word
-\     TOP_LCD 2 20_us             \ -- %0000HHHH
-\     TOP_LCD 2 20_us             \ -- %0000HHHH %0000LLLL
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH %0000_LLLL
 \ HI2LO                           \ switch from FORTH to assembler
-\     RLAM #4,0(PSP)              \ -- %HHHH0000 %0000LLLL
-\     ADD.B @PSP+,TOS             \ -- %HHHHLLLL
+\     RLAM #4,0(PSP)              \ -- %HHHH_0000 %0000_LLLL
+\     ADD.B @PSP+,TOS             \ -- %HHHH_LLLL
 \     MOV @RSP+,IP                \ restore IP saved by COLON
 \     MOV @IP+,PC                 \
 \ ENDCODE
@@ -1949,14 +2972,14 @@ MOV @PSP+,TOS                   \     -- TOS
 RET
 ENDASM
 
-\ ------------------------------\
+\ ******************************\
 ASM BACKGROUND                  \
-\ ------------------------------\
+\ ******************************\
 BEGIN
 \     ...                         \ insert here your background task
 \     ...                         \
 \     ...                         \
-    CALL &RXON                  \ comment this line to disable TERMINAL
+    CALL &RXON                  \ comment this line to disable TERMINAL_INPUT
     BIS &LPM_MODE,SR            \
 \ ******************************\
 \ here start all interrupts     \
@@ -1965,23 +2988,43 @@ BEGIN
 \ ******************************\
 AGAIN                           \
 ENDASM                          \
+\ ******************************\
+
+\ ------------------------------\
+ASM SYS_OUT                    \ system OUT init, replaces WARM at the request of STOP.
+\ ------------------------------\
+\     ...                         \ init specific I/O sys as you want
+\     ...                         \ before executing default WARM
+    MOV #WARM,X                 \ ['] WARM 
+    ADD #4,X                    \ >BODY
+    MOV X,PC                    \ EXECUTE    (which activates IO and TERMINAL)
+ENDASM
+\ ------------------------------\
 
 \ ------------------------------\
 CODE STOP                       \ stops multitasking, must to be used before downloading app
 \ ------------------------------\
-\ restore default action of primary DEFERred word SLEEP (assembly version)
 BW1 MOV #SLEEP,X                \ the ASM word SLEEP is only visible in mode assembler. 
     ADD #4,X                    \ X = BODY of SLEEP, X-2 = PFA of SLEEP
-    MOV X,-2(X)                 \ restore the default background
+    MOV X,-2(X)                 \ restore the default background: SLEEP
+    MOV #WARM,X
+    MOV #SYS_OUT,2(X)           \ default WARM is replaced by JMJ_BOX SYS_OUT (ended by default WARM)
+    BIC.B #RC5,&IR_IE           \ clear RC5_Int
+    BIC.B #RC5,&IR_IFG          \ clear RC5_Int flag
+    MOV #0,&LCD_TIM_CTL         \ stop LCD_TIMER
+    MOV #0,&WDT_TIM_CTL         \ stop WDT_TIMER
+    MOV #0,&WDT_TIM_CCTL0       \ clear CCIFG0 disable CCIE0
+    CALL #INIT_VECT             \ reset all vectors other than TERMINAL_int
 COLON                           \ restore default action of primary DEFERred word WARM (FORTH version)
-['] WARM >BODY IS WARM          \ restore the default WARM
 ECHO                            \
-." RC5toLCD is removed. type START to restart"
-COLD                            \ performs reset to reset all interrupt vectors.    
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM                           \ performs reset to reset all interrupt vectors.    
 ;
+\ ------------------------------\
 
 \ ------------------------------\
-CODE APP_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
+CODE SYS_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
 \ ------------------------------\
 \ LCD_TIM_CTL =  %0000 0010 1001 0100\$3C0
 \                    - -             \CNTL Counter lentgh \ 00 = 16 bits
@@ -2011,7 +3054,7 @@ CODE APP_INIT                   \ this routine completes the init of system, i.e
 \ ------------------------------\
 \ set LCD_TIM_ to make 50kHz PWM \ for LCD_Vo; works without interrupt
 \ ------------------------------\
-MOV #%1011010100,&LCD_TIM_CTL   \ SMCLK/8, up mode, clear timer, no int
+MOV #%10_1101_0100,&LCD_TIM_CTL \ SMCLK/8, up mode, clear timer, no int
 \    MOV #0,&LCD_TIM_EX0        \ predivide by 1 in LCD_TIM_EX0 register (8 MHZ)
 FREQ_KHZ @ 16000 = [IF]         \ if 16 MHz
     MOV #1,&LCD_TIM_EX0         \ predivide by 2 in LCD_TIM_EX0 register (16 MHZ)
@@ -2023,7 +3066,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \ ------------------------------\
 \ set LCD_TIM_.2 to generate PWM for LCD_Vo
 \ ------------------------------\
-    MOV #%01100000,&LCD_TIM_CCTLn \ output mode = set/reset \ clear CCIFG
+MOV #%0110_0000,&LCD_TIM_CCTLn  \ output mode = set/reset \ clear CCIFG
     MOV #10,&LCD_TIM_CCRn       \ contrast adjust : 10/20 ==> LCD_Vo = -0V6|+3V6 (Vcc=3V6)
 \    MOV #12,&LCD_TIM_CCRn        \ contrast adjust : 12/20 ==> LCD_Vo = -1V4|+3V3 (Vcc=3V3)
 \ ------------------------------\
@@ -2052,7 +3095,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \                         -     \ TAIE
 \                          -    \ TAIFG
 \ ------------------------------\
-    MOV #%0100010100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
+MOV #%01_0001_0100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
 \ ------------------------------\
 \                        000    \ TAxEX0
 \                        ---    \ TAIDEX    pre divisor
@@ -2118,42 +3161,232 @@ COLON                           \
     ['] CR >BODY IS CR          \ CR executes its default value
     ['] EMIT >BODY IS EMIT      \ EMIT executes its defaulte value
     ." RC5toLCD is running. Type STOP to quit" \ display message on FastForth Terminal
-    ABORT                       \ ...and end APP_INIT with ABORT, no return.
+    PWR_STATE ABORT             \ init DP and continues with ABORT
 ;                               \
+\ ------------------------------\
 
 \ ------------------------------\
 CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
 \ ------------------------------\
-MOV #SLEEP,X                    \ replace default background process
+MOV #SLEEP,X                    \ replace default background process SLEEP
 MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
 MOV #WARM,X                     \ replace default WARM
-MOV #APP_INIT,2(X)              \ by RC5toLCD APP_INIT
-MOV X,PC                        \ then execute it
+MOV #SYS_INIT,2(X)              \ by RC5toLCD SYS_INIT
+MOV X,PC                        \ then execute new WARM
 ENDCODE 
+\ ------------------------------\
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
 
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
 
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
-CODE 20_US                      \ n --      n * 20 us
-BEGIN                           \ here we presume that LCD_TIM_IFG = 1...
-    BEGIN
-        BIT #1,&LCD_TIM_CTL     \ 3
-    0<> UNTIL                   \ 2         loop until LCD_TIM_IFG set
-    BIC #1,&LCD_TIM_CTL         \ 3         clear LCD_TIM_IFG
-    SUB #1,TOS                  \ 1
-U< UNTIL                        \ 2 ...so add a dummy loop with U< instead of 0=
-MOV @PSP+,TOS                   \ 2
-MOV @IP+,PC                     \ 4
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
 ENDCODE
+[THEN]
 
-CODE TOP_LCD                    \ LCD Sample
-\                               \ if write : %xxxxWWWW --
-\                               \ if read  : -- %0000RRRR
-    BIS.B #LCD_EN,&LCD_CMD_OUT  \ lcd_en 0-->1
-    BIT.B #LCD_RW,&LCD_CMD_IN   \ lcd_rw test
-0= IF                           \ write LCD bits pattern
-    AND.B #LCD_DB,TOS           \ 
+[UNDEFINED] CONSTANT [IF]
+\ https://forth-standard.org/standard/core/CONSTANT
+\ CONSTANT <name>     n --                      define a Forth CONSTANT 
+: CONSTANT 
+CREATE
+HI2LO
+MOV TOS,-2(W)           \   PFA = n
+MOV @PSP+,TOS
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] STATE [IF]
+\ https://forth-standard.org/standard/core/STATE
+\ STATE   -- a-addr       holds compiler state
+STATEADR CONSTANT STATE
+[THEN]
+
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+    MOV @IP+,PC \ 4
+THEN
+XOR #-1,TOS     \ 1 flag Z = 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE     \ immediate
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+\ https://forth-standard.org/standard/core/DEFER
+\ DEFER "<spaces>name"   --
+\ Skip leading space delimiters. Parse name delimited by a space.
+\ Create a definition for name with the execution semantics defined below.
+
+\ name Execution:   --
+\ Execute the xt that name is set to execute, i.e. NEXT (nothing),
+\ until the phrase ' word IS name is executed, causing a new value of xt to be assigned to name.
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(W)        \ CFA = MOV @PC+,PC = BR MOV @IP+,PC
+MOV #NEXT_ADR,-2(W)     \ PFA = address of MOV @IP+,PC to do nothing.
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEFER! [IF]
+\ https://forth-standard.org/standard/core/DEFERStore
+\ Set the word xt1 to execute xt2. An ambiguous condition exists if xt1 is not for a word defined by DEFER.
+CODE DEFER!             \ xt2 xt1 --
+MOV @PSP+,2(TOS)        \ -- xt1=CFA_DEFER          xt2 --> [CFA_DEFER+2]
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] IS [IF]
+\ https://forth-standard.org/standard/core/IS
+\ IS <name>        xt --
+\ used as is :
+\ DEFER DISPLAY                         create a "do nothing" definition (2 CELLS)
+\ inline command : ' U. IS DISPLAY      U. becomes the runtime of the word DISPLAY
+\ or in a definition : ... ['] U. IS DISPLAY ...
+\ KEY, EMIT, CR, ACCEPT and WARM are examples of DEFERred words
+\
+\ as IS replaces the PFA value of any word, it's a TO alias for VARIABLE and CONSTANT words...
+: IS
+STATE @
+IF  POSTPONE ['] POSTPONE DEFER! 
+ELSE ' DEFER! 
+THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+\ CODE 20uS           \ n --      8MHz version
+\ BEGIN               \ 4 + 16 ~ loop
+\     MOV #39,rDOCON   \ 39
+\     BEGIN           \ 4 ~ loop
+\         NOP
+\         SUB #1,rDOCON
+\     0=  UNTIL
+\     SUB #1,TOS      \ 1
+\ 0= UNTIL
+\ MOV #XDOCON,rDOCON  \ 2
+\ MOV @PSP+,TOS
+\ MOV @RSP+,IP        \
+\ ENDCODE
+
+CODE 20_US                      \ n --      n * 20 us
+BEGIN                           \ here we presume that LCD_TIM_IFG = 1...
+    BEGIN
+        BIT #1,&LCD_TIM_CTL     \ 3
+    0<> UNTIL                   \ 2         loop until LCD_TIM_IFG set
+    BIC #1,&LCD_TIM_CTL         \ 3         clear LCD_TIM_IFG
+    SUB #1,TOS                  \ 1
+U< UNTIL                        \ 2 ...so add a dummy loop with U< instead of 0=
+MOV @PSP+,TOS                   \ 2
+MOV @IP+,PC                     \ 4
+ENDCODE
+
+CODE TOP_LCD                    \ LCD Sample
+\                               \ if write : %xxxx_WWWW --
+\                               \ if read  : -- %0000_RRRR
+    BIS.B #LCD_EN,&LCD_CMD_OUT  \ lcd_en 0-->1
+    BIT.B #LCD_RW,&LCD_CMD_IN   \ lcd_rw test
+0= IF                           \ write LCD bits pattern
+    AND.B #LCD_DB,TOS           \ 
     MOV.B TOS,&LCD_DB_OUT       \ send LCD_Data
     BIC.B #LCD_EN,&LCD_CMD_OUT  \ lcd_en 1-->0 ==> strobe data
     MOV @PSP+,TOS               \
@@ -2170,8 +3403,8 @@ ENDCODE
 CODE LCD_WRC                    \ char --         Write Char
     BIS.B #LCD_RS,&LCD_CMD_OUT  \ lcd_rs=1
 BW1 SUB #2,PSP                  \
-    MOV TOS,0(PSP)              \ -- %xxxxLLLL %HHHHLLLL
-    RRUM #4,TOS                 \ -- %xxxxLLLL %xxxxHHHH
+    MOV TOS,0(PSP)              \ -- %xxxx_LLLL %HHHH_LLLL
+    RRUM #4,TOS                 \ -- %xxxx_LLLL %xxxx_HHHH
     BIC.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=0
     BIS.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as output
 COLON                           \ high level word starts here 
@@ -2211,11 +3444,11 @@ ENDCODE
 \ BW1 BIC.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as intput
 \     BIS.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=1
 \ COLON                           \ starts a FORTH word
-\     TOP_LCD 2 20_us             \ -- %0000HHHH
-\     TOP_LCD 2 20_us             \ -- %0000HHHH %0000LLLL
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH %0000_LLLL
 \ HI2LO                           \ switch from FORTH to assembler
-\     RLAM #4,0(PSP)              \ -- %HHHH0000 %0000LLLL
-\     ADD.B @PSP+,TOS             \ -- %HHHHLLLL
+\     RLAM #4,0(PSP)              \ -- %HHHH_0000 %0000_LLLL
+\     ADD.B @PSP+,TOS             \ -- %HHHH_LLLL
 \     MOV @RSP+,IP                \ restore IP saved by COLON
 \     MOV @IP+,PC                 \
 \ ENDCODE
@@ -2356,14 +3589,14 @@ MOV @PSP+,TOS                   \     -- TOS
 RET
 ENDASM
 
-\ ------------------------------\
+\ ******************************\
 ASM BACKGROUND                  \
-\ ------------------------------\
+\ ******************************\
 BEGIN
 \     ...                         \ insert here your background task
 \     ...                         \
 \     ...                         \
-    CALL &RXON                  \ comment this line to disable TERMINAL
+    CALL &RXON                  \ comment this line to disable TERMINAL_INPUT
     BIS &LPM_MODE,SR            \
 \ ******************************\
 \ here start all interrupts     \
@@ -2372,23 +3605,43 @@ BEGIN
 \ ******************************\
 AGAIN                           \
 ENDASM                          \
+\ ******************************\
+
+\ ------------------------------\
+ASM SYS_OUT                    \ system OUT init, replaces WARM at the request of STOP.
+\ ------------------------------\
+\     ...                         \ init specific I/O sys as you want
+\     ...                         \ before executing default WARM
+    MOV #WARM,X                 \ ['] WARM 
+    ADD #4,X                    \ >BODY
+    MOV X,PC                    \ EXECUTE    (which activates IO and TERMINAL)
+ENDASM
+\ ------------------------------\
 
 \ ------------------------------\
 CODE STOP                       \ stops multitasking, must to be used before downloading app
 \ ------------------------------\
-\ restore default action of primary DEFERred word SLEEP (assembly version)
 BW1 MOV #SLEEP,X                \ the ASM word SLEEP is only visible in mode assembler. 
     ADD #4,X                    \ X = BODY of SLEEP, X-2 = PFA of SLEEP
-    MOV X,-2(X)                 \ restore the default background
+    MOV X,-2(X)                 \ restore the default background: SLEEP
+    MOV #WARM,X
+    MOV #SYS_OUT,2(X)           \ default WARM is replaced by JMJ_BOX SYS_OUT (ended by default WARM)
+    BIC.B #RC5,&IR_IE           \ clear RC5_Int
+    BIC.B #RC5,&IR_IFG          \ clear RC5_Int flag
+    MOV #0,&LCD_TIM_CTL         \ stop LCD_TIMER
+    MOV #0,&WDT_TIM_CTL         \ stop WDT_TIMER
+    MOV #0,&WDT_TIM_CCTL0       \ clear CCIFG0 disable CCIE0
+    CALL #INIT_VECT             \ reset all vectors other than TERMINAL_int
 COLON                           \ restore default action of primary DEFERred word WARM (FORTH version)
-['] WARM >BODY IS WARM          \ restore the default WARM
 ECHO                            \
-." RC5toLCD is removed. type START to restart"
-COLD                            \ performs reset to reset all interrupt vectors.    
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM                           \ performs reset to reset all interrupt vectors.    
 ;
+\ ------------------------------\
 
 \ ------------------------------\
-CODE APP_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
+CODE SYS_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
 \ ------------------------------\
 \ LCD_TIM_CTL =  %0000 0010 1001 0100\$3C0
 \                    - -             \CNTL Counter lentgh \ 00 = 16 bits
@@ -2418,7 +3671,7 @@ CODE APP_INIT                   \ this routine completes the init of system, i.e
 \ ------------------------------\
 \ set LCD_TIM_ to make 50kHz PWM \ for LCD_Vo; works without interrupt
 \ ------------------------------\
-MOV #%1011010100,&LCD_TIM_CTL   \ SMCLK/8, up mode, clear timer, no int
+MOV #%10_1101_0100,&LCD_TIM_CTL \ SMCLK/8, up mode, clear timer, no int
 \    MOV #0,&LCD_TIM_EX0        \ predivide by 1 in LCD_TIM_EX0 register (8 MHZ)
 FREQ_KHZ @ 16000 = [IF]         \ if 16 MHz
     MOV #1,&LCD_TIM_EX0         \ predivide by 2 in LCD_TIM_EX0 register (16 MHZ)
@@ -2430,7 +3683,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \ ------------------------------\
 \ set LCD_TIM_.2 to generate PWM for LCD_Vo
 \ ------------------------------\
-    MOV #%01100000,&LCD_TIM_CCTLn \ output mode = set/reset \ clear CCIFG
+MOV #%0110_0000,&LCD_TIM_CCTLn  \ output mode = set/reset \ clear CCIFG
     MOV #10,&LCD_TIM_CCRn       \ contrast adjust : 10/20 ==> LCD_Vo = -0V6|+3V6 (Vcc=3V6)
 \    MOV #12,&LCD_TIM_CCRn        \ contrast adjust : 12/20 ==> LCD_Vo = -1V4|+3V3 (Vcc=3V3)
 \ ------------------------------\
@@ -2459,7 +3712,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \                         -     \ TAIE
 \                          -    \ TAIFG
 \ ------------------------------\
-    MOV #%0100010100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
+MOV #%01_0001_0100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
 \ ------------------------------\
 \                        000    \ TAxEX0
 \                        ---    \ TAIDEX    pre divisor
@@ -2525,23 +3778,213 @@ COLON                           \
     ['] CR >BODY IS CR          \ CR executes its default value
     ['] EMIT >BODY IS EMIT      \ EMIT executes its defaulte value
     ." RC5toLCD is running. Type STOP to quit" \ display message on FastForth Terminal
-    ABORT                       \ ...and end APP_INIT with ABORT, no return.
+    PWR_STATE ABORT             \ init DP and continues with ABORT
 ;                               \
+\ ------------------------------\
 
 \ ------------------------------\
 CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
 \ ------------------------------\
-MOV #SLEEP,X                    \ replace default background process
+MOV #SLEEP,X                    \ replace default background process SLEEP
 MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
 MOV #WARM,X                     \ replace default WARM
-MOV #APP_INIT,2(X)              \ by RC5toLCD APP_INIT
-MOV X,PC                        \ then execute it
+MOV #SYS_INIT,2(X)              \ by RC5toLCD SYS_INIT
+MOV X,PC                        \ then execute new WARM
 ENDCODE 
+\ ------------------------------\
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
 
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
 
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] CONSTANT [IF]
+\ https://forth-standard.org/standard/core/CONSTANT
+\ CONSTANT <name>     n --                      define a Forth CONSTANT 
+: CONSTANT 
+CREATE
+HI2LO
+MOV TOS,-2(W)           \   PFA = n
+MOV @PSP+,TOS
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] STATE [IF]
+\ https://forth-standard.org/standard/core/STATE
+\ STATE   -- a-addr       holds compiler state
+STATEADR CONSTANT STATE
+[THEN]
+
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+    MOV @IP+,PC \ 4
+THEN
+XOR #-1,TOS     \ 1 flag Z = 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE     \ immediate
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+\ https://forth-standard.org/standard/core/DEFER
+\ DEFER "<spaces>name"   --
+\ Skip leading space delimiters. Parse name delimited by a space.
+\ Create a definition for name with the execution semantics defined below.
+
+\ name Execution:   --
+\ Execute the xt that name is set to execute, i.e. NEXT (nothing),
+\ until the phrase ' word IS name is executed, causing a new value of xt to be assigned to name.
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(W)        \ CFA = MOV @PC+,PC = BR MOV @IP+,PC
+MOV #NEXT_ADR,-2(W)     \ PFA = address of MOV @IP+,PC to do nothing.
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEFER! [IF]
+\ https://forth-standard.org/standard/core/DEFERStore
+\ Set the word xt1 to execute xt2. An ambiguous condition exists if xt1 is not for a word defined by DEFER.
+CODE DEFER!             \ xt2 xt1 --
+MOV @PSP+,2(TOS)        \ -- xt1=CFA_DEFER          xt2 --> [CFA_DEFER+2]
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] IS [IF]
+\ https://forth-standard.org/standard/core/IS
+\ IS <name>        xt --
+\ used as is :
+\ DEFER DISPLAY                         create a "do nothing" definition (2 CELLS)
+\ inline command : ' U. IS DISPLAY      U. becomes the runtime of the word DISPLAY
+\ or in a definition : ... ['] U. IS DISPLAY ...
+\ KEY, EMIT, CR, ACCEPT and WARM are examples of DEFERred words
+\
+\ as IS replaces the PFA value of any word, it's a TO alias for VARIABLE and CONSTANT words...
+: IS
+STATE @
+IF  POSTPONE ['] POSTPONE DEFER! 
+ELSE ' DEFER! 
+THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+\ CODE 20uS           \ n --      8MHz version
+\ BEGIN               \ 4 + 16 ~ loop
+\     MOV #39,rDOCON   \ 39
+\     BEGIN           \ 4 ~ loop
+\         NOP
+\         SUB #1,rDOCON
+\     0=  UNTIL
+\     SUB #1,TOS      \ 1
+\ 0= UNTIL
+\ MOV #XDOCON,rDOCON  \ 2
+\ MOV @PSP+,TOS
+\ MOV @RSP+,IP        \
+\ ENDCODE
+
 CODE 20_US                      \ n --      n * 20 us
 BEGIN                           \ here we presume that LCD_TIM_IFG = 1...
     BEGIN
@@ -2555,8 +3998,8 @@ MOV @IP+,PC                     \ 4
 ENDCODE
 
 CODE TOP_LCD                    \ LCD Sample
-\                               \ if write : %xxxxWWWW --
-\                               \ if read  : -- %0000RRRR
+\                               \ if write : %xxxx_WWWW --
+\                               \ if read  : -- %0000_RRRR
     BIS.B #LCD_EN,&LCD_CMD_OUT  \ lcd_en 0-->1
     BIT.B #LCD_RW,&LCD_CMD_IN   \ lcd_rw test
 0= IF                           \ write LCD bits pattern
@@ -2577,8 +4020,8 @@ ENDCODE
 CODE LCD_WRC                    \ char --         Write Char
     BIS.B #LCD_RS,&LCD_CMD_OUT  \ lcd_rs=1
 BW1 SUB #2,PSP                  \
-    MOV TOS,0(PSP)              \ -- %xxxxLLLL %HHHHLLLL
-    RRUM #4,TOS                 \ -- %xxxxLLLL %xxxxHHHH
+    MOV TOS,0(PSP)              \ -- %xxxx_LLLL %HHHH_LLLL
+    RRUM #4,TOS                 \ -- %xxxx_LLLL %xxxx_HHHH
     BIC.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=0
     BIS.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as output
 COLON                           \ high level word starts here 
@@ -2618,11 +4061,11 @@ ENDCODE
 \ BW1 BIC.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as intput
 \     BIS.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=1
 \ COLON                           \ starts a FORTH word
-\     TOP_LCD 2 20_us             \ -- %0000HHHH
-\     TOP_LCD 2 20_us             \ -- %0000HHHH %0000LLLL
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH %0000_LLLL
 \ HI2LO                           \ switch from FORTH to assembler
-\     RLAM #4,0(PSP)              \ -- %HHHH0000 %0000LLLL
-\     ADD.B @PSP+,TOS             \ -- %HHHHLLLL
+\     RLAM #4,0(PSP)              \ -- %HHHH_0000 %0000_LLLL
+\     ADD.B @PSP+,TOS             \ -- %HHHH_LLLL
 \     MOV @RSP+,IP                \ restore IP saved by COLON
 \     MOV @IP+,PC                 \
 \ ENDCODE
@@ -2763,14 +4206,14 @@ MOV @PSP+,TOS                   \     -- TOS
 RET
 ENDASM
 
-\ ------------------------------\
+\ ******************************\
 ASM BACKGROUND                  \
-\ ------------------------------\
+\ ******************************\
 BEGIN
 \     ...                         \ insert here your background task
 \     ...                         \
 \     ...                         \
-    CALL &RXON                  \ comment this line to disable TERMINAL
+    CALL &RXON                  \ comment this line to disable TERMINAL_INPUT
     BIS &LPM_MODE,SR            \
 \ ******************************\
 \ here start all interrupts     \
@@ -2779,23 +4222,43 @@ BEGIN
 \ ******************************\
 AGAIN                           \
 ENDASM                          \
+\ ******************************\
+
+\ ------------------------------\
+ASM SYS_OUT                    \ system OUT init, replaces WARM at the request of STOP.
+\ ------------------------------\
+\     ...                         \ init specific I/O sys as you want
+\     ...                         \ before executing default WARM
+    MOV #WARM,X                 \ ['] WARM 
+    ADD #4,X                    \ >BODY
+    MOV X,PC                    \ EXECUTE    (which activates IO and TERMINAL)
+ENDASM
+\ ------------------------------\
 
 \ ------------------------------\
 CODE STOP                       \ stops multitasking, must to be used before downloading app
 \ ------------------------------\
-\ restore default action of primary DEFERred word SLEEP (assembly version)
 BW1 MOV #SLEEP,X                \ the ASM word SLEEP is only visible in mode assembler. 
     ADD #4,X                    \ X = BODY of SLEEP, X-2 = PFA of SLEEP
-    MOV X,-2(X)                 \ restore the default background
+    MOV X,-2(X)                 \ restore the default background: SLEEP
+    MOV #WARM,X
+    MOV #SYS_OUT,2(X)           \ default WARM is replaced by JMJ_BOX SYS_OUT (ended by default WARM)
+    BIC.B #RC5,&IR_IE           \ clear RC5_Int
+    BIC.B #RC5,&IR_IFG          \ clear RC5_Int flag
+    MOV #0,&LCD_TIM_CTL         \ stop LCD_TIMER
+    MOV #0,&WDT_TIM_CTL         \ stop WDT_TIMER
+    MOV #0,&WDT_TIM_CCTL0       \ clear CCIFG0 disable CCIE0
+    CALL #INIT_VECT             \ reset all vectors other than TERMINAL_int
 COLON                           \ restore default action of primary DEFERred word WARM (FORTH version)
-['] WARM >BODY IS WARM          \ restore the default WARM
 ECHO                            \
-." RC5toLCD is removed. type START to restart"
-COLD                            \ performs reset to reset all interrupt vectors.    
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM                           \ performs reset to reset all interrupt vectors.    
 ;
+\ ------------------------------\
 
 \ ------------------------------\
-CODE APP_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
+CODE SYS_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
 \ ------------------------------\
 \ LCD_TIM_CTL =  %0000 0010 1001 0100\$3C0
 \                    - -             \CNTL Counter lentgh \ 00 = 16 bits
@@ -2825,7 +4288,7 @@ CODE APP_INIT                   \ this routine completes the init of system, i.e
 \ ------------------------------\
 \ set LCD_TIM_ to make 50kHz PWM \ for LCD_Vo; works without interrupt
 \ ------------------------------\
-MOV #%1011010100,&LCD_TIM_CTL   \ SMCLK/8, up mode, clear timer, no int
+MOV #%10_1101_0100,&LCD_TIM_CTL \ SMCLK/8, up mode, clear timer, no int
 \    MOV #0,&LCD_TIM_EX0        \ predivide by 1 in LCD_TIM_EX0 register (8 MHZ)
 FREQ_KHZ @ 16000 = [IF]         \ if 16 MHz
     MOV #1,&LCD_TIM_EX0         \ predivide by 2 in LCD_TIM_EX0 register (16 MHZ)
@@ -2837,7 +4300,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \ ------------------------------\
 \ set LCD_TIM_.2 to generate PWM for LCD_Vo
 \ ------------------------------\
-    MOV #%01100000,&LCD_TIM_CCTLn \ output mode = set/reset \ clear CCIFG
+MOV #%0110_0000,&LCD_TIM_CCTLn  \ output mode = set/reset \ clear CCIFG
     MOV #10,&LCD_TIM_CCRn       \ contrast adjust : 10/20 ==> LCD_Vo = -0V6|+3V6 (Vcc=3V6)
 \    MOV #12,&LCD_TIM_CCRn        \ contrast adjust : 12/20 ==> LCD_Vo = -1V4|+3V3 (Vcc=3V3)
 \ ------------------------------\
@@ -2866,7 +4329,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \                         -     \ TAIE
 \                          -    \ TAIFG
 \ ------------------------------\
-    MOV #%0100010100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
+MOV #%01_0001_0100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
 \ ------------------------------\
 \                        000    \ TAxEX0
 \                        ---    \ TAIDEX    pre divisor
@@ -2932,23 +4395,213 @@ COLON                           \
     ['] CR >BODY IS CR          \ CR executes its default value
     ['] EMIT >BODY IS EMIT      \ EMIT executes its defaulte value
     ." RC5toLCD is running. Type STOP to quit" \ display message on FastForth Terminal
-    ABORT                       \ ...and end APP_INIT with ABORT, no return.
+    PWR_STATE ABORT             \ init DP and continues with ABORT
 ;                               \
+\ ------------------------------\
 
 \ ------------------------------\
 CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
 \ ------------------------------\
-MOV #SLEEP,X                    \ replace default background process
+MOV #SLEEP,X                    \ replace default background process SLEEP
 MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
 MOV #WARM,X                     \ replace default WARM
-MOV #APP_INIT,2(X)              \ by RC5toLCD APP_INIT
-MOV X,PC                        \ then execute it
+MOV #SYS_INIT,2(X)              \ by RC5toLCD SYS_INIT
+MOV X,PC                        \ then execute new WARM
 ENDCODE 
+\ ------------------------------\
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
 
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
 
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] CONSTANT [IF]
+\ https://forth-standard.org/standard/core/CONSTANT
+\ CONSTANT <name>     n --                      define a Forth CONSTANT 
+: CONSTANT 
+CREATE
+HI2LO
+MOV TOS,-2(W)           \   PFA = n
+MOV @PSP+,TOS
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] STATE [IF]
+\ https://forth-standard.org/standard/core/STATE
+\ STATE   -- a-addr       holds compiler state
+STATEADR CONSTANT STATE
+[THEN]
+
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+    MOV @IP+,PC \ 4
+THEN
+XOR #-1,TOS     \ 1 flag Z = 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE     \ immediate
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+\ https://forth-standard.org/standard/core/DEFER
+\ DEFER "<spaces>name"   --
+\ Skip leading space delimiters. Parse name delimited by a space.
+\ Create a definition for name with the execution semantics defined below.
+
+\ name Execution:   --
+\ Execute the xt that name is set to execute, i.e. NEXT (nothing),
+\ until the phrase ' word IS name is executed, causing a new value of xt to be assigned to name.
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(W)        \ CFA = MOV @PC+,PC = BR MOV @IP+,PC
+MOV #NEXT_ADR,-2(W)     \ PFA = address of MOV @IP+,PC to do nothing.
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEFER! [IF]
+\ https://forth-standard.org/standard/core/DEFERStore
+\ Set the word xt1 to execute xt2. An ambiguous condition exists if xt1 is not for a word defined by DEFER.
+CODE DEFER!             \ xt2 xt1 --
+MOV @PSP+,2(TOS)        \ -- xt1=CFA_DEFER          xt2 --> [CFA_DEFER+2]
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] IS [IF]
+\ https://forth-standard.org/standard/core/IS
+\ IS <name>        xt --
+\ used as is :
+\ DEFER DISPLAY                         create a "do nothing" definition (2 CELLS)
+\ inline command : ' U. IS DISPLAY      U. becomes the runtime of the word DISPLAY
+\ or in a definition : ... ['] U. IS DISPLAY ...
+\ KEY, EMIT, CR, ACCEPT and WARM are examples of DEFERred words
+\
+\ as IS replaces the PFA value of any word, it's a TO alias for VARIABLE and CONSTANT words...
+: IS
+STATE @
+IF  POSTPONE ['] POSTPONE DEFER! 
+ELSE ' DEFER! 
+THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+\ CODE 20uS           \ n --      8MHz version
+\ BEGIN               \ 4 + 16 ~ loop
+\     MOV #39,rDOCON   \ 39
+\     BEGIN           \ 4 ~ loop
+\         NOP
+\         SUB #1,rDOCON
+\     0=  UNTIL
+\     SUB #1,TOS      \ 1
+\ 0= UNTIL
+\ MOV #XDOCON,rDOCON  \ 2
+\ MOV @PSP+,TOS
+\ MOV @RSP+,IP        \
+\ ENDCODE
+
 CODE 20_US                      \ n --      n * 20 us
 BEGIN                           \ here we presume that LCD_TIM_IFG = 1...
     BEGIN
@@ -2962,8 +4615,8 @@ MOV @IP+,PC                     \ 4
 ENDCODE
 
 CODE TOP_LCD                    \ LCD Sample
-\                               \ if write : %xxxxWWWW --
-\                               \ if read  : -- %0000RRRR
+\                               \ if write : %xxxx_WWWW --
+\                               \ if read  : -- %0000_RRRR
     BIS.B #LCD_EN,&LCD_CMD_OUT  \ lcd_en 0-->1
     BIT.B #LCD_RW,&LCD_CMD_IN   \ lcd_rw test
 0= IF                           \ write LCD bits pattern
@@ -2984,8 +4637,8 @@ ENDCODE
 CODE LCD_WRC                    \ char --         Write Char
     BIS.B #LCD_RS,&LCD_CMD_OUT  \ lcd_rs=1
 BW1 SUB #2,PSP                  \
-    MOV TOS,0(PSP)              \ -- %xxxxLLLL %HHHHLLLL
-    RRUM #4,TOS                 \ -- %xxxxLLLL %xxxxHHHH
+    MOV TOS,0(PSP)              \ -- %xxxx_LLLL %HHHH_LLLL
+    RRUM #4,TOS                 \ -- %xxxx_LLLL %xxxx_HHHH
     BIC.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=0
     BIS.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as output
 COLON                           \ high level word starts here 
@@ -3025,11 +4678,11 @@ ENDCODE
 \ BW1 BIC.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as intput
 \     BIS.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=1
 \ COLON                           \ starts a FORTH word
-\     TOP_LCD 2 20_us             \ -- %0000HHHH
-\     TOP_LCD 2 20_us             \ -- %0000HHHH %0000LLLL
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH %0000_LLLL
 \ HI2LO                           \ switch from FORTH to assembler
-\     RLAM #4,0(PSP)              \ -- %HHHH0000 %0000LLLL
-\     ADD.B @PSP+,TOS             \ -- %HHHHLLLL
+\     RLAM #4,0(PSP)              \ -- %HHHH_0000 %0000_LLLL
+\     ADD.B @PSP+,TOS             \ -- %HHHH_LLLL
 \     MOV @RSP+,IP                \ restore IP saved by COLON
 \     MOV @IP+,PC                 \
 \ ENDCODE
@@ -3170,14 +4823,14 @@ MOV @PSP+,TOS                   \     -- TOS
 RET
 ENDASM
 
-\ ------------------------------\
+\ ******************************\
 ASM BACKGROUND                  \
-\ ------------------------------\
+\ ******************************\
 BEGIN
 \     ...                         \ insert here your background task
 \     ...                         \
 \     ...                         \
-    CALL &RXON                  \ comment this line to disable TERMINAL
+    CALL &RXON                  \ comment this line to disable TERMINAL_INPUT
     BIS &LPM_MODE,SR            \
 \ ******************************\
 \ here start all interrupts     \
@@ -3186,23 +4839,43 @@ BEGIN
 \ ******************************\
 AGAIN                           \
 ENDASM                          \
+\ ******************************\
+
+\ ------------------------------\
+ASM SYS_OUT                    \ system OUT init, replaces WARM at the request of STOP.
+\ ------------------------------\
+\     ...                         \ init specific I/O sys as you want
+\     ...                         \ before executing default WARM
+    MOV #WARM,X                 \ ['] WARM 
+    ADD #4,X                    \ >BODY
+    MOV X,PC                    \ EXECUTE    (which activates IO and TERMINAL)
+ENDASM
+\ ------------------------------\
 
 \ ------------------------------\
 CODE STOP                       \ stops multitasking, must to be used before downloading app
 \ ------------------------------\
-\ restore default action of primary DEFERred word SLEEP (assembly version)
 BW1 MOV #SLEEP,X                \ the ASM word SLEEP is only visible in mode assembler. 
     ADD #4,X                    \ X = BODY of SLEEP, X-2 = PFA of SLEEP
-    MOV X,-2(X)                 \ restore the default background
+    MOV X,-2(X)                 \ restore the default background: SLEEP
+    MOV #WARM,X
+    MOV #SYS_OUT,2(X)           \ default WARM is replaced by JMJ_BOX SYS_OUT (ended by default WARM)
+    BIC.B #RC5,&IR_IE           \ clear RC5_Int
+    BIC.B #RC5,&IR_IFG          \ clear RC5_Int flag
+    MOV #0,&LCD_TIM_CTL         \ stop LCD_TIMER
+    MOV #0,&WDT_TIM_CTL         \ stop WDT_TIMER
+    MOV #0,&WDT_TIM_CCTL0       \ clear CCIFG0 disable CCIE0
+    CALL #INIT_VECT             \ reset all vectors other than TERMINAL_int
 COLON                           \ restore default action of primary DEFERred word WARM (FORTH version)
-['] WARM >BODY IS WARM          \ restore the default WARM
 ECHO                            \
-." RC5toLCD is removed. type START to restart"
-COLD                            \ performs reset to reset all interrupt vectors.    
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM                           \ performs reset to reset all interrupt vectors.    
 ;
+\ ------------------------------\
 
 \ ------------------------------\
-CODE APP_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
+CODE SYS_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
 \ ------------------------------\
 \ LCD_TIM_CTL =  %0000 0010 1001 0100\$3C0
 \                    - -             \CNTL Counter lentgh \ 00 = 16 bits
@@ -3232,7 +4905,7 @@ CODE APP_INIT                   \ this routine completes the init of system, i.e
 \ ------------------------------\
 \ set LCD_TIM_ to make 50kHz PWM \ for LCD_Vo; works without interrupt
 \ ------------------------------\
-MOV #%1011010100,&LCD_TIM_CTL   \ SMCLK/8, up mode, clear timer, no int
+MOV #%10_1101_0100,&LCD_TIM_CTL \ SMCLK/8, up mode, clear timer, no int
 \    MOV #0,&LCD_TIM_EX0        \ predivide by 1 in LCD_TIM_EX0 register (8 MHZ)
 FREQ_KHZ @ 16000 = [IF]         \ if 16 MHz
     MOV #1,&LCD_TIM_EX0         \ predivide by 2 in LCD_TIM_EX0 register (16 MHZ)
@@ -3244,7 +4917,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \ ------------------------------\
 \ set LCD_TIM_.2 to generate PWM for LCD_Vo
 \ ------------------------------\
-    MOV #%01100000,&LCD_TIM_CCTLn \ output mode = set/reset \ clear CCIFG
+MOV #%0110_0000,&LCD_TIM_CCTLn  \ output mode = set/reset \ clear CCIFG
     MOV #10,&LCD_TIM_CCRn       \ contrast adjust : 10/20 ==> LCD_Vo = -0V6|+3V6 (Vcc=3V6)
 \    MOV #12,&LCD_TIM_CCRn        \ contrast adjust : 12/20 ==> LCD_Vo = -1V4|+3V3 (Vcc=3V3)
 \ ------------------------------\
@@ -3273,7 +4946,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \                         -     \ TAIE
 \                          -    \ TAIFG
 \ ------------------------------\
-    MOV #%0100010100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
+MOV #%01_0001_0100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
 \ ------------------------------\
 \                        000    \ TAxEX0
 \                        ---    \ TAIDEX    pre divisor
@@ -3339,23 +5012,213 @@ COLON                           \
     ['] CR >BODY IS CR          \ CR executes its default value
     ['] EMIT >BODY IS EMIT      \ EMIT executes its defaulte value
     ." RC5toLCD is running. Type STOP to quit" \ display message on FastForth Terminal
-    ABORT                       \ ...and end APP_INIT with ABORT, no return.
+    PWR_STATE ABORT             \ init DP and continues with ABORT
 ;                               \
+\ ------------------------------\
 
 \ ------------------------------\
 CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
 \ ------------------------------\
-MOV #SLEEP,X                    \ replace default background process
+MOV #SLEEP,X                    \ replace default background process SLEEP
 MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
 MOV #WARM,X                     \ replace default WARM
-MOV #APP_INIT,2(X)              \ by RC5toLCD APP_INIT
-MOV X,PC                        \ then execute it
+MOV #SYS_INIT,2(X)              \ by RC5toLCD SYS_INIT
+MOV X,PC                        \ then execute new WARM
 ENDCODE 
+\ ------------------------------\
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
 
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
 
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] CONSTANT [IF]
+\ https://forth-standard.org/standard/core/CONSTANT
+\ CONSTANT <name>     n --                      define a Forth CONSTANT 
+: CONSTANT 
+CREATE
+HI2LO
+MOV TOS,-2(W)           \   PFA = n
+MOV @PSP+,TOS
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] STATE [IF]
+\ https://forth-standard.org/standard/core/STATE
+\ STATE   -- a-addr       holds compiler state
+STATEADR CONSTANT STATE
+[THEN]
+
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+    MOV @IP+,PC \ 4
+THEN
+XOR #-1,TOS     \ 1 flag Z = 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE     \ immediate
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+\ https://forth-standard.org/standard/core/DEFER
+\ DEFER "<spaces>name"   --
+\ Skip leading space delimiters. Parse name delimited by a space.
+\ Create a definition for name with the execution semantics defined below.
+
+\ name Execution:   --
+\ Execute the xt that name is set to execute, i.e. NEXT (nothing),
+\ until the phrase ' word IS name is executed, causing a new value of xt to be assigned to name.
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(W)        \ CFA = MOV @PC+,PC = BR MOV @IP+,PC
+MOV #NEXT_ADR,-2(W)     \ PFA = address of MOV @IP+,PC to do nothing.
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEFER! [IF]
+\ https://forth-standard.org/standard/core/DEFERStore
+\ Set the word xt1 to execute xt2. An ambiguous condition exists if xt1 is not for a word defined by DEFER.
+CODE DEFER!             \ xt2 xt1 --
+MOV @PSP+,2(TOS)        \ -- xt1=CFA_DEFER          xt2 --> [CFA_DEFER+2]
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] IS [IF]
+\ https://forth-standard.org/standard/core/IS
+\ IS <name>        xt --
+\ used as is :
+\ DEFER DISPLAY                         create a "do nothing" definition (2 CELLS)
+\ inline command : ' U. IS DISPLAY      U. becomes the runtime of the word DISPLAY
+\ or in a definition : ... ['] U. IS DISPLAY ...
+\ KEY, EMIT, CR, ACCEPT and WARM are examples of DEFERred words
+\
+\ as IS replaces the PFA value of any word, it's a TO alias for VARIABLE and CONSTANT words...
+: IS
+STATE @
+IF  POSTPONE ['] POSTPONE DEFER! 
+ELSE ' DEFER! 
+THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+\ CODE 20uS           \ n --      8MHz version
+\ BEGIN               \ 4 + 16 ~ loop
+\     MOV #39,rDOCON   \ 39
+\     BEGIN           \ 4 ~ loop
+\         NOP
+\         SUB #1,rDOCON
+\     0=  UNTIL
+\     SUB #1,TOS      \ 1
+\ 0= UNTIL
+\ MOV #XDOCON,rDOCON  \ 2
+\ MOV @PSP+,TOS
+\ MOV @RSP+,IP        \
+\ ENDCODE
+
 CODE 20_US                      \ n --      n * 20 us
 BEGIN                           \ here we presume that LCD_TIM_IFG = 1...
     BEGIN
@@ -3369,8 +5232,8 @@ MOV @IP+,PC                     \ 4
 ENDCODE
 
 CODE TOP_LCD                    \ LCD Sample
-\                               \ if write : %xxxxWWWW --
-\                               \ if read  : -- %0000RRRR
+\                               \ if write : %xxxx_WWWW --
+\                               \ if read  : -- %0000_RRRR
     BIS.B #LCD_EN,&LCD_CMD_OUT  \ lcd_en 0-->1
     BIT.B #LCD_RW,&LCD_CMD_IN   \ lcd_rw test
 0= IF                           \ write LCD bits pattern
@@ -3391,8 +5254,8 @@ ENDCODE
 CODE LCD_WRC                    \ char --         Write Char
     BIS.B #LCD_RS,&LCD_CMD_OUT  \ lcd_rs=1
 BW1 SUB #2,PSP                  \
-    MOV TOS,0(PSP)              \ -- %xxxxLLLL %HHHHLLLL
-    RRUM #4,TOS                 \ -- %xxxxLLLL %xxxxHHHH
+    MOV TOS,0(PSP)              \ -- %xxxx_LLLL %HHHH_LLLL
+    RRUM #4,TOS                 \ -- %xxxx_LLLL %xxxx_HHHH
     BIC.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=0
     BIS.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as output
 COLON                           \ high level word starts here 
@@ -3432,11 +5295,11 @@ ENDCODE
 \ BW1 BIC.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as intput
 \     BIS.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=1
 \ COLON                           \ starts a FORTH word
-\     TOP_LCD 2 20_us             \ -- %0000HHHH
-\     TOP_LCD 2 20_us             \ -- %0000HHHH %0000LLLL
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH %0000_LLLL
 \ HI2LO                           \ switch from FORTH to assembler
-\     RLAM #4,0(PSP)              \ -- %HHHH0000 %0000LLLL
-\     ADD.B @PSP+,TOS             \ -- %HHHHLLLL
+\     RLAM #4,0(PSP)              \ -- %HHHH_0000 %0000_LLLL
+\     ADD.B @PSP+,TOS             \ -- %HHHH_LLLL
 \     MOV @RSP+,IP                \ restore IP saved by COLON
 \     MOV @IP+,PC                 \
 \ ENDCODE
@@ -3577,14 +5440,14 @@ MOV @PSP+,TOS                   \     -- TOS
 RET
 ENDASM
 
-\ ------------------------------\
+\ ******************************\
 ASM BACKGROUND                  \
-\ ------------------------------\
+\ ******************************\
 BEGIN
 \     ...                         \ insert here your background task
 \     ...                         \
 \     ...                         \
-    CALL &RXON                  \ comment this line to disable TERMINAL
+    CALL &RXON                  \ comment this line to disable TERMINAL_INPUT
     BIS &LPM_MODE,SR            \
 \ ******************************\
 \ here start all interrupts     \
@@ -3593,23 +5456,43 @@ BEGIN
 \ ******************************\
 AGAIN                           \
 ENDASM                          \
+\ ******************************\
+
+\ ------------------------------\
+ASM SYS_OUT                    \ system OUT init, replaces WARM at the request of STOP.
+\ ------------------------------\
+\     ...                         \ init specific I/O sys as you want
+\     ...                         \ before executing default WARM
+    MOV #WARM,X                 \ ['] WARM 
+    ADD #4,X                    \ >BODY
+    MOV X,PC                    \ EXECUTE    (which activates IO and TERMINAL)
+ENDASM
+\ ------------------------------\
 
 \ ------------------------------\
 CODE STOP                       \ stops multitasking, must to be used before downloading app
 \ ------------------------------\
-\ restore default action of primary DEFERred word SLEEP (assembly version)
 BW1 MOV #SLEEP,X                \ the ASM word SLEEP is only visible in mode assembler. 
     ADD #4,X                    \ X = BODY of SLEEP, X-2 = PFA of SLEEP
-    MOV X,-2(X)                 \ restore the default background
+    MOV X,-2(X)                 \ restore the default background: SLEEP
+    MOV #WARM,X
+    MOV #SYS_OUT,2(X)           \ default WARM is replaced by JMJ_BOX SYS_OUT (ended by default WARM)
+    BIC.B #RC5,&IR_IE           \ clear RC5_Int
+    BIC.B #RC5,&IR_IFG          \ clear RC5_Int flag
+    MOV #0,&LCD_TIM_CTL         \ stop LCD_TIMER
+    MOV #0,&WDT_TIM_CTL         \ stop WDT_TIMER
+    MOV #0,&WDT_TIM_CCTL0       \ clear CCIFG0 disable CCIE0
+    CALL #INIT_VECT             \ reset all vectors other than TERMINAL_int
 COLON                           \ restore default action of primary DEFERred word WARM (FORTH version)
-['] WARM >BODY IS WARM          \ restore the default WARM
 ECHO                            \
-." RC5toLCD is removed. type START to restart"
-COLD                            \ performs reset to reset all interrupt vectors.    
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM                           \ performs reset to reset all interrupt vectors.    
 ;
+\ ------------------------------\
 
 \ ------------------------------\
-CODE APP_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
+CODE SYS_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
 \ ------------------------------\
 \ LCD_TIM_CTL =  %0000 0010 1001 0100\$3C0
 \                    - -             \CNTL Counter lentgh \ 00 = 16 bits
@@ -3639,7 +5522,7 @@ CODE APP_INIT                   \ this routine completes the init of system, i.e
 \ ------------------------------\
 \ set LCD_TIM_ to make 50kHz PWM \ for LCD_Vo; works without interrupt
 \ ------------------------------\
-MOV #%1011010100,&LCD_TIM_CTL   \ SMCLK/8, up mode, clear timer, no int
+MOV #%10_1101_0100,&LCD_TIM_CTL \ SMCLK/8, up mode, clear timer, no int
 \    MOV #0,&LCD_TIM_EX0        \ predivide by 1 in LCD_TIM_EX0 register (8 MHZ)
 FREQ_KHZ @ 16000 = [IF]         \ if 16 MHz
     MOV #1,&LCD_TIM_EX0         \ predivide by 2 in LCD_TIM_EX0 register (16 MHZ)
@@ -3651,7 +5534,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \ ------------------------------\
 \ set LCD_TIM_.2 to generate PWM for LCD_Vo
 \ ------------------------------\
-    MOV #%01100000,&LCD_TIM_CCTLn \ output mode = set/reset \ clear CCIFG
+MOV #%0110_0000,&LCD_TIM_CCTLn  \ output mode = set/reset \ clear CCIFG
     MOV #10,&LCD_TIM_CCRn       \ contrast adjust : 10/20 ==> LCD_Vo = -0V6|+3V6 (Vcc=3V6)
 \    MOV #12,&LCD_TIM_CCRn        \ contrast adjust : 12/20 ==> LCD_Vo = -1V4|+3V3 (Vcc=3V3)
 \ ------------------------------\
@@ -3680,7 +5563,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \                         -     \ TAIE
 \                          -    \ TAIFG
 \ ------------------------------\
-    MOV #%0100010100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
+MOV #%01_0001_0100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
 \ ------------------------------\
 \                        000    \ TAxEX0
 \                        ---    \ TAIDEX    pre divisor
@@ -3746,23 +5629,213 @@ COLON                           \
     ['] CR >BODY IS CR          \ CR executes its default value
     ['] EMIT >BODY IS EMIT      \ EMIT executes its defaulte value
     ." RC5toLCD is running. Type STOP to quit" \ display message on FastForth Terminal
-    ABORT                       \ ...and end APP_INIT with ABORT, no return.
+    PWR_STATE ABORT             \ init DP and continues with ABORT
 ;                               \
+\ ------------------------------\
 
 \ ------------------------------\
 CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
 \ ------------------------------\
-MOV #SLEEP,X                    \ replace default background process
+MOV #SLEEP,X                    \ replace default background process SLEEP
 MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
 MOV #WARM,X                     \ replace default WARM
-MOV #APP_INIT,2(X)              \ by RC5toLCD APP_INIT
-MOV X,PC                        \ then execute it
+MOV #SYS_INIT,2(X)              \ by RC5toLCD SYS_INIT
+MOV X,PC                        \ then execute new WARM
 ENDCODE 
+\ ------------------------------\
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
 
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
 
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] CONSTANT [IF]
+\ https://forth-standard.org/standard/core/CONSTANT
+\ CONSTANT <name>     n --                      define a Forth CONSTANT 
+: CONSTANT 
+CREATE
+HI2LO
+MOV TOS,-2(W)           \   PFA = n
+MOV @PSP+,TOS
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] STATE [IF]
+\ https://forth-standard.org/standard/core/STATE
+\ STATE   -- a-addr       holds compiler state
+STATEADR CONSTANT STATE
+[THEN]
+
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+    MOV @IP+,PC \ 4
+THEN
+XOR #-1,TOS     \ 1 flag Z = 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE     \ immediate
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+\ https://forth-standard.org/standard/core/DEFER
+\ DEFER "<spaces>name"   --
+\ Skip leading space delimiters. Parse name delimited by a space.
+\ Create a definition for name with the execution semantics defined below.
+
+\ name Execution:   --
+\ Execute the xt that name is set to execute, i.e. NEXT (nothing),
+\ until the phrase ' word IS name is executed, causing a new value of xt to be assigned to name.
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(W)        \ CFA = MOV @PC+,PC = BR MOV @IP+,PC
+MOV #NEXT_ADR,-2(W)     \ PFA = address of MOV @IP+,PC to do nothing.
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEFER! [IF]
+\ https://forth-standard.org/standard/core/DEFERStore
+\ Set the word xt1 to execute xt2. An ambiguous condition exists if xt1 is not for a word defined by DEFER.
+CODE DEFER!             \ xt2 xt1 --
+MOV @PSP+,2(TOS)        \ -- xt1=CFA_DEFER          xt2 --> [CFA_DEFER+2]
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] IS [IF]
+\ https://forth-standard.org/standard/core/IS
+\ IS <name>        xt --
+\ used as is :
+\ DEFER DISPLAY                         create a "do nothing" definition (2 CELLS)
+\ inline command : ' U. IS DISPLAY      U. becomes the runtime of the word DISPLAY
+\ or in a definition : ... ['] U. IS DISPLAY ...
+\ KEY, EMIT, CR, ACCEPT and WARM are examples of DEFERred words
+\
+\ as IS replaces the PFA value of any word, it's a TO alias for VARIABLE and CONSTANT words...
+: IS
+STATE @
+IF  POSTPONE ['] POSTPONE DEFER! 
+ELSE ' DEFER! 
+THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+\ CODE 20uS           \ n --      8MHz version
+\ BEGIN               \ 4 + 16 ~ loop
+\     MOV #39,rDOCON   \ 39
+\     BEGIN           \ 4 ~ loop
+\         NOP
+\         SUB #1,rDOCON
+\     0=  UNTIL
+\     SUB #1,TOS      \ 1
+\ 0= UNTIL
+\ MOV #XDOCON,rDOCON  \ 2
+\ MOV @PSP+,TOS
+\ MOV @RSP+,IP        \
+\ ENDCODE
+
 CODE 20_US                      \ n --      n * 20 us
 BEGIN                           \ here we presume that LCD_TIM_IFG = 1...
     BEGIN
@@ -3776,8 +5849,8 @@ MOV @IP+,PC                     \ 4
 ENDCODE
 
 CODE TOP_LCD                    \ LCD Sample
-\                               \ if write : %xxxxWWWW --
-\                               \ if read  : -- %0000RRRR
+\                               \ if write : %xxxx_WWWW --
+\                               \ if read  : -- %0000_RRRR
     BIS.B #LCD_EN,&LCD_CMD_OUT  \ lcd_en 0-->1
     BIT.B #LCD_RW,&LCD_CMD_IN   \ lcd_rw test
 0= IF                           \ write LCD bits pattern
@@ -3798,8 +5871,8 @@ ENDCODE
 CODE LCD_WRC                    \ char --         Write Char
     BIS.B #LCD_RS,&LCD_CMD_OUT  \ lcd_rs=1
 BW1 SUB #2,PSP                  \
-    MOV TOS,0(PSP)              \ -- %xxxxLLLL %HHHHLLLL
-    RRUM #4,TOS                 \ -- %xxxxLLLL %xxxxHHHH
+    MOV TOS,0(PSP)              \ -- %xxxx_LLLL %HHHH_LLLL
+    RRUM #4,TOS                 \ -- %xxxx_LLLL %xxxx_HHHH
     BIC.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=0
     BIS.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as output
 COLON                           \ high level word starts here 
@@ -3839,11 +5912,11 @@ ENDCODE
 \ BW1 BIC.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as intput
 \     BIS.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=1
 \ COLON                           \ starts a FORTH word
-\     TOP_LCD 2 20_us             \ -- %0000HHHH
-\     TOP_LCD 2 20_us             \ -- %0000HHHH %0000LLLL
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH %0000_LLLL
 \ HI2LO                           \ switch from FORTH to assembler
-\     RLAM #4,0(PSP)              \ -- %HHHH0000 %0000LLLL
-\     ADD.B @PSP+,TOS             \ -- %HHHHLLLL
+\     RLAM #4,0(PSP)              \ -- %HHHH_0000 %0000_LLLL
+\     ADD.B @PSP+,TOS             \ -- %HHHH_LLLL
 \     MOV @RSP+,IP                \ restore IP saved by COLON
 \     MOV @IP+,PC                 \
 \ ENDCODE
@@ -3984,14 +6057,14 @@ MOV @PSP+,TOS                   \     -- TOS
 RET
 ENDASM
 
-\ ------------------------------\
+\ ******************************\
 ASM BACKGROUND                  \
-\ ------------------------------\
+\ ******************************\
 BEGIN
 \     ...                         \ insert here your background task
 \     ...                         \
 \     ...                         \
-    CALL &RXON                  \ comment this line to disable TERMINAL
+    CALL &RXON                  \ comment this line to disable TERMINAL_INPUT
     BIS &LPM_MODE,SR            \
 \ ******************************\
 \ here start all interrupts     \
@@ -4000,23 +6073,43 @@ BEGIN
 \ ******************************\
 AGAIN                           \
 ENDASM                          \
+\ ******************************\
+
+\ ------------------------------\
+ASM SYS_OUT                    \ system OUT init, replaces WARM at the request of STOP.
+\ ------------------------------\
+\     ...                         \ init specific I/O sys as you want
+\     ...                         \ before executing default WARM
+    MOV #WARM,X                 \ ['] WARM 
+    ADD #4,X                    \ >BODY
+    MOV X,PC                    \ EXECUTE    (which activates IO and TERMINAL)
+ENDASM
+\ ------------------------------\
 
 \ ------------------------------\
 CODE STOP                       \ stops multitasking, must to be used before downloading app
 \ ------------------------------\
-\ restore default action of primary DEFERred word SLEEP (assembly version)
 BW1 MOV #SLEEP,X                \ the ASM word SLEEP is only visible in mode assembler. 
     ADD #4,X                    \ X = BODY of SLEEP, X-2 = PFA of SLEEP
-    MOV X,-2(X)                 \ restore the default background
+    MOV X,-2(X)                 \ restore the default background: SLEEP
+    MOV #WARM,X
+    MOV #SYS_OUT,2(X)           \ default WARM is replaced by JMJ_BOX SYS_OUT (ended by default WARM)
+    BIC.B #RC5,&IR_IE           \ clear RC5_Int
+    BIC.B #RC5,&IR_IFG          \ clear RC5_Int flag
+    MOV #0,&LCD_TIM_CTL         \ stop LCD_TIMER
+    MOV #0,&WDT_TIM_CTL         \ stop WDT_TIMER
+    MOV #0,&WDT_TIM_CCTL0       \ clear CCIFG0 disable CCIE0
+    CALL #INIT_VECT             \ reset all vectors other than TERMINAL_int
 COLON                           \ restore default action of primary DEFERred word WARM (FORTH version)
-['] WARM >BODY IS WARM          \ restore the default WARM
 ECHO                            \
-." RC5toLCD is removed. type START to restart"
-COLD                            \ performs reset to reset all interrupt vectors.    
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM                           \ performs reset to reset all interrupt vectors.    
 ;
+\ ------------------------------\
 
 \ ------------------------------\
-CODE APP_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
+CODE SYS_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
 \ ------------------------------\
 \ LCD_TIM_CTL =  %0000 0010 1001 0100\$3C0
 \                    - -             \CNTL Counter lentgh \ 00 = 16 bits
@@ -4046,7 +6139,7 @@ CODE APP_INIT                   \ this routine completes the init of system, i.e
 \ ------------------------------\
 \ set LCD_TIM_ to make 50kHz PWM \ for LCD_Vo; works without interrupt
 \ ------------------------------\
-MOV #%1011010100,&LCD_TIM_CTL   \ SMCLK/8, up mode, clear timer, no int
+MOV #%10_1101_0100,&LCD_TIM_CTL \ SMCLK/8, up mode, clear timer, no int
 \    MOV #0,&LCD_TIM_EX0        \ predivide by 1 in LCD_TIM_EX0 register (8 MHZ)
 FREQ_KHZ @ 16000 = [IF]         \ if 16 MHz
     MOV #1,&LCD_TIM_EX0         \ predivide by 2 in LCD_TIM_EX0 register (16 MHZ)
@@ -4058,7 +6151,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \ ------------------------------\
 \ set LCD_TIM_.2 to generate PWM for LCD_Vo
 \ ------------------------------\
-    MOV #%01100000,&LCD_TIM_CCTLn \ output mode = set/reset \ clear CCIFG
+MOV #%0110_0000,&LCD_TIM_CCTLn  \ output mode = set/reset \ clear CCIFG
     MOV #10,&LCD_TIM_CCRn       \ contrast adjust : 10/20 ==> LCD_Vo = -0V6|+3V6 (Vcc=3V6)
 \    MOV #12,&LCD_TIM_CCRn        \ contrast adjust : 12/20 ==> LCD_Vo = -1V4|+3V3 (Vcc=3V3)
 \ ------------------------------\
@@ -4087,7 +6180,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \                         -     \ TAIE
 \                          -    \ TAIFG
 \ ------------------------------\
-    MOV #%0100010100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
+MOV #%01_0001_0100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
 \ ------------------------------\
 \                        000    \ TAxEX0
 \                        ---    \ TAIDEX    pre divisor
@@ -4153,23 +6246,213 @@ COLON                           \
     ['] CR >BODY IS CR          \ CR executes its default value
     ['] EMIT >BODY IS EMIT      \ EMIT executes its defaulte value
     ." RC5toLCD is running. Type STOP to quit" \ display message on FastForth Terminal
-    ABORT                       \ ...and end APP_INIT with ABORT, no return.
+    PWR_STATE ABORT             \ init DP and continues with ABORT
 ;                               \
+\ ------------------------------\
 
 \ ------------------------------\
 CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
 \ ------------------------------\
-MOV #SLEEP,X                    \ replace default background process
+MOV #SLEEP,X                    \ replace default background process SLEEP
 MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
 MOV #WARM,X                     \ replace default WARM
-MOV #APP_INIT,2(X)              \ by RC5toLCD APP_INIT
-MOV X,PC                        \ then execute it
+MOV #SYS_INIT,2(X)              \ by RC5toLCD SYS_INIT
+MOV X,PC                        \ then execute new WARM
 ENDCODE 
+\ ------------------------------\
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
 
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
 
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] CONSTANT [IF]
+\ https://forth-standard.org/standard/core/CONSTANT
+\ CONSTANT <name>     n --                      define a Forth CONSTANT 
+: CONSTANT 
+CREATE
+HI2LO
+MOV TOS,-2(W)           \   PFA = n
+MOV @PSP+,TOS
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] STATE [IF]
+\ https://forth-standard.org/standard/core/STATE
+\ STATE   -- a-addr       holds compiler state
+STATEADR CONSTANT STATE
+[THEN]
+
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+    MOV @IP+,PC \ 4
+THEN
+XOR #-1,TOS     \ 1 flag Z = 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE     \ immediate
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+\ https://forth-standard.org/standard/core/DEFER
+\ DEFER "<spaces>name"   --
+\ Skip leading space delimiters. Parse name delimited by a space.
+\ Create a definition for name with the execution semantics defined below.
+
+\ name Execution:   --
+\ Execute the xt that name is set to execute, i.e. NEXT (nothing),
+\ until the phrase ' word IS name is executed, causing a new value of xt to be assigned to name.
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(W)        \ CFA = MOV @PC+,PC = BR MOV @IP+,PC
+MOV #NEXT_ADR,-2(W)     \ PFA = address of MOV @IP+,PC to do nothing.
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEFER! [IF]
+\ https://forth-standard.org/standard/core/DEFERStore
+\ Set the word xt1 to execute xt2. An ambiguous condition exists if xt1 is not for a word defined by DEFER.
+CODE DEFER!             \ xt2 xt1 --
+MOV @PSP+,2(TOS)        \ -- xt1=CFA_DEFER          xt2 --> [CFA_DEFER+2]
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] IS [IF]
+\ https://forth-standard.org/standard/core/IS
+\ IS <name>        xt --
+\ used as is :
+\ DEFER DISPLAY                         create a "do nothing" definition (2 CELLS)
+\ inline command : ' U. IS DISPLAY      U. becomes the runtime of the word DISPLAY
+\ or in a definition : ... ['] U. IS DISPLAY ...
+\ KEY, EMIT, CR, ACCEPT and WARM are examples of DEFERred words
+\
+\ as IS replaces the PFA value of any word, it's a TO alias for VARIABLE and CONSTANT words...
+: IS
+STATE @
+IF  POSTPONE ['] POSTPONE DEFER! 
+ELSE ' DEFER! 
+THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+\ CODE 20uS           \ n --      8MHz version
+\ BEGIN               \ 4 + 16 ~ loop
+\     MOV #39,rDOCON   \ 39
+\     BEGIN           \ 4 ~ loop
+\         NOP
+\         SUB #1,rDOCON
+\     0=  UNTIL
+\     SUB #1,TOS      \ 1
+\ 0= UNTIL
+\ MOV #XDOCON,rDOCON  \ 2
+\ MOV @PSP+,TOS
+\ MOV @RSP+,IP        \
+\ ENDCODE
+
 CODE 20_US                      \ n --      n * 20 us
 BEGIN                           \ here we presume that LCD_TIM_IFG = 1...
     BEGIN
@@ -4183,8 +6466,8 @@ MOV @IP+,PC                     \ 4
 ENDCODE
 
 CODE TOP_LCD                    \ LCD Sample
-\                               \ if write : %xxxxWWWW --
-\                               \ if read  : -- %0000RRRR
+\                               \ if write : %xxxx_WWWW --
+\                               \ if read  : -- %0000_RRRR
     BIS.B #LCD_EN,&LCD_CMD_OUT  \ lcd_en 0-->1
     BIT.B #LCD_RW,&LCD_CMD_IN   \ lcd_rw test
 0= IF                           \ write LCD bits pattern
@@ -4205,8 +6488,8 @@ ENDCODE
 CODE LCD_WRC                    \ char --         Write Char
     BIS.B #LCD_RS,&LCD_CMD_OUT  \ lcd_rs=1
 BW1 SUB #2,PSP                  \
-    MOV TOS,0(PSP)              \ -- %xxxxLLLL %HHHHLLLL
-    RRUM #4,TOS                 \ -- %xxxxLLLL %xxxxHHHH
+    MOV TOS,0(PSP)              \ -- %xxxx_LLLL %HHHH_LLLL
+    RRUM #4,TOS                 \ -- %xxxx_LLLL %xxxx_HHHH
     BIC.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=0
     BIS.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as output
 COLON                           \ high level word starts here 
@@ -4246,11 +6529,11 @@ ENDCODE
 \ BW1 BIC.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as intput
 \     BIS.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=1
 \ COLON                           \ starts a FORTH word
-\     TOP_LCD 2 20_us             \ -- %0000HHHH
-\     TOP_LCD 2 20_us             \ -- %0000HHHH %0000LLLL
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH %0000_LLLL
 \ HI2LO                           \ switch from FORTH to assembler
-\     RLAM #4,0(PSP)              \ -- %HHHH0000 %0000LLLL
-\     ADD.B @PSP+,TOS             \ -- %HHHHLLLL
+\     RLAM #4,0(PSP)              \ -- %HHHH_0000 %0000_LLLL
+\     ADD.B @PSP+,TOS             \ -- %HHHH_LLLL
 \     MOV @RSP+,IP                \ restore IP saved by COLON
 \     MOV @IP+,PC                 \
 \ ENDCODE
@@ -4391,14 +6674,14 @@ MOV @PSP+,TOS                   \     -- TOS
 RET
 ENDASM
 
-\ ------------------------------\
+\ ******************************\
 ASM BACKGROUND                  \
-\ ------------------------------\
+\ ******************************\
 BEGIN
 \     ...                         \ insert here your background task
 \     ...                         \
 \     ...                         \
-    CALL &RXON                  \ comment this line to disable TERMINAL
+    CALL &RXON                  \ comment this line to disable TERMINAL_INPUT
     BIS &LPM_MODE,SR            \
 \ ******************************\
 \ here start all interrupts     \
@@ -4407,23 +6690,43 @@ BEGIN
 \ ******************************\
 AGAIN                           \
 ENDASM                          \
+\ ******************************\
+
+\ ------------------------------\
+ASM SYS_OUT                    \ system OUT init, replaces WARM at the request of STOP.
+\ ------------------------------\
+\     ...                         \ init specific I/O sys as you want
+\     ...                         \ before executing default WARM
+    MOV #WARM,X                 \ ['] WARM 
+    ADD #4,X                    \ >BODY
+    MOV X,PC                    \ EXECUTE    (which activates IO and TERMINAL)
+ENDASM
+\ ------------------------------\
 
 \ ------------------------------\
 CODE STOP                       \ stops multitasking, must to be used before downloading app
 \ ------------------------------\
-\ restore default action of primary DEFERred word SLEEP (assembly version)
 BW1 MOV #SLEEP,X                \ the ASM word SLEEP is only visible in mode assembler. 
     ADD #4,X                    \ X = BODY of SLEEP, X-2 = PFA of SLEEP
-    MOV X,-2(X)                 \ restore the default background
+    MOV X,-2(X)                 \ restore the default background: SLEEP
+    MOV #WARM,X
+    MOV #SYS_OUT,2(X)           \ default WARM is replaced by JMJ_BOX SYS_OUT (ended by default WARM)
+    BIC.B #RC5,&IR_IE           \ clear RC5_Int
+    BIC.B #RC5,&IR_IFG          \ clear RC5_Int flag
+    MOV #0,&LCD_TIM_CTL         \ stop LCD_TIMER
+    MOV #0,&WDT_TIM_CTL         \ stop WDT_TIMER
+    MOV #0,&WDT_TIM_CCTL0       \ clear CCIFG0 disable CCIE0
+    CALL #INIT_VECT             \ reset all vectors other than TERMINAL_int
 COLON                           \ restore default action of primary DEFERred word WARM (FORTH version)
-['] WARM >BODY IS WARM          \ restore the default WARM
 ECHO                            \
-." RC5toLCD is removed. type START to restart"
-COLD                            \ performs reset to reset all interrupt vectors.    
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM                           \ performs reset to reset all interrupt vectors.    
 ;
+\ ------------------------------\
 
 \ ------------------------------\
-CODE APP_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
+CODE SYS_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
 \ ------------------------------\
 \ LCD_TIM_CTL =  %0000 0010 1001 0100\$3C0
 \                    - -             \CNTL Counter lentgh \ 00 = 16 bits
@@ -4453,7 +6756,7 @@ CODE APP_INIT                   \ this routine completes the init of system, i.e
 \ ------------------------------\
 \ set LCD_TIM_ to make 50kHz PWM \ for LCD_Vo; works without interrupt
 \ ------------------------------\
-MOV #%1011010100,&LCD_TIM_CTL   \ SMCLK/8, up mode, clear timer, no int
+MOV #%10_1101_0100,&LCD_TIM_CTL \ SMCLK/8, up mode, clear timer, no int
 \    MOV #0,&LCD_TIM_EX0        \ predivide by 1 in LCD_TIM_EX0 register (8 MHZ)
 FREQ_KHZ @ 16000 = [IF]         \ if 16 MHz
     MOV #1,&LCD_TIM_EX0         \ predivide by 2 in LCD_TIM_EX0 register (16 MHZ)
@@ -4465,7 +6768,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \ ------------------------------\
 \ set LCD_TIM_.2 to generate PWM for LCD_Vo
 \ ------------------------------\
-    MOV #%01100000,&LCD_TIM_CCTLn \ output mode = set/reset \ clear CCIFG
+MOV #%0110_0000,&LCD_TIM_CCTLn  \ output mode = set/reset \ clear CCIFG
     MOV #10,&LCD_TIM_CCRn       \ contrast adjust : 10/20 ==> LCD_Vo = -0V6|+3V6 (Vcc=3V6)
 \    MOV #12,&LCD_TIM_CCRn        \ contrast adjust : 12/20 ==> LCD_Vo = -1V4|+3V3 (Vcc=3V3)
 \ ------------------------------\
@@ -4494,7 +6797,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \                         -     \ TAIE
 \                          -    \ TAIFG
 \ ------------------------------\
-    MOV #%0100010100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
+MOV #%01_0001_0100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
 \ ------------------------------\
 \                        000    \ TAxEX0
 \                        ---    \ TAIDEX    pre divisor
@@ -4560,23 +6863,213 @@ COLON                           \
     ['] CR >BODY IS CR          \ CR executes its default value
     ['] EMIT >BODY IS EMIT      \ EMIT executes its defaulte value
     ." RC5toLCD is running. Type STOP to quit" \ display message on FastForth Terminal
-    ABORT                       \ ...and end APP_INIT with ABORT, no return.
+    PWR_STATE ABORT             \ init DP and continues with ABORT
 ;                               \
+\ ------------------------------\
 
 \ ------------------------------\
 CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
 \ ------------------------------\
-MOV #SLEEP,X                    \ replace default background process
+MOV #SLEEP,X                    \ replace default background process SLEEP
 MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
 MOV #WARM,X                     \ replace default WARM
-MOV #APP_INIT,2(X)              \ by RC5toLCD APP_INIT
-MOV X,PC                        \ then execute it
+MOV #SYS_INIT,2(X)              \ by RC5toLCD SYS_INIT
+MOV X,PC                        \ then execute new WARM
 ENDCODE 
+\ ------------------------------\
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
 
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
 
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] CONSTANT [IF]
+\ https://forth-standard.org/standard/core/CONSTANT
+\ CONSTANT <name>     n --                      define a Forth CONSTANT 
+: CONSTANT 
+CREATE
+HI2LO
+MOV TOS,-2(W)           \   PFA = n
+MOV @PSP+,TOS
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] STATE [IF]
+\ https://forth-standard.org/standard/core/STATE
+\ STATE   -- a-addr       holds compiler state
+STATEADR CONSTANT STATE
+[THEN]
+
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+    MOV @IP+,PC \ 4
+THEN
+XOR #-1,TOS     \ 1 flag Z = 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE     \ immediate
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+\ https://forth-standard.org/standard/core/DEFER
+\ DEFER "<spaces>name"   --
+\ Skip leading space delimiters. Parse name delimited by a space.
+\ Create a definition for name with the execution semantics defined below.
+
+\ name Execution:   --
+\ Execute the xt that name is set to execute, i.e. NEXT (nothing),
+\ until the phrase ' word IS name is executed, causing a new value of xt to be assigned to name.
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(W)        \ CFA = MOV @PC+,PC = BR MOV @IP+,PC
+MOV #NEXT_ADR,-2(W)     \ PFA = address of MOV @IP+,PC to do nothing.
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEFER! [IF]
+\ https://forth-standard.org/standard/core/DEFERStore
+\ Set the word xt1 to execute xt2. An ambiguous condition exists if xt1 is not for a word defined by DEFER.
+CODE DEFER!             \ xt2 xt1 --
+MOV @PSP+,2(TOS)        \ -- xt1=CFA_DEFER          xt2 --> [CFA_DEFER+2]
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] IS [IF]
+\ https://forth-standard.org/standard/core/IS
+\ IS <name>        xt --
+\ used as is :
+\ DEFER DISPLAY                         create a "do nothing" definition (2 CELLS)
+\ inline command : ' U. IS DISPLAY      U. becomes the runtime of the word DISPLAY
+\ or in a definition : ... ['] U. IS DISPLAY ...
+\ KEY, EMIT, CR, ACCEPT and WARM are examples of DEFERred words
+\
+\ as IS replaces the PFA value of any word, it's a TO alias for VARIABLE and CONSTANT words...
+: IS
+STATE @
+IF  POSTPONE ['] POSTPONE DEFER! 
+ELSE ' DEFER! 
+THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+\ CODE 20uS           \ n --      8MHz version
+\ BEGIN               \ 4 + 16 ~ loop
+\     MOV #39,rDOCON   \ 39
+\     BEGIN           \ 4 ~ loop
+\         NOP
+\         SUB #1,rDOCON
+\     0=  UNTIL
+\     SUB #1,TOS      \ 1
+\ 0= UNTIL
+\ MOV #XDOCON,rDOCON  \ 2
+\ MOV @PSP+,TOS
+\ MOV @RSP+,IP        \
+\ ENDCODE
+
 CODE 20_US                      \ n --      n * 20 us
 BEGIN                           \ here we presume that LCD_TIM_IFG = 1...
     BEGIN
@@ -4590,8 +7083,8 @@ MOV @IP+,PC                     \ 4
 ENDCODE
 
 CODE TOP_LCD                    \ LCD Sample
-\                               \ if write : %xxxxWWWW --
-\                               \ if read  : -- %0000RRRR
+\                               \ if write : %xxxx_WWWW --
+\                               \ if read  : -- %0000_RRRR
     BIS.B #LCD_EN,&LCD_CMD_OUT  \ lcd_en 0-->1
     BIT.B #LCD_RW,&LCD_CMD_IN   \ lcd_rw test
 0= IF                           \ write LCD bits pattern
@@ -4612,8 +7105,8 @@ ENDCODE
 CODE LCD_WRC                    \ char --         Write Char
     BIS.B #LCD_RS,&LCD_CMD_OUT  \ lcd_rs=1
 BW1 SUB #2,PSP                  \
-    MOV TOS,0(PSP)              \ -- %xxxxLLLL %HHHHLLLL
-    RRUM #4,TOS                 \ -- %xxxxLLLL %xxxxHHHH
+    MOV TOS,0(PSP)              \ -- %xxxx_LLLL %HHHH_LLLL
+    RRUM #4,TOS                 \ -- %xxxx_LLLL %xxxx_HHHH
     BIC.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=0
     BIS.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as output
 COLON                           \ high level word starts here 
@@ -4653,11 +7146,11 @@ ENDCODE
 \ BW1 BIC.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as intput
 \     BIS.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=1
 \ COLON                           \ starts a FORTH word
-\     TOP_LCD 2 20_us             \ -- %0000HHHH
-\     TOP_LCD 2 20_us             \ -- %0000HHHH %0000LLLL
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH %0000_LLLL
 \ HI2LO                           \ switch from FORTH to assembler
-\     RLAM #4,0(PSP)              \ -- %HHHH0000 %0000LLLL
-\     ADD.B @PSP+,TOS             \ -- %HHHHLLLL
+\     RLAM #4,0(PSP)              \ -- %HHHH_0000 %0000_LLLL
+\     ADD.B @PSP+,TOS             \ -- %HHHH_LLLL
 \     MOV @RSP+,IP                \ restore IP saved by COLON
 \     MOV @IP+,PC                 \
 \ ENDCODE
@@ -4798,14 +7291,14 @@ MOV @PSP+,TOS                   \     -- TOS
 RET
 ENDASM
 
-\ ------------------------------\
+\ ******************************\
 ASM BACKGROUND                  \
-\ ------------------------------\
+\ ******************************\
 BEGIN
 \     ...                         \ insert here your background task
 \     ...                         \
 \     ...                         \
-    CALL &RXON                  \ comment this line to disable TERMINAL
+    CALL &RXON                  \ comment this line to disable TERMINAL_INPUT
     BIS &LPM_MODE,SR            \
 \ ******************************\
 \ here start all interrupts     \
@@ -4814,23 +7307,43 @@ BEGIN
 \ ******************************\
 AGAIN                           \
 ENDASM                          \
+\ ******************************\
+
+\ ------------------------------\
+ASM SYS_OUT                    \ system OUT init, replaces WARM at the request of STOP.
+\ ------------------------------\
+\     ...                         \ init specific I/O sys as you want
+\     ...                         \ before executing default WARM
+    MOV #WARM,X                 \ ['] WARM 
+    ADD #4,X                    \ >BODY
+    MOV X,PC                    \ EXECUTE    (which activates IO and TERMINAL)
+ENDASM
+\ ------------------------------\
 
 \ ------------------------------\
 CODE STOP                       \ stops multitasking, must to be used before downloading app
 \ ------------------------------\
-\ restore default action of primary DEFERred word SLEEP (assembly version)
 BW1 MOV #SLEEP,X                \ the ASM word SLEEP is only visible in mode assembler. 
     ADD #4,X                    \ X = BODY of SLEEP, X-2 = PFA of SLEEP
-    MOV X,-2(X)                 \ restore the default background
+    MOV X,-2(X)                 \ restore the default background: SLEEP
+    MOV #WARM,X
+    MOV #SYS_OUT,2(X)           \ default WARM is replaced by JMJ_BOX SYS_OUT (ended by default WARM)
+    BIC.B #RC5,&IR_IE           \ clear RC5_Int
+    BIC.B #RC5,&IR_IFG          \ clear RC5_Int flag
+    MOV #0,&LCD_TIM_CTL         \ stop LCD_TIMER
+    MOV #0,&WDT_TIM_CTL         \ stop WDT_TIMER
+    MOV #0,&WDT_TIM_CCTL0       \ clear CCIFG0 disable CCIE0
+    CALL #INIT_VECT             \ reset all vectors other than TERMINAL_int
 COLON                           \ restore default action of primary DEFERred word WARM (FORTH version)
-['] WARM >BODY IS WARM          \ restore the default WARM
 ECHO                            \
-." RC5toLCD is removed. type START to restart"
-COLD                            \ performs reset to reset all interrupt vectors.    
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM                           \ performs reset to reset all interrupt vectors.    
 ;
+\ ------------------------------\
 
 \ ------------------------------\
-CODE APP_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
+CODE SYS_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
 \ ------------------------------\
 \ LCD_TIM_CTL =  %0000 0010 1001 0100\$3C0
 \                    - -             \CNTL Counter lentgh \ 00 = 16 bits
@@ -4860,7 +7373,7 @@ CODE APP_INIT                   \ this routine completes the init of system, i.e
 \ ------------------------------\
 \ set LCD_TIM_ to make 50kHz PWM \ for LCD_Vo; works without interrupt
 \ ------------------------------\
-MOV #%1011010100,&LCD_TIM_CTL   \ SMCLK/8, up mode, clear timer, no int
+MOV #%10_1101_0100,&LCD_TIM_CTL \ SMCLK/8, up mode, clear timer, no int
 \    MOV #0,&LCD_TIM_EX0        \ predivide by 1 in LCD_TIM_EX0 register (8 MHZ)
 FREQ_KHZ @ 16000 = [IF]         \ if 16 MHz
     MOV #1,&LCD_TIM_EX0         \ predivide by 2 in LCD_TIM_EX0 register (16 MHZ)
@@ -4872,7 +7385,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \ ------------------------------\
 \ set LCD_TIM_.2 to generate PWM for LCD_Vo
 \ ------------------------------\
-    MOV #%01100000,&LCD_TIM_CCTLn \ output mode = set/reset \ clear CCIFG
+MOV #%0110_0000,&LCD_TIM_CCTLn  \ output mode = set/reset \ clear CCIFG
     MOV #10,&LCD_TIM_CCRn       \ contrast adjust : 10/20 ==> LCD_Vo = -0V6|+3V6 (Vcc=3V6)
 \    MOV #12,&LCD_TIM_CCRn        \ contrast adjust : 12/20 ==> LCD_Vo = -1V4|+3V3 (Vcc=3V3)
 \ ------------------------------\
@@ -4901,7 +7414,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \                         -     \ TAIE
 \                          -    \ TAIFG
 \ ------------------------------\
-    MOV #%0100010100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
+MOV #%01_0001_0100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
 \ ------------------------------\
 \                        000    \ TAxEX0
 \                        ---    \ TAIDEX    pre divisor
@@ -4967,23 +7480,213 @@ COLON                           \
     ['] CR >BODY IS CR          \ CR executes its default value
     ['] EMIT >BODY IS EMIT      \ EMIT executes its defaulte value
     ." RC5toLCD is running. Type STOP to quit" \ display message on FastForth Terminal
-    ABORT                       \ ...and end APP_INIT with ABORT, no return.
+    PWR_STATE ABORT             \ init DP and continues with ABORT
 ;                               \
+\ ------------------------------\
 
 \ ------------------------------\
 CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
 \ ------------------------------\
-MOV #SLEEP,X                    \ replace default background process
+MOV #SLEEP,X                    \ replace default background process SLEEP
 MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
 MOV #WARM,X                     \ replace default WARM
-MOV #APP_INIT,2(X)              \ by RC5toLCD APP_INIT
-MOV X,PC                        \ then execute it
+MOV #SYS_INIT,2(X)              \ by RC5toLCD SYS_INIT
+MOV X,PC                        \ then execute new WARM
 ENDCODE 
+\ ------------------------------\
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
 
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
 
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] CONSTANT [IF]
+\ https://forth-standard.org/standard/core/CONSTANT
+\ CONSTANT <name>     n --                      define a Forth CONSTANT 
+: CONSTANT 
+CREATE
+HI2LO
+MOV TOS,-2(W)           \   PFA = n
+MOV @PSP+,TOS
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] STATE [IF]
+\ https://forth-standard.org/standard/core/STATE
+\ STATE   -- a-addr       holds compiler state
+STATEADR CONSTANT STATE
+[THEN]
+
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+    MOV @IP+,PC \ 4
+THEN
+XOR #-1,TOS     \ 1 flag Z = 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE     \ immediate
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+\ https://forth-standard.org/standard/core/DEFER
+\ DEFER "<spaces>name"   --
+\ Skip leading space delimiters. Parse name delimited by a space.
+\ Create a definition for name with the execution semantics defined below.
+
+\ name Execution:   --
+\ Execute the xt that name is set to execute, i.e. NEXT (nothing),
+\ until the phrase ' word IS name is executed, causing a new value of xt to be assigned to name.
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(W)        \ CFA = MOV @PC+,PC = BR MOV @IP+,PC
+MOV #NEXT_ADR,-2(W)     \ PFA = address of MOV @IP+,PC to do nothing.
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEFER! [IF]
+\ https://forth-standard.org/standard/core/DEFERStore
+\ Set the word xt1 to execute xt2. An ambiguous condition exists if xt1 is not for a word defined by DEFER.
+CODE DEFER!             \ xt2 xt1 --
+MOV @PSP+,2(TOS)        \ -- xt1=CFA_DEFER          xt2 --> [CFA_DEFER+2]
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] IS [IF]
+\ https://forth-standard.org/standard/core/IS
+\ IS <name>        xt --
+\ used as is :
+\ DEFER DISPLAY                         create a "do nothing" definition (2 CELLS)
+\ inline command : ' U. IS DISPLAY      U. becomes the runtime of the word DISPLAY
+\ or in a definition : ... ['] U. IS DISPLAY ...
+\ KEY, EMIT, CR, ACCEPT and WARM are examples of DEFERred words
+\
+\ as IS replaces the PFA value of any word, it's a TO alias for VARIABLE and CONSTANT words...
+: IS
+STATE @
+IF  POSTPONE ['] POSTPONE DEFER! 
+ELSE ' DEFER! 
+THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+\ CODE 20uS           \ n --      8MHz version
+\ BEGIN               \ 4 + 16 ~ loop
+\     MOV #39,rDOCON   \ 39
+\     BEGIN           \ 4 ~ loop
+\         NOP
+\         SUB #1,rDOCON
+\     0=  UNTIL
+\     SUB #1,TOS      \ 1
+\ 0= UNTIL
+\ MOV #XDOCON,rDOCON  \ 2
+\ MOV @PSP+,TOS
+\ MOV @RSP+,IP        \
+\ ENDCODE
+
 CODE 20_US                      \ n --      n * 20 us
 BEGIN                           \ here we presume that LCD_TIM_IFG = 1...
     BEGIN
@@ -4997,8 +7700,8 @@ MOV @IP+,PC                     \ 4
 ENDCODE
 
 CODE TOP_LCD                    \ LCD Sample
-\                               \ if write : %xxxxWWWW --
-\                               \ if read  : -- %0000RRRR
+\                               \ if write : %xxxx_WWWW --
+\                               \ if read  : -- %0000_RRRR
     BIS.B #LCD_EN,&LCD_CMD_OUT  \ lcd_en 0-->1
     BIT.B #LCD_RW,&LCD_CMD_IN   \ lcd_rw test
 0= IF                           \ write LCD bits pattern
@@ -5019,8 +7722,8 @@ ENDCODE
 CODE LCD_WRC                    \ char --         Write Char
     BIS.B #LCD_RS,&LCD_CMD_OUT  \ lcd_rs=1
 BW1 SUB #2,PSP                  \
-    MOV TOS,0(PSP)              \ -- %xxxxLLLL %HHHHLLLL
-    RRUM #4,TOS                 \ -- %xxxxLLLL %xxxxHHHH
+    MOV TOS,0(PSP)              \ -- %xxxx_LLLL %HHHH_LLLL
+    RRUM #4,TOS                 \ -- %xxxx_LLLL %xxxx_HHHH
     BIC.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=0
     BIS.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as output
 COLON                           \ high level word starts here 
@@ -5060,11 +7763,11 @@ ENDCODE
 \ BW1 BIC.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as intput
 \     BIS.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=1
 \ COLON                           \ starts a FORTH word
-\     TOP_LCD 2 20_us             \ -- %0000HHHH
-\     TOP_LCD 2 20_us             \ -- %0000HHHH %0000LLLL
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH %0000_LLLL
 \ HI2LO                           \ switch from FORTH to assembler
-\     RLAM #4,0(PSP)              \ -- %HHHH0000 %0000LLLL
-\     ADD.B @PSP+,TOS             \ -- %HHHHLLLL
+\     RLAM #4,0(PSP)              \ -- %HHHH_0000 %0000_LLLL
+\     ADD.B @PSP+,TOS             \ -- %HHHH_LLLL
 \     MOV @RSP+,IP                \ restore IP saved by COLON
 \     MOV @IP+,PC                 \
 \ ENDCODE
@@ -5205,14 +7908,14 @@ MOV @PSP+,TOS                   \     -- TOS
 RET
 ENDASM
 
-\ ------------------------------\
+\ ******************************\
 ASM BACKGROUND                  \
-\ ------------------------------\
+\ ******************************\
 BEGIN
 \     ...                         \ insert here your background task
 \     ...                         \
 \     ...                         \
-    CALL &RXON                  \ comment this line to disable TERMINAL
+    CALL &RXON                  \ comment this line to disable TERMINAL_INPUT
     BIS &LPM_MODE,SR            \
 \ ******************************\
 \ here start all interrupts     \
@@ -5221,23 +7924,43 @@ BEGIN
 \ ******************************\
 AGAIN                           \
 ENDASM                          \
+\ ******************************\
+
+\ ------------------------------\
+ASM SYS_OUT                    \ system OUT init, replaces WARM at the request of STOP.
+\ ------------------------------\
+\     ...                         \ init specific I/O sys as you want
+\     ...                         \ before executing default WARM
+    MOV #WARM,X                 \ ['] WARM 
+    ADD #4,X                    \ >BODY
+    MOV X,PC                    \ EXECUTE    (which activates IO and TERMINAL)
+ENDASM
+\ ------------------------------\
 
 \ ------------------------------\
 CODE STOP                       \ stops multitasking, must to be used before downloading app
 \ ------------------------------\
-\ restore default action of primary DEFERred word SLEEP (assembly version)
 BW1 MOV #SLEEP,X                \ the ASM word SLEEP is only visible in mode assembler. 
     ADD #4,X                    \ X = BODY of SLEEP, X-2 = PFA of SLEEP
-    MOV X,-2(X)                 \ restore the default background
+    MOV X,-2(X)                 \ restore the default background: SLEEP
+    MOV #WARM,X
+    MOV #SYS_OUT,2(X)           \ default WARM is replaced by JMJ_BOX SYS_OUT (ended by default WARM)
+    BIC.B #RC5,&IR_IE           \ clear RC5_Int
+    BIC.B #RC5,&IR_IFG          \ clear RC5_Int flag
+    MOV #0,&LCD_TIM_CTL         \ stop LCD_TIMER
+    MOV #0,&WDT_TIM_CTL         \ stop WDT_TIMER
+    MOV #0,&WDT_TIM_CCTL0       \ clear CCIFG0 disable CCIE0
+    CALL #INIT_VECT             \ reset all vectors other than TERMINAL_int
 COLON                           \ restore default action of primary DEFERred word WARM (FORTH version)
-['] WARM >BODY IS WARM          \ restore the default WARM
 ECHO                            \
-." RC5toLCD is removed. type START to restart"
-COLD                            \ performs reset to reset all interrupt vectors.    
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM                           \ performs reset to reset all interrupt vectors.    
 ;
+\ ------------------------------\
 
 \ ------------------------------\
-CODE APP_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
+CODE SYS_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
 \ ------------------------------\
 \ LCD_TIM_CTL =  %0000 0010 1001 0100\$3C0
 \                    - -             \CNTL Counter lentgh \ 00 = 16 bits
@@ -5267,7 +7990,7 @@ CODE APP_INIT                   \ this routine completes the init of system, i.e
 \ ------------------------------\
 \ set LCD_TIM_ to make 50kHz PWM \ for LCD_Vo; works without interrupt
 \ ------------------------------\
-MOV #%1011010100,&LCD_TIM_CTL   \ SMCLK/8, up mode, clear timer, no int
+MOV #%10_1101_0100,&LCD_TIM_CTL \ SMCLK/8, up mode, clear timer, no int
 \    MOV #0,&LCD_TIM_EX0        \ predivide by 1 in LCD_TIM_EX0 register (8 MHZ)
 FREQ_KHZ @ 16000 = [IF]         \ if 16 MHz
     MOV #1,&LCD_TIM_EX0         \ predivide by 2 in LCD_TIM_EX0 register (16 MHZ)
@@ -5279,7 +8002,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \ ------------------------------\
 \ set LCD_TIM_.2 to generate PWM for LCD_Vo
 \ ------------------------------\
-    MOV #%01100000,&LCD_TIM_CCTLn \ output mode = set/reset \ clear CCIFG
+MOV #%0110_0000,&LCD_TIM_CCTLn  \ output mode = set/reset \ clear CCIFG
     MOV #10,&LCD_TIM_CCRn       \ contrast adjust : 10/20 ==> LCD_Vo = -0V6|+3V6 (Vcc=3V6)
 \    MOV #12,&LCD_TIM_CCRn        \ contrast adjust : 12/20 ==> LCD_Vo = -1V4|+3V3 (Vcc=3V3)
 \ ------------------------------\
@@ -5308,7 +8031,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \                         -     \ TAIE
 \                          -    \ TAIFG
 \ ------------------------------\
-    MOV #%0100010100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
+MOV #%01_0001_0100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
 \ ------------------------------\
 \                        000    \ TAxEX0
 \                        ---    \ TAIDEX    pre divisor
@@ -5374,22 +8097,212 @@ COLON                           \
     ['] CR >BODY IS CR          \ CR executes its default value
     ['] EMIT >BODY IS EMIT      \ EMIT executes its defaulte value
     ." RC5toLCD is running. Type STOP to quit" \ display message on FastForth Terminal
-    ABORT                       \ ...and end APP_INIT with ABORT, no return.
+    PWR_STATE ABORT             \ init DP and continues with ABORT
 ;                               \
+\ ------------------------------\
+
+\ ------------------------------\
+CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
+\ ------------------------------\
+MOV #SLEEP,X                    \ replace default background process SLEEP
+MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
+MOV #WARM,X                     \ replace default WARM
+MOV #SYS_INIT,2(X)              \ by RC5toLCD SYS_INIT
+MOV X,PC                        \ then execute new WARM
+ENDCODE 
+\ ------------------------------\
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
+
+[DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
+
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
+
+MARKER {RC5TOLCD}
+
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] CONSTANT [IF]
+\ https://forth-standard.org/standard/core/CONSTANT
+\ CONSTANT <name>     n --                      define a Forth CONSTANT 
+: CONSTANT 
+CREATE
+HI2LO
+MOV TOS,-2(W)           \   PFA = n
+MOV @PSP+,TOS
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
 
-\ ------------------------------\
-CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
-\ ------------------------------\
-MOV #SLEEP,X                    \ replace default background process
-MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
-MOV #WARM,X                     \ replace default WARM
-MOV #APP_INIT,2(X)              \ by RC5toLCD APP_INIT
-MOV X,PC                        \ then execute it
-ENDCODE 
+[UNDEFINED] STATE [IF]
+\ https://forth-standard.org/standard/core/STATE
+\ STATE   -- a-addr       holds compiler state
+STATEADR CONSTANT STATE
+[THEN]
 
-[DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+    MOV @IP+,PC \ 4
+THEN
+XOR #-1,TOS     \ 1 flag Z = 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
 
-MARKER {RC5TOLCD}
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE     \ immediate
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+\ https://forth-standard.org/standard/core/DEFER
+\ DEFER "<spaces>name"   --
+\ Skip leading space delimiters. Parse name delimited by a space.
+\ Create a definition for name with the execution semantics defined below.
+
+\ name Execution:   --
+\ Execute the xt that name is set to execute, i.e. NEXT (nothing),
+\ until the phrase ' word IS name is executed, causing a new value of xt to be assigned to name.
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(W)        \ CFA = MOV @PC+,PC = BR MOV @IP+,PC
+MOV #NEXT_ADR,-2(W)     \ PFA = address of MOV @IP+,PC to do nothing.
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEFER! [IF]
+\ https://forth-standard.org/standard/core/DEFERStore
+\ Set the word xt1 to execute xt2. An ambiguous condition exists if xt1 is not for a word defined by DEFER.
+CODE DEFER!             \ xt2 xt1 --
+MOV @PSP+,2(TOS)        \ -- xt1=CFA_DEFER          xt2 --> [CFA_DEFER+2]
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] IS [IF]
+\ https://forth-standard.org/standard/core/IS
+\ IS <name>        xt --
+\ used as is :
+\ DEFER DISPLAY                         create a "do nothing" definition (2 CELLS)
+\ inline command : ' U. IS DISPLAY      U. becomes the runtime of the word DISPLAY
+\ or in a definition : ... ['] U. IS DISPLAY ...
+\ KEY, EMIT, CR, ACCEPT and WARM are examples of DEFERred words
+\
+\ as IS replaces the PFA value of any word, it's a TO alias for VARIABLE and CONSTANT words...
+: IS
+STATE @
+IF  POSTPONE ['] POSTPONE DEFER! 
+ELSE ' DEFER! 
+THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+\ CODE 20uS           \ n --      8MHz version
+\ BEGIN               \ 4 + 16 ~ loop
+\     MOV #39,rDOCON   \ 39
+\     BEGIN           \ 4 ~ loop
+\         NOP
+\         SUB #1,rDOCON
+\     0=  UNTIL
+\     SUB #1,TOS      \ 1
+\ 0= UNTIL
+\ MOV #XDOCON,rDOCON  \ 2
+\ MOV @PSP+,TOS
+\ MOV @RSP+,IP        \
+\ ENDCODE
 
 CODE 20_US                      \ n --      n * 20 us
 BEGIN                           \ here we presume that LCD_TIM_IFG = 1...
@@ -5404,8 +8317,8 @@ MOV @IP+,PC                     \ 4
 ENDCODE
 
 CODE TOP_LCD                    \ LCD Sample
-\                               \ if write : %xxxxWWWW --
-\                               \ if read  : -- %0000RRRR
+\                               \ if write : %xxxx_WWWW --
+\                               \ if read  : -- %0000_RRRR
     BIS.B #LCD_EN,&LCD_CMD_OUT  \ lcd_en 0-->1
     BIT.B #LCD_RW,&LCD_CMD_IN   \ lcd_rw test
 0= IF                           \ write LCD bits pattern
@@ -5426,8 +8339,8 @@ ENDCODE
 CODE LCD_WRC                    \ char --         Write Char
     BIS.B #LCD_RS,&LCD_CMD_OUT  \ lcd_rs=1
 BW1 SUB #2,PSP                  \
-    MOV TOS,0(PSP)              \ -- %xxxxLLLL %HHHHLLLL
-    RRUM #4,TOS                 \ -- %xxxxLLLL %xxxxHHHH
+    MOV TOS,0(PSP)              \ -- %xxxx_LLLL %HHHH_LLLL
+    RRUM #4,TOS                 \ -- %xxxx_LLLL %xxxx_HHHH
     BIC.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=0
     BIS.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as output
 COLON                           \ high level word starts here 
@@ -5467,11 +8380,11 @@ ENDCODE
 \ BW1 BIC.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as intput
 \     BIS.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=1
 \ COLON                           \ starts a FORTH word
-\     TOP_LCD 2 20_us             \ -- %0000HHHH
-\     TOP_LCD 2 20_us             \ -- %0000HHHH %0000LLLL
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH %0000_LLLL
 \ HI2LO                           \ switch from FORTH to assembler
-\     RLAM #4,0(PSP)              \ -- %HHHH0000 %0000LLLL
-\     ADD.B @PSP+,TOS             \ -- %HHHHLLLL
+\     RLAM #4,0(PSP)              \ -- %HHHH_0000 %0000_LLLL
+\     ADD.B @PSP+,TOS             \ -- %HHHH_LLLL
 \     MOV @RSP+,IP                \ restore IP saved by COLON
 \     MOV @IP+,PC                 \
 \ ENDCODE
@@ -5612,14 +8525,14 @@ MOV @PSP+,TOS                   \     -- TOS
 RET
 ENDASM
 
-\ ------------------------------\
+\ ******************************\
 ASM BACKGROUND                  \
-\ ------------------------------\
+\ ******************************\
 BEGIN
 \     ...                         \ insert here your background task
 \     ...                         \
 \     ...                         \
-    CALL &RXON                  \ comment this line to disable TERMINAL
+    CALL &RXON                  \ comment this line to disable TERMINAL_INPUT
     BIS &LPM_MODE,SR            \
 \ ******************************\
 \ here start all interrupts     \
@@ -5628,23 +8541,43 @@ BEGIN
 \ ******************************\
 AGAIN                           \
 ENDASM                          \
+\ ******************************\
+
+\ ------------------------------\
+ASM SYS_OUT                    \ system OUT init, replaces WARM at the request of STOP.
+\ ------------------------------\
+\     ...                         \ init specific I/O sys as you want
+\     ...                         \ before executing default WARM
+    MOV #WARM,X                 \ ['] WARM 
+    ADD #4,X                    \ >BODY
+    MOV X,PC                    \ EXECUTE    (which activates IO and TERMINAL)
+ENDASM
+\ ------------------------------\
 
 \ ------------------------------\
 CODE STOP                       \ stops multitasking, must to be used before downloading app
 \ ------------------------------\
-\ restore default action of primary DEFERred word SLEEP (assembly version)
 BW1 MOV #SLEEP,X                \ the ASM word SLEEP is only visible in mode assembler. 
     ADD #4,X                    \ X = BODY of SLEEP, X-2 = PFA of SLEEP
-    MOV X,-2(X)                 \ restore the default background
+    MOV X,-2(X)                 \ restore the default background: SLEEP
+    MOV #WARM,X
+    MOV #SYS_OUT,2(X)           \ default WARM is replaced by JMJ_BOX SYS_OUT (ended by default WARM)
+    BIC.B #RC5,&IR_IE           \ clear RC5_Int
+    BIC.B #RC5,&IR_IFG          \ clear RC5_Int flag
+    MOV #0,&LCD_TIM_CTL         \ stop LCD_TIMER
+    MOV #0,&WDT_TIM_CTL         \ stop WDT_TIMER
+    MOV #0,&WDT_TIM_CCTL0       \ clear CCIFG0 disable CCIE0
+    CALL #INIT_VECT             \ reset all vectors other than TERMINAL_int
 COLON                           \ restore default action of primary DEFERred word WARM (FORTH version)
-['] WARM >BODY IS WARM          \ restore the default WARM
 ECHO                            \
-." RC5toLCD is removed. type START to restart"
-COLD                            \ performs reset to reset all interrupt vectors.    
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM                           \ performs reset to reset all interrupt vectors.    
 ;
+\ ------------------------------\
 
 \ ------------------------------\
-CODE APP_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
+CODE SYS_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
 \ ------------------------------\
 \ LCD_TIM_CTL =  %0000 0010 1001 0100\$3C0
 \                    - -             \CNTL Counter lentgh \ 00 = 16 bits
@@ -5674,7 +8607,7 @@ CODE APP_INIT                   \ this routine completes the init of system, i.e
 \ ------------------------------\
 \ set LCD_TIM_ to make 50kHz PWM \ for LCD_Vo; works without interrupt
 \ ------------------------------\
-MOV #%1011010100,&LCD_TIM_CTL   \ SMCLK/8, up mode, clear timer, no int
+MOV #%10_1101_0100,&LCD_TIM_CTL \ SMCLK/8, up mode, clear timer, no int
 \    MOV #0,&LCD_TIM_EX0        \ predivide by 1 in LCD_TIM_EX0 register (8 MHZ)
 FREQ_KHZ @ 16000 = [IF]         \ if 16 MHz
     MOV #1,&LCD_TIM_EX0         \ predivide by 2 in LCD_TIM_EX0 register (16 MHZ)
@@ -5686,7 +8619,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \ ------------------------------\
 \ set LCD_TIM_.2 to generate PWM for LCD_Vo
 \ ------------------------------\
-    MOV #%01100000,&LCD_TIM_CCTLn \ output mode = set/reset \ clear CCIFG
+MOV #%0110_0000,&LCD_TIM_CCTLn  \ output mode = set/reset \ clear CCIFG
     MOV #10,&LCD_TIM_CCRn       \ contrast adjust : 10/20 ==> LCD_Vo = -0V6|+3V6 (Vcc=3V6)
 \    MOV #12,&LCD_TIM_CCRn        \ contrast adjust : 12/20 ==> LCD_Vo = -1V4|+3V3 (Vcc=3V3)
 \ ------------------------------\
@@ -5715,7 +8648,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \                         -     \ TAIE
 \                          -    \ TAIFG
 \ ------------------------------\
-    MOV #%0100010100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
+MOV #%01_0001_0100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
 \ ------------------------------\
 \                        000    \ TAxEX0
 \                        ---    \ TAIDEX    pre divisor
@@ -5781,23 +8714,213 @@ COLON                           \
     ['] CR >BODY IS CR          \ CR executes its default value
     ['] EMIT >BODY IS EMIT      \ EMIT executes its defaulte value
     ." RC5toLCD is running. Type STOP to quit" \ display message on FastForth Terminal
-    ABORT                       \ ...and end APP_INIT with ABORT, no return.
+    PWR_STATE ABORT             \ init DP and continues with ABORT
 ;                               \
+\ ------------------------------\
 
 \ ------------------------------\
 CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
 \ ------------------------------\
-MOV #SLEEP,X                    \ replace default background process
+MOV #SLEEP,X                    \ replace default background process SLEEP
 MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
 MOV #WARM,X                     \ replace default WARM
-MOV #APP_INIT,2(X)              \ by RC5toLCD APP_INIT
-MOV X,PC                        \ then execute it
+MOV #SYS_INIT,2(X)              \ by RC5toLCD SYS_INIT
+MOV X,PC                        \ then execute new WARM
 ENDCODE 
+\ ------------------------------\
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
 
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
 
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] CONSTANT [IF]
+\ https://forth-standard.org/standard/core/CONSTANT
+\ CONSTANT <name>     n --                      define a Forth CONSTANT 
+: CONSTANT 
+CREATE
+HI2LO
+MOV TOS,-2(W)           \   PFA = n
+MOV @PSP+,TOS
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] STATE [IF]
+\ https://forth-standard.org/standard/core/STATE
+\ STATE   -- a-addr       holds compiler state
+STATEADR CONSTANT STATE
+[THEN]
+
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+    MOV @IP+,PC \ 4
+THEN
+XOR #-1,TOS     \ 1 flag Z = 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE     \ immediate
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+\ https://forth-standard.org/standard/core/DEFER
+\ DEFER "<spaces>name"   --
+\ Skip leading space delimiters. Parse name delimited by a space.
+\ Create a definition for name with the execution semantics defined below.
+
+\ name Execution:   --
+\ Execute the xt that name is set to execute, i.e. NEXT (nothing),
+\ until the phrase ' word IS name is executed, causing a new value of xt to be assigned to name.
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(W)        \ CFA = MOV @PC+,PC = BR MOV @IP+,PC
+MOV #NEXT_ADR,-2(W)     \ PFA = address of MOV @IP+,PC to do nothing.
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEFER! [IF]
+\ https://forth-standard.org/standard/core/DEFERStore
+\ Set the word xt1 to execute xt2. An ambiguous condition exists if xt1 is not for a word defined by DEFER.
+CODE DEFER!             \ xt2 xt1 --
+MOV @PSP+,2(TOS)        \ -- xt1=CFA_DEFER          xt2 --> [CFA_DEFER+2]
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] IS [IF]
+\ https://forth-standard.org/standard/core/IS
+\ IS <name>        xt --
+\ used as is :
+\ DEFER DISPLAY                         create a "do nothing" definition (2 CELLS)
+\ inline command : ' U. IS DISPLAY      U. becomes the runtime of the word DISPLAY
+\ or in a definition : ... ['] U. IS DISPLAY ...
+\ KEY, EMIT, CR, ACCEPT and WARM are examples of DEFERred words
+\
+\ as IS replaces the PFA value of any word, it's a TO alias for VARIABLE and CONSTANT words...
+: IS
+STATE @
+IF  POSTPONE ['] POSTPONE DEFER! 
+ELSE ' DEFER! 
+THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+\ CODE 20uS           \ n --      8MHz version
+\ BEGIN               \ 4 + 16 ~ loop
+\     MOV #39,rDOCON   \ 39
+\     BEGIN           \ 4 ~ loop
+\         NOP
+\         SUB #1,rDOCON
+\     0=  UNTIL
+\     SUB #1,TOS      \ 1
+\ 0= UNTIL
+\ MOV #XDOCON,rDOCON  \ 2
+\ MOV @PSP+,TOS
+\ MOV @RSP+,IP        \
+\ ENDCODE
+
 CODE 20_US                      \ n --      n * 20 us
 BEGIN                           \ here we presume that LCD_TIM_IFG = 1...
     BEGIN
@@ -5811,8 +8934,8 @@ MOV @IP+,PC                     \ 4
 ENDCODE
 
 CODE TOP_LCD                    \ LCD Sample
-\                               \ if write : %xxxxWWWW --
-\                               \ if read  : -- %0000RRRR
+\                               \ if write : %xxxx_WWWW --
+\                               \ if read  : -- %0000_RRRR
     BIS.B #LCD_EN,&LCD_CMD_OUT  \ lcd_en 0-->1
     BIT.B #LCD_RW,&LCD_CMD_IN   \ lcd_rw test
 0= IF                           \ write LCD bits pattern
@@ -5833,8 +8956,8 @@ ENDCODE
 CODE LCD_WRC                    \ char --         Write Char
     BIS.B #LCD_RS,&LCD_CMD_OUT  \ lcd_rs=1
 BW1 SUB #2,PSP                  \
-    MOV TOS,0(PSP)              \ -- %xxxxLLLL %HHHHLLLL
-    RRUM #4,TOS                 \ -- %xxxxLLLL %xxxxHHHH
+    MOV TOS,0(PSP)              \ -- %xxxx_LLLL %HHHH_LLLL
+    RRUM #4,TOS                 \ -- %xxxx_LLLL %xxxx_HHHH
     BIC.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=0
     BIS.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as output
 COLON                           \ high level word starts here 
@@ -5874,11 +8997,11 @@ ENDCODE
 \ BW1 BIC.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as intput
 \     BIS.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=1
 \ COLON                           \ starts a FORTH word
-\     TOP_LCD 2 20_us             \ -- %0000HHHH
-\     TOP_LCD 2 20_us             \ -- %0000HHHH %0000LLLL
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH %0000_LLLL
 \ HI2LO                           \ switch from FORTH to assembler
-\     RLAM #4,0(PSP)              \ -- %HHHH0000 %0000LLLL
-\     ADD.B @PSP+,TOS             \ -- %HHHHLLLL
+\     RLAM #4,0(PSP)              \ -- %HHHH_0000 %0000_LLLL
+\     ADD.B @PSP+,TOS             \ -- %HHHH_LLLL
 \     MOV @RSP+,IP                \ restore IP saved by COLON
 \     MOV @IP+,PC                 \
 \ ENDCODE
@@ -6019,14 +9142,14 @@ MOV @PSP+,TOS                   \     -- TOS
 RET
 ENDASM
 
-\ ------------------------------\
+\ ******************************\
 ASM BACKGROUND                  \
-\ ------------------------------\
+\ ******************************\
 BEGIN
 \     ...                         \ insert here your background task
 \     ...                         \
 \     ...                         \
-    CALL &RXON                  \ comment this line to disable TERMINAL
+    CALL &RXON                  \ comment this line to disable TERMINAL_INPUT
     BIS &LPM_MODE,SR            \
 \ ******************************\
 \ here start all interrupts     \
@@ -6035,23 +9158,43 @@ BEGIN
 \ ******************************\
 AGAIN                           \
 ENDASM                          \
+\ ******************************\
+
+\ ------------------------------\
+ASM SYS_OUT                    \ system OUT init, replaces WARM at the request of STOP.
+\ ------------------------------\
+\     ...                         \ init specific I/O sys as you want
+\     ...                         \ before executing default WARM
+    MOV #WARM,X                 \ ['] WARM 
+    ADD #4,X                    \ >BODY
+    MOV X,PC                    \ EXECUTE    (which activates IO and TERMINAL)
+ENDASM
+\ ------------------------------\
 
 \ ------------------------------\
 CODE STOP                       \ stops multitasking, must to be used before downloading app
 \ ------------------------------\
-\ restore default action of primary DEFERred word SLEEP (assembly version)
 BW1 MOV #SLEEP,X                \ the ASM word SLEEP is only visible in mode assembler. 
     ADD #4,X                    \ X = BODY of SLEEP, X-2 = PFA of SLEEP
-    MOV X,-2(X)                 \ restore the default background
+    MOV X,-2(X)                 \ restore the default background: SLEEP
+    MOV #WARM,X
+    MOV #SYS_OUT,2(X)           \ default WARM is replaced by JMJ_BOX SYS_OUT (ended by default WARM)
+    BIC.B #RC5,&IR_IE           \ clear RC5_Int
+    BIC.B #RC5,&IR_IFG          \ clear RC5_Int flag
+    MOV #0,&LCD_TIM_CTL         \ stop LCD_TIMER
+    MOV #0,&WDT_TIM_CTL         \ stop WDT_TIMER
+    MOV #0,&WDT_TIM_CCTL0       \ clear CCIFG0 disable CCIE0
+    CALL #INIT_VECT             \ reset all vectors other than TERMINAL_int
 COLON                           \ restore default action of primary DEFERred word WARM (FORTH version)
-['] WARM >BODY IS WARM          \ restore the default WARM
 ECHO                            \
-." RC5toLCD is removed. type START to restart"
-COLD                            \ performs reset to reset all interrupt vectors.    
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM                           \ performs reset to reset all interrupt vectors.    
 ;
+\ ------------------------------\
 
 \ ------------------------------\
-CODE APP_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
+CODE SYS_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
 \ ------------------------------\
 \ LCD_TIM_CTL =  %0000 0010 1001 0100\$3C0
 \                    - -             \CNTL Counter lentgh \ 00 = 16 bits
@@ -6081,7 +9224,7 @@ CODE APP_INIT                   \ this routine completes the init of system, i.e
 \ ------------------------------\
 \ set LCD_TIM_ to make 50kHz PWM \ for LCD_Vo; works without interrupt
 \ ------------------------------\
-MOV #%1011010100,&LCD_TIM_CTL   \ SMCLK/8, up mode, clear timer, no int
+MOV #%10_1101_0100,&LCD_TIM_CTL \ SMCLK/8, up mode, clear timer, no int
 \    MOV #0,&LCD_TIM_EX0        \ predivide by 1 in LCD_TIM_EX0 register (8 MHZ)
 FREQ_KHZ @ 16000 = [IF]         \ if 16 MHz
     MOV #1,&LCD_TIM_EX0         \ predivide by 2 in LCD_TIM_EX0 register (16 MHZ)
@@ -6093,7 +9236,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \ ------------------------------\
 \ set LCD_TIM_.2 to generate PWM for LCD_Vo
 \ ------------------------------\
-    MOV #%01100000,&LCD_TIM_CCTLn \ output mode = set/reset \ clear CCIFG
+MOV #%0110_0000,&LCD_TIM_CCTLn  \ output mode = set/reset \ clear CCIFG
     MOV #10,&LCD_TIM_CCRn       \ contrast adjust : 10/20 ==> LCD_Vo = -0V6|+3V6 (Vcc=3V6)
 \    MOV #12,&LCD_TIM_CCRn        \ contrast adjust : 12/20 ==> LCD_Vo = -1V4|+3V3 (Vcc=3V3)
 \ ------------------------------\
@@ -6122,7 +9265,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \                         -     \ TAIE
 \                          -    \ TAIFG
 \ ------------------------------\
-    MOV #%0100010100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
+MOV #%01_0001_0100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
 \ ------------------------------\
 \                        000    \ TAxEX0
 \                        ---    \ TAIDEX    pre divisor
@@ -6188,23 +9331,213 @@ COLON                           \
     ['] CR >BODY IS CR          \ CR executes its default value
     ['] EMIT >BODY IS EMIT      \ EMIT executes its defaulte value
     ." RC5toLCD is running. Type STOP to quit" \ display message on FastForth Terminal
-    ABORT                       \ ...and end APP_INIT with ABORT, no return.
+    PWR_STATE ABORT             \ init DP and continues with ABORT
 ;                               \
+\ ------------------------------\
 
 \ ------------------------------\
 CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
 \ ------------------------------\
-MOV #SLEEP,X                    \ replace default background process
+MOV #SLEEP,X                    \ replace default background process SLEEP
 MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
 MOV #WARM,X                     \ replace default WARM
-MOV #APP_INIT,2(X)              \ by RC5toLCD APP_INIT
-MOV X,PC                        \ then execute it
+MOV #SYS_INIT,2(X)              \ by RC5toLCD SYS_INIT
+MOV X,PC                        \ then execute new WARM
 ENDCODE 
+\ ------------------------------\
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
 
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
 
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] CONSTANT [IF]
+\ https://forth-standard.org/standard/core/CONSTANT
+\ CONSTANT <name>     n --                      define a Forth CONSTANT 
+: CONSTANT 
+CREATE
+HI2LO
+MOV TOS,-2(W)           \   PFA = n
+MOV @PSP+,TOS
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] STATE [IF]
+\ https://forth-standard.org/standard/core/STATE
+\ STATE   -- a-addr       holds compiler state
+STATEADR CONSTANT STATE
+[THEN]
+
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+    MOV @IP+,PC \ 4
+THEN
+XOR #-1,TOS     \ 1 flag Z = 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE     \ immediate
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+\ https://forth-standard.org/standard/core/DEFER
+\ DEFER "<spaces>name"   --
+\ Skip leading space delimiters. Parse name delimited by a space.
+\ Create a definition for name with the execution semantics defined below.
+
+\ name Execution:   --
+\ Execute the xt that name is set to execute, i.e. NEXT (nothing),
+\ until the phrase ' word IS name is executed, causing a new value of xt to be assigned to name.
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(W)        \ CFA = MOV @PC+,PC = BR MOV @IP+,PC
+MOV #NEXT_ADR,-2(W)     \ PFA = address of MOV @IP+,PC to do nothing.
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEFER! [IF]
+\ https://forth-standard.org/standard/core/DEFERStore
+\ Set the word xt1 to execute xt2. An ambiguous condition exists if xt1 is not for a word defined by DEFER.
+CODE DEFER!             \ xt2 xt1 --
+MOV @PSP+,2(TOS)        \ -- xt1=CFA_DEFER          xt2 --> [CFA_DEFER+2]
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] IS [IF]
+\ https://forth-standard.org/standard/core/IS
+\ IS <name>        xt --
+\ used as is :
+\ DEFER DISPLAY                         create a "do nothing" definition (2 CELLS)
+\ inline command : ' U. IS DISPLAY      U. becomes the runtime of the word DISPLAY
+\ or in a definition : ... ['] U. IS DISPLAY ...
+\ KEY, EMIT, CR, ACCEPT and WARM are examples of DEFERred words
+\
+\ as IS replaces the PFA value of any word, it's a TO alias for VARIABLE and CONSTANT words...
+: IS
+STATE @
+IF  POSTPONE ['] POSTPONE DEFER! 
+ELSE ' DEFER! 
+THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+\ CODE 20uS           \ n --      8MHz version
+\ BEGIN               \ 4 + 16 ~ loop
+\     MOV #39,rDOCON   \ 39
+\     BEGIN           \ 4 ~ loop
+\         NOP
+\         SUB #1,rDOCON
+\     0=  UNTIL
+\     SUB #1,TOS      \ 1
+\ 0= UNTIL
+\ MOV #XDOCON,rDOCON  \ 2
+\ MOV @PSP+,TOS
+\ MOV @RSP+,IP        \
+\ ENDCODE
+
 CODE 20_US                      \ n --      n * 20 us
 BEGIN                           \ here we presume that LCD_TIM_IFG = 1...
     BEGIN
@@ -6218,8 +9551,8 @@ MOV @IP+,PC                     \ 4
 ENDCODE
 
 CODE TOP_LCD                    \ LCD Sample
-\                               \ if write : %xxxxWWWW --
-\                               \ if read  : -- %0000RRRR
+\                               \ if write : %xxxx_WWWW --
+\                               \ if read  : -- %0000_RRRR
     BIS.B #LCD_EN,&LCD_CMD_OUT  \ lcd_en 0-->1
     BIT.B #LCD_RW,&LCD_CMD_IN   \ lcd_rw test
 0= IF                           \ write LCD bits pattern
@@ -6240,8 +9573,8 @@ ENDCODE
 CODE LCD_WRC                    \ char --         Write Char
     BIS.B #LCD_RS,&LCD_CMD_OUT  \ lcd_rs=1
 BW1 SUB #2,PSP                  \
-    MOV TOS,0(PSP)              \ -- %xxxxLLLL %HHHHLLLL
-    RRUM #4,TOS                 \ -- %xxxxLLLL %xxxxHHHH
+    MOV TOS,0(PSP)              \ -- %xxxx_LLLL %HHHH_LLLL
+    RRUM #4,TOS                 \ -- %xxxx_LLLL %xxxx_HHHH
     BIC.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=0
     BIS.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as output
 COLON                           \ high level word starts here 
@@ -6281,11 +9614,11 @@ ENDCODE
 \ BW1 BIC.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as intput
 \     BIS.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=1
 \ COLON                           \ starts a FORTH word
-\     TOP_LCD 2 20_us             \ -- %0000HHHH
-\     TOP_LCD 2 20_us             \ -- %0000HHHH %0000LLLL
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH %0000_LLLL
 \ HI2LO                           \ switch from FORTH to assembler
-\     RLAM #4,0(PSP)              \ -- %HHHH0000 %0000LLLL
-\     ADD.B @PSP+,TOS             \ -- %HHHHLLLL
+\     RLAM #4,0(PSP)              \ -- %HHHH_0000 %0000_LLLL
+\     ADD.B @PSP+,TOS             \ -- %HHHH_LLLL
 \     MOV @RSP+,IP                \ restore IP saved by COLON
 \     MOV @IP+,PC                 \
 \ ENDCODE
@@ -6426,14 +9759,14 @@ MOV @PSP+,TOS                   \     -- TOS
 RET
 ENDASM
 
-\ ------------------------------\
+\ ******************************\
 ASM BACKGROUND                  \
-\ ------------------------------\
+\ ******************************\
 BEGIN
 \     ...                         \ insert here your background task
 \     ...                         \
 \     ...                         \
-    CALL &RXON                  \ comment this line to disable TERMINAL
+    CALL &RXON                  \ comment this line to disable TERMINAL_INPUT
     BIS &LPM_MODE,SR            \
 \ ******************************\
 \ here start all interrupts     \
@@ -6442,23 +9775,43 @@ BEGIN
 \ ******************************\
 AGAIN                           \
 ENDASM                          \
+\ ******************************\
+
+\ ------------------------------\
+ASM SYS_OUT                    \ system OUT init, replaces WARM at the request of STOP.
+\ ------------------------------\
+\     ...                         \ init specific I/O sys as you want
+\     ...                         \ before executing default WARM
+    MOV #WARM,X                 \ ['] WARM 
+    ADD #4,X                    \ >BODY
+    MOV X,PC                    \ EXECUTE    (which activates IO and TERMINAL)
+ENDASM
+\ ------------------------------\
 
 \ ------------------------------\
 CODE STOP                       \ stops multitasking, must to be used before downloading app
 \ ------------------------------\
-\ restore default action of primary DEFERred word SLEEP (assembly version)
 BW1 MOV #SLEEP,X                \ the ASM word SLEEP is only visible in mode assembler. 
     ADD #4,X                    \ X = BODY of SLEEP, X-2 = PFA of SLEEP
-    MOV X,-2(X)                 \ restore the default background
+    MOV X,-2(X)                 \ restore the default background: SLEEP
+    MOV #WARM,X
+    MOV #SYS_OUT,2(X)           \ default WARM is replaced by JMJ_BOX SYS_OUT (ended by default WARM)
+    BIC.B #RC5,&IR_IE           \ clear RC5_Int
+    BIC.B #RC5,&IR_IFG          \ clear RC5_Int flag
+    MOV #0,&LCD_TIM_CTL         \ stop LCD_TIMER
+    MOV #0,&WDT_TIM_CTL         \ stop WDT_TIMER
+    MOV #0,&WDT_TIM_CCTL0       \ clear CCIFG0 disable CCIE0
+    CALL #INIT_VECT             \ reset all vectors other than TERMINAL_int
 COLON                           \ restore default action of primary DEFERred word WARM (FORTH version)
-['] WARM >BODY IS WARM          \ restore the default WARM
 ECHO                            \
-." RC5toLCD is removed. type START to restart"
-COLD                            \ performs reset to reset all interrupt vectors.    
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM                           \ performs reset to reset all interrupt vectors.    
 ;
+\ ------------------------------\
 
 \ ------------------------------\
-CODE APP_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
+CODE SYS_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
 \ ------------------------------\
 \ LCD_TIM_CTL =  %0000 0010 1001 0100\$3C0
 \                    - -             \CNTL Counter lentgh \ 00 = 16 bits
@@ -6488,7 +9841,7 @@ CODE APP_INIT                   \ this routine completes the init of system, i.e
 \ ------------------------------\
 \ set LCD_TIM_ to make 50kHz PWM \ for LCD_Vo; works without interrupt
 \ ------------------------------\
-MOV #%1011010100,&LCD_TIM_CTL   \ SMCLK/8, up mode, clear timer, no int
+MOV #%10_1101_0100,&LCD_TIM_CTL \ SMCLK/8, up mode, clear timer, no int
 \    MOV #0,&LCD_TIM_EX0        \ predivide by 1 in LCD_TIM_EX0 register (8 MHZ)
 FREQ_KHZ @ 16000 = [IF]         \ if 16 MHz
     MOV #1,&LCD_TIM_EX0         \ predivide by 2 in LCD_TIM_EX0 register (16 MHZ)
@@ -6500,7 +9853,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \ ------------------------------\
 \ set LCD_TIM_.2 to generate PWM for LCD_Vo
 \ ------------------------------\
-    MOV #%01100000,&LCD_TIM_CCTLn \ output mode = set/reset \ clear CCIFG
+MOV #%0110_0000,&LCD_TIM_CCTLn  \ output mode = set/reset \ clear CCIFG
     MOV #10,&LCD_TIM_CCRn       \ contrast adjust : 10/20 ==> LCD_Vo = -0V6|+3V6 (Vcc=3V6)
 \    MOV #12,&LCD_TIM_CCRn        \ contrast adjust : 12/20 ==> LCD_Vo = -1V4|+3V3 (Vcc=3V3)
 \ ------------------------------\
@@ -6529,7 +9882,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \                         -     \ TAIE
 \                          -    \ TAIFG
 \ ------------------------------\
-    MOV #%0100010100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
+MOV #%01_0001_0100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
 \ ------------------------------\
 \                        000    \ TAxEX0
 \                        ---    \ TAIDEX    pre divisor
@@ -6595,23 +9948,213 @@ COLON                           \
     ['] CR >BODY IS CR          \ CR executes its default value
     ['] EMIT >BODY IS EMIT      \ EMIT executes its defaulte value
     ." RC5toLCD is running. Type STOP to quit" \ display message on FastForth Terminal
-    ABORT                       \ ...and end APP_INIT with ABORT, no return.
+    PWR_STATE ABORT             \ init DP and continues with ABORT
 ;                               \
+\ ------------------------------\
 
 \ ------------------------------\
 CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
 \ ------------------------------\
-MOV #SLEEP,X                    \ replace default background process
+MOV #SLEEP,X                    \ replace default background process SLEEP
 MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
 MOV #WARM,X                     \ replace default WARM
-MOV #APP_INIT,2(X)              \ by RC5toLCD APP_INIT
-MOV X,PC                        \ then execute it
+MOV #SYS_INIT,2(X)              \ by RC5toLCD SYS_INIT
+MOV X,PC                        \ then execute new WARM
 ENDCODE 
+\ ------------------------------\
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
 
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
 
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] CONSTANT [IF]
+\ https://forth-standard.org/standard/core/CONSTANT
+\ CONSTANT <name>     n --                      define a Forth CONSTANT 
+: CONSTANT 
+CREATE
+HI2LO
+MOV TOS,-2(W)           \   PFA = n
+MOV @PSP+,TOS
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] STATE [IF]
+\ https://forth-standard.org/standard/core/STATE
+\ STATE   -- a-addr       holds compiler state
+STATEADR CONSTANT STATE
+[THEN]
+
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+    MOV @IP+,PC \ 4
+THEN
+XOR #-1,TOS     \ 1 flag Z = 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE     \ immediate
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+\ https://forth-standard.org/standard/core/DEFER
+\ DEFER "<spaces>name"   --
+\ Skip leading space delimiters. Parse name delimited by a space.
+\ Create a definition for name with the execution semantics defined below.
+
+\ name Execution:   --
+\ Execute the xt that name is set to execute, i.e. NEXT (nothing),
+\ until the phrase ' word IS name is executed, causing a new value of xt to be assigned to name.
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(W)        \ CFA = MOV @PC+,PC = BR MOV @IP+,PC
+MOV #NEXT_ADR,-2(W)     \ PFA = address of MOV @IP+,PC to do nothing.
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEFER! [IF]
+\ https://forth-standard.org/standard/core/DEFERStore
+\ Set the word xt1 to execute xt2. An ambiguous condition exists if xt1 is not for a word defined by DEFER.
+CODE DEFER!             \ xt2 xt1 --
+MOV @PSP+,2(TOS)        \ -- xt1=CFA_DEFER          xt2 --> [CFA_DEFER+2]
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] IS [IF]
+\ https://forth-standard.org/standard/core/IS
+\ IS <name>        xt --
+\ used as is :
+\ DEFER DISPLAY                         create a "do nothing" definition (2 CELLS)
+\ inline command : ' U. IS DISPLAY      U. becomes the runtime of the word DISPLAY
+\ or in a definition : ... ['] U. IS DISPLAY ...
+\ KEY, EMIT, CR, ACCEPT and WARM are examples of DEFERred words
+\
+\ as IS replaces the PFA value of any word, it's a TO alias for VARIABLE and CONSTANT words...
+: IS
+STATE @
+IF  POSTPONE ['] POSTPONE DEFER! 
+ELSE ' DEFER! 
+THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+\ CODE 20uS           \ n --      8MHz version
+\ BEGIN               \ 4 + 16 ~ loop
+\     MOV #39,rDOCON   \ 39
+\     BEGIN           \ 4 ~ loop
+\         NOP
+\         SUB #1,rDOCON
+\     0=  UNTIL
+\     SUB #1,TOS      \ 1
+\ 0= UNTIL
+\ MOV #XDOCON,rDOCON  \ 2
+\ MOV @PSP+,TOS
+\ MOV @RSP+,IP        \
+\ ENDCODE
+
 CODE 20_US                      \ n --      n * 20 us
 BEGIN                           \ here we presume that LCD_TIM_IFG = 1...
     BEGIN
@@ -6625,8 +10168,8 @@ MOV @IP+,PC                     \ 4
 ENDCODE
 
 CODE TOP_LCD                    \ LCD Sample
-\                               \ if write : %xxxxWWWW --
-\                               \ if read  : -- %0000RRRR
+\                               \ if write : %xxxx_WWWW --
+\                               \ if read  : -- %0000_RRRR
     BIS.B #LCD_EN,&LCD_CMD_OUT  \ lcd_en 0-->1
     BIT.B #LCD_RW,&LCD_CMD_IN   \ lcd_rw test
 0= IF                           \ write LCD bits pattern
@@ -6647,8 +10190,8 @@ ENDCODE
 CODE LCD_WRC                    \ char --         Write Char
     BIS.B #LCD_RS,&LCD_CMD_OUT  \ lcd_rs=1
 BW1 SUB #2,PSP                  \
-    MOV TOS,0(PSP)              \ -- %xxxxLLLL %HHHHLLLL
-    RRUM #4,TOS                 \ -- %xxxxLLLL %xxxxHHHH
+    MOV TOS,0(PSP)              \ -- %xxxx_LLLL %HHHH_LLLL
+    RRUM #4,TOS                 \ -- %xxxx_LLLL %xxxx_HHHH
     BIC.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=0
     BIS.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as output
 COLON                           \ high level word starts here 
@@ -6688,11 +10231,11 @@ ENDCODE
 \ BW1 BIC.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as intput
 \     BIS.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=1
 \ COLON                           \ starts a FORTH word
-\     TOP_LCD 2 20_us             \ -- %0000HHHH
-\     TOP_LCD 2 20_us             \ -- %0000HHHH %0000LLLL
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH %0000_LLLL
 \ HI2LO                           \ switch from FORTH to assembler
-\     RLAM #4,0(PSP)              \ -- %HHHH0000 %0000LLLL
-\     ADD.B @PSP+,TOS             \ -- %HHHHLLLL
+\     RLAM #4,0(PSP)              \ -- %HHHH_0000 %0000_LLLL
+\     ADD.B @PSP+,TOS             \ -- %HHHH_LLLL
 \     MOV @RSP+,IP                \ restore IP saved by COLON
 \     MOV @IP+,PC                 \
 \ ENDCODE
@@ -6833,14 +10376,14 @@ MOV @PSP+,TOS                   \     -- TOS
 RET
 ENDASM
 
-\ ------------------------------\
+\ ******************************\
 ASM BACKGROUND                  \
-\ ------------------------------\
+\ ******************************\
 BEGIN
 \     ...                         \ insert here your background task
 \     ...                         \
 \     ...                         \
-    CALL &RXON                  \ comment this line to disable TERMINAL
+    CALL &RXON                  \ comment this line to disable TERMINAL_INPUT
     BIS &LPM_MODE,SR            \
 \ ******************************\
 \ here start all interrupts     \
@@ -6849,23 +10392,43 @@ BEGIN
 \ ******************************\
 AGAIN                           \
 ENDASM                          \
+\ ******************************\
+
+\ ------------------------------\
+ASM SYS_OUT                    \ system OUT init, replaces WARM at the request of STOP.
+\ ------------------------------\
+\     ...                         \ init specific I/O sys as you want
+\     ...                         \ before executing default WARM
+    MOV #WARM,X                 \ ['] WARM 
+    ADD #4,X                    \ >BODY
+    MOV X,PC                    \ EXECUTE    (which activates IO and TERMINAL)
+ENDASM
+\ ------------------------------\
 
 \ ------------------------------\
 CODE STOP                       \ stops multitasking, must to be used before downloading app
 \ ------------------------------\
-\ restore default action of primary DEFERred word SLEEP (assembly version)
 BW1 MOV #SLEEP,X                \ the ASM word SLEEP is only visible in mode assembler. 
     ADD #4,X                    \ X = BODY of SLEEP, X-2 = PFA of SLEEP
-    MOV X,-2(X)                 \ restore the default background
+    MOV X,-2(X)                 \ restore the default background: SLEEP
+    MOV #WARM,X
+    MOV #SYS_OUT,2(X)           \ default WARM is replaced by JMJ_BOX SYS_OUT (ended by default WARM)
+    BIC.B #RC5,&IR_IE           \ clear RC5_Int
+    BIC.B #RC5,&IR_IFG          \ clear RC5_Int flag
+    MOV #0,&LCD_TIM_CTL         \ stop LCD_TIMER
+    MOV #0,&WDT_TIM_CTL         \ stop WDT_TIMER
+    MOV #0,&WDT_TIM_CCTL0       \ clear CCIFG0 disable CCIE0
+    CALL #INIT_VECT             \ reset all vectors other than TERMINAL_int
 COLON                           \ restore default action of primary DEFERred word WARM (FORTH version)
-['] WARM >BODY IS WARM          \ restore the default WARM
 ECHO                            \
-." RC5toLCD is removed. type START to restart"
-COLD                            \ performs reset to reset all interrupt vectors.    
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM                           \ performs reset to reset all interrupt vectors.    
 ;
+\ ------------------------------\
 
 \ ------------------------------\
-CODE APP_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
+CODE SYS_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
 \ ------------------------------\
 \ LCD_TIM_CTL =  %0000 0010 1001 0100\$3C0
 \                    - -             \CNTL Counter lentgh \ 00 = 16 bits
@@ -6895,7 +10458,7 @@ CODE APP_INIT                   \ this routine completes the init of system, i.e
 \ ------------------------------\
 \ set LCD_TIM_ to make 50kHz PWM \ for LCD_Vo; works without interrupt
 \ ------------------------------\
-MOV #%1011010100,&LCD_TIM_CTL   \ SMCLK/8, up mode, clear timer, no int
+MOV #%10_1101_0100,&LCD_TIM_CTL \ SMCLK/8, up mode, clear timer, no int
 \    MOV #0,&LCD_TIM_EX0        \ predivide by 1 in LCD_TIM_EX0 register (8 MHZ)
 FREQ_KHZ @ 16000 = [IF]         \ if 16 MHz
     MOV #1,&LCD_TIM_EX0         \ predivide by 2 in LCD_TIM_EX0 register (16 MHZ)
@@ -6907,7 +10470,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \ ------------------------------\
 \ set LCD_TIM_.2 to generate PWM for LCD_Vo
 \ ------------------------------\
-    MOV #%01100000,&LCD_TIM_CCTLn \ output mode = set/reset \ clear CCIFG
+MOV #%0110_0000,&LCD_TIM_CCTLn  \ output mode = set/reset \ clear CCIFG
     MOV #10,&LCD_TIM_CCRn       \ contrast adjust : 10/20 ==> LCD_Vo = -0V6|+3V6 (Vcc=3V6)
 \    MOV #12,&LCD_TIM_CCRn        \ contrast adjust : 12/20 ==> LCD_Vo = -1V4|+3V3 (Vcc=3V3)
 \ ------------------------------\
@@ -6936,7 +10499,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \                         -     \ TAIE
 \                          -    \ TAIFG
 \ ------------------------------\
-    MOV #%0100010100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
+MOV #%01_0001_0100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
 \ ------------------------------\
 \                        000    \ TAxEX0
 \                        ---    \ TAIDEX    pre divisor
@@ -7002,23 +10565,213 @@ COLON                           \
     ['] CR >BODY IS CR          \ CR executes its default value
     ['] EMIT >BODY IS EMIT      \ EMIT executes its defaulte value
     ." RC5toLCD is running. Type STOP to quit" \ display message on FastForth Terminal
-    ABORT                       \ ...and end APP_INIT with ABORT, no return.
+    PWR_STATE ABORT             \ init DP and continues with ABORT
 ;                               \
+\ ------------------------------\
 
 \ ------------------------------\
 CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
 \ ------------------------------\
-MOV #SLEEP,X                    \ replace default background process
+MOV #SLEEP,X                    \ replace default background process SLEEP
 MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
 MOV #WARM,X                     \ replace default WARM
-MOV #APP_INIT,2(X)              \ by RC5toLCD APP_INIT
-MOV X,PC                        \ then execute it
+MOV #SYS_INIT,2(X)              \ by RC5toLCD SYS_INIT
+MOV X,PC                        \ then execute new WARM
 ENDCODE 
+\ ------------------------------\
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
 
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
 
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] CONSTANT [IF]
+\ https://forth-standard.org/standard/core/CONSTANT
+\ CONSTANT <name>     n --                      define a Forth CONSTANT 
+: CONSTANT 
+CREATE
+HI2LO
+MOV TOS,-2(W)           \   PFA = n
+MOV @PSP+,TOS
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] STATE [IF]
+\ https://forth-standard.org/standard/core/STATE
+\ STATE   -- a-addr       holds compiler state
+STATEADR CONSTANT STATE
+[THEN]
+
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+    MOV @IP+,PC \ 4
+THEN
+XOR #-1,TOS     \ 1 flag Z = 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE     \ immediate
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+\ https://forth-standard.org/standard/core/DEFER
+\ DEFER "<spaces>name"   --
+\ Skip leading space delimiters. Parse name delimited by a space.
+\ Create a definition for name with the execution semantics defined below.
+
+\ name Execution:   --
+\ Execute the xt that name is set to execute, i.e. NEXT (nothing),
+\ until the phrase ' word IS name is executed, causing a new value of xt to be assigned to name.
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(W)        \ CFA = MOV @PC+,PC = BR MOV @IP+,PC
+MOV #NEXT_ADR,-2(W)     \ PFA = address of MOV @IP+,PC to do nothing.
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEFER! [IF]
+\ https://forth-standard.org/standard/core/DEFERStore
+\ Set the word xt1 to execute xt2. An ambiguous condition exists if xt1 is not for a word defined by DEFER.
+CODE DEFER!             \ xt2 xt1 --
+MOV @PSP+,2(TOS)        \ -- xt1=CFA_DEFER          xt2 --> [CFA_DEFER+2]
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] IS [IF]
+\ https://forth-standard.org/standard/core/IS
+\ IS <name>        xt --
+\ used as is :
+\ DEFER DISPLAY                         create a "do nothing" definition (2 CELLS)
+\ inline command : ' U. IS DISPLAY      U. becomes the runtime of the word DISPLAY
+\ or in a definition : ... ['] U. IS DISPLAY ...
+\ KEY, EMIT, CR, ACCEPT and WARM are examples of DEFERred words
+\
+\ as IS replaces the PFA value of any word, it's a TO alias for VARIABLE and CONSTANT words...
+: IS
+STATE @
+IF  POSTPONE ['] POSTPONE DEFER! 
+ELSE ' DEFER! 
+THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+\ CODE 20uS           \ n --      8MHz version
+\ BEGIN               \ 4 + 16 ~ loop
+\     MOV #39,rDOCON   \ 39
+\     BEGIN           \ 4 ~ loop
+\         NOP
+\         SUB #1,rDOCON
+\     0=  UNTIL
+\     SUB #1,TOS      \ 1
+\ 0= UNTIL
+\ MOV #XDOCON,rDOCON  \ 2
+\ MOV @PSP+,TOS
+\ MOV @RSP+,IP        \
+\ ENDCODE
+
 CODE 20_US                      \ n --      n * 20 us
 BEGIN                           \ here we presume that LCD_TIM_IFG = 1...
     BEGIN
@@ -7032,8 +10785,8 @@ MOV @IP+,PC                     \ 4
 ENDCODE
 
 CODE TOP_LCD                    \ LCD Sample
-\                               \ if write : %xxxxWWWW --
-\                               \ if read  : -- %0000RRRR
+\                               \ if write : %xxxx_WWWW --
+\                               \ if read  : -- %0000_RRRR
     BIS.B #LCD_EN,&LCD_CMD_OUT  \ lcd_en 0-->1
     BIT.B #LCD_RW,&LCD_CMD_IN   \ lcd_rw test
 0= IF                           \ write LCD bits pattern
@@ -7054,8 +10807,8 @@ ENDCODE
 CODE LCD_WRC                    \ char --         Write Char
     BIS.B #LCD_RS,&LCD_CMD_OUT  \ lcd_rs=1
 BW1 SUB #2,PSP                  \
-    MOV TOS,0(PSP)              \ -- %xxxxLLLL %HHHHLLLL
-    RRUM #4,TOS                 \ -- %xxxxLLLL %xxxxHHHH
+    MOV TOS,0(PSP)              \ -- %xxxx_LLLL %HHHH_LLLL
+    RRUM #4,TOS                 \ -- %xxxx_LLLL %xxxx_HHHH
     BIC.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=0
     BIS.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as output
 COLON                           \ high level word starts here 
@@ -7095,11 +10848,11 @@ ENDCODE
 \ BW1 BIC.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as intput
 \     BIS.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=1
 \ COLON                           \ starts a FORTH word
-\     TOP_LCD 2 20_us             \ -- %0000HHHH
-\     TOP_LCD 2 20_us             \ -- %0000HHHH %0000LLLL
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH %0000_LLLL
 \ HI2LO                           \ switch from FORTH to assembler
-\     RLAM #4,0(PSP)              \ -- %HHHH0000 %0000LLLL
-\     ADD.B @PSP+,TOS             \ -- %HHHHLLLL
+\     RLAM #4,0(PSP)              \ -- %HHHH_0000 %0000_LLLL
+\     ADD.B @PSP+,TOS             \ -- %HHHH_LLLL
 \     MOV @RSP+,IP                \ restore IP saved by COLON
 \     MOV @IP+,PC                 \
 \ ENDCODE
@@ -7240,14 +10993,14 @@ MOV @PSP+,TOS                   \     -- TOS
 RET
 ENDASM
 
-\ ------------------------------\
+\ ******************************\
 ASM BACKGROUND                  \
-\ ------------------------------\
+\ ******************************\
 BEGIN
 \     ...                         \ insert here your background task
 \     ...                         \
 \     ...                         \
-    CALL &RXON                  \ comment this line to disable TERMINAL
+    CALL &RXON                  \ comment this line to disable TERMINAL_INPUT
     BIS &LPM_MODE,SR            \
 \ ******************************\
 \ here start all interrupts     \
@@ -7256,23 +11009,43 @@ BEGIN
 \ ******************************\
 AGAIN                           \
 ENDASM                          \
+\ ******************************\
+
+\ ------------------------------\
+ASM SYS_OUT                    \ system OUT init, replaces WARM at the request of STOP.
+\ ------------------------------\
+\     ...                         \ init specific I/O sys as you want
+\     ...                         \ before executing default WARM
+    MOV #WARM,X                 \ ['] WARM 
+    ADD #4,X                    \ >BODY
+    MOV X,PC                    \ EXECUTE    (which activates IO and TERMINAL)
+ENDASM
+\ ------------------------------\
 
 \ ------------------------------\
 CODE STOP                       \ stops multitasking, must to be used before downloading app
 \ ------------------------------\
-\ restore default action of primary DEFERred word SLEEP (assembly version)
 BW1 MOV #SLEEP,X                \ the ASM word SLEEP is only visible in mode assembler. 
     ADD #4,X                    \ X = BODY of SLEEP, X-2 = PFA of SLEEP
-    MOV X,-2(X)                 \ restore the default background
+    MOV X,-2(X)                 \ restore the default background: SLEEP
+    MOV #WARM,X
+    MOV #SYS_OUT,2(X)           \ default WARM is replaced by JMJ_BOX SYS_OUT (ended by default WARM)
+    BIC.B #RC5,&IR_IE           \ clear RC5_Int
+    BIC.B #RC5,&IR_IFG          \ clear RC5_Int flag
+    MOV #0,&LCD_TIM_CTL         \ stop LCD_TIMER
+    MOV #0,&WDT_TIM_CTL         \ stop WDT_TIMER
+    MOV #0,&WDT_TIM_CCTL0       \ clear CCIFG0 disable CCIE0
+    CALL #INIT_VECT             \ reset all vectors other than TERMINAL_int
 COLON                           \ restore default action of primary DEFERred word WARM (FORTH version)
-['] WARM >BODY IS WARM          \ restore the default WARM
 ECHO                            \
-." RC5toLCD is removed. type START to restart"
-COLD                            \ performs reset to reset all interrupt vectors.    
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM                           \ performs reset to reset all interrupt vectors.    
 ;
+\ ------------------------------\
 
 \ ------------------------------\
-CODE APP_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
+CODE SYS_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
 \ ------------------------------\
 \ LCD_TIM_CTL =  %0000 0010 1001 0100\$3C0
 \                    - -             \CNTL Counter lentgh \ 00 = 16 bits
@@ -7302,7 +11075,7 @@ CODE APP_INIT                   \ this routine completes the init of system, i.e
 \ ------------------------------\
 \ set LCD_TIM_ to make 50kHz PWM \ for LCD_Vo; works without interrupt
 \ ------------------------------\
-MOV #%1011010100,&LCD_TIM_CTL   \ SMCLK/8, up mode, clear timer, no int
+MOV #%10_1101_0100,&LCD_TIM_CTL \ SMCLK/8, up mode, clear timer, no int
 \    MOV #0,&LCD_TIM_EX0        \ predivide by 1 in LCD_TIM_EX0 register (8 MHZ)
 FREQ_KHZ @ 16000 = [IF]         \ if 16 MHz
     MOV #1,&LCD_TIM_EX0         \ predivide by 2 in LCD_TIM_EX0 register (16 MHZ)
@@ -7314,7 +11087,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \ ------------------------------\
 \ set LCD_TIM_.2 to generate PWM for LCD_Vo
 \ ------------------------------\
-    MOV #%01100000,&LCD_TIM_CCTLn \ output mode = set/reset \ clear CCIFG
+MOV #%0110_0000,&LCD_TIM_CCTLn  \ output mode = set/reset \ clear CCIFG
     MOV #10,&LCD_TIM_CCRn       \ contrast adjust : 10/20 ==> LCD_Vo = -0V6|+3V6 (Vcc=3V6)
 \    MOV #12,&LCD_TIM_CCRn        \ contrast adjust : 12/20 ==> LCD_Vo = -1V4|+3V3 (Vcc=3V3)
 \ ------------------------------\
@@ -7343,7 +11116,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \                         -     \ TAIE
 \                          -    \ TAIFG
 \ ------------------------------\
-    MOV #%0100010100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
+MOV #%01_0001_0100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
 \ ------------------------------\
 \                        000    \ TAxEX0
 \                        ---    \ TAIDEX    pre divisor
@@ -7409,22 +11182,212 @@ COLON                           \
     ['] CR >BODY IS CR          \ CR executes its default value
     ['] EMIT >BODY IS EMIT      \ EMIT executes its defaulte value
     ." RC5toLCD is running. Type STOP to quit" \ display message on FastForth Terminal
-    ABORT                       \ ...and end APP_INIT with ABORT, no return.
+    PWR_STATE ABORT             \ init DP and continues with ABORT
 ;                               \
+\ ------------------------------\
 
 \ ------------------------------\
 CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
 \ ------------------------------\
-MOV #SLEEP,X                    \ replace default background process
+MOV #SLEEP,X                    \ replace default background process SLEEP
 MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
 MOV #WARM,X                     \ replace default WARM
-MOV #APP_INIT,2(X)              \ by RC5toLCD APP_INIT
-MOV X,PC                        \ then execute it
+MOV #SYS_INIT,2(X)              \ by RC5toLCD SYS_INIT
+MOV X,PC                        \ then execute new WARM
 ENDCODE 
+\ ------------------------------\
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
 
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
 
-MARKER {RC5TOLCD}
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
+
+MARKER {RC5TOLCD}
+
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] CONSTANT [IF]
+\ https://forth-standard.org/standard/core/CONSTANT
+\ CONSTANT <name>     n --                      define a Forth CONSTANT 
+: CONSTANT 
+CREATE
+HI2LO
+MOV TOS,-2(W)           \   PFA = n
+MOV @PSP+,TOS
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] STATE [IF]
+\ https://forth-standard.org/standard/core/STATE
+\ STATE   -- a-addr       holds compiler state
+STATEADR CONSTANT STATE
+[THEN]
+
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+    MOV @IP+,PC \ 4
+THEN
+XOR #-1,TOS     \ 1 flag Z = 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE     \ immediate
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+\ https://forth-standard.org/standard/core/DEFER
+\ DEFER "<spaces>name"   --
+\ Skip leading space delimiters. Parse name delimited by a space.
+\ Create a definition for name with the execution semantics defined below.
+
+\ name Execution:   --
+\ Execute the xt that name is set to execute, i.e. NEXT (nothing),
+\ until the phrase ' word IS name is executed, causing a new value of xt to be assigned to name.
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(W)        \ CFA = MOV @PC+,PC = BR MOV @IP+,PC
+MOV #NEXT_ADR,-2(W)     \ PFA = address of MOV @IP+,PC to do nothing.
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEFER! [IF]
+\ https://forth-standard.org/standard/core/DEFERStore
+\ Set the word xt1 to execute xt2. An ambiguous condition exists if xt1 is not for a word defined by DEFER.
+CODE DEFER!             \ xt2 xt1 --
+MOV @PSP+,2(TOS)        \ -- xt1=CFA_DEFER          xt2 --> [CFA_DEFER+2]
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] IS [IF]
+\ https://forth-standard.org/standard/core/IS
+\ IS <name>        xt --
+\ used as is :
+\ DEFER DISPLAY                         create a "do nothing" definition (2 CELLS)
+\ inline command : ' U. IS DISPLAY      U. becomes the runtime of the word DISPLAY
+\ or in a definition : ... ['] U. IS DISPLAY ...
+\ KEY, EMIT, CR, ACCEPT and WARM are examples of DEFERred words
+\
+\ as IS replaces the PFA value of any word, it's a TO alias for VARIABLE and CONSTANT words...
+: IS
+STATE @
+IF  POSTPONE ['] POSTPONE DEFER! 
+ELSE ' DEFER! 
+THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+\ CODE 20uS           \ n --      8MHz version
+\ BEGIN               \ 4 + 16 ~ loop
+\     MOV #39,rDOCON   \ 39
+\     BEGIN           \ 4 ~ loop
+\         NOP
+\         SUB #1,rDOCON
+\     0=  UNTIL
+\     SUB #1,TOS      \ 1
+\ 0= UNTIL
+\ MOV #XDOCON,rDOCON  \ 2
+\ MOV @PSP+,TOS
+\ MOV @RSP+,IP        \
+\ ENDCODE
 
 CODE 20_US                      \ n --      n * 20 us
 BEGIN                           \ here we presume that LCD_TIM_IFG = 1...
@@ -7439,8 +11402,8 @@ MOV @IP+,PC                     \ 4
 ENDCODE
 
 CODE TOP_LCD                    \ LCD Sample
-\                               \ if write : %xxxxWWWW --
-\                               \ if read  : -- %0000RRRR
+\                               \ if write : %xxxx_WWWW --
+\                               \ if read  : -- %0000_RRRR
     BIS.B #LCD_EN,&LCD_CMD_OUT  \ lcd_en 0-->1
     BIT.B #LCD_RW,&LCD_CMD_IN   \ lcd_rw test
 0= IF                           \ write LCD bits pattern
@@ -7461,8 +11424,8 @@ ENDCODE
 CODE LCD_WRC                    \ char --         Write Char
     BIS.B #LCD_RS,&LCD_CMD_OUT  \ lcd_rs=1
 BW1 SUB #2,PSP                  \
-    MOV TOS,0(PSP)              \ -- %xxxxLLLL %HHHHLLLL
-    RRUM #4,TOS                 \ -- %xxxxLLLL %xxxxHHHH
+    MOV TOS,0(PSP)              \ -- %xxxx_LLLL %HHHH_LLLL
+    RRUM #4,TOS                 \ -- %xxxx_LLLL %xxxx_HHHH
     BIC.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=0
     BIS.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as output
 COLON                           \ high level word starts here 
@@ -7502,11 +11465,11 @@ ENDCODE
 \ BW1 BIC.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as intput
 \     BIS.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=1
 \ COLON                           \ starts a FORTH word
-\     TOP_LCD 2 20_us             \ -- %0000HHHH
-\     TOP_LCD 2 20_us             \ -- %0000HHHH %0000LLLL
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH %0000_LLLL
 \ HI2LO                           \ switch from FORTH to assembler
-\     RLAM #4,0(PSP)              \ -- %HHHH0000 %0000LLLL
-\     ADD.B @PSP+,TOS             \ -- %HHHHLLLL
+\     RLAM #4,0(PSP)              \ -- %HHHH_0000 %0000_LLLL
+\     ADD.B @PSP+,TOS             \ -- %HHHH_LLLL
 \     MOV @RSP+,IP                \ restore IP saved by COLON
 \     MOV @IP+,PC                 \
 \ ENDCODE
@@ -7647,14 +11610,14 @@ MOV @PSP+,TOS                   \     -- TOS
 RET
 ENDASM
 
-\ ------------------------------\
+\ ******************************\
 ASM BACKGROUND                  \
-\ ------------------------------\
+\ ******************************\
 BEGIN
 \     ...                         \ insert here your background task
 \     ...                         \
 \     ...                         \
-    CALL &RXON                  \ comment this line to disable TERMINAL
+    CALL &RXON                  \ comment this line to disable TERMINAL_INPUT
     BIS &LPM_MODE,SR            \
 \ ******************************\
 \ here start all interrupts     \
@@ -7663,23 +11626,43 @@ BEGIN
 \ ******************************\
 AGAIN                           \
 ENDASM                          \
+\ ******************************\
+
+\ ------------------------------\
+ASM SYS_OUT                    \ system OUT init, replaces WARM at the request of STOP.
+\ ------------------------------\
+\     ...                         \ init specific I/O sys as you want
+\     ...                         \ before executing default WARM
+    MOV #WARM,X                 \ ['] WARM 
+    ADD #4,X                    \ >BODY
+    MOV X,PC                    \ EXECUTE    (which activates IO and TERMINAL)
+ENDASM
+\ ------------------------------\
 
 \ ------------------------------\
 CODE STOP                       \ stops multitasking, must to be used before downloading app
 \ ------------------------------\
-\ restore default action of primary DEFERred word SLEEP (assembly version)
 BW1 MOV #SLEEP,X                \ the ASM word SLEEP is only visible in mode assembler. 
     ADD #4,X                    \ X = BODY of SLEEP, X-2 = PFA of SLEEP
-    MOV X,-2(X)                 \ restore the default background
+    MOV X,-2(X)                 \ restore the default background: SLEEP
+    MOV #WARM,X
+    MOV #SYS_OUT,2(X)           \ default WARM is replaced by JMJ_BOX SYS_OUT (ended by default WARM)
+    BIC.B #RC5,&IR_IE           \ clear RC5_Int
+    BIC.B #RC5,&IR_IFG          \ clear RC5_Int flag
+    MOV #0,&LCD_TIM_CTL         \ stop LCD_TIMER
+    MOV #0,&WDT_TIM_CTL         \ stop WDT_TIMER
+    MOV #0,&WDT_TIM_CCTL0       \ clear CCIFG0 disable CCIE0
+    CALL #INIT_VECT             \ reset all vectors other than TERMINAL_int
 COLON                           \ restore default action of primary DEFERred word WARM (FORTH version)
-['] WARM >BODY IS WARM          \ restore the default WARM
 ECHO                            \
-." RC5toLCD is removed. type START to restart"
-COLD                            \ performs reset to reset all interrupt vectors.    
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM                           \ performs reset to reset all interrupt vectors.    
 ;
+\ ------------------------------\
 
 \ ------------------------------\
-CODE APP_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
+CODE SYS_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
 \ ------------------------------\
 \ LCD_TIM_CTL =  %0000 0010 1001 0100\$3C0
 \                    - -             \CNTL Counter lentgh \ 00 = 16 bits
@@ -7709,7 +11692,7 @@ CODE APP_INIT                   \ this routine completes the init of system, i.e
 \ ------------------------------\
 \ set LCD_TIM_ to make 50kHz PWM \ for LCD_Vo; works without interrupt
 \ ------------------------------\
-MOV #%1011010100,&LCD_TIM_CTL   \ SMCLK/8, up mode, clear timer, no int
+MOV #%10_1101_0100,&LCD_TIM_CTL \ SMCLK/8, up mode, clear timer, no int
 \    MOV #0,&LCD_TIM_EX0        \ predivide by 1 in LCD_TIM_EX0 register (8 MHZ)
 FREQ_KHZ @ 16000 = [IF]         \ if 16 MHz
     MOV #1,&LCD_TIM_EX0         \ predivide by 2 in LCD_TIM_EX0 register (16 MHZ)
@@ -7721,7 +11704,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \ ------------------------------\
 \ set LCD_TIM_.2 to generate PWM for LCD_Vo
 \ ------------------------------\
-    MOV #%01100000,&LCD_TIM_CCTLn \ output mode = set/reset \ clear CCIFG
+MOV #%0110_0000,&LCD_TIM_CCTLn  \ output mode = set/reset \ clear CCIFG
     MOV #10,&LCD_TIM_CCRn       \ contrast adjust : 10/20 ==> LCD_Vo = -0V6|+3V6 (Vcc=3V6)
 \    MOV #12,&LCD_TIM_CCRn        \ contrast adjust : 12/20 ==> LCD_Vo = -1V4|+3V3 (Vcc=3V3)
 \ ------------------------------\
@@ -7750,7 +11733,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \                         -     \ TAIE
 \                          -    \ TAIFG
 \ ------------------------------\
-    MOV #%0100010100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
+MOV #%01_0001_0100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
 \ ------------------------------\
 \                        000    \ TAxEX0
 \                        ---    \ TAIDEX    pre divisor
@@ -7816,23 +11799,213 @@ COLON                           \
     ['] CR >BODY IS CR          \ CR executes its default value
     ['] EMIT >BODY IS EMIT      \ EMIT executes its defaulte value
     ." RC5toLCD is running. Type STOP to quit" \ display message on FastForth Terminal
-    ABORT                       \ ...and end APP_INIT with ABORT, no return.
+    PWR_STATE ABORT             \ init DP and continues with ABORT
 ;                               \
+\ ------------------------------\
 
 \ ------------------------------\
 CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
 \ ------------------------------\
-MOV #SLEEP,X                    \ replace default background process
+MOV #SLEEP,X                    \ replace default background process SLEEP
 MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
 MOV #WARM,X                     \ replace default WARM
-MOV #APP_INIT,2(X)              \ by RC5toLCD APP_INIT
-MOV X,PC                        \ then execute it
+MOV #SYS_INIT,2(X)              \ by RC5toLCD SYS_INIT
+MOV X,PC                        \ then execute new WARM
 ENDCODE 
+\ ------------------------------\
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
 
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
 
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] CONSTANT [IF]
+\ https://forth-standard.org/standard/core/CONSTANT
+\ CONSTANT <name>     n --                      define a Forth CONSTANT 
+: CONSTANT 
+CREATE
+HI2LO
+MOV TOS,-2(W)           \   PFA = n
+MOV @PSP+,TOS
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] STATE [IF]
+\ https://forth-standard.org/standard/core/STATE
+\ STATE   -- a-addr       holds compiler state
+STATEADR CONSTANT STATE
+[THEN]
+
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+    MOV @IP+,PC \ 4
+THEN
+XOR #-1,TOS     \ 1 flag Z = 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE     \ immediate
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+\ https://forth-standard.org/standard/core/DEFER
+\ DEFER "<spaces>name"   --
+\ Skip leading space delimiters. Parse name delimited by a space.
+\ Create a definition for name with the execution semantics defined below.
+
+\ name Execution:   --
+\ Execute the xt that name is set to execute, i.e. NEXT (nothing),
+\ until the phrase ' word IS name is executed, causing a new value of xt to be assigned to name.
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(W)        \ CFA = MOV @PC+,PC = BR MOV @IP+,PC
+MOV #NEXT_ADR,-2(W)     \ PFA = address of MOV @IP+,PC to do nothing.
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEFER! [IF]
+\ https://forth-standard.org/standard/core/DEFERStore
+\ Set the word xt1 to execute xt2. An ambiguous condition exists if xt1 is not for a word defined by DEFER.
+CODE DEFER!             \ xt2 xt1 --
+MOV @PSP+,2(TOS)        \ -- xt1=CFA_DEFER          xt2 --> [CFA_DEFER+2]
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] IS [IF]
+\ https://forth-standard.org/standard/core/IS
+\ IS <name>        xt --
+\ used as is :
+\ DEFER DISPLAY                         create a "do nothing" definition (2 CELLS)
+\ inline command : ' U. IS DISPLAY      U. becomes the runtime of the word DISPLAY
+\ or in a definition : ... ['] U. IS DISPLAY ...
+\ KEY, EMIT, CR, ACCEPT and WARM are examples of DEFERred words
+\
+\ as IS replaces the PFA value of any word, it's a TO alias for VARIABLE and CONSTANT words...
+: IS
+STATE @
+IF  POSTPONE ['] POSTPONE DEFER! 
+ELSE ' DEFER! 
+THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+\ CODE 20uS           \ n --      8MHz version
+\ BEGIN               \ 4 + 16 ~ loop
+\     MOV #39,rDOCON   \ 39
+\     BEGIN           \ 4 ~ loop
+\         NOP
+\         SUB #1,rDOCON
+\     0=  UNTIL
+\     SUB #1,TOS      \ 1
+\ 0= UNTIL
+\ MOV #XDOCON,rDOCON  \ 2
+\ MOV @PSP+,TOS
+\ MOV @RSP+,IP        \
+\ ENDCODE
+
 CODE 20_US                      \ n --      n * 20 us
 BEGIN                           \ here we presume that LCD_TIM_IFG = 1...
     BEGIN
@@ -7846,8 +12019,8 @@ MOV @IP+,PC                     \ 4
 ENDCODE
 
 CODE TOP_LCD                    \ LCD Sample
-\                               \ if write : %xxxxWWWW --
-\                               \ if read  : -- %0000RRRR
+\                               \ if write : %xxxx_WWWW --
+\                               \ if read  : -- %0000_RRRR
     BIS.B #LCD_EN,&LCD_CMD_OUT  \ lcd_en 0-->1
     BIT.B #LCD_RW,&LCD_CMD_IN   \ lcd_rw test
 0= IF                           \ write LCD bits pattern
@@ -7868,8 +12041,8 @@ ENDCODE
 CODE LCD_WRC                    \ char --         Write Char
     BIS.B #LCD_RS,&LCD_CMD_OUT  \ lcd_rs=1
 BW1 SUB #2,PSP                  \
-    MOV TOS,0(PSP)              \ -- %xxxxLLLL %HHHHLLLL
-    RRUM #4,TOS                 \ -- %xxxxLLLL %xxxxHHHH
+    MOV TOS,0(PSP)              \ -- %xxxx_LLLL %HHHH_LLLL
+    RRUM #4,TOS                 \ -- %xxxx_LLLL %xxxx_HHHH
     BIC.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=0
     BIS.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as output
 COLON                           \ high level word starts here 
@@ -7909,11 +12082,11 @@ ENDCODE
 \ BW1 BIC.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as intput
 \     BIS.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=1
 \ COLON                           \ starts a FORTH word
-\     TOP_LCD 2 20_us             \ -- %0000HHHH
-\     TOP_LCD 2 20_us             \ -- %0000HHHH %0000LLLL
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH %0000_LLLL
 \ HI2LO                           \ switch from FORTH to assembler
-\     RLAM #4,0(PSP)              \ -- %HHHH0000 %0000LLLL
-\     ADD.B @PSP+,TOS             \ -- %HHHHLLLL
+\     RLAM #4,0(PSP)              \ -- %HHHH_0000 %0000_LLLL
+\     ADD.B @PSP+,TOS             \ -- %HHHH_LLLL
 \     MOV @RSP+,IP                \ restore IP saved by COLON
 \     MOV @IP+,PC                 \
 \ ENDCODE
@@ -8054,14 +12227,14 @@ MOV @PSP+,TOS                   \     -- TOS
 RET
 ENDASM
 
-\ ------------------------------\
+\ ******************************\
 ASM BACKGROUND                  \
-\ ------------------------------\
+\ ******************************\
 BEGIN
 \     ...                         \ insert here your background task
 \     ...                         \
 \     ...                         \
-    CALL &RXON                  \ comment this line to disable TERMINAL
+    CALL &RXON                  \ comment this line to disable TERMINAL_INPUT
     BIS &LPM_MODE,SR            \
 \ ******************************\
 \ here start all interrupts     \
@@ -8070,23 +12243,43 @@ BEGIN
 \ ******************************\
 AGAIN                           \
 ENDASM                          \
+\ ******************************\
+
+\ ------------------------------\
+ASM SYS_OUT                    \ system OUT init, replaces WARM at the request of STOP.
+\ ------------------------------\
+\     ...                         \ init specific I/O sys as you want
+\     ...                         \ before executing default WARM
+    MOV #WARM,X                 \ ['] WARM 
+    ADD #4,X                    \ >BODY
+    MOV X,PC                    \ EXECUTE    (which activates IO and TERMINAL)
+ENDASM
+\ ------------------------------\
 
 \ ------------------------------\
 CODE STOP                       \ stops multitasking, must to be used before downloading app
 \ ------------------------------\
-\ restore default action of primary DEFERred word SLEEP (assembly version)
 BW1 MOV #SLEEP,X                \ the ASM word SLEEP is only visible in mode assembler. 
     ADD #4,X                    \ X = BODY of SLEEP, X-2 = PFA of SLEEP
-    MOV X,-2(X)                 \ restore the default background
+    MOV X,-2(X)                 \ restore the default background: SLEEP
+    MOV #WARM,X
+    MOV #SYS_OUT,2(X)           \ default WARM is replaced by JMJ_BOX SYS_OUT (ended by default WARM)
+    BIC.B #RC5,&IR_IE           \ clear RC5_Int
+    BIC.B #RC5,&IR_IFG          \ clear RC5_Int flag
+    MOV #0,&LCD_TIM_CTL         \ stop LCD_TIMER
+    MOV #0,&WDT_TIM_CTL         \ stop WDT_TIMER
+    MOV #0,&WDT_TIM_CCTL0       \ clear CCIFG0 disable CCIE0
+    CALL #INIT_VECT             \ reset all vectors other than TERMINAL_int
 COLON                           \ restore default action of primary DEFERred word WARM (FORTH version)
-['] WARM >BODY IS WARM          \ restore the default WARM
 ECHO                            \
-." RC5toLCD is removed. type START to restart"
-COLD                            \ performs reset to reset all interrupt vectors.    
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM                           \ performs reset to reset all interrupt vectors.    
 ;
+\ ------------------------------\
 
 \ ------------------------------\
-CODE APP_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
+CODE SYS_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
 \ ------------------------------\
 \ LCD_TIM_CTL =  %0000 0010 1001 0100\$3C0
 \                    - -             \CNTL Counter lentgh \ 00 = 16 bits
@@ -8116,7 +12309,7 @@ CODE APP_INIT                   \ this routine completes the init of system, i.e
 \ ------------------------------\
 \ set LCD_TIM_ to make 50kHz PWM \ for LCD_Vo; works without interrupt
 \ ------------------------------\
-MOV #%1011010100,&LCD_TIM_CTL   \ SMCLK/8, up mode, clear timer, no int
+MOV #%10_1101_0100,&LCD_TIM_CTL \ SMCLK/8, up mode, clear timer, no int
 \    MOV #0,&LCD_TIM_EX0        \ predivide by 1 in LCD_TIM_EX0 register (8 MHZ)
 FREQ_KHZ @ 16000 = [IF]         \ if 16 MHz
     MOV #1,&LCD_TIM_EX0         \ predivide by 2 in LCD_TIM_EX0 register (16 MHZ)
@@ -8128,7 +12321,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \ ------------------------------\
 \ set LCD_TIM_.2 to generate PWM for LCD_Vo
 \ ------------------------------\
-    MOV #%01100000,&LCD_TIM_CCTLn \ output mode = set/reset \ clear CCIFG
+MOV #%0110_0000,&LCD_TIM_CCTLn  \ output mode = set/reset \ clear CCIFG
     MOV #10,&LCD_TIM_CCRn       \ contrast adjust : 10/20 ==> LCD_Vo = -0V6|+3V6 (Vcc=3V6)
 \    MOV #12,&LCD_TIM_CCRn        \ contrast adjust : 12/20 ==> LCD_Vo = -1V4|+3V3 (Vcc=3V3)
 \ ------------------------------\
@@ -8157,7 +12350,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \                         -     \ TAIE
 \                          -    \ TAIFG
 \ ------------------------------\
-    MOV #%0100010100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
+MOV #%01_0001_0100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
 \ ------------------------------\
 \                        000    \ TAxEX0
 \                        ---    \ TAIDEX    pre divisor
@@ -8223,23 +12416,213 @@ COLON                           \
     ['] CR >BODY IS CR          \ CR executes its default value
     ['] EMIT >BODY IS EMIT      \ EMIT executes its defaulte value
     ." RC5toLCD is running. Type STOP to quit" \ display message on FastForth Terminal
-    ABORT                       \ ...and end APP_INIT with ABORT, no return.
+    PWR_STATE ABORT             \ init DP and continues with ABORT
 ;                               \
+\ ------------------------------\
 
 \ ------------------------------\
 CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
 \ ------------------------------\
-MOV #SLEEP,X                    \ replace default background process
+MOV #SLEEP,X                    \ replace default background process SLEEP
 MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
 MOV #WARM,X                     \ replace default WARM
-MOV #APP_INIT,2(X)              \ by RC5toLCD APP_INIT
-MOV X,PC                        \ then execute it
+MOV #SYS_INIT,2(X)              \ by RC5toLCD SYS_INIT
+MOV X,PC                        \ then execute new WARM
 ENDCODE 
+\ ------------------------------\
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
 
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
 
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] CONSTANT [IF]
+\ https://forth-standard.org/standard/core/CONSTANT
+\ CONSTANT <name>     n --                      define a Forth CONSTANT 
+: CONSTANT 
+CREATE
+HI2LO
+MOV TOS,-2(W)           \   PFA = n
+MOV @PSP+,TOS
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] STATE [IF]
+\ https://forth-standard.org/standard/core/STATE
+\ STATE   -- a-addr       holds compiler state
+STATEADR CONSTANT STATE
+[THEN]
+
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+    MOV @IP+,PC \ 4
+THEN
+XOR #-1,TOS     \ 1 flag Z = 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE     \ immediate
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+\ https://forth-standard.org/standard/core/DEFER
+\ DEFER "<spaces>name"   --
+\ Skip leading space delimiters. Parse name delimited by a space.
+\ Create a definition for name with the execution semantics defined below.
+
+\ name Execution:   --
+\ Execute the xt that name is set to execute, i.e. NEXT (nothing),
+\ until the phrase ' word IS name is executed, causing a new value of xt to be assigned to name.
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(W)        \ CFA = MOV @PC+,PC = BR MOV @IP+,PC
+MOV #NEXT_ADR,-2(W)     \ PFA = address of MOV @IP+,PC to do nothing.
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEFER! [IF]
+\ https://forth-standard.org/standard/core/DEFERStore
+\ Set the word xt1 to execute xt2. An ambiguous condition exists if xt1 is not for a word defined by DEFER.
+CODE DEFER!             \ xt2 xt1 --
+MOV @PSP+,2(TOS)        \ -- xt1=CFA_DEFER          xt2 --> [CFA_DEFER+2]
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] IS [IF]
+\ https://forth-standard.org/standard/core/IS
+\ IS <name>        xt --
+\ used as is :
+\ DEFER DISPLAY                         create a "do nothing" definition (2 CELLS)
+\ inline command : ' U. IS DISPLAY      U. becomes the runtime of the word DISPLAY
+\ or in a definition : ... ['] U. IS DISPLAY ...
+\ KEY, EMIT, CR, ACCEPT and WARM are examples of DEFERred words
+\
+\ as IS replaces the PFA value of any word, it's a TO alias for VARIABLE and CONSTANT words...
+: IS
+STATE @
+IF  POSTPONE ['] POSTPONE DEFER! 
+ELSE ' DEFER! 
+THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+\ CODE 20uS           \ n --      8MHz version
+\ BEGIN               \ 4 + 16 ~ loop
+\     MOV #39,rDOCON   \ 39
+\     BEGIN           \ 4 ~ loop
+\         NOP
+\         SUB #1,rDOCON
+\     0=  UNTIL
+\     SUB #1,TOS      \ 1
+\ 0= UNTIL
+\ MOV #XDOCON,rDOCON  \ 2
+\ MOV @PSP+,TOS
+\ MOV @RSP+,IP        \
+\ ENDCODE
+
 CODE 20_US                      \ n --      n * 20 us
 BEGIN                           \ here we presume that LCD_TIM_IFG = 1...
     BEGIN
@@ -8253,8 +12636,8 @@ MOV @IP+,PC                     \ 4
 ENDCODE
 
 CODE TOP_LCD                    \ LCD Sample
-\                               \ if write : %xxxxWWWW --
-\                               \ if read  : -- %0000RRRR
+\                               \ if write : %xxxx_WWWW --
+\                               \ if read  : -- %0000_RRRR
     BIS.B #LCD_EN,&LCD_CMD_OUT  \ lcd_en 0-->1
     BIT.B #LCD_RW,&LCD_CMD_IN   \ lcd_rw test
 0= IF                           \ write LCD bits pattern
@@ -8275,8 +12658,8 @@ ENDCODE
 CODE LCD_WRC                    \ char --         Write Char
     BIS.B #LCD_RS,&LCD_CMD_OUT  \ lcd_rs=1
 BW1 SUB #2,PSP                  \
-    MOV TOS,0(PSP)              \ -- %xxxxLLLL %HHHHLLLL
-    RRUM #4,TOS                 \ -- %xxxxLLLL %xxxxHHHH
+    MOV TOS,0(PSP)              \ -- %xxxx_LLLL %HHHH_LLLL
+    RRUM #4,TOS                 \ -- %xxxx_LLLL %xxxx_HHHH
     BIC.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=0
     BIS.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as output
 COLON                           \ high level word starts here 
@@ -8316,11 +12699,11 @@ ENDCODE
 \ BW1 BIC.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as intput
 \     BIS.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=1
 \ COLON                           \ starts a FORTH word
-\     TOP_LCD 2 20_us             \ -- %0000HHHH
-\     TOP_LCD 2 20_us             \ -- %0000HHHH %0000LLLL
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH %0000_LLLL
 \ HI2LO                           \ switch from FORTH to assembler
-\     RLAM #4,0(PSP)              \ -- %HHHH0000 %0000LLLL
-\     ADD.B @PSP+,TOS             \ -- %HHHHLLLL
+\     RLAM #4,0(PSP)              \ -- %HHHH_0000 %0000_LLLL
+\     ADD.B @PSP+,TOS             \ -- %HHHH_LLLL
 \     MOV @RSP+,IP                \ restore IP saved by COLON
 \     MOV @IP+,PC                 \
 \ ENDCODE
@@ -8461,14 +12844,14 @@ MOV @PSP+,TOS                   \     -- TOS
 RET
 ENDASM
 
-\ ------------------------------\
+\ ******************************\
 ASM BACKGROUND                  \
-\ ------------------------------\
+\ ******************************\
 BEGIN
 \     ...                         \ insert here your background task
 \     ...                         \
 \     ...                         \
-    CALL &RXON                  \ comment this line to disable TERMINAL
+    CALL &RXON                  \ comment this line to disable TERMINAL_INPUT
     BIS &LPM_MODE,SR            \
 \ ******************************\
 \ here start all interrupts     \
@@ -8477,23 +12860,43 @@ BEGIN
 \ ******************************\
 AGAIN                           \
 ENDASM                          \
+\ ******************************\
+
+\ ------------------------------\
+ASM SYS_OUT                    \ system OUT init, replaces WARM at the request of STOP.
+\ ------------------------------\
+\     ...                         \ init specific I/O sys as you want
+\     ...                         \ before executing default WARM
+    MOV #WARM,X                 \ ['] WARM 
+    ADD #4,X                    \ >BODY
+    MOV X,PC                    \ EXECUTE    (which activates IO and TERMINAL)
+ENDASM
+\ ------------------------------\
 
 \ ------------------------------\
 CODE STOP                       \ stops multitasking, must to be used before downloading app
 \ ------------------------------\
-\ restore default action of primary DEFERred word SLEEP (assembly version)
 BW1 MOV #SLEEP,X                \ the ASM word SLEEP is only visible in mode assembler. 
     ADD #4,X                    \ X = BODY of SLEEP, X-2 = PFA of SLEEP
-    MOV X,-2(X)                 \ restore the default background
+    MOV X,-2(X)                 \ restore the default background: SLEEP
+    MOV #WARM,X
+    MOV #SYS_OUT,2(X)           \ default WARM is replaced by JMJ_BOX SYS_OUT (ended by default WARM)
+    BIC.B #RC5,&IR_IE           \ clear RC5_Int
+    BIC.B #RC5,&IR_IFG          \ clear RC5_Int flag
+    MOV #0,&LCD_TIM_CTL         \ stop LCD_TIMER
+    MOV #0,&WDT_TIM_CTL         \ stop WDT_TIMER
+    MOV #0,&WDT_TIM_CCTL0       \ clear CCIFG0 disable CCIE0
+    CALL #INIT_VECT             \ reset all vectors other than TERMINAL_int
 COLON                           \ restore default action of primary DEFERred word WARM (FORTH version)
-['] WARM >BODY IS WARM          \ restore the default WARM
 ECHO                            \
-." RC5toLCD is removed. type START to restart"
-COLD                            \ performs reset to reset all interrupt vectors.    
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM                           \ performs reset to reset all interrupt vectors.    
 ;
+\ ------------------------------\
 
 \ ------------------------------\
-CODE APP_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
+CODE SYS_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
 \ ------------------------------\
 \ LCD_TIM_CTL =  %0000 0010 1001 0100\$3C0
 \                    - -             \CNTL Counter lentgh \ 00 = 16 bits
@@ -8523,7 +12926,7 @@ CODE APP_INIT                   \ this routine completes the init of system, i.e
 \ ------------------------------\
 \ set LCD_TIM_ to make 50kHz PWM \ for LCD_Vo; works without interrupt
 \ ------------------------------\
-MOV #%1011010100,&LCD_TIM_CTL   \ SMCLK/8, up mode, clear timer, no int
+MOV #%10_1101_0100,&LCD_TIM_CTL \ SMCLK/8, up mode, clear timer, no int
 \    MOV #0,&LCD_TIM_EX0        \ predivide by 1 in LCD_TIM_EX0 register (8 MHZ)
 FREQ_KHZ @ 16000 = [IF]         \ if 16 MHz
     MOV #1,&LCD_TIM_EX0         \ predivide by 2 in LCD_TIM_EX0 register (16 MHZ)
@@ -8535,7 +12938,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \ ------------------------------\
 \ set LCD_TIM_.2 to generate PWM for LCD_Vo
 \ ------------------------------\
-    MOV #%01100000,&LCD_TIM_CCTLn \ output mode = set/reset \ clear CCIFG
+MOV #%0110_0000,&LCD_TIM_CCTLn  \ output mode = set/reset \ clear CCIFG
     MOV #10,&LCD_TIM_CCRn       \ contrast adjust : 10/20 ==> LCD_Vo = -0V6|+3V6 (Vcc=3V6)
 \    MOV #12,&LCD_TIM_CCRn        \ contrast adjust : 12/20 ==> LCD_Vo = -1V4|+3V3 (Vcc=3V3)
 \ ------------------------------\
@@ -8564,7 +12967,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \                         -     \ TAIE
 \                          -    \ TAIFG
 \ ------------------------------\
-    MOV #%0100010100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
+MOV #%01_0001_0100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
 \ ------------------------------\
 \                        000    \ TAxEX0
 \                        ---    \ TAIDEX    pre divisor
@@ -8630,23 +13033,213 @@ COLON                           \
     ['] CR >BODY IS CR          \ CR executes its default value
     ['] EMIT >BODY IS EMIT      \ EMIT executes its defaulte value
     ." RC5toLCD is running. Type STOP to quit" \ display message on FastForth Terminal
-    ABORT                       \ ...and end APP_INIT with ABORT, no return.
+    PWR_STATE ABORT             \ init DP and continues with ABORT
 ;                               \
+\ ------------------------------\
 
 \ ------------------------------\
 CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
 \ ------------------------------\
-MOV #SLEEP,X                    \ replace default background process
+MOV #SLEEP,X                    \ replace default background process SLEEP
 MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
 MOV #WARM,X                     \ replace default WARM
-MOV #APP_INIT,2(X)              \ by RC5toLCD APP_INIT
-MOV X,PC                        \ then execute it
+MOV #SYS_INIT,2(X)              \ by RC5toLCD SYS_INIT
+MOV X,PC                        \ then execute new WARM
 ENDCODE 
+\ ------------------------------\
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
 
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
 
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] CONSTANT [IF]
+\ https://forth-standard.org/standard/core/CONSTANT
+\ CONSTANT <name>     n --                      define a Forth CONSTANT 
+: CONSTANT 
+CREATE
+HI2LO
+MOV TOS,-2(W)           \   PFA = n
+MOV @PSP+,TOS
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] STATE [IF]
+\ https://forth-standard.org/standard/core/STATE
+\ STATE   -- a-addr       holds compiler state
+STATEADR CONSTANT STATE
+[THEN]
+
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+    MOV @IP+,PC \ 4
+THEN
+XOR #-1,TOS     \ 1 flag Z = 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE     \ immediate
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+\ https://forth-standard.org/standard/core/DEFER
+\ DEFER "<spaces>name"   --
+\ Skip leading space delimiters. Parse name delimited by a space.
+\ Create a definition for name with the execution semantics defined below.
+
+\ name Execution:   --
+\ Execute the xt that name is set to execute, i.e. NEXT (nothing),
+\ until the phrase ' word IS name is executed, causing a new value of xt to be assigned to name.
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(W)        \ CFA = MOV @PC+,PC = BR MOV @IP+,PC
+MOV #NEXT_ADR,-2(W)     \ PFA = address of MOV @IP+,PC to do nothing.
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEFER! [IF]
+\ https://forth-standard.org/standard/core/DEFERStore
+\ Set the word xt1 to execute xt2. An ambiguous condition exists if xt1 is not for a word defined by DEFER.
+CODE DEFER!             \ xt2 xt1 --
+MOV @PSP+,2(TOS)        \ -- xt1=CFA_DEFER          xt2 --> [CFA_DEFER+2]
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] IS [IF]
+\ https://forth-standard.org/standard/core/IS
+\ IS <name>        xt --
+\ used as is :
+\ DEFER DISPLAY                         create a "do nothing" definition (2 CELLS)
+\ inline command : ' U. IS DISPLAY      U. becomes the runtime of the word DISPLAY
+\ or in a definition : ... ['] U. IS DISPLAY ...
+\ KEY, EMIT, CR, ACCEPT and WARM are examples of DEFERred words
+\
+\ as IS replaces the PFA value of any word, it's a TO alias for VARIABLE and CONSTANT words...
+: IS
+STATE @
+IF  POSTPONE ['] POSTPONE DEFER! 
+ELSE ' DEFER! 
+THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+\ CODE 20uS           \ n --      8MHz version
+\ BEGIN               \ 4 + 16 ~ loop
+\     MOV #39,rDOCON   \ 39
+\     BEGIN           \ 4 ~ loop
+\         NOP
+\         SUB #1,rDOCON
+\     0=  UNTIL
+\     SUB #1,TOS      \ 1
+\ 0= UNTIL
+\ MOV #XDOCON,rDOCON  \ 2
+\ MOV @PSP+,TOS
+\ MOV @RSP+,IP        \
+\ ENDCODE
+
 CODE 20_US                      \ n --      n * 20 us
 BEGIN                           \ here we presume that LCD_TIM_IFG = 1...
     BEGIN
@@ -8660,8 +13253,8 @@ MOV @IP+,PC                     \ 4
 ENDCODE
 
 CODE TOP_LCD                    \ LCD Sample
-\                               \ if write : %xxxxWWWW --
-\                               \ if read  : -- %0000RRRR
+\                               \ if write : %xxxx_WWWW --
+\                               \ if read  : -- %0000_RRRR
     BIS.B #LCD_EN,&LCD_CMD_OUT  \ lcd_en 0-->1
     BIT.B #LCD_RW,&LCD_CMD_IN   \ lcd_rw test
 0= IF                           \ write LCD bits pattern
@@ -8682,8 +13275,8 @@ ENDCODE
 CODE LCD_WRC                    \ char --         Write Char
     BIS.B #LCD_RS,&LCD_CMD_OUT  \ lcd_rs=1
 BW1 SUB #2,PSP                  \
-    MOV TOS,0(PSP)              \ -- %xxxxLLLL %HHHHLLLL
-    RRUM #4,TOS                 \ -- %xxxxLLLL %xxxxHHHH
+    MOV TOS,0(PSP)              \ -- %xxxx_LLLL %HHHH_LLLL
+    RRUM #4,TOS                 \ -- %xxxx_LLLL %xxxx_HHHH
     BIC.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=0
     BIS.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as output
 COLON                           \ high level word starts here 
@@ -8723,11 +13316,11 @@ ENDCODE
 \ BW1 BIC.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as intput
 \     BIS.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=1
 \ COLON                           \ starts a FORTH word
-\     TOP_LCD 2 20_us             \ -- %0000HHHH
-\     TOP_LCD 2 20_us             \ -- %0000HHHH %0000LLLL
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH %0000_LLLL
 \ HI2LO                           \ switch from FORTH to assembler
-\     RLAM #4,0(PSP)              \ -- %HHHH0000 %0000LLLL
-\     ADD.B @PSP+,TOS             \ -- %HHHHLLLL
+\     RLAM #4,0(PSP)              \ -- %HHHH_0000 %0000_LLLL
+\     ADD.B @PSP+,TOS             \ -- %HHHH_LLLL
 \     MOV @RSP+,IP                \ restore IP saved by COLON
 \     MOV @IP+,PC                 \
 \ ENDCODE
@@ -8868,14 +13461,14 @@ MOV @PSP+,TOS                   \     -- TOS
 RET
 ENDASM
 
-\ ------------------------------\
+\ ******************************\
 ASM BACKGROUND                  \
-\ ------------------------------\
+\ ******************************\
 BEGIN
 \     ...                         \ insert here your background task
 \     ...                         \
 \     ...                         \
-    CALL &RXON                  \ comment this line to disable TERMINAL
+    CALL &RXON                  \ comment this line to disable TERMINAL_INPUT
     BIS &LPM_MODE,SR            \
 \ ******************************\
 \ here start all interrupts     \
@@ -8884,23 +13477,43 @@ BEGIN
 \ ******************************\
 AGAIN                           \
 ENDASM                          \
+\ ******************************\
+
+\ ------------------------------\
+ASM SYS_OUT                    \ system OUT init, replaces WARM at the request of STOP.
+\ ------------------------------\
+\     ...                         \ init specific I/O sys as you want
+\     ...                         \ before executing default WARM
+    MOV #WARM,X                 \ ['] WARM 
+    ADD #4,X                    \ >BODY
+    MOV X,PC                    \ EXECUTE    (which activates IO and TERMINAL)
+ENDASM
+\ ------------------------------\
 
 \ ------------------------------\
 CODE STOP                       \ stops multitasking, must to be used before downloading app
 \ ------------------------------\
-\ restore default action of primary DEFERred word SLEEP (assembly version)
 BW1 MOV #SLEEP,X                \ the ASM word SLEEP is only visible in mode assembler. 
     ADD #4,X                    \ X = BODY of SLEEP, X-2 = PFA of SLEEP
-    MOV X,-2(X)                 \ restore the default background
+    MOV X,-2(X)                 \ restore the default background: SLEEP
+    MOV #WARM,X
+    MOV #SYS_OUT,2(X)           \ default WARM is replaced by JMJ_BOX SYS_OUT (ended by default WARM)
+    BIC.B #RC5,&IR_IE           \ clear RC5_Int
+    BIC.B #RC5,&IR_IFG          \ clear RC5_Int flag
+    MOV #0,&LCD_TIM_CTL         \ stop LCD_TIMER
+    MOV #0,&WDT_TIM_CTL         \ stop WDT_TIMER
+    MOV #0,&WDT_TIM_CCTL0       \ clear CCIFG0 disable CCIE0
+    CALL #INIT_VECT             \ reset all vectors other than TERMINAL_int
 COLON                           \ restore default action of primary DEFERred word WARM (FORTH version)
-['] WARM >BODY IS WARM          \ restore the default WARM
 ECHO                            \
-." RC5toLCD is removed. type START to restart"
-COLD                            \ performs reset to reset all interrupt vectors.    
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM                           \ performs reset to reset all interrupt vectors.    
 ;
+\ ------------------------------\
 
 \ ------------------------------\
-CODE APP_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
+CODE SYS_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
 \ ------------------------------\
 \ LCD_TIM_CTL =  %0000 0010 1001 0100\$3C0
 \                    - -             \CNTL Counter lentgh \ 00 = 16 bits
@@ -8930,7 +13543,7 @@ CODE APP_INIT                   \ this routine completes the init of system, i.e
 \ ------------------------------\
 \ set LCD_TIM_ to make 50kHz PWM \ for LCD_Vo; works without interrupt
 \ ------------------------------\
-MOV #%1011010100,&LCD_TIM_CTL   \ SMCLK/8, up mode, clear timer, no int
+MOV #%10_1101_0100,&LCD_TIM_CTL \ SMCLK/8, up mode, clear timer, no int
 \    MOV #0,&LCD_TIM_EX0        \ predivide by 1 in LCD_TIM_EX0 register (8 MHZ)
 FREQ_KHZ @ 16000 = [IF]         \ if 16 MHz
     MOV #1,&LCD_TIM_EX0         \ predivide by 2 in LCD_TIM_EX0 register (16 MHZ)
@@ -8942,7 +13555,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \ ------------------------------\
 \ set LCD_TIM_.2 to generate PWM for LCD_Vo
 \ ------------------------------\
-    MOV #%01100000,&LCD_TIM_CCTLn \ output mode = set/reset \ clear CCIFG
+MOV #%0110_0000,&LCD_TIM_CCTLn  \ output mode = set/reset \ clear CCIFG
     MOV #10,&LCD_TIM_CCRn       \ contrast adjust : 10/20 ==> LCD_Vo = -0V6|+3V6 (Vcc=3V6)
 \    MOV #12,&LCD_TIM_CCRn        \ contrast adjust : 12/20 ==> LCD_Vo = -1V4|+3V3 (Vcc=3V3)
 \ ------------------------------\
@@ -8971,7 +13584,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \                         -     \ TAIE
 \                          -    \ TAIFG
 \ ------------------------------\
-    MOV #%0100010100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
+MOV #%01_0001_0100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
 \ ------------------------------\
 \                        000    \ TAxEX0
 \                        ---    \ TAIDEX    pre divisor
@@ -9037,23 +13650,213 @@ COLON                           \
     ['] CR >BODY IS CR          \ CR executes its default value
     ['] EMIT >BODY IS EMIT      \ EMIT executes its defaulte value
     ." RC5toLCD is running. Type STOP to quit" \ display message on FastForth Terminal
-    ABORT                       \ ...and end APP_INIT with ABORT, no return.
+    PWR_STATE ABORT             \ init DP and continues with ABORT
 ;                               \
+\ ------------------------------\
 
 \ ------------------------------\
 CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
 \ ------------------------------\
-MOV #SLEEP,X                    \ replace default background process
+MOV #SLEEP,X                    \ replace default background process SLEEP
 MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
 MOV #WARM,X                     \ replace default WARM
-MOV #APP_INIT,2(X)              \ by RC5toLCD APP_INIT
-MOV X,PC                        \ then execute it
+MOV #SYS_INIT,2(X)              \ by RC5toLCD SYS_INIT
+MOV X,PC                        \ then execute new WARM
 ENDCODE 
+\ ------------------------------\
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
 
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
 
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] CONSTANT [IF]
+\ https://forth-standard.org/standard/core/CONSTANT
+\ CONSTANT <name>     n --                      define a Forth CONSTANT 
+: CONSTANT 
+CREATE
+HI2LO
+MOV TOS,-2(W)           \   PFA = n
+MOV @PSP+,TOS
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] STATE [IF]
+\ https://forth-standard.org/standard/core/STATE
+\ STATE   -- a-addr       holds compiler state
+STATEADR CONSTANT STATE
+[THEN]
+
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+    MOV @IP+,PC \ 4
+THEN
+XOR #-1,TOS     \ 1 flag Z = 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE     \ immediate
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+\ https://forth-standard.org/standard/core/DEFER
+\ DEFER "<spaces>name"   --
+\ Skip leading space delimiters. Parse name delimited by a space.
+\ Create a definition for name with the execution semantics defined below.
+
+\ name Execution:   --
+\ Execute the xt that name is set to execute, i.e. NEXT (nothing),
+\ until the phrase ' word IS name is executed, causing a new value of xt to be assigned to name.
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(W)        \ CFA = MOV @PC+,PC = BR MOV @IP+,PC
+MOV #NEXT_ADR,-2(W)     \ PFA = address of MOV @IP+,PC to do nothing.
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEFER! [IF]
+\ https://forth-standard.org/standard/core/DEFERStore
+\ Set the word xt1 to execute xt2. An ambiguous condition exists if xt1 is not for a word defined by DEFER.
+CODE DEFER!             \ xt2 xt1 --
+MOV @PSP+,2(TOS)        \ -- xt1=CFA_DEFER          xt2 --> [CFA_DEFER+2]
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] IS [IF]
+\ https://forth-standard.org/standard/core/IS
+\ IS <name>        xt --
+\ used as is :
+\ DEFER DISPLAY                         create a "do nothing" definition (2 CELLS)
+\ inline command : ' U. IS DISPLAY      U. becomes the runtime of the word DISPLAY
+\ or in a definition : ... ['] U. IS DISPLAY ...
+\ KEY, EMIT, CR, ACCEPT and WARM are examples of DEFERred words
+\
+\ as IS replaces the PFA value of any word, it's a TO alias for VARIABLE and CONSTANT words...
+: IS
+STATE @
+IF  POSTPONE ['] POSTPONE DEFER! 
+ELSE ' DEFER! 
+THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+\ CODE 20uS           \ n --      8MHz version
+\ BEGIN               \ 4 + 16 ~ loop
+\     MOV #39,rDOCON   \ 39
+\     BEGIN           \ 4 ~ loop
+\         NOP
+\         SUB #1,rDOCON
+\     0=  UNTIL
+\     SUB #1,TOS      \ 1
+\ 0= UNTIL
+\ MOV #XDOCON,rDOCON  \ 2
+\ MOV @PSP+,TOS
+\ MOV @RSP+,IP        \
+\ ENDCODE
+
 CODE 20_US                      \ n --      n * 20 us
 BEGIN                           \ here we presume that LCD_TIM_IFG = 1...
     BEGIN
@@ -9067,8 +13870,8 @@ MOV @IP+,PC                     \ 4
 ENDCODE
 
 CODE TOP_LCD                    \ LCD Sample
-\                               \ if write : %xxxxWWWW --
-\                               \ if read  : -- %0000RRRR
+\                               \ if write : %xxxx_WWWW --
+\                               \ if read  : -- %0000_RRRR
     BIS.B #LCD_EN,&LCD_CMD_OUT  \ lcd_en 0-->1
     BIT.B #LCD_RW,&LCD_CMD_IN   \ lcd_rw test
 0= IF                           \ write LCD bits pattern
@@ -9089,8 +13892,8 @@ ENDCODE
 CODE LCD_WRC                    \ char --         Write Char
     BIS.B #LCD_RS,&LCD_CMD_OUT  \ lcd_rs=1
 BW1 SUB #2,PSP                  \
-    MOV TOS,0(PSP)              \ -- %xxxxLLLL %HHHHLLLL
-    RRUM #4,TOS                 \ -- %xxxxLLLL %xxxxHHHH
+    MOV TOS,0(PSP)              \ -- %xxxx_LLLL %HHHH_LLLL
+    RRUM #4,TOS                 \ -- %xxxx_LLLL %xxxx_HHHH
     BIC.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=0
     BIS.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as output
 COLON                           \ high level word starts here 
@@ -9130,11 +13933,11 @@ ENDCODE
 \ BW1 BIC.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as intput
 \     BIS.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=1
 \ COLON                           \ starts a FORTH word
-\     TOP_LCD 2 20_us             \ -- %0000HHHH
-\     TOP_LCD 2 20_us             \ -- %0000HHHH %0000LLLL
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH %0000_LLLL
 \ HI2LO                           \ switch from FORTH to assembler
-\     RLAM #4,0(PSP)              \ -- %HHHH0000 %0000LLLL
-\     ADD.B @PSP+,TOS             \ -- %HHHHLLLL
+\     RLAM #4,0(PSP)              \ -- %HHHH_0000 %0000_LLLL
+\     ADD.B @PSP+,TOS             \ -- %HHHH_LLLL
 \     MOV @RSP+,IP                \ restore IP saved by COLON
 \     MOV @IP+,PC                 \
 \ ENDCODE
@@ -9275,14 +14078,14 @@ MOV @PSP+,TOS                   \     -- TOS
 RET
 ENDASM
 
-\ ------------------------------\
+\ ******************************\
 ASM BACKGROUND                  \
-\ ------------------------------\
+\ ******************************\
 BEGIN
 \     ...                         \ insert here your background task
 \     ...                         \
 \     ...                         \
-    CALL &RXON                  \ comment this line to disable TERMINAL
+    CALL &RXON                  \ comment this line to disable TERMINAL_INPUT
     BIS &LPM_MODE,SR            \
 \ ******************************\
 \ here start all interrupts     \
@@ -9291,23 +14094,43 @@ BEGIN
 \ ******************************\
 AGAIN                           \
 ENDASM                          \
+\ ******************************\
+
+\ ------------------------------\
+ASM SYS_OUT                    \ system OUT init, replaces WARM at the request of STOP.
+\ ------------------------------\
+\     ...                         \ init specific I/O sys as you want
+\     ...                         \ before executing default WARM
+    MOV #WARM,X                 \ ['] WARM 
+    ADD #4,X                    \ >BODY
+    MOV X,PC                    \ EXECUTE    (which activates IO and TERMINAL)
+ENDASM
+\ ------------------------------\
 
 \ ------------------------------\
 CODE STOP                       \ stops multitasking, must to be used before downloading app
 \ ------------------------------\
-\ restore default action of primary DEFERred word SLEEP (assembly version)
 BW1 MOV #SLEEP,X                \ the ASM word SLEEP is only visible in mode assembler. 
     ADD #4,X                    \ X = BODY of SLEEP, X-2 = PFA of SLEEP
-    MOV X,-2(X)                 \ restore the default background
+    MOV X,-2(X)                 \ restore the default background: SLEEP
+    MOV #WARM,X
+    MOV #SYS_OUT,2(X)           \ default WARM is replaced by JMJ_BOX SYS_OUT (ended by default WARM)
+    BIC.B #RC5,&IR_IE           \ clear RC5_Int
+    BIC.B #RC5,&IR_IFG          \ clear RC5_Int flag
+    MOV #0,&LCD_TIM_CTL         \ stop LCD_TIMER
+    MOV #0,&WDT_TIM_CTL         \ stop WDT_TIMER
+    MOV #0,&WDT_TIM_CCTL0       \ clear CCIFG0 disable CCIE0
+    CALL #INIT_VECT             \ reset all vectors other than TERMINAL_int
 COLON                           \ restore default action of primary DEFERred word WARM (FORTH version)
-['] WARM >BODY IS WARM          \ restore the default WARM
 ECHO                            \
-." RC5toLCD is removed. type START to restart"
-COLD                            \ performs reset to reset all interrupt vectors.    
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM                           \ performs reset to reset all interrupt vectors.    
 ;
+\ ------------------------------\
 
 \ ------------------------------\
-CODE APP_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
+CODE SYS_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
 \ ------------------------------\
 \ LCD_TIM_CTL =  %0000 0010 1001 0100\$3C0
 \                    - -             \CNTL Counter lentgh \ 00 = 16 bits
@@ -9337,7 +14160,7 @@ CODE APP_INIT                   \ this routine completes the init of system, i.e
 \ ------------------------------\
 \ set LCD_TIM_ to make 50kHz PWM \ for LCD_Vo; works without interrupt
 \ ------------------------------\
-MOV #%1011010100,&LCD_TIM_CTL   \ SMCLK/8, up mode, clear timer, no int
+MOV #%10_1101_0100,&LCD_TIM_CTL \ SMCLK/8, up mode, clear timer, no int
 \    MOV #0,&LCD_TIM_EX0        \ predivide by 1 in LCD_TIM_EX0 register (8 MHZ)
 FREQ_KHZ @ 16000 = [IF]         \ if 16 MHz
     MOV #1,&LCD_TIM_EX0         \ predivide by 2 in LCD_TIM_EX0 register (16 MHZ)
@@ -9349,7 +14172,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \ ------------------------------\
 \ set LCD_TIM_.2 to generate PWM for LCD_Vo
 \ ------------------------------\
-    MOV #%01100000,&LCD_TIM_CCTLn \ output mode = set/reset \ clear CCIFG
+MOV #%0110_0000,&LCD_TIM_CCTLn  \ output mode = set/reset \ clear CCIFG
     MOV #10,&LCD_TIM_CCRn       \ contrast adjust : 10/20 ==> LCD_Vo = -0V6|+3V6 (Vcc=3V6)
 \    MOV #12,&LCD_TIM_CCRn        \ contrast adjust : 12/20 ==> LCD_Vo = -1V4|+3V3 (Vcc=3V3)
 \ ------------------------------\
@@ -9378,7 +14201,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \                         -     \ TAIE
 \                          -    \ TAIFG
 \ ------------------------------\
-    MOV #%0100010100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
+MOV #%01_0001_0100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
 \ ------------------------------\
 \                        000    \ TAxEX0
 \                        ---    \ TAIDEX    pre divisor
@@ -9444,23 +14267,213 @@ COLON                           \
     ['] CR >BODY IS CR          \ CR executes its default value
     ['] EMIT >BODY IS EMIT      \ EMIT executes its defaulte value
     ." RC5toLCD is running. Type STOP to quit" \ display message on FastForth Terminal
-    ABORT                       \ ...and end APP_INIT with ABORT, no return.
+    PWR_STATE ABORT             \ init DP and continues with ABORT
 ;                               \
+\ ------------------------------\
 
 \ ------------------------------\
 CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
 \ ------------------------------\
-MOV #SLEEP,X                    \ replace default background process
+MOV #SLEEP,X                    \ replace default background process SLEEP
 MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
 MOV #WARM,X                     \ replace default WARM
-MOV #APP_INIT,2(X)              \ by RC5toLCD APP_INIT
-MOV X,PC                        \ then execute it
+MOV #SYS_INIT,2(X)              \ by RC5toLCD SYS_INIT
+MOV X,PC                        \ then execute new WARM
 ENDCODE 
+\ ------------------------------\
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
 
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
 
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] CONSTANT [IF]
+\ https://forth-standard.org/standard/core/CONSTANT
+\ CONSTANT <name>     n --                      define a Forth CONSTANT 
+: CONSTANT 
+CREATE
+HI2LO
+MOV TOS,-2(W)           \   PFA = n
+MOV @PSP+,TOS
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] STATE [IF]
+\ https://forth-standard.org/standard/core/STATE
+\ STATE   -- a-addr       holds compiler state
+STATEADR CONSTANT STATE
+[THEN]
+
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+    MOV @IP+,PC \ 4
+THEN
+XOR #-1,TOS     \ 1 flag Z = 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE     \ immediate
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+\ https://forth-standard.org/standard/core/DEFER
+\ DEFER "<spaces>name"   --
+\ Skip leading space delimiters. Parse name delimited by a space.
+\ Create a definition for name with the execution semantics defined below.
+
+\ name Execution:   --
+\ Execute the xt that name is set to execute, i.e. NEXT (nothing),
+\ until the phrase ' word IS name is executed, causing a new value of xt to be assigned to name.
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(W)        \ CFA = MOV @PC+,PC = BR MOV @IP+,PC
+MOV #NEXT_ADR,-2(W)     \ PFA = address of MOV @IP+,PC to do nothing.
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEFER! [IF]
+\ https://forth-standard.org/standard/core/DEFERStore
+\ Set the word xt1 to execute xt2. An ambiguous condition exists if xt1 is not for a word defined by DEFER.
+CODE DEFER!             \ xt2 xt1 --
+MOV @PSP+,2(TOS)        \ -- xt1=CFA_DEFER          xt2 --> [CFA_DEFER+2]
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] IS [IF]
+\ https://forth-standard.org/standard/core/IS
+\ IS <name>        xt --
+\ used as is :
+\ DEFER DISPLAY                         create a "do nothing" definition (2 CELLS)
+\ inline command : ' U. IS DISPLAY      U. becomes the runtime of the word DISPLAY
+\ or in a definition : ... ['] U. IS DISPLAY ...
+\ KEY, EMIT, CR, ACCEPT and WARM are examples of DEFERred words
+\
+\ as IS replaces the PFA value of any word, it's a TO alias for VARIABLE and CONSTANT words...
+: IS
+STATE @
+IF  POSTPONE ['] POSTPONE DEFER! 
+ELSE ' DEFER! 
+THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+\ CODE 20uS           \ n --      8MHz version
+\ BEGIN               \ 4 + 16 ~ loop
+\     MOV #39,rDOCON   \ 39
+\     BEGIN           \ 4 ~ loop
+\         NOP
+\         SUB #1,rDOCON
+\     0=  UNTIL
+\     SUB #1,TOS      \ 1
+\ 0= UNTIL
+\ MOV #XDOCON,rDOCON  \ 2
+\ MOV @PSP+,TOS
+\ MOV @RSP+,IP        \
+\ ENDCODE
+
 CODE 20_US                      \ n --      n * 20 us
 BEGIN                           \ here we presume that LCD_TIM_IFG = 1...
     BEGIN
@@ -9474,8 +14487,8 @@ MOV @IP+,PC                     \ 4
 ENDCODE
 
 CODE TOP_LCD                    \ LCD Sample
-\                               \ if write : %xxxxWWWW --
-\                               \ if read  : -- %0000RRRR
+\                               \ if write : %xxxx_WWWW --
+\                               \ if read  : -- %0000_RRRR
     BIS.B #LCD_EN,&LCD_CMD_OUT  \ lcd_en 0-->1
     BIT.B #LCD_RW,&LCD_CMD_IN   \ lcd_rw test
 0= IF                           \ write LCD bits pattern
@@ -9496,8 +14509,8 @@ ENDCODE
 CODE LCD_WRC                    \ char --         Write Char
     BIS.B #LCD_RS,&LCD_CMD_OUT  \ lcd_rs=1
 BW1 SUB #2,PSP                  \
-    MOV TOS,0(PSP)              \ -- %xxxxLLLL %HHHHLLLL
-    RRUM #4,TOS                 \ -- %xxxxLLLL %xxxxHHHH
+    MOV TOS,0(PSP)              \ -- %xxxx_LLLL %HHHH_LLLL
+    RRUM #4,TOS                 \ -- %xxxx_LLLL %xxxx_HHHH
     BIC.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=0
     BIS.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as output
 COLON                           \ high level word starts here 
@@ -9537,11 +14550,11 @@ ENDCODE
 \ BW1 BIC.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as intput
 \     BIS.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=1
 \ COLON                           \ starts a FORTH word
-\     TOP_LCD 2 20_us             \ -- %0000HHHH
-\     TOP_LCD 2 20_us             \ -- %0000HHHH %0000LLLL
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH %0000_LLLL
 \ HI2LO                           \ switch from FORTH to assembler
-\     RLAM #4,0(PSP)              \ -- %HHHH0000 %0000LLLL
-\     ADD.B @PSP+,TOS             \ -- %HHHHLLLL
+\     RLAM #4,0(PSP)              \ -- %HHHH_0000 %0000_LLLL
+\     ADD.B @PSP+,TOS             \ -- %HHHH_LLLL
 \     MOV @RSP+,IP                \ restore IP saved by COLON
 \     MOV @IP+,PC                 \
 \ ENDCODE
@@ -9682,14 +14695,14 @@ MOV @PSP+,TOS                   \     -- TOS
 RET
 ENDASM
 
-\ ------------------------------\
+\ ******************************\
 ASM BACKGROUND                  \
-\ ------------------------------\
+\ ******************************\
 BEGIN
 \     ...                         \ insert here your background task
 \     ...                         \
 \     ...                         \
-    CALL &RXON                  \ comment this line to disable TERMINAL
+    CALL &RXON                  \ comment this line to disable TERMINAL_INPUT
     BIS &LPM_MODE,SR            \
 \ ******************************\
 \ here start all interrupts     \
@@ -9698,23 +14711,43 @@ BEGIN
 \ ******************************\
 AGAIN                           \
 ENDASM                          \
+\ ******************************\
+
+\ ------------------------------\
+ASM SYS_OUT                    \ system OUT init, replaces WARM at the request of STOP.
+\ ------------------------------\
+\     ...                         \ init specific I/O sys as you want
+\     ...                         \ before executing default WARM
+    MOV #WARM,X                 \ ['] WARM 
+    ADD #4,X                    \ >BODY
+    MOV X,PC                    \ EXECUTE    (which activates IO and TERMINAL)
+ENDASM
+\ ------------------------------\
 
 \ ------------------------------\
 CODE STOP                       \ stops multitasking, must to be used before downloading app
 \ ------------------------------\
-\ restore default action of primary DEFERred word SLEEP (assembly version)
 BW1 MOV #SLEEP,X                \ the ASM word SLEEP is only visible in mode assembler. 
     ADD #4,X                    \ X = BODY of SLEEP, X-2 = PFA of SLEEP
-    MOV X,-2(X)                 \ restore the default background
+    MOV X,-2(X)                 \ restore the default background: SLEEP
+    MOV #WARM,X
+    MOV #SYS_OUT,2(X)           \ default WARM is replaced by JMJ_BOX SYS_OUT (ended by default WARM)
+    BIC.B #RC5,&IR_IE           \ clear RC5_Int
+    BIC.B #RC5,&IR_IFG          \ clear RC5_Int flag
+    MOV #0,&LCD_TIM_CTL         \ stop LCD_TIMER
+    MOV #0,&WDT_TIM_CTL         \ stop WDT_TIMER
+    MOV #0,&WDT_TIM_CCTL0       \ clear CCIFG0 disable CCIE0
+    CALL #INIT_VECT             \ reset all vectors other than TERMINAL_int
 COLON                           \ restore default action of primary DEFERred word WARM (FORTH version)
-['] WARM >BODY IS WARM          \ restore the default WARM
 ECHO                            \
-." RC5toLCD is removed. type START to restart"
-COLD                            \ performs reset to reset all interrupt vectors.    
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM                           \ performs reset to reset all interrupt vectors.    
 ;
+\ ------------------------------\
 
 \ ------------------------------\
-CODE APP_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
+CODE SYS_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
 \ ------------------------------\
 \ LCD_TIM_CTL =  %0000 0010 1001 0100\$3C0
 \                    - -             \CNTL Counter lentgh \ 00 = 16 bits
@@ -9744,7 +14777,7 @@ CODE APP_INIT                   \ this routine completes the init of system, i.e
 \ ------------------------------\
 \ set LCD_TIM_ to make 50kHz PWM \ for LCD_Vo; works without interrupt
 \ ------------------------------\
-MOV #%1011010100,&LCD_TIM_CTL   \ SMCLK/8, up mode, clear timer, no int
+MOV #%10_1101_0100,&LCD_TIM_CTL \ SMCLK/8, up mode, clear timer, no int
 \    MOV #0,&LCD_TIM_EX0        \ predivide by 1 in LCD_TIM_EX0 register (8 MHZ)
 FREQ_KHZ @ 16000 = [IF]         \ if 16 MHz
     MOV #1,&LCD_TIM_EX0         \ predivide by 2 in LCD_TIM_EX0 register (16 MHZ)
@@ -9756,7 +14789,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \ ------------------------------\
 \ set LCD_TIM_.2 to generate PWM for LCD_Vo
 \ ------------------------------\
-    MOV #%01100000,&LCD_TIM_CCTLn \ output mode = set/reset \ clear CCIFG
+MOV #%0110_0000,&LCD_TIM_CCTLn  \ output mode = set/reset \ clear CCIFG
     MOV #10,&LCD_TIM_CCRn       \ contrast adjust : 10/20 ==> LCD_Vo = -0V6|+3V6 (Vcc=3V6)
 \    MOV #12,&LCD_TIM_CCRn        \ contrast adjust : 12/20 ==> LCD_Vo = -1V4|+3V3 (Vcc=3V3)
 \ ------------------------------\
@@ -9785,7 +14818,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \                         -     \ TAIE
 \                          -    \ TAIFG
 \ ------------------------------\
-    MOV #%0100010100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
+MOV #%01_0001_0100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
 \ ------------------------------\
 \                        000    \ TAxEX0
 \                        ---    \ TAIDEX    pre divisor
@@ -9851,23 +14884,213 @@ COLON                           \
     ['] CR >BODY IS CR          \ CR executes its default value
     ['] EMIT >BODY IS EMIT      \ EMIT executes its defaulte value
     ." RC5toLCD is running. Type STOP to quit" \ display message on FastForth Terminal
-    ABORT                       \ ...and end APP_INIT with ABORT, no return.
+    PWR_STATE ABORT             \ init DP and continues with ABORT
 ;                               \
+\ ------------------------------\
 
 \ ------------------------------\
 CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
 \ ------------------------------\
-MOV #SLEEP,X                    \ replace default background process
+MOV #SLEEP,X                    \ replace default background process SLEEP
 MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
 MOV #WARM,X                     \ replace default WARM
-MOV #APP_INIT,2(X)              \ by RC5toLCD APP_INIT
-MOV X,PC                        \ then execute it
+MOV #SYS_INIT,2(X)              \ by RC5toLCD SYS_INIT
+MOV X,PC                        \ then execute new WARM
 ENDCODE 
+\ ------------------------------\
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
 
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
 
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] CONSTANT [IF]
+\ https://forth-standard.org/standard/core/CONSTANT
+\ CONSTANT <name>     n --                      define a Forth CONSTANT 
+: CONSTANT 
+CREATE
+HI2LO
+MOV TOS,-2(W)           \   PFA = n
+MOV @PSP+,TOS
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] STATE [IF]
+\ https://forth-standard.org/standard/core/STATE
+\ STATE   -- a-addr       holds compiler state
+STATEADR CONSTANT STATE
+[THEN]
+
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+    MOV @IP+,PC \ 4
+THEN
+XOR #-1,TOS     \ 1 flag Z = 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE     \ immediate
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+\ https://forth-standard.org/standard/core/DEFER
+\ DEFER "<spaces>name"   --
+\ Skip leading space delimiters. Parse name delimited by a space.
+\ Create a definition for name with the execution semantics defined below.
+
+\ name Execution:   --
+\ Execute the xt that name is set to execute, i.e. NEXT (nothing),
+\ until the phrase ' word IS name is executed, causing a new value of xt to be assigned to name.
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(W)        \ CFA = MOV @PC+,PC = BR MOV @IP+,PC
+MOV #NEXT_ADR,-2(W)     \ PFA = address of MOV @IP+,PC to do nothing.
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEFER! [IF]
+\ https://forth-standard.org/standard/core/DEFERStore
+\ Set the word xt1 to execute xt2. An ambiguous condition exists if xt1 is not for a word defined by DEFER.
+CODE DEFER!             \ xt2 xt1 --
+MOV @PSP+,2(TOS)        \ -- xt1=CFA_DEFER          xt2 --> [CFA_DEFER+2]
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] IS [IF]
+\ https://forth-standard.org/standard/core/IS
+\ IS <name>        xt --
+\ used as is :
+\ DEFER DISPLAY                         create a "do nothing" definition (2 CELLS)
+\ inline command : ' U. IS DISPLAY      U. becomes the runtime of the word DISPLAY
+\ or in a definition : ... ['] U. IS DISPLAY ...
+\ KEY, EMIT, CR, ACCEPT and WARM are examples of DEFERred words
+\
+\ as IS replaces the PFA value of any word, it's a TO alias for VARIABLE and CONSTANT words...
+: IS
+STATE @
+IF  POSTPONE ['] POSTPONE DEFER! 
+ELSE ' DEFER! 
+THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+\ CODE 20uS           \ n --      8MHz version
+\ BEGIN               \ 4 + 16 ~ loop
+\     MOV #39,rDOCON   \ 39
+\     BEGIN           \ 4 ~ loop
+\         NOP
+\         SUB #1,rDOCON
+\     0=  UNTIL
+\     SUB #1,TOS      \ 1
+\ 0= UNTIL
+\ MOV #XDOCON,rDOCON  \ 2
+\ MOV @PSP+,TOS
+\ MOV @RSP+,IP        \
+\ ENDCODE
+
 CODE 20_US                      \ n --      n * 20 us
 BEGIN                           \ here we presume that LCD_TIM_IFG = 1...
     BEGIN
@@ -9881,8 +15104,8 @@ MOV @IP+,PC                     \ 4
 ENDCODE
 
 CODE TOP_LCD                    \ LCD Sample
-\                               \ if write : %xxxxWWWW --
-\                               \ if read  : -- %0000RRRR
+\                               \ if write : %xxxx_WWWW --
+\                               \ if read  : -- %0000_RRRR
     BIS.B #LCD_EN,&LCD_CMD_OUT  \ lcd_en 0-->1
     BIT.B #LCD_RW,&LCD_CMD_IN   \ lcd_rw test
 0= IF                           \ write LCD bits pattern
@@ -9903,8 +15126,8 @@ ENDCODE
 CODE LCD_WRC                    \ char --         Write Char
     BIS.B #LCD_RS,&LCD_CMD_OUT  \ lcd_rs=1
 BW1 SUB #2,PSP                  \
-    MOV TOS,0(PSP)              \ -- %xxxxLLLL %HHHHLLLL
-    RRUM #4,TOS                 \ -- %xxxxLLLL %xxxxHHHH
+    MOV TOS,0(PSP)              \ -- %xxxx_LLLL %HHHH_LLLL
+    RRUM #4,TOS                 \ -- %xxxx_LLLL %xxxx_HHHH
     BIC.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=0
     BIS.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as output
 COLON                           \ high level word starts here 
@@ -9944,11 +15167,11 @@ ENDCODE
 \ BW1 BIC.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as intput
 \     BIS.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=1
 \ COLON                           \ starts a FORTH word
-\     TOP_LCD 2 20_us             \ -- %0000HHHH
-\     TOP_LCD 2 20_us             \ -- %0000HHHH %0000LLLL
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH %0000_LLLL
 \ HI2LO                           \ switch from FORTH to assembler
-\     RLAM #4,0(PSP)              \ -- %HHHH0000 %0000LLLL
-\     ADD.B @PSP+,TOS             \ -- %HHHHLLLL
+\     RLAM #4,0(PSP)              \ -- %HHHH_0000 %0000_LLLL
+\     ADD.B @PSP+,TOS             \ -- %HHHH_LLLL
 \     MOV @RSP+,IP                \ restore IP saved by COLON
 \     MOV @IP+,PC                 \
 \ ENDCODE
@@ -10089,14 +15312,14 @@ MOV @PSP+,TOS                   \     -- TOS
 RET
 ENDASM
 
-\ ------------------------------\
+\ ******************************\
 ASM BACKGROUND                  \
-\ ------------------------------\
+\ ******************************\
 BEGIN
 \     ...                         \ insert here your background task
 \     ...                         \
 \     ...                         \
-    CALL &RXON                  \ comment this line to disable TERMINAL
+    CALL &RXON                  \ comment this line to disable TERMINAL_INPUT
     BIS &LPM_MODE,SR            \
 \ ******************************\
 \ here start all interrupts     \
@@ -10105,23 +15328,43 @@ BEGIN
 \ ******************************\
 AGAIN                           \
 ENDASM                          \
+\ ******************************\
+
+\ ------------------------------\
+ASM SYS_OUT                    \ system OUT init, replaces WARM at the request of STOP.
+\ ------------------------------\
+\     ...                         \ init specific I/O sys as you want
+\     ...                         \ before executing default WARM
+    MOV #WARM,X                 \ ['] WARM 
+    ADD #4,X                    \ >BODY
+    MOV X,PC                    \ EXECUTE    (which activates IO and TERMINAL)
+ENDASM
+\ ------------------------------\
 
 \ ------------------------------\
 CODE STOP                       \ stops multitasking, must to be used before downloading app
 \ ------------------------------\
-\ restore default action of primary DEFERred word SLEEP (assembly version)
 BW1 MOV #SLEEP,X                \ the ASM word SLEEP is only visible in mode assembler. 
     ADD #4,X                    \ X = BODY of SLEEP, X-2 = PFA of SLEEP
-    MOV X,-2(X)                 \ restore the default background
+    MOV X,-2(X)                 \ restore the default background: SLEEP
+    MOV #WARM,X
+    MOV #SYS_OUT,2(X)           \ default WARM is replaced by JMJ_BOX SYS_OUT (ended by default WARM)
+    BIC.B #RC5,&IR_IE           \ clear RC5_Int
+    BIC.B #RC5,&IR_IFG          \ clear RC5_Int flag
+    MOV #0,&LCD_TIM_CTL         \ stop LCD_TIMER
+    MOV #0,&WDT_TIM_CTL         \ stop WDT_TIMER
+    MOV #0,&WDT_TIM_CCTL0       \ clear CCIFG0 disable CCIE0
+    CALL #INIT_VECT             \ reset all vectors other than TERMINAL_int
 COLON                           \ restore default action of primary DEFERred word WARM (FORTH version)
-['] WARM >BODY IS WARM          \ restore the default WARM
 ECHO                            \
-." RC5toLCD is removed. type START to restart"
-COLD                            \ performs reset to reset all interrupt vectors.    
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM                           \ performs reset to reset all interrupt vectors.    
 ;
+\ ------------------------------\
 
 \ ------------------------------\
-CODE APP_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
+CODE SYS_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
 \ ------------------------------\
 \ LCD_TIM_CTL =  %0000 0010 1001 0100\$3C0
 \                    - -             \CNTL Counter lentgh \ 00 = 16 bits
@@ -10151,7 +15394,7 @@ CODE APP_INIT                   \ this routine completes the init of system, i.e
 \ ------------------------------\
 \ set LCD_TIM_ to make 50kHz PWM \ for LCD_Vo; works without interrupt
 \ ------------------------------\
-MOV #%1011010100,&LCD_TIM_CTL   \ SMCLK/8, up mode, clear timer, no int
+MOV #%10_1101_0100,&LCD_TIM_CTL \ SMCLK/8, up mode, clear timer, no int
 \    MOV #0,&LCD_TIM_EX0        \ predivide by 1 in LCD_TIM_EX0 register (8 MHZ)
 FREQ_KHZ @ 16000 = [IF]         \ if 16 MHz
     MOV #1,&LCD_TIM_EX0         \ predivide by 2 in LCD_TIM_EX0 register (16 MHZ)
@@ -10163,7 +15406,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \ ------------------------------\
 \ set LCD_TIM_.2 to generate PWM for LCD_Vo
 \ ------------------------------\
-    MOV #%01100000,&LCD_TIM_CCTLn \ output mode = set/reset \ clear CCIFG
+MOV #%0110_0000,&LCD_TIM_CCTLn  \ output mode = set/reset \ clear CCIFG
     MOV #10,&LCD_TIM_CCRn       \ contrast adjust : 10/20 ==> LCD_Vo = -0V6|+3V6 (Vcc=3V6)
 \    MOV #12,&LCD_TIM_CCRn        \ contrast adjust : 12/20 ==> LCD_Vo = -1V4|+3V3 (Vcc=3V3)
 \ ------------------------------\
@@ -10192,7 +15435,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \                         -     \ TAIE
 \                          -    \ TAIFG
 \ ------------------------------\
-    MOV #%0100010100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
+MOV #%01_0001_0100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
 \ ------------------------------\
 \                        000    \ TAxEX0
 \                        ---    \ TAIDEX    pre divisor
@@ -10258,23 +15501,213 @@ COLON                           \
     ['] CR >BODY IS CR          \ CR executes its default value
     ['] EMIT >BODY IS EMIT      \ EMIT executes its defaulte value
     ." RC5toLCD is running. Type STOP to quit" \ display message on FastForth Terminal
-    ABORT                       \ ...and end APP_INIT with ABORT, no return.
+    PWR_STATE ABORT             \ init DP and continues with ABORT
 ;                               \
+\ ------------------------------\
 
 \ ------------------------------\
 CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
 \ ------------------------------\
-MOV #SLEEP,X                    \ replace default background process
+MOV #SLEEP,X                    \ replace default background process SLEEP
 MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
 MOV #WARM,X                     \ replace default WARM
-MOV #APP_INIT,2(X)              \ by RC5toLCD APP_INIT
-MOV X,PC                        \ then execute it
+MOV #SYS_INIT,2(X)              \ by RC5toLCD SYS_INIT
+MOV X,PC                        \ then execute new WARM
 ENDCODE 
+\ ------------------------------\
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
 
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
 
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] CONSTANT [IF]
+\ https://forth-standard.org/standard/core/CONSTANT
+\ CONSTANT <name>     n --                      define a Forth CONSTANT 
+: CONSTANT 
+CREATE
+HI2LO
+MOV TOS,-2(W)           \   PFA = n
+MOV @PSP+,TOS
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] STATE [IF]
+\ https://forth-standard.org/standard/core/STATE
+\ STATE   -- a-addr       holds compiler state
+STATEADR CONSTANT STATE
+[THEN]
+
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+    MOV @IP+,PC \ 4
+THEN
+XOR #-1,TOS     \ 1 flag Z = 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE     \ immediate
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+\ https://forth-standard.org/standard/core/DEFER
+\ DEFER "<spaces>name"   --
+\ Skip leading space delimiters. Parse name delimited by a space.
+\ Create a definition for name with the execution semantics defined below.
+
+\ name Execution:   --
+\ Execute the xt that name is set to execute, i.e. NEXT (nothing),
+\ until the phrase ' word IS name is executed, causing a new value of xt to be assigned to name.
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(W)        \ CFA = MOV @PC+,PC = BR MOV @IP+,PC
+MOV #NEXT_ADR,-2(W)     \ PFA = address of MOV @IP+,PC to do nothing.
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEFER! [IF]
+\ https://forth-standard.org/standard/core/DEFERStore
+\ Set the word xt1 to execute xt2. An ambiguous condition exists if xt1 is not for a word defined by DEFER.
+CODE DEFER!             \ xt2 xt1 --
+MOV @PSP+,2(TOS)        \ -- xt1=CFA_DEFER          xt2 --> [CFA_DEFER+2]
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] IS [IF]
+\ https://forth-standard.org/standard/core/IS
+\ IS <name>        xt --
+\ used as is :
+\ DEFER DISPLAY                         create a "do nothing" definition (2 CELLS)
+\ inline command : ' U. IS DISPLAY      U. becomes the runtime of the word DISPLAY
+\ or in a definition : ... ['] U. IS DISPLAY ...
+\ KEY, EMIT, CR, ACCEPT and WARM are examples of DEFERred words
+\
+\ as IS replaces the PFA value of any word, it's a TO alias for VARIABLE and CONSTANT words...
+: IS
+STATE @
+IF  POSTPONE ['] POSTPONE DEFER! 
+ELSE ' DEFER! 
+THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+\ CODE 20uS           \ n --      8MHz version
+\ BEGIN               \ 4 + 16 ~ loop
+\     MOV #39,rDOCON   \ 39
+\     BEGIN           \ 4 ~ loop
+\         NOP
+\         SUB #1,rDOCON
+\     0=  UNTIL
+\     SUB #1,TOS      \ 1
+\ 0= UNTIL
+\ MOV #XDOCON,rDOCON  \ 2
+\ MOV @PSP+,TOS
+\ MOV @RSP+,IP        \
+\ ENDCODE
+
 CODE 20_US                      \ n --      n * 20 us
 BEGIN                           \ here we presume that LCD_TIM_IFG = 1...
     BEGIN
@@ -10288,8 +15721,8 @@ MOV @IP+,PC                     \ 4
 ENDCODE
 
 CODE TOP_LCD                    \ LCD Sample
-\                               \ if write : %xxxxWWWW --
-\                               \ if read  : -- %0000RRRR
+\                               \ if write : %xxxx_WWWW --
+\                               \ if read  : -- %0000_RRRR
     BIS.B #LCD_EN,&LCD_CMD_OUT  \ lcd_en 0-->1
     BIT.B #LCD_RW,&LCD_CMD_IN   \ lcd_rw test
 0= IF                           \ write LCD bits pattern
@@ -10310,8 +15743,8 @@ ENDCODE
 CODE LCD_WRC                    \ char --         Write Char
     BIS.B #LCD_RS,&LCD_CMD_OUT  \ lcd_rs=1
 BW1 SUB #2,PSP                  \
-    MOV TOS,0(PSP)              \ -- %xxxxLLLL %HHHHLLLL
-    RRUM #4,TOS                 \ -- %xxxxLLLL %xxxxHHHH
+    MOV TOS,0(PSP)              \ -- %xxxx_LLLL %HHHH_LLLL
+    RRUM #4,TOS                 \ -- %xxxx_LLLL %xxxx_HHHH
     BIC.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=0
     BIS.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as output
 COLON                           \ high level word starts here 
@@ -10351,11 +15784,11 @@ ENDCODE
 \ BW1 BIC.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as intput
 \     BIS.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=1
 \ COLON                           \ starts a FORTH word
-\     TOP_LCD 2 20_us             \ -- %0000HHHH
-\     TOP_LCD 2 20_us             \ -- %0000HHHH %0000LLLL
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH %0000_LLLL
 \ HI2LO                           \ switch from FORTH to assembler
-\     RLAM #4,0(PSP)              \ -- %HHHH0000 %0000LLLL
-\     ADD.B @PSP+,TOS             \ -- %HHHHLLLL
+\     RLAM #4,0(PSP)              \ -- %HHHH_0000 %0000_LLLL
+\     ADD.B @PSP+,TOS             \ -- %HHHH_LLLL
 \     MOV @RSP+,IP                \ restore IP saved by COLON
 \     MOV @IP+,PC                 \
 \ ENDCODE
@@ -10496,14 +15929,14 @@ MOV @PSP+,TOS                   \     -- TOS
 RET
 ENDASM
 
-\ ------------------------------\
+\ ******************************\
 ASM BACKGROUND                  \
-\ ------------------------------\
+\ ******************************\
 BEGIN
 \     ...                         \ insert here your background task
 \     ...                         \
 \     ...                         \
-    CALL &RXON                  \ comment this line to disable TERMINAL
+    CALL &RXON                  \ comment this line to disable TERMINAL_INPUT
     BIS &LPM_MODE,SR            \
 \ ******************************\
 \ here start all interrupts     \
@@ -10512,23 +15945,43 @@ BEGIN
 \ ******************************\
 AGAIN                           \
 ENDASM                          \
+\ ******************************\
+
+\ ------------------------------\
+ASM SYS_OUT                    \ system OUT init, replaces WARM at the request of STOP.
+\ ------------------------------\
+\     ...                         \ init specific I/O sys as you want
+\     ...                         \ before executing default WARM
+    MOV #WARM,X                 \ ['] WARM 
+    ADD #4,X                    \ >BODY
+    MOV X,PC                    \ EXECUTE    (which activates IO and TERMINAL)
+ENDASM
+\ ------------------------------\
 
 \ ------------------------------\
 CODE STOP                       \ stops multitasking, must to be used before downloading app
 \ ------------------------------\
-\ restore default action of primary DEFERred word SLEEP (assembly version)
 BW1 MOV #SLEEP,X                \ the ASM word SLEEP is only visible in mode assembler. 
     ADD #4,X                    \ X = BODY of SLEEP, X-2 = PFA of SLEEP
-    MOV X,-2(X)                 \ restore the default background
+    MOV X,-2(X)                 \ restore the default background: SLEEP
+    MOV #WARM,X
+    MOV #SYS_OUT,2(X)           \ default WARM is replaced by JMJ_BOX SYS_OUT (ended by default WARM)
+    BIC.B #RC5,&IR_IE           \ clear RC5_Int
+    BIC.B #RC5,&IR_IFG          \ clear RC5_Int flag
+    MOV #0,&LCD_TIM_CTL         \ stop LCD_TIMER
+    MOV #0,&WDT_TIM_CTL         \ stop WDT_TIMER
+    MOV #0,&WDT_TIM_CCTL0       \ clear CCIFG0 disable CCIE0
+    CALL #INIT_VECT             \ reset all vectors other than TERMINAL_int
 COLON                           \ restore default action of primary DEFERred word WARM (FORTH version)
-['] WARM >BODY IS WARM          \ restore the default WARM
 ECHO                            \
-." RC5toLCD is removed. type START to restart"
-COLD                            \ performs reset to reset all interrupt vectors.    
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM                           \ performs reset to reset all interrupt vectors.    
 ;
+\ ------------------------------\
 
 \ ------------------------------\
-CODE APP_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
+CODE SYS_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
 \ ------------------------------\
 \ LCD_TIM_CTL =  %0000 0010 1001 0100\$3C0
 \                    - -             \CNTL Counter lentgh \ 00 = 16 bits
@@ -10558,7 +16011,7 @@ CODE APP_INIT                   \ this routine completes the init of system, i.e
 \ ------------------------------\
 \ set LCD_TIM_ to make 50kHz PWM \ for LCD_Vo; works without interrupt
 \ ------------------------------\
-MOV #%1011010100,&LCD_TIM_CTL   \ SMCLK/8, up mode, clear timer, no int
+MOV #%10_1101_0100,&LCD_TIM_CTL \ SMCLK/8, up mode, clear timer, no int
 \    MOV #0,&LCD_TIM_EX0        \ predivide by 1 in LCD_TIM_EX0 register (8 MHZ)
 FREQ_KHZ @ 16000 = [IF]         \ if 16 MHz
     MOV #1,&LCD_TIM_EX0         \ predivide by 2 in LCD_TIM_EX0 register (16 MHZ)
@@ -10570,7 +16023,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \ ------------------------------\
 \ set LCD_TIM_.2 to generate PWM for LCD_Vo
 \ ------------------------------\
-    MOV #%01100000,&LCD_TIM_CCTLn \ output mode = set/reset \ clear CCIFG
+MOV #%0110_0000,&LCD_TIM_CCTLn  \ output mode = set/reset \ clear CCIFG
     MOV #10,&LCD_TIM_CCRn       \ contrast adjust : 10/20 ==> LCD_Vo = -0V6|+3V6 (Vcc=3V6)
 \    MOV #12,&LCD_TIM_CCRn        \ contrast adjust : 12/20 ==> LCD_Vo = -1V4|+3V3 (Vcc=3V3)
 \ ------------------------------\
@@ -10599,7 +16052,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \                         -     \ TAIE
 \                          -    \ TAIFG
 \ ------------------------------\
-    MOV #%0100010100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
+MOV #%01_0001_0100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
 \ ------------------------------\
 \                        000    \ TAxEX0
 \                        ---    \ TAIDEX    pre divisor
@@ -10665,23 +16118,213 @@ COLON                           \
     ['] CR >BODY IS CR          \ CR executes its default value
     ['] EMIT >BODY IS EMIT      \ EMIT executes its defaulte value
     ." RC5toLCD is running. Type STOP to quit" \ display message on FastForth Terminal
-    ABORT                       \ ...and end APP_INIT with ABORT, no return.
+    PWR_STATE ABORT             \ init DP and continues with ABORT
 ;                               \
+\ ------------------------------\
 
 \ ------------------------------\
 CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
 \ ------------------------------\
-MOV #SLEEP,X                    \ replace default background process
+MOV #SLEEP,X                    \ replace default background process SLEEP
 MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
 MOV #WARM,X                     \ replace default WARM
-MOV #APP_INIT,2(X)              \ by RC5toLCD APP_INIT
-MOV X,PC                        \ then execute it
+MOV #SYS_INIT,2(X)              \ by RC5toLCD SYS_INIT
+MOV X,PC                        \ then execute new WARM
 ENDCODE 
+\ ------------------------------\
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
 
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
 
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] CONSTANT [IF]
+\ https://forth-standard.org/standard/core/CONSTANT
+\ CONSTANT <name>     n --                      define a Forth CONSTANT 
+: CONSTANT 
+CREATE
+HI2LO
+MOV TOS,-2(W)           \   PFA = n
+MOV @PSP+,TOS
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] STATE [IF]
+\ https://forth-standard.org/standard/core/STATE
+\ STATE   -- a-addr       holds compiler state
+STATEADR CONSTANT STATE
+[THEN]
+
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+    MOV @IP+,PC \ 4
+THEN
+XOR #-1,TOS     \ 1 flag Z = 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE     \ immediate
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+\ https://forth-standard.org/standard/core/DEFER
+\ DEFER "<spaces>name"   --
+\ Skip leading space delimiters. Parse name delimited by a space.
+\ Create a definition for name with the execution semantics defined below.
+
+\ name Execution:   --
+\ Execute the xt that name is set to execute, i.e. NEXT (nothing),
+\ until the phrase ' word IS name is executed, causing a new value of xt to be assigned to name.
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(W)        \ CFA = MOV @PC+,PC = BR MOV @IP+,PC
+MOV #NEXT_ADR,-2(W)     \ PFA = address of MOV @IP+,PC to do nothing.
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEFER! [IF]
+\ https://forth-standard.org/standard/core/DEFERStore
+\ Set the word xt1 to execute xt2. An ambiguous condition exists if xt1 is not for a word defined by DEFER.
+CODE DEFER!             \ xt2 xt1 --
+MOV @PSP+,2(TOS)        \ -- xt1=CFA_DEFER          xt2 --> [CFA_DEFER+2]
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] IS [IF]
+\ https://forth-standard.org/standard/core/IS
+\ IS <name>        xt --
+\ used as is :
+\ DEFER DISPLAY                         create a "do nothing" definition (2 CELLS)
+\ inline command : ' U. IS DISPLAY      U. becomes the runtime of the word DISPLAY
+\ or in a definition : ... ['] U. IS DISPLAY ...
+\ KEY, EMIT, CR, ACCEPT and WARM are examples of DEFERred words
+\
+\ as IS replaces the PFA value of any word, it's a TO alias for VARIABLE and CONSTANT words...
+: IS
+STATE @
+IF  POSTPONE ['] POSTPONE DEFER! 
+ELSE ' DEFER! 
+THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+\ CODE 20uS           \ n --      8MHz version
+\ BEGIN               \ 4 + 16 ~ loop
+\     MOV #39,rDOCON   \ 39
+\     BEGIN           \ 4 ~ loop
+\         NOP
+\         SUB #1,rDOCON
+\     0=  UNTIL
+\     SUB #1,TOS      \ 1
+\ 0= UNTIL
+\ MOV #XDOCON,rDOCON  \ 2
+\ MOV @PSP+,TOS
+\ MOV @RSP+,IP        \
+\ ENDCODE
+
 CODE 20_US                      \ n --      n * 20 us
 BEGIN                           \ here we presume that LCD_TIM_IFG = 1...
     BEGIN
@@ -10695,8 +16338,8 @@ MOV @IP+,PC                     \ 4
 ENDCODE
 
 CODE TOP_LCD                    \ LCD Sample
-\                               \ if write : %xxxxWWWW --
-\                               \ if read  : -- %0000RRRR
+\                               \ if write : %xxxx_WWWW --
+\                               \ if read  : -- %0000_RRRR
     BIS.B #LCD_EN,&LCD_CMD_OUT  \ lcd_en 0-->1
     BIT.B #LCD_RW,&LCD_CMD_IN   \ lcd_rw test
 0= IF                           \ write LCD bits pattern
@@ -10717,8 +16360,8 @@ ENDCODE
 CODE LCD_WRC                    \ char --         Write Char
     BIS.B #LCD_RS,&LCD_CMD_OUT  \ lcd_rs=1
 BW1 SUB #2,PSP                  \
-    MOV TOS,0(PSP)              \ -- %xxxxLLLL %HHHHLLLL
-    RRUM #4,TOS                 \ -- %xxxxLLLL %xxxxHHHH
+    MOV TOS,0(PSP)              \ -- %xxxx_LLLL %HHHH_LLLL
+    RRUM #4,TOS                 \ -- %xxxx_LLLL %xxxx_HHHH
     BIC.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=0
     BIS.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as output
 COLON                           \ high level word starts here 
@@ -10758,11 +16401,11 @@ ENDCODE
 \ BW1 BIC.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as intput
 \     BIS.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=1
 \ COLON                           \ starts a FORTH word
-\     TOP_LCD 2 20_us             \ -- %0000HHHH
-\     TOP_LCD 2 20_us             \ -- %0000HHHH %0000LLLL
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH %0000_LLLL
 \ HI2LO                           \ switch from FORTH to assembler
-\     RLAM #4,0(PSP)              \ -- %HHHH0000 %0000LLLL
-\     ADD.B @PSP+,TOS             \ -- %HHHHLLLL
+\     RLAM #4,0(PSP)              \ -- %HHHH_0000 %0000_LLLL
+\     ADD.B @PSP+,TOS             \ -- %HHHH_LLLL
 \     MOV @RSP+,IP                \ restore IP saved by COLON
 \     MOV @IP+,PC                 \
 \ ENDCODE
@@ -10903,14 +16546,14 @@ MOV @PSP+,TOS                   \     -- TOS
 RET
 ENDASM
 
-\ ------------------------------\
+\ ******************************\
 ASM BACKGROUND                  \
-\ ------------------------------\
+\ ******************************\
 BEGIN
 \     ...                         \ insert here your background task
 \     ...                         \
 \     ...                         \
-    CALL &RXON                  \ comment this line to disable TERMINAL
+    CALL &RXON                  \ comment this line to disable TERMINAL_INPUT
     BIS &LPM_MODE,SR            \
 \ ******************************\
 \ here start all interrupts     \
@@ -10919,23 +16562,43 @@ BEGIN
 \ ******************************\
 AGAIN                           \
 ENDASM                          \
+\ ******************************\
+
+\ ------------------------------\
+ASM SYS_OUT                    \ system OUT init, replaces WARM at the request of STOP.
+\ ------------------------------\
+\     ...                         \ init specific I/O sys as you want
+\     ...                         \ before executing default WARM
+    MOV #WARM,X                 \ ['] WARM 
+    ADD #4,X                    \ >BODY
+    MOV X,PC                    \ EXECUTE    (which activates IO and TERMINAL)
+ENDASM
+\ ------------------------------\
 
 \ ------------------------------\
 CODE STOP                       \ stops multitasking, must to be used before downloading app
 \ ------------------------------\
-\ restore default action of primary DEFERred word SLEEP (assembly version)
 BW1 MOV #SLEEP,X                \ the ASM word SLEEP is only visible in mode assembler. 
     ADD #4,X                    \ X = BODY of SLEEP, X-2 = PFA of SLEEP
-    MOV X,-2(X)                 \ restore the default background
+    MOV X,-2(X)                 \ restore the default background: SLEEP
+    MOV #WARM,X
+    MOV #SYS_OUT,2(X)           \ default WARM is replaced by JMJ_BOX SYS_OUT (ended by default WARM)
+    BIC.B #RC5,&IR_IE           \ clear RC5_Int
+    BIC.B #RC5,&IR_IFG          \ clear RC5_Int flag
+    MOV #0,&LCD_TIM_CTL         \ stop LCD_TIMER
+    MOV #0,&WDT_TIM_CTL         \ stop WDT_TIMER
+    MOV #0,&WDT_TIM_CCTL0       \ clear CCIFG0 disable CCIE0
+    CALL #INIT_VECT             \ reset all vectors other than TERMINAL_int
 COLON                           \ restore default action of primary DEFERred word WARM (FORTH version)
-['] WARM >BODY IS WARM          \ restore the default WARM
 ECHO                            \
-." RC5toLCD is removed. type START to restart"
-COLD                            \ performs reset to reset all interrupt vectors.    
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM                           \ performs reset to reset all interrupt vectors.    
 ;
+\ ------------------------------\
 
 \ ------------------------------\
-CODE APP_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
+CODE SYS_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
 \ ------------------------------\
 \ LCD_TIM_CTL =  %0000 0010 1001 0100\$3C0
 \                    - -             \CNTL Counter lentgh \ 00 = 16 bits
@@ -10965,7 +16628,7 @@ CODE APP_INIT                   \ this routine completes the init of system, i.e
 \ ------------------------------\
 \ set LCD_TIM_ to make 50kHz PWM \ for LCD_Vo; works without interrupt
 \ ------------------------------\
-MOV #%1011010100,&LCD_TIM_CTL   \ SMCLK/8, up mode, clear timer, no int
+MOV #%10_1101_0100,&LCD_TIM_CTL \ SMCLK/8, up mode, clear timer, no int
 \    MOV #0,&LCD_TIM_EX0        \ predivide by 1 in LCD_TIM_EX0 register (8 MHZ)
 FREQ_KHZ @ 16000 = [IF]         \ if 16 MHz
     MOV #1,&LCD_TIM_EX0         \ predivide by 2 in LCD_TIM_EX0 register (16 MHZ)
@@ -10977,7 +16640,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \ ------------------------------\
 \ set LCD_TIM_.2 to generate PWM for LCD_Vo
 \ ------------------------------\
-    MOV #%01100000,&LCD_TIM_CCTLn \ output mode = set/reset \ clear CCIFG
+MOV #%0110_0000,&LCD_TIM_CCTLn  \ output mode = set/reset \ clear CCIFG
     MOV #10,&LCD_TIM_CCRn       \ contrast adjust : 10/20 ==> LCD_Vo = -0V6|+3V6 (Vcc=3V6)
 \    MOV #12,&LCD_TIM_CCRn        \ contrast adjust : 12/20 ==> LCD_Vo = -1V4|+3V3 (Vcc=3V3)
 \ ------------------------------\
@@ -11006,7 +16669,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \                         -     \ TAIE
 \                          -    \ TAIFG
 \ ------------------------------\
-    MOV #%0100010100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
+MOV #%01_0001_0100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
 \ ------------------------------\
 \                        000    \ TAxEX0
 \                        ---    \ TAIDEX    pre divisor
@@ -11072,23 +16735,213 @@ COLON                           \
     ['] CR >BODY IS CR          \ CR executes its default value
     ['] EMIT >BODY IS EMIT      \ EMIT executes its defaulte value
     ." RC5toLCD is running. Type STOP to quit" \ display message on FastForth Terminal
-    ABORT                       \ ...and end APP_INIT with ABORT, no return.
+    PWR_STATE ABORT             \ init DP and continues with ABORT
 ;                               \
+\ ------------------------------\
 
 \ ------------------------------\
 CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
 \ ------------------------------\
-MOV #SLEEP,X                    \ replace default background process
+MOV #SLEEP,X                    \ replace default background process SLEEP
 MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
 MOV #WARM,X                     \ replace default WARM
-MOV #APP_INIT,2(X)              \ by RC5toLCD APP_INIT
-MOV X,PC                        \ then execute it
+MOV #SYS_INIT,2(X)              \ by RC5toLCD SYS_INIT
+MOV X,PC                        \ then execute new WARM
 ENDCODE 
+\ ------------------------------\
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
 
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
 
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] CONSTANT [IF]
+\ https://forth-standard.org/standard/core/CONSTANT
+\ CONSTANT <name>     n --                      define a Forth CONSTANT 
+: CONSTANT 
+CREATE
+HI2LO
+MOV TOS,-2(W)           \   PFA = n
+MOV @PSP+,TOS
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] STATE [IF]
+\ https://forth-standard.org/standard/core/STATE
+\ STATE   -- a-addr       holds compiler state
+STATEADR CONSTANT STATE
+[THEN]
+
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+    MOV @IP+,PC \ 4
+THEN
+XOR #-1,TOS     \ 1 flag Z = 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE     \ immediate
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+\ https://forth-standard.org/standard/core/DEFER
+\ DEFER "<spaces>name"   --
+\ Skip leading space delimiters. Parse name delimited by a space.
+\ Create a definition for name with the execution semantics defined below.
+
+\ name Execution:   --
+\ Execute the xt that name is set to execute, i.e. NEXT (nothing),
+\ until the phrase ' word IS name is executed, causing a new value of xt to be assigned to name.
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(W)        \ CFA = MOV @PC+,PC = BR MOV @IP+,PC
+MOV #NEXT_ADR,-2(W)     \ PFA = address of MOV @IP+,PC to do nothing.
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEFER! [IF]
+\ https://forth-standard.org/standard/core/DEFERStore
+\ Set the word xt1 to execute xt2. An ambiguous condition exists if xt1 is not for a word defined by DEFER.
+CODE DEFER!             \ xt2 xt1 --
+MOV @PSP+,2(TOS)        \ -- xt1=CFA_DEFER          xt2 --> [CFA_DEFER+2]
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] IS [IF]
+\ https://forth-standard.org/standard/core/IS
+\ IS <name>        xt --
+\ used as is :
+\ DEFER DISPLAY                         create a "do nothing" definition (2 CELLS)
+\ inline command : ' U. IS DISPLAY      U. becomes the runtime of the word DISPLAY
+\ or in a definition : ... ['] U. IS DISPLAY ...
+\ KEY, EMIT, CR, ACCEPT and WARM are examples of DEFERred words
+\
+\ as IS replaces the PFA value of any word, it's a TO alias for VARIABLE and CONSTANT words...
+: IS
+STATE @
+IF  POSTPONE ['] POSTPONE DEFER! 
+ELSE ' DEFER! 
+THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+\ CODE 20uS           \ n --      8MHz version
+\ BEGIN               \ 4 + 16 ~ loop
+\     MOV #39,rDOCON   \ 39
+\     BEGIN           \ 4 ~ loop
+\         NOP
+\         SUB #1,rDOCON
+\     0=  UNTIL
+\     SUB #1,TOS      \ 1
+\ 0= UNTIL
+\ MOV #XDOCON,rDOCON  \ 2
+\ MOV @PSP+,TOS
+\ MOV @RSP+,IP        \
+\ ENDCODE
+
 CODE 20_US                      \ n --      n * 20 us
 BEGIN                           \ here we presume that LCD_TIM_IFG = 1...
     BEGIN
@@ -11102,8 +16955,8 @@ MOV @IP+,PC                     \ 4
 ENDCODE
 
 CODE TOP_LCD                    \ LCD Sample
-\                               \ if write : %xxxxWWWW --
-\                               \ if read  : -- %0000RRRR
+\                               \ if write : %xxxx_WWWW --
+\                               \ if read  : -- %0000_RRRR
     BIS.B #LCD_EN,&LCD_CMD_OUT  \ lcd_en 0-->1
     BIT.B #LCD_RW,&LCD_CMD_IN   \ lcd_rw test
 0= IF                           \ write LCD bits pattern
@@ -11124,8 +16977,8 @@ ENDCODE
 CODE LCD_WRC                    \ char --         Write Char
     BIS.B #LCD_RS,&LCD_CMD_OUT  \ lcd_rs=1
 BW1 SUB #2,PSP                  \
-    MOV TOS,0(PSP)              \ -- %xxxxLLLL %HHHHLLLL
-    RRUM #4,TOS                 \ -- %xxxxLLLL %xxxxHHHH
+    MOV TOS,0(PSP)              \ -- %xxxx_LLLL %HHHH_LLLL
+    RRUM #4,TOS                 \ -- %xxxx_LLLL %xxxx_HHHH
     BIC.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=0
     BIS.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as output
 COLON                           \ high level word starts here 
@@ -11165,11 +17018,11 @@ ENDCODE
 \ BW1 BIC.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as intput
 \     BIS.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=1
 \ COLON                           \ starts a FORTH word
-\     TOP_LCD 2 20_us             \ -- %0000HHHH
-\     TOP_LCD 2 20_us             \ -- %0000HHHH %0000LLLL
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH %0000_LLLL
 \ HI2LO                           \ switch from FORTH to assembler
-\     RLAM #4,0(PSP)              \ -- %HHHH0000 %0000LLLL
-\     ADD.B @PSP+,TOS             \ -- %HHHHLLLL
+\     RLAM #4,0(PSP)              \ -- %HHHH_0000 %0000_LLLL
+\     ADD.B @PSP+,TOS             \ -- %HHHH_LLLL
 \     MOV @RSP+,IP                \ restore IP saved by COLON
 \     MOV @IP+,PC                 \
 \ ENDCODE
@@ -11310,14 +17163,14 @@ MOV @PSP+,TOS                   \     -- TOS
 RET
 ENDASM
 
-\ ------------------------------\
+\ ******************************\
 ASM BACKGROUND                  \
-\ ------------------------------\
+\ ******************************\
 BEGIN
 \     ...                         \ insert here your background task
 \     ...                         \
 \     ...                         \
-    CALL &RXON                  \ comment this line to disable TERMINAL
+    CALL &RXON                  \ comment this line to disable TERMINAL_INPUT
     BIS &LPM_MODE,SR            \
 \ ******************************\
 \ here start all interrupts     \
@@ -11326,23 +17179,43 @@ BEGIN
 \ ******************************\
 AGAIN                           \
 ENDASM                          \
+\ ******************************\
+
+\ ------------------------------\
+ASM SYS_OUT                    \ system OUT init, replaces WARM at the request of STOP.
+\ ------------------------------\
+\     ...                         \ init specific I/O sys as you want
+\     ...                         \ before executing default WARM
+    MOV #WARM,X                 \ ['] WARM 
+    ADD #4,X                    \ >BODY
+    MOV X,PC                    \ EXECUTE    (which activates IO and TERMINAL)
+ENDASM
+\ ------------------------------\
 
 \ ------------------------------\
 CODE STOP                       \ stops multitasking, must to be used before downloading app
 \ ------------------------------\
-\ restore default action of primary DEFERred word SLEEP (assembly version)
 BW1 MOV #SLEEP,X                \ the ASM word SLEEP is only visible in mode assembler. 
     ADD #4,X                    \ X = BODY of SLEEP, X-2 = PFA of SLEEP
-    MOV X,-2(X)                 \ restore the default background
+    MOV X,-2(X)                 \ restore the default background: SLEEP
+    MOV #WARM,X
+    MOV #SYS_OUT,2(X)           \ default WARM is replaced by JMJ_BOX SYS_OUT (ended by default WARM)
+    BIC.B #RC5,&IR_IE           \ clear RC5_Int
+    BIC.B #RC5,&IR_IFG          \ clear RC5_Int flag
+    MOV #0,&LCD_TIM_CTL         \ stop LCD_TIMER
+    MOV #0,&WDT_TIM_CTL         \ stop WDT_TIMER
+    MOV #0,&WDT_TIM_CCTL0       \ clear CCIFG0 disable CCIE0
+    CALL #INIT_VECT             \ reset all vectors other than TERMINAL_int
 COLON                           \ restore default action of primary DEFERred word WARM (FORTH version)
-['] WARM >BODY IS WARM          \ restore the default WARM
 ECHO                            \
-." RC5toLCD is removed. type START to restart"
-COLD                            \ performs reset to reset all interrupt vectors.    
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM                           \ performs reset to reset all interrupt vectors.    
 ;
+\ ------------------------------\
 
 \ ------------------------------\
-CODE APP_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
+CODE SYS_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
 \ ------------------------------\
 \ LCD_TIM_CTL =  %0000 0010 1001 0100\$3C0
 \                    - -             \CNTL Counter lentgh \ 00 = 16 bits
@@ -11372,7 +17245,7 @@ CODE APP_INIT                   \ this routine completes the init of system, i.e
 \ ------------------------------\
 \ set LCD_TIM_ to make 50kHz PWM \ for LCD_Vo; works without interrupt
 \ ------------------------------\
-MOV #%1011010100,&LCD_TIM_CTL   \ SMCLK/8, up mode, clear timer, no int
+MOV #%10_1101_0100,&LCD_TIM_CTL \ SMCLK/8, up mode, clear timer, no int
 \    MOV #0,&LCD_TIM_EX0        \ predivide by 1 in LCD_TIM_EX0 register (8 MHZ)
 FREQ_KHZ @ 16000 = [IF]         \ if 16 MHz
     MOV #1,&LCD_TIM_EX0         \ predivide by 2 in LCD_TIM_EX0 register (16 MHZ)
@@ -11384,7 +17257,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \ ------------------------------\
 \ set LCD_TIM_.2 to generate PWM for LCD_Vo
 \ ------------------------------\
-    MOV #%01100000,&LCD_TIM_CCTLn \ output mode = set/reset \ clear CCIFG
+MOV #%0110_0000,&LCD_TIM_CCTLn  \ output mode = set/reset \ clear CCIFG
     MOV #10,&LCD_TIM_CCRn       \ contrast adjust : 10/20 ==> LCD_Vo = -0V6|+3V6 (Vcc=3V6)
 \    MOV #12,&LCD_TIM_CCRn        \ contrast adjust : 12/20 ==> LCD_Vo = -1V4|+3V3 (Vcc=3V3)
 \ ------------------------------\
@@ -11413,7 +17286,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \                         -     \ TAIE
 \                          -    \ TAIFG
 \ ------------------------------\
-    MOV #%0100010100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
+MOV #%01_0001_0100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
 \ ------------------------------\
 \                        000    \ TAxEX0
 \                        ---    \ TAIDEX    pre divisor
@@ -11479,23 +17352,213 @@ COLON                           \
     ['] CR >BODY IS CR          \ CR executes its default value
     ['] EMIT >BODY IS EMIT      \ EMIT executes its defaulte value
     ." RC5toLCD is running. Type STOP to quit" \ display message on FastForth Terminal
-    ABORT                       \ ...and end APP_INIT with ABORT, no return.
+    PWR_STATE ABORT             \ init DP and continues with ABORT
 ;                               \
+\ ------------------------------\
 
 \ ------------------------------\
 CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
 \ ------------------------------\
-MOV #SLEEP,X                    \ replace default background process
+MOV #SLEEP,X                    \ replace default background process SLEEP
 MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
 MOV #WARM,X                     \ replace default WARM
-MOV #APP_INIT,2(X)              \ by RC5toLCD APP_INIT
-MOV X,PC                        \ then execute it
+MOV #SYS_INIT,2(X)              \ by RC5toLCD SYS_INIT
+MOV X,PC                        \ then execute new WARM
 ENDCODE 
+\ ------------------------------\
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
 
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
 
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] CONSTANT [IF]
+\ https://forth-standard.org/standard/core/CONSTANT
+\ CONSTANT <name>     n --                      define a Forth CONSTANT 
+: CONSTANT 
+CREATE
+HI2LO
+MOV TOS,-2(W)           \   PFA = n
+MOV @PSP+,TOS
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] STATE [IF]
+\ https://forth-standard.org/standard/core/STATE
+\ STATE   -- a-addr       holds compiler state
+STATEADR CONSTANT STATE
+[THEN]
+
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+    MOV @IP+,PC \ 4
+THEN
+XOR #-1,TOS     \ 1 flag Z = 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE     \ immediate
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+\ https://forth-standard.org/standard/core/DEFER
+\ DEFER "<spaces>name"   --
+\ Skip leading space delimiters. Parse name delimited by a space.
+\ Create a definition for name with the execution semantics defined below.
+
+\ name Execution:   --
+\ Execute the xt that name is set to execute, i.e. NEXT (nothing),
+\ until the phrase ' word IS name is executed, causing a new value of xt to be assigned to name.
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(W)        \ CFA = MOV @PC+,PC = BR MOV @IP+,PC
+MOV #NEXT_ADR,-2(W)     \ PFA = address of MOV @IP+,PC to do nothing.
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEFER! [IF]
+\ https://forth-standard.org/standard/core/DEFERStore
+\ Set the word xt1 to execute xt2. An ambiguous condition exists if xt1 is not for a word defined by DEFER.
+CODE DEFER!             \ xt2 xt1 --
+MOV @PSP+,2(TOS)        \ -- xt1=CFA_DEFER          xt2 --> [CFA_DEFER+2]
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] IS [IF]
+\ https://forth-standard.org/standard/core/IS
+\ IS <name>        xt --
+\ used as is :
+\ DEFER DISPLAY                         create a "do nothing" definition (2 CELLS)
+\ inline command : ' U. IS DISPLAY      U. becomes the runtime of the word DISPLAY
+\ or in a definition : ... ['] U. IS DISPLAY ...
+\ KEY, EMIT, CR, ACCEPT and WARM are examples of DEFERred words
+\
+\ as IS replaces the PFA value of any word, it's a TO alias for VARIABLE and CONSTANT words...
+: IS
+STATE @
+IF  POSTPONE ['] POSTPONE DEFER! 
+ELSE ' DEFER! 
+THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+\ CODE 20uS           \ n --      8MHz version
+\ BEGIN               \ 4 + 16 ~ loop
+\     MOV #39,rDOCON   \ 39
+\     BEGIN           \ 4 ~ loop
+\         NOP
+\         SUB #1,rDOCON
+\     0=  UNTIL
+\     SUB #1,TOS      \ 1
+\ 0= UNTIL
+\ MOV #XDOCON,rDOCON  \ 2
+\ MOV @PSP+,TOS
+\ MOV @RSP+,IP        \
+\ ENDCODE
+
 CODE 20_US                      \ n --      n * 20 us
 BEGIN                           \ here we presume that LCD_TIM_IFG = 1...
     BEGIN
@@ -11509,8 +17572,8 @@ MOV @IP+,PC                     \ 4
 ENDCODE
 
 CODE TOP_LCD                    \ LCD Sample
-\                               \ if write : %xxxxWWWW --
-\                               \ if read  : -- %0000RRRR
+\                               \ if write : %xxxx_WWWW --
+\                               \ if read  : -- %0000_RRRR
     BIS.B #LCD_EN,&LCD_CMD_OUT  \ lcd_en 0-->1
     BIT.B #LCD_RW,&LCD_CMD_IN   \ lcd_rw test
 0= IF                           \ write LCD bits pattern
@@ -11531,8 +17594,8 @@ ENDCODE
 CODE LCD_WRC                    \ char --         Write Char
     BIS.B #LCD_RS,&LCD_CMD_OUT  \ lcd_rs=1
 BW1 SUB #2,PSP                  \
-    MOV TOS,0(PSP)              \ -- %xxxxLLLL %HHHHLLLL
-    RRUM #4,TOS                 \ -- %xxxxLLLL %xxxxHHHH
+    MOV TOS,0(PSP)              \ -- %xxxx_LLLL %HHHH_LLLL
+    RRUM #4,TOS                 \ -- %xxxx_LLLL %xxxx_HHHH
     BIC.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=0
     BIS.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as output
 COLON                           \ high level word starts here 
@@ -11572,11 +17635,11 @@ ENDCODE
 \ BW1 BIC.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as intput
 \     BIS.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=1
 \ COLON                           \ starts a FORTH word
-\     TOP_LCD 2 20_us             \ -- %0000HHHH
-\     TOP_LCD 2 20_us             \ -- %0000HHHH %0000LLLL
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH %0000_LLLL
 \ HI2LO                           \ switch from FORTH to assembler
-\     RLAM #4,0(PSP)              \ -- %HHHH0000 %0000LLLL
-\     ADD.B @PSP+,TOS             \ -- %HHHHLLLL
+\     RLAM #4,0(PSP)              \ -- %HHHH_0000 %0000_LLLL
+\     ADD.B @PSP+,TOS             \ -- %HHHH_LLLL
 \     MOV @RSP+,IP                \ restore IP saved by COLON
 \     MOV @IP+,PC                 \
 \ ENDCODE
@@ -11717,14 +17780,14 @@ MOV @PSP+,TOS                   \     -- TOS
 RET
 ENDASM
 
-\ ------------------------------\
+\ ******************************\
 ASM BACKGROUND                  \
-\ ------------------------------\
+\ ******************************\
 BEGIN
 \     ...                         \ insert here your background task
 \     ...                         \
 \     ...                         \
-    CALL &RXON                  \ comment this line to disable TERMINAL
+    CALL &RXON                  \ comment this line to disable TERMINAL_INPUT
     BIS &LPM_MODE,SR            \
 \ ******************************\
 \ here start all interrupts     \
@@ -11733,23 +17796,43 @@ BEGIN
 \ ******************************\
 AGAIN                           \
 ENDASM                          \
+\ ******************************\
+
+\ ------------------------------\
+ASM SYS_OUT                    \ system OUT init, replaces WARM at the request of STOP.
+\ ------------------------------\
+\     ...                         \ init specific I/O sys as you want
+\     ...                         \ before executing default WARM
+    MOV #WARM,X                 \ ['] WARM 
+    ADD #4,X                    \ >BODY
+    MOV X,PC                    \ EXECUTE    (which activates IO and TERMINAL)
+ENDASM
+\ ------------------------------\
 
 \ ------------------------------\
 CODE STOP                       \ stops multitasking, must to be used before downloading app
 \ ------------------------------\
-\ restore default action of primary DEFERred word SLEEP (assembly version)
 BW1 MOV #SLEEP,X                \ the ASM word SLEEP is only visible in mode assembler. 
     ADD #4,X                    \ X = BODY of SLEEP, X-2 = PFA of SLEEP
-    MOV X,-2(X)                 \ restore the default background
+    MOV X,-2(X)                 \ restore the default background: SLEEP
+    MOV #WARM,X
+    MOV #SYS_OUT,2(X)           \ default WARM is replaced by JMJ_BOX SYS_OUT (ended by default WARM)
+    BIC.B #RC5,&IR_IE           \ clear RC5_Int
+    BIC.B #RC5,&IR_IFG          \ clear RC5_Int flag
+    MOV #0,&LCD_TIM_CTL         \ stop LCD_TIMER
+    MOV #0,&WDT_TIM_CTL         \ stop WDT_TIMER
+    MOV #0,&WDT_TIM_CCTL0       \ clear CCIFG0 disable CCIE0
+    CALL #INIT_VECT             \ reset all vectors other than TERMINAL_int
 COLON                           \ restore default action of primary DEFERred word WARM (FORTH version)
-['] WARM >BODY IS WARM          \ restore the default WARM
 ECHO                            \
-." RC5toLCD is removed. type START to restart"
-COLD                            \ performs reset to reset all interrupt vectors.    
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM                           \ performs reset to reset all interrupt vectors.    
 ;
+\ ------------------------------\
 
 \ ------------------------------\
-CODE APP_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
+CODE SYS_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
 \ ------------------------------\
 \ LCD_TIM_CTL =  %0000 0010 1001 0100\$3C0
 \                    - -             \CNTL Counter lentgh \ 00 = 16 bits
@@ -11779,7 +17862,7 @@ CODE APP_INIT                   \ this routine completes the init of system, i.e
 \ ------------------------------\
 \ set LCD_TIM_ to make 50kHz PWM \ for LCD_Vo; works without interrupt
 \ ------------------------------\
-MOV #%1011010100,&LCD_TIM_CTL   \ SMCLK/8, up mode, clear timer, no int
+MOV #%10_1101_0100,&LCD_TIM_CTL \ SMCLK/8, up mode, clear timer, no int
 \    MOV #0,&LCD_TIM_EX0        \ predivide by 1 in LCD_TIM_EX0 register (8 MHZ)
 FREQ_KHZ @ 16000 = [IF]         \ if 16 MHz
     MOV #1,&LCD_TIM_EX0         \ predivide by 2 in LCD_TIM_EX0 register (16 MHZ)
@@ -11791,7 +17874,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \ ------------------------------\
 \ set LCD_TIM_.2 to generate PWM for LCD_Vo
 \ ------------------------------\
-    MOV #%01100000,&LCD_TIM_CCTLn \ output mode = set/reset \ clear CCIFG
+MOV #%0110_0000,&LCD_TIM_CCTLn  \ output mode = set/reset \ clear CCIFG
     MOV #10,&LCD_TIM_CCRn       \ contrast adjust : 10/20 ==> LCD_Vo = -0V6|+3V6 (Vcc=3V6)
 \    MOV #12,&LCD_TIM_CCRn        \ contrast adjust : 12/20 ==> LCD_Vo = -1V4|+3V3 (Vcc=3V3)
 \ ------------------------------\
@@ -11820,7 +17903,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \                         -     \ TAIE
 \                          -    \ TAIFG
 \ ------------------------------\
-    MOV #%0100010100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
+MOV #%01_0001_0100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
 \ ------------------------------\
 \                        000    \ TAxEX0
 \                        ---    \ TAIDEX    pre divisor
@@ -11886,22 +17969,212 @@ COLON                           \
     ['] CR >BODY IS CR          \ CR executes its default value
     ['] EMIT >BODY IS EMIT      \ EMIT executes its defaulte value
     ." RC5toLCD is running. Type STOP to quit" \ display message on FastForth Terminal
-    ABORT                       \ ...and end APP_INIT with ABORT, no return.
+    PWR_STATE ABORT             \ init DP and continues with ABORT
 ;                               \
+\ ------------------------------\
+
+\ ------------------------------\
+CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
+\ ------------------------------\
+MOV #SLEEP,X                    \ replace default background process SLEEP
+MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
+MOV #WARM,X                     \ replace default WARM
+MOV #SYS_INIT,2(X)              \ by RC5toLCD SYS_INIT
+MOV X,PC                        \ then execute new WARM
+ENDCODE 
+\ ------------------------------\
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
+
+[DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
+
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
+
+MARKER {RC5TOLCD}
+
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] CONSTANT [IF]
+\ https://forth-standard.org/standard/core/CONSTANT
+\ CONSTANT <name>     n --                      define a Forth CONSTANT 
+: CONSTANT 
+CREATE
+HI2LO
+MOV TOS,-2(W)           \   PFA = n
+MOV @PSP+,TOS
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
 
-\ ------------------------------\
-CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
-\ ------------------------------\
-MOV #SLEEP,X                    \ replace default background process
-MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
-MOV #WARM,X                     \ replace default WARM
-MOV #APP_INIT,2(X)              \ by RC5toLCD APP_INIT
-MOV X,PC                        \ then execute it
-ENDCODE 
+[UNDEFINED] STATE [IF]
+\ https://forth-standard.org/standard/core/STATE
+\ STATE   -- a-addr       holds compiler state
+STATEADR CONSTANT STATE
+[THEN]
 
-[DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+    MOV @IP+,PC \ 4
+THEN
+XOR #-1,TOS     \ 1 flag Z = 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
 
-MARKER {RC5TOLCD}
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE     \ immediate
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+\ https://forth-standard.org/standard/core/DEFER
+\ DEFER "<spaces>name"   --
+\ Skip leading space delimiters. Parse name delimited by a space.
+\ Create a definition for name with the execution semantics defined below.
+
+\ name Execution:   --
+\ Execute the xt that name is set to execute, i.e. NEXT (nothing),
+\ until the phrase ' word IS name is executed, causing a new value of xt to be assigned to name.
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(W)        \ CFA = MOV @PC+,PC = BR MOV @IP+,PC
+MOV #NEXT_ADR,-2(W)     \ PFA = address of MOV @IP+,PC to do nothing.
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEFER! [IF]
+\ https://forth-standard.org/standard/core/DEFERStore
+\ Set the word xt1 to execute xt2. An ambiguous condition exists if xt1 is not for a word defined by DEFER.
+CODE DEFER!             \ xt2 xt1 --
+MOV @PSP+,2(TOS)        \ -- xt1=CFA_DEFER          xt2 --> [CFA_DEFER+2]
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] IS [IF]
+\ https://forth-standard.org/standard/core/IS
+\ IS <name>        xt --
+\ used as is :
+\ DEFER DISPLAY                         create a "do nothing" definition (2 CELLS)
+\ inline command : ' U. IS DISPLAY      U. becomes the runtime of the word DISPLAY
+\ or in a definition : ... ['] U. IS DISPLAY ...
+\ KEY, EMIT, CR, ACCEPT and WARM are examples of DEFERred words
+\
+\ as IS replaces the PFA value of any word, it's a TO alias for VARIABLE and CONSTANT words...
+: IS
+STATE @
+IF  POSTPONE ['] POSTPONE DEFER! 
+ELSE ' DEFER! 
+THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+\ CODE 20uS           \ n --      8MHz version
+\ BEGIN               \ 4 + 16 ~ loop
+\     MOV #39,rDOCON   \ 39
+\     BEGIN           \ 4 ~ loop
+\         NOP
+\         SUB #1,rDOCON
+\     0=  UNTIL
+\     SUB #1,TOS      \ 1
+\ 0= UNTIL
+\ MOV #XDOCON,rDOCON  \ 2
+\ MOV @PSP+,TOS
+\ MOV @RSP+,IP        \
+\ ENDCODE
 
 CODE 20_US                      \ n --      n * 20 us
 BEGIN                           \ here we presume that LCD_TIM_IFG = 1...
@@ -11916,8 +18189,8 @@ MOV @IP+,PC                     \ 4
 ENDCODE
 
 CODE TOP_LCD                    \ LCD Sample
-\                               \ if write : %xxxxWWWW --
-\                               \ if read  : -- %0000RRRR
+\                               \ if write : %xxxx_WWWW --
+\                               \ if read  : -- %0000_RRRR
     BIS.B #LCD_EN,&LCD_CMD_OUT  \ lcd_en 0-->1
     BIT.B #LCD_RW,&LCD_CMD_IN   \ lcd_rw test
 0= IF                           \ write LCD bits pattern
@@ -11938,8 +18211,8 @@ ENDCODE
 CODE LCD_WRC                    \ char --         Write Char
     BIS.B #LCD_RS,&LCD_CMD_OUT  \ lcd_rs=1
 BW1 SUB #2,PSP                  \
-    MOV TOS,0(PSP)              \ -- %xxxxLLLL %HHHHLLLL
-    RRUM #4,TOS                 \ -- %xxxxLLLL %xxxxHHHH
+    MOV TOS,0(PSP)              \ -- %xxxx_LLLL %HHHH_LLLL
+    RRUM #4,TOS                 \ -- %xxxx_LLLL %xxxx_HHHH
     BIC.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=0
     BIS.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as output
 COLON                           \ high level word starts here 
@@ -11979,11 +18252,11 @@ ENDCODE
 \ BW1 BIC.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as intput
 \     BIS.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=1
 \ COLON                           \ starts a FORTH word
-\     TOP_LCD 2 20_us             \ -- %0000HHHH
-\     TOP_LCD 2 20_us             \ -- %0000HHHH %0000LLLL
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH %0000_LLLL
 \ HI2LO                           \ switch from FORTH to assembler
-\     RLAM #4,0(PSP)              \ -- %HHHH0000 %0000LLLL
-\     ADD.B @PSP+,TOS             \ -- %HHHHLLLL
+\     RLAM #4,0(PSP)              \ -- %HHHH_0000 %0000_LLLL
+\     ADD.B @PSP+,TOS             \ -- %HHHH_LLLL
 \     MOV @RSP+,IP                \ restore IP saved by COLON
 \     MOV @IP+,PC                 \
 \ ENDCODE
@@ -12124,14 +18397,14 @@ MOV @PSP+,TOS                   \     -- TOS
 RET
 ENDASM
 
-\ ------------------------------\
+\ ******************************\
 ASM BACKGROUND                  \
-\ ------------------------------\
+\ ******************************\
 BEGIN
 \     ...                         \ insert here your background task
 \     ...                         \
 \     ...                         \
-    CALL &RXON                  \ comment this line to disable TERMINAL
+    CALL &RXON                  \ comment this line to disable TERMINAL_INPUT
     BIS &LPM_MODE,SR            \
 \ ******************************\
 \ here start all interrupts     \
@@ -12140,23 +18413,43 @@ BEGIN
 \ ******************************\
 AGAIN                           \
 ENDASM                          \
+\ ******************************\
+
+\ ------------------------------\
+ASM SYS_OUT                    \ system OUT init, replaces WARM at the request of STOP.
+\ ------------------------------\
+\     ...                         \ init specific I/O sys as you want
+\     ...                         \ before executing default WARM
+    MOV #WARM,X                 \ ['] WARM 
+    ADD #4,X                    \ >BODY
+    MOV X,PC                    \ EXECUTE    (which activates IO and TERMINAL)
+ENDASM
+\ ------------------------------\
 
 \ ------------------------------\
 CODE STOP                       \ stops multitasking, must to be used before downloading app
 \ ------------------------------\
-\ restore default action of primary DEFERred word SLEEP (assembly version)
 BW1 MOV #SLEEP,X                \ the ASM word SLEEP is only visible in mode assembler. 
     ADD #4,X                    \ X = BODY of SLEEP, X-2 = PFA of SLEEP
-    MOV X,-2(X)                 \ restore the default background
+    MOV X,-2(X)                 \ restore the default background: SLEEP
+    MOV #WARM,X
+    MOV #SYS_OUT,2(X)           \ default WARM is replaced by JMJ_BOX SYS_OUT (ended by default WARM)
+    BIC.B #RC5,&IR_IE           \ clear RC5_Int
+    BIC.B #RC5,&IR_IFG          \ clear RC5_Int flag
+    MOV #0,&LCD_TIM_CTL         \ stop LCD_TIMER
+    MOV #0,&WDT_TIM_CTL         \ stop WDT_TIMER
+    MOV #0,&WDT_TIM_CCTL0       \ clear CCIFG0 disable CCIE0
+    CALL #INIT_VECT             \ reset all vectors other than TERMINAL_int
 COLON                           \ restore default action of primary DEFERred word WARM (FORTH version)
-['] WARM >BODY IS WARM          \ restore the default WARM
 ECHO                            \
-." RC5toLCD is removed. type START to restart"
-COLD                            \ performs reset to reset all interrupt vectors.    
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM                           \ performs reset to reset all interrupt vectors.    
 ;
+\ ------------------------------\
 
 \ ------------------------------\
-CODE APP_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
+CODE SYS_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
 \ ------------------------------\
 \ LCD_TIM_CTL =  %0000 0010 1001 0100\$3C0
 \                    - -             \CNTL Counter lentgh \ 00 = 16 bits
@@ -12186,7 +18479,7 @@ CODE APP_INIT                   \ this routine completes the init of system, i.e
 \ ------------------------------\
 \ set LCD_TIM_ to make 50kHz PWM \ for LCD_Vo; works without interrupt
 \ ------------------------------\
-MOV #%1011010100,&LCD_TIM_CTL   \ SMCLK/8, up mode, clear timer, no int
+MOV #%10_1101_0100,&LCD_TIM_CTL \ SMCLK/8, up mode, clear timer, no int
 \    MOV #0,&LCD_TIM_EX0        \ predivide by 1 in LCD_TIM_EX0 register (8 MHZ)
 FREQ_KHZ @ 16000 = [IF]         \ if 16 MHz
     MOV #1,&LCD_TIM_EX0         \ predivide by 2 in LCD_TIM_EX0 register (16 MHZ)
@@ -12198,7 +18491,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \ ------------------------------\
 \ set LCD_TIM_.2 to generate PWM for LCD_Vo
 \ ------------------------------\
-    MOV #%01100000,&LCD_TIM_CCTLn \ output mode = set/reset \ clear CCIFG
+MOV #%0110_0000,&LCD_TIM_CCTLn  \ output mode = set/reset \ clear CCIFG
     MOV #10,&LCD_TIM_CCRn       \ contrast adjust : 10/20 ==> LCD_Vo = -0V6|+3V6 (Vcc=3V6)
 \    MOV #12,&LCD_TIM_CCRn        \ contrast adjust : 12/20 ==> LCD_Vo = -1V4|+3V3 (Vcc=3V3)
 \ ------------------------------\
@@ -12227,7 +18520,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \                         -     \ TAIE
 \                          -    \ TAIFG
 \ ------------------------------\
-    MOV #%0100010100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
+MOV #%01_0001_0100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
 \ ------------------------------\
 \                        000    \ TAxEX0
 \                        ---    \ TAIDEX    pre divisor
@@ -12293,23 +18586,213 @@ COLON                           \
     ['] CR >BODY IS CR          \ CR executes its default value
     ['] EMIT >BODY IS EMIT      \ EMIT executes its defaulte value
     ." RC5toLCD is running. Type STOP to quit" \ display message on FastForth Terminal
-    ABORT                       \ ...and end APP_INIT with ABORT, no return.
+    PWR_STATE ABORT             \ init DP and continues with ABORT
 ;                               \
+\ ------------------------------\
 
 \ ------------------------------\
 CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
 \ ------------------------------\
-MOV #SLEEP,X                    \ replace default background process
+MOV #SLEEP,X                    \ replace default background process SLEEP
 MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
 MOV #WARM,X                     \ replace default WARM
-MOV #APP_INIT,2(X)              \ by RC5toLCD APP_INIT
-MOV X,PC                        \ then execute it
+MOV #SYS_INIT,2(X)              \ by RC5toLCD SYS_INIT
+MOV X,PC                        \ then execute new WARM
 ENDCODE 
+\ ------------------------------\
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
 
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
 
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] CONSTANT [IF]
+\ https://forth-standard.org/standard/core/CONSTANT
+\ CONSTANT <name>     n --                      define a Forth CONSTANT 
+: CONSTANT 
+CREATE
+HI2LO
+MOV TOS,-2(W)           \   PFA = n
+MOV @PSP+,TOS
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] STATE [IF]
+\ https://forth-standard.org/standard/core/STATE
+\ STATE   -- a-addr       holds compiler state
+STATEADR CONSTANT STATE
+[THEN]
+
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+    MOV @IP+,PC \ 4
+THEN
+XOR #-1,TOS     \ 1 flag Z = 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE     \ immediate
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+\ https://forth-standard.org/standard/core/DEFER
+\ DEFER "<spaces>name"   --
+\ Skip leading space delimiters. Parse name delimited by a space.
+\ Create a definition for name with the execution semantics defined below.
+
+\ name Execution:   --
+\ Execute the xt that name is set to execute, i.e. NEXT (nothing),
+\ until the phrase ' word IS name is executed, causing a new value of xt to be assigned to name.
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(W)        \ CFA = MOV @PC+,PC = BR MOV @IP+,PC
+MOV #NEXT_ADR,-2(W)     \ PFA = address of MOV @IP+,PC to do nothing.
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEFER! [IF]
+\ https://forth-standard.org/standard/core/DEFERStore
+\ Set the word xt1 to execute xt2. An ambiguous condition exists if xt1 is not for a word defined by DEFER.
+CODE DEFER!             \ xt2 xt1 --
+MOV @PSP+,2(TOS)        \ -- xt1=CFA_DEFER          xt2 --> [CFA_DEFER+2]
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] IS [IF]
+\ https://forth-standard.org/standard/core/IS
+\ IS <name>        xt --
+\ used as is :
+\ DEFER DISPLAY                         create a "do nothing" definition (2 CELLS)
+\ inline command : ' U. IS DISPLAY      U. becomes the runtime of the word DISPLAY
+\ or in a definition : ... ['] U. IS DISPLAY ...
+\ KEY, EMIT, CR, ACCEPT and WARM are examples of DEFERred words
+\
+\ as IS replaces the PFA value of any word, it's a TO alias for VARIABLE and CONSTANT words...
+: IS
+STATE @
+IF  POSTPONE ['] POSTPONE DEFER! 
+ELSE ' DEFER! 
+THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+\ CODE 20uS           \ n --      8MHz version
+\ BEGIN               \ 4 + 16 ~ loop
+\     MOV #39,rDOCON   \ 39
+\     BEGIN           \ 4 ~ loop
+\         NOP
+\         SUB #1,rDOCON
+\     0=  UNTIL
+\     SUB #1,TOS      \ 1
+\ 0= UNTIL
+\ MOV #XDOCON,rDOCON  \ 2
+\ MOV @PSP+,TOS
+\ MOV @RSP+,IP        \
+\ ENDCODE
+
 CODE 20_US                      \ n --      n * 20 us
 BEGIN                           \ here we presume that LCD_TIM_IFG = 1...
     BEGIN
@@ -12323,8 +18806,8 @@ MOV @IP+,PC                     \ 4
 ENDCODE
 
 CODE TOP_LCD                    \ LCD Sample
-\                               \ if write : %xxxxWWWW --
-\                               \ if read  : -- %0000RRRR
+\                               \ if write : %xxxx_WWWW --
+\                               \ if read  : -- %0000_RRRR
     BIS.B #LCD_EN,&LCD_CMD_OUT  \ lcd_en 0-->1
     BIT.B #LCD_RW,&LCD_CMD_IN   \ lcd_rw test
 0= IF                           \ write LCD bits pattern
@@ -12345,8 +18828,8 @@ ENDCODE
 CODE LCD_WRC                    \ char --         Write Char
     BIS.B #LCD_RS,&LCD_CMD_OUT  \ lcd_rs=1
 BW1 SUB #2,PSP                  \
-    MOV TOS,0(PSP)              \ -- %xxxxLLLL %HHHHLLLL
-    RRUM #4,TOS                 \ -- %xxxxLLLL %xxxxHHHH
+    MOV TOS,0(PSP)              \ -- %xxxx_LLLL %HHHH_LLLL
+    RRUM #4,TOS                 \ -- %xxxx_LLLL %xxxx_HHHH
     BIC.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=0
     BIS.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as output
 COLON                           \ high level word starts here 
@@ -12386,11 +18869,11 @@ ENDCODE
 \ BW1 BIC.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as intput
 \     BIS.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=1
 \ COLON                           \ starts a FORTH word
-\     TOP_LCD 2 20_us             \ -- %0000HHHH
-\     TOP_LCD 2 20_us             \ -- %0000HHHH %0000LLLL
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH %0000_LLLL
 \ HI2LO                           \ switch from FORTH to assembler
-\     RLAM #4,0(PSP)              \ -- %HHHH0000 %0000LLLL
-\     ADD.B @PSP+,TOS             \ -- %HHHHLLLL
+\     RLAM #4,0(PSP)              \ -- %HHHH_0000 %0000_LLLL
+\     ADD.B @PSP+,TOS             \ -- %HHHH_LLLL
 \     MOV @RSP+,IP                \ restore IP saved by COLON
 \     MOV @IP+,PC                 \
 \ ENDCODE
@@ -12531,14 +19014,14 @@ MOV @PSP+,TOS                   \     -- TOS
 RET
 ENDASM
 
-\ ------------------------------\
+\ ******************************\
 ASM BACKGROUND                  \
-\ ------------------------------\
+\ ******************************\
 BEGIN
 \     ...                         \ insert here your background task
 \     ...                         \
 \     ...                         \
-    CALL &RXON                  \ comment this line to disable TERMINAL
+    CALL &RXON                  \ comment this line to disable TERMINAL_INPUT
     BIS &LPM_MODE,SR            \
 \ ******************************\
 \ here start all interrupts     \
@@ -12547,23 +19030,43 @@ BEGIN
 \ ******************************\
 AGAIN                           \
 ENDASM                          \
+\ ******************************\
+
+\ ------------------------------\
+ASM SYS_OUT                    \ system OUT init, replaces WARM at the request of STOP.
+\ ------------------------------\
+\     ...                         \ init specific I/O sys as you want
+\     ...                         \ before executing default WARM
+    MOV #WARM,X                 \ ['] WARM 
+    ADD #4,X                    \ >BODY
+    MOV X,PC                    \ EXECUTE    (which activates IO and TERMINAL)
+ENDASM
+\ ------------------------------\
 
 \ ------------------------------\
 CODE STOP                       \ stops multitasking, must to be used before downloading app
 \ ------------------------------\
-\ restore default action of primary DEFERred word SLEEP (assembly version)
 BW1 MOV #SLEEP,X                \ the ASM word SLEEP is only visible in mode assembler. 
     ADD #4,X                    \ X = BODY of SLEEP, X-2 = PFA of SLEEP
-    MOV X,-2(X)                 \ restore the default background
+    MOV X,-2(X)                 \ restore the default background: SLEEP
+    MOV #WARM,X
+    MOV #SYS_OUT,2(X)           \ default WARM is replaced by JMJ_BOX SYS_OUT (ended by default WARM)
+    BIC.B #RC5,&IR_IE           \ clear RC5_Int
+    BIC.B #RC5,&IR_IFG          \ clear RC5_Int flag
+    MOV #0,&LCD_TIM_CTL         \ stop LCD_TIMER
+    MOV #0,&WDT_TIM_CTL         \ stop WDT_TIMER
+    MOV #0,&WDT_TIM_CCTL0       \ clear CCIFG0 disable CCIE0
+    CALL #INIT_VECT             \ reset all vectors other than TERMINAL_int
 COLON                           \ restore default action of primary DEFERred word WARM (FORTH version)
-['] WARM >BODY IS WARM          \ restore the default WARM
 ECHO                            \
-." RC5toLCD is removed. type START to restart"
-COLD                            \ performs reset to reset all interrupt vectors.    
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM                           \ performs reset to reset all interrupt vectors.    
 ;
+\ ------------------------------\
 
 \ ------------------------------\
-CODE APP_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
+CODE SYS_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
 \ ------------------------------\
 \ LCD_TIM_CTL =  %0000 0010 1001 0100\$3C0
 \                    - -             \CNTL Counter lentgh \ 00 = 16 bits
@@ -12593,7 +19096,7 @@ CODE APP_INIT                   \ this routine completes the init of system, i.e
 \ ------------------------------\
 \ set LCD_TIM_ to make 50kHz PWM \ for LCD_Vo; works without interrupt
 \ ------------------------------\
-MOV #%1011010100,&LCD_TIM_CTL   \ SMCLK/8, up mode, clear timer, no int
+MOV #%10_1101_0100,&LCD_TIM_CTL \ SMCLK/8, up mode, clear timer, no int
 \    MOV #0,&LCD_TIM_EX0        \ predivide by 1 in LCD_TIM_EX0 register (8 MHZ)
 FREQ_KHZ @ 16000 = [IF]         \ if 16 MHz
     MOV #1,&LCD_TIM_EX0         \ predivide by 2 in LCD_TIM_EX0 register (16 MHZ)
@@ -12605,7 +19108,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \ ------------------------------\
 \ set LCD_TIM_.2 to generate PWM for LCD_Vo
 \ ------------------------------\
-    MOV #%01100000,&LCD_TIM_CCTLn \ output mode = set/reset \ clear CCIFG
+MOV #%0110_0000,&LCD_TIM_CCTLn  \ output mode = set/reset \ clear CCIFG
     MOV #10,&LCD_TIM_CCRn       \ contrast adjust : 10/20 ==> LCD_Vo = -0V6|+3V6 (Vcc=3V6)
 \    MOV #12,&LCD_TIM_CCRn        \ contrast adjust : 12/20 ==> LCD_Vo = -1V4|+3V3 (Vcc=3V3)
 \ ------------------------------\
@@ -12634,7 +19137,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \                         -     \ TAIE
 \                          -    \ TAIFG
 \ ------------------------------\
-    MOV #%0100010100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
+MOV #%01_0001_0100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
 \ ------------------------------\
 \                        000    \ TAxEX0
 \                        ---    \ TAIDEX    pre divisor
@@ -12700,23 +19203,213 @@ COLON                           \
     ['] CR >BODY IS CR          \ CR executes its default value
     ['] EMIT >BODY IS EMIT      \ EMIT executes its defaulte value
     ." RC5toLCD is running. Type STOP to quit" \ display message on FastForth Terminal
-    ABORT                       \ ...and end APP_INIT with ABORT, no return.
+    PWR_STATE ABORT             \ init DP and continues with ABORT
 ;                               \
+\ ------------------------------\
 
 \ ------------------------------\
 CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
 \ ------------------------------\
-MOV #SLEEP,X                    \ replace default background process
+MOV #SLEEP,X                    \ replace default background process SLEEP
 MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
 MOV #WARM,X                     \ replace default WARM
-MOV #APP_INIT,2(X)              \ by RC5toLCD APP_INIT
-MOV X,PC                        \ then execute it
+MOV #SYS_INIT,2(X)              \ by RC5toLCD SYS_INIT
+MOV X,PC                        \ then execute new WARM
 ENDCODE 
+\ ------------------------------\
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
 
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
 
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] CONSTANT [IF]
+\ https://forth-standard.org/standard/core/CONSTANT
+\ CONSTANT <name>     n --                      define a Forth CONSTANT 
+: CONSTANT 
+CREATE
+HI2LO
+MOV TOS,-2(W)           \   PFA = n
+MOV @PSP+,TOS
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] STATE [IF]
+\ https://forth-standard.org/standard/core/STATE
+\ STATE   -- a-addr       holds compiler state
+STATEADR CONSTANT STATE
+[THEN]
+
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+    MOV @IP+,PC \ 4
+THEN
+XOR #-1,TOS     \ 1 flag Z = 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE     \ immediate
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+\ https://forth-standard.org/standard/core/DEFER
+\ DEFER "<spaces>name"   --
+\ Skip leading space delimiters. Parse name delimited by a space.
+\ Create a definition for name with the execution semantics defined below.
+
+\ name Execution:   --
+\ Execute the xt that name is set to execute, i.e. NEXT (nothing),
+\ until the phrase ' word IS name is executed, causing a new value of xt to be assigned to name.
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(W)        \ CFA = MOV @PC+,PC = BR MOV @IP+,PC
+MOV #NEXT_ADR,-2(W)     \ PFA = address of MOV @IP+,PC to do nothing.
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEFER! [IF]
+\ https://forth-standard.org/standard/core/DEFERStore
+\ Set the word xt1 to execute xt2. An ambiguous condition exists if xt1 is not for a word defined by DEFER.
+CODE DEFER!             \ xt2 xt1 --
+MOV @PSP+,2(TOS)        \ -- xt1=CFA_DEFER          xt2 --> [CFA_DEFER+2]
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] IS [IF]
+\ https://forth-standard.org/standard/core/IS
+\ IS <name>        xt --
+\ used as is :
+\ DEFER DISPLAY                         create a "do nothing" definition (2 CELLS)
+\ inline command : ' U. IS DISPLAY      U. becomes the runtime of the word DISPLAY
+\ or in a definition : ... ['] U. IS DISPLAY ...
+\ KEY, EMIT, CR, ACCEPT and WARM are examples of DEFERred words
+\
+\ as IS replaces the PFA value of any word, it's a TO alias for VARIABLE and CONSTANT words...
+: IS
+STATE @
+IF  POSTPONE ['] POSTPONE DEFER! 
+ELSE ' DEFER! 
+THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+\ CODE 20uS           \ n --      8MHz version
+\ BEGIN               \ 4 + 16 ~ loop
+\     MOV #39,rDOCON   \ 39
+\     BEGIN           \ 4 ~ loop
+\         NOP
+\         SUB #1,rDOCON
+\     0=  UNTIL
+\     SUB #1,TOS      \ 1
+\ 0= UNTIL
+\ MOV #XDOCON,rDOCON  \ 2
+\ MOV @PSP+,TOS
+\ MOV @RSP+,IP        \
+\ ENDCODE
+
 CODE 20_US                      \ n --      n * 20 us
 BEGIN                           \ here we presume that LCD_TIM_IFG = 1...
     BEGIN
@@ -12730,8 +19423,8 @@ MOV @IP+,PC                     \ 4
 ENDCODE
 
 CODE TOP_LCD                    \ LCD Sample
-\                               \ if write : %xxxxWWWW --
-\                               \ if read  : -- %0000RRRR
+\                               \ if write : %xxxx_WWWW --
+\                               \ if read  : -- %0000_RRRR
     BIS.B #LCD_EN,&LCD_CMD_OUT  \ lcd_en 0-->1
     BIT.B #LCD_RW,&LCD_CMD_IN   \ lcd_rw test
 0= IF                           \ write LCD bits pattern
@@ -12752,8 +19445,8 @@ ENDCODE
 CODE LCD_WRC                    \ char --         Write Char
     BIS.B #LCD_RS,&LCD_CMD_OUT  \ lcd_rs=1
 BW1 SUB #2,PSP                  \
-    MOV TOS,0(PSP)              \ -- %xxxxLLLL %HHHHLLLL
-    RRUM #4,TOS                 \ -- %xxxxLLLL %xxxxHHHH
+    MOV TOS,0(PSP)              \ -- %xxxx_LLLL %HHHH_LLLL
+    RRUM #4,TOS                 \ -- %xxxx_LLLL %xxxx_HHHH
     BIC.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=0
     BIS.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as output
 COLON                           \ high level word starts here 
@@ -12793,11 +19486,11 @@ ENDCODE
 \ BW1 BIC.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as intput
 \     BIS.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=1
 \ COLON                           \ starts a FORTH word
-\     TOP_LCD 2 20_us             \ -- %0000HHHH
-\     TOP_LCD 2 20_us             \ -- %0000HHHH %0000LLLL
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH %0000_LLLL
 \ HI2LO                           \ switch from FORTH to assembler
-\     RLAM #4,0(PSP)              \ -- %HHHH0000 %0000LLLL
-\     ADD.B @PSP+,TOS             \ -- %HHHHLLLL
+\     RLAM #4,0(PSP)              \ -- %HHHH_0000 %0000_LLLL
+\     ADD.B @PSP+,TOS             \ -- %HHHH_LLLL
 \     MOV @RSP+,IP                \ restore IP saved by COLON
 \     MOV @IP+,PC                 \
 \ ENDCODE
@@ -12938,14 +19631,14 @@ MOV @PSP+,TOS                   \     -- TOS
 RET
 ENDASM
 
-\ ------------------------------\
+\ ******************************\
 ASM BACKGROUND                  \
-\ ------------------------------\
+\ ******************************\
 BEGIN
 \     ...                         \ insert here your background task
 \     ...                         \
 \     ...                         \
-    CALL &RXON                  \ comment this line to disable TERMINAL
+    CALL &RXON                  \ comment this line to disable TERMINAL_INPUT
     BIS &LPM_MODE,SR            \
 \ ******************************\
 \ here start all interrupts     \
@@ -12954,23 +19647,43 @@ BEGIN
 \ ******************************\
 AGAIN                           \
 ENDASM                          \
+\ ******************************\
+
+\ ------------------------------\
+ASM SYS_OUT                    \ system OUT init, replaces WARM at the request of STOP.
+\ ------------------------------\
+\     ...                         \ init specific I/O sys as you want
+\     ...                         \ before executing default WARM
+    MOV #WARM,X                 \ ['] WARM 
+    ADD #4,X                    \ >BODY
+    MOV X,PC                    \ EXECUTE    (which activates IO and TERMINAL)
+ENDASM
+\ ------------------------------\
 
 \ ------------------------------\
 CODE STOP                       \ stops multitasking, must to be used before downloading app
 \ ------------------------------\
-\ restore default action of primary DEFERred word SLEEP (assembly version)
 BW1 MOV #SLEEP,X                \ the ASM word SLEEP is only visible in mode assembler. 
     ADD #4,X                    \ X = BODY of SLEEP, X-2 = PFA of SLEEP
-    MOV X,-2(X)                 \ restore the default background
+    MOV X,-2(X)                 \ restore the default background: SLEEP
+    MOV #WARM,X
+    MOV #SYS_OUT,2(X)           \ default WARM is replaced by JMJ_BOX SYS_OUT (ended by default WARM)
+    BIC.B #RC5,&IR_IE           \ clear RC5_Int
+    BIC.B #RC5,&IR_IFG          \ clear RC5_Int flag
+    MOV #0,&LCD_TIM_CTL         \ stop LCD_TIMER
+    MOV #0,&WDT_TIM_CTL         \ stop WDT_TIMER
+    MOV #0,&WDT_TIM_CCTL0       \ clear CCIFG0 disable CCIE0
+    CALL #INIT_VECT             \ reset all vectors other than TERMINAL_int
 COLON                           \ restore default action of primary DEFERred word WARM (FORTH version)
-['] WARM >BODY IS WARM          \ restore the default WARM
 ECHO                            \
-." RC5toLCD is removed. type START to restart"
-COLD                            \ performs reset to reset all interrupt vectors.    
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM                           \ performs reset to reset all interrupt vectors.    
 ;
+\ ------------------------------\
 
 \ ------------------------------\
-CODE APP_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
+CODE SYS_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
 \ ------------------------------\
 \ LCD_TIM_CTL =  %0000 0010 1001 0100\$3C0
 \                    - -             \CNTL Counter lentgh \ 00 = 16 bits
@@ -13000,7 +19713,7 @@ CODE APP_INIT                   \ this routine completes the init of system, i.e
 \ ------------------------------\
 \ set LCD_TIM_ to make 50kHz PWM \ for LCD_Vo; works without interrupt
 \ ------------------------------\
-MOV #%1011010100,&LCD_TIM_CTL   \ SMCLK/8, up mode, clear timer, no int
+MOV #%10_1101_0100,&LCD_TIM_CTL \ SMCLK/8, up mode, clear timer, no int
 \    MOV #0,&LCD_TIM_EX0        \ predivide by 1 in LCD_TIM_EX0 register (8 MHZ)
 FREQ_KHZ @ 16000 = [IF]         \ if 16 MHz
     MOV #1,&LCD_TIM_EX0         \ predivide by 2 in LCD_TIM_EX0 register (16 MHZ)
@@ -13012,7 +19725,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \ ------------------------------\
 \ set LCD_TIM_.2 to generate PWM for LCD_Vo
 \ ------------------------------\
-    MOV #%01100000,&LCD_TIM_CCTLn \ output mode = set/reset \ clear CCIFG
+MOV #%0110_0000,&LCD_TIM_CCTLn  \ output mode = set/reset \ clear CCIFG
     MOV #10,&LCD_TIM_CCRn       \ contrast adjust : 10/20 ==> LCD_Vo = -0V6|+3V6 (Vcc=3V6)
 \    MOV #12,&LCD_TIM_CCRn        \ contrast adjust : 12/20 ==> LCD_Vo = -1V4|+3V3 (Vcc=3V3)
 \ ------------------------------\
@@ -13041,7 +19754,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \                         -     \ TAIE
 \                          -    \ TAIFG
 \ ------------------------------\
-    MOV #%0100010100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
+MOV #%01_0001_0100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
 \ ------------------------------\
 \                        000    \ TAxEX0
 \                        ---    \ TAIDEX    pre divisor
@@ -13107,23 +19820,213 @@ COLON                           \
     ['] CR >BODY IS CR          \ CR executes its default value
     ['] EMIT >BODY IS EMIT      \ EMIT executes its defaulte value
     ." RC5toLCD is running. Type STOP to quit" \ display message on FastForth Terminal
-    ABORT                       \ ...and end APP_INIT with ABORT, no return.
+    PWR_STATE ABORT             \ init DP and continues with ABORT
 ;                               \
+\ ------------------------------\
 
 \ ------------------------------\
 CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
 \ ------------------------------\
-MOV #SLEEP,X                    \ replace default background process
+MOV #SLEEP,X                    \ replace default background process SLEEP
 MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
 MOV #WARM,X                     \ replace default WARM
-MOV #APP_INIT,2(X)              \ by RC5toLCD APP_INIT
-MOV X,PC                        \ then execute it
+MOV #SYS_INIT,2(X)              \ by RC5toLCD SYS_INIT
+MOV X,PC                        \ then execute new WARM
 ENDCODE 
+\ ------------------------------\
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
 
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
 
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] CONSTANT [IF]
+\ https://forth-standard.org/standard/core/CONSTANT
+\ CONSTANT <name>     n --                      define a Forth CONSTANT 
+: CONSTANT 
+CREATE
+HI2LO
+MOV TOS,-2(W)           \   PFA = n
+MOV @PSP+,TOS
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] STATE [IF]
+\ https://forth-standard.org/standard/core/STATE
+\ STATE   -- a-addr       holds compiler state
+STATEADR CONSTANT STATE
+[THEN]
+
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+    MOV @IP+,PC \ 4
+THEN
+XOR #-1,TOS     \ 1 flag Z = 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE     \ immediate
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+\ https://forth-standard.org/standard/core/DEFER
+\ DEFER "<spaces>name"   --
+\ Skip leading space delimiters. Parse name delimited by a space.
+\ Create a definition for name with the execution semantics defined below.
+
+\ name Execution:   --
+\ Execute the xt that name is set to execute, i.e. NEXT (nothing),
+\ until the phrase ' word IS name is executed, causing a new value of xt to be assigned to name.
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(W)        \ CFA = MOV @PC+,PC = BR MOV @IP+,PC
+MOV #NEXT_ADR,-2(W)     \ PFA = address of MOV @IP+,PC to do nothing.
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEFER! [IF]
+\ https://forth-standard.org/standard/core/DEFERStore
+\ Set the word xt1 to execute xt2. An ambiguous condition exists if xt1 is not for a word defined by DEFER.
+CODE DEFER!             \ xt2 xt1 --
+MOV @PSP+,2(TOS)        \ -- xt1=CFA_DEFER          xt2 --> [CFA_DEFER+2]
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] IS [IF]
+\ https://forth-standard.org/standard/core/IS
+\ IS <name>        xt --
+\ used as is :
+\ DEFER DISPLAY                         create a "do nothing" definition (2 CELLS)
+\ inline command : ' U. IS DISPLAY      U. becomes the runtime of the word DISPLAY
+\ or in a definition : ... ['] U. IS DISPLAY ...
+\ KEY, EMIT, CR, ACCEPT and WARM are examples of DEFERred words
+\
+\ as IS replaces the PFA value of any word, it's a TO alias for VARIABLE and CONSTANT words...
+: IS
+STATE @
+IF  POSTPONE ['] POSTPONE DEFER! 
+ELSE ' DEFER! 
+THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+\ CODE 20uS           \ n --      8MHz version
+\ BEGIN               \ 4 + 16 ~ loop
+\     MOV #39,rDOCON   \ 39
+\     BEGIN           \ 4 ~ loop
+\         NOP
+\         SUB #1,rDOCON
+\     0=  UNTIL
+\     SUB #1,TOS      \ 1
+\ 0= UNTIL
+\ MOV #XDOCON,rDOCON  \ 2
+\ MOV @PSP+,TOS
+\ MOV @RSP+,IP        \
+\ ENDCODE
+
 CODE 20_US                      \ n --      n * 20 us
 BEGIN                           \ here we presume that LCD_TIM_IFG = 1...
     BEGIN
@@ -13137,8 +20040,8 @@ MOV @IP+,PC                     \ 4
 ENDCODE
 
 CODE TOP_LCD                    \ LCD Sample
-\                               \ if write : %xxxxWWWW --
-\                               \ if read  : -- %0000RRRR
+\                               \ if write : %xxxx_WWWW --
+\                               \ if read  : -- %0000_RRRR
     BIS.B #LCD_EN,&LCD_CMD_OUT  \ lcd_en 0-->1
     BIT.B #LCD_RW,&LCD_CMD_IN   \ lcd_rw test
 0= IF                           \ write LCD bits pattern
@@ -13159,8 +20062,8 @@ ENDCODE
 CODE LCD_WRC                    \ char --         Write Char
     BIS.B #LCD_RS,&LCD_CMD_OUT  \ lcd_rs=1
 BW1 SUB #2,PSP                  \
-    MOV TOS,0(PSP)              \ -- %xxxxLLLL %HHHHLLLL
-    RRUM #4,TOS                 \ -- %xxxxLLLL %xxxxHHHH
+    MOV TOS,0(PSP)              \ -- %xxxx_LLLL %HHHH_LLLL
+    RRUM #4,TOS                 \ -- %xxxx_LLLL %xxxx_HHHH
     BIC.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=0
     BIS.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as output
 COLON                           \ high level word starts here 
@@ -13200,11 +20103,11 @@ ENDCODE
 \ BW1 BIC.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as intput
 \     BIS.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=1
 \ COLON                           \ starts a FORTH word
-\     TOP_LCD 2 20_us             \ -- %0000HHHH
-\     TOP_LCD 2 20_us             \ -- %0000HHHH %0000LLLL
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH %0000_LLLL
 \ HI2LO                           \ switch from FORTH to assembler
-\     RLAM #4,0(PSP)              \ -- %HHHH0000 %0000LLLL
-\     ADD.B @PSP+,TOS             \ -- %HHHHLLLL
+\     RLAM #4,0(PSP)              \ -- %HHHH_0000 %0000_LLLL
+\     ADD.B @PSP+,TOS             \ -- %HHHH_LLLL
 \     MOV @RSP+,IP                \ restore IP saved by COLON
 \     MOV @IP+,PC                 \
 \ ENDCODE
@@ -13345,14 +20248,14 @@ MOV @PSP+,TOS                   \     -- TOS
 RET
 ENDASM
 
-\ ------------------------------\
+\ ******************************\
 ASM BACKGROUND                  \
-\ ------------------------------\
+\ ******************************\
 BEGIN
 \     ...                         \ insert here your background task
 \     ...                         \
 \     ...                         \
-    CALL &RXON                  \ comment this line to disable TERMINAL
+    CALL &RXON                  \ comment this line to disable TERMINAL_INPUT
     BIS &LPM_MODE,SR            \
 \ ******************************\
 \ here start all interrupts     \
@@ -13361,23 +20264,43 @@ BEGIN
 \ ******************************\
 AGAIN                           \
 ENDASM                          \
+\ ******************************\
+
+\ ------------------------------\
+ASM SYS_OUT                    \ system OUT init, replaces WARM at the request of STOP.
+\ ------------------------------\
+\     ...                         \ init specific I/O sys as you want
+\     ...                         \ before executing default WARM
+    MOV #WARM,X                 \ ['] WARM 
+    ADD #4,X                    \ >BODY
+    MOV X,PC                    \ EXECUTE    (which activates IO and TERMINAL)
+ENDASM
+\ ------------------------------\
 
 \ ------------------------------\
 CODE STOP                       \ stops multitasking, must to be used before downloading app
 \ ------------------------------\
-\ restore default action of primary DEFERred word SLEEP (assembly version)
 BW1 MOV #SLEEP,X                \ the ASM word SLEEP is only visible in mode assembler. 
     ADD #4,X                    \ X = BODY of SLEEP, X-2 = PFA of SLEEP
-    MOV X,-2(X)                 \ restore the default background
+    MOV X,-2(X)                 \ restore the default background: SLEEP
+    MOV #WARM,X
+    MOV #SYS_OUT,2(X)           \ default WARM is replaced by JMJ_BOX SYS_OUT (ended by default WARM)
+    BIC.B #RC5,&IR_IE           \ clear RC5_Int
+    BIC.B #RC5,&IR_IFG          \ clear RC5_Int flag
+    MOV #0,&LCD_TIM_CTL         \ stop LCD_TIMER
+    MOV #0,&WDT_TIM_CTL         \ stop WDT_TIMER
+    MOV #0,&WDT_TIM_CCTL0       \ clear CCIFG0 disable CCIE0
+    CALL #INIT_VECT             \ reset all vectors other than TERMINAL_int
 COLON                           \ restore default action of primary DEFERred word WARM (FORTH version)
-['] WARM >BODY IS WARM          \ restore the default WARM
 ECHO                            \
-." RC5toLCD is removed. type START to restart"
-COLD                            \ performs reset to reset all interrupt vectors.    
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM                           \ performs reset to reset all interrupt vectors.    
 ;
+\ ------------------------------\
 
 \ ------------------------------\
-CODE APP_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
+CODE SYS_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
 \ ------------------------------\
 \ LCD_TIM_CTL =  %0000 0010 1001 0100\$3C0
 \                    - -             \CNTL Counter lentgh \ 00 = 16 bits
@@ -13407,7 +20330,7 @@ CODE APP_INIT                   \ this routine completes the init of system, i.e
 \ ------------------------------\
 \ set LCD_TIM_ to make 50kHz PWM \ for LCD_Vo; works without interrupt
 \ ------------------------------\
-MOV #%1011010100,&LCD_TIM_CTL   \ SMCLK/8, up mode, clear timer, no int
+MOV #%10_1101_0100,&LCD_TIM_CTL \ SMCLK/8, up mode, clear timer, no int
 \    MOV #0,&LCD_TIM_EX0        \ predivide by 1 in LCD_TIM_EX0 register (8 MHZ)
 FREQ_KHZ @ 16000 = [IF]         \ if 16 MHz
     MOV #1,&LCD_TIM_EX0         \ predivide by 2 in LCD_TIM_EX0 register (16 MHZ)
@@ -13419,7 +20342,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \ ------------------------------\
 \ set LCD_TIM_.2 to generate PWM for LCD_Vo
 \ ------------------------------\
-    MOV #%01100000,&LCD_TIM_CCTLn \ output mode = set/reset \ clear CCIFG
+MOV #%0110_0000,&LCD_TIM_CCTLn  \ output mode = set/reset \ clear CCIFG
     MOV #10,&LCD_TIM_CCRn       \ contrast adjust : 10/20 ==> LCD_Vo = -0V6|+3V6 (Vcc=3V6)
 \    MOV #12,&LCD_TIM_CCRn        \ contrast adjust : 12/20 ==> LCD_Vo = -1V4|+3V3 (Vcc=3V3)
 \ ------------------------------\
@@ -13448,7 +20371,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \                         -     \ TAIE
 \                          -    \ TAIFG
 \ ------------------------------\
-    MOV #%0100010100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
+MOV #%01_0001_0100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
 \ ------------------------------\
 \                        000    \ TAxEX0
 \                        ---    \ TAIDEX    pre divisor
@@ -13514,23 +20437,213 @@ COLON                           \
     ['] CR >BODY IS CR          \ CR executes its default value
     ['] EMIT >BODY IS EMIT      \ EMIT executes its defaulte value
     ." RC5toLCD is running. Type STOP to quit" \ display message on FastForth Terminal
-    ABORT                       \ ...and end APP_INIT with ABORT, no return.
+    PWR_STATE ABORT             \ init DP and continues with ABORT
 ;                               \
+\ ------------------------------\
 
 \ ------------------------------\
 CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
 \ ------------------------------\
-MOV #SLEEP,X                    \ replace default background process
+MOV #SLEEP,X                    \ replace default background process SLEEP
 MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
 MOV #WARM,X                     \ replace default WARM
-MOV #APP_INIT,2(X)              \ by RC5toLCD APP_INIT
-MOV X,PC                        \ then execute it
+MOV #SYS_INIT,2(X)              \ by RC5toLCD SYS_INIT
+MOV X,PC                        \ then execute new WARM
 ENDCODE 
+\ ------------------------------\
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
 
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
 
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] CONSTANT [IF]
+\ https://forth-standard.org/standard/core/CONSTANT
+\ CONSTANT <name>     n --                      define a Forth CONSTANT 
+: CONSTANT 
+CREATE
+HI2LO
+MOV TOS,-2(W)           \   PFA = n
+MOV @PSP+,TOS
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] STATE [IF]
+\ https://forth-standard.org/standard/core/STATE
+\ STATE   -- a-addr       holds compiler state
+STATEADR CONSTANT STATE
+[THEN]
+
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+    MOV @IP+,PC \ 4
+THEN
+XOR #-1,TOS     \ 1 flag Z = 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE     \ immediate
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+\ https://forth-standard.org/standard/core/DEFER
+\ DEFER "<spaces>name"   --
+\ Skip leading space delimiters. Parse name delimited by a space.
+\ Create a definition for name with the execution semantics defined below.
+
+\ name Execution:   --
+\ Execute the xt that name is set to execute, i.e. NEXT (nothing),
+\ until the phrase ' word IS name is executed, causing a new value of xt to be assigned to name.
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(W)        \ CFA = MOV @PC+,PC = BR MOV @IP+,PC
+MOV #NEXT_ADR,-2(W)     \ PFA = address of MOV @IP+,PC to do nothing.
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEFER! [IF]
+\ https://forth-standard.org/standard/core/DEFERStore
+\ Set the word xt1 to execute xt2. An ambiguous condition exists if xt1 is not for a word defined by DEFER.
+CODE DEFER!             \ xt2 xt1 --
+MOV @PSP+,2(TOS)        \ -- xt1=CFA_DEFER          xt2 --> [CFA_DEFER+2]
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] IS [IF]
+\ https://forth-standard.org/standard/core/IS
+\ IS <name>        xt --
+\ used as is :
+\ DEFER DISPLAY                         create a "do nothing" definition (2 CELLS)
+\ inline command : ' U. IS DISPLAY      U. becomes the runtime of the word DISPLAY
+\ or in a definition : ... ['] U. IS DISPLAY ...
+\ KEY, EMIT, CR, ACCEPT and WARM are examples of DEFERred words
+\
+\ as IS replaces the PFA value of any word, it's a TO alias for VARIABLE and CONSTANT words...
+: IS
+STATE @
+IF  POSTPONE ['] POSTPONE DEFER! 
+ELSE ' DEFER! 
+THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+\ CODE 20uS           \ n --      8MHz version
+\ BEGIN               \ 4 + 16 ~ loop
+\     MOV #39,rDOCON   \ 39
+\     BEGIN           \ 4 ~ loop
+\         NOP
+\         SUB #1,rDOCON
+\     0=  UNTIL
+\     SUB #1,TOS      \ 1
+\ 0= UNTIL
+\ MOV #XDOCON,rDOCON  \ 2
+\ MOV @PSP+,TOS
+\ MOV @RSP+,IP        \
+\ ENDCODE
+
 CODE 20_US                      \ n --      n * 20 us
 BEGIN                           \ here we presume that LCD_TIM_IFG = 1...
     BEGIN
@@ -13544,8 +20657,8 @@ MOV @IP+,PC                     \ 4
 ENDCODE
 
 CODE TOP_LCD                    \ LCD Sample
-\                               \ if write : %xxxxWWWW --
-\                               \ if read  : -- %0000RRRR
+\                               \ if write : %xxxx_WWWW --
+\                               \ if read  : -- %0000_RRRR
     BIS.B #LCD_EN,&LCD_CMD_OUT  \ lcd_en 0-->1
     BIT.B #LCD_RW,&LCD_CMD_IN   \ lcd_rw test
 0= IF                           \ write LCD bits pattern
@@ -13566,8 +20679,8 @@ ENDCODE
 CODE LCD_WRC                    \ char --         Write Char
     BIS.B #LCD_RS,&LCD_CMD_OUT  \ lcd_rs=1
 BW1 SUB #2,PSP                  \
-    MOV TOS,0(PSP)              \ -- %xxxxLLLL %HHHHLLLL
-    RRUM #4,TOS                 \ -- %xxxxLLLL %xxxxHHHH
+    MOV TOS,0(PSP)              \ -- %xxxx_LLLL %HHHH_LLLL
+    RRUM #4,TOS                 \ -- %xxxx_LLLL %xxxx_HHHH
     BIC.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=0
     BIS.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as output
 COLON                           \ high level word starts here 
@@ -13607,11 +20720,11 @@ ENDCODE
 \ BW1 BIC.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as intput
 \     BIS.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=1
 \ COLON                           \ starts a FORTH word
-\     TOP_LCD 2 20_us             \ -- %0000HHHH
-\     TOP_LCD 2 20_us             \ -- %0000HHHH %0000LLLL
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH %0000_LLLL
 \ HI2LO                           \ switch from FORTH to assembler
-\     RLAM #4,0(PSP)              \ -- %HHHH0000 %0000LLLL
-\     ADD.B @PSP+,TOS             \ -- %HHHHLLLL
+\     RLAM #4,0(PSP)              \ -- %HHHH_0000 %0000_LLLL
+\     ADD.B @PSP+,TOS             \ -- %HHHH_LLLL
 \     MOV @RSP+,IP                \ restore IP saved by COLON
 \     MOV @IP+,PC                 \
 \ ENDCODE
@@ -13752,14 +20865,14 @@ MOV @PSP+,TOS                   \     -- TOS
 RET
 ENDASM
 
-\ ------------------------------\
+\ ******************************\
 ASM BACKGROUND                  \
-\ ------------------------------\
+\ ******************************\
 BEGIN
 \     ...                         \ insert here your background task
 \     ...                         \
 \     ...                         \
-    CALL &RXON                  \ comment this line to disable TERMINAL
+    CALL &RXON                  \ comment this line to disable TERMINAL_INPUT
     BIS &LPM_MODE,SR            \
 \ ******************************\
 \ here start all interrupts     \
@@ -13768,23 +20881,43 @@ BEGIN
 \ ******************************\
 AGAIN                           \
 ENDASM                          \
+\ ******************************\
+
+\ ------------------------------\
+ASM SYS_OUT                    \ system OUT init, replaces WARM at the request of STOP.
+\ ------------------------------\
+\     ...                         \ init specific I/O sys as you want
+\     ...                         \ before executing default WARM
+    MOV #WARM,X                 \ ['] WARM 
+    ADD #4,X                    \ >BODY
+    MOV X,PC                    \ EXECUTE    (which activates IO and TERMINAL)
+ENDASM
+\ ------------------------------\
 
 \ ------------------------------\
 CODE STOP                       \ stops multitasking, must to be used before downloading app
 \ ------------------------------\
-\ restore default action of primary DEFERred word SLEEP (assembly version)
 BW1 MOV #SLEEP,X                \ the ASM word SLEEP is only visible in mode assembler. 
     ADD #4,X                    \ X = BODY of SLEEP, X-2 = PFA of SLEEP
-    MOV X,-2(X)                 \ restore the default background
+    MOV X,-2(X)                 \ restore the default background: SLEEP
+    MOV #WARM,X
+    MOV #SYS_OUT,2(X)           \ default WARM is replaced by JMJ_BOX SYS_OUT (ended by default WARM)
+    BIC.B #RC5,&IR_IE           \ clear RC5_Int
+    BIC.B #RC5,&IR_IFG          \ clear RC5_Int flag
+    MOV #0,&LCD_TIM_CTL         \ stop LCD_TIMER
+    MOV #0,&WDT_TIM_CTL         \ stop WDT_TIMER
+    MOV #0,&WDT_TIM_CCTL0       \ clear CCIFG0 disable CCIE0
+    CALL #INIT_VECT             \ reset all vectors other than TERMINAL_int
 COLON                           \ restore default action of primary DEFERred word WARM (FORTH version)
-['] WARM >BODY IS WARM          \ restore the default WARM
 ECHO                            \
-." RC5toLCD is removed. type START to restart"
-COLD                            \ performs reset to reset all interrupt vectors.    
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM                           \ performs reset to reset all interrupt vectors.    
 ;
+\ ------------------------------\
 
 \ ------------------------------\
-CODE APP_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
+CODE SYS_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
 \ ------------------------------\
 \ LCD_TIM_CTL =  %0000 0010 1001 0100\$3C0
 \                    - -             \CNTL Counter lentgh \ 00 = 16 bits
@@ -13814,7 +20947,7 @@ CODE APP_INIT                   \ this routine completes the init of system, i.e
 \ ------------------------------\
 \ set LCD_TIM_ to make 50kHz PWM \ for LCD_Vo; works without interrupt
 \ ------------------------------\
-MOV #%1011010100,&LCD_TIM_CTL   \ SMCLK/8, up mode, clear timer, no int
+MOV #%10_1101_0100,&LCD_TIM_CTL \ SMCLK/8, up mode, clear timer, no int
 \    MOV #0,&LCD_TIM_EX0        \ predivide by 1 in LCD_TIM_EX0 register (8 MHZ)
 FREQ_KHZ @ 16000 = [IF]         \ if 16 MHz
     MOV #1,&LCD_TIM_EX0         \ predivide by 2 in LCD_TIM_EX0 register (16 MHZ)
@@ -13826,7 +20959,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \ ------------------------------\
 \ set LCD_TIM_.2 to generate PWM for LCD_Vo
 \ ------------------------------\
-    MOV #%01100000,&LCD_TIM_CCTLn \ output mode = set/reset \ clear CCIFG
+MOV #%0110_0000,&LCD_TIM_CCTLn  \ output mode = set/reset \ clear CCIFG
     MOV #10,&LCD_TIM_CCRn       \ contrast adjust : 10/20 ==> LCD_Vo = -0V6|+3V6 (Vcc=3V6)
 \    MOV #12,&LCD_TIM_CCRn        \ contrast adjust : 12/20 ==> LCD_Vo = -1V4|+3V3 (Vcc=3V3)
 \ ------------------------------\
@@ -13855,7 +20988,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \                         -     \ TAIE
 \                          -    \ TAIFG
 \ ------------------------------\
-    MOV #%0100010100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
+MOV #%01_0001_0100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
 \ ------------------------------\
 \                        000    \ TAxEX0
 \                        ---    \ TAIDEX    pre divisor
@@ -13921,22 +21054,212 @@ COLON                           \
     ['] CR >BODY IS CR          \ CR executes its default value
     ['] EMIT >BODY IS EMIT      \ EMIT executes its defaulte value
     ." RC5toLCD is running. Type STOP to quit" \ display message on FastForth Terminal
-    ABORT                       \ ...and end APP_INIT with ABORT, no return.
+    PWR_STATE ABORT             \ init DP and continues with ABORT
 ;                               \
+\ ------------------------------\
 
 \ ------------------------------\
 CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
 \ ------------------------------\
-MOV #SLEEP,X                    \ replace default background process
+MOV #SLEEP,X                    \ replace default background process SLEEP
 MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
 MOV #WARM,X                     \ replace default WARM
-MOV #APP_INIT,2(X)              \ by RC5toLCD APP_INIT
-MOV X,PC                        \ then execute it
+MOV #SYS_INIT,2(X)              \ by RC5toLCD SYS_INIT
+MOV X,PC                        \ then execute new WARM
 ENDCODE 
+\ ------------------------------\
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
 
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
 
-MARKER {RC5TOLCD}
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
+
+MARKER {RC5TOLCD}
+
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] CONSTANT [IF]
+\ https://forth-standard.org/standard/core/CONSTANT
+\ CONSTANT <name>     n --                      define a Forth CONSTANT 
+: CONSTANT 
+CREATE
+HI2LO
+MOV TOS,-2(W)           \   PFA = n
+MOV @PSP+,TOS
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] STATE [IF]
+\ https://forth-standard.org/standard/core/STATE
+\ STATE   -- a-addr       holds compiler state
+STATEADR CONSTANT STATE
+[THEN]
+
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+    MOV @IP+,PC \ 4
+THEN
+XOR #-1,TOS     \ 1 flag Z = 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE     \ immediate
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+\ https://forth-standard.org/standard/core/DEFER
+\ DEFER "<spaces>name"   --
+\ Skip leading space delimiters. Parse name delimited by a space.
+\ Create a definition for name with the execution semantics defined below.
+
+\ name Execution:   --
+\ Execute the xt that name is set to execute, i.e. NEXT (nothing),
+\ until the phrase ' word IS name is executed, causing a new value of xt to be assigned to name.
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(W)        \ CFA = MOV @PC+,PC = BR MOV @IP+,PC
+MOV #NEXT_ADR,-2(W)     \ PFA = address of MOV @IP+,PC to do nothing.
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEFER! [IF]
+\ https://forth-standard.org/standard/core/DEFERStore
+\ Set the word xt1 to execute xt2. An ambiguous condition exists if xt1 is not for a word defined by DEFER.
+CODE DEFER!             \ xt2 xt1 --
+MOV @PSP+,2(TOS)        \ -- xt1=CFA_DEFER          xt2 --> [CFA_DEFER+2]
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] IS [IF]
+\ https://forth-standard.org/standard/core/IS
+\ IS <name>        xt --
+\ used as is :
+\ DEFER DISPLAY                         create a "do nothing" definition (2 CELLS)
+\ inline command : ' U. IS DISPLAY      U. becomes the runtime of the word DISPLAY
+\ or in a definition : ... ['] U. IS DISPLAY ...
+\ KEY, EMIT, CR, ACCEPT and WARM are examples of DEFERred words
+\
+\ as IS replaces the PFA value of any word, it's a TO alias for VARIABLE and CONSTANT words...
+: IS
+STATE @
+IF  POSTPONE ['] POSTPONE DEFER! 
+ELSE ' DEFER! 
+THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+\ CODE 20uS           \ n --      8MHz version
+\ BEGIN               \ 4 + 16 ~ loop
+\     MOV #39,rDOCON   \ 39
+\     BEGIN           \ 4 ~ loop
+\         NOP
+\         SUB #1,rDOCON
+\     0=  UNTIL
+\     SUB #1,TOS      \ 1
+\ 0= UNTIL
+\ MOV #XDOCON,rDOCON  \ 2
+\ MOV @PSP+,TOS
+\ MOV @RSP+,IP        \
+\ ENDCODE
 
 CODE 20_US                      \ n --      n * 20 us
 BEGIN                           \ here we presume that LCD_TIM_IFG = 1...
@@ -13951,8 +21274,8 @@ MOV @IP+,PC                     \ 4
 ENDCODE
 
 CODE TOP_LCD                    \ LCD Sample
-\                               \ if write : %xxxxWWWW --
-\                               \ if read  : -- %0000RRRR
+\                               \ if write : %xxxx_WWWW --
+\                               \ if read  : -- %0000_RRRR
     BIS.B #LCD_EN,&LCD_CMD_OUT  \ lcd_en 0-->1
     BIT.B #LCD_RW,&LCD_CMD_IN   \ lcd_rw test
 0= IF                           \ write LCD bits pattern
@@ -13973,8 +21296,8 @@ ENDCODE
 CODE LCD_WRC                    \ char --         Write Char
     BIS.B #LCD_RS,&LCD_CMD_OUT  \ lcd_rs=1
 BW1 SUB #2,PSP                  \
-    MOV TOS,0(PSP)              \ -- %xxxxLLLL %HHHHLLLL
-    RRUM #4,TOS                 \ -- %xxxxLLLL %xxxxHHHH
+    MOV TOS,0(PSP)              \ -- %xxxx_LLLL %HHHH_LLLL
+    RRUM #4,TOS                 \ -- %xxxx_LLLL %xxxx_HHHH
     BIC.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=0
     BIS.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as output
 COLON                           \ high level word starts here 
@@ -14014,11 +21337,11 @@ ENDCODE
 \ BW1 BIC.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as intput
 \     BIS.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=1
 \ COLON                           \ starts a FORTH word
-\     TOP_LCD 2 20_us             \ -- %0000HHHH
-\     TOP_LCD 2 20_us             \ -- %0000HHHH %0000LLLL
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH %0000_LLLL
 \ HI2LO                           \ switch from FORTH to assembler
-\     RLAM #4,0(PSP)              \ -- %HHHH0000 %0000LLLL
-\     ADD.B @PSP+,TOS             \ -- %HHHHLLLL
+\     RLAM #4,0(PSP)              \ -- %HHHH_0000 %0000_LLLL
+\     ADD.B @PSP+,TOS             \ -- %HHHH_LLLL
 \     MOV @RSP+,IP                \ restore IP saved by COLON
 \     MOV @IP+,PC                 \
 \ ENDCODE
@@ -14159,14 +21482,14 @@ MOV @PSP+,TOS                   \     -- TOS
 RET
 ENDASM
 
-\ ------------------------------\
+\ ******************************\
 ASM BACKGROUND                  \
-\ ------------------------------\
+\ ******************************\
 BEGIN
 \     ...                         \ insert here your background task
 \     ...                         \
 \     ...                         \
-    CALL &RXON                  \ comment this line to disable TERMINAL
+    CALL &RXON                  \ comment this line to disable TERMINAL_INPUT
     BIS &LPM_MODE,SR            \
 \ ******************************\
 \ here start all interrupts     \
@@ -14175,23 +21498,43 @@ BEGIN
 \ ******************************\
 AGAIN                           \
 ENDASM                          \
+\ ******************************\
+
+\ ------------------------------\
+ASM SYS_OUT                    \ system OUT init, replaces WARM at the request of STOP.
+\ ------------------------------\
+\     ...                         \ init specific I/O sys as you want
+\     ...                         \ before executing default WARM
+    MOV #WARM,X                 \ ['] WARM 
+    ADD #4,X                    \ >BODY
+    MOV X,PC                    \ EXECUTE    (which activates IO and TERMINAL)
+ENDASM
+\ ------------------------------\
 
 \ ------------------------------\
 CODE STOP                       \ stops multitasking, must to be used before downloading app
 \ ------------------------------\
-\ restore default action of primary DEFERred word SLEEP (assembly version)
 BW1 MOV #SLEEP,X                \ the ASM word SLEEP is only visible in mode assembler. 
     ADD #4,X                    \ X = BODY of SLEEP, X-2 = PFA of SLEEP
-    MOV X,-2(X)                 \ restore the default background
+    MOV X,-2(X)                 \ restore the default background: SLEEP
+    MOV #WARM,X
+    MOV #SYS_OUT,2(X)           \ default WARM is replaced by JMJ_BOX SYS_OUT (ended by default WARM)
+    BIC.B #RC5,&IR_IE           \ clear RC5_Int
+    BIC.B #RC5,&IR_IFG          \ clear RC5_Int flag
+    MOV #0,&LCD_TIM_CTL         \ stop LCD_TIMER
+    MOV #0,&WDT_TIM_CTL         \ stop WDT_TIMER
+    MOV #0,&WDT_TIM_CCTL0       \ clear CCIFG0 disable CCIE0
+    CALL #INIT_VECT             \ reset all vectors other than TERMINAL_int
 COLON                           \ restore default action of primary DEFERred word WARM (FORTH version)
-['] WARM >BODY IS WARM          \ restore the default WARM
 ECHO                            \
-." RC5toLCD is removed. type START to restart"
-COLD                            \ performs reset to reset all interrupt vectors.    
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM                           \ performs reset to reset all interrupt vectors.    
 ;
+\ ------------------------------\
 
 \ ------------------------------\
-CODE APP_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
+CODE SYS_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
 \ ------------------------------\
 \ LCD_TIM_CTL =  %0000 0010 1001 0100\$3C0
 \                    - -             \CNTL Counter lentgh \ 00 = 16 bits
@@ -14221,7 +21564,7 @@ CODE APP_INIT                   \ this routine completes the init of system, i.e
 \ ------------------------------\
 \ set LCD_TIM_ to make 50kHz PWM \ for LCD_Vo; works without interrupt
 \ ------------------------------\
-MOV #%1011010100,&LCD_TIM_CTL   \ SMCLK/8, up mode, clear timer, no int
+MOV #%10_1101_0100,&LCD_TIM_CTL \ SMCLK/8, up mode, clear timer, no int
 \    MOV #0,&LCD_TIM_EX0        \ predivide by 1 in LCD_TIM_EX0 register (8 MHZ)
 FREQ_KHZ @ 16000 = [IF]         \ if 16 MHz
     MOV #1,&LCD_TIM_EX0         \ predivide by 2 in LCD_TIM_EX0 register (16 MHZ)
@@ -14233,7 +21576,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \ ------------------------------\
 \ set LCD_TIM_.2 to generate PWM for LCD_Vo
 \ ------------------------------\
-    MOV #%01100000,&LCD_TIM_CCTLn \ output mode = set/reset \ clear CCIFG
+MOV #%0110_0000,&LCD_TIM_CCTLn  \ output mode = set/reset \ clear CCIFG
     MOV #10,&LCD_TIM_CCRn       \ contrast adjust : 10/20 ==> LCD_Vo = -0V6|+3V6 (Vcc=3V6)
 \    MOV #12,&LCD_TIM_CCRn        \ contrast adjust : 12/20 ==> LCD_Vo = -1V4|+3V3 (Vcc=3V3)
 \ ------------------------------\
@@ -14262,7 +21605,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \                         -     \ TAIE
 \                          -    \ TAIFG
 \ ------------------------------\
-    MOV #%0100010100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
+MOV #%01_0001_0100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
 \ ------------------------------\
 \                        000    \ TAxEX0
 \                        ---    \ TAIDEX    pre divisor
@@ -14328,23 +21671,213 @@ COLON                           \
     ['] CR >BODY IS CR          \ CR executes its default value
     ['] EMIT >BODY IS EMIT      \ EMIT executes its defaulte value
     ." RC5toLCD is running. Type STOP to quit" \ display message on FastForth Terminal
-    ABORT                       \ ...and end APP_INIT with ABORT, no return.
+    PWR_STATE ABORT             \ init DP and continues with ABORT
 ;                               \
+\ ------------------------------\
 
 \ ------------------------------\
 CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
 \ ------------------------------\
-MOV #SLEEP,X                    \ replace default background process
+MOV #SLEEP,X                    \ replace default background process SLEEP
 MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
 MOV #WARM,X                     \ replace default WARM
-MOV #APP_INIT,2(X)              \ by RC5toLCD APP_INIT
-MOV X,PC                        \ then execute it
+MOV #SYS_INIT,2(X)              \ by RC5toLCD SYS_INIT
+MOV X,PC                        \ then execute new WARM
 ENDCODE 
+\ ------------------------------\
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
 
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
 
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] CONSTANT [IF]
+\ https://forth-standard.org/standard/core/CONSTANT
+\ CONSTANT <name>     n --                      define a Forth CONSTANT 
+: CONSTANT 
+CREATE
+HI2LO
+MOV TOS,-2(W)           \   PFA = n
+MOV @PSP+,TOS
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] STATE [IF]
+\ https://forth-standard.org/standard/core/STATE
+\ STATE   -- a-addr       holds compiler state
+STATEADR CONSTANT STATE
+[THEN]
+
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+    MOV @IP+,PC \ 4
+THEN
+XOR #-1,TOS     \ 1 flag Z = 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE     \ immediate
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+\ https://forth-standard.org/standard/core/DEFER
+\ DEFER "<spaces>name"   --
+\ Skip leading space delimiters. Parse name delimited by a space.
+\ Create a definition for name with the execution semantics defined below.
+
+\ name Execution:   --
+\ Execute the xt that name is set to execute, i.e. NEXT (nothing),
+\ until the phrase ' word IS name is executed, causing a new value of xt to be assigned to name.
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(W)        \ CFA = MOV @PC+,PC = BR MOV @IP+,PC
+MOV #NEXT_ADR,-2(W)     \ PFA = address of MOV @IP+,PC to do nothing.
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEFER! [IF]
+\ https://forth-standard.org/standard/core/DEFERStore
+\ Set the word xt1 to execute xt2. An ambiguous condition exists if xt1 is not for a word defined by DEFER.
+CODE DEFER!             \ xt2 xt1 --
+MOV @PSP+,2(TOS)        \ -- xt1=CFA_DEFER          xt2 --> [CFA_DEFER+2]
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] IS [IF]
+\ https://forth-standard.org/standard/core/IS
+\ IS <name>        xt --
+\ used as is :
+\ DEFER DISPLAY                         create a "do nothing" definition (2 CELLS)
+\ inline command : ' U. IS DISPLAY      U. becomes the runtime of the word DISPLAY
+\ or in a definition : ... ['] U. IS DISPLAY ...
+\ KEY, EMIT, CR, ACCEPT and WARM are examples of DEFERred words
+\
+\ as IS replaces the PFA value of any word, it's a TO alias for VARIABLE and CONSTANT words...
+: IS
+STATE @
+IF  POSTPONE ['] POSTPONE DEFER! 
+ELSE ' DEFER! 
+THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+\ CODE 20uS           \ n --      8MHz version
+\ BEGIN               \ 4 + 16 ~ loop
+\     MOV #39,rDOCON   \ 39
+\     BEGIN           \ 4 ~ loop
+\         NOP
+\         SUB #1,rDOCON
+\     0=  UNTIL
+\     SUB #1,TOS      \ 1
+\ 0= UNTIL
+\ MOV #XDOCON,rDOCON  \ 2
+\ MOV @PSP+,TOS
+\ MOV @RSP+,IP        \
+\ ENDCODE
+
 CODE 20_US                      \ n --      n * 20 us
 BEGIN                           \ here we presume that LCD_TIM_IFG = 1...
     BEGIN
@@ -14358,8 +21891,8 @@ MOV @IP+,PC                     \ 4
 ENDCODE
 
 CODE TOP_LCD                    \ LCD Sample
-\                               \ if write : %xxxxWWWW --
-\                               \ if read  : -- %0000RRRR
+\                               \ if write : %xxxx_WWWW --
+\                               \ if read  : -- %0000_RRRR
     BIS.B #LCD_EN,&LCD_CMD_OUT  \ lcd_en 0-->1
     BIT.B #LCD_RW,&LCD_CMD_IN   \ lcd_rw test
 0= IF                           \ write LCD bits pattern
@@ -14380,8 +21913,8 @@ ENDCODE
 CODE LCD_WRC                    \ char --         Write Char
     BIS.B #LCD_RS,&LCD_CMD_OUT  \ lcd_rs=1
 BW1 SUB #2,PSP                  \
-    MOV TOS,0(PSP)              \ -- %xxxxLLLL %HHHHLLLL
-    RRUM #4,TOS                 \ -- %xxxxLLLL %xxxxHHHH
+    MOV TOS,0(PSP)              \ -- %xxxx_LLLL %HHHH_LLLL
+    RRUM #4,TOS                 \ -- %xxxx_LLLL %xxxx_HHHH
     BIC.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=0
     BIS.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as output
 COLON                           \ high level word starts here 
@@ -14421,11 +21954,11 @@ ENDCODE
 \ BW1 BIC.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as intput
 \     BIS.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=1
 \ COLON                           \ starts a FORTH word
-\     TOP_LCD 2 20_us             \ -- %0000HHHH
-\     TOP_LCD 2 20_us             \ -- %0000HHHH %0000LLLL
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH %0000_LLLL
 \ HI2LO                           \ switch from FORTH to assembler
-\     RLAM #4,0(PSP)              \ -- %HHHH0000 %0000LLLL
-\     ADD.B @PSP+,TOS             \ -- %HHHHLLLL
+\     RLAM #4,0(PSP)              \ -- %HHHH_0000 %0000_LLLL
+\     ADD.B @PSP+,TOS             \ -- %HHHH_LLLL
 \     MOV @RSP+,IP                \ restore IP saved by COLON
 \     MOV @IP+,PC                 \
 \ ENDCODE
@@ -14566,14 +22099,14 @@ MOV @PSP+,TOS                   \     -- TOS
 RET
 ENDASM
 
-\ ------------------------------\
+\ ******************************\
 ASM BACKGROUND                  \
-\ ------------------------------\
+\ ******************************\
 BEGIN
 \     ...                         \ insert here your background task
 \     ...                         \
 \     ...                         \
-    CALL &RXON                  \ comment this line to disable TERMINAL
+    CALL &RXON                  \ comment this line to disable TERMINAL_INPUT
     BIS &LPM_MODE,SR            \
 \ ******************************\
 \ here start all interrupts     \
@@ -14582,23 +22115,43 @@ BEGIN
 \ ******************************\
 AGAIN                           \
 ENDASM                          \
+\ ******************************\
+
+\ ------------------------------\
+ASM SYS_OUT                    \ system OUT init, replaces WARM at the request of STOP.
+\ ------------------------------\
+\     ...                         \ init specific I/O sys as you want
+\     ...                         \ before executing default WARM
+    MOV #WARM,X                 \ ['] WARM 
+    ADD #4,X                    \ >BODY
+    MOV X,PC                    \ EXECUTE    (which activates IO and TERMINAL)
+ENDASM
+\ ------------------------------\
 
 \ ------------------------------\
 CODE STOP                       \ stops multitasking, must to be used before downloading app
 \ ------------------------------\
-\ restore default action of primary DEFERred word SLEEP (assembly version)
 BW1 MOV #SLEEP,X                \ the ASM word SLEEP is only visible in mode assembler. 
     ADD #4,X                    \ X = BODY of SLEEP, X-2 = PFA of SLEEP
-    MOV X,-2(X)                 \ restore the default background
+    MOV X,-2(X)                 \ restore the default background: SLEEP
+    MOV #WARM,X
+    MOV #SYS_OUT,2(X)           \ default WARM is replaced by JMJ_BOX SYS_OUT (ended by default WARM)
+    BIC.B #RC5,&IR_IE           \ clear RC5_Int
+    BIC.B #RC5,&IR_IFG          \ clear RC5_Int flag
+    MOV #0,&LCD_TIM_CTL         \ stop LCD_TIMER
+    MOV #0,&WDT_TIM_CTL         \ stop WDT_TIMER
+    MOV #0,&WDT_TIM_CCTL0       \ clear CCIFG0 disable CCIE0
+    CALL #INIT_VECT             \ reset all vectors other than TERMINAL_int
 COLON                           \ restore default action of primary DEFERred word WARM (FORTH version)
-['] WARM >BODY IS WARM          \ restore the default WARM
 ECHO                            \
-." RC5toLCD is removed. type START to restart"
-COLD                            \ performs reset to reset all interrupt vectors.    
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM                           \ performs reset to reset all interrupt vectors.    
 ;
+\ ------------------------------\
 
 \ ------------------------------\
-CODE APP_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
+CODE SYS_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
 \ ------------------------------\
 \ LCD_TIM_CTL =  %0000 0010 1001 0100\$3C0
 \                    - -             \CNTL Counter lentgh \ 00 = 16 bits
@@ -14628,7 +22181,7 @@ CODE APP_INIT                   \ this routine completes the init of system, i.e
 \ ------------------------------\
 \ set LCD_TIM_ to make 50kHz PWM \ for LCD_Vo; works without interrupt
 \ ------------------------------\
-MOV #%1011010100,&LCD_TIM_CTL   \ SMCLK/8, up mode, clear timer, no int
+MOV #%10_1101_0100,&LCD_TIM_CTL \ SMCLK/8, up mode, clear timer, no int
 \    MOV #0,&LCD_TIM_EX0        \ predivide by 1 in LCD_TIM_EX0 register (8 MHZ)
 FREQ_KHZ @ 16000 = [IF]         \ if 16 MHz
     MOV #1,&LCD_TIM_EX0         \ predivide by 2 in LCD_TIM_EX0 register (16 MHZ)
@@ -14640,7 +22193,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \ ------------------------------\
 \ set LCD_TIM_.2 to generate PWM for LCD_Vo
 \ ------------------------------\
-    MOV #%01100000,&LCD_TIM_CCTLn \ output mode = set/reset \ clear CCIFG
+MOV #%0110_0000,&LCD_TIM_CCTLn  \ output mode = set/reset \ clear CCIFG
     MOV #10,&LCD_TIM_CCRn       \ contrast adjust : 10/20 ==> LCD_Vo = -0V6|+3V6 (Vcc=3V6)
 \    MOV #12,&LCD_TIM_CCRn        \ contrast adjust : 12/20 ==> LCD_Vo = -1V4|+3V3 (Vcc=3V3)
 \ ------------------------------\
@@ -14669,7 +22222,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \                         -     \ TAIE
 \                          -    \ TAIFG
 \ ------------------------------\
-    MOV #%0100010100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
+MOV #%01_0001_0100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
 \ ------------------------------\
 \                        000    \ TAxEX0
 \                        ---    \ TAIDEX    pre divisor
@@ -14735,23 +22288,213 @@ COLON                           \
     ['] CR >BODY IS CR          \ CR executes its default value
     ['] EMIT >BODY IS EMIT      \ EMIT executes its defaulte value
     ." RC5toLCD is running. Type STOP to quit" \ display message on FastForth Terminal
-    ABORT                       \ ...and end APP_INIT with ABORT, no return.
+    PWR_STATE ABORT             \ init DP and continues with ABORT
 ;                               \
+\ ------------------------------\
 
 \ ------------------------------\
 CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
 \ ------------------------------\
-MOV #SLEEP,X                    \ replace default background process
+MOV #SLEEP,X                    \ replace default background process SLEEP
 MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
 MOV #WARM,X                     \ replace default WARM
-MOV #APP_INIT,2(X)              \ by RC5toLCD APP_INIT
-MOV X,PC                        \ then execute it
+MOV #SYS_INIT,2(X)              \ by RC5toLCD SYS_INIT
+MOV X,PC                        \ then execute new WARM
 ENDCODE 
+\ ------------------------------\
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
 
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
 
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] CONSTANT [IF]
+\ https://forth-standard.org/standard/core/CONSTANT
+\ CONSTANT <name>     n --                      define a Forth CONSTANT 
+: CONSTANT 
+CREATE
+HI2LO
+MOV TOS,-2(W)           \   PFA = n
+MOV @PSP+,TOS
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] STATE [IF]
+\ https://forth-standard.org/standard/core/STATE
+\ STATE   -- a-addr       holds compiler state
+STATEADR CONSTANT STATE
+[THEN]
+
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+    MOV @IP+,PC \ 4
+THEN
+XOR #-1,TOS     \ 1 flag Z = 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE     \ immediate
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+\ https://forth-standard.org/standard/core/DEFER
+\ DEFER "<spaces>name"   --
+\ Skip leading space delimiters. Parse name delimited by a space.
+\ Create a definition for name with the execution semantics defined below.
+
+\ name Execution:   --
+\ Execute the xt that name is set to execute, i.e. NEXT (nothing),
+\ until the phrase ' word IS name is executed, causing a new value of xt to be assigned to name.
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(W)        \ CFA = MOV @PC+,PC = BR MOV @IP+,PC
+MOV #NEXT_ADR,-2(W)     \ PFA = address of MOV @IP+,PC to do nothing.
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEFER! [IF]
+\ https://forth-standard.org/standard/core/DEFERStore
+\ Set the word xt1 to execute xt2. An ambiguous condition exists if xt1 is not for a word defined by DEFER.
+CODE DEFER!             \ xt2 xt1 --
+MOV @PSP+,2(TOS)        \ -- xt1=CFA_DEFER          xt2 --> [CFA_DEFER+2]
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] IS [IF]
+\ https://forth-standard.org/standard/core/IS
+\ IS <name>        xt --
+\ used as is :
+\ DEFER DISPLAY                         create a "do nothing" definition (2 CELLS)
+\ inline command : ' U. IS DISPLAY      U. becomes the runtime of the word DISPLAY
+\ or in a definition : ... ['] U. IS DISPLAY ...
+\ KEY, EMIT, CR, ACCEPT and WARM are examples of DEFERred words
+\
+\ as IS replaces the PFA value of any word, it's a TO alias for VARIABLE and CONSTANT words...
+: IS
+STATE @
+IF  POSTPONE ['] POSTPONE DEFER! 
+ELSE ' DEFER! 
+THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+\ CODE 20uS           \ n --      8MHz version
+\ BEGIN               \ 4 + 16 ~ loop
+\     MOV #39,rDOCON   \ 39
+\     BEGIN           \ 4 ~ loop
+\         NOP
+\         SUB #1,rDOCON
+\     0=  UNTIL
+\     SUB #1,TOS      \ 1
+\ 0= UNTIL
+\ MOV #XDOCON,rDOCON  \ 2
+\ MOV @PSP+,TOS
+\ MOV @RSP+,IP        \
+\ ENDCODE
+
 CODE 20_US                      \ n --      n * 20 us
 BEGIN                           \ here we presume that LCD_TIM_IFG = 1...
     BEGIN
@@ -14765,8 +22508,8 @@ MOV @IP+,PC                     \ 4
 ENDCODE
 
 CODE TOP_LCD                    \ LCD Sample
-\                               \ if write : %xxxxWWWW --
-\                               \ if read  : -- %0000RRRR
+\                               \ if write : %xxxx_WWWW --
+\                               \ if read  : -- %0000_RRRR
     BIS.B #LCD_EN,&LCD_CMD_OUT  \ lcd_en 0-->1
     BIT.B #LCD_RW,&LCD_CMD_IN   \ lcd_rw test
 0= IF                           \ write LCD bits pattern
@@ -14787,8 +22530,8 @@ ENDCODE
 CODE LCD_WRC                    \ char --         Write Char
     BIS.B #LCD_RS,&LCD_CMD_OUT  \ lcd_rs=1
 BW1 SUB #2,PSP                  \
-    MOV TOS,0(PSP)              \ -- %xxxxLLLL %HHHHLLLL
-    RRUM #4,TOS                 \ -- %xxxxLLLL %xxxxHHHH
+    MOV TOS,0(PSP)              \ -- %xxxx_LLLL %HHHH_LLLL
+    RRUM #4,TOS                 \ -- %xxxx_LLLL %xxxx_HHHH
     BIC.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=0
     BIS.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as output
 COLON                           \ high level word starts here 
@@ -14828,11 +22571,11 @@ ENDCODE
 \ BW1 BIC.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as intput
 \     BIS.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=1
 \ COLON                           \ starts a FORTH word
-\     TOP_LCD 2 20_us             \ -- %0000HHHH
-\     TOP_LCD 2 20_us             \ -- %0000HHHH %0000LLLL
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH %0000_LLLL
 \ HI2LO                           \ switch from FORTH to assembler
-\     RLAM #4,0(PSP)              \ -- %HHHH0000 %0000LLLL
-\     ADD.B @PSP+,TOS             \ -- %HHHHLLLL
+\     RLAM #4,0(PSP)              \ -- %HHHH_0000 %0000_LLLL
+\     ADD.B @PSP+,TOS             \ -- %HHHH_LLLL
 \     MOV @RSP+,IP                \ restore IP saved by COLON
 \     MOV @IP+,PC                 \
 \ ENDCODE
@@ -14973,14 +22716,14 @@ MOV @PSP+,TOS                   \     -- TOS
 RET
 ENDASM
 
-\ ------------------------------\
+\ ******************************\
 ASM BACKGROUND                  \
-\ ------------------------------\
+\ ******************************\
 BEGIN
 \     ...                         \ insert here your background task
 \     ...                         \
 \     ...                         \
-    CALL &RXON                  \ comment this line to disable TERMINAL
+    CALL &RXON                  \ comment this line to disable TERMINAL_INPUT
     BIS &LPM_MODE,SR            \
 \ ******************************\
 \ here start all interrupts     \
@@ -14989,23 +22732,43 @@ BEGIN
 \ ******************************\
 AGAIN                           \
 ENDASM                          \
+\ ******************************\
+
+\ ------------------------------\
+ASM SYS_OUT                    \ system OUT init, replaces WARM at the request of STOP.
+\ ------------------------------\
+\     ...                         \ init specific I/O sys as you want
+\     ...                         \ before executing default WARM
+    MOV #WARM,X                 \ ['] WARM 
+    ADD #4,X                    \ >BODY
+    MOV X,PC                    \ EXECUTE    (which activates IO and TERMINAL)
+ENDASM
+\ ------------------------------\
 
 \ ------------------------------\
 CODE STOP                       \ stops multitasking, must to be used before downloading app
 \ ------------------------------\
-\ restore default action of primary DEFERred word SLEEP (assembly version)
 BW1 MOV #SLEEP,X                \ the ASM word SLEEP is only visible in mode assembler. 
     ADD #4,X                    \ X = BODY of SLEEP, X-2 = PFA of SLEEP
-    MOV X,-2(X)                 \ restore the default background
+    MOV X,-2(X)                 \ restore the default background: SLEEP
+    MOV #WARM,X
+    MOV #SYS_OUT,2(X)           \ default WARM is replaced by JMJ_BOX SYS_OUT (ended by default WARM)
+    BIC.B #RC5,&IR_IE           \ clear RC5_Int
+    BIC.B #RC5,&IR_IFG          \ clear RC5_Int flag
+    MOV #0,&LCD_TIM_CTL         \ stop LCD_TIMER
+    MOV #0,&WDT_TIM_CTL         \ stop WDT_TIMER
+    MOV #0,&WDT_TIM_CCTL0       \ clear CCIFG0 disable CCIE0
+    CALL #INIT_VECT             \ reset all vectors other than TERMINAL_int
 COLON                           \ restore default action of primary DEFERred word WARM (FORTH version)
-['] WARM >BODY IS WARM          \ restore the default WARM
 ECHO                            \
-." RC5toLCD is removed. type START to restart"
-COLD                            \ performs reset to reset all interrupt vectors.    
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM                           \ performs reset to reset all interrupt vectors.    
 ;
+\ ------------------------------\
 
 \ ------------------------------\
-CODE APP_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
+CODE SYS_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
 \ ------------------------------\
 \ LCD_TIM_CTL =  %0000 0010 1001 0100\$3C0
 \                    - -             \CNTL Counter lentgh \ 00 = 16 bits
@@ -15035,7 +22798,7 @@ CODE APP_INIT                   \ this routine completes the init of system, i.e
 \ ------------------------------\
 \ set LCD_TIM_ to make 50kHz PWM \ for LCD_Vo; works without interrupt
 \ ------------------------------\
-MOV #%1011010100,&LCD_TIM_CTL   \ SMCLK/8, up mode, clear timer, no int
+MOV #%10_1101_0100,&LCD_TIM_CTL \ SMCLK/8, up mode, clear timer, no int
 \    MOV #0,&LCD_TIM_EX0        \ predivide by 1 in LCD_TIM_EX0 register (8 MHZ)
 FREQ_KHZ @ 16000 = [IF]         \ if 16 MHz
     MOV #1,&LCD_TIM_EX0         \ predivide by 2 in LCD_TIM_EX0 register (16 MHZ)
@@ -15047,7 +22810,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \ ------------------------------\
 \ set LCD_TIM_.2 to generate PWM for LCD_Vo
 \ ------------------------------\
-    MOV #%01100000,&LCD_TIM_CCTLn \ output mode = set/reset \ clear CCIFG
+MOV #%0110_0000,&LCD_TIM_CCTLn  \ output mode = set/reset \ clear CCIFG
     MOV #10,&LCD_TIM_CCRn       \ contrast adjust : 10/20 ==> LCD_Vo = -0V6|+3V6 (Vcc=3V6)
 \    MOV #12,&LCD_TIM_CCRn        \ contrast adjust : 12/20 ==> LCD_Vo = -1V4|+3V3 (Vcc=3V3)
 \ ------------------------------\
@@ -15076,7 +22839,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \                         -     \ TAIE
 \                          -    \ TAIFG
 \ ------------------------------\
-    MOV #%0100010100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
+MOV #%01_0001_0100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
 \ ------------------------------\
 \                        000    \ TAxEX0
 \                        ---    \ TAIDEX    pre divisor
@@ -15142,23 +22905,213 @@ COLON                           \
     ['] CR >BODY IS CR          \ CR executes its default value
     ['] EMIT >BODY IS EMIT      \ EMIT executes its defaulte value
     ." RC5toLCD is running. Type STOP to quit" \ display message on FastForth Terminal
-    ABORT                       \ ...and end APP_INIT with ABORT, no return.
+    PWR_STATE ABORT             \ init DP and continues with ABORT
 ;                               \
+\ ------------------------------\
 
 \ ------------------------------\
 CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
 \ ------------------------------\
-MOV #SLEEP,X                    \ replace default background process
+MOV #SLEEP,X                    \ replace default background process SLEEP
 MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
 MOV #WARM,X                     \ replace default WARM
-MOV #APP_INIT,2(X)              \ by RC5toLCD APP_INIT
-MOV X,PC                        \ then execute it
+MOV #SYS_INIT,2(X)              \ by RC5toLCD SYS_INIT
+MOV X,PC                        \ then execute new WARM
 ENDCODE 
+\ ------------------------------\
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
 
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
 
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] CONSTANT [IF]
+\ https://forth-standard.org/standard/core/CONSTANT
+\ CONSTANT <name>     n --                      define a Forth CONSTANT 
+: CONSTANT 
+CREATE
+HI2LO
+MOV TOS,-2(W)           \   PFA = n
+MOV @PSP+,TOS
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] STATE [IF]
+\ https://forth-standard.org/standard/core/STATE
+\ STATE   -- a-addr       holds compiler state
+STATEADR CONSTANT STATE
+[THEN]
+
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+    MOV @IP+,PC \ 4
+THEN
+XOR #-1,TOS     \ 1 flag Z = 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE     \ immediate
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+\ https://forth-standard.org/standard/core/DEFER
+\ DEFER "<spaces>name"   --
+\ Skip leading space delimiters. Parse name delimited by a space.
+\ Create a definition for name with the execution semantics defined below.
+
+\ name Execution:   --
+\ Execute the xt that name is set to execute, i.e. NEXT (nothing),
+\ until the phrase ' word IS name is executed, causing a new value of xt to be assigned to name.
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(W)        \ CFA = MOV @PC+,PC = BR MOV @IP+,PC
+MOV #NEXT_ADR,-2(W)     \ PFA = address of MOV @IP+,PC to do nothing.
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEFER! [IF]
+\ https://forth-standard.org/standard/core/DEFERStore
+\ Set the word xt1 to execute xt2. An ambiguous condition exists if xt1 is not for a word defined by DEFER.
+CODE DEFER!             \ xt2 xt1 --
+MOV @PSP+,2(TOS)        \ -- xt1=CFA_DEFER          xt2 --> [CFA_DEFER+2]
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] IS [IF]
+\ https://forth-standard.org/standard/core/IS
+\ IS <name>        xt --
+\ used as is :
+\ DEFER DISPLAY                         create a "do nothing" definition (2 CELLS)
+\ inline command : ' U. IS DISPLAY      U. becomes the runtime of the word DISPLAY
+\ or in a definition : ... ['] U. IS DISPLAY ...
+\ KEY, EMIT, CR, ACCEPT and WARM are examples of DEFERred words
+\
+\ as IS replaces the PFA value of any word, it's a TO alias for VARIABLE and CONSTANT words...
+: IS
+STATE @
+IF  POSTPONE ['] POSTPONE DEFER! 
+ELSE ' DEFER! 
+THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+\ CODE 20uS           \ n --      8MHz version
+\ BEGIN               \ 4 + 16 ~ loop
+\     MOV #39,rDOCON   \ 39
+\     BEGIN           \ 4 ~ loop
+\         NOP
+\         SUB #1,rDOCON
+\     0=  UNTIL
+\     SUB #1,TOS      \ 1
+\ 0= UNTIL
+\ MOV #XDOCON,rDOCON  \ 2
+\ MOV @PSP+,TOS
+\ MOV @RSP+,IP        \
+\ ENDCODE
+
 CODE 20_US                      \ n --      n * 20 us
 BEGIN                           \ here we presume that LCD_TIM_IFG = 1...
     BEGIN
@@ -15172,8 +23125,8 @@ MOV @IP+,PC                     \ 4
 ENDCODE
 
 CODE TOP_LCD                    \ LCD Sample
-\                               \ if write : %xxxxWWWW --
-\                               \ if read  : -- %0000RRRR
+\                               \ if write : %xxxx_WWWW --
+\                               \ if read  : -- %0000_RRRR
     BIS.B #LCD_EN,&LCD_CMD_OUT  \ lcd_en 0-->1
     BIT.B #LCD_RW,&LCD_CMD_IN   \ lcd_rw test
 0= IF                           \ write LCD bits pattern
@@ -15194,8 +23147,8 @@ ENDCODE
 CODE LCD_WRC                    \ char --         Write Char
     BIS.B #LCD_RS,&LCD_CMD_OUT  \ lcd_rs=1
 BW1 SUB #2,PSP                  \
-    MOV TOS,0(PSP)              \ -- %xxxxLLLL %HHHHLLLL
-    RRUM #4,TOS                 \ -- %xxxxLLLL %xxxxHHHH
+    MOV TOS,0(PSP)              \ -- %xxxx_LLLL %HHHH_LLLL
+    RRUM #4,TOS                 \ -- %xxxx_LLLL %xxxx_HHHH
     BIC.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=0
     BIS.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as output
 COLON                           \ high level word starts here 
@@ -15235,11 +23188,11 @@ ENDCODE
 \ BW1 BIC.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as intput
 \     BIS.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=1
 \ COLON                           \ starts a FORTH word
-\     TOP_LCD 2 20_us             \ -- %0000HHHH
-\     TOP_LCD 2 20_us             \ -- %0000HHHH %0000LLLL
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH %0000_LLLL
 \ HI2LO                           \ switch from FORTH to assembler
-\     RLAM #4,0(PSP)              \ -- %HHHH0000 %0000LLLL
-\     ADD.B @PSP+,TOS             \ -- %HHHHLLLL
+\     RLAM #4,0(PSP)              \ -- %HHHH_0000 %0000_LLLL
+\     ADD.B @PSP+,TOS             \ -- %HHHH_LLLL
 \     MOV @RSP+,IP                \ restore IP saved by COLON
 \     MOV @IP+,PC                 \
 \ ENDCODE
@@ -15380,14 +23333,14 @@ MOV @PSP+,TOS                   \     -- TOS
 RET
 ENDASM
 
-\ ------------------------------\
+\ ******************************\
 ASM BACKGROUND                  \
-\ ------------------------------\
+\ ******************************\
 BEGIN
 \     ...                         \ insert here your background task
 \     ...                         \
 \     ...                         \
-    CALL &RXON                  \ comment this line to disable TERMINAL
+    CALL &RXON                  \ comment this line to disable TERMINAL_INPUT
     BIS &LPM_MODE,SR            \
 \ ******************************\
 \ here start all interrupts     \
@@ -15396,23 +23349,43 @@ BEGIN
 \ ******************************\
 AGAIN                           \
 ENDASM                          \
+\ ******************************\
+
+\ ------------------------------\
+ASM SYS_OUT                    \ system OUT init, replaces WARM at the request of STOP.
+\ ------------------------------\
+\     ...                         \ init specific I/O sys as you want
+\     ...                         \ before executing default WARM
+    MOV #WARM,X                 \ ['] WARM 
+    ADD #4,X                    \ >BODY
+    MOV X,PC                    \ EXECUTE    (which activates IO and TERMINAL)
+ENDASM
+\ ------------------------------\
 
 \ ------------------------------\
 CODE STOP                       \ stops multitasking, must to be used before downloading app
 \ ------------------------------\
-\ restore default action of primary DEFERred word SLEEP (assembly version)
 BW1 MOV #SLEEP,X                \ the ASM word SLEEP is only visible in mode assembler. 
     ADD #4,X                    \ X = BODY of SLEEP, X-2 = PFA of SLEEP
-    MOV X,-2(X)                 \ restore the default background
+    MOV X,-2(X)                 \ restore the default background: SLEEP
+    MOV #WARM,X
+    MOV #SYS_OUT,2(X)           \ default WARM is replaced by JMJ_BOX SYS_OUT (ended by default WARM)
+    BIC.B #RC5,&IR_IE           \ clear RC5_Int
+    BIC.B #RC5,&IR_IFG          \ clear RC5_Int flag
+    MOV #0,&LCD_TIM_CTL         \ stop LCD_TIMER
+    MOV #0,&WDT_TIM_CTL         \ stop WDT_TIMER
+    MOV #0,&WDT_TIM_CCTL0       \ clear CCIFG0 disable CCIE0
+    CALL #INIT_VECT             \ reset all vectors other than TERMINAL_int
 COLON                           \ restore default action of primary DEFERred word WARM (FORTH version)
-['] WARM >BODY IS WARM          \ restore the default WARM
 ECHO                            \
-." RC5toLCD is removed. type START to restart"
-COLD                            \ performs reset to reset all interrupt vectors.    
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM                           \ performs reset to reset all interrupt vectors.    
 ;
+\ ------------------------------\
 
 \ ------------------------------\
-CODE APP_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
+CODE SYS_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
 \ ------------------------------\
 \ LCD_TIM_CTL =  %0000 0010 1001 0100\$3C0
 \                    - -             \CNTL Counter lentgh \ 00 = 16 bits
@@ -15442,7 +23415,7 @@ CODE APP_INIT                   \ this routine completes the init of system, i.e
 \ ------------------------------\
 \ set LCD_TIM_ to make 50kHz PWM \ for LCD_Vo; works without interrupt
 \ ------------------------------\
-MOV #%1011010100,&LCD_TIM_CTL   \ SMCLK/8, up mode, clear timer, no int
+MOV #%10_1101_0100,&LCD_TIM_CTL \ SMCLK/8, up mode, clear timer, no int
 \    MOV #0,&LCD_TIM_EX0        \ predivide by 1 in LCD_TIM_EX0 register (8 MHZ)
 FREQ_KHZ @ 16000 = [IF]         \ if 16 MHz
     MOV #1,&LCD_TIM_EX0         \ predivide by 2 in LCD_TIM_EX0 register (16 MHZ)
@@ -15454,7 +23427,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \ ------------------------------\
 \ set LCD_TIM_.2 to generate PWM for LCD_Vo
 \ ------------------------------\
-    MOV #%01100000,&LCD_TIM_CCTLn \ output mode = set/reset \ clear CCIFG
+MOV #%0110_0000,&LCD_TIM_CCTLn  \ output mode = set/reset \ clear CCIFG
     MOV #10,&LCD_TIM_CCRn       \ contrast adjust : 10/20 ==> LCD_Vo = -0V6|+3V6 (Vcc=3V6)
 \    MOV #12,&LCD_TIM_CCRn        \ contrast adjust : 12/20 ==> LCD_Vo = -1V4|+3V3 (Vcc=3V3)
 \ ------------------------------\
@@ -15483,7 +23456,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \                         -     \ TAIE
 \                          -    \ TAIFG
 \ ------------------------------\
-    MOV #%0100010100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
+MOV #%01_0001_0100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
 \ ------------------------------\
 \                        000    \ TAxEX0
 \                        ---    \ TAIDEX    pre divisor
@@ -15549,23 +23522,213 @@ COLON                           \
     ['] CR >BODY IS CR          \ CR executes its default value
     ['] EMIT >BODY IS EMIT      \ EMIT executes its defaulte value
     ." RC5toLCD is running. Type STOP to quit" \ display message on FastForth Terminal
-    ABORT                       \ ...and end APP_INIT with ABORT, no return.
+    PWR_STATE ABORT             \ init DP and continues with ABORT
 ;                               \
+\ ------------------------------\
 
 \ ------------------------------\
 CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
 \ ------------------------------\
-MOV #SLEEP,X                    \ replace default background process
+MOV #SLEEP,X                    \ replace default background process SLEEP
 MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
 MOV #WARM,X                     \ replace default WARM
-MOV #APP_INIT,2(X)              \ by RC5toLCD APP_INIT
-MOV X,PC                        \ then execute it
+MOV #SYS_INIT,2(X)              \ by RC5toLCD SYS_INIT
+MOV X,PC                        \ then execute new WARM
 ENDCODE 
+\ ------------------------------\
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
 
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
 
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] CONSTANT [IF]
+\ https://forth-standard.org/standard/core/CONSTANT
+\ CONSTANT <name>     n --                      define a Forth CONSTANT 
+: CONSTANT 
+CREATE
+HI2LO
+MOV TOS,-2(W)           \   PFA = n
+MOV @PSP+,TOS
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] STATE [IF]
+\ https://forth-standard.org/standard/core/STATE
+\ STATE   -- a-addr       holds compiler state
+STATEADR CONSTANT STATE
+[THEN]
+
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+    MOV @IP+,PC \ 4
+THEN
+XOR #-1,TOS     \ 1 flag Z = 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE     \ immediate
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+\ https://forth-standard.org/standard/core/DEFER
+\ DEFER "<spaces>name"   --
+\ Skip leading space delimiters. Parse name delimited by a space.
+\ Create a definition for name with the execution semantics defined below.
+
+\ name Execution:   --
+\ Execute the xt that name is set to execute, i.e. NEXT (nothing),
+\ until the phrase ' word IS name is executed, causing a new value of xt to be assigned to name.
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(W)        \ CFA = MOV @PC+,PC = BR MOV @IP+,PC
+MOV #NEXT_ADR,-2(W)     \ PFA = address of MOV @IP+,PC to do nothing.
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEFER! [IF]
+\ https://forth-standard.org/standard/core/DEFERStore
+\ Set the word xt1 to execute xt2. An ambiguous condition exists if xt1 is not for a word defined by DEFER.
+CODE DEFER!             \ xt2 xt1 --
+MOV @PSP+,2(TOS)        \ -- xt1=CFA_DEFER          xt2 --> [CFA_DEFER+2]
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] IS [IF]
+\ https://forth-standard.org/standard/core/IS
+\ IS <name>        xt --
+\ used as is :
+\ DEFER DISPLAY                         create a "do nothing" definition (2 CELLS)
+\ inline command : ' U. IS DISPLAY      U. becomes the runtime of the word DISPLAY
+\ or in a definition : ... ['] U. IS DISPLAY ...
+\ KEY, EMIT, CR, ACCEPT and WARM are examples of DEFERred words
+\
+\ as IS replaces the PFA value of any word, it's a TO alias for VARIABLE and CONSTANT words...
+: IS
+STATE @
+IF  POSTPONE ['] POSTPONE DEFER! 
+ELSE ' DEFER! 
+THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+\ CODE 20uS           \ n --      8MHz version
+\ BEGIN               \ 4 + 16 ~ loop
+\     MOV #39,rDOCON   \ 39
+\     BEGIN           \ 4 ~ loop
+\         NOP
+\         SUB #1,rDOCON
+\     0=  UNTIL
+\     SUB #1,TOS      \ 1
+\ 0= UNTIL
+\ MOV #XDOCON,rDOCON  \ 2
+\ MOV @PSP+,TOS
+\ MOV @RSP+,IP        \
+\ ENDCODE
+
 CODE 20_US                      \ n --      n * 20 us
 BEGIN                           \ here we presume that LCD_TIM_IFG = 1...
     BEGIN
@@ -15579,8 +23742,8 @@ MOV @IP+,PC                     \ 4
 ENDCODE
 
 CODE TOP_LCD                    \ LCD Sample
-\                               \ if write : %xxxxWWWW --
-\                               \ if read  : -- %0000RRRR
+\                               \ if write : %xxxx_WWWW --
+\                               \ if read  : -- %0000_RRRR
     BIS.B #LCD_EN,&LCD_CMD_OUT  \ lcd_en 0-->1
     BIT.B #LCD_RW,&LCD_CMD_IN   \ lcd_rw test
 0= IF                           \ write LCD bits pattern
@@ -15601,8 +23764,8 @@ ENDCODE
 CODE LCD_WRC                    \ char --         Write Char
     BIS.B #LCD_RS,&LCD_CMD_OUT  \ lcd_rs=1
 BW1 SUB #2,PSP                  \
-    MOV TOS,0(PSP)              \ -- %xxxxLLLL %HHHHLLLL
-    RRUM #4,TOS                 \ -- %xxxxLLLL %xxxxHHHH
+    MOV TOS,0(PSP)              \ -- %xxxx_LLLL %HHHH_LLLL
+    RRUM #4,TOS                 \ -- %xxxx_LLLL %xxxx_HHHH
     BIC.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=0
     BIS.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as output
 COLON                           \ high level word starts here 
@@ -15642,11 +23805,11 @@ ENDCODE
 \ BW1 BIC.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as intput
 \     BIS.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=1
 \ COLON                           \ starts a FORTH word
-\     TOP_LCD 2 20_us             \ -- %0000HHHH
-\     TOP_LCD 2 20_us             \ -- %0000HHHH %0000LLLL
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH %0000_LLLL
 \ HI2LO                           \ switch from FORTH to assembler
-\     RLAM #4,0(PSP)              \ -- %HHHH0000 %0000LLLL
-\     ADD.B @PSP+,TOS             \ -- %HHHHLLLL
+\     RLAM #4,0(PSP)              \ -- %HHHH_0000 %0000_LLLL
+\     ADD.B @PSP+,TOS             \ -- %HHHH_LLLL
 \     MOV @RSP+,IP                \ restore IP saved by COLON
 \     MOV @IP+,PC                 \
 \ ENDCODE
@@ -15787,14 +23950,14 @@ MOV @PSP+,TOS                   \     -- TOS
 RET
 ENDASM
 
-\ ------------------------------\
+\ ******************************\
 ASM BACKGROUND                  \
-\ ------------------------------\
+\ ******************************\
 BEGIN
 \     ...                         \ insert here your background task
 \     ...                         \
 \     ...                         \
-    CALL &RXON                  \ comment this line to disable TERMINAL
+    CALL &RXON                  \ comment this line to disable TERMINAL_INPUT
     BIS &LPM_MODE,SR            \
 \ ******************************\
 \ here start all interrupts     \
@@ -15803,23 +23966,43 @@ BEGIN
 \ ******************************\
 AGAIN                           \
 ENDASM                          \
+\ ******************************\
+
+\ ------------------------------\
+ASM SYS_OUT                    \ system OUT init, replaces WARM at the request of STOP.
+\ ------------------------------\
+\     ...                         \ init specific I/O sys as you want
+\     ...                         \ before executing default WARM
+    MOV #WARM,X                 \ ['] WARM 
+    ADD #4,X                    \ >BODY
+    MOV X,PC                    \ EXECUTE    (which activates IO and TERMINAL)
+ENDASM
+\ ------------------------------\
 
 \ ------------------------------\
 CODE STOP                       \ stops multitasking, must to be used before downloading app
 \ ------------------------------\
-\ restore default action of primary DEFERred word SLEEP (assembly version)
 BW1 MOV #SLEEP,X                \ the ASM word SLEEP is only visible in mode assembler. 
     ADD #4,X                    \ X = BODY of SLEEP, X-2 = PFA of SLEEP
-    MOV X,-2(X)                 \ restore the default background
+    MOV X,-2(X)                 \ restore the default background: SLEEP
+    MOV #WARM,X
+    MOV #SYS_OUT,2(X)           \ default WARM is replaced by JMJ_BOX SYS_OUT (ended by default WARM)
+    BIC.B #RC5,&IR_IE           \ clear RC5_Int
+    BIC.B #RC5,&IR_IFG          \ clear RC5_Int flag
+    MOV #0,&LCD_TIM_CTL         \ stop LCD_TIMER
+    MOV #0,&WDT_TIM_CTL         \ stop WDT_TIMER
+    MOV #0,&WDT_TIM_CCTL0       \ clear CCIFG0 disable CCIE0
+    CALL #INIT_VECT             \ reset all vectors other than TERMINAL_int
 COLON                           \ restore default action of primary DEFERred word WARM (FORTH version)
-['] WARM >BODY IS WARM          \ restore the default WARM
 ECHO                            \
-." RC5toLCD is removed. type START to restart"
-COLD                            \ performs reset to reset all interrupt vectors.    
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM                           \ performs reset to reset all interrupt vectors.    
 ;
+\ ------------------------------\
 
 \ ------------------------------\
-CODE APP_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
+CODE SYS_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
 \ ------------------------------\
 \ LCD_TIM_CTL =  %0000 0010 1001 0100\$3C0
 \                    - -             \CNTL Counter lentgh \ 00 = 16 bits
@@ -15849,7 +24032,7 @@ CODE APP_INIT                   \ this routine completes the init of system, i.e
 \ ------------------------------\
 \ set LCD_TIM_ to make 50kHz PWM \ for LCD_Vo; works without interrupt
 \ ------------------------------\
-MOV #%1011010100,&LCD_TIM_CTL   \ SMCLK/8, up mode, clear timer, no int
+MOV #%10_1101_0100,&LCD_TIM_CTL \ SMCLK/8, up mode, clear timer, no int
 \    MOV #0,&LCD_TIM_EX0        \ predivide by 1 in LCD_TIM_EX0 register (8 MHZ)
 FREQ_KHZ @ 16000 = [IF]         \ if 16 MHz
     MOV #1,&LCD_TIM_EX0         \ predivide by 2 in LCD_TIM_EX0 register (16 MHZ)
@@ -15861,7 +24044,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \ ------------------------------\
 \ set LCD_TIM_.2 to generate PWM for LCD_Vo
 \ ------------------------------\
-    MOV #%01100000,&LCD_TIM_CCTLn \ output mode = set/reset \ clear CCIFG
+MOV #%0110_0000,&LCD_TIM_CCTLn  \ output mode = set/reset \ clear CCIFG
     MOV #10,&LCD_TIM_CCRn       \ contrast adjust : 10/20 ==> LCD_Vo = -0V6|+3V6 (Vcc=3V6)
 \    MOV #12,&LCD_TIM_CCRn        \ contrast adjust : 12/20 ==> LCD_Vo = -1V4|+3V3 (Vcc=3V3)
 \ ------------------------------\
@@ -15890,7 +24073,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \                         -     \ TAIE
 \                          -    \ TAIFG
 \ ------------------------------\
-    MOV #%0100010100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
+MOV #%01_0001_0100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
 \ ------------------------------\
 \                        000    \ TAxEX0
 \                        ---    \ TAIDEX    pre divisor
@@ -15956,23 +24139,213 @@ COLON                           \
     ['] CR >BODY IS CR          \ CR executes its default value
     ['] EMIT >BODY IS EMIT      \ EMIT executes its defaulte value
     ." RC5toLCD is running. Type STOP to quit" \ display message on FastForth Terminal
-    ABORT                       \ ...and end APP_INIT with ABORT, no return.
+    PWR_STATE ABORT             \ init DP and continues with ABORT
 ;                               \
+\ ------------------------------\
 
 \ ------------------------------\
 CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
 \ ------------------------------\
-MOV #SLEEP,X                    \ replace default background process
+MOV #SLEEP,X                    \ replace default background process SLEEP
 MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
 MOV #WARM,X                     \ replace default WARM
-MOV #APP_INIT,2(X)              \ by RC5toLCD APP_INIT
-MOV X,PC                        \ then execute it
+MOV #SYS_INIT,2(X)              \ by RC5toLCD SYS_INIT
+MOV X,PC                        \ then execute new WARM
 ENDCODE 
+\ ------------------------------\
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
 
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
 
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] CONSTANT [IF]
+\ https://forth-standard.org/standard/core/CONSTANT
+\ CONSTANT <name>     n --                      define a Forth CONSTANT 
+: CONSTANT 
+CREATE
+HI2LO
+MOV TOS,-2(W)           \   PFA = n
+MOV @PSP+,TOS
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] STATE [IF]
+\ https://forth-standard.org/standard/core/STATE
+\ STATE   -- a-addr       holds compiler state
+STATEADR CONSTANT STATE
+[THEN]
+
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+    MOV @IP+,PC \ 4
+THEN
+XOR #-1,TOS     \ 1 flag Z = 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE     \ immediate
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+\ https://forth-standard.org/standard/core/DEFER
+\ DEFER "<spaces>name"   --
+\ Skip leading space delimiters. Parse name delimited by a space.
+\ Create a definition for name with the execution semantics defined below.
+
+\ name Execution:   --
+\ Execute the xt that name is set to execute, i.e. NEXT (nothing),
+\ until the phrase ' word IS name is executed, causing a new value of xt to be assigned to name.
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(W)        \ CFA = MOV @PC+,PC = BR MOV @IP+,PC
+MOV #NEXT_ADR,-2(W)     \ PFA = address of MOV @IP+,PC to do nothing.
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEFER! [IF]
+\ https://forth-standard.org/standard/core/DEFERStore
+\ Set the word xt1 to execute xt2. An ambiguous condition exists if xt1 is not for a word defined by DEFER.
+CODE DEFER!             \ xt2 xt1 --
+MOV @PSP+,2(TOS)        \ -- xt1=CFA_DEFER          xt2 --> [CFA_DEFER+2]
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] IS [IF]
+\ https://forth-standard.org/standard/core/IS
+\ IS <name>        xt --
+\ used as is :
+\ DEFER DISPLAY                         create a "do nothing" definition (2 CELLS)
+\ inline command : ' U. IS DISPLAY      U. becomes the runtime of the word DISPLAY
+\ or in a definition : ... ['] U. IS DISPLAY ...
+\ KEY, EMIT, CR, ACCEPT and WARM are examples of DEFERred words
+\
+\ as IS replaces the PFA value of any word, it's a TO alias for VARIABLE and CONSTANT words...
+: IS
+STATE @
+IF  POSTPONE ['] POSTPONE DEFER! 
+ELSE ' DEFER! 
+THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+\ CODE 20uS           \ n --      8MHz version
+\ BEGIN               \ 4 + 16 ~ loop
+\     MOV #39,rDOCON   \ 39
+\     BEGIN           \ 4 ~ loop
+\         NOP
+\         SUB #1,rDOCON
+\     0=  UNTIL
+\     SUB #1,TOS      \ 1
+\ 0= UNTIL
+\ MOV #XDOCON,rDOCON  \ 2
+\ MOV @PSP+,TOS
+\ MOV @RSP+,IP        \
+\ ENDCODE
+
 CODE 20_US                      \ n --      n * 20 us
 BEGIN                           \ here we presume that LCD_TIM_IFG = 1...
     BEGIN
@@ -15986,8 +24359,8 @@ MOV @IP+,PC                     \ 4
 ENDCODE
 
 CODE TOP_LCD                    \ LCD Sample
-\                               \ if write : %xxxxWWWW --
-\                               \ if read  : -- %0000RRRR
+\                               \ if write : %xxxx_WWWW --
+\                               \ if read  : -- %0000_RRRR
     BIS.B #LCD_EN,&LCD_CMD_OUT  \ lcd_en 0-->1
     BIT.B #LCD_RW,&LCD_CMD_IN   \ lcd_rw test
 0= IF                           \ write LCD bits pattern
@@ -16008,8 +24381,8 @@ ENDCODE
 CODE LCD_WRC                    \ char --         Write Char
     BIS.B #LCD_RS,&LCD_CMD_OUT  \ lcd_rs=1
 BW1 SUB #2,PSP                  \
-    MOV TOS,0(PSP)              \ -- %xxxxLLLL %HHHHLLLL
-    RRUM #4,TOS                 \ -- %xxxxLLLL %xxxxHHHH
+    MOV TOS,0(PSP)              \ -- %xxxx_LLLL %HHHH_LLLL
+    RRUM #4,TOS                 \ -- %xxxx_LLLL %xxxx_HHHH
     BIC.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=0
     BIS.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as output
 COLON                           \ high level word starts here 
@@ -16049,11 +24422,11 @@ ENDCODE
 \ BW1 BIC.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as intput
 \     BIS.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=1
 \ COLON                           \ starts a FORTH word
-\     TOP_LCD 2 20_us             \ -- %0000HHHH
-\     TOP_LCD 2 20_us             \ -- %0000HHHH %0000LLLL
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH %0000_LLLL
 \ HI2LO                           \ switch from FORTH to assembler
-\     RLAM #4,0(PSP)              \ -- %HHHH0000 %0000LLLL
-\     ADD.B @PSP+,TOS             \ -- %HHHHLLLL
+\     RLAM #4,0(PSP)              \ -- %HHHH_0000 %0000_LLLL
+\     ADD.B @PSP+,TOS             \ -- %HHHH_LLLL
 \     MOV @RSP+,IP                \ restore IP saved by COLON
 \     MOV @IP+,PC                 \
 \ ENDCODE
@@ -16194,14 +24567,14 @@ MOV @PSP+,TOS                   \     -- TOS
 RET
 ENDASM
 
-\ ------------------------------\
+\ ******************************\
 ASM BACKGROUND                  \
-\ ------------------------------\
+\ ******************************\
 BEGIN
 \     ...                         \ insert here your background task
 \     ...                         \
 \     ...                         \
-    CALL &RXON                  \ comment this line to disable TERMINAL
+    CALL &RXON                  \ comment this line to disable TERMINAL_INPUT
     BIS &LPM_MODE,SR            \
 \ ******************************\
 \ here start all interrupts     \
@@ -16210,23 +24583,43 @@ BEGIN
 \ ******************************\
 AGAIN                           \
 ENDASM                          \
+\ ******************************\
+
+\ ------------------------------\
+ASM SYS_OUT                    \ system OUT init, replaces WARM at the request of STOP.
+\ ------------------------------\
+\     ...                         \ init specific I/O sys as you want
+\     ...                         \ before executing default WARM
+    MOV #WARM,X                 \ ['] WARM 
+    ADD #4,X                    \ >BODY
+    MOV X,PC                    \ EXECUTE    (which activates IO and TERMINAL)
+ENDASM
+\ ------------------------------\
 
 \ ------------------------------\
 CODE STOP                       \ stops multitasking, must to be used before downloading app
 \ ------------------------------\
-\ restore default action of primary DEFERred word SLEEP (assembly version)
 BW1 MOV #SLEEP,X                \ the ASM word SLEEP is only visible in mode assembler. 
     ADD #4,X                    \ X = BODY of SLEEP, X-2 = PFA of SLEEP
-    MOV X,-2(X)                 \ restore the default background
+    MOV X,-2(X)                 \ restore the default background: SLEEP
+    MOV #WARM,X
+    MOV #SYS_OUT,2(X)           \ default WARM is replaced by JMJ_BOX SYS_OUT (ended by default WARM)
+    BIC.B #RC5,&IR_IE           \ clear RC5_Int
+    BIC.B #RC5,&IR_IFG          \ clear RC5_Int flag
+    MOV #0,&LCD_TIM_CTL         \ stop LCD_TIMER
+    MOV #0,&WDT_TIM_CTL         \ stop WDT_TIMER
+    MOV #0,&WDT_TIM_CCTL0       \ clear CCIFG0 disable CCIE0
+    CALL #INIT_VECT             \ reset all vectors other than TERMINAL_int
 COLON                           \ restore default action of primary DEFERred word WARM (FORTH version)
-['] WARM >BODY IS WARM          \ restore the default WARM
 ECHO                            \
-." RC5toLCD is removed. type START to restart"
-COLD                            \ performs reset to reset all interrupt vectors.    
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM                           \ performs reset to reset all interrupt vectors.    
 ;
+\ ------------------------------\
 
 \ ------------------------------\
-CODE APP_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
+CODE SYS_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
 \ ------------------------------\
 \ LCD_TIM_CTL =  %0000 0010 1001 0100\$3C0
 \                    - -             \CNTL Counter lentgh \ 00 = 16 bits
@@ -16256,7 +24649,7 @@ CODE APP_INIT                   \ this routine completes the init of system, i.e
 \ ------------------------------\
 \ set LCD_TIM_ to make 50kHz PWM \ for LCD_Vo; works without interrupt
 \ ------------------------------\
-MOV #%1011010100,&LCD_TIM_CTL   \ SMCLK/8, up mode, clear timer, no int
+MOV #%10_1101_0100,&LCD_TIM_CTL \ SMCLK/8, up mode, clear timer, no int
 \    MOV #0,&LCD_TIM_EX0        \ predivide by 1 in LCD_TIM_EX0 register (8 MHZ)
 FREQ_KHZ @ 16000 = [IF]         \ if 16 MHz
     MOV #1,&LCD_TIM_EX0         \ predivide by 2 in LCD_TIM_EX0 register (16 MHZ)
@@ -16268,7 +24661,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \ ------------------------------\
 \ set LCD_TIM_.2 to generate PWM for LCD_Vo
 \ ------------------------------\
-    MOV #%01100000,&LCD_TIM_CCTLn \ output mode = set/reset \ clear CCIFG
+MOV #%0110_0000,&LCD_TIM_CCTLn  \ output mode = set/reset \ clear CCIFG
     MOV #10,&LCD_TIM_CCRn       \ contrast adjust : 10/20 ==> LCD_Vo = -0V6|+3V6 (Vcc=3V6)
 \    MOV #12,&LCD_TIM_CCRn        \ contrast adjust : 12/20 ==> LCD_Vo = -1V4|+3V3 (Vcc=3V3)
 \ ------------------------------\
@@ -16297,7 +24690,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \                         -     \ TAIE
 \                          -    \ TAIFG
 \ ------------------------------\
-    MOV #%0100010100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
+MOV #%01_0001_0100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
 \ ------------------------------\
 \                        000    \ TAxEX0
 \                        ---    \ TAIDEX    pre divisor
@@ -16363,23 +24756,213 @@ COLON                           \
     ['] CR >BODY IS CR          \ CR executes its default value
     ['] EMIT >BODY IS EMIT      \ EMIT executes its defaulte value
     ." RC5toLCD is running. Type STOP to quit" \ display message on FastForth Terminal
-    ABORT                       \ ...and end APP_INIT with ABORT, no return.
+    PWR_STATE ABORT             \ init DP and continues with ABORT
 ;                               \
+\ ------------------------------\
 
 \ ------------------------------\
 CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
 \ ------------------------------\
-MOV #SLEEP,X                    \ replace default background process
+MOV #SLEEP,X                    \ replace default background process SLEEP
 MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
 MOV #WARM,X                     \ replace default WARM
-MOV #APP_INIT,2(X)              \ by RC5toLCD APP_INIT
-MOV X,PC                        \ then execute it
+MOV #SYS_INIT,2(X)              \ by RC5toLCD SYS_INIT
+MOV X,PC                        \ then execute new WARM
 ENDCODE 
+\ ------------------------------\
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
 
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
 
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] CONSTANT [IF]
+\ https://forth-standard.org/standard/core/CONSTANT
+\ CONSTANT <name>     n --                      define a Forth CONSTANT 
+: CONSTANT 
+CREATE
+HI2LO
+MOV TOS,-2(W)           \   PFA = n
+MOV @PSP+,TOS
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] STATE [IF]
+\ https://forth-standard.org/standard/core/STATE
+\ STATE   -- a-addr       holds compiler state
+STATEADR CONSTANT STATE
+[THEN]
+
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+    MOV @IP+,PC \ 4
+THEN
+XOR #-1,TOS     \ 1 flag Z = 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE     \ immediate
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+\ https://forth-standard.org/standard/core/DEFER
+\ DEFER "<spaces>name"   --
+\ Skip leading space delimiters. Parse name delimited by a space.
+\ Create a definition for name with the execution semantics defined below.
+
+\ name Execution:   --
+\ Execute the xt that name is set to execute, i.e. NEXT (nothing),
+\ until the phrase ' word IS name is executed, causing a new value of xt to be assigned to name.
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(W)        \ CFA = MOV @PC+,PC = BR MOV @IP+,PC
+MOV #NEXT_ADR,-2(W)     \ PFA = address of MOV @IP+,PC to do nothing.
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEFER! [IF]
+\ https://forth-standard.org/standard/core/DEFERStore
+\ Set the word xt1 to execute xt2. An ambiguous condition exists if xt1 is not for a word defined by DEFER.
+CODE DEFER!             \ xt2 xt1 --
+MOV @PSP+,2(TOS)        \ -- xt1=CFA_DEFER          xt2 --> [CFA_DEFER+2]
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] IS [IF]
+\ https://forth-standard.org/standard/core/IS
+\ IS <name>        xt --
+\ used as is :
+\ DEFER DISPLAY                         create a "do nothing" definition (2 CELLS)
+\ inline command : ' U. IS DISPLAY      U. becomes the runtime of the word DISPLAY
+\ or in a definition : ... ['] U. IS DISPLAY ...
+\ KEY, EMIT, CR, ACCEPT and WARM are examples of DEFERred words
+\
+\ as IS replaces the PFA value of any word, it's a TO alias for VARIABLE and CONSTANT words...
+: IS
+STATE @
+IF  POSTPONE ['] POSTPONE DEFER! 
+ELSE ' DEFER! 
+THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+\ CODE 20uS           \ n --      8MHz version
+\ BEGIN               \ 4 + 16 ~ loop
+\     MOV #39,rDOCON   \ 39
+\     BEGIN           \ 4 ~ loop
+\         NOP
+\         SUB #1,rDOCON
+\     0=  UNTIL
+\     SUB #1,TOS      \ 1
+\ 0= UNTIL
+\ MOV #XDOCON,rDOCON  \ 2
+\ MOV @PSP+,TOS
+\ MOV @RSP+,IP        \
+\ ENDCODE
+
 CODE 20_US                      \ n --      n * 20 us
 BEGIN                           \ here we presume that LCD_TIM_IFG = 1...
     BEGIN
@@ -16393,8 +24976,8 @@ MOV @IP+,PC                     \ 4
 ENDCODE
 
 CODE TOP_LCD                    \ LCD Sample
-\                               \ if write : %xxxxWWWW --
-\                               \ if read  : -- %0000RRRR
+\                               \ if write : %xxxx_WWWW --
+\                               \ if read  : -- %0000_RRRR
     BIS.B #LCD_EN,&LCD_CMD_OUT  \ lcd_en 0-->1
     BIT.B #LCD_RW,&LCD_CMD_IN   \ lcd_rw test
 0= IF                           \ write LCD bits pattern
@@ -16415,8 +24998,8 @@ ENDCODE
 CODE LCD_WRC                    \ char --         Write Char
     BIS.B #LCD_RS,&LCD_CMD_OUT  \ lcd_rs=1
 BW1 SUB #2,PSP                  \
-    MOV TOS,0(PSP)              \ -- %xxxxLLLL %HHHHLLLL
-    RRUM #4,TOS                 \ -- %xxxxLLLL %xxxxHHHH
+    MOV TOS,0(PSP)              \ -- %xxxx_LLLL %HHHH_LLLL
+    RRUM #4,TOS                 \ -- %xxxx_LLLL %xxxx_HHHH
     BIC.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=0
     BIS.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as output
 COLON                           \ high level word starts here 
@@ -16456,11 +25039,11 @@ ENDCODE
 \ BW1 BIC.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as intput
 \     BIS.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=1
 \ COLON                           \ starts a FORTH word
-\     TOP_LCD 2 20_us             \ -- %0000HHHH
-\     TOP_LCD 2 20_us             \ -- %0000HHHH %0000LLLL
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH %0000_LLLL
 \ HI2LO                           \ switch from FORTH to assembler
-\     RLAM #4,0(PSP)              \ -- %HHHH0000 %0000LLLL
-\     ADD.B @PSP+,TOS             \ -- %HHHHLLLL
+\     RLAM #4,0(PSP)              \ -- %HHHH_0000 %0000_LLLL
+\     ADD.B @PSP+,TOS             \ -- %HHHH_LLLL
 \     MOV @RSP+,IP                \ restore IP saved by COLON
 \     MOV @IP+,PC                 \
 \ ENDCODE
@@ -16601,14 +25184,14 @@ MOV @PSP+,TOS                   \     -- TOS
 RET
 ENDASM
 
-\ ------------------------------\
+\ ******************************\
 ASM BACKGROUND                  \
-\ ------------------------------\
+\ ******************************\
 BEGIN
 \     ...                         \ insert here your background task
 \     ...                         \
 \     ...                         \
-    CALL &RXON                  \ comment this line to disable TERMINAL
+    CALL &RXON                  \ comment this line to disable TERMINAL_INPUT
     BIS &LPM_MODE,SR            \
 \ ******************************\
 \ here start all interrupts     \
@@ -16617,23 +25200,43 @@ BEGIN
 \ ******************************\
 AGAIN                           \
 ENDASM                          \
+\ ******************************\
+
+\ ------------------------------\
+ASM SYS_OUT                    \ system OUT init, replaces WARM at the request of STOP.
+\ ------------------------------\
+\     ...                         \ init specific I/O sys as you want
+\     ...                         \ before executing default WARM
+    MOV #WARM,X                 \ ['] WARM 
+    ADD #4,X                    \ >BODY
+    MOV X,PC                    \ EXECUTE    (which activates IO and TERMINAL)
+ENDASM
+\ ------------------------------\
 
 \ ------------------------------\
 CODE STOP                       \ stops multitasking, must to be used before downloading app
 \ ------------------------------\
-\ restore default action of primary DEFERred word SLEEP (assembly version)
 BW1 MOV #SLEEP,X                \ the ASM word SLEEP is only visible in mode assembler. 
     ADD #4,X                    \ X = BODY of SLEEP, X-2 = PFA of SLEEP
-    MOV X,-2(X)                 \ restore the default background
+    MOV X,-2(X)                 \ restore the default background: SLEEP
+    MOV #WARM,X
+    MOV #SYS_OUT,2(X)           \ default WARM is replaced by JMJ_BOX SYS_OUT (ended by default WARM)
+    BIC.B #RC5,&IR_IE           \ clear RC5_Int
+    BIC.B #RC5,&IR_IFG          \ clear RC5_Int flag
+    MOV #0,&LCD_TIM_CTL         \ stop LCD_TIMER
+    MOV #0,&WDT_TIM_CTL         \ stop WDT_TIMER
+    MOV #0,&WDT_TIM_CCTL0       \ clear CCIFG0 disable CCIE0
+    CALL #INIT_VECT             \ reset all vectors other than TERMINAL_int
 COLON                           \ restore default action of primary DEFERred word WARM (FORTH version)
-['] WARM >BODY IS WARM          \ restore the default WARM
 ECHO                            \
-." RC5toLCD is removed. type START to restart"
-COLD                            \ performs reset to reset all interrupt vectors.    
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM                           \ performs reset to reset all interrupt vectors.    
 ;
+\ ------------------------------\
 
 \ ------------------------------\
-CODE APP_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
+CODE SYS_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
 \ ------------------------------\
 \ LCD_TIM_CTL =  %0000 0010 1001 0100\$3C0
 \                    - -             \CNTL Counter lentgh \ 00 = 16 bits
@@ -16663,7 +25266,7 @@ CODE APP_INIT                   \ this routine completes the init of system, i.e
 \ ------------------------------\
 \ set LCD_TIM_ to make 50kHz PWM \ for LCD_Vo; works without interrupt
 \ ------------------------------\
-MOV #%1011010100,&LCD_TIM_CTL   \ SMCLK/8, up mode, clear timer, no int
+MOV #%10_1101_0100,&LCD_TIM_CTL \ SMCLK/8, up mode, clear timer, no int
 \    MOV #0,&LCD_TIM_EX0        \ predivide by 1 in LCD_TIM_EX0 register (8 MHZ)
 FREQ_KHZ @ 16000 = [IF]         \ if 16 MHz
     MOV #1,&LCD_TIM_EX0         \ predivide by 2 in LCD_TIM_EX0 register (16 MHZ)
@@ -16675,7 +25278,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \ ------------------------------\
 \ set LCD_TIM_.2 to generate PWM for LCD_Vo
 \ ------------------------------\
-    MOV #%01100000,&LCD_TIM_CCTLn \ output mode = set/reset \ clear CCIFG
+MOV #%0110_0000,&LCD_TIM_CCTLn  \ output mode = set/reset \ clear CCIFG
     MOV #10,&LCD_TIM_CCRn       \ contrast adjust : 10/20 ==> LCD_Vo = -0V6|+3V6 (Vcc=3V6)
 \    MOV #12,&LCD_TIM_CCRn        \ contrast adjust : 12/20 ==> LCD_Vo = -1V4|+3V3 (Vcc=3V3)
 \ ------------------------------\
@@ -16704,7 +25307,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \                         -     \ TAIE
 \                          -    \ TAIFG
 \ ------------------------------\
-    MOV #%0100010100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
+MOV #%01_0001_0100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
 \ ------------------------------\
 \                        000    \ TAxEX0
 \                        ---    \ TAIDEX    pre divisor
@@ -16770,23 +25373,213 @@ COLON                           \
     ['] CR >BODY IS CR          \ CR executes its default value
     ['] EMIT >BODY IS EMIT      \ EMIT executes its defaulte value
     ." RC5toLCD is running. Type STOP to quit" \ display message on FastForth Terminal
-    ABORT                       \ ...and end APP_INIT with ABORT, no return.
+    PWR_STATE ABORT             \ init DP and continues with ABORT
 ;                               \
+\ ------------------------------\
 
 \ ------------------------------\
 CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
 \ ------------------------------\
-MOV #SLEEP,X                    \ replace default background process
+MOV #SLEEP,X                    \ replace default background process SLEEP
 MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
 MOV #WARM,X                     \ replace default WARM
-MOV #APP_INIT,2(X)              \ by RC5toLCD APP_INIT
-MOV X,PC                        \ then execute it
+MOV #SYS_INIT,2(X)              \ by RC5toLCD SYS_INIT
+MOV X,PC                        \ then execute new WARM
 ENDCODE 
+\ ------------------------------\
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
 
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
 
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] CONSTANT [IF]
+\ https://forth-standard.org/standard/core/CONSTANT
+\ CONSTANT <name>     n --                      define a Forth CONSTANT 
+: CONSTANT 
+CREATE
+HI2LO
+MOV TOS,-2(W)           \   PFA = n
+MOV @PSP+,TOS
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] STATE [IF]
+\ https://forth-standard.org/standard/core/STATE
+\ STATE   -- a-addr       holds compiler state
+STATEADR CONSTANT STATE
+[THEN]
+
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+    MOV @IP+,PC \ 4
+THEN
+XOR #-1,TOS     \ 1 flag Z = 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE     \ immediate
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+\ https://forth-standard.org/standard/core/DEFER
+\ DEFER "<spaces>name"   --
+\ Skip leading space delimiters. Parse name delimited by a space.
+\ Create a definition for name with the execution semantics defined below.
+
+\ name Execution:   --
+\ Execute the xt that name is set to execute, i.e. NEXT (nothing),
+\ until the phrase ' word IS name is executed, causing a new value of xt to be assigned to name.
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(W)        \ CFA = MOV @PC+,PC = BR MOV @IP+,PC
+MOV #NEXT_ADR,-2(W)     \ PFA = address of MOV @IP+,PC to do nothing.
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEFER! [IF]
+\ https://forth-standard.org/standard/core/DEFERStore
+\ Set the word xt1 to execute xt2. An ambiguous condition exists if xt1 is not for a word defined by DEFER.
+CODE DEFER!             \ xt2 xt1 --
+MOV @PSP+,2(TOS)        \ -- xt1=CFA_DEFER          xt2 --> [CFA_DEFER+2]
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] IS [IF]
+\ https://forth-standard.org/standard/core/IS
+\ IS <name>        xt --
+\ used as is :
+\ DEFER DISPLAY                         create a "do nothing" definition (2 CELLS)
+\ inline command : ' U. IS DISPLAY      U. becomes the runtime of the word DISPLAY
+\ or in a definition : ... ['] U. IS DISPLAY ...
+\ KEY, EMIT, CR, ACCEPT and WARM are examples of DEFERred words
+\
+\ as IS replaces the PFA value of any word, it's a TO alias for VARIABLE and CONSTANT words...
+: IS
+STATE @
+IF  POSTPONE ['] POSTPONE DEFER! 
+ELSE ' DEFER! 
+THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+\ CODE 20uS           \ n --      8MHz version
+\ BEGIN               \ 4 + 16 ~ loop
+\     MOV #39,rDOCON   \ 39
+\     BEGIN           \ 4 ~ loop
+\         NOP
+\         SUB #1,rDOCON
+\     0=  UNTIL
+\     SUB #1,TOS      \ 1
+\ 0= UNTIL
+\ MOV #XDOCON,rDOCON  \ 2
+\ MOV @PSP+,TOS
+\ MOV @RSP+,IP        \
+\ ENDCODE
+
 CODE 20_US                      \ n --      n * 20 us
 BEGIN                           \ here we presume that LCD_TIM_IFG = 1...
     BEGIN
@@ -16800,8 +25593,8 @@ MOV @IP+,PC                     \ 4
 ENDCODE
 
 CODE TOP_LCD                    \ LCD Sample
-\                               \ if write : %xxxxWWWW --
-\                               \ if read  : -- %0000RRRR
+\                               \ if write : %xxxx_WWWW --
+\                               \ if read  : -- %0000_RRRR
     BIS.B #LCD_EN,&LCD_CMD_OUT  \ lcd_en 0-->1
     BIT.B #LCD_RW,&LCD_CMD_IN   \ lcd_rw test
 0= IF                           \ write LCD bits pattern
@@ -16822,8 +25615,8 @@ ENDCODE
 CODE LCD_WRC                    \ char --         Write Char
     BIS.B #LCD_RS,&LCD_CMD_OUT  \ lcd_rs=1
 BW1 SUB #2,PSP                  \
-    MOV TOS,0(PSP)              \ -- %xxxxLLLL %HHHHLLLL
-    RRUM #4,TOS                 \ -- %xxxxLLLL %xxxxHHHH
+    MOV TOS,0(PSP)              \ -- %xxxx_LLLL %HHHH_LLLL
+    RRUM #4,TOS                 \ -- %xxxx_LLLL %xxxx_HHHH
     BIC.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=0
     BIS.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as output
 COLON                           \ high level word starts here 
@@ -16863,11 +25656,11 @@ ENDCODE
 \ BW1 BIC.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as intput
 \     BIS.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=1
 \ COLON                           \ starts a FORTH word
-\     TOP_LCD 2 20_us             \ -- %0000HHHH
-\     TOP_LCD 2 20_us             \ -- %0000HHHH %0000LLLL
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH %0000_LLLL
 \ HI2LO                           \ switch from FORTH to assembler
-\     RLAM #4,0(PSP)              \ -- %HHHH0000 %0000LLLL
-\     ADD.B @PSP+,TOS             \ -- %HHHHLLLL
+\     RLAM #4,0(PSP)              \ -- %HHHH_0000 %0000_LLLL
+\     ADD.B @PSP+,TOS             \ -- %HHHH_LLLL
 \     MOV @RSP+,IP                \ restore IP saved by COLON
 \     MOV @IP+,PC                 \
 \ ENDCODE
@@ -17008,14 +25801,14 @@ MOV @PSP+,TOS                   \     -- TOS
 RET
 ENDASM
 
-\ ------------------------------\
+\ ******************************\
 ASM BACKGROUND                  \
-\ ------------------------------\
+\ ******************************\
 BEGIN
 \     ...                         \ insert here your background task
 \     ...                         \
 \     ...                         \
-    CALL &RXON                  \ comment this line to disable TERMINAL
+    CALL &RXON                  \ comment this line to disable TERMINAL_INPUT
     BIS &LPM_MODE,SR            \
 \ ******************************\
 \ here start all interrupts     \
@@ -17024,23 +25817,43 @@ BEGIN
 \ ******************************\
 AGAIN                           \
 ENDASM                          \
+\ ******************************\
+
+\ ------------------------------\
+ASM SYS_OUT                    \ system OUT init, replaces WARM at the request of STOP.
+\ ------------------------------\
+\     ...                         \ init specific I/O sys as you want
+\     ...                         \ before executing default WARM
+    MOV #WARM,X                 \ ['] WARM 
+    ADD #4,X                    \ >BODY
+    MOV X,PC                    \ EXECUTE    (which activates IO and TERMINAL)
+ENDASM
+\ ------------------------------\
 
 \ ------------------------------\
 CODE STOP                       \ stops multitasking, must to be used before downloading app
 \ ------------------------------\
-\ restore default action of primary DEFERred word SLEEP (assembly version)
 BW1 MOV #SLEEP,X                \ the ASM word SLEEP is only visible in mode assembler. 
     ADD #4,X                    \ X = BODY of SLEEP, X-2 = PFA of SLEEP
-    MOV X,-2(X)                 \ restore the default background
+    MOV X,-2(X)                 \ restore the default background: SLEEP
+    MOV #WARM,X
+    MOV #SYS_OUT,2(X)           \ default WARM is replaced by JMJ_BOX SYS_OUT (ended by default WARM)
+    BIC.B #RC5,&IR_IE           \ clear RC5_Int
+    BIC.B #RC5,&IR_IFG          \ clear RC5_Int flag
+    MOV #0,&LCD_TIM_CTL         \ stop LCD_TIMER
+    MOV #0,&WDT_TIM_CTL         \ stop WDT_TIMER
+    MOV #0,&WDT_TIM_CCTL0       \ clear CCIFG0 disable CCIE0
+    CALL #INIT_VECT             \ reset all vectors other than TERMINAL_int
 COLON                           \ restore default action of primary DEFERred word WARM (FORTH version)
-['] WARM >BODY IS WARM          \ restore the default WARM
 ECHO                            \
-." RC5toLCD is removed. type START to restart"
-COLD                            \ performs reset to reset all interrupt vectors.    
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM                           \ performs reset to reset all interrupt vectors.    
 ;
+\ ------------------------------\
 
 \ ------------------------------\
-CODE APP_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
+CODE SYS_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
 \ ------------------------------\
 \ LCD_TIM_CTL =  %0000 0010 1001 0100\$3C0
 \                    - -             \CNTL Counter lentgh \ 00 = 16 bits
@@ -17070,7 +25883,7 @@ CODE APP_INIT                   \ this routine completes the init of system, i.e
 \ ------------------------------\
 \ set LCD_TIM_ to make 50kHz PWM \ for LCD_Vo; works without interrupt
 \ ------------------------------\
-MOV #%1011010100,&LCD_TIM_CTL   \ SMCLK/8, up mode, clear timer, no int
+MOV #%10_1101_0100,&LCD_TIM_CTL \ SMCLK/8, up mode, clear timer, no int
 \    MOV #0,&LCD_TIM_EX0        \ predivide by 1 in LCD_TIM_EX0 register (8 MHZ)
 FREQ_KHZ @ 16000 = [IF]         \ if 16 MHz
     MOV #1,&LCD_TIM_EX0         \ predivide by 2 in LCD_TIM_EX0 register (16 MHZ)
@@ -17082,7 +25895,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \ ------------------------------\
 \ set LCD_TIM_.2 to generate PWM for LCD_Vo
 \ ------------------------------\
-    MOV #%01100000,&LCD_TIM_CCTLn \ output mode = set/reset \ clear CCIFG
+MOV #%0110_0000,&LCD_TIM_CCTLn  \ output mode = set/reset \ clear CCIFG
     MOV #10,&LCD_TIM_CCRn       \ contrast adjust : 10/20 ==> LCD_Vo = -0V6|+3V6 (Vcc=3V6)
 \    MOV #12,&LCD_TIM_CCRn        \ contrast adjust : 12/20 ==> LCD_Vo = -1V4|+3V3 (Vcc=3V3)
 \ ------------------------------\
@@ -17111,7 +25924,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \                         -     \ TAIE
 \                          -    \ TAIFG
 \ ------------------------------\
-    MOV #%0100010100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
+MOV #%01_0001_0100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
 \ ------------------------------\
 \                        000    \ TAxEX0
 \                        ---    \ TAIDEX    pre divisor
@@ -17177,23 +25990,213 @@ COLON                           \
     ['] CR >BODY IS CR          \ CR executes its default value
     ['] EMIT >BODY IS EMIT      \ EMIT executes its defaulte value
     ." RC5toLCD is running. Type STOP to quit" \ display message on FastForth Terminal
-    ABORT                       \ ...and end APP_INIT with ABORT, no return.
+    PWR_STATE ABORT             \ init DP and continues with ABORT
 ;                               \
+\ ------------------------------\
 
 \ ------------------------------\
 CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
 \ ------------------------------\
-MOV #SLEEP,X                    \ replace default background process
+MOV #SLEEP,X                    \ replace default background process SLEEP
 MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
 MOV #WARM,X                     \ replace default WARM
-MOV #APP_INIT,2(X)              \ by RC5toLCD APP_INIT
-MOV X,PC                        \ then execute it
+MOV #SYS_INIT,2(X)              \ by RC5toLCD SYS_INIT
+MOV X,PC                        \ then execute new WARM
 ENDCODE 
+\ ------------------------------\
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
 
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
 
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] CONSTANT [IF]
+\ https://forth-standard.org/standard/core/CONSTANT
+\ CONSTANT <name>     n --                      define a Forth CONSTANT 
+: CONSTANT 
+CREATE
+HI2LO
+MOV TOS,-2(W)           \   PFA = n
+MOV @PSP+,TOS
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] STATE [IF]
+\ https://forth-standard.org/standard/core/STATE
+\ STATE   -- a-addr       holds compiler state
+STATEADR CONSTANT STATE
+[THEN]
+
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+    MOV @IP+,PC \ 4
+THEN
+XOR #-1,TOS     \ 1 flag Z = 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE     \ immediate
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+\ https://forth-standard.org/standard/core/DEFER
+\ DEFER "<spaces>name"   --
+\ Skip leading space delimiters. Parse name delimited by a space.
+\ Create a definition for name with the execution semantics defined below.
+
+\ name Execution:   --
+\ Execute the xt that name is set to execute, i.e. NEXT (nothing),
+\ until the phrase ' word IS name is executed, causing a new value of xt to be assigned to name.
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(W)        \ CFA = MOV @PC+,PC = BR MOV @IP+,PC
+MOV #NEXT_ADR,-2(W)     \ PFA = address of MOV @IP+,PC to do nothing.
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEFER! [IF]
+\ https://forth-standard.org/standard/core/DEFERStore
+\ Set the word xt1 to execute xt2. An ambiguous condition exists if xt1 is not for a word defined by DEFER.
+CODE DEFER!             \ xt2 xt1 --
+MOV @PSP+,2(TOS)        \ -- xt1=CFA_DEFER          xt2 --> [CFA_DEFER+2]
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] IS [IF]
+\ https://forth-standard.org/standard/core/IS
+\ IS <name>        xt --
+\ used as is :
+\ DEFER DISPLAY                         create a "do nothing" definition (2 CELLS)
+\ inline command : ' U. IS DISPLAY      U. becomes the runtime of the word DISPLAY
+\ or in a definition : ... ['] U. IS DISPLAY ...
+\ KEY, EMIT, CR, ACCEPT and WARM are examples of DEFERred words
+\
+\ as IS replaces the PFA value of any word, it's a TO alias for VARIABLE and CONSTANT words...
+: IS
+STATE @
+IF  POSTPONE ['] POSTPONE DEFER! 
+ELSE ' DEFER! 
+THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+\ CODE 20uS           \ n --      8MHz version
+\ BEGIN               \ 4 + 16 ~ loop
+\     MOV #39,rDOCON   \ 39
+\     BEGIN           \ 4 ~ loop
+\         NOP
+\         SUB #1,rDOCON
+\     0=  UNTIL
+\     SUB #1,TOS      \ 1
+\ 0= UNTIL
+\ MOV #XDOCON,rDOCON  \ 2
+\ MOV @PSP+,TOS
+\ MOV @RSP+,IP        \
+\ ENDCODE
+
 CODE 20_US                      \ n --      n * 20 us
 BEGIN                           \ here we presume that LCD_TIM_IFG = 1...
     BEGIN
@@ -17207,8 +26210,8 @@ MOV @IP+,PC                     \ 4
 ENDCODE
 
 CODE TOP_LCD                    \ LCD Sample
-\                               \ if write : %xxxxWWWW --
-\                               \ if read  : -- %0000RRRR
+\                               \ if write : %xxxx_WWWW --
+\                               \ if read  : -- %0000_RRRR
     BIS.B #LCD_EN,&LCD_CMD_OUT  \ lcd_en 0-->1
     BIT.B #LCD_RW,&LCD_CMD_IN   \ lcd_rw test
 0= IF                           \ write LCD bits pattern
@@ -17229,8 +26232,8 @@ ENDCODE
 CODE LCD_WRC                    \ char --         Write Char
     BIS.B #LCD_RS,&LCD_CMD_OUT  \ lcd_rs=1
 BW1 SUB #2,PSP                  \
-    MOV TOS,0(PSP)              \ -- %xxxxLLLL %HHHHLLLL
-    RRUM #4,TOS                 \ -- %xxxxLLLL %xxxxHHHH
+    MOV TOS,0(PSP)              \ -- %xxxx_LLLL %HHHH_LLLL
+    RRUM #4,TOS                 \ -- %xxxx_LLLL %xxxx_HHHH
     BIC.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=0
     BIS.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as output
 COLON                           \ high level word starts here 
@@ -17270,11 +26273,11 @@ ENDCODE
 \ BW1 BIC.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as intput
 \     BIS.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=1
 \ COLON                           \ starts a FORTH word
-\     TOP_LCD 2 20_us             \ -- %0000HHHH
-\     TOP_LCD 2 20_us             \ -- %0000HHHH %0000LLLL
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH %0000_LLLL
 \ HI2LO                           \ switch from FORTH to assembler
-\     RLAM #4,0(PSP)              \ -- %HHHH0000 %0000LLLL
-\     ADD.B @PSP+,TOS             \ -- %HHHHLLLL
+\     RLAM #4,0(PSP)              \ -- %HHHH_0000 %0000_LLLL
+\     ADD.B @PSP+,TOS             \ -- %HHHH_LLLL
 \     MOV @RSP+,IP                \ restore IP saved by COLON
 \     MOV @IP+,PC                 \
 \ ENDCODE
@@ -17415,14 +26418,14 @@ MOV @PSP+,TOS                   \     -- TOS
 RET
 ENDASM
 
-\ ------------------------------\
+\ ******************************\
 ASM BACKGROUND                  \
-\ ------------------------------\
+\ ******************************\
 BEGIN
 \     ...                         \ insert here your background task
 \     ...                         \
 \     ...                         \
-    CALL &RXON                  \ comment this line to disable TERMINAL
+    CALL &RXON                  \ comment this line to disable TERMINAL_INPUT
     BIS &LPM_MODE,SR            \
 \ ******************************\
 \ here start all interrupts     \
@@ -17431,23 +26434,43 @@ BEGIN
 \ ******************************\
 AGAIN                           \
 ENDASM                          \
+\ ******************************\
+
+\ ------------------------------\
+ASM SYS_OUT                    \ system OUT init, replaces WARM at the request of STOP.
+\ ------------------------------\
+\     ...                         \ init specific I/O sys as you want
+\     ...                         \ before executing default WARM
+    MOV #WARM,X                 \ ['] WARM 
+    ADD #4,X                    \ >BODY
+    MOV X,PC                    \ EXECUTE    (which activates IO and TERMINAL)
+ENDASM
+\ ------------------------------\
 
 \ ------------------------------\
 CODE STOP                       \ stops multitasking, must to be used before downloading app
 \ ------------------------------\
-\ restore default action of primary DEFERred word SLEEP (assembly version)
 BW1 MOV #SLEEP,X                \ the ASM word SLEEP is only visible in mode assembler. 
     ADD #4,X                    \ X = BODY of SLEEP, X-2 = PFA of SLEEP
-    MOV X,-2(X)                 \ restore the default background
+    MOV X,-2(X)                 \ restore the default background: SLEEP
+    MOV #WARM,X
+    MOV #SYS_OUT,2(X)           \ default WARM is replaced by JMJ_BOX SYS_OUT (ended by default WARM)
+    BIC.B #RC5,&IR_IE           \ clear RC5_Int
+    BIC.B #RC5,&IR_IFG          \ clear RC5_Int flag
+    MOV #0,&LCD_TIM_CTL         \ stop LCD_TIMER
+    MOV #0,&WDT_TIM_CTL         \ stop WDT_TIMER
+    MOV #0,&WDT_TIM_CCTL0       \ clear CCIFG0 disable CCIE0
+    CALL #INIT_VECT             \ reset all vectors other than TERMINAL_int
 COLON                           \ restore default action of primary DEFERred word WARM (FORTH version)
-['] WARM >BODY IS WARM          \ restore the default WARM
 ECHO                            \
-." RC5toLCD is removed. type START to restart"
-COLD                            \ performs reset to reset all interrupt vectors.    
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM                           \ performs reset to reset all interrupt vectors.    
 ;
+\ ------------------------------\
 
 \ ------------------------------\
-CODE APP_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
+CODE SYS_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
 \ ------------------------------\
 \ LCD_TIM_CTL =  %0000 0010 1001 0100\$3C0
 \                    - -             \CNTL Counter lentgh \ 00 = 16 bits
@@ -17477,7 +26500,7 @@ CODE APP_INIT                   \ this routine completes the init of system, i.e
 \ ------------------------------\
 \ set LCD_TIM_ to make 50kHz PWM \ for LCD_Vo; works without interrupt
 \ ------------------------------\
-MOV #%1011010100,&LCD_TIM_CTL   \ SMCLK/8, up mode, clear timer, no int
+MOV #%10_1101_0100,&LCD_TIM_CTL \ SMCLK/8, up mode, clear timer, no int
 \    MOV #0,&LCD_TIM_EX0        \ predivide by 1 in LCD_TIM_EX0 register (8 MHZ)
 FREQ_KHZ @ 16000 = [IF]         \ if 16 MHz
     MOV #1,&LCD_TIM_EX0         \ predivide by 2 in LCD_TIM_EX0 register (16 MHZ)
@@ -17489,7 +26512,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \ ------------------------------\
 \ set LCD_TIM_.2 to generate PWM for LCD_Vo
 \ ------------------------------\
-    MOV #%01100000,&LCD_TIM_CCTLn \ output mode = set/reset \ clear CCIFG
+MOV #%0110_0000,&LCD_TIM_CCTLn  \ output mode = set/reset \ clear CCIFG
     MOV #10,&LCD_TIM_CCRn       \ contrast adjust : 10/20 ==> LCD_Vo = -0V6|+3V6 (Vcc=3V6)
 \    MOV #12,&LCD_TIM_CCRn        \ contrast adjust : 12/20 ==> LCD_Vo = -1V4|+3V3 (Vcc=3V3)
 \ ------------------------------\
@@ -17518,7 +26541,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \                         -     \ TAIE
 \                          -    \ TAIFG
 \ ------------------------------\
-    MOV #%0100010100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
+MOV #%01_0001_0100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
 \ ------------------------------\
 \                        000    \ TAxEX0
 \                        ---    \ TAIDEX    pre divisor
@@ -17584,23 +26607,213 @@ COLON                           \
     ['] CR >BODY IS CR          \ CR executes its default value
     ['] EMIT >BODY IS EMIT      \ EMIT executes its defaulte value
     ." RC5toLCD is running. Type STOP to quit" \ display message on FastForth Terminal
-    ABORT                       \ ...and end APP_INIT with ABORT, no return.
+    PWR_STATE ABORT             \ init DP and continues with ABORT
 ;                               \
+\ ------------------------------\
 
 \ ------------------------------\
 CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
 \ ------------------------------\
-MOV #SLEEP,X                    \ replace default background process
+MOV #SLEEP,X                    \ replace default background process SLEEP
 MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
 MOV #WARM,X                     \ replace default WARM
-MOV #APP_INIT,2(X)              \ by RC5toLCD APP_INIT
-MOV X,PC                        \ then execute it
+MOV #SYS_INIT,2(X)              \ by RC5toLCD SYS_INIT
+MOV X,PC                        \ then execute new WARM
 ENDCODE 
+\ ------------------------------\
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
 
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
 
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] CONSTANT [IF]
+\ https://forth-standard.org/standard/core/CONSTANT
+\ CONSTANT <name>     n --                      define a Forth CONSTANT 
+: CONSTANT 
+CREATE
+HI2LO
+MOV TOS,-2(W)           \   PFA = n
+MOV @PSP+,TOS
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] STATE [IF]
+\ https://forth-standard.org/standard/core/STATE
+\ STATE   -- a-addr       holds compiler state
+STATEADR CONSTANT STATE
+[THEN]
+
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+    MOV @IP+,PC \ 4
+THEN
+XOR #-1,TOS     \ 1 flag Z = 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE     \ immediate
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+\ https://forth-standard.org/standard/core/DEFER
+\ DEFER "<spaces>name"   --
+\ Skip leading space delimiters. Parse name delimited by a space.
+\ Create a definition for name with the execution semantics defined below.
+
+\ name Execution:   --
+\ Execute the xt that name is set to execute, i.e. NEXT (nothing),
+\ until the phrase ' word IS name is executed, causing a new value of xt to be assigned to name.
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(W)        \ CFA = MOV @PC+,PC = BR MOV @IP+,PC
+MOV #NEXT_ADR,-2(W)     \ PFA = address of MOV @IP+,PC to do nothing.
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEFER! [IF]
+\ https://forth-standard.org/standard/core/DEFERStore
+\ Set the word xt1 to execute xt2. An ambiguous condition exists if xt1 is not for a word defined by DEFER.
+CODE DEFER!             \ xt2 xt1 --
+MOV @PSP+,2(TOS)        \ -- xt1=CFA_DEFER          xt2 --> [CFA_DEFER+2]
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] IS [IF]
+\ https://forth-standard.org/standard/core/IS
+\ IS <name>        xt --
+\ used as is :
+\ DEFER DISPLAY                         create a "do nothing" definition (2 CELLS)
+\ inline command : ' U. IS DISPLAY      U. becomes the runtime of the word DISPLAY
+\ or in a definition : ... ['] U. IS DISPLAY ...
+\ KEY, EMIT, CR, ACCEPT and WARM are examples of DEFERred words
+\
+\ as IS replaces the PFA value of any word, it's a TO alias for VARIABLE and CONSTANT words...
+: IS
+STATE @
+IF  POSTPONE ['] POSTPONE DEFER! 
+ELSE ' DEFER! 
+THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+\ CODE 20uS           \ n --      8MHz version
+\ BEGIN               \ 4 + 16 ~ loop
+\     MOV #39,rDOCON   \ 39
+\     BEGIN           \ 4 ~ loop
+\         NOP
+\         SUB #1,rDOCON
+\     0=  UNTIL
+\     SUB #1,TOS      \ 1
+\ 0= UNTIL
+\ MOV #XDOCON,rDOCON  \ 2
+\ MOV @PSP+,TOS
+\ MOV @RSP+,IP        \
+\ ENDCODE
+
 CODE 20_US                      \ n --      n * 20 us
 BEGIN                           \ here we presume that LCD_TIM_IFG = 1...
     BEGIN
@@ -17614,8 +26827,8 @@ MOV @IP+,PC                     \ 4
 ENDCODE
 
 CODE TOP_LCD                    \ LCD Sample
-\                               \ if write : %xxxxWWWW --
-\                               \ if read  : -- %0000RRRR
+\                               \ if write : %xxxx_WWWW --
+\                               \ if read  : -- %0000_RRRR
     BIS.B #LCD_EN,&LCD_CMD_OUT  \ lcd_en 0-->1
     BIT.B #LCD_RW,&LCD_CMD_IN   \ lcd_rw test
 0= IF                           \ write LCD bits pattern
@@ -17636,8 +26849,8 @@ ENDCODE
 CODE LCD_WRC                    \ char --         Write Char
     BIS.B #LCD_RS,&LCD_CMD_OUT  \ lcd_rs=1
 BW1 SUB #2,PSP                  \
-    MOV TOS,0(PSP)              \ -- %xxxxLLLL %HHHHLLLL
-    RRUM #4,TOS                 \ -- %xxxxLLLL %xxxxHHHH
+    MOV TOS,0(PSP)              \ -- %xxxx_LLLL %HHHH_LLLL
+    RRUM #4,TOS                 \ -- %xxxx_LLLL %xxxx_HHHH
     BIC.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=0
     BIS.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as output
 COLON                           \ high level word starts here 
@@ -17677,11 +26890,11 @@ ENDCODE
 \ BW1 BIC.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as intput
 \     BIS.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=1
 \ COLON                           \ starts a FORTH word
-\     TOP_LCD 2 20_us             \ -- %0000HHHH
-\     TOP_LCD 2 20_us             \ -- %0000HHHH %0000LLLL
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH %0000_LLLL
 \ HI2LO                           \ switch from FORTH to assembler
-\     RLAM #4,0(PSP)              \ -- %HHHH0000 %0000LLLL
-\     ADD.B @PSP+,TOS             \ -- %HHHHLLLL
+\     RLAM #4,0(PSP)              \ -- %HHHH_0000 %0000_LLLL
+\     ADD.B @PSP+,TOS             \ -- %HHHH_LLLL
 \     MOV @RSP+,IP                \ restore IP saved by COLON
 \     MOV @IP+,PC                 \
 \ ENDCODE
@@ -17822,14 +27035,14 @@ MOV @PSP+,TOS                   \     -- TOS
 RET
 ENDASM
 
-\ ------------------------------\
+\ ******************************\
 ASM BACKGROUND                  \
-\ ------------------------------\
+\ ******************************\
 BEGIN
 \     ...                         \ insert here your background task
 \     ...                         \
 \     ...                         \
-    CALL &RXON                  \ comment this line to disable TERMINAL
+    CALL &RXON                  \ comment this line to disable TERMINAL_INPUT
     BIS &LPM_MODE,SR            \
 \ ******************************\
 \ here start all interrupts     \
@@ -17838,23 +27051,43 @@ BEGIN
 \ ******************************\
 AGAIN                           \
 ENDASM                          \
+\ ******************************\
+
+\ ------------------------------\
+ASM SYS_OUT                    \ system OUT init, replaces WARM at the request of STOP.
+\ ------------------------------\
+\     ...                         \ init specific I/O sys as you want
+\     ...                         \ before executing default WARM
+    MOV #WARM,X                 \ ['] WARM 
+    ADD #4,X                    \ >BODY
+    MOV X,PC                    \ EXECUTE    (which activates IO and TERMINAL)
+ENDASM
+\ ------------------------------\
 
 \ ------------------------------\
 CODE STOP                       \ stops multitasking, must to be used before downloading app
 \ ------------------------------\
-\ restore default action of primary DEFERred word SLEEP (assembly version)
 BW1 MOV #SLEEP,X                \ the ASM word SLEEP is only visible in mode assembler. 
     ADD #4,X                    \ X = BODY of SLEEP, X-2 = PFA of SLEEP
-    MOV X,-2(X)                 \ restore the default background
+    MOV X,-2(X)                 \ restore the default background: SLEEP
+    MOV #WARM,X
+    MOV #SYS_OUT,2(X)           \ default WARM is replaced by JMJ_BOX SYS_OUT (ended by default WARM)
+    BIC.B #RC5,&IR_IE           \ clear RC5_Int
+    BIC.B #RC5,&IR_IFG          \ clear RC5_Int flag
+    MOV #0,&LCD_TIM_CTL         \ stop LCD_TIMER
+    MOV #0,&WDT_TIM_CTL         \ stop WDT_TIMER
+    MOV #0,&WDT_TIM_CCTL0       \ clear CCIFG0 disable CCIE0
+    CALL #INIT_VECT             \ reset all vectors other than TERMINAL_int
 COLON                           \ restore default action of primary DEFERred word WARM (FORTH version)
-['] WARM >BODY IS WARM          \ restore the default WARM
 ECHO                            \
-." RC5toLCD is removed. type START to restart"
-COLD                            \ performs reset to reset all interrupt vectors.    
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM                           \ performs reset to reset all interrupt vectors.    
 ;
+\ ------------------------------\
 
 \ ------------------------------\
-CODE APP_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
+CODE SYS_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
 \ ------------------------------\
 \ LCD_TIM_CTL =  %0000 0010 1001 0100\$3C0
 \                    - -             \CNTL Counter lentgh \ 00 = 16 bits
@@ -17884,7 +27117,7 @@ CODE APP_INIT                   \ this routine completes the init of system, i.e
 \ ------------------------------\
 \ set LCD_TIM_ to make 50kHz PWM \ for LCD_Vo; works without interrupt
 \ ------------------------------\
-MOV #%1011010100,&LCD_TIM_CTL   \ SMCLK/8, up mode, clear timer, no int
+MOV #%10_1101_0100,&LCD_TIM_CTL \ SMCLK/8, up mode, clear timer, no int
 \    MOV #0,&LCD_TIM_EX0        \ predivide by 1 in LCD_TIM_EX0 register (8 MHZ)
 FREQ_KHZ @ 16000 = [IF]         \ if 16 MHz
     MOV #1,&LCD_TIM_EX0         \ predivide by 2 in LCD_TIM_EX0 register (16 MHZ)
@@ -17896,7 +27129,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \ ------------------------------\
 \ set LCD_TIM_.2 to generate PWM for LCD_Vo
 \ ------------------------------\
-    MOV #%01100000,&LCD_TIM_CCTLn \ output mode = set/reset \ clear CCIFG
+MOV #%0110_0000,&LCD_TIM_CCTLn  \ output mode = set/reset \ clear CCIFG
     MOV #10,&LCD_TIM_CCRn       \ contrast adjust : 10/20 ==> LCD_Vo = -0V6|+3V6 (Vcc=3V6)
 \    MOV #12,&LCD_TIM_CCRn        \ contrast adjust : 12/20 ==> LCD_Vo = -1V4|+3V3 (Vcc=3V3)
 \ ------------------------------\
@@ -17925,7 +27158,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \                         -     \ TAIE
 \                          -    \ TAIFG
 \ ------------------------------\
-    MOV #%0100010100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
+MOV #%01_0001_0100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
 \ ------------------------------\
 \                        000    \ TAxEX0
 \                        ---    \ TAIDEX    pre divisor
@@ -17991,23 +27224,213 @@ COLON                           \
     ['] CR >BODY IS CR          \ CR executes its default value
     ['] EMIT >BODY IS EMIT      \ EMIT executes its defaulte value
     ." RC5toLCD is running. Type STOP to quit" \ display message on FastForth Terminal
-    ABORT                       \ ...and end APP_INIT with ABORT, no return.
+    PWR_STATE ABORT             \ init DP and continues with ABORT
 ;                               \
+\ ------------------------------\
 
 \ ------------------------------\
 CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
 \ ------------------------------\
-MOV #SLEEP,X                    \ replace default background process
+MOV #SLEEP,X                    \ replace default background process SLEEP
 MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
 MOV #WARM,X                     \ replace default WARM
-MOV #APP_INIT,2(X)              \ by RC5toLCD APP_INIT
-MOV X,PC                        \ then execute it
+MOV #SYS_INIT,2(X)              \ by RC5toLCD SYS_INIT
+MOV X,PC                        \ then execute new WARM
 ENDCODE 
+\ ------------------------------\
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
 
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
 
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] CONSTANT [IF]
+\ https://forth-standard.org/standard/core/CONSTANT
+\ CONSTANT <name>     n --                      define a Forth CONSTANT 
+: CONSTANT 
+CREATE
+HI2LO
+MOV TOS,-2(W)           \   PFA = n
+MOV @PSP+,TOS
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] STATE [IF]
+\ https://forth-standard.org/standard/core/STATE
+\ STATE   -- a-addr       holds compiler state
+STATEADR CONSTANT STATE
+[THEN]
+
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+    MOV @IP+,PC \ 4
+THEN
+XOR #-1,TOS     \ 1 flag Z = 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE     \ immediate
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+\ https://forth-standard.org/standard/core/DEFER
+\ DEFER "<spaces>name"   --
+\ Skip leading space delimiters. Parse name delimited by a space.
+\ Create a definition for name with the execution semantics defined below.
+
+\ name Execution:   --
+\ Execute the xt that name is set to execute, i.e. NEXT (nothing),
+\ until the phrase ' word IS name is executed, causing a new value of xt to be assigned to name.
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(W)        \ CFA = MOV @PC+,PC = BR MOV @IP+,PC
+MOV #NEXT_ADR,-2(W)     \ PFA = address of MOV @IP+,PC to do nothing.
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEFER! [IF]
+\ https://forth-standard.org/standard/core/DEFERStore
+\ Set the word xt1 to execute xt2. An ambiguous condition exists if xt1 is not for a word defined by DEFER.
+CODE DEFER!             \ xt2 xt1 --
+MOV @PSP+,2(TOS)        \ -- xt1=CFA_DEFER          xt2 --> [CFA_DEFER+2]
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] IS [IF]
+\ https://forth-standard.org/standard/core/IS
+\ IS <name>        xt --
+\ used as is :
+\ DEFER DISPLAY                         create a "do nothing" definition (2 CELLS)
+\ inline command : ' U. IS DISPLAY      U. becomes the runtime of the word DISPLAY
+\ or in a definition : ... ['] U. IS DISPLAY ...
+\ KEY, EMIT, CR, ACCEPT and WARM are examples of DEFERred words
+\
+\ as IS replaces the PFA value of any word, it's a TO alias for VARIABLE and CONSTANT words...
+: IS
+STATE @
+IF  POSTPONE ['] POSTPONE DEFER! 
+ELSE ' DEFER! 
+THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+\ CODE 20uS           \ n --      8MHz version
+\ BEGIN               \ 4 + 16 ~ loop
+\     MOV #39,rDOCON   \ 39
+\     BEGIN           \ 4 ~ loop
+\         NOP
+\         SUB #1,rDOCON
+\     0=  UNTIL
+\     SUB #1,TOS      \ 1
+\ 0= UNTIL
+\ MOV #XDOCON,rDOCON  \ 2
+\ MOV @PSP+,TOS
+\ MOV @RSP+,IP        \
+\ ENDCODE
+
 CODE 20_US                      \ n --      n * 20 us
 BEGIN                           \ here we presume that LCD_TIM_IFG = 1...
     BEGIN
@@ -18021,8 +27444,8 @@ MOV @IP+,PC                     \ 4
 ENDCODE
 
 CODE TOP_LCD                    \ LCD Sample
-\                               \ if write : %xxxxWWWW --
-\                               \ if read  : -- %0000RRRR
+\                               \ if write : %xxxx_WWWW --
+\                               \ if read  : -- %0000_RRRR
     BIS.B #LCD_EN,&LCD_CMD_OUT  \ lcd_en 0-->1
     BIT.B #LCD_RW,&LCD_CMD_IN   \ lcd_rw test
 0= IF                           \ write LCD bits pattern
@@ -18043,8 +27466,8 @@ ENDCODE
 CODE LCD_WRC                    \ char --         Write Char
     BIS.B #LCD_RS,&LCD_CMD_OUT  \ lcd_rs=1
 BW1 SUB #2,PSP                  \
-    MOV TOS,0(PSP)              \ -- %xxxxLLLL %HHHHLLLL
-    RRUM #4,TOS                 \ -- %xxxxLLLL %xxxxHHHH
+    MOV TOS,0(PSP)              \ -- %xxxx_LLLL %HHHH_LLLL
+    RRUM #4,TOS                 \ -- %xxxx_LLLL %xxxx_HHHH
     BIC.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=0
     BIS.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as output
 COLON                           \ high level word starts here 
@@ -18084,11 +27507,11 @@ ENDCODE
 \ BW1 BIC.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as intput
 \     BIS.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=1
 \ COLON                           \ starts a FORTH word
-\     TOP_LCD 2 20_us             \ -- %0000HHHH
-\     TOP_LCD 2 20_us             \ -- %0000HHHH %0000LLLL
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH %0000_LLLL
 \ HI2LO                           \ switch from FORTH to assembler
-\     RLAM #4,0(PSP)              \ -- %HHHH0000 %0000LLLL
-\     ADD.B @PSP+,TOS             \ -- %HHHHLLLL
+\     RLAM #4,0(PSP)              \ -- %HHHH_0000 %0000_LLLL
+\     ADD.B @PSP+,TOS             \ -- %HHHH_LLLL
 \     MOV @RSP+,IP                \ restore IP saved by COLON
 \     MOV @IP+,PC                 \
 \ ENDCODE
@@ -18229,14 +27652,14 @@ MOV @PSP+,TOS                   \     -- TOS
 RET
 ENDASM
 
-\ ------------------------------\
+\ ******************************\
 ASM BACKGROUND                  \
-\ ------------------------------\
+\ ******************************\
 BEGIN
 \     ...                         \ insert here your background task
 \     ...                         \
 \     ...                         \
-    CALL &RXON                  \ comment this line to disable TERMINAL
+    CALL &RXON                  \ comment this line to disable TERMINAL_INPUT
     BIS &LPM_MODE,SR            \
 \ ******************************\
 \ here start all interrupts     \
@@ -18245,23 +27668,43 @@ BEGIN
 \ ******************************\
 AGAIN                           \
 ENDASM                          \
+\ ******************************\
+
+\ ------------------------------\
+ASM SYS_OUT                    \ system OUT init, replaces WARM at the request of STOP.
+\ ------------------------------\
+\     ...                         \ init specific I/O sys as you want
+\     ...                         \ before executing default WARM
+    MOV #WARM,X                 \ ['] WARM 
+    ADD #4,X                    \ >BODY
+    MOV X,PC                    \ EXECUTE    (which activates IO and TERMINAL)
+ENDASM
+\ ------------------------------\
 
 \ ------------------------------\
 CODE STOP                       \ stops multitasking, must to be used before downloading app
 \ ------------------------------\
-\ restore default action of primary DEFERred word SLEEP (assembly version)
 BW1 MOV #SLEEP,X                \ the ASM word SLEEP is only visible in mode assembler. 
     ADD #4,X                    \ X = BODY of SLEEP, X-2 = PFA of SLEEP
-    MOV X,-2(X)                 \ restore the default background
+    MOV X,-2(X)                 \ restore the default background: SLEEP
+    MOV #WARM,X
+    MOV #SYS_OUT,2(X)           \ default WARM is replaced by JMJ_BOX SYS_OUT (ended by default WARM)
+    BIC.B #RC5,&IR_IE           \ clear RC5_Int
+    BIC.B #RC5,&IR_IFG          \ clear RC5_Int flag
+    MOV #0,&LCD_TIM_CTL         \ stop LCD_TIMER
+    MOV #0,&WDT_TIM_CTL         \ stop WDT_TIMER
+    MOV #0,&WDT_TIM_CCTL0       \ clear CCIFG0 disable CCIE0
+    CALL #INIT_VECT             \ reset all vectors other than TERMINAL_int
 COLON                           \ restore default action of primary DEFERred word WARM (FORTH version)
-['] WARM >BODY IS WARM          \ restore the default WARM
 ECHO                            \
-." RC5toLCD is removed. type START to restart"
-COLD                            \ performs reset to reset all interrupt vectors.    
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM                           \ performs reset to reset all interrupt vectors.    
 ;
+\ ------------------------------\
 
 \ ------------------------------\
-CODE APP_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
+CODE SYS_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
 \ ------------------------------\
 \ LCD_TIM_CTL =  %0000 0010 1001 0100\$3C0
 \                    - -             \CNTL Counter lentgh \ 00 = 16 bits
@@ -18291,7 +27734,7 @@ CODE APP_INIT                   \ this routine completes the init of system, i.e
 \ ------------------------------\
 \ set LCD_TIM_ to make 50kHz PWM \ for LCD_Vo; works without interrupt
 \ ------------------------------\
-MOV #%1011010100,&LCD_TIM_CTL   \ SMCLK/8, up mode, clear timer, no int
+MOV #%10_1101_0100,&LCD_TIM_CTL \ SMCLK/8, up mode, clear timer, no int
 \    MOV #0,&LCD_TIM_EX0        \ predivide by 1 in LCD_TIM_EX0 register (8 MHZ)
 FREQ_KHZ @ 16000 = [IF]         \ if 16 MHz
     MOV #1,&LCD_TIM_EX0         \ predivide by 2 in LCD_TIM_EX0 register (16 MHZ)
@@ -18303,7 +27746,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \ ------------------------------\
 \ set LCD_TIM_.2 to generate PWM for LCD_Vo
 \ ------------------------------\
-    MOV #%01100000,&LCD_TIM_CCTLn \ output mode = set/reset \ clear CCIFG
+MOV #%0110_0000,&LCD_TIM_CCTLn  \ output mode = set/reset \ clear CCIFG
     MOV #10,&LCD_TIM_CCRn       \ contrast adjust : 10/20 ==> LCD_Vo = -0V6|+3V6 (Vcc=3V6)
 \    MOV #12,&LCD_TIM_CCRn        \ contrast adjust : 12/20 ==> LCD_Vo = -1V4|+3V3 (Vcc=3V3)
 \ ------------------------------\
@@ -18332,7 +27775,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \                         -     \ TAIE
 \                          -    \ TAIFG
 \ ------------------------------\
-    MOV #%0100010100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
+MOV #%01_0001_0100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
 \ ------------------------------\
 \                        000    \ TAxEX0
 \                        ---    \ TAIDEX    pre divisor
@@ -18398,22 +27841,212 @@ COLON                           \
     ['] CR >BODY IS CR          \ CR executes its default value
     ['] EMIT >BODY IS EMIT      \ EMIT executes its defaulte value
     ." RC5toLCD is running. Type STOP to quit" \ display message on FastForth Terminal
-    ABORT                       \ ...and end APP_INIT with ABORT, no return.
+    PWR_STATE ABORT             \ init DP and continues with ABORT
 ;                               \
+\ ------------------------------\
+
+\ ------------------------------\
+CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
+\ ------------------------------\
+MOV #SLEEP,X                    \ replace default background process SLEEP
+MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
+MOV #WARM,X                     \ replace default WARM
+MOV #SYS_INIT,2(X)              \ by RC5toLCD SYS_INIT
+MOV X,PC                        \ then execute new WARM
+ENDCODE 
+\ ------------------------------\
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
+
+[DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
+
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
+
+MARKER {RC5TOLCD}
+
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
 
-\ ------------------------------\
-CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
-\ ------------------------------\
-MOV #SLEEP,X                    \ replace default background process
-MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
-MOV #WARM,X                     \ replace default WARM
-MOV #APP_INIT,2(X)              \ by RC5toLCD APP_INIT
-MOV X,PC                        \ then execute it
-ENDCODE 
+[UNDEFINED] CONSTANT [IF]
+\ https://forth-standard.org/standard/core/CONSTANT
+\ CONSTANT <name>     n --                      define a Forth CONSTANT 
+: CONSTANT 
+CREATE
+HI2LO
+MOV TOS,-2(W)           \   PFA = n
+MOV @PSP+,TOS
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
 
-[DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
+[UNDEFINED] STATE [IF]
+\ https://forth-standard.org/standard/core/STATE
+\ STATE   -- a-addr       holds compiler state
+STATEADR CONSTANT STATE
+[THEN]
 
-MARKER {RC5TOLCD}
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+    MOV @IP+,PC \ 4
+THEN
+XOR #-1,TOS     \ 1 flag Z = 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE     \ immediate
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+\ https://forth-standard.org/standard/core/DEFER
+\ DEFER "<spaces>name"   --
+\ Skip leading space delimiters. Parse name delimited by a space.
+\ Create a definition for name with the execution semantics defined below.
+
+\ name Execution:   --
+\ Execute the xt that name is set to execute, i.e. NEXT (nothing),
+\ until the phrase ' word IS name is executed, causing a new value of xt to be assigned to name.
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(W)        \ CFA = MOV @PC+,PC = BR MOV @IP+,PC
+MOV #NEXT_ADR,-2(W)     \ PFA = address of MOV @IP+,PC to do nothing.
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEFER! [IF]
+\ https://forth-standard.org/standard/core/DEFERStore
+\ Set the word xt1 to execute xt2. An ambiguous condition exists if xt1 is not for a word defined by DEFER.
+CODE DEFER!             \ xt2 xt1 --
+MOV @PSP+,2(TOS)        \ -- xt1=CFA_DEFER          xt2 --> [CFA_DEFER+2]
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] IS [IF]
+\ https://forth-standard.org/standard/core/IS
+\ IS <name>        xt --
+\ used as is :
+\ DEFER DISPLAY                         create a "do nothing" definition (2 CELLS)
+\ inline command : ' U. IS DISPLAY      U. becomes the runtime of the word DISPLAY
+\ or in a definition : ... ['] U. IS DISPLAY ...
+\ KEY, EMIT, CR, ACCEPT and WARM are examples of DEFERred words
+\
+\ as IS replaces the PFA value of any word, it's a TO alias for VARIABLE and CONSTANT words...
+: IS
+STATE @
+IF  POSTPONE ['] POSTPONE DEFER! 
+ELSE ' DEFER! 
+THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+\ CODE 20uS           \ n --      8MHz version
+\ BEGIN               \ 4 + 16 ~ loop
+\     MOV #39,rDOCON   \ 39
+\     BEGIN           \ 4 ~ loop
+\         NOP
+\         SUB #1,rDOCON
+\     0=  UNTIL
+\     SUB #1,TOS      \ 1
+\ 0= UNTIL
+\ MOV #XDOCON,rDOCON  \ 2
+\ MOV @PSP+,TOS
+\ MOV @RSP+,IP        \
+\ ENDCODE
 
 CODE 20_US                      \ n --      n * 20 us
 BEGIN                           \ here we presume that LCD_TIM_IFG = 1...
@@ -18428,8 +28061,8 @@ MOV @IP+,PC                     \ 4
 ENDCODE
 
 CODE TOP_LCD                    \ LCD Sample
-\                               \ if write : %xxxxWWWW --
-\                               \ if read  : -- %0000RRRR
+\                               \ if write : %xxxx_WWWW --
+\                               \ if read  : -- %0000_RRRR
     BIS.B #LCD_EN,&LCD_CMD_OUT  \ lcd_en 0-->1
     BIT.B #LCD_RW,&LCD_CMD_IN   \ lcd_rw test
 0= IF                           \ write LCD bits pattern
@@ -18450,8 +28083,8 @@ ENDCODE
 CODE LCD_WRC                    \ char --         Write Char
     BIS.B #LCD_RS,&LCD_CMD_OUT  \ lcd_rs=1
 BW1 SUB #2,PSP                  \
-    MOV TOS,0(PSP)              \ -- %xxxxLLLL %HHHHLLLL
-    RRUM #4,TOS                 \ -- %xxxxLLLL %xxxxHHHH
+    MOV TOS,0(PSP)              \ -- %xxxx_LLLL %HHHH_LLLL
+    RRUM #4,TOS                 \ -- %xxxx_LLLL %xxxx_HHHH
     BIC.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=0
     BIS.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as output
 COLON                           \ high level word starts here 
@@ -18491,11 +28124,11 @@ ENDCODE
 \ BW1 BIC.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as intput
 \     BIS.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=1
 \ COLON                           \ starts a FORTH word
-\     TOP_LCD 2 20_us             \ -- %0000HHHH
-\     TOP_LCD 2 20_us             \ -- %0000HHHH %0000LLLL
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH %0000_LLLL
 \ HI2LO                           \ switch from FORTH to assembler
-\     RLAM #4,0(PSP)              \ -- %HHHH0000 %0000LLLL
-\     ADD.B @PSP+,TOS             \ -- %HHHHLLLL
+\     RLAM #4,0(PSP)              \ -- %HHHH_0000 %0000_LLLL
+\     ADD.B @PSP+,TOS             \ -- %HHHH_LLLL
 \     MOV @RSP+,IP                \ restore IP saved by COLON
 \     MOV @IP+,PC                 \
 \ ENDCODE
@@ -18636,14 +28269,14 @@ MOV @PSP+,TOS                   \     -- TOS
 RET
 ENDASM
 
-\ ------------------------------\
+\ ******************************\
 ASM BACKGROUND                  \
-\ ------------------------------\
+\ ******************************\
 BEGIN
 \     ...                         \ insert here your background task
 \     ...                         \
 \     ...                         \
-    CALL &RXON                  \ comment this line to disable TERMINAL
+    CALL &RXON                  \ comment this line to disable TERMINAL_INPUT
     BIS &LPM_MODE,SR            \
 \ ******************************\
 \ here start all interrupts     \
@@ -18652,23 +28285,43 @@ BEGIN
 \ ******************************\
 AGAIN                           \
 ENDASM                          \
+\ ******************************\
+
+\ ------------------------------\
+ASM SYS_OUT                    \ system OUT init, replaces WARM at the request of STOP.
+\ ------------------------------\
+\     ...                         \ init specific I/O sys as you want
+\     ...                         \ before executing default WARM
+    MOV #WARM,X                 \ ['] WARM 
+    ADD #4,X                    \ >BODY
+    MOV X,PC                    \ EXECUTE    (which activates IO and TERMINAL)
+ENDASM
+\ ------------------------------\
 
 \ ------------------------------\
 CODE STOP                       \ stops multitasking, must to be used before downloading app
 \ ------------------------------\
-\ restore default action of primary DEFERred word SLEEP (assembly version)
 BW1 MOV #SLEEP,X                \ the ASM word SLEEP is only visible in mode assembler. 
     ADD #4,X                    \ X = BODY of SLEEP, X-2 = PFA of SLEEP
-    MOV X,-2(X)                 \ restore the default background
+    MOV X,-2(X)                 \ restore the default background: SLEEP
+    MOV #WARM,X
+    MOV #SYS_OUT,2(X)           \ default WARM is replaced by JMJ_BOX SYS_OUT (ended by default WARM)
+    BIC.B #RC5,&IR_IE           \ clear RC5_Int
+    BIC.B #RC5,&IR_IFG          \ clear RC5_Int flag
+    MOV #0,&LCD_TIM_CTL         \ stop LCD_TIMER
+    MOV #0,&WDT_TIM_CTL         \ stop WDT_TIMER
+    MOV #0,&WDT_TIM_CCTL0       \ clear CCIFG0 disable CCIE0
+    CALL #INIT_VECT             \ reset all vectors other than TERMINAL_int
 COLON                           \ restore default action of primary DEFERred word WARM (FORTH version)
-['] WARM >BODY IS WARM          \ restore the default WARM
 ECHO                            \
-." RC5toLCD is removed. type START to restart"
-COLD                            \ performs reset to reset all interrupt vectors.    
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM                           \ performs reset to reset all interrupt vectors.    
 ;
+\ ------------------------------\
 
 \ ------------------------------\
-CODE APP_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
+CODE SYS_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
 \ ------------------------------\
 \ LCD_TIM_CTL =  %0000 0010 1001 0100\$3C0
 \                    - -             \CNTL Counter lentgh \ 00 = 16 bits
@@ -18698,7 +28351,7 @@ CODE APP_INIT                   \ this routine completes the init of system, i.e
 \ ------------------------------\
 \ set LCD_TIM_ to make 50kHz PWM \ for LCD_Vo; works without interrupt
 \ ------------------------------\
-MOV #%1011010100,&LCD_TIM_CTL   \ SMCLK/8, up mode, clear timer, no int
+MOV #%10_1101_0100,&LCD_TIM_CTL \ SMCLK/8, up mode, clear timer, no int
 \    MOV #0,&LCD_TIM_EX0        \ predivide by 1 in LCD_TIM_EX0 register (8 MHZ)
 FREQ_KHZ @ 16000 = [IF]         \ if 16 MHz
     MOV #1,&LCD_TIM_EX0         \ predivide by 2 in LCD_TIM_EX0 register (16 MHZ)
@@ -18710,7 +28363,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \ ------------------------------\
 \ set LCD_TIM_.2 to generate PWM for LCD_Vo
 \ ------------------------------\
-    MOV #%01100000,&LCD_TIM_CCTLn \ output mode = set/reset \ clear CCIFG
+MOV #%0110_0000,&LCD_TIM_CCTLn  \ output mode = set/reset \ clear CCIFG
     MOV #10,&LCD_TIM_CCRn       \ contrast adjust : 10/20 ==> LCD_Vo = -0V6|+3V6 (Vcc=3V6)
 \    MOV #12,&LCD_TIM_CCRn        \ contrast adjust : 12/20 ==> LCD_Vo = -1V4|+3V3 (Vcc=3V3)
 \ ------------------------------\
@@ -18739,7 +28392,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \                         -     \ TAIE
 \                          -    \ TAIFG
 \ ------------------------------\
-    MOV #%0100010100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
+MOV #%01_0001_0100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
 \ ------------------------------\
 \                        000    \ TAxEX0
 \                        ---    \ TAIDEX    pre divisor
@@ -18805,23 +28458,213 @@ COLON                           \
     ['] CR >BODY IS CR          \ CR executes its default value
     ['] EMIT >BODY IS EMIT      \ EMIT executes its defaulte value
     ." RC5toLCD is running. Type STOP to quit" \ display message on FastForth Terminal
-    ABORT                       \ ...and end APP_INIT with ABORT, no return.
+    PWR_STATE ABORT             \ init DP and continues with ABORT
 ;                               \
+\ ------------------------------\
 
 \ ------------------------------\
 CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
 \ ------------------------------\
-MOV #SLEEP,X                    \ replace default background process
+MOV #SLEEP,X                    \ replace default background process SLEEP
 MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
 MOV #WARM,X                     \ replace default WARM
-MOV #APP_INIT,2(X)              \ by RC5toLCD APP_INIT
-MOV X,PC                        \ then execute it
+MOV #SYS_INIT,2(X)              \ by RC5toLCD SYS_INIT
+MOV X,PC                        \ then execute new WARM
 ENDCODE 
+\ ------------------------------\
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
 
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
 
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] CONSTANT [IF]
+\ https://forth-standard.org/standard/core/CONSTANT
+\ CONSTANT <name>     n --                      define a Forth CONSTANT 
+: CONSTANT 
+CREATE
+HI2LO
+MOV TOS,-2(W)           \   PFA = n
+MOV @PSP+,TOS
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] STATE [IF]
+\ https://forth-standard.org/standard/core/STATE
+\ STATE   -- a-addr       holds compiler state
+STATEADR CONSTANT STATE
+[THEN]
+
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+    MOV @IP+,PC \ 4
+THEN
+XOR #-1,TOS     \ 1 flag Z = 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE     \ immediate
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+\ https://forth-standard.org/standard/core/DEFER
+\ DEFER "<spaces>name"   --
+\ Skip leading space delimiters. Parse name delimited by a space.
+\ Create a definition for name with the execution semantics defined below.
+
+\ name Execution:   --
+\ Execute the xt that name is set to execute, i.e. NEXT (nothing),
+\ until the phrase ' word IS name is executed, causing a new value of xt to be assigned to name.
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(W)        \ CFA = MOV @PC+,PC = BR MOV @IP+,PC
+MOV #NEXT_ADR,-2(W)     \ PFA = address of MOV @IP+,PC to do nothing.
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEFER! [IF]
+\ https://forth-standard.org/standard/core/DEFERStore
+\ Set the word xt1 to execute xt2. An ambiguous condition exists if xt1 is not for a word defined by DEFER.
+CODE DEFER!             \ xt2 xt1 --
+MOV @PSP+,2(TOS)        \ -- xt1=CFA_DEFER          xt2 --> [CFA_DEFER+2]
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] IS [IF]
+\ https://forth-standard.org/standard/core/IS
+\ IS <name>        xt --
+\ used as is :
+\ DEFER DISPLAY                         create a "do nothing" definition (2 CELLS)
+\ inline command : ' U. IS DISPLAY      U. becomes the runtime of the word DISPLAY
+\ or in a definition : ... ['] U. IS DISPLAY ...
+\ KEY, EMIT, CR, ACCEPT and WARM are examples of DEFERred words
+\
+\ as IS replaces the PFA value of any word, it's a TO alias for VARIABLE and CONSTANT words...
+: IS
+STATE @
+IF  POSTPONE ['] POSTPONE DEFER! 
+ELSE ' DEFER! 
+THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+\ CODE 20uS           \ n --      8MHz version
+\ BEGIN               \ 4 + 16 ~ loop
+\     MOV #39,rDOCON   \ 39
+\     BEGIN           \ 4 ~ loop
+\         NOP
+\         SUB #1,rDOCON
+\     0=  UNTIL
+\     SUB #1,TOS      \ 1
+\ 0= UNTIL
+\ MOV #XDOCON,rDOCON  \ 2
+\ MOV @PSP+,TOS
+\ MOV @RSP+,IP        \
+\ ENDCODE
+
 CODE 20_US                      \ n --      n * 20 us
 BEGIN                           \ here we presume that LCD_TIM_IFG = 1...
     BEGIN
@@ -18835,8 +28678,8 @@ MOV @IP+,PC                     \ 4
 ENDCODE
 
 CODE TOP_LCD                    \ LCD Sample
-\                               \ if write : %xxxxWWWW --
-\                               \ if read  : -- %0000RRRR
+\                               \ if write : %xxxx_WWWW --
+\                               \ if read  : -- %0000_RRRR
     BIS.B #LCD_EN,&LCD_CMD_OUT  \ lcd_en 0-->1
     BIT.B #LCD_RW,&LCD_CMD_IN   \ lcd_rw test
 0= IF                           \ write LCD bits pattern
@@ -18857,8 +28700,8 @@ ENDCODE
 CODE LCD_WRC                    \ char --         Write Char
     BIS.B #LCD_RS,&LCD_CMD_OUT  \ lcd_rs=1
 BW1 SUB #2,PSP                  \
-    MOV TOS,0(PSP)              \ -- %xxxxLLLL %HHHHLLLL
-    RRUM #4,TOS                 \ -- %xxxxLLLL %xxxxHHHH
+    MOV TOS,0(PSP)              \ -- %xxxx_LLLL %HHHH_LLLL
+    RRUM #4,TOS                 \ -- %xxxx_LLLL %xxxx_HHHH
     BIC.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=0
     BIS.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as output
 COLON                           \ high level word starts here 
@@ -18898,11 +28741,11 @@ ENDCODE
 \ BW1 BIC.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as intput
 \     BIS.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=1
 \ COLON                           \ starts a FORTH word
-\     TOP_LCD 2 20_us             \ -- %0000HHHH
-\     TOP_LCD 2 20_us             \ -- %0000HHHH %0000LLLL
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH %0000_LLLL
 \ HI2LO                           \ switch from FORTH to assembler
-\     RLAM #4,0(PSP)              \ -- %HHHH0000 %0000LLLL
-\     ADD.B @PSP+,TOS             \ -- %HHHHLLLL
+\     RLAM #4,0(PSP)              \ -- %HHHH_0000 %0000_LLLL
+\     ADD.B @PSP+,TOS             \ -- %HHHH_LLLL
 \     MOV @RSP+,IP                \ restore IP saved by COLON
 \     MOV @IP+,PC                 \
 \ ENDCODE
@@ -19043,14 +28886,14 @@ MOV @PSP+,TOS                   \     -- TOS
 RET
 ENDASM
 
-\ ------------------------------\
+\ ******************************\
 ASM BACKGROUND                  \
-\ ------------------------------\
+\ ******************************\
 BEGIN
 \     ...                         \ insert here your background task
 \     ...                         \
 \     ...                         \
-    CALL &RXON                  \ comment this line to disable TERMINAL
+    CALL &RXON                  \ comment this line to disable TERMINAL_INPUT
     BIS &LPM_MODE,SR            \
 \ ******************************\
 \ here start all interrupts     \
@@ -19059,23 +28902,43 @@ BEGIN
 \ ******************************\
 AGAIN                           \
 ENDASM                          \
+\ ******************************\
+
+\ ------------------------------\
+ASM SYS_OUT                    \ system OUT init, replaces WARM at the request of STOP.
+\ ------------------------------\
+\     ...                         \ init specific I/O sys as you want
+\     ...                         \ before executing default WARM
+    MOV #WARM,X                 \ ['] WARM 
+    ADD #4,X                    \ >BODY
+    MOV X,PC                    \ EXECUTE    (which activates IO and TERMINAL)
+ENDASM
+\ ------------------------------\
 
 \ ------------------------------\
 CODE STOP                       \ stops multitasking, must to be used before downloading app
 \ ------------------------------\
-\ restore default action of primary DEFERred word SLEEP (assembly version)
 BW1 MOV #SLEEP,X                \ the ASM word SLEEP is only visible in mode assembler. 
     ADD #4,X                    \ X = BODY of SLEEP, X-2 = PFA of SLEEP
-    MOV X,-2(X)                 \ restore the default background
+    MOV X,-2(X)                 \ restore the default background: SLEEP
+    MOV #WARM,X
+    MOV #SYS_OUT,2(X)           \ default WARM is replaced by JMJ_BOX SYS_OUT (ended by default WARM)
+    BIC.B #RC5,&IR_IE           \ clear RC5_Int
+    BIC.B #RC5,&IR_IFG          \ clear RC5_Int flag
+    MOV #0,&LCD_TIM_CTL         \ stop LCD_TIMER
+    MOV #0,&WDT_TIM_CTL         \ stop WDT_TIMER
+    MOV #0,&WDT_TIM_CCTL0       \ clear CCIFG0 disable CCIE0
+    CALL #INIT_VECT             \ reset all vectors other than TERMINAL_int
 COLON                           \ restore default action of primary DEFERred word WARM (FORTH version)
-['] WARM >BODY IS WARM          \ restore the default WARM
 ECHO                            \
-." RC5toLCD is removed. type START to restart"
-COLD                            \ performs reset to reset all interrupt vectors.    
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM                           \ performs reset to reset all interrupt vectors.    
 ;
+\ ------------------------------\
 
 \ ------------------------------\
-CODE APP_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
+CODE SYS_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
 \ ------------------------------\
 \ LCD_TIM_CTL =  %0000 0010 1001 0100\$3C0
 \                    - -             \CNTL Counter lentgh \ 00 = 16 bits
@@ -19105,7 +28968,7 @@ CODE APP_INIT                   \ this routine completes the init of system, i.e
 \ ------------------------------\
 \ set LCD_TIM_ to make 50kHz PWM \ for LCD_Vo; works without interrupt
 \ ------------------------------\
-MOV #%1011010100,&LCD_TIM_CTL   \ SMCLK/8, up mode, clear timer, no int
+MOV #%10_1101_0100,&LCD_TIM_CTL \ SMCLK/8, up mode, clear timer, no int
 \    MOV #0,&LCD_TIM_EX0        \ predivide by 1 in LCD_TIM_EX0 register (8 MHZ)
 FREQ_KHZ @ 16000 = [IF]         \ if 16 MHz
     MOV #1,&LCD_TIM_EX0         \ predivide by 2 in LCD_TIM_EX0 register (16 MHZ)
@@ -19117,7 +28980,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \ ------------------------------\
 \ set LCD_TIM_.2 to generate PWM for LCD_Vo
 \ ------------------------------\
-    MOV #%01100000,&LCD_TIM_CCTLn \ output mode = set/reset \ clear CCIFG
+MOV #%0110_0000,&LCD_TIM_CCTLn  \ output mode = set/reset \ clear CCIFG
     MOV #10,&LCD_TIM_CCRn       \ contrast adjust : 10/20 ==> LCD_Vo = -0V6|+3V6 (Vcc=3V6)
 \    MOV #12,&LCD_TIM_CCRn        \ contrast adjust : 12/20 ==> LCD_Vo = -1V4|+3V3 (Vcc=3V3)
 \ ------------------------------\
@@ -19146,7 +29009,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \                         -     \ TAIE
 \                          -    \ TAIFG
 \ ------------------------------\
-    MOV #%0100010100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
+MOV #%01_0001_0100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
 \ ------------------------------\
 \                        000    \ TAxEX0
 \                        ---    \ TAIDEX    pre divisor
@@ -19212,23 +29075,213 @@ COLON                           \
     ['] CR >BODY IS CR          \ CR executes its default value
     ['] EMIT >BODY IS EMIT      \ EMIT executes its defaulte value
     ." RC5toLCD is running. Type STOP to quit" \ display message on FastForth Terminal
-    ABORT                       \ ...and end APP_INIT with ABORT, no return.
+    PWR_STATE ABORT             \ init DP and continues with ABORT
 ;                               \
+\ ------------------------------\
 
 \ ------------------------------\
 CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
 \ ------------------------------\
-MOV #SLEEP,X                    \ replace default background process
+MOV #SLEEP,X                    \ replace default background process SLEEP
 MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
 MOV #WARM,X                     \ replace default WARM
-MOV #APP_INIT,2(X)              \ by RC5toLCD APP_INIT
-MOV X,PC                        \ then execute it
+MOV #SYS_INIT,2(X)              \ by RC5toLCD SYS_INIT
+MOV X,PC                        \ then execute new WARM
 ENDCODE 
+\ ------------------------------\
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
 
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
 
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] CONSTANT [IF]
+\ https://forth-standard.org/standard/core/CONSTANT
+\ CONSTANT <name>     n --                      define a Forth CONSTANT 
+: CONSTANT 
+CREATE
+HI2LO
+MOV TOS,-2(W)           \   PFA = n
+MOV @PSP+,TOS
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] STATE [IF]
+\ https://forth-standard.org/standard/core/STATE
+\ STATE   -- a-addr       holds compiler state
+STATEADR CONSTANT STATE
+[THEN]
+
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+    MOV @IP+,PC \ 4
+THEN
+XOR #-1,TOS     \ 1 flag Z = 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE     \ immediate
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+\ https://forth-standard.org/standard/core/DEFER
+\ DEFER "<spaces>name"   --
+\ Skip leading space delimiters. Parse name delimited by a space.
+\ Create a definition for name with the execution semantics defined below.
+
+\ name Execution:   --
+\ Execute the xt that name is set to execute, i.e. NEXT (nothing),
+\ until the phrase ' word IS name is executed, causing a new value of xt to be assigned to name.
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(W)        \ CFA = MOV @PC+,PC = BR MOV @IP+,PC
+MOV #NEXT_ADR,-2(W)     \ PFA = address of MOV @IP+,PC to do nothing.
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEFER! [IF]
+\ https://forth-standard.org/standard/core/DEFERStore
+\ Set the word xt1 to execute xt2. An ambiguous condition exists if xt1 is not for a word defined by DEFER.
+CODE DEFER!             \ xt2 xt1 --
+MOV @PSP+,2(TOS)        \ -- xt1=CFA_DEFER          xt2 --> [CFA_DEFER+2]
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] IS [IF]
+\ https://forth-standard.org/standard/core/IS
+\ IS <name>        xt --
+\ used as is :
+\ DEFER DISPLAY                         create a "do nothing" definition (2 CELLS)
+\ inline command : ' U. IS DISPLAY      U. becomes the runtime of the word DISPLAY
+\ or in a definition : ... ['] U. IS DISPLAY ...
+\ KEY, EMIT, CR, ACCEPT and WARM are examples of DEFERred words
+\
+\ as IS replaces the PFA value of any word, it's a TO alias for VARIABLE and CONSTANT words...
+: IS
+STATE @
+IF  POSTPONE ['] POSTPONE DEFER! 
+ELSE ' DEFER! 
+THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+\ CODE 20uS           \ n --      8MHz version
+\ BEGIN               \ 4 + 16 ~ loop
+\     MOV #39,rDOCON   \ 39
+\     BEGIN           \ 4 ~ loop
+\         NOP
+\         SUB #1,rDOCON
+\     0=  UNTIL
+\     SUB #1,TOS      \ 1
+\ 0= UNTIL
+\ MOV #XDOCON,rDOCON  \ 2
+\ MOV @PSP+,TOS
+\ MOV @RSP+,IP        \
+\ ENDCODE
+
 CODE 20_US                      \ n --      n * 20 us
 BEGIN                           \ here we presume that LCD_TIM_IFG = 1...
     BEGIN
@@ -19242,8 +29295,8 @@ MOV @IP+,PC                     \ 4
 ENDCODE
 
 CODE TOP_LCD                    \ LCD Sample
-\                               \ if write : %xxxxWWWW --
-\                               \ if read  : -- %0000RRRR
+\                               \ if write : %xxxx_WWWW --
+\                               \ if read  : -- %0000_RRRR
     BIS.B #LCD_EN,&LCD_CMD_OUT  \ lcd_en 0-->1
     BIT.B #LCD_RW,&LCD_CMD_IN   \ lcd_rw test
 0= IF                           \ write LCD bits pattern
@@ -19264,8 +29317,8 @@ ENDCODE
 CODE LCD_WRC                    \ char --         Write Char
     BIS.B #LCD_RS,&LCD_CMD_OUT  \ lcd_rs=1
 BW1 SUB #2,PSP                  \
-    MOV TOS,0(PSP)              \ -- %xxxxLLLL %HHHHLLLL
-    RRUM #4,TOS                 \ -- %xxxxLLLL %xxxxHHHH
+    MOV TOS,0(PSP)              \ -- %xxxx_LLLL %HHHH_LLLL
+    RRUM #4,TOS                 \ -- %xxxx_LLLL %xxxx_HHHH
     BIC.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=0
     BIS.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as output
 COLON                           \ high level word starts here 
@@ -19305,11 +29358,11 @@ ENDCODE
 \ BW1 BIC.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as intput
 \     BIS.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=1
 \ COLON                           \ starts a FORTH word
-\     TOP_LCD 2 20_us             \ -- %0000HHHH
-\     TOP_LCD 2 20_us             \ -- %0000HHHH %0000LLLL
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH %0000_LLLL
 \ HI2LO                           \ switch from FORTH to assembler
-\     RLAM #4,0(PSP)              \ -- %HHHH0000 %0000LLLL
-\     ADD.B @PSP+,TOS             \ -- %HHHHLLLL
+\     RLAM #4,0(PSP)              \ -- %HHHH_0000 %0000_LLLL
+\     ADD.B @PSP+,TOS             \ -- %HHHH_LLLL
 \     MOV @RSP+,IP                \ restore IP saved by COLON
 \     MOV @IP+,PC                 \
 \ ENDCODE
@@ -19450,14 +29503,14 @@ MOV @PSP+,TOS                   \     -- TOS
 RET
 ENDASM
 
-\ ------------------------------\
+\ ******************************\
 ASM BACKGROUND                  \
-\ ------------------------------\
+\ ******************************\
 BEGIN
 \     ...                         \ insert here your background task
 \     ...                         \
 \     ...                         \
-    CALL &RXON                  \ comment this line to disable TERMINAL
+    CALL &RXON                  \ comment this line to disable TERMINAL_INPUT
     BIS &LPM_MODE,SR            \
 \ ******************************\
 \ here start all interrupts     \
@@ -19466,23 +29519,43 @@ BEGIN
 \ ******************************\
 AGAIN                           \
 ENDASM                          \
+\ ******************************\
+
+\ ------------------------------\
+ASM SYS_OUT                    \ system OUT init, replaces WARM at the request of STOP.
+\ ------------------------------\
+\     ...                         \ init specific I/O sys as you want
+\     ...                         \ before executing default WARM
+    MOV #WARM,X                 \ ['] WARM 
+    ADD #4,X                    \ >BODY
+    MOV X,PC                    \ EXECUTE    (which activates IO and TERMINAL)
+ENDASM
+\ ------------------------------\
 
 \ ------------------------------\
 CODE STOP                       \ stops multitasking, must to be used before downloading app
 \ ------------------------------\
-\ restore default action of primary DEFERred word SLEEP (assembly version)
 BW1 MOV #SLEEP,X                \ the ASM word SLEEP is only visible in mode assembler. 
     ADD #4,X                    \ X = BODY of SLEEP, X-2 = PFA of SLEEP
-    MOV X,-2(X)                 \ restore the default background
+    MOV X,-2(X)                 \ restore the default background: SLEEP
+    MOV #WARM,X
+    MOV #SYS_OUT,2(X)           \ default WARM is replaced by JMJ_BOX SYS_OUT (ended by default WARM)
+    BIC.B #RC5,&IR_IE           \ clear RC5_Int
+    BIC.B #RC5,&IR_IFG          \ clear RC5_Int flag
+    MOV #0,&LCD_TIM_CTL         \ stop LCD_TIMER
+    MOV #0,&WDT_TIM_CTL         \ stop WDT_TIMER
+    MOV #0,&WDT_TIM_CCTL0       \ clear CCIFG0 disable CCIE0
+    CALL #INIT_VECT             \ reset all vectors other than TERMINAL_int
 COLON                           \ restore default action of primary DEFERred word WARM (FORTH version)
-['] WARM >BODY IS WARM          \ restore the default WARM
 ECHO                            \
-." RC5toLCD is removed. type START to restart"
-COLD                            \ performs reset to reset all interrupt vectors.    
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM                           \ performs reset to reset all interrupt vectors.    
 ;
+\ ------------------------------\
 
 \ ------------------------------\
-CODE APP_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
+CODE SYS_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
 \ ------------------------------\
 \ LCD_TIM_CTL =  %0000 0010 1001 0100\$3C0
 \                    - -             \CNTL Counter lentgh \ 00 = 16 bits
@@ -19512,7 +29585,7 @@ CODE APP_INIT                   \ this routine completes the init of system, i.e
 \ ------------------------------\
 \ set LCD_TIM_ to make 50kHz PWM \ for LCD_Vo; works without interrupt
 \ ------------------------------\
-MOV #%1011010100,&LCD_TIM_CTL   \ SMCLK/8, up mode, clear timer, no int
+MOV #%10_1101_0100,&LCD_TIM_CTL \ SMCLK/8, up mode, clear timer, no int
 \    MOV #0,&LCD_TIM_EX0        \ predivide by 1 in LCD_TIM_EX0 register (8 MHZ)
 FREQ_KHZ @ 16000 = [IF]         \ if 16 MHz
     MOV #1,&LCD_TIM_EX0         \ predivide by 2 in LCD_TIM_EX0 register (16 MHZ)
@@ -19524,7 +29597,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \ ------------------------------\
 \ set LCD_TIM_.2 to generate PWM for LCD_Vo
 \ ------------------------------\
-    MOV #%01100000,&LCD_TIM_CCTLn \ output mode = set/reset \ clear CCIFG
+MOV #%0110_0000,&LCD_TIM_CCTLn  \ output mode = set/reset \ clear CCIFG
     MOV #10,&LCD_TIM_CCRn       \ contrast adjust : 10/20 ==> LCD_Vo = -0V6|+3V6 (Vcc=3V6)
 \    MOV #12,&LCD_TIM_CCRn        \ contrast adjust : 12/20 ==> LCD_Vo = -1V4|+3V3 (Vcc=3V3)
 \ ------------------------------\
@@ -19553,7 +29626,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \                         -     \ TAIE
 \                          -    \ TAIFG
 \ ------------------------------\
-    MOV #%0100010100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
+MOV #%01_0001_0100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
 \ ------------------------------\
 \                        000    \ TAxEX0
 \                        ---    \ TAIDEX    pre divisor
@@ -19619,23 +29692,213 @@ COLON                           \
     ['] CR >BODY IS CR          \ CR executes its default value
     ['] EMIT >BODY IS EMIT      \ EMIT executes its defaulte value
     ." RC5toLCD is running. Type STOP to quit" \ display message on FastForth Terminal
-    ABORT                       \ ...and end APP_INIT with ABORT, no return.
+    PWR_STATE ABORT             \ init DP and continues with ABORT
 ;                               \
+\ ------------------------------\
 
 \ ------------------------------\
 CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
 \ ------------------------------\
-MOV #SLEEP,X                    \ replace default background process
+MOV #SLEEP,X                    \ replace default background process SLEEP
 MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
 MOV #WARM,X                     \ replace default WARM
-MOV #APP_INIT,2(X)              \ by RC5toLCD APP_INIT
-MOV X,PC                        \ then execute it
+MOV #SYS_INIT,2(X)              \ by RC5toLCD SYS_INIT
+MOV X,PC                        \ then execute new WARM
 ENDCODE 
+\ ------------------------------\
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
 
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
 
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] CONSTANT [IF]
+\ https://forth-standard.org/standard/core/CONSTANT
+\ CONSTANT <name>     n --                      define a Forth CONSTANT 
+: CONSTANT 
+CREATE
+HI2LO
+MOV TOS,-2(W)           \   PFA = n
+MOV @PSP+,TOS
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] STATE [IF]
+\ https://forth-standard.org/standard/core/STATE
+\ STATE   -- a-addr       holds compiler state
+STATEADR CONSTANT STATE
+[THEN]
+
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+    MOV @IP+,PC \ 4
+THEN
+XOR #-1,TOS     \ 1 flag Z = 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE     \ immediate
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+\ https://forth-standard.org/standard/core/DEFER
+\ DEFER "<spaces>name"   --
+\ Skip leading space delimiters. Parse name delimited by a space.
+\ Create a definition for name with the execution semantics defined below.
+
+\ name Execution:   --
+\ Execute the xt that name is set to execute, i.e. NEXT (nothing),
+\ until the phrase ' word IS name is executed, causing a new value of xt to be assigned to name.
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(W)        \ CFA = MOV @PC+,PC = BR MOV @IP+,PC
+MOV #NEXT_ADR,-2(W)     \ PFA = address of MOV @IP+,PC to do nothing.
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEFER! [IF]
+\ https://forth-standard.org/standard/core/DEFERStore
+\ Set the word xt1 to execute xt2. An ambiguous condition exists if xt1 is not for a word defined by DEFER.
+CODE DEFER!             \ xt2 xt1 --
+MOV @PSP+,2(TOS)        \ -- xt1=CFA_DEFER          xt2 --> [CFA_DEFER+2]
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] IS [IF]
+\ https://forth-standard.org/standard/core/IS
+\ IS <name>        xt --
+\ used as is :
+\ DEFER DISPLAY                         create a "do nothing" definition (2 CELLS)
+\ inline command : ' U. IS DISPLAY      U. becomes the runtime of the word DISPLAY
+\ or in a definition : ... ['] U. IS DISPLAY ...
+\ KEY, EMIT, CR, ACCEPT and WARM are examples of DEFERred words
+\
+\ as IS replaces the PFA value of any word, it's a TO alias for VARIABLE and CONSTANT words...
+: IS
+STATE @
+IF  POSTPONE ['] POSTPONE DEFER! 
+ELSE ' DEFER! 
+THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+\ CODE 20uS           \ n --      8MHz version
+\ BEGIN               \ 4 + 16 ~ loop
+\     MOV #39,rDOCON   \ 39
+\     BEGIN           \ 4 ~ loop
+\         NOP
+\         SUB #1,rDOCON
+\     0=  UNTIL
+\     SUB #1,TOS      \ 1
+\ 0= UNTIL
+\ MOV #XDOCON,rDOCON  \ 2
+\ MOV @PSP+,TOS
+\ MOV @RSP+,IP        \
+\ ENDCODE
+
 CODE 20_US                      \ n --      n * 20 us
 BEGIN                           \ here we presume that LCD_TIM_IFG = 1...
     BEGIN
@@ -19649,8 +29912,8 @@ MOV @IP+,PC                     \ 4
 ENDCODE
 
 CODE TOP_LCD                    \ LCD Sample
-\                               \ if write : %xxxxWWWW --
-\                               \ if read  : -- %0000RRRR
+\                               \ if write : %xxxx_WWWW --
+\                               \ if read  : -- %0000_RRRR
     BIS.B #LCD_EN,&LCD_CMD_OUT  \ lcd_en 0-->1
     BIT.B #LCD_RW,&LCD_CMD_IN   \ lcd_rw test
 0= IF                           \ write LCD bits pattern
@@ -19671,8 +29934,8 @@ ENDCODE
 CODE LCD_WRC                    \ char --         Write Char
     BIS.B #LCD_RS,&LCD_CMD_OUT  \ lcd_rs=1
 BW1 SUB #2,PSP                  \
-    MOV TOS,0(PSP)              \ -- %xxxxLLLL %HHHHLLLL
-    RRUM #4,TOS                 \ -- %xxxxLLLL %xxxxHHHH
+    MOV TOS,0(PSP)              \ -- %xxxx_LLLL %HHHH_LLLL
+    RRUM #4,TOS                 \ -- %xxxx_LLLL %xxxx_HHHH
     BIC.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=0
     BIS.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as output
 COLON                           \ high level word starts here 
@@ -19712,11 +29975,11 @@ ENDCODE
 \ BW1 BIC.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as intput
 \     BIS.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=1
 \ COLON                           \ starts a FORTH word
-\     TOP_LCD 2 20_us             \ -- %0000HHHH
-\     TOP_LCD 2 20_us             \ -- %0000HHHH %0000LLLL
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH %0000_LLLL
 \ HI2LO                           \ switch from FORTH to assembler
-\     RLAM #4,0(PSP)              \ -- %HHHH0000 %0000LLLL
-\     ADD.B @PSP+,TOS             \ -- %HHHHLLLL
+\     RLAM #4,0(PSP)              \ -- %HHHH_0000 %0000_LLLL
+\     ADD.B @PSP+,TOS             \ -- %HHHH_LLLL
 \     MOV @RSP+,IP                \ restore IP saved by COLON
 \     MOV @IP+,PC                 \
 \ ENDCODE
@@ -19857,14 +30120,14 @@ MOV @PSP+,TOS                   \     -- TOS
 RET
 ENDASM
 
-\ ------------------------------\
+\ ******************************\
 ASM BACKGROUND                  \
-\ ------------------------------\
+\ ******************************\
 BEGIN
 \     ...                         \ insert here your background task
 \     ...                         \
 \     ...                         \
-    CALL &RXON                  \ comment this line to disable TERMINAL
+    CALL &RXON                  \ comment this line to disable TERMINAL_INPUT
     BIS &LPM_MODE,SR            \
 \ ******************************\
 \ here start all interrupts     \
@@ -19873,23 +30136,43 @@ BEGIN
 \ ******************************\
 AGAIN                           \
 ENDASM                          \
+\ ******************************\
+
+\ ------------------------------\
+ASM SYS_OUT                    \ system OUT init, replaces WARM at the request of STOP.
+\ ------------------------------\
+\     ...                         \ init specific I/O sys as you want
+\     ...                         \ before executing default WARM
+    MOV #WARM,X                 \ ['] WARM 
+    ADD #4,X                    \ >BODY
+    MOV X,PC                    \ EXECUTE    (which activates IO and TERMINAL)
+ENDASM
+\ ------------------------------\
 
 \ ------------------------------\
 CODE STOP                       \ stops multitasking, must to be used before downloading app
 \ ------------------------------\
-\ restore default action of primary DEFERred word SLEEP (assembly version)
 BW1 MOV #SLEEP,X                \ the ASM word SLEEP is only visible in mode assembler. 
     ADD #4,X                    \ X = BODY of SLEEP, X-2 = PFA of SLEEP
-    MOV X,-2(X)                 \ restore the default background
+    MOV X,-2(X)                 \ restore the default background: SLEEP
+    MOV #WARM,X
+    MOV #SYS_OUT,2(X)           \ default WARM is replaced by JMJ_BOX SYS_OUT (ended by default WARM)
+    BIC.B #RC5,&IR_IE           \ clear RC5_Int
+    BIC.B #RC5,&IR_IFG          \ clear RC5_Int flag
+    MOV #0,&LCD_TIM_CTL         \ stop LCD_TIMER
+    MOV #0,&WDT_TIM_CTL         \ stop WDT_TIMER
+    MOV #0,&WDT_TIM_CCTL0       \ clear CCIFG0 disable CCIE0
+    CALL #INIT_VECT             \ reset all vectors other than TERMINAL_int
 COLON                           \ restore default action of primary DEFERred word WARM (FORTH version)
-['] WARM >BODY IS WARM          \ restore the default WARM
 ECHO                            \
-." RC5toLCD is removed. type START to restart"
-COLD                            \ performs reset to reset all interrupt vectors.    
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM                           \ performs reset to reset all interrupt vectors.    
 ;
+\ ------------------------------\
 
 \ ------------------------------\
-CODE APP_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
+CODE SYS_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
 \ ------------------------------\
 \ LCD_TIM_CTL =  %0000 0010 1001 0100\$3C0
 \                    - -             \CNTL Counter lentgh \ 00 = 16 bits
@@ -19919,7 +30202,7 @@ CODE APP_INIT                   \ this routine completes the init of system, i.e
 \ ------------------------------\
 \ set LCD_TIM_ to make 50kHz PWM \ for LCD_Vo; works without interrupt
 \ ------------------------------\
-MOV #%1011010100,&LCD_TIM_CTL   \ SMCLK/8, up mode, clear timer, no int
+MOV #%10_1101_0100,&LCD_TIM_CTL \ SMCLK/8, up mode, clear timer, no int
 \    MOV #0,&LCD_TIM_EX0        \ predivide by 1 in LCD_TIM_EX0 register (8 MHZ)
 FREQ_KHZ @ 16000 = [IF]         \ if 16 MHz
     MOV #1,&LCD_TIM_EX0         \ predivide by 2 in LCD_TIM_EX0 register (16 MHZ)
@@ -19931,7 +30214,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \ ------------------------------\
 \ set LCD_TIM_.2 to generate PWM for LCD_Vo
 \ ------------------------------\
-    MOV #%01100000,&LCD_TIM_CCTLn \ output mode = set/reset \ clear CCIFG
+MOV #%0110_0000,&LCD_TIM_CCTLn  \ output mode = set/reset \ clear CCIFG
     MOV #10,&LCD_TIM_CCRn       \ contrast adjust : 10/20 ==> LCD_Vo = -0V6|+3V6 (Vcc=3V6)
 \    MOV #12,&LCD_TIM_CCRn        \ contrast adjust : 12/20 ==> LCD_Vo = -1V4|+3V3 (Vcc=3V3)
 \ ------------------------------\
@@ -19960,7 +30243,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \                         -     \ TAIE
 \                          -    \ TAIFG
 \ ------------------------------\
-    MOV #%0100010100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
+MOV #%01_0001_0100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
 \ ------------------------------\
 \                        000    \ TAxEX0
 \                        ---    \ TAIDEX    pre divisor
@@ -20026,23 +30309,213 @@ COLON                           \
     ['] CR >BODY IS CR          \ CR executes its default value
     ['] EMIT >BODY IS EMIT      \ EMIT executes its defaulte value
     ." RC5toLCD is running. Type STOP to quit" \ display message on FastForth Terminal
-    ABORT                       \ ...and end APP_INIT with ABORT, no return.
+    PWR_STATE ABORT             \ init DP and continues with ABORT
 ;                               \
+\ ------------------------------\
 
 \ ------------------------------\
 CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
 \ ------------------------------\
-MOV #SLEEP,X                    \ replace default background process
+MOV #SLEEP,X                    \ replace default background process SLEEP
 MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
 MOV #WARM,X                     \ replace default WARM
-MOV #APP_INIT,2(X)              \ by RC5toLCD APP_INIT
-MOV X,PC                        \ then execute it
+MOV #SYS_INIT,2(X)              \ by RC5toLCD SYS_INIT
+MOV X,PC                        \ then execute new WARM
 ENDCODE 
+\ ------------------------------\
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
 
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
 
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] CONSTANT [IF]
+\ https://forth-standard.org/standard/core/CONSTANT
+\ CONSTANT <name>     n --                      define a Forth CONSTANT 
+: CONSTANT 
+CREATE
+HI2LO
+MOV TOS,-2(W)           \   PFA = n
+MOV @PSP+,TOS
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] STATE [IF]
+\ https://forth-standard.org/standard/core/STATE
+\ STATE   -- a-addr       holds compiler state
+STATEADR CONSTANT STATE
+[THEN]
+
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+    MOV @IP+,PC \ 4
+THEN
+XOR #-1,TOS     \ 1 flag Z = 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE     \ immediate
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+\ https://forth-standard.org/standard/core/DEFER
+\ DEFER "<spaces>name"   --
+\ Skip leading space delimiters. Parse name delimited by a space.
+\ Create a definition for name with the execution semantics defined below.
+
+\ name Execution:   --
+\ Execute the xt that name is set to execute, i.e. NEXT (nothing),
+\ until the phrase ' word IS name is executed, causing a new value of xt to be assigned to name.
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(W)        \ CFA = MOV @PC+,PC = BR MOV @IP+,PC
+MOV #NEXT_ADR,-2(W)     \ PFA = address of MOV @IP+,PC to do nothing.
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEFER! [IF]
+\ https://forth-standard.org/standard/core/DEFERStore
+\ Set the word xt1 to execute xt2. An ambiguous condition exists if xt1 is not for a word defined by DEFER.
+CODE DEFER!             \ xt2 xt1 --
+MOV @PSP+,2(TOS)        \ -- xt1=CFA_DEFER          xt2 --> [CFA_DEFER+2]
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] IS [IF]
+\ https://forth-standard.org/standard/core/IS
+\ IS <name>        xt --
+\ used as is :
+\ DEFER DISPLAY                         create a "do nothing" definition (2 CELLS)
+\ inline command : ' U. IS DISPLAY      U. becomes the runtime of the word DISPLAY
+\ or in a definition : ... ['] U. IS DISPLAY ...
+\ KEY, EMIT, CR, ACCEPT and WARM are examples of DEFERred words
+\
+\ as IS replaces the PFA value of any word, it's a TO alias for VARIABLE and CONSTANT words...
+: IS
+STATE @
+IF  POSTPONE ['] POSTPONE DEFER! 
+ELSE ' DEFER! 
+THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+\ CODE 20uS           \ n --      8MHz version
+\ BEGIN               \ 4 + 16 ~ loop
+\     MOV #39,rDOCON   \ 39
+\     BEGIN           \ 4 ~ loop
+\         NOP
+\         SUB #1,rDOCON
+\     0=  UNTIL
+\     SUB #1,TOS      \ 1
+\ 0= UNTIL
+\ MOV #XDOCON,rDOCON  \ 2
+\ MOV @PSP+,TOS
+\ MOV @RSP+,IP        \
+\ ENDCODE
+
 CODE 20_US                      \ n --      n * 20 us
 BEGIN                           \ here we presume that LCD_TIM_IFG = 1...
     BEGIN
@@ -20056,8 +30529,8 @@ MOV @IP+,PC                     \ 4
 ENDCODE
 
 CODE TOP_LCD                    \ LCD Sample
-\                               \ if write : %xxxxWWWW --
-\                               \ if read  : -- %0000RRRR
+\                               \ if write : %xxxx_WWWW --
+\                               \ if read  : -- %0000_RRRR
     BIS.B #LCD_EN,&LCD_CMD_OUT  \ lcd_en 0-->1
     BIT.B #LCD_RW,&LCD_CMD_IN   \ lcd_rw test
 0= IF                           \ write LCD bits pattern
@@ -20078,8 +30551,8 @@ ENDCODE
 CODE LCD_WRC                    \ char --         Write Char
     BIS.B #LCD_RS,&LCD_CMD_OUT  \ lcd_rs=1
 BW1 SUB #2,PSP                  \
-    MOV TOS,0(PSP)              \ -- %xxxxLLLL %HHHHLLLL
-    RRUM #4,TOS                 \ -- %xxxxLLLL %xxxxHHHH
+    MOV TOS,0(PSP)              \ -- %xxxx_LLLL %HHHH_LLLL
+    RRUM #4,TOS                 \ -- %xxxx_LLLL %xxxx_HHHH
     BIC.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=0
     BIS.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as output
 COLON                           \ high level word starts here 
@@ -20119,11 +30592,11 @@ ENDCODE
 \ BW1 BIC.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as intput
 \     BIS.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=1
 \ COLON                           \ starts a FORTH word
-\     TOP_LCD 2 20_us             \ -- %0000HHHH
-\     TOP_LCD 2 20_us             \ -- %0000HHHH %0000LLLL
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH %0000_LLLL
 \ HI2LO                           \ switch from FORTH to assembler
-\     RLAM #4,0(PSP)              \ -- %HHHH0000 %0000LLLL
-\     ADD.B @PSP+,TOS             \ -- %HHHHLLLL
+\     RLAM #4,0(PSP)              \ -- %HHHH_0000 %0000_LLLL
+\     ADD.B @PSP+,TOS             \ -- %HHHH_LLLL
 \     MOV @RSP+,IP                \ restore IP saved by COLON
 \     MOV @IP+,PC                 \
 \ ENDCODE
@@ -20264,14 +30737,14 @@ MOV @PSP+,TOS                   \     -- TOS
 RET
 ENDASM
 
-\ ------------------------------\
+\ ******************************\
 ASM BACKGROUND                  \
-\ ------------------------------\
+\ ******************************\
 BEGIN
 \     ...                         \ insert here your background task
 \     ...                         \
 \     ...                         \
-    CALL &RXON                  \ comment this line to disable TERMINAL
+    CALL &RXON                  \ comment this line to disable TERMINAL_INPUT
     BIS &LPM_MODE,SR            \
 \ ******************************\
 \ here start all interrupts     \
@@ -20280,23 +30753,43 @@ BEGIN
 \ ******************************\
 AGAIN                           \
 ENDASM                          \
+\ ******************************\
+
+\ ------------------------------\
+ASM SYS_OUT                    \ system OUT init, replaces WARM at the request of STOP.
+\ ------------------------------\
+\     ...                         \ init specific I/O sys as you want
+\     ...                         \ before executing default WARM
+    MOV #WARM,X                 \ ['] WARM 
+    ADD #4,X                    \ >BODY
+    MOV X,PC                    \ EXECUTE    (which activates IO and TERMINAL)
+ENDASM
+\ ------------------------------\
 
 \ ------------------------------\
 CODE STOP                       \ stops multitasking, must to be used before downloading app
 \ ------------------------------\
-\ restore default action of primary DEFERred word SLEEP (assembly version)
 BW1 MOV #SLEEP,X                \ the ASM word SLEEP is only visible in mode assembler. 
     ADD #4,X                    \ X = BODY of SLEEP, X-2 = PFA of SLEEP
-    MOV X,-2(X)                 \ restore the default background
+    MOV X,-2(X)                 \ restore the default background: SLEEP
+    MOV #WARM,X
+    MOV #SYS_OUT,2(X)           \ default WARM is replaced by JMJ_BOX SYS_OUT (ended by default WARM)
+    BIC.B #RC5,&IR_IE           \ clear RC5_Int
+    BIC.B #RC5,&IR_IFG          \ clear RC5_Int flag
+    MOV #0,&LCD_TIM_CTL         \ stop LCD_TIMER
+    MOV #0,&WDT_TIM_CTL         \ stop WDT_TIMER
+    MOV #0,&WDT_TIM_CCTL0       \ clear CCIFG0 disable CCIE0
+    CALL #INIT_VECT             \ reset all vectors other than TERMINAL_int
 COLON                           \ restore default action of primary DEFERred word WARM (FORTH version)
-['] WARM >BODY IS WARM          \ restore the default WARM
 ECHO                            \
-." RC5toLCD is removed. type START to restart"
-COLD                            \ performs reset to reset all interrupt vectors.    
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM                           \ performs reset to reset all interrupt vectors.    
 ;
+\ ------------------------------\
 
 \ ------------------------------\
-CODE APP_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
+CODE SYS_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
 \ ------------------------------\
 \ LCD_TIM_CTL =  %0000 0010 1001 0100\$3C0
 \                    - -             \CNTL Counter lentgh \ 00 = 16 bits
@@ -20326,7 +30819,7 @@ CODE APP_INIT                   \ this routine completes the init of system, i.e
 \ ------------------------------\
 \ set LCD_TIM_ to make 50kHz PWM \ for LCD_Vo; works without interrupt
 \ ------------------------------\
-MOV #%1011010100,&LCD_TIM_CTL   \ SMCLK/8, up mode, clear timer, no int
+MOV #%10_1101_0100,&LCD_TIM_CTL \ SMCLK/8, up mode, clear timer, no int
 \    MOV #0,&LCD_TIM_EX0        \ predivide by 1 in LCD_TIM_EX0 register (8 MHZ)
 FREQ_KHZ @ 16000 = [IF]         \ if 16 MHz
     MOV #1,&LCD_TIM_EX0         \ predivide by 2 in LCD_TIM_EX0 register (16 MHZ)
@@ -20338,7 +30831,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \ ------------------------------\
 \ set LCD_TIM_.2 to generate PWM for LCD_Vo
 \ ------------------------------\
-    MOV #%01100000,&LCD_TIM_CCTLn \ output mode = set/reset \ clear CCIFG
+MOV #%0110_0000,&LCD_TIM_CCTLn  \ output mode = set/reset \ clear CCIFG
     MOV #10,&LCD_TIM_CCRn       \ contrast adjust : 10/20 ==> LCD_Vo = -0V6|+3V6 (Vcc=3V6)
 \    MOV #12,&LCD_TIM_CCRn        \ contrast adjust : 12/20 ==> LCD_Vo = -1V4|+3V3 (Vcc=3V3)
 \ ------------------------------\
@@ -20367,7 +30860,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \                         -     \ TAIE
 \                          -    \ TAIFG
 \ ------------------------------\
-    MOV #%0100010100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
+MOV #%01_0001_0100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
 \ ------------------------------\
 \                        000    \ TAxEX0
 \                        ---    \ TAIDEX    pre divisor
@@ -20433,22 +30926,212 @@ COLON                           \
     ['] CR >BODY IS CR          \ CR executes its default value
     ['] EMIT >BODY IS EMIT      \ EMIT executes its defaulte value
     ." RC5toLCD is running. Type STOP to quit" \ display message on FastForth Terminal
-    ABORT                       \ ...and end APP_INIT with ABORT, no return.
+    PWR_STATE ABORT             \ init DP and continues with ABORT
 ;                               \
+\ ------------------------------\
+
+\ ------------------------------\
+CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
+\ ------------------------------\
+MOV #SLEEP,X                    \ replace default background process SLEEP
+MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
+MOV #WARM,X                     \ replace default WARM
+MOV #SYS_INIT,2(X)              \ by RC5toLCD SYS_INIT
+MOV X,PC                        \ then execute new WARM
+ENDCODE 
+\ ------------------------------\
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
+
+[DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
+
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
+
+MARKER {RC5TOLCD}
+
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] CONSTANT [IF]
+\ https://forth-standard.org/standard/core/CONSTANT
+\ CONSTANT <name>     n --                      define a Forth CONSTANT 
+: CONSTANT 
+CREATE
+HI2LO
+MOV TOS,-2(W)           \   PFA = n
+MOV @PSP+,TOS
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] STATE [IF]
+\ https://forth-standard.org/standard/core/STATE
+\ STATE   -- a-addr       holds compiler state
+STATEADR CONSTANT STATE
+[THEN]
 
-\ ------------------------------\
-CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
-\ ------------------------------\
-MOV #SLEEP,X                    \ replace default background process
-MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
-MOV #WARM,X                     \ replace default WARM
-MOV #APP_INIT,2(X)              \ by RC5toLCD APP_INIT
-MOV X,PC                        \ then execute it
-ENDCODE 
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+    MOV @IP+,PC \ 4
+THEN
+XOR #-1,TOS     \ 1 flag Z = 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
 
-[DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE     \ immediate
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+\ https://forth-standard.org/standard/core/DEFER
+\ DEFER "<spaces>name"   --
+\ Skip leading space delimiters. Parse name delimited by a space.
+\ Create a definition for name with the execution semantics defined below.
+
+\ name Execution:   --
+\ Execute the xt that name is set to execute, i.e. NEXT (nothing),
+\ until the phrase ' word IS name is executed, causing a new value of xt to be assigned to name.
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(W)        \ CFA = MOV @PC+,PC = BR MOV @IP+,PC
+MOV #NEXT_ADR,-2(W)     \ PFA = address of MOV @IP+,PC to do nothing.
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
 
-MARKER {RC5TOLCD}
+[UNDEFINED] DEFER! [IF]
+\ https://forth-standard.org/standard/core/DEFERStore
+\ Set the word xt1 to execute xt2. An ambiguous condition exists if xt1 is not for a word defined by DEFER.
+CODE DEFER!             \ xt2 xt1 --
+MOV @PSP+,2(TOS)        \ -- xt1=CFA_DEFER          xt2 --> [CFA_DEFER+2]
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] IS [IF]
+\ https://forth-standard.org/standard/core/IS
+\ IS <name>        xt --
+\ used as is :
+\ DEFER DISPLAY                         create a "do nothing" definition (2 CELLS)
+\ inline command : ' U. IS DISPLAY      U. becomes the runtime of the word DISPLAY
+\ or in a definition : ... ['] U. IS DISPLAY ...
+\ KEY, EMIT, CR, ACCEPT and WARM are examples of DEFERred words
+\
+\ as IS replaces the PFA value of any word, it's a TO alias for VARIABLE and CONSTANT words...
+: IS
+STATE @
+IF  POSTPONE ['] POSTPONE DEFER! 
+ELSE ' DEFER! 
+THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+\ CODE 20uS           \ n --      8MHz version
+\ BEGIN               \ 4 + 16 ~ loop
+\     MOV #39,rDOCON   \ 39
+\     BEGIN           \ 4 ~ loop
+\         NOP
+\         SUB #1,rDOCON
+\     0=  UNTIL
+\     SUB #1,TOS      \ 1
+\ 0= UNTIL
+\ MOV #XDOCON,rDOCON  \ 2
+\ MOV @PSP+,TOS
+\ MOV @RSP+,IP        \
+\ ENDCODE
 
 CODE 20_US                      \ n --      n * 20 us
 BEGIN                           \ here we presume that LCD_TIM_IFG = 1...
@@ -20463,8 +31146,8 @@ MOV @IP+,PC                     \ 4
 ENDCODE
 
 CODE TOP_LCD                    \ LCD Sample
-\                               \ if write : %xxxxWWWW --
-\                               \ if read  : -- %0000RRRR
+\                               \ if write : %xxxx_WWWW --
+\                               \ if read  : -- %0000_RRRR
     BIS.B #LCD_EN,&LCD_CMD_OUT  \ lcd_en 0-->1
     BIT.B #LCD_RW,&LCD_CMD_IN   \ lcd_rw test
 0= IF                           \ write LCD bits pattern
@@ -20485,8 +31168,8 @@ ENDCODE
 CODE LCD_WRC                    \ char --         Write Char
     BIS.B #LCD_RS,&LCD_CMD_OUT  \ lcd_rs=1
 BW1 SUB #2,PSP                  \
-    MOV TOS,0(PSP)              \ -- %xxxxLLLL %HHHHLLLL
-    RRUM #4,TOS                 \ -- %xxxxLLLL %xxxxHHHH
+    MOV TOS,0(PSP)              \ -- %xxxx_LLLL %HHHH_LLLL
+    RRUM #4,TOS                 \ -- %xxxx_LLLL %xxxx_HHHH
     BIC.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=0
     BIS.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as output
 COLON                           \ high level word starts here 
@@ -20526,11 +31209,11 @@ ENDCODE
 \ BW1 BIC.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as intput
 \     BIS.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=1
 \ COLON                           \ starts a FORTH word
-\     TOP_LCD 2 20_us             \ -- %0000HHHH
-\     TOP_LCD 2 20_us             \ -- %0000HHHH %0000LLLL
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH %0000_LLLL
 \ HI2LO                           \ switch from FORTH to assembler
-\     RLAM #4,0(PSP)              \ -- %HHHH0000 %0000LLLL
-\     ADD.B @PSP+,TOS             \ -- %HHHHLLLL
+\     RLAM #4,0(PSP)              \ -- %HHHH_0000 %0000_LLLL
+\     ADD.B @PSP+,TOS             \ -- %HHHH_LLLL
 \     MOV @RSP+,IP                \ restore IP saved by COLON
 \     MOV @IP+,PC                 \
 \ ENDCODE
@@ -20671,14 +31354,14 @@ MOV @PSP+,TOS                   \     -- TOS
 RET
 ENDASM
 
-\ ------------------------------\
+\ ******************************\
 ASM BACKGROUND                  \
-\ ------------------------------\
+\ ******************************\
 BEGIN
 \     ...                         \ insert here your background task
 \     ...                         \
 \     ...                         \
-    CALL &RXON                  \ comment this line to disable TERMINAL
+    CALL &RXON                  \ comment this line to disable TERMINAL_INPUT
     BIS &LPM_MODE,SR            \
 \ ******************************\
 \ here start all interrupts     \
@@ -20687,23 +31370,43 @@ BEGIN
 \ ******************************\
 AGAIN                           \
 ENDASM                          \
+\ ******************************\
+
+\ ------------------------------\
+ASM SYS_OUT                    \ system OUT init, replaces WARM at the request of STOP.
+\ ------------------------------\
+\     ...                         \ init specific I/O sys as you want
+\     ...                         \ before executing default WARM
+    MOV #WARM,X                 \ ['] WARM 
+    ADD #4,X                    \ >BODY
+    MOV X,PC                    \ EXECUTE    (which activates IO and TERMINAL)
+ENDASM
+\ ------------------------------\
 
 \ ------------------------------\
 CODE STOP                       \ stops multitasking, must to be used before downloading app
 \ ------------------------------\
-\ restore default action of primary DEFERred word SLEEP (assembly version)
 BW1 MOV #SLEEP,X                \ the ASM word SLEEP is only visible in mode assembler. 
     ADD #4,X                    \ X = BODY of SLEEP, X-2 = PFA of SLEEP
-    MOV X,-2(X)                 \ restore the default background
+    MOV X,-2(X)                 \ restore the default background: SLEEP
+    MOV #WARM,X
+    MOV #SYS_OUT,2(X)           \ default WARM is replaced by JMJ_BOX SYS_OUT (ended by default WARM)
+    BIC.B #RC5,&IR_IE           \ clear RC5_Int
+    BIC.B #RC5,&IR_IFG          \ clear RC5_Int flag
+    MOV #0,&LCD_TIM_CTL         \ stop LCD_TIMER
+    MOV #0,&WDT_TIM_CTL         \ stop WDT_TIMER
+    MOV #0,&WDT_TIM_CCTL0       \ clear CCIFG0 disable CCIE0
+    CALL #INIT_VECT             \ reset all vectors other than TERMINAL_int
 COLON                           \ restore default action of primary DEFERred word WARM (FORTH version)
-['] WARM >BODY IS WARM          \ restore the default WARM
 ECHO                            \
-." RC5toLCD is removed. type START to restart"
-COLD                            \ performs reset to reset all interrupt vectors.    
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM                           \ performs reset to reset all interrupt vectors.    
 ;
+\ ------------------------------\
 
 \ ------------------------------\
-CODE APP_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
+CODE SYS_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
 \ ------------------------------\
 \ LCD_TIM_CTL =  %0000 0010 1001 0100\$3C0
 \                    - -             \CNTL Counter lentgh \ 00 = 16 bits
@@ -20733,7 +31436,7 @@ CODE APP_INIT                   \ this routine completes the init of system, i.e
 \ ------------------------------\
 \ set LCD_TIM_ to make 50kHz PWM \ for LCD_Vo; works without interrupt
 \ ------------------------------\
-MOV #%1011010100,&LCD_TIM_CTL   \ SMCLK/8, up mode, clear timer, no int
+MOV #%10_1101_0100,&LCD_TIM_CTL \ SMCLK/8, up mode, clear timer, no int
 \    MOV #0,&LCD_TIM_EX0        \ predivide by 1 in LCD_TIM_EX0 register (8 MHZ)
 FREQ_KHZ @ 16000 = [IF]         \ if 16 MHz
     MOV #1,&LCD_TIM_EX0         \ predivide by 2 in LCD_TIM_EX0 register (16 MHZ)
@@ -20745,7 +31448,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \ ------------------------------\
 \ set LCD_TIM_.2 to generate PWM for LCD_Vo
 \ ------------------------------\
-    MOV #%01100000,&LCD_TIM_CCTLn \ output mode = set/reset \ clear CCIFG
+MOV #%0110_0000,&LCD_TIM_CCTLn  \ output mode = set/reset \ clear CCIFG
     MOV #10,&LCD_TIM_CCRn       \ contrast adjust : 10/20 ==> LCD_Vo = -0V6|+3V6 (Vcc=3V6)
 \    MOV #12,&LCD_TIM_CCRn        \ contrast adjust : 12/20 ==> LCD_Vo = -1V4|+3V3 (Vcc=3V3)
 \ ------------------------------\
@@ -20774,7 +31477,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \                         -     \ TAIE
 \                          -    \ TAIFG
 \ ------------------------------\
-    MOV #%0100010100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
+MOV #%01_0001_0100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
 \ ------------------------------\
 \                        000    \ TAxEX0
 \                        ---    \ TAIDEX    pre divisor
@@ -20840,23 +31543,213 @@ COLON                           \
     ['] CR >BODY IS CR          \ CR executes its default value
     ['] EMIT >BODY IS EMIT      \ EMIT executes its defaulte value
     ." RC5toLCD is running. Type STOP to quit" \ display message on FastForth Terminal
-    ABORT                       \ ...and end APP_INIT with ABORT, no return.
+    PWR_STATE ABORT             \ init DP and continues with ABORT
 ;                               \
+\ ------------------------------\
 
 \ ------------------------------\
 CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
 \ ------------------------------\
-MOV #SLEEP,X                    \ replace default background process
+MOV #SLEEP,X                    \ replace default background process SLEEP
 MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
 MOV #WARM,X                     \ replace default WARM
-MOV #APP_INIT,2(X)              \ by RC5toLCD APP_INIT
-MOV X,PC                        \ then execute it
+MOV #SYS_INIT,2(X)              \ by RC5toLCD SYS_INIT
+MOV X,PC                        \ then execute new WARM
 ENDCODE 
+\ ------------------------------\
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
 
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
 
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] CONSTANT [IF]
+\ https://forth-standard.org/standard/core/CONSTANT
+\ CONSTANT <name>     n --                      define a Forth CONSTANT 
+: CONSTANT 
+CREATE
+HI2LO
+MOV TOS,-2(W)           \   PFA = n
+MOV @PSP+,TOS
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] STATE [IF]
+\ https://forth-standard.org/standard/core/STATE
+\ STATE   -- a-addr       holds compiler state
+STATEADR CONSTANT STATE
+[THEN]
+
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+    MOV @IP+,PC \ 4
+THEN
+XOR #-1,TOS     \ 1 flag Z = 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE     \ immediate
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+\ https://forth-standard.org/standard/core/DEFER
+\ DEFER "<spaces>name"   --
+\ Skip leading space delimiters. Parse name delimited by a space.
+\ Create a definition for name with the execution semantics defined below.
+
+\ name Execution:   --
+\ Execute the xt that name is set to execute, i.e. NEXT (nothing),
+\ until the phrase ' word IS name is executed, causing a new value of xt to be assigned to name.
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(W)        \ CFA = MOV @PC+,PC = BR MOV @IP+,PC
+MOV #NEXT_ADR,-2(W)     \ PFA = address of MOV @IP+,PC to do nothing.
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEFER! [IF]
+\ https://forth-standard.org/standard/core/DEFERStore
+\ Set the word xt1 to execute xt2. An ambiguous condition exists if xt1 is not for a word defined by DEFER.
+CODE DEFER!             \ xt2 xt1 --
+MOV @PSP+,2(TOS)        \ -- xt1=CFA_DEFER          xt2 --> [CFA_DEFER+2]
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] IS [IF]
+\ https://forth-standard.org/standard/core/IS
+\ IS <name>        xt --
+\ used as is :
+\ DEFER DISPLAY                         create a "do nothing" definition (2 CELLS)
+\ inline command : ' U. IS DISPLAY      U. becomes the runtime of the word DISPLAY
+\ or in a definition : ... ['] U. IS DISPLAY ...
+\ KEY, EMIT, CR, ACCEPT and WARM are examples of DEFERred words
+\
+\ as IS replaces the PFA value of any word, it's a TO alias for VARIABLE and CONSTANT words...
+: IS
+STATE @
+IF  POSTPONE ['] POSTPONE DEFER! 
+ELSE ' DEFER! 
+THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+\ CODE 20uS           \ n --      8MHz version
+\ BEGIN               \ 4 + 16 ~ loop
+\     MOV #39,rDOCON   \ 39
+\     BEGIN           \ 4 ~ loop
+\         NOP
+\         SUB #1,rDOCON
+\     0=  UNTIL
+\     SUB #1,TOS      \ 1
+\ 0= UNTIL
+\ MOV #XDOCON,rDOCON  \ 2
+\ MOV @PSP+,TOS
+\ MOV @RSP+,IP        \
+\ ENDCODE
+
 CODE 20_US                      \ n --      n * 20 us
 BEGIN                           \ here we presume that LCD_TIM_IFG = 1...
     BEGIN
@@ -20870,8 +31763,8 @@ MOV @IP+,PC                     \ 4
 ENDCODE
 
 CODE TOP_LCD                    \ LCD Sample
-\                               \ if write : %xxxxWWWW --
-\                               \ if read  : -- %0000RRRR
+\                               \ if write : %xxxx_WWWW --
+\                               \ if read  : -- %0000_RRRR
     BIS.B #LCD_EN,&LCD_CMD_OUT  \ lcd_en 0-->1
     BIT.B #LCD_RW,&LCD_CMD_IN   \ lcd_rw test
 0= IF                           \ write LCD bits pattern
@@ -20892,8 +31785,8 @@ ENDCODE
 CODE LCD_WRC                    \ char --         Write Char
     BIS.B #LCD_RS,&LCD_CMD_OUT  \ lcd_rs=1
 BW1 SUB #2,PSP                  \
-    MOV TOS,0(PSP)              \ -- %xxxxLLLL %HHHHLLLL
-    RRUM #4,TOS                 \ -- %xxxxLLLL %xxxxHHHH
+    MOV TOS,0(PSP)              \ -- %xxxx_LLLL %HHHH_LLLL
+    RRUM #4,TOS                 \ -- %xxxx_LLLL %xxxx_HHHH
     BIC.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=0
     BIS.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as output
 COLON                           \ high level word starts here 
@@ -20933,11 +31826,11 @@ ENDCODE
 \ BW1 BIC.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as intput
 \     BIS.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=1
 \ COLON                           \ starts a FORTH word
-\     TOP_LCD 2 20_us             \ -- %0000HHHH
-\     TOP_LCD 2 20_us             \ -- %0000HHHH %0000LLLL
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH %0000_LLLL
 \ HI2LO                           \ switch from FORTH to assembler
-\     RLAM #4,0(PSP)              \ -- %HHHH0000 %0000LLLL
-\     ADD.B @PSP+,TOS             \ -- %HHHHLLLL
+\     RLAM #4,0(PSP)              \ -- %HHHH_0000 %0000_LLLL
+\     ADD.B @PSP+,TOS             \ -- %HHHH_LLLL
 \     MOV @RSP+,IP                \ restore IP saved by COLON
 \     MOV @IP+,PC                 \
 \ ENDCODE
@@ -21078,14 +31971,14 @@ MOV @PSP+,TOS                   \     -- TOS
 RET
 ENDASM
 
-\ ------------------------------\
+\ ******************************\
 ASM BACKGROUND                  \
-\ ------------------------------\
+\ ******************************\
 BEGIN
 \     ...                         \ insert here your background task
 \     ...                         \
 \     ...                         \
-    CALL &RXON                  \ comment this line to disable TERMINAL
+    CALL &RXON                  \ comment this line to disable TERMINAL_INPUT
     BIS &LPM_MODE,SR            \
 \ ******************************\
 \ here start all interrupts     \
@@ -21094,23 +31987,43 @@ BEGIN
 \ ******************************\
 AGAIN                           \
 ENDASM                          \
+\ ******************************\
+
+\ ------------------------------\
+ASM SYS_OUT                    \ system OUT init, replaces WARM at the request of STOP.
+\ ------------------------------\
+\     ...                         \ init specific I/O sys as you want
+\     ...                         \ before executing default WARM
+    MOV #WARM,X                 \ ['] WARM 
+    ADD #4,X                    \ >BODY
+    MOV X,PC                    \ EXECUTE    (which activates IO and TERMINAL)
+ENDASM
+\ ------------------------------\
 
 \ ------------------------------\
 CODE STOP                       \ stops multitasking, must to be used before downloading app
 \ ------------------------------\
-\ restore default action of primary DEFERred word SLEEP (assembly version)
 BW1 MOV #SLEEP,X                \ the ASM word SLEEP is only visible in mode assembler. 
     ADD #4,X                    \ X = BODY of SLEEP, X-2 = PFA of SLEEP
-    MOV X,-2(X)                 \ restore the default background
+    MOV X,-2(X)                 \ restore the default background: SLEEP
+    MOV #WARM,X
+    MOV #SYS_OUT,2(X)           \ default WARM is replaced by JMJ_BOX SYS_OUT (ended by default WARM)
+    BIC.B #RC5,&IR_IE           \ clear RC5_Int
+    BIC.B #RC5,&IR_IFG          \ clear RC5_Int flag
+    MOV #0,&LCD_TIM_CTL         \ stop LCD_TIMER
+    MOV #0,&WDT_TIM_CTL         \ stop WDT_TIMER
+    MOV #0,&WDT_TIM_CCTL0       \ clear CCIFG0 disable CCIE0
+    CALL #INIT_VECT             \ reset all vectors other than TERMINAL_int
 COLON                           \ restore default action of primary DEFERred word WARM (FORTH version)
-['] WARM >BODY IS WARM          \ restore the default WARM
 ECHO                            \
-." RC5toLCD is removed. type START to restart"
-COLD                            \ performs reset to reset all interrupt vectors.    
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM                           \ performs reset to reset all interrupt vectors.    
 ;
+\ ------------------------------\
 
 \ ------------------------------\
-CODE APP_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
+CODE SYS_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
 \ ------------------------------\
 \ LCD_TIM_CTL =  %0000 0010 1001 0100\$3C0
 \                    - -             \CNTL Counter lentgh \ 00 = 16 bits
@@ -21140,7 +32053,7 @@ CODE APP_INIT                   \ this routine completes the init of system, i.e
 \ ------------------------------\
 \ set LCD_TIM_ to make 50kHz PWM \ for LCD_Vo; works without interrupt
 \ ------------------------------\
-MOV #%1011010100,&LCD_TIM_CTL   \ SMCLK/8, up mode, clear timer, no int
+MOV #%10_1101_0100,&LCD_TIM_CTL \ SMCLK/8, up mode, clear timer, no int
 \    MOV #0,&LCD_TIM_EX0        \ predivide by 1 in LCD_TIM_EX0 register (8 MHZ)
 FREQ_KHZ @ 16000 = [IF]         \ if 16 MHz
     MOV #1,&LCD_TIM_EX0         \ predivide by 2 in LCD_TIM_EX0 register (16 MHZ)
@@ -21152,7 +32065,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \ ------------------------------\
 \ set LCD_TIM_.2 to generate PWM for LCD_Vo
 \ ------------------------------\
-    MOV #%01100000,&LCD_TIM_CCTLn \ output mode = set/reset \ clear CCIFG
+MOV #%0110_0000,&LCD_TIM_CCTLn  \ output mode = set/reset \ clear CCIFG
     MOV #10,&LCD_TIM_CCRn       \ contrast adjust : 10/20 ==> LCD_Vo = -0V6|+3V6 (Vcc=3V6)
 \    MOV #12,&LCD_TIM_CCRn        \ contrast adjust : 12/20 ==> LCD_Vo = -1V4|+3V3 (Vcc=3V3)
 \ ------------------------------\
@@ -21181,7 +32094,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \                         -     \ TAIE
 \                          -    \ TAIFG
 \ ------------------------------\
-    MOV #%0100010100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
+MOV #%01_0001_0100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
 \ ------------------------------\
 \                        000    \ TAxEX0
 \                        ---    \ TAIDEX    pre divisor
@@ -21247,23 +32160,213 @@ COLON                           \
     ['] CR >BODY IS CR          \ CR executes its default value
     ['] EMIT >BODY IS EMIT      \ EMIT executes its defaulte value
     ." RC5toLCD is running. Type STOP to quit" \ display message on FastForth Terminal
-    ABORT                       \ ...and end APP_INIT with ABORT, no return.
+    PWR_STATE ABORT             \ init DP and continues with ABORT
 ;                               \
+\ ------------------------------\
 
 \ ------------------------------\
 CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
 \ ------------------------------\
-MOV #SLEEP,X                    \ replace default background process
+MOV #SLEEP,X                    \ replace default background process SLEEP
 MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
 MOV #WARM,X                     \ replace default WARM
-MOV #APP_INIT,2(X)              \ by RC5toLCD APP_INIT
-MOV X,PC                        \ then execute it
+MOV #SYS_INIT,2(X)              \ by RC5toLCD SYS_INIT
+MOV X,PC                        \ then execute new WARM
 ENDCODE 
+\ ------------------------------\
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
 
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
 
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] CONSTANT [IF]
+\ https://forth-standard.org/standard/core/CONSTANT
+\ CONSTANT <name>     n --                      define a Forth CONSTANT 
+: CONSTANT 
+CREATE
+HI2LO
+MOV TOS,-2(W)           \   PFA = n
+MOV @PSP+,TOS
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] STATE [IF]
+\ https://forth-standard.org/standard/core/STATE
+\ STATE   -- a-addr       holds compiler state
+STATEADR CONSTANT STATE
+[THEN]
+
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+    MOV @IP+,PC \ 4
+THEN
+XOR #-1,TOS     \ 1 flag Z = 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE     \ immediate
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+\ https://forth-standard.org/standard/core/DEFER
+\ DEFER "<spaces>name"   --
+\ Skip leading space delimiters. Parse name delimited by a space.
+\ Create a definition for name with the execution semantics defined below.
+
+\ name Execution:   --
+\ Execute the xt that name is set to execute, i.e. NEXT (nothing),
+\ until the phrase ' word IS name is executed, causing a new value of xt to be assigned to name.
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(W)        \ CFA = MOV @PC+,PC = BR MOV @IP+,PC
+MOV #NEXT_ADR,-2(W)     \ PFA = address of MOV @IP+,PC to do nothing.
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEFER! [IF]
+\ https://forth-standard.org/standard/core/DEFERStore
+\ Set the word xt1 to execute xt2. An ambiguous condition exists if xt1 is not for a word defined by DEFER.
+CODE DEFER!             \ xt2 xt1 --
+MOV @PSP+,2(TOS)        \ -- xt1=CFA_DEFER          xt2 --> [CFA_DEFER+2]
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] IS [IF]
+\ https://forth-standard.org/standard/core/IS
+\ IS <name>        xt --
+\ used as is :
+\ DEFER DISPLAY                         create a "do nothing" definition (2 CELLS)
+\ inline command : ' U. IS DISPLAY      U. becomes the runtime of the word DISPLAY
+\ or in a definition : ... ['] U. IS DISPLAY ...
+\ KEY, EMIT, CR, ACCEPT and WARM are examples of DEFERred words
+\
+\ as IS replaces the PFA value of any word, it's a TO alias for VARIABLE and CONSTANT words...
+: IS
+STATE @
+IF  POSTPONE ['] POSTPONE DEFER! 
+ELSE ' DEFER! 
+THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+\ CODE 20uS           \ n --      8MHz version
+\ BEGIN               \ 4 + 16 ~ loop
+\     MOV #39,rDOCON   \ 39
+\     BEGIN           \ 4 ~ loop
+\         NOP
+\         SUB #1,rDOCON
+\     0=  UNTIL
+\     SUB #1,TOS      \ 1
+\ 0= UNTIL
+\ MOV #XDOCON,rDOCON  \ 2
+\ MOV @PSP+,TOS
+\ MOV @RSP+,IP        \
+\ ENDCODE
+
 CODE 20_US                      \ n --      n * 20 us
 BEGIN                           \ here we presume that LCD_TIM_IFG = 1...
     BEGIN
@@ -21277,8 +32380,8 @@ MOV @IP+,PC                     \ 4
 ENDCODE
 
 CODE TOP_LCD                    \ LCD Sample
-\                               \ if write : %xxxxWWWW --
-\                               \ if read  : -- %0000RRRR
+\                               \ if write : %xxxx_WWWW --
+\                               \ if read  : -- %0000_RRRR
     BIS.B #LCD_EN,&LCD_CMD_OUT  \ lcd_en 0-->1
     BIT.B #LCD_RW,&LCD_CMD_IN   \ lcd_rw test
 0= IF                           \ write LCD bits pattern
@@ -21299,8 +32402,8 @@ ENDCODE
 CODE LCD_WRC                    \ char --         Write Char
     BIS.B #LCD_RS,&LCD_CMD_OUT  \ lcd_rs=1
 BW1 SUB #2,PSP                  \
-    MOV TOS,0(PSP)              \ -- %xxxxLLLL %HHHHLLLL
-    RRUM #4,TOS                 \ -- %xxxxLLLL %xxxxHHHH
+    MOV TOS,0(PSP)              \ -- %xxxx_LLLL %HHHH_LLLL
+    RRUM #4,TOS                 \ -- %xxxx_LLLL %xxxx_HHHH
     BIC.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=0
     BIS.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as output
 COLON                           \ high level word starts here 
@@ -21340,11 +32443,11 @@ ENDCODE
 \ BW1 BIC.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as intput
 \     BIS.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=1
 \ COLON                           \ starts a FORTH word
-\     TOP_LCD 2 20_us             \ -- %0000HHHH
-\     TOP_LCD 2 20_us             \ -- %0000HHHH %0000LLLL
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH %0000_LLLL
 \ HI2LO                           \ switch from FORTH to assembler
-\     RLAM #4,0(PSP)              \ -- %HHHH0000 %0000LLLL
-\     ADD.B @PSP+,TOS             \ -- %HHHHLLLL
+\     RLAM #4,0(PSP)              \ -- %HHHH_0000 %0000_LLLL
+\     ADD.B @PSP+,TOS             \ -- %HHHH_LLLL
 \     MOV @RSP+,IP                \ restore IP saved by COLON
 \     MOV @IP+,PC                 \
 \ ENDCODE
@@ -21485,14 +32588,14 @@ MOV @PSP+,TOS                   \     -- TOS
 RET
 ENDASM
 
-\ ------------------------------\
+\ ******************************\
 ASM BACKGROUND                  \
-\ ------------------------------\
+\ ******************************\
 BEGIN
 \     ...                         \ insert here your background task
 \     ...                         \
 \     ...                         \
-    CALL &RXON                  \ comment this line to disable TERMINAL
+    CALL &RXON                  \ comment this line to disable TERMINAL_INPUT
     BIS &LPM_MODE,SR            \
 \ ******************************\
 \ here start all interrupts     \
@@ -21501,23 +32604,43 @@ BEGIN
 \ ******************************\
 AGAIN                           \
 ENDASM                          \
+\ ******************************\
+
+\ ------------------------------\
+ASM SYS_OUT                    \ system OUT init, replaces WARM at the request of STOP.
+\ ------------------------------\
+\     ...                         \ init specific I/O sys as you want
+\     ...                         \ before executing default WARM
+    MOV #WARM,X                 \ ['] WARM 
+    ADD #4,X                    \ >BODY
+    MOV X,PC                    \ EXECUTE    (which activates IO and TERMINAL)
+ENDASM
+\ ------------------------------\
 
 \ ------------------------------\
 CODE STOP                       \ stops multitasking, must to be used before downloading app
 \ ------------------------------\
-\ restore default action of primary DEFERred word SLEEP (assembly version)
 BW1 MOV #SLEEP,X                \ the ASM word SLEEP is only visible in mode assembler. 
     ADD #4,X                    \ X = BODY of SLEEP, X-2 = PFA of SLEEP
-    MOV X,-2(X)                 \ restore the default background
+    MOV X,-2(X)                 \ restore the default background: SLEEP
+    MOV #WARM,X
+    MOV #SYS_OUT,2(X)           \ default WARM is replaced by JMJ_BOX SYS_OUT (ended by default WARM)
+    BIC.B #RC5,&IR_IE           \ clear RC5_Int
+    BIC.B #RC5,&IR_IFG          \ clear RC5_Int flag
+    MOV #0,&LCD_TIM_CTL         \ stop LCD_TIMER
+    MOV #0,&WDT_TIM_CTL         \ stop WDT_TIMER
+    MOV #0,&WDT_TIM_CCTL0       \ clear CCIFG0 disable CCIE0
+    CALL #INIT_VECT             \ reset all vectors other than TERMINAL_int
 COLON                           \ restore default action of primary DEFERred word WARM (FORTH version)
-['] WARM >BODY IS WARM          \ restore the default WARM
 ECHO                            \
-." RC5toLCD is removed. type START to restart"
-COLD                            \ performs reset to reset all interrupt vectors.    
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM                           \ performs reset to reset all interrupt vectors.    
 ;
+\ ------------------------------\
 
 \ ------------------------------\
-CODE APP_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
+CODE SYS_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
 \ ------------------------------\
 \ LCD_TIM_CTL =  %0000 0010 1001 0100\$3C0
 \                    - -             \CNTL Counter lentgh \ 00 = 16 bits
@@ -21547,7 +32670,7 @@ CODE APP_INIT                   \ this routine completes the init of system, i.e
 \ ------------------------------\
 \ set LCD_TIM_ to make 50kHz PWM \ for LCD_Vo; works without interrupt
 \ ------------------------------\
-MOV #%1011010100,&LCD_TIM_CTL   \ SMCLK/8, up mode, clear timer, no int
+MOV #%10_1101_0100,&LCD_TIM_CTL \ SMCLK/8, up mode, clear timer, no int
 \    MOV #0,&LCD_TIM_EX0        \ predivide by 1 in LCD_TIM_EX0 register (8 MHZ)
 FREQ_KHZ @ 16000 = [IF]         \ if 16 MHz
     MOV #1,&LCD_TIM_EX0         \ predivide by 2 in LCD_TIM_EX0 register (16 MHZ)
@@ -21559,7 +32682,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \ ------------------------------\
 \ set LCD_TIM_.2 to generate PWM for LCD_Vo
 \ ------------------------------\
-    MOV #%01100000,&LCD_TIM_CCTLn \ output mode = set/reset \ clear CCIFG
+MOV #%0110_0000,&LCD_TIM_CCTLn  \ output mode = set/reset \ clear CCIFG
     MOV #10,&LCD_TIM_CCRn       \ contrast adjust : 10/20 ==> LCD_Vo = -0V6|+3V6 (Vcc=3V6)
 \    MOV #12,&LCD_TIM_CCRn        \ contrast adjust : 12/20 ==> LCD_Vo = -1V4|+3V3 (Vcc=3V3)
 \ ------------------------------\
@@ -21588,7 +32711,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \                         -     \ TAIE
 \                          -    \ TAIFG
 \ ------------------------------\
-    MOV #%0100010100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
+MOV #%01_0001_0100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
 \ ------------------------------\
 \                        000    \ TAxEX0
 \                        ---    \ TAIDEX    pre divisor
@@ -21654,23 +32777,213 @@ COLON                           \
     ['] CR >BODY IS CR          \ CR executes its default value
     ['] EMIT >BODY IS EMIT      \ EMIT executes its defaulte value
     ." RC5toLCD is running. Type STOP to quit" \ display message on FastForth Terminal
-    ABORT                       \ ...and end APP_INIT with ABORT, no return.
+    PWR_STATE ABORT             \ init DP and continues with ABORT
 ;                               \
+\ ------------------------------\
 
 \ ------------------------------\
 CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
 \ ------------------------------\
-MOV #SLEEP,X                    \ replace default background process
+MOV #SLEEP,X                    \ replace default background process SLEEP
 MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
 MOV #WARM,X                     \ replace default WARM
-MOV #APP_INIT,2(X)              \ by RC5toLCD APP_INIT
-MOV X,PC                        \ then execute it
+MOV #SYS_INIT,2(X)              \ by RC5toLCD SYS_INIT
+MOV X,PC                        \ then execute new WARM
 ENDCODE 
+\ ------------------------------\
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
 
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
 
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] CONSTANT [IF]
+\ https://forth-standard.org/standard/core/CONSTANT
+\ CONSTANT <name>     n --                      define a Forth CONSTANT 
+: CONSTANT 
+CREATE
+HI2LO
+MOV TOS,-2(W)           \   PFA = n
+MOV @PSP+,TOS
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] STATE [IF]
+\ https://forth-standard.org/standard/core/STATE
+\ STATE   -- a-addr       holds compiler state
+STATEADR CONSTANT STATE
+[THEN]
+
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+    MOV @IP+,PC \ 4
+THEN
+XOR #-1,TOS     \ 1 flag Z = 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE     \ immediate
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+\ https://forth-standard.org/standard/core/DEFER
+\ DEFER "<spaces>name"   --
+\ Skip leading space delimiters. Parse name delimited by a space.
+\ Create a definition for name with the execution semantics defined below.
+
+\ name Execution:   --
+\ Execute the xt that name is set to execute, i.e. NEXT (nothing),
+\ until the phrase ' word IS name is executed, causing a new value of xt to be assigned to name.
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(W)        \ CFA = MOV @PC+,PC = BR MOV @IP+,PC
+MOV #NEXT_ADR,-2(W)     \ PFA = address of MOV @IP+,PC to do nothing.
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEFER! [IF]
+\ https://forth-standard.org/standard/core/DEFERStore
+\ Set the word xt1 to execute xt2. An ambiguous condition exists if xt1 is not for a word defined by DEFER.
+CODE DEFER!             \ xt2 xt1 --
+MOV @PSP+,2(TOS)        \ -- xt1=CFA_DEFER          xt2 --> [CFA_DEFER+2]
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] IS [IF]
+\ https://forth-standard.org/standard/core/IS
+\ IS <name>        xt --
+\ used as is :
+\ DEFER DISPLAY                         create a "do nothing" definition (2 CELLS)
+\ inline command : ' U. IS DISPLAY      U. becomes the runtime of the word DISPLAY
+\ or in a definition : ... ['] U. IS DISPLAY ...
+\ KEY, EMIT, CR, ACCEPT and WARM are examples of DEFERred words
+\
+\ as IS replaces the PFA value of any word, it's a TO alias for VARIABLE and CONSTANT words...
+: IS
+STATE @
+IF  POSTPONE ['] POSTPONE DEFER! 
+ELSE ' DEFER! 
+THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+\ CODE 20uS           \ n --      8MHz version
+\ BEGIN               \ 4 + 16 ~ loop
+\     MOV #39,rDOCON   \ 39
+\     BEGIN           \ 4 ~ loop
+\         NOP
+\         SUB #1,rDOCON
+\     0=  UNTIL
+\     SUB #1,TOS      \ 1
+\ 0= UNTIL
+\ MOV #XDOCON,rDOCON  \ 2
+\ MOV @PSP+,TOS
+\ MOV @RSP+,IP        \
+\ ENDCODE
+
 CODE 20_US                      \ n --      n * 20 us
 BEGIN                           \ here we presume that LCD_TIM_IFG = 1...
     BEGIN
@@ -21684,8 +32997,8 @@ MOV @IP+,PC                     \ 4
 ENDCODE
 
 CODE TOP_LCD                    \ LCD Sample
-\                               \ if write : %xxxxWWWW --
-\                               \ if read  : -- %0000RRRR
+\                               \ if write : %xxxx_WWWW --
+\                               \ if read  : -- %0000_RRRR
     BIS.B #LCD_EN,&LCD_CMD_OUT  \ lcd_en 0-->1
     BIT.B #LCD_RW,&LCD_CMD_IN   \ lcd_rw test
 0= IF                           \ write LCD bits pattern
@@ -21706,8 +33019,8 @@ ENDCODE
 CODE LCD_WRC                    \ char --         Write Char
     BIS.B #LCD_RS,&LCD_CMD_OUT  \ lcd_rs=1
 BW1 SUB #2,PSP                  \
-    MOV TOS,0(PSP)              \ -- %xxxxLLLL %HHHHLLLL
-    RRUM #4,TOS                 \ -- %xxxxLLLL %xxxxHHHH
+    MOV TOS,0(PSP)              \ -- %xxxx_LLLL %HHHH_LLLL
+    RRUM #4,TOS                 \ -- %xxxx_LLLL %xxxx_HHHH
     BIC.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=0
     BIS.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as output
 COLON                           \ high level word starts here 
@@ -21747,11 +33060,11 @@ ENDCODE
 \ BW1 BIC.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as intput
 \     BIS.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=1
 \ COLON                           \ starts a FORTH word
-\     TOP_LCD 2 20_us             \ -- %0000HHHH
-\     TOP_LCD 2 20_us             \ -- %0000HHHH %0000LLLL
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH %0000_LLLL
 \ HI2LO                           \ switch from FORTH to assembler
-\     RLAM #4,0(PSP)              \ -- %HHHH0000 %0000LLLL
-\     ADD.B @PSP+,TOS             \ -- %HHHHLLLL
+\     RLAM #4,0(PSP)              \ -- %HHHH_0000 %0000_LLLL
+\     ADD.B @PSP+,TOS             \ -- %HHHH_LLLL
 \     MOV @RSP+,IP                \ restore IP saved by COLON
 \     MOV @IP+,PC                 \
 \ ENDCODE
@@ -21892,14 +33205,14 @@ MOV @PSP+,TOS                   \     -- TOS
 RET
 ENDASM
 
-\ ------------------------------\
+\ ******************************\
 ASM BACKGROUND                  \
-\ ------------------------------\
+\ ******************************\
 BEGIN
 \     ...                         \ insert here your background task
 \     ...                         \
 \     ...                         \
-    CALL &RXON                  \ comment this line to disable TERMINAL
+    CALL &RXON                  \ comment this line to disable TERMINAL_INPUT
     BIS &LPM_MODE,SR            \
 \ ******************************\
 \ here start all interrupts     \
@@ -21908,23 +33221,43 @@ BEGIN
 \ ******************************\
 AGAIN                           \
 ENDASM                          \
+\ ******************************\
+
+\ ------------------------------\
+ASM SYS_OUT                    \ system OUT init, replaces WARM at the request of STOP.
+\ ------------------------------\
+\     ...                         \ init specific I/O sys as you want
+\     ...                         \ before executing default WARM
+    MOV #WARM,X                 \ ['] WARM 
+    ADD #4,X                    \ >BODY
+    MOV X,PC                    \ EXECUTE    (which activates IO and TERMINAL)
+ENDASM
+\ ------------------------------\
 
 \ ------------------------------\
 CODE STOP                       \ stops multitasking, must to be used before downloading app
 \ ------------------------------\
-\ restore default action of primary DEFERred word SLEEP (assembly version)
 BW1 MOV #SLEEP,X                \ the ASM word SLEEP is only visible in mode assembler. 
     ADD #4,X                    \ X = BODY of SLEEP, X-2 = PFA of SLEEP
-    MOV X,-2(X)                 \ restore the default background
+    MOV X,-2(X)                 \ restore the default background: SLEEP
+    MOV #WARM,X
+    MOV #SYS_OUT,2(X)           \ default WARM is replaced by JMJ_BOX SYS_OUT (ended by default WARM)
+    BIC.B #RC5,&IR_IE           \ clear RC5_Int
+    BIC.B #RC5,&IR_IFG          \ clear RC5_Int flag
+    MOV #0,&LCD_TIM_CTL         \ stop LCD_TIMER
+    MOV #0,&WDT_TIM_CTL         \ stop WDT_TIMER
+    MOV #0,&WDT_TIM_CCTL0       \ clear CCIFG0 disable CCIE0
+    CALL #INIT_VECT             \ reset all vectors other than TERMINAL_int
 COLON                           \ restore default action of primary DEFERred word WARM (FORTH version)
-['] WARM >BODY IS WARM          \ restore the default WARM
 ECHO                            \
-." RC5toLCD is removed. type START to restart"
-COLD                            \ performs reset to reset all interrupt vectors.    
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM                           \ performs reset to reset all interrupt vectors.    
 ;
+\ ------------------------------\
 
 \ ------------------------------\
-CODE APP_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
+CODE SYS_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
 \ ------------------------------\
 \ LCD_TIM_CTL =  %0000 0010 1001 0100\$3C0
 \                    - -             \CNTL Counter lentgh \ 00 = 16 bits
@@ -21954,7 +33287,7 @@ CODE APP_INIT                   \ this routine completes the init of system, i.e
 \ ------------------------------\
 \ set LCD_TIM_ to make 50kHz PWM \ for LCD_Vo; works without interrupt
 \ ------------------------------\
-MOV #%1011010100,&LCD_TIM_CTL   \ SMCLK/8, up mode, clear timer, no int
+MOV #%10_1101_0100,&LCD_TIM_CTL \ SMCLK/8, up mode, clear timer, no int
 \    MOV #0,&LCD_TIM_EX0        \ predivide by 1 in LCD_TIM_EX0 register (8 MHZ)
 FREQ_KHZ @ 16000 = [IF]         \ if 16 MHz
     MOV #1,&LCD_TIM_EX0         \ predivide by 2 in LCD_TIM_EX0 register (16 MHZ)
@@ -21966,7 +33299,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \ ------------------------------\
 \ set LCD_TIM_.2 to generate PWM for LCD_Vo
 \ ------------------------------\
-    MOV #%01100000,&LCD_TIM_CCTLn \ output mode = set/reset \ clear CCIFG
+MOV #%0110_0000,&LCD_TIM_CCTLn  \ output mode = set/reset \ clear CCIFG
     MOV #10,&LCD_TIM_CCRn       \ contrast adjust : 10/20 ==> LCD_Vo = -0V6|+3V6 (Vcc=3V6)
 \    MOV #12,&LCD_TIM_CCRn        \ contrast adjust : 12/20 ==> LCD_Vo = -1V4|+3V3 (Vcc=3V3)
 \ ------------------------------\
@@ -21995,7 +33328,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \                         -     \ TAIE
 \                          -    \ TAIFG
 \ ------------------------------\
-    MOV #%0100010100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
+MOV #%01_0001_0100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
 \ ------------------------------\
 \                        000    \ TAxEX0
 \                        ---    \ TAIDEX    pre divisor
@@ -22061,23 +33394,213 @@ COLON                           \
     ['] CR >BODY IS CR          \ CR executes its default value
     ['] EMIT >BODY IS EMIT      \ EMIT executes its defaulte value
     ." RC5toLCD is running. Type STOP to quit" \ display message on FastForth Terminal
-    ABORT                       \ ...and end APP_INIT with ABORT, no return.
+    PWR_STATE ABORT             \ init DP and continues with ABORT
 ;                               \
+\ ------------------------------\
 
 \ ------------------------------\
 CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
 \ ------------------------------\
-MOV #SLEEP,X                    \ replace default background process
+MOV #SLEEP,X                    \ replace default background process SLEEP
 MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
 MOV #WARM,X                     \ replace default WARM
-MOV #APP_INIT,2(X)              \ by RC5toLCD APP_INIT
-MOV X,PC                        \ then execute it
+MOV #SYS_INIT,2(X)              \ by RC5toLCD SYS_INIT
+MOV X,PC                        \ then execute new WARM
 ENDCODE 
+\ ------------------------------\
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
 
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
 
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] CONSTANT [IF]
+\ https://forth-standard.org/standard/core/CONSTANT
+\ CONSTANT <name>     n --                      define a Forth CONSTANT 
+: CONSTANT 
+CREATE
+HI2LO
+MOV TOS,-2(W)           \   PFA = n
+MOV @PSP+,TOS
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] STATE [IF]
+\ https://forth-standard.org/standard/core/STATE
+\ STATE   -- a-addr       holds compiler state
+STATEADR CONSTANT STATE
+[THEN]
+
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+    MOV @IP+,PC \ 4
+THEN
+XOR #-1,TOS     \ 1 flag Z = 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE     \ immediate
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+\ https://forth-standard.org/standard/core/DEFER
+\ DEFER "<spaces>name"   --
+\ Skip leading space delimiters. Parse name delimited by a space.
+\ Create a definition for name with the execution semantics defined below.
+
+\ name Execution:   --
+\ Execute the xt that name is set to execute, i.e. NEXT (nothing),
+\ until the phrase ' word IS name is executed, causing a new value of xt to be assigned to name.
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(W)        \ CFA = MOV @PC+,PC = BR MOV @IP+,PC
+MOV #NEXT_ADR,-2(W)     \ PFA = address of MOV @IP+,PC to do nothing.
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEFER! [IF]
+\ https://forth-standard.org/standard/core/DEFERStore
+\ Set the word xt1 to execute xt2. An ambiguous condition exists if xt1 is not for a word defined by DEFER.
+CODE DEFER!             \ xt2 xt1 --
+MOV @PSP+,2(TOS)        \ -- xt1=CFA_DEFER          xt2 --> [CFA_DEFER+2]
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] IS [IF]
+\ https://forth-standard.org/standard/core/IS
+\ IS <name>        xt --
+\ used as is :
+\ DEFER DISPLAY                         create a "do nothing" definition (2 CELLS)
+\ inline command : ' U. IS DISPLAY      U. becomes the runtime of the word DISPLAY
+\ or in a definition : ... ['] U. IS DISPLAY ...
+\ KEY, EMIT, CR, ACCEPT and WARM are examples of DEFERred words
+\
+\ as IS replaces the PFA value of any word, it's a TO alias for VARIABLE and CONSTANT words...
+: IS
+STATE @
+IF  POSTPONE ['] POSTPONE DEFER! 
+ELSE ' DEFER! 
+THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+\ CODE 20uS           \ n --      8MHz version
+\ BEGIN               \ 4 + 16 ~ loop
+\     MOV #39,rDOCON   \ 39
+\     BEGIN           \ 4 ~ loop
+\         NOP
+\         SUB #1,rDOCON
+\     0=  UNTIL
+\     SUB #1,TOS      \ 1
+\ 0= UNTIL
+\ MOV #XDOCON,rDOCON  \ 2
+\ MOV @PSP+,TOS
+\ MOV @RSP+,IP        \
+\ ENDCODE
+
 CODE 20_US                      \ n --      n * 20 us
 BEGIN                           \ here we presume that LCD_TIM_IFG = 1...
     BEGIN
@@ -22091,8 +33614,8 @@ MOV @IP+,PC                     \ 4
 ENDCODE
 
 CODE TOP_LCD                    \ LCD Sample
-\                               \ if write : %xxxxWWWW --
-\                               \ if read  : -- %0000RRRR
+\                               \ if write : %xxxx_WWWW --
+\                               \ if read  : -- %0000_RRRR
     BIS.B #LCD_EN,&LCD_CMD_OUT  \ lcd_en 0-->1
     BIT.B #LCD_RW,&LCD_CMD_IN   \ lcd_rw test
 0= IF                           \ write LCD bits pattern
@@ -22113,8 +33636,8 @@ ENDCODE
 CODE LCD_WRC                    \ char --         Write Char
     BIS.B #LCD_RS,&LCD_CMD_OUT  \ lcd_rs=1
 BW1 SUB #2,PSP                  \
-    MOV TOS,0(PSP)              \ -- %xxxxLLLL %HHHHLLLL
-    RRUM #4,TOS                 \ -- %xxxxLLLL %xxxxHHHH
+    MOV TOS,0(PSP)              \ -- %xxxx_LLLL %HHHH_LLLL
+    RRUM #4,TOS                 \ -- %xxxx_LLLL %xxxx_HHHH
     BIC.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=0
     BIS.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as output
 COLON                           \ high level word starts here 
@@ -22154,11 +33677,11 @@ ENDCODE
 \ BW1 BIC.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as intput
 \     BIS.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=1
 \ COLON                           \ starts a FORTH word
-\     TOP_LCD 2 20_us             \ -- %0000HHHH
-\     TOP_LCD 2 20_us             \ -- %0000HHHH %0000LLLL
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH %0000_LLLL
 \ HI2LO                           \ switch from FORTH to assembler
-\     RLAM #4,0(PSP)              \ -- %HHHH0000 %0000LLLL
-\     ADD.B @PSP+,TOS             \ -- %HHHHLLLL
+\     RLAM #4,0(PSP)              \ -- %HHHH_0000 %0000_LLLL
+\     ADD.B @PSP+,TOS             \ -- %HHHH_LLLL
 \     MOV @RSP+,IP                \ restore IP saved by COLON
 \     MOV @IP+,PC                 \
 \ ENDCODE
@@ -22299,14 +33822,14 @@ MOV @PSP+,TOS                   \     -- TOS
 RET
 ENDASM
 
-\ ------------------------------\
+\ ******************************\
 ASM BACKGROUND                  \
-\ ------------------------------\
+\ ******************************\
 BEGIN
 \     ...                         \ insert here your background task
 \     ...                         \
 \     ...                         \
-    CALL &RXON                  \ comment this line to disable TERMINAL
+    CALL &RXON                  \ comment this line to disable TERMINAL_INPUT
     BIS &LPM_MODE,SR            \
 \ ******************************\
 \ here start all interrupts     \
@@ -22315,23 +33838,43 @@ BEGIN
 \ ******************************\
 AGAIN                           \
 ENDASM                          \
+\ ******************************\
+
+\ ------------------------------\
+ASM SYS_OUT                    \ system OUT init, replaces WARM at the request of STOP.
+\ ------------------------------\
+\     ...                         \ init specific I/O sys as you want
+\     ...                         \ before executing default WARM
+    MOV #WARM,X                 \ ['] WARM 
+    ADD #4,X                    \ >BODY
+    MOV X,PC                    \ EXECUTE    (which activates IO and TERMINAL)
+ENDASM
+\ ------------------------------\
 
 \ ------------------------------\
 CODE STOP                       \ stops multitasking, must to be used before downloading app
 \ ------------------------------\
-\ restore default action of primary DEFERred word SLEEP (assembly version)
 BW1 MOV #SLEEP,X                \ the ASM word SLEEP is only visible in mode assembler. 
     ADD #4,X                    \ X = BODY of SLEEP, X-2 = PFA of SLEEP
-    MOV X,-2(X)                 \ restore the default background
+    MOV X,-2(X)                 \ restore the default background: SLEEP
+    MOV #WARM,X
+    MOV #SYS_OUT,2(X)           \ default WARM is replaced by JMJ_BOX SYS_OUT (ended by default WARM)
+    BIC.B #RC5,&IR_IE           \ clear RC5_Int
+    BIC.B #RC5,&IR_IFG          \ clear RC5_Int flag
+    MOV #0,&LCD_TIM_CTL         \ stop LCD_TIMER
+    MOV #0,&WDT_TIM_CTL         \ stop WDT_TIMER
+    MOV #0,&WDT_TIM_CCTL0       \ clear CCIFG0 disable CCIE0
+    CALL #INIT_VECT             \ reset all vectors other than TERMINAL_int
 COLON                           \ restore default action of primary DEFERred word WARM (FORTH version)
-['] WARM >BODY IS WARM          \ restore the default WARM
 ECHO                            \
-." RC5toLCD is removed. type START to restart"
-COLD                            \ performs reset to reset all interrupt vectors.    
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM                           \ performs reset to reset all interrupt vectors.    
 ;
+\ ------------------------------\
 
 \ ------------------------------\
-CODE APP_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
+CODE SYS_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
 \ ------------------------------\
 \ LCD_TIM_CTL =  %0000 0010 1001 0100\$3C0
 \                    - -             \CNTL Counter lentgh \ 00 = 16 bits
@@ -22361,7 +33904,7 @@ CODE APP_INIT                   \ this routine completes the init of system, i.e
 \ ------------------------------\
 \ set LCD_TIM_ to make 50kHz PWM \ for LCD_Vo; works without interrupt
 \ ------------------------------\
-MOV #%1011010100,&LCD_TIM_CTL   \ SMCLK/8, up mode, clear timer, no int
+MOV #%10_1101_0100,&LCD_TIM_CTL \ SMCLK/8, up mode, clear timer, no int
 \    MOV #0,&LCD_TIM_EX0        \ predivide by 1 in LCD_TIM_EX0 register (8 MHZ)
 FREQ_KHZ @ 16000 = [IF]         \ if 16 MHz
     MOV #1,&LCD_TIM_EX0         \ predivide by 2 in LCD_TIM_EX0 register (16 MHZ)
@@ -22373,7 +33916,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \ ------------------------------\
 \ set LCD_TIM_.2 to generate PWM for LCD_Vo
 \ ------------------------------\
-    MOV #%01100000,&LCD_TIM_CCTLn \ output mode = set/reset \ clear CCIFG
+MOV #%0110_0000,&LCD_TIM_CCTLn  \ output mode = set/reset \ clear CCIFG
     MOV #10,&LCD_TIM_CCRn       \ contrast adjust : 10/20 ==> LCD_Vo = -0V6|+3V6 (Vcc=3V6)
 \    MOV #12,&LCD_TIM_CCRn        \ contrast adjust : 12/20 ==> LCD_Vo = -1V4|+3V3 (Vcc=3V3)
 \ ------------------------------\
@@ -22402,7 +33945,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \                         -     \ TAIE
 \                          -    \ TAIFG
 \ ------------------------------\
-    MOV #%0100010100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
+MOV #%01_0001_0100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
 \ ------------------------------\
 \                        000    \ TAxEX0
 \                        ---    \ TAIDEX    pre divisor
@@ -22468,22 +34011,212 @@ COLON                           \
     ['] CR >BODY IS CR          \ CR executes its default value
     ['] EMIT >BODY IS EMIT      \ EMIT executes its defaulte value
     ." RC5toLCD is running. Type STOP to quit" \ display message on FastForth Terminal
-    ABORT                       \ ...and end APP_INIT with ABORT, no return.
+    PWR_STATE ABORT             \ init DP and continues with ABORT
 ;                               \
+\ ------------------------------\
 
 \ ------------------------------\
 CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
 \ ------------------------------\
-MOV #SLEEP,X                    \ replace default background process
+MOV #SLEEP,X                    \ replace default background process SLEEP
 MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
 MOV #WARM,X                     \ replace default WARM
-MOV #APP_INIT,2(X)              \ by RC5toLCD APP_INIT
-MOV X,PC                        \ then execute it
+MOV #SYS_INIT,2(X)              \ by RC5toLCD SYS_INIT
+MOV X,PC                        \ then execute new WARM
 ENDCODE 
+\ ------------------------------\
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
 
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
 
-MARKER {RC5TOLCD}
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
+
+MARKER {RC5TOLCD}
+
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] CONSTANT [IF]
+\ https://forth-standard.org/standard/core/CONSTANT
+\ CONSTANT <name>     n --                      define a Forth CONSTANT 
+: CONSTANT 
+CREATE
+HI2LO
+MOV TOS,-2(W)           \   PFA = n
+MOV @PSP+,TOS
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] STATE [IF]
+\ https://forth-standard.org/standard/core/STATE
+\ STATE   -- a-addr       holds compiler state
+STATEADR CONSTANT STATE
+[THEN]
+
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+    MOV @IP+,PC \ 4
+THEN
+XOR #-1,TOS     \ 1 flag Z = 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE     \ immediate
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+\ https://forth-standard.org/standard/core/DEFER
+\ DEFER "<spaces>name"   --
+\ Skip leading space delimiters. Parse name delimited by a space.
+\ Create a definition for name with the execution semantics defined below.
+
+\ name Execution:   --
+\ Execute the xt that name is set to execute, i.e. NEXT (nothing),
+\ until the phrase ' word IS name is executed, causing a new value of xt to be assigned to name.
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(W)        \ CFA = MOV @PC+,PC = BR MOV @IP+,PC
+MOV #NEXT_ADR,-2(W)     \ PFA = address of MOV @IP+,PC to do nothing.
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEFER! [IF]
+\ https://forth-standard.org/standard/core/DEFERStore
+\ Set the word xt1 to execute xt2. An ambiguous condition exists if xt1 is not for a word defined by DEFER.
+CODE DEFER!             \ xt2 xt1 --
+MOV @PSP+,2(TOS)        \ -- xt1=CFA_DEFER          xt2 --> [CFA_DEFER+2]
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] IS [IF]
+\ https://forth-standard.org/standard/core/IS
+\ IS <name>        xt --
+\ used as is :
+\ DEFER DISPLAY                         create a "do nothing" definition (2 CELLS)
+\ inline command : ' U. IS DISPLAY      U. becomes the runtime of the word DISPLAY
+\ or in a definition : ... ['] U. IS DISPLAY ...
+\ KEY, EMIT, CR, ACCEPT and WARM are examples of DEFERred words
+\
+\ as IS replaces the PFA value of any word, it's a TO alias for VARIABLE and CONSTANT words...
+: IS
+STATE @
+IF  POSTPONE ['] POSTPONE DEFER! 
+ELSE ' DEFER! 
+THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+\ CODE 20uS           \ n --      8MHz version
+\ BEGIN               \ 4 + 16 ~ loop
+\     MOV #39,rDOCON   \ 39
+\     BEGIN           \ 4 ~ loop
+\         NOP
+\         SUB #1,rDOCON
+\     0=  UNTIL
+\     SUB #1,TOS      \ 1
+\ 0= UNTIL
+\ MOV #XDOCON,rDOCON  \ 2
+\ MOV @PSP+,TOS
+\ MOV @RSP+,IP        \
+\ ENDCODE
 
 CODE 20_US                      \ n --      n * 20 us
 BEGIN                           \ here we presume that LCD_TIM_IFG = 1...
@@ -22498,8 +34231,8 @@ MOV @IP+,PC                     \ 4
 ENDCODE
 
 CODE TOP_LCD                    \ LCD Sample
-\                               \ if write : %xxxxWWWW --
-\                               \ if read  : -- %0000RRRR
+\                               \ if write : %xxxx_WWWW --
+\                               \ if read  : -- %0000_RRRR
     BIS.B #LCD_EN,&LCD_CMD_OUT  \ lcd_en 0-->1
     BIT.B #LCD_RW,&LCD_CMD_IN   \ lcd_rw test
 0= IF                           \ write LCD bits pattern
@@ -22520,8 +34253,8 @@ ENDCODE
 CODE LCD_WRC                    \ char --         Write Char
     BIS.B #LCD_RS,&LCD_CMD_OUT  \ lcd_rs=1
 BW1 SUB #2,PSP                  \
-    MOV TOS,0(PSP)              \ -- %xxxxLLLL %HHHHLLLL
-    RRUM #4,TOS                 \ -- %xxxxLLLL %xxxxHHHH
+    MOV TOS,0(PSP)              \ -- %xxxx_LLLL %HHHH_LLLL
+    RRUM #4,TOS                 \ -- %xxxx_LLLL %xxxx_HHHH
     BIC.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=0
     BIS.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as output
 COLON                           \ high level word starts here 
@@ -22561,11 +34294,11 @@ ENDCODE
 \ BW1 BIC.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as intput
 \     BIS.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=1
 \ COLON                           \ starts a FORTH word
-\     TOP_LCD 2 20_us             \ -- %0000HHHH
-\     TOP_LCD 2 20_us             \ -- %0000HHHH %0000LLLL
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH %0000_LLLL
 \ HI2LO                           \ switch from FORTH to assembler
-\     RLAM #4,0(PSP)              \ -- %HHHH0000 %0000LLLL
-\     ADD.B @PSP+,TOS             \ -- %HHHHLLLL
+\     RLAM #4,0(PSP)              \ -- %HHHH_0000 %0000_LLLL
+\     ADD.B @PSP+,TOS             \ -- %HHHH_LLLL
 \     MOV @RSP+,IP                \ restore IP saved by COLON
 \     MOV @IP+,PC                 \
 \ ENDCODE
@@ -22706,14 +34439,14 @@ MOV @PSP+,TOS                   \     -- TOS
 RET
 ENDASM
 
-\ ------------------------------\
+\ ******************************\
 ASM BACKGROUND                  \
-\ ------------------------------\
+\ ******************************\
 BEGIN
 \     ...                         \ insert here your background task
 \     ...                         \
 \     ...                         \
-    CALL &RXON                  \ comment this line to disable TERMINAL
+    CALL &RXON                  \ comment this line to disable TERMINAL_INPUT
     BIS &LPM_MODE,SR            \
 \ ******************************\
 \ here start all interrupts     \
@@ -22722,23 +34455,43 @@ BEGIN
 \ ******************************\
 AGAIN                           \
 ENDASM                          \
+\ ******************************\
+
+\ ------------------------------\
+ASM SYS_OUT                    \ system OUT init, replaces WARM at the request of STOP.
+\ ------------------------------\
+\     ...                         \ init specific I/O sys as you want
+\     ...                         \ before executing default WARM
+    MOV #WARM,X                 \ ['] WARM 
+    ADD #4,X                    \ >BODY
+    MOV X,PC                    \ EXECUTE    (which activates IO and TERMINAL)
+ENDASM
+\ ------------------------------\
 
 \ ------------------------------\
 CODE STOP                       \ stops multitasking, must to be used before downloading app
 \ ------------------------------\
-\ restore default action of primary DEFERred word SLEEP (assembly version)
 BW1 MOV #SLEEP,X                \ the ASM word SLEEP is only visible in mode assembler. 
     ADD #4,X                    \ X = BODY of SLEEP, X-2 = PFA of SLEEP
-    MOV X,-2(X)                 \ restore the default background
+    MOV X,-2(X)                 \ restore the default background: SLEEP
+    MOV #WARM,X
+    MOV #SYS_OUT,2(X)           \ default WARM is replaced by JMJ_BOX SYS_OUT (ended by default WARM)
+    BIC.B #RC5,&IR_IE           \ clear RC5_Int
+    BIC.B #RC5,&IR_IFG          \ clear RC5_Int flag
+    MOV #0,&LCD_TIM_CTL         \ stop LCD_TIMER
+    MOV #0,&WDT_TIM_CTL         \ stop WDT_TIMER
+    MOV #0,&WDT_TIM_CCTL0       \ clear CCIFG0 disable CCIE0
+    CALL #INIT_VECT             \ reset all vectors other than TERMINAL_int
 COLON                           \ restore default action of primary DEFERred word WARM (FORTH version)
-['] WARM >BODY IS WARM          \ restore the default WARM
 ECHO                            \
-." RC5toLCD is removed. type START to restart"
-COLD                            \ performs reset to reset all interrupt vectors.    
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM                           \ performs reset to reset all interrupt vectors.    
 ;
+\ ------------------------------\
 
 \ ------------------------------\
-CODE APP_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
+CODE SYS_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
 \ ------------------------------\
 \ LCD_TIM_CTL =  %0000 0010 1001 0100\$3C0
 \                    - -             \CNTL Counter lentgh \ 00 = 16 bits
@@ -22768,7 +34521,7 @@ CODE APP_INIT                   \ this routine completes the init of system, i.e
 \ ------------------------------\
 \ set LCD_TIM_ to make 50kHz PWM \ for LCD_Vo; works without interrupt
 \ ------------------------------\
-MOV #%1011010100,&LCD_TIM_CTL   \ SMCLK/8, up mode, clear timer, no int
+MOV #%10_1101_0100,&LCD_TIM_CTL \ SMCLK/8, up mode, clear timer, no int
 \    MOV #0,&LCD_TIM_EX0        \ predivide by 1 in LCD_TIM_EX0 register (8 MHZ)
 FREQ_KHZ @ 16000 = [IF]         \ if 16 MHz
     MOV #1,&LCD_TIM_EX0         \ predivide by 2 in LCD_TIM_EX0 register (16 MHZ)
@@ -22780,7 +34533,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \ ------------------------------\
 \ set LCD_TIM_.2 to generate PWM for LCD_Vo
 \ ------------------------------\
-    MOV #%01100000,&LCD_TIM_CCTLn \ output mode = set/reset \ clear CCIFG
+MOV #%0110_0000,&LCD_TIM_CCTLn  \ output mode = set/reset \ clear CCIFG
     MOV #10,&LCD_TIM_CCRn       \ contrast adjust : 10/20 ==> LCD_Vo = -0V6|+3V6 (Vcc=3V6)
 \    MOV #12,&LCD_TIM_CCRn        \ contrast adjust : 12/20 ==> LCD_Vo = -1V4|+3V3 (Vcc=3V3)
 \ ------------------------------\
@@ -22809,7 +34562,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \                         -     \ TAIE
 \                          -    \ TAIFG
 \ ------------------------------\
-    MOV #%0100010100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
+MOV #%01_0001_0100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
 \ ------------------------------\
 \                        000    \ TAxEX0
 \                        ---    \ TAIDEX    pre divisor
@@ -22875,23 +34628,213 @@ COLON                           \
     ['] CR >BODY IS CR          \ CR executes its default value
     ['] EMIT >BODY IS EMIT      \ EMIT executes its defaulte value
     ." RC5toLCD is running. Type STOP to quit" \ display message on FastForth Terminal
-    ABORT                       \ ...and end APP_INIT with ABORT, no return.
+    PWR_STATE ABORT             \ init DP and continues with ABORT
 ;                               \
+\ ------------------------------\
 
 \ ------------------------------\
 CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
 \ ------------------------------\
-MOV #SLEEP,X                    \ replace default background process
+MOV #SLEEP,X                    \ replace default background process SLEEP
 MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
 MOV #WARM,X                     \ replace default WARM
-MOV #APP_INIT,2(X)              \ by RC5toLCD APP_INIT
-MOV X,PC                        \ then execute it
+MOV #SYS_INIT,2(X)              \ by RC5toLCD SYS_INIT
+MOV X,PC                        \ then execute new WARM
 ENDCODE 
+\ ------------------------------\
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
 
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
 
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] CONSTANT [IF]
+\ https://forth-standard.org/standard/core/CONSTANT
+\ CONSTANT <name>     n --                      define a Forth CONSTANT 
+: CONSTANT 
+CREATE
+HI2LO
+MOV TOS,-2(W)           \   PFA = n
+MOV @PSP+,TOS
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] STATE [IF]
+\ https://forth-standard.org/standard/core/STATE
+\ STATE   -- a-addr       holds compiler state
+STATEADR CONSTANT STATE
+[THEN]
+
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+    MOV @IP+,PC \ 4
+THEN
+XOR #-1,TOS     \ 1 flag Z = 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE     \ immediate
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+\ https://forth-standard.org/standard/core/DEFER
+\ DEFER "<spaces>name"   --
+\ Skip leading space delimiters. Parse name delimited by a space.
+\ Create a definition for name with the execution semantics defined below.
+
+\ name Execution:   --
+\ Execute the xt that name is set to execute, i.e. NEXT (nothing),
+\ until the phrase ' word IS name is executed, causing a new value of xt to be assigned to name.
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(W)        \ CFA = MOV @PC+,PC = BR MOV @IP+,PC
+MOV #NEXT_ADR,-2(W)     \ PFA = address of MOV @IP+,PC to do nothing.
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEFER! [IF]
+\ https://forth-standard.org/standard/core/DEFERStore
+\ Set the word xt1 to execute xt2. An ambiguous condition exists if xt1 is not for a word defined by DEFER.
+CODE DEFER!             \ xt2 xt1 --
+MOV @PSP+,2(TOS)        \ -- xt1=CFA_DEFER          xt2 --> [CFA_DEFER+2]
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] IS [IF]
+\ https://forth-standard.org/standard/core/IS
+\ IS <name>        xt --
+\ used as is :
+\ DEFER DISPLAY                         create a "do nothing" definition (2 CELLS)
+\ inline command : ' U. IS DISPLAY      U. becomes the runtime of the word DISPLAY
+\ or in a definition : ... ['] U. IS DISPLAY ...
+\ KEY, EMIT, CR, ACCEPT and WARM are examples of DEFERred words
+\
+\ as IS replaces the PFA value of any word, it's a TO alias for VARIABLE and CONSTANT words...
+: IS
+STATE @
+IF  POSTPONE ['] POSTPONE DEFER! 
+ELSE ' DEFER! 
+THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+\ CODE 20uS           \ n --      8MHz version
+\ BEGIN               \ 4 + 16 ~ loop
+\     MOV #39,rDOCON   \ 39
+\     BEGIN           \ 4 ~ loop
+\         NOP
+\         SUB #1,rDOCON
+\     0=  UNTIL
+\     SUB #1,TOS      \ 1
+\ 0= UNTIL
+\ MOV #XDOCON,rDOCON  \ 2
+\ MOV @PSP+,TOS
+\ MOV @RSP+,IP        \
+\ ENDCODE
+
 CODE 20_US                      \ n --      n * 20 us
 BEGIN                           \ here we presume that LCD_TIM_IFG = 1...
     BEGIN
@@ -22905,8 +34848,8 @@ MOV @IP+,PC                     \ 4
 ENDCODE
 
 CODE TOP_LCD                    \ LCD Sample
-\                               \ if write : %xxxxWWWW --
-\                               \ if read  : -- %0000RRRR
+\                               \ if write : %xxxx_WWWW --
+\                               \ if read  : -- %0000_RRRR
     BIS.B #LCD_EN,&LCD_CMD_OUT  \ lcd_en 0-->1
     BIT.B #LCD_RW,&LCD_CMD_IN   \ lcd_rw test
 0= IF                           \ write LCD bits pattern
@@ -22927,8 +34870,8 @@ ENDCODE
 CODE LCD_WRC                    \ char --         Write Char
     BIS.B #LCD_RS,&LCD_CMD_OUT  \ lcd_rs=1
 BW1 SUB #2,PSP                  \
-    MOV TOS,0(PSP)              \ -- %xxxxLLLL %HHHHLLLL
-    RRUM #4,TOS                 \ -- %xxxxLLLL %xxxxHHHH
+    MOV TOS,0(PSP)              \ -- %xxxx_LLLL %HHHH_LLLL
+    RRUM #4,TOS                 \ -- %xxxx_LLLL %xxxx_HHHH
     BIC.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=0
     BIS.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as output
 COLON                           \ high level word starts here 
@@ -22968,11 +34911,11 @@ ENDCODE
 \ BW1 BIC.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as intput
 \     BIS.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=1
 \ COLON                           \ starts a FORTH word
-\     TOP_LCD 2 20_us             \ -- %0000HHHH
-\     TOP_LCD 2 20_us             \ -- %0000HHHH %0000LLLL
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH %0000_LLLL
 \ HI2LO                           \ switch from FORTH to assembler
-\     RLAM #4,0(PSP)              \ -- %HHHH0000 %0000LLLL
-\     ADD.B @PSP+,TOS             \ -- %HHHHLLLL
+\     RLAM #4,0(PSP)              \ -- %HHHH_0000 %0000_LLLL
+\     ADD.B @PSP+,TOS             \ -- %HHHH_LLLL
 \     MOV @RSP+,IP                \ restore IP saved by COLON
 \     MOV @IP+,PC                 \
 \ ENDCODE
@@ -23113,14 +35056,14 @@ MOV @PSP+,TOS                   \     -- TOS
 RET
 ENDASM
 
-\ ------------------------------\
+\ ******************************\
 ASM BACKGROUND                  \
-\ ------------------------------\
+\ ******************************\
 BEGIN
 \     ...                         \ insert here your background task
 \     ...                         \
 \     ...                         \
-    CALL &RXON                  \ comment this line to disable TERMINAL
+    CALL &RXON                  \ comment this line to disable TERMINAL_INPUT
     BIS &LPM_MODE,SR            \
 \ ******************************\
 \ here start all interrupts     \
@@ -23129,23 +35072,43 @@ BEGIN
 \ ******************************\
 AGAIN                           \
 ENDASM                          \
+\ ******************************\
+
+\ ------------------------------\
+ASM SYS_OUT                    \ system OUT init, replaces WARM at the request of STOP.
+\ ------------------------------\
+\     ...                         \ init specific I/O sys as you want
+\     ...                         \ before executing default WARM
+    MOV #WARM,X                 \ ['] WARM 
+    ADD #4,X                    \ >BODY
+    MOV X,PC                    \ EXECUTE    (which activates IO and TERMINAL)
+ENDASM
+\ ------------------------------\
 
 \ ------------------------------\
 CODE STOP                       \ stops multitasking, must to be used before downloading app
 \ ------------------------------\
-\ restore default action of primary DEFERred word SLEEP (assembly version)
 BW1 MOV #SLEEP,X                \ the ASM word SLEEP is only visible in mode assembler. 
     ADD #4,X                    \ X = BODY of SLEEP, X-2 = PFA of SLEEP
-    MOV X,-2(X)                 \ restore the default background
+    MOV X,-2(X)                 \ restore the default background: SLEEP
+    MOV #WARM,X
+    MOV #SYS_OUT,2(X)           \ default WARM is replaced by JMJ_BOX SYS_OUT (ended by default WARM)
+    BIC.B #RC5,&IR_IE           \ clear RC5_Int
+    BIC.B #RC5,&IR_IFG          \ clear RC5_Int flag
+    MOV #0,&LCD_TIM_CTL         \ stop LCD_TIMER
+    MOV #0,&WDT_TIM_CTL         \ stop WDT_TIMER
+    MOV #0,&WDT_TIM_CCTL0       \ clear CCIFG0 disable CCIE0
+    CALL #INIT_VECT             \ reset all vectors other than TERMINAL_int
 COLON                           \ restore default action of primary DEFERred word WARM (FORTH version)
-['] WARM >BODY IS WARM          \ restore the default WARM
 ECHO                            \
-." RC5toLCD is removed. type START to restart"
-COLD                            \ performs reset to reset all interrupt vectors.    
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM                           \ performs reset to reset all interrupt vectors.    
 ;
+\ ------------------------------\
 
 \ ------------------------------\
-CODE APP_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
+CODE SYS_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
 \ ------------------------------\
 \ LCD_TIM_CTL =  %0000 0010 1001 0100\$3C0
 \                    - -             \CNTL Counter lentgh \ 00 = 16 bits
@@ -23175,7 +35138,7 @@ CODE APP_INIT                   \ this routine completes the init of system, i.e
 \ ------------------------------\
 \ set LCD_TIM_ to make 50kHz PWM \ for LCD_Vo; works without interrupt
 \ ------------------------------\
-MOV #%1011010100,&LCD_TIM_CTL   \ SMCLK/8, up mode, clear timer, no int
+MOV #%10_1101_0100,&LCD_TIM_CTL \ SMCLK/8, up mode, clear timer, no int
 \    MOV #0,&LCD_TIM_EX0        \ predivide by 1 in LCD_TIM_EX0 register (8 MHZ)
 FREQ_KHZ @ 16000 = [IF]         \ if 16 MHz
     MOV #1,&LCD_TIM_EX0         \ predivide by 2 in LCD_TIM_EX0 register (16 MHZ)
@@ -23187,7 +35150,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \ ------------------------------\
 \ set LCD_TIM_.2 to generate PWM for LCD_Vo
 \ ------------------------------\
-    MOV #%01100000,&LCD_TIM_CCTLn \ output mode = set/reset \ clear CCIFG
+MOV #%0110_0000,&LCD_TIM_CCTLn  \ output mode = set/reset \ clear CCIFG
     MOV #10,&LCD_TIM_CCRn       \ contrast adjust : 10/20 ==> LCD_Vo = -0V6|+3V6 (Vcc=3V6)
 \    MOV #12,&LCD_TIM_CCRn        \ contrast adjust : 12/20 ==> LCD_Vo = -1V4|+3V3 (Vcc=3V3)
 \ ------------------------------\
@@ -23216,7 +35179,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \                         -     \ TAIE
 \                          -    \ TAIFG
 \ ------------------------------\
-    MOV #%0100010100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
+MOV #%01_0001_0100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
 \ ------------------------------\
 \                        000    \ TAxEX0
 \                        ---    \ TAIDEX    pre divisor
@@ -23282,23 +35245,213 @@ COLON                           \
     ['] CR >BODY IS CR          \ CR executes its default value
     ['] EMIT >BODY IS EMIT      \ EMIT executes its defaulte value
     ." RC5toLCD is running. Type STOP to quit" \ display message on FastForth Terminal
-    ABORT                       \ ...and end APP_INIT with ABORT, no return.
+    PWR_STATE ABORT             \ init DP and continues with ABORT
 ;                               \
+\ ------------------------------\
 
 \ ------------------------------\
 CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
 \ ------------------------------\
-MOV #SLEEP,X                    \ replace default background process
+MOV #SLEEP,X                    \ replace default background process SLEEP
 MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
 MOV #WARM,X                     \ replace default WARM
-MOV #APP_INIT,2(X)              \ by RC5toLCD APP_INIT
-MOV X,PC                        \ then execute it
+MOV #SYS_INIT,2(X)              \ by RC5toLCD SYS_INIT
+MOV X,PC                        \ then execute new WARM
 ENDCODE 
+\ ------------------------------\
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
 
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
 
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] CONSTANT [IF]
+\ https://forth-standard.org/standard/core/CONSTANT
+\ CONSTANT <name>     n --                      define a Forth CONSTANT 
+: CONSTANT 
+CREATE
+HI2LO
+MOV TOS,-2(W)           \   PFA = n
+MOV @PSP+,TOS
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] STATE [IF]
+\ https://forth-standard.org/standard/core/STATE
+\ STATE   -- a-addr       holds compiler state
+STATEADR CONSTANT STATE
+[THEN]
+
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+    MOV @IP+,PC \ 4
+THEN
+XOR #-1,TOS     \ 1 flag Z = 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE     \ immediate
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+\ https://forth-standard.org/standard/core/DEFER
+\ DEFER "<spaces>name"   --
+\ Skip leading space delimiters. Parse name delimited by a space.
+\ Create a definition for name with the execution semantics defined below.
+
+\ name Execution:   --
+\ Execute the xt that name is set to execute, i.e. NEXT (nothing),
+\ until the phrase ' word IS name is executed, causing a new value of xt to be assigned to name.
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(W)        \ CFA = MOV @PC+,PC = BR MOV @IP+,PC
+MOV #NEXT_ADR,-2(W)     \ PFA = address of MOV @IP+,PC to do nothing.
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEFER! [IF]
+\ https://forth-standard.org/standard/core/DEFERStore
+\ Set the word xt1 to execute xt2. An ambiguous condition exists if xt1 is not for a word defined by DEFER.
+CODE DEFER!             \ xt2 xt1 --
+MOV @PSP+,2(TOS)        \ -- xt1=CFA_DEFER          xt2 --> [CFA_DEFER+2]
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] IS [IF]
+\ https://forth-standard.org/standard/core/IS
+\ IS <name>        xt --
+\ used as is :
+\ DEFER DISPLAY                         create a "do nothing" definition (2 CELLS)
+\ inline command : ' U. IS DISPLAY      U. becomes the runtime of the word DISPLAY
+\ or in a definition : ... ['] U. IS DISPLAY ...
+\ KEY, EMIT, CR, ACCEPT and WARM are examples of DEFERred words
+\
+\ as IS replaces the PFA value of any word, it's a TO alias for VARIABLE and CONSTANT words...
+: IS
+STATE @
+IF  POSTPONE ['] POSTPONE DEFER! 
+ELSE ' DEFER! 
+THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+\ CODE 20uS           \ n --      8MHz version
+\ BEGIN               \ 4 + 16 ~ loop
+\     MOV #39,rDOCON   \ 39
+\     BEGIN           \ 4 ~ loop
+\         NOP
+\         SUB #1,rDOCON
+\     0=  UNTIL
+\     SUB #1,TOS      \ 1
+\ 0= UNTIL
+\ MOV #XDOCON,rDOCON  \ 2
+\ MOV @PSP+,TOS
+\ MOV @RSP+,IP        \
+\ ENDCODE
+
 CODE 20_US                      \ n --      n * 20 us
 BEGIN                           \ here we presume that LCD_TIM_IFG = 1...
     BEGIN
@@ -23312,8 +35465,8 @@ MOV @IP+,PC                     \ 4
 ENDCODE
 
 CODE TOP_LCD                    \ LCD Sample
-\                               \ if write : %xxxxWWWW --
-\                               \ if read  : -- %0000RRRR
+\                               \ if write : %xxxx_WWWW --
+\                               \ if read  : -- %0000_RRRR
     BIS.B #LCD_EN,&LCD_CMD_OUT  \ lcd_en 0-->1
     BIT.B #LCD_RW,&LCD_CMD_IN   \ lcd_rw test
 0= IF                           \ write LCD bits pattern
@@ -23334,8 +35487,8 @@ ENDCODE
 CODE LCD_WRC                    \ char --         Write Char
     BIS.B #LCD_RS,&LCD_CMD_OUT  \ lcd_rs=1
 BW1 SUB #2,PSP                  \
-    MOV TOS,0(PSP)              \ -- %xxxxLLLL %HHHHLLLL
-    RRUM #4,TOS                 \ -- %xxxxLLLL %xxxxHHHH
+    MOV TOS,0(PSP)              \ -- %xxxx_LLLL %HHHH_LLLL
+    RRUM #4,TOS                 \ -- %xxxx_LLLL %xxxx_HHHH
     BIC.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=0
     BIS.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as output
 COLON                           \ high level word starts here 
@@ -23375,11 +35528,11 @@ ENDCODE
 \ BW1 BIC.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as intput
 \     BIS.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=1
 \ COLON                           \ starts a FORTH word
-\     TOP_LCD 2 20_us             \ -- %0000HHHH
-\     TOP_LCD 2 20_us             \ -- %0000HHHH %0000LLLL
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH %0000_LLLL
 \ HI2LO                           \ switch from FORTH to assembler
-\     RLAM #4,0(PSP)              \ -- %HHHH0000 %0000LLLL
-\     ADD.B @PSP+,TOS             \ -- %HHHHLLLL
+\     RLAM #4,0(PSP)              \ -- %HHHH_0000 %0000_LLLL
+\     ADD.B @PSP+,TOS             \ -- %HHHH_LLLL
 \     MOV @RSP+,IP                \ restore IP saved by COLON
 \     MOV @IP+,PC                 \
 \ ENDCODE
@@ -23520,14 +35673,14 @@ MOV @PSP+,TOS                   \     -- TOS
 RET
 ENDASM
 
-\ ------------------------------\
+\ ******************************\
 ASM BACKGROUND                  \
-\ ------------------------------\
+\ ******************************\
 BEGIN
 \     ...                         \ insert here your background task
 \     ...                         \
 \     ...                         \
-    CALL &RXON                  \ comment this line to disable TERMINAL
+    CALL &RXON                  \ comment this line to disable TERMINAL_INPUT
     BIS &LPM_MODE,SR            \
 \ ******************************\
 \ here start all interrupts     \
@@ -23536,23 +35689,43 @@ BEGIN
 \ ******************************\
 AGAIN                           \
 ENDASM                          \
+\ ******************************\
+
+\ ------------------------------\
+ASM SYS_OUT                    \ system OUT init, replaces WARM at the request of STOP.
+\ ------------------------------\
+\     ...                         \ init specific I/O sys as you want
+\     ...                         \ before executing default WARM
+    MOV #WARM,X                 \ ['] WARM 
+    ADD #4,X                    \ >BODY
+    MOV X,PC                    \ EXECUTE    (which activates IO and TERMINAL)
+ENDASM
+\ ------------------------------\
 
 \ ------------------------------\
 CODE STOP                       \ stops multitasking, must to be used before downloading app
 \ ------------------------------\
-\ restore default action of primary DEFERred word SLEEP (assembly version)
 BW1 MOV #SLEEP,X                \ the ASM word SLEEP is only visible in mode assembler. 
     ADD #4,X                    \ X = BODY of SLEEP, X-2 = PFA of SLEEP
-    MOV X,-2(X)                 \ restore the default background
+    MOV X,-2(X)                 \ restore the default background: SLEEP
+    MOV #WARM,X
+    MOV #SYS_OUT,2(X)           \ default WARM is replaced by JMJ_BOX SYS_OUT (ended by default WARM)
+    BIC.B #RC5,&IR_IE           \ clear RC5_Int
+    BIC.B #RC5,&IR_IFG          \ clear RC5_Int flag
+    MOV #0,&LCD_TIM_CTL         \ stop LCD_TIMER
+    MOV #0,&WDT_TIM_CTL         \ stop WDT_TIMER
+    MOV #0,&WDT_TIM_CCTL0       \ clear CCIFG0 disable CCIE0
+    CALL #INIT_VECT             \ reset all vectors other than TERMINAL_int
 COLON                           \ restore default action of primary DEFERred word WARM (FORTH version)
-['] WARM >BODY IS WARM          \ restore the default WARM
 ECHO                            \
-." RC5toLCD is removed. type START to restart"
-COLD                            \ performs reset to reset all interrupt vectors.    
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM                           \ performs reset to reset all interrupt vectors.    
 ;
+\ ------------------------------\
 
 \ ------------------------------\
-CODE APP_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
+CODE SYS_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
 \ ------------------------------\
 \ LCD_TIM_CTL =  %0000 0010 1001 0100\$3C0
 \                    - -             \CNTL Counter lentgh \ 00 = 16 bits
@@ -23582,7 +35755,7 @@ CODE APP_INIT                   \ this routine completes the init of system, i.e
 \ ------------------------------\
 \ set LCD_TIM_ to make 50kHz PWM \ for LCD_Vo; works without interrupt
 \ ------------------------------\
-MOV #%1011010100,&LCD_TIM_CTL   \ SMCLK/8, up mode, clear timer, no int
+MOV #%10_1101_0100,&LCD_TIM_CTL \ SMCLK/8, up mode, clear timer, no int
 \    MOV #0,&LCD_TIM_EX0        \ predivide by 1 in LCD_TIM_EX0 register (8 MHZ)
 FREQ_KHZ @ 16000 = [IF]         \ if 16 MHz
     MOV #1,&LCD_TIM_EX0         \ predivide by 2 in LCD_TIM_EX0 register (16 MHZ)
@@ -23594,7 +35767,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \ ------------------------------\
 \ set LCD_TIM_.2 to generate PWM for LCD_Vo
 \ ------------------------------\
-    MOV #%01100000,&LCD_TIM_CCTLn \ output mode = set/reset \ clear CCIFG
+MOV #%0110_0000,&LCD_TIM_CCTLn  \ output mode = set/reset \ clear CCIFG
     MOV #10,&LCD_TIM_CCRn       \ contrast adjust : 10/20 ==> LCD_Vo = -0V6|+3V6 (Vcc=3V6)
 \    MOV #12,&LCD_TIM_CCRn        \ contrast adjust : 12/20 ==> LCD_Vo = -1V4|+3V3 (Vcc=3V3)
 \ ------------------------------\
@@ -23623,7 +35796,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \                         -     \ TAIE
 \                          -    \ TAIFG
 \ ------------------------------\
-    MOV #%0100010100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
+MOV #%01_0001_0100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
 \ ------------------------------\
 \                        000    \ TAxEX0
 \                        ---    \ TAIDEX    pre divisor
@@ -23689,23 +35862,213 @@ COLON                           \
     ['] CR >BODY IS CR          \ CR executes its default value
     ['] EMIT >BODY IS EMIT      \ EMIT executes its defaulte value
     ." RC5toLCD is running. Type STOP to quit" \ display message on FastForth Terminal
-    ABORT                       \ ...and end APP_INIT with ABORT, no return.
+    PWR_STATE ABORT             \ init DP and continues with ABORT
 ;                               \
+\ ------------------------------\
 
 \ ------------------------------\
 CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
 \ ------------------------------\
-MOV #SLEEP,X                    \ replace default background process
+MOV #SLEEP,X                    \ replace default background process SLEEP
 MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
 MOV #WARM,X                     \ replace default WARM
-MOV #APP_INIT,2(X)              \ by RC5toLCD APP_INIT
-MOV X,PC                        \ then execute it
+MOV #SYS_INIT,2(X)              \ by RC5toLCD SYS_INIT
+MOV X,PC                        \ then execute new WARM
 ENDCODE 
+\ ------------------------------\
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
 
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
 
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] CONSTANT [IF]
+\ https://forth-standard.org/standard/core/CONSTANT
+\ CONSTANT <name>     n --                      define a Forth CONSTANT 
+: CONSTANT 
+CREATE
+HI2LO
+MOV TOS,-2(W)           \   PFA = n
+MOV @PSP+,TOS
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] STATE [IF]
+\ https://forth-standard.org/standard/core/STATE
+\ STATE   -- a-addr       holds compiler state
+STATEADR CONSTANT STATE
+[THEN]
+
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+    MOV @IP+,PC \ 4
+THEN
+XOR #-1,TOS     \ 1 flag Z = 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE     \ immediate
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+\ https://forth-standard.org/standard/core/DEFER
+\ DEFER "<spaces>name"   --
+\ Skip leading space delimiters. Parse name delimited by a space.
+\ Create a definition for name with the execution semantics defined below.
+
+\ name Execution:   --
+\ Execute the xt that name is set to execute, i.e. NEXT (nothing),
+\ until the phrase ' word IS name is executed, causing a new value of xt to be assigned to name.
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(W)        \ CFA = MOV @PC+,PC = BR MOV @IP+,PC
+MOV #NEXT_ADR,-2(W)     \ PFA = address of MOV @IP+,PC to do nothing.
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEFER! [IF]
+\ https://forth-standard.org/standard/core/DEFERStore
+\ Set the word xt1 to execute xt2. An ambiguous condition exists if xt1 is not for a word defined by DEFER.
+CODE DEFER!             \ xt2 xt1 --
+MOV @PSP+,2(TOS)        \ -- xt1=CFA_DEFER          xt2 --> [CFA_DEFER+2]
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] IS [IF]
+\ https://forth-standard.org/standard/core/IS
+\ IS <name>        xt --
+\ used as is :
+\ DEFER DISPLAY                         create a "do nothing" definition (2 CELLS)
+\ inline command : ' U. IS DISPLAY      U. becomes the runtime of the word DISPLAY
+\ or in a definition : ... ['] U. IS DISPLAY ...
+\ KEY, EMIT, CR, ACCEPT and WARM are examples of DEFERred words
+\
+\ as IS replaces the PFA value of any word, it's a TO alias for VARIABLE and CONSTANT words...
+: IS
+STATE @
+IF  POSTPONE ['] POSTPONE DEFER! 
+ELSE ' DEFER! 
+THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+\ CODE 20uS           \ n --      8MHz version
+\ BEGIN               \ 4 + 16 ~ loop
+\     MOV #39,rDOCON   \ 39
+\     BEGIN           \ 4 ~ loop
+\         NOP
+\         SUB #1,rDOCON
+\     0=  UNTIL
+\     SUB #1,TOS      \ 1
+\ 0= UNTIL
+\ MOV #XDOCON,rDOCON  \ 2
+\ MOV @PSP+,TOS
+\ MOV @RSP+,IP        \
+\ ENDCODE
+
 CODE 20_US                      \ n --      n * 20 us
 BEGIN                           \ here we presume that LCD_TIM_IFG = 1...
     BEGIN
@@ -23719,8 +36082,8 @@ MOV @IP+,PC                     \ 4
 ENDCODE
 
 CODE TOP_LCD                    \ LCD Sample
-\                               \ if write : %xxxxWWWW --
-\                               \ if read  : -- %0000RRRR
+\                               \ if write : %xxxx_WWWW --
+\                               \ if read  : -- %0000_RRRR
     BIS.B #LCD_EN,&LCD_CMD_OUT  \ lcd_en 0-->1
     BIT.B #LCD_RW,&LCD_CMD_IN   \ lcd_rw test
 0= IF                           \ write LCD bits pattern
@@ -23741,8 +36104,8 @@ ENDCODE
 CODE LCD_WRC                    \ char --         Write Char
     BIS.B #LCD_RS,&LCD_CMD_OUT  \ lcd_rs=1
 BW1 SUB #2,PSP                  \
-    MOV TOS,0(PSP)              \ -- %xxxxLLLL %HHHHLLLL
-    RRUM #4,TOS                 \ -- %xxxxLLLL %xxxxHHHH
+    MOV TOS,0(PSP)              \ -- %xxxx_LLLL %HHHH_LLLL
+    RRUM #4,TOS                 \ -- %xxxx_LLLL %xxxx_HHHH
     BIC.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=0
     BIS.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as output
 COLON                           \ high level word starts here 
@@ -23782,11 +36145,11 @@ ENDCODE
 \ BW1 BIC.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as intput
 \     BIS.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=1
 \ COLON                           \ starts a FORTH word
-\     TOP_LCD 2 20_us             \ -- %0000HHHH
-\     TOP_LCD 2 20_us             \ -- %0000HHHH %0000LLLL
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH %0000_LLLL
 \ HI2LO                           \ switch from FORTH to assembler
-\     RLAM #4,0(PSP)              \ -- %HHHH0000 %0000LLLL
-\     ADD.B @PSP+,TOS             \ -- %HHHHLLLL
+\     RLAM #4,0(PSP)              \ -- %HHHH_0000 %0000_LLLL
+\     ADD.B @PSP+,TOS             \ -- %HHHH_LLLL
 \     MOV @RSP+,IP                \ restore IP saved by COLON
 \     MOV @IP+,PC                 \
 \ ENDCODE
@@ -23927,14 +36290,14 @@ MOV @PSP+,TOS                   \     -- TOS
 RET
 ENDASM
 
-\ ------------------------------\
+\ ******************************\
 ASM BACKGROUND                  \
-\ ------------------------------\
+\ ******************************\
 BEGIN
 \     ...                         \ insert here your background task
 \     ...                         \
 \     ...                         \
-    CALL &RXON                  \ comment this line to disable TERMINAL
+    CALL &RXON                  \ comment this line to disable TERMINAL_INPUT
     BIS &LPM_MODE,SR            \
 \ ******************************\
 \ here start all interrupts     \
@@ -23943,23 +36306,43 @@ BEGIN
 \ ******************************\
 AGAIN                           \
 ENDASM                          \
+\ ******************************\
+
+\ ------------------------------\
+ASM SYS_OUT                    \ system OUT init, replaces WARM at the request of STOP.
+\ ------------------------------\
+\     ...                         \ init specific I/O sys as you want
+\     ...                         \ before executing default WARM
+    MOV #WARM,X                 \ ['] WARM 
+    ADD #4,X                    \ >BODY
+    MOV X,PC                    \ EXECUTE    (which activates IO and TERMINAL)
+ENDASM
+\ ------------------------------\
 
 \ ------------------------------\
 CODE STOP                       \ stops multitasking, must to be used before downloading app
 \ ------------------------------\
-\ restore default action of primary DEFERred word SLEEP (assembly version)
 BW1 MOV #SLEEP,X                \ the ASM word SLEEP is only visible in mode assembler. 
     ADD #4,X                    \ X = BODY of SLEEP, X-2 = PFA of SLEEP
-    MOV X,-2(X)                 \ restore the default background
+    MOV X,-2(X)                 \ restore the default background: SLEEP
+    MOV #WARM,X
+    MOV #SYS_OUT,2(X)           \ default WARM is replaced by JMJ_BOX SYS_OUT (ended by default WARM)
+    BIC.B #RC5,&IR_IE           \ clear RC5_Int
+    BIC.B #RC5,&IR_IFG          \ clear RC5_Int flag
+    MOV #0,&LCD_TIM_CTL         \ stop LCD_TIMER
+    MOV #0,&WDT_TIM_CTL         \ stop WDT_TIMER
+    MOV #0,&WDT_TIM_CCTL0       \ clear CCIFG0 disable CCIE0
+    CALL #INIT_VECT             \ reset all vectors other than TERMINAL_int
 COLON                           \ restore default action of primary DEFERred word WARM (FORTH version)
-['] WARM >BODY IS WARM          \ restore the default WARM
 ECHO                            \
-." RC5toLCD is removed. type START to restart"
-COLD                            \ performs reset to reset all interrupt vectors.    
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM                           \ performs reset to reset all interrupt vectors.    
 ;
+\ ------------------------------\
 
 \ ------------------------------\
-CODE APP_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
+CODE SYS_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
 \ ------------------------------\
 \ LCD_TIM_CTL =  %0000 0010 1001 0100\$3C0
 \                    - -             \CNTL Counter lentgh \ 00 = 16 bits
@@ -23989,7 +36372,7 @@ CODE APP_INIT                   \ this routine completes the init of system, i.e
 \ ------------------------------\
 \ set LCD_TIM_ to make 50kHz PWM \ for LCD_Vo; works without interrupt
 \ ------------------------------\
-MOV #%1011010100,&LCD_TIM_CTL   \ SMCLK/8, up mode, clear timer, no int
+MOV #%10_1101_0100,&LCD_TIM_CTL \ SMCLK/8, up mode, clear timer, no int
 \    MOV #0,&LCD_TIM_EX0        \ predivide by 1 in LCD_TIM_EX0 register (8 MHZ)
 FREQ_KHZ @ 16000 = [IF]         \ if 16 MHz
     MOV #1,&LCD_TIM_EX0         \ predivide by 2 in LCD_TIM_EX0 register (16 MHZ)
@@ -24001,7 +36384,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \ ------------------------------\
 \ set LCD_TIM_.2 to generate PWM for LCD_Vo
 \ ------------------------------\
-    MOV #%01100000,&LCD_TIM_CCTLn \ output mode = set/reset \ clear CCIFG
+MOV #%0110_0000,&LCD_TIM_CCTLn  \ output mode = set/reset \ clear CCIFG
     MOV #10,&LCD_TIM_CCRn       \ contrast adjust : 10/20 ==> LCD_Vo = -0V6|+3V6 (Vcc=3V6)
 \    MOV #12,&LCD_TIM_CCRn        \ contrast adjust : 12/20 ==> LCD_Vo = -1V4|+3V3 (Vcc=3V3)
 \ ------------------------------\
@@ -24030,7 +36413,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \                         -     \ TAIE
 \                          -    \ TAIFG
 \ ------------------------------\
-    MOV #%0100010100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
+MOV #%01_0001_0100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
 \ ------------------------------\
 \                        000    \ TAxEX0
 \                        ---    \ TAIDEX    pre divisor
@@ -24096,23 +36479,213 @@ COLON                           \
     ['] CR >BODY IS CR          \ CR executes its default value
     ['] EMIT >BODY IS EMIT      \ EMIT executes its defaulte value
     ." RC5toLCD is running. Type STOP to quit" \ display message on FastForth Terminal
-    ABORT                       \ ...and end APP_INIT with ABORT, no return.
+    PWR_STATE ABORT             \ init DP and continues with ABORT
 ;                               \
+\ ------------------------------\
 
 \ ------------------------------\
 CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
 \ ------------------------------\
-MOV #SLEEP,X                    \ replace default background process
+MOV #SLEEP,X                    \ replace default background process SLEEP
 MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
 MOV #WARM,X                     \ replace default WARM
-MOV #APP_INIT,2(X)              \ by RC5toLCD APP_INIT
-MOV X,PC                        \ then execute it
+MOV #SYS_INIT,2(X)              \ by RC5toLCD SYS_INIT
+MOV X,PC                        \ then execute new WARM
 ENDCODE 
+\ ------------------------------\
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
 
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
 
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] CONSTANT [IF]
+\ https://forth-standard.org/standard/core/CONSTANT
+\ CONSTANT <name>     n --                      define a Forth CONSTANT 
+: CONSTANT 
+CREATE
+HI2LO
+MOV TOS,-2(W)           \   PFA = n
+MOV @PSP+,TOS
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] STATE [IF]
+\ https://forth-standard.org/standard/core/STATE
+\ STATE   -- a-addr       holds compiler state
+STATEADR CONSTANT STATE
+[THEN]
+
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+    MOV @IP+,PC \ 4
+THEN
+XOR #-1,TOS     \ 1 flag Z = 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE     \ immediate
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+\ https://forth-standard.org/standard/core/DEFER
+\ DEFER "<spaces>name"   --
+\ Skip leading space delimiters. Parse name delimited by a space.
+\ Create a definition for name with the execution semantics defined below.
+
+\ name Execution:   --
+\ Execute the xt that name is set to execute, i.e. NEXT (nothing),
+\ until the phrase ' word IS name is executed, causing a new value of xt to be assigned to name.
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(W)        \ CFA = MOV @PC+,PC = BR MOV @IP+,PC
+MOV #NEXT_ADR,-2(W)     \ PFA = address of MOV @IP+,PC to do nothing.
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEFER! [IF]
+\ https://forth-standard.org/standard/core/DEFERStore
+\ Set the word xt1 to execute xt2. An ambiguous condition exists if xt1 is not for a word defined by DEFER.
+CODE DEFER!             \ xt2 xt1 --
+MOV @PSP+,2(TOS)        \ -- xt1=CFA_DEFER          xt2 --> [CFA_DEFER+2]
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] IS [IF]
+\ https://forth-standard.org/standard/core/IS
+\ IS <name>        xt --
+\ used as is :
+\ DEFER DISPLAY                         create a "do nothing" definition (2 CELLS)
+\ inline command : ' U. IS DISPLAY      U. becomes the runtime of the word DISPLAY
+\ or in a definition : ... ['] U. IS DISPLAY ...
+\ KEY, EMIT, CR, ACCEPT and WARM are examples of DEFERred words
+\
+\ as IS replaces the PFA value of any word, it's a TO alias for VARIABLE and CONSTANT words...
+: IS
+STATE @
+IF  POSTPONE ['] POSTPONE DEFER! 
+ELSE ' DEFER! 
+THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+\ CODE 20uS           \ n --      8MHz version
+\ BEGIN               \ 4 + 16 ~ loop
+\     MOV #39,rDOCON   \ 39
+\     BEGIN           \ 4 ~ loop
+\         NOP
+\         SUB #1,rDOCON
+\     0=  UNTIL
+\     SUB #1,TOS      \ 1
+\ 0= UNTIL
+\ MOV #XDOCON,rDOCON  \ 2
+\ MOV @PSP+,TOS
+\ MOV @RSP+,IP        \
+\ ENDCODE
+
 CODE 20_US                      \ n --      n * 20 us
 BEGIN                           \ here we presume that LCD_TIM_IFG = 1...
     BEGIN
@@ -24126,8 +36699,8 @@ MOV @IP+,PC                     \ 4
 ENDCODE
 
 CODE TOP_LCD                    \ LCD Sample
-\                               \ if write : %xxxxWWWW --
-\                               \ if read  : -- %0000RRRR
+\                               \ if write : %xxxx_WWWW --
+\                               \ if read  : -- %0000_RRRR
     BIS.B #LCD_EN,&LCD_CMD_OUT  \ lcd_en 0-->1
     BIT.B #LCD_RW,&LCD_CMD_IN   \ lcd_rw test
 0= IF                           \ write LCD bits pattern
@@ -24148,8 +36721,8 @@ ENDCODE
 CODE LCD_WRC                    \ char --         Write Char
     BIS.B #LCD_RS,&LCD_CMD_OUT  \ lcd_rs=1
 BW1 SUB #2,PSP                  \
-    MOV TOS,0(PSP)              \ -- %xxxxLLLL %HHHHLLLL
-    RRUM #4,TOS                 \ -- %xxxxLLLL %xxxxHHHH
+    MOV TOS,0(PSP)              \ -- %xxxx_LLLL %HHHH_LLLL
+    RRUM #4,TOS                 \ -- %xxxx_LLLL %xxxx_HHHH
     BIC.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=0
     BIS.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as output
 COLON                           \ high level word starts here 
@@ -24189,11 +36762,11 @@ ENDCODE
 \ BW1 BIC.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as intput
 \     BIS.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=1
 \ COLON                           \ starts a FORTH word
-\     TOP_LCD 2 20_us             \ -- %0000HHHH
-\     TOP_LCD 2 20_us             \ -- %0000HHHH %0000LLLL
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH %0000_LLLL
 \ HI2LO                           \ switch from FORTH to assembler
-\     RLAM #4,0(PSP)              \ -- %HHHH0000 %0000LLLL
-\     ADD.B @PSP+,TOS             \ -- %HHHHLLLL
+\     RLAM #4,0(PSP)              \ -- %HHHH_0000 %0000_LLLL
+\     ADD.B @PSP+,TOS             \ -- %HHHH_LLLL
 \     MOV @RSP+,IP                \ restore IP saved by COLON
 \     MOV @IP+,PC                 \
 \ ENDCODE
@@ -24334,14 +36907,14 @@ MOV @PSP+,TOS                   \     -- TOS
 RET
 ENDASM
 
-\ ------------------------------\
+\ ******************************\
 ASM BACKGROUND                  \
-\ ------------------------------\
+\ ******************************\
 BEGIN
 \     ...                         \ insert here your background task
 \     ...                         \
 \     ...                         \
-    CALL &RXON                  \ comment this line to disable TERMINAL
+    CALL &RXON                  \ comment this line to disable TERMINAL_INPUT
     BIS &LPM_MODE,SR            \
 \ ******************************\
 \ here start all interrupts     \
@@ -24350,23 +36923,43 @@ BEGIN
 \ ******************************\
 AGAIN                           \
 ENDASM                          \
+\ ******************************\
+
+\ ------------------------------\
+ASM SYS_OUT                    \ system OUT init, replaces WARM at the request of STOP.
+\ ------------------------------\
+\     ...                         \ init specific I/O sys as you want
+\     ...                         \ before executing default WARM
+    MOV #WARM,X                 \ ['] WARM 
+    ADD #4,X                    \ >BODY
+    MOV X,PC                    \ EXECUTE    (which activates IO and TERMINAL)
+ENDASM
+\ ------------------------------\
 
 \ ------------------------------\
 CODE STOP                       \ stops multitasking, must to be used before downloading app
 \ ------------------------------\
-\ restore default action of primary DEFERred word SLEEP (assembly version)
 BW1 MOV #SLEEP,X                \ the ASM word SLEEP is only visible in mode assembler. 
     ADD #4,X                    \ X = BODY of SLEEP, X-2 = PFA of SLEEP
-    MOV X,-2(X)                 \ restore the default background
+    MOV X,-2(X)                 \ restore the default background: SLEEP
+    MOV #WARM,X
+    MOV #SYS_OUT,2(X)           \ default WARM is replaced by JMJ_BOX SYS_OUT (ended by default WARM)
+    BIC.B #RC5,&IR_IE           \ clear RC5_Int
+    BIC.B #RC5,&IR_IFG          \ clear RC5_Int flag
+    MOV #0,&LCD_TIM_CTL         \ stop LCD_TIMER
+    MOV #0,&WDT_TIM_CTL         \ stop WDT_TIMER
+    MOV #0,&WDT_TIM_CCTL0       \ clear CCIFG0 disable CCIE0
+    CALL #INIT_VECT             \ reset all vectors other than TERMINAL_int
 COLON                           \ restore default action of primary DEFERred word WARM (FORTH version)
-['] WARM >BODY IS WARM          \ restore the default WARM
 ECHO                            \
-." RC5toLCD is removed. type START to restart"
-COLD                            \ performs reset to reset all interrupt vectors.    
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM                           \ performs reset to reset all interrupt vectors.    
 ;
+\ ------------------------------\
 
 \ ------------------------------\
-CODE APP_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
+CODE SYS_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
 \ ------------------------------\
 \ LCD_TIM_CTL =  %0000 0010 1001 0100\$3C0
 \                    - -             \CNTL Counter lentgh \ 00 = 16 bits
@@ -24396,7 +36989,7 @@ CODE APP_INIT                   \ this routine completes the init of system, i.e
 \ ------------------------------\
 \ set LCD_TIM_ to make 50kHz PWM \ for LCD_Vo; works without interrupt
 \ ------------------------------\
-MOV #%1011010100,&LCD_TIM_CTL   \ SMCLK/8, up mode, clear timer, no int
+MOV #%10_1101_0100,&LCD_TIM_CTL \ SMCLK/8, up mode, clear timer, no int
 \    MOV #0,&LCD_TIM_EX0        \ predivide by 1 in LCD_TIM_EX0 register (8 MHZ)
 FREQ_KHZ @ 16000 = [IF]         \ if 16 MHz
     MOV #1,&LCD_TIM_EX0         \ predivide by 2 in LCD_TIM_EX0 register (16 MHZ)
@@ -24408,7 +37001,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \ ------------------------------\
 \ set LCD_TIM_.2 to generate PWM for LCD_Vo
 \ ------------------------------\
-    MOV #%01100000,&LCD_TIM_CCTLn \ output mode = set/reset \ clear CCIFG
+MOV #%0110_0000,&LCD_TIM_CCTLn  \ output mode = set/reset \ clear CCIFG
     MOV #10,&LCD_TIM_CCRn       \ contrast adjust : 10/20 ==> LCD_Vo = -0V6|+3V6 (Vcc=3V6)
 \    MOV #12,&LCD_TIM_CCRn        \ contrast adjust : 12/20 ==> LCD_Vo = -1V4|+3V3 (Vcc=3V3)
 \ ------------------------------\
@@ -24437,7 +37030,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \                         -     \ TAIE
 \                          -    \ TAIFG
 \ ------------------------------\
-    MOV #%0100010100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
+MOV #%01_0001_0100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
 \ ------------------------------\
 \                        000    \ TAxEX0
 \                        ---    \ TAIDEX    pre divisor
@@ -24503,23 +37096,213 @@ COLON                           \
     ['] CR >BODY IS CR          \ CR executes its default value
     ['] EMIT >BODY IS EMIT      \ EMIT executes its defaulte value
     ." RC5toLCD is running. Type STOP to quit" \ display message on FastForth Terminal
-    ABORT                       \ ...and end APP_INIT with ABORT, no return.
+    PWR_STATE ABORT             \ init DP and continues with ABORT
 ;                               \
+\ ------------------------------\
 
 \ ------------------------------\
 CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
 \ ------------------------------\
-MOV #SLEEP,X                    \ replace default background process
+MOV #SLEEP,X                    \ replace default background process SLEEP
 MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
 MOV #WARM,X                     \ replace default WARM
-MOV #APP_INIT,2(X)              \ by RC5toLCD APP_INIT
-MOV X,PC                        \ then execute it
+MOV #SYS_INIT,2(X)              \ by RC5toLCD SYS_INIT
+MOV X,PC                        \ then execute new WARM
 ENDCODE 
+\ ------------------------------\
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
 
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
 
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] CONSTANT [IF]
+\ https://forth-standard.org/standard/core/CONSTANT
+\ CONSTANT <name>     n --                      define a Forth CONSTANT 
+: CONSTANT 
+CREATE
+HI2LO
+MOV TOS,-2(W)           \   PFA = n
+MOV @PSP+,TOS
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] STATE [IF]
+\ https://forth-standard.org/standard/core/STATE
+\ STATE   -- a-addr       holds compiler state
+STATEADR CONSTANT STATE
+[THEN]
+
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+    MOV @IP+,PC \ 4
+THEN
+XOR #-1,TOS     \ 1 flag Z = 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE     \ immediate
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+\ https://forth-standard.org/standard/core/DEFER
+\ DEFER "<spaces>name"   --
+\ Skip leading space delimiters. Parse name delimited by a space.
+\ Create a definition for name with the execution semantics defined below.
+
+\ name Execution:   --
+\ Execute the xt that name is set to execute, i.e. NEXT (nothing),
+\ until the phrase ' word IS name is executed, causing a new value of xt to be assigned to name.
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(W)        \ CFA = MOV @PC+,PC = BR MOV @IP+,PC
+MOV #NEXT_ADR,-2(W)     \ PFA = address of MOV @IP+,PC to do nothing.
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEFER! [IF]
+\ https://forth-standard.org/standard/core/DEFERStore
+\ Set the word xt1 to execute xt2. An ambiguous condition exists if xt1 is not for a word defined by DEFER.
+CODE DEFER!             \ xt2 xt1 --
+MOV @PSP+,2(TOS)        \ -- xt1=CFA_DEFER          xt2 --> [CFA_DEFER+2]
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] IS [IF]
+\ https://forth-standard.org/standard/core/IS
+\ IS <name>        xt --
+\ used as is :
+\ DEFER DISPLAY                         create a "do nothing" definition (2 CELLS)
+\ inline command : ' U. IS DISPLAY      U. becomes the runtime of the word DISPLAY
+\ or in a definition : ... ['] U. IS DISPLAY ...
+\ KEY, EMIT, CR, ACCEPT and WARM are examples of DEFERred words
+\
+\ as IS replaces the PFA value of any word, it's a TO alias for VARIABLE and CONSTANT words...
+: IS
+STATE @
+IF  POSTPONE ['] POSTPONE DEFER! 
+ELSE ' DEFER! 
+THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+\ CODE 20uS           \ n --      8MHz version
+\ BEGIN               \ 4 + 16 ~ loop
+\     MOV #39,rDOCON   \ 39
+\     BEGIN           \ 4 ~ loop
+\         NOP
+\         SUB #1,rDOCON
+\     0=  UNTIL
+\     SUB #1,TOS      \ 1
+\ 0= UNTIL
+\ MOV #XDOCON,rDOCON  \ 2
+\ MOV @PSP+,TOS
+\ MOV @RSP+,IP        \
+\ ENDCODE
+
 CODE 20_US                      \ n --      n * 20 us
 BEGIN                           \ here we presume that LCD_TIM_IFG = 1...
     BEGIN
@@ -24533,8 +37316,8 @@ MOV @IP+,PC                     \ 4
 ENDCODE
 
 CODE TOP_LCD                    \ LCD Sample
-\                               \ if write : %xxxxWWWW --
-\                               \ if read  : -- %0000RRRR
+\                               \ if write : %xxxx_WWWW --
+\                               \ if read  : -- %0000_RRRR
     BIS.B #LCD_EN,&LCD_CMD_OUT  \ lcd_en 0-->1
     BIT.B #LCD_RW,&LCD_CMD_IN   \ lcd_rw test
 0= IF                           \ write LCD bits pattern
@@ -24555,8 +37338,8 @@ ENDCODE
 CODE LCD_WRC                    \ char --         Write Char
     BIS.B #LCD_RS,&LCD_CMD_OUT  \ lcd_rs=1
 BW1 SUB #2,PSP                  \
-    MOV TOS,0(PSP)              \ -- %xxxxLLLL %HHHHLLLL
-    RRUM #4,TOS                 \ -- %xxxxLLLL %xxxxHHHH
+    MOV TOS,0(PSP)              \ -- %xxxx_LLLL %HHHH_LLLL
+    RRUM #4,TOS                 \ -- %xxxx_LLLL %xxxx_HHHH
     BIC.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=0
     BIS.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as output
 COLON                           \ high level word starts here 
@@ -24596,11 +37379,11 @@ ENDCODE
 \ BW1 BIC.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as intput
 \     BIS.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=1
 \ COLON                           \ starts a FORTH word
-\     TOP_LCD 2 20_us             \ -- %0000HHHH
-\     TOP_LCD 2 20_us             \ -- %0000HHHH %0000LLLL
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH %0000_LLLL
 \ HI2LO                           \ switch from FORTH to assembler
-\     RLAM #4,0(PSP)              \ -- %HHHH0000 %0000LLLL
-\     ADD.B @PSP+,TOS             \ -- %HHHHLLLL
+\     RLAM #4,0(PSP)              \ -- %HHHH_0000 %0000_LLLL
+\     ADD.B @PSP+,TOS             \ -- %HHHH_LLLL
 \     MOV @RSP+,IP                \ restore IP saved by COLON
 \     MOV @IP+,PC                 \
 \ ENDCODE
@@ -24741,14 +37524,14 @@ MOV @PSP+,TOS                   \     -- TOS
 RET
 ENDASM
 
-\ ------------------------------\
+\ ******************************\
 ASM BACKGROUND                  \
-\ ------------------------------\
+\ ******************************\
 BEGIN
 \     ...                         \ insert here your background task
 \     ...                         \
 \     ...                         \
-    CALL &RXON                  \ comment this line to disable TERMINAL
+    CALL &RXON                  \ comment this line to disable TERMINAL_INPUT
     BIS &LPM_MODE,SR            \
 \ ******************************\
 \ here start all interrupts     \
@@ -24757,23 +37540,43 @@ BEGIN
 \ ******************************\
 AGAIN                           \
 ENDASM                          \
+\ ******************************\
+
+\ ------------------------------\
+ASM SYS_OUT                    \ system OUT init, replaces WARM at the request of STOP.
+\ ------------------------------\
+\     ...                         \ init specific I/O sys as you want
+\     ...                         \ before executing default WARM
+    MOV #WARM,X                 \ ['] WARM 
+    ADD #4,X                    \ >BODY
+    MOV X,PC                    \ EXECUTE    (which activates IO and TERMINAL)
+ENDASM
+\ ------------------------------\
 
 \ ------------------------------\
 CODE STOP                       \ stops multitasking, must to be used before downloading app
 \ ------------------------------\
-\ restore default action of primary DEFERred word SLEEP (assembly version)
 BW1 MOV #SLEEP,X                \ the ASM word SLEEP is only visible in mode assembler. 
     ADD #4,X                    \ X = BODY of SLEEP, X-2 = PFA of SLEEP
-    MOV X,-2(X)                 \ restore the default background
+    MOV X,-2(X)                 \ restore the default background: SLEEP
+    MOV #WARM,X
+    MOV #SYS_OUT,2(X)           \ default WARM is replaced by JMJ_BOX SYS_OUT (ended by default WARM)
+    BIC.B #RC5,&IR_IE           \ clear RC5_Int
+    BIC.B #RC5,&IR_IFG          \ clear RC5_Int flag
+    MOV #0,&LCD_TIM_CTL         \ stop LCD_TIMER
+    MOV #0,&WDT_TIM_CTL         \ stop WDT_TIMER
+    MOV #0,&WDT_TIM_CCTL0       \ clear CCIFG0 disable CCIE0
+    CALL #INIT_VECT             \ reset all vectors other than TERMINAL_int
 COLON                           \ restore default action of primary DEFERred word WARM (FORTH version)
-['] WARM >BODY IS WARM          \ restore the default WARM
 ECHO                            \
-." RC5toLCD is removed. type START to restart"
-COLD                            \ performs reset to reset all interrupt vectors.    
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM                           \ performs reset to reset all interrupt vectors.    
 ;
+\ ------------------------------\
 
 \ ------------------------------\
-CODE APP_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
+CODE SYS_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
 \ ------------------------------\
 \ LCD_TIM_CTL =  %0000 0010 1001 0100\$3C0
 \                    - -             \CNTL Counter lentgh \ 00 = 16 bits
@@ -24803,7 +37606,7 @@ CODE APP_INIT                   \ this routine completes the init of system, i.e
 \ ------------------------------\
 \ set LCD_TIM_ to make 50kHz PWM \ for LCD_Vo; works without interrupt
 \ ------------------------------\
-MOV #%1011010100,&LCD_TIM_CTL   \ SMCLK/8, up mode, clear timer, no int
+MOV #%10_1101_0100,&LCD_TIM_CTL \ SMCLK/8, up mode, clear timer, no int
 \    MOV #0,&LCD_TIM_EX0        \ predivide by 1 in LCD_TIM_EX0 register (8 MHZ)
 FREQ_KHZ @ 16000 = [IF]         \ if 16 MHz
     MOV #1,&LCD_TIM_EX0         \ predivide by 2 in LCD_TIM_EX0 register (16 MHZ)
@@ -24815,7 +37618,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \ ------------------------------\
 \ set LCD_TIM_.2 to generate PWM for LCD_Vo
 \ ------------------------------\
-    MOV #%01100000,&LCD_TIM_CCTLn \ output mode = set/reset \ clear CCIFG
+MOV #%0110_0000,&LCD_TIM_CCTLn  \ output mode = set/reset \ clear CCIFG
     MOV #10,&LCD_TIM_CCRn       \ contrast adjust : 10/20 ==> LCD_Vo = -0V6|+3V6 (Vcc=3V6)
 \    MOV #12,&LCD_TIM_CCRn        \ contrast adjust : 12/20 ==> LCD_Vo = -1V4|+3V3 (Vcc=3V3)
 \ ------------------------------\
@@ -24844,7 +37647,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \                         -     \ TAIE
 \                          -    \ TAIFG
 \ ------------------------------\
-    MOV #%0100010100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
+MOV #%01_0001_0100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
 \ ------------------------------\
 \                        000    \ TAxEX0
 \                        ---    \ TAIDEX    pre divisor
@@ -24910,23 +37713,213 @@ COLON                           \
     ['] CR >BODY IS CR          \ CR executes its default value
     ['] EMIT >BODY IS EMIT      \ EMIT executes its defaulte value
     ." RC5toLCD is running. Type STOP to quit" \ display message on FastForth Terminal
-    ABORT                       \ ...and end APP_INIT with ABORT, no return.
+    PWR_STATE ABORT             \ init DP and continues with ABORT
 ;                               \
+\ ------------------------------\
 
 \ ------------------------------\
 CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
 \ ------------------------------\
-MOV #SLEEP,X                    \ replace default background process
+MOV #SLEEP,X                    \ replace default background process SLEEP
 MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
 MOV #WARM,X                     \ replace default WARM
-MOV #APP_INIT,2(X)              \ by RC5toLCD APP_INIT
-MOV X,PC                        \ then execute it
+MOV #SYS_INIT,2(X)              \ by RC5toLCD SYS_INIT
+MOV X,PC                        \ then execute new WARM
 ENDCODE 
+\ ------------------------------\
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
 
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
 
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] CONSTANT [IF]
+\ https://forth-standard.org/standard/core/CONSTANT
+\ CONSTANT <name>     n --                      define a Forth CONSTANT 
+: CONSTANT 
+CREATE
+HI2LO
+MOV TOS,-2(W)           \   PFA = n
+MOV @PSP+,TOS
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] STATE [IF]
+\ https://forth-standard.org/standard/core/STATE
+\ STATE   -- a-addr       holds compiler state
+STATEADR CONSTANT STATE
+[THEN]
+
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+    MOV @IP+,PC \ 4
+THEN
+XOR #-1,TOS     \ 1 flag Z = 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE     \ immediate
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+\ https://forth-standard.org/standard/core/DEFER
+\ DEFER "<spaces>name"   --
+\ Skip leading space delimiters. Parse name delimited by a space.
+\ Create a definition for name with the execution semantics defined below.
+
+\ name Execution:   --
+\ Execute the xt that name is set to execute, i.e. NEXT (nothing),
+\ until the phrase ' word IS name is executed, causing a new value of xt to be assigned to name.
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(W)        \ CFA = MOV @PC+,PC = BR MOV @IP+,PC
+MOV #NEXT_ADR,-2(W)     \ PFA = address of MOV @IP+,PC to do nothing.
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEFER! [IF]
+\ https://forth-standard.org/standard/core/DEFERStore
+\ Set the word xt1 to execute xt2. An ambiguous condition exists if xt1 is not for a word defined by DEFER.
+CODE DEFER!             \ xt2 xt1 --
+MOV @PSP+,2(TOS)        \ -- xt1=CFA_DEFER          xt2 --> [CFA_DEFER+2]
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] IS [IF]
+\ https://forth-standard.org/standard/core/IS
+\ IS <name>        xt --
+\ used as is :
+\ DEFER DISPLAY                         create a "do nothing" definition (2 CELLS)
+\ inline command : ' U. IS DISPLAY      U. becomes the runtime of the word DISPLAY
+\ or in a definition : ... ['] U. IS DISPLAY ...
+\ KEY, EMIT, CR, ACCEPT and WARM are examples of DEFERred words
+\
+\ as IS replaces the PFA value of any word, it's a TO alias for VARIABLE and CONSTANT words...
+: IS
+STATE @
+IF  POSTPONE ['] POSTPONE DEFER! 
+ELSE ' DEFER! 
+THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+\ CODE 20uS           \ n --      8MHz version
+\ BEGIN               \ 4 + 16 ~ loop
+\     MOV #39,rDOCON   \ 39
+\     BEGIN           \ 4 ~ loop
+\         NOP
+\         SUB #1,rDOCON
+\     0=  UNTIL
+\     SUB #1,TOS      \ 1
+\ 0= UNTIL
+\ MOV #XDOCON,rDOCON  \ 2
+\ MOV @PSP+,TOS
+\ MOV @RSP+,IP        \
+\ ENDCODE
+
 CODE 20_US                      \ n --      n * 20 us
 BEGIN                           \ here we presume that LCD_TIM_IFG = 1...
     BEGIN
@@ -24940,8 +37933,8 @@ MOV @IP+,PC                     \ 4
 ENDCODE
 
 CODE TOP_LCD                    \ LCD Sample
-\                               \ if write : %xxxxWWWW --
-\                               \ if read  : -- %0000RRRR
+\                               \ if write : %xxxx_WWWW --
+\                               \ if read  : -- %0000_RRRR
     BIS.B #LCD_EN,&LCD_CMD_OUT  \ lcd_en 0-->1
     BIT.B #LCD_RW,&LCD_CMD_IN   \ lcd_rw test
 0= IF                           \ write LCD bits pattern
@@ -24962,8 +37955,8 @@ ENDCODE
 CODE LCD_WRC                    \ char --         Write Char
     BIS.B #LCD_RS,&LCD_CMD_OUT  \ lcd_rs=1
 BW1 SUB #2,PSP                  \
-    MOV TOS,0(PSP)              \ -- %xxxxLLLL %HHHHLLLL
-    RRUM #4,TOS                 \ -- %xxxxLLLL %xxxxHHHH
+    MOV TOS,0(PSP)              \ -- %xxxx_LLLL %HHHH_LLLL
+    RRUM #4,TOS                 \ -- %xxxx_LLLL %xxxx_HHHH
     BIC.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=0
     BIS.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as output
 COLON                           \ high level word starts here 
@@ -25003,11 +37996,11 @@ ENDCODE
 \ BW1 BIC.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as intput
 \     BIS.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=1
 \ COLON                           \ starts a FORTH word
-\     TOP_LCD 2 20_us             \ -- %0000HHHH
-\     TOP_LCD 2 20_us             \ -- %0000HHHH %0000LLLL
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH %0000_LLLL
 \ HI2LO                           \ switch from FORTH to assembler
-\     RLAM #4,0(PSP)              \ -- %HHHH0000 %0000LLLL
-\     ADD.B @PSP+,TOS             \ -- %HHHHLLLL
+\     RLAM #4,0(PSP)              \ -- %HHHH_0000 %0000_LLLL
+\     ADD.B @PSP+,TOS             \ -- %HHHH_LLLL
 \     MOV @RSP+,IP                \ restore IP saved by COLON
 \     MOV @IP+,PC                 \
 \ ENDCODE
@@ -25148,14 +38141,14 @@ MOV @PSP+,TOS                   \     -- TOS
 RET
 ENDASM
 
-\ ------------------------------\
+\ ******************************\
 ASM BACKGROUND                  \
-\ ------------------------------\
+\ ******************************\
 BEGIN
 \     ...                         \ insert here your background task
 \     ...                         \
 \     ...                         \
-    CALL &RXON                  \ comment this line to disable TERMINAL
+    CALL &RXON                  \ comment this line to disable TERMINAL_INPUT
     BIS &LPM_MODE,SR            \
 \ ******************************\
 \ here start all interrupts     \
@@ -25164,23 +38157,43 @@ BEGIN
 \ ******************************\
 AGAIN                           \
 ENDASM                          \
+\ ******************************\
+
+\ ------------------------------\
+ASM SYS_OUT                    \ system OUT init, replaces WARM at the request of STOP.
+\ ------------------------------\
+\     ...                         \ init specific I/O sys as you want
+\     ...                         \ before executing default WARM
+    MOV #WARM,X                 \ ['] WARM 
+    ADD #4,X                    \ >BODY
+    MOV X,PC                    \ EXECUTE    (which activates IO and TERMINAL)
+ENDASM
+\ ------------------------------\
 
 \ ------------------------------\
 CODE STOP                       \ stops multitasking, must to be used before downloading app
 \ ------------------------------\
-\ restore default action of primary DEFERred word SLEEP (assembly version)
 BW1 MOV #SLEEP,X                \ the ASM word SLEEP is only visible in mode assembler. 
     ADD #4,X                    \ X = BODY of SLEEP, X-2 = PFA of SLEEP
-    MOV X,-2(X)                 \ restore the default background
+    MOV X,-2(X)                 \ restore the default background: SLEEP
+    MOV #WARM,X
+    MOV #SYS_OUT,2(X)           \ default WARM is replaced by JMJ_BOX SYS_OUT (ended by default WARM)
+    BIC.B #RC5,&IR_IE           \ clear RC5_Int
+    BIC.B #RC5,&IR_IFG          \ clear RC5_Int flag
+    MOV #0,&LCD_TIM_CTL         \ stop LCD_TIMER
+    MOV #0,&WDT_TIM_CTL         \ stop WDT_TIMER
+    MOV #0,&WDT_TIM_CCTL0       \ clear CCIFG0 disable CCIE0
+    CALL #INIT_VECT             \ reset all vectors other than TERMINAL_int
 COLON                           \ restore default action of primary DEFERred word WARM (FORTH version)
-['] WARM >BODY IS WARM          \ restore the default WARM
 ECHO                            \
-." RC5toLCD is removed. type START to restart"
-COLD                            \ performs reset to reset all interrupt vectors.    
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM                           \ performs reset to reset all interrupt vectors.    
 ;
+\ ------------------------------\
 
 \ ------------------------------\
-CODE APP_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
+CODE SYS_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
 \ ------------------------------\
 \ LCD_TIM_CTL =  %0000 0010 1001 0100\$3C0
 \                    - -             \CNTL Counter lentgh \ 00 = 16 bits
@@ -25210,7 +38223,7 @@ CODE APP_INIT                   \ this routine completes the init of system, i.e
 \ ------------------------------\
 \ set LCD_TIM_ to make 50kHz PWM \ for LCD_Vo; works without interrupt
 \ ------------------------------\
-MOV #%1011010100,&LCD_TIM_CTL   \ SMCLK/8, up mode, clear timer, no int
+MOV #%10_1101_0100,&LCD_TIM_CTL \ SMCLK/8, up mode, clear timer, no int
 \    MOV #0,&LCD_TIM_EX0        \ predivide by 1 in LCD_TIM_EX0 register (8 MHZ)
 FREQ_KHZ @ 16000 = [IF]         \ if 16 MHz
     MOV #1,&LCD_TIM_EX0         \ predivide by 2 in LCD_TIM_EX0 register (16 MHZ)
@@ -25222,7 +38235,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \ ------------------------------\
 \ set LCD_TIM_.2 to generate PWM for LCD_Vo
 \ ------------------------------\
-    MOV #%01100000,&LCD_TIM_CCTLn \ output mode = set/reset \ clear CCIFG
+MOV #%0110_0000,&LCD_TIM_CCTLn  \ output mode = set/reset \ clear CCIFG
     MOV #10,&LCD_TIM_CCRn       \ contrast adjust : 10/20 ==> LCD_Vo = -0V6|+3V6 (Vcc=3V6)
 \    MOV #12,&LCD_TIM_CCRn        \ contrast adjust : 12/20 ==> LCD_Vo = -1V4|+3V3 (Vcc=3V3)
 \ ------------------------------\
@@ -25251,7 +38264,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \                         -     \ TAIE
 \                          -    \ TAIFG
 \ ------------------------------\
-    MOV #%0100010100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
+MOV #%01_0001_0100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
 \ ------------------------------\
 \                        000    \ TAxEX0
 \                        ---    \ TAIDEX    pre divisor
@@ -25317,23 +38330,213 @@ COLON                           \
     ['] CR >BODY IS CR          \ CR executes its default value
     ['] EMIT >BODY IS EMIT      \ EMIT executes its defaulte value
     ." RC5toLCD is running. Type STOP to quit" \ display message on FastForth Terminal
-    ABORT                       \ ...and end APP_INIT with ABORT, no return.
+    PWR_STATE ABORT             \ init DP and continues with ABORT
 ;                               \
+\ ------------------------------\
 
 \ ------------------------------\
 CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
 \ ------------------------------\
-MOV #SLEEP,X                    \ replace default background process
+MOV #SLEEP,X                    \ replace default background process SLEEP
 MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
 MOV #WARM,X                     \ replace default WARM
-MOV #APP_INIT,2(X)              \ by RC5toLCD APP_INIT
-MOV X,PC                        \ then execute it
+MOV #SYS_INIT,2(X)              \ by RC5toLCD SYS_INIT
+MOV X,PC                        \ then execute new WARM
 ENDCODE 
+\ ------------------------------\
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
 
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
 
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] CONSTANT [IF]
+\ https://forth-standard.org/standard/core/CONSTANT
+\ CONSTANT <name>     n --                      define a Forth CONSTANT 
+: CONSTANT 
+CREATE
+HI2LO
+MOV TOS,-2(W)           \   PFA = n
+MOV @PSP+,TOS
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] STATE [IF]
+\ https://forth-standard.org/standard/core/STATE
+\ STATE   -- a-addr       holds compiler state
+STATEADR CONSTANT STATE
+[THEN]
+
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+    MOV @IP+,PC \ 4
+THEN
+XOR #-1,TOS     \ 1 flag Z = 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE     \ immediate
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+\ https://forth-standard.org/standard/core/DEFER
+\ DEFER "<spaces>name"   --
+\ Skip leading space delimiters. Parse name delimited by a space.
+\ Create a definition for name with the execution semantics defined below.
+
+\ name Execution:   --
+\ Execute the xt that name is set to execute, i.e. NEXT (nothing),
+\ until the phrase ' word IS name is executed, causing a new value of xt to be assigned to name.
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(W)        \ CFA = MOV @PC+,PC = BR MOV @IP+,PC
+MOV #NEXT_ADR,-2(W)     \ PFA = address of MOV @IP+,PC to do nothing.
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEFER! [IF]
+\ https://forth-standard.org/standard/core/DEFERStore
+\ Set the word xt1 to execute xt2. An ambiguous condition exists if xt1 is not for a word defined by DEFER.
+CODE DEFER!             \ xt2 xt1 --
+MOV @PSP+,2(TOS)        \ -- xt1=CFA_DEFER          xt2 --> [CFA_DEFER+2]
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] IS [IF]
+\ https://forth-standard.org/standard/core/IS
+\ IS <name>        xt --
+\ used as is :
+\ DEFER DISPLAY                         create a "do nothing" definition (2 CELLS)
+\ inline command : ' U. IS DISPLAY      U. becomes the runtime of the word DISPLAY
+\ or in a definition : ... ['] U. IS DISPLAY ...
+\ KEY, EMIT, CR, ACCEPT and WARM are examples of DEFERred words
+\
+\ as IS replaces the PFA value of any word, it's a TO alias for VARIABLE and CONSTANT words...
+: IS
+STATE @
+IF  POSTPONE ['] POSTPONE DEFER! 
+ELSE ' DEFER! 
+THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+\ CODE 20uS           \ n --      8MHz version
+\ BEGIN               \ 4 + 16 ~ loop
+\     MOV #39,rDOCON   \ 39
+\     BEGIN           \ 4 ~ loop
+\         NOP
+\         SUB #1,rDOCON
+\     0=  UNTIL
+\     SUB #1,TOS      \ 1
+\ 0= UNTIL
+\ MOV #XDOCON,rDOCON  \ 2
+\ MOV @PSP+,TOS
+\ MOV @RSP+,IP        \
+\ ENDCODE
+
 CODE 20_US                      \ n --      n * 20 us
 BEGIN                           \ here we presume that LCD_TIM_IFG = 1...
     BEGIN
@@ -25347,8 +38550,8 @@ MOV @IP+,PC                     \ 4
 ENDCODE
 
 CODE TOP_LCD                    \ LCD Sample
-\                               \ if write : %xxxxWWWW --
-\                               \ if read  : -- %0000RRRR
+\                               \ if write : %xxxx_WWWW --
+\                               \ if read  : -- %0000_RRRR
     BIS.B #LCD_EN,&LCD_CMD_OUT  \ lcd_en 0-->1
     BIT.B #LCD_RW,&LCD_CMD_IN   \ lcd_rw test
 0= IF                           \ write LCD bits pattern
@@ -25369,8 +38572,8 @@ ENDCODE
 CODE LCD_WRC                    \ char --         Write Char
     BIS.B #LCD_RS,&LCD_CMD_OUT  \ lcd_rs=1
 BW1 SUB #2,PSP                  \
-    MOV TOS,0(PSP)              \ -- %xxxxLLLL %HHHHLLLL
-    RRUM #4,TOS                 \ -- %xxxxLLLL %xxxxHHHH
+    MOV TOS,0(PSP)              \ -- %xxxx_LLLL %HHHH_LLLL
+    RRUM #4,TOS                 \ -- %xxxx_LLLL %xxxx_HHHH
     BIC.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=0
     BIS.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as output
 COLON                           \ high level word starts here 
@@ -25410,11 +38613,11 @@ ENDCODE
 \ BW1 BIC.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as intput
 \     BIS.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=1
 \ COLON                           \ starts a FORTH word
-\     TOP_LCD 2 20_us             \ -- %0000HHHH
-\     TOP_LCD 2 20_us             \ -- %0000HHHH %0000LLLL
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH %0000_LLLL
 \ HI2LO                           \ switch from FORTH to assembler
-\     RLAM #4,0(PSP)              \ -- %HHHH0000 %0000LLLL
-\     ADD.B @PSP+,TOS             \ -- %HHHHLLLL
+\     RLAM #4,0(PSP)              \ -- %HHHH_0000 %0000_LLLL
+\     ADD.B @PSP+,TOS             \ -- %HHHH_LLLL
 \     MOV @RSP+,IP                \ restore IP saved by COLON
 \     MOV @IP+,PC                 \
 \ ENDCODE
@@ -25555,14 +38758,14 @@ MOV @PSP+,TOS                   \     -- TOS
 RET
 ENDASM
 
-\ ------------------------------\
+\ ******************************\
 ASM BACKGROUND                  \
-\ ------------------------------\
+\ ******************************\
 BEGIN
 \     ...                         \ insert here your background task
 \     ...                         \
 \     ...                         \
-    CALL &RXON                  \ comment this line to disable TERMINAL
+    CALL &RXON                  \ comment this line to disable TERMINAL_INPUT
     BIS &LPM_MODE,SR            \
 \ ******************************\
 \ here start all interrupts     \
@@ -25571,23 +38774,43 @@ BEGIN
 \ ******************************\
 AGAIN                           \
 ENDASM                          \
+\ ******************************\
+
+\ ------------------------------\
+ASM SYS_OUT                    \ system OUT init, replaces WARM at the request of STOP.
+\ ------------------------------\
+\     ...                         \ init specific I/O sys as you want
+\     ...                         \ before executing default WARM
+    MOV #WARM,X                 \ ['] WARM 
+    ADD #4,X                    \ >BODY
+    MOV X,PC                    \ EXECUTE    (which activates IO and TERMINAL)
+ENDASM
+\ ------------------------------\
 
 \ ------------------------------\
 CODE STOP                       \ stops multitasking, must to be used before downloading app
 \ ------------------------------\
-\ restore default action of primary DEFERred word SLEEP (assembly version)
 BW1 MOV #SLEEP,X                \ the ASM word SLEEP is only visible in mode assembler. 
     ADD #4,X                    \ X = BODY of SLEEP, X-2 = PFA of SLEEP
-    MOV X,-2(X)                 \ restore the default background
+    MOV X,-2(X)                 \ restore the default background: SLEEP
+    MOV #WARM,X
+    MOV #SYS_OUT,2(X)           \ default WARM is replaced by JMJ_BOX SYS_OUT (ended by default WARM)
+    BIC.B #RC5,&IR_IE           \ clear RC5_Int
+    BIC.B #RC5,&IR_IFG          \ clear RC5_Int flag
+    MOV #0,&LCD_TIM_CTL         \ stop LCD_TIMER
+    MOV #0,&WDT_TIM_CTL         \ stop WDT_TIMER
+    MOV #0,&WDT_TIM_CCTL0       \ clear CCIFG0 disable CCIE0
+    CALL #INIT_VECT             \ reset all vectors other than TERMINAL_int
 COLON                           \ restore default action of primary DEFERred word WARM (FORTH version)
-['] WARM >BODY IS WARM          \ restore the default WARM
 ECHO                            \
-." RC5toLCD is removed. type START to restart"
-COLD                            \ performs reset to reset all interrupt vectors.    
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM                           \ performs reset to reset all interrupt vectors.    
 ;
+\ ------------------------------\
 
 \ ------------------------------\
-CODE APP_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
+CODE SYS_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
 \ ------------------------------\
 \ LCD_TIM_CTL =  %0000 0010 1001 0100\$3C0
 \                    - -             \CNTL Counter lentgh \ 00 = 16 bits
@@ -25617,7 +38840,7 @@ CODE APP_INIT                   \ this routine completes the init of system, i.e
 \ ------------------------------\
 \ set LCD_TIM_ to make 50kHz PWM \ for LCD_Vo; works without interrupt
 \ ------------------------------\
-MOV #%1011010100,&LCD_TIM_CTL   \ SMCLK/8, up mode, clear timer, no int
+MOV #%10_1101_0100,&LCD_TIM_CTL \ SMCLK/8, up mode, clear timer, no int
 \    MOV #0,&LCD_TIM_EX0        \ predivide by 1 in LCD_TIM_EX0 register (8 MHZ)
 FREQ_KHZ @ 16000 = [IF]         \ if 16 MHz
     MOV #1,&LCD_TIM_EX0         \ predivide by 2 in LCD_TIM_EX0 register (16 MHZ)
@@ -25629,7 +38852,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \ ------------------------------\
 \ set LCD_TIM_.2 to generate PWM for LCD_Vo
 \ ------------------------------\
-    MOV #%01100000,&LCD_TIM_CCTLn \ output mode = set/reset \ clear CCIFG
+MOV #%0110_0000,&LCD_TIM_CCTLn  \ output mode = set/reset \ clear CCIFG
     MOV #10,&LCD_TIM_CCRn       \ contrast adjust : 10/20 ==> LCD_Vo = -0V6|+3V6 (Vcc=3V6)
 \    MOV #12,&LCD_TIM_CCRn        \ contrast adjust : 12/20 ==> LCD_Vo = -1V4|+3V3 (Vcc=3V3)
 \ ------------------------------\
@@ -25658,7 +38881,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \                         -     \ TAIE
 \                          -    \ TAIFG
 \ ------------------------------\
-    MOV #%0100010100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
+MOV #%01_0001_0100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
 \ ------------------------------\
 \                        000    \ TAxEX0
 \                        ---    \ TAIDEX    pre divisor
@@ -25724,23 +38947,213 @@ COLON                           \
     ['] CR >BODY IS CR          \ CR executes its default value
     ['] EMIT >BODY IS EMIT      \ EMIT executes its defaulte value
     ." RC5toLCD is running. Type STOP to quit" \ display message on FastForth Terminal
-    ABORT                       \ ...and end APP_INIT with ABORT, no return.
+    PWR_STATE ABORT             \ init DP and continues with ABORT
 ;                               \
+\ ------------------------------\
 
 \ ------------------------------\
 CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
 \ ------------------------------\
-MOV #SLEEP,X                    \ replace default background process
+MOV #SLEEP,X                    \ replace default background process SLEEP
 MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
 MOV #WARM,X                     \ replace default WARM
-MOV #APP_INIT,2(X)              \ by RC5toLCD APP_INIT
-MOV X,PC                        \ then execute it
+MOV #SYS_INIT,2(X)              \ by RC5toLCD SYS_INIT
+MOV X,PC                        \ then execute new WARM
 ENDCODE 
+\ ------------------------------\
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
 
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
 
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] CONSTANT [IF]
+\ https://forth-standard.org/standard/core/CONSTANT
+\ CONSTANT <name>     n --                      define a Forth CONSTANT 
+: CONSTANT 
+CREATE
+HI2LO
+MOV TOS,-2(W)           \   PFA = n
+MOV @PSP+,TOS
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] STATE [IF]
+\ https://forth-standard.org/standard/core/STATE
+\ STATE   -- a-addr       holds compiler state
+STATEADR CONSTANT STATE
+[THEN]
+
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+    MOV @IP+,PC \ 4
+THEN
+XOR #-1,TOS     \ 1 flag Z = 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE     \ immediate
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+\ https://forth-standard.org/standard/core/DEFER
+\ DEFER "<spaces>name"   --
+\ Skip leading space delimiters. Parse name delimited by a space.
+\ Create a definition for name with the execution semantics defined below.
+
+\ name Execution:   --
+\ Execute the xt that name is set to execute, i.e. NEXT (nothing),
+\ until the phrase ' word IS name is executed, causing a new value of xt to be assigned to name.
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(W)        \ CFA = MOV @PC+,PC = BR MOV @IP+,PC
+MOV #NEXT_ADR,-2(W)     \ PFA = address of MOV @IP+,PC to do nothing.
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEFER! [IF]
+\ https://forth-standard.org/standard/core/DEFERStore
+\ Set the word xt1 to execute xt2. An ambiguous condition exists if xt1 is not for a word defined by DEFER.
+CODE DEFER!             \ xt2 xt1 --
+MOV @PSP+,2(TOS)        \ -- xt1=CFA_DEFER          xt2 --> [CFA_DEFER+2]
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] IS [IF]
+\ https://forth-standard.org/standard/core/IS
+\ IS <name>        xt --
+\ used as is :
+\ DEFER DISPLAY                         create a "do nothing" definition (2 CELLS)
+\ inline command : ' U. IS DISPLAY      U. becomes the runtime of the word DISPLAY
+\ or in a definition : ... ['] U. IS DISPLAY ...
+\ KEY, EMIT, CR, ACCEPT and WARM are examples of DEFERred words
+\
+\ as IS replaces the PFA value of any word, it's a TO alias for VARIABLE and CONSTANT words...
+: IS
+STATE @
+IF  POSTPONE ['] POSTPONE DEFER! 
+ELSE ' DEFER! 
+THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+\ CODE 20uS           \ n --      8MHz version
+\ BEGIN               \ 4 + 16 ~ loop
+\     MOV #39,rDOCON   \ 39
+\     BEGIN           \ 4 ~ loop
+\         NOP
+\         SUB #1,rDOCON
+\     0=  UNTIL
+\     SUB #1,TOS      \ 1
+\ 0= UNTIL
+\ MOV #XDOCON,rDOCON  \ 2
+\ MOV @PSP+,TOS
+\ MOV @RSP+,IP        \
+\ ENDCODE
+
 CODE 20_US                      \ n --      n * 20 us
 BEGIN                           \ here we presume that LCD_TIM_IFG = 1...
     BEGIN
@@ -25754,8 +39167,8 @@ MOV @IP+,PC                     \ 4
 ENDCODE
 
 CODE TOP_LCD                    \ LCD Sample
-\                               \ if write : %xxxxWWWW --
-\                               \ if read  : -- %0000RRRR
+\                               \ if write : %xxxx_WWWW --
+\                               \ if read  : -- %0000_RRRR
     BIS.B #LCD_EN,&LCD_CMD_OUT  \ lcd_en 0-->1
     BIT.B #LCD_RW,&LCD_CMD_IN   \ lcd_rw test
 0= IF                           \ write LCD bits pattern
@@ -25776,8 +39189,8 @@ ENDCODE
 CODE LCD_WRC                    \ char --         Write Char
     BIS.B #LCD_RS,&LCD_CMD_OUT  \ lcd_rs=1
 BW1 SUB #2,PSP                  \
-    MOV TOS,0(PSP)              \ -- %xxxxLLLL %HHHHLLLL
-    RRUM #4,TOS                 \ -- %xxxxLLLL %xxxxHHHH
+    MOV TOS,0(PSP)              \ -- %xxxx_LLLL %HHHH_LLLL
+    RRUM #4,TOS                 \ -- %xxxx_LLLL %xxxx_HHHH
     BIC.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=0
     BIS.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as output
 COLON                           \ high level word starts here 
@@ -25817,11 +39230,11 @@ ENDCODE
 \ BW1 BIC.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as intput
 \     BIS.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=1
 \ COLON                           \ starts a FORTH word
-\     TOP_LCD 2 20_us             \ -- %0000HHHH
-\     TOP_LCD 2 20_us             \ -- %0000HHHH %0000LLLL
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH %0000_LLLL
 \ HI2LO                           \ switch from FORTH to assembler
-\     RLAM #4,0(PSP)              \ -- %HHHH0000 %0000LLLL
-\     ADD.B @PSP+,TOS             \ -- %HHHHLLLL
+\     RLAM #4,0(PSP)              \ -- %HHHH_0000 %0000_LLLL
+\     ADD.B @PSP+,TOS             \ -- %HHHH_LLLL
 \     MOV @RSP+,IP                \ restore IP saved by COLON
 \     MOV @IP+,PC                 \
 \ ENDCODE
@@ -25962,14 +39375,14 @@ MOV @PSP+,TOS                   \     -- TOS
 RET
 ENDASM
 
-\ ------------------------------\
+\ ******************************\
 ASM BACKGROUND                  \
-\ ------------------------------\
+\ ******************************\
 BEGIN
 \     ...                         \ insert here your background task
 \     ...                         \
 \     ...                         \
-    CALL &RXON                  \ comment this line to disable TERMINAL
+    CALL &RXON                  \ comment this line to disable TERMINAL_INPUT
     BIS &LPM_MODE,SR            \
 \ ******************************\
 \ here start all interrupts     \
@@ -25978,23 +39391,43 @@ BEGIN
 \ ******************************\
 AGAIN                           \
 ENDASM                          \
+\ ******************************\
+
+\ ------------------------------\
+ASM SYS_OUT                    \ system OUT init, replaces WARM at the request of STOP.
+\ ------------------------------\
+\     ...                         \ init specific I/O sys as you want
+\     ...                         \ before executing default WARM
+    MOV #WARM,X                 \ ['] WARM 
+    ADD #4,X                    \ >BODY
+    MOV X,PC                    \ EXECUTE    (which activates IO and TERMINAL)
+ENDASM
+\ ------------------------------\
 
 \ ------------------------------\
 CODE STOP                       \ stops multitasking, must to be used before downloading app
 \ ------------------------------\
-\ restore default action of primary DEFERred word SLEEP (assembly version)
 BW1 MOV #SLEEP,X                \ the ASM word SLEEP is only visible in mode assembler. 
     ADD #4,X                    \ X = BODY of SLEEP, X-2 = PFA of SLEEP
-    MOV X,-2(X)                 \ restore the default background
+    MOV X,-2(X)                 \ restore the default background: SLEEP
+    MOV #WARM,X
+    MOV #SYS_OUT,2(X)           \ default WARM is replaced by JMJ_BOX SYS_OUT (ended by default WARM)
+    BIC.B #RC5,&IR_IE           \ clear RC5_Int
+    BIC.B #RC5,&IR_IFG          \ clear RC5_Int flag
+    MOV #0,&LCD_TIM_CTL         \ stop LCD_TIMER
+    MOV #0,&WDT_TIM_CTL         \ stop WDT_TIMER
+    MOV #0,&WDT_TIM_CCTL0       \ clear CCIFG0 disable CCIE0
+    CALL #INIT_VECT             \ reset all vectors other than TERMINAL_int
 COLON                           \ restore default action of primary DEFERred word WARM (FORTH version)
-['] WARM >BODY IS WARM          \ restore the default WARM
 ECHO                            \
-." RC5toLCD is removed. type START to restart"
-COLD                            \ performs reset to reset all interrupt vectors.    
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM                           \ performs reset to reset all interrupt vectors.    
 ;
+\ ------------------------------\
 
 \ ------------------------------\
-CODE APP_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
+CODE SYS_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
 \ ------------------------------\
 \ LCD_TIM_CTL =  %0000 0010 1001 0100\$3C0
 \                    - -             \CNTL Counter lentgh \ 00 = 16 bits
@@ -26024,7 +39457,7 @@ CODE APP_INIT                   \ this routine completes the init of system, i.e
 \ ------------------------------\
 \ set LCD_TIM_ to make 50kHz PWM \ for LCD_Vo; works without interrupt
 \ ------------------------------\
-MOV #%1011010100,&LCD_TIM_CTL   \ SMCLK/8, up mode, clear timer, no int
+MOV #%10_1101_0100,&LCD_TIM_CTL \ SMCLK/8, up mode, clear timer, no int
 \    MOV #0,&LCD_TIM_EX0        \ predivide by 1 in LCD_TIM_EX0 register (8 MHZ)
 FREQ_KHZ @ 16000 = [IF]         \ if 16 MHz
     MOV #1,&LCD_TIM_EX0         \ predivide by 2 in LCD_TIM_EX0 register (16 MHZ)
@@ -26036,7 +39469,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \ ------------------------------\
 \ set LCD_TIM_.2 to generate PWM for LCD_Vo
 \ ------------------------------\
-    MOV #%01100000,&LCD_TIM_CCTLn \ output mode = set/reset \ clear CCIFG
+MOV #%0110_0000,&LCD_TIM_CCTLn  \ output mode = set/reset \ clear CCIFG
     MOV #10,&LCD_TIM_CCRn       \ contrast adjust : 10/20 ==> LCD_Vo = -0V6|+3V6 (Vcc=3V6)
 \    MOV #12,&LCD_TIM_CCRn        \ contrast adjust : 12/20 ==> LCD_Vo = -1V4|+3V3 (Vcc=3V3)
 \ ------------------------------\
@@ -26065,7 +39498,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \                         -     \ TAIE
 \                          -    \ TAIFG
 \ ------------------------------\
-    MOV #%0100010100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
+MOV #%01_0001_0100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
 \ ------------------------------\
 \                        000    \ TAxEX0
 \                        ---    \ TAIDEX    pre divisor
@@ -26131,23 +39564,213 @@ COLON                           \
     ['] CR >BODY IS CR          \ CR executes its default value
     ['] EMIT >BODY IS EMIT      \ EMIT executes its defaulte value
     ." RC5toLCD is running. Type STOP to quit" \ display message on FastForth Terminal
-    ABORT                       \ ...and end APP_INIT with ABORT, no return.
+    PWR_STATE ABORT             \ init DP and continues with ABORT
 ;                               \
+\ ------------------------------\
 
 \ ------------------------------\
 CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
 \ ------------------------------\
-MOV #SLEEP,X                    \ replace default background process
+MOV #SLEEP,X                    \ replace default background process SLEEP
 MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
 MOV #WARM,X                     \ replace default WARM
-MOV #APP_INIT,2(X)              \ by RC5toLCD APP_INIT
-MOV X,PC                        \ then execute it
+MOV #SYS_INIT,2(X)              \ by RC5toLCD SYS_INIT
+MOV X,PC                        \ then execute new WARM
 ENDCODE 
+\ ------------------------------\
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
 
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
 
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] CONSTANT [IF]
+\ https://forth-standard.org/standard/core/CONSTANT
+\ CONSTANT <name>     n --                      define a Forth CONSTANT 
+: CONSTANT 
+CREATE
+HI2LO
+MOV TOS,-2(W)           \   PFA = n
+MOV @PSP+,TOS
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] STATE [IF]
+\ https://forth-standard.org/standard/core/STATE
+\ STATE   -- a-addr       holds compiler state
+STATEADR CONSTANT STATE
+[THEN]
+
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+    MOV @IP+,PC \ 4
+THEN
+XOR #-1,TOS     \ 1 flag Z = 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE     \ immediate
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+\ https://forth-standard.org/standard/core/DEFER
+\ DEFER "<spaces>name"   --
+\ Skip leading space delimiters. Parse name delimited by a space.
+\ Create a definition for name with the execution semantics defined below.
+
+\ name Execution:   --
+\ Execute the xt that name is set to execute, i.e. NEXT (nothing),
+\ until the phrase ' word IS name is executed, causing a new value of xt to be assigned to name.
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(W)        \ CFA = MOV @PC+,PC = BR MOV @IP+,PC
+MOV #NEXT_ADR,-2(W)     \ PFA = address of MOV @IP+,PC to do nothing.
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEFER! [IF]
+\ https://forth-standard.org/standard/core/DEFERStore
+\ Set the word xt1 to execute xt2. An ambiguous condition exists if xt1 is not for a word defined by DEFER.
+CODE DEFER!             \ xt2 xt1 --
+MOV @PSP+,2(TOS)        \ -- xt1=CFA_DEFER          xt2 --> [CFA_DEFER+2]
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] IS [IF]
+\ https://forth-standard.org/standard/core/IS
+\ IS <name>        xt --
+\ used as is :
+\ DEFER DISPLAY                         create a "do nothing" definition (2 CELLS)
+\ inline command : ' U. IS DISPLAY      U. becomes the runtime of the word DISPLAY
+\ or in a definition : ... ['] U. IS DISPLAY ...
+\ KEY, EMIT, CR, ACCEPT and WARM are examples of DEFERred words
+\
+\ as IS replaces the PFA value of any word, it's a TO alias for VARIABLE and CONSTANT words...
+: IS
+STATE @
+IF  POSTPONE ['] POSTPONE DEFER! 
+ELSE ' DEFER! 
+THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+\ CODE 20uS           \ n --      8MHz version
+\ BEGIN               \ 4 + 16 ~ loop
+\     MOV #39,rDOCON   \ 39
+\     BEGIN           \ 4 ~ loop
+\         NOP
+\         SUB #1,rDOCON
+\     0=  UNTIL
+\     SUB #1,TOS      \ 1
+\ 0= UNTIL
+\ MOV #XDOCON,rDOCON  \ 2
+\ MOV @PSP+,TOS
+\ MOV @RSP+,IP        \
+\ ENDCODE
+
 CODE 20_US                      \ n --      n * 20 us
 BEGIN                           \ here we presume that LCD_TIM_IFG = 1...
     BEGIN
@@ -26161,8 +39784,8 @@ MOV @IP+,PC                     \ 4
 ENDCODE
 
 CODE TOP_LCD                    \ LCD Sample
-\                               \ if write : %xxxxWWWW --
-\                               \ if read  : -- %0000RRRR
+\                               \ if write : %xxxx_WWWW --
+\                               \ if read  : -- %0000_RRRR
     BIS.B #LCD_EN,&LCD_CMD_OUT  \ lcd_en 0-->1
     BIT.B #LCD_RW,&LCD_CMD_IN   \ lcd_rw test
 0= IF                           \ write LCD bits pattern
@@ -26183,8 +39806,8 @@ ENDCODE
 CODE LCD_WRC                    \ char --         Write Char
     BIS.B #LCD_RS,&LCD_CMD_OUT  \ lcd_rs=1
 BW1 SUB #2,PSP                  \
-    MOV TOS,0(PSP)              \ -- %xxxxLLLL %HHHHLLLL
-    RRUM #4,TOS                 \ -- %xxxxLLLL %xxxxHHHH
+    MOV TOS,0(PSP)              \ -- %xxxx_LLLL %HHHH_LLLL
+    RRUM #4,TOS                 \ -- %xxxx_LLLL %xxxx_HHHH
     BIC.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=0
     BIS.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as output
 COLON                           \ high level word starts here 
@@ -26224,11 +39847,11 @@ ENDCODE
 \ BW1 BIC.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as intput
 \     BIS.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=1
 \ COLON                           \ starts a FORTH word
-\     TOP_LCD 2 20_us             \ -- %0000HHHH
-\     TOP_LCD 2 20_us             \ -- %0000HHHH %0000LLLL
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH %0000_LLLL
 \ HI2LO                           \ switch from FORTH to assembler
-\     RLAM #4,0(PSP)              \ -- %HHHH0000 %0000LLLL
-\     ADD.B @PSP+,TOS             \ -- %HHHHLLLL
+\     RLAM #4,0(PSP)              \ -- %HHHH_0000 %0000_LLLL
+\     ADD.B @PSP+,TOS             \ -- %HHHH_LLLL
 \     MOV @RSP+,IP                \ restore IP saved by COLON
 \     MOV @IP+,PC                 \
 \ ENDCODE
@@ -26369,14 +39992,14 @@ MOV @PSP+,TOS                   \     -- TOS
 RET
 ENDASM
 
-\ ------------------------------\
+\ ******************************\
 ASM BACKGROUND                  \
-\ ------------------------------\
+\ ******************************\
 BEGIN
 \     ...                         \ insert here your background task
 \     ...                         \
 \     ...                         \
-    CALL &RXON                  \ comment this line to disable TERMINAL
+    CALL &RXON                  \ comment this line to disable TERMINAL_INPUT
     BIS &LPM_MODE,SR            \
 \ ******************************\
 \ here start all interrupts     \
@@ -26385,23 +40008,43 @@ BEGIN
 \ ******************************\
 AGAIN                           \
 ENDASM                          \
+\ ******************************\
+
+\ ------------------------------\
+ASM SYS_OUT                    \ system OUT init, replaces WARM at the request of STOP.
+\ ------------------------------\
+\     ...                         \ init specific I/O sys as you want
+\     ...                         \ before executing default WARM
+    MOV #WARM,X                 \ ['] WARM 
+    ADD #4,X                    \ >BODY
+    MOV X,PC                    \ EXECUTE    (which activates IO and TERMINAL)
+ENDASM
+\ ------------------------------\
 
 \ ------------------------------\
 CODE STOP                       \ stops multitasking, must to be used before downloading app
 \ ------------------------------\
-\ restore default action of primary DEFERred word SLEEP (assembly version)
 BW1 MOV #SLEEP,X                \ the ASM word SLEEP is only visible in mode assembler. 
     ADD #4,X                    \ X = BODY of SLEEP, X-2 = PFA of SLEEP
-    MOV X,-2(X)                 \ restore the default background
+    MOV X,-2(X)                 \ restore the default background: SLEEP
+    MOV #WARM,X
+    MOV #SYS_OUT,2(X)           \ default WARM is replaced by JMJ_BOX SYS_OUT (ended by default WARM)
+    BIC.B #RC5,&IR_IE           \ clear RC5_Int
+    BIC.B #RC5,&IR_IFG          \ clear RC5_Int flag
+    MOV #0,&LCD_TIM_CTL         \ stop LCD_TIMER
+    MOV #0,&WDT_TIM_CTL         \ stop WDT_TIMER
+    MOV #0,&WDT_TIM_CCTL0       \ clear CCIFG0 disable CCIE0
+    CALL #INIT_VECT             \ reset all vectors other than TERMINAL_int
 COLON                           \ restore default action of primary DEFERred word WARM (FORTH version)
-['] WARM >BODY IS WARM          \ restore the default WARM
 ECHO                            \
-." RC5toLCD is removed. type START to restart"
-COLD                            \ performs reset to reset all interrupt vectors.    
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM                           \ performs reset to reset all interrupt vectors.    
 ;
+\ ------------------------------\
 
 \ ------------------------------\
-CODE APP_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
+CODE SYS_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
 \ ------------------------------\
 \ LCD_TIM_CTL =  %0000 0010 1001 0100\$3C0
 \                    - -             \CNTL Counter lentgh \ 00 = 16 bits
@@ -26431,7 +40074,7 @@ CODE APP_INIT                   \ this routine completes the init of system, i.e
 \ ------------------------------\
 \ set LCD_TIM_ to make 50kHz PWM \ for LCD_Vo; works without interrupt
 \ ------------------------------\
-MOV #%1011010100,&LCD_TIM_CTL   \ SMCLK/8, up mode, clear timer, no int
+MOV #%10_1101_0100,&LCD_TIM_CTL \ SMCLK/8, up mode, clear timer, no int
 \    MOV #0,&LCD_TIM_EX0        \ predivide by 1 in LCD_TIM_EX0 register (8 MHZ)
 FREQ_KHZ @ 16000 = [IF]         \ if 16 MHz
     MOV #1,&LCD_TIM_EX0         \ predivide by 2 in LCD_TIM_EX0 register (16 MHZ)
@@ -26443,7 +40086,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \ ------------------------------\
 \ set LCD_TIM_.2 to generate PWM for LCD_Vo
 \ ------------------------------\
-    MOV #%01100000,&LCD_TIM_CCTLn \ output mode = set/reset \ clear CCIFG
+MOV #%0110_0000,&LCD_TIM_CCTLn  \ output mode = set/reset \ clear CCIFG
     MOV #10,&LCD_TIM_CCRn       \ contrast adjust : 10/20 ==> LCD_Vo = -0V6|+3V6 (Vcc=3V6)
 \    MOV #12,&LCD_TIM_CCRn        \ contrast adjust : 12/20 ==> LCD_Vo = -1V4|+3V3 (Vcc=3V3)
 \ ------------------------------\
@@ -26472,7 +40115,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \                         -     \ TAIE
 \                          -    \ TAIFG
 \ ------------------------------\
-    MOV #%0100010100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
+MOV #%01_0001_0100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
 \ ------------------------------\
 \                        000    \ TAxEX0
 \                        ---    \ TAIDEX    pre divisor
@@ -26538,23 +40181,213 @@ COLON                           \
     ['] CR >BODY IS CR          \ CR executes its default value
     ['] EMIT >BODY IS EMIT      \ EMIT executes its defaulte value
     ." RC5toLCD is running. Type STOP to quit" \ display message on FastForth Terminal
-    ABORT                       \ ...and end APP_INIT with ABORT, no return.
+    PWR_STATE ABORT             \ init DP and continues with ABORT
 ;                               \
+\ ------------------------------\
 
 \ ------------------------------\
 CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
 \ ------------------------------\
-MOV #SLEEP,X                    \ replace default background process
+MOV #SLEEP,X                    \ replace default background process SLEEP
 MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
 MOV #WARM,X                     \ replace default WARM
-MOV #APP_INIT,2(X)              \ by RC5toLCD APP_INIT
-MOV X,PC                        \ then execute it
+MOV #SYS_INIT,2(X)              \ by RC5toLCD SYS_INIT
+MOV X,PC                        \ then execute new WARM
 ENDCODE 
+\ ------------------------------\
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
 
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
 
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] CONSTANT [IF]
+\ https://forth-standard.org/standard/core/CONSTANT
+\ CONSTANT <name>     n --                      define a Forth CONSTANT 
+: CONSTANT 
+CREATE
+HI2LO
+MOV TOS,-2(W)           \   PFA = n
+MOV @PSP+,TOS
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] STATE [IF]
+\ https://forth-standard.org/standard/core/STATE
+\ STATE   -- a-addr       holds compiler state
+STATEADR CONSTANT STATE
+[THEN]
+
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+    MOV @IP+,PC \ 4
+THEN
+XOR #-1,TOS     \ 1 flag Z = 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE     \ immediate
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+\ https://forth-standard.org/standard/core/DEFER
+\ DEFER "<spaces>name"   --
+\ Skip leading space delimiters. Parse name delimited by a space.
+\ Create a definition for name with the execution semantics defined below.
+
+\ name Execution:   --
+\ Execute the xt that name is set to execute, i.e. NEXT (nothing),
+\ until the phrase ' word IS name is executed, causing a new value of xt to be assigned to name.
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(W)        \ CFA = MOV @PC+,PC = BR MOV @IP+,PC
+MOV #NEXT_ADR,-2(W)     \ PFA = address of MOV @IP+,PC to do nothing.
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEFER! [IF]
+\ https://forth-standard.org/standard/core/DEFERStore
+\ Set the word xt1 to execute xt2. An ambiguous condition exists if xt1 is not for a word defined by DEFER.
+CODE DEFER!             \ xt2 xt1 --
+MOV @PSP+,2(TOS)        \ -- xt1=CFA_DEFER          xt2 --> [CFA_DEFER+2]
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] IS [IF]
+\ https://forth-standard.org/standard/core/IS
+\ IS <name>        xt --
+\ used as is :
+\ DEFER DISPLAY                         create a "do nothing" definition (2 CELLS)
+\ inline command : ' U. IS DISPLAY      U. becomes the runtime of the word DISPLAY
+\ or in a definition : ... ['] U. IS DISPLAY ...
+\ KEY, EMIT, CR, ACCEPT and WARM are examples of DEFERred words
+\
+\ as IS replaces the PFA value of any word, it's a TO alias for VARIABLE and CONSTANT words...
+: IS
+STATE @
+IF  POSTPONE ['] POSTPONE DEFER! 
+ELSE ' DEFER! 
+THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+\ CODE 20uS           \ n --      8MHz version
+\ BEGIN               \ 4 + 16 ~ loop
+\     MOV #39,rDOCON   \ 39
+\     BEGIN           \ 4 ~ loop
+\         NOP
+\         SUB #1,rDOCON
+\     0=  UNTIL
+\     SUB #1,TOS      \ 1
+\ 0= UNTIL
+\ MOV #XDOCON,rDOCON  \ 2
+\ MOV @PSP+,TOS
+\ MOV @RSP+,IP        \
+\ ENDCODE
+
 CODE 20_US                      \ n --      n * 20 us
 BEGIN                           \ here we presume that LCD_TIM_IFG = 1...
     BEGIN
@@ -26568,8 +40401,8 @@ MOV @IP+,PC                     \ 4
 ENDCODE
 
 CODE TOP_LCD                    \ LCD Sample
-\                               \ if write : %xxxxWWWW --
-\                               \ if read  : -- %0000RRRR
+\                               \ if write : %xxxx_WWWW --
+\                               \ if read  : -- %0000_RRRR
     BIS.B #LCD_EN,&LCD_CMD_OUT  \ lcd_en 0-->1
     BIT.B #LCD_RW,&LCD_CMD_IN   \ lcd_rw test
 0= IF                           \ write LCD bits pattern
@@ -26590,8 +40423,8 @@ ENDCODE
 CODE LCD_WRC                    \ char --         Write Char
     BIS.B #LCD_RS,&LCD_CMD_OUT  \ lcd_rs=1
 BW1 SUB #2,PSP                  \
-    MOV TOS,0(PSP)              \ -- %xxxxLLLL %HHHHLLLL
-    RRUM #4,TOS                 \ -- %xxxxLLLL %xxxxHHHH
+    MOV TOS,0(PSP)              \ -- %xxxx_LLLL %HHHH_LLLL
+    RRUM #4,TOS                 \ -- %xxxx_LLLL %xxxx_HHHH
     BIC.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=0
     BIS.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as output
 COLON                           \ high level word starts here 
@@ -26631,11 +40464,11 @@ ENDCODE
 \ BW1 BIC.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as intput
 \     BIS.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=1
 \ COLON                           \ starts a FORTH word
-\     TOP_LCD 2 20_us             \ -- %0000HHHH
-\     TOP_LCD 2 20_us             \ -- %0000HHHH %0000LLLL
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH %0000_LLLL
 \ HI2LO                           \ switch from FORTH to assembler
-\     RLAM #4,0(PSP)              \ -- %HHHH0000 %0000LLLL
-\     ADD.B @PSP+,TOS             \ -- %HHHHLLLL
+\     RLAM #4,0(PSP)              \ -- %HHHH_0000 %0000_LLLL
+\     ADD.B @PSP+,TOS             \ -- %HHHH_LLLL
 \     MOV @RSP+,IP                \ restore IP saved by COLON
 \     MOV @IP+,PC                 \
 \ ENDCODE
@@ -26776,14 +40609,14 @@ MOV @PSP+,TOS                   \     -- TOS
 RET
 ENDASM
 
-\ ------------------------------\
+\ ******************************\
 ASM BACKGROUND                  \
-\ ------------------------------\
+\ ******************************\
 BEGIN
 \     ...                         \ insert here your background task
 \     ...                         \
 \     ...                         \
-    CALL &RXON                  \ comment this line to disable TERMINAL
+    CALL &RXON                  \ comment this line to disable TERMINAL_INPUT
     BIS &LPM_MODE,SR            \
 \ ******************************\
 \ here start all interrupts     \
@@ -26792,23 +40625,43 @@ BEGIN
 \ ******************************\
 AGAIN                           \
 ENDASM                          \
+\ ******************************\
+
+\ ------------------------------\
+ASM SYS_OUT                    \ system OUT init, replaces WARM at the request of STOP.
+\ ------------------------------\
+\     ...                         \ init specific I/O sys as you want
+\     ...                         \ before executing default WARM
+    MOV #WARM,X                 \ ['] WARM 
+    ADD #4,X                    \ >BODY
+    MOV X,PC                    \ EXECUTE    (which activates IO and TERMINAL)
+ENDASM
+\ ------------------------------\
 
 \ ------------------------------\
 CODE STOP                       \ stops multitasking, must to be used before downloading app
 \ ------------------------------\
-\ restore default action of primary DEFERred word SLEEP (assembly version)
 BW1 MOV #SLEEP,X                \ the ASM word SLEEP is only visible in mode assembler. 
     ADD #4,X                    \ X = BODY of SLEEP, X-2 = PFA of SLEEP
-    MOV X,-2(X)                 \ restore the default background
+    MOV X,-2(X)                 \ restore the default background: SLEEP
+    MOV #WARM,X
+    MOV #SYS_OUT,2(X)           \ default WARM is replaced by JMJ_BOX SYS_OUT (ended by default WARM)
+    BIC.B #RC5,&IR_IE           \ clear RC5_Int
+    BIC.B #RC5,&IR_IFG          \ clear RC5_Int flag
+    MOV #0,&LCD_TIM_CTL         \ stop LCD_TIMER
+    MOV #0,&WDT_TIM_CTL         \ stop WDT_TIMER
+    MOV #0,&WDT_TIM_CCTL0       \ clear CCIFG0 disable CCIE0
+    CALL #INIT_VECT             \ reset all vectors other than TERMINAL_int
 COLON                           \ restore default action of primary DEFERred word WARM (FORTH version)
-['] WARM >BODY IS WARM          \ restore the default WARM
 ECHO                            \
-." RC5toLCD is removed. type START to restart"
-COLD                            \ performs reset to reset all interrupt vectors.    
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM                           \ performs reset to reset all interrupt vectors.    
 ;
+\ ------------------------------\
 
 \ ------------------------------\
-CODE APP_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
+CODE SYS_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
 \ ------------------------------\
 \ LCD_TIM_CTL =  %0000 0010 1001 0100\$3C0
 \                    - -             \CNTL Counter lentgh \ 00 = 16 bits
@@ -26838,7 +40691,7 @@ CODE APP_INIT                   \ this routine completes the init of system, i.e
 \ ------------------------------\
 \ set LCD_TIM_ to make 50kHz PWM \ for LCD_Vo; works without interrupt
 \ ------------------------------\
-MOV #%1011010100,&LCD_TIM_CTL   \ SMCLK/8, up mode, clear timer, no int
+MOV #%10_1101_0100,&LCD_TIM_CTL \ SMCLK/8, up mode, clear timer, no int
 \    MOV #0,&LCD_TIM_EX0        \ predivide by 1 in LCD_TIM_EX0 register (8 MHZ)
 FREQ_KHZ @ 16000 = [IF]         \ if 16 MHz
     MOV #1,&LCD_TIM_EX0         \ predivide by 2 in LCD_TIM_EX0 register (16 MHZ)
@@ -26850,7 +40703,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \ ------------------------------\
 \ set LCD_TIM_.2 to generate PWM for LCD_Vo
 \ ------------------------------\
-    MOV #%01100000,&LCD_TIM_CCTLn \ output mode = set/reset \ clear CCIFG
+MOV #%0110_0000,&LCD_TIM_CCTLn  \ output mode = set/reset \ clear CCIFG
     MOV #10,&LCD_TIM_CCRn       \ contrast adjust : 10/20 ==> LCD_Vo = -0V6|+3V6 (Vcc=3V6)
 \    MOV #12,&LCD_TIM_CCRn        \ contrast adjust : 12/20 ==> LCD_Vo = -1V4|+3V3 (Vcc=3V3)
 \ ------------------------------\
@@ -26879,7 +40732,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \                         -     \ TAIE
 \                          -    \ TAIFG
 \ ------------------------------\
-    MOV #%0100010100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
+MOV #%01_0001_0100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
 \ ------------------------------\
 \                        000    \ TAxEX0
 \                        ---    \ TAIDEX    pre divisor
@@ -26945,22 +40798,212 @@ COLON                           \
     ['] CR >BODY IS CR          \ CR executes its default value
     ['] EMIT >BODY IS EMIT      \ EMIT executes its defaulte value
     ." RC5toLCD is running. Type STOP to quit" \ display message on FastForth Terminal
-    ABORT                       \ ...and end APP_INIT with ABORT, no return.
+    PWR_STATE ABORT             \ init DP and continues with ABORT
 ;                               \
+\ ------------------------------\
+
+\ ------------------------------\
+CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
+\ ------------------------------\
+MOV #SLEEP,X                    \ replace default background process SLEEP
+MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
+MOV #WARM,X                     \ replace default WARM
+MOV #SYS_INIT,2(X)              \ by RC5toLCD SYS_INIT
+MOV X,PC                        \ then execute new WARM
+ENDCODE 
+\ ------------------------------\
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
+
+[DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
+
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
+
+MARKER {RC5TOLCD}
+
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] CONSTANT [IF]
+\ https://forth-standard.org/standard/core/CONSTANT
+\ CONSTANT <name>     n --                      define a Forth CONSTANT 
+: CONSTANT 
+CREATE
+HI2LO
+MOV TOS,-2(W)           \   PFA = n
+MOV @PSP+,TOS
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
 
-\ ------------------------------\
-CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
-\ ------------------------------\
-MOV #SLEEP,X                    \ replace default background process
-MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
-MOV #WARM,X                     \ replace default WARM
-MOV #APP_INIT,2(X)              \ by RC5toLCD APP_INIT
-MOV X,PC                        \ then execute it
-ENDCODE 
+[UNDEFINED] STATE [IF]
+\ https://forth-standard.org/standard/core/STATE
+\ STATE   -- a-addr       holds compiler state
+STATEADR CONSTANT STATE
+[THEN]
 
-[DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+    MOV @IP+,PC \ 4
+THEN
+XOR #-1,TOS     \ 1 flag Z = 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
 
-MARKER {RC5TOLCD}
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE     \ immediate
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+\ https://forth-standard.org/standard/core/DEFER
+\ DEFER "<spaces>name"   --
+\ Skip leading space delimiters. Parse name delimited by a space.
+\ Create a definition for name with the execution semantics defined below.
+
+\ name Execution:   --
+\ Execute the xt that name is set to execute, i.e. NEXT (nothing),
+\ until the phrase ' word IS name is executed, causing a new value of xt to be assigned to name.
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(W)        \ CFA = MOV @PC+,PC = BR MOV @IP+,PC
+MOV #NEXT_ADR,-2(W)     \ PFA = address of MOV @IP+,PC to do nothing.
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEFER! [IF]
+\ https://forth-standard.org/standard/core/DEFERStore
+\ Set the word xt1 to execute xt2. An ambiguous condition exists if xt1 is not for a word defined by DEFER.
+CODE DEFER!             \ xt2 xt1 --
+MOV @PSP+,2(TOS)        \ -- xt1=CFA_DEFER          xt2 --> [CFA_DEFER+2]
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] IS [IF]
+\ https://forth-standard.org/standard/core/IS
+\ IS <name>        xt --
+\ used as is :
+\ DEFER DISPLAY                         create a "do nothing" definition (2 CELLS)
+\ inline command : ' U. IS DISPLAY      U. becomes the runtime of the word DISPLAY
+\ or in a definition : ... ['] U. IS DISPLAY ...
+\ KEY, EMIT, CR, ACCEPT and WARM are examples of DEFERred words
+\
+\ as IS replaces the PFA value of any word, it's a TO alias for VARIABLE and CONSTANT words...
+: IS
+STATE @
+IF  POSTPONE ['] POSTPONE DEFER! 
+ELSE ' DEFER! 
+THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+\ CODE 20uS           \ n --      8MHz version
+\ BEGIN               \ 4 + 16 ~ loop
+\     MOV #39,rDOCON   \ 39
+\     BEGIN           \ 4 ~ loop
+\         NOP
+\         SUB #1,rDOCON
+\     0=  UNTIL
+\     SUB #1,TOS      \ 1
+\ 0= UNTIL
+\ MOV #XDOCON,rDOCON  \ 2
+\ MOV @PSP+,TOS
+\ MOV @RSP+,IP        \
+\ ENDCODE
 
 CODE 20_US                      \ n --      n * 20 us
 BEGIN                           \ here we presume that LCD_TIM_IFG = 1...
@@ -26975,8 +41018,8 @@ MOV @IP+,PC                     \ 4
 ENDCODE
 
 CODE TOP_LCD                    \ LCD Sample
-\                               \ if write : %xxxxWWWW --
-\                               \ if read  : -- %0000RRRR
+\                               \ if write : %xxxx_WWWW --
+\                               \ if read  : -- %0000_RRRR
     BIS.B #LCD_EN,&LCD_CMD_OUT  \ lcd_en 0-->1
     BIT.B #LCD_RW,&LCD_CMD_IN   \ lcd_rw test
 0= IF                           \ write LCD bits pattern
@@ -26997,8 +41040,8 @@ ENDCODE
 CODE LCD_WRC                    \ char --         Write Char
     BIS.B #LCD_RS,&LCD_CMD_OUT  \ lcd_rs=1
 BW1 SUB #2,PSP                  \
-    MOV TOS,0(PSP)              \ -- %xxxxLLLL %HHHHLLLL
-    RRUM #4,TOS                 \ -- %xxxxLLLL %xxxxHHHH
+    MOV TOS,0(PSP)              \ -- %xxxx_LLLL %HHHH_LLLL
+    RRUM #4,TOS                 \ -- %xxxx_LLLL %xxxx_HHHH
     BIC.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=0
     BIS.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as output
 COLON                           \ high level word starts here 
@@ -27038,11 +41081,11 @@ ENDCODE
 \ BW1 BIC.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as intput
 \     BIS.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=1
 \ COLON                           \ starts a FORTH word
-\     TOP_LCD 2 20_us             \ -- %0000HHHH
-\     TOP_LCD 2 20_us             \ -- %0000HHHH %0000LLLL
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH %0000_LLLL
 \ HI2LO                           \ switch from FORTH to assembler
-\     RLAM #4,0(PSP)              \ -- %HHHH0000 %0000LLLL
-\     ADD.B @PSP+,TOS             \ -- %HHHHLLLL
+\     RLAM #4,0(PSP)              \ -- %HHHH_0000 %0000_LLLL
+\     ADD.B @PSP+,TOS             \ -- %HHHH_LLLL
 \     MOV @RSP+,IP                \ restore IP saved by COLON
 \     MOV @IP+,PC                 \
 \ ENDCODE
@@ -27183,14 +41226,14 @@ MOV @PSP+,TOS                   \     -- TOS
 RET
 ENDASM
 
-\ ------------------------------\
+\ ******************************\
 ASM BACKGROUND                  \
-\ ------------------------------\
+\ ******************************\
 BEGIN
 \     ...                         \ insert here your background task
 \     ...                         \
 \     ...                         \
-    CALL &RXON                  \ comment this line to disable TERMINAL
+    CALL &RXON                  \ comment this line to disable TERMINAL_INPUT
     BIS &LPM_MODE,SR            \
 \ ******************************\
 \ here start all interrupts     \
@@ -27199,23 +41242,43 @@ BEGIN
 \ ******************************\
 AGAIN                           \
 ENDASM                          \
+\ ******************************\
+
+\ ------------------------------\
+ASM SYS_OUT                    \ system OUT init, replaces WARM at the request of STOP.
+\ ------------------------------\
+\     ...                         \ init specific I/O sys as you want
+\     ...                         \ before executing default WARM
+    MOV #WARM,X                 \ ['] WARM 
+    ADD #4,X                    \ >BODY
+    MOV X,PC                    \ EXECUTE    (which activates IO and TERMINAL)
+ENDASM
+\ ------------------------------\
 
 \ ------------------------------\
 CODE STOP                       \ stops multitasking, must to be used before downloading app
 \ ------------------------------\
-\ restore default action of primary DEFERred word SLEEP (assembly version)
 BW1 MOV #SLEEP,X                \ the ASM word SLEEP is only visible in mode assembler. 
     ADD #4,X                    \ X = BODY of SLEEP, X-2 = PFA of SLEEP
-    MOV X,-2(X)                 \ restore the default background
+    MOV X,-2(X)                 \ restore the default background: SLEEP
+    MOV #WARM,X
+    MOV #SYS_OUT,2(X)           \ default WARM is replaced by JMJ_BOX SYS_OUT (ended by default WARM)
+    BIC.B #RC5,&IR_IE           \ clear RC5_Int
+    BIC.B #RC5,&IR_IFG          \ clear RC5_Int flag
+    MOV #0,&LCD_TIM_CTL         \ stop LCD_TIMER
+    MOV #0,&WDT_TIM_CTL         \ stop WDT_TIMER
+    MOV #0,&WDT_TIM_CCTL0       \ clear CCIFG0 disable CCIE0
+    CALL #INIT_VECT             \ reset all vectors other than TERMINAL_int
 COLON                           \ restore default action of primary DEFERred word WARM (FORTH version)
-['] WARM >BODY IS WARM          \ restore the default WARM
 ECHO                            \
-." RC5toLCD is removed. type START to restart"
-COLD                            \ performs reset to reset all interrupt vectors.    
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM                           \ performs reset to reset all interrupt vectors.    
 ;
+\ ------------------------------\
 
 \ ------------------------------\
-CODE APP_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
+CODE SYS_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
 \ ------------------------------\
 \ LCD_TIM_CTL =  %0000 0010 1001 0100\$3C0
 \                    - -             \CNTL Counter lentgh \ 00 = 16 bits
@@ -27245,7 +41308,7 @@ CODE APP_INIT                   \ this routine completes the init of system, i.e
 \ ------------------------------\
 \ set LCD_TIM_ to make 50kHz PWM \ for LCD_Vo; works without interrupt
 \ ------------------------------\
-MOV #%1011010100,&LCD_TIM_CTL   \ SMCLK/8, up mode, clear timer, no int
+MOV #%10_1101_0100,&LCD_TIM_CTL \ SMCLK/8, up mode, clear timer, no int
 \    MOV #0,&LCD_TIM_EX0        \ predivide by 1 in LCD_TIM_EX0 register (8 MHZ)
 FREQ_KHZ @ 16000 = [IF]         \ if 16 MHz
     MOV #1,&LCD_TIM_EX0         \ predivide by 2 in LCD_TIM_EX0 register (16 MHZ)
@@ -27257,7 +41320,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \ ------------------------------\
 \ set LCD_TIM_.2 to generate PWM for LCD_Vo
 \ ------------------------------\
-    MOV #%01100000,&LCD_TIM_CCTLn \ output mode = set/reset \ clear CCIFG
+MOV #%0110_0000,&LCD_TIM_CCTLn  \ output mode = set/reset \ clear CCIFG
     MOV #10,&LCD_TIM_CCRn       \ contrast adjust : 10/20 ==> LCD_Vo = -0V6|+3V6 (Vcc=3V6)
 \    MOV #12,&LCD_TIM_CCRn        \ contrast adjust : 12/20 ==> LCD_Vo = -1V4|+3V3 (Vcc=3V3)
 \ ------------------------------\
@@ -27286,7 +41349,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \                         -     \ TAIE
 \                          -    \ TAIFG
 \ ------------------------------\
-    MOV #%0100010100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
+MOV #%01_0001_0100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
 \ ------------------------------\
 \                        000    \ TAxEX0
 \                        ---    \ TAIDEX    pre divisor
@@ -27352,23 +41415,213 @@ COLON                           \
     ['] CR >BODY IS CR          \ CR executes its default value
     ['] EMIT >BODY IS EMIT      \ EMIT executes its defaulte value
     ." RC5toLCD is running. Type STOP to quit" \ display message on FastForth Terminal
-    ABORT                       \ ...and end APP_INIT with ABORT, no return.
+    PWR_STATE ABORT             \ init DP and continues with ABORT
 ;                               \
+\ ------------------------------\
 
 \ ------------------------------\
 CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
 \ ------------------------------\
-MOV #SLEEP,X                    \ replace default background process
+MOV #SLEEP,X                    \ replace default background process SLEEP
 MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
 MOV #WARM,X                     \ replace default WARM
-MOV #APP_INIT,2(X)              \ by RC5toLCD APP_INIT
-MOV X,PC                        \ then execute it
+MOV #SYS_INIT,2(X)              \ by RC5toLCD SYS_INIT
+MOV X,PC                        \ then execute new WARM
 ENDCODE 
+\ ------------------------------\
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
 
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
 
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] CONSTANT [IF]
+\ https://forth-standard.org/standard/core/CONSTANT
+\ CONSTANT <name>     n --                      define a Forth CONSTANT 
+: CONSTANT 
+CREATE
+HI2LO
+MOV TOS,-2(W)           \   PFA = n
+MOV @PSP+,TOS
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] STATE [IF]
+\ https://forth-standard.org/standard/core/STATE
+\ STATE   -- a-addr       holds compiler state
+STATEADR CONSTANT STATE
+[THEN]
+
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+    MOV @IP+,PC \ 4
+THEN
+XOR #-1,TOS     \ 1 flag Z = 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE     \ immediate
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+\ https://forth-standard.org/standard/core/DEFER
+\ DEFER "<spaces>name"   --
+\ Skip leading space delimiters. Parse name delimited by a space.
+\ Create a definition for name with the execution semantics defined below.
+
+\ name Execution:   --
+\ Execute the xt that name is set to execute, i.e. NEXT (nothing),
+\ until the phrase ' word IS name is executed, causing a new value of xt to be assigned to name.
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(W)        \ CFA = MOV @PC+,PC = BR MOV @IP+,PC
+MOV #NEXT_ADR,-2(W)     \ PFA = address of MOV @IP+,PC to do nothing.
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEFER! [IF]
+\ https://forth-standard.org/standard/core/DEFERStore
+\ Set the word xt1 to execute xt2. An ambiguous condition exists if xt1 is not for a word defined by DEFER.
+CODE DEFER!             \ xt2 xt1 --
+MOV @PSP+,2(TOS)        \ -- xt1=CFA_DEFER          xt2 --> [CFA_DEFER+2]
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] IS [IF]
+\ https://forth-standard.org/standard/core/IS
+\ IS <name>        xt --
+\ used as is :
+\ DEFER DISPLAY                         create a "do nothing" definition (2 CELLS)
+\ inline command : ' U. IS DISPLAY      U. becomes the runtime of the word DISPLAY
+\ or in a definition : ... ['] U. IS DISPLAY ...
+\ KEY, EMIT, CR, ACCEPT and WARM are examples of DEFERred words
+\
+\ as IS replaces the PFA value of any word, it's a TO alias for VARIABLE and CONSTANT words...
+: IS
+STATE @
+IF  POSTPONE ['] POSTPONE DEFER! 
+ELSE ' DEFER! 
+THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+\ CODE 20uS           \ n --      8MHz version
+\ BEGIN               \ 4 + 16 ~ loop
+\     MOV #39,rDOCON   \ 39
+\     BEGIN           \ 4 ~ loop
+\         NOP
+\         SUB #1,rDOCON
+\     0=  UNTIL
+\     SUB #1,TOS      \ 1
+\ 0= UNTIL
+\ MOV #XDOCON,rDOCON  \ 2
+\ MOV @PSP+,TOS
+\ MOV @RSP+,IP        \
+\ ENDCODE
+
 CODE 20_US                      \ n --      n * 20 us
 BEGIN                           \ here we presume that LCD_TIM_IFG = 1...
     BEGIN
@@ -27382,8 +41635,8 @@ MOV @IP+,PC                     \ 4
 ENDCODE
 
 CODE TOP_LCD                    \ LCD Sample
-\                               \ if write : %xxxxWWWW --
-\                               \ if read  : -- %0000RRRR
+\                               \ if write : %xxxx_WWWW --
+\                               \ if read  : -- %0000_RRRR
     BIS.B #LCD_EN,&LCD_CMD_OUT  \ lcd_en 0-->1
     BIT.B #LCD_RW,&LCD_CMD_IN   \ lcd_rw test
 0= IF                           \ write LCD bits pattern
@@ -27404,8 +41657,8 @@ ENDCODE
 CODE LCD_WRC                    \ char --         Write Char
     BIS.B #LCD_RS,&LCD_CMD_OUT  \ lcd_rs=1
 BW1 SUB #2,PSP                  \
-    MOV TOS,0(PSP)              \ -- %xxxxLLLL %HHHHLLLL
-    RRUM #4,TOS                 \ -- %xxxxLLLL %xxxxHHHH
+    MOV TOS,0(PSP)              \ -- %xxxx_LLLL %HHHH_LLLL
+    RRUM #4,TOS                 \ -- %xxxx_LLLL %xxxx_HHHH
     BIC.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=0
     BIS.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as output
 COLON                           \ high level word starts here 
@@ -27445,11 +41698,11 @@ ENDCODE
 \ BW1 BIC.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as intput
 \     BIS.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=1
 \ COLON                           \ starts a FORTH word
-\     TOP_LCD 2 20_us             \ -- %0000HHHH
-\     TOP_LCD 2 20_us             \ -- %0000HHHH %0000LLLL
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH %0000_LLLL
 \ HI2LO                           \ switch from FORTH to assembler
-\     RLAM #4,0(PSP)              \ -- %HHHH0000 %0000LLLL
-\     ADD.B @PSP+,TOS             \ -- %HHHHLLLL
+\     RLAM #4,0(PSP)              \ -- %HHHH_0000 %0000_LLLL
+\     ADD.B @PSP+,TOS             \ -- %HHHH_LLLL
 \     MOV @RSP+,IP                \ restore IP saved by COLON
 \     MOV @IP+,PC                 \
 \ ENDCODE
@@ -27590,14 +41843,14 @@ MOV @PSP+,TOS                   \     -- TOS
 RET
 ENDASM
 
-\ ------------------------------\
+\ ******************************\
 ASM BACKGROUND                  \
-\ ------------------------------\
+\ ******************************\
 BEGIN
 \     ...                         \ insert here your background task
 \     ...                         \
 \     ...                         \
-    CALL &RXON                  \ comment this line to disable TERMINAL
+    CALL &RXON                  \ comment this line to disable TERMINAL_INPUT
     BIS &LPM_MODE,SR            \
 \ ******************************\
 \ here start all interrupts     \
@@ -27606,23 +41859,43 @@ BEGIN
 \ ******************************\
 AGAIN                           \
 ENDASM                          \
+\ ******************************\
+
+\ ------------------------------\
+ASM SYS_OUT                    \ system OUT init, replaces WARM at the request of STOP.
+\ ------------------------------\
+\     ...                         \ init specific I/O sys as you want
+\     ...                         \ before executing default WARM
+    MOV #WARM,X                 \ ['] WARM 
+    ADD #4,X                    \ >BODY
+    MOV X,PC                    \ EXECUTE    (which activates IO and TERMINAL)
+ENDASM
+\ ------------------------------\
 
 \ ------------------------------\
 CODE STOP                       \ stops multitasking, must to be used before downloading app
 \ ------------------------------\
-\ restore default action of primary DEFERred word SLEEP (assembly version)
 BW1 MOV #SLEEP,X                \ the ASM word SLEEP is only visible in mode assembler. 
     ADD #4,X                    \ X = BODY of SLEEP, X-2 = PFA of SLEEP
-    MOV X,-2(X)                 \ restore the default background
+    MOV X,-2(X)                 \ restore the default background: SLEEP
+    MOV #WARM,X
+    MOV #SYS_OUT,2(X)           \ default WARM is replaced by JMJ_BOX SYS_OUT (ended by default WARM)
+    BIC.B #RC5,&IR_IE           \ clear RC5_Int
+    BIC.B #RC5,&IR_IFG          \ clear RC5_Int flag
+    MOV #0,&LCD_TIM_CTL         \ stop LCD_TIMER
+    MOV #0,&WDT_TIM_CTL         \ stop WDT_TIMER
+    MOV #0,&WDT_TIM_CCTL0       \ clear CCIFG0 disable CCIE0
+    CALL #INIT_VECT             \ reset all vectors other than TERMINAL_int
 COLON                           \ restore default action of primary DEFERred word WARM (FORTH version)
-['] WARM >BODY IS WARM          \ restore the default WARM
 ECHO                            \
-." RC5toLCD is removed. type START to restart"
-COLD                            \ performs reset to reset all interrupt vectors.    
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM                           \ performs reset to reset all interrupt vectors.    
 ;
+\ ------------------------------\
 
 \ ------------------------------\
-CODE APP_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
+CODE SYS_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
 \ ------------------------------\
 \ LCD_TIM_CTL =  %0000 0010 1001 0100\$3C0
 \                    - -             \CNTL Counter lentgh \ 00 = 16 bits
@@ -27652,7 +41925,7 @@ CODE APP_INIT                   \ this routine completes the init of system, i.e
 \ ------------------------------\
 \ set LCD_TIM_ to make 50kHz PWM \ for LCD_Vo; works without interrupt
 \ ------------------------------\
-MOV #%1011010100,&LCD_TIM_CTL   \ SMCLK/8, up mode, clear timer, no int
+MOV #%10_1101_0100,&LCD_TIM_CTL \ SMCLK/8, up mode, clear timer, no int
 \    MOV #0,&LCD_TIM_EX0        \ predivide by 1 in LCD_TIM_EX0 register (8 MHZ)
 FREQ_KHZ @ 16000 = [IF]         \ if 16 MHz
     MOV #1,&LCD_TIM_EX0         \ predivide by 2 in LCD_TIM_EX0 register (16 MHZ)
@@ -27664,7 +41937,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \ ------------------------------\
 \ set LCD_TIM_.2 to generate PWM for LCD_Vo
 \ ------------------------------\
-    MOV #%01100000,&LCD_TIM_CCTLn \ output mode = set/reset \ clear CCIFG
+MOV #%0110_0000,&LCD_TIM_CCTLn  \ output mode = set/reset \ clear CCIFG
     MOV #10,&LCD_TIM_CCRn       \ contrast adjust : 10/20 ==> LCD_Vo = -0V6|+3V6 (Vcc=3V6)
 \    MOV #12,&LCD_TIM_CCRn        \ contrast adjust : 12/20 ==> LCD_Vo = -1V4|+3V3 (Vcc=3V3)
 \ ------------------------------\
@@ -27693,7 +41966,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \                         -     \ TAIE
 \                          -    \ TAIFG
 \ ------------------------------\
-    MOV #%0100010100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
+MOV #%01_0001_0100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
 \ ------------------------------\
 \                        000    \ TAxEX0
 \                        ---    \ TAIDEX    pre divisor
@@ -27759,23 +42032,213 @@ COLON                           \
     ['] CR >BODY IS CR          \ CR executes its default value
     ['] EMIT >BODY IS EMIT      \ EMIT executes its defaulte value
     ." RC5toLCD is running. Type STOP to quit" \ display message on FastForth Terminal
-    ABORT                       \ ...and end APP_INIT with ABORT, no return.
+    PWR_STATE ABORT             \ init DP and continues with ABORT
 ;                               \
+\ ------------------------------\
 
 \ ------------------------------\
 CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
 \ ------------------------------\
-MOV #SLEEP,X                    \ replace default background process
+MOV #SLEEP,X                    \ replace default background process SLEEP
 MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
 MOV #WARM,X                     \ replace default WARM
-MOV #APP_INIT,2(X)              \ by RC5toLCD APP_INIT
-MOV X,PC                        \ then execute it
+MOV #SYS_INIT,2(X)              \ by RC5toLCD SYS_INIT
+MOV X,PC                        \ then execute new WARM
 ENDCODE 
+\ ------------------------------\
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
 
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
 
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] CONSTANT [IF]
+\ https://forth-standard.org/standard/core/CONSTANT
+\ CONSTANT <name>     n --                      define a Forth CONSTANT 
+: CONSTANT 
+CREATE
+HI2LO
+MOV TOS,-2(W)           \   PFA = n
+MOV @PSP+,TOS
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] STATE [IF]
+\ https://forth-standard.org/standard/core/STATE
+\ STATE   -- a-addr       holds compiler state
+STATEADR CONSTANT STATE
+[THEN]
+
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+    MOV @IP+,PC \ 4
+THEN
+XOR #-1,TOS     \ 1 flag Z = 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE     \ immediate
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+\ https://forth-standard.org/standard/core/DEFER
+\ DEFER "<spaces>name"   --
+\ Skip leading space delimiters. Parse name delimited by a space.
+\ Create a definition for name with the execution semantics defined below.
+
+\ name Execution:   --
+\ Execute the xt that name is set to execute, i.e. NEXT (nothing),
+\ until the phrase ' word IS name is executed, causing a new value of xt to be assigned to name.
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(W)        \ CFA = MOV @PC+,PC = BR MOV @IP+,PC
+MOV #NEXT_ADR,-2(W)     \ PFA = address of MOV @IP+,PC to do nothing.
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEFER! [IF]
+\ https://forth-standard.org/standard/core/DEFERStore
+\ Set the word xt1 to execute xt2. An ambiguous condition exists if xt1 is not for a word defined by DEFER.
+CODE DEFER!             \ xt2 xt1 --
+MOV @PSP+,2(TOS)        \ -- xt1=CFA_DEFER          xt2 --> [CFA_DEFER+2]
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] IS [IF]
+\ https://forth-standard.org/standard/core/IS
+\ IS <name>        xt --
+\ used as is :
+\ DEFER DISPLAY                         create a "do nothing" definition (2 CELLS)
+\ inline command : ' U. IS DISPLAY      U. becomes the runtime of the word DISPLAY
+\ or in a definition : ... ['] U. IS DISPLAY ...
+\ KEY, EMIT, CR, ACCEPT and WARM are examples of DEFERred words
+\
+\ as IS replaces the PFA value of any word, it's a TO alias for VARIABLE and CONSTANT words...
+: IS
+STATE @
+IF  POSTPONE ['] POSTPONE DEFER! 
+ELSE ' DEFER! 
+THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+\ CODE 20uS           \ n --      8MHz version
+\ BEGIN               \ 4 + 16 ~ loop
+\     MOV #39,rDOCON   \ 39
+\     BEGIN           \ 4 ~ loop
+\         NOP
+\         SUB #1,rDOCON
+\     0=  UNTIL
+\     SUB #1,TOS      \ 1
+\ 0= UNTIL
+\ MOV #XDOCON,rDOCON  \ 2
+\ MOV @PSP+,TOS
+\ MOV @RSP+,IP        \
+\ ENDCODE
+
 CODE 20_US                      \ n --      n * 20 us
 BEGIN                           \ here we presume that LCD_TIM_IFG = 1...
     BEGIN
@@ -27789,8 +42252,8 @@ MOV @IP+,PC                     \ 4
 ENDCODE
 
 CODE TOP_LCD                    \ LCD Sample
-\                               \ if write : %xxxxWWWW --
-\                               \ if read  : -- %0000RRRR
+\                               \ if write : %xxxx_WWWW --
+\                               \ if read  : -- %0000_RRRR
     BIS.B #LCD_EN,&LCD_CMD_OUT  \ lcd_en 0-->1
     BIT.B #LCD_RW,&LCD_CMD_IN   \ lcd_rw test
 0= IF                           \ write LCD bits pattern
@@ -27811,8 +42274,8 @@ ENDCODE
 CODE LCD_WRC                    \ char --         Write Char
     BIS.B #LCD_RS,&LCD_CMD_OUT  \ lcd_rs=1
 BW1 SUB #2,PSP                  \
-    MOV TOS,0(PSP)              \ -- %xxxxLLLL %HHHHLLLL
-    RRUM #4,TOS                 \ -- %xxxxLLLL %xxxxHHHH
+    MOV TOS,0(PSP)              \ -- %xxxx_LLLL %HHHH_LLLL
+    RRUM #4,TOS                 \ -- %xxxx_LLLL %xxxx_HHHH
     BIC.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=0
     BIS.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as output
 COLON                           \ high level word starts here 
@@ -27852,11 +42315,11 @@ ENDCODE
 \ BW1 BIC.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as intput
 \     BIS.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=1
 \ COLON                           \ starts a FORTH word
-\     TOP_LCD 2 20_us             \ -- %0000HHHH
-\     TOP_LCD 2 20_us             \ -- %0000HHHH %0000LLLL
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH %0000_LLLL
 \ HI2LO                           \ switch from FORTH to assembler
-\     RLAM #4,0(PSP)              \ -- %HHHH0000 %0000LLLL
-\     ADD.B @PSP+,TOS             \ -- %HHHHLLLL
+\     RLAM #4,0(PSP)              \ -- %HHHH_0000 %0000_LLLL
+\     ADD.B @PSP+,TOS             \ -- %HHHH_LLLL
 \     MOV @RSP+,IP                \ restore IP saved by COLON
 \     MOV @IP+,PC                 \
 \ ENDCODE
@@ -27997,14 +42460,14 @@ MOV @PSP+,TOS                   \     -- TOS
 RET
 ENDASM
 
-\ ------------------------------\
+\ ******************************\
 ASM BACKGROUND                  \
-\ ------------------------------\
+\ ******************************\
 BEGIN
 \     ...                         \ insert here your background task
 \     ...                         \
 \     ...                         \
-    CALL &RXON                  \ comment this line to disable TERMINAL
+    CALL &RXON                  \ comment this line to disable TERMINAL_INPUT
     BIS &LPM_MODE,SR            \
 \ ******************************\
 \ here start all interrupts     \
@@ -28013,23 +42476,43 @@ BEGIN
 \ ******************************\
 AGAIN                           \
 ENDASM                          \
+\ ******************************\
+
+\ ------------------------------\
+ASM SYS_OUT                    \ system OUT init, replaces WARM at the request of STOP.
+\ ------------------------------\
+\     ...                         \ init specific I/O sys as you want
+\     ...                         \ before executing default WARM
+    MOV #WARM,X                 \ ['] WARM 
+    ADD #4,X                    \ >BODY
+    MOV X,PC                    \ EXECUTE    (which activates IO and TERMINAL)
+ENDASM
+\ ------------------------------\
 
 \ ------------------------------\
 CODE STOP                       \ stops multitasking, must to be used before downloading app
 \ ------------------------------\
-\ restore default action of primary DEFERred word SLEEP (assembly version)
 BW1 MOV #SLEEP,X                \ the ASM word SLEEP is only visible in mode assembler. 
     ADD #4,X                    \ X = BODY of SLEEP, X-2 = PFA of SLEEP
-    MOV X,-2(X)                 \ restore the default background
+    MOV X,-2(X)                 \ restore the default background: SLEEP
+    MOV #WARM,X
+    MOV #SYS_OUT,2(X)           \ default WARM is replaced by JMJ_BOX SYS_OUT (ended by default WARM)
+    BIC.B #RC5,&IR_IE           \ clear RC5_Int
+    BIC.B #RC5,&IR_IFG          \ clear RC5_Int flag
+    MOV #0,&LCD_TIM_CTL         \ stop LCD_TIMER
+    MOV #0,&WDT_TIM_CTL         \ stop WDT_TIMER
+    MOV #0,&WDT_TIM_CCTL0       \ clear CCIFG0 disable CCIE0
+    CALL #INIT_VECT             \ reset all vectors other than TERMINAL_int
 COLON                           \ restore default action of primary DEFERred word WARM (FORTH version)
-['] WARM >BODY IS WARM          \ restore the default WARM
 ECHO                            \
-." RC5toLCD is removed. type START to restart"
-COLD                            \ performs reset to reset all interrupt vectors.    
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM                           \ performs reset to reset all interrupt vectors.    
 ;
+\ ------------------------------\
 
 \ ------------------------------\
-CODE APP_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
+CODE SYS_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
 \ ------------------------------\
 \ LCD_TIM_CTL =  %0000 0010 1001 0100\$3C0
 \                    - -             \CNTL Counter lentgh \ 00 = 16 bits
@@ -28059,7 +42542,7 @@ CODE APP_INIT                   \ this routine completes the init of system, i.e
 \ ------------------------------\
 \ set LCD_TIM_ to make 50kHz PWM \ for LCD_Vo; works without interrupt
 \ ------------------------------\
-MOV #%1011010100,&LCD_TIM_CTL   \ SMCLK/8, up mode, clear timer, no int
+MOV #%10_1101_0100,&LCD_TIM_CTL \ SMCLK/8, up mode, clear timer, no int
 \    MOV #0,&LCD_TIM_EX0        \ predivide by 1 in LCD_TIM_EX0 register (8 MHZ)
 FREQ_KHZ @ 16000 = [IF]         \ if 16 MHz
     MOV #1,&LCD_TIM_EX0         \ predivide by 2 in LCD_TIM_EX0 register (16 MHZ)
@@ -28071,7 +42554,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \ ------------------------------\
 \ set LCD_TIM_.2 to generate PWM for LCD_Vo
 \ ------------------------------\
-    MOV #%01100000,&LCD_TIM_CCTLn \ output mode = set/reset \ clear CCIFG
+MOV #%0110_0000,&LCD_TIM_CCTLn  \ output mode = set/reset \ clear CCIFG
     MOV #10,&LCD_TIM_CCRn       \ contrast adjust : 10/20 ==> LCD_Vo = -0V6|+3V6 (Vcc=3V6)
 \    MOV #12,&LCD_TIM_CCRn        \ contrast adjust : 12/20 ==> LCD_Vo = -1V4|+3V3 (Vcc=3V3)
 \ ------------------------------\
@@ -28100,7 +42583,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \                         -     \ TAIE
 \                          -    \ TAIFG
 \ ------------------------------\
-    MOV #%0100010100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
+MOV #%01_0001_0100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
 \ ------------------------------\
 \                        000    \ TAxEX0
 \                        ---    \ TAIDEX    pre divisor
@@ -28166,23 +42649,213 @@ COLON                           \
     ['] CR >BODY IS CR          \ CR executes its default value
     ['] EMIT >BODY IS EMIT      \ EMIT executes its defaulte value
     ." RC5toLCD is running. Type STOP to quit" \ display message on FastForth Terminal
-    ABORT                       \ ...and end APP_INIT with ABORT, no return.
+    PWR_STATE ABORT             \ init DP and continues with ABORT
 ;                               \
+\ ------------------------------\
 
 \ ------------------------------\
 CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
 \ ------------------------------\
-MOV #SLEEP,X                    \ replace default background process
+MOV #SLEEP,X                    \ replace default background process SLEEP
 MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
 MOV #WARM,X                     \ replace default WARM
-MOV #APP_INIT,2(X)              \ by RC5toLCD APP_INIT
-MOV X,PC                        \ then execute it
+MOV #SYS_INIT,2(X)              \ by RC5toLCD SYS_INIT
+MOV X,PC                        \ then execute new WARM
 ENDCODE 
+\ ------------------------------\
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
 
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
 
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] CONSTANT [IF]
+\ https://forth-standard.org/standard/core/CONSTANT
+\ CONSTANT <name>     n --                      define a Forth CONSTANT 
+: CONSTANT 
+CREATE
+HI2LO
+MOV TOS,-2(W)           \   PFA = n
+MOV @PSP+,TOS
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] STATE [IF]
+\ https://forth-standard.org/standard/core/STATE
+\ STATE   -- a-addr       holds compiler state
+STATEADR CONSTANT STATE
+[THEN]
+
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+    MOV @IP+,PC \ 4
+THEN
+XOR #-1,TOS     \ 1 flag Z = 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE     \ immediate
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+\ https://forth-standard.org/standard/core/DEFER
+\ DEFER "<spaces>name"   --
+\ Skip leading space delimiters. Parse name delimited by a space.
+\ Create a definition for name with the execution semantics defined below.
+
+\ name Execution:   --
+\ Execute the xt that name is set to execute, i.e. NEXT (nothing),
+\ until the phrase ' word IS name is executed, causing a new value of xt to be assigned to name.
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(W)        \ CFA = MOV @PC+,PC = BR MOV @IP+,PC
+MOV #NEXT_ADR,-2(W)     \ PFA = address of MOV @IP+,PC to do nothing.
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEFER! [IF]
+\ https://forth-standard.org/standard/core/DEFERStore
+\ Set the word xt1 to execute xt2. An ambiguous condition exists if xt1 is not for a word defined by DEFER.
+CODE DEFER!             \ xt2 xt1 --
+MOV @PSP+,2(TOS)        \ -- xt1=CFA_DEFER          xt2 --> [CFA_DEFER+2]
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] IS [IF]
+\ https://forth-standard.org/standard/core/IS
+\ IS <name>        xt --
+\ used as is :
+\ DEFER DISPLAY                         create a "do nothing" definition (2 CELLS)
+\ inline command : ' U. IS DISPLAY      U. becomes the runtime of the word DISPLAY
+\ or in a definition : ... ['] U. IS DISPLAY ...
+\ KEY, EMIT, CR, ACCEPT and WARM are examples of DEFERred words
+\
+\ as IS replaces the PFA value of any word, it's a TO alias for VARIABLE and CONSTANT words...
+: IS
+STATE @
+IF  POSTPONE ['] POSTPONE DEFER! 
+ELSE ' DEFER! 
+THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+\ CODE 20uS           \ n --      8MHz version
+\ BEGIN               \ 4 + 16 ~ loop
+\     MOV #39,rDOCON   \ 39
+\     BEGIN           \ 4 ~ loop
+\         NOP
+\         SUB #1,rDOCON
+\     0=  UNTIL
+\     SUB #1,TOS      \ 1
+\ 0= UNTIL
+\ MOV #XDOCON,rDOCON  \ 2
+\ MOV @PSP+,TOS
+\ MOV @RSP+,IP        \
+\ ENDCODE
+
 CODE 20_US                      \ n --      n * 20 us
 BEGIN                           \ here we presume that LCD_TIM_IFG = 1...
     BEGIN
@@ -28196,8 +42869,8 @@ MOV @IP+,PC                     \ 4
 ENDCODE
 
 CODE TOP_LCD                    \ LCD Sample
-\                               \ if write : %xxxxWWWW --
-\                               \ if read  : -- %0000RRRR
+\                               \ if write : %xxxx_WWWW --
+\                               \ if read  : -- %0000_RRRR
     BIS.B #LCD_EN,&LCD_CMD_OUT  \ lcd_en 0-->1
     BIT.B #LCD_RW,&LCD_CMD_IN   \ lcd_rw test
 0= IF                           \ write LCD bits pattern
@@ -28218,8 +42891,8 @@ ENDCODE
 CODE LCD_WRC                    \ char --         Write Char
     BIS.B #LCD_RS,&LCD_CMD_OUT  \ lcd_rs=1
 BW1 SUB #2,PSP                  \
-    MOV TOS,0(PSP)              \ -- %xxxxLLLL %HHHHLLLL
-    RRUM #4,TOS                 \ -- %xxxxLLLL %xxxxHHHH
+    MOV TOS,0(PSP)              \ -- %xxxx_LLLL %HHHH_LLLL
+    RRUM #4,TOS                 \ -- %xxxx_LLLL %xxxx_HHHH
     BIC.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=0
     BIS.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as output
 COLON                           \ high level word starts here 
@@ -28259,11 +42932,11 @@ ENDCODE
 \ BW1 BIC.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as intput
 \     BIS.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=1
 \ COLON                           \ starts a FORTH word
-\     TOP_LCD 2 20_us             \ -- %0000HHHH
-\     TOP_LCD 2 20_us             \ -- %0000HHHH %0000LLLL
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH %0000_LLLL
 \ HI2LO                           \ switch from FORTH to assembler
-\     RLAM #4,0(PSP)              \ -- %HHHH0000 %0000LLLL
-\     ADD.B @PSP+,TOS             \ -- %HHHHLLLL
+\     RLAM #4,0(PSP)              \ -- %HHHH_0000 %0000_LLLL
+\     ADD.B @PSP+,TOS             \ -- %HHHH_LLLL
 \     MOV @RSP+,IP                \ restore IP saved by COLON
 \     MOV @IP+,PC                 \
 \ ENDCODE
@@ -28404,14 +43077,14 @@ MOV @PSP+,TOS                   \     -- TOS
 RET
 ENDASM
 
-\ ------------------------------\
+\ ******************************\
 ASM BACKGROUND                  \
-\ ------------------------------\
+\ ******************************\
 BEGIN
 \     ...                         \ insert here your background task
 \     ...                         \
 \     ...                         \
-    CALL &RXON                  \ comment this line to disable TERMINAL
+    CALL &RXON                  \ comment this line to disable TERMINAL_INPUT
     BIS &LPM_MODE,SR            \
 \ ******************************\
 \ here start all interrupts     \
@@ -28420,23 +43093,43 @@ BEGIN
 \ ******************************\
 AGAIN                           \
 ENDASM                          \
+\ ******************************\
+
+\ ------------------------------\
+ASM SYS_OUT                    \ system OUT init, replaces WARM at the request of STOP.
+\ ------------------------------\
+\     ...                         \ init specific I/O sys as you want
+\     ...                         \ before executing default WARM
+    MOV #WARM,X                 \ ['] WARM 
+    ADD #4,X                    \ >BODY
+    MOV X,PC                    \ EXECUTE    (which activates IO and TERMINAL)
+ENDASM
+\ ------------------------------\
 
 \ ------------------------------\
 CODE STOP                       \ stops multitasking, must to be used before downloading app
 \ ------------------------------\
-\ restore default action of primary DEFERred word SLEEP (assembly version)
 BW1 MOV #SLEEP,X                \ the ASM word SLEEP is only visible in mode assembler. 
     ADD #4,X                    \ X = BODY of SLEEP, X-2 = PFA of SLEEP
-    MOV X,-2(X)                 \ restore the default background
+    MOV X,-2(X)                 \ restore the default background: SLEEP
+    MOV #WARM,X
+    MOV #SYS_OUT,2(X)           \ default WARM is replaced by JMJ_BOX SYS_OUT (ended by default WARM)
+    BIC.B #RC5,&IR_IE           \ clear RC5_Int
+    BIC.B #RC5,&IR_IFG          \ clear RC5_Int flag
+    MOV #0,&LCD_TIM_CTL         \ stop LCD_TIMER
+    MOV #0,&WDT_TIM_CTL         \ stop WDT_TIMER
+    MOV #0,&WDT_TIM_CCTL0       \ clear CCIFG0 disable CCIE0
+    CALL #INIT_VECT             \ reset all vectors other than TERMINAL_int
 COLON                           \ restore default action of primary DEFERred word WARM (FORTH version)
-['] WARM >BODY IS WARM          \ restore the default WARM
 ECHO                            \
-." RC5toLCD is removed. type START to restart"
-COLD                            \ performs reset to reset all interrupt vectors.    
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM                           \ performs reset to reset all interrupt vectors.    
 ;
+\ ------------------------------\
 
 \ ------------------------------\
-CODE APP_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
+CODE SYS_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
 \ ------------------------------\
 \ LCD_TIM_CTL =  %0000 0010 1001 0100\$3C0
 \                    - -             \CNTL Counter lentgh \ 00 = 16 bits
@@ -28466,7 +43159,7 @@ CODE APP_INIT                   \ this routine completes the init of system, i.e
 \ ------------------------------\
 \ set LCD_TIM_ to make 50kHz PWM \ for LCD_Vo; works without interrupt
 \ ------------------------------\
-MOV #%1011010100,&LCD_TIM_CTL   \ SMCLK/8, up mode, clear timer, no int
+MOV #%10_1101_0100,&LCD_TIM_CTL \ SMCLK/8, up mode, clear timer, no int
 \    MOV #0,&LCD_TIM_EX0        \ predivide by 1 in LCD_TIM_EX0 register (8 MHZ)
 FREQ_KHZ @ 16000 = [IF]         \ if 16 MHz
     MOV #1,&LCD_TIM_EX0         \ predivide by 2 in LCD_TIM_EX0 register (16 MHZ)
@@ -28478,7 +43171,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \ ------------------------------\
 \ set LCD_TIM_.2 to generate PWM for LCD_Vo
 \ ------------------------------\
-    MOV #%01100000,&LCD_TIM_CCTLn \ output mode = set/reset \ clear CCIFG
+MOV #%0110_0000,&LCD_TIM_CCTLn  \ output mode = set/reset \ clear CCIFG
     MOV #10,&LCD_TIM_CCRn       \ contrast adjust : 10/20 ==> LCD_Vo = -0V6|+3V6 (Vcc=3V6)
 \    MOV #12,&LCD_TIM_CCRn        \ contrast adjust : 12/20 ==> LCD_Vo = -1V4|+3V3 (Vcc=3V3)
 \ ------------------------------\
@@ -28507,7 +43200,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \                         -     \ TAIE
 \                          -    \ TAIFG
 \ ------------------------------\
-    MOV #%0100010100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
+MOV #%01_0001_0100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
 \ ------------------------------\
 \                        000    \ TAxEX0
 \                        ---    \ TAIDEX    pre divisor
@@ -28573,23 +43266,213 @@ COLON                           \
     ['] CR >BODY IS CR          \ CR executes its default value
     ['] EMIT >BODY IS EMIT      \ EMIT executes its defaulte value
     ." RC5toLCD is running. Type STOP to quit" \ display message on FastForth Terminal
-    ABORT                       \ ...and end APP_INIT with ABORT, no return.
+    PWR_STATE ABORT             \ init DP and continues with ABORT
 ;                               \
+\ ------------------------------\
 
 \ ------------------------------\
 CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
 \ ------------------------------\
-MOV #SLEEP,X                    \ replace default background process
+MOV #SLEEP,X                    \ replace default background process SLEEP
 MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
 MOV #WARM,X                     \ replace default WARM
-MOV #APP_INIT,2(X)              \ by RC5toLCD APP_INIT
-MOV X,PC                        \ then execute it
+MOV #SYS_INIT,2(X)              \ by RC5toLCD SYS_INIT
+MOV X,PC                        \ then execute new WARM
 ENDCODE 
+\ ------------------------------\
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
 
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
 
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] CONSTANT [IF]
+\ https://forth-standard.org/standard/core/CONSTANT
+\ CONSTANT <name>     n --                      define a Forth CONSTANT 
+: CONSTANT 
+CREATE
+HI2LO
+MOV TOS,-2(W)           \   PFA = n
+MOV @PSP+,TOS
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] STATE [IF]
+\ https://forth-standard.org/standard/core/STATE
+\ STATE   -- a-addr       holds compiler state
+STATEADR CONSTANT STATE
+[THEN]
+
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+    MOV @IP+,PC \ 4
+THEN
+XOR #-1,TOS     \ 1 flag Z = 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE     \ immediate
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+\ https://forth-standard.org/standard/core/DEFER
+\ DEFER "<spaces>name"   --
+\ Skip leading space delimiters. Parse name delimited by a space.
+\ Create a definition for name with the execution semantics defined below.
+
+\ name Execution:   --
+\ Execute the xt that name is set to execute, i.e. NEXT (nothing),
+\ until the phrase ' word IS name is executed, causing a new value of xt to be assigned to name.
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(W)        \ CFA = MOV @PC+,PC = BR MOV @IP+,PC
+MOV #NEXT_ADR,-2(W)     \ PFA = address of MOV @IP+,PC to do nothing.
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEFER! [IF]
+\ https://forth-standard.org/standard/core/DEFERStore
+\ Set the word xt1 to execute xt2. An ambiguous condition exists if xt1 is not for a word defined by DEFER.
+CODE DEFER!             \ xt2 xt1 --
+MOV @PSP+,2(TOS)        \ -- xt1=CFA_DEFER          xt2 --> [CFA_DEFER+2]
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] IS [IF]
+\ https://forth-standard.org/standard/core/IS
+\ IS <name>        xt --
+\ used as is :
+\ DEFER DISPLAY                         create a "do nothing" definition (2 CELLS)
+\ inline command : ' U. IS DISPLAY      U. becomes the runtime of the word DISPLAY
+\ or in a definition : ... ['] U. IS DISPLAY ...
+\ KEY, EMIT, CR, ACCEPT and WARM are examples of DEFERred words
+\
+\ as IS replaces the PFA value of any word, it's a TO alias for VARIABLE and CONSTANT words...
+: IS
+STATE @
+IF  POSTPONE ['] POSTPONE DEFER! 
+ELSE ' DEFER! 
+THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+\ CODE 20uS           \ n --      8MHz version
+\ BEGIN               \ 4 + 16 ~ loop
+\     MOV #39,rDOCON   \ 39
+\     BEGIN           \ 4 ~ loop
+\         NOP
+\         SUB #1,rDOCON
+\     0=  UNTIL
+\     SUB #1,TOS      \ 1
+\ 0= UNTIL
+\ MOV #XDOCON,rDOCON  \ 2
+\ MOV @PSP+,TOS
+\ MOV @RSP+,IP        \
+\ ENDCODE
+
 CODE 20_US                      \ n --      n * 20 us
 BEGIN                           \ here we presume that LCD_TIM_IFG = 1...
     BEGIN
@@ -28603,8 +43486,8 @@ MOV @IP+,PC                     \ 4
 ENDCODE
 
 CODE TOP_LCD                    \ LCD Sample
-\                               \ if write : %xxxxWWWW --
-\                               \ if read  : -- %0000RRRR
+\                               \ if write : %xxxx_WWWW --
+\                               \ if read  : -- %0000_RRRR
     BIS.B #LCD_EN,&LCD_CMD_OUT  \ lcd_en 0-->1
     BIT.B #LCD_RW,&LCD_CMD_IN   \ lcd_rw test
 0= IF                           \ write LCD bits pattern
@@ -28625,8 +43508,8 @@ ENDCODE
 CODE LCD_WRC                    \ char --         Write Char
     BIS.B #LCD_RS,&LCD_CMD_OUT  \ lcd_rs=1
 BW1 SUB #2,PSP                  \
-    MOV TOS,0(PSP)              \ -- %xxxxLLLL %HHHHLLLL
-    RRUM #4,TOS                 \ -- %xxxxLLLL %xxxxHHHH
+    MOV TOS,0(PSP)              \ -- %xxxx_LLLL %HHHH_LLLL
+    RRUM #4,TOS                 \ -- %xxxx_LLLL %xxxx_HHHH
     BIC.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=0
     BIS.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as output
 COLON                           \ high level word starts here 
@@ -28666,11 +43549,11 @@ ENDCODE
 \ BW1 BIC.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as intput
 \     BIS.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=1
 \ COLON                           \ starts a FORTH word
-\     TOP_LCD 2 20_us             \ -- %0000HHHH
-\     TOP_LCD 2 20_us             \ -- %0000HHHH %0000LLLL
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH %0000_LLLL
 \ HI2LO                           \ switch from FORTH to assembler
-\     RLAM #4,0(PSP)              \ -- %HHHH0000 %0000LLLL
-\     ADD.B @PSP+,TOS             \ -- %HHHHLLLL
+\     RLAM #4,0(PSP)              \ -- %HHHH_0000 %0000_LLLL
+\     ADD.B @PSP+,TOS             \ -- %HHHH_LLLL
 \     MOV @RSP+,IP                \ restore IP saved by COLON
 \     MOV @IP+,PC                 \
 \ ENDCODE
@@ -28811,14 +43694,14 @@ MOV @PSP+,TOS                   \     -- TOS
 RET
 ENDASM
 
-\ ------------------------------\
+\ ******************************\
 ASM BACKGROUND                  \
-\ ------------------------------\
+\ ******************************\
 BEGIN
 \     ...                         \ insert here your background task
 \     ...                         \
 \     ...                         \
-    CALL &RXON                  \ comment this line to disable TERMINAL
+    CALL &RXON                  \ comment this line to disable TERMINAL_INPUT
     BIS &LPM_MODE,SR            \
 \ ******************************\
 \ here start all interrupts     \
@@ -28827,23 +43710,43 @@ BEGIN
 \ ******************************\
 AGAIN                           \
 ENDASM                          \
+\ ******************************\
+
+\ ------------------------------\
+ASM SYS_OUT                    \ system OUT init, replaces WARM at the request of STOP.
+\ ------------------------------\
+\     ...                         \ init specific I/O sys as you want
+\     ...                         \ before executing default WARM
+    MOV #WARM,X                 \ ['] WARM 
+    ADD #4,X                    \ >BODY
+    MOV X,PC                    \ EXECUTE    (which activates IO and TERMINAL)
+ENDASM
+\ ------------------------------\
 
 \ ------------------------------\
 CODE STOP                       \ stops multitasking, must to be used before downloading app
 \ ------------------------------\
-\ restore default action of primary DEFERred word SLEEP (assembly version)
 BW1 MOV #SLEEP,X                \ the ASM word SLEEP is only visible in mode assembler. 
     ADD #4,X                    \ X = BODY of SLEEP, X-2 = PFA of SLEEP
-    MOV X,-2(X)                 \ restore the default background
+    MOV X,-2(X)                 \ restore the default background: SLEEP
+    MOV #WARM,X
+    MOV #SYS_OUT,2(X)           \ default WARM is replaced by JMJ_BOX SYS_OUT (ended by default WARM)
+    BIC.B #RC5,&IR_IE           \ clear RC5_Int
+    BIC.B #RC5,&IR_IFG          \ clear RC5_Int flag
+    MOV #0,&LCD_TIM_CTL         \ stop LCD_TIMER
+    MOV #0,&WDT_TIM_CTL         \ stop WDT_TIMER
+    MOV #0,&WDT_TIM_CCTL0       \ clear CCIFG0 disable CCIE0
+    CALL #INIT_VECT             \ reset all vectors other than TERMINAL_int
 COLON                           \ restore default action of primary DEFERred word WARM (FORTH version)
-['] WARM >BODY IS WARM          \ restore the default WARM
 ECHO                            \
-." RC5toLCD is removed. type START to restart"
-COLD                            \ performs reset to reset all interrupt vectors.    
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM                           \ performs reset to reset all interrupt vectors.    
 ;
+\ ------------------------------\
 
 \ ------------------------------\
-CODE APP_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
+CODE SYS_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
 \ ------------------------------\
 \ LCD_TIM_CTL =  %0000 0010 1001 0100\$3C0
 \                    - -             \CNTL Counter lentgh \ 00 = 16 bits
@@ -28873,7 +43776,7 @@ CODE APP_INIT                   \ this routine completes the init of system, i.e
 \ ------------------------------\
 \ set LCD_TIM_ to make 50kHz PWM \ for LCD_Vo; works without interrupt
 \ ------------------------------\
-MOV #%1011010100,&LCD_TIM_CTL   \ SMCLK/8, up mode, clear timer, no int
+MOV #%10_1101_0100,&LCD_TIM_CTL \ SMCLK/8, up mode, clear timer, no int
 \    MOV #0,&LCD_TIM_EX0        \ predivide by 1 in LCD_TIM_EX0 register (8 MHZ)
 FREQ_KHZ @ 16000 = [IF]         \ if 16 MHz
     MOV #1,&LCD_TIM_EX0         \ predivide by 2 in LCD_TIM_EX0 register (16 MHZ)
@@ -28885,7 +43788,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \ ------------------------------\
 \ set LCD_TIM_.2 to generate PWM for LCD_Vo
 \ ------------------------------\
-    MOV #%01100000,&LCD_TIM_CCTLn \ output mode = set/reset \ clear CCIFG
+MOV #%0110_0000,&LCD_TIM_CCTLn  \ output mode = set/reset \ clear CCIFG
     MOV #10,&LCD_TIM_CCRn       \ contrast adjust : 10/20 ==> LCD_Vo = -0V6|+3V6 (Vcc=3V6)
 \    MOV #12,&LCD_TIM_CCRn        \ contrast adjust : 12/20 ==> LCD_Vo = -1V4|+3V3 (Vcc=3V3)
 \ ------------------------------\
@@ -28914,7 +43817,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \                         -     \ TAIE
 \                          -    \ TAIFG
 \ ------------------------------\
-    MOV #%0100010100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
+MOV #%01_0001_0100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
 \ ------------------------------\
 \                        000    \ TAxEX0
 \                        ---    \ TAIDEX    pre divisor
@@ -28980,22 +43883,212 @@ COLON                           \
     ['] CR >BODY IS CR          \ CR executes its default value
     ['] EMIT >BODY IS EMIT      \ EMIT executes its defaulte value
     ." RC5toLCD is running. Type STOP to quit" \ display message on FastForth Terminal
-    ABORT                       \ ...and end APP_INIT with ABORT, no return.
+    PWR_STATE ABORT             \ init DP and continues with ABORT
 ;                               \
+\ ------------------------------\
 
 \ ------------------------------\
 CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
 \ ------------------------------\
-MOV #SLEEP,X                    \ replace default background process
+MOV #SLEEP,X                    \ replace default background process SLEEP
 MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
 MOV #WARM,X                     \ replace default WARM
-MOV #APP_INIT,2(X)              \ by RC5toLCD APP_INIT
-MOV X,PC                        \ then execute it
+MOV #SYS_INIT,2(X)              \ by RC5toLCD SYS_INIT
+MOV X,PC                        \ then execute new WARM
 ENDCODE 
+\ ------------------------------\
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
+
+[DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
+
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
+
+MARKER {RC5TOLCD}
+
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] CONSTANT [IF]
+\ https://forth-standard.org/standard/core/CONSTANT
+\ CONSTANT <name>     n --                      define a Forth CONSTANT 
+: CONSTANT 
+CREATE
+HI2LO
+MOV TOS,-2(W)           \   PFA = n
+MOV @PSP+,TOS
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] STATE [IF]
+\ https://forth-standard.org/standard/core/STATE
+\ STATE   -- a-addr       holds compiler state
+STATEADR CONSTANT STATE
+[THEN]
+
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+    MOV @IP+,PC \ 4
+THEN
+XOR #-1,TOS     \ 1 flag Z = 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE     \ immediate
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+\ https://forth-standard.org/standard/core/DEFER
+\ DEFER "<spaces>name"   --
+\ Skip leading space delimiters. Parse name delimited by a space.
+\ Create a definition for name with the execution semantics defined below.
+
+\ name Execution:   --
+\ Execute the xt that name is set to execute, i.e. NEXT (nothing),
+\ until the phrase ' word IS name is executed, causing a new value of xt to be assigned to name.
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(W)        \ CFA = MOV @PC+,PC = BR MOV @IP+,PC
+MOV #NEXT_ADR,-2(W)     \ PFA = address of MOV @IP+,PC to do nothing.
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEFER! [IF]
+\ https://forth-standard.org/standard/core/DEFERStore
+\ Set the word xt1 to execute xt2. An ambiguous condition exists if xt1 is not for a word defined by DEFER.
+CODE DEFER!             \ xt2 xt1 --
+MOV @PSP+,2(TOS)        \ -- xt1=CFA_DEFER          xt2 --> [CFA_DEFER+2]
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE
+[THEN]
 
-[DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
+[UNDEFINED] IS [IF]
+\ https://forth-standard.org/standard/core/IS
+\ IS <name>        xt --
+\ used as is :
+\ DEFER DISPLAY                         create a "do nothing" definition (2 CELLS)
+\ inline command : ' U. IS DISPLAY      U. becomes the runtime of the word DISPLAY
+\ or in a definition : ... ['] U. IS DISPLAY ...
+\ KEY, EMIT, CR, ACCEPT and WARM are examples of DEFERred words
+\
+\ as IS replaces the PFA value of any word, it's a TO alias for VARIABLE and CONSTANT words...
+: IS
+STATE @
+IF  POSTPONE ['] POSTPONE DEFER! 
+ELSE ' DEFER! 
+THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
 
-MARKER {RC5TOLCD}
+\ CODE 20uS           \ n --      8MHz version
+\ BEGIN               \ 4 + 16 ~ loop
+\     MOV #39,rDOCON   \ 39
+\     BEGIN           \ 4 ~ loop
+\         NOP
+\         SUB #1,rDOCON
+\     0=  UNTIL
+\     SUB #1,TOS      \ 1
+\ 0= UNTIL
+\ MOV #XDOCON,rDOCON  \ 2
+\ MOV @PSP+,TOS
+\ MOV @RSP+,IP        \
+\ ENDCODE
 
 CODE 20_US                      \ n --      n * 20 us
 BEGIN                           \ here we presume that LCD_TIM_IFG = 1...
@@ -29010,8 +44103,8 @@ MOV @IP+,PC                     \ 4
 ENDCODE
 
 CODE TOP_LCD                    \ LCD Sample
-\                               \ if write : %xxxxWWWW --
-\                               \ if read  : -- %0000RRRR
+\                               \ if write : %xxxx_WWWW --
+\                               \ if read  : -- %0000_RRRR
     BIS.B #LCD_EN,&LCD_CMD_OUT  \ lcd_en 0-->1
     BIT.B #LCD_RW,&LCD_CMD_IN   \ lcd_rw test
 0= IF                           \ write LCD bits pattern
@@ -29032,8 +44125,8 @@ ENDCODE
 CODE LCD_WRC                    \ char --         Write Char
     BIS.B #LCD_RS,&LCD_CMD_OUT  \ lcd_rs=1
 BW1 SUB #2,PSP                  \
-    MOV TOS,0(PSP)              \ -- %xxxxLLLL %HHHHLLLL
-    RRUM #4,TOS                 \ -- %xxxxLLLL %xxxxHHHH
+    MOV TOS,0(PSP)              \ -- %xxxx_LLLL %HHHH_LLLL
+    RRUM #4,TOS                 \ -- %xxxx_LLLL %xxxx_HHHH
     BIC.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=0
     BIS.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as output
 COLON                           \ high level word starts here 
@@ -29073,11 +44166,11 @@ ENDCODE
 \ BW1 BIC.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as intput
 \     BIS.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=1
 \ COLON                           \ starts a FORTH word
-\     TOP_LCD 2 20_us             \ -- %0000HHHH
-\     TOP_LCD 2 20_us             \ -- %0000HHHH %0000LLLL
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH %0000_LLLL
 \ HI2LO                           \ switch from FORTH to assembler
-\     RLAM #4,0(PSP)              \ -- %HHHH0000 %0000LLLL
-\     ADD.B @PSP+,TOS             \ -- %HHHHLLLL
+\     RLAM #4,0(PSP)              \ -- %HHHH_0000 %0000_LLLL
+\     ADD.B @PSP+,TOS             \ -- %HHHH_LLLL
 \     MOV @RSP+,IP                \ restore IP saved by COLON
 \     MOV @IP+,PC                 \
 \ ENDCODE
@@ -29218,14 +44311,14 @@ MOV @PSP+,TOS                   \     -- TOS
 RET
 ENDASM
 
-\ ------------------------------\
+\ ******************************\
 ASM BACKGROUND                  \
-\ ------------------------------\
+\ ******************************\
 BEGIN
 \     ...                         \ insert here your background task
 \     ...                         \
 \     ...                         \
-    CALL &RXON                  \ comment this line to disable TERMINAL
+    CALL &RXON                  \ comment this line to disable TERMINAL_INPUT
     BIS &LPM_MODE,SR            \
 \ ******************************\
 \ here start all interrupts     \
@@ -29234,23 +44327,43 @@ BEGIN
 \ ******************************\
 AGAIN                           \
 ENDASM                          \
+\ ******************************\
+
+\ ------------------------------\
+ASM SYS_OUT                    \ system OUT init, replaces WARM at the request of STOP.
+\ ------------------------------\
+\     ...                         \ init specific I/O sys as you want
+\     ...                         \ before executing default WARM
+    MOV #WARM,X                 \ ['] WARM 
+    ADD #4,X                    \ >BODY
+    MOV X,PC                    \ EXECUTE    (which activates IO and TERMINAL)
+ENDASM
+\ ------------------------------\
 
 \ ------------------------------\
 CODE STOP                       \ stops multitasking, must to be used before downloading app
 \ ------------------------------\
-\ restore default action of primary DEFERred word SLEEP (assembly version)
 BW1 MOV #SLEEP,X                \ the ASM word SLEEP is only visible in mode assembler. 
     ADD #4,X                    \ X = BODY of SLEEP, X-2 = PFA of SLEEP
-    MOV X,-2(X)                 \ restore the default background
+    MOV X,-2(X)                 \ restore the default background: SLEEP
+    MOV #WARM,X
+    MOV #SYS_OUT,2(X)           \ default WARM is replaced by JMJ_BOX SYS_OUT (ended by default WARM)
+    BIC.B #RC5,&IR_IE           \ clear RC5_Int
+    BIC.B #RC5,&IR_IFG          \ clear RC5_Int flag
+    MOV #0,&LCD_TIM_CTL         \ stop LCD_TIMER
+    MOV #0,&WDT_TIM_CTL         \ stop WDT_TIMER
+    MOV #0,&WDT_TIM_CCTL0       \ clear CCIFG0 disable CCIE0
+    CALL #INIT_VECT             \ reset all vectors other than TERMINAL_int
 COLON                           \ restore default action of primary DEFERred word WARM (FORTH version)
-['] WARM >BODY IS WARM          \ restore the default WARM
 ECHO                            \
-." RC5toLCD is removed. type START to restart"
-COLD                            \ performs reset to reset all interrupt vectors.    
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM                           \ performs reset to reset all interrupt vectors.    
 ;
+\ ------------------------------\
 
 \ ------------------------------\
-CODE APP_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
+CODE SYS_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
 \ ------------------------------\
 \ LCD_TIM_CTL =  %0000 0010 1001 0100\$3C0
 \                    - -             \CNTL Counter lentgh \ 00 = 16 bits
@@ -29280,7 +44393,7 @@ CODE APP_INIT                   \ this routine completes the init of system, i.e
 \ ------------------------------\
 \ set LCD_TIM_ to make 50kHz PWM \ for LCD_Vo; works without interrupt
 \ ------------------------------\
-MOV #%1011010100,&LCD_TIM_CTL   \ SMCLK/8, up mode, clear timer, no int
+MOV #%10_1101_0100,&LCD_TIM_CTL \ SMCLK/8, up mode, clear timer, no int
 \    MOV #0,&LCD_TIM_EX0        \ predivide by 1 in LCD_TIM_EX0 register (8 MHZ)
 FREQ_KHZ @ 16000 = [IF]         \ if 16 MHz
     MOV #1,&LCD_TIM_EX0         \ predivide by 2 in LCD_TIM_EX0 register (16 MHZ)
@@ -29292,7 +44405,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \ ------------------------------\
 \ set LCD_TIM_.2 to generate PWM for LCD_Vo
 \ ------------------------------\
-    MOV #%01100000,&LCD_TIM_CCTLn \ output mode = set/reset \ clear CCIFG
+MOV #%0110_0000,&LCD_TIM_CCTLn  \ output mode = set/reset \ clear CCIFG
     MOV #10,&LCD_TIM_CCRn       \ contrast adjust : 10/20 ==> LCD_Vo = -0V6|+3V6 (Vcc=3V6)
 \    MOV #12,&LCD_TIM_CCRn        \ contrast adjust : 12/20 ==> LCD_Vo = -1V4|+3V3 (Vcc=3V3)
 \ ------------------------------\
@@ -29321,7 +44434,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \                         -     \ TAIE
 \                          -    \ TAIFG
 \ ------------------------------\
-    MOV #%0100010100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
+MOV #%01_0001_0100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
 \ ------------------------------\
 \                        000    \ TAxEX0
 \                        ---    \ TAIDEX    pre divisor
@@ -29387,23 +44500,213 @@ COLON                           \
     ['] CR >BODY IS CR          \ CR executes its default value
     ['] EMIT >BODY IS EMIT      \ EMIT executes its defaulte value
     ." RC5toLCD is running. Type STOP to quit" \ display message on FastForth Terminal
-    ABORT                       \ ...and end APP_INIT with ABORT, no return.
+    PWR_STATE ABORT             \ init DP and continues with ABORT
 ;                               \
+\ ------------------------------\
 
 \ ------------------------------\
 CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
 \ ------------------------------\
-MOV #SLEEP,X                    \ replace default background process
+MOV #SLEEP,X                    \ replace default background process SLEEP
 MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
 MOV #WARM,X                     \ replace default WARM
-MOV #APP_INIT,2(X)              \ by RC5toLCD APP_INIT
-MOV X,PC                        \ then execute it
+MOV #SYS_INIT,2(X)              \ by RC5toLCD SYS_INIT
+MOV X,PC                        \ then execute new WARM
 ENDCODE 
+\ ------------------------------\
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
 
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
 
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] CONSTANT [IF]
+\ https://forth-standard.org/standard/core/CONSTANT
+\ CONSTANT <name>     n --                      define a Forth CONSTANT 
+: CONSTANT 
+CREATE
+HI2LO
+MOV TOS,-2(W)           \   PFA = n
+MOV @PSP+,TOS
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] STATE [IF]
+\ https://forth-standard.org/standard/core/STATE
+\ STATE   -- a-addr       holds compiler state
+STATEADR CONSTANT STATE
+[THEN]
+
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+    MOV @IP+,PC \ 4
+THEN
+XOR #-1,TOS     \ 1 flag Z = 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE     \ immediate
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+\ https://forth-standard.org/standard/core/DEFER
+\ DEFER "<spaces>name"   --
+\ Skip leading space delimiters. Parse name delimited by a space.
+\ Create a definition for name with the execution semantics defined below.
+
+\ name Execution:   --
+\ Execute the xt that name is set to execute, i.e. NEXT (nothing),
+\ until the phrase ' word IS name is executed, causing a new value of xt to be assigned to name.
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(W)        \ CFA = MOV @PC+,PC = BR MOV @IP+,PC
+MOV #NEXT_ADR,-2(W)     \ PFA = address of MOV @IP+,PC to do nothing.
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEFER! [IF]
+\ https://forth-standard.org/standard/core/DEFERStore
+\ Set the word xt1 to execute xt2. An ambiguous condition exists if xt1 is not for a word defined by DEFER.
+CODE DEFER!             \ xt2 xt1 --
+MOV @PSP+,2(TOS)        \ -- xt1=CFA_DEFER          xt2 --> [CFA_DEFER+2]
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] IS [IF]
+\ https://forth-standard.org/standard/core/IS
+\ IS <name>        xt --
+\ used as is :
+\ DEFER DISPLAY                         create a "do nothing" definition (2 CELLS)
+\ inline command : ' U. IS DISPLAY      U. becomes the runtime of the word DISPLAY
+\ or in a definition : ... ['] U. IS DISPLAY ...
+\ KEY, EMIT, CR, ACCEPT and WARM are examples of DEFERred words
+\
+\ as IS replaces the PFA value of any word, it's a TO alias for VARIABLE and CONSTANT words...
+: IS
+STATE @
+IF  POSTPONE ['] POSTPONE DEFER! 
+ELSE ' DEFER! 
+THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+\ CODE 20uS           \ n --      8MHz version
+\ BEGIN               \ 4 + 16 ~ loop
+\     MOV #39,rDOCON   \ 39
+\     BEGIN           \ 4 ~ loop
+\         NOP
+\         SUB #1,rDOCON
+\     0=  UNTIL
+\     SUB #1,TOS      \ 1
+\ 0= UNTIL
+\ MOV #XDOCON,rDOCON  \ 2
+\ MOV @PSP+,TOS
+\ MOV @RSP+,IP        \
+\ ENDCODE
+
 CODE 20_US                      \ n --      n * 20 us
 BEGIN                           \ here we presume that LCD_TIM_IFG = 1...
     BEGIN
@@ -29417,8 +44720,8 @@ MOV @IP+,PC                     \ 4
 ENDCODE
 
 CODE TOP_LCD                    \ LCD Sample
-\                               \ if write : %xxxxWWWW --
-\                               \ if read  : -- %0000RRRR
+\                               \ if write : %xxxx_WWWW --
+\                               \ if read  : -- %0000_RRRR
     BIS.B #LCD_EN,&LCD_CMD_OUT  \ lcd_en 0-->1
     BIT.B #LCD_RW,&LCD_CMD_IN   \ lcd_rw test
 0= IF                           \ write LCD bits pattern
@@ -29439,8 +44742,8 @@ ENDCODE
 CODE LCD_WRC                    \ char --         Write Char
     BIS.B #LCD_RS,&LCD_CMD_OUT  \ lcd_rs=1
 BW1 SUB #2,PSP                  \
-    MOV TOS,0(PSP)              \ -- %xxxxLLLL %HHHHLLLL
-    RRUM #4,TOS                 \ -- %xxxxLLLL %xxxxHHHH
+    MOV TOS,0(PSP)              \ -- %xxxx_LLLL %HHHH_LLLL
+    RRUM #4,TOS                 \ -- %xxxx_LLLL %xxxx_HHHH
     BIC.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=0
     BIS.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as output
 COLON                           \ high level word starts here 
@@ -29480,11 +44783,11 @@ ENDCODE
 \ BW1 BIC.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as intput
 \     BIS.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=1
 \ COLON                           \ starts a FORTH word
-\     TOP_LCD 2 20_us             \ -- %0000HHHH
-\     TOP_LCD 2 20_us             \ -- %0000HHHH %0000LLLL
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH %0000_LLLL
 \ HI2LO                           \ switch from FORTH to assembler
-\     RLAM #4,0(PSP)              \ -- %HHHH0000 %0000LLLL
-\     ADD.B @PSP+,TOS             \ -- %HHHHLLLL
+\     RLAM #4,0(PSP)              \ -- %HHHH_0000 %0000_LLLL
+\     ADD.B @PSP+,TOS             \ -- %HHHH_LLLL
 \     MOV @RSP+,IP                \ restore IP saved by COLON
 \     MOV @IP+,PC                 \
 \ ENDCODE
@@ -29625,14 +44928,14 @@ MOV @PSP+,TOS                   \     -- TOS
 RET
 ENDASM
 
-\ ------------------------------\
+\ ******************************\
 ASM BACKGROUND                  \
-\ ------------------------------\
+\ ******************************\
 BEGIN
 \     ...                         \ insert here your background task
 \     ...                         \
 \     ...                         \
-    CALL &RXON                  \ comment this line to disable TERMINAL
+    CALL &RXON                  \ comment this line to disable TERMINAL_INPUT
     BIS &LPM_MODE,SR            \
 \ ******************************\
 \ here start all interrupts     \
@@ -29641,23 +44944,43 @@ BEGIN
 \ ******************************\
 AGAIN                           \
 ENDASM                          \
+\ ******************************\
+
+\ ------------------------------\
+ASM SYS_OUT                    \ system OUT init, replaces WARM at the request of STOP.
+\ ------------------------------\
+\     ...                         \ init specific I/O sys as you want
+\     ...                         \ before executing default WARM
+    MOV #WARM,X                 \ ['] WARM 
+    ADD #4,X                    \ >BODY
+    MOV X,PC                    \ EXECUTE    (which activates IO and TERMINAL)
+ENDASM
+\ ------------------------------\
 
 \ ------------------------------\
 CODE STOP                       \ stops multitasking, must to be used before downloading app
 \ ------------------------------\
-\ restore default action of primary DEFERred word SLEEP (assembly version)
 BW1 MOV #SLEEP,X                \ the ASM word SLEEP is only visible in mode assembler. 
     ADD #4,X                    \ X = BODY of SLEEP, X-2 = PFA of SLEEP
-    MOV X,-2(X)                 \ restore the default background
+    MOV X,-2(X)                 \ restore the default background: SLEEP
+    MOV #WARM,X
+    MOV #SYS_OUT,2(X)           \ default WARM is replaced by JMJ_BOX SYS_OUT (ended by default WARM)
+    BIC.B #RC5,&IR_IE           \ clear RC5_Int
+    BIC.B #RC5,&IR_IFG          \ clear RC5_Int flag
+    MOV #0,&LCD_TIM_CTL         \ stop LCD_TIMER
+    MOV #0,&WDT_TIM_CTL         \ stop WDT_TIMER
+    MOV #0,&WDT_TIM_CCTL0       \ clear CCIFG0 disable CCIE0
+    CALL #INIT_VECT             \ reset all vectors other than TERMINAL_int
 COLON                           \ restore default action of primary DEFERred word WARM (FORTH version)
-['] WARM >BODY IS WARM          \ restore the default WARM
 ECHO                            \
-." RC5toLCD is removed. type START to restart"
-COLD                            \ performs reset to reset all interrupt vectors.    
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM                           \ performs reset to reset all interrupt vectors.    
 ;
+\ ------------------------------\
 
 \ ------------------------------\
-CODE APP_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
+CODE SYS_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
 \ ------------------------------\
 \ LCD_TIM_CTL =  %0000 0010 1001 0100\$3C0
 \                    - -             \CNTL Counter lentgh \ 00 = 16 bits
@@ -29687,7 +45010,7 @@ CODE APP_INIT                   \ this routine completes the init of system, i.e
 \ ------------------------------\
 \ set LCD_TIM_ to make 50kHz PWM \ for LCD_Vo; works without interrupt
 \ ------------------------------\
-MOV #%1011010100,&LCD_TIM_CTL   \ SMCLK/8, up mode, clear timer, no int
+MOV #%10_1101_0100,&LCD_TIM_CTL \ SMCLK/8, up mode, clear timer, no int
 \    MOV #0,&LCD_TIM_EX0        \ predivide by 1 in LCD_TIM_EX0 register (8 MHZ)
 FREQ_KHZ @ 16000 = [IF]         \ if 16 MHz
     MOV #1,&LCD_TIM_EX0         \ predivide by 2 in LCD_TIM_EX0 register (16 MHZ)
@@ -29699,7 +45022,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \ ------------------------------\
 \ set LCD_TIM_.2 to generate PWM for LCD_Vo
 \ ------------------------------\
-    MOV #%01100000,&LCD_TIM_CCTLn \ output mode = set/reset \ clear CCIFG
+MOV #%0110_0000,&LCD_TIM_CCTLn  \ output mode = set/reset \ clear CCIFG
     MOV #10,&LCD_TIM_CCRn       \ contrast adjust : 10/20 ==> LCD_Vo = -0V6|+3V6 (Vcc=3V6)
 \    MOV #12,&LCD_TIM_CCRn        \ contrast adjust : 12/20 ==> LCD_Vo = -1V4|+3V3 (Vcc=3V3)
 \ ------------------------------\
@@ -29728,7 +45051,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \                         -     \ TAIE
 \                          -    \ TAIFG
 \ ------------------------------\
-    MOV #%0100010100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
+MOV #%01_0001_0100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
 \ ------------------------------\
 \                        000    \ TAxEX0
 \                        ---    \ TAIDEX    pre divisor
@@ -29794,23 +45117,213 @@ COLON                           \
     ['] CR >BODY IS CR          \ CR executes its default value
     ['] EMIT >BODY IS EMIT      \ EMIT executes its defaulte value
     ." RC5toLCD is running. Type STOP to quit" \ display message on FastForth Terminal
-    ABORT                       \ ...and end APP_INIT with ABORT, no return.
+    PWR_STATE ABORT             \ init DP and continues with ABORT
 ;                               \
+\ ------------------------------\
 
 \ ------------------------------\
 CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
 \ ------------------------------\
-MOV #SLEEP,X                    \ replace default background process
+MOV #SLEEP,X                    \ replace default background process SLEEP
 MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
 MOV #WARM,X                     \ replace default WARM
-MOV #APP_INIT,2(X)              \ by RC5toLCD APP_INIT
-MOV X,PC                        \ then execute it
+MOV #SYS_INIT,2(X)              \ by RC5toLCD SYS_INIT
+MOV X,PC                        \ then execute new WARM
 ENDCODE 
+\ ------------------------------\
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
 
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
 
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] CONSTANT [IF]
+\ https://forth-standard.org/standard/core/CONSTANT
+\ CONSTANT <name>     n --                      define a Forth CONSTANT 
+: CONSTANT 
+CREATE
+HI2LO
+MOV TOS,-2(W)           \   PFA = n
+MOV @PSP+,TOS
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] STATE [IF]
+\ https://forth-standard.org/standard/core/STATE
+\ STATE   -- a-addr       holds compiler state
+STATEADR CONSTANT STATE
+[THEN]
+
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+    MOV @IP+,PC \ 4
+THEN
+XOR #-1,TOS     \ 1 flag Z = 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE     \ immediate
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+\ https://forth-standard.org/standard/core/DEFER
+\ DEFER "<spaces>name"   --
+\ Skip leading space delimiters. Parse name delimited by a space.
+\ Create a definition for name with the execution semantics defined below.
+
+\ name Execution:   --
+\ Execute the xt that name is set to execute, i.e. NEXT (nothing),
+\ until the phrase ' word IS name is executed, causing a new value of xt to be assigned to name.
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(W)        \ CFA = MOV @PC+,PC = BR MOV @IP+,PC
+MOV #NEXT_ADR,-2(W)     \ PFA = address of MOV @IP+,PC to do nothing.
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEFER! [IF]
+\ https://forth-standard.org/standard/core/DEFERStore
+\ Set the word xt1 to execute xt2. An ambiguous condition exists if xt1 is not for a word defined by DEFER.
+CODE DEFER!             \ xt2 xt1 --
+MOV @PSP+,2(TOS)        \ -- xt1=CFA_DEFER          xt2 --> [CFA_DEFER+2]
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] IS [IF]
+\ https://forth-standard.org/standard/core/IS
+\ IS <name>        xt --
+\ used as is :
+\ DEFER DISPLAY                         create a "do nothing" definition (2 CELLS)
+\ inline command : ' U. IS DISPLAY      U. becomes the runtime of the word DISPLAY
+\ or in a definition : ... ['] U. IS DISPLAY ...
+\ KEY, EMIT, CR, ACCEPT and WARM are examples of DEFERred words
+\
+\ as IS replaces the PFA value of any word, it's a TO alias for VARIABLE and CONSTANT words...
+: IS
+STATE @
+IF  POSTPONE ['] POSTPONE DEFER! 
+ELSE ' DEFER! 
+THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+\ CODE 20uS           \ n --      8MHz version
+\ BEGIN               \ 4 + 16 ~ loop
+\     MOV #39,rDOCON   \ 39
+\     BEGIN           \ 4 ~ loop
+\         NOP
+\         SUB #1,rDOCON
+\     0=  UNTIL
+\     SUB #1,TOS      \ 1
+\ 0= UNTIL
+\ MOV #XDOCON,rDOCON  \ 2
+\ MOV @PSP+,TOS
+\ MOV @RSP+,IP        \
+\ ENDCODE
+
 CODE 20_US                      \ n --      n * 20 us
 BEGIN                           \ here we presume that LCD_TIM_IFG = 1...
     BEGIN
@@ -29824,8 +45337,8 @@ MOV @IP+,PC                     \ 4
 ENDCODE
 
 CODE TOP_LCD                    \ LCD Sample
-\                               \ if write : %xxxxWWWW --
-\                               \ if read  : -- %0000RRRR
+\                               \ if write : %xxxx_WWWW --
+\                               \ if read  : -- %0000_RRRR
     BIS.B #LCD_EN,&LCD_CMD_OUT  \ lcd_en 0-->1
     BIT.B #LCD_RW,&LCD_CMD_IN   \ lcd_rw test
 0= IF                           \ write LCD bits pattern
@@ -29846,8 +45359,8 @@ ENDCODE
 CODE LCD_WRC                    \ char --         Write Char
     BIS.B #LCD_RS,&LCD_CMD_OUT  \ lcd_rs=1
 BW1 SUB #2,PSP                  \
-    MOV TOS,0(PSP)              \ -- %xxxxLLLL %HHHHLLLL
-    RRUM #4,TOS                 \ -- %xxxxLLLL %xxxxHHHH
+    MOV TOS,0(PSP)              \ -- %xxxx_LLLL %HHHH_LLLL
+    RRUM #4,TOS                 \ -- %xxxx_LLLL %xxxx_HHHH
     BIC.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=0
     BIS.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as output
 COLON                           \ high level word starts here 
@@ -29887,11 +45400,11 @@ ENDCODE
 \ BW1 BIC.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as intput
 \     BIS.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=1
 \ COLON                           \ starts a FORTH word
-\     TOP_LCD 2 20_us             \ -- %0000HHHH
-\     TOP_LCD 2 20_us             \ -- %0000HHHH %0000LLLL
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH %0000_LLLL
 \ HI2LO                           \ switch from FORTH to assembler
-\     RLAM #4,0(PSP)              \ -- %HHHH0000 %0000LLLL
-\     ADD.B @PSP+,TOS             \ -- %HHHHLLLL
+\     RLAM #4,0(PSP)              \ -- %HHHH_0000 %0000_LLLL
+\     ADD.B @PSP+,TOS             \ -- %HHHH_LLLL
 \     MOV @RSP+,IP                \ restore IP saved by COLON
 \     MOV @IP+,PC                 \
 \ ENDCODE
@@ -30032,14 +45545,14 @@ MOV @PSP+,TOS                   \     -- TOS
 RET
 ENDASM
 
-\ ------------------------------\
+\ ******************************\
 ASM BACKGROUND                  \
-\ ------------------------------\
+\ ******************************\
 BEGIN
 \     ...                         \ insert here your background task
 \     ...                         \
 \     ...                         \
-    CALL &RXON                  \ comment this line to disable TERMINAL
+    CALL &RXON                  \ comment this line to disable TERMINAL_INPUT
     BIS &LPM_MODE,SR            \
 \ ******************************\
 \ here start all interrupts     \
@@ -30048,23 +45561,43 @@ BEGIN
 \ ******************************\
 AGAIN                           \
 ENDASM                          \
+\ ******************************\
+
+\ ------------------------------\
+ASM SYS_OUT                    \ system OUT init, replaces WARM at the request of STOP.
+\ ------------------------------\
+\     ...                         \ init specific I/O sys as you want
+\     ...                         \ before executing default WARM
+    MOV #WARM,X                 \ ['] WARM 
+    ADD #4,X                    \ >BODY
+    MOV X,PC                    \ EXECUTE    (which activates IO and TERMINAL)
+ENDASM
+\ ------------------------------\
 
 \ ------------------------------\
 CODE STOP                       \ stops multitasking, must to be used before downloading app
 \ ------------------------------\
-\ restore default action of primary DEFERred word SLEEP (assembly version)
 BW1 MOV #SLEEP,X                \ the ASM word SLEEP is only visible in mode assembler. 
     ADD #4,X                    \ X = BODY of SLEEP, X-2 = PFA of SLEEP
-    MOV X,-2(X)                 \ restore the default background
+    MOV X,-2(X)                 \ restore the default background: SLEEP
+    MOV #WARM,X
+    MOV #SYS_OUT,2(X)           \ default WARM is replaced by JMJ_BOX SYS_OUT (ended by default WARM)
+    BIC.B #RC5,&IR_IE           \ clear RC5_Int
+    BIC.B #RC5,&IR_IFG          \ clear RC5_Int flag
+    MOV #0,&LCD_TIM_CTL         \ stop LCD_TIMER
+    MOV #0,&WDT_TIM_CTL         \ stop WDT_TIMER
+    MOV #0,&WDT_TIM_CCTL0       \ clear CCIFG0 disable CCIE0
+    CALL #INIT_VECT             \ reset all vectors other than TERMINAL_int
 COLON                           \ restore default action of primary DEFERred word WARM (FORTH version)
-['] WARM >BODY IS WARM          \ restore the default WARM
 ECHO                            \
-." RC5toLCD is removed. type START to restart"
-COLD                            \ performs reset to reset all interrupt vectors.    
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM                           \ performs reset to reset all interrupt vectors.    
 ;
+\ ------------------------------\
 
 \ ------------------------------\
-CODE APP_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
+CODE SYS_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
 \ ------------------------------\
 \ LCD_TIM_CTL =  %0000 0010 1001 0100\$3C0
 \                    - -             \CNTL Counter lentgh \ 00 = 16 bits
@@ -30094,7 +45627,7 @@ CODE APP_INIT                   \ this routine completes the init of system, i.e
 \ ------------------------------\
 \ set LCD_TIM_ to make 50kHz PWM \ for LCD_Vo; works without interrupt
 \ ------------------------------\
-MOV #%1011010100,&LCD_TIM_CTL   \ SMCLK/8, up mode, clear timer, no int
+MOV #%10_1101_0100,&LCD_TIM_CTL \ SMCLK/8, up mode, clear timer, no int
 \    MOV #0,&LCD_TIM_EX0        \ predivide by 1 in LCD_TIM_EX0 register (8 MHZ)
 FREQ_KHZ @ 16000 = [IF]         \ if 16 MHz
     MOV #1,&LCD_TIM_EX0         \ predivide by 2 in LCD_TIM_EX0 register (16 MHZ)
@@ -30106,7 +45639,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \ ------------------------------\
 \ set LCD_TIM_.2 to generate PWM for LCD_Vo
 \ ------------------------------\
-    MOV #%01100000,&LCD_TIM_CCTLn \ output mode = set/reset \ clear CCIFG
+MOV #%0110_0000,&LCD_TIM_CCTLn  \ output mode = set/reset \ clear CCIFG
     MOV #10,&LCD_TIM_CCRn       \ contrast adjust : 10/20 ==> LCD_Vo = -0V6|+3V6 (Vcc=3V6)
 \    MOV #12,&LCD_TIM_CCRn        \ contrast adjust : 12/20 ==> LCD_Vo = -1V4|+3V3 (Vcc=3V3)
 \ ------------------------------\
@@ -30135,7 +45668,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \                         -     \ TAIE
 \                          -    \ TAIFG
 \ ------------------------------\
-    MOV #%0100010100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
+MOV #%01_0001_0100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
 \ ------------------------------\
 \                        000    \ TAxEX0
 \                        ---    \ TAIDEX    pre divisor
@@ -30201,23 +45734,213 @@ COLON                           \
     ['] CR >BODY IS CR          \ CR executes its default value
     ['] EMIT >BODY IS EMIT      \ EMIT executes its defaulte value
     ." RC5toLCD is running. Type STOP to quit" \ display message on FastForth Terminal
-    ABORT                       \ ...and end APP_INIT with ABORT, no return.
+    PWR_STATE ABORT             \ init DP and continues with ABORT
 ;                               \
+\ ------------------------------\
 
 \ ------------------------------\
 CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
 \ ------------------------------\
-MOV #SLEEP,X                    \ replace default background process
+MOV #SLEEP,X                    \ replace default background process SLEEP
 MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
 MOV #WARM,X                     \ replace default WARM
-MOV #APP_INIT,2(X)              \ by RC5toLCD APP_INIT
-MOV X,PC                        \ then execute it
+MOV #SYS_INIT,2(X)              \ by RC5toLCD SYS_INIT
+MOV X,PC                        \ then execute new WARM
 ENDCODE 
+\ ------------------------------\
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
 
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
 
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] CONSTANT [IF]
+\ https://forth-standard.org/standard/core/CONSTANT
+\ CONSTANT <name>     n --                      define a Forth CONSTANT 
+: CONSTANT 
+CREATE
+HI2LO
+MOV TOS,-2(W)           \   PFA = n
+MOV @PSP+,TOS
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] STATE [IF]
+\ https://forth-standard.org/standard/core/STATE
+\ STATE   -- a-addr       holds compiler state
+STATEADR CONSTANT STATE
+[THEN]
+
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+    MOV @IP+,PC \ 4
+THEN
+XOR #-1,TOS     \ 1 flag Z = 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE     \ immediate
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+\ https://forth-standard.org/standard/core/DEFER
+\ DEFER "<spaces>name"   --
+\ Skip leading space delimiters. Parse name delimited by a space.
+\ Create a definition for name with the execution semantics defined below.
+
+\ name Execution:   --
+\ Execute the xt that name is set to execute, i.e. NEXT (nothing),
+\ until the phrase ' word IS name is executed, causing a new value of xt to be assigned to name.
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(W)        \ CFA = MOV @PC+,PC = BR MOV @IP+,PC
+MOV #NEXT_ADR,-2(W)     \ PFA = address of MOV @IP+,PC to do nothing.
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEFER! [IF]
+\ https://forth-standard.org/standard/core/DEFERStore
+\ Set the word xt1 to execute xt2. An ambiguous condition exists if xt1 is not for a word defined by DEFER.
+CODE DEFER!             \ xt2 xt1 --
+MOV @PSP+,2(TOS)        \ -- xt1=CFA_DEFER          xt2 --> [CFA_DEFER+2]
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] IS [IF]
+\ https://forth-standard.org/standard/core/IS
+\ IS <name>        xt --
+\ used as is :
+\ DEFER DISPLAY                         create a "do nothing" definition (2 CELLS)
+\ inline command : ' U. IS DISPLAY      U. becomes the runtime of the word DISPLAY
+\ or in a definition : ... ['] U. IS DISPLAY ...
+\ KEY, EMIT, CR, ACCEPT and WARM are examples of DEFERred words
+\
+\ as IS replaces the PFA value of any word, it's a TO alias for VARIABLE and CONSTANT words...
+: IS
+STATE @
+IF  POSTPONE ['] POSTPONE DEFER! 
+ELSE ' DEFER! 
+THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+\ CODE 20uS           \ n --      8MHz version
+\ BEGIN               \ 4 + 16 ~ loop
+\     MOV #39,rDOCON   \ 39
+\     BEGIN           \ 4 ~ loop
+\         NOP
+\         SUB #1,rDOCON
+\     0=  UNTIL
+\     SUB #1,TOS      \ 1
+\ 0= UNTIL
+\ MOV #XDOCON,rDOCON  \ 2
+\ MOV @PSP+,TOS
+\ MOV @RSP+,IP        \
+\ ENDCODE
+
 CODE 20_US                      \ n --      n * 20 us
 BEGIN                           \ here we presume that LCD_TIM_IFG = 1...
     BEGIN
@@ -30231,8 +45954,8 @@ MOV @IP+,PC                     \ 4
 ENDCODE
 
 CODE TOP_LCD                    \ LCD Sample
-\                               \ if write : %xxxxWWWW --
-\                               \ if read  : -- %0000RRRR
+\                               \ if write : %xxxx_WWWW --
+\                               \ if read  : -- %0000_RRRR
     BIS.B #LCD_EN,&LCD_CMD_OUT  \ lcd_en 0-->1
     BIT.B #LCD_RW,&LCD_CMD_IN   \ lcd_rw test
 0= IF                           \ write LCD bits pattern
@@ -30253,8 +45976,8 @@ ENDCODE
 CODE LCD_WRC                    \ char --         Write Char
     BIS.B #LCD_RS,&LCD_CMD_OUT  \ lcd_rs=1
 BW1 SUB #2,PSP                  \
-    MOV TOS,0(PSP)              \ -- %xxxxLLLL %HHHHLLLL
-    RRUM #4,TOS                 \ -- %xxxxLLLL %xxxxHHHH
+    MOV TOS,0(PSP)              \ -- %xxxx_LLLL %HHHH_LLLL
+    RRUM #4,TOS                 \ -- %xxxx_LLLL %xxxx_HHHH
     BIC.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=0
     BIS.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as output
 COLON                           \ high level word starts here 
@@ -30294,11 +46017,11 @@ ENDCODE
 \ BW1 BIC.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as intput
 \     BIS.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=1
 \ COLON                           \ starts a FORTH word
-\     TOP_LCD 2 20_us             \ -- %0000HHHH
-\     TOP_LCD 2 20_us             \ -- %0000HHHH %0000LLLL
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH %0000_LLLL
 \ HI2LO                           \ switch from FORTH to assembler
-\     RLAM #4,0(PSP)              \ -- %HHHH0000 %0000LLLL
-\     ADD.B @PSP+,TOS             \ -- %HHHHLLLL
+\     RLAM #4,0(PSP)              \ -- %HHHH_0000 %0000_LLLL
+\     ADD.B @PSP+,TOS             \ -- %HHHH_LLLL
 \     MOV @RSP+,IP                \ restore IP saved by COLON
 \     MOV @IP+,PC                 \
 \ ENDCODE
@@ -30439,14 +46162,14 @@ MOV @PSP+,TOS                   \     -- TOS
 RET
 ENDASM
 
-\ ------------------------------\
+\ ******************************\
 ASM BACKGROUND                  \
-\ ------------------------------\
+\ ******************************\
 BEGIN
 \     ...                         \ insert here your background task
 \     ...                         \
 \     ...                         \
-    CALL &RXON                  \ comment this line to disable TERMINAL
+    CALL &RXON                  \ comment this line to disable TERMINAL_INPUT
     BIS &LPM_MODE,SR            \
 \ ******************************\
 \ here start all interrupts     \
@@ -30455,23 +46178,43 @@ BEGIN
 \ ******************************\
 AGAIN                           \
 ENDASM                          \
+\ ******************************\
+
+\ ------------------------------\
+ASM SYS_OUT                    \ system OUT init, replaces WARM at the request of STOP.
+\ ------------------------------\
+\     ...                         \ init specific I/O sys as you want
+\     ...                         \ before executing default WARM
+    MOV #WARM,X                 \ ['] WARM 
+    ADD #4,X                    \ >BODY
+    MOV X,PC                    \ EXECUTE    (which activates IO and TERMINAL)
+ENDASM
+\ ------------------------------\
 
 \ ------------------------------\
 CODE STOP                       \ stops multitasking, must to be used before downloading app
 \ ------------------------------\
-\ restore default action of primary DEFERred word SLEEP (assembly version)
 BW1 MOV #SLEEP,X                \ the ASM word SLEEP is only visible in mode assembler. 
     ADD #4,X                    \ X = BODY of SLEEP, X-2 = PFA of SLEEP
-    MOV X,-2(X)                 \ restore the default background
+    MOV X,-2(X)                 \ restore the default background: SLEEP
+    MOV #WARM,X
+    MOV #SYS_OUT,2(X)           \ default WARM is replaced by JMJ_BOX SYS_OUT (ended by default WARM)
+    BIC.B #RC5,&IR_IE           \ clear RC5_Int
+    BIC.B #RC5,&IR_IFG          \ clear RC5_Int flag
+    MOV #0,&LCD_TIM_CTL         \ stop LCD_TIMER
+    MOV #0,&WDT_TIM_CTL         \ stop WDT_TIMER
+    MOV #0,&WDT_TIM_CCTL0       \ clear CCIFG0 disable CCIE0
+    CALL #INIT_VECT             \ reset all vectors other than TERMINAL_int
 COLON                           \ restore default action of primary DEFERred word WARM (FORTH version)
-['] WARM >BODY IS WARM          \ restore the default WARM
 ECHO                            \
-." RC5toLCD is removed. type START to restart"
-COLD                            \ performs reset to reset all interrupt vectors.    
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM                           \ performs reset to reset all interrupt vectors.    
 ;
+\ ------------------------------\
 
 \ ------------------------------\
-CODE APP_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
+CODE SYS_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
 \ ------------------------------\
 \ LCD_TIM_CTL =  %0000 0010 1001 0100\$3C0
 \                    - -             \CNTL Counter lentgh \ 00 = 16 bits
@@ -30501,7 +46244,7 @@ CODE APP_INIT                   \ this routine completes the init of system, i.e
 \ ------------------------------\
 \ set LCD_TIM_ to make 50kHz PWM \ for LCD_Vo; works without interrupt
 \ ------------------------------\
-MOV #%1011010100,&LCD_TIM_CTL   \ SMCLK/8, up mode, clear timer, no int
+MOV #%10_1101_0100,&LCD_TIM_CTL \ SMCLK/8, up mode, clear timer, no int
 \    MOV #0,&LCD_TIM_EX0        \ predivide by 1 in LCD_TIM_EX0 register (8 MHZ)
 FREQ_KHZ @ 16000 = [IF]         \ if 16 MHz
     MOV #1,&LCD_TIM_EX0         \ predivide by 2 in LCD_TIM_EX0 register (16 MHZ)
@@ -30513,7 +46256,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \ ------------------------------\
 \ set LCD_TIM_.2 to generate PWM for LCD_Vo
 \ ------------------------------\
-    MOV #%01100000,&LCD_TIM_CCTLn \ output mode = set/reset \ clear CCIFG
+MOV #%0110_0000,&LCD_TIM_CCTLn  \ output mode = set/reset \ clear CCIFG
     MOV #10,&LCD_TIM_CCRn       \ contrast adjust : 10/20 ==> LCD_Vo = -0V6|+3V6 (Vcc=3V6)
 \    MOV #12,&LCD_TIM_CCRn        \ contrast adjust : 12/20 ==> LCD_Vo = -1V4|+3V3 (Vcc=3V3)
 \ ------------------------------\
@@ -30542,7 +46285,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \                         -     \ TAIE
 \                          -    \ TAIFG
 \ ------------------------------\
-    MOV #%0100010100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
+MOV #%01_0001_0100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
 \ ------------------------------\
 \                        000    \ TAxEX0
 \                        ---    \ TAIDEX    pre divisor
@@ -30608,23 +46351,213 @@ COLON                           \
     ['] CR >BODY IS CR          \ CR executes its default value
     ['] EMIT >BODY IS EMIT      \ EMIT executes its defaulte value
     ." RC5toLCD is running. Type STOP to quit" \ display message on FastForth Terminal
-    ABORT                       \ ...and end APP_INIT with ABORT, no return.
+    PWR_STATE ABORT             \ init DP and continues with ABORT
 ;                               \
+\ ------------------------------\
 
 \ ------------------------------\
 CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
 \ ------------------------------\
-MOV #SLEEP,X                    \ replace default background process
+MOV #SLEEP,X                    \ replace default background process SLEEP
 MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
 MOV #WARM,X                     \ replace default WARM
-MOV #APP_INIT,2(X)              \ by RC5toLCD APP_INIT
-MOV X,PC                        \ then execute it
+MOV #SYS_INIT,2(X)              \ by RC5toLCD SYS_INIT
+MOV X,PC                        \ then execute new WARM
 ENDCODE 
+\ ------------------------------\
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
 
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
 
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] CONSTANT [IF]
+\ https://forth-standard.org/standard/core/CONSTANT
+\ CONSTANT <name>     n --                      define a Forth CONSTANT 
+: CONSTANT 
+CREATE
+HI2LO
+MOV TOS,-2(W)           \   PFA = n
+MOV @PSP+,TOS
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] STATE [IF]
+\ https://forth-standard.org/standard/core/STATE
+\ STATE   -- a-addr       holds compiler state
+STATEADR CONSTANT STATE
+[THEN]
+
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+    MOV @IP+,PC \ 4
+THEN
+XOR #-1,TOS     \ 1 flag Z = 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE     \ immediate
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+\ https://forth-standard.org/standard/core/DEFER
+\ DEFER "<spaces>name"   --
+\ Skip leading space delimiters. Parse name delimited by a space.
+\ Create a definition for name with the execution semantics defined below.
+
+\ name Execution:   --
+\ Execute the xt that name is set to execute, i.e. NEXT (nothing),
+\ until the phrase ' word IS name is executed, causing a new value of xt to be assigned to name.
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(W)        \ CFA = MOV @PC+,PC = BR MOV @IP+,PC
+MOV #NEXT_ADR,-2(W)     \ PFA = address of MOV @IP+,PC to do nothing.
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEFER! [IF]
+\ https://forth-standard.org/standard/core/DEFERStore
+\ Set the word xt1 to execute xt2. An ambiguous condition exists if xt1 is not for a word defined by DEFER.
+CODE DEFER!             \ xt2 xt1 --
+MOV @PSP+,2(TOS)        \ -- xt1=CFA_DEFER          xt2 --> [CFA_DEFER+2]
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] IS [IF]
+\ https://forth-standard.org/standard/core/IS
+\ IS <name>        xt --
+\ used as is :
+\ DEFER DISPLAY                         create a "do nothing" definition (2 CELLS)
+\ inline command : ' U. IS DISPLAY      U. becomes the runtime of the word DISPLAY
+\ or in a definition : ... ['] U. IS DISPLAY ...
+\ KEY, EMIT, CR, ACCEPT and WARM are examples of DEFERred words
+\
+\ as IS replaces the PFA value of any word, it's a TO alias for VARIABLE and CONSTANT words...
+: IS
+STATE @
+IF  POSTPONE ['] POSTPONE DEFER! 
+ELSE ' DEFER! 
+THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+\ CODE 20uS           \ n --      8MHz version
+\ BEGIN               \ 4 + 16 ~ loop
+\     MOV #39,rDOCON   \ 39
+\     BEGIN           \ 4 ~ loop
+\         NOP
+\         SUB #1,rDOCON
+\     0=  UNTIL
+\     SUB #1,TOS      \ 1
+\ 0= UNTIL
+\ MOV #XDOCON,rDOCON  \ 2
+\ MOV @PSP+,TOS
+\ MOV @RSP+,IP        \
+\ ENDCODE
+
 CODE 20_US                      \ n --      n * 20 us
 BEGIN                           \ here we presume that LCD_TIM_IFG = 1...
     BEGIN
@@ -30638,8 +46571,8 @@ MOV @IP+,PC                     \ 4
 ENDCODE
 
 CODE TOP_LCD                    \ LCD Sample
-\                               \ if write : %xxxxWWWW --
-\                               \ if read  : -- %0000RRRR
+\                               \ if write : %xxxx_WWWW --
+\                               \ if read  : -- %0000_RRRR
     BIS.B #LCD_EN,&LCD_CMD_OUT  \ lcd_en 0-->1
     BIT.B #LCD_RW,&LCD_CMD_IN   \ lcd_rw test
 0= IF                           \ write LCD bits pattern
@@ -30660,8 +46593,8 @@ ENDCODE
 CODE LCD_WRC                    \ char --         Write Char
     BIS.B #LCD_RS,&LCD_CMD_OUT  \ lcd_rs=1
 BW1 SUB #2,PSP                  \
-    MOV TOS,0(PSP)              \ -- %xxxxLLLL %HHHHLLLL
-    RRUM #4,TOS                 \ -- %xxxxLLLL %xxxxHHHH
+    MOV TOS,0(PSP)              \ -- %xxxx_LLLL %HHHH_LLLL
+    RRUM #4,TOS                 \ -- %xxxx_LLLL %xxxx_HHHH
     BIC.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=0
     BIS.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as output
 COLON                           \ high level word starts here 
@@ -30701,11 +46634,11 @@ ENDCODE
 \ BW1 BIC.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as intput
 \     BIS.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=1
 \ COLON                           \ starts a FORTH word
-\     TOP_LCD 2 20_us             \ -- %0000HHHH
-\     TOP_LCD 2 20_us             \ -- %0000HHHH %0000LLLL
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH %0000_LLLL
 \ HI2LO                           \ switch from FORTH to assembler
-\     RLAM #4,0(PSP)              \ -- %HHHH0000 %0000LLLL
-\     ADD.B @PSP+,TOS             \ -- %HHHHLLLL
+\     RLAM #4,0(PSP)              \ -- %HHHH_0000 %0000_LLLL
+\     ADD.B @PSP+,TOS             \ -- %HHHH_LLLL
 \     MOV @RSP+,IP                \ restore IP saved by COLON
 \     MOV @IP+,PC                 \
 \ ENDCODE
@@ -30846,14 +46779,14 @@ MOV @PSP+,TOS                   \     -- TOS
 RET
 ENDASM
 
-\ ------------------------------\
+\ ******************************\
 ASM BACKGROUND                  \
-\ ------------------------------\
+\ ******************************\
 BEGIN
 \     ...                         \ insert here your background task
 \     ...                         \
 \     ...                         \
-    CALL &RXON                  \ comment this line to disable TERMINAL
+    CALL &RXON                  \ comment this line to disable TERMINAL_INPUT
     BIS &LPM_MODE,SR            \
 \ ******************************\
 \ here start all interrupts     \
@@ -30862,23 +46795,43 @@ BEGIN
 \ ******************************\
 AGAIN                           \
 ENDASM                          \
+\ ******************************\
+
+\ ------------------------------\
+ASM SYS_OUT                    \ system OUT init, replaces WARM at the request of STOP.
+\ ------------------------------\
+\     ...                         \ init specific I/O sys as you want
+\     ...                         \ before executing default WARM
+    MOV #WARM,X                 \ ['] WARM 
+    ADD #4,X                    \ >BODY
+    MOV X,PC                    \ EXECUTE    (which activates IO and TERMINAL)
+ENDASM
+\ ------------------------------\
 
 \ ------------------------------\
 CODE STOP                       \ stops multitasking, must to be used before downloading app
 \ ------------------------------\
-\ restore default action of primary DEFERred word SLEEP (assembly version)
 BW1 MOV #SLEEP,X                \ the ASM word SLEEP is only visible in mode assembler. 
     ADD #4,X                    \ X = BODY of SLEEP, X-2 = PFA of SLEEP
-    MOV X,-2(X)                 \ restore the default background
+    MOV X,-2(X)                 \ restore the default background: SLEEP
+    MOV #WARM,X
+    MOV #SYS_OUT,2(X)           \ default WARM is replaced by JMJ_BOX SYS_OUT (ended by default WARM)
+    BIC.B #RC5,&IR_IE           \ clear RC5_Int
+    BIC.B #RC5,&IR_IFG          \ clear RC5_Int flag
+    MOV #0,&LCD_TIM_CTL         \ stop LCD_TIMER
+    MOV #0,&WDT_TIM_CTL         \ stop WDT_TIMER
+    MOV #0,&WDT_TIM_CCTL0       \ clear CCIFG0 disable CCIE0
+    CALL #INIT_VECT             \ reset all vectors other than TERMINAL_int
 COLON                           \ restore default action of primary DEFERred word WARM (FORTH version)
-['] WARM >BODY IS WARM          \ restore the default WARM
 ECHO                            \
-." RC5toLCD is removed. type START to restart"
-COLD                            \ performs reset to reset all interrupt vectors.    
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM                           \ performs reset to reset all interrupt vectors.    
 ;
+\ ------------------------------\
 
 \ ------------------------------\
-CODE APP_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
+CODE SYS_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
 \ ------------------------------\
 \ LCD_TIM_CTL =  %0000 0010 1001 0100\$3C0
 \                    - -             \CNTL Counter lentgh \ 00 = 16 bits
@@ -30908,7 +46861,7 @@ CODE APP_INIT                   \ this routine completes the init of system, i.e
 \ ------------------------------\
 \ set LCD_TIM_ to make 50kHz PWM \ for LCD_Vo; works without interrupt
 \ ------------------------------\
-MOV #%1011010100,&LCD_TIM_CTL   \ SMCLK/8, up mode, clear timer, no int
+MOV #%10_1101_0100,&LCD_TIM_CTL \ SMCLK/8, up mode, clear timer, no int
 \    MOV #0,&LCD_TIM_EX0        \ predivide by 1 in LCD_TIM_EX0 register (8 MHZ)
 FREQ_KHZ @ 16000 = [IF]         \ if 16 MHz
     MOV #1,&LCD_TIM_EX0         \ predivide by 2 in LCD_TIM_EX0 register (16 MHZ)
@@ -30920,7 +46873,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \ ------------------------------\
 \ set LCD_TIM_.2 to generate PWM for LCD_Vo
 \ ------------------------------\
-    MOV #%01100000,&LCD_TIM_CCTLn \ output mode = set/reset \ clear CCIFG
+MOV #%0110_0000,&LCD_TIM_CCTLn  \ output mode = set/reset \ clear CCIFG
     MOV #10,&LCD_TIM_CCRn       \ contrast adjust : 10/20 ==> LCD_Vo = -0V6|+3V6 (Vcc=3V6)
 \    MOV #12,&LCD_TIM_CCRn        \ contrast adjust : 12/20 ==> LCD_Vo = -1V4|+3V3 (Vcc=3V3)
 \ ------------------------------\
@@ -30949,7 +46902,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \                         -     \ TAIE
 \                          -    \ TAIFG
 \ ------------------------------\
-    MOV #%0100010100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
+MOV #%01_0001_0100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
 \ ------------------------------\
 \                        000    \ TAxEX0
 \                        ---    \ TAIDEX    pre divisor
@@ -31015,23 +46968,213 @@ COLON                           \
     ['] CR >BODY IS CR          \ CR executes its default value
     ['] EMIT >BODY IS EMIT      \ EMIT executes its defaulte value
     ." RC5toLCD is running. Type STOP to quit" \ display message on FastForth Terminal
-    ABORT                       \ ...and end APP_INIT with ABORT, no return.
+    PWR_STATE ABORT             \ init DP and continues with ABORT
 ;                               \
+\ ------------------------------\
 
 \ ------------------------------\
 CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
 \ ------------------------------\
-MOV #SLEEP,X                    \ replace default background process
+MOV #SLEEP,X                    \ replace default background process SLEEP
 MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
 MOV #WARM,X                     \ replace default WARM
-MOV #APP_INIT,2(X)              \ by RC5toLCD APP_INIT
-MOV X,PC                        \ then execute it
+MOV #SYS_INIT,2(X)              \ by RC5toLCD SYS_INIT
+MOV X,PC                        \ then execute new WARM
 ENDCODE 
+\ ------------------------------\
+
+ECHO
+            ; downloading RC5toLCD.4th is done
+RST_HERE    ; this app is protected against <reset>
+
+
+RST_STATE
 
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
 
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] CONSTANT [IF]
+\ https://forth-standard.org/standard/core/CONSTANT
+\ CONSTANT <name>     n --                      define a Forth CONSTANT 
+: CONSTANT 
+CREATE
+HI2LO
+MOV TOS,-2(W)           \   PFA = n
+MOV @PSP+,TOS
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] STATE [IF]
+\ https://forth-standard.org/standard/core/STATE
+\ STATE   -- a-addr       holds compiler state
+STATEADR CONSTANT STATE
+[THEN]
+
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+    MOV @IP+,PC \ 4
+THEN
+XOR #-1,TOS     \ 1 flag Z = 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE     \ immediate
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+\ https://forth-standard.org/standard/core/DEFER
+\ DEFER "<spaces>name"   --
+\ Skip leading space delimiters. Parse name delimited by a space.
+\ Create a definition for name with the execution semantics defined below.
+
+\ name Execution:   --
+\ Execute the xt that name is set to execute, i.e. NEXT (nothing),
+\ until the phrase ' word IS name is executed, causing a new value of xt to be assigned to name.
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(W)        \ CFA = MOV @PC+,PC = BR MOV @IP+,PC
+MOV #NEXT_ADR,-2(W)     \ PFA = address of MOV @IP+,PC to do nothing.
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEFER! [IF]
+\ https://forth-standard.org/standard/core/DEFERStore
+\ Set the word xt1 to execute xt2. An ambiguous condition exists if xt1 is not for a word defined by DEFER.
+CODE DEFER!             \ xt2 xt1 --
+MOV @PSP+,2(TOS)        \ -- xt1=CFA_DEFER          xt2 --> [CFA_DEFER+2]
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] IS [IF]
+\ https://forth-standard.org/standard/core/IS
+\ IS <name>        xt --
+\ used as is :
+\ DEFER DISPLAY                         create a "do nothing" definition (2 CELLS)
+\ inline command : ' U. IS DISPLAY      U. becomes the runtime of the word DISPLAY
+\ or in a definition : ... ['] U. IS DISPLAY ...
+\ KEY, EMIT, CR, ACCEPT and WARM are examples of DEFERred words
+\
+\ as IS replaces the PFA value of any word, it's a TO alias for VARIABLE and CONSTANT words...
+: IS
+STATE @
+IF  POSTPONE ['] POSTPONE DEFER! 
+ELSE ' DEFER! 
+THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+\ CODE 20uS           \ n --      8MHz version
+\ BEGIN               \ 4 + 16 ~ loop
+\     MOV #39,rDOCON   \ 39
+\     BEGIN           \ 4 ~ loop
+\         NOP
+\         SUB #1,rDOCON
+\     0=  UNTIL
+\     SUB #1,TOS      \ 1
+\ 0= UNTIL
+\ MOV #XDOCON,rDOCON  \ 2
+\ MOV @PSP+,TOS
+\ MOV @RSP+,IP        \
+\ ENDCODE
+
 CODE 20_US                      \ n --      n * 20 us
 BEGIN                           \ here we presume that LCD_TIM_IFG = 1...
     BEGIN
@@ -31045,8 +47188,8 @@ MOV @IP+,PC                     \ 4
 ENDCODE
 
 CODE TOP_LCD                    \ LCD Sample
-\                               \ if write : %xxxxWWWW --
-\                               \ if read  : -- %0000RRRR
+\                               \ if write : %xxxx_WWWW --
+\                               \ if read  : -- %0000_RRRR
     BIS.B #LCD_EN,&LCD_CMD_OUT  \ lcd_en 0-->1
     BIT.B #LCD_RW,&LCD_CMD_IN   \ lcd_rw test
 0= IF                           \ write LCD bits pattern
@@ -31067,8 +47210,8 @@ ENDCODE
 CODE LCD_WRC                    \ char --         Write Char
     BIS.B #LCD_RS,&LCD_CMD_OUT  \ lcd_rs=1
 BW1 SUB #2,PSP                  \
-    MOV TOS,0(PSP)              \ -- %xxxxLLLL %HHHHLLLL
-    RRUM #4,TOS                 \ -- %xxxxLLLL %xxxxHHHH
+    MOV TOS,0(PSP)              \ -- %xxxx_LLLL %HHHH_LLLL
+    RRUM #4,TOS                 \ -- %xxxx_LLLL %xxxx_HHHH
     BIC.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=0
     BIS.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as output
 COLON                           \ high level word starts here 
@@ -31108,11 +47251,11 @@ ENDCODE
 \ BW1 BIC.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as intput
 \     BIS.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=1
 \ COLON                           \ starts a FORTH word
-\     TOP_LCD 2 20_us             \ -- %0000HHHH
-\     TOP_LCD 2 20_us             \ -- %0000HHHH %0000LLLL
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH %0000_LLLL
 \ HI2LO                           \ switch from FORTH to assembler
-\     RLAM #4,0(PSP)              \ -- %HHHH0000 %0000LLLL
-\     ADD.B @PSP+,TOS             \ -- %HHHHLLLL
+\     RLAM #4,0(PSP)              \ -- %HHHH_0000 %0000_LLLL
+\     ADD.B @PSP+,TOS             \ -- %HHHH_LLLL
 \     MOV @RSP+,IP                \ restore IP saved by COLON
 \     MOV @IP+,PC                 \
 \ ENDCODE
@@ -31253,14 +47396,14 @@ MOV @PSP+,TOS                   \     -- TOS
 RET
 ENDASM
 
-\ ------------------------------\
+\ ******************************\
 ASM BACKGROUND                  \
-\ ------------------------------\
+\ ******************************\
 BEGIN
 \     ...                         \ insert here your background task
 \     ...                         \
 \     ...                         \
-    CALL &RXON                  \ comment this line to disable TERMINAL
+    CALL &RXON                  \ comment this line to disable TERMINAL_INPUT
     BIS &LPM_MODE,SR            \
 \ ******************************\
 \ here start all interrupts     \
@@ -31269,23 +47412,43 @@ BEGIN
 \ ******************************\
 AGAIN                           \
 ENDASM                          \
+\ ******************************\
+
+\ ------------------------------\
+ASM SYS_OUT                    \ system OUT init, replaces WARM at the request of STOP.
+\ ------------------------------\
+\     ...                         \ init specific I/O sys as you want
+\     ...                         \ before executing default WARM
+    MOV #WARM,X                 \ ['] WARM 
+    ADD #4,X                    \ >BODY
+    MOV X,PC                    \ EXECUTE    (which activates IO and TERMINAL)
+ENDASM
+\ ------------------------------\
 
 \ ------------------------------\
 CODE STOP                       \ stops multitasking, must to be used before downloading app
 \ ------------------------------\
-\ restore default action of primary DEFERred word SLEEP (assembly version)
 BW1 MOV #SLEEP,X                \ the ASM word SLEEP is only visible in mode assembler. 
     ADD #4,X                    \ X = BODY of SLEEP, X-2 = PFA of SLEEP
-    MOV X,-2(X)                 \ restore the default background
+    MOV X,-2(X)                 \ restore the default background: SLEEP
+    MOV #WARM,X
+    MOV #SYS_OUT,2(X)           \ default WARM is replaced by JMJ_BOX SYS_OUT (ended by default WARM)
+    BIC.B #RC5,&IR_IE           \ clear RC5_Int
+    BIC.B #RC5,&IR_IFG          \ clear RC5_Int flag
+    MOV #0,&LCD_TIM_CTL         \ stop LCD_TIMER
+    MOV #0,&WDT_TIM_CTL         \ stop WDT_TIMER
+    MOV #0,&WDT_TIM_CCTL0       \ clear CCIFG0 disable CCIE0
+    CALL #INIT_VECT             \ reset all vectors other than TERMINAL_int
 COLON                           \ restore default action of primary DEFERred word WARM (FORTH version)
-['] WARM >BODY IS WARM          \ restore the default WARM
 ECHO                            \
-." RC5toLCD is removed. type START to restart"
-COLD                            \ performs reset to reset all interrupt vectors.    
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM                           \ performs reset to reset all interrupt vectors.    
 ;
+\ ------------------------------\
 
 \ ------------------------------\
-CODE APP_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
+CODE SYS_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
 \ ------------------------------\
 \ LCD_TIM_CTL =  %0000 0010 1001 0100\$3C0
 \                    - -             \CNTL Counter lentgh \ 00 = 16 bits
@@ -31315,7 +47478,7 @@ CODE APP_INIT                   \ this routine completes the init of system, i.e
 \ ------------------------------\
 \ set LCD_TIM_ to make 50kHz PWM \ for LCD_Vo; works without interrupt
 \ ------------------------------\
-MOV #%1011010100,&LCD_TIM_CTL   \ SMCLK/8, up mode, clear timer, no int
+MOV #%10_1101_0100,&LCD_TIM_CTL \ SMCLK/8, up mode, clear timer, no int
 \    MOV #0,&LCD_TIM_EX0        \ predivide by 1 in LCD_TIM_EX0 register (8 MHZ)
 FREQ_KHZ @ 16000 = [IF]         \ if 16 MHz
     MOV #1,&LCD_TIM_EX0         \ predivide by 2 in LCD_TIM_EX0 register (16 MHZ)
@@ -31327,7 +47490,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \ ------------------------------\
 \ set LCD_TIM_.2 to generate PWM for LCD_Vo
 \ ------------------------------\
-    MOV #%01100000,&LCD_TIM_CCTLn \ output mode = set/reset \ clear CCIFG
+MOV #%0110_0000,&LCD_TIM_CCTLn  \ output mode = set/reset \ clear CCIFG
     MOV #10,&LCD_TIM_CCRn       \ contrast adjust : 10/20 ==> LCD_Vo = -0V6|+3V6 (Vcc=3V6)
 \    MOV #12,&LCD_TIM_CCRn        \ contrast adjust : 12/20 ==> LCD_Vo = -1V4|+3V3 (Vcc=3V3)
 \ ------------------------------\
@@ -31356,7 +47519,7 @@ FREQ_KHZ @ 24000 = [IF]         \ if 24 MHz
 \                         -     \ TAIE
 \                          -    \ TAIFG
 \ ------------------------------\
-    MOV #%0100010100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
+MOV #%01_0001_0100,&WDT_TIM_CTL \ start WDT_TIM_, ACLK, up mode, disable int, 
 \ ------------------------------\
 \                        000    \ TAxEX0
 \                        ---    \ TAIDEX    pre divisor
@@ -31422,20 +47585,20 @@ COLON                           \
     ['] CR >BODY IS CR          \ CR executes its default value
     ['] EMIT >BODY IS EMIT      \ EMIT executes its defaulte value
     ." RC5toLCD is running. Type STOP to quit" \ display message on FastForth Terminal
-    ABORT                       \ ...and end APP_INIT with ABORT, no return.
+    PWR_STATE ABORT             \ init DP and continues with ABORT
 ;                               \
+\ ------------------------------\
 
 \ ------------------------------\
 CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
 \ ------------------------------\
-MOV #SLEEP,X                    \ replace default background process
+MOV #SLEEP,X                    \ replace default background process SLEEP
 MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
 MOV #WARM,X                     \ replace default WARM
-MOV #APP_INIT,2(X)              \ by RC5toLCD APP_INIT
-MOV X,PC                        \ then execute it
+MOV #SYS_INIT,2(X)              \ by RC5toLCD SYS_INIT
+MOV X,PC                        \ then execute new WARM
 ENDCODE 
-
-
+\ ------------------------------\
 
 ECHO
             ; downloading RC5toLCD.4th is done
index a66a6b2..aa44c14 100644 (file)
 \
 \ rc5   <--- OUT IR_Receiver (1 TSOP32236)
 
-RST_STATE
 
 [DEFINED] {RC5TOLCD} [IF] {RC5TOLCD} [THEN]     \ remove application
 
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
+
 MARKER {RC5TOLCD}
 
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] CONSTANT [IF]
+\ https://forth-standard.org/standard/core/CONSTANT
+\ CONSTANT <name>     n --                      define a Forth CONSTANT 
+: CONSTANT 
+CREATE
+HI2LO
+MOV TOS,-2(W)           \   PFA = n
+MOV @PSP+,TOS
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] STATE [IF]
+\ https://forth-standard.org/standard/core/STATE
+\ STATE   -- a-addr       holds compiler state
+STATEADR CONSTANT STATE
+[THEN]
+
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+    MOV @IP+,PC \ 4
+THEN
+XOR #-1,TOS     \ 1 flag Z = 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE     \ immediate
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+\ https://forth-standard.org/standard/core/DEFER
+\ DEFER "<spaces>name"   --
+\ Skip leading space delimiters. Parse name delimited by a space.
+\ Create a definition for name with the execution semantics defined below.
+
+\ name Execution:   --
+\ Execute the xt that name is set to execute, i.e. NEXT (nothing),
+\ until the phrase ' word IS name is executed, causing a new value of xt to be assigned to name.
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(W)        \ CFA = MOV @PC+,PC = BR MOV @IP+,PC
+MOV #NEXT_ADR,-2(W)     \ PFA = address of MOV @IP+,PC to do nothing.
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEFER! [IF]
+\ https://forth-standard.org/standard/core/DEFERStore
+\ Set the word xt1 to execute xt2. An ambiguous condition exists if xt1 is not for a word defined by DEFER.
+CODE DEFER!             \ xt2 xt1 --
+MOV @PSP+,2(TOS)        \ -- xt1=CFA_DEFER          xt2 --> [CFA_DEFER+2]
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] IS [IF]
+\ https://forth-standard.org/standard/core/IS
+\ IS <name>        xt --
+\ used as is :
+\ DEFER DISPLAY                         create a "do nothing" definition (2 CELLS)
+\ inline command : ' U. IS DISPLAY      U. becomes the runtime of the word DISPLAY
+\ or in a definition : ... ['] U. IS DISPLAY ...
+\ KEY, EMIT, CR, ACCEPT and WARM are examples of DEFERred words
+\
+\ as IS replaces the PFA value of any word, it's a TO alias for VARIABLE and CONSTANT words...
+: IS
+STATE @
+IF  POSTPONE ['] POSTPONE DEFER! 
+ELSE ' DEFER! 
+THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+\ CODE 20uS           \ n --      8MHz version
+\ BEGIN               \ 4 + 16 ~ loop
+\     MOV #39,rDOCON   \ 39
+\     BEGIN           \ 4 ~ loop
+\         NOP
+\         SUB #1,rDOCON
+\     0=  UNTIL
+\     SUB #1,TOS      \ 1
+\ 0= UNTIL
+\ MOV #XDOCON,rDOCON  \ 2
+\ MOV @PSP+,TOS
+\ MOV @RSP+,IP        \
+\ ENDCODE
+
 CODE 20_US                      \ n --      n * 20 us
 BEGIN                           \ here we presume that LCD_TIM_IFG = 1...
     BEGIN
@@ -91,8 +271,8 @@ MOV @IP+,PC                     \ 4
 ENDCODE
 
 CODE TOP_LCD                    \ LCD Sample
-\                               \ if write : %xxxxWWWW --
-\                               \ if read  : -- %0000RRRR
+\                               \ if write : %xxxx_WWWW --
+\                               \ if read  : -- %0000_RRRR
     BIS.B #LCD_EN,&LCD_CMD_OUT  \ lcd_en 0-->1
     BIT.B #LCD_RW,&LCD_CMD_IN   \ lcd_rw test
 0= IF                           \ write LCD bits pattern
@@ -113,8 +293,8 @@ ENDCODE
 CODE LCD_WRC                    \ char --         Write Char
     BIS.B #LCD_RS,&LCD_CMD_OUT  \ lcd_rs=1
 BW1 SUB #2,PSP                  \
-    MOV TOS,0(PSP)              \ -- %xxxxLLLL %HHHHLLLL
-    RRUM #4,TOS                 \ -- %xxxxLLLL %xxxxHHHH
+    MOV TOS,0(PSP)              \ -- %xxxx_LLLL %HHHH_LLLL
+    RRUM #4,TOS                 \ -- %xxxx_LLLL %xxxx_HHHH
     BIC.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=0
     BIS.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as output
 COLON                           \ high level word starts here 
@@ -154,11 +334,11 @@ ENDCODE
 \ BW1 BIC.B #LCD_DB,&LCD_DB_DIR   \ LCD_Data as intput
 \     BIS.B #LCD_RW,&LCD_CMD_OUT  \ lcd_rw=1
 \ COLON                           \ starts a FORTH word
-\     TOP_LCD 2 20_us             \ -- %0000HHHH
-\     TOP_LCD 2 20_us             \ -- %0000HHHH %0000LLLL
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH
+\     TOP_LCD 2 20_us             \ -- %0000_HHHH %0000_LLLL
 \ HI2LO                           \ switch from FORTH to assembler
-\     RLAM #4,0(PSP)              \ -- %HHHH0000 %0000LLLL
-\     ADD.B @PSP+,TOS             \ -- %HHHHLLLL
+\     RLAM #4,0(PSP)              \ -- %HHHH_0000 %0000_LLLL
+\     ADD.B @PSP+,TOS             \ -- %HHHH_LLLL
 \     MOV @RSP+,IP                \ restore IP saved by COLON
 \     MOV @IP+,PC                 \
 \ ENDCODE
@@ -318,21 +498,40 @@ ENDASM                          \
 \ ******************************\
 
 \ ------------------------------\
+ASM SYS_OUT                    \ system OUT init, replaces WARM at the request of STOP.
+\ ------------------------------\
+\     ...                         \ init specific I/O sys as you want
+\     ...                         \ before executing default WARM
+    MOV #WARM,X                 \ ['] WARM 
+    ADD #4,X                    \ >BODY
+    MOV X,PC                    \ EXECUTE    (which activates IO and TERMINAL)
+ENDASM
+\ ------------------------------\
+
+\ ------------------------------\
 CODE STOP                       \ stops multitasking, must to be used before downloading app
 \ ------------------------------\
-\ restore default action of primary DEFERred word SLEEP (assembly version)
 BW1 MOV #SLEEP,X                \ the ASM word SLEEP is only visible in mode assembler. 
     ADD #4,X                    \ X = BODY of SLEEP, X-2 = PFA of SLEEP
     MOV X,-2(X)                 \ restore the default background: SLEEP
+    MOV #WARM,X
+    MOV #SYS_OUT,2(X)           \ default WARM is replaced by JMJ_BOX SYS_OUT (ended by default WARM)
+    BIC.B #RC5,&IR_IE           \ clear RC5_Int
+    BIC.B #RC5,&IR_IFG          \ clear RC5_Int flag
+    MOV #0,&LCD_TIM_CTL         \ stop LCD_TIMER
+    MOV #0,&WDT_TIM_CTL         \ stop WDT_TIMER
+    MOV #0,&WDT_TIM_CCTL0       \ clear CCIFG0 disable CCIE0
+    CALL #INIT_VECT             \ reset all vectors other than TERMINAL_int
 COLON                           \ restore default action of primary DEFERred word WARM (FORTH version)
-['] WARM >BODY IS WARM          \ restore the default WARM
 ECHO                            \
-." RC5toLCD is removed. type START to restart"
-COLD                            \ performs reset to reset all interrupt vectors.    
+." RC5toLCD is removed,"
+."  type START to restart"
+ WARM                           \ performs reset to reset all interrupt vectors.    
 ;
+\ ------------------------------\
 
 \ ------------------------------\
-CODE APP_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
+CODE SYS_INIT                   \ this routine completes the init of system, i.e. FORTH + this app.
 \ ------------------------------\
 \ LCD_TIM_CTL =  %0000 0010 1001 0100\$3C0
 \                    - -             \CNTL Counter lentgh \ 00 = 16 bits
@@ -469,8 +668,9 @@ COLON                           \
     ['] CR >BODY IS CR          \ CR executes its default value
     ['] EMIT >BODY IS EMIT      \ EMIT executes its defaulte value
     ." RC5toLCD is running. Type STOP to quit" \ display message on FastForth Terminal
-    ABORT                       \ ...and end APP_INIT with ABORT, no return.
+    PWR_STATE ABORT             \ init DP and continues with ABORT
 ;                               \
+\ ------------------------------\
 
 \ ------------------------------\
 CODE START                      \ this routine replaces WARM and SLEEP default values by these of this application.
@@ -478,12 +678,13 @@ CODE START                      \ this routine replaces WARM and SLEEP default v
 MOV #SLEEP,X                    \ replace default background process SLEEP
 MOV #BACKGROUND,2(X)            \ by RC5toLCD BACKGROUND
 MOV #WARM,X                     \ replace default WARM
-MOV #APP_INIT,2(X)              \ by RC5toLCD APP_INIT
-MOV X,PC                        \ then execute it
+MOV #SYS_INIT,2(X)              \ by RC5toLCD SYS_INIT
+MOV X,PC                        \ then execute new WARM
 ENDCODE 
+\ ------------------------------\
 
 ECHO
             ; downloading RC5toLCD.4th is done
 RST_HERE    ; this app is protected against <reset>
 
-\ START cold
+START
index c722225..bfb82db 100644 (file)
 
 PWR_STATE
 
-[UNDEFINED] {RTC} [IF]
+[UNDEFINED] U< [IF]
+CODE U<
+SUB @PSP+,TOS   \ 2 u2-u1
+0<> IF
+    MOV #-1,TOS     \ 1
+    U< IF           \ 2 flag 
+        AND #0,TOS  \ 1 flag Z = 1
+    THEN
+THEN
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] = [IF]
+\ https://forth-standard.org/standard/core/Equal
+\ =      x1 x2 -- flag         test x1=x2
+CODE =
+SUB @PSP+,TOS   \ 2
+0<> IF          \ 2
+    AND #0,TOS  \ 1
+    MOV @IP+,PC \ 4
+THEN
+XOR #-1,TOS     \ 1 flag Z = 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] AND [IF]
+\ https://forth-standard.org/standard/core/AND
+\ C AND    x1 x2 -- x3           logical AND
+CODE AND
+AND @PSP+,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+: RTCNOTFOUND
+ECHO \ return to column 1
+1 ABORT" no RTC found!"
+;
+
+DEVICEID @ $831D SWAP U< [IF] RTCNOTFOUND [THEN] \ MSP430FR21xx/23xx
+DEVICEID @ $823C OVER U<
+           $8241 U< AND [IF] RTCNOTFOUND [THEN] \ MSP430FR25xx/26xx
+DEVICEID @ $81F0 OVER U< 
+           $81F3 U< AND [IF] RTCNOTFOUND [THEN] \ MSP430FR41xx
+
+[DEFINED] {RTC} [IF]  {RTC} [THEN]
+
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
 
 MARKER {RTC}
 
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] DO [IF]
+\ https://forth-standard.org/standard/core/DO
+\ DO       -- DOadr   L: -- 0
+CODE DO                 \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+ADD #2,&DP              \   make room to compile xdo
+MOV &DP,TOS             \ -- HERE+2
+MOV #XDO,-2(TOS)        \   compile xdo
+ADD #2,&LEAVEPTR        \ -- HERE+2     LEAVEPTR+2
+MOV &LEAVEPTR,W         \
+MOV #0,0(W)             \ -- HERE+2     L-- 0
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] LOOP [IF]
+\ https://forth-standard.org/standard/core/LOOP
+\ LOOP    DOadr --         L-- an an-1 .. a1 0
+CODE LOOP               \ immediate
+    MOV #XLOOP,X
+BW1 ADD #4,&DP          \ make room to compile two words
+    MOV &DP,W
+    MOV X,-4(W)         \ xloop --> HERE
+    MOV TOS,-2(W)       \ DOadr --> HERE+2
+BEGIN                   \ resolve all "leave" adr
+    MOV &LEAVEPTR,TOS   \ -- Adr of top LeaveStack cell
+    SUB #2,&LEAVEPTR    \ --
+    MOV @TOS,TOS        \ -- first LeaveStack value
+    CMP #0,TOS          \ -- = value left by DO ?
+0<> WHILE
+    MOV W,0(TOS)        \ move adr after loop as UNLOOP adr
+REPEAT
+    MOV @PSP+,TOS
+    MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] - [IF]
+\ https://forth-standard.org/standard/core/Minus
+\ -      n1/u1 n2/u2 -- n3/u3     n3 = n1-n2
+CODE -
+SUB @PSP+,TOS   \ 2  -- n2-n1 ( = -n3)
+XOR #-1,TOS     \ 1
+ADD #1,TOS      \ 1  -- n3 = -(n2-n1) = n1-n2
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
 [UNDEFINED] MAX [IF]
 
 CODE MAX    \    n1 n2 -- n3       signed maximum
@@ -102,6 +262,69 @@ MOV @IP+,PC
 ENDCODE
 [THEN]
 
+[UNDEFINED] DUP [IF]
+\ https://forth-standard.org/standard/core/DUP
+\ DUP      x -- x x      duplicate top of stack
+CODE DUP
+BW1 SUB #2,PSP      \ 2  push old TOS..
+    MOV TOS,0(PSP)  \ 3  ..onto stack
+    MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEPTH [IF]
+\ https://forth-standard.org/standard/core/DEPTH
+\ DEPTH    -- +n        number of items on stack, must leave 0 if stack empty
+CODE DEPTH
+MOV TOS,-2(PSP)
+MOV #PSTACK,TOS
+SUB PSP,TOS     \ PSP-S0--> TOS
+RRA TOS         \ TOS/2   --> TOS
+SUB #2,PSP      \ post decrement stack...
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] >R [IF]
+\ https://forth-standard.org/standard/core/toR
+\ >R    x --   R: -- x   push to return stack
+CODE >R
+PUSH TOS
+MOV @PSP+,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] R> [IF]
+\ https://forth-standard.org/standard/core/Rfrom
+\ R>    -- x    R: x --   pop from return stack ; CALL #RFROM performs DOVAR
+CODE R>
+SUB #2,PSP      \ 1
+MOV TOS,0(PSP)  \ 3
+MOV @RSP+,TOS   \ 2
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] EXECUTE [IF] \ "
+\ https://forth-standard.org/standard/core/EXECUTE
+\ EXECUTE   i*x xt -- j*x   execute Forth word at 'xt'
+CODE EXECUTE
+MOV TOS,W               \ 1 put word address into W
+MOV @PSP+,TOS           \ 2 fetch new TOS
+MOV W,PC                \ 3 fetch code address into PC
+ENDCODE
+[THEN]
+
 [UNDEFINED] U.R [IF]
 : U.R                       \ u n --           display u unsigned in n width (n >= 2)
   >R  <# 0 # #S #>  
@@ -166,17 +389,13 @@ THEN
     ." it is " TIME? 
 ;
 
-RST_HERE
+PWR_HERE
 
+[UNDEFINED] ESC" [IF]
+\ ESC" <string>" --    send an escape sequence
+: ESC" $1B POSTPONE LITERAL POSTPONE EMIT POSTPONE S" POSTPONE TYPE ; IMMEDIATE \ "
 [THEN]
 
-: ESC #27 EMIT ;
-
-\ create a word to test DEFERred words
-: [ISDEFERRED?]    \ [ISDEFERRED?] xt -- xt flag
-    DUP @ $4030 = \ CFA of <name> = MOV @PC+,PC ? 
-; IMMEDIATE
-
 CREATE ABUF 20 ALLOT
 
 : GET_TIME
@@ -184,21 +403,17 @@ PWR_STATE       \ all after PWR_HERE marker will be lost
 42              \ number of terminal lines   
 0 DO CR LOOP    \ don't erase any line of source
 
-ESC ." [1J"     \ erase up (42 empty lines)
-ESC ." [H"      \ cursor home
+ESC" [1J"       \ erase up (42 empty lines)
+ESC" [H"        \ cursor home
 
 CR ." DATE (DMY): "
-ABUF DUP 20 
-    ['] ACCEPT [ISDEFERRED?] 
-    [IF] >BODY   \   execute default part of ACCEPT
-    [THEN] EXECUTE
-EVALUATE CR DATE!
+ABUF
+DUP 20 ['] ACCEPT >BODY EXECUTE    \   execute default part of ACCEPT
+    EVALUATE CR DATE!
 CR CR ." TIME (HMS): "
-ABUF DUP 20 
-    ['] ACCEPT [ISDEFERRED?] 
-    [IF] >BODY   \   execute default part of ACCEPT
-    [THEN] EXECUTE
-EVALUATE CR TIME!
+ABUF
+DUP 20 ['] ACCEPT >BODY EXECUTE    \   execute default part of ACCEPT
+    EVALUATE CR TIME!
 CR
 ;
 
index df673a9..534a3a8 100644 (file)
 
 PWR_STATE
 
-[UNDEFINED] {SD_TEST} [IF]   \
+[DEFINED] {SD_TEST} [IF]  {SD_TEST} [THEN] \ remove it if defined out of kernel 
+
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
 
 MARKER {SD_TEST}
 
+[UNDEFINED] EXIT [IF]
+\ https://forth-standard.org/standard/core/EXIT
+\ EXIT     --      exit a colon definition; CALL #EXIT performs ASMtoFORTH (10 cycles)
+\                                           JMP #EXIT performs EXIT
+CODE EXIT
+MOV @RSP+,IP    \ 2 pop previous IP (or next PC) from return stack
+MOV @IP+,PC     \ 4 = NEXT
+                \ 6 (ITC-2)
+ENDCODE
+[THEN]
+
+[UNDEFINED] SWAP [IF]
+\ https://forth-standard.org/standard/core/SWAP
+\ SWAP     x1 x2 -- x2 x1    swap top two items
+CODE SWAP
+MOV @PSP,W      \ 2
+MOV TOS,0(PSP)  \ 3
+MOV W,TOS       \ 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] 0= [IF]
+\ https://forth-standard.org/standard/core/ZeroEqual
+\ 0=     n/u -- flag    return true if TOS=0
+CODE 0=
+SUB #1,TOS      \ borrow (clear cy) if TOS was 0
+SUBC TOS,TOS    \ TOS=-1 if borrow was set
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] ELSE [IF]
+\ https://forth-standard.org/standard/core/ELSE
+\ ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+CODE ELSE     \ immediate
+ADD #4,&DP              \ make room to compile two words
+MOV &DP,W               \ W=HERE+4
+MOV #BRAN,-4(W)
+MOV W,0(TOS)            \ HERE+4 ==> [IFadr]
+SUB #2,W                \ HERE+2
+MOV W,TOS               \ -- ELSEadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] UNTIL [IF]
+\ https://forth-standard.org/standard/core/UNTIL
+\ UNTIL    BEGINadr --             resolve conditional backward branch
+CODE UNTIL              \ immediate
+    MOV #QFBRAN,X
+BW1 ADD #4,&DP          \ compile two words
+    MOV &DP,W           \ W = HERE
+    MOV X,-4(W)         \ compile Bran or QFBRAN at HERE
+    MOV TOS,-2(W)       \ compile bakcward adr at HERE+2
+    MOV @PSP+,TOS
+    MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] WHILE [IF]
+\ https://forth-standard.org/standard/core/WHILE
+\ WHILE    BEGINadr -- WHILEadr BEGINadr
+: WHILE     \ immediate
+POSTPONE IF SWAP
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] AGAIN [IF]
+\ https://forth-standard.org/standard/core/AGAIN
+\ AGAIN    BEGINadr --             resolve uncondionnal backward branch
+CODE AGAIN     \ immediate
+MOV #BRAN,X
+GOTO BW1
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] REPEAT [IF]
+\ https://forth-standard.org/standard/core/REPEAT
+\ REPEAT   WHILEadr BEGINadr --     resolve WHILE loop
+: REPEAT
+POSTPONE AGAIN POSTPONE THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] DO [IF]
+\ https://forth-standard.org/standard/core/DO
+\ DO       -- DOadr   L: -- 0
+CODE DO                 \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+ADD #2,&DP              \   make room to compile xdo
+MOV &DP,TOS             \ -- HERE+2
+MOV #XDO,-2(TOS)        \   compile xdo
+ADD #2,&LEAVEPTR        \ -- HERE+2     LEAVEPTR+2
+MOV &LEAVEPTR,W         \
+MOV #0,0(W)             \ -- HERE+2     L-- 0
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] LOOP [IF]
+\ https://forth-standard.org/standard/core/LOOP
+\ LOOP    DOadr --         L-- an an-1 .. a1 0
+CODE LOOP               \ immediate
+    MOV #XLOOP,X
+BW1 ADD #4,&DP          \ make room to compile two words
+    MOV &DP,W
+    MOV X,-4(W)         \ xloop --> HERE
+    MOV TOS,-2(W)       \ DOadr --> HERE+2
+BEGIN                   \ resolve all "leave" adr
+    MOV &LEAVEPTR,TOS   \ -- Adr of top LeaveStack cell
+    SUB #2,&LEAVEPTR    \ --
+    MOV @TOS,TOS        \ -- first LeaveStack value
+    CMP #0,TOS          \ -- = value left by DO ?
+0<> WHILE
+    MOV W,0(TOS)        \ move adr after loop as UNLOOP adr
+REPEAT
+    MOV @PSP+,TOS
+    MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] +LOOP [IF]
+\ https://forth-standard.org/standard/core/PlusLOOP
+\ +LOOP   adrs --   L-- an an-1 .. a1 0
+CODE +LOOP              \ immediate
+MOV #XPLOOP,X
+GOTO BW1
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] I [IF]
+\ https://forth-standard.org/standard/core/I
+\ I        -- n   R: sys1 sys2 -- sys1 sys2
+\                  get the innermost loop index
+CODE I
+SUB #2,PSP              \ 1 make room in TOS
+MOV TOS,0(PSP)          \ 3
+MOV @RSP,TOS            \ 2 index = loopctr - fudge
+SUB 2(RSP),TOS          \ 3
+MOV @IP+,PC             \ 4 13~
+ENDCODE
+[THEN]
+
 [UNDEFINED] + [IF]
 \ https://forth-standard.org/standard/core/Plus
 \ +       n1/u1 n2/u2 -- n3/u3     add n1+n2
@@ -83,6 +292,17 @@ MOV @IP+,PC
 ENDCODE
 [THEN]
 
+[UNDEFINED] - [IF]
+\ https://forth-standard.org/standard/core/Minus
+\ -      n1/u1 n2/u2 -- n3/u3     n3 = n1-n2
+CODE -
+SUB @PSP+,TOS   \ 2  -- n2-n1 ( = -n3)
+XOR #-1,TOS     \ 1
+ADD #1,TOS      \ 1  -- n3 = -(n2-n1) = n1-n2
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
 [UNDEFINED] MAX [IF]   \ MAX and MIN are defined in {ANS_COMP}
     CODE MAX    \    n1 n2 -- n3       signed maximum
         CMP @PSP,TOS    \ n2-n1
@@ -99,6 +319,15 @@ FW1     MOV @PSP+,TOS
     ENDCODE
 [THEN]
 
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
 [UNDEFINED] C@ [IF]
 \ https://forth-standard.org/standard/core/CFetch
 \ C@     c-addr -- char   fetch char from memory
@@ -108,6 +337,16 @@ MOV @IP+,PC
 ENDCODE
 [THEN]
 
+[UNDEFINED] ! [IF]
+\ https://forth-standard.org/standard/core/Store
+\ !        x a-addr --   store cell in memory
+CODE !
+MOV @PSP+,0(TOS)    \ 4
+MOV @PSP+,TOS       \ 2
+MOV @IP+,PC         \ 4
+ENDCODE
+[THEN]
+
 [UNDEFINED] SPACE [IF]
 \ https://forth-standard.org/standard/core/SPACE
 \ SPACE   --               output a space
@@ -136,6 +375,24 @@ NEXT
 ENDCODE
 [THEN]
 
+[UNDEFINED] DUP [IF]
+\ https://forth-standard.org/standard/core/DUP
+\ DUP      x -- x x      duplicate top of stack
+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]
+
 [UNDEFINED] OVER [IF]
 \ https://forth-standard.org/standard/core/OVER
 \ OVER    x1 x2 -- x1 x2 x1
@@ -147,6 +404,74 @@ MOV @IP+,PC
 ENDCODE
 [THEN]
 
+[UNDEFINED] >R [IF]
+\ https://forth-standard.org/standard/core/toR
+\ >R    x --   R: -- x   push to return stack
+CODE >R
+PUSH TOS
+MOV @PSP+,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] R> [IF]
+\ https://forth-standard.org/standard/core/Rfrom
+\ R>    -- x    R: x --   pop from return stack ; CALL #RFROM performs DOVAR
+CODE R>
+SUB #2,PSP      \ 1
+MOV TOS,0(PSP)  \ 3
+MOV @RSP+,TOS   \ 2
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] CONSTANT [IF]
+\ https://forth-standard.org/standard/core/CONSTANT
+\ CONSTANT <name>     n --                      define a Forth CONSTANT 
+: CONSTANT 
+CREATE
+HI2LO
+MOV TOS,-2(W)           \   PFA = n
+MOV @PSP+,TOS
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] STATE [IF]
+\ https://forth-standard.org/standard/core/STATE
+\ STATE   -- a-addr       holds compiler state
+STATEADR CONSTANT STATE
+[THEN]
+
+[UNDEFINED] DEFER! [IF]
+\ https://forth-standard.org/standard/core/DEFERStore
+\ Set the word xt1 to execute xt2. An ambiguous condition exists if xt1 is not for a word defined by DEFER.
+CODE DEFER!             \ xt2 xt1 --
+MOV @PSP+,2(TOS)        \ -- xt1=CFA_DEFER          xt2 --> [CFA_DEFER+2]
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] IS [IF]
+\ https://forth-standard.org/standard/core/IS
+\ IS <name>        xt --
+\ used as is :
+\ DEFER DISPLAY                         create a "do nothing" definition (2 CELLS)
+\ inline command : ' U. IS DISPLAY      U. becomes the runtime of the word DISPLAY
+\ or in a definition : ... ['] U. IS DISPLAY ...
+\ KEY, EMIT, CR, ACCEPT and WARM are examples of DEFERred words
+\
+\ as IS replaces the PFA value of any word, it's a TO alias for VARIABLE and CONSTANT words...
+: IS
+STATE @
+IF  POSTPONE ['] POSTPONE DEFER! 
+ELSE ' DEFER! 
+THEN
+; IMMEDIATE
+[THEN]
+
 [UNDEFINED] U.R [IF]        \ defined in {UTILITY}
 : U.R                       \ u n --           display u unsigned in n width (n >= 2)
 >R  <# 0 # #S #>  
@@ -178,12 +503,18 @@ LO2HI
 ;
 [THEN]
 
+[UNDEFINED] HERE [IF]
+CODE HERE
+MOV #BEGIN,PC
+ENDCODE
+[THEN]
+
 
 \ SD_EMIT  c --    output char c to a SD_CARD file opened as write
 CODE SD_EMIT
 CMP #512,&BufferPtr     \ 512 bytes by sector
 U>= IF                  \ if file buffer is full
-    MOV #WRITE,X        \ CALL WRITEFILE
+    MOV #WRITE,X        \ CALL #Write_File
     CALL 2(X)           \ BufferPtr = 0
 THEN
 MOV &BufferPtr,Y        \ 3 
@@ -199,7 +530,7 @@ CR
 ." 0 Set date and time" CR
 ." 1 Load {TOOLS} words" CR
 ." 2 Load {SD_TOOLS} words" CR
-." 3 Load {ANS_COMP} words" CR
+." 3 Load {CORE_COMP} words" CR
 ." 4 Load ANS core tests" CR
 ." 5 Load a 100k program " CR
 ." 6 Read only this source file" CR
@@ -222,8 +553,8 @@ ELSE 1 - ?DUP
             LOAD" SD_TOOLS.4TH"
         ELSE 1 - ?DUP
             0= IF
-                ." LOAD ANS_COMP.4TH" CR
-                LOAD" ANS_COMP.4TH"
+                ." LOAD CORECOMP.4TH" CR
+                LOAD" CORECOMP.4TH"
             ELSE 1 - ?DUP
                 0= IF
                     ." LOAD CORETEST.4TH" CR
@@ -246,6 +577,7 @@ ELSE 1 - ?DUP
                                 ." WRITE YOURFILE.TXT" CR
                                 WRITE" YOURFILE.TXT"
                                 ['] SD_EMIT IS EMIT
+\                                ." va te faire voir"
                                 MAIN_ORG HERE OVER - DUMP
                                 ['] EMIT >BODY IS EMIT
                                 CLOSE
@@ -271,6 +603,8 @@ ELSE 1 - ?DUP
 THEN
 ;
 
+
+
 RST_HERE
 
 [THEN]
index c86e8c1..4dcbd66 100644 (file)
 \ ASSEMBLER conditionnal usage with IF UNTIL WHILE  S<  S>=  U<   U>=  0=  0<>  0>=
 \ ASSEMBLER conditionnal usage with ?JMP ?GOTO      S<  S>=  U<   U>=  0=  0<>  0<
 
+[DEFINED] {SD_TOOLS} [IF]  {SD_TOOLS} [THEN]
+
 [UNDEFINED] {SD_TOOLS} [IF]
 
 PWR_STATE
 
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+: MARKER
+CREATE
+HI2LO
+MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+SUB #2,Y            \ 1 Y = LFA
+MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+ADD #4,&DP          \ 3 add 2 cells
+LO2HI
+DOES>
+HI2LO
+MOV @RSP+,IP        \ -- PFA
+MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+MOV @TOS,&INIDP     \       set DP value for RST_STATE
+MOV @PSP+,TOS       \ --
+MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+ENDCODE
+[THEN]
+
 MARKER {SD_TOOLS}
 
 [UNDEFINED] + [IF]
@@ -74,6 +107,16 @@ MOV @IP+,PC
 ENDCODE
 [THEN]
 
+[UNDEFINED] ! [IF]
+\ https://forth-standard.org/standard/core/Store
+\ !        x a-addr --   store cell in memory
+CODE !
+MOV @PSP+,0(TOS)    \ 4
+MOV @PSP+,TOS       \ 2
+MOV @IP+,PC         \ 4
+ENDCODE
+[THEN]
+
 [UNDEFINED] SPACE [IF]
 \ https://forth-standard.org/standard/core/SPACE
 \ SPACE   --               output a space
@@ -102,6 +145,17 @@ NEXT
 ENDCODE
 [THEN]
 
+[UNDEFINED] SWAP [IF]
+\ https://forth-standard.org/standard/core/SWAP
+\ SWAP     x1 x2 -- x2 x1    swap top two items
+CODE SWAP
+MOV @PSP,W      \ 2
+MOV TOS,0(PSP)  \ 3
+MOV W,TOS       \ 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
 [UNDEFINED] OVER [IF]
 \ https://forth-standard.org/standard/core/OVER
 \ OVER    x1 x2 -- x1 x2 x1
@@ -113,6 +167,35 @@ MOV @IP+,PC
 ENDCODE
 [THEN]
 
+[UNDEFINED] >R [IF]
+\ https://forth-standard.org/standard/core/toR
+\ >R    x --   R: -- x   push to return stack
+CODE >R
+PUSH TOS
+MOV @PSP+,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] R> [IF]
+\ https://forth-standard.org/standard/core/Rfrom
+\ R>    -- x    R: x --   pop from return stack ; CALL #RFROM performs DOVAR
+CODE R>
+MOV rDOVAR,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] - [IF]
+\ https://forth-standard.org/standard/core/Minus
+\ -      n1/u1 n2/u2 -- n3/u3     n3 = n1-n2
+CODE -
+SUB @PSP+,TOS   \ 2  -- n2-n1 ( = -n3)
+XOR #-1,TOS     \ 1
+ADD #1,TOS      \ 1  -- n3 = -(n2-n1) = n1-n2
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
 [UNDEFINED] U.R [IF]        \ defined in {UTILITY}
 : U.R                       \ u n --           display u unsigned in n width (n >= 2)
   >R  <# 0 # #S #>  
@@ -120,6 +203,66 @@ ENDCODE
 ;
 [THEN]
 
+[UNDEFINED] DO [IF]
+\ https://forth-standard.org/standard/core/DO
+\ DO       -- DOadr   L: -- 0
+CODE DO                 \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+ADD #2,&DP              \   make room to compile xdo
+MOV &DP,TOS             \ -- HERE+2
+MOV #XDO,-2(TOS)        \   compile xdo
+ADD #2,&LEAVEPTR        \ -- HERE+2     LEAVEPTR+2
+MOV &LEAVEPTR,W         \
+MOV #0,0(W)             \ -- HERE+2     L-- 0
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] LOOP [IF]
+\ https://forth-standard.org/standard/core/LOOP
+\ LOOP    DOadr --         L-- an an-1 .. a1 0
+CODE LOOP               \ immediate
+    MOV #XLOOP,X
+BW1 ADD #4,&DP          \ make room to compile two words
+    MOV &DP,W
+    MOV X,-4(W)         \ xloop --> HERE
+    MOV TOS,-2(W)       \ DOadr --> HERE+2
+BEGIN                   \ resolve all "leave" adr
+    MOV &LEAVEPTR,TOS   \ -- Adr of top LeaveStack cell
+    SUB #2,&LEAVEPTR    \ --
+    MOV @TOS,TOS        \ -- first LeaveStack value
+    CMP #0,TOS          \ -- = value left by DO ?
+0<> WHILE
+    MOV W,0(TOS)        \ move adr after loop as UNLOOP adr
+REPEAT
+    MOV @PSP+,TOS
+    MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] +LOOP [IF]
+\ https://forth-standard.org/standard/core/PlusLOOP
+\ +LOOP   adrs --   L-- an an-1 .. a1 0
+CODE +LOOP              \ immediate
+MOV #XPLOOP,X
+GOTO BW1
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] I [IF]
+\ https://forth-standard.org/standard/core/I
+\ I        -- n   R: sys1 sys2 -- sys1 sys2
+\                  get the innermost loop index
+CODE I
+SUB #2,PSP              \ 1 make room in TOS
+MOV TOS,0(PSP)          \ 3
+MOV @RSP,TOS            \ 2 index = loopctr - fudge
+SUB 2(RSP),TOS          \ 3
+MOV @IP+,PC             \ 4 13~
+ENDCODE
+[THEN]
+
 [UNDEFINED] DUMP [IF]       \ defined in {UTILITY}
 \ https://forth-standard.org/standard/tools/DUMP
 CODE DUMP                   \ adr n  --   dump memory
index 337747d..66f3f0c 100644 (file)
 \
 \ FORTH conditionnal    : 0= 0< = < > U<
 
+[UNDEFINED] >R [IF]
+\ https://forth-standard.org/standard/core/toR
+\ >R    x --   R: -- x   push to return stack
+CODE >R
+PUSH TOS
+MOV @PSP+,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] R> [IF]
+\ https://forth-standard.org/standard/core/Rfrom
+\ R>    -- x    R: x --   pop from return stack ; CALL #RFROM performs DOVAR
+CODE R>
+MOV rDOVAR,PC
+ENDCODE
+[THEN]
+
 [UNDEFINED] + [IF]
 \ https://forth-standard.org/standard/core/Plus
 \ +       n1/u1 n2/u2 -- n3/u3     add n1+n2
@@ -32,6 +50,28 @@ MOV @IP+,PC
 ENDCODE
 [THEN]
 
+[UNDEFINED] - [IF]
+\ https://forth-standard.org/standard/core/Minus
+\ -      n1/u1 n2/u2 -- n3/u3     n3 = n1-n2
+CODE -
+SUB @PSP+,TOS   \ 2  -- n2-n1 ( = -n3)
+XOR #-1,TOS     \ 1
+ADD #1,TOS      \ 1  -- n3 = -(n2-n1) = n1-n2
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] SWAP [IF]
+\ https://forth-standard.org/standard/core/SWAP
+\ SWAP     x1 x2 -- x2 x1    swap top two items
+CODE SWAP
+MOV @PSP,W      \ 2
+MOV TOS,0(PSP)  \ 3
+MOV W,TOS       \ 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
 [UNDEFINED] MAX [IF]    \ MAX and MIN are defined in {UTILITY}
 
 CODE MAX    \    n1 n2 -- n3       signed maximum
@@ -50,6 +90,25 @@ ENDCODE
 
 [THEN]
 
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] ! [IF]
+\ https://forth-standard.org/standard/core/Store
+\ !        x a-addr --   store cell in memory
+CODE !
+MOV @PSP+,0(TOS)    \ 4
+MOV @PSP+,TOS       \ 2
+MOV @IP+,PC         \ 4
+ENDCODE
+[THEN]
+
 [UNDEFINED] C@ [IF]
 \ https://forth-standard.org/standard/core/CFetch
 \ C@     c-addr -- char   fetch char from memory
@@ -63,10 +122,10 @@ ENDCODE
 \ https://forth-standard.org/standard/core/VARIABLE
 \ VARIABLE <name>       --                      define a Forth VARIABLE
 : VARIABLE 
-DEFER
+CREATE
 HI2LO
-MOV @RSP+,IP
 MOV #DOVAR,-4(W)        \   CFA = DOVAR
+MOV @RSP+,IP
 MOV @IP+,PC
 ENDCODE
 [THEN]
@@ -75,12 +134,39 @@ ENDCODE
 \ https://forth-standard.org/standard/core/CONSTANT
 \ CONSTANT <name>     n --                      define a Forth CONSTANT 
 : CONSTANT 
-DEFER
+CREATE
 HI2LO
-MOV @RSP+,IP
-MOV #DOCON,-4(W)        \   CFA = DOCON
 MOV TOS,-2(W)           \   PFA = n
 MOV @PSP+,TOS
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] DEFER [IF]
+\ https://forth-standard.org/standard/core/DEFER
+\ DEFER "<spaces>name"   --
+\Skip leading space delimiters. Parse name delimited by a space.
+\Create a definition for name with the execution semantics defined below.
+
+\name Execution:   --
+\Execute the xt that name is set to execute, i.e. NEXT (nothing),
+\until the phrase ' word IS name is executed, causing a new value of xt to be assigned to name.
+: DEFER
+CREATE
+HI2LO
+MOV #$4030,-4(W)        \ CFA = MOV @PC+,PC = BR MOV @IP+,PC
+MOV #NEXT_ADR,-2(W)     \ PFA = address of MOV @IP+,PC to do nothing.
+MOV @RSP+,IP
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] >BODY [IF]
+\ https://forth-standard.org/standard/core/toBODY
+\ >BODY     -- addr      leave BODY of a CREATEd word\ also leave default ACTION-OF primary DEFERred word
+CODE >BODY
+ADD #4,TOS
 MOV @IP+,PC
 ENDCODE
 [THEN]
@@ -113,6 +199,16 @@ NEXT
 ENDCODE
 [THEN]
 
+[UNDEFINED] DUP [IF]
+\ https://forth-standard.org/standard/core/DUP
+\ DUP      x -- x x      duplicate top of stack
+CODE DUP
+BW1 SUB #2,PSP      \ 2  push old TOS..
+    MOV TOS,0(PSP)  \ 3  ..onto stack
+    MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
 [UNDEFINED] OVER [IF]
 \ https://forth-standard.org/standard/core/OVER
 \ OVER    x1 x2 -- x1 x2 x1
@@ -131,6 +227,66 @@ ENDCODE
 ;
 [THEN]
 
+[UNDEFINED] DO [IF]
+\ https://forth-standard.org/standard/core/DO
+\ DO       -- DOadr   L: -- 0
+CODE DO                 \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+ADD #2,&DP              \   make room to compile xdo
+MOV &DP,TOS             \ -- HERE+2
+MOV #XDO,-2(TOS)        \   compile xdo
+ADD #2,&LEAVEPTR        \ -- HERE+2     LEAVEPTR+2
+MOV &LEAVEPTR,W         \
+MOV #0,0(W)             \ -- HERE+2     L-- 0
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] LOOP [IF]
+\ https://forth-standard.org/standard/core/LOOP
+\ LOOP    DOadr --         L-- an an-1 .. a1 0
+CODE LOOP               \ immediate
+    MOV #XLOOP,X
+BW1 ADD #4,&DP          \ make room to compile two words
+    MOV &DP,W
+    MOV X,-4(W)         \ xloop --> HERE
+    MOV TOS,-2(W)       \ DOadr --> HERE+2
+BEGIN                   \ resolve all "leave" adr
+    MOV &LEAVEPTR,TOS   \ -- Adr of top LeaveStack cell
+    SUB #2,&LEAVEPTR    \ --
+    MOV @TOS,TOS        \ -- first LeaveStack value
+    CMP #0,TOS          \ -- = value left by DO ?
+0<> WHILE
+    MOV W,0(TOS)        \ move adr after loop as UNLOOP adr
+REPEAT
+    MOV @PSP+,TOS
+    MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] +LOOP [IF]
+\ https://forth-standard.org/standard/core/PlusLOOP
+\ +LOOP   adrs --   L-- an an-1 .. a1 0
+CODE +LOOP              \ immediate
+MOV #XPLOOP,X
+GOTO BW1
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] I [IF]
+\ https://forth-standard.org/standard/core/I
+\ I        -- n   R: sys1 sys2 -- sys1 sys2
+\                  get the innermost loop index
+CODE I
+SUB #2,PSP              \ 1 make room in TOS
+MOV TOS,0(PSP)          \ 3
+MOV @RSP,TOS            \ 2 index = loopctr - fudge
+SUB 2(RSP),TOS          \ 3
+MOV @IP+,PC             \ 4 13~
+ENDCODE
+[THEN]
+
 [UNDEFINED] DUMP [IF]       \ defined in {UTILITY}
 \ https://forth-standard.org/standard/tools/DUMP
 CODE DUMP                   \ adr n  --   dump memory
index cffa9e3..abee8b2 100644 (file)
@@ -35,6 +35,17 @@ MOV @IP+,PC
 ENDCODE
 [THEN]
 
+[UNDEFINED] - [IF]
+\ https://forth-standard.org/standard/core/Minus
+\ -      n1/u1 n2/u2 -- n3/u3     n3 = n1-n2
+CODE -
+SUB @PSP+,TOS   \ 2  -- n2-n1 ( = -n3)
+XOR #-1,TOS     \ 1
+ADD #1,TOS      \ 1  -- n3 = -(n2-n1) = n1-n2
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
 [UNDEFINED] MAX [IF]    \ MAX and MIN are defined in {UTILITY}
 
 CODE MAX    \    n1 n2 -- n3       signed maximum
@@ -53,6 +64,16 @@ ENDCODE
 
 [THEN]
 
+[UNDEFINED] ! [IF]
+\ https://forth-standard.org/standard/core/Store
+\ !        x a-addr --   store cell in memory
+CODE !
+MOV @PSP+,0(TOS)    \ 4
+MOV @PSP+,TOS       \ 2
+MOV @IP+,PC         \ 4
+ENDCODE
+[THEN]
+
 [UNDEFINED] C@ [IF]
 \ https://forth-standard.org/standard/core/CFetch
 \ C@     c-addr -- char   fetch char from memory
@@ -66,12 +87,11 @@ ENDCODE
 \ https://forth-standard.org/standard/core/CONSTANT
 \ CONSTANT <name>     n --                      define a Forth CONSTANT 
 : CONSTANT 
-DEFER
+CREATE
 HI2LO
-MOV @RSP+,IP
-MOV #DOCON,-4(W)        \   CFA = DOCON
 MOV TOS,-2(W)           \   PFA = n
 MOV @PSP+,TOS
+MOV @RSP+,IP
 MOV @IP+,PC
 ENDCODE
 [THEN]
@@ -121,6 +141,54 @@ MOV @IP+,PC
 ENDCODE
 [THEN]
 
+[UNDEFINED] SWAP [IF]
+\ https://forth-standard.org/standard/core/SWAP
+\ SWAP     x1 x2 -- x2 x1    swap top two items
+CODE SWAP
+MOV @PSP,W      \ 2
+MOV TOS,0(PSP)  \ 3
+MOV W,TOS       \ 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] >R [IF]
+\ https://forth-standard.org/standard/core/toR
+\ >R    x --   R: -- x   push to return stack
+CODE >R
+PUSH TOS
+MOV @PSP+,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] R> [IF]
+\ https://forth-standard.org/standard/core/Rfrom
+\ R>    -- x    R: x --   pop from return stack ; CALL #RFROM performs DOVAR
+CODE R>
+MOV rDOVAR,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] ! [IF]
+\ https://forth-standard.org/standard/core/Store
+\ !        x a-addr --   store cell in memory
+CODE !
+MOV @PSP+,0(TOS)    \ 4
+MOV @PSP+,TOS       \ 2
+MOV @IP+,PC         \ 4
+ENDCODE
+[THEN]
+
 [UNDEFINED] U.R [IF]        \ defined in {UTILITY}
 : U.R                       \ u n --           display u unsigned in n width (n >= 2)
   >R  <# 0 # #S #>  
@@ -128,6 +196,66 @@ ENDCODE
 ;
 [THEN]
 
+[UNDEFINED] DO [IF]
+\ https://forth-standard.org/standard/core/DO
+\ DO       -- DOadr   L: -- 0
+CODE DO                 \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+ADD #2,&DP              \   make room to compile xdo
+MOV &DP,TOS             \ -- HERE+2
+MOV #XDO,-2(TOS)        \   compile xdo
+ADD #2,&LEAVEPTR        \ -- HERE+2     LEAVEPTR+2
+MOV &LEAVEPTR,W         \
+MOV #0,0(W)             \ -- HERE+2     L-- 0
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] LOOP [IF]
+\ https://forth-standard.org/standard/core/LOOP
+\ LOOP    DOadr --         L-- an an-1 .. a1 0
+CODE LOOP               \ immediate
+    MOV #XLOOP,X
+BW1 ADD #4,&DP          \ make room to compile two words
+    MOV &DP,W
+    MOV X,-4(W)         \ xloop --> HERE
+    MOV TOS,-2(W)       \ DOadr --> HERE+2
+BEGIN                   \ resolve all "leave" adr
+    MOV &LEAVEPTR,TOS   \ -- Adr of top LeaveStack cell
+    SUB #2,&LEAVEPTR    \ --
+    MOV @TOS,TOS        \ -- first LeaveStack value
+    CMP #0,TOS          \ -- = value left by DO ?
+0<> WHILE
+    MOV W,0(TOS)        \ move adr after loop as UNLOOP adr
+REPEAT
+    MOV @PSP+,TOS
+    MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] +LOOP [IF]
+\ https://forth-standard.org/standard/core/PlusLOOP
+\ +LOOP   adrs --   L-- an an-1 .. a1 0
+CODE +LOOP              \ immediate
+MOV #XPLOOP,X
+GOTO BW1
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] I [IF]
+\ https://forth-standard.org/standard/core/I
+\ I        -- n   R: sys1 sys2 -- sys1 sys2
+\                  get the innermost loop index
+CODE I
+SUB #2,PSP              \ 1 make room in TOS
+MOV TOS,0(PSP)          \ 3
+MOV @RSP,TOS            \ 2 index = loopctr - fudge
+SUB 2(RSP),TOS          \ 3
+MOV @IP+,PC             \ 4 13~
+ENDCODE
+[THEN]
+
 [UNDEFINED] DUMP [IF]       \ defined in {UTILITY}
 \ https://forth-standard.org/standard/tools/DUMP
 CODE DUMP                   \ adr n  --   dump memory
diff --git a/MSP430-FORTH/TSTWORDS.4TH b/MSP430-FORTH/TSTWORDS.4TH
new file mode 100644 (file)
index 0000000..fb92b9c
--- /dev/null
@@ -0,0 +1,90 @@
+\ -----------------------------
+\ MSP-EXP430FR5969_TSTWORDS.4th
+\ -----------------------------
+
+PWR_STATE
+
+\ -----------------------------------------------------------------------
+\ test some assembler words and show how to mix FORTH/ASSEMBLER routines
+\ -----------------------------------------------------------------------
+LOAD" \misc\TestASM.4th"
+
+\ -------------------------------------
+\ here we returned in the TestWords.4th
+\ -------------------------------------
+ECHO
+\ ----------
+\ LOOP tests
+\ ----------
+: LOOP_TEST 8 0 DO I . LOOP 
+;
+
+LOOP_TEST   \ you should see 0 1 2 3 4 5 6 7 -->
+
+
+: LOOP_TEST1    \   n <LOOP_TEST1> ---
+
+    BEGIN   DUP U. 1 -
+    ?DUP
+    0= UNTIL 
+;
+
+: LOOP_MAX      \ FIND_NOTHING      --
+    0 0
+    DO
+    LOOP            \ 14 cycles by loop
+    ABORT" 65536 LOOP " 
+;
+
+ : FIND_TEST            \ FIND_TEST <word>     --
+    $20 WORD             \ -- c-addr
+        50000 0 
+        DO              \ -- c-addr 
+            DUP   
+            FIND DROP DROP
+        LOOP
+     FIND
+     0=  IF ABORT" <-- not found !"
+         ELSE ABORT" <-- found !"
+         THEN 
+  ;
+      
+\ seeking $ word, FIND jumps all words on their first character so time of word loop is 20 cycles
+\ see FIND in the source file for more information
+\  
+\ FIND_TEST <lastword> result @ 8MHz, monothread : 1,2s  
+\
+\ FIND_TEST $ results @ 8MHz, monothread, 201 words in vocabulary FORTH :
+\ 27 seconds with only FORTH vocabulary in CONTEXT
+\ 540 us for one search ( which gives the delay for QNUMBER in INTERPRET routine)
+\ 2.6866 us / word, 21,49 cycles / word (for 20 cycles calculated (see FIND in source file)
+\
+\
+\ FIND_TEST $ results @ 8MHz, 2 threads, 201 words in vocabulary FORTH :
+\ 13 second with only FORTH vocabulary in CONTEXT
+\ 260 us for one search ( which gives the delay for QNUMBER in INTERPRET routine)
+\ 1,293 us / word, 10,34 cycles / word
+\
+\ FIND_TEST $ results @ 8MHz, 4 threads, 201 words in vocabulary FORTH :
+\ 8 second with only FORTH vocabulary in CONTEXT
+\ 160 us for one search ( which gives the delay for QNUMBER in INTERPRET routine)
+\ 0,796 us / word, 6,37 cycles / word 
+\
+\ FIND_TEST $ results @ 8MHz, 8 threads, 201 words in vocabulary FORTH :
+\ 4.66 second with only FORTH vocabulary in CONTEXT
+\ 93 us for one search ( which gives the delay for QNUMBER in INTERPRET routine)
+\ 0,4463 us / word, 3,7 cycles / word  
+\
+\ FIND_TEST $ results @ 8MHz, 16 threads, 201 words in vocabulary FORTH :
+\ 2,8 second with only FORTH vocabulary in CONTEXT
+\ 56 us for one search ( which gives the delay for QNUMBER in INTERPRET routine)
+\ 0,278 us / word, 2,22 cycles / word  
+\
+\ --------
+\ KEY test
+\ --------
+: KEY_TEST
+    ."  type a key : "
+    KEY EMIT    \ wait for a KEY, then emit it
+;
+\ KEY_TEST
index 64128c4..112f3d0 100644 (file)
@@ -8,6 +8,7 @@
 \ FastForth kernel options: MSP430ASSEMBLER, CONDCOMP
 \
 \ TARGET SELECTION
+\ LP_MSP430FR2476
 \ MSP_EXP430FR5739  MSP_EXP430FR5969    MSP_EXP430FR5994    MSP_EXP430FR6989
 \ MSP_EXP430FR4133  MSP_EXP430FR2433    MSP_EXP430FR2355    CHIPSTICK_FR2433
 \
 \ ASSEMBLER conditionnal usage with ?JMP ?GOTO      S<  S>=  U<   U>=  0=  0<>  0<
 
 
+PWR_STATE
+
+[DEFINED] {TOOLS} [IF]  {TOOLS} [THEN]
+
 [UNDEFINED] {TOOLS} [IF]
 
-PWR_STATE
+[UNDEFINED] MARKER [IF]
+\  https://forth-standard.org/standard/core/MARKER
+\  MARKER
+\ ( "<spaces>name" -- )
+\ Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
+\ with the execution semantics defined below.
+\ 
+\ name Execution: ( -- )
+\ Restore all dictionary allocation and search order pointers to the state they had just prior to the
+\ definition of name. Remove the definition of name and all subsequent definitions. Restoration
+\ of any structures still existing that could refer to deleted definitions or deallocated data space is
+\ not necessarily provided. No other contextual information such as numeric base is affected
+\
+\ : MARKER
+\ CREATE
+\ HI2LO
+\ MOV &LASTVOC,0(W)   \ [BODY] = LASTVOC
+\ SUB #2,Y            \ 1 Y = LFA
+\ MOV Y,2(W)          \ 3 [BODY+2] = LFA = DP to be restored
+\ ADD #4,&DP          \ 3 add 2 cells
+\ LO2HI
+\ DOES>
+\ HI2LO
+\ MOV @RSP+,IP        \ -- PFA
+\ MOV @TOS+,&INIVOC   \       set VOC_LINK value for RST_STATE
+\ MOV @TOS,&INIDP     \       set DP value for RST_STATE
+\ MOV @PSP+,TOS       \ --
+\ MOV #RST_STATE,PC   \       execute RST_STATE, PWR_STATE then STATE_DOES
+\ ENDCODE
+\ [THEN]
+
+: MARKER
+CREATE
+LAST_CFA @ >BODY >R
+LASTVOC @ R@ !
+LAST_NFA @ 2 - R> 2 + !  \ [BODY] = LASTVOC
+DOES>
+DUP @ INIVOC !    \       set VOC_LINK value for RST_STATE
+2 + @ INIDP !     \       set DP value for RST_STATE
+RST_STATE
+;                   \       execute RST_STATE, PWR_STATE then STATE_DOES
+[THEN]
 
 MARKER {TOOLS} 
 
-[UNDEFINED] ? [IF]    \
-\ https://forth-standard.org/standard/tools/q
-\ ?         adr --            display the content of adr
-CODE ?          
-    MOV @TOS,TOS
-    MOV #U.,PC  \ goto U.
+PWR_HERE
+
+[UNDEFINED] EXIT [IF]
+\ https://forth-standard.org/standard/core/EXIT
+\ EXIT     --      exit a colon definition; CALL #EXIT performs ASMtoFORTH (10 cycles)
+\                                           JMP #EXIT performs EXIT
+CODE EXIT
+MOV @RSP+,IP    \ 2 pop previous IP (or next PC) from return stack
+MOV @IP+,PC     \ 4 = NEXT
+                \ 6 (ITC-2)
+ENDCODE
+[THEN]
+
+[UNDEFINED] SWAP [IF]
+\ https://forth-standard.org/standard/core/SWAP
+\ SWAP     x1 x2 -- x2 x1    swap top two items
+CODE SWAP
+MOV @PSP,W      \ 2
+MOV TOS,0(PSP)  \ 3
+MOV W,TOS       \ 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+\ https://forth-standard.org/standard/core/Uless
+\ U<    u1 u2 -- flag       test u1<u2, unsigned
+[UNDEFINED] U< [IF]
+CODE U<
+SUB @PSP+,TOS   \ 2 u2-u1
+0<> IF
+    MOV #-1,TOS     \ 1
+    U< IF           \ 2 flag 
+        AND #0,TOS  \ 1 flag Z = 1
+    THEN
+THEN
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] IF [IF]
+\ https://forth-standard.org/standard/core/IF
+\ IF       -- IFadr    initialize conditional forward branch
+CODE IF       \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+MOV &DP,TOS             \ -- HERE
+ADD #4,&DP            \           compile one word, reserve one word
+MOV #QFBRAN,0(TOS)      \ -- HERE   compile QFBRAN
+ADD #2,TOS              \ -- HERE+2=IFadr
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] THEN [IF]
+\ https://forth-standard.org/standard/core/THEN
+\ THEN     IFadr --                resolve forward branch
+CODE THEN               \ immediate
+MOV &DP,0(TOS)          \ -- IFadr
+MOV @PSP+,TOS           \ --
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] BEGIN [IF]
+\ https://forth-standard.org/standard/core/BEGIN
+\ BEGIN    -- BEGINadr             initialize backward branch
+CODE BEGIN              \ immediate
+MOV #HERE,PC            \ BR HERE
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] UNTIL [IF]
+\ https://forth-standard.org/standard/core/UNTIL
+\ UNTIL    BEGINadr --             resolve conditional backward branch
+CODE UNTIL              \ immediate
+    MOV #QFBRAN,X
+BW1 ADD #4,&DP          \ compile two words
+    MOV &DP,W           \ W = HERE
+    MOV X,-4(W)         \ compile Bran or QFBRAN at HERE
+    MOV TOS,-2(W)       \ compile bakcward adr at HERE+2
+    MOV @PSP+,TOS
+    MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] AGAIN [IF]
+\ https://forth-standard.org/standard/core/AGAIN
+\ AGAIN    BEGINadr --             resolve uncondionnal backward branch
+CODE AGAIN     \ immediate
+MOV #BRAN,X
+GOTO BW1
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] WHILE [IF]
+\ https://forth-standard.org/standard/core/WHILE
+\ WHILE    BEGINadr -- WHILEadr BEGINadr
+: WHILE     \ immediate
+POSTPONE IF SWAP
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] REPEAT [IF]
+\ https://forth-standard.org/standard/core/REPEAT
+\ REPEAT   WHILEadr BEGINadr --     resolve WHILE loop
+: REPEAT
+POSTPONE AGAIN POSTPONE THEN
+; IMMEDIATE
+[THEN]
+
+[UNDEFINED] DO [IF]
+\ https://forth-standard.org/standard/core/DO
+\ DO       -- DOadr   L: -- 0
+CODE DO                 \ immediate
+SUB #2,PSP              \
+MOV TOS,0(PSP)          \
+ADD #2,&DP              \   make room to compile xdo
+MOV &DP,TOS             \ -- HERE+2
+MOV #XDO,-2(TOS)        \   compile xdo
+ADD #2,&LEAVEPTR        \ -- HERE+2     LEAVEPTR+2
+MOV &LEAVEPTR,W         \
+MOV #0,0(W)             \ -- HERE+2     L-- 0
+MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] LOOP [IF]
+\ https://forth-standard.org/standard/core/LOOP
+\ LOOP    DOadr --         L-- an an-1 .. a1 0
+CODE LOOP               \ immediate
+    MOV #XLOOP,X
+BW1 ADD #4,&DP          \ make room to compile two words
+    MOV &DP,W
+    MOV X,-4(W)         \ xloop --> HERE
+    MOV TOS,-2(W)       \ DOadr --> HERE+2
+BEGIN                   \ resolve all "leave" adr
+    MOV &LEAVEPTR,TOS   \ -- Adr of top LeaveStack cell
+    SUB #2,&LEAVEPTR    \ --
+    MOV @TOS,TOS        \ -- first LeaveStack value
+    CMP #0,TOS          \ -- = value left by DO ?
+0<> WHILE
+    MOV W,0(TOS)        \ move adr after loop as UNLOOP adr
+REPEAT
+    MOV @PSP+,TOS
+    MOV @IP+,PC
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] +LOOP [IF]
+\ https://forth-standard.org/standard/core/PlusLOOP
+\ +LOOP   adrs --   L-- an an-1 .. a1 0
+CODE +LOOP              \ immediate
+MOV #XPLOOP,X
+GOTO BW1
+ENDCODE IMMEDIATE
+[THEN]
+
+[UNDEFINED] I [IF]
+\ https://forth-standard.org/standard/core/I
+\ I        -- n   R: sys1 sys2 -- sys1 sys2
+\                  get the innermost loop index
+CODE I
+SUB #2,PSP              \ 1 make room in TOS
+MOV TOS,0(PSP)          \ 3
+MOV @RSP,TOS            \ 2 index = loopctr - fudge
+SUB 2(RSP),TOS          \ 3
+MOV @IP+,PC             \ 4 13~
+ENDCODE
+[THEN]
+
+[UNDEFINED] DUP [IF]
+\ https://forth-standard.org/standard/core/DUP
+\ DUP      x -- x x      duplicate top of stack
+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]
+
+[UNDEFINED] SWAP [IF]
+\ https://forth-standard.org/standard/core/SWAP
+\ SWAP     x1 x2 -- x2 x1    swap top two items
+CODE SWAP
+MOV @PSP,W      \ 2
+MOV TOS,0(PSP)  \ 3
+MOV W,TOS       \ 1
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+
+[UNDEFINED] DROP [IF]
+\ https://forth-standard.org/standard/core/DROP
+\ DROP     x --          drop top of stack
+CODE DROP
+MOV @PSP+,TOS   \ 2
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] >R [IF]
+\ https://forth-standard.org/standard/core/toR
+\ >R    x --   R: -- x   push to return stack
+CODE >R
+PUSH TOS
+MOV @PSP+,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] R> [IF]
+\ https://forth-standard.org/standard/core/Rfrom
+\ R>    -- x    R: x --   pop from return stack ; CALL #RFROM performs DOVAR
+CODE R>
+SUB #2,PSP      \ 1
+MOV TOS,0(PSP)  \ 3
+MOV @RSP+,TOS   \ 2
+MOV @IP+,PC     \ 4
+ENDCODE
+[THEN]
+
+[UNDEFINED] @ [IF]
+\ https://forth-standard.org/standard/core/Fetch
+\ @     c-addr -- char   fetch char from memory
+CODE @
+MOV @TOS,TOS
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] ! [IF]
+\ https://forth-standard.org/standard/core/Store
+\ !        x a-addr --   store cell in memory
+CODE !
+MOV @PSP+,0(TOS)    \ 4
+MOV @PSP+,TOS       \ 2
+MOV @IP+,PC         \ 4
 ENDCODE
 [THEN]
 
@@ -76,45 +362,23 @@ NEXT
 ENDCODE
 [THEN]
 
-[UNDEFINED] .S [IF]    \
-\ https://forth-standard.org/standard/tools/DotS
-\ .S            --            display <depth> of param Stack and stack contents in hedadecimal if not empty
-CODE .S
-    MOV     TOS,-2(PSP) \ -- TOS ( tos x x )
-    MOV     PSP,TOS
-    SUB     #2,TOS      \ to take count that TOS is first cell
-    MOV     TOS,-6(PSP) \ -- TOS ( tos x  PSP )
-    MOV     #PSTACK,TOS \ -- P0  ( tos x  PSP )
-    SUB     #2,TOS      \ to take count that TOS is first cell
-BW1 MOV     TOS,-4(PSP) \ -- S0  ( tos S0 SP )
-    SUB     #6,PSP      \ -- S0 SP S0
-    SUB     @PSP,TOS    \ -- S0 SP S0-SP
-    RRA     TOS         \ -- S0 SP #cells
-COLON
-    $3C EMIT            \ char '<'
-    .                   \ display #cells
-    $08 EMIT            \ backspace
-    $3E EMIT SPACE      \ char '>' SPACE
-    2DUP 1+             \ 
-    U< IF 
-        DROP DROP EXIT
-    THEN                \ display content of stack in hexadecimal
-    BASEADR @ >R
-    $10 BASEADR !
-    DO 
-        I @ U.
-    2 +LOOP
-    R> BASEADR !
-;
+[UNDEFINED] 2DUP [IF]    \
+\ https://forth-standard.org/standard/core/TwoDUP
+\ 2DUP   x1 x2 -- x1 x2 x1 x2   dup top 2 cells
+CODE 2DUP
+MOV TOS,-2(PSP)     \ 3
+MOV @PSP,-4(PSP)    \ 4
+SUB #4,PSP          \ 1
+MOV @IP+,PC         \ 4
+ENDCODE
 [THEN]
 
-[UNDEFINED] .RS [IF]    \
-\ .RS            --            display <depth> of Return Stack and stack contents if not empty
-CODE .RS
-    MOV     TOS,-2(PSP) \ -- TOS ( tos x x ) 
-    MOV     RSP,-6(PSP) \ -- TOS ( tos x  RSP )
-    MOV     #RSTACK,TOS \ -- R0  ( tos x  RSP )
-    GOTO    BW1
+[UNDEFINED] 1+ [IF]
+\ https://forth-standard.org/standard/core/OnePlus
+\ 1+      n1/u1 -- n2/u2       add 1 to TOS
+CODE 1+
+ADD #1,TOS
+MOV @IP+,PC
 ENDCODE
 [THEN]
 
@@ -127,6 +391,17 @@ MOV @IP+,PC
 ENDCODE
 [THEN]
 
+[UNDEFINED] - [IF]
+\ https://forth-standard.org/standard/core/Minus
+\ -      n1/u1 n2/u2 -- n3/u3      n3 = n1-n2
+CODE -
+SUB @PSP+,TOS   \ 2  -- n2-n1
+XOR #-1,TOS     \ 1
+ADD #1,TOS      \ 1  -- n3 = -(n2-n1) = n1-n2
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
 [UNDEFINED] C@ [IF]
 \ https://forth-standard.org/standard/core/CFetch
 \ C@     c-addr -- char   fetch char from memory
@@ -157,6 +432,119 @@ MOV @IP+,PC
 ENDCODE
 [THEN]
 
+[UNDEFINED] MAX [IF]    \ MAX and MIN are defined in {ANS_COMP}
+    CODE MAX    \    n1 n2 -- n3       signed maximum
+        CMP @PSP,TOS    \ n2-n1
+        S< ?GOTO FW1    \ n2<n1
+BW1     ADD #2,PSP
+        MOV @IP+,PC
+    ENDCODE
+
+    CODE MIN    \    n1 n2 -- n3       signed minimum
+        CMP @PSP,TOS    \ n2-n1
+        S< ?GOTO BW1    \ n2<n1
+FW1     MOV @PSP+,TOS
+        MOV @IP+,PC
+    ENDCODE
+[THEN]
+
+[UNDEFINED] OVER [IF]
+\ https://forth-standard.org/standard/core/OVER
+\ OVER    x1 x2 -- x1 x2 x1
+CODE OVER
+MOV TOS,-2(PSP)     \ 3 -- x1 (x2) x2
+MOV @PSP,TOS        \ 2 -- x1 (x2) x1
+SUB #2,PSP          \ 1 -- x1 x2 x1
+MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] MOVE [IF]
+\ https://forth-standard.org/standard/core/MOVE
+\ MOVE    addr1 addr2 u --     smart move
+\             VERSION FOR 1 ADDRESS UNIT = 1 CHAR
+CODE MOVE
+MOV TOS,W           \ W = cnt
+MOV @PSP+,Y         \ Y = addr2 = dst
+MOV @PSP+,X         \ X = addr1 = src
+MOV @PSP+,TOS       \ pop new TOS
+CMP #0,W            \ count = 0 ?
+0<> IF              \ if 0, already done !
+    CMP X,Y         \ Y-X \ dst - src
+    0= ?GOTO FW1    \ already done !
+    U< IF           \ U< if src > dst
+        BEGIN       \ copy W bytes
+            MOV.B @X+,0(Y)
+            ADD #1,Y
+            SUB #1,W
+        0= UNTIL
+        MOV @IP+,PC
+    ELSE            \ U>= if dst > src
+        ADD W,Y     \ copy W bytes beginning with the end
+        ADD W,X
+        BEGIN
+            SUB #1,X
+            SUB #1,Y
+            MOV.B @X,0(Y)
+            SUB #1,W
+        0= UNTIL
+    THEN
+THEN
+FW1 MOV @IP+,PC
+ENDCODE
+[THEN]
+
+[UNDEFINED] .S [IF]    \
+\ https://forth-standard.org/standard/tools/DotS
+\ .S        TOS -- TOS          display <depth> of param Stack and stack contents in hedadecimal if not empty
+CODE .S
+    MOV     TOS,-2(PSP) \ -- TOS ( TOS x x )
+    MOV     PSP,TOS     \ -- PSP ( TOS x x )
+    SUB     #2,TOS      \ -- PSP ( TOS x x )  to take count that TOS is first cell
+    MOV     TOS,-6(PSP) \ -- TOS ( TOS x  PSP )
+    MOV     #PSTACK,TOS \ -- P0  ( TOS x  PSP )
+    SUB     #2,TOS      \ -- P0  ( TOS x  PSP ) to take count that TOS is first cell
+BW1 MOV     TOS,-4(PSP) \ -- S0  ( TOS S0 PSP ) |  -- TOS ( TOS R0 RSP )
+    SUB     #6,PSP      \ -- TOS S0 PSP S0      |  -- TOS R0 RSP R0 
+    SUB     @PSP,TOS    \ -- TOS S0 PSP S0-SP   |  -- TOS R0 RSP R0-RSP 
+    RRA     TOS         \ -- TOS S0 PSP #cells  |  -- TOS R0 RSP #cells 
+COLON
+    $3C EMIT            \ char '<'
+    .                   \ display #cells
+    $08 EMIT            \ backspace
+    $3E EMIT SPACE      \ char '>' SPACE
+    2DUP 1+             \ 
+    U< IF 
+        DROP DROP EXIT
+    THEN                \ display content of stack in hexadecimal
+    BASEADR @ >R
+    $10 BASEADR !
+    DO 
+        I @ U.
+    2 +LOOP
+    R> BASEADR !
+;
+[THEN]
+
+[UNDEFINED] .RS [IF]    \
+\ .RS         TOS -- TOS           display <depth> of Return Stack and stack contents if not empty
+CODE .RS
+    MOV     TOS,-2(PSP) \ -- TOS ( TOS x x ) 
+    MOV     RSP,-6(PSP) \ -- TOS ( TOS x  RSP )
+    MOV     #RSTACK,TOS \ -- R0  ( TOS x  RSP )
+    GOTO    BW1
+ENDCODE
+[THEN]
+
+[UNDEFINED] ? [IF]    \
+\ https://forth-standard.org/standard/tools/q
+\ ?         adr --            display the content of adr
+CODE ?          
+    MOV @TOS,TOS
+    MOV #U.,PC  \ goto U.
+ENDCODE
+[THEN]
+
 [UNDEFINED] WORDS [IF]
 \ https://forth-standard.org/standard/tools/WORDS
 \ list all words of vocabulary first in CONTEXT.
@@ -192,33 +580,6 @@ DROP                            \ ptr --
 ;                               \ all threads in PAD_ORG are filled with 0
 [THEN]
 
-[UNDEFINED] MAX [IF]    \ MAX and MIN are defined in {ANS_COMP}
-    CODE MAX    \    n1 n2 -- n3       signed maximum
-        CMP @PSP,TOS    \ n2-n1
-        S< ?GOTO FW1    \ n2<n1
-BW1     ADD #2,PSP
-        MOV @IP+,PC
-    ENDCODE
-
-    CODE MIN    \    n1 n2 -- n3       signed minimum
-        CMP @PSP,TOS    \ n2-n1
-        S< ?GOTO BW1    \ n2<n1
-FW1     MOV @PSP+,TOS
-        MOV @IP+,PC
-    ENDCODE
-[THEN]
-
-[UNDEFINED] OVER [IF]
-\ https://forth-standard.org/standard/core/OVER
-\ OVER    x1 x2 -- x1 x2 x1
-CODE OVER
-MOV TOS,-2(PSP)     \ 3 -- x1 (x2) x2
-MOV @PSP,TOS        \ 2 -- x1 (x2) x1
-SUB #2,PSP          \ 1 -- x1 x2 x1
-MOV @IP+,PC
-ENDCODE
-[THEN]
-
 [UNDEFINED] U.R [IF]
 : U.R                       \ u n --           display u unsigned in n width (n >= 2)
 >R  <# 0 # #S #>  
diff --git a/MSP430-FORTH/VALUE.f b/MSP430-FORTH/VALUE.f
new file mode 100644 (file)
index 0000000..fcfe45c
--- /dev/null
@@ -0,0 +1,78 @@
+\ -*- coding: utf-8 -*-
+
+; -----------------------------------------------------
+; VALUE.f
+; -----------------------------------------------------
+\
+\ FastForth kernel options: MSP430ASSEMBLER, CONDCOMP
+\ to see FastForth kernel options, download FF_SPECS.f
+\
+\ TARGET Current Selection 
+\ (used by preprocessor GEMA to load the pattern: \inc\TARGET.pat)
+\ MSP_EXP430FR5739  MSP_EXP430FR5969    MSP_EXP430FR5994    MSP_EXP430FR6989
+\ MSP_EXP430FR2433  MSP_EXP430FR4133    MSP_EXP430FR2355    CHIPSTICK_FR2433
+\
+\ REGISTERS USAGE
+\ rDODOES to rEXIT must be saved before use and restored after
+\ scratch registers Y to S are free for use
+\ under interrupt, IP is free for use
+\
+\ PUSHM order : PSP,TOS, IP,  S,  T,  W,  X,  Y, rEXIT, rDOVAR, rDOCON, rDODOES
+\ example : PUSHM #6,IP pushes IP,S,T,W,X,Y registers to return stack
+\
+\ POPM  order :  rDODOES, rDOCON, rDOVAR, rEXIT,  Y,  X,  W,  T,  S, IP,TOS,PSP
+\ example : POPM #6,IP   pulls Y,X,W,T,S,IP registers from return stack
+\
+\ FORTH conditionnals:  unary{ 0= 0< 0> }, binary{ = < > U< }
+\
+\ ASSEMBLER conditionnal usage with IF UNTIL WHILE  S<  S>=  U<   U>=  0=  0<>  0>=
+\ ASSEMBLER conditionnal usage with ?GOTO           S<  S>=  U<   U>=  0=  0<>  0<
+
+PWR_STATE
+
+\ https://forth-standard.org/standard/core/VALUE
+\ ( x "<spaces>name" -- )                      define a Forth VALUE
+\ Skip leading space delimiters. Parse name delimited by a space.
+\ Create a definition for name with the execution semantics defined below,
+\ with an initial value equal to x.
+\ 
+\ name Execution: ( -- x )
+\ Place x on the stack. The value of x is that given when name was created,
+\ until the phrase x TO name is executed, causing a new value of x to be assigned to name.
+\ 
+: VALUE                 \ x "<spaces>name" -- 
+CREATE ,
+DOES> 
+HI2LO
+MOV @RSP+,IP
+BIT #UF10,SR    \ see TO
+0= IF
+    MOV #@,PC
+THEN 
+BIC #UF10,SR
+MOV #!,PC
+ENDCODE
+
+\ https://forth-standard.org/standard/double/TwoVALUE
+: 2VALUE        \ x1 x2 "<spaces>name" --
+CREATE , ,      \ compile Shi then Flo
+DOES>
+HI2LO
+MOV @RSP+,IP
+BIT #UF10,SR    \see TO
+0= IF
+   MOV #2@,PC
+THEN 
+BIC #UF10,SR
+MOV #2!,PC
+ENDCODE
+
+\ https://forth-standard.org/standard/core/TO
+\ TO name Run-time: ( x -- )
+\ Assign the value x to named VALUE.
+CODE TO
+BIS #UF10,SR
+MOV @IP+,PC
+ENDCODE
+
+PWR_HERE
index 4861bf5..22e52fd 100644 (file)
--- a/README.md
+++ b/README.md
@@ -1,19 +1,20 @@
 FastForth for MSP430FRxxxx TI's chips, from 16k FRAM 
 ==================================================
 
-Tested on all MSP-EXP430FRxxxx TI launchpads (5739,5969,5994,6989,4133,2355,2433,2476), at 0.5, 1, 2, 4, 8, 12, 16 MHz plus 20MHz and 24MHz with FR23xx,FR57xx devices.
+Tested on all MSP-EXP430FR TI launchpads (5739,5969,5994,6989,4133,2355,2433,2476), at 0.5, 1, 2, 4, 8, 12, 16 MHz plus 20MHz and 24MHz with FR23xx,FR57xx devices.
 
-Fast Forth is a fast and well-made embedded interpreter/assembler/compiler, very interesting because of its size under 5.5 KB.
-This includes the FORTH language, an amazing and powerful assembler with conditional compilation, a 16-input search engine which
-speeds up the Forth interpreter by a factor of 4, and a connection to the serial terminal (TERATERM.exe), with 3 wires software flow control (XON/XOFF) and/or 4 wires hardware control flow, up to 6 Mbds.
-If your goal is to program a MSP430FRxxxx in assembler or just to learn assembler, enjoy yourself, try it!
-However, if the IDE works well with Windows 10, it works less well with Linux which suffers from the lack of a good alternative to TERATERM...
+FastForth, a name that's not stolen: it loads from terminal and executes the test file \MSP430-FORTH\CORETEST.4th in less than a second. 
 
-For only 3 kbytes in addition, you have the primitives to access the SD\_CARD FAT16 and FAT32: read, write, del, download source files and to copy them from PC to the SD_Card.
-It works with all SD\_CARD memories from 64MB to 64GB. The cycle of read/write a byte is below 1 us @ 16 MHz.
+Fast and well-made "interpret/compile" operating system for MSP430, very interesting because of its 5kB size.
+This includes a kernel FORTH, an amazing assembler with conditional compilation, conditional jumps without labels, a 16-input search engine which speeds up the interpreter by 4, and a connection to the serial terminal, with software (XON/XOFF) and/or hardware (RTS) control flow, up to 6 Mbds.
+Don't panic, Forth is used not (only) as programming language but rather like a superstructure for the embedded assembler.
+If your goal is to program a MSP430FRxxxx in assembler or just to learn assembler, enjoy yourself: try it!
+However, if the IDE works well with Windows 10, it works less well with Linux due to the lack of a good alternative to TERATERM...
+
+For only 3 kbytes in addition, you have the primitives to access the SD\_CARD FAT16 and FAT32: read, write, del, download source files and to copy them from PC to the SD_Card. It works with all SD\_CARD memories from 64MB to 64GB. The cycle of read/write a byte is below 1 us @ 16 MHz.
 This enables to make a fast data logger with a small footprint as a MSP430FR5738 QFN24.
 
-With all kernel options, including extended_ASM and SD_Card driver, FastForth size is below 10.5 kB.
+With all kernel addons, including extended_ASM and SD_Card driver, FastForth size is 10 kB.
 
     The files launchpad_xMHz.txt are the executables ready to use with a PL2303HXD cable and
     a serial terminal (TERATERM.exe) at 115200Bds with XON/XOFF, or RTS hardware flow control
@@ -26,18 +27,17 @@ With all kernel options, including extended_ASM and SD_Card driver, FastForth si
                RX <--- TX
                TX ---> RX
               GND <--> GND
-              RTS ---> CTS (not necessary if software XON/XOFF flow control
-                            see in your launchpad.asm to find RTS pin).
-
+              RTS ---> CTS  see in your launchpad.asm file to find RTS pin.
+                            (not necessary if software XON/XOFF flow control)
+                           
     The interest of XON/XOFF flow control is to allow 3.75kV galvanic isolation of terminal input
     with SOIC8 Si8622EC|ISO7421E, or better yet, powered 5kV galvanic isolation with SOIC16 ISOW7821.
-    
-    Once the Fast Forth kernel is loaded in the target FRAM memory, you add assembly code or 
-    FORTH code, or both, by downloading your source files that the embedded FastForth interprets and
-    compiles.
+
+    Once FastForth is loaded in the target FRAM memory, you add assembly code or FORTH code, or both,
+    by downloading your source files that the embedded FastForth interprets and compiles.
     Beforehand, the preprocessor GEMA, by means of a \config\gema\target.pat file, will have translated
-    your generic source file.f in a targeted source file.4th. This allows the embedded assembler to use
-    symbolic addresses for all peripheral registers without having to declare them with FORTH words.
+    your generic source file.f in a targeted source file.4th, allowing you to use
+    symbolic addresses for all peripheral registers without having to declare them via FORTH words.
     A set of .bat files in \MSP430-FORTH folder is furnished to do all this automatically.
     
     If you want to change the terminal baudrate on the fly (230400 bds up to 6 Mbds),
@@ -57,19 +57,33 @@ With all kernel options, including extended_ASM and SD_Card driver, FastForth si
     And that the high limit of FORTH program memory is $FF80. 
 
     Finally, using the SCITE editor as IDE, all is ready to do everything from its "tools" menu.
-    Once the Forth kernel is programmed, say goodbye to owner's any DLL and FET dongle...
 
 What is new ?
 -------------
 
-V301
+V302
 
-    -584 bytes, Kernel+CondComp+Assembler is under 5.5 kb.
+    -646 bytes
+    Kernel + FIXPOINT input + DOUBLE input + :NONAME + Conditional Compilation + Assembler under 5 kB.
+   
+    the FORTH kernel is drastically reduced to 55 strutural words.
+    All others are moved in the \ADDON\ANS_COMPLEMENT.asm file, 
+    the conditionnal compilation with the assembler allowing to reuse them on request.
    
+    Fixed:  QNUMBER, 
+            ACCEPT (XON/XOFF TERMINAL with MSP430FR2xxx).
+    Modified: [ELSE].
+    
+    FF_SPECS.f displays FastForth environment.
+
+V301
+
+    -584 bytes, Kernel + Conditional Compilation + Assembler under 5.5 kb.
+    
     the FORTH kernel is drastically reduced to 82 words, just what the operating system needs.
     All others are moved in the \ADDON\ANS_COMPLEMENT.asm file, the conditionnal compilation
     allowing you to use them on request.
-   
+    
     Taking into account the new TI launchpad LP_MSP430FR2476.
     
     Fixed: :NONAME (now aligned), LOAD" (no more crash on error).
@@ -80,8 +94,6 @@ V301
     By rewriting the defered word SLEEP, we can easily disable the TERMINAL_INPUT interrupt.
     See BACKGROUND, START and STOP  in \MSP430-FORTH\RC5toLCD.f.
 
-
-
 V300
 
     -4 bytes.
index 83146f9..f8689af 100644 (file)
@@ -249,7 +249,7 @@ statusbar.text.4=\
 $(FileNameExt) : $(FileDate) \97 $(FileTime) | $(FileAttr)
 
 if PLAT_WIN
-       command.scite.help=C:\Program Files\SRWare Iron\iron.exe "C:\Program Files\SciTE\SciTEDoc.html"
+       command.scite.help="https://www.scintilla.org/SciTEDoc.html"
        command.scite.help.subsystem=2
 if PLAT_GTK
        command.print.*=a2ps "$(FileNameExt)"
index 6408f17..6930a31 100644 (file)
 @1800
-10 00 08 00 A1 F7 80 3E 05 00 18 00 66 DA D0 D0
-2D 01 6B 30 B6 C6 C8 C6
+10 00 08 00 A1 F7 80 3E 05 00 18 00 04 D8 88 CE
+2E 01 6B 30 06 C5 18 C5 D4 CF
 @C400
-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 3A 41 0D 12 0D 4A
-30 4D 00 00 04 45 58 49 54 00 3D 41 30 4D 24 C4
-03 44 55 50 2F 83 8F 4E 00 00 30 4D 00 00 04 32
-44 55 50 00 8F 4E FE FF AF 4F FC FF 2F 82 30 4D
-00 00 04 3F 44 55 50 00 0E 93 EC 23 30 4D 30 C4
-04 44 52 4F 50 00 3E 4F 30 4D 2F 53 30 4D 3E C4
-04 53 57 41 50 00 2A 4F 8F 4E 00 00 0E 4A 30 4D
-52 C4 02 3E 52 00 0E 12 3E 4F 30 4D 70 C4 02 52
-3E 00 2F 83 8F 4E 00 00 3E 41 30 4D 60 C4 05 44
-45 50 54 48 8F 4E FE FF 3E 40 80 20 0E 8F 0E 11
-2F 83 30 4D 00 00 01 2D 3E 8F 3E E3 1E 53 30 4D
-00 00 02 31 2B 00 1E 53 30 4D C2 C4 02 31 2D 00
-1E 83 30 4D 3E F3 06 34 BF E3 00 00 3E E3 9F 53
-00 00 0E 63 30 4D 00 00 01 40 2E 4E 30 4D E8 C4
-01 21 BE 4F 00 00 3E 4F 30 4D CC C4 02 30 3D 00
-1E 83 0E 7E 30 4D FC C4 02 30 3C 00 0E 5E 0E 7E
-3E E3 30 4D 00 00 01 3D 3E 8F FA 27 0E F3 30 4D
-00 00 02 55 3C 00 3E 8F F9 2B 01 24 3E 43 30 4D
-16 C5 02 3C 23 00 B2 40 B2 21 B2 21 30 4D 0B 4E
+30 40 04 C4 B0 12 06 C5 12 D2 0A 18 F9 3F 39 40
+26 00 29 83 B9 40 6E D0 DA FF FB 23 B2 40 68 C5
+E4 FF 30 41 2F 83 8F 4E 00 00 3E 4D 30 4D 2F 82
+8F 4E 02 00 7E 4D 8F 4D 00 00 0D 5E 1D B3 0D 63
+30 4D 0E 93 3E 4F 05 24 2D 4D 30 4D 0E 93 3E 4F
+FB 27 2D 53 30 4D 39 40 00 80 39 8F 08 4E 3E 4F
+08 59 19 15 30 4D 81 5E 00 00 3E 4F 32 B0 00 01
+EB 27 21 52 2D 53 30 4D 91 53 00 00 F7 3F 0B 4E
 1C 4F 02 00 2E 4F 0A 43 34 40 20 00 0E 93 04 20
 04 11 0E 4C 0C 43 09 43 0A 9B 01 28 0A 8B 09 69
 08 68 14 83 07 30 0C 5C 0E 6E 0A 6A F5 2B 0A 8B
-12 D3 F5 3F 34 40 00 C4 8F 4A 02 00 8F 49 00 00
-0E 48 30 41 00 00 01 23 1B 42 DC 21 2C 4F 2F 83
-B0 12 46 C5 BF 4F 00 00 7A 90 0A 00 02 28 7A 50
-07 00 7A 50 30 00 92 83 B2 21 18 42 B2 21 C8 4A
-00 00 30 4D 86 C5 02 23 53 00 87 12 88 C5 C0 C5
-2D 83 09 93 E3 23 0E 93 E1 23 3D 41 30 4D B6 C5
-02 23 3E 00 9F 42 B2 21 00 00 3E 40 B2 21 2E 8F
-30 4D 00 00 04 48 4F 4C 44 00 0A 4E 3E 4F DB 3F
-8E C4 04 53 49 47 4E 00 0E 93 3E 4F 3A 40 2D 00
-D2 33 30 4D 87 12 36 C5 34 C4 86 C4 D4 C4 BA C5
-92 C4 F8 C5 D4 C5 D6 C7 42 CB 82 C7 2A C4 22 C5
-02 55 2E 00 08 43 2F 83 8F 4E 00 00 0E 48 EA 3F
-00 00 01 2E 0E 93 F6 37 38 43 F5 3F 2D 4D 30 4D
-0E 93 3E 4F FB 27 2D 53 30 4D 0E 93 3E 4F F6 23
-2D 53 30 4D 39 40 00 80 39 8F 08 4E 3E 4F 08 59
-19 15 30 4D 81 5E 00 00 3E 4F 32 B0 00 01 E6 27
-2D 53 21 52 30 4D 91 53 00 00 F7 3F E4 C5 01 49
-2F 83 8F 4E 00 00 2E 41 1E 81 02 00 30 4D 00 00
-03 4B 45 59 30 40 98 C6 18 42 0C 05 2F 83 8F 4E
-00 00 B0 12 B6 C6 92 B3 1C 05 FD 27 1E 42 0C 05
-B0 12 C8 C6 30 4D A2 B3 1C 05 FD 27 B2 40 11 00
-0E 05 E2 C2 22 02 30 41 B2 40 13 00 0E 05 E2 D2
-22 02 30 41 00 00 05 53 4C 45 45 50 30 40 E0 C6
-B0 12 B6 C6 12 D2 0A 18 F9 3F F0 C4 06 41 43 43
-45 50 54 00 3C 40 64 C7 3B 40 2E C7 2D 15 0A 4E
-2E 4F 0A 5E 3B 40 0D 00 3C 40 20 00 3D 40 58 C7
-92 B3 1C 05 05 24 18 42 0C 05 38 90 0A 00 CB 23
-21 53 3D 15 DB 3F 21 52 3A 17 58 42 0C 05 48 9C
-08 2C 48 9B C9 27 78 92 11 20 2E 9F 0F 24 1E 83
-05 3C 0E 9A 03 24 CE 48 00 00 1E 53 A2 B3 1C 05
-FD 27 82 48 0E 05 30 4D 5A C7 2D 83 92 B3 1C 05
-E4 23 FC 27 82 93 DE 21 02 24 92 53 DE 21 3E 8F
-3D 41 B2 40 18 00 0A 18 30 4D 9E C4 04 45 4D 49
-54 00 30 40 86 C7 08 4E 3E 4F E0 3F 3F 80 06 00
-8F 4E 04 00 3E 40 54 00 BF 40 3C 21 00 00 AF 4F
-02 00 A8 3F 7C C7 04 45 43 48 4F 00 B2 40 82 48
-52 C7 82 43 DE 21 30 4D 32 C6 06 4E 4F 45 43 48
-4F 00 B2 40 30 4D 52 C7 92 43 DE 21 30 4D 20 C6
-04 54 59 50 45 00 0E 93 0F 24 1E 15 3D 40 EC C7
-28 4F 7E 48 8F 48 00 00 2F 83 CB 3F EE C7 2D 83
-91 83 02 00 F5 23 1D 17 2F 53 3E 4F 30 4D D0 C5
-02 43 52 00 30 40 08 C8 87 12 1E C8 02 0D 0A 00
-D6 C7 2A C4 2F 83 8F 4E 00 00 3E 4D 30 4D 2F 82
-8F 4E 02 00 7E 4D 8F 4D 00 00 0D 5E 1D B3 0D 63
-30 4D F2 C5 82 53 22 00 82 43 B4 21 87 12 14 C8
-1E C8 B0 CA 14 C8 22 00 80 C8 4C C8 B2 40 20 00
-B4 21 6E 4E 1E 53 1E B3 82 6E C6 21 3D 41 3E 4F
-30 4D BA C7 82 2E 22 00 87 12 38 C8 14 C8 D6 C7
-B0 CA 2A C4 48 43 05 3C 00 00 04 57 4F 52 44 00
-48 4E 19 42 C0 21 1A 42 C2 21 09 5A 1A 52 C4 21
-09 9A 03 24 7E 9A FC 27 1A 83 4E F8 06 20 0E 4A
-1A 82 C2 21 82 4A C4 21 30 4D 18 42 C6 21 3B 40
-60 00 C8 4C 00 00 09 9A 0C 24 7C 4A 4E 9C 09 24
-18 53 4B 9C F6 2F 7C 90 7B 00 F3 2F 5C 82 B4 21
-F0 3F 1A 82 C2 21 82 4A C4 21 1E 42 C6 21 08 8E
-CE 48 00 00 30 4D 00 00 04 46 49 4E 44 00 2F 83
-0C 4E 65 4C 74 40 80 00 3B 40 CA 21 3E 4B 0E 93
-1E 24 58 4C 01 00 78 F0 1E 00 0E 58 2E 53 1E 4E
-FE FF 0E 93 F3 27 09 4E 78 49 48 C4 48 95 F7 23
-0A 4C FA 99 01 00 F3 23 1A 53 58 83 FA 23 19 B3
-09 63 0C 49 6A 4E 1E 43 4A 93 01 30 2E 83 8F 4C
-00 00 35 40 0E C4 34 40 00 C4 30 4D 82 C4 07 3E
-4E 55 4D 42 45 52 3C 4F 38 4F 29 4F 2F 82 1B 42
-DC 21 6A 4C 7A 80 30 00 7A 90 0A 00 05 28 7A 80
-07 00 7A 90 0A 00 12 28 0A 9B 22 C3 0F 2C 82 49
-D0 04 82 48 D2 04 82 4B C8 04 19 42 E4 04 18 42
-E6 04 09 5A 08 63 1C 53 1E 83 E3 23 8F 4C 00 00
-8F 48 02 00 8F 49 04 00 30 4D 32 C0 00 02 1B 42
-DC 21 0C 43 2D 15 3D 40 F4 C9 09 43 08 43 3F 82
-8F 4E 06 00 0C 4E 7E 4C 6A 4C 7A 90 2D 00 04 28
-C9 23 B1 43 02 00 DF 3F 2B 43 7A 80 25 00 07 24
-3B 52 6A 53 04 24 3B 40 10 00 5A 83 BA 23 1C 53
-1E 83 EA 3F F6 C9 2F 24 2D 83 7A 90 28 00 CB 27
-32 D0 00 02 7A 90 F7 00 C6 27 7A 90 F5 00 23 20
-0A 4E 09 43 8F 49 02 00 5A 83 09 4A 09 5C 69 49
-79 80 30 00 79 90 0A 00 05 28 79 80 07 00 79 90
-0A 00 0A 28 09 9B 08 2C 8F 49 00 00 0E 4B 2C 15
-B0 12 3E C5 2A 17 E6 3F 9F 4F 04 00 02 00 AF 4F
-04 00 0E 4A 4E 93 2B 17 0E 4C 82 4B DC 21 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 7E C6 04 48 45 52 45 00
-2F 83 8F 4E 00 00 1E 42 C6 21 30 4D B6 C4 01 2C
-1A 42 C6 21 8A 4E 00 00 A2 53 C6 21 3E 4F 30 4D
-EC C6 05 41 4C 4C 4F 54 82 5E C6 21 3E 4F 30 4D
-A6 C7 07 45 58 45 43 55 54 45 0A 4E 3E 4F 00 4A
-AE CA 87 4C 49 54 45 52 41 4C 82 93 BE 21 0C 24
-1A 42 C6 21 A2 52 C6 21 BA 40 14 C8 00 00 8A 4E
-02 00 3E 4F 32 B0 00 02 32 C0 00 02 06 24 19 4A
-02 00 8A 4E 02 00 0E 49 EB 3F 30 4D 00 C8 05 43
-4F 55 4E 54 2F 83 1E 53 8F 4E 00 00 5E 4E FF FF
-30 4D 82 4E C0 21 B2 4F C2 21 3E 4F 82 43 C4 21
-30 4D 85 12 20 00 87 12 32 CB 42 CB 80 C8 50 CB
-3D 40 58 CB CC 22 82 3E 5A CB 0A 4E 3E 4F 3D 40
-70 CB 23 27 3D 40 4A CB 1A E2 BE 21 A1 27 B5 23
-72 CB 3E 4F 3D 40 4A CB B8 23 DE 53 00 00 68 4E
-08 5E F8 40 3F 00 00 00 3D 40 26 CE CB 3F D2 CA
+12 D3 F5 3F 34 40 EC C4 8F 4A 02 00 8F 49 00 00
+0E 48 30 41 82 4E C0 21 B2 4F C2 21 3E 4F 82 43
+C4 21 30 4D 3F 80 06 00 8F 4E 04 00 3E 40 54 00
+BF 40 3C 21 00 00 AF 4F 02 00 24 3C 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 A2 B3 1C 05 FD 27 B2 40 11 00
+0E 05 E2 C2 22 02 30 41 A2 B3 1C 05 FD 27 B2 40
+13 00 0E 05 E2 D2 22 02 30 41 00 00 06 41 43 43
+45 50 54 00 3C 40 A6 C5 3B 40 70 C5 2D 15 0A 4E
+2E 4F 0A 5E 3B 40 0D 00 3C 40 20 00 3D 40 9A C5
+92 B3 1C 05 05 24 18 42 0C 05 38 90 0A 00 D3 23
+21 53 3D 15 30 40 00 C4 21 52 3A 17 58 42 0C 05
+48 9C 08 2C 48 9B D0 27 78 92 11 20 2E 9F 0F 24
+1E 83 05 3C 0E 9A 03 24 CE 48 00 00 1E 53 A2 B3
+1C 05 FD 27 82 48 0E 05 30 4D 9C C5 2D 83 92 B3
+1C 05 E4 23 FC 27 82 93 DE 21 02 24 92 53 DE 21
+3E 8F 3D 41 B2 40 18 00 0A 18 30 4D 00 00 04 45
+4D 49 54 00 30 40 C8 C5 08 4E 3E 4F E0 3F BE C5
+04 45 43 48 4F 00 B2 40 82 48 94 C5 82 43 DE 21
+30 4D 00 00 06 4E 4F 45 43 48 4F 00 B2 40 30 4D
+94 C5 92 43 DE 21 30 4D 00 00 04 54 59 50 45 00
+0E 93 0F 24 1E 15 3D 40 16 C6 28 4F 7E 48 8F 48
+00 00 2F 83 D7 3F 18 C6 2D 83 91 83 02 00 F5 23
+1D 17 2F 53 3E 4F 30 4D 00 00 02 43 52 00 30 40
+32 C6 0D 12 87 12 2E C4 02 0D 0A 00 00 C6 26 C7
+00 00 03 4B 45 59 30 40 4A C6 18 42 0C 05 2F 83
+8F 4E 00 00 B0 12 06 C5 92 B3 1C 05 FD 27 1E 42
+0C 05 B0 12 18 C5 30 4D 2F 83 8F 4E 00 00 30 4D
+8F 4E FE FF AF 4F FC FF 2F 82 30 4D 0E 93 F4 23
+30 4D 2A 4F 8F 4E 00 00 0E 4A 30 4D 8F 4E FE FF
+3E 40 80 20 0E 8F 0E 11 2F 83 30 4D 2F 83 8F 4E
+00 00 3E 41 30 4D 3E 8F 3E E3 1E 53 30 4D BE 4F
+00 00 3E 4F 30 4D 1E 83 0E 7E 30 4D 0E 5E 0E 7E
+3E E3 30 4D 3E 8F 03 24 3E 43 01 2C 0E F3 30 4D
+00 00 02 3C 23 00 B2 40 B2 21 B2 21 30 4D 2A C6
+01 23 1B 42 DC 21 2C 4F 2F 83 B0 12 86 C4 BF 4F
+00 00 7A 90 0A 00 02 28 7A 50 07 00 7A 50 30 00
+92 83 B2 21 18 42 B2 21 C8 4A 00 00 30 4D E0 C6
+02 23 53 00 0D 12 87 12 E2 C6 1C C7 2D 83 09 93
+E2 23 0E 93 E0 23 3D 41 30 4D 10 C7 02 23 3E 00
+9F 42 B2 21 00 00 3E 40 B2 21 2E 8F 30 4D 00 00
+04 48 4F 4C 44 00 4A 4E 3E 4F DA 3F 00 00 04 53
+49 47 4E 00 0E 93 3E 4F 7A 40 2D 00 D1 33 30 4D
+FA C5 02 55 2E 00 08 43 2F 83 8F 4E 00 00 0E 48
+0D 12 0E 12 3E F3 06 34 BF E3 00 00 3E E3 9F 53
+00 00 0E 63 87 12 D6 C6 14 C7 9C C6 54 C7 30 C7
+00 C6 70 CA C4 C5 26 C7 E4 C5 01 2E 0E 93 E3 37
+38 43 E2 3F 4E C7 82 53 22 00 82 43 B4 21 0D 12
+87 12 24 C4 2E C4 F8 C9 24 C4 22 00 F2 C7 C0 C7
+B2 40 20 00 B4 21 6E 4E 1E 53 1E B3 82 6E C6 21
+3D 41 3E 4F 30 4D 9A C7 82 2E 22 00 0D 12 87 12
+AA C7 24 C4 00 C6 F8 C9 26 C7 00 00 04 57 4F 52
+44 00 3C 40 C0 21 39 4C 3A 4C 09 5A 3A 5C 28 4C
+09 9A 15 24 7E 9A FC 27 1A 83 3B 40 60 00 C8 4C
+00 00 09 9A 0C 24 7C 4A 4E 9C 09 24 18 53 4B 9C
+F6 2F 7C 90 7B 00 F3 2F 5C 82 B4 21 F0 3F 1A 82
+C2 21 82 4A C4 21 1E 42 C6 21 08 8E CE 48 00 00
+30 4D 00 00 04 46 49 4E 44 00 2F 83 0C 4E 65 4C
+74 40 80 00 3B 40 CA 21 3E 4B 0E 93 1E 24 58 4C
+01 00 78 F0 1E 00 0E 58 2E 53 1E 4E FE FF 0E 93
+F3 27 09 4E 78 49 48 C4 48 95 F7 23 0A 4C FA 99
+01 00 F3 23 1A 53 58 83 FA 23 19 B3 09 63 0C 49
+6A 4E 1E 43 4A 93 01 30 2E 83 8F 4C 00 00 35 40
+FA C4 34 40 EC C4 30 4D 00 00 07 3E 4E 55 4D 42
+45 52 3C 4F 38 4F 29 4F 2F 82 1B 42 DC 21 6A 4C
+7A 80 30 00 7A 90 0A 00 05 28 7A 80 07 00 7A 90
+0A 00 12 28 0A 9B 22 C3 0F 2C 82 49 D0 04 82 48
+D2 04 82 4B C8 04 19 42 E4 04 18 42 E6 04 09 5A
+08 63 1C 53 1E 83 E3 23 8F 4C 00 00 8F 48 02 00
+8F 49 04 00 30 4D 32 C0 00 02 1B 42 DC 21 0C 43
+2D 15 3D 40 50 C9 09 43 08 43 3F 82 8F 4E 06 00
+0C 4E 7E 4C 6A 4C 7A 90 2D 00 04 28 C9 23 B1 43
+02 00 0B 3C 2B 43 7A 80 25 00 07 24 3B 52 6A 53
+04 24 3B 40 10 00 5A 83 BA 23 1C 53 1E 83 EA 3F
+52 C9 2F 24 2D 83 7A 90 28 00 CB 27 32 D0 00 02
+7A 90 F7 00 C6 27 7A 90 F5 00 23 20 0A 4E 09 43
+8F 49 02 00 5A 83 09 4A 09 5C 69 49 79 80 30 00
+79 90 0A 00 05 28 79 80 07 00 79 90 0A 00 0A 28
+09 9B 08 2C 8F 49 00 00 0E 4B 2C 15 B0 12 7E C4
+2A 17 E6 3F 9F 4F 04 00 02 00 AF 4F 04 00 0E 4A
+4E 93 2B 17 0E 4C 82 4B DC 21 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 00 00 01 2C 1A 42 C6 21 8A 4E 00 00
+A2 53 C6 21 3E 4F 30 4D 2C C5 05 41 4C 4C 4F 54
+82 5E C6 21 3E 4F 30 4D 0A 4E 3E 4F 00 4A F6 C9
+87 4C 49 54 45 52 41 4C 82 93 BE 21 0C 24 1A 42
+C6 21 A2 52 C6 21 BA 40 24 C4 00 00 8A 4E 02 00
+3E 4F 32 B0 00 02 32 C0 00 02 06 24 19 4A 02 00
+8A 4E 02 00 0E 49 EB 3F 30 4D 2C C7 05 43 4F 55
+4E 54 2F 83 1E 53 8F 4E 00 00 5E 4E FF FF 30 4D
+85 12 20 00 0D 12 87 12 C4 C4 70 CA F2 C7 80 CA
+3D 40 88 CA E2 22 A4 26 8A CA 0A 4E 3E 4F 3D 40
+A0 CA 39 27 3D 40 7A CA 1A E2 BE 21 BD 23 AC 27
+A2 CA 3E 4F 3D 40 7A CA BF 23 DE 53 00 00 68 4E
+08 5E F8 40 3F 00 00 00 3D 40 20 CD D2 3F D0 C5
 08 45 56 41 4C 55 41 54 45 00 39 40 C0 21 3C 49
-3B 49 3A 49 3D 15 B0 12 2A C4 46 CB AE CB B2 41
-C4 21 B2 41 C2 21 B2 41 C0 21 3D 41 30 4D 85 12
-BE 21 08 C5 04 51 55 49 54 00 82 43 08 18 31 40
-E0 20 B2 40 00 20 00 20 82 43 BE 21 B0 12 2A C4
-04 C8 8C C7 42 CB 82 C7 46 CB A4 C4 0C C5 1E C8
-0C 73 74 61 63 6B 20 65 6D 70 74 79 21 00 40 CC
-14 C8 30 FF A0 CA 26 C5 1E C8 0A 46 52 41 4D 20
-66 75 6C 6C 21 00 40 CC 3C C6 E0 CB C2 CA 05 41
-42 4F 52 54 3F 40 80 20 D0 3F 1E CC 86 41 42 4F
-52 54 22 00 87 12 38 C8 14 C8 40 CC B0 CA 2A C4
-8F 93 02 00 03 20 2F 52 3E 4F 30 4D B0 12 C8 D1
-B0 12 B6 C6 92 C3 1C 05 38 40 A0 AA 39 42 03 43
-19 83 FD 23 18 83 FA 23 92 B3 1C 05 F3 23 87 12
-42 D1 14 C8 DE 21 EA C4 AC C7 1E C8 04 1B 5B 37
-6D 00 D6 C7 58 C4 40 C6 9A CC 04 C8 1E C8 05 6C
-69 6E 65 3A D6 C7 D0 C4 24 C6 D6 C7 1E C8 04 1B
-5B 30 6D 00 D6 C7 24 CC 00 00 83 5B 27 5D 87 12
-C0 CC 14 C8 14 C8 B0 CA B0 CA 2A C4 E8 C8 01 27
-87 12 42 CB 80 C8 EE C8 40 C6 CE CC 2A C4 7A CB
-32 C5 81 5C 92 42 C0 21 C4 21 30 4D AA CC 81 5B
-82 43 BE 21 30 4D D2 CC 01 5D B2 43 BE 21 30 4D
-BE 4F 02 00 3E 4F 30 4D 9A CA 82 49 53 00 87 12
-BE CB EA C4 40 C6 12 CD AE CC 14 C8 F0 CC B0 CA
-2A C4 C0 CC F0 CC 2A C4 FA CC 09 49 4D 4D 45 44
-49 41 54 45 1A 42 B6 21 FA D0 80 00 00 00 30 4D
-C4 CB 88 50 4F 53 54 50 4F 4E 45 00 87 12 42 CB
-80 C8 EE C8 58 C4 40 C6 CE CC 0C C5 40 C6 5C CD
-14 C8 14 C8 B0 CA B0 CA 14 C8 B0 CA B0 CA 2A C4
-DE CC 81 3B 82 93 BE 21 B5 27 87 12 14 C8 2A C4
-B0 CA FA CD E0 CC 2A C4 62 CD 07 3A 4E 4F 4E 41
-4D 45 30 12 A0 CD 2F 83 8F 4E 00 00 1E 42 C6 21
-1E B3 0E 63 0A 4E 39 40 00 02 38 40 02 02 21 3C
-BA 40 87 12 FC FF A2 83 C6 21 B2 43 BE 21 30 4D
-7A CD 01 3A 30 12 A0 CD 92 B3 C6 21 A2 63 C6 21
-87 12 42 CB 80 C8 C8 CD 3D 41 08 4E 7A 4E 5A D3
-5A 53 0A 58 19 42 DA 21 6E 4E 3E F0 1E 00 09 5E
-3E 4F 82 48 B6 21 82 49 B8 21 82 4A BA 21 82 4F
-BC 21 2A 52 82 4A C6 21 30 41 82 9F BC 21 09 20
-18 42 B6 21 19 42 B8 21 A8 49 FE FF 89 48 00 00
-30 4D 87 12 1E C8 0F 73 74 61 63 6B 20 6D 69 73
-6D 61 74 63 68 21 4C CC 90 CB 05 44 45 46 45 52
-B0 12 B8 CD BA 40 30 40 FC FF BA 40 AE CD FE FF
-E3 3F 1E CB 06 43 52 45 41 54 45 00 B0 12 B8 CD
-BA 40 85 12 FC FF 8A 4A FE FF D6 3F 2A CE 05 44
-4F 45 53 3E 1A 42 BA 21 BA 40 84 12 00 00 8A 4D
-02 00 3D 41 30 4D 4E C9 05 3E 42 4F 44 59 2E 52
-30 4D 44 CE 04 43 4F 44 45 00 B0 12 B8 CD A2 82
-C6 21 87 12 D2 D0 AC D0 2A C4 84 CE 07 43 4F 44
-45 4E 4E 4D B0 12 86 CD F2 3F 00 00 07 45 4E 44
-43 4F 44 45 87 12 E0 D0 FA CD 2A C4 2C CC 03 41
-53 4D B2 40 B0 D0 DA 21 E0 3F AC CE 06 45 4E 44
-41 53 4D 00 87 12 B4 CE F4 D0 2A C4 00 00 05 43
-4F 4C 4F 4E 1A 42 C6 21 BA 40 87 12 00 00 A2 53
-C6 21 B2 43 BE 21 30 40 E0 D0 00 00 05 4C 4F 32
-48 49 1A 42 C6 21 BA 40 B0 12 00 00 BA 40 2A C4
-02 00 A2 52 C6 21 ED 3F 1A CD 85 48 49 32 4C 4F
-87 12 A0 CA 4A CF B0 CA E0 CC D2 D0 AC D0 2A C4
-1A CF 82 49 46 00 2F 83 8F 4E 00 00 1E 42 C6 21
-A2 52 C6 21 BE 40 40 C6 00 00 2E 53 30 4D 5E CE
-84 45 4C 53 45 00 A2 52 C6 21 1A 42 C6 21 BA 40
-3C C6 FC FF 8E 4A 00 00 2A 83 0E 4A 30 4D D0 C7
-84 54 48 45 4E 00 9E 42 C6 21 00 00 3E 4F 30 4D
-9C CE 85 42 45 47 49 4E 30 40 A0 CA 70 CF 85 55
-4E 54 49 4C 39 40 40 C6 A2 52 C6 21 1A 42 C6 21
-8A 49 FC FF 8A 4E FE FF 3E 4F 30 4D BE CE 85 41
-47 41 49 4E 39 40 3C C6 EF 3F 7A C8 85 57 48 49
-4C 45 87 12 36 CF 76 C4 2A C4 34 C8 86 52 45 50
-45 41 54 00 87 12 B4 CF 76 CF 2A C4 50 CF 82 44
-4F 00 2F 83 8F 4E 00 00 A2 53 C6 21 1E 42 C6 21
-BE 40 54 C6 FE FF A2 53 00 20 1A 42 00 20 8A 43
-00 00 30 4D E2 CA 84 4C 4F 4F 50 00 39 40 76 C6
-A2 52 C6 21 1A 42 C6 21 8A 49 FC FF 8A 4E FE FF
-1E 42 00 20 A2 83 00 20 2E 4E 0E 93 03 24 8E 4A
-00 00 F6 3F 3E 4F 30 4D 90 C6 85 2B 4C 4F 4F 50
-39 40 64 C6 E5 3F 06 D0 04 4D 4F 56 45 00 0A 4E
-38 4F 39 4F 3E 4F 0A 93 11 24 08 99 0F 24 06 2C
-F8 49 00 00 18 53 1A 83 FB 23 30 4D 08 5A 09 5A
-19 83 18 83 E8 49 00 00 1A 83 FA 23 30 4D 14 C8
-CA 21 F2 C4 2A C4 84 12 7E D0 AE CF 4C D3 DE CF
-BE CC 32 CF 3A D0 60 D4 64 C8 66 D1 80 D1 8E CF
-00 D2 00 00 32 D4 E8 CC 78 CE 00 00 84 12 7E D0
-7E D9 E0 D9 32 D9 54 DA F8 D8 00 00 28 D6 00 00
-EE D8 9E D9 50 D9 8E D9 38 D7 00 00 00 00 30 DA
-AA D0 3A 40 0C 00 39 40 CA 21 38 40 CC 21 C6 3F
-3A 40 0E 00 39 40 CC 21 38 40 CA 21 B9 3F 82 43
-CC 21 30 4D 92 42 CA 21 DA 21 30 4D 86 D0 EE D0
-F4 D0 04 D1 3A 4E 82 4A C8 21 2E 4E 82 4E C6 21
-3D 40 10 00 09 4A 08 49 29 83 18 48 FE FF 0E 98
-FC 2B 89 48 00 00 1D 83 F6 23 2A 4A 0A 93 F0 23
-3E 4F 3D 41 30 4D 32 CD 09 50 57 52 5F 53 54 41
-54 45 84 12 FC D0 D0 D0 66 DA CC CF 09 52 53 54
-5F 53 54 41 54 45 92 42 0E 18 46 D1 92 42 0C 18
-48 D1 EF 3F 38 D1 08 50 57 52 5F 48 45 52 45 00
-92 42 C8 21 46 D1 92 42 C6 21 48 D1 30 4D 4C D1
-08 52 53 54 5F 48 45 52 45 00 92 42 C8 21 0E 18
-92 42 C6 21 0C 18 EC 3F BC CF 04 57 49 50 45 00
-39 40 10 00 29 83 B9 43 80 FF FC 23 B2 40 E0 C6
-DE C6 B2 40 0A D2 08 D2 B2 40 D0 D0 0E 18 B2 40
-66 DA 0C 18 30 12 56 D1 B2 40 86 C7 84 C7 B2 40
-08 C8 06 C8 B2 40 98 C6 96 C6 B2 40 18 00 0A 18
-37 40 1A C4 36 40 92 C4 35 40 0E C4 34 40 00 C4
-B2 40 0A 00 DC 21 B2 40 20 00 B4 21 30 41 9A D1
-04 57 41 52 4D 00 30 40 0A D2 3D 40 40 D2 92 C3
-30 01 1E 42 08 18 0E 93 12 24 F2 B0 10 00 00 02
-02 20 3E E3 1E 53 F2 D0 30 00 0A 02 3E 90 0A 00
-B7 27 3E 90 16 00 B4 2F 2E 93 83 27 8C 2F 30 4D
-1E C8 06 0D 1B 5B 37 6D 23 00 D6 C7 34 C6 1E C8
-19 46 61 73 74 46 6F 72 74 68 20 C2 A9 4A 2E 4D
-2E 54 68 6F 6F 72 65 6E 73 20 D6 C7 14 C8 30 FF
-A0 CA B8 C4 24 C6 1E C8 0A 62 79 74 65 73 20 66
-72 65 65 00 3C C6 9A CC 82 CF 04 43 4F 4C 44 00
-92 B3 0A 05 FD 23 B2 40 04 A5 20 01 40 D2 B2 40
-88 5A CC 01 B2 43 02 02 B2 D3 06 02 D2 43 24 02
-F2 D3 26 02 F2 40 FD 00 22 02 E2 D2 24 02 F2 40
-A5 00 A1 01 F2 40 10 00 A0 01 D2 43 A1 01 B2 40
-00 A5 60 01 B2 40 29 01 80 01 B2 40 0B 00 82 01
-B2 40 E9 01 84 01 39 40 00 01 B2 D0 10 00 86 01
-92 D2 5E 01 08 18 38 40 59 14 18 83 FE 23 19 83
-FA 23 39 40 00 10 29 83 89 43 00 20 FC 23 39 40
-26 00 29 83 B9 40 9E D2 DA FF FB 23 B2 40 26 C7
-E4 FF B2 40 81 00 00 05 92 42 02 18 06 05 92 42
-04 18 08 05 92 C3 00 05 92 D3 1A 05 3F 40 80 20
-31 40 E0 20 30 12 06 D2 48 3F 8A D2 07 43 4F 4D
-50 41 52 45 0C 4E 38 4F 3B 4F 39 4F 0E 4B 0E 5C
-0C 24 1B 83 07 30 1C 83 07 30 19 53 F9 98 FF FF
-F5 27 02 2C 3E 43 30 4D 1E 43 30 4D B2 CD 86 5B
-54 48 45 4E 5D 00 30 4D 7E D3 86 5B 45 4C 53 45
-5D 00 87 12 14 C8 00 00 C6 C4 42 CB 80 C8 24 CB
-34 C4 40 C6 F4 D3 44 C4 1E C8 06 5B 54 48 45 4E
-5D 00 54 D3 4A C6 C4 D3 F8 C7 D0 C4 58 C4 4A C6
-9A D3 2A C4 44 C4 1E C8 06 5B 45 4C 53 45 5D 00
-54 D3 4A C6 E2 D3 F8 C7 D0 C4 58 C4 4A C6 98 D3
-2A C4 1E C8 04 5B 49 46 5D 00 54 D3 4A C6 9A D3
-3C C6 98 D3 F8 C7 1E C8 05 0D 0A 6B 6F 20 D6 C7
-8C C7 32 CB 3C C6 9A D3 8A D3 84 5B 49 46 5D 00
-0E 93 3E 4F BE 27 30 4D 0A D4 89 5B 44 45 46 49
-4E 45 44 5D 87 12 42 CB 80 C8 EE C8 6A C4 2A C4
-1A D4 8B 5B 55 4E 44 45 46 49 4E 45 44 5D 87 12
-42 CB 80 C8 EE C8 6A C4 00 C5 2A C4 4E D4 3D 41
-B2 4E 0E 18 A2 4E 0C 18 3E 4F 30 40 56 D1 48 D0
-06 4D 41 52 4B 45 52 00 B0 12 B8 CD BA 40 84 12
-FC FF BA 40 4C D4 FE FF 9A 42 C8 21 00 00 28 83
-8A 48 02 00 A2 52 C6 21 30 40 00 CE 1C 15 B0 12
-2A C4 80 C8 EE C8 4A C6 A2 D4 AA C9 40 C6 CE CC
-BC D4 A4 D4 39 4E 39 80 86 12 08 24 19 53 02 20
-2E 4E 04 3C 2E 53 19 53 01 24 2E 82 1B 17 30 41
-3E 40 28 00 B0 12 8C D4 19 42 C6 21 A2 53 C6 21
-89 4E 00 00 3E 40 29 00 1C 15 12 12 C4 21 92 53
-C4 21 B0 12 2A C4 80 C8 AA C9 40 C6 FA D4 F0 D4
-21 53 3E 90 10 00 7D 2D E1 2B FC D4 B2 41 C4 21
-DD 3F 87 12 42 CB 74 C8 0A D5 0C 43 1B 42 C6 21
-A2 53 C6 21 6A 4E 3E 4F 7A 90 23 00 27 20 92 53
-C4 21 B0 12 8C D4 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 C6 21 A2 53
-C6 21 89 4E 00 00 3E 4F 3D 41 30 4D 7A 90 26 00
-07 20 3C 40 10 02 92 53 C4 21 B0 12 8C D4 ED 3F
-7A 90 40 00 16 20 3C 40 20 00 92 53 C4 21 B0 12
-D8 D4 0C 20 3C 50 10 00 3E 40 2B 00 B0 12 D8 D4
-92 92 C0 21 C4 21 02 24 92 53 C4 21 8E 10 0C 5E
-DA 3F B0 12 D8 D4 FA 23 3C 50 10 00 B0 12 C0 D4
-EF 3F 0C 43 1B 42 C6 21 A2 53 C6 21 87 12 42 CB
-74 C8 D4 D5 FE 90 26 00 00 00 3E 40 20 00 03 20
-3C 50 82 00 C8 3F B0 12 D8 D4 E1 23 3C 50 80 00
-B0 12 C0 D4 DC 3F D6 C6 04 52 45 54 49 00 87 12
-14 C8 00 13 B0 CA 2A C4 14 C8 2C 00 02 D5 CC D5
-12 D6 09 4B 2E 4E 0E DC A4 3F FC CE 03 4D 4F 56
-84 12 08 D6 00 40 1C D6 05 4D 4F 56 2E 42 84 12
-08 D6 40 40 00 00 03 41 44 44 84 12 08 D6 00 50
-36 D6 05 41 44 44 2E 42 84 12 08 D6 40 50 42 D6
-04 41 44 44 43 00 84 12 08 D6 00 60 50 D6 06 41
-44 44 43 2E 42 00 84 12 08 D6 40 60 F8 D5 04 53
-55 42 43 00 84 12 08 D6 00 70 6E D6 06 53 55 42
-43 2E 42 00 84 12 08 D6 40 70 7C D6 03 53 55 42
-84 12 08 D6 00 80 8C D6 05 53 55 42 2E 42 84 12
-08 D6 40 80 DE CE 03 43 4D 50 84 12 08 D6 00 90
-A6 D6 05 43 4D 50 2E 42 84 12 08 D6 40 90 CC CE
-04 44 41 44 44 00 84 12 08 D6 00 A0 C0 D6 06 44
-41 44 44 2E 42 00 84 12 08 D6 40 A0 B2 D6 03 42
-49 54 84 12 08 D6 00 B0 DE D6 05 42 49 54 2E 42
-84 12 08 D6 40 B0 EA D6 03 42 49 43 84 12 08 D6
-00 C0 F8 D6 05 42 49 43 2E 42 84 12 08 D6 40 C0
-04 D7 03 42 49 53 84 12 08 D6 00 D0 12 D7 05 42
-49 53 2E 42 84 12 08 D6 40 D0 00 00 03 58 4F 52
-84 12 08 D6 00 E0 2C D7 05 58 4F 52 2E 42 84 12
-08 D6 40 E0 5E D6 03 41 4E 44 84 12 08 D6 00 F0
-46 D7 05 41 4E 44 2E 42 84 12 08 D6 40 F0 42 CB
-02 D5 64 D7 0A 4C 3C F0 70 00 8A 10 3A F0 0F 00
-0C DA 4F 3F 98 D6 03 52 52 43 84 12 5E D7 00 10
-76 D7 05 52 52 43 2E 42 84 12 5E D7 40 10 82 D7
-04 53 57 50 42 00 84 12 5E D7 80 10 90 D7 03 52
-52 41 84 12 5E D7 00 11 9E D7 05 52 52 41 2E 42
-84 12 5E D7 40 11 AA D7 03 53 58 54 84 12 5E D7
-80 11 00 00 04 50 55 53 48 00 84 12 5E D7 00 12
-C4 D7 06 50 55 53 48 2E 42 00 84 12 5E D7 40 12
-1E D7 04 43 41 4C 4C 00 84 12 5E D7 80 12 1A 53
-0E 4A 87 12 34 C6 1E C8 0D 6F 75 74 20 6F 66 20
-62 6F 75 6E 64 73 4C CC 42 CB 74 C8 0E D8 92 53
-C4 21 3E 40 2C 00 B0 12 2A C4 80 C8 AA C9 40 C6
-CE CC C2 D5 26 D8 0A 4E 3E 4F 1A 83 E0 33 29 4E
-59 0E 0A 28 08 4C 59 0A 01 28 0C 8A 08 8A 38 90
-10 00 D5 2F 5A 0E 94 3F 2A 92 D1 2F 8A 10 5A 06
-8F 3F B8 D7 04 52 52 43 4D 00 84 12 08 D8 50 00
-54 D8 04 52 52 41 4D 00 84 12 08 D8 50 01 62 D8
-04 52 4C 41 4D 00 84 12 08 D8 50 02 70 D8 04 52
-52 55 4D 00 84 12 08 D8 50 03 D2 D7 05 50 55 53
-48 4D 84 12 08 D8 00 15 8C D8 04 50 4F 50 4D 00
-84 12 08 D8 00 17 7E D8 03 53 3E 3D 85 12 00 38
-A8 D8 02 53 3C 00 85 12 00 34 9A D8 03 30 3E 3D
-85 12 00 30 BC D8 02 30 3C 00 85 12 00 30 00 00
-02 55 3C 00 85 12 00 2C D0 D8 03 55 3E 3D 85 12
-00 28 C6 D8 03 30 3C 3E 85 12 00 24 E4 D8 02 30
-3D 00 85 12 00 20 00 00 02 49 46 00 1A 42 C6 21
-8A 4E 00 00 A2 53 C6 21 0E 4A 30 4D DA D8 04 54
-48 45 4E 00 1A 42 C6 21 08 4E 3E 4F 09 48 29 53
-0A 89 0A 11 3A 90 00 02 63 2F 88 DA 00 00 30 4D
-CE D6 04 45 4C 53 45 00 1A 42 C6 21 BA 40 00 3C
-00 00 A2 53 C6 21 2F 83 8F 4A 00 00 E3 3F 0E D9
-05 55 4E 54 49 4C 3A 4F 08 4E 3E 4F 19 42 C6 21
-2A 83 0A 89 0A 11 3A 90 00 FE 42 3B 3A F0 FF 03
-08 DA 89 48 00 00 A2 53 C6 21 30 4D 52 D7 05 41
-47 41 49 4E 0A 4E 38 40 00 3C E7 3F 00 00 05 57
-48 49 4C 45 87 12 FC D8 76 C4 2A C4 B2 D8 06 52
-45 50 45 41 54 00 87 12 84 D9 14 D9 2A C4 B0 D9
-3D 41 08 4E 3E 4F 2A 48 B2 92 C4 21 CD 2F 98 42
-C6 21 00 00 30 4D E2 D7 03 42 57 31 84 12 AE D9
-00 00 C8 D9 03 42 57 32 84 12 AE D9 00 00 D4 D9
-03 42 57 33 84 12 AE D9 00 00 EC D9 3D 41 1A 42
-C6 21 28 4E B2 92 C4 21 90 2B BA 4F 00 00 A2 53
-C6 21 8E 4A 00 00 3E 4F 30 4D 00 00 03 46 57 31
-84 12 EA D9 00 00 0C DA 03 46 57 32 84 12 EA D9
-00 00 18 DA 03 46 57 33 84 12 EA D9 00 00 00 00
-05 3F 47 4F 54 4F 3E 90 00 30 07 24 3E E0 00 04
-3E B0 00 10 02 24 3E E0 00 08 87 12 C0 CC DA CA
-2A C4 24 DA 04 47 4F 54 4F 00 2F 83 8F 4E 00 00
-3E 40 00 3C F2 3F
+3B 49 3A 49 3D 15 87 12 74 CA DC CA B2 41 C4 21
+B2 41 C2 21 B2 41 C0 21 3D 41 30 4D 85 12 BE 21
+00 00 04 51 55 49 54 00 82 43 08 18 31 40 E0 20
+B2 40 00 20 00 20 82 43 BE 21 87 12 2E C6 D4 C4
+70 CA C4 C5 74 CA 8C C6 BC C6 2E C4 0C 73 74 61
+63 6B 20 65 6D 70 74 79 21 00 6E CB 24 C4 40 FF
+2A CE C4 C6 2E C4 0A 46 52 41 4D 20 66 75 6C 6C
+21 00 6E CB 48 C4 0C CB 0A CA 05 41 42 4F 52 54
+3F 40 80 20 D1 3F 4A CB 86 41 42 4F 52 54 22 00
+0D 12 87 12 AA C7 24 C4 6E CB F8 C9 26 C7 8F 93
+02 00 03 20 2F 52 3E 4F 30 4D B0 12 96 CF B0 12
+06 C5 92 C3 1C 05 18 42 06 18 39 40 20 00 19 83
+FE 23 18 83 FA 23 92 B3 1C 05 F3 23 0D 12 87 12
+10 CF 24 C4 DE 21 02 C5 D6 C5 2E C4 04 1B 5B 37
+6D 00 00 C6 7C C6 4C C4 C8 CB 2E C6 2E C4 05 6C
+69 6E 65 3A 00 C6 66 C7 00 C6 2E C4 04 1B 5B 30
+6D 00 00 C6 50 CB 00 00 83 5B 27 5D 0D 12 87 12
+F0 CB 24 C4 24 C4 F8 C9 F8 C9 26 C7 44 C8 01 27
+0D 12 87 12 70 CA F2 C7 4A C8 4C C4 00 CC 26 C7
+AA CA D2 C6 81 5C 92 42 C0 21 C4 21 30 4D D8 CB
+81 5B 82 43 BE 21 30 4D 04 CC 01 5D B2 43 BE 21
+30 4D F2 CA 88 50 4F 53 54 50 4F 4E 45 00 0D 12
+87 12 70 CA F2 C7 4A C8 7C C6 4C C4 00 CC BC C6
+4C C4 50 CC 24 C4 24 C4 F8 C9 F8 C9 24 C4 F8 C9
+F8 C9 26 C7 40 C7 09 49 4D 4D 45 44 49 41 54 45
+1A 42 B6 21 FA D0 80 00 00 00 30 4D 10 CC 01 3A
+30 12 B8 CC 92 B3 C6 21 A2 63 C6 21 0D 12 87 12
+70 CA F2 C7 86 CC 3D 41 08 4E 7A 4E 5A D3 5A 53
+0A 58 19 42 DA 21 6E 4E 3E F0 1E 00 09 5E 3E 4F
+82 48 B6 21 82 49 B8 21 82 4A BA 21 82 4F BC 21
+2A 52 82 4A C6 21 30 41 BA 40 0D 12 FC FF BA 40
+87 12 FE FF B2 43 BE 21 30 4D 6E CC 07 3A 4E 4F
+4E 41 4D 45 30 12 B8 CC 2F 83 8F 4E 00 00 1E 42
+C6 21 1E B3 0E 63 0A 4E 39 40 10 02 38 40 12 02
+D7 3F 82 9F BC 21 09 20 18 42 B6 21 19 42 B8 21
+A8 49 FE FF 89 48 00 00 30 4D 0D 12 87 12 2E C4
+0F 73 74 61 63 6B 20 6D 69 73 6D 61 74 63 68 21
+7A CB CC CC 81 3B 82 93 BE 21 6D 27 0D 12 87 12
+24 C4 26 C7 F8 C9 F2 CC 12 CC 26 C7 5C CA 06 43
+52 45 41 54 45 00 B0 12 74 CC BA 40 85 12 FC FF
+8A 4A FE FF D5 3F C0 CA 05 44 4F 45 53 3E 1A 42
+BA 21 BA 40 84 12 00 00 8A 4D 02 00 3D 41 30 4D
+3E CD 04 43 4F 44 45 00 B0 12 74 CC A2 82 C6 21
+0D 12 87 12 8A CE 64 CE 26 C7 72 CD 07 43 4F 44
+45 4E 4E 4D 30 12 7C CD 9F 3F 00 00 07 45 4E 44
+43 4F 44 45 0D 12 87 12 F2 CC A4 CE 26 C7 58 CB
+03 41 53 4D B2 40 68 CE DA 21 DE 3F 9C CD 06 45
+4E 44 41 53 4D 00 0D 12 87 12 A4 CD C2 CE 26 C7
+00 00 05 43 4F 4C 4F 4E 1A 42 C6 21 BA 40 0D 12
+00 00 BA 40 87 12 02 00 A2 52 C6 21 B2 43 BE 21
+30 40 A4 CE 00 00 05 4C 4F 32 48 49 A2 83 C6 21
+1A 42 C6 21 EE 3F 56 CC 85 48 49 32 4C 4F 0D 12
+87 12 2A CE 1E CE F8 C9 12 CC 80 CD 26 C7 2E 53
+30 4D 8C CD 85 42 45 47 49 4E 2F 83 8F 4E 00 00
+1E 42 C6 21 30 4D 24 C4 CA 21 AE C6 26 C7 84 12
+36 CE B0 CD 5C D0 58 CD EE CB 08 CE 42 C6 20 CA
+D8 C7 34 CF 4E CF 62 C7 CE CF 00 00 E4 D1 1A CC
+AA C8 00 00 84 12 36 CE 16 D7 7C D7 CA D6 CC D7
+90 D6 00 00 C0 D3 00 00 86 D6 38 D7 E8 D6 26 D7
+D0 D4 00 00 00 00 E8 D7 62 CE 3A 40 0C 00 39 40
+D6 21 08 49 28 53 19 83 18 83 E8 49 00 00 1A 83
+FA 23 30 4D 3A 40 0E 00 38 40 CA 21 09 48 29 53
+F8 49 00 00 18 53 1A 83 FB 23 30 4D 82 43 CC 21
+30 4D 92 42 CA 21 DA 21 30 4D 3E CE BC CE C2 CE
+D2 CE 3A 4E 82 4A C8 21 2E 4E 82 4E C6 21 3D 40
+10 00 09 4A 08 49 29 83 18 48 FE FF 0E 98 FC 2B
+89 48 00 00 1D 83 F6 23 2A 4A 0A 93 F0 23 3E 4F
+3D 41 30 4D 24 CC 09 50 57 52 5F 53 54 41 54 45
+84 12 CA CE 88 CE 04 D8 A6 C7 09 52 53 54 5F 53
+54 41 54 45 92 42 0E 18 14 CF 92 42 0C 18 16 CF
+EF 3F 06 CF 08 50 57 52 5F 48 45 52 45 00 92 42
+C8 21 14 CF 92 42 C6 21 16 CF 30 4D 1A CF 08 52
+53 54 5F 48 45 52 45 00 92 42 C8 21 0E 18 92 42
+C6 21 0C 18 EC 3F EC C7 04 57 49 50 45 00 39 40
+10 00 29 83 B9 43 80 FF FC 23 B2 40 04 C4 02 C4
+B2 40 D8 CF D6 CF B2 40 88 CE 0E 18 B2 40 04 D8
+0C 18 30 12 24 CF B2 40 C8 C5 C6 C5 B2 40 32 C6
+30 C6 B2 40 4A C6 48 C6 B2 40 18 00 0A 18 37 40
+26 C7 36 40 9C C6 35 40 FA C4 34 40 EC C4 B2 40
+0A 00 DC 21 B2 40 20 00 B4 21 30 41 68 CF 04 57
+41 52 4D 00 30 40 D8 CF 3D 40 12 D0 92 C3 30 01
+1E 42 08 18 0E 93 14 24 F2 B0 10 00 00 02 02 20
+3E E3 1E 53 F2 D0 30 00 0A 02 92 D3 1A 05 3E 90
+0A 00 B5 27 3E 90 16 00 B2 2F 2E 93 81 27 8A 2F
+30 4D 2E C4 07 0D 0A 1B 5B 37 6D 23 00 C6 9C C7
+2E C4 19 46 61 73 74 46 6F 72 74 68 20 C2 A9 4A
+2E 4D 2E 54 68 6F 6F 72 65 6E 73 20 00 C6 24 C4
+40 FF 2A CE A6 C6 66 C7 2E C4 0A 62 79 74 65 73
+20 66 72 65 65 00 48 C4 C8 CB 24 CE 04 43 4F 4C
+44 00 92 B3 0A 05 FD 23 B2 40 04 A5 20 01 31 40
+E0 20 B2 40 88 5A CC 01 B2 43 02 02 B2 D3 06 02
+D2 43 24 02 F2 D3 26 02 F2 40 FD 00 22 02 E2 D2
+24 02 F2 40 A5 00 A1 01 F2 40 10 00 A0 01 D2 43
+A1 01 B2 40 00 A5 60 01 B2 40 29 01 80 01 B2 40
+0B 00 82 01 B2 40 E9 01 84 01 39 40 00 01 B2 D0
+10 00 86 01 92 D2 5E 01 08 18 38 40 59 14 18 83
+FE 23 19 83 FA 23 39 40 00 10 29 83 89 43 00 20
+FC 23 B0 12 0E C4 B2 40 81 00 00 05 92 42 02 18
+06 05 92 42 04 18 08 05 92 C3 00 05 3F 40 80 20
+30 12 D4 CF 51 3F 24 CD 86 5B 54 48 45 4E 5D 00
+30 4D 0C 4E 38 4F 3B 4F 39 4F 0E 4B 0E 5C 10 24
+1B 83 06 30 1C 83 04 30 19 53 F9 98 FF FF F5 27
+2D 4D 3E 4F 30 4D 2F 53 9F 83 00 00 F9 23 2F 53
+2D 53 F7 3F 08 D1 86 5B 45 4C 53 45 5D 00 0D 12
+87 12 24 C4 00 00 AA C6 70 CA F2 C7 62 CA 68 C6
+4C C4 A0 D1 70 C6 2E C4 06 5B 54 48 45 4E 5D 00
+12 D1 7A D1 36 D1 58 D1 26 C7 70 C6 2E C4 06 5B
+45 4C 53 45 5D 00 12 D1 90 D1 36 D1 56 D1 26 C7
+2E C4 04 5B 49 46 5D 00 12 D1 58 D1 48 C4 56 D1
+22 C6 2E C4 05 0D 0A 6B 6F 20 00 C6 D4 C4 C4 C4
+48 C4 58 D1 46 D1 84 5B 49 46 5D 00 0E 93 3E 4F
+C6 27 30 4D 2F 53 30 4D B6 D1 89 5B 44 45 46 49
+4E 45 44 5D 0D 12 87 12 70 CA F2 C7 4A C8 C4 D1
+26 C7 CA D1 8B 5B 55 4E 44 45 46 49 4E 45 44 5D
+0D 12 87 12 D4 D1 F8 D1 3D 41 30 40 B6 C6 38 40
+C0 21 0A 4E 39 48 2E 48 09 5E 1E 52 C4 21 09 9E
+03 24 7A 9E FC 27 1E 83 0A 4E 2A 88 82 4A C4 21
+30 4D 1C 15 87 12 F2 C7 4A C8 42 C4 36 D2 06 C9
+4C C4 00 CC 50 D2 38 D2 39 4E 39 80 86 12 08 24
+19 53 02 20 2E 4E 04 3C 2E 53 19 53 01 24 2E 82
+1B 17 30 41 3E 40 28 00 B0 12 22 D2 19 42 C6 21
+A2 53 C6 21 89 4E 00 00 3E 40 29 00 1C 15 12 12
+C4 21 92 53 C4 21 87 12 F2 C7 06 C9 4C C4 8C D2
+82 D2 21 53 3E 90 10 00 80 2D E2 2B 8E D2 B2 41
+C4 21 DE 3F 0D 12 87 12 70 CA FE D1 9E D2 0C 43
+1B 42 C6 21 A2 53 C6 21 6A 4E 3E 4F 7A 90 23 00
+27 20 92 53 C4 21 B0 12 22 D2 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
+C6 21 A2 53 C6 21 89 4E 00 00 3E 4F 3D 41 30 4D
+7A 90 26 00 07 20 3C 40 10 02 92 53 C4 21 B0 12
+22 D2 ED 3F 7A 90 40 00 16 20 3C 40 20 00 92 53
+C4 21 B0 12 6C D2 0C 20 3C 50 10 00 3E 40 2B 00
+B0 12 6C D2 92 92 C0 21 C4 21 02 24 92 53 C4 21
+8E 10 0C 5E DA 3F B0 12 6C D2 FA 23 3C 50 10 00
+B0 12 54 D2 EF 3F 0C 43 1B 42 C6 21 A2 53 C6 21
+0D 12 87 12 70 CA FE D1 6A D3 FE 90 26 00 00 00
+3E 40 20 00 03 20 3C 50 82 00 C7 3F B0 12 6C D2
+E0 23 3C 50 80 00 B0 12 54 D2 DB 3F 00 00 04 52
+45 54 49 00 0D 12 87 12 24 C4 00 13 F8 C9 26 C7
+24 C4 2C 00 94 D2 60 D3 AA D3 09 4B 2E 4E 0E DC
+A2 3F F6 CD 03 4D 4F 56 84 12 A0 D3 00 40 B4 D3
+05 4D 4F 56 2E 42 84 12 A0 D3 40 40 00 00 03 41
+44 44 84 12 A0 D3 00 50 CE D3 05 41 44 44 2E 42
+84 12 A0 D3 40 50 DA D3 04 41 44 44 43 00 84 12
+A0 D3 00 60 E8 D3 06 41 44 44 43 2E 42 00 84 12
+A0 D3 40 60 8E D3 04 53 55 42 43 00 84 12 A0 D3
+00 70 06 D4 06 53 55 42 43 2E 42 00 84 12 A0 D3
+40 70 14 D4 03 53 55 42 84 12 A0 D3 00 80 24 D4
+05 53 55 42 2E 42 84 12 A0 D3 40 80 D2 CD 03 43
+4D 50 84 12 A0 D3 00 90 3E D4 05 43 4D 50 2E 42
+84 12 A0 D3 40 90 BE CD 04 44 41 44 44 00 84 12
+A0 D3 00 A0 58 D4 06 44 41 44 44 2E 42 00 84 12
+A0 D3 40 A0 4A D4 03 42 49 54 84 12 A0 D3 00 B0
+76 D4 05 42 49 54 2E 42 84 12 A0 D3 40 B0 82 D4
+03 42 49 43 84 12 A0 D3 00 C0 90 D4 05 42 49 43
+2E 42 84 12 A0 D3 40 C0 9C D4 03 42 49 53 84 12
+A0 D3 00 D0 AA D4 05 42 49 53 2E 42 84 12 A0 D3
+40 D0 00 00 03 58 4F 52 84 12 A0 D3 00 E0 C4 D4
+05 58 4F 52 2E 42 84 12 A0 D3 40 E0 F6 D3 03 41
+4E 44 84 12 A0 D3 00 F0 DE D4 05 41 4E 44 2E 42
+84 12 A0 D3 40 F0 70 CA 94 D2 FC D4 0A 4C 3C F0
+70 00 8A 10 3A F0 0F 00 0C DA 4F 3F 30 D4 03 52
+52 43 84 12 F6 D4 00 10 0E D5 05 52 52 43 2E 42
+84 12 F6 D4 40 10 1A D5 04 53 57 50 42 00 84 12
+F6 D4 80 10 28 D5 03 52 52 41 84 12 F6 D4 00 11
+36 D5 05 52 52 41 2E 42 84 12 F6 D4 40 11 42 D5
+03 53 58 54 84 12 F6 D4 80 11 00 00 04 50 55 53
+48 00 84 12 F6 D4 00 12 5C D5 06 50 55 53 48 2E
+42 00 84 12 F6 D4 40 12 B6 D4 04 43 41 4C 4C 00
+84 12 F6 D4 80 12 1A 53 0E 4A 0D 12 87 12 9C C7
+2E C4 0D 6F 75 74 20 6F 66 20 62 6F 75 6E 64 73
+7A CB 70 CA FE D1 A8 D5 92 53 C4 21 3E 40 2C 00
+87 12 F2 C7 06 C9 4C C4 00 CC 56 D3 BE D5 0A 4E
+3E 4F 1A 83 E0 33 29 4E 59 0E 0A 28 08 4C 59 0A
+01 28 0C 8A 08 8A 38 90 10 00 D5 2F 5A 0E 94 3F
+2A 92 D1 2F 8A 10 5A 06 8F 3F 50 D5 04 52 52 43
+4D 00 84 12 A2 D5 50 00 EC D5 04 52 52 41 4D 00
+84 12 A2 D5 50 01 FA D5 04 52 4C 41 4D 00 84 12
+A2 D5 50 02 08 D6 04 52 52 55 4D 00 84 12 A2 D5
+50 03 6A D5 05 50 55 53 48 4D 84 12 A2 D5 00 15
+24 D6 04 50 4F 50 4D 00 84 12 A2 D5 00 17 16 D6
+03 53 3E 3D 85 12 00 38 40 D6 02 53 3C 00 85 12
+00 34 32 D6 03 30 3E 3D 85 12 00 30 54 D6 02 30
+3C 00 85 12 00 30 00 00 02 55 3C 00 85 12 00 2C
+68 D6 03 55 3E 3D 85 12 00 28 5E D6 03 30 3C 3E
+85 12 00 24 7C D6 02 30 3D 00 85 12 00 20 00 00
+02 49 46 00 1A 42 C6 21 8A 4E 00 00 A2 53 C6 21
+0E 4A 30 4D 72 D6 04 54 48 45 4E 00 1A 42 C6 21
+08 4E 3E 4F 09 48 29 53 0A 89 0A 11 3A 90 00 02
+63 2F 88 DA 00 00 30 4D 66 D4 04 45 4C 53 45 00
+1A 42 C6 21 BA 40 00 3C 00 00 A2 53 C6 21 2F 83
+8F 4A 00 00 E3 3F A6 D6 05 55 4E 54 49 4C 3A 4F
+08 4E 3E 4F 19 42 C6 21 2A 83 0A 89 0A 11 3A 90
+00 FE 42 3B 3A F0 FF 03 08 DA 89 48 00 00 A2 53
+C6 21 30 4D EA D4 05 41 47 41 49 4E 0A 4E 38 40
+00 3C E7 3F 00 00 05 57 48 49 4C 45 0D 12 87 12
+94 D6 82 C6 26 C7 4A D6 06 52 45 50 45 41 54 00
+0D 12 87 12 1C D7 AC D6 26 C7 4C D7 3D 41 08 4E
+3E 4F 2A 48 B2 92 C4 21 CB 2F 98 42 C6 21 00 00
+30 4D 7A D5 03 42 57 31 84 12 4A D7 00 00 64 D7
+03 42 57 32 84 12 4A D7 00 00 70 D7 03 42 57 33
+84 12 4A D7 00 00 88 D7 3D 41 1A 42 C6 21 28 4E
+B2 92 C4 21 8E 2B BA 4F 00 00 A2 53 C6 21 8E 4A
+00 00 3E 4F 30 4D 00 00 03 46 57 31 84 12 86 D7
+00 00 A8 D7 03 46 57 32 84 12 86 D7 00 00 B4 D7
+03 46 57 33 84 12 86 D7 00 00 C0 D7 04 47 4F 54
+4F 00 2F 83 8F 4E 00 00 3E 40 00 3C 0D 12 87 12
+F0 CB 18 CA 26 C7 00 00 05 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
 @FFFE
-9E D2
+6E D0
 q
index 0d177e0..0a4ee10 100644 (file)
 @1800
-10 00 08 00 00 D6 E8 03 05 00 18 00 54 DA D0 D0
-2D 01 6B 30 B6 C6 C8 C6
+10 00 08 00 00 D6 E8 03 05 00 18 00 F2 D7 88 CE
+2E 01 6B 30 06 C5 18 C5 D4 CF
 @C400
-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 3A 41 0D 12 0D 4A
-30 4D 00 00 04 45 58 49 54 00 3D 41 30 4D 24 C4
-03 44 55 50 2F 83 8F 4E 00 00 30 4D 00 00 04 32
-44 55 50 00 8F 4E FE FF AF 4F FC FF 2F 82 30 4D
-00 00 04 3F 44 55 50 00 0E 93 EC 23 30 4D 30 C4
-04 44 52 4F 50 00 3E 4F 30 4D 2F 53 30 4D 3E C4
-04 53 57 41 50 00 2A 4F 8F 4E 00 00 0E 4A 30 4D
-52 C4 02 3E 52 00 0E 12 3E 4F 30 4D 70 C4 02 52
-3E 00 2F 83 8F 4E 00 00 3E 41 30 4D 60 C4 05 44
-45 50 54 48 8F 4E FE FF 3E 40 80 20 0E 8F 0E 11
-2F 83 30 4D 00 00 01 2D 3E 8F 3E E3 1E 53 30 4D
-00 00 02 31 2B 00 1E 53 30 4D C2 C4 02 31 2D 00
-1E 83 30 4D 3E F3 06 34 BF E3 00 00 3E E3 9F 53
-00 00 0E 63 30 4D 00 00 01 40 2E 4E 30 4D E8 C4
-01 21 BE 4F 00 00 3E 4F 30 4D CC C4 02 30 3D 00
-1E 83 0E 7E 30 4D FC C4 02 30 3C 00 0E 5E 0E 7E
-3E E3 30 4D 00 00 01 3D 3E 8F FA 27 0E F3 30 4D
-00 00 02 55 3C 00 3E 8F F9 2B 01 24 3E 43 30 4D
-16 C5 02 3C 23 00 B2 40 B2 21 B2 21 30 4D 0B 4E
+30 40 04 C4 B0 12 06 C5 12 D2 0A 18 F9 3F 39 40
+26 00 29 83 B9 40 6E D0 DA FF FB 23 B2 40 68 C5
+E4 FF 30 41 2F 83 8F 4E 00 00 3E 4D 30 4D 2F 82
+8F 4E 02 00 7E 4D 8F 4D 00 00 0D 5E 1D B3 0D 63
+30 4D 0E 93 3E 4F 05 24 2D 4D 30 4D 0E 93 3E 4F
+FB 27 2D 53 30 4D 39 40 00 80 39 8F 08 4E 3E 4F
+08 59 19 15 30 4D 81 5E 00 00 3E 4F 32 B0 00 01
+EB 27 21 52 2D 53 30 4D 91 53 00 00 F7 3F 0B 4E
 1C 4F 02 00 2E 4F 0A 43 34 40 20 00 0E 93 04 20
 04 11 0E 4C 0C 43 09 43 0A 9B 01 28 0A 8B 09 69
 08 68 14 83 07 30 0C 5C 0E 6E 0A 6A F5 2B 0A 8B
-12 D3 F5 3F 34 40 00 C4 8F 4A 02 00 8F 49 00 00
-0E 48 30 41 00 00 01 23 1B 42 DC 21 2C 4F 2F 83
-B0 12 46 C5 BF 4F 00 00 7A 90 0A 00 02 28 7A 50
-07 00 7A 50 30 00 92 83 B2 21 18 42 B2 21 C8 4A
-00 00 30 4D 86 C5 02 23 53 00 87 12 88 C5 C0 C5
-2D 83 09 93 E3 23 0E 93 E1 23 3D 41 30 4D B6 C5
-02 23 3E 00 9F 42 B2 21 00 00 3E 40 B2 21 2E 8F
-30 4D 00 00 04 48 4F 4C 44 00 0A 4E 3E 4F DB 3F
-8E C4 04 53 49 47 4E 00 0E 93 3E 4F 3A 40 2D 00
-D2 33 30 4D 87 12 36 C5 34 C4 86 C4 D4 C4 BA C5
-92 C4 F8 C5 D4 C5 D6 C7 42 CB 82 C7 2A C4 22 C5
-02 55 2E 00 08 43 2F 83 8F 4E 00 00 0E 48 EA 3F
-00 00 01 2E 0E 93 F6 37 38 43 F5 3F 2D 4D 30 4D
-0E 93 3E 4F FB 27 2D 53 30 4D 0E 93 3E 4F F6 23
-2D 53 30 4D 39 40 00 80 39 8F 08 4E 3E 4F 08 59
-19 15 30 4D 81 5E 00 00 3E 4F 32 B0 00 01 E6 27
-2D 53 21 52 30 4D 91 53 00 00 F7 3F E4 C5 01 49
-2F 83 8F 4E 00 00 2E 41 1E 81 02 00 30 4D 00 00
-03 4B 45 59 30 40 98 C6 18 42 0C 05 2F 83 8F 4E
-00 00 B0 12 B6 C6 92 B3 1C 05 FD 27 1E 42 0C 05
-B0 12 C8 C6 30 4D A2 B3 1C 05 FD 27 B2 40 11 00
-0E 05 E2 C2 22 02 30 41 B2 40 13 00 0E 05 E2 D2
-22 02 30 41 00 00 05 53 4C 45 45 50 30 40 E0 C6
-B0 12 B6 C6 12 D2 0A 18 F9 3F F0 C4 06 41 43 43
-45 50 54 00 3C 40 64 C7 3B 40 2E C7 2D 15 0A 4E
-2E 4F 0A 5E 3B 40 0D 00 3C 40 20 00 3D 40 58 C7
-92 B3 1C 05 05 24 18 42 0C 05 38 90 0A 00 CB 23
-21 53 3D 15 DB 3F 21 52 3A 17 58 42 0C 05 48 9C
-08 2C 48 9B C9 27 78 92 11 20 2E 9F 0F 24 1E 83
-05 3C 0E 9A 03 24 CE 48 00 00 1E 53 A2 B3 1C 05
-FD 27 82 48 0E 05 30 4D 5A C7 2D 83 92 B3 1C 05
-E4 23 FC 27 82 93 DE 21 02 24 92 53 DE 21 3E 8F
-3D 41 B2 40 18 00 0A 18 30 4D 9E C4 04 45 4D 49
-54 00 30 40 86 C7 08 4E 3E 4F E0 3F 3F 80 06 00
-8F 4E 04 00 3E 40 54 00 BF 40 3C 21 00 00 AF 4F
-02 00 A8 3F 7C C7 04 45 43 48 4F 00 B2 40 82 48
-52 C7 82 43 DE 21 30 4D 32 C6 06 4E 4F 45 43 48
-4F 00 B2 40 30 4D 52 C7 92 43 DE 21 30 4D 20 C6
-04 54 59 50 45 00 0E 93 0F 24 1E 15 3D 40 EC C7
-28 4F 7E 48 8F 48 00 00 2F 83 CB 3F EE C7 2D 83
-91 83 02 00 F5 23 1D 17 2F 53 3E 4F 30 4D D0 C5
-02 43 52 00 30 40 08 C8 87 12 1E C8 02 0D 0A 00
-D6 C7 2A C4 2F 83 8F 4E 00 00 3E 4D 30 4D 2F 82
-8F 4E 02 00 7E 4D 8F 4D 00 00 0D 5E 1D B3 0D 63
-30 4D F2 C5 82 53 22 00 82 43 B4 21 87 12 14 C8
-1E C8 B0 CA 14 C8 22 00 80 C8 4C C8 B2 40 20 00
-B4 21 6E 4E 1E 53 1E B3 82 6E C6 21 3D 41 3E 4F
-30 4D BA C7 82 2E 22 00 87 12 38 C8 14 C8 D6 C7
-B0 CA 2A C4 48 43 05 3C 00 00 04 57 4F 52 44 00
-48 4E 19 42 C0 21 1A 42 C2 21 09 5A 1A 52 C4 21
-09 9A 03 24 7E 9A FC 27 1A 83 4E F8 06 20 0E 4A
-1A 82 C2 21 82 4A C4 21 30 4D 18 42 C6 21 3B 40
-60 00 C8 4C 00 00 09 9A 0C 24 7C 4A 4E 9C 09 24
-18 53 4B 9C F6 2F 7C 90 7B 00 F3 2F 5C 82 B4 21
-F0 3F 1A 82 C2 21 82 4A C4 21 1E 42 C6 21 08 8E
-CE 48 00 00 30 4D 00 00 04 46 49 4E 44 00 2F 83
-0C 4E 65 4C 74 40 80 00 3B 40 CA 21 3E 4B 0E 93
-1E 24 58 4C 01 00 78 F0 1E 00 0E 58 2E 53 1E 4E
-FE FF 0E 93 F3 27 09 4E 78 49 48 C4 48 95 F7 23
-0A 4C FA 99 01 00 F3 23 1A 53 58 83 FA 23 19 B3
-09 63 0C 49 6A 4E 1E 43 4A 93 01 30 2E 83 8F 4C
-00 00 35 40 0E C4 34 40 00 C4 30 4D 82 C4 07 3E
-4E 55 4D 42 45 52 3C 4F 38 4F 29 4F 2F 82 1B 42
-DC 21 6A 4C 7A 80 30 00 7A 90 0A 00 05 28 7A 80
-07 00 7A 90 0A 00 12 28 0A 9B 22 C3 0F 2C 82 49
-D0 04 82 48 D2 04 82 4B C8 04 19 42 E4 04 18 42
-E6 04 09 5A 08 63 1C 53 1E 83 E3 23 8F 4C 00 00
-8F 48 02 00 8F 49 04 00 30 4D 32 C0 00 02 1B 42
-DC 21 0C 43 2D 15 3D 40 F4 C9 09 43 08 43 3F 82
-8F 4E 06 00 0C 4E 7E 4C 6A 4C 7A 90 2D 00 04 28
-C9 23 B1 43 02 00 DF 3F 2B 43 7A 80 25 00 07 24
-3B 52 6A 53 04 24 3B 40 10 00 5A 83 BA 23 1C 53
-1E 83 EA 3F F6 C9 2F 24 2D 83 7A 90 28 00 CB 27
-32 D0 00 02 7A 90 F7 00 C6 27 7A 90 F5 00 23 20
-0A 4E 09 43 8F 49 02 00 5A 83 09 4A 09 5C 69 49
-79 80 30 00 79 90 0A 00 05 28 79 80 07 00 79 90
-0A 00 0A 28 09 9B 08 2C 8F 49 00 00 0E 4B 2C 15
-B0 12 3E C5 2A 17 E6 3F 9F 4F 04 00 02 00 AF 4F
-04 00 0E 4A 4E 93 2B 17 0E 4C 82 4B DC 21 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 7E C6 04 48 45 52 45 00
-2F 83 8F 4E 00 00 1E 42 C6 21 30 4D B6 C4 01 2C
-1A 42 C6 21 8A 4E 00 00 A2 53 C6 21 3E 4F 30 4D
-EC C6 05 41 4C 4C 4F 54 82 5E C6 21 3E 4F 30 4D
-A6 C7 07 45 58 45 43 55 54 45 0A 4E 3E 4F 00 4A
-AE CA 87 4C 49 54 45 52 41 4C 82 93 BE 21 0C 24
-1A 42 C6 21 A2 52 C6 21 BA 40 14 C8 00 00 8A 4E
-02 00 3E 4F 32 B0 00 02 32 C0 00 02 06 24 19 4A
-02 00 8A 4E 02 00 0E 49 EB 3F 30 4D 00 C8 05 43
-4F 55 4E 54 2F 83 1E 53 8F 4E 00 00 5E 4E FF FF
-30 4D 82 4E C0 21 B2 4F C2 21 3E 4F 82 43 C4 21
-30 4D 85 12 20 00 87 12 32 CB 42 CB 80 C8 50 CB
-3D 40 58 CB CC 22 82 3E 5A CB 0A 4E 3E 4F 3D 40
-70 CB 23 27 3D 40 4A CB 1A E2 BE 21 A1 27 B5 23
-72 CB 3E 4F 3D 40 4A CB B8 23 DE 53 00 00 68 4E
-08 5E F8 40 3F 00 00 00 3D 40 26 CE CB 3F D2 CA
+12 D3 F5 3F 34 40 EC C4 8F 4A 02 00 8F 49 00 00
+0E 48 30 41 82 4E C0 21 B2 4F C2 21 3E 4F 82 43
+C4 21 30 4D 3F 80 06 00 8F 4E 04 00 3E 40 54 00
+BF 40 3C 21 00 00 AF 4F 02 00 24 3C 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 A2 B3 1C 05 FD 27 B2 40 11 00
+0E 05 E2 C2 22 02 30 41 A2 B3 1C 05 FD 27 B2 40
+13 00 0E 05 E2 D2 22 02 30 41 00 00 06 41 43 43
+45 50 54 00 3C 40 A6 C5 3B 40 70 C5 2D 15 0A 4E
+2E 4F 0A 5E 3B 40 0D 00 3C 40 20 00 3D 40 9A C5
+92 B3 1C 05 05 24 18 42 0C 05 38 90 0A 00 D3 23
+21 53 3D 15 30 40 00 C4 21 52 3A 17 58 42 0C 05
+48 9C 08 2C 48 9B D0 27 78 92 11 20 2E 9F 0F 24
+1E 83 05 3C 0E 9A 03 24 CE 48 00 00 1E 53 A2 B3
+1C 05 FD 27 82 48 0E 05 30 4D 9C C5 2D 83 92 B3
+1C 05 E4 23 FC 27 82 93 DE 21 02 24 92 53 DE 21
+3E 8F 3D 41 B2 40 18 00 0A 18 30 4D 00 00 04 45
+4D 49 54 00 30 40 C8 C5 08 4E 3E 4F E0 3F BE C5
+04 45 43 48 4F 00 B2 40 82 48 94 C5 82 43 DE 21
+30 4D 00 00 06 4E 4F 45 43 48 4F 00 B2 40 30 4D
+94 C5 92 43 DE 21 30 4D 00 00 04 54 59 50 45 00
+0E 93 0F 24 1E 15 3D 40 16 C6 28 4F 7E 48 8F 48
+00 00 2F 83 D7 3F 18 C6 2D 83 91 83 02 00 F5 23
+1D 17 2F 53 3E 4F 30 4D 00 00 02 43 52 00 30 40
+32 C6 0D 12 87 12 2E C4 02 0D 0A 00 00 C6 26 C7
+00 00 03 4B 45 59 30 40 4A C6 18 42 0C 05 2F 83
+8F 4E 00 00 B0 12 06 C5 92 B3 1C 05 FD 27 1E 42
+0C 05 B0 12 18 C5 30 4D 2F 83 8F 4E 00 00 30 4D
+8F 4E FE FF AF 4F FC FF 2F 82 30 4D 0E 93 F4 23
+30 4D 2A 4F 8F 4E 00 00 0E 4A 30 4D 8F 4E FE FF
+3E 40 80 20 0E 8F 0E 11 2F 83 30 4D 2F 83 8F 4E
+00 00 3E 41 30 4D 3E 8F 3E E3 1E 53 30 4D BE 4F
+00 00 3E 4F 30 4D 1E 83 0E 7E 30 4D 0E 5E 0E 7E
+3E E3 30 4D 3E 8F 03 24 3E 43 01 2C 0E F3 30 4D
+00 00 02 3C 23 00 B2 40 B2 21 B2 21 30 4D 2A C6
+01 23 1B 42 DC 21 2C 4F 2F 83 B0 12 86 C4 BF 4F
+00 00 7A 90 0A 00 02 28 7A 50 07 00 7A 50 30 00
+92 83 B2 21 18 42 B2 21 C8 4A 00 00 30 4D E0 C6
+02 23 53 00 0D 12 87 12 E2 C6 1C C7 2D 83 09 93
+E2 23 0E 93 E0 23 3D 41 30 4D 10 C7 02 23 3E 00
+9F 42 B2 21 00 00 3E 40 B2 21 2E 8F 30 4D 00 00
+04 48 4F 4C 44 00 4A 4E 3E 4F DA 3F 00 00 04 53
+49 47 4E 00 0E 93 3E 4F 7A 40 2D 00 D1 33 30 4D
+FA C5 02 55 2E 00 08 43 2F 83 8F 4E 00 00 0E 48
+0D 12 0E 12 3E F3 06 34 BF E3 00 00 3E E3 9F 53
+00 00 0E 63 87 12 D6 C6 14 C7 9C C6 54 C7 30 C7
+00 C6 70 CA C4 C5 26 C7 E4 C5 01 2E 0E 93 E3 37
+38 43 E2 3F 4E C7 82 53 22 00 82 43 B4 21 0D 12
+87 12 24 C4 2E C4 F8 C9 24 C4 22 00 F2 C7 C0 C7
+B2 40 20 00 B4 21 6E 4E 1E 53 1E B3 82 6E C6 21
+3D 41 3E 4F 30 4D 9A C7 82 2E 22 00 0D 12 87 12
+AA C7 24 C4 00 C6 F8 C9 26 C7 00 00 04 57 4F 52
+44 00 3C 40 C0 21 39 4C 3A 4C 09 5A 3A 5C 28 4C
+09 9A 15 24 7E 9A FC 27 1A 83 3B 40 60 00 C8 4C
+00 00 09 9A 0C 24 7C 4A 4E 9C 09 24 18 53 4B 9C
+F6 2F 7C 90 7B 00 F3 2F 5C 82 B4 21 F0 3F 1A 82
+C2 21 82 4A C4 21 1E 42 C6 21 08 8E CE 48 00 00
+30 4D 00 00 04 46 49 4E 44 00 2F 83 0C 4E 65 4C
+74 40 80 00 3B 40 CA 21 3E 4B 0E 93 1E 24 58 4C
+01 00 78 F0 1E 00 0E 58 2E 53 1E 4E FE FF 0E 93
+F3 27 09 4E 78 49 48 C4 48 95 F7 23 0A 4C FA 99
+01 00 F3 23 1A 53 58 83 FA 23 19 B3 09 63 0C 49
+6A 4E 1E 43 4A 93 01 30 2E 83 8F 4C 00 00 35 40
+FA C4 34 40 EC C4 30 4D 00 00 07 3E 4E 55 4D 42
+45 52 3C 4F 38 4F 29 4F 2F 82 1B 42 DC 21 6A 4C
+7A 80 30 00 7A 90 0A 00 05 28 7A 80 07 00 7A 90
+0A 00 12 28 0A 9B 22 C3 0F 2C 82 49 D0 04 82 48
+D2 04 82 4B C8 04 19 42 E4 04 18 42 E6 04 09 5A
+08 63 1C 53 1E 83 E3 23 8F 4C 00 00 8F 48 02 00
+8F 49 04 00 30 4D 32 C0 00 02 1B 42 DC 21 0C 43
+2D 15 3D 40 50 C9 09 43 08 43 3F 82 8F 4E 06 00
+0C 4E 7E 4C 6A 4C 7A 90 2D 00 04 28 C9 23 B1 43
+02 00 0B 3C 2B 43 7A 80 25 00 07 24 3B 52 6A 53
+04 24 3B 40 10 00 5A 83 BA 23 1C 53 1E 83 EA 3F
+52 C9 2F 24 2D 83 7A 90 28 00 CB 27 32 D0 00 02
+7A 90 F7 00 C6 27 7A 90 F5 00 23 20 0A 4E 09 43
+8F 49 02 00 5A 83 09 4A 09 5C 69 49 79 80 30 00
+79 90 0A 00 05 28 79 80 07 00 79 90 0A 00 0A 28
+09 9B 08 2C 8F 49 00 00 0E 4B 2C 15 B0 12 7E C4
+2A 17 E6 3F 9F 4F 04 00 02 00 AF 4F 04 00 0E 4A
+4E 93 2B 17 0E 4C 82 4B DC 21 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 00 00 01 2C 1A 42 C6 21 8A 4E 00 00
+A2 53 C6 21 3E 4F 30 4D 2C C5 05 41 4C 4C 4F 54
+82 5E C6 21 3E 4F 30 4D 0A 4E 3E 4F 00 4A F6 C9
+87 4C 49 54 45 52 41 4C 82 93 BE 21 0C 24 1A 42
+C6 21 A2 52 C6 21 BA 40 24 C4 00 00 8A 4E 02 00
+3E 4F 32 B0 00 02 32 C0 00 02 06 24 19 4A 02 00
+8A 4E 02 00 0E 49 EB 3F 30 4D 2C C7 05 43 4F 55
+4E 54 2F 83 1E 53 8F 4E 00 00 5E 4E FF FF 30 4D
+85 12 20 00 0D 12 87 12 C4 C4 70 CA F2 C7 80 CA
+3D 40 88 CA E2 22 A4 26 8A CA 0A 4E 3E 4F 3D 40
+A0 CA 39 27 3D 40 7A CA 1A E2 BE 21 BD 23 AC 27
+A2 CA 3E 4F 3D 40 7A CA BF 23 DE 53 00 00 68 4E
+08 5E F8 40 3F 00 00 00 3D 40 20 CD D2 3F D0 C5
 08 45 56 41 4C 55 41 54 45 00 39 40 C0 21 3C 49
-3B 49 3A 49 3D 15 B0 12 2A C4 46 CB AE CB B2 41
-C4 21 B2 41 C2 21 B2 41 C0 21 3D 41 30 4D 85 12
-BE 21 08 C5 04 51 55 49 54 00 82 43 08 18 31 40
-E0 20 B2 40 00 20 00 20 82 43 BE 21 B0 12 2A C4
-04 C8 8C C7 42 CB 82 C7 46 CB A4 C4 0C C5 1E C8
-0C 73 74 61 63 6B 20 65 6D 70 74 79 21 00 40 CC
-14 C8 30 FF A0 CA 26 C5 1E C8 0A 46 52 41 4D 20
-66 75 6C 6C 21 00 40 CC 3C C6 E0 CB C2 CA 05 41
-42 4F 52 54 3F 40 80 20 D0 3F 1E CC 86 41 42 4F
-52 54 22 00 87 12 38 C8 14 C8 40 CC B0 CA 2A C4
-8F 93 02 00 03 20 2F 52 3E 4F 30 4D B0 12 C8 D1
-B0 12 B6 C6 92 C3 1C 05 38 40 AA 0A 39 42 03 43
-19 83 FD 23 18 83 FA 23 92 B3 1C 05 F3 23 87 12
-42 D1 14 C8 DE 21 EA C4 AC C7 1E C8 04 1B 5B 37
-6D 00 D6 C7 58 C4 40 C6 9A CC 04 C8 1E C8 05 6C
-69 6E 65 3A D6 C7 D0 C4 24 C6 D6 C7 1E C8 04 1B
-5B 30 6D 00 D6 C7 24 CC 00 00 83 5B 27 5D 87 12
-C0 CC 14 C8 14 C8 B0 CA B0 CA 2A C4 E8 C8 01 27
-87 12 42 CB 80 C8 EE C8 40 C6 CE CC 2A C4 7A CB
-32 C5 81 5C 92 42 C0 21 C4 21 30 4D AA CC 81 5B
-82 43 BE 21 30 4D D2 CC 01 5D B2 43 BE 21 30 4D
-BE 4F 02 00 3E 4F 30 4D 9A CA 82 49 53 00 87 12
-BE CB EA C4 40 C6 12 CD AE CC 14 C8 F0 CC B0 CA
-2A C4 C0 CC F0 CC 2A C4 FA CC 09 49 4D 4D 45 44
-49 41 54 45 1A 42 B6 21 FA D0 80 00 00 00 30 4D
-C4 CB 88 50 4F 53 54 50 4F 4E 45 00 87 12 42 CB
-80 C8 EE C8 58 C4 40 C6 CE CC 0C C5 40 C6 5C CD
-14 C8 14 C8 B0 CA B0 CA 14 C8 B0 CA B0 CA 2A C4
-DE CC 81 3B 82 93 BE 21 B5 27 87 12 14 C8 2A C4
-B0 CA FA CD E0 CC 2A C4 62 CD 07 3A 4E 4F 4E 41
-4D 45 30 12 A0 CD 2F 83 8F 4E 00 00 1E 42 C6 21
-1E B3 0E 63 0A 4E 39 40 00 02 38 40 02 02 21 3C
-BA 40 87 12 FC FF A2 83 C6 21 B2 43 BE 21 30 4D
-7A CD 01 3A 30 12 A0 CD 92 B3 C6 21 A2 63 C6 21
-87 12 42 CB 80 C8 C8 CD 3D 41 08 4E 7A 4E 5A D3
-5A 53 0A 58 19 42 DA 21 6E 4E 3E F0 1E 00 09 5E
-3E 4F 82 48 B6 21 82 49 B8 21 82 4A BA 21 82 4F
-BC 21 2A 52 82 4A C6 21 30 41 82 9F BC 21 09 20
-18 42 B6 21 19 42 B8 21 A8 49 FE FF 89 48 00 00
-30 4D 87 12 1E C8 0F 73 74 61 63 6B 20 6D 69 73
-6D 61 74 63 68 21 4C CC 90 CB 05 44 45 46 45 52
-B0 12 B8 CD BA 40 30 40 FC FF BA 40 AE CD FE FF
-E3 3F 1E CB 06 43 52 45 41 54 45 00 B0 12 B8 CD
-BA 40 85 12 FC FF 8A 4A FE FF D6 3F 2A CE 05 44
-4F 45 53 3E 1A 42 BA 21 BA 40 84 12 00 00 8A 4D
-02 00 3D 41 30 4D 4E C9 05 3E 42 4F 44 59 2E 52
-30 4D 44 CE 04 43 4F 44 45 00 B0 12 B8 CD A2 82
-C6 21 87 12 D2 D0 AC D0 2A C4 84 CE 07 43 4F 44
-45 4E 4E 4D B0 12 86 CD F2 3F 00 00 07 45 4E 44
-43 4F 44 45 87 12 E0 D0 FA CD 2A C4 2C CC 03 41
-53 4D B2 40 B0 D0 DA 21 E0 3F AC CE 06 45 4E 44
-41 53 4D 00 87 12 B4 CE F4 D0 2A C4 00 00 05 43
-4F 4C 4F 4E 1A 42 C6 21 BA 40 87 12 00 00 A2 53
-C6 21 B2 43 BE 21 30 40 E0 D0 00 00 05 4C 4F 32
-48 49 1A 42 C6 21 BA 40 B0 12 00 00 BA 40 2A C4
-02 00 A2 52 C6 21 ED 3F 1A CD 85 48 49 32 4C 4F
-87 12 A0 CA 4A CF B0 CA E0 CC D2 D0 AC D0 2A C4
-1A CF 82 49 46 00 2F 83 8F 4E 00 00 1E 42 C6 21
-A2 52 C6 21 BE 40 40 C6 00 00 2E 53 30 4D 5E CE
-84 45 4C 53 45 00 A2 52 C6 21 1A 42 C6 21 BA 40
-3C C6 FC FF 8E 4A 00 00 2A 83 0E 4A 30 4D D0 C7
-84 54 48 45 4E 00 9E 42 C6 21 00 00 3E 4F 30 4D
-9C CE 85 42 45 47 49 4E 30 40 A0 CA 70 CF 85 55
-4E 54 49 4C 39 40 40 C6 A2 52 C6 21 1A 42 C6 21
-8A 49 FC FF 8A 4E FE FF 3E 4F 30 4D BE CE 85 41
-47 41 49 4E 39 40 3C C6 EF 3F 7A C8 85 57 48 49
-4C 45 87 12 36 CF 76 C4 2A C4 34 C8 86 52 45 50
-45 41 54 00 87 12 B4 CF 76 CF 2A C4 50 CF 82 44
-4F 00 2F 83 8F 4E 00 00 A2 53 C6 21 1E 42 C6 21
-BE 40 54 C6 FE FF A2 53 00 20 1A 42 00 20 8A 43
-00 00 30 4D E2 CA 84 4C 4F 4F 50 00 39 40 76 C6
-A2 52 C6 21 1A 42 C6 21 8A 49 FC FF 8A 4E FE FF
-1E 42 00 20 A2 83 00 20 2E 4E 0E 93 03 24 8E 4A
-00 00 F6 3F 3E 4F 30 4D 90 C6 85 2B 4C 4F 4F 50
-39 40 64 C6 E5 3F 06 D0 04 4D 4F 56 45 00 0A 4E
-38 4F 39 4F 3E 4F 0A 93 11 24 08 99 0F 24 06 2C
-F8 49 00 00 18 53 1A 83 FB 23 30 4D 08 5A 09 5A
-19 83 18 83 E8 49 00 00 1A 83 FA 23 30 4D 14 C8
-CA 21 F2 C4 2A C4 84 12 7E D0 AE CF 3A D3 DE CF
-BE CC 32 CF 3A D0 4E D4 64 C8 66 D1 80 D1 8E CF
-00 D2 00 00 20 D4 E8 CC 78 CE 00 00 84 12 7E D0
-6C D9 CE D9 20 D9 42 DA E6 D8 00 00 16 D6 00 00
-DC D8 8C D9 3E D9 7C D9 26 D7 00 00 00 00 1E DA
-AA D0 3A 40 0C 00 39 40 CA 21 38 40 CC 21 C6 3F
-3A 40 0E 00 39 40 CC 21 38 40 CA 21 B9 3F 82 43
-CC 21 30 4D 92 42 CA 21 DA 21 30 4D 86 D0 EE D0
-F4 D0 04 D1 3A 4E 82 4A C8 21 2E 4E 82 4E C6 21
-3D 40 10 00 09 4A 08 49 29 83 18 48 FE FF 0E 98
-FC 2B 89 48 00 00 1D 83 F6 23 2A 4A 0A 93 F0 23
-3E 4F 3D 41 30 4D 32 CD 09 50 57 52 5F 53 54 41
-54 45 84 12 FC D0 D0 D0 54 DA CC CF 09 52 53 54
-5F 53 54 41 54 45 92 42 0E 18 46 D1 92 42 0C 18
-48 D1 EF 3F 38 D1 08 50 57 52 5F 48 45 52 45 00
-92 42 C8 21 46 D1 92 42 C6 21 48 D1 30 4D 4C D1
-08 52 53 54 5F 48 45 52 45 00 92 42 C8 21 0E 18
-92 42 C6 21 0C 18 EC 3F BC CF 04 57 49 50 45 00
-39 40 10 00 29 83 B9 43 80 FF FC 23 B2 40 E0 C6
-DE C6 B2 40 0A D2 08 D2 B2 40 D0 D0 0E 18 B2 40
-54 DA 0C 18 30 12 56 D1 B2 40 86 C7 84 C7 B2 40
-08 C8 06 C8 B2 40 98 C6 96 C6 B2 40 18 00 0A 18
-37 40 1A C4 36 40 92 C4 35 40 0E C4 34 40 00 C4
-B2 40 0A 00 DC 21 B2 40 20 00 B4 21 30 41 9A D1
-04 57 41 52 4D 00 30 40 0A D2 3D 40 40 D2 92 C3
-30 01 1E 42 08 18 0E 93 12 24 F2 B0 10 00 00 02
-02 20 3E E3 1E 53 F2 D0 30 00 0A 02 3E 90 0A 00
-B7 27 3E 90 16 00 B4 2F 2E 93 83 27 8C 2F 30 4D
-1E C8 06 0D 1B 5B 37 6D 23 00 D6 C7 34 C6 1E C8
-19 46 61 73 74 46 6F 72 74 68 20 C2 A9 4A 2E 4D
-2E 54 68 6F 6F 72 65 6E 73 20 D6 C7 14 C8 30 FF
-A0 CA B8 C4 24 C6 1E C8 0A 62 79 74 65 73 20 66
-72 65 65 00 3C C6 9A CC 82 CF 04 43 4F 4C 44 00
-92 B3 0A 05 FD 23 B2 40 04 A5 20 01 40 D2 B2 40
-88 5A CC 01 B2 43 02 02 B2 D3 06 02 D2 43 24 02
-F2 D3 26 02 F2 40 FD 00 22 02 E2 D2 24 02 B2 40
-00 A5 60 01 B2 40 B4 00 80 01 92 43 82 01 B2 40
-1E 00 84 01 39 40 10 00 B2 D0 10 00 86 01 92 D2
-5E 01 08 18 38 40 59 14 18 83 FE 23 19 83 FA 23
-39 40 00 10 29 83 89 43 00 20 FC 23 39 40 26 00
-29 83 B9 40 9E D2 DA FF FB 23 B2 40 26 C7 E4 FF
-B2 40 81 00 00 05 92 42 02 18 06 05 92 42 04 18
-08 05 92 C3 00 05 92 D3 1A 05 3F 40 80 20 31 40
-E0 20 30 12 06 D2 51 3F 8A D2 07 43 4F 4D 50 41
-52 45 0C 4E 38 4F 3B 4F 39 4F 0E 4B 0E 5C 0C 24
-1B 83 07 30 1C 83 07 30 19 53 F9 98 FF FF F5 27
-02 2C 3E 43 30 4D 1E 43 30 4D B2 CD 86 5B 54 48
-45 4E 5D 00 30 4D 6C D3 86 5B 45 4C 53 45 5D 00
-87 12 14 C8 00 00 C6 C4 42 CB 80 C8 24 CB 34 C4
-40 C6 E2 D3 44 C4 1E C8 06 5B 54 48 45 4E 5D 00
-42 D3 4A C6 B2 D3 F8 C7 D0 C4 58 C4 4A C6 88 D3
-2A C4 44 C4 1E C8 06 5B 45 4C 53 45 5D 00 42 D3
-4A C6 D0 D3 F8 C7 D0 C4 58 C4 4A C6 86 D3 2A C4
-1E C8 04 5B 49 46 5D 00 42 D3 4A C6 88 D3 3C C6
-86 D3 F8 C7 1E C8 05 0D 0A 6B 6F 20 D6 C7 8C C7
-32 CB 3C C6 88 D3 78 D3 84 5B 49 46 5D 00 0E 93
-3E 4F BE 27 30 4D F8 D3 89 5B 44 45 46 49 4E 45
-44 5D 87 12 42 CB 80 C8 EE C8 6A C4 2A C4 08 D4
-8B 5B 55 4E 44 45 46 49 4E 45 44 5D 87 12 42 CB
-80 C8 EE C8 6A C4 00 C5 2A C4 3C D4 3D 41 B2 4E
-0E 18 A2 4E 0C 18 3E 4F 30 40 56 D1 48 D0 06 4D
-41 52 4B 45 52 00 B0 12 B8 CD BA 40 84 12 FC FF
-BA 40 3A D4 FE FF 9A 42 C8 21 00 00 28 83 8A 48
-02 00 A2 52 C6 21 30 40 00 CE 1C 15 B0 12 2A C4
-80 C8 EE C8 4A C6 90 D4 AA C9 40 C6 CE CC AA D4
-92 D4 39 4E 39 80 86 12 08 24 19 53 02 20 2E 4E
-04 3C 2E 53 19 53 01 24 2E 82 1B 17 30 41 3E 40
-28 00 B0 12 7A D4 19 42 C6 21 A2 53 C6 21 89 4E
-00 00 3E 40 29 00 1C 15 12 12 C4 21 92 53 C4 21
-B0 12 2A C4 80 C8 AA C9 40 C6 E8 D4 DE D4 21 53
-3E 90 10 00 7D 2D E1 2B EA D4 B2 41 C4 21 DD 3F
-87 12 42 CB 74 C8 F8 D4 0C 43 1B 42 C6 21 A2 53
-C6 21 6A 4E 3E 4F 7A 90 23 00 27 20 92 53 C4 21
-B0 12 7A D4 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 C6 21 A2 53 C6 21
-89 4E 00 00 3E 4F 3D 41 30 4D 7A 90 26 00 07 20
-3C 40 10 02 92 53 C4 21 B0 12 7A D4 ED 3F 7A 90
-40 00 16 20 3C 40 20 00 92 53 C4 21 B0 12 C6 D4
-0C 20 3C 50 10 00 3E 40 2B 00 B0 12 C6 D4 92 92
-C0 21 C4 21 02 24 92 53 C4 21 8E 10 0C 5E DA 3F
-B0 12 C6 D4 FA 23 3C 50 10 00 B0 12 AE D4 EF 3F
-0C 43 1B 42 C6 21 A2 53 C6 21 87 12 42 CB 74 C8
-C2 D5 FE 90 26 00 00 00 3E 40 20 00 03 20 3C 50
-82 00 C8 3F B0 12 C6 D4 E1 23 3C 50 80 00 B0 12
-AE D4 DC 3F D6 C6 04 52 45 54 49 00 87 12 14 C8
-00 13 B0 CA 2A C4 14 C8 2C 00 F0 D4 BA D5 00 D6
-09 4B 2E 4E 0E DC A4 3F FC CE 03 4D 4F 56 84 12
-F6 D5 00 40 0A D6 05 4D 4F 56 2E 42 84 12 F6 D5
-40 40 00 00 03 41 44 44 84 12 F6 D5 00 50 24 D6
-05 41 44 44 2E 42 84 12 F6 D5 40 50 30 D6 04 41
-44 44 43 00 84 12 F6 D5 00 60 3E D6 06 41 44 44
-43 2E 42 00 84 12 F6 D5 40 60 E6 D5 04 53 55 42
-43 00 84 12 F6 D5 00 70 5C D6 06 53 55 42 43 2E
-42 00 84 12 F6 D5 40 70 6A D6 03 53 55 42 84 12
-F6 D5 00 80 7A D6 05 53 55 42 2E 42 84 12 F6 D5
-40 80 DE CE 03 43 4D 50 84 12 F6 D5 00 90 94 D6
-05 43 4D 50 2E 42 84 12 F6 D5 40 90 CC CE 04 44
-41 44 44 00 84 12 F6 D5 00 A0 AE D6 06 44 41 44
-44 2E 42 00 84 12 F6 D5 40 A0 A0 D6 03 42 49 54
-84 12 F6 D5 00 B0 CC D6 05 42 49 54 2E 42 84 12
-F6 D5 40 B0 D8 D6 03 42 49 43 84 12 F6 D5 00 C0
-E6 D6 05 42 49 43 2E 42 84 12 F6 D5 40 C0 F2 D6
-03 42 49 53 84 12 F6 D5 00 D0 00 D7 05 42 49 53
-2E 42 84 12 F6 D5 40 D0 00 00 03 58 4F 52 84 12
-F6 D5 00 E0 1A D7 05 58 4F 52 2E 42 84 12 F6 D5
-40 E0 4C D6 03 41 4E 44 84 12 F6 D5 00 F0 34 D7
-05 41 4E 44 2E 42 84 12 F6 D5 40 F0 42 CB F0 D4
-52 D7 0A 4C 3C F0 70 00 8A 10 3A F0 0F 00 0C DA
-4F 3F 86 D6 03 52 52 43 84 12 4C D7 00 10 64 D7
-05 52 52 43 2E 42 84 12 4C D7 40 10 70 D7 04 53
-57 50 42 00 84 12 4C D7 80 10 7E D7 03 52 52 41
-84 12 4C D7 00 11 8C D7 05 52 52 41 2E 42 84 12
-4C D7 40 11 98 D7 03 53 58 54 84 12 4C D7 80 11
-00 00 04 50 55 53 48 00 84 12 4C D7 00 12 B2 D7
-06 50 55 53 48 2E 42 00 84 12 4C D7 40 12 0C D7
-04 43 41 4C 4C 00 84 12 4C D7 80 12 1A 53 0E 4A
-87 12 34 C6 1E C8 0D 6F 75 74 20 6F 66 20 62 6F
-75 6E 64 73 4C CC 42 CB 74 C8 FC D7 92 53 C4 21
-3E 40 2C 00 B0 12 2A C4 80 C8 AA C9 40 C6 CE CC
-B0 D5 14 D8 0A 4E 3E 4F 1A 83 E0 33 29 4E 59 0E
-0A 28 08 4C 59 0A 01 28 0C 8A 08 8A 38 90 10 00
-D5 2F 5A 0E 94 3F 2A 92 D1 2F 8A 10 5A 06 8F 3F
-A6 D7 04 52 52 43 4D 00 84 12 F6 D7 50 00 42 D8
-04 52 52 41 4D 00 84 12 F6 D7 50 01 50 D8 04 52
-4C 41 4D 00 84 12 F6 D7 50 02 5E D8 04 52 52 55
-4D 00 84 12 F6 D7 50 03 C0 D7 05 50 55 53 48 4D
-84 12 F6 D7 00 15 7A D8 04 50 4F 50 4D 00 84 12
-F6 D7 00 17 6C D8 03 53 3E 3D 85 12 00 38 96 D8
-02 53 3C 00 85 12 00 34 88 D8 03 30 3E 3D 85 12
-00 30 AA D8 02 30 3C 00 85 12 00 30 00 00 02 55
-3C 00 85 12 00 2C BE D8 03 55 3E 3D 85 12 00 28
-B4 D8 03 30 3C 3E 85 12 00 24 D2 D8 02 30 3D 00
-85 12 00 20 00 00 02 49 46 00 1A 42 C6 21 8A 4E
-00 00 A2 53 C6 21 0E 4A 30 4D C8 D8 04 54 48 45
-4E 00 1A 42 C6 21 08 4E 3E 4F 09 48 29 53 0A 89
-0A 11 3A 90 00 02 63 2F 88 DA 00 00 30 4D BC D6
-04 45 4C 53 45 00 1A 42 C6 21 BA 40 00 3C 00 00
-A2 53 C6 21 2F 83 8F 4A 00 00 E3 3F FC D8 05 55
-4E 54 49 4C 3A 4F 08 4E 3E 4F 19 42 C6 21 2A 83
-0A 89 0A 11 3A 90 00 FE 42 3B 3A F0 FF 03 08 DA
-89 48 00 00 A2 53 C6 21 30 4D 40 D7 05 41 47 41
-49 4E 0A 4E 38 40 00 3C E7 3F 00 00 05 57 48 49
-4C 45 87 12 EA D8 76 C4 2A C4 A0 D8 06 52 45 50
-45 41 54 00 87 12 72 D9 02 D9 2A C4 9E D9 3D 41
-08 4E 3E 4F 2A 48 B2 92 C4 21 CD 2F 98 42 C6 21
-00 00 30 4D D0 D7 03 42 57 31 84 12 9C D9 00 00
-B6 D9 03 42 57 32 84 12 9C D9 00 00 C2 D9 03 42
-57 33 84 12 9C D9 00 00 DA D9 3D 41 1A 42 C6 21
-28 4E B2 92 C4 21 90 2B BA 4F 00 00 A2 53 C6 21
-8E 4A 00 00 3E 4F 30 4D 00 00 03 46 57 31 84 12
-D8 D9 00 00 FA D9 03 46 57 32 84 12 D8 D9 00 00
-06 DA 03 46 57 33 84 12 D8 D9 00 00 00 00 05 3F
-47 4F 54 4F 3E 90 00 30 07 24 3E E0 00 04 3E B0
-00 10 02 24 3E E0 00 08 87 12 C0 CC DA CA 2A C4
-12 DA 04 47 4F 54 4F 00 2F 83 8F 4E 00 00 3E 40
-00 3C F2 3F
+3B 49 3A 49 3D 15 87 12 74 CA DC CA B2 41 C4 21
+B2 41 C2 21 B2 41 C0 21 3D 41 30 4D 85 12 BE 21
+00 00 04 51 55 49 54 00 82 43 08 18 31 40 E0 20
+B2 40 00 20 00 20 82 43 BE 21 87 12 2E C6 D4 C4
+70 CA C4 C5 74 CA 8C C6 BC C6 2E C4 0C 73 74 61
+63 6B 20 65 6D 70 74 79 21 00 6E CB 24 C4 40 FF
+2A CE C4 C6 2E C4 0A 46 52 41 4D 20 66 75 6C 6C
+21 00 6E CB 48 C4 0C CB 0A CA 05 41 42 4F 52 54
+3F 40 80 20 D1 3F 4A CB 86 41 42 4F 52 54 22 00
+0D 12 87 12 AA C7 24 C4 6E CB F8 C9 26 C7 8F 93
+02 00 03 20 2F 52 3E 4F 30 4D B0 12 96 CF B0 12
+06 C5 92 C3 1C 05 18 42 06 18 39 40 20 00 19 83
+FE 23 18 83 FA 23 92 B3 1C 05 F3 23 0D 12 87 12
+10 CF 24 C4 DE 21 02 C5 D6 C5 2E C4 04 1B 5B 37
+6D 00 00 C6 7C C6 4C C4 C8 CB 2E C6 2E C4 05 6C
+69 6E 65 3A 00 C6 66 C7 00 C6 2E C4 04 1B 5B 30
+6D 00 00 C6 50 CB 00 00 83 5B 27 5D 0D 12 87 12
+F0 CB 24 C4 24 C4 F8 C9 F8 C9 26 C7 44 C8 01 27
+0D 12 87 12 70 CA F2 C7 4A C8 4C C4 00 CC 26 C7
+AA CA D2 C6 81 5C 92 42 C0 21 C4 21 30 4D D8 CB
+81 5B 82 43 BE 21 30 4D 04 CC 01 5D B2 43 BE 21
+30 4D F2 CA 88 50 4F 53 54 50 4F 4E 45 00 0D 12
+87 12 70 CA F2 C7 4A C8 7C C6 4C C4 00 CC BC C6
+4C C4 50 CC 24 C4 24 C4 F8 C9 F8 C9 24 C4 F8 C9
+F8 C9 26 C7 40 C7 09 49 4D 4D 45 44 49 41 54 45
+1A 42 B6 21 FA D0 80 00 00 00 30 4D 10 CC 01 3A
+30 12 B8 CC 92 B3 C6 21 A2 63 C6 21 0D 12 87 12
+70 CA F2 C7 86 CC 3D 41 08 4E 7A 4E 5A D3 5A 53
+0A 58 19 42 DA 21 6E 4E 3E F0 1E 00 09 5E 3E 4F
+82 48 B6 21 82 49 B8 21 82 4A BA 21 82 4F BC 21
+2A 52 82 4A C6 21 30 41 BA 40 0D 12 FC FF BA 40
+87 12 FE FF B2 43 BE 21 30 4D 6E CC 07 3A 4E 4F
+4E 41 4D 45 30 12 B8 CC 2F 83 8F 4E 00 00 1E 42
+C6 21 1E B3 0E 63 0A 4E 39 40 10 02 38 40 12 02
+D7 3F 82 9F BC 21 09 20 18 42 B6 21 19 42 B8 21
+A8 49 FE FF 89 48 00 00 30 4D 0D 12 87 12 2E C4
+0F 73 74 61 63 6B 20 6D 69 73 6D 61 74 63 68 21
+7A CB CC CC 81 3B 82 93 BE 21 6D 27 0D 12 87 12
+24 C4 26 C7 F8 C9 F2 CC 12 CC 26 C7 5C CA 06 43
+52 45 41 54 45 00 B0 12 74 CC BA 40 85 12 FC FF
+8A 4A FE FF D5 3F C0 CA 05 44 4F 45 53 3E 1A 42
+BA 21 BA 40 84 12 00 00 8A 4D 02 00 3D 41 30 4D
+3E CD 04 43 4F 44 45 00 B0 12 74 CC A2 82 C6 21
+0D 12 87 12 8A CE 64 CE 26 C7 72 CD 07 43 4F 44
+45 4E 4E 4D 30 12 7C CD 9F 3F 00 00 07 45 4E 44
+43 4F 44 45 0D 12 87 12 F2 CC A4 CE 26 C7 58 CB
+03 41 53 4D B2 40 68 CE DA 21 DE 3F 9C CD 06 45
+4E 44 41 53 4D 00 0D 12 87 12 A4 CD C2 CE 26 C7
+00 00 05 43 4F 4C 4F 4E 1A 42 C6 21 BA 40 0D 12
+00 00 BA 40 87 12 02 00 A2 52 C6 21 B2 43 BE 21
+30 40 A4 CE 00 00 05 4C 4F 32 48 49 A2 83 C6 21
+1A 42 C6 21 EE 3F 56 CC 85 48 49 32 4C 4F 0D 12
+87 12 2A CE 1E CE F8 C9 12 CC 80 CD 26 C7 2E 53
+30 4D 8C CD 85 42 45 47 49 4E 2F 83 8F 4E 00 00
+1E 42 C6 21 30 4D 24 C4 CA 21 AE C6 26 C7 84 12
+36 CE B0 CD 5C D0 58 CD EE CB 08 CE 42 C6 20 CA
+D8 C7 34 CF 4E CF 62 C7 CE CF 00 00 D2 D1 1A CC
+AA C8 00 00 84 12 36 CE 04 D7 6A D7 B8 D6 BA D7
+7E D6 00 00 AE D3 00 00 74 D6 26 D7 D6 D6 14 D7
+BE D4 00 00 00 00 D6 D7 62 CE 3A 40 0C 00 39 40
+D6 21 08 49 28 53 19 83 18 83 E8 49 00 00 1A 83
+FA 23 30 4D 3A 40 0E 00 38 40 CA 21 09 48 29 53
+F8 49 00 00 18 53 1A 83 FB 23 30 4D 82 43 CC 21
+30 4D 92 42 CA 21 DA 21 30 4D 3E CE BC CE C2 CE
+D2 CE 3A 4E 82 4A C8 21 2E 4E 82 4E C6 21 3D 40
+10 00 09 4A 08 49 29 83 18 48 FE FF 0E 98 FC 2B
+89 48 00 00 1D 83 F6 23 2A 4A 0A 93 F0 23 3E 4F
+3D 41 30 4D 24 CC 09 50 57 52 5F 53 54 41 54 45
+84 12 CA CE 88 CE F2 D7 A6 C7 09 52 53 54 5F 53
+54 41 54 45 92 42 0E 18 14 CF 92 42 0C 18 16 CF
+EF 3F 06 CF 08 50 57 52 5F 48 45 52 45 00 92 42
+C8 21 14 CF 92 42 C6 21 16 CF 30 4D 1A CF 08 52
+53 54 5F 48 45 52 45 00 92 42 C8 21 0E 18 92 42
+C6 21 0C 18 EC 3F EC C7 04 57 49 50 45 00 39 40
+10 00 29 83 B9 43 80 FF FC 23 B2 40 04 C4 02 C4
+B2 40 D8 CF D6 CF B2 40 88 CE 0E 18 B2 40 F2 D7
+0C 18 30 12 24 CF B2 40 C8 C5 C6 C5 B2 40 32 C6
+30 C6 B2 40 4A C6 48 C6 B2 40 18 00 0A 18 37 40
+26 C7 36 40 9C C6 35 40 FA C4 34 40 EC C4 B2 40
+0A 00 DC 21 B2 40 20 00 B4 21 30 41 68 CF 04 57
+41 52 4D 00 30 40 D8 CF 3D 40 12 D0 92 C3 30 01
+1E 42 08 18 0E 93 14 24 F2 B0 10 00 00 02 02 20
+3E E3 1E 53 F2 D0 30 00 0A 02 92 D3 1A 05 3E 90
+0A 00 B5 27 3E 90 16 00 B2 2F 2E 93 81 27 8A 2F
+30 4D 2E C4 07 0D 0A 1B 5B 37 6D 23 00 C6 9C C7
+2E C4 19 46 61 73 74 46 6F 72 74 68 20 C2 A9 4A
+2E 4D 2E 54 68 6F 6F 72 65 6E 73 20 00 C6 24 C4
+40 FF 2A CE A6 C6 66 C7 2E C4 0A 62 79 74 65 73
+20 66 72 65 65 00 48 C4 C8 CB 24 CE 04 43 4F 4C
+44 00 92 B3 0A 05 FD 23 B2 40 04 A5 20 01 31 40
+E0 20 B2 40 88 5A CC 01 B2 43 02 02 B2 D3 06 02
+D2 43 24 02 F2 D3 26 02 F2 40 FD 00 22 02 E2 D2
+24 02 B2 40 00 A5 60 01 B2 40 B4 00 80 01 92 43
+82 01 B2 40 1E 00 84 01 39 40 10 00 B2 D0 10 00
+86 01 92 D2 5E 01 08 18 38 40 59 14 18 83 FE 23
+19 83 FA 23 39 40 00 10 29 83 89 43 00 20 FC 23
+B0 12 0E C4 B2 40 81 00 00 05 92 42 02 18 06 05
+92 42 04 18 08 05 92 C3 00 05 3F 40 80 20 30 12
+D4 CF 5A 3F 24 CD 86 5B 54 48 45 4E 5D 00 30 4D
+0C 4E 38 4F 3B 4F 39 4F 0E 4B 0E 5C 10 24 1B 83
+06 30 1C 83 04 30 19 53 F9 98 FF FF F5 27 2D 4D
+3E 4F 30 4D 2F 53 9F 83 00 00 F9 23 2F 53 2D 53
+F7 3F F6 D0 86 5B 45 4C 53 45 5D 00 0D 12 87 12
+24 C4 00 00 AA C6 70 CA F2 C7 62 CA 68 C6 4C C4
+8E D1 70 C6 2E C4 06 5B 54 48 45 4E 5D 00 00 D1
+68 D1 24 D1 46 D1 26 C7 70 C6 2E C4 06 5B 45 4C
+53 45 5D 00 00 D1 7E D1 24 D1 44 D1 26 C7 2E C4
+04 5B 49 46 5D 00 00 D1 46 D1 48 C4 44 D1 22 C6
+2E C4 05 0D 0A 6B 6F 20 00 C6 D4 C4 C4 C4 48 C4
+46 D1 34 D1 84 5B 49 46 5D 00 0E 93 3E 4F C6 27
+30 4D 2F 53 30 4D A4 D1 89 5B 44 45 46 49 4E 45
+44 5D 0D 12 87 12 70 CA F2 C7 4A C8 B2 D1 26 C7
+B8 D1 8B 5B 55 4E 44 45 46 49 4E 45 44 5D 0D 12
+87 12 C2 D1 E6 D1 3D 41 30 40 B6 C6 38 40 C0 21
+0A 4E 39 48 2E 48 09 5E 1E 52 C4 21 09 9E 03 24
+7A 9E FC 27 1E 83 0A 4E 2A 88 82 4A C4 21 30 4D
+1C 15 87 12 F2 C7 4A C8 42 C4 24 D2 06 C9 4C C4
+00 CC 3E D2 26 D2 39 4E 39 80 86 12 08 24 19 53
+02 20 2E 4E 04 3C 2E 53 19 53 01 24 2E 82 1B 17
+30 41 3E 40 28 00 B0 12 10 D2 19 42 C6 21 A2 53
+C6 21 89 4E 00 00 3E 40 29 00 1C 15 12 12 C4 21
+92 53 C4 21 87 12 F2 C7 06 C9 4C C4 7A D2 70 D2
+21 53 3E 90 10 00 80 2D E2 2B 7C D2 B2 41 C4 21
+DE 3F 0D 12 87 12 70 CA EC D1 8C D2 0C 43 1B 42
+C6 21 A2 53 C6 21 6A 4E 3E 4F 7A 90 23 00 27 20
+92 53 C4 21 B0 12 10 D2 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 C6 21
+A2 53 C6 21 89 4E 00 00 3E 4F 3D 41 30 4D 7A 90
+26 00 07 20 3C 40 10 02 92 53 C4 21 B0 12 10 D2
+ED 3F 7A 90 40 00 16 20 3C 40 20 00 92 53 C4 21
+B0 12 5A D2 0C 20 3C 50 10 00 3E 40 2B 00 B0 12
+5A D2 92 92 C0 21 C4 21 02 24 92 53 C4 21 8E 10
+0C 5E DA 3F B0 12 5A D2 FA 23 3C 50 10 00 B0 12
+42 D2 EF 3F 0C 43 1B 42 C6 21 A2 53 C6 21 0D 12
+87 12 70 CA EC D1 58 D3 FE 90 26 00 00 00 3E 40
+20 00 03 20 3C 50 82 00 C7 3F B0 12 5A D2 E0 23
+3C 50 80 00 B0 12 42 D2 DB 3F 00 00 04 52 45 54
+49 00 0D 12 87 12 24 C4 00 13 F8 C9 26 C7 24 C4
+2C 00 82 D2 4E D3 98 D3 09 4B 2E 4E 0E DC A2 3F
+F6 CD 03 4D 4F 56 84 12 8E D3 00 40 A2 D3 05 4D
+4F 56 2E 42 84 12 8E D3 40 40 00 00 03 41 44 44
+84 12 8E D3 00 50 BC D3 05 41 44 44 2E 42 84 12
+8E D3 40 50 C8 D3 04 41 44 44 43 00 84 12 8E D3
+00 60 D6 D3 06 41 44 44 43 2E 42 00 84 12 8E D3
+40 60 7C D3 04 53 55 42 43 00 84 12 8E D3 00 70
+F4 D3 06 53 55 42 43 2E 42 00 84 12 8E D3 40 70
+02 D4 03 53 55 42 84 12 8E D3 00 80 12 D4 05 53
+55 42 2E 42 84 12 8E D3 40 80 D2 CD 03 43 4D 50
+84 12 8E D3 00 90 2C D4 05 43 4D 50 2E 42 84 12
+8E D3 40 90 BE CD 04 44 41 44 44 00 84 12 8E D3
+00 A0 46 D4 06 44 41 44 44 2E 42 00 84 12 8E D3
+40 A0 38 D4 03 42 49 54 84 12 8E D3 00 B0 64 D4
+05 42 49 54 2E 42 84 12 8E D3 40 B0 70 D4 03 42
+49 43 84 12 8E D3 00 C0 7E D4 05 42 49 43 2E 42
+84 12 8E D3 40 C0 8A D4 03 42 49 53 84 12 8E D3
+00 D0 98 D4 05 42 49 53 2E 42 84 12 8E D3 40 D0
+00 00 03 58 4F 52 84 12 8E D3 00 E0 B2 D4 05 58
+4F 52 2E 42 84 12 8E D3 40 E0 E4 D3 03 41 4E 44
+84 12 8E D3 00 F0 CC D4 05 41 4E 44 2E 42 84 12
+8E D3 40 F0 70 CA 82 D2 EA D4 0A 4C 3C F0 70 00
+8A 10 3A F0 0F 00 0C DA 4F 3F 1E D4 03 52 52 43
+84 12 E4 D4 00 10 FC D4 05 52 52 43 2E 42 84 12
+E4 D4 40 10 08 D5 04 53 57 50 42 00 84 12 E4 D4
+80 10 16 D5 03 52 52 41 84 12 E4 D4 00 11 24 D5
+05 52 52 41 2E 42 84 12 E4 D4 40 11 30 D5 03 53
+58 54 84 12 E4 D4 80 11 00 00 04 50 55 53 48 00
+84 12 E4 D4 00 12 4A D5 06 50 55 53 48 2E 42 00
+84 12 E4 D4 40 12 A4 D4 04 43 41 4C 4C 00 84 12
+E4 D4 80 12 1A 53 0E 4A 0D 12 87 12 9C C7 2E C4
+0D 6F 75 74 20 6F 66 20 62 6F 75 6E 64 73 7A CB
+70 CA EC D1 96 D5 92 53 C4 21 3E 40 2C 00 87 12
+F2 C7 06 C9 4C C4 00 CC 44 D3 AC D5 0A 4E 3E 4F
+1A 83 E0 33 29 4E 59 0E 0A 28 08 4C 59 0A 01 28
+0C 8A 08 8A 38 90 10 00 D5 2F 5A 0E 94 3F 2A 92
+D1 2F 8A 10 5A 06 8F 3F 3E D5 04 52 52 43 4D 00
+84 12 90 D5 50 00 DA D5 04 52 52 41 4D 00 84 12
+90 D5 50 01 E8 D5 04 52 4C 41 4D 00 84 12 90 D5
+50 02 F6 D5 04 52 52 55 4D 00 84 12 90 D5 50 03
+58 D5 05 50 55 53 48 4D 84 12 90 D5 00 15 12 D6
+04 50 4F 50 4D 00 84 12 90 D5 00 17 04 D6 03 53
+3E 3D 85 12 00 38 2E D6 02 53 3C 00 85 12 00 34
+20 D6 03 30 3E 3D 85 12 00 30 42 D6 02 30 3C 00
+85 12 00 30 00 00 02 55 3C 00 85 12 00 2C 56 D6
+03 55 3E 3D 85 12 00 28 4C D6 03 30 3C 3E 85 12
+00 24 6A D6 02 30 3D 00 85 12 00 20 00 00 02 49
+46 00 1A 42 C6 21 8A 4E 00 00 A2 53 C6 21 0E 4A
+30 4D 60 D6 04 54 48 45 4E 00 1A 42 C6 21 08 4E
+3E 4F 09 48 29 53 0A 89 0A 11 3A 90 00 02 63 2F
+88 DA 00 00 30 4D 54 D4 04 45 4C 53 45 00 1A 42
+C6 21 BA 40 00 3C 00 00 A2 53 C6 21 2F 83 8F 4A
+00 00 E3 3F 94 D6 05 55 4E 54 49 4C 3A 4F 08 4E
+3E 4F 19 42 C6 21 2A 83 0A 89 0A 11 3A 90 00 FE
+42 3B 3A F0 FF 03 08 DA 89 48 00 00 A2 53 C6 21
+30 4D D8 D4 05 41 47 41 49 4E 0A 4E 38 40 00 3C
+E7 3F 00 00 05 57 48 49 4C 45 0D 12 87 12 82 D6
+82 C6 26 C7 38 D6 06 52 45 50 45 41 54 00 0D 12
+87 12 0A D7 9A D6 26 C7 3A D7 3D 41 08 4E 3E 4F
+2A 48 B2 92 C4 21 CB 2F 98 42 C6 21 00 00 30 4D
+68 D5 03 42 57 31 84 12 38 D7 00 00 52 D7 03 42
+57 32 84 12 38 D7 00 00 5E D7 03 42 57 33 84 12
+38 D7 00 00 76 D7 3D 41 1A 42 C6 21 28 4E B2 92
+C4 21 8E 2B BA 4F 00 00 A2 53 C6 21 8E 4A 00 00
+3E 4F 30 4D 00 00 03 46 57 31 84 12 74 D7 00 00
+96 D7 03 46 57 32 84 12 74 D7 00 00 A2 D7 03 46
+57 33 84 12 74 D7 00 00 AE D7 04 47 4F 54 4F 00
+2F 83 8F 4E 00 00 3E 40 00 3C 0D 12 87 12 F0 CB
+18 CA 26 C7 00 00 05 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
 @FFFE
-9E D2
+6E D0
 q
index 1c2bd24..eeed07a 100644 (file)
 @1800
-10 00 04 00 51 55 40 1F 05 00 18 00 56 DA D0 D0
-2D 01 6B 30 B6 C6 C8 C6
+10 00 04 00 51 55 40 1F 05 00 18 00 F4 D7 88 CE
+2E 01 6B 30 06 C5 18 C5 D4 CF
 @C400
-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 3A 41 0D 12 0D 4A
-30 4D 00 00 04 45 58 49 54 00 3D 41 30 4D 24 C4
-03 44 55 50 2F 83 8F 4E 00 00 30 4D 00 00 04 32
-44 55 50 00 8F 4E FE FF AF 4F FC FF 2F 82 30 4D
-00 00 04 3F 44 55 50 00 0E 93 EC 23 30 4D 30 C4
-04 44 52 4F 50 00 3E 4F 30 4D 2F 53 30 4D 3E C4
-04 53 57 41 50 00 2A 4F 8F 4E 00 00 0E 4A 30 4D
-52 C4 02 3E 52 00 0E 12 3E 4F 30 4D 70 C4 02 52
-3E 00 2F 83 8F 4E 00 00 3E 41 30 4D 60 C4 05 44
-45 50 54 48 8F 4E FE FF 3E 40 80 20 0E 8F 0E 11
-2F 83 30 4D 00 00 01 2D 3E 8F 3E E3 1E 53 30 4D
-00 00 02 31 2B 00 1E 53 30 4D C2 C4 02 31 2D 00
-1E 83 30 4D 3E F3 06 34 BF E3 00 00 3E E3 9F 53
-00 00 0E 63 30 4D 00 00 01 40 2E 4E 30 4D E8 C4
-01 21 BE 4F 00 00 3E 4F 30 4D CC C4 02 30 3D 00
-1E 83 0E 7E 30 4D FC C4 02 30 3C 00 0E 5E 0E 7E
-3E E3 30 4D 00 00 01 3D 3E 8F FA 27 0E F3 30 4D
-00 00 02 55 3C 00 3E 8F F9 2B 01 24 3E 43 30 4D
-16 C5 02 3C 23 00 B2 40 B2 21 B2 21 30 4D 0B 4E
+30 40 04 C4 B0 12 06 C5 12 D2 0A 18 F9 3F 39 40
+26 00 29 83 B9 40 6E D0 DA FF FB 23 B2 40 68 C5
+E4 FF 30 41 2F 83 8F 4E 00 00 3E 4D 30 4D 2F 82
+8F 4E 02 00 7E 4D 8F 4D 00 00 0D 5E 1D B3 0D 63
+30 4D 0E 93 3E 4F 05 24 2D 4D 30 4D 0E 93 3E 4F
+FB 27 2D 53 30 4D 39 40 00 80 39 8F 08 4E 3E 4F
+08 59 19 15 30 4D 81 5E 00 00 3E 4F 32 B0 00 01
+EB 27 21 52 2D 53 30 4D 91 53 00 00 F7 3F 0B 4E
 1C 4F 02 00 2E 4F 0A 43 34 40 20 00 0E 93 04 20
 04 11 0E 4C 0C 43 09 43 0A 9B 01 28 0A 8B 09 69
 08 68 14 83 07 30 0C 5C 0E 6E 0A 6A F5 2B 0A 8B
-12 D3 F5 3F 34 40 00 C4 8F 4A 02 00 8F 49 00 00
-0E 48 30 41 00 00 01 23 1B 42 DC 21 2C 4F 2F 83
-B0 12 46 C5 BF 4F 00 00 7A 90 0A 00 02 28 7A 50
-07 00 7A 50 30 00 92 83 B2 21 18 42 B2 21 C8 4A
-00 00 30 4D 86 C5 02 23 53 00 87 12 88 C5 C0 C5
-2D 83 09 93 E3 23 0E 93 E1 23 3D 41 30 4D B6 C5
-02 23 3E 00 9F 42 B2 21 00 00 3E 40 B2 21 2E 8F
-30 4D 00 00 04 48 4F 4C 44 00 0A 4E 3E 4F DB 3F
-8E C4 04 53 49 47 4E 00 0E 93 3E 4F 3A 40 2D 00
-D2 33 30 4D 87 12 36 C5 34 C4 86 C4 D4 C4 BA C5
-92 C4 F8 C5 D4 C5 D6 C7 42 CB 82 C7 2A C4 22 C5
-02 55 2E 00 08 43 2F 83 8F 4E 00 00 0E 48 EA 3F
-00 00 01 2E 0E 93 F6 37 38 43 F5 3F 2D 4D 30 4D
-0E 93 3E 4F FB 27 2D 53 30 4D 0E 93 3E 4F F6 23
-2D 53 30 4D 39 40 00 80 39 8F 08 4E 3E 4F 08 59
-19 15 30 4D 81 5E 00 00 3E 4F 32 B0 00 01 E6 27
-2D 53 21 52 30 4D 91 53 00 00 F7 3F E4 C5 01 49
-2F 83 8F 4E 00 00 2E 41 1E 81 02 00 30 4D 00 00
-03 4B 45 59 30 40 98 C6 18 42 0C 05 2F 83 8F 4E
-00 00 B0 12 B6 C6 92 B3 1C 05 FD 27 1E 42 0C 05
-B0 12 C8 C6 30 4D A2 B3 1C 05 FD 27 B2 40 11 00
-0E 05 E2 C2 22 02 30 41 B2 40 13 00 0E 05 E2 D2
-22 02 30 41 00 00 05 53 4C 45 45 50 30 40 E0 C6
-B0 12 B6 C6 12 D2 0A 18 F9 3F F0 C4 06 41 43 43
-45 50 54 00 3C 40 64 C7 3B 40 2E C7 2D 15 0A 4E
-2E 4F 0A 5E 3B 40 0D 00 3C 40 20 00 3D 40 58 C7
-92 B3 1C 05 05 24 18 42 0C 05 38 90 0A 00 CB 23
-21 53 3D 15 DB 3F 21 52 3A 17 58 42 0C 05 48 9C
-08 2C 48 9B C9 27 78 92 11 20 2E 9F 0F 24 1E 83
-05 3C 0E 9A 03 24 CE 48 00 00 1E 53 A2 B3 1C 05
-FD 27 82 48 0E 05 30 4D 5A C7 2D 83 92 B3 1C 05
-E4 23 FC 27 82 93 DE 21 02 24 92 53 DE 21 3E 8F
-3D 41 B2 40 18 00 0A 18 30 4D 9E C4 04 45 4D 49
-54 00 30 40 86 C7 08 4E 3E 4F E0 3F 3F 80 06 00
-8F 4E 04 00 3E 40 54 00 BF 40 3C 21 00 00 AF 4F
-02 00 A8 3F 7C C7 04 45 43 48 4F 00 B2 40 82 48
-52 C7 82 43 DE 21 30 4D 32 C6 06 4E 4F 45 43 48
-4F 00 B2 40 30 4D 52 C7 92 43 DE 21 30 4D 20 C6
-04 54 59 50 45 00 0E 93 0F 24 1E 15 3D 40 EC C7
-28 4F 7E 48 8F 48 00 00 2F 83 CB 3F EE C7 2D 83
-91 83 02 00 F5 23 1D 17 2F 53 3E 4F 30 4D D0 C5
-02 43 52 00 30 40 08 C8 87 12 1E C8 02 0D 0A 00
-D6 C7 2A C4 2F 83 8F 4E 00 00 3E 4D 30 4D 2F 82
-8F 4E 02 00 7E 4D 8F 4D 00 00 0D 5E 1D B3 0D 63
-30 4D F2 C5 82 53 22 00 82 43 B4 21 87 12 14 C8
-1E C8 B0 CA 14 C8 22 00 80 C8 4C C8 B2 40 20 00
-B4 21 6E 4E 1E 53 1E B3 82 6E C6 21 3D 41 3E 4F
-30 4D BA C7 82 2E 22 00 87 12 38 C8 14 C8 D6 C7
-B0 CA 2A C4 48 43 05 3C 00 00 04 57 4F 52 44 00
-48 4E 19 42 C0 21 1A 42 C2 21 09 5A 1A 52 C4 21
-09 9A 03 24 7E 9A FC 27 1A 83 4E F8 06 20 0E 4A
-1A 82 C2 21 82 4A C4 21 30 4D 18 42 C6 21 3B 40
-60 00 C8 4C 00 00 09 9A 0C 24 7C 4A 4E 9C 09 24
-18 53 4B 9C F6 2F 7C 90 7B 00 F3 2F 5C 82 B4 21
-F0 3F 1A 82 C2 21 82 4A C4 21 1E 42 C6 21 08 8E
-CE 48 00 00 30 4D 00 00 04 46 49 4E 44 00 2F 83
-0C 4E 65 4C 74 40 80 00 3B 40 CA 21 3E 4B 0E 93
-1E 24 58 4C 01 00 78 F0 1E 00 0E 58 2E 53 1E 4E
-FE FF 0E 93 F3 27 09 4E 78 49 48 C4 48 95 F7 23
-0A 4C FA 99 01 00 F3 23 1A 53 58 83 FA 23 19 B3
-09 63 0C 49 6A 4E 1E 43 4A 93 01 30 2E 83 8F 4C
-00 00 35 40 0E C4 34 40 00 C4 30 4D 82 C4 07 3E
-4E 55 4D 42 45 52 3C 4F 38 4F 29 4F 2F 82 1B 42
-DC 21 6A 4C 7A 80 30 00 7A 90 0A 00 05 28 7A 80
-07 00 7A 90 0A 00 12 28 0A 9B 22 C3 0F 2C 82 49
-D0 04 82 48 D2 04 82 4B C8 04 19 42 E4 04 18 42
-E6 04 09 5A 08 63 1C 53 1E 83 E3 23 8F 4C 00 00
-8F 48 02 00 8F 49 04 00 30 4D 32 C0 00 02 1B 42
-DC 21 0C 43 2D 15 3D 40 F4 C9 09 43 08 43 3F 82
-8F 4E 06 00 0C 4E 7E 4C 6A 4C 7A 90 2D 00 04 28
-C9 23 B1 43 02 00 DF 3F 2B 43 7A 80 25 00 07 24
-3B 52 6A 53 04 24 3B 40 10 00 5A 83 BA 23 1C 53
-1E 83 EA 3F F6 C9 2F 24 2D 83 7A 90 28 00 CB 27
-32 D0 00 02 7A 90 F7 00 C6 27 7A 90 F5 00 23 20
-0A 4E 09 43 8F 49 02 00 5A 83 09 4A 09 5C 69 49
-79 80 30 00 79 90 0A 00 05 28 79 80 07 00 79 90
-0A 00 0A 28 09 9B 08 2C 8F 49 00 00 0E 4B 2C 15
-B0 12 3E C5 2A 17 E6 3F 9F 4F 04 00 02 00 AF 4F
-04 00 0E 4A 4E 93 2B 17 0E 4C 82 4B DC 21 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 7E C6 04 48 45 52 45 00
-2F 83 8F 4E 00 00 1E 42 C6 21 30 4D B6 C4 01 2C
-1A 42 C6 21 8A 4E 00 00 A2 53 C6 21 3E 4F 30 4D
-EC C6 05 41 4C 4C 4F 54 82 5E C6 21 3E 4F 30 4D
-A6 C7 07 45 58 45 43 55 54 45 0A 4E 3E 4F 00 4A
-AE CA 87 4C 49 54 45 52 41 4C 82 93 BE 21 0C 24
-1A 42 C6 21 A2 52 C6 21 BA 40 14 C8 00 00 8A 4E
-02 00 3E 4F 32 B0 00 02 32 C0 00 02 06 24 19 4A
-02 00 8A 4E 02 00 0E 49 EB 3F 30 4D 00 C8 05 43
-4F 55 4E 54 2F 83 1E 53 8F 4E 00 00 5E 4E FF FF
-30 4D 82 4E C0 21 B2 4F C2 21 3E 4F 82 43 C4 21
-30 4D 85 12 20 00 87 12 32 CB 42 CB 80 C8 50 CB
-3D 40 58 CB CC 22 82 3E 5A CB 0A 4E 3E 4F 3D 40
-70 CB 23 27 3D 40 4A CB 1A E2 BE 21 A1 27 B5 23
-72 CB 3E 4F 3D 40 4A CB B8 23 DE 53 00 00 68 4E
-08 5E F8 40 3F 00 00 00 3D 40 26 CE CB 3F D2 CA
+12 D3 F5 3F 34 40 EC C4 8F 4A 02 00 8F 49 00 00
+0E 48 30 41 82 4E C0 21 B2 4F C2 21 3E 4F 82 43
+C4 21 30 4D 3F 80 06 00 8F 4E 04 00 3E 40 54 00
+BF 40 3C 21 00 00 AF 4F 02 00 24 3C 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 A2 B3 1C 05 FD 27 B2 40 11 00
+0E 05 E2 C2 22 02 30 41 A2 B3 1C 05 FD 27 B2 40
+13 00 0E 05 E2 D2 22 02 30 41 00 00 06 41 43 43
+45 50 54 00 3C 40 A6 C5 3B 40 70 C5 2D 15 0A 4E
+2E 4F 0A 5E 3B 40 0D 00 3C 40 20 00 3D 40 9A C5
+92 B3 1C 05 05 24 18 42 0C 05 38 90 0A 00 D3 23
+21 53 3D 15 30 40 00 C4 21 52 3A 17 58 42 0C 05
+48 9C 08 2C 48 9B D0 27 78 92 11 20 2E 9F 0F 24
+1E 83 05 3C 0E 9A 03 24 CE 48 00 00 1E 53 A2 B3
+1C 05 FD 27 82 48 0E 05 30 4D 9C C5 2D 83 92 B3
+1C 05 E4 23 FC 27 82 93 DE 21 02 24 92 53 DE 21
+3E 8F 3D 41 B2 40 18 00 0A 18 30 4D 00 00 04 45
+4D 49 54 00 30 40 C8 C5 08 4E 3E 4F E0 3F BE C5
+04 45 43 48 4F 00 B2 40 82 48 94 C5 82 43 DE 21
+30 4D 00 00 06 4E 4F 45 43 48 4F 00 B2 40 30 4D
+94 C5 92 43 DE 21 30 4D 00 00 04 54 59 50 45 00
+0E 93 0F 24 1E 15 3D 40 16 C6 28 4F 7E 48 8F 48
+00 00 2F 83 D7 3F 18 C6 2D 83 91 83 02 00 F5 23
+1D 17 2F 53 3E 4F 30 4D 00 00 02 43 52 00 30 40
+32 C6 0D 12 87 12 2E C4 02 0D 0A 00 00 C6 26 C7
+00 00 03 4B 45 59 30 40 4A C6 18 42 0C 05 2F 83
+8F 4E 00 00 B0 12 06 C5 92 B3 1C 05 FD 27 1E 42
+0C 05 B0 12 18 C5 30 4D 2F 83 8F 4E 00 00 30 4D
+8F 4E FE FF AF 4F FC FF 2F 82 30 4D 0E 93 F4 23
+30 4D 2A 4F 8F 4E 00 00 0E 4A 30 4D 8F 4E FE FF
+3E 40 80 20 0E 8F 0E 11 2F 83 30 4D 2F 83 8F 4E
+00 00 3E 41 30 4D 3E 8F 3E E3 1E 53 30 4D BE 4F
+00 00 3E 4F 30 4D 1E 83 0E 7E 30 4D 0E 5E 0E 7E
+3E E3 30 4D 3E 8F 03 24 3E 43 01 2C 0E F3 30 4D
+00 00 02 3C 23 00 B2 40 B2 21 B2 21 30 4D 2A C6
+01 23 1B 42 DC 21 2C 4F 2F 83 B0 12 86 C4 BF 4F
+00 00 7A 90 0A 00 02 28 7A 50 07 00 7A 50 30 00
+92 83 B2 21 18 42 B2 21 C8 4A 00 00 30 4D E0 C6
+02 23 53 00 0D 12 87 12 E2 C6 1C C7 2D 83 09 93
+E2 23 0E 93 E0 23 3D 41 30 4D 10 C7 02 23 3E 00
+9F 42 B2 21 00 00 3E 40 B2 21 2E 8F 30 4D 00 00
+04 48 4F 4C 44 00 4A 4E 3E 4F DA 3F 00 00 04 53
+49 47 4E 00 0E 93 3E 4F 7A 40 2D 00 D1 33 30 4D
+FA C5 02 55 2E 00 08 43 2F 83 8F 4E 00 00 0E 48
+0D 12 0E 12 3E F3 06 34 BF E3 00 00 3E E3 9F 53
+00 00 0E 63 87 12 D6 C6 14 C7 9C C6 54 C7 30 C7
+00 C6 70 CA C4 C5 26 C7 E4 C5 01 2E 0E 93 E3 37
+38 43 E2 3F 4E C7 82 53 22 00 82 43 B4 21 0D 12
+87 12 24 C4 2E C4 F8 C9 24 C4 22 00 F2 C7 C0 C7
+B2 40 20 00 B4 21 6E 4E 1E 53 1E B3 82 6E C6 21
+3D 41 3E 4F 30 4D 9A C7 82 2E 22 00 0D 12 87 12
+AA C7 24 C4 00 C6 F8 C9 26 C7 00 00 04 57 4F 52
+44 00 3C 40 C0 21 39 4C 3A 4C 09 5A 3A 5C 28 4C
+09 9A 15 24 7E 9A FC 27 1A 83 3B 40 60 00 C8 4C
+00 00 09 9A 0C 24 7C 4A 4E 9C 09 24 18 53 4B 9C
+F6 2F 7C 90 7B 00 F3 2F 5C 82 B4 21 F0 3F 1A 82
+C2 21 82 4A C4 21 1E 42 C6 21 08 8E CE 48 00 00
+30 4D 00 00 04 46 49 4E 44 00 2F 83 0C 4E 65 4C
+74 40 80 00 3B 40 CA 21 3E 4B 0E 93 1E 24 58 4C
+01 00 78 F0 1E 00 0E 58 2E 53 1E 4E FE FF 0E 93
+F3 27 09 4E 78 49 48 C4 48 95 F7 23 0A 4C FA 99
+01 00 F3 23 1A 53 58 83 FA 23 19 B3 09 63 0C 49
+6A 4E 1E 43 4A 93 01 30 2E 83 8F 4C 00 00 35 40
+FA C4 34 40 EC C4 30 4D 00 00 07 3E 4E 55 4D 42
+45 52 3C 4F 38 4F 29 4F 2F 82 1B 42 DC 21 6A 4C
+7A 80 30 00 7A 90 0A 00 05 28 7A 80 07 00 7A 90
+0A 00 12 28 0A 9B 22 C3 0F 2C 82 49 D0 04 82 48
+D2 04 82 4B C8 04 19 42 E4 04 18 42 E6 04 09 5A
+08 63 1C 53 1E 83 E3 23 8F 4C 00 00 8F 48 02 00
+8F 49 04 00 30 4D 32 C0 00 02 1B 42 DC 21 0C 43
+2D 15 3D 40 50 C9 09 43 08 43 3F 82 8F 4E 06 00
+0C 4E 7E 4C 6A 4C 7A 90 2D 00 04 28 C9 23 B1 43
+02 00 0B 3C 2B 43 7A 80 25 00 07 24 3B 52 6A 53
+04 24 3B 40 10 00 5A 83 BA 23 1C 53 1E 83 EA 3F
+52 C9 2F 24 2D 83 7A 90 28 00 CB 27 32 D0 00 02
+7A 90 F7 00 C6 27 7A 90 F5 00 23 20 0A 4E 09 43
+8F 49 02 00 5A 83 09 4A 09 5C 69 49 79 80 30 00
+79 90 0A 00 05 28 79 80 07 00 79 90 0A 00 0A 28
+09 9B 08 2C 8F 49 00 00 0E 4B 2C 15 B0 12 7E C4
+2A 17 E6 3F 9F 4F 04 00 02 00 AF 4F 04 00 0E 4A
+4E 93 2B 17 0E 4C 82 4B DC 21 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 00 00 01 2C 1A 42 C6 21 8A 4E 00 00
+A2 53 C6 21 3E 4F 30 4D 2C C5 05 41 4C 4C 4F 54
+82 5E C6 21 3E 4F 30 4D 0A 4E 3E 4F 00 4A F6 C9
+87 4C 49 54 45 52 41 4C 82 93 BE 21 0C 24 1A 42
+C6 21 A2 52 C6 21 BA 40 24 C4 00 00 8A 4E 02 00
+3E 4F 32 B0 00 02 32 C0 00 02 06 24 19 4A 02 00
+8A 4E 02 00 0E 49 EB 3F 30 4D 2C C7 05 43 4F 55
+4E 54 2F 83 1E 53 8F 4E 00 00 5E 4E FF FF 30 4D
+85 12 20 00 0D 12 87 12 C4 C4 70 CA F2 C7 80 CA
+3D 40 88 CA E2 22 A4 26 8A CA 0A 4E 3E 4F 3D 40
+A0 CA 39 27 3D 40 7A CA 1A E2 BE 21 BD 23 AC 27
+A2 CA 3E 4F 3D 40 7A CA BF 23 DE 53 00 00 68 4E
+08 5E F8 40 3F 00 00 00 3D 40 20 CD D2 3F D0 C5
 08 45 56 41 4C 55 41 54 45 00 39 40 C0 21 3C 49
-3B 49 3A 49 3D 15 B0 12 2A C4 46 CB AE CB B2 41
-C4 21 B2 41 C2 21 B2 41 C0 21 3D 41 30 4D 85 12
-BE 21 08 C5 04 51 55 49 54 00 82 43 08 18 31 40
-E0 20 B2 40 00 20 00 20 82 43 BE 21 B0 12 2A C4
-04 C8 8C C7 42 CB 82 C7 46 CB A4 C4 0C C5 1E C8
-0C 73 74 61 63 6B 20 65 6D 70 74 79 21 00 40 CC
-14 C8 30 FF A0 CA 26 C5 1E C8 0A 46 52 41 4D 20
-66 75 6C 6C 21 00 40 CC 3C C6 E0 CB C2 CA 05 41
-42 4F 52 54 3F 40 80 20 D0 3F 1E CC 86 41 42 4F
-52 54 22 00 87 12 38 C8 14 C8 40 CC B0 CA 2A C4
-8F 93 02 00 03 20 2F 52 3E 4F 30 4D B0 12 C8 D1
-B0 12 B6 C6 92 C3 1C 05 38 40 50 55 39 42 03 43
-19 83 FD 23 18 83 FA 23 92 B3 1C 05 F3 23 87 12
-42 D1 14 C8 DE 21 EA C4 AC C7 1E C8 04 1B 5B 37
-6D 00 D6 C7 58 C4 40 C6 9A CC 04 C8 1E C8 05 6C
-69 6E 65 3A D6 C7 D0 C4 24 C6 D6 C7 1E C8 04 1B
-5B 30 6D 00 D6 C7 24 CC 00 00 83 5B 27 5D 87 12
-C0 CC 14 C8 14 C8 B0 CA B0 CA 2A C4 E8 C8 01 27
-87 12 42 CB 80 C8 EE C8 40 C6 CE CC 2A C4 7A CB
-32 C5 81 5C 92 42 C0 21 C4 21 30 4D AA CC 81 5B
-82 43 BE 21 30 4D D2 CC 01 5D B2 43 BE 21 30 4D
-BE 4F 02 00 3E 4F 30 4D 9A CA 82 49 53 00 87 12
-BE CB EA C4 40 C6 12 CD AE CC 14 C8 F0 CC B0 CA
-2A C4 C0 CC F0 CC 2A C4 FA CC 09 49 4D 4D 45 44
-49 41 54 45 1A 42 B6 21 FA D0 80 00 00 00 30 4D
-C4 CB 88 50 4F 53 54 50 4F 4E 45 00 87 12 42 CB
-80 C8 EE C8 58 C4 40 C6 CE CC 0C C5 40 C6 5C CD
-14 C8 14 C8 B0 CA B0 CA 14 C8 B0 CA B0 CA 2A C4
-DE CC 81 3B 82 93 BE 21 B5 27 87 12 14 C8 2A C4
-B0 CA FA CD E0 CC 2A C4 62 CD 07 3A 4E 4F 4E 41
-4D 45 30 12 A0 CD 2F 83 8F 4E 00 00 1E 42 C6 21
-1E B3 0E 63 0A 4E 39 40 00 02 38 40 02 02 21 3C
-BA 40 87 12 FC FF A2 83 C6 21 B2 43 BE 21 30 4D
-7A CD 01 3A 30 12 A0 CD 92 B3 C6 21 A2 63 C6 21
-87 12 42 CB 80 C8 C8 CD 3D 41 08 4E 7A 4E 5A D3
-5A 53 0A 58 19 42 DA 21 6E 4E 3E F0 1E 00 09 5E
-3E 4F 82 48 B6 21 82 49 B8 21 82 4A BA 21 82 4F
-BC 21 2A 52 82 4A C6 21 30 41 82 9F BC 21 09 20
-18 42 B6 21 19 42 B8 21 A8 49 FE FF 89 48 00 00
-30 4D 87 12 1E C8 0F 73 74 61 63 6B 20 6D 69 73
-6D 61 74 63 68 21 4C CC 90 CB 05 44 45 46 45 52
-B0 12 B8 CD BA 40 30 40 FC FF BA 40 AE CD FE FF
-E3 3F 1E CB 06 43 52 45 41 54 45 00 B0 12 B8 CD
-BA 40 85 12 FC FF 8A 4A FE FF D6 3F 2A CE 05 44
-4F 45 53 3E 1A 42 BA 21 BA 40 84 12 00 00 8A 4D
-02 00 3D 41 30 4D 4E C9 05 3E 42 4F 44 59 2E 52
-30 4D 44 CE 04 43 4F 44 45 00 B0 12 B8 CD A2 82
-C6 21 87 12 D2 D0 AC D0 2A C4 84 CE 07 43 4F 44
-45 4E 4E 4D B0 12 86 CD F2 3F 00 00 07 45 4E 44
-43 4F 44 45 87 12 E0 D0 FA CD 2A C4 2C CC 03 41
-53 4D B2 40 B0 D0 DA 21 E0 3F AC CE 06 45 4E 44
-41 53 4D 00 87 12 B4 CE F4 D0 2A C4 00 00 05 43
-4F 4C 4F 4E 1A 42 C6 21 BA 40 87 12 00 00 A2 53
-C6 21 B2 43 BE 21 30 40 E0 D0 00 00 05 4C 4F 32
-48 49 1A 42 C6 21 BA 40 B0 12 00 00 BA 40 2A C4
-02 00 A2 52 C6 21 ED 3F 1A CD 85 48 49 32 4C 4F
-87 12 A0 CA 4A CF B0 CA E0 CC D2 D0 AC D0 2A C4
-1A CF 82 49 46 00 2F 83 8F 4E 00 00 1E 42 C6 21
-A2 52 C6 21 BE 40 40 C6 00 00 2E 53 30 4D 5E CE
-84 45 4C 53 45 00 A2 52 C6 21 1A 42 C6 21 BA 40
-3C C6 FC FF 8E 4A 00 00 2A 83 0E 4A 30 4D D0 C7
-84 54 48 45 4E 00 9E 42 C6 21 00 00 3E 4F 30 4D
-9C CE 85 42 45 47 49 4E 30 40 A0 CA 70 CF 85 55
-4E 54 49 4C 39 40 40 C6 A2 52 C6 21 1A 42 C6 21
-8A 49 FC FF 8A 4E FE FF 3E 4F 30 4D BE CE 85 41
-47 41 49 4E 39 40 3C C6 EF 3F 7A C8 85 57 48 49
-4C 45 87 12 36 CF 76 C4 2A C4 34 C8 86 52 45 50
-45 41 54 00 87 12 B4 CF 76 CF 2A C4 50 CF 82 44
-4F 00 2F 83 8F 4E 00 00 A2 53 C6 21 1E 42 C6 21
-BE 40 54 C6 FE FF A2 53 00 20 1A 42 00 20 8A 43
-00 00 30 4D E2 CA 84 4C 4F 4F 50 00 39 40 76 C6
-A2 52 C6 21 1A 42 C6 21 8A 49 FC FF 8A 4E FE FF
-1E 42 00 20 A2 83 00 20 2E 4E 0E 93 03 24 8E 4A
-00 00 F6 3F 3E 4F 30 4D 90 C6 85 2B 4C 4F 4F 50
-39 40 64 C6 E5 3F 06 D0 04 4D 4F 56 45 00 0A 4E
-38 4F 39 4F 3E 4F 0A 93 11 24 08 99 0F 24 06 2C
-F8 49 00 00 18 53 1A 83 FB 23 30 4D 08 5A 09 5A
-19 83 18 83 E8 49 00 00 1A 83 FA 23 30 4D 14 C8
-CA 21 F2 C4 2A C4 84 12 7E D0 AE CF 3C D3 DE CF
-BE CC 32 CF 3A D0 50 D4 64 C8 66 D1 80 D1 8E CF
-00 D2 00 00 22 D4 E8 CC 78 CE 00 00 84 12 7E D0
-6E D9 D0 D9 22 D9 44 DA E8 D8 00 00 18 D6 00 00
-DE D8 8E D9 40 D9 7E D9 28 D7 00 00 00 00 20 DA
-AA D0 3A 40 0C 00 39 40 CA 21 38 40 CC 21 C6 3F
-3A 40 0E 00 39 40 CC 21 38 40 CA 21 B9 3F 82 43
-CC 21 30 4D 92 42 CA 21 DA 21 30 4D 86 D0 EE D0
-F4 D0 04 D1 3A 4E 82 4A C8 21 2E 4E 82 4E C6 21
-3D 40 10 00 09 4A 08 49 29 83 18 48 FE FF 0E 98
-FC 2B 89 48 00 00 1D 83 F6 23 2A 4A 0A 93 F0 23
-3E 4F 3D 41 30 4D 32 CD 09 50 57 52 5F 53 54 41
-54 45 84 12 FC D0 D0 D0 56 DA CC CF 09 52 53 54
-5F 53 54 41 54 45 92 42 0E 18 46 D1 92 42 0C 18
-48 D1 EF 3F 38 D1 08 50 57 52 5F 48 45 52 45 00
-92 42 C8 21 46 D1 92 42 C6 21 48 D1 30 4D 4C D1
-08 52 53 54 5F 48 45 52 45 00 92 42 C8 21 0E 18
-92 42 C6 21 0C 18 EC 3F BC CF 04 57 49 50 45 00
-39 40 10 00 29 83 B9 43 80 FF FC 23 B2 40 E0 C6
-DE C6 B2 40 0A D2 08 D2 B2 40 D0 D0 0E 18 B2 40
-56 DA 0C 18 30 12 56 D1 B2 40 86 C7 84 C7 B2 40
-08 C8 06 C8 B2 40 98 C6 96 C6 B2 40 18 00 0A 18
-37 40 1A C4 36 40 92 C4 35 40 0E C4 34 40 00 C4
-B2 40 0A 00 DC 21 B2 40 20 00 B4 21 30 41 9A D1
-04 57 41 52 4D 00 30 40 0A D2 3D 40 40 D2 92 C3
-30 01 1E 42 08 18 0E 93 12 24 F2 B0 10 00 00 02
-02 20 3E E3 1E 53 F2 D0 30 00 0A 02 3E 90 0A 00
-B7 27 3E 90 16 00 B4 2F 2E 93 83 27 8C 2F 30 4D
-1E C8 06 0D 1B 5B 37 6D 23 00 D6 C7 34 C6 1E C8
-19 46 61 73 74 46 6F 72 74 68 20 C2 A9 4A 2E 4D
-2E 54 68 6F 6F 72 65 6E 73 20 D6 C7 14 C8 30 FF
-A0 CA B8 C4 24 C6 1E C8 0A 62 79 74 65 73 20 66
-72 65 65 00 3C C6 9A CC 82 CF 04 43 4F 4C 44 00
-92 B3 0A 05 FD 23 B2 40 04 A5 20 01 40 D2 B2 40
-88 5A CC 01 B2 43 02 02 B2 D3 06 02 D2 43 24 02
-F2 D3 26 02 F2 40 FD 00 22 02 E2 D2 24 02 B2 40
-00 A5 60 01 B2 40 F3 00 80 01 B2 40 07 00 82 01
-B2 40 FC 00 84 01 39 40 80 00 B2 D0 10 00 86 01
-92 D2 5E 01 08 18 38 40 59 14 18 83 FE 23 19 83
-FA 23 39 40 00 10 29 83 89 43 00 20 FC 23 39 40
-26 00 29 83 B9 40 9E D2 DA FF FB 23 B2 40 26 C7
-E4 FF B2 40 81 00 00 05 92 42 02 18 06 05 92 42
-04 18 08 05 92 C3 00 05 92 D3 1A 05 3F 40 80 20
-31 40 E0 20 30 12 06 D2 50 3F 8A D2 07 43 4F 4D
-50 41 52 45 0C 4E 38 4F 3B 4F 39 4F 0E 4B 0E 5C
-0C 24 1B 83 07 30 1C 83 07 30 19 53 F9 98 FF FF
-F5 27 02 2C 3E 43 30 4D 1E 43 30 4D B2 CD 86 5B
-54 48 45 4E 5D 00 30 4D 6E D3 86 5B 45 4C 53 45
-5D 00 87 12 14 C8 00 00 C6 C4 42 CB 80 C8 24 CB
-34 C4 40 C6 E4 D3 44 C4 1E C8 06 5B 54 48 45 4E
-5D 00 44 D3 4A C6 B4 D3 F8 C7 D0 C4 58 C4 4A C6
-8A D3 2A C4 44 C4 1E C8 06 5B 45 4C 53 45 5D 00
-44 D3 4A C6 D2 D3 F8 C7 D0 C4 58 C4 4A C6 88 D3
-2A C4 1E C8 04 5B 49 46 5D 00 44 D3 4A C6 8A D3
-3C C6 88 D3 F8 C7 1E C8 05 0D 0A 6B 6F 20 D6 C7
-8C C7 32 CB 3C C6 8A D3 7A D3 84 5B 49 46 5D 00
-0E 93 3E 4F BE 27 30 4D FA D3 89 5B 44 45 46 49
-4E 45 44 5D 87 12 42 CB 80 C8 EE C8 6A C4 2A C4
-0A D4 8B 5B 55 4E 44 45 46 49 4E 45 44 5D 87 12
-42 CB 80 C8 EE C8 6A C4 00 C5 2A C4 3E D4 3D 41
-B2 4E 0E 18 A2 4E 0C 18 3E 4F 30 40 56 D1 48 D0
-06 4D 41 52 4B 45 52 00 B0 12 B8 CD BA 40 84 12
-FC FF BA 40 3C D4 FE FF 9A 42 C8 21 00 00 28 83
-8A 48 02 00 A2 52 C6 21 30 40 00 CE 1C 15 B0 12
-2A C4 80 C8 EE C8 4A C6 92 D4 AA C9 40 C6 CE CC
-AC D4 94 D4 39 4E 39 80 86 12 08 24 19 53 02 20
-2E 4E 04 3C 2E 53 19 53 01 24 2E 82 1B 17 30 41
-3E 40 28 00 B0 12 7C D4 19 42 C6 21 A2 53 C6 21
-89 4E 00 00 3E 40 29 00 1C 15 12 12 C4 21 92 53
-C4 21 B0 12 2A C4 80 C8 AA C9 40 C6 EA D4 E0 D4
-21 53 3E 90 10 00 7D 2D E1 2B EC D4 B2 41 C4 21
-DD 3F 87 12 42 CB 74 C8 FA D4 0C 43 1B 42 C6 21
-A2 53 C6 21 6A 4E 3E 4F 7A 90 23 00 27 20 92 53
-C4 21 B0 12 7C D4 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 C6 21 A2 53
-C6 21 89 4E 00 00 3E 4F 3D 41 30 4D 7A 90 26 00
-07 20 3C 40 10 02 92 53 C4 21 B0 12 7C D4 ED 3F
-7A 90 40 00 16 20 3C 40 20 00 92 53 C4 21 B0 12
-C8 D4 0C 20 3C 50 10 00 3E 40 2B 00 B0 12 C8 D4
-92 92 C0 21 C4 21 02 24 92 53 C4 21 8E 10 0C 5E
-DA 3F B0 12 C8 D4 FA 23 3C 50 10 00 B0 12 B0 D4
-EF 3F 0C 43 1B 42 C6 21 A2 53 C6 21 87 12 42 CB
-74 C8 C4 D5 FE 90 26 00 00 00 3E 40 20 00 03 20
-3C 50 82 00 C8 3F B0 12 C8 D4 E1 23 3C 50 80 00
-B0 12 B0 D4 DC 3F D6 C6 04 52 45 54 49 00 87 12
-14 C8 00 13 B0 CA 2A C4 14 C8 2C 00 F2 D4 BC D5
-02 D6 09 4B 2E 4E 0E DC A4 3F FC CE 03 4D 4F 56
-84 12 F8 D5 00 40 0C D6 05 4D 4F 56 2E 42 84 12
-F8 D5 40 40 00 00 03 41 44 44 84 12 F8 D5 00 50
-26 D6 05 41 44 44 2E 42 84 12 F8 D5 40 50 32 D6
-04 41 44 44 43 00 84 12 F8 D5 00 60 40 D6 06 41
-44 44 43 2E 42 00 84 12 F8 D5 40 60 E8 D5 04 53
-55 42 43 00 84 12 F8 D5 00 70 5E D6 06 53 55 42
-43 2E 42 00 84 12 F8 D5 40 70 6C D6 03 53 55 42
-84 12 F8 D5 00 80 7C D6 05 53 55 42 2E 42 84 12
-F8 D5 40 80 DE CE 03 43 4D 50 84 12 F8 D5 00 90
-96 D6 05 43 4D 50 2E 42 84 12 F8 D5 40 90 CC CE
-04 44 41 44 44 00 84 12 F8 D5 00 A0 B0 D6 06 44
-41 44 44 2E 42 00 84 12 F8 D5 40 A0 A2 D6 03 42
-49 54 84 12 F8 D5 00 B0 CE D6 05 42 49 54 2E 42
-84 12 F8 D5 40 B0 DA D6 03 42 49 43 84 12 F8 D5
-00 C0 E8 D6 05 42 49 43 2E 42 84 12 F8 D5 40 C0
-F4 D6 03 42 49 53 84 12 F8 D5 00 D0 02 D7 05 42
-49 53 2E 42 84 12 F8 D5 40 D0 00 00 03 58 4F 52
-84 12 F8 D5 00 E0 1C D7 05 58 4F 52 2E 42 84 12
-F8 D5 40 E0 4E D6 03 41 4E 44 84 12 F8 D5 00 F0
-36 D7 05 41 4E 44 2E 42 84 12 F8 D5 40 F0 42 CB
-F2 D4 54 D7 0A 4C 3C F0 70 00 8A 10 3A F0 0F 00
-0C DA 4F 3F 88 D6 03 52 52 43 84 12 4E D7 00 10
-66 D7 05 52 52 43 2E 42 84 12 4E D7 40 10 72 D7
-04 53 57 50 42 00 84 12 4E D7 80 10 80 D7 03 52
-52 41 84 12 4E D7 00 11 8E D7 05 52 52 41 2E 42
-84 12 4E D7 40 11 9A D7 03 53 58 54 84 12 4E D7
-80 11 00 00 04 50 55 53 48 00 84 12 4E D7 00 12
-B4 D7 06 50 55 53 48 2E 42 00 84 12 4E D7 40 12
-0E D7 04 43 41 4C 4C 00 84 12 4E D7 80 12 1A 53
-0E 4A 87 12 34 C6 1E C8 0D 6F 75 74 20 6F 66 20
-62 6F 75 6E 64 73 4C CC 42 CB 74 C8 FE D7 92 53
-C4 21 3E 40 2C 00 B0 12 2A C4 80 C8 AA C9 40 C6
-CE CC B2 D5 16 D8 0A 4E 3E 4F 1A 83 E0 33 29 4E
-59 0E 0A 28 08 4C 59 0A 01 28 0C 8A 08 8A 38 90
-10 00 D5 2F 5A 0E 94 3F 2A 92 D1 2F 8A 10 5A 06
-8F 3F A8 D7 04 52 52 43 4D 00 84 12 F8 D7 50 00
-44 D8 04 52 52 41 4D 00 84 12 F8 D7 50 01 52 D8
-04 52 4C 41 4D 00 84 12 F8 D7 50 02 60 D8 04 52
-52 55 4D 00 84 12 F8 D7 50 03 C2 D7 05 50 55 53
-48 4D 84 12 F8 D7 00 15 7C D8 04 50 4F 50 4D 00
-84 12 F8 D7 00 17 6E D8 03 53 3E 3D 85 12 00 38
-98 D8 02 53 3C 00 85 12 00 34 8A D8 03 30 3E 3D
-85 12 00 30 AC D8 02 30 3C 00 85 12 00 30 00 00
-02 55 3C 00 85 12 00 2C C0 D8 03 55 3E 3D 85 12
-00 28 B6 D8 03 30 3C 3E 85 12 00 24 D4 D8 02 30
-3D 00 85 12 00 20 00 00 02 49 46 00 1A 42 C6 21
-8A 4E 00 00 A2 53 C6 21 0E 4A 30 4D CA D8 04 54
-48 45 4E 00 1A 42 C6 21 08 4E 3E 4F 09 48 29 53
-0A 89 0A 11 3A 90 00 02 63 2F 88 DA 00 00 30 4D
-BE D6 04 45 4C 53 45 00 1A 42 C6 21 BA 40 00 3C
-00 00 A2 53 C6 21 2F 83 8F 4A 00 00 E3 3F FE D8
-05 55 4E 54 49 4C 3A 4F 08 4E 3E 4F 19 42 C6 21
-2A 83 0A 89 0A 11 3A 90 00 FE 42 3B 3A F0 FF 03
-08 DA 89 48 00 00 A2 53 C6 21 30 4D 42 D7 05 41
-47 41 49 4E 0A 4E 38 40 00 3C E7 3F 00 00 05 57
-48 49 4C 45 87 12 EC D8 76 C4 2A C4 A2 D8 06 52
-45 50 45 41 54 00 87 12 74 D9 04 D9 2A C4 A0 D9
-3D 41 08 4E 3E 4F 2A 48 B2 92 C4 21 CD 2F 98 42
-C6 21 00 00 30 4D D2 D7 03 42 57 31 84 12 9E D9
-00 00 B8 D9 03 42 57 32 84 12 9E D9 00 00 C4 D9
-03 42 57 33 84 12 9E D9 00 00 DC D9 3D 41 1A 42
-C6 21 28 4E B2 92 C4 21 90 2B BA 4F 00 00 A2 53
-C6 21 8E 4A 00 00 3E 4F 30 4D 00 00 03 46 57 31
-84 12 DA D9 00 00 FC D9 03 46 57 32 84 12 DA D9
-00 00 08 DA 03 46 57 33 84 12 DA D9 00 00 00 00
-05 3F 47 4F 54 4F 3E 90 00 30 07 24 3E E0 00 04
-3E B0 00 10 02 24 3E E0 00 08 87 12 C0 CC DA CA
-2A C4 14 DA 04 47 4F 54 4F 00 2F 83 8F 4E 00 00
-3E 40 00 3C F2 3F
+3B 49 3A 49 3D 15 87 12 74 CA DC CA B2 41 C4 21
+B2 41 C2 21 B2 41 C0 21 3D 41 30 4D 85 12 BE 21
+00 00 04 51 55 49 54 00 82 43 08 18 31 40 E0 20
+B2 40 00 20 00 20 82 43 BE 21 87 12 2E C6 D4 C4
+70 CA C4 C5 74 CA 8C C6 BC C6 2E C4 0C 73 74 61
+63 6B 20 65 6D 70 74 79 21 00 6E CB 24 C4 40 FF
+2A CE C4 C6 2E C4 0A 46 52 41 4D 20 66 75 6C 6C
+21 00 6E CB 48 C4 0C CB 0A CA 05 41 42 4F 52 54
+3F 40 80 20 D1 3F 4A CB 86 41 42 4F 52 54 22 00
+0D 12 87 12 AA C7 24 C4 6E CB F8 C9 26 C7 8F 93
+02 00 03 20 2F 52 3E 4F 30 4D B0 12 96 CF B0 12
+06 C5 92 C3 1C 05 18 42 06 18 39 40 20 00 19 83
+FE 23 18 83 FA 23 92 B3 1C 05 F3 23 0D 12 87 12
+10 CF 24 C4 DE 21 02 C5 D6 C5 2E C4 04 1B 5B 37
+6D 00 00 C6 7C C6 4C C4 C8 CB 2E C6 2E C4 05 6C
+69 6E 65 3A 00 C6 66 C7 00 C6 2E C4 04 1B 5B 30
+6D 00 00 C6 50 CB 00 00 83 5B 27 5D 0D 12 87 12
+F0 CB 24 C4 24 C4 F8 C9 F8 C9 26 C7 44 C8 01 27
+0D 12 87 12 70 CA F2 C7 4A C8 4C C4 00 CC 26 C7
+AA CA D2 C6 81 5C 92 42 C0 21 C4 21 30 4D D8 CB
+81 5B 82 43 BE 21 30 4D 04 CC 01 5D B2 43 BE 21
+30 4D F2 CA 88 50 4F 53 54 50 4F 4E 45 00 0D 12
+87 12 70 CA F2 C7 4A C8 7C C6 4C C4 00 CC BC C6
+4C C4 50 CC 24 C4 24 C4 F8 C9 F8 C9 24 C4 F8 C9
+F8 C9 26 C7 40 C7 09 49 4D 4D 45 44 49 41 54 45
+1A 42 B6 21 FA D0 80 00 00 00 30 4D 10 CC 01 3A
+30 12 B8 CC 92 B3 C6 21 A2 63 C6 21 0D 12 87 12
+70 CA F2 C7 86 CC 3D 41 08 4E 7A 4E 5A D3 5A 53
+0A 58 19 42 DA 21 6E 4E 3E F0 1E 00 09 5E 3E 4F
+82 48 B6 21 82 49 B8 21 82 4A BA 21 82 4F BC 21
+2A 52 82 4A C6 21 30 41 BA 40 0D 12 FC FF BA 40
+87 12 FE FF B2 43 BE 21 30 4D 6E CC 07 3A 4E 4F
+4E 41 4D 45 30 12 B8 CC 2F 83 8F 4E 00 00 1E 42
+C6 21 1E B3 0E 63 0A 4E 39 40 10 02 38 40 12 02
+D7 3F 82 9F BC 21 09 20 18 42 B6 21 19 42 B8 21
+A8 49 FE FF 89 48 00 00 30 4D 0D 12 87 12 2E C4
+0F 73 74 61 63 6B 20 6D 69 73 6D 61 74 63 68 21
+7A CB CC CC 81 3B 82 93 BE 21 6D 27 0D 12 87 12
+24 C4 26 C7 F8 C9 F2 CC 12 CC 26 C7 5C CA 06 43
+52 45 41 54 45 00 B0 12 74 CC BA 40 85 12 FC FF
+8A 4A FE FF D5 3F C0 CA 05 44 4F 45 53 3E 1A 42
+BA 21 BA 40 84 12 00 00 8A 4D 02 00 3D 41 30 4D
+3E CD 04 43 4F 44 45 00 B0 12 74 CC A2 82 C6 21
+0D 12 87 12 8A CE 64 CE 26 C7 72 CD 07 43 4F 44
+45 4E 4E 4D 30 12 7C CD 9F 3F 00 00 07 45 4E 44
+43 4F 44 45 0D 12 87 12 F2 CC A4 CE 26 C7 58 CB
+03 41 53 4D B2 40 68 CE DA 21 DE 3F 9C CD 06 45
+4E 44 41 53 4D 00 0D 12 87 12 A4 CD C2 CE 26 C7
+00 00 05 43 4F 4C 4F 4E 1A 42 C6 21 BA 40 0D 12
+00 00 BA 40 87 12 02 00 A2 52 C6 21 B2 43 BE 21
+30 40 A4 CE 00 00 05 4C 4F 32 48 49 A2 83 C6 21
+1A 42 C6 21 EE 3F 56 CC 85 48 49 32 4C 4F 0D 12
+87 12 2A CE 1E CE F8 C9 12 CC 80 CD 26 C7 2E 53
+30 4D 8C CD 85 42 45 47 49 4E 2F 83 8F 4E 00 00
+1E 42 C6 21 30 4D 24 C4 CA 21 AE C6 26 C7 84 12
+36 CE B0 CD 5C D0 58 CD EE CB 08 CE 42 C6 20 CA
+D8 C7 34 CF 4E CF 62 C7 CE CF 00 00 D4 D1 1A CC
+AA C8 00 00 84 12 36 CE 06 D7 6C D7 BA D6 BC D7
+80 D6 00 00 B0 D3 00 00 76 D6 28 D7 D8 D6 16 D7
+C0 D4 00 00 00 00 D8 D7 62 CE 3A 40 0C 00 39 40
+D6 21 08 49 28 53 19 83 18 83 E8 49 00 00 1A 83
+FA 23 30 4D 3A 40 0E 00 38 40 CA 21 09 48 29 53
+F8 49 00 00 18 53 1A 83 FB 23 30 4D 82 43 CC 21
+30 4D 92 42 CA 21 DA 21 30 4D 3E CE BC CE C2 CE
+D2 CE 3A 4E 82 4A C8 21 2E 4E 82 4E C6 21 3D 40
+10 00 09 4A 08 49 29 83 18 48 FE FF 0E 98 FC 2B
+89 48 00 00 1D 83 F6 23 2A 4A 0A 93 F0 23 3E 4F
+3D 41 30 4D 24 CC 09 50 57 52 5F 53 54 41 54 45
+84 12 CA CE 88 CE F4 D7 A6 C7 09 52 53 54 5F 53
+54 41 54 45 92 42 0E 18 14 CF 92 42 0C 18 16 CF
+EF 3F 06 CF 08 50 57 52 5F 48 45 52 45 00 92 42
+C8 21 14 CF 92 42 C6 21 16 CF 30 4D 1A CF 08 52
+53 54 5F 48 45 52 45 00 92 42 C8 21 0E 18 92 42
+C6 21 0C 18 EC 3F EC C7 04 57 49 50 45 00 39 40
+10 00 29 83 B9 43 80 FF FC 23 B2 40 04 C4 02 C4
+B2 40 D8 CF D6 CF B2 40 88 CE 0E 18 B2 40 F4 D7
+0C 18 30 12 24 CF B2 40 C8 C5 C6 C5 B2 40 32 C6
+30 C6 B2 40 4A C6 48 C6 B2 40 18 00 0A 18 37 40
+26 C7 36 40 9C C6 35 40 FA C4 34 40 EC C4 B2 40
+0A 00 DC 21 B2 40 20 00 B4 21 30 41 68 CF 04 57
+41 52 4D 00 30 40 D8 CF 3D 40 12 D0 92 C3 30 01
+1E 42 08 18 0E 93 14 24 F2 B0 10 00 00 02 02 20
+3E E3 1E 53 F2 D0 30 00 0A 02 92 D3 1A 05 3E 90
+0A 00 B5 27 3E 90 16 00 B2 2F 2E 93 81 27 8A 2F
+30 4D 2E C4 07 0D 0A 1B 5B 37 6D 23 00 C6 9C C7
+2E C4 19 46 61 73 74 46 6F 72 74 68 20 C2 A9 4A
+2E 4D 2E 54 68 6F 6F 72 65 6E 73 20 00 C6 24 C4
+40 FF 2A CE A6 C6 66 C7 2E C4 0A 62 79 74 65 73
+20 66 72 65 65 00 48 C4 C8 CB 24 CE 04 43 4F 4C
+44 00 92 B3 0A 05 FD 23 B2 40 04 A5 20 01 31 40
+E0 20 B2 40 88 5A CC 01 B2 43 02 02 B2 D3 06 02
+D2 43 24 02 F2 D3 26 02 F2 40 FD 00 22 02 E2 D2
+24 02 B2 40 00 A5 60 01 B2 40 F3 00 80 01 B2 40
+07 00 82 01 B2 40 FC 00 84 01 39 40 80 00 B2 D0
+10 00 86 01 92 D2 5E 01 08 18 38 40 59 14 18 83
+FE 23 19 83 FA 23 39 40 00 10 29 83 89 43 00 20
+FC 23 B0 12 0E C4 B2 40 81 00 00 05 92 42 02 18
+06 05 92 42 04 18 08 05 92 C3 00 05 3F 40 80 20
+30 12 D4 CF 59 3F 24 CD 86 5B 54 48 45 4E 5D 00
+30 4D 0C 4E 38 4F 3B 4F 39 4F 0E 4B 0E 5C 10 24
+1B 83 06 30 1C 83 04 30 19 53 F9 98 FF FF F5 27
+2D 4D 3E 4F 30 4D 2F 53 9F 83 00 00 F9 23 2F 53
+2D 53 F7 3F F8 D0 86 5B 45 4C 53 45 5D 00 0D 12
+87 12 24 C4 00 00 AA C6 70 CA F2 C7 62 CA 68 C6
+4C C4 90 D1 70 C6 2E C4 06 5B 54 48 45 4E 5D 00
+02 D1 6A D1 26 D1 48 D1 26 C7 70 C6 2E C4 06 5B
+45 4C 53 45 5D 00 02 D1 80 D1 26 D1 46 D1 26 C7
+2E C4 04 5B 49 46 5D 00 02 D1 48 D1 48 C4 46 D1
+22 C6 2E C4 05 0D 0A 6B 6F 20 00 C6 D4 C4 C4 C4
+48 C4 48 D1 36 D1 84 5B 49 46 5D 00 0E 93 3E 4F
+C6 27 30 4D 2F 53 30 4D A6 D1 89 5B 44 45 46 49
+4E 45 44 5D 0D 12 87 12 70 CA F2 C7 4A C8 B4 D1
+26 C7 BA D1 8B 5B 55 4E 44 45 46 49 4E 45 44 5D
+0D 12 87 12 C4 D1 E8 D1 3D 41 30 40 B6 C6 38 40
+C0 21 0A 4E 39 48 2E 48 09 5E 1E 52 C4 21 09 9E
+03 24 7A 9E FC 27 1E 83 0A 4E 2A 88 82 4A C4 21
+30 4D 1C 15 87 12 F2 C7 4A C8 42 C4 26 D2 06 C9
+4C C4 00 CC 40 D2 28 D2 39 4E 39 80 86 12 08 24
+19 53 02 20 2E 4E 04 3C 2E 53 19 53 01 24 2E 82
+1B 17 30 41 3E 40 28 00 B0 12 12 D2 19 42 C6 21
+A2 53 C6 21 89 4E 00 00 3E 40 29 00 1C 15 12 12
+C4 21 92 53 C4 21 87 12 F2 C7 06 C9 4C C4 7C D2
+72 D2 21 53 3E 90 10 00 80 2D E2 2B 7E D2 B2 41
+C4 21 DE 3F 0D 12 87 12 70 CA EE D1 8E D2 0C 43
+1B 42 C6 21 A2 53 C6 21 6A 4E 3E 4F 7A 90 23 00
+27 20 92 53 C4 21 B0 12 12 D2 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
+C6 21 A2 53 C6 21 89 4E 00 00 3E 4F 3D 41 30 4D
+7A 90 26 00 07 20 3C 40 10 02 92 53 C4 21 B0 12
+12 D2 ED 3F 7A 90 40 00 16 20 3C 40 20 00 92 53
+C4 21 B0 12 5C D2 0C 20 3C 50 10 00 3E 40 2B 00
+B0 12 5C D2 92 92 C0 21 C4 21 02 24 92 53 C4 21
+8E 10 0C 5E DA 3F B0 12 5C D2 FA 23 3C 50 10 00
+B0 12 44 D2 EF 3F 0C 43 1B 42 C6 21 A2 53 C6 21
+0D 12 87 12 70 CA EE D1 5A D3 FE 90 26 00 00 00
+3E 40 20 00 03 20 3C 50 82 00 C7 3F B0 12 5C D2
+E0 23 3C 50 80 00 B0 12 44 D2 DB 3F 00 00 04 52
+45 54 49 00 0D 12 87 12 24 C4 00 13 F8 C9 26 C7
+24 C4 2C 00 84 D2 50 D3 9A D3 09 4B 2E 4E 0E DC
+A2 3F F6 CD 03 4D 4F 56 84 12 90 D3 00 40 A4 D3
+05 4D 4F 56 2E 42 84 12 90 D3 40 40 00 00 03 41
+44 44 84 12 90 D3 00 50 BE D3 05 41 44 44 2E 42
+84 12 90 D3 40 50 CA D3 04 41 44 44 43 00 84 12
+90 D3 00 60 D8 D3 06 41 44 44 43 2E 42 00 84 12
+90 D3 40 60 7E D3 04 53 55 42 43 00 84 12 90 D3
+00 70 F6 D3 06 53 55 42 43 2E 42 00 84 12 90 D3
+40 70 04 D4 03 53 55 42 84 12 90 D3 00 80 14 D4
+05 53 55 42 2E 42 84 12 90 D3 40 80 D2 CD 03 43
+4D 50 84 12 90 D3 00 90 2E D4 05 43 4D 50 2E 42
+84 12 90 D3 40 90 BE CD 04 44 41 44 44 00 84 12
+90 D3 00 A0 48 D4 06 44 41 44 44 2E 42 00 84 12
+90 D3 40 A0 3A D4 03 42 49 54 84 12 90 D3 00 B0
+66 D4 05 42 49 54 2E 42 84 12 90 D3 40 B0 72 D4
+03 42 49 43 84 12 90 D3 00 C0 80 D4 05 42 49 43
+2E 42 84 12 90 D3 40 C0 8C D4 03 42 49 53 84 12
+90 D3 00 D0 9A D4 05 42 49 53 2E 42 84 12 90 D3
+40 D0 00 00 03 58 4F 52 84 12 90 D3 00 E0 B4 D4
+05 58 4F 52 2E 42 84 12 90 D3 40 E0 E6 D3 03 41
+4E 44 84 12 90 D3 00 F0 CE D4 05 41 4E 44 2E 42
+84 12 90 D3 40 F0 70 CA 84 D2 EC D4 0A 4C 3C F0
+70 00 8A 10 3A F0 0F 00 0C DA 4F 3F 20 D4 03 52
+52 43 84 12 E6 D4 00 10 FE D4 05 52 52 43 2E 42
+84 12 E6 D4 40 10 0A D5 04 53 57 50 42 00 84 12
+E6 D4 80 10 18 D5 03 52 52 41 84 12 E6 D4 00 11
+26 D5 05 52 52 41 2E 42 84 12 E6 D4 40 11 32 D5
+03 53 58 54 84 12 E6 D4 80 11 00 00 04 50 55 53
+48 00 84 12 E6 D4 00 12 4C D5 06 50 55 53 48 2E
+42 00 84 12 E6 D4 40 12 A6 D4 04 43 41 4C 4C 00
+84 12 E6 D4 80 12 1A 53 0E 4A 0D 12 87 12 9C C7
+2E C4 0D 6F 75 74 20 6F 66 20 62 6F 75 6E 64 73
+7A CB 70 CA EE D1 98 D5 92 53 C4 21 3E 40 2C 00
+87 12 F2 C7 06 C9 4C C4 00 CC 46 D3 AE D5 0A 4E
+3E 4F 1A 83 E0 33 29 4E 59 0E 0A 28 08 4C 59 0A
+01 28 0C 8A 08 8A 38 90 10 00 D5 2F 5A 0E 94 3F
+2A 92 D1 2F 8A 10 5A 06 8F 3F 40 D5 04 52 52 43
+4D 00 84 12 92 D5 50 00 DC D5 04 52 52 41 4D 00
+84 12 92 D5 50 01 EA D5 04 52 4C 41 4D 00 84 12
+92 D5 50 02 F8 D5 04 52 52 55 4D 00 84 12 92 D5
+50 03 5A D5 05 50 55 53 48 4D 84 12 92 D5 00 15
+14 D6 04 50 4F 50 4D 00 84 12 92 D5 00 17 06 D6
+03 53 3E 3D 85 12 00 38 30 D6 02 53 3C 00 85 12
+00 34 22 D6 03 30 3E 3D 85 12 00 30 44 D6 02 30
+3C 00 85 12 00 30 00 00 02 55 3C 00 85 12 00 2C
+58 D6 03 55 3E 3D 85 12 00 28 4E D6 03 30 3C 3E
+85 12 00 24 6C D6 02 30 3D 00 85 12 00 20 00 00
+02 49 46 00 1A 42 C6 21 8A 4E 00 00 A2 53 C6 21
+0E 4A 30 4D 62 D6 04 54 48 45 4E 00 1A 42 C6 21
+08 4E 3E 4F 09 48 29 53 0A 89 0A 11 3A 90 00 02
+63 2F 88 DA 00 00 30 4D 56 D4 04 45 4C 53 45 00
+1A 42 C6 21 BA 40 00 3C 00 00 A2 53 C6 21 2F 83
+8F 4A 00 00 E3 3F 96 D6 05 55 4E 54 49 4C 3A 4F
+08 4E 3E 4F 19 42 C6 21 2A 83 0A 89 0A 11 3A 90
+00 FE 42 3B 3A F0 FF 03 08 DA 89 48 00 00 A2 53
+C6 21 30 4D DA D4 05 41 47 41 49 4E 0A 4E 38 40
+00 3C E7 3F 00 00 05 57 48 49 4C 45 0D 12 87 12
+84 D6 82 C6 26 C7 3A D6 06 52 45 50 45 41 54 00
+0D 12 87 12 0C D7 9C D6 26 C7 3C D7 3D 41 08 4E
+3E 4F 2A 48 B2 92 C4 21 CB 2F 98 42 C6 21 00 00
+30 4D 6A D5 03 42 57 31 84 12 3A D7 00 00 54 D7
+03 42 57 32 84 12 3A D7 00 00 60 D7 03 42 57 33
+84 12 3A D7 00 00 78 D7 3D 41 1A 42 C6 21 28 4E
+B2 92 C4 21 8E 2B BA 4F 00 00 A2 53 C6 21 8E 4A
+00 00 3E 4F 30 4D 00 00 03 46 57 31 84 12 76 D7
+00 00 98 D7 03 46 57 32 84 12 76 D7 00 00 A4 D7
+03 46 57 33 84 12 76 D7 00 00 B0 D7 04 47 4F 54
+4F 00 2F 83 8F 4E 00 00 3E 40 00 3C 0D 12 87 12
+F0 CB 18 CA 26 C7 00 00 05 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
 @FFFE
-9E D2
+6E D0
 q
index 66249a4..ba9cce7 100644 (file)
 @1800
-10 00 08 00 A1 F7 80 3E 05 00 18 00 6E 96 D0 8C
-2D 01 6B 30 B6 82 C8 82
+10 00 08 00 A1 F7 80 3E 05 00 18 00 12 94 88 8A
+2E 01 6B 30 06 81 18 81 D4 8B
 @8000
-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 3A 41 0D 12 0D 4A
-30 4D 00 00 04 45 58 49 54 00 3D 41 30 4D 24 80
-03 44 55 50 2F 83 8F 4E 00 00 30 4D 00 00 04 32
-44 55 50 00 8F 4E FE FF AF 4F FC FF 2F 82 30 4D
-00 00 04 3F 44 55 50 00 0E 93 EC 23 30 4D 30 80
-04 44 52 4F 50 00 3E 4F 30 4D 2F 53 30 4D 3E 80
-04 53 57 41 50 00 2A 4F 8F 4E 00 00 0E 4A 30 4D
-52 80 02 3E 52 00 0E 12 3E 4F 30 4D 70 80 02 52
-3E 00 2F 83 8F 4E 00 00 3E 41 30 4D 60 80 05 44
-45 50 54 48 8F 4E FE FF 3E 40 80 20 0E 8F 0E 11
-2F 83 30 4D 00 00 01 2D 3E 8F 3E E3 1E 53 30 4D
-00 00 02 31 2B 00 1E 53 30 4D C2 80 02 31 2D 00
-1E 83 30 4D 3E F3 06 34 BF E3 00 00 3E E3 9F 53
-00 00 0E 63 30 4D 00 00 01 40 2E 4E 30 4D E8 80
-01 21 BE 4F 00 00 3E 4F 30 4D CC 80 02 30 3D 00
-1E 83 0E 7E 30 4D FC 80 02 30 3C 00 0E 5E 0E 7E
-3E E3 30 4D 00 00 01 3D 3E 8F FA 27 0E F3 30 4D
-00 00 02 55 3C 00 3E 8F F9 2B 01 24 3E 43 30 4D
-16 81 02 3C 23 00 B2 40 B2 21 B2 21 30 4D 0B 4E
+30 40 04 80 B0 12 06 81 12 D2 0A 18 F9 3F 39 40
+38 00 29 83 B9 40 6E 8C 8C FF FB 23 B2 40 68 81
+E0 FF 30 41 2F 83 8F 4E 00 00 3E 4D 30 4D 2F 82
+8F 4E 02 00 7E 4D 8F 4D 00 00 0D 5E 1D B3 0D 63
+30 4D 0E 93 3E 4F 05 24 2D 4D 30 4D 0E 93 3E 4F
+FB 27 2D 53 30 4D 39 40 00 80 39 8F 08 4E 3E 4F
+08 59 19 15 30 4D 81 5E 00 00 3E 4F 32 B0 00 01
+EB 27 21 52 2D 53 30 4D 91 53 00 00 F7 3F 0B 4E
 1C 4F 02 00 2E 4F 0A 43 34 40 20 00 0E 93 04 20
 04 11 0E 4C 0C 43 09 43 0A 9B 01 28 0A 8B 09 69
 08 68 14 83 07 30 0C 5C 0E 6E 0A 6A F5 2B 0A 8B
-12 D3 F5 3F 34 40 00 80 8F 4A 02 00 8F 49 00 00
-0E 48 30 41 00 00 01 23 1B 42 DC 21 2C 4F 2F 83
-B0 12 46 81 BF 4F 00 00 7A 90 0A 00 02 28 7A 50
-07 00 7A 50 30 00 92 83 B2 21 18 42 B2 21 C8 4A
-00 00 30 4D 86 81 02 23 53 00 87 12 88 81 C0 81
-2D 83 09 93 E3 23 0E 93 E1 23 3D 41 30 4D B6 81
-02 23 3E 00 9F 42 B2 21 00 00 3E 40 B2 21 2E 8F
-30 4D 00 00 04 48 4F 4C 44 00 0A 4E 3E 4F DB 3F
-8E 80 04 53 49 47 4E 00 0E 93 3E 4F 3A 40 2D 00
-D2 33 30 4D 87 12 36 81 34 80 86 80 D4 80 BA 81
-92 80 F8 81 D4 81 D6 83 42 87 82 83 2A 80 22 81
-02 55 2E 00 08 43 2F 83 8F 4E 00 00 0E 48 EA 3F
-00 00 01 2E 0E 93 F6 37 38 43 F5 3F 2D 4D 30 4D
-0E 93 3E 4F FB 27 2D 53 30 4D 0E 93 3E 4F F6 23
-2D 53 30 4D 39 40 00 80 39 8F 08 4E 3E 4F 08 59
-19 15 30 4D 81 5E 00 00 3E 4F 32 B0 00 01 E6 27
-2D 53 21 52 30 4D 91 53 00 00 F7 3F E4 81 01 49
-2F 83 8F 4E 00 00 2E 41 1E 81 02 00 30 4D 00 00
-03 4B 45 59 30 40 98 82 18 42 0C 05 2F 83 8F 4E
-00 00 B0 12 B6 82 92 B3 1C 05 FD 27 1E 42 0C 05
-B0 12 C8 82 30 4D A2 B3 1C 05 FD 27 B2 40 11 00
-0E 05 E2 C3 43 02 30 41 B2 40 13 00 0E 05 E2 D3
-43 02 30 41 00 00 05 53 4C 45 45 50 30 40 E0 82
-B0 12 B6 82 12 D2 0A 18 F9 3F F0 80 06 41 43 43
-45 50 54 00 3C 40 64 83 3B 40 2E 83 2D 15 0A 4E
-2E 4F 0A 5E 3B 40 0D 00 3C 40 20 00 3D 40 58 83
-92 B3 1C 05 05 24 18 42 0C 05 38 90 0A 00 CB 23
-21 53 3D 15 DB 3F 21 52 3A 17 58 42 0C 05 48 9C
-08 2C 48 9B C9 27 78 92 11 20 2E 9F 0F 24 1E 83
-05 3C 0E 9A 03 24 CE 48 00 00 1E 53 A2 B3 1C 05
-FD 27 82 48 0E 05 30 4D 5A 83 2D 83 92 B3 1C 05
-E4 23 FC 27 82 93 DE 21 02 24 92 53 DE 21 3E 8F
-3D 41 B2 40 18 00 0A 18 30 4D 9E 80 04 45 4D 49
-54 00 30 40 86 83 08 4E 3E 4F E0 3F 3F 80 06 00
-8F 4E 04 00 3E 40 54 00 BF 40 3C 21 00 00 AF 4F
-02 00 A8 3F 7C 83 04 45 43 48 4F 00 B2 40 82 48
-52 83 82 43 DE 21 30 4D 32 82 06 4E 4F 45 43 48
-4F 00 B2 40 30 4D 52 83 92 43 DE 21 30 4D 20 82
-04 54 59 50 45 00 0E 93 0F 24 1E 15 3D 40 EC 83
-28 4F 7E 48 8F 48 00 00 2F 83 CB 3F EE 83 2D 83
-91 83 02 00 F5 23 1D 17 2F 53 3E 4F 30 4D D0 81
-02 43 52 00 30 40 08 84 87 12 1E 84 02 0D 0A 00
-D6 83 2A 80 2F 83 8F 4E 00 00 3E 4D 30 4D 2F 82
-8F 4E 02 00 7E 4D 8F 4D 00 00 0D 5E 1D B3 0D 63
-30 4D F2 81 82 53 22 00 82 43 B4 21 87 12 14 84
-1E 84 B0 86 14 84 22 00 80 84 4C 84 B2 40 20 00
-B4 21 6E 4E 1E 53 1E B3 82 6E C6 21 3D 41 3E 4F
-30 4D BA 83 82 2E 22 00 87 12 38 84 14 84 D6 83
-B0 86 2A 80 48 43 05 3C 00 00 04 57 4F 52 44 00
-48 4E 19 42 C0 21 1A 42 C2 21 09 5A 1A 52 C4 21
-09 9A 03 24 7E 9A FC 27 1A 83 4E F8 06 20 0E 4A
-1A 82 C2 21 82 4A C4 21 30 4D 18 42 C6 21 3B 40
-60 00 C8 4C 00 00 09 9A 0C 24 7C 4A 4E 9C 09 24
-18 53 4B 9C F6 2F 7C 90 7B 00 F3 2F 5C 82 B4 21
-F0 3F 1A 82 C2 21 82 4A C4 21 1E 42 C6 21 08 8E
-CE 48 00 00 30 4D 00 00 04 46 49 4E 44 00 2F 83
-0C 4E 65 4C 74 40 80 00 3B 40 CA 21 3E 4B 0E 93
-1E 24 58 4C 01 00 78 F0 1E 00 0E 58 2E 53 1E 4E
-FE FF 0E 93 F3 27 09 4E 78 49 48 C4 48 95 F7 23
-0A 4C FA 99 01 00 F3 23 1A 53 58 83 FA 23 19 B3
-09 63 0C 49 6A 4E 1E 43 4A 93 01 30 2E 83 8F 4C
-00 00 35 40 0E 80 34 40 00 80 30 4D 82 80 07 3E
-4E 55 4D 42 45 52 3C 4F 38 4F 29 4F 2F 82 1B 42
-DC 21 6A 4C 7A 80 30 00 7A 90 0A 00 05 28 7A 80
-07 00 7A 90 0A 00 12 28 0A 9B 22 C3 0F 2C 82 49
-D0 04 82 48 D2 04 82 4B C8 04 19 42 E4 04 18 42
-E6 04 09 5A 08 63 1C 53 1E 83 E3 23 8F 4C 00 00
-8F 48 02 00 8F 49 04 00 30 4D 32 C0 00 02 1B 42
-DC 21 0C 43 2D 15 3D 40 F4 85 09 43 08 43 3F 82
-8F 4E 06 00 0C 4E 7E 4C 6A 4C 7A 90 2D 00 04 28
-C9 23 B1 43 02 00 DF 3F 2B 43 7A 80 25 00 07 24
-3B 52 6A 53 04 24 3B 40 10 00 5A 83 BA 23 1C 53
-1E 83 EA 3F F6 85 2F 24 2D 83 7A 90 28 00 CB 27
-32 D0 00 02 7A 90 F7 00 C6 27 7A 90 F5 00 23 20
-0A 4E 09 43 8F 49 02 00 5A 83 09 4A 09 5C 69 49
-79 80 30 00 79 90 0A 00 05 28 79 80 07 00 79 90
-0A 00 0A 28 09 9B 08 2C 8F 49 00 00 0E 4B 2C 15
-B0 12 3E 81 2A 17 E6 3F 9F 4F 04 00 02 00 AF 4F
-04 00 0E 4A 4E 93 2B 17 0E 4C 82 4B DC 21 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 7E 82 04 48 45 52 45 00
-2F 83 8F 4E 00 00 1E 42 C6 21 30 4D B6 80 01 2C
-1A 42 C6 21 8A 4E 00 00 A2 53 C6 21 3E 4F 30 4D
-EC 82 05 41 4C 4C 4F 54 82 5E C6 21 3E 4F 30 4D
-A6 83 07 45 58 45 43 55 54 45 0A 4E 3E 4F 00 4A
-AE 86 87 4C 49 54 45 52 41 4C 82 93 BE 21 0C 24
-1A 42 C6 21 A2 52 C6 21 BA 40 14 84 00 00 8A 4E
-02 00 3E 4F 32 B0 00 02 32 C0 00 02 06 24 19 4A
-02 00 8A 4E 02 00 0E 49 EB 3F 30 4D 00 84 05 43
-4F 55 4E 54 2F 83 1E 53 8F 4E 00 00 5E 4E FF FF
-30 4D 82 4E C0 21 B2 4F C2 21 3E 4F 82 43 C4 21
-30 4D 85 12 20 00 87 12 32 87 42 87 80 84 50 87
-3D 40 58 87 CC 22 82 3E 5A 87 0A 4E 3E 4F 3D 40
-70 87 23 27 3D 40 4A 87 1A E2 BE 21 A1 27 B5 23
-72 87 3E 4F 3D 40 4A 87 B8 23 DE 53 00 00 68 4E
-08 5E F8 40 3F 00 00 00 3D 40 26 8A CB 3F D2 86
+12 D3 F5 3F 34 40 EC 80 8F 4A 02 00 8F 49 00 00
+0E 48 30 41 82 4E C0 21 B2 4F C2 21 3E 4F 82 43
+C4 21 30 4D 3F 80 06 00 8F 4E 04 00 3E 40 54 00
+BF 40 3C 21 00 00 AF 4F 02 00 24 3C 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 A2 B3 1C 05 FD 27 B2 40 11 00
+0E 05 E2 C3 43 02 30 41 A2 B3 1C 05 FD 27 B2 40
+13 00 0E 05 E2 D3 43 02 30 41 00 00 06 41 43 43
+45 50 54 00 3C 40 A6 81 3B 40 70 81 2D 15 0A 4E
+2E 4F 0A 5E 3B 40 0D 00 3C 40 20 00 3D 40 9A 81
+92 B3 1C 05 05 24 18 42 0C 05 38 90 0A 00 D3 23
+21 53 3D 15 30 40 00 80 21 52 3A 17 58 42 0C 05
+48 9C 08 2C 48 9B D0 27 78 92 11 20 2E 9F 0F 24
+1E 83 05 3C 0E 9A 03 24 CE 48 00 00 1E 53 A2 B3
+1C 05 FD 27 82 48 0E 05 30 4D 9C 81 2D 83 92 B3
+1C 05 E4 23 FC 27 82 93 DE 21 02 24 92 53 DE 21
+3E 8F 3D 41 B2 40 18 00 0A 18 30 4D 00 00 04 45
+4D 49 54 00 30 40 C8 81 08 4E 3E 4F E0 3F BE 81
+04 45 43 48 4F 00 B2 40 82 48 94 81 82 43 DE 21
+30 4D 00 00 06 4E 4F 45 43 48 4F 00 B2 40 30 4D
+94 81 92 43 DE 21 30 4D 00 00 04 54 59 50 45 00
+0E 93 0F 24 1E 15 3D 40 16 82 28 4F 7E 48 8F 48
+00 00 2F 83 D7 3F 18 82 2D 83 91 83 02 00 F5 23
+1D 17 2F 53 3E 4F 30 4D 00 00 02 43 52 00 30 40
+32 82 0D 12 87 12 2E 80 02 0D 0A 00 00 82 26 83
+00 00 03 4B 45 59 30 40 4A 82 18 42 0C 05 2F 83
+8F 4E 00 00 B0 12 06 81 92 B3 1C 05 FD 27 1E 42
+0C 05 B0 12 18 81 30 4D 2F 83 8F 4E 00 00 30 4D
+8F 4E FE FF AF 4F FC FF 2F 82 30 4D 0E 93 F4 23
+30 4D 2A 4F 8F 4E 00 00 0E 4A 30 4D 8F 4E FE FF
+3E 40 80 20 0E 8F 0E 11 2F 83 30 4D 2F 83 8F 4E
+00 00 3E 41 30 4D 3E 8F 3E E3 1E 53 30 4D BE 4F
+00 00 3E 4F 30 4D 1E 83 0E 7E 30 4D 0E 5E 0E 7E
+3E E3 30 4D 3E 8F 03 24 3E 43 01 2C 0E F3 30 4D
+00 00 02 3C 23 00 B2 40 B2 21 B2 21 30 4D 2A 82
+01 23 1B 42 DC 21 2C 4F 2F 83 B0 12 86 80 BF 4F
+00 00 7A 90 0A 00 02 28 7A 50 07 00 7A 50 30 00
+92 83 B2 21 18 42 B2 21 C8 4A 00 00 30 4D E0 82
+02 23 53 00 0D 12 87 12 E2 82 1C 83 2D 83 09 93
+E2 23 0E 93 E0 23 3D 41 30 4D 10 83 02 23 3E 00
+9F 42 B2 21 00 00 3E 40 B2 21 2E 8F 30 4D 00 00
+04 48 4F 4C 44 00 4A 4E 3E 4F DA 3F 00 00 04 53
+49 47 4E 00 0E 93 3E 4F 7A 40 2D 00 D1 33 30 4D
+FA 81 02 55 2E 00 08 43 2F 83 8F 4E 00 00 0E 48
+0D 12 0E 12 3E F3 06 34 BF E3 00 00 3E E3 9F 53
+00 00 0E 63 87 12 D6 82 14 83 9C 82 54 83 30 83
+00 82 70 86 C4 81 26 83 E4 81 01 2E 0E 93 E3 37
+38 43 E2 3F 4E 83 82 53 22 00 82 43 B4 21 0D 12
+87 12 24 80 2E 80 F8 85 24 80 22 00 F2 83 C0 83
+B2 40 20 00 B4 21 6E 4E 1E 53 1E B3 82 6E C6 21
+3D 41 3E 4F 30 4D 9A 83 82 2E 22 00 0D 12 87 12
+AA 83 24 80 00 82 F8 85 26 83 00 00 04 57 4F 52
+44 00 3C 40 C0 21 39 4C 3A 4C 09 5A 3A 5C 28 4C
+09 9A 15 24 7E 9A FC 27 1A 83 3B 40 60 00 C8 4C
+00 00 09 9A 0C 24 7C 4A 4E 9C 09 24 18 53 4B 9C
+F6 2F 7C 90 7B 00 F3 2F 5C 82 B4 21 F0 3F 1A 82
+C2 21 82 4A C4 21 1E 42 C6 21 08 8E CE 48 00 00
+30 4D 00 00 04 46 49 4E 44 00 2F 83 0C 4E 65 4C
+74 40 80 00 3B 40 CA 21 3E 4B 0E 93 1E 24 58 4C
+01 00 78 F0 1E 00 0E 58 2E 53 1E 4E FE FF 0E 93
+F3 27 09 4E 78 49 48 C4 48 95 F7 23 0A 4C FA 99
+01 00 F3 23 1A 53 58 83 FA 23 19 B3 09 63 0C 49
+6A 4E 1E 43 4A 93 01 30 2E 83 8F 4C 00 00 35 40
+FA 80 34 40 EC 80 30 4D 00 00 07 3E 4E 55 4D 42
+45 52 3C 4F 38 4F 29 4F 2F 82 1B 42 DC 21 6A 4C
+7A 80 30 00 7A 90 0A 00 05 28 7A 80 07 00 7A 90
+0A 00 12 28 0A 9B 22 C3 0F 2C 82 49 D0 04 82 48
+D2 04 82 4B C8 04 19 42 E4 04 18 42 E6 04 09 5A
+08 63 1C 53 1E 83 E3 23 8F 4C 00 00 8F 48 02 00
+8F 49 04 00 30 4D 32 C0 00 02 1B 42 DC 21 0C 43
+2D 15 3D 40 50 85 09 43 08 43 3F 82 8F 4E 06 00
+0C 4E 7E 4C 6A 4C 7A 90 2D 00 04 28 C9 23 B1 43
+02 00 0B 3C 2B 43 7A 80 25 00 07 24 3B 52 6A 53
+04 24 3B 40 10 00 5A 83 BA 23 1C 53 1E 83 EA 3F
+52 85 2F 24 2D 83 7A 90 28 00 CB 27 32 D0 00 02
+7A 90 F7 00 C6 27 7A 90 F5 00 23 20 0A 4E 09 43
+8F 49 02 00 5A 83 09 4A 09 5C 69 49 79 80 30 00
+79 90 0A 00 05 28 79 80 07 00 79 90 0A 00 0A 28
+09 9B 08 2C 8F 49 00 00 0E 4B 2C 15 B0 12 7E 80
+2A 17 E6 3F 9F 4F 04 00 02 00 AF 4F 04 00 0E 4A
+4E 93 2B 17 0E 4C 82 4B DC 21 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 00 00 01 2C 1A 42 C6 21 8A 4E 00 00
+A2 53 C6 21 3E 4F 30 4D 2C 81 05 41 4C 4C 4F 54
+82 5E C6 21 3E 4F 30 4D 0A 4E 3E 4F 00 4A F6 85
+87 4C 49 54 45 52 41 4C 82 93 BE 21 0C 24 1A 42
+C6 21 A2 52 C6 21 BA 40 24 80 00 00 8A 4E 02 00
+3E 4F 32 B0 00 02 32 C0 00 02 06 24 19 4A 02 00
+8A 4E 02 00 0E 49 EB 3F 30 4D 2C 83 05 43 4F 55
+4E 54 2F 83 1E 53 8F 4E 00 00 5E 4E FF FF 30 4D
+85 12 20 00 0D 12 87 12 C4 80 70 86 F2 83 80 86
+3D 40 88 86 E2 22 A4 26 8A 86 0A 4E 3E 4F 3D 40
+A0 86 39 27 3D 40 7A 86 1A E2 BE 21 BD 23 AC 27
+A2 86 3E 4F 3D 40 7A 86 BF 23 DE 53 00 00 68 4E
+08 5E F8 40 3F 00 00 00 3D 40 20 89 D2 3F D0 81
 08 45 56 41 4C 55 41 54 45 00 39 40 C0 21 3C 49
-3B 49 3A 49 3D 15 B0 12 2A 80 46 87 AE 87 B2 41
-C4 21 B2 41 C2 21 B2 41 C0 21 3D 41 30 4D 85 12
-BE 21 08 81 04 51 55 49 54 00 82 43 08 18 31 40
-E0 20 B2 40 00 20 00 20 82 43 BE 21 B0 12 2A 80
-04 84 8C 83 42 87 82 83 46 87 A4 80 0C 81 1E 84
-0C 73 74 61 63 6B 20 65 6D 70 74 79 21 00 40 88
-14 84 30 FF A0 86 26 81 1E 84 0A 46 52 41 4D 20
-66 75 6C 6C 21 00 40 88 3C 82 E0 87 C2 86 05 41
-42 4F 52 54 3F 40 80 20 D0 3F 1E 88 86 41 42 4F
-52 54 22 00 87 12 38 84 14 84 40 88 B0 86 2A 80
-8F 93 02 00 03 20 2F 52 3E 4F 30 4D B0 12 C8 8D
-B0 12 B6 82 92 C3 1C 05 38 40 A0 AA 39 42 03 43
-19 83 FD 23 18 83 FA 23 92 B3 1C 05 F3 23 87 12
-42 8D 14 84 DE 21 EA 80 AC 83 1E 84 04 1B 5B 37
-6D 00 D6 83 58 80 40 82 9A 88 04 84 1E 84 05 6C
-69 6E 65 3A D6 83 D0 80 24 82 D6 83 1E 84 04 1B
-5B 30 6D 00 D6 83 24 88 00 00 83 5B 27 5D 87 12
-C0 88 14 84 14 84 B0 86 B0 86 2A 80 E8 84 01 27
-87 12 42 87 80 84 EE 84 40 82 CE 88 2A 80 7A 87
-32 81 81 5C 92 42 C0 21 C4 21 30 4D AA 88 81 5B
-82 43 BE 21 30 4D D2 88 01 5D B2 43 BE 21 30 4D
-BE 4F 02 00 3E 4F 30 4D 9A 86 82 49 53 00 87 12
-BE 87 EA 80 40 82 12 89 AE 88 14 84 F0 88 B0 86
-2A 80 C0 88 F0 88 2A 80 FA 88 09 49 4D 4D 45 44
-49 41 54 45 1A 42 B6 21 FA D0 80 00 00 00 30 4D
-C4 87 88 50 4F 53 54 50 4F 4E 45 00 87 12 42 87
-80 84 EE 84 58 80 40 82 CE 88 0C 81 40 82 5C 89
-14 84 14 84 B0 86 B0 86 14 84 B0 86 B0 86 2A 80
-DE 88 81 3B 82 93 BE 21 B5 27 87 12 14 84 2A 80
-B0 86 FA 89 E0 88 2A 80 62 89 07 3A 4E 4F 4E 41
-4D 45 30 12 A0 89 2F 83 8F 4E 00 00 1E 42 C6 21
-1E B3 0E 63 0A 4E 39 40 00 02 38 40 02 02 21 3C
-BA 40 87 12 FC FF A2 83 C6 21 B2 43 BE 21 30 4D
-7A 89 01 3A 30 12 A0 89 92 B3 C6 21 A2 63 C6 21
-87 12 42 87 80 84 C8 89 3D 41 08 4E 7A 4E 5A D3
-5A 53 0A 58 19 42 DA 21 6E 4E 3E F0 1E 00 09 5E
-3E 4F 82 48 B6 21 82 49 B8 21 82 4A BA 21 82 4F
-BC 21 2A 52 82 4A C6 21 30 41 82 9F BC 21 09 20
-18 42 B6 21 19 42 B8 21 A8 49 FE FF 89 48 00 00
-30 4D 87 12 1E 84 0F 73 74 61 63 6B 20 6D 69 73
-6D 61 74 63 68 21 4C 88 90 87 05 44 45 46 45 52
-B0 12 B8 89 BA 40 30 40 FC FF BA 40 AE 89 FE FF
-E3 3F 1E 87 06 43 52 45 41 54 45 00 B0 12 B8 89
-BA 40 85 12 FC FF 8A 4A FE FF D6 3F 2A 8A 05 44
-4F 45 53 3E 1A 42 BA 21 BA 40 84 12 00 00 8A 4D
-02 00 3D 41 30 4D 4E 85 05 3E 42 4F 44 59 2E 52
-30 4D 44 8A 04 43 4F 44 45 00 B0 12 B8 89 A2 82
-C6 21 87 12 D2 8C AC 8C 2A 80 84 8A 07 43 4F 44
-45 4E 4E 4D B0 12 86 89 F2 3F 00 00 07 45 4E 44
-43 4F 44 45 87 12 E0 8C FA 89 2A 80 2C 88 03 41
-53 4D B2 40 B0 8C DA 21 E0 3F AC 8A 06 45 4E 44
-41 53 4D 00 87 12 B4 8A F4 8C 2A 80 00 00 05 43
-4F 4C 4F 4E 1A 42 C6 21 BA 40 87 12 00 00 A2 53
-C6 21 B2 43 BE 21 30 40 E0 8C 00 00 05 4C 4F 32
-48 49 1A 42 C6 21 BA 40 B0 12 00 00 BA 40 2A 80
-02 00 A2 52 C6 21 ED 3F 1A 89 85 48 49 32 4C 4F
-87 12 A0 86 4A 8B B0 86 E0 88 D2 8C AC 8C 2A 80
-1A 8B 82 49 46 00 2F 83 8F 4E 00 00 1E 42 C6 21
-A2 52 C6 21 BE 40 40 82 00 00 2E 53 30 4D 5E 8A
-84 45 4C 53 45 00 A2 52 C6 21 1A 42 C6 21 BA 40
-3C 82 FC FF 8E 4A 00 00 2A 83 0E 4A 30 4D D0 83
-84 54 48 45 4E 00 9E 42 C6 21 00 00 3E 4F 30 4D
-9C 8A 85 42 45 47 49 4E 30 40 A0 86 70 8B 85 55
-4E 54 49 4C 39 40 40 82 A2 52 C6 21 1A 42 C6 21
-8A 49 FC FF 8A 4E FE FF 3E 4F 30 4D BE 8A 85 41
-47 41 49 4E 39 40 3C 82 EF 3F 7A 84 85 57 48 49
-4C 45 87 12 36 8B 76 80 2A 80 34 84 86 52 45 50
-45 41 54 00 87 12 B4 8B 76 8B 2A 80 50 8B 82 44
-4F 00 2F 83 8F 4E 00 00 A2 53 C6 21 1E 42 C6 21
-BE 40 54 82 FE FF A2 53 00 20 1A 42 00 20 8A 43
-00 00 30 4D E2 86 84 4C 4F 4F 50 00 39 40 76 82
-A2 52 C6 21 1A 42 C6 21 8A 49 FC FF 8A 4E FE FF
-1E 42 00 20 A2 83 00 20 2E 4E 0E 93 03 24 8E 4A
-00 00 F6 3F 3E 4F 30 4D 90 82 85 2B 4C 4F 4F 50
-39 40 64 82 E5 3F 06 8C 04 4D 4F 56 45 00 0A 4E
-38 4F 39 4F 3E 4F 0A 93 11 24 08 99 0F 24 06 2C
-F8 49 00 00 18 53 1A 83 FB 23 30 4D 08 5A 09 5A
-19 83 18 83 E8 49 00 00 1A 83 FA 23 30 4D 14 84
-CA 21 F2 80 2A 80 84 12 7E 8C AE 8B 54 8F DE 8B
-BE 88 32 8B 3A 8C 68 90 64 84 66 8D 80 8D 8E 8B
-00 8E 00 00 3A 90 E8 88 78 8A 00 00 84 12 7E 8C
-86 95 E8 95 3A 95 5C 96 00 95 00 00 30 92 00 00
-F6 94 A6 95 58 95 96 95 40 93 00 00 00 00 38 96
-AA 8C 3A 40 0C 00 39 40 CA 21 38 40 CC 21 C6 3F
-3A 40 0E 00 39 40 CC 21 38 40 CA 21 B9 3F 82 43
-CC 21 30 4D 92 42 CA 21 DA 21 30 4D 86 8C EE 8C
-F4 8C 04 8D 3A 4E 82 4A C8 21 2E 4E 82 4E C6 21
-3D 40 10 00 09 4A 08 49 29 83 18 48 FE FF 0E 98
-FC 2B 89 48 00 00 1D 83 F6 23 2A 4A 0A 93 F0 23
-3E 4F 3D 41 30 4D 32 89 09 50 57 52 5F 53 54 41
-54 45 84 12 FC 8C D0 8C 6E 96 CC 8B 09 52 53 54
-5F 53 54 41 54 45 92 42 0E 18 46 8D 92 42 0C 18
-48 8D EF 3F 38 8D 08 50 57 52 5F 48 45 52 45 00
-92 42 C8 21 46 8D 92 42 C6 21 48 8D 30 4D 4C 8D
-08 52 53 54 5F 48 45 52 45 00 92 42 C8 21 0E 18
-92 42 C6 21 0C 18 EC 3F BC 8B 04 57 49 50 45 00
-39 40 10 00 29 83 B9 43 80 FF FC 23 B2 40 E0 82
-DE 82 B2 40 0A 8E 08 8E B2 40 D0 8C 0E 18 B2 40
-6E 96 0C 18 30 12 56 8D B2 40 86 83 84 83 B2 40
-08 84 06 84 B2 40 98 82 96 82 B2 40 18 00 0A 18
-37 40 1A 80 36 40 92 80 35 40 0E 80 34 40 00 80
-B2 40 0A 00 DC 21 B2 40 20 00 B4 21 30 41 9A 8D
-04 57 41 52 4D 00 30 40 0A 8E 3D 40 40 8E 92 C3
-30 01 1E 42 08 18 0E 93 12 24 F2 B0 10 00 00 02
-02 20 3E E3 1E 53 F2 D0 30 00 0A 02 3E 90 0A 00
-B7 27 3E 90 16 00 B4 2F 2E 93 83 27 8C 2F 30 4D
-1E 84 06 0D 1B 5B 37 6D 23 00 D6 83 34 82 1E 84
-19 46 61 73 74 46 6F 72 74 68 20 C2 A9 4A 2E 4D
-2E 54 68 6F 6F 72 65 6E 73 20 D6 83 14 84 30 FF
-A0 86 B8 80 24 82 1E 84 0A 62 79 74 65 73 20 66
-72 65 65 00 3C 82 9A 88 82 8B 04 43 4F 4C 44 00
-92 B3 0A 05 FD 23 B2 40 04 A5 20 01 40 8E B2 40
-88 5A CC 01 B2 D3 06 02 B2 40 FE FF 02 02 B2 D3
-26 02 B2 40 FF 7F 22 02 B2 D3 46 02 B2 40 FC FF
-42 02 E2 D3 45 02 F2 40 A5 00 A1 01 F2 40 10 00
-A0 01 D2 43 A1 01 B2 40 00 A5 60 01 B2 40 FF 1E
+3B 49 3A 49 3D 15 87 12 74 86 DC 86 B2 41 C4 21
+B2 41 C2 21 B2 41 C0 21 3D 41 30 4D 85 12 BE 21
+00 00 04 51 55 49 54 00 82 43 08 18 31 40 E0 20
+B2 40 00 20 00 20 82 43 BE 21 87 12 2E 82 D4 80
+70 86 C4 81 74 86 8C 82 BC 82 2E 80 0C 73 74 61
+63 6B 20 65 6D 70 74 79 21 00 6E 87 24 80 40 FF
+2A 8A C4 82 2E 80 0A 46 52 41 4D 20 66 75 6C 6C
+21 00 6E 87 48 80 0C 87 0A 86 05 41 42 4F 52 54
+3F 40 80 20 D1 3F 4A 87 86 41 42 4F 52 54 22 00
+0D 12 87 12 AA 83 24 80 6E 87 F8 85 26 83 8F 93
+02 00 03 20 2F 52 3E 4F 30 4D B0 12 96 8B B0 12
+06 81 92 C3 1C 05 18 42 06 18 39 40 20 00 19 83
+FE 23 18 83 FA 23 92 B3 1C 05 F3 23 0D 12 87 12
+10 8B 24 80 DE 21 02 81 D6 81 2E 80 04 1B 5B 37
+6D 00 00 82 7C 82 4C 80 C8 87 2E 82 2E 80 05 6C
+69 6E 65 3A 00 82 66 83 00 82 2E 80 04 1B 5B 30
+6D 00 00 82 50 87 00 00 83 5B 27 5D 0D 12 87 12
+F0 87 24 80 24 80 F8 85 F8 85 26 83 44 84 01 27
+0D 12 87 12 70 86 F2 83 4A 84 4C 80 00 88 26 83
+AA 86 D2 82 81 5C 92 42 C0 21 C4 21 30 4D D8 87
+81 5B 82 43 BE 21 30 4D 04 88 01 5D B2 43 BE 21
+30 4D F2 86 88 50 4F 53 54 50 4F 4E 45 00 0D 12
+87 12 70 86 F2 83 4A 84 7C 82 4C 80 00 88 BC 82
+4C 80 50 88 24 80 24 80 F8 85 F8 85 24 80 F8 85
+F8 85 26 83 40 83 09 49 4D 4D 45 44 49 41 54 45
+1A 42 B6 21 FA D0 80 00 00 00 30 4D 10 88 01 3A
+30 12 B8 88 92 B3 C6 21 A2 63 C6 21 0D 12 87 12
+70 86 F2 83 86 88 3D 41 08 4E 7A 4E 5A D3 5A 53
+0A 58 19 42 DA 21 6E 4E 3E F0 1E 00 09 5E 3E 4F
+82 48 B6 21 82 49 B8 21 82 4A BA 21 82 4F BC 21
+2A 52 82 4A C6 21 30 41 BA 40 0D 12 FC FF BA 40
+87 12 FE FF B2 43 BE 21 30 4D 6E 88 07 3A 4E 4F
+4E 41 4D 45 30 12 B8 88 2F 83 8F 4E 00 00 1E 42
+C6 21 1E B3 0E 63 0A 4E 39 40 10 02 38 40 12 02
+D7 3F 82 9F BC 21 09 20 18 42 B6 21 19 42 B8 21
+A8 49 FE FF 89 48 00 00 30 4D 0D 12 87 12 2E 80
+0F 73 74 61 63 6B 20 6D 69 73 6D 61 74 63 68 21
+7A 87 CC 88 81 3B 82 93 BE 21 6D 27 0D 12 87 12
+24 80 26 83 F8 85 F2 88 12 88 26 83 5C 86 06 43
+52 45 41 54 45 00 B0 12 74 88 BA 40 85 12 FC FF
+8A 4A FE FF D5 3F C0 86 05 44 4F 45 53 3E 1A 42
+BA 21 BA 40 84 12 00 00 8A 4D 02 00 3D 41 30 4D
+3E 89 04 43 4F 44 45 00 B0 12 74 88 A2 82 C6 21
+0D 12 87 12 8A 8A 64 8A 26 83 72 89 07 43 4F 44
+45 4E 4E 4D 30 12 7C 89 9F 3F 00 00 07 45 4E 44
+43 4F 44 45 0D 12 87 12 F2 88 A4 8A 26 83 58 87
+03 41 53 4D B2 40 68 8A DA 21 DE 3F 9C 89 06 45
+4E 44 41 53 4D 00 0D 12 87 12 A4 89 C2 8A 26 83
+00 00 05 43 4F 4C 4F 4E 1A 42 C6 21 BA 40 0D 12
+00 00 BA 40 87 12 02 00 A2 52 C6 21 B2 43 BE 21
+30 40 A4 8A 00 00 05 4C 4F 32 48 49 A2 83 C6 21
+1A 42 C6 21 EE 3F 56 88 85 48 49 32 4C 4F 0D 12
+87 12 2A 8A 1E 8A F8 85 12 88 80 89 26 83 2E 53
+30 4D 8C 89 85 42 45 47 49 4E 2F 83 8F 4E 00 00
+1E 42 C6 21 30 4D 24 80 CA 21 AE 82 26 83 84 12
+36 8A B0 89 5C 8C 58 89 EE 87 08 8A 42 82 20 86
+D8 83 34 8B 4E 8B 62 83 CE 8B 00 00 F2 8D 1A 88
+AA 84 00 00 84 12 36 8A 24 93 8A 93 D8 92 DA 93
+9E 92 00 00 CE 8F 00 00 94 92 46 93 F6 92 34 93
+DE 90 00 00 00 00 F6 93 62 8A 3A 40 0C 00 39 40
+D6 21 08 49 28 53 19 83 18 83 E8 49 00 00 1A 83
+FA 23 30 4D 3A 40 0E 00 38 40 CA 21 09 48 29 53
+F8 49 00 00 18 53 1A 83 FB 23 30 4D 82 43 CC 21
+30 4D 92 42 CA 21 DA 21 30 4D 3E 8A BC 8A C2 8A
+D2 8A 3A 4E 82 4A C8 21 2E 4E 82 4E C6 21 3D 40
+10 00 09 4A 08 49 29 83 18 48 FE FF 0E 98 FC 2B
+89 48 00 00 1D 83 F6 23 2A 4A 0A 93 F0 23 3E 4F
+3D 41 30 4D 24 88 09 50 57 52 5F 53 54 41 54 45
+84 12 CA 8A 88 8A 12 94 A6 83 09 52 53 54 5F 53
+54 41 54 45 92 42 0E 18 14 8B 92 42 0C 18 16 8B
+EF 3F 06 8B 08 50 57 52 5F 48 45 52 45 00 92 42
+C8 21 14 8B 92 42 C6 21 16 8B 30 4D 1A 8B 08 52
+53 54 5F 48 45 52 45 00 92 42 C8 21 0E 18 92 42
+C6 21 0C 18 EC 3F EC 83 04 57 49 50 45 00 39 40
+10 00 29 83 B9 43 80 FF FC 23 B2 40 04 80 02 80
+B2 40 D8 8B D6 8B B2 40 88 8A 0E 18 B2 40 12 94
+0C 18 30 12 24 8B B2 40 C8 81 C6 81 B2 40 32 82
+30 82 B2 40 4A 82 48 82 B2 40 18 00 0A 18 37 40
+26 83 36 40 9C 82 35 40 FA 80 34 40 EC 80 B2 40
+0A 00 DC 21 B2 40 20 00 B4 21 30 41 68 8B 04 57
+41 52 4D 00 30 40 D8 8B 3D 40 12 8C 92 C3 30 01
+1E 42 08 18 0E 93 14 24 F2 B0 10 00 00 02 02 20
+3E E3 1E 53 F2 D0 30 00 0A 02 92 D3 1A 05 3E 90
+0A 00 B5 27 3E 90 16 00 B2 2F 2E 93 81 27 8A 2F
+30 4D 2E 80 07 0D 0A 1B 5B 37 6D 23 00 82 9C 83
+2E 80 19 46 61 73 74 46 6F 72 74 68 20 C2 A9 4A
+2E 4D 2E 54 68 6F 6F 72 65 6E 73 20 00 82 24 80
+40 FF 2A 8A A6 82 66 83 2E 80 0A 62 79 74 65 73
+20 66 72 65 65 00 48 80 C8 87 24 8A 04 43 4F 4C
+44 00 92 B3 0A 05 FD 23 B2 40 04 A5 20 01 31 40
+E0 20 B2 40 88 5A CC 01 B2 D3 06 02 B2 40 FE FF
+02 02 B2 D3 26 02 B2 40 FF 7F 22 02 B2 D3 46 02
+B2 40 FC FF 42 02 E2 D3 45 02 F2 40 A5 00 A1 01
+F2 40 10 00 A0 01 D2 43 A1 01 B2 40 00 A5 60 01
+B2 D0 10 00 86 01 F2 D0 03 00 0B 02 B2 40 FF 1E
 80 01 B2 40 BA 00 82 01 B2 40 E8 01 84 01 39 40
-00 01 B2 D0 10 00 86 01 92 D2 5E 01 08 18 38 40
-59 14 18 83 FE 23 19 83 FA 23 39 40 00 20 29 83
-89 43 00 20 FC 23 39 40 38 00 29 83 B9 40 9E 8E
-8C FF FB 23 B2 40 26 83 E0 FF B2 40 81 00 00 05
-92 42 02 18 06 05 92 42 04 18 08 05 92 C3 00 05
-92 D3 1A 05 3F 40 80 20 31 40 E0 20 30 12 06 8E
-44 3F 8A 8E 07 43 4F 4D 50 41 52 45 0C 4E 38 4F
-3B 4F 39 4F 0E 4B 0E 5C 0C 24 1B 83 07 30 1C 83
-07 30 19 53 F9 98 FF FF F5 27 02 2C 3E 43 30 4D
-1E 43 30 4D B2 89 86 5B 54 48 45 4E 5D 00 30 4D
-86 8F 86 5B 45 4C 53 45 5D 00 87 12 14 84 00 00
-C6 80 42 87 80 84 24 87 34 80 40 82 FC 8F 44 80
-1E 84 06 5B 54 48 45 4E 5D 00 5C 8F 4A 82 CC 8F
-F8 83 D0 80 58 80 4A 82 A2 8F 2A 80 44 80 1E 84
-06 5B 45 4C 53 45 5D 00 5C 8F 4A 82 EA 8F F8 83
-D0 80 58 80 4A 82 A0 8F 2A 80 1E 84 04 5B 49 46
-5D 00 5C 8F 4A 82 A2 8F 3C 82 A0 8F F8 83 1E 84
-05 0D 0A 6B 6F 20 D6 83 8C 83 32 87 3C 82 A2 8F
-92 8F 84 5B 49 46 5D 00 0E 93 3E 4F BE 27 30 4D
-12 90 89 5B 44 45 46 49 4E 45 44 5D 87 12 42 87
-80 84 EE 84 6A 80 2A 80 22 90 8B 5B 55 4E 44 45
-46 49 4E 45 44 5D 87 12 42 87 80 84 EE 84 6A 80
-00 81 2A 80 56 90 3D 41 B2 4E 0E 18 A2 4E 0C 18
-3E 4F 30 40 56 8D 48 8C 06 4D 41 52 4B 45 52 00
-B0 12 B8 89 BA 40 84 12 FC FF BA 40 54 90 FE FF
-9A 42 C8 21 00 00 28 83 8A 48 02 00 A2 52 C6 21
-30 40 00 8A 1C 15 B0 12 2A 80 80 84 EE 84 4A 82
-AA 90 AA 85 40 82 CE 88 C4 90 AC 90 39 4E 39 80
-86 12 08 24 19 53 02 20 2E 4E 04 3C 2E 53 19 53
-01 24 2E 82 1B 17 30 41 3E 40 28 00 B0 12 94 90
-19 42 C6 21 A2 53 C6 21 89 4E 00 00 3E 40 29 00
-1C 15 12 12 C4 21 92 53 C4 21 B0 12 2A 80 80 84
-AA 85 40 82 02 91 F8 90 21 53 3E 90 10 00 7D 2D
-E1 2B 04 91 B2 41 C4 21 DD 3F 87 12 42 87 74 84
-12 91 0C 43 1B 42 C6 21 A2 53 C6 21 6A 4E 3E 4F
-7A 90 23 00 27 20 92 53 C4 21 B0 12 94 90 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 C6 21 A2 53 C6 21 89 4E 00 00 3E 4F
-3D 41 30 4D 7A 90 26 00 07 20 3C 40 10 02 92 53
-C4 21 B0 12 94 90 ED 3F 7A 90 40 00 16 20 3C 40
-20 00 92 53 C4 21 B0 12 E0 90 0C 20 3C 50 10 00
-3E 40 2B 00 B0 12 E0 90 92 92 C0 21 C4 21 02 24
-92 53 C4 21 8E 10 0C 5E DA 3F B0 12 E0 90 FA 23
-3C 50 10 00 B0 12 C8 90 EF 3F 0C 43 1B 42 C6 21
-A2 53 C6 21 87 12 42 87 74 84 DC 91 FE 90 26 00
-00 00 3E 40 20 00 03 20 3C 50 82 00 C8 3F B0 12
-E0 90 E1 23 3C 50 80 00 B0 12 C8 90 DC 3F D6 82
-04 52 45 54 49 00 87 12 14 84 00 13 B0 86 2A 80
-14 84 2C 00 0A 91 D4 91 1A 92 09 4B 2E 4E 0E DC
-A4 3F FC 8A 03 4D 4F 56 84 12 10 92 00 40 24 92
-05 4D 4F 56 2E 42 84 12 10 92 40 40 00 00 03 41
-44 44 84 12 10 92 00 50 3E 92 05 41 44 44 2E 42
-84 12 10 92 40 50 4A 92 04 41 44 44 43 00 84 12
-10 92 00 60 58 92 06 41 44 44 43 2E 42 00 84 12
-10 92 40 60 00 92 04 53 55 42 43 00 84 12 10 92
-00 70 76 92 06 53 55 42 43 2E 42 00 84 12 10 92
-40 70 84 92 03 53 55 42 84 12 10 92 00 80 94 92
-05 53 55 42 2E 42 84 12 10 92 40 80 DE 8A 03 43
-4D 50 84 12 10 92 00 90 AE 92 05 43 4D 50 2E 42
-84 12 10 92 40 90 CC 8A 04 44 41 44 44 00 84 12
-10 92 00 A0 C8 92 06 44 41 44 44 2E 42 00 84 12
-10 92 40 A0 BA 92 03 42 49 54 84 12 10 92 00 B0
-E6 92 05 42 49 54 2E 42 84 12 10 92 40 B0 F2 92
-03 42 49 43 84 12 10 92 00 C0 00 93 05 42 49 43
-2E 42 84 12 10 92 40 C0 0C 93 03 42 49 53 84 12
-10 92 00 D0 1A 93 05 42 49 53 2E 42 84 12 10 92
-40 D0 00 00 03 58 4F 52 84 12 10 92 00 E0 34 93
-05 58 4F 52 2E 42 84 12 10 92 40 E0 66 92 03 41
-4E 44 84 12 10 92 00 F0 4E 93 05 41 4E 44 2E 42
-84 12 10 92 40 F0 42 87 0A 91 6C 93 0A 4C 3C F0
-70 00 8A 10 3A F0 0F 00 0C DA 4F 3F A0 92 03 52
-52 43 84 12 66 93 00 10 7E 93 05 52 52 43 2E 42
-84 12 66 93 40 10 8A 93 04 53 57 50 42 00 84 12
-66 93 80 10 98 93 03 52 52 41 84 12 66 93 00 11
-A6 93 05 52 52 41 2E 42 84 12 66 93 40 11 B2 93
-03 53 58 54 84 12 66 93 80 11 00 00 04 50 55 53
-48 00 84 12 66 93 00 12 CC 93 06 50 55 53 48 2E
-42 00 84 12 66 93 40 12 26 93 04 43 41 4C 4C 00
-84 12 66 93 80 12 1A 53 0E 4A 87 12 34 82 1E 84
-0D 6F 75 74 20 6F 66 20 62 6F 75 6E 64 73 4C 88
-42 87 74 84 16 94 92 53 C4 21 3E 40 2C 00 B0 12
-2A 80 80 84 AA 85 40 82 CE 88 CA 91 2E 94 0A 4E
-3E 4F 1A 83 E0 33 29 4E 59 0E 0A 28 08 4C 59 0A
-01 28 0C 8A 08 8A 38 90 10 00 D5 2F 5A 0E 94 3F
-2A 92 D1 2F 8A 10 5A 06 8F 3F C0 93 04 52 52 43
-4D 00 84 12 10 94 50 00 5C 94 04 52 52 41 4D 00
-84 12 10 94 50 01 6A 94 04 52 4C 41 4D 00 84 12
-10 94 50 02 78 94 04 52 52 55 4D 00 84 12 10 94
-50 03 DA 93 05 50 55 53 48 4D 84 12 10 94 00 15
-94 94 04 50 4F 50 4D 00 84 12 10 94 00 17 86 94
-03 53 3E 3D 85 12 00 38 B0 94 02 53 3C 00 85 12
-00 34 A2 94 03 30 3E 3D 85 12 00 30 C4 94 02 30
-3C 00 85 12 00 30 00 00 02 55 3C 00 85 12 00 2C
-D8 94 03 55 3E 3D 85 12 00 28 CE 94 03 30 3C 3E
-85 12 00 24 EC 94 02 30 3D 00 85 12 00 20 00 00
-02 49 46 00 1A 42 C6 21 8A 4E 00 00 A2 53 C6 21
-0E 4A 30 4D E2 94 04 54 48 45 4E 00 1A 42 C6 21
-08 4E 3E 4F 09 48 29 53 0A 89 0A 11 3A 90 00 02
-63 2F 88 DA 00 00 30 4D D6 92 04 45 4C 53 45 00
-1A 42 C6 21 BA 40 00 3C 00 00 A2 53 C6 21 2F 83
-8F 4A 00 00 E3 3F 16 95 05 55 4E 54 49 4C 3A 4F
-08 4E 3E 4F 19 42 C6 21 2A 83 0A 89 0A 11 3A 90
-00 FE 42 3B 3A F0 FF 03 08 DA 89 48 00 00 A2 53
-C6 21 30 4D 5A 93 05 41 47 41 49 4E 0A 4E 38 40
-00 3C E7 3F 00 00 05 57 48 49 4C 45 87 12 04 95
-76 80 2A 80 BA 94 06 52 45 50 45 41 54 00 87 12
-8C 95 1C 95 2A 80 B8 95 3D 41 08 4E 3E 4F 2A 48
-B2 92 C4 21 CD 2F 98 42 C6 21 00 00 30 4D EA 93
-03 42 57 31 84 12 B6 95 00 00 D0 95 03 42 57 32
-84 12 B6 95 00 00 DC 95 03 42 57 33 84 12 B6 95
-00 00 F4 95 3D 41 1A 42 C6 21 28 4E B2 92 C4 21
-90 2B BA 4F 00 00 A2 53 C6 21 8E 4A 00 00 3E 4F
-30 4D 00 00 03 46 57 31 84 12 F2 95 00 00 14 96
-03 46 57 32 84 12 F2 95 00 00 20 96 03 46 57 33
-84 12 F2 95 00 00 00 00 05 3F 47 4F 54 4F 3E 90
-00 30 07 24 3E E0 00 04 3E B0 00 10 02 24 3E E0
-00 08 87 12 C0 88 DA 86 2A 80 2C 96 04 47 4F 54
-4F 00 2F 83 8F 4E 00 00 3E 40 00 3C F2 3F
+00 01 92 D2 5E 01 08 18 38 40 59 14 18 83 FE 23
+19 83 FA 23 39 40 00 20 29 83 89 43 00 20 FC 23
+B0 12 0E 80 B2 40 81 00 00 05 92 42 02 18 06 05
+92 42 04 18 08 05 92 C3 00 05 3F 40 80 20 30 12
+D4 8B 4A 3F 24 89 86 5B 54 48 45 4E 5D 00 30 4D
+0C 4E 38 4F 3B 4F 39 4F 0E 4B 0E 5C 10 24 1B 83
+06 30 1C 83 04 30 19 53 F9 98 FF FF F5 27 2D 4D
+3E 4F 30 4D 2F 53 9F 83 00 00 F9 23 2F 53 2D 53
+F7 3F 16 8D 86 5B 45 4C 53 45 5D 00 0D 12 87 12
+24 80 00 00 AA 82 70 86 F2 83 62 86 68 82 4C 80
+AE 8D 70 82 2E 80 06 5B 54 48 45 4E 5D 00 20 8D
+88 8D 44 8D 66 8D 26 83 70 82 2E 80 06 5B 45 4C
+53 45 5D 00 20 8D 9E 8D 44 8D 64 8D 26 83 2E 80
+04 5B 49 46 5D 00 20 8D 66 8D 48 80 64 8D 22 82
+2E 80 05 0D 0A 6B 6F 20 00 82 D4 80 C4 80 48 80
+66 8D 54 8D 84 5B 49 46 5D 00 0E 93 3E 4F C6 27
+30 4D 2F 53 30 4D C4 8D 89 5B 44 45 46 49 4E 45
+44 5D 0D 12 87 12 70 86 F2 83 4A 84 D2 8D 26 83
+D8 8D 8B 5B 55 4E 44 45 46 49 4E 45 44 5D 0D 12
+87 12 E2 8D 06 8E 3D 41 30 40 B6 82 38 40 C0 21
+0A 4E 39 48 2E 48 09 5E 1E 52 C4 21 09 9E 03 24
+7A 9E FC 27 1E 83 0A 4E 2A 88 82 4A C4 21 30 4D
+1C 15 87 12 F2 83 4A 84 42 80 44 8E 06 85 4C 80
+00 88 5E 8E 46 8E 39 4E 39 80 86 12 08 24 19 53
+02 20 2E 4E 04 3C 2E 53 19 53 01 24 2E 82 1B 17
+30 41 3E 40 28 00 B0 12 30 8E 19 42 C6 21 A2 53
+C6 21 89 4E 00 00 3E 40 29 00 1C 15 12 12 C4 21
+92 53 C4 21 87 12 F2 83 06 85 4C 80 9A 8E 90 8E
+21 53 3E 90 10 00 80 2D E2 2B 9C 8E B2 41 C4 21
+DE 3F 0D 12 87 12 70 86 0C 8E AC 8E 0C 43 1B 42
+C6 21 A2 53 C6 21 6A 4E 3E 4F 7A 90 23 00 27 20
+92 53 C4 21 B0 12 30 8E 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 C6 21
+A2 53 C6 21 89 4E 00 00 3E 4F 3D 41 30 4D 7A 90
+26 00 07 20 3C 40 10 02 92 53 C4 21 B0 12 30 8E
+ED 3F 7A 90 40 00 16 20 3C 40 20 00 92 53 C4 21
+B0 12 7A 8E 0C 20 3C 50 10 00 3E 40 2B 00 B0 12
+7A 8E 92 92 C0 21 C4 21 02 24 92 53 C4 21 8E 10
+0C 5E DA 3F B0 12 7A 8E FA 23 3C 50 10 00 B0 12
+62 8E EF 3F 0C 43 1B 42 C6 21 A2 53 C6 21 0D 12
+87 12 70 86 0C 8E 78 8F FE 90 26 00 00 00 3E 40
+20 00 03 20 3C 50 82 00 C7 3F B0 12 7A 8E E0 23
+3C 50 80 00 B0 12 62 8E DB 3F 00 00 04 52 45 54
+49 00 0D 12 87 12 24 80 00 13 F8 85 26 83 24 80
+2C 00 A2 8E 6E 8F B8 8F 09 4B 2E 4E 0E DC A2 3F
+F6 89 03 4D 4F 56 84 12 AE 8F 00 40 C2 8F 05 4D
+4F 56 2E 42 84 12 AE 8F 40 40 00 00 03 41 44 44
+84 12 AE 8F 00 50 DC 8F 05 41 44 44 2E 42 84 12
+AE 8F 40 50 E8 8F 04 41 44 44 43 00 84 12 AE 8F
+00 60 F6 8F 06 41 44 44 43 2E 42 00 84 12 AE 8F
+40 60 9C 8F 04 53 55 42 43 00 84 12 AE 8F 00 70
+14 90 06 53 55 42 43 2E 42 00 84 12 AE 8F 40 70
+22 90 03 53 55 42 84 12 AE 8F 00 80 32 90 05 53
+55 42 2E 42 84 12 AE 8F 40 80 D2 89 03 43 4D 50
+84 12 AE 8F 00 90 4C 90 05 43 4D 50 2E 42 84 12
+AE 8F 40 90 BE 89 04 44 41 44 44 00 84 12 AE 8F
+00 A0 66 90 06 44 41 44 44 2E 42 00 84 12 AE 8F
+40 A0 58 90 03 42 49 54 84 12 AE 8F 00 B0 84 90
+05 42 49 54 2E 42 84 12 AE 8F 40 B0 90 90 03 42
+49 43 84 12 AE 8F 00 C0 9E 90 05 42 49 43 2E 42
+84 12 AE 8F 40 C0 AA 90 03 42 49 53 84 12 AE 8F
+00 D0 B8 90 05 42 49 53 2E 42 84 12 AE 8F 40 D0
+00 00 03 58 4F 52 84 12 AE 8F 00 E0 D2 90 05 58
+4F 52 2E 42 84 12 AE 8F 40 E0 04 90 03 41 4E 44
+84 12 AE 8F 00 F0 EC 90 05 41 4E 44 2E 42 84 12
+AE 8F 40 F0 70 86 A2 8E 0A 91 0A 4C 3C F0 70 00
+8A 10 3A F0 0F 00 0C DA 4F 3F 3E 90 03 52 52 43
+84 12 04 91 00 10 1C 91 05 52 52 43 2E 42 84 12
+04 91 40 10 28 91 04 53 57 50 42 00 84 12 04 91
+80 10 36 91 03 52 52 41 84 12 04 91 00 11 44 91
+05 52 52 41 2E 42 84 12 04 91 40 11 50 91 03 53
+58 54 84 12 04 91 80 11 00 00 04 50 55 53 48 00
+84 12 04 91 00 12 6A 91 06 50 55 53 48 2E 42 00
+84 12 04 91 40 12 C4 90 04 43 41 4C 4C 00 84 12
+04 91 80 12 1A 53 0E 4A 0D 12 87 12 9C 83 2E 80
+0D 6F 75 74 20 6F 66 20 62 6F 75 6E 64 73 7A 87
+70 86 0C 8E B6 91 92 53 C4 21 3E 40 2C 00 87 12
+F2 83 06 85 4C 80 00 88 64 8F CC 91 0A 4E 3E 4F
+1A 83 E0 33 29 4E 59 0E 0A 28 08 4C 59 0A 01 28
+0C 8A 08 8A 38 90 10 00 D5 2F 5A 0E 94 3F 2A 92
+D1 2F 8A 10 5A 06 8F 3F 5E 91 04 52 52 43 4D 00
+84 12 B0 91 50 00 FA 91 04 52 52 41 4D 00 84 12
+B0 91 50 01 08 92 04 52 4C 41 4D 00 84 12 B0 91
+50 02 16 92 04 52 52 55 4D 00 84 12 B0 91 50 03
+78 91 05 50 55 53 48 4D 84 12 B0 91 00 15 32 92
+04 50 4F 50 4D 00 84 12 B0 91 00 17 24 92 03 53
+3E 3D 85 12 00 38 4E 92 02 53 3C 00 85 12 00 34
+40 92 03 30 3E 3D 85 12 00 30 62 92 02 30 3C 00
+85 12 00 30 00 00 02 55 3C 00 85 12 00 2C 76 92
+03 55 3E 3D 85 12 00 28 6C 92 03 30 3C 3E 85 12
+00 24 8A 92 02 30 3D 00 85 12 00 20 00 00 02 49
+46 00 1A 42 C6 21 8A 4E 00 00 A2 53 C6 21 0E 4A
+30 4D 80 92 04 54 48 45 4E 00 1A 42 C6 21 08 4E
+3E 4F 09 48 29 53 0A 89 0A 11 3A 90 00 02 63 2F
+88 DA 00 00 30 4D 74 90 04 45 4C 53 45 00 1A 42
+C6 21 BA 40 00 3C 00 00 A2 53 C6 21 2F 83 8F 4A
+00 00 E3 3F B4 92 05 55 4E 54 49 4C 3A 4F 08 4E
+3E 4F 19 42 C6 21 2A 83 0A 89 0A 11 3A 90 00 FE
+42 3B 3A F0 FF 03 08 DA 89 48 00 00 A2 53 C6 21
+30 4D F8 90 05 41 47 41 49 4E 0A 4E 38 40 00 3C
+E7 3F 00 00 05 57 48 49 4C 45 0D 12 87 12 A2 92
+82 82 26 83 58 92 06 52 45 50 45 41 54 00 0D 12
+87 12 2A 93 BA 92 26 83 5A 93 3D 41 08 4E 3E 4F
+2A 48 B2 92 C4 21 CB 2F 98 42 C6 21 00 00 30 4D
+88 91 03 42 57 31 84 12 58 93 00 00 72 93 03 42
+57 32 84 12 58 93 00 00 7E 93 03 42 57 33 84 12
+58 93 00 00 96 93 3D 41 1A 42 C6 21 28 4E B2 92
+C4 21 8E 2B BA 4F 00 00 A2 53 C6 21 8E 4A 00 00
+3E 4F 30 4D 00 00 03 46 57 31 84 12 94 93 00 00
+B6 93 03 46 57 32 84 12 94 93 00 00 C2 93 03 46
+57 33 84 12 94 93 00 00 CE 93 04 47 4F 54 4F 00
+2F 83 8F 4E 00 00 3E 40 00 3C 0D 12 87 12 F0 87
+18 86 26 83 00 00 05 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
 @FFFE
-9E 8E
+6E 8C
 q
index 06c1a95..3da900f 100644 (file)
 @1800
-10 00 08 00 00 D6 E8 03 05 00 18 00 5E 96 D0 8C
-2D 01 6B 30 B6 82 C8 82
+10 00 08 00 00 D6 E8 03 05 00 18 00 02 94 88 8A
+2E 01 6B 30 06 81 18 81 D4 8B
 @8000
-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 3A 41 0D 12 0D 4A
-30 4D 00 00 04 45 58 49 54 00 3D 41 30 4D 24 80
-03 44 55 50 2F 83 8F 4E 00 00 30 4D 00 00 04 32
-44 55 50 00 8F 4E FE FF AF 4F FC FF 2F 82 30 4D
-00 00 04 3F 44 55 50 00 0E 93 EC 23 30 4D 30 80
-04 44 52 4F 50 00 3E 4F 30 4D 2F 53 30 4D 3E 80
-04 53 57 41 50 00 2A 4F 8F 4E 00 00 0E 4A 30 4D
-52 80 02 3E 52 00 0E 12 3E 4F 30 4D 70 80 02 52
-3E 00 2F 83 8F 4E 00 00 3E 41 30 4D 60 80 05 44
-45 50 54 48 8F 4E FE FF 3E 40 80 20 0E 8F 0E 11
-2F 83 30 4D 00 00 01 2D 3E 8F 3E E3 1E 53 30 4D
-00 00 02 31 2B 00 1E 53 30 4D C2 80 02 31 2D 00
-1E 83 30 4D 3E F3 06 34 BF E3 00 00 3E E3 9F 53
-00 00 0E 63 30 4D 00 00 01 40 2E 4E 30 4D E8 80
-01 21 BE 4F 00 00 3E 4F 30 4D CC 80 02 30 3D 00
-1E 83 0E 7E 30 4D FC 80 02 30 3C 00 0E 5E 0E 7E
-3E E3 30 4D 00 00 01 3D 3E 8F FA 27 0E F3 30 4D
-00 00 02 55 3C 00 3E 8F F9 2B 01 24 3E 43 30 4D
-16 81 02 3C 23 00 B2 40 B2 21 B2 21 30 4D 0B 4E
+30 40 04 80 B0 12 06 81 12 D2 0A 18 F9 3F 39 40
+38 00 29 83 B9 40 6E 8C 8C FF FB 23 B2 40 68 81
+E0 FF 30 41 2F 83 8F 4E 00 00 3E 4D 30 4D 2F 82
+8F 4E 02 00 7E 4D 8F 4D 00 00 0D 5E 1D B3 0D 63
+30 4D 0E 93 3E 4F 05 24 2D 4D 30 4D 0E 93 3E 4F
+FB 27 2D 53 30 4D 39 40 00 80 39 8F 08 4E 3E 4F
+08 59 19 15 30 4D 81 5E 00 00 3E 4F 32 B0 00 01
+EB 27 21 52 2D 53 30 4D 91 53 00 00 F7 3F 0B 4E
 1C 4F 02 00 2E 4F 0A 43 34 40 20 00 0E 93 04 20
 04 11 0E 4C 0C 43 09 43 0A 9B 01 28 0A 8B 09 69
 08 68 14 83 07 30 0C 5C 0E 6E 0A 6A F5 2B 0A 8B
-12 D3 F5 3F 34 40 00 80 8F 4A 02 00 8F 49 00 00
-0E 48 30 41 00 00 01 23 1B 42 DC 21 2C 4F 2F 83
-B0 12 46 81 BF 4F 00 00 7A 90 0A 00 02 28 7A 50
-07 00 7A 50 30 00 92 83 B2 21 18 42 B2 21 C8 4A
-00 00 30 4D 86 81 02 23 53 00 87 12 88 81 C0 81
-2D 83 09 93 E3 23 0E 93 E1 23 3D 41 30 4D B6 81
-02 23 3E 00 9F 42 B2 21 00 00 3E 40 B2 21 2E 8F
-30 4D 00 00 04 48 4F 4C 44 00 0A 4E 3E 4F DB 3F
-8E 80 04 53 49 47 4E 00 0E 93 3E 4F 3A 40 2D 00
-D2 33 30 4D 87 12 36 81 34 80 86 80 D4 80 BA 81
-92 80 F8 81 D4 81 D6 83 42 87 82 83 2A 80 22 81
-02 55 2E 00 08 43 2F 83 8F 4E 00 00 0E 48 EA 3F
-00 00 01 2E 0E 93 F6 37 38 43 F5 3F 2D 4D 30 4D
-0E 93 3E 4F FB 27 2D 53 30 4D 0E 93 3E 4F F6 23
-2D 53 30 4D 39 40 00 80 39 8F 08 4E 3E 4F 08 59
-19 15 30 4D 81 5E 00 00 3E 4F 32 B0 00 01 E6 27
-2D 53 21 52 30 4D 91 53 00 00 F7 3F E4 81 01 49
-2F 83 8F 4E 00 00 2E 41 1E 81 02 00 30 4D 00 00
-03 4B 45 59 30 40 98 82 18 42 0C 05 2F 83 8F 4E
-00 00 B0 12 B6 82 92 B3 1C 05 FD 27 1E 42 0C 05
-B0 12 C8 82 30 4D A2 B3 1C 05 FD 27 B2 40 11 00
-0E 05 E2 C3 43 02 30 41 B2 40 13 00 0E 05 E2 D3
-43 02 30 41 00 00 05 53 4C 45 45 50 30 40 E0 82
-B0 12 B6 82 12 D2 0A 18 F9 3F F0 80 06 41 43 43
-45 50 54 00 3C 40 64 83 3B 40 2E 83 2D 15 0A 4E
-2E 4F 0A 5E 3B 40 0D 00 3C 40 20 00 3D 40 58 83
-92 B3 1C 05 05 24 18 42 0C 05 38 90 0A 00 CB 23
-21 53 3D 15 DB 3F 21 52 3A 17 58 42 0C 05 48 9C
-08 2C 48 9B C9 27 78 92 11 20 2E 9F 0F 24 1E 83
-05 3C 0E 9A 03 24 CE 48 00 00 1E 53 A2 B3 1C 05
-FD 27 82 48 0E 05 30 4D 5A 83 2D 83 92 B3 1C 05
-E4 23 FC 27 82 93 DE 21 02 24 92 53 DE 21 3E 8F
-3D 41 B2 40 18 00 0A 18 30 4D 9E 80 04 45 4D 49
-54 00 30 40 86 83 08 4E 3E 4F E0 3F 3F 80 06 00
-8F 4E 04 00 3E 40 54 00 BF 40 3C 21 00 00 AF 4F
-02 00 A8 3F 7C 83 04 45 43 48 4F 00 B2 40 82 48
-52 83 82 43 DE 21 30 4D 32 82 06 4E 4F 45 43 48
-4F 00 B2 40 30 4D 52 83 92 43 DE 21 30 4D 20 82
-04 54 59 50 45 00 0E 93 0F 24 1E 15 3D 40 EC 83
-28 4F 7E 48 8F 48 00 00 2F 83 CB 3F EE 83 2D 83
-91 83 02 00 F5 23 1D 17 2F 53 3E 4F 30 4D D0 81
-02 43 52 00 30 40 08 84 87 12 1E 84 02 0D 0A 00
-D6 83 2A 80 2F 83 8F 4E 00 00 3E 4D 30 4D 2F 82
-8F 4E 02 00 7E 4D 8F 4D 00 00 0D 5E 1D B3 0D 63
-30 4D F2 81 82 53 22 00 82 43 B4 21 87 12 14 84
-1E 84 B0 86 14 84 22 00 80 84 4C 84 B2 40 20 00
-B4 21 6E 4E 1E 53 1E B3 82 6E C6 21 3D 41 3E 4F
-30 4D BA 83 82 2E 22 00 87 12 38 84 14 84 D6 83
-B0 86 2A 80 48 43 05 3C 00 00 04 57 4F 52 44 00
-48 4E 19 42 C0 21 1A 42 C2 21 09 5A 1A 52 C4 21
-09 9A 03 24 7E 9A FC 27 1A 83 4E F8 06 20 0E 4A
-1A 82 C2 21 82 4A C4 21 30 4D 18 42 C6 21 3B 40
-60 00 C8 4C 00 00 09 9A 0C 24 7C 4A 4E 9C 09 24
-18 53 4B 9C F6 2F 7C 90 7B 00 F3 2F 5C 82 B4 21
-F0 3F 1A 82 C2 21 82 4A C4 21 1E 42 C6 21 08 8E
-CE 48 00 00 30 4D 00 00 04 46 49 4E 44 00 2F 83
-0C 4E 65 4C 74 40 80 00 3B 40 CA 21 3E 4B 0E 93
-1E 24 58 4C 01 00 78 F0 1E 00 0E 58 2E 53 1E 4E
-FE FF 0E 93 F3 27 09 4E 78 49 48 C4 48 95 F7 23
-0A 4C FA 99 01 00 F3 23 1A 53 58 83 FA 23 19 B3
-09 63 0C 49 6A 4E 1E 43 4A 93 01 30 2E 83 8F 4C
-00 00 35 40 0E 80 34 40 00 80 30 4D 82 80 07 3E
-4E 55 4D 42 45 52 3C 4F 38 4F 29 4F 2F 82 1B 42
-DC 21 6A 4C 7A 80 30 00 7A 90 0A 00 05 28 7A 80
-07 00 7A 90 0A 00 12 28 0A 9B 22 C3 0F 2C 82 49
-D0 04 82 48 D2 04 82 4B C8 04 19 42 E4 04 18 42
-E6 04 09 5A 08 63 1C 53 1E 83 E3 23 8F 4C 00 00
-8F 48 02 00 8F 49 04 00 30 4D 32 C0 00 02 1B 42
-DC 21 0C 43 2D 15 3D 40 F4 85 09 43 08 43 3F 82
-8F 4E 06 00 0C 4E 7E 4C 6A 4C 7A 90 2D 00 04 28
-C9 23 B1 43 02 00 DF 3F 2B 43 7A 80 25 00 07 24
-3B 52 6A 53 04 24 3B 40 10 00 5A 83 BA 23 1C 53
-1E 83 EA 3F F6 85 2F 24 2D 83 7A 90 28 00 CB 27
-32 D0 00 02 7A 90 F7 00 C6 27 7A 90 F5 00 23 20
-0A 4E 09 43 8F 49 02 00 5A 83 09 4A 09 5C 69 49
-79 80 30 00 79 90 0A 00 05 28 79 80 07 00 79 90
-0A 00 0A 28 09 9B 08 2C 8F 49 00 00 0E 4B 2C 15
-B0 12 3E 81 2A 17 E6 3F 9F 4F 04 00 02 00 AF 4F
-04 00 0E 4A 4E 93 2B 17 0E 4C 82 4B DC 21 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 7E 82 04 48 45 52 45 00
-2F 83 8F 4E 00 00 1E 42 C6 21 30 4D B6 80 01 2C
-1A 42 C6 21 8A 4E 00 00 A2 53 C6 21 3E 4F 30 4D
-EC 82 05 41 4C 4C 4F 54 82 5E C6 21 3E 4F 30 4D
-A6 83 07 45 58 45 43 55 54 45 0A 4E 3E 4F 00 4A
-AE 86 87 4C 49 54 45 52 41 4C 82 93 BE 21 0C 24
-1A 42 C6 21 A2 52 C6 21 BA 40 14 84 00 00 8A 4E
-02 00 3E 4F 32 B0 00 02 32 C0 00 02 06 24 19 4A
-02 00 8A 4E 02 00 0E 49 EB 3F 30 4D 00 84 05 43
-4F 55 4E 54 2F 83 1E 53 8F 4E 00 00 5E 4E FF FF
-30 4D 82 4E C0 21 B2 4F C2 21 3E 4F 82 43 C4 21
-30 4D 85 12 20 00 87 12 32 87 42 87 80 84 50 87
-3D 40 58 87 CC 22 82 3E 5A 87 0A 4E 3E 4F 3D 40
-70 87 23 27 3D 40 4A 87 1A E2 BE 21 A1 27 B5 23
-72 87 3E 4F 3D 40 4A 87 B8 23 DE 53 00 00 68 4E
-08 5E F8 40 3F 00 00 00 3D 40 26 8A CB 3F D2 86
+12 D3 F5 3F 34 40 EC 80 8F 4A 02 00 8F 49 00 00
+0E 48 30 41 82 4E C0 21 B2 4F C2 21 3E 4F 82 43
+C4 21 30 4D 3F 80 06 00 8F 4E 04 00 3E 40 54 00
+BF 40 3C 21 00 00 AF 4F 02 00 24 3C 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 A2 B3 1C 05 FD 27 B2 40 11 00
+0E 05 E2 C3 43 02 30 41 A2 B3 1C 05 FD 27 B2 40
+13 00 0E 05 E2 D3 43 02 30 41 00 00 06 41 43 43
+45 50 54 00 3C 40 A6 81 3B 40 70 81 2D 15 0A 4E
+2E 4F 0A 5E 3B 40 0D 00 3C 40 20 00 3D 40 9A 81
+92 B3 1C 05 05 24 18 42 0C 05 38 90 0A 00 D3 23
+21 53 3D 15 30 40 00 80 21 52 3A 17 58 42 0C 05
+48 9C 08 2C 48 9B D0 27 78 92 11 20 2E 9F 0F 24
+1E 83 05 3C 0E 9A 03 24 CE 48 00 00 1E 53 A2 B3
+1C 05 FD 27 82 48 0E 05 30 4D 9C 81 2D 83 92 B3
+1C 05 E4 23 FC 27 82 93 DE 21 02 24 92 53 DE 21
+3E 8F 3D 41 B2 40 18 00 0A 18 30 4D 00 00 04 45
+4D 49 54 00 30 40 C8 81 08 4E 3E 4F E0 3F BE 81
+04 45 43 48 4F 00 B2 40 82 48 94 81 82 43 DE 21
+30 4D 00 00 06 4E 4F 45 43 48 4F 00 B2 40 30 4D
+94 81 92 43 DE 21 30 4D 00 00 04 54 59 50 45 00
+0E 93 0F 24 1E 15 3D 40 16 82 28 4F 7E 48 8F 48
+00 00 2F 83 D7 3F 18 82 2D 83 91 83 02 00 F5 23
+1D 17 2F 53 3E 4F 30 4D 00 00 02 43 52 00 30 40
+32 82 0D 12 87 12 2E 80 02 0D 0A 00 00 82 26 83
+00 00 03 4B 45 59 30 40 4A 82 18 42 0C 05 2F 83
+8F 4E 00 00 B0 12 06 81 92 B3 1C 05 FD 27 1E 42
+0C 05 B0 12 18 81 30 4D 2F 83 8F 4E 00 00 30 4D
+8F 4E FE FF AF 4F FC FF 2F 82 30 4D 0E 93 F4 23
+30 4D 2A 4F 8F 4E 00 00 0E 4A 30 4D 8F 4E FE FF
+3E 40 80 20 0E 8F 0E 11 2F 83 30 4D 2F 83 8F 4E
+00 00 3E 41 30 4D 3E 8F 3E E3 1E 53 30 4D BE 4F
+00 00 3E 4F 30 4D 1E 83 0E 7E 30 4D 0E 5E 0E 7E
+3E E3 30 4D 3E 8F 03 24 3E 43 01 2C 0E F3 30 4D
+00 00 02 3C 23 00 B2 40 B2 21 B2 21 30 4D 2A 82
+01 23 1B 42 DC 21 2C 4F 2F 83 B0 12 86 80 BF 4F
+00 00 7A 90 0A 00 02 28 7A 50 07 00 7A 50 30 00
+92 83 B2 21 18 42 B2 21 C8 4A 00 00 30 4D E0 82
+02 23 53 00 0D 12 87 12 E2 82 1C 83 2D 83 09 93
+E2 23 0E 93 E0 23 3D 41 30 4D 10 83 02 23 3E 00
+9F 42 B2 21 00 00 3E 40 B2 21 2E 8F 30 4D 00 00
+04 48 4F 4C 44 00 4A 4E 3E 4F DA 3F 00 00 04 53
+49 47 4E 00 0E 93 3E 4F 7A 40 2D 00 D1 33 30 4D
+FA 81 02 55 2E 00 08 43 2F 83 8F 4E 00 00 0E 48
+0D 12 0E 12 3E F3 06 34 BF E3 00 00 3E E3 9F 53
+00 00 0E 63 87 12 D6 82 14 83 9C 82 54 83 30 83
+00 82 70 86 C4 81 26 83 E4 81 01 2E 0E 93 E3 37
+38 43 E2 3F 4E 83 82 53 22 00 82 43 B4 21 0D 12
+87 12 24 80 2E 80 F8 85 24 80 22 00 F2 83 C0 83
+B2 40 20 00 B4 21 6E 4E 1E 53 1E B3 82 6E C6 21
+3D 41 3E 4F 30 4D 9A 83 82 2E 22 00 0D 12 87 12
+AA 83 24 80 00 82 F8 85 26 83 00 00 04 57 4F 52
+44 00 3C 40 C0 21 39 4C 3A 4C 09 5A 3A 5C 28 4C
+09 9A 15 24 7E 9A FC 27 1A 83 3B 40 60 00 C8 4C
+00 00 09 9A 0C 24 7C 4A 4E 9C 09 24 18 53 4B 9C
+F6 2F 7C 90 7B 00 F3 2F 5C 82 B4 21 F0 3F 1A 82
+C2 21 82 4A C4 21 1E 42 C6 21 08 8E CE 48 00 00
+30 4D 00 00 04 46 49 4E 44 00 2F 83 0C 4E 65 4C
+74 40 80 00 3B 40 CA 21 3E 4B 0E 93 1E 24 58 4C
+01 00 78 F0 1E 00 0E 58 2E 53 1E 4E FE FF 0E 93
+F3 27 09 4E 78 49 48 C4 48 95 F7 23 0A 4C FA 99
+01 00 F3 23 1A 53 58 83 FA 23 19 B3 09 63 0C 49
+6A 4E 1E 43 4A 93 01 30 2E 83 8F 4C 00 00 35 40
+FA 80 34 40 EC 80 30 4D 00 00 07 3E 4E 55 4D 42
+45 52 3C 4F 38 4F 29 4F 2F 82 1B 42 DC 21 6A 4C
+7A 80 30 00 7A 90 0A 00 05 28 7A 80 07 00 7A 90
+0A 00 12 28 0A 9B 22 C3 0F 2C 82 49 D0 04 82 48
+D2 04 82 4B C8 04 19 42 E4 04 18 42 E6 04 09 5A
+08 63 1C 53 1E 83 E3 23 8F 4C 00 00 8F 48 02 00
+8F 49 04 00 30 4D 32 C0 00 02 1B 42 DC 21 0C 43
+2D 15 3D 40 50 85 09 43 08 43 3F 82 8F 4E 06 00
+0C 4E 7E 4C 6A 4C 7A 90 2D 00 04 28 C9 23 B1 43
+02 00 0B 3C 2B 43 7A 80 25 00 07 24 3B 52 6A 53
+04 24 3B 40 10 00 5A 83 BA 23 1C 53 1E 83 EA 3F
+52 85 2F 24 2D 83 7A 90 28 00 CB 27 32 D0 00 02
+7A 90 F7 00 C6 27 7A 90 F5 00 23 20 0A 4E 09 43
+8F 49 02 00 5A 83 09 4A 09 5C 69 49 79 80 30 00
+79 90 0A 00 05 28 79 80 07 00 79 90 0A 00 0A 28
+09 9B 08 2C 8F 49 00 00 0E 4B 2C 15 B0 12 7E 80
+2A 17 E6 3F 9F 4F 04 00 02 00 AF 4F 04 00 0E 4A
+4E 93 2B 17 0E 4C 82 4B DC 21 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 00 00 01 2C 1A 42 C6 21 8A 4E 00 00
+A2 53 C6 21 3E 4F 30 4D 2C 81 05 41 4C 4C 4F 54
+82 5E C6 21 3E 4F 30 4D 0A 4E 3E 4F 00 4A F6 85
+87 4C 49 54 45 52 41 4C 82 93 BE 21 0C 24 1A 42
+C6 21 A2 52 C6 21 BA 40 24 80 00 00 8A 4E 02 00
+3E 4F 32 B0 00 02 32 C0 00 02 06 24 19 4A 02 00
+8A 4E 02 00 0E 49 EB 3F 30 4D 2C 83 05 43 4F 55
+4E 54 2F 83 1E 53 8F 4E 00 00 5E 4E FF FF 30 4D
+85 12 20 00 0D 12 87 12 C4 80 70 86 F2 83 80 86
+3D 40 88 86 E2 22 A4 26 8A 86 0A 4E 3E 4F 3D 40
+A0 86 39 27 3D 40 7A 86 1A E2 BE 21 BD 23 AC 27
+A2 86 3E 4F 3D 40 7A 86 BF 23 DE 53 00 00 68 4E
+08 5E F8 40 3F 00 00 00 3D 40 20 89 D2 3F D0 81
 08 45 56 41 4C 55 41 54 45 00 39 40 C0 21 3C 49
-3B 49 3A 49 3D 15 B0 12 2A 80 46 87 AE 87 B2 41
-C4 21 B2 41 C2 21 B2 41 C0 21 3D 41 30 4D 85 12
-BE 21 08 81 04 51 55 49 54 00 82 43 08 18 31 40
-E0 20 B2 40 00 20 00 20 82 43 BE 21 B0 12 2A 80
-04 84 8C 83 42 87 82 83 46 87 A4 80 0C 81 1E 84
-0C 73 74 61 63 6B 20 65 6D 70 74 79 21 00 40 88
-14 84 30 FF A0 86 26 81 1E 84 0A 46 52 41 4D 20
-66 75 6C 6C 21 00 40 88 3C 82 E0 87 C2 86 05 41
-42 4F 52 54 3F 40 80 20 D0 3F 1E 88 86 41 42 4F
-52 54 22 00 87 12 38 84 14 84 40 88 B0 86 2A 80
-8F 93 02 00 03 20 2F 52 3E 4F 30 4D B0 12 C8 8D
-B0 12 B6 82 92 C3 1C 05 38 40 AA 0A 39 42 03 43
-19 83 FD 23 18 83 FA 23 92 B3 1C 05 F3 23 87 12
-42 8D 14 84 DE 21 EA 80 AC 83 1E 84 04 1B 5B 37
-6D 00 D6 83 58 80 40 82 9A 88 04 84 1E 84 05 6C
-69 6E 65 3A D6 83 D0 80 24 82 D6 83 1E 84 04 1B
-5B 30 6D 00 D6 83 24 88 00 00 83 5B 27 5D 87 12
-C0 88 14 84 14 84 B0 86 B0 86 2A 80 E8 84 01 27
-87 12 42 87 80 84 EE 84 40 82 CE 88 2A 80 7A 87
-32 81 81 5C 92 42 C0 21 C4 21 30 4D AA 88 81 5B
-82 43 BE 21 30 4D D2 88 01 5D B2 43 BE 21 30 4D
-BE 4F 02 00 3E 4F 30 4D 9A 86 82 49 53 00 87 12
-BE 87 EA 80 40 82 12 89 AE 88 14 84 F0 88 B0 86
-2A 80 C0 88 F0 88 2A 80 FA 88 09 49 4D 4D 45 44
-49 41 54 45 1A 42 B6 21 FA D0 80 00 00 00 30 4D
-C4 87 88 50 4F 53 54 50 4F 4E 45 00 87 12 42 87
-80 84 EE 84 58 80 40 82 CE 88 0C 81 40 82 5C 89
-14 84 14 84 B0 86 B0 86 14 84 B0 86 B0 86 2A 80
-DE 88 81 3B 82 93 BE 21 B5 27 87 12 14 84 2A 80
-B0 86 FA 89 E0 88 2A 80 62 89 07 3A 4E 4F 4E 41
-4D 45 30 12 A0 89 2F 83 8F 4E 00 00 1E 42 C6 21
-1E B3 0E 63 0A 4E 39 40 00 02 38 40 02 02 21 3C
-BA 40 87 12 FC FF A2 83 C6 21 B2 43 BE 21 30 4D
-7A 89 01 3A 30 12 A0 89 92 B3 C6 21 A2 63 C6 21
-87 12 42 87 80 84 C8 89 3D 41 08 4E 7A 4E 5A D3
-5A 53 0A 58 19 42 DA 21 6E 4E 3E F0 1E 00 09 5E
-3E 4F 82 48 B6 21 82 49 B8 21 82 4A BA 21 82 4F
-BC 21 2A 52 82 4A C6 21 30 41 82 9F BC 21 09 20
-18 42 B6 21 19 42 B8 21 A8 49 FE FF 89 48 00 00
-30 4D 87 12 1E 84 0F 73 74 61 63 6B 20 6D 69 73
-6D 61 74 63 68 21 4C 88 90 87 05 44 45 46 45 52
-B0 12 B8 89 BA 40 30 40 FC FF BA 40 AE 89 FE FF
-E3 3F 1E 87 06 43 52 45 41 54 45 00 B0 12 B8 89
-BA 40 85 12 FC FF 8A 4A FE FF D6 3F 2A 8A 05 44
-4F 45 53 3E 1A 42 BA 21 BA 40 84 12 00 00 8A 4D
-02 00 3D 41 30 4D 4E 85 05 3E 42 4F 44 59 2E 52
-30 4D 44 8A 04 43 4F 44 45 00 B0 12 B8 89 A2 82
-C6 21 87 12 D2 8C AC 8C 2A 80 84 8A 07 43 4F 44
-45 4E 4E 4D B0 12 86 89 F2 3F 00 00 07 45 4E 44
-43 4F 44 45 87 12 E0 8C FA 89 2A 80 2C 88 03 41
-53 4D B2 40 B0 8C DA 21 E0 3F AC 8A 06 45 4E 44
-41 53 4D 00 87 12 B4 8A F4 8C 2A 80 00 00 05 43
-4F 4C 4F 4E 1A 42 C6 21 BA 40 87 12 00 00 A2 53
-C6 21 B2 43 BE 21 30 40 E0 8C 00 00 05 4C 4F 32
-48 49 1A 42 C6 21 BA 40 B0 12 00 00 BA 40 2A 80
-02 00 A2 52 C6 21 ED 3F 1A 89 85 48 49 32 4C 4F
-87 12 A0 86 4A 8B B0 86 E0 88 D2 8C AC 8C 2A 80
-1A 8B 82 49 46 00 2F 83 8F 4E 00 00 1E 42 C6 21
-A2 52 C6 21 BE 40 40 82 00 00 2E 53 30 4D 5E 8A
-84 45 4C 53 45 00 A2 52 C6 21 1A 42 C6 21 BA 40
-3C 82 FC FF 8E 4A 00 00 2A 83 0E 4A 30 4D D0 83
-84 54 48 45 4E 00 9E 42 C6 21 00 00 3E 4F 30 4D
-9C 8A 85 42 45 47 49 4E 30 40 A0 86 70 8B 85 55
-4E 54 49 4C 39 40 40 82 A2 52 C6 21 1A 42 C6 21
-8A 49 FC FF 8A 4E FE FF 3E 4F 30 4D BE 8A 85 41
-47 41 49 4E 39 40 3C 82 EF 3F 7A 84 85 57 48 49
-4C 45 87 12 36 8B 76 80 2A 80 34 84 86 52 45 50
-45 41 54 00 87 12 B4 8B 76 8B 2A 80 50 8B 82 44
-4F 00 2F 83 8F 4E 00 00 A2 53 C6 21 1E 42 C6 21
-BE 40 54 82 FE FF A2 53 00 20 1A 42 00 20 8A 43
-00 00 30 4D E2 86 84 4C 4F 4F 50 00 39 40 76 82
-A2 52 C6 21 1A 42 C6 21 8A 49 FC FF 8A 4E FE FF
-1E 42 00 20 A2 83 00 20 2E 4E 0E 93 03 24 8E 4A
-00 00 F6 3F 3E 4F 30 4D 90 82 85 2B 4C 4F 4F 50
-39 40 64 82 E5 3F 06 8C 04 4D 4F 56 45 00 0A 4E
-38 4F 39 4F 3E 4F 0A 93 11 24 08 99 0F 24 06 2C
-F8 49 00 00 18 53 1A 83 FB 23 30 4D 08 5A 09 5A
-19 83 18 83 E8 49 00 00 1A 83 FA 23 30 4D 14 84
-CA 21 F2 80 2A 80 84 12 7E 8C AE 8B 44 8F DE 8B
-BE 88 32 8B 3A 8C 58 90 64 84 66 8D 80 8D 8E 8B
-00 8E 00 00 2A 90 E8 88 78 8A 00 00 84 12 7E 8C
-76 95 D8 95 2A 95 4C 96 F0 94 00 00 20 92 00 00
-E6 94 96 95 48 95 86 95 30 93 00 00 00 00 28 96
-AA 8C 3A 40 0C 00 39 40 CA 21 38 40 CC 21 C6 3F
-3A 40 0E 00 39 40 CC 21 38 40 CA 21 B9 3F 82 43
-CC 21 30 4D 92 42 CA 21 DA 21 30 4D 86 8C EE 8C
-F4 8C 04 8D 3A 4E 82 4A C8 21 2E 4E 82 4E C6 21
-3D 40 10 00 09 4A 08 49 29 83 18 48 FE FF 0E 98
-FC 2B 89 48 00 00 1D 83 F6 23 2A 4A 0A 93 F0 23
-3E 4F 3D 41 30 4D 32 89 09 50 57 52 5F 53 54 41
-54 45 84 12 FC 8C D0 8C 5E 96 CC 8B 09 52 53 54
-5F 53 54 41 54 45 92 42 0E 18 46 8D 92 42 0C 18
-48 8D EF 3F 38 8D 08 50 57 52 5F 48 45 52 45 00
-92 42 C8 21 46 8D 92 42 C6 21 48 8D 30 4D 4C 8D
-08 52 53 54 5F 48 45 52 45 00 92 42 C8 21 0E 18
-92 42 C6 21 0C 18 EC 3F BC 8B 04 57 49 50 45 00
-39 40 10 00 29 83 B9 43 80 FF FC 23 B2 40 E0 82
-DE 82 B2 40 0A 8E 08 8E B2 40 D0 8C 0E 18 B2 40
-5E 96 0C 18 30 12 56 8D B2 40 86 83 84 83 B2 40
-08 84 06 84 B2 40 98 82 96 82 B2 40 18 00 0A 18
-37 40 1A 80 36 40 92 80 35 40 0E 80 34 40 00 80
-B2 40 0A 00 DC 21 B2 40 20 00 B4 21 30 41 9A 8D
-04 57 41 52 4D 00 30 40 0A 8E 3D 40 40 8E 92 C3
-30 01 1E 42 08 18 0E 93 12 24 F2 B0 10 00 00 02
-02 20 3E E3 1E 53 F2 D0 30 00 0A 02 3E 90 0A 00
-B7 27 3E 90 16 00 B4 2F 2E 93 83 27 8C 2F 30 4D
-1E 84 06 0D 1B 5B 37 6D 23 00 D6 83 34 82 1E 84
-19 46 61 73 74 46 6F 72 74 68 20 C2 A9 4A 2E 4D
-2E 54 68 6F 6F 72 65 6E 73 20 D6 83 14 84 30 FF
-A0 86 B8 80 24 82 1E 84 0A 62 79 74 65 73 20 66
-72 65 65 00 3C 82 9A 88 82 8B 04 43 4F 4C 44 00
-92 B3 0A 05 FD 23 B2 40 04 A5 20 01 40 8E B2 40
-88 5A CC 01 B2 D3 06 02 B2 40 FE FF 02 02 B2 D3
-26 02 B2 40 FF 7F 22 02 B2 D3 46 02 B2 40 FC FF
-42 02 E2 D3 45 02 B2 40 00 A5 60 01 B2 40 FF 1E
+3B 49 3A 49 3D 15 87 12 74 86 DC 86 B2 41 C4 21
+B2 41 C2 21 B2 41 C0 21 3D 41 30 4D 85 12 BE 21
+00 00 04 51 55 49 54 00 82 43 08 18 31 40 E0 20
+B2 40 00 20 00 20 82 43 BE 21 87 12 2E 82 D4 80
+70 86 C4 81 74 86 8C 82 BC 82 2E 80 0C 73 74 61
+63 6B 20 65 6D 70 74 79 21 00 6E 87 24 80 40 FF
+2A 8A C4 82 2E 80 0A 46 52 41 4D 20 66 75 6C 6C
+21 00 6E 87 48 80 0C 87 0A 86 05 41 42 4F 52 54
+3F 40 80 20 D1 3F 4A 87 86 41 42 4F 52 54 22 00
+0D 12 87 12 AA 83 24 80 6E 87 F8 85 26 83 8F 93
+02 00 03 20 2F 52 3E 4F 30 4D B0 12 96 8B B0 12
+06 81 92 C3 1C 05 18 42 06 18 39 40 20 00 19 83
+FE 23 18 83 FA 23 92 B3 1C 05 F3 23 0D 12 87 12
+10 8B 24 80 DE 21 02 81 D6 81 2E 80 04 1B 5B 37
+6D 00 00 82 7C 82 4C 80 C8 87 2E 82 2E 80 05 6C
+69 6E 65 3A 00 82 66 83 00 82 2E 80 04 1B 5B 30
+6D 00 00 82 50 87 00 00 83 5B 27 5D 0D 12 87 12
+F0 87 24 80 24 80 F8 85 F8 85 26 83 44 84 01 27
+0D 12 87 12 70 86 F2 83 4A 84 4C 80 00 88 26 83
+AA 86 D2 82 81 5C 92 42 C0 21 C4 21 30 4D D8 87
+81 5B 82 43 BE 21 30 4D 04 88 01 5D B2 43 BE 21
+30 4D F2 86 88 50 4F 53 54 50 4F 4E 45 00 0D 12
+87 12 70 86 F2 83 4A 84 7C 82 4C 80 00 88 BC 82
+4C 80 50 88 24 80 24 80 F8 85 F8 85 24 80 F8 85
+F8 85 26 83 40 83 09 49 4D 4D 45 44 49 41 54 45
+1A 42 B6 21 FA D0 80 00 00 00 30 4D 10 88 01 3A
+30 12 B8 88 92 B3 C6 21 A2 63 C6 21 0D 12 87 12
+70 86 F2 83 86 88 3D 41 08 4E 7A 4E 5A D3 5A 53
+0A 58 19 42 DA 21 6E 4E 3E F0 1E 00 09 5E 3E 4F
+82 48 B6 21 82 49 B8 21 82 4A BA 21 82 4F BC 21
+2A 52 82 4A C6 21 30 41 BA 40 0D 12 FC FF BA 40
+87 12 FE FF B2 43 BE 21 30 4D 6E 88 07 3A 4E 4F
+4E 41 4D 45 30 12 B8 88 2F 83 8F 4E 00 00 1E 42
+C6 21 1E B3 0E 63 0A 4E 39 40 10 02 38 40 12 02
+D7 3F 82 9F BC 21 09 20 18 42 B6 21 19 42 B8 21
+A8 49 FE FF 89 48 00 00 30 4D 0D 12 87 12 2E 80
+0F 73 74 61 63 6B 20 6D 69 73 6D 61 74 63 68 21
+7A 87 CC 88 81 3B 82 93 BE 21 6D 27 0D 12 87 12
+24 80 26 83 F8 85 F2 88 12 88 26 83 5C 86 06 43
+52 45 41 54 45 00 B0 12 74 88 BA 40 85 12 FC FF
+8A 4A FE FF D5 3F C0 86 05 44 4F 45 53 3E 1A 42
+BA 21 BA 40 84 12 00 00 8A 4D 02 00 3D 41 30 4D
+3E 89 04 43 4F 44 45 00 B0 12 74 88 A2 82 C6 21
+0D 12 87 12 8A 8A 64 8A 26 83 72 89 07 43 4F 44
+45 4E 4E 4D 30 12 7C 89 9F 3F 00 00 07 45 4E 44
+43 4F 44 45 0D 12 87 12 F2 88 A4 8A 26 83 58 87
+03 41 53 4D B2 40 68 8A DA 21 DE 3F 9C 89 06 45
+4E 44 41 53 4D 00 0D 12 87 12 A4 89 C2 8A 26 83
+00 00 05 43 4F 4C 4F 4E 1A 42 C6 21 BA 40 0D 12
+00 00 BA 40 87 12 02 00 A2 52 C6 21 B2 43 BE 21
+30 40 A4 8A 00 00 05 4C 4F 32 48 49 A2 83 C6 21
+1A 42 C6 21 EE 3F 56 88 85 48 49 32 4C 4F 0D 12
+87 12 2A 8A 1E 8A F8 85 12 88 80 89 26 83 2E 53
+30 4D 8C 89 85 42 45 47 49 4E 2F 83 8F 4E 00 00
+1E 42 C6 21 30 4D 24 80 CA 21 AE 82 26 83 84 12
+36 8A B0 89 5C 8C 58 89 EE 87 08 8A 42 82 20 86
+D8 83 34 8B 4E 8B 62 83 CE 8B 00 00 E2 8D 1A 88
+AA 84 00 00 84 12 36 8A 14 93 7A 93 C8 92 CA 93
+8E 92 00 00 BE 8F 00 00 84 92 36 93 E6 92 24 93
+CE 90 00 00 00 00 E6 93 62 8A 3A 40 0C 00 39 40
+D6 21 08 49 28 53 19 83 18 83 E8 49 00 00 1A 83
+FA 23 30 4D 3A 40 0E 00 38 40 CA 21 09 48 29 53
+F8 49 00 00 18 53 1A 83 FB 23 30 4D 82 43 CC 21
+30 4D 92 42 CA 21 DA 21 30 4D 3E 8A BC 8A C2 8A
+D2 8A 3A 4E 82 4A C8 21 2E 4E 82 4E C6 21 3D 40
+10 00 09 4A 08 49 29 83 18 48 FE FF 0E 98 FC 2B
+89 48 00 00 1D 83 F6 23 2A 4A 0A 93 F0 23 3E 4F
+3D 41 30 4D 24 88 09 50 57 52 5F 53 54 41 54 45
+84 12 CA 8A 88 8A 02 94 A6 83 09 52 53 54 5F 53
+54 41 54 45 92 42 0E 18 14 8B 92 42 0C 18 16 8B
+EF 3F 06 8B 08 50 57 52 5F 48 45 52 45 00 92 42
+C8 21 14 8B 92 42 C6 21 16 8B 30 4D 1A 8B 08 52
+53 54 5F 48 45 52 45 00 92 42 C8 21 0E 18 92 42
+C6 21 0C 18 EC 3F EC 83 04 57 49 50 45 00 39 40
+10 00 29 83 B9 43 80 FF FC 23 B2 40 04 80 02 80
+B2 40 D8 8B D6 8B B2 40 88 8A 0E 18 B2 40 02 94
+0C 18 30 12 24 8B B2 40 C8 81 C6 81 B2 40 32 82
+30 82 B2 40 4A 82 48 82 B2 40 18 00 0A 18 37 40
+26 83 36 40 9C 82 35 40 FA 80 34 40 EC 80 B2 40
+0A 00 DC 21 B2 40 20 00 B4 21 30 41 68 8B 04 57
+41 52 4D 00 30 40 D8 8B 3D 40 12 8C 92 C3 30 01
+1E 42 08 18 0E 93 14 24 F2 B0 10 00 00 02 02 20
+3E E3 1E 53 F2 D0 30 00 0A 02 92 D3 1A 05 3E 90
+0A 00 B5 27 3E 90 16 00 B2 2F 2E 93 81 27 8A 2F
+30 4D 2E 80 07 0D 0A 1B 5B 37 6D 23 00 82 9C 83
+2E 80 19 46 61 73 74 46 6F 72 74 68 20 C2 A9 4A
+2E 4D 2E 54 68 6F 6F 72 65 6E 73 20 00 82 24 80
+40 FF 2A 8A A6 82 66 83 2E 80 0A 62 79 74 65 73
+20 66 72 65 65 00 48 80 C8 87 24 8A 04 43 4F 4C
+44 00 92 B3 0A 05 FD 23 B2 40 04 A5 20 01 31 40
+E0 20 B2 40 88 5A CC 01 B2 D3 06 02 B2 40 FE FF
+02 02 B2 D3 26 02 B2 40 FF 7F 22 02 B2 D3 46 02
+B2 40 FC FF 42 02 E2 D3 45 02 B2 40 00 A5 60 01
+B2 D0 10 00 86 01 F2 D0 03 00 0B 02 B2 40 FF 1E
 80 01 B2 40 B0 00 82 01 B2 40 1E 00 84 01 39 40
-10 00 B2 D0 10 00 86 01 92 D2 5E 01 08 18 38 40
-59 14 18 83 FE 23 19 83 FA 23 39 40 00 20 29 83
-89 43 00 20 FC 23 39 40 38 00 29 83 B9 40 9E 8E
-8C FF FB 23 B2 40 26 83 E0 FF B2 40 81 00 00 05
-92 42 02 18 06 05 92 42 04 18 08 05 92 C3 00 05
-92 D3 1A 05 3F 40 80 20 31 40 E0 20 30 12 06 8E
-4C 3F 8A 8E 07 43 4F 4D 50 41 52 45 0C 4E 38 4F
-3B 4F 39 4F 0E 4B 0E 5C 0C 24 1B 83 07 30 1C 83
-07 30 19 53 F9 98 FF FF F5 27 02 2C 3E 43 30 4D
-1E 43 30 4D B2 89 86 5B 54 48 45 4E 5D 00 30 4D
-76 8F 86 5B 45 4C 53 45 5D 00 87 12 14 84 00 00
-C6 80 42 87 80 84 24 87 34 80 40 82 EC 8F 44 80
-1E 84 06 5B 54 48 45 4E 5D 00 4C 8F 4A 82 BC 8F
-F8 83 D0 80 58 80 4A 82 92 8F 2A 80 44 80 1E 84
-06 5B 45 4C 53 45 5D 00 4C 8F 4A 82 DA 8F F8 83
-D0 80 58 80 4A 82 90 8F 2A 80 1E 84 04 5B 49 46
-5D 00 4C 8F 4A 82 92 8F 3C 82 90 8F F8 83 1E 84
-05 0D 0A 6B 6F 20 D6 83 8C 83 32 87 3C 82 92 8F
-82 8F 84 5B 49 46 5D 00 0E 93 3E 4F BE 27 30 4D
-02 90 89 5B 44 45 46 49 4E 45 44 5D 87 12 42 87
-80 84 EE 84 6A 80 2A 80 12 90 8B 5B 55 4E 44 45
-46 49 4E 45 44 5D 87 12 42 87 80 84 EE 84 6A 80
-00 81 2A 80 46 90 3D 41 B2 4E 0E 18 A2 4E 0C 18
-3E 4F 30 40 56 8D 48 8C 06 4D 41 52 4B 45 52 00
-B0 12 B8 89 BA 40 84 12 FC FF BA 40 44 90 FE FF
-9A 42 C8 21 00 00 28 83 8A 48 02 00 A2 52 C6 21
-30 40 00 8A 1C 15 B0 12 2A 80 80 84 EE 84 4A 82
-9A 90 AA 85 40 82 CE 88 B4 90 9C 90 39 4E 39 80
-86 12 08 24 19 53 02 20 2E 4E 04 3C 2E 53 19 53
-01 24 2E 82 1B 17 30 41 3E 40 28 00 B0 12 84 90
-19 42 C6 21 A2 53 C6 21 89 4E 00 00 3E 40 29 00
-1C 15 12 12 C4 21 92 53 C4 21 B0 12 2A 80 80 84
-AA 85 40 82 F2 90 E8 90 21 53 3E 90 10 00 7D 2D
-E1 2B F4 90 B2 41 C4 21 DD 3F 87 12 42 87 74 84
-02 91 0C 43 1B 42 C6 21 A2 53 C6 21 6A 4E 3E 4F
-7A 90 23 00 27 20 92 53 C4 21 B0 12 84 90 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 C6 21 A2 53 C6 21 89 4E 00 00 3E 4F
-3D 41 30 4D 7A 90 26 00 07 20 3C 40 10 02 92 53
-C4 21 B0 12 84 90 ED 3F 7A 90 40 00 16 20 3C 40
-20 00 92 53 C4 21 B0 12 D0 90 0C 20 3C 50 10 00
-3E 40 2B 00 B0 12 D0 90 92 92 C0 21 C4 21 02 24
-92 53 C4 21 8E 10 0C 5E DA 3F B0 12 D0 90 FA 23
-3C 50 10 00 B0 12 B8 90 EF 3F 0C 43 1B 42 C6 21
-A2 53 C6 21 87 12 42 87 74 84 CC 91 FE 90 26 00
-00 00 3E 40 20 00 03 20 3C 50 82 00 C8 3F B0 12
-D0 90 E1 23 3C 50 80 00 B0 12 B8 90 DC 3F D6 82
-04 52 45 54 49 00 87 12 14 84 00 13 B0 86 2A 80
-14 84 2C 00 FA 90 C4 91 0A 92 09 4B 2E 4E 0E DC
-A4 3F FC 8A 03 4D 4F 56 84 12 00 92 00 40 14 92
-05 4D 4F 56 2E 42 84 12 00 92 40 40 00 00 03 41
-44 44 84 12 00 92 00 50 2E 92 05 41 44 44 2E 42
-84 12 00 92 40 50 3A 92 04 41 44 44 43 00 84 12
-00 92 00 60 48 92 06 41 44 44 43 2E 42 00 84 12
-00 92 40 60 F0 91 04 53 55 42 43 00 84 12 00 92
-00 70 66 92 06 53 55 42 43 2E 42 00 84 12 00 92
-40 70 74 92 03 53 55 42 84 12 00 92 00 80 84 92
-05 53 55 42 2E 42 84 12 00 92 40 80 DE 8A 03 43
-4D 50 84 12 00 92 00 90 9E 92 05 43 4D 50 2E 42
-84 12 00 92 40 90 CC 8A 04 44 41 44 44 00 84 12
-00 92 00 A0 B8 92 06 44 41 44 44 2E 42 00 84 12
-00 92 40 A0 AA 92 03 42 49 54 84 12 00 92 00 B0
-D6 92 05 42 49 54 2E 42 84 12 00 92 40 B0 E2 92
-03 42 49 43 84 12 00 92 00 C0 F0 92 05 42 49 43
-2E 42 84 12 00 92 40 C0 FC 92 03 42 49 53 84 12
-00 92 00 D0 0A 93 05 42 49 53 2E 42 84 12 00 92
-40 D0 00 00 03 58 4F 52 84 12 00 92 00 E0 24 93
-05 58 4F 52 2E 42 84 12 00 92 40 E0 56 92 03 41
-4E 44 84 12 00 92 00 F0 3E 93 05 41 4E 44 2E 42
-84 12 00 92 40 F0 42 87 FA 90 5C 93 0A 4C 3C F0
-70 00 8A 10 3A F0 0F 00 0C DA 4F 3F 90 92 03 52
-52 43 84 12 56 93 00 10 6E 93 05 52 52 43 2E 42
-84 12 56 93 40 10 7A 93 04 53 57 50 42 00 84 12
-56 93 80 10 88 93 03 52 52 41 84 12 56 93 00 11
-96 93 05 52 52 41 2E 42 84 12 56 93 40 11 A2 93
-03 53 58 54 84 12 56 93 80 11 00 00 04 50 55 53
-48 00 84 12 56 93 00 12 BC 93 06 50 55 53 48 2E
-42 00 84 12 56 93 40 12 16 93 04 43 41 4C 4C 00
-84 12 56 93 80 12 1A 53 0E 4A 87 12 34 82 1E 84
-0D 6F 75 74 20 6F 66 20 62 6F 75 6E 64 73 4C 88
-42 87 74 84 06 94 92 53 C4 21 3E 40 2C 00 B0 12
-2A 80 80 84 AA 85 40 82 CE 88 BA 91 1E 94 0A 4E
-3E 4F 1A 83 E0 33 29 4E 59 0E 0A 28 08 4C 59 0A
-01 28 0C 8A 08 8A 38 90 10 00 D5 2F 5A 0E 94 3F
-2A 92 D1 2F 8A 10 5A 06 8F 3F B0 93 04 52 52 43
-4D 00 84 12 00 94 50 00 4C 94 04 52 52 41 4D 00
-84 12 00 94 50 01 5A 94 04 52 4C 41 4D 00 84 12
-00 94 50 02 68 94 04 52 52 55 4D 00 84 12 00 94
-50 03 CA 93 05 50 55 53 48 4D 84 12 00 94 00 15
-84 94 04 50 4F 50 4D 00 84 12 00 94 00 17 76 94
-03 53 3E 3D 85 12 00 38 A0 94 02 53 3C 00 85 12
-00 34 92 94 03 30 3E 3D 85 12 00 30 B4 94 02 30
-3C 00 85 12 00 30 00 00 02 55 3C 00 85 12 00 2C
-C8 94 03 55 3E 3D 85 12 00 28 BE 94 03 30 3C 3E
-85 12 00 24 DC 94 02 30 3D 00 85 12 00 20 00 00
-02 49 46 00 1A 42 C6 21 8A 4E 00 00 A2 53 C6 21
-0E 4A 30 4D D2 94 04 54 48 45 4E 00 1A 42 C6 21
-08 4E 3E 4F 09 48 29 53 0A 89 0A 11 3A 90 00 02
-63 2F 88 DA 00 00 30 4D C6 92 04 45 4C 53 45 00
-1A 42 C6 21 BA 40 00 3C 00 00 A2 53 C6 21 2F 83
-8F 4A 00 00 E3 3F 06 95 05 55 4E 54 49 4C 3A 4F
-08 4E 3E 4F 19 42 C6 21 2A 83 0A 89 0A 11 3A 90
-00 FE 42 3B 3A F0 FF 03 08 DA 89 48 00 00 A2 53
-C6 21 30 4D 4A 93 05 41 47 41 49 4E 0A 4E 38 40
-00 3C E7 3F 00 00 05 57 48 49 4C 45 87 12 F4 94
-76 80 2A 80 AA 94 06 52 45 50 45 41 54 00 87 12
-7C 95 0C 95 2A 80 A8 95 3D 41 08 4E 3E 4F 2A 48
-B2 92 C4 21 CD 2F 98 42 C6 21 00 00 30 4D DA 93
-03 42 57 31 84 12 A6 95 00 00 C0 95 03 42 57 32
-84 12 A6 95 00 00 CC 95 03 42 57 33 84 12 A6 95
-00 00 E4 95 3D 41 1A 42 C6 21 28 4E B2 92 C4 21
-90 2B BA 4F 00 00 A2 53 C6 21 8E 4A 00 00 3E 4F
-30 4D 00 00 03 46 57 31 84 12 E2 95 00 00 04 96
-03 46 57 32 84 12 E2 95 00 00 10 96 03 46 57 33
-84 12 E2 95 00 00 00 00 05 3F 47 4F 54 4F 3E 90
-00 30 07 24 3E E0 00 04 3E B0 00 10 02 24 3E E0
-00 08 87 12 C0 88 DA 86 2A 80 1C 96 04 47 4F 54
-4F 00 2F 83 8F 4E 00 00 3E 40 00 3C F2 3F
+10 00 92 D2 5E 01 08 18 38 40 59 14 18 83 FE 23
+19 83 FA 23 39 40 00 20 29 83 89 43 00 20 FC 23
+B0 12 0E 80 B2 40 81 00 00 05 92 42 02 18 06 05
+92 42 04 18 08 05 92 C3 00 05 3F 40 80 20 30 12
+D4 8B 52 3F 24 89 86 5B 54 48 45 4E 5D 00 30 4D
+0C 4E 38 4F 3B 4F 39 4F 0E 4B 0E 5C 10 24 1B 83
+06 30 1C 83 04 30 19 53 F9 98 FF FF F5 27 2D 4D
+3E 4F 30 4D 2F 53 9F 83 00 00 F9 23 2F 53 2D 53
+F7 3F 06 8D 86 5B 45 4C 53 45 5D 00 0D 12 87 12
+24 80 00 00 AA 82 70 86 F2 83 62 86 68 82 4C 80
+9E 8D 70 82 2E 80 06 5B 54 48 45 4E 5D 00 10 8D
+78 8D 34 8D 56 8D 26 83 70 82 2E 80 06 5B 45 4C
+53 45 5D 00 10 8D 8E 8D 34 8D 54 8D 26 83 2E 80
+04 5B 49 46 5D 00 10 8D 56 8D 48 80 54 8D 22 82
+2E 80 05 0D 0A 6B 6F 20 00 82 D4 80 C4 80 48 80
+56 8D 44 8D 84 5B 49 46 5D 00 0E 93 3E 4F C6 27
+30 4D 2F 53 30 4D B4 8D 89 5B 44 45 46 49 4E 45
+44 5D 0D 12 87 12 70 86 F2 83 4A 84 C2 8D 26 83
+C8 8D 8B 5B 55 4E 44 45 46 49 4E 45 44 5D 0D 12
+87 12 D2 8D F6 8D 3D 41 30 40 B6 82 38 40 C0 21
+0A 4E 39 48 2E 48 09 5E 1E 52 C4 21 09 9E 03 24
+7A 9E FC 27 1E 83 0A 4E 2A 88 82 4A C4 21 30 4D
+1C 15 87 12 F2 83 4A 84 42 80 34 8E 06 85 4C 80
+00 88 4E 8E 36 8E 39 4E 39 80 86 12 08 24 19 53
+02 20 2E 4E 04 3C 2E 53 19 53 01 24 2E 82 1B 17
+30 41 3E 40 28 00 B0 12 20 8E 19 42 C6 21 A2 53
+C6 21 89 4E 00 00 3E 40 29 00 1C 15 12 12 C4 21
+92 53 C4 21 87 12 F2 83 06 85 4C 80 8A 8E 80 8E
+21 53 3E 90 10 00 80 2D E2 2B 8C 8E B2 41 C4 21
+DE 3F 0D 12 87 12 70 86 FC 8D 9C 8E 0C 43 1B 42
+C6 21 A2 53 C6 21 6A 4E 3E 4F 7A 90 23 00 27 20
+92 53 C4 21 B0 12 20 8E 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 C6 21
+A2 53 C6 21 89 4E 00 00 3E 4F 3D 41 30 4D 7A 90
+26 00 07 20 3C 40 10 02 92 53 C4 21 B0 12 20 8E
+ED 3F 7A 90 40 00 16 20 3C 40 20 00 92 53 C4 21
+B0 12 6A 8E 0C 20 3C 50 10 00 3E 40 2B 00 B0 12
+6A 8E 92 92 C0 21 C4 21 02 24 92 53 C4 21 8E 10
+0C 5E DA 3F B0 12 6A 8E FA 23 3C 50 10 00 B0 12
+52 8E EF 3F 0C 43 1B 42 C6 21 A2 53 C6 21 0D 12
+87 12 70 86 FC 8D 68 8F FE 90 26 00 00 00 3E 40
+20 00 03 20 3C 50 82 00 C7 3F B0 12 6A 8E E0 23
+3C 50 80 00 B0 12 52 8E DB 3F 00 00 04 52 45 54
+49 00 0D 12 87 12 24 80 00 13 F8 85 26 83 24 80
+2C 00 92 8E 5E 8F A8 8F 09 4B 2E 4E 0E DC A2 3F
+F6 89 03 4D 4F 56 84 12 9E 8F 00 40 B2 8F 05 4D
+4F 56 2E 42 84 12 9E 8F 40 40 00 00 03 41 44 44
+84 12 9E 8F 00 50 CC 8F 05 41 44 44 2E 42 84 12
+9E 8F 40 50 D8 8F 04 41 44 44 43 00 84 12 9E 8F
+00 60 E6 8F 06 41 44 44 43 2E 42 00 84 12 9E 8F
+40 60 8C 8F 04 53 55 42 43 00 84 12 9E 8F 00 70
+04 90 06 53 55 42 43 2E 42 00 84 12 9E 8F 40 70
+12 90 03 53 55 42 84 12 9E 8F 00 80 22 90 05 53
+55 42 2E 42 84 12 9E 8F 40 80 D2 89 03 43 4D 50
+84 12 9E 8F 00 90 3C 90 05 43 4D 50 2E 42 84 12
+9E 8F 40 90 BE 89 04 44 41 44 44 00 84 12 9E 8F
+00 A0 56 90 06 44 41 44 44 2E 42 00 84 12 9E 8F
+40 A0 48 90 03 42 49 54 84 12 9E 8F 00 B0 74 90
+05 42 49 54 2E 42 84 12 9E 8F 40 B0 80 90 03 42
+49 43 84 12 9E 8F 00 C0 8E 90 05 42 49 43 2E 42
+84 12 9E 8F 40 C0 9A 90 03 42 49 53 84 12 9E 8F
+00 D0 A8 90 05 42 49 53 2E 42 84 12 9E 8F 40 D0
+00 00 03 58 4F 52 84 12 9E 8F 00 E0 C2 90 05 58
+4F 52 2E 42 84 12 9E 8F 40 E0 F4 8F 03 41 4E 44
+84 12 9E 8F 00 F0 DC 90 05 41 4E 44 2E 42 84 12
+9E 8F 40 F0 70 86 92 8E FA 90 0A 4C 3C F0 70 00
+8A 10 3A F0 0F 00 0C DA 4F 3F 2E 90 03 52 52 43
+84 12 F4 90 00 10 0C 91 05 52 52 43 2E 42 84 12
+F4 90 40 10 18 91 04 53 57 50 42 00 84 12 F4 90
+80 10 26 91 03 52 52 41 84 12 F4 90 00 11 34 91
+05 52 52 41 2E 42 84 12 F4 90 40 11 40 91 03 53
+58 54 84 12 F4 90 80 11 00 00 04 50 55 53 48 00
+84 12 F4 90 00 12 5A 91 06 50 55 53 48 2E 42 00
+84 12 F4 90 40 12 B4 90 04 43 41 4C 4C 00 84 12
+F4 90 80 12 1A 53 0E 4A 0D 12 87 12 9C 83 2E 80
+0D 6F 75 74 20 6F 66 20 62 6F 75 6E 64 73 7A 87
+70 86 FC 8D A6 91 92 53 C4 21 3E 40 2C 00 87 12
+F2 83 06 85 4C 80 00 88 54 8F BC 91 0A 4E 3E 4F
+1A 83 E0 33 29 4E 59 0E 0A 28 08 4C 59 0A 01 28
+0C 8A 08 8A 38 90 10 00 D5 2F 5A 0E 94 3F 2A 92
+D1 2F 8A 10 5A 06 8F 3F 4E 91 04 52 52 43 4D 00
+84 12 A0 91 50 00 EA 91 04 52 52 41 4D 00 84 12
+A0 91 50 01 F8 91 04 52 4C 41 4D 00 84 12 A0 91
+50 02 06 92 04 52 52 55 4D 00 84 12 A0 91 50 03
+68 91 05 50 55 53 48 4D 84 12 A0 91 00 15 22 92
+04 50 4F 50 4D 00 84 12 A0 91 00 17 14 92 03 53
+3E 3D 85 12 00 38 3E 92 02 53 3C 00 85 12 00 34
+30 92 03 30 3E 3D 85 12 00 30 52 92 02 30 3C 00
+85 12 00 30 00 00 02 55 3C 00 85 12 00 2C 66 92
+03 55 3E 3D 85 12 00 28 5C 92 03 30 3C 3E 85 12
+00 24 7A 92 02 30 3D 00 85 12 00 20 00 00 02 49
+46 00 1A 42 C6 21 8A 4E 00 00 A2 53 C6 21 0E 4A
+30 4D 70 92 04 54 48 45 4E 00 1A 42 C6 21 08 4E
+3E 4F 09 48 29 53 0A 89 0A 11 3A 90 00 02 63 2F
+88 DA 00 00 30 4D 64 90 04 45 4C 53 45 00 1A 42
+C6 21 BA 40 00 3C 00 00 A2 53 C6 21 2F 83 8F 4A
+00 00 E3 3F A4 92 05 55 4E 54 49 4C 3A 4F 08 4E
+3E 4F 19 42 C6 21 2A 83 0A 89 0A 11 3A 90 00 FE
+42 3B 3A F0 FF 03 08 DA 89 48 00 00 A2 53 C6 21
+30 4D E8 90 05 41 47 41 49 4E 0A 4E 38 40 00 3C
+E7 3F 00 00 05 57 48 49 4C 45 0D 12 87 12 92 92
+82 82 26 83 48 92 06 52 45 50 45 41 54 00 0D 12
+87 12 1A 93 AA 92 26 83 4A 93 3D 41 08 4E 3E 4F
+2A 48 B2 92 C4 21 CB 2F 98 42 C6 21 00 00 30 4D
+78 91 03 42 57 31 84 12 48 93 00 00 62 93 03 42
+57 32 84 12 48 93 00 00 6E 93 03 42 57 33 84 12
+48 93 00 00 86 93 3D 41 1A 42 C6 21 28 4E B2 92
+C4 21 8E 2B BA 4F 00 00 A2 53 C6 21 8E 4A 00 00
+3E 4F 30 4D 00 00 03 46 57 31 84 12 84 93 00 00
+A6 93 03 46 57 32 84 12 84 93 00 00 B2 93 03 46
+57 33 84 12 84 93 00 00 BE 93 04 47 4F 54 4F 00
+2F 83 8F 4E 00 00 3E 40 00 3C 0D 12 87 12 F0 87
+18 86 26 83 00 00 05 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
 @FFFE
-9E 8E
+6E 8C
 q
index aece4c9..ce524f0 100644 (file)
 @1800
-10 00 04 00 51 55 40 1F 05 00 18 00 5E 96 D0 8C
-2D 01 6B 30 B6 82 C8 82
+10 00 04 00 51 55 40 1F 05 00 18 00 02 94 88 8A
+2E 01 6B 30 06 81 18 81 D4 8B
 @8000
-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 3A 41 0D 12 0D 4A
-30 4D 00 00 04 45 58 49 54 00 3D 41 30 4D 24 80
-03 44 55 50 2F 83 8F 4E 00 00 30 4D 00 00 04 32
-44 55 50 00 8F 4E FE FF AF 4F FC FF 2F 82 30 4D
-00 00 04 3F 44 55 50 00 0E 93 EC 23 30 4D 30 80
-04 44 52 4F 50 00 3E 4F 30 4D 2F 53 30 4D 3E 80
-04 53 57 41 50 00 2A 4F 8F 4E 00 00 0E 4A 30 4D
-52 80 02 3E 52 00 0E 12 3E 4F 30 4D 70 80 02 52
-3E 00 2F 83 8F 4E 00 00 3E 41 30 4D 60 80 05 44
-45 50 54 48 8F 4E FE FF 3E 40 80 20 0E 8F 0E 11
-2F 83 30 4D 00 00 01 2D 3E 8F 3E E3 1E 53 30 4D
-00 00 02 31 2B 00 1E 53 30 4D C2 80 02 31 2D 00
-1E 83 30 4D 3E F3 06 34 BF E3 00 00 3E E3 9F 53
-00 00 0E 63 30 4D 00 00 01 40 2E 4E 30 4D E8 80
-01 21 BE 4F 00 00 3E 4F 30 4D CC 80 02 30 3D 00
-1E 83 0E 7E 30 4D FC 80 02 30 3C 00 0E 5E 0E 7E
-3E E3 30 4D 00 00 01 3D 3E 8F FA 27 0E F3 30 4D
-00 00 02 55 3C 00 3E 8F F9 2B 01 24 3E 43 30 4D
-16 81 02 3C 23 00 B2 40 B2 21 B2 21 30 4D 0B 4E
+30 40 04 80 B0 12 06 81 12 D2 0A 18 F9 3F 39 40
+38 00 29 83 B9 40 6E 8C 8C FF FB 23 B2 40 68 81
+E0 FF 30 41 2F 83 8F 4E 00 00 3E 4D 30 4D 2F 82
+8F 4E 02 00 7E 4D 8F 4D 00 00 0D 5E 1D B3 0D 63
+30 4D 0E 93 3E 4F 05 24 2D 4D 30 4D 0E 93 3E 4F
+FB 27 2D 53 30 4D 39 40 00 80 39 8F 08 4E 3E 4F
+08 59 19 15 30 4D 81 5E 00 00 3E 4F 32 B0 00 01
+EB 27 21 52 2D 53 30 4D 91 53 00 00 F7 3F 0B 4E
 1C 4F 02 00 2E 4F 0A 43 34 40 20 00 0E 93 04 20
 04 11 0E 4C 0C 43 09 43 0A 9B 01 28 0A 8B 09 69
 08 68 14 83 07 30 0C 5C 0E 6E 0A 6A F5 2B 0A 8B
-12 D3 F5 3F 34 40 00 80 8F 4A 02 00 8F 49 00 00
-0E 48 30 41 00 00 01 23 1B 42 DC 21 2C 4F 2F 83
-B0 12 46 81 BF 4F 00 00 7A 90 0A 00 02 28 7A 50
-07 00 7A 50 30 00 92 83 B2 21 18 42 B2 21 C8 4A
-00 00 30 4D 86 81 02 23 53 00 87 12 88 81 C0 81
-2D 83 09 93 E3 23 0E 93 E1 23 3D 41 30 4D B6 81
-02 23 3E 00 9F 42 B2 21 00 00 3E 40 B2 21 2E 8F
-30 4D 00 00 04 48 4F 4C 44 00 0A 4E 3E 4F DB 3F
-8E 80 04 53 49 47 4E 00 0E 93 3E 4F 3A 40 2D 00
-D2 33 30 4D 87 12 36 81 34 80 86 80 D4 80 BA 81
-92 80 F8 81 D4 81 D6 83 42 87 82 83 2A 80 22 81
-02 55 2E 00 08 43 2F 83 8F 4E 00 00 0E 48 EA 3F
-00 00 01 2E 0E 93 F6 37 38 43 F5 3F 2D 4D 30 4D
-0E 93 3E 4F FB 27 2D 53 30 4D 0E 93 3E 4F F6 23
-2D 53 30 4D 39 40 00 80 39 8F 08 4E 3E 4F 08 59
-19 15 30 4D 81 5E 00 00 3E 4F 32 B0 00 01 E6 27
-2D 53 21 52 30 4D 91 53 00 00 F7 3F E4 81 01 49
-2F 83 8F 4E 00 00 2E 41 1E 81 02 00 30 4D 00 00
-03 4B 45 59 30 40 98 82 18 42 0C 05 2F 83 8F 4E
-00 00 B0 12 B6 82 92 B3 1C 05 FD 27 1E 42 0C 05
-B0 12 C8 82 30 4D A2 B3 1C 05 FD 27 B2 40 11 00
-0E 05 E2 C3 43 02 30 41 B2 40 13 00 0E 05 E2 D3
-43 02 30 41 00 00 05 53 4C 45 45 50 30 40 E0 82
-B0 12 B6 82 12 D2 0A 18 F9 3F F0 80 06 41 43 43
-45 50 54 00 3C 40 64 83 3B 40 2E 83 2D 15 0A 4E
-2E 4F 0A 5E 3B 40 0D 00 3C 40 20 00 3D 40 58 83
-92 B3 1C 05 05 24 18 42 0C 05 38 90 0A 00 CB 23
-21 53 3D 15 DB 3F 21 52 3A 17 58 42 0C 05 48 9C
-08 2C 48 9B C9 27 78 92 11 20 2E 9F 0F 24 1E 83
-05 3C 0E 9A 03 24 CE 48 00 00 1E 53 A2 B3 1C 05
-FD 27 82 48 0E 05 30 4D 5A 83 2D 83 92 B3 1C 05
-E4 23 FC 27 82 93 DE 21 02 24 92 53 DE 21 3E 8F
-3D 41 B2 40 18 00 0A 18 30 4D 9E 80 04 45 4D 49
-54 00 30 40 86 83 08 4E 3E 4F E0 3F 3F 80 06 00
-8F 4E 04 00 3E 40 54 00 BF 40 3C 21 00 00 AF 4F
-02 00 A8 3F 7C 83 04 45 43 48 4F 00 B2 40 82 48
-52 83 82 43 DE 21 30 4D 32 82 06 4E 4F 45 43 48
-4F 00 B2 40 30 4D 52 83 92 43 DE 21 30 4D 20 82
-04 54 59 50 45 00 0E 93 0F 24 1E 15 3D 40 EC 83
-28 4F 7E 48 8F 48 00 00 2F 83 CB 3F EE 83 2D 83
-91 83 02 00 F5 23 1D 17 2F 53 3E 4F 30 4D D0 81
-02 43 52 00 30 40 08 84 87 12 1E 84 02 0D 0A 00
-D6 83 2A 80 2F 83 8F 4E 00 00 3E 4D 30 4D 2F 82
-8F 4E 02 00 7E 4D 8F 4D 00 00 0D 5E 1D B3 0D 63
-30 4D F2 81 82 53 22 00 82 43 B4 21 87 12 14 84
-1E 84 B0 86 14 84 22 00 80 84 4C 84 B2 40 20 00
-B4 21 6E 4E 1E 53 1E B3 82 6E C6 21 3D 41 3E 4F
-30 4D BA 83 82 2E 22 00 87 12 38 84 14 84 D6 83
-B0 86 2A 80 48 43 05 3C 00 00 04 57 4F 52 44 00
-48 4E 19 42 C0 21 1A 42 C2 21 09 5A 1A 52 C4 21
-09 9A 03 24 7E 9A FC 27 1A 83 4E F8 06 20 0E 4A
-1A 82 C2 21 82 4A C4 21 30 4D 18 42 C6 21 3B 40
-60 00 C8 4C 00 00 09 9A 0C 24 7C 4A 4E 9C 09 24
-18 53 4B 9C F6 2F 7C 90 7B 00 F3 2F 5C 82 B4 21
-F0 3F 1A 82 C2 21 82 4A C4 21 1E 42 C6 21 08 8E
-CE 48 00 00 30 4D 00 00 04 46 49 4E 44 00 2F 83
-0C 4E 65 4C 74 40 80 00 3B 40 CA 21 3E 4B 0E 93
-1E 24 58 4C 01 00 78 F0 1E 00 0E 58 2E 53 1E 4E
-FE FF 0E 93 F3 27 09 4E 78 49 48 C4 48 95 F7 23
-0A 4C FA 99 01 00 F3 23 1A 53 58 83 FA 23 19 B3
-09 63 0C 49 6A 4E 1E 43 4A 93 01 30 2E 83 8F 4C
-00 00 35 40 0E 80 34 40 00 80 30 4D 82 80 07 3E
-4E 55 4D 42 45 52 3C 4F 38 4F 29 4F 2F 82 1B 42
-DC 21 6A 4C 7A 80 30 00 7A 90 0A 00 05 28 7A 80
-07 00 7A 90 0A 00 12 28 0A 9B 22 C3 0F 2C 82 49
-D0 04 82 48 D2 04 82 4B C8 04 19 42 E4 04 18 42
-E6 04 09 5A 08 63 1C 53 1E 83 E3 23 8F 4C 00 00
-8F 48 02 00 8F 49 04 00 30 4D 32 C0 00 02 1B 42
-DC 21 0C 43 2D 15 3D 40 F4 85 09 43 08 43 3F 82
-8F 4E 06 00 0C 4E 7E 4C 6A 4C 7A 90 2D 00 04 28
-C9 23 B1 43 02 00 DF 3F 2B 43 7A 80 25 00 07 24
-3B 52 6A 53 04 24 3B 40 10 00 5A 83 BA 23 1C 53
-1E 83 EA 3F F6 85 2F 24 2D 83 7A 90 28 00 CB 27
-32 D0 00 02 7A 90 F7 00 C6 27 7A 90 F5 00 23 20
-0A 4E 09 43 8F 49 02 00 5A 83 09 4A 09 5C 69 49
-79 80 30 00 79 90 0A 00 05 28 79 80 07 00 79 90
-0A 00 0A 28 09 9B 08 2C 8F 49 00 00 0E 4B 2C 15
-B0 12 3E 81 2A 17 E6 3F 9F 4F 04 00 02 00 AF 4F
-04 00 0E 4A 4E 93 2B 17 0E 4C 82 4B DC 21 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 7E 82 04 48 45 52 45 00
-2F 83 8F 4E 00 00 1E 42 C6 21 30 4D B6 80 01 2C
-1A 42 C6 21 8A 4E 00 00 A2 53 C6 21 3E 4F 30 4D
-EC 82 05 41 4C 4C 4F 54 82 5E C6 21 3E 4F 30 4D
-A6 83 07 45 58 45 43 55 54 45 0A 4E 3E 4F 00 4A
-AE 86 87 4C 49 54 45 52 41 4C 82 93 BE 21 0C 24
-1A 42 C6 21 A2 52 C6 21 BA 40 14 84 00 00 8A 4E
-02 00 3E 4F 32 B0 00 02 32 C0 00 02 06 24 19 4A
-02 00 8A 4E 02 00 0E 49 EB 3F 30 4D 00 84 05 43
-4F 55 4E 54 2F 83 1E 53 8F 4E 00 00 5E 4E FF FF
-30 4D 82 4E C0 21 B2 4F C2 21 3E 4F 82 43 C4 21
-30 4D 85 12 20 00 87 12 32 87 42 87 80 84 50 87
-3D 40 58 87 CC 22 82 3E 5A 87 0A 4E 3E 4F 3D 40
-70 87 23 27 3D 40 4A 87 1A E2 BE 21 A1 27 B5 23
-72 87 3E 4F 3D 40 4A 87 B8 23 DE 53 00 00 68 4E
-08 5E F8 40 3F 00 00 00 3D 40 26 8A CB 3F D2 86
+12 D3 F5 3F 34 40 EC 80 8F 4A 02 00 8F 49 00 00
+0E 48 30 41 82 4E C0 21 B2 4F C2 21 3E 4F 82 43
+C4 21 30 4D 3F 80 06 00 8F 4E 04 00 3E 40 54 00
+BF 40 3C 21 00 00 AF 4F 02 00 24 3C 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 A2 B3 1C 05 FD 27 B2 40 11 00
+0E 05 E2 C3 43 02 30 41 A2 B3 1C 05 FD 27 B2 40
+13 00 0E 05 E2 D3 43 02 30 41 00 00 06 41 43 43
+45 50 54 00 3C 40 A6 81 3B 40 70 81 2D 15 0A 4E
+2E 4F 0A 5E 3B 40 0D 00 3C 40 20 00 3D 40 9A 81
+92 B3 1C 05 05 24 18 42 0C 05 38 90 0A 00 D3 23
+21 53 3D 15 30 40 00 80 21 52 3A 17 58 42 0C 05
+48 9C 08 2C 48 9B D0 27 78 92 11 20 2E 9F 0F 24
+1E 83 05 3C 0E 9A 03 24 CE 48 00 00 1E 53 A2 B3
+1C 05 FD 27 82 48 0E 05 30 4D 9C 81 2D 83 92 B3
+1C 05 E4 23 FC 27 82 93 DE 21 02 24 92 53 DE 21
+3E 8F 3D 41 B2 40 18 00 0A 18 30 4D 00 00 04 45
+4D 49 54 00 30 40 C8 81 08 4E 3E 4F E0 3F BE 81
+04 45 43 48 4F 00 B2 40 82 48 94 81 82 43 DE 21
+30 4D 00 00 06 4E 4F 45 43 48 4F 00 B2 40 30 4D
+94 81 92 43 DE 21 30 4D 00 00 04 54 59 50 45 00
+0E 93 0F 24 1E 15 3D 40 16 82 28 4F 7E 48 8F 48
+00 00 2F 83 D7 3F 18 82 2D 83 91 83 02 00 F5 23
+1D 17 2F 53 3E 4F 30 4D 00 00 02 43 52 00 30 40
+32 82 0D 12 87 12 2E 80 02 0D 0A 00 00 82 26 83
+00 00 03 4B 45 59 30 40 4A 82 18 42 0C 05 2F 83
+8F 4E 00 00 B0 12 06 81 92 B3 1C 05 FD 27 1E 42
+0C 05 B0 12 18 81 30 4D 2F 83 8F 4E 00 00 30 4D
+8F 4E FE FF AF 4F FC FF 2F 82 30 4D 0E 93 F4 23
+30 4D 2A 4F 8F 4E 00 00 0E 4A 30 4D 8F 4E FE FF
+3E 40 80 20 0E 8F 0E 11 2F 83 30 4D 2F 83 8F 4E
+00 00 3E 41 30 4D 3E 8F 3E E3 1E 53 30 4D BE 4F
+00 00 3E 4F 30 4D 1E 83 0E 7E 30 4D 0E 5E 0E 7E
+3E E3 30 4D 3E 8F 03 24 3E 43 01 2C 0E F3 30 4D
+00 00 02 3C 23 00 B2 40 B2 21 B2 21 30 4D 2A 82
+01 23 1B 42 DC 21 2C 4F 2F 83 B0 12 86 80 BF 4F
+00 00 7A 90 0A 00 02 28 7A 50 07 00 7A 50 30 00
+92 83 B2 21 18 42 B2 21 C8 4A 00 00 30 4D E0 82
+02 23 53 00 0D 12 87 12 E2 82 1C 83 2D 83 09 93
+E2 23 0E 93 E0 23 3D 41 30 4D 10 83 02 23 3E 00
+9F 42 B2 21 00 00 3E 40 B2 21 2E 8F 30 4D 00 00
+04 48 4F 4C 44 00 4A 4E 3E 4F DA 3F 00 00 04 53
+49 47 4E 00 0E 93 3E 4F 7A 40 2D 00 D1 33 30 4D
+FA 81 02 55 2E 00 08 43 2F 83 8F 4E 00 00 0E 48
+0D 12 0E 12 3E F3 06 34 BF E3 00 00 3E E3 9F 53
+00 00 0E 63 87 12 D6 82 14 83 9C 82 54 83 30 83
+00 82 70 86 C4 81 26 83 E4 81 01 2E 0E 93 E3 37
+38 43 E2 3F 4E 83 82 53 22 00 82 43 B4 21 0D 12
+87 12 24 80 2E 80 F8 85 24 80 22 00 F2 83 C0 83
+B2 40 20 00 B4 21 6E 4E 1E 53 1E B3 82 6E C6 21
+3D 41 3E 4F 30 4D 9A 83 82 2E 22 00 0D 12 87 12
+AA 83 24 80 00 82 F8 85 26 83 00 00 04 57 4F 52
+44 00 3C 40 C0 21 39 4C 3A 4C 09 5A 3A 5C 28 4C
+09 9A 15 24 7E 9A FC 27 1A 83 3B 40 60 00 C8 4C
+00 00 09 9A 0C 24 7C 4A 4E 9C 09 24 18 53 4B 9C
+F6 2F 7C 90 7B 00 F3 2F 5C 82 B4 21 F0 3F 1A 82
+C2 21 82 4A C4 21 1E 42 C6 21 08 8E CE 48 00 00
+30 4D 00 00 04 46 49 4E 44 00 2F 83 0C 4E 65 4C
+74 40 80 00 3B 40 CA 21 3E 4B 0E 93 1E 24 58 4C
+01 00 78 F0 1E 00 0E 58 2E 53 1E 4E FE FF 0E 93
+F3 27 09 4E 78 49 48 C4 48 95 F7 23 0A 4C FA 99
+01 00 F3 23 1A 53 58 83 FA 23 19 B3 09 63 0C 49
+6A 4E 1E 43 4A 93 01 30 2E 83 8F 4C 00 00 35 40
+FA 80 34 40 EC 80 30 4D 00 00 07 3E 4E 55 4D 42
+45 52 3C 4F 38 4F 29 4F 2F 82 1B 42 DC 21 6A 4C
+7A 80 30 00 7A 90 0A 00 05 28 7A 80 07 00 7A 90
+0A 00 12 28 0A 9B 22 C3 0F 2C 82 49 D0 04 82 48
+D2 04 82 4B C8 04 19 42 E4 04 18 42 E6 04 09 5A
+08 63 1C 53 1E 83 E3 23 8F 4C 00 00 8F 48 02 00
+8F 49 04 00 30 4D 32 C0 00 02 1B 42 DC 21 0C 43
+2D 15 3D 40 50 85 09 43 08 43 3F 82 8F 4E 06 00
+0C 4E 7E 4C 6A 4C 7A 90 2D 00 04 28 C9 23 B1 43
+02 00 0B 3C 2B 43 7A 80 25 00 07 24 3B 52 6A 53
+04 24 3B 40 10 00 5A 83 BA 23 1C 53 1E 83 EA 3F
+52 85 2F 24 2D 83 7A 90 28 00 CB 27 32 D0 00 02
+7A 90 F7 00 C6 27 7A 90 F5 00 23 20 0A 4E 09 43
+8F 49 02 00 5A 83 09 4A 09 5C 69 49 79 80 30 00
+79 90 0A 00 05 28 79 80 07 00 79 90 0A 00 0A 28
+09 9B 08 2C 8F 49 00 00 0E 4B 2C 15 B0 12 7E 80
+2A 17 E6 3F 9F 4F 04 00 02 00 AF 4F 04 00 0E 4A
+4E 93 2B 17 0E 4C 82 4B DC 21 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 00 00 01 2C 1A 42 C6 21 8A 4E 00 00
+A2 53 C6 21 3E 4F 30 4D 2C 81 05 41 4C 4C 4F 54
+82 5E C6 21 3E 4F 30 4D 0A 4E 3E 4F 00 4A F6 85
+87 4C 49 54 45 52 41 4C 82 93 BE 21 0C 24 1A 42
+C6 21 A2 52 C6 21 BA 40 24 80 00 00 8A 4E 02 00
+3E 4F 32 B0 00 02 32 C0 00 02 06 24 19 4A 02 00
+8A 4E 02 00 0E 49 EB 3F 30 4D 2C 83 05 43 4F 55
+4E 54 2F 83 1E 53 8F 4E 00 00 5E 4E FF FF 30 4D
+85 12 20 00 0D 12 87 12 C4 80 70 86 F2 83 80 86
+3D 40 88 86 E2 22 A4 26 8A 86 0A 4E 3E 4F 3D 40
+A0 86 39 27 3D 40 7A 86 1A E2 BE 21 BD 23 AC 27
+A2 86 3E 4F 3D 40 7A 86 BF 23 DE 53 00 00 68 4E
+08 5E F8 40 3F 00 00 00 3D 40 20 89 D2 3F D0 81
 08 45 56 41 4C 55 41 54 45 00 39 40 C0 21 3C 49
-3B 49 3A 49 3D 15 B0 12 2A 80 46 87 AE 87 B2 41
-C4 21 B2 41 C2 21 B2 41 C0 21 3D 41 30 4D 85 12
-BE 21 08 81 04 51 55 49 54 00 82 43 08 18 31 40
-E0 20 B2 40 00 20 00 20 82 43 BE 21 B0 12 2A 80
-04 84 8C 83 42 87 82 83 46 87 A4 80 0C 81 1E 84
-0C 73 74 61 63 6B 20 65 6D 70 74 79 21 00 40 88
-14 84 30 FF A0 86 26 81 1E 84 0A 46 52 41 4D 20
-66 75 6C 6C 21 00 40 88 3C 82 E0 87 C2 86 05 41
-42 4F 52 54 3F 40 80 20 D0 3F 1E 88 86 41 42 4F
-52 54 22 00 87 12 38 84 14 84 40 88 B0 86 2A 80
-8F 93 02 00 03 20 2F 52 3E 4F 30 4D B0 12 C8 8D
-B0 12 B6 82 92 C3 1C 05 38 40 50 55 39 42 03 43
-19 83 FD 23 18 83 FA 23 92 B3 1C 05 F3 23 87 12
-42 8D 14 84 DE 21 EA 80 AC 83 1E 84 04 1B 5B 37
-6D 00 D6 83 58 80 40 82 9A 88 04 84 1E 84 05 6C
-69 6E 65 3A D6 83 D0 80 24 82 D6 83 1E 84 04 1B
-5B 30 6D 00 D6 83 24 88 00 00 83 5B 27 5D 87 12
-C0 88 14 84 14 84 B0 86 B0 86 2A 80 E8 84 01 27
-87 12 42 87 80 84 EE 84 40 82 CE 88 2A 80 7A 87
-32 81 81 5C 92 42 C0 21 C4 21 30 4D AA 88 81 5B
-82 43 BE 21 30 4D D2 88 01 5D B2 43 BE 21 30 4D
-BE 4F 02 00 3E 4F 30 4D 9A 86 82 49 53 00 87 12
-BE 87 EA 80 40 82 12 89 AE 88 14 84 F0 88 B0 86
-2A 80 C0 88 F0 88 2A 80 FA 88 09 49 4D 4D 45 44
-49 41 54 45 1A 42 B6 21 FA D0 80 00 00 00 30 4D
-C4 87 88 50 4F 53 54 50 4F 4E 45 00 87 12 42 87
-80 84 EE 84 58 80 40 82 CE 88 0C 81 40 82 5C 89
-14 84 14 84 B0 86 B0 86 14 84 B0 86 B0 86 2A 80
-DE 88 81 3B 82 93 BE 21 B5 27 87 12 14 84 2A 80
-B0 86 FA 89 E0 88 2A 80 62 89 07 3A 4E 4F 4E 41
-4D 45 30 12 A0 89 2F 83 8F 4E 00 00 1E 42 C6 21
-1E B3 0E 63 0A 4E 39 40 00 02 38 40 02 02 21 3C
-BA 40 87 12 FC FF A2 83 C6 21 B2 43 BE 21 30 4D
-7A 89 01 3A 30 12 A0 89 92 B3 C6 21 A2 63 C6 21
-87 12 42 87 80 84 C8 89 3D 41 08 4E 7A 4E 5A D3
-5A 53 0A 58 19 42 DA 21 6E 4E 3E F0 1E 00 09 5E
-3E 4F 82 48 B6 21 82 49 B8 21 82 4A BA 21 82 4F
-BC 21 2A 52 82 4A C6 21 30 41 82 9F BC 21 09 20
-18 42 B6 21 19 42 B8 21 A8 49 FE FF 89 48 00 00
-30 4D 87 12 1E 84 0F 73 74 61 63 6B 20 6D 69 73
-6D 61 74 63 68 21 4C 88 90 87 05 44 45 46 45 52
-B0 12 B8 89 BA 40 30 40 FC FF BA 40 AE 89 FE FF
-E3 3F 1E 87 06 43 52 45 41 54 45 00 B0 12 B8 89
-BA 40 85 12 FC FF 8A 4A FE FF D6 3F 2A 8A 05 44
-4F 45 53 3E 1A 42 BA 21 BA 40 84 12 00 00 8A 4D
-02 00 3D 41 30 4D 4E 85 05 3E 42 4F 44 59 2E 52
-30 4D 44 8A 04 43 4F 44 45 00 B0 12 B8 89 A2 82
-C6 21 87 12 D2 8C AC 8C 2A 80 84 8A 07 43 4F 44
-45 4E 4E 4D B0 12 86 89 F2 3F 00 00 07 45 4E 44
-43 4F 44 45 87 12 E0 8C FA 89 2A 80 2C 88 03 41
-53 4D B2 40 B0 8C DA 21 E0 3F AC 8A 06 45 4E 44
-41 53 4D 00 87 12 B4 8A F4 8C 2A 80 00 00 05 43
-4F 4C 4F 4E 1A 42 C6 21 BA 40 87 12 00 00 A2 53
-C6 21 B2 43 BE 21 30 40 E0 8C 00 00 05 4C 4F 32
-48 49 1A 42 C6 21 BA 40 B0 12 00 00 BA 40 2A 80
-02 00 A2 52 C6 21 ED 3F 1A 89 85 48 49 32 4C 4F
-87 12 A0 86 4A 8B B0 86 E0 88 D2 8C AC 8C 2A 80
-1A 8B 82 49 46 00 2F 83 8F 4E 00 00 1E 42 C6 21
-A2 52 C6 21 BE 40 40 82 00 00 2E 53 30 4D 5E 8A
-84 45 4C 53 45 00 A2 52 C6 21 1A 42 C6 21 BA 40
-3C 82 FC FF 8E 4A 00 00 2A 83 0E 4A 30 4D D0 83
-84 54 48 45 4E 00 9E 42 C6 21 00 00 3E 4F 30 4D
-9C 8A 85 42 45 47 49 4E 30 40 A0 86 70 8B 85 55
-4E 54 49 4C 39 40 40 82 A2 52 C6 21 1A 42 C6 21
-8A 49 FC FF 8A 4E FE FF 3E 4F 30 4D BE 8A 85 41
-47 41 49 4E 39 40 3C 82 EF 3F 7A 84 85 57 48 49
-4C 45 87 12 36 8B 76 80 2A 80 34 84 86 52 45 50
-45 41 54 00 87 12 B4 8B 76 8B 2A 80 50 8B 82 44
-4F 00 2F 83 8F 4E 00 00 A2 53 C6 21 1E 42 C6 21
-BE 40 54 82 FE FF A2 53 00 20 1A 42 00 20 8A 43
-00 00 30 4D E2 86 84 4C 4F 4F 50 00 39 40 76 82
-A2 52 C6 21 1A 42 C6 21 8A 49 FC FF 8A 4E FE FF
-1E 42 00 20 A2 83 00 20 2E 4E 0E 93 03 24 8E 4A
-00 00 F6 3F 3E 4F 30 4D 90 82 85 2B 4C 4F 4F 50
-39 40 64 82 E5 3F 06 8C 04 4D 4F 56 45 00 0A 4E
-38 4F 39 4F 3E 4F 0A 93 11 24 08 99 0F 24 06 2C
-F8 49 00 00 18 53 1A 83 FB 23 30 4D 08 5A 09 5A
-19 83 18 83 E8 49 00 00 1A 83 FA 23 30 4D 14 84
-CA 21 F2 80 2A 80 84 12 7E 8C AE 8B 44 8F DE 8B
-BE 88 32 8B 3A 8C 58 90 64 84 66 8D 80 8D 8E 8B
-00 8E 00 00 2A 90 E8 88 78 8A 00 00 84 12 7E 8C
-76 95 D8 95 2A 95 4C 96 F0 94 00 00 20 92 00 00
-E6 94 96 95 48 95 86 95 30 93 00 00 00 00 28 96
-AA 8C 3A 40 0C 00 39 40 CA 21 38 40 CC 21 C6 3F
-3A 40 0E 00 39 40 CC 21 38 40 CA 21 B9 3F 82 43
-CC 21 30 4D 92 42 CA 21 DA 21 30 4D 86 8C EE 8C
-F4 8C 04 8D 3A 4E 82 4A C8 21 2E 4E 82 4E C6 21
-3D 40 10 00 09 4A 08 49 29 83 18 48 FE FF 0E 98
-FC 2B 89 48 00 00 1D 83 F6 23 2A 4A 0A 93 F0 23
-3E 4F 3D 41 30 4D 32 89 09 50 57 52 5F 53 54 41
-54 45 84 12 FC 8C D0 8C 5E 96 CC 8B 09 52 53 54
-5F 53 54 41 54 45 92 42 0E 18 46 8D 92 42 0C 18
-48 8D EF 3F 38 8D 08 50 57 52 5F 48 45 52 45 00
-92 42 C8 21 46 8D 92 42 C6 21 48 8D 30 4D 4C 8D
-08 52 53 54 5F 48 45 52 45 00 92 42 C8 21 0E 18
-92 42 C6 21 0C 18 EC 3F BC 8B 04 57 49 50 45 00
-39 40 10 00 29 83 B9 43 80 FF FC 23 B2 40 E0 82
-DE 82 B2 40 0A 8E 08 8E B2 40 D0 8C 0E 18 B2 40
-5E 96 0C 18 30 12 56 8D B2 40 86 83 84 83 B2 40
-08 84 06 84 B2 40 98 82 96 82 B2 40 18 00 0A 18
-37 40 1A 80 36 40 92 80 35 40 0E 80 34 40 00 80
-B2 40 0A 00 DC 21 B2 40 20 00 B4 21 30 41 9A 8D
-04 57 41 52 4D 00 30 40 0A 8E 3D 40 40 8E 92 C3
-30 01 1E 42 08 18 0E 93 12 24 F2 B0 10 00 00 02
-02 20 3E E3 1E 53 F2 D0 30 00 0A 02 3E 90 0A 00
-B7 27 3E 90 16 00 B4 2F 2E 93 83 27 8C 2F 30 4D
-1E 84 06 0D 1B 5B 37 6D 23 00 D6 83 34 82 1E 84
-19 46 61 73 74 46 6F 72 74 68 20 C2 A9 4A 2E 4D
-2E 54 68 6F 6F 72 65 6E 73 20 D6 83 14 84 30 FF
-A0 86 B8 80 24 82 1E 84 0A 62 79 74 65 73 20 66
-72 65 65 00 3C 82 9A 88 82 8B 04 43 4F 4C 44 00
-92 B3 0A 05 FD 23 B2 40 04 A5 20 01 40 8E B2 40
-88 5A CC 01 B2 D3 06 02 B2 40 FE FF 02 02 B2 D3
-26 02 B2 40 FF 7F 22 02 B2 D3 46 02 B2 40 FC FF
-42 02 E2 D3 45 02 B2 40 00 A5 60 01 B2 40 FF 1E
+3B 49 3A 49 3D 15 87 12 74 86 DC 86 B2 41 C4 21
+B2 41 C2 21 B2 41 C0 21 3D 41 30 4D 85 12 BE 21
+00 00 04 51 55 49 54 00 82 43 08 18 31 40 E0 20
+B2 40 00 20 00 20 82 43 BE 21 87 12 2E 82 D4 80
+70 86 C4 81 74 86 8C 82 BC 82 2E 80 0C 73 74 61
+63 6B 20 65 6D 70 74 79 21 00 6E 87 24 80 40 FF
+2A 8A C4 82 2E 80 0A 46 52 41 4D 20 66 75 6C 6C
+21 00 6E 87 48 80 0C 87 0A 86 05 41 42 4F 52 54
+3F 40 80 20 D1 3F 4A 87 86 41 42 4F 52 54 22 00
+0D 12 87 12 AA 83 24 80 6E 87 F8 85 26 83 8F 93
+02 00 03 20 2F 52 3E 4F 30 4D B0 12 96 8B B0 12
+06 81 92 C3 1C 05 18 42 06 18 39 40 20 00 19 83
+FE 23 18 83 FA 23 92 B3 1C 05 F3 23 0D 12 87 12
+10 8B 24 80 DE 21 02 81 D6 81 2E 80 04 1B 5B 37
+6D 00 00 82 7C 82 4C 80 C8 87 2E 82 2E 80 05 6C
+69 6E 65 3A 00 82 66 83 00 82 2E 80 04 1B 5B 30
+6D 00 00 82 50 87 00 00 83 5B 27 5D 0D 12 87 12
+F0 87 24 80 24 80 F8 85 F8 85 26 83 44 84 01 27
+0D 12 87 12 70 86 F2 83 4A 84 4C 80 00 88 26 83
+AA 86 D2 82 81 5C 92 42 C0 21 C4 21 30 4D D8 87
+81 5B 82 43 BE 21 30 4D 04 88 01 5D B2 43 BE 21
+30 4D F2 86 88 50 4F 53 54 50 4F 4E 45 00 0D 12
+87 12 70 86 F2 83 4A 84 7C 82 4C 80 00 88 BC 82
+4C 80 50 88 24 80 24 80 F8 85 F8 85 24 80 F8 85
+F8 85 26 83 40 83 09 49 4D 4D 45 44 49 41 54 45
+1A 42 B6 21 FA D0 80 00 00 00 30 4D 10 88 01 3A
+30 12 B8 88 92 B3 C6 21 A2 63 C6 21 0D 12 87 12
+70 86 F2 83 86 88 3D 41 08 4E 7A 4E 5A D3 5A 53
+0A 58 19 42 DA 21 6E 4E 3E F0 1E 00 09 5E 3E 4F
+82 48 B6 21 82 49 B8 21 82 4A BA 21 82 4F BC 21
+2A 52 82 4A C6 21 30 41 BA 40 0D 12 FC FF BA 40
+87 12 FE FF B2 43 BE 21 30 4D 6E 88 07 3A 4E 4F
+4E 41 4D 45 30 12 B8 88 2F 83 8F 4E 00 00 1E 42
+C6 21 1E B3 0E 63 0A 4E 39 40 10 02 38 40 12 02
+D7 3F 82 9F BC 21 09 20 18 42 B6 21 19 42 B8 21
+A8 49 FE FF 89 48 00 00 30 4D 0D 12 87 12 2E 80
+0F 73 74 61 63 6B 20 6D 69 73 6D 61 74 63 68 21
+7A 87 CC 88 81 3B 82 93 BE 21 6D 27 0D 12 87 12
+24 80 26 83 F8 85 F2 88 12 88 26 83 5C 86 06 43
+52 45 41 54 45 00 B0 12 74 88 BA 40 85 12 FC FF
+8A 4A FE FF D5 3F C0 86 05 44 4F 45 53 3E 1A 42
+BA 21 BA 40 84 12 00 00 8A 4D 02 00 3D 41 30 4D
+3E 89 04 43 4F 44 45 00 B0 12 74 88 A2 82 C6 21
+0D 12 87 12 8A 8A 64 8A 26 83 72 89 07 43 4F 44
+45 4E 4E 4D 30 12 7C 89 9F 3F 00 00 07 45 4E 44
+43 4F 44 45 0D 12 87 12 F2 88 A4 8A 26 83 58 87
+03 41 53 4D B2 40 68 8A DA 21 DE 3F 9C 89 06 45
+4E 44 41 53 4D 00 0D 12 87 12 A4 89 C2 8A 26 83
+00 00 05 43 4F 4C 4F 4E 1A 42 C6 21 BA 40 0D 12
+00 00 BA 40 87 12 02 00 A2 52 C6 21 B2 43 BE 21
+30 40 A4 8A 00 00 05 4C 4F 32 48 49 A2 83 C6 21
+1A 42 C6 21 EE 3F 56 88 85 48 49 32 4C 4F 0D 12
+87 12 2A 8A 1E 8A F8 85 12 88 80 89 26 83 2E 53
+30 4D 8C 89 85 42 45 47 49 4E 2F 83 8F 4E 00 00
+1E 42 C6 21 30 4D 24 80 CA 21 AE 82 26 83 84 12
+36 8A B0 89 5C 8C 58 89 EE 87 08 8A 42 82 20 86
+D8 83 34 8B 4E 8B 62 83 CE 8B 00 00 E2 8D 1A 88
+AA 84 00 00 84 12 36 8A 14 93 7A 93 C8 92 CA 93
+8E 92 00 00 BE 8F 00 00 84 92 36 93 E6 92 24 93
+CE 90 00 00 00 00 E6 93 62 8A 3A 40 0C 00 39 40
+D6 21 08 49 28 53 19 83 18 83 E8 49 00 00 1A 83
+FA 23 30 4D 3A 40 0E 00 38 40 CA 21 09 48 29 53
+F8 49 00 00 18 53 1A 83 FB 23 30 4D 82 43 CC 21
+30 4D 92 42 CA 21 DA 21 30 4D 3E 8A BC 8A C2 8A
+D2 8A 3A 4E 82 4A C8 21 2E 4E 82 4E C6 21 3D 40
+10 00 09 4A 08 49 29 83 18 48 FE FF 0E 98 FC 2B
+89 48 00 00 1D 83 F6 23 2A 4A 0A 93 F0 23 3E 4F
+3D 41 30 4D 24 88 09 50 57 52 5F 53 54 41 54 45
+84 12 CA 8A 88 8A 02 94 A6 83 09 52 53 54 5F 53
+54 41 54 45 92 42 0E 18 14 8B 92 42 0C 18 16 8B
+EF 3F 06 8B 08 50 57 52 5F 48 45 52 45 00 92 42
+C8 21 14 8B 92 42 C6 21 16 8B 30 4D 1A 8B 08 52
+53 54 5F 48 45 52 45 00 92 42 C8 21 0E 18 92 42
+C6 21 0C 18 EC 3F EC 83 04 57 49 50 45 00 39 40
+10 00 29 83 B9 43 80 FF FC 23 B2 40 04 80 02 80
+B2 40 D8 8B D6 8B B2 40 88 8A 0E 18 B2 40 02 94
+0C 18 30 12 24 8B B2 40 C8 81 C6 81 B2 40 32 82
+30 82 B2 40 4A 82 48 82 B2 40 18 00 0A 18 37 40
+26 83 36 40 9C 82 35 40 FA 80 34 40 EC 80 B2 40
+0A 00 DC 21 B2 40 20 00 B4 21 30 41 68 8B 04 57
+41 52 4D 00 30 40 D8 8B 3D 40 12 8C 92 C3 30 01
+1E 42 08 18 0E 93 14 24 F2 B0 10 00 00 02 02 20
+3E E3 1E 53 F2 D0 30 00 0A 02 92 D3 1A 05 3E 90
+0A 00 B5 27 3E 90 16 00 B2 2F 2E 93 81 27 8A 2F
+30 4D 2E 80 07 0D 0A 1B 5B 37 6D 23 00 82 9C 83
+2E 80 19 46 61 73 74 46 6F 72 74 68 20 C2 A9 4A
+2E 4D 2E 54 68 6F 6F 72 65 6E 73 20 00 82 24 80
+40 FF 2A 8A A6 82 66 83 2E 80 0A 62 79 74 65 73
+20 66 72 65 65 00 48 80 C8 87 24 8A 04 43 4F 4C
+44 00 92 B3 0A 05 FD 23 B2 40 04 A5 20 01 31 40
+E0 20 B2 40 88 5A CC 01 B2 D3 06 02 B2 40 FE FF
+02 02 B2 D3 26 02 B2 40 FF 7F 22 02 B2 D3 46 02
+B2 40 FC FF 42 02 E2 D3 45 02 B2 40 00 A5 60 01
+B2 D0 10 00 86 01 F2 D0 03 00 0B 02 B2 40 FF 1E
 80 01 B2 40 B6 00 82 01 B2 40 F4 00 84 01 39 40
-80 00 B2 D0 10 00 86 01 92 D2 5E 01 08 18 38 40
-59 14 18 83 FE 23 19 83 FA 23 39 40 00 20 29 83
-89 43 00 20 FC 23 39 40 38 00 29 83 B9 40 9E 8E
-8C FF FB 23 B2 40 26 83 E0 FF B2 40 81 00 00 05
-92 42 02 18 06 05 92 42 04 18 08 05 92 C3 00 05
-92 D3 1A 05 3F 40 80 20 31 40 E0 20 30 12 06 8E
-4C 3F 8A 8E 07 43 4F 4D 50 41 52 45 0C 4E 38 4F
-3B 4F 39 4F 0E 4B 0E 5C 0C 24 1B 83 07 30 1C 83
-07 30 19 53 F9 98 FF FF F5 27 02 2C 3E 43 30 4D
-1E 43 30 4D B2 89 86 5B 54 48 45 4E 5D 00 30 4D
-76 8F 86 5B 45 4C 53 45 5D 00 87 12 14 84 00 00
-C6 80 42 87 80 84 24 87 34 80 40 82 EC 8F 44 80
-1E 84 06 5B 54 48 45 4E 5D 00 4C 8F 4A 82 BC 8F
-F8 83 D0 80 58 80 4A 82 92 8F 2A 80 44 80 1E 84
-06 5B 45 4C 53 45 5D 00 4C 8F 4A 82 DA 8F F8 83
-D0 80 58 80 4A 82 90 8F 2A 80 1E 84 04 5B 49 46
-5D 00 4C 8F 4A 82 92 8F 3C 82 90 8F F8 83 1E 84
-05 0D 0A 6B 6F 20 D6 83 8C 83 32 87 3C 82 92 8F
-82 8F 84 5B 49 46 5D 00 0E 93 3E 4F BE 27 30 4D
-02 90 89 5B 44 45 46 49 4E 45 44 5D 87 12 42 87
-80 84 EE 84 6A 80 2A 80 12 90 8B 5B 55 4E 44 45
-46 49 4E 45 44 5D 87 12 42 87 80 84 EE 84 6A 80
-00 81 2A 80 46 90 3D 41 B2 4E 0E 18 A2 4E 0C 18
-3E 4F 30 40 56 8D 48 8C 06 4D 41 52 4B 45 52 00
-B0 12 B8 89 BA 40 84 12 FC FF BA 40 44 90 FE FF
-9A 42 C8 21 00 00 28 83 8A 48 02 00 A2 52 C6 21
-30 40 00 8A 1C 15 B0 12 2A 80 80 84 EE 84 4A 82
-9A 90 AA 85 40 82 CE 88 B4 90 9C 90 39 4E 39 80
-86 12 08 24 19 53 02 20 2E 4E 04 3C 2E 53 19 53
-01 24 2E 82 1B 17 30 41 3E 40 28 00 B0 12 84 90
-19 42 C6 21 A2 53 C6 21 89 4E 00 00 3E 40 29 00
-1C 15 12 12 C4 21 92 53 C4 21 B0 12 2A 80 80 84
-AA 85 40 82 F2 90 E8 90 21 53 3E 90 10 00 7D 2D
-E1 2B F4 90 B2 41 C4 21 DD 3F 87 12 42 87 74 84
-02 91 0C 43 1B 42 C6 21 A2 53 C6 21 6A 4E 3E 4F
-7A 90 23 00 27 20 92 53 C4 21 B0 12 84 90 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 C6 21 A2 53 C6 21 89 4E 00 00 3E 4F
-3D 41 30 4D 7A 90 26 00 07 20 3C 40 10 02 92 53
-C4 21 B0 12 84 90 ED 3F 7A 90 40 00 16 20 3C 40
-20 00 92 53 C4 21 B0 12 D0 90 0C 20 3C 50 10 00
-3E 40 2B 00 B0 12 D0 90 92 92 C0 21 C4 21 02 24
-92 53 C4 21 8E 10 0C 5E DA 3F B0 12 D0 90 FA 23
-3C 50 10 00 B0 12 B8 90 EF 3F 0C 43 1B 42 C6 21
-A2 53 C6 21 87 12 42 87 74 84 CC 91 FE 90 26 00
-00 00 3E 40 20 00 03 20 3C 50 82 00 C8 3F B0 12
-D0 90 E1 23 3C 50 80 00 B0 12 B8 90 DC 3F D6 82
-04 52 45 54 49 00 87 12 14 84 00 13 B0 86 2A 80
-14 84 2C 00 FA 90 C4 91 0A 92 09 4B 2E 4E 0E DC
-A4 3F FC 8A 03 4D 4F 56 84 12 00 92 00 40 14 92
-05 4D 4F 56 2E 42 84 12 00 92 40 40 00 00 03 41
-44 44 84 12 00 92 00 50 2E 92 05 41 44 44 2E 42
-84 12 00 92 40 50 3A 92 04 41 44 44 43 00 84 12
-00 92 00 60 48 92 06 41 44 44 43 2E 42 00 84 12
-00 92 40 60 F0 91 04 53 55 42 43 00 84 12 00 92
-00 70 66 92 06 53 55 42 43 2E 42 00 84 12 00 92
-40 70 74 92 03 53 55 42 84 12 00 92 00 80 84 92
-05 53 55 42 2E 42 84 12 00 92 40 80 DE 8A 03 43
-4D 50 84 12 00 92 00 90 9E 92 05 43 4D 50 2E 42
-84 12 00 92 40 90 CC 8A 04 44 41 44 44 00 84 12
-00 92 00 A0 B8 92 06 44 41 44 44 2E 42 00 84 12
-00 92 40 A0 AA 92 03 42 49 54 84 12 00 92 00 B0
-D6 92 05 42 49 54 2E 42 84 12 00 92 40 B0 E2 92
-03 42 49 43 84 12 00 92 00 C0 F0 92 05 42 49 43
-2E 42 84 12 00 92 40 C0 FC 92 03 42 49 53 84 12
-00 92 00 D0 0A 93 05 42 49 53 2E 42 84 12 00 92
-40 D0 00 00 03 58 4F 52 84 12 00 92 00 E0 24 93
-05 58 4F 52 2E 42 84 12 00 92 40 E0 56 92 03 41
-4E 44 84 12 00 92 00 F0 3E 93 05 41 4E 44 2E 42
-84 12 00 92 40 F0 42 87 FA 90 5C 93 0A 4C 3C F0
-70 00 8A 10 3A F0 0F 00 0C DA 4F 3F 90 92 03 52
-52 43 84 12 56 93 00 10 6E 93 05 52 52 43 2E 42
-84 12 56 93 40 10 7A 93 04 53 57 50 42 00 84 12
-56 93 80 10 88 93 03 52 52 41 84 12 56 93 00 11
-96 93 05 52 52 41 2E 42 84 12 56 93 40 11 A2 93
-03 53 58 54 84 12 56 93 80 11 00 00 04 50 55 53
-48 00 84 12 56 93 00 12 BC 93 06 50 55 53 48 2E
-42 00 84 12 56 93 40 12 16 93 04 43 41 4C 4C 00
-84 12 56 93 80 12 1A 53 0E 4A 87 12 34 82 1E 84
-0D 6F 75 74 20 6F 66 20 62 6F 75 6E 64 73 4C 88
-42 87 74 84 06 94 92 53 C4 21 3E 40 2C 00 B0 12
-2A 80 80 84 AA 85 40 82 CE 88 BA 91 1E 94 0A 4E
-3E 4F 1A 83 E0 33 29 4E 59 0E 0A 28 08 4C 59 0A
-01 28 0C 8A 08 8A 38 90 10 00 D5 2F 5A 0E 94 3F
-2A 92 D1 2F 8A 10 5A 06 8F 3F B0 93 04 52 52 43
-4D 00 84 12 00 94 50 00 4C 94 04 52 52 41 4D 00
-84 12 00 94 50 01 5A 94 04 52 4C 41 4D 00 84 12
-00 94 50 02 68 94 04 52 52 55 4D 00 84 12 00 94
-50 03 CA 93 05 50 55 53 48 4D 84 12 00 94 00 15
-84 94 04 50 4F 50 4D 00 84 12 00 94 00 17 76 94
-03 53 3E 3D 85 12 00 38 A0 94 02 53 3C 00 85 12
-00 34 92 94 03 30 3E 3D 85 12 00 30 B4 94 02 30
-3C 00 85 12 00 30 00 00 02 55 3C 00 85 12 00 2C
-C8 94 03 55 3E 3D 85 12 00 28 BE 94 03 30 3C 3E
-85 12 00 24 DC 94 02 30 3D 00 85 12 00 20 00 00
-02 49 46 00 1A 42 C6 21 8A 4E 00 00 A2 53 C6 21
-0E 4A 30 4D D2 94 04 54 48 45 4E 00 1A 42 C6 21
-08 4E 3E 4F 09 48 29 53 0A 89 0A 11 3A 90 00 02
-63 2F 88 DA 00 00 30 4D C6 92 04 45 4C 53 45 00
-1A 42 C6 21 BA 40 00 3C 00 00 A2 53 C6 21 2F 83
-8F 4A 00 00 E3 3F 06 95 05 55 4E 54 49 4C 3A 4F
-08 4E 3E 4F 19 42 C6 21 2A 83 0A 89 0A 11 3A 90
-00 FE 42 3B 3A F0 FF 03 08 DA 89 48 00 00 A2 53
-C6 21 30 4D 4A 93 05 41 47 41 49 4E 0A 4E 38 40
-00 3C E7 3F 00 00 05 57 48 49 4C 45 87 12 F4 94
-76 80 2A 80 AA 94 06 52 45 50 45 41 54 00 87 12
-7C 95 0C 95 2A 80 A8 95 3D 41 08 4E 3E 4F 2A 48
-B2 92 C4 21 CD 2F 98 42 C6 21 00 00 30 4D DA 93
-03 42 57 31 84 12 A6 95 00 00 C0 95 03 42 57 32
-84 12 A6 95 00 00 CC 95 03 42 57 33 84 12 A6 95
-00 00 E4 95 3D 41 1A 42 C6 21 28 4E B2 92 C4 21
-90 2B BA 4F 00 00 A2 53 C6 21 8E 4A 00 00 3E 4F
-30 4D 00 00 03 46 57 31 84 12 E2 95 00 00 04 96
-03 46 57 32 84 12 E2 95 00 00 10 96 03 46 57 33
-84 12 E2 95 00 00 00 00 05 3F 47 4F 54 4F 3E 90
-00 30 07 24 3E E0 00 04 3E B0 00 10 02 24 3E E0
-00 08 87 12 C0 88 DA 86 2A 80 1C 96 04 47 4F 54
-4F 00 2F 83 8F 4E 00 00 3E 40 00 3C F2 3F
+80 00 92 D2 5E 01 08 18 38 40 59 14 18 83 FE 23
+19 83 FA 23 39 40 00 20 29 83 89 43 00 20 FC 23
+B0 12 0E 80 B2 40 81 00 00 05 92 42 02 18 06 05
+92 42 04 18 08 05 92 C3 00 05 3F 40 80 20 30 12
+D4 8B 52 3F 24 89 86 5B 54 48 45 4E 5D 00 30 4D
+0C 4E 38 4F 3B 4F 39 4F 0E 4B 0E 5C 10 24 1B 83
+06 30 1C 83 04 30 19 53 F9 98 FF FF F5 27 2D 4D
+3E 4F 30 4D 2F 53 9F 83 00 00 F9 23 2F 53 2D 53
+F7 3F 06 8D 86 5B 45 4C 53 45 5D 00 0D 12 87 12
+24 80 00 00 AA 82 70 86 F2 83 62 86 68 82 4C 80
+9E 8D 70 82 2E 80 06 5B 54 48 45 4E 5D 00 10 8D
+78 8D 34 8D 56 8D 26 83 70 82 2E 80 06 5B 45 4C
+53 45 5D 00 10 8D 8E 8D 34 8D 54 8D 26 83 2E 80
+04 5B 49 46 5D 00 10 8D 56 8D 48 80 54 8D 22 82
+2E 80 05 0D 0A 6B 6F 20 00 82 D4 80 C4 80 48 80
+56 8D 44 8D 84 5B 49 46 5D 00 0E 93 3E 4F C6 27
+30 4D 2F 53 30 4D B4 8D 89 5B 44 45 46 49 4E 45
+44 5D 0D 12 87 12 70 86 F2 83 4A 84 C2 8D 26 83
+C8 8D 8B 5B 55 4E 44 45 46 49 4E 45 44 5D 0D 12
+87 12 D2 8D F6 8D 3D 41 30 40 B6 82 38 40 C0 21
+0A 4E 39 48 2E 48 09 5E 1E 52 C4 21 09 9E 03 24
+7A 9E FC 27 1E 83 0A 4E 2A 88 82 4A C4 21 30 4D
+1C 15 87 12 F2 83 4A 84 42 80 34 8E 06 85 4C 80
+00 88 4E 8E 36 8E 39 4E 39 80 86 12 08 24 19 53
+02 20 2E 4E 04 3C 2E 53 19 53 01 24 2E 82 1B 17
+30 41 3E 40 28 00 B0 12 20 8E 19 42 C6 21 A2 53
+C6 21 89 4E 00 00 3E 40 29 00 1C 15 12 12 C4 21
+92 53 C4 21 87 12 F2 83 06 85 4C 80 8A 8E 80 8E
+21 53 3E 90 10 00 80 2D E2 2B 8C 8E B2 41 C4 21
+DE 3F 0D 12 87 12 70 86 FC 8D 9C 8E 0C 43 1B 42
+C6 21 A2 53 C6 21 6A 4E 3E 4F 7A 90 23 00 27 20
+92 53 C4 21 B0 12 20 8E 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 C6 21
+A2 53 C6 21 89 4E 00 00 3E 4F 3D 41 30 4D 7A 90
+26 00 07 20 3C 40 10 02 92 53 C4 21 B0 12 20 8E
+ED 3F 7A 90 40 00 16 20 3C 40 20 00 92 53 C4 21
+B0 12 6A 8E 0C 20 3C 50 10 00 3E 40 2B 00 B0 12
+6A 8E 92 92 C0 21 C4 21 02 24 92 53 C4 21 8E 10
+0C 5E DA 3F B0 12 6A 8E FA 23 3C 50 10 00 B0 12
+52 8E EF 3F 0C 43 1B 42 C6 21 A2 53 C6 21 0D 12
+87 12 70 86 FC 8D 68 8F FE 90 26 00 00 00 3E 40
+20 00 03 20 3C 50 82 00 C7 3F B0 12 6A 8E E0 23
+3C 50 80 00 B0 12 52 8E DB 3F 00 00 04 52 45 54
+49 00 0D 12 87 12 24 80 00 13 F8 85 26 83 24 80
+2C 00 92 8E 5E 8F A8 8F 09 4B 2E 4E 0E DC A2 3F
+F6 89 03 4D 4F 56 84 12 9E 8F 00 40 B2 8F 05 4D
+4F 56 2E 42 84 12 9E 8F 40 40 00 00 03 41 44 44
+84 12 9E 8F 00 50 CC 8F 05 41 44 44 2E 42 84 12
+9E 8F 40 50 D8 8F 04 41 44 44 43 00 84 12 9E 8F
+00 60 E6 8F 06 41 44 44 43 2E 42 00 84 12 9E 8F
+40 60 8C 8F 04 53 55 42 43 00 84 12 9E 8F 00 70
+04 90 06 53 55 42 43 2E 42 00 84 12 9E 8F 40 70
+12 90 03 53 55 42 84 12 9E 8F 00 80 22 90 05 53
+55 42 2E 42 84 12 9E 8F 40 80 D2 89 03 43 4D 50
+84 12 9E 8F 00 90 3C 90 05 43 4D 50 2E 42 84 12
+9E 8F 40 90 BE 89 04 44 41 44 44 00 84 12 9E 8F
+00 A0 56 90 06 44 41 44 44 2E 42 00 84 12 9E 8F
+40 A0 48 90 03 42 49 54 84 12 9E 8F 00 B0 74 90
+05 42 49 54 2E 42 84 12 9E 8F 40 B0 80 90 03 42
+49 43 84 12 9E 8F 00 C0 8E 90 05 42 49 43 2E 42
+84 12 9E 8F 40 C0 9A 90 03 42 49 53 84 12 9E 8F
+00 D0 A8 90 05 42 49 53 2E 42 84 12 9E 8F 40 D0
+00 00 03 58 4F 52 84 12 9E 8F 00 E0 C2 90 05 58
+4F 52 2E 42 84 12 9E 8F 40 E0 F4 8F 03 41 4E 44
+84 12 9E 8F 00 F0 DC 90 05 41 4E 44 2E 42 84 12
+9E 8F 40 F0 70 86 92 8E FA 90 0A 4C 3C F0 70 00
+8A 10 3A F0 0F 00 0C DA 4F 3F 2E 90 03 52 52 43
+84 12 F4 90 00 10 0C 91 05 52 52 43 2E 42 84 12
+F4 90 40 10 18 91 04 53 57 50 42 00 84 12 F4 90
+80 10 26 91 03 52 52 41 84 12 F4 90 00 11 34 91
+05 52 52 41 2E 42 84 12 F4 90 40 11 40 91 03 53
+58 54 84 12 F4 90 80 11 00 00 04 50 55 53 48 00
+84 12 F4 90 00 12 5A 91 06 50 55 53 48 2E 42 00
+84 12 F4 90 40 12 B4 90 04 43 41 4C 4C 00 84 12
+F4 90 80 12 1A 53 0E 4A 0D 12 87 12 9C 83 2E 80
+0D 6F 75 74 20 6F 66 20 62 6F 75 6E 64 73 7A 87
+70 86 FC 8D A6 91 92 53 C4 21 3E 40 2C 00 87 12
+F2 83 06 85 4C 80 00 88 54 8F BC 91 0A 4E 3E 4F
+1A 83 E0 33 29 4E 59 0E 0A 28 08 4C 59 0A 01 28
+0C 8A 08 8A 38 90 10 00 D5 2F 5A 0E 94 3F 2A 92
+D1 2F 8A 10 5A 06 8F 3F 4E 91 04 52 52 43 4D 00
+84 12 A0 91 50 00 EA 91 04 52 52 41 4D 00 84 12
+A0 91 50 01 F8 91 04 52 4C 41 4D 00 84 12 A0 91
+50 02 06 92 04 52 52 55 4D 00 84 12 A0 91 50 03
+68 91 05 50 55 53 48 4D 84 12 A0 91 00 15 22 92
+04 50 4F 50 4D 00 84 12 A0 91 00 17 14 92 03 53
+3E 3D 85 12 00 38 3E 92 02 53 3C 00 85 12 00 34
+30 92 03 30 3E 3D 85 12 00 30 52 92 02 30 3C 00
+85 12 00 30 00 00 02 55 3C 00 85 12 00 2C 66 92
+03 55 3E 3D 85 12 00 28 5C 92 03 30 3C 3E 85 12
+00 24 7A 92 02 30 3D 00 85 12 00 20 00 00 02 49
+46 00 1A 42 C6 21 8A 4E 00 00 A2 53 C6 21 0E 4A
+30 4D 70 92 04 54 48 45 4E 00 1A 42 C6 21 08 4E
+3E 4F 09 48 29 53 0A 89 0A 11 3A 90 00 02 63 2F
+88 DA 00 00 30 4D 64 90 04 45 4C 53 45 00 1A 42
+C6 21 BA 40 00 3C 00 00 A2 53 C6 21 2F 83 8F 4A
+00 00 E3 3F A4 92 05 55 4E 54 49 4C 3A 4F 08 4E
+3E 4F 19 42 C6 21 2A 83 0A 89 0A 11 3A 90 00 FE
+42 3B 3A F0 FF 03 08 DA 89 48 00 00 A2 53 C6 21
+30 4D E8 90 05 41 47 41 49 4E 0A 4E 38 40 00 3C
+E7 3F 00 00 05 57 48 49 4C 45 0D 12 87 12 92 92
+82 82 26 83 48 92 06 52 45 50 45 41 54 00 0D 12
+87 12 1A 93 AA 92 26 83 4A 93 3D 41 08 4E 3E 4F
+2A 48 B2 92 C4 21 CB 2F 98 42 C6 21 00 00 30 4D
+78 91 03 42 57 31 84 12 48 93 00 00 62 93 03 42
+57 32 84 12 48 93 00 00 6E 93 03 42 57 33 84 12
+48 93 00 00 86 93 3D 41 1A 42 C6 21 28 4E B2 92
+C4 21 8E 2B BA 4F 00 00 A2 53 C6 21 8E 4A 00 00
+3E 4F 30 4D 00 00 03 46 57 31 84 12 84 93 00 00
+A6 93 03 46 57 32 84 12 84 93 00 00 B2 93 03 46
+57 33 84 12 84 93 00 00 BE 93 04 47 4F 54 4F 00
+2F 83 8F 4E 00 00 3E 40 00 3C 0D 12 87 12 F0 87
+18 86 26 83 00 00 05 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
 @FFFE
-9E 8E
+6E 8C
 q
diff --git a/binaries/Log/log.txt b/binaries/Log/log.txt
deleted file mode 100644 (file)
index 5444514..0000000
+++ /dev/null
@@ -1,138 +0,0 @@
-Tue Jun 11 13:46:45 2019:      * -----/|-------------------------------------------------------------------- *
-Tue Jun 11 13:46:45 2019:      *     / |__                                                                   *
-Tue Jun 11 13:46:45 2019:      *    /_   /   MSP Flasher v1.3.18                                             *
-Tue Jun 11 13:46:45 2019:      *      | /                                                                    *
-Tue Jun 11 13:46:45 2019:      * -----|/-------------------------------------------------------------------- *
-Tue Jun 11 13:46:45 2019:      *
-Tue Jun 11 13:46:45 2019:      * Evaluating triggers...done
-Tue Jun 11 13:46:45 2019:      * Checking for available FET debuggers: 
-Tue Jun 11 13:46:45 2019:      * Found USB FET @ COM4 <- Selected
-Tue Jun 11 13:46:45 2019:      * Initializing interface @ COM4...done
-Tue Jun 11 13:46:46 2019:      * Checking firmware compatibility: 
-Tue Jun 11 13:46:46 2019:      * FET firmware is up to date.
-Tue Jun 11 13:46:46 2019:      * Reading FW version...
-Tue Jun 11 13:46:46 2019:      * Debugger does not support target voltages other than 3000 mV!
-Tue Jun 11 13:46:46 2019:      * Setting VCC to 3000 mV...done
-Tue Jun 11 13:46:48 2019:      * Accessing device...done
-Tue Jun 11 13:46:48 2019:      * Reading device information...done
-Tue Jun 11 13:46:48 2019:      * Loading file into device...done
-Tue Jun 11 13:46:50 2019:      * Verifying memory (B:\binaries\MSP_EXP430FR5994_16MHz.txt)...done
-Tue Jun 11 13:46:52 2019:      * 
-Tue Jun 11 13:46:52 2019:      * ----------------------------------------------------------------------------
-Tue Jun 11 13:46:52 2019:      * Arguments   : -s -m SBW2 -n MSP430FR5994 -v -w B:\binaries\MSP_EXP430FR5994_16MHz.txt -z [RESET,VCC] 
-Tue Jun 11 13:46:52 2019:      * ----------------------------------------------------------------------------
-Tue Jun 11 13:46:52 2019:      * Driver      : loaded
-Tue Jun 11 13:46:52 2019:      * Dll Version : 31300001
-Tue Jun 11 13:46:52 2019:      * FwVersion   : 31200000
-Tue Jun 11 13:46:52 2019:      * Interface   : TIUSB
-Tue Jun 11 13:46:52 2019:      * HwVersion   : E 4.0
-Tue Jun 11 13:46:52 2019:      * JTAG Mode   : AUTO
-Tue Jun 11 13:46:52 2019:      * Device      : MSP430FR5994
-Tue Jun 11 13:46:52 2019:      * EEM         : Level 5, ClockCntrl 2
-Tue Jun 11 13:46:52 2019:      * Erase Mode  : ERASE_ALL
-Tue Jun 11 13:46:52 2019:      * Prog.File   : B:\binaries\MSP_EXP430FR5994_16MHz.txt
-Tue Jun 11 13:46:52 2019:      * Verified    : TRUE
-Tue Jun 11 13:46:52 2019:      * BSL Unlock  : FALSE
-Tue Jun 11 13:46:52 2019:      * InfoA Access: FALSE
-Tue Jun 11 13:46:52 2019:      * VCC ON      : 3000 mV
-Tue Jun 11 13:46:52 2019:      * ----------------------------------------------------------------------------
-Tue Jun 11 13:46:52 2019:      * Resetting device (RST/NMI)...done
-Tue Jun 11 13:46:53 2019:      * Starting target code execution...done
-Tue Jun 11 13:46:53 2019:      * Disconnecting from device...done
-Tue Jun 11 13:46:53 2019:      * 
-Tue Jun 11 13:46:53 2019:      * ----------------------------------------------------------------------------
-Tue Jun 11 13:46:53 2019:      * Driver      : closed (No error)
-Tue Jun 11 13:46:53 2019:      * ----------------------------------------------------------------------------
-Tue Jun 11 13:46:53 2019:      */
-Tue Jun 11 13:48:24 2019:      * -----/|-------------------------------------------------------------------- *
-Tue Jun 11 13:48:24 2019:      *     / |__                                                                   *
-Tue Jun 11 13:48:24 2019:      *    /_   /   MSP Flasher v1.3.18                                             *
-Tue Jun 11 13:48:24 2019:      *      | /                                                                    *
-Tue Jun 11 13:48:24 2019:      * -----|/-------------------------------------------------------------------- *
-Tue Jun 11 13:48:24 2019:      *
-Tue Jun 11 13:48:24 2019:      * Evaluating triggers...done
-Tue Jun 11 13:48:24 2019:      * Checking for available FET debuggers: 
-Tue Jun 11 13:48:25 2019:      * Found USB FET @ COM4 <- Selected
-Tue Jun 11 13:48:25 2019:      * Initializing interface @ COM4...done
-Tue Jun 11 13:48:25 2019:      * Checking firmware compatibility: 
-Tue Jun 11 13:48:25 2019:      * FET firmware is up to date.
-Tue Jun 11 13:48:25 2019:      * Reading FW version...
-Tue Jun 11 13:48:25 2019:      * Debugger does not support target voltages other than 3000 mV!
-Tue Jun 11 13:48:25 2019:      * Setting VCC to 3000 mV...done
-Tue Jun 11 13:48:27 2019:      * Accessing device...done
-Tue Jun 11 13:48:27 2019:      * Reading device information...done
-Tue Jun 11 13:48:27 2019:      * Loading file into device...done
-Tue Jun 11 13:48:29 2019:      * Verifying memory (B:\binaries\MSP_EXP430FR5994_16MHz.txt)...done
-Tue Jun 11 13:48:31 2019:      * 
-Tue Jun 11 13:48:31 2019:      * ----------------------------------------------------------------------------
-Tue Jun 11 13:48:31 2019:      * Arguments   : -s -m SBW2 -n MSP430FR5994 -v -w B:\binaries\MSP_EXP430FR5994_16MHz.txt -z [RESET,VCC] 
-Tue Jun 11 13:48:31 2019:      * ----------------------------------------------------------------------------
-Tue Jun 11 13:48:31 2019:      * Driver      : loaded
-Tue Jun 11 13:48:31 2019:      * Dll Version : 31300001
-Tue Jun 11 13:48:31 2019:      * FwVersion   : 31200000
-Tue Jun 11 13:48:31 2019:      * Interface   : TIUSB
-Tue Jun 11 13:48:31 2019:      * HwVersion   : E 4.0
-Tue Jun 11 13:48:31 2019:      * JTAG Mode   : AUTO
-Tue Jun 11 13:48:31 2019:      * Device      : MSP430FR5994
-Tue Jun 11 13:48:31 2019:      * EEM         : Level 5, ClockCntrl 2
-Tue Jun 11 13:48:31 2019:      * Erase Mode  : ERASE_ALL
-Tue Jun 11 13:48:31 2019:      * Prog.File   : B:\binaries\MSP_EXP430FR5994_16MHz.txt
-Tue Jun 11 13:48:31 2019:      * Verified    : TRUE
-Tue Jun 11 13:48:31 2019:      * BSL Unlock  : FALSE
-Tue Jun 11 13:48:31 2019:      * InfoA Access: FALSE
-Tue Jun 11 13:48:31 2019:      * VCC ON      : 3000 mV
-Tue Jun 11 13:48:31 2019:      * ----------------------------------------------------------------------------
-Tue Jun 11 13:48:31 2019:      * Resetting device (RST/NMI)...done
-Tue Jun 11 13:48:32 2019:      * Starting target code execution...done
-Tue Jun 11 13:48:32 2019:      * Disconnecting from device...done
-Tue Jun 11 13:48:32 2019:      * 
-Tue Jun 11 13:48:32 2019:      * ----------------------------------------------------------------------------
-Tue Jun 11 13:48:32 2019:      * Driver      : closed (No error)
-Tue Jun 11 13:48:32 2019:      * ----------------------------------------------------------------------------
-Tue Jun 11 13:48:32 2019:      */
-Tue Jun 11 14:01:29 2019:      * -----/|-------------------------------------------------------------------- *
-Tue Jun 11 14:01:29 2019:      *     / |__                                                                   *
-Tue Jun 11 14:01:29 2019:      *    /_   /   MSP Flasher v1.3.18                                             *
-Tue Jun 11 14:01:29 2019:      *      | /                                                                    *
-Tue Jun 11 14:01:29 2019:      * -----|/-------------------------------------------------------------------- *
-Tue Jun 11 14:01:29 2019:      *
-Tue Jun 11 14:01:29 2019:      * Evaluating triggers...done
-Tue Jun 11 14:01:29 2019:      * Checking for available FET debuggers: 
-Tue Jun 11 14:01:30 2019:      * Found USB FET @ COM4 <- Selected
-Tue Jun 11 14:01:30 2019:      * Initializing interface @ COM4...done
-Tue Jun 11 14:01:30 2019:      * Checking firmware compatibility: 
-Tue Jun 11 14:01:30 2019:      * FET firmware is up to date.
-Tue Jun 11 14:01:30 2019:      * Reading FW version...
-Tue Jun 11 14:01:30 2019:      * Debugger does not support target voltages other than 3000 mV!
-Tue Jun 11 14:01:30 2019:      * Setting VCC to 3000 mV...done
-Tue Jun 11 14:01:30 2019:      * Accessing device...done
-Tue Jun 11 14:01:31 2019:      * Reading device information...done
-Tue Jun 11 14:01:31 2019:      * Loading file into device...done
-Tue Jun 11 14:01:33 2019:      * Verifying memory (B:\binaries\MSP_EXP430FR5994_16MHz.txt)...done
-Tue Jun 11 14:01:34 2019:      * 
-Tue Jun 11 14:01:34 2019:      * ----------------------------------------------------------------------------
-Tue Jun 11 14:01:34 2019:      * Arguments   : -s -m SBW2 -n MSP430FR5994 -v -w B:\binaries\MSP_EXP430FR5994_16MHz.txt -z [RESET,VCC] 
-Tue Jun 11 14:01:34 2019:      * ----------------------------------------------------------------------------
-Tue Jun 11 14:01:34 2019:      * Driver      : loaded
-Tue Jun 11 14:01:34 2019:      * Dll Version : 31300001
-Tue Jun 11 14:01:34 2019:      * FwVersion   : 31200000
-Tue Jun 11 14:01:34 2019:      * Interface   : TIUSB
-Tue Jun 11 14:01:34 2019:      * HwVersion   : E 4.0
-Tue Jun 11 14:01:34 2019:      * JTAG Mode   : AUTO
-Tue Jun 11 14:01:34 2019:      * Device      : MSP430FR5994
-Tue Jun 11 14:01:34 2019:      * EEM         : Level 5, ClockCntrl 2
-Tue Jun 11 14:01:34 2019:      * Erase Mode  : ERASE_ALL
-Tue Jun 11 14:01:34 2019:      * Prog.File   : B:\binaries\MSP_EXP430FR5994_16MHz.txt
-Tue Jun 11 14:01:34 2019:      * Verified    : TRUE
-Tue Jun 11 14:01:34 2019:      * BSL Unlock  : FALSE
-Tue Jun 11 14:01:34 2019:      * InfoA Access: FALSE
-Tue Jun 11 14:01:34 2019:      * VCC ON      : 3000 mV
-Tue Jun 11 14:01:34 2019:      * ----------------------------------------------------------------------------
-Tue Jun 11 14:01:34 2019:      * Resetting device (RST/NMI)...done
-Tue Jun 11 14:01:35 2019:      * Starting target code execution...done
-Tue Jun 11 14:01:36 2019:      * Disconnecting from device...done
-Tue Jun 11 14:01:36 2019:      * 
-Tue Jun 11 14:01:36 2019:      * ----------------------------------------------------------------------------
-Tue Jun 11 14:01:36 2019:      * Driver      : closed (No error)
-Tue Jun 11 14:01:36 2019:      * ----------------------------------------------------------------------------
-Tue Jun 11 14:01:36 2019:      */
index 5da19d6..5391deb 100644 (file)
 @1800
-10 00 08 00 A1 F7 80 3E 05 00 18 00 68 96 D0 8C
-2D 01 6B B0 B6 82 C8 82
+10 00 08 00 A1 F7 80 3E 05 00 18 00 0C 94 88 8A
+2E 01 6B B0 06 81 18 81 D4 8B
 @8000
-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 3A 41 0D 12 0D 4A
-30 4D 00 00 04 45 58 49 54 00 3D 41 30 4D 24 80
-03 44 55 50 2F 83 8F 4E 00 00 30 4D 00 00 04 32
-44 55 50 00 8F 4E FE FF AF 4F FC FF 2F 82 30 4D
-00 00 04 3F 44 55 50 00 0E 93 EC 23 30 4D 30 80
-04 44 52 4F 50 00 3E 4F 30 4D 2F 53 30 4D 3E 80
-04 53 57 41 50 00 2A 4F 8F 4E 00 00 0E 4A 30 4D
-52 80 02 3E 52 00 0E 12 3E 4F 30 4D 70 80 02 52
-3E 00 2F 83 8F 4E 00 00 3E 41 30 4D 60 80 05 44
-45 50 54 48 8F 4E FE FF 3E 40 80 20 0E 8F 0E 11
-2F 83 30 4D 00 00 01 2D 3E 8F 3E E3 1E 53 30 4D
-00 00 02 31 2B 00 1E 53 30 4D C2 80 02 31 2D 00
-1E 83 30 4D 3E F3 06 34 BF E3 00 00 3E E3 9F 53
-00 00 0E 63 30 4D 00 00 01 40 2E 4E 30 4D E8 80
-01 21 BE 4F 00 00 3E 4F 30 4D CC 80 02 30 3D 00
-1E 83 0E 7E 30 4D FC 80 02 30 3C 00 0E 5E 0E 7E
-3E E3 30 4D 00 00 01 3D 3E 8F FA 27 0E F3 30 4D
-00 00 02 55 3C 00 3E 8F F9 2B 01 24 3E 43 30 4D
-16 81 02 3C 23 00 B2 40 B2 21 B2 21 30 4D 0B 4E
+30 40 04 80 B0 12 06 81 12 D2 0A 18 F9 3F 39 40
+32 00 29 83 B9 40 6C 8C CE FF FB 23 B2 40 68 81
+E2 FF 30 41 2F 83 8F 4E 00 00 3E 4D 30 4D 2F 82
+8F 4E 02 00 7E 4D 8F 4D 00 00 0D 5E 1D B3 0D 63
+30 4D 0E 93 3E 4F 05 24 2D 4D 30 4D 0E 93 3E 4F
+FB 27 2D 53 30 4D 39 40 00 80 39 8F 08 4E 3E 4F
+08 59 19 15 30 4D 81 5E 00 00 3E 4F 32 B0 00 01
+EB 27 21 52 2D 53 30 4D 91 53 00 00 F7 3F 0B 4E
 1C 4F 02 00 2E 4F 0A 43 34 40 20 00 0E 93 04 20
 04 11 0E 4C 0C 43 09 43 0A 9B 01 28 0A 8B 09 69
 08 68 14 83 07 30 0C 5C 0E 6E 0A 6A F5 2B 0A 8B
-12 D3 F5 3F 34 40 00 80 8F 4A 02 00 8F 49 00 00
-0E 48 30 41 00 00 01 23 1B 42 DC 21 2C 4F 2F 83
-B0 12 46 81 BF 4F 00 00 7A 90 0A 00 02 28 7A 50
-07 00 7A 50 30 00 92 83 B2 21 18 42 B2 21 C8 4A
-00 00 30 4D 86 81 02 23 53 00 87 12 88 81 C0 81
-2D 83 09 93 E3 23 0E 93 E1 23 3D 41 30 4D B6 81
-02 23 3E 00 9F 42 B2 21 00 00 3E 40 B2 21 2E 8F
-30 4D 00 00 04 48 4F 4C 44 00 0A 4E 3E 4F DB 3F
-8E 80 04 53 49 47 4E 00 0E 93 3E 4F 3A 40 2D 00
-D2 33 30 4D 87 12 36 81 34 80 86 80 D4 80 BA 81
-92 80 F8 81 D4 81 D6 83 42 87 82 83 2A 80 22 81
-02 55 2E 00 08 43 2F 83 8F 4E 00 00 0E 48 EA 3F
-00 00 01 2E 0E 93 F6 37 38 43 F5 3F 2D 4D 30 4D
-0E 93 3E 4F FB 27 2D 53 30 4D 0E 93 3E 4F F6 23
-2D 53 30 4D 39 40 00 80 39 8F 08 4E 3E 4F 08 59
-19 15 30 4D 81 5E 00 00 3E 4F 32 B0 00 01 E6 27
-2D 53 21 52 30 4D 91 53 00 00 F7 3F E4 81 01 49
-2F 83 8F 4E 00 00 2E 41 1E 81 02 00 30 4D 00 00
-03 4B 45 59 30 40 98 82 18 42 8C 05 2F 83 8F 4E
-00 00 B0 12 B6 82 92 B3 9C 05 FD 27 1E 42 8C 05
-B0 12 C8 82 30 4D A2 B3 9C 05 FD 27 B2 40 11 00
-8E 05 D2 C3 03 02 30 41 B2 40 13 00 8E 05 D2 D3
-03 02 30 41 00 00 05 53 4C 45 45 50 30 40 E0 82
-B0 12 B6 82 12 D2 0A 18 F9 3F F0 80 06 41 43 43
-45 50 54 00 3C 40 64 83 3B 40 2E 83 2D 15 0A 4E
-2E 4F 0A 5E 3B 40 0D 00 3C 40 20 00 3D 40 58 83
-92 B3 9C 05 05 24 18 42 8C 05 38 90 0A 00 CB 23
-21 53 3D 15 DB 3F 21 52 3A 17 58 42 8C 05 48 9C
-08 2C 48 9B C9 27 78 92 11 20 2E 9F 0F 24 1E 83
-05 3C 0E 9A 03 24 CE 48 00 00 1E 53 A2 B3 9C 05
-FD 27 82 48 8E 05 30 4D 5A 83 2D 83 92 B3 9C 05
-E4 23 FC 27 82 93 DE 21 02 24 92 53 DE 21 3E 8F
-3D 41 B2 40 18 00 0A 18 30 4D 9E 80 04 45 4D 49
-54 00 30 40 86 83 08 4E 3E 4F E0 3F 3F 80 06 00
-8F 4E 04 00 3E 40 54 00 BF 40 3C 21 00 00 AF 4F
-02 00 A8 3F 7C 83 04 45 43 48 4F 00 B2 40 82 48
-52 83 82 43 DE 21 30 4D 32 82 06 4E 4F 45 43 48
-4F 00 B2 40 30 4D 52 83 92 43 DE 21 30 4D 20 82
-04 54 59 50 45 00 0E 93 0F 24 1E 15 3D 40 EC 83
-28 4F 7E 48 8F 48 00 00 2F 83 CB 3F EE 83 2D 83
-91 83 02 00 F5 23 1D 17 2F 53 3E 4F 30 4D D0 81
-02 43 52 00 30 40 08 84 87 12 1E 84 02 0D 0A 00
-D6 83 2A 80 2F 83 8F 4E 00 00 3E 4D 30 4D 2F 82
-8F 4E 02 00 7E 4D 8F 4D 00 00 0D 5E 1D B3 0D 63
-30 4D F2 81 82 53 22 00 82 43 B4 21 87 12 14 84
-1E 84 B0 86 14 84 22 00 80 84 4C 84 B2 40 20 00
-B4 21 6E 4E 1E 53 1E B3 82 6E C6 21 3D 41 3E 4F
-30 4D BA 83 82 2E 22 00 87 12 38 84 14 84 D6 83
-B0 86 2A 80 48 43 05 3C 00 00 04 57 4F 52 44 00
-48 4E 19 42 C0 21 1A 42 C2 21 09 5A 1A 52 C4 21
-09 9A 03 24 7E 9A FC 27 1A 83 4E F8 06 20 0E 4A
-1A 82 C2 21 82 4A C4 21 30 4D 18 42 C6 21 3B 40
-60 00 C8 4C 00 00 09 9A 0C 24 7C 4A 4E 9C 09 24
-18 53 4B 9C F6 2F 7C 90 7B 00 F3 2F 5C 82 B4 21
-F0 3F 1A 82 C2 21 82 4A C4 21 1E 42 C6 21 08 8E
-CE 48 00 00 30 4D 00 00 04 46 49 4E 44 00 2F 83
-0C 4E 65 4C 74 40 80 00 3B 40 CA 21 3E 4B 0E 93
-1E 24 58 4C 01 00 78 F0 1E 00 0E 58 2E 53 1E 4E
-FE FF 0E 93 F3 27 09 4E 78 49 48 C4 48 95 F7 23
-0A 4C FA 99 01 00 F3 23 1A 53 58 83 FA 23 19 B3
-09 63 0C 49 6A 4E 1E 43 4A 93 01 30 2E 83 8F 4C
-00 00 35 40 0E 80 34 40 00 80 30 4D 82 80 07 3E
-4E 55 4D 42 45 52 3C 4F 38 4F 29 4F 2F 82 1B 42
-DC 21 6A 4C 7A 80 30 00 7A 90 0A 00 05 28 7A 80
-07 00 7A 90 0A 00 12 28 0A 9B 22 C3 0F 2C 82 49
-D0 04 82 48 D2 04 82 4B C8 04 19 42 E4 04 18 42
-E6 04 09 5A 08 63 1C 53 1E 83 E3 23 8F 4C 00 00
-8F 48 02 00 8F 49 04 00 30 4D 32 C0 00 02 1B 42
-DC 21 0C 43 2D 15 3D 40 F4 85 09 43 08 43 3F 82
-8F 4E 06 00 0C 4E 7E 4C 6A 4C 7A 90 2D 00 04 28
-C9 23 B1 43 02 00 DF 3F 2B 43 7A 80 25 00 07 24
-3B 52 6A 53 04 24 3B 40 10 00 5A 83 BA 23 1C 53
-1E 83 EA 3F F6 85 2F 24 2D 83 7A 90 28 00 CB 27
-32 D0 00 02 7A 90 F7 00 C6 27 7A 90 F5 00 23 20
-0A 4E 09 43 8F 49 02 00 5A 83 09 4A 09 5C 69 49
-79 80 30 00 79 90 0A 00 05 28 79 80 07 00 79 90
-0A 00 0A 28 09 9B 08 2C 8F 49 00 00 0E 4B 2C 15
-B0 12 3E 81 2A 17 E6 3F 9F 4F 04 00 02 00 AF 4F
-04 00 0E 4A 4E 93 2B 17 0E 4C 82 4B DC 21 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 7E 82 04 48 45 52 45 00
-2F 83 8F 4E 00 00 1E 42 C6 21 30 4D B6 80 01 2C
-1A 42 C6 21 8A 4E 00 00 A2 53 C6 21 3E 4F 30 4D
-EC 82 05 41 4C 4C 4F 54 82 5E C6 21 3E 4F 30 4D
-A6 83 07 45 58 45 43 55 54 45 0A 4E 3E 4F 00 4A
-AE 86 87 4C 49 54 45 52 41 4C 82 93 BE 21 0C 24
-1A 42 C6 21 A2 52 C6 21 BA 40 14 84 00 00 8A 4E
-02 00 3E 4F 32 B0 00 02 32 C0 00 02 06 24 19 4A
-02 00 8A 4E 02 00 0E 49 EB 3F 30 4D 00 84 05 43
-4F 55 4E 54 2F 83 1E 53 8F 4E 00 00 5E 4E FF FF
-30 4D 82 4E C0 21 B2 4F C2 21 3E 4F 82 43 C4 21
-30 4D 85 12 20 00 87 12 32 87 42 87 80 84 50 87
-3D 40 58 87 CC 22 82 3E 5A 87 0A 4E 3E 4F 3D 40
-70 87 23 27 3D 40 4A 87 1A E2 BE 21 A1 27 B5 23
-72 87 3E 4F 3D 40 4A 87 B8 23 DE 53 00 00 68 4E
-08 5E F8 40 3F 00 00 00 3D 40 26 8A CB 3F D2 86
+12 D3 F5 3F 34 40 EC 80 8F 4A 02 00 8F 49 00 00
+0E 48 30 41 82 4E C0 21 B2 4F C2 21 3E 4F 82 43
+C4 21 30 4D 3F 80 06 00 8F 4E 04 00 3E 40 54 00
+BF 40 3C 21 00 00 AF 4F 02 00 24 3C 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 A2 B3 9C 05 FD 27 B2 40 11 00
+8E 05 D2 C3 03 02 30 41 A2 B3 9C 05 FD 27 B2 40
+13 00 8E 05 D2 D3 03 02 30 41 00 00 06 41 43 43
+45 50 54 00 3C 40 A6 81 3B 40 70 81 2D 15 0A 4E
+2E 4F 0A 5E 3B 40 0D 00 3C 40 20 00 3D 40 9A 81
+92 B3 9C 05 05 24 18 42 8C 05 38 90 0A 00 D3 23
+21 53 3D 15 30 40 00 80 21 52 3A 17 58 42 8C 05
+48 9C 08 2C 48 9B D0 27 78 92 11 20 2E 9F 0F 24
+1E 83 05 3C 0E 9A 03 24 CE 48 00 00 1E 53 A2 B3
+9C 05 FD 27 82 48 8E 05 30 4D 9C 81 2D 83 92 B3
+9C 05 E4 23 FC 27 82 93 DE 21 02 24 92 53 DE 21
+3E 8F 3D 41 B2 40 18 00 0A 18 30 4D 00 00 04 45
+4D 49 54 00 30 40 C8 81 08 4E 3E 4F E0 3F BE 81
+04 45 43 48 4F 00 B2 40 82 48 94 81 82 43 DE 21
+30 4D 00 00 06 4E 4F 45 43 48 4F 00 B2 40 30 4D
+94 81 92 43 DE 21 30 4D 00 00 04 54 59 50 45 00
+0E 93 0F 24 1E 15 3D 40 16 82 28 4F 7E 48 8F 48
+00 00 2F 83 D7 3F 18 82 2D 83 91 83 02 00 F5 23
+1D 17 2F 53 3E 4F 30 4D 00 00 02 43 52 00 30 40
+32 82 0D 12 87 12 2E 80 02 0D 0A 00 00 82 26 83
+00 00 03 4B 45 59 30 40 4A 82 18 42 8C 05 2F 83
+8F 4E 00 00 B0 12 06 81 92 B3 9C 05 FD 27 1E 42
+8C 05 B0 12 18 81 30 4D 2F 83 8F 4E 00 00 30 4D
+8F 4E FE FF AF 4F FC FF 2F 82 30 4D 0E 93 F4 23
+30 4D 2A 4F 8F 4E 00 00 0E 4A 30 4D 8F 4E FE FF
+3E 40 80 20 0E 8F 0E 11 2F 83 30 4D 2F 83 8F 4E
+00 00 3E 41 30 4D 3E 8F 3E E3 1E 53 30 4D BE 4F
+00 00 3E 4F 30 4D 1E 83 0E 7E 30 4D 0E 5E 0E 7E
+3E E3 30 4D 3E 8F 03 24 3E 43 01 2C 0E F3 30 4D
+00 00 02 3C 23 00 B2 40 B2 21 B2 21 30 4D 2A 82
+01 23 1B 42 DC 21 2C 4F 2F 83 B0 12 86 80 BF 4F
+00 00 7A 90 0A 00 02 28 7A 50 07 00 7A 50 30 00
+92 83 B2 21 18 42 B2 21 C8 4A 00 00 30 4D E0 82
+02 23 53 00 0D 12 87 12 E2 82 1C 83 2D 83 09 93
+E2 23 0E 93 E0 23 3D 41 30 4D 10 83 02 23 3E 00
+9F 42 B2 21 00 00 3E 40 B2 21 2E 8F 30 4D 00 00
+04 48 4F 4C 44 00 4A 4E 3E 4F DA 3F 00 00 04 53
+49 47 4E 00 0E 93 3E 4F 7A 40 2D 00 D1 33 30 4D
+FA 81 02 55 2E 00 08 43 2F 83 8F 4E 00 00 0E 48
+0D 12 0E 12 3E F3 06 34 BF E3 00 00 3E E3 9F 53
+00 00 0E 63 87 12 D6 82 14 83 9C 82 54 83 30 83
+00 82 70 86 C4 81 26 83 E4 81 01 2E 0E 93 E3 37
+38 43 E2 3F 4E 83 82 53 22 00 82 43 B4 21 0D 12
+87 12 24 80 2E 80 F8 85 24 80 22 00 F2 83 C0 83
+B2 40 20 00 B4 21 6E 4E 1E 53 1E B3 82 6E C6 21
+3D 41 3E 4F 30 4D 9A 83 82 2E 22 00 0D 12 87 12
+AA 83 24 80 00 82 F8 85 26 83 00 00 04 57 4F 52
+44 00 3C 40 C0 21 39 4C 3A 4C 09 5A 3A 5C 28 4C
+09 9A 15 24 7E 9A FC 27 1A 83 3B 40 60 00 C8 4C
+00 00 09 9A 0C 24 7C 4A 4E 9C 09 24 18 53 4B 9C
+F6 2F 7C 90 7B 00 F3 2F 5C 82 B4 21 F0 3F 1A 82
+C2 21 82 4A C4 21 1E 42 C6 21 08 8E CE 48 00 00
+30 4D 00 00 04 46 49 4E 44 00 2F 83 0C 4E 65 4C
+74 40 80 00 3B 40 CA 21 3E 4B 0E 93 1E 24 58 4C
+01 00 78 F0 1E 00 0E 58 2E 53 1E 4E FE FF 0E 93
+F3 27 09 4E 78 49 48 C4 48 95 F7 23 0A 4C FA 99
+01 00 F3 23 1A 53 58 83 FA 23 19 B3 09 63 0C 49
+6A 4E 1E 43 4A 93 01 30 2E 83 8F 4C 00 00 35 40
+FA 80 34 40 EC 80 30 4D 00 00 07 3E 4E 55 4D 42
+45 52 3C 4F 38 4F 29 4F 2F 82 1B 42 DC 21 6A 4C
+7A 80 30 00 7A 90 0A 00 05 28 7A 80 07 00 7A 90
+0A 00 12 28 0A 9B 22 C3 0F 2C 82 49 D0 04 82 48
+D2 04 82 4B C8 04 19 42 E4 04 18 42 E6 04 09 5A
+08 63 1C 53 1E 83 E3 23 8F 4C 00 00 8F 48 02 00
+8F 49 04 00 30 4D 32 C0 00 02 1B 42 DC 21 0C 43
+2D 15 3D 40 50 85 09 43 08 43 3F 82 8F 4E 06 00
+0C 4E 7E 4C 6A 4C 7A 90 2D 00 04 28 C9 23 B1 43
+02 00 0B 3C 2B 43 7A 80 25 00 07 24 3B 52 6A 53
+04 24 3B 40 10 00 5A 83 BA 23 1C 53 1E 83 EA 3F
+52 85 2F 24 2D 83 7A 90 28 00 CB 27 32 D0 00 02
+7A 90 F7 00 C6 27 7A 90 F5 00 23 20 0A 4E 09 43
+8F 49 02 00 5A 83 09 4A 09 5C 69 49 79 80 30 00
+79 90 0A 00 05 28 79 80 07 00 79 90 0A 00 0A 28
+09 9B 08 2C 8F 49 00 00 0E 4B 2C 15 B0 12 7E 80
+2A 17 E6 3F 9F 4F 04 00 02 00 AF 4F 04 00 0E 4A
+4E 93 2B 17 0E 4C 82 4B DC 21 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 00 00 01 2C 1A 42 C6 21 8A 4E 00 00
+A2 53 C6 21 3E 4F 30 4D 2C 81 05 41 4C 4C 4F 54
+82 5E C6 21 3E 4F 30 4D 0A 4E 3E 4F 00 4A F6 85
+87 4C 49 54 45 52 41 4C 82 93 BE 21 0C 24 1A 42
+C6 21 A2 52 C6 21 BA 40 24 80 00 00 8A 4E 02 00
+3E 4F 32 B0 00 02 32 C0 00 02 06 24 19 4A 02 00
+8A 4E 02 00 0E 49 EB 3F 30 4D 2C 83 05 43 4F 55
+4E 54 2F 83 1E 53 8F 4E 00 00 5E 4E FF FF 30 4D
+85 12 20 00 0D 12 87 12 C4 80 70 86 F2 83 80 86
+3D 40 88 86 E2 22 A4 26 8A 86 0A 4E 3E 4F 3D 40
+A0 86 39 27 3D 40 7A 86 1A E2 BE 21 BD 23 AC 27
+A2 86 3E 4F 3D 40 7A 86 BF 23 DE 53 00 00 68 4E
+08 5E F8 40 3F 00 00 00 3D 40 20 89 D2 3F D0 81
 08 45 56 41 4C 55 41 54 45 00 39 40 C0 21 3C 49
-3B 49 3A 49 3D 15 B0 12 2A 80 46 87 AE 87 B2 41
-C4 21 B2 41 C2 21 B2 41 C0 21 3D 41 30 4D 85 12
-BE 21 08 81 04 51 55 49 54 00 82 43 08 18 31 40
-E0 20 B2 40 00 20 00 20 82 43 BE 21 B0 12 2A 80
-04 84 8C 83 42 87 82 83 46 87 A4 80 0C 81 1E 84
-0C 73 74 61 63 6B 20 65 6D 70 74 79 21 00 40 88
-14 84 30 FF A0 86 26 81 1E 84 0A 46 52 41 4D 20
-66 75 6C 6C 21 00 40 88 3C 82 E0 87 C2 86 05 41
-42 4F 52 54 3F 40 80 20 D0 3F 1E 88 86 41 42 4F
-52 54 22 00 87 12 38 84 14 84 40 88 B0 86 2A 80
-8F 93 02 00 03 20 2F 52 3E 4F 30 4D B0 12 C8 8D
-B0 12 B6 82 92 C3 9C 05 38 40 A0 AA 39 42 03 43
-19 83 FD 23 18 83 FA 23 92 B3 9C 05 F3 23 87 12
-42 8D 14 84 DE 21 EA 80 AC 83 1E 84 04 1B 5B 37
-6D 00 D6 83 58 80 40 82 9A 88 04 84 1E 84 05 6C
-69 6E 65 3A D6 83 D0 80 24 82 D6 83 1E 84 04 1B
-5B 30 6D 00 D6 83 24 88 00 00 83 5B 27 5D 87 12
-C0 88 14 84 14 84 B0 86 B0 86 2A 80 E8 84 01 27
-87 12 42 87 80 84 EE 84 40 82 CE 88 2A 80 7A 87
-32 81 81 5C 92 42 C0 21 C4 21 30 4D AA 88 81 5B
-82 43 BE 21 30 4D D2 88 01 5D B2 43 BE 21 30 4D
-BE 4F 02 00 3E 4F 30 4D 9A 86 82 49 53 00 87 12
-BE 87 EA 80 40 82 12 89 AE 88 14 84 F0 88 B0 86
-2A 80 C0 88 F0 88 2A 80 FA 88 09 49 4D 4D 45 44
-49 41 54 45 1A 42 B6 21 FA D0 80 00 00 00 30 4D
-C4 87 88 50 4F 53 54 50 4F 4E 45 00 87 12 42 87
-80 84 EE 84 58 80 40 82 CE 88 0C 81 40 82 5C 89
-14 84 14 84 B0 86 B0 86 14 84 B0 86 B0 86 2A 80
-DE 88 81 3B 82 93 BE 21 B5 27 87 12 14 84 2A 80
-B0 86 FA 89 E0 88 2A 80 62 89 07 3A 4E 4F 4E 41
-4D 45 30 12 A0 89 2F 83 8F 4E 00 00 1E 42 C6 21
-1E B3 0E 63 0A 4E 39 40 00 02 38 40 02 02 21 3C
-BA 40 87 12 FC FF A2 83 C6 21 B2 43 BE 21 30 4D
-7A 89 01 3A 30 12 A0 89 92 B3 C6 21 A2 63 C6 21
-87 12 42 87 80 84 C8 89 3D 41 08 4E 7A 4E 5A D3
-5A 53 0A 58 19 42 DA 21 6E 4E 3E F0 1E 00 09 5E
-3E 4F 82 48 B6 21 82 49 B8 21 82 4A BA 21 82 4F
-BC 21 2A 52 82 4A C6 21 30 41 82 9F BC 21 09 20
-18 42 B6 21 19 42 B8 21 A8 49 FE FF 89 48 00 00
-30 4D 87 12 1E 84 0F 73 74 61 63 6B 20 6D 69 73
-6D 61 74 63 68 21 4C 88 90 87 05 44 45 46 45 52
-B0 12 B8 89 BA 40 30 40 FC FF BA 40 AE 89 FE FF
-E3 3F 1E 87 06 43 52 45 41 54 45 00 B0 12 B8 89
-BA 40 85 12 FC FF 8A 4A FE FF D6 3F 2A 8A 05 44
-4F 45 53 3E 1A 42 BA 21 BA 40 84 12 00 00 8A 4D
-02 00 3D 41 30 4D 4E 85 05 3E 42 4F 44 59 2E 52
-30 4D 44 8A 04 43 4F 44 45 00 B0 12 B8 89 A2 82
-C6 21 87 12 D2 8C AC 8C 2A 80 84 8A 07 43 4F 44
-45 4E 4E 4D B0 12 86 89 F2 3F 00 00 07 45 4E 44
-43 4F 44 45 87 12 E0 8C FA 89 2A 80 2C 88 03 41
-53 4D B2 40 B0 8C DA 21 E0 3F AC 8A 06 45 4E 44
-41 53 4D 00 87 12 B4 8A F4 8C 2A 80 00 00 05 43
-4F 4C 4F 4E 1A 42 C6 21 BA 40 87 12 00 00 A2 53
-C6 21 B2 43 BE 21 30 40 E0 8C 00 00 05 4C 4F 32
-48 49 1A 42 C6 21 BA 40 B0 12 00 00 BA 40 2A 80
-02 00 A2 52 C6 21 ED 3F 1A 89 85 48 49 32 4C 4F
-87 12 A0 86 4A 8B B0 86 E0 88 D2 8C AC 8C 2A 80
-1A 8B 82 49 46 00 2F 83 8F 4E 00 00 1E 42 C6 21
-A2 52 C6 21 BE 40 40 82 00 00 2E 53 30 4D 5E 8A
-84 45 4C 53 45 00 A2 52 C6 21 1A 42 C6 21 BA 40
-3C 82 FC FF 8E 4A 00 00 2A 83 0E 4A 30 4D D0 83
-84 54 48 45 4E 00 9E 42 C6 21 00 00 3E 4F 30 4D
-9C 8A 85 42 45 47 49 4E 30 40 A0 86 70 8B 85 55
-4E 54 49 4C 39 40 40 82 A2 52 C6 21 1A 42 C6 21
-8A 49 FC FF 8A 4E FE FF 3E 4F 30 4D BE 8A 85 41
-47 41 49 4E 39 40 3C 82 EF 3F 7A 84 85 57 48 49
-4C 45 87 12 36 8B 76 80 2A 80 34 84 86 52 45 50
-45 41 54 00 87 12 B4 8B 76 8B 2A 80 50 8B 82 44
-4F 00 2F 83 8F 4E 00 00 A2 53 C6 21 1E 42 C6 21
-BE 40 54 82 FE FF A2 53 00 20 1A 42 00 20 8A 43
-00 00 30 4D E2 86 84 4C 4F 4F 50 00 39 40 76 82
-A2 52 C6 21 1A 42 C6 21 8A 49 FC FF 8A 4E FE FF
-1E 42 00 20 A2 83 00 20 2E 4E 0E 93 03 24 8E 4A
-00 00 F6 3F 3E 4F 30 4D 90 82 85 2B 4C 4F 4F 50
-39 40 64 82 E5 3F 06 8C 04 4D 4F 56 45 00 0A 4E
-38 4F 39 4F 3E 4F 0A 93 11 24 08 99 0F 24 06 2C
-F8 49 00 00 18 53 1A 83 FB 23 30 4D 08 5A 09 5A
-19 83 18 83 E8 49 00 00 1A 83 FA 23 30 4D 14 84
-CA 21 F2 80 2A 80 84 12 7E 8C AE 8B 4E 8F DE 8B
-BE 88 32 8B 3A 8C 62 90 64 84 66 8D 80 8D 8E 8B
-00 8E 00 00 34 90 E8 88 78 8A 00 00 84 12 7E 8C
-80 95 E2 95 34 95 56 96 FA 94 00 00 2A 92 00 00
-F0 94 A0 95 52 95 90 95 3A 93 00 00 00 00 32 96
-AA 8C 3A 40 0C 00 39 40 CA 21 38 40 CC 21 C6 3F
-3A 40 0E 00 39 40 CC 21 38 40 CA 21 B9 3F 82 43
-CC 21 30 4D 92 42 CA 21 DA 21 30 4D 86 8C EE 8C
-F4 8C 04 8D 3A 4E 82 4A C8 21 2E 4E 82 4E C6 21
-3D 40 10 00 09 4A 08 49 29 83 18 48 FE FF 0E 98
-FC 2B 89 48 00 00 1D 83 F6 23 2A 4A 0A 93 F0 23
-3E 4F 3D 41 30 4D 32 89 09 50 57 52 5F 53 54 41
-54 45 84 12 FC 8C D0 8C 68 96 CC 8B 09 52 53 54
-5F 53 54 41 54 45 92 42 0E 18 46 8D 92 42 0C 18
-48 8D EF 3F 38 8D 08 50 57 52 5F 48 45 52 45 00
-92 42 C8 21 46 8D 92 42 C6 21 48 8D 30 4D 4C 8D
-08 52 53 54 5F 48 45 52 45 00 92 42 C8 21 0E 18
-92 42 C6 21 0C 18 EC 3F BC 8B 04 57 49 50 45 00
-39 40 10 00 29 83 B9 43 80 FF FC 23 B2 40 E0 82
-DE 82 B2 40 0A 8E 08 8E B2 40 D0 8C 0E 18 B2 40
-68 96 0C 18 30 12 56 8D B2 40 86 83 84 83 B2 40
-08 84 06 84 B2 40 98 82 96 82 B2 40 18 00 0A 18
-37 40 1A 80 36 40 92 80 35 40 0E 80 34 40 00 80
-B2 40 0A 00 DC 21 B2 40 20 00 B4 21 30 41 9A 8D
-04 57 41 52 4D 00 30 40 0A 8E 3D 40 3E 8E 92 C3
-30 01 1E 42 08 18 0E 93 11 24 F2 B2 21 02 02 20
-3E E3 1E 53 F2 D0 0C 00 2B 02 3E 90 0A 00 B8 27
-3E 90 16 00 B5 2F 2E 93 84 27 8D 2F 30 4D 1E 84
-06 0D 1B 5B 37 6D 23 00 D6 83 34 82 1E 84 19 46
-61 73 74 46 6F 72 74 68 20 C2 A9 4A 2E 4D 2E 54
-68 6F 6F 72 65 6E 73 20 D6 83 14 84 30 FF A0 86
-B8 80 24 82 1E 84 0A 62 79 74 65 73 20 66 72 65
-65 00 3C 82 9A 88 82 8B 04 43 4F 4C 44 00 92 B3
-8A 05 FD 23 B2 40 04 A5 20 01 3E 8E B2 40 88 5A
-CC 01 B2 43 06 02 B2 40 FE FF 02 02 D2 D3 05 02
-F2 D3 26 02 F2 43 22 02 F2 D3 47 02 F2 40 BF 00
-43 02 F2 40 A5 00 A1 01 F2 40 10 00 A0 01 D2 43
-A1 01 B2 40 00 A5 60 01 82 43 88 01 B2 40 FF 1E
-80 01 B2 40 BA 00 82 01 B2 40 E8 01 84 01 39 40
-00 01 92 D2 5E 01 08 18 38 40 59 14 18 83 FE 23
-19 83 FA 23 39 40 00 10 29 83 89 43 00 20 FC 23
-39 40 32 00 29 83 B9 40 9C 8E CE FF FB 23 B2 40
-26 83 E2 FF B2 40 81 00 80 05 92 42 02 18 86 05
-92 42 04 18 88 05 92 C3 80 05 92 D3 9A 05 3F 40
-80 20 31 40 E0 20 30 12 06 8E 47 3F 88 8E 07 43
-4F 4D 50 41 52 45 0C 4E 38 4F 3B 4F 39 4F 0E 4B
-0E 5C 0C 24 1B 83 07 30 1C 83 07 30 19 53 F9 98
-FF FF F5 27 02 2C 3E 43 30 4D 1E 43 30 4D B2 89
-86 5B 54 48 45 4E 5D 00 30 4D 80 8F 86 5B 45 4C
-53 45 5D 00 87 12 14 84 00 00 C6 80 42 87 80 84
-24 87 34 80 40 82 F6 8F 44 80 1E 84 06 5B 54 48
-45 4E 5D 00 56 8F 4A 82 C6 8F F8 83 D0 80 58 80
-4A 82 9C 8F 2A 80 44 80 1E 84 06 5B 45 4C 53 45
-5D 00 56 8F 4A 82 E4 8F F8 83 D0 80 58 80 4A 82
-9A 8F 2A 80 1E 84 04 5B 49 46 5D 00 56 8F 4A 82
-9C 8F 3C 82 9A 8F F8 83 1E 84 05 0D 0A 6B 6F 20
-D6 83 8C 83 32 87 3C 82 9C 8F 8C 8F 84 5B 49 46
-5D 00 0E 93 3E 4F BE 27 30 4D 0C 90 89 5B 44 45
-46 49 4E 45 44 5D 87 12 42 87 80 84 EE 84 6A 80
-2A 80 1C 90 8B 5B 55 4E 44 45 46 49 4E 45 44 5D
-87 12 42 87 80 84 EE 84 6A 80 00 81 2A 80 50 90
-3D 41 B2 4E 0E 18 A2 4E 0C 18 3E 4F 30 40 56 8D
-48 8C 06 4D 41 52 4B 45 52 00 B0 12 B8 89 BA 40
-84 12 FC FF BA 40 4E 90 FE FF 9A 42 C8 21 00 00
-28 83 8A 48 02 00 A2 52 C6 21 30 40 00 8A 1C 15
-B0 12 2A 80 80 84 EE 84 4A 82 A4 90 AA 85 40 82
-CE 88 BE 90 A6 90 39 4E 39 80 86 12 08 24 19 53
-02 20 2E 4E 04 3C 2E 53 19 53 01 24 2E 82 1B 17
-30 41 3E 40 28 00 B0 12 8E 90 19 42 C6 21 A2 53
-C6 21 89 4E 00 00 3E 40 29 00 1C 15 12 12 C4 21
-92 53 C4 21 B0 12 2A 80 80 84 AA 85 40 82 FC 90
-F2 90 21 53 3E 90 10 00 7D 2D E1 2B FE 90 B2 41
-C4 21 DD 3F 87 12 42 87 74 84 0C 91 0C 43 1B 42
-C6 21 A2 53 C6 21 6A 4E 3E 4F 7A 90 23 00 27 20
-92 53 C4 21 B0 12 8E 90 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 C6 21
-A2 53 C6 21 89 4E 00 00 3E 4F 3D 41 30 4D 7A 90
-26 00 07 20 3C 40 10 02 92 53 C4 21 B0 12 8E 90
-ED 3F 7A 90 40 00 16 20 3C 40 20 00 92 53 C4 21
-B0 12 DA 90 0C 20 3C 50 10 00 3E 40 2B 00 B0 12
-DA 90 92 92 C0 21 C4 21 02 24 92 53 C4 21 8E 10
-0C 5E DA 3F B0 12 DA 90 FA 23 3C 50 10 00 B0 12
-C2 90 EF 3F 0C 43 1B 42 C6 21 A2 53 C6 21 87 12
-42 87 74 84 D6 91 FE 90 26 00 00 00 3E 40 20 00
-03 20 3C 50 82 00 C8 3F B0 12 DA 90 E1 23 3C 50
-80 00 B0 12 C2 90 DC 3F D6 82 04 52 45 54 49 00
-87 12 14 84 00 13 B0 86 2A 80 14 84 2C 00 04 91
-CE 91 14 92 09 4B 2E 4E 0E DC A4 3F FC 8A 03 4D
-4F 56 84 12 0A 92 00 40 1E 92 05 4D 4F 56 2E 42
-84 12 0A 92 40 40 00 00 03 41 44 44 84 12 0A 92
-00 50 38 92 05 41 44 44 2E 42 84 12 0A 92 40 50
-44 92 04 41 44 44 43 00 84 12 0A 92 00 60 52 92
-06 41 44 44 43 2E 42 00 84 12 0A 92 40 60 FA 91
-04 53 55 42 43 00 84 12 0A 92 00 70 70 92 06 53
-55 42 43 2E 42 00 84 12 0A 92 40 70 7E 92 03 53
-55 42 84 12 0A 92 00 80 8E 92 05 53 55 42 2E 42
-84 12 0A 92 40 80 DE 8A 03 43 4D 50 84 12 0A 92
-00 90 A8 92 05 43 4D 50 2E 42 84 12 0A 92 40 90
-CC 8A 04 44 41 44 44 00 84 12 0A 92 00 A0 C2 92
-06 44 41 44 44 2E 42 00 84 12 0A 92 40 A0 B4 92
-03 42 49 54 84 12 0A 92 00 B0 E0 92 05 42 49 54
-2E 42 84 12 0A 92 40 B0 EC 92 03 42 49 43 84 12
-0A 92 00 C0 FA 92 05 42 49 43 2E 42 84 12 0A 92
-40 C0 06 93 03 42 49 53 84 12 0A 92 00 D0 14 93
-05 42 49 53 2E 42 84 12 0A 92 40 D0 00 00 03 58
-4F 52 84 12 0A 92 00 E0 2E 93 05 58 4F 52 2E 42
-84 12 0A 92 40 E0 60 92 03 41 4E 44 84 12 0A 92
-00 F0 48 93 05 41 4E 44 2E 42 84 12 0A 92 40 F0
-42 87 04 91 66 93 0A 4C 3C F0 70 00 8A 10 3A F0
-0F 00 0C DA 4F 3F 9A 92 03 52 52 43 84 12 60 93
-00 10 78 93 05 52 52 43 2E 42 84 12 60 93 40 10
-84 93 04 53 57 50 42 00 84 12 60 93 80 10 92 93
-03 52 52 41 84 12 60 93 00 11 A0 93 05 52 52 41
-2E 42 84 12 60 93 40 11 AC 93 03 53 58 54 84 12
-60 93 80 11 00 00 04 50 55 53 48 00 84 12 60 93
-00 12 C6 93 06 50 55 53 48 2E 42 00 84 12 60 93
-40 12 20 93 04 43 41 4C 4C 00 84 12 60 93 80 12
-1A 53 0E 4A 87 12 34 82 1E 84 0D 6F 75 74 20 6F
-66 20 62 6F 75 6E 64 73 4C 88 42 87 74 84 10 94
-92 53 C4 21 3E 40 2C 00 B0 12 2A 80 80 84 AA 85
-40 82 CE 88 C4 91 28 94 0A 4E 3E 4F 1A 83 E0 33
-29 4E 59 0E 0A 28 08 4C 59 0A 01 28 0C 8A 08 8A
-38 90 10 00 D5 2F 5A 0E 94 3F 2A 92 D1 2F 8A 10
-5A 06 8F 3F BA 93 04 52 52 43 4D 00 84 12 0A 94
-50 00 56 94 04 52 52 41 4D 00 84 12 0A 94 50 01
-64 94 04 52 4C 41 4D 00 84 12 0A 94 50 02 72 94
-04 52 52 55 4D 00 84 12 0A 94 50 03 D4 93 05 50
-55 53 48 4D 84 12 0A 94 00 15 8E 94 04 50 4F 50
-4D 00 84 12 0A 94 00 17 80 94 03 53 3E 3D 85 12
-00 38 AA 94 02 53 3C 00 85 12 00 34 9C 94 03 30
-3E 3D 85 12 00 30 BE 94 02 30 3C 00 85 12 00 30
-00 00 02 55 3C 00 85 12 00 2C D2 94 03 55 3E 3D
-85 12 00 28 C8 94 03 30 3C 3E 85 12 00 24 E6 94
-02 30 3D 00 85 12 00 20 00 00 02 49 46 00 1A 42
-C6 21 8A 4E 00 00 A2 53 C6 21 0E 4A 30 4D DC 94
-04 54 48 45 4E 00 1A 42 C6 21 08 4E 3E 4F 09 48
-29 53 0A 89 0A 11 3A 90 00 02 63 2F 88 DA 00 00
-30 4D D0 92 04 45 4C 53 45 00 1A 42 C6 21 BA 40
-00 3C 00 00 A2 53 C6 21 2F 83 8F 4A 00 00 E3 3F
-10 95 05 55 4E 54 49 4C 3A 4F 08 4E 3E 4F 19 42
-C6 21 2A 83 0A 89 0A 11 3A 90 00 FE 42 3B 3A F0
-FF 03 08 DA 89 48 00 00 A2 53 C6 21 30 4D 54 93
-05 41 47 41 49 4E 0A 4E 38 40 00 3C E7 3F 00 00
-05 57 48 49 4C 45 87 12 FE 94 76 80 2A 80 B4 94
-06 52 45 50 45 41 54 00 87 12 86 95 16 95 2A 80
-B2 95 3D 41 08 4E 3E 4F 2A 48 B2 92 C4 21 CD 2F
-98 42 C6 21 00 00 30 4D E4 93 03 42 57 31 84 12
-B0 95 00 00 CA 95 03 42 57 32 84 12 B0 95 00 00
-D6 95 03 42 57 33 84 12 B0 95 00 00 EE 95 3D 41
-1A 42 C6 21 28 4E B2 92 C4 21 90 2B BA 4F 00 00
-A2 53 C6 21 8E 4A 00 00 3E 4F 30 4D 00 00 03 46
-57 31 84 12 EC 95 00 00 0E 96 03 46 57 32 84 12
-EC 95 00 00 1A 96 03 46 57 33 84 12 EC 95 00 00
-00 00 05 3F 47 4F 54 4F 3E 90 00 30 07 24 3E E0
-00 04 3E B0 00 10 02 24 3E E0 00 08 87 12 C0 88
-DA 86 2A 80 26 96 04 47 4F 54 4F 00 2F 83 8F 4E
-00 00 3E 40 00 3C F2 3F
+3B 49 3A 49 3D 15 87 12 74 86 DC 86 B2 41 C4 21
+B2 41 C2 21 B2 41 C0 21 3D 41 30 4D 85 12 BE 21
+00 00 04 51 55 49 54 00 82 43 08 18 31 40 E0 20
+B2 40 00 20 00 20 82 43 BE 21 87 12 2E 82 D4 80
+70 86 C4 81 74 86 8C 82 BC 82 2E 80 0C 73 74 61
+63 6B 20 65 6D 70 74 79 21 00 6E 87 24 80 40 FF
+2A 8A C4 82 2E 80 0A 46 52 41 4D 20 66 75 6C 6C
+21 00 6E 87 48 80 0C 87 0A 86 05 41 42 4F 52 54
+3F 40 80 20 D1 3F 4A 87 86 41 42 4F 52 54 22 00
+0D 12 87 12 AA 83 24 80 6E 87 F8 85 26 83 8F 93
+02 00 03 20 2F 52 3E 4F 30 4D B0 12 96 8B B0 12
+06 81 92 C3 9C 05 18 42 06 18 39 40 20 00 19 83
+FE 23 18 83 FA 23 92 B3 9C 05 F3 23 0D 12 87 12
+10 8B 24 80 DE 21 02 81 D6 81 2E 80 04 1B 5B 37
+6D 00 00 82 7C 82 4C 80 C8 87 2E 82 2E 80 05 6C
+69 6E 65 3A 00 82 66 83 00 82 2E 80 04 1B 5B 30
+6D 00 00 82 50 87 00 00 83 5B 27 5D 0D 12 87 12
+F0 87 24 80 24 80 F8 85 F8 85 26 83 44 84 01 27
+0D 12 87 12 70 86 F2 83 4A 84 4C 80 00 88 26 83
+AA 86 D2 82 81 5C 92 42 C0 21 C4 21 30 4D D8 87
+81 5B 82 43 BE 21 30 4D 04 88 01 5D B2 43 BE 21
+30 4D F2 86 88 50 4F 53 54 50 4F 4E 45 00 0D 12
+87 12 70 86 F2 83 4A 84 7C 82 4C 80 00 88 BC 82
+4C 80 50 88 24 80 24 80 F8 85 F8 85 24 80 F8 85
+F8 85 26 83 40 83 09 49 4D 4D 45 44 49 41 54 45
+1A 42 B6 21 FA D0 80 00 00 00 30 4D 10 88 01 3A
+30 12 B8 88 92 B3 C6 21 A2 63 C6 21 0D 12 87 12
+70 86 F2 83 86 88 3D 41 08 4E 7A 4E 5A D3 5A 53
+0A 58 19 42 DA 21 6E 4E 3E F0 1E 00 09 5E 3E 4F
+82 48 B6 21 82 49 B8 21 82 4A BA 21 82 4F BC 21
+2A 52 82 4A C6 21 30 41 BA 40 0D 12 FC FF BA 40
+87 12 FE FF B2 43 BE 21 30 4D 6E 88 07 3A 4E 4F
+4E 41 4D 45 30 12 B8 88 2F 83 8F 4E 00 00 1E 42
+C6 21 1E B3 0E 63 0A 4E 39 40 10 02 38 40 12 02
+D7 3F 82 9F BC 21 09 20 18 42 B6 21 19 42 B8 21
+A8 49 FE FF 89 48 00 00 30 4D 0D 12 87 12 2E 80
+0F 73 74 61 63 6B 20 6D 69 73 6D 61 74 63 68 21
+7A 87 CC 88 81 3B 82 93 BE 21 6D 27 0D 12 87 12
+24 80 26 83 F8 85 F2 88 12 88 26 83 5C 86 06 43
+52 45 41 54 45 00 B0 12 74 88 BA 40 85 12 FC FF
+8A 4A FE FF D5 3F C0 86 05 44 4F 45 53 3E 1A 42
+BA 21 BA 40 84 12 00 00 8A 4D 02 00 3D 41 30 4D
+3E 89 04 43 4F 44 45 00 B0 12 74 88 A2 82 C6 21
+0D 12 87 12 8A 8A 64 8A 26 83 72 89 07 43 4F 44
+45 4E 4E 4D 30 12 7C 89 9F 3F 00 00 07 45 4E 44
+43 4F 44 45 0D 12 87 12 F2 88 A4 8A 26 83 58 87
+03 41 53 4D B2 40 68 8A DA 21 DE 3F 9C 89 06 45
+4E 44 41 53 4D 00 0D 12 87 12 A4 89 C2 8A 26 83
+00 00 05 43 4F 4C 4F 4E 1A 42 C6 21 BA 40 0D 12
+00 00 BA 40 87 12 02 00 A2 52 C6 21 B2 43 BE 21
+30 40 A4 8A 00 00 05 4C 4F 32 48 49 A2 83 C6 21
+1A 42 C6 21 EE 3F 56 88 85 48 49 32 4C 4F 0D 12
+87 12 2A 8A 1E 8A F8 85 12 88 80 89 26 83 2E 53
+30 4D 8C 89 85 42 45 47 49 4E 2F 83 8F 4E 00 00
+1E 42 C6 21 30 4D 24 80 CA 21 AE 82 26 83 84 12
+36 8A B0 89 5A 8C 58 89 EE 87 08 8A 42 82 20 86
+D8 83 34 8B 4E 8B 62 83 CE 8B 00 00 EC 8D 1A 88
+AA 84 00 00 84 12 36 8A 1E 93 84 93 D2 92 D4 93
+98 92 00 00 C8 8F 00 00 8E 92 40 93 F0 92 2E 93
+D8 90 00 00 00 00 F0 93 62 8A 3A 40 0C 00 39 40
+D6 21 08 49 28 53 19 83 18 83 E8 49 00 00 1A 83
+FA 23 30 4D 3A 40 0E 00 38 40 CA 21 09 48 29 53
+F8 49 00 00 18 53 1A 83 FB 23 30 4D 82 43 CC 21
+30 4D 92 42 CA 21 DA 21 30 4D 3E 8A BC 8A C2 8A
+D2 8A 3A 4E 82 4A C8 21 2E 4E 82 4E C6 21 3D 40
+10 00 09 4A 08 49 29 83 18 48 FE FF 0E 98 FC 2B
+89 48 00 00 1D 83 F6 23 2A 4A 0A 93 F0 23 3E 4F
+3D 41 30 4D 24 88 09 50 57 52 5F 53 54 41 54 45
+84 12 CA 8A 88 8A 0C 94 A6 83 09 52 53 54 5F 53
+54 41 54 45 92 42 0E 18 14 8B 92 42 0C 18 16 8B
+EF 3F 06 8B 08 50 57 52 5F 48 45 52 45 00 92 42
+C8 21 14 8B 92 42 C6 21 16 8B 30 4D 1A 8B 08 52
+53 54 5F 48 45 52 45 00 92 42 C8 21 0E 18 92 42
+C6 21 0C 18 EC 3F EC 83 04 57 49 50 45 00 39 40
+10 00 29 83 B9 43 80 FF FC 23 B2 40 04 80 02 80
+B2 40 D8 8B D6 8B B2 40 88 8A 0E 18 B2 40 0C 94
+0C 18 30 12 24 8B B2 40 C8 81 C6 81 B2 40 32 82
+30 82 B2 40 4A 82 48 82 B2 40 18 00 0A 18 37 40
+26 83 36 40 9C 82 35 40 FA 80 34 40 EC 80 B2 40
+0A 00 DC 21 B2 40 20 00 B4 21 30 41 68 8B 04 57
+41 52 4D 00 30 40 D8 8B 3D 40 10 8C 92 C3 30 01
+1E 42 08 18 0E 93 13 24 F2 B2 21 02 02 20 3E E3
+1E 53 F2 D0 0C 00 2B 02 92 D3 9A 05 3E 90 0A 00
+B6 27 3E 90 16 00 B3 2F 2E 93 82 27 8B 2F 30 4D
+2E 80 07 0D 0A 1B 5B 37 6D 23 00 82 9C 83 2E 80
+19 46 61 73 74 46 6F 72 74 68 20 C2 A9 4A 2E 4D
+2E 54 68 6F 6F 72 65 6E 73 20 00 82 24 80 40 FF
+2A 8A A6 82 66 83 2E 80 0A 62 79 74 65 73 20 66
+72 65 65 00 48 80 C8 87 24 8A 04 43 4F 4C 44 00
+92 B3 8A 05 FD 23 B2 40 04 A5 20 01 31 40 E0 20
+B2 40 88 5A CC 01 B2 43 06 02 B2 40 FE FF 02 02
+D2 D3 05 02 F2 D3 26 02 F2 43 22 02 F2 D3 47 02
+F2 40 BF 00 43 02 F2 40 A5 00 A1 01 F2 40 10 00
+A0 01 D2 43 A1 01 B2 40 00 A5 60 01 82 43 88 01
+F2 D0 C0 00 0D 02 B2 40 FF 1E 80 01 B2 40 BA 00
+82 01 B2 40 E8 01 84 01 39 40 00 01 92 D2 5E 01
+08 18 38 40 59 14 18 83 FE 23 19 83 FA 23 39 40
+00 10 29 83 89 43 00 20 FC 23 B0 12 0E 80 B2 40
+81 00 80 05 92 42 02 18 86 05 92 42 04 18 88 05
+92 C3 80 05 3F 40 80 20 30 12 D4 8B 4D 3F 24 89
+86 5B 54 48 45 4E 5D 00 30 4D 0C 4E 38 4F 3B 4F
+39 4F 0E 4B 0E 5C 10 24 1B 83 06 30 1C 83 04 30
+19 53 F9 98 FF FF F5 27 2D 4D 3E 4F 30 4D 2F 53
+9F 83 00 00 F9 23 2F 53 2D 53 F7 3F 10 8D 86 5B
+45 4C 53 45 5D 00 0D 12 87 12 24 80 00 00 AA 82
+70 86 F2 83 62 86 68 82 4C 80 A8 8D 70 82 2E 80
+06 5B 54 48 45 4E 5D 00 1A 8D 82 8D 3E 8D 60 8D
+26 83 70 82 2E 80 06 5B 45 4C 53 45 5D 00 1A 8D
+98 8D 3E 8D 5E 8D 26 83 2E 80 04 5B 49 46 5D 00
+1A 8D 60 8D 48 80 5E 8D 22 82 2E 80 05 0D 0A 6B
+6F 20 00 82 D4 80 C4 80 48 80 60 8D 4E 8D 84 5B
+49 46 5D 00 0E 93 3E 4F C6 27 30 4D 2F 53 30 4D
+BE 8D 89 5B 44 45 46 49 4E 45 44 5D 0D 12 87 12
+70 86 F2 83 4A 84 CC 8D 26 83 D2 8D 8B 5B 55 4E
+44 45 46 49 4E 45 44 5D 0D 12 87 12 DC 8D 00 8E
+3D 41 30 40 B6 82 38 40 C0 21 0A 4E 39 48 2E 48
+09 5E 1E 52 C4 21 09 9E 03 24 7A 9E FC 27 1E 83
+0A 4E 2A 88 82 4A C4 21 30 4D 1C 15 87 12 F2 83
+4A 84 42 80 3E 8E 06 85 4C 80 00 88 58 8E 40 8E
+39 4E 39 80 86 12 08 24 19 53 02 20 2E 4E 04 3C
+2E 53 19 53 01 24 2E 82 1B 17 30 41 3E 40 28 00
+B0 12 2A 8E 19 42 C6 21 A2 53 C6 21 89 4E 00 00
+3E 40 29 00 1C 15 12 12 C4 21 92 53 C4 21 87 12
+F2 83 06 85 4C 80 94 8E 8A 8E 21 53 3E 90 10 00
+80 2D E2 2B 96 8E B2 41 C4 21 DE 3F 0D 12 87 12
+70 86 06 8E A6 8E 0C 43 1B 42 C6 21 A2 53 C6 21
+6A 4E 3E 4F 7A 90 23 00 27 20 92 53 C4 21 B0 12
+2A 8E 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 C6 21 A2 53 C6 21 89 4E
+00 00 3E 4F 3D 41 30 4D 7A 90 26 00 07 20 3C 40
+10 02 92 53 C4 21 B0 12 2A 8E ED 3F 7A 90 40 00
+16 20 3C 40 20 00 92 53 C4 21 B0 12 74 8E 0C 20
+3C 50 10 00 3E 40 2B 00 B0 12 74 8E 92 92 C0 21
+C4 21 02 24 92 53 C4 21 8E 10 0C 5E DA 3F B0 12
+74 8E FA 23 3C 50 10 00 B0 12 5C 8E EF 3F 0C 43
+1B 42 C6 21 A2 53 C6 21 0D 12 87 12 70 86 06 8E
+72 8F FE 90 26 00 00 00 3E 40 20 00 03 20 3C 50
+82 00 C7 3F B0 12 74 8E E0 23 3C 50 80 00 B0 12
+5C 8E DB 3F 00 00 04 52 45 54 49 00 0D 12 87 12
+24 80 00 13 F8 85 26 83 24 80 2C 00 9C 8E 68 8F
+B2 8F 09 4B 2E 4E 0E DC A2 3F F6 89 03 4D 4F 56
+84 12 A8 8F 00 40 BC 8F 05 4D 4F 56 2E 42 84 12
+A8 8F 40 40 00 00 03 41 44 44 84 12 A8 8F 00 50
+D6 8F 05 41 44 44 2E 42 84 12 A8 8F 40 50 E2 8F
+04 41 44 44 43 00 84 12 A8 8F 00 60 F0 8F 06 41
+44 44 43 2E 42 00 84 12 A8 8F 40 60 96 8F 04 53
+55 42 43 00 84 12 A8 8F 00 70 0E 90 06 53 55 42
+43 2E 42 00 84 12 A8 8F 40 70 1C 90 03 53 55 42
+84 12 A8 8F 00 80 2C 90 05 53 55 42 2E 42 84 12
+A8 8F 40 80 D2 89 03 43 4D 50 84 12 A8 8F 00 90
+46 90 05 43 4D 50 2E 42 84 12 A8 8F 40 90 BE 89
+04 44 41 44 44 00 84 12 A8 8F 00 A0 60 90 06 44
+41 44 44 2E 42 00 84 12 A8 8F 40 A0 52 90 03 42
+49 54 84 12 A8 8F 00 B0 7E 90 05 42 49 54 2E 42
+84 12 A8 8F 40 B0 8A 90 03 42 49 43 84 12 A8 8F
+00 C0 98 90 05 42 49 43 2E 42 84 12 A8 8F 40 C0
+A4 90 03 42 49 53 84 12 A8 8F 00 D0 B2 90 05 42
+49 53 2E 42 84 12 A8 8F 40 D0 00 00 03 58 4F 52
+84 12 A8 8F 00 E0 CC 90 05 58 4F 52 2E 42 84 12
+A8 8F 40 E0 FE 8F 03 41 4E 44 84 12 A8 8F 00 F0
+E6 90 05 41 4E 44 2E 42 84 12 A8 8F 40 F0 70 86
+9C 8E 04 91 0A 4C 3C F0 70 00 8A 10 3A F0 0F 00
+0C DA 4F 3F 38 90 03 52 52 43 84 12 FE 90 00 10
+16 91 05 52 52 43 2E 42 84 12 FE 90 40 10 22 91
+04 53 57 50 42 00 84 12 FE 90 80 10 30 91 03 52
+52 41 84 12 FE 90 00 11 3E 91 05 52 52 41 2E 42
+84 12 FE 90 40 11 4A 91 03 53 58 54 84 12 FE 90
+80 11 00 00 04 50 55 53 48 00 84 12 FE 90 00 12
+64 91 06 50 55 53 48 2E 42 00 84 12 FE 90 40 12
+BE 90 04 43 41 4C 4C 00 84 12 FE 90 80 12 1A 53
+0E 4A 0D 12 87 12 9C 83 2E 80 0D 6F 75 74 20 6F
+66 20 62 6F 75 6E 64 73 7A 87 70 86 06 8E B0 91
+92 53 C4 21 3E 40 2C 00 87 12 F2 83 06 85 4C 80
+00 88 5E 8F C6 91 0A 4E 3E 4F 1A 83 E0 33 29 4E
+59 0E 0A 28 08 4C 59 0A 01 28 0C 8A 08 8A 38 90
+10 00 D5 2F 5A 0E 94 3F 2A 92 D1 2F 8A 10 5A 06
+8F 3F 58 91 04 52 52 43 4D 00 84 12 AA 91 50 00
+F4 91 04 52 52 41 4D 00 84 12 AA 91 50 01 02 92
+04 52 4C 41 4D 00 84 12 AA 91 50 02 10 92 04 52
+52 55 4D 00 84 12 AA 91 50 03 72 91 05 50 55 53
+48 4D 84 12 AA 91 00 15 2C 92 04 50 4F 50 4D 00
+84 12 AA 91 00 17 1E 92 03 53 3E 3D 85 12 00 38
+48 92 02 53 3C 00 85 12 00 34 3A 92 03 30 3E 3D
+85 12 00 30 5C 92 02 30 3C 00 85 12 00 30 00 00
+02 55 3C 00 85 12 00 2C 70 92 03 55 3E 3D 85 12
+00 28 66 92 03 30 3C 3E 85 12 00 24 84 92 02 30
+3D 00 85 12 00 20 00 00 02 49 46 00 1A 42 C6 21
+8A 4E 00 00 A2 53 C6 21 0E 4A 30 4D 7A 92 04 54
+48 45 4E 00 1A 42 C6 21 08 4E 3E 4F 09 48 29 53
+0A 89 0A 11 3A 90 00 02 63 2F 88 DA 00 00 30 4D
+6E 90 04 45 4C 53 45 00 1A 42 C6 21 BA 40 00 3C
+00 00 A2 53 C6 21 2F 83 8F 4A 00 00 E3 3F AE 92
+05 55 4E 54 49 4C 3A 4F 08 4E 3E 4F 19 42 C6 21
+2A 83 0A 89 0A 11 3A 90 00 FE 42 3B 3A F0 FF 03
+08 DA 89 48 00 00 A2 53 C6 21 30 4D F2 90 05 41
+47 41 49 4E 0A 4E 38 40 00 3C E7 3F 00 00 05 57
+48 49 4C 45 0D 12 87 12 9C 92 82 82 26 83 52 92
+06 52 45 50 45 41 54 00 0D 12 87 12 24 93 B4 92
+26 83 54 93 3D 41 08 4E 3E 4F 2A 48 B2 92 C4 21
+CB 2F 98 42 C6 21 00 00 30 4D 82 91 03 42 57 31
+84 12 52 93 00 00 6C 93 03 42 57 32 84 12 52 93
+00 00 78 93 03 42 57 33 84 12 52 93 00 00 90 93
+3D 41 1A 42 C6 21 28 4E B2 92 C4 21 8E 2B BA 4F
+00 00 A2 53 C6 21 8E 4A 00 00 3E 4F 30 4D 00 00
+03 46 57 31 84 12 8E 93 00 00 B0 93 03 46 57 32
+84 12 8E 93 00 00 BC 93 03 46 57 33 84 12 8E 93
+00 00 C8 93 04 47 4F 54 4F 00 2F 83 8F 4E 00 00
+3E 40 00 3C 0D 12 87 12 F0 87 18 86 26 83 00 00
+05 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
 @FFFE
-9C 8E
+6C 8C
 q
index ae0f10f..3ee796e 100644 (file)
 @1800
-10 00 08 00 00 D6 E8 03 05 00 18 00 58 96 D0 8C
-2D 01 6B B0 B6 82 C8 82
+10 00 08 00 00 D6 E8 03 05 00 18 00 FC 93 88 8A
+2E 01 6B B0 06 81 18 81 D4 8B
 @8000
-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 3A 41 0D 12 0D 4A
-30 4D 00 00 04 45 58 49 54 00 3D 41 30 4D 24 80
-03 44 55 50 2F 83 8F 4E 00 00 30 4D 00 00 04 32
-44 55 50 00 8F 4E FE FF AF 4F FC FF 2F 82 30 4D
-00 00 04 3F 44 55 50 00 0E 93 EC 23 30 4D 30 80
-04 44 52 4F 50 00 3E 4F 30 4D 2F 53 30 4D 3E 80
-04 53 57 41 50 00 2A 4F 8F 4E 00 00 0E 4A 30 4D
-52 80 02 3E 52 00 0E 12 3E 4F 30 4D 70 80 02 52
-3E 00 2F 83 8F 4E 00 00 3E 41 30 4D 60 80 05 44
-45 50 54 48 8F 4E FE FF 3E 40 80 20 0E 8F 0E 11
-2F 83 30 4D 00 00 01 2D 3E 8F 3E E3 1E 53 30 4D
-00 00 02 31 2B 00 1E 53 30 4D C2 80 02 31 2D 00
-1E 83 30 4D 3E F3 06 34 BF E3 00 00 3E E3 9F 53
-00 00 0E 63 30 4D 00 00 01 40 2E 4E 30 4D E8 80
-01 21 BE 4F 00 00 3E 4F 30 4D CC 80 02 30 3D 00
-1E 83 0E 7E 30 4D FC 80 02 30 3C 00 0E 5E 0E 7E
-3E E3 30 4D 00 00 01 3D 3E 8F FA 27 0E F3 30 4D
-00 00 02 55 3C 00 3E 8F F9 2B 01 24 3E 43 30 4D
-16 81 02 3C 23 00 B2 40 B2 21 B2 21 30 4D 0B 4E
+30 40 04 80 B0 12 06 81 12 D2 0A 18 F9 3F 39 40
+32 00 29 83 B9 40 6C 8C CE FF FB 23 B2 40 68 81
+E2 FF 30 41 2F 83 8F 4E 00 00 3E 4D 30 4D 2F 82
+8F 4E 02 00 7E 4D 8F 4D 00 00 0D 5E 1D B3 0D 63
+30 4D 0E 93 3E 4F 05 24 2D 4D 30 4D 0E 93 3E 4F
+FB 27 2D 53 30 4D 39 40 00 80 39 8F 08 4E 3E 4F
+08 59 19 15 30 4D 81 5E 00 00 3E 4F 32 B0 00 01
+EB 27 21 52 2D 53 30 4D 91 53 00 00 F7 3F 0B 4E
 1C 4F 02 00 2E 4F 0A 43 34 40 20 00 0E 93 04 20
 04 11 0E 4C 0C 43 09 43 0A 9B 01 28 0A 8B 09 69
 08 68 14 83 07 30 0C 5C 0E 6E 0A 6A F5 2B 0A 8B
-12 D3 F5 3F 34 40 00 80 8F 4A 02 00 8F 49 00 00
-0E 48 30 41 00 00 01 23 1B 42 DC 21 2C 4F 2F 83
-B0 12 46 81 BF 4F 00 00 7A 90 0A 00 02 28 7A 50
-07 00 7A 50 30 00 92 83 B2 21 18 42 B2 21 C8 4A
-00 00 30 4D 86 81 02 23 53 00 87 12 88 81 C0 81
-2D 83 09 93 E3 23 0E 93 E1 23 3D 41 30 4D B6 81
-02 23 3E 00 9F 42 B2 21 00 00 3E 40 B2 21 2E 8F
-30 4D 00 00 04 48 4F 4C 44 00 0A 4E 3E 4F DB 3F
-8E 80 04 53 49 47 4E 00 0E 93 3E 4F 3A 40 2D 00
-D2 33 30 4D 87 12 36 81 34 80 86 80 D4 80 BA 81
-92 80 F8 81 D4 81 D6 83 42 87 82 83 2A 80 22 81
-02 55 2E 00 08 43 2F 83 8F 4E 00 00 0E 48 EA 3F
-00 00 01 2E 0E 93 F6 37 38 43 F5 3F 2D 4D 30 4D
-0E 93 3E 4F FB 27 2D 53 30 4D 0E 93 3E 4F F6 23
-2D 53 30 4D 39 40 00 80 39 8F 08 4E 3E 4F 08 59
-19 15 30 4D 81 5E 00 00 3E 4F 32 B0 00 01 E6 27
-2D 53 21 52 30 4D 91 53 00 00 F7 3F E4 81 01 49
-2F 83 8F 4E 00 00 2E 41 1E 81 02 00 30 4D 00 00
-03 4B 45 59 30 40 98 82 18 42 8C 05 2F 83 8F 4E
-00 00 B0 12 B6 82 92 B3 9C 05 FD 27 1E 42 8C 05
-B0 12 C8 82 30 4D A2 B3 9C 05 FD 27 B2 40 11 00
-8E 05 D2 C3 03 02 30 41 B2 40 13 00 8E 05 D2 D3
-03 02 30 41 00 00 05 53 4C 45 45 50 30 40 E0 82
-B0 12 B6 82 12 D2 0A 18 F9 3F F0 80 06 41 43 43
-45 50 54 00 3C 40 64 83 3B 40 2E 83 2D 15 0A 4E
-2E 4F 0A 5E 3B 40 0D 00 3C 40 20 00 3D 40 58 83
-92 B3 9C 05 05 24 18 42 8C 05 38 90 0A 00 CB 23
-21 53 3D 15 DB 3F 21 52 3A 17 58 42 8C 05 48 9C
-08 2C 48 9B C9 27 78 92 11 20 2E 9F 0F 24 1E 83
-05 3C 0E 9A 03 24 CE 48 00 00 1E 53 A2 B3 9C 05
-FD 27 82 48 8E 05 30 4D 5A 83 2D 83 92 B3 9C 05
-E4 23 FC 27 82 93 DE 21 02 24 92 53 DE 21 3E 8F
-3D 41 B2 40 18 00 0A 18 30 4D 9E 80 04 45 4D 49
-54 00 30 40 86 83 08 4E 3E 4F E0 3F 3F 80 06 00
-8F 4E 04 00 3E 40 54 00 BF 40 3C 21 00 00 AF 4F
-02 00 A8 3F 7C 83 04 45 43 48 4F 00 B2 40 82 48
-52 83 82 43 DE 21 30 4D 32 82 06 4E 4F 45 43 48
-4F 00 B2 40 30 4D 52 83 92 43 DE 21 30 4D 20 82
-04 54 59 50 45 00 0E 93 0F 24 1E 15 3D 40 EC 83
-28 4F 7E 48 8F 48 00 00 2F 83 CB 3F EE 83 2D 83
-91 83 02 00 F5 23 1D 17 2F 53 3E 4F 30 4D D0 81
-02 43 52 00 30 40 08 84 87 12 1E 84 02 0D 0A 00
-D6 83 2A 80 2F 83 8F 4E 00 00 3E 4D 30 4D 2F 82
-8F 4E 02 00 7E 4D 8F 4D 00 00 0D 5E 1D B3 0D 63
-30 4D F2 81 82 53 22 00 82 43 B4 21 87 12 14 84
-1E 84 B0 86 14 84 22 00 80 84 4C 84 B2 40 20 00
-B4 21 6E 4E 1E 53 1E B3 82 6E C6 21 3D 41 3E 4F
-30 4D BA 83 82 2E 22 00 87 12 38 84 14 84 D6 83
-B0 86 2A 80 48 43 05 3C 00 00 04 57 4F 52 44 00
-48 4E 19 42 C0 21 1A 42 C2 21 09 5A 1A 52 C4 21
-09 9A 03 24 7E 9A FC 27 1A 83 4E F8 06 20 0E 4A
-1A 82 C2 21 82 4A C4 21 30 4D 18 42 C6 21 3B 40
-60 00 C8 4C 00 00 09 9A 0C 24 7C 4A 4E 9C 09 24
-18 53 4B 9C F6 2F 7C 90 7B 00 F3 2F 5C 82 B4 21
-F0 3F 1A 82 C2 21 82 4A C4 21 1E 42 C6 21 08 8E
-CE 48 00 00 30 4D 00 00 04 46 49 4E 44 00 2F 83
-0C 4E 65 4C 74 40 80 00 3B 40 CA 21 3E 4B 0E 93
-1E 24 58 4C 01 00 78 F0 1E 00 0E 58 2E 53 1E 4E
-FE FF 0E 93 F3 27 09 4E 78 49 48 C4 48 95 F7 23
-0A 4C FA 99 01 00 F3 23 1A 53 58 83 FA 23 19 B3
-09 63 0C 49 6A 4E 1E 43 4A 93 01 30 2E 83 8F 4C
-00 00 35 40 0E 80 34 40 00 80 30 4D 82 80 07 3E
-4E 55 4D 42 45 52 3C 4F 38 4F 29 4F 2F 82 1B 42
-DC 21 6A 4C 7A 80 30 00 7A 90 0A 00 05 28 7A 80
-07 00 7A 90 0A 00 12 28 0A 9B 22 C3 0F 2C 82 49
-D0 04 82 48 D2 04 82 4B C8 04 19 42 E4 04 18 42
-E6 04 09 5A 08 63 1C 53 1E 83 E3 23 8F 4C 00 00
-8F 48 02 00 8F 49 04 00 30 4D 32 C0 00 02 1B 42
-DC 21 0C 43 2D 15 3D 40 F4 85 09 43 08 43 3F 82
-8F 4E 06 00 0C 4E 7E 4C 6A 4C 7A 90 2D 00 04 28
-C9 23 B1 43 02 00 DF 3F 2B 43 7A 80 25 00 07 24
-3B 52 6A 53 04 24 3B 40 10 00 5A 83 BA 23 1C 53
-1E 83 EA 3F F6 85 2F 24 2D 83 7A 90 28 00 CB 27
-32 D0 00 02 7A 90 F7 00 C6 27 7A 90 F5 00 23 20
-0A 4E 09 43 8F 49 02 00 5A 83 09 4A 09 5C 69 49
-79 80 30 00 79 90 0A 00 05 28 79 80 07 00 79 90
-0A 00 0A 28 09 9B 08 2C 8F 49 00 00 0E 4B 2C 15
-B0 12 3E 81 2A 17 E6 3F 9F 4F 04 00 02 00 AF 4F
-04 00 0E 4A 4E 93 2B 17 0E 4C 82 4B DC 21 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 7E 82 04 48 45 52 45 00
-2F 83 8F 4E 00 00 1E 42 C6 21 30 4D B6 80 01 2C
-1A 42 C6 21 8A 4E 00 00 A2 53 C6 21 3E 4F 30 4D
-EC 82 05 41 4C 4C 4F 54 82 5E C6 21 3E 4F 30 4D
-A6 83 07 45 58 45 43 55 54 45 0A 4E 3E 4F 00 4A
-AE 86 87 4C 49 54 45 52 41 4C 82 93 BE 21 0C 24
-1A 42 C6 21 A2 52 C6 21 BA 40 14 84 00 00 8A 4E
-02 00 3E 4F 32 B0 00 02 32 C0 00 02 06 24 19 4A
-02 00 8A 4E 02 00 0E 49 EB 3F 30 4D 00 84 05 43
-4F 55 4E 54 2F 83 1E 53 8F 4E 00 00 5E 4E FF FF
-30 4D 82 4E C0 21 B2 4F C2 21 3E 4F 82 43 C4 21
-30 4D 85 12 20 00 87 12 32 87 42 87 80 84 50 87
-3D 40 58 87 CC 22 82 3E 5A 87 0A 4E 3E 4F 3D 40
-70 87 23 27 3D 40 4A 87 1A E2 BE 21 A1 27 B5 23
-72 87 3E 4F 3D 40 4A 87 B8 23 DE 53 00 00 68 4E
-08 5E F8 40 3F 00 00 00 3D 40 26 8A CB 3F D2 86
+12 D3 F5 3F 34 40 EC 80 8F 4A 02 00 8F 49 00 00
+0E 48 30 41 82 4E C0 21 B2 4F C2 21 3E 4F 82 43
+C4 21 30 4D 3F 80 06 00 8F 4E 04 00 3E 40 54 00
+BF 40 3C 21 00 00 AF 4F 02 00 24 3C 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 A2 B3 9C 05 FD 27 B2 40 11 00
+8E 05 D2 C3 03 02 30 41 A2 B3 9C 05 FD 27 B2 40
+13 00 8E 05 D2 D3 03 02 30 41 00 00 06 41 43 43
+45 50 54 00 3C 40 A6 81 3B 40 70 81 2D 15 0A 4E
+2E 4F 0A 5E 3B 40 0D 00 3C 40 20 00 3D 40 9A 81
+92 B3 9C 05 05 24 18 42 8C 05 38 90 0A 00 D3 23
+21 53 3D 15 30 40 00 80 21 52 3A 17 58 42 8C 05
+48 9C 08 2C 48 9B D0 27 78 92 11 20 2E 9F 0F 24
+1E 83 05 3C 0E 9A 03 24 CE 48 00 00 1E 53 A2 B3
+9C 05 FD 27 82 48 8E 05 30 4D 9C 81 2D 83 92 B3
+9C 05 E4 23 FC 27 82 93 DE 21 02 24 92 53 DE 21
+3E 8F 3D 41 B2 40 18 00 0A 18 30 4D 00 00 04 45
+4D 49 54 00 30 40 C8 81 08 4E 3E 4F E0 3F BE 81
+04 45 43 48 4F 00 B2 40 82 48 94 81 82 43 DE 21
+30 4D 00 00 06 4E 4F 45 43 48 4F 00 B2 40 30 4D
+94 81 92 43 DE 21 30 4D 00 00 04 54 59 50 45 00
+0E 93 0F 24 1E 15 3D 40 16 82 28 4F 7E 48 8F 48
+00 00 2F 83 D7 3F 18 82 2D 83 91 83 02 00 F5 23
+1D 17 2F 53 3E 4F 30 4D 00 00 02 43 52 00 30 40
+32 82 0D 12 87 12 2E 80 02 0D 0A 00 00 82 26 83
+00 00 03 4B 45 59 30 40 4A 82 18 42 8C 05 2F 83
+8F 4E 00 00 B0 12 06 81 92 B3 9C 05 FD 27 1E 42
+8C 05 B0 12 18 81 30 4D 2F 83 8F 4E 00 00 30 4D
+8F 4E FE FF AF 4F FC FF 2F 82 30 4D 0E 93 F4 23
+30 4D 2A 4F 8F 4E 00 00 0E 4A 30 4D 8F 4E FE FF
+3E 40 80 20 0E 8F 0E 11 2F 83 30 4D 2F 83 8F 4E
+00 00 3E 41 30 4D 3E 8F 3E E3 1E 53 30 4D BE 4F
+00 00 3E 4F 30 4D 1E 83 0E 7E 30 4D 0E 5E 0E 7E
+3E E3 30 4D 3E 8F 03 24 3E 43 01 2C 0E F3 30 4D
+00 00 02 3C 23 00 B2 40 B2 21 B2 21 30 4D 2A 82
+01 23 1B 42 DC 21 2C 4F 2F 83 B0 12 86 80 BF 4F
+00 00 7A 90 0A 00 02 28 7A 50 07 00 7A 50 30 00
+92 83 B2 21 18 42 B2 21 C8 4A 00 00 30 4D E0 82
+02 23 53 00 0D 12 87 12 E2 82 1C 83 2D 83 09 93
+E2 23 0E 93 E0 23 3D 41 30 4D 10 83 02 23 3E 00
+9F 42 B2 21 00 00 3E 40 B2 21 2E 8F 30 4D 00 00
+04 48 4F 4C 44 00 4A 4E 3E 4F DA 3F 00 00 04 53
+49 47 4E 00 0E 93 3E 4F 7A 40 2D 00 D1 33 30 4D
+FA 81 02 55 2E 00 08 43 2F 83 8F 4E 00 00 0E 48
+0D 12 0E 12 3E F3 06 34 BF E3 00 00 3E E3 9F 53
+00 00 0E 63 87 12 D6 82 14 83 9C 82 54 83 30 83
+00 82 70 86 C4 81 26 83 E4 81 01 2E 0E 93 E3 37
+38 43 E2 3F 4E 83 82 53 22 00 82 43 B4 21 0D 12
+87 12 24 80 2E 80 F8 85 24 80 22 00 F2 83 C0 83
+B2 40 20 00 B4 21 6E 4E 1E 53 1E B3 82 6E C6 21
+3D 41 3E 4F 30 4D 9A 83 82 2E 22 00 0D 12 87 12
+AA 83 24 80 00 82 F8 85 26 83 00 00 04 57 4F 52
+44 00 3C 40 C0 21 39 4C 3A 4C 09 5A 3A 5C 28 4C
+09 9A 15 24 7E 9A FC 27 1A 83 3B 40 60 00 C8 4C
+00 00 09 9A 0C 24 7C 4A 4E 9C 09 24 18 53 4B 9C
+F6 2F 7C 90 7B 00 F3 2F 5C 82 B4 21 F0 3F 1A 82
+C2 21 82 4A C4 21 1E 42 C6 21 08 8E CE 48 00 00
+30 4D 00 00 04 46 49 4E 44 00 2F 83 0C 4E 65 4C
+74 40 80 00 3B 40 CA 21 3E 4B 0E 93 1E 24 58 4C
+01 00 78 F0 1E 00 0E 58 2E 53 1E 4E FE FF 0E 93
+F3 27 09 4E 78 49 48 C4 48 95 F7 23 0A 4C FA 99
+01 00 F3 23 1A 53 58 83 FA 23 19 B3 09 63 0C 49
+6A 4E 1E 43 4A 93 01 30 2E 83 8F 4C 00 00 35 40
+FA 80 34 40 EC 80 30 4D 00 00 07 3E 4E 55 4D 42
+45 52 3C 4F 38 4F 29 4F 2F 82 1B 42 DC 21 6A 4C
+7A 80 30 00 7A 90 0A 00 05 28 7A 80 07 00 7A 90
+0A 00 12 28 0A 9B 22 C3 0F 2C 82 49 D0 04 82 48
+D2 04 82 4B C8 04 19 42 E4 04 18 42 E6 04 09 5A
+08 63 1C 53 1E 83 E3 23 8F 4C 00 00 8F 48 02 00
+8F 49 04 00 30 4D 32 C0 00 02 1B 42 DC 21 0C 43
+2D 15 3D 40 50 85 09 43 08 43 3F 82 8F 4E 06 00
+0C 4E 7E 4C 6A 4C 7A 90 2D 00 04 28 C9 23 B1 43
+02 00 0B 3C 2B 43 7A 80 25 00 07 24 3B 52 6A 53
+04 24 3B 40 10 00 5A 83 BA 23 1C 53 1E 83 EA 3F
+52 85 2F 24 2D 83 7A 90 28 00 CB 27 32 D0 00 02
+7A 90 F7 00 C6 27 7A 90 F5 00 23 20 0A 4E 09 43
+8F 49 02 00 5A 83 09 4A 09 5C 69 49 79 80 30 00
+79 90 0A 00 05 28 79 80 07 00 79 90 0A 00 0A 28
+09 9B 08 2C 8F 49 00 00 0E 4B 2C 15 B0 12 7E 80
+2A 17 E6 3F 9F 4F 04 00 02 00 AF 4F 04 00 0E 4A
+4E 93 2B 17 0E 4C 82 4B DC 21 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 00 00 01 2C 1A 42 C6 21 8A 4E 00 00
+A2 53 C6 21 3E 4F 30 4D 2C 81 05 41 4C 4C 4F 54
+82 5E C6 21 3E 4F 30 4D 0A 4E 3E 4F 00 4A F6 85
+87 4C 49 54 45 52 41 4C 82 93 BE 21 0C 24 1A 42
+C6 21 A2 52 C6 21 BA 40 24 80 00 00 8A 4E 02 00
+3E 4F 32 B0 00 02 32 C0 00 02 06 24 19 4A 02 00
+8A 4E 02 00 0E 49 EB 3F 30 4D 2C 83 05 43 4F 55
+4E 54 2F 83 1E 53 8F 4E 00 00 5E 4E FF FF 30 4D
+85 12 20 00 0D 12 87 12 C4 80 70 86 F2 83 80 86
+3D 40 88 86 E2 22 A4 26 8A 86 0A 4E 3E 4F 3D 40
+A0 86 39 27 3D 40 7A 86 1A E2 BE 21 BD 23 AC 27
+A2 86 3E 4F 3D 40 7A 86 BF 23 DE 53 00 00 68 4E
+08 5E F8 40 3F 00 00 00 3D 40 20 89 D2 3F D0 81
 08 45 56 41 4C 55 41 54 45 00 39 40 C0 21 3C 49
-3B 49 3A 49 3D 15 B0 12 2A 80 46 87 AE 87 B2 41
-C4 21 B2 41 C2 21 B2 41 C0 21 3D 41 30 4D 85 12
-BE 21 08 81 04 51 55 49 54 00 82 43 08 18 31 40
-E0 20 B2 40 00 20 00 20 82 43 BE 21 B0 12 2A 80
-04 84 8C 83 42 87 82 83 46 87 A4 80 0C 81 1E 84
-0C 73 74 61 63 6B 20 65 6D 70 74 79 21 00 40 88
-14 84 30 FF A0 86 26 81 1E 84 0A 46 52 41 4D 20
-66 75 6C 6C 21 00 40 88 3C 82 E0 87 C2 86 05 41
-42 4F 52 54 3F 40 80 20 D0 3F 1E 88 86 41 42 4F
-52 54 22 00 87 12 38 84 14 84 40 88 B0 86 2A 80
-8F 93 02 00 03 20 2F 52 3E 4F 30 4D B0 12 C8 8D
-B0 12 B6 82 92 C3 9C 05 38 40 AA 0A 39 42 03 43
-19 83 FD 23 18 83 FA 23 92 B3 9C 05 F3 23 87 12
-42 8D 14 84 DE 21 EA 80 AC 83 1E 84 04 1B 5B 37
-6D 00 D6 83 58 80 40 82 9A 88 04 84 1E 84 05 6C
-69 6E 65 3A D6 83 D0 80 24 82 D6 83 1E 84 04 1B
-5B 30 6D 00 D6 83 24 88 00 00 83 5B 27 5D 87 12
-C0 88 14 84 14 84 B0 86 B0 86 2A 80 E8 84 01 27
-87 12 42 87 80 84 EE 84 40 82 CE 88 2A 80 7A 87
-32 81 81 5C 92 42 C0 21 C4 21 30 4D AA 88 81 5B
-82 43 BE 21 30 4D D2 88 01 5D B2 43 BE 21 30 4D
-BE 4F 02 00 3E 4F 30 4D 9A 86 82 49 53 00 87 12
-BE 87 EA 80 40 82 12 89 AE 88 14 84 F0 88 B0 86
-2A 80 C0 88 F0 88 2A 80 FA 88 09 49 4D 4D 45 44
-49 41 54 45 1A 42 B6 21 FA D0 80 00 00 00 30 4D
-C4 87 88 50 4F 53 54 50 4F 4E 45 00 87 12 42 87
-80 84 EE 84 58 80 40 82 CE 88 0C 81 40 82 5C 89
-14 84 14 84 B0 86 B0 86 14 84 B0 86 B0 86 2A 80
-DE 88 81 3B 82 93 BE 21 B5 27 87 12 14 84 2A 80
-B0 86 FA 89 E0 88 2A 80 62 89 07 3A 4E 4F 4E 41
-4D 45 30 12 A0 89 2F 83 8F 4E 00 00 1E 42 C6 21
-1E B3 0E 63 0A 4E 39 40 00 02 38 40 02 02 21 3C
-BA 40 87 12 FC FF A2 83 C6 21 B2 43 BE 21 30 4D
-7A 89 01 3A 30 12 A0 89 92 B3 C6 21 A2 63 C6 21
-87 12 42 87 80 84 C8 89 3D 41 08 4E 7A 4E 5A D3
-5A 53 0A 58 19 42 DA 21 6E 4E 3E F0 1E 00 09 5E
-3E 4F 82 48 B6 21 82 49 B8 21 82 4A BA 21 82 4F
-BC 21 2A 52 82 4A C6 21 30 41 82 9F BC 21 09 20
-18 42 B6 21 19 42 B8 21 A8 49 FE FF 89 48 00 00
-30 4D 87 12 1E 84 0F 73 74 61 63 6B 20 6D 69 73
-6D 61 74 63 68 21 4C 88 90 87 05 44 45 46 45 52
-B0 12 B8 89 BA 40 30 40 FC FF BA 40 AE 89 FE FF
-E3 3F 1E 87 06 43 52 45 41 54 45 00 B0 12 B8 89
-BA 40 85 12 FC FF 8A 4A FE FF D6 3F 2A 8A 05 44
-4F 45 53 3E 1A 42 BA 21 BA 40 84 12 00 00 8A 4D
-02 00 3D 41 30 4D 4E 85 05 3E 42 4F 44 59 2E 52
-30 4D 44 8A 04 43 4F 44 45 00 B0 12 B8 89 A2 82
-C6 21 87 12 D2 8C AC 8C 2A 80 84 8A 07 43 4F 44
-45 4E 4E 4D B0 12 86 89 F2 3F 00 00 07 45 4E 44
-43 4F 44 45 87 12 E0 8C FA 89 2A 80 2C 88 03 41
-53 4D B2 40 B0 8C DA 21 E0 3F AC 8A 06 45 4E 44
-41 53 4D 00 87 12 B4 8A F4 8C 2A 80 00 00 05 43
-4F 4C 4F 4E 1A 42 C6 21 BA 40 87 12 00 00 A2 53
-C6 21 B2 43 BE 21 30 40 E0 8C 00 00 05 4C 4F 32
-48 49 1A 42 C6 21 BA 40 B0 12 00 00 BA 40 2A 80
-02 00 A2 52 C6 21 ED 3F 1A 89 85 48 49 32 4C 4F
-87 12 A0 86 4A 8B B0 86 E0 88 D2 8C AC 8C 2A 80
-1A 8B 82 49 46 00 2F 83 8F 4E 00 00 1E 42 C6 21
-A2 52 C6 21 BE 40 40 82 00 00 2E 53 30 4D 5E 8A
-84 45 4C 53 45 00 A2 52 C6 21 1A 42 C6 21 BA 40
-3C 82 FC FF 8E 4A 00 00 2A 83 0E 4A 30 4D D0 83
-84 54 48 45 4E 00 9E 42 C6 21 00 00 3E 4F 30 4D
-9C 8A 85 42 45 47 49 4E 30 40 A0 86 70 8B 85 55
-4E 54 49 4C 39 40 40 82 A2 52 C6 21 1A 42 C6 21
-8A 49 FC FF 8A 4E FE FF 3E 4F 30 4D BE 8A 85 41
-47 41 49 4E 39 40 3C 82 EF 3F 7A 84 85 57 48 49
-4C 45 87 12 36 8B 76 80 2A 80 34 84 86 52 45 50
-45 41 54 00 87 12 B4 8B 76 8B 2A 80 50 8B 82 44
-4F 00 2F 83 8F 4E 00 00 A2 53 C6 21 1E 42 C6 21
-BE 40 54 82 FE FF A2 53 00 20 1A 42 00 20 8A 43
-00 00 30 4D E2 86 84 4C 4F 4F 50 00 39 40 76 82
-A2 52 C6 21 1A 42 C6 21 8A 49 FC FF 8A 4E FE FF
-1E 42 00 20 A2 83 00 20 2E 4E 0E 93 03 24 8E 4A
-00 00 F6 3F 3E 4F 30 4D 90 82 85 2B 4C 4F 4F 50
-39 40 64 82 E5 3F 06 8C 04 4D 4F 56 45 00 0A 4E
-38 4F 39 4F 3E 4F 0A 93 11 24 08 99 0F 24 06 2C
-F8 49 00 00 18 53 1A 83 FB 23 30 4D 08 5A 09 5A
-19 83 18 83 E8 49 00 00 1A 83 FA 23 30 4D 14 84
-CA 21 F2 80 2A 80 84 12 7E 8C AE 8B 3E 8F DE 8B
-BE 88 32 8B 3A 8C 52 90 64 84 66 8D 80 8D 8E 8B
-00 8E 00 00 24 90 E8 88 78 8A 00 00 84 12 7E 8C
-70 95 D2 95 24 95 46 96 EA 94 00 00 1A 92 00 00
-E0 94 90 95 42 95 80 95 2A 93 00 00 00 00 22 96
-AA 8C 3A 40 0C 00 39 40 CA 21 38 40 CC 21 C6 3F
-3A 40 0E 00 39 40 CC 21 38 40 CA 21 B9 3F 82 43
-CC 21 30 4D 92 42 CA 21 DA 21 30 4D 86 8C EE 8C
-F4 8C 04 8D 3A 4E 82 4A C8 21 2E 4E 82 4E C6 21
-3D 40 10 00 09 4A 08 49 29 83 18 48 FE FF 0E 98
-FC 2B 89 48 00 00 1D 83 F6 23 2A 4A 0A 93 F0 23
-3E 4F 3D 41 30 4D 32 89 09 50 57 52 5F 53 54 41
-54 45 84 12 FC 8C D0 8C 58 96 CC 8B 09 52 53 54
-5F 53 54 41 54 45 92 42 0E 18 46 8D 92 42 0C 18
-48 8D EF 3F 38 8D 08 50 57 52 5F 48 45 52 45 00
-92 42 C8 21 46 8D 92 42 C6 21 48 8D 30 4D 4C 8D
-08 52 53 54 5F 48 45 52 45 00 92 42 C8 21 0E 18
-92 42 C6 21 0C 18 EC 3F BC 8B 04 57 49 50 45 00
-39 40 10 00 29 83 B9 43 80 FF FC 23 B2 40 E0 82
-DE 82 B2 40 0A 8E 08 8E B2 40 D0 8C 0E 18 B2 40
-58 96 0C 18 30 12 56 8D B2 40 86 83 84 83 B2 40
-08 84 06 84 B2 40 98 82 96 82 B2 40 18 00 0A 18
-37 40 1A 80 36 40 92 80 35 40 0E 80 34 40 00 80
-B2 40 0A 00 DC 21 B2 40 20 00 B4 21 30 41 9A 8D
-04 57 41 52 4D 00 30 40 0A 8E 3D 40 3E 8E 92 C3
-30 01 1E 42 08 18 0E 93 11 24 F2 B2 21 02 02 20
-3E E3 1E 53 F2 D0 0C 00 2B 02 3E 90 0A 00 B8 27
-3E 90 16 00 B5 2F 2E 93 84 27 8D 2F 30 4D 1E 84
-06 0D 1B 5B 37 6D 23 00 D6 83 34 82 1E 84 19 46
-61 73 74 46 6F 72 74 68 20 C2 A9 4A 2E 4D 2E 54
-68 6F 6F 72 65 6E 73 20 D6 83 14 84 30 FF A0 86
-B8 80 24 82 1E 84 0A 62 79 74 65 73 20 66 72 65
-65 00 3C 82 9A 88 82 8B 04 43 4F 4C 44 00 92 B3
-8A 05 FD 23 B2 40 04 A5 20 01 3E 8E B2 40 88 5A
-CC 01 B2 43 06 02 B2 40 FE FF 02 02 D2 D3 05 02
-F2 D3 26 02 F2 43 22 02 F2 D3 47 02 F2 40 BF 00
-43 02 B2 40 00 A5 60 01 82 43 88 01 B2 40 FF 1E
-80 01 B2 40 B0 00 82 01 B2 40 1E 00 84 01 39 40
-10 00 92 D2 5E 01 08 18 38 40 59 14 18 83 FE 23
-19 83 FA 23 39 40 00 10 29 83 89 43 00 20 FC 23
-39 40 32 00 29 83 B9 40 9C 8E CE FF FB 23 B2 40
-26 83 E2 FF B2 40 81 00 80 05 92 42 02 18 86 05
-92 42 04 18 88 05 92 C3 80 05 92 D3 9A 05 3F 40
-80 20 31 40 E0 20 30 12 06 8E 4F 3F 88 8E 07 43
-4F 4D 50 41 52 45 0C 4E 38 4F 3B 4F 39 4F 0E 4B
-0E 5C 0C 24 1B 83 07 30 1C 83 07 30 19 53 F9 98
-FF FF F5 27 02 2C 3E 43 30 4D 1E 43 30 4D B2 89
-86 5B 54 48 45 4E 5D 00 30 4D 70 8F 86 5B 45 4C
-53 45 5D 00 87 12 14 84 00 00 C6 80 42 87 80 84
-24 87 34 80 40 82 E6 8F 44 80 1E 84 06 5B 54 48
-45 4E 5D 00 46 8F 4A 82 B6 8F F8 83 D0 80 58 80
-4A 82 8C 8F 2A 80 44 80 1E 84 06 5B 45 4C 53 45
-5D 00 46 8F 4A 82 D4 8F F8 83 D0 80 58 80 4A 82
-8A 8F 2A 80 1E 84 04 5B 49 46 5D 00 46 8F 4A 82
-8C 8F 3C 82 8A 8F F8 83 1E 84 05 0D 0A 6B 6F 20
-D6 83 8C 83 32 87 3C 82 8C 8F 7C 8F 84 5B 49 46
-5D 00 0E 93 3E 4F BE 27 30 4D FC 8F 89 5B 44 45
-46 49 4E 45 44 5D 87 12 42 87 80 84 EE 84 6A 80
-2A 80 0C 90 8B 5B 55 4E 44 45 46 49 4E 45 44 5D
-87 12 42 87 80 84 EE 84 6A 80 00 81 2A 80 40 90
-3D 41 B2 4E 0E 18 A2 4E 0C 18 3E 4F 30 40 56 8D
-48 8C 06 4D 41 52 4B 45 52 00 B0 12 B8 89 BA 40
-84 12 FC FF BA 40 3E 90 FE FF 9A 42 C8 21 00 00
-28 83 8A 48 02 00 A2 52 C6 21 30 40 00 8A 1C 15
-B0 12 2A 80 80 84 EE 84 4A 82 94 90 AA 85 40 82
-CE 88 AE 90 96 90 39 4E 39 80 86 12 08 24 19 53
-02 20 2E 4E 04 3C 2E 53 19 53 01 24 2E 82 1B 17
-30 41 3E 40 28 00 B0 12 7E 90 19 42 C6 21 A2 53
-C6 21 89 4E 00 00 3E 40 29 00 1C 15 12 12 C4 21
-92 53 C4 21 B0 12 2A 80 80 84 AA 85 40 82 EC 90
-E2 90 21 53 3E 90 10 00 7D 2D E1 2B EE 90 B2 41
-C4 21 DD 3F 87 12 42 87 74 84 FC 90 0C 43 1B 42
-C6 21 A2 53 C6 21 6A 4E 3E 4F 7A 90 23 00 27 20
-92 53 C4 21 B0 12 7E 90 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 C6 21
-A2 53 C6 21 89 4E 00 00 3E 4F 3D 41 30 4D 7A 90
-26 00 07 20 3C 40 10 02 92 53 C4 21 B0 12 7E 90
-ED 3F 7A 90 40 00 16 20 3C 40 20 00 92 53 C4 21
-B0 12 CA 90 0C 20 3C 50 10 00 3E 40 2B 00 B0 12
-CA 90 92 92 C0 21 C4 21 02 24 92 53 C4 21 8E 10
-0C 5E DA 3F B0 12 CA 90 FA 23 3C 50 10 00 B0 12
-B2 90 EF 3F 0C 43 1B 42 C6 21 A2 53 C6 21 87 12
-42 87 74 84 C6 91 FE 90 26 00 00 00 3E 40 20 00
-03 20 3C 50 82 00 C8 3F B0 12 CA 90 E1 23 3C 50
-80 00 B0 12 B2 90 DC 3F D6 82 04 52 45 54 49 00
-87 12 14 84 00 13 B0 86 2A 80 14 84 2C 00 F4 90
-BE 91 04 92 09 4B 2E 4E 0E DC A4 3F FC 8A 03 4D
-4F 56 84 12 FA 91 00 40 0E 92 05 4D 4F 56 2E 42
-84 12 FA 91 40 40 00 00 03 41 44 44 84 12 FA 91
-00 50 28 92 05 41 44 44 2E 42 84 12 FA 91 40 50
-34 92 04 41 44 44 43 00 84 12 FA 91 00 60 42 92
-06 41 44 44 43 2E 42 00 84 12 FA 91 40 60 EA 91
-04 53 55 42 43 00 84 12 FA 91 00 70 60 92 06 53
-55 42 43 2E 42 00 84 12 FA 91 40 70 6E 92 03 53
-55 42 84 12 FA 91 00 80 7E 92 05 53 55 42 2E 42
-84 12 FA 91 40 80 DE 8A 03 43 4D 50 84 12 FA 91
-00 90 98 92 05 43 4D 50 2E 42 84 12 FA 91 40 90
-CC 8A 04 44 41 44 44 00 84 12 FA 91 00 A0 B2 92
-06 44 41 44 44 2E 42 00 84 12 FA 91 40 A0 A4 92
-03 42 49 54 84 12 FA 91 00 B0 D0 92 05 42 49 54
-2E 42 84 12 FA 91 40 B0 DC 92 03 42 49 43 84 12
-FA 91 00 C0 EA 92 05 42 49 43 2E 42 84 12 FA 91
-40 C0 F6 92 03 42 49 53 84 12 FA 91 00 D0 04 93
-05 42 49 53 2E 42 84 12 FA 91 40 D0 00 00 03 58
-4F 52 84 12 FA 91 00 E0 1E 93 05 58 4F 52 2E 42
-84 12 FA 91 40 E0 50 92 03 41 4E 44 84 12 FA 91
-00 F0 38 93 05 41 4E 44 2E 42 84 12 FA 91 40 F0
-42 87 F4 90 56 93 0A 4C 3C F0 70 00 8A 10 3A F0
-0F 00 0C DA 4F 3F 8A 92 03 52 52 43 84 12 50 93
-00 10 68 93 05 52 52 43 2E 42 84 12 50 93 40 10
-74 93 04 53 57 50 42 00 84 12 50 93 80 10 82 93
-03 52 52 41 84 12 50 93 00 11 90 93 05 52 52 41
-2E 42 84 12 50 93 40 11 9C 93 03 53 58 54 84 12
-50 93 80 11 00 00 04 50 55 53 48 00 84 12 50 93
-00 12 B6 93 06 50 55 53 48 2E 42 00 84 12 50 93
-40 12 10 93 04 43 41 4C 4C 00 84 12 50 93 80 12
-1A 53 0E 4A 87 12 34 82 1E 84 0D 6F 75 74 20 6F
-66 20 62 6F 75 6E 64 73 4C 88 42 87 74 84 00 94
-92 53 C4 21 3E 40 2C 00 B0 12 2A 80 80 84 AA 85
-40 82 CE 88 B4 91 18 94 0A 4E 3E 4F 1A 83 E0 33
-29 4E 59 0E 0A 28 08 4C 59 0A 01 28 0C 8A 08 8A
-38 90 10 00 D5 2F 5A 0E 94 3F 2A 92 D1 2F 8A 10
-5A 06 8F 3F AA 93 04 52 52 43 4D 00 84 12 FA 93
-50 00 46 94 04 52 52 41 4D 00 84 12 FA 93 50 01
-54 94 04 52 4C 41 4D 00 84 12 FA 93 50 02 62 94
-04 52 52 55 4D 00 84 12 FA 93 50 03 C4 93 05 50
-55 53 48 4D 84 12 FA 93 00 15 7E 94 04 50 4F 50
-4D 00 84 12 FA 93 00 17 70 94 03 53 3E 3D 85 12
-00 38 9A 94 02 53 3C 00 85 12 00 34 8C 94 03 30
-3E 3D 85 12 00 30 AE 94 02 30 3C 00 85 12 00 30
-00 00 02 55 3C 00 85 12 00 2C C2 94 03 55 3E 3D
-85 12 00 28 B8 94 03 30 3C 3E 85 12 00 24 D6 94
-02 30 3D 00 85 12 00 20 00 00 02 49 46 00 1A 42
-C6 21 8A 4E 00 00 A2 53 C6 21 0E 4A 30 4D CC 94
-04 54 48 45 4E 00 1A 42 C6 21 08 4E 3E 4F 09 48
-29 53 0A 89 0A 11 3A 90 00 02 63 2F 88 DA 00 00
-30 4D C0 92 04 45 4C 53 45 00 1A 42 C6 21 BA 40
-00 3C 00 00 A2 53 C6 21 2F 83 8F 4A 00 00 E3 3F
-00 95 05 55 4E 54 49 4C 3A 4F 08 4E 3E 4F 19 42
-C6 21 2A 83 0A 89 0A 11 3A 90 00 FE 42 3B 3A F0
-FF 03 08 DA 89 48 00 00 A2 53 C6 21 30 4D 44 93
-05 41 47 41 49 4E 0A 4E 38 40 00 3C E7 3F 00 00
-05 57 48 49 4C 45 87 12 EE 94 76 80 2A 80 A4 94
-06 52 45 50 45 41 54 00 87 12 76 95 06 95 2A 80
-A2 95 3D 41 08 4E 3E 4F 2A 48 B2 92 C4 21 CD 2F
-98 42 C6 21 00 00 30 4D D4 93 03 42 57 31 84 12
-A0 95 00 00 BA 95 03 42 57 32 84 12 A0 95 00 00
-C6 95 03 42 57 33 84 12 A0 95 00 00 DE 95 3D 41
-1A 42 C6 21 28 4E B2 92 C4 21 90 2B BA 4F 00 00
-A2 53 C6 21 8E 4A 00 00 3E 4F 30 4D 00 00 03 46
-57 31 84 12 DC 95 00 00 FE 95 03 46 57 32 84 12
-DC 95 00 00 0A 96 03 46 57 33 84 12 DC 95 00 00
-00 00 05 3F 47 4F 54 4F 3E 90 00 30 07 24 3E E0
-00 04 3E B0 00 10 02 24 3E E0 00 08 87 12 C0 88
-DA 86 2A 80 16 96 04 47 4F 54 4F 00 2F 83 8F 4E
-00 00 3E 40 00 3C F2 3F
+3B 49 3A 49 3D 15 87 12 74 86 DC 86 B2 41 C4 21
+B2 41 C2 21 B2 41 C0 21 3D 41 30 4D 85 12 BE 21
+00 00 04 51 55 49 54 00 82 43 08 18 31 40 E0 20
+B2 40 00 20 00 20 82 43 BE 21 87 12 2E 82 D4 80
+70 86 C4 81 74 86 8C 82 BC 82 2E 80 0C 73 74 61
+63 6B 20 65 6D 70 74 79 21 00 6E 87 24 80 40 FF
+2A 8A C4 82 2E 80 0A 46 52 41 4D 20 66 75 6C 6C
+21 00 6E 87 48 80 0C 87 0A 86 05 41 42 4F 52 54
+3F 40 80 20 D1 3F 4A 87 86 41 42 4F 52 54 22 00
+0D 12 87 12 AA 83 24 80 6E 87 F8 85 26 83 8F 93
+02 00 03 20 2F 52 3E 4F 30 4D B0 12 96 8B B0 12
+06 81 92 C3 9C 05 18 42 06 18 39 40 20 00 19 83
+FE 23 18 83 FA 23 92 B3 9C 05 F3 23 0D 12 87 12
+10 8B 24 80 DE 21 02 81 D6 81 2E 80 04 1B 5B 37
+6D 00 00 82 7C 82 4C 80 C8 87 2E 82 2E 80 05 6C
+69 6E 65 3A 00 82 66 83 00 82 2E 80 04 1B 5B 30
+6D 00 00 82 50 87 00 00 83 5B 27 5D 0D 12 87 12
+F0 87 24 80 24 80 F8 85 F8 85 26 83 44 84 01 27
+0D 12 87 12 70 86 F2 83 4A 84 4C 80 00 88 26 83
+AA 86 D2 82 81 5C 92 42 C0 21 C4 21 30 4D D8 87
+81 5B 82 43 BE 21 30 4D 04 88 01 5D B2 43 BE 21
+30 4D F2 86 88 50 4F 53 54 50 4F 4E 45 00 0D 12
+87 12 70 86 F2 83 4A 84 7C 82 4C 80 00 88 BC 82
+4C 80 50 88 24 80 24 80 F8 85 F8 85 24 80 F8 85
+F8 85 26 83 40 83 09 49 4D 4D 45 44 49 41 54 45
+1A 42 B6 21 FA D0 80 00 00 00 30 4D 10 88 01 3A
+30 12 B8 88 92 B3 C6 21 A2 63 C6 21 0D 12 87 12
+70 86 F2 83 86 88 3D 41 08 4E 7A 4E 5A D3 5A 53
+0A 58 19 42 DA 21 6E 4E 3E F0 1E 00 09 5E 3E 4F
+82 48 B6 21 82 49 B8 21 82 4A BA 21 82 4F BC 21
+2A 52 82 4A C6 21 30 41 BA 40 0D 12 FC FF BA 40
+87 12 FE FF B2 43 BE 21 30 4D 6E 88 07 3A 4E 4F
+4E 41 4D 45 30 12 B8 88 2F 83 8F 4E 00 00 1E 42
+C6 21 1E B3 0E 63 0A 4E 39 40 10 02 38 40 12 02
+D7 3F 82 9F BC 21 09 20 18 42 B6 21 19 42 B8 21
+A8 49 FE FF 89 48 00 00 30 4D 0D 12 87 12 2E 80
+0F 73 74 61 63 6B 20 6D 69 73 6D 61 74 63 68 21
+7A 87 CC 88 81 3B 82 93 BE 21 6D 27 0D 12 87 12
+24 80 26 83 F8 85 F2 88 12 88 26 83 5C 86 06 43
+52 45 41 54 45 00 B0 12 74 88 BA 40 85 12 FC FF
+8A 4A FE FF D5 3F C0 86 05 44 4F 45 53 3E 1A 42
+BA 21 BA 40 84 12 00 00 8A 4D 02 00 3D 41 30 4D
+3E 89 04 43 4F 44 45 00 B0 12 74 88 A2 82 C6 21
+0D 12 87 12 8A 8A 64 8A 26 83 72 89 07 43 4F 44
+45 4E 4E 4D 30 12 7C 89 9F 3F 00 00 07 45 4E 44
+43 4F 44 45 0D 12 87 12 F2 88 A4 8A 26 83 58 87
+03 41 53 4D B2 40 68 8A DA 21 DE 3F 9C 89 06 45
+4E 44 41 53 4D 00 0D 12 87 12 A4 89 C2 8A 26 83
+00 00 05 43 4F 4C 4F 4E 1A 42 C6 21 BA 40 0D 12
+00 00 BA 40 87 12 02 00 A2 52 C6 21 B2 43 BE 21
+30 40 A4 8A 00 00 05 4C 4F 32 48 49 A2 83 C6 21
+1A 42 C6 21 EE 3F 56 88 85 48 49 32 4C 4F 0D 12
+87 12 2A 8A 1E 8A F8 85 12 88 80 89 26 83 2E 53
+30 4D 8C 89 85 42 45 47 49 4E 2F 83 8F 4E 00 00
+1E 42 C6 21 30 4D 24 80 CA 21 AE 82 26 83 84 12
+36 8A B0 89 5A 8C 58 89 EE 87 08 8A 42 82 20 86
+D8 83 34 8B 4E 8B 62 83 CE 8B 00 00 DC 8D 1A 88
+AA 84 00 00 84 12 36 8A 0E 93 74 93 C2 92 C4 93
+88 92 00 00 B8 8F 00 00 7E 92 30 93 E0 92 1E 93
+C8 90 00 00 00 00 E0 93 62 8A 3A 40 0C 00 39 40
+D6 21 08 49 28 53 19 83 18 83 E8 49 00 00 1A 83
+FA 23 30 4D 3A 40 0E 00 38 40 CA 21 09 48 29 53
+F8 49 00 00 18 53 1A 83 FB 23 30 4D 82 43 CC 21
+30 4D 92 42 CA 21 DA 21 30 4D 3E 8A BC 8A C2 8A
+D2 8A 3A 4E 82 4A C8 21 2E 4E 82 4E C6 21 3D 40
+10 00 09 4A 08 49 29 83 18 48 FE FF 0E 98 FC 2B
+89 48 00 00 1D 83 F6 23 2A 4A 0A 93 F0 23 3E 4F
+3D 41 30 4D 24 88 09 50 57 52 5F 53 54 41 54 45
+84 12 CA 8A 88 8A FC 93 A6 83 09 52 53 54 5F 53
+54 41 54 45 92 42 0E 18 14 8B 92 42 0C 18 16 8B
+EF 3F 06 8B 08 50 57 52 5F 48 45 52 45 00 92 42
+C8 21 14 8B 92 42 C6 21 16 8B 30 4D 1A 8B 08 52
+53 54 5F 48 45 52 45 00 92 42 C8 21 0E 18 92 42
+C6 21 0C 18 EC 3F EC 83 04 57 49 50 45 00 39 40
+10 00 29 83 B9 43 80 FF FC 23 B2 40 04 80 02 80
+B2 40 D8 8B D6 8B B2 40 88 8A 0E 18 B2 40 FC 93
+0C 18 30 12 24 8B B2 40 C8 81 C6 81 B2 40 32 82
+30 82 B2 40 4A 82 48 82 B2 40 18 00 0A 18 37 40
+26 83 36 40 9C 82 35 40 FA 80 34 40 EC 80 B2 40
+0A 00 DC 21 B2 40 20 00 B4 21 30 41 68 8B 04 57
+41 52 4D 00 30 40 D8 8B 3D 40 10 8C 92 C3 30 01
+1E 42 08 18 0E 93 13 24 F2 B2 21 02 02 20 3E E3
+1E 53 F2 D0 0C 00 2B 02 92 D3 9A 05 3E 90 0A 00
+B6 27 3E 90 16 00 B3 2F 2E 93 82 27 8B 2F 30 4D
+2E 80 07 0D 0A 1B 5B 37 6D 23 00 82 9C 83 2E 80
+19 46 61 73 74 46 6F 72 74 68 20 C2 A9 4A 2E 4D
+2E 54 68 6F 6F 72 65 6E 73 20 00 82 24 80 40 FF
+2A 8A A6 82 66 83 2E 80 0A 62 79 74 65 73 20 66
+72 65 65 00 48 80 C8 87 24 8A 04 43 4F 4C 44 00
+92 B3 8A 05 FD 23 B2 40 04 A5 20 01 31 40 E0 20
+B2 40 88 5A CC 01 B2 43 06 02 B2 40 FE FF 02 02
+D2 D3 05 02 F2 D3 26 02 F2 43 22 02 F2 D3 47 02
+F2 40 BF 00 43 02 B2 40 00 A5 60 01 82 43 88 01
+F2 D0 C0 00 0D 02 B2 40 FF 1E 80 01 B2 40 B0 00
+82 01 B2 40 1E 00 84 01 39 40 10 00 92 D2 5E 01
+08 18 38 40 59 14 18 83 FE 23 19 83 FA 23 39 40
+00 10 29 83 89 43 00 20 FC 23 B0 12 0E 80 B2 40
+81 00 80 05 92 42 02 18 86 05 92 42 04 18 88 05
+92 C3 80 05 3F 40 80 20 30 12 D4 8B 55 3F 24 89
+86 5B 54 48 45 4E 5D 00 30 4D 0C 4E 38 4F 3B 4F
+39 4F 0E 4B 0E 5C 10 24 1B 83 06 30 1C 83 04 30
+19 53 F9 98 FF FF F5 27 2D 4D 3E 4F 30 4D 2F 53
+9F 83 00 00 F9 23 2F 53 2D 53 F7 3F 00 8D 86 5B
+45 4C 53 45 5D 00 0D 12 87 12 24 80 00 00 AA 82
+70 86 F2 83 62 86 68 82 4C 80 98 8D 70 82 2E 80
+06 5B 54 48 45 4E 5D 00 0A 8D 72 8D 2E 8D 50 8D
+26 83 70 82 2E 80 06 5B 45 4C 53 45 5D 00 0A 8D
+88 8D 2E 8D 4E 8D 26 83 2E 80 04 5B 49 46 5D 00
+0A 8D 50 8D 48 80 4E 8D 22 82 2E 80 05 0D 0A 6B
+6F 20 00 82 D4 80 C4 80 48 80 50 8D 3E 8D 84 5B
+49 46 5D 00 0E 93 3E 4F C6 27 30 4D 2F 53 30 4D
+AE 8D 89 5B 44 45 46 49 4E 45 44 5D 0D 12 87 12
+70 86 F2 83 4A 84 BC 8D 26 83 C2 8D 8B 5B 55 4E
+44 45 46 49 4E 45 44 5D 0D 12 87 12 CC 8D F0 8D
+3D 41 30 40 B6 82 38 40 C0 21 0A 4E 39 48 2E 48
+09 5E 1E 52 C4 21 09 9E 03 24 7A 9E FC 27 1E 83
+0A 4E 2A 88 82 4A C4 21 30 4D 1C 15 87 12 F2 83
+4A 84 42 80 2E 8E 06 85 4C 80 00 88 48 8E 30 8E
+39 4E 39 80 86 12 08 24 19 53 02 20 2E 4E 04 3C
+2E 53 19 53 01 24 2E 82 1B 17 30 41 3E 40 28 00
+B0 12 1A 8E 19 42 C6 21 A2 53 C6 21 89 4E 00 00
+3E 40 29 00 1C 15 12 12 C4 21 92 53 C4 21 87 12
+F2 83 06 85 4C 80 84 8E 7A 8E 21 53 3E 90 10 00
+80 2D E2 2B 86 8E B2 41 C4 21 DE 3F 0D 12 87 12
+70 86 F6 8D 96 8E 0C 43 1B 42 C6 21 A2 53 C6 21
+6A 4E 3E 4F 7A 90 23 00 27 20 92 53 C4 21 B0 12
+1A 8E 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 C6 21 A2 53 C6 21 89 4E
+00 00 3E 4F 3D 41 30 4D 7A 90 26 00 07 20 3C 40
+10 02 92 53 C4 21 B0 12 1A 8E ED 3F 7A 90 40 00
+16 20 3C 40 20 00 92 53 C4 21 B0 12 64 8E 0C 20
+3C 50 10 00 3E 40 2B 00 B0 12 64 8E 92 92 C0 21
+C4 21 02 24 92 53 C4 21 8E 10 0C 5E DA 3F B0 12
+64 8E FA 23 3C 50 10 00 B0 12 4C 8E EF 3F 0C 43
+1B 42 C6 21 A2 53 C6 21 0D 12 87 12 70 86 F6 8D
+62 8F FE 90 26 00 00 00 3E 40 20 00 03 20 3C 50
+82 00 C7 3F B0 12 64 8E E0 23 3C 50 80 00 B0 12
+4C 8E DB 3F 00 00 04 52 45 54 49 00 0D 12 87 12
+24 80 00 13 F8 85 26 83 24 80 2C 00 8C 8E 58 8F
+A2 8F 09 4B 2E 4E 0E DC A2 3F F6 89 03 4D 4F 56
+84 12 98 8F 00 40 AC 8F 05 4D 4F 56 2E 42 84 12
+98 8F 40 40 00 00 03 41 44 44 84 12 98 8F 00 50
+C6 8F 05 41 44 44 2E 42 84 12 98 8F 40 50 D2 8F
+04 41 44 44 43 00 84 12 98 8F 00 60 E0 8F 06 41
+44 44 43 2E 42 00 84 12 98 8F 40 60 86 8F 04 53
+55 42 43 00 84 12 98 8F 00 70 FE 8F 06 53 55 42
+43 2E 42 00 84 12 98 8F 40 70 0C 90 03 53 55 42
+84 12 98 8F 00 80 1C 90 05 53 55 42 2E 42 84 12
+98 8F 40 80 D2 89 03 43 4D 50 84 12 98 8F 00 90
+36 90 05 43 4D 50 2E 42 84 12 98 8F 40 90 BE 89
+04 44 41 44 44 00 84 12 98 8F 00 A0 50 90 06 44
+41 44 44 2E 42 00 84 12 98 8F 40 A0 42 90 03 42
+49 54 84 12 98 8F 00 B0 6E 90 05 42 49 54 2E 42
+84 12 98 8F 40 B0 7A 90 03 42 49 43 84 12 98 8F
+00 C0 88 90 05 42 49 43 2E 42 84 12 98 8F 40 C0
+94 90 03 42 49 53 84 12 98 8F 00 D0 A2 90 05 42
+49 53 2E 42 84 12 98 8F 40 D0 00 00 03 58 4F 52
+84 12 98 8F 00 E0 BC 90 05 58 4F 52 2E 42 84 12
+98 8F 40 E0 EE 8F 03 41 4E 44 84 12 98 8F 00 F0
+D6 90 05 41 4E 44 2E 42 84 12 98 8F 40 F0 70 86
+8C 8E F4 90 0A 4C 3C F0 70 00 8A 10 3A F0 0F 00
+0C DA 4F 3F 28 90 03 52 52 43 84 12 EE 90 00 10
+06 91 05 52 52 43 2E 42 84 12 EE 90 40 10 12 91
+04 53 57 50 42 00 84 12 EE 90 80 10 20 91 03 52
+52 41 84 12 EE 90 00 11 2E 91 05 52 52 41 2E 42
+84 12 EE 90 40 11 3A 91 03 53 58 54 84 12 EE 90
+80 11 00 00 04 50 55 53 48 00 84 12 EE 90 00 12
+54 91 06 50 55 53 48 2E 42 00 84 12 EE 90 40 12
+AE 90 04 43 41 4C 4C 00 84 12 EE 90 80 12 1A 53
+0E 4A 0D 12 87 12 9C 83 2E 80 0D 6F 75 74 20 6F
+66 20 62 6F 75 6E 64 73 7A 87 70 86 F6 8D A0 91
+92 53 C4 21 3E 40 2C 00 87 12 F2 83 06 85 4C 80
+00 88 4E 8F B6 91 0A 4E 3E 4F 1A 83 E0 33 29 4E
+59 0E 0A 28 08 4C 59 0A 01 28 0C 8A 08 8A 38 90
+10 00 D5 2F 5A 0E 94 3F 2A 92 D1 2F 8A 10 5A 06
+8F 3F 48 91 04 52 52 43 4D 00 84 12 9A 91 50 00
+E4 91 04 52 52 41 4D 00 84 12 9A 91 50 01 F2 91
+04 52 4C 41 4D 00 84 12 9A 91 50 02 00 92 04 52
+52 55 4D 00 84 12 9A 91 50 03 62 91 05 50 55 53
+48 4D 84 12 9A 91 00 15 1C 92 04 50 4F 50 4D 00
+84 12 9A 91 00 17 0E 92 03 53 3E 3D 85 12 00 38
+38 92 02 53 3C 00 85 12 00 34 2A 92 03 30 3E 3D
+85 12 00 30 4C 92 02 30 3C 00 85 12 00 30 00 00
+02 55 3C 00 85 12 00 2C 60 92 03 55 3E 3D 85 12
+00 28 56 92 03 30 3C 3E 85 12 00 24 74 92 02 30
+3D 00 85 12 00 20 00 00 02 49 46 00 1A 42 C6 21
+8A 4E 00 00 A2 53 C6 21 0E 4A 30 4D 6A 92 04 54
+48 45 4E 00 1A 42 C6 21 08 4E 3E 4F 09 48 29 53
+0A 89 0A 11 3A 90 00 02 63 2F 88 DA 00 00 30 4D
+5E 90 04 45 4C 53 45 00 1A 42 C6 21 BA 40 00 3C
+00 00 A2 53 C6 21 2F 83 8F 4A 00 00 E3 3F 9E 92
+05 55 4E 54 49 4C 3A 4F 08 4E 3E 4F 19 42 C6 21
+2A 83 0A 89 0A 11 3A 90 00 FE 42 3B 3A F0 FF 03
+08 DA 89 48 00 00 A2 53 C6 21 30 4D E2 90 05 41
+47 41 49 4E 0A 4E 38 40 00 3C E7 3F 00 00 05 57
+48 49 4C 45 0D 12 87 12 8C 92 82 82 26 83 42 92
+06 52 45 50 45 41 54 00 0D 12 87 12 14 93 A4 92
+26 83 44 93 3D 41 08 4E 3E 4F 2A 48 B2 92 C4 21
+CB 2F 98 42 C6 21 00 00 30 4D 72 91 03 42 57 31
+84 12 42 93 00 00 5C 93 03 42 57 32 84 12 42 93
+00 00 68 93 03 42 57 33 84 12 42 93 00 00 80 93
+3D 41 1A 42 C6 21 28 4E B2 92 C4 21 8E 2B BA 4F
+00 00 A2 53 C6 21 8E 4A 00 00 3E 4F 30 4D 00 00
+03 46 57 31 84 12 7E 93 00 00 A0 93 03 46 57 32
+84 12 7E 93 00 00 AC 93 03 46 57 33 84 12 7E 93
+00 00 B8 93 04 47 4F 54 4F 00 2F 83 8F 4E 00 00
+3E 40 00 3C 0D 12 87 12 F0 87 18 86 26 83 00 00
+05 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
 @FFFE
-9C 8E
+6C 8C
 q
index 80b0a1a..6b0b961 100644 (file)
 @1800
-10 00 0D 00 01 49 C0 5D 05 00 18 00 68 96 D0 8C
-2D 01 6B B0 B6 82 C8 82
+10 00 0D 00 01 49 C0 5D 05 00 18 00 0C 94 88 8A
+2E 01 6B B0 06 81 18 81 D4 8B
 @8000
-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 3A 41 0D 12 0D 4A
-30 4D 00 00 04 45 58 49 54 00 3D 41 30 4D 24 80
-03 44 55 50 2F 83 8F 4E 00 00 30 4D 00 00 04 32
-44 55 50 00 8F 4E FE FF AF 4F FC FF 2F 82 30 4D
-00 00 04 3F 44 55 50 00 0E 93 EC 23 30 4D 30 80
-04 44 52 4F 50 00 3E 4F 30 4D 2F 53 30 4D 3E 80
-04 53 57 41 50 00 2A 4F 8F 4E 00 00 0E 4A 30 4D
-52 80 02 3E 52 00 0E 12 3E 4F 30 4D 70 80 02 52
-3E 00 2F 83 8F 4E 00 00 3E 41 30 4D 60 80 05 44
-45 50 54 48 8F 4E FE FF 3E 40 80 20 0E 8F 0E 11
-2F 83 30 4D 00 00 01 2D 3E 8F 3E E3 1E 53 30 4D
-00 00 02 31 2B 00 1E 53 30 4D C2 80 02 31 2D 00
-1E 83 30 4D 3E F3 06 34 BF E3 00 00 3E E3 9F 53
-00 00 0E 63 30 4D 00 00 01 40 2E 4E 30 4D E8 80
-01 21 BE 4F 00 00 3E 4F 30 4D CC 80 02 30 3D 00
-1E 83 0E 7E 30 4D FC 80 02 30 3C 00 0E 5E 0E 7E
-3E E3 30 4D 00 00 01 3D 3E 8F FA 27 0E F3 30 4D
-00 00 02 55 3C 00 3E 8F F9 2B 01 24 3E 43 30 4D
-16 81 02 3C 23 00 B2 40 B2 21 B2 21 30 4D 0B 4E
+30 40 04 80 B0 12 06 81 12 D2 0A 18 F9 3F 39 40
+32 00 29 83 B9 40 6C 8C CE FF FB 23 B2 40 68 81
+E2 FF 30 41 2F 83 8F 4E 00 00 3E 4D 30 4D 2F 82
+8F 4E 02 00 7E 4D 8F 4D 00 00 0D 5E 1D B3 0D 63
+30 4D 0E 93 3E 4F 05 24 2D 4D 30 4D 0E 93 3E 4F
+FB 27 2D 53 30 4D 39 40 00 80 39 8F 08 4E 3E 4F
+08 59 19 15 30 4D 81 5E 00 00 3E 4F 32 B0 00 01
+EB 27 21 52 2D 53 30 4D 91 53 00 00 F7 3F 0B 4E
 1C 4F 02 00 2E 4F 0A 43 34 40 20 00 0E 93 04 20
 04 11 0E 4C 0C 43 09 43 0A 9B 01 28 0A 8B 09 69
 08 68 14 83 07 30 0C 5C 0E 6E 0A 6A F5 2B 0A 8B
-12 D3 F5 3F 34 40 00 80 8F 4A 02 00 8F 49 00 00
-0E 48 30 41 00 00 01 23 1B 42 DC 21 2C 4F 2F 83
-B0 12 46 81 BF 4F 00 00 7A 90 0A 00 02 28 7A 50
-07 00 7A 50 30 00 92 83 B2 21 18 42 B2 21 C8 4A
-00 00 30 4D 86 81 02 23 53 00 87 12 88 81 C0 81
-2D 83 09 93 E3 23 0E 93 E1 23 3D 41 30 4D B6 81
-02 23 3E 00 9F 42 B2 21 00 00 3E 40 B2 21 2E 8F
-30 4D 00 00 04 48 4F 4C 44 00 0A 4E 3E 4F DB 3F
-8E 80 04 53 49 47 4E 00 0E 93 3E 4F 3A 40 2D 00
-D2 33 30 4D 87 12 36 81 34 80 86 80 D4 80 BA 81
-92 80 F8 81 D4 81 D6 83 42 87 82 83 2A 80 22 81
-02 55 2E 00 08 43 2F 83 8F 4E 00 00 0E 48 EA 3F
-00 00 01 2E 0E 93 F6 37 38 43 F5 3F 2D 4D 30 4D
-0E 93 3E 4F FB 27 2D 53 30 4D 0E 93 3E 4F F6 23
-2D 53 30 4D 39 40 00 80 39 8F 08 4E 3E 4F 08 59
-19 15 30 4D 81 5E 00 00 3E 4F 32 B0 00 01 E6 27
-2D 53 21 52 30 4D 91 53 00 00 F7 3F E4 81 01 49
-2F 83 8F 4E 00 00 2E 41 1E 81 02 00 30 4D 00 00
-03 4B 45 59 30 40 98 82 18 42 8C 05 2F 83 8F 4E
-00 00 B0 12 B6 82 92 B3 9C 05 FD 27 1E 42 8C 05
-B0 12 C8 82 30 4D A2 B3 9C 05 FD 27 B2 40 11 00
-8E 05 D2 C3 03 02 30 41 B2 40 13 00 8E 05 D2 D3
-03 02 30 41 00 00 05 53 4C 45 45 50 30 40 E0 82
-B0 12 B6 82 12 D2 0A 18 F9 3F F0 80 06 41 43 43
-45 50 54 00 3C 40 64 83 3B 40 2E 83 2D 15 0A 4E
-2E 4F 0A 5E 3B 40 0D 00 3C 40 20 00 3D 40 58 83
-92 B3 9C 05 05 24 18 42 8C 05 38 90 0A 00 CB 23
-21 53 3D 15 DB 3F 21 52 3A 17 58 42 8C 05 48 9C
-08 2C 48 9B C9 27 78 92 11 20 2E 9F 0F 24 1E 83
-05 3C 0E 9A 03 24 CE 48 00 00 1E 53 A2 B3 9C 05
-FD 27 82 48 8E 05 30 4D 5A 83 2D 83 92 B3 9C 05
-E4 23 FC 27 82 93 DE 21 02 24 92 53 DE 21 3E 8F
-3D 41 B2 40 18 00 0A 18 30 4D 9E 80 04 45 4D 49
-54 00 30 40 86 83 08 4E 3E 4F E0 3F 3F 80 06 00
-8F 4E 04 00 3E 40 54 00 BF 40 3C 21 00 00 AF 4F
-02 00 A8 3F 7C 83 04 45 43 48 4F 00 B2 40 82 48
-52 83 82 43 DE 21 30 4D 32 82 06 4E 4F 45 43 48
-4F 00 B2 40 30 4D 52 83 92 43 DE 21 30 4D 20 82
-04 54 59 50 45 00 0E 93 0F 24 1E 15 3D 40 EC 83
-28 4F 7E 48 8F 48 00 00 2F 83 CB 3F EE 83 2D 83
-91 83 02 00 F5 23 1D 17 2F 53 3E 4F 30 4D D0 81
-02 43 52 00 30 40 08 84 87 12 1E 84 02 0D 0A 00
-D6 83 2A 80 2F 83 8F 4E 00 00 3E 4D 30 4D 2F 82
-8F 4E 02 00 7E 4D 8F 4D 00 00 0D 5E 1D B3 0D 63
-30 4D F2 81 82 53 22 00 82 43 B4 21 87 12 14 84
-1E 84 B0 86 14 84 22 00 80 84 4C 84 B2 40 20 00
-B4 21 6E 4E 1E 53 1E B3 82 6E C6 21 3D 41 3E 4F
-30 4D BA 83 82 2E 22 00 87 12 38 84 14 84 D6 83
-B0 86 2A 80 48 43 05 3C 00 00 04 57 4F 52 44 00
-48 4E 19 42 C0 21 1A 42 C2 21 09 5A 1A 52 C4 21
-09 9A 03 24 7E 9A FC 27 1A 83 4E F8 06 20 0E 4A
-1A 82 C2 21 82 4A C4 21 30 4D 18 42 C6 21 3B 40
-60 00 C8 4C 00 00 09 9A 0C 24 7C 4A 4E 9C 09 24
-18 53 4B 9C F6 2F 7C 90 7B 00 F3 2F 5C 82 B4 21
-F0 3F 1A 82 C2 21 82 4A C4 21 1E 42 C6 21 08 8E
-CE 48 00 00 30 4D 00 00 04 46 49 4E 44 00 2F 83
-0C 4E 65 4C 74 40 80 00 3B 40 CA 21 3E 4B 0E 93
-1E 24 58 4C 01 00 78 F0 1E 00 0E 58 2E 53 1E 4E
-FE FF 0E 93 F3 27 09 4E 78 49 48 C4 48 95 F7 23
-0A 4C FA 99 01 00 F3 23 1A 53 58 83 FA 23 19 B3
-09 63 0C 49 6A 4E 1E 43 4A 93 01 30 2E 83 8F 4C
-00 00 35 40 0E 80 34 40 00 80 30 4D 82 80 07 3E
-4E 55 4D 42 45 52 3C 4F 38 4F 29 4F 2F 82 1B 42
-DC 21 6A 4C 7A 80 30 00 7A 90 0A 00 05 28 7A 80
-07 00 7A 90 0A 00 12 28 0A 9B 22 C3 0F 2C 82 49
-D0 04 82 48 D2 04 82 4B C8 04 19 42 E4 04 18 42
-E6 04 09 5A 08 63 1C 53 1E 83 E3 23 8F 4C 00 00
-8F 48 02 00 8F 49 04 00 30 4D 32 C0 00 02 1B 42
-DC 21 0C 43 2D 15 3D 40 F4 85 09 43 08 43 3F 82
-8F 4E 06 00 0C 4E 7E 4C 6A 4C 7A 90 2D 00 04 28
-C9 23 B1 43 02 00 DF 3F 2B 43 7A 80 25 00 07 24
-3B 52 6A 53 04 24 3B 40 10 00 5A 83 BA 23 1C 53
-1E 83 EA 3F F6 85 2F 24 2D 83 7A 90 28 00 CB 27
-32 D0 00 02 7A 90 F7 00 C6 27 7A 90 F5 00 23 20
-0A 4E 09 43 8F 49 02 00 5A 83 09 4A 09 5C 69 49
-79 80 30 00 79 90 0A 00 05 28 79 80 07 00 79 90
-0A 00 0A 28 09 9B 08 2C 8F 49 00 00 0E 4B 2C 15
-B0 12 3E 81 2A 17 E6 3F 9F 4F 04 00 02 00 AF 4F
-04 00 0E 4A 4E 93 2B 17 0E 4C 82 4B DC 21 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 7E 82 04 48 45 52 45 00
-2F 83 8F 4E 00 00 1E 42 C6 21 30 4D B6 80 01 2C
-1A 42 C6 21 8A 4E 00 00 A2 53 C6 21 3E 4F 30 4D
-EC 82 05 41 4C 4C 4F 54 82 5E C6 21 3E 4F 30 4D
-A6 83 07 45 58 45 43 55 54 45 0A 4E 3E 4F 00 4A
-AE 86 87 4C 49 54 45 52 41 4C 82 93 BE 21 0C 24
-1A 42 C6 21 A2 52 C6 21 BA 40 14 84 00 00 8A 4E
-02 00 3E 4F 32 B0 00 02 32 C0 00 02 06 24 19 4A
-02 00 8A 4E 02 00 0E 49 EB 3F 30 4D 00 84 05 43
-4F 55 4E 54 2F 83 1E 53 8F 4E 00 00 5E 4E FF FF
-30 4D 82 4E C0 21 B2 4F C2 21 3E 4F 82 43 C4 21
-30 4D 85 12 20 00 87 12 32 87 42 87 80 84 50 87
-3D 40 58 87 CC 22 82 3E 5A 87 0A 4E 3E 4F 3D 40
-70 87 23 27 3D 40 4A 87 1A E2 BE 21 A1 27 B5 23
-72 87 3E 4F 3D 40 4A 87 B8 23 DE 53 00 00 68 4E
-08 5E F8 40 3F 00 00 00 3D 40 26 8A CB 3F D2 86
+12 D3 F5 3F 34 40 EC 80 8F 4A 02 00 8F 49 00 00
+0E 48 30 41 82 4E C0 21 B2 4F C2 21 3E 4F 82 43
+C4 21 30 4D 3F 80 06 00 8F 4E 04 00 3E 40 54 00
+BF 40 3C 21 00 00 AF 4F 02 00 24 3C 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 A2 B3 9C 05 FD 27 B2 40 11 00
+8E 05 D2 C3 03 02 30 41 A2 B3 9C 05 FD 27 B2 40
+13 00 8E 05 D2 D3 03 02 30 41 00 00 06 41 43 43
+45 50 54 00 3C 40 A6 81 3B 40 70 81 2D 15 0A 4E
+2E 4F 0A 5E 3B 40 0D 00 3C 40 20 00 3D 40 9A 81
+92 B3 9C 05 05 24 18 42 8C 05 38 90 0A 00 D3 23
+21 53 3D 15 30 40 00 80 21 52 3A 17 58 42 8C 05
+48 9C 08 2C 48 9B D0 27 78 92 11 20 2E 9F 0F 24
+1E 83 05 3C 0E 9A 03 24 CE 48 00 00 1E 53 A2 B3
+9C 05 FD 27 82 48 8E 05 30 4D 9C 81 2D 83 92 B3
+9C 05 E4 23 FC 27 82 93 DE 21 02 24 92 53 DE 21
+3E 8F 3D 41 B2 40 18 00 0A 18 30 4D 00 00 04 45
+4D 49 54 00 30 40 C8 81 08 4E 3E 4F E0 3F BE 81
+04 45 43 48 4F 00 B2 40 82 48 94 81 82 43 DE 21
+30 4D 00 00 06 4E 4F 45 43 48 4F 00 B2 40 30 4D
+94 81 92 43 DE 21 30 4D 00 00 04 54 59 50 45 00
+0E 93 0F 24 1E 15 3D 40 16 82 28 4F 7E 48 8F 48
+00 00 2F 83 D7 3F 18 82 2D 83 91 83 02 00 F5 23
+1D 17 2F 53 3E 4F 30 4D 00 00 02 43 52 00 30 40
+32 82 0D 12 87 12 2E 80 02 0D 0A 00 00 82 26 83
+00 00 03 4B 45 59 30 40 4A 82 18 42 8C 05 2F 83
+8F 4E 00 00 B0 12 06 81 92 B3 9C 05 FD 27 1E 42
+8C 05 B0 12 18 81 30 4D 2F 83 8F 4E 00 00 30 4D
+8F 4E FE FF AF 4F FC FF 2F 82 30 4D 0E 93 F4 23
+30 4D 2A 4F 8F 4E 00 00 0E 4A 30 4D 8F 4E FE FF
+3E 40 80 20 0E 8F 0E 11 2F 83 30 4D 2F 83 8F 4E
+00 00 3E 41 30 4D 3E 8F 3E E3 1E 53 30 4D BE 4F
+00 00 3E 4F 30 4D 1E 83 0E 7E 30 4D 0E 5E 0E 7E
+3E E3 30 4D 3E 8F 03 24 3E 43 01 2C 0E F3 30 4D
+00 00 02 3C 23 00 B2 40 B2 21 B2 21 30 4D 2A 82
+01 23 1B 42 DC 21 2C 4F 2F 83 B0 12 86 80 BF 4F
+00 00 7A 90 0A 00 02 28 7A 50 07 00 7A 50 30 00
+92 83 B2 21 18 42 B2 21 C8 4A 00 00 30 4D E0 82
+02 23 53 00 0D 12 87 12 E2 82 1C 83 2D 83 09 93
+E2 23 0E 93 E0 23 3D 41 30 4D 10 83 02 23 3E 00
+9F 42 B2 21 00 00 3E 40 B2 21 2E 8F 30 4D 00 00
+04 48 4F 4C 44 00 4A 4E 3E 4F DA 3F 00 00 04 53
+49 47 4E 00 0E 93 3E 4F 7A 40 2D 00 D1 33 30 4D
+FA 81 02 55 2E 00 08 43 2F 83 8F 4E 00 00 0E 48
+0D 12 0E 12 3E F3 06 34 BF E3 00 00 3E E3 9F 53
+00 00 0E 63 87 12 D6 82 14 83 9C 82 54 83 30 83
+00 82 70 86 C4 81 26 83 E4 81 01 2E 0E 93 E3 37
+38 43 E2 3F 4E 83 82 53 22 00 82 43 B4 21 0D 12
+87 12 24 80 2E 80 F8 85 24 80 22 00 F2 83 C0 83
+B2 40 20 00 B4 21 6E 4E 1E 53 1E B3 82 6E C6 21
+3D 41 3E 4F 30 4D 9A 83 82 2E 22 00 0D 12 87 12
+AA 83 24 80 00 82 F8 85 26 83 00 00 04 57 4F 52
+44 00 3C 40 C0 21 39 4C 3A 4C 09 5A 3A 5C 28 4C
+09 9A 15 24 7E 9A FC 27 1A 83 3B 40 60 00 C8 4C
+00 00 09 9A 0C 24 7C 4A 4E 9C 09 24 18 53 4B 9C
+F6 2F 7C 90 7B 00 F3 2F 5C 82 B4 21 F0 3F 1A 82
+C2 21 82 4A C4 21 1E 42 C6 21 08 8E CE 48 00 00
+30 4D 00 00 04 46 49 4E 44 00 2F 83 0C 4E 65 4C
+74 40 80 00 3B 40 CA 21 3E 4B 0E 93 1E 24 58 4C
+01 00 78 F0 1E 00 0E 58 2E 53 1E 4E FE FF 0E 93
+F3 27 09 4E 78 49 48 C4 48 95 F7 23 0A 4C FA 99
+01 00 F3 23 1A 53 58 83 FA 23 19 B3 09 63 0C 49
+6A 4E 1E 43 4A 93 01 30 2E 83 8F 4C 00 00 35 40
+FA 80 34 40 EC 80 30 4D 00 00 07 3E 4E 55 4D 42
+45 52 3C 4F 38 4F 29 4F 2F 82 1B 42 DC 21 6A 4C
+7A 80 30 00 7A 90 0A 00 05 28 7A 80 07 00 7A 90
+0A 00 12 28 0A 9B 22 C3 0F 2C 82 49 D0 04 82 48
+D2 04 82 4B C8 04 19 42 E4 04 18 42 E6 04 09 5A
+08 63 1C 53 1E 83 E3 23 8F 4C 00 00 8F 48 02 00
+8F 49 04 00 30 4D 32 C0 00 02 1B 42 DC 21 0C 43
+2D 15 3D 40 50 85 09 43 08 43 3F 82 8F 4E 06 00
+0C 4E 7E 4C 6A 4C 7A 90 2D 00 04 28 C9 23 B1 43
+02 00 0B 3C 2B 43 7A 80 25 00 07 24 3B 52 6A 53
+04 24 3B 40 10 00 5A 83 BA 23 1C 53 1E 83 EA 3F
+52 85 2F 24 2D 83 7A 90 28 00 CB 27 32 D0 00 02
+7A 90 F7 00 C6 27 7A 90 F5 00 23 20 0A 4E 09 43
+8F 49 02 00 5A 83 09 4A 09 5C 69 49 79 80 30 00
+79 90 0A 00 05 28 79 80 07 00 79 90 0A 00 0A 28
+09 9B 08 2C 8F 49 00 00 0E 4B 2C 15 B0 12 7E 80
+2A 17 E6 3F 9F 4F 04 00 02 00 AF 4F 04 00 0E 4A
+4E 93 2B 17 0E 4C 82 4B DC 21 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 00 00 01 2C 1A 42 C6 21 8A 4E 00 00
+A2 53 C6 21 3E 4F 30 4D 2C 81 05 41 4C 4C 4F 54
+82 5E C6 21 3E 4F 30 4D 0A 4E 3E 4F 00 4A F6 85
+87 4C 49 54 45 52 41 4C 82 93 BE 21 0C 24 1A 42
+C6 21 A2 52 C6 21 BA 40 24 80 00 00 8A 4E 02 00
+3E 4F 32 B0 00 02 32 C0 00 02 06 24 19 4A 02 00
+8A 4E 02 00 0E 49 EB 3F 30 4D 2C 83 05 43 4F 55
+4E 54 2F 83 1E 53 8F 4E 00 00 5E 4E FF FF 30 4D
+85 12 20 00 0D 12 87 12 C4 80 70 86 F2 83 80 86
+3D 40 88 86 E2 22 A4 26 8A 86 0A 4E 3E 4F 3D 40
+A0 86 39 27 3D 40 7A 86 1A E2 BE 21 BD 23 AC 27
+A2 86 3E 4F 3D 40 7A 86 BF 23 DE 53 00 00 68 4E
+08 5E F8 40 3F 00 00 00 3D 40 20 89 D2 3F D0 81
 08 45 56 41 4C 55 41 54 45 00 39 40 C0 21 3C 49
-3B 49 3A 49 3D 15 B0 12 2A 80 46 87 AE 87 B2 41
-C4 21 B2 41 C2 21 B2 41 C0 21 3D 41 30 4D 85 12
-BE 21 08 81 04 51 55 49 54 00 82 43 08 18 31 40
-E0 20 B2 40 00 20 00 20 82 43 BE 21 B0 12 2A 80
-04 84 8C 83 42 87 82 83 46 87 A4 80 0C 81 1E 84
-0C 73 74 61 63 6B 20 65 6D 70 74 79 21 00 40 88
-14 84 30 FF A0 86 26 81 1E 84 0A 46 52 41 4D 20
-66 75 6C 6C 21 00 40 88 3C 82 E0 87 C2 86 05 41
-42 4F 52 54 3F 40 80 20 D0 3F 1E 88 86 41 42 4F
-52 54 22 00 87 12 38 84 14 84 40 88 B0 86 2A 80
-8F 93 02 00 03 20 2F 52 3E 4F 30 4D B0 12 C8 8D
-B0 12 B6 82 92 C3 9C 05 38 40 F0 FF 39 42 03 43
-19 83 FD 23 18 83 FA 23 92 B3 9C 05 F3 23 87 12
-42 8D 14 84 DE 21 EA 80 AC 83 1E 84 04 1B 5B 37
-6D 00 D6 83 58 80 40 82 9A 88 04 84 1E 84 05 6C
-69 6E 65 3A D6 83 D0 80 24 82 D6 83 1E 84 04 1B
-5B 30 6D 00 D6 83 24 88 00 00 83 5B 27 5D 87 12
-C0 88 14 84 14 84 B0 86 B0 86 2A 80 E8 84 01 27
-87 12 42 87 80 84 EE 84 40 82 CE 88 2A 80 7A 87
-32 81 81 5C 92 42 C0 21 C4 21 30 4D AA 88 81 5B
-82 43 BE 21 30 4D D2 88 01 5D B2 43 BE 21 30 4D
-BE 4F 02 00 3E 4F 30 4D 9A 86 82 49 53 00 87 12
-BE 87 EA 80 40 82 12 89 AE 88 14 84 F0 88 B0 86
-2A 80 C0 88 F0 88 2A 80 FA 88 09 49 4D 4D 45 44
-49 41 54 45 1A 42 B6 21 FA D0 80 00 00 00 30 4D
-C4 87 88 50 4F 53 54 50 4F 4E 45 00 87 12 42 87
-80 84 EE 84 58 80 40 82 CE 88 0C 81 40 82 5C 89
-14 84 14 84 B0 86 B0 86 14 84 B0 86 B0 86 2A 80
-DE 88 81 3B 82 93 BE 21 B5 27 87 12 14 84 2A 80
-B0 86 FA 89 E0 88 2A 80 62 89 07 3A 4E 4F 4E 41
-4D 45 30 12 A0 89 2F 83 8F 4E 00 00 1E 42 C6 21
-1E B3 0E 63 0A 4E 39 40 00 02 38 40 02 02 21 3C
-BA 40 87 12 FC FF A2 83 C6 21 B2 43 BE 21 30 4D
-7A 89 01 3A 30 12 A0 89 92 B3 C6 21 A2 63 C6 21
-87 12 42 87 80 84 C8 89 3D 41 08 4E 7A 4E 5A D3
-5A 53 0A 58 19 42 DA 21 6E 4E 3E F0 1E 00 09 5E
-3E 4F 82 48 B6 21 82 49 B8 21 82 4A BA 21 82 4F
-BC 21 2A 52 82 4A C6 21 30 41 82 9F BC 21 09 20
-18 42 B6 21 19 42 B8 21 A8 49 FE FF 89 48 00 00
-30 4D 87 12 1E 84 0F 73 74 61 63 6B 20 6D 69 73
-6D 61 74 63 68 21 4C 88 90 87 05 44 45 46 45 52
-B0 12 B8 89 BA 40 30 40 FC FF BA 40 AE 89 FE FF
-E3 3F 1E 87 06 43 52 45 41 54 45 00 B0 12 B8 89
-BA 40 85 12 FC FF 8A 4A FE FF D6 3F 2A 8A 05 44
-4F 45 53 3E 1A 42 BA 21 BA 40 84 12 00 00 8A 4D
-02 00 3D 41 30 4D 4E 85 05 3E 42 4F 44 59 2E 52
-30 4D 44 8A 04 43 4F 44 45 00 B0 12 B8 89 A2 82
-C6 21 87 12 D2 8C AC 8C 2A 80 84 8A 07 43 4F 44
-45 4E 4E 4D B0 12 86 89 F2 3F 00 00 07 45 4E 44
-43 4F 44 45 87 12 E0 8C FA 89 2A 80 2C 88 03 41
-53 4D B2 40 B0 8C DA 21 E0 3F AC 8A 06 45 4E 44
-41 53 4D 00 87 12 B4 8A F4 8C 2A 80 00 00 05 43
-4F 4C 4F 4E 1A 42 C6 21 BA 40 87 12 00 00 A2 53
-C6 21 B2 43 BE 21 30 40 E0 8C 00 00 05 4C 4F 32
-48 49 1A 42 C6 21 BA 40 B0 12 00 00 BA 40 2A 80
-02 00 A2 52 C6 21 ED 3F 1A 89 85 48 49 32 4C 4F
-87 12 A0 86 4A 8B B0 86 E0 88 D2 8C AC 8C 2A 80
-1A 8B 82 49 46 00 2F 83 8F 4E 00 00 1E 42 C6 21
-A2 52 C6 21 BE 40 40 82 00 00 2E 53 30 4D 5E 8A
-84 45 4C 53 45 00 A2 52 C6 21 1A 42 C6 21 BA 40
-3C 82 FC FF 8E 4A 00 00 2A 83 0E 4A 30 4D D0 83
-84 54 48 45 4E 00 9E 42 C6 21 00 00 3E 4F 30 4D
-9C 8A 85 42 45 47 49 4E 30 40 A0 86 70 8B 85 55
-4E 54 49 4C 39 40 40 82 A2 52 C6 21 1A 42 C6 21
-8A 49 FC FF 8A 4E FE FF 3E 4F 30 4D BE 8A 85 41
-47 41 49 4E 39 40 3C 82 EF 3F 7A 84 85 57 48 49
-4C 45 87 12 36 8B 76 80 2A 80 34 84 86 52 45 50
-45 41 54 00 87 12 B4 8B 76 8B 2A 80 50 8B 82 44
-4F 00 2F 83 8F 4E 00 00 A2 53 C6 21 1E 42 C6 21
-BE 40 54 82 FE FF A2 53 00 20 1A 42 00 20 8A 43
-00 00 30 4D E2 86 84 4C 4F 4F 50 00 39 40 76 82
-A2 52 C6 21 1A 42 C6 21 8A 49 FC FF 8A 4E FE FF
-1E 42 00 20 A2 83 00 20 2E 4E 0E 93 03 24 8E 4A
-00 00 F6 3F 3E 4F 30 4D 90 82 85 2B 4C 4F 4F 50
-39 40 64 82 E5 3F 06 8C 04 4D 4F 56 45 00 0A 4E
-38 4F 39 4F 3E 4F 0A 93 11 24 08 99 0F 24 06 2C
-F8 49 00 00 18 53 1A 83 FB 23 30 4D 08 5A 09 5A
-19 83 18 83 E8 49 00 00 1A 83 FA 23 30 4D 14 84
-CA 21 F2 80 2A 80 84 12 7E 8C AE 8B 4E 8F DE 8B
-BE 88 32 8B 3A 8C 62 90 64 84 66 8D 80 8D 8E 8B
-00 8E 00 00 34 90 E8 88 78 8A 00 00 84 12 7E 8C
-80 95 E2 95 34 95 56 96 FA 94 00 00 2A 92 00 00
-F0 94 A0 95 52 95 90 95 3A 93 00 00 00 00 32 96
-AA 8C 3A 40 0C 00 39 40 CA 21 38 40 CC 21 C6 3F
-3A 40 0E 00 39 40 CC 21 38 40 CA 21 B9 3F 82 43
-CC 21 30 4D 92 42 CA 21 DA 21 30 4D 86 8C EE 8C
-F4 8C 04 8D 3A 4E 82 4A C8 21 2E 4E 82 4E C6 21
-3D 40 10 00 09 4A 08 49 29 83 18 48 FE FF 0E 98
-FC 2B 89 48 00 00 1D 83 F6 23 2A 4A 0A 93 F0 23
-3E 4F 3D 41 30 4D 32 89 09 50 57 52 5F 53 54 41
-54 45 84 12 FC 8C D0 8C 68 96 CC 8B 09 52 53 54
-5F 53 54 41 54 45 92 42 0E 18 46 8D 92 42 0C 18
-48 8D EF 3F 38 8D 08 50 57 52 5F 48 45 52 45 00
-92 42 C8 21 46 8D 92 42 C6 21 48 8D 30 4D 4C 8D
-08 52 53 54 5F 48 45 52 45 00 92 42 C8 21 0E 18
-92 42 C6 21 0C 18 EC 3F BC 8B 04 57 49 50 45 00
-39 40 10 00 29 83 B9 43 80 FF FC 23 B2 40 E0 82
-DE 82 B2 40 0A 8E 08 8E B2 40 D0 8C 0E 18 B2 40
-68 96 0C 18 30 12 56 8D B2 40 86 83 84 83 B2 40
-08 84 06 84 B2 40 98 82 96 82 B2 40 18 00 0A 18
-37 40 1A 80 36 40 92 80 35 40 0E 80 34 40 00 80
-B2 40 0A 00 DC 21 B2 40 20 00 B4 21 30 41 9A 8D
-04 57 41 52 4D 00 30 40 0A 8E 3D 40 3E 8E 92 C3
-30 01 1E 42 08 18 0E 93 11 24 F2 B2 21 02 02 20
-3E E3 1E 53 F2 D0 0C 00 2B 02 3E 90 0A 00 B8 27
-3E 90 16 00 B5 2F 2E 93 84 27 8D 2F 30 4D 1E 84
-06 0D 1B 5B 37 6D 23 00 D6 83 34 82 1E 84 19 46
-61 73 74 46 6F 72 74 68 20 C2 A9 4A 2E 4D 2E 54
-68 6F 6F 72 65 6E 73 20 D6 83 14 84 30 FF A0 86
-B8 80 24 82 1E 84 0A 62 79 74 65 73 20 66 72 65
-65 00 3C 82 9A 88 82 8B 04 43 4F 4C 44 00 92 B3
-8A 05 FD 23 B2 40 04 A5 20 01 3E 8E B2 40 88 5A
-CC 01 B2 43 06 02 B2 40 FE FF 02 02 D2 D3 05 02
-F2 D3 26 02 F2 43 22 02 F2 D3 47 02 F2 40 BF 00
-43 02 F2 40 A5 00 A1 01 F2 40 20 00 A0 01 D2 43
-A1 01 B2 40 00 A5 60 01 82 43 88 01 B2 40 FF 1E
-80 01 B2 40 BE 00 82 01 B2 40 DC 02 84 01 39 40
-80 01 92 D2 5E 01 08 18 38 40 59 14 18 83 FE 23
-19 83 FA 23 39 40 00 10 29 83 89 43 00 20 FC 23
-39 40 32 00 29 83 B9 40 9C 8E CE FF FB 23 B2 40
-26 83 E2 FF B2 40 81 00 80 05 92 42 02 18 86 05
-92 42 04 18 88 05 92 C3 80 05 92 D3 9A 05 3F 40
-80 20 31 40 E0 20 30 12 06 8E 47 3F 88 8E 07 43
-4F 4D 50 41 52 45 0C 4E 38 4F 3B 4F 39 4F 0E 4B
-0E 5C 0C 24 1B 83 07 30 1C 83 07 30 19 53 F9 98
-FF FF F5 27 02 2C 3E 43 30 4D 1E 43 30 4D B2 89
-86 5B 54 48 45 4E 5D 00 30 4D 80 8F 86 5B 45 4C
-53 45 5D 00 87 12 14 84 00 00 C6 80 42 87 80 84
-24 87 34 80 40 82 F6 8F 44 80 1E 84 06 5B 54 48
-45 4E 5D 00 56 8F 4A 82 C6 8F F8 83 D0 80 58 80
-4A 82 9C 8F 2A 80 44 80 1E 84 06 5B 45 4C 53 45
-5D 00 56 8F 4A 82 E4 8F F8 83 D0 80 58 80 4A 82
-9A 8F 2A 80 1E 84 04 5B 49 46 5D 00 56 8F 4A 82
-9C 8F 3C 82 9A 8F F8 83 1E 84 05 0D 0A 6B 6F 20
-D6 83 8C 83 32 87 3C 82 9C 8F 8C 8F 84 5B 49 46
-5D 00 0E 93 3E 4F BE 27 30 4D 0C 90 89 5B 44 45
-46 49 4E 45 44 5D 87 12 42 87 80 84 EE 84 6A 80
-2A 80 1C 90 8B 5B 55 4E 44 45 46 49 4E 45 44 5D
-87 12 42 87 80 84 EE 84 6A 80 00 81 2A 80 50 90
-3D 41 B2 4E 0E 18 A2 4E 0C 18 3E 4F 30 40 56 8D
-48 8C 06 4D 41 52 4B 45 52 00 B0 12 B8 89 BA 40
-84 12 FC FF BA 40 4E 90 FE FF 9A 42 C8 21 00 00
-28 83 8A 48 02 00 A2 52 C6 21 30 40 00 8A 1C 15
-B0 12 2A 80 80 84 EE 84 4A 82 A4 90 AA 85 40 82
-CE 88 BE 90 A6 90 39 4E 39 80 86 12 08 24 19 53
-02 20 2E 4E 04 3C 2E 53 19 53 01 24 2E 82 1B 17
-30 41 3E 40 28 00 B0 12 8E 90 19 42 C6 21 A2 53
-C6 21 89 4E 00 00 3E 40 29 00 1C 15 12 12 C4 21
-92 53 C4 21 B0 12 2A 80 80 84 AA 85 40 82 FC 90
-F2 90 21 53 3E 90 10 00 7D 2D E1 2B FE 90 B2 41
-C4 21 DD 3F 87 12 42 87 74 84 0C 91 0C 43 1B 42
-C6 21 A2 53 C6 21 6A 4E 3E 4F 7A 90 23 00 27 20
-92 53 C4 21 B0 12 8E 90 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 C6 21
-A2 53 C6 21 89 4E 00 00 3E 4F 3D 41 30 4D 7A 90
-26 00 07 20 3C 40 10 02 92 53 C4 21 B0 12 8E 90
-ED 3F 7A 90 40 00 16 20 3C 40 20 00 92 53 C4 21
-B0 12 DA 90 0C 20 3C 50 10 00 3E 40 2B 00 B0 12
-DA 90 92 92 C0 21 C4 21 02 24 92 53 C4 21 8E 10
-0C 5E DA 3F B0 12 DA 90 FA 23 3C 50 10 00 B0 12
-C2 90 EF 3F 0C 43 1B 42 C6 21 A2 53 C6 21 87 12
-42 87 74 84 D6 91 FE 90 26 00 00 00 3E 40 20 00
-03 20 3C 50 82 00 C8 3F B0 12 DA 90 E1 23 3C 50
-80 00 B0 12 C2 90 DC 3F D6 82 04 52 45 54 49 00
-87 12 14 84 00 13 B0 86 2A 80 14 84 2C 00 04 91
-CE 91 14 92 09 4B 2E 4E 0E DC A4 3F FC 8A 03 4D
-4F 56 84 12 0A 92 00 40 1E 92 05 4D 4F 56 2E 42
-84 12 0A 92 40 40 00 00 03 41 44 44 84 12 0A 92
-00 50 38 92 05 41 44 44 2E 42 84 12 0A 92 40 50
-44 92 04 41 44 44 43 00 84 12 0A 92 00 60 52 92
-06 41 44 44 43 2E 42 00 84 12 0A 92 40 60 FA 91
-04 53 55 42 43 00 84 12 0A 92 00 70 70 92 06 53
-55 42 43 2E 42 00 84 12 0A 92 40 70 7E 92 03 53
-55 42 84 12 0A 92 00 80 8E 92 05 53 55 42 2E 42
-84 12 0A 92 40 80 DE 8A 03 43 4D 50 84 12 0A 92
-00 90 A8 92 05 43 4D 50 2E 42 84 12 0A 92 40 90
-CC 8A 04 44 41 44 44 00 84 12 0A 92 00 A0 C2 92
-06 44 41 44 44 2E 42 00 84 12 0A 92 40 A0 B4 92
-03 42 49 54 84 12 0A 92 00 B0 E0 92 05 42 49 54
-2E 42 84 12 0A 92 40 B0 EC 92 03 42 49 43 84 12
-0A 92 00 C0 FA 92 05 42 49 43 2E 42 84 12 0A 92
-40 C0 06 93 03 42 49 53 84 12 0A 92 00 D0 14 93
-05 42 49 53 2E 42 84 12 0A 92 40 D0 00 00 03 58
-4F 52 84 12 0A 92 00 E0 2E 93 05 58 4F 52 2E 42
-84 12 0A 92 40 E0 60 92 03 41 4E 44 84 12 0A 92
-00 F0 48 93 05 41 4E 44 2E 42 84 12 0A 92 40 F0
-42 87 04 91 66 93 0A 4C 3C F0 70 00 8A 10 3A F0
-0F 00 0C DA 4F 3F 9A 92 03 52 52 43 84 12 60 93
-00 10 78 93 05 52 52 43 2E 42 84 12 60 93 40 10
-84 93 04 53 57 50 42 00 84 12 60 93 80 10 92 93
-03 52 52 41 84 12 60 93 00 11 A0 93 05 52 52 41
-2E 42 84 12 60 93 40 11 AC 93 03 53 58 54 84 12
-60 93 80 11 00 00 04 50 55 53 48 00 84 12 60 93
-00 12 C6 93 06 50 55 53 48 2E 42 00 84 12 60 93
-40 12 20 93 04 43 41 4C 4C 00 84 12 60 93 80 12
-1A 53 0E 4A 87 12 34 82 1E 84 0D 6F 75 74 20 6F
-66 20 62 6F 75 6E 64 73 4C 88 42 87 74 84 10 94
-92 53 C4 21 3E 40 2C 00 B0 12 2A 80 80 84 AA 85
-40 82 CE 88 C4 91 28 94 0A 4E 3E 4F 1A 83 E0 33
-29 4E 59 0E 0A 28 08 4C 59 0A 01 28 0C 8A 08 8A
-38 90 10 00 D5 2F 5A 0E 94 3F 2A 92 D1 2F 8A 10
-5A 06 8F 3F BA 93 04 52 52 43 4D 00 84 12 0A 94
-50 00 56 94 04 52 52 41 4D 00 84 12 0A 94 50 01
-64 94 04 52 4C 41 4D 00 84 12 0A 94 50 02 72 94
-04 52 52 55 4D 00 84 12 0A 94 50 03 D4 93 05 50
-55 53 48 4D 84 12 0A 94 00 15 8E 94 04 50 4F 50
-4D 00 84 12 0A 94 00 17 80 94 03 53 3E 3D 85 12
-00 38 AA 94 02 53 3C 00 85 12 00 34 9C 94 03 30
-3E 3D 85 12 00 30 BE 94 02 30 3C 00 85 12 00 30
-00 00 02 55 3C 00 85 12 00 2C D2 94 03 55 3E 3D
-85 12 00 28 C8 94 03 30 3C 3E 85 12 00 24 E6 94
-02 30 3D 00 85 12 00 20 00 00 02 49 46 00 1A 42
-C6 21 8A 4E 00 00 A2 53 C6 21 0E 4A 30 4D DC 94
-04 54 48 45 4E 00 1A 42 C6 21 08 4E 3E 4F 09 48
-29 53 0A 89 0A 11 3A 90 00 02 63 2F 88 DA 00 00
-30 4D D0 92 04 45 4C 53 45 00 1A 42 C6 21 BA 40
-00 3C 00 00 A2 53 C6 21 2F 83 8F 4A 00 00 E3 3F
-10 95 05 55 4E 54 49 4C 3A 4F 08 4E 3E 4F 19 42
-C6 21 2A 83 0A 89 0A 11 3A 90 00 FE 42 3B 3A F0
-FF 03 08 DA 89 48 00 00 A2 53 C6 21 30 4D 54 93
-05 41 47 41 49 4E 0A 4E 38 40 00 3C E7 3F 00 00
-05 57 48 49 4C 45 87 12 FE 94 76 80 2A 80 B4 94
-06 52 45 50 45 41 54 00 87 12 86 95 16 95 2A 80
-B2 95 3D 41 08 4E 3E 4F 2A 48 B2 92 C4 21 CD 2F
-98 42 C6 21 00 00 30 4D E4 93 03 42 57 31 84 12
-B0 95 00 00 CA 95 03 42 57 32 84 12 B0 95 00 00
-D6 95 03 42 57 33 84 12 B0 95 00 00 EE 95 3D 41
-1A 42 C6 21 28 4E B2 92 C4 21 90 2B BA 4F 00 00
-A2 53 C6 21 8E 4A 00 00 3E 4F 30 4D 00 00 03 46
-57 31 84 12 EC 95 00 00 0E 96 03 46 57 32 84 12
-EC 95 00 00 1A 96 03 46 57 33 84 12 EC 95 00 00
-00 00 05 3F 47 4F 54 4F 3E 90 00 30 07 24 3E E0
-00 04 3E B0 00 10 02 24 3E E0 00 08 87 12 C0 88
-DA 86 2A 80 26 96 04 47 4F 54 4F 00 2F 83 8F 4E
-00 00 3E 40 00 3C F2 3F
+3B 49 3A 49 3D 15 87 12 74 86 DC 86 B2 41 C4 21
+B2 41 C2 21 B2 41 C0 21 3D 41 30 4D 85 12 BE 21
+00 00 04 51 55 49 54 00 82 43 08 18 31 40 E0 20
+B2 40 00 20 00 20 82 43 BE 21 87 12 2E 82 D4 80
+70 86 C4 81 74 86 8C 82 BC 82 2E 80 0C 73 74 61
+63 6B 20 65 6D 70 74 79 21 00 6E 87 24 80 40 FF
+2A 8A C4 82 2E 80 0A 46 52 41 4D 20 66 75 6C 6C
+21 00 6E 87 48 80 0C 87 0A 86 05 41 42 4F 52 54
+3F 40 80 20 D1 3F 4A 87 86 41 42 4F 52 54 22 00
+0D 12 87 12 AA 83 24 80 6E 87 F8 85 26 83 8F 93
+02 00 03 20 2F 52 3E 4F 30 4D B0 12 96 8B B0 12
+06 81 92 C3 9C 05 18 42 06 18 39 40 20 00 19 83
+FE 23 18 83 FA 23 92 B3 9C 05 F3 23 0D 12 87 12
+10 8B 24 80 DE 21 02 81 D6 81 2E 80 04 1B 5B 37
+6D 00 00 82 7C 82 4C 80 C8 87 2E 82 2E 80 05 6C
+69 6E 65 3A 00 82 66 83 00 82 2E 80 04 1B 5B 30
+6D 00 00 82 50 87 00 00 83 5B 27 5D 0D 12 87 12
+F0 87 24 80 24 80 F8 85 F8 85 26 83 44 84 01 27
+0D 12 87 12 70 86 F2 83 4A 84 4C 80 00 88 26 83
+AA 86 D2 82 81 5C 92 42 C0 21 C4 21 30 4D D8 87
+81 5B 82 43 BE 21 30 4D 04 88 01 5D B2 43 BE 21
+30 4D F2 86 88 50 4F 53 54 50 4F 4E 45 00 0D 12
+87 12 70 86 F2 83 4A 84 7C 82 4C 80 00 88 BC 82
+4C 80 50 88 24 80 24 80 F8 85 F8 85 24 80 F8 85
+F8 85 26 83 40 83 09 49 4D 4D 45 44 49 41 54 45
+1A 42 B6 21 FA D0 80 00 00 00 30 4D 10 88 01 3A
+30 12 B8 88 92 B3 C6 21 A2 63 C6 21 0D 12 87 12
+70 86 F2 83 86 88 3D 41 08 4E 7A 4E 5A D3 5A 53
+0A 58 19 42 DA 21 6E 4E 3E F0 1E 00 09 5E 3E 4F
+82 48 B6 21 82 49 B8 21 82 4A BA 21 82 4F BC 21
+2A 52 82 4A C6 21 30 41 BA 40 0D 12 FC FF BA 40
+87 12 FE FF B2 43 BE 21 30 4D 6E 88 07 3A 4E 4F
+4E 41 4D 45 30 12 B8 88 2F 83 8F 4E 00 00 1E 42
+C6 21 1E B3 0E 63 0A 4E 39 40 10 02 38 40 12 02
+D7 3F 82 9F BC 21 09 20 18 42 B6 21 19 42 B8 21
+A8 49 FE FF 89 48 00 00 30 4D 0D 12 87 12 2E 80
+0F 73 74 61 63 6B 20 6D 69 73 6D 61 74 63 68 21
+7A 87 CC 88 81 3B 82 93 BE 21 6D 27 0D 12 87 12
+24 80 26 83 F8 85 F2 88 12 88 26 83 5C 86 06 43
+52 45 41 54 45 00 B0 12 74 88 BA 40 85 12 FC FF
+8A 4A FE FF D5 3F C0 86 05 44 4F 45 53 3E 1A 42
+BA 21 BA 40 84 12 00 00 8A 4D 02 00 3D 41 30 4D
+3E 89 04 43 4F 44 45 00 B0 12 74 88 A2 82 C6 21
+0D 12 87 12 8A 8A 64 8A 26 83 72 89 07 43 4F 44
+45 4E 4E 4D 30 12 7C 89 9F 3F 00 00 07 45 4E 44
+43 4F 44 45 0D 12 87 12 F2 88 A4 8A 26 83 58 87
+03 41 53 4D B2 40 68 8A DA 21 DE 3F 9C 89 06 45
+4E 44 41 53 4D 00 0D 12 87 12 A4 89 C2 8A 26 83
+00 00 05 43 4F 4C 4F 4E 1A 42 C6 21 BA 40 0D 12
+00 00 BA 40 87 12 02 00 A2 52 C6 21 B2 43 BE 21
+30 40 A4 8A 00 00 05 4C 4F 32 48 49 A2 83 C6 21
+1A 42 C6 21 EE 3F 56 88 85 48 49 32 4C 4F 0D 12
+87 12 2A 8A 1E 8A F8 85 12 88 80 89 26 83 2E 53
+30 4D 8C 89 85 42 45 47 49 4E 2F 83 8F 4E 00 00
+1E 42 C6 21 30 4D 24 80 CA 21 AE 82 26 83 84 12
+36 8A B0 89 5A 8C 58 89 EE 87 08 8A 42 82 20 86
+D8 83 34 8B 4E 8B 62 83 CE 8B 00 00 EC 8D 1A 88
+AA 84 00 00 84 12 36 8A 1E 93 84 93 D2 92 D4 93
+98 92 00 00 C8 8F 00 00 8E 92 40 93 F0 92 2E 93
+D8 90 00 00 00 00 F0 93 62 8A 3A 40 0C 00 39 40
+D6 21 08 49 28 53 19 83 18 83 E8 49 00 00 1A 83
+FA 23 30 4D 3A 40 0E 00 38 40 CA 21 09 48 29 53
+F8 49 00 00 18 53 1A 83 FB 23 30 4D 82 43 CC 21
+30 4D 92 42 CA 21 DA 21 30 4D 3E 8A BC 8A C2 8A
+D2 8A 3A 4E 82 4A C8 21 2E 4E 82 4E C6 21 3D 40
+10 00 09 4A 08 49 29 83 18 48 FE FF 0E 98 FC 2B
+89 48 00 00 1D 83 F6 23 2A 4A 0A 93 F0 23 3E 4F
+3D 41 30 4D 24 88 09 50 57 52 5F 53 54 41 54 45
+84 12 CA 8A 88 8A 0C 94 A6 83 09 52 53 54 5F 53
+54 41 54 45 92 42 0E 18 14 8B 92 42 0C 18 16 8B
+EF 3F 06 8B 08 50 57 52 5F 48 45 52 45 00 92 42
+C8 21 14 8B 92 42 C6 21 16 8B 30 4D 1A 8B 08 52
+53 54 5F 48 45 52 45 00 92 42 C8 21 0E 18 92 42
+C6 21 0C 18 EC 3F EC 83 04 57 49 50 45 00 39 40
+10 00 29 83 B9 43 80 FF FC 23 B2 40 04 80 02 80
+B2 40 D8 8B D6 8B B2 40 88 8A 0E 18 B2 40 0C 94
+0C 18 30 12 24 8B B2 40 C8 81 C6 81 B2 40 32 82
+30 82 B2 40 4A 82 48 82 B2 40 18 00 0A 18 37 40
+26 83 36 40 9C 82 35 40 FA 80 34 40 EC 80 B2 40
+0A 00 DC 21 B2 40 20 00 B4 21 30 41 68 8B 04 57
+41 52 4D 00 30 40 D8 8B 3D 40 10 8C 92 C3 30 01
+1E 42 08 18 0E 93 13 24 F2 B2 21 02 02 20 3E E3
+1E 53 F2 D0 0C 00 2B 02 92 D3 9A 05 3E 90 0A 00
+B6 27 3E 90 16 00 B3 2F 2E 93 82 27 8B 2F 30 4D
+2E 80 07 0D 0A 1B 5B 37 6D 23 00 82 9C 83 2E 80
+19 46 61 73 74 46 6F 72 74 68 20 C2 A9 4A 2E 4D
+2E 54 68 6F 6F 72 65 6E 73 20 00 82 24 80 40 FF
+2A 8A A6 82 66 83 2E 80 0A 62 79 74 65 73 20 66
+72 65 65 00 48 80 C8 87 24 8A 04 43 4F 4C 44 00
+92 B3 8A 05 FD 23 B2 40 04 A5 20 01 31 40 E0 20
+B2 40 88 5A CC 01 B2 43 06 02 B2 40 FE FF 02 02
+D2 D3 05 02 F2 D3 26 02 F2 43 22 02 F2 D3 47 02
+F2 40 BF 00 43 02 F2 40 A5 00 A1 01 F2 40 20 00
+A0 01 D2 43 A1 01 B2 40 00 A5 60 01 82 43 88 01
+F2 D0 C0 00 0D 02 B2 40 FF 1E 80 01 B2 40 BE 00
+82 01 B2 40 DC 02 84 01 39 40 80 01 92 D2 5E 01
+08 18 38 40 59 14 18 83 FE 23 19 83 FA 23 39 40
+00 10 29 83 89 43 00 20 FC 23 B0 12 0E 80 B2 40
+81 00 80 05 92 42 02 18 86 05 92 42 04 18 88 05
+92 C3 80 05 3F 40 80 20 30 12 D4 8B 4D 3F 24 89
+86 5B 54 48 45 4E 5D 00 30 4D 0C 4E 38 4F 3B 4F
+39 4F 0E 4B 0E 5C 10 24 1B 83 06 30 1C 83 04 30
+19 53 F9 98 FF FF F5 27 2D 4D 3E 4F 30 4D 2F 53
+9F 83 00 00 F9 23 2F 53 2D 53 F7 3F 10 8D 86 5B
+45 4C 53 45 5D 00 0D 12 87 12 24 80 00 00 AA 82
+70 86 F2 83 62 86 68 82 4C 80 A8 8D 70 82 2E 80
+06 5B 54 48 45 4E 5D 00 1A 8D 82 8D 3E 8D 60 8D
+26 83 70 82 2E 80 06 5B 45 4C 53 45 5D 00 1A 8D
+98 8D 3E 8D 5E 8D 26 83 2E 80 04 5B 49 46 5D 00
+1A 8D 60 8D 48 80 5E 8D 22 82 2E 80 05 0D 0A 6B
+6F 20 00 82 D4 80 C4 80 48 80 60 8D 4E 8D 84 5B
+49 46 5D 00 0E 93 3E 4F C6 27 30 4D 2F 53 30 4D
+BE 8D 89 5B 44 45 46 49 4E 45 44 5D 0D 12 87 12
+70 86 F2 83 4A 84 CC 8D 26 83 D2 8D 8B 5B 55 4E
+44 45 46 49 4E 45 44 5D 0D 12 87 12 DC 8D 00 8E
+3D 41 30 40 B6 82 38 40 C0 21 0A 4E 39 48 2E 48
+09 5E 1E 52 C4 21 09 9E 03 24 7A 9E FC 27 1E 83
+0A 4E 2A 88 82 4A C4 21 30 4D 1C 15 87 12 F2 83
+4A 84 42 80 3E 8E 06 85 4C 80 00 88 58 8E 40 8E
+39 4E 39 80 86 12 08 24 19 53 02 20 2E 4E 04 3C
+2E 53 19 53 01 24 2E 82 1B 17 30 41 3E 40 28 00
+B0 12 2A 8E 19 42 C6 21 A2 53 C6 21 89 4E 00 00
+3E 40 29 00 1C 15 12 12 C4 21 92 53 C4 21 87 12
+F2 83 06 85 4C 80 94 8E 8A 8E 21 53 3E 90 10 00
+80 2D E2 2B 96 8E B2 41 C4 21 DE 3F 0D 12 87 12
+70 86 06 8E A6 8E 0C 43 1B 42 C6 21 A2 53 C6 21
+6A 4E 3E 4F 7A 90 23 00 27 20 92 53 C4 21 B0 12
+2A 8E 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 C6 21 A2 53 C6 21 89 4E
+00 00 3E 4F 3D 41 30 4D 7A 90 26 00 07 20 3C 40
+10 02 92 53 C4 21 B0 12 2A 8E ED 3F 7A 90 40 00
+16 20 3C 40 20 00 92 53 C4 21 B0 12 74 8E 0C 20
+3C 50 10 00 3E 40 2B 00 B0 12 74 8E 92 92 C0 21
+C4 21 02 24 92 53 C4 21 8E 10 0C 5E DA 3F B0 12
+74 8E FA 23 3C 50 10 00 B0 12 5C 8E EF 3F 0C 43
+1B 42 C6 21 A2 53 C6 21 0D 12 87 12 70 86 06 8E
+72 8F FE 90 26 00 00 00 3E 40 20 00 03 20 3C 50
+82 00 C7 3F B0 12 74 8E E0 23 3C 50 80 00 B0 12
+5C 8E DB 3F 00 00 04 52 45 54 49 00 0D 12 87 12
+24 80 00 13 F8 85 26 83 24 80 2C 00 9C 8E 68 8F
+B2 8F 09 4B 2E 4E 0E DC A2 3F F6 89 03 4D 4F 56
+84 12 A8 8F 00 40 BC 8F 05 4D 4F 56 2E 42 84 12
+A8 8F 40 40 00 00 03 41 44 44 84 12 A8 8F 00 50
+D6 8F 05 41 44 44 2E 42 84 12 A8 8F 40 50 E2 8F
+04 41 44 44 43 00 84 12 A8 8F 00 60 F0 8F 06 41
+44 44 43 2E 42 00 84 12 A8 8F 40 60 96 8F 04 53
+55 42 43 00 84 12 A8 8F 00 70 0E 90 06 53 55 42
+43 2E 42 00 84 12 A8 8F 40 70 1C 90 03 53 55 42
+84 12 A8 8F 00 80 2C 90 05 53 55 42 2E 42 84 12
+A8 8F 40 80 D2 89 03 43 4D 50 84 12 A8 8F 00 90
+46 90 05 43 4D 50 2E 42 84 12 A8 8F 40 90 BE 89
+04 44 41 44 44 00 84 12 A8 8F 00 A0 60 90 06 44
+41 44 44 2E 42 00 84 12 A8 8F 40 A0 52 90 03 42
+49 54 84 12 A8 8F 00 B0 7E 90 05 42 49 54 2E 42
+84 12 A8 8F 40 B0 8A 90 03 42 49 43 84 12 A8 8F
+00 C0 98 90 05 42 49 43 2E 42 84 12 A8 8F 40 C0
+A4 90 03 42 49 53 84 12 A8 8F 00 D0 B2 90 05 42
+49 53 2E 42 84 12 A8 8F 40 D0 00 00 03 58 4F 52
+84 12 A8 8F 00 E0 CC 90 05 58 4F 52 2E 42 84 12
+A8 8F 40 E0 FE 8F 03 41 4E 44 84 12 A8 8F 00 F0
+E6 90 05 41 4E 44 2E 42 84 12 A8 8F 40 F0 70 86
+9C 8E 04 91 0A 4C 3C F0 70 00 8A 10 3A F0 0F 00
+0C DA 4F 3F 38 90 03 52 52 43 84 12 FE 90 00 10
+16 91 05 52 52 43 2E 42 84 12 FE 90 40 10 22 91
+04 53 57 50 42 00 84 12 FE 90 80 10 30 91 03 52
+52 41 84 12 FE 90 00 11 3E 91 05 52 52 41 2E 42
+84 12 FE 90 40 11 4A 91 03 53 58 54 84 12 FE 90
+80 11 00 00 04 50 55 53 48 00 84 12 FE 90 00 12
+64 91 06 50 55 53 48 2E 42 00 84 12 FE 90 40 12
+BE 90 04 43 41 4C 4C 00 84 12 FE 90 80 12 1A 53
+0E 4A 0D 12 87 12 9C 83 2E 80 0D 6F 75 74 20 6F
+66 20 62 6F 75 6E 64 73 7A 87 70 86 06 8E B0 91
+92 53 C4 21 3E 40 2C 00 87 12 F2 83 06 85 4C 80
+00 88 5E 8F C6 91 0A 4E 3E 4F 1A 83 E0 33 29 4E
+59 0E 0A 28 08 4C 59 0A 01 28 0C 8A 08 8A 38 90
+10 00 D5 2F 5A 0E 94 3F 2A 92 D1 2F 8A 10 5A 06
+8F 3F 58 91 04 52 52 43 4D 00 84 12 AA 91 50 00
+F4 91 04 52 52 41 4D 00 84 12 AA 91 50 01 02 92
+04 52 4C 41 4D 00 84 12 AA 91 50 02 10 92 04 52
+52 55 4D 00 84 12 AA 91 50 03 72 91 05 50 55 53
+48 4D 84 12 AA 91 00 15 2C 92 04 50 4F 50 4D 00
+84 12 AA 91 00 17 1E 92 03 53 3E 3D 85 12 00 38
+48 92 02 53 3C 00 85 12 00 34 3A 92 03 30 3E 3D
+85 12 00 30 5C 92 02 30 3C 00 85 12 00 30 00 00
+02 55 3C 00 85 12 00 2C 70 92 03 55 3E 3D 85 12
+00 28 66 92 03 30 3C 3E 85 12 00 24 84 92 02 30
+3D 00 85 12 00 20 00 00 02 49 46 00 1A 42 C6 21
+8A 4E 00 00 A2 53 C6 21 0E 4A 30 4D 7A 92 04 54
+48 45 4E 00 1A 42 C6 21 08 4E 3E 4F 09 48 29 53
+0A 89 0A 11 3A 90 00 02 63 2F 88 DA 00 00 30 4D
+6E 90 04 45 4C 53 45 00 1A 42 C6 21 BA 40 00 3C
+00 00 A2 53 C6 21 2F 83 8F 4A 00 00 E3 3F AE 92
+05 55 4E 54 49 4C 3A 4F 08 4E 3E 4F 19 42 C6 21
+2A 83 0A 89 0A 11 3A 90 00 FE 42 3B 3A F0 FF 03
+08 DA 89 48 00 00 A2 53 C6 21 30 4D F2 90 05 41
+47 41 49 4E 0A 4E 38 40 00 3C E7 3F 00 00 05 57
+48 49 4C 45 0D 12 87 12 9C 92 82 82 26 83 52 92
+06 52 45 50 45 41 54 00 0D 12 87 12 24 93 B4 92
+26 83 54 93 3D 41 08 4E 3E 4F 2A 48 B2 92 C4 21
+CB 2F 98 42 C6 21 00 00 30 4D 82 91 03 42 57 31
+84 12 52 93 00 00 6C 93 03 42 57 32 84 12 52 93
+00 00 78 93 03 42 57 33 84 12 52 93 00 00 90 93
+3D 41 1A 42 C6 21 28 4E B2 92 C4 21 8E 2B BA 4F
+00 00 A2 53 C6 21 8E 4A 00 00 3E 4F 30 4D 00 00
+03 46 57 31 84 12 8E 93 00 00 B0 93 03 46 57 32
+84 12 8E 93 00 00 BC 93 03 46 57 33 84 12 8E 93
+00 00 C8 93 04 47 4F 54 4F 00 2F 83 8F 4E 00 00
+3E 40 00 3C 0D 12 87 12 F0 87 18 86 26 83 00 00
+05 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
 @FFFE
-9C 8E
+6C 8C
 q
index c286c33..48bcf4c 100644 (file)
 @1800
-10 00 04 00 51 55 40 1F 05 00 18 00 58 96 D0 8C
-2D 01 6B B0 B6 82 C8 82
+10 00 04 00 51 55 40 1F 05 00 18 00 FC 93 88 8A
+2E 01 6B B0 06 81 18 81 D4 8B
 @8000
-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 3A 41 0D 12 0D 4A
-30 4D 00 00 04 45 58 49 54 00 3D 41 30 4D 24 80
-03 44 55 50 2F 83 8F 4E 00 00 30 4D 00 00 04 32
-44 55 50 00 8F 4E FE FF AF 4F FC FF 2F 82 30 4D
-00 00 04 3F 44 55 50 00 0E 93 EC 23 30 4D 30 80
-04 44 52 4F 50 00 3E 4F 30 4D 2F 53 30 4D 3E 80
-04 53 57 41 50 00 2A 4F 8F 4E 00 00 0E 4A 30 4D
-52 80 02 3E 52 00 0E 12 3E 4F 30 4D 70 80 02 52
-3E 00 2F 83 8F 4E 00 00 3E 41 30 4D 60 80 05 44
-45 50 54 48 8F 4E FE FF 3E 40 80 20 0E 8F 0E 11
-2F 83 30 4D 00 00 01 2D 3E 8F 3E E3 1E 53 30 4D
-00 00 02 31 2B 00 1E 53 30 4D C2 80 02 31 2D 00
-1E 83 30 4D 3E F3 06 34 BF E3 00 00 3E E3 9F 53
-00 00 0E 63 30 4D 00 00 01 40 2E 4E 30 4D E8 80
-01 21 BE 4F 00 00 3E 4F 30 4D CC 80 02 30 3D 00
-1E 83 0E 7E 30 4D FC 80 02 30 3C 00 0E 5E 0E 7E
-3E E3 30 4D 00 00 01 3D 3E 8F FA 27 0E F3 30 4D
-00 00 02 55 3C 00 3E 8F F9 2B 01 24 3E 43 30 4D
-16 81 02 3C 23 00 B2 40 B2 21 B2 21 30 4D 0B 4E
+30 40 04 80 B0 12 06 81 12 D2 0A 18 F9 3F 39 40
+32 00 29 83 B9 40 6C 8C CE FF FB 23 B2 40 68 81
+E2 FF 30 41 2F 83 8F 4E 00 00 3E 4D 30 4D 2F 82
+8F 4E 02 00 7E 4D 8F 4D 00 00 0D 5E 1D B3 0D 63
+30 4D 0E 93 3E 4F 05 24 2D 4D 30 4D 0E 93 3E 4F
+FB 27 2D 53 30 4D 39 40 00 80 39 8F 08 4E 3E 4F
+08 59 19 15 30 4D 81 5E 00 00 3E 4F 32 B0 00 01
+EB 27 21 52 2D 53 30 4D 91 53 00 00 F7 3F 0B 4E
 1C 4F 02 00 2E 4F 0A 43 34 40 20 00 0E 93 04 20
 04 11 0E 4C 0C 43 09 43 0A 9B 01 28 0A 8B 09 69
 08 68 14 83 07 30 0C 5C 0E 6E 0A 6A F5 2B 0A 8B
-12 D3 F5 3F 34 40 00 80 8F 4A 02 00 8F 49 00 00
-0E 48 30 41 00 00 01 23 1B 42 DC 21 2C 4F 2F 83
-B0 12 46 81 BF 4F 00 00 7A 90 0A 00 02 28 7A 50
-07 00 7A 50 30 00 92 83 B2 21 18 42 B2 21 C8 4A
-00 00 30 4D 86 81 02 23 53 00 87 12 88 81 C0 81
-2D 83 09 93 E3 23 0E 93 E1 23 3D 41 30 4D B6 81
-02 23 3E 00 9F 42 B2 21 00 00 3E 40 B2 21 2E 8F
-30 4D 00 00 04 48 4F 4C 44 00 0A 4E 3E 4F DB 3F
-8E 80 04 53 49 47 4E 00 0E 93 3E 4F 3A 40 2D 00
-D2 33 30 4D 87 12 36 81 34 80 86 80 D4 80 BA 81
-92 80 F8 81 D4 81 D6 83 42 87 82 83 2A 80 22 81
-02 55 2E 00 08 43 2F 83 8F 4E 00 00 0E 48 EA 3F
-00 00 01 2E 0E 93 F6 37 38 43 F5 3F 2D 4D 30 4D
-0E 93 3E 4F FB 27 2D 53 30 4D 0E 93 3E 4F F6 23
-2D 53 30 4D 39 40 00 80 39 8F 08 4E 3E 4F 08 59
-19 15 30 4D 81 5E 00 00 3E 4F 32 B0 00 01 E6 27
-2D 53 21 52 30 4D 91 53 00 00 F7 3F E4 81 01 49
-2F 83 8F 4E 00 00 2E 41 1E 81 02 00 30 4D 00 00
-03 4B 45 59 30 40 98 82 18 42 8C 05 2F 83 8F 4E
-00 00 B0 12 B6 82 92 B3 9C 05 FD 27 1E 42 8C 05
-B0 12 C8 82 30 4D A2 B3 9C 05 FD 27 B2 40 11 00
-8E 05 D2 C3 03 02 30 41 B2 40 13 00 8E 05 D2 D3
-03 02 30 41 00 00 05 53 4C 45 45 50 30 40 E0 82
-B0 12 B6 82 12 D2 0A 18 F9 3F F0 80 06 41 43 43
-45 50 54 00 3C 40 64 83 3B 40 2E 83 2D 15 0A 4E
-2E 4F 0A 5E 3B 40 0D 00 3C 40 20 00 3D 40 58 83
-92 B3 9C 05 05 24 18 42 8C 05 38 90 0A 00 CB 23
-21 53 3D 15 DB 3F 21 52 3A 17 58 42 8C 05 48 9C
-08 2C 48 9B C9 27 78 92 11 20 2E 9F 0F 24 1E 83
-05 3C 0E 9A 03 24 CE 48 00 00 1E 53 A2 B3 9C 05
-FD 27 82 48 8E 05 30 4D 5A 83 2D 83 92 B3 9C 05
-E4 23 FC 27 82 93 DE 21 02 24 92 53 DE 21 3E 8F
-3D 41 B2 40 18 00 0A 18 30 4D 9E 80 04 45 4D 49
-54 00 30 40 86 83 08 4E 3E 4F E0 3F 3F 80 06 00
-8F 4E 04 00 3E 40 54 00 BF 40 3C 21 00 00 AF 4F
-02 00 A8 3F 7C 83 04 45 43 48 4F 00 B2 40 82 48
-52 83 82 43 DE 21 30 4D 32 82 06 4E 4F 45 43 48
-4F 00 B2 40 30 4D 52 83 92 43 DE 21 30 4D 20 82
-04 54 59 50 45 00 0E 93 0F 24 1E 15 3D 40 EC 83
-28 4F 7E 48 8F 48 00 00 2F 83 CB 3F EE 83 2D 83
-91 83 02 00 F5 23 1D 17 2F 53 3E 4F 30 4D D0 81
-02 43 52 00 30 40 08 84 87 12 1E 84 02 0D 0A 00
-D6 83 2A 80 2F 83 8F 4E 00 00 3E 4D 30 4D 2F 82
-8F 4E 02 00 7E 4D 8F 4D 00 00 0D 5E 1D B3 0D 63
-30 4D F2 81 82 53 22 00 82 43 B4 21 87 12 14 84
-1E 84 B0 86 14 84 22 00 80 84 4C 84 B2 40 20 00
-B4 21 6E 4E 1E 53 1E B3 82 6E C6 21 3D 41 3E 4F
-30 4D BA 83 82 2E 22 00 87 12 38 84 14 84 D6 83
-B0 86 2A 80 48 43 05 3C 00 00 04 57 4F 52 44 00
-48 4E 19 42 C0 21 1A 42 C2 21 09 5A 1A 52 C4 21
-09 9A 03 24 7E 9A FC 27 1A 83 4E F8 06 20 0E 4A
-1A 82 C2 21 82 4A C4 21 30 4D 18 42 C6 21 3B 40
-60 00 C8 4C 00 00 09 9A 0C 24 7C 4A 4E 9C 09 24
-18 53 4B 9C F6 2F 7C 90 7B 00 F3 2F 5C 82 B4 21
-F0 3F 1A 82 C2 21 82 4A C4 21 1E 42 C6 21 08 8E
-CE 48 00 00 30 4D 00 00 04 46 49 4E 44 00 2F 83
-0C 4E 65 4C 74 40 80 00 3B 40 CA 21 3E 4B 0E 93
-1E 24 58 4C 01 00 78 F0 1E 00 0E 58 2E 53 1E 4E
-FE FF 0E 93 F3 27 09 4E 78 49 48 C4 48 95 F7 23
-0A 4C FA 99 01 00 F3 23 1A 53 58 83 FA 23 19 B3
-09 63 0C 49 6A 4E 1E 43 4A 93 01 30 2E 83 8F 4C
-00 00 35 40 0E 80 34 40 00 80 30 4D 82 80 07 3E
-4E 55 4D 42 45 52 3C 4F 38 4F 29 4F 2F 82 1B 42
-DC 21 6A 4C 7A 80 30 00 7A 90 0A 00 05 28 7A 80
-07 00 7A 90 0A 00 12 28 0A 9B 22 C3 0F 2C 82 49
-D0 04 82 48 D2 04 82 4B C8 04 19 42 E4 04 18 42
-E6 04 09 5A 08 63 1C 53 1E 83 E3 23 8F 4C 00 00
-8F 48 02 00 8F 49 04 00 30 4D 32 C0 00 02 1B 42
-DC 21 0C 43 2D 15 3D 40 F4 85 09 43 08 43 3F 82
-8F 4E 06 00 0C 4E 7E 4C 6A 4C 7A 90 2D 00 04 28
-C9 23 B1 43 02 00 DF 3F 2B 43 7A 80 25 00 07 24
-3B 52 6A 53 04 24 3B 40 10 00 5A 83 BA 23 1C 53
-1E 83 EA 3F F6 85 2F 24 2D 83 7A 90 28 00 CB 27
-32 D0 00 02 7A 90 F7 00 C6 27 7A 90 F5 00 23 20
-0A 4E 09 43 8F 49 02 00 5A 83 09 4A 09 5C 69 49
-79 80 30 00 79 90 0A 00 05 28 79 80 07 00 79 90
-0A 00 0A 28 09 9B 08 2C 8F 49 00 00 0E 4B 2C 15
-B0 12 3E 81 2A 17 E6 3F 9F 4F 04 00 02 00 AF 4F
-04 00 0E 4A 4E 93 2B 17 0E 4C 82 4B DC 21 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 7E 82 04 48 45 52 45 00
-2F 83 8F 4E 00 00 1E 42 C6 21 30 4D B6 80 01 2C
-1A 42 C6 21 8A 4E 00 00 A2 53 C6 21 3E 4F 30 4D
-EC 82 05 41 4C 4C 4F 54 82 5E C6 21 3E 4F 30 4D
-A6 83 07 45 58 45 43 55 54 45 0A 4E 3E 4F 00 4A
-AE 86 87 4C 49 54 45 52 41 4C 82 93 BE 21 0C 24
-1A 42 C6 21 A2 52 C6 21 BA 40 14 84 00 00 8A 4E
-02 00 3E 4F 32 B0 00 02 32 C0 00 02 06 24 19 4A
-02 00 8A 4E 02 00 0E 49 EB 3F 30 4D 00 84 05 43
-4F 55 4E 54 2F 83 1E 53 8F 4E 00 00 5E 4E FF FF
-30 4D 82 4E C0 21 B2 4F C2 21 3E 4F 82 43 C4 21
-30 4D 85 12 20 00 87 12 32 87 42 87 80 84 50 87
-3D 40 58 87 CC 22 82 3E 5A 87 0A 4E 3E 4F 3D 40
-70 87 23 27 3D 40 4A 87 1A E2 BE 21 A1 27 B5 23
-72 87 3E 4F 3D 40 4A 87 B8 23 DE 53 00 00 68 4E
-08 5E F8 40 3F 00 00 00 3D 40 26 8A CB 3F D2 86
+12 D3 F5 3F 34 40 EC 80 8F 4A 02 00 8F 49 00 00
+0E 48 30 41 82 4E C0 21 B2 4F C2 21 3E 4F 82 43
+C4 21 30 4D 3F 80 06 00 8F 4E 04 00 3E 40 54 00
+BF 40 3C 21 00 00 AF 4F 02 00 24 3C 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 A2 B3 9C 05 FD 27 B2 40 11 00
+8E 05 D2 C3 03 02 30 41 A2 B3 9C 05 FD 27 B2 40
+13 00 8E 05 D2 D3 03 02 30 41 00 00 06 41 43 43
+45 50 54 00 3C 40 A6 81 3B 40 70 81 2D 15 0A 4E
+2E 4F 0A 5E 3B 40 0D 00 3C 40 20 00 3D 40 9A 81
+92 B3 9C 05 05 24 18 42 8C 05 38 90 0A 00 D3 23
+21 53 3D 15 30 40 00 80 21 52 3A 17 58 42 8C 05
+48 9C 08 2C 48 9B D0 27 78 92 11 20 2E 9F 0F 24
+1E 83 05 3C 0E 9A 03 24 CE 48 00 00 1E 53 A2 B3
+9C 05 FD 27 82 48 8E 05 30 4D 9C 81 2D 83 92 B3
+9C 05 E4 23 FC 27 82 93 DE 21 02 24 92 53 DE 21
+3E 8F 3D 41 B2 40 18 00 0A 18 30 4D 00 00 04 45
+4D 49 54 00 30 40 C8 81 08 4E 3E 4F E0 3F BE 81
+04 45 43 48 4F 00 B2 40 82 48 94 81 82 43 DE 21
+30 4D 00 00 06 4E 4F 45 43 48 4F 00 B2 40 30 4D
+94 81 92 43 DE 21 30 4D 00 00 04 54 59 50 45 00
+0E 93 0F 24 1E 15 3D 40 16 82 28 4F 7E 48 8F 48
+00 00 2F 83 D7 3F 18 82 2D 83 91 83 02 00 F5 23
+1D 17 2F 53 3E 4F 30 4D 00 00 02 43 52 00 30 40
+32 82 0D 12 87 12 2E 80 02 0D 0A 00 00 82 26 83
+00 00 03 4B 45 59 30 40 4A 82 18 42 8C 05 2F 83
+8F 4E 00 00 B0 12 06 81 92 B3 9C 05 FD 27 1E 42
+8C 05 B0 12 18 81 30 4D 2F 83 8F 4E 00 00 30 4D
+8F 4E FE FF AF 4F FC FF 2F 82 30 4D 0E 93 F4 23
+30 4D 2A 4F 8F 4E 00 00 0E 4A 30 4D 8F 4E FE FF
+3E 40 80 20 0E 8F 0E 11 2F 83 30 4D 2F 83 8F 4E
+00 00 3E 41 30 4D 3E 8F 3E E3 1E 53 30 4D BE 4F
+00 00 3E 4F 30 4D 1E 83 0E 7E 30 4D 0E 5E 0E 7E
+3E E3 30 4D 3E 8F 03 24 3E 43 01 2C 0E F3 30 4D
+00 00 02 3C 23 00 B2 40 B2 21 B2 21 30 4D 2A 82
+01 23 1B 42 DC 21 2C 4F 2F 83 B0 12 86 80 BF 4F
+00 00 7A 90 0A 00 02 28 7A 50 07 00 7A 50 30 00
+92 83 B2 21 18 42 B2 21 C8 4A 00 00 30 4D E0 82
+02 23 53 00 0D 12 87 12 E2 82 1C 83 2D 83 09 93
+E2 23 0E 93 E0 23 3D 41 30 4D 10 83 02 23 3E 00
+9F 42 B2 21 00 00 3E 40 B2 21 2E 8F 30 4D 00 00
+04 48 4F 4C 44 00 4A 4E 3E 4F DA 3F 00 00 04 53
+49 47 4E 00 0E 93 3E 4F 7A 40 2D 00 D1 33 30 4D
+FA 81 02 55 2E 00 08 43 2F 83 8F 4E 00 00 0E 48
+0D 12 0E 12 3E F3 06 34 BF E3 00 00 3E E3 9F 53
+00 00 0E 63 87 12 D6 82 14 83 9C 82 54 83 30 83
+00 82 70 86 C4 81 26 83 E4 81 01 2E 0E 93 E3 37
+38 43 E2 3F 4E 83 82 53 22 00 82 43 B4 21 0D 12
+87 12 24 80 2E 80 F8 85 24 80 22 00 F2 83 C0 83
+B2 40 20 00 B4 21 6E 4E 1E 53 1E B3 82 6E C6 21
+3D 41 3E 4F 30 4D 9A 83 82 2E 22 00 0D 12 87 12
+AA 83 24 80 00 82 F8 85 26 83 00 00 04 57 4F 52
+44 00 3C 40 C0 21 39 4C 3A 4C 09 5A 3A 5C 28 4C
+09 9A 15 24 7E 9A FC 27 1A 83 3B 40 60 00 C8 4C
+00 00 09 9A 0C 24 7C 4A 4E 9C 09 24 18 53 4B 9C
+F6 2F 7C 90 7B 00 F3 2F 5C 82 B4 21 F0 3F 1A 82
+C2 21 82 4A C4 21 1E 42 C6 21 08 8E CE 48 00 00
+30 4D 00 00 04 46 49 4E 44 00 2F 83 0C 4E 65 4C
+74 40 80 00 3B 40 CA 21 3E 4B 0E 93 1E 24 58 4C
+01 00 78 F0 1E 00 0E 58 2E 53 1E 4E FE FF 0E 93
+F3 27 09 4E 78 49 48 C4 48 95 F7 23 0A 4C FA 99
+01 00 F3 23 1A 53 58 83 FA 23 19 B3 09 63 0C 49
+6A 4E 1E 43 4A 93 01 30 2E 83 8F 4C 00 00 35 40
+FA 80 34 40 EC 80 30 4D 00 00 07 3E 4E 55 4D 42
+45 52 3C 4F 38 4F 29 4F 2F 82 1B 42 DC 21 6A 4C
+7A 80 30 00 7A 90 0A 00 05 28 7A 80 07 00 7A 90
+0A 00 12 28 0A 9B 22 C3 0F 2C 82 49 D0 04 82 48
+D2 04 82 4B C8 04 19 42 E4 04 18 42 E6 04 09 5A
+08 63 1C 53 1E 83 E3 23 8F 4C 00 00 8F 48 02 00
+8F 49 04 00 30 4D 32 C0 00 02 1B 42 DC 21 0C 43
+2D 15 3D 40 50 85 09 43 08 43 3F 82 8F 4E 06 00
+0C 4E 7E 4C 6A 4C 7A 90 2D 00 04 28 C9 23 B1 43
+02 00 0B 3C 2B 43 7A 80 25 00 07 24 3B 52 6A 53
+04 24 3B 40 10 00 5A 83 BA 23 1C 53 1E 83 EA 3F
+52 85 2F 24 2D 83 7A 90 28 00 CB 27 32 D0 00 02
+7A 90 F7 00 C6 27 7A 90 F5 00 23 20 0A 4E 09 43
+8F 49 02 00 5A 83 09 4A 09 5C 69 49 79 80 30 00
+79 90 0A 00 05 28 79 80 07 00 79 90 0A 00 0A 28
+09 9B 08 2C 8F 49 00 00 0E 4B 2C 15 B0 12 7E 80
+2A 17 E6 3F 9F 4F 04 00 02 00 AF 4F 04 00 0E 4A
+4E 93 2B 17 0E 4C 82 4B DC 21 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 00 00 01 2C 1A 42 C6 21 8A 4E 00 00
+A2 53 C6 21 3E 4F 30 4D 2C 81 05 41 4C 4C 4F 54
+82 5E C6 21 3E 4F 30 4D 0A 4E 3E 4F 00 4A F6 85
+87 4C 49 54 45 52 41 4C 82 93 BE 21 0C 24 1A 42
+C6 21 A2 52 C6 21 BA 40 24 80 00 00 8A 4E 02 00
+3E 4F 32 B0 00 02 32 C0 00 02 06 24 19 4A 02 00
+8A 4E 02 00 0E 49 EB 3F 30 4D 2C 83 05 43 4F 55
+4E 54 2F 83 1E 53 8F 4E 00 00 5E 4E FF FF 30 4D
+85 12 20 00 0D 12 87 12 C4 80 70 86 F2 83 80 86
+3D 40 88 86 E2 22 A4 26 8A 86 0A 4E 3E 4F 3D 40
+A0 86 39 27 3D 40 7A 86 1A E2 BE 21 BD 23 AC 27
+A2 86 3E 4F 3D 40 7A 86 BF 23 DE 53 00 00 68 4E
+08 5E F8 40 3F 00 00 00 3D 40 20 89 D2 3F D0 81
 08 45 56 41 4C 55 41 54 45 00 39 40 C0 21 3C 49
-3B 49 3A 49 3D 15 B0 12 2A 80 46 87 AE 87 B2 41
-C4 21 B2 41 C2 21 B2 41 C0 21 3D 41 30 4D 85 12
-BE 21 08 81 04 51 55 49 54 00 82 43 08 18 31 40
-E0 20 B2 40 00 20 00 20 82 43 BE 21 B0 12 2A 80
-04 84 8C 83 42 87 82 83 46 87 A4 80 0C 81 1E 84
-0C 73 74 61 63 6B 20 65 6D 70 74 79 21 00 40 88
-14 84 30 FF A0 86 26 81 1E 84 0A 46 52 41 4D 20
-66 75 6C 6C 21 00 40 88 3C 82 E0 87 C2 86 05 41
-42 4F 52 54 3F 40 80 20 D0 3F 1E 88 86 41 42 4F
-52 54 22 00 87 12 38 84 14 84 40 88 B0 86 2A 80
-8F 93 02 00 03 20 2F 52 3E 4F 30 4D B0 12 C8 8D
-B0 12 B6 82 92 C3 9C 05 38 40 50 55 39 42 03 43
-19 83 FD 23 18 83 FA 23 92 B3 9C 05 F3 23 87 12
-42 8D 14 84 DE 21 EA 80 AC 83 1E 84 04 1B 5B 37
-6D 00 D6 83 58 80 40 82 9A 88 04 84 1E 84 05 6C
-69 6E 65 3A D6 83 D0 80 24 82 D6 83 1E 84 04 1B
-5B 30 6D 00 D6 83 24 88 00 00 83 5B 27 5D 87 12
-C0 88 14 84 14 84 B0 86 B0 86 2A 80 E8 84 01 27
-87 12 42 87 80 84 EE 84 40 82 CE 88 2A 80 7A 87
-32 81 81 5C 92 42 C0 21 C4 21 30 4D AA 88 81 5B
-82 43 BE 21 30 4D D2 88 01 5D B2 43 BE 21 30 4D
-BE 4F 02 00 3E 4F 30 4D 9A 86 82 49 53 00 87 12
-BE 87 EA 80 40 82 12 89 AE 88 14 84 F0 88 B0 86
-2A 80 C0 88 F0 88 2A 80 FA 88 09 49 4D 4D 45 44
-49 41 54 45 1A 42 B6 21 FA D0 80 00 00 00 30 4D
-C4 87 88 50 4F 53 54 50 4F 4E 45 00 87 12 42 87
-80 84 EE 84 58 80 40 82 CE 88 0C 81 40 82 5C 89
-14 84 14 84 B0 86 B0 86 14 84 B0 86 B0 86 2A 80
-DE 88 81 3B 82 93 BE 21 B5 27 87 12 14 84 2A 80
-B0 86 FA 89 E0 88 2A 80 62 89 07 3A 4E 4F 4E 41
-4D 45 30 12 A0 89 2F 83 8F 4E 00 00 1E 42 C6 21
-1E B3 0E 63 0A 4E 39 40 00 02 38 40 02 02 21 3C
-BA 40 87 12 FC FF A2 83 C6 21 B2 43 BE 21 30 4D
-7A 89 01 3A 30 12 A0 89 92 B3 C6 21 A2 63 C6 21
-87 12 42 87 80 84 C8 89 3D 41 08 4E 7A 4E 5A D3
-5A 53 0A 58 19 42 DA 21 6E 4E 3E F0 1E 00 09 5E
-3E 4F 82 48 B6 21 82 49 B8 21 82 4A BA 21 82 4F
-BC 21 2A 52 82 4A C6 21 30 41 82 9F BC 21 09 20
-18 42 B6 21 19 42 B8 21 A8 49 FE FF 89 48 00 00
-30 4D 87 12 1E 84 0F 73 74 61 63 6B 20 6D 69 73
-6D 61 74 63 68 21 4C 88 90 87 05 44 45 46 45 52
-B0 12 B8 89 BA 40 30 40 FC FF BA 40 AE 89 FE FF
-E3 3F 1E 87 06 43 52 45 41 54 45 00 B0 12 B8 89
-BA 40 85 12 FC FF 8A 4A FE FF D6 3F 2A 8A 05 44
-4F 45 53 3E 1A 42 BA 21 BA 40 84 12 00 00 8A 4D
-02 00 3D 41 30 4D 4E 85 05 3E 42 4F 44 59 2E 52
-30 4D 44 8A 04 43 4F 44 45 00 B0 12 B8 89 A2 82
-C6 21 87 12 D2 8C AC 8C 2A 80 84 8A 07 43 4F 44
-45 4E 4E 4D B0 12 86 89 F2 3F 00 00 07 45 4E 44
-43 4F 44 45 87 12 E0 8C FA 89 2A 80 2C 88 03 41
-53 4D B2 40 B0 8C DA 21 E0 3F AC 8A 06 45 4E 44
-41 53 4D 00 87 12 B4 8A F4 8C 2A 80 00 00 05 43
-4F 4C 4F 4E 1A 42 C6 21 BA 40 87 12 00 00 A2 53
-C6 21 B2 43 BE 21 30 40 E0 8C 00 00 05 4C 4F 32
-48 49 1A 42 C6 21 BA 40 B0 12 00 00 BA 40 2A 80
-02 00 A2 52 C6 21 ED 3F 1A 89 85 48 49 32 4C 4F
-87 12 A0 86 4A 8B B0 86 E0 88 D2 8C AC 8C 2A 80
-1A 8B 82 49 46 00 2F 83 8F 4E 00 00 1E 42 C6 21
-A2 52 C6 21 BE 40 40 82 00 00 2E 53 30 4D 5E 8A
-84 45 4C 53 45 00 A2 52 C6 21 1A 42 C6 21 BA 40
-3C 82 FC FF 8E 4A 00 00 2A 83 0E 4A 30 4D D0 83
-84 54 48 45 4E 00 9E 42 C6 21 00 00 3E 4F 30 4D
-9C 8A 85 42 45 47 49 4E 30 40 A0 86 70 8B 85 55
-4E 54 49 4C 39 40 40 82 A2 52 C6 21 1A 42 C6 21
-8A 49 FC FF 8A 4E FE FF 3E 4F 30 4D BE 8A 85 41
-47 41 49 4E 39 40 3C 82 EF 3F 7A 84 85 57 48 49
-4C 45 87 12 36 8B 76 80 2A 80 34 84 86 52 45 50
-45 41 54 00 87 12 B4 8B 76 8B 2A 80 50 8B 82 44
-4F 00 2F 83 8F 4E 00 00 A2 53 C6 21 1E 42 C6 21
-BE 40 54 82 FE FF A2 53 00 20 1A 42 00 20 8A 43
-00 00 30 4D E2 86 84 4C 4F 4F 50 00 39 40 76 82
-A2 52 C6 21 1A 42 C6 21 8A 49 FC FF 8A 4E FE FF
-1E 42 00 20 A2 83 00 20 2E 4E 0E 93 03 24 8E 4A
-00 00 F6 3F 3E 4F 30 4D 90 82 85 2B 4C 4F 4F 50
-39 40 64 82 E5 3F 06 8C 04 4D 4F 56 45 00 0A 4E
-38 4F 39 4F 3E 4F 0A 93 11 24 08 99 0F 24 06 2C
-F8 49 00 00 18 53 1A 83 FB 23 30 4D 08 5A 09 5A
-19 83 18 83 E8 49 00 00 1A 83 FA 23 30 4D 14 84
-CA 21 F2 80 2A 80 84 12 7E 8C AE 8B 3E 8F DE 8B
-BE 88 32 8B 3A 8C 52 90 64 84 66 8D 80 8D 8E 8B
-00 8E 00 00 24 90 E8 88 78 8A 00 00 84 12 7E 8C
-70 95 D2 95 24 95 46 96 EA 94 00 00 1A 92 00 00
-E0 94 90 95 42 95 80 95 2A 93 00 00 00 00 22 96
-AA 8C 3A 40 0C 00 39 40 CA 21 38 40 CC 21 C6 3F
-3A 40 0E 00 39 40 CC 21 38 40 CA 21 B9 3F 82 43
-CC 21 30 4D 92 42 CA 21 DA 21 30 4D 86 8C EE 8C
-F4 8C 04 8D 3A 4E 82 4A C8 21 2E 4E 82 4E C6 21
-3D 40 10 00 09 4A 08 49 29 83 18 48 FE FF 0E 98
-FC 2B 89 48 00 00 1D 83 F6 23 2A 4A 0A 93 F0 23
-3E 4F 3D 41 30 4D 32 89 09 50 57 52 5F 53 54 41
-54 45 84 12 FC 8C D0 8C 58 96 CC 8B 09 52 53 54
-5F 53 54 41 54 45 92 42 0E 18 46 8D 92 42 0C 18
-48 8D EF 3F 38 8D 08 50 57 52 5F 48 45 52 45 00
-92 42 C8 21 46 8D 92 42 C6 21 48 8D 30 4D 4C 8D
-08 52 53 54 5F 48 45 52 45 00 92 42 C8 21 0E 18
-92 42 C6 21 0C 18 EC 3F BC 8B 04 57 49 50 45 00
-39 40 10 00 29 83 B9 43 80 FF FC 23 B2 40 E0 82
-DE 82 B2 40 0A 8E 08 8E B2 40 D0 8C 0E 18 B2 40
-58 96 0C 18 30 12 56 8D B2 40 86 83 84 83 B2 40
-08 84 06 84 B2 40 98 82 96 82 B2 40 18 00 0A 18
-37 40 1A 80 36 40 92 80 35 40 0E 80 34 40 00 80
-B2 40 0A 00 DC 21 B2 40 20 00 B4 21 30 41 9A 8D
-04 57 41 52 4D 00 30 40 0A 8E 3D 40 3E 8E 92 C3
-30 01 1E 42 08 18 0E 93 11 24 F2 B2 21 02 02 20
-3E E3 1E 53 F2 D0 0C 00 2B 02 3E 90 0A 00 B8 27
-3E 90 16 00 B5 2F 2E 93 84 27 8D 2F 30 4D 1E 84
-06 0D 1B 5B 37 6D 23 00 D6 83 34 82 1E 84 19 46
-61 73 74 46 6F 72 74 68 20 C2 A9 4A 2E 4D 2E 54
-68 6F 6F 72 65 6E 73 20 D6 83 14 84 30 FF A0 86
-B8 80 24 82 1E 84 0A 62 79 74 65 73 20 66 72 65
-65 00 3C 82 9A 88 82 8B 04 43 4F 4C 44 00 92 B3
-8A 05 FD 23 B2 40 04 A5 20 01 3E 8E B2 40 88 5A
-CC 01 B2 43 06 02 B2 40 FE FF 02 02 D2 D3 05 02
-F2 D3 26 02 F2 43 22 02 F2 D3 47 02 F2 40 BF 00
-43 02 B2 40 00 A5 60 01 82 43 88 01 B2 40 FF 1E
-80 01 B2 40 B6 00 82 01 B2 40 F4 00 84 01 39 40
-80 00 92 D2 5E 01 08 18 38 40 59 14 18 83 FE 23
-19 83 FA 23 39 40 00 10 29 83 89 43 00 20 FC 23
-39 40 32 00 29 83 B9 40 9C 8E CE FF FB 23 B2 40
-26 83 E2 FF B2 40 81 00 80 05 92 42 02 18 86 05
-92 42 04 18 88 05 92 C3 80 05 92 D3 9A 05 3F 40
-80 20 31 40 E0 20 30 12 06 8E 4F 3F 88 8E 07 43
-4F 4D 50 41 52 45 0C 4E 38 4F 3B 4F 39 4F 0E 4B
-0E 5C 0C 24 1B 83 07 30 1C 83 07 30 19 53 F9 98
-FF FF F5 27 02 2C 3E 43 30 4D 1E 43 30 4D B2 89
-86 5B 54 48 45 4E 5D 00 30 4D 70 8F 86 5B 45 4C
-53 45 5D 00 87 12 14 84 00 00 C6 80 42 87 80 84
-24 87 34 80 40 82 E6 8F 44 80 1E 84 06 5B 54 48
-45 4E 5D 00 46 8F 4A 82 B6 8F F8 83 D0 80 58 80
-4A 82 8C 8F 2A 80 44 80 1E 84 06 5B 45 4C 53 45
-5D 00 46 8F 4A 82 D4 8F F8 83 D0 80 58 80 4A 82
-8A 8F 2A 80 1E 84 04 5B 49 46 5D 00 46 8F 4A 82
-8C 8F 3C 82 8A 8F F8 83 1E 84 05 0D 0A 6B 6F 20
-D6 83 8C 83 32 87 3C 82 8C 8F 7C 8F 84 5B 49 46
-5D 00 0E 93 3E 4F BE 27 30 4D FC 8F 89 5B 44 45
-46 49 4E 45 44 5D 87 12 42 87 80 84 EE 84 6A 80
-2A 80 0C 90 8B 5B 55 4E 44 45 46 49 4E 45 44 5D
-87 12 42 87 80 84 EE 84 6A 80 00 81 2A 80 40 90
-3D 41 B2 4E 0E 18 A2 4E 0C 18 3E 4F 30 40 56 8D
-48 8C 06 4D 41 52 4B 45 52 00 B0 12 B8 89 BA 40
-84 12 FC FF BA 40 3E 90 FE FF 9A 42 C8 21 00 00
-28 83 8A 48 02 00 A2 52 C6 21 30 40 00 8A 1C 15
-B0 12 2A 80 80 84 EE 84 4A 82 94 90 AA 85 40 82
-CE 88 AE 90 96 90 39 4E 39 80 86 12 08 24 19 53
-02 20 2E 4E 04 3C 2E 53 19 53 01 24 2E 82 1B 17
-30 41 3E 40 28 00 B0 12 7E 90 19 42 C6 21 A2 53
-C6 21 89 4E 00 00 3E 40 29 00 1C 15 12 12 C4 21
-92 53 C4 21 B0 12 2A 80 80 84 AA 85 40 82 EC 90
-E2 90 21 53 3E 90 10 00 7D 2D E1 2B EE 90 B2 41
-C4 21 DD 3F 87 12 42 87 74 84 FC 90 0C 43 1B 42
-C6 21 A2 53 C6 21 6A 4E 3E 4F 7A 90 23 00 27 20
-92 53 C4 21 B0 12 7E 90 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 C6 21
-A2 53 C6 21 89 4E 00 00 3E 4F 3D 41 30 4D 7A 90
-26 00 07 20 3C 40 10 02 92 53 C4 21 B0 12 7E 90
-ED 3F 7A 90 40 00 16 20 3C 40 20 00 92 53 C4 21
-B0 12 CA 90 0C 20 3C 50 10 00 3E 40 2B 00 B0 12
-CA 90 92 92 C0 21 C4 21 02 24 92 53 C4 21 8E 10
-0C 5E DA 3F B0 12 CA 90 FA 23 3C 50 10 00 B0 12
-B2 90 EF 3F 0C 43 1B 42 C6 21 A2 53 C6 21 87 12
-42 87 74 84 C6 91 FE 90 26 00 00 00 3E 40 20 00
-03 20 3C 50 82 00 C8 3F B0 12 CA 90 E1 23 3C 50
-80 00 B0 12 B2 90 DC 3F D6 82 04 52 45 54 49 00
-87 12 14 84 00 13 B0 86 2A 80 14 84 2C 00 F4 90
-BE 91 04 92 09 4B 2E 4E 0E DC A4 3F FC 8A 03 4D
-4F 56 84 12 FA 91 00 40 0E 92 05 4D 4F 56 2E 42
-84 12 FA 91 40 40 00 00 03 41 44 44 84 12 FA 91
-00 50 28 92 05 41 44 44 2E 42 84 12 FA 91 40 50
-34 92 04 41 44 44 43 00 84 12 FA 91 00 60 42 92
-06 41 44 44 43 2E 42 00 84 12 FA 91 40 60 EA 91
-04 53 55 42 43 00 84 12 FA 91 00 70 60 92 06 53
-55 42 43 2E 42 00 84 12 FA 91 40 70 6E 92 03 53
-55 42 84 12 FA 91 00 80 7E 92 05 53 55 42 2E 42
-84 12 FA 91 40 80 DE 8A 03 43 4D 50 84 12 FA 91
-00 90 98 92 05 43 4D 50 2E 42 84 12 FA 91 40 90
-CC 8A 04 44 41 44 44 00 84 12 FA 91 00 A0 B2 92
-06 44 41 44 44 2E 42 00 84 12 FA 91 40 A0 A4 92
-03 42 49 54 84 12 FA 91 00 B0 D0 92 05 42 49 54
-2E 42 84 12 FA 91 40 B0 DC 92 03 42 49 43 84 12
-FA 91 00 C0 EA 92 05 42 49 43 2E 42 84 12 FA 91
-40 C0 F6 92 03 42 49 53 84 12 FA 91 00 D0 04 93
-05 42 49 53 2E 42 84 12 FA 91 40 D0 00 00 03 58
-4F 52 84 12 FA 91 00 E0 1E 93 05 58 4F 52 2E 42
-84 12 FA 91 40 E0 50 92 03 41 4E 44 84 12 FA 91
-00 F0 38 93 05 41 4E 44 2E 42 84 12 FA 91 40 F0
-42 87 F4 90 56 93 0A 4C 3C F0 70 00 8A 10 3A F0
-0F 00 0C DA 4F 3F 8A 92 03 52 52 43 84 12 50 93
-00 10 68 93 05 52 52 43 2E 42 84 12 50 93 40 10
-74 93 04 53 57 50 42 00 84 12 50 93 80 10 82 93
-03 52 52 41 84 12 50 93 00 11 90 93 05 52 52 41
-2E 42 84 12 50 93 40 11 9C 93 03 53 58 54 84 12
-50 93 80 11 00 00 04 50 55 53 48 00 84 12 50 93
-00 12 B6 93 06 50 55 53 48 2E 42 00 84 12 50 93
-40 12 10 93 04 43 41 4C 4C 00 84 12 50 93 80 12
-1A 53 0E 4A 87 12 34 82 1E 84 0D 6F 75 74 20 6F
-66 20 62 6F 75 6E 64 73 4C 88 42 87 74 84 00 94
-92 53 C4 21 3E 40 2C 00 B0 12 2A 80 80 84 AA 85
-40 82 CE 88 B4 91 18 94 0A 4E 3E 4F 1A 83 E0 33
-29 4E 59 0E 0A 28 08 4C 59 0A 01 28 0C 8A 08 8A
-38 90 10 00 D5 2F 5A 0E 94 3F 2A 92 D1 2F 8A 10
-5A 06 8F 3F AA 93 04 52 52 43 4D 00 84 12 FA 93
-50 00 46 94 04 52 52 41 4D 00 84 12 FA 93 50 01
-54 94 04 52 4C 41 4D 00 84 12 FA 93 50 02 62 94
-04 52 52 55 4D 00 84 12 FA 93 50 03 C4 93 05 50
-55 53 48 4D 84 12 FA 93 00 15 7E 94 04 50 4F 50
-4D 00 84 12 FA 93 00 17 70 94 03 53 3E 3D 85 12
-00 38 9A 94 02 53 3C 00 85 12 00 34 8C 94 03 30
-3E 3D 85 12 00 30 AE 94 02 30 3C 00 85 12 00 30
-00 00 02 55 3C 00 85 12 00 2C C2 94 03 55 3E 3D
-85 12 00 28 B8 94 03 30 3C 3E 85 12 00 24 D6 94
-02 30 3D 00 85 12 00 20 00 00 02 49 46 00 1A 42
-C6 21 8A 4E 00 00 A2 53 C6 21 0E 4A 30 4D CC 94
-04 54 48 45 4E 00 1A 42 C6 21 08 4E 3E 4F 09 48
-29 53 0A 89 0A 11 3A 90 00 02 63 2F 88 DA 00 00
-30 4D C0 92 04 45 4C 53 45 00 1A 42 C6 21 BA 40
-00 3C 00 00 A2 53 C6 21 2F 83 8F 4A 00 00 E3 3F
-00 95 05 55 4E 54 49 4C 3A 4F 08 4E 3E 4F 19 42
-C6 21 2A 83 0A 89 0A 11 3A 90 00 FE 42 3B 3A F0
-FF 03 08 DA 89 48 00 00 A2 53 C6 21 30 4D 44 93
-05 41 47 41 49 4E 0A 4E 38 40 00 3C E7 3F 00 00
-05 57 48 49 4C 45 87 12 EE 94 76 80 2A 80 A4 94
-06 52 45 50 45 41 54 00 87 12 76 95 06 95 2A 80
-A2 95 3D 41 08 4E 3E 4F 2A 48 B2 92 C4 21 CD 2F
-98 42 C6 21 00 00 30 4D D4 93 03 42 57 31 84 12
-A0 95 00 00 BA 95 03 42 57 32 84 12 A0 95 00 00
-C6 95 03 42 57 33 84 12 A0 95 00 00 DE 95 3D 41
-1A 42 C6 21 28 4E B2 92 C4 21 90 2B BA 4F 00 00
-A2 53 C6 21 8E 4A 00 00 3E 4F 30 4D 00 00 03 46
-57 31 84 12 DC 95 00 00 FE 95 03 46 57 32 84 12
-DC 95 00 00 0A 96 03 46 57 33 84 12 DC 95 00 00
-00 00 05 3F 47 4F 54 4F 3E 90 00 30 07 24 3E E0
-00 04 3E B0 00 10 02 24 3E E0 00 08 87 12 C0 88
-DA 86 2A 80 16 96 04 47 4F 54 4F 00 2F 83 8F 4E
-00 00 3E 40 00 3C F2 3F
+3B 49 3A 49 3D 15 87 12 74 86 DC 86 B2 41 C4 21
+B2 41 C2 21 B2 41 C0 21 3D 41 30 4D 85 12 BE 21
+00 00 04 51 55 49 54 00 82 43 08 18 31 40 E0 20
+B2 40 00 20 00 20 82 43 BE 21 87 12 2E 82 D4 80
+70 86 C4 81 74 86 8C 82 BC 82 2E 80 0C 73 74 61
+63 6B 20 65 6D 70 74 79 21 00 6E 87 24 80 40 FF
+2A 8A C4 82 2E 80 0A 46 52 41 4D 20 66 75 6C 6C
+21 00 6E 87 48 80 0C 87 0A 86 05 41 42 4F 52 54
+3F 40 80 20 D1 3F 4A 87 86 41 42 4F 52 54 22 00
+0D 12 87 12 AA 83 24 80 6E 87 F8 85 26 83 8F 93
+02 00 03 20 2F 52 3E 4F 30 4D B0 12 96 8B B0 12
+06 81 92 C3 9C 05 18 42 06 18 39 40 20 00 19 83
+FE 23 18 83 FA 23 92 B3 9C 05 F3 23 0D 12 87 12
+10 8B 24 80 DE 21 02 81 D6 81 2E 80 04 1B 5B 37
+6D 00 00 82 7C 82 4C 80 C8 87 2E 82 2E 80 05 6C
+69 6E 65 3A 00 82 66 83 00 82 2E 80 04 1B 5B 30
+6D 00 00 82 50 87 00 00 83 5B 27 5D 0D 12 87 12
+F0 87 24 80 24 80 F8 85 F8 85 26 83 44 84 01 27
+0D 12 87 12 70 86 F2 83 4A 84 4C 80 00 88 26 83
+AA 86 D2 82 81 5C 92 42 C0 21 C4 21 30 4D D8 87
+81 5B 82 43 BE 21 30 4D 04 88 01 5D B2 43 BE 21
+30 4D F2 86 88 50 4F 53 54 50 4F 4E 45 00 0D 12
+87 12 70 86 F2 83 4A 84 7C 82 4C 80 00 88 BC 82
+4C 80 50 88 24 80 24 80 F8 85 F8 85 24 80 F8 85
+F8 85 26 83 40 83 09 49 4D 4D 45 44 49 41 54 45
+1A 42 B6 21 FA D0 80 00 00 00 30 4D 10 88 01 3A
+30 12 B8 88 92 B3 C6 21 A2 63 C6 21 0D 12 87 12
+70 86 F2 83 86 88 3D 41 08 4E 7A 4E 5A D3 5A 53
+0A 58 19 42 DA 21 6E 4E 3E F0 1E 00 09 5E 3E 4F
+82 48 B6 21 82 49 B8 21 82 4A BA 21 82 4F BC 21
+2A 52 82 4A C6 21 30 41 BA 40 0D 12 FC FF BA 40
+87 12 FE FF B2 43 BE 21 30 4D 6E 88 07 3A 4E 4F
+4E 41 4D 45 30 12 B8 88 2F 83 8F 4E 00 00 1E 42
+C6 21 1E B3 0E 63 0A 4E 39 40 10 02 38 40 12 02
+D7 3F 82 9F BC 21 09 20 18 42 B6 21 19 42 B8 21
+A8 49 FE FF 89 48 00 00 30 4D 0D 12 87 12 2E 80
+0F 73 74 61 63 6B 20 6D 69 73 6D 61 74 63 68 21
+7A 87 CC 88 81 3B 82 93 BE 21 6D 27 0D 12 87 12
+24 80 26 83 F8 85 F2 88 12 88 26 83 5C 86 06 43
+52 45 41 54 45 00 B0 12 74 88 BA 40 85 12 FC FF
+8A 4A FE FF D5 3F C0 86 05 44 4F 45 53 3E 1A 42
+BA 21 BA 40 84 12 00 00 8A 4D 02 00 3D 41 30 4D
+3E 89 04 43 4F 44 45 00 B0 12 74 88 A2 82 C6 21
+0D 12 87 12 8A 8A 64 8A 26 83 72 89 07 43 4F 44
+45 4E 4E 4D 30 12 7C 89 9F 3F 00 00 07 45 4E 44
+43 4F 44 45 0D 12 87 12 F2 88 A4 8A 26 83 58 87
+03 41 53 4D B2 40 68 8A DA 21 DE 3F 9C 89 06 45
+4E 44 41 53 4D 00 0D 12 87 12 A4 89 C2 8A 26 83
+00 00 05 43 4F 4C 4F 4E 1A 42 C6 21 BA 40 0D 12
+00 00 BA 40 87 12 02 00 A2 52 C6 21 B2 43 BE 21
+30 40 A4 8A 00 00 05 4C 4F 32 48 49 A2 83 C6 21
+1A 42 C6 21 EE 3F 56 88 85 48 49 32 4C 4F 0D 12
+87 12 2A 8A 1E 8A F8 85 12 88 80 89 26 83 2E 53
+30 4D 8C 89 85 42 45 47 49 4E 2F 83 8F 4E 00 00
+1E 42 C6 21 30 4D 24 80 CA 21 AE 82 26 83 84 12
+36 8A B0 89 5A 8C 58 89 EE 87 08 8A 42 82 20 86
+D8 83 34 8B 4E 8B 62 83 CE 8B 00 00 DC 8D 1A 88
+AA 84 00 00 84 12 36 8A 0E 93 74 93 C2 92 C4 93
+88 92 00 00 B8 8F 00 00 7E 92 30 93 E0 92 1E 93
+C8 90 00 00 00 00 E0 93 62 8A 3A 40 0C 00 39 40
+D6 21 08 49 28 53 19 83 18 83 E8 49 00 00 1A 83
+FA 23 30 4D 3A 40 0E 00 38 40 CA 21 09 48 29 53
+F8 49 00 00 18 53 1A 83 FB 23 30 4D 82 43 CC 21
+30 4D 92 42 CA 21 DA 21 30 4D 3E 8A BC 8A C2 8A
+D2 8A 3A 4E 82 4A C8 21 2E 4E 82 4E C6 21 3D 40
+10 00 09 4A 08 49 29 83 18 48 FE FF 0E 98 FC 2B
+89 48 00 00 1D 83 F6 23 2A 4A 0A 93 F0 23 3E 4F
+3D 41 30 4D 24 88 09 50 57 52 5F 53 54 41 54 45
+84 12 CA 8A 88 8A FC 93 A6 83 09 52 53 54 5F 53
+54 41 54 45 92 42 0E 18 14 8B 92 42 0C 18 16 8B
+EF 3F 06 8B 08 50 57 52 5F 48 45 52 45 00 92 42
+C8 21 14 8B 92 42 C6 21 16 8B 30 4D 1A 8B 08 52
+53 54 5F 48 45 52 45 00 92 42 C8 21 0E 18 92 42
+C6 21 0C 18 EC 3F EC 83 04 57 49 50 45 00 39 40
+10 00 29 83 B9 43 80 FF FC 23 B2 40 04 80 02 80
+B2 40 D8 8B D6 8B B2 40 88 8A 0E 18 B2 40 FC 93
+0C 18 30 12 24 8B B2 40 C8 81 C6 81 B2 40 32 82
+30 82 B2 40 4A 82 48 82 B2 40 18 00 0A 18 37 40
+26 83 36 40 9C 82 35 40 FA 80 34 40 EC 80 B2 40
+0A 00 DC 21 B2 40 20 00 B4 21 30 41 68 8B 04 57
+41 52 4D 00 30 40 D8 8B 3D 40 10 8C 92 C3 30 01
+1E 42 08 18 0E 93 13 24 F2 B2 21 02 02 20 3E E3
+1E 53 F2 D0 0C 00 2B 02 92 D3 9A 05 3E 90 0A 00
+B6 27 3E 90 16 00 B3 2F 2E 93 82 27 8B 2F 30 4D
+2E 80 07 0D 0A 1B 5B 37 6D 23 00 82 9C 83 2E 80
+19 46 61 73 74 46 6F 72 74 68 20 C2 A9 4A 2E 4D
+2E 54 68 6F 6F 72 65 6E 73 20 00 82 24 80 40 FF
+2A 8A A6 82 66 83 2E 80 0A 62 79 74 65 73 20 66
+72 65 65 00 48 80 C8 87 24 8A 04 43 4F 4C 44 00
+92 B3 8A 05 FD 23 B2 40 04 A5 20 01 31 40 E0 20
+B2 40 88 5A CC 01 B2 43 06 02 B2 40 FE FF 02 02
+D2 D3 05 02 F2 D3 26 02 F2 43 22 02 F2 D3 47 02
+F2 40 BF 00 43 02 B2 40 00 A5 60 01 82 43 88 01
+F2 D0 C0 00 0D 02 B2 40 FF 1E 80 01 B2 40 B6 00
+82 01 B2 40 F3 00 84 01 39 40 80 00 92 D2 5E 01
+08 18 38 40 59 14 18 83 FE 23 19 83 FA 23 39 40
+00 10 29 83 89 43 00 20 FC 23 B0 12 0E 80 B2 40
+81 00 80 05 92 42 02 18 86 05 92 42 04 18 88 05
+92 C3 80 05 3F 40 80 20 30 12 D4 8B 55 3F 24 89
+86 5B 54 48 45 4E 5D 00 30 4D 0C 4E 38 4F 3B 4F
+39 4F 0E 4B 0E 5C 10 24 1B 83 06 30 1C 83 04 30
+19 53 F9 98 FF FF F5 27 2D 4D 3E 4F 30 4D 2F 53
+9F 83 00 00 F9 23 2F 53 2D 53 F7 3F 00 8D 86 5B
+45 4C 53 45 5D 00 0D 12 87 12 24 80 00 00 AA 82
+70 86 F2 83 62 86 68 82 4C 80 98 8D 70 82 2E 80
+06 5B 54 48 45 4E 5D 00 0A 8D 72 8D 2E 8D 50 8D
+26 83 70 82 2E 80 06 5B 45 4C 53 45 5D 00 0A 8D
+88 8D 2E 8D 4E 8D 26 83 2E 80 04 5B 49 46 5D 00
+0A 8D 50 8D 48 80 4E 8D 22 82 2E 80 05 0D 0A 6B
+6F 20 00 82 D4 80 C4 80 48 80 50 8D 3E 8D 84 5B
+49 46 5D 00 0E 93 3E 4F C6 27 30 4D 2F 53 30 4D
+AE 8D 89 5B 44 45 46 49 4E 45 44 5D 0D 12 87 12
+70 86 F2 83 4A 84 BC 8D 26 83 C2 8D 8B 5B 55 4E
+44 45 46 49 4E 45 44 5D 0D 12 87 12 CC 8D F0 8D
+3D 41 30 40 B6 82 38 40 C0 21 0A 4E 39 48 2E 48
+09 5E 1E 52 C4 21 09 9E 03 24 7A 9E FC 27 1E 83
+0A 4E 2A 88 82 4A C4 21 30 4D 1C 15 87 12 F2 83
+4A 84 42 80 2E 8E 06 85 4C 80 00 88 48 8E 30 8E
+39 4E 39 80 86 12 08 24 19 53 02 20 2E 4E 04 3C
+2E 53 19 53 01 24 2E 82 1B 17 30 41 3E 40 28 00
+B0 12 1A 8E 19 42 C6 21 A2 53 C6 21 89 4E 00 00
+3E 40 29 00 1C 15 12 12 C4 21 92 53 C4 21 87 12
+F2 83 06 85 4C 80 84 8E 7A 8E 21 53 3E 90 10 00
+80 2D E2 2B 86 8E B2 41 C4 21 DE 3F 0D 12 87 12
+70 86 F6 8D 96 8E 0C 43 1B 42 C6 21 A2 53 C6 21
+6A 4E 3E 4F 7A 90 23 00 27 20 92 53 C4 21 B0 12
+1A 8E 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 C6 21 A2 53 C6 21 89 4E
+00 00 3E 4F 3D 41 30 4D 7A 90 26 00 07 20 3C 40
+10 02 92 53 C4 21 B0 12 1A 8E ED 3F 7A 90 40 00
+16 20 3C 40 20 00 92 53 C4 21 B0 12 64 8E 0C 20
+3C 50 10 00 3E 40 2B 00 B0 12 64 8E 92 92 C0 21
+C4 21 02 24 92 53 C4 21 8E 10 0C 5E DA 3F B0 12
+64 8E FA 23 3C 50 10 00 B0 12 4C 8E EF 3F 0C 43
+1B 42 C6 21 A2 53 C6 21 0D 12 87 12 70 86 F6 8D
+62 8F FE 90 26 00 00 00 3E 40 20 00 03 20 3C 50
+82 00 C7 3F B0 12 64 8E E0 23 3C 50 80 00 B0 12
+4C 8E DB 3F 00 00 04 52 45 54 49 00 0D 12 87 12
+24 80 00 13 F8 85 26 83 24 80 2C 00 8C 8E 58 8F
+A2 8F 09 4B 2E 4E 0E DC A2 3F F6 89 03 4D 4F 56
+84 12 98 8F 00 40 AC 8F 05 4D 4F 56 2E 42 84 12
+98 8F 40 40 00 00 03 41 44 44 84 12 98 8F 00 50
+C6 8F 05 41 44 44 2E 42 84 12 98 8F 40 50 D2 8F
+04 41 44 44 43 00 84 12 98 8F 00 60 E0 8F 06 41
+44 44 43 2E 42 00 84 12 98 8F 40 60 86 8F 04 53
+55 42 43 00 84 12 98 8F 00 70 FE 8F 06 53 55 42
+43 2E 42 00 84 12 98 8F 40 70 0C 90 03 53 55 42
+84 12 98 8F 00 80 1C 90 05 53 55 42 2E 42 84 12
+98 8F 40 80 D2 89 03 43 4D 50 84 12 98 8F 00 90
+36 90 05 43 4D 50 2E 42 84 12 98 8F 40 90 BE 89
+04 44 41 44 44 00 84 12 98 8F 00 A0 50 90 06 44
+41 44 44 2E 42 00 84 12 98 8F 40 A0 42 90 03 42
+49 54 84 12 98 8F 00 B0 6E 90 05 42 49 54 2E 42
+84 12 98 8F 40 B0 7A 90 03 42 49 43 84 12 98 8F
+00 C0 88 90 05 42 49 43 2E 42 84 12 98 8F 40 C0
+94 90 03 42 49 53 84 12 98 8F 00 D0 A2 90 05 42
+49 53 2E 42 84 12 98 8F 40 D0 00 00 03 58 4F 52
+84 12 98 8F 00 E0 BC 90 05 58 4F 52 2E 42 84 12
+98 8F 40 E0 EE 8F 03 41 4E 44 84 12 98 8F 00 F0
+D6 90 05 41 4E 44 2E 42 84 12 98 8F 40 F0 70 86
+8C 8E F4 90 0A 4C 3C F0 70 00 8A 10 3A F0 0F 00
+0C DA 4F 3F 28 90 03 52 52 43 84 12 EE 90 00 10
+06 91 05 52 52 43 2E 42 84 12 EE 90 40 10 12 91
+04 53 57 50 42 00 84 12 EE 90 80 10 20 91 03 52
+52 41 84 12 EE 90 00 11 2E 91 05 52 52 41 2E 42
+84 12 EE 90 40 11 3A 91 03 53 58 54 84 12 EE 90
+80 11 00 00 04 50 55 53 48 00 84 12 EE 90 00 12
+54 91 06 50 55 53 48 2E 42 00 84 12 EE 90 40 12
+AE 90 04 43 41 4C 4C 00 84 12 EE 90 80 12 1A 53
+0E 4A 0D 12 87 12 9C 83 2E 80 0D 6F 75 74 20 6F
+66 20 62 6F 75 6E 64 73 7A 87 70 86 F6 8D A0 91
+92 53 C4 21 3E 40 2C 00 87 12 F2 83 06 85 4C 80
+00 88 4E 8F B6 91 0A 4E 3E 4F 1A 83 E0 33 29 4E
+59 0E 0A 28 08 4C 59 0A 01 28 0C 8A 08 8A 38 90
+10 00 D5 2F 5A 0E 94 3F 2A 92 D1 2F 8A 10 5A 06
+8F 3F 48 91 04 52 52 43 4D 00 84 12 9A 91 50 00
+E4 91 04 52 52 41 4D 00 84 12 9A 91 50 01 F2 91
+04 52 4C 41 4D 00 84 12 9A 91 50 02 00 92 04 52
+52 55 4D 00 84 12 9A 91 50 03 62 91 05 50 55 53
+48 4D 84 12 9A 91 00 15 1C 92 04 50 4F 50 4D 00
+84 12 9A 91 00 17 0E 92 03 53 3E 3D 85 12 00 38
+38 92 02 53 3C 00 85 12 00 34 2A 92 03 30 3E 3D
+85 12 00 30 4C 92 02 30 3C 00 85 12 00 30 00 00
+02 55 3C 00 85 12 00 2C 60 92 03 55 3E 3D 85 12
+00 28 56 92 03 30 3C 3E 85 12 00 24 74 92 02 30
+3D 00 85 12 00 20 00 00 02 49 46 00 1A 42 C6 21
+8A 4E 00 00 A2 53 C6 21 0E 4A 30 4D 6A 92 04 54
+48 45 4E 00 1A 42 C6 21 08 4E 3E 4F 09 48 29 53
+0A 89 0A 11 3A 90 00 02 63 2F 88 DA 00 00 30 4D
+5E 90 04 45 4C 53 45 00 1A 42 C6 21 BA 40 00 3C
+00 00 A2 53 C6 21 2F 83 8F 4A 00 00 E3 3F 9E 92
+05 55 4E 54 49 4C 3A 4F 08 4E 3E 4F 19 42 C6 21
+2A 83 0A 89 0A 11 3A 90 00 FE 42 3B 3A F0 FF 03
+08 DA 89 48 00 00 A2 53 C6 21 30 4D E2 90 05 41
+47 41 49 4E 0A 4E 38 40 00 3C E7 3F 00 00 05 57
+48 49 4C 45 0D 12 87 12 8C 92 82 82 26 83 42 92
+06 52 45 50 45 41 54 00 0D 12 87 12 14 93 A4 92
+26 83 44 93 3D 41 08 4E 3E 4F 2A 48 B2 92 C4 21
+CB 2F 98 42 C6 21 00 00 30 4D 72 91 03 42 57 31
+84 12 42 93 00 00 5C 93 03 42 57 32 84 12 42 93
+00 00 68 93 03 42 57 33 84 12 42 93 00 00 80 93
+3D 41 1A 42 C6 21 28 4E B2 92 C4 21 8E 2B BA 4F
+00 00 A2 53 C6 21 8E 4A 00 00 3E 4F 30 4D 00 00
+03 46 57 31 84 12 7E 93 00 00 A0 93 03 46 57 32
+84 12 7E 93 00 00 AC 93 03 46 57 33 84 12 7E 93
+00 00 B8 93 04 47 4F 54 4F 00 2F 83 8F 4E 00 00
+3E 40 00 3C 0D 12 87 12 F0 87 18 86 26 83 00 00
+05 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
 @FFFE
-9C 8E
+6C 8C
 q
index 5464dd7..3f51537 100644 (file)
 @1800
-10 00 08 00 A1 F7 80 3E 05 00 18 00 60 DA D0 D0
-2D 01 6B B0 B6 C6 C8 C6
+10 00 08 00 A1 F7 80 3E 05 00 18 00 FE D7 88 CE
+2E 01 6B B0 06 C5 18 C5 D4 CF
 @C400
-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 3A 41 0D 12 0D 4A
-30 4D 00 00 04 45 58 49 54 00 3D 41 30 4D 24 C4
-03 44 55 50 2F 83 8F 4E 00 00 30 4D 00 00 04 32
-44 55 50 00 8F 4E FE FF AF 4F FC FF 2F 82 30 4D
-00 00 04 3F 44 55 50 00 0E 93 EC 23 30 4D 30 C4
-04 44 52 4F 50 00 3E 4F 30 4D 2F 53 30 4D 3E C4
-04 53 57 41 50 00 2A 4F 8F 4E 00 00 0E 4A 30 4D
-52 C4 02 3E 52 00 0E 12 3E 4F 30 4D 70 C4 02 52
-3E 00 2F 83 8F 4E 00 00 3E 41 30 4D 60 C4 05 44
-45 50 54 48 8F 4E FE FF 3E 40 80 20 0E 8F 0E 11
-2F 83 30 4D 00 00 01 2D 3E 8F 3E E3 1E 53 30 4D
-00 00 02 31 2B 00 1E 53 30 4D C2 C4 02 31 2D 00
-1E 83 30 4D 3E F3 06 34 BF E3 00 00 3E E3 9F 53
-00 00 0E 63 30 4D 00 00 01 40 2E 4E 30 4D E8 C4
-01 21 BE 4F 00 00 3E 4F 30 4D CC C4 02 30 3D 00
-1E 83 0E 7E 30 4D FC C4 02 30 3C 00 0E 5E 0E 7E
-3E E3 30 4D 00 00 01 3D 3E 8F FA 27 0E F3 30 4D
-00 00 02 55 3C 00 3E 8F F9 2B 01 24 3E 43 30 4D
-16 C5 02 3C 23 00 B2 40 B2 21 B2 21 30 4D 0B 4E
+30 40 04 C4 B0 12 06 C5 12 D2 0A 18 F9 3F 39 40
+26 00 29 83 B9 40 6E D0 DA FF FB 23 B2 40 68 C5
+E4 FF 30 41 2F 83 8F 4E 00 00 3E 4D 30 4D 2F 82
+8F 4E 02 00 7E 4D 8F 4D 00 00 0D 5E 1D B3 0D 63
+30 4D 0E 93 3E 4F 05 24 2D 4D 30 4D 0E 93 3E 4F
+FB 27 2D 53 30 4D 39 40 00 80 39 8F 08 4E 3E 4F
+08 59 19 15 30 4D 81 5E 00 00 3E 4F 32 B0 00 01
+EB 27 21 52 2D 53 30 4D 91 53 00 00 F7 3F 0B 4E
 1C 4F 02 00 2E 4F 0A 43 34 40 20 00 0E 93 04 20
 04 11 0E 4C 0C 43 09 43 0A 9B 01 28 0A 8B 09 69
 08 68 14 83 07 30 0C 5C 0E 6E 0A 6A F5 2B 0A 8B
-12 D3 F5 3F 34 40 00 C4 8F 4A 02 00 8F 49 00 00
-0E 48 30 41 00 00 01 23 1B 42 DC 21 2C 4F 2F 83
-B0 12 46 C5 BF 4F 00 00 7A 90 0A 00 02 28 7A 50
-07 00 7A 50 30 00 92 83 B2 21 18 42 B2 21 C8 4A
-00 00 30 4D 86 C5 02 23 53 00 87 12 88 C5 C0 C5
-2D 83 09 93 E3 23 0E 93 E1 23 3D 41 30 4D B6 C5
-02 23 3E 00 9F 42 B2 21 00 00 3E 40 B2 21 2E 8F
-30 4D 00 00 04 48 4F 4C 44 00 0A 4E 3E 4F DB 3F
-8E C4 04 53 49 47 4E 00 0E 93 3E 4F 3A 40 2D 00
-D2 33 30 4D 87 12 36 C5 34 C4 86 C4 D4 C4 BA C5
-92 C4 F8 C5 D4 C5 D6 C7 42 CB 82 C7 2A C4 22 C5
-02 55 2E 00 08 43 2F 83 8F 4E 00 00 0E 48 EA 3F
-00 00 01 2E 0E 93 F6 37 38 43 F5 3F 2D 4D 30 4D
-0E 93 3E 4F FB 27 2D 53 30 4D 0E 93 3E 4F F6 23
-2D 53 30 4D 39 40 00 80 39 8F 08 4E 3E 4F 08 59
-19 15 30 4D 81 5E 00 00 3E 4F 32 B0 00 01 E6 27
-2D 53 21 52 30 4D 91 53 00 00 F7 3F E4 C5 01 49
-2F 83 8F 4E 00 00 2E 41 1E 81 02 00 30 4D 00 00
-03 4B 45 59 30 40 98 C6 18 42 0C 05 2F 83 8F 4E
-00 00 B0 12 B6 C6 92 B3 1C 05 FD 27 1E 42 0C 05
-B0 12 C8 C6 30 4D A2 B3 1C 05 FD 27 B2 40 11 00
-0E 05 D2 C3 02 02 30 41 B2 40 13 00 0E 05 D2 D3
-02 02 30 41 00 00 05 53 4C 45 45 50 30 40 E0 C6
-B0 12 B6 C6 12 D2 0A 18 F9 3F F0 C4 06 41 43 43
-45 50 54 00 3C 40 64 C7 3B 40 2E C7 2D 15 0A 4E
-2E 4F 0A 5E 3B 40 0D 00 3C 40 20 00 3D 40 58 C7
-92 B3 1C 05 05 24 18 42 0C 05 38 90 0A 00 CB 23
-21 53 3D 15 DB 3F 21 52 3A 17 58 42 0C 05 48 9C
-08 2C 48 9B C9 27 78 92 11 20 2E 9F 0F 24 1E 83
-05 3C 0E 9A 03 24 CE 48 00 00 1E 53 A2 B3 1C 05
-FD 27 82 48 0E 05 30 4D 5A C7 2D 83 92 B3 1C 05
-E4 23 FC 27 82 93 DE 21 02 24 92 53 DE 21 3E 8F
-3D 41 B2 40 18 00 0A 18 30 4D 9E C4 04 45 4D 49
-54 00 30 40 86 C7 08 4E 3E 4F E0 3F 3F 80 06 00
-8F 4E 04 00 3E 40 54 00 BF 40 3C 21 00 00 AF 4F
-02 00 A8 3F 7C C7 04 45 43 48 4F 00 B2 40 82 48
-52 C7 82 43 DE 21 30 4D 32 C6 06 4E 4F 45 43 48
-4F 00 B2 40 30 4D 52 C7 92 43 DE 21 30 4D 20 C6
-04 54 59 50 45 00 0E 93 0F 24 1E 15 3D 40 EC C7
-28 4F 7E 48 8F 48 00 00 2F 83 CB 3F EE C7 2D 83
-91 83 02 00 F5 23 1D 17 2F 53 3E 4F 30 4D D0 C5
-02 43 52 00 30 40 08 C8 87 12 1E C8 02 0D 0A 00
-D6 C7 2A C4 2F 83 8F 4E 00 00 3E 4D 30 4D 2F 82
-8F 4E 02 00 7E 4D 8F 4D 00 00 0D 5E 1D B3 0D 63
-30 4D F2 C5 82 53 22 00 82 43 B4 21 87 12 14 C8
-1E C8 B0 CA 14 C8 22 00 80 C8 4C C8 B2 40 20 00
-B4 21 6E 4E 1E 53 1E B3 82 6E C6 21 3D 41 3E 4F
-30 4D BA C7 82 2E 22 00 87 12 38 C8 14 C8 D6 C7
-B0 CA 2A C4 48 43 05 3C 00 00 04 57 4F 52 44 00
-48 4E 19 42 C0 21 1A 42 C2 21 09 5A 1A 52 C4 21
-09 9A 03 24 7E 9A FC 27 1A 83 4E F8 06 20 0E 4A
-1A 82 C2 21 82 4A C4 21 30 4D 18 42 C6 21 3B 40
-60 00 C8 4C 00 00 09 9A 0C 24 7C 4A 4E 9C 09 24
-18 53 4B 9C F6 2F 7C 90 7B 00 F3 2F 5C 82 B4 21
-F0 3F 1A 82 C2 21 82 4A C4 21 1E 42 C6 21 08 8E
-CE 48 00 00 30 4D 00 00 04 46 49 4E 44 00 2F 83
-0C 4E 65 4C 74 40 80 00 3B 40 CA 21 3E 4B 0E 93
-1E 24 58 4C 01 00 78 F0 1E 00 0E 58 2E 53 1E 4E
-FE FF 0E 93 F3 27 09 4E 78 49 48 C4 48 95 F7 23
-0A 4C FA 99 01 00 F3 23 1A 53 58 83 FA 23 19 B3
-09 63 0C 49 6A 4E 1E 43 4A 93 01 30 2E 83 8F 4C
-00 00 35 40 0E C4 34 40 00 C4 30 4D 82 C4 07 3E
-4E 55 4D 42 45 52 3C 4F 38 4F 29 4F 2F 82 1B 42
-DC 21 6A 4C 7A 80 30 00 7A 90 0A 00 05 28 7A 80
-07 00 7A 90 0A 00 12 28 0A 9B 22 C3 0F 2C 82 49
-D0 04 82 48 D2 04 82 4B C8 04 19 42 E4 04 18 42
-E6 04 09 5A 08 63 1C 53 1E 83 E3 23 8F 4C 00 00
-8F 48 02 00 8F 49 04 00 30 4D 32 C0 00 02 1B 42
-DC 21 0C 43 2D 15 3D 40 F4 C9 09 43 08 43 3F 82
-8F 4E 06 00 0C 4E 7E 4C 6A 4C 7A 90 2D 00 04 28
-C9 23 B1 43 02 00 DF 3F 2B 43 7A 80 25 00 07 24
-3B 52 6A 53 04 24 3B 40 10 00 5A 83 BA 23 1C 53
-1E 83 EA 3F F6 C9 2F 24 2D 83 7A 90 28 00 CB 27
-32 D0 00 02 7A 90 F7 00 C6 27 7A 90 F5 00 23 20
-0A 4E 09 43 8F 49 02 00 5A 83 09 4A 09 5C 69 49
-79 80 30 00 79 90 0A 00 05 28 79 80 07 00 79 90
-0A 00 0A 28 09 9B 08 2C 8F 49 00 00 0E 4B 2C 15
-B0 12 3E C5 2A 17 E6 3F 9F 4F 04 00 02 00 AF 4F
-04 00 0E 4A 4E 93 2B 17 0E 4C 82 4B DC 21 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 7E C6 04 48 45 52 45 00
-2F 83 8F 4E 00 00 1E 42 C6 21 30 4D B6 C4 01 2C
-1A 42 C6 21 8A 4E 00 00 A2 53 C6 21 3E 4F 30 4D
-EC C6 05 41 4C 4C 4F 54 82 5E C6 21 3E 4F 30 4D
-A6 C7 07 45 58 45 43 55 54 45 0A 4E 3E 4F 00 4A
-AE CA 87 4C 49 54 45 52 41 4C 82 93 BE 21 0C 24
-1A 42 C6 21 A2 52 C6 21 BA 40 14 C8 00 00 8A 4E
-02 00 3E 4F 32 B0 00 02 32 C0 00 02 06 24 19 4A
-02 00 8A 4E 02 00 0E 49 EB 3F 30 4D 00 C8 05 43
-4F 55 4E 54 2F 83 1E 53 8F 4E 00 00 5E 4E FF FF
-30 4D 82 4E C0 21 B2 4F C2 21 3E 4F 82 43 C4 21
-30 4D 85 12 20 00 87 12 32 CB 42 CB 80 C8 50 CB
-3D 40 58 CB CC 22 82 3E 5A CB 0A 4E 3E 4F 3D 40
-70 CB 23 27 3D 40 4A CB 1A E2 BE 21 A1 27 B5 23
-72 CB 3E 4F 3D 40 4A CB B8 23 DE 53 00 00 68 4E
-08 5E F8 40 3F 00 00 00 3D 40 26 CE CB 3F D2 CA
+12 D3 F5 3F 34 40 EC C4 8F 4A 02 00 8F 49 00 00
+0E 48 30 41 82 4E C0 21 B2 4F C2 21 3E 4F 82 43
+C4 21 30 4D 3F 80 06 00 8F 4E 04 00 3E 40 54 00
+BF 40 3C 21 00 00 AF 4F 02 00 24 3C 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 A2 B3 1C 05 FD 27 B2 40 11 00
+0E 05 D2 C3 02 02 30 41 A2 B3 1C 05 FD 27 B2 40
+13 00 0E 05 D2 D3 02 02 30 41 00 00 06 41 43 43
+45 50 54 00 3C 40 A6 C5 3B 40 70 C5 2D 15 0A 4E
+2E 4F 0A 5E 3B 40 0D 00 3C 40 20 00 3D 40 9A C5
+92 B3 1C 05 05 24 18 42 0C 05 38 90 0A 00 D3 23
+21 53 3D 15 30 40 00 C4 21 52 3A 17 58 42 0C 05
+48 9C 08 2C 48 9B D0 27 78 92 11 20 2E 9F 0F 24
+1E 83 05 3C 0E 9A 03 24 CE 48 00 00 1E 53 A2 B3
+1C 05 FD 27 82 48 0E 05 30 4D 9C C5 2D 83 92 B3
+1C 05 E4 23 FC 27 82 93 DE 21 02 24 92 53 DE 21
+3E 8F 3D 41 B2 40 18 00 0A 18 30 4D 00 00 04 45
+4D 49 54 00 30 40 C8 C5 08 4E 3E 4F E0 3F BE C5
+04 45 43 48 4F 00 B2 40 82 48 94 C5 82 43 DE 21
+30 4D 00 00 06 4E 4F 45 43 48 4F 00 B2 40 30 4D
+94 C5 92 43 DE 21 30 4D 00 00 04 54 59 50 45 00
+0E 93 0F 24 1E 15 3D 40 16 C6 28 4F 7E 48 8F 48
+00 00 2F 83 D7 3F 18 C6 2D 83 91 83 02 00 F5 23
+1D 17 2F 53 3E 4F 30 4D 00 00 02 43 52 00 30 40
+32 C6 0D 12 87 12 2E C4 02 0D 0A 00 00 C6 26 C7
+00 00 03 4B 45 59 30 40 4A C6 18 42 0C 05 2F 83
+8F 4E 00 00 B0 12 06 C5 92 B3 1C 05 FD 27 1E 42
+0C 05 B0 12 18 C5 30 4D 2F 83 8F 4E 00 00 30 4D
+8F 4E FE FF AF 4F FC FF 2F 82 30 4D 0E 93 F4 23
+30 4D 2A 4F 8F 4E 00 00 0E 4A 30 4D 8F 4E FE FF
+3E 40 80 20 0E 8F 0E 11 2F 83 30 4D 2F 83 8F 4E
+00 00 3E 41 30 4D 3E 8F 3E E3 1E 53 30 4D BE 4F
+00 00 3E 4F 30 4D 1E 83 0E 7E 30 4D 0E 5E 0E 7E
+3E E3 30 4D 3E 8F 03 24 3E 43 01 2C 0E F3 30 4D
+00 00 02 3C 23 00 B2 40 B2 21 B2 21 30 4D 2A C6
+01 23 1B 42 DC 21 2C 4F 2F 83 B0 12 86 C4 BF 4F
+00 00 7A 90 0A 00 02 28 7A 50 07 00 7A 50 30 00
+92 83 B2 21 18 42 B2 21 C8 4A 00 00 30 4D E0 C6
+02 23 53 00 0D 12 87 12 E2 C6 1C C7 2D 83 09 93
+E2 23 0E 93 E0 23 3D 41 30 4D 10 C7 02 23 3E 00
+9F 42 B2 21 00 00 3E 40 B2 21 2E 8F 30 4D 00 00
+04 48 4F 4C 44 00 4A 4E 3E 4F DA 3F 00 00 04 53
+49 47 4E 00 0E 93 3E 4F 7A 40 2D 00 D1 33 30 4D
+FA C5 02 55 2E 00 08 43 2F 83 8F 4E 00 00 0E 48
+0D 12 0E 12 3E F3 06 34 BF E3 00 00 3E E3 9F 53
+00 00 0E 63 87 12 D6 C6 14 C7 9C C6 54 C7 30 C7
+00 C6 70 CA C4 C5 26 C7 E4 C5 01 2E 0E 93 E3 37
+38 43 E2 3F 4E C7 82 53 22 00 82 43 B4 21 0D 12
+87 12 24 C4 2E C4 F8 C9 24 C4 22 00 F2 C7 C0 C7
+B2 40 20 00 B4 21 6E 4E 1E 53 1E B3 82 6E C6 21
+3D 41 3E 4F 30 4D 9A C7 82 2E 22 00 0D 12 87 12
+AA C7 24 C4 00 C6 F8 C9 26 C7 00 00 04 57 4F 52
+44 00 3C 40 C0 21 39 4C 3A 4C 09 5A 3A 5C 28 4C
+09 9A 15 24 7E 9A FC 27 1A 83 3B 40 60 00 C8 4C
+00 00 09 9A 0C 24 7C 4A 4E 9C 09 24 18 53 4B 9C
+F6 2F 7C 90 7B 00 F3 2F 5C 82 B4 21 F0 3F 1A 82
+C2 21 82 4A C4 21 1E 42 C6 21 08 8E CE 48 00 00
+30 4D 00 00 04 46 49 4E 44 00 2F 83 0C 4E 65 4C
+74 40 80 00 3B 40 CA 21 3E 4B 0E 93 1E 24 58 4C
+01 00 78 F0 1E 00 0E 58 2E 53 1E 4E FE FF 0E 93
+F3 27 09 4E 78 49 48 C4 48 95 F7 23 0A 4C FA 99
+01 00 F3 23 1A 53 58 83 FA 23 19 B3 09 63 0C 49
+6A 4E 1E 43 4A 93 01 30 2E 83 8F 4C 00 00 35 40
+FA C4 34 40 EC C4 30 4D 00 00 07 3E 4E 55 4D 42
+45 52 3C 4F 38 4F 29 4F 2F 82 1B 42 DC 21 6A 4C
+7A 80 30 00 7A 90 0A 00 05 28 7A 80 07 00 7A 90
+0A 00 12 28 0A 9B 22 C3 0F 2C 82 49 D0 04 82 48
+D2 04 82 4B C8 04 19 42 E4 04 18 42 E6 04 09 5A
+08 63 1C 53 1E 83 E3 23 8F 4C 00 00 8F 48 02 00
+8F 49 04 00 30 4D 32 C0 00 02 1B 42 DC 21 0C 43
+2D 15 3D 40 50 C9 09 43 08 43 3F 82 8F 4E 06 00
+0C 4E 7E 4C 6A 4C 7A 90 2D 00 04 28 C9 23 B1 43
+02 00 0B 3C 2B 43 7A 80 25 00 07 24 3B 52 6A 53
+04 24 3B 40 10 00 5A 83 BA 23 1C 53 1E 83 EA 3F
+52 C9 2F 24 2D 83 7A 90 28 00 CB 27 32 D0 00 02
+7A 90 F7 00 C6 27 7A 90 F5 00 23 20 0A 4E 09 43
+8F 49 02 00 5A 83 09 4A 09 5C 69 49 79 80 30 00
+79 90 0A 00 05 28 79 80 07 00 79 90 0A 00 0A 28
+09 9B 08 2C 8F 49 00 00 0E 4B 2C 15 B0 12 7E C4
+2A 17 E6 3F 9F 4F 04 00 02 00 AF 4F 04 00 0E 4A
+4E 93 2B 17 0E 4C 82 4B DC 21 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 00 00 01 2C 1A 42 C6 21 8A 4E 00 00
+A2 53 C6 21 3E 4F 30 4D 2C C5 05 41 4C 4C 4F 54
+82 5E C6 21 3E 4F 30 4D 0A 4E 3E 4F 00 4A F6 C9
+87 4C 49 54 45 52 41 4C 82 93 BE 21 0C 24 1A 42
+C6 21 A2 52 C6 21 BA 40 24 C4 00 00 8A 4E 02 00
+3E 4F 32 B0 00 02 32 C0 00 02 06 24 19 4A 02 00
+8A 4E 02 00 0E 49 EB 3F 30 4D 2C C7 05 43 4F 55
+4E 54 2F 83 1E 53 8F 4E 00 00 5E 4E FF FF 30 4D
+85 12 20 00 0D 12 87 12 C4 C4 70 CA F2 C7 80 CA
+3D 40 88 CA E2 22 A4 26 8A CA 0A 4E 3E 4F 3D 40
+A0 CA 39 27 3D 40 7A CA 1A E2 BE 21 BD 23 AC 27
+A2 CA 3E 4F 3D 40 7A CA BF 23 DE 53 00 00 68 4E
+08 5E F8 40 3F 00 00 00 3D 40 20 CD D2 3F D0 C5
 08 45 56 41 4C 55 41 54 45 00 39 40 C0 21 3C 49
-3B 49 3A 49 3D 15 B0 12 2A C4 46 CB AE CB B2 41
-C4 21 B2 41 C2 21 B2 41 C0 21 3D 41 30 4D 85 12
-BE 21 08 C5 04 51 55 49 54 00 82 43 08 18 31 40
-E0 20 B2 40 00 20 00 20 82 43 BE 21 B0 12 2A C4
-04 C8 8C C7 42 CB 82 C7 46 CB A4 C4 0C C5 1E C8
-0C 73 74 61 63 6B 20 65 6D 70 74 79 21 00 40 CC
-14 C8 30 FF A0 CA 26 C5 1E C8 0A 46 52 41 4D 20
-66 75 6C 6C 21 00 40 CC 3C C6 E0 CB C2 CA 05 41
-42 4F 52 54 3F 40 80 20 D0 3F 1E CC 86 41 42 4F
-52 54 22 00 87 12 38 C8 14 C8 40 CC B0 CA 2A C4
-8F 93 02 00 03 20 2F 52 3E 4F 30 4D B0 12 C8 D1
-B0 12 B6 C6 92 C3 1C 05 38 40 A0 AA 39 42 03 43
-19 83 FD 23 18 83 FA 23 92 B3 1C 05 F3 23 87 12
-42 D1 14 C8 DE 21 EA C4 AC C7 1E C8 04 1B 5B 37
-6D 00 D6 C7 58 C4 40 C6 9A CC 04 C8 1E C8 05 6C
-69 6E 65 3A D6 C7 D0 C4 24 C6 D6 C7 1E C8 04 1B
-5B 30 6D 00 D6 C7 24 CC 00 00 83 5B 27 5D 87 12
-C0 CC 14 C8 14 C8 B0 CA B0 CA 2A C4 E8 C8 01 27
-87 12 42 CB 80 C8 EE C8 40 C6 CE CC 2A C4 7A CB
-32 C5 81 5C 92 42 C0 21 C4 21 30 4D AA CC 81 5B
-82 43 BE 21 30 4D D2 CC 01 5D B2 43 BE 21 30 4D
-BE 4F 02 00 3E 4F 30 4D 9A CA 82 49 53 00 87 12
-BE CB EA C4 40 C6 12 CD AE CC 14 C8 F0 CC B0 CA
-2A C4 C0 CC F0 CC 2A C4 FA CC 09 49 4D 4D 45 44
-49 41 54 45 1A 42 B6 21 FA D0 80 00 00 00 30 4D
-C4 CB 88 50 4F 53 54 50 4F 4E 45 00 87 12 42 CB
-80 C8 EE C8 58 C4 40 C6 CE CC 0C C5 40 C6 5C CD
-14 C8 14 C8 B0 CA B0 CA 14 C8 B0 CA B0 CA 2A C4
-DE CC 81 3B 82 93 BE 21 B5 27 87 12 14 C8 2A C4
-B0 CA FA CD E0 CC 2A C4 62 CD 07 3A 4E 4F 4E 41
-4D 45 30 12 A0 CD 2F 83 8F 4E 00 00 1E 42 C6 21
-1E B3 0E 63 0A 4E 39 40 00 02 38 40 02 02 21 3C
-BA 40 87 12 FC FF A2 83 C6 21 B2 43 BE 21 30 4D
-7A CD 01 3A 30 12 A0 CD 92 B3 C6 21 A2 63 C6 21
-87 12 42 CB 80 C8 C8 CD 3D 41 08 4E 7A 4E 5A D3
-5A 53 0A 58 19 42 DA 21 6E 4E 3E F0 1E 00 09 5E
-3E 4F 82 48 B6 21 82 49 B8 21 82 4A BA 21 82 4F
-BC 21 2A 52 82 4A C6 21 30 41 82 9F BC 21 09 20
-18 42 B6 21 19 42 B8 21 A8 49 FE FF 89 48 00 00
-30 4D 87 12 1E C8 0F 73 74 61 63 6B 20 6D 69 73
-6D 61 74 63 68 21 4C CC 90 CB 05 44 45 46 45 52
-B0 12 B8 CD BA 40 30 40 FC FF BA 40 AE CD FE FF
-E3 3F 1E CB 06 43 52 45 41 54 45 00 B0 12 B8 CD
-BA 40 85 12 FC FF 8A 4A FE FF D6 3F 2A CE 05 44
-4F 45 53 3E 1A 42 BA 21 BA 40 84 12 00 00 8A 4D
-02 00 3D 41 30 4D 4E C9 05 3E 42 4F 44 59 2E 52
-30 4D 44 CE 04 43 4F 44 45 00 B0 12 B8 CD A2 82
-C6 21 87 12 D2 D0 AC D0 2A C4 84 CE 07 43 4F 44
-45 4E 4E 4D B0 12 86 CD F2 3F 00 00 07 45 4E 44
-43 4F 44 45 87 12 E0 D0 FA CD 2A C4 2C CC 03 41
-53 4D B2 40 B0 D0 DA 21 E0 3F AC CE 06 45 4E 44
-41 53 4D 00 87 12 B4 CE F4 D0 2A C4 00 00 05 43
-4F 4C 4F 4E 1A 42 C6 21 BA 40 87 12 00 00 A2 53
-C6 21 B2 43 BE 21 30 40 E0 D0 00 00 05 4C 4F 32
-48 49 1A 42 C6 21 BA 40 B0 12 00 00 BA 40 2A C4
-02 00 A2 52 C6 21 ED 3F 1A CD 85 48 49 32 4C 4F
-87 12 A0 CA 4A CF B0 CA E0 CC D2 D0 AC D0 2A C4
-1A CF 82 49 46 00 2F 83 8F 4E 00 00 1E 42 C6 21
-A2 52 C6 21 BE 40 40 C6 00 00 2E 53 30 4D 5E CE
-84 45 4C 53 45 00 A2 52 C6 21 1A 42 C6 21 BA 40
-3C C6 FC FF 8E 4A 00 00 2A 83 0E 4A 30 4D D0 C7
-84 54 48 45 4E 00 9E 42 C6 21 00 00 3E 4F 30 4D
-9C CE 85 42 45 47 49 4E 30 40 A0 CA 70 CF 85 55
-4E 54 49 4C 39 40 40 C6 A2 52 C6 21 1A 42 C6 21
-8A 49 FC FF 8A 4E FE FF 3E 4F 30 4D BE CE 85 41
-47 41 49 4E 39 40 3C C6 EF 3F 7A C8 85 57 48 49
-4C 45 87 12 36 CF 76 C4 2A C4 34 C8 86 52 45 50
-45 41 54 00 87 12 B4 CF 76 CF 2A C4 50 CF 82 44
-4F 00 2F 83 8F 4E 00 00 A2 53 C6 21 1E 42 C6 21
-BE 40 54 C6 FE FF A2 53 00 20 1A 42 00 20 8A 43
-00 00 30 4D E2 CA 84 4C 4F 4F 50 00 39 40 76 C6
-A2 52 C6 21 1A 42 C6 21 8A 49 FC FF 8A 4E FE FF
-1E 42 00 20 A2 83 00 20 2E 4E 0E 93 03 24 8E 4A
-00 00 F6 3F 3E 4F 30 4D 90 C6 85 2B 4C 4F 4F 50
-39 40 64 C6 E5 3F 06 D0 04 4D 4F 56 45 00 0A 4E
-38 4F 39 4F 3E 4F 0A 93 11 24 08 99 0F 24 06 2C
-F8 49 00 00 18 53 1A 83 FB 23 30 4D 08 5A 09 5A
-19 83 18 83 E8 49 00 00 1A 83 FA 23 30 4D 14 C8
-CA 21 F2 C4 2A C4 84 12 7E D0 AE CF 46 D3 DE CF
-BE CC 32 CF 3A D0 5A D4 64 C8 66 D1 80 D1 8E CF
-00 D2 00 00 2C D4 E8 CC 78 CE 00 00 84 12 7E D0
-78 D9 DA D9 2C D9 4E DA F2 D8 00 00 22 D6 00 00
-E8 D8 98 D9 4A D9 88 D9 32 D7 00 00 00 00 2A DA
-AA D0 3A 40 0C 00 39 40 CA 21 38 40 CC 21 C6 3F
-3A 40 0E 00 39 40 CC 21 38 40 CA 21 B9 3F 82 43
-CC 21 30 4D 92 42 CA 21 DA 21 30 4D 86 D0 EE D0
-F4 D0 04 D1 3A 4E 82 4A C8 21 2E 4E 82 4E C6 21
-3D 40 10 00 09 4A 08 49 29 83 18 48 FE FF 0E 98
-FC 2B 89 48 00 00 1D 83 F6 23 2A 4A 0A 93 F0 23
-3E 4F 3D 41 30 4D 32 CD 09 50 57 52 5F 53 54 41
-54 45 84 12 FC D0 D0 D0 60 DA CC CF 09 52 53 54
-5F 53 54 41 54 45 92 42 0E 18 46 D1 92 42 0C 18
-48 D1 EF 3F 38 D1 08 50 57 52 5F 48 45 52 45 00
-92 42 C8 21 46 D1 92 42 C6 21 48 D1 30 4D 4C D1
-08 52 53 54 5F 48 45 52 45 00 92 42 C8 21 0E 18
-92 42 C6 21 0C 18 EC 3F BC CF 04 57 49 50 45 00
-39 40 10 00 29 83 B9 43 80 FF FC 23 B2 40 E0 C6
-DE C6 B2 40 0A D2 08 D2 B2 40 D0 D0 0E 18 B2 40
-60 DA 0C 18 30 12 56 D1 B2 40 86 C7 84 C7 B2 40
-08 C8 06 C8 B2 40 98 C6 96 C6 B2 40 18 00 0A 18
-37 40 1A C4 36 40 92 C4 35 40 0E C4 34 40 00 C4
-B2 40 0A 00 DC 21 B2 40 20 00 B4 21 30 41 9A D1
-04 57 41 52 4D 00 30 40 0A D2 3D 40 40 D2 92 C3
-30 01 1E 42 08 18 0E 93 12 24 F2 B0 10 00 00 02
-02 20 3E E3 1E 53 F2 D0 30 00 0A 02 3E 90 0A 00
-B7 27 3E 90 16 00 B4 2F 2E 93 83 27 8C 2F 30 4D
-1E C8 06 0D 1B 5B 37 6D 23 00 D6 C7 34 C6 1E C8
-19 46 61 73 74 46 6F 72 74 68 20 C2 A9 4A 2E 4D
-2E 54 68 6F 6F 72 65 6E 73 20 D6 C7 14 C8 30 FF
-A0 CA B8 C4 24 C6 1E C8 0A 62 79 74 65 73 20 66
-72 65 65 00 3C C6 9A CC 82 CF 04 43 4F 4C 44 00
-92 B3 0A 05 FD 23 B2 40 04 A5 20 01 40 D2 B2 40
-88 5A CC 01 B2 43 06 02 B2 40 FC FF 02 02 D2 D3
-02 02 F2 D3 26 02 F2 43 22 02 F2 40 A5 00 A1 01
-F2 40 10 00 A0 01 D2 43 A1 01 B2 40 00 A5 60 01
-B2 40 FF 1E 80 01 B2 40 BA 00 82 01 B2 40 E8 01
-84 01 39 40 00 01 82 43 88 01 92 D2 5E 01 08 18
-38 40 59 14 18 83 FE 23 19 83 FA 23 39 40 00 10
-29 83 89 43 00 20 FC 23 39 40 26 00 29 83 B9 40
-9E D2 DA FF FB 23 B2 40 26 C7 E4 FF B2 40 81 00
-00 05 92 42 02 18 06 05 92 42 04 18 08 05 92 C3
-00 05 92 D3 1A 05 3F 40 80 20 31 40 E0 20 30 12
-06 D2 4B 3F 8A D2 07 43 4F 4D 50 41 52 45 0C 4E
-38 4F 3B 4F 39 4F 0E 4B 0E 5C 0C 24 1B 83 07 30
-1C 83 07 30 19 53 F9 98 FF FF F5 27 02 2C 3E 43
-30 4D 1E 43 30 4D B2 CD 86 5B 54 48 45 4E 5D 00
-30 4D 78 D3 86 5B 45 4C 53 45 5D 00 87 12 14 C8
-00 00 C6 C4 42 CB 80 C8 24 CB 34 C4 40 C6 EE D3
-44 C4 1E C8 06 5B 54 48 45 4E 5D 00 4E D3 4A C6
-BE D3 F8 C7 D0 C4 58 C4 4A C6 94 D3 2A C4 44 C4
-1E C8 06 5B 45 4C 53 45 5D 00 4E D3 4A C6 DC D3
-F8 C7 D0 C4 58 C4 4A C6 92 D3 2A C4 1E C8 04 5B
-49 46 5D 00 4E D3 4A C6 94 D3 3C C6 92 D3 F8 C7
-1E C8 05 0D 0A 6B 6F 20 D6 C7 8C C7 32 CB 3C C6
-94 D3 84 D3 84 5B 49 46 5D 00 0E 93 3E 4F BE 27
-30 4D 04 D4 89 5B 44 45 46 49 4E 45 44 5D 87 12
-42 CB 80 C8 EE C8 6A C4 2A C4 14 D4 8B 5B 55 4E
-44 45 46 49 4E 45 44 5D 87 12 42 CB 80 C8 EE C8
-6A C4 00 C5 2A C4 48 D4 3D 41 B2 4E 0E 18 A2 4E
-0C 18 3E 4F 30 40 56 D1 48 D0 06 4D 41 52 4B 45
-52 00 B0 12 B8 CD BA 40 84 12 FC FF BA 40 46 D4
-FE FF 9A 42 C8 21 00 00 28 83 8A 48 02 00 A2 52
-C6 21 30 40 00 CE 1C 15 B0 12 2A C4 80 C8 EE C8
-4A C6 9C D4 AA C9 40 C6 CE CC B6 D4 9E D4 39 4E
-39 80 86 12 08 24 19 53 02 20 2E 4E 04 3C 2E 53
-19 53 01 24 2E 82 1B 17 30 41 3E 40 28 00 B0 12
-86 D4 19 42 C6 21 A2 53 C6 21 89 4E 00 00 3E 40
-29 00 1C 15 12 12 C4 21 92 53 C4 21 B0 12 2A C4
-80 C8 AA C9 40 C6 F4 D4 EA D4 21 53 3E 90 10 00
-7D 2D E1 2B F6 D4 B2 41 C4 21 DD 3F 87 12 42 CB
-74 C8 04 D5 0C 43 1B 42 C6 21 A2 53 C6 21 6A 4E
-3E 4F 7A 90 23 00 27 20 92 53 C4 21 B0 12 86 D4
-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 C6 21 A2 53 C6 21 89 4E 00 00
-3E 4F 3D 41 30 4D 7A 90 26 00 07 20 3C 40 10 02
-92 53 C4 21 B0 12 86 D4 ED 3F 7A 90 40 00 16 20
-3C 40 20 00 92 53 C4 21 B0 12 D2 D4 0C 20 3C 50
-10 00 3E 40 2B 00 B0 12 D2 D4 92 92 C0 21 C4 21
-02 24 92 53 C4 21 8E 10 0C 5E DA 3F B0 12 D2 D4
-FA 23 3C 50 10 00 B0 12 BA D4 EF 3F 0C 43 1B 42
-C6 21 A2 53 C6 21 87 12 42 CB 74 C8 CE D5 FE 90
-26 00 00 00 3E 40 20 00 03 20 3C 50 82 00 C8 3F
-B0 12 D2 D4 E1 23 3C 50 80 00 B0 12 BA D4 DC 3F
-D6 C6 04 52 45 54 49 00 87 12 14 C8 00 13 B0 CA
-2A C4 14 C8 2C 00 FC D4 C6 D5 0C D6 09 4B 2E 4E
-0E DC A4 3F FC CE 03 4D 4F 56 84 12 02 D6 00 40
-16 D6 05 4D 4F 56 2E 42 84 12 02 D6 40 40 00 00
-03 41 44 44 84 12 02 D6 00 50 30 D6 05 41 44 44
-2E 42 84 12 02 D6 40 50 3C D6 04 41 44 44 43 00
-84 12 02 D6 00 60 4A D6 06 41 44 44 43 2E 42 00
-84 12 02 D6 40 60 F2 D5 04 53 55 42 43 00 84 12
-02 D6 00 70 68 D6 06 53 55 42 43 2E 42 00 84 12
-02 D6 40 70 76 D6 03 53 55 42 84 12 02 D6 00 80
-86 D6 05 53 55 42 2E 42 84 12 02 D6 40 80 DE CE
-03 43 4D 50 84 12 02 D6 00 90 A0 D6 05 43 4D 50
-2E 42 84 12 02 D6 40 90 CC CE 04 44 41 44 44 00
-84 12 02 D6 00 A0 BA D6 06 44 41 44 44 2E 42 00
-84 12 02 D6 40 A0 AC D6 03 42 49 54 84 12 02 D6
-00 B0 D8 D6 05 42 49 54 2E 42 84 12 02 D6 40 B0
-E4 D6 03 42 49 43 84 12 02 D6 00 C0 F2 D6 05 42
-49 43 2E 42 84 12 02 D6 40 C0 FE D6 03 42 49 53
-84 12 02 D6 00 D0 0C D7 05 42 49 53 2E 42 84 12
-02 D6 40 D0 00 00 03 58 4F 52 84 12 02 D6 00 E0
-26 D7 05 58 4F 52 2E 42 84 12 02 D6 40 E0 58 D6
-03 41 4E 44 84 12 02 D6 00 F0 40 D7 05 41 4E 44
-2E 42 84 12 02 D6 40 F0 42 CB FC D4 5E D7 0A 4C
-3C F0 70 00 8A 10 3A F0 0F 00 0C DA 4F 3F 92 D6
-03 52 52 43 84 12 58 D7 00 10 70 D7 05 52 52 43
-2E 42 84 12 58 D7 40 10 7C D7 04 53 57 50 42 00
-84 12 58 D7 80 10 8A D7 03 52 52 41 84 12 58 D7
-00 11 98 D7 05 52 52 41 2E 42 84 12 58 D7 40 11
-A4 D7 03 53 58 54 84 12 58 D7 80 11 00 00 04 50
-55 53 48 00 84 12 58 D7 00 12 BE D7 06 50 55 53
-48 2E 42 00 84 12 58 D7 40 12 18 D7 04 43 41 4C
-4C 00 84 12 58 D7 80 12 1A 53 0E 4A 87 12 34 C6
-1E C8 0D 6F 75 74 20 6F 66 20 62 6F 75 6E 64 73
-4C CC 42 CB 74 C8 08 D8 92 53 C4 21 3E 40 2C 00
-B0 12 2A C4 80 C8 AA C9 40 C6 CE CC BC D5 20 D8
-0A 4E 3E 4F 1A 83 E0 33 29 4E 59 0E 0A 28 08 4C
-59 0A 01 28 0C 8A 08 8A 38 90 10 00 D5 2F 5A 0E
-94 3F 2A 92 D1 2F 8A 10 5A 06 8F 3F B2 D7 04 52
-52 43 4D 00 84 12 02 D8 50 00 4E D8 04 52 52 41
-4D 00 84 12 02 D8 50 01 5C D8 04 52 4C 41 4D 00
-84 12 02 D8 50 02 6A D8 04 52 52 55 4D 00 84 12
-02 D8 50 03 CC D7 05 50 55 53 48 4D 84 12 02 D8
-00 15 86 D8 04 50 4F 50 4D 00 84 12 02 D8 00 17
-78 D8 03 53 3E 3D 85 12 00 38 A2 D8 02 53 3C 00
-85 12 00 34 94 D8 03 30 3E 3D 85 12 00 30 B6 D8
-02 30 3C 00 85 12 00 30 00 00 02 55 3C 00 85 12
-00 2C CA D8 03 55 3E 3D 85 12 00 28 C0 D8 03 30
-3C 3E 85 12 00 24 DE D8 02 30 3D 00 85 12 00 20
-00 00 02 49 46 00 1A 42 C6 21 8A 4E 00 00 A2 53
-C6 21 0E 4A 30 4D D4 D8 04 54 48 45 4E 00 1A 42
-C6 21 08 4E 3E 4F 09 48 29 53 0A 89 0A 11 3A 90
-00 02 63 2F 88 DA 00 00 30 4D C8 D6 04 45 4C 53
-45 00 1A 42 C6 21 BA 40 00 3C 00 00 A2 53 C6 21
-2F 83 8F 4A 00 00 E3 3F 08 D9 05 55 4E 54 49 4C
-3A 4F 08 4E 3E 4F 19 42 C6 21 2A 83 0A 89 0A 11
-3A 90 00 FE 42 3B 3A F0 FF 03 08 DA 89 48 00 00
-A2 53 C6 21 30 4D 4C D7 05 41 47 41 49 4E 0A 4E
-38 40 00 3C E7 3F 00 00 05 57 48 49 4C 45 87 12
-F6 D8 76 C4 2A C4 AC D8 06 52 45 50 45 41 54 00
-87 12 7E D9 0E D9 2A C4 AA D9 3D 41 08 4E 3E 4F
-2A 48 B2 92 C4 21 CD 2F 98 42 C6 21 00 00 30 4D
-DC D7 03 42 57 31 84 12 A8 D9 00 00 C2 D9 03 42
-57 32 84 12 A8 D9 00 00 CE D9 03 42 57 33 84 12
-A8 D9 00 00 E6 D9 3D 41 1A 42 C6 21 28 4E B2 92
-C4 21 90 2B BA 4F 00 00 A2 53 C6 21 8E 4A 00 00
-3E 4F 30 4D 00 00 03 46 57 31 84 12 E4 D9 00 00
-06 DA 03 46 57 32 84 12 E4 D9 00 00 12 DA 03 46
-57 33 84 12 E4 D9 00 00 00 00 05 3F 47 4F 54 4F
-3E 90 00 30 07 24 3E E0 00 04 3E B0 00 10 02 24
-3E E0 00 08 87 12 C0 CC DA CA 2A C4 1E DA 04 47
-4F 54 4F 00 2F 83 8F 4E 00 00 3E 40 00 3C F2 3F
+3B 49 3A 49 3D 15 87 12 74 CA DC CA B2 41 C4 21
+B2 41 C2 21 B2 41 C0 21 3D 41 30 4D 85 12 BE 21
+00 00 04 51 55 49 54 00 82 43 08 18 31 40 E0 20
+B2 40 00 20 00 20 82 43 BE 21 87 12 2E C6 D4 C4
+70 CA C4 C5 74 CA 8C C6 BC C6 2E C4 0C 73 74 61
+63 6B 20 65 6D 70 74 79 21 00 6E CB 24 C4 40 FF
+2A CE C4 C6 2E C4 0A 46 52 41 4D 20 66 75 6C 6C
+21 00 6E CB 48 C4 0C CB 0A CA 05 41 42 4F 52 54
+3F 40 80 20 D1 3F 4A CB 86 41 42 4F 52 54 22 00
+0D 12 87 12 AA C7 24 C4 6E CB F8 C9 26 C7 8F 93
+02 00 03 20 2F 52 3E 4F 30 4D B0 12 96 CF B0 12
+06 C5 92 C3 1C 05 18 42 06 18 39 40 20 00 19 83
+FE 23 18 83 FA 23 92 B3 1C 05 F3 23 0D 12 87 12
+10 CF 24 C4 DE 21 02 C5 D6 C5 2E C4 04 1B 5B 37
+6D 00 00 C6 7C C6 4C C4 C8 CB 2E C6 2E C4 05 6C
+69 6E 65 3A 00 C6 66 C7 00 C6 2E C4 04 1B 5B 30
+6D 00 00 C6 50 CB 00 00 83 5B 27 5D 0D 12 87 12
+F0 CB 24 C4 24 C4 F8 C9 F8 C9 26 C7 44 C8 01 27
+0D 12 87 12 70 CA F2 C7 4A C8 4C C4 00 CC 26 C7
+AA CA D2 C6 81 5C 92 42 C0 21 C4 21 30 4D D8 CB
+81 5B 82 43 BE 21 30 4D 04 CC 01 5D B2 43 BE 21
+30 4D F2 CA 88 50 4F 53 54 50 4F 4E 45 00 0D 12
+87 12 70 CA F2 C7 4A C8 7C C6 4C C4 00 CC BC C6
+4C C4 50 CC 24 C4 24 C4 F8 C9 F8 C9 24 C4 F8 C9
+F8 C9 26 C7 40 C7 09 49 4D 4D 45 44 49 41 54 45
+1A 42 B6 21 FA D0 80 00 00 00 30 4D 10 CC 01 3A
+30 12 B8 CC 92 B3 C6 21 A2 63 C6 21 0D 12 87 12
+70 CA F2 C7 86 CC 3D 41 08 4E 7A 4E 5A D3 5A 53
+0A 58 19 42 DA 21 6E 4E 3E F0 1E 00 09 5E 3E 4F
+82 48 B6 21 82 49 B8 21 82 4A BA 21 82 4F BC 21
+2A 52 82 4A C6 21 30 41 BA 40 0D 12 FC FF BA 40
+87 12 FE FF B2 43 BE 21 30 4D 6E CC 07 3A 4E 4F
+4E 41 4D 45 30 12 B8 CC 2F 83 8F 4E 00 00 1E 42
+C6 21 1E B3 0E 63 0A 4E 39 40 10 02 38 40 12 02
+D7 3F 82 9F BC 21 09 20 18 42 B6 21 19 42 B8 21
+A8 49 FE FF 89 48 00 00 30 4D 0D 12 87 12 2E C4
+0F 73 74 61 63 6B 20 6D 69 73 6D 61 74 63 68 21
+7A CB CC CC 81 3B 82 93 BE 21 6D 27 0D 12 87 12
+24 C4 26 C7 F8 C9 F2 CC 12 CC 26 C7 5C CA 06 43
+52 45 41 54 45 00 B0 12 74 CC BA 40 85 12 FC FF
+8A 4A FE FF D5 3F C0 CA 05 44 4F 45 53 3E 1A 42
+BA 21 BA 40 84 12 00 00 8A 4D 02 00 3D 41 30 4D
+3E CD 04 43 4F 44 45 00 B0 12 74 CC A2 82 C6 21
+0D 12 87 12 8A CE 64 CE 26 C7 72 CD 07 43 4F 44
+45 4E 4E 4D 30 12 7C CD 9F 3F 00 00 07 45 4E 44
+43 4F 44 45 0D 12 87 12 F2 CC A4 CE 26 C7 58 CB
+03 41 53 4D B2 40 68 CE DA 21 DE 3F 9C CD 06 45
+4E 44 41 53 4D 00 0D 12 87 12 A4 CD C2 CE 26 C7
+00 00 05 43 4F 4C 4F 4E 1A 42 C6 21 BA 40 0D 12
+00 00 BA 40 87 12 02 00 A2 52 C6 21 B2 43 BE 21
+30 40 A4 CE 00 00 05 4C 4F 32 48 49 A2 83 C6 21
+1A 42 C6 21 EE 3F 56 CC 85 48 49 32 4C 4F 0D 12
+87 12 2A CE 1E CE F8 C9 12 CC 80 CD 26 C7 2E 53
+30 4D 8C CD 85 42 45 47 49 4E 2F 83 8F 4E 00 00
+1E 42 C6 21 30 4D 24 C4 CA 21 AE C6 26 C7 84 12
+36 CE B0 CD 5C D0 58 CD EE CB 08 CE 42 C6 20 CA
+D8 C7 34 CF 4E CF 62 C7 CE CF 00 00 DE D1 1A CC
+AA C8 00 00 84 12 36 CE 10 D7 76 D7 C4 D6 C6 D7
+8A D6 00 00 BA D3 00 00 80 D6 32 D7 E2 D6 20 D7
+CA D4 00 00 00 00 E2 D7 62 CE 3A 40 0C 00 39 40
+D6 21 08 49 28 53 19 83 18 83 E8 49 00 00 1A 83
+FA 23 30 4D 3A 40 0E 00 38 40 CA 21 09 48 29 53
+F8 49 00 00 18 53 1A 83 FB 23 30 4D 82 43 CC 21
+30 4D 92 42 CA 21 DA 21 30 4D 3E CE BC CE C2 CE
+D2 CE 3A 4E 82 4A C8 21 2E 4E 82 4E C6 21 3D 40
+10 00 09 4A 08 49 29 83 18 48 FE FF 0E 98 FC 2B
+89 48 00 00 1D 83 F6 23 2A 4A 0A 93 F0 23 3E 4F
+3D 41 30 4D 24 CC 09 50 57 52 5F 53 54 41 54 45
+84 12 CA CE 88 CE FE D7 A6 C7 09 52 53 54 5F 53
+54 41 54 45 92 42 0E 18 14 CF 92 42 0C 18 16 CF
+EF 3F 06 CF 08 50 57 52 5F 48 45 52 45 00 92 42
+C8 21 14 CF 92 42 C6 21 16 CF 30 4D 1A CF 08 52
+53 54 5F 48 45 52 45 00 92 42 C8 21 0E 18 92 42
+C6 21 0C 18 EC 3F EC C7 04 57 49 50 45 00 39 40
+10 00 29 83 B9 43 80 FF FC 23 B2 40 04 C4 02 C4
+B2 40 D8 CF D6 CF B2 40 88 CE 0E 18 B2 40 FE D7
+0C 18 30 12 24 CF B2 40 C8 C5 C6 C5 B2 40 32 C6
+30 C6 B2 40 4A C6 48 C6 B2 40 18 00 0A 18 37 40
+26 C7 36 40 9C C6 35 40 FA C4 34 40 EC C4 B2 40
+0A 00 DC 21 B2 40 20 00 B4 21 30 41 68 CF 04 57
+41 52 4D 00 30 40 D8 CF 3D 40 12 D0 92 C3 30 01
+1E 42 08 18 0E 93 14 24 F2 B0 10 00 00 02 02 20
+3E E3 1E 53 F2 D0 30 00 0A 02 92 D3 1A 05 3E 90
+0A 00 B5 27 3E 90 16 00 B2 2F 2E 93 81 27 8A 2F
+30 4D 2E C4 07 0D 0A 1B 5B 37 6D 23 00 C6 9C C7
+2E C4 19 46 61 73 74 46 6F 72 74 68 20 C2 A9 4A
+2E 4D 2E 54 68 6F 6F 72 65 6E 73 20 00 C6 24 C4
+40 FF 2A CE A6 C6 66 C7 2E C4 0A 62 79 74 65 73
+20 66 72 65 65 00 48 C4 C8 CB 24 CE 04 43 4F 4C
+44 00 92 B3 0A 05 FD 23 B2 40 04 A5 20 01 31 40
+E0 20 B2 40 88 5A CC 01 B2 43 06 02 B2 40 FC FF
+02 02 D2 D3 04 02 F2 D3 26 02 F2 43 22 02 F2 40
+A5 00 A1 01 F2 40 10 00 A0 01 D2 43 A1 01 B2 40
+00 A5 60 01 B2 40 FF 1E 80 01 B2 40 BA 00 82 01
+B2 40 E8 01 84 01 39 40 00 01 82 43 88 01 92 D2
+5E 01 08 18 38 40 59 14 18 83 FE 23 19 83 FA 23
+39 40 00 10 29 83 89 43 00 20 FC 23 B0 12 0E C4
+B2 40 81 00 00 05 92 42 02 18 06 05 92 42 04 18
+08 05 92 C3 00 05 3F 40 80 20 30 12 D4 CF 54 3F
+24 CD 86 5B 54 48 45 4E 5D 00 30 4D 0C 4E 38 4F
+3B 4F 39 4F 0E 4B 0E 5C 10 24 1B 83 06 30 1C 83
+04 30 19 53 F9 98 FF FF F5 27 2D 4D 3E 4F 30 4D
+2F 53 9F 83 00 00 F9 23 2F 53 2D 53 F7 3F 02 D1
+86 5B 45 4C 53 45 5D 00 0D 12 87 12 24 C4 00 00
+AA C6 70 CA F2 C7 62 CA 68 C6 4C C4 9A D1 70 C6
+2E C4 06 5B 54 48 45 4E 5D 00 0C D1 74 D1 30 D1
+52 D1 26 C7 70 C6 2E C4 06 5B 45 4C 53 45 5D 00
+0C D1 8A D1 30 D1 50 D1 26 C7 2E C4 04 5B 49 46
+5D 00 0C D1 52 D1 48 C4 50 D1 22 C6 2E C4 05 0D
+0A 6B 6F 20 00 C6 D4 C4 C4 C4 48 C4 52 D1 40 D1
+84 5B 49 46 5D 00 0E 93 3E 4F C6 27 30 4D 2F 53
+30 4D B0 D1 89 5B 44 45 46 49 4E 45 44 5D 0D 12
+87 12 70 CA F2 C7 4A C8 BE D1 26 C7 C4 D1 8B 5B
+55 4E 44 45 46 49 4E 45 44 5D 0D 12 87 12 CE D1
+F2 D1 3D 41 30 40 B6 C6 38 40 C0 21 0A 4E 39 48
+2E 48 09 5E 1E 52 C4 21 09 9E 03 24 7A 9E FC 27
+1E 83 0A 4E 2A 88 82 4A C4 21 30 4D 1C 15 87 12
+F2 C7 4A C8 42 C4 30 D2 06 C9 4C C4 00 CC 4A D2
+32 D2 39 4E 39 80 86 12 08 24 19 53 02 20 2E 4E
+04 3C 2E 53 19 53 01 24 2E 82 1B 17 30 41 3E 40
+28 00 B0 12 1C D2 19 42 C6 21 A2 53 C6 21 89 4E
+00 00 3E 40 29 00 1C 15 12 12 C4 21 92 53 C4 21
+87 12 F2 C7 06 C9 4C C4 86 D2 7C D2 21 53 3E 90
+10 00 80 2D E2 2B 88 D2 B2 41 C4 21 DE 3F 0D 12
+87 12 70 CA F8 D1 98 D2 0C 43 1B 42 C6 21 A2 53
+C6 21 6A 4E 3E 4F 7A 90 23 00 27 20 92 53 C4 21
+B0 12 1C D2 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 C6 21 A2 53 C6 21
+89 4E 00 00 3E 4F 3D 41 30 4D 7A 90 26 00 07 20
+3C 40 10 02 92 53 C4 21 B0 12 1C D2 ED 3F 7A 90
+40 00 16 20 3C 40 20 00 92 53 C4 21 B0 12 66 D2
+0C 20 3C 50 10 00 3E 40 2B 00 B0 12 66 D2 92 92
+C0 21 C4 21 02 24 92 53 C4 21 8E 10 0C 5E DA 3F
+B0 12 66 D2 FA 23 3C 50 10 00 B0 12 4E D2 EF 3F
+0C 43 1B 42 C6 21 A2 53 C6 21 0D 12 87 12 70 CA
+F8 D1 64 D3 FE 90 26 00 00 00 3E 40 20 00 03 20
+3C 50 82 00 C7 3F B0 12 66 D2 E0 23 3C 50 80 00
+B0 12 4E D2 DB 3F 00 00 04 52 45 54 49 00 0D 12
+87 12 24 C4 00 13 F8 C9 26 C7 24 C4 2C 00 8E D2
+5A D3 A4 D3 09 4B 2E 4E 0E DC A2 3F F6 CD 03 4D
+4F 56 84 12 9A D3 00 40 AE D3 05 4D 4F 56 2E 42
+84 12 9A D3 40 40 00 00 03 41 44 44 84 12 9A D3
+00 50 C8 D3 05 41 44 44 2E 42 84 12 9A D3 40 50
+D4 D3 04 41 44 44 43 00 84 12 9A D3 00 60 E2 D3
+06 41 44 44 43 2E 42 00 84 12 9A D3 40 60 88 D3
+04 53 55 42 43 00 84 12 9A D3 00 70 00 D4 06 53
+55 42 43 2E 42 00 84 12 9A D3 40 70 0E D4 03 53
+55 42 84 12 9A D3 00 80 1E D4 05 53 55 42 2E 42
+84 12 9A D3 40 80 D2 CD 03 43 4D 50 84 12 9A D3
+00 90 38 D4 05 43 4D 50 2E 42 84 12 9A D3 40 90
+BE CD 04 44 41 44 44 00 84 12 9A D3 00 A0 52 D4
+06 44 41 44 44 2E 42 00 84 12 9A D3 40 A0 44 D4
+03 42 49 54 84 12 9A D3 00 B0 70 D4 05 42 49 54
+2E 42 84 12 9A D3 40 B0 7C D4 03 42 49 43 84 12
+9A D3 00 C0 8A D4 05 42 49 43 2E 42 84 12 9A D3
+40 C0 96 D4 03 42 49 53 84 12 9A D3 00 D0 A4 D4
+05 42 49 53 2E 42 84 12 9A D3 40 D0 00 00 03 58
+4F 52 84 12 9A D3 00 E0 BE D4 05 58 4F 52 2E 42
+84 12 9A D3 40 E0 F0 D3 03 41 4E 44 84 12 9A D3
+00 F0 D8 D4 05 41 4E 44 2E 42 84 12 9A D3 40 F0
+70 CA 8E D2 F6 D4 0A 4C 3C F0 70 00 8A 10 3A F0
+0F 00 0C DA 4F 3F 2A D4 03 52 52 43 84 12 F0 D4
+00 10 08 D5 05 52 52 43 2E 42 84 12 F0 D4 40 10
+14 D5 04 53 57 50 42 00 84 12 F0 D4 80 10 22 D5
+03 52 52 41 84 12 F0 D4 00 11 30 D5 05 52 52 41
+2E 42 84 12 F0 D4 40 11 3C D5 03 53 58 54 84 12
+F0 D4 80 11 00 00 04 50 55 53 48 00 84 12 F0 D4
+00 12 56 D5 06 50 55 53 48 2E 42 00 84 12 F0 D4
+40 12 B0 D4 04 43 41 4C 4C 00 84 12 F0 D4 80 12
+1A 53 0E 4A 0D 12 87 12 9C C7 2E C4 0D 6F 75 74
+20 6F 66 20 62 6F 75 6E 64 73 7A CB 70 CA F8 D1
+A2 D5 92 53 C4 21 3E 40 2C 00 87 12 F2 C7 06 C9
+4C C4 00 CC 50 D3 B8 D5 0A 4E 3E 4F 1A 83 E0 33
+29 4E 59 0E 0A 28 08 4C 59 0A 01 28 0C 8A 08 8A
+38 90 10 00 D5 2F 5A 0E 94 3F 2A 92 D1 2F 8A 10
+5A 06 8F 3F 4A D5 04 52 52 43 4D 00 84 12 9C D5
+50 00 E6 D5 04 52 52 41 4D 00 84 12 9C D5 50 01
+F4 D5 04 52 4C 41 4D 00 84 12 9C D5 50 02 02 D6
+04 52 52 55 4D 00 84 12 9C D5 50 03 64 D5 05 50
+55 53 48 4D 84 12 9C D5 00 15 1E D6 04 50 4F 50
+4D 00 84 12 9C D5 00 17 10 D6 03 53 3E 3D 85 12
+00 38 3A D6 02 53 3C 00 85 12 00 34 2C D6 03 30
+3E 3D 85 12 00 30 4E D6 02 30 3C 00 85 12 00 30
+00 00 02 55 3C 00 85 12 00 2C 62 D6 03 55 3E 3D
+85 12 00 28 58 D6 03 30 3C 3E 85 12 00 24 76 D6
+02 30 3D 00 85 12 00 20 00 00 02 49 46 00 1A 42
+C6 21 8A 4E 00 00 A2 53 C6 21 0E 4A 30 4D 6C D6
+04 54 48 45 4E 00 1A 42 C6 21 08 4E 3E 4F 09 48
+29 53 0A 89 0A 11 3A 90 00 02 63 2F 88 DA 00 00
+30 4D 60 D4 04 45 4C 53 45 00 1A 42 C6 21 BA 40
+00 3C 00 00 A2 53 C6 21 2F 83 8F 4A 00 00 E3 3F
+A0 D6 05 55 4E 54 49 4C 3A 4F 08 4E 3E 4F 19 42
+C6 21 2A 83 0A 89 0A 11 3A 90 00 FE 42 3B 3A F0
+FF 03 08 DA 89 48 00 00 A2 53 C6 21 30 4D E4 D4
+05 41 47 41 49 4E 0A 4E 38 40 00 3C E7 3F 00 00
+05 57 48 49 4C 45 0D 12 87 12 8E D6 82 C6 26 C7
+44 D6 06 52 45 50 45 41 54 00 0D 12 87 12 16 D7
+A6 D6 26 C7 46 D7 3D 41 08 4E 3E 4F 2A 48 B2 92
+C4 21 CB 2F 98 42 C6 21 00 00 30 4D 74 D5 03 42
+57 31 84 12 44 D7 00 00 5E D7 03 42 57 32 84 12
+44 D7 00 00 6A D7 03 42 57 33 84 12 44 D7 00 00
+82 D7 3D 41 1A 42 C6 21 28 4E B2 92 C4 21 8E 2B
+BA 4F 00 00 A2 53 C6 21 8E 4A 00 00 3E 4F 30 4D
+00 00 03 46 57 31 84 12 80 D7 00 00 A2 D7 03 46
+57 32 84 12 80 D7 00 00 AE D7 03 46 57 33 84 12
+80 D7 00 00 BA D7 04 47 4F 54 4F 00 2F 83 8F 4E
+00 00 3E 40 00 3C 0D 12 87 12 F0 CB 18 CA 26 C7
+00 00 05 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
 @FFFE
-9E D2
+6E D0
 q
index 4d775ef..5ad7704 100644 (file)
 @1800
-10 00 08 00 00 D6 E8 03 05 00 18 00 50 DA D0 D0
-2D 01 6B B0 B6 C6 C8 C6
+10 00 08 00 00 D6 E8 03 05 00 18 00 EE D7 88 CE
+2E 01 6B B0 06 C5 18 C5 D4 CF
 @C400
-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 3A 41 0D 12 0D 4A
-30 4D 00 00 04 45 58 49 54 00 3D 41 30 4D 24 C4
-03 44 55 50 2F 83 8F 4E 00 00 30 4D 00 00 04 32
-44 55 50 00 8F 4E FE FF AF 4F FC FF 2F 82 30 4D
-00 00 04 3F 44 55 50 00 0E 93 EC 23 30 4D 30 C4
-04 44 52 4F 50 00 3E 4F 30 4D 2F 53 30 4D 3E C4
-04 53 57 41 50 00 2A 4F 8F 4E 00 00 0E 4A 30 4D
-52 C4 02 3E 52 00 0E 12 3E 4F 30 4D 70 C4 02 52
-3E 00 2F 83 8F 4E 00 00 3E 41 30 4D 60 C4 05 44
-45 50 54 48 8F 4E FE FF 3E 40 80 20 0E 8F 0E 11
-2F 83 30 4D 00 00 01 2D 3E 8F 3E E3 1E 53 30 4D
-00 00 02 31 2B 00 1E 53 30 4D C2 C4 02 31 2D 00
-1E 83 30 4D 3E F3 06 34 BF E3 00 00 3E E3 9F 53
-00 00 0E 63 30 4D 00 00 01 40 2E 4E 30 4D E8 C4
-01 21 BE 4F 00 00 3E 4F 30 4D CC C4 02 30 3D 00
-1E 83 0E 7E 30 4D FC C4 02 30 3C 00 0E 5E 0E 7E
-3E E3 30 4D 00 00 01 3D 3E 8F FA 27 0E F3 30 4D
-00 00 02 55 3C 00 3E 8F F9 2B 01 24 3E 43 30 4D
-16 C5 02 3C 23 00 B2 40 B2 21 B2 21 30 4D 0B 4E
+30 40 04 C4 B0 12 06 C5 12 D2 0A 18 F9 3F 39 40
+26 00 29 83 B9 40 6E D0 DA FF FB 23 B2 40 68 C5
+E4 FF 30 41 2F 83 8F 4E 00 00 3E 4D 30 4D 2F 82
+8F 4E 02 00 7E 4D 8F 4D 00 00 0D 5E 1D B3 0D 63
+30 4D 0E 93 3E 4F 05 24 2D 4D 30 4D 0E 93 3E 4F
+FB 27 2D 53 30 4D 39 40 00 80 39 8F 08 4E 3E 4F
+08 59 19 15 30 4D 81 5E 00 00 3E 4F 32 B0 00 01
+EB 27 21 52 2D 53 30 4D 91 53 00 00 F7 3F 0B 4E
 1C 4F 02 00 2E 4F 0A 43 34 40 20 00 0E 93 04 20
 04 11 0E 4C 0C 43 09 43 0A 9B 01 28 0A 8B 09 69
 08 68 14 83 07 30 0C 5C 0E 6E 0A 6A F5 2B 0A 8B
-12 D3 F5 3F 34 40 00 C4 8F 4A 02 00 8F 49 00 00
-0E 48 30 41 00 00 01 23 1B 42 DC 21 2C 4F 2F 83
-B0 12 46 C5 BF 4F 00 00 7A 90 0A 00 02 28 7A 50
-07 00 7A 50 30 00 92 83 B2 21 18 42 B2 21 C8 4A
-00 00 30 4D 86 C5 02 23 53 00 87 12 88 C5 C0 C5
-2D 83 09 93 E3 23 0E 93 E1 23 3D 41 30 4D B6 C5
-02 23 3E 00 9F 42 B2 21 00 00 3E 40 B2 21 2E 8F
-30 4D 00 00 04 48 4F 4C 44 00 0A 4E 3E 4F DB 3F
-8E C4 04 53 49 47 4E 00 0E 93 3E 4F 3A 40 2D 00
-D2 33 30 4D 87 12 36 C5 34 C4 86 C4 D4 C4 BA C5
-92 C4 F8 C5 D4 C5 D6 C7 42 CB 82 C7 2A C4 22 C5
-02 55 2E 00 08 43 2F 83 8F 4E 00 00 0E 48 EA 3F
-00 00 01 2E 0E 93 F6 37 38 43 F5 3F 2D 4D 30 4D
-0E 93 3E 4F FB 27 2D 53 30 4D 0E 93 3E 4F F6 23
-2D 53 30 4D 39 40 00 80 39 8F 08 4E 3E 4F 08 59
-19 15 30 4D 81 5E 00 00 3E 4F 32 B0 00 01 E6 27
-2D 53 21 52 30 4D 91 53 00 00 F7 3F E4 C5 01 49
-2F 83 8F 4E 00 00 2E 41 1E 81 02 00 30 4D 00 00
-03 4B 45 59 30 40 98 C6 18 42 0C 05 2F 83 8F 4E
-00 00 B0 12 B6 C6 92 B3 1C 05 FD 27 1E 42 0C 05
-B0 12 C8 C6 30 4D A2 B3 1C 05 FD 27 B2 40 11 00
-0E 05 D2 C3 02 02 30 41 B2 40 13 00 0E 05 D2 D3
-02 02 30 41 00 00 05 53 4C 45 45 50 30 40 E0 C6
-B0 12 B6 C6 12 D2 0A 18 F9 3F F0 C4 06 41 43 43
-45 50 54 00 3C 40 64 C7 3B 40 2E C7 2D 15 0A 4E
-2E 4F 0A 5E 3B 40 0D 00 3C 40 20 00 3D 40 58 C7
-92 B3 1C 05 05 24 18 42 0C 05 38 90 0A 00 CB 23
-21 53 3D 15 DB 3F 21 52 3A 17 58 42 0C 05 48 9C
-08 2C 48 9B C9 27 78 92 11 20 2E 9F 0F 24 1E 83
-05 3C 0E 9A 03 24 CE 48 00 00 1E 53 A2 B3 1C 05
-FD 27 82 48 0E 05 30 4D 5A C7 2D 83 92 B3 1C 05
-E4 23 FC 27 82 93 DE 21 02 24 92 53 DE 21 3E 8F
-3D 41 B2 40 18 00 0A 18 30 4D 9E C4 04 45 4D 49
-54 00 30 40 86 C7 08 4E 3E 4F E0 3F 3F 80 06 00
-8F 4E 04 00 3E 40 54 00 BF 40 3C 21 00 00 AF 4F
-02 00 A8 3F 7C C7 04 45 43 48 4F 00 B2 40 82 48
-52 C7 82 43 DE 21 30 4D 32 C6 06 4E 4F 45 43 48
-4F 00 B2 40 30 4D 52 C7 92 43 DE 21 30 4D 20 C6
-04 54 59 50 45 00 0E 93 0F 24 1E 15 3D 40 EC C7
-28 4F 7E 48 8F 48 00 00 2F 83 CB 3F EE C7 2D 83
-91 83 02 00 F5 23 1D 17 2F 53 3E 4F 30 4D D0 C5
-02 43 52 00 30 40 08 C8 87 12 1E C8 02 0D 0A 00
-D6 C7 2A C4 2F 83 8F 4E 00 00 3E 4D 30 4D 2F 82
-8F 4E 02 00 7E 4D 8F 4D 00 00 0D 5E 1D B3 0D 63
-30 4D F2 C5 82 53 22 00 82 43 B4 21 87 12 14 C8
-1E C8 B0 CA 14 C8 22 00 80 C8 4C C8 B2 40 20 00
-B4 21 6E 4E 1E 53 1E B3 82 6E C6 21 3D 41 3E 4F
-30 4D BA C7 82 2E 22 00 87 12 38 C8 14 C8 D6 C7
-B0 CA 2A C4 48 43 05 3C 00 00 04 57 4F 52 44 00
-48 4E 19 42 C0 21 1A 42 C2 21 09 5A 1A 52 C4 21
-09 9A 03 24 7E 9A FC 27 1A 83 4E F8 06 20 0E 4A
-1A 82 C2 21 82 4A C4 21 30 4D 18 42 C6 21 3B 40
-60 00 C8 4C 00 00 09 9A 0C 24 7C 4A 4E 9C 09 24
-18 53 4B 9C F6 2F 7C 90 7B 00 F3 2F 5C 82 B4 21
-F0 3F 1A 82 C2 21 82 4A C4 21 1E 42 C6 21 08 8E
-CE 48 00 00 30 4D 00 00 04 46 49 4E 44 00 2F 83
-0C 4E 65 4C 74 40 80 00 3B 40 CA 21 3E 4B 0E 93
-1E 24 58 4C 01 00 78 F0 1E 00 0E 58 2E 53 1E 4E
-FE FF 0E 93 F3 27 09 4E 78 49 48 C4 48 95 F7 23
-0A 4C FA 99 01 00 F3 23 1A 53 58 83 FA 23 19 B3
-09 63 0C 49 6A 4E 1E 43 4A 93 01 30 2E 83 8F 4C
-00 00 35 40 0E C4 34 40 00 C4 30 4D 82 C4 07 3E
-4E 55 4D 42 45 52 3C 4F 38 4F 29 4F 2F 82 1B 42
-DC 21 6A 4C 7A 80 30 00 7A 90 0A 00 05 28 7A 80
-07 00 7A 90 0A 00 12 28 0A 9B 22 C3 0F 2C 82 49
-D0 04 82 48 D2 04 82 4B C8 04 19 42 E4 04 18 42
-E6 04 09 5A 08 63 1C 53 1E 83 E3 23 8F 4C 00 00
-8F 48 02 00 8F 49 04 00 30 4D 32 C0 00 02 1B 42
-DC 21 0C 43 2D 15 3D 40 F4 C9 09 43 08 43 3F 82
-8F 4E 06 00 0C 4E 7E 4C 6A 4C 7A 90 2D 00 04 28
-C9 23 B1 43 02 00 DF 3F 2B 43 7A 80 25 00 07 24
-3B 52 6A 53 04 24 3B 40 10 00 5A 83 BA 23 1C 53
-1E 83 EA 3F F6 C9 2F 24 2D 83 7A 90 28 00 CB 27
-32 D0 00 02 7A 90 F7 00 C6 27 7A 90 F5 00 23 20
-0A 4E 09 43 8F 49 02 00 5A 83 09 4A 09 5C 69 49
-79 80 30 00 79 90 0A 00 05 28 79 80 07 00 79 90
-0A 00 0A 28 09 9B 08 2C 8F 49 00 00 0E 4B 2C 15
-B0 12 3E C5 2A 17 E6 3F 9F 4F 04 00 02 00 AF 4F
-04 00 0E 4A 4E 93 2B 17 0E 4C 82 4B DC 21 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 7E C6 04 48 45 52 45 00
-2F 83 8F 4E 00 00 1E 42 C6 21 30 4D B6 C4 01 2C
-1A 42 C6 21 8A 4E 00 00 A2 53 C6 21 3E 4F 30 4D
-EC C6 05 41 4C 4C 4F 54 82 5E C6 21 3E 4F 30 4D
-A6 C7 07 45 58 45 43 55 54 45 0A 4E 3E 4F 00 4A
-AE CA 87 4C 49 54 45 52 41 4C 82 93 BE 21 0C 24
-1A 42 C6 21 A2 52 C6 21 BA 40 14 C8 00 00 8A 4E
-02 00 3E 4F 32 B0 00 02 32 C0 00 02 06 24 19 4A
-02 00 8A 4E 02 00 0E 49 EB 3F 30 4D 00 C8 05 43
-4F 55 4E 54 2F 83 1E 53 8F 4E 00 00 5E 4E FF FF
-30 4D 82 4E C0 21 B2 4F C2 21 3E 4F 82 43 C4 21
-30 4D 85 12 20 00 87 12 32 CB 42 CB 80 C8 50 CB
-3D 40 58 CB CC 22 82 3E 5A CB 0A 4E 3E 4F 3D 40
-70 CB 23 27 3D 40 4A CB 1A E2 BE 21 A1 27 B5 23
-72 CB 3E 4F 3D 40 4A CB B8 23 DE 53 00 00 68 4E
-08 5E F8 40 3F 00 00 00 3D 40 26 CE CB 3F D2 CA
+12 D3 F5 3F 34 40 EC C4 8F 4A 02 00 8F 49 00 00
+0E 48 30 41 82 4E C0 21 B2 4F C2 21 3E 4F 82 43
+C4 21 30 4D 3F 80 06 00 8F 4E 04 00 3E 40 54 00
+BF 40 3C 21 00 00 AF 4F 02 00 24 3C 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 A2 B3 1C 05 FD 27 B2 40 11 00
+0E 05 D2 C3 02 02 30 41 A2 B3 1C 05 FD 27 B2 40
+13 00 0E 05 D2 D3 02 02 30 41 00 00 06 41 43 43
+45 50 54 00 3C 40 A6 C5 3B 40 70 C5 2D 15 0A 4E
+2E 4F 0A 5E 3B 40 0D 00 3C 40 20 00 3D 40 9A C5
+92 B3 1C 05 05 24 18 42 0C 05 38 90 0A 00 D3 23
+21 53 3D 15 30 40 00 C4 21 52 3A 17 58 42 0C 05
+48 9C 08 2C 48 9B D0 27 78 92 11 20 2E 9F 0F 24
+1E 83 05 3C 0E 9A 03 24 CE 48 00 00 1E 53 A2 B3
+1C 05 FD 27 82 48 0E 05 30 4D 9C C5 2D 83 92 B3
+1C 05 E4 23 FC 27 82 93 DE 21 02 24 92 53 DE 21
+3E 8F 3D 41 B2 40 18 00 0A 18 30 4D 00 00 04 45
+4D 49 54 00 30 40 C8 C5 08 4E 3E 4F E0 3F BE C5
+04 45 43 48 4F 00 B2 40 82 48 94 C5 82 43 DE 21
+30 4D 00 00 06 4E 4F 45 43 48 4F 00 B2 40 30 4D
+94 C5 92 43 DE 21 30 4D 00 00 04 54 59 50 45 00
+0E 93 0F 24 1E 15 3D 40 16 C6 28 4F 7E 48 8F 48
+00 00 2F 83 D7 3F 18 C6 2D 83 91 83 02 00 F5 23
+1D 17 2F 53 3E 4F 30 4D 00 00 02 43 52 00 30 40
+32 C6 0D 12 87 12 2E C4 02 0D 0A 00 00 C6 26 C7
+00 00 03 4B 45 59 30 40 4A C6 18 42 0C 05 2F 83
+8F 4E 00 00 B0 12 06 C5 92 B3 1C 05 FD 27 1E 42
+0C 05 B0 12 18 C5 30 4D 2F 83 8F 4E 00 00 30 4D
+8F 4E FE FF AF 4F FC FF 2F 82 30 4D 0E 93 F4 23
+30 4D 2A 4F 8F 4E 00 00 0E 4A 30 4D 8F 4E FE FF
+3E 40 80 20 0E 8F 0E 11 2F 83 30 4D 2F 83 8F 4E
+00 00 3E 41 30 4D 3E 8F 3E E3 1E 53 30 4D BE 4F
+00 00 3E 4F 30 4D 1E 83 0E 7E 30 4D 0E 5E 0E 7E
+3E E3 30 4D 3E 8F 03 24 3E 43 01 2C 0E F3 30 4D
+00 00 02 3C 23 00 B2 40 B2 21 B2 21 30 4D 2A C6
+01 23 1B 42 DC 21 2C 4F 2F 83 B0 12 86 C4 BF 4F
+00 00 7A 90 0A 00 02 28 7A 50 07 00 7A 50 30 00
+92 83 B2 21 18 42 B2 21 C8 4A 00 00 30 4D E0 C6
+02 23 53 00 0D 12 87 12 E2 C6 1C C7 2D 83 09 93
+E2 23 0E 93 E0 23 3D 41 30 4D 10 C7 02 23 3E 00
+9F 42 B2 21 00 00 3E 40 B2 21 2E 8F 30 4D 00 00
+04 48 4F 4C 44 00 4A 4E 3E 4F DA 3F 00 00 04 53
+49 47 4E 00 0E 93 3E 4F 7A 40 2D 00 D1 33 30 4D
+FA C5 02 55 2E 00 08 43 2F 83 8F 4E 00 00 0E 48
+0D 12 0E 12 3E F3 06 34 BF E3 00 00 3E E3 9F 53
+00 00 0E 63 87 12 D6 C6 14 C7 9C C6 54 C7 30 C7
+00 C6 70 CA C4 C5 26 C7 E4 C5 01 2E 0E 93 E3 37
+38 43 E2 3F 4E C7 82 53 22 00 82 43 B4 21 0D 12
+87 12 24 C4 2E C4 F8 C9 24 C4 22 00 F2 C7 C0 C7
+B2 40 20 00 B4 21 6E 4E 1E 53 1E B3 82 6E C6 21
+3D 41 3E 4F 30 4D 9A C7 82 2E 22 00 0D 12 87 12
+AA C7 24 C4 00 C6 F8 C9 26 C7 00 00 04 57 4F 52
+44 00 3C 40 C0 21 39 4C 3A 4C 09 5A 3A 5C 28 4C
+09 9A 15 24 7E 9A FC 27 1A 83 3B 40 60 00 C8 4C
+00 00 09 9A 0C 24 7C 4A 4E 9C 09 24 18 53 4B 9C
+F6 2F 7C 90 7B 00 F3 2F 5C 82 B4 21 F0 3F 1A 82
+C2 21 82 4A C4 21 1E 42 C6 21 08 8E CE 48 00 00
+30 4D 00 00 04 46 49 4E 44 00 2F 83 0C 4E 65 4C
+74 40 80 00 3B 40 CA 21 3E 4B 0E 93 1E 24 58 4C
+01 00 78 F0 1E 00 0E 58 2E 53 1E 4E FE FF 0E 93
+F3 27 09 4E 78 49 48 C4 48 95 F7 23 0A 4C FA 99
+01 00 F3 23 1A 53 58 83 FA 23 19 B3 09 63 0C 49
+6A 4E 1E 43 4A 93 01 30 2E 83 8F 4C 00 00 35 40
+FA C4 34 40 EC C4 30 4D 00 00 07 3E 4E 55 4D 42
+45 52 3C 4F 38 4F 29 4F 2F 82 1B 42 DC 21 6A 4C
+7A 80 30 00 7A 90 0A 00 05 28 7A 80 07 00 7A 90
+0A 00 12 28 0A 9B 22 C3 0F 2C 82 49 D0 04 82 48
+D2 04 82 4B C8 04 19 42 E4 04 18 42 E6 04 09 5A
+08 63 1C 53 1E 83 E3 23 8F 4C 00 00 8F 48 02 00
+8F 49 04 00 30 4D 32 C0 00 02 1B 42 DC 21 0C 43
+2D 15 3D 40 50 C9 09 43 08 43 3F 82 8F 4E 06 00
+0C 4E 7E 4C 6A 4C 7A 90 2D 00 04 28 C9 23 B1 43
+02 00 0B 3C 2B 43 7A 80 25 00 07 24 3B 52 6A 53
+04 24 3B 40 10 00 5A 83 BA 23 1C 53 1E 83 EA 3F
+52 C9 2F 24 2D 83 7A 90 28 00 CB 27 32 D0 00 02
+7A 90 F7 00 C6 27 7A 90 F5 00 23 20 0A 4E 09 43
+8F 49 02 00 5A 83 09 4A 09 5C 69 49 79 80 30 00
+79 90 0A 00 05 28 79 80 07 00 79 90 0A 00 0A 28
+09 9B 08 2C 8F 49 00 00 0E 4B 2C 15 B0 12 7E C4
+2A 17 E6 3F 9F 4F 04 00 02 00 AF 4F 04 00 0E 4A
+4E 93 2B 17 0E 4C 82 4B DC 21 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 00 00 01 2C 1A 42 C6 21 8A 4E 00 00
+A2 53 C6 21 3E 4F 30 4D 2C C5 05 41 4C 4C 4F 54
+82 5E C6 21 3E 4F 30 4D 0A 4E 3E 4F 00 4A F6 C9
+87 4C 49 54 45 52 41 4C 82 93 BE 21 0C 24 1A 42
+C6 21 A2 52 C6 21 BA 40 24 C4 00 00 8A 4E 02 00
+3E 4F 32 B0 00 02 32 C0 00 02 06 24 19 4A 02 00
+8A 4E 02 00 0E 49 EB 3F 30 4D 2C C7 05 43 4F 55
+4E 54 2F 83 1E 53 8F 4E 00 00 5E 4E FF FF 30 4D
+85 12 20 00 0D 12 87 12 C4 C4 70 CA F2 C7 80 CA
+3D 40 88 CA E2 22 A4 26 8A CA 0A 4E 3E 4F 3D 40
+A0 CA 39 27 3D 40 7A CA 1A E2 BE 21 BD 23 AC 27
+A2 CA 3E 4F 3D 40 7A CA BF 23 DE 53 00 00 68 4E
+08 5E F8 40 3F 00 00 00 3D 40 20 CD D2 3F D0 C5
 08 45 56 41 4C 55 41 54 45 00 39 40 C0 21 3C 49
-3B 49 3A 49 3D 15 B0 12 2A C4 46 CB AE CB B2 41
-C4 21 B2 41 C2 21 B2 41 C0 21 3D 41 30 4D 85 12
-BE 21 08 C5 04 51 55 49 54 00 82 43 08 18 31 40
-E0 20 B2 40 00 20 00 20 82 43 BE 21 B0 12 2A C4
-04 C8 8C C7 42 CB 82 C7 46 CB A4 C4 0C C5 1E C8
-0C 73 74 61 63 6B 20 65 6D 70 74 79 21 00 40 CC
-14 C8 30 FF A0 CA 26 C5 1E C8 0A 46 52 41 4D 20
-66 75 6C 6C 21 00 40 CC 3C C6 E0 CB C2 CA 05 41
-42 4F 52 54 3F 40 80 20 D0 3F 1E CC 86 41 42 4F
-52 54 22 00 87 12 38 C8 14 C8 40 CC B0 CA 2A C4
-8F 93 02 00 03 20 2F 52 3E 4F 30 4D B0 12 C8 D1
-B0 12 B6 C6 92 C3 1C 05 38 40 AA 0A 39 42 03 43
-19 83 FD 23 18 83 FA 23 92 B3 1C 05 F3 23 87 12
-42 D1 14 C8 DE 21 EA C4 AC C7 1E C8 04 1B 5B 37
-6D 00 D6 C7 58 C4 40 C6 9A CC 04 C8 1E C8 05 6C
-69 6E 65 3A D6 C7 D0 C4 24 C6 D6 C7 1E C8 04 1B
-5B 30 6D 00 D6 C7 24 CC 00 00 83 5B 27 5D 87 12
-C0 CC 14 C8 14 C8 B0 CA B0 CA 2A C4 E8 C8 01 27
-87 12 42 CB 80 C8 EE C8 40 C6 CE CC 2A C4 7A CB
-32 C5 81 5C 92 42 C0 21 C4 21 30 4D AA CC 81 5B
-82 43 BE 21 30 4D D2 CC 01 5D B2 43 BE 21 30 4D
-BE 4F 02 00 3E 4F 30 4D 9A CA 82 49 53 00 87 12
-BE CB EA C4 40 C6 12 CD AE CC 14 C8 F0 CC B0 CA
-2A C4 C0 CC F0 CC 2A C4 FA CC 09 49 4D 4D 45 44
-49 41 54 45 1A 42 B6 21 FA D0 80 00 00 00 30 4D
-C4 CB 88 50 4F 53 54 50 4F 4E 45 00 87 12 42 CB
-80 C8 EE C8 58 C4 40 C6 CE CC 0C C5 40 C6 5C CD
-14 C8 14 C8 B0 CA B0 CA 14 C8 B0 CA B0 CA 2A C4
-DE CC 81 3B 82 93 BE 21 B5 27 87 12 14 C8 2A C4
-B0 CA FA CD E0 CC 2A C4 62 CD 07 3A 4E 4F 4E 41
-4D 45 30 12 A0 CD 2F 83 8F 4E 00 00 1E 42 C6 21
-1E B3 0E 63 0A 4E 39 40 00 02 38 40 02 02 21 3C
-BA 40 87 12 FC FF A2 83 C6 21 B2 43 BE 21 30 4D
-7A CD 01 3A 30 12 A0 CD 92 B3 C6 21 A2 63 C6 21
-87 12 42 CB 80 C8 C8 CD 3D 41 08 4E 7A 4E 5A D3
-5A 53 0A 58 19 42 DA 21 6E 4E 3E F0 1E 00 09 5E
-3E 4F 82 48 B6 21 82 49 B8 21 82 4A BA 21 82 4F
-BC 21 2A 52 82 4A C6 21 30 41 82 9F BC 21 09 20
-18 42 B6 21 19 42 B8 21 A8 49 FE FF 89 48 00 00
-30 4D 87 12 1E C8 0F 73 74 61 63 6B 20 6D 69 73
-6D 61 74 63 68 21 4C CC 90 CB 05 44 45 46 45 52
-B0 12 B8 CD BA 40 30 40 FC FF BA 40 AE CD FE FF
-E3 3F 1E CB 06 43 52 45 41 54 45 00 B0 12 B8 CD
-BA 40 85 12 FC FF 8A 4A FE FF D6 3F 2A CE 05 44
-4F 45 53 3E 1A 42 BA 21 BA 40 84 12 00 00 8A 4D
-02 00 3D 41 30 4D 4E C9 05 3E 42 4F 44 59 2E 52
-30 4D 44 CE 04 43 4F 44 45 00 B0 12 B8 CD A2 82
-C6 21 87 12 D2 D0 AC D0 2A C4 84 CE 07 43 4F 44
-45 4E 4E 4D B0 12 86 CD F2 3F 00 00 07 45 4E 44
-43 4F 44 45 87 12 E0 D0 FA CD 2A C4 2C CC 03 41
-53 4D B2 40 B0 D0 DA 21 E0 3F AC CE 06 45 4E 44
-41 53 4D 00 87 12 B4 CE F4 D0 2A C4 00 00 05 43
-4F 4C 4F 4E 1A 42 C6 21 BA 40 87 12 00 00 A2 53
-C6 21 B2 43 BE 21 30 40 E0 D0 00 00 05 4C 4F 32
-48 49 1A 42 C6 21 BA 40 B0 12 00 00 BA 40 2A C4
-02 00 A2 52 C6 21 ED 3F 1A CD 85 48 49 32 4C 4F
-87 12 A0 CA 4A CF B0 CA E0 CC D2 D0 AC D0 2A C4
-1A CF 82 49 46 00 2F 83 8F 4E 00 00 1E 42 C6 21
-A2 52 C6 21 BE 40 40 C6 00 00 2E 53 30 4D 5E CE
-84 45 4C 53 45 00 A2 52 C6 21 1A 42 C6 21 BA 40
-3C C6 FC FF 8E 4A 00 00 2A 83 0E 4A 30 4D D0 C7
-84 54 48 45 4E 00 9E 42 C6 21 00 00 3E 4F 30 4D
-9C CE 85 42 45 47 49 4E 30 40 A0 CA 70 CF 85 55
-4E 54 49 4C 39 40 40 C6 A2 52 C6 21 1A 42 C6 21
-8A 49 FC FF 8A 4E FE FF 3E 4F 30 4D BE CE 85 41
-47 41 49 4E 39 40 3C C6 EF 3F 7A C8 85 57 48 49
-4C 45 87 12 36 CF 76 C4 2A C4 34 C8 86 52 45 50
-45 41 54 00 87 12 B4 CF 76 CF 2A C4 50 CF 82 44
-4F 00 2F 83 8F 4E 00 00 A2 53 C6 21 1E 42 C6 21
-BE 40 54 C6 FE FF A2 53 00 20 1A 42 00 20 8A 43
-00 00 30 4D E2 CA 84 4C 4F 4F 50 00 39 40 76 C6
-A2 52 C6 21 1A 42 C6 21 8A 49 FC FF 8A 4E FE FF
-1E 42 00 20 A2 83 00 20 2E 4E 0E 93 03 24 8E 4A
-00 00 F6 3F 3E 4F 30 4D 90 C6 85 2B 4C 4F 4F 50
-39 40 64 C6 E5 3F 06 D0 04 4D 4F 56 45 00 0A 4E
-38 4F 39 4F 3E 4F 0A 93 11 24 08 99 0F 24 06 2C
-F8 49 00 00 18 53 1A 83 FB 23 30 4D 08 5A 09 5A
-19 83 18 83 E8 49 00 00 1A 83 FA 23 30 4D 14 C8
-CA 21 F2 C4 2A C4 84 12 7E D0 AE CF 36 D3 DE CF
-BE CC 32 CF 3A D0 4A D4 64 C8 66 D1 80 D1 8E CF
-00 D2 00 00 1C D4 E8 CC 78 CE 00 00 84 12 7E D0
-68 D9 CA D9 1C D9 3E DA E2 D8 00 00 12 D6 00 00
-D8 D8 88 D9 3A D9 78 D9 22 D7 00 00 00 00 1A DA
-AA D0 3A 40 0C 00 39 40 CA 21 38 40 CC 21 C6 3F
-3A 40 0E 00 39 40 CC 21 38 40 CA 21 B9 3F 82 43
-CC 21 30 4D 92 42 CA 21 DA 21 30 4D 86 D0 EE D0
-F4 D0 04 D1 3A 4E 82 4A C8 21 2E 4E 82 4E C6 21
-3D 40 10 00 09 4A 08 49 29 83 18 48 FE FF 0E 98
-FC 2B 89 48 00 00 1D 83 F6 23 2A 4A 0A 93 F0 23
-3E 4F 3D 41 30 4D 32 CD 09 50 57 52 5F 53 54 41
-54 45 84 12 FC D0 D0 D0 50 DA CC CF 09 52 53 54
-5F 53 54 41 54 45 92 42 0E 18 46 D1 92 42 0C 18
-48 D1 EF 3F 38 D1 08 50 57 52 5F 48 45 52 45 00
-92 42 C8 21 46 D1 92 42 C6 21 48 D1 30 4D 4C D1
-08 52 53 54 5F 48 45 52 45 00 92 42 C8 21 0E 18
-92 42 C6 21 0C 18 EC 3F BC CF 04 57 49 50 45 00
-39 40 10 00 29 83 B9 43 80 FF FC 23 B2 40 E0 C6
-DE C6 B2 40 0A D2 08 D2 B2 40 D0 D0 0E 18 B2 40
-50 DA 0C 18 30 12 56 D1 B2 40 86 C7 84 C7 B2 40
-08 C8 06 C8 B2 40 98 C6 96 C6 B2 40 18 00 0A 18
-37 40 1A C4 36 40 92 C4 35 40 0E C4 34 40 00 C4
-B2 40 0A 00 DC 21 B2 40 20 00 B4 21 30 41 9A D1
-04 57 41 52 4D 00 30 40 0A D2 3D 40 40 D2 92 C3
-30 01 1E 42 08 18 0E 93 12 24 F2 B0 10 00 00 02
-02 20 3E E3 1E 53 F2 D0 30 00 0A 02 3E 90 0A 00
-B7 27 3E 90 16 00 B4 2F 2E 93 83 27 8C 2F 30 4D
-1E C8 06 0D 1B 5B 37 6D 23 00 D6 C7 34 C6 1E C8
-19 46 61 73 74 46 6F 72 74 68 20 C2 A9 4A 2E 4D
-2E 54 68 6F 6F 72 65 6E 73 20 D6 C7 14 C8 30 FF
-A0 CA B8 C4 24 C6 1E C8 0A 62 79 74 65 73 20 66
-72 65 65 00 3C C6 9A CC 82 CF 04 43 4F 4C 44 00
-92 B3 0A 05 FD 23 B2 40 04 A5 20 01 40 D2 B2 40
-88 5A CC 01 B2 43 06 02 B2 40 FC FF 02 02 D2 D3
-02 02 F2 D3 26 02 F2 43 22 02 B2 40 00 A5 60 01
-B2 40 FF 1E 80 01 B2 40 B0 00 82 01 B2 40 1E 00
-84 01 39 40 10 00 82 43 88 01 92 D2 5E 01 08 18
-38 40 59 14 18 83 FE 23 19 83 FA 23 39 40 00 10
-29 83 89 43 00 20 FC 23 39 40 26 00 29 83 B9 40
-9E D2 DA FF FB 23 B2 40 26 C7 E4 FF B2 40 81 00
-00 05 92 42 02 18 06 05 92 42 04 18 08 05 92 C3
-00 05 92 D3 1A 05 3F 40 80 20 31 40 E0 20 30 12
-06 D2 53 3F 8A D2 07 43 4F 4D 50 41 52 45 0C 4E
-38 4F 3B 4F 39 4F 0E 4B 0E 5C 0C 24 1B 83 07 30
-1C 83 07 30 19 53 F9 98 FF FF F5 27 02 2C 3E 43
-30 4D 1E 43 30 4D B2 CD 86 5B 54 48 45 4E 5D 00
-30 4D 68 D3 86 5B 45 4C 53 45 5D 00 87 12 14 C8
-00 00 C6 C4 42 CB 80 C8 24 CB 34 C4 40 C6 DE D3
-44 C4 1E C8 06 5B 54 48 45 4E 5D 00 3E D3 4A C6
-AE D3 F8 C7 D0 C4 58 C4 4A C6 84 D3 2A C4 44 C4
-1E C8 06 5B 45 4C 53 45 5D 00 3E D3 4A C6 CC D3
-F8 C7 D0 C4 58 C4 4A C6 82 D3 2A C4 1E C8 04 5B
-49 46 5D 00 3E D3 4A C6 84 D3 3C C6 82 D3 F8 C7
-1E C8 05 0D 0A 6B 6F 20 D6 C7 8C C7 32 CB 3C C6
-84 D3 74 D3 84 5B 49 46 5D 00 0E 93 3E 4F BE 27
-30 4D F4 D3 89 5B 44 45 46 49 4E 45 44 5D 87 12
-42 CB 80 C8 EE C8 6A C4 2A C4 04 D4 8B 5B 55 4E
-44 45 46 49 4E 45 44 5D 87 12 42 CB 80 C8 EE C8
-6A C4 00 C5 2A C4 38 D4 3D 41 B2 4E 0E 18 A2 4E
-0C 18 3E 4F 30 40 56 D1 48 D0 06 4D 41 52 4B 45
-52 00 B0 12 B8 CD BA 40 84 12 FC FF BA 40 36 D4
-FE FF 9A 42 C8 21 00 00 28 83 8A 48 02 00 A2 52
-C6 21 30 40 00 CE 1C 15 B0 12 2A C4 80 C8 EE C8
-4A C6 8C D4 AA C9 40 C6 CE CC A6 D4 8E D4 39 4E
-39 80 86 12 08 24 19 53 02 20 2E 4E 04 3C 2E 53
-19 53 01 24 2E 82 1B 17 30 41 3E 40 28 00 B0 12
-76 D4 19 42 C6 21 A2 53 C6 21 89 4E 00 00 3E 40
-29 00 1C 15 12 12 C4 21 92 53 C4 21 B0 12 2A C4
-80 C8 AA C9 40 C6 E4 D4 DA D4 21 53 3E 90 10 00
-7D 2D E1 2B E6 D4 B2 41 C4 21 DD 3F 87 12 42 CB
-74 C8 F4 D4 0C 43 1B 42 C6 21 A2 53 C6 21 6A 4E
-3E 4F 7A 90 23 00 27 20 92 53 C4 21 B0 12 76 D4
-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 C6 21 A2 53 C6 21 89 4E 00 00
-3E 4F 3D 41 30 4D 7A 90 26 00 07 20 3C 40 10 02
-92 53 C4 21 B0 12 76 D4 ED 3F 7A 90 40 00 16 20
-3C 40 20 00 92 53 C4 21 B0 12 C2 D4 0C 20 3C 50
-10 00 3E 40 2B 00 B0 12 C2 D4 92 92 C0 21 C4 21
-02 24 92 53 C4 21 8E 10 0C 5E DA 3F B0 12 C2 D4
-FA 23 3C 50 10 00 B0 12 AA D4 EF 3F 0C 43 1B 42
-C6 21 A2 53 C6 21 87 12 42 CB 74 C8 BE D5 FE 90
-26 00 00 00 3E 40 20 00 03 20 3C 50 82 00 C8 3F
-B0 12 C2 D4 E1 23 3C 50 80 00 B0 12 AA D4 DC 3F
-D6 C6 04 52 45 54 49 00 87 12 14 C8 00 13 B0 CA
-2A C4 14 C8 2C 00 EC D4 B6 D5 FC D5 09 4B 2E 4E
-0E DC A4 3F FC CE 03 4D 4F 56 84 12 F2 D5 00 40
-06 D6 05 4D 4F 56 2E 42 84 12 F2 D5 40 40 00 00
-03 41 44 44 84 12 F2 D5 00 50 20 D6 05 41 44 44
-2E 42 84 12 F2 D5 40 50 2C D6 04 41 44 44 43 00
-84 12 F2 D5 00 60 3A D6 06 41 44 44 43 2E 42 00
-84 12 F2 D5 40 60 E2 D5 04 53 55 42 43 00 84 12
-F2 D5 00 70 58 D6 06 53 55 42 43 2E 42 00 84 12
-F2 D5 40 70 66 D6 03 53 55 42 84 12 F2 D5 00 80
-76 D6 05 53 55 42 2E 42 84 12 F2 D5 40 80 DE CE
-03 43 4D 50 84 12 F2 D5 00 90 90 D6 05 43 4D 50
-2E 42 84 12 F2 D5 40 90 CC CE 04 44 41 44 44 00
-84 12 F2 D5 00 A0 AA D6 06 44 41 44 44 2E 42 00
-84 12 F2 D5 40 A0 9C D6 03 42 49 54 84 12 F2 D5
-00 B0 C8 D6 05 42 49 54 2E 42 84 12 F2 D5 40 B0
-D4 D6 03 42 49 43 84 12 F2 D5 00 C0 E2 D6 05 42
-49 43 2E 42 84 12 F2 D5 40 C0 EE D6 03 42 49 53
-84 12 F2 D5 00 D0 FC D6 05 42 49 53 2E 42 84 12
-F2 D5 40 D0 00 00 03 58 4F 52 84 12 F2 D5 00 E0
-16 D7 05 58 4F 52 2E 42 84 12 F2 D5 40 E0 48 D6
-03 41 4E 44 84 12 F2 D5 00 F0 30 D7 05 41 4E 44
-2E 42 84 12 F2 D5 40 F0 42 CB EC D4 4E D7 0A 4C
-3C F0 70 00 8A 10 3A F0 0F 00 0C DA 4F 3F 82 D6
-03 52 52 43 84 12 48 D7 00 10 60 D7 05 52 52 43
-2E 42 84 12 48 D7 40 10 6C D7 04 53 57 50 42 00
-84 12 48 D7 80 10 7A D7 03 52 52 41 84 12 48 D7
-00 11 88 D7 05 52 52 41 2E 42 84 12 48 D7 40 11
-94 D7 03 53 58 54 84 12 48 D7 80 11 00 00 04 50
-55 53 48 00 84 12 48 D7 00 12 AE D7 06 50 55 53
-48 2E 42 00 84 12 48 D7 40 12 08 D7 04 43 41 4C
-4C 00 84 12 48 D7 80 12 1A 53 0E 4A 87 12 34 C6
-1E C8 0D 6F 75 74 20 6F 66 20 62 6F 75 6E 64 73
-4C CC 42 CB 74 C8 F8 D7 92 53 C4 21 3E 40 2C 00
-B0 12 2A C4 80 C8 AA C9 40 C6 CE CC AC D5 10 D8
-0A 4E 3E 4F 1A 83 E0 33 29 4E 59 0E 0A 28 08 4C
-59 0A 01 28 0C 8A 08 8A 38 90 10 00 D5 2F 5A 0E
-94 3F 2A 92 D1 2F 8A 10 5A 06 8F 3F A2 D7 04 52
-52 43 4D 00 84 12 F2 D7 50 00 3E D8 04 52 52 41
-4D 00 84 12 F2 D7 50 01 4C D8 04 52 4C 41 4D 00
-84 12 F2 D7 50 02 5A D8 04 52 52 55 4D 00 84 12
-F2 D7 50 03 BC D7 05 50 55 53 48 4D 84 12 F2 D7
-00 15 76 D8 04 50 4F 50 4D 00 84 12 F2 D7 00 17
-68 D8 03 53 3E 3D 85 12 00 38 92 D8 02 53 3C 00
-85 12 00 34 84 D8 03 30 3E 3D 85 12 00 30 A6 D8
-02 30 3C 00 85 12 00 30 00 00 02 55 3C 00 85 12
-00 2C BA D8 03 55 3E 3D 85 12 00 28 B0 D8 03 30
-3C 3E 85 12 00 24 CE D8 02 30 3D 00 85 12 00 20
-00 00 02 49 46 00 1A 42 C6 21 8A 4E 00 00 A2 53
-C6 21 0E 4A 30 4D C4 D8 04 54 48 45 4E 00 1A 42
-C6 21 08 4E 3E 4F 09 48 29 53 0A 89 0A 11 3A 90
-00 02 63 2F 88 DA 00 00 30 4D B8 D6 04 45 4C 53
-45 00 1A 42 C6 21 BA 40 00 3C 00 00 A2 53 C6 21
-2F 83 8F 4A 00 00 E3 3F F8 D8 05 55 4E 54 49 4C
-3A 4F 08 4E 3E 4F 19 42 C6 21 2A 83 0A 89 0A 11
-3A 90 00 FE 42 3B 3A F0 FF 03 08 DA 89 48 00 00
-A2 53 C6 21 30 4D 3C D7 05 41 47 41 49 4E 0A 4E
-38 40 00 3C E7 3F 00 00 05 57 48 49 4C 45 87 12
-E6 D8 76 C4 2A C4 9C D8 06 52 45 50 45 41 54 00
-87 12 6E D9 FE D8 2A C4 9A D9 3D 41 08 4E 3E 4F
-2A 48 B2 92 C4 21 CD 2F 98 42 C6 21 00 00 30 4D
-CC D7 03 42 57 31 84 12 98 D9 00 00 B2 D9 03 42
-57 32 84 12 98 D9 00 00 BE D9 03 42 57 33 84 12
-98 D9 00 00 D6 D9 3D 41 1A 42 C6 21 28 4E B2 92
-C4 21 90 2B BA 4F 00 00 A2 53 C6 21 8E 4A 00 00
-3E 4F 30 4D 00 00 03 46 57 31 84 12 D4 D9 00 00
-F6 D9 03 46 57 32 84 12 D4 D9 00 00 02 DA 03 46
-57 33 84 12 D4 D9 00 00 00 00 05 3F 47 4F 54 4F
-3E 90 00 30 07 24 3E E0 00 04 3E B0 00 10 02 24
-3E E0 00 08 87 12 C0 CC DA CA 2A C4 0E DA 04 47
-4F 54 4F 00 2F 83 8F 4E 00 00 3E 40 00 3C F2 3F
+3B 49 3A 49 3D 15 87 12 74 CA DC CA B2 41 C4 21
+B2 41 C2 21 B2 41 C0 21 3D 41 30 4D 85 12 BE 21
+00 00 04 51 55 49 54 00 82 43 08 18 31 40 E0 20
+B2 40 00 20 00 20 82 43 BE 21 87 12 2E C6 D4 C4
+70 CA C4 C5 74 CA 8C C6 BC C6 2E C4 0C 73 74 61
+63 6B 20 65 6D 70 74 79 21 00 6E CB 24 C4 40 FF
+2A CE C4 C6 2E C4 0A 46 52 41 4D 20 66 75 6C 6C
+21 00 6E CB 48 C4 0C CB 0A CA 05 41 42 4F 52 54
+3F 40 80 20 D1 3F 4A CB 86 41 42 4F 52 54 22 00
+0D 12 87 12 AA C7 24 C4 6E CB F8 C9 26 C7 8F 93
+02 00 03 20 2F 52 3E 4F 30 4D B0 12 96 CF B0 12
+06 C5 92 C3 1C 05 18 42 06 18 39 40 20 00 19 83
+FE 23 18 83 FA 23 92 B3 1C 05 F3 23 0D 12 87 12
+10 CF 24 C4 DE 21 02 C5 D6 C5 2E C4 04 1B 5B 37
+6D 00 00 C6 7C C6 4C C4 C8 CB 2E C6 2E C4 05 6C
+69 6E 65 3A 00 C6 66 C7 00 C6 2E C4 04 1B 5B 30
+6D 00 00 C6 50 CB 00 00 83 5B 27 5D 0D 12 87 12
+F0 CB 24 C4 24 C4 F8 C9 F8 C9 26 C7 44 C8 01 27
+0D 12 87 12 70 CA F2 C7 4A C8 4C C4 00 CC 26 C7
+AA CA D2 C6 81 5C 92 42 C0 21 C4 21 30 4D D8 CB
+81 5B 82 43 BE 21 30 4D 04 CC 01 5D B2 43 BE 21
+30 4D F2 CA 88 50 4F 53 54 50 4F 4E 45 00 0D 12
+87 12 70 CA F2 C7 4A C8 7C C6 4C C4 00 CC BC C6
+4C C4 50 CC 24 C4 24 C4 F8 C9 F8 C9 24 C4 F8 C9
+F8 C9 26 C7 40 C7 09 49 4D 4D 45 44 49 41 54 45
+1A 42 B6 21 FA D0 80 00 00 00 30 4D 10 CC 01 3A
+30 12 B8 CC 92 B3 C6 21 A2 63 C6 21 0D 12 87 12
+70 CA F2 C7 86 CC 3D 41 08 4E 7A 4E 5A D3 5A 53
+0A 58 19 42 DA 21 6E 4E 3E F0 1E 00 09 5E 3E 4F
+82 48 B6 21 82 49 B8 21 82 4A BA 21 82 4F BC 21
+2A 52 82 4A C6 21 30 41 BA 40 0D 12 FC FF BA 40
+87 12 FE FF B2 43 BE 21 30 4D 6E CC 07 3A 4E 4F
+4E 41 4D 45 30 12 B8 CC 2F 83 8F 4E 00 00 1E 42
+C6 21 1E B3 0E 63 0A 4E 39 40 10 02 38 40 12 02
+D7 3F 82 9F BC 21 09 20 18 42 B6 21 19 42 B8 21
+A8 49 FE FF 89 48 00 00 30 4D 0D 12 87 12 2E C4
+0F 73 74 61 63 6B 20 6D 69 73 6D 61 74 63 68 21
+7A CB CC CC 81 3B 82 93 BE 21 6D 27 0D 12 87 12
+24 C4 26 C7 F8 C9 F2 CC 12 CC 26 C7 5C CA 06 43
+52 45 41 54 45 00 B0 12 74 CC BA 40 85 12 FC FF
+8A 4A FE FF D5 3F C0 CA 05 44 4F 45 53 3E 1A 42
+BA 21 BA 40 84 12 00 00 8A 4D 02 00 3D 41 30 4D
+3E CD 04 43 4F 44 45 00 B0 12 74 CC A2 82 C6 21
+0D 12 87 12 8A CE 64 CE 26 C7 72 CD 07 43 4F 44
+45 4E 4E 4D 30 12 7C CD 9F 3F 00 00 07 45 4E 44
+43 4F 44 45 0D 12 87 12 F2 CC A4 CE 26 C7 58 CB
+03 41 53 4D B2 40 68 CE DA 21 DE 3F 9C CD 06 45
+4E 44 41 53 4D 00 0D 12 87 12 A4 CD C2 CE 26 C7
+00 00 05 43 4F 4C 4F 4E 1A 42 C6 21 BA 40 0D 12
+00 00 BA 40 87 12 02 00 A2 52 C6 21 B2 43 BE 21
+30 40 A4 CE 00 00 05 4C 4F 32 48 49 A2 83 C6 21
+1A 42 C6 21 EE 3F 56 CC 85 48 49 32 4C 4F 0D 12
+87 12 2A CE 1E CE F8 C9 12 CC 80 CD 26 C7 2E 53
+30 4D 8C CD 85 42 45 47 49 4E 2F 83 8F 4E 00 00
+1E 42 C6 21 30 4D 24 C4 CA 21 AE C6 26 C7 84 12
+36 CE B0 CD 5C D0 58 CD EE CB 08 CE 42 C6 20 CA
+D8 C7 34 CF 4E CF 62 C7 CE CF 00 00 CE D1 1A CC
+AA C8 00 00 84 12 36 CE 00 D7 66 D7 B4 D6 B6 D7
+7A D6 00 00 AA D3 00 00 70 D6 22 D7 D2 D6 10 D7
+BA D4 00 00 00 00 D2 D7 62 CE 3A 40 0C 00 39 40
+D6 21 08 49 28 53 19 83 18 83 E8 49 00 00 1A 83
+FA 23 30 4D 3A 40 0E 00 38 40 CA 21 09 48 29 53
+F8 49 00 00 18 53 1A 83 FB 23 30 4D 82 43 CC 21
+30 4D 92 42 CA 21 DA 21 30 4D 3E CE BC CE C2 CE
+D2 CE 3A 4E 82 4A C8 21 2E 4E 82 4E C6 21 3D 40
+10 00 09 4A 08 49 29 83 18 48 FE FF 0E 98 FC 2B
+89 48 00 00 1D 83 F6 23 2A 4A 0A 93 F0 23 3E 4F
+3D 41 30 4D 24 CC 09 50 57 52 5F 53 54 41 54 45
+84 12 CA CE 88 CE EE D7 A6 C7 09 52 53 54 5F 53
+54 41 54 45 92 42 0E 18 14 CF 92 42 0C 18 16 CF
+EF 3F 06 CF 08 50 57 52 5F 48 45 52 45 00 92 42
+C8 21 14 CF 92 42 C6 21 16 CF 30 4D 1A CF 08 52
+53 54 5F 48 45 52 45 00 92 42 C8 21 0E 18 92 42
+C6 21 0C 18 EC 3F EC C7 04 57 49 50 45 00 39 40
+10 00 29 83 B9 43 80 FF FC 23 B2 40 04 C4 02 C4
+B2 40 D8 CF D6 CF B2 40 88 CE 0E 18 B2 40 EE D7
+0C 18 30 12 24 CF B2 40 C8 C5 C6 C5 B2 40 32 C6
+30 C6 B2 40 4A C6 48 C6 B2 40 18 00 0A 18 37 40
+26 C7 36 40 9C C6 35 40 FA C4 34 40 EC C4 B2 40
+0A 00 DC 21 B2 40 20 00 B4 21 30 41 68 CF 04 57
+41 52 4D 00 30 40 D8 CF 3D 40 12 D0 92 C3 30 01
+1E 42 08 18 0E 93 14 24 F2 B0 10 00 00 02 02 20
+3E E3 1E 53 F2 D0 30 00 0A 02 92 D3 1A 05 3E 90
+0A 00 B5 27 3E 90 16 00 B2 2F 2E 93 81 27 8A 2F
+30 4D 2E C4 07 0D 0A 1B 5B 37 6D 23 00 C6 9C C7
+2E C4 19 46 61 73 74 46 6F 72 74 68 20 C2 A9 4A
+2E 4D 2E 54 68 6F 6F 72 65 6E 73 20 00 C6 24 C4
+40 FF 2A CE A6 C6 66 C7 2E C4 0A 62 79 74 65 73
+20 66 72 65 65 00 48 C4 C8 CB 24 CE 04 43 4F 4C
+44 00 92 B3 0A 05 FD 23 B2 40 04 A5 20 01 31 40
+E0 20 B2 40 88 5A CC 01 B2 43 06 02 B2 40 FC FF
+02 02 D2 D3 04 02 F2 D3 26 02 F2 43 22 02 B2 40
+00 A5 60 01 B2 40 FF 1E 80 01 B2 40 B0 00 82 01
+B2 40 1E 00 84 01 39 40 10 00 82 43 88 01 92 D2
+5E 01 08 18 38 40 59 14 18 83 FE 23 19 83 FA 23
+39 40 00 10 29 83 89 43 00 20 FC 23 B0 12 0E C4
+B2 40 81 00 00 05 92 42 02 18 06 05 92 42 04 18
+08 05 92 C3 00 05 3F 40 80 20 30 12 D4 CF 5C 3F
+24 CD 86 5B 54 48 45 4E 5D 00 30 4D 0C 4E 38 4F
+3B 4F 39 4F 0E 4B 0E 5C 10 24 1B 83 06 30 1C 83
+04 30 19 53 F9 98 FF FF F5 27 2D 4D 3E 4F 30 4D
+2F 53 9F 83 00 00 F9 23 2F 53 2D 53 F7 3F F2 D0
+86 5B 45 4C 53 45 5D 00 0D 12 87 12 24 C4 00 00
+AA C6 70 CA F2 C7 62 CA 68 C6 4C C4 8A D1 70 C6
+2E C4 06 5B 54 48 45 4E 5D 00 FC D0 64 D1 20 D1
+42 D1 26 C7 70 C6 2E C4 06 5B 45 4C 53 45 5D 00
+FC D0 7A D1 20 D1 40 D1 26 C7 2E C4 04 5B 49 46
+5D 00 FC D0 42 D1 48 C4 40 D1 22 C6 2E C4 05 0D
+0A 6B 6F 20 00 C6 D4 C4 C4 C4 48 C4 42 D1 30 D1
+84 5B 49 46 5D 00 0E 93 3E 4F C6 27 30 4D 2F 53
+30 4D A0 D1 89 5B 44 45 46 49 4E 45 44 5D 0D 12
+87 12 70 CA F2 C7 4A C8 AE D1 26 C7 B4 D1 8B 5B
+55 4E 44 45 46 49 4E 45 44 5D 0D 12 87 12 BE D1
+E2 D1 3D 41 30 40 B6 C6 38 40 C0 21 0A 4E 39 48
+2E 48 09 5E 1E 52 C4 21 09 9E 03 24 7A 9E FC 27
+1E 83 0A 4E 2A 88 82 4A C4 21 30 4D 1C 15 87 12
+F2 C7 4A C8 42 C4 20 D2 06 C9 4C C4 00 CC 3A D2
+22 D2 39 4E 39 80 86 12 08 24 19 53 02 20 2E 4E
+04 3C 2E 53 19 53 01 24 2E 82 1B 17 30 41 3E 40
+28 00 B0 12 0C D2 19 42 C6 21 A2 53 C6 21 89 4E
+00 00 3E 40 29 00 1C 15 12 12 C4 21 92 53 C4 21
+87 12 F2 C7 06 C9 4C C4 76 D2 6C D2 21 53 3E 90
+10 00 80 2D E2 2B 78 D2 B2 41 C4 21 DE 3F 0D 12
+87 12 70 CA E8 D1 88 D2 0C 43 1B 42 C6 21 A2 53
+C6 21 6A 4E 3E 4F 7A 90 23 00 27 20 92 53 C4 21
+B0 12 0C D2 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 C6 21 A2 53 C6 21
+89 4E 00 00 3E 4F 3D 41 30 4D 7A 90 26 00 07 20
+3C 40 10 02 92 53 C4 21 B0 12 0C D2 ED 3F 7A 90
+40 00 16 20 3C 40 20 00 92 53 C4 21 B0 12 56 D2
+0C 20 3C 50 10 00 3E 40 2B 00 B0 12 56 D2 92 92
+C0 21 C4 21 02 24 92 53 C4 21 8E 10 0C 5E DA 3F
+B0 12 56 D2 FA 23 3C 50 10 00 B0 12 3E D2 EF 3F
+0C 43 1B 42 C6 21 A2 53 C6 21 0D 12 87 12 70 CA
+E8 D1 54 D3 FE 90 26 00 00 00 3E 40 20 00 03 20
+3C 50 82 00 C7 3F B0 12 56 D2 E0 23 3C 50 80 00
+B0 12 3E D2 DB 3F 00 00 04 52 45 54 49 00 0D 12
+87 12 24 C4 00 13 F8 C9 26 C7 24 C4 2C 00 7E D2
+4A D3 94 D3 09 4B 2E 4E 0E DC A2 3F F6 CD 03 4D
+4F 56 84 12 8A D3 00 40 9E D3 05 4D 4F 56 2E 42
+84 12 8A D3 40 40 00 00 03 41 44 44 84 12 8A D3
+00 50 B8 D3 05 41 44 44 2E 42 84 12 8A D3 40 50
+C4 D3 04 41 44 44 43 00 84 12 8A D3 00 60 D2 D3
+06 41 44 44 43 2E 42 00 84 12 8A D3 40 60 78 D3
+04 53 55 42 43 00 84 12 8A D3 00 70 F0 D3 06 53
+55 42 43 2E 42 00 84 12 8A D3 40 70 FE D3 03 53
+55 42 84 12 8A D3 00 80 0E D4 05 53 55 42 2E 42
+84 12 8A D3 40 80 D2 CD 03 43 4D 50 84 12 8A D3
+00 90 28 D4 05 43 4D 50 2E 42 84 12 8A D3 40 90
+BE CD 04 44 41 44 44 00 84 12 8A D3 00 A0 42 D4
+06 44 41 44 44 2E 42 00 84 12 8A D3 40 A0 34 D4
+03 42 49 54 84 12 8A D3 00 B0 60 D4 05 42 49 54
+2E 42 84 12 8A D3 40 B0 6C D4 03 42 49 43 84 12
+8A D3 00 C0 7A D4 05 42 49 43 2E 42 84 12 8A D3
+40 C0 86 D4 03 42 49 53 84 12 8A D3 00 D0 94 D4
+05 42 49 53 2E 42 84 12 8A D3 40 D0 00 00 03 58
+4F 52 84 12 8A D3 00 E0 AE D4 05 58 4F 52 2E 42
+84 12 8A D3 40 E0 E0 D3 03 41 4E 44 84 12 8A D3
+00 F0 C8 D4 05 41 4E 44 2E 42 84 12 8A D3 40 F0
+70 CA 7E D2 E6 D4 0A 4C 3C F0 70 00 8A 10 3A F0
+0F 00 0C DA 4F 3F 1A D4 03 52 52 43 84 12 E0 D4
+00 10 F8 D4 05 52 52 43 2E 42 84 12 E0 D4 40 10
+04 D5 04 53 57 50 42 00 84 12 E0 D4 80 10 12 D5
+03 52 52 41 84 12 E0 D4 00 11 20 D5 05 52 52 41
+2E 42 84 12 E0 D4 40 11 2C D5 03 53 58 54 84 12
+E0 D4 80 11 00 00 04 50 55 53 48 00 84 12 E0 D4
+00 12 46 D5 06 50 55 53 48 2E 42 00 84 12 E0 D4
+40 12 A0 D4 04 43 41 4C 4C 00 84 12 E0 D4 80 12
+1A 53 0E 4A 0D 12 87 12 9C C7 2E C4 0D 6F 75 74
+20 6F 66 20 62 6F 75 6E 64 73 7A CB 70 CA E8 D1
+92 D5 92 53 C4 21 3E 40 2C 00 87 12 F2 C7 06 C9
+4C C4 00 CC 40 D3 A8 D5 0A 4E 3E 4F 1A 83 E0 33
+29 4E 59 0E 0A 28 08 4C 59 0A 01 28 0C 8A 08 8A
+38 90 10 00 D5 2F 5A 0E 94 3F 2A 92 D1 2F 8A 10
+5A 06 8F 3F 3A D5 04 52 52 43 4D 00 84 12 8C D5
+50 00 D6 D5 04 52 52 41 4D 00 84 12 8C D5 50 01
+E4 D5 04 52 4C 41 4D 00 84 12 8C D5 50 02 F2 D5
+04 52 52 55 4D 00 84 12 8C D5 50 03 54 D5 05 50
+55 53 48 4D 84 12 8C D5 00 15 0E D6 04 50 4F 50
+4D 00 84 12 8C D5 00 17 00 D6 03 53 3E 3D 85 12
+00 38 2A D6 02 53 3C 00 85 12 00 34 1C D6 03 30
+3E 3D 85 12 00 30 3E D6 02 30 3C 00 85 12 00 30
+00 00 02 55 3C 00 85 12 00 2C 52 D6 03 55 3E 3D
+85 12 00 28 48 D6 03 30 3C 3E 85 12 00 24 66 D6
+02 30 3D 00 85 12 00 20 00 00 02 49 46 00 1A 42
+C6 21 8A 4E 00 00 A2 53 C6 21 0E 4A 30 4D 5C D6
+04 54 48 45 4E 00 1A 42 C6 21 08 4E 3E 4F 09 48
+29 53 0A 89 0A 11 3A 90 00 02 63 2F 88 DA 00 00
+30 4D 50 D4 04 45 4C 53 45 00 1A 42 C6 21 BA 40
+00 3C 00 00 A2 53 C6 21 2F 83 8F 4A 00 00 E3 3F
+90 D6 05 55 4E 54 49 4C 3A 4F 08 4E 3E 4F 19 42
+C6 21 2A 83 0A 89 0A 11 3A 90 00 FE 42 3B 3A F0
+FF 03 08 DA 89 48 00 00 A2 53 C6 21 30 4D D4 D4
+05 41 47 41 49 4E 0A 4E 38 40 00 3C E7 3F 00 00
+05 57 48 49 4C 45 0D 12 87 12 7E D6 82 C6 26 C7
+34 D6 06 52 45 50 45 41 54 00 0D 12 87 12 06 D7
+96 D6 26 C7 36 D7 3D 41 08 4E 3E 4F 2A 48 B2 92
+C4 21 CB 2F 98 42 C6 21 00 00 30 4D 64 D5 03 42
+57 31 84 12 34 D7 00 00 4E D7 03 42 57 32 84 12
+34 D7 00 00 5A D7 03 42 57 33 84 12 34 D7 00 00
+72 D7 3D 41 1A 42 C6 21 28 4E B2 92 C4 21 8E 2B
+BA 4F 00 00 A2 53 C6 21 8E 4A 00 00 3E 4F 30 4D
+00 00 03 46 57 31 84 12 70 D7 00 00 92 D7 03 46
+57 32 84 12 70 D7 00 00 9E D7 03 46 57 33 84 12
+70 D7 00 00 AA D7 04 47 4F 54 4F 00 2F 83 8F 4E
+00 00 3E 40 00 3C 0D 12 87 12 F0 CB 18 CA 26 C7
+00 00 05 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
 @FFFE
-9E D2
+6E D0
 q
index 62de337..a75766a 100644 (file)
 @1800
-10 00 04 00 51 55 40 1F 05 00 18 00 50 DA D0 D0
-2D 01 6B B0 B6 C6 C8 C6
+10 00 04 00 51 55 40 1F 05 00 18 00 EE D7 88 CE
+2E 01 6B B0 06 C5 18 C5 D4 CF
 @C400
-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 3A 41 0D 12 0D 4A
-30 4D 00 00 04 45 58 49 54 00 3D 41 30 4D 24 C4
-03 44 55 50 2F 83 8F 4E 00 00 30 4D 00 00 04 32
-44 55 50 00 8F 4E FE FF AF 4F FC FF 2F 82 30 4D
-00 00 04 3F 44 55 50 00 0E 93 EC 23 30 4D 30 C4
-04 44 52 4F 50 00 3E 4F 30 4D 2F 53 30 4D 3E C4
-04 53 57 41 50 00 2A 4F 8F 4E 00 00 0E 4A 30 4D
-52 C4 02 3E 52 00 0E 12 3E 4F 30 4D 70 C4 02 52
-3E 00 2F 83 8F 4E 00 00 3E 41 30 4D 60 C4 05 44
-45 50 54 48 8F 4E FE FF 3E 40 80 20 0E 8F 0E 11
-2F 83 30 4D 00 00 01 2D 3E 8F 3E E3 1E 53 30 4D
-00 00 02 31 2B 00 1E 53 30 4D C2 C4 02 31 2D 00
-1E 83 30 4D 3E F3 06 34 BF E3 00 00 3E E3 9F 53
-00 00 0E 63 30 4D 00 00 01 40 2E 4E 30 4D E8 C4
-01 21 BE 4F 00 00 3E 4F 30 4D CC C4 02 30 3D 00
-1E 83 0E 7E 30 4D FC C4 02 30 3C 00 0E 5E 0E 7E
-3E E3 30 4D 00 00 01 3D 3E 8F FA 27 0E F3 30 4D
-00 00 02 55 3C 00 3E 8F F9 2B 01 24 3E 43 30 4D
-16 C5 02 3C 23 00 B2 40 B2 21 B2 21 30 4D 0B 4E
+30 40 04 C4 B0 12 06 C5 12 D2 0A 18 F9 3F 39 40
+26 00 29 83 B9 40 6E D0 DA FF FB 23 B2 40 68 C5
+E4 FF 30 41 2F 83 8F 4E 00 00 3E 4D 30 4D 2F 82
+8F 4E 02 00 7E 4D 8F 4D 00 00 0D 5E 1D B3 0D 63
+30 4D 0E 93 3E 4F 05 24 2D 4D 30 4D 0E 93 3E 4F
+FB 27 2D 53 30 4D 39 40 00 80 39 8F 08 4E 3E 4F
+08 59 19 15 30 4D 81 5E 00 00 3E 4F 32 B0 00 01
+EB 27 21 52 2D 53 30 4D 91 53 00 00 F7 3F 0B 4E
 1C 4F 02 00 2E 4F 0A 43 34 40 20 00 0E 93 04 20
 04 11 0E 4C 0C 43 09 43 0A 9B 01 28 0A 8B 09 69
 08 68 14 83 07 30 0C 5C 0E 6E 0A 6A F5 2B 0A 8B
-12 D3 F5 3F 34 40 00 C4 8F 4A 02 00 8F 49 00 00
-0E 48 30 41 00 00 01 23 1B 42 DC 21 2C 4F 2F 83
-B0 12 46 C5 BF 4F 00 00 7A 90 0A 00 02 28 7A 50
-07 00 7A 50 30 00 92 83 B2 21 18 42 B2 21 C8 4A
-00 00 30 4D 86 C5 02 23 53 00 87 12 88 C5 C0 C5
-2D 83 09 93 E3 23 0E 93 E1 23 3D 41 30 4D B6 C5
-02 23 3E 00 9F 42 B2 21 00 00 3E 40 B2 21 2E 8F
-30 4D 00 00 04 48 4F 4C 44 00 0A 4E 3E 4F DB 3F
-8E C4 04 53 49 47 4E 00 0E 93 3E 4F 3A 40 2D 00
-D2 33 30 4D 87 12 36 C5 34 C4 86 C4 D4 C4 BA C5
-92 C4 F8 C5 D4 C5 D6 C7 42 CB 82 C7 2A C4 22 C5
-02 55 2E 00 08 43 2F 83 8F 4E 00 00 0E 48 EA 3F
-00 00 01 2E 0E 93 F6 37 38 43 F5 3F 2D 4D 30 4D
-0E 93 3E 4F FB 27 2D 53 30 4D 0E 93 3E 4F F6 23
-2D 53 30 4D 39 40 00 80 39 8F 08 4E 3E 4F 08 59
-19 15 30 4D 81 5E 00 00 3E 4F 32 B0 00 01 E6 27
-2D 53 21 52 30 4D 91 53 00 00 F7 3F E4 C5 01 49
-2F 83 8F 4E 00 00 2E 41 1E 81 02 00 30 4D 00 00
-03 4B 45 59 30 40 98 C6 18 42 0C 05 2F 83 8F 4E
-00 00 B0 12 B6 C6 92 B3 1C 05 FD 27 1E 42 0C 05
-B0 12 C8 C6 30 4D A2 B3 1C 05 FD 27 B2 40 11 00
-0E 05 D2 C3 02 02 30 41 B2 40 13 00 0E 05 D2 D3
-02 02 30 41 00 00 05 53 4C 45 45 50 30 40 E0 C6
-B0 12 B6 C6 12 D2 0A 18 F9 3F F0 C4 06 41 43 43
-45 50 54 00 3C 40 64 C7 3B 40 2E C7 2D 15 0A 4E
-2E 4F 0A 5E 3B 40 0D 00 3C 40 20 00 3D 40 58 C7
-92 B3 1C 05 05 24 18 42 0C 05 38 90 0A 00 CB 23
-21 53 3D 15 DB 3F 21 52 3A 17 58 42 0C 05 48 9C
-08 2C 48 9B C9 27 78 92 11 20 2E 9F 0F 24 1E 83
-05 3C 0E 9A 03 24 CE 48 00 00 1E 53 A2 B3 1C 05
-FD 27 82 48 0E 05 30 4D 5A C7 2D 83 92 B3 1C 05
-E4 23 FC 27 82 93 DE 21 02 24 92 53 DE 21 3E 8F
-3D 41 B2 40 18 00 0A 18 30 4D 9E C4 04 45 4D 49
-54 00 30 40 86 C7 08 4E 3E 4F E0 3F 3F 80 06 00
-8F 4E 04 00 3E 40 54 00 BF 40 3C 21 00 00 AF 4F
-02 00 A8 3F 7C C7 04 45 43 48 4F 00 B2 40 82 48
-52 C7 82 43 DE 21 30 4D 32 C6 06 4E 4F 45 43 48
-4F 00 B2 40 30 4D 52 C7 92 43 DE 21 30 4D 20 C6
-04 54 59 50 45 00 0E 93 0F 24 1E 15 3D 40 EC C7
-28 4F 7E 48 8F 48 00 00 2F 83 CB 3F EE C7 2D 83
-91 83 02 00 F5 23 1D 17 2F 53 3E 4F 30 4D D0 C5
-02 43 52 00 30 40 08 C8 87 12 1E C8 02 0D 0A 00
-D6 C7 2A C4 2F 83 8F 4E 00 00 3E 4D 30 4D 2F 82
-8F 4E 02 00 7E 4D 8F 4D 00 00 0D 5E 1D B3 0D 63
-30 4D F2 C5 82 53 22 00 82 43 B4 21 87 12 14 C8
-1E C8 B0 CA 14 C8 22 00 80 C8 4C C8 B2 40 20 00
-B4 21 6E 4E 1E 53 1E B3 82 6E C6 21 3D 41 3E 4F
-30 4D BA C7 82 2E 22 00 87 12 38 C8 14 C8 D6 C7
-B0 CA 2A C4 48 43 05 3C 00 00 04 57 4F 52 44 00
-48 4E 19 42 C0 21 1A 42 C2 21 09 5A 1A 52 C4 21
-09 9A 03 24 7E 9A FC 27 1A 83 4E F8 06 20 0E 4A
-1A 82 C2 21 82 4A C4 21 30 4D 18 42 C6 21 3B 40
-60 00 C8 4C 00 00 09 9A 0C 24 7C 4A 4E 9C 09 24
-18 53 4B 9C F6 2F 7C 90 7B 00 F3 2F 5C 82 B4 21
-F0 3F 1A 82 C2 21 82 4A C4 21 1E 42 C6 21 08 8E
-CE 48 00 00 30 4D 00 00 04 46 49 4E 44 00 2F 83
-0C 4E 65 4C 74 40 80 00 3B 40 CA 21 3E 4B 0E 93
-1E 24 58 4C 01 00 78 F0 1E 00 0E 58 2E 53 1E 4E
-FE FF 0E 93 F3 27 09 4E 78 49 48 C4 48 95 F7 23
-0A 4C FA 99 01 00 F3 23 1A 53 58 83 FA 23 19 B3
-09 63 0C 49 6A 4E 1E 43 4A 93 01 30 2E 83 8F 4C
-00 00 35 40 0E C4 34 40 00 C4 30 4D 82 C4 07 3E
-4E 55 4D 42 45 52 3C 4F 38 4F 29 4F 2F 82 1B 42
-DC 21 6A 4C 7A 80 30 00 7A 90 0A 00 05 28 7A 80
-07 00 7A 90 0A 00 12 28 0A 9B 22 C3 0F 2C 82 49
-D0 04 82 48 D2 04 82 4B C8 04 19 42 E4 04 18 42
-E6 04 09 5A 08 63 1C 53 1E 83 E3 23 8F 4C 00 00
-8F 48 02 00 8F 49 04 00 30 4D 32 C0 00 02 1B 42
-DC 21 0C 43 2D 15 3D 40 F4 C9 09 43 08 43 3F 82
-8F 4E 06 00 0C 4E 7E 4C 6A 4C 7A 90 2D 00 04 28
-C9 23 B1 43 02 00 DF 3F 2B 43 7A 80 25 00 07 24
-3B 52 6A 53 04 24 3B 40 10 00 5A 83 BA 23 1C 53
-1E 83 EA 3F F6 C9 2F 24 2D 83 7A 90 28 00 CB 27
-32 D0 00 02 7A 90 F7 00 C6 27 7A 90 F5 00 23 20
-0A 4E 09 43 8F 49 02 00 5A 83 09 4A 09 5C 69 49
-79 80 30 00 79 90 0A 00 05 28 79 80 07 00 79 90
-0A 00 0A 28 09 9B 08 2C 8F 49 00 00 0E 4B 2C 15
-B0 12 3E C5 2A 17 E6 3F 9F 4F 04 00 02 00 AF 4F
-04 00 0E 4A 4E 93 2B 17 0E 4C 82 4B DC 21 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 7E C6 04 48 45 52 45 00
-2F 83 8F 4E 00 00 1E 42 C6 21 30 4D B6 C4 01 2C
-1A 42 C6 21 8A 4E 00 00 A2 53 C6 21 3E 4F 30 4D
-EC C6 05 41 4C 4C 4F 54 82 5E C6 21 3E 4F 30 4D
-A6 C7 07 45 58 45 43 55 54 45 0A 4E 3E 4F 00 4A
-AE CA 87 4C 49 54 45 52 41 4C 82 93 BE 21 0C 24
-1A 42 C6 21 A2 52 C6 21 BA 40 14 C8 00 00 8A 4E
-02 00 3E 4F 32 B0 00 02 32 C0 00 02 06 24 19 4A
-02 00 8A 4E 02 00 0E 49 EB 3F 30 4D 00 C8 05 43
-4F 55 4E 54 2F 83 1E 53 8F 4E 00 00 5E 4E FF FF
-30 4D 82 4E C0 21 B2 4F C2 21 3E 4F 82 43 C4 21
-30 4D 85 12 20 00 87 12 32 CB 42 CB 80 C8 50 CB
-3D 40 58 CB CC 22 82 3E 5A CB 0A 4E 3E 4F 3D 40
-70 CB 23 27 3D 40 4A CB 1A E2 BE 21 A1 27 B5 23
-72 CB 3E 4F 3D 40 4A CB B8 23 DE 53 00 00 68 4E
-08 5E F8 40 3F 00 00 00 3D 40 26 CE CB 3F D2 CA
+12 D3 F5 3F 34 40 EC C4 8F 4A 02 00 8F 49 00 00
+0E 48 30 41 82 4E C0 21 B2 4F C2 21 3E 4F 82 43
+C4 21 30 4D 3F 80 06 00 8F 4E 04 00 3E 40 54 00
+BF 40 3C 21 00 00 AF 4F 02 00 24 3C 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 A2 B3 1C 05 FD 27 B2 40 11 00
+0E 05 D2 C3 02 02 30 41 A2 B3 1C 05 FD 27 B2 40
+13 00 0E 05 D2 D3 02 02 30 41 00 00 06 41 43 43
+45 50 54 00 3C 40 A6 C5 3B 40 70 C5 2D 15 0A 4E
+2E 4F 0A 5E 3B 40 0D 00 3C 40 20 00 3D 40 9A C5
+92 B3 1C 05 05 24 18 42 0C 05 38 90 0A 00 D3 23
+21 53 3D 15 30 40 00 C4 21 52 3A 17 58 42 0C 05
+48 9C 08 2C 48 9B D0 27 78 92 11 20 2E 9F 0F 24
+1E 83 05 3C 0E 9A 03 24 CE 48 00 00 1E 53 A2 B3
+1C 05 FD 27 82 48 0E 05 30 4D 9C C5 2D 83 92 B3
+1C 05 E4 23 FC 27 82 93 DE 21 02 24 92 53 DE 21
+3E 8F 3D 41 B2 40 18 00 0A 18 30 4D 00 00 04 45
+4D 49 54 00 30 40 C8 C5 08 4E 3E 4F E0 3F BE C5
+04 45 43 48 4F 00 B2 40 82 48 94 C5 82 43 DE 21
+30 4D 00 00 06 4E 4F 45 43 48 4F 00 B2 40 30 4D
+94 C5 92 43 DE 21 30 4D 00 00 04 54 59 50 45 00
+0E 93 0F 24 1E 15 3D 40 16 C6 28 4F 7E 48 8F 48
+00 00 2F 83 D7 3F 18 C6 2D 83 91 83 02 00 F5 23
+1D 17 2F 53 3E 4F 30 4D 00 00 02 43 52 00 30 40
+32 C6 0D 12 87 12 2E C4 02 0D 0A 00 00 C6 26 C7
+00 00 03 4B 45 59 30 40 4A C6 18 42 0C 05 2F 83
+8F 4E 00 00 B0 12 06 C5 92 B3 1C 05 FD 27 1E 42
+0C 05 B0 12 18 C5 30 4D 2F 83 8F 4E 00 00 30 4D
+8F 4E FE FF AF 4F FC FF 2F 82 30 4D 0E 93 F4 23
+30 4D 2A 4F 8F 4E 00 00 0E 4A 30 4D 8F 4E FE FF
+3E 40 80 20 0E 8F 0E 11 2F 83 30 4D 2F 83 8F 4E
+00 00 3E 41 30 4D 3E 8F 3E E3 1E 53 30 4D BE 4F
+00 00 3E 4F 30 4D 1E 83 0E 7E 30 4D 0E 5E 0E 7E
+3E E3 30 4D 3E 8F 03 24 3E 43 01 2C 0E F3 30 4D
+00 00 02 3C 23 00 B2 40 B2 21 B2 21 30 4D 2A C6
+01 23 1B 42 DC 21 2C 4F 2F 83 B0 12 86 C4 BF 4F
+00 00 7A 90 0A 00 02 28 7A 50 07 00 7A 50 30 00
+92 83 B2 21 18 42 B2 21 C8 4A 00 00 30 4D E0 C6
+02 23 53 00 0D 12 87 12 E2 C6 1C C7 2D 83 09 93
+E2 23 0E 93 E0 23 3D 41 30 4D 10 C7 02 23 3E 00
+9F 42 B2 21 00 00 3E 40 B2 21 2E 8F 30 4D 00 00
+04 48 4F 4C 44 00 4A 4E 3E 4F DA 3F 00 00 04 53
+49 47 4E 00 0E 93 3E 4F 7A 40 2D 00 D1 33 30 4D
+FA C5 02 55 2E 00 08 43 2F 83 8F 4E 00 00 0E 48
+0D 12 0E 12 3E F3 06 34 BF E3 00 00 3E E3 9F 53
+00 00 0E 63 87 12 D6 C6 14 C7 9C C6 54 C7 30 C7
+00 C6 70 CA C4 C5 26 C7 E4 C5 01 2E 0E 93 E3 37
+38 43 E2 3F 4E C7 82 53 22 00 82 43 B4 21 0D 12
+87 12 24 C4 2E C4 F8 C9 24 C4 22 00 F2 C7 C0 C7
+B2 40 20 00 B4 21 6E 4E 1E 53 1E B3 82 6E C6 21
+3D 41 3E 4F 30 4D 9A C7 82 2E 22 00 0D 12 87 12
+AA C7 24 C4 00 C6 F8 C9 26 C7 00 00 04 57 4F 52
+44 00 3C 40 C0 21 39 4C 3A 4C 09 5A 3A 5C 28 4C
+09 9A 15 24 7E 9A FC 27 1A 83 3B 40 60 00 C8 4C
+00 00 09 9A 0C 24 7C 4A 4E 9C 09 24 18 53 4B 9C
+F6 2F 7C 90 7B 00 F3 2F 5C 82 B4 21 F0 3F 1A 82
+C2 21 82 4A C4 21 1E 42 C6 21 08 8E CE 48 00 00
+30 4D 00 00 04 46 49 4E 44 00 2F 83 0C 4E 65 4C
+74 40 80 00 3B 40 CA 21 3E 4B 0E 93 1E 24 58 4C
+01 00 78 F0 1E 00 0E 58 2E 53 1E 4E FE FF 0E 93
+F3 27 09 4E 78 49 48 C4 48 95 F7 23 0A 4C FA 99
+01 00 F3 23 1A 53 58 83 FA 23 19 B3 09 63 0C 49
+6A 4E 1E 43 4A 93 01 30 2E 83 8F 4C 00 00 35 40
+FA C4 34 40 EC C4 30 4D 00 00 07 3E 4E 55 4D 42
+45 52 3C 4F 38 4F 29 4F 2F 82 1B 42 DC 21 6A 4C
+7A 80 30 00 7A 90 0A 00 05 28 7A 80 07 00 7A 90
+0A 00 12 28 0A 9B 22 C3 0F 2C 82 49 D0 04 82 48
+D2 04 82 4B C8 04 19 42 E4 04 18 42 E6 04 09 5A
+08 63 1C 53 1E 83 E3 23 8F 4C 00 00 8F 48 02 00
+8F 49 04 00 30 4D 32 C0 00 02 1B 42 DC 21 0C 43
+2D 15 3D 40 50 C9 09 43 08 43 3F 82 8F 4E 06 00
+0C 4E 7E 4C 6A 4C 7A 90 2D 00 04 28 C9 23 B1 43
+02 00 0B 3C 2B 43 7A 80 25 00 07 24 3B 52 6A 53
+04 24 3B 40 10 00 5A 83 BA 23 1C 53 1E 83 EA 3F
+52 C9 2F 24 2D 83 7A 90 28 00 CB 27 32 D0 00 02
+7A 90 F7 00 C6 27 7A 90 F5 00 23 20 0A 4E 09 43
+8F 49 02 00 5A 83 09 4A 09 5C 69 49 79 80 30 00
+79 90 0A 00 05 28 79 80 07 00 79 90 0A 00 0A 28
+09 9B 08 2C 8F 49 00 00 0E 4B 2C 15 B0 12 7E C4
+2A 17 E6 3F 9F 4F 04 00 02 00 AF 4F 04 00 0E 4A
+4E 93 2B 17 0E 4C 82 4B DC 21 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 00 00 01 2C 1A 42 C6 21 8A 4E 00 00
+A2 53 C6 21 3E 4F 30 4D 2C C5 05 41 4C 4C 4F 54
+82 5E C6 21 3E 4F 30 4D 0A 4E 3E 4F 00 4A F6 C9
+87 4C 49 54 45 52 41 4C 82 93 BE 21 0C 24 1A 42
+C6 21 A2 52 C6 21 BA 40 24 C4 00 00 8A 4E 02 00
+3E 4F 32 B0 00 02 32 C0 00 02 06 24 19 4A 02 00
+8A 4E 02 00 0E 49 EB 3F 30 4D 2C C7 05 43 4F 55
+4E 54 2F 83 1E 53 8F 4E 00 00 5E 4E FF FF 30 4D
+85 12 20 00 0D 12 87 12 C4 C4 70 CA F2 C7 80 CA
+3D 40 88 CA E2 22 A4 26 8A CA 0A 4E 3E 4F 3D 40
+A0 CA 39 27 3D 40 7A CA 1A E2 BE 21 BD 23 AC 27
+A2 CA 3E 4F 3D 40 7A CA BF 23 DE 53 00 00 68 4E
+08 5E F8 40 3F 00 00 00 3D 40 20 CD D2 3F D0 C5
 08 45 56 41 4C 55 41 54 45 00 39 40 C0 21 3C 49
-3B 49 3A 49 3D 15 B0 12 2A C4 46 CB AE CB B2 41
-C4 21 B2 41 C2 21 B2 41 C0 21 3D 41 30 4D 85 12
-BE 21 08 C5 04 51 55 49 54 00 82 43 08 18 31 40
-E0 20 B2 40 00 20 00 20 82 43 BE 21 B0 12 2A C4
-04 C8 8C C7 42 CB 82 C7 46 CB A4 C4 0C C5 1E C8
-0C 73 74 61 63 6B 20 65 6D 70 74 79 21 00 40 CC
-14 C8 30 FF A0 CA 26 C5 1E C8 0A 46 52 41 4D 20
-66 75 6C 6C 21 00 40 CC 3C C6 E0 CB C2 CA 05 41
-42 4F 52 54 3F 40 80 20 D0 3F 1E CC 86 41 42 4F
-52 54 22 00 87 12 38 C8 14 C8 40 CC B0 CA 2A C4
-8F 93 02 00 03 20 2F 52 3E 4F 30 4D B0 12 C8 D1
-B0 12 B6 C6 92 C3 1C 05 38 40 50 55 39 42 03 43
-19 83 FD 23 18 83 FA 23 92 B3 1C 05 F3 23 87 12
-42 D1 14 C8 DE 21 EA C4 AC C7 1E C8 04 1B 5B 37
-6D 00 D6 C7 58 C4 40 C6 9A CC 04 C8 1E C8 05 6C
-69 6E 65 3A D6 C7 D0 C4 24 C6 D6 C7 1E C8 04 1B
-5B 30 6D 00 D6 C7 24 CC 00 00 83 5B 27 5D 87 12
-C0 CC 14 C8 14 C8 B0 CA B0 CA 2A C4 E8 C8 01 27
-87 12 42 CB 80 C8 EE C8 40 C6 CE CC 2A C4 7A CB
-32 C5 81 5C 92 42 C0 21 C4 21 30 4D AA CC 81 5B
-82 43 BE 21 30 4D D2 CC 01 5D B2 43 BE 21 30 4D
-BE 4F 02 00 3E 4F 30 4D 9A CA 82 49 53 00 87 12
-BE CB EA C4 40 C6 12 CD AE CC 14 C8 F0 CC B0 CA
-2A C4 C0 CC F0 CC 2A C4 FA CC 09 49 4D 4D 45 44
-49 41 54 45 1A 42 B6 21 FA D0 80 00 00 00 30 4D
-C4 CB 88 50 4F 53 54 50 4F 4E 45 00 87 12 42 CB
-80 C8 EE C8 58 C4 40 C6 CE CC 0C C5 40 C6 5C CD
-14 C8 14 C8 B0 CA B0 CA 14 C8 B0 CA B0 CA 2A C4
-DE CC 81 3B 82 93 BE 21 B5 27 87 12 14 C8 2A C4
-B0 CA FA CD E0 CC 2A C4 62 CD 07 3A 4E 4F 4E 41
-4D 45 30 12 A0 CD 2F 83 8F 4E 00 00 1E 42 C6 21
-1E B3 0E 63 0A 4E 39 40 00 02 38 40 02 02 21 3C
-BA 40 87 12 FC FF A2 83 C6 21 B2 43 BE 21 30 4D
-7A CD 01 3A 30 12 A0 CD 92 B3 C6 21 A2 63 C6 21
-87 12 42 CB 80 C8 C8 CD 3D 41 08 4E 7A 4E 5A D3
-5A 53 0A 58 19 42 DA 21 6E 4E 3E F0 1E 00 09 5E
-3E 4F 82 48 B6 21 82 49 B8 21 82 4A BA 21 82 4F
-BC 21 2A 52 82 4A C6 21 30 41 82 9F BC 21 09 20
-18 42 B6 21 19 42 B8 21 A8 49 FE FF 89 48 00 00
-30 4D 87 12 1E C8 0F 73 74 61 63 6B 20 6D 69 73
-6D 61 74 63 68 21 4C CC 90 CB 05 44 45 46 45 52
-B0 12 B8 CD BA 40 30 40 FC FF BA 40 AE CD FE FF
-E3 3F 1E CB 06 43 52 45 41 54 45 00 B0 12 B8 CD
-BA 40 85 12 FC FF 8A 4A FE FF D6 3F 2A CE 05 44
-4F 45 53 3E 1A 42 BA 21 BA 40 84 12 00 00 8A 4D
-02 00 3D 41 30 4D 4E C9 05 3E 42 4F 44 59 2E 52
-30 4D 44 CE 04 43 4F 44 45 00 B0 12 B8 CD A2 82
-C6 21 87 12 D2 D0 AC D0 2A C4 84 CE 07 43 4F 44
-45 4E 4E 4D B0 12 86 CD F2 3F 00 00 07 45 4E 44
-43 4F 44 45 87 12 E0 D0 FA CD 2A C4 2C CC 03 41
-53 4D B2 40 B0 D0 DA 21 E0 3F AC CE 06 45 4E 44
-41 53 4D 00 87 12 B4 CE F4 D0 2A C4 00 00 05 43
-4F 4C 4F 4E 1A 42 C6 21 BA 40 87 12 00 00 A2 53
-C6 21 B2 43 BE 21 30 40 E0 D0 00 00 05 4C 4F 32
-48 49 1A 42 C6 21 BA 40 B0 12 00 00 BA 40 2A C4
-02 00 A2 52 C6 21 ED 3F 1A CD 85 48 49 32 4C 4F
-87 12 A0 CA 4A CF B0 CA E0 CC D2 D0 AC D0 2A C4
-1A CF 82 49 46 00 2F 83 8F 4E 00 00 1E 42 C6 21
-A2 52 C6 21 BE 40 40 C6 00 00 2E 53 30 4D 5E CE
-84 45 4C 53 45 00 A2 52 C6 21 1A 42 C6 21 BA 40
-3C C6 FC FF 8E 4A 00 00 2A 83 0E 4A 30 4D D0 C7
-84 54 48 45 4E 00 9E 42 C6 21 00 00 3E 4F 30 4D
-9C CE 85 42 45 47 49 4E 30 40 A0 CA 70 CF 85 55
-4E 54 49 4C 39 40 40 C6 A2 52 C6 21 1A 42 C6 21
-8A 49 FC FF 8A 4E FE FF 3E 4F 30 4D BE CE 85 41
-47 41 49 4E 39 40 3C C6 EF 3F 7A C8 85 57 48 49
-4C 45 87 12 36 CF 76 C4 2A C4 34 C8 86 52 45 50
-45 41 54 00 87 12 B4 CF 76 CF 2A C4 50 CF 82 44
-4F 00 2F 83 8F 4E 00 00 A2 53 C6 21 1E 42 C6 21
-BE 40 54 C6 FE FF A2 53 00 20 1A 42 00 20 8A 43
-00 00 30 4D E2 CA 84 4C 4F 4F 50 00 39 40 76 C6
-A2 52 C6 21 1A 42 C6 21 8A 49 FC FF 8A 4E FE FF
-1E 42 00 20 A2 83 00 20 2E 4E 0E 93 03 24 8E 4A
-00 00 F6 3F 3E 4F 30 4D 90 C6 85 2B 4C 4F 4F 50
-39 40 64 C6 E5 3F 06 D0 04 4D 4F 56 45 00 0A 4E
-38 4F 39 4F 3E 4F 0A 93 11 24 08 99 0F 24 06 2C
-F8 49 00 00 18 53 1A 83 FB 23 30 4D 08 5A 09 5A
-19 83 18 83 E8 49 00 00 1A 83 FA 23 30 4D 14 C8
-CA 21 F2 C4 2A C4 84 12 7E D0 AE CF 36 D3 DE CF
-BE CC 32 CF 3A D0 4A D4 64 C8 66 D1 80 D1 8E CF
-00 D2 00 00 1C D4 E8 CC 78 CE 00 00 84 12 7E D0
-68 D9 CA D9 1C D9 3E DA E2 D8 00 00 12 D6 00 00
-D8 D8 88 D9 3A D9 78 D9 22 D7 00 00 00 00 1A DA
-AA D0 3A 40 0C 00 39 40 CA 21 38 40 CC 21 C6 3F
-3A 40 0E 00 39 40 CC 21 38 40 CA 21 B9 3F 82 43
-CC 21 30 4D 92 42 CA 21 DA 21 30 4D 86 D0 EE D0
-F4 D0 04 D1 3A 4E 82 4A C8 21 2E 4E 82 4E C6 21
-3D 40 10 00 09 4A 08 49 29 83 18 48 FE FF 0E 98
-FC 2B 89 48 00 00 1D 83 F6 23 2A 4A 0A 93 F0 23
-3E 4F 3D 41 30 4D 32 CD 09 50 57 52 5F 53 54 41
-54 45 84 12 FC D0 D0 D0 50 DA CC CF 09 52 53 54
-5F 53 54 41 54 45 92 42 0E 18 46 D1 92 42 0C 18
-48 D1 EF 3F 38 D1 08 50 57 52 5F 48 45 52 45 00
-92 42 C8 21 46 D1 92 42 C6 21 48 D1 30 4D 4C D1
-08 52 53 54 5F 48 45 52 45 00 92 42 C8 21 0E 18
-92 42 C6 21 0C 18 EC 3F BC CF 04 57 49 50 45 00
-39 40 10 00 29 83 B9 43 80 FF FC 23 B2 40 E0 C6
-DE C6 B2 40 0A D2 08 D2 B2 40 D0 D0 0E 18 B2 40
-50 DA 0C 18 30 12 56 D1 B2 40 86 C7 84 C7 B2 40
-08 C8 06 C8 B2 40 98 C6 96 C6 B2 40 18 00 0A 18
-37 40 1A C4 36 40 92 C4 35 40 0E C4 34 40 00 C4
-B2 40 0A 00 DC 21 B2 40 20 00 B4 21 30 41 9A D1
-04 57 41 52 4D 00 30 40 0A D2 3D 40 40 D2 92 C3
-30 01 1E 42 08 18 0E 93 12 24 F2 B0 10 00 00 02
-02 20 3E E3 1E 53 F2 D0 30 00 0A 02 3E 90 0A 00
-B7 27 3E 90 16 00 B4 2F 2E 93 83 27 8C 2F 30 4D
-1E C8 06 0D 1B 5B 37 6D 23 00 D6 C7 34 C6 1E C8
-19 46 61 73 74 46 6F 72 74 68 20 C2 A9 4A 2E 4D
-2E 54 68 6F 6F 72 65 6E 73 20 D6 C7 14 C8 30 FF
-A0 CA B8 C4 24 C6 1E C8 0A 62 79 74 65 73 20 66
-72 65 65 00 3C C6 9A CC 82 CF 04 43 4F 4C 44 00
-92 B3 0A 05 FD 23 B2 40 04 A5 20 01 40 D2 B2 40
-88 5A CC 01 B2 43 06 02 B2 40 FC FF 02 02 D2 D3
-02 02 F2 D3 26 02 F2 43 22 02 B2 40 00 A5 60 01
-B2 40 FF 1E 80 01 B2 40 B6 00 82 01 B2 40 F4 00
-84 01 39 40 80 00 82 43 88 01 92 D2 5E 01 08 18
-38 40 59 14 18 83 FE 23 19 83 FA 23 39 40 00 10
-29 83 89 43 00 20 FC 23 39 40 26 00 29 83 B9 40
-9E D2 DA FF FB 23 B2 40 26 C7 E4 FF B2 40 81 00
-00 05 92 42 02 18 06 05 92 42 04 18 08 05 92 C3
-00 05 92 D3 1A 05 3F 40 80 20 31 40 E0 20 30 12
-06 D2 53 3F 8A D2 07 43 4F 4D 50 41 52 45 0C 4E
-38 4F 3B 4F 39 4F 0E 4B 0E 5C 0C 24 1B 83 07 30
-1C 83 07 30 19 53 F9 98 FF FF F5 27 02 2C 3E 43
-30 4D 1E 43 30 4D B2 CD 86 5B 54 48 45 4E 5D 00
-30 4D 68 D3 86 5B 45 4C 53 45 5D 00 87 12 14 C8
-00 00 C6 C4 42 CB 80 C8 24 CB 34 C4 40 C6 DE D3
-44 C4 1E C8 06 5B 54 48 45 4E 5D 00 3E D3 4A C6
-AE D3 F8 C7 D0 C4 58 C4 4A C6 84 D3 2A C4 44 C4
-1E C8 06 5B 45 4C 53 45 5D 00 3E D3 4A C6 CC D3
-F8 C7 D0 C4 58 C4 4A C6 82 D3 2A C4 1E C8 04 5B
-49 46 5D 00 3E D3 4A C6 84 D3 3C C6 82 D3 F8 C7
-1E C8 05 0D 0A 6B 6F 20 D6 C7 8C C7 32 CB 3C C6
-84 D3 74 D3 84 5B 49 46 5D 00 0E 93 3E 4F BE 27
-30 4D F4 D3 89 5B 44 45 46 49 4E 45 44 5D 87 12
-42 CB 80 C8 EE C8 6A C4 2A C4 04 D4 8B 5B 55 4E
-44 45 46 49 4E 45 44 5D 87 12 42 CB 80 C8 EE C8
-6A C4 00 C5 2A C4 38 D4 3D 41 B2 4E 0E 18 A2 4E
-0C 18 3E 4F 30 40 56 D1 48 D0 06 4D 41 52 4B 45
-52 00 B0 12 B8 CD BA 40 84 12 FC FF BA 40 36 D4
-FE FF 9A 42 C8 21 00 00 28 83 8A 48 02 00 A2 52
-C6 21 30 40 00 CE 1C 15 B0 12 2A C4 80 C8 EE C8
-4A C6 8C D4 AA C9 40 C6 CE CC A6 D4 8E D4 39 4E
-39 80 86 12 08 24 19 53 02 20 2E 4E 04 3C 2E 53
-19 53 01 24 2E 82 1B 17 30 41 3E 40 28 00 B0 12
-76 D4 19 42 C6 21 A2 53 C6 21 89 4E 00 00 3E 40
-29 00 1C 15 12 12 C4 21 92 53 C4 21 B0 12 2A C4
-80 C8 AA C9 40 C6 E4 D4 DA D4 21 53 3E 90 10 00
-7D 2D E1 2B E6 D4 B2 41 C4 21 DD 3F 87 12 42 CB
-74 C8 F4 D4 0C 43 1B 42 C6 21 A2 53 C6 21 6A 4E
-3E 4F 7A 90 23 00 27 20 92 53 C4 21 B0 12 76 D4
-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 C6 21 A2 53 C6 21 89 4E 00 00
-3E 4F 3D 41 30 4D 7A 90 26 00 07 20 3C 40 10 02
-92 53 C4 21 B0 12 76 D4 ED 3F 7A 90 40 00 16 20
-3C 40 20 00 92 53 C4 21 B0 12 C2 D4 0C 20 3C 50
-10 00 3E 40 2B 00 B0 12 C2 D4 92 92 C0 21 C4 21
-02 24 92 53 C4 21 8E 10 0C 5E DA 3F B0 12 C2 D4
-FA 23 3C 50 10 00 B0 12 AA D4 EF 3F 0C 43 1B 42
-C6 21 A2 53 C6 21 87 12 42 CB 74 C8 BE D5 FE 90
-26 00 00 00 3E 40 20 00 03 20 3C 50 82 00 C8 3F
-B0 12 C2 D4 E1 23 3C 50 80 00 B0 12 AA D4 DC 3F
-D6 C6 04 52 45 54 49 00 87 12 14 C8 00 13 B0 CA
-2A C4 14 C8 2C 00 EC D4 B6 D5 FC D5 09 4B 2E 4E
-0E DC A4 3F FC CE 03 4D 4F 56 84 12 F2 D5 00 40
-06 D6 05 4D 4F 56 2E 42 84 12 F2 D5 40 40 00 00
-03 41 44 44 84 12 F2 D5 00 50 20 D6 05 41 44 44
-2E 42 84 12 F2 D5 40 50 2C D6 04 41 44 44 43 00
-84 12 F2 D5 00 60 3A D6 06 41 44 44 43 2E 42 00
-84 12 F2 D5 40 60 E2 D5 04 53 55 42 43 00 84 12
-F2 D5 00 70 58 D6 06 53 55 42 43 2E 42 00 84 12
-F2 D5 40 70 66 D6 03 53 55 42 84 12 F2 D5 00 80
-76 D6 05 53 55 42 2E 42 84 12 F2 D5 40 80 DE CE
-03 43 4D 50 84 12 F2 D5 00 90 90 D6 05 43 4D 50
-2E 42 84 12 F2 D5 40 90 CC CE 04 44 41 44 44 00
-84 12 F2 D5 00 A0 AA D6 06 44 41 44 44 2E 42 00
-84 12 F2 D5 40 A0 9C D6 03 42 49 54 84 12 F2 D5
-00 B0 C8 D6 05 42 49 54 2E 42 84 12 F2 D5 40 B0
-D4 D6 03 42 49 43 84 12 F2 D5 00 C0 E2 D6 05 42
-49 43 2E 42 84 12 F2 D5 40 C0 EE D6 03 42 49 53
-84 12 F2 D5 00 D0 FC D6 05 42 49 53 2E 42 84 12
-F2 D5 40 D0 00 00 03 58 4F 52 84 12 F2 D5 00 E0
-16 D7 05 58 4F 52 2E 42 84 12 F2 D5 40 E0 48 D6
-03 41 4E 44 84 12 F2 D5 00 F0 30 D7 05 41 4E 44
-2E 42 84 12 F2 D5 40 F0 42 CB EC D4 4E D7 0A 4C
-3C F0 70 00 8A 10 3A F0 0F 00 0C DA 4F 3F 82 D6
-03 52 52 43 84 12 48 D7 00 10 60 D7 05 52 52 43
-2E 42 84 12 48 D7 40 10 6C D7 04 53 57 50 42 00
-84 12 48 D7 80 10 7A D7 03 52 52 41 84 12 48 D7
-00 11 88 D7 05 52 52 41 2E 42 84 12 48 D7 40 11
-94 D7 03 53 58 54 84 12 48 D7 80 11 00 00 04 50
-55 53 48 00 84 12 48 D7 00 12 AE D7 06 50 55 53
-48 2E 42 00 84 12 48 D7 40 12 08 D7 04 43 41 4C
-4C 00 84 12 48 D7 80 12 1A 53 0E 4A 87 12 34 C6
-1E C8 0D 6F 75 74 20 6F 66 20 62 6F 75 6E 64 73
-4C CC 42 CB 74 C8 F8 D7 92 53 C4 21 3E 40 2C 00
-B0 12 2A C4 80 C8 AA C9 40 C6 CE CC AC D5 10 D8
-0A 4E 3E 4F 1A 83 E0 33 29 4E 59 0E 0A 28 08 4C
-59 0A 01 28 0C 8A 08 8A 38 90 10 00 D5 2F 5A 0E
-94 3F 2A 92 D1 2F 8A 10 5A 06 8F 3F A2 D7 04 52
-52 43 4D 00 84 12 F2 D7 50 00 3E D8 04 52 52 41
-4D 00 84 12 F2 D7 50 01 4C D8 04 52 4C 41 4D 00
-84 12 F2 D7 50 02 5A D8 04 52 52 55 4D 00 84 12
-F2 D7 50 03 BC D7 05 50 55 53 48 4D 84 12 F2 D7
-00 15 76 D8 04 50 4F 50 4D 00 84 12 F2 D7 00 17
-68 D8 03 53 3E 3D 85 12 00 38 92 D8 02 53 3C 00
-85 12 00 34 84 D8 03 30 3E 3D 85 12 00 30 A6 D8
-02 30 3C 00 85 12 00 30 00 00 02 55 3C 00 85 12
-00 2C BA D8 03 55 3E 3D 85 12 00 28 B0 D8 03 30
-3C 3E 85 12 00 24 CE D8 02 30 3D 00 85 12 00 20
-00 00 02 49 46 00 1A 42 C6 21 8A 4E 00 00 A2 53
-C6 21 0E 4A 30 4D C4 D8 04 54 48 45 4E 00 1A 42
-C6 21 08 4E 3E 4F 09 48 29 53 0A 89 0A 11 3A 90
-00 02 63 2F 88 DA 00 00 30 4D B8 D6 04 45 4C 53
-45 00 1A 42 C6 21 BA 40 00 3C 00 00 A2 53 C6 21
-2F 83 8F 4A 00 00 E3 3F F8 D8 05 55 4E 54 49 4C
-3A 4F 08 4E 3E 4F 19 42 C6 21 2A 83 0A 89 0A 11
-3A 90 00 FE 42 3B 3A F0 FF 03 08 DA 89 48 00 00
-A2 53 C6 21 30 4D 3C D7 05 41 47 41 49 4E 0A 4E
-38 40 00 3C E7 3F 00 00 05 57 48 49 4C 45 87 12
-E6 D8 76 C4 2A C4 9C D8 06 52 45 50 45 41 54 00
-87 12 6E D9 FE D8 2A C4 9A D9 3D 41 08 4E 3E 4F
-2A 48 B2 92 C4 21 CD 2F 98 42 C6 21 00 00 30 4D
-CC D7 03 42 57 31 84 12 98 D9 00 00 B2 D9 03 42
-57 32 84 12 98 D9 00 00 BE D9 03 42 57 33 84 12
-98 D9 00 00 D6 D9 3D 41 1A 42 C6 21 28 4E B2 92
-C4 21 90 2B BA 4F 00 00 A2 53 C6 21 8E 4A 00 00
-3E 4F 30 4D 00 00 03 46 57 31 84 12 D4 D9 00 00
-F6 D9 03 46 57 32 84 12 D4 D9 00 00 02 DA 03 46
-57 33 84 12 D4 D9 00 00 00 00 05 3F 47 4F 54 4F
-3E 90 00 30 07 24 3E E0 00 04 3E B0 00 10 02 24
-3E E0 00 08 87 12 C0 CC DA CA 2A C4 0E DA 04 47
-4F 54 4F 00 2F 83 8F 4E 00 00 3E 40 00 3C F2 3F
+3B 49 3A 49 3D 15 87 12 74 CA DC CA B2 41 C4 21
+B2 41 C2 21 B2 41 C0 21 3D 41 30 4D 85 12 BE 21
+00 00 04 51 55 49 54 00 82 43 08 18 31 40 E0 20
+B2 40 00 20 00 20 82 43 BE 21 87 12 2E C6 D4 C4
+70 CA C4 C5 74 CA 8C C6 BC C6 2E C4 0C 73 74 61
+63 6B 20 65 6D 70 74 79 21 00 6E CB 24 C4 40 FF
+2A CE C4 C6 2E C4 0A 46 52 41 4D 20 66 75 6C 6C
+21 00 6E CB 48 C4 0C CB 0A CA 05 41 42 4F 52 54
+3F 40 80 20 D1 3F 4A CB 86 41 42 4F 52 54 22 00
+0D 12 87 12 AA C7 24 C4 6E CB F8 C9 26 C7 8F 93
+02 00 03 20 2F 52 3E 4F 30 4D B0 12 96 CF B0 12
+06 C5 92 C3 1C 05 18 42 06 18 39 40 20 00 19 83
+FE 23 18 83 FA 23 92 B3 1C 05 F3 23 0D 12 87 12
+10 CF 24 C4 DE 21 02 C5 D6 C5 2E C4 04 1B 5B 37
+6D 00 00 C6 7C C6 4C C4 C8 CB 2E C6 2E C4 05 6C
+69 6E 65 3A 00 C6 66 C7 00 C6 2E C4 04 1B 5B 30
+6D 00 00 C6 50 CB 00 00 83 5B 27 5D 0D 12 87 12
+F0 CB 24 C4 24 C4 F8 C9 F8 C9 26 C7 44 C8 01 27
+0D 12 87 12 70 CA F2 C7 4A C8 4C C4 00 CC 26 C7
+AA CA D2 C6 81 5C 92 42 C0 21 C4 21 30 4D D8 CB
+81 5B 82 43 BE 21 30 4D 04 CC 01 5D B2 43 BE 21
+30 4D F2 CA 88 50 4F 53 54 50 4F 4E 45 00 0D 12
+87 12 70 CA F2 C7 4A C8 7C C6 4C C4 00 CC BC C6
+4C C4 50 CC 24 C4 24 C4 F8 C9 F8 C9 24 C4 F8 C9
+F8 C9 26 C7 40 C7 09 49 4D 4D 45 44 49 41 54 45
+1A 42 B6 21 FA D0 80 00 00 00 30 4D 10 CC 01 3A
+30 12 B8 CC 92 B3 C6 21 A2 63 C6 21 0D 12 87 12
+70 CA F2 C7 86 CC 3D 41 08 4E 7A 4E 5A D3 5A 53
+0A 58 19 42 DA 21 6E 4E 3E F0 1E 00 09 5E 3E 4F
+82 48 B6 21 82 49 B8 21 82 4A BA 21 82 4F BC 21
+2A 52 82 4A C6 21 30 41 BA 40 0D 12 FC FF BA 40
+87 12 FE FF B2 43 BE 21 30 4D 6E CC 07 3A 4E 4F
+4E 41 4D 45 30 12 B8 CC 2F 83 8F 4E 00 00 1E 42
+C6 21 1E B3 0E 63 0A 4E 39 40 10 02 38 40 12 02
+D7 3F 82 9F BC 21 09 20 18 42 B6 21 19 42 B8 21
+A8 49 FE FF 89 48 00 00 30 4D 0D 12 87 12 2E C4
+0F 73 74 61 63 6B 20 6D 69 73 6D 61 74 63 68 21
+7A CB CC CC 81 3B 82 93 BE 21 6D 27 0D 12 87 12
+24 C4 26 C7 F8 C9 F2 CC 12 CC 26 C7 5C CA 06 43
+52 45 41 54 45 00 B0 12 74 CC BA 40 85 12 FC FF
+8A 4A FE FF D5 3F C0 CA 05 44 4F 45 53 3E 1A 42
+BA 21 BA 40 84 12 00 00 8A 4D 02 00 3D 41 30 4D
+3E CD 04 43 4F 44 45 00 B0 12 74 CC A2 82 C6 21
+0D 12 87 12 8A CE 64 CE 26 C7 72 CD 07 43 4F 44
+45 4E 4E 4D 30 12 7C CD 9F 3F 00 00 07 45 4E 44
+43 4F 44 45 0D 12 87 12 F2 CC A4 CE 26 C7 58 CB
+03 41 53 4D B2 40 68 CE DA 21 DE 3F 9C CD 06 45
+4E 44 41 53 4D 00 0D 12 87 12 A4 CD C2 CE 26 C7
+00 00 05 43 4F 4C 4F 4E 1A 42 C6 21 BA 40 0D 12
+00 00 BA 40 87 12 02 00 A2 52 C6 21 B2 43 BE 21
+30 40 A4 CE 00 00 05 4C 4F 32 48 49 A2 83 C6 21
+1A 42 C6 21 EE 3F 56 CC 85 48 49 32 4C 4F 0D 12
+87 12 2A CE 1E CE F8 C9 12 CC 80 CD 26 C7 2E 53
+30 4D 8C CD 85 42 45 47 49 4E 2F 83 8F 4E 00 00
+1E 42 C6 21 30 4D 24 C4 CA 21 AE C6 26 C7 84 12
+36 CE B0 CD 5C D0 58 CD EE CB 08 CE 42 C6 20 CA
+D8 C7 34 CF 4E CF 62 C7 CE CF 00 00 CE D1 1A CC
+AA C8 00 00 84 12 36 CE 00 D7 66 D7 B4 D6 B6 D7
+7A D6 00 00 AA D3 00 00 70 D6 22 D7 D2 D6 10 D7
+BA D4 00 00 00 00 D2 D7 62 CE 3A 40 0C 00 39 40
+D6 21 08 49 28 53 19 83 18 83 E8 49 00 00 1A 83
+FA 23 30 4D 3A 40 0E 00 38 40 CA 21 09 48 29 53
+F8 49 00 00 18 53 1A 83 FB 23 30 4D 82 43 CC 21
+30 4D 92 42 CA 21 DA 21 30 4D 3E CE BC CE C2 CE
+D2 CE 3A 4E 82 4A C8 21 2E 4E 82 4E C6 21 3D 40
+10 00 09 4A 08 49 29 83 18 48 FE FF 0E 98 FC 2B
+89 48 00 00 1D 83 F6 23 2A 4A 0A 93 F0 23 3E 4F
+3D 41 30 4D 24 CC 09 50 57 52 5F 53 54 41 54 45
+84 12 CA CE 88 CE EE D7 A6 C7 09 52 53 54 5F 53
+54 41 54 45 92 42 0E 18 14 CF 92 42 0C 18 16 CF
+EF 3F 06 CF 08 50 57 52 5F 48 45 52 45 00 92 42
+C8 21 14 CF 92 42 C6 21 16 CF 30 4D 1A CF 08 52
+53 54 5F 48 45 52 45 00 92 42 C8 21 0E 18 92 42
+C6 21 0C 18 EC 3F EC C7 04 57 49 50 45 00 39 40
+10 00 29 83 B9 43 80 FF FC 23 B2 40 04 C4 02 C4
+B2 40 D8 CF D6 CF B2 40 88 CE 0E 18 B2 40 EE D7
+0C 18 30 12 24 CF B2 40 C8 C5 C6 C5 B2 40 32 C6
+30 C6 B2 40 4A C6 48 C6 B2 40 18 00 0A 18 37 40
+26 C7 36 40 9C C6 35 40 FA C4 34 40 EC C4 B2 40
+0A 00 DC 21 B2 40 20 00 B4 21 30 41 68 CF 04 57
+41 52 4D 00 30 40 D8 CF 3D 40 12 D0 92 C3 30 01
+1E 42 08 18 0E 93 14 24 F2 B0 10 00 00 02 02 20
+3E E3 1E 53 F2 D0 30 00 0A 02 92 D3 1A 05 3E 90
+0A 00 B5 27 3E 90 16 00 B2 2F 2E 93 81 27 8A 2F
+30 4D 2E C4 07 0D 0A 1B 5B 37 6D 23 00 C6 9C C7
+2E C4 19 46 61 73 74 46 6F 72 74 68 20 C2 A9 4A
+2E 4D 2E 54 68 6F 6F 72 65 6E 73 20 00 C6 24 C4
+40 FF 2A CE A6 C6 66 C7 2E C4 0A 62 79 74 65 73
+20 66 72 65 65 00 48 C4 C8 CB 24 CE 04 43 4F 4C
+44 00 92 B3 0A 05 FD 23 B2 40 04 A5 20 01 31 40
+E0 20 B2 40 88 5A CC 01 B2 43 06 02 B2 40 FC FF
+02 02 D2 D3 04 02 F2 D3 26 02 F2 43 22 02 B2 40
+00 A5 60 01 B2 40 FF 1E 80 01 B2 40 B6 00 82 01
+B2 40 F4 00 84 01 39 40 80 00 82 43 88 01 92 D2
+5E 01 08 18 38 40 59 14 18 83 FE 23 19 83 FA 23
+39 40 00 10 29 83 89 43 00 20 FC 23 B0 12 0E C4
+B2 40 81 00 00 05 92 42 02 18 06 05 92 42 04 18
+08 05 92 C3 00 05 3F 40 80 20 30 12 D4 CF 5C 3F
+24 CD 86 5B 54 48 45 4E 5D 00 30 4D 0C 4E 38 4F
+3B 4F 39 4F 0E 4B 0E 5C 10 24 1B 83 06 30 1C 83
+04 30 19 53 F9 98 FF FF F5 27 2D 4D 3E 4F 30 4D
+2F 53 9F 83 00 00 F9 23 2F 53 2D 53 F7 3F F2 D0
+86 5B 45 4C 53 45 5D 00 0D 12 87 12 24 C4 00 00
+AA C6 70 CA F2 C7 62 CA 68 C6 4C C4 8A D1 70 C6
+2E C4 06 5B 54 48 45 4E 5D 00 FC D0 64 D1 20 D1
+42 D1 26 C7 70 C6 2E C4 06 5B 45 4C 53 45 5D 00
+FC D0 7A D1 20 D1 40 D1 26 C7 2E C4 04 5B 49 46
+5D 00 FC D0 42 D1 48 C4 40 D1 22 C6 2E C4 05 0D
+0A 6B 6F 20 00 C6 D4 C4 C4 C4 48 C4 42 D1 30 D1
+84 5B 49 46 5D 00 0E 93 3E 4F C6 27 30 4D 2F 53
+30 4D A0 D1 89 5B 44 45 46 49 4E 45 44 5D 0D 12
+87 12 70 CA F2 C7 4A C8 AE D1 26 C7 B4 D1 8B 5B
+55 4E 44 45 46 49 4E 45 44 5D 0D 12 87 12 BE D1
+E2 D1 3D 41 30 40 B6 C6 38 40 C0 21 0A 4E 39 48
+2E 48 09 5E 1E 52 C4 21 09 9E 03 24 7A 9E FC 27
+1E 83 0A 4E 2A 88 82 4A C4 21 30 4D 1C 15 87 12
+F2 C7 4A C8 42 C4 20 D2 06 C9 4C C4 00 CC 3A D2
+22 D2 39 4E 39 80 86 12 08 24 19 53 02 20 2E 4E
+04 3C 2E 53 19 53 01 24 2E 82 1B 17 30 41 3E 40
+28 00 B0 12 0C D2 19 42 C6 21 A2 53 C6 21 89 4E
+00 00 3E 40 29 00 1C 15 12 12 C4 21 92 53 C4 21
+87 12 F2 C7 06 C9 4C C4 76 D2 6C D2 21 53 3E 90
+10 00 80 2D E2 2B 78 D2 B2 41 C4 21 DE 3F 0D 12
+87 12 70 CA E8 D1 88 D2 0C 43 1B 42 C6 21 A2 53
+C6 21 6A 4E 3E 4F 7A 90 23 00 27 20 92 53 C4 21
+B0 12 0C D2 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 C6 21 A2 53 C6 21
+89 4E 00 00 3E 4F 3D 41 30 4D 7A 90 26 00 07 20
+3C 40 10 02 92 53 C4 21 B0 12 0C D2 ED 3F 7A 90
+40 00 16 20 3C 40 20 00 92 53 C4 21 B0 12 56 D2
+0C 20 3C 50 10 00 3E 40 2B 00 B0 12 56 D2 92 92
+C0 21 C4 21 02 24 92 53 C4 21 8E 10 0C 5E DA 3F
+B0 12 56 D2 FA 23 3C 50 10 00 B0 12 3E D2 EF 3F
+0C 43 1B 42 C6 21 A2 53 C6 21 0D 12 87 12 70 CA
+E8 D1 54 D3 FE 90 26 00 00 00 3E 40 20 00 03 20
+3C 50 82 00 C7 3F B0 12 56 D2 E0 23 3C 50 80 00
+B0 12 3E D2 DB 3F 00 00 04 52 45 54 49 00 0D 12
+87 12 24 C4 00 13 F8 C9 26 C7 24 C4 2C 00 7E D2
+4A D3 94 D3 09 4B 2E 4E 0E DC A2 3F F6 CD 03 4D
+4F 56 84 12 8A D3 00 40 9E D3 05 4D 4F 56 2E 42
+84 12 8A D3 40 40 00 00 03 41 44 44 84 12 8A D3
+00 50 B8 D3 05 41 44 44 2E 42 84 12 8A D3 40 50
+C4 D3 04 41 44 44 43 00 84 12 8A D3 00 60 D2 D3
+06 41 44 44 43 2E 42 00 84 12 8A D3 40 60 78 D3
+04 53 55 42 43 00 84 12 8A D3 00 70 F0 D3 06 53
+55 42 43 2E 42 00 84 12 8A D3 40 70 FE D3 03 53
+55 42 84 12 8A D3 00 80 0E D4 05 53 55 42 2E 42
+84 12 8A D3 40 80 D2 CD 03 43 4D 50 84 12 8A D3
+00 90 28 D4 05 43 4D 50 2E 42 84 12 8A D3 40 90
+BE CD 04 44 41 44 44 00 84 12 8A D3 00 A0 42 D4
+06 44 41 44 44 2E 42 00 84 12 8A D3 40 A0 34 D4
+03 42 49 54 84 12 8A D3 00 B0 60 D4 05 42 49 54
+2E 42 84 12 8A D3 40 B0 6C D4 03 42 49 43 84 12
+8A D3 00 C0 7A D4 05 42 49 43 2E 42 84 12 8A D3
+40 C0 86 D4 03 42 49 53 84 12 8A D3 00 D0 94 D4
+05 42 49 53 2E 42 84 12 8A D3 40 D0 00 00 03 58
+4F 52 84 12 8A D3 00 E0 AE D4 05 58 4F 52 2E 42
+84 12 8A D3 40 E0 E0 D3 03 41 4E 44 84 12 8A D3
+00 F0 C8 D4 05 41 4E 44 2E 42 84 12 8A D3 40 F0
+70 CA 7E D2 E6 D4 0A 4C 3C F0 70 00 8A 10 3A F0
+0F 00 0C DA 4F 3F 1A D4 03 52 52 43 84 12 E0 D4
+00 10 F8 D4 05 52 52 43 2E 42 84 12 E0 D4 40 10
+04 D5 04 53 57 50 42 00 84 12 E0 D4 80 10 12 D5
+03 52 52 41 84 12 E0 D4 00 11 20 D5 05 52 52 41
+2E 42 84 12 E0 D4 40 11 2C D5 03 53 58 54 84 12
+E0 D4 80 11 00 00 04 50 55 53 48 00 84 12 E0 D4
+00 12 46 D5 06 50 55 53 48 2E 42 00 84 12 E0 D4
+40 12 A0 D4 04 43 41 4C 4C 00 84 12 E0 D4 80 12
+1A 53 0E 4A 0D 12 87 12 9C C7 2E C4 0D 6F 75 74
+20 6F 66 20 62 6F 75 6E 64 73 7A CB 70 CA E8 D1
+92 D5 92 53 C4 21 3E 40 2C 00 87 12 F2 C7 06 C9
+4C C4 00 CC 40 D3 A8 D5 0A 4E 3E 4F 1A 83 E0 33
+29 4E 59 0E 0A 28 08 4C 59 0A 01 28 0C 8A 08 8A
+38 90 10 00 D5 2F 5A 0E 94 3F 2A 92 D1 2F 8A 10
+5A 06 8F 3F 3A D5 04 52 52 43 4D 00 84 12 8C D5
+50 00 D6 D5 04 52 52 41 4D 00 84 12 8C D5 50 01
+E4 D5 04 52 4C 41 4D 00 84 12 8C D5 50 02 F2 D5
+04 52 52 55 4D 00 84 12 8C D5 50 03 54 D5 05 50
+55 53 48 4D 84 12 8C D5 00 15 0E D6 04 50 4F 50
+4D 00 84 12 8C D5 00 17 00 D6 03 53 3E 3D 85 12
+00 38 2A D6 02 53 3C 00 85 12 00 34 1C D6 03 30
+3E 3D 85 12 00 30 3E D6 02 30 3C 00 85 12 00 30
+00 00 02 55 3C 00 85 12 00 2C 52 D6 03 55 3E 3D
+85 12 00 28 48 D6 03 30 3C 3E 85 12 00 24 66 D6
+02 30 3D 00 85 12 00 20 00 00 02 49 46 00 1A 42
+C6 21 8A 4E 00 00 A2 53 C6 21 0E 4A 30 4D 5C D6
+04 54 48 45 4E 00 1A 42 C6 21 08 4E 3E 4F 09 48
+29 53 0A 89 0A 11 3A 90 00 02 63 2F 88 DA 00 00
+30 4D 50 D4 04 45 4C 53 45 00 1A 42 C6 21 BA 40
+00 3C 00 00 A2 53 C6 21 2F 83 8F 4A 00 00 E3 3F
+90 D6 05 55 4E 54 49 4C 3A 4F 08 4E 3E 4F 19 42
+C6 21 2A 83 0A 89 0A 11 3A 90 00 FE 42 3B 3A F0
+FF 03 08 DA 89 48 00 00 A2 53 C6 21 30 4D D4 D4
+05 41 47 41 49 4E 0A 4E 38 40 00 3C E7 3F 00 00
+05 57 48 49 4C 45 0D 12 87 12 7E D6 82 C6 26 C7
+34 D6 06 52 45 50 45 41 54 00 0D 12 87 12 06 D7
+96 D6 26 C7 36 D7 3D 41 08 4E 3E 4F 2A 48 B2 92
+C4 21 CB 2F 98 42 C6 21 00 00 30 4D 64 D5 03 42
+57 31 84 12 34 D7 00 00 4E D7 03 42 57 32 84 12
+34 D7 00 00 5A D7 03 42 57 33 84 12 34 D7 00 00
+72 D7 3D 41 1A 42 C6 21 28 4E B2 92 C4 21 8E 2B
+BA 4F 00 00 A2 53 C6 21 8E 4A 00 00 3E 4F 30 4D
+00 00 03 46 57 31 84 12 70 D7 00 00 92 D7 03 46
+57 32 84 12 70 D7 00 00 9E D7 03 46 57 33 84 12
+70 D7 00 00 AA D7 04 47 4F 54 4F 00 2F 83 8F 4E
+00 00 3E 40 00 3C 0D 12 87 12 F0 CB 18 CA 26 C7
+00 00 05 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
 @FFFE
-9E D2
+6E D0
 q
index 5efdeb4..d1cdef2 100644 (file)
 @1800
-10 00 08 00 A1 F7 80 3E 05 00 18 00 AC DA 0C D1
-2D 01 6B B0 B6 C6 C8 C6
+10 00 08 00 A1 F7 80 3E 05 00 18 00 44 D8 C4 CE
+2E 01 6B B0 06 C5 18 C5 10 D0
 @C400
-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 3A 41 0D 12 0D 4A
-30 4D 00 00 04 45 58 49 54 00 3D 41 30 4D 24 C4
-03 44 55 50 2F 83 8F 4E 00 00 30 4D 00 00 04 32
-44 55 50 00 8F 4E FE FF AF 4F FC FF 2F 82 30 4D
-00 00 04 3F 44 55 50 00 0E 93 EC 23 30 4D 30 C4
-04 44 52 4F 50 00 3E 4F 30 4D 2F 53 30 4D 3E C4
-04 53 57 41 50 00 2A 4F 8F 4E 00 00 0E 4A 30 4D
-52 C4 02 3E 52 00 0E 12 3E 4F 30 4D 70 C4 02 52
-3E 00 2F 83 8F 4E 00 00 3E 41 30 4D 60 C4 05 44
-45 50 54 48 8F 4E FE FF 3E 40 80 20 0E 8F 0E 11
-2F 83 30 4D 00 00 01 2D 3E 8F 3E E3 1E 53 30 4D
-00 00 02 31 2B 00 1E 53 30 4D C2 C4 02 31 2D 00
-1E 83 30 4D 3E F3 06 34 BF E3 00 00 3E E3 9F 53
-00 00 0E 63 30 4D 00 00 01 40 2E 4E 30 4D E8 C4
-01 21 BE 4F 00 00 3E 4F 30 4D CC C4 02 30 3D 00
-1E 83 0E 7E 30 4D FC C4 02 30 3C 00 0E 5E 0E 7E
-3E E3 30 4D 00 00 01 3D 3E 8F FA 27 0E F3 30 4D
-00 00 02 55 3C 00 3E 8F F9 2B 01 24 3E 43 30 4D
-16 C5 02 3C 23 00 B2 40 B2 21 B2 21 30 4D 0B 4E
+30 40 04 C4 B0 12 06 C5 12 D2 0A 18 F9 3F 39 40
+1E 00 29 83 B9 40 A8 D0 E2 FF FB 23 B2 40 68 C5
+EC FF 30 41 2F 83 8F 4E 00 00 3E 4D 30 4D 2F 82
+8F 4E 02 00 7E 4D 8F 4D 00 00 0D 5E 1D B3 0D 63
+30 4D 0E 93 3E 4F 05 24 2D 4D 30 4D 0E 93 3E 4F
+FB 27 2D 53 30 4D 39 40 00 80 39 8F 08 4E 3E 4F
+08 59 19 15 30 4D 81 5E 00 00 3E 4F 32 B0 00 01
+EB 27 21 52 2D 53 30 4D 91 53 00 00 F7 3F 0B 4E
 1C 4F 02 00 2E 4F 0A 43 34 40 20 00 0E 93 04 20
 04 11 0E 4C 0C 43 09 43 0A 9B 01 28 0A 8B 09 69
 08 68 14 83 07 30 0C 5C 0E 6E 0A 6A F5 2B 0A 8B
-12 D3 F5 3F 34 40 00 C4 8F 4A 02 00 8F 49 00 00
-0E 48 30 41 00 00 01 23 1B 42 DC 21 2C 4F 2F 83
-B0 12 46 C5 BF 4F 00 00 7A 90 0A 00 02 28 7A 50
-07 00 7A 50 30 00 92 83 B2 21 18 42 B2 21 C8 4A
-00 00 30 4D 86 C5 02 23 53 00 87 12 88 C5 C0 C5
-2D 83 09 93 E3 23 0E 93 E1 23 3D 41 30 4D B6 C5
-02 23 3E 00 9F 42 B2 21 00 00 3E 40 B2 21 2E 8F
-30 4D 00 00 04 48 4F 4C 44 00 0A 4E 3E 4F DB 3F
-8E C4 04 53 49 47 4E 00 0E 93 3E 4F 3A 40 2D 00
-D2 33 30 4D 87 12 36 C5 34 C4 86 C4 D4 C4 BA C5
-92 C4 F8 C5 D4 C5 D6 C7 7E CB 82 C7 2A C4 22 C5
-02 55 2E 00 08 43 2F 83 8F 4E 00 00 0E 48 EA 3F
-00 00 01 2E 0E 93 F6 37 38 43 F5 3F 2D 4D 30 4D
-0E 93 3E 4F FB 27 2D 53 30 4D 0E 93 3E 4F F6 23
-2D 53 30 4D 39 40 00 80 39 8F 08 4E 3E 4F 08 59
-19 15 30 4D 81 5E 00 00 3E 4F 32 B0 00 01 E6 27
-2D 53 21 52 30 4D 91 53 00 00 F7 3F E4 C5 01 49
-2F 83 8F 4E 00 00 2E 41 1E 81 02 00 30 4D 00 00
-03 4B 45 59 30 40 98 C6 18 42 0C 05 2F 83 8F 4E
-00 00 B0 12 B6 C6 92 B3 1C 05 FD 27 1E 42 0C 05
-B0 12 C8 C6 30 4D A2 B3 1C 05 FD 27 B2 40 11 00
-0E 05 F2 C2 03 02 30 41 B2 40 13 00 0E 05 F2 D2
-03 02 30 41 00 00 05 53 4C 45 45 50 30 40 E0 C6
-B0 12 B6 C6 12 D2 0A 18 F9 3F F0 C4 06 41 43 43
-45 50 54 00 3C 40 64 C7 3B 40 2E C7 2D 15 0A 4E
-2E 4F 0A 5E 3B 40 0D 00 3C 40 20 00 3D 40 58 C7
-92 B3 1C 05 05 24 18 42 0C 05 38 90 0A 00 CB 23
-21 53 3D 15 DB 3F 21 52 3A 17 58 42 0C 05 48 9C
-08 2C 48 9B C9 27 78 92 11 20 2E 9F 0F 24 1E 83
-05 3C 0E 9A 03 24 CE 48 00 00 1E 53 A2 B3 1C 05
-FD 27 82 48 0E 05 30 4D 5A C7 2D 83 92 B3 1C 05
-E4 23 FC 27 82 93 DE 21 02 24 92 53 DE 21 3E 8F
-3D 41 B2 40 18 00 0A 18 30 4D 9E C4 04 45 4D 49
-54 00 30 40 86 C7 08 4E 3E 4F E0 3F 3F 80 06 00
-8F 4E 04 00 3E 40 54 00 BF 40 3C 21 00 00 AF 4F
-02 00 A8 3F 7C C7 04 45 43 48 4F 00 B2 40 82 48
-52 C7 82 43 DE 21 30 4D 32 C6 06 4E 4F 45 43 48
-4F 00 B2 40 30 4D 52 C7 92 43 DE 21 30 4D 20 C6
-04 54 59 50 45 00 0E 93 0F 24 1E 15 3D 40 EC C7
-28 4F 7E 48 8F 48 00 00 2F 83 CB 3F EE C7 2D 83
-91 83 02 00 F5 23 1D 17 2F 53 3E 4F 30 4D D0 C5
-02 43 52 00 30 40 08 C8 87 12 1E C8 02 0D 0A 00
-D6 C7 2A C4 2F 83 8F 4E 00 00 3E 4D 30 4D 2F 82
-8F 4E 02 00 7E 4D 8F 4D 00 00 0D 5E 1D B3 0D 63
-30 4D F2 C5 82 53 22 00 82 43 B4 21 87 12 14 C8
-1E C8 EC CA 14 C8 22 00 80 C8 4C C8 B2 40 20 00
-B4 21 6E 4E 1E 53 1E B3 82 6E C6 21 3D 41 3E 4F
-30 4D BA C7 82 2E 22 00 87 12 38 C8 14 C8 D6 C7
-EC CA 2A C4 48 43 05 3C 00 00 04 57 4F 52 44 00
-48 4E 19 42 C0 21 1A 42 C2 21 09 5A 1A 52 C4 21
-09 9A 03 24 7E 9A FC 27 1A 83 4E F8 06 20 0E 4A
-1A 82 C2 21 82 4A C4 21 30 4D 18 42 C6 21 3B 40
-60 00 C8 4C 00 00 09 9A 0C 24 7C 4A 4E 9C 09 24
-18 53 4B 9C F6 2F 7C 90 7B 00 F3 2F 5C 82 B4 21
-F0 3F 1A 82 C2 21 82 4A C4 21 1E 42 C6 21 08 8E
-CE 48 00 00 30 4D 00 00 04 46 49 4E 44 00 2F 83
-0C 4E 65 4C 74 40 80 00 3B 40 CA 21 3E 4B 0E 93
-1E 24 58 4C 01 00 78 F0 1E 00 0E 58 2E 53 1E 4E
-FE FF 0E 93 F3 27 09 4E 78 49 48 C4 48 95 F7 23
-0A 4C FA 99 01 00 F3 23 1A 53 58 83 FA 23 19 B3
-09 63 0C 49 6A 4E 1E 43 4A 93 01 30 2E 83 8F 4C
-00 00 35 40 0E C4 34 40 00 C4 30 4D D0 C7 03 55
-4D 2A 2C 4F 0B 43 09 43 08 43 1A 43 0E BA 02 24
-09 5C 08 6B 0C 5C 0B 6B 0A 5A F8 2B 8F 49 00 00
-0E 48 30 4D 82 C4 07 3E 4E 55 4D 42 45 52 2C 4F
-0B 4E 1A 42 DC 21 68 4C 78 80 30 00 78 90 0A 00
-05 28 78 80 07 00 78 90 0A 00 1F 28 08 9A 22 C3
-1C 2C 5D 15 1C 4F 02 00 0E 4A 3D 40 B0 C9 D2 3F
-B2 C9 81 49 02 00 1C 4F 04 00 1E 41 04 00 3D 40
-C4 C9 C8 3F C6 C9 39 51 3E 61 8F 49 04 00 8F 4E
-02 00 3A 17 1C 53 1B 83 D6 23 8F 4C 00 00 0E 4B
-30 4D 32 C0 00 02 1B 42 DC 21 0C 43 2D 15 3D 40
-32 CA 0A 4B 3F 82 8F 4E 06 00 8F 43 04 00 8F 43
-02 00 0C 4E 7B 4C 68 4C 78 90 2D 00 04 28 BC 23
-B1 43 02 00 DF 3F 2A 43 78 80 25 00 07 24 3A 52
-68 53 04 24 3A 40 10 00 58 83 AD 23 1C 53 1B 83
-EA 3F 34 CA 2E 24 2D 83 78 90 28 00 CB 27 32 D0
-00 02 78 90 F7 00 C6 27 78 90 F5 00 22 20 09 43
-8F 49 02 00 5B 83 09 4B 09 5C 69 49 79 80 30 00
-79 90 0A 00 05 28 79 80 07 00 79 90 0A 00 0A 28
-09 9A 08 2C 8F 49 00 00 0E 4A 2C 15 B0 12 3E C5
-2A 17 E6 3F 9F 4F 04 00 02 00 AF 4F 04 00 0E 4B
-4E 93 2B 17 0E 4C 82 4B DC 21 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 7E C6 04 48 45 52 45 00 2F 83 8F 4E
-00 00 1E 42 C6 21 30 4D B6 C4 01 2C 1A 42 C6 21
-8A 4E 00 00 A2 53 C6 21 3E 4F 30 4D EC C6 05 41
-4C 4C 4F 54 82 5E C6 21 3E 4F 30 4D A6 C7 07 45
-58 45 43 55 54 45 0A 4E 3E 4F 00 4A EA CA 87 4C
-49 54 45 52 41 4C 82 93 BE 21 0C 24 1A 42 C6 21
-A2 52 C6 21 BA 40 14 C8 00 00 8A 4E 02 00 3E 4F
-32 B0 00 02 32 C0 00 02 06 24 19 4A 02 00 8A 4E
-02 00 0E 49 EB 3F 30 4D 00 C8 05 43 4F 55 4E 54
-2F 83 1E 53 8F 4E 00 00 5E 4E FF FF 30 4D 82 4E
-C0 21 B2 4F C2 21 3E 4F 82 43 C4 21 30 4D 85 12
-20 00 87 12 6E CB 7E CB 80 C8 8C CB 3D 40 94 CB
-AE 22 64 3E 96 CB 0A 4E 3E 4F 3D 40 AC CB 21 27
-3D 40 86 CB 1A E2 BE 21 A1 27 B5 23 AE CB 3E 4F
-3D 40 86 CB B8 23 DE 53 00 00 68 4E 08 5E F8 40
-3F 00 00 00 3D 40 62 CE CB 3F 0E CB 08 45 56 41
+12 D3 F5 3F 34 40 EC C4 8F 4A 02 00 8F 49 00 00
+0E 48 30 41 82 4E C0 21 B2 4F C2 21 3E 4F 82 43
+C4 21 30 4D 3F 80 06 00 8F 4E 04 00 3E 40 54 00
+BF 40 3C 21 00 00 AF 4F 02 00 24 3C 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 A2 B3 1C 05 FD 27 B2 40 11 00
+0E 05 F2 C2 03 02 30 41 A2 B3 1C 05 FD 27 B2 40
+13 00 0E 05 F2 D2 03 02 30 41 00 00 06 41 43 43
+45 50 54 00 3C 40 A6 C5 3B 40 70 C5 2D 15 0A 4E
+2E 4F 0A 5E 3B 40 0D 00 3C 40 20 00 3D 40 9A C5
+92 B3 1C 05 05 24 18 42 0C 05 38 90 0A 00 D3 23
+21 53 3D 15 30 40 00 C4 21 52 3A 17 58 42 0C 05
+48 9C 08 2C 48 9B D0 27 78 92 11 20 2E 9F 0F 24
+1E 83 05 3C 0E 9A 03 24 CE 48 00 00 1E 53 A2 B3
+1C 05 FD 27 82 48 0E 05 30 4D 9C C5 2D 83 92 B3
+1C 05 E4 23 FC 27 82 93 DE 21 02 24 92 53 DE 21
+3E 8F 3D 41 B2 40 18 00 0A 18 30 4D 00 00 04 45
+4D 49 54 00 30 40 C8 C5 08 4E 3E 4F E0 3F BE C5
+04 45 43 48 4F 00 B2 40 82 48 94 C5 82 43 DE 21
+30 4D 00 00 06 4E 4F 45 43 48 4F 00 B2 40 30 4D
+94 C5 92 43 DE 21 30 4D 00 00 04 54 59 50 45 00
+0E 93 0F 24 1E 15 3D 40 16 C6 28 4F 7E 48 8F 48
+00 00 2F 83 D7 3F 18 C6 2D 83 91 83 02 00 F5 23
+1D 17 2F 53 3E 4F 30 4D 00 00 02 43 52 00 30 40
+32 C6 0D 12 87 12 2E C4 02 0D 0A 00 00 C6 26 C7
+00 00 03 4B 45 59 30 40 4A C6 18 42 0C 05 2F 83
+8F 4E 00 00 B0 12 06 C5 92 B3 1C 05 FD 27 1E 42
+0C 05 B0 12 18 C5 30 4D 2F 83 8F 4E 00 00 30 4D
+8F 4E FE FF AF 4F FC FF 2F 82 30 4D 0E 93 F4 23
+30 4D 2A 4F 8F 4E 00 00 0E 4A 30 4D 8F 4E FE FF
+3E 40 80 20 0E 8F 0E 11 2F 83 30 4D 2F 83 8F 4E
+00 00 3E 41 30 4D 3E 8F 3E E3 1E 53 30 4D BE 4F
+00 00 3E 4F 30 4D 1E 83 0E 7E 30 4D 0E 5E 0E 7E
+3E E3 30 4D 3E 8F 03 24 3E 43 01 2C 0E F3 30 4D
+00 00 02 3C 23 00 B2 40 B2 21 B2 21 30 4D 2A C6
+01 23 1B 42 DC 21 2C 4F 2F 83 B0 12 86 C4 BF 4F
+00 00 7A 90 0A 00 02 28 7A 50 07 00 7A 50 30 00
+92 83 B2 21 18 42 B2 21 C8 4A 00 00 30 4D E0 C6
+02 23 53 00 0D 12 87 12 E2 C6 1C C7 2D 83 09 93
+E2 23 0E 93 E0 23 3D 41 30 4D 10 C7 02 23 3E 00
+9F 42 B2 21 00 00 3E 40 B2 21 2E 8F 30 4D 00 00
+04 48 4F 4C 44 00 4A 4E 3E 4F DA 3F 00 00 04 53
+49 47 4E 00 0E 93 3E 4F 7A 40 2D 00 D1 33 30 4D
+FA C5 02 55 2E 00 08 43 2F 83 8F 4E 00 00 0E 48
+0D 12 0E 12 3E F3 06 34 BF E3 00 00 3E E3 9F 53
+00 00 0E 63 87 12 D6 C6 14 C7 9C C6 54 C7 30 C7
+00 C6 AC CA C4 C5 26 C7 E4 C5 01 2E 0E 93 E3 37
+38 43 E2 3F 4E C7 82 53 22 00 82 43 B4 21 0D 12
+87 12 24 C4 2E C4 34 CA 24 C4 22 00 F2 C7 C0 C7
+B2 40 20 00 B4 21 6E 4E 1E 53 1E B3 82 6E C6 21
+3D 41 3E 4F 30 4D 9A C7 82 2E 22 00 0D 12 87 12
+AA C7 24 C4 00 C6 34 CA 26 C7 00 00 04 57 4F 52
+44 00 3C 40 C0 21 39 4C 3A 4C 09 5A 3A 5C 28 4C
+09 9A 15 24 7E 9A FC 27 1A 83 3B 40 60 00 C8 4C
+00 00 09 9A 0C 24 7C 4A 4E 9C 09 24 18 53 4B 9C
+F6 2F 7C 90 7B 00 F3 2F 5C 82 B4 21 F0 3F 1A 82
+C2 21 82 4A C4 21 1E 42 C6 21 08 8E CE 48 00 00
+30 4D 00 00 04 46 49 4E 44 00 2F 83 0C 4E 65 4C
+74 40 80 00 3B 40 CA 21 3E 4B 0E 93 1E 24 58 4C
+01 00 78 F0 1E 00 0E 58 2E 53 1E 4E FE FF 0E 93
+F3 27 09 4E 78 49 48 C4 48 95 F7 23 0A 4C FA 99
+01 00 F3 23 1A 53 58 83 FA 23 19 B3 09 63 0C 49
+6A 4E 1E 43 4A 93 01 30 2E 83 8F 4C 00 00 35 40
+FA C4 34 40 EC C4 30 4D 62 C7 03 55 4D 2A 2C 4F
+0B 43 09 43 08 43 1A 43 0E BA 02 24 09 5C 08 6B
+0C 5C 0B 6B 0A 5A F8 2B 8F 49 00 00 0E 48 30 4D
+00 00 07 3E 4E 55 4D 42 45 52 2C 4F 0B 4E 1A 42
+DC 21 68 4C 78 80 30 00 78 90 0A 00 05 28 78 80
+07 00 78 90 0A 00 1F 28 08 9A 22 C3 1C 2C 5D 15
+1C 4F 02 00 0E 4A 3D 40 0C C9 D2 3F 0E C9 81 49
+02 00 1C 4F 04 00 1E 41 04 00 3D 40 20 C9 C8 3F
+22 C9 39 51 3E 61 8F 49 04 00 8F 4E 02 00 3A 17
+1C 53 1B 83 D6 23 8F 4C 00 00 0E 4B 30 4D 32 C0
+00 02 1B 42 DC 21 0C 43 2D 15 3D 40 8E C9 0A 4B
+3F 82 8F 4E 06 00 8F 43 04 00 8F 43 02 00 0C 4E
+7B 4C 68 4C 78 90 2D 00 04 28 BC 23 B1 43 02 00
+0B 3C 2A 43 78 80 25 00 07 24 3A 52 68 53 04 24
+3A 40 10 00 58 83 AD 23 1C 53 1B 83 EA 3F 90 C9
+2E 24 2D 83 78 90 28 00 CB 27 32 D0 00 02 78 90
+F7 00 C6 27 78 90 F5 00 22 20 09 43 8F 49 02 00
+5B 83 09 4B 09 5C 69 49 79 80 30 00 79 90 0A 00
+05 28 79 80 07 00 79 90 0A 00 0A 28 09 9A 08 2C
+8F 49 00 00 0E 4A 2C 15 B0 12 7E C4 2A 17 E6 3F
+9F 4F 04 00 02 00 AF 4F 04 00 0E 4B 4E 93 2B 17
+0E 4C 82 4B DC 21 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
+00 00 01 2C 1A 42 C6 21 8A 4E 00 00 A2 53 C6 21
+3E 4F 30 4D 2C C5 05 41 4C 4C 4F 54 82 5E C6 21
+3E 4F 30 4D 0A 4E 3E 4F 00 4A 32 CA 87 4C 49 54
+45 52 41 4C 82 93 BE 21 0C 24 1A 42 C6 21 A2 52
+C6 21 BA 40 24 C4 00 00 8A 4E 02 00 3E 4F 32 B0
+00 02 32 C0 00 02 06 24 19 4A 02 00 8A 4E 02 00
+0E 49 EB 3F 30 4D 2C C7 05 43 4F 55 4E 54 2F 83
+1E 53 8F 4E 00 00 5E 4E FF FF 30 4D 85 12 20 00
+0D 12 87 12 C4 C4 AC CA F2 C7 BC CA 3D 40 C4 CA
+C4 22 86 26 C6 CA 0A 4E 3E 4F 3D 40 DC CA 37 27
+3D 40 B6 CA 1A E2 BE 21 BD 23 AC 27 DE CA 3E 4F
+3D 40 B6 CA BF 23 DE 53 00 00 68 4E 08 5E F8 40
+3F 00 00 00 3D 40 5C CD D2 3F D0 C5 08 45 56 41
 4C 55 41 54 45 00 39 40 C0 21 3C 49 3B 49 3A 49
-3D 15 B0 12 2A C4 82 CB EA CB B2 41 C4 21 B2 41
-C2 21 B2 41 C0 21 3D 41 30 4D 85 12 BE 21 08 C5
-04 51 55 49 54 00 82 43 08 18 31 40 E0 20 B2 40
-00 20 00 20 82 43 BE 21 B0 12 2A C4 04 C8 8C C7
-7E CB 82 C7 82 CB A4 C4 0C C5 1E C8 0C 73 74 61
-63 6B 20 65 6D 70 74 79 21 00 7C CC 14 C8 30 FF
-DC CA 26 C5 1E C8 0A 46 52 41 4D 20 66 75 6C 6C
-21 00 7C CC 3C C6 1C CC FE CA 05 41 42 4F 52 54
-3F 40 80 20 D0 3F 5A CC 86 41 42 4F 52 54 22 00
-87 12 38 C8 14 C8 7C CC EC CA 2A C4 8F 93 02 00
-03 20 2F 52 3E 4F 30 4D B0 12 04 D2 B0 12 B6 C6
-92 C3 1C 05 38 40 A0 AA 39 42 03 43 19 83 FD 23
-18 83 FA 23 92 B3 1C 05 F3 23 87 12 7E D1 14 C8
-DE 21 EA C4 AC C7 1E C8 04 1B 5B 37 6D 00 D6 C7
-58 C4 40 C6 D6 CC 04 C8 1E C8 05 6C 69 6E 65 3A
-D6 C7 D0 C4 24 C6 D6 C7 1E C8 04 1B 5B 30 6D 00
-D6 C7 60 CC 00 00 83 5B 27 5D 87 12 FC CC 14 C8
-14 C8 EC CA EC CA 2A C4 E8 C8 01 27 87 12 7E CB
-80 C8 EE C8 40 C6 0A CD 2A C4 B6 CB 32 C5 81 5C
-92 42 C0 21 C4 21 30 4D E6 CC 81 5B 82 43 BE 21
-30 4D 0E CD 01 5D B2 43 BE 21 30 4D BE 4F 02 00
-3E 4F 30 4D D6 CA 82 49 53 00 87 12 FA CB EA C4
-40 C6 4E CD EA CC 14 C8 2C CD EC CA 2A C4 FC CC
-2C CD 2A C4 36 CD 09 49 4D 4D 45 44 49 41 54 45
-1A 42 B6 21 FA D0 80 00 00 00 30 4D 00 CC 88 50
-4F 53 54 50 4F 4E 45 00 87 12 7E CB 80 C8 EE C8
-58 C4 40 C6 0A CD 0C C5 40 C6 98 CD 14 C8 14 C8
-EC CA EC CA 14 C8 EC CA EC CA 2A C4 1A CD 81 3B
-82 93 BE 21 B5 27 87 12 14 C8 2A C4 EC CA 36 CE
-1C CD 2A C4 9E CD 07 3A 4E 4F 4E 41 4D 45 30 12
-DC CD 2F 83 8F 4E 00 00 1E 42 C6 21 1E B3 0E 63
-0A 4E 39 40 00 02 38 40 02 02 21 3C BA 40 87 12
-FC FF A2 83 C6 21 B2 43 BE 21 30 4D B6 CD 01 3A
-30 12 DC CD 92 B3 C6 21 A2 63 C6 21 87 12 7E CB
-80 C8 04 CE 3D 41 08 4E 7A 4E 5A D3 5A 53 0A 58
-19 42 DA 21 6E 4E 3E F0 1E 00 09 5E 3E 4F 82 48
-B6 21 82 49 B8 21 82 4A BA 21 82 4F BC 21 2A 52
-82 4A C6 21 30 41 82 9F BC 21 09 20 18 42 B6 21
-19 42 B8 21 A8 49 FE FF 89 48 00 00 30 4D 87 12
-1E C8 0F 73 74 61 63 6B 20 6D 69 73 6D 61 74 63
-68 21 88 CC CC CB 05 44 45 46 45 52 B0 12 F4 CD
-BA 40 30 40 FC FF BA 40 EA CD FE FF E3 3F 5A CB
-06 43 52 45 41 54 45 00 B0 12 F4 CD BA 40 85 12
-FC FF 8A 4A FE FF D6 3F 66 CE 05 44 4F 45 53 3E
-1A 42 BA 21 BA 40 84 12 00 00 8A 4D 02 00 3D 41
-30 4D 76 C9 05 3E 42 4F 44 59 2E 52 30 4D 80 CE
-04 43 4F 44 45 00 B0 12 F4 CD A2 82 C6 21 87 12
-0E D1 E8 D0 2A C4 C0 CE 07 43 4F 44 45 4E 4E 4D
-B0 12 C2 CD F2 3F 00 00 07 45 4E 44 43 4F 44 45
-87 12 1C D1 36 CE 2A C4 68 CC 03 41 53 4D B2 40
-EC D0 DA 21 E0 3F E8 CE 06 45 4E 44 41 53 4D 00
-87 12 F0 CE 30 D1 2A C4 00 00 05 43 4F 4C 4F 4E
-1A 42 C6 21 BA 40 87 12 00 00 A2 53 C6 21 B2 43
-BE 21 30 40 1C D1 00 00 05 4C 4F 32 48 49 1A 42
-C6 21 BA 40 B0 12 00 00 BA 40 2A C4 02 00 A2 52
-C6 21 ED 3F 56 CD 85 48 49 32 4C 4F 87 12 DC CA
-86 CF EC CA 1C CD 0E D1 E8 D0 2A C4 56 CF 82 49
-46 00 2F 83 8F 4E 00 00 1E 42 C6 21 A2 52 C6 21
-BE 40 40 C6 00 00 2E 53 30 4D 9A CE 84 45 4C 53
-45 00 A2 52 C6 21 1A 42 C6 21 BA 40 3C C6 FC FF
-8E 4A 00 00 2A 83 0E 4A 30 4D 4E C9 84 54 48 45
-4E 00 9E 42 C6 21 00 00 3E 4F 30 4D D8 CE 85 42
-45 47 49 4E 30 40 DC CA AC CF 85 55 4E 54 49 4C
-39 40 40 C6 A2 52 C6 21 1A 42 C6 21 8A 49 FC FF
-8A 4E FE FF 3E 4F 30 4D FA CE 85 41 47 41 49 4E
-39 40 3C C6 EF 3F 7A C8 85 57 48 49 4C 45 87 12
-72 CF 76 C4 2A C4 34 C8 86 52 45 50 45 41 54 00
-87 12 F0 CF B2 CF 2A C4 8C CF 82 44 4F 00 2F 83
-8F 4E 00 00 A2 53 C6 21 1E 42 C6 21 BE 40 54 C6
-FE FF A2 53 00 20 1A 42 00 20 8A 43 00 00 30 4D
-1E CB 84 4C 4F 4F 50 00 39 40 76 C6 A2 52 C6 21
-1A 42 C6 21 8A 49 FC FF 8A 4E FE FF 1E 42 00 20
-A2 83 00 20 2E 4E 0E 93 03 24 8E 4A 00 00 F6 3F
-3E 4F 30 4D 90 C6 85 2B 4C 4F 4F 50 39 40 64 C6
-E5 3F 42 D0 04 4D 4F 56 45 00 0A 4E 38 4F 39 4F
-3E 4F 0A 93 11 24 08 99 0F 24 06 2C F8 49 00 00
-18 53 1A 83 FB 23 30 4D 08 5A 09 5A 19 83 18 83
-E8 49 00 00 1A 83 FA 23 30 4D 14 C8 CA 21 F2 C4
-2A C4 84 12 BA D0 EA CF 92 D3 1A D0 FA CC 6E CF
-76 D0 A6 D4 64 C8 A2 D1 BC D1 CA CF 3C D2 00 00
-78 D4 24 CD B4 CE 00 00 84 12 BA D0 C4 D9 26 DA
-78 D9 9A DA 3E D9 00 00 6E D6 00 00 34 D9 E4 D9
-96 D9 D4 D9 7E D7 00 00 00 00 76 DA E6 D0 3A 40
-0C 00 39 40 CA 21 38 40 CC 21 C6 3F 3A 40 0E 00
-39 40 CC 21 38 40 CA 21 B9 3F 82 43 CC 21 30 4D
-92 42 CA 21 DA 21 30 4D C2 D0 2A D1 30 D1 40 D1
-3A 4E 82 4A C8 21 2E 4E 82 4E C6 21 3D 40 10 00
-09 4A 08 49 29 83 18 48 FE FF 0E 98 FC 2B 89 48
-00 00 1D 83 F6 23 2A 4A 0A 93 F0 23 3E 4F 3D 41
-30 4D 6E CD 09 50 57 52 5F 53 54 41 54 45 84 12
-38 D1 0C D1 AC DA 08 D0 09 52 53 54 5F 53 54 41
-54 45 92 42 0E 18 82 D1 92 42 0C 18 84 D1 EF 3F
-74 D1 08 50 57 52 5F 48 45 52 45 00 92 42 C8 21
-82 D1 92 42 C6 21 84 D1 30 4D 88 D1 08 52 53 54
-5F 48 45 52 45 00 92 42 C8 21 0E 18 92 42 C6 21
-0C 18 EC 3F F8 CF 04 57 49 50 45 00 39 40 10 00
-29 83 B9 43 80 FF FC 23 B2 40 E0 C6 DE C6 B2 40
-46 D2 44 D2 B2 40 0C D1 0E 18 B2 40 AC DA 0C 18
-30 12 92 D1 B2 40 86 C7 84 C7 B2 40 08 C8 06 C8
-B2 40 98 C6 96 C6 B2 40 18 00 0A 18 37 40 1A C4
-36 40 92 C4 35 40 0E C4 34 40 00 C4 B2 40 0A 00
-DC 21 B2 40 20 00 B4 21 30 41 D6 D1 04 57 41 52
-4D 00 30 40 46 D2 3D 40 7A D2 92 C3 30 01 1E 42
-08 18 0E 93 11 24 D2 B3 00 02 02 20 3E E3 1E 53
-F2 D0 03 00 0A 02 3E 90 0A 00 B8 27 3E 90 16 00
-B5 2F 2E 93 84 27 8D 2F 30 4D 1E C8 06 0D 1B 5B
-37 6D 23 00 D6 C7 34 C6 1E C8 19 46 61 73 74 46
-6F 72 74 68 20 C2 A9 4A 2E 4D 2E 54 68 6F 6F 72
-65 6E 73 20 D6 C7 14 C8 30 FF DC CA B8 C4 24 C6
-1E C8 0A 62 79 74 65 73 20 66 72 65 65 00 3C C6
-D6 CC BE CF 04 43 4F 4C 44 00 92 B3 0A 05 FD 23
-B2 40 04 A5 20 01 7A D2 B2 40 88 5A CC 01 B2 D0
-00 08 04 02 B2 D3 06 02 B2 43 02 02 B2 D0 FF FE
-26 02 B2 43 22 02 B2 43 42 02 B2 D3 46 02 B2 43
-62 02 B2 D3 66 02 F2 40 A5 00 A1 01 F2 40 10 00
-A0 01 D2 43 A1 01 B2 40 00 A5 60 01 B2 40 FF 1E
-80 01 B2 40 BA 00 82 01 B2 40 E8 01 84 01 39 40
-00 01 82 43 88 01 92 D2 5E 01 08 18 38 40 59 14
-18 83 FE 23 19 83 FA 23 39 40 00 08 29 83 89 43
-00 20 FC 23 39 40 1E 00 29 83 B9 40 D8 D2 E2 FF
-FB 23 B2 40 26 C7 EC FF B2 40 81 00 00 05 92 42
-02 18 06 05 92 42 04 18 08 05 92 C3 00 05 92 D3
-1A 05 3F 40 80 20 31 40 E0 20 30 12 42 D2 43 3F
-C4 D2 07 43 4F 4D 50 41 52 45 0C 4E 38 4F 3B 4F
-39 4F 0E 4B 0E 5C 0C 24 1B 83 07 30 1C 83 07 30
-19 53 F9 98 FF FF F5 27 02 2C 3E 43 30 4D 1E 43
-30 4D EE CD 86 5B 54 48 45 4E 5D 00 30 4D C4 D3
-86 5B 45 4C 53 45 5D 00 87 12 14 C8 00 00 C6 C4
-7E CB 80 C8 60 CB 34 C4 40 C6 3A D4 44 C4 1E C8
-06 5B 54 48 45 4E 5D 00 9A D3 4A C6 0A D4 F8 C7
-D0 C4 58 C4 4A C6 E0 D3 2A C4 44 C4 1E C8 06 5B
-45 4C 53 45 5D 00 9A D3 4A C6 28 D4 F8 C7 D0 C4
-58 C4 4A C6 DE D3 2A C4 1E C8 04 5B 49 46 5D 00
-9A D3 4A C6 E0 D3 3C C6 DE D3 F8 C7 1E C8 05 0D
-0A 6B 6F 20 D6 C7 8C C7 6E CB 3C C6 E0 D3 D0 D3
-84 5B 49 46 5D 00 0E 93 3E 4F BE 27 30 4D 50 D4
-89 5B 44 45 46 49 4E 45 44 5D 87 12 7E CB 80 C8
-EE C8 6A C4 2A C4 60 D4 8B 5B 55 4E 44 45 46 49
-4E 45 44 5D 87 12 7E CB 80 C8 EE C8 6A C4 00 C5
-2A C4 94 D4 3D 41 B2 4E 0E 18 A2 4E 0C 18 3E 4F
-30 40 92 D1 84 D0 06 4D 41 52 4B 45 52 00 B0 12
-F4 CD BA 40 84 12 FC FF BA 40 92 D4 FE FF 9A 42
-C8 21 00 00 28 83 8A 48 02 00 A2 52 C6 21 30 40
-3C CE 1C 15 B0 12 2A C4 80 C8 EE C8 4A C6 E8 D4
-E2 C9 40 C6 0A CD 02 D5 EA D4 39 4E 39 80 86 12
-08 24 19 53 02 20 2E 4E 04 3C 2E 53 19 53 01 24
-2E 82 1B 17 30 41 3E 40 28 00 B0 12 D2 D4 19 42
-C6 21 A2 53 C6 21 89 4E 00 00 3E 40 29 00 1C 15
-12 12 C4 21 92 53 C4 21 B0 12 2A C4 80 C8 E2 C9
-40 C6 40 D5 36 D5 21 53 3E 90 10 00 7D 2D E1 2B
-42 D5 B2 41 C4 21 DD 3F 87 12 7E CB 74 C8 50 D5
-0C 43 1B 42 C6 21 A2 53 C6 21 6A 4E 3E 4F 7A 90
-23 00 27 20 92 53 C4 21 B0 12 D2 D4 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 C6 21 A2 53 C6 21 89 4E 00 00 3E 4F 3D 41
-30 4D 7A 90 26 00 07 20 3C 40 10 02 92 53 C4 21
-B0 12 D2 D4 ED 3F 7A 90 40 00 16 20 3C 40 20 00
-92 53 C4 21 B0 12 1E D5 0C 20 3C 50 10 00 3E 40
-2B 00 B0 12 1E D5 92 92 C0 21 C4 21 02 24 92 53
-C4 21 8E 10 0C 5E DA 3F B0 12 1E D5 FA 23 3C 50
-10 00 B0 12 06 D5 EF 3F 0C 43 1B 42 C6 21 A2 53
-C6 21 87 12 7E CB 74 C8 1A D6 FE 90 26 00 00 00
-3E 40 20 00 03 20 3C 50 82 00 C8 3F B0 12 1E D5
-E1 23 3C 50 80 00 B0 12 06 D5 DC 3F D6 C6 04 52
-45 54 49 00 87 12 14 C8 00 13 EC CA 2A C4 14 C8
-2C 00 48 D5 12 D6 58 D6 09 4B 2E 4E 0E DC A4 3F
-38 CF 03 4D 4F 56 84 12 4E D6 00 40 62 D6 05 4D
-4F 56 2E 42 84 12 4E D6 40 40 00 00 03 41 44 44
-84 12 4E D6 00 50 7C D6 05 41 44 44 2E 42 84 12
-4E D6 40 50 88 D6 04 41 44 44 43 00 84 12 4E D6
-00 60 96 D6 06 41 44 44 43 2E 42 00 84 12 4E D6
-40 60 3E D6 04 53 55 42 43 00 84 12 4E D6 00 70
-B4 D6 06 53 55 42 43 2E 42 00 84 12 4E D6 40 70
-C2 D6 03 53 55 42 84 12 4E D6 00 80 D2 D6 05 53
-55 42 2E 42 84 12 4E D6 40 80 1A CF 03 43 4D 50
-84 12 4E D6 00 90 EC D6 05 43 4D 50 2E 42 84 12
-4E D6 40 90 08 CF 04 44 41 44 44 00 84 12 4E D6
-00 A0 06 D7 06 44 41 44 44 2E 42 00 84 12 4E D6
-40 A0 F8 D6 03 42 49 54 84 12 4E D6 00 B0 24 D7
-05 42 49 54 2E 42 84 12 4E D6 40 B0 30 D7 03 42
-49 43 84 12 4E D6 00 C0 3E D7 05 42 49 43 2E 42
-84 12 4E D6 40 C0 4A D7 03 42 49 53 84 12 4E D6
-00 D0 58 D7 05 42 49 53 2E 42 84 12 4E D6 40 D0
-00 00 03 58 4F 52 84 12 4E D6 00 E0 72 D7 05 58
-4F 52 2E 42 84 12 4E D6 40 E0 A4 D6 03 41 4E 44
-84 12 4E D6 00 F0 8C D7 05 41 4E 44 2E 42 84 12
-4E D6 40 F0 7E CB 48 D5 AA D7 0A 4C 3C F0 70 00
-8A 10 3A F0 0F 00 0C DA 4F 3F DE D6 03 52 52 43
-84 12 A4 D7 00 10 BC D7 05 52 52 43 2E 42 84 12
-A4 D7 40 10 C8 D7 04 53 57 50 42 00 84 12 A4 D7
-80 10 D6 D7 03 52 52 41 84 12 A4 D7 00 11 E4 D7
-05 52 52 41 2E 42 84 12 A4 D7 40 11 F0 D7 03 53
-58 54 84 12 A4 D7 80 11 00 00 04 50 55 53 48 00
-84 12 A4 D7 00 12 0A D8 06 50 55 53 48 2E 42 00
-84 12 A4 D7 40 12 64 D7 04 43 41 4C 4C 00 84 12
-A4 D7 80 12 1A 53 0E 4A 87 12 34 C6 1E C8 0D 6F
-75 74 20 6F 66 20 62 6F 75 6E 64 73 88 CC 7E CB
-74 C8 54 D8 92 53 C4 21 3E 40 2C 00 B0 12 2A C4
-80 C8 E2 C9 40 C6 0A CD 08 D6 6C D8 0A 4E 3E 4F
-1A 83 E0 33 29 4E 59 0E 0A 28 08 4C 59 0A 01 28
-0C 8A 08 8A 38 90 10 00 D5 2F 5A 0E 94 3F 2A 92
-D1 2F 8A 10 5A 06 8F 3F FE D7 04 52 52 43 4D 00
-84 12 4E D8 50 00 9A D8 04 52 52 41 4D 00 84 12
-4E D8 50 01 A8 D8 04 52 4C 41 4D 00 84 12 4E D8
-50 02 B6 D8 04 52 52 55 4D 00 84 12 4E D8 50 03
-18 D8 05 50 55 53 48 4D 84 12 4E D8 00 15 D2 D8
-04 50 4F 50 4D 00 84 12 4E D8 00 17 C4 D8 03 53
-3E 3D 85 12 00 38 EE D8 02 53 3C 00 85 12 00 34
-E0 D8 03 30 3E 3D 85 12 00 30 02 D9 02 30 3C 00
-85 12 00 30 00 00 02 55 3C 00 85 12 00 2C 16 D9
-03 55 3E 3D 85 12 00 28 0C D9 03 30 3C 3E 85 12
-00 24 2A D9 02 30 3D 00 85 12 00 20 00 00 02 49
-46 00 1A 42 C6 21 8A 4E 00 00 A2 53 C6 21 0E 4A
-30 4D 20 D9 04 54 48 45 4E 00 1A 42 C6 21 08 4E
-3E 4F 09 48 29 53 0A 89 0A 11 3A 90 00 02 63 2F
-88 DA 00 00 30 4D 14 D7 04 45 4C 53 45 00 1A 42
-C6 21 BA 40 00 3C 00 00 A2 53 C6 21 2F 83 8F 4A
-00 00 E3 3F 54 D9 05 55 4E 54 49 4C 3A 4F 08 4E
-3E 4F 19 42 C6 21 2A 83 0A 89 0A 11 3A 90 00 FE
-42 3B 3A F0 FF 03 08 DA 89 48 00 00 A2 53 C6 21
-30 4D 98 D7 05 41 47 41 49 4E 0A 4E 38 40 00 3C
-E7 3F 00 00 05 57 48 49 4C 45 87 12 42 D9 76 C4
-2A C4 F8 D8 06 52 45 50 45 41 54 00 87 12 CA D9
-5A D9 2A C4 F6 D9 3D 41 08 4E 3E 4F 2A 48 B2 92
-C4 21 CD 2F 98 42 C6 21 00 00 30 4D 28 D8 03 42
-57 31 84 12 F4 D9 00 00 0E DA 03 42 57 32 84 12
-F4 D9 00 00 1A DA 03 42 57 33 84 12 F4 D9 00 00
-32 DA 3D 41 1A 42 C6 21 28 4E B2 92 C4 21 90 2B
-BA 4F 00 00 A2 53 C6 21 8E 4A 00 00 3E 4F 30 4D
-00 00 03 46 57 31 84 12 30 DA 00 00 52 DA 03 46
-57 32 84 12 30 DA 00 00 5E DA 03 46 57 33 84 12
-30 DA 00 00 00 00 05 3F 47 4F 54 4F 3E 90 00 30
-07 24 3E E0 00 04 3E B0 00 10 02 24 3E E0 00 08
-87 12 FC CC 16 CB 2A C4 6A DA 04 47 4F 54 4F 00
-2F 83 8F 4E 00 00 3E 40 00 3C F2 3F
+3D 15 87 12 B0 CA 18 CB B2 41 C4 21 B2 41 C2 21
+B2 41 C0 21 3D 41 30 4D 85 12 BE 21 00 00 04 51
+55 49 54 00 82 43 08 18 31 40 E0 20 B2 40 00 20
+00 20 82 43 BE 21 87 12 2E C6 D4 C4 AC CA C4 C5
+B0 CA 8C C6 BC C6 2E C4 0C 73 74 61 63 6B 20 65
+6D 70 74 79 21 00 AA CB 24 C4 40 FF 66 CE C4 C6
+2E C4 0A 46 52 41 4D 20 66 75 6C 6C 21 00 AA CB
+48 C4 48 CB 46 CA 05 41 42 4F 52 54 3F 40 80 20
+D1 3F 86 CB 86 41 42 4F 52 54 22 00 0D 12 87 12
+AA C7 24 C4 AA CB 34 CA 26 C7 8F 93 02 00 03 20
+2F 52 3E 4F 30 4D B0 12 D2 CF B0 12 06 C5 92 C3
+1C 05 18 42 06 18 39 40 20 00 19 83 FE 23 18 83
+FA 23 92 B3 1C 05 F3 23 0D 12 87 12 4C CF 24 C4
+DE 21 02 C5 D6 C5 2E C4 04 1B 5B 37 6D 00 00 C6
+7C C6 4C C4 04 CC 2E C6 2E C4 05 6C 69 6E 65 3A
+00 C6 66 C7 00 C6 2E C4 04 1B 5B 30 6D 00 00 C6
+8C CB 00 00 83 5B 27 5D 0D 12 87 12 2C CC 24 C4
+24 C4 34 CA 34 CA 26 C7 44 C8 01 27 0D 12 87 12
+AC CA F2 C7 4A C8 4C C4 3C CC 26 C7 E6 CA D2 C6
+81 5C 92 42 C0 21 C4 21 30 4D 14 CC 81 5B 82 43
+BE 21 30 4D 40 CC 01 5D B2 43 BE 21 30 4D 2E CB
+88 50 4F 53 54 50 4F 4E 45 00 0D 12 87 12 AC CA
+F2 C7 4A C8 7C C6 4C C4 3C CC BC C6 4C C4 8C CC
+24 C4 24 C4 34 CA 34 CA 24 C4 34 CA 34 CA 26 C7
+40 C7 09 49 4D 4D 45 44 49 41 54 45 1A 42 B6 21
+FA D0 80 00 00 00 30 4D 4C CC 01 3A 30 12 F4 CC
+92 B3 C6 21 A2 63 C6 21 0D 12 87 12 AC CA F2 C7
+C2 CC 3D 41 08 4E 7A 4E 5A D3 5A 53 0A 58 19 42
+DA 21 6E 4E 3E F0 1E 00 09 5E 3E 4F 82 48 B6 21
+82 49 B8 21 82 4A BA 21 82 4F BC 21 2A 52 82 4A
+C6 21 30 41 BA 40 0D 12 FC FF BA 40 87 12 FE FF
+B2 43 BE 21 30 4D AA CC 07 3A 4E 4F 4E 41 4D 45
+30 12 F4 CC 2F 83 8F 4E 00 00 1E 42 C6 21 1E B3
+0E 63 0A 4E 39 40 10 02 38 40 12 02 D7 3F 82 9F
+BC 21 09 20 18 42 B6 21 19 42 B8 21 A8 49 FE FF
+89 48 00 00 30 4D 0D 12 87 12 2E C4 0F 73 74 61
+63 6B 20 6D 69 73 6D 61 74 63 68 21 B6 CB 08 CD
+81 3B 82 93 BE 21 6D 27 0D 12 87 12 24 C4 26 C7
+34 CA 2E CD 4E CC 26 C7 98 CA 06 43 52 45 41 54
+45 00 B0 12 B0 CC BA 40 85 12 FC FF 8A 4A FE FF
+D5 3F FC CA 05 44 4F 45 53 3E 1A 42 BA 21 BA 40
+84 12 00 00 8A 4D 02 00 3D 41 30 4D 7A CD 04 43
+4F 44 45 00 B0 12 B0 CC A2 82 C6 21 0D 12 87 12
+C6 CE A0 CE 26 C7 AE CD 07 43 4F 44 45 4E 4E 4D
+30 12 B8 CD 9F 3F 00 00 07 45 4E 44 43 4F 44 45
+0D 12 87 12 2E CD E0 CE 26 C7 94 CB 03 41 53 4D
+B2 40 A4 CE DA 21 DE 3F D8 CD 06 45 4E 44 41 53
+4D 00 0D 12 87 12 E0 CD FE CE 26 C7 00 00 05 43
+4F 4C 4F 4E 1A 42 C6 21 BA 40 0D 12 00 00 BA 40
+87 12 02 00 A2 52 C6 21 B2 43 BE 21 30 40 E0 CE
+00 00 05 4C 4F 32 48 49 A2 83 C6 21 1A 42 C6 21
+EE 3F 92 CC 85 48 49 32 4C 4F 0D 12 87 12 66 CE
+5A CE 34 CA 4E CC BC CD 26 C7 2E 53 30 4D C8 CD
+85 42 45 47 49 4E 2F 83 8F 4E 00 00 1E 42 C6 21
+30 4D 24 C4 CA 21 AE C6 26 C7 84 12 72 CE EC CD
+96 D0 94 CD 2A CC 44 CE 42 C6 5C CA D8 C7 70 CF
+8A CF AA C8 0A D0 00 00 24 D2 56 CC D2 C8 00 00
+84 12 72 CE 56 D7 BC D7 0A D7 0C D8 D0 D6 00 00
+00 D4 00 00 C6 D6 78 D7 28 D7 66 D7 10 D5 00 00
+00 00 28 D8 9E CE 3A 40 0C 00 39 40 D6 21 08 49
+28 53 19 83 18 83 E8 49 00 00 1A 83 FA 23 30 4D
+3A 40 0E 00 38 40 CA 21 09 48 29 53 F8 49 00 00
+18 53 1A 83 FB 23 30 4D 82 43 CC 21 30 4D 92 42
+CA 21 DA 21 30 4D 7A CE F8 CE FE CE 0E CF 3A 4E
+82 4A C8 21 2E 4E 82 4E C6 21 3D 40 10 00 09 4A
+08 49 29 83 18 48 FE FF 0E 98 FC 2B 89 48 00 00
+1D 83 F6 23 2A 4A 0A 93 F0 23 3E 4F 3D 41 30 4D
+60 CC 09 50 57 52 5F 53 54 41 54 45 84 12 06 CF
+C4 CE 44 D8 A6 C7 09 52 53 54 5F 53 54 41 54 45
+92 42 0E 18 50 CF 92 42 0C 18 52 CF EF 3F 42 CF
+08 50 57 52 5F 48 45 52 45 00 92 42 C8 21 50 CF
+92 42 C6 21 52 CF 30 4D 56 CF 08 52 53 54 5F 48
+45 52 45 00 92 42 C8 21 0E 18 92 42 C6 21 0C 18
+EC 3F EC C7 04 57 49 50 45 00 39 40 10 00 29 83
+B9 43 80 FF FC 23 B2 40 04 C4 02 C4 B2 40 14 D0
+12 D0 B2 40 C4 CE 0E 18 B2 40 44 D8 0C 18 30 12
+60 CF B2 40 C8 C5 C6 C5 B2 40 32 C6 30 C6 B2 40
+4A C6 48 C6 B2 40 18 00 0A 18 37 40 26 C7 36 40
+9C C6 35 40 FA C4 34 40 EC C4 B2 40 0A 00 DC 21
+B2 40 20 00 B4 21 30 41 A4 CF 04 57 41 52 4D 00
+30 40 14 D0 3D 40 4C D0 92 C3 30 01 1E 42 08 18
+0E 93 13 24 D2 B3 00 02 02 20 3E E3 1E 53 F2 D0
+03 00 0A 02 92 D3 1A 05 3E 90 0A 00 B6 27 3E 90
+16 00 B3 2F 2E 93 82 27 8B 2F 30 4D 2E C4 07 0D
+0A 1B 5B 37 6D 23 00 C6 9C C7 2E C4 19 46 61 73
+74 46 6F 72 74 68 20 C2 A9 4A 2E 4D 2E 54 68 6F
+6F 72 65 6E 73 20 00 C6 24 C4 40 FF 66 CE A6 C6
+66 C7 2E C4 0A 62 79 74 65 73 20 66 72 65 65 00
+48 C4 04 CC 60 CE 04 43 4F 4C 44 00 92 B3 0A 05
+FD 23 B2 40 04 A5 20 01 31 40 E0 20 B2 40 88 5A
+CC 01 B2 D3 06 02 B2 D3 02 02 F2 D2 05 02 B2 D0
+FF FE 26 02 B2 43 22 02 B2 43 42 02 B2 D3 46 02
+B2 43 62 02 B2 D3 66 02 F2 40 A5 00 A1 01 F2 40
+10 00 A0 01 D2 43 A1 01 B2 40 00 A5 60 01 B2 40
+FF 1E 80 01 B2 40 BA 00 82 01 B2 40 E8 01 84 01
+39 40 00 01 82 43 88 01 92 D2 5E 01 08 18 38 40
+59 14 18 83 FE 23 19 83 FA 23 39 40 00 08 29 83
+89 43 00 20 FC 23 B0 12 0E C4 B2 40 81 00 00 05
+92 42 02 18 06 05 92 42 04 18 08 05 92 C3 00 05
+3F 40 80 20 30 12 10 D0 4D 3F 60 CD 86 5B 54 48
+45 4E 5D 00 30 4D 0C 4E 38 4F 3B 4F 39 4F 0E 4B
+0E 5C 10 24 1B 83 06 30 1C 83 04 30 19 53 F9 98
+FF FF F5 27 2D 4D 3E 4F 30 4D 2F 53 9F 83 00 00
+F9 23 2F 53 2D 53 F7 3F 4C D1 86 5B 45 4C 53 45
+5D 00 0D 12 87 12 24 C4 00 00 AA C6 AC CA F2 C7
+9E CA 68 C6 4C C4 E4 D1 70 C6 2E C4 06 5B 54 48
+45 4E 5D 00 56 D1 BE D1 7A D1 9C D1 26 C7 70 C6
+2E C4 06 5B 45 4C 53 45 5D 00 56 D1 D4 D1 7A D1
+9A D1 26 C7 2E C4 04 5B 49 46 5D 00 56 D1 9C D1
+48 C4 9A D1 22 C6 2E C4 05 0D 0A 6B 6F 20 00 C6
+D4 C4 C4 C4 48 C4 9C D1 8A D1 84 5B 49 46 5D 00
+0E 93 3E 4F C6 27 30 4D FA D1 89 5B 44 45 46 49
+4E 45 44 5D 0D 12 87 12 AC CA F2 C7 4A C8 2C CA
+26 C7 0A D2 8B 5B 55 4E 44 45 46 49 4E 45 44 5D
+0D 12 87 12 14 D2 38 D2 3D 41 30 40 B6 C6 38 40
+C0 21 0A 4E 39 48 2E 48 09 5E 1E 52 C4 21 09 9E
+03 24 7A 9E FC 27 1E 83 0A 4E 2A 88 82 4A C4 21
+30 4D 1C 15 87 12 F2 C7 4A C8 42 C4 76 D2 3E C9
+4C C4 3C CC 90 D2 78 D2 39 4E 39 80 86 12 08 24
+19 53 02 20 2E 4E 04 3C 2E 53 19 53 01 24 2E 82
+1B 17 30 41 3E 40 28 00 B0 12 62 D2 19 42 C6 21
+A2 53 C6 21 89 4E 00 00 3E 40 29 00 1C 15 12 12
+C4 21 92 53 C4 21 87 12 F2 C7 3E C9 4C C4 CC D2
+C2 D2 21 53 3E 90 10 00 80 2D E2 2B CE D2 B2 41
+C4 21 DE 3F 0D 12 87 12 AC CA 3E D2 DE D2 0C 43
+1B 42 C6 21 A2 53 C6 21 6A 4E 3E 4F 7A 90 23 00
+27 20 92 53 C4 21 B0 12 62 D2 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
+C6 21 A2 53 C6 21 89 4E 00 00 3E 4F 3D 41 30 4D
+7A 90 26 00 07 20 3C 40 10 02 92 53 C4 21 B0 12
+62 D2 ED 3F 7A 90 40 00 16 20 3C 40 20 00 92 53
+C4 21 B0 12 AC D2 0C 20 3C 50 10 00 3E 40 2B 00
+B0 12 AC D2 92 92 C0 21 C4 21 02 24 92 53 C4 21
+8E 10 0C 5E DA 3F B0 12 AC D2 FA 23 3C 50 10 00
+B0 12 94 D2 EF 3F 0C 43 1B 42 C6 21 A2 53 C6 21
+0D 12 87 12 AC CA 3E D2 AA D3 FE 90 26 00 00 00
+3E 40 20 00 03 20 3C 50 82 00 C7 3F B0 12 AC D2
+E0 23 3C 50 80 00 B0 12 94 D2 DB 3F 00 00 04 52
+45 54 49 00 0D 12 87 12 24 C4 00 13 34 CA 26 C7
+24 C4 2C 00 D4 D2 A0 D3 EA D3 09 4B 2E 4E 0E DC
+A2 3F 32 CE 03 4D 4F 56 84 12 E0 D3 00 40 F4 D3
+05 4D 4F 56 2E 42 84 12 E0 D3 40 40 00 00 03 41
+44 44 84 12 E0 D3 00 50 0E D4 05 41 44 44 2E 42
+84 12 E0 D3 40 50 1A D4 04 41 44 44 43 00 84 12
+E0 D3 00 60 28 D4 06 41 44 44 43 2E 42 00 84 12
+E0 D3 40 60 CE D3 04 53 55 42 43 00 84 12 E0 D3
+00 70 46 D4 06 53 55 42 43 2E 42 00 84 12 E0 D3
+40 70 54 D4 03 53 55 42 84 12 E0 D3 00 80 64 D4
+05 53 55 42 2E 42 84 12 E0 D3 40 80 0E CE 03 43
+4D 50 84 12 E0 D3 00 90 7E D4 05 43 4D 50 2E 42
+84 12 E0 D3 40 90 FA CD 04 44 41 44 44 00 84 12
+E0 D3 00 A0 98 D4 06 44 41 44 44 2E 42 00 84 12
+E0 D3 40 A0 8A D4 03 42 49 54 84 12 E0 D3 00 B0
+B6 D4 05 42 49 54 2E 42 84 12 E0 D3 40 B0 C2 D4
+03 42 49 43 84 12 E0 D3 00 C0 D0 D4 05 42 49 43
+2E 42 84 12 E0 D3 40 C0 DC D4 03 42 49 53 84 12
+E0 D3 00 D0 EA D4 05 42 49 53 2E 42 84 12 E0 D3
+40 D0 00 00 03 58 4F 52 84 12 E0 D3 00 E0 04 D5
+05 58 4F 52 2E 42 84 12 E0 D3 40 E0 36 D4 03 41
+4E 44 84 12 E0 D3 00 F0 1E D5 05 41 4E 44 2E 42
+84 12 E0 D3 40 F0 AC CA D4 D2 3C D5 0A 4C 3C F0
+70 00 8A 10 3A F0 0F 00 0C DA 4F 3F 70 D4 03 52
+52 43 84 12 36 D5 00 10 4E D5 05 52 52 43 2E 42
+84 12 36 D5 40 10 5A D5 04 53 57 50 42 00 84 12
+36 D5 80 10 68 D5 03 52 52 41 84 12 36 D5 00 11
+76 D5 05 52 52 41 2E 42 84 12 36 D5 40 11 82 D5
+03 53 58 54 84 12 36 D5 80 11 00 00 04 50 55 53
+48 00 84 12 36 D5 00 12 9C D5 06 50 55 53 48 2E
+42 00 84 12 36 D5 40 12 F6 D4 04 43 41 4C 4C 00
+84 12 36 D5 80 12 1A 53 0E 4A 0D 12 87 12 9C C7
+2E C4 0D 6F 75 74 20 6F 66 20 62 6F 75 6E 64 73
+B6 CB AC CA 3E D2 E8 D5 92 53 C4 21 3E 40 2C 00
+87 12 F2 C7 3E C9 4C C4 3C CC 96 D3 FE D5 0A 4E
+3E 4F 1A 83 E0 33 29 4E 59 0E 0A 28 08 4C 59 0A
+01 28 0C 8A 08 8A 38 90 10 00 D5 2F 5A 0E 94 3F
+2A 92 D1 2F 8A 10 5A 06 8F 3F 90 D5 04 52 52 43
+4D 00 84 12 E2 D5 50 00 2C D6 04 52 52 41 4D 00
+84 12 E2 D5 50 01 3A D6 04 52 4C 41 4D 00 84 12
+E2 D5 50 02 48 D6 04 52 52 55 4D 00 84 12 E2 D5
+50 03 AA D5 05 50 55 53 48 4D 84 12 E2 D5 00 15
+64 D6 04 50 4F 50 4D 00 84 12 E2 D5 00 17 56 D6
+03 53 3E 3D 85 12 00 38 80 D6 02 53 3C 00 85 12
+00 34 72 D6 03 30 3E 3D 85 12 00 30 94 D6 02 30
+3C 00 85 12 00 30 00 00 02 55 3C 00 85 12 00 2C
+A8 D6 03 55 3E 3D 85 12 00 28 9E D6 03 30 3C 3E
+85 12 00 24 BC D6 02 30 3D 00 85 12 00 20 00 00
+02 49 46 00 1A 42 C6 21 8A 4E 00 00 A2 53 C6 21
+0E 4A 30 4D B2 D6 04 54 48 45 4E 00 1A 42 C6 21
+08 4E 3E 4F 09 48 29 53 0A 89 0A 11 3A 90 00 02
+63 2F 88 DA 00 00 30 4D A6 D4 04 45 4C 53 45 00
+1A 42 C6 21 BA 40 00 3C 00 00 A2 53 C6 21 2F 83
+8F 4A 00 00 E3 3F E6 D6 05 55 4E 54 49 4C 3A 4F
+08 4E 3E 4F 19 42 C6 21 2A 83 0A 89 0A 11 3A 90
+00 FE 42 3B 3A F0 FF 03 08 DA 89 48 00 00 A2 53
+C6 21 30 4D 2A D5 05 41 47 41 49 4E 0A 4E 38 40
+00 3C E7 3F 00 00 05 57 48 49 4C 45 0D 12 87 12
+D4 D6 82 C6 26 C7 8A D6 06 52 45 50 45 41 54 00
+0D 12 87 12 5C D7 EC D6 26 C7 8C D7 3D 41 08 4E
+3E 4F 2A 48 B2 92 C4 21 CB 2F 98 42 C6 21 00 00
+30 4D BA D5 03 42 57 31 84 12 8A D7 00 00 A4 D7
+03 42 57 32 84 12 8A D7 00 00 B0 D7 03 42 57 33
+84 12 8A D7 00 00 C8 D7 3D 41 1A 42 C6 21 28 4E
+B2 92 C4 21 8E 2B BA 4F 00 00 A2 53 C6 21 8E 4A
+00 00 3E 4F 30 4D 00 00 03 46 57 31 84 12 C6 D7
+00 00 E8 D7 03 46 57 32 84 12 C6 D7 00 00 F4 D7
+03 46 57 33 84 12 C6 D7 00 00 00 D8 04 47 4F 54
+4F 00 2F 83 8F 4E 00 00 3E 40 00 3C 0D 12 87 12
+2C CC 54 CA 26 C7 00 00 05 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
 @FFFE
-D8 D2
+A8 D0
 q
index d31be6a..0c3b357 100644 (file)
 @1800
-10 00 08 00 00 D6 E8 03 05 00 18 00 9C DA 0C D1
-2D 01 6B B0 B6 C6 C8 C6
+10 00 08 00 00 D6 E8 03 05 00 18 00 34 D8 C4 CE
+2E 01 6B B0 06 C5 18 C5 10 D0
 @C400
-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 3A 41 0D 12 0D 4A
-30 4D 00 00 04 45 58 49 54 00 3D 41 30 4D 24 C4
-03 44 55 50 2F 83 8F 4E 00 00 30 4D 00 00 04 32
-44 55 50 00 8F 4E FE FF AF 4F FC FF 2F 82 30 4D
-00 00 04 3F 44 55 50 00 0E 93 EC 23 30 4D 30 C4
-04 44 52 4F 50 00 3E 4F 30 4D 2F 53 30 4D 3E C4
-04 53 57 41 50 00 2A 4F 8F 4E 00 00 0E 4A 30 4D
-52 C4 02 3E 52 00 0E 12 3E 4F 30 4D 70 C4 02 52
-3E 00 2F 83 8F 4E 00 00 3E 41 30 4D 60 C4 05 44
-45 50 54 48 8F 4E FE FF 3E 40 80 20 0E 8F 0E 11
-2F 83 30 4D 00 00 01 2D 3E 8F 3E E3 1E 53 30 4D
-00 00 02 31 2B 00 1E 53 30 4D C2 C4 02 31 2D 00
-1E 83 30 4D 3E F3 06 34 BF E3 00 00 3E E3 9F 53
-00 00 0E 63 30 4D 00 00 01 40 2E 4E 30 4D E8 C4
-01 21 BE 4F 00 00 3E 4F 30 4D CC C4 02 30 3D 00
-1E 83 0E 7E 30 4D FC C4 02 30 3C 00 0E 5E 0E 7E
-3E E3 30 4D 00 00 01 3D 3E 8F FA 27 0E F3 30 4D
-00 00 02 55 3C 00 3E 8F F9 2B 01 24 3E 43 30 4D
-16 C5 02 3C 23 00 B2 40 B2 21 B2 21 30 4D 0B 4E
+30 40 04 C4 B0 12 06 C5 12 D2 0A 18 F9 3F 39 40
+1E 00 29 83 B9 40 A8 D0 E2 FF FB 23 B2 40 68 C5
+EC FF 30 41 2F 83 8F 4E 00 00 3E 4D 30 4D 2F 82
+8F 4E 02 00 7E 4D 8F 4D 00 00 0D 5E 1D B3 0D 63
+30 4D 0E 93 3E 4F 05 24 2D 4D 30 4D 0E 93 3E 4F
+FB 27 2D 53 30 4D 39 40 00 80 39 8F 08 4E 3E 4F
+08 59 19 15 30 4D 81 5E 00 00 3E 4F 32 B0 00 01
+EB 27 21 52 2D 53 30 4D 91 53 00 00 F7 3F 0B 4E
 1C 4F 02 00 2E 4F 0A 43 34 40 20 00 0E 93 04 20
 04 11 0E 4C 0C 43 09 43 0A 9B 01 28 0A 8B 09 69
 08 68 14 83 07 30 0C 5C 0E 6E 0A 6A F5 2B 0A 8B
-12 D3 F5 3F 34 40 00 C4 8F 4A 02 00 8F 49 00 00
-0E 48 30 41 00 00 01 23 1B 42 DC 21 2C 4F 2F 83
-B0 12 46 C5 BF 4F 00 00 7A 90 0A 00 02 28 7A 50
-07 00 7A 50 30 00 92 83 B2 21 18 42 B2 21 C8 4A
-00 00 30 4D 86 C5 02 23 53 00 87 12 88 C5 C0 C5
-2D 83 09 93 E3 23 0E 93 E1 23 3D 41 30 4D B6 C5
-02 23 3E 00 9F 42 B2 21 00 00 3E 40 B2 21 2E 8F
-30 4D 00 00 04 48 4F 4C 44 00 0A 4E 3E 4F DB 3F
-8E C4 04 53 49 47 4E 00 0E 93 3E 4F 3A 40 2D 00
-D2 33 30 4D 87 12 36 C5 34 C4 86 C4 D4 C4 BA C5
-92 C4 F8 C5 D4 C5 D6 C7 7E CB 82 C7 2A C4 22 C5
-02 55 2E 00 08 43 2F 83 8F 4E 00 00 0E 48 EA 3F
-00 00 01 2E 0E 93 F6 37 38 43 F5 3F 2D 4D 30 4D
-0E 93 3E 4F FB 27 2D 53 30 4D 0E 93 3E 4F F6 23
-2D 53 30 4D 39 40 00 80 39 8F 08 4E 3E 4F 08 59
-19 15 30 4D 81 5E 00 00 3E 4F 32 B0 00 01 E6 27
-2D 53 21 52 30 4D 91 53 00 00 F7 3F E4 C5 01 49
-2F 83 8F 4E 00 00 2E 41 1E 81 02 00 30 4D 00 00
-03 4B 45 59 30 40 98 C6 18 42 0C 05 2F 83 8F 4E
-00 00 B0 12 B6 C6 92 B3 1C 05 FD 27 1E 42 0C 05
-B0 12 C8 C6 30 4D A2 B3 1C 05 FD 27 B2 40 11 00
-0E 05 F2 C2 03 02 30 41 B2 40 13 00 0E 05 F2 D2
-03 02 30 41 00 00 05 53 4C 45 45 50 30 40 E0 C6
-B0 12 B6 C6 12 D2 0A 18 F9 3F F0 C4 06 41 43 43
-45 50 54 00 3C 40 64 C7 3B 40 2E C7 2D 15 0A 4E
-2E 4F 0A 5E 3B 40 0D 00 3C 40 20 00 3D 40 58 C7
-92 B3 1C 05 05 24 18 42 0C 05 38 90 0A 00 CB 23
-21 53 3D 15 DB 3F 21 52 3A 17 58 42 0C 05 48 9C
-08 2C 48 9B C9 27 78 92 11 20 2E 9F 0F 24 1E 83
-05 3C 0E 9A 03 24 CE 48 00 00 1E 53 A2 B3 1C 05
-FD 27 82 48 0E 05 30 4D 5A C7 2D 83 92 B3 1C 05
-E4 23 FC 27 82 93 DE 21 02 24 92 53 DE 21 3E 8F
-3D 41 B2 40 18 00 0A 18 30 4D 9E C4 04 45 4D 49
-54 00 30 40 86 C7 08 4E 3E 4F E0 3F 3F 80 06 00
-8F 4E 04 00 3E 40 54 00 BF 40 3C 21 00 00 AF 4F
-02 00 A8 3F 7C C7 04 45 43 48 4F 00 B2 40 82 48
-52 C7 82 43 DE 21 30 4D 32 C6 06 4E 4F 45 43 48
-4F 00 B2 40 30 4D 52 C7 92 43 DE 21 30 4D 20 C6
-04 54 59 50 45 00 0E 93 0F 24 1E 15 3D 40 EC C7
-28 4F 7E 48 8F 48 00 00 2F 83 CB 3F EE C7 2D 83
-91 83 02 00 F5 23 1D 17 2F 53 3E 4F 30 4D D0 C5
-02 43 52 00 30 40 08 C8 87 12 1E C8 02 0D 0A 00
-D6 C7 2A C4 2F 83 8F 4E 00 00 3E 4D 30 4D 2F 82
-8F 4E 02 00 7E 4D 8F 4D 00 00 0D 5E 1D B3 0D 63
-30 4D F2 C5 82 53 22 00 82 43 B4 21 87 12 14 C8
-1E C8 EC CA 14 C8 22 00 80 C8 4C C8 B2 40 20 00
-B4 21 6E 4E 1E 53 1E B3 82 6E C6 21 3D 41 3E 4F
-30 4D BA C7 82 2E 22 00 87 12 38 C8 14 C8 D6 C7
-EC CA 2A C4 48 43 05 3C 00 00 04 57 4F 52 44 00
-48 4E 19 42 C0 21 1A 42 C2 21 09 5A 1A 52 C4 21
-09 9A 03 24 7E 9A FC 27 1A 83 4E F8 06 20 0E 4A
-1A 82 C2 21 82 4A C4 21 30 4D 18 42 C6 21 3B 40
-60 00 C8 4C 00 00 09 9A 0C 24 7C 4A 4E 9C 09 24
-18 53 4B 9C F6 2F 7C 90 7B 00 F3 2F 5C 82 B4 21
-F0 3F 1A 82 C2 21 82 4A C4 21 1E 42 C6 21 08 8E
-CE 48 00 00 30 4D 00 00 04 46 49 4E 44 00 2F 83
-0C 4E 65 4C 74 40 80 00 3B 40 CA 21 3E 4B 0E 93
-1E 24 58 4C 01 00 78 F0 1E 00 0E 58 2E 53 1E 4E
-FE FF 0E 93 F3 27 09 4E 78 49 48 C4 48 95 F7 23
-0A 4C FA 99 01 00 F3 23 1A 53 58 83 FA 23 19 B3
-09 63 0C 49 6A 4E 1E 43 4A 93 01 30 2E 83 8F 4C
-00 00 35 40 0E C4 34 40 00 C4 30 4D D0 C7 03 55
-4D 2A 2C 4F 0B 43 09 43 08 43 1A 43 0E BA 02 24
-09 5C 08 6B 0C 5C 0B 6B 0A 5A F8 2B 8F 49 00 00
-0E 48 30 4D 82 C4 07 3E 4E 55 4D 42 45 52 2C 4F
-0B 4E 1A 42 DC 21 68 4C 78 80 30 00 78 90 0A 00
-05 28 78 80 07 00 78 90 0A 00 1F 28 08 9A 22 C3
-1C 2C 5D 15 1C 4F 02 00 0E 4A 3D 40 B0 C9 D2 3F
-B2 C9 81 49 02 00 1C 4F 04 00 1E 41 04 00 3D 40
-C4 C9 C8 3F C6 C9 39 51 3E 61 8F 49 04 00 8F 4E
-02 00 3A 17 1C 53 1B 83 D6 23 8F 4C 00 00 0E 4B
-30 4D 32 C0 00 02 1B 42 DC 21 0C 43 2D 15 3D 40
-32 CA 0A 4B 3F 82 8F 4E 06 00 8F 43 04 00 8F 43
-02 00 0C 4E 7B 4C 68 4C 78 90 2D 00 04 28 BC 23
-B1 43 02 00 DF 3F 2A 43 78 80 25 00 07 24 3A 52
-68 53 04 24 3A 40 10 00 58 83 AD 23 1C 53 1B 83
-EA 3F 34 CA 2E 24 2D 83 78 90 28 00 CB 27 32 D0
-00 02 78 90 F7 00 C6 27 78 90 F5 00 22 20 09 43
-8F 49 02 00 5B 83 09 4B 09 5C 69 49 79 80 30 00
-79 90 0A 00 05 28 79 80 07 00 79 90 0A 00 0A 28
-09 9A 08 2C 8F 49 00 00 0E 4A 2C 15 B0 12 3E C5
-2A 17 E6 3F 9F 4F 04 00 02 00 AF 4F 04 00 0E 4B
-4E 93 2B 17 0E 4C 82 4B DC 21 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 7E C6 04 48 45 52 45 00 2F 83 8F 4E
-00 00 1E 42 C6 21 30 4D B6 C4 01 2C 1A 42 C6 21
-8A 4E 00 00 A2 53 C6 21 3E 4F 30 4D EC C6 05 41
-4C 4C 4F 54 82 5E C6 21 3E 4F 30 4D A6 C7 07 45
-58 45 43 55 54 45 0A 4E 3E 4F 00 4A EA CA 87 4C
-49 54 45 52 41 4C 82 93 BE 21 0C 24 1A 42 C6 21
-A2 52 C6 21 BA 40 14 C8 00 00 8A 4E 02 00 3E 4F
-32 B0 00 02 32 C0 00 02 06 24 19 4A 02 00 8A 4E
-02 00 0E 49 EB 3F 30 4D 00 C8 05 43 4F 55 4E 54
-2F 83 1E 53 8F 4E 00 00 5E 4E FF FF 30 4D 82 4E
-C0 21 B2 4F C2 21 3E 4F 82 43 C4 21 30 4D 85 12
-20 00 87 12 6E CB 7E CB 80 C8 8C CB 3D 40 94 CB
-AE 22 64 3E 96 CB 0A 4E 3E 4F 3D 40 AC CB 21 27
-3D 40 86 CB 1A E2 BE 21 A1 27 B5 23 AE CB 3E 4F
-3D 40 86 CB B8 23 DE 53 00 00 68 4E 08 5E F8 40
-3F 00 00 00 3D 40 62 CE CB 3F 0E CB 08 45 56 41
+12 D3 F5 3F 34 40 EC C4 8F 4A 02 00 8F 49 00 00
+0E 48 30 41 82 4E C0 21 B2 4F C2 21 3E 4F 82 43
+C4 21 30 4D 3F 80 06 00 8F 4E 04 00 3E 40 54 00
+BF 40 3C 21 00 00 AF 4F 02 00 24 3C 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 A2 B3 1C 05 FD 27 B2 40 11 00
+0E 05 F2 C2 03 02 30 41 A2 B3 1C 05 FD 27 B2 40
+13 00 0E 05 F2 D2 03 02 30 41 00 00 06 41 43 43
+45 50 54 00 3C 40 A6 C5 3B 40 70 C5 2D 15 0A 4E
+2E 4F 0A 5E 3B 40 0D 00 3C 40 20 00 3D 40 9A C5
+92 B3 1C 05 05 24 18 42 0C 05 38 90 0A 00 D3 23
+21 53 3D 15 30 40 00 C4 21 52 3A 17 58 42 0C 05
+48 9C 08 2C 48 9B D0 27 78 92 11 20 2E 9F 0F 24
+1E 83 05 3C 0E 9A 03 24 CE 48 00 00 1E 53 A2 B3
+1C 05 FD 27 82 48 0E 05 30 4D 9C C5 2D 83 92 B3
+1C 05 E4 23 FC 27 82 93 DE 21 02 24 92 53 DE 21
+3E 8F 3D 41 B2 40 18 00 0A 18 30 4D 00 00 04 45
+4D 49 54 00 30 40 C8 C5 08 4E 3E 4F E0 3F BE C5
+04 45 43 48 4F 00 B2 40 82 48 94 C5 82 43 DE 21
+30 4D 00 00 06 4E 4F 45 43 48 4F 00 B2 40 30 4D
+94 C5 92 43 DE 21 30 4D 00 00 04 54 59 50 45 00
+0E 93 0F 24 1E 15 3D 40 16 C6 28 4F 7E 48 8F 48
+00 00 2F 83 D7 3F 18 C6 2D 83 91 83 02 00 F5 23
+1D 17 2F 53 3E 4F 30 4D 00 00 02 43 52 00 30 40
+32 C6 0D 12 87 12 2E C4 02 0D 0A 00 00 C6 26 C7
+00 00 03 4B 45 59 30 40 4A C6 18 42 0C 05 2F 83
+8F 4E 00 00 B0 12 06 C5 92 B3 1C 05 FD 27 1E 42
+0C 05 B0 12 18 C5 30 4D 2F 83 8F 4E 00 00 30 4D
+8F 4E FE FF AF 4F FC FF 2F 82 30 4D 0E 93 F4 23
+30 4D 2A 4F 8F 4E 00 00 0E 4A 30 4D 8F 4E FE FF
+3E 40 80 20 0E 8F 0E 11 2F 83 30 4D 2F 83 8F 4E
+00 00 3E 41 30 4D 3E 8F 3E E3 1E 53 30 4D BE 4F
+00 00 3E 4F 30 4D 1E 83 0E 7E 30 4D 0E 5E 0E 7E
+3E E3 30 4D 3E 8F 03 24 3E 43 01 2C 0E F3 30 4D
+00 00 02 3C 23 00 B2 40 B2 21 B2 21 30 4D 2A C6
+01 23 1B 42 DC 21 2C 4F 2F 83 B0 12 86 C4 BF 4F
+00 00 7A 90 0A 00 02 28 7A 50 07 00 7A 50 30 00
+92 83 B2 21 18 42 B2 21 C8 4A 00 00 30 4D E0 C6
+02 23 53 00 0D 12 87 12 E2 C6 1C C7 2D 83 09 93
+E2 23 0E 93 E0 23 3D 41 30 4D 10 C7 02 23 3E 00
+9F 42 B2 21 00 00 3E 40 B2 21 2E 8F 30 4D 00 00
+04 48 4F 4C 44 00 4A 4E 3E 4F DA 3F 00 00 04 53
+49 47 4E 00 0E 93 3E 4F 7A 40 2D 00 D1 33 30 4D
+FA C5 02 55 2E 00 08 43 2F 83 8F 4E 00 00 0E 48
+0D 12 0E 12 3E F3 06 34 BF E3 00 00 3E E3 9F 53
+00 00 0E 63 87 12 D6 C6 14 C7 9C C6 54 C7 30 C7
+00 C6 AC CA C4 C5 26 C7 E4 C5 01 2E 0E 93 E3 37
+38 43 E2 3F 4E C7 82 53 22 00 82 43 B4 21 0D 12
+87 12 24 C4 2E C4 34 CA 24 C4 22 00 F2 C7 C0 C7
+B2 40 20 00 B4 21 6E 4E 1E 53 1E B3 82 6E C6 21
+3D 41 3E 4F 30 4D 9A C7 82 2E 22 00 0D 12 87 12
+AA C7 24 C4 00 C6 34 CA 26 C7 00 00 04 57 4F 52
+44 00 3C 40 C0 21 39 4C 3A 4C 09 5A 3A 5C 28 4C
+09 9A 15 24 7E 9A FC 27 1A 83 3B 40 60 00 C8 4C
+00 00 09 9A 0C 24 7C 4A 4E 9C 09 24 18 53 4B 9C
+F6 2F 7C 90 7B 00 F3 2F 5C 82 B4 21 F0 3F 1A 82
+C2 21 82 4A C4 21 1E 42 C6 21 08 8E CE 48 00 00
+30 4D 00 00 04 46 49 4E 44 00 2F 83 0C 4E 65 4C
+74 40 80 00 3B 40 CA 21 3E 4B 0E 93 1E 24 58 4C
+01 00 78 F0 1E 00 0E 58 2E 53 1E 4E FE FF 0E 93
+F3 27 09 4E 78 49 48 C4 48 95 F7 23 0A 4C FA 99
+01 00 F3 23 1A 53 58 83 FA 23 19 B3 09 63 0C 49
+6A 4E 1E 43 4A 93 01 30 2E 83 8F 4C 00 00 35 40
+FA C4 34 40 EC C4 30 4D 62 C7 03 55 4D 2A 2C 4F
+0B 43 09 43 08 43 1A 43 0E BA 02 24 09 5C 08 6B
+0C 5C 0B 6B 0A 5A F8 2B 8F 49 00 00 0E 48 30 4D
+00 00 07 3E 4E 55 4D 42 45 52 2C 4F 0B 4E 1A 42
+DC 21 68 4C 78 80 30 00 78 90 0A 00 05 28 78 80
+07 00 78 90 0A 00 1F 28 08 9A 22 C3 1C 2C 5D 15
+1C 4F 02 00 0E 4A 3D 40 0C C9 D2 3F 0E C9 81 49
+02 00 1C 4F 04 00 1E 41 04 00 3D 40 20 C9 C8 3F
+22 C9 39 51 3E 61 8F 49 04 00 8F 4E 02 00 3A 17
+1C 53 1B 83 D6 23 8F 4C 00 00 0E 4B 30 4D 32 C0
+00 02 1B 42 DC 21 0C 43 2D 15 3D 40 8E C9 0A 4B
+3F 82 8F 4E 06 00 8F 43 04 00 8F 43 02 00 0C 4E
+7B 4C 68 4C 78 90 2D 00 04 28 BC 23 B1 43 02 00
+0B 3C 2A 43 78 80 25 00 07 24 3A 52 68 53 04 24
+3A 40 10 00 58 83 AD 23 1C 53 1B 83 EA 3F 90 C9
+2E 24 2D 83 78 90 28 00 CB 27 32 D0 00 02 78 90
+F7 00 C6 27 78 90 F5 00 22 20 09 43 8F 49 02 00
+5B 83 09 4B 09 5C 69 49 79 80 30 00 79 90 0A 00
+05 28 79 80 07 00 79 90 0A 00 0A 28 09 9A 08 2C
+8F 49 00 00 0E 4A 2C 15 B0 12 7E C4 2A 17 E6 3F
+9F 4F 04 00 02 00 AF 4F 04 00 0E 4B 4E 93 2B 17
+0E 4C 82 4B DC 21 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
+00 00 01 2C 1A 42 C6 21 8A 4E 00 00 A2 53 C6 21
+3E 4F 30 4D 2C C5 05 41 4C 4C 4F 54 82 5E C6 21
+3E 4F 30 4D 0A 4E 3E 4F 00 4A 32 CA 87 4C 49 54
+45 52 41 4C 82 93 BE 21 0C 24 1A 42 C6 21 A2 52
+C6 21 BA 40 24 C4 00 00 8A 4E 02 00 3E 4F 32 B0
+00 02 32 C0 00 02 06 24 19 4A 02 00 8A 4E 02 00
+0E 49 EB 3F 30 4D 2C C7 05 43 4F 55 4E 54 2F 83
+1E 53 8F 4E 00 00 5E 4E FF FF 30 4D 85 12 20 00
+0D 12 87 12 C4 C4 AC CA F2 C7 BC CA 3D 40 C4 CA
+C4 22 86 26 C6 CA 0A 4E 3E 4F 3D 40 DC CA 37 27
+3D 40 B6 CA 1A E2 BE 21 BD 23 AC 27 DE CA 3E 4F
+3D 40 B6 CA BF 23 DE 53 00 00 68 4E 08 5E F8 40
+3F 00 00 00 3D 40 5C CD D2 3F D0 C5 08 45 56 41
 4C 55 41 54 45 00 39 40 C0 21 3C 49 3B 49 3A 49
-3D 15 B0 12 2A C4 82 CB EA CB B2 41 C4 21 B2 41
-C2 21 B2 41 C0 21 3D 41 30 4D 85 12 BE 21 08 C5
-04 51 55 49 54 00 82 43 08 18 31 40 E0 20 B2 40
-00 20 00 20 82 43 BE 21 B0 12 2A C4 04 C8 8C C7
-7E CB 82 C7 82 CB A4 C4 0C C5 1E C8 0C 73 74 61
-63 6B 20 65 6D 70 74 79 21 00 7C CC 14 C8 30 FF
-DC CA 26 C5 1E C8 0A 46 52 41 4D 20 66 75 6C 6C
-21 00 7C CC 3C C6 1C CC FE CA 05 41 42 4F 52 54
-3F 40 80 20 D0 3F 5A CC 86 41 42 4F 52 54 22 00
-87 12 38 C8 14 C8 7C CC EC CA 2A C4 8F 93 02 00
-03 20 2F 52 3E 4F 30 4D B0 12 04 D2 B0 12 B6 C6
-92 C3 1C 05 38 40 AA 0A 39 42 03 43 19 83 FD 23
-18 83 FA 23 92 B3 1C 05 F3 23 87 12 7E D1 14 C8
-DE 21 EA C4 AC C7 1E C8 04 1B 5B 37 6D 00 D6 C7
-58 C4 40 C6 D6 CC 04 C8 1E C8 05 6C 69 6E 65 3A
-D6 C7 D0 C4 24 C6 D6 C7 1E C8 04 1B 5B 30 6D 00
-D6 C7 60 CC 00 00 83 5B 27 5D 87 12 FC CC 14 C8
-14 C8 EC CA EC CA 2A C4 E8 C8 01 27 87 12 7E CB
-80 C8 EE C8 40 C6 0A CD 2A C4 B6 CB 32 C5 81 5C
-92 42 C0 21 C4 21 30 4D E6 CC 81 5B 82 43 BE 21
-30 4D 0E CD 01 5D B2 43 BE 21 30 4D BE 4F 02 00
-3E 4F 30 4D D6 CA 82 49 53 00 87 12 FA CB EA C4
-40 C6 4E CD EA CC 14 C8 2C CD EC CA 2A C4 FC CC
-2C CD 2A C4 36 CD 09 49 4D 4D 45 44 49 41 54 45
-1A 42 B6 21 FA D0 80 00 00 00 30 4D 00 CC 88 50
-4F 53 54 50 4F 4E 45 00 87 12 7E CB 80 C8 EE C8
-58 C4 40 C6 0A CD 0C C5 40 C6 98 CD 14 C8 14 C8
-EC CA EC CA 14 C8 EC CA EC CA 2A C4 1A CD 81 3B
-82 93 BE 21 B5 27 87 12 14 C8 2A C4 EC CA 36 CE
-1C CD 2A C4 9E CD 07 3A 4E 4F 4E 41 4D 45 30 12
-DC CD 2F 83 8F 4E 00 00 1E 42 C6 21 1E B3 0E 63
-0A 4E 39 40 00 02 38 40 02 02 21 3C BA 40 87 12
-FC FF A2 83 C6 21 B2 43 BE 21 30 4D B6 CD 01 3A
-30 12 DC CD 92 B3 C6 21 A2 63 C6 21 87 12 7E CB
-80 C8 04 CE 3D 41 08 4E 7A 4E 5A D3 5A 53 0A 58
-19 42 DA 21 6E 4E 3E F0 1E 00 09 5E 3E 4F 82 48
-B6 21 82 49 B8 21 82 4A BA 21 82 4F BC 21 2A 52
-82 4A C6 21 30 41 82 9F BC 21 09 20 18 42 B6 21
-19 42 B8 21 A8 49 FE FF 89 48 00 00 30 4D 87 12
-1E C8 0F 73 74 61 63 6B 20 6D 69 73 6D 61 74 63
-68 21 88 CC CC CB 05 44 45 46 45 52 B0 12 F4 CD
-BA 40 30 40 FC FF BA 40 EA CD FE FF E3 3F 5A CB
-06 43 52 45 41 54 45 00 B0 12 F4 CD BA 40 85 12
-FC FF 8A 4A FE FF D6 3F 66 CE 05 44 4F 45 53 3E
-1A 42 BA 21 BA 40 84 12 00 00 8A 4D 02 00 3D 41
-30 4D 76 C9 05 3E 42 4F 44 59 2E 52 30 4D 80 CE
-04 43 4F 44 45 00 B0 12 F4 CD A2 82 C6 21 87 12
-0E D1 E8 D0 2A C4 C0 CE 07 43 4F 44 45 4E 4E 4D
-B0 12 C2 CD F2 3F 00 00 07 45 4E 44 43 4F 44 45
-87 12 1C D1 36 CE 2A C4 68 CC 03 41 53 4D B2 40
-EC D0 DA 21 E0 3F E8 CE 06 45 4E 44 41 53 4D 00
-87 12 F0 CE 30 D1 2A C4 00 00 05 43 4F 4C 4F 4E
-1A 42 C6 21 BA 40 87 12 00 00 A2 53 C6 21 B2 43
-BE 21 30 40 1C D1 00 00 05 4C 4F 32 48 49 1A 42
-C6 21 BA 40 B0 12 00 00 BA 40 2A C4 02 00 A2 52
-C6 21 ED 3F 56 CD 85 48 49 32 4C 4F 87 12 DC CA
-86 CF EC CA 1C CD 0E D1 E8 D0 2A C4 56 CF 82 49
-46 00 2F 83 8F 4E 00 00 1E 42 C6 21 A2 52 C6 21
-BE 40 40 C6 00 00 2E 53 30 4D 9A CE 84 45 4C 53
-45 00 A2 52 C6 21 1A 42 C6 21 BA 40 3C C6 FC FF
-8E 4A 00 00 2A 83 0E 4A 30 4D 4E C9 84 54 48 45
-4E 00 9E 42 C6 21 00 00 3E 4F 30 4D D8 CE 85 42
-45 47 49 4E 30 40 DC CA AC CF 85 55 4E 54 49 4C
-39 40 40 C6 A2 52 C6 21 1A 42 C6 21 8A 49 FC FF
-8A 4E FE FF 3E 4F 30 4D FA CE 85 41 47 41 49 4E
-39 40 3C C6 EF 3F 7A C8 85 57 48 49 4C 45 87 12
-72 CF 76 C4 2A C4 34 C8 86 52 45 50 45 41 54 00
-87 12 F0 CF B2 CF 2A C4 8C CF 82 44 4F 00 2F 83
-8F 4E 00 00 A2 53 C6 21 1E 42 C6 21 BE 40 54 C6
-FE FF A2 53 00 20 1A 42 00 20 8A 43 00 00 30 4D
-1E CB 84 4C 4F 4F 50 00 39 40 76 C6 A2 52 C6 21
-1A 42 C6 21 8A 49 FC FF 8A 4E FE FF 1E 42 00 20
-A2 83 00 20 2E 4E 0E 93 03 24 8E 4A 00 00 F6 3F
-3E 4F 30 4D 90 C6 85 2B 4C 4F 4F 50 39 40 64 C6
-E5 3F 42 D0 04 4D 4F 56 45 00 0A 4E 38 4F 39 4F
-3E 4F 0A 93 11 24 08 99 0F 24 06 2C F8 49 00 00
-18 53 1A 83 FB 23 30 4D 08 5A 09 5A 19 83 18 83
-E8 49 00 00 1A 83 FA 23 30 4D 14 C8 CA 21 F2 C4
-2A C4 84 12 BA D0 EA CF 82 D3 1A D0 FA CC 6E CF
-76 D0 96 D4 64 C8 A2 D1 BC D1 CA CF 3C D2 00 00
-68 D4 24 CD B4 CE 00 00 84 12 BA D0 B4 D9 16 DA
-68 D9 8A DA 2E D9 00 00 5E D6 00 00 24 D9 D4 D9
-86 D9 C4 D9 6E D7 00 00 00 00 66 DA E6 D0 3A 40
-0C 00 39 40 CA 21 38 40 CC 21 C6 3F 3A 40 0E 00
-39 40 CC 21 38 40 CA 21 B9 3F 82 43 CC 21 30 4D
-92 42 CA 21 DA 21 30 4D C2 D0 2A D1 30 D1 40 D1
-3A 4E 82 4A C8 21 2E 4E 82 4E C6 21 3D 40 10 00
-09 4A 08 49 29 83 18 48 FE FF 0E 98 FC 2B 89 48
-00 00 1D 83 F6 23 2A 4A 0A 93 F0 23 3E 4F 3D 41
-30 4D 6E CD 09 50 57 52 5F 53 54 41 54 45 84 12
-38 D1 0C D1 9C DA 08 D0 09 52 53 54 5F 53 54 41
-54 45 92 42 0E 18 82 D1 92 42 0C 18 84 D1 EF 3F
-74 D1 08 50 57 52 5F 48 45 52 45 00 92 42 C8 21
-82 D1 92 42 C6 21 84 D1 30 4D 88 D1 08 52 53 54
-5F 48 45 52 45 00 92 42 C8 21 0E 18 92 42 C6 21
-0C 18 EC 3F F8 CF 04 57 49 50 45 00 39 40 10 00
-29 83 B9 43 80 FF FC 23 B2 40 E0 C6 DE C6 B2 40
-46 D2 44 D2 B2 40 0C D1 0E 18 B2 40 9C DA 0C 18
-30 12 92 D1 B2 40 86 C7 84 C7 B2 40 08 C8 06 C8
-B2 40 98 C6 96 C6 B2 40 18 00 0A 18 37 40 1A C4
-36 40 92 C4 35 40 0E C4 34 40 00 C4 B2 40 0A 00
-DC 21 B2 40 20 00 B4 21 30 41 D6 D1 04 57 41 52
-4D 00 30 40 46 D2 3D 40 7A D2 92 C3 30 01 1E 42
-08 18 0E 93 11 24 D2 B3 00 02 02 20 3E E3 1E 53
-F2 D0 03 00 0A 02 3E 90 0A 00 B8 27 3E 90 16 00
-B5 2F 2E 93 84 27 8D 2F 30 4D 1E C8 06 0D 1B 5B
-37 6D 23 00 D6 C7 34 C6 1E C8 19 46 61 73 74 46
-6F 72 74 68 20 C2 A9 4A 2E 4D 2E 54 68 6F 6F 72
-65 6E 73 20 D6 C7 14 C8 30 FF DC CA B8 C4 24 C6
-1E C8 0A 62 79 74 65 73 20 66 72 65 65 00 3C C6
-D6 CC BE CF 04 43 4F 4C 44 00 92 B3 0A 05 FD 23
-B2 40 04 A5 20 01 7A D2 B2 40 88 5A CC 01 B2 D0
-00 08 04 02 B2 D3 06 02 B2 43 02 02 B2 D0 FF FE
-26 02 B2 43 22 02 B2 43 42 02 B2 D3 46 02 B2 43
-62 02 B2 D3 66 02 B2 40 00 A5 60 01 B2 40 FF 1E
-80 01 B2 40 B0 00 82 01 B2 40 1E 00 84 01 39 40
-10 00 82 43 88 01 92 D2 5E 01 08 18 38 40 59 14
-18 83 FE 23 19 83 FA 23 39 40 00 08 29 83 89 43
-00 20 FC 23 39 40 1E 00 29 83 B9 40 D8 D2 E2 FF
-FB 23 B2 40 26 C7 EC FF B2 40 81 00 00 05 92 42
-02 18 06 05 92 42 04 18 08 05 92 C3 00 05 92 D3
-1A 05 3F 40 80 20 31 40 E0 20 30 12 42 D2 4B 3F
-C4 D2 07 43 4F 4D 50 41 52 45 0C 4E 38 4F 3B 4F
-39 4F 0E 4B 0E 5C 0C 24 1B 83 07 30 1C 83 07 30
-19 53 F9 98 FF FF F5 27 02 2C 3E 43 30 4D 1E 43
-30 4D EE CD 86 5B 54 48 45 4E 5D 00 30 4D B4 D3
-86 5B 45 4C 53 45 5D 00 87 12 14 C8 00 00 C6 C4
-7E CB 80 C8 60 CB 34 C4 40 C6 2A D4 44 C4 1E C8
-06 5B 54 48 45 4E 5D 00 8A D3 4A C6 FA D3 F8 C7
-D0 C4 58 C4 4A C6 D0 D3 2A C4 44 C4 1E C8 06 5B
-45 4C 53 45 5D 00 8A D3 4A C6 18 D4 F8 C7 D0 C4
-58 C4 4A C6 CE D3 2A C4 1E C8 04 5B 49 46 5D 00
-8A D3 4A C6 D0 D3 3C C6 CE D3 F8 C7 1E C8 05 0D
-0A 6B 6F 20 D6 C7 8C C7 6E CB 3C C6 D0 D3 C0 D3
-84 5B 49 46 5D 00 0E 93 3E 4F BE 27 30 4D 40 D4
-89 5B 44 45 46 49 4E 45 44 5D 87 12 7E CB 80 C8
-EE C8 6A C4 2A C4 50 D4 8B 5B 55 4E 44 45 46 49
-4E 45 44 5D 87 12 7E CB 80 C8 EE C8 6A C4 00 C5
-2A C4 84 D4 3D 41 B2 4E 0E 18 A2 4E 0C 18 3E 4F
-30 40 92 D1 84 D0 06 4D 41 52 4B 45 52 00 B0 12
-F4 CD BA 40 84 12 FC FF BA 40 82 D4 FE FF 9A 42
-C8 21 00 00 28 83 8A 48 02 00 A2 52 C6 21 30 40
-3C CE 1C 15 B0 12 2A C4 80 C8 EE C8 4A C6 D8 D4
-E2 C9 40 C6 0A CD F2 D4 DA D4 39 4E 39 80 86 12
-08 24 19 53 02 20 2E 4E 04 3C 2E 53 19 53 01 24
-2E 82 1B 17 30 41 3E 40 28 00 B0 12 C2 D4 19 42
-C6 21 A2 53 C6 21 89 4E 00 00 3E 40 29 00 1C 15
-12 12 C4 21 92 53 C4 21 B0 12 2A C4 80 C8 E2 C9
-40 C6 30 D5 26 D5 21 53 3E 90 10 00 7D 2D E1 2B
-32 D5 B2 41 C4 21 DD 3F 87 12 7E CB 74 C8 40 D5
-0C 43 1B 42 C6 21 A2 53 C6 21 6A 4E 3E 4F 7A 90
-23 00 27 20 92 53 C4 21 B0 12 C2 D4 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 C6 21 A2 53 C6 21 89 4E 00 00 3E 4F 3D 41
-30 4D 7A 90 26 00 07 20 3C 40 10 02 92 53 C4 21
-B0 12 C2 D4 ED 3F 7A 90 40 00 16 20 3C 40 20 00
-92 53 C4 21 B0 12 0E D5 0C 20 3C 50 10 00 3E 40
-2B 00 B0 12 0E D5 92 92 C0 21 C4 21 02 24 92 53
-C4 21 8E 10 0C 5E DA 3F B0 12 0E D5 FA 23 3C 50
-10 00 B0 12 F6 D4 EF 3F 0C 43 1B 42 C6 21 A2 53
-C6 21 87 12 7E CB 74 C8 0A D6 FE 90 26 00 00 00
-3E 40 20 00 03 20 3C 50 82 00 C8 3F B0 12 0E D5
-E1 23 3C 50 80 00 B0 12 F6 D4 DC 3F D6 C6 04 52
-45 54 49 00 87 12 14 C8 00 13 EC CA 2A C4 14 C8
-2C 00 38 D5 02 D6 48 D6 09 4B 2E 4E 0E DC A4 3F
-38 CF 03 4D 4F 56 84 12 3E D6 00 40 52 D6 05 4D
-4F 56 2E 42 84 12 3E D6 40 40 00 00 03 41 44 44
-84 12 3E D6 00 50 6C D6 05 41 44 44 2E 42 84 12
-3E D6 40 50 78 D6 04 41 44 44 43 00 84 12 3E D6
-00 60 86 D6 06 41 44 44 43 2E 42 00 84 12 3E D6
-40 60 2E D6 04 53 55 42 43 00 84 12 3E D6 00 70
-A4 D6 06 53 55 42 43 2E 42 00 84 12 3E D6 40 70
-B2 D6 03 53 55 42 84 12 3E D6 00 80 C2 D6 05 53
-55 42 2E 42 84 12 3E D6 40 80 1A CF 03 43 4D 50
-84 12 3E D6 00 90 DC D6 05 43 4D 50 2E 42 84 12
-3E D6 40 90 08 CF 04 44 41 44 44 00 84 12 3E D6
-00 A0 F6 D6 06 44 41 44 44 2E 42 00 84 12 3E D6
-40 A0 E8 D6 03 42 49 54 84 12 3E D6 00 B0 14 D7
-05 42 49 54 2E 42 84 12 3E D6 40 B0 20 D7 03 42
-49 43 84 12 3E D6 00 C0 2E D7 05 42 49 43 2E 42
-84 12 3E D6 40 C0 3A D7 03 42 49 53 84 12 3E D6
-00 D0 48 D7 05 42 49 53 2E 42 84 12 3E D6 40 D0
-00 00 03 58 4F 52 84 12 3E D6 00 E0 62 D7 05 58
-4F 52 2E 42 84 12 3E D6 40 E0 94 D6 03 41 4E 44
-84 12 3E D6 00 F0 7C D7 05 41 4E 44 2E 42 84 12
-3E D6 40 F0 7E CB 38 D5 9A D7 0A 4C 3C F0 70 00
-8A 10 3A F0 0F 00 0C DA 4F 3F CE D6 03 52 52 43
-84 12 94 D7 00 10 AC D7 05 52 52 43 2E 42 84 12
-94 D7 40 10 B8 D7 04 53 57 50 42 00 84 12 94 D7
-80 10 C6 D7 03 52 52 41 84 12 94 D7 00 11 D4 D7
-05 52 52 41 2E 42 84 12 94 D7 40 11 E0 D7 03 53
-58 54 84 12 94 D7 80 11 00 00 04 50 55 53 48 00
-84 12 94 D7 00 12 FA D7 06 50 55 53 48 2E 42 00
-84 12 94 D7 40 12 54 D7 04 43 41 4C 4C 00 84 12
-94 D7 80 12 1A 53 0E 4A 87 12 34 C6 1E C8 0D 6F
-75 74 20 6F 66 20 62 6F 75 6E 64 73 88 CC 7E CB
-74 C8 44 D8 92 53 C4 21 3E 40 2C 00 B0 12 2A C4
-80 C8 E2 C9 40 C6 0A CD F8 D5 5C D8 0A 4E 3E 4F
-1A 83 E0 33 29 4E 59 0E 0A 28 08 4C 59 0A 01 28
-0C 8A 08 8A 38 90 10 00 D5 2F 5A 0E 94 3F 2A 92
-D1 2F 8A 10 5A 06 8F 3F EE D7 04 52 52 43 4D 00
-84 12 3E D8 50 00 8A D8 04 52 52 41 4D 00 84 12
-3E D8 50 01 98 D8 04 52 4C 41 4D 00 84 12 3E D8
-50 02 A6 D8 04 52 52 55 4D 00 84 12 3E D8 50 03
-08 D8 05 50 55 53 48 4D 84 12 3E D8 00 15 C2 D8
-04 50 4F 50 4D 00 84 12 3E D8 00 17 B4 D8 03 53
-3E 3D 85 12 00 38 DE D8 02 53 3C 00 85 12 00 34
-D0 D8 03 30 3E 3D 85 12 00 30 F2 D8 02 30 3C 00
-85 12 00 30 00 00 02 55 3C 00 85 12 00 2C 06 D9
-03 55 3E 3D 85 12 00 28 FC D8 03 30 3C 3E 85 12
-00 24 1A D9 02 30 3D 00 85 12 00 20 00 00 02 49
-46 00 1A 42 C6 21 8A 4E 00 00 A2 53 C6 21 0E 4A
-30 4D 10 D9 04 54 48 45 4E 00 1A 42 C6 21 08 4E
-3E 4F 09 48 29 53 0A 89 0A 11 3A 90 00 02 63 2F
-88 DA 00 00 30 4D 04 D7 04 45 4C 53 45 00 1A 42
-C6 21 BA 40 00 3C 00 00 A2 53 C6 21 2F 83 8F 4A
-00 00 E3 3F 44 D9 05 55 4E 54 49 4C 3A 4F 08 4E
-3E 4F 19 42 C6 21 2A 83 0A 89 0A 11 3A 90 00 FE
-42 3B 3A F0 FF 03 08 DA 89 48 00 00 A2 53 C6 21
-30 4D 88 D7 05 41 47 41 49 4E 0A 4E 38 40 00 3C
-E7 3F 00 00 05 57 48 49 4C 45 87 12 32 D9 76 C4
-2A C4 E8 D8 06 52 45 50 45 41 54 00 87 12 BA D9
-4A D9 2A C4 E6 D9 3D 41 08 4E 3E 4F 2A 48 B2 92
-C4 21 CD 2F 98 42 C6 21 00 00 30 4D 18 D8 03 42
-57 31 84 12 E4 D9 00 00 FE D9 03 42 57 32 84 12
-E4 D9 00 00 0A DA 03 42 57 33 84 12 E4 D9 00 00
-22 DA 3D 41 1A 42 C6 21 28 4E B2 92 C4 21 90 2B
-BA 4F 00 00 A2 53 C6 21 8E 4A 00 00 3E 4F 30 4D
-00 00 03 46 57 31 84 12 20 DA 00 00 42 DA 03 46
-57 32 84 12 20 DA 00 00 4E DA 03 46 57 33 84 12
-20 DA 00 00 00 00 05 3F 47 4F 54 4F 3E 90 00 30
-07 24 3E E0 00 04 3E B0 00 10 02 24 3E E0 00 08
-87 12 FC CC 16 CB 2A C4 5A DA 04 47 4F 54 4F 00
-2F 83 8F 4E 00 00 3E 40 00 3C F2 3F
+3D 15 87 12 B0 CA 18 CB B2 41 C4 21 B2 41 C2 21
+B2 41 C0 21 3D 41 30 4D 85 12 BE 21 00 00 04 51
+55 49 54 00 82 43 08 18 31 40 E0 20 B2 40 00 20
+00 20 82 43 BE 21 87 12 2E C6 D4 C4 AC CA C4 C5
+B0 CA 8C C6 BC C6 2E C4 0C 73 74 61 63 6B 20 65
+6D 70 74 79 21 00 AA CB 24 C4 40 FF 66 CE C4 C6
+2E C4 0A 46 52 41 4D 20 66 75 6C 6C 21 00 AA CB
+48 C4 48 CB 46 CA 05 41 42 4F 52 54 3F 40 80 20
+D1 3F 86 CB 86 41 42 4F 52 54 22 00 0D 12 87 12
+AA C7 24 C4 AA CB 34 CA 26 C7 8F 93 02 00 03 20
+2F 52 3E 4F 30 4D B0 12 D2 CF B0 12 06 C5 92 C3
+1C 05 18 42 06 18 39 40 20 00 19 83 FE 23 18 83
+FA 23 92 B3 1C 05 F3 23 0D 12 87 12 4C CF 24 C4
+DE 21 02 C5 D6 C5 2E C4 04 1B 5B 37 6D 00 00 C6
+7C C6 4C C4 04 CC 2E C6 2E C4 05 6C 69 6E 65 3A
+00 C6 66 C7 00 C6 2E C4 04 1B 5B 30 6D 00 00 C6
+8C CB 00 00 83 5B 27 5D 0D 12 87 12 2C CC 24 C4
+24 C4 34 CA 34 CA 26 C7 44 C8 01 27 0D 12 87 12
+AC CA F2 C7 4A C8 4C C4 3C CC 26 C7 E6 CA D2 C6
+81 5C 92 42 C0 21 C4 21 30 4D 14 CC 81 5B 82 43
+BE 21 30 4D 40 CC 01 5D B2 43 BE 21 30 4D 2E CB
+88 50 4F 53 54 50 4F 4E 45 00 0D 12 87 12 AC CA
+F2 C7 4A C8 7C C6 4C C4 3C CC BC C6 4C C4 8C CC
+24 C4 24 C4 34 CA 34 CA 24 C4 34 CA 34 CA 26 C7
+40 C7 09 49 4D 4D 45 44 49 41 54 45 1A 42 B6 21
+FA D0 80 00 00 00 30 4D 4C CC 01 3A 30 12 F4 CC
+92 B3 C6 21 A2 63 C6 21 0D 12 87 12 AC CA F2 C7
+C2 CC 3D 41 08 4E 7A 4E 5A D3 5A 53 0A 58 19 42
+DA 21 6E 4E 3E F0 1E 00 09 5E 3E 4F 82 48 B6 21
+82 49 B8 21 82 4A BA 21 82 4F BC 21 2A 52 82 4A
+C6 21 30 41 BA 40 0D 12 FC FF BA 40 87 12 FE FF
+B2 43 BE 21 30 4D AA CC 07 3A 4E 4F 4E 41 4D 45
+30 12 F4 CC 2F 83 8F 4E 00 00 1E 42 C6 21 1E B3
+0E 63 0A 4E 39 40 10 02 38 40 12 02 D7 3F 82 9F
+BC 21 09 20 18 42 B6 21 19 42 B8 21 A8 49 FE FF
+89 48 00 00 30 4D 0D 12 87 12 2E C4 0F 73 74 61
+63 6B 20 6D 69 73 6D 61 74 63 68 21 B6 CB 08 CD
+81 3B 82 93 BE 21 6D 27 0D 12 87 12 24 C4 26 C7
+34 CA 2E CD 4E CC 26 C7 98 CA 06 43 52 45 41 54
+45 00 B0 12 B0 CC BA 40 85 12 FC FF 8A 4A FE FF
+D5 3F FC CA 05 44 4F 45 53 3E 1A 42 BA 21 BA 40
+84 12 00 00 8A 4D 02 00 3D 41 30 4D 7A CD 04 43
+4F 44 45 00 B0 12 B0 CC A2 82 C6 21 0D 12 87 12
+C6 CE A0 CE 26 C7 AE CD 07 43 4F 44 45 4E 4E 4D
+30 12 B8 CD 9F 3F 00 00 07 45 4E 44 43 4F 44 45
+0D 12 87 12 2E CD E0 CE 26 C7 94 CB 03 41 53 4D
+B2 40 A4 CE DA 21 DE 3F D8 CD 06 45 4E 44 41 53
+4D 00 0D 12 87 12 E0 CD FE CE 26 C7 00 00 05 43
+4F 4C 4F 4E 1A 42 C6 21 BA 40 0D 12 00 00 BA 40
+87 12 02 00 A2 52 C6 21 B2 43 BE 21 30 40 E0 CE
+00 00 05 4C 4F 32 48 49 A2 83 C6 21 1A 42 C6 21
+EE 3F 92 CC 85 48 49 32 4C 4F 0D 12 87 12 66 CE
+5A CE 34 CA 4E CC BC CD 26 C7 2E 53 30 4D C8 CD
+85 42 45 47 49 4E 2F 83 8F 4E 00 00 1E 42 C6 21
+30 4D 24 C4 CA 21 AE C6 26 C7 84 12 72 CE EC CD
+96 D0 94 CD 2A CC 44 CE 42 C6 5C CA D8 C7 70 CF
+8A CF AA C8 0A D0 00 00 14 D2 56 CC D2 C8 00 00
+84 12 72 CE 46 D7 AC D7 FA D6 FC D7 C0 D6 00 00
+F0 D3 00 00 B6 D6 68 D7 18 D7 56 D7 00 D5 00 00
+00 00 18 D8 9E CE 3A 40 0C 00 39 40 D6 21 08 49
+28 53 19 83 18 83 E8 49 00 00 1A 83 FA 23 30 4D
+3A 40 0E 00 38 40 CA 21 09 48 29 53 F8 49 00 00
+18 53 1A 83 FB 23 30 4D 82 43 CC 21 30 4D 92 42
+CA 21 DA 21 30 4D 7A CE F8 CE FE CE 0E CF 3A 4E
+82 4A C8 21 2E 4E 82 4E C6 21 3D 40 10 00 09 4A
+08 49 29 83 18 48 FE FF 0E 98 FC 2B 89 48 00 00
+1D 83 F6 23 2A 4A 0A 93 F0 23 3E 4F 3D 41 30 4D
+60 CC 09 50 57 52 5F 53 54 41 54 45 84 12 06 CF
+C4 CE 34 D8 A6 C7 09 52 53 54 5F 53 54 41 54 45
+92 42 0E 18 50 CF 92 42 0C 18 52 CF EF 3F 42 CF
+08 50 57 52 5F 48 45 52 45 00 92 42 C8 21 50 CF
+92 42 C6 21 52 CF 30 4D 56 CF 08 52 53 54 5F 48
+45 52 45 00 92 42 C8 21 0E 18 92 42 C6 21 0C 18
+EC 3F EC C7 04 57 49 50 45 00 39 40 10 00 29 83
+B9 43 80 FF FC 23 B2 40 04 C4 02 C4 B2 40 14 D0
+12 D0 B2 40 C4 CE 0E 18 B2 40 34 D8 0C 18 30 12
+60 CF B2 40 C8 C5 C6 C5 B2 40 32 C6 30 C6 B2 40
+4A C6 48 C6 B2 40 18 00 0A 18 37 40 26 C7 36 40
+9C C6 35 40 FA C4 34 40 EC C4 B2 40 0A 00 DC 21
+B2 40 20 00 B4 21 30 41 A4 CF 04 57 41 52 4D 00
+30 40 14 D0 3D 40 4C D0 92 C3 30 01 1E 42 08 18
+0E 93 13 24 D2 B3 00 02 02 20 3E E3 1E 53 F2 D0
+03 00 0A 02 92 D3 1A 05 3E 90 0A 00 B6 27 3E 90
+16 00 B3 2F 2E 93 82 27 8B 2F 30 4D 2E C4 07 0D
+0A 1B 5B 37 6D 23 00 C6 9C C7 2E C4 19 46 61 73
+74 46 6F 72 74 68 20 C2 A9 4A 2E 4D 2E 54 68 6F
+6F 72 65 6E 73 20 00 C6 24 C4 40 FF 66 CE A6 C6
+66 C7 2E C4 0A 62 79 74 65 73 20 66 72 65 65 00
+48 C4 04 CC 60 CE 04 43 4F 4C 44 00 92 B3 0A 05
+FD 23 B2 40 04 A5 20 01 31 40 E0 20 B2 40 88 5A
+CC 01 B2 D3 06 02 B2 D3 02 02 F2 D2 05 02 B2 D0
+FF FE 26 02 B2 43 22 02 B2 43 42 02 B2 D3 46 02
+B2 43 62 02 B2 D3 66 02 B2 40 00 A5 60 01 B2 40
+FF 1E 80 01 B2 40 B0 00 82 01 B2 40 1E 00 84 01
+39 40 10 00 82 43 88 01 92 D2 5E 01 08 18 38 40
+59 14 18 83 FE 23 19 83 FA 23 39 40 00 08 29 83
+89 43 00 20 FC 23 B0 12 0E C4 B2 40 81 00 00 05
+92 42 02 18 06 05 92 42 04 18 08 05 92 C3 00 05
+3F 40 80 20 30 12 10 D0 55 3F 60 CD 86 5B 54 48
+45 4E 5D 00 30 4D 0C 4E 38 4F 3B 4F 39 4F 0E 4B
+0E 5C 10 24 1B 83 06 30 1C 83 04 30 19 53 F9 98
+FF FF F5 27 2D 4D 3E 4F 30 4D 2F 53 9F 83 00 00
+F9 23 2F 53 2D 53 F7 3F 3C D1 86 5B 45 4C 53 45
+5D 00 0D 12 87 12 24 C4 00 00 AA C6 AC CA F2 C7
+9E CA 68 C6 4C C4 D4 D1 70 C6 2E C4 06 5B 54 48
+45 4E 5D 00 46 D1 AE D1 6A D1 8C D1 26 C7 70 C6
+2E C4 06 5B 45 4C 53 45 5D 00 46 D1 C4 D1 6A D1
+8A D1 26 C7 2E C4 04 5B 49 46 5D 00 46 D1 8C D1
+48 C4 8A D1 22 C6 2E C4 05 0D 0A 6B 6F 20 00 C6
+D4 C4 C4 C4 48 C4 8C D1 7A D1 84 5B 49 46 5D 00
+0E 93 3E 4F C6 27 30 4D EA D1 89 5B 44 45 46 49
+4E 45 44 5D 0D 12 87 12 AC CA F2 C7 4A C8 2C CA
+26 C7 FA D1 8B 5B 55 4E 44 45 46 49 4E 45 44 5D
+0D 12 87 12 04 D2 28 D2 3D 41 30 40 B6 C6 38 40
+C0 21 0A 4E 39 48 2E 48 09 5E 1E 52 C4 21 09 9E
+03 24 7A 9E FC 27 1E 83 0A 4E 2A 88 82 4A C4 21
+30 4D 1C 15 87 12 F2 C7 4A C8 42 C4 66 D2 3E C9
+4C C4 3C CC 80 D2 68 D2 39 4E 39 80 86 12 08 24
+19 53 02 20 2E 4E 04 3C 2E 53 19 53 01 24 2E 82
+1B 17 30 41 3E 40 28 00 B0 12 52 D2 19 42 C6 21
+A2 53 C6 21 89 4E 00 00 3E 40 29 00 1C 15 12 12
+C4 21 92 53 C4 21 87 12 F2 C7 3E C9 4C C4 BC D2
+B2 D2 21 53 3E 90 10 00 80 2D E2 2B BE D2 B2 41
+C4 21 DE 3F 0D 12 87 12 AC CA 2E D2 CE D2 0C 43
+1B 42 C6 21 A2 53 C6 21 6A 4E 3E 4F 7A 90 23 00
+27 20 92 53 C4 21 B0 12 52 D2 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
+C6 21 A2 53 C6 21 89 4E 00 00 3E 4F 3D 41 30 4D
+7A 90 26 00 07 20 3C 40 10 02 92 53 C4 21 B0 12
+52 D2 ED 3F 7A 90 40 00 16 20 3C 40 20 00 92 53
+C4 21 B0 12 9C D2 0C 20 3C 50 10 00 3E 40 2B 00
+B0 12 9C D2 92 92 C0 21 C4 21 02 24 92 53 C4 21
+8E 10 0C 5E DA 3F B0 12 9C D2 FA 23 3C 50 10 00
+B0 12 84 D2 EF 3F 0C 43 1B 42 C6 21 A2 53 C6 21
+0D 12 87 12 AC CA 2E D2 9A D3 FE 90 26 00 00 00
+3E 40 20 00 03 20 3C 50 82 00 C7 3F B0 12 9C D2
+E0 23 3C 50 80 00 B0 12 84 D2 DB 3F 00 00 04 52
+45 54 49 00 0D 12 87 12 24 C4 00 13 34 CA 26 C7
+24 C4 2C 00 C4 D2 90 D3 DA D3 09 4B 2E 4E 0E DC
+A2 3F 32 CE 03 4D 4F 56 84 12 D0 D3 00 40 E4 D3
+05 4D 4F 56 2E 42 84 12 D0 D3 40 40 00 00 03 41
+44 44 84 12 D0 D3 00 50 FE D3 05 41 44 44 2E 42
+84 12 D0 D3 40 50 0A D4 04 41 44 44 43 00 84 12
+D0 D3 00 60 18 D4 06 41 44 44 43 2E 42 00 84 12
+D0 D3 40 60 BE D3 04 53 55 42 43 00 84 12 D0 D3
+00 70 36 D4 06 53 55 42 43 2E 42 00 84 12 D0 D3
+40 70 44 D4 03 53 55 42 84 12 D0 D3 00 80 54 D4
+05 53 55 42 2E 42 84 12 D0 D3 40 80 0E CE 03 43
+4D 50 84 12 D0 D3 00 90 6E D4 05 43 4D 50 2E 42
+84 12 D0 D3 40 90 FA CD 04 44 41 44 44 00 84 12
+D0 D3 00 A0 88 D4 06 44 41 44 44 2E 42 00 84 12
+D0 D3 40 A0 7A D4 03 42 49 54 84 12 D0 D3 00 B0
+A6 D4 05 42 49 54 2E 42 84 12 D0 D3 40 B0 B2 D4
+03 42 49 43 84 12 D0 D3 00 C0 C0 D4 05 42 49 43
+2E 42 84 12 D0 D3 40 C0 CC D4 03 42 49 53 84 12
+D0 D3 00 D0 DA D4 05 42 49 53 2E 42 84 12 D0 D3
+40 D0 00 00 03 58 4F 52 84 12 D0 D3 00 E0 F4 D4
+05 58 4F 52 2E 42 84 12 D0 D3 40 E0 26 D4 03 41
+4E 44 84 12 D0 D3 00 F0 0E D5 05 41 4E 44 2E 42
+84 12 D0 D3 40 F0 AC CA C4 D2 2C D5 0A 4C 3C F0
+70 00 8A 10 3A F0 0F 00 0C DA 4F 3F 60 D4 03 52
+52 43 84 12 26 D5 00 10 3E D5 05 52 52 43 2E 42
+84 12 26 D5 40 10 4A D5 04 53 57 50 42 00 84 12
+26 D5 80 10 58 D5 03 52 52 41 84 12 26 D5 00 11
+66 D5 05 52 52 41 2E 42 84 12 26 D5 40 11 72 D5
+03 53 58 54 84 12 26 D5 80 11 00 00 04 50 55 53
+48 00 84 12 26 D5 00 12 8C D5 06 50 55 53 48 2E
+42 00 84 12 26 D5 40 12 E6 D4 04 43 41 4C 4C 00
+84 12 26 D5 80 12 1A 53 0E 4A 0D 12 87 12 9C C7
+2E C4 0D 6F 75 74 20 6F 66 20 62 6F 75 6E 64 73
+B6 CB AC CA 2E D2 D8 D5 92 53 C4 21 3E 40 2C 00
+87 12 F2 C7 3E C9 4C C4 3C CC 86 D3 EE D5 0A 4E
+3E 4F 1A 83 E0 33 29 4E 59 0E 0A 28 08 4C 59 0A
+01 28 0C 8A 08 8A 38 90 10 00 D5 2F 5A 0E 94 3F
+2A 92 D1 2F 8A 10 5A 06 8F 3F 80 D5 04 52 52 43
+4D 00 84 12 D2 D5 50 00 1C D6 04 52 52 41 4D 00
+84 12 D2 D5 50 01 2A D6 04 52 4C 41 4D 00 84 12
+D2 D5 50 02 38 D6 04 52 52 55 4D 00 84 12 D2 D5
+50 03 9A D5 05 50 55 53 48 4D 84 12 D2 D5 00 15
+54 D6 04 50 4F 50 4D 00 84 12 D2 D5 00 17 46 D6
+03 53 3E 3D 85 12 00 38 70 D6 02 53 3C 00 85 12
+00 34 62 D6 03 30 3E 3D 85 12 00 30 84 D6 02 30
+3C 00 85 12 00 30 00 00 02 55 3C 00 85 12 00 2C
+98 D6 03 55 3E 3D 85 12 00 28 8E D6 03 30 3C 3E
+85 12 00 24 AC D6 02 30 3D 00 85 12 00 20 00 00
+02 49 46 00 1A 42 C6 21 8A 4E 00 00 A2 53 C6 21
+0E 4A 30 4D A2 D6 04 54 48 45 4E 00 1A 42 C6 21
+08 4E 3E 4F 09 48 29 53 0A 89 0A 11 3A 90 00 02
+63 2F 88 DA 00 00 30 4D 96 D4 04 45 4C 53 45 00
+1A 42 C6 21 BA 40 00 3C 00 00 A2 53 C6 21 2F 83
+8F 4A 00 00 E3 3F D6 D6 05 55 4E 54 49 4C 3A 4F
+08 4E 3E 4F 19 42 C6 21 2A 83 0A 89 0A 11 3A 90
+00 FE 42 3B 3A F0 FF 03 08 DA 89 48 00 00 A2 53
+C6 21 30 4D 1A D5 05 41 47 41 49 4E 0A 4E 38 40
+00 3C E7 3F 00 00 05 57 48 49 4C 45 0D 12 87 12
+C4 D6 82 C6 26 C7 7A D6 06 52 45 50 45 41 54 00
+0D 12 87 12 4C D7 DC D6 26 C7 7C D7 3D 41 08 4E
+3E 4F 2A 48 B2 92 C4 21 CB 2F 98 42 C6 21 00 00
+30 4D AA D5 03 42 57 31 84 12 7A D7 00 00 94 D7
+03 42 57 32 84 12 7A D7 00 00 A0 D7 03 42 57 33
+84 12 7A D7 00 00 B8 D7 3D 41 1A 42 C6 21 28 4E
+B2 92 C4 21 8E 2B BA 4F 00 00 A2 53 C6 21 8E 4A
+00 00 3E 4F 30 4D 00 00 03 46 57 31 84 12 B6 D7
+00 00 D8 D7 03 46 57 32 84 12 B6 D7 00 00 E4 D7
+03 46 57 33 84 12 B6 D7 00 00 F0 D7 04 47 4F 54
+4F 00 2F 83 8F 4E 00 00 3E 40 00 3C 0D 12 87 12
+2C CC 54 CA 26 C7 00 00 05 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
 @FFFE
-D8 D2
+A8 D0
 q
index 92dadc0..97ea501 100644 (file)
 @1800
-10 00 04 00 51 55 40 1F 05 00 18 00 9C DA 0C D1
-2D 01 6B B0 B6 C6 C8 C6
+10 00 04 00 51 55 40 1F 05 00 18 00 34 D8 C4 CE
+2E 01 6B B0 06 C5 18 C5 10 D0
 @C400
-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 3A 41 0D 12 0D 4A
-30 4D 00 00 04 45 58 49 54 00 3D 41 30 4D 24 C4
-03 44 55 50 2F 83 8F 4E 00 00 30 4D 00 00 04 32
-44 55 50 00 8F 4E FE FF AF 4F FC FF 2F 82 30 4D
-00 00 04 3F 44 55 50 00 0E 93 EC 23 30 4D 30 C4
-04 44 52 4F 50 00 3E 4F 30 4D 2F 53 30 4D 3E C4
-04 53 57 41 50 00 2A 4F 8F 4E 00 00 0E 4A 30 4D
-52 C4 02 3E 52 00 0E 12 3E 4F 30 4D 70 C4 02 52
-3E 00 2F 83 8F 4E 00 00 3E 41 30 4D 60 C4 05 44
-45 50 54 48 8F 4E FE FF 3E 40 80 20 0E 8F 0E 11
-2F 83 30 4D 00 00 01 2D 3E 8F 3E E3 1E 53 30 4D
-00 00 02 31 2B 00 1E 53 30 4D C2 C4 02 31 2D 00
-1E 83 30 4D 3E F3 06 34 BF E3 00 00 3E E3 9F 53
-00 00 0E 63 30 4D 00 00 01 40 2E 4E 30 4D E8 C4
-01 21 BE 4F 00 00 3E 4F 30 4D CC C4 02 30 3D 00
-1E 83 0E 7E 30 4D FC C4 02 30 3C 00 0E 5E 0E 7E
-3E E3 30 4D 00 00 01 3D 3E 8F FA 27 0E F3 30 4D
-00 00 02 55 3C 00 3E 8F F9 2B 01 24 3E 43 30 4D
-16 C5 02 3C 23 00 B2 40 B2 21 B2 21 30 4D 0B 4E
+30 40 04 C4 B0 12 06 C5 12 D2 0A 18 F9 3F 39 40
+1E 00 29 83 B9 40 A8 D0 E2 FF FB 23 B2 40 68 C5
+EC FF 30 41 2F 83 8F 4E 00 00 3E 4D 30 4D 2F 82
+8F 4E 02 00 7E 4D 8F 4D 00 00 0D 5E 1D B3 0D 63
+30 4D 0E 93 3E 4F 05 24 2D 4D 30 4D 0E 93 3E 4F
+FB 27 2D 53 30 4D 39 40 00 80 39 8F 08 4E 3E 4F
+08 59 19 15 30 4D 81 5E 00 00 3E 4F 32 B0 00 01
+EB 27 21 52 2D 53 30 4D 91 53 00 00 F7 3F 0B 4E
 1C 4F 02 00 2E 4F 0A 43 34 40 20 00 0E 93 04 20
 04 11 0E 4C 0C 43 09 43 0A 9B 01 28 0A 8B 09 69
 08 68 14 83 07 30 0C 5C 0E 6E 0A 6A F5 2B 0A 8B
-12 D3 F5 3F 34 40 00 C4 8F 4A 02 00 8F 49 00 00
-0E 48 30 41 00 00 01 23 1B 42 DC 21 2C 4F 2F 83
-B0 12 46 C5 BF 4F 00 00 7A 90 0A 00 02 28 7A 50
-07 00 7A 50 30 00 92 83 B2 21 18 42 B2 21 C8 4A
-00 00 30 4D 86 C5 02 23 53 00 87 12 88 C5 C0 C5
-2D 83 09 93 E3 23 0E 93 E1 23 3D 41 30 4D B6 C5
-02 23 3E 00 9F 42 B2 21 00 00 3E 40 B2 21 2E 8F
-30 4D 00 00 04 48 4F 4C 44 00 0A 4E 3E 4F DB 3F
-8E C4 04 53 49 47 4E 00 0E 93 3E 4F 3A 40 2D 00
-D2 33 30 4D 87 12 36 C5 34 C4 86 C4 D4 C4 BA C5
-92 C4 F8 C5 D4 C5 D6 C7 7E CB 82 C7 2A C4 22 C5
-02 55 2E 00 08 43 2F 83 8F 4E 00 00 0E 48 EA 3F
-00 00 01 2E 0E 93 F6 37 38 43 F5 3F 2D 4D 30 4D
-0E 93 3E 4F FB 27 2D 53 30 4D 0E 93 3E 4F F6 23
-2D 53 30 4D 39 40 00 80 39 8F 08 4E 3E 4F 08 59
-19 15 30 4D 81 5E 00 00 3E 4F 32 B0 00 01 E6 27
-2D 53 21 52 30 4D 91 53 00 00 F7 3F E4 C5 01 49
-2F 83 8F 4E 00 00 2E 41 1E 81 02 00 30 4D 00 00
-03 4B 45 59 30 40 98 C6 18 42 0C 05 2F 83 8F 4E
-00 00 B0 12 B6 C6 92 B3 1C 05 FD 27 1E 42 0C 05
-B0 12 C8 C6 30 4D A2 B3 1C 05 FD 27 B2 40 11 00
-0E 05 F2 C2 03 02 30 41 B2 40 13 00 0E 05 F2 D2
-03 02 30 41 00 00 05 53 4C 45 45 50 30 40 E0 C6
-B0 12 B6 C6 12 D2 0A 18 F9 3F F0 C4 06 41 43 43
-45 50 54 00 3C 40 64 C7 3B 40 2E C7 2D 15 0A 4E
-2E 4F 0A 5E 3B 40 0D 00 3C 40 20 00 3D 40 58 C7
-92 B3 1C 05 05 24 18 42 0C 05 38 90 0A 00 CB 23
-21 53 3D 15 DB 3F 21 52 3A 17 58 42 0C 05 48 9C
-08 2C 48 9B C9 27 78 92 11 20 2E 9F 0F 24 1E 83
-05 3C 0E 9A 03 24 CE 48 00 00 1E 53 A2 B3 1C 05
-FD 27 82 48 0E 05 30 4D 5A C7 2D 83 92 B3 1C 05
-E4 23 FC 27 82 93 DE 21 02 24 92 53 DE 21 3E 8F
-3D 41 B2 40 18 00 0A 18 30 4D 9E C4 04 45 4D 49
-54 00 30 40 86 C7 08 4E 3E 4F E0 3F 3F 80 06 00
-8F 4E 04 00 3E 40 54 00 BF 40 3C 21 00 00 AF 4F
-02 00 A8 3F 7C C7 04 45 43 48 4F 00 B2 40 82 48
-52 C7 82 43 DE 21 30 4D 32 C6 06 4E 4F 45 43 48
-4F 00 B2 40 30 4D 52 C7 92 43 DE 21 30 4D 20 C6
-04 54 59 50 45 00 0E 93 0F 24 1E 15 3D 40 EC C7
-28 4F 7E 48 8F 48 00 00 2F 83 CB 3F EE C7 2D 83
-91 83 02 00 F5 23 1D 17 2F 53 3E 4F 30 4D D0 C5
-02 43 52 00 30 40 08 C8 87 12 1E C8 02 0D 0A 00
-D6 C7 2A C4 2F 83 8F 4E 00 00 3E 4D 30 4D 2F 82
-8F 4E 02 00 7E 4D 8F 4D 00 00 0D 5E 1D B3 0D 63
-30 4D F2 C5 82 53 22 00 82 43 B4 21 87 12 14 C8
-1E C8 EC CA 14 C8 22 00 80 C8 4C C8 B2 40 20 00
-B4 21 6E 4E 1E 53 1E B3 82 6E C6 21 3D 41 3E 4F
-30 4D BA C7 82 2E 22 00 87 12 38 C8 14 C8 D6 C7
-EC CA 2A C4 48 43 05 3C 00 00 04 57 4F 52 44 00
-48 4E 19 42 C0 21 1A 42 C2 21 09 5A 1A 52 C4 21
-09 9A 03 24 7E 9A FC 27 1A 83 4E F8 06 20 0E 4A
-1A 82 C2 21 82 4A C4 21 30 4D 18 42 C6 21 3B 40
-60 00 C8 4C 00 00 09 9A 0C 24 7C 4A 4E 9C 09 24
-18 53 4B 9C F6 2F 7C 90 7B 00 F3 2F 5C 82 B4 21
-F0 3F 1A 82 C2 21 82 4A C4 21 1E 42 C6 21 08 8E
-CE 48 00 00 30 4D 00 00 04 46 49 4E 44 00 2F 83
-0C 4E 65 4C 74 40 80 00 3B 40 CA 21 3E 4B 0E 93
-1E 24 58 4C 01 00 78 F0 1E 00 0E 58 2E 53 1E 4E
-FE FF 0E 93 F3 27 09 4E 78 49 48 C4 48 95 F7 23
-0A 4C FA 99 01 00 F3 23 1A 53 58 83 FA 23 19 B3
-09 63 0C 49 6A 4E 1E 43 4A 93 01 30 2E 83 8F 4C
-00 00 35 40 0E C4 34 40 00 C4 30 4D D0 C7 03 55
-4D 2A 2C 4F 0B 43 09 43 08 43 1A 43 0E BA 02 24
-09 5C 08 6B 0C 5C 0B 6B 0A 5A F8 2B 8F 49 00 00
-0E 48 30 4D 82 C4 07 3E 4E 55 4D 42 45 52 2C 4F
-0B 4E 1A 42 DC 21 68 4C 78 80 30 00 78 90 0A 00
-05 28 78 80 07 00 78 90 0A 00 1F 28 08 9A 22 C3
-1C 2C 5D 15 1C 4F 02 00 0E 4A 3D 40 B0 C9 D2 3F
-B2 C9 81 49 02 00 1C 4F 04 00 1E 41 04 00 3D 40
-C4 C9 C8 3F C6 C9 39 51 3E 61 8F 49 04 00 8F 4E
-02 00 3A 17 1C 53 1B 83 D6 23 8F 4C 00 00 0E 4B
-30 4D 32 C0 00 02 1B 42 DC 21 0C 43 2D 15 3D 40
-32 CA 0A 4B 3F 82 8F 4E 06 00 8F 43 04 00 8F 43
-02 00 0C 4E 7B 4C 68 4C 78 90 2D 00 04 28 BC 23
-B1 43 02 00 DF 3F 2A 43 78 80 25 00 07 24 3A 52
-68 53 04 24 3A 40 10 00 58 83 AD 23 1C 53 1B 83
-EA 3F 34 CA 2E 24 2D 83 78 90 28 00 CB 27 32 D0
-00 02 78 90 F7 00 C6 27 78 90 F5 00 22 20 09 43
-8F 49 02 00 5B 83 09 4B 09 5C 69 49 79 80 30 00
-79 90 0A 00 05 28 79 80 07 00 79 90 0A 00 0A 28
-09 9A 08 2C 8F 49 00 00 0E 4A 2C 15 B0 12 3E C5
-2A 17 E6 3F 9F 4F 04 00 02 00 AF 4F 04 00 0E 4B
-4E 93 2B 17 0E 4C 82 4B DC 21 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 7E C6 04 48 45 52 45 00 2F 83 8F 4E
-00 00 1E 42 C6 21 30 4D B6 C4 01 2C 1A 42 C6 21
-8A 4E 00 00 A2 53 C6 21 3E 4F 30 4D EC C6 05 41
-4C 4C 4F 54 82 5E C6 21 3E 4F 30 4D A6 C7 07 45
-58 45 43 55 54 45 0A 4E 3E 4F 00 4A EA CA 87 4C
-49 54 45 52 41 4C 82 93 BE 21 0C 24 1A 42 C6 21
-A2 52 C6 21 BA 40 14 C8 00 00 8A 4E 02 00 3E 4F
-32 B0 00 02 32 C0 00 02 06 24 19 4A 02 00 8A 4E
-02 00 0E 49 EB 3F 30 4D 00 C8 05 43 4F 55 4E 54
-2F 83 1E 53 8F 4E 00 00 5E 4E FF FF 30 4D 82 4E
-C0 21 B2 4F C2 21 3E 4F 82 43 C4 21 30 4D 85 12
-20 00 87 12 6E CB 7E CB 80 C8 8C CB 3D 40 94 CB
-AE 22 64 3E 96 CB 0A 4E 3E 4F 3D 40 AC CB 21 27
-3D 40 86 CB 1A E2 BE 21 A1 27 B5 23 AE CB 3E 4F
-3D 40 86 CB B8 23 DE 53 00 00 68 4E 08 5E F8 40
-3F 00 00 00 3D 40 62 CE CB 3F 0E CB 08 45 56 41
+12 D3 F5 3F 34 40 EC C4 8F 4A 02 00 8F 49 00 00
+0E 48 30 41 82 4E C0 21 B2 4F C2 21 3E 4F 82 43
+C4 21 30 4D 3F 80 06 00 8F 4E 04 00 3E 40 54 00
+BF 40 3C 21 00 00 AF 4F 02 00 24 3C 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 A2 B3 1C 05 FD 27 B2 40 11 00
+0E 05 F2 C2 03 02 30 41 A2 B3 1C 05 FD 27 B2 40
+13 00 0E 05 F2 D2 03 02 30 41 00 00 06 41 43 43
+45 50 54 00 3C 40 A6 C5 3B 40 70 C5 2D 15 0A 4E
+2E 4F 0A 5E 3B 40 0D 00 3C 40 20 00 3D 40 9A C5
+92 B3 1C 05 05 24 18 42 0C 05 38 90 0A 00 D3 23
+21 53 3D 15 30 40 00 C4 21 52 3A 17 58 42 0C 05
+48 9C 08 2C 48 9B D0 27 78 92 11 20 2E 9F 0F 24
+1E 83 05 3C 0E 9A 03 24 CE 48 00 00 1E 53 A2 B3
+1C 05 FD 27 82 48 0E 05 30 4D 9C C5 2D 83 92 B3
+1C 05 E4 23 FC 27 82 93 DE 21 02 24 92 53 DE 21
+3E 8F 3D 41 B2 40 18 00 0A 18 30 4D 00 00 04 45
+4D 49 54 00 30 40 C8 C5 08 4E 3E 4F E0 3F BE C5
+04 45 43 48 4F 00 B2 40 82 48 94 C5 82 43 DE 21
+30 4D 00 00 06 4E 4F 45 43 48 4F 00 B2 40 30 4D
+94 C5 92 43 DE 21 30 4D 00 00 04 54 59 50 45 00
+0E 93 0F 24 1E 15 3D 40 16 C6 28 4F 7E 48 8F 48
+00 00 2F 83 D7 3F 18 C6 2D 83 91 83 02 00 F5 23
+1D 17 2F 53 3E 4F 30 4D 00 00 02 43 52 00 30 40
+32 C6 0D 12 87 12 2E C4 02 0D 0A 00 00 C6 26 C7
+00 00 03 4B 45 59 30 40 4A C6 18 42 0C 05 2F 83
+8F 4E 00 00 B0 12 06 C5 92 B3 1C 05 FD 27 1E 42
+0C 05 B0 12 18 C5 30 4D 2F 83 8F 4E 00 00 30 4D
+8F 4E FE FF AF 4F FC FF 2F 82 30 4D 0E 93 F4 23
+30 4D 2A 4F 8F 4E 00 00 0E 4A 30 4D 8F 4E FE FF
+3E 40 80 20 0E 8F 0E 11 2F 83 30 4D 2F 83 8F 4E
+00 00 3E 41 30 4D 3E 8F 3E E3 1E 53 30 4D BE 4F
+00 00 3E 4F 30 4D 1E 83 0E 7E 30 4D 0E 5E 0E 7E
+3E E3 30 4D 3E 8F 03 24 3E 43 01 2C 0E F3 30 4D
+00 00 02 3C 23 00 B2 40 B2 21 B2 21 30 4D 2A C6
+01 23 1B 42 DC 21 2C 4F 2F 83 B0 12 86 C4 BF 4F
+00 00 7A 90 0A 00 02 28 7A 50 07 00 7A 50 30 00
+92 83 B2 21 18 42 B2 21 C8 4A 00 00 30 4D E0 C6
+02 23 53 00 0D 12 87 12 E2 C6 1C C7 2D 83 09 93
+E2 23 0E 93 E0 23 3D 41 30 4D 10 C7 02 23 3E 00
+9F 42 B2 21 00 00 3E 40 B2 21 2E 8F 30 4D 00 00
+04 48 4F 4C 44 00 4A 4E 3E 4F DA 3F 00 00 04 53
+49 47 4E 00 0E 93 3E 4F 7A 40 2D 00 D1 33 30 4D
+FA C5 02 55 2E 00 08 43 2F 83 8F 4E 00 00 0E 48
+0D 12 0E 12 3E F3 06 34 BF E3 00 00 3E E3 9F 53
+00 00 0E 63 87 12 D6 C6 14 C7 9C C6 54 C7 30 C7
+00 C6 AC CA C4 C5 26 C7 E4 C5 01 2E 0E 93 E3 37
+38 43 E2 3F 4E C7 82 53 22 00 82 43 B4 21 0D 12
+87 12 24 C4 2E C4 34 CA 24 C4 22 00 F2 C7 C0 C7
+B2 40 20 00 B4 21 6E 4E 1E 53 1E B3 82 6E C6 21
+3D 41 3E 4F 30 4D 9A C7 82 2E 22 00 0D 12 87 12
+AA C7 24 C4 00 C6 34 CA 26 C7 00 00 04 57 4F 52
+44 00 3C 40 C0 21 39 4C 3A 4C 09 5A 3A 5C 28 4C
+09 9A 15 24 7E 9A FC 27 1A 83 3B 40 60 00 C8 4C
+00 00 09 9A 0C 24 7C 4A 4E 9C 09 24 18 53 4B 9C
+F6 2F 7C 90 7B 00 F3 2F 5C 82 B4 21 F0 3F 1A 82
+C2 21 82 4A C4 21 1E 42 C6 21 08 8E CE 48 00 00
+30 4D 00 00 04 46 49 4E 44 00 2F 83 0C 4E 65 4C
+74 40 80 00 3B 40 CA 21 3E 4B 0E 93 1E 24 58 4C
+01 00 78 F0 1E 00 0E 58 2E 53 1E 4E FE FF 0E 93
+F3 27 09 4E 78 49 48 C4 48 95 F7 23 0A 4C FA 99
+01 00 F3 23 1A 53 58 83 FA 23 19 B3 09 63 0C 49
+6A 4E 1E 43 4A 93 01 30 2E 83 8F 4C 00 00 35 40
+FA C4 34 40 EC C4 30 4D 62 C7 03 55 4D 2A 2C 4F
+0B 43 09 43 08 43 1A 43 0E BA 02 24 09 5C 08 6B
+0C 5C 0B 6B 0A 5A F8 2B 8F 49 00 00 0E 48 30 4D
+00 00 07 3E 4E 55 4D 42 45 52 2C 4F 0B 4E 1A 42
+DC 21 68 4C 78 80 30 00 78 90 0A 00 05 28 78 80
+07 00 78 90 0A 00 1F 28 08 9A 22 C3 1C 2C 5D 15
+1C 4F 02 00 0E 4A 3D 40 0C C9 D2 3F 0E C9 81 49
+02 00 1C 4F 04 00 1E 41 04 00 3D 40 20 C9 C8 3F
+22 C9 39 51 3E 61 8F 49 04 00 8F 4E 02 00 3A 17
+1C 53 1B 83 D6 23 8F 4C 00 00 0E 4B 30 4D 32 C0
+00 02 1B 42 DC 21 0C 43 2D 15 3D 40 8E C9 0A 4B
+3F 82 8F 4E 06 00 8F 43 04 00 8F 43 02 00 0C 4E
+7B 4C 68 4C 78 90 2D 00 04 28 BC 23 B1 43 02 00
+0B 3C 2A 43 78 80 25 00 07 24 3A 52 68 53 04 24
+3A 40 10 00 58 83 AD 23 1C 53 1B 83 EA 3F 90 C9
+2E 24 2D 83 78 90 28 00 CB 27 32 D0 00 02 78 90
+F7 00 C6 27 78 90 F5 00 22 20 09 43 8F 49 02 00
+5B 83 09 4B 09 5C 69 49 79 80 30 00 79 90 0A 00
+05 28 79 80 07 00 79 90 0A 00 0A 28 09 9A 08 2C
+8F 49 00 00 0E 4A 2C 15 B0 12 7E C4 2A 17 E6 3F
+9F 4F 04 00 02 00 AF 4F 04 00 0E 4B 4E 93 2B 17
+0E 4C 82 4B DC 21 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
+00 00 01 2C 1A 42 C6 21 8A 4E 00 00 A2 53 C6 21
+3E 4F 30 4D 2C C5 05 41 4C 4C 4F 54 82 5E C6 21
+3E 4F 30 4D 0A 4E 3E 4F 00 4A 32 CA 87 4C 49 54
+45 52 41 4C 82 93 BE 21 0C 24 1A 42 C6 21 A2 52
+C6 21 BA 40 24 C4 00 00 8A 4E 02 00 3E 4F 32 B0
+00 02 32 C0 00 02 06 24 19 4A 02 00 8A 4E 02 00
+0E 49 EB 3F 30 4D 2C C7 05 43 4F 55 4E 54 2F 83
+1E 53 8F 4E 00 00 5E 4E FF FF 30 4D 85 12 20 00
+0D 12 87 12 C4 C4 AC CA F2 C7 BC CA 3D 40 C4 CA
+C4 22 86 26 C6 CA 0A 4E 3E 4F 3D 40 DC CA 37 27
+3D 40 B6 CA 1A E2 BE 21 BD 23 AC 27 DE CA 3E 4F
+3D 40 B6 CA BF 23 DE 53 00 00 68 4E 08 5E F8 40
+3F 00 00 00 3D 40 5C CD D2 3F D0 C5 08 45 56 41
 4C 55 41 54 45 00 39 40 C0 21 3C 49 3B 49 3A 49
-3D 15 B0 12 2A C4 82 CB EA CB B2 41 C4 21 B2 41
-C2 21 B2 41 C0 21 3D 41 30 4D 85 12 BE 21 08 C5
-04 51 55 49 54 00 82 43 08 18 31 40 E0 20 B2 40
-00 20 00 20 82 43 BE 21 B0 12 2A C4 04 C8 8C C7
-7E CB 82 C7 82 CB A4 C4 0C C5 1E C8 0C 73 74 61
-63 6B 20 65 6D 70 74 79 21 00 7C CC 14 C8 30 FF
-DC CA 26 C5 1E C8 0A 46 52 41 4D 20 66 75 6C 6C
-21 00 7C CC 3C C6 1C CC FE CA 05 41 42 4F 52 54
-3F 40 80 20 D0 3F 5A CC 86 41 42 4F 52 54 22 00
-87 12 38 C8 14 C8 7C CC EC CA 2A C4 8F 93 02 00
-03 20 2F 52 3E 4F 30 4D B0 12 04 D2 B0 12 B6 C6
-92 C3 1C 05 38 40 50 55 39 42 03 43 19 83 FD 23
-18 83 FA 23 92 B3 1C 05 F3 23 87 12 7E D1 14 C8
-DE 21 EA C4 AC C7 1E C8 04 1B 5B 37 6D 00 D6 C7
-58 C4 40 C6 D6 CC 04 C8 1E C8 05 6C 69 6E 65 3A
-D6 C7 D0 C4 24 C6 D6 C7 1E C8 04 1B 5B 30 6D 00
-D6 C7 60 CC 00 00 83 5B 27 5D 87 12 FC CC 14 C8
-14 C8 EC CA EC CA 2A C4 E8 C8 01 27 87 12 7E CB
-80 C8 EE C8 40 C6 0A CD 2A C4 B6 CB 32 C5 81 5C
-92 42 C0 21 C4 21 30 4D E6 CC 81 5B 82 43 BE 21
-30 4D 0E CD 01 5D B2 43 BE 21 30 4D BE 4F 02 00
-3E 4F 30 4D D6 CA 82 49 53 00 87 12 FA CB EA C4
-40 C6 4E CD EA CC 14 C8 2C CD EC CA 2A C4 FC CC
-2C CD 2A C4 36 CD 09 49 4D 4D 45 44 49 41 54 45
-1A 42 B6 21 FA D0 80 00 00 00 30 4D 00 CC 88 50
-4F 53 54 50 4F 4E 45 00 87 12 7E CB 80 C8 EE C8
-58 C4 40 C6 0A CD 0C C5 40 C6 98 CD 14 C8 14 C8
-EC CA EC CA 14 C8 EC CA EC CA 2A C4 1A CD 81 3B
-82 93 BE 21 B5 27 87 12 14 C8 2A C4 EC CA 36 CE
-1C CD 2A C4 9E CD 07 3A 4E 4F 4E 41 4D 45 30 12
-DC CD 2F 83 8F 4E 00 00 1E 42 C6 21 1E B3 0E 63
-0A 4E 39 40 00 02 38 40 02 02 21 3C BA 40 87 12
-FC FF A2 83 C6 21 B2 43 BE 21 30 4D B6 CD 01 3A
-30 12 DC CD 92 B3 C6 21 A2 63 C6 21 87 12 7E CB
-80 C8 04 CE 3D 41 08 4E 7A 4E 5A D3 5A 53 0A 58
-19 42 DA 21 6E 4E 3E F0 1E 00 09 5E 3E 4F 82 48
-B6 21 82 49 B8 21 82 4A BA 21 82 4F BC 21 2A 52
-82 4A C6 21 30 41 82 9F BC 21 09 20 18 42 B6 21
-19 42 B8 21 A8 49 FE FF 89 48 00 00 30 4D 87 12
-1E C8 0F 73 74 61 63 6B 20 6D 69 73 6D 61 74 63
-68 21 88 CC CC CB 05 44 45 46 45 52 B0 12 F4 CD
-BA 40 30 40 FC FF BA 40 EA CD FE FF E3 3F 5A CB
-06 43 52 45 41 54 45 00 B0 12 F4 CD BA 40 85 12
-FC FF 8A 4A FE FF D6 3F 66 CE 05 44 4F 45 53 3E
-1A 42 BA 21 BA 40 84 12 00 00 8A 4D 02 00 3D 41
-30 4D 76 C9 05 3E 42 4F 44 59 2E 52 30 4D 80 CE
-04 43 4F 44 45 00 B0 12 F4 CD A2 82 C6 21 87 12
-0E D1 E8 D0 2A C4 C0 CE 07 43 4F 44 45 4E 4E 4D
-B0 12 C2 CD F2 3F 00 00 07 45 4E 44 43 4F 44 45
-87 12 1C D1 36 CE 2A C4 68 CC 03 41 53 4D B2 40
-EC D0 DA 21 E0 3F E8 CE 06 45 4E 44 41 53 4D 00
-87 12 F0 CE 30 D1 2A C4 00 00 05 43 4F 4C 4F 4E
-1A 42 C6 21 BA 40 87 12 00 00 A2 53 C6 21 B2 43
-BE 21 30 40 1C D1 00 00 05 4C 4F 32 48 49 1A 42
-C6 21 BA 40 B0 12 00 00 BA 40 2A C4 02 00 A2 52
-C6 21 ED 3F 56 CD 85 48 49 32 4C 4F 87 12 DC CA
-86 CF EC CA 1C CD 0E D1 E8 D0 2A C4 56 CF 82 49
-46 00 2F 83 8F 4E 00 00 1E 42 C6 21 A2 52 C6 21
-BE 40 40 C6 00 00 2E 53 30 4D 9A CE 84 45 4C 53
-45 00 A2 52 C6 21 1A 42 C6 21 BA 40 3C C6 FC FF
-8E 4A 00 00 2A 83 0E 4A 30 4D 4E C9 84 54 48 45
-4E 00 9E 42 C6 21 00 00 3E 4F 30 4D D8 CE 85 42
-45 47 49 4E 30 40 DC CA AC CF 85 55 4E 54 49 4C
-39 40 40 C6 A2 52 C6 21 1A 42 C6 21 8A 49 FC FF
-8A 4E FE FF 3E 4F 30 4D FA CE 85 41 47 41 49 4E
-39 40 3C C6 EF 3F 7A C8 85 57 48 49 4C 45 87 12
-72 CF 76 C4 2A C4 34 C8 86 52 45 50 45 41 54 00
-87 12 F0 CF B2 CF 2A C4 8C CF 82 44 4F 00 2F 83
-8F 4E 00 00 A2 53 C6 21 1E 42 C6 21 BE 40 54 C6
-FE FF A2 53 00 20 1A 42 00 20 8A 43 00 00 30 4D
-1E CB 84 4C 4F 4F 50 00 39 40 76 C6 A2 52 C6 21
-1A 42 C6 21 8A 49 FC FF 8A 4E FE FF 1E 42 00 20
-A2 83 00 20 2E 4E 0E 93 03 24 8E 4A 00 00 F6 3F
-3E 4F 30 4D 90 C6 85 2B 4C 4F 4F 50 39 40 64 C6
-E5 3F 42 D0 04 4D 4F 56 45 00 0A 4E 38 4F 39 4F
-3E 4F 0A 93 11 24 08 99 0F 24 06 2C F8 49 00 00
-18 53 1A 83 FB 23 30 4D 08 5A 09 5A 19 83 18 83
-E8 49 00 00 1A 83 FA 23 30 4D 14 C8 CA 21 F2 C4
-2A C4 84 12 BA D0 EA CF 82 D3 1A D0 FA CC 6E CF
-76 D0 96 D4 64 C8 A2 D1 BC D1 CA CF 3C D2 00 00
-68 D4 24 CD B4 CE 00 00 84 12 BA D0 B4 D9 16 DA
-68 D9 8A DA 2E D9 00 00 5E D6 00 00 24 D9 D4 D9
-86 D9 C4 D9 6E D7 00 00 00 00 66 DA E6 D0 3A 40
-0C 00 39 40 CA 21 38 40 CC 21 C6 3F 3A 40 0E 00
-39 40 CC 21 38 40 CA 21 B9 3F 82 43 CC 21 30 4D
-92 42 CA 21 DA 21 30 4D C2 D0 2A D1 30 D1 40 D1
-3A 4E 82 4A C8 21 2E 4E 82 4E C6 21 3D 40 10 00
-09 4A 08 49 29 83 18 48 FE FF 0E 98 FC 2B 89 48
-00 00 1D 83 F6 23 2A 4A 0A 93 F0 23 3E 4F 3D 41
-30 4D 6E CD 09 50 57 52 5F 53 54 41 54 45 84 12
-38 D1 0C D1 9C DA 08 D0 09 52 53 54 5F 53 54 41
-54 45 92 42 0E 18 82 D1 92 42 0C 18 84 D1 EF 3F
-74 D1 08 50 57 52 5F 48 45 52 45 00 92 42 C8 21
-82 D1 92 42 C6 21 84 D1 30 4D 88 D1 08 52 53 54
-5F 48 45 52 45 00 92 42 C8 21 0E 18 92 42 C6 21
-0C 18 EC 3F F8 CF 04 57 49 50 45 00 39 40 10 00
-29 83 B9 43 80 FF FC 23 B2 40 E0 C6 DE C6 B2 40
-46 D2 44 D2 B2 40 0C D1 0E 18 B2 40 9C DA 0C 18
-30 12 92 D1 B2 40 86 C7 84 C7 B2 40 08 C8 06 C8
-B2 40 98 C6 96 C6 B2 40 18 00 0A 18 37 40 1A C4
-36 40 92 C4 35 40 0E C4 34 40 00 C4 B2 40 0A 00
-DC 21 B2 40 20 00 B4 21 30 41 D6 D1 04 57 41 52
-4D 00 30 40 46 D2 3D 40 7A D2 92 C3 30 01 1E 42
-08 18 0E 93 11 24 D2 B3 00 02 02 20 3E E3 1E 53
-F2 D0 03 00 0A 02 3E 90 0A 00 B8 27 3E 90 16 00
-B5 2F 2E 93 84 27 8D 2F 30 4D 1E C8 06 0D 1B 5B
-37 6D 23 00 D6 C7 34 C6 1E C8 19 46 61 73 74 46
-6F 72 74 68 20 C2 A9 4A 2E 4D 2E 54 68 6F 6F 72
-65 6E 73 20 D6 C7 14 C8 30 FF DC CA B8 C4 24 C6
-1E C8 0A 62 79 74 65 73 20 66 72 65 65 00 3C C6
-D6 CC BE CF 04 43 4F 4C 44 00 92 B3 0A 05 FD 23
-B2 40 04 A5 20 01 7A D2 B2 40 88 5A CC 01 B2 D0
-00 08 04 02 B2 D3 06 02 B2 43 02 02 B2 D0 FF FE
-26 02 B2 43 22 02 B2 43 42 02 B2 D3 46 02 B2 43
-62 02 B2 D3 66 02 B2 40 00 A5 60 01 B2 40 FF 1E
-80 01 B2 40 B6 00 82 01 B2 40 F4 00 84 01 39 40
-80 00 82 43 88 01 92 D2 5E 01 08 18 38 40 59 14
-18 83 FE 23 19 83 FA 23 39 40 00 08 29 83 89 43
-00 20 FC 23 39 40 1E 00 29 83 B9 40 D8 D2 E2 FF
-FB 23 B2 40 26 C7 EC FF B2 40 81 00 00 05 92 42
-02 18 06 05 92 42 04 18 08 05 92 C3 00 05 92 D3
-1A 05 3F 40 80 20 31 40 E0 20 30 12 42 D2 4B 3F
-C4 D2 07 43 4F 4D 50 41 52 45 0C 4E 38 4F 3B 4F
-39 4F 0E 4B 0E 5C 0C 24 1B 83 07 30 1C 83 07 30
-19 53 F9 98 FF FF F5 27 02 2C 3E 43 30 4D 1E 43
-30 4D EE CD 86 5B 54 48 45 4E 5D 00 30 4D B4 D3
-86 5B 45 4C 53 45 5D 00 87 12 14 C8 00 00 C6 C4
-7E CB 80 C8 60 CB 34 C4 40 C6 2A D4 44 C4 1E C8
-06 5B 54 48 45 4E 5D 00 8A D3 4A C6 FA D3 F8 C7
-D0 C4 58 C4 4A C6 D0 D3 2A C4 44 C4 1E C8 06 5B
-45 4C 53 45 5D 00 8A D3 4A C6 18 D4 F8 C7 D0 C4
-58 C4 4A C6 CE D3 2A C4 1E C8 04 5B 49 46 5D 00
-8A D3 4A C6 D0 D3 3C C6 CE D3 F8 C7 1E C8 05 0D
-0A 6B 6F 20 D6 C7 8C C7 6E CB 3C C6 D0 D3 C0 D3
-84 5B 49 46 5D 00 0E 93 3E 4F BE 27 30 4D 40 D4
-89 5B 44 45 46 49 4E 45 44 5D 87 12 7E CB 80 C8
-EE C8 6A C4 2A C4 50 D4 8B 5B 55 4E 44 45 46 49
-4E 45 44 5D 87 12 7E CB 80 C8 EE C8 6A C4 00 C5
-2A C4 84 D4 3D 41 B2 4E 0E 18 A2 4E 0C 18 3E 4F
-30 40 92 D1 84 D0 06 4D 41 52 4B 45 52 00 B0 12
-F4 CD BA 40 84 12 FC FF BA 40 82 D4 FE FF 9A 42
-C8 21 00 00 28 83 8A 48 02 00 A2 52 C6 21 30 40
-3C CE 1C 15 B0 12 2A C4 80 C8 EE C8 4A C6 D8 D4
-E2 C9 40 C6 0A CD F2 D4 DA D4 39 4E 39 80 86 12
-08 24 19 53 02 20 2E 4E 04 3C 2E 53 19 53 01 24
-2E 82 1B 17 30 41 3E 40 28 00 B0 12 C2 D4 19 42
-C6 21 A2 53 C6 21 89 4E 00 00 3E 40 29 00 1C 15
-12 12 C4 21 92 53 C4 21 B0 12 2A C4 80 C8 E2 C9
-40 C6 30 D5 26 D5 21 53 3E 90 10 00 7D 2D E1 2B
-32 D5 B2 41 C4 21 DD 3F 87 12 7E CB 74 C8 40 D5
-0C 43 1B 42 C6 21 A2 53 C6 21 6A 4E 3E 4F 7A 90
-23 00 27 20 92 53 C4 21 B0 12 C2 D4 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 C6 21 A2 53 C6 21 89 4E 00 00 3E 4F 3D 41
-30 4D 7A 90 26 00 07 20 3C 40 10 02 92 53 C4 21
-B0 12 C2 D4 ED 3F 7A 90 40 00 16 20 3C 40 20 00
-92 53 C4 21 B0 12 0E D5 0C 20 3C 50 10 00 3E 40
-2B 00 B0 12 0E D5 92 92 C0 21 C4 21 02 24 92 53
-C4 21 8E 10 0C 5E DA 3F B0 12 0E D5 FA 23 3C 50
-10 00 B0 12 F6 D4 EF 3F 0C 43 1B 42 C6 21 A2 53
-C6 21 87 12 7E CB 74 C8 0A D6 FE 90 26 00 00 00
-3E 40 20 00 03 20 3C 50 82 00 C8 3F B0 12 0E D5
-E1 23 3C 50 80 00 B0 12 F6 D4 DC 3F D6 C6 04 52
-45 54 49 00 87 12 14 C8 00 13 EC CA 2A C4 14 C8
-2C 00 38 D5 02 D6 48 D6 09 4B 2E 4E 0E DC A4 3F
-38 CF 03 4D 4F 56 84 12 3E D6 00 40 52 D6 05 4D
-4F 56 2E 42 84 12 3E D6 40 40 00 00 03 41 44 44
-84 12 3E D6 00 50 6C D6 05 41 44 44 2E 42 84 12
-3E D6 40 50 78 D6 04 41 44 44 43 00 84 12 3E D6
-00 60 86 D6 06 41 44 44 43 2E 42 00 84 12 3E D6
-40 60 2E D6 04 53 55 42 43 00 84 12 3E D6 00 70
-A4 D6 06 53 55 42 43 2E 42 00 84 12 3E D6 40 70
-B2 D6 03 53 55 42 84 12 3E D6 00 80 C2 D6 05 53
-55 42 2E 42 84 12 3E D6 40 80 1A CF 03 43 4D 50
-84 12 3E D6 00 90 DC D6 05 43 4D 50 2E 42 84 12
-3E D6 40 90 08 CF 04 44 41 44 44 00 84 12 3E D6
-00 A0 F6 D6 06 44 41 44 44 2E 42 00 84 12 3E D6
-40 A0 E8 D6 03 42 49 54 84 12 3E D6 00 B0 14 D7
-05 42 49 54 2E 42 84 12 3E D6 40 B0 20 D7 03 42
-49 43 84 12 3E D6 00 C0 2E D7 05 42 49 43 2E 42
-84 12 3E D6 40 C0 3A D7 03 42 49 53 84 12 3E D6
-00 D0 48 D7 05 42 49 53 2E 42 84 12 3E D6 40 D0
-00 00 03 58 4F 52 84 12 3E D6 00 E0 62 D7 05 58
-4F 52 2E 42 84 12 3E D6 40 E0 94 D6 03 41 4E 44
-84 12 3E D6 00 F0 7C D7 05 41 4E 44 2E 42 84 12
-3E D6 40 F0 7E CB 38 D5 9A D7 0A 4C 3C F0 70 00
-8A 10 3A F0 0F 00 0C DA 4F 3F CE D6 03 52 52 43
-84 12 94 D7 00 10 AC D7 05 52 52 43 2E 42 84 12
-94 D7 40 10 B8 D7 04 53 57 50 42 00 84 12 94 D7
-80 10 C6 D7 03 52 52 41 84 12 94 D7 00 11 D4 D7
-05 52 52 41 2E 42 84 12 94 D7 40 11 E0 D7 03 53
-58 54 84 12 94 D7 80 11 00 00 04 50 55 53 48 00
-84 12 94 D7 00 12 FA D7 06 50 55 53 48 2E 42 00
-84 12 94 D7 40 12 54 D7 04 43 41 4C 4C 00 84 12
-94 D7 80 12 1A 53 0E 4A 87 12 34 C6 1E C8 0D 6F
-75 74 20 6F 66 20 62 6F 75 6E 64 73 88 CC 7E CB
-74 C8 44 D8 92 53 C4 21 3E 40 2C 00 B0 12 2A C4
-80 C8 E2 C9 40 C6 0A CD F8 D5 5C D8 0A 4E 3E 4F
-1A 83 E0 33 29 4E 59 0E 0A 28 08 4C 59 0A 01 28
-0C 8A 08 8A 38 90 10 00 D5 2F 5A 0E 94 3F 2A 92
-D1 2F 8A 10 5A 06 8F 3F EE D7 04 52 52 43 4D 00
-84 12 3E D8 50 00 8A D8 04 52 52 41 4D 00 84 12
-3E D8 50 01 98 D8 04 52 4C 41 4D 00 84 12 3E D8
-50 02 A6 D8 04 52 52 55 4D 00 84 12 3E D8 50 03
-08 D8 05 50 55 53 48 4D 84 12 3E D8 00 15 C2 D8
-04 50 4F 50 4D 00 84 12 3E D8 00 17 B4 D8 03 53
-3E 3D 85 12 00 38 DE D8 02 53 3C 00 85 12 00 34
-D0 D8 03 30 3E 3D 85 12 00 30 F2 D8 02 30 3C 00
-85 12 00 30 00 00 02 55 3C 00 85 12 00 2C 06 D9
-03 55 3E 3D 85 12 00 28 FC D8 03 30 3C 3E 85 12
-00 24 1A D9 02 30 3D 00 85 12 00 20 00 00 02 49
-46 00 1A 42 C6 21 8A 4E 00 00 A2 53 C6 21 0E 4A
-30 4D 10 D9 04 54 48 45 4E 00 1A 42 C6 21 08 4E
-3E 4F 09 48 29 53 0A 89 0A 11 3A 90 00 02 63 2F
-88 DA 00 00 30 4D 04 D7 04 45 4C 53 45 00 1A 42
-C6 21 BA 40 00 3C 00 00 A2 53 C6 21 2F 83 8F 4A
-00 00 E3 3F 44 D9 05 55 4E 54 49 4C 3A 4F 08 4E
-3E 4F 19 42 C6 21 2A 83 0A 89 0A 11 3A 90 00 FE
-42 3B 3A F0 FF 03 08 DA 89 48 00 00 A2 53 C6 21
-30 4D 88 D7 05 41 47 41 49 4E 0A 4E 38 40 00 3C
-E7 3F 00 00 05 57 48 49 4C 45 87 12 32 D9 76 C4
-2A C4 E8 D8 06 52 45 50 45 41 54 00 87 12 BA D9
-4A D9 2A C4 E6 D9 3D 41 08 4E 3E 4F 2A 48 B2 92
-C4 21 CD 2F 98 42 C6 21 00 00 30 4D 18 D8 03 42
-57 31 84 12 E4 D9 00 00 FE D9 03 42 57 32 84 12
-E4 D9 00 00 0A DA 03 42 57 33 84 12 E4 D9 00 00
-22 DA 3D 41 1A 42 C6 21 28 4E B2 92 C4 21 90 2B
-BA 4F 00 00 A2 53 C6 21 8E 4A 00 00 3E 4F 30 4D
-00 00 03 46 57 31 84 12 20 DA 00 00 42 DA 03 46
-57 32 84 12 20 DA 00 00 4E DA 03 46 57 33 84 12
-20 DA 00 00 00 00 05 3F 47 4F 54 4F 3E 90 00 30
-07 24 3E E0 00 04 3E B0 00 10 02 24 3E E0 00 08
-87 12 FC CC 16 CB 2A C4 5A DA 04 47 4F 54 4F 00
-2F 83 8F 4E 00 00 3E 40 00 3C F2 3F
+3D 15 87 12 B0 CA 18 CB B2 41 C4 21 B2 41 C2 21
+B2 41 C0 21 3D 41 30 4D 85 12 BE 21 00 00 04 51
+55 49 54 00 82 43 08 18 31 40 E0 20 B2 40 00 20
+00 20 82 43 BE 21 87 12 2E C6 D4 C4 AC CA C4 C5
+B0 CA 8C C6 BC C6 2E C4 0C 73 74 61 63 6B 20 65
+6D 70 74 79 21 00 AA CB 24 C4 40 FF 66 CE C4 C6
+2E C4 0A 46 52 41 4D 20 66 75 6C 6C 21 00 AA CB
+48 C4 48 CB 46 CA 05 41 42 4F 52 54 3F 40 80 20
+D1 3F 86 CB 86 41 42 4F 52 54 22 00 0D 12 87 12
+AA C7 24 C4 AA CB 34 CA 26 C7 8F 93 02 00 03 20
+2F 52 3E 4F 30 4D B0 12 D2 CF B0 12 06 C5 92 C3
+1C 05 18 42 06 18 39 40 20 00 19 83 FE 23 18 83
+FA 23 92 B3 1C 05 F3 23 0D 12 87 12 4C CF 24 C4
+DE 21 02 C5 D6 C5 2E C4 04 1B 5B 37 6D 00 00 C6
+7C C6 4C C4 04 CC 2E C6 2E C4 05 6C 69 6E 65 3A
+00 C6 66 C7 00 C6 2E C4 04 1B 5B 30 6D 00 00 C6
+8C CB 00 00 83 5B 27 5D 0D 12 87 12 2C CC 24 C4
+24 C4 34 CA 34 CA 26 C7 44 C8 01 27 0D 12 87 12
+AC CA F2 C7 4A C8 4C C4 3C CC 26 C7 E6 CA D2 C6
+81 5C 92 42 C0 21 C4 21 30 4D 14 CC 81 5B 82 43
+BE 21 30 4D 40 CC 01 5D B2 43 BE 21 30 4D 2E CB
+88 50 4F 53 54 50 4F 4E 45 00 0D 12 87 12 AC CA
+F2 C7 4A C8 7C C6 4C C4 3C CC BC C6 4C C4 8C CC
+24 C4 24 C4 34 CA 34 CA 24 C4 34 CA 34 CA 26 C7
+40 C7 09 49 4D 4D 45 44 49 41 54 45 1A 42 B6 21
+FA D0 80 00 00 00 30 4D 4C CC 01 3A 30 12 F4 CC
+92 B3 C6 21 A2 63 C6 21 0D 12 87 12 AC CA F2 C7
+C2 CC 3D 41 08 4E 7A 4E 5A D3 5A 53 0A 58 19 42
+DA 21 6E 4E 3E F0 1E 00 09 5E 3E 4F 82 48 B6 21
+82 49 B8 21 82 4A BA 21 82 4F BC 21 2A 52 82 4A
+C6 21 30 41 BA 40 0D 12 FC FF BA 40 87 12 FE FF
+B2 43 BE 21 30 4D AA CC 07 3A 4E 4F 4E 41 4D 45
+30 12 F4 CC 2F 83 8F 4E 00 00 1E 42 C6 21 1E B3
+0E 63 0A 4E 39 40 10 02 38 40 12 02 D7 3F 82 9F
+BC 21 09 20 18 42 B6 21 19 42 B8 21 A8 49 FE FF
+89 48 00 00 30 4D 0D 12 87 12 2E C4 0F 73 74 61
+63 6B 20 6D 69 73 6D 61 74 63 68 21 B6 CB 08 CD
+81 3B 82 93 BE 21 6D 27 0D 12 87 12 24 C4 26 C7
+34 CA 2E CD 4E CC 26 C7 98 CA 06 43 52 45 41 54
+45 00 B0 12 B0 CC BA 40 85 12 FC FF 8A 4A FE FF
+D5 3F FC CA 05 44 4F 45 53 3E 1A 42 BA 21 BA 40
+84 12 00 00 8A 4D 02 00 3D 41 30 4D 7A CD 04 43
+4F 44 45 00 B0 12 B0 CC A2 82 C6 21 0D 12 87 12
+C6 CE A0 CE 26 C7 AE CD 07 43 4F 44 45 4E 4E 4D
+30 12 B8 CD 9F 3F 00 00 07 45 4E 44 43 4F 44 45
+0D 12 87 12 2E CD E0 CE 26 C7 94 CB 03 41 53 4D
+B2 40 A4 CE DA 21 DE 3F D8 CD 06 45 4E 44 41 53
+4D 00 0D 12 87 12 E0 CD FE CE 26 C7 00 00 05 43
+4F 4C 4F 4E 1A 42 C6 21 BA 40 0D 12 00 00 BA 40
+87 12 02 00 A2 52 C6 21 B2 43 BE 21 30 40 E0 CE
+00 00 05 4C 4F 32 48 49 A2 83 C6 21 1A 42 C6 21
+EE 3F 92 CC 85 48 49 32 4C 4F 0D 12 87 12 66 CE
+5A CE 34 CA 4E CC BC CD 26 C7 2E 53 30 4D C8 CD
+85 42 45 47 49 4E 2F 83 8F 4E 00 00 1E 42 C6 21
+30 4D 24 C4 CA 21 AE C6 26 C7 84 12 72 CE EC CD
+96 D0 94 CD 2A CC 44 CE 42 C6 5C CA D8 C7 70 CF
+8A CF AA C8 0A D0 00 00 14 D2 56 CC D2 C8 00 00
+84 12 72 CE 46 D7 AC D7 FA D6 FC D7 C0 D6 00 00
+F0 D3 00 00 B6 D6 68 D7 18 D7 56 D7 00 D5 00 00
+00 00 18 D8 9E CE 3A 40 0C 00 39 40 D6 21 08 49
+28 53 19 83 18 83 E8 49 00 00 1A 83 FA 23 30 4D
+3A 40 0E 00 38 40 CA 21 09 48 29 53 F8 49 00 00
+18 53 1A 83 FB 23 30 4D 82 43 CC 21 30 4D 92 42
+CA 21 DA 21 30 4D 7A CE F8 CE FE CE 0E CF 3A 4E
+82 4A C8 21 2E 4E 82 4E C6 21 3D 40 10 00 09 4A
+08 49 29 83 18 48 FE FF 0E 98 FC 2B 89 48 00 00
+1D 83 F6 23 2A 4A 0A 93 F0 23 3E 4F 3D 41 30 4D
+60 CC 09 50 57 52 5F 53 54 41 54 45 84 12 06 CF
+C4 CE 34 D8 A6 C7 09 52 53 54 5F 53 54 41 54 45
+92 42 0E 18 50 CF 92 42 0C 18 52 CF EF 3F 42 CF
+08 50 57 52 5F 48 45 52 45 00 92 42 C8 21 50 CF
+92 42 C6 21 52 CF 30 4D 56 CF 08 52 53 54 5F 48
+45 52 45 00 92 42 C8 21 0E 18 92 42 C6 21 0C 18
+EC 3F EC C7 04 57 49 50 45 00 39 40 10 00 29 83
+B9 43 80 FF FC 23 B2 40 04 C4 02 C4 B2 40 14 D0
+12 D0 B2 40 C4 CE 0E 18 B2 40 34 D8 0C 18 30 12
+60 CF B2 40 C8 C5 C6 C5 B2 40 32 C6 30 C6 B2 40
+4A C6 48 C6 B2 40 18 00 0A 18 37 40 26 C7 36 40
+9C C6 35 40 FA C4 34 40 EC C4 B2 40 0A 00 DC 21
+B2 40 20 00 B4 21 30 41 A4 CF 04 57 41 52 4D 00
+30 40 14 D0 3D 40 4C D0 92 C3 30 01 1E 42 08 18
+0E 93 13 24 D2 B3 00 02 02 20 3E E3 1E 53 F2 D0
+03 00 0A 02 92 D3 1A 05 3E 90 0A 00 B6 27 3E 90
+16 00 B3 2F 2E 93 82 27 8B 2F 30 4D 2E C4 07 0D
+0A 1B 5B 37 6D 23 00 C6 9C C7 2E C4 19 46 61 73
+74 46 6F 72 74 68 20 C2 A9 4A 2E 4D 2E 54 68 6F
+6F 72 65 6E 73 20 00 C6 24 C4 40 FF 66 CE A6 C6
+66 C7 2E C4 0A 62 79 74 65 73 20 66 72 65 65 00
+48 C4 04 CC 60 CE 04 43 4F 4C 44 00 92 B3 0A 05
+FD 23 B2 40 04 A5 20 01 31 40 E0 20 B2 40 88 5A
+CC 01 B2 D3 06 02 B2 D3 02 02 F2 D2 05 02 B2 D0
+FF FE 26 02 B2 43 22 02 B2 43 42 02 B2 D3 46 02
+B2 43 62 02 B2 D3 66 02 B2 40 00 A5 60 01 B2 40
+FF 1E 80 01 B2 40 B6 00 82 01 B2 40 F4 00 84 01
+39 40 80 00 82 43 88 01 92 D2 5E 01 08 18 38 40
+59 14 18 83 FE 23 19 83 FA 23 39 40 00 08 29 83
+89 43 00 20 FC 23 B0 12 0E C4 B2 40 81 00 00 05
+92 42 02 18 06 05 92 42 04 18 08 05 92 C3 00 05
+3F 40 80 20 30 12 10 D0 55 3F 60 CD 86 5B 54 48
+45 4E 5D 00 30 4D 0C 4E 38 4F 3B 4F 39 4F 0E 4B
+0E 5C 10 24 1B 83 06 30 1C 83 04 30 19 53 F9 98
+FF FF F5 27 2D 4D 3E 4F 30 4D 2F 53 9F 83 00 00
+F9 23 2F 53 2D 53 F7 3F 3C D1 86 5B 45 4C 53 45
+5D 00 0D 12 87 12 24 C4 00 00 AA C6 AC CA F2 C7
+9E CA 68 C6 4C C4 D4 D1 70 C6 2E C4 06 5B 54 48
+45 4E 5D 00 46 D1 AE D1 6A D1 8C D1 26 C7 70 C6
+2E C4 06 5B 45 4C 53 45 5D 00 46 D1 C4 D1 6A D1
+8A D1 26 C7 2E C4 04 5B 49 46 5D 00 46 D1 8C D1
+48 C4 8A D1 22 C6 2E C4 05 0D 0A 6B 6F 20 00 C6
+D4 C4 C4 C4 48 C4 8C D1 7A D1 84 5B 49 46 5D 00
+0E 93 3E 4F C6 27 30 4D EA D1 89 5B 44 45 46 49
+4E 45 44 5D 0D 12 87 12 AC CA F2 C7 4A C8 2C CA
+26 C7 FA D1 8B 5B 55 4E 44 45 46 49 4E 45 44 5D
+0D 12 87 12 04 D2 28 D2 3D 41 30 40 B6 C6 38 40
+C0 21 0A 4E 39 48 2E 48 09 5E 1E 52 C4 21 09 9E
+03 24 7A 9E FC 27 1E 83 0A 4E 2A 88 82 4A C4 21
+30 4D 1C 15 87 12 F2 C7 4A C8 42 C4 66 D2 3E C9
+4C C4 3C CC 80 D2 68 D2 39 4E 39 80 86 12 08 24
+19 53 02 20 2E 4E 04 3C 2E 53 19 53 01 24 2E 82
+1B 17 30 41 3E 40 28 00 B0 12 52 D2 19 42 C6 21
+A2 53 C6 21 89 4E 00 00 3E 40 29 00 1C 15 12 12
+C4 21 92 53 C4 21 87 12 F2 C7 3E C9 4C C4 BC D2
+B2 D2 21 53 3E 90 10 00 80 2D E2 2B BE D2 B2 41
+C4 21 DE 3F 0D 12 87 12 AC CA 2E D2 CE D2 0C 43
+1B 42 C6 21 A2 53 C6 21 6A 4E 3E 4F 7A 90 23 00
+27 20 92 53 C4 21 B0 12 52 D2 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
+C6 21 A2 53 C6 21 89 4E 00 00 3E 4F 3D 41 30 4D
+7A 90 26 00 07 20 3C 40 10 02 92 53 C4 21 B0 12
+52 D2 ED 3F 7A 90 40 00 16 20 3C 40 20 00 92 53
+C4 21 B0 12 9C D2 0C 20 3C 50 10 00 3E 40 2B 00
+B0 12 9C D2 92 92 C0 21 C4 21 02 24 92 53 C4 21
+8E 10 0C 5E DA 3F B0 12 9C D2 FA 23 3C 50 10 00
+B0 12 84 D2 EF 3F 0C 43 1B 42 C6 21 A2 53 C6 21
+0D 12 87 12 AC CA 2E D2 9A D3 FE 90 26 00 00 00
+3E 40 20 00 03 20 3C 50 82 00 C7 3F B0 12 9C D2
+E0 23 3C 50 80 00 B0 12 84 D2 DB 3F 00 00 04 52
+45 54 49 00 0D 12 87 12 24 C4 00 13 34 CA 26 C7
+24 C4 2C 00 C4 D2 90 D3 DA D3 09 4B 2E 4E 0E DC
+A2 3F 32 CE 03 4D 4F 56 84 12 D0 D3 00 40 E4 D3
+05 4D 4F 56 2E 42 84 12 D0 D3 40 40 00 00 03 41
+44 44 84 12 D0 D3 00 50 FE D3 05 41 44 44 2E 42
+84 12 D0 D3 40 50 0A D4 04 41 44 44 43 00 84 12
+D0 D3 00 60 18 D4 06 41 44 44 43 2E 42 00 84 12
+D0 D3 40 60 BE D3 04 53 55 42 43 00 84 12 D0 D3
+00 70 36 D4 06 53 55 42 43 2E 42 00 84 12 D0 D3
+40 70 44 D4 03 53 55 42 84 12 D0 D3 00 80 54 D4
+05 53 55 42 2E 42 84 12 D0 D3 40 80 0E CE 03 43
+4D 50 84 12 D0 D3 00 90 6E D4 05 43 4D 50 2E 42
+84 12 D0 D3 40 90 FA CD 04 44 41 44 44 00 84 12
+D0 D3 00 A0 88 D4 06 44 41 44 44 2E 42 00 84 12
+D0 D3 40 A0 7A D4 03 42 49 54 84 12 D0 D3 00 B0
+A6 D4 05 42 49 54 2E 42 84 12 D0 D3 40 B0 B2 D4
+03 42 49 43 84 12 D0 D3 00 C0 C0 D4 05 42 49 43
+2E 42 84 12 D0 D3 40 C0 CC D4 03 42 49 53 84 12
+D0 D3 00 D0 DA D4 05 42 49 53 2E 42 84 12 D0 D3
+40 D0 00 00 03 58 4F 52 84 12 D0 D3 00 E0 F4 D4
+05 58 4F 52 2E 42 84 12 D0 D3 40 E0 26 D4 03 41
+4E 44 84 12 D0 D3 00 F0 0E D5 05 41 4E 44 2E 42
+84 12 D0 D3 40 F0 AC CA C4 D2 2C D5 0A 4C 3C F0
+70 00 8A 10 3A F0 0F 00 0C DA 4F 3F 60 D4 03 52
+52 43 84 12 26 D5 00 10 3E D5 05 52 52 43 2E 42
+84 12 26 D5 40 10 4A D5 04 53 57 50 42 00 84 12
+26 D5 80 10 58 D5 03 52 52 41 84 12 26 D5 00 11
+66 D5 05 52 52 41 2E 42 84 12 26 D5 40 11 72 D5
+03 53 58 54 84 12 26 D5 80 11 00 00 04 50 55 53
+48 00 84 12 26 D5 00 12 8C D5 06 50 55 53 48 2E
+42 00 84 12 26 D5 40 12 E6 D4 04 43 41 4C 4C 00
+84 12 26 D5 80 12 1A 53 0E 4A 0D 12 87 12 9C C7
+2E C4 0D 6F 75 74 20 6F 66 20 62 6F 75 6E 64 73
+B6 CB AC CA 2E D2 D8 D5 92 53 C4 21 3E 40 2C 00
+87 12 F2 C7 3E C9 4C C4 3C CC 86 D3 EE D5 0A 4E
+3E 4F 1A 83 E0 33 29 4E 59 0E 0A 28 08 4C 59 0A
+01 28 0C 8A 08 8A 38 90 10 00 D5 2F 5A 0E 94 3F
+2A 92 D1 2F 8A 10 5A 06 8F 3F 80 D5 04 52 52 43
+4D 00 84 12 D2 D5 50 00 1C D6 04 52 52 41 4D 00
+84 12 D2 D5 50 01 2A D6 04 52 4C 41 4D 00 84 12
+D2 D5 50 02 38 D6 04 52 52 55 4D 00 84 12 D2 D5
+50 03 9A D5 05 50 55 53 48 4D 84 12 D2 D5 00 15
+54 D6 04 50 4F 50 4D 00 84 12 D2 D5 00 17 46 D6
+03 53 3E 3D 85 12 00 38 70 D6 02 53 3C 00 85 12
+00 34 62 D6 03 30 3E 3D 85 12 00 30 84 D6 02 30
+3C 00 85 12 00 30 00 00 02 55 3C 00 85 12 00 2C
+98 D6 03 55 3E 3D 85 12 00 28 8E D6 03 30 3C 3E
+85 12 00 24 AC D6 02 30 3D 00 85 12 00 20 00 00
+02 49 46 00 1A 42 C6 21 8A 4E 00 00 A2 53 C6 21
+0E 4A 30 4D A2 D6 04 54 48 45 4E 00 1A 42 C6 21
+08 4E 3E 4F 09 48 29 53 0A 89 0A 11 3A 90 00 02
+63 2F 88 DA 00 00 30 4D 96 D4 04 45 4C 53 45 00
+1A 42 C6 21 BA 40 00 3C 00 00 A2 53 C6 21 2F 83
+8F 4A 00 00 E3 3F D6 D6 05 55 4E 54 49 4C 3A 4F
+08 4E 3E 4F 19 42 C6 21 2A 83 0A 89 0A 11 3A 90
+00 FE 42 3B 3A F0 FF 03 08 DA 89 48 00 00 A2 53
+C6 21 30 4D 1A D5 05 41 47 41 49 4E 0A 4E 38 40
+00 3C E7 3F 00 00 05 57 48 49 4C 45 0D 12 87 12
+C4 D6 82 C6 26 C7 7A D6 06 52 45 50 45 41 54 00
+0D 12 87 12 4C D7 DC D6 26 C7 7C D7 3D 41 08 4E
+3E 4F 2A 48 B2 92 C4 21 CB 2F 98 42 C6 21 00 00
+30 4D AA D5 03 42 57 31 84 12 7A D7 00 00 94 D7
+03 42 57 32 84 12 7A D7 00 00 A0 D7 03 42 57 33
+84 12 7A D7 00 00 B8 D7 3D 41 1A 42 C6 21 28 4E
+B2 92 C4 21 8E 2B BA 4F 00 00 A2 53 C6 21 8E 4A
+00 00 3E 4F 30 4D 00 00 03 46 57 31 84 12 B6 D7
+00 00 D8 D7 03 46 57 32 84 12 B6 D7 00 00 E4 D7
+03 46 57 33 84 12 B6 D7 00 00 F0 D7 04 47 4F 54
+4F 00 2F 83 8F 4E 00 00 3E 40 00 3C 0D 12 87 12
+2C CC 54 CA 26 C7 00 00 05 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
 @FFFE
-D8 D2
+A8 D0
 q
index 61619b7..d220c2e 100644 (file)
 @1800
-10 00 08 00 A1 F7 80 3E 05 00 18 00 70 D8 D0 CE
-2D 01 6B B0 B6 C4 C8 C4
+10 00 08 00 A1 F7 80 3E 05 00 18 00 0E D6 88 CC
+2E 01 6B B0 06 C3 18 C3 D4 CD
 @C200
-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 3A 41 0D 12 0D 4A
-30 4D 00 00 04 45 58 49 54 00 3D 41 30 4D 24 C2
-03 44 55 50 2F 83 8F 4E 00 00 30 4D 00 00 04 32
-44 55 50 00 8F 4E FE FF AF 4F FC FF 2F 82 30 4D
-00 00 04 3F 44 55 50 00 0E 93 EC 23 30 4D 30 C2
-04 44 52 4F 50 00 3E 4F 30 4D 2F 53 30 4D 3E C2
-04 53 57 41 50 00 2A 4F 8F 4E 00 00 0E 4A 30 4D
-52 C2 02 3E 52 00 0E 12 3E 4F 30 4D 70 C2 02 52
-3E 00 2F 83 8F 4E 00 00 3E 41 30 4D 60 C2 05 44
-45 50 54 48 8F 4E FE FF 3E 40 80 1C 0E 8F 0E 11
-2F 83 30 4D 00 00 01 2D 3E 8F 3E E3 1E 53 30 4D
-00 00 02 31 2B 00 1E 53 30 4D C2 C2 02 31 2D 00
-1E 83 30 4D 3E F3 06 34 BF E3 00 00 3E E3 9F 53
-00 00 0E 63 30 4D 00 00 01 40 2E 4E 30 4D E8 C2
-01 21 BE 4F 00 00 3E 4F 30 4D CC C2 02 30 3D 00
-1E 83 0E 7E 30 4D FC C2 02 30 3C 00 0E 5E 0E 7E
-3E E3 30 4D 00 00 01 3D 3E 8F FA 27 0E F3 30 4D
-00 00 02 55 3C 00 3E 8F F9 2B 01 24 3E 43 30 4D
-16 C3 02 3C 23 00 B2 40 B2 1D B2 1D 30 4D 0B 4E
+30 40 04 C2 B0 12 06 C3 12 D2 0A 18 F9 3F 39 40
+32 00 29 83 B9 40 6C CE CE FF FB 23 B2 40 68 C3
+F0 FF 30 41 2F 83 8F 4E 00 00 3E 4D 30 4D 2F 82
+8F 4E 02 00 7E 4D 8F 4D 00 00 0D 5E 1D B3 0D 63
+30 4D 0E 93 3E 4F 05 24 2D 4D 30 4D 0E 93 3E 4F
+FB 27 2D 53 30 4D 39 40 00 80 39 8F 08 4E 3E 4F
+08 59 19 15 30 4D 81 5E 00 00 3E 4F 32 B0 00 01
+EB 27 21 52 2D 53 30 4D 91 53 00 00 F7 3F 0B 4E
 1C 4F 02 00 2E 4F 0A 43 34 40 20 00 0E 93 04 20
 04 11 0E 4C 0C 43 09 43 0A 9B 01 28 0A 8B 09 69
 08 68 14 83 07 30 0C 5C 0E 6E 0A 6A F5 2B 0A 8B
-12 D3 F5 3F 34 40 00 C2 8F 4A 02 00 8F 49 00 00
-0E 48 30 41 00 00 01 23 1B 42 DC 1D 2C 4F 2F 83
-B0 12 46 C3 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 86 C3 02 23 53 00 87 12 88 C3 C0 C3
-2D 83 09 93 E3 23 0E 93 E1 23 3D 41 30 4D B6 C3
-02 23 3E 00 9F 42 B2 1D 00 00 3E 40 B2 1D 2E 8F
-30 4D 00 00 04 48 4F 4C 44 00 0A 4E 3E 4F DB 3F
-8E C2 04 53 49 47 4E 00 0E 93 3E 4F 3A 40 2D 00
-D2 33 30 4D 87 12 36 C3 34 C2 86 C2 D4 C2 BA C3
-92 C2 F8 C3 D4 C3 D6 C5 42 C9 82 C5 2A C2 22 C3
-02 55 2E 00 08 43 2F 83 8F 4E 00 00 0E 48 EA 3F
-00 00 01 2E 0E 93 F6 37 38 43 F5 3F 2D 4D 30 4D
-0E 93 3E 4F FB 27 2D 53 30 4D 0E 93 3E 4F F6 23
-2D 53 30 4D 39 40 00 80 39 8F 08 4E 3E 4F 08 59
-19 15 30 4D 81 5E 00 00 3E 4F 32 B0 00 01 E6 27
-2D 53 21 52 30 4D 91 53 00 00 F7 3F E4 C3 01 49
-2F 83 8F 4E 00 00 2E 41 1E 81 02 00 30 4D 00 00
-03 4B 45 59 30 40 98 C4 18 42 CC 05 2F 83 8F 4E
-00 00 B0 12 B6 C4 92 B3 DC 05 FD 27 1E 42 CC 05
-B0 12 C8 C4 30 4D A2 B3 DC 05 FD 27 B2 40 11 00
-CE 05 E2 C2 03 02 30 41 B2 40 13 00 CE 05 E2 D2
-03 02 30 41 00 00 05 53 4C 45 45 50 30 40 E0 C4
-B0 12 B6 C4 12 D2 0A 18 F9 3F F0 C2 06 41 43 43
-45 50 54 00 3C 40 64 C5 3B 40 2E C5 2D 15 0A 4E
-2E 4F 0A 5E 3B 40 0D 00 3C 40 20 00 3D 40 58 C5
-92 B3 DC 05 05 24 18 42 CC 05 38 90 0A 00 CB 23
-21 53 3D 15 DB 3F 21 52 3A 17 58 42 CC 05 48 9C
-08 2C 48 9B C9 27 78 92 11 20 2E 9F 0F 24 1E 83
-05 3C 0E 9A 03 24 CE 48 00 00 1E 53 A2 B3 DC 05
-FD 27 82 48 CE 05 30 4D 5A C5 2D 83 92 B3 DC 05
-E4 23 FC 27 82 93 DE 1D 02 24 92 53 DE 1D 3E 8F
-3D 41 B2 40 18 00 0A 18 30 4D 9E C2 04 45 4D 49
-54 00 30 40 86 C5 08 4E 3E 4F E0 3F 3F 80 06 00
-8F 4E 04 00 3E 40 54 00 BF 40 3C 1D 00 00 AF 4F
-02 00 A8 3F 7C C5 04 45 43 48 4F 00 B2 40 82 48
-52 C5 82 43 DE 1D 30 4D 32 C4 06 4E 4F 45 43 48
-4F 00 B2 40 30 4D 52 C5 92 43 DE 1D 30 4D 20 C4
-04 54 59 50 45 00 0E 93 0F 24 1E 15 3D 40 EC C5
-28 4F 7E 48 8F 48 00 00 2F 83 CB 3F EE C5 2D 83
-91 83 02 00 F5 23 1D 17 2F 53 3E 4F 30 4D D0 C3
-02 43 52 00 30 40 08 C6 87 12 1E C6 02 0D 0A 00
-D6 C5 2A C2 2F 83 8F 4E 00 00 3E 4D 30 4D 2F 82
-8F 4E 02 00 7E 4D 8F 4D 00 00 0D 5E 1D B3 0D 63
-30 4D F2 C3 82 53 22 00 82 43 B4 1D 87 12 14 C6
-1E C6 B0 C8 14 C6 22 00 80 C6 4C C6 B2 40 20 00
-B4 1D 6E 4E 1E 53 1E B3 82 6E C6 1D 3D 41 3E 4F
-30 4D BA C5 82 2E 22 00 87 12 38 C6 14 C6 D6 C5
-B0 C8 2A C2 48 43 05 3C 00 00 04 57 4F 52 44 00
-48 4E 19 42 C0 1D 1A 42 C2 1D 09 5A 1A 52 C4 1D
-09 9A 03 24 7E 9A FC 27 1A 83 4E F8 06 20 0E 4A
-1A 82 C2 1D 82 4A C4 1D 30 4D 18 42 C6 1D 3B 40
-60 00 C8 4C 00 00 09 9A 0C 24 7C 4A 4E 9C 09 24
-18 53 4B 9C F6 2F 7C 90 7B 00 F3 2F 5C 82 B4 1D
-F0 3F 1A 82 C2 1D 82 4A C4 1D 1E 42 C6 1D 08 8E
-CE 48 00 00 30 4D 00 00 04 46 49 4E 44 00 2F 83
-0C 4E 65 4C 74 40 80 00 3B 40 CA 1D 3E 4B 0E 93
-1E 24 58 4C 01 00 78 F0 1E 00 0E 58 2E 53 1E 4E
-FE FF 0E 93 F3 27 09 4E 78 49 48 C4 48 95 F7 23
-0A 4C FA 99 01 00 F3 23 1A 53 58 83 FA 23 19 B3
-09 63 0C 49 6A 4E 1E 43 4A 93 01 30 2E 83 8F 4C
-00 00 35 40 0E C2 34 40 00 C2 30 4D 82 C2 07 3E
-4E 55 4D 42 45 52 3C 4F 38 4F 29 4F 2F 82 1B 42
-DC 1D 6A 4C 7A 80 30 00 7A 90 0A 00 05 28 7A 80
-07 00 7A 90 0A 00 12 28 0A 9B 22 C3 0F 2C 82 49
-D0 04 82 48 D2 04 82 4B C8 04 19 42 E4 04 18 42
-E6 04 09 5A 08 63 1C 53 1E 83 E3 23 8F 4C 00 00
-8F 48 02 00 8F 49 04 00 30 4D 32 C0 00 02 1B 42
-DC 1D 0C 43 2D 15 3D 40 F4 C7 09 43 08 43 3F 82
-8F 4E 06 00 0C 4E 7E 4C 6A 4C 7A 90 2D 00 04 28
-C9 23 B1 43 02 00 DF 3F 2B 43 7A 80 25 00 07 24
-3B 52 6A 53 04 24 3B 40 10 00 5A 83 BA 23 1C 53
-1E 83 EA 3F F6 C7 2F 24 2D 83 7A 90 28 00 CB 27
-32 D0 00 02 7A 90 F7 00 C6 27 7A 90 F5 00 23 20
-0A 4E 09 43 8F 49 02 00 5A 83 09 4A 09 5C 69 49
-79 80 30 00 79 90 0A 00 05 28 79 80 07 00 79 90
-0A 00 0A 28 09 9B 08 2C 8F 49 00 00 0E 4B 2C 15
-B0 12 3E C3 2A 17 E6 3F 9F 4F 04 00 02 00 AF 4F
-04 00 0E 4A 4E 93 2B 17 0E 4C 82 4B DC 1D 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 7E C4 04 48 45 52 45 00
-2F 83 8F 4E 00 00 1E 42 C6 1D 30 4D B6 C2 01 2C
-1A 42 C6 1D 8A 4E 00 00 A2 53 C6 1D 3E 4F 30 4D
-EC C4 05 41 4C 4C 4F 54 82 5E C6 1D 3E 4F 30 4D
-A6 C5 07 45 58 45 43 55 54 45 0A 4E 3E 4F 00 4A
-AE C8 87 4C 49 54 45 52 41 4C 82 93 BE 1D 0C 24
-1A 42 C6 1D A2 52 C6 1D BA 40 14 C6 00 00 8A 4E
-02 00 3E 4F 32 B0 00 02 32 C0 00 02 06 24 19 4A
-02 00 8A 4E 02 00 0E 49 EB 3F 30 4D 00 C6 05 43
-4F 55 4E 54 2F 83 1E 53 8F 4E 00 00 5E 4E FF FF
-30 4D 82 4E C0 1D B2 4F C2 1D 3E 4F 82 43 C4 1D
-30 4D 85 12 20 00 87 12 32 C9 42 C9 80 C6 50 C9
-3D 40 58 C9 CC 22 82 3E 5A C9 0A 4E 3E 4F 3D 40
-70 C9 23 27 3D 40 4A C9 1A E2 BE 1D A1 27 B5 23
-72 C9 3E 4F 3D 40 4A C9 B8 23 DE 53 00 00 68 4E
-08 5E F8 40 3F 00 00 00 3D 40 26 CC CB 3F D2 C8
+12 D3 F5 3F 34 40 EC C2 8F 4A 02 00 8F 49 00 00
+0E 48 30 41 82 4E C0 1D B2 4F C2 1D 3E 4F 82 43
+C4 1D 30 4D 3F 80 06 00 8F 4E 04 00 3E 40 54 00
+BF 40 3C 1D 00 00 AF 4F 02 00 24 3C 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 A2 B3 DC 05 FD 27 B2 40 11 00
+CE 05 E2 C2 03 02 30 41 A2 B3 DC 05 FD 27 B2 40
+13 00 CE 05 E2 D2 03 02 30 41 00 00 06 41 43 43
+45 50 54 00 3C 40 A6 C3 3B 40 70 C3 2D 15 0A 4E
+2E 4F 0A 5E 3B 40 0D 00 3C 40 20 00 3D 40 9A C3
+92 B3 DC 05 05 24 18 42 CC 05 38 90 0A 00 D3 23
+21 53 3D 15 30 40 00 C2 21 52 3A 17 58 42 CC 05
+48 9C 08 2C 48 9B D0 27 78 92 11 20 2E 9F 0F 24
+1E 83 05 3C 0E 9A 03 24 CE 48 00 00 1E 53 A2 B3
+DC 05 FD 27 82 48 CE 05 30 4D 9C C3 2D 83 92 B3
+DC 05 E4 23 FC 27 82 93 DE 1D 02 24 92 53 DE 1D
+3E 8F 3D 41 B2 40 18 00 0A 18 30 4D 00 00 04 45
+4D 49 54 00 30 40 C8 C3 08 4E 3E 4F E0 3F BE C3
+04 45 43 48 4F 00 B2 40 82 48 94 C3 82 43 DE 1D
+30 4D 00 00 06 4E 4F 45 43 48 4F 00 B2 40 30 4D
+94 C3 92 43 DE 1D 30 4D 00 00 04 54 59 50 45 00
+0E 93 0F 24 1E 15 3D 40 16 C4 28 4F 7E 48 8F 48
+00 00 2F 83 D7 3F 18 C4 2D 83 91 83 02 00 F5 23
+1D 17 2F 53 3E 4F 30 4D 00 00 02 43 52 00 30 40
+32 C4 0D 12 87 12 2E C2 02 0D 0A 00 00 C4 26 C5
+00 00 03 4B 45 59 30 40 4A C4 18 42 CC 05 2F 83
+8F 4E 00 00 B0 12 06 C3 92 B3 DC 05 FD 27 1E 42
+CC 05 B0 12 18 C3 30 4D 2F 83 8F 4E 00 00 30 4D
+8F 4E FE FF AF 4F FC FF 2F 82 30 4D 0E 93 F4 23
+30 4D 2A 4F 8F 4E 00 00 0E 4A 30 4D 8F 4E FE FF
+3E 40 80 1C 0E 8F 0E 11 2F 83 30 4D 2F 83 8F 4E
+00 00 3E 41 30 4D 3E 8F 3E E3 1E 53 30 4D BE 4F
+00 00 3E 4F 30 4D 1E 83 0E 7E 30 4D 0E 5E 0E 7E
+3E E3 30 4D 3E 8F 03 24 3E 43 01 2C 0E F3 30 4D
+00 00 02 3C 23 00 B2 40 B2 1D B2 1D 30 4D 2A C4
+01 23 1B 42 DC 1D 2C 4F 2F 83 B0 12 86 C2 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 E0 C4
+02 23 53 00 0D 12 87 12 E2 C4 1C C5 2D 83 09 93
+E2 23 0E 93 E0 23 3D 41 30 4D 10 C5 02 23 3E 00
+9F 42 B2 1D 00 00 3E 40 B2 1D 2E 8F 30 4D 00 00
+04 48 4F 4C 44 00 4A 4E 3E 4F DA 3F 00 00 04 53
+49 47 4E 00 0E 93 3E 4F 7A 40 2D 00 D1 33 30 4D
+FA C3 02 55 2E 00 08 43 2F 83 8F 4E 00 00 0E 48
+0D 12 0E 12 3E F3 06 34 BF E3 00 00 3E E3 9F 53
+00 00 0E 63 87 12 D6 C4 14 C5 9C C4 54 C5 30 C5
+00 C4 70 C8 C4 C3 26 C5 E4 C3 01 2E 0E 93 E3 37
+38 43 E2 3F 4E C5 82 53 22 00 82 43 B4 1D 0D 12
+87 12 24 C2 2E C2 F8 C7 24 C2 22 00 F2 C5 C0 C5
+B2 40 20 00 B4 1D 6E 4E 1E 53 1E B3 82 6E C6 1D
+3D 41 3E 4F 30 4D 9A C5 82 2E 22 00 0D 12 87 12
+AA C5 24 C2 00 C4 F8 C7 26 C5 00 00 04 57 4F 52
+44 00 3C 40 C0 1D 39 4C 3A 4C 09 5A 3A 5C 28 4C
+09 9A 15 24 7E 9A FC 27 1A 83 3B 40 60 00 C8 4C
+00 00 09 9A 0C 24 7C 4A 4E 9C 09 24 18 53 4B 9C
+F6 2F 7C 90 7B 00 F3 2F 5C 82 B4 1D F0 3F 1A 82
+C2 1D 82 4A C4 1D 1E 42 C6 1D 08 8E CE 48 00 00
+30 4D 00 00 04 46 49 4E 44 00 2F 83 0C 4E 65 4C
+74 40 80 00 3B 40 CA 1D 3E 4B 0E 93 1E 24 58 4C
+01 00 78 F0 1E 00 0E 58 2E 53 1E 4E FE FF 0E 93
+F3 27 09 4E 78 49 48 C4 48 95 F7 23 0A 4C FA 99
+01 00 F3 23 1A 53 58 83 FA 23 19 B3 09 63 0C 49
+6A 4E 1E 43 4A 93 01 30 2E 83 8F 4C 00 00 35 40
+FA C2 34 40 EC C2 30 4D 00 00 07 3E 4E 55 4D 42
+45 52 3C 4F 38 4F 29 4F 2F 82 1B 42 DC 1D 6A 4C
+7A 80 30 00 7A 90 0A 00 05 28 7A 80 07 00 7A 90
+0A 00 12 28 0A 9B 22 C3 0F 2C 82 49 D0 04 82 48
+D2 04 82 4B C8 04 19 42 E4 04 18 42 E6 04 09 5A
+08 63 1C 53 1E 83 E3 23 8F 4C 00 00 8F 48 02 00
+8F 49 04 00 30 4D 32 C0 00 02 1B 42 DC 1D 0C 43
+2D 15 3D 40 50 C7 09 43 08 43 3F 82 8F 4E 06 00
+0C 4E 7E 4C 6A 4C 7A 90 2D 00 04 28 C9 23 B1 43
+02 00 0B 3C 2B 43 7A 80 25 00 07 24 3B 52 6A 53
+04 24 3B 40 10 00 5A 83 BA 23 1C 53 1E 83 EA 3F
+52 C7 2F 24 2D 83 7A 90 28 00 CB 27 32 D0 00 02
+7A 90 F7 00 C6 27 7A 90 F5 00 23 20 0A 4E 09 43
+8F 49 02 00 5A 83 09 4A 09 5C 69 49 79 80 30 00
+79 90 0A 00 05 28 79 80 07 00 79 90 0A 00 0A 28
+09 9B 08 2C 8F 49 00 00 0E 4B 2C 15 B0 12 7E C2
+2A 17 E6 3F 9F 4F 04 00 02 00 AF 4F 04 00 0E 4A
+4E 93 2B 17 0E 4C 82 4B DC 1D 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 00 00 01 2C 1A 42 C6 1D 8A 4E 00 00
+A2 53 C6 1D 3E 4F 30 4D 2C C3 05 41 4C 4C 4F 54
+82 5E C6 1D 3E 4F 30 4D 0A 4E 3E 4F 00 4A F6 C7
+87 4C 49 54 45 52 41 4C 82 93 BE 1D 0C 24 1A 42
+C6 1D A2 52 C6 1D BA 40 24 C2 00 00 8A 4E 02 00
+3E 4F 32 B0 00 02 32 C0 00 02 06 24 19 4A 02 00
+8A 4E 02 00 0E 49 EB 3F 30 4D 2C C5 05 43 4F 55
+4E 54 2F 83 1E 53 8F 4E 00 00 5E 4E FF FF 30 4D
+85 12 20 00 0D 12 87 12 C4 C2 70 C8 F2 C5 80 C8
+3D 40 88 C8 E2 22 A4 26 8A C8 0A 4E 3E 4F 3D 40
+A0 C8 39 27 3D 40 7A C8 1A E2 BE 1D BD 23 AC 27
+A2 C8 3E 4F 3D 40 7A C8 BF 23 DE 53 00 00 68 4E
+08 5E F8 40 3F 00 00 00 3D 40 20 CB D2 3F D0 C3
 08 45 56 41 4C 55 41 54 45 00 39 40 C0 1D 3C 49
-3B 49 3A 49 3D 15 B0 12 2A C2 46 C9 AE C9 B2 41
-C4 1D B2 41 C2 1D B2 41 C0 1D 3D 41 30 4D 85 12
-BE 1D 08 C3 04 51 55 49 54 00 82 43 08 18 31 40
-E0 1C B2 40 00 1C 00 1C 82 43 BE 1D B0 12 2A C2
-04 C6 8C C5 42 C9 82 C5 46 C9 A4 C2 0C C3 1E C6
-0C 73 74 61 63 6B 20 65 6D 70 74 79 21 00 40 CA
-14 C6 30 FF A0 C8 26 C3 1E C6 0A 46 52 41 4D 20
-66 75 6C 6C 21 00 40 CA 3C C4 E0 C9 C2 C8 05 41
-42 4F 52 54 3F 40 80 1C D0 3F 1E CA 86 41 42 4F
-52 54 22 00 87 12 38 C6 14 C6 40 CA B0 C8 2A C2
-8F 93 02 00 03 20 2F 52 3E 4F 30 4D B0 12 C8 CF
-B0 12 B6 C4 92 C3 DC 05 38 40 A0 AA 39 42 03 43
-19 83 FD 23 18 83 FA 23 92 B3 DC 05 F3 23 87 12
-42 CF 14 C6 DE 1D EA C2 AC C5 1E C6 04 1B 5B 37
-6D 00 D6 C5 58 C2 40 C4 9A CA 04 C6 1E C6 05 6C
-69 6E 65 3A D6 C5 D0 C2 24 C4 D6 C5 1E C6 04 1B
-5B 30 6D 00 D6 C5 24 CA 00 00 83 5B 27 5D 87 12
-C0 CA 14 C6 14 C6 B0 C8 B0 C8 2A C2 E8 C6 01 27
-87 12 42 C9 80 C6 EE C6 40 C4 CE CA 2A C2 7A C9
-32 C3 81 5C 92 42 C0 1D C4 1D 30 4D AA CA 81 5B
-82 43 BE 1D 30 4D D2 CA 01 5D B2 43 BE 1D 30 4D
-BE 4F 02 00 3E 4F 30 4D 9A C8 82 49 53 00 87 12
-BE C9 EA C2 40 C4 12 CB AE CA 14 C6 F0 CA B0 C8
-2A C2 C0 CA F0 CA 2A C2 FA CA 09 49 4D 4D 45 44
-49 41 54 45 1A 42 B6 1D FA D0 80 00 00 00 30 4D
-C4 C9 88 50 4F 53 54 50 4F 4E 45 00 87 12 42 C9
-80 C6 EE C6 58 C2 40 C4 CE CA 0C C3 40 C4 5C CB
-14 C6 14 C6 B0 C8 B0 C8 14 C6 B0 C8 B0 C8 2A C2
-DE CA 81 3B 82 93 BE 1D B5 27 87 12 14 C6 2A C2
-B0 C8 FA CB E0 CA 2A C2 62 CB 07 3A 4E 4F 4E 41
-4D 45 30 12 A0 CB 2F 83 8F 4E 00 00 1E 42 C6 1D
-1E B3 0E 63 0A 4E 39 40 00 02 38 40 02 02 21 3C
-BA 40 87 12 FC FF A2 83 C6 1D B2 43 BE 1D 30 4D
-7A CB 01 3A 30 12 A0 CB 92 B3 C6 1D A2 63 C6 1D
-87 12 42 C9 80 C6 C8 CB 3D 41 08 4E 7A 4E 5A D3
-5A 53 0A 58 19 42 DA 1D 6E 4E 3E F0 1E 00 09 5E
-3E 4F 82 48 B6 1D 82 49 B8 1D 82 4A BA 1D 82 4F
-BC 1D 2A 52 82 4A C6 1D 30 41 82 9F BC 1D 09 20
-18 42 B6 1D 19 42 B8 1D A8 49 FE FF 89 48 00 00
-30 4D 87 12 1E C6 0F 73 74 61 63 6B 20 6D 69 73
-6D 61 74 63 68 21 4C CA 90 C9 05 44 45 46 45 52
-B0 12 B8 CB BA 40 30 40 FC FF BA 40 AE CB FE FF
-E3 3F 1E C9 06 43 52 45 41 54 45 00 B0 12 B8 CB
-BA 40 85 12 FC FF 8A 4A FE FF D6 3F 2A CC 05 44
-4F 45 53 3E 1A 42 BA 1D BA 40 84 12 00 00 8A 4D
-02 00 3D 41 30 4D 4E C7 05 3E 42 4F 44 59 2E 52
-30 4D 44 CC 04 43 4F 44 45 00 B0 12 B8 CB A2 82
-C6 1D 87 12 D2 CE AC CE 2A C2 84 CC 07 43 4F 44
-45 4E 4E 4D B0 12 86 CB F2 3F 00 00 07 45 4E 44
-43 4F 44 45 87 12 E0 CE FA CB 2A C2 2C CA 03 41
-53 4D B2 40 B0 CE DA 1D E0 3F AC CC 06 45 4E 44
-41 53 4D 00 87 12 B4 CC F4 CE 2A C2 00 00 05 43
-4F 4C 4F 4E 1A 42 C6 1D BA 40 87 12 00 00 A2 53
-C6 1D B2 43 BE 1D 30 40 E0 CE 00 00 05 4C 4F 32
-48 49 1A 42 C6 1D BA 40 B0 12 00 00 BA 40 2A C2
-02 00 A2 52 C6 1D ED 3F 1A CB 85 48 49 32 4C 4F
-87 12 A0 C8 4A CD B0 C8 E0 CA D2 CE AC CE 2A C2
-1A CD 82 49 46 00 2F 83 8F 4E 00 00 1E 42 C6 1D
-A2 52 C6 1D BE 40 40 C4 00 00 2E 53 30 4D 5E CC
-84 45 4C 53 45 00 A2 52 C6 1D 1A 42 C6 1D BA 40
-3C C4 FC FF 8E 4A 00 00 2A 83 0E 4A 30 4D D0 C5
-84 54 48 45 4E 00 9E 42 C6 1D 00 00 3E 4F 30 4D
-9C CC 85 42 45 47 49 4E 30 40 A0 C8 70 CD 85 55
-4E 54 49 4C 39 40 40 C4 A2 52 C6 1D 1A 42 C6 1D
-8A 49 FC FF 8A 4E FE FF 3E 4F 30 4D BE CC 85 41
-47 41 49 4E 39 40 3C C4 EF 3F 7A C6 85 57 48 49
-4C 45 87 12 36 CD 76 C2 2A C2 34 C6 86 52 45 50
-45 41 54 00 87 12 B4 CD 76 CD 2A C2 50 CD 82 44
-4F 00 2F 83 8F 4E 00 00 A2 53 C6 1D 1E 42 C6 1D
-BE 40 54 C4 FE FF A2 53 00 1C 1A 42 00 1C 8A 43
-00 00 30 4D E2 C8 84 4C 4F 4F 50 00 39 40 76 C4
-A2 52 C6 1D 1A 42 C6 1D 8A 49 FC FF 8A 4E FE FF
-1E 42 00 1C A2 83 00 1C 2E 4E 0E 93 03 24 8E 4A
-00 00 F6 3F 3E 4F 30 4D 90 C4 85 2B 4C 4F 4F 50
-39 40 64 C4 E5 3F 06 CE 04 4D 4F 56 45 00 0A 4E
-38 4F 39 4F 3E 4F 0A 93 11 24 08 99 0F 24 06 2C
-F8 49 00 00 18 53 1A 83 FB 23 30 4D 08 5A 09 5A
-19 83 18 83 E8 49 00 00 1A 83 FA 23 30 4D 14 C6
-CA 1D F2 C2 2A C2 84 12 7E CE AE CD 56 D1 DE CD
-BE CA 32 CD 3A CE 6A D2 64 C6 66 CF 80 CF 8E CD
-00 D0 00 00 3C D2 E8 CA 78 CC 00 00 84 12 7E CE
-88 D7 EA D7 3C D7 5E D8 02 D7 00 00 32 D4 00 00
-F8 D6 A8 D7 5A D7 98 D7 42 D5 00 00 00 00 3A D8
-AA CE 3A 40 0C 00 39 40 CA 1D 38 40 CC 1D C6 3F
-3A 40 0E 00 39 40 CC 1D 38 40 CA 1D B9 3F 82 43
-CC 1D 30 4D 92 42 CA 1D DA 1D 30 4D 86 CE EE CE
-F4 CE 04 CF 3A 4E 82 4A C8 1D 2E 4E 82 4E C6 1D
-3D 40 10 00 09 4A 08 49 29 83 18 48 FE FF 0E 98
-FC 2B 89 48 00 00 1D 83 F6 23 2A 4A 0A 93 F0 23
-3E 4F 3D 41 30 4D 32 CB 09 50 57 52 5F 53 54 41
-54 45 84 12 FC CE D0 CE 70 D8 CC CD 09 52 53 54
-5F 53 54 41 54 45 92 42 0E 18 46 CF 92 42 0C 18
-48 CF EF 3F 38 CF 08 50 57 52 5F 48 45 52 45 00
-92 42 C8 1D 46 CF 92 42 C6 1D 48 CF 30 4D 4C CF
-08 52 53 54 5F 48 45 52 45 00 92 42 C8 1D 0E 18
-92 42 C6 1D 0C 18 EC 3F BC CD 04 57 49 50 45 00
-39 40 10 00 29 83 B9 43 80 FF FC 23 B2 40 E0 C4
-DE C4 B2 40 0A D0 08 D0 B2 40 D0 CE 0E 18 B2 40
-70 D8 0C 18 30 12 56 CF B2 40 86 C5 84 C5 B2 40
-08 C6 06 C6 B2 40 98 C4 96 C4 B2 40 18 00 0A 18
-37 40 1A C2 36 40 92 C2 35 40 0E C2 34 40 00 C2
-B2 40 0A 00 DC 1D B2 40 20 00 B4 1D 30 41 9A CF
-04 57 41 52 4D 00 30 40 0A D0 3D 40 3E D0 92 C3
-30 01 1E 42 08 18 0E 93 11 24 D2 B3 01 02 02 20
-3E E3 1E 53 F2 D0 03 00 0D 02 3E 90 0A 00 B8 27
-3E 90 16 00 B5 2F 2E 93 84 27 8D 2F 30 4D 1E C6
-06 0D 1B 5B 37 6D 23 00 D6 C5 34 C4 1E C6 19 46
-61 73 74 46 6F 72 74 68 20 C2 A9 4A 2E 4D 2E 54
-68 6F 6F 72 65 6E 73 20 D6 C5 14 C6 30 FF A0 C8
-B8 C2 24 C4 1E C6 0A 62 79 74 65 73 20 66 72 65
-65 00 3C C4 9A CA 82 CD 04 43 4F 4C 44 00 92 B3
-CA 05 FD 23 B2 40 04 A5 20 01 3E D0 92 D3 30 01
-B2 40 88 5A 5C 01 B2 43 06 02 B2 40 EF 7F 02 02
-E2 D2 05 02 B2 43 26 02 B2 D0 08 FF 22 02 F2 D3
-26 03 F2 40 F0 00 22 03 F2 40 A5 00 61 01 B2 40
-80 00 62 01 82 43 66 01 39 40 00 01 B2 40 33 00
-64 01 D2 43 61 01 92 D2 9E 01 08 18 38 40 59 14
-18 83 FE 23 19 83 FA 23 B2 D2 B0 01 92 C3 B0 01
-F2 D0 10 00 2A 03 F2 C0 40 00 A1 04 39 40 00 04
-29 83 89 43 00 1C FC 23 39 40 32 00 29 83 B9 40
-9C D0 CE FF FB 23 B2 40 26 C5 F0 FF B2 40 81 00
-C0 05 92 42 02 18 C6 05 92 42 04 18 C8 05 92 C3
-C0 05 92 D3 DA 05 3F 40 80 1C 31 40 E0 1C 30 12
-06 D0 43 3F 88 D0 07 43 4F 4D 50 41 52 45 0C 4E
-38 4F 3B 4F 39 4F 0E 4B 0E 5C 0C 24 1B 83 07 30
-1C 83 07 30 19 53 F9 98 FF FF F5 27 02 2C 3E 43
-30 4D 1E 43 30 4D B2 CB 86 5B 54 48 45 4E 5D 00
-30 4D 88 D1 86 5B 45 4C 53 45 5D 00 87 12 14 C6
-00 00 C6 C2 42 C9 80 C6 24 C9 34 C2 40 C4 FE D1
-44 C2 1E C6 06 5B 54 48 45 4E 5D 00 5E D1 4A C4
-CE D1 F8 C5 D0 C2 58 C2 4A C4 A4 D1 2A C2 44 C2
-1E C6 06 5B 45 4C 53 45 5D 00 5E D1 4A C4 EC D1
-F8 C5 D0 C2 58 C2 4A C4 A2 D1 2A C2 1E C6 04 5B
-49 46 5D 00 5E D1 4A C4 A4 D1 3C C4 A2 D1 F8 C5
-1E C6 05 0D 0A 6B 6F 20 D6 C5 8C C5 32 C9 3C C4
-A4 D1 94 D1 84 5B 49 46 5D 00 0E 93 3E 4F BE 27
-30 4D 14 D2 89 5B 44 45 46 49 4E 45 44 5D 87 12
-42 C9 80 C6 EE C6 6A C2 2A C2 24 D2 8B 5B 55 4E
-44 45 46 49 4E 45 44 5D 87 12 42 C9 80 C6 EE C6
-6A C2 00 C3 2A C2 58 D2 3D 41 B2 4E 0E 18 A2 4E
-0C 18 3E 4F 30 40 56 CF 48 CE 06 4D 41 52 4B 45
-52 00 B0 12 B8 CB BA 40 84 12 FC FF BA 40 56 D2
-FE FF 9A 42 C8 1D 00 00 28 83 8A 48 02 00 A2 52
-C6 1D 30 40 00 CC 1C 15 B0 12 2A C2 80 C6 EE C6
-4A C4 AC D2 AA C7 40 C4 CE CA C6 D2 AE D2 39 4E
-39 80 86 12 08 24 19 53 02 20 2E 4E 04 3C 2E 53
-19 53 01 24 2E 82 1B 17 30 41 3E 40 28 00 B0 12
-96 D2 19 42 C6 1D A2 53 C6 1D 89 4E 00 00 3E 40
-29 00 1C 15 12 12 C4 1D 92 53 C4 1D B0 12 2A C2
-80 C6 AA C7 40 C4 04 D3 FA D2 21 53 3E 90 10 00
-7D 2D E1 2B 06 D3 B2 41 C4 1D DD 3F 87 12 42 C9
-74 C6 14 D3 0C 43 1B 42 C6 1D A2 53 C6 1D 6A 4E
-3E 4F 7A 90 23 00 27 20 92 53 C4 1D B0 12 96 D2
-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 C6 1D A2 53 C6 1D 89 4E 00 00
-3E 4F 3D 41 30 4D 7A 90 26 00 07 20 3C 40 10 02
-92 53 C4 1D B0 12 96 D2 ED 3F 7A 90 40 00 16 20
-3C 40 20 00 92 53 C4 1D B0 12 E2 D2 0C 20 3C 50
-10 00 3E 40 2B 00 B0 12 E2 D2 92 92 C0 1D C4 1D
-02 24 92 53 C4 1D 8E 10 0C 5E DA 3F B0 12 E2 D2
-FA 23 3C 50 10 00 B0 12 CA D2 EF 3F 0C 43 1B 42
-C6 1D A2 53 C6 1D 87 12 42 C9 74 C6 DE D3 FE 90
-26 00 00 00 3E 40 20 00 03 20 3C 50 82 00 C8 3F
-B0 12 E2 D2 E1 23 3C 50 80 00 B0 12 CA D2 DC 3F
-D6 C4 04 52 45 54 49 00 87 12 14 C6 00 13 B0 C8
-2A C2 14 C6 2C 00 0C D3 D6 D3 1C D4 09 4B 2E 4E
-0E DC A4 3F FC CC 03 4D 4F 56 84 12 12 D4 00 40
-26 D4 05 4D 4F 56 2E 42 84 12 12 D4 40 40 00 00
-03 41 44 44 84 12 12 D4 00 50 40 D4 05 41 44 44
-2E 42 84 12 12 D4 40 50 4C D4 04 41 44 44 43 00
-84 12 12 D4 00 60 5A D4 06 41 44 44 43 2E 42 00
-84 12 12 D4 40 60 02 D4 04 53 55 42 43 00 84 12
-12 D4 00 70 78 D4 06 53 55 42 43 2E 42 00 84 12
-12 D4 40 70 86 D4 03 53 55 42 84 12 12 D4 00 80
-96 D4 05 53 55 42 2E 42 84 12 12 D4 40 80 DE CC
-03 43 4D 50 84 12 12 D4 00 90 B0 D4 05 43 4D 50
-2E 42 84 12 12 D4 40 90 CC CC 04 44 41 44 44 00
-84 12 12 D4 00 A0 CA D4 06 44 41 44 44 2E 42 00
-84 12 12 D4 40 A0 BC D4 03 42 49 54 84 12 12 D4
-00 B0 E8 D4 05 42 49 54 2E 42 84 12 12 D4 40 B0
-F4 D4 03 42 49 43 84 12 12 D4 00 C0 02 D5 05 42
-49 43 2E 42 84 12 12 D4 40 C0 0E D5 03 42 49 53
-84 12 12 D4 00 D0 1C D5 05 42 49 53 2E 42 84 12
-12 D4 40 D0 00 00 03 58 4F 52 84 12 12 D4 00 E0
-36 D5 05 58 4F 52 2E 42 84 12 12 D4 40 E0 68 D4
-03 41 4E 44 84 12 12 D4 00 F0 50 D5 05 41 4E 44
-2E 42 84 12 12 D4 40 F0 42 C9 0C D3 6E D5 0A 4C
-3C F0 70 00 8A 10 3A F0 0F 00 0C DA 4F 3F A2 D4
-03 52 52 43 84 12 68 D5 00 10 80 D5 05 52 52 43
-2E 42 84 12 68 D5 40 10 8C D5 04 53 57 50 42 00
-84 12 68 D5 80 10 9A D5 03 52 52 41 84 12 68 D5
-00 11 A8 D5 05 52 52 41 2E 42 84 12 68 D5 40 11
-B4 D5 03 53 58 54 84 12 68 D5 80 11 00 00 04 50
-55 53 48 00 84 12 68 D5 00 12 CE D5 06 50 55 53
-48 2E 42 00 84 12 68 D5 40 12 28 D5 04 43 41 4C
-4C 00 84 12 68 D5 80 12 1A 53 0E 4A 87 12 34 C4
-1E C6 0D 6F 75 74 20 6F 66 20 62 6F 75 6E 64 73
-4C CA 42 C9 74 C6 18 D6 92 53 C4 1D 3E 40 2C 00
-B0 12 2A C2 80 C6 AA C7 40 C4 CE CA CC D3 30 D6
-0A 4E 3E 4F 1A 83 E0 33 29 4E 59 0E 0A 28 08 4C
-59 0A 01 28 0C 8A 08 8A 38 90 10 00 D5 2F 5A 0E
-94 3F 2A 92 D1 2F 8A 10 5A 06 8F 3F C2 D5 04 52
-52 43 4D 00 84 12 12 D6 50 00 5E D6 04 52 52 41
-4D 00 84 12 12 D6 50 01 6C D6 04 52 4C 41 4D 00
-84 12 12 D6 50 02 7A D6 04 52 52 55 4D 00 84 12
-12 D6 50 03 DC D5 05 50 55 53 48 4D 84 12 12 D6
-00 15 96 D6 04 50 4F 50 4D 00 84 12 12 D6 00 17
-88 D6 03 53 3E 3D 85 12 00 38 B2 D6 02 53 3C 00
-85 12 00 34 A4 D6 03 30 3E 3D 85 12 00 30 C6 D6
-02 30 3C 00 85 12 00 30 00 00 02 55 3C 00 85 12
-00 2C DA D6 03 55 3E 3D 85 12 00 28 D0 D6 03 30
-3C 3E 85 12 00 24 EE D6 02 30 3D 00 85 12 00 20
-00 00 02 49 46 00 1A 42 C6 1D 8A 4E 00 00 A2 53
-C6 1D 0E 4A 30 4D E4 D6 04 54 48 45 4E 00 1A 42
-C6 1D 08 4E 3E 4F 09 48 29 53 0A 89 0A 11 3A 90
-00 02 63 2F 88 DA 00 00 30 4D D8 D4 04 45 4C 53
-45 00 1A 42 C6 1D BA 40 00 3C 00 00 A2 53 C6 1D
-2F 83 8F 4A 00 00 E3 3F 18 D7 05 55 4E 54 49 4C
-3A 4F 08 4E 3E 4F 19 42 C6 1D 2A 83 0A 89 0A 11
-3A 90 00 FE 42 3B 3A F0 FF 03 08 DA 89 48 00 00
-A2 53 C6 1D 30 4D 5C D5 05 41 47 41 49 4E 0A 4E
-38 40 00 3C E7 3F 00 00 05 57 48 49 4C 45 87 12
-06 D7 76 C2 2A C2 BC D6 06 52 45 50 45 41 54 00
-87 12 8E D7 1E D7 2A C2 BA D7 3D 41 08 4E 3E 4F
-2A 48 B2 92 C4 1D CD 2F 98 42 C6 1D 00 00 30 4D
-EC D5 03 42 57 31 84 12 B8 D7 00 00 D2 D7 03 42
-57 32 84 12 B8 D7 00 00 DE D7 03 42 57 33 84 12
-B8 D7 00 00 F6 D7 3D 41 1A 42 C6 1D 28 4E B2 92
-C4 1D 90 2B BA 4F 00 00 A2 53 C6 1D 8E 4A 00 00
-3E 4F 30 4D 00 00 03 46 57 31 84 12 F4 D7 00 00
-16 D8 03 46 57 32 84 12 F4 D7 00 00 22 D8 03 46
-57 33 84 12 F4 D7 00 00 00 00 05 3F 47 4F 54 4F
-3E 90 00 30 07 24 3E E0 00 04 3E B0 00 10 02 24
-3E E0 00 08 87 12 C0 CA DA C8 2A C2 2E D8 04 47
-4F 54 4F 00 2F 83 8F 4E 00 00 3E 40 00 3C F2 3F
+3B 49 3A 49 3D 15 87 12 74 C8 DC C8 B2 41 C4 1D
+B2 41 C2 1D B2 41 C0 1D 3D 41 30 4D 85 12 BE 1D
+00 00 04 51 55 49 54 00 82 43 08 18 31 40 E0 1C
+B2 40 00 1C 00 1C 82 43 BE 1D 87 12 2E C4 D4 C2
+70 C8 C4 C3 74 C8 8C C4 BC C4 2E C2 0C 73 74 61
+63 6B 20 65 6D 70 74 79 21 00 6E C9 24 C2 40 FF
+2A CC C4 C4 2E C2 0A 46 52 41 4D 20 66 75 6C 6C
+21 00 6E C9 48 C2 0C C9 0A C8 05 41 42 4F 52 54
+3F 40 80 1C D1 3F 4A C9 86 41 42 4F 52 54 22 00
+0D 12 87 12 AA C5 24 C2 6E C9 F8 C7 26 C5 8F 93
+02 00 03 20 2F 52 3E 4F 30 4D B0 12 96 CD B0 12
+06 C3 92 C3 DC 05 18 42 06 18 39 40 20 00 19 83
+FE 23 18 83 FA 23 92 B3 DC 05 F3 23 0D 12 87 12
+10 CD 24 C2 DE 1D 02 C3 D6 C3 2E C2 04 1B 5B 37
+6D 00 00 C4 7C C4 4C C2 C8 C9 2E C4 2E C2 05 6C
+69 6E 65 3A 00 C4 66 C5 00 C4 2E C2 04 1B 5B 30
+6D 00 00 C4 50 C9 00 00 83 5B 27 5D 0D 12 87 12
+F0 C9 24 C2 24 C2 F8 C7 F8 C7 26 C5 44 C6 01 27
+0D 12 87 12 70 C8 F2 C5 4A C6 4C C2 00 CA 26 C5
+AA C8 D2 C4 81 5C 92 42 C0 1D C4 1D 30 4D D8 C9
+81 5B 82 43 BE 1D 30 4D 04 CA 01 5D B2 43 BE 1D
+30 4D F2 C8 88 50 4F 53 54 50 4F 4E 45 00 0D 12
+87 12 70 C8 F2 C5 4A C6 7C C4 4C C2 00 CA BC C4
+4C C2 50 CA 24 C2 24 C2 F8 C7 F8 C7 24 C2 F8 C7
+F8 C7 26 C5 40 C5 09 49 4D 4D 45 44 49 41 54 45
+1A 42 B6 1D FA D0 80 00 00 00 30 4D 10 CA 01 3A
+30 12 B8 CA 92 B3 C6 1D A2 63 C6 1D 0D 12 87 12
+70 C8 F2 C5 86 CA 3D 41 08 4E 7A 4E 5A D3 5A 53
+0A 58 19 42 DA 1D 6E 4E 3E F0 1E 00 09 5E 3E 4F
+82 48 B6 1D 82 49 B8 1D 82 4A BA 1D 82 4F BC 1D
+2A 52 82 4A C6 1D 30 41 BA 40 0D 12 FC FF BA 40
+87 12 FE FF B2 43 BE 1D 30 4D 6E CA 07 3A 4E 4F
+4E 41 4D 45 30 12 B8 CA 2F 83 8F 4E 00 00 1E 42
+C6 1D 1E B3 0E 63 0A 4E 39 40 10 02 38 40 12 02
+D7 3F 82 9F BC 1D 09 20 18 42 B6 1D 19 42 B8 1D
+A8 49 FE FF 89 48 00 00 30 4D 0D 12 87 12 2E C2
+0F 73 74 61 63 6B 20 6D 69 73 6D 61 74 63 68 21
+7A C9 CC CA 81 3B 82 93 BE 1D 6D 27 0D 12 87 12
+24 C2 26 C5 F8 C7 F2 CA 12 CA 26 C5 5C C8 06 43
+52 45 41 54 45 00 B0 12 74 CA BA 40 85 12 FC FF
+8A 4A FE FF D5 3F C0 C8 05 44 4F 45 53 3E 1A 42
+BA 1D BA 40 84 12 00 00 8A 4D 02 00 3D 41 30 4D
+3E CB 04 43 4F 44 45 00 B0 12 74 CA A2 82 C6 1D
+0D 12 87 12 8A CC 64 CC 26 C5 72 CB 07 43 4F 44
+45 4E 4E 4D 30 12 7C CB 9F 3F 00 00 07 45 4E 44
+43 4F 44 45 0D 12 87 12 F2 CA A4 CC 26 C5 58 C9
+03 41 53 4D B2 40 68 CC DA 1D DE 3F 9C CB 06 45
+4E 44 41 53 4D 00 0D 12 87 12 A4 CB C2 CC 26 C5
+00 00 05 43 4F 4C 4F 4E 1A 42 C6 1D BA 40 0D 12
+00 00 BA 40 87 12 02 00 A2 52 C6 1D B2 43 BE 1D
+30 40 A4 CC 00 00 05 4C 4F 32 48 49 A2 83 C6 1D
+1A 42 C6 1D EE 3F 56 CA 85 48 49 32 4C 4F 0D 12
+87 12 2A CC 1E CC F8 C7 12 CA 80 CB 26 C5 2E 53
+30 4D 8C CB 85 42 45 47 49 4E 2F 83 8F 4E 00 00
+1E 42 C6 1D 30 4D 24 C2 CA 1D AE C4 26 C5 84 12
+36 CC B0 CB 5A CE 58 CB EE C9 08 CC 42 C4 20 C8
+D8 C5 34 CD 4E CD 62 C5 CE CD 00 00 EE CF 1A CA
+AA C6 00 00 84 12 36 CC 20 D5 86 D5 D4 D4 D6 D5
+9A D4 00 00 CA D1 00 00 90 D4 42 D5 F2 D4 30 D5
+DA D2 00 00 00 00 F2 D5 62 CC 3A 40 0C 00 39 40
+D6 1D 08 49 28 53 19 83 18 83 E8 49 00 00 1A 83
+FA 23 30 4D 3A 40 0E 00 38 40 CA 1D 09 48 29 53
+F8 49 00 00 18 53 1A 83 FB 23 30 4D 82 43 CC 1D
+30 4D 92 42 CA 1D DA 1D 30 4D 3E CC BC CC C2 CC
+D2 CC 3A 4E 82 4A C8 1D 2E 4E 82 4E C6 1D 3D 40
+10 00 09 4A 08 49 29 83 18 48 FE FF 0E 98 FC 2B
+89 48 00 00 1D 83 F6 23 2A 4A 0A 93 F0 23 3E 4F
+3D 41 30 4D 24 CA 09 50 57 52 5F 53 54 41 54 45
+84 12 CA CC 88 CC 0E D6 A6 C5 09 52 53 54 5F 53
+54 41 54 45 92 42 0E 18 14 CD 92 42 0C 18 16 CD
+EF 3F 06 CD 08 50 57 52 5F 48 45 52 45 00 92 42
+C8 1D 14 CD 92 42 C6 1D 16 CD 30 4D 1A CD 08 52
+53 54 5F 48 45 52 45 00 92 42 C8 1D 0E 18 92 42
+C6 1D 0C 18 EC 3F EC C5 04 57 49 50 45 00 39 40
+10 00 29 83 B9 43 80 FF FC 23 B2 40 04 C2 02 C2
+B2 40 D8 CD D6 CD B2 40 88 CC 0E 18 B2 40 0E D6
+0C 18 30 12 24 CD B2 40 C8 C3 C6 C3 B2 40 32 C4
+30 C4 B2 40 4A C4 48 C4 B2 40 18 00 0A 18 37 40
+26 C5 36 40 9C C4 35 40 FA C2 34 40 EC C2 B2 40
+0A 00 DC 1D B2 40 20 00 B4 1D 30 41 68 CD 04 57
+41 52 4D 00 30 40 D8 CD 3D 40 10 CE 92 C3 30 01
+1E 42 08 18 0E 93 13 24 D2 B3 01 02 02 20 3E E3
+1E 53 F2 D0 03 00 0D 02 92 D3 DA 05 3E 90 0A 00
+B6 27 3E 90 16 00 B3 2F 2E 93 82 27 8B 2F 30 4D
+2E C2 07 0D 0A 1B 5B 37 6D 23 00 C4 9C C5 2E C2
+19 46 61 73 74 46 6F 72 74 68 20 C2 A9 4A 2E 4D
+2E 54 68 6F 6F 72 65 6E 73 20 00 C4 24 C2 40 FF
+2A CC A6 C4 66 C5 2E C2 0A 62 79 74 65 73 20 66
+72 65 65 00 48 C2 C8 C9 24 CC 04 43 4F 4C 44 00
+92 B3 CA 05 FD 23 B2 40 04 A5 20 01 31 40 E0 1C
+92 D3 30 01 B2 40 88 5A 5C 01 B2 43 06 02 B2 40
+EF 7F 02 02 E2 D2 05 02 B2 43 26 02 B2 D0 08 FF
+22 02 F2 D3 26 03 F2 40 F0 00 22 03 F2 40 A5 00
+61 01 B2 40 80 00 62 01 82 43 66 01 39 40 00 01
+B2 40 33 00 64 01 D2 43 61 01 92 D2 9E 01 08 18
+38 40 59 14 18 83 FE 23 19 83 FA 23 B2 D2 B0 01
+92 C3 B0 01 F2 D0 10 00 2A 03 F2 C0 40 00 A1 04
+39 40 00 04 29 83 89 43 00 1C FC 23 B0 12 0E C2
+B2 40 81 00 C0 05 92 42 02 18 C6 05 92 42 04 18
+C8 05 92 C3 C0 05 3F 40 80 1C 30 12 D4 CD 4C 3F
+24 CB 86 5B 54 48 45 4E 5D 00 30 4D 0C 4E 38 4F
+3B 4F 39 4F 0E 4B 0E 5C 10 24 1B 83 06 30 1C 83
+04 30 19 53 F9 98 FF FF F5 27 2D 4D 3E 4F 30 4D
+2F 53 9F 83 00 00 F9 23 2F 53 2D 53 F7 3F 12 CF
+86 5B 45 4C 53 45 5D 00 0D 12 87 12 24 C2 00 00
+AA C4 70 C8 F2 C5 62 C8 68 C4 4C C2 AA CF 70 C4
+2E C2 06 5B 54 48 45 4E 5D 00 1C CF 84 CF 40 CF
+62 CF 26 C5 70 C4 2E C2 06 5B 45 4C 53 45 5D 00
+1C CF 9A CF 40 CF 60 CF 26 C5 2E C2 04 5B 49 46
+5D 00 1C CF 62 CF 48 C2 60 CF 22 C4 2E C2 05 0D
+0A 6B 6F 20 00 C4 D4 C2 C4 C2 48 C2 62 CF 50 CF
+84 5B 49 46 5D 00 0E 93 3E 4F C6 27 30 4D 2F 53
+30 4D C0 CF 89 5B 44 45 46 49 4E 45 44 5D 0D 12
+87 12 70 C8 F2 C5 4A C6 CE CF 26 C5 D4 CF 8B 5B
+55 4E 44 45 46 49 4E 45 44 5D 0D 12 87 12 DE CF
+02 D0 3D 41 30 40 B6 C4 38 40 C0 1D 0A 4E 39 48
+2E 48 09 5E 1E 52 C4 1D 09 9E 03 24 7A 9E FC 27
+1E 83 0A 4E 2A 88 82 4A C4 1D 30 4D 1C 15 87 12
+F2 C5 4A C6 42 C2 40 D0 06 C7 4C C2 00 CA 5A D0
+42 D0 39 4E 39 80 86 12 08 24 19 53 02 20 2E 4E
+04 3C 2E 53 19 53 01 24 2E 82 1B 17 30 41 3E 40
+28 00 B0 12 2C D0 19 42 C6 1D A2 53 C6 1D 89 4E
+00 00 3E 40 29 00 1C 15 12 12 C4 1D 92 53 C4 1D
+87 12 F2 C5 06 C7 4C C2 96 D0 8C D0 21 53 3E 90
+10 00 80 2D E2 2B 98 D0 B2 41 C4 1D DE 3F 0D 12
+87 12 70 C8 08 D0 A8 D0 0C 43 1B 42 C6 1D A2 53
+C6 1D 6A 4E 3E 4F 7A 90 23 00 27 20 92 53 C4 1D
+B0 12 2C D0 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 C6 1D A2 53 C6 1D
+89 4E 00 00 3E 4F 3D 41 30 4D 7A 90 26 00 07 20
+3C 40 10 02 92 53 C4 1D B0 12 2C D0 ED 3F 7A 90
+40 00 16 20 3C 40 20 00 92 53 C4 1D B0 12 76 D0
+0C 20 3C 50 10 00 3E 40 2B 00 B0 12 76 D0 92 92
+C0 1D C4 1D 02 24 92 53 C4 1D 8E 10 0C 5E DA 3F
+B0 12 76 D0 FA 23 3C 50 10 00 B0 12 5E D0 EF 3F
+0C 43 1B 42 C6 1D A2 53 C6 1D 0D 12 87 12 70 C8
+08 D0 74 D1 FE 90 26 00 00 00 3E 40 20 00 03 20
+3C 50 82 00 C7 3F B0 12 76 D0 E0 23 3C 50 80 00
+B0 12 5E D0 DB 3F 00 00 04 52 45 54 49 00 0D 12
+87 12 24 C2 00 13 F8 C7 26 C5 24 C2 2C 00 9E D0
+6A D1 B4 D1 09 4B 2E 4E 0E DC A2 3F F6 CB 03 4D
+4F 56 84 12 AA D1 00 40 BE D1 05 4D 4F 56 2E 42
+84 12 AA D1 40 40 00 00 03 41 44 44 84 12 AA D1
+00 50 D8 D1 05 41 44 44 2E 42 84 12 AA D1 40 50
+E4 D1 04 41 44 44 43 00 84 12 AA D1 00 60 F2 D1
+06 41 44 44 43 2E 42 00 84 12 AA D1 40 60 98 D1
+04 53 55 42 43 00 84 12 AA D1 00 70 10 D2 06 53
+55 42 43 2E 42 00 84 12 AA D1 40 70 1E D2 03 53
+55 42 84 12 AA D1 00 80 2E D2 05 53 55 42 2E 42
+84 12 AA D1 40 80 D2 CB 03 43 4D 50 84 12 AA D1
+00 90 48 D2 05 43 4D 50 2E 42 84 12 AA D1 40 90
+BE CB 04 44 41 44 44 00 84 12 AA D1 00 A0 62 D2
+06 44 41 44 44 2E 42 00 84 12 AA D1 40 A0 54 D2
+03 42 49 54 84 12 AA D1 00 B0 80 D2 05 42 49 54
+2E 42 84 12 AA D1 40 B0 8C D2 03 42 49 43 84 12
+AA D1 00 C0 9A D2 05 42 49 43 2E 42 84 12 AA D1
+40 C0 A6 D2 03 42 49 53 84 12 AA D1 00 D0 B4 D2
+05 42 49 53 2E 42 84 12 AA D1 40 D0 00 00 03 58
+4F 52 84 12 AA D1 00 E0 CE D2 05 58 4F 52 2E 42
+84 12 AA D1 40 E0 00 D2 03 41 4E 44 84 12 AA D1
+00 F0 E8 D2 05 41 4E 44 2E 42 84 12 AA D1 40 F0
+70 C8 9E D0 06 D3 0A 4C 3C F0 70 00 8A 10 3A F0
+0F 00 0C DA 4F 3F 3A D2 03 52 52 43 84 12 00 D3
+00 10 18 D3 05 52 52 43 2E 42 84 12 00 D3 40 10
+24 D3 04 53 57 50 42 00 84 12 00 D3 80 10 32 D3
+03 52 52 41 84 12 00 D3 00 11 40 D3 05 52 52 41
+2E 42 84 12 00 D3 40 11 4C D3 03 53 58 54 84 12
+00 D3 80 11 00 00 04 50 55 53 48 00 84 12 00 D3
+00 12 66 D3 06 50 55 53 48 2E 42 00 84 12 00 D3
+40 12 C0 D2 04 43 41 4C 4C 00 84 12 00 D3 80 12
+1A 53 0E 4A 0D 12 87 12 9C C5 2E C2 0D 6F 75 74
+20 6F 66 20 62 6F 75 6E 64 73 7A C9 70 C8 08 D0
+B2 D3 92 53 C4 1D 3E 40 2C 00 87 12 F2 C5 06 C7
+4C C2 00 CA 60 D1 C8 D3 0A 4E 3E 4F 1A 83 E0 33
+29 4E 59 0E 0A 28 08 4C 59 0A 01 28 0C 8A 08 8A
+38 90 10 00 D5 2F 5A 0E 94 3F 2A 92 D1 2F 8A 10
+5A 06 8F 3F 5A D3 04 52 52 43 4D 00 84 12 AC D3
+50 00 F6 D3 04 52 52 41 4D 00 84 12 AC D3 50 01
+04 D4 04 52 4C 41 4D 00 84 12 AC D3 50 02 12 D4
+04 52 52 55 4D 00 84 12 AC D3 50 03 74 D3 05 50
+55 53 48 4D 84 12 AC D3 00 15 2E D4 04 50 4F 50
+4D 00 84 12 AC D3 00 17 20 D4 03 53 3E 3D 85 12
+00 38 4A D4 02 53 3C 00 85 12 00 34 3C D4 03 30
+3E 3D 85 12 00 30 5E D4 02 30 3C 00 85 12 00 30
+00 00 02 55 3C 00 85 12 00 2C 72 D4 03 55 3E 3D
+85 12 00 28 68 D4 03 30 3C 3E 85 12 00 24 86 D4
+02 30 3D 00 85 12 00 20 00 00 02 49 46 00 1A 42
+C6 1D 8A 4E 00 00 A2 53 C6 1D 0E 4A 30 4D 7C D4
+04 54 48 45 4E 00 1A 42 C6 1D 08 4E 3E 4F 09 48
+29 53 0A 89 0A 11 3A 90 00 02 63 2F 88 DA 00 00
+30 4D 70 D2 04 45 4C 53 45 00 1A 42 C6 1D BA 40
+00 3C 00 00 A2 53 C6 1D 2F 83 8F 4A 00 00 E3 3F
+B0 D4 05 55 4E 54 49 4C 3A 4F 08 4E 3E 4F 19 42
+C6 1D 2A 83 0A 89 0A 11 3A 90 00 FE 42 3B 3A F0
+FF 03 08 DA 89 48 00 00 A2 53 C6 1D 30 4D F4 D2
+05 41 47 41 49 4E 0A 4E 38 40 00 3C E7 3F 00 00
+05 57 48 49 4C 45 0D 12 87 12 9E D4 82 C4 26 C5
+54 D4 06 52 45 50 45 41 54 00 0D 12 87 12 26 D5
+B6 D4 26 C5 56 D5 3D 41 08 4E 3E 4F 2A 48 B2 92
+C4 1D CB 2F 98 42 C6 1D 00 00 30 4D 84 D3 03 42
+57 31 84 12 54 D5 00 00 6E D5 03 42 57 32 84 12
+54 D5 00 00 7A D5 03 42 57 33 84 12 54 D5 00 00
+92 D5 3D 41 1A 42 C6 1D 28 4E B2 92 C4 1D 8E 2B
+BA 4F 00 00 A2 53 C6 1D 8E 4A 00 00 3E 4F 30 4D
+00 00 03 46 57 31 84 12 90 D5 00 00 B2 D5 03 46
+57 32 84 12 90 D5 00 00 BE D5 03 46 57 33 84 12
+90 D5 00 00 CA D5 04 47 4F 54 4F 00 2F 83 8F 4E
+00 00 3E 40 00 3C 0D 12 87 12 F0 C9 18 C8 26 C5
+00 00 05 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
 @FFFE
-9C D0
+6C CE
 q
index ff7c6ca..5c34b4f 100644 (file)
 @1800
-10 00 08 00 00 D6 E8 03 05 00 18 00 6C D8 D0 CE
-2D 01 6B B0 B6 C4 C8 C4
+10 00 08 00 00 D6 E8 03 05 00 18 00 0A D6 88 CC
+2E 01 6B B0 06 C3 18 C3 D4 CD
 @C200
-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 3A 41 0D 12 0D 4A
-30 4D 00 00 04 45 58 49 54 00 3D 41 30 4D 24 C2
-03 44 55 50 2F 83 8F 4E 00 00 30 4D 00 00 04 32
-44 55 50 00 8F 4E FE FF AF 4F FC FF 2F 82 30 4D
-00 00 04 3F 44 55 50 00 0E 93 EC 23 30 4D 30 C2
-04 44 52 4F 50 00 3E 4F 30 4D 2F 53 30 4D 3E C2
-04 53 57 41 50 00 2A 4F 8F 4E 00 00 0E 4A 30 4D
-52 C2 02 3E 52 00 0E 12 3E 4F 30 4D 70 C2 02 52
-3E 00 2F 83 8F 4E 00 00 3E 41 30 4D 60 C2 05 44
-45 50 54 48 8F 4E FE FF 3E 40 80 1C 0E 8F 0E 11
-2F 83 30 4D 00 00 01 2D 3E 8F 3E E3 1E 53 30 4D
-00 00 02 31 2B 00 1E 53 30 4D C2 C2 02 31 2D 00
-1E 83 30 4D 3E F3 06 34 BF E3 00 00 3E E3 9F 53
-00 00 0E 63 30 4D 00 00 01 40 2E 4E 30 4D E8 C2
-01 21 BE 4F 00 00 3E 4F 30 4D CC C2 02 30 3D 00
-1E 83 0E 7E 30 4D FC C2 02 30 3C 00 0E 5E 0E 7E
-3E E3 30 4D 00 00 01 3D 3E 8F FA 27 0E F3 30 4D
-00 00 02 55 3C 00 3E 8F F9 2B 01 24 3E 43 30 4D
-16 C3 02 3C 23 00 B2 40 B2 1D B2 1D 30 4D 0B 4E
+30 40 04 C2 B0 12 06 C3 12 D2 0A 18 F9 3F 39 40
+32 00 29 83 B9 40 6C CE CE FF FB 23 B2 40 68 C3
+F0 FF 30 41 2F 83 8F 4E 00 00 3E 4D 30 4D 2F 82
+8F 4E 02 00 7E 4D 8F 4D 00 00 0D 5E 1D B3 0D 63
+30 4D 0E 93 3E 4F 05 24 2D 4D 30 4D 0E 93 3E 4F
+FB 27 2D 53 30 4D 39 40 00 80 39 8F 08 4E 3E 4F
+08 59 19 15 30 4D 81 5E 00 00 3E 4F 32 B0 00 01
+EB 27 21 52 2D 53 30 4D 91 53 00 00 F7 3F 0B 4E
 1C 4F 02 00 2E 4F 0A 43 34 40 20 00 0E 93 04 20
 04 11 0E 4C 0C 43 09 43 0A 9B 01 28 0A 8B 09 69
 08 68 14 83 07 30 0C 5C 0E 6E 0A 6A F5 2B 0A 8B
-12 D3 F5 3F 34 40 00 C2 8F 4A 02 00 8F 49 00 00
-0E 48 30 41 00 00 01 23 1B 42 DC 1D 2C 4F 2F 83
-B0 12 46 C3 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 86 C3 02 23 53 00 87 12 88 C3 C0 C3
-2D 83 09 93 E3 23 0E 93 E1 23 3D 41 30 4D B6 C3
-02 23 3E 00 9F 42 B2 1D 00 00 3E 40 B2 1D 2E 8F
-30 4D 00 00 04 48 4F 4C 44 00 0A 4E 3E 4F DB 3F
-8E C2 04 53 49 47 4E 00 0E 93 3E 4F 3A 40 2D 00
-D2 33 30 4D 87 12 36 C3 34 C2 86 C2 D4 C2 BA C3
-92 C2 F8 C3 D4 C3 D6 C5 42 C9 82 C5 2A C2 22 C3
-02 55 2E 00 08 43 2F 83 8F 4E 00 00 0E 48 EA 3F
-00 00 01 2E 0E 93 F6 37 38 43 F5 3F 2D 4D 30 4D
-0E 93 3E 4F FB 27 2D 53 30 4D 0E 93 3E 4F F6 23
-2D 53 30 4D 39 40 00 80 39 8F 08 4E 3E 4F 08 59
-19 15 30 4D 81 5E 00 00 3E 4F 32 B0 00 01 E6 27
-2D 53 21 52 30 4D 91 53 00 00 F7 3F E4 C3 01 49
-2F 83 8F 4E 00 00 2E 41 1E 81 02 00 30 4D 00 00
-03 4B 45 59 30 40 98 C4 18 42 CC 05 2F 83 8F 4E
-00 00 B0 12 B6 C4 92 B3 DC 05 FD 27 1E 42 CC 05
-B0 12 C8 C4 30 4D A2 B3 DC 05 FD 27 B2 40 11 00
-CE 05 E2 C2 03 02 30 41 B2 40 13 00 CE 05 E2 D2
-03 02 30 41 00 00 05 53 4C 45 45 50 30 40 E0 C4
-B0 12 B6 C4 12 D2 0A 18 F9 3F F0 C2 06 41 43 43
-45 50 54 00 3C 40 64 C5 3B 40 2E C5 2D 15 0A 4E
-2E 4F 0A 5E 3B 40 0D 00 3C 40 20 00 3D 40 58 C5
-92 B3 DC 05 05 24 18 42 CC 05 38 90 0A 00 CB 23
-21 53 3D 15 DB 3F 21 52 3A 17 58 42 CC 05 48 9C
-08 2C 48 9B C9 27 78 92 11 20 2E 9F 0F 24 1E 83
-05 3C 0E 9A 03 24 CE 48 00 00 1E 53 A2 B3 DC 05
-FD 27 82 48 CE 05 30 4D 5A C5 2D 83 92 B3 DC 05
-E4 23 FC 27 82 93 DE 1D 02 24 92 53 DE 1D 3E 8F
-3D 41 B2 40 18 00 0A 18 30 4D 9E C2 04 45 4D 49
-54 00 30 40 86 C5 08 4E 3E 4F E0 3F 3F 80 06 00
-8F 4E 04 00 3E 40 54 00 BF 40 3C 1D 00 00 AF 4F
-02 00 A8 3F 7C C5 04 45 43 48 4F 00 B2 40 82 48
-52 C5 82 43 DE 1D 30 4D 32 C4 06 4E 4F 45 43 48
-4F 00 B2 40 30 4D 52 C5 92 43 DE 1D 30 4D 20 C4
-04 54 59 50 45 00 0E 93 0F 24 1E 15 3D 40 EC C5
-28 4F 7E 48 8F 48 00 00 2F 83 CB 3F EE C5 2D 83
-91 83 02 00 F5 23 1D 17 2F 53 3E 4F 30 4D D0 C3
-02 43 52 00 30 40 08 C6 87 12 1E C6 02 0D 0A 00
-D6 C5 2A C2 2F 83 8F 4E 00 00 3E 4D 30 4D 2F 82
-8F 4E 02 00 7E 4D 8F 4D 00 00 0D 5E 1D B3 0D 63
-30 4D F2 C3 82 53 22 00 82 43 B4 1D 87 12 14 C6
-1E C6 B0 C8 14 C6 22 00 80 C6 4C C6 B2 40 20 00
-B4 1D 6E 4E 1E 53 1E B3 82 6E C6 1D 3D 41 3E 4F
-30 4D BA C5 82 2E 22 00 87 12 38 C6 14 C6 D6 C5
-B0 C8 2A C2 48 43 05 3C 00 00 04 57 4F 52 44 00
-48 4E 19 42 C0 1D 1A 42 C2 1D 09 5A 1A 52 C4 1D
-09 9A 03 24 7E 9A FC 27 1A 83 4E F8 06 20 0E 4A
-1A 82 C2 1D 82 4A C4 1D 30 4D 18 42 C6 1D 3B 40
-60 00 C8 4C 00 00 09 9A 0C 24 7C 4A 4E 9C 09 24
-18 53 4B 9C F6 2F 7C 90 7B 00 F3 2F 5C 82 B4 1D
-F0 3F 1A 82 C2 1D 82 4A C4 1D 1E 42 C6 1D 08 8E
-CE 48 00 00 30 4D 00 00 04 46 49 4E 44 00 2F 83
-0C 4E 65 4C 74 40 80 00 3B 40 CA 1D 3E 4B 0E 93
-1E 24 58 4C 01 00 78 F0 1E 00 0E 58 2E 53 1E 4E
-FE FF 0E 93 F3 27 09 4E 78 49 48 C4 48 95 F7 23
-0A 4C FA 99 01 00 F3 23 1A 53 58 83 FA 23 19 B3
-09 63 0C 49 6A 4E 1E 43 4A 93 01 30 2E 83 8F 4C
-00 00 35 40 0E C2 34 40 00 C2 30 4D 82 C2 07 3E
-4E 55 4D 42 45 52 3C 4F 38 4F 29 4F 2F 82 1B 42
-DC 1D 6A 4C 7A 80 30 00 7A 90 0A 00 05 28 7A 80
-07 00 7A 90 0A 00 12 28 0A 9B 22 C3 0F 2C 82 49
-D0 04 82 48 D2 04 82 4B C8 04 19 42 E4 04 18 42
-E6 04 09 5A 08 63 1C 53 1E 83 E3 23 8F 4C 00 00
-8F 48 02 00 8F 49 04 00 30 4D 32 C0 00 02 1B 42
-DC 1D 0C 43 2D 15 3D 40 F4 C7 09 43 08 43 3F 82
-8F 4E 06 00 0C 4E 7E 4C 6A 4C 7A 90 2D 00 04 28
-C9 23 B1 43 02 00 DF 3F 2B 43 7A 80 25 00 07 24
-3B 52 6A 53 04 24 3B 40 10 00 5A 83 BA 23 1C 53
-1E 83 EA 3F F6 C7 2F 24 2D 83 7A 90 28 00 CB 27
-32 D0 00 02 7A 90 F7 00 C6 27 7A 90 F5 00 23 20
-0A 4E 09 43 8F 49 02 00 5A 83 09 4A 09 5C 69 49
-79 80 30 00 79 90 0A 00 05 28 79 80 07 00 79 90
-0A 00 0A 28 09 9B 08 2C 8F 49 00 00 0E 4B 2C 15
-B0 12 3E C3 2A 17 E6 3F 9F 4F 04 00 02 00 AF 4F
-04 00 0E 4A 4E 93 2B 17 0E 4C 82 4B DC 1D 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 7E C4 04 48 45 52 45 00
-2F 83 8F 4E 00 00 1E 42 C6 1D 30 4D B6 C2 01 2C
-1A 42 C6 1D 8A 4E 00 00 A2 53 C6 1D 3E 4F 30 4D
-EC C4 05 41 4C 4C 4F 54 82 5E C6 1D 3E 4F 30 4D
-A6 C5 07 45 58 45 43 55 54 45 0A 4E 3E 4F 00 4A
-AE C8 87 4C 49 54 45 52 41 4C 82 93 BE 1D 0C 24
-1A 42 C6 1D A2 52 C6 1D BA 40 14 C6 00 00 8A 4E
-02 00 3E 4F 32 B0 00 02 32 C0 00 02 06 24 19 4A
-02 00 8A 4E 02 00 0E 49 EB 3F 30 4D 00 C6 05 43
-4F 55 4E 54 2F 83 1E 53 8F 4E 00 00 5E 4E FF FF
-30 4D 82 4E C0 1D B2 4F C2 1D 3E 4F 82 43 C4 1D
-30 4D 85 12 20 00 87 12 32 C9 42 C9 80 C6 50 C9
-3D 40 58 C9 CC 22 82 3E 5A C9 0A 4E 3E 4F 3D 40
-70 C9 23 27 3D 40 4A C9 1A E2 BE 1D A1 27 B5 23
-72 C9 3E 4F 3D 40 4A C9 B8 23 DE 53 00 00 68 4E
-08 5E F8 40 3F 00 00 00 3D 40 26 CC CB 3F D2 C8
+12 D3 F5 3F 34 40 EC C2 8F 4A 02 00 8F 49 00 00
+0E 48 30 41 82 4E C0 1D B2 4F C2 1D 3E 4F 82 43
+C4 1D 30 4D 3F 80 06 00 8F 4E 04 00 3E 40 54 00
+BF 40 3C 1D 00 00 AF 4F 02 00 24 3C 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 A2 B3 DC 05 FD 27 B2 40 11 00
+CE 05 E2 C2 03 02 30 41 A2 B3 DC 05 FD 27 B2 40
+13 00 CE 05 E2 D2 03 02 30 41 00 00 06 41 43 43
+45 50 54 00 3C 40 A6 C3 3B 40 70 C3 2D 15 0A 4E
+2E 4F 0A 5E 3B 40 0D 00 3C 40 20 00 3D 40 9A C3
+92 B3 DC 05 05 24 18 42 CC 05 38 90 0A 00 D3 23
+21 53 3D 15 30 40 00 C2 21 52 3A 17 58 42 CC 05
+48 9C 08 2C 48 9B D0 27 78 92 11 20 2E 9F 0F 24
+1E 83 05 3C 0E 9A 03 24 CE 48 00 00 1E 53 A2 B3
+DC 05 FD 27 82 48 CE 05 30 4D 9C C3 2D 83 92 B3
+DC 05 E4 23 FC 27 82 93 DE 1D 02 24 92 53 DE 1D
+3E 8F 3D 41 B2 40 18 00 0A 18 30 4D 00 00 04 45
+4D 49 54 00 30 40 C8 C3 08 4E 3E 4F E0 3F BE C3
+04 45 43 48 4F 00 B2 40 82 48 94 C3 82 43 DE 1D
+30 4D 00 00 06 4E 4F 45 43 48 4F 00 B2 40 30 4D
+94 C3 92 43 DE 1D 30 4D 00 00 04 54 59 50 45 00
+0E 93 0F 24 1E 15 3D 40 16 C4 28 4F 7E 48 8F 48
+00 00 2F 83 D7 3F 18 C4 2D 83 91 83 02 00 F5 23
+1D 17 2F 53 3E 4F 30 4D 00 00 02 43 52 00 30 40
+32 C4 0D 12 87 12 2E C2 02 0D 0A 00 00 C4 26 C5
+00 00 03 4B 45 59 30 40 4A C4 18 42 CC 05 2F 83
+8F 4E 00 00 B0 12 06 C3 92 B3 DC 05 FD 27 1E 42
+CC 05 B0 12 18 C3 30 4D 2F 83 8F 4E 00 00 30 4D
+8F 4E FE FF AF 4F FC FF 2F 82 30 4D 0E 93 F4 23
+30 4D 2A 4F 8F 4E 00 00 0E 4A 30 4D 8F 4E FE FF
+3E 40 80 1C 0E 8F 0E 11 2F 83 30 4D 2F 83 8F 4E
+00 00 3E 41 30 4D 3E 8F 3E E3 1E 53 30 4D BE 4F
+00 00 3E 4F 30 4D 1E 83 0E 7E 30 4D 0E 5E 0E 7E
+3E E3 30 4D 3E 8F 03 24 3E 43 01 2C 0E F3 30 4D
+00 00 02 3C 23 00 B2 40 B2 1D B2 1D 30 4D 2A C4
+01 23 1B 42 DC 1D 2C 4F 2F 83 B0 12 86 C2 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 E0 C4
+02 23 53 00 0D 12 87 12 E2 C4 1C C5 2D 83 09 93
+E2 23 0E 93 E0 23 3D 41 30 4D 10 C5 02 23 3E 00
+9F 42 B2 1D 00 00 3E 40 B2 1D 2E 8F 30 4D 00 00
+04 48 4F 4C 44 00 4A 4E 3E 4F DA 3F 00 00 04 53
+49 47 4E 00 0E 93 3E 4F 7A 40 2D 00 D1 33 30 4D
+FA C3 02 55 2E 00 08 43 2F 83 8F 4E 00 00 0E 48
+0D 12 0E 12 3E F3 06 34 BF E3 00 00 3E E3 9F 53
+00 00 0E 63 87 12 D6 C4 14 C5 9C C4 54 C5 30 C5
+00 C4 70 C8 C4 C3 26 C5 E4 C3 01 2E 0E 93 E3 37
+38 43 E2 3F 4E C5 82 53 22 00 82 43 B4 1D 0D 12
+87 12 24 C2 2E C2 F8 C7 24 C2 22 00 F2 C5 C0 C5
+B2 40 20 00 B4 1D 6E 4E 1E 53 1E B3 82 6E C6 1D
+3D 41 3E 4F 30 4D 9A C5 82 2E 22 00 0D 12 87 12
+AA C5 24 C2 00 C4 F8 C7 26 C5 00 00 04 57 4F 52
+44 00 3C 40 C0 1D 39 4C 3A 4C 09 5A 3A 5C 28 4C
+09 9A 15 24 7E 9A FC 27 1A 83 3B 40 60 00 C8 4C
+00 00 09 9A 0C 24 7C 4A 4E 9C 09 24 18 53 4B 9C
+F6 2F 7C 90 7B 00 F3 2F 5C 82 B4 1D F0 3F 1A 82
+C2 1D 82 4A C4 1D 1E 42 C6 1D 08 8E CE 48 00 00
+30 4D 00 00 04 46 49 4E 44 00 2F 83 0C 4E 65 4C
+74 40 80 00 3B 40 CA 1D 3E 4B 0E 93 1E 24 58 4C
+01 00 78 F0 1E 00 0E 58 2E 53 1E 4E FE FF 0E 93
+F3 27 09 4E 78 49 48 C4 48 95 F7 23 0A 4C FA 99
+01 00 F3 23 1A 53 58 83 FA 23 19 B3 09 63 0C 49
+6A 4E 1E 43 4A 93 01 30 2E 83 8F 4C 00 00 35 40
+FA C2 34 40 EC C2 30 4D 00 00 07 3E 4E 55 4D 42
+45 52 3C 4F 38 4F 29 4F 2F 82 1B 42 DC 1D 6A 4C
+7A 80 30 00 7A 90 0A 00 05 28 7A 80 07 00 7A 90
+0A 00 12 28 0A 9B 22 C3 0F 2C 82 49 D0 04 82 48
+D2 04 82 4B C8 04 19 42 E4 04 18 42 E6 04 09 5A
+08 63 1C 53 1E 83 E3 23 8F 4C 00 00 8F 48 02 00
+8F 49 04 00 30 4D 32 C0 00 02 1B 42 DC 1D 0C 43
+2D 15 3D 40 50 C7 09 43 08 43 3F 82 8F 4E 06 00
+0C 4E 7E 4C 6A 4C 7A 90 2D 00 04 28 C9 23 B1 43
+02 00 0B 3C 2B 43 7A 80 25 00 07 24 3B 52 6A 53
+04 24 3B 40 10 00 5A 83 BA 23 1C 53 1E 83 EA 3F
+52 C7 2F 24 2D 83 7A 90 28 00 CB 27 32 D0 00 02
+7A 90 F7 00 C6 27 7A 90 F5 00 23 20 0A 4E 09 43
+8F 49 02 00 5A 83 09 4A 09 5C 69 49 79 80 30 00
+79 90 0A 00 05 28 79 80 07 00 79 90 0A 00 0A 28
+09 9B 08 2C 8F 49 00 00 0E 4B 2C 15 B0 12 7E C2
+2A 17 E6 3F 9F 4F 04 00 02 00 AF 4F 04 00 0E 4A
+4E 93 2B 17 0E 4C 82 4B DC 1D 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 00 00 01 2C 1A 42 C6 1D 8A 4E 00 00
+A2 53 C6 1D 3E 4F 30 4D 2C C3 05 41 4C 4C 4F 54
+82 5E C6 1D 3E 4F 30 4D 0A 4E 3E 4F 00 4A F6 C7
+87 4C 49 54 45 52 41 4C 82 93 BE 1D 0C 24 1A 42
+C6 1D A2 52 C6 1D BA 40 24 C2 00 00 8A 4E 02 00
+3E 4F 32 B0 00 02 32 C0 00 02 06 24 19 4A 02 00
+8A 4E 02 00 0E 49 EB 3F 30 4D 2C C5 05 43 4F 55
+4E 54 2F 83 1E 53 8F 4E 00 00 5E 4E FF FF 30 4D
+85 12 20 00 0D 12 87 12 C4 C2 70 C8 F2 C5 80 C8
+3D 40 88 C8 E2 22 A4 26 8A C8 0A 4E 3E 4F 3D 40
+A0 C8 39 27 3D 40 7A C8 1A E2 BE 1D BD 23 AC 27
+A2 C8 3E 4F 3D 40 7A C8 BF 23 DE 53 00 00 68 4E
+08 5E F8 40 3F 00 00 00 3D 40 20 CB D2 3F D0 C3
 08 45 56 41 4C 55 41 54 45 00 39 40 C0 1D 3C 49
-3B 49 3A 49 3D 15 B0 12 2A C2 46 C9 AE C9 B2 41
-C4 1D B2 41 C2 1D B2 41 C0 1D 3D 41 30 4D 85 12
-BE 1D 08 C3 04 51 55 49 54 00 82 43 08 18 31 40
-E0 1C B2 40 00 1C 00 1C 82 43 BE 1D B0 12 2A C2
-04 C6 8C C5 42 C9 82 C5 46 C9 A4 C2 0C C3 1E C6
-0C 73 74 61 63 6B 20 65 6D 70 74 79 21 00 40 CA
-14 C6 30 FF A0 C8 26 C3 1E C6 0A 46 52 41 4D 20
-66 75 6C 6C 21 00 40 CA 3C C4 E0 C9 C2 C8 05 41
-42 4F 52 54 3F 40 80 1C D0 3F 1E CA 86 41 42 4F
-52 54 22 00 87 12 38 C6 14 C6 40 CA B0 C8 2A C2
-8F 93 02 00 03 20 2F 52 3E 4F 30 4D B0 12 C8 CF
-B0 12 B6 C4 92 C3 DC 05 38 40 AA 0A 39 42 03 43
-19 83 FD 23 18 83 FA 23 92 B3 DC 05 F3 23 87 12
-42 CF 14 C6 DE 1D EA C2 AC C5 1E C6 04 1B 5B 37
-6D 00 D6 C5 58 C2 40 C4 9A CA 04 C6 1E C6 05 6C
-69 6E 65 3A D6 C5 D0 C2 24 C4 D6 C5 1E C6 04 1B
-5B 30 6D 00 D6 C5 24 CA 00 00 83 5B 27 5D 87 12
-C0 CA 14 C6 14 C6 B0 C8 B0 C8 2A C2 E8 C6 01 27
-87 12 42 C9 80 C6 EE C6 40 C4 CE CA 2A C2 7A C9
-32 C3 81 5C 92 42 C0 1D C4 1D 30 4D AA CA 81 5B
-82 43 BE 1D 30 4D D2 CA 01 5D B2 43 BE 1D 30 4D
-BE 4F 02 00 3E 4F 30 4D 9A C8 82 49 53 00 87 12
-BE C9 EA C2 40 C4 12 CB AE CA 14 C6 F0 CA B0 C8
-2A C2 C0 CA F0 CA 2A C2 FA CA 09 49 4D 4D 45 44
-49 41 54 45 1A 42 B6 1D FA D0 80 00 00 00 30 4D
-C4 C9 88 50 4F 53 54 50 4F 4E 45 00 87 12 42 C9
-80 C6 EE C6 58 C2 40 C4 CE CA 0C C3 40 C4 5C CB
-14 C6 14 C6 B0 C8 B0 C8 14 C6 B0 C8 B0 C8 2A C2
-DE CA 81 3B 82 93 BE 1D B5 27 87 12 14 C6 2A C2
-B0 C8 FA CB E0 CA 2A C2 62 CB 07 3A 4E 4F 4E 41
-4D 45 30 12 A0 CB 2F 83 8F 4E 00 00 1E 42 C6 1D
-1E B3 0E 63 0A 4E 39 40 00 02 38 40 02 02 21 3C
-BA 40 87 12 FC FF A2 83 C6 1D B2 43 BE 1D 30 4D
-7A CB 01 3A 30 12 A0 CB 92 B3 C6 1D A2 63 C6 1D
-87 12 42 C9 80 C6 C8 CB 3D 41 08 4E 7A 4E 5A D3
-5A 53 0A 58 19 42 DA 1D 6E 4E 3E F0 1E 00 09 5E
-3E 4F 82 48 B6 1D 82 49 B8 1D 82 4A BA 1D 82 4F
-BC 1D 2A 52 82 4A C6 1D 30 41 82 9F BC 1D 09 20
-18 42 B6 1D 19 42 B8 1D A8 49 FE FF 89 48 00 00
-30 4D 87 12 1E C6 0F 73 74 61 63 6B 20 6D 69 73
-6D 61 74 63 68 21 4C CA 90 C9 05 44 45 46 45 52
-B0 12 B8 CB BA 40 30 40 FC FF BA 40 AE CB FE FF
-E3 3F 1E C9 06 43 52 45 41 54 45 00 B0 12 B8 CB
-BA 40 85 12 FC FF 8A 4A FE FF D6 3F 2A CC 05 44
-4F 45 53 3E 1A 42 BA 1D BA 40 84 12 00 00 8A 4D
-02 00 3D 41 30 4D 4E C7 05 3E 42 4F 44 59 2E 52
-30 4D 44 CC 04 43 4F 44 45 00 B0 12 B8 CB A2 82
-C6 1D 87 12 D2 CE AC CE 2A C2 84 CC 07 43 4F 44
-45 4E 4E 4D B0 12 86 CB F2 3F 00 00 07 45 4E 44
-43 4F 44 45 87 12 E0 CE FA CB 2A C2 2C CA 03 41
-53 4D B2 40 B0 CE DA 1D E0 3F AC CC 06 45 4E 44
-41 53 4D 00 87 12 B4 CC F4 CE 2A C2 00 00 05 43
-4F 4C 4F 4E 1A 42 C6 1D BA 40 87 12 00 00 A2 53
-C6 1D B2 43 BE 1D 30 40 E0 CE 00 00 05 4C 4F 32
-48 49 1A 42 C6 1D BA 40 B0 12 00 00 BA 40 2A C2
-02 00 A2 52 C6 1D ED 3F 1A CB 85 48 49 32 4C 4F
-87 12 A0 C8 4A CD B0 C8 E0 CA D2 CE AC CE 2A C2
-1A CD 82 49 46 00 2F 83 8F 4E 00 00 1E 42 C6 1D
-A2 52 C6 1D BE 40 40 C4 00 00 2E 53 30 4D 5E CC
-84 45 4C 53 45 00 A2 52 C6 1D 1A 42 C6 1D BA 40
-3C C4 FC FF 8E 4A 00 00 2A 83 0E 4A 30 4D D0 C5
-84 54 48 45 4E 00 9E 42 C6 1D 00 00 3E 4F 30 4D
-9C CC 85 42 45 47 49 4E 30 40 A0 C8 70 CD 85 55
-4E 54 49 4C 39 40 40 C4 A2 52 C6 1D 1A 42 C6 1D
-8A 49 FC FF 8A 4E FE FF 3E 4F 30 4D BE CC 85 41
-47 41 49 4E 39 40 3C C4 EF 3F 7A C6 85 57 48 49
-4C 45 87 12 36 CD 76 C2 2A C2 34 C6 86 52 45 50
-45 41 54 00 87 12 B4 CD 76 CD 2A C2 50 CD 82 44
-4F 00 2F 83 8F 4E 00 00 A2 53 C6 1D 1E 42 C6 1D
-BE 40 54 C4 FE FF A2 53 00 1C 1A 42 00 1C 8A 43
-00 00 30 4D E2 C8 84 4C 4F 4F 50 00 39 40 76 C4
-A2 52 C6 1D 1A 42 C6 1D 8A 49 FC FF 8A 4E FE FF
-1E 42 00 1C A2 83 00 1C 2E 4E 0E 93 03 24 8E 4A
-00 00 F6 3F 3E 4F 30 4D 90 C4 85 2B 4C 4F 4F 50
-39 40 64 C4 E5 3F 06 CE 04 4D 4F 56 45 00 0A 4E
-38 4F 39 4F 3E 4F 0A 93 11 24 08 99 0F 24 06 2C
-F8 49 00 00 18 53 1A 83 FB 23 30 4D 08 5A 09 5A
-19 83 18 83 E8 49 00 00 1A 83 FA 23 30 4D 14 C6
-CA 1D F2 C2 2A C2 84 12 7E CE AE CD 52 D1 DE CD
-BE CA 32 CD 3A CE 66 D2 64 C6 66 CF 80 CF 8E CD
-00 D0 00 00 38 D2 E8 CA 78 CC 00 00 84 12 7E CE
-84 D7 E6 D7 38 D7 5A D8 FE D6 00 00 2E D4 00 00
-F4 D6 A4 D7 56 D7 94 D7 3E D5 00 00 00 00 36 D8
-AA CE 3A 40 0C 00 39 40 CA 1D 38 40 CC 1D C6 3F
-3A 40 0E 00 39 40 CC 1D 38 40 CA 1D B9 3F 82 43
-CC 1D 30 4D 92 42 CA 1D DA 1D 30 4D 86 CE EE CE
-F4 CE 04 CF 3A 4E 82 4A C8 1D 2E 4E 82 4E C6 1D
-3D 40 10 00 09 4A 08 49 29 83 18 48 FE FF 0E 98
-FC 2B 89 48 00 00 1D 83 F6 23 2A 4A 0A 93 F0 23
-3E 4F 3D 41 30 4D 32 CB 09 50 57 52 5F 53 54 41
-54 45 84 12 FC CE D0 CE 6C D8 CC CD 09 52 53 54
-5F 53 54 41 54 45 92 42 0E 18 46 CF 92 42 0C 18
-48 CF EF 3F 38 CF 08 50 57 52 5F 48 45 52 45 00
-92 42 C8 1D 46 CF 92 42 C6 1D 48 CF 30 4D 4C CF
-08 52 53 54 5F 48 45 52 45 00 92 42 C8 1D 0E 18
-92 42 C6 1D 0C 18 EC 3F BC CD 04 57 49 50 45 00
-39 40 10 00 29 83 B9 43 80 FF FC 23 B2 40 E0 C4
-DE C4 B2 40 0A D0 08 D0 B2 40 D0 CE 0E 18 B2 40
-6C D8 0C 18 30 12 56 CF B2 40 86 C5 84 C5 B2 40
-08 C6 06 C6 B2 40 98 C4 96 C4 B2 40 18 00 0A 18
-37 40 1A C2 36 40 92 C2 35 40 0E C2 34 40 00 C2
-B2 40 0A 00 DC 1D B2 40 20 00 B4 1D 30 41 9A CF
-04 57 41 52 4D 00 30 40 0A D0 3D 40 3E D0 92 C3
-30 01 1E 42 08 18 0E 93 11 24 D2 B3 01 02 02 20
-3E E3 1E 53 F2 D0 03 00 0D 02 3E 90 0A 00 B8 27
-3E 90 16 00 B5 2F 2E 93 84 27 8D 2F 30 4D 1E C6
-06 0D 1B 5B 37 6D 23 00 D6 C5 34 C4 1E C6 19 46
-61 73 74 46 6F 72 74 68 20 C2 A9 4A 2E 4D 2E 54
-68 6F 6F 72 65 6E 73 20 D6 C5 14 C6 30 FF A0 C8
-B8 C2 24 C4 1E C6 0A 62 79 74 65 73 20 66 72 65
-65 00 3C C4 9A CA 82 CD 04 43 4F 4C 44 00 92 B3
-CA 05 FD 23 B2 40 04 A5 20 01 3E D0 92 D3 30 01
-B2 40 88 5A 5C 01 B2 43 06 02 B2 40 EF 7F 02 02
-E2 D2 05 02 B2 43 26 02 B2 D0 08 FF 22 02 F2 D3
-26 03 F2 40 F0 00 22 03 F2 40 A5 00 61 01 B2 40
-33 00 66 01 39 40 10 00 B2 40 33 00 64 01 D2 43
-61 01 92 D2 9E 01 08 18 38 40 59 14 18 83 FE 23
-19 83 FA 23 B2 D2 B0 01 92 C3 B0 01 F2 D0 10 00
-2A 03 F2 C0 40 00 A1 04 39 40 00 04 29 83 89 43
-00 1C FC 23 39 40 32 00 29 83 B9 40 9C D0 CE FF
-FB 23 B2 40 26 C5 F0 FF B2 40 81 00 C0 05 92 42
-02 18 C6 05 92 42 04 18 C8 05 92 C3 C0 05 92 D3
-DA 05 3F 40 80 1C 31 40 E0 1C 30 12 06 D0 45 3F
-88 D0 07 43 4F 4D 50 41 52 45 0C 4E 38 4F 3B 4F
-39 4F 0E 4B 0E 5C 0C 24 1B 83 07 30 1C 83 07 30
-19 53 F9 98 FF FF F5 27 02 2C 3E 43 30 4D 1E 43
-30 4D B2 CB 86 5B 54 48 45 4E 5D 00 30 4D 84 D1
-86 5B 45 4C 53 45 5D 00 87 12 14 C6 00 00 C6 C2
-42 C9 80 C6 24 C9 34 C2 40 C4 FA D1 44 C2 1E C6
-06 5B 54 48 45 4E 5D 00 5A D1 4A C4 CA D1 F8 C5
-D0 C2 58 C2 4A C4 A0 D1 2A C2 44 C2 1E C6 06 5B
-45 4C 53 45 5D 00 5A D1 4A C4 E8 D1 F8 C5 D0 C2
-58 C2 4A C4 9E D1 2A C2 1E C6 04 5B 49 46 5D 00
-5A D1 4A C4 A0 D1 3C C4 9E D1 F8 C5 1E C6 05 0D
-0A 6B 6F 20 D6 C5 8C C5 32 C9 3C C4 A0 D1 90 D1
-84 5B 49 46 5D 00 0E 93 3E 4F BE 27 30 4D 10 D2
-89 5B 44 45 46 49 4E 45 44 5D 87 12 42 C9 80 C6
-EE C6 6A C2 2A C2 20 D2 8B 5B 55 4E 44 45 46 49
-4E 45 44 5D 87 12 42 C9 80 C6 EE C6 6A C2 00 C3
-2A C2 54 D2 3D 41 B2 4E 0E 18 A2 4E 0C 18 3E 4F
-30 40 56 CF 48 CE 06 4D 41 52 4B 45 52 00 B0 12
-B8 CB BA 40 84 12 FC FF BA 40 52 D2 FE FF 9A 42
-C8 1D 00 00 28 83 8A 48 02 00 A2 52 C6 1D 30 40
-00 CC 1C 15 B0 12 2A C2 80 C6 EE C6 4A C4 A8 D2
-AA C7 40 C4 CE CA C2 D2 AA D2 39 4E 39 80 86 12
-08 24 19 53 02 20 2E 4E 04 3C 2E 53 19 53 01 24
-2E 82 1B 17 30 41 3E 40 28 00 B0 12 92 D2 19 42
-C6 1D A2 53 C6 1D 89 4E 00 00 3E 40 29 00 1C 15
-12 12 C4 1D 92 53 C4 1D B0 12 2A C2 80 C6 AA C7
-40 C4 00 D3 F6 D2 21 53 3E 90 10 00 7D 2D E1 2B
-02 D3 B2 41 C4 1D DD 3F 87 12 42 C9 74 C6 10 D3
-0C 43 1B 42 C6 1D A2 53 C6 1D 6A 4E 3E 4F 7A 90
-23 00 27 20 92 53 C4 1D B0 12 92 D2 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 C6 1D A2 53 C6 1D 89 4E 00 00 3E 4F 3D 41
-30 4D 7A 90 26 00 07 20 3C 40 10 02 92 53 C4 1D
-B0 12 92 D2 ED 3F 7A 90 40 00 16 20 3C 40 20 00
-92 53 C4 1D B0 12 DE D2 0C 20 3C 50 10 00 3E 40
-2B 00 B0 12 DE D2 92 92 C0 1D C4 1D 02 24 92 53
-C4 1D 8E 10 0C 5E DA 3F B0 12 DE D2 FA 23 3C 50
-10 00 B0 12 C6 D2 EF 3F 0C 43 1B 42 C6 1D A2 53
-C6 1D 87 12 42 C9 74 C6 DA D3 FE 90 26 00 00 00
-3E 40 20 00 03 20 3C 50 82 00 C8 3F B0 12 DE D2
-E1 23 3C 50 80 00 B0 12 C6 D2 DC 3F D6 C4 04 52
-45 54 49 00 87 12 14 C6 00 13 B0 C8 2A C2 14 C6
-2C 00 08 D3 D2 D3 18 D4 09 4B 2E 4E 0E DC A4 3F
-FC CC 03 4D 4F 56 84 12 0E D4 00 40 22 D4 05 4D
-4F 56 2E 42 84 12 0E D4 40 40 00 00 03 41 44 44
-84 12 0E D4 00 50 3C D4 05 41 44 44 2E 42 84 12
-0E D4 40 50 48 D4 04 41 44 44 43 00 84 12 0E D4
-00 60 56 D4 06 41 44 44 43 2E 42 00 84 12 0E D4
-40 60 FE D3 04 53 55 42 43 00 84 12 0E D4 00 70
-74 D4 06 53 55 42 43 2E 42 00 84 12 0E D4 40 70
-82 D4 03 53 55 42 84 12 0E D4 00 80 92 D4 05 53
-55 42 2E 42 84 12 0E D4 40 80 DE CC 03 43 4D 50
-84 12 0E D4 00 90 AC D4 05 43 4D 50 2E 42 84 12
-0E D4 40 90 CC CC 04 44 41 44 44 00 84 12 0E D4
-00 A0 C6 D4 06 44 41 44 44 2E 42 00 84 12 0E D4
-40 A0 B8 D4 03 42 49 54 84 12 0E D4 00 B0 E4 D4
-05 42 49 54 2E 42 84 12 0E D4 40 B0 F0 D4 03 42
-49 43 84 12 0E D4 00 C0 FE D4 05 42 49 43 2E 42
-84 12 0E D4 40 C0 0A D5 03 42 49 53 84 12 0E D4
-00 D0 18 D5 05 42 49 53 2E 42 84 12 0E D4 40 D0
-00 00 03 58 4F 52 84 12 0E D4 00 E0 32 D5 05 58
-4F 52 2E 42 84 12 0E D4 40 E0 64 D4 03 41 4E 44
-84 12 0E D4 00 F0 4C D5 05 41 4E 44 2E 42 84 12
-0E D4 40 F0 42 C9 08 D3 6A D5 0A 4C 3C F0 70 00
-8A 10 3A F0 0F 00 0C DA 4F 3F 9E D4 03 52 52 43
-84 12 64 D5 00 10 7C D5 05 52 52 43 2E 42 84 12
-64 D5 40 10 88 D5 04 53 57 50 42 00 84 12 64 D5
-80 10 96 D5 03 52 52 41 84 12 64 D5 00 11 A4 D5
-05 52 52 41 2E 42 84 12 64 D5 40 11 B0 D5 03 53
-58 54 84 12 64 D5 80 11 00 00 04 50 55 53 48 00
-84 12 64 D5 00 12 CA D5 06 50 55 53 48 2E 42 00
-84 12 64 D5 40 12 24 D5 04 43 41 4C 4C 00 84 12
-64 D5 80 12 1A 53 0E 4A 87 12 34 C4 1E C6 0D 6F
-75 74 20 6F 66 20 62 6F 75 6E 64 73 4C CA 42 C9
-74 C6 14 D6 92 53 C4 1D 3E 40 2C 00 B0 12 2A C2
-80 C6 AA C7 40 C4 CE CA C8 D3 2C D6 0A 4E 3E 4F
-1A 83 E0 33 29 4E 59 0E 0A 28 08 4C 59 0A 01 28
-0C 8A 08 8A 38 90 10 00 D5 2F 5A 0E 94 3F 2A 92
-D1 2F 8A 10 5A 06 8F 3F BE D5 04 52 52 43 4D 00
-84 12 0E D6 50 00 5A D6 04 52 52 41 4D 00 84 12
-0E D6 50 01 68 D6 04 52 4C 41 4D 00 84 12 0E D6
-50 02 76 D6 04 52 52 55 4D 00 84 12 0E D6 50 03
-D8 D5 05 50 55 53 48 4D 84 12 0E D6 00 15 92 D6
-04 50 4F 50 4D 00 84 12 0E D6 00 17 84 D6 03 53
-3E 3D 85 12 00 38 AE D6 02 53 3C 00 85 12 00 34
-A0 D6 03 30 3E 3D 85 12 00 30 C2 D6 02 30 3C 00
-85 12 00 30 00 00 02 55 3C 00 85 12 00 2C D6 D6
-03 55 3E 3D 85 12 00 28 CC D6 03 30 3C 3E 85 12
-00 24 EA D6 02 30 3D 00 85 12 00 20 00 00 02 49
-46 00 1A 42 C6 1D 8A 4E 00 00 A2 53 C6 1D 0E 4A
-30 4D E0 D6 04 54 48 45 4E 00 1A 42 C6 1D 08 4E
-3E 4F 09 48 29 53 0A 89 0A 11 3A 90 00 02 63 2F
-88 DA 00 00 30 4D D4 D4 04 45 4C 53 45 00 1A 42
-C6 1D BA 40 00 3C 00 00 A2 53 C6 1D 2F 83 8F 4A
-00 00 E3 3F 14 D7 05 55 4E 54 49 4C 3A 4F 08 4E
-3E 4F 19 42 C6 1D 2A 83 0A 89 0A 11 3A 90 00 FE
-42 3B 3A F0 FF 03 08 DA 89 48 00 00 A2 53 C6 1D
-30 4D 58 D5 05 41 47 41 49 4E 0A 4E 38 40 00 3C
-E7 3F 00 00 05 57 48 49 4C 45 87 12 02 D7 76 C2
-2A C2 B8 D6 06 52 45 50 45 41 54 00 87 12 8A D7
-1A D7 2A C2 B6 D7 3D 41 08 4E 3E 4F 2A 48 B2 92
-C4 1D CD 2F 98 42 C6 1D 00 00 30 4D E8 D5 03 42
-57 31 84 12 B4 D7 00 00 CE D7 03 42 57 32 84 12
-B4 D7 00 00 DA D7 03 42 57 33 84 12 B4 D7 00 00
-F2 D7 3D 41 1A 42 C6 1D 28 4E B2 92 C4 1D 90 2B
-BA 4F 00 00 A2 53 C6 1D 8E 4A 00 00 3E 4F 30 4D
-00 00 03 46 57 31 84 12 F0 D7 00 00 12 D8 03 46
-57 32 84 12 F0 D7 00 00 1E D8 03 46 57 33 84 12
-F0 D7 00 00 00 00 05 3F 47 4F 54 4F 3E 90 00 30
-07 24 3E E0 00 04 3E B0 00 10 02 24 3E E0 00 08
-87 12 C0 CA DA C8 2A C2 2A D8 04 47 4F 54 4F 00
-2F 83 8F 4E 00 00 3E 40 00 3C F2 3F
+3B 49 3A 49 3D 15 87 12 74 C8 DC C8 B2 41 C4 1D
+B2 41 C2 1D B2 41 C0 1D 3D 41 30 4D 85 12 BE 1D
+00 00 04 51 55 49 54 00 82 43 08 18 31 40 E0 1C
+B2 40 00 1C 00 1C 82 43 BE 1D 87 12 2E C4 D4 C2
+70 C8 C4 C3 74 C8 8C C4 BC C4 2E C2 0C 73 74 61
+63 6B 20 65 6D 70 74 79 21 00 6E C9 24 C2 40 FF
+2A CC C4 C4 2E C2 0A 46 52 41 4D 20 66 75 6C 6C
+21 00 6E C9 48 C2 0C C9 0A C8 05 41 42 4F 52 54
+3F 40 80 1C D1 3F 4A C9 86 41 42 4F 52 54 22 00
+0D 12 87 12 AA C5 24 C2 6E C9 F8 C7 26 C5 8F 93
+02 00 03 20 2F 52 3E 4F 30 4D B0 12 96 CD B0 12
+06 C3 92 C3 DC 05 18 42 06 18 39 40 20 00 19 83
+FE 23 18 83 FA 23 92 B3 DC 05 F3 23 0D 12 87 12
+10 CD 24 C2 DE 1D 02 C3 D6 C3 2E C2 04 1B 5B 37
+6D 00 00 C4 7C C4 4C C2 C8 C9 2E C4 2E C2 05 6C
+69 6E 65 3A 00 C4 66 C5 00 C4 2E C2 04 1B 5B 30
+6D 00 00 C4 50 C9 00 00 83 5B 27 5D 0D 12 87 12
+F0 C9 24 C2 24 C2 F8 C7 F8 C7 26 C5 44 C6 01 27
+0D 12 87 12 70 C8 F2 C5 4A C6 4C C2 00 CA 26 C5
+AA C8 D2 C4 81 5C 92 42 C0 1D C4 1D 30 4D D8 C9
+81 5B 82 43 BE 1D 30 4D 04 CA 01 5D B2 43 BE 1D
+30 4D F2 C8 88 50 4F 53 54 50 4F 4E 45 00 0D 12
+87 12 70 C8 F2 C5 4A C6 7C C4 4C C2 00 CA BC C4
+4C C2 50 CA 24 C2 24 C2 F8 C7 F8 C7 24 C2 F8 C7
+F8 C7 26 C5 40 C5 09 49 4D 4D 45 44 49 41 54 45
+1A 42 B6 1D FA D0 80 00 00 00 30 4D 10 CA 01 3A
+30 12 B8 CA 92 B3 C6 1D A2 63 C6 1D 0D 12 87 12
+70 C8 F2 C5 86 CA 3D 41 08 4E 7A 4E 5A D3 5A 53
+0A 58 19 42 DA 1D 6E 4E 3E F0 1E 00 09 5E 3E 4F
+82 48 B6 1D 82 49 B8 1D 82 4A BA 1D 82 4F BC 1D
+2A 52 82 4A C6 1D 30 41 BA 40 0D 12 FC FF BA 40
+87 12 FE FF B2 43 BE 1D 30 4D 6E CA 07 3A 4E 4F
+4E 41 4D 45 30 12 B8 CA 2F 83 8F 4E 00 00 1E 42
+C6 1D 1E B3 0E 63 0A 4E 39 40 10 02 38 40 12 02
+D7 3F 82 9F BC 1D 09 20 18 42 B6 1D 19 42 B8 1D
+A8 49 FE FF 89 48 00 00 30 4D 0D 12 87 12 2E C2
+0F 73 74 61 63 6B 20 6D 69 73 6D 61 74 63 68 21
+7A C9 CC CA 81 3B 82 93 BE 1D 6D 27 0D 12 87 12
+24 C2 26 C5 F8 C7 F2 CA 12 CA 26 C5 5C C8 06 43
+52 45 41 54 45 00 B0 12 74 CA BA 40 85 12 FC FF
+8A 4A FE FF D5 3F C0 C8 05 44 4F 45 53 3E 1A 42
+BA 1D BA 40 84 12 00 00 8A 4D 02 00 3D 41 30 4D
+3E CB 04 43 4F 44 45 00 B0 12 74 CA A2 82 C6 1D
+0D 12 87 12 8A CC 64 CC 26 C5 72 CB 07 43 4F 44
+45 4E 4E 4D 30 12 7C CB 9F 3F 00 00 07 45 4E 44
+43 4F 44 45 0D 12 87 12 F2 CA A4 CC 26 C5 58 C9
+03 41 53 4D B2 40 68 CC DA 1D DE 3F 9C CB 06 45
+4E 44 41 53 4D 00 0D 12 87 12 A4 CB C2 CC 26 C5
+00 00 05 43 4F 4C 4F 4E 1A 42 C6 1D BA 40 0D 12
+00 00 BA 40 87 12 02 00 A2 52 C6 1D B2 43 BE 1D
+30 40 A4 CC 00 00 05 4C 4F 32 48 49 A2 83 C6 1D
+1A 42 C6 1D EE 3F 56 CA 85 48 49 32 4C 4F 0D 12
+87 12 2A CC 1E CC F8 C7 12 CA 80 CB 26 C5 2E 53
+30 4D 8C CB 85 42 45 47 49 4E 2F 83 8F 4E 00 00
+1E 42 C6 1D 30 4D 24 C2 CA 1D AE C4 26 C5 84 12
+36 CC B0 CB 5A CE 58 CB EE C9 08 CC 42 C4 20 C8
+D8 C5 34 CD 4E CD 62 C5 CE CD 00 00 EA CF 1A CA
+AA C6 00 00 84 12 36 CC 1C D5 82 D5 D0 D4 D2 D5
+96 D4 00 00 C6 D1 00 00 8C D4 3E D5 EE D4 2C D5
+D6 D2 00 00 00 00 EE D5 62 CC 3A 40 0C 00 39 40
+D6 1D 08 49 28 53 19 83 18 83 E8 49 00 00 1A 83
+FA 23 30 4D 3A 40 0E 00 38 40 CA 1D 09 48 29 53
+F8 49 00 00 18 53 1A 83 FB 23 30 4D 82 43 CC 1D
+30 4D 92 42 CA 1D DA 1D 30 4D 3E CC BC CC C2 CC
+D2 CC 3A 4E 82 4A C8 1D 2E 4E 82 4E C6 1D 3D 40
+10 00 09 4A 08 49 29 83 18 48 FE FF 0E 98 FC 2B
+89 48 00 00 1D 83 F6 23 2A 4A 0A 93 F0 23 3E 4F
+3D 41 30 4D 24 CA 09 50 57 52 5F 53 54 41 54 45
+84 12 CA CC 88 CC 0A D6 A6 C5 09 52 53 54 5F 53
+54 41 54 45 92 42 0E 18 14 CD 92 42 0C 18 16 CD
+EF 3F 06 CD 08 50 57 52 5F 48 45 52 45 00 92 42
+C8 1D 14 CD 92 42 C6 1D 16 CD 30 4D 1A CD 08 52
+53 54 5F 48 45 52 45 00 92 42 C8 1D 0E 18 92 42
+C6 1D 0C 18 EC 3F EC C5 04 57 49 50 45 00 39 40
+10 00 29 83 B9 43 80 FF FC 23 B2 40 04 C2 02 C2
+B2 40 D8 CD D6 CD B2 40 88 CC 0E 18 B2 40 0A D6
+0C 18 30 12 24 CD B2 40 C8 C3 C6 C3 B2 40 32 C4
+30 C4 B2 40 4A C4 48 C4 B2 40 18 00 0A 18 37 40
+26 C5 36 40 9C C4 35 40 FA C2 34 40 EC C2 B2 40
+0A 00 DC 1D B2 40 20 00 B4 1D 30 41 68 CD 04 57
+41 52 4D 00 30 40 D8 CD 3D 40 10 CE 92 C3 30 01
+1E 42 08 18 0E 93 13 24 D2 B3 01 02 02 20 3E E3
+1E 53 F2 D0 03 00 0D 02 92 D3 DA 05 3E 90 0A 00
+B6 27 3E 90 16 00 B3 2F 2E 93 82 27 8B 2F 30 4D
+2E C2 07 0D 0A 1B 5B 37 6D 23 00 C4 9C C5 2E C2
+19 46 61 73 74 46 6F 72 74 68 20 C2 A9 4A 2E 4D
+2E 54 68 6F 6F 72 65 6E 73 20 00 C4 24 C2 40 FF
+2A CC A6 C4 66 C5 2E C2 0A 62 79 74 65 73 20 66
+72 65 65 00 48 C2 C8 C9 24 CC 04 43 4F 4C 44 00
+92 B3 CA 05 FD 23 B2 40 04 A5 20 01 31 40 E0 1C
+92 D3 30 01 B2 40 88 5A 5C 01 B2 43 06 02 B2 40
+EF 7F 02 02 E2 D2 05 02 B2 43 26 02 B2 D0 08 FF
+22 02 F2 D3 26 03 F2 40 F0 00 22 03 F2 40 A5 00
+61 01 B2 40 33 00 66 01 39 40 10 00 B2 40 33 00
+64 01 D2 43 61 01 92 D2 9E 01 08 18 38 40 59 14
+18 83 FE 23 19 83 FA 23 B2 D2 B0 01 92 C3 B0 01
+F2 D0 10 00 2A 03 F2 C0 40 00 A1 04 39 40 00 04
+29 83 89 43 00 1C FC 23 B0 12 0E C2 B2 40 81 00
+C0 05 92 42 02 18 C6 05 92 42 04 18 C8 05 92 C3
+C0 05 3F 40 80 1C 30 12 D4 CD 4E 3F 24 CB 86 5B
+54 48 45 4E 5D 00 30 4D 0C 4E 38 4F 3B 4F 39 4F
+0E 4B 0E 5C 10 24 1B 83 06 30 1C 83 04 30 19 53
+F9 98 FF FF F5 27 2D 4D 3E 4F 30 4D 2F 53 9F 83
+00 00 F9 23 2F 53 2D 53 F7 3F 0E CF 86 5B 45 4C
+53 45 5D 00 0D 12 87 12 24 C2 00 00 AA C4 70 C8
+F2 C5 62 C8 68 C4 4C C2 A6 CF 70 C4 2E C2 06 5B
+54 48 45 4E 5D 00 18 CF 80 CF 3C CF 5E CF 26 C5
+70 C4 2E C2 06 5B 45 4C 53 45 5D 00 18 CF 96 CF
+3C CF 5C CF 26 C5 2E C2 04 5B 49 46 5D 00 18 CF
+5E CF 48 C2 5C CF 22 C4 2E C2 05 0D 0A 6B 6F 20
+00 C4 D4 C2 C4 C2 48 C2 5E CF 4C CF 84 5B 49 46
+5D 00 0E 93 3E 4F C6 27 30 4D 2F 53 30 4D BC CF
+89 5B 44 45 46 49 4E 45 44 5D 0D 12 87 12 70 C8
+F2 C5 4A C6 CA CF 26 C5 D0 CF 8B 5B 55 4E 44 45
+46 49 4E 45 44 5D 0D 12 87 12 DA CF FE CF 3D 41
+30 40 B6 C4 38 40 C0 1D 0A 4E 39 48 2E 48 09 5E
+1E 52 C4 1D 09 9E 03 24 7A 9E FC 27 1E 83 0A 4E
+2A 88 82 4A C4 1D 30 4D 1C 15 87 12 F2 C5 4A C6
+42 C2 3C D0 06 C7 4C C2 00 CA 56 D0 3E D0 39 4E
+39 80 86 12 08 24 19 53 02 20 2E 4E 04 3C 2E 53
+19 53 01 24 2E 82 1B 17 30 41 3E 40 28 00 B0 12
+28 D0 19 42 C6 1D A2 53 C6 1D 89 4E 00 00 3E 40
+29 00 1C 15 12 12 C4 1D 92 53 C4 1D 87 12 F2 C5
+06 C7 4C C2 92 D0 88 D0 21 53 3E 90 10 00 80 2D
+E2 2B 94 D0 B2 41 C4 1D DE 3F 0D 12 87 12 70 C8
+04 D0 A4 D0 0C 43 1B 42 C6 1D A2 53 C6 1D 6A 4E
+3E 4F 7A 90 23 00 27 20 92 53 C4 1D B0 12 28 D0
+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 C6 1D A2 53 C6 1D 89 4E 00 00
+3E 4F 3D 41 30 4D 7A 90 26 00 07 20 3C 40 10 02
+92 53 C4 1D B0 12 28 D0 ED 3F 7A 90 40 00 16 20
+3C 40 20 00 92 53 C4 1D B0 12 72 D0 0C 20 3C 50
+10 00 3E 40 2B 00 B0 12 72 D0 92 92 C0 1D C4 1D
+02 24 92 53 C4 1D 8E 10 0C 5E DA 3F B0 12 72 D0
+FA 23 3C 50 10 00 B0 12 5A D0 EF 3F 0C 43 1B 42
+C6 1D A2 53 C6 1D 0D 12 87 12 70 C8 04 D0 70 D1
+FE 90 26 00 00 00 3E 40 20 00 03 20 3C 50 82 00
+C7 3F B0 12 72 D0 E0 23 3C 50 80 00 B0 12 5A D0
+DB 3F 00 00 04 52 45 54 49 00 0D 12 87 12 24 C2
+00 13 F8 C7 26 C5 24 C2 2C 00 9A D0 66 D1 B0 D1
+09 4B 2E 4E 0E DC A2 3F F6 CB 03 4D 4F 56 84 12
+A6 D1 00 40 BA D1 05 4D 4F 56 2E 42 84 12 A6 D1
+40 40 00 00 03 41 44 44 84 12 A6 D1 00 50 D4 D1
+05 41 44 44 2E 42 84 12 A6 D1 40 50 E0 D1 04 41
+44 44 43 00 84 12 A6 D1 00 60 EE D1 06 41 44 44
+43 2E 42 00 84 12 A6 D1 40 60 94 D1 04 53 55 42
+43 00 84 12 A6 D1 00 70 0C D2 06 53 55 42 43 2E
+42 00 84 12 A6 D1 40 70 1A D2 03 53 55 42 84 12
+A6 D1 00 80 2A D2 05 53 55 42 2E 42 84 12 A6 D1
+40 80 D2 CB 03 43 4D 50 84 12 A6 D1 00 90 44 D2
+05 43 4D 50 2E 42 84 12 A6 D1 40 90 BE CB 04 44
+41 44 44 00 84 12 A6 D1 00 A0 5E D2 06 44 41 44
+44 2E 42 00 84 12 A6 D1 40 A0 50 D2 03 42 49 54
+84 12 A6 D1 00 B0 7C D2 05 42 49 54 2E 42 84 12
+A6 D1 40 B0 88 D2 03 42 49 43 84 12 A6 D1 00 C0
+96 D2 05 42 49 43 2E 42 84 12 A6 D1 40 C0 A2 D2
+03 42 49 53 84 12 A6 D1 00 D0 B0 D2 05 42 49 53
+2E 42 84 12 A6 D1 40 D0 00 00 03 58 4F 52 84 12
+A6 D1 00 E0 CA D2 05 58 4F 52 2E 42 84 12 A6 D1
+40 E0 FC D1 03 41 4E 44 84 12 A6 D1 00 F0 E4 D2
+05 41 4E 44 2E 42 84 12 A6 D1 40 F0 70 C8 9A D0
+02 D3 0A 4C 3C F0 70 00 8A 10 3A F0 0F 00 0C DA
+4F 3F 36 D2 03 52 52 43 84 12 FC D2 00 10 14 D3
+05 52 52 43 2E 42 84 12 FC D2 40 10 20 D3 04 53
+57 50 42 00 84 12 FC D2 80 10 2E D3 03 52 52 41
+84 12 FC D2 00 11 3C D3 05 52 52 41 2E 42 84 12
+FC D2 40 11 48 D3 03 53 58 54 84 12 FC D2 80 11
+00 00 04 50 55 53 48 00 84 12 FC D2 00 12 62 D3
+06 50 55 53 48 2E 42 00 84 12 FC D2 40 12 BC D2
+04 43 41 4C 4C 00 84 12 FC D2 80 12 1A 53 0E 4A
+0D 12 87 12 9C C5 2E C2 0D 6F 75 74 20 6F 66 20
+62 6F 75 6E 64 73 7A C9 70 C8 04 D0 AE D3 92 53
+C4 1D 3E 40 2C 00 87 12 F2 C5 06 C7 4C C2 00 CA
+5C D1 C4 D3 0A 4E 3E 4F 1A 83 E0 33 29 4E 59 0E
+0A 28 08 4C 59 0A 01 28 0C 8A 08 8A 38 90 10 00
+D5 2F 5A 0E 94 3F 2A 92 D1 2F 8A 10 5A 06 8F 3F
+56 D3 04 52 52 43 4D 00 84 12 A8 D3 50 00 F2 D3
+04 52 52 41 4D 00 84 12 A8 D3 50 01 00 D4 04 52
+4C 41 4D 00 84 12 A8 D3 50 02 0E D4 04 52 52 55
+4D 00 84 12 A8 D3 50 03 70 D3 05 50 55 53 48 4D
+84 12 A8 D3 00 15 2A D4 04 50 4F 50 4D 00 84 12
+A8 D3 00 17 1C D4 03 53 3E 3D 85 12 00 38 46 D4
+02 53 3C 00 85 12 00 34 38 D4 03 30 3E 3D 85 12
+00 30 5A D4 02 30 3C 00 85 12 00 30 00 00 02 55
+3C 00 85 12 00 2C 6E D4 03 55 3E 3D 85 12 00 28
+64 D4 03 30 3C 3E 85 12 00 24 82 D4 02 30 3D 00
+85 12 00 20 00 00 02 49 46 00 1A 42 C6 1D 8A 4E
+00 00 A2 53 C6 1D 0E 4A 30 4D 78 D4 04 54 48 45
+4E 00 1A 42 C6 1D 08 4E 3E 4F 09 48 29 53 0A 89
+0A 11 3A 90 00 02 63 2F 88 DA 00 00 30 4D 6C D2
+04 45 4C 53 45 00 1A 42 C6 1D BA 40 00 3C 00 00
+A2 53 C6 1D 2F 83 8F 4A 00 00 E3 3F AC D4 05 55
+4E 54 49 4C 3A 4F 08 4E 3E 4F 19 42 C6 1D 2A 83
+0A 89 0A 11 3A 90 00 FE 42 3B 3A F0 FF 03 08 DA
+89 48 00 00 A2 53 C6 1D 30 4D F0 D2 05 41 47 41
+49 4E 0A 4E 38 40 00 3C E7 3F 00 00 05 57 48 49
+4C 45 0D 12 87 12 9A D4 82 C4 26 C5 50 D4 06 52
+45 50 45 41 54 00 0D 12 87 12 22 D5 B2 D4 26 C5
+52 D5 3D 41 08 4E 3E 4F 2A 48 B2 92 C4 1D CB 2F
+98 42 C6 1D 00 00 30 4D 80 D3 03 42 57 31 84 12
+50 D5 00 00 6A D5 03 42 57 32 84 12 50 D5 00 00
+76 D5 03 42 57 33 84 12 50 D5 00 00 8E D5 3D 41
+1A 42 C6 1D 28 4E B2 92 C4 1D 8E 2B BA 4F 00 00
+A2 53 C6 1D 8E 4A 00 00 3E 4F 30 4D 00 00 03 46
+57 31 84 12 8C D5 00 00 AE D5 03 46 57 32 84 12
+8C D5 00 00 BA D5 03 46 57 33 84 12 8C D5 00 00
+C6 D5 04 47 4F 54 4F 00 2F 83 8F 4E 00 00 3E 40
+00 3C 0D 12 87 12 F0 C9 18 C8 26 C5 00 00 05 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
 @FFFE
-9C D0
+6C CE
 q
index 12312a4..b73efab 100644 (file)
 @1800
-10 00 0D 00 01 49 C0 5D 05 00 18 00 70 D8 D0 CE
-2D 01 6B B0 B6 C4 C8 C4
+10 00 0D 00 01 49 C0 5D 05 00 18 00 0E D6 88 CC
+2E 01 6B B0 06 C3 18 C3 D4 CD
 @C200
-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 3A 41 0D 12 0D 4A
-30 4D 00 00 04 45 58 49 54 00 3D 41 30 4D 24 C2
-03 44 55 50 2F 83 8F 4E 00 00 30 4D 00 00 04 32
-44 55 50 00 8F 4E FE FF AF 4F FC FF 2F 82 30 4D
-00 00 04 3F 44 55 50 00 0E 93 EC 23 30 4D 30 C2
-04 44 52 4F 50 00 3E 4F 30 4D 2F 53 30 4D 3E C2
-04 53 57 41 50 00 2A 4F 8F 4E 00 00 0E 4A 30 4D
-52 C2 02 3E 52 00 0E 12 3E 4F 30 4D 70 C2 02 52
-3E 00 2F 83 8F 4E 00 00 3E 41 30 4D 60 C2 05 44
-45 50 54 48 8F 4E FE FF 3E 40 80 1C 0E 8F 0E 11
-2F 83 30 4D 00 00 01 2D 3E 8F 3E E3 1E 53 30 4D
-00 00 02 31 2B 00 1E 53 30 4D C2 C2 02 31 2D 00
-1E 83 30 4D 3E F3 06 34 BF E3 00 00 3E E3 9F 53
-00 00 0E 63 30 4D 00 00 01 40 2E 4E 30 4D E8 C2
-01 21 BE 4F 00 00 3E 4F 30 4D CC C2 02 30 3D 00
-1E 83 0E 7E 30 4D FC C2 02 30 3C 00 0E 5E 0E 7E
-3E E3 30 4D 00 00 01 3D 3E 8F FA 27 0E F3 30 4D
-00 00 02 55 3C 00 3E 8F F9 2B 01 24 3E 43 30 4D
-16 C3 02 3C 23 00 B2 40 B2 1D B2 1D 30 4D 0B 4E
+30 40 04 C2 B0 12 06 C3 12 D2 0A 18 F9 3F 39 40
+32 00 29 83 B9 40 6C CE CE FF FB 23 B2 40 68 C3
+F0 FF 30 41 2F 83 8F 4E 00 00 3E 4D 30 4D 2F 82
+8F 4E 02 00 7E 4D 8F 4D 00 00 0D 5E 1D B3 0D 63
+30 4D 0E 93 3E 4F 05 24 2D 4D 30 4D 0E 93 3E 4F
+FB 27 2D 53 30 4D 39 40 00 80 39 8F 08 4E 3E 4F
+08 59 19 15 30 4D 81 5E 00 00 3E 4F 32 B0 00 01
+EB 27 21 52 2D 53 30 4D 91 53 00 00 F7 3F 0B 4E
 1C 4F 02 00 2E 4F 0A 43 34 40 20 00 0E 93 04 20
 04 11 0E 4C 0C 43 09 43 0A 9B 01 28 0A 8B 09 69
 08 68 14 83 07 30 0C 5C 0E 6E 0A 6A F5 2B 0A 8B
-12 D3 F5 3F 34 40 00 C2 8F 4A 02 00 8F 49 00 00
-0E 48 30 41 00 00 01 23 1B 42 DC 1D 2C 4F 2F 83
-B0 12 46 C3 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 86 C3 02 23 53 00 87 12 88 C3 C0 C3
-2D 83 09 93 E3 23 0E 93 E1 23 3D 41 30 4D B6 C3
-02 23 3E 00 9F 42 B2 1D 00 00 3E 40 B2 1D 2E 8F
-30 4D 00 00 04 48 4F 4C 44 00 0A 4E 3E 4F DB 3F
-8E C2 04 53 49 47 4E 00 0E 93 3E 4F 3A 40 2D 00
-D2 33 30 4D 87 12 36 C3 34 C2 86 C2 D4 C2 BA C3
-92 C2 F8 C3 D4 C3 D6 C5 42 C9 82 C5 2A C2 22 C3
-02 55 2E 00 08 43 2F 83 8F 4E 00 00 0E 48 EA 3F
-00 00 01 2E 0E 93 F6 37 38 43 F5 3F 2D 4D 30 4D
-0E 93 3E 4F FB 27 2D 53 30 4D 0E 93 3E 4F F6 23
-2D 53 30 4D 39 40 00 80 39 8F 08 4E 3E 4F 08 59
-19 15 30 4D 81 5E 00 00 3E 4F 32 B0 00 01 E6 27
-2D 53 21 52 30 4D 91 53 00 00 F7 3F E4 C3 01 49
-2F 83 8F 4E 00 00 2E 41 1E 81 02 00 30 4D 00 00
-03 4B 45 59 30 40 98 C4 18 42 CC 05 2F 83 8F 4E
-00 00 B0 12 B6 C4 92 B3 DC 05 FD 27 1E 42 CC 05
-B0 12 C8 C4 30 4D A2 B3 DC 05 FD 27 B2 40 11 00
-CE 05 E2 C2 03 02 30 41 B2 40 13 00 CE 05 E2 D2
-03 02 30 41 00 00 05 53 4C 45 45 50 30 40 E0 C4
-B0 12 B6 C4 12 D2 0A 18 F9 3F F0 C2 06 41 43 43
-45 50 54 00 3C 40 64 C5 3B 40 2E C5 2D 15 0A 4E
-2E 4F 0A 5E 3B 40 0D 00 3C 40 20 00 3D 40 58 C5
-92 B3 DC 05 05 24 18 42 CC 05 38 90 0A 00 CB 23
-21 53 3D 15 DB 3F 21 52 3A 17 58 42 CC 05 48 9C
-08 2C 48 9B C9 27 78 92 11 20 2E 9F 0F 24 1E 83
-05 3C 0E 9A 03 24 CE 48 00 00 1E 53 A2 B3 DC 05
-FD 27 82 48 CE 05 30 4D 5A C5 2D 83 92 B3 DC 05
-E4 23 FC 27 82 93 DE 1D 02 24 92 53 DE 1D 3E 8F
-3D 41 B2 40 18 00 0A 18 30 4D 9E C2 04 45 4D 49
-54 00 30 40 86 C5 08 4E 3E 4F E0 3F 3F 80 06 00
-8F 4E 04 00 3E 40 54 00 BF 40 3C 1D 00 00 AF 4F
-02 00 A8 3F 7C C5 04 45 43 48 4F 00 B2 40 82 48
-52 C5 82 43 DE 1D 30 4D 32 C4 06 4E 4F 45 43 48
-4F 00 B2 40 30 4D 52 C5 92 43 DE 1D 30 4D 20 C4
-04 54 59 50 45 00 0E 93 0F 24 1E 15 3D 40 EC C5
-28 4F 7E 48 8F 48 00 00 2F 83 CB 3F EE C5 2D 83
-91 83 02 00 F5 23 1D 17 2F 53 3E 4F 30 4D D0 C3
-02 43 52 00 30 40 08 C6 87 12 1E C6 02 0D 0A 00
-D6 C5 2A C2 2F 83 8F 4E 00 00 3E 4D 30 4D 2F 82
-8F 4E 02 00 7E 4D 8F 4D 00 00 0D 5E 1D B3 0D 63
-30 4D F2 C3 82 53 22 00 82 43 B4 1D 87 12 14 C6
-1E C6 B0 C8 14 C6 22 00 80 C6 4C C6 B2 40 20 00
-B4 1D 6E 4E 1E 53 1E B3 82 6E C6 1D 3D 41 3E 4F
-30 4D BA C5 82 2E 22 00 87 12 38 C6 14 C6 D6 C5
-B0 C8 2A C2 48 43 05 3C 00 00 04 57 4F 52 44 00
-48 4E 19 42 C0 1D 1A 42 C2 1D 09 5A 1A 52 C4 1D
-09 9A 03 24 7E 9A FC 27 1A 83 4E F8 06 20 0E 4A
-1A 82 C2 1D 82 4A C4 1D 30 4D 18 42 C6 1D 3B 40
-60 00 C8 4C 00 00 09 9A 0C 24 7C 4A 4E 9C 09 24
-18 53 4B 9C F6 2F 7C 90 7B 00 F3 2F 5C 82 B4 1D
-F0 3F 1A 82 C2 1D 82 4A C4 1D 1E 42 C6 1D 08 8E
-CE 48 00 00 30 4D 00 00 04 46 49 4E 44 00 2F 83
-0C 4E 65 4C 74 40 80 00 3B 40 CA 1D 3E 4B 0E 93
-1E 24 58 4C 01 00 78 F0 1E 00 0E 58 2E 53 1E 4E
-FE FF 0E 93 F3 27 09 4E 78 49 48 C4 48 95 F7 23
-0A 4C FA 99 01 00 F3 23 1A 53 58 83 FA 23 19 B3
-09 63 0C 49 6A 4E 1E 43 4A 93 01 30 2E 83 8F 4C
-00 00 35 40 0E C2 34 40 00 C2 30 4D 82 C2 07 3E
-4E 55 4D 42 45 52 3C 4F 38 4F 29 4F 2F 82 1B 42
-DC 1D 6A 4C 7A 80 30 00 7A 90 0A 00 05 28 7A 80
-07 00 7A 90 0A 00 12 28 0A 9B 22 C3 0F 2C 82 49
-D0 04 82 48 D2 04 82 4B C8 04 19 42 E4 04 18 42
-E6 04 09 5A 08 63 1C 53 1E 83 E3 23 8F 4C 00 00
-8F 48 02 00 8F 49 04 00 30 4D 32 C0 00 02 1B 42
-DC 1D 0C 43 2D 15 3D 40 F4 C7 09 43 08 43 3F 82
-8F 4E 06 00 0C 4E 7E 4C 6A 4C 7A 90 2D 00 04 28
-C9 23 B1 43 02 00 DF 3F 2B 43 7A 80 25 00 07 24
-3B 52 6A 53 04 24 3B 40 10 00 5A 83 BA 23 1C 53
-1E 83 EA 3F F6 C7 2F 24 2D 83 7A 90 28 00 CB 27
-32 D0 00 02 7A 90 F7 00 C6 27 7A 90 F5 00 23 20
-0A 4E 09 43 8F 49 02 00 5A 83 09 4A 09 5C 69 49
-79 80 30 00 79 90 0A 00 05 28 79 80 07 00 79 90
-0A 00 0A 28 09 9B 08 2C 8F 49 00 00 0E 4B 2C 15
-B0 12 3E C3 2A 17 E6 3F 9F 4F 04 00 02 00 AF 4F
-04 00 0E 4A 4E 93 2B 17 0E 4C 82 4B DC 1D 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 7E C4 04 48 45 52 45 00
-2F 83 8F 4E 00 00 1E 42 C6 1D 30 4D B6 C2 01 2C
-1A 42 C6 1D 8A 4E 00 00 A2 53 C6 1D 3E 4F 30 4D
-EC C4 05 41 4C 4C 4F 54 82 5E C6 1D 3E 4F 30 4D
-A6 C5 07 45 58 45 43 55 54 45 0A 4E 3E 4F 00 4A
-AE C8 87 4C 49 54 45 52 41 4C 82 93 BE 1D 0C 24
-1A 42 C6 1D A2 52 C6 1D BA 40 14 C6 00 00 8A 4E
-02 00 3E 4F 32 B0 00 02 32 C0 00 02 06 24 19 4A
-02 00 8A 4E 02 00 0E 49 EB 3F 30 4D 00 C6 05 43
-4F 55 4E 54 2F 83 1E 53 8F 4E 00 00 5E 4E FF FF
-30 4D 82 4E C0 1D B2 4F C2 1D 3E 4F 82 43 C4 1D
-30 4D 85 12 20 00 87 12 32 C9 42 C9 80 C6 50 C9
-3D 40 58 C9 CC 22 82 3E 5A C9 0A 4E 3E 4F 3D 40
-70 C9 23 27 3D 40 4A C9 1A E2 BE 1D A1 27 B5 23
-72 C9 3E 4F 3D 40 4A C9 B8 23 DE 53 00 00 68 4E
-08 5E F8 40 3F 00 00 00 3D 40 26 CC CB 3F D2 C8
+12 D3 F5 3F 34 40 EC C2 8F 4A 02 00 8F 49 00 00
+0E 48 30 41 82 4E C0 1D B2 4F C2 1D 3E 4F 82 43
+C4 1D 30 4D 3F 80 06 00 8F 4E 04 00 3E 40 54 00
+BF 40 3C 1D 00 00 AF 4F 02 00 24 3C 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 A2 B3 DC 05 FD 27 B2 40 11 00
+CE 05 E2 C2 03 02 30 41 A2 B3 DC 05 FD 27 B2 40
+13 00 CE 05 E2 D2 03 02 30 41 00 00 06 41 43 43
+45 50 54 00 3C 40 A6 C3 3B 40 70 C3 2D 15 0A 4E
+2E 4F 0A 5E 3B 40 0D 00 3C 40 20 00 3D 40 9A C3
+92 B3 DC 05 05 24 18 42 CC 05 38 90 0A 00 D3 23
+21 53 3D 15 30 40 00 C2 21 52 3A 17 58 42 CC 05
+48 9C 08 2C 48 9B D0 27 78 92 11 20 2E 9F 0F 24
+1E 83 05 3C 0E 9A 03 24 CE 48 00 00 1E 53 A2 B3
+DC 05 FD 27 82 48 CE 05 30 4D 9C C3 2D 83 92 B3
+DC 05 E4 23 FC 27 82 93 DE 1D 02 24 92 53 DE 1D
+3E 8F 3D 41 B2 40 18 00 0A 18 30 4D 00 00 04 45
+4D 49 54 00 30 40 C8 C3 08 4E 3E 4F E0 3F BE C3
+04 45 43 48 4F 00 B2 40 82 48 94 C3 82 43 DE 1D
+30 4D 00 00 06 4E 4F 45 43 48 4F 00 B2 40 30 4D
+94 C3 92 43 DE 1D 30 4D 00 00 04 54 59 50 45 00
+0E 93 0F 24 1E 15 3D 40 16 C4 28 4F 7E 48 8F 48
+00 00 2F 83 D7 3F 18 C4 2D 83 91 83 02 00 F5 23
+1D 17 2F 53 3E 4F 30 4D 00 00 02 43 52 00 30 40
+32 C4 0D 12 87 12 2E C2 02 0D 0A 00 00 C4 26 C5
+00 00 03 4B 45 59 30 40 4A C4 18 42 CC 05 2F 83
+8F 4E 00 00 B0 12 06 C3 92 B3 DC 05 FD 27 1E 42
+CC 05 B0 12 18 C3 30 4D 2F 83 8F 4E 00 00 30 4D
+8F 4E FE FF AF 4F FC FF 2F 82 30 4D 0E 93 F4 23
+30 4D 2A 4F 8F 4E 00 00 0E 4A 30 4D 8F 4E FE FF
+3E 40 80 1C 0E 8F 0E 11 2F 83 30 4D 2F 83 8F 4E
+00 00 3E 41 30 4D 3E 8F 3E E3 1E 53 30 4D BE 4F
+00 00 3E 4F 30 4D 1E 83 0E 7E 30 4D 0E 5E 0E 7E
+3E E3 30 4D 3E 8F 03 24 3E 43 01 2C 0E F3 30 4D
+00 00 02 3C 23 00 B2 40 B2 1D B2 1D 30 4D 2A C4
+01 23 1B 42 DC 1D 2C 4F 2F 83 B0 12 86 C2 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 E0 C4
+02 23 53 00 0D 12 87 12 E2 C4 1C C5 2D 83 09 93
+E2 23 0E 93 E0 23 3D 41 30 4D 10 C5 02 23 3E 00
+9F 42 B2 1D 00 00 3E 40 B2 1D 2E 8F 30 4D 00 00
+04 48 4F 4C 44 00 4A 4E 3E 4F DA 3F 00 00 04 53
+49 47 4E 00 0E 93 3E 4F 7A 40 2D 00 D1 33 30 4D
+FA C3 02 55 2E 00 08 43 2F 83 8F 4E 00 00 0E 48
+0D 12 0E 12 3E F3 06 34 BF E3 00 00 3E E3 9F 53
+00 00 0E 63 87 12 D6 C4 14 C5 9C C4 54 C5 30 C5
+00 C4 70 C8 C4 C3 26 C5 E4 C3 01 2E 0E 93 E3 37
+38 43 E2 3F 4E C5 82 53 22 00 82 43 B4 1D 0D 12
+87 12 24 C2 2E C2 F8 C7 24 C2 22 00 F2 C5 C0 C5
+B2 40 20 00 B4 1D 6E 4E 1E 53 1E B3 82 6E C6 1D
+3D 41 3E 4F 30 4D 9A C5 82 2E 22 00 0D 12 87 12
+AA C5 24 C2 00 C4 F8 C7 26 C5 00 00 04 57 4F 52
+44 00 3C 40 C0 1D 39 4C 3A 4C 09 5A 3A 5C 28 4C
+09 9A 15 24 7E 9A FC 27 1A 83 3B 40 60 00 C8 4C
+00 00 09 9A 0C 24 7C 4A 4E 9C 09 24 18 53 4B 9C
+F6 2F 7C 90 7B 00 F3 2F 5C 82 B4 1D F0 3F 1A 82
+C2 1D 82 4A C4 1D 1E 42 C6 1D 08 8E CE 48 00 00
+30 4D 00 00 04 46 49 4E 44 00 2F 83 0C 4E 65 4C
+74 40 80 00 3B 40 CA 1D 3E 4B 0E 93 1E 24 58 4C
+01 00 78 F0 1E 00 0E 58 2E 53 1E 4E FE FF 0E 93
+F3 27 09 4E 78 49 48 C4 48 95 F7 23 0A 4C FA 99
+01 00 F3 23 1A 53 58 83 FA 23 19 B3 09 63 0C 49
+6A 4E 1E 43 4A 93 01 30 2E 83 8F 4C 00 00 35 40
+FA C2 34 40 EC C2 30 4D 00 00 07 3E 4E 55 4D 42
+45 52 3C 4F 38 4F 29 4F 2F 82 1B 42 DC 1D 6A 4C
+7A 80 30 00 7A 90 0A 00 05 28 7A 80 07 00 7A 90
+0A 00 12 28 0A 9B 22 C3 0F 2C 82 49 D0 04 82 48
+D2 04 82 4B C8 04 19 42 E4 04 18 42 E6 04 09 5A
+08 63 1C 53 1E 83 E3 23 8F 4C 00 00 8F 48 02 00
+8F 49 04 00 30 4D 32 C0 00 02 1B 42 DC 1D 0C 43
+2D 15 3D 40 50 C7 09 43 08 43 3F 82 8F 4E 06 00
+0C 4E 7E 4C 6A 4C 7A 90 2D 00 04 28 C9 23 B1 43
+02 00 0B 3C 2B 43 7A 80 25 00 07 24 3B 52 6A 53
+04 24 3B 40 10 00 5A 83 BA 23 1C 53 1E 83 EA 3F
+52 C7 2F 24 2D 83 7A 90 28 00 CB 27 32 D0 00 02
+7A 90 F7 00 C6 27 7A 90 F5 00 23 20 0A 4E 09 43
+8F 49 02 00 5A 83 09 4A 09 5C 69 49 79 80 30 00
+79 90 0A 00 05 28 79 80 07 00 79 90 0A 00 0A 28
+09 9B 08 2C 8F 49 00 00 0E 4B 2C 15 B0 12 7E C2
+2A 17 E6 3F 9F 4F 04 00 02 00 AF 4F 04 00 0E 4A
+4E 93 2B 17 0E 4C 82 4B DC 1D 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 00 00 01 2C 1A 42 C6 1D 8A 4E 00 00
+A2 53 C6 1D 3E 4F 30 4D 2C C3 05 41 4C 4C 4F 54
+82 5E C6 1D 3E 4F 30 4D 0A 4E 3E 4F 00 4A F6 C7
+87 4C 49 54 45 52 41 4C 82 93 BE 1D 0C 24 1A 42
+C6 1D A2 52 C6 1D BA 40 24 C2 00 00 8A 4E 02 00
+3E 4F 32 B0 00 02 32 C0 00 02 06 24 19 4A 02 00
+8A 4E 02 00 0E 49 EB 3F 30 4D 2C C5 05 43 4F 55
+4E 54 2F 83 1E 53 8F 4E 00 00 5E 4E FF FF 30 4D
+85 12 20 00 0D 12 87 12 C4 C2 70 C8 F2 C5 80 C8
+3D 40 88 C8 E2 22 A4 26 8A C8 0A 4E 3E 4F 3D 40
+A0 C8 39 27 3D 40 7A C8 1A E2 BE 1D BD 23 AC 27
+A2 C8 3E 4F 3D 40 7A C8 BF 23 DE 53 00 00 68 4E
+08 5E F8 40 3F 00 00 00 3D 40 20 CB D2 3F D0 C3
 08 45 56 41 4C 55 41 54 45 00 39 40 C0 1D 3C 49
-3B 49 3A 49 3D 15 B0 12 2A C2 46 C9 AE C9 B2 41
-C4 1D B2 41 C2 1D B2 41 C0 1D 3D 41 30 4D 85 12
-BE 1D 08 C3 04 51 55 49 54 00 82 43 08 18 31 40
-E0 1C B2 40 00 1C 00 1C 82 43 BE 1D B0 12 2A C2
-04 C6 8C C5 42 C9 82 C5 46 C9 A4 C2 0C C3 1E C6
-0C 73 74 61 63 6B 20 65 6D 70 74 79 21 00 40 CA
-14 C6 30 FF A0 C8 26 C3 1E C6 0A 46 52 41 4D 20
-66 75 6C 6C 21 00 40 CA 3C C4 E0 C9 C2 C8 05 41
-42 4F 52 54 3F 40 80 1C D0 3F 1E CA 86 41 42 4F
-52 54 22 00 87 12 38 C6 14 C6 40 CA B0 C8 2A C2
-8F 93 02 00 03 20 2F 52 3E 4F 30 4D B0 12 C8 CF
-B0 12 B6 C4 92 C3 DC 05 38 40 F0 FF 39 42 03 43
-19 83 FD 23 18 83 FA 23 92 B3 DC 05 F3 23 87 12
-42 CF 14 C6 DE 1D EA C2 AC C5 1E C6 04 1B 5B 37
-6D 00 D6 C5 58 C2 40 C4 9A CA 04 C6 1E C6 05 6C
-69 6E 65 3A D6 C5 D0 C2 24 C4 D6 C5 1E C6 04 1B
-5B 30 6D 00 D6 C5 24 CA 00 00 83 5B 27 5D 87 12
-C0 CA 14 C6 14 C6 B0 C8 B0 C8 2A C2 E8 C6 01 27
-87 12 42 C9 80 C6 EE C6 40 C4 CE CA 2A C2 7A C9
-32 C3 81 5C 92 42 C0 1D C4 1D 30 4D AA CA 81 5B
-82 43 BE 1D 30 4D D2 CA 01 5D B2 43 BE 1D 30 4D
-BE 4F 02 00 3E 4F 30 4D 9A C8 82 49 53 00 87 12
-BE C9 EA C2 40 C4 12 CB AE CA 14 C6 F0 CA B0 C8
-2A C2 C0 CA F0 CA 2A C2 FA CA 09 49 4D 4D 45 44
-49 41 54 45 1A 42 B6 1D FA D0 80 00 00 00 30 4D
-C4 C9 88 50 4F 53 54 50 4F 4E 45 00 87 12 42 C9
-80 C6 EE C6 58 C2 40 C4 CE CA 0C C3 40 C4 5C CB
-14 C6 14 C6 B0 C8 B0 C8 14 C6 B0 C8 B0 C8 2A C2
-DE CA 81 3B 82 93 BE 1D B5 27 87 12 14 C6 2A C2
-B0 C8 FA CB E0 CA 2A C2 62 CB 07 3A 4E 4F 4E 41
-4D 45 30 12 A0 CB 2F 83 8F 4E 00 00 1E 42 C6 1D
-1E B3 0E 63 0A 4E 39 40 00 02 38 40 02 02 21 3C
-BA 40 87 12 FC FF A2 83 C6 1D B2 43 BE 1D 30 4D
-7A CB 01 3A 30 12 A0 CB 92 B3 C6 1D A2 63 C6 1D
-87 12 42 C9 80 C6 C8 CB 3D 41 08 4E 7A 4E 5A D3
-5A 53 0A 58 19 42 DA 1D 6E 4E 3E F0 1E 00 09 5E
-3E 4F 82 48 B6 1D 82 49 B8 1D 82 4A BA 1D 82 4F
-BC 1D 2A 52 82 4A C6 1D 30 41 82 9F BC 1D 09 20
-18 42 B6 1D 19 42 B8 1D A8 49 FE FF 89 48 00 00
-30 4D 87 12 1E C6 0F 73 74 61 63 6B 20 6D 69 73
-6D 61 74 63 68 21 4C CA 90 C9 05 44 45 46 45 52
-B0 12 B8 CB BA 40 30 40 FC FF BA 40 AE CB FE FF
-E3 3F 1E C9 06 43 52 45 41 54 45 00 B0 12 B8 CB
-BA 40 85 12 FC FF 8A 4A FE FF D6 3F 2A CC 05 44
-4F 45 53 3E 1A 42 BA 1D BA 40 84 12 00 00 8A 4D
-02 00 3D 41 30 4D 4E C7 05 3E 42 4F 44 59 2E 52
-30 4D 44 CC 04 43 4F 44 45 00 B0 12 B8 CB A2 82
-C6 1D 87 12 D2 CE AC CE 2A C2 84 CC 07 43 4F 44
-45 4E 4E 4D B0 12 86 CB F2 3F 00 00 07 45 4E 44
-43 4F 44 45 87 12 E0 CE FA CB 2A C2 2C CA 03 41
-53 4D B2 40 B0 CE DA 1D E0 3F AC CC 06 45 4E 44
-41 53 4D 00 87 12 B4 CC F4 CE 2A C2 00 00 05 43
-4F 4C 4F 4E 1A 42 C6 1D BA 40 87 12 00 00 A2 53
-C6 1D B2 43 BE 1D 30 40 E0 CE 00 00 05 4C 4F 32
-48 49 1A 42 C6 1D BA 40 B0 12 00 00 BA 40 2A C2
-02 00 A2 52 C6 1D ED 3F 1A CB 85 48 49 32 4C 4F
-87 12 A0 C8 4A CD B0 C8 E0 CA D2 CE AC CE 2A C2
-1A CD 82 49 46 00 2F 83 8F 4E 00 00 1E 42 C6 1D
-A2 52 C6 1D BE 40 40 C4 00 00 2E 53 30 4D 5E CC
-84 45 4C 53 45 00 A2 52 C6 1D 1A 42 C6 1D BA 40
-3C C4 FC FF 8E 4A 00 00 2A 83 0E 4A 30 4D D0 C5
-84 54 48 45 4E 00 9E 42 C6 1D 00 00 3E 4F 30 4D
-9C CC 85 42 45 47 49 4E 30 40 A0 C8 70 CD 85 55
-4E 54 49 4C 39 40 40 C4 A2 52 C6 1D 1A 42 C6 1D
-8A 49 FC FF 8A 4E FE FF 3E 4F 30 4D BE CC 85 41
-47 41 49 4E 39 40 3C C4 EF 3F 7A C6 85 57 48 49
-4C 45 87 12 36 CD 76 C2 2A C2 34 C6 86 52 45 50
-45 41 54 00 87 12 B4 CD 76 CD 2A C2 50 CD 82 44
-4F 00 2F 83 8F 4E 00 00 A2 53 C6 1D 1E 42 C6 1D
-BE 40 54 C4 FE FF A2 53 00 1C 1A 42 00 1C 8A 43
-00 00 30 4D E2 C8 84 4C 4F 4F 50 00 39 40 76 C4
-A2 52 C6 1D 1A 42 C6 1D 8A 49 FC FF 8A 4E FE FF
-1E 42 00 1C A2 83 00 1C 2E 4E 0E 93 03 24 8E 4A
-00 00 F6 3F 3E 4F 30 4D 90 C4 85 2B 4C 4F 4F 50
-39 40 64 C4 E5 3F 06 CE 04 4D 4F 56 45 00 0A 4E
-38 4F 39 4F 3E 4F 0A 93 11 24 08 99 0F 24 06 2C
-F8 49 00 00 18 53 1A 83 FB 23 30 4D 08 5A 09 5A
-19 83 18 83 E8 49 00 00 1A 83 FA 23 30 4D 14 C6
-CA 1D F2 C2 2A C2 84 12 7E CE AE CD 56 D1 DE CD
-BE CA 32 CD 3A CE 6A D2 64 C6 66 CF 80 CF 8E CD
-00 D0 00 00 3C D2 E8 CA 78 CC 00 00 84 12 7E CE
-88 D7 EA D7 3C D7 5E D8 02 D7 00 00 32 D4 00 00
-F8 D6 A8 D7 5A D7 98 D7 42 D5 00 00 00 00 3A D8
-AA CE 3A 40 0C 00 39 40 CA 1D 38 40 CC 1D C6 3F
-3A 40 0E 00 39 40 CC 1D 38 40 CA 1D B9 3F 82 43
-CC 1D 30 4D 92 42 CA 1D DA 1D 30 4D 86 CE EE CE
-F4 CE 04 CF 3A 4E 82 4A C8 1D 2E 4E 82 4E C6 1D
-3D 40 10 00 09 4A 08 49 29 83 18 48 FE FF 0E 98
-FC 2B 89 48 00 00 1D 83 F6 23 2A 4A 0A 93 F0 23
-3E 4F 3D 41 30 4D 32 CB 09 50 57 52 5F 53 54 41
-54 45 84 12 FC CE D0 CE 70 D8 CC CD 09 52 53 54
-5F 53 54 41 54 45 92 42 0E 18 46 CF 92 42 0C 18
-48 CF EF 3F 38 CF 08 50 57 52 5F 48 45 52 45 00
-92 42 C8 1D 46 CF 92 42 C6 1D 48 CF 30 4D 4C CF
-08 52 53 54 5F 48 45 52 45 00 92 42 C8 1D 0E 18
-92 42 C6 1D 0C 18 EC 3F BC CD 04 57 49 50 45 00
-39 40 10 00 29 83 B9 43 80 FF FC 23 B2 40 E0 C4
-DE C4 B2 40 0A D0 08 D0 B2 40 D0 CE 0E 18 B2 40
-70 D8 0C 18 30 12 56 CF B2 40 86 C5 84 C5 B2 40
-08 C6 06 C6 B2 40 98 C4 96 C4 B2 40 18 00 0A 18
-37 40 1A C2 36 40 92 C2 35 40 0E C2 34 40 00 C2
-B2 40 0A 00 DC 1D B2 40 20 00 B4 1D 30 41 9A CF
-04 57 41 52 4D 00 30 40 0A D0 3D 40 3E D0 92 C3
-30 01 1E 42 08 18 0E 93 11 24 D2 B3 01 02 02 20
-3E E3 1E 53 F2 D0 03 00 0D 02 3E 90 0A 00 B8 27
-3E 90 16 00 B5 2F 2E 93 84 27 8D 2F 30 4D 1E C6
-06 0D 1B 5B 37 6D 23 00 D6 C5 34 C4 1E C6 19 46
-61 73 74 46 6F 72 74 68 20 C2 A9 4A 2E 4D 2E 54
-68 6F 6F 72 65 6E 73 20 D6 C5 14 C6 30 FF A0 C8
-B8 C2 24 C4 1E C6 0A 62 79 74 65 73 20 66 72 65
-65 00 3C C4 9A CA 82 CD 04 43 4F 4C 44 00 92 B3
-CA 05 FD 23 B2 40 04 A5 20 01 3E D0 92 D3 30 01
-B2 40 88 5A 5C 01 B2 43 06 02 B2 40 EF 7F 02 02
-E2 D2 05 02 B2 43 26 02 B2 D0 08 FF 22 02 F2 D3
-26 03 F2 40 F0 00 22 03 F2 40 A5 00 61 01 B2 40
-86 00 62 01 82 43 66 01 39 40 80 01 B2 40 33 00
-64 01 D2 43 61 01 92 D2 9E 01 08 18 38 40 59 14
-18 83 FE 23 19 83 FA 23 B2 D2 B0 01 92 C3 B0 01
-F2 D0 10 00 2A 03 F2 C0 40 00 A1 04 39 40 00 04
-29 83 89 43 00 1C FC 23 39 40 32 00 29 83 B9 40
-9C D0 CE FF FB 23 B2 40 26 C5 F0 FF B2 40 81 00
-C0 05 92 42 02 18 C6 05 92 42 04 18 C8 05 92 C3
-C0 05 92 D3 DA 05 3F 40 80 1C 31 40 E0 1C 30 12
-06 D0 43 3F 88 D0 07 43 4F 4D 50 41 52 45 0C 4E
-38 4F 3B 4F 39 4F 0E 4B 0E 5C 0C 24 1B 83 07 30
-1C 83 07 30 19 53 F9 98 FF FF F5 27 02 2C 3E 43
-30 4D 1E 43 30 4D B2 CB 86 5B 54 48 45 4E 5D 00
-30 4D 88 D1 86 5B 45 4C 53 45 5D 00 87 12 14 C6
-00 00 C6 C2 42 C9 80 C6 24 C9 34 C2 40 C4 FE D1
-44 C2 1E C6 06 5B 54 48 45 4E 5D 00 5E D1 4A C4
-CE D1 F8 C5 D0 C2 58 C2 4A C4 A4 D1 2A C2 44 C2
-1E C6 06 5B 45 4C 53 45 5D 00 5E D1 4A C4 EC D1
-F8 C5 D0 C2 58 C2 4A C4 A2 D1 2A C2 1E C6 04 5B
-49 46 5D 00 5E D1 4A C4 A4 D1 3C C4 A2 D1 F8 C5
-1E C6 05 0D 0A 6B 6F 20 D6 C5 8C C5 32 C9 3C C4
-A4 D1 94 D1 84 5B 49 46 5D 00 0E 93 3E 4F BE 27
-30 4D 14 D2 89 5B 44 45 46 49 4E 45 44 5D 87 12
-42 C9 80 C6 EE C6 6A C2 2A C2 24 D2 8B 5B 55 4E
-44 45 46 49 4E 45 44 5D 87 12 42 C9 80 C6 EE C6
-6A C2 00 C3 2A C2 58 D2 3D 41 B2 4E 0E 18 A2 4E
-0C 18 3E 4F 30 40 56 CF 48 CE 06 4D 41 52 4B 45
-52 00 B0 12 B8 CB BA 40 84 12 FC FF BA 40 56 D2
-FE FF 9A 42 C8 1D 00 00 28 83 8A 48 02 00 A2 52
-C6 1D 30 40 00 CC 1C 15 B0 12 2A C2 80 C6 EE C6
-4A C4 AC D2 AA C7 40 C4 CE CA C6 D2 AE D2 39 4E
-39 80 86 12 08 24 19 53 02 20 2E 4E 04 3C 2E 53
-19 53 01 24 2E 82 1B 17 30 41 3E 40 28 00 B0 12
-96 D2 19 42 C6 1D A2 53 C6 1D 89 4E 00 00 3E 40
-29 00 1C 15 12 12 C4 1D 92 53 C4 1D B0 12 2A C2
-80 C6 AA C7 40 C4 04 D3 FA D2 21 53 3E 90 10 00
-7D 2D E1 2B 06 D3 B2 41 C4 1D DD 3F 87 12 42 C9
-74 C6 14 D3 0C 43 1B 42 C6 1D A2 53 C6 1D 6A 4E
-3E 4F 7A 90 23 00 27 20 92 53 C4 1D B0 12 96 D2
-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 C6 1D A2 53 C6 1D 89 4E 00 00
-3E 4F 3D 41 30 4D 7A 90 26 00 07 20 3C 40 10 02
-92 53 C4 1D B0 12 96 D2 ED 3F 7A 90 40 00 16 20
-3C 40 20 00 92 53 C4 1D B0 12 E2 D2 0C 20 3C 50
-10 00 3E 40 2B 00 B0 12 E2 D2 92 92 C0 1D C4 1D
-02 24 92 53 C4 1D 8E 10 0C 5E DA 3F B0 12 E2 D2
-FA 23 3C 50 10 00 B0 12 CA D2 EF 3F 0C 43 1B 42
-C6 1D A2 53 C6 1D 87 12 42 C9 74 C6 DE D3 FE 90
-26 00 00 00 3E 40 20 00 03 20 3C 50 82 00 C8 3F
-B0 12 E2 D2 E1 23 3C 50 80 00 B0 12 CA D2 DC 3F
-D6 C4 04 52 45 54 49 00 87 12 14 C6 00 13 B0 C8
-2A C2 14 C6 2C 00 0C D3 D6 D3 1C D4 09 4B 2E 4E
-0E DC A4 3F FC CC 03 4D 4F 56 84 12 12 D4 00 40
-26 D4 05 4D 4F 56 2E 42 84 12 12 D4 40 40 00 00
-03 41 44 44 84 12 12 D4 00 50 40 D4 05 41 44 44
-2E 42 84 12 12 D4 40 50 4C D4 04 41 44 44 43 00
-84 12 12 D4 00 60 5A D4 06 41 44 44 43 2E 42 00
-84 12 12 D4 40 60 02 D4 04 53 55 42 43 00 84 12
-12 D4 00 70 78 D4 06 53 55 42 43 2E 42 00 84 12
-12 D4 40 70 86 D4 03 53 55 42 84 12 12 D4 00 80
-96 D4 05 53 55 42 2E 42 84 12 12 D4 40 80 DE CC
-03 43 4D 50 84 12 12 D4 00 90 B0 D4 05 43 4D 50
-2E 42 84 12 12 D4 40 90 CC CC 04 44 41 44 44 00
-84 12 12 D4 00 A0 CA D4 06 44 41 44 44 2E 42 00
-84 12 12 D4 40 A0 BC D4 03 42 49 54 84 12 12 D4
-00 B0 E8 D4 05 42 49 54 2E 42 84 12 12 D4 40 B0
-F4 D4 03 42 49 43 84 12 12 D4 00 C0 02 D5 05 42
-49 43 2E 42 84 12 12 D4 40 C0 0E D5 03 42 49 53
-84 12 12 D4 00 D0 1C D5 05 42 49 53 2E 42 84 12
-12 D4 40 D0 00 00 03 58 4F 52 84 12 12 D4 00 E0
-36 D5 05 58 4F 52 2E 42 84 12 12 D4 40 E0 68 D4
-03 41 4E 44 84 12 12 D4 00 F0 50 D5 05 41 4E 44
-2E 42 84 12 12 D4 40 F0 42 C9 0C D3 6E D5 0A 4C
-3C F0 70 00 8A 10 3A F0 0F 00 0C DA 4F 3F A2 D4
-03 52 52 43 84 12 68 D5 00 10 80 D5 05 52 52 43
-2E 42 84 12 68 D5 40 10 8C D5 04 53 57 50 42 00
-84 12 68 D5 80 10 9A D5 03 52 52 41 84 12 68 D5
-00 11 A8 D5 05 52 52 41 2E 42 84 12 68 D5 40 11
-B4 D5 03 53 58 54 84 12 68 D5 80 11 00 00 04 50
-55 53 48 00 84 12 68 D5 00 12 CE D5 06 50 55 53
-48 2E 42 00 84 12 68 D5 40 12 28 D5 04 43 41 4C
-4C 00 84 12 68 D5 80 12 1A 53 0E 4A 87 12 34 C4
-1E C6 0D 6F 75 74 20 6F 66 20 62 6F 75 6E 64 73
-4C CA 42 C9 74 C6 18 D6 92 53 C4 1D 3E 40 2C 00
-B0 12 2A C2 80 C6 AA C7 40 C4 CE CA CC D3 30 D6
-0A 4E 3E 4F 1A 83 E0 33 29 4E 59 0E 0A 28 08 4C
-59 0A 01 28 0C 8A 08 8A 38 90 10 00 D5 2F 5A 0E
-94 3F 2A 92 D1 2F 8A 10 5A 06 8F 3F C2 D5 04 52
-52 43 4D 00 84 12 12 D6 50 00 5E D6 04 52 52 41
-4D 00 84 12 12 D6 50 01 6C D6 04 52 4C 41 4D 00
-84 12 12 D6 50 02 7A D6 04 52 52 55 4D 00 84 12
-12 D6 50 03 DC D5 05 50 55 53 48 4D 84 12 12 D6
-00 15 96 D6 04 50 4F 50 4D 00 84 12 12 D6 00 17
-88 D6 03 53 3E 3D 85 12 00 38 B2 D6 02 53 3C 00
-85 12 00 34 A4 D6 03 30 3E 3D 85 12 00 30 C6 D6
-02 30 3C 00 85 12 00 30 00 00 02 55 3C 00 85 12
-00 2C DA D6 03 55 3E 3D 85 12 00 28 D0 D6 03 30
-3C 3E 85 12 00 24 EE D6 02 30 3D 00 85 12 00 20
-00 00 02 49 46 00 1A 42 C6 1D 8A 4E 00 00 A2 53
-C6 1D 0E 4A 30 4D E4 D6 04 54 48 45 4E 00 1A 42
-C6 1D 08 4E 3E 4F 09 48 29 53 0A 89 0A 11 3A 90
-00 02 63 2F 88 DA 00 00 30 4D D8 D4 04 45 4C 53
-45 00 1A 42 C6 1D BA 40 00 3C 00 00 A2 53 C6 1D
-2F 83 8F 4A 00 00 E3 3F 18 D7 05 55 4E 54 49 4C
-3A 4F 08 4E 3E 4F 19 42 C6 1D 2A 83 0A 89 0A 11
-3A 90 00 FE 42 3B 3A F0 FF 03 08 DA 89 48 00 00
-A2 53 C6 1D 30 4D 5C D5 05 41 47 41 49 4E 0A 4E
-38 40 00 3C E7 3F 00 00 05 57 48 49 4C 45 87 12
-06 D7 76 C2 2A C2 BC D6 06 52 45 50 45 41 54 00
-87 12 8E D7 1E D7 2A C2 BA D7 3D 41 08 4E 3E 4F
-2A 48 B2 92 C4 1D CD 2F 98 42 C6 1D 00 00 30 4D
-EC D5 03 42 57 31 84 12 B8 D7 00 00 D2 D7 03 42
-57 32 84 12 B8 D7 00 00 DE D7 03 42 57 33 84 12
-B8 D7 00 00 F6 D7 3D 41 1A 42 C6 1D 28 4E B2 92
-C4 1D 90 2B BA 4F 00 00 A2 53 C6 1D 8E 4A 00 00
-3E 4F 30 4D 00 00 03 46 57 31 84 12 F4 D7 00 00
-16 D8 03 46 57 32 84 12 F4 D7 00 00 22 D8 03 46
-57 33 84 12 F4 D7 00 00 00 00 05 3F 47 4F 54 4F
-3E 90 00 30 07 24 3E E0 00 04 3E B0 00 10 02 24
-3E E0 00 08 87 12 C0 CA DA C8 2A C2 2E D8 04 47
-4F 54 4F 00 2F 83 8F 4E 00 00 3E 40 00 3C F2 3F
+3B 49 3A 49 3D 15 87 12 74 C8 DC C8 B2 41 C4 1D
+B2 41 C2 1D B2 41 C0 1D 3D 41 30 4D 85 12 BE 1D
+00 00 04 51 55 49 54 00 82 43 08 18 31 40 E0 1C
+B2 40 00 1C 00 1C 82 43 BE 1D 87 12 2E C4 D4 C2
+70 C8 C4 C3 74 C8 8C C4 BC C4 2E C2 0C 73 74 61
+63 6B 20 65 6D 70 74 79 21 00 6E C9 24 C2 40 FF
+2A CC C4 C4 2E C2 0A 46 52 41 4D 20 66 75 6C 6C
+21 00 6E C9 48 C2 0C C9 0A C8 05 41 42 4F 52 54
+3F 40 80 1C D1 3F 4A C9 86 41 42 4F 52 54 22 00
+0D 12 87 12 AA C5 24 C2 6E C9 F8 C7 26 C5 8F 93
+02 00 03 20 2F 52 3E 4F 30 4D B0 12 96 CD B0 12
+06 C3 92 C3 DC 05 18 42 06 18 39 40 20 00 19 83
+FE 23 18 83 FA 23 92 B3 DC 05 F3 23 0D 12 87 12
+10 CD 24 C2 DE 1D 02 C3 D6 C3 2E C2 04 1B 5B 37
+6D 00 00 C4 7C C4 4C C2 C8 C9 2E C4 2E C2 05 6C
+69 6E 65 3A 00 C4 66 C5 00 C4 2E C2 04 1B 5B 30
+6D 00 00 C4 50 C9 00 00 83 5B 27 5D 0D 12 87 12
+F0 C9 24 C2 24 C2 F8 C7 F8 C7 26 C5 44 C6 01 27
+0D 12 87 12 70 C8 F2 C5 4A C6 4C C2 00 CA 26 C5
+AA C8 D2 C4 81 5C 92 42 C0 1D C4 1D 30 4D D8 C9
+81 5B 82 43 BE 1D 30 4D 04 CA 01 5D B2 43 BE 1D
+30 4D F2 C8 88 50 4F 53 54 50 4F 4E 45 00 0D 12
+87 12 70 C8 F2 C5 4A C6 7C C4 4C C2 00 CA BC C4
+4C C2 50 CA 24 C2 24 C2 F8 C7 F8 C7 24 C2 F8 C7
+F8 C7 26 C5 40 C5 09 49 4D 4D 45 44 49 41 54 45
+1A 42 B6 1D FA D0 80 00 00 00 30 4D 10 CA 01 3A
+30 12 B8 CA 92 B3 C6 1D A2 63 C6 1D 0D 12 87 12
+70 C8 F2 C5 86 CA 3D 41 08 4E 7A 4E 5A D3 5A 53
+0A 58 19 42 DA 1D 6E 4E 3E F0 1E 00 09 5E 3E 4F
+82 48 B6 1D 82 49 B8 1D 82 4A BA 1D 82 4F BC 1D
+2A 52 82 4A C6 1D 30 41 BA 40 0D 12 FC FF BA 40
+87 12 FE FF B2 43 BE 1D 30 4D 6E CA 07 3A 4E 4F
+4E 41 4D 45 30 12 B8 CA 2F 83 8F 4E 00 00 1E 42
+C6 1D 1E B3 0E 63 0A 4E 39 40 10 02 38 40 12 02
+D7 3F 82 9F BC 1D 09 20 18 42 B6 1D 19 42 B8 1D
+A8 49 FE FF 89 48 00 00 30 4D 0D 12 87 12 2E C2
+0F 73 74 61 63 6B 20 6D 69 73 6D 61 74 63 68 21
+7A C9 CC CA 81 3B 82 93 BE 1D 6D 27 0D 12 87 12
+24 C2 26 C5 F8 C7 F2 CA 12 CA 26 C5 5C C8 06 43
+52 45 41 54 45 00 B0 12 74 CA BA 40 85 12 FC FF
+8A 4A FE FF D5 3F C0 C8 05 44 4F 45 53 3E 1A 42
+BA 1D BA 40 84 12 00 00 8A 4D 02 00 3D 41 30 4D
+3E CB 04 43 4F 44 45 00 B0 12 74 CA A2 82 C6 1D
+0D 12 87 12 8A CC 64 CC 26 C5 72 CB 07 43 4F 44
+45 4E 4E 4D 30 12 7C CB 9F 3F 00 00 07 45 4E 44
+43 4F 44 45 0D 12 87 12 F2 CA A4 CC 26 C5 58 C9
+03 41 53 4D B2 40 68 CC DA 1D DE 3F 9C CB 06 45
+4E 44 41 53 4D 00 0D 12 87 12 A4 CB C2 CC 26 C5
+00 00 05 43 4F 4C 4F 4E 1A 42 C6 1D BA 40 0D 12
+00 00 BA 40 87 12 02 00 A2 52 C6 1D B2 43 BE 1D
+30 40 A4 CC 00 00 05 4C 4F 32 48 49 A2 83 C6 1D
+1A 42 C6 1D EE 3F 56 CA 85 48 49 32 4C 4F 0D 12
+87 12 2A CC 1E CC F8 C7 12 CA 80 CB 26 C5 2E 53
+30 4D 8C CB 85 42 45 47 49 4E 2F 83 8F 4E 00 00
+1E 42 C6 1D 30 4D 24 C2 CA 1D AE C4 26 C5 84 12
+36 CC B0 CB 5A CE 58 CB EE C9 08 CC 42 C4 20 C8
+D8 C5 34 CD 4E CD 62 C5 CE CD 00 00 EE CF 1A CA
+AA C6 00 00 84 12 36 CC 20 D5 86 D5 D4 D4 D6 D5
+9A D4 00 00 CA D1 00 00 90 D4 42 D5 F2 D4 30 D5
+DA D2 00 00 00 00 F2 D5 62 CC 3A 40 0C 00 39 40
+D6 1D 08 49 28 53 19 83 18 83 E8 49 00 00 1A 83
+FA 23 30 4D 3A 40 0E 00 38 40 CA 1D 09 48 29 53
+F8 49 00 00 18 53 1A 83 FB 23 30 4D 82 43 CC 1D
+30 4D 92 42 CA 1D DA 1D 30 4D 3E CC BC CC C2 CC
+D2 CC 3A 4E 82 4A C8 1D 2E 4E 82 4E C6 1D 3D 40
+10 00 09 4A 08 49 29 83 18 48 FE FF 0E 98 FC 2B
+89 48 00 00 1D 83 F6 23 2A 4A 0A 93 F0 23 3E 4F
+3D 41 30 4D 24 CA 09 50 57 52 5F 53 54 41 54 45
+84 12 CA CC 88 CC 0E D6 A6 C5 09 52 53 54 5F 53
+54 41 54 45 92 42 0E 18 14 CD 92 42 0C 18 16 CD
+EF 3F 06 CD 08 50 57 52 5F 48 45 52 45 00 92 42
+C8 1D 14 CD 92 42 C6 1D 16 CD 30 4D 1A CD 08 52
+53 54 5F 48 45 52 45 00 92 42 C8 1D 0E 18 92 42
+C6 1D 0C 18 EC 3F EC C5 04 57 49 50 45 00 39 40
+10 00 29 83 B9 43 80 FF FC 23 B2 40 04 C2 02 C2
+B2 40 D8 CD D6 CD B2 40 88 CC 0E 18 B2 40 0E D6
+0C 18 30 12 24 CD B2 40 C8 C3 C6 C3 B2 40 32 C4
+30 C4 B2 40 4A C4 48 C4 B2 40 18 00 0A 18 37 40
+26 C5 36 40 9C C4 35 40 FA C2 34 40 EC C2 B2 40
+0A 00 DC 1D B2 40 20 00 B4 1D 30 41 68 CD 04 57
+41 52 4D 00 30 40 D8 CD 3D 40 10 CE 92 C3 30 01
+1E 42 08 18 0E 93 13 24 D2 B3 01 02 02 20 3E E3
+1E 53 F2 D0 03 00 0D 02 92 D3 DA 05 3E 90 0A 00
+B6 27 3E 90 16 00 B3 2F 2E 93 82 27 8B 2F 30 4D
+2E C2 07 0D 0A 1B 5B 37 6D 23 00 C4 9C C5 2E C2
+19 46 61 73 74 46 6F 72 74 68 20 C2 A9 4A 2E 4D
+2E 54 68 6F 6F 72 65 6E 73 20 00 C4 24 C2 40 FF
+2A CC A6 C4 66 C5 2E C2 0A 62 79 74 65 73 20 66
+72 65 65 00 48 C2 C8 C9 24 CC 04 43 4F 4C 44 00
+92 B3 CA 05 FD 23 B2 40 04 A5 20 01 31 40 E0 1C
+92 D3 30 01 B2 40 88 5A 5C 01 B2 43 06 02 B2 40
+EF 7F 02 02 E2 D2 05 02 B2 43 26 02 B2 D0 08 FF
+22 02 F2 D3 26 03 F2 40 F0 00 22 03 F2 40 A5 00
+61 01 B2 40 86 00 62 01 82 43 66 01 39 40 80 01
+B2 40 33 00 64 01 D2 43 61 01 92 D2 9E 01 08 18
+38 40 59 14 18 83 FE 23 19 83 FA 23 B2 D2 B0 01
+92 C3 B0 01 F2 D0 10 00 2A 03 F2 C0 40 00 A1 04
+39 40 00 04 29 83 89 43 00 1C FC 23 B0 12 0E C2
+B2 40 81 00 C0 05 92 42 02 18 C6 05 92 42 04 18
+C8 05 92 C3 C0 05 3F 40 80 1C 30 12 D4 CD 4C 3F
+24 CB 86 5B 54 48 45 4E 5D 00 30 4D 0C 4E 38 4F
+3B 4F 39 4F 0E 4B 0E 5C 10 24 1B 83 06 30 1C 83
+04 30 19 53 F9 98 FF FF F5 27 2D 4D 3E 4F 30 4D
+2F 53 9F 83 00 00 F9 23 2F 53 2D 53 F7 3F 12 CF
+86 5B 45 4C 53 45 5D 00 0D 12 87 12 24 C2 00 00
+AA C4 70 C8 F2 C5 62 C8 68 C4 4C C2 AA CF 70 C4
+2E C2 06 5B 54 48 45 4E 5D 00 1C CF 84 CF 40 CF
+62 CF 26 C5 70 C4 2E C2 06 5B 45 4C 53 45 5D 00
+1C CF 9A CF 40 CF 60 CF 26 C5 2E C2 04 5B 49 46
+5D 00 1C CF 62 CF 48 C2 60 CF 22 C4 2E C2 05 0D
+0A 6B 6F 20 00 C4 D4 C2 C4 C2 48 C2 62 CF 50 CF
+84 5B 49 46 5D 00 0E 93 3E 4F C6 27 30 4D 2F 53
+30 4D C0 CF 89 5B 44 45 46 49 4E 45 44 5D 0D 12
+87 12 70 C8 F2 C5 4A C6 CE CF 26 C5 D4 CF 8B 5B
+55 4E 44 45 46 49 4E 45 44 5D 0D 12 87 12 DE CF
+02 D0 3D 41 30 40 B6 C4 38 40 C0 1D 0A 4E 39 48
+2E 48 09 5E 1E 52 C4 1D 09 9E 03 24 7A 9E FC 27
+1E 83 0A 4E 2A 88 82 4A C4 1D 30 4D 1C 15 87 12
+F2 C5 4A C6 42 C2 40 D0 06 C7 4C C2 00 CA 5A D0
+42 D0 39 4E 39 80 86 12 08 24 19 53 02 20 2E 4E
+04 3C 2E 53 19 53 01 24 2E 82 1B 17 30 41 3E 40
+28 00 B0 12 2C D0 19 42 C6 1D A2 53 C6 1D 89 4E
+00 00 3E 40 29 00 1C 15 12 12 C4 1D 92 53 C4 1D
+87 12 F2 C5 06 C7 4C C2 96 D0 8C D0 21 53 3E 90
+10 00 80 2D E2 2B 98 D0 B2 41 C4 1D DE 3F 0D 12
+87 12 70 C8 08 D0 A8 D0 0C 43 1B 42 C6 1D A2 53
+C6 1D 6A 4E 3E 4F 7A 90 23 00 27 20 92 53 C4 1D
+B0 12 2C D0 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 C6 1D A2 53 C6 1D
+89 4E 00 00 3E 4F 3D 41 30 4D 7A 90 26 00 07 20
+3C 40 10 02 92 53 C4 1D B0 12 2C D0 ED 3F 7A 90
+40 00 16 20 3C 40 20 00 92 53 C4 1D B0 12 76 D0
+0C 20 3C 50 10 00 3E 40 2B 00 B0 12 76 D0 92 92
+C0 1D C4 1D 02 24 92 53 C4 1D 8E 10 0C 5E DA 3F
+B0 12 76 D0 FA 23 3C 50 10 00 B0 12 5E D0 EF 3F
+0C 43 1B 42 C6 1D A2 53 C6 1D 0D 12 87 12 70 C8
+08 D0 74 D1 FE 90 26 00 00 00 3E 40 20 00 03 20
+3C 50 82 00 C7 3F B0 12 76 D0 E0 23 3C 50 80 00
+B0 12 5E D0 DB 3F 00 00 04 52 45 54 49 00 0D 12
+87 12 24 C2 00 13 F8 C7 26 C5 24 C2 2C 00 9E D0
+6A D1 B4 D1 09 4B 2E 4E 0E DC A2 3F F6 CB 03 4D
+4F 56 84 12 AA D1 00 40 BE D1 05 4D 4F 56 2E 42
+84 12 AA D1 40 40 00 00 03 41 44 44 84 12 AA D1
+00 50 D8 D1 05 41 44 44 2E 42 84 12 AA D1 40 50
+E4 D1 04 41 44 44 43 00 84 12 AA D1 00 60 F2 D1
+06 41 44 44 43 2E 42 00 84 12 AA D1 40 60 98 D1
+04 53 55 42 43 00 84 12 AA D1 00 70 10 D2 06 53
+55 42 43 2E 42 00 84 12 AA D1 40 70 1E D2 03 53
+55 42 84 12 AA D1 00 80 2E D2 05 53 55 42 2E 42
+84 12 AA D1 40 80 D2 CB 03 43 4D 50 84 12 AA D1
+00 90 48 D2 05 43 4D 50 2E 42 84 12 AA D1 40 90
+BE CB 04 44 41 44 44 00 84 12 AA D1 00 A0 62 D2
+06 44 41 44 44 2E 42 00 84 12 AA D1 40 A0 54 D2
+03 42 49 54 84 12 AA D1 00 B0 80 D2 05 42 49 54
+2E 42 84 12 AA D1 40 B0 8C D2 03 42 49 43 84 12
+AA D1 00 C0 9A D2 05 42 49 43 2E 42 84 12 AA D1
+40 C0 A6 D2 03 42 49 53 84 12 AA D1 00 D0 B4 D2
+05 42 49 53 2E 42 84 12 AA D1 40 D0 00 00 03 58
+4F 52 84 12 AA D1 00 E0 CE D2 05 58 4F 52 2E 42
+84 12 AA D1 40 E0 00 D2 03 41 4E 44 84 12 AA D1
+00 F0 E8 D2 05 41 4E 44 2E 42 84 12 AA D1 40 F0
+70 C8 9E D0 06 D3 0A 4C 3C F0 70 00 8A 10 3A F0
+0F 00 0C DA 4F 3F 3A D2 03 52 52 43 84 12 00 D3
+00 10 18 D3 05 52 52 43 2E 42 84 12 00 D3 40 10
+24 D3 04 53 57 50 42 00 84 12 00 D3 80 10 32 D3
+03 52 52 41 84 12 00 D3 00 11 40 D3 05 52 52 41
+2E 42 84 12 00 D3 40 11 4C D3 03 53 58 54 84 12
+00 D3 80 11 00 00 04 50 55 53 48 00 84 12 00 D3
+00 12 66 D3 06 50 55 53 48 2E 42 00 84 12 00 D3
+40 12 C0 D2 04 43 41 4C 4C 00 84 12 00 D3 80 12
+1A 53 0E 4A 0D 12 87 12 9C C5 2E C2 0D 6F 75 74
+20 6F 66 20 62 6F 75 6E 64 73 7A C9 70 C8 08 D0
+B2 D3 92 53 C4 1D 3E 40 2C 00 87 12 F2 C5 06 C7
+4C C2 00 CA 60 D1 C8 D3 0A 4E 3E 4F 1A 83 E0 33
+29 4E 59 0E 0A 28 08 4C 59 0A 01 28 0C 8A 08 8A
+38 90 10 00 D5 2F 5A 0E 94 3F 2A 92 D1 2F 8A 10
+5A 06 8F 3F 5A D3 04 52 52 43 4D 00 84 12 AC D3
+50 00 F6 D3 04 52 52 41 4D 00 84 12 AC D3 50 01
+04 D4 04 52 4C 41 4D 00 84 12 AC D3 50 02 12 D4
+04 52 52 55 4D 00 84 12 AC D3 50 03 74 D3 05 50
+55 53 48 4D 84 12 AC D3 00 15 2E D4 04 50 4F 50
+4D 00 84 12 AC D3 00 17 20 D4 03 53 3E 3D 85 12
+00 38 4A D4 02 53 3C 00 85 12 00 34 3C D4 03 30
+3E 3D 85 12 00 30 5E D4 02 30 3C 00 85 12 00 30
+00 00 02 55 3C 00 85 12 00 2C 72 D4 03 55 3E 3D
+85 12 00 28 68 D4 03 30 3C 3E 85 12 00 24 86 D4
+02 30 3D 00 85 12 00 20 00 00 02 49 46 00 1A 42
+C6 1D 8A 4E 00 00 A2 53 C6 1D 0E 4A 30 4D 7C D4
+04 54 48 45 4E 00 1A 42 C6 1D 08 4E 3E 4F 09 48
+29 53 0A 89 0A 11 3A 90 00 02 63 2F 88 DA 00 00
+30 4D 70 D2 04 45 4C 53 45 00 1A 42 C6 1D BA 40
+00 3C 00 00 A2 53 C6 1D 2F 83 8F 4A 00 00 E3 3F
+B0 D4 05 55 4E 54 49 4C 3A 4F 08 4E 3E 4F 19 42
+C6 1D 2A 83 0A 89 0A 11 3A 90 00 FE 42 3B 3A F0
+FF 03 08 DA 89 48 00 00 A2 53 C6 1D 30 4D F4 D2
+05 41 47 41 49 4E 0A 4E 38 40 00 3C E7 3F 00 00
+05 57 48 49 4C 45 0D 12 87 12 9E D4 82 C4 26 C5
+54 D4 06 52 45 50 45 41 54 00 0D 12 87 12 26 D5
+B6 D4 26 C5 56 D5 3D 41 08 4E 3E 4F 2A 48 B2 92
+C4 1D CB 2F 98 42 C6 1D 00 00 30 4D 84 D3 03 42
+57 31 84 12 54 D5 00 00 6E D5 03 42 57 32 84 12
+54 D5 00 00 7A D5 03 42 57 33 84 12 54 D5 00 00
+92 D5 3D 41 1A 42 C6 1D 28 4E B2 92 C4 1D 8E 2B
+BA 4F 00 00 A2 53 C6 1D 8E 4A 00 00 3E 4F 30 4D
+00 00 03 46 57 31 84 12 90 D5 00 00 B2 D5 03 46
+57 32 84 12 90 D5 00 00 BE D5 03 46 57 33 84 12
+90 D5 00 00 CA D5 04 47 4F 54 4F 00 2F 83 8F 4E
+00 00 3E 40 00 3C 0D 12 87 12 F0 C9 18 C8 26 C5
+00 00 05 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
 @FFFE
-9C D0
+6C CE
 q
index c3d368c..fa34190 100644 (file)
 @1800
-10 00 04 00 51 55 40 1F 05 00 18 00 6A D8 D0 CE
-2D 01 6B B0 B6 C4 C8 C4
+10 00 04 00 51 55 40 1F 05 00 18 00 08 D6 88 CC
+2E 01 6B B0 06 C3 18 C3 D4 CD
 @C200
-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 3A 41 0D 12 0D 4A
-30 4D 00 00 04 45 58 49 54 00 3D 41 30 4D 24 C2
-03 44 55 50 2F 83 8F 4E 00 00 30 4D 00 00 04 32
-44 55 50 00 8F 4E FE FF AF 4F FC FF 2F 82 30 4D
-00 00 04 3F 44 55 50 00 0E 93 EC 23 30 4D 30 C2
-04 44 52 4F 50 00 3E 4F 30 4D 2F 53 30 4D 3E C2
-04 53 57 41 50 00 2A 4F 8F 4E 00 00 0E 4A 30 4D
-52 C2 02 3E 52 00 0E 12 3E 4F 30 4D 70 C2 02 52
-3E 00 2F 83 8F 4E 00 00 3E 41 30 4D 60 C2 05 44
-45 50 54 48 8F 4E FE FF 3E 40 80 1C 0E 8F 0E 11
-2F 83 30 4D 00 00 01 2D 3E 8F 3E E3 1E 53 30 4D
-00 00 02 31 2B 00 1E 53 30 4D C2 C2 02 31 2D 00
-1E 83 30 4D 3E F3 06 34 BF E3 00 00 3E E3 9F 53
-00 00 0E 63 30 4D 00 00 01 40 2E 4E 30 4D E8 C2
-01 21 BE 4F 00 00 3E 4F 30 4D CC C2 02 30 3D 00
-1E 83 0E 7E 30 4D FC C2 02 30 3C 00 0E 5E 0E 7E
-3E E3 30 4D 00 00 01 3D 3E 8F FA 27 0E F3 30 4D
-00 00 02 55 3C 00 3E 8F F9 2B 01 24 3E 43 30 4D
-16 C3 02 3C 23 00 B2 40 B2 1D B2 1D 30 4D 0B 4E
+30 40 04 C2 B0 12 06 C3 12 D2 0A 18 F9 3F 39 40
+32 00 29 83 B9 40 6C CE CE FF FB 23 B2 40 68 C3
+F0 FF 30 41 2F 83 8F 4E 00 00 3E 4D 30 4D 2F 82
+8F 4E 02 00 7E 4D 8F 4D 00 00 0D 5E 1D B3 0D 63
+30 4D 0E 93 3E 4F 05 24 2D 4D 30 4D 0E 93 3E 4F
+FB 27 2D 53 30 4D 39 40 00 80 39 8F 08 4E 3E 4F
+08 59 19 15 30 4D 81 5E 00 00 3E 4F 32 B0 00 01
+EB 27 21 52 2D 53 30 4D 91 53 00 00 F7 3F 0B 4E
 1C 4F 02 00 2E 4F 0A 43 34 40 20 00 0E 93 04 20
 04 11 0E 4C 0C 43 09 43 0A 9B 01 28 0A 8B 09 69
 08 68 14 83 07 30 0C 5C 0E 6E 0A 6A F5 2B 0A 8B
-12 D3 F5 3F 34 40 00 C2 8F 4A 02 00 8F 49 00 00
-0E 48 30 41 00 00 01 23 1B 42 DC 1D 2C 4F 2F 83
-B0 12 46 C3 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 86 C3 02 23 53 00 87 12 88 C3 C0 C3
-2D 83 09 93 E3 23 0E 93 E1 23 3D 41 30 4D B6 C3
-02 23 3E 00 9F 42 B2 1D 00 00 3E 40 B2 1D 2E 8F
-30 4D 00 00 04 48 4F 4C 44 00 0A 4E 3E 4F DB 3F
-8E C2 04 53 49 47 4E 00 0E 93 3E 4F 3A 40 2D 00
-D2 33 30 4D 87 12 36 C3 34 C2 86 C2 D4 C2 BA C3
-92 C2 F8 C3 D4 C3 D6 C5 42 C9 82 C5 2A C2 22 C3
-02 55 2E 00 08 43 2F 83 8F 4E 00 00 0E 48 EA 3F
-00 00 01 2E 0E 93 F6 37 38 43 F5 3F 2D 4D 30 4D
-0E 93 3E 4F FB 27 2D 53 30 4D 0E 93 3E 4F F6 23
-2D 53 30 4D 39 40 00 80 39 8F 08 4E 3E 4F 08 59
-19 15 30 4D 81 5E 00 00 3E 4F 32 B0 00 01 E6 27
-2D 53 21 52 30 4D 91 53 00 00 F7 3F E4 C3 01 49
-2F 83 8F 4E 00 00 2E 41 1E 81 02 00 30 4D 00 00
-03 4B 45 59 30 40 98 C4 18 42 CC 05 2F 83 8F 4E
-00 00 B0 12 B6 C4 92 B3 DC 05 FD 27 1E 42 CC 05
-B0 12 C8 C4 30 4D A2 B3 DC 05 FD 27 B2 40 11 00
-CE 05 E2 C2 03 02 30 41 B2 40 13 00 CE 05 E2 D2
-03 02 30 41 00 00 05 53 4C 45 45 50 30 40 E0 C4
-B0 12 B6 C4 12 D2 0A 18 F9 3F F0 C2 06 41 43 43
-45 50 54 00 3C 40 64 C5 3B 40 2E C5 2D 15 0A 4E
-2E 4F 0A 5E 3B 40 0D 00 3C 40 20 00 3D 40 58 C5
-92 B3 DC 05 05 24 18 42 CC 05 38 90 0A 00 CB 23
-21 53 3D 15 DB 3F 21 52 3A 17 58 42 CC 05 48 9C
-08 2C 48 9B C9 27 78 92 11 20 2E 9F 0F 24 1E 83
-05 3C 0E 9A 03 24 CE 48 00 00 1E 53 A2 B3 DC 05
-FD 27 82 48 CE 05 30 4D 5A C5 2D 83 92 B3 DC 05
-E4 23 FC 27 82 93 DE 1D 02 24 92 53 DE 1D 3E 8F
-3D 41 B2 40 18 00 0A 18 30 4D 9E C2 04 45 4D 49
-54 00 30 40 86 C5 08 4E 3E 4F E0 3F 3F 80 06 00
-8F 4E 04 00 3E 40 54 00 BF 40 3C 1D 00 00 AF 4F
-02 00 A8 3F 7C C5 04 45 43 48 4F 00 B2 40 82 48
-52 C5 82 43 DE 1D 30 4D 32 C4 06 4E 4F 45 43 48
-4F 00 B2 40 30 4D 52 C5 92 43 DE 1D 30 4D 20 C4
-04 54 59 50 45 00 0E 93 0F 24 1E 15 3D 40 EC C5
-28 4F 7E 48 8F 48 00 00 2F 83 CB 3F EE C5 2D 83
-91 83 02 00 F5 23 1D 17 2F 53 3E 4F 30 4D D0 C3
-02 43 52 00 30 40 08 C6 87 12 1E C6 02 0D 0A 00
-D6 C5 2A C2 2F 83 8F 4E 00 00 3E 4D 30 4D 2F 82
-8F 4E 02 00 7E 4D 8F 4D 00 00 0D 5E 1D B3 0D 63
-30 4D F2 C3 82 53 22 00 82 43 B4 1D 87 12 14 C6
-1E C6 B0 C8 14 C6 22 00 80 C6 4C C6 B2 40 20 00
-B4 1D 6E 4E 1E 53 1E B3 82 6E C6 1D 3D 41 3E 4F
-30 4D BA C5 82 2E 22 00 87 12 38 C6 14 C6 D6 C5
-B0 C8 2A C2 48 43 05 3C 00 00 04 57 4F 52 44 00
-48 4E 19 42 C0 1D 1A 42 C2 1D 09 5A 1A 52 C4 1D
-09 9A 03 24 7E 9A FC 27 1A 83 4E F8 06 20 0E 4A
-1A 82 C2 1D 82 4A C4 1D 30 4D 18 42 C6 1D 3B 40
-60 00 C8 4C 00 00 09 9A 0C 24 7C 4A 4E 9C 09 24
-18 53 4B 9C F6 2F 7C 90 7B 00 F3 2F 5C 82 B4 1D
-F0 3F 1A 82 C2 1D 82 4A C4 1D 1E 42 C6 1D 08 8E
-CE 48 00 00 30 4D 00 00 04 46 49 4E 44 00 2F 83
-0C 4E 65 4C 74 40 80 00 3B 40 CA 1D 3E 4B 0E 93
-1E 24 58 4C 01 00 78 F0 1E 00 0E 58 2E 53 1E 4E
-FE FF 0E 93 F3 27 09 4E 78 49 48 C4 48 95 F7 23
-0A 4C FA 99 01 00 F3 23 1A 53 58 83 FA 23 19 B3
-09 63 0C 49 6A 4E 1E 43 4A 93 01 30 2E 83 8F 4C
-00 00 35 40 0E C2 34 40 00 C2 30 4D 82 C2 07 3E
-4E 55 4D 42 45 52 3C 4F 38 4F 29 4F 2F 82 1B 42
-DC 1D 6A 4C 7A 80 30 00 7A 90 0A 00 05 28 7A 80
-07 00 7A 90 0A 00 12 28 0A 9B 22 C3 0F 2C 82 49
-D0 04 82 48 D2 04 82 4B C8 04 19 42 E4 04 18 42
-E6 04 09 5A 08 63 1C 53 1E 83 E3 23 8F 4C 00 00
-8F 48 02 00 8F 49 04 00 30 4D 32 C0 00 02 1B 42
-DC 1D 0C 43 2D 15 3D 40 F4 C7 09 43 08 43 3F 82
-8F 4E 06 00 0C 4E 7E 4C 6A 4C 7A 90 2D 00 04 28
-C9 23 B1 43 02 00 DF 3F 2B 43 7A 80 25 00 07 24
-3B 52 6A 53 04 24 3B 40 10 00 5A 83 BA 23 1C 53
-1E 83 EA 3F F6 C7 2F 24 2D 83 7A 90 28 00 CB 27
-32 D0 00 02 7A 90 F7 00 C6 27 7A 90 F5 00 23 20
-0A 4E 09 43 8F 49 02 00 5A 83 09 4A 09 5C 69 49
-79 80 30 00 79 90 0A 00 05 28 79 80 07 00 79 90
-0A 00 0A 28 09 9B 08 2C 8F 49 00 00 0E 4B 2C 15
-B0 12 3E C3 2A 17 E6 3F 9F 4F 04 00 02 00 AF 4F
-04 00 0E 4A 4E 93 2B 17 0E 4C 82 4B DC 1D 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 7E C4 04 48 45 52 45 00
-2F 83 8F 4E 00 00 1E 42 C6 1D 30 4D B6 C2 01 2C
-1A 42 C6 1D 8A 4E 00 00 A2 53 C6 1D 3E 4F 30 4D
-EC C4 05 41 4C 4C 4F 54 82 5E C6 1D 3E 4F 30 4D
-A6 C5 07 45 58 45 43 55 54 45 0A 4E 3E 4F 00 4A
-AE C8 87 4C 49 54 45 52 41 4C 82 93 BE 1D 0C 24
-1A 42 C6 1D A2 52 C6 1D BA 40 14 C6 00 00 8A 4E
-02 00 3E 4F 32 B0 00 02 32 C0 00 02 06 24 19 4A
-02 00 8A 4E 02 00 0E 49 EB 3F 30 4D 00 C6 05 43
-4F 55 4E 54 2F 83 1E 53 8F 4E 00 00 5E 4E FF FF
-30 4D 82 4E C0 1D B2 4F C2 1D 3E 4F 82 43 C4 1D
-30 4D 85 12 20 00 87 12 32 C9 42 C9 80 C6 50 C9
-3D 40 58 C9 CC 22 82 3E 5A C9 0A 4E 3E 4F 3D 40
-70 C9 23 27 3D 40 4A C9 1A E2 BE 1D A1 27 B5 23
-72 C9 3E 4F 3D 40 4A C9 B8 23 DE 53 00 00 68 4E
-08 5E F8 40 3F 00 00 00 3D 40 26 CC CB 3F D2 C8
+12 D3 F5 3F 34 40 EC C2 8F 4A 02 00 8F 49 00 00
+0E 48 30 41 82 4E C0 1D B2 4F C2 1D 3E 4F 82 43
+C4 1D 30 4D 3F 80 06 00 8F 4E 04 00 3E 40 54 00
+BF 40 3C 1D 00 00 AF 4F 02 00 24 3C 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 A2 B3 DC 05 FD 27 B2 40 11 00
+CE 05 E2 C2 03 02 30 41 A2 B3 DC 05 FD 27 B2 40
+13 00 CE 05 E2 D2 03 02 30 41 00 00 06 41 43 43
+45 50 54 00 3C 40 A6 C3 3B 40 70 C3 2D 15 0A 4E
+2E 4F 0A 5E 3B 40 0D 00 3C 40 20 00 3D 40 9A C3
+92 B3 DC 05 05 24 18 42 CC 05 38 90 0A 00 D3 23
+21 53 3D 15 30 40 00 C2 21 52 3A 17 58 42 CC 05
+48 9C 08 2C 48 9B D0 27 78 92 11 20 2E 9F 0F 24
+1E 83 05 3C 0E 9A 03 24 CE 48 00 00 1E 53 A2 B3
+DC 05 FD 27 82 48 CE 05 30 4D 9C C3 2D 83 92 B3
+DC 05 E4 23 FC 27 82 93 DE 1D 02 24 92 53 DE 1D
+3E 8F 3D 41 B2 40 18 00 0A 18 30 4D 00 00 04 45
+4D 49 54 00 30 40 C8 C3 08 4E 3E 4F E0 3F BE C3
+04 45 43 48 4F 00 B2 40 82 48 94 C3 82 43 DE 1D
+30 4D 00 00 06 4E 4F 45 43 48 4F 00 B2 40 30 4D
+94 C3 92 43 DE 1D 30 4D 00 00 04 54 59 50 45 00
+0E 93 0F 24 1E 15 3D 40 16 C4 28 4F 7E 48 8F 48
+00 00 2F 83 D7 3F 18 C4 2D 83 91 83 02 00 F5 23
+1D 17 2F 53 3E 4F 30 4D 00 00 02 43 52 00 30 40
+32 C4 0D 12 87 12 2E C2 02 0D 0A 00 00 C4 26 C5
+00 00 03 4B 45 59 30 40 4A C4 18 42 CC 05 2F 83
+8F 4E 00 00 B0 12 06 C3 92 B3 DC 05 FD 27 1E 42
+CC 05 B0 12 18 C3 30 4D 2F 83 8F 4E 00 00 30 4D
+8F 4E FE FF AF 4F FC FF 2F 82 30 4D 0E 93 F4 23
+30 4D 2A 4F 8F 4E 00 00 0E 4A 30 4D 8F 4E FE FF
+3E 40 80 1C 0E 8F 0E 11 2F 83 30 4D 2F 83 8F 4E
+00 00 3E 41 30 4D 3E 8F 3E E3 1E 53 30 4D BE 4F
+00 00 3E 4F 30 4D 1E 83 0E 7E 30 4D 0E 5E 0E 7E
+3E E3 30 4D 3E 8F 03 24 3E 43 01 2C 0E F3 30 4D
+00 00 02 3C 23 00 B2 40 B2 1D B2 1D 30 4D 2A C4
+01 23 1B 42 DC 1D 2C 4F 2F 83 B0 12 86 C2 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 E0 C4
+02 23 53 00 0D 12 87 12 E2 C4 1C C5 2D 83 09 93
+E2 23 0E 93 E0 23 3D 41 30 4D 10 C5 02 23 3E 00
+9F 42 B2 1D 00 00 3E 40 B2 1D 2E 8F 30 4D 00 00
+04 48 4F 4C 44 00 4A 4E 3E 4F DA 3F 00 00 04 53
+49 47 4E 00 0E 93 3E 4F 7A 40 2D 00 D1 33 30 4D
+FA C3 02 55 2E 00 08 43 2F 83 8F 4E 00 00 0E 48
+0D 12 0E 12 3E F3 06 34 BF E3 00 00 3E E3 9F 53
+00 00 0E 63 87 12 D6 C4 14 C5 9C C4 54 C5 30 C5
+00 C4 70 C8 C4 C3 26 C5 E4 C3 01 2E 0E 93 E3 37
+38 43 E2 3F 4E C5 82 53 22 00 82 43 B4 1D 0D 12
+87 12 24 C2 2E C2 F8 C7 24 C2 22 00 F2 C5 C0 C5
+B2 40 20 00 B4 1D 6E 4E 1E 53 1E B3 82 6E C6 1D
+3D 41 3E 4F 30 4D 9A C5 82 2E 22 00 0D 12 87 12
+AA C5 24 C2 00 C4 F8 C7 26 C5 00 00 04 57 4F 52
+44 00 3C 40 C0 1D 39 4C 3A 4C 09 5A 3A 5C 28 4C
+09 9A 15 24 7E 9A FC 27 1A 83 3B 40 60 00 C8 4C
+00 00 09 9A 0C 24 7C 4A 4E 9C 09 24 18 53 4B 9C
+F6 2F 7C 90 7B 00 F3 2F 5C 82 B4 1D F0 3F 1A 82
+C2 1D 82 4A C4 1D 1E 42 C6 1D 08 8E CE 48 00 00
+30 4D 00 00 04 46 49 4E 44 00 2F 83 0C 4E 65 4C
+74 40 80 00 3B 40 CA 1D 3E 4B 0E 93 1E 24 58 4C
+01 00 78 F0 1E 00 0E 58 2E 53 1E 4E FE FF 0E 93
+F3 27 09 4E 78 49 48 C4 48 95 F7 23 0A 4C FA 99
+01 00 F3 23 1A 53 58 83 FA 23 19 B3 09 63 0C 49
+6A 4E 1E 43 4A 93 01 30 2E 83 8F 4C 00 00 35 40
+FA C2 34 40 EC C2 30 4D 00 00 07 3E 4E 55 4D 42
+45 52 3C 4F 38 4F 29 4F 2F 82 1B 42 DC 1D 6A 4C
+7A 80 30 00 7A 90 0A 00 05 28 7A 80 07 00 7A 90
+0A 00 12 28 0A 9B 22 C3 0F 2C 82 49 D0 04 82 48
+D2 04 82 4B C8 04 19 42 E4 04 18 42 E6 04 09 5A
+08 63 1C 53 1E 83 E3 23 8F 4C 00 00 8F 48 02 00
+8F 49 04 00 30 4D 32 C0 00 02 1B 42 DC 1D 0C 43
+2D 15 3D 40 50 C7 09 43 08 43 3F 82 8F 4E 06 00
+0C 4E 7E 4C 6A 4C 7A 90 2D 00 04 28 C9 23 B1 43
+02 00 0B 3C 2B 43 7A 80 25 00 07 24 3B 52 6A 53
+04 24 3B 40 10 00 5A 83 BA 23 1C 53 1E 83 EA 3F
+52 C7 2F 24 2D 83 7A 90 28 00 CB 27 32 D0 00 02
+7A 90 F7 00 C6 27 7A 90 F5 00 23 20 0A 4E 09 43
+8F 49 02 00 5A 83 09 4A 09 5C 69 49 79 80 30 00
+79 90 0A 00 05 28 79 80 07 00 79 90 0A 00 0A 28
+09 9B 08 2C 8F 49 00 00 0E 4B 2C 15 B0 12 7E C2
+2A 17 E6 3F 9F 4F 04 00 02 00 AF 4F 04 00 0E 4A
+4E 93 2B 17 0E 4C 82 4B DC 1D 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 00 00 01 2C 1A 42 C6 1D 8A 4E 00 00
+A2 53 C6 1D 3E 4F 30 4D 2C C3 05 41 4C 4C 4F 54
+82 5E C6 1D 3E 4F 30 4D 0A 4E 3E 4F 00 4A F6 C7
+87 4C 49 54 45 52 41 4C 82 93 BE 1D 0C 24 1A 42
+C6 1D A2 52 C6 1D BA 40 24 C2 00 00 8A 4E 02 00
+3E 4F 32 B0 00 02 32 C0 00 02 06 24 19 4A 02 00
+8A 4E 02 00 0E 49 EB 3F 30 4D 2C C5 05 43 4F 55
+4E 54 2F 83 1E 53 8F 4E 00 00 5E 4E FF FF 30 4D
+85 12 20 00 0D 12 87 12 C4 C2 70 C8 F2 C5 80 C8
+3D 40 88 C8 E2 22 A4 26 8A C8 0A 4E 3E 4F 3D 40
+A0 C8 39 27 3D 40 7A C8 1A E2 BE 1D BD 23 AC 27
+A2 C8 3E 4F 3D 40 7A C8 BF 23 DE 53 00 00 68 4E
+08 5E F8 40 3F 00 00 00 3D 40 20 CB D2 3F D0 C3
 08 45 56 41 4C 55 41 54 45 00 39 40 C0 1D 3C 49
-3B 49 3A 49 3D 15 B0 12 2A C2 46 C9 AE C9 B2 41
-C4 1D B2 41 C2 1D B2 41 C0 1D 3D 41 30 4D 85 12
-BE 1D 08 C3 04 51 55 49 54 00 82 43 08 18 31 40
-E0 1C B2 40 00 1C 00 1C 82 43 BE 1D B0 12 2A C2
-04 C6 8C C5 42 C9 82 C5 46 C9 A4 C2 0C C3 1E C6
-0C 73 74 61 63 6B 20 65 6D 70 74 79 21 00 40 CA
-14 C6 30 FF A0 C8 26 C3 1E C6 0A 46 52 41 4D 20
-66 75 6C 6C 21 00 40 CA 3C C4 E0 C9 C2 C8 05 41
-42 4F 52 54 3F 40 80 1C D0 3F 1E CA 86 41 42 4F
-52 54 22 00 87 12 38 C6 14 C6 40 CA B0 C8 2A C2
-8F 93 02 00 03 20 2F 52 3E 4F 30 4D B0 12 C8 CF
-B0 12 B6 C4 92 C3 DC 05 38 40 50 55 39 42 03 43
-19 83 FD 23 18 83 FA 23 92 B3 DC 05 F3 23 87 12
-42 CF 14 C6 DE 1D EA C2 AC C5 1E C6 04 1B 5B 37
-6D 00 D6 C5 58 C2 40 C4 9A CA 04 C6 1E C6 05 6C
-69 6E 65 3A D6 C5 D0 C2 24 C4 D6 C5 1E C6 04 1B
-5B 30 6D 00 D6 C5 24 CA 00 00 83 5B 27 5D 87 12
-C0 CA 14 C6 14 C6 B0 C8 B0 C8 2A C2 E8 C6 01 27
-87 12 42 C9 80 C6 EE C6 40 C4 CE CA 2A C2 7A C9
-32 C3 81 5C 92 42 C0 1D C4 1D 30 4D AA CA 81 5B
-82 43 BE 1D 30 4D D2 CA 01 5D B2 43 BE 1D 30 4D
-BE 4F 02 00 3E 4F 30 4D 9A C8 82 49 53 00 87 12
-BE C9 EA C2 40 C4 12 CB AE CA 14 C6 F0 CA B0 C8
-2A C2 C0 CA F0 CA 2A C2 FA CA 09 49 4D 4D 45 44
-49 41 54 45 1A 42 B6 1D FA D0 80 00 00 00 30 4D
-C4 C9 88 50 4F 53 54 50 4F 4E 45 00 87 12 42 C9
-80 C6 EE C6 58 C2 40 C4 CE CA 0C C3 40 C4 5C CB
-14 C6 14 C6 B0 C8 B0 C8 14 C6 B0 C8 B0 C8 2A C2
-DE CA 81 3B 82 93 BE 1D B5 27 87 12 14 C6 2A C2
-B0 C8 FA CB E0 CA 2A C2 62 CB 07 3A 4E 4F 4E 41
-4D 45 30 12 A0 CB 2F 83 8F 4E 00 00 1E 42 C6 1D
-1E B3 0E 63 0A 4E 39 40 00 02 38 40 02 02 21 3C
-BA 40 87 12 FC FF A2 83 C6 1D B2 43 BE 1D 30 4D
-7A CB 01 3A 30 12 A0 CB 92 B3 C6 1D A2 63 C6 1D
-87 12 42 C9 80 C6 C8 CB 3D 41 08 4E 7A 4E 5A D3
-5A 53 0A 58 19 42 DA 1D 6E 4E 3E F0 1E 00 09 5E
-3E 4F 82 48 B6 1D 82 49 B8 1D 82 4A BA 1D 82 4F
-BC 1D 2A 52 82 4A C6 1D 30 41 82 9F BC 1D 09 20
-18 42 B6 1D 19 42 B8 1D A8 49 FE FF 89 48 00 00
-30 4D 87 12 1E C6 0F 73 74 61 63 6B 20 6D 69 73
-6D 61 74 63 68 21 4C CA 90 C9 05 44 45 46 45 52
-B0 12 B8 CB BA 40 30 40 FC FF BA 40 AE CB FE FF
-E3 3F 1E C9 06 43 52 45 41 54 45 00 B0 12 B8 CB
-BA 40 85 12 FC FF 8A 4A FE FF D6 3F 2A CC 05 44
-4F 45 53 3E 1A 42 BA 1D BA 40 84 12 00 00 8A 4D
-02 00 3D 41 30 4D 4E C7 05 3E 42 4F 44 59 2E 52
-30 4D 44 CC 04 43 4F 44 45 00 B0 12 B8 CB A2 82
-C6 1D 87 12 D2 CE AC CE 2A C2 84 CC 07 43 4F 44
-45 4E 4E 4D B0 12 86 CB F2 3F 00 00 07 45 4E 44
-43 4F 44 45 87 12 E0 CE FA CB 2A C2 2C CA 03 41
-53 4D B2 40 B0 CE DA 1D E0 3F AC CC 06 45 4E 44
-41 53 4D 00 87 12 B4 CC F4 CE 2A C2 00 00 05 43
-4F 4C 4F 4E 1A 42 C6 1D BA 40 87 12 00 00 A2 53
-C6 1D B2 43 BE 1D 30 40 E0 CE 00 00 05 4C 4F 32
-48 49 1A 42 C6 1D BA 40 B0 12 00 00 BA 40 2A C2
-02 00 A2 52 C6 1D ED 3F 1A CB 85 48 49 32 4C 4F
-87 12 A0 C8 4A CD B0 C8 E0 CA D2 CE AC CE 2A C2
-1A CD 82 49 46 00 2F 83 8F 4E 00 00 1E 42 C6 1D
-A2 52 C6 1D BE 40 40 C4 00 00 2E 53 30 4D 5E CC
-84 45 4C 53 45 00 A2 52 C6 1D 1A 42 C6 1D BA 40
-3C C4 FC FF 8E 4A 00 00 2A 83 0E 4A 30 4D D0 C5
-84 54 48 45 4E 00 9E 42 C6 1D 00 00 3E 4F 30 4D
-9C CC 85 42 45 47 49 4E 30 40 A0 C8 70 CD 85 55
-4E 54 49 4C 39 40 40 C4 A2 52 C6 1D 1A 42 C6 1D
-8A 49 FC FF 8A 4E FE FF 3E 4F 30 4D BE CC 85 41
-47 41 49 4E 39 40 3C C4 EF 3F 7A C6 85 57 48 49
-4C 45 87 12 36 CD 76 C2 2A C2 34 C6 86 52 45 50
-45 41 54 00 87 12 B4 CD 76 CD 2A C2 50 CD 82 44
-4F 00 2F 83 8F 4E 00 00 A2 53 C6 1D 1E 42 C6 1D
-BE 40 54 C4 FE FF A2 53 00 1C 1A 42 00 1C 8A 43
-00 00 30 4D E2 C8 84 4C 4F 4F 50 00 39 40 76 C4
-A2 52 C6 1D 1A 42 C6 1D 8A 49 FC FF 8A 4E FE FF
-1E 42 00 1C A2 83 00 1C 2E 4E 0E 93 03 24 8E 4A
-00 00 F6 3F 3E 4F 30 4D 90 C4 85 2B 4C 4F 4F 50
-39 40 64 C4 E5 3F 06 CE 04 4D 4F 56 45 00 0A 4E
-38 4F 39 4F 3E 4F 0A 93 11 24 08 99 0F 24 06 2C
-F8 49 00 00 18 53 1A 83 FB 23 30 4D 08 5A 09 5A
-19 83 18 83 E8 49 00 00 1A 83 FA 23 30 4D 14 C6
-CA 1D F2 C2 2A C2 84 12 7E CE AE CD 50 D1 DE CD
-BE CA 32 CD 3A CE 64 D2 64 C6 66 CF 80 CF 8E CD
-00 D0 00 00 36 D2 E8 CA 78 CC 00 00 84 12 7E CE
-82 D7 E4 D7 36 D7 58 D8 FC D6 00 00 2C D4 00 00
-F2 D6 A2 D7 54 D7 92 D7 3C D5 00 00 00 00 34 D8
-AA CE 3A 40 0C 00 39 40 CA 1D 38 40 CC 1D C6 3F
-3A 40 0E 00 39 40 CC 1D 38 40 CA 1D B9 3F 82 43
-CC 1D 30 4D 92 42 CA 1D DA 1D 30 4D 86 CE EE CE
-F4 CE 04 CF 3A 4E 82 4A C8 1D 2E 4E 82 4E C6 1D
-3D 40 10 00 09 4A 08 49 29 83 18 48 FE FF 0E 98
-FC 2B 89 48 00 00 1D 83 F6 23 2A 4A 0A 93 F0 23
-3E 4F 3D 41 30 4D 32 CB 09 50 57 52 5F 53 54 41
-54 45 84 12 FC CE D0 CE 6A D8 CC CD 09 52 53 54
-5F 53 54 41 54 45 92 42 0E 18 46 CF 92 42 0C 18
-48 CF EF 3F 38 CF 08 50 57 52 5F 48 45 52 45 00
-92 42 C8 1D 46 CF 92 42 C6 1D 48 CF 30 4D 4C CF
-08 52 53 54 5F 48 45 52 45 00 92 42 C8 1D 0E 18
-92 42 C6 1D 0C 18 EC 3F BC CD 04 57 49 50 45 00
-39 40 10 00 29 83 B9 43 80 FF FC 23 B2 40 E0 C4
-DE C4 B2 40 0A D0 08 D0 B2 40 D0 CE 0E 18 B2 40
-6A D8 0C 18 30 12 56 CF B2 40 86 C5 84 C5 B2 40
-08 C6 06 C6 B2 40 98 C4 96 C4 B2 40 18 00 0A 18
-37 40 1A C2 36 40 92 C2 35 40 0E C2 34 40 00 C2
-B2 40 0A 00 DC 1D B2 40 20 00 B4 1D 30 41 9A CF
-04 57 41 52 4D 00 30 40 0A D0 3D 40 3E D0 92 C3
-30 01 1E 42 08 18 0E 93 11 24 D2 B3 01 02 02 20
-3E E3 1E 53 F2 D0 03 00 0D 02 3E 90 0A 00 B8 27
-3E 90 16 00 B5 2F 2E 93 84 27 8D 2F 30 4D 1E C6
-06 0D 1B 5B 37 6D 23 00 D6 C5 34 C4 1E C6 19 46
-61 73 74 46 6F 72 74 68 20 C2 A9 4A 2E 4D 2E 54
-68 6F 6F 72 65 6E 73 20 D6 C5 14 C6 30 FF A0 C8
-B8 C2 24 C4 1E C6 0A 62 79 74 65 73 20 66 72 65
-65 00 3C C4 9A CA 82 CD 04 43 4F 4C 44 00 92 B3
-CA 05 FD 23 B2 40 04 A5 20 01 3E D0 92 D3 30 01
-B2 40 88 5A 5C 01 B2 43 06 02 B2 40 EF 7F 02 02
-E2 D2 05 02 B2 43 26 02 B2 D0 08 FF 22 02 F2 D3
-26 03 F2 40 F0 00 22 03 F2 40 A5 00 61 01 82 43
-66 01 39 40 80 00 B2 40 33 00 64 01 D2 43 61 01
-92 D2 9E 01 08 18 38 40 59 14 18 83 FE 23 19 83
-FA 23 B2 D2 B0 01 92 C3 B0 01 F2 D0 10 00 2A 03
-F2 C0 40 00 A1 04 39 40 00 04 29 83 89 43 00 1C
-FC 23 39 40 32 00 29 83 B9 40 9C D0 CE FF FB 23
-B2 40 26 C5 F0 FF B2 40 81 00 C0 05 92 42 02 18
-C6 05 92 42 04 18 C8 05 92 C3 C0 05 92 D3 DA 05
-3F 40 80 1C 31 40 E0 1C 30 12 06 D0 46 3F 88 D0
-07 43 4F 4D 50 41 52 45 0C 4E 38 4F 3B 4F 39 4F
-0E 4B 0E 5C 0C 24 1B 83 07 30 1C 83 07 30 19 53
-F9 98 FF FF F5 27 02 2C 3E 43 30 4D 1E 43 30 4D
-B2 CB 86 5B 54 48 45 4E 5D 00 30 4D 82 D1 86 5B
-45 4C 53 45 5D 00 87 12 14 C6 00 00 C6 C2 42 C9
-80 C6 24 C9 34 C2 40 C4 F8 D1 44 C2 1E C6 06 5B
-54 48 45 4E 5D 00 58 D1 4A C4 C8 D1 F8 C5 D0 C2
-58 C2 4A C4 9E D1 2A C2 44 C2 1E C6 06 5B 45 4C
-53 45 5D 00 58 D1 4A C4 E6 D1 F8 C5 D0 C2 58 C2
-4A C4 9C D1 2A C2 1E C6 04 5B 49 46 5D 00 58 D1
-4A C4 9E D1 3C C4 9C D1 F8 C5 1E C6 05 0D 0A 6B
-6F 20 D6 C5 8C C5 32 C9 3C C4 9E D1 8E D1 84 5B
-49 46 5D 00 0E 93 3E 4F BE 27 30 4D 0E D2 89 5B
-44 45 46 49 4E 45 44 5D 87 12 42 C9 80 C6 EE C6
-6A C2 2A C2 1E D2 8B 5B 55 4E 44 45 46 49 4E 45
-44 5D 87 12 42 C9 80 C6 EE C6 6A C2 00 C3 2A C2
-52 D2 3D 41 B2 4E 0E 18 A2 4E 0C 18 3E 4F 30 40
-56 CF 48 CE 06 4D 41 52 4B 45 52 00 B0 12 B8 CB
-BA 40 84 12 FC FF BA 40 50 D2 FE FF 9A 42 C8 1D
-00 00 28 83 8A 48 02 00 A2 52 C6 1D 30 40 00 CC
-1C 15 B0 12 2A C2 80 C6 EE C6 4A C4 A6 D2 AA C7
-40 C4 CE CA C0 D2 A8 D2 39 4E 39 80 86 12 08 24
-19 53 02 20 2E 4E 04 3C 2E 53 19 53 01 24 2E 82
-1B 17 30 41 3E 40 28 00 B0 12 90 D2 19 42 C6 1D
-A2 53 C6 1D 89 4E 00 00 3E 40 29 00 1C 15 12 12
-C4 1D 92 53 C4 1D B0 12 2A C2 80 C6 AA C7 40 C4
-FE D2 F4 D2 21 53 3E 90 10 00 7D 2D E1 2B 00 D3
-B2 41 C4 1D DD 3F 87 12 42 C9 74 C6 0E D3 0C 43
-1B 42 C6 1D A2 53 C6 1D 6A 4E 3E 4F 7A 90 23 00
-27 20 92 53 C4 1D B0 12 90 D2 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
-C6 1D A2 53 C6 1D 89 4E 00 00 3E 4F 3D 41 30 4D
-7A 90 26 00 07 20 3C 40 10 02 92 53 C4 1D B0 12
-90 D2 ED 3F 7A 90 40 00 16 20 3C 40 20 00 92 53
-C4 1D B0 12 DC D2 0C 20 3C 50 10 00 3E 40 2B 00
-B0 12 DC D2 92 92 C0 1D C4 1D 02 24 92 53 C4 1D
-8E 10 0C 5E DA 3F B0 12 DC D2 FA 23 3C 50 10 00
-B0 12 C4 D2 EF 3F 0C 43 1B 42 C6 1D A2 53 C6 1D
-87 12 42 C9 74 C6 D8 D3 FE 90 26 00 00 00 3E 40
-20 00 03 20 3C 50 82 00 C8 3F B0 12 DC D2 E1 23
-3C 50 80 00 B0 12 C4 D2 DC 3F D6 C4 04 52 45 54
-49 00 87 12 14 C6 00 13 B0 C8 2A C2 14 C6 2C 00
-06 D3 D0 D3 16 D4 09 4B 2E 4E 0E DC A4 3F FC CC
-03 4D 4F 56 84 12 0C D4 00 40 20 D4 05 4D 4F 56
-2E 42 84 12 0C D4 40 40 00 00 03 41 44 44 84 12
-0C D4 00 50 3A D4 05 41 44 44 2E 42 84 12 0C D4
-40 50 46 D4 04 41 44 44 43 00 84 12 0C D4 00 60
-54 D4 06 41 44 44 43 2E 42 00 84 12 0C D4 40 60
-FC D3 04 53 55 42 43 00 84 12 0C D4 00 70 72 D4
-06 53 55 42 43 2E 42 00 84 12 0C D4 40 70 80 D4
-03 53 55 42 84 12 0C D4 00 80 90 D4 05 53 55 42
-2E 42 84 12 0C D4 40 80 DE CC 03 43 4D 50 84 12
-0C D4 00 90 AA D4 05 43 4D 50 2E 42 84 12 0C D4
-40 90 CC CC 04 44 41 44 44 00 84 12 0C D4 00 A0
-C4 D4 06 44 41 44 44 2E 42 00 84 12 0C D4 40 A0
-B6 D4 03 42 49 54 84 12 0C D4 00 B0 E2 D4 05 42
-49 54 2E 42 84 12 0C D4 40 B0 EE D4 03 42 49 43
-84 12 0C D4 00 C0 FC D4 05 42 49 43 2E 42 84 12
-0C D4 40 C0 08 D5 03 42 49 53 84 12 0C D4 00 D0
-16 D5 05 42 49 53 2E 42 84 12 0C D4 40 D0 00 00
-03 58 4F 52 84 12 0C D4 00 E0 30 D5 05 58 4F 52
-2E 42 84 12 0C D4 40 E0 62 D4 03 41 4E 44 84 12
-0C D4 00 F0 4A D5 05 41 4E 44 2E 42 84 12 0C D4
-40 F0 42 C9 06 D3 68 D5 0A 4C 3C F0 70 00 8A 10
-3A F0 0F 00 0C DA 4F 3F 9C D4 03 52 52 43 84 12
-62 D5 00 10 7A D5 05 52 52 43 2E 42 84 12 62 D5
-40 10 86 D5 04 53 57 50 42 00 84 12 62 D5 80 10
-94 D5 03 52 52 41 84 12 62 D5 00 11 A2 D5 05 52
-52 41 2E 42 84 12 62 D5 40 11 AE D5 03 53 58 54
-84 12 62 D5 80 11 00 00 04 50 55 53 48 00 84 12
-62 D5 00 12 C8 D5 06 50 55 53 48 2E 42 00 84 12
-62 D5 40 12 22 D5 04 43 41 4C 4C 00 84 12 62 D5
-80 12 1A 53 0E 4A 87 12 34 C4 1E C6 0D 6F 75 74
-20 6F 66 20 62 6F 75 6E 64 73 4C CA 42 C9 74 C6
-12 D6 92 53 C4 1D 3E 40 2C 00 B0 12 2A C2 80 C6
-AA C7 40 C4 CE CA C6 D3 2A D6 0A 4E 3E 4F 1A 83
-E0 33 29 4E 59 0E 0A 28 08 4C 59 0A 01 28 0C 8A
-08 8A 38 90 10 00 D5 2F 5A 0E 94 3F 2A 92 D1 2F
-8A 10 5A 06 8F 3F BC D5 04 52 52 43 4D 00 84 12
-0C D6 50 00 58 D6 04 52 52 41 4D 00 84 12 0C D6
-50 01 66 D6 04 52 4C 41 4D 00 84 12 0C D6 50 02
-74 D6 04 52 52 55 4D 00 84 12 0C D6 50 03 D6 D5
-05 50 55 53 48 4D 84 12 0C D6 00 15 90 D6 04 50
-4F 50 4D 00 84 12 0C D6 00 17 82 D6 03 53 3E 3D
-85 12 00 38 AC D6 02 53 3C 00 85 12 00 34 9E D6
-03 30 3E 3D 85 12 00 30 C0 D6 02 30 3C 00 85 12
-00 30 00 00 02 55 3C 00 85 12 00 2C D4 D6 03 55
-3E 3D 85 12 00 28 CA D6 03 30 3C 3E 85 12 00 24
-E8 D6 02 30 3D 00 85 12 00 20 00 00 02 49 46 00
-1A 42 C6 1D 8A 4E 00 00 A2 53 C6 1D 0E 4A 30 4D
-DE D6 04 54 48 45 4E 00 1A 42 C6 1D 08 4E 3E 4F
-09 48 29 53 0A 89 0A 11 3A 90 00 02 63 2F 88 DA
-00 00 30 4D D2 D4 04 45 4C 53 45 00 1A 42 C6 1D
-BA 40 00 3C 00 00 A2 53 C6 1D 2F 83 8F 4A 00 00
-E3 3F 12 D7 05 55 4E 54 49 4C 3A 4F 08 4E 3E 4F
-19 42 C6 1D 2A 83 0A 89 0A 11 3A 90 00 FE 42 3B
-3A F0 FF 03 08 DA 89 48 00 00 A2 53 C6 1D 30 4D
-56 D5 05 41 47 41 49 4E 0A 4E 38 40 00 3C E7 3F
-00 00 05 57 48 49 4C 45 87 12 00 D7 76 C2 2A C2
-B6 D6 06 52 45 50 45 41 54 00 87 12 88 D7 18 D7
-2A C2 B4 D7 3D 41 08 4E 3E 4F 2A 48 B2 92 C4 1D
-CD 2F 98 42 C6 1D 00 00 30 4D E6 D5 03 42 57 31
-84 12 B2 D7 00 00 CC D7 03 42 57 32 84 12 B2 D7
-00 00 D8 D7 03 42 57 33 84 12 B2 D7 00 00 F0 D7
-3D 41 1A 42 C6 1D 28 4E B2 92 C4 1D 90 2B BA 4F
-00 00 A2 53 C6 1D 8E 4A 00 00 3E 4F 30 4D 00 00
-03 46 57 31 84 12 EE D7 00 00 10 D8 03 46 57 32
-84 12 EE D7 00 00 1C D8 03 46 57 33 84 12 EE D7
-00 00 00 00 05 3F 47 4F 54 4F 3E 90 00 30 07 24
-3E E0 00 04 3E B0 00 10 02 24 3E E0 00 08 87 12
-C0 CA DA C8 2A C2 28 D8 04 47 4F 54 4F 00 2F 83
-8F 4E 00 00 3E 40 00 3C F2 3F
+3B 49 3A 49 3D 15 87 12 74 C8 DC C8 B2 41 C4 1D
+B2 41 C2 1D B2 41 C0 1D 3D 41 30 4D 85 12 BE 1D
+00 00 04 51 55 49 54 00 82 43 08 18 31 40 E0 1C
+B2 40 00 1C 00 1C 82 43 BE 1D 87 12 2E C4 D4 C2
+70 C8 C4 C3 74 C8 8C C4 BC C4 2E C2 0C 73 74 61
+63 6B 20 65 6D 70 74 79 21 00 6E C9 24 C2 40 FF
+2A CC C4 C4 2E C2 0A 46 52 41 4D 20 66 75 6C 6C
+21 00 6E C9 48 C2 0C C9 0A C8 05 41 42 4F 52 54
+3F 40 80 1C D1 3F 4A C9 86 41 42 4F 52 54 22 00
+0D 12 87 12 AA C5 24 C2 6E C9 F8 C7 26 C5 8F 93
+02 00 03 20 2F 52 3E 4F 30 4D B0 12 96 CD B0 12
+06 C3 92 C3 DC 05 18 42 06 18 39 40 20 00 19 83
+FE 23 18 83 FA 23 92 B3 DC 05 F3 23 0D 12 87 12
+10 CD 24 C2 DE 1D 02 C3 D6 C3 2E C2 04 1B 5B 37
+6D 00 00 C4 7C C4 4C C2 C8 C9 2E C4 2E C2 05 6C
+69 6E 65 3A 00 C4 66 C5 00 C4 2E C2 04 1B 5B 30
+6D 00 00 C4 50 C9 00 00 83 5B 27 5D 0D 12 87 12
+F0 C9 24 C2 24 C2 F8 C7 F8 C7 26 C5 44 C6 01 27
+0D 12 87 12 70 C8 F2 C5 4A C6 4C C2 00 CA 26 C5
+AA C8 D2 C4 81 5C 92 42 C0 1D C4 1D 30 4D D8 C9
+81 5B 82 43 BE 1D 30 4D 04 CA 01 5D B2 43 BE 1D
+30 4D F2 C8 88 50 4F 53 54 50 4F 4E 45 00 0D 12
+87 12 70 C8 F2 C5 4A C6 7C C4 4C C2 00 CA BC C4
+4C C2 50 CA 24 C2 24 C2 F8 C7 F8 C7 24 C2 F8 C7
+F8 C7 26 C5 40 C5 09 49 4D 4D 45 44 49 41 54 45
+1A 42 B6 1D FA D0 80 00 00 00 30 4D 10 CA 01 3A
+30 12 B8 CA 92 B3 C6 1D A2 63 C6 1D 0D 12 87 12
+70 C8 F2 C5 86 CA 3D 41 08 4E 7A 4E 5A D3 5A 53
+0A 58 19 42 DA 1D 6E 4E 3E F0 1E 00 09 5E 3E 4F
+82 48 B6 1D 82 49 B8 1D 82 4A BA 1D 82 4F BC 1D
+2A 52 82 4A C6 1D 30 41 BA 40 0D 12 FC FF BA 40
+87 12 FE FF B2 43 BE 1D 30 4D 6E CA 07 3A 4E 4F
+4E 41 4D 45 30 12 B8 CA 2F 83 8F 4E 00 00 1E 42
+C6 1D 1E B3 0E 63 0A 4E 39 40 10 02 38 40 12 02
+D7 3F 82 9F BC 1D 09 20 18 42 B6 1D 19 42 B8 1D
+A8 49 FE FF 89 48 00 00 30 4D 0D 12 87 12 2E C2
+0F 73 74 61 63 6B 20 6D 69 73 6D 61 74 63 68 21
+7A C9 CC CA 81 3B 82 93 BE 1D 6D 27 0D 12 87 12
+24 C2 26 C5 F8 C7 F2 CA 12 CA 26 C5 5C C8 06 43
+52 45 41 54 45 00 B0 12 74 CA BA 40 85 12 FC FF
+8A 4A FE FF D5 3F C0 C8 05 44 4F 45 53 3E 1A 42
+BA 1D BA 40 84 12 00 00 8A 4D 02 00 3D 41 30 4D
+3E CB 04 43 4F 44 45 00 B0 12 74 CA A2 82 C6 1D
+0D 12 87 12 8A CC 64 CC 26 C5 72 CB 07 43 4F 44
+45 4E 4E 4D 30 12 7C CB 9F 3F 00 00 07 45 4E 44
+43 4F 44 45 0D 12 87 12 F2 CA A4 CC 26 C5 58 C9
+03 41 53 4D B2 40 68 CC DA 1D DE 3F 9C CB 06 45
+4E 44 41 53 4D 00 0D 12 87 12 A4 CB C2 CC 26 C5
+00 00 05 43 4F 4C 4F 4E 1A 42 C6 1D BA 40 0D 12
+00 00 BA 40 87 12 02 00 A2 52 C6 1D B2 43 BE 1D
+30 40 A4 CC 00 00 05 4C 4F 32 48 49 A2 83 C6 1D
+1A 42 C6 1D EE 3F 56 CA 85 48 49 32 4C 4F 0D 12
+87 12 2A CC 1E CC F8 C7 12 CA 80 CB 26 C5 2E 53
+30 4D 8C CB 85 42 45 47 49 4E 2F 83 8F 4E 00 00
+1E 42 C6 1D 30 4D 24 C2 CA 1D AE C4 26 C5 84 12
+36 CC B0 CB 5A CE 58 CB EE C9 08 CC 42 C4 20 C8
+D8 C5 34 CD 4E CD 62 C5 CE CD 00 00 E8 CF 1A CA
+AA C6 00 00 84 12 36 CC 1A D5 80 D5 CE D4 D0 D5
+94 D4 00 00 C4 D1 00 00 8A D4 3C D5 EC D4 2A D5
+D4 D2 00 00 00 00 EC D5 62 CC 3A 40 0C 00 39 40
+D6 1D 08 49 28 53 19 83 18 83 E8 49 00 00 1A 83
+FA 23 30 4D 3A 40 0E 00 38 40 CA 1D 09 48 29 53
+F8 49 00 00 18 53 1A 83 FB 23 30 4D 82 43 CC 1D
+30 4D 92 42 CA 1D DA 1D 30 4D 3E CC BC CC C2 CC
+D2 CC 3A 4E 82 4A C8 1D 2E 4E 82 4E C6 1D 3D 40
+10 00 09 4A 08 49 29 83 18 48 FE FF 0E 98 FC 2B
+89 48 00 00 1D 83 F6 23 2A 4A 0A 93 F0 23 3E 4F
+3D 41 30 4D 24 CA 09 50 57 52 5F 53 54 41 54 45
+84 12 CA CC 88 CC 08 D6 A6 C5 09 52 53 54 5F 53
+54 41 54 45 92 42 0E 18 14 CD 92 42 0C 18 16 CD
+EF 3F 06 CD 08 50 57 52 5F 48 45 52 45 00 92 42
+C8 1D 14 CD 92 42 C6 1D 16 CD 30 4D 1A CD 08 52
+53 54 5F 48 45 52 45 00 92 42 C8 1D 0E 18 92 42
+C6 1D 0C 18 EC 3F EC C5 04 57 49 50 45 00 39 40
+10 00 29 83 B9 43 80 FF FC 23 B2 40 04 C2 02 C2
+B2 40 D8 CD D6 CD B2 40 88 CC 0E 18 B2 40 08 D6
+0C 18 30 12 24 CD B2 40 C8 C3 C6 C3 B2 40 32 C4
+30 C4 B2 40 4A C4 48 C4 B2 40 18 00 0A 18 37 40
+26 C5 36 40 9C C4 35 40 FA C2 34 40 EC C2 B2 40
+0A 00 DC 1D B2 40 20 00 B4 1D 30 41 68 CD 04 57
+41 52 4D 00 30 40 D8 CD 3D 40 10 CE 92 C3 30 01
+1E 42 08 18 0E 93 13 24 D2 B3 01 02 02 20 3E E3
+1E 53 F2 D0 03 00 0D 02 92 D3 DA 05 3E 90 0A 00
+B6 27 3E 90 16 00 B3 2F 2E 93 82 27 8B 2F 30 4D
+2E C2 07 0D 0A 1B 5B 37 6D 23 00 C4 9C C5 2E C2
+19 46 61 73 74 46 6F 72 74 68 20 C2 A9 4A 2E 4D
+2E 54 68 6F 6F 72 65 6E 73 20 00 C4 24 C2 40 FF
+2A CC A6 C4 66 C5 2E C2 0A 62 79 74 65 73 20 66
+72 65 65 00 48 C2 C8 C9 24 CC 04 43 4F 4C 44 00
+92 B3 CA 05 FD 23 B2 40 04 A5 20 01 31 40 E0 1C
+92 D3 30 01 B2 40 88 5A 5C 01 B2 43 06 02 B2 40
+EF 7F 02 02 E2 D2 05 02 B2 43 26 02 B2 D0 08 FF
+22 02 F2 D3 26 03 F2 40 F0 00 22 03 F2 40 A5 00
+61 01 82 43 66 01 39 40 80 00 B2 40 33 00 64 01
+D2 43 61 01 92 D2 9E 01 08 18 38 40 59 14 18 83
+FE 23 19 83 FA 23 B2 D2 B0 01 92 C3 B0 01 F2 D0
+10 00 2A 03 F2 C0 40 00 A1 04 39 40 00 04 29 83
+89 43 00 1C FC 23 B0 12 0E C2 B2 40 81 00 C0 05
+92 42 02 18 C6 05 92 42 04 18 C8 05 92 C3 C0 05
+3F 40 80 1C 30 12 D4 CD 4F 3F 24 CB 86 5B 54 48
+45 4E 5D 00 30 4D 0C 4E 38 4F 3B 4F 39 4F 0E 4B
+0E 5C 10 24 1B 83 06 30 1C 83 04 30 19 53 F9 98
+FF FF F5 27 2D 4D 3E 4F 30 4D 2F 53 9F 83 00 00
+F9 23 2F 53 2D 53 F7 3F 0C CF 86 5B 45 4C 53 45
+5D 00 0D 12 87 12 24 C2 00 00 AA C4 70 C8 F2 C5
+62 C8 68 C4 4C C2 A4 CF 70 C4 2E C2 06 5B 54 48
+45 4E 5D 00 16 CF 7E CF 3A CF 5C CF 26 C5 70 C4
+2E C2 06 5B 45 4C 53 45 5D 00 16 CF 94 CF 3A CF
+5A CF 26 C5 2E C2 04 5B 49 46 5D 00 16 CF 5C CF
+48 C2 5A CF 22 C4 2E C2 05 0D 0A 6B 6F 20 00 C4
+D4 C2 C4 C2 48 C2 5C CF 4A CF 84 5B 49 46 5D 00
+0E 93 3E 4F C6 27 30 4D 2F 53 30 4D BA CF 89 5B
+44 45 46 49 4E 45 44 5D 0D 12 87 12 70 C8 F2 C5
+4A C6 C8 CF 26 C5 CE CF 8B 5B 55 4E 44 45 46 49
+4E 45 44 5D 0D 12 87 12 D8 CF FC CF 3D 41 30 40
+B6 C4 38 40 C0 1D 0A 4E 39 48 2E 48 09 5E 1E 52
+C4 1D 09 9E 03 24 7A 9E FC 27 1E 83 0A 4E 2A 88
+82 4A C4 1D 30 4D 1C 15 87 12 F2 C5 4A C6 42 C2
+3A D0 06 C7 4C C2 00 CA 54 D0 3C D0 39 4E 39 80
+86 12 08 24 19 53 02 20 2E 4E 04 3C 2E 53 19 53
+01 24 2E 82 1B 17 30 41 3E 40 28 00 B0 12 26 D0
+19 42 C6 1D A2 53 C6 1D 89 4E 00 00 3E 40 29 00
+1C 15 12 12 C4 1D 92 53 C4 1D 87 12 F2 C5 06 C7
+4C C2 90 D0 86 D0 21 53 3E 90 10 00 80 2D E2 2B
+92 D0 B2 41 C4 1D DE 3F 0D 12 87 12 70 C8 02 D0
+A2 D0 0C 43 1B 42 C6 1D A2 53 C6 1D 6A 4E 3E 4F
+7A 90 23 00 27 20 92 53 C4 1D B0 12 26 D0 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 C6 1D A2 53 C6 1D 89 4E 00 00 3E 4F
+3D 41 30 4D 7A 90 26 00 07 20 3C 40 10 02 92 53
+C4 1D B0 12 26 D0 ED 3F 7A 90 40 00 16 20 3C 40
+20 00 92 53 C4 1D B0 12 70 D0 0C 20 3C 50 10 00
+3E 40 2B 00 B0 12 70 D0 92 92 C0 1D C4 1D 02 24
+92 53 C4 1D 8E 10 0C 5E DA 3F B0 12 70 D0 FA 23
+3C 50 10 00 B0 12 58 D0 EF 3F 0C 43 1B 42 C6 1D
+A2 53 C6 1D 0D 12 87 12 70 C8 02 D0 6E D1 FE 90
+26 00 00 00 3E 40 20 00 03 20 3C 50 82 00 C7 3F
+B0 12 70 D0 E0 23 3C 50 80 00 B0 12 58 D0 DB 3F
+00 00 04 52 45 54 49 00 0D 12 87 12 24 C2 00 13
+F8 C7 26 C5 24 C2 2C 00 98 D0 64 D1 AE D1 09 4B
+2E 4E 0E DC A2 3F F6 CB 03 4D 4F 56 84 12 A4 D1
+00 40 B8 D1 05 4D 4F 56 2E 42 84 12 A4 D1 40 40
+00 00 03 41 44 44 84 12 A4 D1 00 50 D2 D1 05 41
+44 44 2E 42 84 12 A4 D1 40 50 DE D1 04 41 44 44
+43 00 84 12 A4 D1 00 60 EC D1 06 41 44 44 43 2E
+42 00 84 12 A4 D1 40 60 92 D1 04 53 55 42 43 00
+84 12 A4 D1 00 70 0A D2 06 53 55 42 43 2E 42 00
+84 12 A4 D1 40 70 18 D2 03 53 55 42 84 12 A4 D1
+00 80 28 D2 05 53 55 42 2E 42 84 12 A4 D1 40 80
+D2 CB 03 43 4D 50 84 12 A4 D1 00 90 42 D2 05 43
+4D 50 2E 42 84 12 A4 D1 40 90 BE CB 04 44 41 44
+44 00 84 12 A4 D1 00 A0 5C D2 06 44 41 44 44 2E
+42 00 84 12 A4 D1 40 A0 4E D2 03 42 49 54 84 12
+A4 D1 00 B0 7A D2 05 42 49 54 2E 42 84 12 A4 D1
+40 B0 86 D2 03 42 49 43 84 12 A4 D1 00 C0 94 D2
+05 42 49 43 2E 42 84 12 A4 D1 40 C0 A0 D2 03 42
+49 53 84 12 A4 D1 00 D0 AE D2 05 42 49 53 2E 42
+84 12 A4 D1 40 D0 00 00 03 58 4F 52 84 12 A4 D1
+00 E0 C8 D2 05 58 4F 52 2E 42 84 12 A4 D1 40 E0
+FA D1 03 41 4E 44 84 12 A4 D1 00 F0 E2 D2 05 41
+4E 44 2E 42 84 12 A4 D1 40 F0 70 C8 98 D0 00 D3
+0A 4C 3C F0 70 00 8A 10 3A F0 0F 00 0C DA 4F 3F
+34 D2 03 52 52 43 84 12 FA D2 00 10 12 D3 05 52
+52 43 2E 42 84 12 FA D2 40 10 1E D3 04 53 57 50
+42 00 84 12 FA D2 80 10 2C D3 03 52 52 41 84 12
+FA D2 00 11 3A D3 05 52 52 41 2E 42 84 12 FA D2
+40 11 46 D3 03 53 58 54 84 12 FA D2 80 11 00 00
+04 50 55 53 48 00 84 12 FA D2 00 12 60 D3 06 50
+55 53 48 2E 42 00 84 12 FA D2 40 12 BA D2 04 43
+41 4C 4C 00 84 12 FA D2 80 12 1A 53 0E 4A 0D 12
+87 12 9C C5 2E C2 0D 6F 75 74 20 6F 66 20 62 6F
+75 6E 64 73 7A C9 70 C8 02 D0 AC D3 92 53 C4 1D
+3E 40 2C 00 87 12 F2 C5 06 C7 4C C2 00 CA 5A D1
+C2 D3 0A 4E 3E 4F 1A 83 E0 33 29 4E 59 0E 0A 28
+08 4C 59 0A 01 28 0C 8A 08 8A 38 90 10 00 D5 2F
+5A 0E 94 3F 2A 92 D1 2F 8A 10 5A 06 8F 3F 54 D3
+04 52 52 43 4D 00 84 12 A6 D3 50 00 F0 D3 04 52
+52 41 4D 00 84 12 A6 D3 50 01 FE D3 04 52 4C 41
+4D 00 84 12 A6 D3 50 02 0C D4 04 52 52 55 4D 00
+84 12 A6 D3 50 03 6E D3 05 50 55 53 48 4D 84 12
+A6 D3 00 15 28 D4 04 50 4F 50 4D 00 84 12 A6 D3
+00 17 1A D4 03 53 3E 3D 85 12 00 38 44 D4 02 53
+3C 00 85 12 00 34 36 D4 03 30 3E 3D 85 12 00 30
+58 D4 02 30 3C 00 85 12 00 30 00 00 02 55 3C 00
+85 12 00 2C 6C D4 03 55 3E 3D 85 12 00 28 62 D4
+03 30 3C 3E 85 12 00 24 80 D4 02 30 3D 00 85 12
+00 20 00 00 02 49 46 00 1A 42 C6 1D 8A 4E 00 00
+A2 53 C6 1D 0E 4A 30 4D 76 D4 04 54 48 45 4E 00
+1A 42 C6 1D 08 4E 3E 4F 09 48 29 53 0A 89 0A 11
+3A 90 00 02 63 2F 88 DA 00 00 30 4D 6A D2 04 45
+4C 53 45 00 1A 42 C6 1D BA 40 00 3C 00 00 A2 53
+C6 1D 2F 83 8F 4A 00 00 E3 3F AA D4 05 55 4E 54
+49 4C 3A 4F 08 4E 3E 4F 19 42 C6 1D 2A 83 0A 89
+0A 11 3A 90 00 FE 42 3B 3A F0 FF 03 08 DA 89 48
+00 00 A2 53 C6 1D 30 4D EE D2 05 41 47 41 49 4E
+0A 4E 38 40 00 3C E7 3F 00 00 05 57 48 49 4C 45
+0D 12 87 12 98 D4 82 C4 26 C5 4E D4 06 52 45 50
+45 41 54 00 0D 12 87 12 20 D5 B0 D4 26 C5 50 D5
+3D 41 08 4E 3E 4F 2A 48 B2 92 C4 1D CB 2F 98 42
+C6 1D 00 00 30 4D 7E D3 03 42 57 31 84 12 4E D5
+00 00 68 D5 03 42 57 32 84 12 4E D5 00 00 74 D5
+03 42 57 33 84 12 4E D5 00 00 8C D5 3D 41 1A 42
+C6 1D 28 4E B2 92 C4 1D 8E 2B BA 4F 00 00 A2 53
+C6 1D 8E 4A 00 00 3E 4F 30 4D 00 00 03 46 57 31
+84 12 8A D5 00 00 AC D5 03 46 57 32 84 12 8A D5
+00 00 B8 D5 03 46 57 33 84 12 8A D5 00 00 C4 D5
+04 47 4F 54 4F 00 2F 83 8F 4E 00 00 3E 40 00 3C
+0D 12 87 12 F0 C9 18 C8 26 C5 00 00 05 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
 @FFFE
-9C D0
+6C CE
 q
index de84383..3cc4c18 100644 (file)
 @1800
-10 00 08 00 A1 F7 80 3E 05 00 18 00 B4 5B D0 50
-2D 01 6B B4 B6 46 C8 46
+10 00 08 00 A1 F7 80 3E 05 00 18 00 14 58 88 4E
+2E 01 6B B0 06 45 18 45 D4 4F
 @4400
-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 3A 41 0D 12 0D 4A
-30 4D 00 00 04 45 58 49 54 00 3D 41 30 4D 24 44
-03 44 55 50 2F 83 8F 4E 00 00 30 4D 00 00 04 32
-44 55 50 00 8F 4E FE FF AF 4F FC FF 2F 82 30 4D
-00 00 04 3F 44 55 50 00 0E 93 EC 23 30 4D 30 44
-04 44 52 4F 50 00 3E 4F 30 4D 2F 53 30 4D 3E 44
-04 53 57 41 50 00 2A 4F 8F 4E 00 00 0E 4A 30 4D
-52 44 02 3E 52 00 0E 12 3E 4F 30 4D 70 44 02 52
-3E 00 2F 83 8F 4E 00 00 3E 41 30 4D 60 44 05 44
-45 50 54 48 8F 4E FE FF 3E 40 80 1C 0E 8F 0E 11
-2F 83 30 4D 00 00 01 2D 3E 8F 3E E3 1E 53 30 4D
-00 00 02 31 2B 00 1E 53 30 4D C2 44 02 31 2D 00
-1E 83 30 4D 3E F3 06 34 BF E3 00 00 3E E3 9F 53
-00 00 0E 63 30 4D 00 00 01 40 2E 4E 30 4D E8 44
-01 21 BE 4F 00 00 3E 4F 30 4D CC 44 02 30 3D 00
-1E 83 0E 7E 30 4D FC 44 02 30 3C 00 0E 5E 0E 7E
-3E E3 30 4D 00 00 01 3D 3E 8F FA 27 0E F3 30 4D
-00 00 02 55 3C 00 3E 8F F9 2B 01 24 3E 43 30 4D
-16 45 02 3C 23 00 B2 40 B2 1D B2 1D 30 4D 0B 4E
+30 40 04 44 B0 12 06 45 12 D2 0A 18 F9 3F 39 40
+34 00 29 83 B9 40 6C 50 CC FF FB 23 B2 40 68 45
+F0 FF 30 41 2F 83 8F 4E 00 00 3E 4D 30 4D 2F 82
+8F 4E 02 00 7E 4D 8F 4D 00 00 0D 5E 1D B3 0D 63
+30 4D 0E 93 3E 4F 05 24 2D 4D 30 4D 0E 93 3E 4F
+FB 27 2D 53 30 4D 39 40 00 80 39 8F 08 4E 3E 4F
+08 59 19 15 30 4D 81 5E 00 00 3E 4F 32 B0 00 01
+EB 27 21 52 2D 53 30 4D 91 53 00 00 F7 3F 0B 4E
 1C 4F 02 00 2E 4F 0A 43 34 40 20 00 0E 93 04 20
 04 11 0E 4C 0C 43 09 43 0A 9B 01 28 0A 8B 09 69
 08 68 14 83 07 30 0C 5C 0E 6E 0A 6A F5 2B 0A 8B
-12 D3 F5 3F 34 40 00 44 8F 4A 02 00 8F 49 00 00
-0E 48 30 41 00 00 01 23 1B 42 DC 1D 2C 4F 2F 83
-B0 12 46 45 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 86 45 02 23 53 00 87 12 88 45 C0 45
-2D 83 09 93 E3 23 0E 93 E1 23 3D 41 30 4D B6 45
-02 23 3E 00 9F 42 B2 1D 00 00 3E 40 B2 1D 2E 8F
-30 4D 00 00 04 48 4F 4C 44 00 0A 4E 3E 4F DB 3F
-8E 44 04 53 49 47 4E 00 0E 93 3E 4F 3A 40 2D 00
-D2 33 30 4D 87 12 36 45 34 44 86 44 D4 44 BA 45
-92 44 F8 45 D4 45 D6 47 42 4B 82 47 2A 44 22 45
-02 55 2E 00 08 43 2F 83 8F 4E 00 00 0E 48 EA 3F
-00 00 01 2E 0E 93 F6 37 38 43 F5 3F 2D 4D 30 4D
-0E 93 3E 4F FB 27 2D 53 30 4D 0E 93 3E 4F F6 23
-2D 53 30 4D 39 40 00 80 39 8F 08 4E 3E 4F 08 59
-19 15 30 4D 81 5E 00 00 3E 4F 32 B0 00 01 E6 27
-2D 53 21 52 30 4D 91 53 00 00 F7 3F E4 45 01 49
-2F 83 8F 4E 00 00 2E 41 1E 81 02 00 30 4D 00 00
-03 4B 45 59 30 40 98 46 18 42 CC 05 2F 83 8F 4E
-00 00 B0 12 B6 46 92 B3 DC 05 FD 27 1E 42 CC 05
-B0 12 C8 46 30 4D A2 B3 DC 05 FD 27 B2 40 11 00
-CE 05 E2 C3 23 02 30 41 B2 40 13 00 CE 05 E2 D3
-23 02 30 41 00 00 05 53 4C 45 45 50 30 40 E0 46
-B0 12 B6 46 12 D2 0A 18 F9 3F F0 44 06 41 43 43
-45 50 54 00 3C 40 64 47 3B 40 2E 47 2D 15 0A 4E
-2E 4F 0A 5E 3B 40 0D 00 3C 40 20 00 3D 40 58 47
-92 B3 DC 05 05 24 18 42 CC 05 38 90 0A 00 CB 23
-21 53 3D 15 DB 3F 21 52 3A 17 58 42 CC 05 48 9C
-08 2C 48 9B C9 27 78 92 11 20 2E 9F 0F 24 1E 83
-05 3C 0E 9A 03 24 CE 48 00 00 1E 53 A2 B3 DC 05
-FD 27 82 48 CE 05 30 4D 5A 47 2D 83 92 B3 DC 05
-E4 23 FC 27 82 93 DE 1D 02 24 92 53 DE 1D 3E 8F
-3D 41 B2 40 18 00 0A 18 30 4D 9E 44 04 45 4D 49
-54 00 30 40 86 47 08 4E 3E 4F E0 3F 3F 80 06 00
-8F 4E 04 00 3E 40 54 00 BF 40 3C 1D 00 00 AF 4F
-02 00 A8 3F 7C 47 04 45 43 48 4F 00 B2 40 82 48
-52 47 82 43 DE 1D 30 4D 32 46 06 4E 4F 45 43 48
-4F 00 B2 40 30 4D 52 47 92 43 DE 1D 30 4D 20 46
-04 54 59 50 45 00 0E 93 0F 24 1E 15 3D 40 EC 47
-28 4F 7E 48 8F 48 00 00 2F 83 CB 3F EE 47 2D 83
-91 83 02 00 F5 23 1D 17 2F 53 3E 4F 30 4D D0 45
-02 43 52 00 30 40 08 48 87 12 1E 48 02 0D 0A 00
-D6 47 2A 44 2F 83 8F 4E 00 00 3E 4D 30 4D 2F 82
-8F 4E 02 00 7E 4D 8F 4D 00 00 0D 5E 1D B3 0D 63
-30 4D F2 45 82 53 22 00 82 43 B4 1D 87 12 14 48
-1E 48 B0 4A 14 48 22 00 80 48 4C 48 B2 40 20 00
-B4 1D 6E 4E 1E 53 1E B3 82 6E C6 1D 3D 41 3E 4F
-30 4D BA 47 82 2E 22 00 87 12 38 48 14 48 D6 47
-B0 4A 2A 44 48 43 05 3C 00 00 04 57 4F 52 44 00
-48 4E 19 42 C0 1D 1A 42 C2 1D 09 5A 1A 52 C4 1D
-09 9A 03 24 7E 9A FC 27 1A 83 4E F8 06 20 0E 4A
-1A 82 C2 1D 82 4A C4 1D 30 4D 18 42 C6 1D 3B 40
-60 00 C8 4C 00 00 09 9A 0C 24 7C 4A 4E 9C 09 24
-18 53 4B 9C F6 2F 7C 90 7B 00 F3 2F 5C 82 B4 1D
-F0 3F 1A 82 C2 1D 82 4A C4 1D 1E 42 C6 1D 08 8E
-CE 48 00 00 30 4D 00 00 04 46 49 4E 44 00 2F 83
-0C 4E 65 4C 74 40 80 00 3B 40 CA 1D 3E 4B 0E 93
-1E 24 58 4C 01 00 78 F0 1E 00 0E 58 2E 53 1E 4E
-FE FF 0E 93 F3 27 09 4E 78 49 48 C4 48 95 F7 23
-0A 4C FA 99 01 00 F3 23 1A 53 58 83 FA 23 19 B3
-09 63 0C 49 6A 4E 1E 43 4A 93 01 30 2E 83 8F 4C
-00 00 35 40 0E 44 34 40 00 44 30 4D 82 44 07 3E
-4E 55 4D 42 45 52 3C 4F 38 4F 29 4F 2F 82 1B 42
-DC 1D 6A 4C 7A 80 30 00 7A 90 0A 00 05 28 7A 80
-07 00 7A 90 0A 00 12 28 0A 9B 22 C3 0F 2C 82 49
-D0 04 82 48 D2 04 82 4B C8 04 19 42 E4 04 18 42
-E6 04 09 5A 08 63 1C 53 1E 83 E3 23 8F 4C 00 00
-8F 48 02 00 8F 49 04 00 30 4D 32 C0 00 02 1B 42
-DC 1D 0C 43 2D 15 3D 40 F4 49 09 43 08 43 3F 82
-8F 4E 06 00 0C 4E 7E 4C 6A 4C 7A 90 2D 00 04 28
-C9 23 B1 43 02 00 DF 3F 2B 43 7A 80 25 00 07 24
-3B 52 6A 53 04 24 3B 40 10 00 5A 83 BA 23 1C 53
-1E 83 EA 3F F6 49 2F 24 2D 83 7A 90 28 00 CB 27
-32 D0 00 02 7A 90 F7 00 C6 27 7A 90 F5 00 23 20
-0A 4E 09 43 8F 49 02 00 5A 83 09 4A 09 5C 69 49
-79 80 30 00 79 90 0A 00 05 28 79 80 07 00 79 90
-0A 00 0A 28 09 9B 08 2C 8F 49 00 00 0E 4B 2C 15
-B0 12 3E 45 2A 17 E6 3F 9F 4F 04 00 02 00 AF 4F
-04 00 0E 4A 4E 93 2B 17 0E 4C 82 4B DC 1D 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 7E 46 04 48 45 52 45 00
-2F 83 8F 4E 00 00 1E 42 C6 1D 30 4D B6 44 01 2C
-1A 42 C6 1D 8A 4E 00 00 A2 53 C6 1D 3E 4F 30 4D
-EC 46 05 41 4C 4C 4F 54 82 5E C6 1D 3E 4F 30 4D
-A6 47 07 45 58 45 43 55 54 45 0A 4E 3E 4F 00 4A
-AE 4A 87 4C 49 54 45 52 41 4C 82 93 BE 1D 0C 24
-1A 42 C6 1D A2 52 C6 1D BA 40 14 48 00 00 8A 4E
-02 00 3E 4F 32 B0 00 02 32 C0 00 02 06 24 19 4A
-02 00 8A 4E 02 00 0E 49 EB 3F 30 4D 00 48 05 43
-4F 55 4E 54 2F 83 1E 53 8F 4E 00 00 5E 4E FF FF
-30 4D 82 4E C0 1D B2 4F C2 1D 3E 4F 82 43 C4 1D
-30 4D 85 12 20 00 87 12 32 4B 42 4B 80 48 50 4B
-3D 40 58 4B CC 22 82 3E 5A 4B 0A 4E 3E 4F 3D 40
-70 4B 23 27 3D 40 4A 4B 1A E2 BE 1D A1 27 B5 23
-72 4B 3E 4F 3D 40 4A 4B B8 23 DE 53 00 00 68 4E
-08 5E F8 40 3F 00 00 00 3D 40 26 4E CB 3F D2 4A
+12 D3 F5 3F 34 40 EC 44 8F 4A 02 00 8F 49 00 00
+0E 48 30 41 82 4E C0 1D B2 4F C2 1D 3E 4F 82 43
+C4 1D 30 4D 3F 80 06 00 8F 4E 04 00 3E 40 54 00
+BF 40 3C 1D 00 00 AF 4F 02 00 24 3C 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 A2 B3 DC 05 FD 27 B2 40 11 00
+CE 05 E2 C3 23 02 30 41 A2 B3 DC 05 FD 27 B2 40
+13 00 CE 05 E2 D3 23 02 30 41 00 00 06 41 43 43
+45 50 54 00 3C 40 A6 45 3B 40 70 45 2D 15 0A 4E
+2E 4F 0A 5E 3B 40 0D 00 3C 40 20 00 3D 40 9A 45
+92 B3 DC 05 05 24 18 42 CC 05 38 90 0A 00 D3 23
+21 53 3D 15 30 40 00 44 21 52 3A 17 58 42 CC 05
+48 9C 08 2C 48 9B D0 27 78 92 11 20 2E 9F 0F 24
+1E 83 05 3C 0E 9A 03 24 CE 48 00 00 1E 53 A2 B3
+DC 05 FD 27 82 48 CE 05 30 4D 9C 45 2D 83 92 B3
+DC 05 E4 23 FC 27 82 93 DE 1D 02 24 92 53 DE 1D
+3E 8F 3D 41 B2 40 18 00 0A 18 30 4D 00 00 04 45
+4D 49 54 00 30 40 C8 45 08 4E 3E 4F E0 3F BE 45
+04 45 43 48 4F 00 B2 40 82 48 94 45 82 43 DE 1D
+30 4D 00 00 06 4E 4F 45 43 48 4F 00 B2 40 30 4D
+94 45 92 43 DE 1D 30 4D 00 00 04 54 59 50 45 00
+0E 93 0F 24 1E 15 3D 40 16 46 28 4F 7E 48 8F 48
+00 00 2F 83 D7 3F 18 46 2D 83 91 83 02 00 F5 23
+1D 17 2F 53 3E 4F 30 4D 00 00 02 43 52 00 30 40
+32 46 0D 12 87 12 2E 44 02 0D 0A 00 00 46 26 47
+00 00 03 4B 45 59 30 40 4A 46 18 42 CC 05 2F 83
+8F 4E 00 00 B0 12 06 45 92 B3 DC 05 FD 27 1E 42
+CC 05 B0 12 18 45 30 4D 2F 83 8F 4E 00 00 30 4D
+8F 4E FE FF AF 4F FC FF 2F 82 30 4D 0E 93 F4 23
+30 4D 2A 4F 8F 4E 00 00 0E 4A 30 4D 8F 4E FE FF
+3E 40 80 1C 0E 8F 0E 11 2F 83 30 4D 2F 83 8F 4E
+00 00 3E 41 30 4D 3E 8F 3E E3 1E 53 30 4D BE 4F
+00 00 3E 4F 30 4D 1E 83 0E 7E 30 4D 0E 5E 0E 7E
+3E E3 30 4D 3E 8F 03 24 3E 43 01 2C 0E F3 30 4D
+00 00 02 3C 23 00 B2 40 B2 1D B2 1D 30 4D 2A 46
+01 23 1B 42 DC 1D 2C 4F 2F 83 B0 12 86 44 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 E0 46
+02 23 53 00 0D 12 87 12 E2 46 1C 47 2D 83 09 93
+E2 23 0E 93 E0 23 3D 41 30 4D 10 47 02 23 3E 00
+9F 42 B2 1D 00 00 3E 40 B2 1D 2E 8F 30 4D 00 00
+04 48 4F 4C 44 00 4A 4E 3E 4F DA 3F 00 00 04 53
+49 47 4E 00 0E 93 3E 4F 7A 40 2D 00 D1 33 30 4D
+FA 45 02 55 2E 00 08 43 2F 83 8F 4E 00 00 0E 48
+0D 12 0E 12 3E F3 06 34 BF E3 00 00 3E E3 9F 53
+00 00 0E 63 87 12 D6 46 14 47 9C 46 54 47 30 47
+00 46 70 4A C4 45 26 47 E4 45 01 2E 0E 93 E3 37
+38 43 E2 3F 4E 47 82 53 22 00 82 43 B4 1D 0D 12
+87 12 24 44 2E 44 F8 49 24 44 22 00 F2 47 C0 47
+B2 40 20 00 B4 1D 6E 4E 1E 53 1E B3 82 6E C6 1D
+3D 41 3E 4F 30 4D 9A 47 82 2E 22 00 0D 12 87 12
+AA 47 24 44 00 46 F8 49 26 47 00 00 04 57 4F 52
+44 00 3C 40 C0 1D 39 4C 3A 4C 09 5A 3A 5C 28 4C
+09 9A 15 24 7E 9A FC 27 1A 83 3B 40 60 00 C8 4C
+00 00 09 9A 0C 24 7C 4A 4E 9C 09 24 18 53 4B 9C
+F6 2F 7C 90 7B 00 F3 2F 5C 82 B4 1D F0 3F 1A 82
+C2 1D 82 4A C4 1D 1E 42 C6 1D 08 8E CE 48 00 00
+30 4D 00 00 04 46 49 4E 44 00 2F 83 0C 4E 65 4C
+74 40 80 00 3B 40 CA 1D 3E 4B 0E 93 1E 24 58 4C
+01 00 78 F0 1E 00 0E 58 2E 53 1E 4E FE FF 0E 93
+F3 27 09 4E 78 49 48 C4 48 95 F7 23 0A 4C FA 99
+01 00 F3 23 1A 53 58 83 FA 23 19 B3 09 63 0C 49
+6A 4E 1E 43 4A 93 01 30 2E 83 8F 4C 00 00 35 40
+FA 44 34 40 EC 44 30 4D 00 00 07 3E 4E 55 4D 42
+45 52 3C 4F 38 4F 29 4F 2F 82 1B 42 DC 1D 6A 4C
+7A 80 30 00 7A 90 0A 00 05 28 7A 80 07 00 7A 90
+0A 00 12 28 0A 9B 22 C3 0F 2C 82 49 D0 04 82 48
+D2 04 82 4B C8 04 19 42 E4 04 18 42 E6 04 09 5A
+08 63 1C 53 1E 83 E3 23 8F 4C 00 00 8F 48 02 00
+8F 49 04 00 30 4D 32 C0 00 02 1B 42 DC 1D 0C 43
+2D 15 3D 40 50 49 09 43 08 43 3F 82 8F 4E 06 00
+0C 4E 7E 4C 6A 4C 7A 90 2D 00 04 28 C9 23 B1 43
+02 00 0B 3C 2B 43 7A 80 25 00 07 24 3B 52 6A 53
+04 24 3B 40 10 00 5A 83 BA 23 1C 53 1E 83 EA 3F
+52 49 2F 24 2D 83 7A 90 28 00 CB 27 32 D0 00 02
+7A 90 F7 00 C6 27 7A 90 F5 00 23 20 0A 4E 09 43
+8F 49 02 00 5A 83 09 4A 09 5C 69 49 79 80 30 00
+79 90 0A 00 05 28 79 80 07 00 79 90 0A 00 0A 28
+09 9B 08 2C 8F 49 00 00 0E 4B 2C 15 B0 12 7E 44
+2A 17 E6 3F 9F 4F 04 00 02 00 AF 4F 04 00 0E 4A
+4E 93 2B 17 0E 4C 82 4B DC 1D 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 00 00 01 2C 1A 42 C6 1D 8A 4E 00 00
+A2 53 C6 1D 3E 4F 30 4D 2C 45 05 41 4C 4C 4F 54
+82 5E C6 1D 3E 4F 30 4D 0A 4E 3E 4F 00 4A F6 49
+87 4C 49 54 45 52 41 4C 82 93 BE 1D 0C 24 1A 42
+C6 1D A2 52 C6 1D BA 40 24 44 00 00 8A 4E 02 00
+3E 4F 32 B0 00 02 32 C0 00 02 06 24 19 4A 02 00
+8A 4E 02 00 0E 49 EB 3F 30 4D 2C 47 05 43 4F 55
+4E 54 2F 83 1E 53 8F 4E 00 00 5E 4E FF FF 30 4D
+85 12 20 00 0D 12 87 12 C4 44 70 4A F2 47 80 4A
+3D 40 88 4A E2 22 A4 26 8A 4A 0A 4E 3E 4F 3D 40
+A0 4A 39 27 3D 40 7A 4A 1A E2 BE 1D BD 23 AC 27
+A2 4A 3E 4F 3D 40 7A 4A BF 23 DE 53 00 00 68 4E
+08 5E F8 40 3F 00 00 00 3D 40 20 4D D2 3F D0 45
 08 45 56 41 4C 55 41 54 45 00 39 40 C0 1D 3C 49
-3B 49 3A 49 3D 15 B0 12 2A 44 46 4B AE 4B B2 41
-C4 1D B2 41 C2 1D B2 41 C0 1D 3D 41 30 4D 85 12
-BE 1D 08 45 04 51 55 49 54 00 82 43 08 18 31 40
-E0 1C B2 40 00 1C 00 1C 82 43 BE 1D B0 12 2A 44
-04 48 8C 47 42 4B 82 47 46 4B A4 44 0C 45 1E 48
-0C 73 74 61 63 6B 20 65 6D 70 74 79 21 00 40 4C
-14 48 30 FF A0 4A 26 45 1E 48 0A 46 52 41 4D 20
-66 75 6C 6C 21 00 40 4C 3C 46 E0 4B C2 4A 05 41
-42 4F 52 54 3F 40 80 1C D0 3F 1E 4C 86 41 42 4F
-52 54 22 00 87 12 38 48 14 48 40 4C B0 4A 2A 44
-8F 93 02 00 03 20 2F 52 3E 4F 30 4D B0 12 C8 51
-B0 12 B6 46 92 C3 DC 05 38 40 A0 AA 39 42 03 43
-19 83 FD 23 18 83 FA 23 92 B3 DC 05 F3 23 87 12
-42 51 14 48 DE 1D EA 44 AC 47 1E 48 04 1B 5B 37
-6D 00 D6 47 58 44 40 46 9A 4C 04 48 1E 48 05 6C
-69 6E 65 3A D6 47 D0 44 24 46 D6 47 1E 48 04 1B
-5B 30 6D 00 D6 47 24 4C 00 00 83 5B 27 5D 87 12
-C0 4C 14 48 14 48 B0 4A B0 4A 2A 44 E8 48 01 27
-87 12 42 4B 80 48 EE 48 40 46 CE 4C 2A 44 7A 4B
-32 45 81 5C 92 42 C0 1D C4 1D 30 4D AA 4C 81 5B
-82 43 BE 1D 30 4D D2 4C 01 5D B2 43 BE 1D 30 4D
-BE 4F 02 00 3E 4F 30 4D 9A 4A 82 49 53 00 87 12
-BE 4B EA 44 40 46 12 4D AE 4C 14 48 F0 4C B0 4A
-2A 44 C0 4C F0 4C 2A 44 FA 4C 09 49 4D 4D 45 44
-49 41 54 45 1A 42 B6 1D FA D0 80 00 00 00 30 4D
-C4 4B 88 50 4F 53 54 50 4F 4E 45 00 87 12 42 4B
-80 48 EE 48 58 44 40 46 CE 4C 0C 45 40 46 5C 4D
-14 48 14 48 B0 4A B0 4A 14 48 B0 4A B0 4A 2A 44
-DE 4C 81 3B 82 93 BE 1D B5 27 87 12 14 48 2A 44
-B0 4A FA 4D E0 4C 2A 44 62 4D 07 3A 4E 4F 4E 41
-4D 45 30 12 A0 4D 2F 83 8F 4E 00 00 1E 42 C6 1D
-1E B3 0E 63 0A 4E 39 40 00 02 38 40 02 02 21 3C
-BA 40 87 12 FC FF A2 83 C6 1D B2 43 BE 1D 30 4D
-7A 4D 01 3A 30 12 A0 4D 92 B3 C6 1D A2 63 C6 1D
-87 12 42 4B 80 48 C8 4D 3D 41 08 4E 7A 4E 5A D3
-5A 53 0A 58 19 42 DA 1D 6E 4E 3E F0 1E 00 09 5E
-3E 4F 82 48 B6 1D 82 49 B8 1D 82 4A BA 1D 82 4F
-BC 1D 2A 52 82 4A C6 1D 30 41 82 9F BC 1D 09 20
-18 42 B6 1D 19 42 B8 1D A8 49 FE FF 89 48 00 00
-30 4D 87 12 1E 48 0F 73 74 61 63 6B 20 6D 69 73
-6D 61 74 63 68 21 4C 4C 90 4B 05 44 45 46 45 52
-B0 12 B8 4D BA 40 30 40 FC FF BA 40 AE 4D FE FF
-E3 3F 1E 4B 06 43 52 45 41 54 45 00 B0 12 B8 4D
-BA 40 85 12 FC FF 8A 4A FE FF D6 3F 2A 4E 05 44
-4F 45 53 3E 1A 42 BA 1D BA 40 84 12 00 00 8A 4D
-02 00 3D 41 30 4D 4E 49 05 3E 42 4F 44 59 2E 52
-30 4D 44 4E 04 43 4F 44 45 00 B0 12 B8 4D A2 82
-C6 1D 87 12 D2 50 AC 50 2A 44 84 4E 07 43 4F 44
-45 4E 4E 4D B0 12 86 4D F2 3F 00 00 07 45 4E 44
-43 4F 44 45 87 12 E0 50 FA 4D 2A 44 2C 4C 03 41
-53 4D B2 40 B0 50 DA 1D E0 3F AC 4E 06 45 4E 44
-41 53 4D 00 87 12 B4 4E F4 50 2A 44 00 00 05 43
-4F 4C 4F 4E 1A 42 C6 1D BA 40 87 12 00 00 A2 53
-C6 1D B2 43 BE 1D 30 40 E0 50 00 00 05 4C 4F 32
-48 49 1A 42 C6 1D BA 40 B0 12 00 00 BA 40 2A 44
-02 00 A2 52 C6 1D ED 3F 1A 4D 85 48 49 32 4C 4F
-87 12 A0 4A 4A 4F B0 4A E0 4C D2 50 AC 50 2A 44
-1A 4F 82 49 46 00 2F 83 8F 4E 00 00 1E 42 C6 1D
-A2 52 C6 1D BE 40 40 46 00 00 2E 53 30 4D 5E 4E
-84 45 4C 53 45 00 A2 52 C6 1D 1A 42 C6 1D BA 40
-3C 46 FC FF 8E 4A 00 00 2A 83 0E 4A 30 4D D0 47
-84 54 48 45 4E 00 9E 42 C6 1D 00 00 3E 4F 30 4D
-9C 4E 85 42 45 47 49 4E 30 40 A0 4A 70 4F 85 55
-4E 54 49 4C 39 40 40 46 A2 52 C6 1D 1A 42 C6 1D
-8A 49 FC FF 8A 4E FE FF 3E 4F 30 4D BE 4E 85 41
-47 41 49 4E 39 40 3C 46 EF 3F 7A 48 85 57 48 49
-4C 45 87 12 36 4F 76 44 2A 44 34 48 86 52 45 50
-45 41 54 00 87 12 B4 4F 76 4F 2A 44 50 4F 82 44
-4F 00 2F 83 8F 4E 00 00 A2 53 C6 1D 1E 42 C6 1D
-BE 40 54 46 FE FF A2 53 00 1C 1A 42 00 1C 8A 43
-00 00 30 4D E2 4A 84 4C 4F 4F 50 00 39 40 76 46
-A2 52 C6 1D 1A 42 C6 1D 8A 49 FC FF 8A 4E FE FF
-1E 42 00 1C A2 83 00 1C 2E 4E 0E 93 03 24 8E 4A
-00 00 F6 3F 3E 4F 30 4D 90 46 85 2B 4C 4F 4F 50
-39 40 64 46 E5 3F 06 50 04 4D 4F 56 45 00 0A 4E
-38 4F 39 4F 3E 4F 0A 93 11 24 08 99 0F 24 06 2C
-F8 49 00 00 18 53 1A 83 FB 23 30 4D 08 5A 09 5A
-19 83 18 83 E8 49 00 00 1A 83 FA 23 30 4D 14 48
-CA 1D F2 44 2A 44 84 12 7E 50 AE 4F 5C 53 DE 4F
-BE 4C 32 4F 3A 50 70 54 64 48 66 51 80 51 8E 4F
-00 52 00 00 42 54 E8 4C 78 4E 00 00 84 12 7E 50
-9A 5B 8C 5B 42 59 64 5A 08 59 00 00 7E 5B 00 00
-FE 58 A8 5B 60 59 9E 59 48 57 00 00 00 00 40 5A
-AA 50 3A 40 0C 00 39 40 CA 1D 38 40 CC 1D C6 3F
-3A 40 0E 00 39 40 CC 1D 38 40 CA 1D B9 3F 82 43
-CC 1D 30 4D 92 42 CA 1D DA 1D 30 4D 86 50 EE 50
-F4 50 04 51 3A 4E 82 4A C8 1D 2E 4E 82 4E C6 1D
-3D 40 10 00 09 4A 08 49 29 83 18 48 FE FF 0E 98
-FC 2B 89 48 00 00 1D 83 F6 23 2A 4A 0A 93 F0 23
-3E 4F 3D 41 30 4D 32 4D 09 50 57 52 5F 53 54 41
-54 45 84 12 FC 50 D0 50 B4 5B CC 4F 09 52 53 54
-5F 53 54 41 54 45 92 42 0E 18 46 51 92 42 0C 18
-48 51 EF 3F 38 51 08 50 57 52 5F 48 45 52 45 00
-92 42 C8 1D 46 51 92 42 C6 1D 48 51 30 4D 4C 51
-08 52 53 54 5F 48 45 52 45 00 92 42 C8 1D 0E 18
-92 42 C6 1D 0C 18 EC 3F BC 4F 04 57 49 50 45 00
-39 40 10 00 29 83 B9 43 80 FF FC 23 B2 40 E0 46
-DE 46 B2 40 0A 52 08 52 B2 40 D0 50 0E 18 B2 40
-B4 5B 0C 18 30 12 56 51 B2 40 86 47 84 47 B2 40
-08 48 06 48 B2 40 98 46 96 46 B2 40 18 00 0A 18
-37 40 1A 44 36 40 92 44 35 40 0E 44 34 40 00 44
-B2 40 0A 00 DC 1D B2 40 20 00 B4 1D 30 41 9A 51
-04 57 41 52 4D 00 30 40 0A 52 3D 40 3E 52 92 C3
-30 01 1E 42 08 18 0E 93 11 24 D2 B3 01 02 02 20
-3E E3 1E 53 F2 D0 03 00 0D 02 3E 90 0A 00 B8 27
-3E 90 16 00 B5 2F 2E 93 84 27 8D 2F 30 4D 1E 48
-06 0D 1B 5B 37 6D 23 00 D6 47 34 46 1E 48 19 46
-61 73 74 46 6F 72 74 68 20 C2 A9 4A 2E 4D 2E 54
-68 6F 6F 72 65 6E 73 20 D6 47 14 48 30 FF A0 4A
-B8 44 24 46 1E 48 0A 62 79 74 65 73 20 66 72 65
-65 00 3C 46 9A 4C 82 4F 04 43 4F 4C 44 00 92 B3
-CA 05 FD 23 B2 40 04 A5 20 01 3E 52 B2 40 88 5A
-5C 01 B2 40 FE FF 02 02 B2 D3 06 02 B2 D3 26 02
-B2 40 FF BF 22 02 E2 D3 25 02 F2 43 22 03 F2 D3
-26 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 39 40 00 01 B2 40 33 00 64 01 D2 43 61 01
-92 D2 9E 01 08 18 38 40 59 14 18 83 FE 23 19 83
-FA 23 B2 D2 B0 01 F2 D0 10 00 2A 03 F2 C0 40 00
-A1 04 39 40 00 08 29 83 89 43 00 1C FC 23 39 40
-34 00 29 83 B9 40 9C 52 CC FF FB 23 B2 40 26 47
-F0 FF B2 40 81 00 C0 05 92 42 02 18 C6 05 92 42
-04 18 C8 05 92 C3 C0 05 92 D3 DA 05 3F 40 80 1C
-31 40 E0 1C 30 12 06 52 40 3F 88 52 07 43 4F 4D
-50 41 52 45 0C 4E 38 4F 3B 4F 39 4F 0E 4B 0E 5C
-0C 24 1B 83 07 30 1C 83 07 30 19 53 F9 98 FF FF
-F5 27 02 2C 3E 43 30 4D 1E 43 30 4D B2 4D 86 5B
-54 48 45 4E 5D 00 30 4D 8E 53 86 5B 45 4C 53 45
-5D 00 87 12 14 48 00 00 C6 44 42 4B 80 48 24 4B
-34 44 40 46 04 54 44 44 1E 48 06 5B 54 48 45 4E
-5D 00 64 53 4A 46 D4 53 F8 47 D0 44 58 44 4A 46
-AA 53 2A 44 44 44 1E 48 06 5B 45 4C 53 45 5D 00
-64 53 4A 46 F2 53 F8 47 D0 44 58 44 4A 46 A8 53
-2A 44 1E 48 04 5B 49 46 5D 00 64 53 4A 46 AA 53
-3C 46 A8 53 F8 47 1E 48 05 0D 0A 6B 6F 20 D6 47
-8C 47 32 4B 3C 46 AA 53 9A 53 84 5B 49 46 5D 00
-0E 93 3E 4F BE 27 30 4D 1A 54 89 5B 44 45 46 49
-4E 45 44 5D 87 12 42 4B 80 48 EE 48 6A 44 2A 44
-2A 54 8B 5B 55 4E 44 45 46 49 4E 45 44 5D 87 12
-42 4B 80 48 EE 48 6A 44 00 45 2A 44 5E 54 3D 41
-B2 4E 0E 18 A2 4E 0C 18 3E 4F 30 40 56 51 48 50
-06 4D 41 52 4B 45 52 00 B0 12 B8 4D BA 40 84 12
-FC FF BA 40 5C 54 FE FF 9A 42 C8 1D 00 00 28 83
-8A 48 02 00 A2 52 C6 1D 30 40 00 4E 1C 15 B0 12
-2A 44 80 48 EE 48 4A 46 B2 54 AA 49 40 46 CE 4C
-CC 54 B4 54 39 4E 39 80 86 12 08 24 19 53 02 20
-2E 4E 04 3C 2E 53 19 53 01 24 2E 82 1B 17 30 41
-3E 40 28 00 B0 12 9C 54 19 42 C6 1D A2 53 C6 1D
-89 4E 00 00 3E 40 29 00 1C 15 12 12 C4 1D 92 53
-C4 1D B0 12 2A 44 80 48 AA 49 40 46 0A 55 00 55
-21 53 3E 90 10 00 7D 2D E1 2B 0C 55 B2 41 C4 1D
-DD 3F 87 12 42 4B 74 48 1A 55 0C 43 1B 42 C6 1D
-A2 53 C6 1D 6A 4E 3E 4F 7A 90 23 00 27 20 92 53
-C4 1D B0 12 9C 54 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 C6 1D A2 53
-C6 1D 89 4E 00 00 3E 4F 3D 41 30 4D 7A 90 26 00
-07 20 3C 40 10 02 92 53 C4 1D B0 12 9C 54 ED 3F
-7A 90 40 00 16 20 3C 40 20 00 92 53 C4 1D B0 12
-E8 54 0C 20 3C 50 10 00 3E 40 2B 00 B0 12 E8 54
-92 92 C0 1D C4 1D 02 24 92 53 C4 1D 8E 10 0C 5E
-DA 3F B0 12 E8 54 FA 23 3C 50 10 00 B0 12 D0 54
-EF 3F 0C 43 1B 42 C6 1D A2 53 C6 1D 87 12 42 4B
-74 48 E4 55 FE 90 26 00 00 00 3E 40 20 00 03 20
-3C 50 82 00 C8 3F B0 12 E8 54 E1 23 3C 50 80 00
-B0 12 D0 54 DC 3F D6 46 04 52 45 54 49 00 87 12
-14 48 00 13 B0 4A 2A 44 14 48 2C 00 12 55 DC 55
-22 56 09 4B 2E 4E 0E DC A4 3F FC 4E 03 4D 4F 56
-84 12 18 56 00 40 2C 56 05 4D 4F 56 2E 42 84 12
-18 56 40 40 00 00 03 41 44 44 84 12 18 56 00 50
-46 56 05 41 44 44 2E 42 84 12 18 56 40 50 52 56
-04 41 44 44 43 00 84 12 18 56 00 60 60 56 06 41
-44 44 43 2E 42 00 84 12 18 56 40 60 08 56 04 53
-55 42 43 00 84 12 18 56 00 70 7E 56 06 53 55 42
-43 2E 42 00 84 12 18 56 40 70 8C 56 03 53 55 42
-84 12 18 56 00 80 9C 56 05 53 55 42 2E 42 84 12
-18 56 40 80 DE 4E 03 43 4D 50 84 12 18 56 00 90
-B6 56 05 43 4D 50 2E 42 84 12 18 56 40 90 CC 4E
-04 44 41 44 44 00 84 12 18 56 00 A0 D0 56 06 44
-41 44 44 2E 42 00 84 12 18 56 40 A0 C2 56 03 42
-49 54 84 12 18 56 00 B0 EE 56 05 42 49 54 2E 42
-84 12 18 56 40 B0 FA 56 03 42 49 43 84 12 18 56
-00 C0 08 57 05 42 49 43 2E 42 84 12 18 56 40 C0
-14 57 03 42 49 53 84 12 18 56 00 D0 22 57 05 42
-49 53 2E 42 84 12 18 56 40 D0 00 00 03 58 4F 52
-84 12 18 56 00 E0 3C 57 05 58 4F 52 2E 42 84 12
-18 56 40 E0 6E 56 03 41 4E 44 84 12 18 56 00 F0
-56 57 05 41 4E 44 2E 42 84 12 18 56 40 F0 42 4B
-12 55 74 57 0A 4C 3C F0 70 00 8A 10 3A F0 0F 00
-0C DA 4F 3F A8 56 03 52 52 43 84 12 6E 57 00 10
-86 57 05 52 52 43 2E 42 84 12 6E 57 40 10 92 57
-04 53 57 50 42 00 84 12 6E 57 80 10 A0 57 03 52
-52 41 84 12 6E 57 00 11 AE 57 05 52 52 41 2E 42
-84 12 6E 57 40 11 BA 57 03 53 58 54 84 12 6E 57
-80 11 00 00 04 50 55 53 48 00 84 12 6E 57 00 12
-D4 57 06 50 55 53 48 2E 42 00 84 12 6E 57 40 12
-2E 57 04 43 41 4C 4C 00 84 12 6E 57 80 12 1A 53
-0E 4A 87 12 34 46 1E 48 0D 6F 75 74 20 6F 66 20
-62 6F 75 6E 64 73 4C 4C 42 4B 74 48 1E 58 92 53
-C4 1D 3E 40 2C 00 B0 12 2A 44 80 48 AA 49 40 46
-CE 4C D2 55 36 58 0A 4E 3E 4F 1A 83 E0 33 29 4E
-59 0E 0A 28 08 4C 59 0A 01 28 0C 8A 08 8A 38 90
-10 00 D5 2F 5A 0E 94 3F 2A 92 D1 2F 8A 10 5A 06
-8F 3F C8 57 04 52 52 43 4D 00 84 12 18 58 50 00
-64 58 04 52 52 41 4D 00 84 12 18 58 50 01 72 58
-04 52 4C 41 4D 00 84 12 18 58 50 02 80 58 04 52
-52 55 4D 00 84 12 18 58 50 03 E2 57 05 50 55 53
-48 4D 84 12 18 58 00 15 9C 58 04 50 4F 50 4D 00
-84 12 18 58 00 17 8E 58 03 53 3E 3D 85 12 00 38
-B8 58 02 53 3C 00 85 12 00 34 AA 58 03 30 3E 3D
-85 12 00 30 CC 58 02 30 3C 00 85 12 00 30 00 00
-02 55 3C 00 85 12 00 2C E0 58 03 55 3E 3D 85 12
-00 28 D6 58 03 30 3C 3E 85 12 00 24 F4 58 02 30
-3D 00 85 12 00 20 00 00 02 49 46 00 1A 42 C6 1D
-8A 4E 00 00 A2 53 C6 1D 0E 4A 30 4D EA 58 04 54
-48 45 4E 00 1A 42 C6 1D 08 4E 3E 4F 09 48 29 53
-0A 89 0A 11 3A 90 00 02 63 2F 88 DA 00 00 30 4D
-DE 56 04 45 4C 53 45 00 1A 42 C6 1D BA 40 00 3C
-00 00 A2 53 C6 1D 2F 83 8F 4A 00 00 E3 3F 1E 59
-05 55 4E 54 49 4C 3A 4F 08 4E 3E 4F 19 42 C6 1D
-2A 83 0A 89 0A 11 3A 90 00 FE 42 3B 3A F0 FF 03
-08 DA 89 48 00 00 A2 53 C6 1D 30 4D 62 57 05 41
-47 41 49 4E 0A 4E 38 40 00 3C E7 3F 00 00 05 57
-48 49 4C 45 87 12 0C 59 76 44 2A 44 C2 58 06 52
-45 50 45 41 54 00 87 12 94 59 24 59 2A 44 C0 59
-3D 41 08 4E 3E 4F 2A 48 B2 92 C4 1D CD 2F 98 42
-C6 1D 00 00 30 4D F2 57 03 42 57 31 84 12 BE 59
-00 00 D8 59 03 42 57 32 84 12 BE 59 00 00 E4 59
-03 42 57 33 84 12 BE 59 00 00 FC 59 3D 41 1A 42
-C6 1D 28 4E B2 92 C4 1D 90 2B BA 4F 00 00 A2 53
-C6 1D 8E 4A 00 00 3E 4F 30 4D 00 00 03 46 57 31
-84 12 FA 59 00 00 1C 5A 03 46 57 32 84 12 FA 59
-00 00 28 5A 03 46 57 33 84 12 FA 59 00 00 00 00
-05 3F 47 4F 54 4F 3E 90 00 30 07 24 3E E0 00 04
-3E B0 00 10 02 24 3E E0 00 08 87 12 C0 4C DA 4A
-2A 44 34 5A 04 47 4F 54 4F 00 2F 83 8F 4E 00 00
-3E 40 00 3C F2 3F 87 12 42 4B 74 48 7E 5A 69 4E
-3E 4F 3C 4F 2C 4C 1B 42 C6 1D A2 53 C6 1D 79 90
-52 00 0A 20 B0 12 E8 54 5E 0E 5E 0E 0E DC 8B 4E
-00 00 0E 4B 3D 41 30 4D 79 90 23 00 0D 20 3C C0
-40 00 92 53 C4 1D A2 53 C6 1D B0 12 9C 54 BB 4F
-02 00 3E F0 0F 00 E8 3F 79 90 26 00 03 20 3C E0
-E0 00 EF 3F 3C C0 F0 00 79 90 40 00 12 20 92 53
-C4 1D B0 12 E8 54 D8 23 3C D0 10 00 3E 40 2B 00
-B0 12 E8 54 92 92 C0 1D C4 1D CE 27 92 53 C4 1D
-CB 3F 3C D0 30 00 A2 53 C6 1D 3E 40 28 00 B0 12
-9C 54 BB 4F 02 00 3E 40 29 00 EA 3F 87 12 42 4B
-74 48 24 5B 3B 4F 2C 4B 69 4E 7E 40 20 00 79 90
-52 00 03 20 B0 12 E8 54 B1 3F 3C C0 F0 00 A2 53
-C6 1D 79 90 26 00 09 20 3C D0 60 00 92 53 C4 1D
-B0 12 9C 54 BB 4F 02 00 A1 3F 3C D0 70 00 3E 40
-28 00 B0 12 9C 54 BB 4F 02 00 3E 40 29 00 E2 3F
-14 48 2C 00 76 5A 1C 5B 66 44 2A 44 38 56 04 4D
-4F 56 41 00 84 12 70 5B C0 00 F0 59 04 43 4D 50
-41 00 84 12 70 5B D0 00 8E 59 04 41 44 44 41 00
-84 12 70 5B E0 00 AE 59 04 53 55 42 41 00 84 12
-70 5B F0 00
+3B 49 3A 49 3D 15 87 12 74 4A DC 4A B2 41 C4 1D
+B2 41 C2 1D B2 41 C0 1D 3D 41 30 4D 85 12 BE 1D
+00 00 04 51 55 49 54 00 82 43 08 18 31 40 E0 1C
+B2 40 00 1C 00 1C 82 43 BE 1D 87 12 2E 46 D4 44
+70 4A C4 45 74 4A 8C 46 BC 46 2E 44 0C 73 74 61
+63 6B 20 65 6D 70 74 79 21 00 6E 4B 24 44 40 FF
+2A 4E C4 46 2E 44 0A 46 52 41 4D 20 66 75 6C 6C
+21 00 6E 4B 48 44 0C 4B 0A 4A 05 41 42 4F 52 54
+3F 40 80 1C D1 3F 4A 4B 86 41 42 4F 52 54 22 00
+0D 12 87 12 AA 47 24 44 6E 4B F8 49 26 47 8F 93
+02 00 03 20 2F 52 3E 4F 30 4D B0 12 96 4F B0 12
+06 45 92 C3 DC 05 18 42 06 18 39 40 20 00 19 83
+FE 23 18 83 FA 23 92 B3 DC 05 F3 23 0D 12 87 12
+10 4F 24 44 DE 1D 02 45 D6 45 2E 44 04 1B 5B 37
+6D 00 00 46 7C 46 4C 44 C8 4B 2E 46 2E 44 05 6C
+69 6E 65 3A 00 46 66 47 00 46 2E 44 04 1B 5B 30
+6D 00 00 46 50 4B 00 00 83 5B 27 5D 0D 12 87 12
+F0 4B 24 44 24 44 F8 49 F8 49 26 47 44 48 01 27
+0D 12 87 12 70 4A F2 47 4A 48 4C 44 00 4C 26 47
+AA 4A D2 46 81 5C 92 42 C0 1D C4 1D 30 4D D8 4B
+81 5B 82 43 BE 1D 30 4D 04 4C 01 5D B2 43 BE 1D
+30 4D F2 4A 88 50 4F 53 54 50 4F 4E 45 00 0D 12
+87 12 70 4A F2 47 4A 48 7C 46 4C 44 00 4C BC 46
+4C 44 50 4C 24 44 24 44 F8 49 F8 49 24 44 F8 49
+F8 49 26 47 40 47 09 49 4D 4D 45 44 49 41 54 45
+1A 42 B6 1D FA D0 80 00 00 00 30 4D 10 4C 01 3A
+30 12 B8 4C 92 B3 C6 1D A2 63 C6 1D 0D 12 87 12
+70 4A F2 47 86 4C 3D 41 08 4E 7A 4E 5A D3 5A 53
+0A 58 19 42 DA 1D 6E 4E 3E F0 1E 00 09 5E 3E 4F
+82 48 B6 1D 82 49 B8 1D 82 4A BA 1D 82 4F BC 1D
+2A 52 82 4A C6 1D 30 41 BA 40 0D 12 FC FF BA 40
+87 12 FE FF B2 43 BE 1D 30 4D 6E 4C 07 3A 4E 4F
+4E 41 4D 45 30 12 B8 4C 2F 83 8F 4E 00 00 1E 42
+C6 1D 1E B3 0E 63 0A 4E 39 40 10 02 38 40 12 02
+D7 3F 82 9F BC 1D 09 20 18 42 B6 1D 19 42 B8 1D
+A8 49 FE FF 89 48 00 00 30 4D 0D 12 87 12 2E 44
+0F 73 74 61 63 6B 20 6D 69 73 6D 61 74 63 68 21
+7A 4B CC 4C 81 3B 82 93 BE 1D 6D 27 0D 12 87 12
+24 44 26 47 F8 49 F2 4C 12 4C 26 47 5C 4A 06 43
+52 45 41 54 45 00 B0 12 74 4C BA 40 85 12 FC FF
+8A 4A FE FF D5 3F C0 4A 05 44 4F 45 53 3E 1A 42
+BA 1D BA 40 84 12 00 00 8A 4D 02 00 3D 41 30 4D
+3E 4D 04 43 4F 44 45 00 B0 12 74 4C A2 82 C6 1D
+0D 12 87 12 8A 4E 64 4E 26 47 72 4D 07 43 4F 44
+45 4E 4E 4D 30 12 7C 4D 9F 3F 00 00 07 45 4E 44
+43 4F 44 45 0D 12 87 12 F2 4C A4 4E 26 47 58 4B
+03 41 53 4D B2 40 68 4E DA 1D DE 3F 9C 4D 06 45
+4E 44 41 53 4D 00 0D 12 87 12 A4 4D C2 4E 26 47
+00 00 05 43 4F 4C 4F 4E 1A 42 C6 1D BA 40 0D 12
+00 00 BA 40 87 12 02 00 A2 52 C6 1D B2 43 BE 1D
+30 40 A4 4E 00 00 05 4C 4F 32 48 49 A2 83 C6 1D
+1A 42 C6 1D EE 3F 56 4C 85 48 49 32 4C 4F 0D 12
+87 12 2A 4E 1E 4E F8 49 12 4C 80 4D 26 47 2E 53
+30 4D 8C 4D 85 42 45 47 49 4E 2F 83 8F 4E 00 00
+1E 42 C6 1D 30 4D 24 44 CA 1D AE 46 26 47 84 12
+36 4E B0 4D 5A 50 58 4D EE 4B 08 4E 42 46 20 4A
+D8 47 34 4F 4E 4F 62 47 CE 4F 00 00 F4 51 1A 4C
+AA 48 00 00 84 12 36 4E 26 57 8C 57 DA 56 DC 57
+A0 56 00 00 D0 53 00 00 96 56 48 57 F8 56 36 57
+E0 54 00 00 00 00 F8 57 62 4E 3A 40 0C 00 39 40
+D6 1D 08 49 28 53 19 83 18 83 E8 49 00 00 1A 83
+FA 23 30 4D 3A 40 0E 00 38 40 CA 1D 09 48 29 53
+F8 49 00 00 18 53 1A 83 FB 23 30 4D 82 43 CC 1D
+30 4D 92 42 CA 1D DA 1D 30 4D 3E 4E BC 4E C2 4E
+D2 4E 3A 4E 82 4A C8 1D 2E 4E 82 4E C6 1D 3D 40
+10 00 09 4A 08 49 29 83 18 48 FE FF 0E 98 FC 2B
+89 48 00 00 1D 83 F6 23 2A 4A 0A 93 F0 23 3E 4F
+3D 41 30 4D 24 4C 09 50 57 52 5F 53 54 41 54 45
+84 12 CA 4E 88 4E 14 58 A6 47 09 52 53 54 5F 53
+54 41 54 45 92 42 0E 18 14 4F 92 42 0C 18 16 4F
+EF 3F 06 4F 08 50 57 52 5F 48 45 52 45 00 92 42
+C8 1D 14 4F 92 42 C6 1D 16 4F 30 4D 1A 4F 08 52
+53 54 5F 48 45 52 45 00 92 42 C8 1D 0E 18 92 42
+C6 1D 0C 18 EC 3F EC 47 04 57 49 50 45 00 39 40
+10 00 29 83 B9 43 80 FF FC 23 B2 40 04 44 02 44
+B2 40 D8 4F D6 4F B2 40 88 4E 0E 18 B2 40 14 58
+0C 18 30 12 24 4F B2 40 C8 45 C6 45 B2 40 32 46
+30 46 B2 40 4A 46 48 46 B2 40 18 00 0A 18 37 40
+26 47 36 40 9C 46 35 40 FA 44 34 40 EC 44 B2 40
+0A 00 DC 1D B2 40 20 00 B4 1D 30 41 68 4F 04 57
+41 52 4D 00 30 40 D8 4F 3D 40 10 50 92 C3 30 01
+1E 42 08 18 0E 93 13 24 D2 B3 01 02 02 20 3E E3
+1E 53 F2 D0 03 00 0D 02 92 D3 DA 05 3E 90 0A 00
+B6 27 3E 90 16 00 B3 2F 2E 93 82 27 8B 2F 30 4D
+2E 44 07 0D 0A 1B 5B 37 6D 23 00 46 9C 47 2E 44
+19 46 61 73 74 46 6F 72 74 68 20 C2 A9 4A 2E 4D
+2E 54 68 6F 6F 72 65 6E 73 20 00 46 24 44 40 FF
+2A 4E A6 46 66 47 2E 44 0A 62 79 74 65 73 20 66
+72 65 65 00 48 44 C8 4B 24 4E 04 43 4F 4C 44 00
+92 B3 CA 05 FD 23 B2 40 04 A5 20 01 31 40 E0 1C
+B2 40 88 5A 5C 01 B2 40 FE FF 02 02 B2 D3 06 02
+B2 D3 26 02 B2 40 FF BF 22 02 E2 D3 25 02 F2 43
+22 03 F2 D3 26 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 39 40 00 01 B2 40 33 00 64 01
+D2 43 61 01 92 D2 9E 01 08 18 38 40 59 14 18 83
+FE 23 19 83 FA 23 B2 D2 B0 01 F2 D0 10 00 2A 03
+F2 C0 40 00 A1 04 39 40 00 08 29 83 89 43 00 1C
+FC 23 B0 12 0E 44 B2 40 81 00 C0 05 92 42 02 18
+C6 05 92 42 04 18 C8 05 92 C3 C0 05 3F 40 80 1C
+30 12 D4 4F 49 3F 24 4D 86 5B 54 48 45 4E 5D 00
+30 4D 0C 4E 38 4F 3B 4F 39 4F 0E 4B 0E 5C 10 24
+1B 83 06 30 1C 83 04 30 19 53 F9 98 FF FF F5 27
+2D 4D 3E 4F 30 4D 2F 53 9F 83 00 00 F9 23 2F 53
+2D 53 F7 3F 18 51 86 5B 45 4C 53 45 5D 00 0D 12
+87 12 24 44 00 00 AA 46 70 4A F2 47 62 4A 68 46
+4C 44 B0 51 70 46 2E 44 06 5B 54 48 45 4E 5D 00
+22 51 8A 51 46 51 68 51 26 47 70 46 2E 44 06 5B
+45 4C 53 45 5D 00 22 51 A0 51 46 51 66 51 26 47
+2E 44 04 5B 49 46 5D 00 22 51 68 51 48 44 66 51
+22 46 2E 44 05 0D 0A 6B 6F 20 00 46 D4 44 C4 44
+48 44 68 51 56 51 84 5B 49 46 5D 00 0E 93 3E 4F
+C6 27 30 4D 2F 53 30 4D C6 51 89 5B 44 45 46 49
+4E 45 44 5D 0D 12 87 12 70 4A F2 47 4A 48 D4 51
+26 47 DA 51 8B 5B 55 4E 44 45 46 49 4E 45 44 5D
+0D 12 87 12 E4 51 08 52 3D 41 30 40 B6 46 38 40
+C0 1D 0A 4E 39 48 2E 48 09 5E 1E 52 C4 1D 09 9E
+03 24 7A 9E FC 27 1E 83 0A 4E 2A 88 82 4A C4 1D
+30 4D 1C 15 87 12 F2 47 4A 48 42 44 46 52 06 49
+4C 44 00 4C 60 52 48 52 39 4E 39 80 86 12 08 24
+19 53 02 20 2E 4E 04 3C 2E 53 19 53 01 24 2E 82
+1B 17 30 41 3E 40 28 00 B0 12 32 52 19 42 C6 1D
+A2 53 C6 1D 89 4E 00 00 3E 40 29 00 1C 15 12 12
+C4 1D 92 53 C4 1D 87 12 F2 47 06 49 4C 44 9C 52
+92 52 21 53 3E 90 10 00 80 2D E2 2B 9E 52 B2 41
+C4 1D DE 3F 0D 12 87 12 70 4A 0E 52 AE 52 0C 43
+1B 42 C6 1D A2 53 C6 1D 6A 4E 3E 4F 7A 90 23 00
+27 20 92 53 C4 1D B0 12 32 52 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
+C6 1D A2 53 C6 1D 89 4E 00 00 3E 4F 3D 41 30 4D
+7A 90 26 00 07 20 3C 40 10 02 92 53 C4 1D B0 12
+32 52 ED 3F 7A 90 40 00 16 20 3C 40 20 00 92 53
+C4 1D B0 12 7C 52 0C 20 3C 50 10 00 3E 40 2B 00
+B0 12 7C 52 92 92 C0 1D C4 1D 02 24 92 53 C4 1D
+8E 10 0C 5E DA 3F B0 12 7C 52 FA 23 3C 50 10 00
+B0 12 64 52 EF 3F 0C 43 1B 42 C6 1D A2 53 C6 1D
+0D 12 87 12 70 4A 0E 52 7A 53 FE 90 26 00 00 00
+3E 40 20 00 03 20 3C 50 82 00 C7 3F B0 12 7C 52
+E0 23 3C 50 80 00 B0 12 64 52 DB 3F 00 00 04 52
+45 54 49 00 0D 12 87 12 24 44 00 13 F8 49 26 47
+24 44 2C 00 A4 52 70 53 BA 53 09 4B 2E 4E 0E DC
+A2 3F F6 4D 03 4D 4F 56 84 12 B0 53 00 40 C4 53
+05 4D 4F 56 2E 42 84 12 B0 53 40 40 00 00 03 41
+44 44 84 12 B0 53 00 50 DE 53 05 41 44 44 2E 42
+84 12 B0 53 40 50 EA 53 04 41 44 44 43 00 84 12
+B0 53 00 60 F8 53 06 41 44 44 43 2E 42 00 84 12
+B0 53 40 60 9E 53 04 53 55 42 43 00 84 12 B0 53
+00 70 16 54 06 53 55 42 43 2E 42 00 84 12 B0 53
+40 70 24 54 03 53 55 42 84 12 B0 53 00 80 34 54
+05 53 55 42 2E 42 84 12 B0 53 40 80 D2 4D 03 43
+4D 50 84 12 B0 53 00 90 4E 54 05 43 4D 50 2E 42
+84 12 B0 53 40 90 BE 4D 04 44 41 44 44 00 84 12
+B0 53 00 A0 68 54 06 44 41 44 44 2E 42 00 84 12
+B0 53 40 A0 5A 54 03 42 49 54 84 12 B0 53 00 B0
+86 54 05 42 49 54 2E 42 84 12 B0 53 40 B0 92 54
+03 42 49 43 84 12 B0 53 00 C0 A0 54 05 42 49 43
+2E 42 84 12 B0 53 40 C0 AC 54 03 42 49 53 84 12
+B0 53 00 D0 BA 54 05 42 49 53 2E 42 84 12 B0 53
+40 D0 00 00 03 58 4F 52 84 12 B0 53 00 E0 D4 54
+05 58 4F 52 2E 42 84 12 B0 53 40 E0 06 54 03 41
+4E 44 84 12 B0 53 00 F0 EE 54 05 41 4E 44 2E 42
+84 12 B0 53 40 F0 70 4A A4 52 0C 55 0A 4C 3C F0
+70 00 8A 10 3A F0 0F 00 0C DA 4F 3F 40 54 03 52
+52 43 84 12 06 55 00 10 1E 55 05 52 52 43 2E 42
+84 12 06 55 40 10 2A 55 04 53 57 50 42 00 84 12
+06 55 80 10 38 55 03 52 52 41 84 12 06 55 00 11
+46 55 05 52 52 41 2E 42 84 12 06 55 40 11 52 55
+03 53 58 54 84 12 06 55 80 11 00 00 04 50 55 53
+48 00 84 12 06 55 00 12 6C 55 06 50 55 53 48 2E
+42 00 84 12 06 55 40 12 C6 54 04 43 41 4C 4C 00
+84 12 06 55 80 12 1A 53 0E 4A 0D 12 87 12 9C 47
+2E 44 0D 6F 75 74 20 6F 66 20 62 6F 75 6E 64 73
+7A 4B 70 4A 0E 52 B8 55 92 53 C4 1D 3E 40 2C 00
+87 12 F2 47 06 49 4C 44 00 4C 66 53 CE 55 0A 4E
+3E 4F 1A 83 E0 33 29 4E 59 0E 0A 28 08 4C 59 0A
+01 28 0C 8A 08 8A 38 90 10 00 D5 2F 5A 0E 94 3F
+2A 92 D1 2F 8A 10 5A 06 8F 3F 60 55 04 52 52 43
+4D 00 84 12 B2 55 50 00 FC 55 04 52 52 41 4D 00
+84 12 B2 55 50 01 0A 56 04 52 4C 41 4D 00 84 12
+B2 55 50 02 18 56 04 52 52 55 4D 00 84 12 B2 55
+50 03 7A 55 05 50 55 53 48 4D 84 12 B2 55 00 15
+34 56 04 50 4F 50 4D 00 84 12 B2 55 00 17 26 56
+03 53 3E 3D 85 12 00 38 50 56 02 53 3C 00 85 12
+00 34 42 56 03 30 3E 3D 85 12 00 30 64 56 02 30
+3C 00 85 12 00 30 00 00 02 55 3C 00 85 12 00 2C
+78 56 03 55 3E 3D 85 12 00 28 6E 56 03 30 3C 3E
+85 12 00 24 8C 56 02 30 3D 00 85 12 00 20 00 00
+02 49 46 00 1A 42 C6 1D 8A 4E 00 00 A2 53 C6 1D
+0E 4A 30 4D 82 56 04 54 48 45 4E 00 1A 42 C6 1D
+08 4E 3E 4F 09 48 29 53 0A 89 0A 11 3A 90 00 02
+63 2F 88 DA 00 00 30 4D 76 54 04 45 4C 53 45 00
+1A 42 C6 1D BA 40 00 3C 00 00 A2 53 C6 1D 2F 83
+8F 4A 00 00 E3 3F B6 56 05 55 4E 54 49 4C 3A 4F
+08 4E 3E 4F 19 42 C6 1D 2A 83 0A 89 0A 11 3A 90
+00 FE 42 3B 3A F0 FF 03 08 DA 89 48 00 00 A2 53
+C6 1D 30 4D FA 54 05 41 47 41 49 4E 0A 4E 38 40
+00 3C E7 3F 00 00 05 57 48 49 4C 45 0D 12 87 12
+A4 56 82 46 26 47 5A 56 06 52 45 50 45 41 54 00
+0D 12 87 12 2C 57 BC 56 26 47 5C 57 3D 41 08 4E
+3E 4F 2A 48 B2 92 C4 1D CB 2F 98 42 C6 1D 00 00
+30 4D 8A 55 03 42 57 31 84 12 5A 57 00 00 74 57
+03 42 57 32 84 12 5A 57 00 00 80 57 03 42 57 33
+84 12 5A 57 00 00 98 57 3D 41 1A 42 C6 1D 28 4E
+B2 92 C4 1D 8E 2B BA 4F 00 00 A2 53 C6 1D 8E 4A
+00 00 3E 4F 30 4D 00 00 03 46 57 31 84 12 96 57
+00 00 B8 57 03 46 57 32 84 12 96 57 00 00 C4 57
+03 46 57 33 84 12 96 57 00 00 D0 57 04 47 4F 54
+4F 00 2F 83 8F 4E 00 00 3E 40 00 3C 0D 12 87 12
+F0 4B 18 4A 26 47 00 00 05 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
 @FFFE
-9C 52
+6C 50
 q
index 1583874..edee5a9 100644 (file)
 @1800
-10 00 08 00 00 D6 E8 03 05 00 18 00 A2 5B D0 50
-2D 01 6B B4 B6 46 C8 46
+10 00 08 00 00 D6 E8 03 05 00 18 00 02 58 88 4E
+2E 01 6B B0 06 45 18 45 D4 4F
 @4400
-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 3A 41 0D 12 0D 4A
-30 4D 00 00 04 45 58 49 54 00 3D 41 30 4D 24 44
-03 44 55 50 2F 83 8F 4E 00 00 30 4D 00 00 04 32
-44 55 50 00 8F 4E FE FF AF 4F FC FF 2F 82 30 4D
-00 00 04 3F 44 55 50 00 0E 93 EC 23 30 4D 30 44
-04 44 52 4F 50 00 3E 4F 30 4D 2F 53 30 4D 3E 44
-04 53 57 41 50 00 2A 4F 8F 4E 00 00 0E 4A 30 4D
-52 44 02 3E 52 00 0E 12 3E 4F 30 4D 70 44 02 52
-3E 00 2F 83 8F 4E 00 00 3E 41 30 4D 60 44 05 44
-45 50 54 48 8F 4E FE FF 3E 40 80 1C 0E 8F 0E 11
-2F 83 30 4D 00 00 01 2D 3E 8F 3E E3 1E 53 30 4D
-00 00 02 31 2B 00 1E 53 30 4D C2 44 02 31 2D 00
-1E 83 30 4D 3E F3 06 34 BF E3 00 00 3E E3 9F 53
-00 00 0E 63 30 4D 00 00 01 40 2E 4E 30 4D E8 44
-01 21 BE 4F 00 00 3E 4F 30 4D CC 44 02 30 3D 00
-1E 83 0E 7E 30 4D FC 44 02 30 3C 00 0E 5E 0E 7E
-3E E3 30 4D 00 00 01 3D 3E 8F FA 27 0E F3 30 4D
-00 00 02 55 3C 00 3E 8F F9 2B 01 24 3E 43 30 4D
-16 45 02 3C 23 00 B2 40 B2 1D B2 1D 30 4D 0B 4E
+30 40 04 44 B0 12 06 45 12 D2 0A 18 F9 3F 39 40
+34 00 29 83 B9 40 6C 50 CC FF FB 23 B2 40 68 45
+F0 FF 30 41 2F 83 8F 4E 00 00 3E 4D 30 4D 2F 82
+8F 4E 02 00 7E 4D 8F 4D 00 00 0D 5E 1D B3 0D 63
+30 4D 0E 93 3E 4F 05 24 2D 4D 30 4D 0E 93 3E 4F
+FB 27 2D 53 30 4D 39 40 00 80 39 8F 08 4E 3E 4F
+08 59 19 15 30 4D 81 5E 00 00 3E 4F 32 B0 00 01
+EB 27 21 52 2D 53 30 4D 91 53 00 00 F7 3F 0B 4E
 1C 4F 02 00 2E 4F 0A 43 34 40 20 00 0E 93 04 20
 04 11 0E 4C 0C 43 09 43 0A 9B 01 28 0A 8B 09 69
 08 68 14 83 07 30 0C 5C 0E 6E 0A 6A F5 2B 0A 8B
-12 D3 F5 3F 34 40 00 44 8F 4A 02 00 8F 49 00 00
-0E 48 30 41 00 00 01 23 1B 42 DC 1D 2C 4F 2F 83
-B0 12 46 45 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 86 45 02 23 53 00 87 12 88 45 C0 45
-2D 83 09 93 E3 23 0E 93 E1 23 3D 41 30 4D B6 45
-02 23 3E 00 9F 42 B2 1D 00 00 3E 40 B2 1D 2E 8F
-30 4D 00 00 04 48 4F 4C 44 00 0A 4E 3E 4F DB 3F
-8E 44 04 53 49 47 4E 00 0E 93 3E 4F 3A 40 2D 00
-D2 33 30 4D 87 12 36 45 34 44 86 44 D4 44 BA 45
-92 44 F8 45 D4 45 D6 47 42 4B 82 47 2A 44 22 45
-02 55 2E 00 08 43 2F 83 8F 4E 00 00 0E 48 EA 3F
-00 00 01 2E 0E 93 F6 37 38 43 F5 3F 2D 4D 30 4D
-0E 93 3E 4F FB 27 2D 53 30 4D 0E 93 3E 4F F6 23
-2D 53 30 4D 39 40 00 80 39 8F 08 4E 3E 4F 08 59
-19 15 30 4D 81 5E 00 00 3E 4F 32 B0 00 01 E6 27
-2D 53 21 52 30 4D 91 53 00 00 F7 3F E4 45 01 49
-2F 83 8F 4E 00 00 2E 41 1E 81 02 00 30 4D 00 00
-03 4B 45 59 30 40 98 46 18 42 CC 05 2F 83 8F 4E
-00 00 B0 12 B6 46 92 B3 DC 05 FD 27 1E 42 CC 05
-B0 12 C8 46 30 4D A2 B3 DC 05 FD 27 B2 40 11 00
-CE 05 E2 C3 23 02 30 41 B2 40 13 00 CE 05 E2 D3
-23 02 30 41 00 00 05 53 4C 45 45 50 30 40 E0 46
-B0 12 B6 46 12 D2 0A 18 F9 3F F0 44 06 41 43 43
-45 50 54 00 3C 40 64 47 3B 40 2E 47 2D 15 0A 4E
-2E 4F 0A 5E 3B 40 0D 00 3C 40 20 00 3D 40 58 47
-92 B3 DC 05 05 24 18 42 CC 05 38 90 0A 00 CB 23
-21 53 3D 15 DB 3F 21 52 3A 17 58 42 CC 05 48 9C
-08 2C 48 9B C9 27 78 92 11 20 2E 9F 0F 24 1E 83
-05 3C 0E 9A 03 24 CE 48 00 00 1E 53 A2 B3 DC 05
-FD 27 82 48 CE 05 30 4D 5A 47 2D 83 92 B3 DC 05
-E4 23 FC 27 82 93 DE 1D 02 24 92 53 DE 1D 3E 8F
-3D 41 B2 40 18 00 0A 18 30 4D 9E 44 04 45 4D 49
-54 00 30 40 86 47 08 4E 3E 4F E0 3F 3F 80 06 00
-8F 4E 04 00 3E 40 54 00 BF 40 3C 1D 00 00 AF 4F
-02 00 A8 3F 7C 47 04 45 43 48 4F 00 B2 40 82 48
-52 47 82 43 DE 1D 30 4D 32 46 06 4E 4F 45 43 48
-4F 00 B2 40 30 4D 52 47 92 43 DE 1D 30 4D 20 46
-04 54 59 50 45 00 0E 93 0F 24 1E 15 3D 40 EC 47
-28 4F 7E 48 8F 48 00 00 2F 83 CB 3F EE 47 2D 83
-91 83 02 00 F5 23 1D 17 2F 53 3E 4F 30 4D D0 45
-02 43 52 00 30 40 08 48 87 12 1E 48 02 0D 0A 00
-D6 47 2A 44 2F 83 8F 4E 00 00 3E 4D 30 4D 2F 82
-8F 4E 02 00 7E 4D 8F 4D 00 00 0D 5E 1D B3 0D 63
-30 4D F2 45 82 53 22 00 82 43 B4 1D 87 12 14 48
-1E 48 B0 4A 14 48 22 00 80 48 4C 48 B2 40 20 00
-B4 1D 6E 4E 1E 53 1E B3 82 6E C6 1D 3D 41 3E 4F
-30 4D BA 47 82 2E 22 00 87 12 38 48 14 48 D6 47
-B0 4A 2A 44 48 43 05 3C 00 00 04 57 4F 52 44 00
-48 4E 19 42 C0 1D 1A 42 C2 1D 09 5A 1A 52 C4 1D
-09 9A 03 24 7E 9A FC 27 1A 83 4E F8 06 20 0E 4A
-1A 82 C2 1D 82 4A C4 1D 30 4D 18 42 C6 1D 3B 40
-60 00 C8 4C 00 00 09 9A 0C 24 7C 4A 4E 9C 09 24
-18 53 4B 9C F6 2F 7C 90 7B 00 F3 2F 5C 82 B4 1D
-F0 3F 1A 82 C2 1D 82 4A C4 1D 1E 42 C6 1D 08 8E
-CE 48 00 00 30 4D 00 00 04 46 49 4E 44 00 2F 83
-0C 4E 65 4C 74 40 80 00 3B 40 CA 1D 3E 4B 0E 93
-1E 24 58 4C 01 00 78 F0 1E 00 0E 58 2E 53 1E 4E
-FE FF 0E 93 F3 27 09 4E 78 49 48 C4 48 95 F7 23
-0A 4C FA 99 01 00 F3 23 1A 53 58 83 FA 23 19 B3
-09 63 0C 49 6A 4E 1E 43 4A 93 01 30 2E 83 8F 4C
-00 00 35 40 0E 44 34 40 00 44 30 4D 82 44 07 3E
-4E 55 4D 42 45 52 3C 4F 38 4F 29 4F 2F 82 1B 42
-DC 1D 6A 4C 7A 80 30 00 7A 90 0A 00 05 28 7A 80
-07 00 7A 90 0A 00 12 28 0A 9B 22 C3 0F 2C 82 49
-D0 04 82 48 D2 04 82 4B C8 04 19 42 E4 04 18 42
-E6 04 09 5A 08 63 1C 53 1E 83 E3 23 8F 4C 00 00
-8F 48 02 00 8F 49 04 00 30 4D 32 C0 00 02 1B 42
-DC 1D 0C 43 2D 15 3D 40 F4 49 09 43 08 43 3F 82
-8F 4E 06 00 0C 4E 7E 4C 6A 4C 7A 90 2D 00 04 28
-C9 23 B1 43 02 00 DF 3F 2B 43 7A 80 25 00 07 24
-3B 52 6A 53 04 24 3B 40 10 00 5A 83 BA 23 1C 53
-1E 83 EA 3F F6 49 2F 24 2D 83 7A 90 28 00 CB 27
-32 D0 00 02 7A 90 F7 00 C6 27 7A 90 F5 00 23 20
-0A 4E 09 43 8F 49 02 00 5A 83 09 4A 09 5C 69 49
-79 80 30 00 79 90 0A 00 05 28 79 80 07 00 79 90
-0A 00 0A 28 09 9B 08 2C 8F 49 00 00 0E 4B 2C 15
-B0 12 3E 45 2A 17 E6 3F 9F 4F 04 00 02 00 AF 4F
-04 00 0E 4A 4E 93 2B 17 0E 4C 82 4B DC 1D 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 7E 46 04 48 45 52 45 00
-2F 83 8F 4E 00 00 1E 42 C6 1D 30 4D B6 44 01 2C
-1A 42 C6 1D 8A 4E 00 00 A2 53 C6 1D 3E 4F 30 4D
-EC 46 05 41 4C 4C 4F 54 82 5E C6 1D 3E 4F 30 4D
-A6 47 07 45 58 45 43 55 54 45 0A 4E 3E 4F 00 4A
-AE 4A 87 4C 49 54 45 52 41 4C 82 93 BE 1D 0C 24
-1A 42 C6 1D A2 52 C6 1D BA 40 14 48 00 00 8A 4E
-02 00 3E 4F 32 B0 00 02 32 C0 00 02 06 24 19 4A
-02 00 8A 4E 02 00 0E 49 EB 3F 30 4D 00 48 05 43
-4F 55 4E 54 2F 83 1E 53 8F 4E 00 00 5E 4E FF FF
-30 4D 82 4E C0 1D B2 4F C2 1D 3E 4F 82 43 C4 1D
-30 4D 85 12 20 00 87 12 32 4B 42 4B 80 48 50 4B
-3D 40 58 4B CC 22 82 3E 5A 4B 0A 4E 3E 4F 3D 40
-70 4B 23 27 3D 40 4A 4B 1A E2 BE 1D A1 27 B5 23
-72 4B 3E 4F 3D 40 4A 4B B8 23 DE 53 00 00 68 4E
-08 5E F8 40 3F 00 00 00 3D 40 26 4E CB 3F D2 4A
+12 D3 F5 3F 34 40 EC 44 8F 4A 02 00 8F 49 00 00
+0E 48 30 41 82 4E C0 1D B2 4F C2 1D 3E 4F 82 43
+C4 1D 30 4D 3F 80 06 00 8F 4E 04 00 3E 40 54 00
+BF 40 3C 1D 00 00 AF 4F 02 00 24 3C 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 A2 B3 DC 05 FD 27 B2 40 11 00
+CE 05 E2 C3 23 02 30 41 A2 B3 DC 05 FD 27 B2 40
+13 00 CE 05 E2 D3 23 02 30 41 00 00 06 41 43 43
+45 50 54 00 3C 40 A6 45 3B 40 70 45 2D 15 0A 4E
+2E 4F 0A 5E 3B 40 0D 00 3C 40 20 00 3D 40 9A 45
+92 B3 DC 05 05 24 18 42 CC 05 38 90 0A 00 D3 23
+21 53 3D 15 30 40 00 44 21 52 3A 17 58 42 CC 05
+48 9C 08 2C 48 9B D0 27 78 92 11 20 2E 9F 0F 24
+1E 83 05 3C 0E 9A 03 24 CE 48 00 00 1E 53 A2 B3
+DC 05 FD 27 82 48 CE 05 30 4D 9C 45 2D 83 92 B3
+DC 05 E4 23 FC 27 82 93 DE 1D 02 24 92 53 DE 1D
+3E 8F 3D 41 B2 40 18 00 0A 18 30 4D 00 00 04 45
+4D 49 54 00 30 40 C8 45 08 4E 3E 4F E0 3F BE 45
+04 45 43 48 4F 00 B2 40 82 48 94 45 82 43 DE 1D
+30 4D 00 00 06 4E 4F 45 43 48 4F 00 B2 40 30 4D
+94 45 92 43 DE 1D 30 4D 00 00 04 54 59 50 45 00
+0E 93 0F 24 1E 15 3D 40 16 46 28 4F 7E 48 8F 48
+00 00 2F 83 D7 3F 18 46 2D 83 91 83 02 00 F5 23
+1D 17 2F 53 3E 4F 30 4D 00 00 02 43 52 00 30 40
+32 46 0D 12 87 12 2E 44 02 0D 0A 00 00 46 26 47
+00 00 03 4B 45 59 30 40 4A 46 18 42 CC 05 2F 83
+8F 4E 00 00 B0 12 06 45 92 B3 DC 05 FD 27 1E 42
+CC 05 B0 12 18 45 30 4D 2F 83 8F 4E 00 00 30 4D
+8F 4E FE FF AF 4F FC FF 2F 82 30 4D 0E 93 F4 23
+30 4D 2A 4F 8F 4E 00 00 0E 4A 30 4D 8F 4E FE FF
+3E 40 80 1C 0E 8F 0E 11 2F 83 30 4D 2F 83 8F 4E
+00 00 3E 41 30 4D 3E 8F 3E E3 1E 53 30 4D BE 4F
+00 00 3E 4F 30 4D 1E 83 0E 7E 30 4D 0E 5E 0E 7E
+3E E3 30 4D 3E 8F 03 24 3E 43 01 2C 0E F3 30 4D
+00 00 02 3C 23 00 B2 40 B2 1D B2 1D 30 4D 2A 46
+01 23 1B 42 DC 1D 2C 4F 2F 83 B0 12 86 44 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 E0 46
+02 23 53 00 0D 12 87 12 E2 46 1C 47 2D 83 09 93
+E2 23 0E 93 E0 23 3D 41 30 4D 10 47 02 23 3E 00
+9F 42 B2 1D 00 00 3E 40 B2 1D 2E 8F 30 4D 00 00
+04 48 4F 4C 44 00 4A 4E 3E 4F DA 3F 00 00 04 53
+49 47 4E 00 0E 93 3E 4F 7A 40 2D 00 D1 33 30 4D
+FA 45 02 55 2E 00 08 43 2F 83 8F 4E 00 00 0E 48
+0D 12 0E 12 3E F3 06 34 BF E3 00 00 3E E3 9F 53
+00 00 0E 63 87 12 D6 46 14 47 9C 46 54 47 30 47
+00 46 70 4A C4 45 26 47 E4 45 01 2E 0E 93 E3 37
+38 43 E2 3F 4E 47 82 53 22 00 82 43 B4 1D 0D 12
+87 12 24 44 2E 44 F8 49 24 44 22 00 F2 47 C0 47
+B2 40 20 00 B4 1D 6E 4E 1E 53 1E B3 82 6E C6 1D
+3D 41 3E 4F 30 4D 9A 47 82 2E 22 00 0D 12 87 12
+AA 47 24 44 00 46 F8 49 26 47 00 00 04 57 4F 52
+44 00 3C 40 C0 1D 39 4C 3A 4C 09 5A 3A 5C 28 4C
+09 9A 15 24 7E 9A FC 27 1A 83 3B 40 60 00 C8 4C
+00 00 09 9A 0C 24 7C 4A 4E 9C 09 24 18 53 4B 9C
+F6 2F 7C 90 7B 00 F3 2F 5C 82 B4 1D F0 3F 1A 82
+C2 1D 82 4A C4 1D 1E 42 C6 1D 08 8E CE 48 00 00
+30 4D 00 00 04 46 49 4E 44 00 2F 83 0C 4E 65 4C
+74 40 80 00 3B 40 CA 1D 3E 4B 0E 93 1E 24 58 4C
+01 00 78 F0 1E 00 0E 58 2E 53 1E 4E FE FF 0E 93
+F3 27 09 4E 78 49 48 C4 48 95 F7 23 0A 4C FA 99
+01 00 F3 23 1A 53 58 83 FA 23 19 B3 09 63 0C 49
+6A 4E 1E 43 4A 93 01 30 2E 83 8F 4C 00 00 35 40
+FA 44 34 40 EC 44 30 4D 00 00 07 3E 4E 55 4D 42
+45 52 3C 4F 38 4F 29 4F 2F 82 1B 42 DC 1D 6A 4C
+7A 80 30 00 7A 90 0A 00 05 28 7A 80 07 00 7A 90
+0A 00 12 28 0A 9B 22 C3 0F 2C 82 49 D0 04 82 48
+D2 04 82 4B C8 04 19 42 E4 04 18 42 E6 04 09 5A
+08 63 1C 53 1E 83 E3 23 8F 4C 00 00 8F 48 02 00
+8F 49 04 00 30 4D 32 C0 00 02 1B 42 DC 1D 0C 43
+2D 15 3D 40 50 49 09 43 08 43 3F 82 8F 4E 06 00
+0C 4E 7E 4C 6A 4C 7A 90 2D 00 04 28 C9 23 B1 43
+02 00 0B 3C 2B 43 7A 80 25 00 07 24 3B 52 6A 53
+04 24 3B 40 10 00 5A 83 BA 23 1C 53 1E 83 EA 3F
+52 49 2F 24 2D 83 7A 90 28 00 CB 27 32 D0 00 02
+7A 90 F7 00 C6 27 7A 90 F5 00 23 20 0A 4E 09 43
+8F 49 02 00 5A 83 09 4A 09 5C 69 49 79 80 30 00
+79 90 0A 00 05 28 79 80 07 00 79 90 0A 00 0A 28
+09 9B 08 2C 8F 49 00 00 0E 4B 2C 15 B0 12 7E 44
+2A 17 E6 3F 9F 4F 04 00 02 00 AF 4F 04 00 0E 4A
+4E 93 2B 17 0E 4C 82 4B DC 1D 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 00 00 01 2C 1A 42 C6 1D 8A 4E 00 00
+A2 53 C6 1D 3E 4F 30 4D 2C 45 05 41 4C 4C 4F 54
+82 5E C6 1D 3E 4F 30 4D 0A 4E 3E 4F 00 4A F6 49
+87 4C 49 54 45 52 41 4C 82 93 BE 1D 0C 24 1A 42
+C6 1D A2 52 C6 1D BA 40 24 44 00 00 8A 4E 02 00
+3E 4F 32 B0 00 02 32 C0 00 02 06 24 19 4A 02 00
+8A 4E 02 00 0E 49 EB 3F 30 4D 2C 47 05 43 4F 55
+4E 54 2F 83 1E 53 8F 4E 00 00 5E 4E FF FF 30 4D
+85 12 20 00 0D 12 87 12 C4 44 70 4A F2 47 80 4A
+3D 40 88 4A E2 22 A4 26 8A 4A 0A 4E 3E 4F 3D 40
+A0 4A 39 27 3D 40 7A 4A 1A E2 BE 1D BD 23 AC 27
+A2 4A 3E 4F 3D 40 7A 4A BF 23 DE 53 00 00 68 4E
+08 5E F8 40 3F 00 00 00 3D 40 20 4D D2 3F D0 45
 08 45 56 41 4C 55 41 54 45 00 39 40 C0 1D 3C 49
-3B 49 3A 49 3D 15 B0 12 2A 44 46 4B AE 4B B2 41
-C4 1D B2 41 C2 1D B2 41 C0 1D 3D 41 30 4D 85 12
-BE 1D 08 45 04 51 55 49 54 00 82 43 08 18 31 40
-E0 1C B2 40 00 1C 00 1C 82 43 BE 1D B0 12 2A 44
-04 48 8C 47 42 4B 82 47 46 4B A4 44 0C 45 1E 48
-0C 73 74 61 63 6B 20 65 6D 70 74 79 21 00 40 4C
-14 48 30 FF A0 4A 26 45 1E 48 0A 46 52 41 4D 20
-66 75 6C 6C 21 00 40 4C 3C 46 E0 4B C2 4A 05 41
-42 4F 52 54 3F 40 80 1C D0 3F 1E 4C 86 41 42 4F
-52 54 22 00 87 12 38 48 14 48 40 4C B0 4A 2A 44
-8F 93 02 00 03 20 2F 52 3E 4F 30 4D B0 12 C8 51
-B0 12 B6 46 92 C3 DC 05 38 40 AA 0A 39 42 03 43
-19 83 FD 23 18 83 FA 23 92 B3 DC 05 F3 23 87 12
-42 51 14 48 DE 1D EA 44 AC 47 1E 48 04 1B 5B 37
-6D 00 D6 47 58 44 40 46 9A 4C 04 48 1E 48 05 6C
-69 6E 65 3A D6 47 D0 44 24 46 D6 47 1E 48 04 1B
-5B 30 6D 00 D6 47 24 4C 00 00 83 5B 27 5D 87 12
-C0 4C 14 48 14 48 B0 4A B0 4A 2A 44 E8 48 01 27
-87 12 42 4B 80 48 EE 48 40 46 CE 4C 2A 44 7A 4B
-32 45 81 5C 92 42 C0 1D C4 1D 30 4D AA 4C 81 5B
-82 43 BE 1D 30 4D D2 4C 01 5D B2 43 BE 1D 30 4D
-BE 4F 02 00 3E 4F 30 4D 9A 4A 82 49 53 00 87 12
-BE 4B EA 44 40 46 12 4D AE 4C 14 48 F0 4C B0 4A
-2A 44 C0 4C F0 4C 2A 44 FA 4C 09 49 4D 4D 45 44
-49 41 54 45 1A 42 B6 1D FA D0 80 00 00 00 30 4D
-C4 4B 88 50 4F 53 54 50 4F 4E 45 00 87 12 42 4B
-80 48 EE 48 58 44 40 46 CE 4C 0C 45 40 46 5C 4D
-14 48 14 48 B0 4A B0 4A 14 48 B0 4A B0 4A 2A 44
-DE 4C 81 3B 82 93 BE 1D B5 27 87 12 14 48 2A 44
-B0 4A FA 4D E0 4C 2A 44 62 4D 07 3A 4E 4F 4E 41
-4D 45 30 12 A0 4D 2F 83 8F 4E 00 00 1E 42 C6 1D
-1E B3 0E 63 0A 4E 39 40 00 02 38 40 02 02 21 3C
-BA 40 87 12 FC FF A2 83 C6 1D B2 43 BE 1D 30 4D
-7A 4D 01 3A 30 12 A0 4D 92 B3 C6 1D A2 63 C6 1D
-87 12 42 4B 80 48 C8 4D 3D 41 08 4E 7A 4E 5A D3
-5A 53 0A 58 19 42 DA 1D 6E 4E 3E F0 1E 00 09 5E
-3E 4F 82 48 B6 1D 82 49 B8 1D 82 4A BA 1D 82 4F
-BC 1D 2A 52 82 4A C6 1D 30 41 82 9F BC 1D 09 20
-18 42 B6 1D 19 42 B8 1D A8 49 FE FF 89 48 00 00
-30 4D 87 12 1E 48 0F 73 74 61 63 6B 20 6D 69 73
-6D 61 74 63 68 21 4C 4C 90 4B 05 44 45 46 45 52
-B0 12 B8 4D BA 40 30 40 FC FF BA 40 AE 4D FE FF
-E3 3F 1E 4B 06 43 52 45 41 54 45 00 B0 12 B8 4D
-BA 40 85 12 FC FF 8A 4A FE FF D6 3F 2A 4E 05 44
-4F 45 53 3E 1A 42 BA 1D BA 40 84 12 00 00 8A 4D
-02 00 3D 41 30 4D 4E 49 05 3E 42 4F 44 59 2E 52
-30 4D 44 4E 04 43 4F 44 45 00 B0 12 B8 4D A2 82
-C6 1D 87 12 D2 50 AC 50 2A 44 84 4E 07 43 4F 44
-45 4E 4E 4D B0 12 86 4D F2 3F 00 00 07 45 4E 44
-43 4F 44 45 87 12 E0 50 FA 4D 2A 44 2C 4C 03 41
-53 4D B2 40 B0 50 DA 1D E0 3F AC 4E 06 45 4E 44
-41 53 4D 00 87 12 B4 4E F4 50 2A 44 00 00 05 43
-4F 4C 4F 4E 1A 42 C6 1D BA 40 87 12 00 00 A2 53
-C6 1D B2 43 BE 1D 30 40 E0 50 00 00 05 4C 4F 32
-48 49 1A 42 C6 1D BA 40 B0 12 00 00 BA 40 2A 44
-02 00 A2 52 C6 1D ED 3F 1A 4D 85 48 49 32 4C 4F
-87 12 A0 4A 4A 4F B0 4A E0 4C D2 50 AC 50 2A 44
-1A 4F 82 49 46 00 2F 83 8F 4E 00 00 1E 42 C6 1D
-A2 52 C6 1D BE 40 40 46 00 00 2E 53 30 4D 5E 4E
-84 45 4C 53 45 00 A2 52 C6 1D 1A 42 C6 1D BA 40
-3C 46 FC FF 8E 4A 00 00 2A 83 0E 4A 30 4D D0 47
-84 54 48 45 4E 00 9E 42 C6 1D 00 00 3E 4F 30 4D
-9C 4E 85 42 45 47 49 4E 30 40 A0 4A 70 4F 85 55
-4E 54 49 4C 39 40 40 46 A2 52 C6 1D 1A 42 C6 1D
-8A 49 FC FF 8A 4E FE FF 3E 4F 30 4D BE 4E 85 41
-47 41 49 4E 39 40 3C 46 EF 3F 7A 48 85 57 48 49
-4C 45 87 12 36 4F 76 44 2A 44 34 48 86 52 45 50
-45 41 54 00 87 12 B4 4F 76 4F 2A 44 50 4F 82 44
-4F 00 2F 83 8F 4E 00 00 A2 53 C6 1D 1E 42 C6 1D
-BE 40 54 46 FE FF A2 53 00 1C 1A 42 00 1C 8A 43
-00 00 30 4D E2 4A 84 4C 4F 4F 50 00 39 40 76 46
-A2 52 C6 1D 1A 42 C6 1D 8A 49 FC FF 8A 4E FE FF
-1E 42 00 1C A2 83 00 1C 2E 4E 0E 93 03 24 8E 4A
-00 00 F6 3F 3E 4F 30 4D 90 46 85 2B 4C 4F 4F 50
-39 40 64 46 E5 3F 06 50 04 4D 4F 56 45 00 0A 4E
-38 4F 39 4F 3E 4F 0A 93 11 24 08 99 0F 24 06 2C
-F8 49 00 00 18 53 1A 83 FB 23 30 4D 08 5A 09 5A
-19 83 18 83 E8 49 00 00 1A 83 FA 23 30 4D 14 48
-CA 1D F2 44 2A 44 84 12 7E 50 AE 4F 4A 53 DE 4F
-BE 4C 32 4F 3A 50 5E 54 64 48 66 51 80 51 8E 4F
-00 52 00 00 30 54 E8 4C 78 4E 00 00 84 12 7E 50
-88 5B 7A 5B 30 59 52 5A F6 58 00 00 6C 5B 00 00
-EC 58 96 5B 4E 59 8C 59 36 57 00 00 00 00 2E 5A
-AA 50 3A 40 0C 00 39 40 CA 1D 38 40 CC 1D C6 3F
-3A 40 0E 00 39 40 CC 1D 38 40 CA 1D B9 3F 82 43
-CC 1D 30 4D 92 42 CA 1D DA 1D 30 4D 86 50 EE 50
-F4 50 04 51 3A 4E 82 4A C8 1D 2E 4E 82 4E C6 1D
-3D 40 10 00 09 4A 08 49 29 83 18 48 FE FF 0E 98
-FC 2B 89 48 00 00 1D 83 F6 23 2A 4A 0A 93 F0 23
-3E 4F 3D 41 30 4D 32 4D 09 50 57 52 5F 53 54 41
-54 45 84 12 FC 50 D0 50 A2 5B CC 4F 09 52 53 54
-5F 53 54 41 54 45 92 42 0E 18 46 51 92 42 0C 18
-48 51 EF 3F 38 51 08 50 57 52 5F 48 45 52 45 00
-92 42 C8 1D 46 51 92 42 C6 1D 48 51 30 4D 4C 51
-08 52 53 54 5F 48 45 52 45 00 92 42 C8 1D 0E 18
-92 42 C6 1D 0C 18 EC 3F BC 4F 04 57 49 50 45 00
-39 40 10 00 29 83 B9 43 80 FF FC 23 B2 40 E0 46
-DE 46 B2 40 0A 52 08 52 B2 40 D0 50 0E 18 B2 40
-A2 5B 0C 18 30 12 56 51 B2 40 86 47 84 47 B2 40
-08 48 06 48 B2 40 98 46 96 46 B2 40 18 00 0A 18
-37 40 1A 44 36 40 92 44 35 40 0E 44 34 40 00 44
-B2 40 0A 00 DC 1D B2 40 20 00 B4 1D 30 41 9A 51
-04 57 41 52 4D 00 30 40 0A 52 3D 40 3E 52 92 C3
-30 01 1E 42 08 18 0E 93 11 24 D2 B3 01 02 02 20
-3E E3 1E 53 F2 D0 03 00 0D 02 3E 90 0A 00 B8 27
-3E 90 16 00 B5 2F 2E 93 84 27 8D 2F 30 4D 1E 48
-06 0D 1B 5B 37 6D 23 00 D6 47 34 46 1E 48 19 46
-61 73 74 46 6F 72 74 68 20 C2 A9 4A 2E 4D 2E 54
-68 6F 6F 72 65 6E 73 20 D6 47 14 48 30 FF A0 4A
-B8 44 24 46 1E 48 0A 62 79 74 65 73 20 66 72 65
-65 00 3C 46 9A 4C 82 4F 04 43 4F 4C 44 00 92 B3
-CA 05 FD 23 B2 40 04 A5 20 01 3E 52 B2 40 88 5A
-5C 01 B2 40 FE FF 02 02 B2 D3 06 02 B2 D3 26 02
-B2 40 FF BF 22 02 E2 D3 25 02 F2 43 22 03 F2 D3
-26 03 F2 40 A5 00 61 01 82 43 62 01 82 43 66 01
-39 40 10 00 B2 40 33 00 64 01 D2 43 61 01 92 D2
-9E 01 08 18 38 40 59 14 18 83 FE 23 19 83 FA 23
-B2 D2 B0 01 F2 D0 10 00 2A 03 F2 C0 40 00 A1 04
-39 40 00 08 29 83 89 43 00 1C FC 23 39 40 34 00
-29 83 B9 40 9C 52 CC FF FB 23 B2 40 26 47 F0 FF
-B2 40 81 00 C0 05 92 42 02 18 C6 05 92 42 04 18
-C8 05 92 C3 C0 05 92 D3 DA 05 3F 40 80 1C 31 40
-E0 1C 30 12 06 52 49 3F 88 52 07 43 4F 4D 50 41
-52 45 0C 4E 38 4F 3B 4F 39 4F 0E 4B 0E 5C 0C 24
-1B 83 07 30 1C 83 07 30 19 53 F9 98 FF FF F5 27
-02 2C 3E 43 30 4D 1E 43 30 4D B2 4D 86 5B 54 48
-45 4E 5D 00 30 4D 7C 53 86 5B 45 4C 53 45 5D 00
-87 12 14 48 00 00 C6 44 42 4B 80 48 24 4B 34 44
-40 46 F2 53 44 44 1E 48 06 5B 54 48 45 4E 5D 00
-52 53 4A 46 C2 53 F8 47 D0 44 58 44 4A 46 98 53
-2A 44 44 44 1E 48 06 5B 45 4C 53 45 5D 00 52 53
-4A 46 E0 53 F8 47 D0 44 58 44 4A 46 96 53 2A 44
-1E 48 04 5B 49 46 5D 00 52 53 4A 46 98 53 3C 46
-96 53 F8 47 1E 48 05 0D 0A 6B 6F 20 D6 47 8C 47
-32 4B 3C 46 98 53 88 53 84 5B 49 46 5D 00 0E 93
-3E 4F BE 27 30 4D 08 54 89 5B 44 45 46 49 4E 45
-44 5D 87 12 42 4B 80 48 EE 48 6A 44 2A 44 18 54
-8B 5B 55 4E 44 45 46 49 4E 45 44 5D 87 12 42 4B
-80 48 EE 48 6A 44 00 45 2A 44 4C 54 3D 41 B2 4E
-0E 18 A2 4E 0C 18 3E 4F 30 40 56 51 48 50 06 4D
-41 52 4B 45 52 00 B0 12 B8 4D BA 40 84 12 FC FF
-BA 40 4A 54 FE FF 9A 42 C8 1D 00 00 28 83 8A 48
-02 00 A2 52 C6 1D 30 40 00 4E 1C 15 B0 12 2A 44
-80 48 EE 48 4A 46 A0 54 AA 49 40 46 CE 4C BA 54
-A2 54 39 4E 39 80 86 12 08 24 19 53 02 20 2E 4E
-04 3C 2E 53 19 53 01 24 2E 82 1B 17 30 41 3E 40
-28 00 B0 12 8A 54 19 42 C6 1D A2 53 C6 1D 89 4E
-00 00 3E 40 29 00 1C 15 12 12 C4 1D 92 53 C4 1D
-B0 12 2A 44 80 48 AA 49 40 46 F8 54 EE 54 21 53
-3E 90 10 00 7D 2D E1 2B FA 54 B2 41 C4 1D DD 3F
-87 12 42 4B 74 48 08 55 0C 43 1B 42 C6 1D A2 53
-C6 1D 6A 4E 3E 4F 7A 90 23 00 27 20 92 53 C4 1D
-B0 12 8A 54 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 C6 1D A2 53 C6 1D
-89 4E 00 00 3E 4F 3D 41 30 4D 7A 90 26 00 07 20
-3C 40 10 02 92 53 C4 1D B0 12 8A 54 ED 3F 7A 90
-40 00 16 20 3C 40 20 00 92 53 C4 1D B0 12 D6 54
-0C 20 3C 50 10 00 3E 40 2B 00 B0 12 D6 54 92 92
-C0 1D C4 1D 02 24 92 53 C4 1D 8E 10 0C 5E DA 3F
-B0 12 D6 54 FA 23 3C 50 10 00 B0 12 BE 54 EF 3F
-0C 43 1B 42 C6 1D A2 53 C6 1D 87 12 42 4B 74 48
-D2 55 FE 90 26 00 00 00 3E 40 20 00 03 20 3C 50
-82 00 C8 3F B0 12 D6 54 E1 23 3C 50 80 00 B0 12
-BE 54 DC 3F D6 46 04 52 45 54 49 00 87 12 14 48
-00 13 B0 4A 2A 44 14 48 2C 00 00 55 CA 55 10 56
-09 4B 2E 4E 0E DC A4 3F FC 4E 03 4D 4F 56 84 12
-06 56 00 40 1A 56 05 4D 4F 56 2E 42 84 12 06 56
-40 40 00 00 03 41 44 44 84 12 06 56 00 50 34 56
-05 41 44 44 2E 42 84 12 06 56 40 50 40 56 04 41
-44 44 43 00 84 12 06 56 00 60 4E 56 06 41 44 44
-43 2E 42 00 84 12 06 56 40 60 F6 55 04 53 55 42
-43 00 84 12 06 56 00 70 6C 56 06 53 55 42 43 2E
-42 00 84 12 06 56 40 70 7A 56 03 53 55 42 84 12
-06 56 00 80 8A 56 05 53 55 42 2E 42 84 12 06 56
-40 80 DE 4E 03 43 4D 50 84 12 06 56 00 90 A4 56
-05 43 4D 50 2E 42 84 12 06 56 40 90 CC 4E 04 44
-41 44 44 00 84 12 06 56 00 A0 BE 56 06 44 41 44
-44 2E 42 00 84 12 06 56 40 A0 B0 56 03 42 49 54
-84 12 06 56 00 B0 DC 56 05 42 49 54 2E 42 84 12
-06 56 40 B0 E8 56 03 42 49 43 84 12 06 56 00 C0
-F6 56 05 42 49 43 2E 42 84 12 06 56 40 C0 02 57
-03 42 49 53 84 12 06 56 00 D0 10 57 05 42 49 53
-2E 42 84 12 06 56 40 D0 00 00 03 58 4F 52 84 12
-06 56 00 E0 2A 57 05 58 4F 52 2E 42 84 12 06 56
-40 E0 5C 56 03 41 4E 44 84 12 06 56 00 F0 44 57
-05 41 4E 44 2E 42 84 12 06 56 40 F0 42 4B 00 55
-62 57 0A 4C 3C F0 70 00 8A 10 3A F0 0F 00 0C DA
-4F 3F 96 56 03 52 52 43 84 12 5C 57 00 10 74 57
-05 52 52 43 2E 42 84 12 5C 57 40 10 80 57 04 53
-57 50 42 00 84 12 5C 57 80 10 8E 57 03 52 52 41
-84 12 5C 57 00 11 9C 57 05 52 52 41 2E 42 84 12
-5C 57 40 11 A8 57 03 53 58 54 84 12 5C 57 80 11
-00 00 04 50 55 53 48 00 84 12 5C 57 00 12 C2 57
-06 50 55 53 48 2E 42 00 84 12 5C 57 40 12 1C 57
-04 43 41 4C 4C 00 84 12 5C 57 80 12 1A 53 0E 4A
-87 12 34 46 1E 48 0D 6F 75 74 20 6F 66 20 62 6F
-75 6E 64 73 4C 4C 42 4B 74 48 0C 58 92 53 C4 1D
-3E 40 2C 00 B0 12 2A 44 80 48 AA 49 40 46 CE 4C
-C0 55 24 58 0A 4E 3E 4F 1A 83 E0 33 29 4E 59 0E
-0A 28 08 4C 59 0A 01 28 0C 8A 08 8A 38 90 10 00
-D5 2F 5A 0E 94 3F 2A 92 D1 2F 8A 10 5A 06 8F 3F
-B6 57 04 52 52 43 4D 00 84 12 06 58 50 00 52 58
-04 52 52 41 4D 00 84 12 06 58 50 01 60 58 04 52
-4C 41 4D 00 84 12 06 58 50 02 6E 58 04 52 52 55
-4D 00 84 12 06 58 50 03 D0 57 05 50 55 53 48 4D
-84 12 06 58 00 15 8A 58 04 50 4F 50 4D 00 84 12
-06 58 00 17 7C 58 03 53 3E 3D 85 12 00 38 A6 58
-02 53 3C 00 85 12 00 34 98 58 03 30 3E 3D 85 12
-00 30 BA 58 02 30 3C 00 85 12 00 30 00 00 02 55
-3C 00 85 12 00 2C CE 58 03 55 3E 3D 85 12 00 28
-C4 58 03 30 3C 3E 85 12 00 24 E2 58 02 30 3D 00
-85 12 00 20 00 00 02 49 46 00 1A 42 C6 1D 8A 4E
-00 00 A2 53 C6 1D 0E 4A 30 4D D8 58 04 54 48 45
-4E 00 1A 42 C6 1D 08 4E 3E 4F 09 48 29 53 0A 89
-0A 11 3A 90 00 02 63 2F 88 DA 00 00 30 4D CC 56
-04 45 4C 53 45 00 1A 42 C6 1D BA 40 00 3C 00 00
-A2 53 C6 1D 2F 83 8F 4A 00 00 E3 3F 0C 59 05 55
-4E 54 49 4C 3A 4F 08 4E 3E 4F 19 42 C6 1D 2A 83
-0A 89 0A 11 3A 90 00 FE 42 3B 3A F0 FF 03 08 DA
-89 48 00 00 A2 53 C6 1D 30 4D 50 57 05 41 47 41
-49 4E 0A 4E 38 40 00 3C E7 3F 00 00 05 57 48 49
-4C 45 87 12 FA 58 76 44 2A 44 B0 58 06 52 45 50
-45 41 54 00 87 12 82 59 12 59 2A 44 AE 59 3D 41
-08 4E 3E 4F 2A 48 B2 92 C4 1D CD 2F 98 42 C6 1D
-00 00 30 4D E0 57 03 42 57 31 84 12 AC 59 00 00
-C6 59 03 42 57 32 84 12 AC 59 00 00 D2 59 03 42
-57 33 84 12 AC 59 00 00 EA 59 3D 41 1A 42 C6 1D
-28 4E B2 92 C4 1D 90 2B BA 4F 00 00 A2 53 C6 1D
-8E 4A 00 00 3E 4F 30 4D 00 00 03 46 57 31 84 12
-E8 59 00 00 0A 5A 03 46 57 32 84 12 E8 59 00 00
-16 5A 03 46 57 33 84 12 E8 59 00 00 00 00 05 3F
-47 4F 54 4F 3E 90 00 30 07 24 3E E0 00 04 3E B0
-00 10 02 24 3E E0 00 08 87 12 C0 4C DA 4A 2A 44
-22 5A 04 47 4F 54 4F 00 2F 83 8F 4E 00 00 3E 40
-00 3C F2 3F 87 12 42 4B 74 48 6C 5A 69 4E 3E 4F
-3C 4F 2C 4C 1B 42 C6 1D A2 53 C6 1D 79 90 52 00
-0A 20 B0 12 D6 54 5E 0E 5E 0E 0E DC 8B 4E 00 00
-0E 4B 3D 41 30 4D 79 90 23 00 0D 20 3C C0 40 00
-92 53 C4 1D A2 53 C6 1D B0 12 8A 54 BB 4F 02 00
-3E F0 0F 00 E8 3F 79 90 26 00 03 20 3C E0 E0 00
-EF 3F 3C C0 F0 00 79 90 40 00 12 20 92 53 C4 1D
-B0 12 D6 54 D8 23 3C D0 10 00 3E 40 2B 00 B0 12
-D6 54 92 92 C0 1D C4 1D CE 27 92 53 C4 1D CB 3F
-3C D0 30 00 A2 53 C6 1D 3E 40 28 00 B0 12 8A 54
-BB 4F 02 00 3E 40 29 00 EA 3F 87 12 42 4B 74 48
-12 5B 3B 4F 2C 4B 69 4E 7E 40 20 00 79 90 52 00
-03 20 B0 12 D6 54 B1 3F 3C C0 F0 00 A2 53 C6 1D
-79 90 26 00 09 20 3C D0 60 00 92 53 C4 1D B0 12
-8A 54 BB 4F 02 00 A1 3F 3C D0 70 00 3E 40 28 00
-B0 12 8A 54 BB 4F 02 00 3E 40 29 00 E2 3F 14 48
-2C 00 64 5A 0A 5B 66 44 2A 44 26 56 04 4D 4F 56
-41 00 84 12 5E 5B C0 00 DE 59 04 43 4D 50 41 00
-84 12 5E 5B D0 00 7C 59 04 41 44 44 41 00 84 12
-5E 5B E0 00 9C 59 04 53 55 42 41 00 84 12 5E 5B
-F0 00
+3B 49 3A 49 3D 15 87 12 74 4A DC 4A B2 41 C4 1D
+B2 41 C2 1D B2 41 C0 1D 3D 41 30 4D 85 12 BE 1D
+00 00 04 51 55 49 54 00 82 43 08 18 31 40 E0 1C
+B2 40 00 1C 00 1C 82 43 BE 1D 87 12 2E 46 D4 44
+70 4A C4 45 74 4A 8C 46 BC 46 2E 44 0C 73 74 61
+63 6B 20 65 6D 70 74 79 21 00 6E 4B 24 44 40 FF
+2A 4E C4 46 2E 44 0A 46 52 41 4D 20 66 75 6C 6C
+21 00 6E 4B 48 44 0C 4B 0A 4A 05 41 42 4F 52 54
+3F 40 80 1C D1 3F 4A 4B 86 41 42 4F 52 54 22 00
+0D 12 87 12 AA 47 24 44 6E 4B F8 49 26 47 8F 93
+02 00 03 20 2F 52 3E 4F 30 4D B0 12 96 4F B0 12
+06 45 92 C3 DC 05 18 42 06 18 39 40 20 00 19 83
+FE 23 18 83 FA 23 92 B3 DC 05 F3 23 0D 12 87 12
+10 4F 24 44 DE 1D 02 45 D6 45 2E 44 04 1B 5B 37
+6D 00 00 46 7C 46 4C 44 C8 4B 2E 46 2E 44 05 6C
+69 6E 65 3A 00 46 66 47 00 46 2E 44 04 1B 5B 30
+6D 00 00 46 50 4B 00 00 83 5B 27 5D 0D 12 87 12
+F0 4B 24 44 24 44 F8 49 F8 49 26 47 44 48 01 27
+0D 12 87 12 70 4A F2 47 4A 48 4C 44 00 4C 26 47
+AA 4A D2 46 81 5C 92 42 C0 1D C4 1D 30 4D D8 4B
+81 5B 82 43 BE 1D 30 4D 04 4C 01 5D B2 43 BE 1D
+30 4D F2 4A 88 50 4F 53 54 50 4F 4E 45 00 0D 12
+87 12 70 4A F2 47 4A 48 7C 46 4C 44 00 4C BC 46
+4C 44 50 4C 24 44 24 44 F8 49 F8 49 24 44 F8 49
+F8 49 26 47 40 47 09 49 4D 4D 45 44 49 41 54 45
+1A 42 B6 1D FA D0 80 00 00 00 30 4D 10 4C 01 3A
+30 12 B8 4C 92 B3 C6 1D A2 63 C6 1D 0D 12 87 12
+70 4A F2 47 86 4C 3D 41 08 4E 7A 4E 5A D3 5A 53
+0A 58 19 42 DA 1D 6E 4E 3E F0 1E 00 09 5E 3E 4F
+82 48 B6 1D 82 49 B8 1D 82 4A BA 1D 82 4F BC 1D
+2A 52 82 4A C6 1D 30 41 BA 40 0D 12 FC FF BA 40
+87 12 FE FF B2 43 BE 1D 30 4D 6E 4C 07 3A 4E 4F
+4E 41 4D 45 30 12 B8 4C 2F 83 8F 4E 00 00 1E 42
+C6 1D 1E B3 0E 63 0A 4E 39 40 10 02 38 40 12 02
+D7 3F 82 9F BC 1D 09 20 18 42 B6 1D 19 42 B8 1D
+A8 49 FE FF 89 48 00 00 30 4D 0D 12 87 12 2E 44
+0F 73 74 61 63 6B 20 6D 69 73 6D 61 74 63 68 21
+7A 4B CC 4C 81 3B 82 93 BE 1D 6D 27 0D 12 87 12
+24 44 26 47 F8 49 F2 4C 12 4C 26 47 5C 4A 06 43
+52 45 41 54 45 00 B0 12 74 4C BA 40 85 12 FC FF
+8A 4A FE FF D5 3F C0 4A 05 44 4F 45 53 3E 1A 42
+BA 1D BA 40 84 12 00 00 8A 4D 02 00 3D 41 30 4D
+3E 4D 04 43 4F 44 45 00 B0 12 74 4C A2 82 C6 1D
+0D 12 87 12 8A 4E 64 4E 26 47 72 4D 07 43 4F 44
+45 4E 4E 4D 30 12 7C 4D 9F 3F 00 00 07 45 4E 44
+43 4F 44 45 0D 12 87 12 F2 4C A4 4E 26 47 58 4B
+03 41 53 4D B2 40 68 4E DA 1D DE 3F 9C 4D 06 45
+4E 44 41 53 4D 00 0D 12 87 12 A4 4D C2 4E 26 47
+00 00 05 43 4F 4C 4F 4E 1A 42 C6 1D BA 40 0D 12
+00 00 BA 40 87 12 02 00 A2 52 C6 1D B2 43 BE 1D
+30 40 A4 4E 00 00 05 4C 4F 32 48 49 A2 83 C6 1D
+1A 42 C6 1D EE 3F 56 4C 85 48 49 32 4C 4F 0D 12
+87 12 2A 4E 1E 4E F8 49 12 4C 80 4D 26 47 2E 53
+30 4D 8C 4D 85 42 45 47 49 4E 2F 83 8F 4E 00 00
+1E 42 C6 1D 30 4D 24 44 CA 1D AE 46 26 47 84 12
+36 4E B0 4D 5A 50 58 4D EE 4B 08 4E 42 46 20 4A
+D8 47 34 4F 4E 4F 62 47 CE 4F 00 00 E2 51 1A 4C
+AA 48 00 00 84 12 36 4E 14 57 7A 57 C8 56 CA 57
+8E 56 00 00 BE 53 00 00 84 56 36 57 E6 56 24 57
+CE 54 00 00 00 00 E6 57 62 4E 3A 40 0C 00 39 40
+D6 1D 08 49 28 53 19 83 18 83 E8 49 00 00 1A 83
+FA 23 30 4D 3A 40 0E 00 38 40 CA 1D 09 48 29 53
+F8 49 00 00 18 53 1A 83 FB 23 30 4D 82 43 CC 1D
+30 4D 92 42 CA 1D DA 1D 30 4D 3E 4E BC 4E C2 4E
+D2 4E 3A 4E 82 4A C8 1D 2E 4E 82 4E C6 1D 3D 40
+10 00 09 4A 08 49 29 83 18 48 FE FF 0E 98 FC 2B
+89 48 00 00 1D 83 F6 23 2A 4A 0A 93 F0 23 3E 4F
+3D 41 30 4D 24 4C 09 50 57 52 5F 53 54 41 54 45
+84 12 CA 4E 88 4E 02 58 A6 47 09 52 53 54 5F 53
+54 41 54 45 92 42 0E 18 14 4F 92 42 0C 18 16 4F
+EF 3F 06 4F 08 50 57 52 5F 48 45 52 45 00 92 42
+C8 1D 14 4F 92 42 C6 1D 16 4F 30 4D 1A 4F 08 52
+53 54 5F 48 45 52 45 00 92 42 C8 1D 0E 18 92 42
+C6 1D 0C 18 EC 3F EC 47 04 57 49 50 45 00 39 40
+10 00 29 83 B9 43 80 FF FC 23 B2 40 04 44 02 44
+B2 40 D8 4F D6 4F B2 40 88 4E 0E 18 B2 40 02 58
+0C 18 30 12 24 4F B2 40 C8 45 C6 45 B2 40 32 46
+30 46 B2 40 4A 46 48 46 B2 40 18 00 0A 18 37 40
+26 47 36 40 9C 46 35 40 FA 44 34 40 EC 44 B2 40
+0A 00 DC 1D B2 40 20 00 B4 1D 30 41 68 4F 04 57
+41 52 4D 00 30 40 D8 4F 3D 40 10 50 92 C3 30 01
+1E 42 08 18 0E 93 13 24 D2 B3 01 02 02 20 3E E3
+1E 53 F2 D0 03 00 0D 02 92 D3 DA 05 3E 90 0A 00
+B6 27 3E 90 16 00 B3 2F 2E 93 82 27 8B 2F 30 4D
+2E 44 07 0D 0A 1B 5B 37 6D 23 00 46 9C 47 2E 44
+19 46 61 73 74 46 6F 72 74 68 20 C2 A9 4A 2E 4D
+2E 54 68 6F 6F 72 65 6E 73 20 00 46 24 44 40 FF
+2A 4E A6 46 66 47 2E 44 0A 62 79 74 65 73 20 66
+72 65 65 00 48 44 C8 4B 24 4E 04 43 4F 4C 44 00
+92 B3 CA 05 FD 23 B2 40 04 A5 20 01 31 40 E0 1C
+B2 40 88 5A 5C 01 B2 40 FE FF 02 02 B2 D3 06 02
+B2 D3 26 02 B2 40 FF BF 22 02 E2 D3 25 02 F2 43
+22 03 F2 D3 26 03 F2 40 A5 00 61 01 82 43 62 01
+82 43 66 01 39 40 10 00 B2 40 33 00 64 01 D2 43
+61 01 92 D2 9E 01 08 18 38 40 59 14 18 83 FE 23
+19 83 FA 23 B2 D2 B0 01 F2 D0 10 00 2A 03 F2 C0
+40 00 A1 04 39 40 00 08 29 83 89 43 00 1C FC 23
+B0 12 0E 44 B2 40 81 00 C0 05 92 42 02 18 C6 05
+92 42 04 18 C8 05 92 C3 C0 05 3F 40 80 1C 30 12
+D4 4F 52 3F 24 4D 86 5B 54 48 45 4E 5D 00 30 4D
+0C 4E 38 4F 3B 4F 39 4F 0E 4B 0E 5C 10 24 1B 83
+06 30 1C 83 04 30 19 53 F9 98 FF FF F5 27 2D 4D
+3E 4F 30 4D 2F 53 9F 83 00 00 F9 23 2F 53 2D 53
+F7 3F 06 51 86 5B 45 4C 53 45 5D 00 0D 12 87 12
+24 44 00 00 AA 46 70 4A F2 47 62 4A 68 46 4C 44
+9E 51 70 46 2E 44 06 5B 54 48 45 4E 5D 00 10 51
+78 51 34 51 56 51 26 47 70 46 2E 44 06 5B 45 4C
+53 45 5D 00 10 51 8E 51 34 51 54 51 26 47 2E 44
+04 5B 49 46 5D 00 10 51 56 51 48 44 54 51 22 46
+2E 44 05 0D 0A 6B 6F 20 00 46 D4 44 C4 44 48 44
+56 51 44 51 84 5B 49 46 5D 00 0E 93 3E 4F C6 27
+30 4D 2F 53 30 4D B4 51 89 5B 44 45 46 49 4E 45
+44 5D 0D 12 87 12 70 4A F2 47 4A 48 C2 51 26 47
+C8 51 8B 5B 55 4E 44 45 46 49 4E 45 44 5D 0D 12
+87 12 D2 51 F6 51 3D 41 30 40 B6 46 38 40 C0 1D
+0A 4E 39 48 2E 48 09 5E 1E 52 C4 1D 09 9E 03 24
+7A 9E FC 27 1E 83 0A 4E 2A 88 82 4A C4 1D 30 4D
+1C 15 87 12 F2 47 4A 48 42 44 34 52 06 49 4C 44
+00 4C 4E 52 36 52 39 4E 39 80 86 12 08 24 19 53
+02 20 2E 4E 04 3C 2E 53 19 53 01 24 2E 82 1B 17
+30 41 3E 40 28 00 B0 12 20 52 19 42 C6 1D A2 53
+C6 1D 89 4E 00 00 3E 40 29 00 1C 15 12 12 C4 1D
+92 53 C4 1D 87 12 F2 47 06 49 4C 44 8A 52 80 52
+21 53 3E 90 10 00 80 2D E2 2B 8C 52 B2 41 C4 1D
+DE 3F 0D 12 87 12 70 4A FC 51 9C 52 0C 43 1B 42
+C6 1D A2 53 C6 1D 6A 4E 3E 4F 7A 90 23 00 27 20
+92 53 C4 1D B0 12 20 52 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 C6 1D
+A2 53 C6 1D 89 4E 00 00 3E 4F 3D 41 30 4D 7A 90
+26 00 07 20 3C 40 10 02 92 53 C4 1D B0 12 20 52
+ED 3F 7A 90 40 00 16 20 3C 40 20 00 92 53 C4 1D
+B0 12 6A 52 0C 20 3C 50 10 00 3E 40 2B 00 B0 12
+6A 52 92 92 C0 1D C4 1D 02 24 92 53 C4 1D 8E 10
+0C 5E DA 3F B0 12 6A 52 FA 23 3C 50 10 00 B0 12
+52 52 EF 3F 0C 43 1B 42 C6 1D A2 53 C6 1D 0D 12
+87 12 70 4A FC 51 68 53 FE 90 26 00 00 00 3E 40
+20 00 03 20 3C 50 82 00 C7 3F B0 12 6A 52 E0 23
+3C 50 80 00 B0 12 52 52 DB 3F 00 00 04 52 45 54
+49 00 0D 12 87 12 24 44 00 13 F8 49 26 47 24 44
+2C 00 92 52 5E 53 A8 53 09 4B 2E 4E 0E DC A2 3F
+F6 4D 03 4D 4F 56 84 12 9E 53 00 40 B2 53 05 4D
+4F 56 2E 42 84 12 9E 53 40 40 00 00 03 41 44 44
+84 12 9E 53 00 50 CC 53 05 41 44 44 2E 42 84 12
+9E 53 40 50 D8 53 04 41 44 44 43 00 84 12 9E 53
+00 60 E6 53 06 41 44 44 43 2E 42 00 84 12 9E 53
+40 60 8C 53 04 53 55 42 43 00 84 12 9E 53 00 70
+04 54 06 53 55 42 43 2E 42 00 84 12 9E 53 40 70
+12 54 03 53 55 42 84 12 9E 53 00 80 22 54 05 53
+55 42 2E 42 84 12 9E 53 40 80 D2 4D 03 43 4D 50
+84 12 9E 53 00 90 3C 54 05 43 4D 50 2E 42 84 12
+9E 53 40 90 BE 4D 04 44 41 44 44 00 84 12 9E 53
+00 A0 56 54 06 44 41 44 44 2E 42 00 84 12 9E 53
+40 A0 48 54 03 42 49 54 84 12 9E 53 00 B0 74 54
+05 42 49 54 2E 42 84 12 9E 53 40 B0 80 54 03 42
+49 43 84 12 9E 53 00 C0 8E 54 05 42 49 43 2E 42
+84 12 9E 53 40 C0 9A 54 03 42 49 53 84 12 9E 53
+00 D0 A8 54 05 42 49 53 2E 42 84 12 9E 53 40 D0
+00 00 03 58 4F 52 84 12 9E 53 00 E0 C2 54 05 58
+4F 52 2E 42 84 12 9E 53 40 E0 F4 53 03 41 4E 44
+84 12 9E 53 00 F0 DC 54 05 41 4E 44 2E 42 84 12
+9E 53 40 F0 70 4A 92 52 FA 54 0A 4C 3C F0 70 00
+8A 10 3A F0 0F 00 0C DA 4F 3F 2E 54 03 52 52 43
+84 12 F4 54 00 10 0C 55 05 52 52 43 2E 42 84 12
+F4 54 40 10 18 55 04 53 57 50 42 00 84 12 F4 54
+80 10 26 55 03 52 52 41 84 12 F4 54 00 11 34 55
+05 52 52 41 2E 42 84 12 F4 54 40 11 40 55 03 53
+58 54 84 12 F4 54 80 11 00 00 04 50 55 53 48 00
+84 12 F4 54 00 12 5A 55 06 50 55 53 48 2E 42 00
+84 12 F4 54 40 12 B4 54 04 43 41 4C 4C 00 84 12
+F4 54 80 12 1A 53 0E 4A 0D 12 87 12 9C 47 2E 44
+0D 6F 75 74 20 6F 66 20 62 6F 75 6E 64 73 7A 4B
+70 4A FC 51 A6 55 92 53 C4 1D 3E 40 2C 00 87 12
+F2 47 06 49 4C 44 00 4C 54 53 BC 55 0A 4E 3E 4F
+1A 83 E0 33 29 4E 59 0E 0A 28 08 4C 59 0A 01 28
+0C 8A 08 8A 38 90 10 00 D5 2F 5A 0E 94 3F 2A 92
+D1 2F 8A 10 5A 06 8F 3F 4E 55 04 52 52 43 4D 00
+84 12 A0 55 50 00 EA 55 04 52 52 41 4D 00 84 12
+A0 55 50 01 F8 55 04 52 4C 41 4D 00 84 12 A0 55
+50 02 06 56 04 52 52 55 4D 00 84 12 A0 55 50 03
+68 55 05 50 55 53 48 4D 84 12 A0 55 00 15 22 56
+04 50 4F 50 4D 00 84 12 A0 55 00 17 14 56 03 53
+3E 3D 85 12 00 38 3E 56 02 53 3C 00 85 12 00 34
+30 56 03 30 3E 3D 85 12 00 30 52 56 02 30 3C 00
+85 12 00 30 00 00 02 55 3C 00 85 12 00 2C 66 56
+03 55 3E 3D 85 12 00 28 5C 56 03 30 3C 3E 85 12
+00 24 7A 56 02 30 3D 00 85 12 00 20 00 00 02 49
+46 00 1A 42 C6 1D 8A 4E 00 00 A2 53 C6 1D 0E 4A
+30 4D 70 56 04 54 48 45 4E 00 1A 42 C6 1D 08 4E
+3E 4F 09 48 29 53 0A 89 0A 11 3A 90 00 02 63 2F
+88 DA 00 00 30 4D 64 54 04 45 4C 53 45 00 1A 42
+C6 1D BA 40 00 3C 00 00 A2 53 C6 1D 2F 83 8F 4A
+00 00 E3 3F A4 56 05 55 4E 54 49 4C 3A 4F 08 4E
+3E 4F 19 42 C6 1D 2A 83 0A 89 0A 11 3A 90 00 FE
+42 3B 3A F0 FF 03 08 DA 89 48 00 00 A2 53 C6 1D
+30 4D E8 54 05 41 47 41 49 4E 0A 4E 38 40 00 3C
+E7 3F 00 00 05 57 48 49 4C 45 0D 12 87 12 92 56
+82 46 26 47 48 56 06 52 45 50 45 41 54 00 0D 12
+87 12 1A 57 AA 56 26 47 4A 57 3D 41 08 4E 3E 4F
+2A 48 B2 92 C4 1D CB 2F 98 42 C6 1D 00 00 30 4D
+78 55 03 42 57 31 84 12 48 57 00 00 62 57 03 42
+57 32 84 12 48 57 00 00 6E 57 03 42 57 33 84 12
+48 57 00 00 86 57 3D 41 1A 42 C6 1D 28 4E B2 92
+C4 1D 8E 2B BA 4F 00 00 A2 53 C6 1D 8E 4A 00 00
+3E 4F 30 4D 00 00 03 46 57 31 84 12 84 57 00 00
+A6 57 03 46 57 32 84 12 84 57 00 00 B2 57 03 46
+57 33 84 12 84 57 00 00 BE 57 04 47 4F 54 4F 00
+2F 83 8F 4E 00 00 3E 40 00 3C 0D 12 87 12 F0 4B
+18 4A 26 47 00 00 05 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
 @FFFE
-9C 52
+6C 50
 q
index 3229eac..3b6f14d 100644 (file)
 @1800
-10 00 04 00 51 55 40 1F 05 00 18 00 9E 5B D0 50
-2D 01 6B B4 B6 46 C8 46
+10 00 04 00 51 55 40 1F 05 00 18 00 FE 57 88 4E
+2E 01 6B B0 06 45 18 45 D4 4F
 @4400
-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 3A 41 0D 12 0D 4A
-30 4D 00 00 04 45 58 49 54 00 3D 41 30 4D 24 44
-03 44 55 50 2F 83 8F 4E 00 00 30 4D 00 00 04 32
-44 55 50 00 8F 4E FE FF AF 4F FC FF 2F 82 30 4D
-00 00 04 3F 44 55 50 00 0E 93 EC 23 30 4D 30 44
-04 44 52 4F 50 00 3E 4F 30 4D 2F 53 30 4D 3E 44
-04 53 57 41 50 00 2A 4F 8F 4E 00 00 0E 4A 30 4D
-52 44 02 3E 52 00 0E 12 3E 4F 30 4D 70 44 02 52
-3E 00 2F 83 8F 4E 00 00 3E 41 30 4D 60 44 05 44
-45 50 54 48 8F 4E FE FF 3E 40 80 1C 0E 8F 0E 11
-2F 83 30 4D 00 00 01 2D 3E 8F 3E E3 1E 53 30 4D
-00 00 02 31 2B 00 1E 53 30 4D C2 44 02 31 2D 00
-1E 83 30 4D 3E F3 06 34 BF E3 00 00 3E E3 9F 53
-00 00 0E 63 30 4D 00 00 01 40 2E 4E 30 4D E8 44
-01 21 BE 4F 00 00 3E 4F 30 4D CC 44 02 30 3D 00
-1E 83 0E 7E 30 4D FC 44 02 30 3C 00 0E 5E 0E 7E
-3E E3 30 4D 00 00 01 3D 3E 8F FA 27 0E F3 30 4D
-00 00 02 55 3C 00 3E 8F F9 2B 01 24 3E 43 30 4D
-16 45 02 3C 23 00 B2 40 B2 1D B2 1D 30 4D 0B 4E
+30 40 04 44 B0 12 06 45 12 D2 0A 18 F9 3F 39 40
+34 00 29 83 B9 40 6C 50 CC FF FB 23 B2 40 68 45
+F0 FF 30 41 2F 83 8F 4E 00 00 3E 4D 30 4D 2F 82
+8F 4E 02 00 7E 4D 8F 4D 00 00 0D 5E 1D B3 0D 63
+30 4D 0E 93 3E 4F 05 24 2D 4D 30 4D 0E 93 3E 4F
+FB 27 2D 53 30 4D 39 40 00 80 39 8F 08 4E 3E 4F
+08 59 19 15 30 4D 81 5E 00 00 3E 4F 32 B0 00 01
+EB 27 21 52 2D 53 30 4D 91 53 00 00 F7 3F 0B 4E
 1C 4F 02 00 2E 4F 0A 43 34 40 20 00 0E 93 04 20
 04 11 0E 4C 0C 43 09 43 0A 9B 01 28 0A 8B 09 69
 08 68 14 83 07 30 0C 5C 0E 6E 0A 6A F5 2B 0A 8B
-12 D3 F5 3F 34 40 00 44 8F 4A 02 00 8F 49 00 00
-0E 48 30 41 00 00 01 23 1B 42 DC 1D 2C 4F 2F 83
-B0 12 46 45 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 86 45 02 23 53 00 87 12 88 45 C0 45
-2D 83 09 93 E3 23 0E 93 E1 23 3D 41 30 4D B6 45
-02 23 3E 00 9F 42 B2 1D 00 00 3E 40 B2 1D 2E 8F
-30 4D 00 00 04 48 4F 4C 44 00 0A 4E 3E 4F DB 3F
-8E 44 04 53 49 47 4E 00 0E 93 3E 4F 3A 40 2D 00
-D2 33 30 4D 87 12 36 45 34 44 86 44 D4 44 BA 45
-92 44 F8 45 D4 45 D6 47 42 4B 82 47 2A 44 22 45
-02 55 2E 00 08 43 2F 83 8F 4E 00 00 0E 48 EA 3F
-00 00 01 2E 0E 93 F6 37 38 43 F5 3F 2D 4D 30 4D
-0E 93 3E 4F FB 27 2D 53 30 4D 0E 93 3E 4F F6 23
-2D 53 30 4D 39 40 00 80 39 8F 08 4E 3E 4F 08 59
-19 15 30 4D 81 5E 00 00 3E 4F 32 B0 00 01 E6 27
-2D 53 21 52 30 4D 91 53 00 00 F7 3F E4 45 01 49
-2F 83 8F 4E 00 00 2E 41 1E 81 02 00 30 4D 00 00
-03 4B 45 59 30 40 98 46 18 42 CC 05 2F 83 8F 4E
-00 00 B0 12 B6 46 92 B3 DC 05 FD 27 1E 42 CC 05
-B0 12 C8 46 30 4D A2 B3 DC 05 FD 27 B2 40 11 00
-CE 05 E2 C3 23 02 30 41 B2 40 13 00 CE 05 E2 D3
-23 02 30 41 00 00 05 53 4C 45 45 50 30 40 E0 46
-B0 12 B6 46 12 D2 0A 18 F9 3F F0 44 06 41 43 43
-45 50 54 00 3C 40 64 47 3B 40 2E 47 2D 15 0A 4E
-2E 4F 0A 5E 3B 40 0D 00 3C 40 20 00 3D 40 58 47
-92 B3 DC 05 05 24 18 42 CC 05 38 90 0A 00 CB 23
-21 53 3D 15 DB 3F 21 52 3A 17 58 42 CC 05 48 9C
-08 2C 48 9B C9 27 78 92 11 20 2E 9F 0F 24 1E 83
-05 3C 0E 9A 03 24 CE 48 00 00 1E 53 A2 B3 DC 05
-FD 27 82 48 CE 05 30 4D 5A 47 2D 83 92 B3 DC 05
-E4 23 FC 27 82 93 DE 1D 02 24 92 53 DE 1D 3E 8F
-3D 41 B2 40 18 00 0A 18 30 4D 9E 44 04 45 4D 49
-54 00 30 40 86 47 08 4E 3E 4F E0 3F 3F 80 06 00
-8F 4E 04 00 3E 40 54 00 BF 40 3C 1D 00 00 AF 4F
-02 00 A8 3F 7C 47 04 45 43 48 4F 00 B2 40 82 48
-52 47 82 43 DE 1D 30 4D 32 46 06 4E 4F 45 43 48
-4F 00 B2 40 30 4D 52 47 92 43 DE 1D 30 4D 20 46
-04 54 59 50 45 00 0E 93 0F 24 1E 15 3D 40 EC 47
-28 4F 7E 48 8F 48 00 00 2F 83 CB 3F EE 47 2D 83
-91 83 02 00 F5 23 1D 17 2F 53 3E 4F 30 4D D0 45
-02 43 52 00 30 40 08 48 87 12 1E 48 02 0D 0A 00
-D6 47 2A 44 2F 83 8F 4E 00 00 3E 4D 30 4D 2F 82
-8F 4E 02 00 7E 4D 8F 4D 00 00 0D 5E 1D B3 0D 63
-30 4D F2 45 82 53 22 00 82 43 B4 1D 87 12 14 48
-1E 48 B0 4A 14 48 22 00 80 48 4C 48 B2 40 20 00
-B4 1D 6E 4E 1E 53 1E B3 82 6E C6 1D 3D 41 3E 4F
-30 4D BA 47 82 2E 22 00 87 12 38 48 14 48 D6 47
-B0 4A 2A 44 48 43 05 3C 00 00 04 57 4F 52 44 00
-48 4E 19 42 C0 1D 1A 42 C2 1D 09 5A 1A 52 C4 1D
-09 9A 03 24 7E 9A FC 27 1A 83 4E F8 06 20 0E 4A
-1A 82 C2 1D 82 4A C4 1D 30 4D 18 42 C6 1D 3B 40
-60 00 C8 4C 00 00 09 9A 0C 24 7C 4A 4E 9C 09 24
-18 53 4B 9C F6 2F 7C 90 7B 00 F3 2F 5C 82 B4 1D
-F0 3F 1A 82 C2 1D 82 4A C4 1D 1E 42 C6 1D 08 8E
-CE 48 00 00 30 4D 00 00 04 46 49 4E 44 00 2F 83
-0C 4E 65 4C 74 40 80 00 3B 40 CA 1D 3E 4B 0E 93
-1E 24 58 4C 01 00 78 F0 1E 00 0E 58 2E 53 1E 4E
-FE FF 0E 93 F3 27 09 4E 78 49 48 C4 48 95 F7 23
-0A 4C FA 99 01 00 F3 23 1A 53 58 83 FA 23 19 B3
-09 63 0C 49 6A 4E 1E 43 4A 93 01 30 2E 83 8F 4C
-00 00 35 40 0E 44 34 40 00 44 30 4D 82 44 07 3E
-4E 55 4D 42 45 52 3C 4F 38 4F 29 4F 2F 82 1B 42
-DC 1D 6A 4C 7A 80 30 00 7A 90 0A 00 05 28 7A 80
-07 00 7A 90 0A 00 12 28 0A 9B 22 C3 0F 2C 82 49
-D0 04 82 48 D2 04 82 4B C8 04 19 42 E4 04 18 42
-E6 04 09 5A 08 63 1C 53 1E 83 E3 23 8F 4C 00 00
-8F 48 02 00 8F 49 04 00 30 4D 32 C0 00 02 1B 42
-DC 1D 0C 43 2D 15 3D 40 F4 49 09 43 08 43 3F 82
-8F 4E 06 00 0C 4E 7E 4C 6A 4C 7A 90 2D 00 04 28
-C9 23 B1 43 02 00 DF 3F 2B 43 7A 80 25 00 07 24
-3B 52 6A 53 04 24 3B 40 10 00 5A 83 BA 23 1C 53
-1E 83 EA 3F F6 49 2F 24 2D 83 7A 90 28 00 CB 27
-32 D0 00 02 7A 90 F7 00 C6 27 7A 90 F5 00 23 20
-0A 4E 09 43 8F 49 02 00 5A 83 09 4A 09 5C 69 49
-79 80 30 00 79 90 0A 00 05 28 79 80 07 00 79 90
-0A 00 0A 28 09 9B 08 2C 8F 49 00 00 0E 4B 2C 15
-B0 12 3E 45 2A 17 E6 3F 9F 4F 04 00 02 00 AF 4F
-04 00 0E 4A 4E 93 2B 17 0E 4C 82 4B DC 1D 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 7E 46 04 48 45 52 45 00
-2F 83 8F 4E 00 00 1E 42 C6 1D 30 4D B6 44 01 2C
-1A 42 C6 1D 8A 4E 00 00 A2 53 C6 1D 3E 4F 30 4D
-EC 46 05 41 4C 4C 4F 54 82 5E C6 1D 3E 4F 30 4D
-A6 47 07 45 58 45 43 55 54 45 0A 4E 3E 4F 00 4A
-AE 4A 87 4C 49 54 45 52 41 4C 82 93 BE 1D 0C 24
-1A 42 C6 1D A2 52 C6 1D BA 40 14 48 00 00 8A 4E
-02 00 3E 4F 32 B0 00 02 32 C0 00 02 06 24 19 4A
-02 00 8A 4E 02 00 0E 49 EB 3F 30 4D 00 48 05 43
-4F 55 4E 54 2F 83 1E 53 8F 4E 00 00 5E 4E FF FF
-30 4D 82 4E C0 1D B2 4F C2 1D 3E 4F 82 43 C4 1D
-30 4D 85 12 20 00 87 12 32 4B 42 4B 80 48 50 4B
-3D 40 58 4B CC 22 82 3E 5A 4B 0A 4E 3E 4F 3D 40
-70 4B 23 27 3D 40 4A 4B 1A E2 BE 1D A1 27 B5 23
-72 4B 3E 4F 3D 40 4A 4B B8 23 DE 53 00 00 68 4E
-08 5E F8 40 3F 00 00 00 3D 40 26 4E CB 3F D2 4A
+12 D3 F5 3F 34 40 EC 44 8F 4A 02 00 8F 49 00 00
+0E 48 30 41 82 4E C0 1D B2 4F C2 1D 3E 4F 82 43
+C4 1D 30 4D 3F 80 06 00 8F 4E 04 00 3E 40 54 00
+BF 40 3C 1D 00 00 AF 4F 02 00 24 3C 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 A2 B3 DC 05 FD 27 B2 40 11 00
+CE 05 E2 C3 23 02 30 41 A2 B3 DC 05 FD 27 B2 40
+13 00 CE 05 E2 D3 23 02 30 41 00 00 06 41 43 43
+45 50 54 00 3C 40 A6 45 3B 40 70 45 2D 15 0A 4E
+2E 4F 0A 5E 3B 40 0D 00 3C 40 20 00 3D 40 9A 45
+92 B3 DC 05 05 24 18 42 CC 05 38 90 0A 00 D3 23
+21 53 3D 15 30 40 00 44 21 52 3A 17 58 42 CC 05
+48 9C 08 2C 48 9B D0 27 78 92 11 20 2E 9F 0F 24
+1E 83 05 3C 0E 9A 03 24 CE 48 00 00 1E 53 A2 B3
+DC 05 FD 27 82 48 CE 05 30 4D 9C 45 2D 83 92 B3
+DC 05 E4 23 FC 27 82 93 DE 1D 02 24 92 53 DE 1D
+3E 8F 3D 41 B2 40 18 00 0A 18 30 4D 00 00 04 45
+4D 49 54 00 30 40 C8 45 08 4E 3E 4F E0 3F BE 45
+04 45 43 48 4F 00 B2 40 82 48 94 45 82 43 DE 1D
+30 4D 00 00 06 4E 4F 45 43 48 4F 00 B2 40 30 4D
+94 45 92 43 DE 1D 30 4D 00 00 04 54 59 50 45 00
+0E 93 0F 24 1E 15 3D 40 16 46 28 4F 7E 48 8F 48
+00 00 2F 83 D7 3F 18 46 2D 83 91 83 02 00 F5 23
+1D 17 2F 53 3E 4F 30 4D 00 00 02 43 52 00 30 40
+32 46 0D 12 87 12 2E 44 02 0D 0A 00 00 46 26 47
+00 00 03 4B 45 59 30 40 4A 46 18 42 CC 05 2F 83
+8F 4E 00 00 B0 12 06 45 92 B3 DC 05 FD 27 1E 42
+CC 05 B0 12 18 45 30 4D 2F 83 8F 4E 00 00 30 4D
+8F 4E FE FF AF 4F FC FF 2F 82 30 4D 0E 93 F4 23
+30 4D 2A 4F 8F 4E 00 00 0E 4A 30 4D 8F 4E FE FF
+3E 40 80 1C 0E 8F 0E 11 2F 83 30 4D 2F 83 8F 4E
+00 00 3E 41 30 4D 3E 8F 3E E3 1E 53 30 4D BE 4F
+00 00 3E 4F 30 4D 1E 83 0E 7E 30 4D 0E 5E 0E 7E
+3E E3 30 4D 3E 8F 03 24 3E 43 01 2C 0E F3 30 4D
+00 00 02 3C 23 00 B2 40 B2 1D B2 1D 30 4D 2A 46
+01 23 1B 42 DC 1D 2C 4F 2F 83 B0 12 86 44 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 E0 46
+02 23 53 00 0D 12 87 12 E2 46 1C 47 2D 83 09 93
+E2 23 0E 93 E0 23 3D 41 30 4D 10 47 02 23 3E 00
+9F 42 B2 1D 00 00 3E 40 B2 1D 2E 8F 30 4D 00 00
+04 48 4F 4C 44 00 4A 4E 3E 4F DA 3F 00 00 04 53
+49 47 4E 00 0E 93 3E 4F 7A 40 2D 00 D1 33 30 4D
+FA 45 02 55 2E 00 08 43 2F 83 8F 4E 00 00 0E 48
+0D 12 0E 12 3E F3 06 34 BF E3 00 00 3E E3 9F 53
+00 00 0E 63 87 12 D6 46 14 47 9C 46 54 47 30 47
+00 46 70 4A C4 45 26 47 E4 45 01 2E 0E 93 E3 37
+38 43 E2 3F 4E 47 82 53 22 00 82 43 B4 1D 0D 12
+87 12 24 44 2E 44 F8 49 24 44 22 00 F2 47 C0 47
+B2 40 20 00 B4 1D 6E 4E 1E 53 1E B3 82 6E C6 1D
+3D 41 3E 4F 30 4D 9A 47 82 2E 22 00 0D 12 87 12
+AA 47 24 44 00 46 F8 49 26 47 00 00 04 57 4F 52
+44 00 3C 40 C0 1D 39 4C 3A 4C 09 5A 3A 5C 28 4C
+09 9A 15 24 7E 9A FC 27 1A 83 3B 40 60 00 C8 4C
+00 00 09 9A 0C 24 7C 4A 4E 9C 09 24 18 53 4B 9C
+F6 2F 7C 90 7B 00 F3 2F 5C 82 B4 1D F0 3F 1A 82
+C2 1D 82 4A C4 1D 1E 42 C6 1D 08 8E CE 48 00 00
+30 4D 00 00 04 46 49 4E 44 00 2F 83 0C 4E 65 4C
+74 40 80 00 3B 40 CA 1D 3E 4B 0E 93 1E 24 58 4C
+01 00 78 F0 1E 00 0E 58 2E 53 1E 4E FE FF 0E 93
+F3 27 09 4E 78 49 48 C4 48 95 F7 23 0A 4C FA 99
+01 00 F3 23 1A 53 58 83 FA 23 19 B3 09 63 0C 49
+6A 4E 1E 43 4A 93 01 30 2E 83 8F 4C 00 00 35 40
+FA 44 34 40 EC 44 30 4D 00 00 07 3E 4E 55 4D 42
+45 52 3C 4F 38 4F 29 4F 2F 82 1B 42 DC 1D 6A 4C
+7A 80 30 00 7A 90 0A 00 05 28 7A 80 07 00 7A 90
+0A 00 12 28 0A 9B 22 C3 0F 2C 82 49 D0 04 82 48
+D2 04 82 4B C8 04 19 42 E4 04 18 42 E6 04 09 5A
+08 63 1C 53 1E 83 E3 23 8F 4C 00 00 8F 48 02 00
+8F 49 04 00 30 4D 32 C0 00 02 1B 42 DC 1D 0C 43
+2D 15 3D 40 50 49 09 43 08 43 3F 82 8F 4E 06 00
+0C 4E 7E 4C 6A 4C 7A 90 2D 00 04 28 C9 23 B1 43
+02 00 0B 3C 2B 43 7A 80 25 00 07 24 3B 52 6A 53
+04 24 3B 40 10 00 5A 83 BA 23 1C 53 1E 83 EA 3F
+52 49 2F 24 2D 83 7A 90 28 00 CB 27 32 D0 00 02
+7A 90 F7 00 C6 27 7A 90 F5 00 23 20 0A 4E 09 43
+8F 49 02 00 5A 83 09 4A 09 5C 69 49 79 80 30 00
+79 90 0A 00 05 28 79 80 07 00 79 90 0A 00 0A 28
+09 9B 08 2C 8F 49 00 00 0E 4B 2C 15 B0 12 7E 44
+2A 17 E6 3F 9F 4F 04 00 02 00 AF 4F 04 00 0E 4A
+4E 93 2B 17 0E 4C 82 4B DC 1D 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 00 00 01 2C 1A 42 C6 1D 8A 4E 00 00
+A2 53 C6 1D 3E 4F 30 4D 2C 45 05 41 4C 4C 4F 54
+82 5E C6 1D 3E 4F 30 4D 0A 4E 3E 4F 00 4A F6 49
+87 4C 49 54 45 52 41 4C 82 93 BE 1D 0C 24 1A 42
+C6 1D A2 52 C6 1D BA 40 24 44 00 00 8A 4E 02 00
+3E 4F 32 B0 00 02 32 C0 00 02 06 24 19 4A 02 00
+8A 4E 02 00 0E 49 EB 3F 30 4D 2C 47 05 43 4F 55
+4E 54 2F 83 1E 53 8F 4E 00 00 5E 4E FF FF 30 4D
+85 12 20 00 0D 12 87 12 C4 44 70 4A F2 47 80 4A
+3D 40 88 4A E2 22 A4 26 8A 4A 0A 4E 3E 4F 3D 40
+A0 4A 39 27 3D 40 7A 4A 1A E2 BE 1D BD 23 AC 27
+A2 4A 3E 4F 3D 40 7A 4A BF 23 DE 53 00 00 68 4E
+08 5E F8 40 3F 00 00 00 3D 40 20 4D D2 3F D0 45
 08 45 56 41 4C 55 41 54 45 00 39 40 C0 1D 3C 49
-3B 49 3A 49 3D 15 B0 12 2A 44 46 4B AE 4B B2 41
-C4 1D B2 41 C2 1D B2 41 C0 1D 3D 41 30 4D 85 12
-BE 1D 08 45 04 51 55 49 54 00 82 43 08 18 31 40
-E0 1C B2 40 00 1C 00 1C 82 43 BE 1D B0 12 2A 44
-04 48 8C 47 42 4B 82 47 46 4B A4 44 0C 45 1E 48
-0C 73 74 61 63 6B 20 65 6D 70 74 79 21 00 40 4C
-14 48 30 FF A0 4A 26 45 1E 48 0A 46 52 41 4D 20
-66 75 6C 6C 21 00 40 4C 3C 46 E0 4B C2 4A 05 41
-42 4F 52 54 3F 40 80 1C D0 3F 1E 4C 86 41 42 4F
-52 54 22 00 87 12 38 48 14 48 40 4C B0 4A 2A 44
-8F 93 02 00 03 20 2F 52 3E 4F 30 4D B0 12 C8 51
-B0 12 B6 46 92 C3 DC 05 38 40 50 55 39 42 03 43
-19 83 FD 23 18 83 FA 23 92 B3 DC 05 F3 23 87 12
-42 51 14 48 DE 1D EA 44 AC 47 1E 48 04 1B 5B 37
-6D 00 D6 47 58 44 40 46 9A 4C 04 48 1E 48 05 6C
-69 6E 65 3A D6 47 D0 44 24 46 D6 47 1E 48 04 1B
-5B 30 6D 00 D6 47 24 4C 00 00 83 5B 27 5D 87 12
-C0 4C 14 48 14 48 B0 4A B0 4A 2A 44 E8 48 01 27
-87 12 42 4B 80 48 EE 48 40 46 CE 4C 2A 44 7A 4B
-32 45 81 5C 92 42 C0 1D C4 1D 30 4D AA 4C 81 5B
-82 43 BE 1D 30 4D D2 4C 01 5D B2 43 BE 1D 30 4D
-BE 4F 02 00 3E 4F 30 4D 9A 4A 82 49 53 00 87 12
-BE 4B EA 44 40 46 12 4D AE 4C 14 48 F0 4C B0 4A
-2A 44 C0 4C F0 4C 2A 44 FA 4C 09 49 4D 4D 45 44
-49 41 54 45 1A 42 B6 1D FA D0 80 00 00 00 30 4D
-C4 4B 88 50 4F 53 54 50 4F 4E 45 00 87 12 42 4B
-80 48 EE 48 58 44 40 46 CE 4C 0C 45 40 46 5C 4D
-14 48 14 48 B0 4A B0 4A 14 48 B0 4A B0 4A 2A 44
-DE 4C 81 3B 82 93 BE 1D B5 27 87 12 14 48 2A 44
-B0 4A FA 4D E0 4C 2A 44 62 4D 07 3A 4E 4F 4E 41
-4D 45 30 12 A0 4D 2F 83 8F 4E 00 00 1E 42 C6 1D
-1E B3 0E 63 0A 4E 39 40 00 02 38 40 02 02 21 3C
-BA 40 87 12 FC FF A2 83 C6 1D B2 43 BE 1D 30 4D
-7A 4D 01 3A 30 12 A0 4D 92 B3 C6 1D A2 63 C6 1D
-87 12 42 4B 80 48 C8 4D 3D 41 08 4E 7A 4E 5A D3
-5A 53 0A 58 19 42 DA 1D 6E 4E 3E F0 1E 00 09 5E
-3E 4F 82 48 B6 1D 82 49 B8 1D 82 4A BA 1D 82 4F
-BC 1D 2A 52 82 4A C6 1D 30 41 82 9F BC 1D 09 20
-18 42 B6 1D 19 42 B8 1D A8 49 FE FF 89 48 00 00
-30 4D 87 12 1E 48 0F 73 74 61 63 6B 20 6D 69 73
-6D 61 74 63 68 21 4C 4C 90 4B 05 44 45 46 45 52
-B0 12 B8 4D BA 40 30 40 FC FF BA 40 AE 4D FE FF
-E3 3F 1E 4B 06 43 52 45 41 54 45 00 B0 12 B8 4D
-BA 40 85 12 FC FF 8A 4A FE FF D6 3F 2A 4E 05 44
-4F 45 53 3E 1A 42 BA 1D BA 40 84 12 00 00 8A 4D
-02 00 3D 41 30 4D 4E 49 05 3E 42 4F 44 59 2E 52
-30 4D 44 4E 04 43 4F 44 45 00 B0 12 B8 4D A2 82
-C6 1D 87 12 D2 50 AC 50 2A 44 84 4E 07 43 4F 44
-45 4E 4E 4D B0 12 86 4D F2 3F 00 00 07 45 4E 44
-43 4F 44 45 87 12 E0 50 FA 4D 2A 44 2C 4C 03 41
-53 4D B2 40 B0 50 DA 1D E0 3F AC 4E 06 45 4E 44
-41 53 4D 00 87 12 B4 4E F4 50 2A 44 00 00 05 43
-4F 4C 4F 4E 1A 42 C6 1D BA 40 87 12 00 00 A2 53
-C6 1D B2 43 BE 1D 30 40 E0 50 00 00 05 4C 4F 32
-48 49 1A 42 C6 1D BA 40 B0 12 00 00 BA 40 2A 44
-02 00 A2 52 C6 1D ED 3F 1A 4D 85 48 49 32 4C 4F
-87 12 A0 4A 4A 4F B0 4A E0 4C D2 50 AC 50 2A 44
-1A 4F 82 49 46 00 2F 83 8F 4E 00 00 1E 42 C6 1D
-A2 52 C6 1D BE 40 40 46 00 00 2E 53 30 4D 5E 4E
-84 45 4C 53 45 00 A2 52 C6 1D 1A 42 C6 1D BA 40
-3C 46 FC FF 8E 4A 00 00 2A 83 0E 4A 30 4D D0 47
-84 54 48 45 4E 00 9E 42 C6 1D 00 00 3E 4F 30 4D
-9C 4E 85 42 45 47 49 4E 30 40 A0 4A 70 4F 85 55
-4E 54 49 4C 39 40 40 46 A2 52 C6 1D 1A 42 C6 1D
-8A 49 FC FF 8A 4E FE FF 3E 4F 30 4D BE 4E 85 41
-47 41 49 4E 39 40 3C 46 EF 3F 7A 48 85 57 48 49
-4C 45 87 12 36 4F 76 44 2A 44 34 48 86 52 45 50
-45 41 54 00 87 12 B4 4F 76 4F 2A 44 50 4F 82 44
-4F 00 2F 83 8F 4E 00 00 A2 53 C6 1D 1E 42 C6 1D
-BE 40 54 46 FE FF A2 53 00 1C 1A 42 00 1C 8A 43
-00 00 30 4D E2 4A 84 4C 4F 4F 50 00 39 40 76 46
-A2 52 C6 1D 1A 42 C6 1D 8A 49 FC FF 8A 4E FE FF
-1E 42 00 1C A2 83 00 1C 2E 4E 0E 93 03 24 8E 4A
-00 00 F6 3F 3E 4F 30 4D 90 46 85 2B 4C 4F 4F 50
-39 40 64 46 E5 3F 06 50 04 4D 4F 56 45 00 0A 4E
-38 4F 39 4F 3E 4F 0A 93 11 24 08 99 0F 24 06 2C
-F8 49 00 00 18 53 1A 83 FB 23 30 4D 08 5A 09 5A
-19 83 18 83 E8 49 00 00 1A 83 FA 23 30 4D 14 48
-CA 1D F2 44 2A 44 84 12 7E 50 AE 4F 46 53 DE 4F
-BE 4C 32 4F 3A 50 5A 54 64 48 66 51 80 51 8E 4F
-00 52 00 00 2C 54 E8 4C 78 4E 00 00 84 12 7E 50
-84 5B 76 5B 2C 59 4E 5A F2 58 00 00 68 5B 00 00
-E8 58 92 5B 4A 59 88 59 32 57 00 00 00 00 2A 5A
-AA 50 3A 40 0C 00 39 40 CA 1D 38 40 CC 1D C6 3F
-3A 40 0E 00 39 40 CC 1D 38 40 CA 1D B9 3F 82 43
-CC 1D 30 4D 92 42 CA 1D DA 1D 30 4D 86 50 EE 50
-F4 50 04 51 3A 4E 82 4A C8 1D 2E 4E 82 4E C6 1D
-3D 40 10 00 09 4A 08 49 29 83 18 48 FE FF 0E 98
-FC 2B 89 48 00 00 1D 83 F6 23 2A 4A 0A 93 F0 23
-3E 4F 3D 41 30 4D 32 4D 09 50 57 52 5F 53 54 41
-54 45 84 12 FC 50 D0 50 9E 5B CC 4F 09 52 53 54
-5F 53 54 41 54 45 92 42 0E 18 46 51 92 42 0C 18
-48 51 EF 3F 38 51 08 50 57 52 5F 48 45 52 45 00
-92 42 C8 1D 46 51 92 42 C6 1D 48 51 30 4D 4C 51
-08 52 53 54 5F 48 45 52 45 00 92 42 C8 1D 0E 18
-92 42 C6 1D 0C 18 EC 3F BC 4F 04 57 49 50 45 00
-39 40 10 00 29 83 B9 43 80 FF FC 23 B2 40 E0 46
-DE 46 B2 40 0A 52 08 52 B2 40 D0 50 0E 18 B2 40
-9E 5B 0C 18 30 12 56 51 B2 40 86 47 84 47 B2 40
-08 48 06 48 B2 40 98 46 96 46 B2 40 18 00 0A 18
-37 40 1A 44 36 40 92 44 35 40 0E 44 34 40 00 44
-B2 40 0A 00 DC 1D B2 40 20 00 B4 1D 30 41 9A 51
-04 57 41 52 4D 00 30 40 0A 52 3D 40 3E 52 92 C3
-30 01 1E 42 08 18 0E 93 11 24 D2 B3 01 02 02 20
-3E E3 1E 53 F2 D0 03 00 0D 02 3E 90 0A 00 B8 27
-3E 90 16 00 B5 2F 2E 93 84 27 8D 2F 30 4D 1E 48
-06 0D 1B 5B 37 6D 23 00 D6 47 34 46 1E 48 19 46
-61 73 74 46 6F 72 74 68 20 C2 A9 4A 2E 4D 2E 54
-68 6F 6F 72 65 6E 73 20 D6 47 14 48 30 FF A0 4A
-B8 44 24 46 1E 48 0A 62 79 74 65 73 20 66 72 65
-65 00 3C 46 9A 4C 82 4F 04 43 4F 4C 44 00 92 B3
-CA 05 FD 23 B2 40 04 A5 20 01 3E 52 B2 40 88 5A
-5C 01 B2 40 FE FF 02 02 B2 D3 06 02 B2 D3 26 02
-B2 40 FF BF 22 02 E2 D3 25 02 F2 43 22 03 F2 D3
-26 03 F2 40 A5 00 61 01 82 43 66 01 39 40 80 00
-B2 40 33 00 64 01 D2 43 61 01 92 D2 9E 01 08 18
-38 40 59 14 18 83 FE 23 19 83 FA 23 B2 D2 B0 01
-F2 D0 10 00 2A 03 F2 C0 40 00 A1 04 39 40 00 08
-29 83 89 43 00 1C FC 23 39 40 34 00 29 83 B9 40
-9C 52 CC FF FB 23 B2 40 26 47 F0 FF B2 40 81 00
-C0 05 92 42 02 18 C6 05 92 42 04 18 C8 05 92 C3
-C0 05 92 D3 DA 05 3F 40 80 1C 31 40 E0 1C 30 12
-06 52 4B 3F 88 52 07 43 4F 4D 50 41 52 45 0C 4E
-38 4F 3B 4F 39 4F 0E 4B 0E 5C 0C 24 1B 83 07 30
-1C 83 07 30 19 53 F9 98 FF FF F5 27 02 2C 3E 43
-30 4D 1E 43 30 4D B2 4D 86 5B 54 48 45 4E 5D 00
-30 4D 78 53 86 5B 45 4C 53 45 5D 00 87 12 14 48
-00 00 C6 44 42 4B 80 48 24 4B 34 44 40 46 EE 53
-44 44 1E 48 06 5B 54 48 45 4E 5D 00 4E 53 4A 46
-BE 53 F8 47 D0 44 58 44 4A 46 94 53 2A 44 44 44
-1E 48 06 5B 45 4C 53 45 5D 00 4E 53 4A 46 DC 53
-F8 47 D0 44 58 44 4A 46 92 53 2A 44 1E 48 04 5B
-49 46 5D 00 4E 53 4A 46 94 53 3C 46 92 53 F8 47
-1E 48 05 0D 0A 6B 6F 20 D6 47 8C 47 32 4B 3C 46
-94 53 84 53 84 5B 49 46 5D 00 0E 93 3E 4F BE 27
-30 4D 04 54 89 5B 44 45 46 49 4E 45 44 5D 87 12
-42 4B 80 48 EE 48 6A 44 2A 44 14 54 8B 5B 55 4E
-44 45 46 49 4E 45 44 5D 87 12 42 4B 80 48 EE 48
-6A 44 00 45 2A 44 48 54 3D 41 B2 4E 0E 18 A2 4E
-0C 18 3E 4F 30 40 56 51 48 50 06 4D 41 52 4B 45
-52 00 B0 12 B8 4D BA 40 84 12 FC FF BA 40 46 54
-FE FF 9A 42 C8 1D 00 00 28 83 8A 48 02 00 A2 52
-C6 1D 30 40 00 4E 1C 15 B0 12 2A 44 80 48 EE 48
-4A 46 9C 54 AA 49 40 46 CE 4C B6 54 9E 54 39 4E
-39 80 86 12 08 24 19 53 02 20 2E 4E 04 3C 2E 53
-19 53 01 24 2E 82 1B 17 30 41 3E 40 28 00 B0 12
-86 54 19 42 C6 1D A2 53 C6 1D 89 4E 00 00 3E 40
-29 00 1C 15 12 12 C4 1D 92 53 C4 1D B0 12 2A 44
-80 48 AA 49 40 46 F4 54 EA 54 21 53 3E 90 10 00
-7D 2D E1 2B F6 54 B2 41 C4 1D DD 3F 87 12 42 4B
-74 48 04 55 0C 43 1B 42 C6 1D A2 53 C6 1D 6A 4E
-3E 4F 7A 90 23 00 27 20 92 53 C4 1D B0 12 86 54
-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 C6 1D A2 53 C6 1D 89 4E 00 00
-3E 4F 3D 41 30 4D 7A 90 26 00 07 20 3C 40 10 02
-92 53 C4 1D B0 12 86 54 ED 3F 7A 90 40 00 16 20
-3C 40 20 00 92 53 C4 1D B0 12 D2 54 0C 20 3C 50
-10 00 3E 40 2B 00 B0 12 D2 54 92 92 C0 1D C4 1D
-02 24 92 53 C4 1D 8E 10 0C 5E DA 3F B0 12 D2 54
-FA 23 3C 50 10 00 B0 12 BA 54 EF 3F 0C 43 1B 42
-C6 1D A2 53 C6 1D 87 12 42 4B 74 48 CE 55 FE 90
-26 00 00 00 3E 40 20 00 03 20 3C 50 82 00 C8 3F
-B0 12 D2 54 E1 23 3C 50 80 00 B0 12 BA 54 DC 3F
-D6 46 04 52 45 54 49 00 87 12 14 48 00 13 B0 4A
-2A 44 14 48 2C 00 FC 54 C6 55 0C 56 09 4B 2E 4E
-0E DC A4 3F FC 4E 03 4D 4F 56 84 12 02 56 00 40
-16 56 05 4D 4F 56 2E 42 84 12 02 56 40 40 00 00
-03 41 44 44 84 12 02 56 00 50 30 56 05 41 44 44
-2E 42 84 12 02 56 40 50 3C 56 04 41 44 44 43 00
-84 12 02 56 00 60 4A 56 06 41 44 44 43 2E 42 00
-84 12 02 56 40 60 F2 55 04 53 55 42 43 00 84 12
-02 56 00 70 68 56 06 53 55 42 43 2E 42 00 84 12
-02 56 40 70 76 56 03 53 55 42 84 12 02 56 00 80
-86 56 05 53 55 42 2E 42 84 12 02 56 40 80 DE 4E
-03 43 4D 50 84 12 02 56 00 90 A0 56 05 43 4D 50
-2E 42 84 12 02 56 40 90 CC 4E 04 44 41 44 44 00
-84 12 02 56 00 A0 BA 56 06 44 41 44 44 2E 42 00
-84 12 02 56 40 A0 AC 56 03 42 49 54 84 12 02 56
-00 B0 D8 56 05 42 49 54 2E 42 84 12 02 56 40 B0
-E4 56 03 42 49 43 84 12 02 56 00 C0 F2 56 05 42
-49 43 2E 42 84 12 02 56 40 C0 FE 56 03 42 49 53
-84 12 02 56 00 D0 0C 57 05 42 49 53 2E 42 84 12
-02 56 40 D0 00 00 03 58 4F 52 84 12 02 56 00 E0
-26 57 05 58 4F 52 2E 42 84 12 02 56 40 E0 58 56
-03 41 4E 44 84 12 02 56 00 F0 40 57 05 41 4E 44
-2E 42 84 12 02 56 40 F0 42 4B FC 54 5E 57 0A 4C
-3C F0 70 00 8A 10 3A F0 0F 00 0C DA 4F 3F 92 56
-03 52 52 43 84 12 58 57 00 10 70 57 05 52 52 43
-2E 42 84 12 58 57 40 10 7C 57 04 53 57 50 42 00
-84 12 58 57 80 10 8A 57 03 52 52 41 84 12 58 57
-00 11 98 57 05 52 52 41 2E 42 84 12 58 57 40 11
-A4 57 03 53 58 54 84 12 58 57 80 11 00 00 04 50
-55 53 48 00 84 12 58 57 00 12 BE 57 06 50 55 53
-48 2E 42 00 84 12 58 57 40 12 18 57 04 43 41 4C
-4C 00 84 12 58 57 80 12 1A 53 0E 4A 87 12 34 46
-1E 48 0D 6F 75 74 20 6F 66 20 62 6F 75 6E 64 73
-4C 4C 42 4B 74 48 08 58 92 53 C4 1D 3E 40 2C 00
-B0 12 2A 44 80 48 AA 49 40 46 CE 4C BC 55 20 58
-0A 4E 3E 4F 1A 83 E0 33 29 4E 59 0E 0A 28 08 4C
-59 0A 01 28 0C 8A 08 8A 38 90 10 00 D5 2F 5A 0E
-94 3F 2A 92 D1 2F 8A 10 5A 06 8F 3F B2 57 04 52
-52 43 4D 00 84 12 02 58 50 00 4E 58 04 52 52 41
-4D 00 84 12 02 58 50 01 5C 58 04 52 4C 41 4D 00
-84 12 02 58 50 02 6A 58 04 52 52 55 4D 00 84 12
-02 58 50 03 CC 57 05 50 55 53 48 4D 84 12 02 58
-00 15 86 58 04 50 4F 50 4D 00 84 12 02 58 00 17
-78 58 03 53 3E 3D 85 12 00 38 A2 58 02 53 3C 00
-85 12 00 34 94 58 03 30 3E 3D 85 12 00 30 B6 58
-02 30 3C 00 85 12 00 30 00 00 02 55 3C 00 85 12
-00 2C CA 58 03 55 3E 3D 85 12 00 28 C0 58 03 30
-3C 3E 85 12 00 24 DE 58 02 30 3D 00 85 12 00 20
-00 00 02 49 46 00 1A 42 C6 1D 8A 4E 00 00 A2 53
-C6 1D 0E 4A 30 4D D4 58 04 54 48 45 4E 00 1A 42
-C6 1D 08 4E 3E 4F 09 48 29 53 0A 89 0A 11 3A 90
-00 02 63 2F 88 DA 00 00 30 4D C8 56 04 45 4C 53
-45 00 1A 42 C6 1D BA 40 00 3C 00 00 A2 53 C6 1D
-2F 83 8F 4A 00 00 E3 3F 08 59 05 55 4E 54 49 4C
-3A 4F 08 4E 3E 4F 19 42 C6 1D 2A 83 0A 89 0A 11
-3A 90 00 FE 42 3B 3A F0 FF 03 08 DA 89 48 00 00
-A2 53 C6 1D 30 4D 4C 57 05 41 47 41 49 4E 0A 4E
-38 40 00 3C E7 3F 00 00 05 57 48 49 4C 45 87 12
-F6 58 76 44 2A 44 AC 58 06 52 45 50 45 41 54 00
-87 12 7E 59 0E 59 2A 44 AA 59 3D 41 08 4E 3E 4F
-2A 48 B2 92 C4 1D CD 2F 98 42 C6 1D 00 00 30 4D
-DC 57 03 42 57 31 84 12 A8 59 00 00 C2 59 03 42
-57 32 84 12 A8 59 00 00 CE 59 03 42 57 33 84 12
-A8 59 00 00 E6 59 3D 41 1A 42 C6 1D 28 4E B2 92
-C4 1D 90 2B BA 4F 00 00 A2 53 C6 1D 8E 4A 00 00
-3E 4F 30 4D 00 00 03 46 57 31 84 12 E4 59 00 00
-06 5A 03 46 57 32 84 12 E4 59 00 00 12 5A 03 46
-57 33 84 12 E4 59 00 00 00 00 05 3F 47 4F 54 4F
-3E 90 00 30 07 24 3E E0 00 04 3E B0 00 10 02 24
-3E E0 00 08 87 12 C0 4C DA 4A 2A 44 1E 5A 04 47
-4F 54 4F 00 2F 83 8F 4E 00 00 3E 40 00 3C F2 3F
-87 12 42 4B 74 48 68 5A 69 4E 3E 4F 3C 4F 2C 4C
-1B 42 C6 1D A2 53 C6 1D 79 90 52 00 0A 20 B0 12
-D2 54 5E 0E 5E 0E 0E DC 8B 4E 00 00 0E 4B 3D 41
-30 4D 79 90 23 00 0D 20 3C C0 40 00 92 53 C4 1D
-A2 53 C6 1D B0 12 86 54 BB 4F 02 00 3E F0 0F 00
-E8 3F 79 90 26 00 03 20 3C E0 E0 00 EF 3F 3C C0
-F0 00 79 90 40 00 12 20 92 53 C4 1D B0 12 D2 54
-D8 23 3C D0 10 00 3E 40 2B 00 B0 12 D2 54 92 92
-C0 1D C4 1D CE 27 92 53 C4 1D CB 3F 3C D0 30 00
-A2 53 C6 1D 3E 40 28 00 B0 12 86 54 BB 4F 02 00
-3E 40 29 00 EA 3F 87 12 42 4B 74 48 0E 5B 3B 4F
-2C 4B 69 4E 7E 40 20 00 79 90 52 00 03 20 B0 12
-D2 54 B1 3F 3C C0 F0 00 A2 53 C6 1D 79 90 26 00
-09 20 3C D0 60 00 92 53 C4 1D B0 12 86 54 BB 4F
-02 00 A1 3F 3C D0 70 00 3E 40 28 00 B0 12 86 54
-BB 4F 02 00 3E 40 29 00 E2 3F 14 48 2C 00 60 5A
-06 5B 66 44 2A 44 22 56 04 4D 4F 56 41 00 84 12
-5A 5B C0 00 DA 59 04 43 4D 50 41 00 84 12 5A 5B
-D0 00 78 59 04 41 44 44 41 00 84 12 5A 5B E0 00
-98 59 04 53 55 42 41 00 84 12 5A 5B F0 00
+3B 49 3A 49 3D 15 87 12 74 4A DC 4A B2 41 C4 1D
+B2 41 C2 1D B2 41 C0 1D 3D 41 30 4D 85 12 BE 1D
+00 00 04 51 55 49 54 00 82 43 08 18 31 40 E0 1C
+B2 40 00 1C 00 1C 82 43 BE 1D 87 12 2E 46 D4 44
+70 4A C4 45 74 4A 8C 46 BC 46 2E 44 0C 73 74 61
+63 6B 20 65 6D 70 74 79 21 00 6E 4B 24 44 40 FF
+2A 4E C4 46 2E 44 0A 46 52 41 4D 20 66 75 6C 6C
+21 00 6E 4B 48 44 0C 4B 0A 4A 05 41 42 4F 52 54
+3F 40 80 1C D1 3F 4A 4B 86 41 42 4F 52 54 22 00
+0D 12 87 12 AA 47 24 44 6E 4B F8 49 26 47 8F 93
+02 00 03 20 2F 52 3E 4F 30 4D B0 12 96 4F B0 12
+06 45 92 C3 DC 05 18 42 06 18 39 40 20 00 19 83
+FE 23 18 83 FA 23 92 B3 DC 05 F3 23 0D 12 87 12
+10 4F 24 44 DE 1D 02 45 D6 45 2E 44 04 1B 5B 37
+6D 00 00 46 7C 46 4C 44 C8 4B 2E 46 2E 44 05 6C
+69 6E 65 3A 00 46 66 47 00 46 2E 44 04 1B 5B 30
+6D 00 00 46 50 4B 00 00 83 5B 27 5D 0D 12 87 12
+F0 4B 24 44 24 44 F8 49 F8 49 26 47 44 48 01 27
+0D 12 87 12 70 4A F2 47 4A 48 4C 44 00 4C 26 47
+AA 4A D2 46 81 5C 92 42 C0 1D C4 1D 30 4D D8 4B
+81 5B 82 43 BE 1D 30 4D 04 4C 01 5D B2 43 BE 1D
+30 4D F2 4A 88 50 4F 53 54 50 4F 4E 45 00 0D 12
+87 12 70 4A F2 47 4A 48 7C 46 4C 44 00 4C BC 46
+4C 44 50 4C 24 44 24 44 F8 49 F8 49 24 44 F8 49
+F8 49 26 47 40 47 09 49 4D 4D 45 44 49 41 54 45
+1A 42 B6 1D FA D0 80 00 00 00 30 4D 10 4C 01 3A
+30 12 B8 4C 92 B3 C6 1D A2 63 C6 1D 0D 12 87 12
+70 4A F2 47 86 4C 3D 41 08 4E 7A 4E 5A D3 5A 53
+0A 58 19 42 DA 1D 6E 4E 3E F0 1E 00 09 5E 3E 4F
+82 48 B6 1D 82 49 B8 1D 82 4A BA 1D 82 4F BC 1D
+2A 52 82 4A C6 1D 30 41 BA 40 0D 12 FC FF BA 40
+87 12 FE FF B2 43 BE 1D 30 4D 6E 4C 07 3A 4E 4F
+4E 41 4D 45 30 12 B8 4C 2F 83 8F 4E 00 00 1E 42
+C6 1D 1E B3 0E 63 0A 4E 39 40 10 02 38 40 12 02
+D7 3F 82 9F BC 1D 09 20 18 42 B6 1D 19 42 B8 1D
+A8 49 FE FF 89 48 00 00 30 4D 0D 12 87 12 2E 44
+0F 73 74 61 63 6B 20 6D 69 73 6D 61 74 63 68 21
+7A 4B CC 4C 81 3B 82 93 BE 1D 6D 27 0D 12 87 12
+24 44 26 47 F8 49 F2 4C 12 4C 26 47 5C 4A 06 43
+52 45 41 54 45 00 B0 12 74 4C BA 40 85 12 FC FF
+8A 4A FE FF D5 3F C0 4A 05 44 4F 45 53 3E 1A 42
+BA 1D BA 40 84 12 00 00 8A 4D 02 00 3D 41 30 4D
+3E 4D 04 43 4F 44 45 00 B0 12 74 4C A2 82 C6 1D
+0D 12 87 12 8A 4E 64 4E 26 47 72 4D 07 43 4F 44
+45 4E 4E 4D 30 12 7C 4D 9F 3F 00 00 07 45 4E 44
+43 4F 44 45 0D 12 87 12 F2 4C A4 4E 26 47 58 4B
+03 41 53 4D B2 40 68 4E DA 1D DE 3F 9C 4D 06 45
+4E 44 41 53 4D 00 0D 12 87 12 A4 4D C2 4E 26 47
+00 00 05 43 4F 4C 4F 4E 1A 42 C6 1D BA 40 0D 12
+00 00 BA 40 87 12 02 00 A2 52 C6 1D B2 43 BE 1D
+30 40 A4 4E 00 00 05 4C 4F 32 48 49 A2 83 C6 1D
+1A 42 C6 1D EE 3F 56 4C 85 48 49 32 4C 4F 0D 12
+87 12 2A 4E 1E 4E F8 49 12 4C 80 4D 26 47 2E 53
+30 4D 8C 4D 85 42 45 47 49 4E 2F 83 8F 4E 00 00
+1E 42 C6 1D 30 4D 24 44 CA 1D AE 46 26 47 84 12
+36 4E B0 4D 5A 50 58 4D EE 4B 08 4E 42 46 20 4A
+D8 47 34 4F 4E 4F 62 47 CE 4F 00 00 DE 51 1A 4C
+AA 48 00 00 84 12 36 4E 10 57 76 57 C4 56 C6 57
+8A 56 00 00 BA 53 00 00 80 56 32 57 E2 56 20 57
+CA 54 00 00 00 00 E2 57 62 4E 3A 40 0C 00 39 40
+D6 1D 08 49 28 53 19 83 18 83 E8 49 00 00 1A 83
+FA 23 30 4D 3A 40 0E 00 38 40 CA 1D 09 48 29 53
+F8 49 00 00 18 53 1A 83 FB 23 30 4D 82 43 CC 1D
+30 4D 92 42 CA 1D DA 1D 30 4D 3E 4E BC 4E C2 4E
+D2 4E 3A 4E 82 4A C8 1D 2E 4E 82 4E C6 1D 3D 40
+10 00 09 4A 08 49 29 83 18 48 FE FF 0E 98 FC 2B
+89 48 00 00 1D 83 F6 23 2A 4A 0A 93 F0 23 3E 4F
+3D 41 30 4D 24 4C 09 50 57 52 5F 53 54 41 54 45
+84 12 CA 4E 88 4E FE 57 A6 47 09 52 53 54 5F 53
+54 41 54 45 92 42 0E 18 14 4F 92 42 0C 18 16 4F
+EF 3F 06 4F 08 50 57 52 5F 48 45 52 45 00 92 42
+C8 1D 14 4F 92 42 C6 1D 16 4F 30 4D 1A 4F 08 52
+53 54 5F 48 45 52 45 00 92 42 C8 1D 0E 18 92 42
+C6 1D 0C 18 EC 3F EC 47 04 57 49 50 45 00 39 40
+10 00 29 83 B9 43 80 FF FC 23 B2 40 04 44 02 44
+B2 40 D8 4F D6 4F B2 40 88 4E 0E 18 B2 40 FE 57
+0C 18 30 12 24 4F B2 40 C8 45 C6 45 B2 40 32 46
+30 46 B2 40 4A 46 48 46 B2 40 18 00 0A 18 37 40
+26 47 36 40 9C 46 35 40 FA 44 34 40 EC 44 B2 40
+0A 00 DC 1D B2 40 20 00 B4 1D 30 41 68 4F 04 57
+41 52 4D 00 30 40 D8 4F 3D 40 10 50 92 C3 30 01
+1E 42 08 18 0E 93 13 24 D2 B3 01 02 02 20 3E E3
+1E 53 F2 D0 03 00 0D 02 92 D3 DA 05 3E 90 0A 00
+B6 27 3E 90 16 00 B3 2F 2E 93 82 27 8B 2F 30 4D
+2E 44 07 0D 0A 1B 5B 37 6D 23 00 46 9C 47 2E 44
+19 46 61 73 74 46 6F 72 74 68 20 C2 A9 4A 2E 4D
+2E 54 68 6F 6F 72 65 6E 73 20 00 46 24 44 40 FF
+2A 4E A6 46 66 47 2E 44 0A 62 79 74 65 73 20 66
+72 65 65 00 48 44 C8 4B 24 4E 04 43 4F 4C 44 00
+92 B3 CA 05 FD 23 B2 40 04 A5 20 01 31 40 E0 1C
+B2 40 88 5A 5C 01 B2 40 FE FF 02 02 B2 D3 06 02
+B2 D3 26 02 B2 40 FF BF 22 02 E2 D3 25 02 F2 43
+22 03 F2 D3 26 03 F2 40 A5 00 61 01 82 43 66 01
+39 40 80 00 B2 40 33 00 64 01 D2 43 61 01 92 D2
+9E 01 08 18 38 40 59 14 18 83 FE 23 19 83 FA 23
+B2 D2 B0 01 F2 D0 10 00 2A 03 F2 C0 40 00 A1 04
+39 40 00 08 29 83 89 43 00 1C FC 23 B0 12 0E 44
+B2 40 81 00 C0 05 92 42 02 18 C6 05 92 42 04 18
+C8 05 92 C3 C0 05 3F 40 80 1C 30 12 D4 4F 54 3F
+24 4D 86 5B 54 48 45 4E 5D 00 30 4D 0C 4E 38 4F
+3B 4F 39 4F 0E 4B 0E 5C 10 24 1B 83 06 30 1C 83
+04 30 19 53 F9 98 FF FF F5 27 2D 4D 3E 4F 30 4D
+2F 53 9F 83 00 00 F9 23 2F 53 2D 53 F7 3F 02 51
+86 5B 45 4C 53 45 5D 00 0D 12 87 12 24 44 00 00
+AA 46 70 4A F2 47 62 4A 68 46 4C 44 9A 51 70 46
+2E 44 06 5B 54 48 45 4E 5D 00 0C 51 74 51 30 51
+52 51 26 47 70 46 2E 44 06 5B 45 4C 53 45 5D 00
+0C 51 8A 51 30 51 50 51 26 47 2E 44 04 5B 49 46
+5D 00 0C 51 52 51 48 44 50 51 22 46 2E 44 05 0D
+0A 6B 6F 20 00 46 D4 44 C4 44 48 44 52 51 40 51
+84 5B 49 46 5D 00 0E 93 3E 4F C6 27 30 4D 2F 53
+30 4D B0 51 89 5B 44 45 46 49 4E 45 44 5D 0D 12
+87 12 70 4A F2 47 4A 48 BE 51 26 47 C4 51 8B 5B
+55 4E 44 45 46 49 4E 45 44 5D 0D 12 87 12 CE 51
+F2 51 3D 41 30 40 B6 46 38 40 C0 1D 0A 4E 39 48
+2E 48 09 5E 1E 52 C4 1D 09 9E 03 24 7A 9E FC 27
+1E 83 0A 4E 2A 88 82 4A C4 1D 30 4D 1C 15 87 12
+F2 47 4A 48 42 44 30 52 06 49 4C 44 00 4C 4A 52
+32 52 39 4E 39 80 86 12 08 24 19 53 02 20 2E 4E
+04 3C 2E 53 19 53 01 24 2E 82 1B 17 30 41 3E 40
+28 00 B0 12 1C 52 19 42 C6 1D A2 53 C6 1D 89 4E
+00 00 3E 40 29 00 1C 15 12 12 C4 1D 92 53 C4 1D
+87 12 F2 47 06 49 4C 44 86 52 7C 52 21 53 3E 90
+10 00 80 2D E2 2B 88 52 B2 41 C4 1D DE 3F 0D 12
+87 12 70 4A F8 51 98 52 0C 43 1B 42 C6 1D A2 53
+C6 1D 6A 4E 3E 4F 7A 90 23 00 27 20 92 53 C4 1D
+B0 12 1C 52 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 C6 1D A2 53 C6 1D
+89 4E 00 00 3E 4F 3D 41 30 4D 7A 90 26 00 07 20
+3C 40 10 02 92 53 C4 1D B0 12 1C 52 ED 3F 7A 90
+40 00 16 20 3C 40 20 00 92 53 C4 1D B0 12 66 52
+0C 20 3C 50 10 00 3E 40 2B 00 B0 12 66 52 92 92
+C0 1D C4 1D 02 24 92 53 C4 1D 8E 10 0C 5E DA 3F
+B0 12 66 52 FA 23 3C 50 10 00 B0 12 4E 52 EF 3F
+0C 43 1B 42 C6 1D A2 53 C6 1D 0D 12 87 12 70 4A
+F8 51 64 53 FE 90 26 00 00 00 3E 40 20 00 03 20
+3C 50 82 00 C7 3F B0 12 66 52 E0 23 3C 50 80 00
+B0 12 4E 52 DB 3F 00 00 04 52 45 54 49 00 0D 12
+87 12 24 44 00 13 F8 49 26 47 24 44 2C 00 8E 52
+5A 53 A4 53 09 4B 2E 4E 0E DC A2 3F F6 4D 03 4D
+4F 56 84 12 9A 53 00 40 AE 53 05 4D 4F 56 2E 42
+84 12 9A 53 40 40 00 00 03 41 44 44 84 12 9A 53
+00 50 C8 53 05 41 44 44 2E 42 84 12 9A 53 40 50
+D4 53 04 41 44 44 43 00 84 12 9A 53 00 60 E2 53
+06 41 44 44 43 2E 42 00 84 12 9A 53 40 60 88 53
+04 53 55 42 43 00 84 12 9A 53 00 70 00 54 06 53
+55 42 43 2E 42 00 84 12 9A 53 40 70 0E 54 03 53
+55 42 84 12 9A 53 00 80 1E 54 05 53 55 42 2E 42
+84 12 9A 53 40 80 D2 4D 03 43 4D 50 84 12 9A 53
+00 90 38 54 05 43 4D 50 2E 42 84 12 9A 53 40 90
+BE 4D 04 44 41 44 44 00 84 12 9A 53 00 A0 52 54
+06 44 41 44 44 2E 42 00 84 12 9A 53 40 A0 44 54
+03 42 49 54 84 12 9A 53 00 B0 70 54 05 42 49 54
+2E 42 84 12 9A 53 40 B0 7C 54 03 42 49 43 84 12
+9A 53 00 C0 8A 54 05 42 49 43 2E 42 84 12 9A 53
+40 C0 96 54 03 42 49 53 84 12 9A 53 00 D0 A4 54
+05 42 49 53 2E 42 84 12 9A 53 40 D0 00 00 03 58
+4F 52 84 12 9A 53 00 E0 BE 54 05 58 4F 52 2E 42
+84 12 9A 53 40 E0 F0 53 03 41 4E 44 84 12 9A 53
+00 F0 D8 54 05 41 4E 44 2E 42 84 12 9A 53 40 F0
+70 4A 8E 52 F6 54 0A 4C 3C F0 70 00 8A 10 3A F0
+0F 00 0C DA 4F 3F 2A 54 03 52 52 43 84 12 F0 54
+00 10 08 55 05 52 52 43 2E 42 84 12 F0 54 40 10
+14 55 04 53 57 50 42 00 84 12 F0 54 80 10 22 55
+03 52 52 41 84 12 F0 54 00 11 30 55 05 52 52 41
+2E 42 84 12 F0 54 40 11 3C 55 03 53 58 54 84 12
+F0 54 80 11 00 00 04 50 55 53 48 00 84 12 F0 54
+00 12 56 55 06 50 55 53 48 2E 42 00 84 12 F0 54
+40 12 B0 54 04 43 41 4C 4C 00 84 12 F0 54 80 12
+1A 53 0E 4A 0D 12 87 12 9C 47 2E 44 0D 6F 75 74
+20 6F 66 20 62 6F 75 6E 64 73 7A 4B 70 4A F8 51
+A2 55 92 53 C4 1D 3E 40 2C 00 87 12 F2 47 06 49
+4C 44 00 4C 50 53 B8 55 0A 4E 3E 4F 1A 83 E0 33
+29 4E 59 0E 0A 28 08 4C 59 0A 01 28 0C 8A 08 8A
+38 90 10 00 D5 2F 5A 0E 94 3F 2A 92 D1 2F 8A 10
+5A 06 8F 3F 4A 55 04 52 52 43 4D 00 84 12 9C 55
+50 00 E6 55 04 52 52 41 4D 00 84 12 9C 55 50 01
+F4 55 04 52 4C 41 4D 00 84 12 9C 55 50 02 02 56
+04 52 52 55 4D 00 84 12 9C 55 50 03 64 55 05 50
+55 53 48 4D 84 12 9C 55 00 15 1E 56 04 50 4F 50
+4D 00 84 12 9C 55 00 17 10 56 03 53 3E 3D 85 12
+00 38 3A 56 02 53 3C 00 85 12 00 34 2C 56 03 30
+3E 3D 85 12 00 30 4E 56 02 30 3C 00 85 12 00 30
+00 00 02 55 3C 00 85 12 00 2C 62 56 03 55 3E 3D
+85 12 00 28 58 56 03 30 3C 3E 85 12 00 24 76 56
+02 30 3D 00 85 12 00 20 00 00 02 49 46 00 1A 42
+C6 1D 8A 4E 00 00 A2 53 C6 1D 0E 4A 30 4D 6C 56
+04 54 48 45 4E 00 1A 42 C6 1D 08 4E 3E 4F 09 48
+29 53 0A 89 0A 11 3A 90 00 02 63 2F 88 DA 00 00
+30 4D 60 54 04 45 4C 53 45 00 1A 42 C6 1D BA 40
+00 3C 00 00 A2 53 C6 1D 2F 83 8F 4A 00 00 E3 3F
+A0 56 05 55 4E 54 49 4C 3A 4F 08 4E 3E 4F 19 42
+C6 1D 2A 83 0A 89 0A 11 3A 90 00 FE 42 3B 3A F0
+FF 03 08 DA 89 48 00 00 A2 53 C6 1D 30 4D E4 54
+05 41 47 41 49 4E 0A 4E 38 40 00 3C E7 3F 00 00
+05 57 48 49 4C 45 0D 12 87 12 8E 56 82 46 26 47
+44 56 06 52 45 50 45 41 54 00 0D 12 87 12 16 57
+A6 56 26 47 46 57 3D 41 08 4E 3E 4F 2A 48 B2 92
+C4 1D CB 2F 98 42 C6 1D 00 00 30 4D 74 55 03 42
+57 31 84 12 44 57 00 00 5E 57 03 42 57 32 84 12
+44 57 00 00 6A 57 03 42 57 33 84 12 44 57 00 00
+82 57 3D 41 1A 42 C6 1D 28 4E B2 92 C4 1D 8E 2B
+BA 4F 00 00 A2 53 C6 1D 8E 4A 00 00 3E 4F 30 4D
+00 00 03 46 57 31 84 12 80 57 00 00 A2 57 03 46
+57 32 84 12 80 57 00 00 AE 57 03 46 57 33 84 12
+80 57 00 00 BA 57 04 47 4F 54 4F 00 2F 83 8F 4E
+00 00 3E 40 00 3C 0D 12 87 12 F0 4B 18 4A 26 47
+00 00 05 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
 @FFFE
-9C 52
+6C 50
 q
diff --git a/binaries/MSP_EXP430FR5994.txt b/binaries/MSP_EXP430FR5994.txt
deleted file mode 100644 (file)
index 5dc8192..0000000
+++ /dev/null
@@ -1,671 +0,0 @@
-@1800
-10 00 08 00 A1 F7 80 3E 05 00 18 00 7A 69 C4 4D
-2D 01 FF B3 B6 42 C8 42 C6 60 02 61
-@4000
-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 3A 41 0D 12 0D 4A
-30 4D 00 00 04 45 58 49 54 00 3D 41 30 4D 24 40
-03 44 55 50 2F 83 8F 4E 00 00 30 4D 00 00 04 32
-44 55 50 00 8F 4E FE FF AF 4F FC FF 2F 82 30 4D
-00 00 04 3F 44 55 50 00 0E 93 EC 23 30 4D 30 40
-04 44 52 4F 50 00 3E 4F 30 4D 2F 53 30 4D 3E 40
-04 53 57 41 50 00 2A 4F 8F 4E 00 00 0E 4A 30 4D
-52 40 02 3E 52 00 0E 12 3E 4F 30 4D 70 40 02 52
-3E 00 2F 83 8F 4E 00 00 3E 41 30 4D 60 40 05 44
-45 50 54 48 8F 4E FE FF 3E 40 80 1C 0E 8F 0E 11
-2F 83 30 4D 00 00 01 2D 3E 8F 3E E3 1E 53 30 4D
-00 00 02 31 2B 00 1E 53 30 4D C2 40 02 31 2D 00
-1E 83 30 4D 3E F3 06 34 BF E3 00 00 3E E3 9F 53
-00 00 0E 63 30 4D 00 00 01 40 2E 4E 30 4D E8 40
-01 21 BE 4F 00 00 3E 4F 30 4D CC 40 02 30 3D 00
-1E 83 0E 7E 30 4D FC 40 02 30 3C 00 0E 5E 0E 7E
-3E E3 30 4D 00 00 01 3D 3E 8F FA 27 0E F3 30 4D
-00 00 02 55 3C 00 3E 8F F9 2B 01 24 3E 43 30 4D
-16 41 02 3C 23 00 B2 40 B2 1D B2 1D 30 4D 0B 4E
-1C 4F 02 00 2E 4F 0A 43 34 40 20 00 0E 93 04 20
-04 11 0E 4C 0C 43 09 43 0A 9B 01 28 0A 8B 09 69
-08 68 14 83 07 30 0C 5C 0E 6E 0A 6A F5 2B 0A 8B
-12 D3 F5 3F 34 40 00 40 8F 4A 02 00 8F 49 00 00
-0E 48 30 41 00 00 01 23 1B 42 DC 1D 2C 4F 2F 83
-B0 12 46 41 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 86 41 02 23 53 00 87 12 88 41 C0 41
-2D 83 09 93 E3 23 0E 93 E1 23 3D 41 30 4D B6 41
-02 23 3E 00 9F 42 B2 1D 00 00 3E 40 B2 1D 2E 8F
-30 4D 00 00 04 48 4F 4C 44 00 0A 4E 3E 4F DB 3F
-8E 40 04 53 49 47 4E 00 0E 93 3E 4F 3A 40 2D 00
-D2 33 30 4D 87 12 36 41 34 40 86 40 D4 40 BA 41
-92 40 F8 41 D4 41 38 44 A4 47 E0 43 2A 40 22 41
-02 55 2E 00 08 43 2F 83 8F 4E 00 00 0E 48 EA 3F
-00 00 01 2E 0E 93 F6 37 38 43 F5 3F 2D 4D 30 4D
-0E 93 3E 4F FB 27 2D 53 30 4D 0E 93 3E 4F F6 23
-2D 53 30 4D 39 40 00 80 39 8F 08 4E 3E 4F 08 59
-19 15 30 4D 81 5E 00 00 3E 4F 32 B0 00 01 E6 27
-2D 53 21 52 30 4D 91 53 00 00 F7 3F E4 41 01 49
-2F 83 8F 4E 00 00 2E 41 1E 81 02 00 30 4D 00 00
-03 4B 45 59 30 40 98 42 18 42 CC 05 2F 83 8F 4E
-00 00 B0 12 B6 42 92 B3 DC 05 FD 27 1E 42 CC 05
-B0 12 C8 42 30 4D A2 B3 DC 05 FD 27 B2 40 11 00
-CE 05 E2 C2 23 02 30 41 B2 40 13 00 CE 05 E2 D2
-23 02 30 41 00 00 05 53 4C 45 45 50 30 40 E0 42
-B0 12 B6 42 12 D2 0A 18 F9 3F 0D 12 3D 40 0A 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 0C 43 2D 83 0C 9B
-14 2C 58 4C 00 1E 1C 53 78 90 20 00 07 2C 78 90
-0A 00 F5 23 82 4C 1E 20 3D 41 30 4D 0E 99 3D 24
-CA 48 00 00 1A 53 1E 53 38 3C 1A 15 B0 12 0C 62
-19 17 DE 3F F0 40 06 41 43 43 45 50 54 00 30 40
-52 43 3C 40 C2 43 3B 40 8C 43 2D 15 0A 4E 2E 4F
-0A 5E 3B 40 0D 00 3C 40 20 00 3D 40 B6 43 92 B3
-DC 05 05 24 18 42 CC 05 38 90 0A 00 9C 23 21 53
-3D 15 AC 3F 21 52 3A 17 58 42 CC 05 48 9C 08 2C
-48 9B 9A 27 78 92 11 20 2E 9F 0F 24 1E 83 05 3C
-0E 9A 03 24 CE 48 00 00 1E 53 A2 B3 DC 05 FD 27
-82 48 CE 05 30 4D B8 43 2D 83 92 B3 DC 05 E4 23
-FC 27 82 93 DE 1D 02 24 92 53 DE 1D 3E 8F 3D 41
-B2 40 18 00 0A 18 30 4D 9E 40 04 45 4D 49 54 00
-30 40 E4 43 08 4E 3E 4F E0 3F 85 12 3C 1D 3F 80
-06 00 8F 4E 04 00 3E 40 54 00 9F 42 EC 43 00 00
-AF 4F 02 00 A4 3F DA 43 04 45 43 48 4F 00 B2 40
-82 48 B0 43 82 43 DE 1D 30 4D 32 42 06 4E 4F 45
-43 48 4F 00 B2 40 30 4D B0 43 92 43 DE 1D 30 4D
-20 42 04 54 59 50 45 00 0E 93 0F 24 1E 15 3D 40
-4E 44 28 4F 7E 48 8F 48 00 00 2F 83 C9 3F 50 44
-2D 83 91 83 02 00 F5 23 1D 17 2F 53 3E 4F 30 4D
-D0 41 02 43 52 00 30 40 6A 44 87 12 80 44 02 0D
-0A 00 38 44 2A 40 2F 83 8F 4E 00 00 3E 4D 30 4D
-2F 82 8F 4E 02 00 7E 4D 8F 4D 00 00 0D 5E 1D B3
-0D 63 30 4D F2 41 82 53 22 00 82 43 B4 1D 87 12
-76 44 80 44 12 47 76 44 22 00 E2 44 AE 44 B2 40
-20 00 B4 1D 6E 4E 1E 53 1E B3 82 6E C6 1D 3D 41
-3E 4F 30 4D 1C 44 82 2E 22 00 87 12 9A 44 76 44
-38 44 12 47 2A 40 48 43 05 3C 00 00 04 57 4F 52
-44 00 48 4E 19 42 C0 1D 1A 42 C2 1D 09 5A 1A 52
-C4 1D 09 9A 03 24 7E 9A FC 27 1A 83 4E F8 06 20
-0E 4A 1A 82 C2 1D 82 4A C4 1D 30 4D 18 42 C6 1D
-3B 40 60 00 C8 4C 00 00 09 9A 0C 24 7C 4A 4E 9C
-09 24 18 53 4B 9C F6 2F 7C 90 7B 00 F3 2F 5C 82
-B4 1D F0 3F 1A 82 C2 1D 82 4A C4 1D 1E 42 C6 1D
-08 8E CE 48 00 00 30 4D 00 00 04 46 49 4E 44 00
-2F 83 0C 4E 65 4C 74 40 80 00 3B 40 CA 1D 3E 4B
-0E 93 1E 24 58 4C 01 00 78 F0 1E 00 0E 58 2E 53
-1E 4E FE FF 0E 93 F3 27 09 4E 78 49 48 C4 48 95
-F7 23 0A 4C FA 99 01 00 F3 23 1A 53 58 83 FA 23
-19 B3 09 63 0C 49 6A 4E 1E 43 4A 93 01 30 2E 83
-8F 4C 00 00 35 40 0E 40 34 40 00 40 30 4D 82 40
-07 3E 4E 55 4D 42 45 52 3C 4F 38 4F 29 4F 2F 82
-1B 42 DC 1D 6A 4C 7A 80 30 00 7A 90 0A 00 05 28
-7A 80 07 00 7A 90 0A 00 12 28 0A 9B 22 C3 0F 2C
-82 49 D0 04 82 48 D2 04 82 4B C8 04 19 42 E4 04
-18 42 E6 04 09 5A 08 63 1C 53 1E 83 E3 23 8F 4C
-00 00 8F 48 02 00 8F 49 04 00 30 4D 32 C0 00 02
-1B 42 DC 1D 0C 43 2D 15 3D 40 56 46 09 43 08 43
-3F 82 8F 4E 06 00 0C 4E 7E 4C 6A 4C 7A 90 2D 00
-04 28 C9 23 B1 43 02 00 DF 3F 2B 43 7A 80 25 00
-07 24 3B 52 6A 53 04 24 3B 40 10 00 5A 83 BA 23
-1C 53 1E 83 EA 3F 58 46 2F 24 2D 83 7A 90 28 00
-CB 27 32 D0 00 02 7A 90 F7 00 C6 27 7A 90 F5 00
-23 20 0A 4E 09 43 8F 49 02 00 5A 83 09 4A 09 5C
-69 49 79 80 30 00 79 90 0A 00 05 28 79 80 07 00
-79 90 0A 00 0A 28 09 9B 08 2C 8F 49 00 00 0E 4B
-2C 15 B0 12 3E 41 2A 17 E6 3F 9F 4F 04 00 02 00
-AF 4F 04 00 0E 4A 4E 93 2B 17 0E 4C 82 4B DC 1D
-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 7E 42 04 48 45 52
-45 00 2F 83 8F 4E 00 00 1E 42 C6 1D 30 4D B6 40
-01 2C 1A 42 C6 1D 8A 4E 00 00 A2 53 C6 1D 3E 4F
-30 4D 46 43 05 41 4C 4C 4F 54 82 5E C6 1D 3E 4F
-30 4D 08 44 07 45 58 45 43 55 54 45 0A 4E 3E 4F
-00 4A 10 47 87 4C 49 54 45 52 41 4C 82 93 BE 1D
-0C 24 1A 42 C6 1D A2 52 C6 1D BA 40 76 44 00 00
-8A 4E 02 00 3E 4F 32 B0 00 02 32 C0 00 02 06 24
-19 4A 02 00 8A 4E 02 00 0E 49 EB 3F 30 4D 62 44
-05 43 4F 55 4E 54 2F 83 1E 53 8F 4E 00 00 5E 4E
-FF FF 30 4D 82 4E C0 1D B2 4F C2 1D 3E 4F 82 43
-C4 1D 30 4D 85 12 20 00 87 12 94 47 A4 47 E2 44
-B2 47 3D 40 BA 47 CC 22 82 3E BC 47 0A 4E 3E 4F
-3D 40 D2 47 23 27 3D 40 AC 47 1A E2 BE 1D A1 27
-B5 23 D4 47 3E 4F 3D 40 AC 47 B8 23 DE 53 00 00
-68 4E 08 5E F8 40 3F 00 00 00 3D 40 CC 4A CB 3F
-34 47 08 45 56 41 4C 55 41 54 45 00 39 40 C0 1D
-3C 49 3B 49 3A 49 3D 15 B0 12 2A 40 A8 47 10 48
-B2 41 C4 1D B2 41 C2 1D B2 41 C0 1D 3D 41 30 4D
-85 12 BE 1D 82 43 08 18 31 40 E0 1C B2 40 00 1C
-00 1C 82 43 BE 1D 30 4D 80 47 04 42 4F 4F 54 00
-82 93 08 18 1D 24 E2 B2 60 02 1A 20 2F 83 8F 4E
-00 00 1E 42 08 18 B0 12 2A 40 24 44 24 48 80 44
-0F 4C 4F 41 44 22 20 42 4F 4F 54 2E 34 54 48 22
-3C 42 8E 48 08 41 04 51 55 49 54 00 30 40 80 48
-B0 12 2A 40 24 48 66 44 EE 43 A4 47 E0 43 A8 47
-A4 40 0C 41 80 44 0C 73 74 61 63 6B 20 65 6D 70
-74 79 21 00 E6 48 76 44 30 FF 02 47 26 41 80 44
-0A 46 52 41 4D 20 66 75 6C 6C 21 00 E6 48 3C 42
-86 48 24 47 05 41 42 4F 52 54 3F 40 80 1C D6 3F
-C4 48 86 41 42 4F 52 54 22 00 87 12 9A 44 76 44
-E6 48 12 47 2A 40 8F 93 02 00 03 20 2F 52 3E 4F
-30 4D B0 12 EC 4E B0 12 B6 42 92 C3 DC 05 38 40
-A0 AA 39 42 03 43 19 83 FD 23 18 83 FA 23 92 B3
-DC 05 F3 23 87 12 60 4E 76 44 DE 1D EA 40 0E 44
-80 44 04 1B 5B 37 6D 00 38 44 58 40 40 42 40 49
-66 44 80 44 05 6C 69 6E 65 3A 38 44 D0 40 24 42
-38 44 80 44 04 1B 5B 30 6D 00 38 44 CA 48 00 00
-83 5B 27 5D 87 12 66 49 76 44 76 44 12 47 12 47
-2A 40 4A 45 01 27 87 12 A4 47 E2 44 50 45 40 42
-74 49 2A 40 DC 47 32 41 81 5C 92 42 C0 1D C4 1D
-30 4D 50 49 81 5B 82 43 BE 1D 30 4D 78 49 01 5D
-B2 43 BE 1D 30 4D BE 4F 02 00 3E 4F 30 4D FC 46
-82 49 53 00 87 12 20 48 EA 40 40 42 B8 49 54 49
-76 44 96 49 12 47 2A 40 66 49 96 49 2A 40 A0 49
-09 49 4D 4D 45 44 49 41 54 45 1A 42 B6 1D FA D0
-80 00 00 00 30 4D 76 48 88 50 4F 53 54 50 4F 4E
-45 00 87 12 A4 47 E2 44 50 45 58 40 40 42 74 49
-0C 41 40 42 02 4A 76 44 76 44 12 47 12 47 76 44
-12 47 12 47 2A 40 84 49 81 3B 82 93 BE 1D B5 27
-87 12 76 44 2A 40 12 47 A0 4A 86 49 2A 40 08 4A
-07 3A 4E 4F 4E 41 4D 45 30 12 46 4A 2F 83 8F 4E
-00 00 1E 42 C6 1D 1E B3 0E 63 0A 4E 39 40 00 02
-38 40 02 02 21 3C BA 40 87 12 FC FF A2 83 C6 1D
-B2 43 BE 1D 30 4D 20 4A 01 3A 30 12 46 4A 92 B3
-C6 1D A2 63 C6 1D 87 12 A4 47 E2 44 6E 4A 3D 41
-08 4E 7A 4E 5A D3 5A 53 0A 58 19 42 DA 1D 6E 4E
-3E F0 1E 00 09 5E 3E 4F 82 48 B6 1D 82 49 B8 1D
-82 4A BA 1D 82 4F BC 1D 2A 52 82 4A C6 1D 30 41
-82 9F BC 1D 09 20 18 42 B6 1D 19 42 B8 1D A8 49
-FE FF 89 48 00 00 30 4D 87 12 80 44 0F 73 74 61
-63 6B 20 6D 69 73 6D 61 74 63 68 21 F2 48 F2 47
-05 44 45 46 45 52 B0 12 5E 4A BA 40 30 40 FC FF
-BA 40 54 4A FE FF E3 3F 3A 48 06 43 52 45 41 54
-45 00 B0 12 5E 4A BA 40 85 12 FC FF 8A 4A FE FF
-D6 3F D0 4A 05 44 4F 45 53 3E 1A 42 BA 1D BA 40
-84 12 00 00 8A 4D 02 00 3D 41 30 4D B0 45 05 3E
-42 4F 44 59 2E 52 30 4D EA 4A 04 43 4F 44 45 00
-B0 12 5E 4A 82 43 D8 5F A2 82 C6 1D 87 12 CE 4D
-A0 4D 2A 40 2A 4B 07 43 4F 44 45 4E 4E 4D B0 12
-2C 4A F0 3F 00 00 07 45 4E 44 43 4F 44 45 87 12
-E8 4D A0 4A 2A 40 D2 48 03 41 53 4D B2 40 A4 4D
-DA 1D DE 3F 56 4B 06 45 4E 44 41 53 4D 00 87 12
-5E 4B 12 4E 2A 40 00 00 05 43 4F 4C 4F 4E 1A 42
-C6 1D BA 40 87 12 00 00 A2 53 C6 1D B2 43 BE 1D
-30 40 E8 4D 00 00 05 4C 4F 32 48 49 1A 42 C6 1D
-BA 40 B0 12 00 00 BA 40 2A 40 02 00 A2 52 C6 1D
-ED 3F C0 49 85 48 49 32 4C 4F 87 12 02 47 F4 4B
-12 47 86 49 CE 4D A0 4D 2A 40 C4 4B 82 49 46 00
-2F 83 8F 4E 00 00 1E 42 C6 1D A2 52 C6 1D BE 40
-40 42 00 00 2E 53 30 4D 04 4B 84 45 4C 53 45 00
-A2 52 C6 1D 1A 42 C6 1D BA 40 3C 42 FC FF 8E 4A
-00 00 2A 83 0E 4A 30 4D 32 44 84 54 48 45 4E 00
-9E 42 C6 1D 00 00 3E 4F 30 4D 46 4B 85 42 45 47
-49 4E 30 40 02 47 1A 4C 85 55 4E 54 49 4C 39 40
-40 42 A2 52 C6 1D 1A 42 C6 1D 8A 49 FC FF 8A 4E
-FE FF 3E 4F 30 4D 68 4B 85 41 47 41 49 4E 39 40
-3C 42 EF 3F DC 44 85 57 48 49 4C 45 87 12 E0 4B
-76 40 2A 40 96 44 86 52 45 50 45 41 54 00 87 12
-5E 4C 20 4C 2A 40 FA 4B 82 44 4F 00 2F 83 8F 4E
-00 00 A2 53 C6 1D 1E 42 C6 1D BE 40 54 42 FE FF
-A2 53 00 1C 1A 42 00 1C 8A 43 00 00 30 4D 44 47
-84 4C 4F 4F 50 00 39 40 76 42 A2 52 C6 1D 1A 42
-C6 1D 8A 49 FC FF 8A 4E FE FF 1E 42 00 1C A2 83
-00 1C 2E 4E 0E 93 03 24 8E 4A 00 00 F6 3F 3E 4F
-30 4D 90 42 85 2B 4C 4F 4F 50 39 40 64 42 E5 3F
-B0 4C 04 4D 4F 56 45 00 0A 4E 38 4F 39 4F 3E 4F
-0A 93 11 24 08 99 0F 24 06 2C F8 49 00 00 18 53
-1A 83 FB 23 30 4D 08 5A 09 5A 19 83 18 83 E8 49
-00 00 1A 83 FA 23 30 4D 66 4C 0A 56 4F 43 41 42
-55 4C 41 52 59 00 87 12 F2 4A 76 44 10 00 76 44
-00 00 54 42 76 44 00 00 12 47 76 42 44 4D 02 47
-76 44 C8 1D 34 40 EA 40 12 47 F2 40 0A 4B 76 44
-CA 1D F2 40 2A 40 64 49 05 46 4F 52 54 48 84 12
-5E 4D C8 4D DA 63 CE 63 68 4D DC 4B E4 4C E8 63
-F8 4D 84 4E 8E 65 1E 69 40 68 00 00 CA 52 8E 49
-1E 4B 00 00 58 4C 09 41 53 53 45 4D 42 4C 45 52
-84 12 5E 4D A2 5E 3A 5E 9E 5D 62 59 06 58 00 00
-66 5C 00 00 C8 5F DC 5F 5E 58 9C 58 6E 5E 00 00
-00 00 3E 59 92 4D 96 4D 04 41 4C 53 4F 00 3A 40
-0C 00 39 40 CA 1D 38 40 CC 1D 9D 3F D8 49 08 50
-52 45 56 49 4F 55 53 00 3A 40 0E 00 39 40 CC 1D
-38 40 CA 1D 8A 3F C6 44 04 4F 4E 4C 59 00 82 43
-CC 1D 30 4D 88 4C 0B 44 45 46 49 4E 49 54 49 4F
-4E 53 92 42 CA 1D DA 1D 30 4D 6E 4D FE 4D 12 4E
-22 4E 3A 4E 82 4A C8 1D 2E 4E 82 4E C6 1D 3D 40
-10 00 09 4A 08 49 29 83 18 48 FE FF 0E 98 FC 2B
-89 48 00 00 1D 83 F6 23 2A 4A 0A 93 F0 23 3E 4F
-3D 41 30 4D DE 4D 09 50 57 52 5F 53 54 41 54 45
-84 12 1A 4E C4 4D 7A 69 76 4C 09 52 53 54 5F 53
-54 41 54 45 92 42 0E 18 64 4E 92 42 0C 18 66 4E
-EF 3F 56 4E 08 50 57 52 5F 48 45 52 45 00 92 42
-C8 1D 64 4E 92 42 C6 1D 66 4E 30 4D 6A 4E 08 52
-53 54 5F 48 45 52 45 00 92 42 C8 1D 0E 18 92 42
-C6 1D 0C 18 EC 3F 2A 4D 04 57 49 50 45 00 39 40
-10 00 29 83 B9 43 80 FF FC 23 B2 40 E0 42 DE 42
-B2 40 4A 4F 48 4F B2 40 80 48 7E 48 B2 40 C4 4D
-0E 18 B2 40 7A 69 0C 18 30 12 74 4E B2 40 E4 43
-E2 43 B2 40 6A 44 68 44 B2 40 98 42 96 42 B2 40
-52 43 50 43 B2 40 3C 1D EC 43 1B 42 32 20 0B 93
-04 24 CB 43 02 00 2B 4B FA 3F B2 40 18 00 0A 18
-37 40 1A 40 36 40 92 40 35 40 0E 40 34 40 00 40
-B2 40 0A 00 DC 1D B2 40 20 00 B4 1D 30 41 B8 4E
-04 57 41 52 4D 00 30 40 4A 4F 3D 40 98 50 92 C3
-30 01 1E 42 08 18 0E 93 9E 24 D2 B3 01 02 02 20
-3E E3 1E 53 F2 D0 03 00 0D 02 E2 B2 60 02 8A 20
-39 42 B0 12 9E 60 D2 C3 23 02 2C 42 B2 40 95 00
-14 20 B2 40 00 40 18 20 B0 12 14 60 02 24 30 40
-3A 61 B0 12 9C 60 7A 93 FC 23 B2 40 87 AA 14 20
-92 43 16 20 B2 40 00 48 18 20 B0 12 14 60 29 42
-B0 12 9E 60 92 43 14 20 82 43 16 20 78 43 3C 42
-B2 40 00 77 18 20 B0 12 14 60 B2 40 40 69 18 20
-B0 12 5A 60 03 24 58 83 F3 23 D9 3F 0C 5C A2 43
-16 20 B2 40 00 50 18 20 B0 12 5A 60 D0 23 92 D3
-40 06 82 43 46 06 92 C3 40 06 B0 12 C4 60 38 40
-00 1E 92 48 C6 01 04 20 92 48 C8 01 06 20 5A 48
-C2 01 92 43 02 20 7A 80 06 00 0F 24 7A 82 0D 24
-A2 43 02 20 6A 53 09 24 5A 53 07 24 6A 52 05 24
-3A 50 0B 20 0C 4A 30 40 40 61 B0 12 C4 60 D2 48
-0D 00 12 20 19 48 0E 00 82 49 08 20 1A 48 16 00
-0A 93 02 20 1A 48 24 00 82 4A 0A 20 09 5A 82 49
-0C 20 09 5A A2 93 02 20 04 24 82 49 0E 20 39 50
-20 00 19 82 12 20 19 82 12 20 82 49 10 20 92 42
-02 20 2C 20 3E 90 0A 00 1A 27 3E 90 16 00 17 2F
-2E 93 E6 26 EF 2E 30 4D 80 44 06 0D 1B 5B 37 6D
-23 00 38 44 34 42 80 44 19 46 61 73 74 46 6F 72
-74 68 20 C2 A9 4A 2E 4D 2E 54 68 6F 6F 72 65 6E
-73 20 38 44 76 44 30 FF 02 47 B8 40 24 42 80 44
-0A 62 79 74 65 73 20 66 72 65 65 00 3C 42 40 49
-2C 4C 04 43 4F 4C 44 00 92 B3 CA 05 FD 23 B2 40
-04 A5 20 01 98 50 B2 40 88 5A 5C 01 B2 D3 06 02
-B2 40 FC FF 02 02 B2 43 26 02 B2 D3 22 02 E2 D2
-25 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 39 40 00 01 B2 40
-33 00 64 01 D2 43 61 01 92 D2 9E 01 08 18 38 40
-59 14 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 39 40 4C 00
-29 83 B9 40 F6 50 B4 FF FB 23 B2 40 84 43 F0 FF
-B2 40 81 00 C0 05 92 42 02 18 C6 05 92 42 04 18
-C8 05 92 C3 C0 05 92 D3 DA 05 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 3F 40 80 1C 31 40 E0 1C 30 12 46 4F
-9C 3E E2 50 07 43 4F 4D 50 41 52 45 0C 4E 38 4F
-3B 4F 39 4F 0E 4B 0E 5C 0C 24 1B 83 07 30 1C 83
-07 30 19 53 F9 98 FF FF F5 27 02 2C 3E 43 30 4D
-1E 43 30 4D 58 4A 86 5B 54 48 45 4E 5D 00 30 4D
-16 52 86 5B 45 4C 53 45 5D 00 87 12 76 44 00 00
-C6 40 A4 47 E2 44 86 47 34 40 40 42 8C 52 44 40
-80 44 06 5B 54 48 45 4E 5D 00 EC 51 4A 42 5C 52
-5A 44 D0 40 58 40 4A 42 32 52 2A 40 44 40 80 44
-06 5B 45 4C 53 45 5D 00 EC 51 4A 42 7A 52 5A 44
-D0 40 58 40 4A 42 30 52 2A 40 80 44 04 5B 49 46
-5D 00 EC 51 4A 42 32 52 3C 42 30 52 5A 44 80 44
-05 0D 0A 6B 6F 20 38 44 EE 43 94 47 3C 42 32 52
-22 52 84 5B 49 46 5D 00 0E 93 3E 4F BE 27 30 4D
-A2 52 89 5B 44 45 46 49 4E 45 44 5D 87 12 A4 47
-E2 44 50 45 6A 40 2A 40 B2 52 8B 5B 55 4E 44 45
-46 49 4E 45 44 5D 87 12 A4 47 E2 44 50 45 6A 40
-00 41 2A 40 E6 52 3D 41 B2 4E 0E 18 A2 4E 0C 18
-3E 4F 30 40 74 4E F2 4C 06 4D 41 52 4B 45 52 00
-B0 12 5E 4A BA 40 84 12 FC FF BA 40 E4 52 FE FF
-9A 42 C8 1D 00 00 28 83 8A 48 02 00 A2 52 C6 1D
-30 40 A6 4A 1C 15 B0 12 2A 40 E2 44 50 45 4A 42
-3A 53 0C 46 40 42 74 49 54 53 3C 53 39 4E 39 80
-86 12 08 24 19 53 02 20 2E 4E 04 3C 2E 53 19 53
-01 24 2E 82 1B 17 30 41 32 B0 00 02 01 24 3E 4F
-30 41 3E 40 28 00 B0 12 24 53 B0 12 58 53 19 42
-C6 1D A2 53 C6 1D 89 4E 00 00 3E 40 29 00 1C 15
-12 12 C4 1D 92 53 C4 1D B0 12 2A 40 E2 44 0C 46
-40 42 A0 53 96 53 21 53 3E 90 10 00 81 2D DA 2B
-A2 53 B2 41 C4 1D D6 3F 87 12 A4 47 D6 44 B0 53
-0C 43 1B 42 C6 1D A2 53 C6 1D 6A 4E 3E 4F 7A 90
-23 00 29 20 92 53 C4 1D B0 12 24 53 B0 12 58 53
-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 C6 1D A2 53 C6 1D 89 4E 00 00
-3E 4F 3D 41 30 4D 7A 90 26 00 09 20 3C 40 10 02
-92 53 C4 1D B0 12 24 53 B0 12 58 53 EB 3F 7A 90
-40 00 16 20 3C 40 20 00 92 53 C4 1D B0 12 7E 53
-0C 20 3C 50 10 00 3E 40 2B 00 B0 12 7E 53 92 92
-C0 1D C4 1D 02 24 92 53 C4 1D 8E 10 0C 5E D8 3F
-B0 12 7E 53 FA 23 3C 50 10 00 B0 12 62 53 EF 3F
-0C 43 1B 42 C6 1D A2 53 C6 1D 87 12 A4 47 D6 44
-82 54 FE 90 26 00 00 00 3E 40 20 00 03 20 3C 50
-82 00 C6 3F B0 12 7E 53 E1 23 3C 50 80 00 B0 12
-62 53 DC 3F D6 42 04 52 45 54 49 00 87 12 76 44
-00 13 12 47 2A 40 76 44 2C 00 A8 53 7A 54 C0 54
-09 4B 2E 4E 0E DC A2 3F A6 4B 03 4D 4F 56 84 12
-B6 54 00 40 CA 54 05 4D 4F 56 2E 42 84 12 B6 54
-40 40 00 00 03 41 44 44 84 12 B6 54 00 50 E4 54
-05 41 44 44 2E 42 84 12 B6 54 40 50 F0 54 04 41
-44 44 43 00 84 12 B6 54 00 60 FE 54 06 41 44 44
-43 2E 42 00 84 12 B6 54 40 60 A6 54 04 53 55 42
-43 00 84 12 B6 54 00 70 1C 55 06 53 55 42 43 2E
-42 00 84 12 B6 54 40 70 2A 55 03 53 55 42 84 12
-B6 54 00 80 3A 55 05 53 55 42 2E 42 84 12 B6 54
-40 80 88 4B 03 43 4D 50 84 12 B6 54 00 90 54 55
-05 43 4D 50 2E 42 84 12 B6 54 40 90 76 4B 04 44
-41 44 44 00 84 12 B6 54 00 A0 6E 55 06 44 41 44
-44 2E 42 00 84 12 B6 54 40 A0 60 55 03 42 49 54
-84 12 B6 54 00 B0 8C 55 05 42 49 54 2E 42 84 12
-B6 54 40 B0 98 55 03 42 49 43 84 12 B6 54 00 C0
-A6 55 05 42 49 43 2E 42 84 12 B6 54 40 C0 B2 55
-03 42 49 53 84 12 B6 54 00 D0 C0 55 05 42 49 53
-2E 42 84 12 B6 54 40 D0 00 00 03 58 4F 52 84 12
-B6 54 00 E0 DA 55 05 58 4F 52 2E 42 84 12 B6 54
-40 E0 0C 55 03 41 4E 44 84 12 B6 54 00 F0 F4 55
-05 41 4E 44 2E 42 84 12 B6 54 40 F0 A4 47 A8 53
-12 56 0A 4C 3C F0 70 00 8A 10 3A F0 0F 00 0C DA
-4F 3F 46 55 03 52 52 43 84 12 0C 56 00 10 24 56
-05 52 52 43 2E 42 84 12 0C 56 40 10 30 56 04 53
-57 50 42 00 84 12 0C 56 80 10 3E 56 03 52 52 41
-84 12 0C 56 00 11 4C 56 05 52 52 41 2E 42 84 12
-0C 56 40 11 58 56 03 53 58 54 84 12 0C 56 80 11
-00 00 04 50 55 53 48 00 84 12 0C 56 00 12 72 56
-06 50 55 53 48 2E 42 00 84 12 0C 56 40 12 CC 55
-04 43 41 4C 4C 00 84 12 0C 56 80 12 1A 53 0E 4A
-87 12 34 42 80 44 0D 6F 75 74 20 6F 66 20 62 6F
-75 6E 64 73 F2 48 A4 47 D6 44 BC 56 92 53 C4 1D
-3E 40 2C 00 B0 12 2A 40 E2 44 0C 46 40 42 74 49
-70 54 D4 56 0A 4E 3E 4F 1A 83 E0 33 29 4E 59 0E
-0A 28 08 4C 59 0A 01 28 0C 8A 08 8A 38 90 10 00
-D5 2F 5A 0E 94 3F 2A 92 D1 2F 8A 10 5A 06 8F 3F
-66 56 06 52 52 43 4D 2E 41 00 84 12 B6 56 40 00
-02 57 04 52 52 43 4D 00 84 12 B6 56 50 00 12 57
-06 52 52 41 4D 2E 41 00 84 12 B6 56 40 01 20 57
-04 52 52 41 4D 00 84 12 B6 56 50 01 30 57 06 52
-4C 41 4D 2E 41 00 84 12 B6 56 40 02 3E 57 04 52
-4C 41 4D 00 84 12 B6 56 50 02 4E 57 06 52 52 55
-4D 2E 41 00 84 12 B6 56 40 03 5C 57 04 52 52 55
-4D 00 84 12 B6 56 50 03 80 56 07 50 55 53 48 4D
-2E 41 84 12 B6 56 00 14 7A 57 05 50 55 53 48 4D
-84 12 B6 56 00 15 8A 57 06 50 4F 50 4D 2E 41 00
-84 12 B6 56 00 16 98 57 04 50 4F 50 4D 00 84 12
-B6 56 00 17 6C 57 03 53 3E 3D 85 12 00 38 B6 57
-02 53 3C 00 85 12 00 34 A8 57 03 30 3E 3D 85 12
-00 30 CA 57 02 30 3C 00 85 12 00 30 00 00 02 55
-3C 00 85 12 00 2C DE 57 03 55 3E 3D 85 12 00 28
-D4 57 03 30 3C 3E 85 12 00 24 F2 57 02 30 3D 00
-85 12 00 20 00 00 02 49 46 00 1A 42 C6 1D 8A 4E
-00 00 A2 53 C6 1D 0E 4A 30 4D E8 57 04 54 48 45
-4E 00 1A 42 C6 1D 08 4E 3E 4F 09 48 29 53 0A 89
-0A 11 3A 90 00 02 33 2F 88 DA 00 00 30 4D 7C 55
-04 45 4C 53 45 00 1A 42 C6 1D BA 40 00 3C 00 00
-A2 53 C6 1D 2F 83 8F 4A 00 00 E3 3F 1C 58 05 55
-4E 54 49 4C 3A 4F 08 4E 3E 4F 19 42 C6 1D 2A 83
-0A 89 0A 11 3A 90 00 FE 12 3B 3A F0 FF 03 08 DA
-89 48 00 00 A2 53 C6 1D 30 4D 00 56 05 41 47 41
-49 4E 0A 4E 38 40 00 3C E7 3F 00 00 05 57 48 49
-4C 45 87 12 0A 58 76 40 2A 40 C0 57 06 52 45 50
-45 41 54 00 87 12 92 58 22 58 2A 40 BE 58 3D 41
-08 4E 3E 4F 2A 48 B2 92 C4 1D CD 2F 98 42 C6 1D
-00 00 30 4D 90 56 03 42 57 31 84 12 BC 58 00 00
-D6 58 03 42 57 32 84 12 BC 58 00 00 E2 58 03 42
-57 33 84 12 BC 58 00 00 FA 58 3D 41 1A 42 C6 1D
-28 4E B2 92 C4 1D 90 2B BA 4F 00 00 A2 53 C6 1D
-8E 4A 00 00 3E 4F 30 4D 00 00 03 46 57 31 84 12
-F8 58 00 00 1A 59 03 46 57 32 84 12 F8 58 00 00
-26 59 03 46 57 33 84 12 F8 58 00 00 00 00 05 3F
-47 4F 54 4F 3E 90 00 30 07 24 3E E0 00 04 3E B0
-00 10 02 24 3E E0 00 08 87 12 66 49 3C 47 2A 40
-32 59 04 47 4F 54 4F 00 2F 83 8F 4E 00 00 3E 40
-00 3C F2 3F 87 12 A4 47 D6 44 7C 59 69 4E 3E 4F
-3C 4F 2C 4C 1B 42 C6 1D A2 53 C6 1D 79 90 52 00
-0A 20 B0 12 7E 53 5E 0E 5E 0E 0E DC 8B 4E 00 00
-0E 4B 3D 41 30 4D 79 90 23 00 0D 20 3C C0 40 00
-92 53 C4 1D A2 53 C6 1D B0 12 24 53 BB 4F 02 00
-3E F0 0F 00 E8 3F 79 90 26 00 03 20 3C E0 E0 00
-EF 3F 3C C0 F0 00 79 90 40 00 12 20 92 53 C4 1D
-B0 12 7E 53 D8 23 3C D0 10 00 3E 40 2B 00 B0 12
-7E 53 92 92 C0 1D C4 1D CE 27 92 53 C4 1D CB 3F
-3C D0 30 00 A2 53 C6 1D 3E 40 28 00 B0 12 24 53
-BB 4F 02 00 3E 40 29 00 EA 3F 87 12 A4 47 D6 44
-22 5A 3B 4F 2C 4B 69 4E 7E 40 20 00 79 90 52 00
-03 20 B0 12 7E 53 B1 3F 3C C0 F0 00 A2 53 C6 1D
-79 90 26 00 09 20 3C D0 60 00 92 53 C4 1D B0 12
-24 53 BB 4F 02 00 A1 3F 3C D0 70 00 3E 40 28 00
-B0 12 24 53 BB 4F 02 00 3E 40 29 00 E2 3F 76 44
-2C 00 74 59 1A 5A 66 40 2A 40 D6 54 04 4D 4F 56
-41 00 84 12 6E 5A C0 00 EE 58 04 43 4D 50 41 00
-84 12 6E 5A D0 00 8C 58 04 41 44 44 41 00 84 12
-6E 5A E0 00 AC 58 04 53 55 42 41 00 84 12 6E 5A
-F0 00 8A 5A 05 43 41 4C 4C 41 87 12 A4 47 D6 44
-C2 5A 1B 42 C6 1D A2 53 C6 1D 6E 4E 3C 40 34 01
-7E 90 52 00 0B 20 7E 40 20 00 B0 12 7E 53 5C 0E
-0C DE 8B 4C 00 00 3E 4F 3D 41 30 4D 2C 53 7E 90
-40 00 0B 20 92 53 C4 1D 7E 40 20 00 B0 12 7E 53
-EE 23 1C 53 3E 40 2B 00 E8 3F A2 53 C6 1D 7E 90
-23 00 09 20 3C 40 3B 01 92 53 C4 1D B0 12 24 53
-BB 4F 02 00 DC 3F 7E 90 26 00 02 20 2C 53 F4 3F
-7E 40 28 00 1C 83 B0 12 24 53 BB 4F 02 00 3E 40
-29 00 CB 3F 87 12 A4 47 D6 44 4C 5B 69 4E 3E 4F
-3C 40 00 18 79 90 52 00 05 20 B0 12 7E 53 0E 4C
-3D 41 30 4D 82 43 D8 5F 79 90 23 00 0B 20 92 53
-C4 1D B0 12 24 53 2F 53 3E F0 0F 00 5E 0A 5E 0E
-0C DE ED 3F 79 90 26 00 F2 27 79 90 40 00 12 20
-92 53 C4 1D B0 12 7E 53 E2 23 3E 40 2B 00 92 53
-C4 1D B0 12 7E 53 92 92 C0 1D C4 1D D8 27 92 53
-C4 1D D5 3F 3E 40 28 00 B0 12 24 53 8F 4E 00 00
-3E 40 29 00 B0 12 7E 53 3E 4F 3E F0 0F 00 0C DE
-EA 3F 87 12 A4 47 D6 44 DA 5B 3C 4F 69 4E 3E 40
-20 00 79 90 52 00 BB 27 82 43 D8 5F 79 90 26 00
-08 20 92 53 C4 1D B0 12 24 53 2F 53 3E F0 0F 00
-BF 3F 3E 40 28 00 B0 12 24 53 F7 3F 1B 42 C6 1D
-A2 53 C6 1D 0C 4E 3E 4F 1C D2 D8 5F 82 43 D8 5F
-3C DE 8B 4C 00 00 B2 41 C4 1D 30 4D 76 44 C4 1D
-EA 40 86 40 76 44 2C 00 44 5B D2 5B 0C 5C 3C 42
-B6 54 7C 5A 04 4D 4F 56 58 00 84 12 2C 5C 40 00
-00 40 44 5C 06 4D 4F 56 58 2E 41 00 84 12 2C 5C
-00 00 40 40 54 5C 06 4D 4F 56 58 2E 42 00 84 12
-2C 5C 40 00 40 40 98 5A 04 41 44 44 58 00 84 12
-2C 5C 40 00 00 50 78 5C 06 41 44 44 58 2E 41 00
-84 12 2C 5C 00 00 40 50 88 5C 06 41 44 44 58 2E
-42 00 84 12 2C 5C 40 00 40 50 9A 5C 05 41 44 44
-43 58 84 12 2C 5C 40 00 00 60 AC 5C 07 41 44 44
-43 58 2E 41 84 12 2C 5C 00 00 40 60 BC 5C 07 41
-44 44 43 58 2E 42 84 12 2C 5C 40 00 40 60 A6 5A
-05 53 55 42 43 58 84 12 2C 5C 40 00 00 70 E0 5C
-07 53 55 42 43 58 2E 41 84 12 2C 5C 00 00 40 70
-F0 5C 07 53 55 42 43 58 2E 42 84 12 2C 5C 40 00
-40 70 02 5D 04 53 55 42 58 00 84 12 2C 5C 40 00
-00 80 14 5D 06 53 55 42 58 2E 41 00 84 12 2C 5C
-00 00 40 80 24 5D 06 53 55 42 58 2E 42 00 84 12
-2C 5C 40 00 40 80 B4 5A 04 43 4D 50 58 00 84 12
-2C 5C 40 00 00 90 48 5D 06 43 4D 50 58 2E 41 00
-84 12 2C 5C 00 00 40 90 58 5D 06 43 4D 50 58 2E
-42 00 84 12 2C 5C 40 00 40 90 40 58 05 44 41 44
-44 58 84 12 2C 5C 40 00 00 A0 7C 5D 07 44 41 44
-44 58 2E 41 84 12 2C 5C 00 00 40 A0 8C 5D 07 44
-41 44 44 58 2E 42 84 12 2C 5C 40 00 40 A0 6A 5D
-04 42 49 54 58 00 84 12 2C 5C 40 00 00 B0 B0 5D
-06 42 49 54 58 2E 41 00 84 12 2C 5C 00 00 40 B0
-C0 5D 06 42 49 54 58 2E 42 00 84 12 2C 5C 40 00
-40 B0 D2 5D 04 42 49 43 58 00 84 12 2C 5C 40 00
-00 C0 E4 5D 06 42 49 43 58 2E 41 00 84 12 2C 5C
-00 00 40 C0 F4 5D 06 42 49 43 58 2E 42 00 84 12
-2C 5C 40 00 40 C0 06 5E 04 42 49 53 58 00 84 12
-2C 5C 40 00 00 D0 18 5E 06 42 49 53 58 2E 41 00
-84 12 2C 5C 00 00 40 D0 28 5E 06 42 49 53 58 2E
-42 00 84 12 2C 5C 40 00 40 D0 E6 55 04 58 4F 52
-58 00 84 12 2C 5C 40 00 00 E0 4C 5E 06 58 4F 52
-58 2E 41 00 84 12 2C 5C 00 00 40 E0 5C 5E 06 58
-4F 52 58 2E 42 00 84 12 2C 5C 40 00 40 E0 CE 5C
-04 41 4E 44 58 00 84 12 2C 5C 40 00 00 F0 80 5E
-06 41 4E 44 58 2E 41 00 84 12 2C 5C 00 00 40 F0
-90 5E 06 41 4E 44 58 2E 42 00 84 12 2C 5C 40 00
-40 F0 76 44 C4 1D EA 40 86 40 A4 47 44 5B 0C 5C
-3C 42 0C 56 36 5D 04 52 52 43 58 00 84 12 B2 5E
-40 00 00 10 C6 5E 06 52 52 43 58 2E 41 00 84 12
-B2 5E 00 00 40 10 D6 5E 06 52 52 43 58 2E 42 00
-84 12 B2 5E 40 00 40 10 E8 5E 04 52 52 55 58 00
-84 12 B2 5E 40 01 00 10 FA 5E 06 52 52 55 58 2E
-41 00 84 12 B2 5E 00 01 40 10 0A 5F 06 52 52 55
-58 2E 42 00 84 12 B2 5E 40 01 40 10 1C 5F 05 53
-57 50 42 58 84 12 B2 5E 40 00 80 10 2E 5F 07 53
-57 50 42 58 2E 41 84 12 B2 5E 00 00 80 10 3E 5F
-04 52 52 41 58 00 84 12 B2 5E 40 00 00 11 50 5F
-06 52 52 41 58 2E 41 00 84 12 B2 5E 00 00 40 11
-60 5F 06 52 52 41 58 2E 42 00 84 12 B2 5E 40 00
-40 11 72 5F 04 53 58 54 58 00 84 12 B2 5E 40 00
-80 11 84 5F 06 53 58 54 58 2E 41 00 84 12 B2 5E
-00 00 80 11 FC 57 05 50 55 53 48 58 84 12 B2 5E
-40 00 00 12 A6 5F 07 50 55 53 48 58 2E 41 84 12
-B2 5E 00 00 40 12 B6 5F 07 50 55 53 48 58 2E 42
-84 12 B2 5E 40 00 40 12 00 00 94 5F 03 52 50 54
-87 12 A4 47 D6 44 E8 5F 29 4E 7E 40 20 00 79 90
-52 00 06 20 B0 12 7E 53 03 24 3E D0 80 00 05 3C
-B0 12 24 53 1E 83 3E F0 0F 00 82 4E D8 5F 3E 4F
-3D 41 30 4D 1A 43 25 3C D2 C3 23 02 E2 B2 60 02
-02 24 30 40 E8 50 1A 52 04 20 19 62 06 20 92 43
-14 20 A2 93 02 20 07 24 0A 5A 49 69 82 4A 16 20
-C2 49 18 20 0A 3C C2 4A 15 20 8A 10 C2 4A 16 20
-C2 49 17 20 89 10 C2 49 18 20 B0 12 9C 60 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 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
-1A 52 08 20 09 43 1C D3 F2 40 51 00 19 20 B0 12
-18 60 33 20 B0 12 9C 60 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
-09 43 2C D3 F0 40 58 00 11 BF B0 12 18 60 15 20
-3A 40 FE FF 29 43 B0 12 A0 60 D2 49 00 1E 4E 06
-03 43 19 53 39 90 00 02 F8 23 39 40 03 00 B0 12
-9E 60 7A C0 E1 00 6A 92 DE 27 8C 10 1C 52 4C 06
-D2 D3 23 02 87 12 80 44 0B 3C 20 53 44 20 45 72
-72 6F 72 21 56 61 2F 83 8F 4E 00 00 B2 40 10 00
-DC 1D 0E 4C B0 12 2A 40 24 42 F2 48 92 4B 0E 00
-22 20 92 4B 10 00 24 20 5A 42 23 20 58 42 22 20
-92 93 02 20 08 24 59 42 24 20 89 10 0A 59 88 10
-08 58 0A 6A 88 10 08 58 30 41 82 43 1C 20 92 42
-0E 20 1A 20 C2 93 24 20 03 20 92 93 22 20 14 24
-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 9A 61 5A 4B 03 00 82 5A
-1A 20 82 63 1C 20 30 41 09 93 07 24 F8 90 20 00
-00 1E 03 20 18 53 19 83 F9 23 30 41 1B 42 32 20
-82 43 1E 20 B2 90 00 02 20 20 A8 20 BB 80 00 02
-12 00 8B 73 14 00 DB 53 03 00 DB 92 12 20 03 00
-11 28 CB 43 03 00 B0 12 6C 61 B0 12 C0 60 8B 43
-10 00 9B 48 00 1E 0E 00 92 93 02 20 03 24 9B 48
-02 1E 10 00 B2 40 00 02 20 20 8B 93 14 00 0B 20
-92 9B 12 00 1E 20 82 2C BB 90 00 02 12 00 03 2C
-92 4B 12 00 20 20 B0 12 DA 61 1A 42 1A 20 19 42
-1C 20 21 3F 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
-07 24 09 4B 3B 50 1C 00 3B 90 18 21 EF 23 0C 5C
-30 41 0C 43 82 4B 32 20 8B 49 00 00 09 93 0A 24
-99 52 C4 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 5F 27 C9 37 8B 43
-16 00 7A 93 02 24 07 38 95 3F B2 40 1C 21 EC 43
-B2 40 EA 42 50 43 9B 42 C0 1D 18 00 9B 82 C4 1D
-18 00 9B 42 C2 1D 1A 00 9B 52 C4 1D 1A 00 82 3F
-CB 43 02 00 2B 4B 82 4B 32 20 0B 93 06 24 92 4B
-16 00 1E 20 B0 12 54 62 22 C3 30 41 1B 42 32 20
-0B 93 FB 27 EB 93 02 00 04 20 B0 12 C2 67 B0 12
-8A 67 CB 93 02 00 E4 37 1E 4B 18 00 9F 4B 1A 00
-00 00 31 50 06 00 3D 41 B0 12 50 63 02 24 30 40
-24 44 B2 40 3C 1D EC 43 B2 40 52 43 50 43 30 40
-0E 44 9E 4E 85 52 45 41 44 22 5A 43 19 3C 40 4F
-86 57 52 49 54 45 22 00 6A 43 12 3C 06 4E 84 44
-45 4C 22 00 6A 42 0C 3C E4 51 05 43 4C 4F 53 45
-B0 12 6C 63 30 4D F8 52 85 4C 4F 41 44 22 7A 43
-2F 83 8F 4E 00 00 0E 4A 82 93 BE 1D 0A 24 87 12
-76 44 76 44 12 47 12 47 9A 44 76 44 20 64 12 47
-2A 40 87 12 76 44 22 00 E2 44 86 47 1E 64 3D 41
-35 4F 0E 55 82 4E 36 20 1C 43 92 42 2C 20 22 20
-92 42 2E 20 24 20 0E 95 8D 24 F5 90 3A 00 01 00
-01 20 25 53 F5 90 5C 00 00 00 08 20 15 53 92 42
-02 20 22 20 82 43 24 20 0E 95 70 24 82 45 34 20
-B0 12 9A 61 34 40 20 00 A2 93 02 20 04 24 92 92
-22 20 02 20 02 24 14 42 12 20 B0 12 7A 62 2C 43
-0A 43 08 4A 58 0E 08 58 82 48 30 20 C8 93 00 1E
-61 24 39 42 F8 95 00 1E 04 20 18 53 19 83 FA 23
-15 53 F5 90 2E 00 FF FF 19 24 39 50 03 00 B0 12
-F8 61 06 20 F5 90 5C 00 FF FF 29 24 0E 95 27 28
-15 42 34 20 1A 53 3A 90 10 00 DB 23 92 53 1A 20
-82 63 1C 20 14 83 D1 23 2C 42 3C 3C F5 90 2E 00
-FE FF EE 27 B0 12 F8 61 EB 23 39 40 03 00 F8 95
-00 1E 04 20 18 53 19 83 FA 23 09 3C 0E 95 E0 2F
-F5 90 5C 00 FF FF DC 23 B0 12 F8 61 D9 23 18 42
-30 20 92 48 1A 1E 22 20 92 48 14 1E 24 20 F8 B0
-10 00 0B 1E 14 24 82 93 24 20 06 20 82 93 22 20
-03 20 92 42 02 20 22 20 0E 95 8E 2F 92 42 22 20
-2C 20 92 42 24 20 2E 20 8F 43 00 00 03 3C 2A 4F
-B0 12 84 62 34 40 00 40 35 40 0E 40 3A 4F 3E 4F
-0A 93 04 24 7A 93 0D 20 0C 93 01 20 30 4D 87 12
-80 44 0B 3C 20 4F 70 65 6E 45 72 72 6F 72 3C 42
-54 61 1A 93 B6 20 0C 93 F2 23 30 4D B4 63 04 52
-45 41 44 00 2F 83 8F 4E 00 00 1E 42 32 20 B0 12
-0C 62 1E 82 32 20 30 4D 2C 43 12 12 2A 20 18 42
-02 20 08 58 2A 41 82 9A 0A 20 A1 24 B0 12 C0 60
-09 43 28 93 03 24 89 93 02 1E 03 20 89 93 00 1E
-07 24 09 58 39 90 00 02 F4 23 91 53 00 00 EA 3F
-0C 43 6A 41 B9 43 00 1E 28 93 0F 24 B9 40 FF 0F
-02 1E 09 11 8A 10 09 5A 5A 41 01 00 0A 11 09 10
-82 4A 28 20 82 49 26 20 07 3C 09 11 C2 49 26 20
-C2 4A 27 20 82 43 28 20 3A 41 82 4A 2A 20 30 41
-0A 12 1A 52 08 20 B0 12 00 61 3A 41 1A 52 0C 20
-30 40 00 61 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 38 39 80 03 00 B0 12 E0 66 39 40 03 00
-7A 4B C8 4A 00 1E 82 9B 36 20 12 28 0D 12 3D 40
-0F 00 3C 40 90 66 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 2A 93 D8 20 2C 93 0D 24 0C 93 A7 24 87 12
-80 44 0C 3C 20 57 72 69 74 65 45 72 72 6F 72 00
-3C 42 54 61 B0 12 A8 65 92 42 26 20 22 20 92 42
-28 20 24 20 B0 12 20 66 B0 12 7A 62 18 42 30 20
-F8 40 20 00 0B 1E B0 12 34 66 88 43 0C 1E 88 4A
-0E 1E 88 49 10 1E 88 49 12 1E 98 42 24 20 14 1E
-98 42 22 20 1A 1E 88 43 1C 1E 88 43 1E 1E 1C 43
-1B 42 34 20 82 9B 36 20 CA 27 FB 90 2E 00 00 00
-C6 27 39 40 0B 00 B0 12 B0 66 B0 12 CC 67 2A 43
-B0 12 84 62 0C 93 BB 23 30 4D 1A 4B 04 00 19 4B
-06 00 B0 12 C6 60 B0 12 34 66 18 4B 08 00 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
-02 61 9B 52 1E 20 12 00 8B 63 14 00 1A 42 1A 20
-19 42 1C 20 30 40 02 61 B2 40 00 02 1E 20 1B 42
-32 20 B0 12 C2 67 82 43 1E 20 DB 53 03 00 DB 92
-12 20 03 00 22 20 CB 43 03 00 B0 12 6C 61 08 12
-0A 12 B0 12 A8 65 2A 91 05 24 B0 12 20 66 2A 41
-B0 12 C0 60 3A 41 38 41 98 42 26 20 00 1E 92 93
-02 20 03 24 98 42 28 20 02 1E B0 12 20 66 9B 42
-26 20 0E 00 9B 42 28 20 10 00 30 40 DA 61 C0 63
-05 57 52 49 54 45 B0 12 D8 67 30 4D 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 1A 4B
-12 00 BB C0 FF 01 12 00 3A F0 FF 01 82 4A 1E 20
-B0 12 76 62 30 4D 0C 93 38 20 38 90 E0 01 03 2C
-C8 93 20 1E 02 24 7C 40 E5 00 C8 4C 00 1E B0 12
-CC 67 B0 12 78 61 82 4A 2A 20 0B 4A B0 12 C0 60
-1A 48 00 1E 88 43 00 1E 92 93 02 20 09 24 19 48
-02 1E 88 43 02 1E 39 F0 FF 0F 39 90 FF 0F 02 20
-3A 93 0E 24 82 4A 22 20 82 49 24 20 B0 12 78 61
-0B 9A E6 27 0A 12 0A 4B B0 12 20 66 3A 41 DD 3F
-0A 4B B0 12 20 66 B0 12 6C 63 30 4D 38 4C 08 54
-45 52 4D 32 53 44 22 00 87 12 D4 63 76 44 02 00
-02 47 86 47 20 64 38 69 3D 41 92 C3 DC 05 08 43
-B0 12 B6 42 92 B3 DC 05 FD 27 59 42 CC 05 69 92
-0D 24 C8 49 00 1E 18 53 38 90 FF 01 F3 2B 03 24
-B0 12 D8 67 EC 3F B0 12 C8 42 EC 3F B0 12 C8 42
-82 48 1E 20 B0 12 6C 63 30 4D
-@FFFE
-F6 50
-q
index 5dc8192..e4c37c4 100644 (file)
 @1800
-10 00 08 00 A1 F7 80 3E 05 00 18 00 7A 69 C4 4D
-2D 01 FF B3 B6 42 C8 42 C6 60 02 61
+10 00 08 00 A1 F7 80 3E 05 00 18 00 26 67 78 4B
+2E 01 FF B3 06 41 18 41 68 5E A4 5E
 @4000
-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 3A 41 0D 12 0D 4A
-30 4D 00 00 04 45 58 49 54 00 3D 41 30 4D 24 40
-03 44 55 50 2F 83 8F 4E 00 00 30 4D 00 00 04 32
-44 55 50 00 8F 4E FE FF AF 4F FC FF 2F 82 30 4D
-00 00 04 3F 44 55 50 00 0E 93 EC 23 30 4D 30 40
-04 44 52 4F 50 00 3E 4F 30 4D 2F 53 30 4D 3E 40
-04 53 57 41 50 00 2A 4F 8F 4E 00 00 0E 4A 30 4D
-52 40 02 3E 52 00 0E 12 3E 4F 30 4D 70 40 02 52
-3E 00 2F 83 8F 4E 00 00 3E 41 30 4D 60 40 05 44
-45 50 54 48 8F 4E FE FF 3E 40 80 1C 0E 8F 0E 11
-2F 83 30 4D 00 00 01 2D 3E 8F 3E E3 1E 53 30 4D
-00 00 02 31 2B 00 1E 53 30 4D C2 40 02 31 2D 00
-1E 83 30 4D 3E F3 06 34 BF E3 00 00 3E E3 9F 53
-00 00 0E 63 30 4D 00 00 01 40 2E 4E 30 4D E8 40
-01 21 BE 4F 00 00 3E 4F 30 4D CC 40 02 30 3D 00
-1E 83 0E 7E 30 4D FC 40 02 30 3C 00 0E 5E 0E 7E
-3E E3 30 4D 00 00 01 3D 3E 8F FA 27 0E F3 30 4D
-00 00 02 55 3C 00 3E 8F F9 2B 01 24 3E 43 30 4D
-16 41 02 3C 23 00 B2 40 B2 1D B2 1D 30 4D 0B 4E
+30 40 04 40 B0 12 06 41 12 D2 0A 18 F9 3F 39 40
+4C 00 29 83 B9 40 C2 4E B4 FF FB 23 B2 40 C6 41
+F0 FF 30 41 2F 83 8F 4E 00 00 3E 4D 30 4D 2F 82
+8F 4E 02 00 7E 4D 8F 4D 00 00 0D 5E 1D B3 0D 63
+30 4D 0E 93 3E 4F 05 24 2D 4D 30 4D 0E 93 3E 4F
+FB 27 2D 53 30 4D 39 40 00 80 39 8F 08 4E 3E 4F
+08 59 19 15 30 4D 81 5E 00 00 3E 4F 32 B0 00 01
+EB 27 21 52 2D 53 30 4D 91 53 00 00 F7 3F 0B 4E
 1C 4F 02 00 2E 4F 0A 43 34 40 20 00 0E 93 04 20
 04 11 0E 4C 0C 43 09 43 0A 9B 01 28 0A 8B 09 69
 08 68 14 83 07 30 0C 5C 0E 6E 0A 6A F5 2B 0A 8B
-12 D3 F5 3F 34 40 00 40 8F 4A 02 00 8F 49 00 00
-0E 48 30 41 00 00 01 23 1B 42 DC 1D 2C 4F 2F 83
-B0 12 46 41 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 86 41 02 23 53 00 87 12 88 41 C0 41
-2D 83 09 93 E3 23 0E 93 E1 23 3D 41 30 4D B6 41
-02 23 3E 00 9F 42 B2 1D 00 00 3E 40 B2 1D 2E 8F
-30 4D 00 00 04 48 4F 4C 44 00 0A 4E 3E 4F DB 3F
-8E 40 04 53 49 47 4E 00 0E 93 3E 4F 3A 40 2D 00
-D2 33 30 4D 87 12 36 41 34 40 86 40 D4 40 BA 41
-92 40 F8 41 D4 41 38 44 A4 47 E0 43 2A 40 22 41
-02 55 2E 00 08 43 2F 83 8F 4E 00 00 0E 48 EA 3F
-00 00 01 2E 0E 93 F6 37 38 43 F5 3F 2D 4D 30 4D
-0E 93 3E 4F FB 27 2D 53 30 4D 0E 93 3E 4F F6 23
-2D 53 30 4D 39 40 00 80 39 8F 08 4E 3E 4F 08 59
-19 15 30 4D 81 5E 00 00 3E 4F 32 B0 00 01 E6 27
-2D 53 21 52 30 4D 91 53 00 00 F7 3F E4 41 01 49
-2F 83 8F 4E 00 00 2E 41 1E 81 02 00 30 4D 00 00
-03 4B 45 59 30 40 98 42 18 42 CC 05 2F 83 8F 4E
-00 00 B0 12 B6 42 92 B3 DC 05 FD 27 1E 42 CC 05
-B0 12 C8 42 30 4D A2 B3 DC 05 FD 27 B2 40 11 00
-CE 05 E2 C2 23 02 30 41 B2 40 13 00 CE 05 E2 D2
-23 02 30 41 00 00 05 53 4C 45 45 50 30 40 E0 42
-B0 12 B6 42 12 D2 0A 18 F9 3F 0D 12 3D 40 0A 43
+12 D3 F5 3F 34 40 EC 40 8F 4A 02 00 8F 49 00 00
+0E 48 30 41 82 4E C0 1D B2 4F C2 1D 3E 4F 82 43
+C4 1D 30 4D 3F 80 06 00 8F 4E 04 00 3E 40 54 00
+BF 40 3C 1D 00 00 AF 4F 02 00 51 3C 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 A2 B3 DC 05 FD 27 B2 40 11 00
+CE 05 E2 C2 23 02 30 41 A2 B3 DC 05 FD 27 B2 40
+13 00 CE 05 E2 D2 23 02 30 41 0D 12 3D 40 4A 41
 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 0C 43 2D 83 0C 9B
+1C 42 1E 20 1B 42 20 20 02 3C 4C 41 2D 83 0C 9B
 14 2C 58 4C 00 1E 1C 53 78 90 20 00 07 2C 78 90
-0A 00 F5 23 82 4C 1E 20 3D 41 30 4D 0E 99 3D 24
-CA 48 00 00 1A 53 1E 53 38 3C 1A 15 B0 12 0C 62
-19 17 DE 3F F0 40 06 41 43 43 45 50 54 00 30 40
-52 43 3C 40 C2 43 3B 40 8C 43 2D 15 0A 4E 2E 4F
-0A 5E 3B 40 0D 00 3C 40 20 00 3D 40 B6 43 92 B3
-DC 05 05 24 18 42 CC 05 38 90 0A 00 9C 23 21 53
-3D 15 AC 3F 21 52 3A 17 58 42 CC 05 48 9C 08 2C
-48 9B 9A 27 78 92 11 20 2E 9F 0F 24 1E 83 05 3C
-0E 9A 03 24 CE 48 00 00 1E 53 A2 B3 DC 05 FD 27
-82 48 CE 05 30 4D B8 43 2D 83 92 B3 DC 05 E4 23
-FC 27 82 93 DE 1D 02 24 92 53 DE 1D 3E 8F 3D 41
-B2 40 18 00 0A 18 30 4D 9E 40 04 45 4D 49 54 00
-30 40 E4 43 08 4E 3E 4F E0 3F 85 12 3C 1D 3F 80
-06 00 8F 4E 04 00 3E 40 54 00 9F 42 EC 43 00 00
-AF 4F 02 00 A4 3F DA 43 04 45 43 48 4F 00 B2 40
-82 48 B0 43 82 43 DE 1D 30 4D 32 42 06 4E 4F 45
-43 48 4F 00 B2 40 30 4D B0 43 92 43 DE 1D 30 4D
-20 42 04 54 59 50 45 00 0E 93 0F 24 1E 15 3D 40
-4E 44 28 4F 7E 48 8F 48 00 00 2F 83 C9 3F 50 44
-2D 83 91 83 02 00 F5 23 1D 17 2F 53 3E 4F 30 4D
-D0 41 02 43 52 00 30 40 6A 44 87 12 80 44 02 0D
-0A 00 38 44 2A 40 2F 83 8F 4E 00 00 3E 4D 30 4D
-2F 82 8F 4E 02 00 7E 4D 8F 4D 00 00 0D 5E 1D B3
-0D 63 30 4D F2 41 82 53 22 00 82 43 B4 1D 87 12
-76 44 80 44 12 47 76 44 22 00 E2 44 AE 44 B2 40
+0A 00 F5 23 82 4C 1E 20 3D 41 30 4D 0E 99 3E 24
+CA 48 00 00 1A 53 1E 53 39 3C 1A 15 B0 12 AE 5F
+19 17 DE 3F 00 00 06 41 43 43 45 50 54 00 30 40
+92 41 3C 40 04 42 3B 40 CE 41 2D 15 0A 4E 2E 4F
+0A 5E 3B 40 0D 00 3C 40 20 00 3D 40 F8 41 92 B3
+DC 05 05 24 18 42 CC 05 38 90 0A 00 A4 23 21 53
+3D 15 30 40 00 40 21 52 3A 17 58 42 CC 05 48 9C
+08 2C 48 9B A1 27 78 92 11 20 2E 9F 0F 24 1E 83
+05 3C 0E 9A 03 24 CE 48 00 00 1E 53 A2 B3 DC 05
+FD 27 82 48 CE 05 30 4D FA 41 2D 83 92 B3 DC 05
+E4 23 FC 27 82 93 DE 1D 02 24 92 53 DE 1D 3E 8F
+3D 41 B2 40 18 00 0A 18 30 4D 00 00 04 45 4D 49
+54 00 30 40 26 42 08 4E 3E 4F E0 3F 1C 42 04 45
+43 48 4F 00 B2 40 82 48 F2 41 82 43 DE 1D 30 4D
+00 00 06 4E 4F 45 43 48 4F 00 B2 40 30 4D F2 41
+92 43 DE 1D 30 4D 00 00 04 54 59 50 45 00 0E 93
+0F 24 1E 15 3D 40 74 42 28 4F 7E 48 8F 48 00 00
+2F 83 D7 3F 76 42 2D 83 91 83 02 00 F5 23 1D 17
+2F 53 3E 4F 30 4D 00 00 02 43 52 00 30 40 90 42
+0D 12 87 12 2E 40 02 0D 0A 00 5E 42 84 43 00 00
+03 4B 45 59 30 40 A8 42 18 42 CC 05 2F 83 8F 4E
+00 00 B0 12 06 41 92 B3 DC 05 FD 27 1E 42 CC 05
+B0 12 18 41 30 4D 2F 83 8F 4E 00 00 30 4D 8F 4E
+FE FF AF 4F FC FF 2F 82 30 4D 0E 93 F4 23 30 4D
+2A 4F 8F 4E 00 00 0E 4A 30 4D 8F 4E FE FF 3E 40
+80 1C 0E 8F 0E 11 2F 83 30 4D 2F 83 8F 4E 00 00
+3E 41 30 4D 3E 8F 3E E3 1E 53 30 4D BE 4F 00 00
+3E 4F 30 4D 1E 83 0E 7E 30 4D 0E 5E 0E 7E 3E E3
+30 4D 3E 8F 03 24 3E 43 01 2C 0E F3 30 4D 00 00
+02 3C 23 00 B2 40 B2 1D B2 1D 30 4D 88 42 01 23
+1B 42 DC 1D 2C 4F 2F 83 B0 12 86 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 3E 43 02 23
+53 00 0D 12 87 12 40 43 7A 43 2D 83 09 93 E2 23
+0E 93 E0 23 3D 41 30 4D 6E 43 02 23 3E 00 9F 42
+B2 1D 00 00 3E 40 B2 1D 2E 8F 30 4D 00 00 04 48
+4F 4C 44 00 4A 4E 3E 4F DA 3F 00 00 04 53 49 47
+4E 00 0E 93 3E 4F 7A 40 2D 00 D1 33 30 4D 58 42
+02 55 2E 00 08 43 2F 83 8F 4E 00 00 0E 48 0D 12
+0E 12 3E F3 06 34 BF E3 00 00 3E E3 9F 53 00 00
+0E 63 87 12 34 43 72 43 FA 42 B2 43 8E 43 5E 42
+CE 46 22 42 84 43 42 42 01 2E 0E 93 E3 37 38 43
+E2 3F AC 43 82 53 22 00 82 43 B4 1D 0D 12 87 12
+24 40 2E 40 56 46 24 40 22 00 50 44 1E 44 B2 40
 20 00 B4 1D 6E 4E 1E 53 1E B3 82 6E C6 1D 3D 41
-3E 4F 30 4D 1C 44 82 2E 22 00 87 12 9A 44 76 44
-38 44 12 47 2A 40 48 43 05 3C 00 00 04 57 4F 52
-44 00 48 4E 19 42 C0 1D 1A 42 C2 1D 09 5A 1A 52
-C4 1D 09 9A 03 24 7E 9A FC 27 1A 83 4E F8 06 20
-0E 4A 1A 82 C2 1D 82 4A C4 1D 30 4D 18 42 C6 1D
-3B 40 60 00 C8 4C 00 00 09 9A 0C 24 7C 4A 4E 9C
-09 24 18 53 4B 9C F6 2F 7C 90 7B 00 F3 2F 5C 82
-B4 1D F0 3F 1A 82 C2 1D 82 4A C4 1D 1E 42 C6 1D
-08 8E CE 48 00 00 30 4D 00 00 04 46 49 4E 44 00
-2F 83 0C 4E 65 4C 74 40 80 00 3B 40 CA 1D 3E 4B
-0E 93 1E 24 58 4C 01 00 78 F0 1E 00 0E 58 2E 53
-1E 4E FE FF 0E 93 F3 27 09 4E 78 49 48 C4 48 95
-F7 23 0A 4C FA 99 01 00 F3 23 1A 53 58 83 FA 23
-19 B3 09 63 0C 49 6A 4E 1E 43 4A 93 01 30 2E 83
-8F 4C 00 00 35 40 0E 40 34 40 00 40 30 4D 82 40
-07 3E 4E 55 4D 42 45 52 3C 4F 38 4F 29 4F 2F 82
-1B 42 DC 1D 6A 4C 7A 80 30 00 7A 90 0A 00 05 28
-7A 80 07 00 7A 90 0A 00 12 28 0A 9B 22 C3 0F 2C
-82 49 D0 04 82 48 D2 04 82 4B C8 04 19 42 E4 04
-18 42 E6 04 09 5A 08 63 1C 53 1E 83 E3 23 8F 4C
-00 00 8F 48 02 00 8F 49 04 00 30 4D 32 C0 00 02
-1B 42 DC 1D 0C 43 2D 15 3D 40 56 46 09 43 08 43
-3F 82 8F 4E 06 00 0C 4E 7E 4C 6A 4C 7A 90 2D 00
-04 28 C9 23 B1 43 02 00 DF 3F 2B 43 7A 80 25 00
-07 24 3B 52 6A 53 04 24 3B 40 10 00 5A 83 BA 23
-1C 53 1E 83 EA 3F 58 46 2F 24 2D 83 7A 90 28 00
-CB 27 32 D0 00 02 7A 90 F7 00 C6 27 7A 90 F5 00
-23 20 0A 4E 09 43 8F 49 02 00 5A 83 09 4A 09 5C
-69 49 79 80 30 00 79 90 0A 00 05 28 79 80 07 00
-79 90 0A 00 0A 28 09 9B 08 2C 8F 49 00 00 0E 4B
-2C 15 B0 12 3E 41 2A 17 E6 3F 9F 4F 04 00 02 00
-AF 4F 04 00 0E 4A 4E 93 2B 17 0E 4C 82 4B DC 1D
-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 7E 42 04 48 45 52
-45 00 2F 83 8F 4E 00 00 1E 42 C6 1D 30 4D B6 40
-01 2C 1A 42 C6 1D 8A 4E 00 00 A2 53 C6 1D 3E 4F
-30 4D 46 43 05 41 4C 4C 4F 54 82 5E C6 1D 3E 4F
-30 4D 08 44 07 45 58 45 43 55 54 45 0A 4E 3E 4F
-00 4A 10 47 87 4C 49 54 45 52 41 4C 82 93 BE 1D
-0C 24 1A 42 C6 1D A2 52 C6 1D BA 40 76 44 00 00
-8A 4E 02 00 3E 4F 32 B0 00 02 32 C0 00 02 06 24
-19 4A 02 00 8A 4E 02 00 0E 49 EB 3F 30 4D 62 44
-05 43 4F 55 4E 54 2F 83 1E 53 8F 4E 00 00 5E 4E
-FF FF 30 4D 82 4E C0 1D B2 4F C2 1D 3E 4F 82 43
-C4 1D 30 4D 85 12 20 00 87 12 94 47 A4 47 E2 44
-B2 47 3D 40 BA 47 CC 22 82 3E BC 47 0A 4E 3E 4F
-3D 40 D2 47 23 27 3D 40 AC 47 1A E2 BE 1D A1 27
-B5 23 D4 47 3E 4F 3D 40 AC 47 B8 23 DE 53 00 00
-68 4E 08 5E F8 40 3F 00 00 00 3D 40 CC 4A CB 3F
-34 47 08 45 56 41 4C 55 41 54 45 00 39 40 C0 1D
-3C 49 3B 49 3A 49 3D 15 B0 12 2A 40 A8 47 10 48
-B2 41 C4 1D B2 41 C2 1D B2 41 C0 1D 3D 41 30 4D
-85 12 BE 1D 82 43 08 18 31 40 E0 1C B2 40 00 1C
-00 1C 82 43 BE 1D 30 4D 80 47 04 42 4F 4F 54 00
-82 93 08 18 1D 24 E2 B2 60 02 1A 20 2F 83 8F 4E
-00 00 1E 42 08 18 B0 12 2A 40 24 44 24 48 80 44
-0F 4C 4F 41 44 22 20 42 4F 4F 54 2E 34 54 48 22
-3C 42 8E 48 08 41 04 51 55 49 54 00 30 40 80 48
-B0 12 2A 40 24 48 66 44 EE 43 A4 47 E0 43 A8 47
-A4 40 0C 41 80 44 0C 73 74 61 63 6B 20 65 6D 70
-74 79 21 00 E6 48 76 44 30 FF 02 47 26 41 80 44
-0A 46 52 41 4D 20 66 75 6C 6C 21 00 E6 48 3C 42
-86 48 24 47 05 41 42 4F 52 54 3F 40 80 1C D6 3F
-C4 48 86 41 42 4F 52 54 22 00 87 12 9A 44 76 44
-E6 48 12 47 2A 40 8F 93 02 00 03 20 2F 52 3E 4F
-30 4D B0 12 EC 4E B0 12 B6 42 92 C3 DC 05 38 40
-A0 AA 39 42 03 43 19 83 FD 23 18 83 FA 23 92 B3
-DC 05 F3 23 87 12 60 4E 76 44 DE 1D EA 40 0E 44
-80 44 04 1B 5B 37 6D 00 38 44 58 40 40 42 40 49
-66 44 80 44 05 6C 69 6E 65 3A 38 44 D0 40 24 42
-38 44 80 44 04 1B 5B 30 6D 00 38 44 CA 48 00 00
-83 5B 27 5D 87 12 66 49 76 44 76 44 12 47 12 47
-2A 40 4A 45 01 27 87 12 A4 47 E2 44 50 45 40 42
-74 49 2A 40 DC 47 32 41 81 5C 92 42 C0 1D C4 1D
-30 4D 50 49 81 5B 82 43 BE 1D 30 4D 78 49 01 5D
-B2 43 BE 1D 30 4D BE 4F 02 00 3E 4F 30 4D FC 46
-82 49 53 00 87 12 20 48 EA 40 40 42 B8 49 54 49
-76 44 96 49 12 47 2A 40 66 49 96 49 2A 40 A0 49
-09 49 4D 4D 45 44 49 41 54 45 1A 42 B6 1D FA D0
-80 00 00 00 30 4D 76 48 88 50 4F 53 54 50 4F 4E
-45 00 87 12 A4 47 E2 44 50 45 58 40 40 42 74 49
-0C 41 40 42 02 4A 76 44 76 44 12 47 12 47 76 44
-12 47 12 47 2A 40 84 49 81 3B 82 93 BE 1D B5 27
-87 12 76 44 2A 40 12 47 A0 4A 86 49 2A 40 08 4A
-07 3A 4E 4F 4E 41 4D 45 30 12 46 4A 2F 83 8F 4E
-00 00 1E 42 C6 1D 1E B3 0E 63 0A 4E 39 40 00 02
-38 40 02 02 21 3C BA 40 87 12 FC FF A2 83 C6 1D
-B2 43 BE 1D 30 4D 20 4A 01 3A 30 12 46 4A 92 B3
-C6 1D A2 63 C6 1D 87 12 A4 47 E2 44 6E 4A 3D 41
-08 4E 7A 4E 5A D3 5A 53 0A 58 19 42 DA 1D 6E 4E
-3E F0 1E 00 09 5E 3E 4F 82 48 B6 1D 82 49 B8 1D
-82 4A BA 1D 82 4F BC 1D 2A 52 82 4A C6 1D 30 41
-82 9F BC 1D 09 20 18 42 B6 1D 19 42 B8 1D A8 49
-FE FF 89 48 00 00 30 4D 87 12 80 44 0F 73 74 61
-63 6B 20 6D 69 73 6D 61 74 63 68 21 F2 48 F2 47
-05 44 45 46 45 52 B0 12 5E 4A BA 40 30 40 FC FF
-BA 40 54 4A FE FF E3 3F 3A 48 06 43 52 45 41 54
-45 00 B0 12 5E 4A BA 40 85 12 FC FF 8A 4A FE FF
-D6 3F D0 4A 05 44 4F 45 53 3E 1A 42 BA 1D BA 40
-84 12 00 00 8A 4D 02 00 3D 41 30 4D B0 45 05 3E
-42 4F 44 59 2E 52 30 4D EA 4A 04 43 4F 44 45 00
-B0 12 5E 4A 82 43 D8 5F A2 82 C6 1D 87 12 CE 4D
-A0 4D 2A 40 2A 4B 07 43 4F 44 45 4E 4E 4D B0 12
-2C 4A F0 3F 00 00 07 45 4E 44 43 4F 44 45 87 12
-E8 4D A0 4A 2A 40 D2 48 03 41 53 4D B2 40 A4 4D
-DA 1D DE 3F 56 4B 06 45 4E 44 41 53 4D 00 87 12
-5E 4B 12 4E 2A 40 00 00 05 43 4F 4C 4F 4E 1A 42
-C6 1D BA 40 87 12 00 00 A2 53 C6 1D B2 43 BE 1D
-30 40 E8 4D 00 00 05 4C 4F 32 48 49 1A 42 C6 1D
-BA 40 B0 12 00 00 BA 40 2A 40 02 00 A2 52 C6 1D
-ED 3F C0 49 85 48 49 32 4C 4F 87 12 02 47 F4 4B
-12 47 86 49 CE 4D A0 4D 2A 40 C4 4B 82 49 46 00
-2F 83 8F 4E 00 00 1E 42 C6 1D A2 52 C6 1D BE 40
-40 42 00 00 2E 53 30 4D 04 4B 84 45 4C 53 45 00
-A2 52 C6 1D 1A 42 C6 1D BA 40 3C 42 FC FF 8E 4A
-00 00 2A 83 0E 4A 30 4D 32 44 84 54 48 45 4E 00
-9E 42 C6 1D 00 00 3E 4F 30 4D 46 4B 85 42 45 47
-49 4E 30 40 02 47 1A 4C 85 55 4E 54 49 4C 39 40
-40 42 A2 52 C6 1D 1A 42 C6 1D 8A 49 FC FF 8A 4E
-FE FF 3E 4F 30 4D 68 4B 85 41 47 41 49 4E 39 40
-3C 42 EF 3F DC 44 85 57 48 49 4C 45 87 12 E0 4B
-76 40 2A 40 96 44 86 52 45 50 45 41 54 00 87 12
-5E 4C 20 4C 2A 40 FA 4B 82 44 4F 00 2F 83 8F 4E
-00 00 A2 53 C6 1D 1E 42 C6 1D BE 40 54 42 FE FF
-A2 53 00 1C 1A 42 00 1C 8A 43 00 00 30 4D 44 47
-84 4C 4F 4F 50 00 39 40 76 42 A2 52 C6 1D 1A 42
-C6 1D 8A 49 FC FF 8A 4E FE FF 1E 42 00 1C A2 83
-00 1C 2E 4E 0E 93 03 24 8E 4A 00 00 F6 3F 3E 4F
-30 4D 90 42 85 2B 4C 4F 4F 50 39 40 64 42 E5 3F
-B0 4C 04 4D 4F 56 45 00 0A 4E 38 4F 39 4F 3E 4F
-0A 93 11 24 08 99 0F 24 06 2C F8 49 00 00 18 53
-1A 83 FB 23 30 4D 08 5A 09 5A 19 83 18 83 E8 49
-00 00 1A 83 FA 23 30 4D 66 4C 0A 56 4F 43 41 42
-55 4C 41 52 59 00 87 12 F2 4A 76 44 10 00 76 44
-00 00 54 42 76 44 00 00 12 47 76 42 44 4D 02 47
-76 44 C8 1D 34 40 EA 40 12 47 F2 40 0A 4B 76 44
-CA 1D F2 40 2A 40 64 49 05 46 4F 52 54 48 84 12
-5E 4D C8 4D DA 63 CE 63 68 4D DC 4B E4 4C E8 63
-F8 4D 84 4E 8E 65 1E 69 40 68 00 00 CA 52 8E 49
-1E 4B 00 00 58 4C 09 41 53 53 45 4D 42 4C 45 52
-84 12 5E 4D A2 5E 3A 5E 9E 5D 62 59 06 58 00 00
-66 5C 00 00 C8 5F DC 5F 5E 58 9C 58 6E 5E 00 00
-00 00 3E 59 92 4D 96 4D 04 41 4C 53 4F 00 3A 40
-0C 00 39 40 CA 1D 38 40 CC 1D 9D 3F D8 49 08 50
-52 45 56 49 4F 55 53 00 3A 40 0E 00 39 40 CC 1D
-38 40 CA 1D 8A 3F C6 44 04 4F 4E 4C 59 00 82 43
-CC 1D 30 4D 88 4C 0B 44 45 46 49 4E 49 54 49 4F
-4E 53 92 42 CA 1D DA 1D 30 4D 6E 4D FE 4D 12 4E
-22 4E 3A 4E 82 4A C8 1D 2E 4E 82 4E C6 1D 3D 40
-10 00 09 4A 08 49 29 83 18 48 FE FF 0E 98 FC 2B
-89 48 00 00 1D 83 F6 23 2A 4A 0A 93 F0 23 3E 4F
-3D 41 30 4D DE 4D 09 50 57 52 5F 53 54 41 54 45
-84 12 1A 4E C4 4D 7A 69 76 4C 09 52 53 54 5F 53
-54 41 54 45 92 42 0E 18 64 4E 92 42 0C 18 66 4E
-EF 3F 56 4E 08 50 57 52 5F 48 45 52 45 00 92 42
-C8 1D 64 4E 92 42 C6 1D 66 4E 30 4D 6A 4E 08 52
-53 54 5F 48 45 52 45 00 92 42 C8 1D 0E 18 92 42
-C6 1D 0C 18 EC 3F 2A 4D 04 57 49 50 45 00 39 40
-10 00 29 83 B9 43 80 FF FC 23 B2 40 E0 42 DE 42
-B2 40 4A 4F 48 4F B2 40 80 48 7E 48 B2 40 C4 4D
-0E 18 B2 40 7A 69 0C 18 30 12 74 4E B2 40 E4 43
-E2 43 B2 40 6A 44 68 44 B2 40 98 42 96 42 B2 40
-52 43 50 43 B2 40 3C 1D EC 43 1B 42 32 20 0B 93
-04 24 CB 43 02 00 2B 4B FA 3F B2 40 18 00 0A 18
-37 40 1A 40 36 40 92 40 35 40 0E 40 34 40 00 40
-B2 40 0A 00 DC 1D B2 40 20 00 B4 1D 30 41 B8 4E
-04 57 41 52 4D 00 30 40 4A 4F 3D 40 98 50 92 C3
-30 01 1E 42 08 18 0E 93 9E 24 D2 B3 01 02 02 20
-3E E3 1E 53 F2 D0 03 00 0D 02 E2 B2 60 02 8A 20
-39 42 B0 12 9E 60 D2 C3 23 02 2C 42 B2 40 95 00
-14 20 B2 40 00 40 18 20 B0 12 14 60 02 24 30 40
-3A 61 B0 12 9C 60 7A 93 FC 23 B2 40 87 AA 14 20
-92 43 16 20 B2 40 00 48 18 20 B0 12 14 60 29 42
-B0 12 9E 60 92 43 14 20 82 43 16 20 78 43 3C 42
-B2 40 00 77 18 20 B0 12 14 60 B2 40 40 69 18 20
-B0 12 5A 60 03 24 58 83 F3 23 D9 3F 0C 5C A2 43
-16 20 B2 40 00 50 18 20 B0 12 5A 60 D0 23 92 D3
-40 06 82 43 46 06 92 C3 40 06 B0 12 C4 60 38 40
-00 1E 92 48 C6 01 04 20 92 48 C8 01 06 20 5A 48
-C2 01 92 43 02 20 7A 80 06 00 0F 24 7A 82 0D 24
-A2 43 02 20 6A 53 09 24 5A 53 07 24 6A 52 05 24
-3A 50 0B 20 0C 4A 30 40 40 61 B0 12 C4 60 D2 48
-0D 00 12 20 19 48 0E 00 82 49 08 20 1A 48 16 00
-0A 93 02 20 1A 48 24 00 82 4A 0A 20 09 5A 82 49
-0C 20 09 5A A2 93 02 20 04 24 82 49 0E 20 39 50
-20 00 19 82 12 20 19 82 12 20 82 49 10 20 92 42
-02 20 2C 20 3E 90 0A 00 1A 27 3E 90 16 00 17 2F
-2E 93 E6 26 EF 2E 30 4D 80 44 06 0D 1B 5B 37 6D
-23 00 38 44 34 42 80 44 19 46 61 73 74 46 6F 72
-74 68 20 C2 A9 4A 2E 4D 2E 54 68 6F 6F 72 65 6E
-73 20 38 44 76 44 30 FF 02 47 B8 40 24 42 80 44
-0A 62 79 74 65 73 20 66 72 65 65 00 3C 42 40 49
-2C 4C 04 43 4F 4C 44 00 92 B3 CA 05 FD 23 B2 40
-04 A5 20 01 98 50 B2 40 88 5A 5C 01 B2 D3 06 02
+3E 4F 30 4D F8 43 82 2E 22 00 0D 12 87 12 08 44
+24 40 5E 42 56 46 84 43 00 00 04 57 4F 52 44 00
+3C 40 C0 1D 39 4C 3A 4C 09 5A 3A 5C 28 4C 09 9A
+15 24 7E 9A FC 27 1A 83 3B 40 60 00 C8 4C 00 00
+09 9A 0C 24 7C 4A 4E 9C 09 24 18 53 4B 9C F6 2F
+7C 90 7B 00 F3 2F 5C 82 B4 1D F0 3F 1A 82 C2 1D
+82 4A C4 1D 1E 42 C6 1D 08 8E CE 48 00 00 30 4D
+00 00 04 46 49 4E 44 00 2F 83 0C 4E 65 4C 74 40
+80 00 3B 40 CA 1D 3E 4B 0E 93 1E 24 58 4C 01 00
+78 F0 1E 00 0E 58 2E 53 1E 4E FE FF 0E 93 F3 27
+09 4E 78 49 48 C4 48 95 F7 23 0A 4C FA 99 01 00
+F3 23 1A 53 58 83 FA 23 19 B3 09 63 0C 49 6A 4E
+1E 43 4A 93 01 30 2E 83 8F 4C 00 00 35 40 FA 40
+34 40 EC 40 30 4D 00 00 07 3E 4E 55 4D 42 45 52
+3C 4F 38 4F 29 4F 2F 82 1B 42 DC 1D 6A 4C 7A 80
+30 00 7A 90 0A 00 05 28 7A 80 07 00 7A 90 0A 00
+12 28 0A 9B 22 C3 0F 2C 82 49 D0 04 82 48 D2 04
+82 4B C8 04 19 42 E4 04 18 42 E6 04 09 5A 08 63
+1C 53 1E 83 E3 23 8F 4C 00 00 8F 48 02 00 8F 49
+04 00 30 4D 32 C0 00 02 1B 42 DC 1D 0C 43 2D 15
+3D 40 AE 45 09 43 08 43 3F 82 8F 4E 06 00 0C 4E
+7E 4C 6A 4C 7A 90 2D 00 04 28 C9 23 B1 43 02 00
+0B 3C 2B 43 7A 80 25 00 07 24 3B 52 6A 53 04 24
+3B 40 10 00 5A 83 BA 23 1C 53 1E 83 EA 3F B0 45
+2F 24 2D 83 7A 90 28 00 CB 27 32 D0 00 02 7A 90
+F7 00 C6 27 7A 90 F5 00 23 20 0A 4E 09 43 8F 49
+02 00 5A 83 09 4A 09 5C 69 49 79 80 30 00 79 90
+0A 00 05 28 79 80 07 00 79 90 0A 00 0A 28 09 9B
+08 2C 8F 49 00 00 0E 4B 2C 15 B0 12 7E 40 2A 17
+E6 3F 9F 4F 04 00 02 00 AF 4F 04 00 0E 4A 4E 93
+2B 17 0E 4C 82 4B DC 1D 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 00 00 01 2C 1A 42 C6 1D 8A 4E 00 00 A2 53
+C6 1D 3E 4F 30 4D 86 41 05 41 4C 4C 4F 54 82 5E
+C6 1D 3E 4F 30 4D 0A 4E 3E 4F 00 4A 54 46 87 4C
+49 54 45 52 41 4C 82 93 BE 1D 0C 24 1A 42 C6 1D
+A2 52 C6 1D BA 40 24 40 00 00 8A 4E 02 00 3E 4F
+32 B0 00 02 32 C0 00 02 06 24 19 4A 02 00 8A 4E
+02 00 0E 49 EB 3F 30 4D 8A 43 05 43 4F 55 4E 54
+2F 83 1E 53 8F 4E 00 00 5E 4E FF FF 30 4D 85 12
+20 00 0D 12 87 12 C4 40 CE 46 50 44 DE 46 3D 40
+E6 46 E2 22 A4 26 E8 46 0A 4E 3E 4F 3D 40 FE 46
+39 27 3D 40 D8 46 1A E2 BE 1D BD 23 AC 27 00 47
+3E 4F 3D 40 D8 46 BF 23 DE 53 00 00 68 4E 08 5E
+F8 40 3F 00 00 00 3D 40 C0 49 D2 3F 2E 42 08 45
+56 41 4C 55 41 54 45 00 39 40 C0 1D 3C 49 3B 49
+3A 49 3D 15 87 12 D2 46 3A 47 B2 41 C4 1D B2 41
+C2 1D B2 41 C0 1D 3D 41 30 4D 85 12 BE 1D 82 43
+08 18 31 40 E0 1C B2 40 00 1C 00 1C 82 43 BE 1D
+30 4D BA 46 04 42 4F 4F 54 00 82 93 08 18 1C 24
+E2 B2 60 02 19 20 2F 83 8F 4E 00 00 1E 42 08 18
+87 12 4A 42 4E 47 2E 40 0F 4C 4F 41 44 22 20 42
+4F 4F 54 2E 34 54 48 22 48 40 B4 47 00 00 04 51
+55 49 54 00 30 40 A8 47 87 12 4E 47 8C 42 D4 40
+CE 46 22 42 D2 46 EA 42 1A 43 2E 40 0C 73 74 61
+63 6B 20 65 6D 70 74 79 21 00 0E 48 24 40 40 FF
+CE 4A 22 43 2E 40 0A 46 52 41 4D 20 66 75 6C 6C
+21 00 0E 48 48 40 AC 47 68 46 05 41 42 4F 52 54
+3F 40 80 1C D7 3F EA 47 86 41 42 4F 52 54 22 00
+0D 12 87 12 08 44 24 40 0E 48 56 46 84 43 8F 93
+02 00 03 20 2F 52 3E 4F 30 4D B0 12 B6 4C B0 12
+06 41 92 C3 DC 05 18 42 06 18 39 40 20 00 19 83
+FE 23 18 83 FA 23 92 B3 DC 05 F3 23 0D 12 87 12
+2A 4C 24 40 DE 1D 02 41 34 42 2E 40 04 1B 5B 37
+6D 00 5E 42 DA 42 4C 40 68 48 8C 42 2E 40 05 6C
+69 6E 65 3A 5E 42 C4 43 5E 42 2E 40 04 1B 5B 30
+6D 00 5E 42 F0 47 00 00 83 5B 27 5D 0D 12 87 12
+90 48 24 40 24 40 56 46 56 46 84 43 A2 44 01 27
+0D 12 87 12 CE 46 50 44 A8 44 4C 40 A0 48 84 43
+08 47 30 43 81 5C 92 42 C0 1D C4 1D 30 4D 78 48
+81 5B 82 43 BE 1D 30 4D A4 48 01 5D B2 43 BE 1D
+30 4D 9E 47 88 50 4F 53 54 50 4F 4E 45 00 0D 12
+87 12 CE 46 50 44 A8 44 DA 42 4C 40 A0 48 1A 43
+4C 40 F0 48 24 40 24 40 56 46 56 46 24 40 56 46
+56 46 84 43 9E 43 09 49 4D 4D 45 44 49 41 54 45
+1A 42 B6 1D FA D0 80 00 00 00 30 4D B0 48 01 3A
+30 12 58 49 92 B3 C6 1D A2 63 C6 1D 0D 12 87 12
+CE 46 50 44 26 49 3D 41 08 4E 7A 4E 5A D3 5A 53
+0A 58 19 42 DA 1D 6E 4E 3E F0 1E 00 09 5E 3E 4F
+82 48 B6 1D 82 49 B8 1D 82 4A BA 1D 82 4F BC 1D
+2A 52 82 4A C6 1D 30 41 BA 40 0D 12 FC FF BA 40
+87 12 FE FF B2 43 BE 1D 30 4D 0E 49 07 3A 4E 4F
+4E 41 4D 45 30 12 58 49 2F 83 8F 4E 00 00 1E 42
+C6 1D 1E B3 0E 63 0A 4E 39 40 10 02 38 40 12 02
+D7 3F 82 9F BC 1D 09 20 18 42 B6 1D 19 42 B8 1D
+A8 49 FE FF 89 48 00 00 30 4D 0D 12 87 12 2E 40
+0F 73 74 61 63 6B 20 6D 69 73 6D 61 74 63 68 21
+1A 48 6C 49 81 3B 82 93 BE 1D 6D 27 0D 12 87 12
+24 40 84 43 56 46 92 49 B2 48 84 43 64 47 06 43
+52 45 41 54 45 00 B0 12 14 49 BA 40 85 12 FC FF
+8A 4A FE FF D5 3F 1E 47 05 44 4F 45 53 3E 1A 42
+BA 1D BA 40 84 12 00 00 8A 4D 02 00 3D 41 30 4D
+DE 49 04 43 4F 44 45 00 B0 12 14 49 A2 82 C6 1D
+82 43 78 5D 0D 12 87 12 82 4B 54 4B 84 43 12 4A
+07 43 4F 44 45 4E 4E 4D 30 12 1C 4A 9D 3F 00 00
+07 45 4E 44 43 4F 44 45 0D 12 87 12 92 49 A8 4B
+84 43 F8 47 03 41 53 4D B2 40 58 4B DA 1D DC 3F
+40 4A 06 45 4E 44 41 53 4D 00 0D 12 87 12 48 4A
+DC 4B 84 43 00 00 05 43 4F 4C 4F 4E 1A 42 C6 1D
+BA 40 0D 12 00 00 BA 40 87 12 02 00 A2 52 C6 1D
+B2 43 BE 1D 30 40 A8 4B 00 00 05 4C 4F 32 48 49
+A2 83 C6 1D 1A 42 C6 1D EE 3F F6 48 85 48 49 32
+4C 4F 0D 12 87 12 CE 4A C2 4A 56 46 B2 48 20 4A
+84 43 2E 53 30 4D 30 4A 85 42 45 47 49 4E 2F 83
+8F 4E 00 00 1E 42 C6 1D 30 4D 4A 44 0A 56 4F 43
+41 42 55 4C 41 52 59 00 0D 12 87 12 E6 49 24 40
+10 00 24 40 00 00 56 40 24 40 00 00 56 46 78 40
+F8 4A CE 4A 24 40 C8 1D C6 42 02 41 56 46 0C 43
+FE 49 24 40 CA 1D 0C 43 84 43 8E 48 05 46 4F 52
+54 48 84 12 12 4B 7C 4B 7C 61 70 61 1C 4B AC 4A
+A0 42 8A 61 C2 4B 4E 4C 36 63 C8 66 EA 65 00 00
+78 50 BA 48 08 45 00 00 54 4A 09 41 53 53 45 4D
+42 4C 45 52 84 12 12 4B 44 5C DC 5B 40 5B FC 56
+9A 55 00 00 08 5A 00 00 68 5D 7C 5D F2 55 30 56
+10 5C 00 00 00 00 D6 56 46 4B 4A 4B 04 41 4C 53
+4F 00 3A 40 0C 00 39 40 D6 1D 08 49 28 53 19 83
+18 83 E8 49 00 00 1A 83 FA 23 30 4D C4 48 08 50
+52 45 56 49 4F 55 53 00 3A 40 0E 00 38 40 CA 1D
+09 48 29 53 F8 49 00 00 18 53 1A 83 FB 23 30 4D
+36 44 04 4F 4E 4C 59 00 82 43 CC 1D 30 4D F8 49
+0B 44 45 46 49 4E 49 54 49 4F 4E 53 92 42 CA 1D
+DA 1D 30 4D 22 4B C8 4B DC 4B EC 4B 3A 4E 82 4A
+C8 1D 2E 4E 82 4E C6 1D 3D 40 10 00 09 4A 08 49
+29 83 18 48 FE FF 0E 98 FC 2B 89 48 00 00 1D 83
+F6 23 2A 4A 0A 93 F0 23 3E 4F 3D 41 30 4D 9E 4B
+09 50 57 52 5F 53 54 41 54 45 84 12 E4 4B 78 4B
+26 67 04 44 09 52 53 54 5F 53 54 41 54 45 92 42
+0E 18 2E 4C 92 42 0C 18 30 4C EF 3F 20 4C 08 50
+57 52 5F 48 45 52 45 00 92 42 C8 1D 2E 4C 92 42
+C6 1D 30 4C 30 4D 34 4C 08 52 53 54 5F 48 45 52
+45 00 92 42 C8 1D 0E 18 92 42 C6 1D 0C 18 EC 3F
+DC 4A 04 57 49 50 45 00 39 40 10 00 29 83 B9 43
+80 FF FC 23 B2 40 04 40 02 40 B2 40 14 4D 12 4D
+B2 40 A8 47 A6 47 B2 40 78 4B 0E 18 B2 40 26 67
+0C 18 30 12 3E 4C B2 40 26 42 24 42 B2 40 90 42
+8E 42 B2 40 A8 42 A6 42 B2 40 92 41 90 41 B2 40
+3C 1D E2 40 1B 42 32 20 0B 93 04 24 CB 43 02 00
+2B 4B FA 3F B2 40 18 00 0A 18 37 40 84 43 36 40
+FA 42 35 40 FA 40 34 40 EC 40 B2 40 0A 00 DC 1D
+B2 40 20 00 B4 1D 30 41 82 4C 04 57 41 52 4D 00
+30 40 14 4D 3D 40 66 4E 92 C3 30 01 1E 42 08 18
+0E 93 A0 24 D2 B3 01 02 02 20 3E E3 1E 53 F2 D0
+03 00 0D 02 92 D3 DA 05 E2 B2 60 02 8A 20 39 42
+B0 12 40 5E D2 C3 23 02 2C 42 B2 40 95 00 14 20
+B2 40 00 40 18 20 B0 12 B6 5D 02 24 30 40 DC 5E
+B0 12 3E 5E 7A 93 FC 23 B2 40 87 AA 14 20 92 43
+16 20 B2 40 00 48 18 20 B0 12 B6 5D 29 42 B0 12
+40 5E 92 43 14 20 82 43 16 20 78 43 3C 42 B2 40
+00 77 18 20 B0 12 B6 5D B2 40 40 69 18 20 B0 12
+FC 5D 03 24 58 83 F3 23 D9 3F 0C 5C A2 43 16 20
+B2 40 00 50 18 20 B0 12 FC 5D D0 23 92 D3 40 06
+82 43 46 06 92 C3 40 06 B0 12 66 5E 38 40 00 1E
+92 48 C6 01 04 20 92 48 C8 01 06 20 5A 48 C2 01
+92 43 02 20 7A 80 06 00 0F 24 7A 82 0D 24 A2 43
+02 20 6A 53 09 24 5A 53 07 24 6A 52 05 24 3A 50
+0B 20 0C 4A 30 40 E2 5E B0 12 66 5E D2 48 0D 00
+12 20 19 48 0E 00 82 49 08 20 1A 48 16 00 0A 93
+02 20 1A 48 24 00 82 4A 0A 20 09 5A 82 49 0C 20
+09 5A A2 93 02 20 04 24 82 49 0E 20 39 50 20 00
+19 82 12 20 19 82 12 20 82 49 10 20 92 42 02 20
+2C 20 3E 90 0A 00 18 27 3E 90 16 00 15 2F 2E 93
+E4 26 ED 2E 30 4D 2E 40 07 0D 0A 1B 5B 37 6D 23
+5E 42 FA 43 2E 40 19 46 61 73 74 46 6F 72 74 68
+20 C2 A9 4A 2E 4D 2E 54 68 6F 6F 72 65 6E 73 20
+5E 42 24 40 40 FF CE 4A 04 43 C4 43 2E 40 0A 62
+79 74 65 73 20 66 72 65 65 00 48 40 68 48 C8 4A
+04 43 4F 4C 44 00 92 B3 CA 05 FD 23 B2 40 04 A5
+20 01 31 40 E0 1C B2 40 88 5A 5C 01 B2 D3 06 02
 B2 40 FC FF 02 02 B2 43 26 02 B2 D3 22 02 E2 D2
 25 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
@@ -282,390 +247,388 @@ B2 40 48 00 62 01 82 43 66 01 39 40 00 01 B2 40
 33 00 64 01 D2 43 61 01 92 D2 9E 01 08 18 38 40
 59 14 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 39 40 4C 00
-29 83 B9 40 F6 50 B4 FF FB 23 B2 40 84 43 F0 FF
+39 40 00 10 29 83 89 43 00 1C FC 23 B0 12 0E 40
 B2 40 81 00 C0 05 92 42 02 18 C6 05 92 42 04 18
-C8 05 92 C3 C0 05 92 D3 DA 05 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 3F 40 80 1C 31 40 E0 1C 30 12 46 4F
-9C 3E E2 50 07 43 4F 4D 50 41 52 45 0C 4E 38 4F
-3B 4F 39 4F 0E 4B 0E 5C 0C 24 1B 83 07 30 1C 83
-07 30 19 53 F9 98 FF FF F5 27 02 2C 3E 43 30 4D
-1E 43 30 4D 58 4A 86 5B 54 48 45 4E 5D 00 30 4D
-16 52 86 5B 45 4C 53 45 5D 00 87 12 76 44 00 00
-C6 40 A4 47 E2 44 86 47 34 40 40 42 8C 52 44 40
-80 44 06 5B 54 48 45 4E 5D 00 EC 51 4A 42 5C 52
-5A 44 D0 40 58 40 4A 42 32 52 2A 40 44 40 80 44
-06 5B 45 4C 53 45 5D 00 EC 51 4A 42 7A 52 5A 44
-D0 40 58 40 4A 42 30 52 2A 40 80 44 04 5B 49 46
-5D 00 EC 51 4A 42 32 52 3C 42 30 52 5A 44 80 44
-05 0D 0A 6B 6F 20 38 44 EE 43 94 47 3C 42 32 52
-22 52 84 5B 49 46 5D 00 0E 93 3E 4F BE 27 30 4D
-A2 52 89 5B 44 45 46 49 4E 45 44 5D 87 12 A4 47
-E2 44 50 45 6A 40 2A 40 B2 52 8B 5B 55 4E 44 45
-46 49 4E 45 44 5D 87 12 A4 47 E2 44 50 45 6A 40
-00 41 2A 40 E6 52 3D 41 B2 4E 0E 18 A2 4E 0C 18
-3E 4F 30 40 74 4E F2 4C 06 4D 41 52 4B 45 52 00
-B0 12 5E 4A BA 40 84 12 FC FF BA 40 E4 52 FE FF
-9A 42 C8 1D 00 00 28 83 8A 48 02 00 A2 52 C6 1D
-30 40 A6 4A 1C 15 B0 12 2A 40 E2 44 50 45 4A 42
-3A 53 0C 46 40 42 74 49 54 53 3C 53 39 4E 39 80
+C8 05 92 C3 C0 05 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
+3F 40 80 1C 30 12 10 4D A5 3E C4 49 86 5B 54 48
+45 4E 5D 00 30 4D 0C 4E 38 4F 3B 4F 39 4F 0E 4B
+0E 5C 10 24 1B 83 06 30 1C 83 04 30 19 53 F9 98
+FF FF F5 27 2D 4D 3E 4F 30 4D 2F 53 9F 83 00 00
+F9 23 2F 53 2D 53 F7 3F 9C 4F 86 5B 45 4C 53 45
+5D 00 0D 12 87 12 24 40 00 00 08 43 CE 46 50 44
+C0 46 C6 42 4C 40 34 50 CE 42 2E 40 06 5B 54 48
+45 4E 5D 00 A6 4F 0E 50 CA 4F EC 4F 84 43 CE 42
+2E 40 06 5B 45 4C 53 45 5D 00 A6 4F 24 50 CA 4F
+EA 4F 84 43 2E 40 04 5B 49 46 5D 00 A6 4F EC 4F
+48 40 EA 4F 80 42 2E 40 05 0D 0A 6B 6F 20 5E 42
+D4 40 C4 40 48 40 EC 4F DA 4F 84 5B 49 46 5D 00
+0E 93 3E 4F C6 27 30 4D 2F 53 30 4D 4A 50 89 5B
+44 45 46 49 4E 45 44 5D 0D 12 87 12 CE 46 50 44
+A8 44 58 50 84 43 5E 50 8B 5B 55 4E 44 45 46 49
+4E 45 44 5D 0D 12 87 12 68 50 8C 50 3D 41 30 40
+14 43 38 40 C0 1D 0A 4E 39 48 2E 48 09 5E 1E 52
+C4 1D 09 9E 03 24 7A 9E FC 27 1E 83 0A 4E 2A 88
+82 4A C4 1D 30 4D 1C 15 87 12 50 44 A8 44 42 40
+CA 50 64 45 4C 40 A0 48 E4 50 CC 50 39 4E 39 80
 86 12 08 24 19 53 02 20 2E 4E 04 3C 2E 53 19 53
 01 24 2E 82 1B 17 30 41 32 B0 00 02 01 24 3E 4F
-30 41 3E 40 28 00 B0 12 24 53 B0 12 58 53 19 42
+30 41 3E 40 28 00 B0 12 B6 50 B0 12 E8 50 19 42
 C6 1D A2 53 C6 1D 89 4E 00 00 3E 40 29 00 1C 15
-12 12 C4 1D 92 53 C4 1D B0 12 2A 40 E2 44 0C 46
-40 42 A0 53 96 53 21 53 3E 90 10 00 81 2D DA 2B
-A2 53 B2 41 C4 1D D6 3F 87 12 A4 47 D6 44 B0 53
+12 12 C4 1D 92 53 C4 1D 87 12 50 44 64 45 4C 40
+2E 51 24 51 21 53 3E 90 10 00 84 2D DB 2B 30 51
+B2 41 C4 1D D7 3F 0D 12 87 12 CE 46 92 50 40 51
 0C 43 1B 42 C6 1D A2 53 C6 1D 6A 4E 3E 4F 7A 90
-23 00 29 20 92 53 C4 1D B0 12 24 53 B0 12 58 53
+23 00 29 20 92 53 C4 1D B0 12 B6 50 B0 12 E8 50
 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 C6 1D A2 53 C6 1D 89 4E 00 00
 3E 4F 3D 41 30 4D 7A 90 26 00 09 20 3C 40 10 02
-92 53 C4 1D B0 12 24 53 B0 12 58 53 EB 3F 7A 90
-40 00 16 20 3C 40 20 00 92 53 C4 1D B0 12 7E 53
-0C 20 3C 50 10 00 3E 40 2B 00 B0 12 7E 53 92 92
+92 53 C4 1D B0 12 B6 50 B0 12 E8 50 EB 3F 7A 90
+40 00 16 20 3C 40 20 00 92 53 C4 1D B0 12 0E 51
+0C 20 3C 50 10 00 3E 40 2B 00 B0 12 0E 51 92 92
 C0 1D C4 1D 02 24 92 53 C4 1D 8E 10 0C 5E D8 3F
-B0 12 7E 53 FA 23 3C 50 10 00 B0 12 62 53 EF 3F
-0C 43 1B 42 C6 1D A2 53 C6 1D 87 12 A4 47 D6 44
-82 54 FE 90 26 00 00 00 3E 40 20 00 03 20 3C 50
-82 00 C6 3F B0 12 7E 53 E1 23 3C 50 80 00 B0 12
-62 53 DC 3F D6 42 04 52 45 54 49 00 87 12 76 44
-00 13 12 47 2A 40 76 44 2C 00 A8 53 7A 54 C0 54
-09 4B 2E 4E 0E DC A2 3F A6 4B 03 4D 4F 56 84 12
-B6 54 00 40 CA 54 05 4D 4F 56 2E 42 84 12 B6 54
-40 40 00 00 03 41 44 44 84 12 B6 54 00 50 E4 54
-05 41 44 44 2E 42 84 12 B6 54 40 50 F0 54 04 41
-44 44 43 00 84 12 B6 54 00 60 FE 54 06 41 44 44
-43 2E 42 00 84 12 B6 54 40 60 A6 54 04 53 55 42
-43 00 84 12 B6 54 00 70 1C 55 06 53 55 42 43 2E
-42 00 84 12 B6 54 40 70 2A 55 03 53 55 42 84 12
-B6 54 00 80 3A 55 05 53 55 42 2E 42 84 12 B6 54
-40 80 88 4B 03 43 4D 50 84 12 B6 54 00 90 54 55
-05 43 4D 50 2E 42 84 12 B6 54 40 90 76 4B 04 44
-41 44 44 00 84 12 B6 54 00 A0 6E 55 06 44 41 44
-44 2E 42 00 84 12 B6 54 40 A0 60 55 03 42 49 54
-84 12 B6 54 00 B0 8C 55 05 42 49 54 2E 42 84 12
-B6 54 40 B0 98 55 03 42 49 43 84 12 B6 54 00 C0
-A6 55 05 42 49 43 2E 42 84 12 B6 54 40 C0 B2 55
-03 42 49 53 84 12 B6 54 00 D0 C0 55 05 42 49 53
-2E 42 84 12 B6 54 40 D0 00 00 03 58 4F 52 84 12
-B6 54 00 E0 DA 55 05 58 4F 52 2E 42 84 12 B6 54
-40 E0 0C 55 03 41 4E 44 84 12 B6 54 00 F0 F4 55
-05 41 4E 44 2E 42 84 12 B6 54 40 F0 A4 47 A8 53
-12 56 0A 4C 3C F0 70 00 8A 10 3A F0 0F 00 0C DA
-4F 3F 46 55 03 52 52 43 84 12 0C 56 00 10 24 56
-05 52 52 43 2E 42 84 12 0C 56 40 10 30 56 04 53
-57 50 42 00 84 12 0C 56 80 10 3E 56 03 52 52 41
-84 12 0C 56 00 11 4C 56 05 52 52 41 2E 42 84 12
-0C 56 40 11 58 56 03 53 58 54 84 12 0C 56 80 11
-00 00 04 50 55 53 48 00 84 12 0C 56 00 12 72 56
-06 50 55 53 48 2E 42 00 84 12 0C 56 40 12 CC 55
-04 43 41 4C 4C 00 84 12 0C 56 80 12 1A 53 0E 4A
-87 12 34 42 80 44 0D 6F 75 74 20 6F 66 20 62 6F
-75 6E 64 73 F2 48 A4 47 D6 44 BC 56 92 53 C4 1D
-3E 40 2C 00 B0 12 2A 40 E2 44 0C 46 40 42 74 49
-70 54 D4 56 0A 4E 3E 4F 1A 83 E0 33 29 4E 59 0E
-0A 28 08 4C 59 0A 01 28 0C 8A 08 8A 38 90 10 00
-D5 2F 5A 0E 94 3F 2A 92 D1 2F 8A 10 5A 06 8F 3F
-66 56 06 52 52 43 4D 2E 41 00 84 12 B6 56 40 00
-02 57 04 52 52 43 4D 00 84 12 B6 56 50 00 12 57
-06 52 52 41 4D 2E 41 00 84 12 B6 56 40 01 20 57
-04 52 52 41 4D 00 84 12 B6 56 50 01 30 57 06 52
-4C 41 4D 2E 41 00 84 12 B6 56 40 02 3E 57 04 52
-4C 41 4D 00 84 12 B6 56 50 02 4E 57 06 52 52 55
-4D 2E 41 00 84 12 B6 56 40 03 5C 57 04 52 52 55
-4D 00 84 12 B6 56 50 03 80 56 07 50 55 53 48 4D
-2E 41 84 12 B6 56 00 14 7A 57 05 50 55 53 48 4D
-84 12 B6 56 00 15 8A 57 06 50 4F 50 4D 2E 41 00
-84 12 B6 56 00 16 98 57 04 50 4F 50 4D 00 84 12
-B6 56 00 17 6C 57 03 53 3E 3D 85 12 00 38 B6 57
-02 53 3C 00 85 12 00 34 A8 57 03 30 3E 3D 85 12
-00 30 CA 57 02 30 3C 00 85 12 00 30 00 00 02 55
-3C 00 85 12 00 2C DE 57 03 55 3E 3D 85 12 00 28
-D4 57 03 30 3C 3E 85 12 00 24 F2 57 02 30 3D 00
-85 12 00 20 00 00 02 49 46 00 1A 42 C6 1D 8A 4E
-00 00 A2 53 C6 1D 0E 4A 30 4D E8 57 04 54 48 45
-4E 00 1A 42 C6 1D 08 4E 3E 4F 09 48 29 53 0A 89
-0A 11 3A 90 00 02 33 2F 88 DA 00 00 30 4D 7C 55
-04 45 4C 53 45 00 1A 42 C6 1D BA 40 00 3C 00 00
-A2 53 C6 1D 2F 83 8F 4A 00 00 E3 3F 1C 58 05 55
-4E 54 49 4C 3A 4F 08 4E 3E 4F 19 42 C6 1D 2A 83
-0A 89 0A 11 3A 90 00 FE 12 3B 3A F0 FF 03 08 DA
-89 48 00 00 A2 53 C6 1D 30 4D 00 56 05 41 47 41
-49 4E 0A 4E 38 40 00 3C E7 3F 00 00 05 57 48 49
-4C 45 87 12 0A 58 76 40 2A 40 C0 57 06 52 45 50
-45 41 54 00 87 12 92 58 22 58 2A 40 BE 58 3D 41
-08 4E 3E 4F 2A 48 B2 92 C4 1D CD 2F 98 42 C6 1D
-00 00 30 4D 90 56 03 42 57 31 84 12 BC 58 00 00
-D6 58 03 42 57 32 84 12 BC 58 00 00 E2 58 03 42
-57 33 84 12 BC 58 00 00 FA 58 3D 41 1A 42 C6 1D
-28 4E B2 92 C4 1D 90 2B BA 4F 00 00 A2 53 C6 1D
-8E 4A 00 00 3E 4F 30 4D 00 00 03 46 57 31 84 12
-F8 58 00 00 1A 59 03 46 57 32 84 12 F8 58 00 00
-26 59 03 46 57 33 84 12 F8 58 00 00 00 00 05 3F
-47 4F 54 4F 3E 90 00 30 07 24 3E E0 00 04 3E B0
-00 10 02 24 3E E0 00 08 87 12 66 49 3C 47 2A 40
-32 59 04 47 4F 54 4F 00 2F 83 8F 4E 00 00 3E 40
-00 3C F2 3F 87 12 A4 47 D6 44 7C 59 69 4E 3E 4F
-3C 4F 2C 4C 1B 42 C6 1D A2 53 C6 1D 79 90 52 00
-0A 20 B0 12 7E 53 5E 0E 5E 0E 0E DC 8B 4E 00 00
-0E 4B 3D 41 30 4D 79 90 23 00 0D 20 3C C0 40 00
-92 53 C4 1D A2 53 C6 1D B0 12 24 53 BB 4F 02 00
-3E F0 0F 00 E8 3F 79 90 26 00 03 20 3C E0 E0 00
-EF 3F 3C C0 F0 00 79 90 40 00 12 20 92 53 C4 1D
-B0 12 7E 53 D8 23 3C D0 10 00 3E 40 2B 00 B0 12
-7E 53 92 92 C0 1D C4 1D CE 27 92 53 C4 1D CB 3F
-3C D0 30 00 A2 53 C6 1D 3E 40 28 00 B0 12 24 53
-BB 4F 02 00 3E 40 29 00 EA 3F 87 12 A4 47 D6 44
-22 5A 3B 4F 2C 4B 69 4E 7E 40 20 00 79 90 52 00
-03 20 B0 12 7E 53 B1 3F 3C C0 F0 00 A2 53 C6 1D
-79 90 26 00 09 20 3C D0 60 00 92 53 C4 1D B0 12
-24 53 BB 4F 02 00 A1 3F 3C D0 70 00 3E 40 28 00
-B0 12 24 53 BB 4F 02 00 3E 40 29 00 E2 3F 76 44
-2C 00 74 59 1A 5A 66 40 2A 40 D6 54 04 4D 4F 56
-41 00 84 12 6E 5A C0 00 EE 58 04 43 4D 50 41 00
-84 12 6E 5A D0 00 8C 58 04 41 44 44 41 00 84 12
-6E 5A E0 00 AC 58 04 53 55 42 41 00 84 12 6E 5A
-F0 00 8A 5A 05 43 41 4C 4C 41 87 12 A4 47 D6 44
-C2 5A 1B 42 C6 1D A2 53 C6 1D 6E 4E 3C 40 34 01
-7E 90 52 00 0B 20 7E 40 20 00 B0 12 7E 53 5C 0E
+B0 12 0E 51 FA 23 3C 50 10 00 B0 12 F2 50 EF 3F
+0C 43 1B 42 C6 1D A2 53 C6 1D 0D 12 87 12 CE 46
+92 50 14 52 FE 90 26 00 00 00 3E 40 20 00 03 20
+3C 50 82 00 C5 3F B0 12 0E 51 E0 23 3C 50 80 00
+B0 12 F2 50 DB 3F 00 00 04 52 45 54 49 00 0D 12
+87 12 24 40 00 13 56 46 84 43 24 40 2C 00 36 51
+0A 52 54 52 09 4B 2E 4E 0E DC A0 3F 9A 4A 03 4D
+4F 56 84 12 4A 52 00 40 5E 52 05 4D 4F 56 2E 42
+84 12 4A 52 40 40 00 00 03 41 44 44 84 12 4A 52
+00 50 78 52 05 41 44 44 2E 42 84 12 4A 52 40 50
+84 52 04 41 44 44 43 00 84 12 4A 52 00 60 92 52
+06 41 44 44 43 2E 42 00 84 12 4A 52 40 60 38 52
+04 53 55 42 43 00 84 12 4A 52 00 70 B0 52 06 53
+55 42 43 2E 42 00 84 12 4A 52 40 70 BE 52 03 53
+55 42 84 12 4A 52 00 80 CE 52 05 53 55 42 2E 42
+84 12 4A 52 40 80 76 4A 03 43 4D 50 84 12 4A 52
+00 90 E8 52 05 43 4D 50 2E 42 84 12 4A 52 40 90
+62 4A 04 44 41 44 44 00 84 12 4A 52 00 A0 02 53
+06 44 41 44 44 2E 42 00 84 12 4A 52 40 A0 F4 52
+03 42 49 54 84 12 4A 52 00 B0 20 53 05 42 49 54
+2E 42 84 12 4A 52 40 B0 2C 53 03 42 49 43 84 12
+4A 52 00 C0 3A 53 05 42 49 43 2E 42 84 12 4A 52
+40 C0 46 53 03 42 49 53 84 12 4A 52 00 D0 54 53
+05 42 49 53 2E 42 84 12 4A 52 40 D0 00 00 03 58
+4F 52 84 12 4A 52 00 E0 6E 53 05 58 4F 52 2E 42
+84 12 4A 52 40 E0 A0 52 03 41 4E 44 84 12 4A 52
+00 F0 88 53 05 41 4E 44 2E 42 84 12 4A 52 40 F0
+CE 46 36 51 A6 53 0A 4C 3C F0 70 00 8A 10 3A F0
+0F 00 0C DA 4F 3F DA 52 03 52 52 43 84 12 A0 53
+00 10 B8 53 05 52 52 43 2E 42 84 12 A0 53 40 10
+C4 53 04 53 57 50 42 00 84 12 A0 53 80 10 D2 53
+03 52 52 41 84 12 A0 53 00 11 E0 53 05 52 52 41
+2E 42 84 12 A0 53 40 11 EC 53 03 53 58 54 84 12
+A0 53 80 11 00 00 04 50 55 53 48 00 84 12 A0 53
+00 12 06 54 06 50 55 53 48 2E 42 00 84 12 A0 53
+40 12 60 53 04 43 41 4C 4C 00 84 12 A0 53 80 12
+1A 53 0E 4A 0D 12 87 12 FA 43 2E 40 0D 6F 75 74
+20 6F 66 20 62 6F 75 6E 64 73 1A 48 CE 46 92 50
+52 54 92 53 C4 1D 3E 40 2C 00 87 12 50 44 64 45
+4C 40 A0 48 00 52 68 54 0A 4E 3E 4F 1A 83 E0 33
+29 4E 59 0E 0A 28 08 4C 59 0A 01 28 0C 8A 08 8A
+38 90 10 00 D5 2F 5A 0E 94 3F 2A 92 D1 2F 8A 10
+5A 06 8F 3F FA 53 06 52 52 43 4D 2E 41 00 84 12
+4C 54 40 00 96 54 04 52 52 43 4D 00 84 12 4C 54
+50 00 A6 54 06 52 52 41 4D 2E 41 00 84 12 4C 54
+40 01 B4 54 04 52 52 41 4D 00 84 12 4C 54 50 01
+C4 54 06 52 4C 41 4D 2E 41 00 84 12 4C 54 40 02
+D2 54 04 52 4C 41 4D 00 84 12 4C 54 50 02 E2 54
+06 52 52 55 4D 2E 41 00 84 12 4C 54 40 03 F0 54
+04 52 52 55 4D 00 84 12 4C 54 50 03 14 54 07 50
+55 53 48 4D 2E 41 84 12 4C 54 00 14 0E 55 05 50
+55 53 48 4D 84 12 4C 54 00 15 1E 55 06 50 4F 50
+4D 2E 41 00 84 12 4C 54 00 16 2C 55 04 50 4F 50
+4D 00 84 12 4C 54 00 17 00 55 03 53 3E 3D 85 12
+00 38 4A 55 02 53 3C 00 85 12 00 34 3C 55 03 30
+3E 3D 85 12 00 30 5E 55 02 30 3C 00 85 12 00 30
+00 00 02 55 3C 00 85 12 00 2C 72 55 03 55 3E 3D
+85 12 00 28 68 55 03 30 3C 3E 85 12 00 24 86 55
+02 30 3D 00 85 12 00 20 00 00 02 49 46 00 1A 42
+C6 1D 8A 4E 00 00 A2 53 C6 1D 0E 4A 30 4D 7C 55
+04 54 48 45 4E 00 1A 42 C6 1D 08 4E 3E 4F 09 48
+29 53 0A 89 0A 11 3A 90 00 02 33 2F 88 DA 00 00
+30 4D 10 53 04 45 4C 53 45 00 1A 42 C6 1D BA 40
+00 3C 00 00 A2 53 C6 1D 2F 83 8F 4A 00 00 E3 3F
+B0 55 05 55 4E 54 49 4C 3A 4F 08 4E 3E 4F 19 42
+C6 1D 2A 83 0A 89 0A 11 3A 90 00 FE 12 3B 3A F0
+FF 03 08 DA 89 48 00 00 A2 53 C6 1D 30 4D 94 53
+05 41 47 41 49 4E 0A 4E 38 40 00 3C E7 3F 00 00
+05 57 48 49 4C 45 0D 12 87 12 9E 55 E0 42 84 43
+54 55 06 52 45 50 45 41 54 00 0D 12 87 12 26 56
+B6 55 84 43 56 56 3D 41 08 4E 3E 4F 2A 48 B2 92
+C4 1D CB 2F 98 42 C6 1D 00 00 30 4D 24 54 03 42
+57 31 84 12 54 56 00 00 6E 56 03 42 57 32 84 12
+54 56 00 00 7A 56 03 42 57 33 84 12 54 56 00 00
+92 56 3D 41 1A 42 C6 1D 28 4E B2 92 C4 1D 8E 2B
+BA 4F 00 00 A2 53 C6 1D 8E 4A 00 00 3E 4F 30 4D
+00 00 03 46 57 31 84 12 90 56 00 00 B2 56 03 46
+57 32 84 12 90 56 00 00 BE 56 03 46 57 33 84 12
+90 56 00 00 00 00 05 3F 47 4F 54 4F 3E 90 00 30
+07 24 3E E0 00 04 3E B0 00 10 02 24 3E E0 00 08
+0D 12 87 12 90 48 76 46 84 43 CA 56 04 47 4F 54
+4F 00 2F 83 8F 4E 00 00 3E 40 00 3C F1 3F 0D 12
+87 12 CE 46 92 50 18 57 69 4E 3E 4F 3C 4F 2C 4C
+1B 42 C6 1D A2 53 C6 1D 79 90 52 00 0A 20 B0 12
+0E 51 5E 0E 5E 0E 0E DC 8B 4E 00 00 0E 4B 3D 41
+30 4D 79 90 23 00 0D 20 3C C0 40 00 92 53 C4 1D
+A2 53 C6 1D B0 12 B6 50 BB 4F 02 00 3E F0 0F 00
+E8 3F 79 90 26 00 03 20 3C E0 E0 00 EF 3F 3C C0
+F0 00 79 90 40 00 12 20 92 53 C4 1D B0 12 0E 51
+D8 23 3C D0 10 00 3E 40 2B 00 B0 12 0E 51 92 92
+C0 1D C4 1D CE 27 92 53 C4 1D CB 3F 3C D0 30 00
+A2 53 C6 1D 3E 40 28 00 B0 12 B6 50 BB 4F 02 00
+3E 40 29 00 EA 3F 0D 12 87 12 CE 46 92 50 C0 57
+3B 4F 2C 4B 69 4E 7E 40 20 00 79 90 52 00 03 20
+B0 12 0E 51 B0 3F 3C C0 F0 00 A2 53 C6 1D 79 90
+26 00 09 20 3C D0 60 00 92 53 C4 1D B0 12 B6 50
+BB 4F 02 00 A0 3F 3C D0 70 00 3E 40 28 00 B0 12
+B6 50 BB 4F 02 00 3E 40 29 00 E2 3F 24 40 2C 00
+0E 57 B6 57 82 42 84 43 6A 52 04 4D 4F 56 41 00
+84 12 0C 58 C0 00 86 56 04 43 4D 50 41 00 84 12
+0C 58 D0 00 20 56 04 41 44 44 41 00 84 12 0C 58
+E0 00 42 56 04 53 55 42 41 00 84 12 0C 58 F0 00
+28 58 05 43 41 4C 4C 41 0D 12 87 12 CE 46 92 50
+62 58 1B 42 C6 1D A2 53 C6 1D 6E 4E 3C 40 34 01
+7E 90 52 00 0B 20 7E 40 20 00 B0 12 0E 51 5C 0E
 0C DE 8B 4C 00 00 3E 4F 3D 41 30 4D 2C 53 7E 90
-40 00 0B 20 92 53 C4 1D 7E 40 20 00 B0 12 7E 53
+40 00 0B 20 92 53 C4 1D 7E 40 20 00 B0 12 0E 51
 EE 23 1C 53 3E 40 2B 00 E8 3F A2 53 C6 1D 7E 90
-23 00 09 20 3C 40 3B 01 92 53 C4 1D B0 12 24 53
+23 00 09 20 3C 40 3B 01 92 53 C4 1D B0 12 B6 50
 BB 4F 02 00 DC 3F 7E 90 26 00 02 20 2C 53 F4 3F
-7E 40 28 00 1C 83 B0 12 24 53 BB 4F 02 00 3E 40
-29 00 CB 3F 87 12 A4 47 D6 44 4C 5B 69 4E 3E 4F
-3C 40 00 18 79 90 52 00 05 20 B0 12 7E 53 0E 4C
-3D 41 30 4D 82 43 D8 5F 79 90 23 00 0B 20 92 53
-C4 1D B0 12 24 53 2F 53 3E F0 0F 00 5E 0A 5E 0E
-0C DE ED 3F 79 90 26 00 F2 27 79 90 40 00 12 20
-92 53 C4 1D B0 12 7E 53 E2 23 3E 40 2B 00 92 53
-C4 1D B0 12 7E 53 92 92 C0 1D C4 1D D8 27 92 53
-C4 1D D5 3F 3E 40 28 00 B0 12 24 53 8F 4E 00 00
-3E 40 29 00 B0 12 7E 53 3E 4F 3E F0 0F 00 0C DE
-EA 3F 87 12 A4 47 D6 44 DA 5B 3C 4F 69 4E 3E 40
-20 00 79 90 52 00 BB 27 82 43 D8 5F 79 90 26 00
-08 20 92 53 C4 1D B0 12 24 53 2F 53 3E F0 0F 00
-BF 3F 3E 40 28 00 B0 12 24 53 F7 3F 1B 42 C6 1D
-A2 53 C6 1D 0C 4E 3E 4F 1C D2 D8 5F 82 43 D8 5F
-3C DE 8B 4C 00 00 B2 41 C4 1D 30 4D 76 44 C4 1D
-EA 40 86 40 76 44 2C 00 44 5B D2 5B 0C 5C 3C 42
-B6 54 7C 5A 04 4D 4F 56 58 00 84 12 2C 5C 40 00
-00 40 44 5C 06 4D 4F 56 58 2E 41 00 84 12 2C 5C
-00 00 40 40 54 5C 06 4D 4F 56 58 2E 42 00 84 12
-2C 5C 40 00 40 40 98 5A 04 41 44 44 58 00 84 12
-2C 5C 40 00 00 50 78 5C 06 41 44 44 58 2E 41 00
-84 12 2C 5C 00 00 40 50 88 5C 06 41 44 44 58 2E
-42 00 84 12 2C 5C 40 00 40 50 9A 5C 05 41 44 44
-43 58 84 12 2C 5C 40 00 00 60 AC 5C 07 41 44 44
-43 58 2E 41 84 12 2C 5C 00 00 40 60 BC 5C 07 41
-44 44 43 58 2E 42 84 12 2C 5C 40 00 40 60 A6 5A
-05 53 55 42 43 58 84 12 2C 5C 40 00 00 70 E0 5C
-07 53 55 42 43 58 2E 41 84 12 2C 5C 00 00 40 70
-F0 5C 07 53 55 42 43 58 2E 42 84 12 2C 5C 40 00
-40 70 02 5D 04 53 55 42 58 00 84 12 2C 5C 40 00
-00 80 14 5D 06 53 55 42 58 2E 41 00 84 12 2C 5C
-00 00 40 80 24 5D 06 53 55 42 58 2E 42 00 84 12
-2C 5C 40 00 40 80 B4 5A 04 43 4D 50 58 00 84 12
-2C 5C 40 00 00 90 48 5D 06 43 4D 50 58 2E 41 00
-84 12 2C 5C 00 00 40 90 58 5D 06 43 4D 50 58 2E
-42 00 84 12 2C 5C 40 00 40 90 40 58 05 44 41 44
-44 58 84 12 2C 5C 40 00 00 A0 7C 5D 07 44 41 44
-44 58 2E 41 84 12 2C 5C 00 00 40 A0 8C 5D 07 44
-41 44 44 58 2E 42 84 12 2C 5C 40 00 40 A0 6A 5D
-04 42 49 54 58 00 84 12 2C 5C 40 00 00 B0 B0 5D
-06 42 49 54 58 2E 41 00 84 12 2C 5C 00 00 40 B0
-C0 5D 06 42 49 54 58 2E 42 00 84 12 2C 5C 40 00
-40 B0 D2 5D 04 42 49 43 58 00 84 12 2C 5C 40 00
-00 C0 E4 5D 06 42 49 43 58 2E 41 00 84 12 2C 5C
-00 00 40 C0 F4 5D 06 42 49 43 58 2E 42 00 84 12
-2C 5C 40 00 40 C0 06 5E 04 42 49 53 58 00 84 12
-2C 5C 40 00 00 D0 18 5E 06 42 49 53 58 2E 41 00
-84 12 2C 5C 00 00 40 D0 28 5E 06 42 49 53 58 2E
-42 00 84 12 2C 5C 40 00 40 D0 E6 55 04 58 4F 52
-58 00 84 12 2C 5C 40 00 00 E0 4C 5E 06 58 4F 52
-58 2E 41 00 84 12 2C 5C 00 00 40 E0 5C 5E 06 58
-4F 52 58 2E 42 00 84 12 2C 5C 40 00 40 E0 CE 5C
-04 41 4E 44 58 00 84 12 2C 5C 40 00 00 F0 80 5E
-06 41 4E 44 58 2E 41 00 84 12 2C 5C 00 00 40 F0
-90 5E 06 41 4E 44 58 2E 42 00 84 12 2C 5C 40 00
-40 F0 76 44 C4 1D EA 40 86 40 A4 47 44 5B 0C 5C
-3C 42 0C 56 36 5D 04 52 52 43 58 00 84 12 B2 5E
-40 00 00 10 C6 5E 06 52 52 43 58 2E 41 00 84 12
-B2 5E 00 00 40 10 D6 5E 06 52 52 43 58 2E 42 00
-84 12 B2 5E 40 00 40 10 E8 5E 04 52 52 55 58 00
-84 12 B2 5E 40 01 00 10 FA 5E 06 52 52 55 58 2E
-41 00 84 12 B2 5E 00 01 40 10 0A 5F 06 52 52 55
-58 2E 42 00 84 12 B2 5E 40 01 40 10 1C 5F 05 53
-57 50 42 58 84 12 B2 5E 40 00 80 10 2E 5F 07 53
-57 50 42 58 2E 41 84 12 B2 5E 00 00 80 10 3E 5F
-04 52 52 41 58 00 84 12 B2 5E 40 00 00 11 50 5F
-06 52 52 41 58 2E 41 00 84 12 B2 5E 00 00 40 11
-60 5F 06 52 52 41 58 2E 42 00 84 12 B2 5E 40 00
-40 11 72 5F 04 53 58 54 58 00 84 12 B2 5E 40 00
-80 11 84 5F 06 53 58 54 58 2E 41 00 84 12 B2 5E
-00 00 80 11 FC 57 05 50 55 53 48 58 84 12 B2 5E
-40 00 00 12 A6 5F 07 50 55 53 48 58 2E 41 84 12
-B2 5E 00 00 40 12 B6 5F 07 50 55 53 48 58 2E 42
-84 12 B2 5E 40 00 40 12 00 00 94 5F 03 52 50 54
-87 12 A4 47 D6 44 E8 5F 29 4E 7E 40 20 00 79 90
-52 00 06 20 B0 12 7E 53 03 24 3E D0 80 00 05 3C
-B0 12 24 53 1E 83 3E F0 0F 00 82 4E D8 5F 3E 4F
-3D 41 30 4D 1A 43 25 3C D2 C3 23 02 E2 B2 60 02
-02 24 30 40 E8 50 1A 52 04 20 19 62 06 20 92 43
-14 20 A2 93 02 20 07 24 0A 5A 49 69 82 4A 16 20
-C2 49 18 20 0A 3C C2 4A 15 20 8A 10 C2 4A 16 20
-C2 49 17 20 89 10 C2 49 18 20 B0 12 9C 60 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 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
-1A 52 08 20 09 43 1C D3 F2 40 51 00 19 20 B0 12
-18 60 33 20 B0 12 9C 60 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
-09 43 2C D3 F0 40 58 00 11 BF B0 12 18 60 15 20
-3A 40 FE FF 29 43 B0 12 A0 60 D2 49 00 1E 4E 06
-03 43 19 53 39 90 00 02 F8 23 39 40 03 00 B0 12
-9E 60 7A C0 E1 00 6A 92 DE 27 8C 10 1C 52 4C 06
-D2 D3 23 02 87 12 80 44 0B 3C 20 53 44 20 45 72
-72 6F 72 21 56 61 2F 83 8F 4E 00 00 B2 40 10 00
-DC 1D 0E 4C B0 12 2A 40 24 42 F2 48 92 4B 0E 00
-22 20 92 4B 10 00 24 20 5A 42 23 20 58 42 22 20
-92 93 02 20 08 24 59 42 24 20 89 10 0A 59 88 10
-08 58 0A 6A 88 10 08 58 30 41 82 43 1C 20 92 42
-0E 20 1A 20 C2 93 24 20 03 20 92 93 22 20 14 24
-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 9A 61 5A 4B 03 00 82 5A
-1A 20 82 63 1C 20 30 41 09 93 07 24 F8 90 20 00
-00 1E 03 20 18 53 19 83 F9 23 30 41 1B 42 32 20
-82 43 1E 20 B2 90 00 02 20 20 A8 20 BB 80 00 02
-12 00 8B 73 14 00 DB 53 03 00 DB 92 12 20 03 00
-11 28 CB 43 03 00 B0 12 6C 61 B0 12 C0 60 8B 43
-10 00 9B 48 00 1E 0E 00 92 93 02 20 03 24 9B 48
-02 1E 10 00 B2 40 00 02 20 20 8B 93 14 00 0B 20
-92 9B 12 00 1E 20 82 2C BB 90 00 02 12 00 03 2C
-92 4B 12 00 20 20 B0 12 DA 61 1A 42 1A 20 19 42
-1C 20 21 3F 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
-07 24 09 4B 3B 50 1C 00 3B 90 18 21 EF 23 0C 5C
-30 41 0C 43 82 4B 32 20 8B 49 00 00 09 93 0A 24
-99 52 C4 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 5F 27 C9 37 8B 43
-16 00 7A 93 02 24 07 38 95 3F B2 40 1C 21 EC 43
-B2 40 EA 42 50 43 9B 42 C0 1D 18 00 9B 82 C4 1D
-18 00 9B 42 C2 1D 1A 00 9B 52 C4 1D 1A 00 82 3F
-CB 43 02 00 2B 4B 82 4B 32 20 0B 93 06 24 92 4B
-16 00 1E 20 B0 12 54 62 22 C3 30 41 1B 42 32 20
-0B 93 FB 27 EB 93 02 00 04 20 B0 12 C2 67 B0 12
-8A 67 CB 93 02 00 E4 37 1E 4B 18 00 9F 4B 1A 00
-00 00 31 50 06 00 3D 41 B0 12 50 63 02 24 30 40
-24 44 B2 40 3C 1D EC 43 B2 40 52 43 50 43 30 40
-0E 44 9E 4E 85 52 45 41 44 22 5A 43 19 3C 40 4F
-86 57 52 49 54 45 22 00 6A 43 12 3C 06 4E 84 44
-45 4C 22 00 6A 42 0C 3C E4 51 05 43 4C 4F 53 45
-B0 12 6C 63 30 4D F8 52 85 4C 4F 41 44 22 7A 43
-2F 83 8F 4E 00 00 0E 4A 82 93 BE 1D 0A 24 87 12
-76 44 76 44 12 47 12 47 9A 44 76 44 20 64 12 47
-2A 40 87 12 76 44 22 00 E2 44 86 47 1E 64 3D 41
-35 4F 0E 55 82 4E 36 20 1C 43 92 42 2C 20 22 20
-92 42 2E 20 24 20 0E 95 8D 24 F5 90 3A 00 01 00
-01 20 25 53 F5 90 5C 00 00 00 08 20 15 53 92 42
-02 20 22 20 82 43 24 20 0E 95 70 24 82 45 34 20
-B0 12 9A 61 34 40 20 00 A2 93 02 20 04 24 92 92
-22 20 02 20 02 24 14 42 12 20 B0 12 7A 62 2C 43
-0A 43 08 4A 58 0E 08 58 82 48 30 20 C8 93 00 1E
-61 24 39 42 F8 95 00 1E 04 20 18 53 19 83 FA 23
-15 53 F5 90 2E 00 FF FF 19 24 39 50 03 00 B0 12
-F8 61 06 20 F5 90 5C 00 FF FF 29 24 0E 95 27 28
-15 42 34 20 1A 53 3A 90 10 00 DB 23 92 53 1A 20
-82 63 1C 20 14 83 D1 23 2C 42 3C 3C F5 90 2E 00
-FE FF EE 27 B0 12 F8 61 EB 23 39 40 03 00 F8 95
-00 1E 04 20 18 53 19 83 FA 23 09 3C 0E 95 E0 2F
-F5 90 5C 00 FF FF DC 23 B0 12 F8 61 D9 23 18 42
-30 20 92 48 1A 1E 22 20 92 48 14 1E 24 20 F8 B0
-10 00 0B 1E 14 24 82 93 24 20 06 20 82 93 22 20
-03 20 92 42 02 20 22 20 0E 95 8E 2F 92 42 22 20
-2C 20 92 42 24 20 2E 20 8F 43 00 00 03 3C 2A 4F
-B0 12 84 62 34 40 00 40 35 40 0E 40 3A 4F 3E 4F
-0A 93 04 24 7A 93 0D 20 0C 93 01 20 30 4D 87 12
-80 44 0B 3C 20 4F 70 65 6E 45 72 72 6F 72 3C 42
-54 61 1A 93 B6 20 0C 93 F2 23 30 4D B4 63 04 52
-45 41 44 00 2F 83 8F 4E 00 00 1E 42 32 20 B0 12
-0C 62 1E 82 32 20 30 4D 2C 43 12 12 2A 20 18 42
-02 20 08 58 2A 41 82 9A 0A 20 A1 24 B0 12 C0 60
-09 43 28 93 03 24 89 93 02 1E 03 20 89 93 00 1E
-07 24 09 58 39 90 00 02 F4 23 91 53 00 00 EA 3F
-0C 43 6A 41 B9 43 00 1E 28 93 0F 24 B9 40 FF 0F
-02 1E 09 11 8A 10 09 5A 5A 41 01 00 0A 11 09 10
-82 4A 28 20 82 49 26 20 07 3C 09 11 C2 49 26 20
-C2 4A 27 20 82 43 28 20 3A 41 82 4A 2A 20 30 41
-0A 12 1A 52 08 20 B0 12 00 61 3A 41 1A 52 0C 20
-30 40 00 61 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 38 39 80 03 00 B0 12 E0 66 39 40 03 00
-7A 4B C8 4A 00 1E 82 9B 36 20 12 28 0D 12 3D 40
-0F 00 3C 40 90 66 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 2A 93 D8 20 2C 93 0D 24 0C 93 A7 24 87 12
-80 44 0C 3C 20 57 72 69 74 65 45 72 72 6F 72 00
-3C 42 54 61 B0 12 A8 65 92 42 26 20 22 20 92 42
-28 20 24 20 B0 12 20 66 B0 12 7A 62 18 42 30 20
-F8 40 20 00 0B 1E B0 12 34 66 88 43 0C 1E 88 4A
-0E 1E 88 49 10 1E 88 49 12 1E 98 42 24 20 14 1E
-98 42 22 20 1A 1E 88 43 1C 1E 88 43 1E 1E 1C 43
-1B 42 34 20 82 9B 36 20 CA 27 FB 90 2E 00 00 00
-C6 27 39 40 0B 00 B0 12 B0 66 B0 12 CC 67 2A 43
-B0 12 84 62 0C 93 BB 23 30 4D 1A 4B 04 00 19 4B
-06 00 B0 12 C6 60 B0 12 34 66 18 4B 08 00 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
-02 61 9B 52 1E 20 12 00 8B 63 14 00 1A 42 1A 20
-19 42 1C 20 30 40 02 61 B2 40 00 02 1E 20 1B 42
-32 20 B0 12 C2 67 82 43 1E 20 DB 53 03 00 DB 92
-12 20 03 00 22 20 CB 43 03 00 B0 12 6C 61 08 12
-0A 12 B0 12 A8 65 2A 91 05 24 B0 12 20 66 2A 41
-B0 12 C0 60 3A 41 38 41 98 42 26 20 00 1E 92 93
-02 20 03 24 98 42 28 20 02 1E B0 12 20 66 9B 42
-26 20 0E 00 9B 42 28 20 10 00 30 40 DA 61 C0 63
-05 57 52 49 54 45 B0 12 D8 67 30 4D 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 1A 4B
-12 00 BB C0 FF 01 12 00 3A F0 FF 01 82 4A 1E 20
-B0 12 76 62 30 4D 0C 93 38 20 38 90 E0 01 03 2C
-C8 93 20 1E 02 24 7C 40 E5 00 C8 4C 00 1E B0 12
-CC 67 B0 12 78 61 82 4A 2A 20 0B 4A B0 12 C0 60
-1A 48 00 1E 88 43 00 1E 92 93 02 20 09 24 19 48
-02 1E 88 43 02 1E 39 F0 FF 0F 39 90 FF 0F 02 20
-3A 93 0E 24 82 4A 22 20 82 49 24 20 B0 12 78 61
-0B 9A E6 27 0A 12 0A 4B B0 12 20 66 3A 41 DD 3F
-0A 4B B0 12 20 66 B0 12 6C 63 30 4D 38 4C 08 54
-45 52 4D 32 53 44 22 00 87 12 D4 63 76 44 02 00
-02 47 86 47 20 64 38 69 3D 41 92 C3 DC 05 08 43
-B0 12 B6 42 92 B3 DC 05 FD 27 59 42 CC 05 69 92
-0D 24 C8 49 00 1E 18 53 38 90 FF 01 F3 2B 03 24
-B0 12 D8 67 EC 3F B0 12 C8 42 EC 3F B0 12 C8 42
-82 48 1E 20 B0 12 6C 63 30 4D
+7E 40 28 00 1C 83 B0 12 B6 50 BB 4F 02 00 3E 40
+29 00 CB 3F 0D 12 87 12 CE 46 92 50 EE 58 69 4E
+3E 4F 3C 40 00 18 79 90 52 00 05 20 B0 12 0E 51
+0E 4C 3D 41 30 4D 82 43 78 5D 79 90 23 00 0B 20
+92 53 C4 1D B0 12 B6 50 2F 53 3E F0 0F 00 5E 0A
+5E 0E 0C DE ED 3F 79 90 26 00 F2 27 79 90 40 00
+12 20 92 53 C4 1D B0 12 0E 51 E2 23 3E 40 2B 00
+92 53 C4 1D B0 12 0E 51 92 92 C0 1D C4 1D D8 27
+92 53 C4 1D D5 3F 3E 40 28 00 B0 12 B6 50 8F 4E
+00 00 3E 40 29 00 B0 12 0E 51 3E 4F 3E F0 0F 00
+0C DE EA 3F 0D 12 87 12 CE 46 92 50 7E 59 3C 4F
+69 4E 3E 40 20 00 79 90 52 00 BA 27 82 43 78 5D
+79 90 26 00 08 20 92 53 C4 1D B0 12 B6 50 2F 53
+3E F0 0F 00 BE 3F 3E 40 28 00 B0 12 B6 50 F7 3F
+B2 4F C4 1D 1B 42 C6 1D A2 53 C6 1D 0C 4E 3E 4F
+1C D2 78 5D 82 43 78 5D 3C DE 8B 4C 00 00 30 4D
+24 40 C4 1D 02 41 24 40 2C 00 E4 58 74 59 B0 59
+48 40 4A 52 1A 58 04 4D 4F 56 58 00 84 12 D0 59
+40 00 00 40 E6 59 06 4D 4F 56 58 2E 41 00 84 12
+D0 59 00 00 40 40 F6 59 06 4D 4F 56 58 2E 42 00
+84 12 D0 59 40 00 40 40 36 58 04 41 44 44 58 00
+84 12 D0 59 40 00 00 50 1A 5A 06 41 44 44 58 2E
+41 00 84 12 D0 59 00 00 40 50 2A 5A 06 41 44 44
+58 2E 42 00 84 12 D0 59 40 00 40 50 3C 5A 05 41
+44 44 43 58 84 12 D0 59 40 00 00 60 4E 5A 07 41
+44 44 43 58 2E 41 84 12 D0 59 00 00 40 60 5E 5A
+07 41 44 44 43 58 2E 42 84 12 D0 59 40 00 40 60
+44 58 05 53 55 42 43 58 84 12 D0 59 40 00 00 70
+82 5A 07 53 55 42 43 58 2E 41 84 12 D0 59 00 00
+40 70 92 5A 07 53 55 42 43 58 2E 42 84 12 D0 59
+40 00 40 70 A4 5A 04 53 55 42 58 00 84 12 D0 59
+40 00 00 80 B6 5A 06 53 55 42 58 2E 41 00 84 12
+D0 59 00 00 40 80 C6 5A 06 53 55 42 58 2E 42 00
+84 12 D0 59 40 00 40 80 52 58 04 43 4D 50 58 00
+84 12 D0 59 40 00 00 90 EA 5A 06 43 4D 50 58 2E
+41 00 84 12 D0 59 00 00 40 90 FA 5A 06 43 4D 50
+58 2E 42 00 84 12 D0 59 40 00 40 90 D4 55 05 44
+41 44 44 58 84 12 D0 59 40 00 00 A0 1E 5B 07 44
+41 44 44 58 2E 41 84 12 D0 59 00 00 40 A0 2E 5B
+07 44 41 44 44 58 2E 42 84 12 D0 59 40 00 40 A0
+0C 5B 04 42 49 54 58 00 84 12 D0 59 40 00 00 B0
+52 5B 06 42 49 54 58 2E 41 00 84 12 D0 59 00 00
+40 B0 62 5B 06 42 49 54 58 2E 42 00 84 12 D0 59
+40 00 40 B0 74 5B 04 42 49 43 58 00 84 12 D0 59
+40 00 00 C0 86 5B 06 42 49 43 58 2E 41 00 84 12
+D0 59 00 00 40 C0 96 5B 06 42 49 43 58 2E 42 00
+84 12 D0 59 40 00 40 C0 A8 5B 04 42 49 53 58 00
+84 12 D0 59 40 00 00 D0 BA 5B 06 42 49 53 58 2E
+41 00 84 12 D0 59 00 00 40 D0 CA 5B 06 42 49 53
+58 2E 42 00 84 12 D0 59 40 00 40 D0 7A 53 04 58
+4F 52 58 00 84 12 D0 59 40 00 00 E0 EE 5B 06 58
+4F 52 58 2E 41 00 84 12 D0 59 00 00 40 E0 FE 5B
+06 58 4F 52 58 2E 42 00 84 12 D0 59 40 00 40 E0
+70 5A 04 41 4E 44 58 00 84 12 D0 59 40 00 00 F0
+22 5C 06 41 4E 44 58 2E 41 00 84 12 D0 59 00 00
+40 F0 32 5C 06 41 4E 44 58 2E 42 00 84 12 D0 59
+40 00 40 F0 24 40 C4 1D 02 41 CE 46 E4 58 B0 59
+48 40 A0 53 D8 5A 04 52 52 43 58 00 84 12 54 5C
+40 00 00 10 66 5C 06 52 52 43 58 2E 41 00 84 12
+54 5C 00 00 40 10 76 5C 06 52 52 43 58 2E 42 00
+84 12 54 5C 40 00 40 10 88 5C 04 52 52 55 58 00
+84 12 54 5C 40 01 00 10 9A 5C 06 52 52 55 58 2E
+41 00 84 12 54 5C 00 01 40 10 AA 5C 06 52 52 55
+58 2E 42 00 84 12 54 5C 40 01 40 10 BC 5C 05 53
+57 50 42 58 84 12 54 5C 40 00 80 10 CE 5C 07 53
+57 50 42 58 2E 41 84 12 54 5C 00 00 80 10 DE 5C
+04 52 52 41 58 00 84 12 54 5C 40 00 00 11 F0 5C
+06 52 52 41 58 2E 41 00 84 12 54 5C 00 00 40 11
+00 5D 06 52 52 41 58 2E 42 00 84 12 54 5C 40 00
+40 11 12 5D 04 53 58 54 58 00 84 12 54 5C 40 00
+80 11 24 5D 06 53 58 54 58 2E 41 00 84 12 54 5C
+00 00 80 11 90 55 05 50 55 53 48 58 84 12 54 5C
+40 00 00 12 46 5D 07 50 55 53 48 58 2E 41 84 12
+54 5C 00 00 40 12 56 5D 07 50 55 53 48 58 2E 42
+84 12 54 5C 40 00 40 12 00 00 34 5D 03 52 50 54
+0D 12 87 12 CE 46 92 50 8A 5D 29 4E 7E 40 20 00
+79 90 52 00 06 20 B0 12 0E 51 03 24 3E D0 80 00
+05 3C B0 12 B6 50 1E 83 3E F0 0F 00 82 4E 78 5D
+3E 4F 3D 41 30 4D 1A 43 25 3C D2 C3 23 02 E2 B2
+60 02 02 24 30 40 B6 4E 1A 52 04 20 19 62 06 20
+92 43 14 20 A2 93 02 20 07 24 0A 5A 49 69 82 4A
+16 20 C2 49 18 20 0A 3C C2 4A 15 20 8A 10 C2 4A
+16 20 C2 49 17 20 89 10 C2 49 18 20 B0 12 3E 5E
+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 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 1A 52 08 20 09 43 1C D3 F2 40 51 00 19 20
+B0 12 BA 5D 33 20 B0 12 3E 5E 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 09 43 2C D3 F0 40 58 00 6F C1 B0 12 BA 5D
+15 20 3A 40 FE FF 29 43 B0 12 42 5E D2 49 00 1E
+4E 06 03 43 19 53 39 90 00 02 F8 23 39 40 03 00
+B0 12 40 5E 7A C0 E1 00 6A 92 DE 27 8C 10 1C 52
+4C 06 D2 D3 23 02 0D 12 87 12 2E 40 0B 3C 20 53
+44 20 45 72 72 6F 72 21 FA 5E 2F 83 8F 4E 00 00
+B2 40 10 00 DC 1D 0E 4C 87 12 C4 43 1A 48 92 4B
+0E 00 22 20 92 4B 10 00 24 20 5A 42 23 20 58 42
+22 20 92 93 02 20 08 24 59 42 24 20 89 10 0A 59
+88 10 08 58 0A 6A 88 10 08 58 30 41 82 43 1C 20
+92 42 0E 20 1A 20 C2 93 24 20 03 20 92 93 22 20
+14 24 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 3C 5F 5A 4B 03 00
+82 5A 1A 20 82 63 1C 20 30 41 09 93 07 24 F8 90
+20 00 00 1E 03 20 18 53 19 83 F9 23 30 41 1B 42
+32 20 82 43 1E 20 B2 90 00 02 20 20 A8 20 BB 80
+00 02 12 00 8B 73 14 00 DB 53 03 00 DB 92 12 20
+03 00 11 28 CB 43 03 00 B0 12 0E 5F B0 12 62 5E
+8B 43 10 00 9B 48 00 1E 0E 00 92 93 02 20 03 24
+9B 48 02 1E 10 00 B2 40 00 02 20 20 8B 93 14 00
+0B 20 92 9B 12 00 1E 20 82 2C BB 90 00 02 12 00
+03 2C 92 4B 12 00 20 20 B0 12 7C 5F 1A 42 1A 20
+19 42 1C 20 21 3F 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 07 24 09 4B 3B 50 1C 00 3B 90 18 21 EF 23
+0C 5C 30 41 0C 43 82 4B 32 20 8B 49 00 00 09 93
+0A 24 99 52 C4 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 5F 27 C9 37
+8B 43 16 00 7A 93 02 24 07 38 95 3F B2 40 1C 21
+E2 40 B2 40 2A 41 90 41 9B 42 C0 1D 18 00 9B 82
+C4 1D 18 00 9B 42 C2 1D 1A 00 9B 52 C4 1D 1A 00
+82 3F CB 43 02 00 2B 4B 82 4B 32 20 0B 93 06 24
+92 4B 16 00 1E 20 B0 12 F6 5F 22 C3 30 41 1B 42
+32 20 0B 93 FB 27 EB 93 02 00 04 20 B0 12 6C 65
+B0 12 34 65 CB 93 02 00 E4 37 1E 4B 18 00 9F 4B
+1A 00 00 00 31 50 06 00 3D 41 B0 12 F2 60 02 24
+30 40 4A 42 B2 40 3C 1D E2 40 B2 40 92 41 90 41
+30 40 34 42 68 4C 85 52 45 41 44 22 5A 43 19 3C
+0A 4D 86 57 52 49 54 45 22 00 6A 43 12 3C D0 4B
+84 44 45 4C 22 00 6A 42 0C 3C B0 4E 05 43 4C 4F
+53 45 B0 12 0E 61 30 4D 7E 46 85 4C 4F 41 44 22
+7A 43 2F 83 8F 4E 00 00 0E 4A 82 93 BE 1D 0B 24
+0D 12 87 12 24 40 24 40 56 46 56 46 08 44 24 40
+C6 61 56 46 84 43 0D 12 87 12 24 40 22 00 50 44
+C0 46 C4 61 3D 41 35 4F 0E 55 82 4E 36 20 1C 43
+92 42 2C 20 22 20 92 42 2E 20 24 20 0E 95 8D 24
+F5 90 3A 00 01 00 01 20 25 53 F5 90 5C 00 00 00
+08 20 15 53 92 42 02 20 22 20 82 43 24 20 0E 95
+70 24 82 45 34 20 B0 12 3C 5F 34 40 20 00 A2 93
+02 20 04 24 92 92 22 20 02 20 02 24 14 42 12 20
+B0 12 1C 60 2C 43 0A 43 08 4A 58 0E 08 58 82 48
+30 20 C8 93 00 1E 61 24 39 42 F8 95 00 1E 04 20
+18 53 19 83 FA 23 15 53 F5 90 2E 00 FF FF 19 24
+39 50 03 00 B0 12 9A 5F 06 20 F5 90 5C 00 FF FF
+29 24 0E 95 27 28 15 42 34 20 1A 53 3A 90 10 00
+DB 23 92 53 1A 20 82 63 1C 20 14 83 D1 23 2C 42
+3C 3C F5 90 2E 00 FE FF EE 27 B0 12 9A 5F EB 23
+39 40 03 00 F8 95 00 1E 04 20 18 53 19 83 FA 23
+09 3C 0E 95 E0 2F F5 90 5C 00 FF FF DC 23 B0 12
+9A 5F D9 23 18 42 30 20 92 48 1A 1E 22 20 92 48
+14 1E 24 20 F8 B0 10 00 0B 1E 14 24 82 93 24 20
+06 20 82 93 22 20 03 20 92 42 02 20 22 20 0E 95
+8E 2F 92 42 22 20 2C 20 92 42 24 20 2E 20 8F 43
+00 00 03 3C 2A 4F B0 12 26 60 34 40 EC 40 35 40
+FA 40 3A 4F 3E 4F 0A 93 04 24 7A 93 0E 20 0C 93
+01 20 30 4D 0D 12 87 12 2E 40 0B 3C 20 4F 70 65
+6E 45 72 72 6F 72 48 40 F8 5E 1A 93 B6 20 0C 93
+F1 23 30 4D 56 61 04 52 45 41 44 00 2F 83 8F 4E
+00 00 1E 42 32 20 B0 12 AE 5F 1E 82 32 20 30 4D
+2C 43 12 12 2A 20 18 42 02 20 08 58 2A 41 82 9A
+0A 20 A1 24 B0 12 62 5E 09 43 28 93 03 24 89 93
+02 1E 03 20 89 93 00 1E 07 24 09 58 39 90 00 02
+F4 23 91 53 00 00 EA 3F 0C 43 6A 41 B9 43 00 1E
+28 93 0F 24 B9 40 FF 0F 02 1E 09 11 8A 10 09 5A
+5A 41 01 00 0A 11 09 10 82 4A 28 20 82 49 26 20
+07 3C 09 11 C2 49 26 20 C2 4A 27 20 82 43 28 20
+3A 41 82 4A 2A 20 30 41 0A 12 1A 52 08 20 B0 12
+A2 5E 3A 41 1A 52 0C 20 30 40 A2 5E 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 38 39 80 03 00
+B0 12 88 64 39 40 03 00 7A 4B C8 4A 00 1E 82 9B
+36 20 12 28 0D 12 3D 40 0F 00 3C 40 38 64 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 2A 93 D9 20 2C 93
+0E 24 0C 93 A8 24 0D 12 87 12 2E 40 0C 3C 20 57
+72 69 74 65 45 72 72 6F 72 00 48 40 F8 5E B0 12
+50 63 92 42 26 20 22 20 92 42 28 20 24 20 B0 12
+C8 63 B0 12 1C 60 18 42 30 20 F8 40 20 00 0B 1E
+B0 12 DC 63 88 43 0C 1E 88 4A 0E 1E 88 49 10 1E
+88 49 12 1E 98 42 24 20 14 1E 98 42 22 20 1A 1E
+88 43 1C 1E 88 43 1E 1E 1C 43 1B 42 34 20 82 9B
+36 20 C9 27 FB 90 2E 00 00 00 C5 27 39 40 0B 00
+B0 12 58 64 B0 12 76 65 2A 43 B0 12 26 60 0C 93
+BA 23 30 4D 1A 4B 04 00 19 4B 06 00 B0 12 68 5E
+B0 12 DC 63 18 4B 08 00 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 A4 5E 9B 52 1E 20
+12 00 8B 63 14 00 1A 42 1A 20 19 42 1C 20 30 40
+A4 5E B2 40 00 02 1E 20 1B 42 32 20 B0 12 6C 65
+82 43 1E 20 DB 53 03 00 DB 92 12 20 03 00 22 20
+CB 43 03 00 B0 12 0E 5F 08 12 0A 12 B0 12 50 63
+2A 91 05 24 B0 12 C8 63 2A 41 B0 12 62 5E 3A 41
+38 41 98 42 26 20 00 1E 92 93 02 20 03 24 98 42
+28 20 02 1E B0 12 C8 63 9B 42 26 20 0E 00 9B 42
+28 20 10 00 30 40 7C 5F 62 61 05 57 52 49 54 45
+B0 12 82 65 30 4D 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 1A 4B 12 00 BB C0 FF 01
+12 00 3A F0 FF 01 82 4A 1E 20 B0 12 18 60 30 4D
+0C 93 38 20 38 90 E0 01 03 2C C8 93 20 1E 02 24
+7C 40 E5 00 C8 4C 00 1E B0 12 76 65 B0 12 1A 5F
+82 4A 2A 20 0B 4A B0 12 62 5E 1A 48 00 1E 88 43
+00 1E 92 93 02 20 09 24 19 48 02 1E 88 43 02 1E
+39 F0 FF 0F 39 90 FF 0F 02 20 3A 93 0E 24 82 4A
+22 20 82 49 24 20 B0 12 1A 5F 0B 9A E6 27 0A 12
+0A 4B B0 12 C8 63 3A 41 DD 3F 0A 4B B0 12 C8 63
+B0 12 0E 61 30 4D C0 43 08 54 45 52 4D 32 53 44
+22 00 0D 12 87 12 76 61 24 40 02 00 CE 4A C0 46
+C6 61 E4 66 3D 41 92 C3 DC 05 08 43 B0 12 06 41
+92 B3 DC 05 FD 27 59 42 CC 05 69 92 0D 24 C8 49
+00 1E 18 53 38 90 FF 01 F3 2B 03 24 B0 12 82 65
+EC 3F B0 12 18 41 EC 3F B0 12 18 41 82 48 1E 20
+B0 12 0E 61 30 4D
 @FFFE
-F6 50
+C2 4E
 q
index 26dbff0..c0938c8 100644 (file)
 @1800
-10 00 08 00 00 D6 E8 03 05 00 18 00 68 69 C4 4D
-2D 01 FF B3 B6 42 C8 42 B4 60 F0 60
+10 00 08 00 00 D6 E8 03 05 00 18 00 14 67 78 4B
+2E 01 FF B3 06 41 18 41 56 5E 92 5E
 @4000
-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 3A 41 0D 12 0D 4A
-30 4D 00 00 04 45 58 49 54 00 3D 41 30 4D 24 40
-03 44 55 50 2F 83 8F 4E 00 00 30 4D 00 00 04 32
-44 55 50 00 8F 4E FE FF AF 4F FC FF 2F 82 30 4D
-00 00 04 3F 44 55 50 00 0E 93 EC 23 30 4D 30 40
-04 44 52 4F 50 00 3E 4F 30 4D 2F 53 30 4D 3E 40
-04 53 57 41 50 00 2A 4F 8F 4E 00 00 0E 4A 30 4D
-52 40 02 3E 52 00 0E 12 3E 4F 30 4D 70 40 02 52
-3E 00 2F 83 8F 4E 00 00 3E 41 30 4D 60 40 05 44
-45 50 54 48 8F 4E FE FF 3E 40 80 1C 0E 8F 0E 11
-2F 83 30 4D 00 00 01 2D 3E 8F 3E E3 1E 53 30 4D
-00 00 02 31 2B 00 1E 53 30 4D C2 40 02 31 2D 00
-1E 83 30 4D 3E F3 06 34 BF E3 00 00 3E E3 9F 53
-00 00 0E 63 30 4D 00 00 01 40 2E 4E 30 4D E8 40
-01 21 BE 4F 00 00 3E 4F 30 4D CC 40 02 30 3D 00
-1E 83 0E 7E 30 4D FC 40 02 30 3C 00 0E 5E 0E 7E
-3E E3 30 4D 00 00 01 3D 3E 8F FA 27 0E F3 30 4D
-00 00 02 55 3C 00 3E 8F F9 2B 01 24 3E 43 30 4D
-16 41 02 3C 23 00 B2 40 B2 1D B2 1D 30 4D 0B 4E
+30 40 04 40 B0 12 06 41 12 D2 0A 18 F9 3F 39 40
+4C 00 29 83 B9 40 C2 4E B4 FF FB 23 B2 40 C6 41
+F0 FF 30 41 2F 83 8F 4E 00 00 3E 4D 30 4D 2F 82
+8F 4E 02 00 7E 4D 8F 4D 00 00 0D 5E 1D B3 0D 63
+30 4D 0E 93 3E 4F 05 24 2D 4D 30 4D 0E 93 3E 4F
+FB 27 2D 53 30 4D 39 40 00 80 39 8F 08 4E 3E 4F
+08 59 19 15 30 4D 81 5E 00 00 3E 4F 32 B0 00 01
+EB 27 21 52 2D 53 30 4D 91 53 00 00 F7 3F 0B 4E
 1C 4F 02 00 2E 4F 0A 43 34 40 20 00 0E 93 04 20
 04 11 0E 4C 0C 43 09 43 0A 9B 01 28 0A 8B 09 69
 08 68 14 83 07 30 0C 5C 0E 6E 0A 6A F5 2B 0A 8B
-12 D3 F5 3F 34 40 00 40 8F 4A 02 00 8F 49 00 00
-0E 48 30 41 00 00 01 23 1B 42 DC 1D 2C 4F 2F 83
-B0 12 46 41 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 86 41 02 23 53 00 87 12 88 41 C0 41
-2D 83 09 93 E3 23 0E 93 E1 23 3D 41 30 4D B6 41
-02 23 3E 00 9F 42 B2 1D 00 00 3E 40 B2 1D 2E 8F
-30 4D 00 00 04 48 4F 4C 44 00 0A 4E 3E 4F DB 3F
-8E 40 04 53 49 47 4E 00 0E 93 3E 4F 3A 40 2D 00
-D2 33 30 4D 87 12 36 41 34 40 86 40 D4 40 BA 41
-92 40 F8 41 D4 41 38 44 A4 47 E0 43 2A 40 22 41
-02 55 2E 00 08 43 2F 83 8F 4E 00 00 0E 48 EA 3F
-00 00 01 2E 0E 93 F6 37 38 43 F5 3F 2D 4D 30 4D
-0E 93 3E 4F FB 27 2D 53 30 4D 0E 93 3E 4F F6 23
-2D 53 30 4D 39 40 00 80 39 8F 08 4E 3E 4F 08 59
-19 15 30 4D 81 5E 00 00 3E 4F 32 B0 00 01 E6 27
-2D 53 21 52 30 4D 91 53 00 00 F7 3F E4 41 01 49
-2F 83 8F 4E 00 00 2E 41 1E 81 02 00 30 4D 00 00
-03 4B 45 59 30 40 98 42 18 42 CC 05 2F 83 8F 4E
-00 00 B0 12 B6 42 92 B3 DC 05 FD 27 1E 42 CC 05
-B0 12 C8 42 30 4D A2 B3 DC 05 FD 27 B2 40 11 00
-CE 05 E2 C2 23 02 30 41 B2 40 13 00 CE 05 E2 D2
-23 02 30 41 00 00 05 53 4C 45 45 50 30 40 E0 42
-B0 12 B6 42 12 D2 0A 18 F9 3F 0D 12 3D 40 0A 43
+12 D3 F5 3F 34 40 EC 40 8F 4A 02 00 8F 49 00 00
+0E 48 30 41 82 4E C0 1D B2 4F C2 1D 3E 4F 82 43
+C4 1D 30 4D 3F 80 06 00 8F 4E 04 00 3E 40 54 00
+BF 40 3C 1D 00 00 AF 4F 02 00 51 3C 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 A2 B3 DC 05 FD 27 B2 40 11 00
+CE 05 E2 C2 23 02 30 41 A2 B3 DC 05 FD 27 B2 40
+13 00 CE 05 E2 D2 23 02 30 41 0D 12 3D 40 4A 41
 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 0C 43 2D 83 0C 9B
+1C 42 1E 20 1B 42 20 20 02 3C 4C 41 2D 83 0C 9B
 14 2C 58 4C 00 1E 1C 53 78 90 20 00 07 2C 78 90
-0A 00 F5 23 82 4C 1E 20 3D 41 30 4D 0E 99 3D 24
-CA 48 00 00 1A 53 1E 53 38 3C 1A 15 B0 12 FA 61
-19 17 DE 3F F0 40 06 41 43 43 45 50 54 00 30 40
-52 43 3C 40 C2 43 3B 40 8C 43 2D 15 0A 4E 2E 4F
-0A 5E 3B 40 0D 00 3C 40 20 00 3D 40 B6 43 92 B3
-DC 05 05 24 18 42 CC 05 38 90 0A 00 9C 23 21 53
-3D 15 AC 3F 21 52 3A 17 58 42 CC 05 48 9C 08 2C
-48 9B 9A 27 78 92 11 20 2E 9F 0F 24 1E 83 05 3C
-0E 9A 03 24 CE 48 00 00 1E 53 A2 B3 DC 05 FD 27
-82 48 CE 05 30 4D B8 43 2D 83 92 B3 DC 05 E4 23
-FC 27 82 93 DE 1D 02 24 92 53 DE 1D 3E 8F 3D 41
-B2 40 18 00 0A 18 30 4D 9E 40 04 45 4D 49 54 00
-30 40 E4 43 08 4E 3E 4F E0 3F 85 12 3C 1D 3F 80
-06 00 8F 4E 04 00 3E 40 54 00 9F 42 EC 43 00 00
-AF 4F 02 00 A4 3F DA 43 04 45 43 48 4F 00 B2 40
-82 48 B0 43 82 43 DE 1D 30 4D 32 42 06 4E 4F 45
-43 48 4F 00 B2 40 30 4D B0 43 92 43 DE 1D 30 4D
-20 42 04 54 59 50 45 00 0E 93 0F 24 1E 15 3D 40
-4E 44 28 4F 7E 48 8F 48 00 00 2F 83 C9 3F 50 44
-2D 83 91 83 02 00 F5 23 1D 17 2F 53 3E 4F 30 4D
-D0 41 02 43 52 00 30 40 6A 44 87 12 80 44 02 0D
-0A 00 38 44 2A 40 2F 83 8F 4E 00 00 3E 4D 30 4D
-2F 82 8F 4E 02 00 7E 4D 8F 4D 00 00 0D 5E 1D B3
-0D 63 30 4D F2 41 82 53 22 00 82 43 B4 1D 87 12
-76 44 80 44 12 47 76 44 22 00 E2 44 AE 44 B2 40
+0A 00 F5 23 82 4C 1E 20 3D 41 30 4D 0E 99 3E 24
+CA 48 00 00 1A 53 1E 53 39 3C 1A 15 B0 12 9C 5F
+19 17 DE 3F 00 00 06 41 43 43 45 50 54 00 30 40
+92 41 3C 40 04 42 3B 40 CE 41 2D 15 0A 4E 2E 4F
+0A 5E 3B 40 0D 00 3C 40 20 00 3D 40 F8 41 92 B3
+DC 05 05 24 18 42 CC 05 38 90 0A 00 A4 23 21 53
+3D 15 30 40 00 40 21 52 3A 17 58 42 CC 05 48 9C
+08 2C 48 9B A1 27 78 92 11 20 2E 9F 0F 24 1E 83
+05 3C 0E 9A 03 24 CE 48 00 00 1E 53 A2 B3 DC 05
+FD 27 82 48 CE 05 30 4D FA 41 2D 83 92 B3 DC 05
+E4 23 FC 27 82 93 DE 1D 02 24 92 53 DE 1D 3E 8F
+3D 41 B2 40 18 00 0A 18 30 4D 00 00 04 45 4D 49
+54 00 30 40 26 42 08 4E 3E 4F E0 3F 1C 42 04 45
+43 48 4F 00 B2 40 82 48 F2 41 82 43 DE 1D 30 4D
+00 00 06 4E 4F 45 43 48 4F 00 B2 40 30 4D F2 41
+92 43 DE 1D 30 4D 00 00 04 54 59 50 45 00 0E 93
+0F 24 1E 15 3D 40 74 42 28 4F 7E 48 8F 48 00 00
+2F 83 D7 3F 76 42 2D 83 91 83 02 00 F5 23 1D 17
+2F 53 3E 4F 30 4D 00 00 02 43 52 00 30 40 90 42
+0D 12 87 12 2E 40 02 0D 0A 00 5E 42 84 43 00 00
+03 4B 45 59 30 40 A8 42 18 42 CC 05 2F 83 8F 4E
+00 00 B0 12 06 41 92 B3 DC 05 FD 27 1E 42 CC 05
+B0 12 18 41 30 4D 2F 83 8F 4E 00 00 30 4D 8F 4E
+FE FF AF 4F FC FF 2F 82 30 4D 0E 93 F4 23 30 4D
+2A 4F 8F 4E 00 00 0E 4A 30 4D 8F 4E FE FF 3E 40
+80 1C 0E 8F 0E 11 2F 83 30 4D 2F 83 8F 4E 00 00
+3E 41 30 4D 3E 8F 3E E3 1E 53 30 4D BE 4F 00 00
+3E 4F 30 4D 1E 83 0E 7E 30 4D 0E 5E 0E 7E 3E E3
+30 4D 3E 8F 03 24 3E 43 01 2C 0E F3 30 4D 00 00
+02 3C 23 00 B2 40 B2 1D B2 1D 30 4D 88 42 01 23
+1B 42 DC 1D 2C 4F 2F 83 B0 12 86 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 3E 43 02 23
+53 00 0D 12 87 12 40 43 7A 43 2D 83 09 93 E2 23
+0E 93 E0 23 3D 41 30 4D 6E 43 02 23 3E 00 9F 42
+B2 1D 00 00 3E 40 B2 1D 2E 8F 30 4D 00 00 04 48
+4F 4C 44 00 4A 4E 3E 4F DA 3F 00 00 04 53 49 47
+4E 00 0E 93 3E 4F 7A 40 2D 00 D1 33 30 4D 58 42
+02 55 2E 00 08 43 2F 83 8F 4E 00 00 0E 48 0D 12
+0E 12 3E F3 06 34 BF E3 00 00 3E E3 9F 53 00 00
+0E 63 87 12 34 43 72 43 FA 42 B2 43 8E 43 5E 42
+CE 46 22 42 84 43 42 42 01 2E 0E 93 E3 37 38 43
+E2 3F AC 43 82 53 22 00 82 43 B4 1D 0D 12 87 12
+24 40 2E 40 56 46 24 40 22 00 50 44 1E 44 B2 40
 20 00 B4 1D 6E 4E 1E 53 1E B3 82 6E C6 1D 3D 41
-3E 4F 30 4D 1C 44 82 2E 22 00 87 12 9A 44 76 44
-38 44 12 47 2A 40 48 43 05 3C 00 00 04 57 4F 52
-44 00 48 4E 19 42 C0 1D 1A 42 C2 1D 09 5A 1A 52
-C4 1D 09 9A 03 24 7E 9A FC 27 1A 83 4E F8 06 20
-0E 4A 1A 82 C2 1D 82 4A C4 1D 30 4D 18 42 C6 1D
-3B 40 60 00 C8 4C 00 00 09 9A 0C 24 7C 4A 4E 9C
-09 24 18 53 4B 9C F6 2F 7C 90 7B 00 F3 2F 5C 82
-B4 1D F0 3F 1A 82 C2 1D 82 4A C4 1D 1E 42 C6 1D
-08 8E CE 48 00 00 30 4D 00 00 04 46 49 4E 44 00
-2F 83 0C 4E 65 4C 74 40 80 00 3B 40 CA 1D 3E 4B
-0E 93 1E 24 58 4C 01 00 78 F0 1E 00 0E 58 2E 53
-1E 4E FE FF 0E 93 F3 27 09 4E 78 49 48 C4 48 95
-F7 23 0A 4C FA 99 01 00 F3 23 1A 53 58 83 FA 23
-19 B3 09 63 0C 49 6A 4E 1E 43 4A 93 01 30 2E 83
-8F 4C 00 00 35 40 0E 40 34 40 00 40 30 4D 82 40
-07 3E 4E 55 4D 42 45 52 3C 4F 38 4F 29 4F 2F 82
-1B 42 DC 1D 6A 4C 7A 80 30 00 7A 90 0A 00 05 28
-7A 80 07 00 7A 90 0A 00 12 28 0A 9B 22 C3 0F 2C
-82 49 D0 04 82 48 D2 04 82 4B C8 04 19 42 E4 04
-18 42 E6 04 09 5A 08 63 1C 53 1E 83 E3 23 8F 4C
-00 00 8F 48 02 00 8F 49 04 00 30 4D 32 C0 00 02
-1B 42 DC 1D 0C 43 2D 15 3D 40 56 46 09 43 08 43
-3F 82 8F 4E 06 00 0C 4E 7E 4C 6A 4C 7A 90 2D 00
-04 28 C9 23 B1 43 02 00 DF 3F 2B 43 7A 80 25 00
-07 24 3B 52 6A 53 04 24 3B 40 10 00 5A 83 BA 23
-1C 53 1E 83 EA 3F 58 46 2F 24 2D 83 7A 90 28 00
-CB 27 32 D0 00 02 7A 90 F7 00 C6 27 7A 90 F5 00
-23 20 0A 4E 09 43 8F 49 02 00 5A 83 09 4A 09 5C
-69 49 79 80 30 00 79 90 0A 00 05 28 79 80 07 00
-79 90 0A 00 0A 28 09 9B 08 2C 8F 49 00 00 0E 4B
-2C 15 B0 12 3E 41 2A 17 E6 3F 9F 4F 04 00 02 00
-AF 4F 04 00 0E 4A 4E 93 2B 17 0E 4C 82 4B DC 1D
-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 7E 42 04 48 45 52
-45 00 2F 83 8F 4E 00 00 1E 42 C6 1D 30 4D B6 40
-01 2C 1A 42 C6 1D 8A 4E 00 00 A2 53 C6 1D 3E 4F
-30 4D 46 43 05 41 4C 4C 4F 54 82 5E C6 1D 3E 4F
-30 4D 08 44 07 45 58 45 43 55 54 45 0A 4E 3E 4F
-00 4A 10 47 87 4C 49 54 45 52 41 4C 82 93 BE 1D
-0C 24 1A 42 C6 1D A2 52 C6 1D BA 40 76 44 00 00
-8A 4E 02 00 3E 4F 32 B0 00 02 32 C0 00 02 06 24
-19 4A 02 00 8A 4E 02 00 0E 49 EB 3F 30 4D 62 44
-05 43 4F 55 4E 54 2F 83 1E 53 8F 4E 00 00 5E 4E
-FF FF 30 4D 82 4E C0 1D B2 4F C2 1D 3E 4F 82 43
-C4 1D 30 4D 85 12 20 00 87 12 94 47 A4 47 E2 44
-B2 47 3D 40 BA 47 CC 22 82 3E BC 47 0A 4E 3E 4F
-3D 40 D2 47 23 27 3D 40 AC 47 1A E2 BE 1D A1 27
-B5 23 D4 47 3E 4F 3D 40 AC 47 B8 23 DE 53 00 00
-68 4E 08 5E F8 40 3F 00 00 00 3D 40 CC 4A CB 3F
-34 47 08 45 56 41 4C 55 41 54 45 00 39 40 C0 1D
-3C 49 3B 49 3A 49 3D 15 B0 12 2A 40 A8 47 10 48
-B2 41 C4 1D B2 41 C2 1D B2 41 C0 1D 3D 41 30 4D
-85 12 BE 1D 82 43 08 18 31 40 E0 1C B2 40 00 1C
-00 1C 82 43 BE 1D 30 4D 80 47 04 42 4F 4F 54 00
-82 93 08 18 1D 24 E2 B2 60 02 1A 20 2F 83 8F 4E
-00 00 1E 42 08 18 B0 12 2A 40 24 44 24 48 80 44
-0F 4C 4F 41 44 22 20 42 4F 4F 54 2E 34 54 48 22
-3C 42 8E 48 08 41 04 51 55 49 54 00 30 40 80 48
-B0 12 2A 40 24 48 66 44 EE 43 A4 47 E0 43 A8 47
-A4 40 0C 41 80 44 0C 73 74 61 63 6B 20 65 6D 70
-74 79 21 00 E6 48 76 44 30 FF 02 47 26 41 80 44
-0A 46 52 41 4D 20 66 75 6C 6C 21 00 E6 48 3C 42
-86 48 24 47 05 41 42 4F 52 54 3F 40 80 1C D6 3F
-C4 48 86 41 42 4F 52 54 22 00 87 12 9A 44 76 44
-E6 48 12 47 2A 40 8F 93 02 00 03 20 2F 52 3E 4F
-30 4D B0 12 EC 4E B0 12 B6 42 92 C3 DC 05 38 40
-AA 0A 39 42 03 43 19 83 FD 23 18 83 FA 23 92 B3
-DC 05 F3 23 87 12 60 4E 76 44 DE 1D EA 40 0E 44
-80 44 04 1B 5B 37 6D 00 38 44 58 40 40 42 40 49
-66 44 80 44 05 6C 69 6E 65 3A 38 44 D0 40 24 42
-38 44 80 44 04 1B 5B 30 6D 00 38 44 CA 48 00 00
-83 5B 27 5D 87 12 66 49 76 44 76 44 12 47 12 47
-2A 40 4A 45 01 27 87 12 A4 47 E2 44 50 45 40 42
-74 49 2A 40 DC 47 32 41 81 5C 92 42 C0 1D C4 1D
-30 4D 50 49 81 5B 82 43 BE 1D 30 4D 78 49 01 5D
-B2 43 BE 1D 30 4D BE 4F 02 00 3E 4F 30 4D FC 46
-82 49 53 00 87 12 20 48 EA 40 40 42 B8 49 54 49
-76 44 96 49 12 47 2A 40 66 49 96 49 2A 40 A0 49
-09 49 4D 4D 45 44 49 41 54 45 1A 42 B6 1D FA D0
-80 00 00 00 30 4D 76 48 88 50 4F 53 54 50 4F 4E
-45 00 87 12 A4 47 E2 44 50 45 58 40 40 42 74 49
-0C 41 40 42 02 4A 76 44 76 44 12 47 12 47 76 44
-12 47 12 47 2A 40 84 49 81 3B 82 93 BE 1D B5 27
-87 12 76 44 2A 40 12 47 A0 4A 86 49 2A 40 08 4A
-07 3A 4E 4F 4E 41 4D 45 30 12 46 4A 2F 83 8F 4E
-00 00 1E 42 C6 1D 1E B3 0E 63 0A 4E 39 40 00 02
-38 40 02 02 21 3C BA 40 87 12 FC FF A2 83 C6 1D
-B2 43 BE 1D 30 4D 20 4A 01 3A 30 12 46 4A 92 B3
-C6 1D A2 63 C6 1D 87 12 A4 47 E2 44 6E 4A 3D 41
-08 4E 7A 4E 5A D3 5A 53 0A 58 19 42 DA 1D 6E 4E
-3E F0 1E 00 09 5E 3E 4F 82 48 B6 1D 82 49 B8 1D
-82 4A BA 1D 82 4F BC 1D 2A 52 82 4A C6 1D 30 41
-82 9F BC 1D 09 20 18 42 B6 1D 19 42 B8 1D A8 49
-FE FF 89 48 00 00 30 4D 87 12 80 44 0F 73 74 61
-63 6B 20 6D 69 73 6D 61 74 63 68 21 F2 48 F2 47
-05 44 45 46 45 52 B0 12 5E 4A BA 40 30 40 FC FF
-BA 40 54 4A FE FF E3 3F 3A 48 06 43 52 45 41 54
-45 00 B0 12 5E 4A BA 40 85 12 FC FF 8A 4A FE FF
-D6 3F D0 4A 05 44 4F 45 53 3E 1A 42 BA 1D BA 40
-84 12 00 00 8A 4D 02 00 3D 41 30 4D B0 45 05 3E
-42 4F 44 59 2E 52 30 4D EA 4A 04 43 4F 44 45 00
-B0 12 5E 4A 82 43 C6 5F A2 82 C6 1D 87 12 CE 4D
-A0 4D 2A 40 2A 4B 07 43 4F 44 45 4E 4E 4D B0 12
-2C 4A F0 3F 00 00 07 45 4E 44 43 4F 44 45 87 12
-E8 4D A0 4A 2A 40 D2 48 03 41 53 4D B2 40 A4 4D
-DA 1D DE 3F 56 4B 06 45 4E 44 41 53 4D 00 87 12
-5E 4B 12 4E 2A 40 00 00 05 43 4F 4C 4F 4E 1A 42
-C6 1D BA 40 87 12 00 00 A2 53 C6 1D B2 43 BE 1D
-30 40 E8 4D 00 00 05 4C 4F 32 48 49 1A 42 C6 1D
-BA 40 B0 12 00 00 BA 40 2A 40 02 00 A2 52 C6 1D
-ED 3F C0 49 85 48 49 32 4C 4F 87 12 02 47 F4 4B
-12 47 86 49 CE 4D A0 4D 2A 40 C4 4B 82 49 46 00
-2F 83 8F 4E 00 00 1E 42 C6 1D A2 52 C6 1D BE 40
-40 42 00 00 2E 53 30 4D 04 4B 84 45 4C 53 45 00
-A2 52 C6 1D 1A 42 C6 1D BA 40 3C 42 FC FF 8E 4A
-00 00 2A 83 0E 4A 30 4D 32 44 84 54 48 45 4E 00
-9E 42 C6 1D 00 00 3E 4F 30 4D 46 4B 85 42 45 47
-49 4E 30 40 02 47 1A 4C 85 55 4E 54 49 4C 39 40
-40 42 A2 52 C6 1D 1A 42 C6 1D 8A 49 FC FF 8A 4E
-FE FF 3E 4F 30 4D 68 4B 85 41 47 41 49 4E 39 40
-3C 42 EF 3F DC 44 85 57 48 49 4C 45 87 12 E0 4B
-76 40 2A 40 96 44 86 52 45 50 45 41 54 00 87 12
-5E 4C 20 4C 2A 40 FA 4B 82 44 4F 00 2F 83 8F 4E
-00 00 A2 53 C6 1D 1E 42 C6 1D BE 40 54 42 FE FF
-A2 53 00 1C 1A 42 00 1C 8A 43 00 00 30 4D 44 47
-84 4C 4F 4F 50 00 39 40 76 42 A2 52 C6 1D 1A 42
-C6 1D 8A 49 FC FF 8A 4E FE FF 1E 42 00 1C A2 83
-00 1C 2E 4E 0E 93 03 24 8E 4A 00 00 F6 3F 3E 4F
-30 4D 90 42 85 2B 4C 4F 4F 50 39 40 64 42 E5 3F
-B0 4C 04 4D 4F 56 45 00 0A 4E 38 4F 39 4F 3E 4F
-0A 93 11 24 08 99 0F 24 06 2C F8 49 00 00 18 53
-1A 83 FB 23 30 4D 08 5A 09 5A 19 83 18 83 E8 49
-00 00 1A 83 FA 23 30 4D 66 4C 0A 56 4F 43 41 42
-55 4C 41 52 59 00 87 12 F2 4A 76 44 10 00 76 44
-00 00 54 42 76 44 00 00 12 47 76 42 44 4D 02 47
-76 44 C8 1D 34 40 EA 40 12 47 F2 40 0A 4B 76 44
-CA 1D F2 40 2A 40 64 49 05 46 4F 52 54 48 84 12
-5E 4D C8 4D C8 63 BC 63 68 4D DC 4B E4 4C D6 63
-F8 4D 84 4E 7C 65 0C 69 2E 68 00 00 B8 52 8E 49
-1E 4B 00 00 58 4C 09 41 53 53 45 4D 42 4C 45 52
-84 12 5E 4D 90 5E 28 5E 8C 5D 50 59 F4 57 00 00
-54 5C 00 00 B6 5F CA 5F 4C 58 8A 58 5C 5E 00 00
-00 00 2C 59 92 4D 96 4D 04 41 4C 53 4F 00 3A 40
-0C 00 39 40 CA 1D 38 40 CC 1D 9D 3F D8 49 08 50
-52 45 56 49 4F 55 53 00 3A 40 0E 00 39 40 CC 1D
-38 40 CA 1D 8A 3F C6 44 04 4F 4E 4C 59 00 82 43
-CC 1D 30 4D 88 4C 0B 44 45 46 49 4E 49 54 49 4F
-4E 53 92 42 CA 1D DA 1D 30 4D 6E 4D FE 4D 12 4E
-22 4E 3A 4E 82 4A C8 1D 2E 4E 82 4E C6 1D 3D 40
-10 00 09 4A 08 49 29 83 18 48 FE FF 0E 98 FC 2B
-89 48 00 00 1D 83 F6 23 2A 4A 0A 93 F0 23 3E 4F
-3D 41 30 4D DE 4D 09 50 57 52 5F 53 54 41 54 45
-84 12 1A 4E C4 4D 68 69 76 4C 09 52 53 54 5F 53
-54 41 54 45 92 42 0E 18 64 4E 92 42 0C 18 66 4E
-EF 3F 56 4E 08 50 57 52 5F 48 45 52 45 00 92 42
-C8 1D 64 4E 92 42 C6 1D 66 4E 30 4D 6A 4E 08 52
-53 54 5F 48 45 52 45 00 92 42 C8 1D 0E 18 92 42
-C6 1D 0C 18 EC 3F 2A 4D 04 57 49 50 45 00 39 40
-10 00 29 83 B9 43 80 FF FC 23 B2 40 E0 42 DE 42
-B2 40 4A 4F 48 4F B2 40 80 48 7E 48 B2 40 C4 4D
-0E 18 B2 40 68 69 0C 18 30 12 74 4E B2 40 E4 43
-E2 43 B2 40 6A 44 68 44 B2 40 98 42 96 42 B2 40
-52 43 50 43 B2 40 3C 1D EC 43 1B 42 32 20 0B 93
-04 24 CB 43 02 00 2B 4B FA 3F B2 40 18 00 0A 18
-37 40 1A 40 36 40 92 40 35 40 0E 40 34 40 00 40
-B2 40 0A 00 DC 1D B2 40 20 00 B4 1D 30 41 B8 4E
-04 57 41 52 4D 00 30 40 4A 4F 3D 40 98 50 92 C3
-30 01 1E 42 08 18 0E 93 9E 24 D2 B3 01 02 02 20
-3E E3 1E 53 F2 D0 03 00 0D 02 E2 B2 60 02 8A 20
-39 42 B0 12 8C 60 D2 C3 23 02 2C 42 B2 40 95 00
-14 20 B2 40 00 40 18 20 B0 12 02 60 02 24 30 40
-28 61 B0 12 8A 60 7A 93 FC 23 B2 40 87 AA 14 20
-92 43 16 20 B2 40 00 48 18 20 B0 12 02 60 29 42
-B0 12 8C 60 92 43 14 20 82 43 16 20 78 43 3C 42
-B2 40 00 77 18 20 B0 12 02 60 B2 40 40 69 18 20
-B0 12 48 60 03 24 58 83 F3 23 D9 3F 0C 5C A2 43
-16 20 B2 40 00 50 18 20 B0 12 48 60 D0 23 92 D3
-40 06 82 43 46 06 92 C3 40 06 B0 12 B2 60 38 40
-00 1E 92 48 C6 01 04 20 92 48 C8 01 06 20 5A 48
-C2 01 92 43 02 20 7A 80 06 00 0F 24 7A 82 0D 24
-A2 43 02 20 6A 53 09 24 5A 53 07 24 6A 52 05 24
-3A 50 0B 20 0C 4A 30 40 2E 61 B0 12 B2 60 D2 48
-0D 00 12 20 19 48 0E 00 82 49 08 20 1A 48 16 00
-0A 93 02 20 1A 48 24 00 82 4A 0A 20 09 5A 82 49
-0C 20 09 5A A2 93 02 20 04 24 82 49 0E 20 39 50
-20 00 19 82 12 20 19 82 12 20 82 49 10 20 92 42
-02 20 2C 20 3E 90 0A 00 1A 27 3E 90 16 00 17 2F
-2E 93 E6 26 EF 2E 30 4D 80 44 06 0D 1B 5B 37 6D
-23 00 38 44 34 42 80 44 19 46 61 73 74 46 6F 72
-74 68 20 C2 A9 4A 2E 4D 2E 54 68 6F 6F 72 65 6E
-73 20 38 44 76 44 30 FF 02 47 B8 40 24 42 80 44
-0A 62 79 74 65 73 20 66 72 65 65 00 3C 42 40 49
-2C 4C 04 43 4F 4C 44 00 92 B3 CA 05 FD 23 B2 40
-04 A5 20 01 98 50 B2 40 88 5A 5C 01 B2 D3 06 02
+3E 4F 30 4D F8 43 82 2E 22 00 0D 12 87 12 08 44
+24 40 5E 42 56 46 84 43 00 00 04 57 4F 52 44 00
+3C 40 C0 1D 39 4C 3A 4C 09 5A 3A 5C 28 4C 09 9A
+15 24 7E 9A FC 27 1A 83 3B 40 60 00 C8 4C 00 00
+09 9A 0C 24 7C 4A 4E 9C 09 24 18 53 4B 9C F6 2F
+7C 90 7B 00 F3 2F 5C 82 B4 1D F0 3F 1A 82 C2 1D
+82 4A C4 1D 1E 42 C6 1D 08 8E CE 48 00 00 30 4D
+00 00 04 46 49 4E 44 00 2F 83 0C 4E 65 4C 74 40
+80 00 3B 40 CA 1D 3E 4B 0E 93 1E 24 58 4C 01 00
+78 F0 1E 00 0E 58 2E 53 1E 4E FE FF 0E 93 F3 27
+09 4E 78 49 48 C4 48 95 F7 23 0A 4C FA 99 01 00
+F3 23 1A 53 58 83 FA 23 19 B3 09 63 0C 49 6A 4E
+1E 43 4A 93 01 30 2E 83 8F 4C 00 00 35 40 FA 40
+34 40 EC 40 30 4D 00 00 07 3E 4E 55 4D 42 45 52
+3C 4F 38 4F 29 4F 2F 82 1B 42 DC 1D 6A 4C 7A 80
+30 00 7A 90 0A 00 05 28 7A 80 07 00 7A 90 0A 00
+12 28 0A 9B 22 C3 0F 2C 82 49 D0 04 82 48 D2 04
+82 4B C8 04 19 42 E4 04 18 42 E6 04 09 5A 08 63
+1C 53 1E 83 E3 23 8F 4C 00 00 8F 48 02 00 8F 49
+04 00 30 4D 32 C0 00 02 1B 42 DC 1D 0C 43 2D 15
+3D 40 AE 45 09 43 08 43 3F 82 8F 4E 06 00 0C 4E
+7E 4C 6A 4C 7A 90 2D 00 04 28 C9 23 B1 43 02 00
+0B 3C 2B 43 7A 80 25 00 07 24 3B 52 6A 53 04 24
+3B 40 10 00 5A 83 BA 23 1C 53 1E 83 EA 3F B0 45
+2F 24 2D 83 7A 90 28 00 CB 27 32 D0 00 02 7A 90
+F7 00 C6 27 7A 90 F5 00 23 20 0A 4E 09 43 8F 49
+02 00 5A 83 09 4A 09 5C 69 49 79 80 30 00 79 90
+0A 00 05 28 79 80 07 00 79 90 0A 00 0A 28 09 9B
+08 2C 8F 49 00 00 0E 4B 2C 15 B0 12 7E 40 2A 17
+E6 3F 9F 4F 04 00 02 00 AF 4F 04 00 0E 4A 4E 93
+2B 17 0E 4C 82 4B DC 1D 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 00 00 01 2C 1A 42 C6 1D 8A 4E 00 00 A2 53
+C6 1D 3E 4F 30 4D 86 41 05 41 4C 4C 4F 54 82 5E
+C6 1D 3E 4F 30 4D 0A 4E 3E 4F 00 4A 54 46 87 4C
+49 54 45 52 41 4C 82 93 BE 1D 0C 24 1A 42 C6 1D
+A2 52 C6 1D BA 40 24 40 00 00 8A 4E 02 00 3E 4F
+32 B0 00 02 32 C0 00 02 06 24 19 4A 02 00 8A 4E
+02 00 0E 49 EB 3F 30 4D 8A 43 05 43 4F 55 4E 54
+2F 83 1E 53 8F 4E 00 00 5E 4E FF FF 30 4D 85 12
+20 00 0D 12 87 12 C4 40 CE 46 50 44 DE 46 3D 40
+E6 46 E2 22 A4 26 E8 46 0A 4E 3E 4F 3D 40 FE 46
+39 27 3D 40 D8 46 1A E2 BE 1D BD 23 AC 27 00 47
+3E 4F 3D 40 D8 46 BF 23 DE 53 00 00 68 4E 08 5E
+F8 40 3F 00 00 00 3D 40 C0 49 D2 3F 2E 42 08 45
+56 41 4C 55 41 54 45 00 39 40 C0 1D 3C 49 3B 49
+3A 49 3D 15 87 12 D2 46 3A 47 B2 41 C4 1D B2 41
+C2 1D B2 41 C0 1D 3D 41 30 4D 85 12 BE 1D 82 43
+08 18 31 40 E0 1C B2 40 00 1C 00 1C 82 43 BE 1D
+30 4D BA 46 04 42 4F 4F 54 00 82 93 08 18 1C 24
+E2 B2 60 02 19 20 2F 83 8F 4E 00 00 1E 42 08 18
+87 12 4A 42 4E 47 2E 40 0F 4C 4F 41 44 22 20 42
+4F 4F 54 2E 34 54 48 22 48 40 B4 47 00 00 04 51
+55 49 54 00 30 40 A8 47 87 12 4E 47 8C 42 D4 40
+CE 46 22 42 D2 46 EA 42 1A 43 2E 40 0C 73 74 61
+63 6B 20 65 6D 70 74 79 21 00 0E 48 24 40 40 FF
+CE 4A 22 43 2E 40 0A 46 52 41 4D 20 66 75 6C 6C
+21 00 0E 48 48 40 AC 47 68 46 05 41 42 4F 52 54
+3F 40 80 1C D7 3F EA 47 86 41 42 4F 52 54 22 00
+0D 12 87 12 08 44 24 40 0E 48 56 46 84 43 8F 93
+02 00 03 20 2F 52 3E 4F 30 4D B0 12 B6 4C B0 12
+06 41 92 C3 DC 05 18 42 06 18 39 40 20 00 19 83
+FE 23 18 83 FA 23 92 B3 DC 05 F3 23 0D 12 87 12
+2A 4C 24 40 DE 1D 02 41 34 42 2E 40 04 1B 5B 37
+6D 00 5E 42 DA 42 4C 40 68 48 8C 42 2E 40 05 6C
+69 6E 65 3A 5E 42 C4 43 5E 42 2E 40 04 1B 5B 30
+6D 00 5E 42 F0 47 00 00 83 5B 27 5D 0D 12 87 12
+90 48 24 40 24 40 56 46 56 46 84 43 A2 44 01 27
+0D 12 87 12 CE 46 50 44 A8 44 4C 40 A0 48 84 43
+08 47 30 43 81 5C 92 42 C0 1D C4 1D 30 4D 78 48
+81 5B 82 43 BE 1D 30 4D A4 48 01 5D B2 43 BE 1D
+30 4D 9E 47 88 50 4F 53 54 50 4F 4E 45 00 0D 12
+87 12 CE 46 50 44 A8 44 DA 42 4C 40 A0 48 1A 43
+4C 40 F0 48 24 40 24 40 56 46 56 46 24 40 56 46
+56 46 84 43 9E 43 09 49 4D 4D 45 44 49 41 54 45
+1A 42 B6 1D FA D0 80 00 00 00 30 4D B0 48 01 3A
+30 12 58 49 92 B3 C6 1D A2 63 C6 1D 0D 12 87 12
+CE 46 50 44 26 49 3D 41 08 4E 7A 4E 5A D3 5A 53
+0A 58 19 42 DA 1D 6E 4E 3E F0 1E 00 09 5E 3E 4F
+82 48 B6 1D 82 49 B8 1D 82 4A BA 1D 82 4F BC 1D
+2A 52 82 4A C6 1D 30 41 BA 40 0D 12 FC FF BA 40
+87 12 FE FF B2 43 BE 1D 30 4D 0E 49 07 3A 4E 4F
+4E 41 4D 45 30 12 58 49 2F 83 8F 4E 00 00 1E 42
+C6 1D 1E B3 0E 63 0A 4E 39 40 10 02 38 40 12 02
+D7 3F 82 9F BC 1D 09 20 18 42 B6 1D 19 42 B8 1D
+A8 49 FE FF 89 48 00 00 30 4D 0D 12 87 12 2E 40
+0F 73 74 61 63 6B 20 6D 69 73 6D 61 74 63 68 21
+1A 48 6C 49 81 3B 82 93 BE 1D 6D 27 0D 12 87 12
+24 40 84 43 56 46 92 49 B2 48 84 43 64 47 06 43
+52 45 41 54 45 00 B0 12 14 49 BA 40 85 12 FC FF
+8A 4A FE FF D5 3F 1E 47 05 44 4F 45 53 3E 1A 42
+BA 1D BA 40 84 12 00 00 8A 4D 02 00 3D 41 30 4D
+DE 49 04 43 4F 44 45 00 B0 12 14 49 A2 82 C6 1D
+82 43 66 5D 0D 12 87 12 82 4B 54 4B 84 43 12 4A
+07 43 4F 44 45 4E 4E 4D 30 12 1C 4A 9D 3F 00 00
+07 45 4E 44 43 4F 44 45 0D 12 87 12 92 49 A8 4B
+84 43 F8 47 03 41 53 4D B2 40 58 4B DA 1D DC 3F
+40 4A 06 45 4E 44 41 53 4D 00 0D 12 87 12 48 4A
+DC 4B 84 43 00 00 05 43 4F 4C 4F 4E 1A 42 C6 1D
+BA 40 0D 12 00 00 BA 40 87 12 02 00 A2 52 C6 1D
+B2 43 BE 1D 30 40 A8 4B 00 00 05 4C 4F 32 48 49
+A2 83 C6 1D 1A 42 C6 1D EE 3F F6 48 85 48 49 32
+4C 4F 0D 12 87 12 CE 4A C2 4A 56 46 B2 48 20 4A
+84 43 2E 53 30 4D 30 4A 85 42 45 47 49 4E 2F 83
+8F 4E 00 00 1E 42 C6 1D 30 4D 4A 44 0A 56 4F 43
+41 42 55 4C 41 52 59 00 0D 12 87 12 E6 49 24 40
+10 00 24 40 00 00 56 40 24 40 00 00 56 46 78 40
+F8 4A CE 4A 24 40 C8 1D C6 42 02 41 56 46 0C 43
+FE 49 24 40 CA 1D 0C 43 84 43 8E 48 05 46 4F 52
+54 48 84 12 12 4B 7C 4B 6A 61 5E 61 1C 4B AC 4A
+A0 42 78 61 C2 4B 4E 4C 24 63 B6 66 D8 65 00 00
+66 50 BA 48 08 45 00 00 54 4A 09 41 53 53 45 4D
+42 4C 45 52 84 12 12 4B 32 5C CA 5B 2E 5B EA 56
+88 55 00 00 F6 59 00 00 56 5D 6A 5D E0 55 1E 56
+FE 5B 00 00 00 00 C4 56 46 4B 4A 4B 04 41 4C 53
+4F 00 3A 40 0C 00 39 40 D6 1D 08 49 28 53 19 83
+18 83 E8 49 00 00 1A 83 FA 23 30 4D C4 48 08 50
+52 45 56 49 4F 55 53 00 3A 40 0E 00 38 40 CA 1D
+09 48 29 53 F8 49 00 00 18 53 1A 83 FB 23 30 4D
+36 44 04 4F 4E 4C 59 00 82 43 CC 1D 30 4D F8 49
+0B 44 45 46 49 4E 49 54 49 4F 4E 53 92 42 CA 1D
+DA 1D 30 4D 22 4B C8 4B DC 4B EC 4B 3A 4E 82 4A
+C8 1D 2E 4E 82 4E C6 1D 3D 40 10 00 09 4A 08 49
+29 83 18 48 FE FF 0E 98 FC 2B 89 48 00 00 1D 83
+F6 23 2A 4A 0A 93 F0 23 3E 4F 3D 41 30 4D 9E 4B
+09 50 57 52 5F 53 54 41 54 45 84 12 E4 4B 78 4B
+14 67 04 44 09 52 53 54 5F 53 54 41 54 45 92 42
+0E 18 2E 4C 92 42 0C 18 30 4C EF 3F 20 4C 08 50
+57 52 5F 48 45 52 45 00 92 42 C8 1D 2E 4C 92 42
+C6 1D 30 4C 30 4D 34 4C 08 52 53 54 5F 48 45 52
+45 00 92 42 C8 1D 0E 18 92 42 C6 1D 0C 18 EC 3F
+DC 4A 04 57 49 50 45 00 39 40 10 00 29 83 B9 43
+80 FF FC 23 B2 40 04 40 02 40 B2 40 14 4D 12 4D
+B2 40 A8 47 A6 47 B2 40 78 4B 0E 18 B2 40 14 67
+0C 18 30 12 3E 4C B2 40 26 42 24 42 B2 40 90 42
+8E 42 B2 40 A8 42 A6 42 B2 40 92 41 90 41 B2 40
+3C 1D E2 40 1B 42 32 20 0B 93 04 24 CB 43 02 00
+2B 4B FA 3F B2 40 18 00 0A 18 37 40 84 43 36 40
+FA 42 35 40 FA 40 34 40 EC 40 B2 40 0A 00 DC 1D
+B2 40 20 00 B4 1D 30 41 82 4C 04 57 41 52 4D 00
+30 40 14 4D 3D 40 66 4E 92 C3 30 01 1E 42 08 18
+0E 93 A0 24 D2 B3 01 02 02 20 3E E3 1E 53 F2 D0
+03 00 0D 02 92 D3 DA 05 E2 B2 60 02 8A 20 39 42
+B0 12 2E 5E D2 C3 23 02 2C 42 B2 40 95 00 14 20
+B2 40 00 40 18 20 B0 12 A4 5D 02 24 30 40 CA 5E
+B0 12 2C 5E 7A 93 FC 23 B2 40 87 AA 14 20 92 43
+16 20 B2 40 00 48 18 20 B0 12 A4 5D 29 42 B0 12
+2E 5E 92 43 14 20 82 43 16 20 78 43 3C 42 B2 40
+00 77 18 20 B0 12 A4 5D B2 40 40 69 18 20 B0 12
+EA 5D 03 24 58 83 F3 23 D9 3F 0C 5C A2 43 16 20
+B2 40 00 50 18 20 B0 12 EA 5D D0 23 92 D3 40 06
+82 43 46 06 92 C3 40 06 B0 12 54 5E 38 40 00 1E
+92 48 C6 01 04 20 92 48 C8 01 06 20 5A 48 C2 01
+92 43 02 20 7A 80 06 00 0F 24 7A 82 0D 24 A2 43
+02 20 6A 53 09 24 5A 53 07 24 6A 52 05 24 3A 50
+0B 20 0C 4A 30 40 D0 5E B0 12 54 5E D2 48 0D 00
+12 20 19 48 0E 00 82 49 08 20 1A 48 16 00 0A 93
+02 20 1A 48 24 00 82 4A 0A 20 09 5A 82 49 0C 20
+09 5A A2 93 02 20 04 24 82 49 0E 20 39 50 20 00
+19 82 12 20 19 82 12 20 82 49 10 20 92 42 02 20
+2C 20 3E 90 0A 00 18 27 3E 90 16 00 15 2F 2E 93
+E4 26 ED 2E 30 4D 2E 40 07 0D 0A 1B 5B 37 6D 23
+5E 42 FA 43 2E 40 19 46 61 73 74 46 6F 72 74 68
+20 C2 A9 4A 2E 4D 2E 54 68 6F 6F 72 65 6E 73 20
+5E 42 24 40 40 FF CE 4A 04 43 C4 43 2E 40 0A 62
+79 74 65 73 20 66 72 65 65 00 48 40 68 48 C8 4A
+04 43 4F 4C 44 00 92 B3 CA 05 FD 23 B2 40 04 A5
+20 01 31 40 E0 1C B2 40 88 5A 5C 01 B2 D3 06 02
 B2 40 FC FF 02 02 B2 43 26 02 B2 D3 22 02 E2 D2
 25 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
@@ -281,390 +246,388 @@ B2 40 FC FF 02 02 B2 43 26 02 B2 D3 22 02 E2 D2
 64 01 D2 43 61 01 92 D2 9E 01 08 18 38 40 59 14
 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 39 40 4C 00 29 83
-B9 40 F6 50 B4 FF FB 23 B2 40 84 43 F0 FF B2 40
+00 10 29 83 89 43 00 1C FC 23 B0 12 0E 40 B2 40
 81 00 C0 05 92 42 02 18 C6 05 92 42 04 18 C8 05
-92 C3 C0 05 92 D3 DA 05 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 3F 40 80 1C 31 40 E0 1C 30 12 46 4F A5 3E
-E2 50 07 43 4F 4D 50 41 52 45 0C 4E 38 4F 3B 4F
-39 4F 0E 4B 0E 5C 0C 24 1B 83 07 30 1C 83 07 30
-19 53 F9 98 FF FF F5 27 02 2C 3E 43 30 4D 1E 43
-30 4D 58 4A 86 5B 54 48 45 4E 5D 00 30 4D 04 52
-86 5B 45 4C 53 45 5D 00 87 12 76 44 00 00 C6 40
-A4 47 E2 44 86 47 34 40 40 42 7A 52 44 40 80 44
-06 5B 54 48 45 4E 5D 00 DA 51 4A 42 4A 52 5A 44
-D0 40 58 40 4A 42 20 52 2A 40 44 40 80 44 06 5B
-45 4C 53 45 5D 00 DA 51 4A 42 68 52 5A 44 D0 40
-58 40 4A 42 1E 52 2A 40 80 44 04 5B 49 46 5D 00
-DA 51 4A 42 20 52 3C 42 1E 52 5A 44 80 44 05 0D
-0A 6B 6F 20 38 44 EE 43 94 47 3C 42 20 52 10 52
-84 5B 49 46 5D 00 0E 93 3E 4F BE 27 30 4D 90 52
-89 5B 44 45 46 49 4E 45 44 5D 87 12 A4 47 E2 44
-50 45 6A 40 2A 40 A0 52 8B 5B 55 4E 44 45 46 49
-4E 45 44 5D 87 12 A4 47 E2 44 50 45 6A 40 00 41
-2A 40 D4 52 3D 41 B2 4E 0E 18 A2 4E 0C 18 3E 4F
-30 40 74 4E F2 4C 06 4D 41 52 4B 45 52 00 B0 12
-5E 4A BA 40 84 12 FC FF BA 40 D2 52 FE FF 9A 42
-C8 1D 00 00 28 83 8A 48 02 00 A2 52 C6 1D 30 40
-A6 4A 1C 15 B0 12 2A 40 E2 44 50 45 4A 42 28 53
-0C 46 40 42 74 49 42 53 2A 53 39 4E 39 80 86 12
+92 C3 C0 05 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 3F 40
+80 1C 30 12 10 4D AE 3E C4 49 86 5B 54 48 45 4E
+5D 00 30 4D 0C 4E 38 4F 3B 4F 39 4F 0E 4B 0E 5C
+10 24 1B 83 06 30 1C 83 04 30 19 53 F9 98 FF FF
+F5 27 2D 4D 3E 4F 30 4D 2F 53 9F 83 00 00 F9 23
+2F 53 2D 53 F7 3F 8A 4F 86 5B 45 4C 53 45 5D 00
+0D 12 87 12 24 40 00 00 08 43 CE 46 50 44 C0 46
+C6 42 4C 40 22 50 CE 42 2E 40 06 5B 54 48 45 4E
+5D 00 94 4F FC 4F B8 4F DA 4F 84 43 CE 42 2E 40
+06 5B 45 4C 53 45 5D 00 94 4F 12 50 B8 4F D8 4F
+84 43 2E 40 04 5B 49 46 5D 00 94 4F DA 4F 48 40
+D8 4F 80 42 2E 40 05 0D 0A 6B 6F 20 5E 42 D4 40
+C4 40 48 40 DA 4F C8 4F 84 5B 49 46 5D 00 0E 93
+3E 4F C6 27 30 4D 2F 53 30 4D 38 50 89 5B 44 45
+46 49 4E 45 44 5D 0D 12 87 12 CE 46 50 44 A8 44
+46 50 84 43 4C 50 8B 5B 55 4E 44 45 46 49 4E 45
+44 5D 0D 12 87 12 56 50 7A 50 3D 41 30 40 14 43
+38 40 C0 1D 0A 4E 39 48 2E 48 09 5E 1E 52 C4 1D
+09 9E 03 24 7A 9E FC 27 1E 83 0A 4E 2A 88 82 4A
+C4 1D 30 4D 1C 15 87 12 50 44 A8 44 42 40 B8 50
+64 45 4C 40 A0 48 D2 50 BA 50 39 4E 39 80 86 12
 08 24 19 53 02 20 2E 4E 04 3C 2E 53 19 53 01 24
 2E 82 1B 17 30 41 32 B0 00 02 01 24 3E 4F 30 41
-3E 40 28 00 B0 12 12 53 B0 12 46 53 19 42 C6 1D
+3E 40 28 00 B0 12 A4 50 B0 12 D6 50 19 42 C6 1D
 A2 53 C6 1D 89 4E 00 00 3E 40 29 00 1C 15 12 12
-C4 1D 92 53 C4 1D B0 12 2A 40 E2 44 0C 46 40 42
-8E 53 84 53 21 53 3E 90 10 00 81 2D DA 2B 90 53
-B2 41 C4 1D D6 3F 87 12 A4 47 D6 44 9E 53 0C 43
+C4 1D 92 53 C4 1D 87 12 50 44 64 45 4C 40 1C 51
+12 51 21 53 3E 90 10 00 84 2D DB 2B 1E 51 B2 41
+C4 1D D7 3F 0D 12 87 12 CE 46 80 50 2E 51 0C 43
 1B 42 C6 1D A2 53 C6 1D 6A 4E 3E 4F 7A 90 23 00
-29 20 92 53 C4 1D B0 12 12 53 B0 12 46 53 3C 40
+29 20 92 53 C4 1D B0 12 A4 50 B0 12 D6 50 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 C6 1D A2 53 C6 1D 89 4E 00 00 3E 4F
 3D 41 30 4D 7A 90 26 00 09 20 3C 40 10 02 92 53
-C4 1D B0 12 12 53 B0 12 46 53 EB 3F 7A 90 40 00
-16 20 3C 40 20 00 92 53 C4 1D B0 12 6C 53 0C 20
-3C 50 10 00 3E 40 2B 00 B0 12 6C 53 92 92 C0 1D
+C4 1D B0 12 A4 50 B0 12 D6 50 EB 3F 7A 90 40 00
+16 20 3C 40 20 00 92 53 C4 1D B0 12 FC 50 0C 20
+3C 50 10 00 3E 40 2B 00 B0 12 FC 50 92 92 C0 1D
 C4 1D 02 24 92 53 C4 1D 8E 10 0C 5E D8 3F B0 12
-6C 53 FA 23 3C 50 10 00 B0 12 50 53 EF 3F 0C 43
-1B 42 C6 1D A2 53 C6 1D 87 12 A4 47 D6 44 70 54
-FE 90 26 00 00 00 3E 40 20 00 03 20 3C 50 82 00
-C6 3F B0 12 6C 53 E1 23 3C 50 80 00 B0 12 50 53
-DC 3F D6 42 04 52 45 54 49 00 87 12 76 44 00 13
-12 47 2A 40 76 44 2C 00 96 53 68 54 AE 54 09 4B
-2E 4E 0E DC A2 3F A6 4B 03 4D 4F 56 84 12 A4 54
-00 40 B8 54 05 4D 4F 56 2E 42 84 12 A4 54 40 40
-00 00 03 41 44 44 84 12 A4 54 00 50 D2 54 05 41
-44 44 2E 42 84 12 A4 54 40 50 DE 54 04 41 44 44
-43 00 84 12 A4 54 00 60 EC 54 06 41 44 44 43 2E
-42 00 84 12 A4 54 40 60 94 54 04 53 55 42 43 00
-84 12 A4 54 00 70 0A 55 06 53 55 42 43 2E 42 00
-84 12 A4 54 40 70 18 55 03 53 55 42 84 12 A4 54
-00 80 28 55 05 53 55 42 2E 42 84 12 A4 54 40 80
-88 4B 03 43 4D 50 84 12 A4 54 00 90 42 55 05 43
-4D 50 2E 42 84 12 A4 54 40 90 76 4B 04 44 41 44
-44 00 84 12 A4 54 00 A0 5C 55 06 44 41 44 44 2E
-42 00 84 12 A4 54 40 A0 4E 55 03 42 49 54 84 12
-A4 54 00 B0 7A 55 05 42 49 54 2E 42 84 12 A4 54
-40 B0 86 55 03 42 49 43 84 12 A4 54 00 C0 94 55
-05 42 49 43 2E 42 84 12 A4 54 40 C0 A0 55 03 42
-49 53 84 12 A4 54 00 D0 AE 55 05 42 49 53 2E 42
-84 12 A4 54 40 D0 00 00 03 58 4F 52 84 12 A4 54
-00 E0 C8 55 05 58 4F 52 2E 42 84 12 A4 54 40 E0
-FA 54 03 41 4E 44 84 12 A4 54 00 F0 E2 55 05 41
-4E 44 2E 42 84 12 A4 54 40 F0 A4 47 96 53 00 56
-0A 4C 3C F0 70 00 8A 10 3A F0 0F 00 0C DA 4F 3F
-34 55 03 52 52 43 84 12 FA 55 00 10 12 56 05 52
-52 43 2E 42 84 12 FA 55 40 10 1E 56 04 53 57 50
-42 00 84 12 FA 55 80 10 2C 56 03 52 52 41 84 12
-FA 55 00 11 3A 56 05 52 52 41 2E 42 84 12 FA 55
-40 11 46 56 03 53 58 54 84 12 FA 55 80 11 00 00
-04 50 55 53 48 00 84 12 FA 55 00 12 60 56 06 50
-55 53 48 2E 42 00 84 12 FA 55 40 12 BA 55 04 43
-41 4C 4C 00 84 12 FA 55 80 12 1A 53 0E 4A 87 12
-34 42 80 44 0D 6F 75 74 20 6F 66 20 62 6F 75 6E
-64 73 F2 48 A4 47 D6 44 AA 56 92 53 C4 1D 3E 40
-2C 00 B0 12 2A 40 E2 44 0C 46 40 42 74 49 5E 54
-C2 56 0A 4E 3E 4F 1A 83 E0 33 29 4E 59 0E 0A 28
-08 4C 59 0A 01 28 0C 8A 08 8A 38 90 10 00 D5 2F
-5A 0E 94 3F 2A 92 D1 2F 8A 10 5A 06 8F 3F 54 56
-06 52 52 43 4D 2E 41 00 84 12 A4 56 40 00 F0 56
-04 52 52 43 4D 00 84 12 A4 56 50 00 00 57 06 52
-52 41 4D 2E 41 00 84 12 A4 56 40 01 0E 57 04 52
-52 41 4D 00 84 12 A4 56 50 01 1E 57 06 52 4C 41
-4D 2E 41 00 84 12 A4 56 40 02 2C 57 04 52 4C 41
-4D 00 84 12 A4 56 50 02 3C 57 06 52 52 55 4D 2E
-41 00 84 12 A4 56 40 03 4A 57 04 52 52 55 4D 00
-84 12 A4 56 50 03 6E 56 07 50 55 53 48 4D 2E 41
-84 12 A4 56 00 14 68 57 05 50 55 53 48 4D 84 12
-A4 56 00 15 78 57 06 50 4F 50 4D 2E 41 00 84 12
-A4 56 00 16 86 57 04 50 4F 50 4D 00 84 12 A4 56
-00 17 5A 57 03 53 3E 3D 85 12 00 38 A4 57 02 53
-3C 00 85 12 00 34 96 57 03 30 3E 3D 85 12 00 30
-B8 57 02 30 3C 00 85 12 00 30 00 00 02 55 3C 00
-85 12 00 2C CC 57 03 55 3E 3D 85 12 00 28 C2 57
-03 30 3C 3E 85 12 00 24 E0 57 02 30 3D 00 85 12
-00 20 00 00 02 49 46 00 1A 42 C6 1D 8A 4E 00 00
-A2 53 C6 1D 0E 4A 30 4D D6 57 04 54 48 45 4E 00
-1A 42 C6 1D 08 4E 3E 4F 09 48 29 53 0A 89 0A 11
-3A 90 00 02 33 2F 88 DA 00 00 30 4D 6A 55 04 45
-4C 53 45 00 1A 42 C6 1D BA 40 00 3C 00 00 A2 53
-C6 1D 2F 83 8F 4A 00 00 E3 3F 0A 58 05 55 4E 54
-49 4C 3A 4F 08 4E 3E 4F 19 42 C6 1D 2A 83 0A 89
-0A 11 3A 90 00 FE 12 3B 3A F0 FF 03 08 DA 89 48
-00 00 A2 53 C6 1D 30 4D EE 55 05 41 47 41 49 4E
-0A 4E 38 40 00 3C E7 3F 00 00 05 57 48 49 4C 45
-87 12 F8 57 76 40 2A 40 AE 57 06 52 45 50 45 41
-54 00 87 12 80 58 10 58 2A 40 AC 58 3D 41 08 4E
-3E 4F 2A 48 B2 92 C4 1D CD 2F 98 42 C6 1D 00 00
-30 4D 7E 56 03 42 57 31 84 12 AA 58 00 00 C4 58
-03 42 57 32 84 12 AA 58 00 00 D0 58 03 42 57 33
-84 12 AA 58 00 00 E8 58 3D 41 1A 42 C6 1D 28 4E
-B2 92 C4 1D 90 2B BA 4F 00 00 A2 53 C6 1D 8E 4A
-00 00 3E 4F 30 4D 00 00 03 46 57 31 84 12 E6 58
-00 00 08 59 03 46 57 32 84 12 E6 58 00 00 14 59
-03 46 57 33 84 12 E6 58 00 00 00 00 05 3F 47 4F
-54 4F 3E 90 00 30 07 24 3E E0 00 04 3E B0 00 10
-02 24 3E E0 00 08 87 12 66 49 3C 47 2A 40 20 59
-04 47 4F 54 4F 00 2F 83 8F 4E 00 00 3E 40 00 3C
-F2 3F 87 12 A4 47 D6 44 6A 59 69 4E 3E 4F 3C 4F
-2C 4C 1B 42 C6 1D A2 53 C6 1D 79 90 52 00 0A 20
-B0 12 6C 53 5E 0E 5E 0E 0E DC 8B 4E 00 00 0E 4B
-3D 41 30 4D 79 90 23 00 0D 20 3C C0 40 00 92 53
-C4 1D A2 53 C6 1D B0 12 12 53 BB 4F 02 00 3E F0
-0F 00 E8 3F 79 90 26 00 03 20 3C E0 E0 00 EF 3F
-3C C0 F0 00 79 90 40 00 12 20 92 53 C4 1D B0 12
-6C 53 D8 23 3C D0 10 00 3E 40 2B 00 B0 12 6C 53
-92 92 C0 1D C4 1D CE 27 92 53 C4 1D CB 3F 3C D0
-30 00 A2 53 C6 1D 3E 40 28 00 B0 12 12 53 BB 4F
-02 00 3E 40 29 00 EA 3F 87 12 A4 47 D6 44 10 5A
-3B 4F 2C 4B 69 4E 7E 40 20 00 79 90 52 00 03 20
-B0 12 6C 53 B1 3F 3C C0 F0 00 A2 53 C6 1D 79 90
-26 00 09 20 3C D0 60 00 92 53 C4 1D B0 12 12 53
-BB 4F 02 00 A1 3F 3C D0 70 00 3E 40 28 00 B0 12
-12 53 BB 4F 02 00 3E 40 29 00 E2 3F 76 44 2C 00
-62 59 08 5A 66 40 2A 40 C4 54 04 4D 4F 56 41 00
-84 12 5C 5A C0 00 DC 58 04 43 4D 50 41 00 84 12
-5C 5A D0 00 7A 58 04 41 44 44 41 00 84 12 5C 5A
-E0 00 9A 58 04 53 55 42 41 00 84 12 5C 5A F0 00
-78 5A 05 43 41 4C 4C 41 87 12 A4 47 D6 44 B0 5A
+FC 50 FA 23 3C 50 10 00 B0 12 E0 50 EF 3F 0C 43
+1B 42 C6 1D A2 53 C6 1D 0D 12 87 12 CE 46 80 50
+02 52 FE 90 26 00 00 00 3E 40 20 00 03 20 3C 50
+82 00 C5 3F B0 12 FC 50 E0 23 3C 50 80 00 B0 12
+E0 50 DB 3F 00 00 04 52 45 54 49 00 0D 12 87 12
+24 40 00 13 56 46 84 43 24 40 2C 00 24 51 F8 51
+42 52 09 4B 2E 4E 0E DC A0 3F 9A 4A 03 4D 4F 56
+84 12 38 52 00 40 4C 52 05 4D 4F 56 2E 42 84 12
+38 52 40 40 00 00 03 41 44 44 84 12 38 52 00 50
+66 52 05 41 44 44 2E 42 84 12 38 52 40 50 72 52
+04 41 44 44 43 00 84 12 38 52 00 60 80 52 06 41
+44 44 43 2E 42 00 84 12 38 52 40 60 26 52 04 53
+55 42 43 00 84 12 38 52 00 70 9E 52 06 53 55 42
+43 2E 42 00 84 12 38 52 40 70 AC 52 03 53 55 42
+84 12 38 52 00 80 BC 52 05 53 55 42 2E 42 84 12
+38 52 40 80 76 4A 03 43 4D 50 84 12 38 52 00 90
+D6 52 05 43 4D 50 2E 42 84 12 38 52 40 90 62 4A
+04 44 41 44 44 00 84 12 38 52 00 A0 F0 52 06 44
+41 44 44 2E 42 00 84 12 38 52 40 A0 E2 52 03 42
+49 54 84 12 38 52 00 B0 0E 53 05 42 49 54 2E 42
+84 12 38 52 40 B0 1A 53 03 42 49 43 84 12 38 52
+00 C0 28 53 05 42 49 43 2E 42 84 12 38 52 40 C0
+34 53 03 42 49 53 84 12 38 52 00 D0 42 53 05 42
+49 53 2E 42 84 12 38 52 40 D0 00 00 03 58 4F 52
+84 12 38 52 00 E0 5C 53 05 58 4F 52 2E 42 84 12
+38 52 40 E0 8E 52 03 41 4E 44 84 12 38 52 00 F0
+76 53 05 41 4E 44 2E 42 84 12 38 52 40 F0 CE 46
+24 51 94 53 0A 4C 3C F0 70 00 8A 10 3A F0 0F 00
+0C DA 4F 3F C8 52 03 52 52 43 84 12 8E 53 00 10
+A6 53 05 52 52 43 2E 42 84 12 8E 53 40 10 B2 53
+04 53 57 50 42 00 84 12 8E 53 80 10 C0 53 03 52
+52 41 84 12 8E 53 00 11 CE 53 05 52 52 41 2E 42
+84 12 8E 53 40 11 DA 53 03 53 58 54 84 12 8E 53
+80 11 00 00 04 50 55 53 48 00 84 12 8E 53 00 12
+F4 53 06 50 55 53 48 2E 42 00 84 12 8E 53 40 12
+4E 53 04 43 41 4C 4C 00 84 12 8E 53 80 12 1A 53
+0E 4A 0D 12 87 12 FA 43 2E 40 0D 6F 75 74 20 6F
+66 20 62 6F 75 6E 64 73 1A 48 CE 46 80 50 40 54
+92 53 C4 1D 3E 40 2C 00 87 12 50 44 64 45 4C 40
+A0 48 EE 51 56 54 0A 4E 3E 4F 1A 83 E0 33 29 4E
+59 0E 0A 28 08 4C 59 0A 01 28 0C 8A 08 8A 38 90
+10 00 D5 2F 5A 0E 94 3F 2A 92 D1 2F 8A 10 5A 06
+8F 3F E8 53 06 52 52 43 4D 2E 41 00 84 12 3A 54
+40 00 84 54 04 52 52 43 4D 00 84 12 3A 54 50 00
+94 54 06 52 52 41 4D 2E 41 00 84 12 3A 54 40 01
+A2 54 04 52 52 41 4D 00 84 12 3A 54 50 01 B2 54
+06 52 4C 41 4D 2E 41 00 84 12 3A 54 40 02 C0 54
+04 52 4C 41 4D 00 84 12 3A 54 50 02 D0 54 06 52
+52 55 4D 2E 41 00 84 12 3A 54 40 03 DE 54 04 52
+52 55 4D 00 84 12 3A 54 50 03 02 54 07 50 55 53
+48 4D 2E 41 84 12 3A 54 00 14 FC 54 05 50 55 53
+48 4D 84 12 3A 54 00 15 0C 55 06 50 4F 50 4D 2E
+41 00 84 12 3A 54 00 16 1A 55 04 50 4F 50 4D 00
+84 12 3A 54 00 17 EE 54 03 53 3E 3D 85 12 00 38
+38 55 02 53 3C 00 85 12 00 34 2A 55 03 30 3E 3D
+85 12 00 30 4C 55 02 30 3C 00 85 12 00 30 00 00
+02 55 3C 00 85 12 00 2C 60 55 03 55 3E 3D 85 12
+00 28 56 55 03 30 3C 3E 85 12 00 24 74 55 02 30
+3D 00 85 12 00 20 00 00 02 49 46 00 1A 42 C6 1D
+8A 4E 00 00 A2 53 C6 1D 0E 4A 30 4D 6A 55 04 54
+48 45 4E 00 1A 42 C6 1D 08 4E 3E 4F 09 48 29 53
+0A 89 0A 11 3A 90 00 02 33 2F 88 DA 00 00 30 4D
+FE 52 04 45 4C 53 45 00 1A 42 C6 1D BA 40 00 3C
+00 00 A2 53 C6 1D 2F 83 8F 4A 00 00 E3 3F 9E 55
+05 55 4E 54 49 4C 3A 4F 08 4E 3E 4F 19 42 C6 1D
+2A 83 0A 89 0A 11 3A 90 00 FE 12 3B 3A F0 FF 03
+08 DA 89 48 00 00 A2 53 C6 1D 30 4D 82 53 05 41
+47 41 49 4E 0A 4E 38 40 00 3C E7 3F 00 00 05 57
+48 49 4C 45 0D 12 87 12 8C 55 E0 42 84 43 42 55
+06 52 45 50 45 41 54 00 0D 12 87 12 14 56 A4 55
+84 43 44 56 3D 41 08 4E 3E 4F 2A 48 B2 92 C4 1D
+CB 2F 98 42 C6 1D 00 00 30 4D 12 54 03 42 57 31
+84 12 42 56 00 00 5C 56 03 42 57 32 84 12 42 56
+00 00 68 56 03 42 57 33 84 12 42 56 00 00 80 56
+3D 41 1A 42 C6 1D 28 4E B2 92 C4 1D 8E 2B BA 4F
+00 00 A2 53 C6 1D 8E 4A 00 00 3E 4F 30 4D 00 00
+03 46 57 31 84 12 7E 56 00 00 A0 56 03 46 57 32
+84 12 7E 56 00 00 AC 56 03 46 57 33 84 12 7E 56
+00 00 00 00 05 3F 47 4F 54 4F 3E 90 00 30 07 24
+3E E0 00 04 3E B0 00 10 02 24 3E E0 00 08 0D 12
+87 12 90 48 76 46 84 43 B8 56 04 47 4F 54 4F 00
+2F 83 8F 4E 00 00 3E 40 00 3C F1 3F 0D 12 87 12
+CE 46 80 50 06 57 69 4E 3E 4F 3C 4F 2C 4C 1B 42
+C6 1D A2 53 C6 1D 79 90 52 00 0A 20 B0 12 FC 50
+5E 0E 5E 0E 0E DC 8B 4E 00 00 0E 4B 3D 41 30 4D
+79 90 23 00 0D 20 3C C0 40 00 92 53 C4 1D A2 53
+C6 1D B0 12 A4 50 BB 4F 02 00 3E F0 0F 00 E8 3F
+79 90 26 00 03 20 3C E0 E0 00 EF 3F 3C C0 F0 00
+79 90 40 00 12 20 92 53 C4 1D B0 12 FC 50 D8 23
+3C D0 10 00 3E 40 2B 00 B0 12 FC 50 92 92 C0 1D
+C4 1D CE 27 92 53 C4 1D CB 3F 3C D0 30 00 A2 53
+C6 1D 3E 40 28 00 B0 12 A4 50 BB 4F 02 00 3E 40
+29 00 EA 3F 0D 12 87 12 CE 46 80 50 AE 57 3B 4F
+2C 4B 69 4E 7E 40 20 00 79 90 52 00 03 20 B0 12
+FC 50 B0 3F 3C C0 F0 00 A2 53 C6 1D 79 90 26 00
+09 20 3C D0 60 00 92 53 C4 1D B0 12 A4 50 BB 4F
+02 00 A0 3F 3C D0 70 00 3E 40 28 00 B0 12 A4 50
+BB 4F 02 00 3E 40 29 00 E2 3F 24 40 2C 00 FC 56
+A4 57 82 42 84 43 58 52 04 4D 4F 56 41 00 84 12
+FA 57 C0 00 74 56 04 43 4D 50 41 00 84 12 FA 57
+D0 00 0E 56 04 41 44 44 41 00 84 12 FA 57 E0 00
+30 56 04 53 55 42 41 00 84 12 FA 57 F0 00 16 58
+05 43 41 4C 4C 41 0D 12 87 12 CE 46 80 50 50 58
 1B 42 C6 1D A2 53 C6 1D 6E 4E 3C 40 34 01 7E 90
-52 00 0B 20 7E 40 20 00 B0 12 6C 53 5C 0E 0C DE
+52 00 0B 20 7E 40 20 00 B0 12 FC 50 5C 0E 0C DE
 8B 4C 00 00 3E 4F 3D 41 30 4D 2C 53 7E 90 40 00
-0B 20 92 53 C4 1D 7E 40 20 00 B0 12 6C 53 EE 23
+0B 20 92 53 C4 1D 7E 40 20 00 B0 12 FC 50 EE 23
 1C 53 3E 40 2B 00 E8 3F A2 53 C6 1D 7E 90 23 00
-09 20 3C 40 3B 01 92 53 C4 1D B0 12 12 53 BB 4F
+09 20 3C 40 3B 01 92 53 C4 1D B0 12 A4 50 BB 4F
 02 00 DC 3F 7E 90 26 00 02 20 2C 53 F4 3F 7E 40
-28 00 1C 83 B0 12 12 53 BB 4F 02 00 3E 40 29 00
-CB 3F 87 12 A4 47 D6 44 3A 5B 69 4E 3E 4F 3C 40
-00 18 79 90 52 00 05 20 B0 12 6C 53 0E 4C 3D 41
-30 4D 82 43 C6 5F 79 90 23 00 0B 20 92 53 C4 1D
-B0 12 12 53 2F 53 3E F0 0F 00 5E 0A 5E 0E 0C DE
-ED 3F 79 90 26 00 F2 27 79 90 40 00 12 20 92 53
-C4 1D B0 12 6C 53 E2 23 3E 40 2B 00 92 53 C4 1D
-B0 12 6C 53 92 92 C0 1D C4 1D D8 27 92 53 C4 1D
-D5 3F 3E 40 28 00 B0 12 12 53 8F 4E 00 00 3E 40
-29 00 B0 12 6C 53 3E 4F 3E F0 0F 00 0C DE EA 3F
-87 12 A4 47 D6 44 C8 5B 3C 4F 69 4E 3E 40 20 00
-79 90 52 00 BB 27 82 43 C6 5F 79 90 26 00 08 20
-92 53 C4 1D B0 12 12 53 2F 53 3E F0 0F 00 BF 3F
-3E 40 28 00 B0 12 12 53 F7 3F 1B 42 C6 1D A2 53
-C6 1D 0C 4E 3E 4F 1C D2 C6 5F 82 43 C6 5F 3C DE
-8B 4C 00 00 B2 41 C4 1D 30 4D 76 44 C4 1D EA 40
-86 40 76 44 2C 00 32 5B C0 5B FA 5B 3C 42 A4 54
-6A 5A 04 4D 4F 56 58 00 84 12 1A 5C 40 00 00 40
-32 5C 06 4D 4F 56 58 2E 41 00 84 12 1A 5C 00 00
-40 40 42 5C 06 4D 4F 56 58 2E 42 00 84 12 1A 5C
-40 00 40 40 86 5A 04 41 44 44 58 00 84 12 1A 5C
-40 00 00 50 66 5C 06 41 44 44 58 2E 41 00 84 12
-1A 5C 00 00 40 50 76 5C 06 41 44 44 58 2E 42 00
-84 12 1A 5C 40 00 40 50 88 5C 05 41 44 44 43 58
-84 12 1A 5C 40 00 00 60 9A 5C 07 41 44 44 43 58
-2E 41 84 12 1A 5C 00 00 40 60 AA 5C 07 41 44 44
-43 58 2E 42 84 12 1A 5C 40 00 40 60 94 5A 05 53
-55 42 43 58 84 12 1A 5C 40 00 00 70 CE 5C 07 53
-55 42 43 58 2E 41 84 12 1A 5C 00 00 40 70 DE 5C
-07 53 55 42 43 58 2E 42 84 12 1A 5C 40 00 40 70
-F0 5C 04 53 55 42 58 00 84 12 1A 5C 40 00 00 80
-02 5D 06 53 55 42 58 2E 41 00 84 12 1A 5C 00 00
-40 80 12 5D 06 53 55 42 58 2E 42 00 84 12 1A 5C
-40 00 40 80 A2 5A 04 43 4D 50 58 00 84 12 1A 5C
-40 00 00 90 36 5D 06 43 4D 50 58 2E 41 00 84 12
-1A 5C 00 00 40 90 46 5D 06 43 4D 50 58 2E 42 00
-84 12 1A 5C 40 00 40 90 2E 58 05 44 41 44 44 58
-84 12 1A 5C 40 00 00 A0 6A 5D 07 44 41 44 44 58
-2E 41 84 12 1A 5C 00 00 40 A0 7A 5D 07 44 41 44
-44 58 2E 42 84 12 1A 5C 40 00 40 A0 58 5D 04 42
-49 54 58 00 84 12 1A 5C 40 00 00 B0 9E 5D 06 42
-49 54 58 2E 41 00 84 12 1A 5C 00 00 40 B0 AE 5D
-06 42 49 54 58 2E 42 00 84 12 1A 5C 40 00 40 B0
-C0 5D 04 42 49 43 58 00 84 12 1A 5C 40 00 00 C0
-D2 5D 06 42 49 43 58 2E 41 00 84 12 1A 5C 00 00
-40 C0 E2 5D 06 42 49 43 58 2E 42 00 84 12 1A 5C
-40 00 40 C0 F4 5D 04 42 49 53 58 00 84 12 1A 5C
-40 00 00 D0 06 5E 06 42 49 53 58 2E 41 00 84 12
-1A 5C 00 00 40 D0 16 5E 06 42 49 53 58 2E 42 00
-84 12 1A 5C 40 00 40 D0 D4 55 04 58 4F 52 58 00
-84 12 1A 5C 40 00 00 E0 3A 5E 06 58 4F 52 58 2E
-41 00 84 12 1A 5C 00 00 40 E0 4A 5E 06 58 4F 52
-58 2E 42 00 84 12 1A 5C 40 00 40 E0 BC 5C 04 41
-4E 44 58 00 84 12 1A 5C 40 00 00 F0 6E 5E 06 41
-4E 44 58 2E 41 00 84 12 1A 5C 00 00 40 F0 7E 5E
-06 41 4E 44 58 2E 42 00 84 12 1A 5C 40 00 40 F0
-76 44 C4 1D EA 40 86 40 A4 47 32 5B FA 5B 3C 42
-FA 55 24 5D 04 52 52 43 58 00 84 12 A0 5E 40 00
-00 10 B4 5E 06 52 52 43 58 2E 41 00 84 12 A0 5E
-00 00 40 10 C4 5E 06 52 52 43 58 2E 42 00 84 12
-A0 5E 40 00 40 10 D6 5E 04 52 52 55 58 00 84 12
-A0 5E 40 01 00 10 E8 5E 06 52 52 55 58 2E 41 00
-84 12 A0 5E 00 01 40 10 F8 5E 06 52 52 55 58 2E
-42 00 84 12 A0 5E 40 01 40 10 0A 5F 05 53 57 50
-42 58 84 12 A0 5E 40 00 80 10 1C 5F 07 53 57 50
-42 58 2E 41 84 12 A0 5E 00 00 80 10 2C 5F 04 52
-52 41 58 00 84 12 A0 5E 40 00 00 11 3E 5F 06 52
-52 41 58 2E 41 00 84 12 A0 5E 00 00 40 11 4E 5F
-06 52 52 41 58 2E 42 00 84 12 A0 5E 40 00 40 11
-60 5F 04 53 58 54 58 00 84 12 A0 5E 40 00 80 11
-72 5F 06 53 58 54 58 2E 41 00 84 12 A0 5E 00 00
-80 11 EA 57 05 50 55 53 48 58 84 12 A0 5E 40 00
-00 12 94 5F 07 50 55 53 48 58 2E 41 84 12 A0 5E
-00 00 40 12 A4 5F 07 50 55 53 48 58 2E 42 84 12
-A0 5E 40 00 40 12 00 00 82 5F 03 52 50 54 87 12
-A4 47 D6 44 D6 5F 29 4E 7E 40 20 00 79 90 52 00
-06 20 B0 12 6C 53 03 24 3E D0 80 00 05 3C B0 12
-12 53 1E 83 3E F0 0F 00 82 4E C6 5F 3E 4F 3D 41
-30 4D 1A 43 25 3C D2 C3 23 02 E2 B2 60 02 02 24
-30 40 E8 50 1A 52 04 20 19 62 06 20 92 43 14 20
-A2 93 02 20 07 24 0A 5A 49 69 82 4A 16 20 C2 49
-18 20 0A 3C C2 4A 15 20 8A 10 C2 4A 16 20 C2 49
-17 20 89 10 C2 49 18 20 B0 12 8A 60 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 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 1A 52
-08 20 09 43 1C D3 F2 40 51 00 19 20 B0 12 06 60
-33 20 B0 12 8A 60 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 09 43
-2C D3 F0 40 58 00 23 BF B0 12 06 60 15 20 3A 40
-FE FF 29 43 B0 12 8E 60 D2 49 00 1E 4E 06 03 43
-19 53 39 90 00 02 F8 23 39 40 03 00 B0 12 8C 60
-7A C0 E1 00 6A 92 DE 27 8C 10 1C 52 4C 06 D2 D3
-23 02 87 12 80 44 0B 3C 20 53 44 20 45 72 72 6F
-72 21 44 61 2F 83 8F 4E 00 00 B2 40 10 00 DC 1D
-0E 4C B0 12 2A 40 24 42 F2 48 92 4B 0E 00 22 20
-92 4B 10 00 24 20 5A 42 23 20 58 42 22 20 92 93
-02 20 08 24 59 42 24 20 89 10 0A 59 88 10 08 58
-0A 6A 88 10 08 58 30 41 82 43 1C 20 92 42 0E 20
-1A 20 C2 93 24 20 03 20 92 93 22 20 14 24 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 88 61 5A 4B 03 00 82 5A 1A 20
-82 63 1C 20 30 41 09 93 07 24 F8 90 20 00 00 1E
-03 20 18 53 19 83 F9 23 30 41 1B 42 32 20 82 43
-1E 20 B2 90 00 02 20 20 A8 20 BB 80 00 02 12 00
-8B 73 14 00 DB 53 03 00 DB 92 12 20 03 00 11 28
-CB 43 03 00 B0 12 5A 61 B0 12 AE 60 8B 43 10 00
-9B 48 00 1E 0E 00 92 93 02 20 03 24 9B 48 02 1E
-10 00 B2 40 00 02 20 20 8B 93 14 00 0B 20 92 9B
-12 00 1E 20 82 2C BB 90 00 02 12 00 03 2C 92 4B
-12 00 20 20 B0 12 C8 61 1A 42 1A 20 19 42 1C 20
-21 3F 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 07 24
-09 4B 3B 50 1C 00 3B 90 18 21 EF 23 0C 5C 30 41
-0C 43 82 4B 32 20 8B 49 00 00 09 93 0A 24 99 52
-C4 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 5F 27 C9 37 8B 43 16 00
-7A 93 02 24 07 38 95 3F B2 40 1C 21 EC 43 B2 40
-EA 42 50 43 9B 42 C0 1D 18 00 9B 82 C4 1D 18 00
-9B 42 C2 1D 1A 00 9B 52 C4 1D 1A 00 82 3F CB 43
-02 00 2B 4B 82 4B 32 20 0B 93 06 24 92 4B 16 00
-1E 20 B0 12 42 62 22 C3 30 41 1B 42 32 20 0B 93
-FB 27 EB 93 02 00 04 20 B0 12 B0 67 B0 12 78 67
-CB 93 02 00 E4 37 1E 4B 18 00 9F 4B 1A 00 00 00
-31 50 06 00 3D 41 B0 12 3E 63 02 24 30 40 24 44
-B2 40 3C 1D EC 43 B2 40 52 43 50 43 30 40 0E 44
-9E 4E 85 52 45 41 44 22 5A 43 19 3C 40 4F 86 57
-52 49 54 45 22 00 6A 43 12 3C 06 4E 84 44 45 4C
-22 00 6A 42 0C 3C D2 51 05 43 4C 4F 53 45 B0 12
-5A 63 30 4D E6 52 85 4C 4F 41 44 22 7A 43 2F 83
-8F 4E 00 00 0E 4A 82 93 BE 1D 0A 24 87 12 76 44
-76 44 12 47 12 47 9A 44 76 44 0E 64 12 47 2A 40
-87 12 76 44 22 00 E2 44 86 47 0C 64 3D 41 35 4F
-0E 55 82 4E 36 20 1C 43 92 42 2C 20 22 20 92 42
-2E 20 24 20 0E 95 8D 24 F5 90 3A 00 01 00 01 20
-25 53 F5 90 5C 00 00 00 08 20 15 53 92 42 02 20
-22 20 82 43 24 20 0E 95 70 24 82 45 34 20 B0 12
-88 61 34 40 20 00 A2 93 02 20 04 24 92 92 22 20
-02 20 02 24 14 42 12 20 B0 12 68 62 2C 43 0A 43
-08 4A 58 0E 08 58 82 48 30 20 C8 93 00 1E 61 24
-39 42 F8 95 00 1E 04 20 18 53 19 83 FA 23 15 53
-F5 90 2E 00 FF FF 19 24 39 50 03 00 B0 12 E6 61
-06 20 F5 90 5C 00 FF FF 29 24 0E 95 27 28 15 42
-34 20 1A 53 3A 90 10 00 DB 23 92 53 1A 20 82 63
-1C 20 14 83 D1 23 2C 42 3C 3C F5 90 2E 00 FE FF
-EE 27 B0 12 E6 61 EB 23 39 40 03 00 F8 95 00 1E
-04 20 18 53 19 83 FA 23 09 3C 0E 95 E0 2F F5 90
-5C 00 FF FF DC 23 B0 12 E6 61 D9 23 18 42 30 20
-92 48 1A 1E 22 20 92 48 14 1E 24 20 F8 B0 10 00
-0B 1E 14 24 82 93 24 20 06 20 82 93 22 20 03 20
-92 42 02 20 22 20 0E 95 8E 2F 92 42 22 20 2C 20
-92 42 24 20 2E 20 8F 43 00 00 03 3C 2A 4F B0 12
-72 62 34 40 00 40 35 40 0E 40 3A 4F 3E 4F 0A 93
-04 24 7A 93 0D 20 0C 93 01 20 30 4D 87 12 80 44
-0B 3C 20 4F 70 65 6E 45 72 72 6F 72 3C 42 42 61
-1A 93 B6 20 0C 93 F2 23 30 4D A2 63 04 52 45 41
-44 00 2F 83 8F 4E 00 00 1E 42 32 20 B0 12 FA 61
-1E 82 32 20 30 4D 2C 43 12 12 2A 20 18 42 02 20
-08 58 2A 41 82 9A 0A 20 A1 24 B0 12 AE 60 09 43
-28 93 03 24 89 93 02 1E 03 20 89 93 00 1E 07 24
-09 58 39 90 00 02 F4 23 91 53 00 00 EA 3F 0C 43
-6A 41 B9 43 00 1E 28 93 0F 24 B9 40 FF 0F 02 1E
-09 11 8A 10 09 5A 5A 41 01 00 0A 11 09 10 82 4A
-28 20 82 49 26 20 07 3C 09 11 C2 49 26 20 C2 4A
-27 20 82 43 28 20 3A 41 82 4A 2A 20 30 41 0A 12
-1A 52 08 20 B0 12 EE 60 3A 41 1A 52 0C 20 30 40
-EE 60 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 38 39 80 03 00 B0 12 CE 66 39 40 03 00 7A 4B
-C8 4A 00 1E 82 9B 36 20 12 28 0D 12 3D 40 0F 00
-3C 40 7E 66 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
-2A 93 D8 20 2C 93 0D 24 0C 93 A7 24 87 12 80 44
-0C 3C 20 57 72 69 74 65 45 72 72 6F 72 00 3C 42
-42 61 B0 12 96 65 92 42 26 20 22 20 92 42 28 20
-24 20 B0 12 0E 66 B0 12 68 62 18 42 30 20 F8 40
-20 00 0B 1E B0 12 22 66 88 43 0C 1E 88 4A 0E 1E
-88 49 10 1E 88 49 12 1E 98 42 24 20 14 1E 98 42
-22 20 1A 1E 88 43 1C 1E 88 43 1E 1E 1C 43 1B 42
-34 20 82 9B 36 20 CA 27 FB 90 2E 00 00 00 C6 27
-39 40 0B 00 B0 12 9E 66 B0 12 BA 67 2A 43 B0 12
-72 62 0C 93 BB 23 30 4D 1A 4B 04 00 19 4B 06 00
-B0 12 B4 60 B0 12 22 66 18 4B 08 00 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 F0 60
-9B 52 1E 20 12 00 8B 63 14 00 1A 42 1A 20 19 42
-1C 20 30 40 F0 60 B2 40 00 02 1E 20 1B 42 32 20
-B0 12 B0 67 82 43 1E 20 DB 53 03 00 DB 92 12 20
-03 00 22 20 CB 43 03 00 B0 12 5A 61 08 12 0A 12
-B0 12 96 65 2A 91 05 24 B0 12 0E 66 2A 41 B0 12
-AE 60 3A 41 38 41 98 42 26 20 00 1E 92 93 02 20
-03 24 98 42 28 20 02 1E B0 12 0E 66 9B 42 26 20
-0E 00 9B 42 28 20 10 00 30 40 C8 61 AE 63 05 57
-52 49 54 45 B0 12 C6 67 30 4D 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 1A 4B 12 00
-BB C0 FF 01 12 00 3A F0 FF 01 82 4A 1E 20 B0 12
-64 62 30 4D 0C 93 38 20 38 90 E0 01 03 2C C8 93
-20 1E 02 24 7C 40 E5 00 C8 4C 00 1E B0 12 BA 67
-B0 12 66 61 82 4A 2A 20 0B 4A B0 12 AE 60 1A 48
-00 1E 88 43 00 1E 92 93 02 20 09 24 19 48 02 1E
-88 43 02 1E 39 F0 FF 0F 39 90 FF 0F 02 20 3A 93
-0E 24 82 4A 22 20 82 49 24 20 B0 12 66 61 0B 9A
-E6 27 0A 12 0A 4B B0 12 0E 66 3A 41 DD 3F 0A 4B
-B0 12 0E 66 B0 12 5A 63 30 4D 38 4C 08 54 45 52
-4D 32 53 44 22 00 87 12 C2 63 76 44 02 00 02 47
-86 47 0E 64 26 69 3D 41 92 C3 DC 05 08 43 B0 12
-B6 42 92 B3 DC 05 FD 27 59 42 CC 05 69 92 0D 24
-C8 49 00 1E 18 53 38 90 FF 01 F3 2B 03 24 B0 12
-C6 67 EC 3F B0 12 C8 42 EC 3F B0 12 C8 42 82 48
-1E 20 B0 12 5A 63 30 4D
+28 00 1C 83 B0 12 A4 50 BB 4F 02 00 3E 40 29 00
+CB 3F 0D 12 87 12 CE 46 80 50 DC 58 69 4E 3E 4F
+3C 40 00 18 79 90 52 00 05 20 B0 12 FC 50 0E 4C
+3D 41 30 4D 82 43 66 5D 79 90 23 00 0B 20 92 53
+C4 1D B0 12 A4 50 2F 53 3E F0 0F 00 5E 0A 5E 0E
+0C DE ED 3F 79 90 26 00 F2 27 79 90 40 00 12 20
+92 53 C4 1D B0 12 FC 50 E2 23 3E 40 2B 00 92 53
+C4 1D B0 12 FC 50 92 92 C0 1D C4 1D D8 27 92 53
+C4 1D D5 3F 3E 40 28 00 B0 12 A4 50 8F 4E 00 00
+3E 40 29 00 B0 12 FC 50 3E 4F 3E F0 0F 00 0C DE
+EA 3F 0D 12 87 12 CE 46 80 50 6C 59 3C 4F 69 4E
+3E 40 20 00 79 90 52 00 BA 27 82 43 66 5D 79 90
+26 00 08 20 92 53 C4 1D B0 12 A4 50 2F 53 3E F0
+0F 00 BE 3F 3E 40 28 00 B0 12 A4 50 F7 3F B2 4F
+C4 1D 1B 42 C6 1D A2 53 C6 1D 0C 4E 3E 4F 1C D2
+66 5D 82 43 66 5D 3C DE 8B 4C 00 00 30 4D 24 40
+C4 1D 02 41 24 40 2C 00 D2 58 62 59 9E 59 48 40
+38 52 08 58 04 4D 4F 56 58 00 84 12 BE 59 40 00
+00 40 D4 59 06 4D 4F 56 58 2E 41 00 84 12 BE 59
+00 00 40 40 E4 59 06 4D 4F 56 58 2E 42 00 84 12
+BE 59 40 00 40 40 24 58 04 41 44 44 58 00 84 12
+BE 59 40 00 00 50 08 5A 06 41 44 44 58 2E 41 00
+84 12 BE 59 00 00 40 50 18 5A 06 41 44 44 58 2E
+42 00 84 12 BE 59 40 00 40 50 2A 5A 05 41 44 44
+43 58 84 12 BE 59 40 00 00 60 3C 5A 07 41 44 44
+43 58 2E 41 84 12 BE 59 00 00 40 60 4C 5A 07 41
+44 44 43 58 2E 42 84 12 BE 59 40 00 40 60 32 58
+05 53 55 42 43 58 84 12 BE 59 40 00 00 70 70 5A
+07 53 55 42 43 58 2E 41 84 12 BE 59 00 00 40 70
+80 5A 07 53 55 42 43 58 2E 42 84 12 BE 59 40 00
+40 70 92 5A 04 53 55 42 58 00 84 12 BE 59 40 00
+00 80 A4 5A 06 53 55 42 58 2E 41 00 84 12 BE 59
+00 00 40 80 B4 5A 06 53 55 42 58 2E 42 00 84 12
+BE 59 40 00 40 80 40 58 04 43 4D 50 58 00 84 12
+BE 59 40 00 00 90 D8 5A 06 43 4D 50 58 2E 41 00
+84 12 BE 59 00 00 40 90 E8 5A 06 43 4D 50 58 2E
+42 00 84 12 BE 59 40 00 40 90 C2 55 05 44 41 44
+44 58 84 12 BE 59 40 00 00 A0 0C 5B 07 44 41 44
+44 58 2E 41 84 12 BE 59 00 00 40 A0 1C 5B 07 44
+41 44 44 58 2E 42 84 12 BE 59 40 00 40 A0 FA 5A
+04 42 49 54 58 00 84 12 BE 59 40 00 00 B0 40 5B
+06 42 49 54 58 2E 41 00 84 12 BE 59 00 00 40 B0
+50 5B 06 42 49 54 58 2E 42 00 84 12 BE 59 40 00
+40 B0 62 5B 04 42 49 43 58 00 84 12 BE 59 40 00
+00 C0 74 5B 06 42 49 43 58 2E 41 00 84 12 BE 59
+00 00 40 C0 84 5B 06 42 49 43 58 2E 42 00 84 12
+BE 59 40 00 40 C0 96 5B 04 42 49 53 58 00 84 12
+BE 59 40 00 00 D0 A8 5B 06 42 49 53 58 2E 41 00
+84 12 BE 59 00 00 40 D0 B8 5B 06 42 49 53 58 2E
+42 00 84 12 BE 59 40 00 40 D0 68 53 04 58 4F 52
+58 00 84 12 BE 59 40 00 00 E0 DC 5B 06 58 4F 52
+58 2E 41 00 84 12 BE 59 00 00 40 E0 EC 5B 06 58
+4F 52 58 2E 42 00 84 12 BE 59 40 00 40 E0 5E 5A
+04 41 4E 44 58 00 84 12 BE 59 40 00 00 F0 10 5C
+06 41 4E 44 58 2E 41 00 84 12 BE 59 00 00 40 F0
+20 5C 06 41 4E 44 58 2E 42 00 84 12 BE 59 40 00
+40 F0 24 40 C4 1D 02 41 CE 46 D2 58 9E 59 48 40
+8E 53 C6 5A 04 52 52 43 58 00 84 12 42 5C 40 00
+00 10 54 5C 06 52 52 43 58 2E 41 00 84 12 42 5C
+00 00 40 10 64 5C 06 52 52 43 58 2E 42 00 84 12
+42 5C 40 00 40 10 76 5C 04 52 52 55 58 00 84 12
+42 5C 40 01 00 10 88 5C 06 52 52 55 58 2E 41 00
+84 12 42 5C 00 01 40 10 98 5C 06 52 52 55 58 2E
+42 00 84 12 42 5C 40 01 40 10 AA 5C 05 53 57 50
+42 58 84 12 42 5C 40 00 80 10 BC 5C 07 53 57 50
+42 58 2E 41 84 12 42 5C 00 00 80 10 CC 5C 04 52
+52 41 58 00 84 12 42 5C 40 00 00 11 DE 5C 06 52
+52 41 58 2E 41 00 84 12 42 5C 00 00 40 11 EE 5C
+06 52 52 41 58 2E 42 00 84 12 42 5C 40 00 40 11
+00 5D 04 53 58 54 58 00 84 12 42 5C 40 00 80 11
+12 5D 06 53 58 54 58 2E 41 00 84 12 42 5C 00 00
+80 11 7E 55 05 50 55 53 48 58 84 12 42 5C 40 00
+00 12 34 5D 07 50 55 53 48 58 2E 41 84 12 42 5C
+00 00 40 12 44 5D 07 50 55 53 48 58 2E 42 84 12
+42 5C 40 00 40 12 00 00 22 5D 03 52 50 54 0D 12
+87 12 CE 46 80 50 78 5D 29 4E 7E 40 20 00 79 90
+52 00 06 20 B0 12 FC 50 03 24 3E D0 80 00 05 3C
+B0 12 A4 50 1E 83 3E F0 0F 00 82 4E 66 5D 3E 4F
+3D 41 30 4D 1A 43 25 3C D2 C3 23 02 E2 B2 60 02
+02 24 30 40 B6 4E 1A 52 04 20 19 62 06 20 92 43
+14 20 A2 93 02 20 07 24 0A 5A 49 69 82 4A 16 20
+C2 49 18 20 0A 3C C2 4A 15 20 8A 10 C2 4A 16 20
+C2 49 17 20 89 10 C2 49 18 20 B0 12 2C 5E 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 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
+1A 52 08 20 09 43 1C D3 F2 40 51 00 19 20 B0 12
+A8 5D 33 20 B0 12 2C 5E 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
+09 43 2C D3 F0 40 58 00 81 C1 B0 12 A8 5D 15 20
+3A 40 FE FF 29 43 B0 12 30 5E D2 49 00 1E 4E 06
+03 43 19 53 39 90 00 02 F8 23 39 40 03 00 B0 12
+2E 5E 7A C0 E1 00 6A 92 DE 27 8C 10 1C 52 4C 06
+D2 D3 23 02 0D 12 87 12 2E 40 0B 3C 20 53 44 20
+45 72 72 6F 72 21 E8 5E 2F 83 8F 4E 00 00 B2 40
+10 00 DC 1D 0E 4C 87 12 C4 43 1A 48 92 4B 0E 00
+22 20 92 4B 10 00 24 20 5A 42 23 20 58 42 22 20
+92 93 02 20 08 24 59 42 24 20 89 10 0A 59 88 10
+08 58 0A 6A 88 10 08 58 30 41 82 43 1C 20 92 42
+0E 20 1A 20 C2 93 24 20 03 20 92 93 22 20 14 24
+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 2A 5F 5A 4B 03 00 82 5A
+1A 20 82 63 1C 20 30 41 09 93 07 24 F8 90 20 00
+00 1E 03 20 18 53 19 83 F9 23 30 41 1B 42 32 20
+82 43 1E 20 B2 90 00 02 20 20 A8 20 BB 80 00 02
+12 00 8B 73 14 00 DB 53 03 00 DB 92 12 20 03 00
+11 28 CB 43 03 00 B0 12 FC 5E B0 12 50 5E 8B 43
+10 00 9B 48 00 1E 0E 00 92 93 02 20 03 24 9B 48
+02 1E 10 00 B2 40 00 02 20 20 8B 93 14 00 0B 20
+92 9B 12 00 1E 20 82 2C BB 90 00 02 12 00 03 2C
+92 4B 12 00 20 20 B0 12 6A 5F 1A 42 1A 20 19 42
+1C 20 21 3F 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
+07 24 09 4B 3B 50 1C 00 3B 90 18 21 EF 23 0C 5C
+30 41 0C 43 82 4B 32 20 8B 49 00 00 09 93 0A 24
+99 52 C4 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 5F 27 C9 37 8B 43
+16 00 7A 93 02 24 07 38 95 3F B2 40 1C 21 E2 40
+B2 40 2A 41 90 41 9B 42 C0 1D 18 00 9B 82 C4 1D
+18 00 9B 42 C2 1D 1A 00 9B 52 C4 1D 1A 00 82 3F
+CB 43 02 00 2B 4B 82 4B 32 20 0B 93 06 24 92 4B
+16 00 1E 20 B0 12 E4 5F 22 C3 30 41 1B 42 32 20
+0B 93 FB 27 EB 93 02 00 04 20 B0 12 5A 65 B0 12
+22 65 CB 93 02 00 E4 37 1E 4B 18 00 9F 4B 1A 00
+00 00 31 50 06 00 3D 41 B0 12 E0 60 02 24 30 40
+4A 42 B2 40 3C 1D E2 40 B2 40 92 41 90 41 30 40
+34 42 68 4C 85 52 45 41 44 22 5A 43 19 3C 0A 4D
+86 57 52 49 54 45 22 00 6A 43 12 3C D0 4B 84 44
+45 4C 22 00 6A 42 0C 3C B0 4E 05 43 4C 4F 53 45
+B0 12 FC 60 30 4D 7E 46 85 4C 4F 41 44 22 7A 43
+2F 83 8F 4E 00 00 0E 4A 82 93 BE 1D 0B 24 0D 12
+87 12 24 40 24 40 56 46 56 46 08 44 24 40 B4 61
+56 46 84 43 0D 12 87 12 24 40 22 00 50 44 C0 46
+B2 61 3D 41 35 4F 0E 55 82 4E 36 20 1C 43 92 42
+2C 20 22 20 92 42 2E 20 24 20 0E 95 8D 24 F5 90
+3A 00 01 00 01 20 25 53 F5 90 5C 00 00 00 08 20
+15 53 92 42 02 20 22 20 82 43 24 20 0E 95 70 24
+82 45 34 20 B0 12 2A 5F 34 40 20 00 A2 93 02 20
+04 24 92 92 22 20 02 20 02 24 14 42 12 20 B0 12
+0A 60 2C 43 0A 43 08 4A 58 0E 08 58 82 48 30 20
+C8 93 00 1E 61 24 39 42 F8 95 00 1E 04 20 18 53
+19 83 FA 23 15 53 F5 90 2E 00 FF FF 19 24 39 50
+03 00 B0 12 88 5F 06 20 F5 90 5C 00 FF FF 29 24
+0E 95 27 28 15 42 34 20 1A 53 3A 90 10 00 DB 23
+92 53 1A 20 82 63 1C 20 14 83 D1 23 2C 42 3C 3C
+F5 90 2E 00 FE FF EE 27 B0 12 88 5F EB 23 39 40
+03 00 F8 95 00 1E 04 20 18 53 19 83 FA 23 09 3C
+0E 95 E0 2F F5 90 5C 00 FF FF DC 23 B0 12 88 5F
+D9 23 18 42 30 20 92 48 1A 1E 22 20 92 48 14 1E
+24 20 F8 B0 10 00 0B 1E 14 24 82 93 24 20 06 20
+82 93 22 20 03 20 92 42 02 20 22 20 0E 95 8E 2F
+92 42 22 20 2C 20 92 42 24 20 2E 20 8F 43 00 00
+03 3C 2A 4F B0 12 14 60 34 40 EC 40 35 40 FA 40
+3A 4F 3E 4F 0A 93 04 24 7A 93 0E 20 0C 93 01 20
+30 4D 0D 12 87 12 2E 40 0B 3C 20 4F 70 65 6E 45
+72 72 6F 72 48 40 E6 5E 1A 93 B6 20 0C 93 F1 23
+30 4D 44 61 04 52 45 41 44 00 2F 83 8F 4E 00 00
+1E 42 32 20 B0 12 9C 5F 1E 82 32 20 30 4D 2C 43
+12 12 2A 20 18 42 02 20 08 58 2A 41 82 9A 0A 20
+A1 24 B0 12 50 5E 09 43 28 93 03 24 89 93 02 1E
+03 20 89 93 00 1E 07 24 09 58 39 90 00 02 F4 23
+91 53 00 00 EA 3F 0C 43 6A 41 B9 43 00 1E 28 93
+0F 24 B9 40 FF 0F 02 1E 09 11 8A 10 09 5A 5A 41
+01 00 0A 11 09 10 82 4A 28 20 82 49 26 20 07 3C
+09 11 C2 49 26 20 C2 4A 27 20 82 43 28 20 3A 41
+82 4A 2A 20 30 41 0A 12 1A 52 08 20 B0 12 90 5E
+3A 41 1A 52 0C 20 30 40 90 5E 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 38 39 80 03 00 B0 12
+76 64 39 40 03 00 7A 4B C8 4A 00 1E 82 9B 36 20
+12 28 0D 12 3D 40 0F 00 3C 40 26 64 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 2A 93 D9 20 2C 93 0E 24
+0C 93 A8 24 0D 12 87 12 2E 40 0C 3C 20 57 72 69
+74 65 45 72 72 6F 72 00 48 40 E6 5E B0 12 3E 63
+92 42 26 20 22 20 92 42 28 20 24 20 B0 12 B6 63
+B0 12 0A 60 18 42 30 20 F8 40 20 00 0B 1E B0 12
+CA 63 88 43 0C 1E 88 4A 0E 1E 88 49 10 1E 88 49
+12 1E 98 42 24 20 14 1E 98 42 22 20 1A 1E 88 43
+1C 1E 88 43 1E 1E 1C 43 1B 42 34 20 82 9B 36 20
+C9 27 FB 90 2E 00 00 00 C5 27 39 40 0B 00 B0 12
+46 64 B0 12 64 65 2A 43 B0 12 14 60 0C 93 BA 23
+30 4D 1A 4B 04 00 19 4B 06 00 B0 12 56 5E B0 12
+CA 63 18 4B 08 00 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 5E 9B 52 1E 20 12 00
+8B 63 14 00 1A 42 1A 20 19 42 1C 20 30 40 92 5E
+B2 40 00 02 1E 20 1B 42 32 20 B0 12 5A 65 82 43
+1E 20 DB 53 03 00 DB 92 12 20 03 00 22 20 CB 43
+03 00 B0 12 FC 5E 08 12 0A 12 B0 12 3E 63 2A 91
+05 24 B0 12 B6 63 2A 41 B0 12 50 5E 3A 41 38 41
+98 42 26 20 00 1E 92 93 02 20 03 24 98 42 28 20
+02 1E B0 12 B6 63 9B 42 26 20 0E 00 9B 42 28 20
+10 00 30 40 6A 5F 50 61 05 57 52 49 54 45 B0 12
+70 65 30 4D 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 1A 4B 12 00 BB C0 FF 01 12 00
+3A F0 FF 01 82 4A 1E 20 B0 12 06 60 30 4D 0C 93
+38 20 38 90 E0 01 03 2C C8 93 20 1E 02 24 7C 40
+E5 00 C8 4C 00 1E B0 12 64 65 B0 12 08 5F 82 4A
+2A 20 0B 4A B0 12 50 5E 1A 48 00 1E 88 43 00 1E
+92 93 02 20 09 24 19 48 02 1E 88 43 02 1E 39 F0
+FF 0F 39 90 FF 0F 02 20 3A 93 0E 24 82 4A 22 20
+82 49 24 20 B0 12 08 5F 0B 9A E6 27 0A 12 0A 4B
+B0 12 B6 63 3A 41 DD 3F 0A 4B B0 12 B6 63 B0 12
+FC 60 30 4D C0 43 08 54 45 52 4D 32 53 44 22 00
+0D 12 87 12 64 61 24 40 02 00 CE 4A C0 46 B4 61
+D2 66 3D 41 92 C3 DC 05 08 43 B0 12 06 41 92 B3
+DC 05 FD 27 59 42 CC 05 69 92 0D 24 C8 49 00 1E
+18 53 38 90 FF 01 F3 2B 03 24 B0 12 70 65 EC 3F
+B0 12 18 41 EC 3F B0 12 18 41 82 48 1E 20 B0 12
+FC 60 30 4D
 @FFFE
-F6 50
+C2 4E
 q
index ba46cda..c03a378 100644 (file)
 @1800
-10 00 04 00 51 55 40 1F 05 00 18 00 64 69 C4 4D
-2D 01 FF B3 B6 42 C8 42 B0 60 EC 60
+10 00 04 00 51 55 40 1F 05 00 18 00 10 67 78 4B
+2E 01 FF B3 06 41 18 41 52 5E 8E 5E
 @4000
-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 3A 41 0D 12 0D 4A
-30 4D 00 00 04 45 58 49 54 00 3D 41 30 4D 24 40
-03 44 55 50 2F 83 8F 4E 00 00 30 4D 00 00 04 32
-44 55 50 00 8F 4E FE FF AF 4F FC FF 2F 82 30 4D
-00 00 04 3F 44 55 50 00 0E 93 EC 23 30 4D 30 40
-04 44 52 4F 50 00 3E 4F 30 4D 2F 53 30 4D 3E 40
-04 53 57 41 50 00 2A 4F 8F 4E 00 00 0E 4A 30 4D
-52 40 02 3E 52 00 0E 12 3E 4F 30 4D 70 40 02 52
-3E 00 2F 83 8F 4E 00 00 3E 41 30 4D 60 40 05 44
-45 50 54 48 8F 4E FE FF 3E 40 80 1C 0E 8F 0E 11
-2F 83 30 4D 00 00 01 2D 3E 8F 3E E3 1E 53 30 4D
-00 00 02 31 2B 00 1E 53 30 4D C2 40 02 31 2D 00
-1E 83 30 4D 3E F3 06 34 BF E3 00 00 3E E3 9F 53
-00 00 0E 63 30 4D 00 00 01 40 2E 4E 30 4D E8 40
-01 21 BE 4F 00 00 3E 4F 30 4D CC 40 02 30 3D 00
-1E 83 0E 7E 30 4D FC 40 02 30 3C 00 0E 5E 0E 7E
-3E E3 30 4D 00 00 01 3D 3E 8F FA 27 0E F3 30 4D
-00 00 02 55 3C 00 3E 8F F9 2B 01 24 3E 43 30 4D
-16 41 02 3C 23 00 B2 40 B2 1D B2 1D 30 4D 0B 4E
+30 40 04 40 B0 12 06 41 12 D2 0A 18 F9 3F 39 40
+4C 00 29 83 B9 40 C2 4E B4 FF FB 23 B2 40 C6 41
+F0 FF 30 41 2F 83 8F 4E 00 00 3E 4D 30 4D 2F 82
+8F 4E 02 00 7E 4D 8F 4D 00 00 0D 5E 1D B3 0D 63
+30 4D 0E 93 3E 4F 05 24 2D 4D 30 4D 0E 93 3E 4F
+FB 27 2D 53 30 4D 39 40 00 80 39 8F 08 4E 3E 4F
+08 59 19 15 30 4D 81 5E 00 00 3E 4F 32 B0 00 01
+EB 27 21 52 2D 53 30 4D 91 53 00 00 F7 3F 0B 4E
 1C 4F 02 00 2E 4F 0A 43 34 40 20 00 0E 93 04 20
 04 11 0E 4C 0C 43 09 43 0A 9B 01 28 0A 8B 09 69
 08 68 14 83 07 30 0C 5C 0E 6E 0A 6A F5 2B 0A 8B
-12 D3 F5 3F 34 40 00 40 8F 4A 02 00 8F 49 00 00
-0E 48 30 41 00 00 01 23 1B 42 DC 1D 2C 4F 2F 83
-B0 12 46 41 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 86 41 02 23 53 00 87 12 88 41 C0 41
-2D 83 09 93 E3 23 0E 93 E1 23 3D 41 30 4D B6 41
-02 23 3E 00 9F 42 B2 1D 00 00 3E 40 B2 1D 2E 8F
-30 4D 00 00 04 48 4F 4C 44 00 0A 4E 3E 4F DB 3F
-8E 40 04 53 49 47 4E 00 0E 93 3E 4F 3A 40 2D 00
-D2 33 30 4D 87 12 36 41 34 40 86 40 D4 40 BA 41
-92 40 F8 41 D4 41 38 44 A4 47 E0 43 2A 40 22 41
-02 55 2E 00 08 43 2F 83 8F 4E 00 00 0E 48 EA 3F
-00 00 01 2E 0E 93 F6 37 38 43 F5 3F 2D 4D 30 4D
-0E 93 3E 4F FB 27 2D 53 30 4D 0E 93 3E 4F F6 23
-2D 53 30 4D 39 40 00 80 39 8F 08 4E 3E 4F 08 59
-19 15 30 4D 81 5E 00 00 3E 4F 32 B0 00 01 E6 27
-2D 53 21 52 30 4D 91 53 00 00 F7 3F E4 41 01 49
-2F 83 8F 4E 00 00 2E 41 1E 81 02 00 30 4D 00 00
-03 4B 45 59 30 40 98 42 18 42 CC 05 2F 83 8F 4E
-00 00 B0 12 B6 42 92 B3 DC 05 FD 27 1E 42 CC 05
-B0 12 C8 42 30 4D A2 B3 DC 05 FD 27 B2 40 11 00
-CE 05 E2 C2 23 02 30 41 B2 40 13 00 CE 05 E2 D2
-23 02 30 41 00 00 05 53 4C 45 45 50 30 40 E0 42
-B0 12 B6 42 12 D2 0A 18 F9 3F 0D 12 3D 40 0A 43
+12 D3 F5 3F 34 40 EC 40 8F 4A 02 00 8F 49 00 00
+0E 48 30 41 82 4E C0 1D B2 4F C2 1D 3E 4F 82 43
+C4 1D 30 4D 3F 80 06 00 8F 4E 04 00 3E 40 54 00
+BF 40 3C 1D 00 00 AF 4F 02 00 51 3C 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 A2 B3 DC 05 FD 27 B2 40 11 00
+CE 05 E2 C2 23 02 30 41 A2 B3 DC 05 FD 27 B2 40
+13 00 CE 05 E2 D2 23 02 30 41 0D 12 3D 40 4A 41
 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 0C 43 2D 83 0C 9B
+1C 42 1E 20 1B 42 20 20 02 3C 4C 41 2D 83 0C 9B
 14 2C 58 4C 00 1E 1C 53 78 90 20 00 07 2C 78 90
-0A 00 F5 23 82 4C 1E 20 3D 41 30 4D 0E 99 3D 24
-CA 48 00 00 1A 53 1E 53 38 3C 1A 15 B0 12 F6 61
-19 17 DE 3F F0 40 06 41 43 43 45 50 54 00 30 40
-52 43 3C 40 C2 43 3B 40 8C 43 2D 15 0A 4E 2E 4F
-0A 5E 3B 40 0D 00 3C 40 20 00 3D 40 B6 43 92 B3
-DC 05 05 24 18 42 CC 05 38 90 0A 00 9C 23 21 53
-3D 15 AC 3F 21 52 3A 17 58 42 CC 05 48 9C 08 2C
-48 9B 9A 27 78 92 11 20 2E 9F 0F 24 1E 83 05 3C
-0E 9A 03 24 CE 48 00 00 1E 53 A2 B3 DC 05 FD 27
-82 48 CE 05 30 4D B8 43 2D 83 92 B3 DC 05 E4 23
-FC 27 82 93 DE 1D 02 24 92 53 DE 1D 3E 8F 3D 41
-B2 40 18 00 0A 18 30 4D 9E 40 04 45 4D 49 54 00
-30 40 E4 43 08 4E 3E 4F E0 3F 85 12 3C 1D 3F 80
-06 00 8F 4E 04 00 3E 40 54 00 9F 42 EC 43 00 00
-AF 4F 02 00 A4 3F DA 43 04 45 43 48 4F 00 B2 40
-82 48 B0 43 82 43 DE 1D 30 4D 32 42 06 4E 4F 45
-43 48 4F 00 B2 40 30 4D B0 43 92 43 DE 1D 30 4D
-20 42 04 54 59 50 45 00 0E 93 0F 24 1E 15 3D 40
-4E 44 28 4F 7E 48 8F 48 00 00 2F 83 C9 3F 50 44
-2D 83 91 83 02 00 F5 23 1D 17 2F 53 3E 4F 30 4D
-D0 41 02 43 52 00 30 40 6A 44 87 12 80 44 02 0D
-0A 00 38 44 2A 40 2F 83 8F 4E 00 00 3E 4D 30 4D
-2F 82 8F 4E 02 00 7E 4D 8F 4D 00 00 0D 5E 1D B3
-0D 63 30 4D F2 41 82 53 22 00 82 43 B4 1D 87 12
-76 44 80 44 12 47 76 44 22 00 E2 44 AE 44 B2 40
+0A 00 F5 23 82 4C 1E 20 3D 41 30 4D 0E 99 3E 24
+CA 48 00 00 1A 53 1E 53 39 3C 1A 15 B0 12 98 5F
+19 17 DE 3F 00 00 06 41 43 43 45 50 54 00 30 40
+92 41 3C 40 04 42 3B 40 CE 41 2D 15 0A 4E 2E 4F
+0A 5E 3B 40 0D 00 3C 40 20 00 3D 40 F8 41 92 B3
+DC 05 05 24 18 42 CC 05 38 90 0A 00 A4 23 21 53
+3D 15 30 40 00 40 21 52 3A 17 58 42 CC 05 48 9C
+08 2C 48 9B A1 27 78 92 11 20 2E 9F 0F 24 1E 83
+05 3C 0E 9A 03 24 CE 48 00 00 1E 53 A2 B3 DC 05
+FD 27 82 48 CE 05 30 4D FA 41 2D 83 92 B3 DC 05
+E4 23 FC 27 82 93 DE 1D 02 24 92 53 DE 1D 3E 8F
+3D 41 B2 40 18 00 0A 18 30 4D 00 00 04 45 4D 49
+54 00 30 40 26 42 08 4E 3E 4F E0 3F 1C 42 04 45
+43 48 4F 00 B2 40 82 48 F2 41 82 43 DE 1D 30 4D
+00 00 06 4E 4F 45 43 48 4F 00 B2 40 30 4D F2 41
+92 43 DE 1D 30 4D 00 00 04 54 59 50 45 00 0E 93
+0F 24 1E 15 3D 40 74 42 28 4F 7E 48 8F 48 00 00
+2F 83 D7 3F 76 42 2D 83 91 83 02 00 F5 23 1D 17
+2F 53 3E 4F 30 4D 00 00 02 43 52 00 30 40 90 42
+0D 12 87 12 2E 40 02 0D 0A 00 5E 42 84 43 00 00
+03 4B 45 59 30 40 A8 42 18 42 CC 05 2F 83 8F 4E
+00 00 B0 12 06 41 92 B3 DC 05 FD 27 1E 42 CC 05
+B0 12 18 41 30 4D 2F 83 8F 4E 00 00 30 4D 8F 4E
+FE FF AF 4F FC FF 2F 82 30 4D 0E 93 F4 23 30 4D
+2A 4F 8F 4E 00 00 0E 4A 30 4D 8F 4E FE FF 3E 40
+80 1C 0E 8F 0E 11 2F 83 30 4D 2F 83 8F 4E 00 00
+3E 41 30 4D 3E 8F 3E E3 1E 53 30 4D BE 4F 00 00
+3E 4F 30 4D 1E 83 0E 7E 30 4D 0E 5E 0E 7E 3E E3
+30 4D 3E 8F 03 24 3E 43 01 2C 0E F3 30 4D 00 00
+02 3C 23 00 B2 40 B2 1D B2 1D 30 4D 88 42 01 23
+1B 42 DC 1D 2C 4F 2F 83 B0 12 86 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 3E 43 02 23
+53 00 0D 12 87 12 40 43 7A 43 2D 83 09 93 E2 23
+0E 93 E0 23 3D 41 30 4D 6E 43 02 23 3E 00 9F 42
+B2 1D 00 00 3E 40 B2 1D 2E 8F 30 4D 00 00 04 48
+4F 4C 44 00 4A 4E 3E 4F DA 3F 00 00 04 53 49 47
+4E 00 0E 93 3E 4F 7A 40 2D 00 D1 33 30 4D 58 42
+02 55 2E 00 08 43 2F 83 8F 4E 00 00 0E 48 0D 12
+0E 12 3E F3 06 34 BF E3 00 00 3E E3 9F 53 00 00
+0E 63 87 12 34 43 72 43 FA 42 B2 43 8E 43 5E 42
+CE 46 22 42 84 43 42 42 01 2E 0E 93 E3 37 38 43
+E2 3F AC 43 82 53 22 00 82 43 B4 1D 0D 12 87 12
+24 40 2E 40 56 46 24 40 22 00 50 44 1E 44 B2 40
 20 00 B4 1D 6E 4E 1E 53 1E B3 82 6E C6 1D 3D 41
-3E 4F 30 4D 1C 44 82 2E 22 00 87 12 9A 44 76 44
-38 44 12 47 2A 40 48 43 05 3C 00 00 04 57 4F 52
-44 00 48 4E 19 42 C0 1D 1A 42 C2 1D 09 5A 1A 52
-C4 1D 09 9A 03 24 7E 9A FC 27 1A 83 4E F8 06 20
-0E 4A 1A 82 C2 1D 82 4A C4 1D 30 4D 18 42 C6 1D
-3B 40 60 00 C8 4C 00 00 09 9A 0C 24 7C 4A 4E 9C
-09 24 18 53 4B 9C F6 2F 7C 90 7B 00 F3 2F 5C 82
-B4 1D F0 3F 1A 82 C2 1D 82 4A C4 1D 1E 42 C6 1D
-08 8E CE 48 00 00 30 4D 00 00 04 46 49 4E 44 00
-2F 83 0C 4E 65 4C 74 40 80 00 3B 40 CA 1D 3E 4B
-0E 93 1E 24 58 4C 01 00 78 F0 1E 00 0E 58 2E 53
-1E 4E FE FF 0E 93 F3 27 09 4E 78 49 48 C4 48 95
-F7 23 0A 4C FA 99 01 00 F3 23 1A 53 58 83 FA 23
-19 B3 09 63 0C 49 6A 4E 1E 43 4A 93 01 30 2E 83
-8F 4C 00 00 35 40 0E 40 34 40 00 40 30 4D 82 40
-07 3E 4E 55 4D 42 45 52 3C 4F 38 4F 29 4F 2F 82
-1B 42 DC 1D 6A 4C 7A 80 30 00 7A 90 0A 00 05 28
-7A 80 07 00 7A 90 0A 00 12 28 0A 9B 22 C3 0F 2C
-82 49 D0 04 82 48 D2 04 82 4B C8 04 19 42 E4 04
-18 42 E6 04 09 5A 08 63 1C 53 1E 83 E3 23 8F 4C
-00 00 8F 48 02 00 8F 49 04 00 30 4D 32 C0 00 02
-1B 42 DC 1D 0C 43 2D 15 3D 40 56 46 09 43 08 43
-3F 82 8F 4E 06 00 0C 4E 7E 4C 6A 4C 7A 90 2D 00
-04 28 C9 23 B1 43 02 00 DF 3F 2B 43 7A 80 25 00
-07 24 3B 52 6A 53 04 24 3B 40 10 00 5A 83 BA 23
-1C 53 1E 83 EA 3F 58 46 2F 24 2D 83 7A 90 28 00
-CB 27 32 D0 00 02 7A 90 F7 00 C6 27 7A 90 F5 00
-23 20 0A 4E 09 43 8F 49 02 00 5A 83 09 4A 09 5C
-69 49 79 80 30 00 79 90 0A 00 05 28 79 80 07 00
-79 90 0A 00 0A 28 09 9B 08 2C 8F 49 00 00 0E 4B
-2C 15 B0 12 3E 41 2A 17 E6 3F 9F 4F 04 00 02 00
-AF 4F 04 00 0E 4A 4E 93 2B 17 0E 4C 82 4B DC 1D
-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 7E 42 04 48 45 52
-45 00 2F 83 8F 4E 00 00 1E 42 C6 1D 30 4D B6 40
-01 2C 1A 42 C6 1D 8A 4E 00 00 A2 53 C6 1D 3E 4F
-30 4D 46 43 05 41 4C 4C 4F 54 82 5E C6 1D 3E 4F
-30 4D 08 44 07 45 58 45 43 55 54 45 0A 4E 3E 4F
-00 4A 10 47 87 4C 49 54 45 52 41 4C 82 93 BE 1D
-0C 24 1A 42 C6 1D A2 52 C6 1D BA 40 76 44 00 00
-8A 4E 02 00 3E 4F 32 B0 00 02 32 C0 00 02 06 24
-19 4A 02 00 8A 4E 02 00 0E 49 EB 3F 30 4D 62 44
-05 43 4F 55 4E 54 2F 83 1E 53 8F 4E 00 00 5E 4E
-FF FF 30 4D 82 4E C0 1D B2 4F C2 1D 3E 4F 82 43
-C4 1D 30 4D 85 12 20 00 87 12 94 47 A4 47 E2 44
-B2 47 3D 40 BA 47 CC 22 82 3E BC 47 0A 4E 3E 4F
-3D 40 D2 47 23 27 3D 40 AC 47 1A E2 BE 1D A1 27
-B5 23 D4 47 3E 4F 3D 40 AC 47 B8 23 DE 53 00 00
-68 4E 08 5E F8 40 3F 00 00 00 3D 40 CC 4A CB 3F
-34 47 08 45 56 41 4C 55 41 54 45 00 39 40 C0 1D
-3C 49 3B 49 3A 49 3D 15 B0 12 2A 40 A8 47 10 48
-B2 41 C4 1D B2 41 C2 1D B2 41 C0 1D 3D 41 30 4D
-85 12 BE 1D 82 43 08 18 31 40 E0 1C B2 40 00 1C
-00 1C 82 43 BE 1D 30 4D 80 47 04 42 4F 4F 54 00
-82 93 08 18 1D 24 E2 B2 60 02 1A 20 2F 83 8F 4E
-00 00 1E 42 08 18 B0 12 2A 40 24 44 24 48 80 44
-0F 4C 4F 41 44 22 20 42 4F 4F 54 2E 34 54 48 22
-3C 42 8E 48 08 41 04 51 55 49 54 00 30 40 80 48
-B0 12 2A 40 24 48 66 44 EE 43 A4 47 E0 43 A8 47
-A4 40 0C 41 80 44 0C 73 74 61 63 6B 20 65 6D 70
-74 79 21 00 E6 48 76 44 30 FF 02 47 26 41 80 44
-0A 46 52 41 4D 20 66 75 6C 6C 21 00 E6 48 3C 42
-86 48 24 47 05 41 42 4F 52 54 3F 40 80 1C D6 3F
-C4 48 86 41 42 4F 52 54 22 00 87 12 9A 44 76 44
-E6 48 12 47 2A 40 8F 93 02 00 03 20 2F 52 3E 4F
-30 4D B0 12 EC 4E B0 12 B6 42 92 C3 DC 05 38 40
-50 55 39 42 03 43 19 83 FD 23 18 83 FA 23 92 B3
-DC 05 F3 23 87 12 60 4E 76 44 DE 1D EA 40 0E 44
-80 44 04 1B 5B 37 6D 00 38 44 58 40 40 42 40 49
-66 44 80 44 05 6C 69 6E 65 3A 38 44 D0 40 24 42
-38 44 80 44 04 1B 5B 30 6D 00 38 44 CA 48 00 00
-83 5B 27 5D 87 12 66 49 76 44 76 44 12 47 12 47
-2A 40 4A 45 01 27 87 12 A4 47 E2 44 50 45 40 42
-74 49 2A 40 DC 47 32 41 81 5C 92 42 C0 1D C4 1D
-30 4D 50 49 81 5B 82 43 BE 1D 30 4D 78 49 01 5D
-B2 43 BE 1D 30 4D BE 4F 02 00 3E 4F 30 4D FC 46
-82 49 53 00 87 12 20 48 EA 40 40 42 B8 49 54 49
-76 44 96 49 12 47 2A 40 66 49 96 49 2A 40 A0 49
-09 49 4D 4D 45 44 49 41 54 45 1A 42 B6 1D FA D0
-80 00 00 00 30 4D 76 48 88 50 4F 53 54 50 4F 4E
-45 00 87 12 A4 47 E2 44 50 45 58 40 40 42 74 49
-0C 41 40 42 02 4A 76 44 76 44 12 47 12 47 76 44
-12 47 12 47 2A 40 84 49 81 3B 82 93 BE 1D B5 27
-87 12 76 44 2A 40 12 47 A0 4A 86 49 2A 40 08 4A
-07 3A 4E 4F 4E 41 4D 45 30 12 46 4A 2F 83 8F 4E
-00 00 1E 42 C6 1D 1E B3 0E 63 0A 4E 39 40 00 02
-38 40 02 02 21 3C BA 40 87 12 FC FF A2 83 C6 1D
-B2 43 BE 1D 30 4D 20 4A 01 3A 30 12 46 4A 92 B3
-C6 1D A2 63 C6 1D 87 12 A4 47 E2 44 6E 4A 3D 41
-08 4E 7A 4E 5A D3 5A 53 0A 58 19 42 DA 1D 6E 4E
-3E F0 1E 00 09 5E 3E 4F 82 48 B6 1D 82 49 B8 1D
-82 4A BA 1D 82 4F BC 1D 2A 52 82 4A C6 1D 30 41
-82 9F BC 1D 09 20 18 42 B6 1D 19 42 B8 1D A8 49
-FE FF 89 48 00 00 30 4D 87 12 80 44 0F 73 74 61
-63 6B 20 6D 69 73 6D 61 74 63 68 21 F2 48 F2 47
-05 44 45 46 45 52 B0 12 5E 4A BA 40 30 40 FC FF
-BA 40 54 4A FE FF E3 3F 3A 48 06 43 52 45 41 54
-45 00 B0 12 5E 4A BA 40 85 12 FC FF 8A 4A FE FF
-D6 3F D0 4A 05 44 4F 45 53 3E 1A 42 BA 1D BA 40
-84 12 00 00 8A 4D 02 00 3D 41 30 4D B0 45 05 3E
-42 4F 44 59 2E 52 30 4D EA 4A 04 43 4F 44 45 00
-B0 12 5E 4A 82 43 C2 5F A2 82 C6 1D 87 12 CE 4D
-A0 4D 2A 40 2A 4B 07 43 4F 44 45 4E 4E 4D B0 12
-2C 4A F0 3F 00 00 07 45 4E 44 43 4F 44 45 87 12
-E8 4D A0 4A 2A 40 D2 48 03 41 53 4D B2 40 A4 4D
-DA 1D DE 3F 56 4B 06 45 4E 44 41 53 4D 00 87 12
-5E 4B 12 4E 2A 40 00 00 05 43 4F 4C 4F 4E 1A 42
-C6 1D BA 40 87 12 00 00 A2 53 C6 1D B2 43 BE 1D
-30 40 E8 4D 00 00 05 4C 4F 32 48 49 1A 42 C6 1D
-BA 40 B0 12 00 00 BA 40 2A 40 02 00 A2 52 C6 1D
-ED 3F C0 49 85 48 49 32 4C 4F 87 12 02 47 F4 4B
-12 47 86 49 CE 4D A0 4D 2A 40 C4 4B 82 49 46 00
-2F 83 8F 4E 00 00 1E 42 C6 1D A2 52 C6 1D BE 40
-40 42 00 00 2E 53 30 4D 04 4B 84 45 4C 53 45 00
-A2 52 C6 1D 1A 42 C6 1D BA 40 3C 42 FC FF 8E 4A
-00 00 2A 83 0E 4A 30 4D 32 44 84 54 48 45 4E 00
-9E 42 C6 1D 00 00 3E 4F 30 4D 46 4B 85 42 45 47
-49 4E 30 40 02 47 1A 4C 85 55 4E 54 49 4C 39 40
-40 42 A2 52 C6 1D 1A 42 C6 1D 8A 49 FC FF 8A 4E
-FE FF 3E 4F 30 4D 68 4B 85 41 47 41 49 4E 39 40
-3C 42 EF 3F DC 44 85 57 48 49 4C 45 87 12 E0 4B
-76 40 2A 40 96 44 86 52 45 50 45 41 54 00 87 12
-5E 4C 20 4C 2A 40 FA 4B 82 44 4F 00 2F 83 8F 4E
-00 00 A2 53 C6 1D 1E 42 C6 1D BE 40 54 42 FE FF
-A2 53 00 1C 1A 42 00 1C 8A 43 00 00 30 4D 44 47
-84 4C 4F 4F 50 00 39 40 76 42 A2 52 C6 1D 1A 42
-C6 1D 8A 49 FC FF 8A 4E FE FF 1E 42 00 1C A2 83
-00 1C 2E 4E 0E 93 03 24 8E 4A 00 00 F6 3F 3E 4F
-30 4D 90 42 85 2B 4C 4F 4F 50 39 40 64 42 E5 3F
-B0 4C 04 4D 4F 56 45 00 0A 4E 38 4F 39 4F 3E 4F
-0A 93 11 24 08 99 0F 24 06 2C F8 49 00 00 18 53
-1A 83 FB 23 30 4D 08 5A 09 5A 19 83 18 83 E8 49
-00 00 1A 83 FA 23 30 4D 66 4C 0A 56 4F 43 41 42
-55 4C 41 52 59 00 87 12 F2 4A 76 44 10 00 76 44
-00 00 54 42 76 44 00 00 12 47 76 42 44 4D 02 47
-76 44 C8 1D 34 40 EA 40 12 47 F2 40 0A 4B 76 44
-CA 1D F2 40 2A 40 64 49 05 46 4F 52 54 48 84 12
-5E 4D C8 4D C4 63 B8 63 68 4D DC 4B E4 4C D2 63
-F8 4D 84 4E 78 65 08 69 2A 68 00 00 B4 52 8E 49
-1E 4B 00 00 58 4C 09 41 53 53 45 4D 42 4C 45 52
-84 12 5E 4D 8C 5E 24 5E 88 5D 4C 59 F0 57 00 00
-50 5C 00 00 B2 5F C6 5F 48 58 86 58 58 5E 00 00
-00 00 28 59 92 4D 96 4D 04 41 4C 53 4F 00 3A 40
-0C 00 39 40 CA 1D 38 40 CC 1D 9D 3F D8 49 08 50
-52 45 56 49 4F 55 53 00 3A 40 0E 00 39 40 CC 1D
-38 40 CA 1D 8A 3F C6 44 04 4F 4E 4C 59 00 82 43
-CC 1D 30 4D 88 4C 0B 44 45 46 49 4E 49 54 49 4F
-4E 53 92 42 CA 1D DA 1D 30 4D 6E 4D FE 4D 12 4E
-22 4E 3A 4E 82 4A C8 1D 2E 4E 82 4E C6 1D 3D 40
-10 00 09 4A 08 49 29 83 18 48 FE FF 0E 98 FC 2B
-89 48 00 00 1D 83 F6 23 2A 4A 0A 93 F0 23 3E 4F
-3D 41 30 4D DE 4D 09 50 57 52 5F 53 54 41 54 45
-84 12 1A 4E C4 4D 64 69 76 4C 09 52 53 54 5F 53
-54 41 54 45 92 42 0E 18 64 4E 92 42 0C 18 66 4E
-EF 3F 56 4E 08 50 57 52 5F 48 45 52 45 00 92 42
-C8 1D 64 4E 92 42 C6 1D 66 4E 30 4D 6A 4E 08 52
-53 54 5F 48 45 52 45 00 92 42 C8 1D 0E 18 92 42
-C6 1D 0C 18 EC 3F 2A 4D 04 57 49 50 45 00 39 40
-10 00 29 83 B9 43 80 FF FC 23 B2 40 E0 42 DE 42
-B2 40 4A 4F 48 4F B2 40 80 48 7E 48 B2 40 C4 4D
-0E 18 B2 40 64 69 0C 18 30 12 74 4E B2 40 E4 43
-E2 43 B2 40 6A 44 68 44 B2 40 98 42 96 42 B2 40
-52 43 50 43 B2 40 3C 1D EC 43 1B 42 32 20 0B 93
-04 24 CB 43 02 00 2B 4B FA 3F B2 40 18 00 0A 18
-37 40 1A 40 36 40 92 40 35 40 0E 40 34 40 00 40
-B2 40 0A 00 DC 1D B2 40 20 00 B4 1D 30 41 B8 4E
-04 57 41 52 4D 00 30 40 4A 4F 3D 40 98 50 92 C3
-30 01 1E 42 08 18 0E 93 9E 24 D2 B3 01 02 02 20
-3E E3 1E 53 F2 D0 03 00 0D 02 E2 B2 60 02 8A 20
-39 42 B0 12 88 60 D2 C3 23 02 2C 42 B2 40 95 00
-14 20 B2 40 00 40 18 20 B0 12 FE 5F 02 24 30 40
-24 61 B0 12 86 60 7A 93 FC 23 B2 40 87 AA 14 20
-92 43 16 20 B2 40 00 48 18 20 B0 12 FE 5F 29 42
-B0 12 88 60 92 43 14 20 82 43 16 20 78 43 3C 42
-B2 40 00 77 18 20 B0 12 FE 5F B2 40 40 69 18 20
-B0 12 44 60 03 24 58 83 F3 23 D9 3F 0C 5C A2 43
-16 20 B2 40 00 50 18 20 B0 12 44 60 D0 23 92 D3
-40 06 82 43 46 06 92 C3 40 06 B0 12 AE 60 38 40
-00 1E 92 48 C6 01 04 20 92 48 C8 01 06 20 5A 48
-C2 01 92 43 02 20 7A 80 06 00 0F 24 7A 82 0D 24
-A2 43 02 20 6A 53 09 24 5A 53 07 24 6A 52 05 24
-3A 50 0B 20 0C 4A 30 40 2A 61 B0 12 AE 60 D2 48
-0D 00 12 20 19 48 0E 00 82 49 08 20 1A 48 16 00
-0A 93 02 20 1A 48 24 00 82 4A 0A 20 09 5A 82 49
-0C 20 09 5A A2 93 02 20 04 24 82 49 0E 20 39 50
-20 00 19 82 12 20 19 82 12 20 82 49 10 20 92 42
-02 20 2C 20 3E 90 0A 00 1A 27 3E 90 16 00 17 2F
-2E 93 E6 26 EF 2E 30 4D 80 44 06 0D 1B 5B 37 6D
-23 00 38 44 34 42 80 44 19 46 61 73 74 46 6F 72
-74 68 20 C2 A9 4A 2E 4D 2E 54 68 6F 6F 72 65 6E
-73 20 38 44 76 44 30 FF 02 47 B8 40 24 42 80 44
-0A 62 79 74 65 73 20 66 72 65 65 00 3C 42 40 49
-2C 4C 04 43 4F 4C 44 00 92 B3 CA 05 FD 23 B2 40
-04 A5 20 01 98 50 B2 40 88 5A 5C 01 B2 D3 06 02
+3E 4F 30 4D F8 43 82 2E 22 00 0D 12 87 12 08 44
+24 40 5E 42 56 46 84 43 00 00 04 57 4F 52 44 00
+3C 40 C0 1D 39 4C 3A 4C 09 5A 3A 5C 28 4C 09 9A
+15 24 7E 9A FC 27 1A 83 3B 40 60 00 C8 4C 00 00
+09 9A 0C 24 7C 4A 4E 9C 09 24 18 53 4B 9C F6 2F
+7C 90 7B 00 F3 2F 5C 82 B4 1D F0 3F 1A 82 C2 1D
+82 4A C4 1D 1E 42 C6 1D 08 8E CE 48 00 00 30 4D
+00 00 04 46 49 4E 44 00 2F 83 0C 4E 65 4C 74 40
+80 00 3B 40 CA 1D 3E 4B 0E 93 1E 24 58 4C 01 00
+78 F0 1E 00 0E 58 2E 53 1E 4E FE FF 0E 93 F3 27
+09 4E 78 49 48 C4 48 95 F7 23 0A 4C FA 99 01 00
+F3 23 1A 53 58 83 FA 23 19 B3 09 63 0C 49 6A 4E
+1E 43 4A 93 01 30 2E 83 8F 4C 00 00 35 40 FA 40
+34 40 EC 40 30 4D 00 00 07 3E 4E 55 4D 42 45 52
+3C 4F 38 4F 29 4F 2F 82 1B 42 DC 1D 6A 4C 7A 80
+30 00 7A 90 0A 00 05 28 7A 80 07 00 7A 90 0A 00
+12 28 0A 9B 22 C3 0F 2C 82 49 D0 04 82 48 D2 04
+82 4B C8 04 19 42 E4 04 18 42 E6 04 09 5A 08 63
+1C 53 1E 83 E3 23 8F 4C 00 00 8F 48 02 00 8F 49
+04 00 30 4D 32 C0 00 02 1B 42 DC 1D 0C 43 2D 15
+3D 40 AE 45 09 43 08 43 3F 82 8F 4E 06 00 0C 4E
+7E 4C 6A 4C 7A 90 2D 00 04 28 C9 23 B1 43 02 00
+0B 3C 2B 43 7A 80 25 00 07 24 3B 52 6A 53 04 24
+3B 40 10 00 5A 83 BA 23 1C 53 1E 83 EA 3F B0 45
+2F 24 2D 83 7A 90 28 00 CB 27 32 D0 00 02 7A 90
+F7 00 C6 27 7A 90 F5 00 23 20 0A 4E 09 43 8F 49
+02 00 5A 83 09 4A 09 5C 69 49 79 80 30 00 79 90
+0A 00 05 28 79 80 07 00 79 90 0A 00 0A 28 09 9B
+08 2C 8F 49 00 00 0E 4B 2C 15 B0 12 7E 40 2A 17
+E6 3F 9F 4F 04 00 02 00 AF 4F 04 00 0E 4A 4E 93
+2B 17 0E 4C 82 4B DC 1D 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 00 00 01 2C 1A 42 C6 1D 8A 4E 00 00 A2 53
+C6 1D 3E 4F 30 4D 86 41 05 41 4C 4C 4F 54 82 5E
+C6 1D 3E 4F 30 4D 0A 4E 3E 4F 00 4A 54 46 87 4C
+49 54 45 52 41 4C 82 93 BE 1D 0C 24 1A 42 C6 1D
+A2 52 C6 1D BA 40 24 40 00 00 8A 4E 02 00 3E 4F
+32 B0 00 02 32 C0 00 02 06 24 19 4A 02 00 8A 4E
+02 00 0E 49 EB 3F 30 4D 8A 43 05 43 4F 55 4E 54
+2F 83 1E 53 8F 4E 00 00 5E 4E FF FF 30 4D 85 12
+20 00 0D 12 87 12 C4 40 CE 46 50 44 DE 46 3D 40
+E6 46 E2 22 A4 26 E8 46 0A 4E 3E 4F 3D 40 FE 46
+39 27 3D 40 D8 46 1A E2 BE 1D BD 23 AC 27 00 47
+3E 4F 3D 40 D8 46 BF 23 DE 53 00 00 68 4E 08 5E
+F8 40 3F 00 00 00 3D 40 C0 49 D2 3F 2E 42 08 45
+56 41 4C 55 41 54 45 00 39 40 C0 1D 3C 49 3B 49
+3A 49 3D 15 87 12 D2 46 3A 47 B2 41 C4 1D B2 41
+C2 1D B2 41 C0 1D 3D 41 30 4D 85 12 BE 1D 82 43
+08 18 31 40 E0 1C B2 40 00 1C 00 1C 82 43 BE 1D
+30 4D BA 46 04 42 4F 4F 54 00 82 93 08 18 1C 24
+E2 B2 60 02 19 20 2F 83 8F 4E 00 00 1E 42 08 18
+87 12 4A 42 4E 47 2E 40 0F 4C 4F 41 44 22 20 42
+4F 4F 54 2E 34 54 48 22 48 40 B4 47 00 00 04 51
+55 49 54 00 30 40 A8 47 87 12 4E 47 8C 42 D4 40
+CE 46 22 42 D2 46 EA 42 1A 43 2E 40 0C 73 74 61
+63 6B 20 65 6D 70 74 79 21 00 0E 48 24 40 40 FF
+CE 4A 22 43 2E 40 0A 46 52 41 4D 20 66 75 6C 6C
+21 00 0E 48 48 40 AC 47 68 46 05 41 42 4F 52 54
+3F 40 80 1C D7 3F EA 47 86 41 42 4F 52 54 22 00
+0D 12 87 12 08 44 24 40 0E 48 56 46 84 43 8F 93
+02 00 03 20 2F 52 3E 4F 30 4D B0 12 B6 4C B0 12
+06 41 92 C3 DC 05 18 42 06 18 39 40 20 00 19 83
+FE 23 18 83 FA 23 92 B3 DC 05 F3 23 0D 12 87 12
+2A 4C 24 40 DE 1D 02 41 34 42 2E 40 04 1B 5B 37
+6D 00 5E 42 DA 42 4C 40 68 48 8C 42 2E 40 05 6C
+69 6E 65 3A 5E 42 C4 43 5E 42 2E 40 04 1B 5B 30
+6D 00 5E 42 F0 47 00 00 83 5B 27 5D 0D 12 87 12
+90 48 24 40 24 40 56 46 56 46 84 43 A2 44 01 27
+0D 12 87 12 CE 46 50 44 A8 44 4C 40 A0 48 84 43
+08 47 30 43 81 5C 92 42 C0 1D C4 1D 30 4D 78 48
+81 5B 82 43 BE 1D 30 4D A4 48 01 5D B2 43 BE 1D
+30 4D 9E 47 88 50 4F 53 54 50 4F 4E 45 00 0D 12
+87 12 CE 46 50 44 A8 44 DA 42 4C 40 A0 48 1A 43
+4C 40 F0 48 24 40 24 40 56 46 56 46 24 40 56 46
+56 46 84 43 9E 43 09 49 4D 4D 45 44 49 41 54 45
+1A 42 B6 1D FA D0 80 00 00 00 30 4D B0 48 01 3A
+30 12 58 49 92 B3 C6 1D A2 63 C6 1D 0D 12 87 12
+CE 46 50 44 26 49 3D 41 08 4E 7A 4E 5A D3 5A 53
+0A 58 19 42 DA 1D 6E 4E 3E F0 1E 00 09 5E 3E 4F
+82 48 B6 1D 82 49 B8 1D 82 4A BA 1D 82 4F BC 1D
+2A 52 82 4A C6 1D 30 41 BA 40 0D 12 FC FF BA 40
+87 12 FE FF B2 43 BE 1D 30 4D 0E 49 07 3A 4E 4F
+4E 41 4D 45 30 12 58 49 2F 83 8F 4E 00 00 1E 42
+C6 1D 1E B3 0E 63 0A 4E 39 40 10 02 38 40 12 02
+D7 3F 82 9F BC 1D 09 20 18 42 B6 1D 19 42 B8 1D
+A8 49 FE FF 89 48 00 00 30 4D 0D 12 87 12 2E 40
+0F 73 74 61 63 6B 20 6D 69 73 6D 61 74 63 68 21
+1A 48 6C 49 81 3B 82 93 BE 1D 6D 27 0D 12 87 12
+24 40 84 43 56 46 92 49 B2 48 84 43 64 47 06 43
+52 45 41 54 45 00 B0 12 14 49 BA 40 85 12 FC FF
+8A 4A FE FF D5 3F 1E 47 05 44 4F 45 53 3E 1A 42
+BA 1D BA 40 84 12 00 00 8A 4D 02 00 3D 41 30 4D
+DE 49 04 43 4F 44 45 00 B0 12 14 49 A2 82 C6 1D
+82 43 62 5D 0D 12 87 12 82 4B 54 4B 84 43 12 4A
+07 43 4F 44 45 4E 4E 4D 30 12 1C 4A 9D 3F 00 00
+07 45 4E 44 43 4F 44 45 0D 12 87 12 92 49 A8 4B
+84 43 F8 47 03 41 53 4D B2 40 58 4B DA 1D DC 3F
+40 4A 06 45 4E 44 41 53 4D 00 0D 12 87 12 48 4A
+DC 4B 84 43 00 00 05 43 4F 4C 4F 4E 1A 42 C6 1D
+BA 40 0D 12 00 00 BA 40 87 12 02 00 A2 52 C6 1D
+B2 43 BE 1D 30 40 A8 4B 00 00 05 4C 4F 32 48 49
+A2 83 C6 1D 1A 42 C6 1D EE 3F F6 48 85 48 49 32
+4C 4F 0D 12 87 12 CE 4A C2 4A 56 46 B2 48 20 4A
+84 43 2E 53 30 4D 30 4A 85 42 45 47 49 4E 2F 83
+8F 4E 00 00 1E 42 C6 1D 30 4D 4A 44 0A 56 4F 43
+41 42 55 4C 41 52 59 00 0D 12 87 12 E6 49 24 40
+10 00 24 40 00 00 56 40 24 40 00 00 56 46 78 40
+F8 4A CE 4A 24 40 C8 1D C6 42 02 41 56 46 0C 43
+FE 49 24 40 CA 1D 0C 43 84 43 8E 48 05 46 4F 52
+54 48 84 12 12 4B 7C 4B 66 61 5A 61 1C 4B AC 4A
+A0 42 74 61 C2 4B 4E 4C 20 63 B2 66 D4 65 00 00
+62 50 BA 48 08 45 00 00 54 4A 09 41 53 53 45 4D
+42 4C 45 52 84 12 12 4B 2E 5C C6 5B 2A 5B E6 56
+84 55 00 00 F2 59 00 00 52 5D 66 5D DC 55 1A 56
+FA 5B 00 00 00 00 C0 56 46 4B 4A 4B 04 41 4C 53
+4F 00 3A 40 0C 00 39 40 D6 1D 08 49 28 53 19 83
+18 83 E8 49 00 00 1A 83 FA 23 30 4D C4 48 08 50
+52 45 56 49 4F 55 53 00 3A 40 0E 00 38 40 CA 1D
+09 48 29 53 F8 49 00 00 18 53 1A 83 FB 23 30 4D
+36 44 04 4F 4E 4C 59 00 82 43 CC 1D 30 4D F8 49
+0B 44 45 46 49 4E 49 54 49 4F 4E 53 92 42 CA 1D
+DA 1D 30 4D 22 4B C8 4B DC 4B EC 4B 3A 4E 82 4A
+C8 1D 2E 4E 82 4E C6 1D 3D 40 10 00 09 4A 08 49
+29 83 18 48 FE FF 0E 98 FC 2B 89 48 00 00 1D 83
+F6 23 2A 4A 0A 93 F0 23 3E 4F 3D 41 30 4D 9E 4B
+09 50 57 52 5F 53 54 41 54 45 84 12 E4 4B 78 4B
+10 67 04 44 09 52 53 54 5F 53 54 41 54 45 92 42
+0E 18 2E 4C 92 42 0C 18 30 4C EF 3F 20 4C 08 50
+57 52 5F 48 45 52 45 00 92 42 C8 1D 2E 4C 92 42
+C6 1D 30 4C 30 4D 34 4C 08 52 53 54 5F 48 45 52
+45 00 92 42 C8 1D 0E 18 92 42 C6 1D 0C 18 EC 3F
+DC 4A 04 57 49 50 45 00 39 40 10 00 29 83 B9 43
+80 FF FC 23 B2 40 04 40 02 40 B2 40 14 4D 12 4D
+B2 40 A8 47 A6 47 B2 40 78 4B 0E 18 B2 40 10 67
+0C 18 30 12 3E 4C B2 40 26 42 24 42 B2 40 90 42
+8E 42 B2 40 A8 42 A6 42 B2 40 92 41 90 41 B2 40
+3C 1D E2 40 1B 42 32 20 0B 93 04 24 CB 43 02 00
+2B 4B FA 3F B2 40 18 00 0A 18 37 40 84 43 36 40
+FA 42 35 40 FA 40 34 40 EC 40 B2 40 0A 00 DC 1D
+B2 40 20 00 B4 1D 30 41 82 4C 04 57 41 52 4D 00
+30 40 14 4D 3D 40 66 4E 92 C3 30 01 1E 42 08 18
+0E 93 A0 24 D2 B3 01 02 02 20 3E E3 1E 53 F2 D0
+03 00 0D 02 92 D3 DA 05 E2 B2 60 02 8A 20 39 42
+B0 12 2A 5E D2 C3 23 02 2C 42 B2 40 95 00 14 20
+B2 40 00 40 18 20 B0 12 A0 5D 02 24 30 40 C6 5E
+B0 12 28 5E 7A 93 FC 23 B2 40 87 AA 14 20 92 43
+16 20 B2 40 00 48 18 20 B0 12 A0 5D 29 42 B0 12
+2A 5E 92 43 14 20 82 43 16 20 78 43 3C 42 B2 40
+00 77 18 20 B0 12 A0 5D B2 40 40 69 18 20 B0 12
+E6 5D 03 24 58 83 F3 23 D9 3F 0C 5C A2 43 16 20
+B2 40 00 50 18 20 B0 12 E6 5D D0 23 92 D3 40 06
+82 43 46 06 92 C3 40 06 B0 12 50 5E 38 40 00 1E
+92 48 C6 01 04 20 92 48 C8 01 06 20 5A 48 C2 01
+92 43 02 20 7A 80 06 00 0F 24 7A 82 0D 24 A2 43
+02 20 6A 53 09 24 5A 53 07 24 6A 52 05 24 3A 50
+0B 20 0C 4A 30 40 CC 5E B0 12 50 5E D2 48 0D 00
+12 20 19 48 0E 00 82 49 08 20 1A 48 16 00 0A 93
+02 20 1A 48 24 00 82 4A 0A 20 09 5A 82 49 0C 20
+09 5A A2 93 02 20 04 24 82 49 0E 20 39 50 20 00
+19 82 12 20 19 82 12 20 82 49 10 20 92 42 02 20
+2C 20 3E 90 0A 00 18 27 3E 90 16 00 15 2F 2E 93
+E4 26 ED 2E 30 4D 2E 40 07 0D 0A 1B 5B 37 6D 23
+5E 42 FA 43 2E 40 19 46 61 73 74 46 6F 72 74 68
+20 C2 A9 4A 2E 4D 2E 54 68 6F 6F 72 65 6E 73 20
+5E 42 24 40 40 FF CE 4A 04 43 C4 43 2E 40 0A 62
+79 74 65 73 20 66 72 65 65 00 48 40 68 48 C8 4A
+04 43 4F 4C 44 00 92 B3 CA 05 FD 23 B2 40 04 A5
+20 01 31 40 E0 1C B2 40 88 5A 5C 01 B2 D3 06 02
 B2 40 FC FF 02 02 B2 43 26 02 B2 D3 22 02 E2 D2
 25 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
@@ -281,390 +246,387 @@ B2 40 FC FF 02 02 B2 43 26 02 B2 D3 22 02 E2 D2
 61 01 92 D2 9E 01 08 18 38 40 59 14 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 39 40 4C 00 29 83 B9 40 F6 50
-B4 FF FB 23 B2 40 84 43 F0 FF B2 40 81 00 C0 05
+89 43 00 1C FC 23 B0 12 0E 40 B2 40 81 00 C0 05
 92 42 02 18 C6 05 92 42 04 18 C8 05 92 C3 C0 05
-92 D3 DA 05 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 3F 40
-80 1C 31 40 E0 1C 30 12 46 4F A7 3E E2 50 07 43
-4F 4D 50 41 52 45 0C 4E 38 4F 3B 4F 39 4F 0E 4B
-0E 5C 0C 24 1B 83 07 30 1C 83 07 30 19 53 F9 98
-FF FF F5 27 02 2C 3E 43 30 4D 1E 43 30 4D 58 4A
-86 5B 54 48 45 4E 5D 00 30 4D 00 52 86 5B 45 4C
-53 45 5D 00 87 12 76 44 00 00 C6 40 A4 47 E2 44
-86 47 34 40 40 42 76 52 44 40 80 44 06 5B 54 48
-45 4E 5D 00 D6 51 4A 42 46 52 5A 44 D0 40 58 40
-4A 42 1C 52 2A 40 44 40 80 44 06 5B 45 4C 53 45
-5D 00 D6 51 4A 42 64 52 5A 44 D0 40 58 40 4A 42
-1A 52 2A 40 80 44 04 5B 49 46 5D 00 D6 51 4A 42
-1C 52 3C 42 1A 52 5A 44 80 44 05 0D 0A 6B 6F 20
-38 44 EE 43 94 47 3C 42 1C 52 0C 52 84 5B 49 46
-5D 00 0E 93 3E 4F BE 27 30 4D 8C 52 89 5B 44 45
-46 49 4E 45 44 5D 87 12 A4 47 E2 44 50 45 6A 40
-2A 40 9C 52 8B 5B 55 4E 44 45 46 49 4E 45 44 5D
-87 12 A4 47 E2 44 50 45 6A 40 00 41 2A 40 D0 52
-3D 41 B2 4E 0E 18 A2 4E 0C 18 3E 4F 30 40 74 4E
-F2 4C 06 4D 41 52 4B 45 52 00 B0 12 5E 4A BA 40
-84 12 FC FF BA 40 CE 52 FE FF 9A 42 C8 1D 00 00
-28 83 8A 48 02 00 A2 52 C6 1D 30 40 A6 4A 1C 15
-B0 12 2A 40 E2 44 50 45 4A 42 24 53 0C 46 40 42
-74 49 3E 53 26 53 39 4E 39 80 86 12 08 24 19 53
+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 3F 40 80 1C 30 12
+10 4D B0 3E C4 49 86 5B 54 48 45 4E 5D 00 30 4D
+0C 4E 38 4F 3B 4F 39 4F 0E 4B 0E 5C 10 24 1B 83
+06 30 1C 83 04 30 19 53 F9 98 FF FF F5 27 2D 4D
+3E 4F 30 4D 2F 53 9F 83 00 00 F9 23 2F 53 2D 53
+F7 3F 86 4F 86 5B 45 4C 53 45 5D 00 0D 12 87 12
+24 40 00 00 08 43 CE 46 50 44 C0 46 C6 42 4C 40
+1E 50 CE 42 2E 40 06 5B 54 48 45 4E 5D 00 90 4F
+F8 4F B4 4F D6 4F 84 43 CE 42 2E 40 06 5B 45 4C
+53 45 5D 00 90 4F 0E 50 B4 4F D4 4F 84 43 2E 40
+04 5B 49 46 5D 00 90 4F D6 4F 48 40 D4 4F 80 42
+2E 40 05 0D 0A 6B 6F 20 5E 42 D4 40 C4 40 48 40
+D6 4F C4 4F 84 5B 49 46 5D 00 0E 93 3E 4F C6 27
+30 4D 2F 53 30 4D 34 50 89 5B 44 45 46 49 4E 45
+44 5D 0D 12 87 12 CE 46 50 44 A8 44 42 50 84 43
+48 50 8B 5B 55 4E 44 45 46 49 4E 45 44 5D 0D 12
+87 12 52 50 76 50 3D 41 30 40 14 43 38 40 C0 1D
+0A 4E 39 48 2E 48 09 5E 1E 52 C4 1D 09 9E 03 24
+7A 9E FC 27 1E 83 0A 4E 2A 88 82 4A C4 1D 30 4D
+1C 15 87 12 50 44 A8 44 42 40 B4 50 64 45 4C 40
+A0 48 CE 50 B6 50 39 4E 39 80 86 12 08 24 19 53
 02 20 2E 4E 04 3C 2E 53 19 53 01 24 2E 82 1B 17
 30 41 32 B0 00 02 01 24 3E 4F 30 41 3E 40 28 00
-B0 12 0E 53 B0 12 42 53 19 42 C6 1D A2 53 C6 1D
+B0 12 A0 50 B0 12 D2 50 19 42 C6 1D A2 53 C6 1D
 89 4E 00 00 3E 40 29 00 1C 15 12 12 C4 1D 92 53
-C4 1D B0 12 2A 40 E2 44 0C 46 40 42 8A 53 80 53
-21 53 3E 90 10 00 81 2D DA 2B 8C 53 B2 41 C4 1D
-D6 3F 87 12 A4 47 D6 44 9A 53 0C 43 1B 42 C6 1D
+C4 1D 87 12 50 44 64 45 4C 40 18 51 0E 51 21 53
+3E 90 10 00 84 2D DB 2B 1A 51 B2 41 C4 1D D7 3F
+0D 12 87 12 CE 46 7C 50 2A 51 0C 43 1B 42 C6 1D
 A2 53 C6 1D 6A 4E 3E 4F 7A 90 23 00 29 20 92 53
-C4 1D B0 12 0E 53 B0 12 42 53 3C 40 00 03 0E 93
+C4 1D B0 12 A0 50 B0 12 D2 50 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
 C6 1D A2 53 C6 1D 89 4E 00 00 3E 4F 3D 41 30 4D
 7A 90 26 00 09 20 3C 40 10 02 92 53 C4 1D B0 12
-0E 53 B0 12 42 53 EB 3F 7A 90 40 00 16 20 3C 40
-20 00 92 53 C4 1D B0 12 68 53 0C 20 3C 50 10 00
-3E 40 2B 00 B0 12 68 53 92 92 C0 1D C4 1D 02 24
-92 53 C4 1D 8E 10 0C 5E D8 3F B0 12 68 53 FA 23
-3C 50 10 00 B0 12 4C 53 EF 3F 0C 43 1B 42 C6 1D
-A2 53 C6 1D 87 12 A4 47 D6 44 6C 54 FE 90 26 00
-00 00 3E 40 20 00 03 20 3C 50 82 00 C6 3F B0 12
-68 53 E1 23 3C 50 80 00 B0 12 4C 53 DC 3F D6 42
-04 52 45 54 49 00 87 12 76 44 00 13 12 47 2A 40
-76 44 2C 00 92 53 64 54 AA 54 09 4B 2E 4E 0E DC
-A2 3F A6 4B 03 4D 4F 56 84 12 A0 54 00 40 B4 54
-05 4D 4F 56 2E 42 84 12 A0 54 40 40 00 00 03 41
-44 44 84 12 A0 54 00 50 CE 54 05 41 44 44 2E 42
-84 12 A0 54 40 50 DA 54 04 41 44 44 43 00 84 12
-A0 54 00 60 E8 54 06 41 44 44 43 2E 42 00 84 12
-A0 54 40 60 90 54 04 53 55 42 43 00 84 12 A0 54
-00 70 06 55 06 53 55 42 43 2E 42 00 84 12 A0 54
-40 70 14 55 03 53 55 42 84 12 A0 54 00 80 24 55
-05 53 55 42 2E 42 84 12 A0 54 40 80 88 4B 03 43
-4D 50 84 12 A0 54 00 90 3E 55 05 43 4D 50 2E 42
-84 12 A0 54 40 90 76 4B 04 44 41 44 44 00 84 12
-A0 54 00 A0 58 55 06 44 41 44 44 2E 42 00 84 12
-A0 54 40 A0 4A 55 03 42 49 54 84 12 A0 54 00 B0
-76 55 05 42 49 54 2E 42 84 12 A0 54 40 B0 82 55
-03 42 49 43 84 12 A0 54 00 C0 90 55 05 42 49 43
-2E 42 84 12 A0 54 40 C0 9C 55 03 42 49 53 84 12
-A0 54 00 D0 AA 55 05 42 49 53 2E 42 84 12 A0 54
-40 D0 00 00 03 58 4F 52 84 12 A0 54 00 E0 C4 55
-05 58 4F 52 2E 42 84 12 A0 54 40 E0 F6 54 03 41
-4E 44 84 12 A0 54 00 F0 DE 55 05 41 4E 44 2E 42
-84 12 A0 54 40 F0 A4 47 92 53 FC 55 0A 4C 3C F0
-70 00 8A 10 3A F0 0F 00 0C DA 4F 3F 30 55 03 52
-52 43 84 12 F6 55 00 10 0E 56 05 52 52 43 2E 42
-84 12 F6 55 40 10 1A 56 04 53 57 50 42 00 84 12
-F6 55 80 10 28 56 03 52 52 41 84 12 F6 55 00 11
-36 56 05 52 52 41 2E 42 84 12 F6 55 40 11 42 56
-03 53 58 54 84 12 F6 55 80 11 00 00 04 50 55 53
-48 00 84 12 F6 55 00 12 5C 56 06 50 55 53 48 2E
-42 00 84 12 F6 55 40 12 B6 55 04 43 41 4C 4C 00
-84 12 F6 55 80 12 1A 53 0E 4A 87 12 34 42 80 44
-0D 6F 75 74 20 6F 66 20 62 6F 75 6E 64 73 F2 48
-A4 47 D6 44 A6 56 92 53 C4 1D 3E 40 2C 00 B0 12
-2A 40 E2 44 0C 46 40 42 74 49 5A 54 BE 56 0A 4E
-3E 4F 1A 83 E0 33 29 4E 59 0E 0A 28 08 4C 59 0A
-01 28 0C 8A 08 8A 38 90 10 00 D5 2F 5A 0E 94 3F
-2A 92 D1 2F 8A 10 5A 06 8F 3F 50 56 06 52 52 43
-4D 2E 41 00 84 12 A0 56 40 00 EC 56 04 52 52 43
-4D 00 84 12 A0 56 50 00 FC 56 06 52 52 41 4D 2E
-41 00 84 12 A0 56 40 01 0A 57 04 52 52 41 4D 00
-84 12 A0 56 50 01 1A 57 06 52 4C 41 4D 2E 41 00
-84 12 A0 56 40 02 28 57 04 52 4C 41 4D 00 84 12
-A0 56 50 02 38 57 06 52 52 55 4D 2E 41 00 84 12
-A0 56 40 03 46 57 04 52 52 55 4D 00 84 12 A0 56
-50 03 6A 56 07 50 55 53 48 4D 2E 41 84 12 A0 56
-00 14 64 57 05 50 55 53 48 4D 84 12 A0 56 00 15
-74 57 06 50 4F 50 4D 2E 41 00 84 12 A0 56 00 16
-82 57 04 50 4F 50 4D 00 84 12 A0 56 00 17 56 57
-03 53 3E 3D 85 12 00 38 A0 57 02 53 3C 00 85 12
-00 34 92 57 03 30 3E 3D 85 12 00 30 B4 57 02 30
-3C 00 85 12 00 30 00 00 02 55 3C 00 85 12 00 2C
-C8 57 03 55 3E 3D 85 12 00 28 BE 57 03 30 3C 3E
-85 12 00 24 DC 57 02 30 3D 00 85 12 00 20 00 00
-02 49 46 00 1A 42 C6 1D 8A 4E 00 00 A2 53 C6 1D
-0E 4A 30 4D D2 57 04 54 48 45 4E 00 1A 42 C6 1D
-08 4E 3E 4F 09 48 29 53 0A 89 0A 11 3A 90 00 02
-33 2F 88 DA 00 00 30 4D 66 55 04 45 4C 53 45 00
-1A 42 C6 1D BA 40 00 3C 00 00 A2 53 C6 1D 2F 83
-8F 4A 00 00 E3 3F 06 58 05 55 4E 54 49 4C 3A 4F
-08 4E 3E 4F 19 42 C6 1D 2A 83 0A 89 0A 11 3A 90
-00 FE 12 3B 3A F0 FF 03 08 DA 89 48 00 00 A2 53
-C6 1D 30 4D EA 55 05 41 47 41 49 4E 0A 4E 38 40
-00 3C E7 3F 00 00 05 57 48 49 4C 45 87 12 F4 57
-76 40 2A 40 AA 57 06 52 45 50 45 41 54 00 87 12
-7C 58 0C 58 2A 40 A8 58 3D 41 08 4E 3E 4F 2A 48
-B2 92 C4 1D CD 2F 98 42 C6 1D 00 00 30 4D 7A 56
-03 42 57 31 84 12 A6 58 00 00 C0 58 03 42 57 32
-84 12 A6 58 00 00 CC 58 03 42 57 33 84 12 A6 58
-00 00 E4 58 3D 41 1A 42 C6 1D 28 4E B2 92 C4 1D
-90 2B BA 4F 00 00 A2 53 C6 1D 8E 4A 00 00 3E 4F
-30 4D 00 00 03 46 57 31 84 12 E2 58 00 00 04 59
-03 46 57 32 84 12 E2 58 00 00 10 59 03 46 57 33
-84 12 E2 58 00 00 00 00 05 3F 47 4F 54 4F 3E 90
-00 30 07 24 3E E0 00 04 3E B0 00 10 02 24 3E E0
-00 08 87 12 66 49 3C 47 2A 40 1C 59 04 47 4F 54
-4F 00 2F 83 8F 4E 00 00 3E 40 00 3C F2 3F 87 12
-A4 47 D6 44 66 59 69 4E 3E 4F 3C 4F 2C 4C 1B 42
-C6 1D A2 53 C6 1D 79 90 52 00 0A 20 B0 12 68 53
-5E 0E 5E 0E 0E DC 8B 4E 00 00 0E 4B 3D 41 30 4D
-79 90 23 00 0D 20 3C C0 40 00 92 53 C4 1D A2 53
-C6 1D B0 12 0E 53 BB 4F 02 00 3E F0 0F 00 E8 3F
-79 90 26 00 03 20 3C E0 E0 00 EF 3F 3C C0 F0 00
-79 90 40 00 12 20 92 53 C4 1D B0 12 68 53 D8 23
-3C D0 10 00 3E 40 2B 00 B0 12 68 53 92 92 C0 1D
-C4 1D CE 27 92 53 C4 1D CB 3F 3C D0 30 00 A2 53
-C6 1D 3E 40 28 00 B0 12 0E 53 BB 4F 02 00 3E 40
-29 00 EA 3F 87 12 A4 47 D6 44 0C 5A 3B 4F 2C 4B
-69 4E 7E 40 20 00 79 90 52 00 03 20 B0 12 68 53
-B1 3F 3C C0 F0 00 A2 53 C6 1D 79 90 26 00 09 20
-3C D0 60 00 92 53 C4 1D B0 12 0E 53 BB 4F 02 00
-A1 3F 3C D0 70 00 3E 40 28 00 B0 12 0E 53 BB 4F
-02 00 3E 40 29 00 E2 3F 76 44 2C 00 5E 59 04 5A
-66 40 2A 40 C0 54 04 4D 4F 56 41 00 84 12 58 5A
-C0 00 D8 58 04 43 4D 50 41 00 84 12 58 5A D0 00
-76 58 04 41 44 44 41 00 84 12 58 5A E0 00 96 58
-04 53 55 42 41 00 84 12 58 5A F0 00 74 5A 05 43
-41 4C 4C 41 87 12 A4 47 D6 44 AC 5A 1B 42 C6 1D
+A0 50 B0 12 D2 50 EB 3F 7A 90 40 00 16 20 3C 40
+20 00 92 53 C4 1D B0 12 F8 50 0C 20 3C 50 10 00
+3E 40 2B 00 B0 12 F8 50 92 92 C0 1D C4 1D 02 24
+92 53 C4 1D 8E 10 0C 5E D8 3F B0 12 F8 50 FA 23
+3C 50 10 00 B0 12 DC 50 EF 3F 0C 43 1B 42 C6 1D
+A2 53 C6 1D 0D 12 87 12 CE 46 7C 50 FE 51 FE 90
+26 00 00 00 3E 40 20 00 03 20 3C 50 82 00 C5 3F
+B0 12 F8 50 E0 23 3C 50 80 00 B0 12 DC 50 DB 3F
+00 00 04 52 45 54 49 00 0D 12 87 12 24 40 00 13
+56 46 84 43 24 40 2C 00 20 51 F4 51 3E 52 09 4B
+2E 4E 0E DC A0 3F 9A 4A 03 4D 4F 56 84 12 34 52
+00 40 48 52 05 4D 4F 56 2E 42 84 12 34 52 40 40
+00 00 03 41 44 44 84 12 34 52 00 50 62 52 05 41
+44 44 2E 42 84 12 34 52 40 50 6E 52 04 41 44 44
+43 00 84 12 34 52 00 60 7C 52 06 41 44 44 43 2E
+42 00 84 12 34 52 40 60 22 52 04 53 55 42 43 00
+84 12 34 52 00 70 9A 52 06 53 55 42 43 2E 42 00
+84 12 34 52 40 70 A8 52 03 53 55 42 84 12 34 52
+00 80 B8 52 05 53 55 42 2E 42 84 12 34 52 40 80
+76 4A 03 43 4D 50 84 12 34 52 00 90 D2 52 05 43
+4D 50 2E 42 84 12 34 52 40 90 62 4A 04 44 41 44
+44 00 84 12 34 52 00 A0 EC 52 06 44 41 44 44 2E
+42 00 84 12 34 52 40 A0 DE 52 03 42 49 54 84 12
+34 52 00 B0 0A 53 05 42 49 54 2E 42 84 12 34 52
+40 B0 16 53 03 42 49 43 84 12 34 52 00 C0 24 53
+05 42 49 43 2E 42 84 12 34 52 40 C0 30 53 03 42
+49 53 84 12 34 52 00 D0 3E 53 05 42 49 53 2E 42
+84 12 34 52 40 D0 00 00 03 58 4F 52 84 12 34 52
+00 E0 58 53 05 58 4F 52 2E 42 84 12 34 52 40 E0
+8A 52 03 41 4E 44 84 12 34 52 00 F0 72 53 05 41
+4E 44 2E 42 84 12 34 52 40 F0 CE 46 20 51 90 53
+0A 4C 3C F0 70 00 8A 10 3A F0 0F 00 0C DA 4F 3F
+C4 52 03 52 52 43 84 12 8A 53 00 10 A2 53 05 52
+52 43 2E 42 84 12 8A 53 40 10 AE 53 04 53 57 50
+42 00 84 12 8A 53 80 10 BC 53 03 52 52 41 84 12
+8A 53 00 11 CA 53 05 52 52 41 2E 42 84 12 8A 53
+40 11 D6 53 03 53 58 54 84 12 8A 53 80 11 00 00
+04 50 55 53 48 00 84 12 8A 53 00 12 F0 53 06 50
+55 53 48 2E 42 00 84 12 8A 53 40 12 4A 53 04 43
+41 4C 4C 00 84 12 8A 53 80 12 1A 53 0E 4A 0D 12
+87 12 FA 43 2E 40 0D 6F 75 74 20 6F 66 20 62 6F
+75 6E 64 73 1A 48 CE 46 7C 50 3C 54 92 53 C4 1D
+3E 40 2C 00 87 12 50 44 64 45 4C 40 A0 48 EA 51
+52 54 0A 4E 3E 4F 1A 83 E0 33 29 4E 59 0E 0A 28
+08 4C 59 0A 01 28 0C 8A 08 8A 38 90 10 00 D5 2F
+5A 0E 94 3F 2A 92 D1 2F 8A 10 5A 06 8F 3F E4 53
+06 52 52 43 4D 2E 41 00 84 12 36 54 40 00 80 54
+04 52 52 43 4D 00 84 12 36 54 50 00 90 54 06 52
+52 41 4D 2E 41 00 84 12 36 54 40 01 9E 54 04 52
+52 41 4D 00 84 12 36 54 50 01 AE 54 06 52 4C 41
+4D 2E 41 00 84 12 36 54 40 02 BC 54 04 52 4C 41
+4D 00 84 12 36 54 50 02 CC 54 06 52 52 55 4D 2E
+41 00 84 12 36 54 40 03 DA 54 04 52 52 55 4D 00
+84 12 36 54 50 03 FE 53 07 50 55 53 48 4D 2E 41
+84 12 36 54 00 14 F8 54 05 50 55 53 48 4D 84 12
+36 54 00 15 08 55 06 50 4F 50 4D 2E 41 00 84 12
+36 54 00 16 16 55 04 50 4F 50 4D 00 84 12 36 54
+00 17 EA 54 03 53 3E 3D 85 12 00 38 34 55 02 53
+3C 00 85 12 00 34 26 55 03 30 3E 3D 85 12 00 30
+48 55 02 30 3C 00 85 12 00 30 00 00 02 55 3C 00
+85 12 00 2C 5C 55 03 55 3E 3D 85 12 00 28 52 55
+03 30 3C 3E 85 12 00 24 70 55 02 30 3D 00 85 12
+00 20 00 00 02 49 46 00 1A 42 C6 1D 8A 4E 00 00
+A2 53 C6 1D 0E 4A 30 4D 66 55 04 54 48 45 4E 00
+1A 42 C6 1D 08 4E 3E 4F 09 48 29 53 0A 89 0A 11
+3A 90 00 02 33 2F 88 DA 00 00 30 4D FA 52 04 45
+4C 53 45 00 1A 42 C6 1D BA 40 00 3C 00 00 A2 53
+C6 1D 2F 83 8F 4A 00 00 E3 3F 9A 55 05 55 4E 54
+49 4C 3A 4F 08 4E 3E 4F 19 42 C6 1D 2A 83 0A 89
+0A 11 3A 90 00 FE 12 3B 3A F0 FF 03 08 DA 89 48
+00 00 A2 53 C6 1D 30 4D 7E 53 05 41 47 41 49 4E
+0A 4E 38 40 00 3C E7 3F 00 00 05 57 48 49 4C 45
+0D 12 87 12 88 55 E0 42 84 43 3E 55 06 52 45 50
+45 41 54 00 0D 12 87 12 10 56 A0 55 84 43 40 56
+3D 41 08 4E 3E 4F 2A 48 B2 92 C4 1D CB 2F 98 42
+C6 1D 00 00 30 4D 0E 54 03 42 57 31 84 12 3E 56
+00 00 58 56 03 42 57 32 84 12 3E 56 00 00 64 56
+03 42 57 33 84 12 3E 56 00 00 7C 56 3D 41 1A 42
+C6 1D 28 4E B2 92 C4 1D 8E 2B BA 4F 00 00 A2 53
+C6 1D 8E 4A 00 00 3E 4F 30 4D 00 00 03 46 57 31
+84 12 7A 56 00 00 9C 56 03 46 57 32 84 12 7A 56
+00 00 A8 56 03 46 57 33 84 12 7A 56 00 00 00 00
+05 3F 47 4F 54 4F 3E 90 00 30 07 24 3E E0 00 04
+3E B0 00 10 02 24 3E E0 00 08 0D 12 87 12 90 48
+76 46 84 43 B4 56 04 47 4F 54 4F 00 2F 83 8F 4E
+00 00 3E 40 00 3C F1 3F 0D 12 87 12 CE 46 7C 50
+02 57 69 4E 3E 4F 3C 4F 2C 4C 1B 42 C6 1D A2 53
+C6 1D 79 90 52 00 0A 20 B0 12 F8 50 5E 0E 5E 0E
+0E DC 8B 4E 00 00 0E 4B 3D 41 30 4D 79 90 23 00
+0D 20 3C C0 40 00 92 53 C4 1D A2 53 C6 1D B0 12
+A0 50 BB 4F 02 00 3E F0 0F 00 E8 3F 79 90 26 00
+03 20 3C E0 E0 00 EF 3F 3C C0 F0 00 79 90 40 00
+12 20 92 53 C4 1D B0 12 F8 50 D8 23 3C D0 10 00
+3E 40 2B 00 B0 12 F8 50 92 92 C0 1D C4 1D CE 27
+92 53 C4 1D CB 3F 3C D0 30 00 A2 53 C6 1D 3E 40
+28 00 B0 12 A0 50 BB 4F 02 00 3E 40 29 00 EA 3F
+0D 12 87 12 CE 46 7C 50 AA 57 3B 4F 2C 4B 69 4E
+7E 40 20 00 79 90 52 00 03 20 B0 12 F8 50 B0 3F
+3C C0 F0 00 A2 53 C6 1D 79 90 26 00 09 20 3C D0
+60 00 92 53 C4 1D B0 12 A0 50 BB 4F 02 00 A0 3F
+3C D0 70 00 3E 40 28 00 B0 12 A0 50 BB 4F 02 00
+3E 40 29 00 E2 3F 24 40 2C 00 F8 56 A0 57 82 42
+84 43 54 52 04 4D 4F 56 41 00 84 12 F6 57 C0 00
+70 56 04 43 4D 50 41 00 84 12 F6 57 D0 00 0A 56
+04 41 44 44 41 00 84 12 F6 57 E0 00 2C 56 04 53
+55 42 41 00 84 12 F6 57 F0 00 12 58 05 43 41 4C
+4C 41 0D 12 87 12 CE 46 7C 50 4C 58 1B 42 C6 1D
 A2 53 C6 1D 6E 4E 3C 40 34 01 7E 90 52 00 0B 20
-7E 40 20 00 B0 12 68 53 5C 0E 0C DE 8B 4C 00 00
+7E 40 20 00 B0 12 F8 50 5C 0E 0C DE 8B 4C 00 00
 3E 4F 3D 41 30 4D 2C 53 7E 90 40 00 0B 20 92 53
-C4 1D 7E 40 20 00 B0 12 68 53 EE 23 1C 53 3E 40
+C4 1D 7E 40 20 00 B0 12 F8 50 EE 23 1C 53 3E 40
 2B 00 E8 3F A2 53 C6 1D 7E 90 23 00 09 20 3C 40
-3B 01 92 53 C4 1D B0 12 0E 53 BB 4F 02 00 DC 3F
+3B 01 92 53 C4 1D B0 12 A0 50 BB 4F 02 00 DC 3F
 7E 90 26 00 02 20 2C 53 F4 3F 7E 40 28 00 1C 83
-B0 12 0E 53 BB 4F 02 00 3E 40 29 00 CB 3F 87 12
-A4 47 D6 44 36 5B 69 4E 3E 4F 3C 40 00 18 79 90
-52 00 05 20 B0 12 68 53 0E 4C 3D 41 30 4D 82 43
-C2 5F 79 90 23 00 0B 20 92 53 C4 1D B0 12 0E 53
-2F 53 3E F0 0F 00 5E 0A 5E 0E 0C DE ED 3F 79 90
-26 00 F2 27 79 90 40 00 12 20 92 53 C4 1D B0 12
-68 53 E2 23 3E 40 2B 00 92 53 C4 1D B0 12 68 53
-92 92 C0 1D C4 1D D8 27 92 53 C4 1D D5 3F 3E 40
-28 00 B0 12 0E 53 8F 4E 00 00 3E 40 29 00 B0 12
-68 53 3E 4F 3E F0 0F 00 0C DE EA 3F 87 12 A4 47
-D6 44 C4 5B 3C 4F 69 4E 3E 40 20 00 79 90 52 00
-BB 27 82 43 C2 5F 79 90 26 00 08 20 92 53 C4 1D
-B0 12 0E 53 2F 53 3E F0 0F 00 BF 3F 3E 40 28 00
-B0 12 0E 53 F7 3F 1B 42 C6 1D A2 53 C6 1D 0C 4E
-3E 4F 1C D2 C2 5F 82 43 C2 5F 3C DE 8B 4C 00 00
-B2 41 C4 1D 30 4D 76 44 C4 1D EA 40 86 40 76 44
-2C 00 2E 5B BC 5B F6 5B 3C 42 A0 54 66 5A 04 4D
-4F 56 58 00 84 12 16 5C 40 00 00 40 2E 5C 06 4D
-4F 56 58 2E 41 00 84 12 16 5C 00 00 40 40 3E 5C
-06 4D 4F 56 58 2E 42 00 84 12 16 5C 40 00 40 40
-82 5A 04 41 44 44 58 00 84 12 16 5C 40 00 00 50
-62 5C 06 41 44 44 58 2E 41 00 84 12 16 5C 00 00
-40 50 72 5C 06 41 44 44 58 2E 42 00 84 12 16 5C
-40 00 40 50 84 5C 05 41 44 44 43 58 84 12 16 5C
-40 00 00 60 96 5C 07 41 44 44 43 58 2E 41 84 12
-16 5C 00 00 40 60 A6 5C 07 41 44 44 43 58 2E 42
-84 12 16 5C 40 00 40 60 90 5A 05 53 55 42 43 58
-84 12 16 5C 40 00 00 70 CA 5C 07 53 55 42 43 58
-2E 41 84 12 16 5C 00 00 40 70 DA 5C 07 53 55 42
-43 58 2E 42 84 12 16 5C 40 00 40 70 EC 5C 04 53
-55 42 58 00 84 12 16 5C 40 00 00 80 FE 5C 06 53
-55 42 58 2E 41 00 84 12 16 5C 00 00 40 80 0E 5D
-06 53 55 42 58 2E 42 00 84 12 16 5C 40 00 40 80
-9E 5A 04 43 4D 50 58 00 84 12 16 5C 40 00 00 90
-32 5D 06 43 4D 50 58 2E 41 00 84 12 16 5C 00 00
-40 90 42 5D 06 43 4D 50 58 2E 42 00 84 12 16 5C
-40 00 40 90 2A 58 05 44 41 44 44 58 84 12 16 5C
-40 00 00 A0 66 5D 07 44 41 44 44 58 2E 41 84 12
-16 5C 00 00 40 A0 76 5D 07 44 41 44 44 58 2E 42
-84 12 16 5C 40 00 40 A0 54 5D 04 42 49 54 58 00
-84 12 16 5C 40 00 00 B0 9A 5D 06 42 49 54 58 2E
-41 00 84 12 16 5C 00 00 40 B0 AA 5D 06 42 49 54
-58 2E 42 00 84 12 16 5C 40 00 40 B0 BC 5D 04 42
-49 43 58 00 84 12 16 5C 40 00 00 C0 CE 5D 06 42
-49 43 58 2E 41 00 84 12 16 5C 00 00 40 C0 DE 5D
-06 42 49 43 58 2E 42 00 84 12 16 5C 40 00 40 C0
-F0 5D 04 42 49 53 58 00 84 12 16 5C 40 00 00 D0
-02 5E 06 42 49 53 58 2E 41 00 84 12 16 5C 00 00
-40 D0 12 5E 06 42 49 53 58 2E 42 00 84 12 16 5C
-40 00 40 D0 D0 55 04 58 4F 52 58 00 84 12 16 5C
-40 00 00 E0 36 5E 06 58 4F 52 58 2E 41 00 84 12
-16 5C 00 00 40 E0 46 5E 06 58 4F 52 58 2E 42 00
-84 12 16 5C 40 00 40 E0 B8 5C 04 41 4E 44 58 00
-84 12 16 5C 40 00 00 F0 6A 5E 06 41 4E 44 58 2E
-41 00 84 12 16 5C 00 00 40 F0 7A 5E 06 41 4E 44
-58 2E 42 00 84 12 16 5C 40 00 40 F0 76 44 C4 1D
-EA 40 86 40 A4 47 2E 5B F6 5B 3C 42 F6 55 20 5D
-04 52 52 43 58 00 84 12 9C 5E 40 00 00 10 B0 5E
-06 52 52 43 58 2E 41 00 84 12 9C 5E 00 00 40 10
-C0 5E 06 52 52 43 58 2E 42 00 84 12 9C 5E 40 00
-40 10 D2 5E 04 52 52 55 58 00 84 12 9C 5E 40 01
-00 10 E4 5E 06 52 52 55 58 2E 41 00 84 12 9C 5E
-00 01 40 10 F4 5E 06 52 52 55 58 2E 42 00 84 12
-9C 5E 40 01 40 10 06 5F 05 53 57 50 42 58 84 12
-9C 5E 40 00 80 10 18 5F 07 53 57 50 42 58 2E 41
-84 12 9C 5E 00 00 80 10 28 5F 04 52 52 41 58 00
-84 12 9C 5E 40 00 00 11 3A 5F 06 52 52 41 58 2E
-41 00 84 12 9C 5E 00 00 40 11 4A 5F 06 52 52 41
-58 2E 42 00 84 12 9C 5E 40 00 40 11 5C 5F 04 53
-58 54 58 00 84 12 9C 5E 40 00 80 11 6E 5F 06 53
-58 54 58 2E 41 00 84 12 9C 5E 00 00 80 11 E6 57
-05 50 55 53 48 58 84 12 9C 5E 40 00 00 12 90 5F
-07 50 55 53 48 58 2E 41 84 12 9C 5E 00 00 40 12
-A0 5F 07 50 55 53 48 58 2E 42 84 12 9C 5E 40 00
-40 12 00 00 7E 5F 03 52 50 54 87 12 A4 47 D6 44
-D2 5F 29 4E 7E 40 20 00 79 90 52 00 06 20 B0 12
-68 53 03 24 3E D0 80 00 05 3C B0 12 0E 53 1E 83
-3E F0 0F 00 82 4E C2 5F 3E 4F 3D 41 30 4D 1A 43
-25 3C D2 C3 23 02 E2 B2 60 02 02 24 30 40 E8 50
-1A 52 04 20 19 62 06 20 92 43 14 20 A2 93 02 20
-07 24 0A 5A 49 69 82 4A 16 20 C2 49 18 20 0A 3C
-C2 4A 15 20 8A 10 C2 4A 16 20 C2 49 17 20 89 10
-C2 49 18 20 B0 12 86 60 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 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 1A 52 08 20 09 43
-1C D3 F2 40 51 00 19 20 B0 12 02 60 33 20 B0 12
-86 60 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 09 43 2C D3 F0 40
-58 00 27 BF B0 12 02 60 15 20 3A 40 FE FF 29 43
-B0 12 8A 60 D2 49 00 1E 4E 06 03 43 19 53 39 90
-00 02 F8 23 39 40 03 00 B0 12 88 60 7A C0 E1 00
-6A 92 DE 27 8C 10 1C 52 4C 06 D2 D3 23 02 87 12
-80 44 0B 3C 20 53 44 20 45 72 72 6F 72 21 40 61
-2F 83 8F 4E 00 00 B2 40 10 00 DC 1D 0E 4C B0 12
-2A 40 24 42 F2 48 92 4B 0E 00 22 20 92 4B 10 00
-24 20 5A 42 23 20 58 42 22 20 92 93 02 20 08 24
-59 42 24 20 89 10 0A 59 88 10 08 58 0A 6A 88 10
-08 58 30 41 82 43 1C 20 92 42 0E 20 1A 20 C2 93
-24 20 03 20 92 93 22 20 14 24 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 84 61 5A 4B 03 00 82 5A 1A 20 82 63 1C 20
-30 41 09 93 07 24 F8 90 20 00 00 1E 03 20 18 53
-19 83 F9 23 30 41 1B 42 32 20 82 43 1E 20 B2 90
-00 02 20 20 A8 20 BB 80 00 02 12 00 8B 73 14 00
-DB 53 03 00 DB 92 12 20 03 00 11 28 CB 43 03 00
-B0 12 56 61 B0 12 AA 60 8B 43 10 00 9B 48 00 1E
-0E 00 92 93 02 20 03 24 9B 48 02 1E 10 00 B2 40
-00 02 20 20 8B 93 14 00 0B 20 92 9B 12 00 1E 20
-82 2C BB 90 00 02 12 00 03 2C 92 4B 12 00 20 20
-B0 12 C4 61 1A 42 1A 20 19 42 1C 20 21 3F 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 07 24 09 4B 3B 50
-1C 00 3B 90 18 21 EF 23 0C 5C 30 41 0C 43 82 4B
-32 20 8B 49 00 00 09 93 0A 24 99 52 C4 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 5F 27 C9 37 8B 43 16 00 7A 93 02 24
-07 38 95 3F B2 40 1C 21 EC 43 B2 40 EA 42 50 43
-9B 42 C0 1D 18 00 9B 82 C4 1D 18 00 9B 42 C2 1D
-1A 00 9B 52 C4 1D 1A 00 82 3F CB 43 02 00 2B 4B
-82 4B 32 20 0B 93 06 24 92 4B 16 00 1E 20 B0 12
-3E 62 22 C3 30 41 1B 42 32 20 0B 93 FB 27 EB 93
-02 00 04 20 B0 12 AC 67 B0 12 74 67 CB 93 02 00
-E4 37 1E 4B 18 00 9F 4B 1A 00 00 00 31 50 06 00
-3D 41 B0 12 3A 63 02 24 30 40 24 44 B2 40 3C 1D
-EC 43 B2 40 52 43 50 43 30 40 0E 44 9E 4E 85 52
-45 41 44 22 5A 43 19 3C 40 4F 86 57 52 49 54 45
-22 00 6A 43 12 3C 06 4E 84 44 45 4C 22 00 6A 42
-0C 3C CE 51 05 43 4C 4F 53 45 B0 12 56 63 30 4D
-E2 52 85 4C 4F 41 44 22 7A 43 2F 83 8F 4E 00 00
-0E 4A 82 93 BE 1D 0A 24 87 12 76 44 76 44 12 47
-12 47 9A 44 76 44 0A 64 12 47 2A 40 87 12 76 44
-22 00 E2 44 86 47 08 64 3D 41 35 4F 0E 55 82 4E
-36 20 1C 43 92 42 2C 20 22 20 92 42 2E 20 24 20
-0E 95 8D 24 F5 90 3A 00 01 00 01 20 25 53 F5 90
-5C 00 00 00 08 20 15 53 92 42 02 20 22 20 82 43
-24 20 0E 95 70 24 82 45 34 20 B0 12 84 61 34 40
-20 00 A2 93 02 20 04 24 92 92 22 20 02 20 02 24
-14 42 12 20 B0 12 64 62 2C 43 0A 43 08 4A 58 0E
-08 58 82 48 30 20 C8 93 00 1E 61 24 39 42 F8 95
-00 1E 04 20 18 53 19 83 FA 23 15 53 F5 90 2E 00
-FF FF 19 24 39 50 03 00 B0 12 E2 61 06 20 F5 90
-5C 00 FF FF 29 24 0E 95 27 28 15 42 34 20 1A 53
-3A 90 10 00 DB 23 92 53 1A 20 82 63 1C 20 14 83
-D1 23 2C 42 3C 3C F5 90 2E 00 FE FF EE 27 B0 12
-E2 61 EB 23 39 40 03 00 F8 95 00 1E 04 20 18 53
-19 83 FA 23 09 3C 0E 95 E0 2F F5 90 5C 00 FF FF
-DC 23 B0 12 E2 61 D9 23 18 42 30 20 92 48 1A 1E
-22 20 92 48 14 1E 24 20 F8 B0 10 00 0B 1E 14 24
-82 93 24 20 06 20 82 93 22 20 03 20 92 42 02 20
-22 20 0E 95 8E 2F 92 42 22 20 2C 20 92 42 24 20
-2E 20 8F 43 00 00 03 3C 2A 4F B0 12 6E 62 34 40
-00 40 35 40 0E 40 3A 4F 3E 4F 0A 93 04 24 7A 93
-0D 20 0C 93 01 20 30 4D 87 12 80 44 0B 3C 20 4F
-70 65 6E 45 72 72 6F 72 3C 42 3E 61 1A 93 B6 20
-0C 93 F2 23 30 4D 9E 63 04 52 45 41 44 00 2F 83
-8F 4E 00 00 1E 42 32 20 B0 12 F6 61 1E 82 32 20
-30 4D 2C 43 12 12 2A 20 18 42 02 20 08 58 2A 41
-82 9A 0A 20 A1 24 B0 12 AA 60 09 43 28 93 03 24
-89 93 02 1E 03 20 89 93 00 1E 07 24 09 58 39 90
-00 02 F4 23 91 53 00 00 EA 3F 0C 43 6A 41 B9 43
-00 1E 28 93 0F 24 B9 40 FF 0F 02 1E 09 11 8A 10
-09 5A 5A 41 01 00 0A 11 09 10 82 4A 28 20 82 49
-26 20 07 3C 09 11 C2 49 26 20 C2 4A 27 20 82 43
-28 20 3A 41 82 4A 2A 20 30 41 0A 12 1A 52 08 20
-B0 12 EA 60 3A 41 1A 52 0C 20 30 40 EA 60 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 38 39 80
-03 00 B0 12 CA 66 39 40 03 00 7A 4B C8 4A 00 1E
-82 9B 36 20 12 28 0D 12 3D 40 0F 00 3C 40 7A 66
-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 2A 93 D8 20
-2C 93 0D 24 0C 93 A7 24 87 12 80 44 0C 3C 20 57
-72 69 74 65 45 72 72 6F 72 00 3C 42 3E 61 B0 12
-92 65 92 42 26 20 22 20 92 42 28 20 24 20 B0 12
-0A 66 B0 12 64 62 18 42 30 20 F8 40 20 00 0B 1E
-B0 12 1E 66 88 43 0C 1E 88 4A 0E 1E 88 49 10 1E
-88 49 12 1E 98 42 24 20 14 1E 98 42 22 20 1A 1E
-88 43 1C 1E 88 43 1E 1E 1C 43 1B 42 34 20 82 9B
-36 20 CA 27 FB 90 2E 00 00 00 C6 27 39 40 0B 00
-B0 12 9A 66 B0 12 B6 67 2A 43 B0 12 6E 62 0C 93
-BB 23 30 4D 1A 4B 04 00 19 4B 06 00 B0 12 B0 60
-B0 12 1E 66 18 4B 08 00 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 EC 60 9B 52 1E 20
-12 00 8B 63 14 00 1A 42 1A 20 19 42 1C 20 30 40
-EC 60 B2 40 00 02 1E 20 1B 42 32 20 B0 12 AC 67
-82 43 1E 20 DB 53 03 00 DB 92 12 20 03 00 22 20
-CB 43 03 00 B0 12 56 61 08 12 0A 12 B0 12 92 65
-2A 91 05 24 B0 12 0A 66 2A 41 B0 12 AA 60 3A 41
-38 41 98 42 26 20 00 1E 92 93 02 20 03 24 98 42
-28 20 02 1E B0 12 0A 66 9B 42 26 20 0E 00 9B 42
-28 20 10 00 30 40 C4 61 AA 63 05 57 52 49 54 45
-B0 12 C2 67 30 4D 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 1A 4B 12 00 BB C0 FF 01
-12 00 3A F0 FF 01 82 4A 1E 20 B0 12 60 62 30 4D
-0C 93 38 20 38 90 E0 01 03 2C C8 93 20 1E 02 24
-7C 40 E5 00 C8 4C 00 1E B0 12 B6 67 B0 12 62 61
-82 4A 2A 20 0B 4A B0 12 AA 60 1A 48 00 1E 88 43
-00 1E 92 93 02 20 09 24 19 48 02 1E 88 43 02 1E
-39 F0 FF 0F 39 90 FF 0F 02 20 3A 93 0E 24 82 4A
-22 20 82 49 24 20 B0 12 62 61 0B 9A E6 27 0A 12
-0A 4B B0 12 0A 66 3A 41 DD 3F 0A 4B B0 12 0A 66
-B0 12 56 63 30 4D 38 4C 08 54 45 52 4D 32 53 44
-22 00 87 12 BE 63 76 44 02 00 02 47 86 47 0A 64
-22 69 3D 41 92 C3 DC 05 08 43 B0 12 B6 42 92 B3
-DC 05 FD 27 59 42 CC 05 69 92 0D 24 C8 49 00 1E
-18 53 38 90 FF 01 F3 2B 03 24 B0 12 C2 67 EC 3F
-B0 12 C8 42 EC 3F B0 12 C8 42 82 48 1E 20 B0 12
-56 63 30 4D
+B0 12 A0 50 BB 4F 02 00 3E 40 29 00 CB 3F 0D 12
+87 12 CE 46 7C 50 D8 58 69 4E 3E 4F 3C 40 00 18
+79 90 52 00 05 20 B0 12 F8 50 0E 4C 3D 41 30 4D
+82 43 62 5D 79 90 23 00 0B 20 92 53 C4 1D B0 12
+A0 50 2F 53 3E F0 0F 00 5E 0A 5E 0E 0C DE ED 3F
+79 90 26 00 F2 27 79 90 40 00 12 20 92 53 C4 1D
+B0 12 F8 50 E2 23 3E 40 2B 00 92 53 C4 1D B0 12
+F8 50 92 92 C0 1D C4 1D D8 27 92 53 C4 1D D5 3F
+3E 40 28 00 B0 12 A0 50 8F 4E 00 00 3E 40 29 00
+B0 12 F8 50 3E 4F 3E F0 0F 00 0C DE EA 3F 0D 12
+87 12 CE 46 7C 50 68 59 3C 4F 69 4E 3E 40 20 00
+79 90 52 00 BA 27 82 43 62 5D 79 90 26 00 08 20
+92 53 C4 1D B0 12 A0 50 2F 53 3E F0 0F 00 BE 3F
+3E 40 28 00 B0 12 A0 50 F7 3F B2 4F C4 1D 1B 42
+C6 1D A2 53 C6 1D 0C 4E 3E 4F 1C D2 62 5D 82 43
+62 5D 3C DE 8B 4C 00 00 30 4D 24 40 C4 1D 02 41
+24 40 2C 00 CE 58 5E 59 9A 59 48 40 34 52 04 58
+04 4D 4F 56 58 00 84 12 BA 59 40 00 00 40 D0 59
+06 4D 4F 56 58 2E 41 00 84 12 BA 59 00 00 40 40
+E0 59 06 4D 4F 56 58 2E 42 00 84 12 BA 59 40 00
+40 40 20 58 04 41 44 44 58 00 84 12 BA 59 40 00
+00 50 04 5A 06 41 44 44 58 2E 41 00 84 12 BA 59
+00 00 40 50 14 5A 06 41 44 44 58 2E 42 00 84 12
+BA 59 40 00 40 50 26 5A 05 41 44 44 43 58 84 12
+BA 59 40 00 00 60 38 5A 07 41 44 44 43 58 2E 41
+84 12 BA 59 00 00 40 60 48 5A 07 41 44 44 43 58
+2E 42 84 12 BA 59 40 00 40 60 2E 58 05 53 55 42
+43 58 84 12 BA 59 40 00 00 70 6C 5A 07 53 55 42
+43 58 2E 41 84 12 BA 59 00 00 40 70 7C 5A 07 53
+55 42 43 58 2E 42 84 12 BA 59 40 00 40 70 8E 5A
+04 53 55 42 58 00 84 12 BA 59 40 00 00 80 A0 5A
+06 53 55 42 58 2E 41 00 84 12 BA 59 00 00 40 80
+B0 5A 06 53 55 42 58 2E 42 00 84 12 BA 59 40 00
+40 80 3C 58 04 43 4D 50 58 00 84 12 BA 59 40 00
+00 90 D4 5A 06 43 4D 50 58 2E 41 00 84 12 BA 59
+00 00 40 90 E4 5A 06 43 4D 50 58 2E 42 00 84 12
+BA 59 40 00 40 90 BE 55 05 44 41 44 44 58 84 12
+BA 59 40 00 00 A0 08 5B 07 44 41 44 44 58 2E 41
+84 12 BA 59 00 00 40 A0 18 5B 07 44 41 44 44 58
+2E 42 84 12 BA 59 40 00 40 A0 F6 5A 04 42 49 54
+58 00 84 12 BA 59 40 00 00 B0 3C 5B 06 42 49 54
+58 2E 41 00 84 12 BA 59 00 00 40 B0 4C 5B 06 42
+49 54 58 2E 42 00 84 12 BA 59 40 00 40 B0 5E 5B
+04 42 49 43 58 00 84 12 BA 59 40 00 00 C0 70 5B
+06 42 49 43 58 2E 41 00 84 12 BA 59 00 00 40 C0
+80 5B 06 42 49 43 58 2E 42 00 84 12 BA 59 40 00
+40 C0 92 5B 04 42 49 53 58 00 84 12 BA 59 40 00
+00 D0 A4 5B 06 42 49 53 58 2E 41 00 84 12 BA 59
+00 00 40 D0 B4 5B 06 42 49 53 58 2E 42 00 84 12
+BA 59 40 00 40 D0 64 53 04 58 4F 52 58 00 84 12
+BA 59 40 00 00 E0 D8 5B 06 58 4F 52 58 2E 41 00
+84 12 BA 59 00 00 40 E0 E8 5B 06 58 4F 52 58 2E
+42 00 84 12 BA 59 40 00 40 E0 5A 5A 04 41 4E 44
+58 00 84 12 BA 59 40 00 00 F0 0C 5C 06 41 4E 44
+58 2E 41 00 84 12 BA 59 00 00 40 F0 1C 5C 06 41
+4E 44 58 2E 42 00 84 12 BA 59 40 00 40 F0 24 40
+C4 1D 02 41 CE 46 CE 58 9A 59 48 40 8A 53 C2 5A
+04 52 52 43 58 00 84 12 3E 5C 40 00 00 10 50 5C
+06 52 52 43 58 2E 41 00 84 12 3E 5C 00 00 40 10
+60 5C 06 52 52 43 58 2E 42 00 84 12 3E 5C 40 00
+40 10 72 5C 04 52 52 55 58 00 84 12 3E 5C 40 01
+00 10 84 5C 06 52 52 55 58 2E 41 00 84 12 3E 5C
+00 01 40 10 94 5C 06 52 52 55 58 2E 42 00 84 12
+3E 5C 40 01 40 10 A6 5C 05 53 57 50 42 58 84 12
+3E 5C 40 00 80 10 B8 5C 07 53 57 50 42 58 2E 41
+84 12 3E 5C 00 00 80 10 C8 5C 04 52 52 41 58 00
+84 12 3E 5C 40 00 00 11 DA 5C 06 52 52 41 58 2E
+41 00 84 12 3E 5C 00 00 40 11 EA 5C 06 52 52 41
+58 2E 42 00 84 12 3E 5C 40 00 40 11 FC 5C 04 53
+58 54 58 00 84 12 3E 5C 40 00 80 11 0E 5D 06 53
+58 54 58 2E 41 00 84 12 3E 5C 00 00 80 11 7A 55
+05 50 55 53 48 58 84 12 3E 5C 40 00 00 12 30 5D
+07 50 55 53 48 58 2E 41 84 12 3E 5C 00 00 40 12
+40 5D 07 50 55 53 48 58 2E 42 84 12 3E 5C 40 00
+40 12 00 00 1E 5D 03 52 50 54 0D 12 87 12 CE 46
+7C 50 74 5D 29 4E 7E 40 20 00 79 90 52 00 06 20
+B0 12 F8 50 03 24 3E D0 80 00 05 3C B0 12 A0 50
+1E 83 3E F0 0F 00 82 4E 62 5D 3E 4F 3D 41 30 4D
+1A 43 25 3C D2 C3 23 02 E2 B2 60 02 02 24 30 40
+B6 4E 1A 52 04 20 19 62 06 20 92 43 14 20 A2 93
+02 20 07 24 0A 5A 49 69 82 4A 16 20 C2 49 18 20
+0A 3C C2 4A 15 20 8A 10 C2 4A 16 20 C2 49 17 20
+89 10 C2 49 18 20 B0 12 28 5E 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 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 1A 52 08 20
+09 43 1C D3 F2 40 51 00 19 20 B0 12 A4 5D 33 20
+B0 12 28 5E 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 09 43 2C D3
+F0 40 58 00 85 C1 B0 12 A4 5D 15 20 3A 40 FE FF
+29 43 B0 12 2C 5E D2 49 00 1E 4E 06 03 43 19 53
+39 90 00 02 F8 23 39 40 03 00 B0 12 2A 5E 7A C0
+E1 00 6A 92 DE 27 8C 10 1C 52 4C 06 D2 D3 23 02
+0D 12 87 12 2E 40 0B 3C 20 53 44 20 45 72 72 6F
+72 21 E4 5E 2F 83 8F 4E 00 00 B2 40 10 00 DC 1D
+0E 4C 87 12 C4 43 1A 48 92 4B 0E 00 22 20 92 4B
+10 00 24 20 5A 42 23 20 58 42 22 20 92 93 02 20
+08 24 59 42 24 20 89 10 0A 59 88 10 08 58 0A 6A
+88 10 08 58 30 41 82 43 1C 20 92 42 0E 20 1A 20
+C2 93 24 20 03 20 92 93 22 20 14 24 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 26 5F 5A 4B 03 00 82 5A 1A 20 82 63
+1C 20 30 41 09 93 07 24 F8 90 20 00 00 1E 03 20
+18 53 19 83 F9 23 30 41 1B 42 32 20 82 43 1E 20
+B2 90 00 02 20 20 A8 20 BB 80 00 02 12 00 8B 73
+14 00 DB 53 03 00 DB 92 12 20 03 00 11 28 CB 43
+03 00 B0 12 F8 5E B0 12 4C 5E 8B 43 10 00 9B 48
+00 1E 0E 00 92 93 02 20 03 24 9B 48 02 1E 10 00
+B2 40 00 02 20 20 8B 93 14 00 0B 20 92 9B 12 00
+1E 20 82 2C BB 90 00 02 12 00 03 2C 92 4B 12 00
+20 20 B0 12 66 5F 1A 42 1A 20 19 42 1C 20 21 3F
+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 07 24 09 4B
+3B 50 1C 00 3B 90 18 21 EF 23 0C 5C 30 41 0C 43
+82 4B 32 20 8B 49 00 00 09 93 0A 24 99 52 C4 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 5F 27 C9 37 8B 43 16 00 7A 93
+02 24 07 38 95 3F B2 40 1C 21 E2 40 B2 40 2A 41
+90 41 9B 42 C0 1D 18 00 9B 82 C4 1D 18 00 9B 42
+C2 1D 1A 00 9B 52 C4 1D 1A 00 82 3F CB 43 02 00
+2B 4B 82 4B 32 20 0B 93 06 24 92 4B 16 00 1E 20
+B0 12 E0 5F 22 C3 30 41 1B 42 32 20 0B 93 FB 27
+EB 93 02 00 04 20 B0 12 56 65 B0 12 1E 65 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 60 02 24 30 40 4A 42 B2 40
+3C 1D E2 40 B2 40 92 41 90 41 30 40 34 42 68 4C
+85 52 45 41 44 22 5A 43 19 3C 0A 4D 86 57 52 49
+54 45 22 00 6A 43 12 3C D0 4B 84 44 45 4C 22 00
+6A 42 0C 3C B0 4E 05 43 4C 4F 53 45 B0 12 F8 60
+30 4D 7E 46 85 4C 4F 41 44 22 7A 43 2F 83 8F 4E
+00 00 0E 4A 82 93 BE 1D 0B 24 0D 12 87 12 24 40
+24 40 56 46 56 46 08 44 24 40 B0 61 56 46 84 43
+0D 12 87 12 24 40 22 00 50 44 C0 46 AE 61 3D 41
+35 4F 0E 55 82 4E 36 20 1C 43 92 42 2C 20 22 20
+92 42 2E 20 24 20 0E 95 8D 24 F5 90 3A 00 01 00
+01 20 25 53 F5 90 5C 00 00 00 08 20 15 53 92 42
+02 20 22 20 82 43 24 20 0E 95 70 24 82 45 34 20
+B0 12 26 5F 34 40 20 00 A2 93 02 20 04 24 92 92
+22 20 02 20 02 24 14 42 12 20 B0 12 06 60 2C 43
+0A 43 08 4A 58 0E 08 58 82 48 30 20 C8 93 00 1E
+61 24 39 42 F8 95 00 1E 04 20 18 53 19 83 FA 23
+15 53 F5 90 2E 00 FF FF 19 24 39 50 03 00 B0 12
+84 5F 06 20 F5 90 5C 00 FF FF 29 24 0E 95 27 28
+15 42 34 20 1A 53 3A 90 10 00 DB 23 92 53 1A 20
+82 63 1C 20 14 83 D1 23 2C 42 3C 3C F5 90 2E 00
+FE FF EE 27 B0 12 84 5F EB 23 39 40 03 00 F8 95
+00 1E 04 20 18 53 19 83 FA 23 09 3C 0E 95 E0 2F
+F5 90 5C 00 FF FF DC 23 B0 12 84 5F D9 23 18 42
+30 20 92 48 1A 1E 22 20 92 48 14 1E 24 20 F8 B0
+10 00 0B 1E 14 24 82 93 24 20 06 20 82 93 22 20
+03 20 92 42 02 20 22 20 0E 95 8E 2F 92 42 22 20
+2C 20 92 42 24 20 2E 20 8F 43 00 00 03 3C 2A 4F
+B0 12 10 60 34 40 EC 40 35 40 FA 40 3A 4F 3E 4F
+0A 93 04 24 7A 93 0E 20 0C 93 01 20 30 4D 0D 12
+87 12 2E 40 0B 3C 20 4F 70 65 6E 45 72 72 6F 72
+48 40 E2 5E 1A 93 B6 20 0C 93 F1 23 30 4D 40 61
+04 52 45 41 44 00 2F 83 8F 4E 00 00 1E 42 32 20
+B0 12 98 5F 1E 82 32 20 30 4D 2C 43 12 12 2A 20
+18 42 02 20 08 58 2A 41 82 9A 0A 20 A1 24 B0 12
+4C 5E 09 43 28 93 03 24 89 93 02 1E 03 20 89 93
+00 1E 07 24 09 58 39 90 00 02 F4 23 91 53 00 00
+EA 3F 0C 43 6A 41 B9 43 00 1E 28 93 0F 24 B9 40
+FF 0F 02 1E 09 11 8A 10 09 5A 5A 41 01 00 0A 11
+09 10 82 4A 28 20 82 49 26 20 07 3C 09 11 C2 49
+26 20 C2 4A 27 20 82 43 28 20 3A 41 82 4A 2A 20
+30 41 0A 12 1A 52 08 20 B0 12 8C 5E 3A 41 1A 52
+0C 20 30 40 8C 5E 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 38 39 80 03 00 B0 12 72 64 39 40
+03 00 7A 4B C8 4A 00 1E 82 9B 36 20 12 28 0D 12
+3D 40 0F 00 3C 40 22 64 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 2A 93 D9 20 2C 93 0E 24 0C 93 A8 24
+0D 12 87 12 2E 40 0C 3C 20 57 72 69 74 65 45 72
+72 6F 72 00 48 40 E2 5E B0 12 3A 63 92 42 26 20
+22 20 92 42 28 20 24 20 B0 12 B2 63 B0 12 06 60
+18 42 30 20 F8 40 20 00 0B 1E B0 12 C6 63 88 43
+0C 1E 88 4A 0E 1E 88 49 10 1E 88 49 12 1E 98 42
+24 20 14 1E 98 42 22 20 1A 1E 88 43 1C 1E 88 43
+1E 1E 1C 43 1B 42 34 20 82 9B 36 20 C9 27 FB 90
+2E 00 00 00 C5 27 39 40 0B 00 B0 12 42 64 B0 12
+60 65 2A 43 B0 12 10 60 0C 93 BA 23 30 4D 1A 4B
+04 00 19 4B 06 00 B0 12 52 5E B0 12 C6 63 18 4B
+08 00 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 8E 5E 9B 52 1E 20 12 00 8B 63 14 00
+1A 42 1A 20 19 42 1C 20 30 40 8E 5E B2 40 00 02
+1E 20 1B 42 32 20 B0 12 56 65 82 43 1E 20 DB 53
+03 00 DB 92 12 20 03 00 22 20 CB 43 03 00 B0 12
+F8 5E 08 12 0A 12 B0 12 3A 63 2A 91 05 24 B0 12
+B2 63 2A 41 B0 12 4C 5E 3A 41 38 41 98 42 26 20
+00 1E 92 93 02 20 03 24 98 42 28 20 02 1E B0 12
+B2 63 9B 42 26 20 0E 00 9B 42 28 20 10 00 30 40
+66 5F 4C 61 05 57 52 49 54 45 B0 12 6C 65 30 4D
+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 1A 4B 12 00 BB C0 FF 01 12 00 3A F0 FF 01
+82 4A 1E 20 B0 12 02 60 30 4D 0C 93 38 20 38 90
+E0 01 03 2C C8 93 20 1E 02 24 7C 40 E5 00 C8 4C
+00 1E B0 12 60 65 B0 12 04 5F 82 4A 2A 20 0B 4A
+B0 12 4C 5E 1A 48 00 1E 88 43 00 1E 92 93 02 20
+09 24 19 48 02 1E 88 43 02 1E 39 F0 FF 0F 39 90
+FF 0F 02 20 3A 93 0E 24 82 4A 22 20 82 49 24 20
+B0 12 04 5F 0B 9A E6 27 0A 12 0A 4B B0 12 B2 63
+3A 41 DD 3F 0A 4B B0 12 B2 63 B0 12 F8 60 30 4D
+C0 43 08 54 45 52 4D 32 53 44 22 00 0D 12 87 12
+60 61 24 40 02 00 CE 4A C0 46 B0 61 CE 66 3D 41
+92 C3 DC 05 08 43 B0 12 06 41 92 B3 DC 05 FD 27
+59 42 CC 05 69 92 0D 24 C8 49 00 1E 18 53 38 90
+FF 01 F3 2B 03 24 B0 12 6C 65 EC 3F B0 12 18 41
+EC 3F B0 12 18 41 82 48 1E 20 B0 12 F8 60 30 4D
 @FFFE
-F6 50
+C2 4E
 q
index 79f93b9..866787d 100644 (file)
 @1800
-10 00 08 00 A1 F7 80 3E 05 00 18 00 AA 61 D4 50
-2D 01 6F B0 B6 46 C8 46
+10 00 08 00 A1 F7 80 3E 05 00 18 00 2E 58 88 4E
+2E 01 6B B0 06 45 18 45 D4 4F
 @4400
-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 3A 41 0D 12 0D 4A
-30 4D 00 00 04 45 58 49 54 00 3D 41 30 4D 24 44
-03 44 55 50 2F 83 8F 4E 00 00 30 4D 00 00 04 32
-44 55 50 00 8F 4E FE FF AF 4F FC FF 2F 82 30 4D
-00 00 04 3F 44 55 50 00 0E 93 EC 23 30 4D 30 44
-04 44 52 4F 50 00 3E 4F 30 4D 2F 53 30 4D 3E 44
-04 53 57 41 50 00 2A 4F 8F 4E 00 00 0E 4A 30 4D
-52 44 02 3E 52 00 0E 12 3E 4F 30 4D 70 44 02 52
-3E 00 2F 83 8F 4E 00 00 3E 41 30 4D 60 44 05 44
-45 50 54 48 8F 4E FE FF 3E 40 80 1C 0E 8F 0E 11
-2F 83 30 4D 00 00 01 2D 3E 8F 3E E3 1E 53 30 4D
-00 00 02 31 2B 00 1E 53 30 4D C2 44 02 31 2D 00
-1E 83 30 4D 3E F3 06 34 BF E3 00 00 3E E3 9F 53
-00 00 0E 63 30 4D 00 00 01 40 2E 4E 30 4D E8 44
-01 21 BE 4F 00 00 3E 4F 30 4D CC 44 02 30 3D 00
-1E 83 0E 7E 30 4D FC 44 02 30 3C 00 0E 5E 0E 7E
-3E E3 30 4D 00 00 01 3D 3E 8F FA 27 0E F3 30 4D
-00 00 02 55 3C 00 3E 8F F9 2B 01 24 3E 43 30 4D
-16 45 02 3C 23 00 B2 40 B2 1D B2 1D 30 4D 0B 4E
+30 40 04 44 B0 12 06 45 12 D2 0A 18 F9 3F 39 40
+3A 00 29 83 B9 40 6E 50 C6 FF FB 23 B2 40 68 45
+E4 FF 30 41 2F 83 8F 4E 00 00 3E 4D 30 4D 2F 82
+8F 4E 02 00 7E 4D 8F 4D 00 00 0D 5E 1D B3 0D 63
+30 4D 0E 93 3E 4F 05 24 2D 4D 30 4D 0E 93 3E 4F
+FB 27 2D 53 30 4D 39 40 00 80 39 8F 08 4E 3E 4F
+08 59 19 15 30 4D 81 5E 00 00 3E 4F 32 B0 00 01
+EB 27 21 52 2D 53 30 4D 91 53 00 00 F7 3F 0B 4E
 1C 4F 02 00 2E 4F 0A 43 34 40 20 00 0E 93 04 20
 04 11 0E 4C 0C 43 09 43 0A 9B 01 28 0A 8B 09 69
 08 68 14 83 07 30 0C 5C 0E 6E 0A 6A F5 2B 0A 8B
-12 D3 F5 3F 34 40 00 44 8F 4A 02 00 8F 49 00 00
-0E 48 30 41 00 00 01 23 1B 42 DC 1D 2C 4F 2F 83
-B0 12 46 45 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 86 45 02 23 53 00 87 12 88 45 C0 45
-2D 83 09 93 E3 23 0E 93 E1 23 3D 41 30 4D B6 45
-02 23 3E 00 9F 42 B2 1D 00 00 3E 40 B2 1D 2E 8F
-30 4D 00 00 04 48 4F 4C 44 00 0A 4E 3E 4F DB 3F
-8E 44 04 53 49 47 4E 00 0E 93 3E 4F 3A 40 2D 00
-D2 33 30 4D 87 12 36 45 34 44 86 44 D4 44 BA 45
-92 44 F8 45 D4 45 D6 47 42 4B 82 47 2A 44 22 45
-02 55 2E 00 08 43 2F 83 8F 4E 00 00 0E 48 EA 3F
-00 00 01 2E 0E 93 F6 37 38 43 F5 3F 2D 4D 30 4D
-0E 93 3E 4F FB 27 2D 53 30 4D 0E 93 3E 4F F6 23
-2D 53 30 4D 39 40 00 80 39 8F 08 4E 3E 4F 08 59
-19 15 30 4D 81 5E 00 00 3E 4F 32 B0 00 01 E6 27
-2D 53 21 52 30 4D 91 53 00 00 F7 3F E4 45 01 49
-2F 83 8F 4E 00 00 2E 41 1E 81 02 00 30 4D 00 00
-03 4B 45 59 30 40 98 46 18 42 EC 05 2F 83 8F 4E
-00 00 B0 12 B6 46 92 B3 FC 05 FD 27 1E 42 EC 05
-B0 12 C8 46 30 4D A2 B3 FC 05 FD 27 B2 40 11 00
-EE 05 D2 C3 22 02 30 41 B2 40 13 00 EE 05 D2 D3
-22 02 30 41 00 00 05 53 4C 45 45 50 30 40 E0 46
-B0 12 B6 46 12 D2 0A 18 F9 3F F0 44 06 41 43 43
-45 50 54 00 3C 40 64 47 3B 40 2E 47 2D 15 0A 4E
-2E 4F 0A 5E 3B 40 0D 00 3C 40 20 00 3D 40 58 47
-92 B3 FC 05 05 24 18 42 EC 05 38 90 0A 00 CB 23
-21 53 3D 15 DB 3F 21 52 3A 17 58 42 EC 05 48 9C
-08 2C 48 9B C9 27 78 92 11 20 2E 9F 0F 24 1E 83
-05 3C 0E 9A 03 24 CE 48 00 00 1E 53 A2 B3 FC 05
-FD 27 82 48 EE 05 30 4D 5A 47 2D 83 92 B3 FC 05
-E4 23 FC 27 82 93 DE 1D 02 24 92 53 DE 1D 3E 8F
-3D 41 B2 40 18 00 0A 18 30 4D 9E 44 04 45 4D 49
-54 00 30 40 86 47 08 4E 3E 4F E0 3F 3F 80 06 00
-8F 4E 04 00 3E 40 54 00 BF 40 3C 1D 00 00 AF 4F
-02 00 A8 3F 7C 47 04 45 43 48 4F 00 B2 40 82 48
-52 47 82 43 DE 1D 30 4D 32 46 06 4E 4F 45 43 48
-4F 00 B2 40 30 4D 52 47 92 43 DE 1D 30 4D 20 46
-04 54 59 50 45 00 0E 93 0F 24 1E 15 3D 40 EC 47
-28 4F 7E 48 8F 48 00 00 2F 83 CB 3F EE 47 2D 83
-91 83 02 00 F5 23 1D 17 2F 53 3E 4F 30 4D D0 45
-02 43 52 00 30 40 08 48 87 12 1E 48 02 0D 0A 00
-D6 47 2A 44 2F 83 8F 4E 00 00 3E 4D 30 4D 2F 82
-8F 4E 02 00 7E 4D 8F 4D 00 00 0D 5E 1D B3 0D 63
-30 4D F2 45 82 53 22 00 82 43 B4 1D 87 12 14 48
-1E 48 B0 4A 14 48 22 00 80 48 4C 48 B2 40 20 00
-B4 1D 6E 4E 1E 53 1E B3 82 6E C6 1D 3D 41 3E 4F
-30 4D BA 47 82 2E 22 00 87 12 38 48 14 48 D6 47
-B0 4A 2A 44 48 43 05 3C 00 00 04 57 4F 52 44 00
-48 4E 19 42 C0 1D 1A 42 C2 1D 09 5A 1A 52 C4 1D
-09 9A 03 24 7E 9A FC 27 1A 83 4E F8 06 20 0E 4A
-1A 82 C2 1D 82 4A C4 1D 30 4D 18 42 C6 1D 3B 40
-60 00 C8 4C 00 00 09 9A 0C 24 7C 4A 4E 9C 09 24
-18 53 4B 9C F6 2F 7C 90 7B 00 F3 2F 5C 82 B4 1D
-F0 3F 1A 82 C2 1D 82 4A C4 1D 1E 42 C6 1D 08 8E
-CE 48 00 00 30 4D 00 00 04 46 49 4E 44 00 2F 83
-0C 4E 65 4C 74 40 80 00 3B 40 CA 1D 3E 4B 0E 93
-1E 24 58 4C 01 00 78 F0 1E 00 0E 58 2E 53 1E 4E
-FE FF 0E 93 F3 27 09 4E 78 49 48 C4 48 95 F7 23
-0A 4C FA 99 01 00 F3 23 1A 53 58 83 FA 23 19 B3
-09 63 0C 49 6A 4E 1E 43 4A 93 01 30 2E 83 8F 4C
-00 00 35 40 0E 44 34 40 00 44 30 4D 82 44 07 3E
-4E 55 4D 42 45 52 3C 4F 38 4F 29 4F 2F 82 1B 42
-DC 1D 6A 4C 7A 80 30 00 7A 90 0A 00 05 28 7A 80
-07 00 7A 90 0A 00 12 28 0A 9B 22 C3 0F 2C 82 49
-D0 04 82 48 D2 04 82 4B C8 04 19 42 E4 04 18 42
-E6 04 09 5A 08 63 1C 53 1E 83 E3 23 8F 4C 00 00
-8F 48 02 00 8F 49 04 00 30 4D 32 C0 00 02 1B 42
-DC 1D 0C 43 2D 15 3D 40 F4 49 09 43 08 43 3F 82
-8F 4E 06 00 0C 4E 7E 4C 6A 4C 7A 90 2D 00 04 28
-C9 23 B1 43 02 00 DF 3F 2B 43 7A 80 25 00 07 24
-3B 52 6A 53 04 24 3B 40 10 00 5A 83 BA 23 1C 53
-1E 83 EA 3F F6 49 2F 24 2D 83 7A 90 28 00 CB 27
-32 D0 00 02 7A 90 F7 00 C6 27 7A 90 F5 00 23 20
-0A 4E 09 43 8F 49 02 00 5A 83 09 4A 09 5C 69 49
-79 80 30 00 79 90 0A 00 05 28 79 80 07 00 79 90
-0A 00 0A 28 09 9B 08 2C 8F 49 00 00 0E 4B 2C 15
-B0 12 3E 45 2A 17 E6 3F 9F 4F 04 00 02 00 AF 4F
-04 00 0E 4A 4E 93 2B 17 0E 4C 82 4B DC 1D 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 7E 46 04 48 45 52 45 00
-2F 83 8F 4E 00 00 1E 42 C6 1D 30 4D B6 44 01 2C
-1A 42 C6 1D 8A 4E 00 00 A2 53 C6 1D 3E 4F 30 4D
-EC 46 05 41 4C 4C 4F 54 82 5E C6 1D 3E 4F 30 4D
-A6 47 07 45 58 45 43 55 54 45 0A 4E 3E 4F 00 4A
-AE 4A 87 4C 49 54 45 52 41 4C 82 93 BE 1D 0C 24
-1A 42 C6 1D A2 52 C6 1D BA 40 14 48 00 00 8A 4E
-02 00 3E 4F 32 B0 00 02 32 C0 00 02 06 24 19 4A
-02 00 8A 4E 02 00 0E 49 EB 3F 30 4D 00 48 05 43
-4F 55 4E 54 2F 83 1E 53 8F 4E 00 00 5E 4E FF FF
-30 4D 82 4E C0 1D B2 4F C2 1D 3E 4F 82 43 C4 1D
-30 4D 85 12 20 00 87 12 32 4B 42 4B 80 48 50 4B
-3D 40 58 4B CC 22 82 3E 5A 4B 0A 4E 3E 4F 3D 40
-70 4B 23 27 3D 40 4A 4B 1A E2 BE 1D A1 27 B5 23
-72 4B 3E 4F 3D 40 4A 4B B8 23 DE 53 00 00 68 4E
-08 5E F8 40 3F 00 00 00 3D 40 26 4E CB 3F D2 4A
+12 D3 F5 3F 34 40 EC 44 8F 4A 02 00 8F 49 00 00
+0E 48 30 41 82 4E C0 1D B2 4F C2 1D 3E 4F 82 43
+C4 1D 30 4D 3F 80 06 00 8F 4E 04 00 3E 40 54 00
+BF 40 3C 1D 00 00 AF 4F 02 00 24 3C 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 A2 B3 FC 05 FD 27 B2 40 11 00
+EE 05 D2 C3 22 02 30 41 A2 B3 FC 05 FD 27 B2 40
+13 00 EE 05 D2 D3 22 02 30 41 00 00 06 41 43 43
+45 50 54 00 3C 40 A6 45 3B 40 70 45 2D 15 0A 4E
+2E 4F 0A 5E 3B 40 0D 00 3C 40 20 00 3D 40 9A 45
+92 B3 FC 05 05 24 18 42 EC 05 38 90 0A 00 D3 23
+21 53 3D 15 30 40 00 44 21 52 3A 17 58 42 EC 05
+48 9C 08 2C 48 9B D0 27 78 92 11 20 2E 9F 0F 24
+1E 83 05 3C 0E 9A 03 24 CE 48 00 00 1E 53 A2 B3
+FC 05 FD 27 82 48 EE 05 30 4D 9C 45 2D 83 92 B3
+FC 05 E4 23 FC 27 82 93 DE 1D 02 24 92 53 DE 1D
+3E 8F 3D 41 B2 40 18 00 0A 18 30 4D 00 00 04 45
+4D 49 54 00 30 40 C8 45 08 4E 3E 4F E0 3F BE 45
+04 45 43 48 4F 00 B2 40 82 48 94 45 82 43 DE 1D
+30 4D 00 00 06 4E 4F 45 43 48 4F 00 B2 40 30 4D
+94 45 92 43 DE 1D 30 4D 00 00 04 54 59 50 45 00
+0E 93 0F 24 1E 15 3D 40 16 46 28 4F 7E 48 8F 48
+00 00 2F 83 D7 3F 18 46 2D 83 91 83 02 00 F5 23
+1D 17 2F 53 3E 4F 30 4D 00 00 02 43 52 00 30 40
+32 46 0D 12 87 12 2E 44 02 0D 0A 00 00 46 26 47
+00 00 03 4B 45 59 30 40 4A 46 18 42 EC 05 2F 83
+8F 4E 00 00 B0 12 06 45 92 B3 FC 05 FD 27 1E 42
+EC 05 B0 12 18 45 30 4D 2F 83 8F 4E 00 00 30 4D
+8F 4E FE FF AF 4F FC FF 2F 82 30 4D 0E 93 F4 23
+30 4D 2A 4F 8F 4E 00 00 0E 4A 30 4D 8F 4E FE FF
+3E 40 80 1C 0E 8F 0E 11 2F 83 30 4D 2F 83 8F 4E
+00 00 3E 41 30 4D 3E 8F 3E E3 1E 53 30 4D BE 4F
+00 00 3E 4F 30 4D 1E 83 0E 7E 30 4D 0E 5E 0E 7E
+3E E3 30 4D 3E 8F 03 24 3E 43 01 2C 0E F3 30 4D
+00 00 02 3C 23 00 B2 40 B2 1D B2 1D 30 4D 2A 46
+01 23 1B 42 DC 1D 2C 4F 2F 83 B0 12 86 44 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 E0 46
+02 23 53 00 0D 12 87 12 E2 46 1C 47 2D 83 09 93
+E2 23 0E 93 E0 23 3D 41 30 4D 10 47 02 23 3E 00
+9F 42 B2 1D 00 00 3E 40 B2 1D 2E 8F 30 4D 00 00
+04 48 4F 4C 44 00 4A 4E 3E 4F DA 3F 00 00 04 53
+49 47 4E 00 0E 93 3E 4F 7A 40 2D 00 D1 33 30 4D
+FA 45 02 55 2E 00 08 43 2F 83 8F 4E 00 00 0E 48
+0D 12 0E 12 3E F3 06 34 BF E3 00 00 3E E3 9F 53
+00 00 0E 63 87 12 D6 46 14 47 9C 46 54 47 30 47
+00 46 70 4A C4 45 26 47 E4 45 01 2E 0E 93 E3 37
+38 43 E2 3F 4E 47 82 53 22 00 82 43 B4 1D 0D 12
+87 12 24 44 2E 44 F8 49 24 44 22 00 F2 47 C0 47
+B2 40 20 00 B4 1D 6E 4E 1E 53 1E B3 82 6E C6 1D
+3D 41 3E 4F 30 4D 9A 47 82 2E 22 00 0D 12 87 12
+AA 47 24 44 00 46 F8 49 26 47 00 00 04 57 4F 52
+44 00 3C 40 C0 1D 39 4C 3A 4C 09 5A 3A 5C 28 4C
+09 9A 15 24 7E 9A FC 27 1A 83 3B 40 60 00 C8 4C
+00 00 09 9A 0C 24 7C 4A 4E 9C 09 24 18 53 4B 9C
+F6 2F 7C 90 7B 00 F3 2F 5C 82 B4 1D F0 3F 1A 82
+C2 1D 82 4A C4 1D 1E 42 C6 1D 08 8E CE 48 00 00
+30 4D 00 00 04 46 49 4E 44 00 2F 83 0C 4E 65 4C
+74 40 80 00 3B 40 CA 1D 3E 4B 0E 93 1E 24 58 4C
+01 00 78 F0 1E 00 0E 58 2E 53 1E 4E FE FF 0E 93
+F3 27 09 4E 78 49 48 C4 48 95 F7 23 0A 4C FA 99
+01 00 F3 23 1A 53 58 83 FA 23 19 B3 09 63 0C 49
+6A 4E 1E 43 4A 93 01 30 2E 83 8F 4C 00 00 35 40
+FA 44 34 40 EC 44 30 4D 00 00 07 3E 4E 55 4D 42
+45 52 3C 4F 38 4F 29 4F 2F 82 1B 42 DC 1D 6A 4C
+7A 80 30 00 7A 90 0A 00 05 28 7A 80 07 00 7A 90
+0A 00 12 28 0A 9B 22 C3 0F 2C 82 49 D0 04 82 48
+D2 04 82 4B C8 04 19 42 E4 04 18 42 E6 04 09 5A
+08 63 1C 53 1E 83 E3 23 8F 4C 00 00 8F 48 02 00
+8F 49 04 00 30 4D 32 C0 00 02 1B 42 DC 1D 0C 43
+2D 15 3D 40 50 49 09 43 08 43 3F 82 8F 4E 06 00
+0C 4E 7E 4C 6A 4C 7A 90 2D 00 04 28 C9 23 B1 43
+02 00 0B 3C 2B 43 7A 80 25 00 07 24 3B 52 6A 53
+04 24 3B 40 10 00 5A 83 BA 23 1C 53 1E 83 EA 3F
+52 49 2F 24 2D 83 7A 90 28 00 CB 27 32 D0 00 02
+7A 90 F7 00 C6 27 7A 90 F5 00 23 20 0A 4E 09 43
+8F 49 02 00 5A 83 09 4A 09 5C 69 49 79 80 30 00
+79 90 0A 00 05 28 79 80 07 00 79 90 0A 00 0A 28
+09 9B 08 2C 8F 49 00 00 0E 4B 2C 15 B0 12 7E 44
+2A 17 E6 3F 9F 4F 04 00 02 00 AF 4F 04 00 0E 4A
+4E 93 2B 17 0E 4C 82 4B DC 1D 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 00 00 01 2C 1A 42 C6 1D 8A 4E 00 00
+A2 53 C6 1D 3E 4F 30 4D 2C 45 05 41 4C 4C 4F 54
+82 5E C6 1D 3E 4F 30 4D 0A 4E 3E 4F 00 4A F6 49
+87 4C 49 54 45 52 41 4C 82 93 BE 1D 0C 24 1A 42
+C6 1D A2 52 C6 1D BA 40 24 44 00 00 8A 4E 02 00
+3E 4F 32 B0 00 02 32 C0 00 02 06 24 19 4A 02 00
+8A 4E 02 00 0E 49 EB 3F 30 4D 2C 47 05 43 4F 55
+4E 54 2F 83 1E 53 8F 4E 00 00 5E 4E FF FF 30 4D
+85 12 20 00 0D 12 87 12 C4 44 70 4A F2 47 80 4A
+3D 40 88 4A E2 22 A4 26 8A 4A 0A 4E 3E 4F 3D 40
+A0 4A 39 27 3D 40 7A 4A 1A E2 BE 1D BD 23 AC 27
+A2 4A 3E 4F 3D 40 7A 4A BF 23 DE 53 00 00 68 4E
+08 5E F8 40 3F 00 00 00 3D 40 20 4D D2 3F D0 45
 08 45 56 41 4C 55 41 54 45 00 39 40 C0 1D 3C 49
-3B 49 3A 49 3D 15 B0 12 2A 44 46 4B AE 4B B2 41
-C4 1D B2 41 C2 1D B2 41 C0 1D 3D 41 30 4D 85 12
-BE 1D 08 45 04 51 55 49 54 00 82 43 08 18 31 40
-E0 1C B2 40 00 1C 00 1C 82 43 BE 1D B0 12 2A 44
-04 48 8C 47 42 4B 82 47 46 4B A4 44 0C 45 1E 48
-0C 73 74 61 63 6B 20 65 6D 70 74 79 21 00 40 4C
-14 48 30 FF A0 4A 26 45 1E 48 0A 46 52 41 4D 20
-66 75 6C 6C 21 00 40 4C 3C 46 E0 4B C2 4A 05 41
-42 4F 52 54 3F 40 80 1C D0 3F 1E 4C 86 41 42 4F
-52 54 22 00 87 12 38 48 14 48 40 4C B0 4A 2A 44
-8F 93 02 00 03 20 2F 52 3E 4F 30 4D B0 12 CC 51
-B0 12 B6 46 92 C3 FC 05 38 40 A0 AA 39 42 03 43
-19 83 FD 23 18 83 FA 23 92 B3 FC 05 F3 23 87 12
-46 51 14 48 DE 1D EA 44 AC 47 1E 48 04 1B 5B 37
-6D 00 D6 47 58 44 40 46 9A 4C 04 48 1E 48 05 6C
-69 6E 65 3A D6 47 D0 44 24 46 D6 47 1E 48 04 1B
-5B 30 6D 00 D6 47 24 4C 00 00 83 5B 27 5D 87 12
-C0 4C 14 48 14 48 B0 4A B0 4A 2A 44 E8 48 01 27
-87 12 42 4B 80 48 EE 48 40 46 CE 4C 2A 44 7A 4B
-32 45 81 5C 92 42 C0 1D C4 1D 30 4D AA 4C 81 5B
-82 43 BE 1D 30 4D D2 4C 01 5D B2 43 BE 1D 30 4D
-BE 4F 02 00 3E 4F 30 4D 9A 4A 82 49 53 00 87 12
-BE 4B EA 44 40 46 12 4D AE 4C 14 48 F0 4C B0 4A
-2A 44 C0 4C F0 4C 2A 44 FA 4C 09 49 4D 4D 45 44
-49 41 54 45 1A 42 B6 1D FA D0 80 00 00 00 30 4D
-C4 4B 88 50 4F 53 54 50 4F 4E 45 00 87 12 42 4B
-80 48 EE 48 58 44 40 46 CE 4C 0C 45 40 46 5C 4D
-14 48 14 48 B0 4A B0 4A 14 48 B0 4A B0 4A 2A 44
-DE 4C 81 3B 82 93 BE 1D B5 27 87 12 14 48 2A 44
-B0 4A FA 4D E0 4C 2A 44 62 4D 07 3A 4E 4F 4E 41
-4D 45 30 12 A0 4D 2F 83 8F 4E 00 00 1E 42 C6 1D
-1E B3 0E 63 0A 4E 39 40 00 02 38 40 02 02 21 3C
-BA 40 87 12 FC FF A2 83 C6 1D B2 43 BE 1D 30 4D
-7A 4D 01 3A 30 12 A0 4D 92 B3 C6 1D A2 63 C6 1D
-87 12 42 4B 80 48 C8 4D 3D 41 08 4E 7A 4E 5A D3
-5A 53 0A 58 19 42 DA 1D 6E 4E 3E F0 1E 00 09 5E
-3E 4F 82 48 B6 1D 82 49 B8 1D 82 4A BA 1D 82 4F
-BC 1D 2A 52 82 4A C6 1D 30 41 82 9F BC 1D 09 20
-18 42 B6 1D 19 42 B8 1D A8 49 FE FF 89 48 00 00
-30 4D 87 12 1E 48 0F 73 74 61 63 6B 20 6D 69 73
-6D 61 74 63 68 21 4C 4C 90 4B 05 44 45 46 45 52
-B0 12 B8 4D BA 40 30 40 FC FF BA 40 AE 4D FE FF
-E3 3F 1E 4B 06 43 52 45 41 54 45 00 B0 12 B8 4D
-BA 40 85 12 FC FF 8A 4A FE FF D6 3F 2A 4E 05 44
-4F 45 53 3E 1A 42 BA 1D BA 40 84 12 00 00 8A 4D
-02 00 3D 41 30 4D 4E 49 05 3E 42 4F 44 59 2E 52
-30 4D 44 4E 04 43 4F 44 45 00 B0 12 B8 4D 82 43
-6E 61 A2 82 C6 1D 87 12 D6 50 B0 50 2A 44 84 4E
-07 43 4F 44 45 4E 4E 4D B0 12 86 4D F0 3F 00 00
-07 45 4E 44 43 4F 44 45 87 12 E4 50 FA 4D 2A 44
-2C 4C 03 41 53 4D B2 40 B4 50 DA 1D DE 3F B0 4E
-06 45 4E 44 41 53 4D 00 87 12 B8 4E F8 50 2A 44
-00 00 05 43 4F 4C 4F 4E 1A 42 C6 1D BA 40 87 12
-00 00 A2 53 C6 1D B2 43 BE 1D 30 40 E4 50 00 00
-05 4C 4F 32 48 49 1A 42 C6 1D BA 40 B0 12 00 00
-BA 40 2A 44 02 00 A2 52 C6 1D ED 3F 1A 4D 85 48
-49 32 4C 4F 87 12 A0 4A 4E 4F B0 4A E0 4C D6 50
-B0 50 2A 44 1E 4F 82 49 46 00 2F 83 8F 4E 00 00
-1E 42 C6 1D A2 52 C6 1D BE 40 40 46 00 00 2E 53
-30 4D 5E 4E 84 45 4C 53 45 00 A2 52 C6 1D 1A 42
-C6 1D BA 40 3C 46 FC FF 8E 4A 00 00 2A 83 0E 4A
-30 4D D0 47 84 54 48 45 4E 00 9E 42 C6 1D 00 00
-3E 4F 30 4D A0 4E 85 42 45 47 49 4E 30 40 A0 4A
-74 4F 85 55 4E 54 49 4C 39 40 40 46 A2 52 C6 1D
-1A 42 C6 1D 8A 49 FC FF 8A 4E FE FF 3E 4F 30 4D
-C2 4E 85 41 47 41 49 4E 39 40 3C 46 EF 3F 7A 48
-85 57 48 49 4C 45 87 12 3A 4F 76 44 2A 44 34 48
-86 52 45 50 45 41 54 00 87 12 B8 4F 7A 4F 2A 44
-54 4F 82 44 4F 00 2F 83 8F 4E 00 00 A2 53 C6 1D
-1E 42 C6 1D BE 40 54 46 FE FF A2 53 00 1C 1A 42
-00 1C 8A 43 00 00 30 4D E2 4A 84 4C 4F 4F 50 00
-39 40 76 46 A2 52 C6 1D 1A 42 C6 1D 8A 49 FC FF
-8A 4E FE FF 1E 42 00 1C A2 83 00 1C 2E 4E 0E 93
-03 24 8E 4A 00 00 F6 3F 3E 4F 30 4D 90 46 85 2B
-4C 4F 4F 50 39 40 64 46 E5 3F 0A 50 04 4D 4F 56
-45 00 0A 4E 38 4F 39 4F 3E 4F 0A 93 11 24 08 99
-0F 24 06 2C F8 49 00 00 18 53 1A 83 FB 23 30 4D
-08 5A 09 5A 19 83 18 83 E8 49 00 00 1A 83 FA 23
-30 4D 14 48 CA 1D F2 44 2A 44 84 12 82 50 B2 4F
-7A 53 E2 4F BE 4C 36 4F 3E 50 8E 54 64 48 6A 51
-84 51 92 4F 04 52 00 00 60 54 E8 4C 78 4E 00 00
-84 12 82 50 38 60 D0 5F 34 5F F8 5A 9C 59 00 00
-FC 5D 00 00 5E 61 72 61 F4 59 32 5A 04 60 00 00
-00 00 D4 5A AE 50 3A 40 0C 00 39 40 CA 1D 38 40
-CC 1D C6 3F 3A 40 0E 00 39 40 CC 1D 38 40 CA 1D
-B9 3F 82 43 CC 1D 30 4D 92 42 CA 1D DA 1D 30 4D
-8A 50 F2 50 F8 50 08 51 3A 4E 82 4A C8 1D 2E 4E
-82 4E C6 1D 3D 40 10 00 09 4A 08 49 29 83 18 48
-FE FF 0E 98 FC 2B 89 48 00 00 1D 83 F6 23 2A 4A
-0A 93 F0 23 3E 4F 3D 41 30 4D 32 4D 09 50 57 52
-5F 53 54 41 54 45 84 12 00 51 D4 50 AA 61 D0 4F
-09 52 53 54 5F 53 54 41 54 45 92 42 0E 18 4A 51
-92 42 0C 18 4C 51 EF 3F 3C 51 08 50 57 52 5F 48
-45 52 45 00 92 42 C8 1D 4A 51 92 42 C6 1D 4C 51
-30 4D 50 51 08 52 53 54 5F 48 45 52 45 00 92 42
-C8 1D 0E 18 92 42 C6 1D 0C 18 EC 3F C0 4F 04 57
-49 50 45 00 39 40 10 00 29 83 B9 43 80 FF FC 23
-B2 40 E0 46 DE 46 B2 40 0E 52 0C 52 B2 40 D4 50
-0E 18 B2 40 AA 61 0C 18 30 12 5A 51 B2 40 86 47
-84 47 B2 40 08 48 06 48 B2 40 98 46 96 46 B2 40
-18 00 0A 18 37 40 1A 44 36 40 92 44 35 40 0E 44
-34 40 00 44 B2 40 0A 00 DC 1D B2 40 20 00 B4 1D
-30 41 9E 51 04 57 41 52 4D 00 30 40 0E 52 3D 40
-44 52 92 C3 30 01 1E 42 08 18 0E 93 12 24 F2 B0
-10 00 20 02 02 20 3E E3 1E 53 F2 D0 30 00 2A 02
-3E 90 0A 00 B7 27 3E 90 16 00 B4 2F 2E 93 83 27
-8C 2F 30 4D 1E 48 06 0D 1B 5B 37 6D 23 00 D6 47
-34 46 1E 48 19 46 61 73 74 46 6F 72 74 68 20 C2
-A9 4A 2E 4D 2E 54 68 6F 6F 72 65 6E 73 20 D6 47
-14 48 30 FF A0 4A B8 44 24 46 1E 48 0A 62 79 74
-65 73 20 66 72 65 65 00 3C 46 9A 4C 86 4F 04 43
-4F 4C 44 00 92 B3 EA 05 FD 23 B2 40 04 A5 20 01
-44 52 B2 40 88 5A 5C 01 B2 40 FE FF 02 02 B2 D3
+3B 49 3A 49 3D 15 87 12 74 4A DC 4A B2 41 C4 1D
+B2 41 C2 1D B2 41 C0 1D 3D 41 30 4D 85 12 BE 1D
+00 00 04 51 55 49 54 00 82 43 08 18 31 40 E0 1C
+B2 40 00 1C 00 1C 82 43 BE 1D 87 12 2E 46 D4 44
+70 4A C4 45 74 4A 8C 46 BC 46 2E 44 0C 73 74 61
+63 6B 20 65 6D 70 74 79 21 00 6E 4B 24 44 40 FF
+2A 4E C4 46 2E 44 0A 46 52 41 4D 20 66 75 6C 6C
+21 00 6E 4B 48 44 0C 4B 0A 4A 05 41 42 4F 52 54
+3F 40 80 1C D1 3F 4A 4B 86 41 42 4F 52 54 22 00
+0D 12 87 12 AA 47 24 44 6E 4B F8 49 26 47 8F 93
+02 00 03 20 2F 52 3E 4F 30 4D B0 12 96 4F B0 12
+06 45 92 C3 FC 05 18 42 06 18 39 40 20 00 19 83
+FE 23 18 83 FA 23 92 B3 FC 05 F3 23 0D 12 87 12
+10 4F 24 44 DE 1D 02 45 D6 45 2E 44 04 1B 5B 37
+6D 00 00 46 7C 46 4C 44 C8 4B 2E 46 2E 44 05 6C
+69 6E 65 3A 00 46 66 47 00 46 2E 44 04 1B 5B 30
+6D 00 00 46 50 4B 00 00 83 5B 27 5D 0D 12 87 12
+F0 4B 24 44 24 44 F8 49 F8 49 26 47 44 48 01 27
+0D 12 87 12 70 4A F2 47 4A 48 4C 44 00 4C 26 47
+AA 4A D2 46 81 5C 92 42 C0 1D C4 1D 30 4D D8 4B
+81 5B 82 43 BE 1D 30 4D 04 4C 01 5D B2 43 BE 1D
+30 4D F2 4A 88 50 4F 53 54 50 4F 4E 45 00 0D 12
+87 12 70 4A F2 47 4A 48 7C 46 4C 44 00 4C BC 46
+4C 44 50 4C 24 44 24 44 F8 49 F8 49 24 44 F8 49
+F8 49 26 47 40 47 09 49 4D 4D 45 44 49 41 54 45
+1A 42 B6 1D FA D0 80 00 00 00 30 4D 10 4C 01 3A
+30 12 B8 4C 92 B3 C6 1D A2 63 C6 1D 0D 12 87 12
+70 4A F2 47 86 4C 3D 41 08 4E 7A 4E 5A D3 5A 53
+0A 58 19 42 DA 1D 6E 4E 3E F0 1E 00 09 5E 3E 4F
+82 48 B6 1D 82 49 B8 1D 82 4A BA 1D 82 4F BC 1D
+2A 52 82 4A C6 1D 30 41 BA 40 0D 12 FC FF BA 40
+87 12 FE FF B2 43 BE 1D 30 4D 6E 4C 07 3A 4E 4F
+4E 41 4D 45 30 12 B8 4C 2F 83 8F 4E 00 00 1E 42
+C6 1D 1E B3 0E 63 0A 4E 39 40 10 02 38 40 12 02
+D7 3F 82 9F BC 1D 09 20 18 42 B6 1D 19 42 B8 1D
+A8 49 FE FF 89 48 00 00 30 4D 0D 12 87 12 2E 44
+0F 73 74 61 63 6B 20 6D 69 73 6D 61 74 63 68 21
+7A 4B CC 4C 81 3B 82 93 BE 1D 6D 27 0D 12 87 12
+24 44 26 47 F8 49 F2 4C 12 4C 26 47 5C 4A 06 43
+52 45 41 54 45 00 B0 12 74 4C BA 40 85 12 FC FF
+8A 4A FE FF D5 3F C0 4A 05 44 4F 45 53 3E 1A 42
+BA 1D BA 40 84 12 00 00 8A 4D 02 00 3D 41 30 4D
+3E 4D 04 43 4F 44 45 00 B0 12 74 4C A2 82 C6 1D
+0D 12 87 12 8A 4E 64 4E 26 47 72 4D 07 43 4F 44
+45 4E 4E 4D 30 12 7C 4D 9F 3F 00 00 07 45 4E 44
+43 4F 44 45 0D 12 87 12 F2 4C A4 4E 26 47 58 4B
+03 41 53 4D B2 40 68 4E DA 1D DE 3F 9C 4D 06 45
+4E 44 41 53 4D 00 0D 12 87 12 A4 4D C2 4E 26 47
+00 00 05 43 4F 4C 4F 4E 1A 42 C6 1D BA 40 0D 12
+00 00 BA 40 87 12 02 00 A2 52 C6 1D B2 43 BE 1D
+30 40 A4 4E 00 00 05 4C 4F 32 48 49 A2 83 C6 1D
+1A 42 C6 1D EE 3F 56 4C 85 48 49 32 4C 4F 0D 12
+87 12 2A 4E 1E 4E F8 49 12 4C 80 4D 26 47 2E 53
+30 4D 8C 4D 85 42 45 47 49 4E 2F 83 8F 4E 00 00
+1E 42 C6 1D 30 4D 24 44 CA 1D AE 46 26 47 84 12
+36 4E B0 4D 5C 50 58 4D EE 4B 08 4E 42 46 20 4A
+D8 47 34 4F 4E 4F 62 47 CE 4F 00 00 0E 52 1A 4C
+AA 48 00 00 84 12 36 4E 40 57 A6 57 F4 56 F6 57
+BA 56 00 00 EA 53 00 00 B0 56 62 57 12 57 50 57
+FA 54 00 00 00 00 12 58 62 4E 3A 40 0C 00 39 40
+D6 1D 08 49 28 53 19 83 18 83 E8 49 00 00 1A 83
+FA 23 30 4D 3A 40 0E 00 38 40 CA 1D 09 48 29 53
+F8 49 00 00 18 53 1A 83 FB 23 30 4D 82 43 CC 1D
+30 4D 92 42 CA 1D DA 1D 30 4D 3E 4E BC 4E C2 4E
+D2 4E 3A 4E 82 4A C8 1D 2E 4E 82 4E C6 1D 3D 40
+10 00 09 4A 08 49 29 83 18 48 FE FF 0E 98 FC 2B
+89 48 00 00 1D 83 F6 23 2A 4A 0A 93 F0 23 3E 4F
+3D 41 30 4D 24 4C 09 50 57 52 5F 53 54 41 54 45
+84 12 CA 4E 88 4E 2E 58 A6 47 09 52 53 54 5F 53
+54 41 54 45 92 42 0E 18 14 4F 92 42 0C 18 16 4F
+EF 3F 06 4F 08 50 57 52 5F 48 45 52 45 00 92 42
+C8 1D 14 4F 92 42 C6 1D 16 4F 30 4D 1A 4F 08 52
+53 54 5F 48 45 52 45 00 92 42 C8 1D 0E 18 92 42
+C6 1D 0C 18 EC 3F EC 47 04 57 49 50 45 00 39 40
+10 00 29 83 B9 43 80 FF FC 23 B2 40 04 44 02 44
+B2 40 D8 4F D6 4F B2 40 88 4E 0E 18 B2 40 2E 58
+0C 18 30 12 24 4F B2 40 C8 45 C6 45 B2 40 32 46
+30 46 B2 40 4A 46 48 46 B2 40 18 00 0A 18 37 40
+26 47 36 40 9C 46 35 40 FA 44 34 40 EC 44 B2 40
+0A 00 DC 1D B2 40 20 00 B4 1D 30 41 68 4F 04 57
+41 52 4D 00 30 40 D8 4F 3D 40 12 50 92 C3 30 01
+1E 42 08 18 0E 93 14 24 F2 B0 10 00 20 02 02 20
+3E E3 1E 53 F2 D0 30 00 2A 02 92 D3 FA 05 3E 90
+0A 00 B5 27 3E 90 16 00 B2 2F 2E 93 81 27 8A 2F
+30 4D 2E 44 07 0D 0A 1B 5B 37 6D 23 00 46 9C 47
+2E 44 19 46 61 73 74 46 6F 72 74 68 20 C2 A9 4A
+2E 4D 2E 54 68 6F 6F 72 65 6E 73 20 00 46 24 44
+40 FF 2A 4E A6 46 66 47 2E 44 0A 62 79 74 65 73
+20 66 72 65 65 00 48 44 C8 4B 24 4E 04 43 4F 4C
+44 00 92 B3 EA 05 FD 23 B2 40 04 A5 20 01 31 40
+E0 1C B2 40 88 5A 5C 01 B2 40 FE FF 02 02 B2 D3
 06 02 B2 43 26 02 B2 43 22 02 D2 D3 24 02 B2 43
 42 02 B2 43 46 02 B2 43 62 02 B2 43 66 02 B2 40
 7F FF 82 02 B2 43 86 02 F2 43 22 03 F2 43 26 03
@@ -245,238 +210,121 @@ F2 40 A5 00 61 01 B2 40 48 00 62 01 82 43 66 01
 39 40 00 01 B2 40 33 00 64 01 D2 43 61 01 92 D2
 9E 01 08 18 38 40 59 14 18 83 FE 23 19 83 FA 23
 B2 42 B0 01 F2 D0 10 00 2A 03 F2 C0 40 00 A2 04
-39 40 00 08 29 83 89 43 00 1C FC 23 39 40 3A 00
-29 83 B9 40 A2 52 C6 FF FB 23 B2 40 26 47 E4 FF
+39 40 00 08 29 83 89 43 00 1C FC 23 B0 12 0E 44
 B2 40 81 00 E0 05 92 42 02 18 E6 05 92 42 04 18
-E8 05 92 C3 E0 05 92 D3 FA 05 3F 40 80 1C 31 40
-E0 1C 30 12 0A 52 33 3F 8E 52 07 43 4F 4D 50 41
-52 45 0C 4E 38 4F 3B 4F 39 4F 0E 4B 0E 5C 0C 24
-1B 83 07 30 1C 83 07 30 19 53 F9 98 FF FF F5 27
-02 2C 3E 43 30 4D 1E 43 30 4D B2 4D 86 5B 54 48
-45 4E 5D 00 30 4D AC 53 86 5B 45 4C 53 45 5D 00
-87 12 14 48 00 00 C6 44 42 4B 80 48 24 4B 34 44
-40 46 22 54 44 44 1E 48 06 5B 54 48 45 4E 5D 00
-82 53 4A 46 F2 53 F8 47 D0 44 58 44 4A 46 C8 53
-2A 44 44 44 1E 48 06 5B 45 4C 53 45 5D 00 82 53
-4A 46 10 54 F8 47 D0 44 58 44 4A 46 C6 53 2A 44
-1E 48 04 5B 49 46 5D 00 82 53 4A 46 C8 53 3C 46
-C6 53 F8 47 1E 48 05 0D 0A 6B 6F 20 D6 47 8C 47
-32 4B 3C 46 C8 53 B8 53 84 5B 49 46 5D 00 0E 93
-3E 4F BE 27 30 4D 38 54 89 5B 44 45 46 49 4E 45
-44 5D 87 12 42 4B 80 48 EE 48 6A 44 2A 44 48 54
-8B 5B 55 4E 44 45 46 49 4E 45 44 5D 87 12 42 4B
-80 48 EE 48 6A 44 00 45 2A 44 7C 54 3D 41 B2 4E
-0E 18 A2 4E 0C 18 3E 4F 30 40 5A 51 4C 50 06 4D
-41 52 4B 45 52 00 B0 12 B8 4D BA 40 84 12 FC FF
-BA 40 7A 54 FE FF 9A 42 C8 1D 00 00 28 83 8A 48
-02 00 A2 52 C6 1D 30 40 00 4E 1C 15 B0 12 2A 44
-80 48 EE 48 4A 46 D0 54 AA 49 40 46 CE 4C EA 54
-D2 54 39 4E 39 80 86 12 08 24 19 53 02 20 2E 4E
-04 3C 2E 53 19 53 01 24 2E 82 1B 17 30 41 32 B0
-00 02 01 24 3E 4F 30 41 3E 40 28 00 B0 12 BA 54
-B0 12 EE 54 19 42 C6 1D A2 53 C6 1D 89 4E 00 00
-3E 40 29 00 1C 15 12 12 C4 1D 92 53 C4 1D B0 12
-2A 44 80 48 AA 49 40 46 36 55 2C 55 21 53 3E 90
-10 00 81 2D DA 2B 38 55 B2 41 C4 1D D6 3F 87 12
-42 4B 74 48 46 55 0C 43 1B 42 C6 1D A2 53 C6 1D
-6A 4E 3E 4F 7A 90 23 00 29 20 92 53 C4 1D B0 12
-BA 54 B0 12 EE 54 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 C6 1D A2 53
-C6 1D 89 4E 00 00 3E 4F 3D 41 30 4D 7A 90 26 00
-09 20 3C 40 10 02 92 53 C4 1D B0 12 BA 54 B0 12
-EE 54 EB 3F 7A 90 40 00 16 20 3C 40 20 00 92 53
-C4 1D B0 12 14 55 0C 20 3C 50 10 00 3E 40 2B 00
-B0 12 14 55 92 92 C0 1D C4 1D 02 24 92 53 C4 1D
-8E 10 0C 5E D8 3F B0 12 14 55 FA 23 3C 50 10 00
-B0 12 F8 54 EF 3F 0C 43 1B 42 C6 1D A2 53 C6 1D
-87 12 42 4B 74 48 18 56 FE 90 26 00 00 00 3E 40
-20 00 03 20 3C 50 82 00 C6 3F B0 12 14 55 E1 23
-3C 50 80 00 B0 12 F8 54 DC 3F D6 46 04 52 45 54
-49 00 87 12 14 48 00 13 B0 4A 2A 44 14 48 2C 00
-3E 55 10 56 56 56 09 4B 2E 4E 0E DC A2 3F 00 4F
-03 4D 4F 56 84 12 4C 56 00 40 60 56 05 4D 4F 56
-2E 42 84 12 4C 56 40 40 00 00 03 41 44 44 84 12
-4C 56 00 50 7A 56 05 41 44 44 2E 42 84 12 4C 56
-40 50 86 56 04 41 44 44 43 00 84 12 4C 56 00 60
-94 56 06 41 44 44 43 2E 42 00 84 12 4C 56 40 60
-3C 56 04 53 55 42 43 00 84 12 4C 56 00 70 B2 56
-06 53 55 42 43 2E 42 00 84 12 4C 56 40 70 C0 56
-03 53 55 42 84 12 4C 56 00 80 D0 56 05 53 55 42
-2E 42 84 12 4C 56 40 80 E2 4E 03 43 4D 50 84 12
-4C 56 00 90 EA 56 05 43 4D 50 2E 42 84 12 4C 56
-40 90 D0 4E 04 44 41 44 44 00 84 12 4C 56 00 A0
-04 57 06 44 41 44 44 2E 42 00 84 12 4C 56 40 A0
-F6 56 03 42 49 54 84 12 4C 56 00 B0 22 57 05 42
-49 54 2E 42 84 12 4C 56 40 B0 2E 57 03 42 49 43
-84 12 4C 56 00 C0 3C 57 05 42 49 43 2E 42 84 12
-4C 56 40 C0 48 57 03 42 49 53 84 12 4C 56 00 D0
-56 57 05 42 49 53 2E 42 84 12 4C 56 40 D0 00 00
-03 58 4F 52 84 12 4C 56 00 E0 70 57 05 58 4F 52
-2E 42 84 12 4C 56 40 E0 A2 56 03 41 4E 44 84 12
-4C 56 00 F0 8A 57 05 41 4E 44 2E 42 84 12 4C 56
-40 F0 42 4B 3E 55 A8 57 0A 4C 3C F0 70 00 8A 10
-3A F0 0F 00 0C DA 4F 3F DC 56 03 52 52 43 84 12
-A2 57 00 10 BA 57 05 52 52 43 2E 42 84 12 A2 57
-40 10 C6 57 04 53 57 50 42 00 84 12 A2 57 80 10
-D4 57 03 52 52 41 84 12 A2 57 00 11 E2 57 05 52
-52 41 2E 42 84 12 A2 57 40 11 EE 57 03 53 58 54
-84 12 A2 57 80 11 00 00 04 50 55 53 48 00 84 12
-A2 57 00 12 08 58 06 50 55 53 48 2E 42 00 84 12
-A2 57 40 12 62 57 04 43 41 4C 4C 00 84 12 A2 57
-80 12 1A 53 0E 4A 87 12 34 46 1E 48 0D 6F 75 74
-20 6F 66 20 62 6F 75 6E 64 73 4C 4C 42 4B 74 48
-52 58 92 53 C4 1D 3E 40 2C 00 B0 12 2A 44 80 48
-AA 49 40 46 CE 4C 06 56 6A 58 0A 4E 3E 4F 1A 83
-E0 33 29 4E 59 0E 0A 28 08 4C 59 0A 01 28 0C 8A
-08 8A 38 90 10 00 D5 2F 5A 0E 94 3F 2A 92 D1 2F
-8A 10 5A 06 8F 3F FC 57 06 52 52 43 4D 2E 41 00
-84 12 4C 58 40 00 98 58 04 52 52 43 4D 00 84 12
-4C 58 50 00 A8 58 06 52 52 41 4D 2E 41 00 84 12
-4C 58 40 01 B6 58 04 52 52 41 4D 00 84 12 4C 58
-50 01 C6 58 06 52 4C 41 4D 2E 41 00 84 12 4C 58
-40 02 D4 58 04 52 4C 41 4D 00 84 12 4C 58 50 02
-E4 58 06 52 52 55 4D 2E 41 00 84 12 4C 58 40 03
-F2 58 04 52 52 55 4D 00 84 12 4C 58 50 03 16 58
-07 50 55 53 48 4D 2E 41 84 12 4C 58 00 14 10 59
-05 50 55 53 48 4D 84 12 4C 58 00 15 20 59 06 50
-4F 50 4D 2E 41 00 84 12 4C 58 00 16 2E 59 04 50
-4F 50 4D 00 84 12 4C 58 00 17 02 59 03 53 3E 3D
-85 12 00 38 4C 59 02 53 3C 00 85 12 00 34 3E 59
-03 30 3E 3D 85 12 00 30 60 59 02 30 3C 00 85 12
-00 30 00 00 02 55 3C 00 85 12 00 2C 74 59 03 55
-3E 3D 85 12 00 28 6A 59 03 30 3C 3E 85 12 00 24
-88 59 02 30 3D 00 85 12 00 20 00 00 02 49 46 00
-1A 42 C6 1D 8A 4E 00 00 A2 53 C6 1D 0E 4A 30 4D
-7E 59 04 54 48 45 4E 00 1A 42 C6 1D 08 4E 3E 4F
-09 48 29 53 0A 89 0A 11 3A 90 00 02 33 2F 88 DA
-00 00 30 4D 12 57 04 45 4C 53 45 00 1A 42 C6 1D
-BA 40 00 3C 00 00 A2 53 C6 1D 2F 83 8F 4A 00 00
-E3 3F B2 59 05 55 4E 54 49 4C 3A 4F 08 4E 3E 4F
-19 42 C6 1D 2A 83 0A 89 0A 11 3A 90 00 FE 12 3B
-3A F0 FF 03 08 DA 89 48 00 00 A2 53 C6 1D 30 4D
-96 57 05 41 47 41 49 4E 0A 4E 38 40 00 3C E7 3F
-00 00 05 57 48 49 4C 45 87 12 A0 59 76 44 2A 44
-56 59 06 52 45 50 45 41 54 00 87 12 28 5A B8 59
-2A 44 54 5A 3D 41 08 4E 3E 4F 2A 48 B2 92 C4 1D
-CD 2F 98 42 C6 1D 00 00 30 4D 26 58 03 42 57 31
-84 12 52 5A 00 00 6C 5A 03 42 57 32 84 12 52 5A
-00 00 78 5A 03 42 57 33 84 12 52 5A 00 00 90 5A
-3D 41 1A 42 C6 1D 28 4E B2 92 C4 1D 90 2B BA 4F
-00 00 A2 53 C6 1D 8E 4A 00 00 3E 4F 30 4D 00 00
-03 46 57 31 84 12 8E 5A 00 00 B0 5A 03 46 57 32
-84 12 8E 5A 00 00 BC 5A 03 46 57 33 84 12 8E 5A
-00 00 00 00 05 3F 47 4F 54 4F 3E 90 00 30 07 24
-3E E0 00 04 3E B0 00 10 02 24 3E E0 00 08 87 12
-C0 4C DA 4A 2A 44 C8 5A 04 47 4F 54 4F 00 2F 83
-8F 4E 00 00 3E 40 00 3C F2 3F 87 12 42 4B 74 48
-12 5B 69 4E 3E 4F 3C 4F 2C 4C 1B 42 C6 1D A2 53
-C6 1D 79 90 52 00 0A 20 B0 12 14 55 5E 0E 5E 0E
-0E DC 8B 4E 00 00 0E 4B 3D 41 30 4D 79 90 23 00
-0D 20 3C C0 40 00 92 53 C4 1D A2 53 C6 1D B0 12
-BA 54 BB 4F 02 00 3E F0 0F 00 E8 3F 79 90 26 00
-03 20 3C E0 E0 00 EF 3F 3C C0 F0 00 79 90 40 00
-12 20 92 53 C4 1D B0 12 14 55 D8 23 3C D0 10 00
-3E 40 2B 00 B0 12 14 55 92 92 C0 1D C4 1D CE 27
-92 53 C4 1D CB 3F 3C D0 30 00 A2 53 C6 1D 3E 40
-28 00 B0 12 BA 54 BB 4F 02 00 3E 40 29 00 EA 3F
-87 12 42 4B 74 48 B8 5B 3B 4F 2C 4B 69 4E 7E 40
-20 00 79 90 52 00 03 20 B0 12 14 55 B1 3F 3C C0
-F0 00 A2 53 C6 1D 79 90 26 00 09 20 3C D0 60 00
-92 53 C4 1D B0 12 BA 54 BB 4F 02 00 A1 3F 3C D0
-70 00 3E 40 28 00 B0 12 BA 54 BB 4F 02 00 3E 40
-29 00 E2 3F 14 48 2C 00 0A 5B B0 5B 66 44 2A 44
-6C 56 04 4D 4F 56 41 00 84 12 04 5C C0 00 84 5A
-04 43 4D 50 41 00 84 12 04 5C D0 00 22 5A 04 41
-44 44 41 00 84 12 04 5C E0 00 42 5A 04 53 55 42
-41 00 84 12 04 5C F0 00 20 5C 05 43 41 4C 4C 41
-87 12 42 4B 74 48 58 5C 1B 42 C6 1D A2 53 C6 1D
-6E 4E 3C 40 34 01 7E 90 52 00 0B 20 7E 40 20 00
-B0 12 14 55 5C 0E 0C DE 8B 4C 00 00 3E 4F 3D 41
-30 4D 2C 53 7E 90 40 00 0B 20 92 53 C4 1D 7E 40
-20 00 B0 12 14 55 EE 23 1C 53 3E 40 2B 00 E8 3F
-A2 53 C6 1D 7E 90 23 00 09 20 3C 40 3B 01 92 53
-C4 1D B0 12 BA 54 BB 4F 02 00 DC 3F 7E 90 26 00
-02 20 2C 53 F4 3F 7E 40 28 00 1C 83 B0 12 BA 54
-BB 4F 02 00 3E 40 29 00 CB 3F 87 12 42 4B 74 48
-E2 5C 69 4E 3E 4F 3C 40 00 18 79 90 52 00 05 20
-B0 12 14 55 0E 4C 3D 41 30 4D 82 43 6E 61 79 90
-23 00 0B 20 92 53 C4 1D B0 12 BA 54 2F 53 3E F0
-0F 00 5E 0A 5E 0E 0C DE ED 3F 79 90 26 00 F2 27
-79 90 40 00 12 20 92 53 C4 1D B0 12 14 55 E2 23
-3E 40 2B 00 92 53 C4 1D B0 12 14 55 92 92 C0 1D
-C4 1D D8 27 92 53 C4 1D D5 3F 3E 40 28 00 B0 12
-BA 54 8F 4E 00 00 3E 40 29 00 B0 12 14 55 3E 4F
-3E F0 0F 00 0C DE EA 3F 87 12 42 4B 74 48 70 5D
-3C 4F 69 4E 3E 40 20 00 79 90 52 00 BB 27 82 43
-6E 61 79 90 26 00 08 20 92 53 C4 1D B0 12 BA 54
-2F 53 3E F0 0F 00 BF 3F 3E 40 28 00 B0 12 BA 54
-F7 3F 1B 42 C6 1D A2 53 C6 1D 0C 4E 3E 4F 1C D2
-6E 61 82 43 6E 61 3C DE 8B 4C 00 00 B2 41 C4 1D
-30 4D 14 48 C4 1D EA 44 86 44 14 48 2C 00 DA 5C
-68 5D A2 5D 3C 46 4C 56 12 5C 04 4D 4F 56 58 00
-84 12 C2 5D 40 00 00 40 DA 5D 06 4D 4F 56 58 2E
-41 00 84 12 C2 5D 00 00 40 40 EA 5D 06 4D 4F 56
-58 2E 42 00 84 12 C2 5D 40 00 40 40 2E 5C 04 41
-44 44 58 00 84 12 C2 5D 40 00 00 50 0E 5E 06 41
-44 44 58 2E 41 00 84 12 C2 5D 00 00 40 50 1E 5E
-06 41 44 44 58 2E 42 00 84 12 C2 5D 40 00 40 50
-30 5E 05 41 44 44 43 58 84 12 C2 5D 40 00 00 60
-42 5E 07 41 44 44 43 58 2E 41 84 12 C2 5D 00 00
-40 60 52 5E 07 41 44 44 43 58 2E 42 84 12 C2 5D
-40 00 40 60 3C 5C 05 53 55 42 43 58 84 12 C2 5D
-40 00 00 70 76 5E 07 53 55 42 43 58 2E 41 84 12
-C2 5D 00 00 40 70 86 5E 07 53 55 42 43 58 2E 42
-84 12 C2 5D 40 00 40 70 98 5E 04 53 55 42 58 00
-84 12 C2 5D 40 00 00 80 AA 5E 06 53 55 42 58 2E
-41 00 84 12 C2 5D 00 00 40 80 BA 5E 06 53 55 42
-58 2E 42 00 84 12 C2 5D 40 00 40 80 4A 5C 04 43
-4D 50 58 00 84 12 C2 5D 40 00 00 90 DE 5E 06 43
-4D 50 58 2E 41 00 84 12 C2 5D 00 00 40 90 EE 5E
-06 43 4D 50 58 2E 42 00 84 12 C2 5D 40 00 40 90
-D6 59 05 44 41 44 44 58 84 12 C2 5D 40 00 00 A0
-12 5F 07 44 41 44 44 58 2E 41 84 12 C2 5D 00 00
-40 A0 22 5F 07 44 41 44 44 58 2E 42 84 12 C2 5D
-40 00 40 A0 00 5F 04 42 49 54 58 00 84 12 C2 5D
-40 00 00 B0 46 5F 06 42 49 54 58 2E 41 00 84 12
-C2 5D 00 00 40 B0 56 5F 06 42 49 54 58 2E 42 00
-84 12 C2 5D 40 00 40 B0 68 5F 04 42 49 43 58 00
-84 12 C2 5D 40 00 00 C0 7A 5F 06 42 49 43 58 2E
-41 00 84 12 C2 5D 00 00 40 C0 8A 5F 06 42 49 43
-58 2E 42 00 84 12 C2 5D 40 00 40 C0 9C 5F 04 42
-49 53 58 00 84 12 C2 5D 40 00 00 D0 AE 5F 06 42
-49 53 58 2E 41 00 84 12 C2 5D 00 00 40 D0 BE 5F
-06 42 49 53 58 2E 42 00 84 12 C2 5D 40 00 40 D0
-7C 57 04 58 4F 52 58 00 84 12 C2 5D 40 00 00 E0
-E2 5F 06 58 4F 52 58 2E 41 00 84 12 C2 5D 00 00
-40 E0 F2 5F 06 58 4F 52 58 2E 42 00 84 12 C2 5D
-40 00 40 E0 64 5E 04 41 4E 44 58 00 84 12 C2 5D
-40 00 00 F0 16 60 06 41 4E 44 58 2E 41 00 84 12
-C2 5D 00 00 40 F0 26 60 06 41 4E 44 58 2E 42 00
-84 12 C2 5D 40 00 40 F0 14 48 C4 1D EA 44 86 44
-42 4B DA 5C A2 5D 3C 46 A2 57 CC 5E 04 52 52 43
-58 00 84 12 48 60 40 00 00 10 5C 60 06 52 52 43
-58 2E 41 00 84 12 48 60 00 00 40 10 6C 60 06 52
-52 43 58 2E 42 00 84 12 48 60 40 00 40 10 7E 60
-04 52 52 55 58 00 84 12 48 60 40 01 00 10 90 60
-06 52 52 55 58 2E 41 00 84 12 48 60 00 01 40 10
-A0 60 06 52 52 55 58 2E 42 00 84 12 48 60 40 01
-40 10 B2 60 05 53 57 50 42 58 84 12 48 60 40 00
-80 10 C4 60 07 53 57 50 42 58 2E 41 84 12 48 60
-00 00 80 10 D4 60 04 52 52 41 58 00 84 12 48 60
-40 00 00 11 E6 60 06 52 52 41 58 2E 41 00 84 12
-48 60 00 00 40 11 F6 60 06 52 52 41 58 2E 42 00
-84 12 48 60 40 00 40 11 08 61 04 53 58 54 58 00
-84 12 48 60 40 00 80 11 1A 61 06 53 58 54 58 2E
-41 00 84 12 48 60 00 00 80 11 92 59 05 50 55 53
-48 58 84 12 48 60 40 00 00 12 3C 61 07 50 55 53
-48 58 2E 41 84 12 48 60 00 00 40 12 4C 61 07 50
-55 53 48 58 2E 42 84 12 48 60 40 00 40 12 00 00
-2A 61 03 52 50 54 87 12 42 4B 74 48 7E 61 29 4E
-7E 40 20 00 79 90 52 00 06 20 B0 12 14 55 03 24
-3E D0 80 00 05 3C B0 12 BA 54 1E 83 3E F0 0F 00
-82 4E 6E 61 3E 4F 3D 41 30 4D
+E8 05 92 C3 E0 05 3F 40 80 1C 30 12 D4 4F 3C 3F
+24 4D 86 5B 54 48 45 4E 5D 00 30 4D 0C 4E 38 4F
+3B 4F 39 4F 0E 4B 0E 5C 10 24 1B 83 06 30 1C 83
+04 30 19 53 F9 98 FF FF F5 27 2D 4D 3E 4F 30 4D
+2F 53 9F 83 00 00 F9 23 2F 53 2D 53 F7 3F 32 51
+86 5B 45 4C 53 45 5D 00 0D 12 87 12 24 44 00 00
+AA 46 70 4A F2 47 62 4A 68 46 4C 44 CA 51 70 46
+2E 44 06 5B 54 48 45 4E 5D 00 3C 51 A4 51 60 51
+82 51 26 47 70 46 2E 44 06 5B 45 4C 53 45 5D 00
+3C 51 BA 51 60 51 80 51 26 47 2E 44 04 5B 49 46
+5D 00 3C 51 82 51 48 44 80 51 22 46 2E 44 05 0D
+0A 6B 6F 20 00 46 D4 44 C4 44 48 44 82 51 70 51
+84 5B 49 46 5D 00 0E 93 3E 4F C6 27 30 4D 2F 53
+30 4D E0 51 89 5B 44 45 46 49 4E 45 44 5D 0D 12
+87 12 70 4A F2 47 4A 48 EE 51 26 47 F4 51 8B 5B
+55 4E 44 45 46 49 4E 45 44 5D 0D 12 87 12 FE 51
+22 52 3D 41 30 40 B6 46 38 40 C0 1D 0A 4E 39 48
+2E 48 09 5E 1E 52 C4 1D 09 9E 03 24 7A 9E FC 27
+1E 83 0A 4E 2A 88 82 4A C4 1D 30 4D 1C 15 87 12
+F2 47 4A 48 42 44 60 52 06 49 4C 44 00 4C 7A 52
+62 52 39 4E 39 80 86 12 08 24 19 53 02 20 2E 4E
+04 3C 2E 53 19 53 01 24 2E 82 1B 17 30 41 3E 40
+28 00 B0 12 4C 52 19 42 C6 1D A2 53 C6 1D 89 4E
+00 00 3E 40 29 00 1C 15 12 12 C4 1D 92 53 C4 1D
+87 12 F2 47 06 49 4C 44 B6 52 AC 52 21 53 3E 90
+10 00 80 2D E2 2B B8 52 B2 41 C4 1D DE 3F 0D 12
+87 12 70 4A 28 52 C8 52 0C 43 1B 42 C6 1D A2 53
+C6 1D 6A 4E 3E 4F 7A 90 23 00 27 20 92 53 C4 1D
+B0 12 4C 52 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 C6 1D A2 53 C6 1D
+89 4E 00 00 3E 4F 3D 41 30 4D 7A 90 26 00 07 20
+3C 40 10 02 92 53 C4 1D B0 12 4C 52 ED 3F 7A 90
+40 00 16 20 3C 40 20 00 92 53 C4 1D B0 12 96 52
+0C 20 3C 50 10 00 3E 40 2B 00 B0 12 96 52 92 92
+C0 1D C4 1D 02 24 92 53 C4 1D 8E 10 0C 5E DA 3F
+B0 12 96 52 FA 23 3C 50 10 00 B0 12 7E 52 EF 3F
+0C 43 1B 42 C6 1D A2 53 C6 1D 0D 12 87 12 70 4A
+28 52 94 53 FE 90 26 00 00 00 3E 40 20 00 03 20
+3C 50 82 00 C7 3F B0 12 96 52 E0 23 3C 50 80 00
+B0 12 7E 52 DB 3F 00 00 04 52 45 54 49 00 0D 12
+87 12 24 44 00 13 F8 49 26 47 24 44 2C 00 BE 52
+8A 53 D4 53 09 4B 2E 4E 0E DC A2 3F F6 4D 03 4D
+4F 56 84 12 CA 53 00 40 DE 53 05 4D 4F 56 2E 42
+84 12 CA 53 40 40 00 00 03 41 44 44 84 12 CA 53
+00 50 F8 53 05 41 44 44 2E 42 84 12 CA 53 40 50
+04 54 04 41 44 44 43 00 84 12 CA 53 00 60 12 54
+06 41 44 44 43 2E 42 00 84 12 CA 53 40 60 B8 53
+04 53 55 42 43 00 84 12 CA 53 00 70 30 54 06 53
+55 42 43 2E 42 00 84 12 CA 53 40 70 3E 54 03 53
+55 42 84 12 CA 53 00 80 4E 54 05 53 55 42 2E 42
+84 12 CA 53 40 80 D2 4D 03 43 4D 50 84 12 CA 53
+00 90 68 54 05 43 4D 50 2E 42 84 12 CA 53 40 90
+BE 4D 04 44 41 44 44 00 84 12 CA 53 00 A0 82 54
+06 44 41 44 44 2E 42 00 84 12 CA 53 40 A0 74 54
+03 42 49 54 84 12 CA 53 00 B0 A0 54 05 42 49 54
+2E 42 84 12 CA 53 40 B0 AC 54 03 42 49 43 84 12
+CA 53 00 C0 BA 54 05 42 49 43 2E 42 84 12 CA 53
+40 C0 C6 54 03 42 49 53 84 12 CA 53 00 D0 D4 54
+05 42 49 53 2E 42 84 12 CA 53 40 D0 00 00 03 58
+4F 52 84 12 CA 53 00 E0 EE 54 05 58 4F 52 2E 42
+84 12 CA 53 40 E0 20 54 03 41 4E 44 84 12 CA 53
+00 F0 08 55 05 41 4E 44 2E 42 84 12 CA 53 40 F0
+70 4A BE 52 26 55 0A 4C 3C F0 70 00 8A 10 3A F0
+0F 00 0C DA 4F 3F 5A 54 03 52 52 43 84 12 20 55
+00 10 38 55 05 52 52 43 2E 42 84 12 20 55 40 10
+44 55 04 53 57 50 42 00 84 12 20 55 80 10 52 55
+03 52 52 41 84 12 20 55 00 11 60 55 05 52 52 41
+2E 42 84 12 20 55 40 11 6C 55 03 53 58 54 84 12
+20 55 80 11 00 00 04 50 55 53 48 00 84 12 20 55
+00 12 86 55 06 50 55 53 48 2E 42 00 84 12 20 55
+40 12 E0 54 04 43 41 4C 4C 00 84 12 20 55 80 12
+1A 53 0E 4A 0D 12 87 12 9C 47 2E 44 0D 6F 75 74
+20 6F 66 20 62 6F 75 6E 64 73 7A 4B 70 4A 28 52
+D2 55 92 53 C4 1D 3E 40 2C 00 87 12 F2 47 06 49
+4C 44 00 4C 80 53 E8 55 0A 4E 3E 4F 1A 83 E0 33
+29 4E 59 0E 0A 28 08 4C 59 0A 01 28 0C 8A 08 8A
+38 90 10 00 D5 2F 5A 0E 94 3F 2A 92 D1 2F 8A 10
+5A 06 8F 3F 7A 55 04 52 52 43 4D 00 84 12 CC 55
+50 00 16 56 04 52 52 41 4D 00 84 12 CC 55 50 01
+24 56 04 52 4C 41 4D 00 84 12 CC 55 50 02 32 56
+04 52 52 55 4D 00 84 12 CC 55 50 03 94 55 05 50
+55 53 48 4D 84 12 CC 55 00 15 4E 56 04 50 4F 50
+4D 00 84 12 CC 55 00 17 40 56 03 53 3E 3D 85 12
+00 38 6A 56 02 53 3C 00 85 12 00 34 5C 56 03 30
+3E 3D 85 12 00 30 7E 56 02 30 3C 00 85 12 00 30
+00 00 02 55 3C 00 85 12 00 2C 92 56 03 55 3E 3D
+85 12 00 28 88 56 03 30 3C 3E 85 12 00 24 A6 56
+02 30 3D 00 85 12 00 20 00 00 02 49 46 00 1A 42
+C6 1D 8A 4E 00 00 A2 53 C6 1D 0E 4A 30 4D 9C 56
+04 54 48 45 4E 00 1A 42 C6 1D 08 4E 3E 4F 09 48
+29 53 0A 89 0A 11 3A 90 00 02 63 2F 88 DA 00 00
+30 4D 90 54 04 45 4C 53 45 00 1A 42 C6 1D BA 40
+00 3C 00 00 A2 53 C6 1D 2F 83 8F 4A 00 00 E3 3F
+D0 56 05 55 4E 54 49 4C 3A 4F 08 4E 3E 4F 19 42
+C6 1D 2A 83 0A 89 0A 11 3A 90 00 FE 42 3B 3A F0
+FF 03 08 DA 89 48 00 00 A2 53 C6 1D 30 4D 14 55
+05 41 47 41 49 4E 0A 4E 38 40 00 3C E7 3F 00 00
+05 57 48 49 4C 45 0D 12 87 12 BE 56 82 46 26 47
+74 56 06 52 45 50 45 41 54 00 0D 12 87 12 46 57
+D6 56 26 47 76 57 3D 41 08 4E 3E 4F 2A 48 B2 92
+C4 1D CB 2F 98 42 C6 1D 00 00 30 4D A4 55 03 42
+57 31 84 12 74 57 00 00 8E 57 03 42 57 32 84 12
+74 57 00 00 9A 57 03 42 57 33 84 12 74 57 00 00
+B2 57 3D 41 1A 42 C6 1D 28 4E B2 92 C4 1D 8E 2B
+BA 4F 00 00 A2 53 C6 1D 8E 4A 00 00 3E 4F 30 4D
+00 00 03 46 57 31 84 12 B0 57 00 00 D2 57 03 46
+57 32 84 12 B0 57 00 00 DE 57 03 46 57 33 84 12
+B0 57 00 00 EA 57 04 47 4F 54 4F 00 2F 83 8F 4E
+00 00 3E 40 00 3C 0D 12 87 12 F0 4B 18 4A 26 47
+00 00 05 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
 @FFFE
-A2 52
+6E 50
 q
index 2eecb75..81cbfef 100644 (file)
 @1800
-10 00 08 00 00 D6 E8 03 05 00 18 00 98 61 D4 50
-2D 01 6F B0 B6 46 C8 46
+10 00 08 00 00 D6 E8 03 05 00 18 00 1C 58 88 4E
+2E 01 6B B0 06 45 18 45 D4 4F
 @4400
-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 3A 41 0D 12 0D 4A
-30 4D 00 00 04 45 58 49 54 00 3D 41 30 4D 24 44
-03 44 55 50 2F 83 8F 4E 00 00 30 4D 00 00 04 32
-44 55 50 00 8F 4E FE FF AF 4F FC FF 2F 82 30 4D
-00 00 04 3F 44 55 50 00 0E 93 EC 23 30 4D 30 44
-04 44 52 4F 50 00 3E 4F 30 4D 2F 53 30 4D 3E 44
-04 53 57 41 50 00 2A 4F 8F 4E 00 00 0E 4A 30 4D
-52 44 02 3E 52 00 0E 12 3E 4F 30 4D 70 44 02 52
-3E 00 2F 83 8F 4E 00 00 3E 41 30 4D 60 44 05 44
-45 50 54 48 8F 4E FE FF 3E 40 80 1C 0E 8F 0E 11
-2F 83 30 4D 00 00 01 2D 3E 8F 3E E3 1E 53 30 4D
-00 00 02 31 2B 00 1E 53 30 4D C2 44 02 31 2D 00
-1E 83 30 4D 3E F3 06 34 BF E3 00 00 3E E3 9F 53
-00 00 0E 63 30 4D 00 00 01 40 2E 4E 30 4D E8 44
-01 21 BE 4F 00 00 3E 4F 30 4D CC 44 02 30 3D 00
-1E 83 0E 7E 30 4D FC 44 02 30 3C 00 0E 5E 0E 7E
-3E E3 30 4D 00 00 01 3D 3E 8F FA 27 0E F3 30 4D
-00 00 02 55 3C 00 3E 8F F9 2B 01 24 3E 43 30 4D
-16 45 02 3C 23 00 B2 40 B2 1D B2 1D 30 4D 0B 4E
+30 40 04 44 B0 12 06 45 12 D2 0A 18 F9 3F 39 40
+3A 00 29 83 B9 40 6E 50 C6 FF FB 23 B2 40 68 45
+E4 FF 30 41 2F 83 8F 4E 00 00 3E 4D 30 4D 2F 82
+8F 4E 02 00 7E 4D 8F 4D 00 00 0D 5E 1D B3 0D 63
+30 4D 0E 93 3E 4F 05 24 2D 4D 30 4D 0E 93 3E 4F
+FB 27 2D 53 30 4D 39 40 00 80 39 8F 08 4E 3E 4F
+08 59 19 15 30 4D 81 5E 00 00 3E 4F 32 B0 00 01
+EB 27 21 52 2D 53 30 4D 91 53 00 00 F7 3F 0B 4E
 1C 4F 02 00 2E 4F 0A 43 34 40 20 00 0E 93 04 20
 04 11 0E 4C 0C 43 09 43 0A 9B 01 28 0A 8B 09 69
 08 68 14 83 07 30 0C 5C 0E 6E 0A 6A F5 2B 0A 8B
-12 D3 F5 3F 34 40 00 44 8F 4A 02 00 8F 49 00 00
-0E 48 30 41 00 00 01 23 1B 42 DC 1D 2C 4F 2F 83
-B0 12 46 45 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 86 45 02 23 53 00 87 12 88 45 C0 45
-2D 83 09 93 E3 23 0E 93 E1 23 3D 41 30 4D B6 45
-02 23 3E 00 9F 42 B2 1D 00 00 3E 40 B2 1D 2E 8F
-30 4D 00 00 04 48 4F 4C 44 00 0A 4E 3E 4F DB 3F
-8E 44 04 53 49 47 4E 00 0E 93 3E 4F 3A 40 2D 00
-D2 33 30 4D 87 12 36 45 34 44 86 44 D4 44 BA 45
-92 44 F8 45 D4 45 D6 47 42 4B 82 47 2A 44 22 45
-02 55 2E 00 08 43 2F 83 8F 4E 00 00 0E 48 EA 3F
-00 00 01 2E 0E 93 F6 37 38 43 F5 3F 2D 4D 30 4D
-0E 93 3E 4F FB 27 2D 53 30 4D 0E 93 3E 4F F6 23
-2D 53 30 4D 39 40 00 80 39 8F 08 4E 3E 4F 08 59
-19 15 30 4D 81 5E 00 00 3E 4F 32 B0 00 01 E6 27
-2D 53 21 52 30 4D 91 53 00 00 F7 3F E4 45 01 49
-2F 83 8F 4E 00 00 2E 41 1E 81 02 00 30 4D 00 00
-03 4B 45 59 30 40 98 46 18 42 EC 05 2F 83 8F 4E
-00 00 B0 12 B6 46 92 B3 FC 05 FD 27 1E 42 EC 05
-B0 12 C8 46 30 4D A2 B3 FC 05 FD 27 B2 40 11 00
-EE 05 D2 C3 22 02 30 41 B2 40 13 00 EE 05 D2 D3
-22 02 30 41 00 00 05 53 4C 45 45 50 30 40 E0 46
-B0 12 B6 46 12 D2 0A 18 F9 3F F0 44 06 41 43 43
-45 50 54 00 3C 40 64 47 3B 40 2E 47 2D 15 0A 4E
-2E 4F 0A 5E 3B 40 0D 00 3C 40 20 00 3D 40 58 47
-92 B3 FC 05 05 24 18 42 EC 05 38 90 0A 00 CB 23
-21 53 3D 15 DB 3F 21 52 3A 17 58 42 EC 05 48 9C
-08 2C 48 9B C9 27 78 92 11 20 2E 9F 0F 24 1E 83
-05 3C 0E 9A 03 24 CE 48 00 00 1E 53 A2 B3 FC 05
-FD 27 82 48 EE 05 30 4D 5A 47 2D 83 92 B3 FC 05
-E4 23 FC 27 82 93 DE 1D 02 24 92 53 DE 1D 3E 8F
-3D 41 B2 40 18 00 0A 18 30 4D 9E 44 04 45 4D 49
-54 00 30 40 86 47 08 4E 3E 4F E0 3F 3F 80 06 00
-8F 4E 04 00 3E 40 54 00 BF 40 3C 1D 00 00 AF 4F
-02 00 A8 3F 7C 47 04 45 43 48 4F 00 B2 40 82 48
-52 47 82 43 DE 1D 30 4D 32 46 06 4E 4F 45 43 48
-4F 00 B2 40 30 4D 52 47 92 43 DE 1D 30 4D 20 46
-04 54 59 50 45 00 0E 93 0F 24 1E 15 3D 40 EC 47
-28 4F 7E 48 8F 48 00 00 2F 83 CB 3F EE 47 2D 83
-91 83 02 00 F5 23 1D 17 2F 53 3E 4F 30 4D D0 45
-02 43 52 00 30 40 08 48 87 12 1E 48 02 0D 0A 00
-D6 47 2A 44 2F 83 8F 4E 00 00 3E 4D 30 4D 2F 82
-8F 4E 02 00 7E 4D 8F 4D 00 00 0D 5E 1D B3 0D 63
-30 4D F2 45 82 53 22 00 82 43 B4 1D 87 12 14 48
-1E 48 B0 4A 14 48 22 00 80 48 4C 48 B2 40 20 00
-B4 1D 6E 4E 1E 53 1E B3 82 6E C6 1D 3D 41 3E 4F
-30 4D BA 47 82 2E 22 00 87 12 38 48 14 48 D6 47
-B0 4A 2A 44 48 43 05 3C 00 00 04 57 4F 52 44 00
-48 4E 19 42 C0 1D 1A 42 C2 1D 09 5A 1A 52 C4 1D
-09 9A 03 24 7E 9A FC 27 1A 83 4E F8 06 20 0E 4A
-1A 82 C2 1D 82 4A C4 1D 30 4D 18 42 C6 1D 3B 40
-60 00 C8 4C 00 00 09 9A 0C 24 7C 4A 4E 9C 09 24
-18 53 4B 9C F6 2F 7C 90 7B 00 F3 2F 5C 82 B4 1D
-F0 3F 1A 82 C2 1D 82 4A C4 1D 1E 42 C6 1D 08 8E
-CE 48 00 00 30 4D 00 00 04 46 49 4E 44 00 2F 83
-0C 4E 65 4C 74 40 80 00 3B 40 CA 1D 3E 4B 0E 93
-1E 24 58 4C 01 00 78 F0 1E 00 0E 58 2E 53 1E 4E
-FE FF 0E 93 F3 27 09 4E 78 49 48 C4 48 95 F7 23
-0A 4C FA 99 01 00 F3 23 1A 53 58 83 FA 23 19 B3
-09 63 0C 49 6A 4E 1E 43 4A 93 01 30 2E 83 8F 4C
-00 00 35 40 0E 44 34 40 00 44 30 4D 82 44 07 3E
-4E 55 4D 42 45 52 3C 4F 38 4F 29 4F 2F 82 1B 42
-DC 1D 6A 4C 7A 80 30 00 7A 90 0A 00 05 28 7A 80
-07 00 7A 90 0A 00 12 28 0A 9B 22 C3 0F 2C 82 49
-D0 04 82 48 D2 04 82 4B C8 04 19 42 E4 04 18 42
-E6 04 09 5A 08 63 1C 53 1E 83 E3 23 8F 4C 00 00
-8F 48 02 00 8F 49 04 00 30 4D 32 C0 00 02 1B 42
-DC 1D 0C 43 2D 15 3D 40 F4 49 09 43 08 43 3F 82
-8F 4E 06 00 0C 4E 7E 4C 6A 4C 7A 90 2D 00 04 28
-C9 23 B1 43 02 00 DF 3F 2B 43 7A 80 25 00 07 24
-3B 52 6A 53 04 24 3B 40 10 00 5A 83 BA 23 1C 53
-1E 83 EA 3F F6 49 2F 24 2D 83 7A 90 28 00 CB 27
-32 D0 00 02 7A 90 F7 00 C6 27 7A 90 F5 00 23 20
-0A 4E 09 43 8F 49 02 00 5A 83 09 4A 09 5C 69 49
-79 80 30 00 79 90 0A 00 05 28 79 80 07 00 79 90
-0A 00 0A 28 09 9B 08 2C 8F 49 00 00 0E 4B 2C 15
-B0 12 3E 45 2A 17 E6 3F 9F 4F 04 00 02 00 AF 4F
-04 00 0E 4A 4E 93 2B 17 0E 4C 82 4B DC 1D 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 7E 46 04 48 45 52 45 00
-2F 83 8F 4E 00 00 1E 42 C6 1D 30 4D B6 44 01 2C
-1A 42 C6 1D 8A 4E 00 00 A2 53 C6 1D 3E 4F 30 4D
-EC 46 05 41 4C 4C 4F 54 82 5E C6 1D 3E 4F 30 4D
-A6 47 07 45 58 45 43 55 54 45 0A 4E 3E 4F 00 4A
-AE 4A 87 4C 49 54 45 52 41 4C 82 93 BE 1D 0C 24
-1A 42 C6 1D A2 52 C6 1D BA 40 14 48 00 00 8A 4E
-02 00 3E 4F 32 B0 00 02 32 C0 00 02 06 24 19 4A
-02 00 8A 4E 02 00 0E 49 EB 3F 30 4D 00 48 05 43
-4F 55 4E 54 2F 83 1E 53 8F 4E 00 00 5E 4E FF FF
-30 4D 82 4E C0 1D B2 4F C2 1D 3E 4F 82 43 C4 1D
-30 4D 85 12 20 00 87 12 32 4B 42 4B 80 48 50 4B
-3D 40 58 4B CC 22 82 3E 5A 4B 0A 4E 3E 4F 3D 40
-70 4B 23 27 3D 40 4A 4B 1A E2 BE 1D A1 27 B5 23
-72 4B 3E 4F 3D 40 4A 4B B8 23 DE 53 00 00 68 4E
-08 5E F8 40 3F 00 00 00 3D 40 26 4E CB 3F D2 4A
+12 D3 F5 3F 34 40 EC 44 8F 4A 02 00 8F 49 00 00
+0E 48 30 41 82 4E C0 1D B2 4F C2 1D 3E 4F 82 43
+C4 1D 30 4D 3F 80 06 00 8F 4E 04 00 3E 40 54 00
+BF 40 3C 1D 00 00 AF 4F 02 00 24 3C 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 A2 B3 FC 05 FD 27 B2 40 11 00
+EE 05 D2 C3 22 02 30 41 A2 B3 FC 05 FD 27 B2 40
+13 00 EE 05 D2 D3 22 02 30 41 00 00 06 41 43 43
+45 50 54 00 3C 40 A6 45 3B 40 70 45 2D 15 0A 4E
+2E 4F 0A 5E 3B 40 0D 00 3C 40 20 00 3D 40 9A 45
+92 B3 FC 05 05 24 18 42 EC 05 38 90 0A 00 D3 23
+21 53 3D 15 30 40 00 44 21 52 3A 17 58 42 EC 05
+48 9C 08 2C 48 9B D0 27 78 92 11 20 2E 9F 0F 24
+1E 83 05 3C 0E 9A 03 24 CE 48 00 00 1E 53 A2 B3
+FC 05 FD 27 82 48 EE 05 30 4D 9C 45 2D 83 92 B3
+FC 05 E4 23 FC 27 82 93 DE 1D 02 24 92 53 DE 1D
+3E 8F 3D 41 B2 40 18 00 0A 18 30 4D 00 00 04 45
+4D 49 54 00 30 40 C8 45 08 4E 3E 4F E0 3F BE 45
+04 45 43 48 4F 00 B2 40 82 48 94 45 82 43 DE 1D
+30 4D 00 00 06 4E 4F 45 43 48 4F 00 B2 40 30 4D
+94 45 92 43 DE 1D 30 4D 00 00 04 54 59 50 45 00
+0E 93 0F 24 1E 15 3D 40 16 46 28 4F 7E 48 8F 48
+00 00 2F 83 D7 3F 18 46 2D 83 91 83 02 00 F5 23
+1D 17 2F 53 3E 4F 30 4D 00 00 02 43 52 00 30 40
+32 46 0D 12 87 12 2E 44 02 0D 0A 00 00 46 26 47
+00 00 03 4B 45 59 30 40 4A 46 18 42 EC 05 2F 83
+8F 4E 00 00 B0 12 06 45 92 B3 FC 05 FD 27 1E 42
+EC 05 B0 12 18 45 30 4D 2F 83 8F 4E 00 00 30 4D
+8F 4E FE FF AF 4F FC FF 2F 82 30 4D 0E 93 F4 23
+30 4D 2A 4F 8F 4E 00 00 0E 4A 30 4D 8F 4E FE FF
+3E 40 80 1C 0E 8F 0E 11 2F 83 30 4D 2F 83 8F 4E
+00 00 3E 41 30 4D 3E 8F 3E E3 1E 53 30 4D BE 4F
+00 00 3E 4F 30 4D 1E 83 0E 7E 30 4D 0E 5E 0E 7E
+3E E3 30 4D 3E 8F 03 24 3E 43 01 2C 0E F3 30 4D
+00 00 02 3C 23 00 B2 40 B2 1D B2 1D 30 4D 2A 46
+01 23 1B 42 DC 1D 2C 4F 2F 83 B0 12 86 44 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 E0 46
+02 23 53 00 0D 12 87 12 E2 46 1C 47 2D 83 09 93
+E2 23 0E 93 E0 23 3D 41 30 4D 10 47 02 23 3E 00
+9F 42 B2 1D 00 00 3E 40 B2 1D 2E 8F 30 4D 00 00
+04 48 4F 4C 44 00 4A 4E 3E 4F DA 3F 00 00 04 53
+49 47 4E 00 0E 93 3E 4F 7A 40 2D 00 D1 33 30 4D
+FA 45 02 55 2E 00 08 43 2F 83 8F 4E 00 00 0E 48
+0D 12 0E 12 3E F3 06 34 BF E3 00 00 3E E3 9F 53
+00 00 0E 63 87 12 D6 46 14 47 9C 46 54 47 30 47
+00 46 70 4A C4 45 26 47 E4 45 01 2E 0E 93 E3 37
+38 43 E2 3F 4E 47 82 53 22 00 82 43 B4 1D 0D 12
+87 12 24 44 2E 44 F8 49 24 44 22 00 F2 47 C0 47
+B2 40 20 00 B4 1D 6E 4E 1E 53 1E B3 82 6E C6 1D
+3D 41 3E 4F 30 4D 9A 47 82 2E 22 00 0D 12 87 12
+AA 47 24 44 00 46 F8 49 26 47 00 00 04 57 4F 52
+44 00 3C 40 C0 1D 39 4C 3A 4C 09 5A 3A 5C 28 4C
+09 9A 15 24 7E 9A FC 27 1A 83 3B 40 60 00 C8 4C
+00 00 09 9A 0C 24 7C 4A 4E 9C 09 24 18 53 4B 9C
+F6 2F 7C 90 7B 00 F3 2F 5C 82 B4 1D F0 3F 1A 82
+C2 1D 82 4A C4 1D 1E 42 C6 1D 08 8E CE 48 00 00
+30 4D 00 00 04 46 49 4E 44 00 2F 83 0C 4E 65 4C
+74 40 80 00 3B 40 CA 1D 3E 4B 0E 93 1E 24 58 4C
+01 00 78 F0 1E 00 0E 58 2E 53 1E 4E FE FF 0E 93
+F3 27 09 4E 78 49 48 C4 48 95 F7 23 0A 4C FA 99
+01 00 F3 23 1A 53 58 83 FA 23 19 B3 09 63 0C 49
+6A 4E 1E 43 4A 93 01 30 2E 83 8F 4C 00 00 35 40
+FA 44 34 40 EC 44 30 4D 00 00 07 3E 4E 55 4D 42
+45 52 3C 4F 38 4F 29 4F 2F 82 1B 42 DC 1D 6A 4C
+7A 80 30 00 7A 90 0A 00 05 28 7A 80 07 00 7A 90
+0A 00 12 28 0A 9B 22 C3 0F 2C 82 49 D0 04 82 48
+D2 04 82 4B C8 04 19 42 E4 04 18 42 E6 04 09 5A
+08 63 1C 53 1E 83 E3 23 8F 4C 00 00 8F 48 02 00
+8F 49 04 00 30 4D 32 C0 00 02 1B 42 DC 1D 0C 43
+2D 15 3D 40 50 49 09 43 08 43 3F 82 8F 4E 06 00
+0C 4E 7E 4C 6A 4C 7A 90 2D 00 04 28 C9 23 B1 43
+02 00 0B 3C 2B 43 7A 80 25 00 07 24 3B 52 6A 53
+04 24 3B 40 10 00 5A 83 BA 23 1C 53 1E 83 EA 3F
+52 49 2F 24 2D 83 7A 90 28 00 CB 27 32 D0 00 02
+7A 90 F7 00 C6 27 7A 90 F5 00 23 20 0A 4E 09 43
+8F 49 02 00 5A 83 09 4A 09 5C 69 49 79 80 30 00
+79 90 0A 00 05 28 79 80 07 00 79 90 0A 00 0A 28
+09 9B 08 2C 8F 49 00 00 0E 4B 2C 15 B0 12 7E 44
+2A 17 E6 3F 9F 4F 04 00 02 00 AF 4F 04 00 0E 4A
+4E 93 2B 17 0E 4C 82 4B DC 1D 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 00 00 01 2C 1A 42 C6 1D 8A 4E 00 00
+A2 53 C6 1D 3E 4F 30 4D 2C 45 05 41 4C 4C 4F 54
+82 5E C6 1D 3E 4F 30 4D 0A 4E 3E 4F 00 4A F6 49
+87 4C 49 54 45 52 41 4C 82 93 BE 1D 0C 24 1A 42
+C6 1D A2 52 C6 1D BA 40 24 44 00 00 8A 4E 02 00
+3E 4F 32 B0 00 02 32 C0 00 02 06 24 19 4A 02 00
+8A 4E 02 00 0E 49 EB 3F 30 4D 2C 47 05 43 4F 55
+4E 54 2F 83 1E 53 8F 4E 00 00 5E 4E FF FF 30 4D
+85 12 20 00 0D 12 87 12 C4 44 70 4A F2 47 80 4A
+3D 40 88 4A E2 22 A4 26 8A 4A 0A 4E 3E 4F 3D 40
+A0 4A 39 27 3D 40 7A 4A 1A E2 BE 1D BD 23 AC 27
+A2 4A 3E 4F 3D 40 7A 4A BF 23 DE 53 00 00 68 4E
+08 5E F8 40 3F 00 00 00 3D 40 20 4D D2 3F D0 45
 08 45 56 41 4C 55 41 54 45 00 39 40 C0 1D 3C 49
-3B 49 3A 49 3D 15 B0 12 2A 44 46 4B AE 4B B2 41
-C4 1D B2 41 C2 1D B2 41 C0 1D 3D 41 30 4D 85 12
-BE 1D 08 45 04 51 55 49 54 00 82 43 08 18 31 40
-E0 1C B2 40 00 1C 00 1C 82 43 BE 1D B0 12 2A 44
-04 48 8C 47 42 4B 82 47 46 4B A4 44 0C 45 1E 48
-0C 73 74 61 63 6B 20 65 6D 70 74 79 21 00 40 4C
-14 48 30 FF A0 4A 26 45 1E 48 0A 46 52 41 4D 20
-66 75 6C 6C 21 00 40 4C 3C 46 E0 4B C2 4A 05 41
-42 4F 52 54 3F 40 80 1C D0 3F 1E 4C 86 41 42 4F
-52 54 22 00 87 12 38 48 14 48 40 4C B0 4A 2A 44
-8F 93 02 00 03 20 2F 52 3E 4F 30 4D B0 12 CC 51
-B0 12 B6 46 92 C3 FC 05 38 40 AA 0A 39 42 03 43
-19 83 FD 23 18 83 FA 23 92 B3 FC 05 F3 23 87 12
-46 51 14 48 DE 1D EA 44 AC 47 1E 48 04 1B 5B 37
-6D 00 D6 47 58 44 40 46 9A 4C 04 48 1E 48 05 6C
-69 6E 65 3A D6 47 D0 44 24 46 D6 47 1E 48 04 1B
-5B 30 6D 00 D6 47 24 4C 00 00 83 5B 27 5D 87 12
-C0 4C 14 48 14 48 B0 4A B0 4A 2A 44 E8 48 01 27
-87 12 42 4B 80 48 EE 48 40 46 CE 4C 2A 44 7A 4B
-32 45 81 5C 92 42 C0 1D C4 1D 30 4D AA 4C 81 5B
-82 43 BE 1D 30 4D D2 4C 01 5D B2 43 BE 1D 30 4D
-BE 4F 02 00 3E 4F 30 4D 9A 4A 82 49 53 00 87 12
-BE 4B EA 44 40 46 12 4D AE 4C 14 48 F0 4C B0 4A
-2A 44 C0 4C F0 4C 2A 44 FA 4C 09 49 4D 4D 45 44
-49 41 54 45 1A 42 B6 1D FA D0 80 00 00 00 30 4D
-C4 4B 88 50 4F 53 54 50 4F 4E 45 00 87 12 42 4B
-80 48 EE 48 58 44 40 46 CE 4C 0C 45 40 46 5C 4D
-14 48 14 48 B0 4A B0 4A 14 48 B0 4A B0 4A 2A 44
-DE 4C 81 3B 82 93 BE 1D B5 27 87 12 14 48 2A 44
-B0 4A FA 4D E0 4C 2A 44 62 4D 07 3A 4E 4F 4E 41
-4D 45 30 12 A0 4D 2F 83 8F 4E 00 00 1E 42 C6 1D
-1E B3 0E 63 0A 4E 39 40 00 02 38 40 02 02 21 3C
-BA 40 87 12 FC FF A2 83 C6 1D B2 43 BE 1D 30 4D
-7A 4D 01 3A 30 12 A0 4D 92 B3 C6 1D A2 63 C6 1D
-87 12 42 4B 80 48 C8 4D 3D 41 08 4E 7A 4E 5A D3
-5A 53 0A 58 19 42 DA 1D 6E 4E 3E F0 1E 00 09 5E
-3E 4F 82 48 B6 1D 82 49 B8 1D 82 4A BA 1D 82 4F
-BC 1D 2A 52 82 4A C6 1D 30 41 82 9F BC 1D 09 20
-18 42 B6 1D 19 42 B8 1D A8 49 FE FF 89 48 00 00
-30 4D 87 12 1E 48 0F 73 74 61 63 6B 20 6D 69 73
-6D 61 74 63 68 21 4C 4C 90 4B 05 44 45 46 45 52
-B0 12 B8 4D BA 40 30 40 FC FF BA 40 AE 4D FE FF
-E3 3F 1E 4B 06 43 52 45 41 54 45 00 B0 12 B8 4D
-BA 40 85 12 FC FF 8A 4A FE FF D6 3F 2A 4E 05 44
-4F 45 53 3E 1A 42 BA 1D BA 40 84 12 00 00 8A 4D
-02 00 3D 41 30 4D 4E 49 05 3E 42 4F 44 59 2E 52
-30 4D 44 4E 04 43 4F 44 45 00 B0 12 B8 4D 82 43
-5C 61 A2 82 C6 1D 87 12 D6 50 B0 50 2A 44 84 4E
-07 43 4F 44 45 4E 4E 4D B0 12 86 4D F0 3F 00 00
-07 45 4E 44 43 4F 44 45 87 12 E4 50 FA 4D 2A 44
-2C 4C 03 41 53 4D B2 40 B4 50 DA 1D DE 3F B0 4E
-06 45 4E 44 41 53 4D 00 87 12 B8 4E F8 50 2A 44
-00 00 05 43 4F 4C 4F 4E 1A 42 C6 1D BA 40 87 12
-00 00 A2 53 C6 1D B2 43 BE 1D 30 40 E4 50 00 00
-05 4C 4F 32 48 49 1A 42 C6 1D BA 40 B0 12 00 00
-BA 40 2A 44 02 00 A2 52 C6 1D ED 3F 1A 4D 85 48
-49 32 4C 4F 87 12 A0 4A 4E 4F B0 4A E0 4C D6 50
-B0 50 2A 44 1E 4F 82 49 46 00 2F 83 8F 4E 00 00
-1E 42 C6 1D A2 52 C6 1D BE 40 40 46 00 00 2E 53
-30 4D 5E 4E 84 45 4C 53 45 00 A2 52 C6 1D 1A 42
-C6 1D BA 40 3C 46 FC FF 8E 4A 00 00 2A 83 0E 4A
-30 4D D0 47 84 54 48 45 4E 00 9E 42 C6 1D 00 00
-3E 4F 30 4D A0 4E 85 42 45 47 49 4E 30 40 A0 4A
-74 4F 85 55 4E 54 49 4C 39 40 40 46 A2 52 C6 1D
-1A 42 C6 1D 8A 49 FC FF 8A 4E FE FF 3E 4F 30 4D
-C2 4E 85 41 47 41 49 4E 39 40 3C 46 EF 3F 7A 48
-85 57 48 49 4C 45 87 12 3A 4F 76 44 2A 44 34 48
-86 52 45 50 45 41 54 00 87 12 B8 4F 7A 4F 2A 44
-54 4F 82 44 4F 00 2F 83 8F 4E 00 00 A2 53 C6 1D
-1E 42 C6 1D BE 40 54 46 FE FF A2 53 00 1C 1A 42
-00 1C 8A 43 00 00 30 4D E2 4A 84 4C 4F 4F 50 00
-39 40 76 46 A2 52 C6 1D 1A 42 C6 1D 8A 49 FC FF
-8A 4E FE FF 1E 42 00 1C A2 83 00 1C 2E 4E 0E 93
-03 24 8E 4A 00 00 F6 3F 3E 4F 30 4D 90 46 85 2B
-4C 4F 4F 50 39 40 64 46 E5 3F 0A 50 04 4D 4F 56
-45 00 0A 4E 38 4F 39 4F 3E 4F 0A 93 11 24 08 99
-0F 24 06 2C F8 49 00 00 18 53 1A 83 FB 23 30 4D
-08 5A 09 5A 19 83 18 83 E8 49 00 00 1A 83 FA 23
-30 4D 14 48 CA 1D F2 44 2A 44 84 12 82 50 B2 4F
-68 53 E2 4F BE 4C 36 4F 3E 50 7C 54 64 48 6A 51
-84 51 92 4F 04 52 00 00 4E 54 E8 4C 78 4E 00 00
-84 12 82 50 26 60 BE 5F 22 5F E6 5A 8A 59 00 00
-EA 5D 00 00 4C 61 60 61 E2 59 20 5A F2 5F 00 00
-00 00 C2 5A AE 50 3A 40 0C 00 39 40 CA 1D 38 40
-CC 1D C6 3F 3A 40 0E 00 39 40 CC 1D 38 40 CA 1D
-B9 3F 82 43 CC 1D 30 4D 92 42 CA 1D DA 1D 30 4D
-8A 50 F2 50 F8 50 08 51 3A 4E 82 4A C8 1D 2E 4E
-82 4E C6 1D 3D 40 10 00 09 4A 08 49 29 83 18 48
-FE FF 0E 98 FC 2B 89 48 00 00 1D 83 F6 23 2A 4A
-0A 93 F0 23 3E 4F 3D 41 30 4D 32 4D 09 50 57 52
-5F 53 54 41 54 45 84 12 00 51 D4 50 98 61 D0 4F
-09 52 53 54 5F 53 54 41 54 45 92 42 0E 18 4A 51
-92 42 0C 18 4C 51 EF 3F 3C 51 08 50 57 52 5F 48
-45 52 45 00 92 42 C8 1D 4A 51 92 42 C6 1D 4C 51
-30 4D 50 51 08 52 53 54 5F 48 45 52 45 00 92 42
-C8 1D 0E 18 92 42 C6 1D 0C 18 EC 3F C0 4F 04 57
-49 50 45 00 39 40 10 00 29 83 B9 43 80 FF FC 23
-B2 40 E0 46 DE 46 B2 40 0E 52 0C 52 B2 40 D4 50
-0E 18 B2 40 98 61 0C 18 30 12 5A 51 B2 40 86 47
-84 47 B2 40 08 48 06 48 B2 40 98 46 96 46 B2 40
-18 00 0A 18 37 40 1A 44 36 40 92 44 35 40 0E 44
-34 40 00 44 B2 40 0A 00 DC 1D B2 40 20 00 B4 1D
-30 41 9E 51 04 57 41 52 4D 00 30 40 0E 52 3D 40
-44 52 92 C3 30 01 1E 42 08 18 0E 93 12 24 F2 B0
-10 00 20 02 02 20 3E E3 1E 53 F2 D0 30 00 2A 02
-3E 90 0A 00 B7 27 3E 90 16 00 B4 2F 2E 93 83 27
-8C 2F 30 4D 1E 48 06 0D 1B 5B 37 6D 23 00 D6 47
-34 46 1E 48 19 46 61 73 74 46 6F 72 74 68 20 C2
-A9 4A 2E 4D 2E 54 68 6F 6F 72 65 6E 73 20 D6 47
-14 48 30 FF A0 4A B8 44 24 46 1E 48 0A 62 79 74
-65 73 20 66 72 65 65 00 3C 46 9A 4C 86 4F 04 43
-4F 4C 44 00 92 B3 EA 05 FD 23 B2 40 04 A5 20 01
-44 52 B2 40 88 5A 5C 01 B2 40 FE FF 02 02 B2 D3
+3B 49 3A 49 3D 15 87 12 74 4A DC 4A B2 41 C4 1D
+B2 41 C2 1D B2 41 C0 1D 3D 41 30 4D 85 12 BE 1D
+00 00 04 51 55 49 54 00 82 43 08 18 31 40 E0 1C
+B2 40 00 1C 00 1C 82 43 BE 1D 87 12 2E 46 D4 44
+70 4A C4 45 74 4A 8C 46 BC 46 2E 44 0C 73 74 61
+63 6B 20 65 6D 70 74 79 21 00 6E 4B 24 44 40 FF
+2A 4E C4 46 2E 44 0A 46 52 41 4D 20 66 75 6C 6C
+21 00 6E 4B 48 44 0C 4B 0A 4A 05 41 42 4F 52 54
+3F 40 80 1C D1 3F 4A 4B 86 41 42 4F 52 54 22 00
+0D 12 87 12 AA 47 24 44 6E 4B F8 49 26 47 8F 93
+02 00 03 20 2F 52 3E 4F 30 4D B0 12 96 4F B0 12
+06 45 92 C3 FC 05 18 42 06 18 39 40 20 00 19 83
+FE 23 18 83 FA 23 92 B3 FC 05 F3 23 0D 12 87 12
+10 4F 24 44 DE 1D 02 45 D6 45 2E 44 04 1B 5B 37
+6D 00 00 46 7C 46 4C 44 C8 4B 2E 46 2E 44 05 6C
+69 6E 65 3A 00 46 66 47 00 46 2E 44 04 1B 5B 30
+6D 00 00 46 50 4B 00 00 83 5B 27 5D 0D 12 87 12
+F0 4B 24 44 24 44 F8 49 F8 49 26 47 44 48 01 27
+0D 12 87 12 70 4A F2 47 4A 48 4C 44 00 4C 26 47
+AA 4A D2 46 81 5C 92 42 C0 1D C4 1D 30 4D D8 4B
+81 5B 82 43 BE 1D 30 4D 04 4C 01 5D B2 43 BE 1D
+30 4D F2 4A 88 50 4F 53 54 50 4F 4E 45 00 0D 12
+87 12 70 4A F2 47 4A 48 7C 46 4C 44 00 4C BC 46
+4C 44 50 4C 24 44 24 44 F8 49 F8 49 24 44 F8 49
+F8 49 26 47 40 47 09 49 4D 4D 45 44 49 41 54 45
+1A 42 B6 1D FA D0 80 00 00 00 30 4D 10 4C 01 3A
+30 12 B8 4C 92 B3 C6 1D A2 63 C6 1D 0D 12 87 12
+70 4A F2 47 86 4C 3D 41 08 4E 7A 4E 5A D3 5A 53
+0A 58 19 42 DA 1D 6E 4E 3E F0 1E 00 09 5E 3E 4F
+82 48 B6 1D 82 49 B8 1D 82 4A BA 1D 82 4F BC 1D
+2A 52 82 4A C6 1D 30 41 BA 40 0D 12 FC FF BA 40
+87 12 FE FF B2 43 BE 1D 30 4D 6E 4C 07 3A 4E 4F
+4E 41 4D 45 30 12 B8 4C 2F 83 8F 4E 00 00 1E 42
+C6 1D 1E B3 0E 63 0A 4E 39 40 10 02 38 40 12 02
+D7 3F 82 9F BC 1D 09 20 18 42 B6 1D 19 42 B8 1D
+A8 49 FE FF 89 48 00 00 30 4D 0D 12 87 12 2E 44
+0F 73 74 61 63 6B 20 6D 69 73 6D 61 74 63 68 21
+7A 4B CC 4C 81 3B 82 93 BE 1D 6D 27 0D 12 87 12
+24 44 26 47 F8 49 F2 4C 12 4C 26 47 5C 4A 06 43
+52 45 41 54 45 00 B0 12 74 4C BA 40 85 12 FC FF
+8A 4A FE FF D5 3F C0 4A 05 44 4F 45 53 3E 1A 42
+BA 1D BA 40 84 12 00 00 8A 4D 02 00 3D 41 30 4D
+3E 4D 04 43 4F 44 45 00 B0 12 74 4C A2 82 C6 1D
+0D 12 87 12 8A 4E 64 4E 26 47 72 4D 07 43 4F 44
+45 4E 4E 4D 30 12 7C 4D 9F 3F 00 00 07 45 4E 44
+43 4F 44 45 0D 12 87 12 F2 4C A4 4E 26 47 58 4B
+03 41 53 4D B2 40 68 4E DA 1D DE 3F 9C 4D 06 45
+4E 44 41 53 4D 00 0D 12 87 12 A4 4D C2 4E 26 47
+00 00 05 43 4F 4C 4F 4E 1A 42 C6 1D BA 40 0D 12
+00 00 BA 40 87 12 02 00 A2 52 C6 1D B2 43 BE 1D
+30 40 A4 4E 00 00 05 4C 4F 32 48 49 A2 83 C6 1D
+1A 42 C6 1D EE 3F 56 4C 85 48 49 32 4C 4F 0D 12
+87 12 2A 4E 1E 4E F8 49 12 4C 80 4D 26 47 2E 53
+30 4D 8C 4D 85 42 45 47 49 4E 2F 83 8F 4E 00 00
+1E 42 C6 1D 30 4D 24 44 CA 1D AE 46 26 47 84 12
+36 4E B0 4D 5C 50 58 4D EE 4B 08 4E 42 46 20 4A
+D8 47 34 4F 4E 4F 62 47 CE 4F 00 00 FC 51 1A 4C
+AA 48 00 00 84 12 36 4E 2E 57 94 57 E2 56 E4 57
+A8 56 00 00 D8 53 00 00 9E 56 50 57 00 57 3E 57
+E8 54 00 00 00 00 00 58 62 4E 3A 40 0C 00 39 40
+D6 1D 08 49 28 53 19 83 18 83 E8 49 00 00 1A 83
+FA 23 30 4D 3A 40 0E 00 38 40 CA 1D 09 48 29 53
+F8 49 00 00 18 53 1A 83 FB 23 30 4D 82 43 CC 1D
+30 4D 92 42 CA 1D DA 1D 30 4D 3E 4E BC 4E C2 4E
+D2 4E 3A 4E 82 4A C8 1D 2E 4E 82 4E C6 1D 3D 40
+10 00 09 4A 08 49 29 83 18 48 FE FF 0E 98 FC 2B
+89 48 00 00 1D 83 F6 23 2A 4A 0A 93 F0 23 3E 4F
+3D 41 30 4D 24 4C 09 50 57 52 5F 53 54 41 54 45
+84 12 CA 4E 88 4E 1C 58 A6 47 09 52 53 54 5F 53
+54 41 54 45 92 42 0E 18 14 4F 92 42 0C 18 16 4F
+EF 3F 06 4F 08 50 57 52 5F 48 45 52 45 00 92 42
+C8 1D 14 4F 92 42 C6 1D 16 4F 30 4D 1A 4F 08 52
+53 54 5F 48 45 52 45 00 92 42 C8 1D 0E 18 92 42
+C6 1D 0C 18 EC 3F EC 47 04 57 49 50 45 00 39 40
+10 00 29 83 B9 43 80 FF FC 23 B2 40 04 44 02 44
+B2 40 D8 4F D6 4F B2 40 88 4E 0E 18 B2 40 1C 58
+0C 18 30 12 24 4F B2 40 C8 45 C6 45 B2 40 32 46
+30 46 B2 40 4A 46 48 46 B2 40 18 00 0A 18 37 40
+26 47 36 40 9C 46 35 40 FA 44 34 40 EC 44 B2 40
+0A 00 DC 1D B2 40 20 00 B4 1D 30 41 68 4F 04 57
+41 52 4D 00 30 40 D8 4F 3D 40 12 50 92 C3 30 01
+1E 42 08 18 0E 93 14 24 F2 B0 10 00 20 02 02 20
+3E E3 1E 53 F2 D0 30 00 2A 02 92 D3 FA 05 3E 90
+0A 00 B5 27 3E 90 16 00 B2 2F 2E 93 81 27 8A 2F
+30 4D 2E 44 07 0D 0A 1B 5B 37 6D 23 00 46 9C 47
+2E 44 19 46 61 73 74 46 6F 72 74 68 20 C2 A9 4A
+2E 4D 2E 54 68 6F 6F 72 65 6E 73 20 00 46 24 44
+40 FF 2A 4E A6 46 66 47 2E 44 0A 62 79 74 65 73
+20 66 72 65 65 00 48 44 C8 4B 24 4E 04 43 4F 4C
+44 00 92 B3 EA 05 FD 23 B2 40 04 A5 20 01 31 40
+E0 1C B2 40 88 5A 5C 01 B2 40 FE FF 02 02 B2 D3
 06 02 B2 43 26 02 B2 43 22 02 D2 D3 24 02 B2 43
 42 02 B2 43 46 02 B2 43 62 02 B2 43 66 02 B2 40
 7F FF 82 02 B2 43 86 02 F2 43 22 03 F2 43 26 03
@@ -244,238 +209,121 @@ F2 40 A5 00 61 01 82 43 62 01 82 43 66 01 39 40
 10 00 B2 40 33 00 64 01 D2 43 61 01 92 D2 9E 01
 08 18 38 40 59 14 18 83 FE 23 19 83 FA 23 B2 42
 B0 01 F2 D0 10 00 2A 03 F2 C0 40 00 A2 04 39 40
-00 08 29 83 89 43 00 1C FC 23 39 40 3A 00 29 83
-B9 40 A2 52 C6 FF FB 23 B2 40 26 47 E4 FF B2 40
+00 08 29 83 89 43 00 1C FC 23 B0 12 0E 44 B2 40
 81 00 E0 05 92 42 02 18 E6 05 92 42 04 18 E8 05
-92 C3 E0 05 92 D3 FA 05 3F 40 80 1C 31 40 E0 1C
-30 12 0A 52 3C 3F 8E 52 07 43 4F 4D 50 41 52 45
-0C 4E 38 4F 3B 4F 39 4F 0E 4B 0E 5C 0C 24 1B 83
-07 30 1C 83 07 30 19 53 F9 98 FF FF F5 27 02 2C
-3E 43 30 4D 1E 43 30 4D B2 4D 86 5B 54 48 45 4E
-5D 00 30 4D 9A 53 86 5B 45 4C 53 45 5D 00 87 12
-14 48 00 00 C6 44 42 4B 80 48 24 4B 34 44 40 46
-10 54 44 44 1E 48 06 5B 54 48 45 4E 5D 00 70 53
-4A 46 E0 53 F8 47 D0 44 58 44 4A 46 B6 53 2A 44
-44 44 1E 48 06 5B 45 4C 53 45 5D 00 70 53 4A 46
-FE 53 F8 47 D0 44 58 44 4A 46 B4 53 2A 44 1E 48
-04 5B 49 46 5D 00 70 53 4A 46 B6 53 3C 46 B4 53
-F8 47 1E 48 05 0D 0A 6B 6F 20 D6 47 8C 47 32 4B
-3C 46 B6 53 A6 53 84 5B 49 46 5D 00 0E 93 3E 4F
-BE 27 30 4D 26 54 89 5B 44 45 46 49 4E 45 44 5D
-87 12 42 4B 80 48 EE 48 6A 44 2A 44 36 54 8B 5B
-55 4E 44 45 46 49 4E 45 44 5D 87 12 42 4B 80 48
-EE 48 6A 44 00 45 2A 44 6A 54 3D 41 B2 4E 0E 18
-A2 4E 0C 18 3E 4F 30 40 5A 51 4C 50 06 4D 41 52
-4B 45 52 00 B0 12 B8 4D BA 40 84 12 FC FF BA 40
-68 54 FE FF 9A 42 C8 1D 00 00 28 83 8A 48 02 00
-A2 52 C6 1D 30 40 00 4E 1C 15 B0 12 2A 44 80 48
-EE 48 4A 46 BE 54 AA 49 40 46 CE 4C D8 54 C0 54
+92 C3 E0 05 3F 40 80 1C 30 12 D4 4F 45 3F 24 4D
+86 5B 54 48 45 4E 5D 00 30 4D 0C 4E 38 4F 3B 4F
+39 4F 0E 4B 0E 5C 10 24 1B 83 06 30 1C 83 04 30
+19 53 F9 98 FF FF F5 27 2D 4D 3E 4F 30 4D 2F 53
+9F 83 00 00 F9 23 2F 53 2D 53 F7 3F 20 51 86 5B
+45 4C 53 45 5D 00 0D 12 87 12 24 44 00 00 AA 46
+70 4A F2 47 62 4A 68 46 4C 44 B8 51 70 46 2E 44
+06 5B 54 48 45 4E 5D 00 2A 51 92 51 4E 51 70 51
+26 47 70 46 2E 44 06 5B 45 4C 53 45 5D 00 2A 51
+A8 51 4E 51 6E 51 26 47 2E 44 04 5B 49 46 5D 00
+2A 51 70 51 48 44 6E 51 22 46 2E 44 05 0D 0A 6B
+6F 20 00 46 D4 44 C4 44 48 44 70 51 5E 51 84 5B
+49 46 5D 00 0E 93 3E 4F C6 27 30 4D 2F 53 30 4D
+CE 51 89 5B 44 45 46 49 4E 45 44 5D 0D 12 87 12
+70 4A F2 47 4A 48 DC 51 26 47 E2 51 8B 5B 55 4E
+44 45 46 49 4E 45 44 5D 0D 12 87 12 EC 51 10 52
+3D 41 30 40 B6 46 38 40 C0 1D 0A 4E 39 48 2E 48
+09 5E 1E 52 C4 1D 09 9E 03 24 7A 9E FC 27 1E 83
+0A 4E 2A 88 82 4A C4 1D 30 4D 1C 15 87 12 F2 47
+4A 48 42 44 4E 52 06 49 4C 44 00 4C 68 52 50 52
 39 4E 39 80 86 12 08 24 19 53 02 20 2E 4E 04 3C
-2E 53 19 53 01 24 2E 82 1B 17 30 41 32 B0 00 02
-01 24 3E 4F 30 41 3E 40 28 00 B0 12 A8 54 B0 12
-DC 54 19 42 C6 1D A2 53 C6 1D 89 4E 00 00 3E 40
-29 00 1C 15 12 12 C4 1D 92 53 C4 1D B0 12 2A 44
-80 48 AA 49 40 46 24 55 1A 55 21 53 3E 90 10 00
-81 2D DA 2B 26 55 B2 41 C4 1D D6 3F 87 12 42 4B
-74 48 34 55 0C 43 1B 42 C6 1D A2 53 C6 1D 6A 4E
-3E 4F 7A 90 23 00 29 20 92 53 C4 1D B0 12 A8 54
-B0 12 DC 54 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 C6 1D A2 53 C6 1D
-89 4E 00 00 3E 4F 3D 41 30 4D 7A 90 26 00 09 20
-3C 40 10 02 92 53 C4 1D B0 12 A8 54 B0 12 DC 54
-EB 3F 7A 90 40 00 16 20 3C 40 20 00 92 53 C4 1D
-B0 12 02 55 0C 20 3C 50 10 00 3E 40 2B 00 B0 12
-02 55 92 92 C0 1D C4 1D 02 24 92 53 C4 1D 8E 10
-0C 5E D8 3F B0 12 02 55 FA 23 3C 50 10 00 B0 12
-E6 54 EF 3F 0C 43 1B 42 C6 1D A2 53 C6 1D 87 12
-42 4B 74 48 06 56 FE 90 26 00 00 00 3E 40 20 00
-03 20 3C 50 82 00 C6 3F B0 12 02 55 E1 23 3C 50
-80 00 B0 12 E6 54 DC 3F D6 46 04 52 45 54 49 00
-87 12 14 48 00 13 B0 4A 2A 44 14 48 2C 00 2C 55
-FE 55 44 56 09 4B 2E 4E 0E DC A2 3F 00 4F 03 4D
-4F 56 84 12 3A 56 00 40 4E 56 05 4D 4F 56 2E 42
-84 12 3A 56 40 40 00 00 03 41 44 44 84 12 3A 56
-00 50 68 56 05 41 44 44 2E 42 84 12 3A 56 40 50
-74 56 04 41 44 44 43 00 84 12 3A 56 00 60 82 56
-06 41 44 44 43 2E 42 00 84 12 3A 56 40 60 2A 56
-04 53 55 42 43 00 84 12 3A 56 00 70 A0 56 06 53
-55 42 43 2E 42 00 84 12 3A 56 40 70 AE 56 03 53
-55 42 84 12 3A 56 00 80 BE 56 05 53 55 42 2E 42
-84 12 3A 56 40 80 E2 4E 03 43 4D 50 84 12 3A 56
-00 90 D8 56 05 43 4D 50 2E 42 84 12 3A 56 40 90
-D0 4E 04 44 41 44 44 00 84 12 3A 56 00 A0 F2 56
-06 44 41 44 44 2E 42 00 84 12 3A 56 40 A0 E4 56
-03 42 49 54 84 12 3A 56 00 B0 10 57 05 42 49 54
-2E 42 84 12 3A 56 40 B0 1C 57 03 42 49 43 84 12
-3A 56 00 C0 2A 57 05 42 49 43 2E 42 84 12 3A 56
-40 C0 36 57 03 42 49 53 84 12 3A 56 00 D0 44 57
-05 42 49 53 2E 42 84 12 3A 56 40 D0 00 00 03 58
-4F 52 84 12 3A 56 00 E0 5E 57 05 58 4F 52 2E 42
-84 12 3A 56 40 E0 90 56 03 41 4E 44 84 12 3A 56
-00 F0 78 57 05 41 4E 44 2E 42 84 12 3A 56 40 F0
-42 4B 2C 55 96 57 0A 4C 3C F0 70 00 8A 10 3A F0
-0F 00 0C DA 4F 3F CA 56 03 52 52 43 84 12 90 57
-00 10 A8 57 05 52 52 43 2E 42 84 12 90 57 40 10
-B4 57 04 53 57 50 42 00 84 12 90 57 80 10 C2 57
-03 52 52 41 84 12 90 57 00 11 D0 57 05 52 52 41
-2E 42 84 12 90 57 40 11 DC 57 03 53 58 54 84 12
-90 57 80 11 00 00 04 50 55 53 48 00 84 12 90 57
-00 12 F6 57 06 50 55 53 48 2E 42 00 84 12 90 57
-40 12 50 57 04 43 41 4C 4C 00 84 12 90 57 80 12
-1A 53 0E 4A 87 12 34 46 1E 48 0D 6F 75 74 20 6F
-66 20 62 6F 75 6E 64 73 4C 4C 42 4B 74 48 40 58
-92 53 C4 1D 3E 40 2C 00 B0 12 2A 44 80 48 AA 49
-40 46 CE 4C F4 55 58 58 0A 4E 3E 4F 1A 83 E0 33
-29 4E 59 0E 0A 28 08 4C 59 0A 01 28 0C 8A 08 8A
-38 90 10 00 D5 2F 5A 0E 94 3F 2A 92 D1 2F 8A 10
-5A 06 8F 3F EA 57 06 52 52 43 4D 2E 41 00 84 12
-3A 58 40 00 86 58 04 52 52 43 4D 00 84 12 3A 58
-50 00 96 58 06 52 52 41 4D 2E 41 00 84 12 3A 58
-40 01 A4 58 04 52 52 41 4D 00 84 12 3A 58 50 01
-B4 58 06 52 4C 41 4D 2E 41 00 84 12 3A 58 40 02
-C2 58 04 52 4C 41 4D 00 84 12 3A 58 50 02 D2 58
-06 52 52 55 4D 2E 41 00 84 12 3A 58 40 03 E0 58
-04 52 52 55 4D 00 84 12 3A 58 50 03 04 58 07 50
-55 53 48 4D 2E 41 84 12 3A 58 00 14 FE 58 05 50
-55 53 48 4D 84 12 3A 58 00 15 0E 59 06 50 4F 50
-4D 2E 41 00 84 12 3A 58 00 16 1C 59 04 50 4F 50
-4D 00 84 12 3A 58 00 17 F0 58 03 53 3E 3D 85 12
-00 38 3A 59 02 53 3C 00 85 12 00 34 2C 59 03 30
-3E 3D 85 12 00 30 4E 59 02 30 3C 00 85 12 00 30
-00 00 02 55 3C 00 85 12 00 2C 62 59 03 55 3E 3D
-85 12 00 28 58 59 03 30 3C 3E 85 12 00 24 76 59
-02 30 3D 00 85 12 00 20 00 00 02 49 46 00 1A 42
-C6 1D 8A 4E 00 00 A2 53 C6 1D 0E 4A 30 4D 6C 59
-04 54 48 45 4E 00 1A 42 C6 1D 08 4E 3E 4F 09 48
-29 53 0A 89 0A 11 3A 90 00 02 33 2F 88 DA 00 00
-30 4D 00 57 04 45 4C 53 45 00 1A 42 C6 1D BA 40
-00 3C 00 00 A2 53 C6 1D 2F 83 8F 4A 00 00 E3 3F
-A0 59 05 55 4E 54 49 4C 3A 4F 08 4E 3E 4F 19 42
-C6 1D 2A 83 0A 89 0A 11 3A 90 00 FE 12 3B 3A F0
-FF 03 08 DA 89 48 00 00 A2 53 C6 1D 30 4D 84 57
-05 41 47 41 49 4E 0A 4E 38 40 00 3C E7 3F 00 00
-05 57 48 49 4C 45 87 12 8E 59 76 44 2A 44 44 59
-06 52 45 50 45 41 54 00 87 12 16 5A A6 59 2A 44
-42 5A 3D 41 08 4E 3E 4F 2A 48 B2 92 C4 1D CD 2F
-98 42 C6 1D 00 00 30 4D 14 58 03 42 57 31 84 12
-40 5A 00 00 5A 5A 03 42 57 32 84 12 40 5A 00 00
-66 5A 03 42 57 33 84 12 40 5A 00 00 7E 5A 3D 41
-1A 42 C6 1D 28 4E B2 92 C4 1D 90 2B BA 4F 00 00
-A2 53 C6 1D 8E 4A 00 00 3E 4F 30 4D 00 00 03 46
-57 31 84 12 7C 5A 00 00 9E 5A 03 46 57 32 84 12
-7C 5A 00 00 AA 5A 03 46 57 33 84 12 7C 5A 00 00
-00 00 05 3F 47 4F 54 4F 3E 90 00 30 07 24 3E E0
-00 04 3E B0 00 10 02 24 3E E0 00 08 87 12 C0 4C
-DA 4A 2A 44 B6 5A 04 47 4F 54 4F 00 2F 83 8F 4E
-00 00 3E 40 00 3C F2 3F 87 12 42 4B 74 48 00 5B
-69 4E 3E 4F 3C 4F 2C 4C 1B 42 C6 1D A2 53 C6 1D
-79 90 52 00 0A 20 B0 12 02 55 5E 0E 5E 0E 0E DC
-8B 4E 00 00 0E 4B 3D 41 30 4D 79 90 23 00 0D 20
-3C C0 40 00 92 53 C4 1D A2 53 C6 1D B0 12 A8 54
-BB 4F 02 00 3E F0 0F 00 E8 3F 79 90 26 00 03 20
-3C E0 E0 00 EF 3F 3C C0 F0 00 79 90 40 00 12 20
-92 53 C4 1D B0 12 02 55 D8 23 3C D0 10 00 3E 40
-2B 00 B0 12 02 55 92 92 C0 1D C4 1D CE 27 92 53
-C4 1D CB 3F 3C D0 30 00 A2 53 C6 1D 3E 40 28 00
-B0 12 A8 54 BB 4F 02 00 3E 40 29 00 EA 3F 87 12
-42 4B 74 48 A6 5B 3B 4F 2C 4B 69 4E 7E 40 20 00
-79 90 52 00 03 20 B0 12 02 55 B1 3F 3C C0 F0 00
-A2 53 C6 1D 79 90 26 00 09 20 3C D0 60 00 92 53
-C4 1D B0 12 A8 54 BB 4F 02 00 A1 3F 3C D0 70 00
-3E 40 28 00 B0 12 A8 54 BB 4F 02 00 3E 40 29 00
-E2 3F 14 48 2C 00 F8 5A 9E 5B 66 44 2A 44 5A 56
-04 4D 4F 56 41 00 84 12 F2 5B C0 00 72 5A 04 43
-4D 50 41 00 84 12 F2 5B D0 00 10 5A 04 41 44 44
-41 00 84 12 F2 5B E0 00 30 5A 04 53 55 42 41 00
-84 12 F2 5B F0 00 0E 5C 05 43 41 4C 4C 41 87 12
-42 4B 74 48 46 5C 1B 42 C6 1D A2 53 C6 1D 6E 4E
-3C 40 34 01 7E 90 52 00 0B 20 7E 40 20 00 B0 12
-02 55 5C 0E 0C DE 8B 4C 00 00 3E 4F 3D 41 30 4D
-2C 53 7E 90 40 00 0B 20 92 53 C4 1D 7E 40 20 00
-B0 12 02 55 EE 23 1C 53 3E 40 2B 00 E8 3F A2 53
-C6 1D 7E 90 23 00 09 20 3C 40 3B 01 92 53 C4 1D
-B0 12 A8 54 BB 4F 02 00 DC 3F 7E 90 26 00 02 20
-2C 53 F4 3F 7E 40 28 00 1C 83 B0 12 A8 54 BB 4F
-02 00 3E 40 29 00 CB 3F 87 12 42 4B 74 48 D0 5C
-69 4E 3E 4F 3C 40 00 18 79 90 52 00 05 20 B0 12
-02 55 0E 4C 3D 41 30 4D 82 43 5C 61 79 90 23 00
-0B 20 92 53 C4 1D B0 12 A8 54 2F 53 3E F0 0F 00
-5E 0A 5E 0E 0C DE ED 3F 79 90 26 00 F2 27 79 90
-40 00 12 20 92 53 C4 1D B0 12 02 55 E2 23 3E 40
-2B 00 92 53 C4 1D B0 12 02 55 92 92 C0 1D C4 1D
-D8 27 92 53 C4 1D D5 3F 3E 40 28 00 B0 12 A8 54
-8F 4E 00 00 3E 40 29 00 B0 12 02 55 3E 4F 3E F0
-0F 00 0C DE EA 3F 87 12 42 4B 74 48 5E 5D 3C 4F
-69 4E 3E 40 20 00 79 90 52 00 BB 27 82 43 5C 61
-79 90 26 00 08 20 92 53 C4 1D B0 12 A8 54 2F 53
-3E F0 0F 00 BF 3F 3E 40 28 00 B0 12 A8 54 F7 3F
-1B 42 C6 1D A2 53 C6 1D 0C 4E 3E 4F 1C D2 5C 61
-82 43 5C 61 3C DE 8B 4C 00 00 B2 41 C4 1D 30 4D
-14 48 C4 1D EA 44 86 44 14 48 2C 00 C8 5C 56 5D
-90 5D 3C 46 3A 56 00 5C 04 4D 4F 56 58 00 84 12
-B0 5D 40 00 00 40 C8 5D 06 4D 4F 56 58 2E 41 00
-84 12 B0 5D 00 00 40 40 D8 5D 06 4D 4F 56 58 2E
-42 00 84 12 B0 5D 40 00 40 40 1C 5C 04 41 44 44
-58 00 84 12 B0 5D 40 00 00 50 FC 5D 06 41 44 44
-58 2E 41 00 84 12 B0 5D 00 00 40 50 0C 5E 06 41
-44 44 58 2E 42 00 84 12 B0 5D 40 00 40 50 1E 5E
-05 41 44 44 43 58 84 12 B0 5D 40 00 00 60 30 5E
-07 41 44 44 43 58 2E 41 84 12 B0 5D 00 00 40 60
-40 5E 07 41 44 44 43 58 2E 42 84 12 B0 5D 40 00
-40 60 2A 5C 05 53 55 42 43 58 84 12 B0 5D 40 00
-00 70 64 5E 07 53 55 42 43 58 2E 41 84 12 B0 5D
-00 00 40 70 74 5E 07 53 55 42 43 58 2E 42 84 12
-B0 5D 40 00 40 70 86 5E 04 53 55 42 58 00 84 12
-B0 5D 40 00 00 80 98 5E 06 53 55 42 58 2E 41 00
-84 12 B0 5D 00 00 40 80 A8 5E 06 53 55 42 58 2E
-42 00 84 12 B0 5D 40 00 40 80 38 5C 04 43 4D 50
-58 00 84 12 B0 5D 40 00 00 90 CC 5E 06 43 4D 50
-58 2E 41 00 84 12 B0 5D 00 00 40 90 DC 5E 06 43
-4D 50 58 2E 42 00 84 12 B0 5D 40 00 40 90 C4 59
-05 44 41 44 44 58 84 12 B0 5D 40 00 00 A0 00 5F
-07 44 41 44 44 58 2E 41 84 12 B0 5D 00 00 40 A0
-10 5F 07 44 41 44 44 58 2E 42 84 12 B0 5D 40 00
-40 A0 EE 5E 04 42 49 54 58 00 84 12 B0 5D 40 00
-00 B0 34 5F 06 42 49 54 58 2E 41 00 84 12 B0 5D
-00 00 40 B0 44 5F 06 42 49 54 58 2E 42 00 84 12
-B0 5D 40 00 40 B0 56 5F 04 42 49 43 58 00 84 12
-B0 5D 40 00 00 C0 68 5F 06 42 49 43 58 2E 41 00
-84 12 B0 5D 00 00 40 C0 78 5F 06 42 49 43 58 2E
-42 00 84 12 B0 5D 40 00 40 C0 8A 5F 04 42 49 53
-58 00 84 12 B0 5D 40 00 00 D0 9C 5F 06 42 49 53
-58 2E 41 00 84 12 B0 5D 00 00 40 D0 AC 5F 06 42
-49 53 58 2E 42 00 84 12 B0 5D 40 00 40 D0 6A 57
-04 58 4F 52 58 00 84 12 B0 5D 40 00 00 E0 D0 5F
-06 58 4F 52 58 2E 41 00 84 12 B0 5D 00 00 40 E0
-E0 5F 06 58 4F 52 58 2E 42 00 84 12 B0 5D 40 00
-40 E0 52 5E 04 41 4E 44 58 00 84 12 B0 5D 40 00
-00 F0 04 60 06 41 4E 44 58 2E 41 00 84 12 B0 5D
-00 00 40 F0 14 60 06 41 4E 44 58 2E 42 00 84 12
-B0 5D 40 00 40 F0 14 48 C4 1D EA 44 86 44 42 4B
-C8 5C 90 5D 3C 46 90 57 BA 5E 04 52 52 43 58 00
-84 12 36 60 40 00 00 10 4A 60 06 52 52 43 58 2E
-41 00 84 12 36 60 00 00 40 10 5A 60 06 52 52 43
-58 2E 42 00 84 12 36 60 40 00 40 10 6C 60 04 52
-52 55 58 00 84 12 36 60 40 01 00 10 7E 60 06 52
-52 55 58 2E 41 00 84 12 36 60 00 01 40 10 8E 60
-06 52 52 55 58 2E 42 00 84 12 36 60 40 01 40 10
-A0 60 05 53 57 50 42 58 84 12 36 60 40 00 80 10
-B2 60 07 53 57 50 42 58 2E 41 84 12 36 60 00 00
-80 10 C2 60 04 52 52 41 58 00 84 12 36 60 40 00
-00 11 D4 60 06 52 52 41 58 2E 41 00 84 12 36 60
-00 00 40 11 E4 60 06 52 52 41 58 2E 42 00 84 12
-36 60 40 00 40 11 F6 60 04 53 58 54 58 00 84 12
-36 60 40 00 80 11 08 61 06 53 58 54 58 2E 41 00
-84 12 36 60 00 00 80 11 80 59 05 50 55 53 48 58
-84 12 36 60 40 00 00 12 2A 61 07 50 55 53 48 58
-2E 41 84 12 36 60 00 00 40 12 3A 61 07 50 55 53
-48 58 2E 42 84 12 36 60 40 00 40 12 00 00 18 61
-03 52 50 54 87 12 42 4B 74 48 6C 61 29 4E 7E 40
-20 00 79 90 52 00 06 20 B0 12 02 55 03 24 3E D0
-80 00 05 3C B0 12 A8 54 1E 83 3E F0 0F 00 82 4E
-5C 61 3E 4F 3D 41 30 4D
+2E 53 19 53 01 24 2E 82 1B 17 30 41 3E 40 28 00
+B0 12 3A 52 19 42 C6 1D A2 53 C6 1D 89 4E 00 00
+3E 40 29 00 1C 15 12 12 C4 1D 92 53 C4 1D 87 12
+F2 47 06 49 4C 44 A4 52 9A 52 21 53 3E 90 10 00
+80 2D E2 2B A6 52 B2 41 C4 1D DE 3F 0D 12 87 12
+70 4A 16 52 B6 52 0C 43 1B 42 C6 1D A2 53 C6 1D
+6A 4E 3E 4F 7A 90 23 00 27 20 92 53 C4 1D B0 12
+3A 52 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 C6 1D A2 53 C6 1D 89 4E
+00 00 3E 4F 3D 41 30 4D 7A 90 26 00 07 20 3C 40
+10 02 92 53 C4 1D B0 12 3A 52 ED 3F 7A 90 40 00
+16 20 3C 40 20 00 92 53 C4 1D B0 12 84 52 0C 20
+3C 50 10 00 3E 40 2B 00 B0 12 84 52 92 92 C0 1D
+C4 1D 02 24 92 53 C4 1D 8E 10 0C 5E DA 3F B0 12
+84 52 FA 23 3C 50 10 00 B0 12 6C 52 EF 3F 0C 43
+1B 42 C6 1D A2 53 C6 1D 0D 12 87 12 70 4A 16 52
+82 53 FE 90 26 00 00 00 3E 40 20 00 03 20 3C 50
+82 00 C7 3F B0 12 84 52 E0 23 3C 50 80 00 B0 12
+6C 52 DB 3F 00 00 04 52 45 54 49 00 0D 12 87 12
+24 44 00 13 F8 49 26 47 24 44 2C 00 AC 52 78 53
+C2 53 09 4B 2E 4E 0E DC A2 3F F6 4D 03 4D 4F 56
+84 12 B8 53 00 40 CC 53 05 4D 4F 56 2E 42 84 12
+B8 53 40 40 00 00 03 41 44 44 84 12 B8 53 00 50
+E6 53 05 41 44 44 2E 42 84 12 B8 53 40 50 F2 53
+04 41 44 44 43 00 84 12 B8 53 00 60 00 54 06 41
+44 44 43 2E 42 00 84 12 B8 53 40 60 A6 53 04 53
+55 42 43 00 84 12 B8 53 00 70 1E 54 06 53 55 42
+43 2E 42 00 84 12 B8 53 40 70 2C 54 03 53 55 42
+84 12 B8 53 00 80 3C 54 05 53 55 42 2E 42 84 12
+B8 53 40 80 D2 4D 03 43 4D 50 84 12 B8 53 00 90
+56 54 05 43 4D 50 2E 42 84 12 B8 53 40 90 BE 4D
+04 44 41 44 44 00 84 12 B8 53 00 A0 70 54 06 44
+41 44 44 2E 42 00 84 12 B8 53 40 A0 62 54 03 42
+49 54 84 12 B8 53 00 B0 8E 54 05 42 49 54 2E 42
+84 12 B8 53 40 B0 9A 54 03 42 49 43 84 12 B8 53
+00 C0 A8 54 05 42 49 43 2E 42 84 12 B8 53 40 C0
+B4 54 03 42 49 53 84 12 B8 53 00 D0 C2 54 05 42
+49 53 2E 42 84 12 B8 53 40 D0 00 00 03 58 4F 52
+84 12 B8 53 00 E0 DC 54 05 58 4F 52 2E 42 84 12
+B8 53 40 E0 0E 54 03 41 4E 44 84 12 B8 53 00 F0
+F6 54 05 41 4E 44 2E 42 84 12 B8 53 40 F0 70 4A
+AC 52 14 55 0A 4C 3C F0 70 00 8A 10 3A F0 0F 00
+0C DA 4F 3F 48 54 03 52 52 43 84 12 0E 55 00 10
+26 55 05 52 52 43 2E 42 84 12 0E 55 40 10 32 55
+04 53 57 50 42 00 84 12 0E 55 80 10 40 55 03 52
+52 41 84 12 0E 55 00 11 4E 55 05 52 52 41 2E 42
+84 12 0E 55 40 11 5A 55 03 53 58 54 84 12 0E 55
+80 11 00 00 04 50 55 53 48 00 84 12 0E 55 00 12
+74 55 06 50 55 53 48 2E 42 00 84 12 0E 55 40 12
+CE 54 04 43 41 4C 4C 00 84 12 0E 55 80 12 1A 53
+0E 4A 0D 12 87 12 9C 47 2E 44 0D 6F 75 74 20 6F
+66 20 62 6F 75 6E 64 73 7A 4B 70 4A 16 52 C0 55
+92 53 C4 1D 3E 40 2C 00 87 12 F2 47 06 49 4C 44
+00 4C 6E 53 D6 55 0A 4E 3E 4F 1A 83 E0 33 29 4E
+59 0E 0A 28 08 4C 59 0A 01 28 0C 8A 08 8A 38 90
+10 00 D5 2F 5A 0E 94 3F 2A 92 D1 2F 8A 10 5A 06
+8F 3F 68 55 04 52 52 43 4D 00 84 12 BA 55 50 00
+04 56 04 52 52 41 4D 00 84 12 BA 55 50 01 12 56
+04 52 4C 41 4D 00 84 12 BA 55 50 02 20 56 04 52
+52 55 4D 00 84 12 BA 55 50 03 82 55 05 50 55 53
+48 4D 84 12 BA 55 00 15 3C 56 04 50 4F 50 4D 00
+84 12 BA 55 00 17 2E 56 03 53 3E 3D 85 12 00 38
+58 56 02 53 3C 00 85 12 00 34 4A 56 03 30 3E 3D
+85 12 00 30 6C 56 02 30 3C 00 85 12 00 30 00 00
+02 55 3C 00 85 12 00 2C 80 56 03 55 3E 3D 85 12
+00 28 76 56 03 30 3C 3E 85 12 00 24 94 56 02 30
+3D 00 85 12 00 20 00 00 02 49 46 00 1A 42 C6 1D
+8A 4E 00 00 A2 53 C6 1D 0E 4A 30 4D 8A 56 04 54
+48 45 4E 00 1A 42 C6 1D 08 4E 3E 4F 09 48 29 53
+0A 89 0A 11 3A 90 00 02 63 2F 88 DA 00 00 30 4D
+7E 54 04 45 4C 53 45 00 1A 42 C6 1D BA 40 00 3C
+00 00 A2 53 C6 1D 2F 83 8F 4A 00 00 E3 3F BE 56
+05 55 4E 54 49 4C 3A 4F 08 4E 3E 4F 19 42 C6 1D
+2A 83 0A 89 0A 11 3A 90 00 FE 42 3B 3A F0 FF 03
+08 DA 89 48 00 00 A2 53 C6 1D 30 4D 02 55 05 41
+47 41 49 4E 0A 4E 38 40 00 3C E7 3F 00 00 05 57
+48 49 4C 45 0D 12 87 12 AC 56 82 46 26 47 62 56
+06 52 45 50 45 41 54 00 0D 12 87 12 34 57 C4 56
+26 47 64 57 3D 41 08 4E 3E 4F 2A 48 B2 92 C4 1D
+CB 2F 98 42 C6 1D 00 00 30 4D 92 55 03 42 57 31
+84 12 62 57 00 00 7C 57 03 42 57 32 84 12 62 57
+00 00 88 57 03 42 57 33 84 12 62 57 00 00 A0 57
+3D 41 1A 42 C6 1D 28 4E B2 92 C4 1D 8E 2B BA 4F
+00 00 A2 53 C6 1D 8E 4A 00 00 3E 4F 30 4D 00 00
+03 46 57 31 84 12 9E 57 00 00 C0 57 03 46 57 32
+84 12 9E 57 00 00 CC 57 03 46 57 33 84 12 9E 57
+00 00 D8 57 04 47 4F 54 4F 00 2F 83 8F 4E 00 00
+3E 40 00 3C 0D 12 87 12 F0 4B 18 4A 26 47 00 00
+05 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
 @FFFE
-A2 52
+6E 50
 q
index 886891e..1c6716c 100644 (file)
 @1800
-10 00 04 00 51 55 40 1F 05 00 18 00 94 61 D4 50
-2D 01 6F B0 B6 46 C8 46
+10 00 04 00 51 55 40 1F 05 00 18 00 18 58 88 4E
+2E 01 6B B0 06 45 18 45 D4 4F
 @4400
-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 3A 41 0D 12 0D 4A
-30 4D 00 00 04 45 58 49 54 00 3D 41 30 4D 24 44
-03 44 55 50 2F 83 8F 4E 00 00 30 4D 00 00 04 32
-44 55 50 00 8F 4E FE FF AF 4F FC FF 2F 82 30 4D
-00 00 04 3F 44 55 50 00 0E 93 EC 23 30 4D 30 44
-04 44 52 4F 50 00 3E 4F 30 4D 2F 53 30 4D 3E 44
-04 53 57 41 50 00 2A 4F 8F 4E 00 00 0E 4A 30 4D
-52 44 02 3E 52 00 0E 12 3E 4F 30 4D 70 44 02 52
-3E 00 2F 83 8F 4E 00 00 3E 41 30 4D 60 44 05 44
-45 50 54 48 8F 4E FE FF 3E 40 80 1C 0E 8F 0E 11
-2F 83 30 4D 00 00 01 2D 3E 8F 3E E3 1E 53 30 4D
-00 00 02 31 2B 00 1E 53 30 4D C2 44 02 31 2D 00
-1E 83 30 4D 3E F3 06 34 BF E3 00 00 3E E3 9F 53
-00 00 0E 63 30 4D 00 00 01 40 2E 4E 30 4D E8 44
-01 21 BE 4F 00 00 3E 4F 30 4D CC 44 02 30 3D 00
-1E 83 0E 7E 30 4D FC 44 02 30 3C 00 0E 5E 0E 7E
-3E E3 30 4D 00 00 01 3D 3E 8F FA 27 0E F3 30 4D
-00 00 02 55 3C 00 3E 8F F9 2B 01 24 3E 43 30 4D
-16 45 02 3C 23 00 B2 40 B2 1D B2 1D 30 4D 0B 4E
+30 40 04 44 B0 12 06 45 12 D2 0A 18 F9 3F 39 40
+3A 00 29 83 B9 40 6E 50 C6 FF FB 23 B2 40 68 45
+E4 FF 30 41 2F 83 8F 4E 00 00 3E 4D 30 4D 2F 82
+8F 4E 02 00 7E 4D 8F 4D 00 00 0D 5E 1D B3 0D 63
+30 4D 0E 93 3E 4F 05 24 2D 4D 30 4D 0E 93 3E 4F
+FB 27 2D 53 30 4D 39 40 00 80 39 8F 08 4E 3E 4F
+08 59 19 15 30 4D 81 5E 00 00 3E 4F 32 B0 00 01
+EB 27 21 52 2D 53 30 4D 91 53 00 00 F7 3F 0B 4E
 1C 4F 02 00 2E 4F 0A 43 34 40 20 00 0E 93 04 20
 04 11 0E 4C 0C 43 09 43 0A 9B 01 28 0A 8B 09 69
 08 68 14 83 07 30 0C 5C 0E 6E 0A 6A F5 2B 0A 8B
-12 D3 F5 3F 34 40 00 44 8F 4A 02 00 8F 49 00 00
-0E 48 30 41 00 00 01 23 1B 42 DC 1D 2C 4F 2F 83
-B0 12 46 45 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 86 45 02 23 53 00 87 12 88 45 C0 45
-2D 83 09 93 E3 23 0E 93 E1 23 3D 41 30 4D B6 45
-02 23 3E 00 9F 42 B2 1D 00 00 3E 40 B2 1D 2E 8F
-30 4D 00 00 04 48 4F 4C 44 00 0A 4E 3E 4F DB 3F
-8E 44 04 53 49 47 4E 00 0E 93 3E 4F 3A 40 2D 00
-D2 33 30 4D 87 12 36 45 34 44 86 44 D4 44 BA 45
-92 44 F8 45 D4 45 D6 47 42 4B 82 47 2A 44 22 45
-02 55 2E 00 08 43 2F 83 8F 4E 00 00 0E 48 EA 3F
-00 00 01 2E 0E 93 F6 37 38 43 F5 3F 2D 4D 30 4D
-0E 93 3E 4F FB 27 2D 53 30 4D 0E 93 3E 4F F6 23
-2D 53 30 4D 39 40 00 80 39 8F 08 4E 3E 4F 08 59
-19 15 30 4D 81 5E 00 00 3E 4F 32 B0 00 01 E6 27
-2D 53 21 52 30 4D 91 53 00 00 F7 3F E4 45 01 49
-2F 83 8F 4E 00 00 2E 41 1E 81 02 00 30 4D 00 00
-03 4B 45 59 30 40 98 46 18 42 EC 05 2F 83 8F 4E
-00 00 B0 12 B6 46 92 B3 FC 05 FD 27 1E 42 EC 05
-B0 12 C8 46 30 4D A2 B3 FC 05 FD 27 B2 40 11 00
-EE 05 D2 C3 22 02 30 41 B2 40 13 00 EE 05 D2 D3
-22 02 30 41 00 00 05 53 4C 45 45 50 30 40 E0 46
-B0 12 B6 46 12 D2 0A 18 F9 3F F0 44 06 41 43 43
-45 50 54 00 3C 40 64 47 3B 40 2E 47 2D 15 0A 4E
-2E 4F 0A 5E 3B 40 0D 00 3C 40 20 00 3D 40 58 47
-92 B3 FC 05 05 24 18 42 EC 05 38 90 0A 00 CB 23
-21 53 3D 15 DB 3F 21 52 3A 17 58 42 EC 05 48 9C
-08 2C 48 9B C9 27 78 92 11 20 2E 9F 0F 24 1E 83
-05 3C 0E 9A 03 24 CE 48 00 00 1E 53 A2 B3 FC 05
-FD 27 82 48 EE 05 30 4D 5A 47 2D 83 92 B3 FC 05
-E4 23 FC 27 82 93 DE 1D 02 24 92 53 DE 1D 3E 8F
-3D 41 B2 40 18 00 0A 18 30 4D 9E 44 04 45 4D 49
-54 00 30 40 86 47 08 4E 3E 4F E0 3F 3F 80 06 00
-8F 4E 04 00 3E 40 54 00 BF 40 3C 1D 00 00 AF 4F
-02 00 A8 3F 7C 47 04 45 43 48 4F 00 B2 40 82 48
-52 47 82 43 DE 1D 30 4D 32 46 06 4E 4F 45 43 48
-4F 00 B2 40 30 4D 52 47 92 43 DE 1D 30 4D 20 46
-04 54 59 50 45 00 0E 93 0F 24 1E 15 3D 40 EC 47
-28 4F 7E 48 8F 48 00 00 2F 83 CB 3F EE 47 2D 83
-91 83 02 00 F5 23 1D 17 2F 53 3E 4F 30 4D D0 45
-02 43 52 00 30 40 08 48 87 12 1E 48 02 0D 0A 00
-D6 47 2A 44 2F 83 8F 4E 00 00 3E 4D 30 4D 2F 82
-8F 4E 02 00 7E 4D 8F 4D 00 00 0D 5E 1D B3 0D 63
-30 4D F2 45 82 53 22 00 82 43 B4 1D 87 12 14 48
-1E 48 B0 4A 14 48 22 00 80 48 4C 48 B2 40 20 00
-B4 1D 6E 4E 1E 53 1E B3 82 6E C6 1D 3D 41 3E 4F
-30 4D BA 47 82 2E 22 00 87 12 38 48 14 48 D6 47
-B0 4A 2A 44 48 43 05 3C 00 00 04 57 4F 52 44 00
-48 4E 19 42 C0 1D 1A 42 C2 1D 09 5A 1A 52 C4 1D
-09 9A 03 24 7E 9A FC 27 1A 83 4E F8 06 20 0E 4A
-1A 82 C2 1D 82 4A C4 1D 30 4D 18 42 C6 1D 3B 40
-60 00 C8 4C 00 00 09 9A 0C 24 7C 4A 4E 9C 09 24
-18 53 4B 9C F6 2F 7C 90 7B 00 F3 2F 5C 82 B4 1D
-F0 3F 1A 82 C2 1D 82 4A C4 1D 1E 42 C6 1D 08 8E
-CE 48 00 00 30 4D 00 00 04 46 49 4E 44 00 2F 83
-0C 4E 65 4C 74 40 80 00 3B 40 CA 1D 3E 4B 0E 93
-1E 24 58 4C 01 00 78 F0 1E 00 0E 58 2E 53 1E 4E
-FE FF 0E 93 F3 27 09 4E 78 49 48 C4 48 95 F7 23
-0A 4C FA 99 01 00 F3 23 1A 53 58 83 FA 23 19 B3
-09 63 0C 49 6A 4E 1E 43 4A 93 01 30 2E 83 8F 4C
-00 00 35 40 0E 44 34 40 00 44 30 4D 82 44 07 3E
-4E 55 4D 42 45 52 3C 4F 38 4F 29 4F 2F 82 1B 42
-DC 1D 6A 4C 7A 80 30 00 7A 90 0A 00 05 28 7A 80
-07 00 7A 90 0A 00 12 28 0A 9B 22 C3 0F 2C 82 49
-D0 04 82 48 D2 04 82 4B C8 04 19 42 E4 04 18 42
-E6 04 09 5A 08 63 1C 53 1E 83 E3 23 8F 4C 00 00
-8F 48 02 00 8F 49 04 00 30 4D 32 C0 00 02 1B 42
-DC 1D 0C 43 2D 15 3D 40 F4 49 09 43 08 43 3F 82
-8F 4E 06 00 0C 4E 7E 4C 6A 4C 7A 90 2D 00 04 28
-C9 23 B1 43 02 00 DF 3F 2B 43 7A 80 25 00 07 24
-3B 52 6A 53 04 24 3B 40 10 00 5A 83 BA 23 1C 53
-1E 83 EA 3F F6 49 2F 24 2D 83 7A 90 28 00 CB 27
-32 D0 00 02 7A 90 F7 00 C6 27 7A 90 F5 00 23 20
-0A 4E 09 43 8F 49 02 00 5A 83 09 4A 09 5C 69 49
-79 80 30 00 79 90 0A 00 05 28 79 80 07 00 79 90
-0A 00 0A 28 09 9B 08 2C 8F 49 00 00 0E 4B 2C 15
-B0 12 3E 45 2A 17 E6 3F 9F 4F 04 00 02 00 AF 4F
-04 00 0E 4A 4E 93 2B 17 0E 4C 82 4B DC 1D 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 7E 46 04 48 45 52 45 00
-2F 83 8F 4E 00 00 1E 42 C6 1D 30 4D B6 44 01 2C
-1A 42 C6 1D 8A 4E 00 00 A2 53 C6 1D 3E 4F 30 4D
-EC 46 05 41 4C 4C 4F 54 82 5E C6 1D 3E 4F 30 4D
-A6 47 07 45 58 45 43 55 54 45 0A 4E 3E 4F 00 4A
-AE 4A 87 4C 49 54 45 52 41 4C 82 93 BE 1D 0C 24
-1A 42 C6 1D A2 52 C6 1D BA 40 14 48 00 00 8A 4E
-02 00 3E 4F 32 B0 00 02 32 C0 00 02 06 24 19 4A
-02 00 8A 4E 02 00 0E 49 EB 3F 30 4D 00 48 05 43
-4F 55 4E 54 2F 83 1E 53 8F 4E 00 00 5E 4E FF FF
-30 4D 82 4E C0 1D B2 4F C2 1D 3E 4F 82 43 C4 1D
-30 4D 85 12 20 00 87 12 32 4B 42 4B 80 48 50 4B
-3D 40 58 4B CC 22 82 3E 5A 4B 0A 4E 3E 4F 3D 40
-70 4B 23 27 3D 40 4A 4B 1A E2 BE 1D A1 27 B5 23
-72 4B 3E 4F 3D 40 4A 4B B8 23 DE 53 00 00 68 4E
-08 5E F8 40 3F 00 00 00 3D 40 26 4E CB 3F D2 4A
+12 D3 F5 3F 34 40 EC 44 8F 4A 02 00 8F 49 00 00
+0E 48 30 41 82 4E C0 1D B2 4F C2 1D 3E 4F 82 43
+C4 1D 30 4D 3F 80 06 00 8F 4E 04 00 3E 40 54 00
+BF 40 3C 1D 00 00 AF 4F 02 00 24 3C 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 A2 B3 FC 05 FD 27 B2 40 11 00
+EE 05 D2 C3 22 02 30 41 A2 B3 FC 05 FD 27 B2 40
+13 00 EE 05 D2 D3 22 02 30 41 00 00 06 41 43 43
+45 50 54 00 3C 40 A6 45 3B 40 70 45 2D 15 0A 4E
+2E 4F 0A 5E 3B 40 0D 00 3C 40 20 00 3D 40 9A 45
+92 B3 FC 05 05 24 18 42 EC 05 38 90 0A 00 D3 23
+21 53 3D 15 30 40 00 44 21 52 3A 17 58 42 EC 05
+48 9C 08 2C 48 9B D0 27 78 92 11 20 2E 9F 0F 24
+1E 83 05 3C 0E 9A 03 24 CE 48 00 00 1E 53 A2 B3
+FC 05 FD 27 82 48 EE 05 30 4D 9C 45 2D 83 92 B3
+FC 05 E4 23 FC 27 82 93 DE 1D 02 24 92 53 DE 1D
+3E 8F 3D 41 B2 40 18 00 0A 18 30 4D 00 00 04 45
+4D 49 54 00 30 40 C8 45 08 4E 3E 4F E0 3F BE 45
+04 45 43 48 4F 00 B2 40 82 48 94 45 82 43 DE 1D
+30 4D 00 00 06 4E 4F 45 43 48 4F 00 B2 40 30 4D
+94 45 92 43 DE 1D 30 4D 00 00 04 54 59 50 45 00
+0E 93 0F 24 1E 15 3D 40 16 46 28 4F 7E 48 8F 48
+00 00 2F 83 D7 3F 18 46 2D 83 91 83 02 00 F5 23
+1D 17 2F 53 3E 4F 30 4D 00 00 02 43 52 00 30 40
+32 46 0D 12 87 12 2E 44 02 0D 0A 00 00 46 26 47
+00 00 03 4B 45 59 30 40 4A 46 18 42 EC 05 2F 83
+8F 4E 00 00 B0 12 06 45 92 B3 FC 05 FD 27 1E 42
+EC 05 B0 12 18 45 30 4D 2F 83 8F 4E 00 00 30 4D
+8F 4E FE FF AF 4F FC FF 2F 82 30 4D 0E 93 F4 23
+30 4D 2A 4F 8F 4E 00 00 0E 4A 30 4D 8F 4E FE FF
+3E 40 80 1C 0E 8F 0E 11 2F 83 30 4D 2F 83 8F 4E
+00 00 3E 41 30 4D 3E 8F 3E E3 1E 53 30 4D BE 4F
+00 00 3E 4F 30 4D 1E 83 0E 7E 30 4D 0E 5E 0E 7E
+3E E3 30 4D 3E 8F 03 24 3E 43 01 2C 0E F3 30 4D
+00 00 02 3C 23 00 B2 40 B2 1D B2 1D 30 4D 2A 46
+01 23 1B 42 DC 1D 2C 4F 2F 83 B0 12 86 44 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 E0 46
+02 23 53 00 0D 12 87 12 E2 46 1C 47 2D 83 09 93
+E2 23 0E 93 E0 23 3D 41 30 4D 10 47 02 23 3E 00
+9F 42 B2 1D 00 00 3E 40 B2 1D 2E 8F 30 4D 00 00
+04 48 4F 4C 44 00 4A 4E 3E 4F DA 3F 00 00 04 53
+49 47 4E 00 0E 93 3E 4F 7A 40 2D 00 D1 33 30 4D
+FA 45 02 55 2E 00 08 43 2F 83 8F 4E 00 00 0E 48
+0D 12 0E 12 3E F3 06 34 BF E3 00 00 3E E3 9F 53
+00 00 0E 63 87 12 D6 46 14 47 9C 46 54 47 30 47
+00 46 70 4A C4 45 26 47 E4 45 01 2E 0E 93 E3 37
+38 43 E2 3F 4E 47 82 53 22 00 82 43 B4 1D 0D 12
+87 12 24 44 2E 44 F8 49 24 44 22 00 F2 47 C0 47
+B2 40 20 00 B4 1D 6E 4E 1E 53 1E B3 82 6E C6 1D
+3D 41 3E 4F 30 4D 9A 47 82 2E 22 00 0D 12 87 12
+AA 47 24 44 00 46 F8 49 26 47 00 00 04 57 4F 52
+44 00 3C 40 C0 1D 39 4C 3A 4C 09 5A 3A 5C 28 4C
+09 9A 15 24 7E 9A FC 27 1A 83 3B 40 60 00 C8 4C
+00 00 09 9A 0C 24 7C 4A 4E 9C 09 24 18 53 4B 9C
+F6 2F 7C 90 7B 00 F3 2F 5C 82 B4 1D F0 3F 1A 82
+C2 1D 82 4A C4 1D 1E 42 C6 1D 08 8E CE 48 00 00
+30 4D 00 00 04 46 49 4E 44 00 2F 83 0C 4E 65 4C
+74 40 80 00 3B 40 CA 1D 3E 4B 0E 93 1E 24 58 4C
+01 00 78 F0 1E 00 0E 58 2E 53 1E 4E FE FF 0E 93
+F3 27 09 4E 78 49 48 C4 48 95 F7 23 0A 4C FA 99
+01 00 F3 23 1A 53 58 83 FA 23 19 B3 09 63 0C 49
+6A 4E 1E 43 4A 93 01 30 2E 83 8F 4C 00 00 35 40
+FA 44 34 40 EC 44 30 4D 00 00 07 3E 4E 55 4D 42
+45 52 3C 4F 38 4F 29 4F 2F 82 1B 42 DC 1D 6A 4C
+7A 80 30 00 7A 90 0A 00 05 28 7A 80 07 00 7A 90
+0A 00 12 28 0A 9B 22 C3 0F 2C 82 49 D0 04 82 48
+D2 04 82 4B C8 04 19 42 E4 04 18 42 E6 04 09 5A
+08 63 1C 53 1E 83 E3 23 8F 4C 00 00 8F 48 02 00
+8F 49 04 00 30 4D 32 C0 00 02 1B 42 DC 1D 0C 43
+2D 15 3D 40 50 49 09 43 08 43 3F 82 8F 4E 06 00
+0C 4E 7E 4C 6A 4C 7A 90 2D 00 04 28 C9 23 B1 43
+02 00 0B 3C 2B 43 7A 80 25 00 07 24 3B 52 6A 53
+04 24 3B 40 10 00 5A 83 BA 23 1C 53 1E 83 EA 3F
+52 49 2F 24 2D 83 7A 90 28 00 CB 27 32 D0 00 02
+7A 90 F7 00 C6 27 7A 90 F5 00 23 20 0A 4E 09 43
+8F 49 02 00 5A 83 09 4A 09 5C 69 49 79 80 30 00
+79 90 0A 00 05 28 79 80 07 00 79 90 0A 00 0A 28
+09 9B 08 2C 8F 49 00 00 0E 4B 2C 15 B0 12 7E 44
+2A 17 E6 3F 9F 4F 04 00 02 00 AF 4F 04 00 0E 4A
+4E 93 2B 17 0E 4C 82 4B DC 1D 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 00 00 01 2C 1A 42 C6 1D 8A 4E 00 00
+A2 53 C6 1D 3E 4F 30 4D 2C 45 05 41 4C 4C 4F 54
+82 5E C6 1D 3E 4F 30 4D 0A 4E 3E 4F 00 4A F6 49
+87 4C 49 54 45 52 41 4C 82 93 BE 1D 0C 24 1A 42
+C6 1D A2 52 C6 1D BA 40 24 44 00 00 8A 4E 02 00
+3E 4F 32 B0 00 02 32 C0 00 02 06 24 19 4A 02 00
+8A 4E 02 00 0E 49 EB 3F 30 4D 2C 47 05 43 4F 55
+4E 54 2F 83 1E 53 8F 4E 00 00 5E 4E FF FF 30 4D
+85 12 20 00 0D 12 87 12 C4 44 70 4A F2 47 80 4A
+3D 40 88 4A E2 22 A4 26 8A 4A 0A 4E 3E 4F 3D 40
+A0 4A 39 27 3D 40 7A 4A 1A E2 BE 1D BD 23 AC 27
+A2 4A 3E 4F 3D 40 7A 4A BF 23 DE 53 00 00 68 4E
+08 5E F8 40 3F 00 00 00 3D 40 20 4D D2 3F D0 45
 08 45 56 41 4C 55 41 54 45 00 39 40 C0 1D 3C 49
-3B 49 3A 49 3D 15 B0 12 2A 44 46 4B AE 4B B2 41
-C4 1D B2 41 C2 1D B2 41 C0 1D 3D 41 30 4D 85 12
-BE 1D 08 45 04 51 55 49 54 00 82 43 08 18 31 40
-E0 1C B2 40 00 1C 00 1C 82 43 BE 1D B0 12 2A 44
-04 48 8C 47 42 4B 82 47 46 4B A4 44 0C 45 1E 48
-0C 73 74 61 63 6B 20 65 6D 70 74 79 21 00 40 4C
-14 48 30 FF A0 4A 26 45 1E 48 0A 46 52 41 4D 20
-66 75 6C 6C 21 00 40 4C 3C 46 E0 4B C2 4A 05 41
-42 4F 52 54 3F 40 80 1C D0 3F 1E 4C 86 41 42 4F
-52 54 22 00 87 12 38 48 14 48 40 4C B0 4A 2A 44
-8F 93 02 00 03 20 2F 52 3E 4F 30 4D B0 12 CC 51
-B0 12 B6 46 92 C3 FC 05 38 40 50 55 39 42 03 43
-19 83 FD 23 18 83 FA 23 92 B3 FC 05 F3 23 87 12
-46 51 14 48 DE 1D EA 44 AC 47 1E 48 04 1B 5B 37
-6D 00 D6 47 58 44 40 46 9A 4C 04 48 1E 48 05 6C
-69 6E 65 3A D6 47 D0 44 24 46 D6 47 1E 48 04 1B
-5B 30 6D 00 D6 47 24 4C 00 00 83 5B 27 5D 87 12
-C0 4C 14 48 14 48 B0 4A B0 4A 2A 44 E8 48 01 27
-87 12 42 4B 80 48 EE 48 40 46 CE 4C 2A 44 7A 4B
-32 45 81 5C 92 42 C0 1D C4 1D 30 4D AA 4C 81 5B
-82 43 BE 1D 30 4D D2 4C 01 5D B2 43 BE 1D 30 4D
-BE 4F 02 00 3E 4F 30 4D 9A 4A 82 49 53 00 87 12
-BE 4B EA 44 40 46 12 4D AE 4C 14 48 F0 4C B0 4A
-2A 44 C0 4C F0 4C 2A 44 FA 4C 09 49 4D 4D 45 44
-49 41 54 45 1A 42 B6 1D FA D0 80 00 00 00 30 4D
-C4 4B 88 50 4F 53 54 50 4F 4E 45 00 87 12 42 4B
-80 48 EE 48 58 44 40 46 CE 4C 0C 45 40 46 5C 4D
-14 48 14 48 B0 4A B0 4A 14 48 B0 4A B0 4A 2A 44
-DE 4C 81 3B 82 93 BE 1D B5 27 87 12 14 48 2A 44
-B0 4A FA 4D E0 4C 2A 44 62 4D 07 3A 4E 4F 4E 41
-4D 45 30 12 A0 4D 2F 83 8F 4E 00 00 1E 42 C6 1D
-1E B3 0E 63 0A 4E 39 40 00 02 38 40 02 02 21 3C
-BA 40 87 12 FC FF A2 83 C6 1D B2 43 BE 1D 30 4D
-7A 4D 01 3A 30 12 A0 4D 92 B3 C6 1D A2 63 C6 1D
-87 12 42 4B 80 48 C8 4D 3D 41 08 4E 7A 4E 5A D3
-5A 53 0A 58 19 42 DA 1D 6E 4E 3E F0 1E 00 09 5E
-3E 4F 82 48 B6 1D 82 49 B8 1D 82 4A BA 1D 82 4F
-BC 1D 2A 52 82 4A C6 1D 30 41 82 9F BC 1D 09 20
-18 42 B6 1D 19 42 B8 1D A8 49 FE FF 89 48 00 00
-30 4D 87 12 1E 48 0F 73 74 61 63 6B 20 6D 69 73
-6D 61 74 63 68 21 4C 4C 90 4B 05 44 45 46 45 52
-B0 12 B8 4D BA 40 30 40 FC FF BA 40 AE 4D FE FF
-E3 3F 1E 4B 06 43 52 45 41 54 45 00 B0 12 B8 4D
-BA 40 85 12 FC FF 8A 4A FE FF D6 3F 2A 4E 05 44
-4F 45 53 3E 1A 42 BA 1D BA 40 84 12 00 00 8A 4D
-02 00 3D 41 30 4D 4E 49 05 3E 42 4F 44 59 2E 52
-30 4D 44 4E 04 43 4F 44 45 00 B0 12 B8 4D 82 43
-58 61 A2 82 C6 1D 87 12 D6 50 B0 50 2A 44 84 4E
-07 43 4F 44 45 4E 4E 4D B0 12 86 4D F0 3F 00 00
-07 45 4E 44 43 4F 44 45 87 12 E4 50 FA 4D 2A 44
-2C 4C 03 41 53 4D B2 40 B4 50 DA 1D DE 3F B0 4E
-06 45 4E 44 41 53 4D 00 87 12 B8 4E F8 50 2A 44
-00 00 05 43 4F 4C 4F 4E 1A 42 C6 1D BA 40 87 12
-00 00 A2 53 C6 1D B2 43 BE 1D 30 40 E4 50 00 00
-05 4C 4F 32 48 49 1A 42 C6 1D BA 40 B0 12 00 00
-BA 40 2A 44 02 00 A2 52 C6 1D ED 3F 1A 4D 85 48
-49 32 4C 4F 87 12 A0 4A 4E 4F B0 4A E0 4C D6 50
-B0 50 2A 44 1E 4F 82 49 46 00 2F 83 8F 4E 00 00
-1E 42 C6 1D A2 52 C6 1D BE 40 40 46 00 00 2E 53
-30 4D 5E 4E 84 45 4C 53 45 00 A2 52 C6 1D 1A 42
-C6 1D BA 40 3C 46 FC FF 8E 4A 00 00 2A 83 0E 4A
-30 4D D0 47 84 54 48 45 4E 00 9E 42 C6 1D 00 00
-3E 4F 30 4D A0 4E 85 42 45 47 49 4E 30 40 A0 4A
-74 4F 85 55 4E 54 49 4C 39 40 40 46 A2 52 C6 1D
-1A 42 C6 1D 8A 49 FC FF 8A 4E FE FF 3E 4F 30 4D
-C2 4E 85 41 47 41 49 4E 39 40 3C 46 EF 3F 7A 48
-85 57 48 49 4C 45 87 12 3A 4F 76 44 2A 44 34 48
-86 52 45 50 45 41 54 00 87 12 B8 4F 7A 4F 2A 44
-54 4F 82 44 4F 00 2F 83 8F 4E 00 00 A2 53 C6 1D
-1E 42 C6 1D BE 40 54 46 FE FF A2 53 00 1C 1A 42
-00 1C 8A 43 00 00 30 4D E2 4A 84 4C 4F 4F 50 00
-39 40 76 46 A2 52 C6 1D 1A 42 C6 1D 8A 49 FC FF
-8A 4E FE FF 1E 42 00 1C A2 83 00 1C 2E 4E 0E 93
-03 24 8E 4A 00 00 F6 3F 3E 4F 30 4D 90 46 85 2B
-4C 4F 4F 50 39 40 64 46 E5 3F 0A 50 04 4D 4F 56
-45 00 0A 4E 38 4F 39 4F 3E 4F 0A 93 11 24 08 99
-0F 24 06 2C F8 49 00 00 18 53 1A 83 FB 23 30 4D
-08 5A 09 5A 19 83 18 83 E8 49 00 00 1A 83 FA 23
-30 4D 14 48 CA 1D F2 44 2A 44 84 12 82 50 B2 4F
-64 53 E2 4F BE 4C 36 4F 3E 50 78 54 64 48 6A 51
-84 51 92 4F 04 52 00 00 4A 54 E8 4C 78 4E 00 00
-84 12 82 50 22 60 BA 5F 1E 5F E2 5A 86 59 00 00
-E6 5D 00 00 48 61 5C 61 DE 59 1C 5A EE 5F 00 00
-00 00 BE 5A AE 50 3A 40 0C 00 39 40 CA 1D 38 40
-CC 1D C6 3F 3A 40 0E 00 39 40 CC 1D 38 40 CA 1D
-B9 3F 82 43 CC 1D 30 4D 92 42 CA 1D DA 1D 30 4D
-8A 50 F2 50 F8 50 08 51 3A 4E 82 4A C8 1D 2E 4E
-82 4E C6 1D 3D 40 10 00 09 4A 08 49 29 83 18 48
-FE FF 0E 98 FC 2B 89 48 00 00 1D 83 F6 23 2A 4A
-0A 93 F0 23 3E 4F 3D 41 30 4D 32 4D 09 50 57 52
-5F 53 54 41 54 45 84 12 00 51 D4 50 94 61 D0 4F
-09 52 53 54 5F 53 54 41 54 45 92 42 0E 18 4A 51
-92 42 0C 18 4C 51 EF 3F 3C 51 08 50 57 52 5F 48
-45 52 45 00 92 42 C8 1D 4A 51 92 42 C6 1D 4C 51
-30 4D 50 51 08 52 53 54 5F 48 45 52 45 00 92 42
-C8 1D 0E 18 92 42 C6 1D 0C 18 EC 3F C0 4F 04 57
-49 50 45 00 39 40 10 00 29 83 B9 43 80 FF FC 23
-B2 40 E0 46 DE 46 B2 40 0E 52 0C 52 B2 40 D4 50
-0E 18 B2 40 94 61 0C 18 30 12 5A 51 B2 40 86 47
-84 47 B2 40 08 48 06 48 B2 40 98 46 96 46 B2 40
-18 00 0A 18 37 40 1A 44 36 40 92 44 35 40 0E 44
-34 40 00 44 B2 40 0A 00 DC 1D B2 40 20 00 B4 1D
-30 41 9E 51 04 57 41 52 4D 00 30 40 0E 52 3D 40
-44 52 92 C3 30 01 1E 42 08 18 0E 93 12 24 F2 B0
-10 00 20 02 02 20 3E E3 1E 53 F2 D0 30 00 2A 02
-3E 90 0A 00 B7 27 3E 90 16 00 B4 2F 2E 93 83 27
-8C 2F 30 4D 1E 48 06 0D 1B 5B 37 6D 23 00 D6 47
-34 46 1E 48 19 46 61 73 74 46 6F 72 74 68 20 C2
-A9 4A 2E 4D 2E 54 68 6F 6F 72 65 6E 73 20 D6 47
-14 48 30 FF A0 4A B8 44 24 46 1E 48 0A 62 79 74
-65 73 20 66 72 65 65 00 3C 46 9A 4C 86 4F 04 43
-4F 4C 44 00 92 B3 EA 05 FD 23 B2 40 04 A5 20 01
-44 52 B2 40 88 5A 5C 01 B2 40 FE FF 02 02 B2 D3
+3B 49 3A 49 3D 15 87 12 74 4A DC 4A B2 41 C4 1D
+B2 41 C2 1D B2 41 C0 1D 3D 41 30 4D 85 12 BE 1D
+00 00 04 51 55 49 54 00 82 43 08 18 31 40 E0 1C
+B2 40 00 1C 00 1C 82 43 BE 1D 87 12 2E 46 D4 44
+70 4A C4 45 74 4A 8C 46 BC 46 2E 44 0C 73 74 61
+63 6B 20 65 6D 70 74 79 21 00 6E 4B 24 44 40 FF
+2A 4E C4 46 2E 44 0A 46 52 41 4D 20 66 75 6C 6C
+21 00 6E 4B 48 44 0C 4B 0A 4A 05 41 42 4F 52 54
+3F 40 80 1C D1 3F 4A 4B 86 41 42 4F 52 54 22 00
+0D 12 87 12 AA 47 24 44 6E 4B F8 49 26 47 8F 93
+02 00 03 20 2F 52 3E 4F 30 4D B0 12 96 4F B0 12
+06 45 92 C3 FC 05 18 42 06 18 39 40 20 00 19 83
+FE 23 18 83 FA 23 92 B3 FC 05 F3 23 0D 12 87 12
+10 4F 24 44 DE 1D 02 45 D6 45 2E 44 04 1B 5B 37
+6D 00 00 46 7C 46 4C 44 C8 4B 2E 46 2E 44 05 6C
+69 6E 65 3A 00 46 66 47 00 46 2E 44 04 1B 5B 30
+6D 00 00 46 50 4B 00 00 83 5B 27 5D 0D 12 87 12
+F0 4B 24 44 24 44 F8 49 F8 49 26 47 44 48 01 27
+0D 12 87 12 70 4A F2 47 4A 48 4C 44 00 4C 26 47
+AA 4A D2 46 81 5C 92 42 C0 1D C4 1D 30 4D D8 4B
+81 5B 82 43 BE 1D 30 4D 04 4C 01 5D B2 43 BE 1D
+30 4D F2 4A 88 50 4F 53 54 50 4F 4E 45 00 0D 12
+87 12 70 4A F2 47 4A 48 7C 46 4C 44 00 4C BC 46
+4C 44 50 4C 24 44 24 44 F8 49 F8 49 24 44 F8 49
+F8 49 26 47 40 47 09 49 4D 4D 45 44 49 41 54 45
+1A 42 B6 1D FA D0 80 00 00 00 30 4D 10 4C 01 3A
+30 12 B8 4C 92 B3 C6 1D A2 63 C6 1D 0D 12 87 12
+70 4A F2 47 86 4C 3D 41 08 4E 7A 4E 5A D3 5A 53
+0A 58 19 42 DA 1D 6E 4E 3E F0 1E 00 09 5E 3E 4F
+82 48 B6 1D 82 49 B8 1D 82 4A BA 1D 82 4F BC 1D
+2A 52 82 4A C6 1D 30 41 BA 40 0D 12 FC FF BA 40
+87 12 FE FF B2 43 BE 1D 30 4D 6E 4C 07 3A 4E 4F
+4E 41 4D 45 30 12 B8 4C 2F 83 8F 4E 00 00 1E 42
+C6 1D 1E B3 0E 63 0A 4E 39 40 10 02 38 40 12 02
+D7 3F 82 9F BC 1D 09 20 18 42 B6 1D 19 42 B8 1D
+A8 49 FE FF 89 48 00 00 30 4D 0D 12 87 12 2E 44
+0F 73 74 61 63 6B 20 6D 69 73 6D 61 74 63 68 21
+7A 4B CC 4C 81 3B 82 93 BE 1D 6D 27 0D 12 87 12
+24 44 26 47 F8 49 F2 4C 12 4C 26 47 5C 4A 06 43
+52 45 41 54 45 00 B0 12 74 4C BA 40 85 12 FC FF
+8A 4A FE FF D5 3F C0 4A 05 44 4F 45 53 3E 1A 42
+BA 1D BA 40 84 12 00 00 8A 4D 02 00 3D 41 30 4D
+3E 4D 04 43 4F 44 45 00 B0 12 74 4C A2 82 C6 1D
+0D 12 87 12 8A 4E 64 4E 26 47 72 4D 07 43 4F 44
+45 4E 4E 4D 30 12 7C 4D 9F 3F 00 00 07 45 4E 44
+43 4F 44 45 0D 12 87 12 F2 4C A4 4E 26 47 58 4B
+03 41 53 4D B2 40 68 4E DA 1D DE 3F 9C 4D 06 45
+4E 44 41 53 4D 00 0D 12 87 12 A4 4D C2 4E 26 47
+00 00 05 43 4F 4C 4F 4E 1A 42 C6 1D BA 40 0D 12
+00 00 BA 40 87 12 02 00 A2 52 C6 1D B2 43 BE 1D
+30 40 A4 4E 00 00 05 4C 4F 32 48 49 A2 83 C6 1D
+1A 42 C6 1D EE 3F 56 4C 85 48 49 32 4C 4F 0D 12
+87 12 2A 4E 1E 4E F8 49 12 4C 80 4D 26 47 2E 53
+30 4D 8C 4D 85 42 45 47 49 4E 2F 83 8F 4E 00 00
+1E 42 C6 1D 30 4D 24 44 CA 1D AE 46 26 47 84 12
+36 4E B0 4D 5C 50 58 4D EE 4B 08 4E 42 46 20 4A
+D8 47 34 4F 4E 4F 62 47 CE 4F 00 00 F8 51 1A 4C
+AA 48 00 00 84 12 36 4E 2A 57 90 57 DE 56 E0 57
+A4 56 00 00 D4 53 00 00 9A 56 4C 57 FC 56 3A 57
+E4 54 00 00 00 00 FC 57 62 4E 3A 40 0C 00 39 40
+D6 1D 08 49 28 53 19 83 18 83 E8 49 00 00 1A 83
+FA 23 30 4D 3A 40 0E 00 38 40 CA 1D 09 48 29 53
+F8 49 00 00 18 53 1A 83 FB 23 30 4D 82 43 CC 1D
+30 4D 92 42 CA 1D DA 1D 30 4D 3E 4E BC 4E C2 4E
+D2 4E 3A 4E 82 4A C8 1D 2E 4E 82 4E C6 1D 3D 40
+10 00 09 4A 08 49 29 83 18 48 FE FF 0E 98 FC 2B
+89 48 00 00 1D 83 F6 23 2A 4A 0A 93 F0 23 3E 4F
+3D 41 30 4D 24 4C 09 50 57 52 5F 53 54 41 54 45
+84 12 CA 4E 88 4E 18 58 A6 47 09 52 53 54 5F 53
+54 41 54 45 92 42 0E 18 14 4F 92 42 0C 18 16 4F
+EF 3F 06 4F 08 50 57 52 5F 48 45 52 45 00 92 42
+C8 1D 14 4F 92 42 C6 1D 16 4F 30 4D 1A 4F 08 52
+53 54 5F 48 45 52 45 00 92 42 C8 1D 0E 18 92 42
+C6 1D 0C 18 EC 3F EC 47 04 57 49 50 45 00 39 40
+10 00 29 83 B9 43 80 FF FC 23 B2 40 04 44 02 44
+B2 40 D8 4F D6 4F B2 40 88 4E 0E 18 B2 40 18 58
+0C 18 30 12 24 4F B2 40 C8 45 C6 45 B2 40 32 46
+30 46 B2 40 4A 46 48 46 B2 40 18 00 0A 18 37 40
+26 47 36 40 9C 46 35 40 FA 44 34 40 EC 44 B2 40
+0A 00 DC 1D B2 40 20 00 B4 1D 30 41 68 4F 04 57
+41 52 4D 00 30 40 D8 4F 3D 40 12 50 92 C3 30 01
+1E 42 08 18 0E 93 14 24 F2 B0 10 00 20 02 02 20
+3E E3 1E 53 F2 D0 30 00 2A 02 92 D3 FA 05 3E 90
+0A 00 B5 27 3E 90 16 00 B2 2F 2E 93 81 27 8A 2F
+30 4D 2E 44 07 0D 0A 1B 5B 37 6D 23 00 46 9C 47
+2E 44 19 46 61 73 74 46 6F 72 74 68 20 C2 A9 4A
+2E 4D 2E 54 68 6F 6F 72 65 6E 73 20 00 46 24 44
+40 FF 2A 4E A6 46 66 47 2E 44 0A 62 79 74 65 73
+20 66 72 65 65 00 48 44 C8 4B 24 4E 04 43 4F 4C
+44 00 92 B3 EA 05 FD 23 B2 40 04 A5 20 01 31 40
+E0 1C B2 40 88 5A 5C 01 B2 40 FE FF 02 02 B2 D3
 06 02 B2 43 26 02 B2 43 22 02 D2 D3 24 02 B2 43
 42 02 B2 43 46 02 B2 43 62 02 B2 43 66 02 B2 40
 7F FF 82 02 B2 43 86 02 F2 43 22 03 F2 43 26 03
@@ -244,238 +209,121 @@ F2 40 A5 00 61 01 82 43 66 01 39 40 80 00 B2 40
 33 00 64 01 D2 43 61 01 92 D2 9E 01 08 18 38 40
 59 14 18 83 FE 23 19 83 FA 23 B2 42 B0 01 F2 D0
 10 00 2A 03 F2 C0 40 00 A2 04 39 40 00 08 29 83
-89 43 00 1C FC 23 39 40 3A 00 29 83 B9 40 A2 52
-C6 FF FB 23 B2 40 26 47 E4 FF B2 40 81 00 E0 05
+89 43 00 1C FC 23 B0 12 0E 44 B2 40 81 00 E0 05
 92 42 02 18 E6 05 92 42 04 18 E8 05 92 C3 E0 05
-92 D3 FA 05 3F 40 80 1C 31 40 E0 1C 30 12 0A 52
-3E 3F 8E 52 07 43 4F 4D 50 41 52 45 0C 4E 38 4F
-3B 4F 39 4F 0E 4B 0E 5C 0C 24 1B 83 07 30 1C 83
-07 30 19 53 F9 98 FF FF F5 27 02 2C 3E 43 30 4D
-1E 43 30 4D B2 4D 86 5B 54 48 45 4E 5D 00 30 4D
-96 53 86 5B 45 4C 53 45 5D 00 87 12 14 48 00 00
-C6 44 42 4B 80 48 24 4B 34 44 40 46 0C 54 44 44
-1E 48 06 5B 54 48 45 4E 5D 00 6C 53 4A 46 DC 53
-F8 47 D0 44 58 44 4A 46 B2 53 2A 44 44 44 1E 48
-06 5B 45 4C 53 45 5D 00 6C 53 4A 46 FA 53 F8 47
-D0 44 58 44 4A 46 B0 53 2A 44 1E 48 04 5B 49 46
-5D 00 6C 53 4A 46 B2 53 3C 46 B0 53 F8 47 1E 48
-05 0D 0A 6B 6F 20 D6 47 8C 47 32 4B 3C 46 B2 53
-A2 53 84 5B 49 46 5D 00 0E 93 3E 4F BE 27 30 4D
-22 54 89 5B 44 45 46 49 4E 45 44 5D 87 12 42 4B
-80 48 EE 48 6A 44 2A 44 32 54 8B 5B 55 4E 44 45
-46 49 4E 45 44 5D 87 12 42 4B 80 48 EE 48 6A 44
-00 45 2A 44 66 54 3D 41 B2 4E 0E 18 A2 4E 0C 18
-3E 4F 30 40 5A 51 4C 50 06 4D 41 52 4B 45 52 00
-B0 12 B8 4D BA 40 84 12 FC FF BA 40 64 54 FE FF
-9A 42 C8 1D 00 00 28 83 8A 48 02 00 A2 52 C6 1D
-30 40 00 4E 1C 15 B0 12 2A 44 80 48 EE 48 4A 46
-BA 54 AA 49 40 46 CE 4C D4 54 BC 54 39 4E 39 80
+3F 40 80 1C 30 12 D4 4F 47 3F 24 4D 86 5B 54 48
+45 4E 5D 00 30 4D 0C 4E 38 4F 3B 4F 39 4F 0E 4B
+0E 5C 10 24 1B 83 06 30 1C 83 04 30 19 53 F9 98
+FF FF F5 27 2D 4D 3E 4F 30 4D 2F 53 9F 83 00 00
+F9 23 2F 53 2D 53 F7 3F 1C 51 86 5B 45 4C 53 45
+5D 00 0D 12 87 12 24 44 00 00 AA 46 70 4A F2 47
+62 4A 68 46 4C 44 B4 51 70 46 2E 44 06 5B 54 48
+45 4E 5D 00 26 51 8E 51 4A 51 6C 51 26 47 70 46
+2E 44 06 5B 45 4C 53 45 5D 00 26 51 A4 51 4A 51
+6A 51 26 47 2E 44 04 5B 49 46 5D 00 26 51 6C 51
+48 44 6A 51 22 46 2E 44 05 0D 0A 6B 6F 20 00 46
+D4 44 C4 44 48 44 6C 51 5A 51 84 5B 49 46 5D 00
+0E 93 3E 4F C6 27 30 4D 2F 53 30 4D CA 51 89 5B
+44 45 46 49 4E 45 44 5D 0D 12 87 12 70 4A F2 47
+4A 48 D8 51 26 47 DE 51 8B 5B 55 4E 44 45 46 49
+4E 45 44 5D 0D 12 87 12 E8 51 0C 52 3D 41 30 40
+B6 46 38 40 C0 1D 0A 4E 39 48 2E 48 09 5E 1E 52
+C4 1D 09 9E 03 24 7A 9E FC 27 1E 83 0A 4E 2A 88
+82 4A C4 1D 30 4D 1C 15 87 12 F2 47 4A 48 42 44
+4A 52 06 49 4C 44 00 4C 64 52 4C 52 39 4E 39 80
 86 12 08 24 19 53 02 20 2E 4E 04 3C 2E 53 19 53
-01 24 2E 82 1B 17 30 41 32 B0 00 02 01 24 3E 4F
-30 41 3E 40 28 00 B0 12 A4 54 B0 12 D8 54 19 42
-C6 1D A2 53 C6 1D 89 4E 00 00 3E 40 29 00 1C 15
-12 12 C4 1D 92 53 C4 1D B0 12 2A 44 80 48 AA 49
-40 46 20 55 16 55 21 53 3E 90 10 00 81 2D DA 2B
-22 55 B2 41 C4 1D D6 3F 87 12 42 4B 74 48 30 55
-0C 43 1B 42 C6 1D A2 53 C6 1D 6A 4E 3E 4F 7A 90
-23 00 29 20 92 53 C4 1D B0 12 A4 54 B0 12 D8 54
-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 C6 1D A2 53 C6 1D 89 4E 00 00
-3E 4F 3D 41 30 4D 7A 90 26 00 09 20 3C 40 10 02
-92 53 C4 1D B0 12 A4 54 B0 12 D8 54 EB 3F 7A 90
-40 00 16 20 3C 40 20 00 92 53 C4 1D B0 12 FE 54
-0C 20 3C 50 10 00 3E 40 2B 00 B0 12 FE 54 92 92
-C0 1D C4 1D 02 24 92 53 C4 1D 8E 10 0C 5E D8 3F
-B0 12 FE 54 FA 23 3C 50 10 00 B0 12 E2 54 EF 3F
-0C 43 1B 42 C6 1D A2 53 C6 1D 87 12 42 4B 74 48
-02 56 FE 90 26 00 00 00 3E 40 20 00 03 20 3C 50
-82 00 C6 3F B0 12 FE 54 E1 23 3C 50 80 00 B0 12
-E2 54 DC 3F D6 46 04 52 45 54 49 00 87 12 14 48
-00 13 B0 4A 2A 44 14 48 2C 00 28 55 FA 55 40 56
-09 4B 2E 4E 0E DC A2 3F 00 4F 03 4D 4F 56 84 12
-36 56 00 40 4A 56 05 4D 4F 56 2E 42 84 12 36 56
-40 40 00 00 03 41 44 44 84 12 36 56 00 50 64 56
-05 41 44 44 2E 42 84 12 36 56 40 50 70 56 04 41
-44 44 43 00 84 12 36 56 00 60 7E 56 06 41 44 44
-43 2E 42 00 84 12 36 56 40 60 26 56 04 53 55 42
-43 00 84 12 36 56 00 70 9C 56 06 53 55 42 43 2E
-42 00 84 12 36 56 40 70 AA 56 03 53 55 42 84 12
-36 56 00 80 BA 56 05 53 55 42 2E 42 84 12 36 56
-40 80 E2 4E 03 43 4D 50 84 12 36 56 00 90 D4 56
-05 43 4D 50 2E 42 84 12 36 56 40 90 D0 4E 04 44
-41 44 44 00 84 12 36 56 00 A0 EE 56 06 44 41 44
-44 2E 42 00 84 12 36 56 40 A0 E0 56 03 42 49 54
-84 12 36 56 00 B0 0C 57 05 42 49 54 2E 42 84 12
-36 56 40 B0 18 57 03 42 49 43 84 12 36 56 00 C0
-26 57 05 42 49 43 2E 42 84 12 36 56 40 C0 32 57
-03 42 49 53 84 12 36 56 00 D0 40 57 05 42 49 53
-2E 42 84 12 36 56 40 D0 00 00 03 58 4F 52 84 12
-36 56 00 E0 5A 57 05 58 4F 52 2E 42 84 12 36 56
-40 E0 8C 56 03 41 4E 44 84 12 36 56 00 F0 74 57
-05 41 4E 44 2E 42 84 12 36 56 40 F0 42 4B 28 55
-92 57 0A 4C 3C F0 70 00 8A 10 3A F0 0F 00 0C DA
-4F 3F C6 56 03 52 52 43 84 12 8C 57 00 10 A4 57
-05 52 52 43 2E 42 84 12 8C 57 40 10 B0 57 04 53
-57 50 42 00 84 12 8C 57 80 10 BE 57 03 52 52 41
-84 12 8C 57 00 11 CC 57 05 52 52 41 2E 42 84 12
-8C 57 40 11 D8 57 03 53 58 54 84 12 8C 57 80 11
-00 00 04 50 55 53 48 00 84 12 8C 57 00 12 F2 57
-06 50 55 53 48 2E 42 00 84 12 8C 57 40 12 4C 57
-04 43 41 4C 4C 00 84 12 8C 57 80 12 1A 53 0E 4A
-87 12 34 46 1E 48 0D 6F 75 74 20 6F 66 20 62 6F
-75 6E 64 73 4C 4C 42 4B 74 48 3C 58 92 53 C4 1D
-3E 40 2C 00 B0 12 2A 44 80 48 AA 49 40 46 CE 4C
-F0 55 54 58 0A 4E 3E 4F 1A 83 E0 33 29 4E 59 0E
-0A 28 08 4C 59 0A 01 28 0C 8A 08 8A 38 90 10 00
-D5 2F 5A 0E 94 3F 2A 92 D1 2F 8A 10 5A 06 8F 3F
-E6 57 06 52 52 43 4D 2E 41 00 84 12 36 58 40 00
-82 58 04 52 52 43 4D 00 84 12 36 58 50 00 92 58
-06 52 52 41 4D 2E 41 00 84 12 36 58 40 01 A0 58
-04 52 52 41 4D 00 84 12 36 58 50 01 B0 58 06 52
-4C 41 4D 2E 41 00 84 12 36 58 40 02 BE 58 04 52
-4C 41 4D 00 84 12 36 58 50 02 CE 58 06 52 52 55
-4D 2E 41 00 84 12 36 58 40 03 DC 58 04 52 52 55
-4D 00 84 12 36 58 50 03 00 58 07 50 55 53 48 4D
-2E 41 84 12 36 58 00 14 FA 58 05 50 55 53 48 4D
-84 12 36 58 00 15 0A 59 06 50 4F 50 4D 2E 41 00
-84 12 36 58 00 16 18 59 04 50 4F 50 4D 00 84 12
-36 58 00 17 EC 58 03 53 3E 3D 85 12 00 38 36 59
-02 53 3C 00 85 12 00 34 28 59 03 30 3E 3D 85 12
-00 30 4A 59 02 30 3C 00 85 12 00 30 00 00 02 55
-3C 00 85 12 00 2C 5E 59 03 55 3E 3D 85 12 00 28
-54 59 03 30 3C 3E 85 12 00 24 72 59 02 30 3D 00
-85 12 00 20 00 00 02 49 46 00 1A 42 C6 1D 8A 4E
-00 00 A2 53 C6 1D 0E 4A 30 4D 68 59 04 54 48 45
-4E 00 1A 42 C6 1D 08 4E 3E 4F 09 48 29 53 0A 89
-0A 11 3A 90 00 02 33 2F 88 DA 00 00 30 4D FC 56
-04 45 4C 53 45 00 1A 42 C6 1D BA 40 00 3C 00 00
-A2 53 C6 1D 2F 83 8F 4A 00 00 E3 3F 9C 59 05 55
-4E 54 49 4C 3A 4F 08 4E 3E 4F 19 42 C6 1D 2A 83
-0A 89 0A 11 3A 90 00 FE 12 3B 3A F0 FF 03 08 DA
-89 48 00 00 A2 53 C6 1D 30 4D 80 57 05 41 47 41
-49 4E 0A 4E 38 40 00 3C E7 3F 00 00 05 57 48 49
-4C 45 87 12 8A 59 76 44 2A 44 40 59 06 52 45 50
-45 41 54 00 87 12 12 5A A2 59 2A 44 3E 5A 3D 41
-08 4E 3E 4F 2A 48 B2 92 C4 1D CD 2F 98 42 C6 1D
-00 00 30 4D 10 58 03 42 57 31 84 12 3C 5A 00 00
-56 5A 03 42 57 32 84 12 3C 5A 00 00 62 5A 03 42
-57 33 84 12 3C 5A 00 00 7A 5A 3D 41 1A 42 C6 1D
-28 4E B2 92 C4 1D 90 2B BA 4F 00 00 A2 53 C6 1D
-8E 4A 00 00 3E 4F 30 4D 00 00 03 46 57 31 84 12
-78 5A 00 00 9A 5A 03 46 57 32 84 12 78 5A 00 00
-A6 5A 03 46 57 33 84 12 78 5A 00 00 00 00 05 3F
-47 4F 54 4F 3E 90 00 30 07 24 3E E0 00 04 3E B0
-00 10 02 24 3E E0 00 08 87 12 C0 4C DA 4A 2A 44
-B2 5A 04 47 4F 54 4F 00 2F 83 8F 4E 00 00 3E 40
-00 3C F2 3F 87 12 42 4B 74 48 FC 5A 69 4E 3E 4F
-3C 4F 2C 4C 1B 42 C6 1D A2 53 C6 1D 79 90 52 00
-0A 20 B0 12 FE 54 5E 0E 5E 0E 0E DC 8B 4E 00 00
-0E 4B 3D 41 30 4D 79 90 23 00 0D 20 3C C0 40 00
-92 53 C4 1D A2 53 C6 1D B0 12 A4 54 BB 4F 02 00
-3E F0 0F 00 E8 3F 79 90 26 00 03 20 3C E0 E0 00
-EF 3F 3C C0 F0 00 79 90 40 00 12 20 92 53 C4 1D
-B0 12 FE 54 D8 23 3C D0 10 00 3E 40 2B 00 B0 12
-FE 54 92 92 C0 1D C4 1D CE 27 92 53 C4 1D CB 3F
-3C D0 30 00 A2 53 C6 1D 3E 40 28 00 B0 12 A4 54
-BB 4F 02 00 3E 40 29 00 EA 3F 87 12 42 4B 74 48
-A2 5B 3B 4F 2C 4B 69 4E 7E 40 20 00 79 90 52 00
-03 20 B0 12 FE 54 B1 3F 3C C0 F0 00 A2 53 C6 1D
-79 90 26 00 09 20 3C D0 60 00 92 53 C4 1D B0 12
-A4 54 BB 4F 02 00 A1 3F 3C D0 70 00 3E 40 28 00
-B0 12 A4 54 BB 4F 02 00 3E 40 29 00 E2 3F 14 48
-2C 00 F4 5A 9A 5B 66 44 2A 44 56 56 04 4D 4F 56
-41 00 84 12 EE 5B C0 00 6E 5A 04 43 4D 50 41 00
-84 12 EE 5B D0 00 0C 5A 04 41 44 44 41 00 84 12
-EE 5B E0 00 2C 5A 04 53 55 42 41 00 84 12 EE 5B
-F0 00 0A 5C 05 43 41 4C 4C 41 87 12 42 4B 74 48
-42 5C 1B 42 C6 1D A2 53 C6 1D 6E 4E 3C 40 34 01
-7E 90 52 00 0B 20 7E 40 20 00 B0 12 FE 54 5C 0E
-0C DE 8B 4C 00 00 3E 4F 3D 41 30 4D 2C 53 7E 90
-40 00 0B 20 92 53 C4 1D 7E 40 20 00 B0 12 FE 54
-EE 23 1C 53 3E 40 2B 00 E8 3F A2 53 C6 1D 7E 90
-23 00 09 20 3C 40 3B 01 92 53 C4 1D B0 12 A4 54
-BB 4F 02 00 DC 3F 7E 90 26 00 02 20 2C 53 F4 3F
-7E 40 28 00 1C 83 B0 12 A4 54 BB 4F 02 00 3E 40
-29 00 CB 3F 87 12 42 4B 74 48 CC 5C 69 4E 3E 4F
-3C 40 00 18 79 90 52 00 05 20 B0 12 FE 54 0E 4C
-3D 41 30 4D 82 43 58 61 79 90 23 00 0B 20 92 53
-C4 1D B0 12 A4 54 2F 53 3E F0 0F 00 5E 0A 5E 0E
-0C DE ED 3F 79 90 26 00 F2 27 79 90 40 00 12 20
-92 53 C4 1D B0 12 FE 54 E2 23 3E 40 2B 00 92 53
-C4 1D B0 12 FE 54 92 92 C0 1D C4 1D D8 27 92 53
-C4 1D D5 3F 3E 40 28 00 B0 12 A4 54 8F 4E 00 00
-3E 40 29 00 B0 12 FE 54 3E 4F 3E F0 0F 00 0C DE
-EA 3F 87 12 42 4B 74 48 5A 5D 3C 4F 69 4E 3E 40
-20 00 79 90 52 00 BB 27 82 43 58 61 79 90 26 00
-08 20 92 53 C4 1D B0 12 A4 54 2F 53 3E F0 0F 00
-BF 3F 3E 40 28 00 B0 12 A4 54 F7 3F 1B 42 C6 1D
-A2 53 C6 1D 0C 4E 3E 4F 1C D2 58 61 82 43 58 61
-3C DE 8B 4C 00 00 B2 41 C4 1D 30 4D 14 48 C4 1D
-EA 44 86 44 14 48 2C 00 C4 5C 52 5D 8C 5D 3C 46
-36 56 FC 5B 04 4D 4F 56 58 00 84 12 AC 5D 40 00
-00 40 C4 5D 06 4D 4F 56 58 2E 41 00 84 12 AC 5D
-00 00 40 40 D4 5D 06 4D 4F 56 58 2E 42 00 84 12
-AC 5D 40 00 40 40 18 5C 04 41 44 44 58 00 84 12
-AC 5D 40 00 00 50 F8 5D 06 41 44 44 58 2E 41 00
-84 12 AC 5D 00 00 40 50 08 5E 06 41 44 44 58 2E
-42 00 84 12 AC 5D 40 00 40 50 1A 5E 05 41 44 44
-43 58 84 12 AC 5D 40 00 00 60 2C 5E 07 41 44 44
-43 58 2E 41 84 12 AC 5D 00 00 40 60 3C 5E 07 41
-44 44 43 58 2E 42 84 12 AC 5D 40 00 40 60 26 5C
-05 53 55 42 43 58 84 12 AC 5D 40 00 00 70 60 5E
-07 53 55 42 43 58 2E 41 84 12 AC 5D 00 00 40 70
-70 5E 07 53 55 42 43 58 2E 42 84 12 AC 5D 40 00
-40 70 82 5E 04 53 55 42 58 00 84 12 AC 5D 40 00
-00 80 94 5E 06 53 55 42 58 2E 41 00 84 12 AC 5D
-00 00 40 80 A4 5E 06 53 55 42 58 2E 42 00 84 12
-AC 5D 40 00 40 80 34 5C 04 43 4D 50 58 00 84 12
-AC 5D 40 00 00 90 C8 5E 06 43 4D 50 58 2E 41 00
-84 12 AC 5D 00 00 40 90 D8 5E 06 43 4D 50 58 2E
-42 00 84 12 AC 5D 40 00 40 90 C0 59 05 44 41 44
-44 58 84 12 AC 5D 40 00 00 A0 FC 5E 07 44 41 44
-44 58 2E 41 84 12 AC 5D 00 00 40 A0 0C 5F 07 44
-41 44 44 58 2E 42 84 12 AC 5D 40 00 40 A0 EA 5E
-04 42 49 54 58 00 84 12 AC 5D 40 00 00 B0 30 5F
-06 42 49 54 58 2E 41 00 84 12 AC 5D 00 00 40 B0
-40 5F 06 42 49 54 58 2E 42 00 84 12 AC 5D 40 00
-40 B0 52 5F 04 42 49 43 58 00 84 12 AC 5D 40 00
-00 C0 64 5F 06 42 49 43 58 2E 41 00 84 12 AC 5D
-00 00 40 C0 74 5F 06 42 49 43 58 2E 42 00 84 12
-AC 5D 40 00 40 C0 86 5F 04 42 49 53 58 00 84 12
-AC 5D 40 00 00 D0 98 5F 06 42 49 53 58 2E 41 00
-84 12 AC 5D 00 00 40 D0 A8 5F 06 42 49 53 58 2E
-42 00 84 12 AC 5D 40 00 40 D0 66 57 04 58 4F 52
-58 00 84 12 AC 5D 40 00 00 E0 CC 5F 06 58 4F 52
-58 2E 41 00 84 12 AC 5D 00 00 40 E0 DC 5F 06 58
-4F 52 58 2E 42 00 84 12 AC 5D 40 00 40 E0 4E 5E
-04 41 4E 44 58 00 84 12 AC 5D 40 00 00 F0 00 60
-06 41 4E 44 58 2E 41 00 84 12 AC 5D 00 00 40 F0
-10 60 06 41 4E 44 58 2E 42 00 84 12 AC 5D 40 00
-40 F0 14 48 C4 1D EA 44 86 44 42 4B C4 5C 8C 5D
-3C 46 8C 57 B6 5E 04 52 52 43 58 00 84 12 32 60
-40 00 00 10 46 60 06 52 52 43 58 2E 41 00 84 12
-32 60 00 00 40 10 56 60 06 52 52 43 58 2E 42 00
-84 12 32 60 40 00 40 10 68 60 04 52 52 55 58 00
-84 12 32 60 40 01 00 10 7A 60 06 52 52 55 58 2E
-41 00 84 12 32 60 00 01 40 10 8A 60 06 52 52 55
-58 2E 42 00 84 12 32 60 40 01 40 10 9C 60 05 53
-57 50 42 58 84 12 32 60 40 00 80 10 AE 60 07 53
-57 50 42 58 2E 41 84 12 32 60 00 00 80 10 BE 60
-04 52 52 41 58 00 84 12 32 60 40 00 00 11 D0 60
-06 52 52 41 58 2E 41 00 84 12 32 60 00 00 40 11
-E0 60 06 52 52 41 58 2E 42 00 84 12 32 60 40 00
-40 11 F2 60 04 53 58 54 58 00 84 12 32 60 40 00
-80 11 04 61 06 53 58 54 58 2E 41 00 84 12 32 60
-00 00 80 11 7C 59 05 50 55 53 48 58 84 12 32 60
-40 00 00 12 26 61 07 50 55 53 48 58 2E 41 84 12
-32 60 00 00 40 12 36 61 07 50 55 53 48 58 2E 42
-84 12 32 60 40 00 40 12 00 00 14 61 03 52 50 54
-87 12 42 4B 74 48 68 61 29 4E 7E 40 20 00 79 90
-52 00 06 20 B0 12 FE 54 03 24 3E D0 80 00 05 3C
-B0 12 A4 54 1E 83 3E F0 0F 00 82 4E 58 61 3E 4F
-3D 41 30 4D
+01 24 2E 82 1B 17 30 41 3E 40 28 00 B0 12 36 52
+19 42 C6 1D A2 53 C6 1D 89 4E 00 00 3E 40 29 00
+1C 15 12 12 C4 1D 92 53 C4 1D 87 12 F2 47 06 49
+4C 44 A0 52 96 52 21 53 3E 90 10 00 80 2D E2 2B
+A2 52 B2 41 C4 1D DE 3F 0D 12 87 12 70 4A 12 52
+B2 52 0C 43 1B 42 C6 1D A2 53 C6 1D 6A 4E 3E 4F
+7A 90 23 00 27 20 92 53 C4 1D B0 12 36 52 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 C6 1D A2 53 C6 1D 89 4E 00 00 3E 4F
+3D 41 30 4D 7A 90 26 00 07 20 3C 40 10 02 92 53
+C4 1D B0 12 36 52 ED 3F 7A 90 40 00 16 20 3C 40
+20 00 92 53 C4 1D B0 12 80 52 0C 20 3C 50 10 00
+3E 40 2B 00 B0 12 80 52 92 92 C0 1D C4 1D 02 24
+92 53 C4 1D 8E 10 0C 5E DA 3F B0 12 80 52 FA 23
+3C 50 10 00 B0 12 68 52 EF 3F 0C 43 1B 42 C6 1D
+A2 53 C6 1D 0D 12 87 12 70 4A 12 52 7E 53 FE 90
+26 00 00 00 3E 40 20 00 03 20 3C 50 82 00 C7 3F
+B0 12 80 52 E0 23 3C 50 80 00 B0 12 68 52 DB 3F
+00 00 04 52 45 54 49 00 0D 12 87 12 24 44 00 13
+F8 49 26 47 24 44 2C 00 A8 52 74 53 BE 53 09 4B
+2E 4E 0E DC A2 3F F6 4D 03 4D 4F 56 84 12 B4 53
+00 40 C8 53 05 4D 4F 56 2E 42 84 12 B4 53 40 40
+00 00 03 41 44 44 84 12 B4 53 00 50 E2 53 05 41
+44 44 2E 42 84 12 B4 53 40 50 EE 53 04 41 44 44
+43 00 84 12 B4 53 00 60 FC 53 06 41 44 44 43 2E
+42 00 84 12 B4 53 40 60 A2 53 04 53 55 42 43 00
+84 12 B4 53 00 70 1A 54 06 53 55 42 43 2E 42 00
+84 12 B4 53 40 70 28 54 03 53 55 42 84 12 B4 53
+00 80 38 54 05 53 55 42 2E 42 84 12 B4 53 40 80
+D2 4D 03 43 4D 50 84 12 B4 53 00 90 52 54 05 43
+4D 50 2E 42 84 12 B4 53 40 90 BE 4D 04 44 41 44
+44 00 84 12 B4 53 00 A0 6C 54 06 44 41 44 44 2E
+42 00 84 12 B4 53 40 A0 5E 54 03 42 49 54 84 12
+B4 53 00 B0 8A 54 05 42 49 54 2E 42 84 12 B4 53
+40 B0 96 54 03 42 49 43 84 12 B4 53 00 C0 A4 54
+05 42 49 43 2E 42 84 12 B4 53 40 C0 B0 54 03 42
+49 53 84 12 B4 53 00 D0 BE 54 05 42 49 53 2E 42
+84 12 B4 53 40 D0 00 00 03 58 4F 52 84 12 B4 53
+00 E0 D8 54 05 58 4F 52 2E 42 84 12 B4 53 40 E0
+0A 54 03 41 4E 44 84 12 B4 53 00 F0 F2 54 05 41
+4E 44 2E 42 84 12 B4 53 40 F0 70 4A A8 52 10 55
+0A 4C 3C F0 70 00 8A 10 3A F0 0F 00 0C DA 4F 3F
+44 54 03 52 52 43 84 12 0A 55 00 10 22 55 05 52
+52 43 2E 42 84 12 0A 55 40 10 2E 55 04 53 57 50
+42 00 84 12 0A 55 80 10 3C 55 03 52 52 41 84 12
+0A 55 00 11 4A 55 05 52 52 41 2E 42 84 12 0A 55
+40 11 56 55 03 53 58 54 84 12 0A 55 80 11 00 00
+04 50 55 53 48 00 84 12 0A 55 00 12 70 55 06 50
+55 53 48 2E 42 00 84 12 0A 55 40 12 CA 54 04 43
+41 4C 4C 00 84 12 0A 55 80 12 1A 53 0E 4A 0D 12
+87 12 9C 47 2E 44 0D 6F 75 74 20 6F 66 20 62 6F
+75 6E 64 73 7A 4B 70 4A 12 52 BC 55 92 53 C4 1D
+3E 40 2C 00 87 12 F2 47 06 49 4C 44 00 4C 6A 53
+D2 55 0A 4E 3E 4F 1A 83 E0 33 29 4E 59 0E 0A 28
+08 4C 59 0A 01 28 0C 8A 08 8A 38 90 10 00 D5 2F
+5A 0E 94 3F 2A 92 D1 2F 8A 10 5A 06 8F 3F 64 55
+04 52 52 43 4D 00 84 12 B6 55 50 00 00 56 04 52
+52 41 4D 00 84 12 B6 55 50 01 0E 56 04 52 4C 41
+4D 00 84 12 B6 55 50 02 1C 56 04 52 52 55 4D 00
+84 12 B6 55 50 03 7E 55 05 50 55 53 48 4D 84 12
+B6 55 00 15 38 56 04 50 4F 50 4D 00 84 12 B6 55
+00 17 2A 56 03 53 3E 3D 85 12 00 38 54 56 02 53
+3C 00 85 12 00 34 46 56 03 30 3E 3D 85 12 00 30
+68 56 02 30 3C 00 85 12 00 30 00 00 02 55 3C 00
+85 12 00 2C 7C 56 03 55 3E 3D 85 12 00 28 72 56
+03 30 3C 3E 85 12 00 24 90 56 02 30 3D 00 85 12
+00 20 00 00 02 49 46 00 1A 42 C6 1D 8A 4E 00 00
+A2 53 C6 1D 0E 4A 30 4D 86 56 04 54 48 45 4E 00
+1A 42 C6 1D 08 4E 3E 4F 09 48 29 53 0A 89 0A 11
+3A 90 00 02 63 2F 88 DA 00 00 30 4D 7A 54 04 45
+4C 53 45 00 1A 42 C6 1D BA 40 00 3C 00 00 A2 53
+C6 1D 2F 83 8F 4A 00 00 E3 3F BA 56 05 55 4E 54
+49 4C 3A 4F 08 4E 3E 4F 19 42 C6 1D 2A 83 0A 89
+0A 11 3A 90 00 FE 42 3B 3A F0 FF 03 08 DA 89 48
+00 00 A2 53 C6 1D 30 4D FE 54 05 41 47 41 49 4E
+0A 4E 38 40 00 3C E7 3F 00 00 05 57 48 49 4C 45
+0D 12 87 12 A8 56 82 46 26 47 5E 56 06 52 45 50
+45 41 54 00 0D 12 87 12 30 57 C0 56 26 47 60 57
+3D 41 08 4E 3E 4F 2A 48 B2 92 C4 1D CB 2F 98 42
+C6 1D 00 00 30 4D 8E 55 03 42 57 31 84 12 5E 57
+00 00 78 57 03 42 57 32 84 12 5E 57 00 00 84 57
+03 42 57 33 84 12 5E 57 00 00 9C 57 3D 41 1A 42
+C6 1D 28 4E B2 92 C4 1D 8E 2B BA 4F 00 00 A2 53
+C6 1D 8E 4A 00 00 3E 4F 30 4D 00 00 03 46 57 31
+84 12 9A 57 00 00 BC 57 03 46 57 32 84 12 9A 57
+00 00 C8 57 03 46 57 33 84 12 9A 57 00 00 D4 57
+04 47 4F 54 4F 00 2F 83 8F 4E 00 00 3E 40 00 3C
+0D 12 87 12 F0 4B 18 4A 26 47 00 00 05 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
 @FFFE
-A2 52
+6E 50
 q
index caabf28..75b0e72 100644 (file)
@@ -1,12 +1,19 @@
 ;connect  param3
 testlink
-if result=0 connect  param3
+if result<1 connect  param3
 
 inputbox 'Send this file to the MSP430FR target:' ' ' param2
 
+
+uptime varstart
+
+
+
+
+
 strcompare param4 'NOECHO'
 if result = 0 then
-    sendln 'NOECHO PWR_STATE [DEFINED] STOP [IF] STOP [THEN]' ; set no echo from FastForth
+    send 'NOECHO [DEFINED] STOP [IF] STOP [THEN] ' ; set no echo from FastForth
     setecho 0       ; suppr. echo from Teraterm
     showtt 0
 ;    clearscreen 1
@@ -17,17 +24,19 @@ endif
 
 strcompare param4 'HALF'
 if result = 0 then
-    sendln 'NOECHO PWR_STATE [DEFINED] STOP [IF] STOP [THEN]' ; set no echo from FastForth
+    send 'NOECHO [DEFINED] STOP [IF] STOP [THEN] ' ; set no echo from FastForth
+    setecho 1
     showtt 0
 ;    clearscreen 1
     sendfile inputstr 0
     setecho 1
+    send #4
     showtt 1
     goto end
 endif
 
 ; default mode = ECHO
-    sendln 'ECHO PWR_STATE [DEFINED] STOP [IF] STOP [THEN]'
+    send 'ECHO [DEFINED] STOP [IF] STOP [THEN] '
     setecho 0       ; no echo from Teraterm
     showtt 0
 ;    clearscreen 1
@@ -35,10 +44,22 @@ endif
     showtt 1
 
 :end
-end
+
+
+; do something...
+
+uptime varend
+diff = varend - varstart
+sprintf2 str "download and execute time: %d msec" diff
+messagebox str "teraterm.exe"
+
+unlink
+;end
 
 
 ; param1 = this macro
 ; param2 = file to send
 ; param3 = "/C"
 ; param4 = "ECHO" or "NOECHO" or "HALF" or nothing
+
+
index 10f081f..73bfebb 100644 (file)
@@ -1,8 +1,8 @@
 ; -*- coding: utf-8 -*-
 ; http://patorjk.com/software/taag/#p=display&f=Banner&t=Fast Forth
 
-; Fast Forth For Texas Instrument MSP430FRxxxx FRAM devices
-; Copyright (C) <2018>  <J.M. THOORENS>
+; Fast Forth For Texas Instrument MSP430FRxxxx FRAM devices with UART TERMINAL
+; Copyright (C) <2019>  <J.M. THOORENS>
 ;
 ; This program is free software: you can redistribute it and/or modify
 ; it under the terms of the GNU General Public License as published by
 ; You should have received a copy of the GNU General Public License
 ; along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
-; ----------------------------------------------------------------------
-; compiled with MACROASSEMBLER AS (http://john.ccac.rwth-aachen.de:8000/as/)
-; ----------------------------------------------------------------------
-
 ;-------------------------------------------------------------------------------
 ; Vingt fois sur le métier remettez votre ouvrage,
 ; Polissez-le sans cesse, et le repolissez,
 ;                                              Molière, Le Malade imaginaire ;-)
 ;-------------------------------------------------------------------------------
 
-;===============================================================================
-;===============================================================================
-; before assembling or programming you must set TARGET in param1 (SHIFT+F8)
-; according to the selected TARGET below
-;===============================================================================
-;===============================================================================
-
-VER .equ "V301" ; FORTH version
-
-    macexp off      ; uncomment to hide macros development in forthMSP430FR.lst
+;-------------------------------------------------------------------------------
+; Using SCITE editor: copy https://www.scintilla.org/Sc420.exe to \prog\scite.exe
+;-------------------------------------------------------------------------------
 
 ;-------------------------------------------------------------------------------
-; TARGETS kernel    ; sizes are for 8MHz, DTC=1, THREADS=1, 3WIRES (XON/XOFF)
+; Using MACRO ASSEMBLER AS
+; unzip http://john.ccac.rwth-aachen.de:8000/ftp/as/precompiled/i386-unknown-win32/aswcurr.zip to \prog\
 ;-------------------------------------------------------------------------------
-;                                                           ;INFO+VECTOR+ MAIN
-;MSP_EXP430FR5739  ; compile for MSP-EXP430FR5739 launchpad ; 24 +  2   + 3434 bytes
-;MSP_EXP430FR5969  ; compile for MSP-EXP430FR5969 launchpad ; 24 +  2   + 3424 bytes
-MSP_EXP430FR5994  ;; compile for MSP-EXP430FR5994 launchpad ; 24 +  2   + 3444 bytes
-;MSP_EXP430FR6989  ; compile for MSP-EXP430FR6989 launchpad ; 24 +  2   + 3448 bytes
-;MSP_EXP430FR4133  ; compile for MSP-EXP430FR4133 launchpad ; 24 +  2   + 3484 bytes
-;MSP_EXP430FR2355  ; compile for MSP-EXP430FR2355 launchpad ; 24 +  2   + 3416 bytes
-;MSP_EXP430FR2433  ; compile for MSP-EXP430FR2433 launchpad ; 24 +  2   + 3408 bytes
-;LP_MSP430FR2476   ; compile for LP_MSP430FR2476  launchpad ; 24 +  2   + 3422 bytes
-;CHIPSTICK_FR2433  ; compile for "CHIPSTICK" of M. Ken BOAK ; 24 +  2   + 3414 bytes
 
-; choose DTC (Direct Threaded Code) model, if you don't know, choose 1
-DTC .equ 1  ; DTC model 1 : DOCOL = CALL rDOCOL           14 cycles 1 word      shortest DTC model
-            ; DTC model 2 : DOCOL = PUSH IP, CALL rEXIT   13 cycles 2 words     good compromize for mix FORTH/ASM code
+VER .equ "V302"     ; FORTH version
+
+;╔══════════════════════════════════════════════════════════════════════════════════╗
+;║ before assembling or programming you must set TARGET in scite param1 (SHIFT+F8)  ║
+;║ according to the selected (uncommented) TARGET below                             ║
+;╚══════════════════════════════════════════════════════════════════════════════════╝
+
+;╔══════════════════════════════════════════════════════════════════════════════════╗
+;║ FAST FORTH has a minimalistic footprint to enable its use from 8k FRAM devices   ║
+;║ kernel size below are for 8MHz, DTC=1, THREADS=1, 4WIRES (RTS) options           ║
+;╚══════════════════════════════════════════════════════════════════════════════════╝
+;    TARGET        ;                                        ;INFO+VECTOR+ MAIN bytes
+;MSP_EXP430FR5739  ; compile for MSP-EXP430FR5739 launchpad ; 26 +  2   + 2854 bytes
+;MSP_EXP430FR5969  ; compile for MSP-EXP430FR5969 launchpad ; 26 +  2   + 2834 bytes
+;MSP_EXP430FR5994  ; compile for MSP-EXP430FR5994 launchpad ; 26 +  2   + 2864 bytes
+;MSP_EXP430FR6989  ; compile for MSP-EXP430FR6989 launchpad ; 26 +  2   + 2870 bytes
+;MSP_EXP430FR4133  ; compile for MSP-EXP430FR4133 launchpad ; 26 +  2   + 2904 bytes
+;MSP_EXP430FR2355  ; compile for MSP-EXP430FR2355 launchpad ; 26 +  2   + 2842 bytes
+;MSP_EXP430FR2433  ; compile for MSP-EXP430FR2433 launchpad ; 26 +  2   + 2828 bytes
+;LP_MSP430FR2476   ; compile for LP_MSP430FR2476  launchpad ; 26 +  2   + 2828 bytes
+CHIPSTICK_FR2433  ;; compile for "CHIPSTICK" of M. Ken BOAK ; 26 +  2   + 2834 bytes
+
+; choose DTC (Direct Threaded Code) model, if you don't know, choose 2, for DOxxx routines without scratch register use
+DTC .equ 2  ; DTC model 1 : DOCOL = CALL rDOCOL           14 cycles 1 word      shortest DTC model
+            ; DTC model 2 : DOCOL = PUSH IP, CALL rEXIT   13 cycles 2 words     best compromize to mix FORTH/ASM code
             ; DTC model 3 : inlined DOCOL                  9 cycles 4 words     fastest
 
 THREADS     .equ 16 ;  1,  2 ,  4 ,  8 ,  16,  32  search entries in dictionnary.
-                    ; +0, +42, +54, +70, +104, +168 bytes, usefull to speed up compilation;
-                    ; choose 16 if FRAM > 15 kb, else 1.
+                    ; +0, +28, +48, +56, +90, +154 bytes, usefull to speed up compilation;
+                    ; the FORTH interpreter is accelerated by about a square root factor of THREADS.
 
-FREQUENCY   .equ 16 ; fully tested at 1,2,4,8,16 MHz (+ 24 MHz for MSP430FR57xx,MSP430FR2355)
+FREQUENCY   .equ 1 ; fully tested at 1,2,4,8,16 MHz (+ 24 MHz for MSP430FR57xx,MSP430FR2355)
+
+
+;╔══════════════════════════════════════════════════════════════════════════════════╗
+;║ MINIMAL ADDONS if you want a conventional FORTH: CONDCOMP + CORE_COMPLEMENT      ║
+;╠══════════════════════════════════════════════════════════════════════════════════╣
+;║ MINIMAL ADDONS for FASTFORTH to learn by yourself: MSP430ASSEMBLER + CONDCOMP    ║
+;╚══════════════════════════════════════════════════════════════════════════════════╝
 
 ;-------------------------------------------------------------------------------
-; KERNEL OPTIONS that can't be added later
+; KERNEL ADDONs that can't be added later
 ;-------------------------------------------------------------------------------
-CONDCOMP            ;; +  320 bytes : adds conditionnal compilation : COMPARE [DEFINED] [UNDEFINED] [IF] [ELSE] [THEN] MARKER
-MSP430ASSEMBLER     ;; + 1690 bytes : adds embedded assembler with TI syntax; without, you can do all but all much more slowly...
+MSP430ASSEMBLER     ;; + 1698 bytes : adds embedded assembler with TI syntax; without, you can do all but bigger and slower...
+CONDCOMP            ;; +  242 bytes : adds conditionnal compilation [IF] [ELSE] [THEN] [DEFINED] [UNDEFINED]
 DOUBLE_INPUT        ;; +   58 bytes : adds the interpretation input for double numbers (dot numbers)
-EXTENDED_MEM        ;; +  318 bytes : adds to assembler the data access beyond $FFFF.
-EXTENDED_ASM        ;; + 1488 bytes : adds extended assembler for programming beyond $FFFF.
-FIXPOINT_INPUT      ;; +  128 bytes : adds the interpretation input for Q15.16 numbers, mandatory for FIXPOINT ADD-ON
-NONAME              ;; +   56 bytes : adds :NONAME CODENNM (CODE No NaMe)
-SD_CARD_LOADER      ;; + 1766 bytes : to LOAD source files from SD_card
-SD_CARD_READ_WRITE  ;; + 1148 bytes : to read, create, write and del files + copy text files from PC to target SD_Card
-BOOTLOADER          ;; +   74 bytes : includes to <reset> SD_CARD\BOOT.4TH as bootloader. To do: ' BOOT IS QUIT
-VOCABULARY_SET      ;; +  106 bytes : adds words: VOCABULARY FORTH ASSEMBLER ALSO PREVIOUS ONLY DEFINITIONS (FORTH83)
+FIXPOINT_INPUT      ;; +  128 bytes : adds the interpretation input for Q15.16 numbers, mandatory for FIXPOINT OPTION
+NONAME              ;; +   56 bytes : adds :NONAME CODENNM (CODE_No_NaMe)
+;EXTENDED_MEM        ; +  318 bytes : allows MSP430ASSEMBLER to read/write datas beyond $FFFF.
+;EXTENDED_ASM        ; + 1488 bytes : adds extended assembler for programming beyond $FFFF.
+;SD_CARD_LOADER      ; + 1766 bytes : to load source files from SD_card
+;SD_CARD_READ_WRITE  ; + 1148 bytes : to read, create, write and del files + copy text files from PC to target SD_Card
+;BOOTLOADER          ; +  128 bytes : includes in WARM the bootloader SD_CARD\BOOT.4TH. To do: ' BOOT IS QUIT and to undo: ' QUIT >BODY IS QUIT
+;VOCABULARY_SET      ; +  106 bytes : adds words: VOCABULARY FORTH ASSEMBLER ALSO PREVIOUS ONLY DEFINITIONS (FORTH83)
 ;PROMPT              ; +   22 bytes : to display prompt "ok "
+;------------------------------------------------------------------------------- 
 
 ;-------------------------------------------------------------------------------
-; OPTIONAL ADDITIONS that can be added later by downloading their source file   >-----------------------+
-; however, added in kernel, they are protected against WIPE and Deep Reset...                           |
+; OPTIONS that can be added later by downloading their source file              >-----------------------+
+; however, added here, they are protected against WIPE and Deep Reset.                                  |
 ;-------------------------------------------------------------------------------                        v
-;ANS_CORE_COMPLEMENT ; + 1376 bytes : required to pass coretest.4th                                 ANS_COMP.f
+;CORE_COMPLEMENT     ; + 1814 bytes : MINIMAL OPTIONS if you want a conventional FORTH             CORE_COMP.f
 ;FIXPOINT            ; +  422/528 bytes add HOLDS F+ F- F/ F* F#S F. S>F 2@ 2CONSTANT               FIXPOINT.f
 ;UTILITY             ; +  434/524 bytes (1/16threads) : add .S .RS WORDS U.R DUMP ?                 UTILITY.f
-;SD_TOOLS            ; +  142 bytes for trivial DIR, FAT, CLUSTER and SECTOR view, adds UTILITY     SD_TOOLS.f
+;SD_TOOLS            ; +  142 bytes for trivial DIR, FAT, CLUSTER and SECTOR view, (adds UTILITY)   SD_TOOLS.f
 
 ;-------------------------------------------------------------------------------
 ; FAST FORTH TERMINAL configuration
 ;-------------------------------------------------------------------------------
 ;HALFDUPLEX          ; to use FAST FORTH with half duplex terminal
 TERMINALBAUDRATE    .equ 115200 ; choose value considering the frequency and the UART2USB bridge, see explanations below.
-TERMINAL3WIRES      ;; (18 bytes)    enable 3 wires (GND,TX,RX) with XON/XOFF software flow control (PL2303TA/HXD, CP2102)
+TERMINAL3WIRES      ;; + 18 bytes    enable 3 wires (GND,TX,RX) with XON/XOFF software flow control (PL2303TA/HXD, CP2102)
 TERMINAL4WIRES      ;; + 12 bytes    enable 4 wires with hardware flow control on RX with RTS (PL2303TA/HXD, FT232RL)
-;                                    this RTS pin may be permanently wired on SBWTCK/TEST pin without disturbing SBW 2 wires programming
 ;TERMINAL5WIRES      ; + 10 bytes    enable 5 wires with hardware flow control on RX/TX with RTS/CTS (PL2303TA/HXD, FT232RL)...
 
 ;===============================================================================
@@ -110,14 +119,14 @@ TERMINAL4WIRES      ;; + 12 bytes    enable 4 wires with hardware flow control o
 ;        TX --> RX
 ;       GND <-> GND
 ;
-; TERATERM config terminal      : NewLine receive : AUTO,
-;                                 NewLine transmit : CR+LF
-;                                 Size : 128 chars x 49 lines (adjust lines to your display)
+; TERATERM config terminal:     NewLine receive : AUTO,
+;                               NewLine transmit : CR+LF
+;                               Size : 128 chars x 49 lines (adjust lines according to your display)
 ;
-; TERATERM config serial port   : TERMINALBAUDRATE value,
-;                                 8 bits, no parity, 1 Stop bit,
-;                                 XON/XOFF flow control,
-;                                 delay = 0ms/line, 0ms/char
+; TERATERM config serial port TERMINALBAUDRATE value,
+;                               8 bits, no parity, 1 Stop bit,
+;                               XON/XOFF flow control,
+;                               delay = 0ms/line, 0ms/char
 ;
 ; don't forget : save new TERATERM configuration !
 
@@ -133,15 +142,14 @@ TERMINAL4WIRES      ;; + 12 bytes    enable 4 wires with hardware flow control o
 ; --------------------------------------------------------------------------------------------
 ; WARNING ! if you use PL2303TA/HXD cable as supply, open the box before to weld red wire on 3v3 pad !
 ; --------------------------------------------------------------------------------------------
-; 9600 up to 134400 Bds     (500kHz)
-; + 201600,230400,268800    (1MHz)
-; + 403200,460800,614400    (2MHz)
-; + 806400,921600,1228800   (4MHz)
-; + 2457600                 (8MHz,PL2303TA)
-; + 1843200,2457600         (8MHz,PL2303HXD)
-; + 3MBds                   (16MHz,PL2303TA)
-; + 3MBds,4MBds,5MBds       (16MHz,PL2303HXD with shortened cable) 5MBds at 16MHz, not too lazy !:-)
-; + 6MBds                   (24MHz,MSP430FR57xx and MSP430FR2355 families, PL2303HXD with shortened cable)
+; up to 134400 Bds  (500kHz,FR5xxx)
+; up to 268800 Bds  (1MHz,FR5xxx)
+; up to 614400 Bds  (2MHz,FR5xxx)
+; up to 1228800 Bds (4MHz,FR5xxx)
+; up to 2457600 Bds (8MHz,FR5xxx)
+; up to 3MBds       (16MHz,FR5xxx,PL2303TA)
+; up to 5MBds       (16MHz,FR5xxx,PL2303HXD with shortened cable) 5MBds at 16MHz, not too lazy !:-)
+; up to 6MBds       (24MHz,FR57xx,PL2303HXD with shortened cable)
 
 ; UARTtoUSB module with Silabs CP2102 (supply current = 20 mA)
 ; ---------------------------------------------------------------------------------------------------
@@ -163,6 +171,8 @@ TERMINAL4WIRES      ;; + 12 bytes    enable 4 wires with hardware flow control o
 ;       RTS --> CTS     (see launchpad.asm for RTS selected pin)
 ;       GND <-> GND
 
+; RTS pin may be permanently wired on SBWTCK/TEST pin without disturbing SBW 2 wires programming
+
 ; TERATERM config terminal      : NewLine receive : AUTO,
 ;                                 NewLine transmit : CR+LF
 ;                                 Size : 128 chars x 49 lines (adjust lines to your display)
@@ -237,9 +247,9 @@ TERMINAL4WIRES      ;; + 12 bytes    enable 4 wires with hardware flow control o
 ; DTCforthMSP430FR5xxx RAM memory map:
 ;-------------------------------------------------------------------------------
 
-;-------------------------------------
+;---------------------------;---------
 ; name             words    ; comment
-;-------------------------------------
+;---------------------------;---------
 ;LSTACK = L0 = LEAVEPTR     ; ----- RAM_ORG
                             ; |
 LSTACK_LEN .equ     16      ; | grows up
@@ -253,9 +263,9 @@ RSTACK_LEN .equ     48      ; | grows down
                             ; |
 ;RSTACK=R0                  ; ----- RAM_ORG + $E0
 
-;-------------------------------------
+;---------------------------;---------
 ; names            bytes    ; comments
-;-------------------------------------
+;---------------------------;---------
 ; PAD_I2CADR                ; ----- RAM_ORG + $E0
 ; PAD_I2CCNT                ;       
 ;PAD                        ; ----- RAM_ORG + $E4
@@ -278,11 +288,7 @@ HOLD_LEN   .equ     34      ; | grows down  (ans spec. : HOLD_LEN >= (2*n) + 2 c
                             ;
                             ; ----- RAM_ORG + $1E0
                             ;
-                            ;       assembler variables
-                            ;
-                            ; ----- RAM_ORG + $1F0
-                            ;
-                            ;       12 bytes free
+                            ;       28 bytes free
                             ;
 ; SD_BUF_I2CADR             ; ----- RAM_ORG + $1FC
 ; SD_BUF_I2CCNT             ;
@@ -360,20 +366,24 @@ FREQ_KHZ        .word 500               ;
 FREQ_KHZ        .word FREQUENCY*1000    ; user use
     .ENDIF  
 SAVE_SYSRSTIV   .word 5                 ;
-LPM_MODE        .word CPUOFF+GIE        ; LPM0 is the default mode
+LPM_MODE        .word LPM0+GIE          ; LPM0 is the default mode
 ;LPM_MODE        .word CPUOFF+GIE+SCG0  ; LPM1 is the default mode (disable FLL)
 INIDP           .word ROMDICT           ; define RST_STATE
 INIVOC          .word lastvoclink       ; define RST_STATE
-FORTHVERSION    .word VERSIO            ;
+FORTHVERSION    .word VAL(SUBSTR(VER,1,0));
 FORTHADDON      .word FADDON            ;
                 .word RXON              ; 1814h for user use: CALL &RXON
                 .word RXOFF             ; 1816h for user use: CALL &RXOFF
     .IFDEF SD_CARD_LOADER
-                .word ReadSectorWX      ; 1818h used by ADDON_SD_TOOLS.f
+                .word ReadSectorWX      ; 1818h used by SD_TOOLS.f
         .IFDEF SD_CARD_READ_WRITE
-                .word WriteSectorWX     ; 181Ah used by ADDON_SD_TOOLS.f
-        .ENDIF ; SD_CARD_READ_WRITE
-    .ENDIF ; SD_CARD_LOADER
+                .word WriteSectorWX     ; 181Ah
+        .ELSE
+                .word WARM              ;      
+        .ENDIF
+    .ELSE       
+                .word WARM              ;
+    .ENDIF
 
 ; ---------------------------------------
 ; VARIABLES that should be in RAM
@@ -504,12 +514,6 @@ SD_LEN          .equ SD_END-SD_ORG
     .ENDIF ; SD_CARD_LOADER
 
 ;-------------------------------------------------------------------------------
-; DTCforthMSP430FR5xxx program (FRAM) memory
-;-------------------------------------------------------------------------------
-
-    .org    MAIN_ORG
-
-;-------------------------------------------------------------------------------
 ; DEFINING EXECUTIVE WORDS - DTC model
 ;-------------------------------------------------------------------------------
 ; very nice FAST FORTH added feature:
@@ -521,10 +525,10 @@ SD_LEN          .equ SD_END-SD_ORG
 
 RSP         .reg    R1      ; RSP = Return Stack Pointer (return stack)
 
-; DOxxx registers           ; must be saved before use and restored after use
-rDODOES     .reg    r4
-rDOCON      .reg    r5
-rDOVAR      .reg    r6
+; DOxxx registers           ; must be saved before use and restored after:
+rDODOES     .reg    r4      ; MOV #XDODOES,rDODOES
+rDOCON      .reg    r5      ; MOV #XDOCON,rDOCON
+rDOVAR      .reg    r6      ; MOV #XDOVAR,rDOVAR
 rDOCOL      .reg    R7
 
 R           .reg    r4      ; rDODOES alias
@@ -544,116 +548,311 @@ IP          .reg    R13     ; interpretative pointer
 TOS         .reg    R14     ; first PSP cell
 PSP         .reg    R15     ; PSP = Parameters Stack Pointer (stack data)
 
+;-------------------------------------------------------------------------------
+; DTCforthMSP430FR5xxx program (FRAM) memory
+;-------------------------------------------------------------------------------
 
-mNEXT       .MACRO          ; return (inverted round trip) for low level words (written in assembler)
-            MOV @IP+,PC     ; 4 fetch code address into PC, IP=PFA
-            .ENDM           ; 4 cycles, 1word = ITC -2cycles -1 word
+    .org    MAIN_ORG
 
-NEXT        .equ    4D30h   ; 4 MOV @IP+,PC
 
-FORTHtoASM  .MACRO          ; compiled by HI2LO
-            .word   $+2     ; 0 cycle
-            .ENDM           ; 0 cycle, 1 word
+; here we place maximum of primitives without associated word FORTH.
+; as their addresses are options independent, FORTH can access via declarations made in MSP430xxxx.pat
+;
 
-mSEMI       .MACRO
-            MOV @RSP+,IP
-            MOV @IP+,PC
-            .ENDM
+;###############################################################################################################
+;###############################################################################################################
+
+
+; Primitive SLEEP, user use
+; ----------------------------------;
+SLEEP       MOV @PC+,PC             ;3  Code Field Address (CFA) of SLEEP
+PFASLEEP    .word BODYSLEEP         ;   Parameter Field Address (PFA) of SLEEP, with BODYSLEEP as default exec addr
+BODYSLEEP   CALL #RXON              ;4  enable UART_TERMINAL
+            BIS &LPM_MODE,SR        ;3  enter in LPMx sleep mode with GIE=1
+; ----------------------------------;   default FAST FORTH mode (for its input terminal use) : LPM0.
+
+; ### #     # ####### ####### ######  ######  #     # ######  #######  #####     #     # ####### ######  #######
+;  #  ##    #    #    #       #     # #     # #     # #     #    #    #     #    #     # #       #     # #
+;  #  # #   #    #    #       #     # #     # #     # #     #    #    #          #     # #       #     # #
+;  #  #  #  #    #    #####   ######  ######  #     # ######     #     #####     ####### #####   ######  #####
+;  #  #   # #    #    #       #   #   #   #   #     # #          #          #    #     # #       #   #   #
+;  #  #    ##    #    #       #    #  #    #  #     # #          #    #     #    #     # #       #    #  #
+; ### #     #    #    ####### #     # #     #  #####  #          #     #####     #     # ####### #     # #######
+
+; here, FAST FORTH sleeps, waiting any interrupt. 
+
+; And any interruption must interrupt FAST FORTH only here..
+
+; IP,S,T,W,X,Y registers (R13 to R8) are free for any interrupt routine...
+; ...and so PSP and RSP stacks with their rules of use.
+; remember: in any interrupt routine you must include : BIC #0xF8,0(RSP) before RETI to force SLEEP executing. 
+;           You can reuse UF9 UF10 UF11 SR flags saved in 0(RSP)
+;           or simply (previous SR flags will be lost) : ADD #2 RSP, then RET instead of RETI
+
+; ==================================;
+            JMP SLEEP               ;2  here is the return for any interrupts, else TERMINAL_INT  :-)
+; ==================================;
+
+;###############################################################################################################
+;###############################################################################################################
+
+; Primitive INIT_VECT, user use
+INIT_VECT   MOV #VECT_LEN,X             ;2 length of vectors area
+VECTORLOOP  SUB #2,X                    ;1
+            MOV #RESET,VECT_ORG(X)      ;4 begin at end of area
+            JNZ VECTORLOOP              ;2 endloop when VECT_ORG(X) = VECT_ORG
+            MOV #TERMINAL_INT,&TERM_VEC
+            MOV @RSP+,PC                ; ret
+
+; ------------------------------------------------------------------------------
+; COMPILING OPERATORS
+; ------------------------------------------------------------------------------
+
+; Primitive LIT; compiled by LITERAL
+; lit      -- x    fetch inline literal to stack
+; This is the execution part of LITERAL.
+;            FORTHWORD "LIT"
+LIT         SUB #2,PSP      ; 2  push old TOS..
+            MOV TOS,0(PSP)  ; 3  ..onto stack
+            MOV @IP+,TOS    ; 2  fetch new TOS value
+NEXT_ADR    MOV @IP+,PC     ; 4  NEXT
+
+; Primitive XSQUOTE; compiled by SQUOTE
+; (S")     -- addr u   run-time code to get address and length of a compiled string.
+XSQUOTE     SUB #4,PSP      ; 1 -- x x TOS      ; push old TOS on stack
+            MOV TOS,2(PSP)  ; 3 -- TOS x x      ; and reserve one cell on stack
+            MOV.B @IP+,TOS  ; 2 -- x u          ; u = lenght of string
+            MOV IP,0(PSP)   ; 3 -- addr u
+            ADD TOS,IP      ; 1 -- addr u       IP=addr+u=addr(end_of_string)
+            BIT #1,IP       ; 1 -- addr u       IP=addr+u   Carry set/clear if odd/even
+            ADDC #0,IP      ; 1 -- addr u       IP=addr+u aligned
+            MOV @IP+,PC     ; 4  16~
+
+;-------------------------------------------------------------------------------
+; BRANCH OPERATORS
+;-------------------------------------------------------------------------------
+
+; Primitive QTBRAN
+;Z ?TrueBranch   x --       ; branch if TOS is true (TOS <> 0)
+QTBRAN      CMP #0,TOS      ; 1  test TOS value
+            MOV @PSP+,TOS   ; 2  pop new TOS value (doesn't change flags)
+            JZ SKIPBRAN     ; 2  if TOS was = 0, skip the branch
+; Primitive BRAN
+;Z branch   --              ;
+BRAN        MOV @IP,IP      ; 2  take the branch destination
+            MOV @IP+,PC     ; 4  ==> branch taken = 11 cycles
+            
+; Primitive QFBRAN; compiled by IF UNTIL 
+;Z ?FalseBranch   x --      ; branch if TOS is FALSE (TOS = 0)
+QFBRAN      CMP #0,TOS      ; 1  test TOS value
+            MOV @PSP+,TOS   ; 2  pop new TOS value (doesn't change flags)
+            JZ BRAN         ; 2  if TOS was = 0, take the branch
+; Primitive SKIPBRAN
+;Z SkipBranch   --          ;
+SKIPBRAN    ADD #2,IP       ; 1  skip the branch destination
+            MOV @IP+,PC     ; 4  ==> branch not taken = 10 cycles
+
+;-------------------------------------------------------------------------------
+; LOOP OPERATORS
+;-------------------------------------------------------------------------------
+
+; Primitive XDO; compiled by DO         
+;Z (do)    n1|u1 n2|u2 --  R: -- sys1 sys2      run-time code for DO
+;                                               n1|u1=limit, n2|u2=index
+XDO         MOV #8000h,X    ;2 compute 8000h-limit = "fudge factor"
+            SUB @PSP+,X     ;2
+            MOV TOS,Y       ;1 loop ctr = index+fudge
+            MOV @PSP+,TOS   ;2 pop new TOS
+            ADD X,Y         ;1 Y = INDEX
+            PUSHM #2,X      ;4 PUSHM X,Y, i.e. PUSHM LIMIT, INDEX
+            MOV @IP+,PC     ;4
+
+; Primitive XPLOOP; compiled by +LOOP
+;Z (+loop)   n --   R: sys1 sys2 --  | sys1 sys2
+;                        run-time code for +LOOP
+; Add n to the loop index.  If loop terminates, clean up the
+; return stack and skip the branch. Else take the inline branch.
+XPLOOP      ADD TOS,0(RSP)  ;4 increment INDEX by TOS value
+            MOV @PSP+,TOS   ;2 get new TOS, doesn't change flags
+XLOOPNEXT   BIT #100h,SR    ;2 is overflow bit set?
+            JZ BRAN         ;2 no overflow = loop
+            ADD #4,RSP      ;1 empty RSP
+            ADD #2,IP       ;1 overflow = loop done, skip branch ofs
+            MOV @IP+,PC     ;4 16~ taken or not taken xloop/loop
 
-; that is obviously faster than the same sized "BR #EXIT,PC" !
+; Primitive XLOOP; compiled by LOOP
+;Z (loop)   R: sys1 sys2 --  | sys1 sys2
+;                        run-time code for LOOP
+; Add 1 to the loop index.  If loop terminates, clean up the
+; return stack and skip the branch.  Else take the inline branch.
+; Note that LOOP terminates when index=8000h.
+XLOOP       ADD #1,0(RSP)   ;4 increment INDEX
+            JMP XLOOPNEXT   ;2
 
+; primitive MUSMOD; compiled by ?NUMBER UM/MOD
 ;-------------------------------------------------------------------------------
-; mDODOES  leave on parameter stack the PFA of a CREATE definition and execute Master word
+; unsigned 32-BIT DiViDend : 16-BIT DIVisor --> 32-BIT QUOTient, 16-BIT REMainder
 ;-------------------------------------------------------------------------------
+; 2 times faster if DVDhi = 0 (it's the general case)
+
+; reg     division        MU/MOD      NUM
+; -----------------------------------------
+; S     = DVDlo (15-0)  = ud1lo     = ud1lo
+; TOS   = DVDhi (31-16) = ud1hi     = ud1hi
+; T     = DIVlo         = BASE
+; W     = REMlo         = REMlo     = digit --> char --> -[HP]
+; X     = QUOTlo        = ud2lo     = ud2lo
+; Y     = QUOThi        = ud2hi     = ud2hi
+; rDODOES = count
+
+MUSMOD      MOV TOS,T           ;1 T = DIVlo
+            MOV 2(PSP),S        ;3 S = DVDlo
+            MOV @PSP,TOS        ;2 TOS = DVDhi
+MUSMOD1     MOV #0,W            ;1  W = REMlo = 0
+            MOV #32,rDODOES     ;2  init loop count
+            CMP #0,TOS          ;1  DVDhi=0 ?
+            JNZ MDIV1           ;2  no
+; -----------------------------------------
+            RRA rDODOES         ;1  yes:loop count / 2
+            MOV S,TOS           ;1      DVDhi <-- DVDlo
+            MOV #0,S            ;1      DVDlo <-- 0
+            MOV #0,X            ;1      QUOTlo <-- 0 (to do QUOThi = 0 at the end of division)
+; -----------------------------------------
+MDIV1       CMP T,W             ;1  REMlo U>= DIV ?
+            JNC MDIV2           ;2  no : carry is reset
+            SUB T,W             ;1  yes: REMlo - DIV ; carry is set
+MDIV2       ADDC X,X            ;1  RLC quotLO
+            ADDC Y,Y            ;1  RLC quotHI
+            SUB #1,rDODOES      ;1  Decrement loop counter
+            JN ENDMDIV          ;2
+            ADD S,S             ;1  RLA DVDlo
+            ADDC TOS,TOS        ;1  RLC DVDhi
+            ADDC W,W            ;1  RLC REMlo
+            JNC MDIV1           ;2
+            SUB T,W             ;1  REMlo - DIV
+            BIS #1,SR           ;1  SETC
+            JMP MDIV2           ;2
+ENDMDIV     MOV #xdodoes,rDODOES;2  restore rDODOES
+            MOV W,2(PSP)        ;3  REMlo in 2(PSP)
+            MOV X,0(PSP)        ;3  QUOTlo in 0(PSP)
+            MOV Y,TOS           ;1  QUOThi in TOS
+            MOV @RSP+,PC        ;4  35 words, about 473 cycles, not FORTH executable !
+
+; : SETIB SOURCE 2! 0 >IN ! ;       
+; SETIB      org len --        set Input Buffer, shared by INTERPRET and [ELSE]
+SETIB       MOV TOS,&SOURCE_LEN     ; -- org len
+            MOV @PSP+,&SOURCE_ORG   ; -- len
+            MOV @PSP+,TOS           ; --
+            MOV #0,&TOIN            ;
+            MOV @IP+,PC             ;
 
-mDODOES     .MACRO          ; compiled  by DOES>
-            CALL rDODOES    ;    CALL xdodoes
-            .ENDM           ; 1 word, 19 cycles (ITC-2)
+; REFILL    accept one line from input and leave org len of input buffer
+; : REFILL TIB DUP TIB_LEN ACCEPT   ;   -- TIB len    shared by QUIT and [ELSE]
+REFILL      SUB #6,PSP              ;2  -- x x x x
+            MOV TOS,4(PSP)          ;3  -- Saved_TOS x x TOS
+            MOV #TIB_LEN,TOS        ;2  -- Saved_TOS x x TIB_LEN 
+            .word 40BFh             ;        MOV #TIB_ORG,0(PSP)
+CIB_ADR     .word TIB_ORG           ;        may be replaced by SDIB_ORG
+            .word 0                 ;   -- Saved_TOS x TIB TIB_LEN
+            MOV @PSP,2(PSP)         ;4  -- Saved_TOS TIB TIB TIB_LEN
+            JMP ACCEPT              ;2  -- TIB LEN
+
+;-------------------------------------------------------------------------------
+; DODOES  leave on parameter stack the PFA of a CREATE definition and execute Master word
+;-------------------------------------------------------------------------------
 
-DODOES      .equ    1284h   ; 4 CALL rDODOES ; [rDODOES] is defind as xdodoes by COLD
+DODOES      .equ    1284h   ; 4 CALL rDODOES ; [rDODOES] is defined as xdodoes by COLD
 
-xdodoes   ; -- a-addr       ; 4 for CALL rDODOES
+XDODOES   ; -- addr         ; 4 for CALL rDODOES       S-- BODY      PFA  R-- 
             SUB #2,PSP      ; 1
             MOV TOS,0(PSP)  ; 3 save TOS on parameters stack
-            MOV @RSP+,TOS   ; 2 TOS = CFA address of master word, i.e. address of its first cell after DOES>
+            MOV @RSP+,TOS   ; 2 TOS = PFA address of master word, i.e. address of its first cell after DOES>
             PUSH IP         ; 3 save IP on return stack
             MOV @TOS+,IP    ; 2 IP = CFA of Master word, TOS = BODY address of created word
             MOV @IP+,PC     ; 4 Execute Master word
 
 ;-------------------------------------------------------------------------------
-; mDOCON  leave on parameter stack the [PFA] of a CONSTANT definition
+; DOCON  leave on parameter stack the [PFA] of a CONSTANT definition
 ;-------------------------------------------------------------------------------
 
-mDOCON      .MACRO          ; compiled by CONSTANT
-            CALL rDOCON     ; 1 word, 16 cycles (ITC+3)
-            .ENDM           ;
-
 DOCON       .equ    1285h   ; 4 CALL rDOCON ; [rDOCON] is defined as xdocon by COLD
 
-xdocon  ;   -- constant     ; 4 for CALL rDOCON
-            SUB #2,PSP      ; 1
+XDOCON                      ; 4 for CALL rDOCON       S-- CTE      PFA  R--       
+            SUB #2,PSP      ; 1    
             MOV TOS,0(PSP)  ; 3 save TOS on parameters stack
-            MOV @RSP+,TOS   ; 2 TOS = CFA address of master word CONSTANT
-            MOV @TOS,TOS    ; 2 TOS = CONSTANT value
+            MOV @RSP+,TOS   ; 2 TOS = PFA address of master word CONSTANT
+FETCH       MOV @TOS,TOS    ; 2 TOS = CONSTANT value
             MOV @IP+,PC     ; 4 execute next word
                             ; 16 = ITC (+4)
 
 ;-------------------------------------------------------------------------------
-; mDOVAR leave on parameter stack the PFA of a VARIABLE definition
+; DOVAR leave on parameter stack the PFA of a VARIABLE definition
 ;-------------------------------------------------------------------------------
 
-mDOVAR      .MACRO          ; compiled by VARIABLE
-            CALL rDOVAR     ; 1 word, 14 cycles (ITC+2)
-            .ENDM           ;
+DOVAR       .equ    1286h   ; 4 for CALL rDOVAR       S-- VAR      PFA  R--  
+                            ; [rDOVAR] is defined as RFROM by COLD
+
+;-------------------------------------------------------------------------------
+; DOCOL starts high level words
+;-------------------------------------------------------------------------------
 
-DOVAR       .equ    1286h   ; CALL rDOVAR ; [rDOVAR] is defined as RFROM by COLD
+DOCOL       .equ    1287h
 
     .SWITCH DTC
 ;-------------------------------------------------------------------------------
-    .CASE 1 ; DOCOL = CALL rDOCOL
+    .CASE 1 ; DOCOL = CALL rDOCOL, [rDOCOL] = xdocol
 ;-------------------------------------------------------------------------------
 
-xdocol      MOV @RSP+,W     ; 2
-            PUSH IP         ; 3     save old IP on return stack
-            MOV W,IP        ; 1     set new IP to PFA
-            MOV @IP+,PC     ; 4     = NEXT
-                            ; 10 cycles
+DOCOL1      .equ    1287h   ; 4 CALL rDOCOL
 
 ASMtoFORTH  .MACRO          ; compiled by LO2HI
             CALL #EXIT      ; 10 cycles
             .ENDM           ; 2 words, 10 cycles
+                            ; LO2HI + HI2LO = 3 words, 10 cycles.
 
 mDOCOL      .MACRO          ; compiled by : and by colon
             CALL rDOCOL     ; 10 [rDOCOL] = xdocol
-            .ENDM           ; 1 word, 14 cycles (CALL included) = ITC+4
+            .ENDM           ; 1 word, 14 cycles (CALL included) (ITC+4)
+                            ; COLON + SEMI = 2 words, 20 cycles (ITC+2)
 
-DOCOL1      .equ    1287h   ; 4 CALL rDOCOL
+XDOCOL      MOV @RSP+,W     ; 2
+            PUSH IP         ; 3     save old IP on return stack
+            MOV W,IP        ; 1     set new IP to PFA
+            MOV @IP+,PC     ; 4     = NEXT
+                            ; 10 cycles
 
 ;-------------------------------------------------------------------------------
-    .CASE 2 ; DOCOL = PUSH IP + CALL rDOCOL
+    .CASE 2 ; DOCOL = PUSH IP + CALL rDOCOL, [rDOCOL] = EXIT
 ;-------------------------------------------------------------------------------
 
+DOCOL1      .equ    120Dh   ; 3 PUSH IP
+DOCOL2      .equ    1287h   ; 4 CALL rDOCOL
+
 ASMtoFORTH  .MACRO          ; compiled by LO2HI
             CALL rDOCOL     ; 10 [rDOCOL] = EXIT
-            .ENDM           ; 1 word, 10 cycles
+            .ENDM           ; 1 word, 10 cycles. 
+                            ; LO2HI + HI2LO = 2 words, 10 cycles.
 
 mDOCOL      .MACRO          ; compiled by : and by COLON
             PUSH IP         ; 3
             CALL rDOCOL     ; 10 [rDOCOL] = EXIT
-            .ENDM           ; 2 words, 13 cycles = ITC+3
-
-DOCOL1      .equ    120Dh   ; 3 PUSH IP
-DOCOL2      .equ    1287h   ; 4 CALL rDOCOL
+            .ENDM           ; 2 words, 13 cycles (ITC+3)
+                            ; COLON + SEMI = 3 words, 19 cycles (ITC+1)
 
 ;-------------------------------------------------------------------------------
     .CASE 3 ; inlined DOCOL
 ;-------------------------------------------------------------------------------
 
+DOCOL1      .equ    120Dh   ; 3 PUSH IP
+DOCOL2      .equ    400Dh   ; 1 MOV PC,IP
+DOCOL3      .equ    522Dh   ; 1 ADD #4,IP
+
 ASMtoFORTH  .MACRO          ; compiled by LO2HI
             MOV PC,IP       ; 1
             ADD #4,IP       ; 1
             MOV @IP+,PC     ; 4 NEXT
             .ENDM           ; 6 cycles, 3 words
+                            ; LO2HI + HI2LO = 4 words, 6 cycles.
 
 mDOCOL      .MACRO          ; compiled by : and by COLON
             PUSH IP         ; 3
@@ -661,489 +860,89 @@ mDOCOL      .MACRO          ; compiled by : and by COLON
             ADD #4,IP       ; 1
             MOV @IP+,PC     ; 4 NEXT
             .ENDM           ; 4 words, 9 cycles (ITC-1)
-
-DOCOL1      .equ    120Dh   ; 3 PUSH IP
-DOCOL2      .equ    400Dh   ; 1 MOV PC,IP
-DOCOL3      .equ    522Dh   ; 1 ADD #4,IP
+                            ; COLON + SEMI = 5 words, 15 cycles (ITC-3)
 
     .ENDCASE ; DTC
 
-;https://forth-standard.org/standard/core/EXIT
-;C EXIT     --      exit a colon definition; CALL #EXIT performs ASMtoFORTH (10 cycles)
-;                                            JMP #EXIT performs EXIT
+;-------------------------------------------------------------------------------
+; RETURN from low level, high level
+;-------------------------------------------------------------------------------
+
+;low level return
+NEXT        .equ    4D30h   ; 4 MOV @IP+,PC
+                            ; jump from Asm word to NEXT Asm word: 1 word, 4 cycles (ITC-2)
+
+;high level return
+; https://forth-standard.org/standard/core/EXIT
+; EXIT     --      exit a colon definition; CALL #EXIT performs ASMtoFORTH (10 cycles)
+;                                           JMP #EXIT performs EXIT
+    .IFDEF CORE_COMPLEMENT
             FORTHWORD "EXIT"
-EXIT        MOV @RSP+,IP        ; 2 pop previous IP (or next PC) from return stack
-            MOV @IP+,PC         ; 4 = NEXT
-                                ; 6 = ITC - 2
+            MOV @RSP+,IP    ; 2 pop previous IP (or next PC) from return stack
+            MOV @IP+,PC     ; 4 = NEXT
+    .ENDIF                  ; 6 (ITC-2)
 
 ;-------------------------------------------------------------------------------
-; STACK OPERATIONS
+; INTERPRETER INPUT, the kernel of kernel !
 ;-------------------------------------------------------------------------------
 
-;https://forth-standard.org/standard/core/DUP
-;C DUP      x -- x x      duplicate top of stack
-            FORTHWORD "DUP"
-DUP         SUB #2,PSP          ; 2  push old TOS..
-            MOV TOS,0(PSP)      ; 3  ..onto stack
-            mNEXT               ; 4
-
-; https://forth-standard.org/standard/core/TwoDUP
-; 2DUP   x1 x2 -- x1 x2 x1 x2   dup top 2 cells
-            FORTHWORD "2DUP"
-TWODUP      MOV     TOS,-2(PSP)     ;3 -- x1 x2 x x2
-            MOV     @PSP,-4(PSP)    ;4 -- x1 x2 x1 x2
-            SUB     #4,PSP          ;1 -- x1 x x x2
-            mNEXT
+; ----------------------------------;
+RXON                                ; Software and/or hardware flow control, to start Terminal UART communication
+; ----------------------------------;
+    .IFDEF TERMINAL3WIRES           ;   first software flow control
+RXON_LOOP   BIT #UCTXIFG,&TERM_IFG  ;3      wait the sending of last char, useless at high baudrates
+            JZ RXON_LOOP            ;2
+            MOV #17,&TERM_TXBUF     ;4  move char XON into TX_buf
+    .ENDIF                          ;
+    .IFDEF TERMINAL4WIRES           ;   and hardware flow control after
+            BIC.B #RTS,&HANDSHAKOUT ;3      set RTS low
+    .ENDIF                          ;
+            MOV @RSP+,PC            ;4  to BACKGND (End of file download or quiet input) or AKEYREAD1 (get next line of file downloading)
+; ----------------------------------;   ...or user defined
 
-;https://forth-standard.org/standard/core/qDUP
-;C ?DUP     x -- 0 | x x    DUP if nonzero
-            FORTHWORD "?DUP"
-QDUP        CMP #0,TOS          ; 2  test for TOS nonzero
-            JNZ DUP             ; 2
-            mNEXT               ; 4
+; ----------------------------------;
+RXOFF                               ; Software and/or hardware flow control, to stop Terminal UART comunication
+; ----------------------------------;
+    .IFDEF TERMINAL3WIRES           ;   first software flow control
+RXOFF_LOOP  BIT #UCTXIFG,&TERM_IFG  ;3      wait the sending of last char
+            JZ RXOFF_LOOP           ;2
+            MOV #19,&TERM_TXBUF     ;4      move XOFF char into TX_buf
+    .ENDIF                          ;
+    .IFDEF TERMINAL4WIRES           ;   and hardware flow control after
+            BIS.B #RTS,&HANDSHAKOUT ;3     set RTS high
+    .ENDIF                          ;
+            MOV @RSP+,PC            ;4 to ENDACCEPT, ...or user defined
+; ----------------------------------;
 
-;https://forth-standard.org/standard/core/DROP
-;C DROP     x --          drop top of stack
-            FORTHWORD "DROP"
-DROP        MOV @PSP+,TOS       ; 2
-            mNEXT               ; 4
 
-;https://forth-standard.org/standard/core/NIP
-;C NIP      x1 x2 -- x2         Drop the first item below the top of stack
-    .IFDEF ANS_CORE_COMPLEMENT
-            FORTHWORD "NIP"
+    .IFDEF SD_CARD_LOADER
+    .include "forthMSP430FR_SD_ACCEPT.asm"
     .ENDIF
-NIP         ADD #2,PSP          ; 1
-            mNEXT               ; 4
-
-;https://forth-standard.org/standard/core/SWAP
-;C SWAP     x1 x2 -- x2 x1    swap top two items
-            FORTHWORD "SWAP"
-SWAP        MOV @PSP,W          ; 2
-            MOV TOS,0(PSP)      ; 3
-            MOV W,TOS           ; 1
-            mNEXT               ; 4
 
-;https://forth-standard.org/standard/core/toR
-;C >R    x --   R: -- x   push to return stack
-            FORTHWORD ">R"
-TOR         PUSH TOS
-            MOV @PSP+,TOS
-            mNEXT
+; con speed of TERMINAL link, there are three bottlenecks :
+; 1- time to send XOFF/RTS_high on CR (CR+LF=EOL), first emergency.
+; 2- the char loop time,
+; 3- the time between sending XON/RTS_low and clearing UCRXIFG on first received char,
+; everything must be done to reduce these times, taking into account the necessity of switching to SLEEP (LPMx mode).
 
-;https://forth-standard.org/standard/core/Rfrom
-;C R>    -- x    R: x --   pop from return stack ; CALL #RFROM performs DOVAR
-            FORTHWORD "R>"
-RFROM       SUB #2,PSP          ; 1
-            MOV TOS,0(PSP)      ; 3
-            MOV @RSP+,TOS       ; 2
-            mNEXT               ; 4
+; three cases may occurs when entering in ACCEPT routine:
+;   1- UART RX interrupt is pending and received char in TERM_RXBUF is <> LF --> send RXON then goto ACCEPTNEXT
+;   2- UART RX interrupt is pending and received char in TERM_RXBUF is =  LF --> send RXON then goto SLEEP
+;   3- no UART RX interrupt --> send RXON then goto SLEEP
+; Case 2 is normally the one expected after receiving the end of a line (CR+LF) followed by the emission of RXOFF. 
+; But in fact, it's the case 1, the first char of next line is also sent by terminal.
+; by managing this three cases ACCEPT works very very well. If it doesn't work well, the problem is with the hardware...
 
-;https://forth-standard.org/standard/core/DEPTH
-;C DEPTH    -- +n        number of items on stack, must leave 0 if stack empty
-            FORTHWORD "DEPTH"
-DEPTH       MOV TOS,-2(PSP)
-            MOV #PSTACK,TOS
-            SUB PSP,TOS       ; PSP-S0--> TOS
-            RRA TOS           ; TOS/2   --> TOS
-DECPSP      SUB #2,PSP        ; post decrement stack...
-            mNEXT
+    .IFDEF DEFER_ACCEPT
 
-;-------------------------------------------------------------------------------
-; ARITHMETIC OPERATIONS
-;-------------------------------------------------------------------------------
+;https://forth-standard.org/standard/core/ACCEPT
+;C ACCEPT  addr addr len -- addr len'  get line at addr to interpret len' chars
+            FORTHWORD "ACCEPT"
+ACCEPT      MOV @PC+,PC             ;3 Code Field Address (CFA) of ACCEPT
+PFAACCEPT   .word   BODYACCEPT      ;  Parameter Field Address (PFA) of ACCEPT
+BODYACCEPT                          ;  BODY of ACCEPT = default execution of ACCEPT
 
-;https://forth-standard.org/standard/core/Minus
-;C -      n1/u1 n2/u2 -- n3/u3      n3 = n1-n2
-            FORTHWORD "-"
-MINUS       SUB @PSP+,TOS   ;2  -- n2-n1
-NEGATE      XOR #-1,TOS     ;1
-            ADD #1,TOS      ;1  -- n3 = -(n2-n1) = n1-n2
-            mNEXT
-
-;https://forth-standard.org/standard/core/OnePlus
-;C 1+      n1/u1 -- n2/u2       add 1 to TOS
-            FORTHWORD "1+"
-ONEPLUS     ADD #1,TOS
-            mNEXT
-
-;https://forth-standard.org/standard/core/OneMinus
-;C 1-      n1/u1 -- n2/u2     subtract 1 from TOS
-            FORTHWORD "1-"
-ONEMINUS    SUB #1,TOS
-            mNEXT
-
-;https://forth-standard.org/standard/double/DABS
-;C DABS     d1 -- |d1|     absolute value
-;            FORTHWORD "DABS"
-DABBS       AND #-1,TOS     ; clear V, set N
-            JGE DABBSEND    ; if positive
-DNEGATE     XOR #-1,0(PSP)
-            XOR #-1,TOS
-            ADD #1,0(PSP)
-            ADDC #0,TOS
-DABBSEND    mNEXT
-
-;-------------------------------------------------------------------------------
-; MEMORY OPERATIONS
-;-------------------------------------------------------------------------------
-
-;https://forth-standard.org/standard/core/Fetch
-;C @       a-addr -- x   fetch cell from memory
-            FORTHWORD "@"
-FETCH       MOV @TOS,TOS
-            mNEXT
-
-;https://forth-standard.org/standard/core/Store
-;C !        x a-addr --   store cell in memory
-            FORTHWORD "!"
-STORE       MOV @PSP+,0(TOS)    ;4
-            MOV @PSP+,TOS       ;2
-            mNEXT               ;4
-
-;-------------------------------------------------------------------------------
-; COMPARAISON OPERATIONS
-;-------------------------------------------------------------------------------
-
-;https://forth-standard.org/standard/core/ZeroEqual
-;C 0=     n/u -- flag    return true if TOS=0
-            FORTHWORD "0="
-ZEROEQUAL   SUB #1,TOS      ; borrow (clear cy) if TOS was 0
-            SUBC TOS,TOS    ; TOS=-1 if borrow was set
-            mNEXT
-
-;https://forth-standard.org/standard/core/Zeroless
-;C 0<     n -- flag      true if TOS negative
-            FORTHWORD "0<"
-ZEROLESS    ADD TOS,TOS     ;1 set carry if TOS negative
-            SUBC TOS,TOS    ;1 TOS=-1 if carry was clear
-INVERT      XOR #-1,TOS     ;1 TOS=-1 if carry was set
-            mNEXT
-
-;https://forth-standard.org/standard/core/Equal
-;C =      x1 x2 -- flag         test x1=x2
-            FORTHWORD "="
-EQUAL       SUB @PSP+,TOS   ;2
-            JZ INVERT       ;2
-TOSFALSE    AND #0,TOS      ;1 flag Z = 1
-            mNEXT           ;4
-
-;https://forth-standard.org/standard/core/Uless
-;C U<    u1 u2 -- flag       test u1<u2, unsigned
-            FORTHWORD "U<"
-ULESS       SUB @PSP+,TOS   ;2
-            JNC TOSFALSE    ;2 unsigned
-            JZ ULESSEND     ;2
-            MOV #-1,TOS     ;1 flag Z = 0
-ULESSEND    mNEXT           ;4
-
-;-------------------------------------------------------------------------------
-; ANS complement OPTION
-;-------------------------------------------------------------------------------
-    .IFDEF ANS_CORE_COMPLEMENT
-    .include "ADDON/ANS_COMPLEMENT.asm"
-    .ENDIF ; ANS_COMPLEMENT
-
-;-------------------------------------------------------------------------------
-; NUMERIC OUTPUT
-;-------------------------------------------------------------------------------
-
-; Numeric conversion is done last digit first, so
-; the output buffer is built backwards in memory.
-
-;https://forth-standard.org/standard/core/num-start
-;C <#    --       begin numeric conversion (initialize Hold Pointer)
-            FORTHWORD "<#"
-LESSNUM     MOV #HOLD_BASE,&HP
-            mNEXT
-
-; unsigned 32-BIT DiViDend : 16-BIT DIVisor --> 32-BIT QUOTient, 16-BIT REMainder
-; 2 times faster if DVDhi = 0 (it's the general case)
-
-; reg     division        MU/MOD      NUM
-; -----------------------------------------
-; S     = DVDlo (15-0)  = ud1lo     = ud1lo
-; TOS   = DVDhi (31-16) = ud1hi     = ud1hi
-; T     = DIVlo         = BASE
-; W     = REMlo         = REMlo     = digit --> char --> -[HP]
-; X     = QUOTlo        = ud2lo     = ud2lo
-; Y     = QUOThi        = ud2hi     = ud2hi
-; rDODOES = count
-
-MUSMOD      MOV TOS,T           ;1 T = DIVlo
-            MOV 2(PSP),S        ;3 S = DVDlo
-            MOV @PSP,TOS        ;2 TOS = DVDhi
-MUSMOD1     MOV #0,W            ;1  W = REMlo = 0
-            MOV #32,rDODOES     ;2  init loop count
-            CMP #0,TOS          ;1  DVDhi=0 ?
-            JNZ MDIV1           ;2  no
-; -----------------------------------------
-            RRA rDODOES         ;1  yes:loop count / 2
-            MOV S,TOS           ;1      DVDhi <-- DVDlo
-            MOV #0,S            ;1      DVDlo <-- 0
-            MOV #0,X            ;1      QUOTlo <-- 0 (to do QUOThi = 0 at the end of division)
-; -----------------------------------------
-MDIV1       CMP T,W             ;1  REMlo U>= DIV ?
-            JNC MDIV2           ;2  no : carry is reset
-            SUB T,W             ;1  yes: REMlo - DIV ; carry is set
-MDIV2       ADDC X,X            ;1  RLC quotLO
-            ADDC Y,Y            ;1  RLC quotHI
-            SUB #1,rDODOES      ;1  Decrement loop counter
-            JN ENDMDIV          ;2
-            ADD S,S             ;1  RLA DVDlo
-            ADDC TOS,TOS        ;1  RLC DVDhi
-            ADDC W,W            ;1  RLC REMlo
-            JNC MDIV1           ;2
-            SUB T,W             ;1  REMlo - DIV
-            BIS #1,SR           ;1  SETC
-            JMP MDIV2           ;2
-ENDMDIV     MOV #xdodoes,rDODOES;2  restore rDODOES
-            MOV W,2(PSP)        ;3  REMlo in 2(PSP)
-            MOV X,0(PSP)        ;3  QUOTlo in 0(PSP)
-            MOV Y,TOS           ;1  QUOThi in TOS
-            RET                 ;4  35 words, about 473 cycles, not FORTH executable !
-
-;https://forth-standard.org/standard/core/num
-;C #     ud1lo ud1hi -- ud2lo ud2hi          convert 1 digit of output
-            FORTHWORD "#"
-NUM         MOV &BASE,T         ;3                      T = Divisor
-NUM1        MOV @PSP,S          ;2 -- DVDlo DVDhi       S = DVDlo
-            SUB #2,PSP          ;1 -- DVDlo x DVDhi     TOS = DVDhi
-            CALL #MUSMOD1       ;4 -- REMlo QUOTlo QUOThi
-            MOV @PSP+,0(PSP)    ;4 -- QUOTlo QUOThi
-TODIGIT     CMP.B #10,W         ;2  W = REMlo
-            JLO TODIGIT1        ;2  U<
-            ADD.B #7,W          ;2
-TODIGIT1    ADD.B #30h,W        ;2
-HOLDW       SUB #1,&HP          ;4  store W=char --> -[HP]
-            MOV &HP,Y           ;3
-            MOV.B W,0(Y)        ;3
-            mNEXT               ;4  26 words
-
-;https://forth-standard.org/standard/core/numS
-;C #S    udlo udhi -- 0 0       convert remaining digits
-            FORTHWORD "#S"
-NUMS        mDOCOL
-            .word   NUM         ;       X=QUOTlo
-            FORTHtoASM          ;
-            SUB #2,IP           ;1      restore NUM return
-            CMP #0,X            ;1      test ud2lo first (generally <>0)
-            JNZ NUM1            ;2
-            CMP #0,TOS          ;1      then test ud2hi (generally =0)
-            JNZ NUM1            ;2
-            mSEMI               ;6 10 words, about 241/417 cycles/char
-
-;https://forth-standard.org/standard/core/num-end
-;C #>    udlo:udhi -- c-addr u    end conversion, get string
-            FORTHWORD "#>"
-NUMGREATER  MOV &HP,0(PSP)
-            MOV #HOLD_BASE,TOS
-            SUB @PSP,TOS
-            mNEXT
-
-;https://forth-standard.org/standard/core/HOLD
-;C HOLD  char --        add char to output string
-            FORTHWORD "HOLD"
-HOLD        MOV TOS,W           ;1
-            MOV @PSP+,TOS       ;2
-            JMP HOLDW           ;15
-
-;https://forth-standard.org/standard/core/SIGN
-;C SIGN  n --           add minus sign if n<0
-            FORTHWORD "SIGN"
-SIGN        CMP #0,TOS
-            MOV @PSP+,TOS
-            MOV #'-',W
-            JN HOLDW        ; 0<
-            mNEXT
-
-;https://forth-standard.org/standard/double/Dd
-;C D.     dlo dhi --           display d (signed)
-;            FORTHWORD "D."
-DDOT         mDOCOL
-            .word   LESSNUM,DUP,TOR,DABBS,NUMS
-            .word   RFROM,SIGN,NUMGREATER,TYPE
-            .word   FBLANK,EMIT,EXIT
-
-;https://forth-standard.org/standard/core/Ud
-;C U.    u --           display u (unsigned)
-            FORTHWORD "U."
-UDOT        MOV #0,Y        ; 1
-UDOT1       SUB #2,PSP      ; 1 convert n|u to d|ud
-            MOV TOS,0(PSP)  ; 3
-            MOV Y,TOS       ; 1
-            JMP DDOT        ; 2
-
-;https://forth-standard.org/standard/core/d
-;C .     n --           display n (signed)
-            FORTHWORD "."
-DOT         CMP #0,TOS      ; 
-            JGE UDOT
-            MOV #-1,Y
-            JMP UDOT1
-
-;-------------------------------------------------------------------------------
-; BRANCH and LOOP OPERATORS
-;-------------------------------------------------------------------------------
-
-;Z branch   --                  branch always
-BRAN        MOV @IP,IP      ; 2
-            mNEXT           ; 4
-
-;Z ?FalseBranch   x --      ; branch if TOS is FALSE (=zero)
-QFBRAN      CMP #0,TOS      ; 1  test TOS value
-            MOV @PSP+,TOS   ; 2  pop new TOS value (doesn't change flags)
-            JZ BRAN         ; 2  if TOS was = 0, take the branch = 11 cycles
-            ADD #2,IP       ; 1  else skip the branch destination
-            mNEXT           ; 4  ==> branch not taken = 10 cycles
-
-;Z ?TrueBranch   x --       ; branch if TOS is true (<> zero)
-QTBRAN      CMP #0,TOS      ; 1  test TOS value
-            MOV @PSP+,TOS   ; 2  pop new TOS value (doesn't change flags)
-            JNZ BRAN        ; 2  if TOS was <> 0, take the branch = 11 cycles
-            ADD #2,IP       ; 1  else skip the branch destination
-            mNEXT           ; 4  ==> branch not taken = 10 cycles
-            
-;Z (do)    n1|u1 n2|u2 --  R: -- sys1 sys2      run-time code for DO
-;                                               n1|u1=limit, n2|u2=index
-xdo         MOV #8000h,X    ;2 compute 8000h-limit "fudge factor"
-            SUB @PSP+,X     ;2
-            MOV TOS,Y       ;1 loop ctr = index+fudge
-            MOV @PSP+,TOS   ;2 pop new TOS
-            ADD X,Y         ;1
-            PUSHM #2,X      ;4 PUSHM X,Y, i.e. PUSHM LIMIT, INDEX
-            mNEXT           ;4
-
-;Z (+loop)   n --   R: sys1 sys2 --  | sys1 sys2
-;                        run-time code for +LOOP
-; Add n to the loop index.  If loop terminates, clean up the
-; return stack and skip the branch. Else take the inline branch.
-xploop      ADD TOS,0(RSP)  ;4 increment INDEX by TOS value
-            MOV @PSP+,TOS   ;2 get new TOS, doesn't change flags
-xloopnext   BIT #100h,SR    ;2 is overflow bit set?
-            JZ BRAN         ;2 no overflow = loop
-            ADD #2,IP       ;1 overflow = loop done, skip branch ofs
-            ADD #4,RSP      ;1 empty RSP
-            mNEXT           ;4 16~ taken or not taken xloop/loop
-
-;Z (loop)   R: sys1 sys2 --  | sys1 sys2
-;                        run-time code for LOOP
-; Add 1 to the loop index.  If loop terminates, clean up the
-; return stack and skip the branch.  Else take the inline branch.
-; Note that LOOP terminates when index=8000h.
-xloop       ADD #1,0(RSP)   ;4 increment INDEX
-            JMP xloopnext   ;2
-
-;https://forth-standard.org/standard/core/I
-;C I        -- n   R: sys1 sys2 -- sys1 sys2
-;C                  get the innermost loop index
-            FORTHWORD "I"
-II          SUB #2,PSP      ;1 make room in TOS
-            MOV TOS,0(PSP)  ;3
-            MOV @RSP,TOS    ;2 index = loopctr - fudge
-            SUB 2(RSP),TOS  ;3
-            mNEXT           ;4 13~
-
-; ------------------------------------------------------------------------------
-; TERMINAL I/O, input part
-; ------------------------------------------------------------------------------
-
-;https://forth-standard.org/standard/core/KEY
-;C KEY      -- c      wait character from input device ; primary DEFERred word
-            FORTHWORD "KEY"
-KEY         MOV @PC+,PC             ;3 Code Field Address (CFA) of KEY
-PFAKEY      .word   BODYKEY         ;  Parameter Field Address (PFA) of KEY, with default value
-BODYKEY     MOV &TERM_RXBUF,Y       ; empty buffer
-            SUB #2,PSP              ; 1  push old TOS..
-            MOV TOS,0(PSP)          ; 3  ..onto stack
-            CALL #RXON
-KEYLOOP     BIT #UCRXIFG,&TERM_IFG  ; loop if bit0 = 0 in interupt flag register
-            JZ KEYLOOP              ;
-            MOV &TERM_RXBUF,TOS     ;
-            CALL #RXOFF             ;
-            mNEXT
-
-;-------------------------------------------------------------------------------
-; INTERPRETER INPUT, the kernel of kernel !
-;-------------------------------------------------------------------------------
-
-; ----------------------------------;
-RXON                                ;
-; ----------------------------------;
-    .IFDEF TERMINAL3WIRES           ;
-RXON_LOOP   BIT #UCTXIFG,&TERM_IFG  ;3  wait the sending of last char, useless at high baudrates
-            JZ RXON_LOOP            ;2
-            MOV #17,&TERM_TXBUF     ;4  move char XON into TX_buf
-    .ENDIF                          ;
-    .IFDEF TERMINAL4WIRES           ;
-            BIC.B #RTS,&HANDSHAKOUT ;4  set RTS low
-    .ENDIF                          ;
-; vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv;
-; starts first and 3th stopwatches  ;
-; ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^;
-            RET                     ;4  to BACKGND (End of file download or quiet input) or AKEYREAD1 (get next line of file downloading)
-; ----------------------------------;   ...or user defined
-
-; ----------------------------------;
-RXOFF                               ;
-; ----------------------------------;
-    .IFDEF TERMINAL3WIRES           ;
-            MOV #19,&TERM_TXBUF     ;4 move XOFF char into TX_buf
-    .ENDIF                          ;
-    .IFDEF TERMINAL4WIRES           ;
-            BIS.B #RTS,&HANDSHAKOUT ;4 set RTS high
-    .ENDIF                          ;
-            RET                     ;4 to ENDACCEPT, ...or user defined
-; ----------------------------------;
-
-; ----------------------------------;
-    ASMWORD "SLEEP"                 ;   may be redirected
-SLEEP       MOV @PC+,PC             ;3  Code Field Address (CFA) of SLEEP
-PFASLEEP    .word   BODYSLEEP       ;   Parameter Field Address (PFA) of SLEEP, with default value
-BODYSLEEP   CALL #RXON              ;4
-            BIS &LPM_MODE,SR        ;3  enter in LPMx sleep mode with GIE=1
-; ----------------------------------;   default FAST FORTH mode (for its input terminal use) : LPM0.
-
-;###############################################################################################################
-;###############################################################################################################
-
-; ### #     # ####### ####### ######  ######  #     # ######  #######  #####     #     # ####### ######  #######
-;  #  ##    #    #    #       #     # #     # #     # #     #    #    #     #    #     # #       #     # #
-;  #  # #   #    #    #       #     # #     # #     # #     #    #    #          #     # #       #     # #
-;  #  #  #  #    #    #####   ######  ######  #     # ######     #     #####     ####### #####   ######  #####
-;  #  #   # #    #    #       #   #   #   #   #     # #          #          #    #     # #       #   #   #
-;  #  #    ##    #    #       #    #  #    #  #     # #          #    #     #    #     # #       #    #  #
-; ### #     #    #    ####### #     # #     #  #####  #          #     #####     #     # ####### #     # #######
-
-;###############################################################################################################
-;###############################################################################################################
-
-
-; here, Fast FORTH sleeps, waiting any interrupt.
-; IP,S,T,W,X,Y registers (R13 to R8) are free for any interrupt routine...
-; ...and so PSP and RSP stacks with their rules of use.
-; remember: in any interrupt routine you must include : BIC #0x78,0(RSP) before RETI
-;           to force return to SLEEP.
-;           or (bad idea ? previous SR flags are lost) simply : ADD #2 RSP, then RET instead of RETI
-
-; ==================================;
-            JMP SLEEP               ;2  here is the return for any interrupts, else TERMINAL_INT  :-)
-; ==================================;
-
-    .IFDEF SD_CARD_LOADER
-    .include "forthMSP430FR_SD_ACCEPT.asm"
-    .ENDIF
-
-    .IFDEF DEFER_ACCEPT
-
-;https://forth-standard.org/standard/core/ACCEPT
-;C ACCEPT  addr addr len -- addr len'  get line at addr to interpret len' chars
-            FORTHWORD "ACCEPT"
-ACCEPT      MOV @PC+,PC             ;3 Code Field Address (CFA) of ACCEPT
-PFAACCEPT   .word   BODYACCEPT      ;  Parameter Field Address (PFA) of ACCEPT
-BODYACCEPT                          ;  BODY of ACCEPT = default execution of ACCEPT
-
-    .ELSE
+    .ELSE
 
 ;https://forth-standard.org/standard/core/ACCEPT
 ;C ACCEPT  addr addr len -- addr len'  get line at addr to interpret len' chars
@@ -1154,15 +953,10 @@ ACCEPT
 
     .IFDEF  HALFDUPLEX  ; to use FAST FORTH with half duplex input terminal (bluetooth or wifi connexion)
 
-    .include "forthMSP430FR_HALFDUPLEX.asm"
+        .include "forthMSP430FR_HALFDUPLEX.asm"
 
     .ELSE   ; to use FAST FORTH with full duplex terminal (USBtoUART bridge)
 
-; con speed of TERMINAL link, there are three bottlenecks :
-; 1- time to send XOFF/RTS_high on CR (CR+LF=EOL), first emergency.
-; 2- the char loop time,
-; 3- the time between sending XON/RTS_low and clearing UCRXIFG on first received char,
-; everything must be done to reduce these times, taking into account the necessity of switching to SLEEP (LPMx mode).
 ; ----------------------------------;
 ; ACCEPT part I prepare TERMINAL_INT;
 ; ----------------------------------;
@@ -1181,9 +975,9 @@ ACCEPT
             CMP #0Ah,Y              ;2                   received char = LF ? (end of downloading ?)
             JNZ RXON                ;2                   no : send XON then RET to AKEYREAD1 to process this first char of new line.
 ; ----------------------------------;
-ACCEPTNEXT  ADD #2,RSP              ;1              replace XON_ret = AKEYREAD1 by XON_ret = SLEEP
-            PUSHM #4,IP             ;6              PUSH IP,S,T,W  r-- ACCEPT_ret XOFF_ret YEMIT_ret 'BL' 'CR' bound XON_ret
-            JMP SLEEP               ;2              which calls RXON before falling down to LPMx mode
+ACCEPTNEXT  ADD #2,RSP              ;1              remove XON_ret
+            PUSHM #4,IP             ;6              PUSH IP,S,T,W  r-- ACCEPT_ret XOFF_ret YEMIT_ret 'BL' 'CR' bound
+            MOV #SLEEP,PC           ;2              which calls RXON before falling down to LPMx mode
 ; ----------------------------------;
 
 
@@ -1202,7 +996,7 @@ AKEYREAD    MOV.B &TERM_RXBUF,Y     ;3  read character into Y, UCRXIFG is cleare
 ; stops the 3th stopwatch           ; 3th bottleneck result : 17~ + LPMx wake_up time ( + 5~ XON loop if F/Bds<230400 )
 ; ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^;
 AKEYREAD1   CMP.B S,Y               ;1      printable char ?
-            JHS ASTORETEST          ;2      yes
+            JC ASTORETEST           ;2      yes
             CMP.B T,Y               ;1      CR ?
             JZ RXOFF                ;2      then RET to ENDACCEPT
 ; vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv;+ 4    to send RXOFF
@@ -1224,21 +1018,20 @@ ASTORETEST  CMP W,TOS               ; 1 Bound is reached ?
             JZ YEMIT1               ; 2 yes: send echo then loopback
             MOV.B Y,0(TOS)          ; 3 no: store char @ Ptr, send echo then loopback
             ADD #1,TOS              ; 1     increment Ptr
-YEMIT1                              ;
-            BIT #UCTXIFG,&TERM_IFG  ; 3 wait the sending end of previous char, useless at high baudrates
+
+YEMIT1      BIT #UCTXIFG,&TERM_IFG  ; 3 wait the sending end of previous char, useless at high baudrates
             JZ YEMIT1               ; 2 but there's no point in wanting to save time here:
-YEMIT2                              ;
+
     .IFDEF  TERMINAL5WIRES          ;
-            BIT.B #CTS,&HANDSHAKIN  ; 3
+YEMIT2      BIT.B #CTS,&HANDSHAKIN  ; 3
             JNZ YEMIT2              ; 2
     .ENDIF                          ;
-YEMIT                               ; hi7/4~ lo:12/9~ send/send_not  echo to terminal
-            .word   4882h           ; 4882h = MOV Y,&<next_adr>
+YEMIT       .word   4882h           ; 4882h = MOV Y,&<next_adr>
             .word   TERM_TXBUF      ; 3
-            mNEXT                   ; 4
+            MOV @IP+,PC             ; 4
 ; ----------------------------------;
-AYEMIT_RET  FORTHtoASM              ; 0     YEMII NEXT address
-            SUB #2,IP               ; 1 reset YEMIT NEXT address to AYEMIT_RET
+AYEMIT_RET  .word $+2               ; 0     YEMII NEXT address
+            SUB #2,IP               ; 1 restore AYEMIT_RET
 WAITaKEY    BIT #UCRXIFG,&TERM_IFG  ; 3 new char in TERMRXBUF ?
             JNZ AKEYREAD            ; 2 yes
             JZ WAITaKEY             ; 2 no
@@ -1257,139 +1050,459 @@ ACCEPTEND   SUB @PSP+,TOS           ; -- len'
 ; ----------------------------------;
             MOV #LPM0+GIE,&LPM_MODE ; reset LPM_MODE to default mode LPM0 for next line of input stream
 ; ----------------------------------;
-            mNEXT                   ; ...until next falling down to LPMx mode of (ACCEPT) part1,
+            MOV @IP+,PC             ; ...until next falling down to LPMx mode of (ACCEPT) part1,
 ; **********************************;    i.e. when the FORTH interpreter has no more to do.
 
 ; ------------------------------------------------------------------------------
 ; TERMINAL I/O, output part
 ; ------------------------------------------------------------------------------
 
-;https://forth-standard.org/standard/core/EMIT
-;C EMIT     c --    output character to the selected output device ; primary DEFERred word
+; https://forth-standard.org/standard/core/EMIT
+; EMIT     c --    output character to the selected output device ; primary DEFERred word
             FORTHWORD "EMIT"
-EMIT        MOV @PC+,PC             ;3 Code Field Address (CFA) of EMIT
+EMIT        MOV @PC+,PC             ;4 Code Field Address (CFA) of EMIT
 PFAEMIT     .word   BODYEMIT        ;  Parameter Field Address (PFA) of EMIT, with its default value
-BODYEMIT    MOV TOS,Y               ;  output character to the default output: TERMINAL
-            MOV @PSP+,TOS           ; 2
-            JMP YEMIT1              ; 12~
+BODYEMIT    MOV TOS,Y               ;1 output character to the default output: TERMINAL
+            MOV @PSP+,TOS           ;2
+            JMP YEMIT1              ;2 + 12~
 
     .ENDIF  ; HALFDUPLEX
 
-    .IFDEF DEFER_ACCEPT
+;Z ECHO     --      connect terminal output (default)
+            FORTHWORD "ECHO"
+ECHO        MOV #4882h,&YEMIT       ; 4882h = MOV Y,&<next_adr>
+            MOV #0,&LINE            ;
+            MOV @IP+,PC
+
+;Z NOECHO   --      disconnect terminal output
+            FORTHWORD "NOECHO"
+NOECHO      MOV #NEXT,&YEMIT        ;  NEXT = 4030h = MOV @IP+,PC
+            MOV #1,&LINE            ;
+            MOV @IP+,PC
+
+;https://forth-standard.org/standard/core/TYPE
+;C TYPE    adr len --     type line to terminal
+            FORTHWORD "TYPE"
+TYPE        CMP #0,TOS
+            JZ TWODROP              ; abort fonction
+            PUSHM #2,TOS            ;4                  R-- len IP
+            MOV #TYPE_NEXT,IP       ;
+TYPELOOP    MOV @PSP,Y              ;2 -- adr x         30~ char loop
+            MOV.B @Y+,TOS           ;2 -- adr char
+            MOV Y,0(PSP)            ;3 -- adr+1 char
+            SUB #2,PSP              ;1 -- adr+1 x char  emit consumes one cell
+            JMP EMIT                ;15
+TYPE_NEXT   .word $+2               ;  -- adr+1 x
+            SUB #2,IP               ;1
+            SUB #1,2(RSP)           ;4 -- adr+1 x       R-- len-1 IP
+            JNZ TYPELOOP            ;2
+            POPM #2,TOS             ;4 POPM IP,TOS
+TWODROP     ADD #2,PSP              ;
+DROP        MOV @PSP+,TOS           ; --
+            MOV @IP+,PC             ;
+
+; https://forth-standard.org/standard/core/CR
+; CR      --               send CR to the output device
+            FORTHWORD "CR"
+CR          MOV @PC+,PC             ;3 Code Field Address (CFA) of CR
+PFACR       .word   BODYCR          ;  Parameter Field Address (PFA) of CR, with its default value
+BODYCR      mDOCOL                  ;  send CR to the default output device
+            .word   XSQUOTE
+            .byte   2,13,10
+            .word   TYPE,EXIT
+
+; ------------------------------------------------------------------------------
+; TERMINAL I/O, input part
+; ------------------------------------------------------------------------------
+
+; https://forth-standard.org/standard/core/KEY
+; KEY      -- c      wait character from input device ; primary DEFERred word
+            FORTHWORD "KEY"
+KEY         MOV @PC+,PC             ;4  Code Field Address (CFA) of KEY
+PFAKEY      .word   BODYKEY         ;   Parameter Field Address (PFA) of KEY, with default value
+BODYKEY     MOV &TERM_RXBUF,Y       ;3  empty buffer
+            SUB #2,PSP              ;1  push old TOS..
+            MOV TOS,0(PSP)          ;3  ..onto stack
+            CALL #RXON
+KEYLOOP     BIT #UCRXIFG,&TERM_IFG  ; loop if bit0 = 0 in interupt flag register
+            JZ KEYLOOP              ;
+            MOV &TERM_RXBUF,TOS     ;
+            CALL #RXOFF             ;
+            MOV @IP+,PC
+
+;-------------------------------------------------------------------------------
+; STACK OPERATIONS
+;-------------------------------------------------------------------------------
+
+; https://forth-standard.org/standard/core/DUP
+; DUP      x -- x x      duplicate top of stack
+    .IFDEF CORE_COMPLEMENT
+            FORTHWORD "DUP"
+    .ENDIF
+DUP         SUB #2,PSP      ; 2  push old TOS..
+            MOV TOS,0(PSP)  ; 3  ..onto stack
+            MOV @IP+,PC     ; 4
+
+; https://forth-standard.org/standard/core/DROP
+; DROP     x --          drop top of stack
+    .IFDEF CORE_COMPLEMENT
+            FORTHWORD "DROP"
+            MOV @PSP+,TOS   ; 2
+            MOV @IP+,PC     ; 4
+    .ENDIF
+
+; https://forth-standard.org/standard/core/NIP
+; NIP      x1 x2 -- x2         Drop the first item below the top of stack
+    .IFDEF CORE_COMPLEMENT
+            FORTHWORD "NIP"
+NIP         ADD #2,PSP      ; 1
+            MOV @IP+,PC     ; 4
+    .ENDIF
+
+; https://forth-standard.org/standard/core/TwoDUP
+; 2DUP   x1 x2 -- x1 x2 x1 x2   dup top 2 cells
+    .IFDEF CORE_COMPLEMENT
+            FORTHWORD "2DUP"
+    .ENDIF
+TWODUP      MOV TOS,-2(PSP) ; 3
+            MOV @PSP,-4(PSP); 4
+            SUB #4,PSP      ; 1
+            MOV @IP+,PC     ; 4
+
+; https://forth-standard.org/standard/core/qDUP
+; ?DUP     x -- 0 | x x    DUP if nonzero
+    .IFDEF CORE_COMPLEMENT
+            FORTHWORD "?DUP"
+    .ENDIF
+QDUP        CMP #0,TOS      ; 2  test for TOS nonzero
+            JNZ DUP         ; 2
+            MOV @IP+,PC     ; 4
+
+; https://forth-standard.org/standard/core/SWAP
+; SWAP     x1 x2 -- x2 x1    swap top two items
+    .IFDEF CORE_COMPLEMENT
+            FORTHWORD "SWAP"
+    .ENDIF
+SWAP        MOV @PSP,W      ; 2
+            MOV TOS,0(PSP)  ; 3
+            MOV W,TOS       ; 1
+            MOV @IP+,PC     ; 4
+
+;https://forth-standard.org/standard/core/OVER
+;C OVER    x1 x2 -- x1 x2 x1
+    .IFDEF CORE_COMPLEMENT
+            FORTHWORD "OVER"
+            MOV TOS,-2(PSP) ; 3 -- x1 (x2) x2
+            MOV @PSP,TOS    ; 2 -- x1 (x2) x1
+            SUB #2,PSP      ; 1 -- x1 x2 x1
+            MOV @IP+,PC     ; 4
+    .ENDIF
+
+;https://forth-standard.org/standard/core/ROT
+;C ROT    x1 x2 x3 -- x2 x3 x1
+    .IFDEF CORE_COMPLEMENT
+            FORTHWORD "ROT"
+ROT         MOV @PSP,W      ; 2 fetch x2
+            MOV TOS,0(PSP)  ; 3 store x3
+            MOV 2(PSP),TOS  ; 3 fetch x1
+            MOV W,2(PSP)    ; 3 store x2
+            MOV @IP+,PC     ; 4
+    .ENDIF
+
+; https://forth-standard.org/standard/core/DEPTH
+; DEPTH    -- +n        number of items on stack, must leave 0 if stack empty
+    .IFDEF CORE_COMPLEMENT
+            FORTHWORD "DEPTH"
+    .ENDIF
+DEPTH       MOV TOS,-2(PSP)
+            MOV #PSTACK,TOS
+            SUB PSP,TOS     ; PSP-S0--> TOS
+            RRA TOS         ; TOS/2   --> TOS
+            SUB #2,PSP      ; post decrement stack...
+            MOV @IP+,PC
+
+; https://forth-standard.org/standard/core/toR
+; >R    x --   R: -- x   push to return stack
+    .IFDEF CORE_COMPLEMENT
+            FORTHWORD ">R"
+TOR         PUSH TOS
+            MOV @PSP+,TOS
+            MOV @IP+,PC
+    .ENDIF
+
+; https://forth-standard.org/standard/core/Rfrom
+; R>    -- x    R: x --   pop from return stack
+    .IFDEF CORE_COMPLEMENT
+            FORTHWORD "R>"
+    .ENDIF
+RFROM       SUB #2,PSP      ; 1
+            MOV TOS,0(PSP)  ; 3
+            MOV @RSP+,TOS   ; 2
+            MOV @IP+,PC     ; 4
+
+
+;https://forth-standard.org/standard/core/RFetch
+;C R@    -- x     R: x -- x   fetch from rtn stk
+    .IFDEF CORE_COMPLEMENT
+            FORTHWORD "R@"
+            SUB #2,PSP
+            MOV TOS,0(PSP)
+            MOV @RSP,TOS
+            MOV @IP+,PC
+    .ENDIF
+
+;-------------------------------------------------------------------------------
+; ARITHMETIC OPERATIONS
+;-------------------------------------------------------------------------------
+
+; https://forth-standard.org/standard/core/Minus
+; -      n1/u1 n2/u2 -- n3/u3      n3 = n1-n2
+    .IFDEF CORE_COMPLEMENT
+            FORTHWORD "-"
+    .ENDIF
+MINUS       SUB @PSP+,TOS   ;2  -- n2-n1
+NEGATE      XOR #-1,TOS     ;1
+ONEPLUS     ADD #1,TOS      ;1  -- n3 = -(n2-n1) = n1-n2
+            MOV @IP+,PC
+
+; https://forth-standard.org/standard/core/OneMinus
+; 1-      n1/u1 -- n2/u2     subtract 1 from TOS
+    .IFDEF CORE_COMPLEMENT
+            FORTHWORD "1-"
+ONEMINUS    SUB #1,TOS
+            MOV @IP+,PC
+    .ENDIF
+
+;https://forth-standard.org/standard/core/Plus
+;C +       n1/u1 n2/u2 -- n3/u3     add n1+n2
+    .IFDEF CORE_COMPLEMENT
+            FORTHWORD "+"
+PLUS        ADD @PSP+,TOS
+            MOV @IP+,PC
+    .ENDIF
+
+; https://forth-standard.org/standard/core/OnePlus
+; 1+      n1/u1 -- n2/u2       add 1 to TOS
+    .IFDEF CORE_COMPLEMENT
+            FORTHWORD "1+"
+            ADD #1,TOS
+            MOV @IP+,PC
+    .ENDIF
+
+;-------------------------------------------------------------------------------
+; MEMORY OPERATIONS
+;-------------------------------------------------------------------------------
+
+; https://forth-standard.org/standard/core/Fetch
+; @       a-addr -- x   fetch cell from memory
+    .IFDEF CORE_COMPLEMENT
+            FORTHWORD "@"
+            MOV @TOS,TOS
+            MOV @IP+,PC
+    .ENDIF
+
+; https://forth-standard.org/standard/core/Store
+; !        x a-addr --   store cell in memory
+    .IFDEF CORE_COMPLEMENT
+            FORTHWORD "!"
+    .ENDIF
+STORE       MOV @PSP+,0(TOS);4
+            MOV @PSP+,TOS   ;2
+            MOV @IP+,PC     ;4
+
+;-------------------------------------------------------------------------------
+; COMPARAISON OPERATIONS
+;-------------------------------------------------------------------------------
+
+; https://forth-standard.org/standard/core/ZeroEqual
+; 0=     n/u -- flag    return true if TOS=0
+    .IFDEF CORE_COMPLEMENT
+            FORTHWORD "0="
+    .ENDIF
+ZEROEQUAL   SUB #1,TOS      ;1 borrow (clear cy) if TOS was 0
+            SUBC TOS,TOS    ;1 TOS=-1 if borrow was set
+            MOV @IP+,PC
+
+; https://forth-standard.org/standard/core/Zeroless
+; 0<     n -- flag      true if TOS negative
+    .IFDEF CORE_COMPLEMENT
+            FORTHWORD "0<"
+    .ENDIF
+ZEROLESS    ADD TOS,TOS     ;1 set carry if TOS negative
+            SUBC TOS,TOS    ;1 TOS=-1 if carry was clear
+INVERT      XOR #-1,TOS     ;1 TOS=-1 if carry was set
+            MOV @IP+,PC     ;
+
+; https://forth-standard.org/standard/core/Uless
+; U<    u1 u2 -- flag       test u1<u2, unsigned
+    .IFDEF CORE_COMPLEMENT
+            FORTHWORD "U<"
+    .ENDIF
+ULESS       SUB @PSP+,TOS   ;2
+            JZ ULESSEND     ;2 flag 
+            MOV #-1,TOS     ;1 flag Z = 0
+            JC ULESSEND     ;2 unsigned
+            AND #0,TOS      ;1
+ULESSEND    MOV @IP+,PC     ;4
+
+; https://forth-standard.org/standard/core/Equal
+; =      x1 x2 -- flag         test x1=x2
+    .IFDEF CORE_COMPLEMENT
+            FORTHWORD "="
+EQUAL       SUB @PSP+,TOS   ;2
+            JZ INVERT       ;2 flag Z will be = 0
+            AND #0,TOS      ;1 flag Z = 1
+            MOV @IP+,PC     ;4
+    .ENDIF
+
+;https://forth-standard.org/standard/core/less
+;C <      n1 n2 -- flag        test n1<n2, signed
+    .IFDEF CORE_COMPLEMENT
+            FORTHWORD "<"
+LESS        SUB @PSP+,TOS   ;1 TOS=n2-n1
+            JZ LESSEND      ;2
+            JL TOSFALSE     ;2 signed
+TOSTRUE     MOV #-1,TOS     ;1 flag Z = 0
+LESSEND     MOV @IP+,PC     ;4
+    .ENDIF
+
+;https://forth-standard.org/standard/core/more
+;C >     n1 n2 -- flag         test n1>n2, signed
+    .IFDEF CORE_COMPLEMENT
+            FORTHWORD ">"
+GREATER     SUB @PSP+,TOS   ;2 TOS=n2-n1
+            JL TOSTRUE      ;2 --> +5
+TOSFALSE    AND #0,TOS      ;1 flag Z = 1
+            MOV @IP+,PC     ;4
+    .ENDIF
+
+;-------------------------------------------------------------------------------
+; CORE ANS94 complement OPTION
+;-------------------------------------------------------------------------------
+    .IFDEF CORE_COMPLEMENT
+    .include "ADDON/CORE_COMP.asm"
+    .ENDIF ; CORE_COMPLEMENT
+
+;-------------------------------------------------------------------------------
+; NUMERIC OUTPUT
+;-------------------------------------------------------------------------------
 
-; CIB           --  addr          of Current Input Buffer
-;            FORTHWORD "CIB"         ; constant, may be redirected as SDIB_ORG by OPEN.
-FCIB        mDOCON                  ; Code Field Address (CFA) of FCIB 
-PFACIB      .WORD    TIB_ORG        ; Parameter Field Address (PFA) of FCIB
+; Numeric conversion is done last digit first, so
+; the output buffer is built backwards in memory.
 
-; REFILL    accept one line from input and leave org len of input buffer
-; : REFILL CIB DUP TIB_LEN ACCEPT ;   -- CIB len    shared by QUIT and [ELSE]
-REFILL      SUB #6,PSP              ;2
-            MOV TOS,4(PSP)          ;3
-            MOV #TIB_LEN,TOS        ;2
-            MOV &PFACIB,0(PSP)      ;5
-            MOV @PSP,2(PSP)         ;4
-            JMP ACCEPT              ;2
+; https://forth-standard.org/standard/core/num-start
+; <#    --       begin numeric conversion (initialize Hold Pointer)
+            FORTHWORD "<#"
+LESSNUM     MOV #HOLD_BASE,&HP
+            MOV @IP+,PC
 
-    .ELSE
+; https://forth-standard.org/standard/core/num
+; #     ud1lo ud1hi -- ud2lo ud2hi          convert 1 digit of output
+            FORTHWORD "#"
+NUM         MOV &BASE,T         ;3                      T = Divisor
+NUM1        MOV @PSP,S          ;2 -- DVDlo DVDhi       S = DVDlo
+            SUB #2,PSP          ;1 -- DVDlo x DVDhi     TOS = DVDhi
+            CALL #MUSMOD1       ;4 -- REMlo QUOTlo QUOThi
+            MOV @PSP+,0(PSP)    ;4 -- QUOTlo QUOThi
+TODIGIT     CMP.B #10,W         ;2  W = REMlo
+            JNC TODIGIT1        ;2  jump if U<
+            ADD.B #7,W          ;2
+TODIGIT1    ADD.B #30h,W        ;2
+HOLDW       SUB #1,&HP          ;4  store W=char --> -[HP]
+            MOV &HP,Y           ;3
+            MOV.B W,0(Y)        ;3
+            MOV @IP+,PC         ;4  26 words
 
-; REFILL    accept one line from input and leave org len of input buffer
-; : REFILL TIB DUP TIB_LEN ACCEPT ;   -- TIB len    shared by QUIT and [ELSE]
-REFILL      SUB #6,PSP              ;2     -- x x x x
-            MOV TOS,4(PSP)          ;3     -- Saved_TOS x x TOS
-            MOV #TIB_LEN,TOS        ;2     -- Saved_TOS x x TIB_LEN 
-            MOV #TIB_ORG,0(PSP)     ;4     -- Saved_TOS x TIB TIB_LEN
-            MOV @PSP,2(PSP)         ;4     -- Saved_TOS TIB TIB TIB_LEN
-            JMP ACCEPT              ;2     -- TIB LEN
+; https://forth-standard.org/standard/core/numS
+; #S    udlo udhi -- 0 0       convert remaining digits
+            FORTHWORD "#S"
+NUMS        mDOCOL
+            .word   NUM         ;       X=QUOTlo
+            .word   $+2         ;       next adr
+            SUB #2,IP           ;1      restore NUM return
+            CMP #0,X            ;1      test ud2lo first (generally <>0)
+            JNZ NUM1            ;2
+            CMP #0,TOS          ;1      then test ud2hi (generally =0)
+            JNZ NUM1            ;2
+EXIT        MOV @RSP+,IP 
+            MOV @IP+,PC         ;6 10 words, about 241/417 cycles/char
 
-    .ENDIF
+; https://forth-standard.org/standard/core/num-end
+; #>    udlo:udhi -- c-addr u    end conversion, get string
+            FORTHWORD "#>"
+NUMGREATER  MOV &HP,0(PSP)
+            MOV #HOLD_BASE,TOS
+            SUB @PSP,TOS
+            MOV @IP+,PC
 
-;Z ECHO     --      connect terminal output (default)
-            FORTHWORD "ECHO"
-ECHO        MOV #4882h,&YEMIT       ; 4882h = MOV Y,&<next_adr>
-            MOV #0,&LINE            ;
-            mNEXT
+; https://forth-standard.org/standard/core/HOLD
+; HOLD  char --        add char to output string
+            FORTHWORD "HOLD"
+HOLD        MOV.B TOS,W         ;1
+            MOV @PSP+,TOS       ;2
+            JMP HOLDW           ;15
 
-;Z NOECHO   --      disconnect terminal output
-            FORTHWORD "NOECHO"
-NOECHO      MOV #NEXT,&YEMIT        ;  NEXT = 4030h = MOV @IP+,PC
-            MOV #1,&LINE            ;
-            mNEXT
+; https://forth-standard.org/standard/core/SIGN
+; SIGN  n --           add minus sign if n<0
+            FORTHWORD "SIGN"
+SIGN        CMP #0,TOS
+            MOV @PSP+,TOS
+            MOV.B #'-',W
+            JN HOLDW            ; jump if 0<
+            MOV @IP+,PC
 
-;https://forth-standard.org/standard/core/TYPE
-;C TYPE    adr len --     type line to terminal
-            FORTHWORD "TYPE"
-TYPE        CMP #0,TOS
-            JZ TWODROP              ; abort fonction
-            PUSHM #2,TOS            ;4                  R-- len IP
-            MOV #TYPE_NEXT,IP       ;
-TYPELOOP    MOV @PSP,Y              ;2 -- adr x         30~ char loop
-            MOV.B @Y+,TOS           ;2 -- adr char
-            MOV Y,0(PSP)            ;3 -- adr+1 char
-            SUB #2,PSP              ;1 -- adr+1 x char  emit consumes one cell
-            JMP EMIT                ;15
-TYPE_NEXT   FORTHtoASM              ;  -- adr+1 x
-            SUB #2,IP               ;1
-            SUB #1,2(RSP)           ;4 -- adr+1 x       R-- len-1 IP
-            JNZ TYPELOOP            ;2
-            POPM #2,TOS             ;4 POPM IP,TOS
-TWODROP     ADD #2,PSP              ;
-ONEDROP     MOV @PSP+,TOS           ; --
-            mNEXT                   ;
+; https://forth-standard.org/standard/core/Ud
+; U.    u --           display u (unsigned)
+            FORTHWORD "U."
+UDOT        MOV #0,Y            ; 1
+DOTTODDOT   SUB #2,PSP          ; 1 convert n|u to d|ud with Y = -1|0
+            MOV TOS,0(PSP)      ; 3
+            MOV Y,TOS           ; 1
+DDOT        PUSH IP             ; paired with EXIT
+            PUSH TOS            ; paired with RFROM
+DABS        AND #-1,TOS         ; clear V, set N
+            JGE DDOTNEXT        ; if positive (N=0)
+            XOR #-1,0(PSP)      ;4
+            XOR #-1,TOS         ;1
+            ADD #1,0(PSP)       ;4
+            ADDC #0,TOS         ;1
+DDOTNEXT    ASMTOFORTH          ;10
+            .word   LESSNUM,NUMS
+            .word   RFROM,SIGN,NUMGREATER,TYPE
+            .word   FBLANK,EMIT,EXIT
 
-;https://forth-standard.org/standard/core/CR
-;C CR      --               send CR to the output device
-            FORTHWORD "CR"
-CR          MOV @PC+,PC             ;3 Code Field Address (CFA) of CR
-PFACR       .word   BODYCR          ;  Parameter Field Address (PFA) of CR, with its default value
-BODYCR      mDOCOL                  ;  send CR to the default output device
-            .word   XSQUOTE
-            .byte   2,13,10
-            .word   TYPE,EXIT
+; https://forth-standard.org/standard/core/d
+; .     n --           display n (signed)
+            FORTHWORD "."
+DOT         CMP #0,TOS
+            JGE UDOT
+            MOV #-1,Y
+            JMP DOTTODDOT
 
 ; ------------------------------------------------------------------------------
 ; STRINGS PROCESSING
 ; ------------------------------------------------------------------------------
 
-;Z lit      -- x    fetch inline literal to stack
-; This is the execution part of LITERAL.
-;            FORTHWORD "LIT"
-lit         SUB #2,PSP          ; 2  push old TOS..
-            MOV TOS,0(PSP)      ; 3  ..onto stack
-            MOV @IP+,TOS        ; 2  fetch new TOS value
-            MOV @IP+,PC         ; 4  NEXT
-
-;Z (S")     -- addr u   run-time code for S"
-; get address and length of string.
-XSQUOTE     SUB #4,PSP              ; 1 -- x x TOS      ; push old TOS on stack
-            MOV TOS,2(PSP)          ; 3 -- TOS x x      ; and reserve one cell on stack
-            MOV.B @IP+,TOS          ; 2 -- x u          ; u = lenght of string
-            MOV IP,0(PSP)           ; 3 -- addr u
-            ADD TOS,IP              ; 1 -- addr u       IP=addr+u=addr(end_of_string)
-            BIT #1,IP               ; 1 -- addr u       IP=addr+u   Carry set/clear if odd/even
-            ADDC #0,IP              ; 1 -- addr u       IP=addr+u aligned
-            mNEXT                   ; 4  16~
-
-;https://forth-standard.org/standard/core/Sq
-;C S"       --             compile in-line string
-            FORTHWORDIMM "S\34"     ; immediate
-SQUOTE      MOV #0,&CAPS            ; CAPS OFF
+; https://forth-standard.org/standard/core/Sq
+; S"       --             compile in-line string
+            FORTHWORDIMM "S\34" ; immediate
+SQUOTE      MOV #0,&CAPS        ; CAPS OFF
             mDOCOL
             .word   lit,XSQUOTE,COMMA
 SQUOTE1     .word   lit,'"',WORDD   ; -- c-addr (= HERE)
-            FORTHtoASM
-            MOV #32,&CAPS           ; CAPS ON
-            MOV.B @TOS,TOS          ; -- u
-            ADD #1,TOS              ; -- u+1
-            BIT #1,TOS              ;1 carry set if odd
+            .word   $+2
+            MOV #32,&CAPS       ; CAPS ON
+            MOV.B @TOS,TOS      ; -- u
+            ADD #1,TOS          ; -- u+1
+            BIT #1,TOS          ;1 carry set if odd
             ADDC TOS,&DDP
 DROPEXIT    MOV @RSP+,IP
             MOV @PSP+,TOS
-            mNEXT
+            MOV @IP+,PC
 
-;https://forth-standard.org/standard/core/Dotq
-;C ."       --              compile string to print
-            FORTHWORDIMM ".\34"     ; immediate
+; https://forth-standard.org/standard/core/Dotq
+; ."       --              compile string to print
+            FORTHWORDIMM ".\34" ; immediate
 DOTQUOTE    mDOCOL
             .word   SQUOTE
             .word   lit,TYPE,COMMA,EXIT
@@ -1398,26 +1511,22 @@ DOTQUOTE    mDOCOL
 ; INTERPRETER
 ;-------------------------------------------------------------------------------
 
-    .IFNDEF MSP430ASSEMBLER
-
-;https://forth-standard.org/standard/core/WORD
-;C WORD   char -- addr        Z=1 if len=0
+; https://forth-standard.org/standard/core/WORD
+; WORD   char -- addr        Z=1 if len=0
 ; parse a word delimited by char separator; by default (CAPS=$20), this "word" is capitalized
 ; when used by S" (CAPS=0), this "word" will not be capitalized.
             FORTHWORD "WORD"
-WORDD       
-SKIPCHAR    MOV #SOURCE_LEN,S       ;2 -- separator
+WORDD       MOV #SOURCE_LEN,S       ;2 -- separator
             MOV @S+,X               ;2              X = str_len
             MOV @S+,W               ;2              W = str_org
             ADD W,X                 ;1              W = str_org    X = str_org + str_len = str_end
             ADD @S+,W               ;2              W = str_org + >IN = str_ptr    X = str_end
-            MOV @S,Y                ;2              W = str_ptr    X = str_end     Y = HERE, as dst_ptr
+            MOV @S,Y                ;2              Y = HERE, as dst_ptr
 SKIPCHARLOO CMP W,X                 ;1              str_ptr = str_end ?
-            JZ SCANWORDEND          ;2              if yes : End Of Line !
+            JZ SKIPCHAREND          ;2              if yes : End Of Line !
             CMP.B @W+,TOS           ;2              does char = separator ?
             JZ SKIPCHARLOO          ;2              if yes; 7~ loop
-            SUB #1,W                ;1
-SKIPCHARNXT
+            SUB #1,W                ;1              move the (post incremented) pointer back one
 SCANWORD    MOV #96,T               ;2              T = 96 = ascii(a)-1 (test value set in a register before SCANWORD loop)
 SCANWORDLOO MOV.B S,0(Y)            ;3              first time make room in dst for word length; next, put char @ dst.
             CMP W,X                 ;1              str_ptr = str_end ?
@@ -1429,71 +1538,21 @@ SCANWORDLOO MOV.B S,0(Y)            ;3              first time make room in dst
             CMP.B S,T               ;1              char U< 'a' ?  ('a'-1 U>= char) this condition is tested at each loop
             JC SCANWORDLOO          ;2              15~ upper case char loop
             CMP.B #123,S            ;2              char U>= 'z'+1 ?
-            JC SCANWORDLOO          ;2              if yes
-            SUB.B &CAPS,S           ;3              convert lowercase char to uppercase if CAPS ON (CAPS=32)
-            JMP SCANWORDLOO         ;2              24~ lower case char loop
-SCANWORDEND SUB &SOURCE_ORG,W       ;3 -- separator W=str_ptr - str_org = new >IN (first char separator next)
-            MOV W,&TOIN             ;3              update >IN
-            MOV &DDP,TOS            ;3 -- c-addr
-            SUB TOS,Y               ;1              Y=Word_Length Z=1
-            MOV.B Y,0(TOS)          ;3
-            mNEXT                   ;4 -- c-addr    40 words      Z=1 <==> lenght=0 <==> EOL
-
-    .ELSE
-
-;;Z SKIP      char -- addr           ; skip all occurring character 'char' in input stream
-SKIP        MOV.B #0,Y               ; used by assembler to parse input stream
-            JMP SKIPCHAR
-
-;https://forth-standard.org/standard/core/WORD
-;C WORD   char -- addr        Z=1 if len=0
-; parse a word delimited by char separator; by default (CAPS=$20), this "word" is capitalized
-; when used by S" (CAPS=0), this "word" will not be capitalized.
-            FORTHWORD "WORD"
-WORDD       MOV.B TOS,Y             ;1
-SKIPCHAR    MOV &SOURCE_LEN,X       ;3 -- separator
-            MOV &SOURCE_ORG,W       ;3              W = str_org
-            ADD W,X                 ;1              W = str_org    X = str_org + str_len = str_end
-            ADD &TOIN,W             ;3              W = str_org + >IN = str_ptr    X = str_end
-SKIPCHARLOO CMP W,X                 ;1              str_ptr = str_end ?
-            JZ SKIPCHARNXT          ;2              if yes : End Of Line !
-            CMP.B @W+,TOS           ;2              does char = separator ?
-            JZ SKIPCHARLOO          ;2              if yes; 7~ loop
-            SUB #1,W                ;1
-SKIPCHARNXT AND.B Y,TOS             ;1
-            JNZ SCANWORD            ;2
-SKIPEND:    MOV W,TOS               ;1 -- addr
-            SUB &SOURCE_ORG,W       ;3 -- addr       W=Ptr-Org=Toin
-            MOV W,&TOIN             ;3
-            mNEXT                   ;4
-
-SCANWORD    MOV &DDP,Y              ;3              Y = HERE, as dst_ptr
-            MOV #96,T               ;2              T = 96 = ascii(a)-1 (test value set in a register before SCANWORD loop)
-SCANWORDLOO MOV.B S,0(Y)            ;3              first time make room in dst for word length; next, put char @ dst.
-            CMP W,X                 ;1              str_ptr = str_end ?
-            JZ SCANWORDEND          ;2              if yes
-            MOV.B @W+,S             ;2
-            CMP.B S,TOS             ;1              does char = separator ?
-            JZ SCANWORDEND          ;2              if yes
-            ADD #1,Y                ;1              increment dst just before test loop
-            CMP.B S,T               ;1              char U< 'a' ?  ('a'-1 U>= char) this condition is tested at each loop
-            JC SCANWORDLOO          ;2              15~ upper case char loop
-            CMP.B #123,S            ;2              char U>= 'z'+1 ?
-            JC SCANWORDLOO          ;2              if yes
-            SUB.B &CAPS,S           ;3              convert lowercase char to uppercase if CAPS ON (CAPS=32)
-            JMP SCANWORDLOO         ;2              24~ lower case char loop
-SCANWORDEND SUB &SOURCE_ORG,W       ;3 -- separator W=str_ptr - str_org = new >IN (first char separator next)
+            JC SCANWORDLOO          ;2              loopback if yes
+            SUB.B &CAPS,S           ;4              convert lowercase char to uppercase if CAPS ON (CAPS=32)
+            JMP SCANWORDLOO         ;2              26~ lower case char loop
+SCANWORDEND 
+SKIPCHAREND SUB &SOURCE_ORG,W       ;3 -- separator W=str_ptr - str_org = new >IN (first char separator next)
             MOV W,&TOIN             ;3              update >IN
             MOV &DDP,TOS            ;3 -- c-addr
-            SUB TOS,Y               ;1              Y=Word_Length Z=1
+            SUB TOS,Y               ;1              Y=Word_Length
             MOV.B Y,0(TOS)          ;3
-            mNEXT                   ;4 -- c-addr    40 words      Z=1 <==> lenght=0 <==> EOL
-    .ENDIF
+            MOV @IP+,PC             ;4 -- c-addr    40 words      Z=1 <==> lenght=0 <==> EOL
 
-;https://forth-standard.org/standard/core/FIND
-;C FIND   c-addr -- c-addr 0   if not found ; flag Z=1
-;C                  CFA -1      if found     ; flag Z=0
-;C                  CFA  1      if immediate ; flag Z=0
+; https://forth-standard.org/standard/core/FIND
+; FIND   c-addr -- c-addr 0   if not found ; flag Z=1
+;                  CFA -1      if found     ; flag Z=0
+;                  CFA  1      if immediate ; flag Z=0
 ; compare WORD at c-addr (HERE)  with each of words in each of listed vocabularies in CONTEXT
 ; FIND to WORDLOOP  : 14/20 cycles,
 ; mismatch word loop: 13 cycles on len, +7 cycles on first char,
@@ -1501,7 +1560,7 @@ SCANWORDEND SUB &SOURCE_ORG,W       ;3 -- separator W=str_ptr - str_org = new >I
 ; VOCLOOP           : 12/18 cycles,
 ; WORDFOUND to end  : 21 cycles.
 ; note: with 16 threads vocabularies, FIND takes about 75% of CORETEST.4th processing time
-            FORTHWORD "FIND"        ;  -- c-addr
+            FORTHWORD "FIND"        ;  -- c-addr            at transient RAM area (HERE)
 FIND        SUB #2,PSP              ;1 -- ???? c-addr       reserve one cell here, not at FINDEND because interacts with flag Z
             MOV TOS,S               ;1                      S=c-addr
             MOV.B @S,rDOCON         ;2                      R5= string count
@@ -1513,9 +1572,9 @@ VOCLOOP     MOV @T+,TOS             ;2 -- ???? VOC_PFA      T=CTXT+2
     .SWITCH THREADS
     .CASE   1
     .ELSECASE                       ;                       search thread add 6cycles  5words
-MAKETHREAD  MOV.B 1(S),Y            ;3 -- ???? VOC_PFA0     S=c-addr Y=CHAR0
+MAKETHREAD  MOV.B 1(S),Y            ;3 -- ???? VOC_PFA0     S=c-addr Y=first char of c-addr string
             AND.B #(THREADS-1)*2,Y  ;2 -- ???? VOC_PFA0     Y=thread offset
-            ADD Y,TOS               ;1 -- ???? VOC_PFAx
+            ADD Y,TOS               ;1 -- ???? VOC_PFAx     TOS = words set entry
     .ENDCASE
             ADD #2,TOS              ;1 -- ???? VOC_PFA+2
 WORDLOOP    MOV -2(TOS),TOS         ;3 -- ???? [VOC_PFA]    [VOC_PFA] first, then [LFA]
@@ -1544,11 +1603,11 @@ WORDFOUND   BIT #1,X                ;1
 FINDEND     MOV S,0(PSP)            ;3 not found: -- c-addr 0                           flag Z=1
             MOV #xdocon,rDOCON      ;2     found: -- xt -1|+1 (not immediate|immediate) flag Z=0
             MOV #xdodoes,rDODOES    ;2
-            mNEXT                   ;4 42/47 words
+            MOV @IP+,PC             ;4 42/47 words
 
     .IFDEF MPY_32
 
-;https://forth-standard.org/standard/core/toNUMBER
+; https://forth-standard.org/standard/core/toNUMBER
 ; ud2 is the unsigned result of converting the characters within the string specified by c-addr1 u1 into digits,
 ; using the number in BASE, and adding each into ud1 after multiplying ud1 by the number in BASE. 
 ; Conversion continues left-to-right until a character that is not convertible, including '.', ',' or '_',
@@ -1556,7 +1615,7 @@ FINDEND     MOV S,0(PSP)            ;3 not found: -- c-addr 0
 ; or the first character past the end of the string if the string was entirely converted.
 ; u2 is the number of unconverted characters in the string.
 ; An ambiguous condition exists if ud2 overflows during the conversion.
-;C >NUMBER  ud1lo ud1hi addr1 cnt1 -- ud2lo ud2hi addr2 cnt2
+; >NUMBER  ud1lo ud1hi addr1 cnt1 -- ud2lo ud2hi addr2 cnt2
             FORTHWORD ">NUMBER"     ; 23 cycles + 32/34 cycles DEC/HEX char loop
 TONUMBER    MOV @PSP+,S             ;2 -- ud1lo ud1hi cnt1  S = addr1
             MOV @PSP+,Y             ;2 -- ud1lo cnt1        Y = ud1hi
@@ -1565,14 +1624,14 @@ TONUMBER    MOV @PSP+,S             ;2 -- ud1lo ud1hi cnt1  S = addr1
             MOV &BASE,T             ;3
 TONUMLOOP   MOV.B @S,W              ;2 -- x x x cnt         S=adr, T=base, W=char, X=udlo, Y=udhi 
 DDIGITQ     SUB.B #30h,W            ;2                      skip all chars < '0'
-            CMP.B #10,W             ;2                      char was U< 10 (U< ':') ?
-            JLO DDIGITQNEXT         ;2                      no
+            CMP.B #10,W             ;2                      char was U< 58 (U< ':') ?
+            JNC DDIGITQNEXT         ;2                      no
             SUB.B #7,W              ;2
             CMP.B #10,W             ;2
-            JLO TONUMEND            ;2 -- x x x cnt         exit if '9' < char < 'A' 
+            JNC TONUMEND            ;2 -- x x x cnt         exit if '9' < char < 'A' 
 DDIGITQNEXT CMP T,W                 ;1                      digit-base
             BIC #Z,SR               ;1                      reset Z before jmp TONUMEND because...
-            JHS TONUMEND            ;2                      ...QNUMBER conversion will be true if Z = 1  :-(
+            J TONUMEND            ;2                      ...QNUMBER conversion will be true if Z = 1  :-(
 UDSTAR      MOV X,&MPY32L           ;3                      Load 1st operand (ud1lo)
             MOV Y,&MPY32H           ;3                      Load 1st operand (ud1hi)
             MOV T,&OP2              ;3                      Load 2nd operand with BASE
@@ -1586,7 +1645,7 @@ TONUMPLUS   ADD #1,S                ;1                      adr+1
 TONUMEND    MOV S,0(PSP)            ;3 -- x x addr2 cnt2
             MOV Y,2(PSP)            ;3 -- x ud2hi addr2 cnt2
             MOV X,4(PSP)            ;3 -- ud2lo ud2hi addr2 cnt2
-            mNEXT                   ;4 41 words
+            MOV @IP+,PC             ;4 42 words
 
 ; ?NUMBER makes the interface between INTERPRET and >NUMBER; it's a subset of INTERPRET.
 ; convert a string to a signed number; FORTH 2012 prefixes $, %, # are recognized
@@ -1611,10 +1670,11 @@ QNUMBER
             MOV.B @S+,TOS           ;2 -- addr x x x cnt        TOS=count
 QNUMLDCHAR  MOV.B @S,W              ;2                          W=char
             CMP.B #'-',W            ;2
-            JLO QBINARY             ;2                          jump if char < '-'
+            JNC QBINARY             ;2                          jump if char < '-'
             JNZ DDIGITQ             ;2 -- addr x x x cnt        jump if char > '-'
             MOV #-1,2(RSP)          ;3 R-- IP sign base         set sign flag
-            JMP TONUMPLUS           ;2
+;            JMP TONUMPLUS           ;2                         issue: when I type '-' then CR, a number 0 is created!
+            JMP PREFIXED            ;2
 QBINARY     MOV #2,T                ;1                          preset base 2
             SUB.B #'%',W            ;2                          binary number ?
             JZ PREFIXED             ;2
@@ -1628,25 +1688,25 @@ PREFIXED    ADD #1,S                ;1
             SUB #1,TOS              ;1 -- addr x x x cnt-1      S=adr+1 TOS=count-1
             JMP QNUMLDCHAR          ;2
 ; ----------------------------------;
-TONUMEXIT   FORTHtoASM              ;  -- addr ud2lo-hi addr2 cnt2      R-- IP sign BASE    S=addr2
+TONUMEXIT   .word $+2               ;  -- addr ud2lo-hi addr2 cnt2      R-- IP sign BASE    S=addr2
 ; ----------------------------------;
             JZ QNUMNEXT             ;2                                  if conversion is ok
 ; ----------------------------------;
-            SUB #2,IP               ;                                   redefines TONUMEXIT as >NUMBER return
+            SUB #2,IP               ;                                   redefines TONUMEXIT as >NUMBER return before loopback
             CMP.B #28h,W            ;                                   rejected char by >NUMBER is a underscore ?
-            JZ TONUMPLUS            ;                                   yes, skip it
+            JZ TONUMPLUS            ;                                   yes, loopback to >NUMBER with skip char
 ; ----------------------------------;
         .IFDEF DOUBLE_NUMBERS       ;                                   DOUBLE_NUMBERS = DOUBLE_INPUT | FIXPOINT_INPUT
             BIS #UF9,SR             ;2                                  set double number flag
         .ENDIF                      ;
         .IFDEF DOUBLE_INPUT         ;
             CMP.B #0F7h,W           ;2                                  rejected char by >NUMBER is a decimal point ?
-            JZ TONUMPLUS            ;2                                  yes, skip it
+            JZ TONUMPLUS            ;2                                  yes, loopback to >NUMBER with skip char
         .ENDIF                      ;
 ; ----------------------------------;
         .IFDEF FIXPOINT_INPUT       ;
             CMP.B #0F5h,W           ;2                                  rejected char by >NUMBER is a comma ?
-            JNZ QNUMNEXT            ;2                                  no, that will be followed by abort on conversion error
+            JNZ QNUMNEXT            ;2                                  no, with Z=0, this jump will fall to QNUMKO
 ; ----------------------------------;
 S15Q16      MOV TOS,W               ;1 -- addr ud2lo x x x              W=cnt2
             MOV #0,X                ;1 -- addr ud2lo x 0 x              init X = ud2lo' = 0
@@ -1657,12 +1717,12 @@ S15Q16LOOP  MOV X,2(PSP)            ;3 -- addr ud2lo ud2lo' ud2lo' x    0(PSP) =
             MOV.B @X,X              ;2                                  X = last char of string first (keep in mind: reverse conversion)
             SUB.B #30h,X            ;2                                  char --> digit conversion
             CMP.B #10,X             ;2
-            JLO QS15Q16DIGI         ;2
+            JNC QS15Q16DIGI         ;2
             SUB.B #7,X              ;2
             CMP.B #10,X             ;2                                  to skip all chars between "9" and "A"
-            JLO S15Q16EOC           ;2                                  end of conversion on first rejected char (normally: ',')
+            JNC S15Q16EOC           ;2                                  end of conversion on first rejected char (normally: ',')
 QS15Q16DIGI CMP T,X                 ;1                                  R-- IP sign BASE    is X a digit ?
-            JHS S15Q16EOC           ;2 -- addr ud2lo ud2lo' x ud2lo'    if no goto QNUMNEXT (abort then)
+            J S15Q16EOC           ;2 -- addr ud2lo ud2lo' x ud2lo'    if no goto QNUMNEXT (abort then)
             MOV X,0(PSP)            ;3 -- addr ud2lo ud2lo' digit x
             MOV T,TOS               ;1 -- addr ud2lo ud2lo' digit base  R-- IP sign base
             PUSHM #3,S              ;6                                  PUSH S,T,W: R-- IP sign base addr2 base cnt2
@@ -1685,10 +1745,10 @@ QNUMKO
         .ENDIF
             ADD #6,PSP              ;1 -- addr sign
             AND #0,TOS              ;1 -- addr ff                       TOS=0 and Z=1 ==> conversion ko
-            mNEXT                   ;4
+            MOV @IP+,PC             ;4
 ; ----------------------------------;
-        .IFDEF DOUBLE_NUMBERS
-QNUMOK      ADD #2,PSP              ;1 -- addr ud2lo-hi cnt2
+        .IFDEF DOUBLE_NUMBERS       ;  -- addr ud2lo-hi x sign 
+QNUMOK      ADD #2,PSP              ;1 -- addr ud2lo-hi sign
             MOV 2(PSP),4(PSP)       ;  -- udlo udlo udhi sign
             MOV @PSP+,0(PSP)        ;4 -- udlo udhi sign                note : PSP is incremented before write back.
             XOR #-1,TOS             ;1 -- udlo udhi inv(sign)
@@ -1698,10 +1758,10 @@ QDNEGATE    XOR #-1,TOS             ;1 -- udlo udhi tf
             XOR #-1,0(PSP)          ;3 -- (dlo dhi)-1 tf
             ADD #1,2(PSP)           ;3
             ADDC #0,0(PSP)          ;3 -- dlo dhi tf
-QDOUBLE     BIT #UF9,SR             ;2                                  decimal point added ?
+QDOUBLE     BIT #UF9,SR             ;2                                  decimal point or comma fixpoint ?
             JNZ QNUMEND             ;2                                  leave double
             ADD #2,PSP              ;1                                  leave number
-QNUMEND     mNEXT                   ;4                                  TOS<>0 and Z=0 ==> conversion ok
+QNUMEND     MOV @IP+,PC             ;4                                  TOS<>0 and Z=0 ==> conversion ok
         .ELSE
 QNUMOK      ADD #4,PSP              ;1 -- addr ud2lo sign
             MOV @PSP+,0(PSP)        ;4 -- udlo sign                     note : PSP is incremented before write back !!!
@@ -1710,15 +1770,15 @@ QNUMOK      ADD #4,PSP              ;1 -- addr ud2lo sign
 QNEGATE     XOR #-1,0(PSP)          ;3
             ADD #1,0(PSP)           ;3 -- n tf
             XOR #-1,TOS             ;1 -- udlo udhi tf                  TOS=-1 and Z=0
-QNUMEND     mNEXT                   ;4                                  TOS=-1 and Z=0 ==> conversion ok
+QNUMEND     MOV @IP+,PC             ;4                                  TOS=-1 and Z=0 ==> conversion ok
         .ENDIF ; DOUBLE_NUMBERS
-; ----------------------------------;128 words
+; ----------------------------------;119 words
 
     .ELSE ; no hardware MPY
 
 ; T.I. SIGNED MULTIPLY SUBROUTINE: U1 x U2 -> Ud
-;https://forth-standard.org/standard/core/UMTimes
-;C UM*     u1 u2 -- ud   unsigned 16x16->32 mult.
+; https://forth-standard.org/standard/core/UMTimes
+; UM*     u1 u2 -- ud   unsigned 16x16->32 mult.
             FORTHWORD "UM*"
 UMSTAR      MOV @PSP,S              ;2 MDlo
 UMSTAR1     MOV #0,T                ;1 MDhi=0
@@ -1735,9 +1795,9 @@ UMSTARNEXT  ADD S,S                 ;1 (RLA LSBs) MDlo x 2
             JNC UMSTARLOOP          ;2 IF BIT IN CARRY: FINISHED    10~ loop
             MOV X,0(PSP)            ;3 low result on stack
             MOV Y,TOS               ;1 high result in TOS
-            mNEXT                   ;4 17 words
+            MOV @IP+,PC             ;4 17 words
 
-;https://forth-standard.org/standard/core/toNUMBER
+; https://forth-standard.org/standard/core/toNUMBER
 ; ud2 is the unsigned result of converting the characters within the string specified by c-addr1 u1 into digits,
 ; using the number in BASE, and adding each into ud1 after multiplying ud1 by the number in BASE. 
 ; Conversion continues left-to-right until a character that is not convertible, including '.', ',' or '_',
@@ -1745,7 +1805,7 @@ UMSTARNEXT  ADD S,S                 ;1 (RLA LSBs) MDlo x 2
 ; or the first character past the end of the string if the string was entirely converted.
 ; u2 is the number of unconverted characters in the string.
 ; An ambiguous condition exists if ud2 overflows during the conversion.
-;C >NUMBER  ud1lo|ud1hi addr1 count1 -- ud2lo|ud2hi addr2 count2
+; >NUMBER  ud1lo|ud1hi addr1 count1 -- ud2lo|ud2hi addr2 count2
             FORTHWORD ">NUMBER"
 TONUMBER    MOV @PSP,S              ;2                          S=adr
             MOV TOS,T               ;1                          T=count
@@ -1753,25 +1813,25 @@ TONUMBER    MOV @PSP,S              ;2                          S=adr
 TONUMLOOP   MOV.B @S,Y              ;2 -- ud1lo ud1hi x x       S=adr, T=count, W=BASE, Y=char
 DDIGITQ     SUB.B #30h,Y            ;2                          skip all chars < '0'
             CMP.B #10,Y             ;2                          char was > "9" ?
-            JLO DDIGITQNEXT         ;2 -- ud1lo ud1hi x x       no: good end
+            JNC DDIGITQNEXT         ;2 -- ud1lo ud1hi x x       no: good end
             SUB.B #07,Y             ;2                          skip all chars between "9" and "A"
             CMP.B #10,Y             ;2                          char was < "A" ?
-            JLO TONUMEND            ;2                          yes: for bad end
+            JNC TONUMEND            ;2                          yes: for bad end
 DDIGITQNEXT CMP W,Y                 ;1 -- ud1lo ud1hi x x       digit-base
             BIC #Z,SR               ;1                          reset Z before jmp TONUMEND because...
-            JHS TONUMEND            ;2                          ...QNUMBER conversion will be true if Z = 1  :-(
+            J TONUMEND            ;2                          ...QNUMBER conversion will be true if Z = 1  :-(
 UDSTAR      PUSHM #6,IP             ;8 -- ud1lo ud1hi x x                                           r-- IP adr count base x digit
             MOV 2(PSP),S            ;3 -- ud1lo ud1hi x x       S=ud1hi
             MOV W,TOS               ;1 -- ud1lo ud1hi x base
             MOV #UMSTARNEXT1,IP     ;2
 UMSTARONE   JMP UMSTAR1             ;2 ud1hi * base -- x ud3hi  X=ud3lo
-UMSTARNEXT1 FORTHtoASM              ;  -- ud1lo ud1hi x ud3hi
+UMSTARNEXT1 .word   $+2             ;  -- ud1lo ud1hi x ud3hi
             MOV X,2(RSP)            ;3                                                              r-- IP adr count base ud3lo digit
             MOV 4(PSP),S            ;3 -- ud1lo ud1hi x ud3hi   S=ud1lo
             MOV 4(RSP),TOS          ;3 -- ud1lo ud1hi x base
             MOV #UMSTARNEXT2,IP     ;2
 UMSTARTWO   JMP UMSTAR1             ;2 -- ud1lo ud1hi x ud4hi   X=ud4lo
-UMSTARNEXT2 FORTHtoASM              ;  -- ud1lo ud1hi x ud4hi    
+UMSTARNEXT2 .word   $+2             ;  -- ud1lo ud1hi x ud4hi    
 MPLUS       ADD @RSP+,X             ;2 -- ud1lo ud1hi x ud4hi   X=ud4lo+digit=ud2lo                 r-- IP adr count base ud3lo
             ADDC @RSP+,TOS          ;2 -- ud1lo ud1hi x ud2hi   TOS=ud4hi+ud3lo+carry=ud2hi         r-- IP adr count base
             MOV X,4(PSP)            ;3 -- ud2lo ud1hi x ud2hi
@@ -1782,7 +1842,7 @@ TONUMPLUS   ADD #1,S                ;1
             JNZ TONUMLOOP           ;2 -- ud2lo ud2hi x x       S=adr+1, T=count-1, W=base     68 cycles char loop
 TONUMEND    MOV S,0(PSP)            ;3 -- ud2lo ud2hi adr2 count2
             MOV T,TOS               ;1 -- ud2lo ud2hi adr2 count2
-            mNEXT                   ;4 50/82 words/cycles, W = BASE
+            MOV @IP+,PC             ;4 50/82 words/cycles, W = BASE
 
 ; ?NUMBER makes the interface between >NUMBER and INTERPRET; it's a subset of INTERPRET.
 ; convert a string to a signed number; FORTH 2012 prefixes $, %, # are recognized
@@ -1809,10 +1869,10 @@ QNUMBER
             MOV.B @S+,T             ;2 -- addr ud=0 x x     S=adr, T=count
 QNUMLDCHAR  MOV.B @S,Y              ;2                      Y=char
             CMP.B #'-',Y            ;2
-            JLO QBINARY             ;2                      if char < '-'
+            JNC QBINARY             ;2                      if char < '-'
             JNZ DDIGITQ             ;2                      if char > '-'
             MOV #-1,2(RSP)          ;3                      R-- IP sign base
-            JMP TONUMPLUS           ;2
+            JMP PREFIXED            ;2
 QBINARY     MOV #2,W                ;1                      preset base 2
             SUB.B #'%',Y            ;2                      binary number ?
             JZ PREFIXED             ;2
@@ -1826,7 +1886,7 @@ PREFIXED    ADD #1,S                ;1
             SUB #1,T                ;1 -- addr ud=0 x x     S=adr+1 T=count-1
             JMP QNUMLDCHAR          ;
 ; ----------------------------------;42
-TONUMEXIT   FORTHtoASM              ;  -- addr ud2lo-hi addr2 cnt2      R-- IP sign BASE    S=addr2,T=cnt2
+TONUMEXIT   .word   $+2             ;  -- addr ud2lo-hi addr2 cnt2      R-- IP sign BASE    S=addr2,T=cnt2
 ; ----------------------------------;
             JZ QNUMNEXT             ;2                                  if conversion is ok
             SUB #2,IP
@@ -1850,12 +1910,12 @@ S15Q16LOOP  MOV X,2(PSP)            ;3 -- addr ud2lo ud2lo' ud2lo' x    X = 0(PS
             MOV.B @X,X              ;2                                  X = last char of string, first...
             SUB.B #30h,X            ;2                                  char --> digit conversion
             CMP.B #10,X             ;2
-            JLO QS15Q16DIGI         ;2
+            JNC QS15Q16DIGI         ;2
             SUB.B #7,X              ;2
             CMP.B #10,X             ;2
-            JLO S15Q16EOC           ;2
+            JNC S15Q16EOC           ;2
 QS15Q16DIGI CMP W,X                 ;1                                  R-- IP sign BASE, W=BASE,    is X a digit ?
-            JHS S15Q16EOC           ;2 -- addr ud2lo ud2lo' x ud2lo'    if no
+            J S15Q16EOC           ;2 -- addr ud2lo ud2lo' x ud2lo'    if no
             MOV X,0(PSP)            ;3 -- addr ud2lo ud2lo' digit x
             MOV W,TOS               ;1 -- addr ud2lo ud2lo' digit base  R-- IP sign base
             PUSHM #3,S              ;5                                  PUSH S,T,W: R-- IP sign base addr2 cnt2 base
@@ -1878,7 +1938,7 @@ QNUMKO
         .ENDIF
             ADD #6,PSP              ;1 -- addr sign
             AND #0,TOS              ;1 -- addr ff                       TOS=0 and Z=1 ==> conversion ko
-            mNEXT                   ;4
+            MOV @IP+,PC             ;4
 ; ----------------------------------;
         .IFDEF DOUBLE_NUMBERS
 QNUMOK      ADD #2,PSP              ;1 -- addr ud2lo ud2hi sign
@@ -1893,8 +1953,8 @@ Q2NEGATE    XOR #-1,TOS             ;1 -- udlo udhi tf
             ADDC #0,0(PSP)          ;3 -- dlo dhi tf
 QDOUBLE     BIT #UF9,SR             ;2 -- dlo dhi tf                decimal point added ?
             JNZ QNUMEND             ;2 -- dlo dhi tf                leave double
-            ADD #2,PSP              ;1 -- dlo tf                    leave number, Z=0
-QNUMEND     mNEXT                   ;4                              TOS=-1 and Z=0 ==> conversion ok
+NIP         ADD #2,PSP              ;1 -- dlo tf                    leave number, Z=0
+QNUMEND     MOV @IP+,PC             ;4                              TOS=-1 and Z=0 ==> conversion ok
         .ELSE
 QNUMOK      ADD #4,PSP              ;1 -- addr ud2lo sign
             MOV @PSP+,0(PSP)        ;4 -- udlo sign                note : PSP is incremented before write back !!!
@@ -1903,7 +1963,7 @@ QNUMOK      ADD #4,PSP              ;1 -- addr ud2lo sign
 QNEGATE     XOR #-1,0(PSP)          ;3
             ADD #1,0(PSP)           ;3 -- n tf
             XOR #-1,TOS             ;1 -- udlo udhi tf              TOS=-1 and Z=0
-QNUMEND     mNEXT                   ;4                              TOS=-1 and Z=0 ==> conversion ok
+QNUMEND     MOV @IP+,PC             ;4                              TOS=-1 and Z=0 ==> conversion ok
         .ENDIF ; DOUBLE_NUMBERS
 ; ----------------------------------;128 words
     .ENDIF ; of Hardware/Software MPY
@@ -1912,41 +1972,35 @@ QNUMEND     mNEXT                   ;4                              TOS=-1 and Z
 ; DICTIONARY MANAGEMENT
 ;-------------------------------------------------------------------------------
 
-;https://forth-standard.org/standard/core/HERE
-;C HERE    -- addr      returns memory ptr
-            FORTHWORD "HERE"
-HERE        SUB #2,PSP
-            MOV TOS,0(PSP)
-            MOV &DDP,TOS
-            mNEXT
-
-;https://forth-standard.org/standard/core/Comma
-;C ,    x --           append cell to dict
+; https://forth-standard.org/standard/core/Comma
+; ,    x --           append cell to dict
             FORTHWORD ","
 COMMA       MOV &DDP,W              ;3
             MOV TOS,0(W)            ;3
             ADD #2,&DDP             ;3
             MOV @PSP+,TOS           ;2
-            mNEXT                   ;4 15~
+            MOV @IP+,PC             ;4 15~
 
-;https://forth-standard.org/standard/core/ALLOT
-;C ALLOT   n --         allocate n bytes
+; https://forth-standard.org/standard/core/ALLOT
+; ALLOT   n --         allocate n bytes
             FORTHWORD "ALLOT"
 ALLOT       ADD TOS,&DDP
             MOV @PSP+,TOS
-            mNEXT
+            MOV @IP+,PC
 
-;https://forth-standard.org/standard/core/EXECUTE
-;C EXECUTE   i*x xt -- j*x   execute Forth word at 'xt'
+; https://forth-standard.org/standard/core/EXECUTE
+; EXECUTE   i*x xt -- j*x   execute Forth word at 'xt'
+        .IFDEF CORE_COMPLEMENT
             FORTHWORD "EXECUTE"
+        .ENDIF
 EXECUTE     MOV TOS,W               ; 1 put word address into W
             MOV @PSP+,TOS           ; 2 fetch new TOS
             MOV W,PC                ; 3 fetch code address into PC
 
     .IFDEF DOUBLE_NUMBERS           ; are recognized
-;https://forth-standard.org/standard/core/LITERAL
-;C LITERAL  n --        append single numeric literal if compiling state
-;           d --        append double numeric literal if compiling state and if UF9<>0 (not ANS)
+; https://forth-standard.org/standard/core/LITERAL
+; LITERAL  n --        append single numeric literal if compiling state
+;          d --        append two numeric literals if compiling state and UF9<>0 (not ANS)
             FORTHWORDIMM "LITERAL"  ; immediate
 LITERAL     CMP #0,&STATE           ;3
             JZ LITERAL2             ;2 if not compiling state, clear UF9 flag then NEXT
@@ -1958,15 +2012,15 @@ LITERAL1    MOV &DDP,W              ;3
             BIT #UF9,SR             ;2 double number ?
 LITERAL2    BIC #UF9,SR             ;2    in all case, clear UF9
             JZ LITERALEND           ;2 no
-            MOV 2(W),X              ;3 yes
+            MOV 2(W),X              ;3 yes, invert literals
             MOV TOS,2(W)            ;3
             MOV X,TOS               ;1
             JMP LITERAL1            ;2
-LITERALEND  mNEXT                   ;4
+LITERALEND  MOV @IP+,PC             ;4
 
     .ELSE
-;https://forth-standard.org/standard/core/LITERAL
-;C LITERAL  n --        append single numeric literal if compiling state
+; https://forth-standard.org/standard/core/LITERAL
+; LITERAL  n --        append single numeric literal if compiling state
             FORTHWORDIMM "LITERAL"  ; immediate
 LITERAL     CMP #0,&STATE           ;3
             JZ LITERALEND           ;2 if not immediate, leave n|d on the stack
@@ -1975,55 +2029,48 @@ LITERAL1    MOV &DDP,W              ;3
             MOV #lit,0(W)           ;4
             MOV TOS,2(W)            ;3
             MOV @PSP+,TOS           ;2
-LITERALEND  mNEXT                   ;4
+LITERALEND  MOV @IP+,PC             ;4
     .ENDIF
 
-;https://forth-standard.org/standard/core/COUNT
-;C COUNT   c-addr1 -- adr len   counted->adr/len
+; https://forth-standard.org/standard/core/COUNT
+; COUNT   c-addr1 -- adr len   counted->adr/len
             FORTHWORD "COUNT"
 COUNT       SUB #2,PSP              ;1
             ADD #1,TOS              ;1
             MOV TOS,0(PSP)          ;3
             MOV.B -1(TOS),TOS       ;3
-            mNEXT                   ;4 15~
-
-; : SETIB SOURCE 2! 0 >IN ! ;       ; org len --        set Input Buffer, shared by INTERPRET and [ELSE]
-SETIB       MOV TOS,&SOURCE_LEN     ; -- org len
-            MOV @PSP+,&SOURCE_ORG   ; -- len
-            MOV @PSP+,TOS           ; --
-            MOV #0,&TOIN            ;
-            mNEXT                   ;
+            MOV @IP+,PC             ;4 15~
 
-;https://forth-standard.org/standard/core/BL
-;C BL      -- char            an ASCII space
-    .IFDEF ANS_CORE_COMPLEMENT
+; https://forth-standard.org/standard/core/BL
+; BL      -- char            an ASCII space
+    .IFDEF CORE_COMPLEMENT
             FORTHWORD "BL"
     .ENDIF
-FBLANK       mDOCON
-            .word   32
+FBLANK       CALL rDOCON
+            .word   20h
 
-;C INTERPRET    i*x addr u -- j*x      interpret given buffer
+; INTERPRET    i*x addr u -- j*x      interpret given buffer
 ; This is the common factor of EVALUATE and QUIT.
 ; set addr u as input buffer then parse it word by word
 INTERPRET   mDOCOL                  ;
             .word   SETIB
 INTLOOP     .word   FBLANK,WORDD    ; -- c-addr     Z = End Of Line
-            FORTHtoASM              ;
+            .word   $+2             ;
             MOV #INTFINDNEXT,IP     ;2              define INTFINDNEXT as FIND return
             JNZ FIND                ;2              Z=0, EOL not reached
-            JMP DROPEXIT            ;               Z=1, EOL reached
+            JZ DROPEXIT             ;               Z=1, EOL reached
 
-INTFINDNEXT FORTHtoASM              ; -- c-addr fl  Z = not found
+INTFINDNEXT .word   $+2             ; -- c-addr fl  Z = not found
             MOV TOS,W               ;               W = flag =(-1|0|+1)  as (normal|not_found|immediate)
             MOV @PSP+,TOS           ; -- c-addr
             MOV #INTQNUMNEXT,IP     ;2              define QNUMBER return
             JZ QNUMBER              ;2 c-addr --    Z=1, not found, search a number
             MOV #INTLOOP,IP         ;2              define (EXECUTE | COMMA) return
             XOR &STATE,W            ;3
-            JZ COMMA                ;2 c-addr --    if W xor STATE = 0 compile xt then loop back to INTLOOP
             JNZ EXECUTE             ;2 c-addr --    if W xor STATE <>0 execute xt then loop back to INTLOOP
+            JZ COMMA                ;2 c-addr --    if W xor STATE = 0 compile xt then loop back to INTLOOP
 
-INTQNUMNEXT FORTHtoASM              ;  -- n|c-addr fl   Z = not a number, SR(UF9) double number request
+INTQNUMNEXT .word   $+2             ;  -- n|c-addr fl   Z = not a number, SR(UF9) double number request
             MOV @PSP+,TOS           ;2
             MOV #INTLOOP,IP         ;2 -- n|c-addr  define LITERAL return
             JNZ LITERAL             ;2 n --         Z=0, is a number, execute LITERAL then loop back to INTLOOP
@@ -2035,7 +2082,7 @@ NotFoundExe ADD.B #1,0(TOS)         ;3 c-addr --    Z=1, Not a Number : incr str
             MOV #FQABORTYES,IP      ;2              define the return of COUNT
             JMP COUNT               ;2 -- addr len  35 words
 
-;https://forth-standard.org/standard/core/EVALUATE
+; https://forth-standard.org/standard/core/EVALUATE
 ; EVALUATE          \ i*x c-addr u -- j*x  interpret string
             FORTHWORD "EVALUATE"
 EVALUATE    MOV #SOURCE_LEN,X       ;2
@@ -2045,18 +2092,19 @@ EVALUATE    MOV #SOURCE_LEN,X       ;2
             PUSHM #4,IP             ;6 PUSHM IP,S,T,W
             ASMtoFORTH
             .word   INTERPRET
-            FORTHtoASM
+            .word   $+2
             MOV @RSP+,&TOIN         ;4
             MOV @RSP+,&SOURCE_ORG   ;4
             MOV @RSP+,&SOURCE_LEN   ;4
-            mSEMI
+            MOV @RSP+,IP 
+            MOV @IP+,PC
 
 ;https://forth-standard.org/standard/core/STATE
 ;C STATE   -- a-addr       holds compiler state
-    .IFDEF ANS_CORE_COMPLEMENT
+    .IFDEF CORE_COMPLEMENT
             FORTHWORD "STATE"
     .ENDIF
-FSTATE      mDOCON
+FSTATE      CALL rDOCON
             .word   STATE           ; VARIABLE address in RAM space
 
     .IFDEF DEFER_QUIT               ; defined in ThingsInFirst.inc
@@ -2065,7 +2113,7 @@ QUIT0   MOV #0,&SAVE_SYSRSTIV       ; clear SAVE_SYSRSTIV, usefull for next ABOR
         MOV #RSTACK,RSP             ; ANS mandatory for QUIT
         MOV #LSTACK,&LEAVEPTR       ; 
         MOV #0,&STATE               ; ANS mandatory for QUIT
-        mNEXT
+        MOV @IP+,PC
 
 ;c BOOT  --  load BOOT.4th file from SD_Card then loop to QUIT1
         FORTHWORD "BOOT"
@@ -2084,8 +2132,8 @@ QUIT0   MOV #0,&SAVE_SYSRSTIV       ; clear SAVE_SYSRSTIV, usefull for next ABOR
     .word BRAN,QUIT4                ; to interpret this string
 ; ----------------------------------;
 
-;https://forth-standard.org/standard/core/QUIT
-;c QUIT  --     interpret line by line the input stream, primary DEFERred word
+; https://forth-standard.org/standard/core/QUIT
+; QUIT  --     interpret line by line the input stream, primary DEFERred word
 ; to enable bootstrap type: ' BOOT IS QUIT
 ; to disable bootstrap type: ' QUIT >BODY IS QUIT
 
@@ -2097,8 +2145,8 @@ BODYQUIT    ASMtoFORTH              ;  BODY of QUIT = default execution of QUIT
 
     .ELSE ; if no BOOTLOADER, QUIT is not DEFERred
 
-;https://forth-standard.org/standard/core/QUIT
-;c QUIT  --     interpret line by line the input stream
+; https://forth-standard.org/standard/core/QUIT
+; QUIT  --     interpret line by line the input stream
         FORTHWORD "QUIT"
 QUIT
 QUIT0       MOV #0,&SAVE_SYSRSTIV   ; clear SAVE_SYSRSTIV, usefull for next ABORT...
@@ -2136,15 +2184,15 @@ QUIT4       .word   INTERPRET       ; interpret this line|string
     .ENDIF
             .word   BRAN,QUIT2
 
-;https://forth-standard.org/standard/core/ABORT
-;C ABORT    i*x --   R: j*x --   clear stack & QUIT
+; https://forth-standard.org/standard/core/ABORT
+; ABORT    i*x --   R: j*x --   clear stack & QUIT
             FORTHWORD "ABORT"
 ABORT       MOV #PSTACK,PSP
             JMP QUIT
 
-;https://forth-standard.org/standard/core/ABORTq
-;C ABORT"  i*x flag -- i*x   R: j*x -- j*x  flag=0
-;C         i*x flag --       R: j*x --      flag<>0
+; https://forth-standard.org/standard/core/ABORTq
+; ABORT"  i*x flag -- i*x   R: j*x -- j*x  flag=0
+;         i*x flag --       R: j*x --      flag<>0
             FORTHWORDIMM "ABORT\34" ; immediate
 ABORTQUOTE  mDOCOL                  ; ABORT address + 10
             .word   SQUOTE
@@ -2158,52 +2206,47 @@ QABORT      CMP #0,2(PSP)           ; -- f c-addr u         flag test
             JNZ QABORTYES           ;
 THREEDROP   ADD #4,PSP              ;
             MOV @PSP+,TOS           ;
-            mNEXT                   ;
+            MOV @IP+,PC             ;
 ; ----------------------------------; QABORTYES = QABORT + 14
 QABORTYES   CALL #QAB_DEFER         ; init some variables, common part with WIPE, see WIPE
 ; ----------------------------------;
 QABORT_TERM CALL #RXON              ; resume downloading source file then wait the end of downloading.
 QABORTLOOP  BIC #UCRXIFG,&TERM_IFG  ; clear UCRXIFG
-        MOV #int(frequency*2730),Y  ; 2730*frequency ==> 65520 @ 24MHz
-QABUSBLOOPJ MOV #8,X                ; 1~        <-------+ windows 10 seems very slow... ==> ((8*4)+4)*2730) = 98ms delay
-QABUSBLOOPI NOP                     ; 1~        <---+   |
-            SUB #1,X                ; 1~            |   | the QABUSBLOOPJ delay must be longer than this of OS of TERMINAL
-            JNZ QABUSBLOOPI         ; 2~ 4~ loop ---+   | to refill its USB buffer
+            MOV &FREQ_KHZ,Y         ; 1000, 2000, 4000, 8000, 16000, 240000
+QABUSBLOOPJ MOV #32,X               ; 2~        <-------+ windows 10 seems very slow... ==> ((32*3)+5)*1000 = 101ms delay
+QABUSBLOOPI SUB #1,X                ; 1~        <---+   |
+            JNZ QABUSBLOOPI         ; 2~ 3~ loop ---+   | to refill its USB buffer
             SUB #1,Y                ; 1~                |
-            JNZ QABUSBLOOPJ         ; 2~ 36~ loop ------+
-; QABUSBLOOPJ MOV #20,X               ; 2~        <-------+ linux with minicom seems very very slow... ==> ((20*4)+5)*2730 = 232ms delay
-; QABUSBLOOPI NOP                     ; 1~        <---+   |
-;             SUB #1,X                ; 1~            |   | the QABUSBLOOPJ delay must be longer than this of OS of TERMINAL
-;             JNZ QABUSBLOOPI         ; 2~ 4~ loop ---+   | to refill its USB buffer
+            JNZ QABUSBLOOPJ         ; 2~ 101~ loop -----+
+; QABUSBLOOPJ MOV #65,X               ; 2~        <-------+ linux with minicom seems very very slow... ==> ((65*3)+5)*1000 = 200ms delay
+; QABUSBLOOPI SUB #1,X                ; 1~        <---+   |
+;             JNZ QABUSBLOOPI         ; 2~ 3~ loop ---+   | to refill its USB buffer
 ;             SUB #1,Y                ; 1~                |
-;             JNZ QABUSBLOOPJ         ; 2~ 85~ loop ------+
+;             JNZ QABUSBLOOPJ         ; 2~ 200~ loop -----+
             BIT #UCRXIFG,&TERM_IFG  ; 4 new char in TERMRXBUF after QABUSBLOOPJ delay ?
             JNZ QABORTLOOP          ; 2 yes, the input stream is still active: loop back
 ; ----------------------------------;
             mDOCOL                  ;
-            .word   PWR_STATE       ; remove all words beyond PWR_HERE, including a definition leading to an error
-            .word   lit,LINE,FETCH  ; fetch line number before set ECHO !
-            .word   ECHO            ; to see abort message
-            .word   XSQUOTE         ; -- c-addr u c-addr1 u1
-            .byte   4,27,"[7m"      ;    type ESC[7m    (set reverse video)
-            .word   TYPE            ; -- c-addr u   
-            .word   QDUP            ;
-            .word QFBRAN,ERRLINE_END;       if LINE = 0
+            .word   PWR_STATE       ; remove all words beyond PWR_HERE, including the definition leading to an error
+            .word   lit,LINE,FETCH  ; -- c-addr line            fetch line number before set ECHO !
+            .word   ECHO            ;                           to see abort message
+            .word   XSQUOTE         ; -- c-addr u line c-addr1 u1
+            .byte   4,27,"[7m"      ;                           type ESC[7m    (set reverse video)
+            .word   TYPE            ; -- c-addr u line  
+            .word   QDUP,QFBRAN     ;       if LINE = 0
+            .word   QAB_DISPLAY     ;
 ; ----------------------------------;
-; Display error line:xxx            ;       if LINE <> 0 (if NOECHO state before calling ABORT")
+; Display error line:xxx            ;       if LINE <> 0 (if NOECHO state before calling to ABORT")
 ; ----------------------------------;
             .word   CR              ;
-            .word   XSQUOTE         ;       displays the line where error occured
+            .word   XSQUOTE         ; -- c-addr u line c-addr1 u1   displays the line where error occured
             .byte   5,"line:"       ;
-            .word   TYPE            ;
-            .word   ONEMINUS        ;
-            .word   UDOT            ;
-ERRLINE_END                         ; -- c-addr u
+            .word   TYPE            ; -- c-addr u line
+            .word   UDOT            ; -- c-addr u
 ; ----------------------------------;
 ; Display ABORT" message            ; <== WARM jumps here
 ; ----------------------------------;
-QABORT_DISPLAY                      ;
-            .word   TYPE            ; --                type abort message
+QAB_DISPLAY .word   TYPE            ; --                type abort message
             .word   XSQUOTE         ; -- c-addr u
             .byte   4,27,"[0m"      ;
             .word   TYPE            ; --                set normal video
@@ -2214,78 +2257,43 @@ FABORT      .word   ABORT           ; no return; FABORT = BRACTICK-8
 ; COMPILER
 ;-------------------------------------------------------------------------------
 
-;https://forth-standard.org/standard/core/BracketTick
-;C ['] <name>        --         find word & compile it as literal
+; https://forth-standard.org/standard/core/BracketTick
+; ['] <name>        --         find word & compile it as literal
             FORTHWORDIMM "[']"      ; immediate word, i.e. word executed during compilation
 BRACTICK    mDOCOL
             .word   TICK            ; get xt of <name>
             .word   lit,lit,COMMA   ; append LIT action
             .word   COMMA,EXIT      ; append xt literal
 
-;https://forth-standard.org/standard/core/Tick
-;C '    -- xt           find word in dictionary and leave on stack its execution address
+; https://forth-standard.org/standard/core/Tick
+; '    -- xt           find word in dictionary and leave on stack its execution address
             FORTHWORD "'"
-TICK        mDOCOL          ; separator -- xt
+TICK        mDOCOL
             .word   FBLANK,WORDD,FIND
             .word   QFBRAN,NotFound
             .word   EXIT
 NotFound    .word   NotFoundExe     ; see INTERPRET
 
-;https://forth-standard.org/standard/block/bs
+; https://forth-standard.org/standard/block/bs
 ; \         --      backslash
 ; everything up to the end of the current line is a comment.
             FORTHWORDIMM "\\"       ; immediate
 BACKSLASH   MOV &SOURCE_LEN,&TOIN   ;
-            mNEXT
+            MOV @IP+,PC
 
-;https://forth-standard.org/standard/core/Bracket
-;C [        --      enter interpretative state
+; https://forth-standard.org/standard/core/Bracket
+; [        --      enter interpretative state
                 FORTHWORDIMM "["    ; immediate
 LEFTBRACKET     MOV #0,&STATE
-                mNEXT
+                MOV @IP+,PC
 
-;https://forth-standard.org/standard/core/right-bracket
-;C ]        --      enter compiling state
+; https://forth-standard.org/standard/core/right-bracket
+; ]        --      enter compiling state
                 FORTHWORD "]"
 RIGHTBRACKET    MOV  #-1,&STATE
-                mNEXT
+                MOV @IP+,PC
 
-;https://forth-standard.org/standard/core/DEFERStore
-;C DEFER!       xt CFA_DEFER --     ; store xt into the PFA of DEFERed word
-;                FORTHWORD "DEFER!"
-DEFERSTORE  MOV @PSP+,2(TOS)        ; -- CFA_DEFER          xt --> [CFA_DEFER+2]
-            MOV @PSP+,TOS           ; --
-            mNEXT
-
-;https://forth-standard.org/standard/core/IS
-;C IS <name>        xt --
-; used as is :
-; DEFER DISPLAY                         create a "do nothing" definition (2 CELLS)
-; inline command : ' U. IS DISPLAY      U. becomes the runtime of the word DISPLAY
-; or in a definition : ... ['] U. IS DISPLAY ...
-; KEY, EMIT, CR, ACCEPT and WARM are examples of DEFERred words
-
-; as IS replaces the PFA value of any word, it's a TO alias for VARIABLE and CONSTANT words...
-
-            FORTHWORDIMM "IS"       ; immediate
-IS          mDOCOL
-            .word   FSTATE,FETCH    ; STATE @
-            .word   QFBRAN,IS_EXEC  ; if = 0
-IS_COMPILE  .word   BRACTICK        ; find the word, compile its CFA as literal
-            .word   lit,DEFERSTORE  ;
-            .word   COMMA           ; compile DEFERSTORE
-            .word   EXIT            ;
-IS_EXEC     .word   TICK,DEFERSTORE ; find the word, leave its CFA on the stack and
-            .word   EXIT            ; put it into PFA of DEFERed word, then exit.
-
-;https://forth-standard.org/standard/core/IMMEDIATE
-;C IMMEDIATE        --   make last definition immediate
-            FORTHWORD "IMMEDIATE"
-IMMEDIATE   MOV &LAST_NFA,W
-            BIS.B #80h,0(W)
-            mNEXT
-
-;https://forth-standard.org/standard/core/POSTPONE
+; https://forth-standard.org/standard/core/POSTPONE
             FORTHWORDIMM "POSTPONE" ; immediate
 POSTPONE    mDOCOL
             .word   FBLANK,WORDD,FIND,QDUP
@@ -2297,77 +2305,38 @@ POSTPONE    mDOCOL
             .word   lit,COMMA       ;       CFA of COMMA
 POST1       .word   COMMA,EXIT      ; then compile: if immediate xt of word found else CFA of COMMA
 
-;https://forth-standard.org/standard/core/Semi
-;C ;            --      end a colon definition
-            FORTHWORDIMM ";"        ; immediate
-SEMICOLON   CMP #0,&STATE           ; if interpret mode, semicolon becomes a comment separator
-            JZ BACKSLASH            ; tip: ";" is transparent to the preprocessor, so semicolon comments are kept in file.4th
-            mDOCOL                  ; compile mode
-            .word   lit,EXIT,COMMA
-            .word   QREVEAL,LEFTBRACKET,EXIT
-
-    .IFDEF NONAME
-;https://forth-standard.org/standard/core/ColonNONAME
-; :NONAME        -- xt
-        FORTHWORD ":NONAME"
-            PUSH #COLONNEXT         ; define COLONNEXT as the next of HEADERLESS
-HEADERLESS  SUB #2,PSP              ; common part of :NONAME and CODENNM
-            MOV TOS,0(PSP)
-            MOV &DDP,TOS            ; -- HERE
-            BIT #1,TOS              ;
-            ADDC #0,TOS             ; -- xt         aligned CFA of this NONAME or CODENNM word
-            MOV TOS,W               ;  W=CFA
-            MOV #PAIN,X             ;2 MOV Y,0(X) writes to PAIN read only register = first lure for semicolon REVEAL...
-            MOV #PAOUT,Y            ;2 MOV @X,-2(Y) also writes to PAIN register = 2th lure for semicolon REVEAL...
-            JMP HEADEREND           ; ...because we don't want to write a preamble of this :NONAME definition in dictionnary!
-    .ENDIF ; NONAME
-
-COLONNEXT                           ; common part of :NONAME and :
-    .SWITCH DTC
-    .CASE 1
-            MOV #DOCOL1,-4(W)       ; compile CALL rDOCOL
-            SUB #2,&DDP
-    .CASE 2
-            MOV #DOCOL1,-4(W)       ; compile PUSH IP       3~
-            MOV #DOCOL2,-2(W)       ; compile CALL rEXIT
-    .CASE 3 ; inlined DOCOL
-            MOV #DOCOL1,-4(W)       ; compile PUSH IP       3~
-            MOV #DOCOL2,-2(W)       ; compile MOV PC,IP     1~
-            MOV #DOCOL3,0(W)        ; compile ADD #4,IP     1~
-            MOV #NEXT,+2(W)         ; compile MOV @IP+,PC   4~
-            ADD #4,&DDP
-    .ENDCASE ; of DTC
-            MOV #-1,&STATE          ; enter compiling state
-NEXT_ADR    mNEXT
-
+; https://forth-standard.org/standard/core/IMMEDIATE
+; IMMEDIATE        --   make last definition immediate
+            FORTHWORD "IMMEDIATE"
+IMMEDIATE   MOV &LAST_NFA,W
+            BIS.B #80h,0(W)
+            MOV @IP+,PC
 
-;https://forth-standard.org/standard/core/Colon
-;C : <name>     --      begin a colon definition
+; https://forth-standard.org/standard/core/Colon
+; : <name>     --      begin a colon definition
+; HEADER is CALLed by all compiling words
             FORTHWORD ":"
-COLON       PUSH #COLONNEXT         ; define COLONNEXT as the next of HEADER
-
-; HEADER        create an header for a new word. Max count of chars = 126
-;               common code for DEFER, VARIABLE, CONSTANT, CREATE, :, MARKER, CODE, ASM.
-;               doesn't link the created word in vocabulary.
-HEADER      BIT #1,&DDP             ;3 carry set if odd
-            ADDC #2,&DDP            ;4 (DP+2|DP+3) bytes
-            mDOCOL
+COLON       PUSH #COLONNEXT         ;3 define COLONNEXT as HEADER RET
+;-----------------------------------;
+HEADER      BIT #1,&DDP             ;3              carry set if odd
+            ADDC #2,&DDP            ;4              (DP+2|DP+3) bytes, make room for LFA
+            mDOCOL                  ;
             .word FBLANK,WORDD      ;
-            FORTHtoASM              ; -- HERE       HERE is the NFA of this new word
-            MOV @RSP+,IP
+            .word   $+2             ; -- HERE       HERE is the NFA of this new word
+            MOV @RSP+,IP            ;
             MOV TOS,Y               ; -- NFA        Y=NFA
             MOV.B @TOS+,W           ; -- NFA+1      W=Count_of_chars
             BIS.B #1,W              ;               W=count is always odd
             ADD.B #1,W              ;               W=add one byte for length
             ADD Y,W                 ;               W=Aligned_CFA
             MOV &CURRENT,X          ;               X=VOC_BODY of CURRENT
-    .SWITCH THREADS
+    .SWITCH THREADS                 ;
     .CASE   1                       ;               nothing to do
     .ELSECASE                       ;               multithreading add 5~ 4words
             MOV.B @TOS,TOS          ; -- char       TOS=first CHAR of new word
             AND #(THREADS-1)*2,TOS  ; -- offset     TOS= Thread offset
             ADD TOS,X               ;               X=VOC_PFAx = thread x of VOC_PFA of CURRENT
-    .ENDCASE
+    .ENDCASE                        ;
             MOV @PSP+,TOS           ; --
 
 HEADEREND   MOV Y,&LAST_NFA         ;               NFA --> LAST_NFA            used by QREVEAL, IMMEDIATE, MARKER
@@ -2376,85 +2345,127 @@ HEADEREND   MOV Y,&LAST_NFA         ;               NFA --> LAST_NFA
             MOV PSP,&LAST_PSP       ;               save PSP for check compiling, used by QREVEAL
             ADD #4,W                ;               by default make room for two words...
             MOV W,&DDP              ;   
-            RET                     ; 33 words, W is the new DDP value )
-                                    ;           X is LAST_THREAD       > used by VARIABLE, CONSTANT, CREATE, DEFER and :
-                                    ;           Y is NFA               )
+            MOV @RSP+,PC            ; RET           W is the new DP value )
+                                    ;               X is LAST_THREAD      > used by compiling words: CREATE, DEFER, :...
+                                    ;               Y is NFA              )
+COLONNEXT                           ;
+    .SWITCH DTC                     ; Direct Threaded Code select
+    .CASE 1                         ;
+            MOV #DOCOL1,-4(W)       ; compile CALL rDOCOL, with [rDOCOL] = xdocol 
+            SUB #2,&DDP             ;
+    .CASE 2                         ;
+            MOV #DOCOL1,-4(W)       ; compile PUSH IP       3~
+            MOV #DOCOL2,-2(W)       ; compile CALL rDOCOL, with [rDOCOL] = EXIT
+    .CASE 3                         ;
+            MOV #DOCOL1,-4(W)       ; compile PUSH IP       3~
+            MOV #DOCOL2,-2(W)       ; compile MOV PC,IP     1~
+            MOV #DOCOL3,0(W)        ; compile ADD #4,IP     1~
+            MOV #NEXT,+2(W)         ; compile MOV @IP+,PC   4~
+            ADD #4,&DDP             ;
+    .ENDCASE                        ;
+            MOV #-1,&STATE          ; enter compiling state
+            MOV @IP+,PC             ;
+;-----------------------------------;
+
+    .IFDEF NONAME
+; https://forth-standard.org/standard/core/ColonNONAME
+; :NONAME        -- xt
+        FORTHWORD ":NONAME"
+            PUSH #COLONNEXT         ; define COLONNEXT as HEADERLESS RET
+HEADERLESS  SUB #2,PSP              ; common part of :NONAME and CODENNM
+            MOV TOS,0(PSP)          ;
+            MOV &DDP,TOS            ; -- HERE
+            BIT #1,TOS              ;
+            ADDC #0,TOS             ; -- xt     aligned CFA of this NONAME or CODENNM word
+            MOV TOS,W               ;  W=CFA
+            MOV #210h,X             ;2 MOV Y,0(X) will write to a unused register = first lure for semicolon REVEAL...
+            MOV #212h,Y             ;2 MOV @X,-2(Y) also writes to same register = 2th lure for semicolon REVEAL...
+            JMP HEADEREND           ; ...because we don't want to write a preamble of this :NONAME definition in dictionnary!
+    .ENDIF ; NONAME
 
 ;;Z ?REVEAL   --      if no stack mismatch, link this new word in the CURRENT vocabulary
 QREVEAL     CMP PSP,&LAST_PSP       ; Check SP with its saved value by :, :NONAME, CODE...
             JNZ BAD_CSP             ; if no stack mismatch.
 GOOD_CSP    MOV &LAST_NFA,Y         ; GOOD_CSP is the end of word MARKER
             MOV &LAST_THREAD,X      ;
-REVEAL      MOV @X,-2(Y)            ; [LAST_THREAD] --> LFA    (for NONAME: [LAST_THREAD] --> PAIN)
+REVEAL      MOV @X,-2(Y)            ; [LAST_THREAD] --> LFA         (for NONAME: [LAST_THREAD] --> PAIN)
             MOV Y,0(X)              ; LAST_NFA --> [LAST_THREAD]    (for NONAME: LAST_NFA --> PAIN) 
-            mNEXT
-
+            MOV @IP+,PC
 BAD_CSP     mDOCOL
             .word   XSQUOTE
             .byte   15,"stack mismatch!"
 FQABORTYES  .word   QABORTYES
 
-;https://forth-standard.org/standard/core/DEFER
-;C DEFER "<spaces>name"   --
-;Skip leading space delimiters. Parse name delimited by a space.
-;Create a definition for name with the execution semantics defined below.
-
-;name Execution:   --
-;Execute the xt that name is set to execute, i.e. NEXT (nothing),
-;until the phrase ' word IS name is executed, causing a new value of xt to be assigned to name.
-
-            FORTHWORD "DEFER"
-DEFER       CALL #HEADER        ; --        W = DDP       
-            MOV #4030h,-4(W)     ;           by default, HEADER create a DEFERred word: CFA = MOV @PC+,PC = BR mNEXT
-            MOV #NEXT_ADR,-2(W)  ;           by default, HEADER create a DEFERred word: PFA = address of mNEXT to do nothing.
-            JMP REVEAL          ;           to link created VARIABLE in vocabulary
+; https://forth-standard.org/standard/core/Semi
+; ;            --      end a colon definition
+            FORTHWORDIMM ";"        ; immediate
+SEMICOLON   CMP #0,&STATE           ; if interpret mode, semicolon becomes a comment identifier
+            JZ BACKSLASH            ; tip: ";" is transparent to the preprocessor, so semicolon comments are kept in file.4th
+            mDOCOL                  ; compile mode
+            .word   lit,EXIT,COMMA
+            .word   QREVEAL,LEFTBRACKET,EXIT
 
-;https://forth-standard.org/standard/core/CREATE
-;C CREATE <name>        --          define a CONSTANT with its next address
+; https://forth-standard.org/standard/core/CREATE
+; CREATE <name>        --          define a CONSTANT with its next address
 ; Execution: ( -- a-addr )          ; a-addr is the address of name's data field
 ;                                   ; the execution semantics of name may be extended by using DOES>
             FORTHWORD "CREATE"
 CREATE      CALL #HEADER            ; --        W = DDP
-            MOV #DOCON,-4(W)        ;4  -4(W) = CFA = DOCON
-            MOV W,-2(W)             ;3  -2(W) = PFA = W = next address
-            JMP REVEAL              ;   to link created VARIABLE in vocabulary
+            MOV #DOCON,-4(W)        ;4          -4(W) = CFA = DOCON
+            MOV W,-2(W)             ;3          -2(W) = PFA = W = next address
+            JMP REVEAL              ;           to link created VARIABLE in vocabulary
 
-;https://forth-standard.org/standard/core/DOES
-;C DOES>    --          set action for the latest CREATEd definition
+; https://forth-standard.org/standard/core/DOES
+; DOES>    --          set action for the latest CREATEd definition
             FORTHWORD "DOES>"
-DOES        MOV &LAST_CFA,W         ; W = CFA of CREATEd word
-            MOV #DODOES,0(W)        ; replace CFA (DOCON) by new CFA (DODOES)
-            MOV IP,2(W)             ; replace PFA by the address after DOES> as execution address
-            mSEMI                   ; exit of the new created word
+DOES        MOV &LAST_CFA,W         ;           W = CFA of CREATEd word
+            MOV #DODOES,0(W)        ;           replace CFA (DOCON) by new CFA (DODOES)
+            MOV IP,2(W)             ;           replace PFA by the address after DOES> as execution address
+            MOV @RSP+,IP            ;
+            MOV @IP+,PC             ;           exit of the new created word
+
+        .IFDEF CORE_COMPLEMENT
+
+;https://forth-standard.org/standard/core/VARIABLE
+;C VARIABLE <name>       --                      define a Forth VARIABLE
+            FORTHWORD "VARIABLE"
+VARIABLE    CALL #HEADER            ; W = DDP = CFA + 2 words
+            MOV #DOVAR,-4(W)        ;   CFA = DOVAR, PFA is undefined
+            JMP REVEAL              ;           to link created VARIABLE in vocabulary
+
+;https://forth-standard.org/standard/core/CONSTANT
+;C CONSTANT <name>     n --                      define a Forth CONSTANT
+            FORTHWORD "CONSTANT"
+CONSTANT    CALL #HEADER            ; W = DDP = CFA + 2 words
+            MOV #DOCON,-4(W)        ;   CFA = DOCON
+            MOV TOS,-2(W)           ;   PFA = n
+            MOV @PSP+,TOS
+            JMP REVEAL              ;           to link created VARIABLE in vocabulary
 
-;https://forth-standard.org/standard/core/toBODY
-; >BODY     -- addr      leave BODY of a CREATEd word
-            FORTHWORD ">BODY"
-            ADD #4,TOS
-            mNEXT
+        .ENDIF
 
     .IFDEF MSP430ASSEMBLER
 
-           FORTHWORD "CODE"     ; a CODE word must be finished with ENDCODE
-ASMCODE     CALL #HEADER        ; (that makes room for CFA and PFA)
-ASMCODE1    
+           FORTHWORD "CODE"         ; a CODE word must be finished with ENDCODE
+ASMCODE     CALL #HEADER            ; (that makes room for CFA and PFA)
+ASMCODE1    SUB #4,&DDP             ; remove default room for CFA and PFA
+ASMCODE2
     .IFDEF EXTENDED_ASM
-            MOV #0,&RPT_WORD    ; clear RPT instruction
+            MOV #0,&RPT_WORD        ; clear RPT instruction
     .ENDIF
-            SUB #4,&DDP         ; remove this room
             mDOCOL
             .word   ALSO,ASSEMBLER
             .word   EXIT
 
         .IFDEF NONAME
-            FORTHWORD "CODENNM" ; CODENoNaMe is the assembly counterpart of :NONAME
-CODENNM     CALL #HEADERLESS    ; (that makes room for CFA and PFA)
-            JMP ASMCODE1
+            FORTHWORD "CODENNM"     ; CODENoNaMe is the assembly counterpart of :NONAME
+CODENNM     PUSH #ASMCODE1          ; define HEADERLESS return
+            JMP HEADERLESS          ; that makes room for CFA and PFA
         .ENDIF
 
-            asmword "ENDCODE"   ; restore previous context and test PSP balancing
+            asmword "ENDCODE"       ; test PSP balancing then restore previous context
 ENDCODE     mDOCOL
-            .word   PREVIOUS,QREVEAL
+            .word   QREVEAL,PREVIOUS
             .word   EXIT
 
 ; ASM and ENDASM are used to define an assembler word which is not executable by FORTH interpreter
@@ -2465,59 +2476,58 @@ ENDCODE     mDOCOL
 ; prohibited because it doesn't restore CURRENT.
 
             FORTHWORD "ASM"
-            MOV     #BODYASSEMBLER,&CURRENT
-            JMP     ASMCODE
+            MOV #BODYASSEMBLER,&CURRENT ; select ASSEMBLER word set to link this ASM word
+            JMP ASMCODE
 
-            asmword "ENDASM"    ; end of an ASM word
+            asmword "ENDASM"        ; end of an ASM word
             mDOCOL
-            .WORD   ENDCODE,DEFINITIONS,EXIT
-
+            .WORD   ENDCODE,DEFINITIONS ; select PREVIOUS word set as CURRENT word set
+            .word   EXIT
 
 ; here are words used to switch from/to FORTH to/from ASSEMBLER
 
-            asmword "COLON"     ; compile DOCOL, remove ASSEMBLER from CONTEXT, switch to compilation state
+            asmword "COLON"         ; compile DOCOL, remove ASSEMBLER from CONTEXT, switch to compilation state
             MOV &DDP,W
     .SWITCH DTC
     .CASE 1
-            MOV #DOCOL1,0(W)    ; compile CALL xDOCOL
+            MOV #DOCOL1,0(W)        ; compile CALL xDOCOL
             ADD #2,&DDP
 
     .CASE 2
-            MOV #DOCOL1,0(W)    ; compile PUSH IP
-COLON1      MOV #DOCOL2,2(W)    ; compile CALL rEXIT
+            MOV #DOCOL1,0(W)        ; compile PUSH IP
+COLON1      MOV #DOCOL2,2(W)        ; compile CALL rEXIT
             ADD #4,&DDP
 
     .CASE 3 ; inlined DOCOL
-            MOV #DOCOL1,0(W)    ; compile PUSH IP
-COLON1      MOV #DOCOL2,2(W)    ; compile MOV PC,IP
-            MOV #DOCOL3,4(W)    ; compile ADD #4,IP
-            MOV #NEXT,6(W)      ; compile MOV @IP+,PC
-            ADD #8,&DDP         ;
+            MOV #DOCOL1,0(W)        ; compile PUSH IP
+COLON1      MOV #DOCOL2,2(W)        ; compile MOV PC,IP
+            MOV #DOCOL3,4(W)        ; compile ADD #4,IP
+            MOV #NEXT,6(W)          ; compile MOV @IP+,PC
+            ADD #8,&DDP             ;
     .ENDCASE ; DTC
 
-COLON2      MOV #-1,&STATE      ; enter in compile state
-            MOV #PREVIOUS,PC    ; restore previous state of CONTEXT
-
+COLON2      MOV #-1,&STATE          ; enter in compile state
+            MOV #PREVIOUS,PC        ; restore previous state of CONTEXT
 
-            asmword "LO2HI"     ; same as COLON but without saving IP
+            asmword "LO2HI"         ; same as COLON but without saving IP
     .SWITCH DTC
-    .CASE 1                     ; compile 2 words
+    .CASE 1                         ; compile 2 words
             MOV &DDP,W
-            MOV #12B0h,0(W)     ; compile CALL #EXIT, 2 words  4+6=10~
+            MOV #12B0h,0(W)         ; compile CALL #EXIT, 2 words  4+6=10~
             MOV #EXIT,2(W)
             ADD #4,&DDP
             JMP COLON2
-    .ELSECASE                   ; CASE 2 : compile 1 word, CASE 3 : compile 3 words
-            SUB #2,&DDP         ; to skip PUSH IP
+    .ELSECASE                       ; CASE 2 : compile 1 word, CASE 3 : compile 3 words
+            SUB #2,&DDP             ; to skip PUSH IP
             MOV &DDP,W
             JMP COLON1
     .ENDCASE
 
-            FORTHWORDIMM "HI2LO"   ; immediate, switch to low level, set interpretation state, add ASSEMBLER context
+            FORTHWORDIMM "HI2LO"    ; immediate, switch to low level, set interpretation state, add ASSEMBLER context
             mDOCOL
 HI2LO       .word   HERE,CELLPLUS,COMMA
             .word   LEFTBRACKET
-            .word   ALSO,ASSEMBLER
+            .word   ASMCODE2
             .word   EXIT
 
     .ENDIF ; MSP430ASSEMBLER
@@ -2530,42 +2540,50 @@ HI2LO       .word   HERE,CELLPLUS,COMMA
 ; IF, ELSE, AGAIN, UNTIL, WHILE, REPEAT, LOOP & +LOOP compile two words
 ; LEAVE compile three words
 
-;https://forth-standard.org/standard/core/IF
-;C IF       -- IFadr    initialize conditional forward branch
+        .IFDEF CORE_COMPLEMENT
+
+; https://forth-standard.org/standard/core/IF
+; IF       -- IFadr    initialize conditional forward branch
             FORTHWORDIMM "IF"       ; immediate
 IFF         SUB #2,PSP              ;
             MOV TOS,0(PSP)          ;
             MOV &DDP,TOS            ; -- HERE
             ADD #4,&DDP             ;           compile one word, reserve one word
             MOV #QFBRAN,0(TOS)      ; -- HERE   compile QFBRAN
+        .ENDIF ; CORE_COMPLEMENT
 CELLPLUS    ADD #2,TOS              ; -- HERE+2=IFadr
-            mNEXT
+            MOV @IP+,PC
+
+; https://forth-standard.org/standard/core/BEGIN
+; BEGIN    -- BEGINadr             initialize backward branch
+            FORTHWORDIMM "BEGIN"    ; immediate
+HERE
+BEGIN       SUB #2,PSP
+            MOV TOS,0(PSP)
+            MOV &DDP,TOS
+            MOV @IP+,PC
 
-;https://forth-standard.org/standard/core/ELSE
-;C ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
+        .IFDEF CORE_COMPLEMENT
+; https://forth-standard.org/standard/core/ELSE
+; ELSE     IFadr -- ELSEadr        resolve forward IF branch, leave ELSEadr on stack
             FORTHWORDIMM "ELSE"     ; immediate
 ELSS        ADD #4,&DDP             ; make room to compile two words
             MOV &DDP,W              ; W=HERE+4
-            MOV #bran,-4(W)
+            MOV #BRAN,-4(W)
             MOV W,0(TOS)            ; HERE+4 ==> [IFadr]
             SUB #2,W                ; HERE+2
             MOV W,TOS               ; -- ELSEadr
-            mNEXT
+            MOV @IP+,PC
 
-;https://forth-standard.org/standard/core/THEN
-;C THEN     IFadr --                resolve forward branch
+; https://forth-standard.org/standard/core/THEN
+; THEN     IFadr --                resolve forward branch
             FORTHWORDIMM "THEN"     ; immediate
 THEN        MOV &DDP,0(TOS)         ; -- IFadr
             MOV @PSP+,TOS           ; --
-            mNEXT
-
-;https://forth-standard.org/standard/core/BEGIN
-;C BEGIN    -- BEGINadr             initialize backward branch
-            FORTHWORDIMM "BEGIN"    ; immediate
-BEGIN       MOV #HERE,PC            ; BR HERE
+            MOV @IP+,PC
 
-;https://forth-standard.org/standard/core/UNTIL
-;C UNTIL    BEGINadr --             resolve conditional backward branch
+; https://forth-standard.org/standard/core/UNTIL
+; UNTIL    BEGINadr --             resolve conditional backward branch
             FORTHWORDIMM "UNTIL"    ; immediate
 UNTIL       MOV #QFBRAN,X
 UNTIL1      ADD #4,&DDP             ; compile two words
@@ -2573,28 +2591,28 @@ UNTIL1      ADD #4,&DDP             ; compile two words
             MOV X,-4(W)             ; compile Bran or QFBRAN at HERE
             MOV TOS,-2(W)           ; compile bakcward adr at HERE+2
             MOV @PSP+,TOS
-            mNEXT
+            MOV @IP+,PC
 
-;https://forth-standard.org/standard/core/AGAIN
+; https://forth-standard.org/standard/core/AGAIN
 ;X AGAIN    BEGINadr --             resolve uncondionnal backward branch
             FORTHWORDIMM "AGAIN"    ; immediate
-AGAIN       MOV #bran,X
+AGAIN       MOV #BRAN,X
             JMP UNTIL1
 
-;https://forth-standard.org/standard/core/WHILE
-;C WHILE    BEGINadr -- WHILEadr BEGINadr
+; https://forth-standard.org/standard/core/WHILE
+; WHILE    BEGINadr -- WHILEadr BEGINadr
             FORTHWORDIMM "WHILE"    ; immediate
 WHILE       mDOCOL
             .word   IFF,SWAP,EXIT
 
-;https://forth-standard.org/standard/core/REPEAT
-;C REPEAT   WHILEadr BEGINadr --     resolve WHILE loop
+; https://forth-standard.org/standard/core/REPEAT
+; REPEAT   WHILEadr BEGINadr --     resolve WHILE loop
             FORTHWORDIMM "REPEAT"   ; immediate
 REPEAT      mDOCOL
             .word   AGAIN,THEN,EXIT
 
-;https://forth-standard.org/standard/core/DO
-;C DO       -- DOadr   L: -- 0
+; https://forth-standard.org/standard/core/DO
+; DO       -- DOadr   L: -- 0
             FORTHWORDIMM "DO"       ; immediate
 DO          SUB #2,PSP              ;
             MOV TOS,0(PSP)          ;
@@ -2604,10 +2622,20 @@ DO          SUB #2,PSP              ;
             ADD #2,&LEAVEPTR        ; -- HERE+2     LEAVEPTR+2
             MOV &LEAVEPTR,W         ;
             MOV #0,0(W)             ; -- HERE+2     L-- 0
-            mNEXT
+            MOV @IP+,PC
+
+; https://forth-standard.org/standard/core/I
+; I        -- n   R: sys1 sys2 -- sys1 sys2
+;                  get the innermost loop index
+            FORTHWORD "I"
+II          SUB #2,PSP              ;1 make room in TOS
+            MOV TOS,0(PSP)          ;3
+            MOV @RSP,TOS            ;2 index = loopctr - fudge
+            SUB 2(RSP),TOS          ;3
+            MOV @IP+,PC             ;4 13~
 
-;https://forth-standard.org/standard/core/LOOP
-;C LOOP    DOadr --         L-- an an-1 .. a1 0
+; https://forth-standard.org/standard/core/LOOP
+; LOOP    DOadr --         L-- an an-1 .. a1 0
             FORTHWORDIMM "LOOP"     ; immediate
 LOO         MOV #xloop,X
 LOOPNEXT    ADD #4,&DDP             ; make room to compile two words
@@ -2623,47 +2651,39 @@ LEAVELOOP   MOV &LEAVEPTR,TOS       ; -- Adr of top LeaveStack cell
             MOV W,0(TOS)            ; move adr after loop as UNLOOP adr
             JMP LEAVELOOP
 LOOPEND     MOV @PSP+,TOS
-            mNEXT
+            MOV @IP+,PC
 
-;https://forth-standard.org/standard/core/PlusLOOP
-;C +LOOP   adrs --   L-- an an-1 .. a1 0
+; https://forth-standard.org/standard/core/PlusLOOP
+; +LOOP   adrs --   L-- an an-1 .. a1 0
             FORTHWORDIMM "+LOOP"    ; immediate
 PLUSLOOP    MOV #xploop,X
             JMP LOOPNEXT
 
-;https://forth-standard.org/standard/core/MOVE
-;C MOVE    addr1 addr2 u --     smart move
-;             VERSION FOR 1 ADDRESS UNIT = 1 CHAR
-            FORTHWORD "MOVE"
-MOVE        MOV TOS,W           ; W = cnt
-            MOV @PSP+,Y         ; Y = addr2 = dst
-            MOV @PSP+,X         ; X = addr1 = src
-            MOV @PSP+,TOS       ; pop new TOS
-            CMP #0,W
-            JZ MOVE_X           ; already done !
-            CMP X,Y             ; Y-X ; dst - src
-            JZ MOVE_X           ; already done !
-            JC MOVEUP           ; U>= if dst > src
-MOVEDOWN    MOV.B @X+,0(Y)      ; if X=src > Y=dst copy W bytes
-            ADD #1,Y
-            SUB #1,W
-            JNZ MOVEDOWN
-            mNEXT
-
-MOVEUP      ADD W,Y
-            ADD W,X
-MOVUP1      SUB #1,X
-            SUB #1,Y
-MOVUP2      MOV.B @X,0(Y)       ; if X=src < Y=dst copy W bytes beginning with the end
-            SUB #1,W
-            JNZ MOVUP1
-MOVE_X      mNEXT
-
+    .ENDIF ; CORE_COMPLEMENT
 
 ;-------------------------------------------------------------------------------
 ; WORDS SET for VOCABULARY, not ANS compliant
 ;-------------------------------------------------------------------------------
 
+    .IFDEF USE_MOVE
+; https://forth-standard.org/standard/core/MOVE
+; MOVE    addr1 addr2 u --     smart move
+;             VERSION FOR 1 ADDRESS UNIT = 1 CHAR
+            FORTHWORD "MOVE"
+MOVE        MOV TOS,W               ; W = cnt
+            MOV @PSP+,Y             ; Y = addr2 = dst
+            MOV @PSP+,X             ; X = addr1 = src
+            MOV @PSP+,TOS           ; pop new TOS
+            CMP #0,W                ; count = 0 ?
+            JZ MOVEND               ; already done ! see ALSO
+            CMP X,Y                 ; Y-X ; dst - src
+            JZ MOVEND               ; already done !
+            JNC MOVEDOWN            ; see PREVIOUS
+            ADD W,Y                 ; move beginning with the end
+            ADD W,X                 ;
+            JMP MOVEUP              ; see ALSO
+    .ENDIF
+
 ;X VOCABULARY       -- create a vocabulary, up to 7 vocabularies in CONTEXT
 
     .IFDEF VOCABULARY_SET
@@ -2672,31 +2692,31 @@ VOCABULARY  mDOCOL
             .word   CREATE
         .SWITCH THREADS
         .CASE   1
-            .word   lit,0,COMMA             ; will keep the NFA of the last word of the future created vocabularies
+            .word   lit,0,COMMA     ; will keep the NFA of the last word of the future created vocabularies
         .ELSECASE
             .word   lit,THREADS,lit,0,xdo
 VOCABULOOP  .word   lit,0,COMMA
             .word   xloop,VOCABULOOP
         .ENDCASE
-            .word   HERE                    ; link via LASTVOC the future created vocabulary
+            .word   HERE            ; link via LASTVOC the future created vocabulary
             .word   LIT,LASTVOC,DUP
-            .word   FETCH,COMMA             ; compile [LASTVOC] to HERE+
-            .word   STORE                   ; store (HERE - CELL) to LASTVOC
-            .word   DOES                    ; compile CFA and PFA for the future defined vocabulary
+            .word   FETCH,COMMA     ; compile [LASTVOC] to HERE+
+            .word   STORE           ; store (HERE - CELL) to LASTVOC
+            .word   DOES            ; compile CFA and PFA for the future defined vocabulary
 
     .ENDIF ; VOCABULARY_SET
 
 VOCDOES     .word   LIT,CONTEXT,STORE
             .word   EXIT
 
-;X  FORTH    --                         ; set FORTH the first context vocabulary; FORTH is and must be the first vocabulary
+;X  FORTH    --                     ; set FORTH the first context vocabulary; FORTH is and must be the first vocabulary
     .IFDEF VOCABULARY_SET
             FORTHWORD "FORTH"
     .ENDIF ; VOCABULARY_SET
-FORTH                                   ; leave BODYFORTH on the stack and run VOCDOES
-            mDODOES                     ; Code Field Address (CFA) of FORTH
-PFAFORTH    .word   VOCDOES             ; Parameter Field Address (PFA) of FORTH
-BODYFORTH                               ; BODY of FORTH
+FORTH                               ; leave BODYFORTH on the stack and run VOCDOES
+            CALL rDODOES            ; Code Field Address (CFA) of FORTH
+PFAFORTH    .word   VOCDOES         ; Parameter Field Address (PFA) of FORTH
+BODYFORTH                           ; BODY of FORTH
             .word   lastforthword
     .SWITCH THREADS
     .CASE   2
@@ -2772,7 +2792,7 @@ voclink         .set    $-2
     .IFDEF VOCABULARY_SET
             FORTHWORD "ASSEMBLER"
     .ENDIF ; VOCABULARY_SET
-ASSEMBLER       mDODOES             ; leave BODYASSEMBLER on the stack and run VOCDOES
+ASSEMBLER       CALL rDODOES        ; leave BODYASSEMBLER on the stack and run VOCDOES
                 .word   VOCDOES
 BODYASSEMBLER   .word   lastasmword ; here is the structure created by VOCABULARY
     .SWITCH THREADS
@@ -2850,32 +2870,44 @@ voclink         .set    $-2
             FORTHWORD "ALSO"
     .ENDIF ; VOCABULARY_SET
 ALSO        MOV #12,W               ; -- move up 6 words, 8th word of CONTEXT area must remain to 0
-            MOV #CONTEXT,X          ; X=src
-            MOV #CONTEXT+2,Y        ; Y=dst
-            JMP MOVEUP              ; src < dst
+            MOV #CONTEXT+12,X       ; X=src
+            MOV X,Y
+            ADD #2,Y                ; Y=dst
+MOVEUP      SUB #1,X
+            SUB #1,Y
+            MOV.B @X,0(Y)           ; if X=src < Y=dst copy W bytes beginning with the end
+            SUB #1,W
+            JNZ MOVEUP 
+MOVEND      MOV @IP+,PC
+
 
 ;X  PREVIOUS   --               pop last vocabulary out of context
     .IFDEF VOCABULARY_SET
             FORTHWORD "PREVIOUS"
     .ENDIF ; VOCABULARY_SET
-PREVIOUS    MOV #14,W               ; move down 7 words, with recopy of the 8th word equal to 0
-            MOV #CONTEXT+2,X        ; X=src
+PREVIOUS    MOV #14,W               ; move down 7 words, first with the 8th word equal to 0
             MOV #CONTEXT,Y          ; Y=dst
-            JMP MOVEDOWN            ; src > dst
+            MOV Y,X
+            ADD #2,X                ; X=src
+MOVEDOWN    MOV.B @X+,0(Y)          ; if X=src > Y=dst copy W bytes
+            ADD #1,Y
+            SUB #1,W
+            JNZ MOVEDOWN
+            MOV @IP+,PC
 
 ;X ONLY     --      cut context list to access only first vocabulary, ex.: FORTH ONLY
     .IFDEF VOCABULARY_SET
             FORTHWORD "ONLY"
     .ENDIF ; VOCABULARY_SET
 ONLY        MOV #0,&CONTEXT+2
-            mNEXT
+            MOV @IP+,PC
 
 ;X DEFINITIONS  --      set last context vocabulary as entry for further defining words
     .IFDEF VOCABULARY_SET
             FORTHWORD "DEFINITIONS"
     .ENDIF ; VOCABULARY_SET
-DEFINITIONS  MOV &CONTEXT,&CURRENT
-            mNEXT
+DEFINITIONS MOV &CONTEXT,&CURRENT
+            MOV @IP+,PC
 
 ;-------------------------------------------------------------------------------
 ; IMPROVED ON/OFF AND RESET
@@ -2884,7 +2916,7 @@ DEFINITIONS  MOV &CONTEXT,&CURRENT
 STATE_DOES  ; execution part of PWR_STATE ; sorry, doesn't restore search order pointers
             .word   FORTH,ONLY
             .word   DEFINITIONS
-            FORTHtoASM              ; -- BODY       IP is free
+            .word   $+2             ; -- BODY       IP is free
             MOV @TOS+,W             ; -- BODY+2     W = old VOCLINK = VLK
             MOV W,&LASTVOC          ;               restore LASTVOC
             MOV @TOS,TOS            ; -- OLD_DP
@@ -2917,12 +2949,12 @@ MARKTHREAD  MOV Y,0(X)              ;               W=VLK   X=THD   Y=NFA   refr
             JNZ MARKALLVOC          ; -- DP         W=VLK                   no : loopback
 
     .ENDCASE ; of THREADS           ; -- DP
-            MOV     @PSP+,TOS       ;
-            MOV     @RSP+,IP        ;
-            mNEXT                   ;
+            MOV @PSP+,TOS           ;
+            MOV @RSP+,IP            ;
+            MOV @IP+,PC             ;
 
             FORTHWORD "PWR_STATE"   ; executed by power ON, reinitializes dictionary in state defined by PWR_HERE
-PWR_STATE   mDODOES                 ; DOES part of MARKER : resets pointers DP, voclink and latest
+PWR_STATE   CALL rDODOES            ; DOES part of MARKER : resets pointers DP, voclink and latest
             .word   STATE_DOES      ; execution vector of PWR_STATE
 MARKVOC     .word   lastvoclink     ; initialised by forthMSP430FR.asm as voclink value
 MARKDP      .word   ROMDICT         ; initialised by forthMSP430FR.asm as DP value
@@ -2935,7 +2967,7 @@ RST_STATE   MOV &INIVOC,&MARKVOC    ; INIT value above (FRAM value)
             FORTHWORD "PWR_HERE"    ; define dictionnary bound for power ON
 PWR_HERE    MOV &LASTVOC,&MARKVOC
             MOV &DDP,&MARKDP
-            mNEXT
+            MOV @IP+,PC
 
             FORTHWORD "RST_HERE"    ; define dictionnary bound for <reset>...
 RST_HERE    MOV &LASTVOC,&INIVOC
@@ -2965,7 +2997,7 @@ QAB_DEFER
         MOV #BODYKEY,&PFAKEY        ;4 ' KEY >BODY IS KEY     default KEY
     .IFDEF DEFER_ACCEPT             ;  true if SD_CARD_LOADER
         MOV #BODYACCEPT,&PFAACCEPT  ;4 ' ACCEPT >BODY IS ACCEPT
-        MOV #TIB_ORG,&PFACIB        ;4 TIB_ORG TO CIB  (Current Input Buffer)
+        MOV #TIB_ORG,&CIB_ADR       ;4 TIB_ORG TO CIB  (Current Input Buffer)
     .ENDIF
     .IFDEF SD_CARD_LOADER           ; close all handles 
         MOV &CurrentHdl,T           ;
@@ -2977,12 +3009,11 @@ QAB_CLOSE                           ;
         JMP QAB_CLOSE               ;
 QAB_CLOSEND                         ;
     .ENDIF                          ;
-; ----------------------------------;
 ;-----------------------------------; 
 ; WIPE, QABORT, COLD common subrouti; <--- COLD, reset and PUC calls here
 ;-----------------------------------; 
 RST_INIT
-        MOV #CPUOFF+GIE,&LPM_MODE   ; set LPM0
+        MOV #LPM0+GIE,&LPM_MODE     ; set LPM0
     .SWITCH DTC
     .CASE 1
         MOV #xdocol,rDOCOL
@@ -2994,7 +3025,7 @@ RST_INIT
         MOV #xdodoes,rDODOES
         MOV #10,&BASE               ;4
         MOV #32,&CAPS               ; init CAPS ON
-        RET
+        MOV @RSP+,PC                ; RET
 ;-----------------------------------;
 
 ; --------------------------------------------------------------------------------
@@ -3007,7 +3038,6 @@ WARM        MOV @PC+,PC             ;3  Code Field Address (CFA) of WARM
 PFAWARM     .word   BODYWARM        ;   Parameter Field Address of WARM, may be redirected.
 BODYWARM    MOV @PC+,IP             ; MOV [BODYWARM+2],IP
 ENDOFWARM   .word   WARMTYPE        ; define next step of WARM, examples: WARMTYPE, ABORT, BOOT...
-                                    ;
 ;=================================================================================
 ; WARM 1: activates I/O: inputs and outputs are active only here (hiZ before here)
 ;=================================================================================
@@ -3022,13 +3052,15 @@ ENDOFWARM   .word   WARMTYPE        ; define next step of WARM, examples: WARMTY
 ; RESET 7: test DEEP RESET before init TERMINAL I/O
 ;---------------------------------------------------------------------------------
 RST_EVENT   BIT.B #TXD,&TERM_IN     ; TERM_TXD wired to GND via 4k7 resistor ?
-            JNZ INITERMIO           ; no
+            JNZ RST_EVENT_END       ; no
             XOR #-1,TOS             ; yes : force DEEP_RST (RESET + WIPE)
             ADD #1,TOS              ;       to display SAVE_SYSRSTIV as negative value
+RST_EVENT_END
 ;---------------------------------------------------------------------------------
 ; RESET 8: INIT TERMINAL I/O
 ;---------------------------------------------------------------------------------
-INITERMIO  BIS.B #TERM_BUS,&TERM_SEL; Configure pins TXD & RXD for TERM_UART
+        BIS.B #TERM_BUS,&TERM_SEL   ; Configure pins TXD & RXD for TERM_UART
+        BIS #UCRXIE,&TERM_IE        ; ... then enable RX interrupt for wake up on terminal input
 ;---------------------------------------------------------------------------------
 ; RESET 9: INIT SD_Card
 ;---------------------------------------------------------------------------------
@@ -3049,17 +3081,17 @@ ClearSDdata     SUB #2,X            ; 1
 RST_SEL     CMP #0Ah,TOS            ; SYSRSTIV = security violation: access of protected areas.
             JZ WIPE                 ; Add WIPE to this reset to do DEEP_RST
             CMP #16h,TOS            ; SYSRSTIV > software POR : failure or DEEP_RST request
-            JHS WIPE                ; yes, reset event adds WIPE to this reset to do DEEP_RST
+            J WIPE                ; yes, reset event adds WIPE to this reset to do DEEP_RST
             CMP #2,TOS              ; SYSRSTIV = BOR ?
-            JZ  PWR_STATE           ; yes   execute PWR_STATE, return to [BODYWARM+2]
-            JHS RST_STATE           ; if  SYSRSTIV > BOR  execute RST_STATE, return to [BODYWARM+2]
-RST_SEL_END mNEXT                   ; if SYSRSTIV = 1|0 return to [BODYWARM+2]
+            JZ  PWR_STATE           ; yes   execute PWR_STATE, return to [ENDOFWARM]
+            JC  RST_STATE           ; if  SYSRSTIV > BOR  execute RST_STATE, return to [ENDOFWARM]
+RST_SEL_END MOV @IP+,PC             ; if SYSRSTIV = 1|0 return to [ENDOFWARM]
 
 ;---------------------------------------------------------------------------------
 ; WARM 2: type message on console output (if ECHO)
 ;---------------------------------------------------------------------------------
 WARMTYPE    .word   XSQUOTE         ;
-            .byte   6,13,1Bh,"[7m#" ; CR + cmd "reverse video" + #
+            .byte   7,13,10,27,"[7m#" ; CR + cmd "reverse video" + #
             .word   TYPE            ;
             .word   DOT             ; display signed SAVE_SYSRSTIV
             .word   XSQUOTE
@@ -3068,7 +3100,7 @@ WARMTYPE    .word   XSQUOTE         ;
             .word   LIT,FRAM_FULL,HERE,MINUS,UDOT
             .word   XSQUOTE         ;
             .byte   10,"bytes free" ;
-            .word   BRAN,QABORT_DISPLAY  ;
+            .word   BRAN,QAB_DISPLAY;
 
 ;Z COLD     --      performs a software reset
             FORTHWORD "COLD"        
@@ -3077,27 +3109,23 @@ COLD        BIT #1,&TERM_STATW      ;
             MOV #0A504h,&PMMCTL0    ; performs BOR (SYSRSTIV = #6)
 ;            MOV #0A508h,&PMMCTL0    ; performs POR (SYSRSTIV = #20)
 
-            .word   WARMTYPE        ; default value for ENDOFWARM
 ;---------------------------------------------------------------------------------
 ; RESET 1: Initialisation limited to FastForth usage : I/O, RAM, RTC
 ;          all unused I/O are set as input with pullup resistor
 ;---------------------------------------------------------------------------------
-RESET      .include "TargetInit.asm"    ; include target specific FastForth init code
+RESET       MOV #RSTACK,RSP          ; init return stack
+            .include "TargetInit.asm"; include target specific FastForth init code
 ;---------------------------------------------------------------------------------
 ; RESET 2: init RAM
 ;---------------------------------------------------------------------------------
             MOV #RAM_LEN,X
 INITRAMLOOP SUB #2,X 
             MOV #0,RAM_ORG(X)
-            JNZ INITRAMLOOP         ; 6~ loop
+            JNZ INITRAMLOOP             ; 6~ loop
 ;---------------------------------------------------------------------------------
 ; RESET 3: set all interrupt vectors
 ;---------------------------------------------------------------------------------
-            MOV #VECT_LEN,X             ;2 length of vectors area
-VECTORLOOP  SUB #2,X                    ;1
-            MOV #RESET,VECT_ORG(X)      ;4 begin at end of area
-            JNZ VECTORLOOP              ;2 endloop when VECT_ORG(X) = VECT_ORG
-            MOV #TERMINAL_INT,&TERM_VEC
+            CALL #INIT_VECT
 ;---------------------------------------------------------------------------------
 ; RESET 4: INIT TERM_UART UC
 ;---------------------------------------------------------------------------------
@@ -3105,7 +3133,6 @@ VECTORLOOP  SUB #2,X                    ;1
             MOV &TERMBRW_RST,&TERM_BRW      ; RST value in FRAM
             MOV &TERMMCTLW_RST,&TERM_MCTLW  ; RST value in FRAM
             BIC #UCSWRST,&TERM_CTLW0        ; release from reset...
-            BIS #UCRXIE,&TERM_IE            ; ... then enable RX interrupt for wake up on terminal input
 ;-------------------------------------------------------------------------------
 ; RESET 5: optionnal INIT SD_CARD UC
 ;-------------------------------------------------------------------------------
@@ -3120,7 +3147,6 @@ VECTORLOOP  SUB #2,X                    ;1
 ; RESET 6: INIT FORTH machine
 ;---------------------------------------------------------------------------------
             MOV #PSTACK,PSP             ; init parameter stack
-            MOV #RSTACK,RSP             ; init return stack
             PUSH #WARM                  ; return for RST_INIT
             JMP RST_INIT
 
@@ -3130,7 +3156,7 @@ VECTORLOOP  SUB #2,X                    ;1
     .IFDEF CONDCOMP
         .include "forthMSP430FR_CONDCOMP.asm"
 
-        ; compile COMPARE [THEN] [ELSE] [IF] [UNDEFINED] [DEFINED] MARKER
+        ; compile [THEN] [ELSE] [IF] [UNDEFINED] [DEFINED]
 
     .ENDIF
 ;-------------------------------------------------------------------------------
@@ -3184,7 +3210,7 @@ VECTORLOOP  SUB #2,X                    ;1
 ;vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv
 ;vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv
 
-
+;           .include "MY_CODE.asm"
 
 ;^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 ;^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
index 2846132..5b4dbbd 100644 (file)
 
 ; example : POPM #6,IP   pop Y,X,W,T,S,IP registers from return stack
 
+
+;;Z SKIP      char -- addr               ; skip all occurring character 'char'
+;            FORTHWORD "SKIP"            ; used by assembler to parse input stream
+SKIP        MOV #SOURCE_LEN,Y       ;2
+            MOV TOS,W               ; -- char           W=char
+            MOV @Y+,X               ;2 -- char           W=char  X=buf_length
+            MOV @Y,TOS              ;2 -- Start_buf_adr  W=char  X=buf_length
+            ADD TOS,X               ; -- Start_buf_adr  W=char  X=Start_buf_adr+buf_length=End_buf_addr
+            ADD &TOIN,TOS           ; -- Parse_Adr      W=char  X=End_buf_addr
+SKIPLOOP    CMP TOS,X               ; -- Parse_Adr      W=char  X=End_buf_addr
+            JZ SKIPEND              ; -- Parse_Adr      if end of buffer
+            CMP.B @TOS+,W           ; -- Parse_Adr      does character match?
+            JZ SKIPLOOP             ; -- Parse_Adr+1
+SKIPNEXT    SUB #1,TOS              ; -- addr
+SKIPEND     MOV TOS,W               ;
+            SUB @Y,W                ; -- addr           W=Parse_Addr-Start_buf_adr=Toin
+            MOV W,&TOIN             ;
+            MOV @IP+,PC             ; 4
+
 ; ----------------------------------------------------------------------
 ; DTCforthMSP430FR5xxx ASSEMBLER : search argument "xxxx", IP is free
 ; ----------------------------------------------------------------------
 
-;SearchARG                           ; separator -- n|d or abort" not found"
-;; Search ARG of "#xxxx,"            ; <== PARAM10
-;; Search ARG of "&xxxx,"            ; <== PARAM111
-;; Search ARG of "xxxx(REG),"        ; <== PARAM130
-;; Search ARG of ",&xxxx"            ; <== PARAM111 <== PARAM20
-;; Search ARG of ",xxxx(REG)"        ; <== PARAM210
-;            PUSHM #2,S              ;                   PUSHM S,T as OPCODE, OPCODEADR
-;            ASMtoFORTH              ; -- separator      search word first
-;            .word   WORDD,FIND      ; -- addr
-;            .word QTBRAN,SearchARGW ; -- addr           if word found
-;            .word   QNUMBER         ;
-;            .word   QFBRAN,NotFound ; -- addr           ABORT if not found
-;FSearchEnd  .word   SearchEnd       ; -- value          goto SearchEnd if number found
-;SearchARGW  FORTHtoASM              ; -- xt             xt = CFA
-;            MOV     @TOS+,X         ; -- PFA
-;QDODOES     SUB     #DODOES,X       ;                   DODOES = 1284h
-;            JNZ     QDOCON          ;
-;            ADD     #2,TOS          ; -- BODY           leave BODY address for DOES words
-;            JMP     SearchEnd       ;
-;QDOCON      CMP     #1,X            ; -- PFA            DOCON = 1285h
-;            JNZ     QDOVAR          ;
-;            MOV     @TOS,TOS        ; -- cte            replace PFA by [PFA] for CONSTANT and CREATE words
-;            JMP     SearchEnd       ;
-;QDOVAR      CMP     #2,X            ; -- PFA            DOVAR = 1286h
-;            JZ      SearchEnd       ;                   if DOVAR nothing to do
-;            SUB     #2,TOS          ; -- CFA            replace PFA by CFA for all other words
-;SearchEnd   POPM    #2,S            ;                   POPM T,S
-;            RET                     ;
-
 SearchARG                           ; separator -- n|d or abort" not found"
 ; Search ARG of "#xxxx,"            ; <== PARAM10
 ; Search ARG of "&xxxx,"            ; <== PARAM111
@@ -85,24 +75,24 @@ SearchARG                           ; separator -- n|d or abort" not found"
             PUSHM #2,S              ;                   PUSHM S,T as OPCODE, OPCODEADR
             ASMtoFORTH              ; -- separator      search word first
             .word   WORDD,FIND      ; -- addr
-            .word QTBRAN,SearchARGW ; -- addr           if word found
+            .word   QTBRAN,ARGWORD  ; -- addr           if Word found
             .word   QNUMBER         ;
             .word   QFBRAN,NotFound ; -- addr           ABORT if not found
 FSearchEnd  .word   SearchEnd       ; -- value          goto SearchEnd if number found
-SearchARGW  FORTHtoASM              ; -- xt             xt = CFA
+ARGWORD     .word   $+2             ; -- xt             xt = CFA
             MOV     @TOS+,X         ; -- PFA
 QDOVAR      SUB     #DOVAR,X        ;                   DOVAR = 1286h
-            JZ      SearchEnd       ;
-            ADD     #1,X            ; -- PFA            DOCON = 1285h
-            JNZ     QDODOES         ;
-            MOV     @TOS,TOS        ; -- cte
+ISDOVAR     JZ      SearchEnd       ;
+QDOCON      ADD     #1,X            ; -- PFA            DOCON = 1285h
+ISNOTDOCON  JNZ     QDODOES         ;
+ISDOCON     MOV     @TOS,TOS        ; -- cte
             JMP     SearchEnd       ;
 QDODOES     ADD     #2,TOS          ; -- BODY           leave BODY address for DOES words
             ADD     #1,X            ;                   DODOES = 1284h
-            JZ      SearchEnd       ;        
-            SUB     #4,TOS          ; -- CFA
+ISDODOES    JZ      SearchEnd       ;        
+ISOTHER     SUB     #4,TOS          ; -- CFA
 SearchEnd   POPM    #2,S            ;                   POPM T,S
-            RET                     ;
+            MOV     @RSP+,PC        ; RET
 
 ; ----------------------------------------------------------------------
 ; DTCforthMSP430FR5xxx ASSEMBLER : search REG
@@ -110,7 +100,7 @@ SearchEnd   POPM    #2,S            ;                   POPM T,S
 
 ; compute arg of "xxxx(REG),"       ;               <== PARAM130, sep=','
 ; compute arg of ",xxxx(REG)"       ;               <== PARAM210, sep=' '
-ComputeARGParenREG                  ; sep -- Rn
+ComputeARGpREG                      ; sep -- Rn
             MOV #'(',TOS            ; -- "("        as WORD separator to find xxxx of "xxxx(REG),"
             CALL #SearchARG         ; -- xxxx       aborted if not found
             MOV &DDP,X
@@ -131,13 +121,13 @@ SearchREG   PUSHM #2,S              ;                   PUSHM S,T as OPCODE, OPC
             ASMtoFORTH              ;               search xx of Rxx
             .word WORDD,QNUMBER     ;
             .word QFBRAN,NOTaREG    ; -- xxxx       if Not a Number
-            FORTHtoASM              ; -- Rn         number is found
+            .word   $+2             ; -- Rn         number is found
             ADD #2,RSP              ;               remove >IN
             CMP #16,TOS             ; -- Rn       
-            JHS BOUNDERROR          ;               abort if Rn out of bounds
-            JLO SearchEnd           ; -- Rn         Z=0 ==> found
+            J BOUNDERROR          ;               abort if Rn out of bounds
+            JNC SearchEnd           ; -- Rn
 
-NOTaREG     FORTHtoASM              ; -- addr       Z=1
+NOTaREG     .word   $+2             ; -- addr       Z=1
             MOV @RSP+,&TOIN         ; -- addr       restore >IN
             JMP SearchEnd           ; -- addr       Z=1 ==> not a register 
 
@@ -149,7 +139,7 @@ NOTaREG     FORTHtoASM              ; -- addr       Z=1
                                             ; sep is comma for src and space for dst .
 PARAM1      mDOCOL                  ; -- sep        OPCODES types I|V sep = ','  OPCODES types II|VI sep = ' '
             .word   FBLANK,SKIP     ; -- sep addr
-            FORTHtoASM              ; -- sep addr
+            .word   $+2             ; -- sep addr
             MOV     #0,S            ; -- sep addr   reset OPCODE
             MOV     &DDP,T          ; -- sep addr   HERE --> OPCODEADR (opcode is preset to its address !)
             ADD     #2,&DDP         ; -- sep addr   cell allot for opcode
@@ -190,7 +180,7 @@ StoreTOS                            ;               <== TYPE1DOES
 ; endcase of all "REG"|"@REG"|"@REG+"               <== PARAM124
 PARAMENDOF  MOV @PSP+,TOS           ; --
             MOV @RSP+,IP            ;
-            mNEXT                   ; --            S=OPCODE,T=OPCODEADR
+            MOV @IP+,PC             ; --            S=OPCODE,T=OPCODEADR
 ; ----------------------------------;
 PARAM11     CMP.B   #'&',W          ; -- sep
             JNE     PARAM12
@@ -238,7 +228,7 @@ PARAM13     CALL    #SearchREG      ; -- sep        save >IN for second parsing
             JNZ     PARAM123        ; -- 000R       REG of "REG," found, S=OPCODE=0
 ; case of "xxxx(REG),"              ; -- c-addr     "REG," not found
 PARAM130    ADD     #0010h,S        ;               AS=0b01 for indexing address
-            CALL #ComputeARGparenREG;               compile xxxx and search REG of "(REG)"
+            CALL    #ComputeARGpREG ;               compile xxxx and search REG of "(REG)"
             JMP     PARAM122        ; 
 
 ; ----------------------------------------------------------------------
@@ -252,7 +242,7 @@ PARAM3                              ; for OPCODES TYPE III
 ; ----------------------------------;
 PARAM2      mDOCOL                  ;               parse input buffer until BL and compute this 2th operand
             .word   FBLANK,SKIP     ;               skip space(s) between "arg1," and "arg2" if any; use not S,T.
-            FORTHtoASM              ; -- c-addr     search for '&' of "&xxxx
+            .word   $+2             ; -- c-addr     search for '&' of "&xxxx
             CMP.B   #'&',0(TOS)     ;
             MOV     #20h,TOS        ; -- ' '        as WORD separator to find xxxx of ",&xxxx"
             JNE     PARAM21         ;               '&' not found
@@ -265,7 +255,7 @@ PARAM21     CALL    #SearchREG      ;
             JNZ     PARAM124        ; -- 000R       REG of ",REG" found
 ; case of ",xxxx(REG)               ; -- addr       REG not found
 PARAM210    ADD     #0080h,S        ;               set AD=1
-            CALL #ComputeARGparenREG;               compile argument xxxx and search REG of "(REG)"
+            CALL    #ComputeARGpREG ;               compile argument xxxx and search REG of "(REG)"
             JMP     PARAM124        ; -- 000R       REG of "(REG) found
 
 ; ----------------------------------------------------------------------
@@ -299,84 +289,84 @@ PARAM210    ADD     #0080h,S        ;               set AD=1
 
 TYPE1DOES   .word   lit,',',PARAM1  ; -- BODYDOES
             .word   PARAM2          ; -- BODYDOES           char separator (BL) included in PARAM2
-            FORTHtoASM              ;
+            .word   $+2             ;
 MAKEOPCODE  MOV     T,X             ; -- opcode             X= OPCODEADR to compile opcode
             MOV     @TOS,TOS        ; -- opcode             part of instruction
             BIS     S,TOS           ; -- opcode             opcode is complete
             JMP     StoreTOS        ; --                    then EXIT
 
             asmword "MOV"
-            mDODOES
+            CALL rDODOES
             .word   TYPE1DOES,4000h
 
             asmword "MOV.B"
-            mDODOES
+            CALL rDODOES
             .word   TYPE1DOES,4040h
             asmword "ADD"
-            mDODOES
+            CALL rDODOES
             .word   TYPE1DOES,5000h
             asmword "ADD.B"
-            mDODOES
+            CALL rDODOES
             .word   TYPE1DOES,5040h
             asmword "ADDC"
-            mDODOES
+            CALL rDODOES
             .word   TYPE1DOES,6000h
             asmword "ADDC.B"
-            mDODOES
+            CALL rDODOES
             .word   TYPE1DOES,6040h
             asmword "SUBC"
-            mDODOES
+            CALL rDODOES
             .word   TYPE1DOES,7000h
             asmword "SUBC.B"
-            mDODOES
+            CALL rDODOES
             .word   TYPE1DOES,7040h
             asmword "SUB"
-            mDODOES
+            CALL rDODOES
             .word   TYPE1DOES,8000h
             asmword "SUB.B"
-            mDODOES
+            CALL rDODOES
             .word   TYPE1DOES,8040h
             asmword "CMP"
-            mDODOES
+            CALL rDODOES
             .word   TYPE1DOES,9000h
             asmword "CMP.B"
-            mDODOES
+            CALL rDODOES
             .word   TYPE1DOES,9040h
             asmword "DADD"
-            mDODOES
+            CALL rDODOES
             .word   TYPE1DOES,0A000h
             asmword "DADD.B"
-            mDODOES
+            CALL rDODOES
             .word   TYPE1DOES,0A040h
             asmword "BIT"
-            mDODOES
+            CALL rDODOES
             .word   TYPE1DOES,0B000h
             asmword "BIT.B"
-            mDODOES
+            CALL rDODOES
             .word   TYPE1DOES,0B040h
             asmword "BIC"
-            mDODOES
+            CALL rDODOES
             .word   TYPE1DOES,0C000h
             asmword "BIC.B"
-            mDODOES
+            CALL rDODOES
             .word   TYPE1DOES,0C040h
             asmword "BIS"
-            mDODOES
+            CALL rDODOES
             .word   TYPE1DOES,0D000h
             asmword "BIS.B"
-            mDODOES
+            CALL rDODOES
             .word   TYPE1DOES,0D040h
             asmword "XOR"
-            mDODOES
+            CALL rDODOES
             .word   TYPE1DOES,0E000h
             asmword "XOR.B"
-            mDODOES
+            CALL rDODOES
             .word   TYPE1DOES,0E040h
             asmword "AND"
-            mDODOES
+            CALL rDODOES
             .word   TYPE1DOES,0F000h
             asmword "AND.B"
-            mDODOES
+            CALL rDODOES
             .word   TYPE1DOES,0F040h
 
 ; ----------------------------------------------------------------------
@@ -397,7 +387,7 @@ MAKEOPCODE  MOV     T,X             ; -- opcode             X= OPCODEADR to comp
 ; ----------------------------------------------------------------------
 
 TYPE2DOES   .word   FBLANK,PARAM1   ; -- BODYDOES
-            FORTHtoASM              ;
+            .word   $+2             ;
             MOV     S,W             ;
             AND     #0070h,S        ;                   keep B/W & AS infos in OPCODE
             SWPB    W               ;                   (REG org --> REG dst)
@@ -406,31 +396,31 @@ BIS_ASMTYPE BIS     W,S             ; -- BODYDOES       add it in OPCODE
             JMP     MAKEOPCODE      ; -- then end
 
             asmword "RRC"           ; Rotate Right through Carry ( word)
-            mDODOES
+            CALL rDODOES
             .word   TYPE2DOES,1000h
             asmword "RRC.B"         ; Rotate Right through Carry ( byte)
-            mDODOES
+            CALL rDODOES
             .word   TYPE2DOES,1040h
             asmword "SWPB"          ; Swap bytes
-            mDODOES
+            CALL rDODOES
             .word   TYPE2DOES,1080h
             asmword "RRA"
-            mDODOES
+            CALL rDODOES
             .word   TYPE2DOES,1100h
             asmword "RRA.B"
-            mDODOES
+            CALL rDODOES
             .word   TYPE2DOES,1140h
             asmword "SXT"
-            mDODOES
+            CALL rDODOES
             .word   TYPE2DOES,1180h
             asmword "PUSH"
-            mDODOES
+            CALL rDODOES
             .word   TYPE2DOES,1200h
             asmword "PUSH.B"
-            mDODOES
+            CALL rDODOES
             .word   TYPE2DOES,1240h
             asmword "CALL"
-            mDODOES
+            CALL rDODOES
             .word   TYPE2DOES,1280h
 
 BOUNDERRWM1 ADD     #1,W            ; <== RRAM|RRUM|RRCM|RLAM error
@@ -461,14 +451,14 @@ BOUNDERROR                          ; <== REG number error
 ; RxxM syntax: RxxM #n,REG  with 0 < n < 5 
 
 TYPE3DOES   .word   FBLANK,SKIP     ;                       skip spaces if any
-            FORTHtoASM              ; -- BODYDOES c-addr
+            .word   $+2             ; -- BODYDOES c-addr
             ADD     #1,&TOIN        ;                       skip "#"
             MOV     #',',TOS        ; -- BODYDOES ","
             ASMtoFORTH
             .word   WORDD,QNUMBER
             .word   QFBRAN,NotFound ;                       ABORT
             .word   PARAM3          ; -- BODYDOES 0x000N    S=OPCODE = 0x000R
-            FORTHtoASM
+            .word   $+2
             MOV     TOS,W           ; -- BODYDOES n         W = n
             MOV     @PSP+,TOS       ; -- BODYDOES
             SUB     #1,W            ;                       W = n floored to 0
@@ -482,32 +472,32 @@ PxxxINSTRU  MOV     S,Y             ;                       S=REG, Y=REG to test
 POPMINSTRU  SUB     W,S             ;                       to make POPM opcode, compute first REG to POP; TI is complicated....
 PUSHMINSTRU SUB     W,Y             ;                       Y=REG-(n-1)
             CMP     #16,Y
-            JHS     BOUNDERRWM1     ;                       JC=JHS    (U>=)
+            J     BOUNDERRWM1     ;                       JC=JHS    (U>=)
             RLAM    #4,W            ;                       W = n << 4      
             JMP     BIS_ASMTYPE     ; BODYDOES --            
 RxxMINSTRU  CMP     #4,W            ;
-            JHS     BOUNDERRWM1     ;                       JC=JHS    (U>=)
+            J     BOUNDERRWM1     ;                       JC=JHS    (U>=)
             SWPB    W               ; -- BODYDOES           W = n << 8
             RLAM    #2,W            ;                       W = N << 10
             JMP     BIS_ASMTYPE     ; BODYDOES --
 
             asmword "RRCM"
-            mDODOES
+            CALL rDODOES
             .word   TYPE3DOES,0050h
             asmword "RRAM"
-            mDODOES
+            CALL rDODOES
             .word   TYPE3DOES,0150h
             asmword "RLAM"
-            mDODOES
+            CALL rDODOES
             .word   TYPE3DOES,0250h
             asmword "RRUM"
-            mDODOES
+            CALL rDODOES
             .word   TYPE3DOES,0350h
             asmword "PUSHM"
-            mDODOES
+            CALL rDODOES
             .word   TYPE3DOES,1500h
             asmword "POPM"
-            mDODOES
+            CALL rDODOES
             .word   TYPE3DOES,1700h
 
 ; ----------------------------------------------------------------------
@@ -524,35 +514,35 @@ RxxMINSTRU  CMP     #4,W            ;
 ; OPCODE(code) for TYPE JMP                         = 0x3Cxx + (offset AND 3FF)
 
             asmword "S>="           ; if >= assertion (opposite of jump if < )
-            mDOCON
+            CALL rDOCON
             .word   3800h
 
             asmword "S<"            ; if < assertion
-            mDOCON
+            CALL rDOCON
             .word   3400h
 
             asmword "0>="           ; if 0>= assertion  ; use only with IF UNTIL WHILE !
-            mDOCON
+            CALL rDOCON
             .word   3000h
 
-            asmword "0<"            ; jump if 0<        ; use only with ?JMP ?GOTO !
-            mDOCON
+            asmword "0<"            ; jump if 0<        ; use only with ?GOTO !
+            CALL rDOCON
             .word   3000h
 
             asmword "U<"            ; if U< assertion
-            mDOCON
+            CALL rDOCON
             .word   2C00h
 
             asmword "U>="           ; if U>= assertion
-            mDOCON
+            CALL rDOCON
             .word   2800h
 
             asmword "0<>"           ; if <>0 assertion
-            mDOCON
+            CALL rDOCON
             .word   2400h
 
             asmword "0="            ; if =0 assertion
-            mDOCON
+            CALL rDOCON
             .word   2000h
 
 ;ASM IF      OPCODE -- @OPCODE1
@@ -561,7 +551,7 @@ ASM_IF      MOV     &DDP,W
             MOV     TOS,0(W)        ; compile incomplete opcode
             ADD     #2,&DDP
             MOV     W,TOS
-            mNEXT
+            MOV     @IP+,PC
 
 ;ASM THEN     @OPCODE --        resolve forward branch
             asmword "THEN"
@@ -575,7 +565,7 @@ ASM_THEN1   MOV     @PSP+,TOS       ; --
             CMP     #512,W
             JC      BOUNDERRORW     ; (JHS) unsigned branch if u> 511
             BIS     W,0(Y)          ; --       [@OPCODE]=OPCODE completed
-            mNEXT
+            MOV     @IP+,PC
 
 ;C ELSE     @OPCODE1 -- @OPCODE2    branch for IF..ELSE
             asmword "ELSE"
@@ -586,8 +576,6 @@ ASM_ELSE    MOV     &DDP,W          ; --        W=HERE
             MOV     W,0(PSP)        ; -- @OPCODE2 @OPCODE1
             JMP     ASM_THEN        ; -- @OPCODE2
 
-;C BEGIN    -- @BEGIN               same as FORTH counterpart
-
 ;C UNTIL    @BEGIN OPCODE --   resolve conditional backward branch
             asmword "UNTIL"
 ASM_UNTIL   MOV     @PSP+,W         ;  -- OPCODE                        W=@BEGIN
@@ -603,7 +591,7 @@ ASM_UNTIL2  MOV     @PSP+,TOS       ;  --
             BIS     W,Y             ;  --           Y=OPCODE (completed)
             MOV     Y,0(X)
             ADD     #2,&DDP
-            mNEXT
+            MOV     @IP+,PC
 
 ;X AGAIN    @BEGIN --      uncond'l backward branch
 ;   unconditional backward branch
@@ -630,60 +618,105 @@ ASM_REPEAT  mDOCOL                  ; -- @WHILE @BEGIN
 ; FWx at the beginning of a line can resolve only one previous GOTO|?GOTO FWx.
 ; BWx at the beginning of a line can be resolved by any subsequent GOTO|?GOTO BWx.
 
-BACKWDOES   FORTHtoASM
+;BACKWDOES   FORTHtoASM
+;            MOV @RSP+,IP
+;            MOV @TOS,TOS
+;            MOV TOS,Y               ; Y = ASMBWx
+;            MOV @PSP+,TOS           ; 
+;            MOV @Y,W                ;               W = [ASMBWx]
+;            CMP #8,&TOIN            ;               are we colon 8 or more ?
+;BACKWUSE    JHS ASM_UNTIL1          ;               yes, use this label  
+;BACKWSET    MOV &DDP,0(Y)           ;               no, set LABEL = DP
+;            mNEXT
+
+;; backward label 1
+;            asmword "BW1"
+;            mdodoes
+;            .word BACKWDOES
+;            .word ASMBW1            ; in RAM
+
+BACKWDOES   .word   $+2
             MOV @RSP+,IP            ;
             MOV TOS,Y               ; -- PFA        Y = ASMBWx addr
             MOV @PSP+,TOS           ; --
             MOV @Y,W                ;               W = LABEL
             CMP #8,&TOIN            ;               are we colon 8 or more ?
-BACKWUSE    JHS ASM_UNTIL1          ;               yes, use this label  
+BACKWUSE    JC ASM_UNTIL1           ;               yes, use this label  
 BACKWSET    MOV &DDP,0(Y)           ;               no, set LABEL = DP
-            mNEXT
+            MOV @IP+,PC
 
 ; backward label 1
             asmword "BW1"
-            mdodoes
+            CALL rDODOES
             .word BACKWDOES
             .word 0
 ; backward label 2
             asmword "BW2"
-            mdodoes
+            CALL rDODOES
             .word BACKWDOES
             .word 0
 ; backward label 3
             asmword "BW3"
-            mdodoes
+            CALL rDODOES
             .word BACKWDOES
             .word 0
 
-FORWDOES    FORTHtoASM
+;FORWDOES    FORTHtoASM
+;            MOV @RSP+,IP
+;            MOV &DDP,W              ;
+;            MOV @TOS,TOS
+;            MOV @TOS,Y              ;               Y=[ASMFWx]
+;            CMP #8,&TOIN            ;               are we colon 8 or more ?
+;FORWUSE     JLO ASM_THEN1           ;               no: resolve FWx with W=DDP, Y=ASMFWx
+;FORWSET     MOV @PSP+,0(W)          ; -- PFA        compile incomplete opcode
+;            ADD #2,&DDP             ;               increment DDP
+;            MOV W,0(TOS)            ;               store @OPCODE into ASMFWx
+;            MOV @PSP+,TOS           ;   --
+;            mNEXT
+
+;; forward label 1
+;            asmword "FW1"
+;            mdodoes
+;            .word FORWARDDOES
+;            .word ASMFW1            ; in RAM
+
+FORWDOES    .word   $+2
             MOV @RSP+,IP
             MOV &DDP,W              ;
-            MOV @TOS,Y              ; -- PFA        Y=[ASMFWx]
+            MOV @TOS,Y              ; -- PFA        Y=[BODY]=ASMFWx
             CMP #8,&TOIN            ;               are we colon 8 or more ?
-FORWUSE     JLO ASM_THEN1           ;               no: resolve FWx with W=DDP, Y=ASMFWx
+FORWUSE     JNC ASM_THEN1           ;               no: resolve FWx with W=DDP, Y=ASMFWx
 FORWSET     MOV @PSP+,0(W)          ;               yes compile incomplete opcode
             ADD #2,&DDP             ;                   increment DDP
             MOV W,0(TOS)            ;                   store @OPCODE into ASMFWx
             MOV @PSP+,TOS           ;   --
-            mNEXT
+            MOV @IP+,PC
 
 ; forward label 1
             asmword "FW1"
-            mdodoes
-            .word FORWDOES
-            .word 0
+            CALL rDODOES            ; CFA
+            .word FORWDOES          ; 
+            .word 0                 ; BODY 
 ; forward label 2
             asmword "FW2"
-            mdodoes
+            CALL rDODOES
             .word FORWDOES
             .word 0
 ; forward label 3
             asmword "FW3"
-            mdodoes
+            CALL rDODOES
             .word FORWDOES
             .word 0
 
+;ASM    GOTO <label>                   --       unconditionnal branch to label
+            asmword "GOTO"
+            SUB #2,PSP
+            MOV TOS,0(PSP)
+            MOV #3C00h,TOS          ;  -- JMP_OPCODE
+GOTONEXT    mDOCOL
+            .word   TICK            ;  -- OPCODE CFA<label>
+            .word   EXECUTE,EXIT
+
 ;ASM    <cond> ?GOTO <label>    OPCODE --       conditionnal branch to label
             asmword "?GOTO"
 INVJMP      CMP #3000h,TOS          ; invert code jump process
@@ -692,26 +725,14 @@ INVJMP      CMP #3000h,TOS          ; invert code jump process
             BIT #1000h,TOS          ; 3xxxh case ?
             JZ  GOTONEXT            ; no
             XOR #0800h,TOS          ; complementary action for JL<-->JGE
-GOTONEXT    mDOCOL
-            .word   TICK            ;  -- OPCODE CFA<label>
-            .word   EXECUTE,EXIT
-
-;ASM    GOTO <label>                   --       unconditionnal branch to label
-            asmword "GOTO"
-            SUB #2,PSP
-            MOV TOS,0(PSP)
-            MOV #3C00h,TOS          ; asmcode JMP
             JMP GOTONEXT
 
-
-
-
-    .IFDEF EXTENDED_MEM
-
 ; ===============================================================
 ; to allow data access beyond $FFFF
 ; ===============================================================
 
+    .IFDEF EXTENDED_MEM
+
 ; MOVA (#$x.xxxx|&$x.xxxx|$.xxxx(Rs)|Rs|@Rs|@Rs+ , &|Rd|$.xxxx(Rd)) 
 ; ADDA (#$x.xxxx|Rs , Rd) 
 ; CMPA (#$x.xxxx|Rs , Rd) 
@@ -721,7 +742,7 @@ GOTONEXT    mDOCOL
 ;-----------------------------------;
 ACMS1       mDOCOL                  ; -- BODYDOES ','   
             .word   FBLANK,SKIP     ; -- BODYDOES ',' addr
-            FORTHtoASM              ;
+            .word   $+2             ;
             MOV.B @TOS,X            ;                   X=first char of opcode string
             MOV @PSP+,TOS           ; -- BODYDOES ','
             MOV @PSP+,S             ; -- ','            S=BODYDOES
@@ -781,7 +802,7 @@ MOVA14      BIS #0030h,S            ;               set xxxx(REG), opcode
 ;-----------------------------------;
 ACMS2       mDOCOL                  ; -- OPCODE_addr 
             .word FBLANK,SKIP       ; -- OPCODE_addr addr
-            FORTHtoASM              ;
+            .word   $+2             ;
             MOV @PSP+,T             ; -- addr       T=OPCODE_addr
             MOV @T,S                ;               S=opcode
             MOV.B @TOS,X            ; -- addr       X=first char of string instruction         
@@ -822,77 +843,77 @@ TYPE4DOES   .word   lit,','         ; -- BODYDOES ","        char separator for
             .word   DROP,EXIT
 
             asmword "MOVA"
-            mDODOES
+            CALL rDODOES
             .word   TYPE4DOES,00C0h
             asmword "CMPA"
-            mDODOES
+            CALL rDODOES
             .word   TYPE4DOES,00D0h
             asmword "ADDA"
-            mDODOES
+            CALL rDODOES
             .word   TYPE4DOES,00E0h
             asmword "SUBA"
-            mDODOES
+            CALL rDODOES
             .word   TYPE4DOES,00F0h
 
+; --------------------------------------------------------------------------------
+; DTCforthMSP430FR5xxx ASSEMBLER:  OPCODE TYPE III bis: CALLA (without extended word)
+; --------------------------------------------------------------------------------
+; absolute and immediate instructions must be written as $x.xxxx  (DOUBLE numbers with dot)
+; indexed instructions must be written as $.xxxx(REG) (DOUBLE numbers with dot)
+; --------------------------------------------------------------------------------
+; may be usefull to access ROM libraries beyond $FFFF
+; --------------------------------------------------------------------------------
 
-;; perhaps you also want to call ROM lib routines beyond $FFFF....
-;; --------------------------------------------------------------------------------
-;; DTCforthMSP430FR5xxx ASSEMBLER:  OPCODE TYPE III bis: CALLA (without extended word)
-;; --------------------------------------------------------------------------------
-;; absolute and immediate instructions must be written as $x.xxxx  (DOUBLE numbers)
-;; indexed instructions must be written as $.xxxx(REG) (DOUBLE numbers)
-;; --------------------------------------------------------------------------------
-;
-;            asmword "CALLA"
-;            mDOCOL
-;            .word FBLANK,SKIP       ; -- addr
-;            FORTHtoASM
-;            MOV &DDP,T              ;           T = DDP
-;            ADD #2,&DDP             ;           make room for opcode
-;            MOV.B @TOS,TOS          ; -- char   First char of opcode
-;CALLA0      MOV #134h,S             ;           134h<<4 = 1340h = opcode for CALLA Rn
-;            CMP.B #'R',TOS   
-;            JNZ CALLA1
-;CALLA01     MOV.B #' ',TOS          ;        
-;CALLA02     CALL #SearchREG         ; -- Rn
-;CALLA03     RLAM #4,S               ;           (opcode>>4)<<4 = opcode
-;            BIS TOS,S               ;           update opcode
-;            MOV S,0(T)              ;           store opcode
-;            MOV @PSP+,TOS
-;            mSEMI
-;;-----------------------------------;
-;CALLA1      ADD #2,S                ;           136h<<4 = opcode for CALLA @REG
-;            CMP.B #'@',TOS          ; -- char   Search @REG
-;            JNZ CALLA2              ;
-;            ADD #1,&TOIN            ;           skip '@'
-;            MOV.B #' ',TOS          ; -- ' '
-;            CALL #SearchREG         ;
-;            JNZ  CALLA03            ;           if REG found, update opcode
-;;-----------------------------------;
-;            ADD #1,S                ;           137h<<4 = opcode for CALLA @REG+
-;            MOV #'+',TOS            ; -- '+'
-;            JMP CALLA02             ;
-;;-----------------------------------;
-;CALLA2      ADD #2,&DDP             ;           make room for xxxx of #$x.xxxx|&$x.xxxx|$0.xxxx(REG)
-;            CMP.B #'#',TOS          ;
-;            JNZ CALLA3
-;            MOV #13Bh,S             ;           13Bh<<4 = opcode for CALLA #$x.xxxx
-;CALLA21     ADD #1,&TOIN            ;           skip '#'|'&'
-;CALLA22     CALL #SearchARG         ; -- Lo Hi
-;            MOV @PSP+,2(T)          ; -- Hi     store #$xxxx|&$xxxx
-;            JMP CALLA03             ;           update opcode with $x. and store opcode
-;;-----------------------------------;
-;CALLA3      CMP.B #'&',TOS   
-;            JNZ CALLA4              ;
-;            ADD #2,S                ;           138h<<4 = opcode for CALLA &$x.xxxx
-;            JMP CALLA21
-;;-----------------------------------;
-;CALLA4      MOV.B #'(',TOS          ; -- "("
-;            SUB #1,S                ;           135h<<4 = opcode for CALLA $0.xxxx(REG)
-;CALLA41     CALL #SearchARG         ; -- Lo Hi
-;            MOV @PSP+,2(T)          ; -- Hi     store $xxxx 
-;            MOV #')',TOS            ; -- ')'
-;            JMP CALLA02             ;           search Rn and update opcode
+            asmword "CALLA"
+            mDOCOL
+            .word FBLANK,SKIP       ; -- addr
+            .word   $+2
+            MOV &DDP,T              ;           T = DDP
+            ADD #2,&DDP             ;           make room for opcode
+            MOV.B @TOS,TOS          ; -- char   First char of opcode
+CALLA0      MOV #134h,S             ;           134h<<4 = 1340h = opcode for CALLA Rn
+            CMP.B #'R',TOS   
+            JNZ CALLA1
+CALLA01     MOV.B #' ',TOS          ;        
+CALLA02     CALL #SearchREG         ; -- Rn
+CALLA03     RLAM #4,S               ;           (opcode>>4)<<4 = opcode
+            BIS TOS,S               ;           update opcode
+            MOV S,0(T)              ;           store opcode
+            MOV @PSP+,TOS
+            MOV @RSP+,IP 
+            MOV @IP+,PC
+;-----------------------------------;
+CALLA1      ADD #2,S                ;           136h<<4 = opcode for CALLA @REG
+            CMP.B #'@',TOS          ; -- char   Search @REG
+            JNZ CALLA2              ;
+            ADD #1,&TOIN            ;           skip '@'
+            MOV.B #' ',TOS          ; -- ' '
+            CALL #SearchREG         ;
+            JNZ  CALLA03            ;           if REG found, update opcode
+;-----------------------------------;
+            ADD #1,S                ;           137h<<4 = opcode for CALLA @REG+
+            MOV #'+',TOS            ; -- '+'
+            JMP CALLA02             ;
+;-----------------------------------;
+CALLA2      ADD #2,&DDP             ;           make room for xxxx of #$x.xxxx|&$x.xxxx|$0.xxxx(REG)
+            CMP.B #'#',TOS          ;
+            JNZ CALLA3
+            MOV #13Bh,S             ;           13Bh<<4 = opcode for CALLA #$x.xxxx
+CALLA21     ADD #1,&TOIN            ;           skip '#'|'&'
+CALLA22     CALL #SearchARG         ; -- Lo Hi
+            MOV @PSP+,2(T)          ; -- Hi     store #$xxxx|&$xxxx
+            JMP CALLA03             ;           update opcode with $x. and store opcode
+;-----------------------------------;
+CALLA3      CMP.B #'&',TOS   
+            JNZ CALLA4              ;
+            ADD #2,S                ;           138h<<4 = opcode for CALLA &$x.xxxx
+            JMP CALLA21
+;-----------------------------------;
+CALLA4      MOV.B #'(',TOS          ; -- "("
+            SUB #1,S                ;           135h<<4 = opcode for CALLA $0.xxxx(REG)
+CALLA41     CALL #SearchARG         ; -- Lo Hi
+            MOV @PSP+,2(T)          ; -- Hi     store $xxxx 
+            MOV #')',TOS            ; -- ')'
+            JMP CALLA02             ;           search Rn and update opcode
     
-
     .ENDIF ; EXTENDED_MEM
index ea09ca3..38c253a 100644 (file)
 
 
-;COMPARE ( c-addr1 u1 c-addr2 u2 -- n )
-;https://forth-standard.org/standard/string/COMPARE
-;Compare the string specified by c-addr1 u1 to the string specified by c-addr2 u2. 
-;The strings are compared, beginning at the given addresses, character by character, 
-;up to the length of the shorter string or until a difference is found. 
-;If the two strings are identical, n is zero. 
-;If the two strings are identical up to the length of the shorter string, 
-;   n is minus-one (-1) if u1 is less than u2 and one (1) otherwise. 
-;If the two strings are not identical up to the length of the shorter string, 
-;   n is minus-one (-1) if the first non-matching character in the string specified by c-addr1 u1 
-;   has a lesser numeric value than the corresponding character in the string specified by c-addr2 u2 and one (1) otherwise.
-        FORTHWORD "COMPARE"
-COMPARE
+; https://forth-standard.org/standard/tools/BracketTHEN
+; [THEN]
+        FORTHWORDIMM "[THEN]"   ; do nothing
+        MOV @IP+,PC
+
+; ; https://forth-standard.org/standard/string/COMPARE
+; ; COMPARE ( c-addr1 u1 c-addr2 u2 -- n )
+; ;Compare the string specified by c-addr1 u1 to the string specified by c-addr2 u2. 
+; ;The strings are compared, beginning at the given addresses, character by character, 
+; ;up to the length of the shorter string or until a difference is found. 
+; ;If the two strings are identical, n is zero. 
+; ;If the two strings are identical up to the length of the shorter string, 
+; ;   n is minus-one (-1) if u1 is less than u2 and one (1) otherwise. 
+; ;If the two strings are not identical up to the length of the shorter string, 
+; ;   n is minus-one (-1) if the first non-matching character in the string specified by c-addr1 u1 
+; ;   has a lesser numeric value than the corresponding character in the string specified by c-addr2 u2 and one (1) otherwise.
+;         FORTHWORD "COMPARE"
+; COMPARE
+;         MOV TOS,S       ;1 S = u2
+;         MOV @PSP+,Y     ;2 Y = addr2
+;         MOV @PSP+,T     ;2 T = u1     
+;         MOV @PSP+,X     ;2 X = addr1
+; COMPAR1 MOV T,TOS       ;1
+;         ADD S,TOS       ;1 TOS = u1+u2
+;         JZ  COMPEQUAL   ;2 u1=u2=0, Z=1,  end of all successfull comparisons
+;         SUB #1,T        ;1
+;         JN COMPLESS     ;2 u1<u2 if u1 < 0
+;         SUB #1,S        ;1
+;         JN COMPGREATER  ;2 u1>u2 if u2 < 0
+;         ADD #1,X        ;1 
+;         CMP.B @Y+,-1(X) ;4 char1-char2
+;         JZ COMPAR1      ;2 char1=char2  17~ loop
+;         JC  COMPGREATER ;2 char1>char2
+; COMPLESS                ;  char1<char2
+;         MOV #-1,TOS     ;1 Z=0
+;         MOV @IP+,PC     ;4
+; COMPGREATER
+;         MOV #1,TOS      ;1 Z=0
+; COMPEQUAL
+;         MOV @IP+,PC     ;4     20 + 5 words def'n
+
+; ; https://forth-standard.org/standard/tools/BracketELSE
+; ; [ELSE]      a few (smaller and faster) definition
+; ;Compilation:
+; ;Perform the execution semantics given below.
+; ;Execution:
+; ;( "<spaces>name ..." -- )
+; ;Skipping leading spaces, parse and discard space-delimited words from the parse area, 
+; ;including nested occurrences of [IF] ... [THEN] and [IF] ... [ELSE] ... [THEN], 
+; ;until the word [THEN] has been parsed and discarded. 
+; ;If the parse area becomes exhausted, it is refilled as with REFILL. 
+;         FORTHWORDIMM  "[ELSE]"          ; or [IF] if isnogood...
+; BRACKETELSE
+;         mDOCOL
+;         .word   lit,0                   
+; BRACKETELSE0
+;         .word   ONEPLUS                 ; 
+; BRACKETELSE1                            ;
+;         .word   FBLANK,WORDD,COUNT      ; -- addr u
+;         .word   DUP,QFBRAN,BRACKETELSE5 ;       u = 0 if end of line --> refill buffer then loop back
+;         .word   TWODUP                  ;
+;         .word   XSQUOTE                 ;
+;         .byte   6,"[THEN]"              ;
+;         .word   COMPARE                 ;
+;         .word   QTBRAN,BRACKETELSE2     ; if bad comparaison, jump for next comparaison
+;         .word   TWODROP,ONEMINUS        ; 2DROP, decrement count
+;         .word   QDUP,QTBRAN,BRACKETELSE1; loop back if count <> 0
+;         .word   EXIT                    ; else exit
+; BRACKETELSE2                            ;
+;         .word   TWODUP                  ;
+;         .word   XSQUOTE                 ;
+;         .byte   6,"[ELSE]"              ;
+;         .word   COMPARE                 ;
+;         .word   QTBRAN,BRACKETELSE3     ; if bad comparaison, jump for next comparaison
+;         .word   TWODROP,ONEMINUS        ; 2DROP, decrement count
+;         .word   QDUP,QTBRAN,BRACKETELSE0; if count <> 0 restore old count with loop back increment
+;         .word   EXIT                    ; else exit
+; BRACKETELSE3                            ;
+;         .word   XSQUOTE                 ;
+;         .byte   4,"[IF]"                ;
+;         .word   COMPARE                 ;
+;         .word   QTBRAN,BRACKETELSE1     ; if bad comparaison, loop back
+;         .word   BRAN,BRACKETELSE0       ; else increment loop back
+; BRACKETELSE5                            ;
+;         .word   TWODROP                 ;
+; ;^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^;
+; ; OPTION                                ; plus 5 words option
+; ;vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv;
+;         .word   XSQUOTE                 ;
+;         .byte   5,13,10,"ko "           ;
+;         .word   TYPE                    ; CR+LF ." ko "     to show false branch of conditionnal compilation
+; ;^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^;
+;         .word   REFILL                  ; REFILL Input Buffer with next line
+;         .word   SETIB                   ; SET Input Buffer pointers SOURCE_LEN, SOURCE_ORG and clear >IN
+;         .word   BRAN,BRACKETELSE1       ; then loop back   54 words without options
+
+BADCOMPBR               ; branch if string compare is false; [COMPARE,QTBRAN] replacement
         MOV TOS,S       ;1 S = u2
         MOV @PSP+,Y     ;2 Y = addr2
         MOV @PSP+,T     ;2 T = u1     
         MOV @PSP+,X     ;2 X = addr1
 COMPAR1 MOV T,TOS       ;1
         ADD S,TOS       ;1 TOS = u1+u2
-        JZ  COMPEQUAL   ;2 u1=u2=0: end of all successfull comparisons
+        JZ  COMPEQU     ;2 u1=u2=0, Z=1,  end of all successfull comparisons
         SUB #1,T        ;1
-        JN COMPLESS     ;2 u1<u2 if u1 < 0
+        JN COMPDIF      ;2 u1<u2 if u1 < 0
         SUB #1,S        ;1
-        JN COMPGREATER  ;2 u1>u2 if u2 < 0
+        JN COMPDIF      ;2 u1>u2 if u2 < 0
         ADD #1,X        ;1 
         CMP.B @Y+,-1(X) ;4 char1-char2
         JZ COMPAR1      ;2 char1=char2  17~ loop
-        JHS COMPGREATER ;2 char1>char2
-COMPLESS                ;  char1<char2
-        MOV #-1,TOS     ;1
+COMPDIF MOV @IP,IP      ; take branch
+CMPEND  MOV @PSP+,TOS
         MOV @IP+,PC     ;4
-COMPGREATER
-        MOV #1,TOS      ;1
-COMPEQUAL
-        MOV @IP+,PC     ;4     20 words
 
-;[THEN]
-;https://forth-standard.org/standard/tools/BracketTHEN
-        FORTHWORDIMM "[THEN]"   ; do nothing
-        mNEXT
-
-;;[ELSE]
-;;https://forth-standard.org/standard/tools/BracketELSE
-;;Compilation:
-;;Perform the execution semantics given below.
-;;Execution:
-;;( "<spaces>name ..." -- )
-;;Skipping leading spaces, parse and discard space-delimited words from the parse area, 
-;;including nested occurrences of [IF] ... [THEN] and [IF] ... [ELSE] ... [THEN], 
-;;until the word [THEN] has been parsed and discarded. 
-;;If the parse area becomes exhausted, it is refilled as with REFILL. 
-;        FORTHWORDIMM  "[ELSE]"
-;BRACKETELSE
-;        mDOCOL
-;        .word   lit,1                   ;   1
-;BRACKETELSE1                            ;   BEGIN
-;BRACKETELSE2                            ;       BEGIN
-;        .word   FBLANK,WORDD,COUNT      ;           BL WORD COUNT
-;        .word   DUP                     ;           DUP
-;        .word   QFBRAN,BRACKETELSE10     ;       WHILE
-;        .word   OVER,OVER               ;           2DUP 
-;        .word   XSQUOTE                 ;           S" [IF]"
-;        .byte   4,"[IF]"                ; 
-;        .word   COMPARE                 ;           COMPARE
-;        .word   QTBRAN,BRACKETELSE3     ;           0= IF
-;        .word   TWODROP,ONEPLUS         ;               2DROP 1+
-;        .word   BRAN,BRACKETELSE8       ;           (ENDIF)
-;BRACKETELSE3                            ;           ELSE
-;        .word   OVER,OVER               ;               2DUP
-;        .word   XSQUOTE                 ;               S" [ELSE]"
-;        .byte   6,"[ELSE]"              ; 
-;        .word   COMPARE                 ;               COMPARE
-;        .word   QTBRAN,BRACKETELSE5     ;               0= IF
-;        .word   TWODROP,ONEMINUS        ;                   2DROP 1-
-;        .word   DUP,QFBRAN,BRACKETELSE4  ;                  DUP IF
-;        .word   ONEPLUS                 ;                       1+
-;BRACKETELSE4                            ;                   THEN
-;        .word   BRAN,BRACKETELSE7       ;               (ENDIF)
-;BRACKETELSE5                            ;               ELSE
-;        .word   XSQUOTE                 ;                   S" [THEN]"
-;        .byte   6,"[THEN]"              ; 
-;        .word   COMPARE                 ;                   COMPARE
-;        .word   QTBRAN,BRACKETELSE6     ;                   0= IF
-;        .word   ONEMINUS                ;                       1-
-;BRACKETELSE6                            ;                   THEN
-;BRACKETELSE7                            ;               THEN
-;BRACKETELSE8                            ;           THEN
-;        .word   QDUP                    ;           ?DUP
-;        .word   QTBRAN,BRACKETELSE9     ;           0= IF
-;        .word   EXIT                    ;               EXIT
-;BRACKETELSE9                            ;           THEN
-;        .word   BRAN,BRACKETELSE2       ;       REPEAT
-;BRACKETELSE10                           ;
-;        .word   TWODROP                 ;       2DROP
-;        .word   XSQUOTE                 ;
-;        .byte   5,13,10,"ko "           ;
-;        .word   TYPE                    ;       CR+LF ." ko "     to show false branch of conditionnal compilation
-;        .word   REFILL                  ;       REFILL
-;        .word   SETIB                   ;               SET Input Buffer pointers SOURCE_LEN, SOURCE_ORG and clear >IN
-;        .word   BRAN,BRACKETELSE1       ;   AGAIN  65 words
+TOQTB                   ; [TWODROP,ONEMINUS,?DUP,QTBRAN] replacement
+        ADD #2,PSP      ;1   -- savedTOS TOS
+        SUB #1,0(PSP)   ;3   -- savedTOS-1 TOS
+        JNZ COMPDIF     ;2   -- cnt     take branch
+        ADD #2,PSP      ;1   --
+COMPEQU ADD #2,IP       ;               skip branch
+        JMP CMPEND      ; 25 words
 
-;
-;[ELSE]      a few (smaller and faster) definition
-;https://forth-standard.org/standard/tools/BracketELSE
+; https://forth-standard.org/standard/tools/BracketELSE
+; [ELSE]      a few (smaller and faster) definition
 ;Compilation:
 ;Perform the execution semantics given below.
 ;Execution:
@@ -112,50 +133,48 @@ COMPEQUAL
 ;including nested occurrences of [IF] ... [THEN] and [IF] ... [ELSE] ... [THEN], 
 ;until the word [THEN] has been parsed and discarded. 
 ;If the parse area becomes exhausted, it is refilled as with REFILL. 
-        FORTHWORDIMM  "[ELSE]"          ; or [IF] isnogood...
+        FORTHWORDIMM  "[ELSE]"          ; or [IF] if isnogood...
 BRACKETELSE
         mDOCOL
         .word   lit,0                   
 BRACKETELSE0
         .word   ONEPLUS                 ; 
 BRACKETELSE1                            ;
-        .word   FBLANK,WORDD,COUNT      ;
-        .word   DUP,QFBRAN,BRACKETELSE5 ; if end of line refill buffer then loop back
+        .word   FBLANK,WORDD,COUNT      ; -- addr u
+        .word   DUP,QFBRAN,BRACKETELSE5 ;       u = 0 if end of line --> refill buffer then loop back
         .word   TWODUP                  ;
         .word   XSQUOTE                 ;
         .byte   6,"[THEN]"              ;
-        .word   COMPARE                 ;
-        .word   QTBRAN,BRACKETELSE2     ; if bad comparaison, jump for next comparaison
-        .word   TWODROP,ONEMINUS        ; 2DROP, decrement count
-        .word   QDUP,QTBRAN,BRACKETELSE1; loop back if count <> 0
-        .word   EXIT                    ; else exit
+        .word   BADCOMPBR,BRACKETELSE2  ; if bad string comparaison, jump for next comparaison
+        .word   TOQTB,BRACKETELSE1      ; 2DROP,  count-1, loop back if count <> 0, else DROP
+        .word   EXIT                    ; then exit
 BRACKETELSE2                            ;
         .word   TWODUP                  ;
         .word   XSQUOTE                 ;
         .byte   6,"[ELSE]"              ;
-        .word   COMPARE                 ;
-        .word   QTBRAN,BRACKETELSE3     ; if bad comparaison, jump for next comparaison
-        .word   TWODROP,ONEMINUS        ; 2DROP, decrement count
-        .word   QDUP,QTBRAN,BRACKETELSE0; if count <> 0 restore old count with loop back increment
-        .word   EXIT                    ; else exit
+        .word   BADCOMPBR,BRACKETELSE3  ; if bad string comparaison, jump for next comparaison
+        .word   TOQTB,BRACKETELSE0      ; 2DROP, count-1, loop back with count+1 if count <> 0, else DROP
+        .word   EXIT                    ; then exit
 BRACKETELSE3                            ;
         .word   XSQUOTE                 ;
         .byte   4,"[IF]"                ;
-        .word   COMPARE                 ;
-        .word   QTBRAN,BRACKETELSE1     ; if bad comparaison, loop back
-        .word   BRAN,BRACKETELSE0       ; else increment loop back
+        .word   BADCOMPBR,BRACKETELSE1  ; if bad string comparaison, loop back
+        .word   BRAN,BRACKETELSE0       ; else loop back with count+1
 BRACKETELSE5                            ;
         .word   TWODROP                 ;
+;^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^;
+; OPTION                                ; plus 5 words option
+;vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv;
         .word   XSQUOTE                 ;
         .byte   5,13,10,"ko "           ;
         .word   TYPE                    ; CR+LF ." ko "     to show false branch of conditionnal compilation
-        .word   REFILL                  ; REFILL Input Buffer
+;^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^;
+        .word   REFILL                  ; REFILL Input Buffer with next line
         .word   SETIB                   ; SET Input Buffer pointers SOURCE_LEN, SOURCE_ORG and clear >IN
-        .word   BRAN,BRACKETELSE1       ; then loop back   58 words
-
+        .word   BRAN,BRACKETELSE1       ; then loop back   44 words without options
 
-;[IF]
-;https://forth-standard.org/standard/tools/BracketIF
+; https://forth-standard.org/standard/tools/BracketIF
+; [IF]
 ;Compilation:
 ;Perform the execution semantics given below.
 ;Execution: ;( flag | flag "<spaces>name ..." -- )
@@ -171,10 +190,17 @@ BRACKETIF
         CMP #0,TOS
         MOV @PSP+,TOS
         JZ BRACKETELSE
-        mNEXT
+        MOV @IP+,PC
 
-;[DEFINED]
-;https://forth-standard.org/standard/tools/BracketDEFINED
+; https://forth-standard.org/standard/core/NIP
+; NIP      x1 x2 -- x2         Drop the first item below the top of stack
+    .IFNDEF NIP
+NIP         ADD #2,PSP      ; 1
+            MOV @IP+,PC     ; 4
+    .ENDIF
+
+; https://forth-standard.org/standard/tools/BracketDEFINED
+; [DEFINED]
 ;Compilation:
 ;Perform the execution semantics given below.
 ;Execution:
@@ -184,11 +210,11 @@ BRACKETIF
 ;otherwise return a false flag. [DEFINED] is an immediate word.
 
         FORTHWORDIMM  "[DEFINED]"
-        mDOCOL
+DEFINED mDOCOL
         .word   FBLANK,WORDD,FIND,NIP,EXIT
 
-;[UNDEFINED]
-;https://forth-standard.org/standard/tools/BracketUNDEFINED
+; https://forth-standard.org/standard/tools/BracketUNDEFINED
+; [UNDEFINED]
 ;Compilation:
 ;Perform the execution semantics given below.
 ;Execution: ( "<spaces>name ..." -- flag )
@@ -197,33 +223,7 @@ BRACKETIF
 ;otherwise return a true flag.
         FORTHWORDIMM  "[UNDEFINED]"
         mDOCOL
-        .word   FBLANK,WORDD,FIND,NIP,ZEROEQUAL,EXIT
-
-;; CORE EXT  MARKER
-;;https://forth-standard.org/standard/core/MARKER
-;;( "<spaces>name" -- )
-;;Skip leading space delimiters. Parse name delimited by a space. Create a definition for name
-;;with the execution semantics defined below.
-
-;;name Execution: ( -- )
-;;Restore all dictionary allocation and search order pointers to the state they had just prior to the
-;;definition of name. Remove the definition of name and all subsequent definitions. Restoration
-;;of any structures still existing that could refer to deleted definitions or deallocated data space is
-;;not necessarily provided. No other contextual information such as numeric base is affected
-
-MARKER_DOES FORTHtoASM                  ; execution part
-            MOV     @RSP+,IP            ; -- PFA
-            MOV     @TOS+,&INIVOC       ;       set VOC_LINK value for RST_STATE
-            MOV     @TOS,&INIDP         ;       set DP value for RST_STATE
-            MOV     @PSP+,TOS           ; --
-            MOV     #RST_STATE,PC       ;       execute RST_STATE, PWR_STATE then STATE_DOES
-
-            FORTHWORD "MARKER"          ; definition part
-            CALL    #HEADER             ;4 W = DP+4
-            MOV     #DODOES,-4(W)       ;4 CFA = DODOES
-            MOV     #MARKER_DOES,-2(W)  ;4 PFA = MARKER_DOES
-            MOV     &LASTVOC,0(W)       ;5 [BODY] = VOCLINK to be restored
-            SUB     #2,Y                ;1 Y = LFA
-            MOV     Y,2(W)              ;3 [BODY+2] = LFA = DP to be restored
-            ADD     #4,&DDP             ;3
-            MOV     #GOOD_CSP,PC
+        .word   DEFINED
+        .word   $+2
+        MOV @RSP+,IP
+        MOV #ZEROEQUAL,PC
index 6dc9b33..0ef20a7 100644 (file)
 ; example : POPM #6,IP   pop Y,X,W,T,S,IP registers from return stack
 
 
+;;Z SKIP      char -- addr               ; skip all occurring character 'char'
+;            FORTHWORD "SKIP"            ; used by assembler to parse input stream
+SKIP        MOV #SOURCE_LEN,Y       ;2
+            MOV TOS,W               ; -- char           W=char
+            MOV @Y+,X               ;2 -- char           W=char  X=buf_length
+            MOV @Y,TOS              ;2 -- Start_buf_adr  W=char  X=buf_length
+            ADD TOS,X               ; -- Start_buf_adr  W=char  X=Start_buf_adr+buf_length=End_buf_addr
+            ADD &TOIN,TOS           ; -- Parse_Adr      W=char  X=End_buf_addr
+SKIPLOOP    CMP TOS,X               ; -- Parse_Adr      W=char  X=End_buf_addr
+            JZ SKIPEND              ; -- Parse_Adr      if end of buffer
+            CMP.B @TOS+,W           ; -- Parse_Adr      does character match?
+            JZ SKIPLOOP             ; -- Parse_Adr+1
+SKIPNEXT    SUB #1,TOS              ; -- addr
+SKIPEND     MOV TOS,W               ;
+            SUB @Y,W                ; -- addr           W=Parse_Addr-Start_buf_adr=Toin
+            MOV W,&TOIN             ;
+            MOV @IP+,PC             ; 4
+
 ; ----------------------------------------------------------------------
 ; DTCforthMSP430FR5xxx ASSEMBLER : search argument "xxxx", IP is free
 ; ----------------------------------------------------------------------
 
-;SearchARG                           ; separator -- n|d or abort" not found"
-;; Search ARG of "#xxxx,"            ; <== PARAM10
-;; Search ARG of "&xxxx,"            ; <== PARAM111
-;; Search ARG of "xxxx(REG),"        ; <== PARAM130
-;; Search ARG of ",&xxxx"            ; <== PARAM111 <== PARAM20
-;; Search ARG of ",xxxx(REG)"        ; <== PARAM210
-;            PUSHM #2,S              ;                   PUSHM S,T as OPCODE, OPCODEADR
-;            ASMtoFORTH              ; -- separator      search word first
-;            .word   WORDD,FIND      ; -- addr
-;            .word QTBRAN,SearchARGW ; -- addr           if word found
-;            .word   QNUMBER         ;
-;            .word   QFBRAN,NotFound ; -- addr           ABORT if not found
-;FSearchEnd  .word   SearchEnd       ; -- value          goto SearchEnd if number found
-;SearchARGW  FORTHtoASM              ; -- xt             xt = CFA
-;            MOV     @TOS+,X         ; -- PFA
-;QDODOES     SUB     #DODOES,X       ;                   DODOES = 1284h
-;            JNZ     QDOCON          ;
-;            ADD     #2,TOS          ; -- BODY           leave BODY address for DOES words
-;            JMP     SearchEnd       ;
-;QDOCON      CMP     #1,X            ; -- PFA            DOCON = 1285h
-;            JNZ     QDOVAR          ;
-;            MOV     @TOS,TOS        ; -- cte            replace PFA by [PFA] for CONSTANT and CREATE words
-;            JMP     SearchEnd       ;
-;QDOVAR      CMP     #2,X            ; -- PFA            DOVAR = 1286h
-;            JZ      SearchEnd       ;                   if DOVAR nothing to do
-;            SUB     #2,TOS          ; -- CFA            replace PFA by CFA for all other words
-;SearchEnd   POPM    #2,S            ;                   POPM T,S
-;            RET                     ;
-
 SearchARG                           ; separator -- n|d or abort" not found"
 ; Search ARG of "#xxxx,"            ; <== PARAM10
 ; Search ARG of "&xxxx,"            ; <== PARAM111
@@ -86,30 +75,30 @@ SearchARG                           ; separator -- n|d or abort" not found"
             PUSHM #2,S              ;                   PUSHM S,T as OPCODE, OPCODEADR
             ASMtoFORTH              ; -- separator      search word first
             .word   WORDD,FIND      ; -- addr
-            .word QTBRAN,SearchARGW ; -- addr           if word found
+            .word   QTBRAN,ARGWORD  ; -- addr           if Word found
             .word   QNUMBER         ;
             .word   QFBRAN,NotFound ; -- addr           ABORT if not found
 FSearchEnd  .word   SearchEnd       ; -- value          goto SearchEnd if number found
-SearchARGW  FORTHtoASM              ; -- xt             xt = CFA
+ARGWORD     .word   $+2             ; -- xt             xt = CFA
             MOV     @TOS+,X         ; -- PFA
 QDOVAR      SUB     #DOVAR,X        ;                   DOVAR = 1286h
-            JZ      SearchEnd       ;
-            ADD     #1,X            ; -- PFA            DOCON = 1285h
-            JNZ     QDODOES         ;
-            MOV     @TOS,TOS        ; -- cte
+ISDOVAR     JZ      SearchEnd       ;
+QDOCON      ADD     #1,X            ; -- PFA            DOCON = 1285h
+ISNOTDOCON  JNZ     QDODOES         ;
+ISDOCON     MOV     @TOS,TOS        ; -- cte
             JMP     SearchEnd       ;
 QDODOES     ADD     #2,TOS          ; -- BODY           leave BODY address for DOES words
             ADD     #1,X            ;                   DODOES = 1284h
-            JZ      SearchEnd       ;        
-            SUB     #4,TOS          ; -- CFA
+ISDODOES    JZ      SearchEnd       ;        
+ISOTHER     SUB     #4,TOS          ; -- CFA
 SearchEnd   POPM    #2,S            ;                   POPM T,S
-            RET                     ;
+            MOV     @RSP+,PC        ; RET
 
 ; Arg_Double_to_single conversion needed only for OPCODE type V|VI, 2th pass.
 ARGD2S      BIT #UF9,SR             ; -- Lo Hi
             JZ ARGD2SEND
             MOV @PSP+,TOS           ; -- Lo         skip hi
-ARGD2SEND   RET
+ARGD2SEND   MOV @RSP+,PC            ;
 
 ; ----------------------------------------------------------------------
 ; DTCforthMSP430FR5xxx ASSEMBLER : search REG
@@ -139,13 +128,13 @@ SearchREG   PUSHM #2,S              ;                   PUSHM S,T as OPCODE, OPC
             ASMtoFORTH              ;               search xx of Rxx
             .word WORDD,QNUMBER     ;
             .word QFBRAN,NOTaREG    ; -- xxxx       if Not a Number
-            FORTHtoASM              ; -- Rn         number is found
+            .word   $+2             ; -- Rn         number is found
             ADD #2,RSP              ;               remove >IN
             CMP #16,TOS             ; -- Rn       
-            JHS BOUNDERROR          ;               abort if Rn out of bounds
-            JLO SearchEnd           ; -- Rn         Z=0 ==> found
+            J BOUNDERROR          ;               abort if Rn out of bounds
+            JNC SearchEnd           ; -- Rn         Z=0 ==> found
 
-NOTaREG     FORTHtoASM              ; -- addr       Z=1
+NOTaREG     .word   $+2             ; -- addr       Z=1
             MOV @RSP+,&TOIN         ; -- addr       restore >IN
             JMP SearchEnd           ; -- addr       Z=1 ==> not a register 
 
@@ -161,7 +150,7 @@ NOTaREG     FORTHtoASM              ; -- addr       Z=1
                                     ; sep is comma for src and space for dst .
 PARAM1      mDOCOL                  ; -- sep        OPCODES types I|V sep = ','  OPCODES types II|VI sep = ' '
             .word   FBLANK,SKIP     ; -- sep addr
-            FORTHtoASM              ; -- sep addr
+            .word   $+2             ; -- sep addr
             MOV     #0,S            ; -- sep addr   reset OPCODE
             MOV     &DDP,T          ; -- sep addr   HERE --> OPCODEADR (opcode is preset to its address !)
             ADD     #2,&DDP         ; -- sep addr   cell allot for opcode
@@ -203,7 +192,7 @@ StoreTOS                            ;               <== TYPE1DOES
 ; endcase of all "REG"|"@REG"|"@REG+"               <== PARAM124
 PARAMENDOF  MOV @PSP+,TOS           ; --
             MOV @RSP+,IP            ;
-            mNEXT                   ; --            S=OPCODE,T=OPCODEADR
+            MOV @IP+,PC                   ; --            S=OPCODE,T=OPCODEADR
 ; ----------------------------------;
 PARAM11     CMP.B   #'&',W          ; -- sep
             JNE     PARAM12
@@ -266,7 +255,7 @@ PARAM3                              ; for OPCODES TYPE III
 ; ----------------------------------;
 PARAM2      mDOCOL                  ;               parse input buffer until BL and compute this 2th operand
             .word   FBLANK,SKIP     ;               skip space(s) between "arg1," and "arg2" if any; use not S,T.
-            FORTHtoASM              ; -- c-addr     search for '&' of "&xxxx
+            .word   $+2             ; -- c-addr     search for '&' of "&xxxx
             CMP.B   #'&',0(TOS)     ;
             MOV     #20h,TOS        ; -- ' '        as WORD separator to find xxxx of ",&xxxx"
             JNE     PARAM21         ;               '&' not found
@@ -314,83 +303,83 @@ PARAM210    ADD     #0080h,S        ;               set AD=1
 ; TYPE1DOES     -- BODYDOES      search and compute PARAM1 & PARAM2 as src and dst operands then compile instruction
 TYPE1DOES   .word   lit,',',PARAM1  ; -- BODYDOES
             .word   PARAM2          ; -- BODYDOES           char separator (BL) included in PARAM2
-            FORTHtoASM              ;
+            .word   $+2             ;
 MAKEOPCODE  MOV     T,X             ; -- opcode             X= OPCODEADR to compile opcode
             MOV     @TOS,TOS        ; -- opcode             part of instruction
             BIS     S,TOS           ; -- opcode             opcode is complete
             JMP     StoreTOS        ; --                    then EXIT
 
             asmword "MOV"
-            mDODOES
+            CALL rDODOES
             .word   TYPE1DOES,4000h
             asmword "MOV.B"
-            mDODOES
+            CALL rDODOES
             .word   TYPE1DOES,4040h
             asmword "ADD"
-            mDODOES
+            CALL rDODOES
             .word   TYPE1DOES,5000h
             asmword "ADD.B"
-            mDODOES
+            CALL rDODOES
             .word   TYPE1DOES,5040h
             asmword "ADDC"
-            mDODOES
+            CALL rDODOES
             .word   TYPE1DOES,6000h
             asmword "ADDC.B"
-            mDODOES
+            CALL rDODOES
             .word   TYPE1DOES,6040h
             asmword "SUBC"
-            mDODOES
+            CALL rDODOES
             .word   TYPE1DOES,7000h
             asmword "SUBC.B"
-            mDODOES
+            CALL rDODOES
             .word   TYPE1DOES,7040h
             asmword "SUB"
-            mDODOES
+            CALL rDODOES
             .word   TYPE1DOES,8000h
             asmword "SUB.B"
-            mDODOES
+            CALL rDODOES
             .word   TYPE1DOES,8040h
             asmword "CMP"
-            mDODOES
+            CALL rDODOES
             .word   TYPE1DOES,9000h
             asmword "CMP.B"
-            mDODOES
+            CALL rDODOES
             .word   TYPE1DOES,9040h
             asmword "DADD"
-            mDODOES
+            CALL rDODOES
             .word   TYPE1DOES,0A000h
             asmword "DADD.B"
-            mDODOES
+            CALL rDODOES
             .word   TYPE1DOES,0A040h
             asmword "BIT"
-            mDODOES
+            CALL rDODOES
             .word   TYPE1DOES,0B000h
             asmword "BIT.B"
-            mDODOES
+            CALL rDODOES
             .word   TYPE1DOES,0B040h
             asmword "BIC"
-            mDODOES
+            CALL rDODOES
             .word   TYPE1DOES,0C000h
             asmword "BIC.B"
-            mDODOES
+            CALL rDODOES
             .word   TYPE1DOES,0C040h
             asmword "BIS"
-            mDODOES
+            CALL rDODOES
             .word   TYPE1DOES,0D000h
             asmword "BIS.B"
-            mDODOES
+            CALL rDODOES
             .word   TYPE1DOES,0D040h
             asmword "XOR"
-            mDODOES
+            CALL rDODOES
             .word   TYPE1DOES,0E000h
             asmword "XOR.B"
-            mDODOES
+            CALL rDODOES
             .word   TYPE1DOES,0E040h
             asmword "AND"
-            mDODOES
+            CALL rDODOES
             .word   TYPE1DOES,0F000h
             asmword "AND.B"
-            mDODOES
+            CALL rDODOES
             .word   TYPE1DOES,0F040h
 
 ; ----------------------------------------------------------------------
@@ -411,7 +400,7 @@ MAKEOPCODE  MOV     T,X             ; -- opcode             X= OPCODEADR to comp
 ; ----------------------------------------------------------------------
 
 TYPE2DOES   .word   FBLANK,PARAM1   ; -- BODYDOES
-            FORTHtoASM              ;
+            .word   $+2             ;
             MOV     S,W             ;
             AND     #0070h,S        ;                   keep B/W & AS infos in OPCODE
             SWPB    W               ;                   (REG org --> REG dst)
@@ -420,31 +409,31 @@ BIS_ASMTYPE BIS     W,S             ; -- BODYDOES       add it in OPCODE
             JMP     MAKEOPCODE      ; -- then end
 
             asmword "RRC"           ; Rotate Right through Carry ( word)
-            mDODOES
+            CALL rDODOES
             .word   TYPE2DOES,1000h
             asmword "RRC.B"         ; Rotate Right through Carry ( byte)
-            mDODOES
+            CALL rDODOES
             .word   TYPE2DOES,1040h
             asmword "SWPB"          ; Swap bytes
-            mDODOES
+            CALL rDODOES
             .word   TYPE2DOES,1080h
             asmword "RRA"
-            mDODOES
+            CALL rDODOES
             .word   TYPE2DOES,1100h
             asmword "RRA.B"
-            mDODOES
+            CALL rDODOES
             .word   TYPE2DOES,1140h
             asmword "SXT"
-            mDODOES
+            CALL rDODOES
             .word   TYPE2DOES,1180h
             asmword "PUSH"
-            mDODOES
+            CALL rDODOES
             .word   TYPE2DOES,1200h
             asmword "PUSH.B"
-            mDODOES
+            CALL rDODOES
             .word   TYPE2DOES,1240h
             asmword "CALL"
-            mDODOES
+            CALL rDODOES
             .word   TYPE2DOES,1280h
 
 BOUNDERRWM1 ADD     #1,W            ; <== RRAM|RRUM|RRCM|RLAM error
@@ -475,14 +464,14 @@ BOUNDERROR                          ; <== REG number error
 ; RxxM syntax: RxxM #n,REG  with 0 < n < 5 
 
 TYPE3DOES   .word   FBLANK,SKIP     ;                       skip spaces if any
-            FORTHtoASM              ; -- BODYDOES c-addr
+            .word   $+2             ; -- BODYDOES c-addr
             ADD     #1,&TOIN        ;                       skip "#"
             MOV     #',',TOS        ; -- BODYDOES ","
             ASMtoFORTH
             .word   WORDD,QNUMBER
             .word   QFBRAN,NotFound ;                       ABORT
             .word   PARAM3          ; -- BODYDOES 0x000N    S=OPCODE = 0x000R
-            FORTHtoASM
+            .word   $+2
             MOV     TOS,W           ; -- BODYDOES n         W = n
             MOV     @PSP+,TOS       ; -- BODYDOES
             SUB     #1,W            ;                       W = n floored to 0
@@ -496,50 +485,50 @@ PxxxINSTRU  MOV     S,Y             ;                       S=REG, Y=REG to test
 POPMINSTRU  SUB     W,S             ;                       to make POPM opcode, compute first REG to POP; TI is complicated....
 PUSHMINSTRU SUB     W,Y             ;                       Y=REG-(n-1)
             CMP     #16,Y
-            JHS     BOUNDERRWM1     ;                       JC=JHS    (U>=)
+            J     BOUNDERRWM1     ;                       JC=JHS    (U>=)
             RLAM    #4,W            ;                       W = n << 4      
             JMP     BIS_ASMTYPE     ; BODYDOES --            
 RxxMINSTRU  CMP     #4,W            ;
-            JHS     BOUNDERRWM1     ;                       JC=JHS    (U>=)
+            J     BOUNDERRWM1     ;                       JC=JHS    (U>=)
             SWPB    W               ; -- BODYDOES           W = n << 8
             RLAM    #2,W            ;                       W = N << 10
             JMP     BIS_ASMTYPE     ; BODYDOES --
 
             asmword "RRCM.A"
-            mDODOES
+            CALL rDODOES
             .word   TYPE3DOES,0040h
             asmword "RRCM"
-            mDODOES
+            CALL rDODOES
             .word   TYPE3DOES,0050h
             asmword "RRAM.A"
-            mDODOES
+            CALL rDODOES
             .word   TYPE3DOES,0140h
             asmword "RRAM"
-            mDODOES
+            CALL rDODOES
             .word   TYPE3DOES,0150h
             asmword "RLAM.A"
-            mDODOES
+            CALL rDODOES
             .word   TYPE3DOES,0240h
             asmword "RLAM"
-            mDODOES
+            CALL rDODOES
             .word   TYPE3DOES,0250h
             asmword "RRUM.A"
-            mDODOES
+            CALL rDODOES
             .word   TYPE3DOES,0340h
             asmword "RRUM"
-            mDODOES
+            CALL rDODOES
             .word   TYPE3DOES,0350h
             asmword "PUSHM.A"
-            mDODOES
+            CALL rDODOES
             .word   TYPE3DOES,1400h
             asmword "PUSHM"
-            mDODOES
+            CALL rDODOES
             .word   TYPE3DOES,1500h
             asmword "POPM.A"
-            mDODOES
+            CALL rDODOES
             .word   TYPE3DOES,1600h
             asmword "POPM"
-            mDODOES
+            CALL rDODOES
             .word   TYPE3DOES,1700h
 
 ; ----------------------------------------------------------------------
@@ -556,35 +545,35 @@ RxxMINSTRU  CMP     #4,W            ;
 ; OPCODE(code) for TYPE JMP                         = 0x3Cxx + (offset AND 3FF)
 
             asmword "S>="           ; if >= assertion (opposite of jump if < )
-            mDOCON
+            CALL rDOCON
             .word   3800h
 
             asmword "S<"            ; if < assertion
-            mDOCON
+            CALL rDOCON
             .word   3400h
 
             asmword "0>="           ; if 0>= assertion  ; use only with IF UNTIL WHILE !
-            mDOCON
+            CALL rDOCON
             .word   3000h
 
             asmword "0<"            ; jump if 0<        ; use only with ?JMP ?GOTO !
-            mDOCON
+            CALL rDOCON
             .word   3000h
 
             asmword "U<"            ; if U< assertion
-            mDOCON
+            CALL rDOCON
             .word   2C00h
 
             asmword "U>="           ; if U>= assertion
-            mDOCON
+            CALL rDOCON
             .word   2800h
 
             asmword "0<>"           ; if <>0 assertion
-            mDOCON
+            CALL rDOCON
             .word   2400h
 
             asmword "0="            ; if =0 assertion
-            mDOCON
+            CALL rDOCON
             .word   2000h
 
 ;ASM IF      OPCODE -- @OPCODE1
@@ -593,7 +582,7 @@ ASM_IF      MOV     &DDP,W
             MOV     TOS,0(W)        ; compile incomplete opcode
             ADD     #2,&DDP
             MOV     W,TOS
-            mNEXT
+            MOV @IP+,PC
 
 ;ASM THEN     @OPCODE --        resolve forward branch
             asmword "THEN"
@@ -607,7 +596,7 @@ ASM_THEN1   MOV     @PSP+,TOS       ; --
             CMP     #512,W
             JC      BOUNDERRORW     ; (JHS) unsigned branch if u> 511
             BIS     W,0(Y)          ; --       [@OPCODE]=OPCODE completed
-            mNEXT
+            MOV @IP+,PC
 
 ;C ELSE     @OPCODE1 -- @OPCODE2    branch for IF..ELSE
             asmword "ELSE"
@@ -618,8 +607,6 @@ ASM_ELSE    MOV     &DDP,W          ; --        W=HERE
             MOV     W,0(PSP)        ; -- @OPCODE2 @OPCODE1
             JMP     ASM_THEN        ; -- @OPCODE2
 
-;C BEGIN    -- @BEGIN               same as FORTH counterpart
-
 ;C UNTIL    @BEGIN OPCODE --   resolve conditional backward branch
             asmword "UNTIL"
 ASM_UNTIL   MOV     @PSP+,W         ;  -- OPCODE                        W=@BEGIN
@@ -635,7 +622,7 @@ ASM_UNTIL2  MOV     @PSP+,TOS       ;  --
             BIS     W,Y             ;  --           Y=OPCODE (completed)
             MOV     Y,0(X)
             ADD     #2,&DDP
-            mNEXT
+            MOV @IP+,PC
 
 ;X AGAIN    @BEGIN --      uncond'l backward branch
 ;   unconditional backward branch
@@ -662,57 +649,57 @@ ASM_REPEAT  mDOCOL                  ; -- @WHILE @BEGIN
 ; FWx at the beginning of a line can resolve only one previous GOTO|?GOTO  FWx.
 ; BWx at the beginning of a line can be resolved by any subsequent GOTO|?GOTO BWx.
 
-BACKWDOES   FORTHtoASM
+BACKWDOES   .word   $+2
             MOV @RSP+,IP            ;
             MOV TOS,Y               ; -- PFA        Y = ASMBWx addr
             MOV @PSP+,TOS           ; --
             MOV @Y,W                ;               W = LABEL
             CMP #8,&TOIN            ;               are we colon 8 or more ?
-BACKWUSE    JHS ASM_UNTIL1          ;               yes, use this label  
+BACKWUSE    J ASM_UNTIL1          ;               yes, use this label  
 BACKWSET    MOV &DDP,0(Y)           ;               no, set LABEL = DP
-            mNEXT
+            MOV @IP+,PC
 
 ; backward label 1
             asmword "BW1"
-            mdodoes
+            CALL rDODOES
             .word BACKWDOES
             .word 0
 ; backward label 2
             asmword "BW2"
-            mdodoes
+            CALL rDODOES
             .word BACKWDOES
             .word 0
 ; backward label 3
             asmword "BW3"
-            mdodoes
+            CALL rDODOES
             .word BACKWDOES
             .word 0
 
-FORWDOES    FORTHtoASM
+FORWDOES    .word   $+2
             MOV @RSP+,IP
             MOV &DDP,W              ;
             MOV @TOS,Y              ; -- PFA        Y=[ASMFWx]
             CMP #8,&TOIN            ;               are we colon 8 or more ?
-FORWUSE     JLO ASM_THEN1           ;               no: resolve FWx with W=DDP, Y=ASMFWx
+FORWUSE     JNC ASM_THEN1           ;               no: resolve FWx with W=DDP, Y=ASMFWx
 FORWSET     MOV @PSP+,0(W)          ;               yes compile incomplete opcode
             ADD #2,&DDP             ;                   increment DDP
             MOV W,0(TOS)            ;                   store @OPCODE into ASMFWx
             MOV @PSP+,TOS           ;   --
-            mNEXT
+            MOV @IP+,PC
 
 ; forward label 1
             asmword "FW1"
-            mdodoes
+            CALL rDODOES
             .word FORWDOES
             .word 0
 ; forward label 2
             asmword "FW2"
-            mdodoes
+            CALL rDODOES
             .word FORWDOES
             .word 0
 ; forward label 3
             asmword "FW3"
-            mdodoes
+            CALL rDODOES
             .word FORWDOES
             .word 0
 
@@ -752,7 +739,7 @@ GOTONEXT    mDOCOL
 ;-----------------------------------;
 ACMS1       mDOCOL                  ; -- BODYDOES ','   
             .word   FBLANK,SKIP     ; -- BODYDOES ',' addr
-            FORTHtoASM              ;
+            .word   $+2             ;
             MOV.B @TOS,X            ;                   X=first char of opcode string
             MOV @PSP+,TOS           ; -- BODYDOES ','
             MOV @PSP+,S             ; -- ','            S=BODYDOES
@@ -768,7 +755,8 @@ ACMS102     RLAM #4,TOS             ;               8<<src
 ACMS103     BIS S,TOS               ;               update opcode with src|dst
             MOV TOS,0(T)            ;               save opcode
             MOV T,TOS               ; -- OPCODE_addr
-            mSEMI                   ;
+            MOV @RSP+,IP 
+            MOV @IP+,PC             ;
 ;-----------------------------------;
 ACMS11      CMP.B #'#',X            ; -- ','        X=addr
             JNE MOVA12              ;
@@ -812,7 +800,7 @@ MOVA14      BIS #0030h,S            ;               set xxxx(REG), opcode
 ;-----------------------------------;
 ACMS2       mDOCOL                  ; -- OPCODE_addr 
             .word FBLANK,SKIP       ; -- OPCODE_addr addr
-            FORTHtoASM              ;
+            .word   $+2             ;
             MOV @PSP+,T             ; -- addr       T=OPCODE_addr
             MOV @T,S                ;               S=opcode
             MOV.B @TOS,X            ; -- addr       X=first char of string instruction         
@@ -853,16 +841,16 @@ TYPE4DOES   .word   lit,','         ; -- BODYDOES ","        char separator for
             .word   DROP,EXIT
 
             asmword "MOVA"
-            mDODOES
+            CALL rDODOES
             .word   TYPE4DOES,00C0h
             asmword "CMPA"
-            mDODOES
+            CALL rDODOES
             .word   TYPE4DOES,00D0h
             asmword "ADDA"
-            mDODOES
+            CALL rDODOES
             .word   TYPE4DOES,00E0h
             asmword "SUBA"
-            mDODOES
+            CALL rDODOES
             .word   TYPE4DOES,00F0h
 
 ; --------------------------------------------------------------------------------
@@ -875,7 +863,7 @@ TYPE4DOES   .word   lit,','         ; -- BODYDOES ","        char separator for
             asmword "CALLA"
             mDOCOL
             .word FBLANK,SKIP       ; -- addr
-            FORTHtoASM
+            .word   $+2
             MOV &DDP,T              ;           T = DDP
             ADD #2,&DDP             ;           make room for opcode
             MOV.B @TOS,TOS          ; -- char   First char of opcode
@@ -888,7 +876,8 @@ CALLA03     RLAM #4,S               ;           (opcode>>4)<<4 = opcode
             BIS TOS,S               ;           update opcode
             MOV S,0(T)              ;           store opcode
             MOV @PSP+,TOS
-            mSEMI
+            MOV @RSP+,IP 
+            MOV @IP+,PC
 ;-----------------------------------;
 CALLA1      ADD #2,S                ;           136h<<4 = opcode for CALLA @REG
             CMP.B #'@',TOS          ; -- char   Search @REG
@@ -928,7 +917,7 @@ CALLA41     CALL #SearchARG         ; -- Lo Hi
 
 PRMX1       mDOCOL                  ; -- sep            OPCODES type V|VI separator = ','|' '
             .word FBLANK,SKIP       ; -- sep addr
-            FORTHtoASM              ;
+            .word   $+2             ;
             MOV.B @TOS,X            ; -- sep addr       X= first char of opcode string
             MOV @PSP+,TOS           ; -- sep
             MOV #1800h,S            ;                   init S=Extended word
@@ -937,7 +926,8 @@ PRMX10      CMP.B #'R',X            ; -- sep
             JNZ PRMX11              ;
 PRMX101     CALL #SearchREG         ; -- Rn             Rn of REG; call SearchREG only to update >IN
 PRMX102     MOV S,TOS               ; -- EW             update Extended word
-PRMX103     mSEMI                   ; -- Ext_Word
+PRMX103     MOV @RSP+,IP 
+            MOV @IP+,PC             ; -- Ext_Word
 ;-----------------------------------;
 PRMX11      MOV #0,&RPT_WORD        ;                   clear RPT
             CMP.B #'#',X            ; -- sep
@@ -984,7 +974,7 @@ PRMX141     MOV #')',TOS            ; -- Hi ')'
 ;-----------------------------------;
 PRMX2       mDOCOL                  ; -- Extended_Word 
             .word   FBLANK,SKIP     ; -- Extended_Word addr
-            FORTHtoASM              ;
+            .word   $+2             ;
             MOV @PSP+,S             ; -- addr     S=Extended_Word
             MOV.B @TOS,X            ; -- addr     X=first char of code instruction
             MOV #' ',TOS            ; -- ' '
@@ -1005,19 +995,35 @@ PRMX22      MOV #'(',TOS            ; -- '('      as WORD separator to find xxxx
             CALL #SearchARG         ; -- Lo Hi    search x.xxxx of x.xxxx(REG)
             JMP PRMX213
     
+;; UPDATE_eXtendedWord
+;;-----------------------------------;
+;UPDATE_XW                           ;   BODYDOES Extended_Word -- BODYDOES+2    >IN R--
+;            MOV &DDP,T              ;
+;            ADD #2,&DDP             ;                   make room for extended word
+;            MOV TOS,S               ;                   S = Extended_Word
+;            MOV @PSP+,TOS           ; -- BODYDOES
+;            BIS &RPT_WORD,S         ;                   update Extended_word with RPT_WORD
+;            MOV #0,&RPT_WORD        ;                   clear RPT before next instruction
+;            BIS @TOS+,S             ; -- BODYDOES+2     update Extended_word with [BODYDOES] = A/L bit
+;            MOV S,0(T)              ;                   store extended word
+;            MOV @RSP+,&TOIN         ;                   >IN R--     restore >IN at the start of instruction string
+;            MOV @IP+,PC             ;
+;;-----------------------------------;
+
+;-----------------------------------;
 ; UPDATE_eXtendedWord
 ;-----------------------------------;
-UPDATE_XW                           ;   BODYDOES Extended_Word -- BODYDOES+2    >IN R--
+UPDATE_XW                           ;   BODYDOES >IN Extended_Word -- BODYDOES+2
+            MOV @PSP+,&TOIN         ; -- BODYDOES EW    restore >IN at the start of instruction string
             MOV &DDP,T              ;
             ADD #2,&DDP             ;                   make room for extended word
             MOV TOS,S               ;                   S = Extended_Word
-            MOV @PSP+,TOS           ; -- BODYDOES
+            MOV @PSP+,TOS           ;
             BIS &RPT_WORD,S         ;                   update Extended_word with RPT_WORD
             MOV #0,&RPT_WORD        ;                   clear RPT before next instruction
             BIS @TOS+,S             ; -- BODYDOES+2     update Extended_word with [BODYDOES] = A/L bit
             MOV S,0(T)              ;                   store extended word
-            MOV @RSP+,&TOIN         ;                   >IN R--     restore >IN at the start of instruction string
-            mNEXT                   ;
+            MOV @IP+,PC             ;
 ;-----------------------------------;
 
 ; --------------------------------------------------------------------------------
@@ -1034,119 +1040,126 @@ UPDATE_XW                           ;   BODYDOES Extended_Word -- BODYDOES+2
 ; all numeric arguments must be written as DOUBLE numbers (including a point) : $x.xxxx
 
 TYPE5DOES                               ; -- BODYDOES
-            .word   LIT,TOIN,FETCH,TOR  ; R-- >IN                    save >IN for 2th pass
-            .word   lit,','             ; -- BODYDOES ','            char separator for PRMX1
-            .word   PRMX1,PRMX2         ; -- BODYDOES Extended_Word
+;            .word   LIT,TOIN,FETCH,TOR  ;               R-- >IN      save >IN for 2th pass
+;            .word   lit,','             ; -- BODYDOES ','            char separator for PRMX1
+;            .word   PRMX1,PRMX2         ; -- BODYDOES Extended_Word
+;            .word   UPDATE_XW           ; -- BODYDOES+2              >IN is restored ready for 2th pass
+;            .word   BRAN,TYPE1DOES      ; -- BODYDOES+2              2th pass: completes instruction with opcode = [BODYDOES+2]
+            .word   LIT,TOIN,FETCH      ; -- BODYDOES >IN
+            .word   lit,','             ; -- BODYDOES >IN ','            char separator for PRMX1
+            .word   PRMX1,PRMX2         ; -- BODYDOES >IN Extended_Word
             .word   UPDATE_XW           ; -- BODYDOES+2              >IN is restored ready for 2th pass
             .word   BRAN,TYPE1DOES      ; -- BODYDOES+2              2th pass: completes instruction with opcode = [BODYDOES+2]
 
             asmword "MOVX"
-            mDODOES
-            .word   TYPE5DOES,40h,4000h ; [PFADOES]=TYPE5DOES, [BODYDOES]=A/L bit, [BODYDOES+2]=OPCODE,
+            CALL rDODOES
+            .word   TYPE5DOES   ; [PFADOES] = TYPE5DOES
+            .word   40h         ; [BODYDOES] = A/L bit
+            .word   4000h       ; [BODYDOES+2] = OPCODE
             asmword "MOVX.A"
-            mDODOES
+            CALL rDODOES
             .word   TYPE5DOES,0,4040h
             asmword "MOVX.B"
-            mDODOES
+            CALL rDODOES
             .word   TYPE5DOES,40h,4040h
             asmword "ADDX"
-            mDODOES          
+            CALL rDODOES          
             .word   TYPE5DOES,40h,5000h
             asmword "ADDX.A"
-            mDODOES          
+            CALL rDODOES          
             .word   TYPE5DOES,0,5040h
             asmword "ADDX.B"
-            mDODOES          
+            CALL rDODOES          
             .word   TYPE5DOES,40h,5040h
             asmword "ADDCX"  
-            mDODOES          
+            CALL rDODOES          
             .word   TYPE5DOES,40h,6000h
             asmword "ADDCX.A"
-            mDODOES          
+            CALL rDODOES          
             .word   TYPE5DOES,0,6040h
             asmword "ADDCX.B"
-            mDODOES          
+            CALL rDODOES          
             .word   TYPE5DOES,40h,6040h
             asmword "SUBCX"  
-            mDODOES          
+            CALL rDODOES          
             .word   TYPE5DOES,40h,7000h
             asmword "SUBCX.A"
-            mDODOES
+            CALL rDODOES
             .word   TYPE5DOES,0,7040h
             asmword "SUBCX.B"
-            mDODOES          
+            CALL rDODOES          
             .word   TYPE5DOES,40h,7040h
             asmword "SUBX"   
-            mDODOES          
+            CALL rDODOES          
             .word   TYPE5DOES,40h,8000h
             asmword "SUBX.A" 
-            mDODOES          
+            CALL rDODOES          
             .word   TYPE5DOES,0,8040h
             asmword "SUBX.B" 
-            mDODOES          
+            CALL rDODOES          
             .word   TYPE5DOES,40h,8040h
             asmword "CMPX"   
-            mDODOES          
+            CALL rDODOES          
             .word   TYPE5DOES,40h,9000h
             asmword "CMPX.A" 
-            mDODOES          
+            CALL rDODOES          
             .word   TYPE5DOES,0,9040h
             asmword "CMPX.B" 
-            mDODOES          
+            CALL rDODOES          
             .word   TYPE5DOES,40h,9040h
             asmword "DADDX"
-            mDODOES
+            CALL rDODOES
             .word   TYPE5DOES,40h,0A000h
             asmword "DADDX.A"
-            mDODOES          
+            CALL rDODOES          
             .word   TYPE5DOES,0,0A040h
             asmword "DADDX.B"
-            mDODOES          
+            CALL rDODOES          
             .word   TYPE5DOES,40h,0A040h
             asmword "BITX"   
-            mDODOES          
+            CALL rDODOES          
             .word   TYPE5DOES,40h,0B000h
             asmword "BITX.A" 
-            mDODOES          
+            CALL rDODOES          
             .word   TYPE5DOES,0,0B040h
             asmword "BITX.B" 
-            mDODOES          
+            CALL rDODOES          
             .word   TYPE5DOES,40h,0B040h
             asmword "BICX"   
-            mDODOES          
+            CALL rDODOES          
             .word   TYPE5DOES,40h,0C000h
             asmword "BICX.A" 
-            mDODOES          
+            CALL rDODOES          
             .word   TYPE5DOES,0,0C040h
             asmword "BICX.B" 
-            mDODOES          
+            CALL rDODOES          
             .word   TYPE5DOES,40h,0C040h
             asmword "BISX"
-            mDODOES
+            CALL rDODOES
             .word   TYPE5DOES,40h,0D000h
             asmword "BISX.A" 
-            mDODOES          
+            CALL rDODOES          
             .word   TYPE5DOES,0,0D040h
             asmword "BISX.B" 
-            mDODOES          
+            CALL rDODOES          
             .word   TYPE5DOES,40h,0D040h
             asmword "XORX"   
-            mDODOES          
+            CALL rDODOES          
             .word   TYPE5DOES,40h,0E000h
             asmword "XORX.A" 
-            mDODOES          
+            CALL rDODOES          
             .word   TYPE5DOES,0,0E040h
             asmword "XORX.B" 
-            mDODOES          
+            CALL rDODOES          
             .word   TYPE5DOES,40h,0E040h
             asmword "ANDX"   
-            mDODOES          
+            CALL rDODOES          
             .word   TYPE5DOES,40h,0F000h
             asmword "ANDX.A" 
-            mDODOES          
+            CALL rDODOES          
             .word   TYPE5DOES,0,0F040h
             asmword "ANDX.B" 
-            mDODOES          
+            CALL rDODOES          
             .word   TYPE5DOES,40h,0F040h
 
 ; --------------------------------------------------------------------------------
@@ -1162,59 +1175,64 @@ TYPE5DOES                               ; -- BODYDOES
 ; all numeric arguments must be written as DOUBLE numbers (including a point) : $x.xxxx
 
 TYPE6DOES                               ; -- BODYDOES
-            .word   LIT,TOIN,FETCH,TOR  ;                       save >IN for 2th pass
-            .word   FBLANK              ; -- BODYDOES ' '
-            .word   PRMX1               ; -- BODYDOES Extended_Word  
+;            .word   LIT,TOIN,FETCH,TOR  ;               R-- >IN      save >IN for 2th pass
+;            .word   FBLANK              ; -- BODYDOES ' '
+;            .word   PRMX1               ; -- BODYDOES Extended_Word  
+;            .word   UPDATE_XW           ; -- BODYDOES+2
+;            .word   BRAN,TYPE2DOES      ; -- BODYDOES+2         pass 2: completes instruction with opcode = [BODYDOES+2]
+            .word   LIT,TOIN,FETCH      ; -- BODYDOES >IN
+            .word   FBLANK              ; -- BODYDOES >IN ' '
+            .word   PRMX1               ; -- BODYDOES >IN Extended_Word  
             .word   UPDATE_XW           ; -- BODYDOES+2
             .word   BRAN,TYPE2DOES      ; -- BODYDOES+2         pass 2: completes instruction with opcode = [BODYDOES+2]
 
             asmword "RRCX"              ; ZC=0; RRCX Rx,Rx may be repeated by prefix RPT #n|Rn
-            mDODOES
+            CALL rDODOES
             .word   TYPE6DOES,40h,1000h
             asmword "RRCX.A"            ; ZC=0; RRCX.A Rx may be repeated by prefix RPT #n|Rn 
-            mDODOES          
+            CALL rDODOES          
             .word   TYPE6DOES,0,1040h
             asmword "RRCX.B"            ; ZC=0; RRCX.B Rx may be repeated by prefix RPT #n|Rn
-            mDODOES          
+            CALL rDODOES          
             .word   TYPE6DOES,40h,1040h
             asmword "RRUX"              ; ZC=1; RRUX Rx may be repeated by prefix RPT #n|Rn
-            mDODOES          
+            CALL rDODOES          
             .word   TYPE6DOES,140h,1000h
             asmword "RRUX.A"            ; ZC=1; RRUX.A Rx may be repeated by prefix RPT #n|Rn 
-            mDODOES          
+            CALL rDODOES          
             .word   TYPE6DOES,100h,1040h
             asmword "RRUX.B"            ; ZC=1; RRUX.B Rx may be repeated by prefix RPT #n|Rn 
-            mDODOES          
+            CALL rDODOES          
             .word   TYPE6DOES,140h,1040h
             asmword "SWPBX"
-            mDODOES          
+            CALL rDODOES          
             .word   TYPE6DOES,40h,1080h
             asmword "SWPBX.A"
-            mDODOES          
+            CALL rDODOES          
             .word   TYPE6DOES,0,1080h
             asmword "RRAX"
-            mDODOES          
+            CALL rDODOES          
             .word   TYPE6DOES,40h,1100h
             asmword "RRAX.A"
-            mDODOES          
+            CALL rDODOES          
             .word   TYPE6DOES,0,1140h
             asmword "RRAX.B"
-            mDODOES          
+            CALL rDODOES          
             .word   TYPE6DOES,40h,1140h
             asmword "SXTX"
-            mDODOES
+            CALL rDODOES
             .word   TYPE6DOES,40h,1180h
             asmword "SXTX.A" 
-            mDODOES          
+            CALL rDODOES          
             .word   TYPE6DOES,0,1180h
             asmword "PUSHX"  
-            mDODOES          
+            CALL rDODOES          
             .word   TYPE6DOES,40h,1200h
             asmword "PUSHX.A"
-            mDODOES          
+            CALL rDODOES          
             .word   TYPE6DOES,0,1240h
             asmword "PUSHX.B"
-            mDODOES          
+            CALL rDODOES          
             .word   TYPE6DOES,40h,1240h
 
 ; ----------------------------------------------------------------------
@@ -1228,7 +1246,7 @@ RPT_WORD    .word 0
             asmword "RPT"           ; RPT #n | RPT Rn     repeat n | [Rn]+1 times modulo 16
             mdocol
             .word FBLANK,SKIP
-            FORTHtoASM              ; -- addr
+            .word   $+2             ; -- addr
             MOV @TOS,X              ;           X=char
             MOV.B #' ',TOS          ; -- ' '    as separator
             CMP.B #'R',X
@@ -1242,4 +1260,5 @@ RPT1        CALL #SearchARG         ; -- $xxxx
             AND #0Fh,TOS            ; -- $000x
 RPT2        MOV TOS,&RPT_WORD
             MOV @PSP+,TOS
-            mSEMI
+            MOV @RSP+,IP 
+            MOV @IP+,PC
index 1e9f868..54d461d 100644 (file)
@@ -3,6 +3,8 @@
 ; 2- the char loop time,
 ; 3- the time between sending XON/RTS_low and clearing UCRXIFG on first received char,
 ; everything must be done to reduce these times, taking into account the necessity of switching to SLEEP (LPMx mode).
+
+            FORTHWORD "ACCEPT"      ; HalfDuplexACCEPT
 ; ----------------------------------;
 ; (ACCEPT) part I: prepare TERMINAL_INT ;
 ; ----------------------------------;
@@ -40,12 +42,12 @@ AKEYREAD    MOV.B &TERM_RXBUF,Y     ;3  read character into Y, UCRXIFG is cleare
 ; ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^;
 AKEYREAD1                           ; <---  XON RET address 2 ; first emergency: anticipate XOFF on CR as soon as possible
             CMP.B T,Y               ;1      char = CR ?
-            JZ RXOFF            ;2      then RET to ENDACCEPT
+            JZ RXOFF                ;2      then RET to ENDACCEPT
 ; vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv;+ 4    to send RXOFF
 ; stops the first stopwatch         ;=      first bottleneck (empty line process), best case result: 20~ + LPMx wake_up time..
 ; ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^;       ...or 11~ in case of empty line
             CMP.B S,Y               ;1      printable char ?
-            JHS ASTORETEST          ;2      yes
+            J ASTORETEST          ;2      yes
             CMP.B #8,Y              ;       char = BS ?
             JNE WAITaKEY            ;       case of other control chars
 ; ----------------------------------;
@@ -69,36 +71,28 @@ WAITaKEY    BIT #UCRXIFG,&TERM_IFG  ; 3 new char in TERMRXBUF ?
 ; vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv;
 ; stops the 2th stopwatch           ; best case result: 23~ ==> 434 kBds/MHz
 ; ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^;
+
 ; ----------------------------------;
-ENDACCEPT                           ; <--- XOFF return address
-; ----------------------------------;
-            MOV #LPM0+GIE,&LPM_MODE ; reset LPM_MODE to default mode LPM0 for next line of input stream
-; ----------------------------------;
-    .IFDEF MEMORYPROTECT
-    .IFDEF FR2_FAMILY               ;
-            MOV #0A500h,&SYSCFG0    ; enable write MAIN + INFO
-    .ELSE
-            MOV #0A500h,&MPUCTL0    ; clear MPU (Memory Protection Unit) enable bit 
-    .ENDIF                          ;
-    .ENDIF
+ENDACCEPT                           ; --- Org Ptr       r-- ACCEPT_ret
 ; ----------------------------------;
             CMP #0,&LINE            ; if LINE <> 0...
             JZ ACCEPTEND            ;
             ADD #1,&LINE            ; ...increment LINE
-ACCEPTEND   SUB @PSP+,TOS           ; Org Ptr -- len'
-            MOV @RSP+,IP            ; 2 and continue with INTERPRET with GIE=0.
-                                    ; So FORTH machine is protected against any interrupt...
-            mNEXT                   ; ...until next falling down to LPMx mode of (ACCEPT) part1,
+ACCEPTEND   SUB @PSP+,TOS           ; -- len'
+            MOV @RSP+,IP            ; 2  return to INTERPRET with GIE=0: FORTH is protected against any interrupt...
+; ----------------------------------;
+            MOV #LPM0+GIE,&LPM_MODE ; reset LPM_MODE to default mode LPM0 for next line of input stream
+; ----------------------------------;
+            MOV @IP+,PC             ; ...until next falling down to LPMx mode of (ACCEPT) part1,
 ; **********************************;    i.e. when the FORTH interpreter has no more to do.
 
 ; ------------------------------------------------------------------------------
 ; TERMINAL I/O, output part
 ; ------------------------------------------------------------------------------
 
-
 ;https://forth-standard.org/standard/core/EMIT
 ;C EMIT     c --    output character to the output device ; deferred word
-            FORTHWORD "EMIT"
+            FORTHWORD "EMIT"        ; HalfDuplexEMIT
 EMIT        MOV @PC+,PC             ;3  15~
 PFAEMIT     .word   BODYEMIT        ;  Parameter Field Address (PFA) of EMIT, with its default value
 BODYEMIT    MOV TOS,Y               ; 1
@@ -111,5 +105,4 @@ YEMIT2      BIT.B #CTS,&HANDSHAKIN  ;
     .ENDIF
 YEMIT       .word   4882h           ; hi7/4~ lo:12/4~ send/send_not  echo to terminal
             .word   TERM_TXBUF      ; 3 MOV Y,&TERMTXBUF
-            mNEXT                   ; 4
-
+            MOV @IP+,PC             ;
index 1ab2bbe..7c2806e 100644 (file)
@@ -56,17 +56,17 @@ SDA_InitSrcAddr                     ; <== SDA_GetFileNextSector
 ; ----------------------------------;
 SDA_YEMIT_RET                       ;
 ; ----------------------------------;
-    FORTHtoASM                      ;
+    .word   $+2                     ;
     SUB     #2,IP                   ; 1                 restore YEMIT return
 ; ----------------------------------;
 SDA_ComputeChar                     ; -- CIB cnt
 ; ----------------------------------;
     CMP     T,S                     ; 1 src_ptr >= src_len ?
-    JHS     SDA_GetFileNextSector   ; 2 yes
+    J     SDA_GetFileNextSector   ; 2 yes
     MOV.B   SD_BUF(S),Y             ; 3 Y = char
     ADD     #1,S                    ; 1 increment input BufferPtr
     CMP.B   #32,Y                   ; 2 ascii printable char ?
-    JHS     SDA_MoveChar            ; 2 yes
+    J     SDA_MoveChar            ; 2 yes
     CMP.B   #10,Y                   ; 2 control char = 'LF' ?
     JNZ     SDA_ComputeChar         ; 2 no
 ; ----------------------------------;
index 0bc3686..9071a11 100644 (file)
@@ -40,26 +40,26 @@ HDLCurClusToFAT1sectWofstY          ;WXY Input: T=currentHandle, Output: W=FATse
 ; ----------------------------------;
 ClusterToFAT1sectWofstY             ;WXY Input : Cluster ; Output: W = FATsector, Y = FAToffset
 ; ----------------------------------;
-    MOV.B   &ClusterL+1,W           ;3 W = ClusterLoHI
-    MOV.B   &ClusterL,Y             ;3 Y = ClusterLoLo
-    CMP     #1,&FATtype             ;3 FAT16?
-    JZ      CTF1S_end               ;2 yes
+    MOV.B &ClusterL+1,W             ;3 W = ClusterLoHI
+    MOV.B &ClusterL,Y               ;3 Y = ClusterLoLo
+    CMP #1,&FATtype                 ;3 FAT16?
+    JZ CTF1S_end                    ;2 yes
 
 ; input : Cluster n, max = 7FFFFF (SDcard up to 256 GB)
 ; 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
-    ADD     X,W                     ;  W = ClusterHiLo:ClusterLoHi  
+    MOV.B &ClusterH,X               ;  X = 0:ClusterHiLo
+    SWPB X                          ;  X = ClusterHiLo:0
+    ADD X,W                         ;  W = ClusterHiLo:ClusterLoHi  
 ; ----------------------------------;
-    SWPB    Y                       ;  Y = ClusterLoLo:0
-    ADD     Y,Y                     ;1 Y = ClusterLoLo:0 << 1 + carry for FATsector
-    ADDC    W,W                     ;  W = ClusterHiLo:ClusterLoHi << 1 = ClusterHiLo:ClusterL / 128
-    SWPB    Y
+    SWPB Y                          ;  Y = ClusterLoLo:0
+    ADD Y,Y                         ;1 Y = ClusterLoLo:0 << 1 + carry for FATsector
+    ADDC W,W                        ;  W = ClusterHiLo:ClusterLoHi << 1 = ClusterHiLo:ClusterL / 128
+    SWPB Y   
 CTF1S_end
-    ADD     Y,Y                     ;  Y = 0:ClusterLoLo << 1
-    RET                             ;4
+    ADD Y,Y                         ;  Y = 0:ClusterLoLo << 1
+    MOV @RSP+,PC                    ;4
 ; ----------------------------------;
 
 
@@ -108,20 +108,20 @@ CCFS_NEXT                           ;  C = 1, it's done
     .ENDIF ; MPY
 ; ----------------------------------;
 CCFS_RET                            ;
-    RET                             ;
+    MOV @RSP+,PC                    ;
 ; ----------------------------------;
 
 
 ; ----------------------------------;
 ComputeHDLcurrentSector             ; input: currentHandle, output: Cluster, Sector
 ; ----------------------------------;
-    MOV   HDLL_CurClust(T),&ClusterL;
-    MOV   HDLH_CurClust(T),&ClusterH;
-    CALL  #ComputeClusFrstSect      ;
-    MOV.B   HDLB_ClustOfst(T),W     ;
-    ADD     W,&SectorL              ;
-    ADDC    #0,&SectorH             ;
-    RET                             ;
+    MOV HDLL_CurClust(T),&ClusterL  ;
+    MOV HDLH_CurClust(T),&ClusterH  ;
+    CALL #ComputeClusFrstSect       ;
+    MOV.B HDLB_ClustOfst(T),W       ;
+    ADD W,&SectorL                  ;
+    ADDC #0,&SectorH                ;
+    MOV @RSP+,PC                    ;
 ; ----------------------------------;
 
 
@@ -141,7 +141,7 @@ ParseEntryNameSpacesLoop            ;
     SUB     #1,X                    ;
     JNZ     ParseEntryNameSpacesLoop;
 PENSL_END                           ;
-    RET                             ; 
+    MOV @RSP+,PC                    ; 
 ; ----------------------------------; 
 
 
@@ -162,7 +162,7 @@ Read_File                           ; <== SD_ACCEPT, READ
     SUBC    #0,HDLH_CurSize(T)      ;
     ADD.B   #1,HDLB_ClustOfst(T)    ; current cluster offset is incremented
     CMP.B &SecPerClus,HDLB_ClustOfst(T) ; Cluster Bound reached ?
-    JLO SetBufLenAndLoadCurSector   ; no
+    JNC SetBufLenAndLoadCurSector   ; no
 ; ----------------------------------;
 ;SearchNextCluster                  ; yes
 ; ----------------------------------;
@@ -181,9 +181,9 @@ SetBufLenAndLoadCurSector           ;WXY <== previous handle reLOAD with BufferP
     CMP     #0,HDLH_CurSize(T)      ; CurSize > 65535 ?
     JNZ     LoadHDLcurrentSector    ; yes
     CMP HDLL_CurSize(T),&BufferPtr  ; BufferPtr >= CurSize ? (BufferPtr = 0 or see RestorePreviousLoadedBuffer)
-    JHS      CloseHandleT           ; yes
+    J      CloseHandleT           ; yes
     CMP #bytsPerSec,HDLL_CurSize(T) ; CurSize >= 512 ?
-    JHS     LoadHDLcurrentSector    ; yes
+    J     LoadHDLcurrentSector    ; yes
     MOV HDLL_CurSize(T),&BufferLen  ; no: adjust BufferLen
 ; ==================================;
 LoadHDLcurrentSector                ; <=== OPEN_WRITE_APPEND
@@ -208,14 +208,14 @@ ReadSector                          ;
 ; ----------------------------------; input : Cluster, EntryOfst
 GetFreeHandle                       ;STWXY init handle(HDLL_DIRsect,HDLW_DIRofst,HDLL_FirstClus = HDLL_CurClust,HDLL_CurSize)
 ; ----------------------------------; output : T = new CurrentHdl
-    MOV     #8,S                    ; prepare file already open error
-    MOV     #FirstHandle,T          ;
-    MOV     #0,X                    ; X = init previous handle as 0
+    MOV #8,S                        ; prepare file already open error
+    MOV #FirstHandle,T              ;
+    MOV #0,X                        ; X = init previous handle as 0
 ; ----------------------------------;
 SearchHandleLoop                    ;
 ; ----------------------------------;
-    CMP.B   #0,HDLB_Token(T)        ; free handle ?
-    JZ      FreeHandleFound         ; yes
+    CMP.B #0,HDLB_Token(T)          ; free handle ?
+    JZ FreeHandleFound              ; yes
 AlreadyOpenTest                     ; no
     CMP     &ClusterH,HDLH_FirstClus(T);
     JNE     SearchNextHandle        ;
@@ -228,7 +228,7 @@ SearchNextHandle                    ;
     JNZ     SearchHandleLoop        ;
     ADD     S,S                     ; 16 = no more handle error, abort ===>
 InitHandleRET                       ;
-    RET                             ;
+    MOV @RSP+,PC                             ;
 ; ----------------------------------;
 FreeHandleFound                     ; T = new handle, X = previous handle
 ; ----------------------------------;
@@ -276,15 +276,15 @@ InitHandle                          ;
 ; ----------------------------------;
 ReplaceInputBuffer                  ;
 ; ----------------------------------;
-    MOV     #SDIB_ORG,&PFACIB       ; set SD Input Buffer as Current Input Buffer before return to QUIT
-    MOV     #SD_ACCEPT,&PFAACCEPT   ; redirect ACCEPT to SD_ACCEPT before return to QUIT
+    MOV #SDIB_ORG,&CIB_ADR          ; set SD Input Buffer as Current Input Buffer before return to QUIT
+    MOV #SD_ACCEPT,&PFAACCEPT       ; redirect ACCEPT to SD_ACCEPT before return to QUIT
 ; ----------------------------------;
 SaveBufferContext                   ; (see CloseHandleT) 
 ; ----------------------------------;
     MOV &SOURCE_LEN,HDLW_PrevLEN(T) ; = CPL
-    SUB     &TOIN,HDLW_PrevLEN(T)   ; PREVLEN = CPL - >IN
+    SUB &TOIN,HDLW_PrevLEN(T)       ; PREVLEN = CPL - >IN
     MOV &SOURCE_ORG,HDLW_PrevORG(T) ; = CIB
-    ADD     &TOIN,HDLW_PrevORG(T)   ; PrevORG = CIB + >IN
+    ADD &TOIN,HDLW_PrevORG(T)       ; PrevORG = CIB + >IN
     JMP SetBufLenAndLoadCurSector   ; then RET
 ; ----------------------------------;
 
@@ -292,10 +292,10 @@ SaveBufferContext                   ; (see CloseHandleT)
 ; ----------------------------------;
 CloseHandleHere                     ;
 ; ----------------------------------;
-    MOV.B   #0,HDLB_Token(T)        ; release the handle
-    MOV     @T,T                    ; T = previous handle
-    MOV     T,&CurrentHdl           ; becomes current handle
-    CMP  #0,T                       ;
+    MOV.B #0,HDLB_Token(T)          ; release the handle
+    MOV @T,T                        ; T = previous handle
+    MOV T,&CurrentHdl               ; becomes current handle
+    CMP #0,T                        ;
     JZ CloseHandleRet               ; if no more handle
 ; ----------------------------------;
 RestorePreviousLoadedBuffer         ;
@@ -305,27 +305,27 @@ RestorePreviousLoadedBuffer         ;
     BIC #Z,SR                       ; 
 ; ----------------------------------;
 CloseHandleRet                      ;
-    RET                             ; Z = 1 if no more handle
+    MOV @RSP+,PC                             ; Z = 1 if no more handle
 ; ----------------------------------;
 
 
 ; ==================================;
 CloseHandleT                        ; <== CLOSE, Read_File, TERM2SD", OPEN_DEL
 ; ==================================;
-    MOV     &CurrentHdl,T           ;
-    CMP     #0,T                    ; no handle?
-    JZ      CloseHandleRet          ; RET
+    MOV &CurrentHdl,T               ;
+    CMP #0,T                        ; no handle?
+    JZ CloseHandleRet               ; RET
 ; ----------------------------------;
     .IFDEF SD_CARD_READ_WRITE
-    CMP.B   #2,HDLB_Token(T)        ; opened as write (updated) file ?
-    JNZ     TestClosedToken         ; no
-    CALL    #WriteBuffer            ;SWXY
-    CALL    #OPWW_UpdateDirectory   ;SWXY
+    CMP.B #2,HDLB_Token(T)          ; opened as write (updated) file ?
+    JNZ TestClosedToken             ; no
+    CALL #WriteBuffer               ;SWXY
+    CALL #OPWW_UpdateDirectory      ;SWXY
     .ENDIF                          ;
 ; ----------------------------------;
 TestClosedToken                     ;
 ; ----------------------------------;
-    CMP.B   #0,HDLB_Token(T)        ;
+    CMP.B #0,HDLB_Token(T)          ;
 ; ----------------------------------;
 CaseOfAnyReadWriteDelFileIsClosed   ; token >= 0
 ; ----------------------------------;
@@ -352,7 +352,7 @@ CheckFirstLoadedFileIsClosed        ;
 ; ----------------------------------;
 RestoreDefaultACCEPT                ;               if no more handle, first loaded file is closed...
 ; ----------------------------------;
-    MOV #TIB_ORG,&PFACIB            ;               restore TIB as Current Input Buffer for next line (next QUIT)
+    MOV #TIB_ORG,&CIB_ADR           ;               restore TIB as Current Input Buffer for next line (next QUIT)
     MOV #BODYACCEPT,&PFAACCEPT      ;               restore default ACCEPT for next line (next QUIT)
     MOV #ECHO,PC                    ; -- org len    if return to Terminal ACCEPT
 ; ----------------------------------;
@@ -429,7 +429,7 @@ DELDQ
     FORTHWORD "CLOSE"               ;
 ; ----------------------------------;
     CALL    #CloseHandleT           ;
-    mNEXT                           ;
+    MOV @IP+,PC                           ;
 ; ----------------------------------;
 
     .ENDIF ; SD_CARD_READ_WRITE
@@ -490,7 +490,7 @@ OPEN_COMP                           ;
 OPEN_EXEC                           ;
     mDOCOL                          ; if exec state
     .word   lit,'"',WORDD,COUNT     ; -- open_type addr u
-    FORTHtoASM                      ;
+    .word   $+2                     ;
     MOV     @RSP+,IP                ;
 ; ----------------------------------;
 ParenOpen                           ; -- open_type HERE             HERE as pathname ptr
@@ -575,7 +575,7 @@ OPN_DotNotFound                     ;
     CMP.B   #'\\',-1(rDOCON)        ; FirstNotEqualChar of Pathname = "\" ?
     JZ      OPN_EntryFound          ;
     CMP     rDOCON,TOS              ; EOS exceeded ?
-    JLO     OPN_EntryFound          ; yes
+    JNC     OPN_EntryFound          ; yes
 ; ----------------------------------;
 OPN_DIRentryMismatch                ;
 ; ----------------------------------;
@@ -612,7 +612,7 @@ OPN_CompareExt3chars                ;
     JMP     OPN_EntryFound          ;
 OPN_ExtNotEqualChar                 ;
     CMP     rDOCON,TOS              ; EOS exceeded ?
-    JHS     OPN_DIRentryMismatch    ; no, loop back   
+    J     OPN_DIRentryMismatch    ; no, loop back   
     CMP.B   #'\\',-1(rDOCON)        ; FirstNotEqualChar = "\" ?
     JNZ     OPN_DIRentryMismatch    ;
     CALL    #ParseEntryNameSpaces   ; parse X spaces, X{0,...,3}
@@ -636,7 +636,7 @@ OPN_DIRfound                        ; entry is a DIRECTORY
     MOV     &FATtype,&ClusterL      ; set cluster as RootDIR cluster
 OPN_DIRfoundNext                    ;
     CMP     rDOCON,TOS              ; EOS exceeded ?
-    JHS     OPN_EndOfStringTest     ; no: (we presume that FirstNotEqualChar = "\") ==> loop back
+    J     OPN_EndOfStringTest     ; no: (we presume that FirstNotEqualChar = "\") ==> loop back
 ; ----------------------------------;
 OPN_SetCurrentDIR                   ; -- open_type ptr
 ; ----------------------------------;
@@ -689,7 +689,7 @@ OPEN_LOAD                           ;
     CMP     #0,S                    ; open file happy end ?
     JNZ     OPEN_Error              ; no
 OPEN_LOAD_END
-    mNEXT                           ;
+    MOV @IP+,PC                     ;
 ; ----------------------------------;
 
 ; ----------------------------------;
index 50669ac..32967a4 100644 (file)
@@ -85,7 +85,7 @@ Send_CMD_Loop                       ;
 FullSpeedSend                       ;
 ;   NOP                             ;0 NOPx adjusted to avoid SD error
     SUB.B   #1,X                    ;1
-    JHS     Send_CMD_PUT            ;2 U>= : don't skip SD_CMD_FRM(0) !
+    J     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
@@ -110,7 +110,7 @@ FullSpeedGET                        ;
     CMP.B   &SD_RXBUF,W             ;3 return value = ExpectedValue ?
     JNZ     Wait_Command_Response   ;2 16~ full speed loop
 SPI_WAIT_RET                        ; flag Z = 1 <==> Returned value = expected value
-    RET                             ; W = expected value, unchanged
+    MOV @RSP+,PC                    ; W = expected value, unchanged
 ; ----------------------------------;
 
 
@@ -140,7 +140,7 @@ FullSpeedPut
             SUB #1,X                ;1
             JNZ SPI_PUT             ;2 12~ loop
 SPI_PUT_END MOV.B &SD_RXBUF,W       ;3
-            RET                     ;4
+            MOV @RSP+,PC            ;4
 ; ----------------------------------;
 
 ; ==================================;
@@ -182,7 +182,7 @@ ReadWriteHappyEnd                   ; <==== WriteSector
 ; ----------------------------------;
     BIC     #3,S                    ; reset read and write errors
     BIS.B   #SD_CS,&SD_CSOUT        ; SD_CS = high  
-    RET                             ; 
+    MOV @RSP+,PC                    ; 
 ; ----------------------------------;
 
     .IFDEF SD_CARD_READ_WRITE
@@ -265,7 +265,7 @@ SD_CARD_ID_ERROR                    ; <=== SD_INIT error $20 from forthMSP430FR_
 ; ----------------------------------;
 SD_QABORTYES                        ; <=== OPEN file errors from forthMSP430FR_SD_LOAD.asm
 ; ----------------------------------;
-    FORTHtoASM                      ;
+    .word   $+2                     ;
     SUB #2,PSP                      ;
     MOV TOS,0(PSP)                  ;
     MOV #10h,&BASE                  ; select hex
index 3942e1c..2b06886 100644 (file)
@@ -38,7 +38,7 @@ OPEN_READ                           ;
 ; ----------------------------------;
     CMP     #0,S                    ; open file happy end ?
     JNZ     OPEN_Error              ; no
-    mNEXT                           ;
+    MOV @IP+,PC                           ;
 ; ----------------------------------;
 
 ;Z READ            -- f
@@ -56,7 +56,7 @@ READ
     CALL    #Read_File              ;SWX
 READ_END
     SUB     &CurrentHdl,TOS         ; -- fl     if fl <>0 (if Z=0) handle is closed
-    mNEXT                           ;
+    MOV @IP+,PC                           ;
 ; ----------------------------------;
 
 
@@ -139,7 +139,7 @@ SearchNewClusterEnd                 ;
 ; ----------------------------------;
     MOV     @RSP+,W                 ; W = FATsector
     MOV     W,&CurFATsector         ; refresh CurrentFATsector
-    RET                             ;
+    MOV @RSP+,PC                             ;
 ; ----------------------------------;
 
 
@@ -198,7 +198,7 @@ WaitRTC                             ; yes
     .ENDIF
     .ENDIF
 SD_RW_RET                           ;
-    RET                             ;
+    MOV @RSP+,PC                             ;
 ; ----------------------------------;
 
 
@@ -224,7 +224,7 @@ FillDIRentryName                    ;SWXY use
 ;    CMP     #0,W                    ; end of stringZ ?
 ;    JZ      OPWC_CompleteWithSpaces ;
     CMP     T,&EndOfPath            ; EOS < PTR ?
-    JLO     OPWC_CompleteWithSpaces ; yes
+    JNC     OPWC_CompleteWithSpaces ; yes
 ; ----------------------------------;
 SkipForbiddenChars                  ;
 ; ----------------------------------;
@@ -259,7 +259,7 @@ OPWC_CompleteWithSpaceloop          ;
     SUB     #1,X                    ; dec countdown of chars space
     JNZ OPWC_CompleteWithSpaceloop  ;
 OPWC_CWS_End                        ;
-    RET                             ;
+    MOV @RSP+,PC                             ;
 ; ----------------------------------;
 
 
@@ -370,7 +370,7 @@ OPWC_SetEntryAttribute              ; (cluster=DIRcluster!)
 ; ----------------------------------;
     CMP     #0,S                    ; no error ?
     JNZ     OPWC_NomoreHandle       ; ==> abort with error 16
-    mNEXT                           ; --
+    MOV @IP+,PC                           ; --
 ; ----------------------------------;
 
 ;-----------------------------------------------------------------------
@@ -399,7 +399,7 @@ OPWW_UpdateEntryFileSize            ;
 
 ; this subroutine is called by Write_File (bufferPtr=512) and CloseHandleT (0 =< BufferPtr =< 512)
 ; ==================================; 
-WriteBuffer                         ;SWXY input: T = CurrentHDL
+WriteBuffer                         ;STWXY input: T = CurrentHDL
 ; ==================================; 
     ADD &BufferPtr,HDLL_CurSize(T)  ; update handle CurrentSizeL
     ADDC    #0,HDLH_CurSize(T)      ;
@@ -464,10 +464,10 @@ Write_File_End
 ;Z WRITE            -- 
 ; sequentially write the entire SD_BUF in a file opened by WRITE"
 ; ----------------------------------;
-    FORTHWORD "WRITE"               ;
+    FORTHWORD "WRITE"               ; in assembly : CALL #WRITE,X   CALL 2(X)
 ; ----------------------------------;
-    CALL    #Write_File             ;
-    mNEXT                           ;
+    CALL #Write_File                ;
+    MOV @IP+,PC                     ;
 ; ----------------------------------;
 
 
@@ -528,12 +528,12 @@ DIVSECPERSPC2                       ;
 ; ----------------------------------;
 ; 3- load last sector in SD_BUF     ;
 ; ----------------------------------;
-    MOV     HDLL_CurSize(T),W       ; example : W = 1013
-    BIC     #01FFh,HDLL_CurSize(T)  ; substract 13 from HDLL_CurSize, because loaded in buffer
-    AND     #01FFh,W                ; W = 13
-    MOV     W,&BufferPtr            ; init Buffer Pointer with 13
-    CALL    #LoadHDLcurrentSector   ;SWX
-    mNEXT                           ; BufferPtr = first free byte offset
+    MOV HDLL_CurSize(T),W           ; example : W = 1013
+    BIC #01FFh,HDLL_CurSize(T)      ; substract 13 from HDLL_CurSize, because loaded in buffer
+    AND #01FFh,W                    ; W = 13
+    MOV W,&BufferPtr                ; init Buffer Pointer with 13
+    CALL #LoadHDLcurrentSector      ;SWX
+    MOV @IP+,PC                     ; BufferPtr = first free byte offset
 ; ----------------------------------;
 
 
@@ -564,7 +564,7 @@ OPEN_DEL                            ;
 SelectFreeEntry                     ; nothing to do: S = 0 ready for free entry!
 ; ----------------------------------;
     CMP     #BytsPerSec-32,Y        ; Entry >= last entry in DIRsector ?
-    JHS     SelectHideEntry         ; yes:  next DIR entry is out of sector
+    J     SelectHideEntry         ; yes:  next DIR entry is out of sector
     CMP.B   #0,SD_BUF+32(Y)         ; no:   next DIR entry in DIRsector is free?
     JZ      WriteDelEntry           ;       yes
 ; ----------------------------------;
@@ -629,7 +629,7 @@ EndOfFileClusters                   ;
     CALL    #CloseHandleT           ;
 ; ----------------------------------;
 DEL_END                             ;
-    mNEXT                           ;4
+    MOV @IP+,PC                     ;4
 ; ----------------------------------;
 
 
@@ -645,7 +645,7 @@ DEL_END                             ;
     .word   lit,2                   ; -- open_type
     .word   HERE,COUNT              ; -- open_type addr cnt
     .word   PARENOPEN               ;                   reopen same filepath but as write
-    FORTHtoASM                      ;
+    .word   $+2                     ;
     MOV     @RSP+,IP                ;
     BIC     #UCRXIFG,&TERM_IFG      ;   clean up UCRX buffer  
 ; ----------------------------------;
@@ -664,7 +664,7 @@ T2S_FillBufferLoop                  ;
     MOV.B   X,SD_BUF(Y)             ;3
     ADD     #1,Y                    ;1
     CMP     #BytsPerSec-1,Y         ;2
-    JLO     T2S_FillBufferLoop      ;2 Y<511    21 cycles char loop
+    JNC     T2S_FillBufferLoop      ;2 Y<511    21 cycles char loop
     JZ      T2S_XOFF                ;2 Y=511    send XOFF after RX 511th char
 ; ----------------------------------;
 T2S_WriteFile                       ;2 Y>511
@@ -683,6 +683,6 @@ T2S_END                             ;
     MOV     Y,&BufferPtr            ;3
     CALL    #CloseHandleT           ;4
 TERM2SD_END                         ;
-    mNEXT                           ;4
+    MOV @IP+,PC                     ;4
 ; ----------------------------------;
 
index 3a9d127..e2cfe42 100644 (file)
@@ -185,6 +185,11 @@ TERM_REN    .equ P2REN
 ; PORT3 usage
 ; P3.1 -           LED1
 
+CTS         .equ    1           ; P3.0
+RTS         .equ    4           ; P3.2
+HANDSHAKOUT .equ    P3OUT
+HANDSHAKIN  .equ    P3IN
+
 ; RTS output is wired to the CTS input of UART2USB bridge 
 ; CTS is not used by FORTH terminal
 ; configure RTS as output high to disable RX TERM during start FORTH
@@ -198,14 +203,10 @@ TERM_REN    .equ P2REN
     .IFDEF TERMINAL4WIRES
 ; RTS output is wired to the CTS input of UART2USB bridge 
 ; configure RTS as output high to disable RX TERM during start FORTH
-HANDSHAKOUT .equ    P3OUT
-HANDSHAKIN  .equ    P3IN
-RTS         .equ    4           ; P3.2
             BIS.B #RTS,&P3DIR   ; RTS as output high
         .IFDEF TERMINAL5WIRES
 ; CTS input must be wired to the RTS output of UART2USB bridge 
 ; configure CTS as input low (true) to avoid lock when CTS is not wired
-CTS         .equ    1           ; P3.0
             BIC.B #CTS,&P3OUT   ; CTS input pulled down
         .ENDIF  ; TERMINAL5WIRES
     .ENDIF  ; TERMINAL4WIRES
index aa5d699..484ea6e 100644 (file)
@@ -184,13 +184,6 @@ SD_CSDIR    .equ P1DIR
 ; ----------------------------------------------------------------------
 ; reset state : Px{DIR,REN,SEL0,SEL1,SELC,IE,IFG,IV} = 0 ; Px{IN,OUT,IES} = ?
 
-;            BIS     #00003h,&PCDIR  ; all pins 0 as input else P5.0 (LED2G) P5.1 (LED2R)
-;            MOV     #0FFFCh,&PCOUT  ; all pins high  else P5.0 (LED2G) P5.1 (LED2R)
-;            BIS     #0FFFCh,&PCREN  ; all pins with pull resistors else P5.0 (LED2G) P5.1 (LED2R)
-
-            BIS     #-1,&PCREN      ; all pins with pull up/down resistors
-            MOV     #0FFFCh,&PCOUT  ; all pins with pull up resistors else P5.0 (LED2G) P5.1 (LED2R)
-
 ; PORT5 usage
 
 ; LED2R - J8 - P5.1  red LED
@@ -198,17 +191,25 @@ SD_CSDIR    .equ P1DIR
 
 ; PORT6 usage
 
+RTS         .equ    2           ; P6.1
+CTS         .equ    4           ; P6.2
+HANDSHAKOUT .equ    P6OUT
+HANDSHAKIN  .equ    P6IN
+
+;            BIS     #00003h,&PCDIR  ; all pins 0 as input else P5.0 (LED2G) P5.1 (LED2R)
+;            MOV     #0FFFCh,&PCOUT  ; all pins high  else P5.0 (LED2G) P5.1 (LED2R)
+;            BIS     #0FFFCh,&PCREN  ; all pins with pull resistors else P5.0 (LED2G) P5.1 (LED2R)
+
+            BIS     #-1,&PCREN      ; all pins with pull up/down resistors
+            MOV     #0FFFCh,&PCOUT  ; all pins with pull up resistors else P5.0 (LED2G) P5.1 (LED2R)
+
     .IFDEF TERMINAL4WIRES
 ; RTS output is wired to the CTS input of UART2USB bridge 
 ; configure RTS as output high to disable RX TERM during start FORTH
-HANDSHAKOUT .equ    P6OUT
-HANDSHAKIN  .equ    P6IN
-RTS         .equ    2           ; P6.1
             BIS.B #RTS,&P6DIR   ; RTS as output high
         .IFDEF TERMINAL5WIRES
 ; CTS input must be wired to the RTS output of UART2USB bridge 
 ; configure CTS as input low (true) to avoid lock when CTS is not wired
-CTS         .equ    4           ; P6.2
             BIC.B #CTS,&P6OUT   ; CTS input pulled down
         .ENDIF  ; TERMINAL5WIRES
     .ENDIF  ; TERMINAL4WIRES
@@ -242,112 +243,17 @@ CTS         .equ    4           ; P6.2
 ;    BIS.B #4,&P2DIR
 ; result : REFO = xx.xx kHz
 
-; ======================================================================
-; need to adjust FLLN (and DCO) for each device of MSP430fr2xxx family ?
-; (no problem with MSP430FR5xxx families without FLL).
-; ======================================================================
 
-;    .IF FREQUENCY = 0.5
-;
-;            MOV #0D6h,&CSCTL0          ; preset DCO = 0xD6 (measured value @ 0x180 ; to measure, type 0x180 @ U.)
-;
-;            MOV     #0001h,&CSCTL1      ; Set 1MHZ DCORSEL,disable DCOFTRIM,Modulation
-;; ===================================== ;  fCOCLKDIV = REFO x (FLLN+1)
-;;            MOV     #100Dh,&CSCTL2      ; Set FLLD=1 (DCOCLKCDIV=DCO/2),set FLLN=0Dh
-;                                        ; fCOCLKDIV = 32768 x (13+1) = 0.459 MHz ; measured :  MHz
-;;            MOV     #100Eh,&CSCTL2      ; Set FLLD=1 (DCOCLKCDIV=DCO/2),set FLLN=0Eh
-;                                        ; fCOCLKDIV = 32768 x (14+1) = 0.491 MHz ; measured :  MHz
-;            MOV     #100Fh,&CSCTL2      ; Set FLLD=1 (DCOCLKCDIV=DCO/2),set FLLN=0Fh
-;                                        ; fCOCLKDIV = 32768 x (15+1) = 0.524 MHz ; measured :  MHz
-;; =====================================
-;            MOV     #8,X
-;
-;    .ELSEIF FREQUENCY = 1
-;
-;            MOV #00B4h,&CSCTL0          ; preset DCO = 0xB4 (measured value @ 0x180 ; to measure, type HEX 0x180 ?)
-;
-;            MOV     #0001h,&CSCTL1      ; Set 1MHZ DCORSEL,disable DCOFTRIM,Modulation
-;; ===================================== ;  fCOCLKDIV = REFO x (FLLN+1)
-;;            MOV     #001Dh,&CSCTL2        ; Set FLLD=0 (DCOCLKCDIV=DCO),set FLLN=1Dh
-;                                        ; fCOCLKDIV = 32768 x (29+1) = 0.983 MHz ; measured : 0.989MHz
-;            MOV     #001Eh,&CSCTL2         ; Set FLLD=0 (DCOCLKCDIV=DCO),set FLLN=1Eh
-;                                        ; fCOCLKDIV = 32768 x (30+1) = 1.015 MHz ; measured : 1.013MHz
-;;            MOV     #001Fh,&CSCTL2        ; Set FLLD=0 (DCOCLKCDIV=DCO),set FLLN=1Fh
-;                                        ; fCOCLKDIV = 32768 x (31+1) = 1.049 MHz ; measured : 1.046MHz
-;; =====================================
-;            MOV     #16,X
-;
-;    .ELSEIF FREQUENCY = 2
-;
-;            MOV #00B4h,&CSCTL0          ; preset DCO = 0xB4 (measured value @ 0x180 ; to measure, type HEX 0x180 ?)
-;
-;            MOV     #0003h,&CSCTL1      ; Set 2MHZ DCORSEL,disable DCOFTRIM,Modulation
-;; ===================================== ;  fCOCLKDIV = REFO x (FLLN+1)
-;;            MOV     #003Bh,&CSCTL2        ; Set FLLD=0 (DCOCLKCDIV=DCO),set FLLN=3Bh
-;                                        ; fCOCLKDIV = 32768 x (59+1) = 1.996 MHz ; measured :  MHz
-;;            MOV     #003Ch,&CSCTL2         ; Set FLLD=0 (DCOCLKCDIV=DCO),set FLLN=3Ch
-;                                        ; fCOCLKDIV = 32768 x (60+1) = 1.998 MHz ; measured :  MHz
-;            MOV     #003Dh,&CSCTL2        ; Set FLLD=0 (DCOCLKCDIV=DCO),set FLLN=3Dh
-;                                        ; fCOCLKDIV = 32768 x (61+1) = 2.031 MHz ; measured :  MHz
-;; =====================================
-;            MOV     #32,X
-;
-;    .ELSEIF FREQUENCY = 4
-;
-;            MOV #00D2h,&CSCTL0          ; preset DCO = 0xD2 (measured value @ 0x180)
-;
-;            MOV     #0005h,&CSCTL1      ; Set 4MHZ DCORSEL,disable DCOFTRIM,Modulation
-;; ===================================== ;  fCOCLKDIV = REFO x (FLLN+1)
-;;            MOV     #0078h,&CSCTL2      ; Set FLLD=0 (DCOCLKCDIV=DCO),set FLLN=78h
-;                                        ; fCOCLKDIV = 32768 x (120+1) = 3.965 MHz ; measured : 3.96MHz
-;
-;            MOV     #0079h,&CSCTL2      ; Set FLLD=0 (DCOCLKCDIV=DCO),set FLLN=79h
-;                                        ; fCOCLKDIV = 32768 x (121+1) = 3.997 MHz ; measured : 3.99MHz
-;
-;;            MOV     #007Ah,&CSCTL2      ; Set FLLD=0 (DCOCLKCDIV=DCO),set FLLN=7Ah
-;                                        ; fCOCLKDIV = 32768 x (122+1) = 4.030 MHz ; measured : 4.020MHz
-;; =====================================
-;            MOV     #64,X
-;
-;    .ELSEIF FREQUENCY = 8
-;
-;
-;            MOV #00F3h,&CSCTL0          ; preset DCO = 0xF2 (measured value @ 0x180)
-;
-;            MOV     #0007h,&CSCTL1      ; Set 8MHZ DCORSEL,disable DCOFTRIM,Modulation
-;; ===================================== ;  fCOCLKDIV = REFO x (FLLN+1)
-;;            MOV     #00F2h,&CSCTL2      ; Set FLLD=0 (DCOCLKCDIV=DCO),set FLLN=F2h
-;                                        ; fCOCLKDIV = 32768 x (242+1) = 7.963 MHz ; measured : 7.943MHz
-;;            MOV     #00F3h,&CSCTL2      ; Set FLLD=0 (DCOCLKCDIV=DCO),set FLLN=F3h
-;                                        ; fCOCLKDIV = 32768 x (243+1) = 7.995 MHz ; measured : 7.976MHz
-;            MOV     #00F4h,&CSCTL2      ; Set FLLD=0 (DCOCLKCDIV=DCO),set FLLN=F4h
-;                                        ; fCOCLKDIV = 32768 x (244+1) = 8.028 MHz ; measured : 8.009MHz
-;
-;;            MOV     #00F5h,&CSCTL2      ; Set FLLD=0 (DCOCLKCDIV=DCO),set FLLN=F5h
-;                                        ; fCOCLKDIV = 32768 x (245+1) = 8.061 MHz ; measured : 8.042MHz
-;
-;;            MOV     #00F8h,&CSCTL2      ; don't work with cp2102 (by low value)
-;;            MOV     #00FAh,&CSCTL2      ; Set FLLD=0 (DCOCLKCDIV=DCO),set FLLN=FAh
-;
-;; =====================================
-;            MOV     #128,X
-;
-;    .ELSEIF FREQUENCY = 16
-;
-;            MOV #0129h,&CSCTL0          ; preset DCO = 0x129 (measured value @ 0x180)
-;
-;            MOV     #000Bh,&CSCTL1      ; Set 16MHZ DCORSEL,disable DCOFTRIM,Modulation
-;; ===================================== ;  fCOCLKDIV = REFO x (FLLN+1)
-;;            MOV     #01E6h,&CSCTL2      ; Set FLLD=0 (DCOCLKCDIV=DCO),set FLLN=1E6h
-;                                        ; fCOCLKDIV = 32768 x 486+1) = 15.958 MHz ; measured : 15.92MHz
-;;            MOV     #01E7h,&CSCTL2      ; Set FLLD=0 (DCOCLKCDIV=DCO),set FLLN=1E7h
-;                                        ; fCOCLKDIV = 32768 x 487+1) = 15.991 MHz ; measured : 15.95MHz
-;;            MOV     #01E8h,&CSCTL2      ; Set FLLD=0 (DCOCLKCDIV=DCO),set FLLN=1E8h
-;                                        ; fCOCLKDIV = 32768 x 488+1) = 16.023 MHz ; measured : 15.99MHz
-;            MOV     #01E9h,&CSCTL2      ; Set FLLD=0 (DCOCLKCDIV=DCO),set FLLN=1E9h
-;                                        ; fCOCLKDIV = 32768 x 489+1) = 16.056 MHz ; measured : 16.02MHz
-;; =====================================
-;            MOV     #256,X
+    .IFDEF LF_XTAL
+;            MOV     #0000h,&CSCTL3      ; FLL select XT1, FLLREFDIV=0 (default value)
+            MOV     #0000h,&CSCTL4      ; ACLOCK select XT1, MCLK & SMCLK select DCOCLKDIV
+    .ELSE
+            BIS     #0010h,&CSCTL3      ; FLL select REFCLOCK
+;            MOV     #0100h,&CSCTL4      ; ACLOCK select REFO, MCLK & SMCLK select DCOCLKDIV (default value)
+
+            BIS.B   #03,&P2SEL0         ; P2.0 as XOUT, P2.1 as XIN
+
+    .ENDIF
 
     .IF FREQUENCY = 0.5
 
@@ -478,14 +384,6 @@ CTS         .equ    4           ; P6.2
     .error "bad frequency setting, only 0.5,1,2,4,8,12,16 MHz"
     .ENDIF
 
-    .IFDEF LF_XTAL
-;            MOV     #0000h,&CSCTL3      ; FLL select XT1, FLLREFDIV=0 (default value)
-            MOV     #0000h,&CSCTL4      ; ACLOCK select XT1, MCLK & SMCLK select DCOCLKDIV
-    .ELSE
-            BIS     #0010h,&CSCTL3      ; FLL select REFCLOCK
-;            MOV     #0100h,&CSCTL4      ; ACLOCK select REFO, MCLK & SMCLK select DCOCLKDIV (default value)
-    .ENDIF
-
             BIS &SYSRSTIV,&SAVE_SYSRSTIV; store volatile SYSRSTIV preserving a pending request for DEEP_RST
 
 ClockWaitX  MOV     #5209,Y             ; wait 0.5s before starting after POR
@@ -495,5 +393,3 @@ ClockWaitY  SUB     #1,Y                ;1
             SUB     #1,X                ; x 16 @ 1 MHZ = 250ms
             JNZ     ClockWaitX          ; time to stabilize power source ( 500ms )
 
-;WAITFLL     BIT #300h,&CSCTL7          ; wait FLL lock
-;            JNZ WAITFLL
index c331457..9f8ece8 100644 (file)
@@ -344,4 +344,39 @@ SSCL=8!                 P4.3
 SSDA=\$10!              P4.4
 S_BUS=\$18!
 
+UCSWRST=1!          eUSCI Software Reset
+UCTXIE=2!           eUSCI Transmit Interrupt Enable
+UCRXIE=1!           eUSCI Receive Interrupt Enable
+UCTXIFG=2!          eUSCI Transmit Interrupt Flag
+UCRXIFG=1!          eUSCI Receive Interrupt Flag
+UCTXIE0=2!          eUSCI_B Transmit Interrupt Enable
+UCRXIE0=1!          eUSCI_B Receive Interrupt Enable
+UCTXIFG0=2!         eUSCI_B Transmit Interrupt Flag
+UCRXIFG0=1!         eUSCI_B Receive Interrupt Flag
+
+I2CM_CTLW0=\$580!   USCI_B1 Control Word Register 0
+I2CM_CTLW1=\$582!   USCI_B1 Control Word Register 1
+I2CM_BRW=\$586!     USCI_B1 Baud Word Rate 0
+I2CM_STATW=\$588!   USCI_B1 status word 
+I2CM_TBCNT=\$58A!   USCI_B1 byte counter threshold  
+I2CM_RXBUF=\$58C!   USCI_B1 Receive Buffer 8
+I2CM_TXBUF=\$58E!   USCI_B1 Transmit Buffer 8
+I2CM_I2COA0=\$594!  USCI_B1 I2C Own Address 0
+I2CM_ADDRX=\$59C!   USCI_B1 Received Address Register 
+I2CM_I2CSA=\$5A0!   USCI_B1 I2C Slave Address
+I2CM_IE=\$5AA!      USCI_B1 Interrupt Enable
+I2CM_IFG=\$5AC!     USCI_B1 Interrupt Flags Register
+
+I2CS_CTLW0=\$580!   USCI_B1 Control Word Register 0
+I2CS_CTLW1=\$582!   USCI_B1 Control Word Register 1
+I2CS_BRW=\$586!     USCI_B1 Baud Word Rate 0
+I2CS_STATW=\$588!   USCI_B1 status word 
+I2CS_TBCNT=\$58A!   USCI_B1 byte counter threshold  
+I2CS_RXBUF=\$58C!   USCI_B1 Receive Buffer 8
+I2CS_TXBUF=\$58E!   USCI_B1 Transmit Buffer 8
+I2CS_I2COA0=\$594!  USCI_B1 I2C Own Address 0
+I2CS_ADDRX=\$59C!   USCI_B1 Received Address Register 
+I2CS_I2CSA=\$5A0!   USCI_B1 I2C Slave Address
+I2CS_IE=\$5AA!      USCI_B1 Interrupt Enable
+I2CS_IFG=\$5AC!     USCI_B1 Interrupt Flags Register
 
index 5636198..152726b 100644 (file)
@@ -1,113 +1,5 @@
 !MSP430FR2355.pat
 
-! ----------------------------------------------
-! MSP430FR2355 MEMORY MAP
-! ----------------------------------------------
-! 0000-0005 = reserved
-! 0006-001F = tiny RAM
-! 0020-0FFF = peripherals (4 KB)
-! 1000-17FF = ROM bootstrap loader BSL1 (2k)
-! 1800-19FF = information memory (FRAM 512 B)
-! 1A00-1A31 = TLV device descriptor info (FRAM 128 B)
-! 1A80-1FFF = unused
-! 2000-2FFF = RAM (4 KB)
-! 2800-7FFF = unused
-! 8000-FF7F = code memory (FRAM 15232 B)
-! FF80-FFFF = interrupt vectors (FRAM 128 B)
-! FFC00-FFFFF = BSL2 (2k)
-! ----------------------------------------------
-! MSP430FR2355 DEVICE ID
-! ----------------------------------------------
-! 1A04 = 0C, 1A05 = 83
-! ----------------------------------------------
-PAGESIZE=512!         ; MPU unit
-! ----------------------------------------------
-! BSL
-! ----------------------------------------------
-BSL1=\$1000!
-BSL2=\$FFC00!
-! ----------------------------------------------
-! FRAM                          ! INFO B, TLV
-! ----------------------------------------------
-TINYRAM_ORG=\$6!
-TINYRAM_LEN=\$1A!
-INFO_ORG=\$1800!
-INFO_LEN=\$0200!
-TLV_ORG=\$1A00!      ! Device Descriptor Info (Tag-Lenght-Value)
-TLV_LEN=\$0032!      !
-DEVICEID=\$1A04!
-! ----------------------------------------------
-! RAM
-! ----------------------------------------------
-RAM_ORG=\$2000!
-RAM_LEN=\$1000!
-! ----------------------------------------------
-! FRAM
-! ----------------------------------------------
-MAIN_ORG=\$8000!        Code space start
-xdodoes=\$8000!         restore rDODOES: MOV #xdodoes,rDODOES
-xdocon=\$800E!          restore rDOCON: MOV #xdocon,rDOCON
-xdovar=\$8020!          restore rDOVAR: MOV #xdocon,rDOVAR  
-xdocol=\$802A!          restore rDOCOL: MOV #xdocol,rDOCOL      only for DTC model = 1
-DODOES=\$1284!          CALL rDODOES
-DOCON=\$1285!           CALL rDOCON
-DOVAR=\$1286!           CALL rDOVAR
-
-! to find DTC value, download \MSP430-FORTH\FastForthSpecs.4th
-! if DTC = 1, restore rDOCOL as this : MOV #xdocol,rDOCOL
-! if DTC = 2, restore rDOCOL as this : MOV #EXIT,rDOCOL
-! if DTC = 3, nothing to do, R7 is free for use.
-! ----------------------------------------------
-! Interrupt Vectors and signatures - MSP430FR2355
-! ----------------------------------------------
-FRAM_FULL=\$FF30!       80 bytes are sufficient considering what can be compiled in one line and WORD use.
-SIGNATURES=\$FF80!      JTAG/BSL signatures
-JTAG_SIG1=\$FF80!       if 0 (electronic fuse=0) enable JTAG/SBW ! reset by wipe and by S1+<reset>
-JTAG_SIG2=\$FF82!       if JTAG_SIG <> |0xFFFFFFFF, 0x00000000|, SBW and JTAG are locked
-BSL_SIG1=\$FF84!
-BSL_SIG2=\$FF86!
-BSL_CONF_SIG=\$FF88!
-BSL_CONF=\$FF8A!
-BSL_I2C_ADRE=\$FF8C!
-JTAG_PASSWORD=\$FF88!   256 bits
-BSL_PASSWORD=\$FFE0!    256 bits
-VECT_ORG=\$FFCE!         FFCE-FFFF :  24 vectors + reset
-VECT_LEN=\$32!
-
-P4_Vec=\$FFCE!
-P3_Vec=\$FFD0!
-P2_Vec=\$FFD2!
-P1_Vec=\$FFD4!
-SAC1SAC3_Vec=\$FFD6!
-SAC0SAC2_Vec=\$FFD8!
-eCOMPx_Vec=\$FFDA!
-ADC10_Vec=\$FFDC!
-eUSCI_B1_Vec=\$FFDE!
-eUSCI_B0_Vec=\$FFE0!
-eUSCI_A1_Vec=\$FFE2!
-eUSCI_A0_Vec=\$FFE4!
-WDT_Vec=\$FFE6!
-RTC_Vec=\$FFE8!
-TB3_x_Vec=\$FFEA!
-TB3_0_Vec=\$FFEC!
-TB2_x_Vec=\$FFEE!
-TB2_0_Vec=\$FFF0!
-TB1_x_Vec=\$FFF2!
-TB1_0_Vec=\$FFF4!
-TB0_x_Vec=\$FFF6!
-TB0_0_Vec=\$FFF8!
-U_NMI_Vec=\$FFFA!
-S_NMI_Vec=\$FFFC!
-RST_Vec=\$FFFE!
-
-
-LPM4=\$F8! SR(LPM4+GIE)
-LPM3=\$D8! SR(LPM3+GIE)
-LPM2=\$98! SR(LPM2+GIE)
-LPM1=\$58! SR(LPM1+GIE)
-LPM0=\$18! SR(LPM0+GIE)
-
-
 ! ============================================
 ! SR bits :
 ! ============================================
@@ -124,6 +16,12 @@ LPM0=\$18! SR(LPM0+GIE)
 \#UF10=\#\$400! = SR(10) User Flag 2
 \#UF11=\#\$800! = SR(11) User Flag 3
 
+LPM4=\$F8!      = SR(LPM4+GIE)
+LPM3=\$D8!      = SR(LPM3+GIE)
+LPM2=\$98!      = SR(LPM2+GIE)
+LPM1=\$58!      = SR(LPM1+GIE)
+LPM0=\$18!      = SR(LPM0+GIE)
+
 ! ============================================
 ! PORTx, Reg  bits :
 ! ============================================
@@ -155,18 +53,52 @@ NEXT=MOV \@R13+,R0! \ MOV @IP+,PC
 SEMI=MOV \@R1+,R13\nMOV \@R13+,R0!
 
 
-! ===========================================================
-! MSP430FR2xxx and FR4xxx DEVICES HAVE SPECIFIC RAM ADDRESSES
-! ===========================================================
+! ----------------------------------------------
+! MSP430FR2355 MEMORY MAP
+! ----------------------------------------------
+! 0000-0005 = reserved
+! 0006-001F = tiny RAM
+! 0020-0FFF = peripherals (4 KB)
+! 1000-17FF = ROM bootstrap loader BSL1 (2k)
+! 1800-19FF = information memory (FRAM 512 B)
+! 1A00-1A31 = TLV device descriptor info (FRAM 128 B)
+! 1A80-1FFF = unused
+! 2000-2FFF = RAM (4 KB)
+! 2800-7FFF = unused
+! 8000-FF7F = code memory (FRAM 15232 B)
+! FF80-FFFF = interrupt vectors (FRAM 128 B)
+! FFC00-FFFFF = BSL2 (2k)
+! ----------------------------------------------
+! MSP430FR2355 DEVICE ID
+! ----------------------------------------------
+! 1A04 = 0C, 1A05 = 83
+! ----------------------------------------------
+PAGESIZE=512!         ; MPU unit
+
 
+! ============================================
+! TINY RAM
+! ============================================
+TINYRAM_ORG=\$6!
+TINYRAM_LEN=\$1A!
 
-! You can check the addresses below by comparing their values in DTCforthMSP430FRxxxx.lst
-! those addresses are usable with the symbolic assembler
+! ============================================
+! BSL
+! ============================================
+BSL1=\$1000!
+BSL2=\$FFC00!
 
 ! ============================================
-! FastForth INFO(DCBA) memory map (256 bytes):
+! FRAM INFO
 ! ============================================
+INFO_ORG=\$1800!
+INFO_LEN=\$0200!
 
+! You can check the addresses below by comparing their values in DTCforthMSP430FRxxxx.lst
+! those addresses are usable with the symbolic assembler
+! ----------------------------------------------
+! FastForth INFO
+! ----------------------------------------------
 INI_THREAD=\$1800!      .word THREADS
 TERMBRW_RST=\$1802!     .word TERMBRW_RST
 TERMMCTLW_RST=\$1804!   .word TERMMCTLW_RST
@@ -184,9 +116,21 @@ ReadSectorWX=\$1818!    call with W = SectorLO  X = SectorHI
 WriteSectorWX=\$181A!   call with W = SectorLO  X = SectorHI
 
 ! ============================================
-! FORTH RAM areas :
+! FRAM TLV
 ! ============================================
+TLV_ORG=\$1A00!     Device Descriptor Info (Tag-Lenght-Value)
+TLV_LEN=\$0032!
+DEVICEID=\$1A04!
 
+! ============================================
+! RAM
+! ============================================
+RAM_ORG=\$2000!
+RAM_LEN=\$1000!
+
+! ----------------------------------------------
+! FORTH RAM areas :
+! ----------------------------------------------
 LSTACK_SIZE=\#16! words
 PSTACK_SIZE=\#48! words
 RSTACK_SIZE=\#48! words
@@ -194,11 +138,9 @@ PAD_LEN=\#84! bytes
 TIB_LEN=\#84! bytes
 HOLD_SIZE=\#34! bytes
 
-! ============================================
+! ----------------------------------------------
 ! FastForth RAM memory map (>= 1k):
-! ============================================
-
-
+! ----------------------------------------------
 LEAVEPTR=\$2000!    \ Leave-stack pointer, init by QUIT
 LSATCK=\$2000!      \ leave stack,      grow up
 PSTACK=\$2080!      \ parameter stack,  grow down
@@ -218,7 +160,6 @@ HOLD_BASE=\$21B2!   \ BASE HOLD area, grow down
 ! ----------------------
 ! NOT SAVED VARIABLES
 ! ----------------------
-
 HP=\$21B2!              HOLD ptr
 CAPS=\$21B4!            CAPS ON/OFF flag, must be set to -1 before first reset !
 LAST_NFA=\$21B6!
@@ -226,7 +167,7 @@ LAST_THREAD=\$21B8!
 LAST_CFA=\$21BA!
 LAST_PSP=\$21BC!
 
-STATEADR=\$21BE!           Interpreter state
+STATEADR=\$21BE!        Interpreter state
 
 SOURCE_LEN=\$21C0!      len of input stream
 SOURCE_ORG=\$21C2!      adr of input stream
@@ -240,7 +181,7 @@ CURRENT=\$21DA!         CURRENT dictionnary ptr
 BASEADR=\$21DC!           numeric base, must be defined before first reset !
 LINE=\$21DE!            line in interpretation, activated with NOECHO, desactivated with ECHO
 ! ---------------------------------------
-!21E0! 28 RAM bytes free conditionnaly
+!21E0! 28 RAM bytes free
 ! ---------------------------------------
 
 ! ---------------------------------------
@@ -351,6 +292,87 @@ SDIB_ORG=\$251C!
 SD_END=\$2570!
 SD_LEN=\$16E!
 
+! ============================================
+! FRAM MAIN
+! ============================================
+MAIN_ORG=\$8000!        Code space start
+
+SLEEP=\$8000! 
+BODYSLEEP=\$8004!
+VECT_RESET=\$800E! 
+LIT=\$8024! 
+NEXT_ADR=\$802C!
+XSQUOTE=\$802E! 
+QTBRAN=\$8042! 
+BRAN=\$8048! 
+QFBRAN=\$804C! 
+SKIPBRAN=\$8052! 
+XDO=\$8056! 
+XPLOOP=\$8066! 
+XLOOP=\$8078! 
+MUSMOD=\$807E!          unsigned 32/16 division
+SETIB=\$80C4!           Set Input Buffer with org len values, reset >IN 
+REFILL=\$80D4!          accept one line from input and leave org len of input buffer
+CIB_ADR=\$80E4!         contents currently TIB_ORG; may be redirected to SDIB_ORG
+XDODOES=\$80EC!         restore rDODOES: MOV #XDODOES,rDODOES
+XDOCON=\$80FA!          restore rDOCON: MOV #XDOCON,rDOCON
+XDOVAR=\$8106!          restore rDOVAR: MOV #XDOCON,rDOVAR  
+RFROM=\$8106!           
+XDOCOL=\$8110!          restore rDOCOL: MOV #XDOCOL,rDOCOL      only for DTC model = 1
+
+DODOES=\$1284!          CALL rDODOES
+DOCON=\$1285!           CALL rDOCON
+DOVAR=\$1286!           CALL rDOVAR
+DOCOL=\$1287!
+
+! to find DTC value, download \MSP430-FORTH\FastForthSpecs.4th
+! if DTC = 1, restore rDOCOL as this : MOV #xdocol,rDOCOL
+! if DTC = 2, restore rDOCOL as this : MOV #EXIT,rDOCOL
+! if DTC = 3, nothing to do, R7 is free for use.
+! ----------------------------------------------
+! Interrupt Vectors and signatures - MSP430FR2355
+! ----------------------------------------------
+FRAM_FULL=\$FF30!       80 bytes are sufficient considering what can be compiled in one line and WORD use.
+SIGNATURES=\$FF80!      JTAG/BSL signatures
+JTAG_SIG1=\$FF80!       if 0 (electronic fuse=0) enable JTAG/SBW ! reset by wipe and by S1+<reset>
+JTAG_SIG2=\$FF82!       if JTAG_SIG <> |0xFFFFFFFF, 0x00000000|, SBW and JTAG are locked
+BSL_SIG1=\$FF84!
+BSL_SIG2=\$FF86!
+BSL_CONF_SIG=\$FF88!
+BSL_CONF=\$FF8A!
+BSL_I2C_ADRE=\$FF8C!
+JTAG_PASSWORD=\$FF88!   256 bits
+BSL_PASSWORD=\$FFE0!    256 bits
+VECT_ORG=\$FFCE!         FFCE-FFFF :  24 vectors + reset
+VECT_LEN=\$32!
+
+P4_Vec=\$FFCE!
+P3_Vec=\$FFD0!
+P2_Vec=\$FFD2!
+P1_Vec=\$FFD4!
+SAC1SAC3_Vec=\$FFD6!
+SAC0SAC2_Vec=\$FFD8!
+eCOMPx_Vec=\$FFDA!
+ADC10_Vec=\$FFDC!
+eUSCI_B1_Vec=\$FFDE!
+eUSCI_B0_Vec=\$FFE0!
+eUSCI_A1_Vec=\$FFE2!
+eUSCI_A0_Vec=\$FFE4!
+WDT_Vec=\$FFE6!
+RTC_Vec=\$FFE8!
+TB3_x_Vec=\$FFEA!
+TB3_0_Vec=\$FFEC!
+TB2_x_Vec=\$FFEE!
+TB2_0_Vec=\$FFF0!
+TB1_x_Vec=\$FFF2!
+TB1_0_Vec=\$FFF4!
+TB0_x_Vec=\$FFF6!
+TB0_0_Vec=\$FFF8!
+U_NMI_Vec=\$FFFA!
+S_NMI_Vec=\$FFFC!
+RST_Vec=\$FFFE!
+
+
 
 ! ----------------------------------------------------------------------
 ! MSP430FR2355 Peripheral File Map
index 587b8a6..77a0156 100644 (file)
@@ -312,17 +312,18 @@ SD_IFG         .equ eUSCI_A1_SFR + 1Ch    ; USCI_B0 Interrupt Flags Register
 eUSCI_B0
 ; ----------------------------------------------------------------------
     .IFDEF UCB0_TERM
-I2CTERM_CTLW0       .equ eUSCI_B0_SFR + 00h    ; USCI_B0 Control Word Register 0
-I2CTERM_CTLW1       .equ eUSCI_B0_SFR + 02h    ; USCI_B0 Control Word Register 1
-I2CTERM_BRW         .equ eUSCI_B0_SFR + 06h    ; USCI_B0 Baud Word Rate 0
-I2CTERM_RXBUF       .equ eUSCI_B0_SFR + 0Ch    ; USCI_B0 Receive Buffer 8
-I2CTERM_TXBUF       .equ eUSCI_B0_SFR + 0Eh    ; USCI_B0 Transmit Buffer 8
-I2CTERM_I2COA0      .equ eUSCI_B0_SFR + 14h    ; USCI_B0 I2C Own Address 0
-I2CTERM_ADDRX       .equ eUSCI_B0_SFR + 1Ch    ; USCI_B0  Received Address Register 
-I2CTERM_I2CSA       .equ eUSCI_B0_SFR + 20h    ; USCI_B0 I2C Slave Address
-I2CTERM_IE          .equ eUSCI_B0_SFR + 2Ah    ; USCI_B0 Interrupt Enable
-I2CTERM_IFG         .equ eUSCI_B0_SFR + 2Ch    ; USCI_B0 Interrupt Flags Register
-I2CTERMVEC          .equ 0FFE0h      ; interrupt vector for eUSCI_B0
+TERM_CTLW0       .equ eUSCI_B0_SFR + 00h    ; USCI_B0 Control Word Register 0
+TERM_CTLW1       .equ eUSCI_B0_SFR + 02h    ; USCI_B0 Control Word Register 1
+TERM_BRW         .equ eUSCI_B0_SFR + 06h    ; USCI_B0 Baud Word Rate 0
+TERM_STATW       .equ eUSCI_B0_SFR + 08h    ; USCI_B0 Status Word
+TERM_RXBUF       .equ eUSCI_B0_SFR + 0Ch    ; USCI_B0 Receive Buffer 8
+TERM_TXBUF       .equ eUSCI_B0_SFR + 0Eh    ; USCI_B0 Transmit Buffer 8
+TERM_I2COA0      .equ eUSCI_B0_SFR + 14h    ; USCI_B0 I2C Own Address 0
+TERM_ADDRX       .equ eUSCI_B0_SFR + 1Ch    ; USCI_B0  Received Address Register 
+TERM_I2CSA       .equ eUSCI_B0_SFR + 20h    ; USCI_B0 I2C Slave Address
+TERM_IE          .equ eUSCI_B0_SFR + 2Ah    ; USCI_B0 Interrupt Enable
+TERM_IFG         .equ eUSCI_B0_SFR + 2Ch    ; USCI_B0 Interrupt Flags Register
+TERM_VEC         .equ 0FFE0h      ; interrupt vector for eUSCI_B0
     .ENDIF ;UCB0_TERM
 
     .IFDEF UCB0_I2CM ; used by UART2MICC.asm 
index c74a34a..8f2ff7a 100644 (file)
@@ -1,98 +1,5 @@
 !MSP430FR2433.pat
 
-! ----------------------------------------------
-! MSP430FR2433 MEMORY MAP
-! ----------------------------------------------
-! 0000-0FFF = peripherals (4 KB)
-! 1000-17FF = ROM bootstrap loader BSL1 (2k)
-! 1800-19FF = info B (FRAM 512 B)
-! 1A00-1A7F = TLV device descriptor info (FRAM 128 B)
-! 1A80-1FFF = unused
-! 2000-2FFF = RAM (4 KB)
-! 2800-C3FF = unused
-! C400-FF7F = code memory (FRAM 15232 B)
-! FF80-FFFF = interrupt vectors (FRAM 128 B)
-! FFC00-FFFFF = BSL2 (2k)
-! ----------------------------------------------
-!PAGESIZE        .equ 512         ; MPU unit
-! ----------------------------------------------
-! BSL                           
-! ----------------------------------------------
-BSL1=\$1000!
-BSL2=\$FFC00!
-! ----------------------------------------------
-! FRAM                          ; INFO B, TLV
-! ----------------------------------------------
-INFO_ORG =\$1800!
-INFO_LEN=\$0200!
-TLV_ORG=\$1A00!     Device Descriptor Info (Tag-Lenght-Value)
-TLV_LEN=\$0080!
-DEVICEID=\$1A04!
-! ----------------------------------------------
-! RAM
-! ----------------------------------------------
-RAM_ORG=\$2000!
-RAM_LEN=\$1000!
-! ----------------------------------------------
-! FRAM
-! ----------------------------------------------
-MAIN_ORG=\$C400!        Code space start
-xdodoes=\$C400!         restore rDODOES: MOV #xdodoes,rDODOES
-xdocon=\$C40E!          restore rDOCON: MOV #xdocon,rDOCON
-xdovar=\$C420!          restore rDOVAR: MOV #xdocon,rDOVAR  
-xdocol=\$C42A!          restore rDOCOL: MOV #xdocol,rDOCOL      only for DTC model = 1
-DODOES=\$1284!          CALL rDODOES
-DOCON=\$1285!           CALL rDOCON
-DOVAR=\$1286!           CALL rDOVAR
-
-! to find DTC value, download \MSP430-FORTH\FastForthSpecs.4th
-! if DTC = 1, restore rDOCOL as this : MOV #xdocol,rDOCOL
-! if DTC = 2, restore rDOCOL as this : MOV #EXIT,rDOCOL
-! if DTC = 3, nothing to do, R7 is free for use.
-! ----------------------------------------------
-! Interrupt Vectors and signatures - MSP430FR2433
-! ----------------------------------------------
-FRAM_FULL=\$FF30!       80 bytes are sufficient considering what can be compiled in one line and WORD use.
-SIGNATURES=\$FF80!      JTAG/BSL signatures
-JTAG_SIG1=\$FF80!       if 0 (electronic fuse=0) enable JTAG/SBW ; reset by wipe and by S1+<reset>
-JTAG_SIG2=\$FF82!       if JTAG_SIG <> |\$FFFFFFFF, \$00000000|, SBW and JTAG are locked
-BSL_SIG1=\$FF84!        
-BSL_SIG2=\$FF86!        
-JTAG_PASSWORD=\$FF88!   256 bits
-BSL_PASSWORD=\$FFE0!    256 bits
-VECT_ORG=\$FFDA!        FFDA-FFFF
-VECT_LEN=\$26!
-! ----------------------------------------------
-
-
-P2_Vec=\$FFDA!
-P1_Vec=\$FFDC!
-ADC10_B_Vec=\$FFDE!
-eUSCI_B0_Vec=\$FFE0!
-eUSCI_A1_Vec=\$FFE2!
-eUSCI_A0_Vec=\$FFE4!
-WDT_Vec=\$FFE6!
-RTC_Vec=\$FFE8!
-TA3_x_Vec=\$FFEA!
-TA3_0_Vec=\$FFEC!
-TA2_x_Vec=\$FFEE!
-TA2_0_Vec=\$FFF0!
-TA1_x_Vec=\$FFF2!
-TA1_0_Vec=\$FFF4!
-TA0_x_Vec=\$FFF6!
-TA0_0_Vec=\$FFF8!
-U_NMI_Vec=\$FFFA!
-S_NMI_Vec=\$FFFC!
-RST_Vec=\$FFFE!
-
-
-LPM4=\$F8! SR(LPM4+GIE)
-LPM3=\$D8! SR(LPM3+GIE)
-LPM2=\$98! SR(LPM2+GIE)
-LPM1=\$58! SR(LPM1+GIE)
-LPM0=\$18! SR(LPM0+GIE)
-
-
 ! ============================================
 ! SR bits :
 ! ============================================
@@ -109,6 +16,12 @@ LPM0=\$18! SR(LPM0+GIE)
 \#UF10=\#\$400! = SR(10) User Flag 2  
 \#UF11=\#\$800! = SR(11) User Flag 3  
 
+LPM4=\$F8! SR(LPM4+GIE)
+LPM3=\$D8! SR(LPM3+GIE)
+LPM2=\$98! SR(LPM2+GIE)
+LPM1=\$58! SR(LPM1+GIE)
+LPM0=\$18! SR(LPM0+GIE)
+
 ! ============================================
 ! PORTx, Reg  bits :
 ! ============================================
@@ -139,19 +52,38 @@ NOP3=MOV R0,R0!     \ MOV PC,PC      one word three cycles
 NEXT=MOV \@R13+,R0! \ MOV @IP+,PC   
 SEMI=MOV \@R1+,R13\nMOV \@R13+,R0!
 
-
-! ===========================================================
-! MSP430FR2xxx and FR4xxx DEVICES HAVE SPECIFIC RAM ADDRESSES
-! ===========================================================
+! ----------------------------------------------
+! MSP430FR2433 MEMORY MAP
+! ----------------------------------------------
+! 0000-0FFF = peripherals (4 KB)
+! 1000-17FF = ROM bootstrap loader BSL1 (2k)
+! 1800-19FF = info B (FRAM 512 B)
+! 1A00-1A7F = TLV device descriptor info (FRAM 128 B)
+! 2000-2FFF = RAM (4 KB)
+! C400-FF7F = code memory (FRAM 15232 B)
+! FF80-FFFF = interrupt vectors (FRAM 128 B)
+! FFC00-FFFFF = BSL2 (2k)
+! ----------------------------------------------
+!PAGESIZE        .equ 512         ; MPU unit
 
 
-! You can check the addresses below by comparing their values in DTCforthMSP430FRxxxx.lst
-! those addresses are usable with the symbolic assembler
+! ============================================
+! BSL
+! ============================================
+BSL1=\$1000!
+BSL2=\$FFC00!
 
 ! ============================================
-! FastForth INFO(DCBA) memory map (256 bytes):
+! FRAM INFO
 ! ============================================
+INFO_ORG =\$1800!
+INFO_LEN=\$0200!
 
+! You can check the addresses below by comparing their values in DTCforthMSP430FRxxxx.lst
+! those addresses are usable with the symbolic assembler
+! ----------------------------------------------
+! FastForth INFO
+! ----------------------------------------------
 INI_THREAD=\$1800!      .word THREADS
 TERMBRW_RST=\$1802!     .word TERMBRW_RST
 TERMMCTLW_RST=\$1804!   .word TERMMCTLW_RST
@@ -169,9 +101,22 @@ ReadSectorWX=\$1818!    call with W = SectorLO  X = SectorHI
 WriteSectorWX=\$181A!   call with W = SectorLO  X = SectorHI
 
 ! ============================================
-! FORTH RAM areas :
+! FRAM TLV
+! ============================================
+TLV_ORG=\$1A00!     Device Descriptor Info (Tag-Lenght-Value)
+TLV_LEN=\$0080!
+DEVICEID=\$1A04!
+
+
+! ============================================
+! RAM
 ! ============================================
+RAM_ORG=\$2000!
+RAM_LEN=\$1000!
 
+! ---------------------------------------
+! FORTH RAM areas :
+! ---------------------------------------
 LSTACK_SIZE=\#16! words
 PSTACK_SIZE=\#48! words
 RSTACK_SIZE=\#48! words
@@ -179,11 +124,9 @@ PAD_LEN=\#84! bytes
 TIB_LEN=\#84! bytes
 HOLD_SIZE=\#34! bytes
 
-! ============================================
+! ---------------------------------------
 ! FastForth RAM memory map (>= 1k):
-! ============================================
-
-
+! ---------------------------------------
 LEAVEPTR=\$2000!    \ Leave-stack pointer, init by QUIT
 LSATCK=\$2000!      \ leave stack,      grow up
 PSTACK=\$2080!      \ parameter stack,  grow down
@@ -200,10 +143,9 @@ TIB_ORG=\$213C!     \ Terminal input buffer, 84 bytes, grow up
 HOLDS_ORG=\$2190!   \ a good address for HOLDS
 HOLD_BASE=\$21B2!   \ BASE HOLD area, grow down
 
-! ----------------------
+! ---------------------------------------
 ! NOT SAVED VARIABLES
-! ----------------------
-
+! ---------------------------------------
 HP=\$21B2!              HOLD ptr
 CAPS=\$21B4!            CAPS ON/OFF flag, must be set to -1 before first reset !
 LAST_NFA=\$21B6!
@@ -336,6 +278,84 @@ SDIB_ORG=\$251C!
 SD_END=\$2570!
 SD_LEN=\$16E!
 
+! ============================================
+! FRAM MAIN
+! ============================================
+MAIN_ORG=\$C400!        Code space start
+
+SLEEP=\$C400! 
+BODYSLEEP=\$C404!
+VECT_RESET=\$C40E! 
+LIT=\$C424! 
+NEXT_ADR=\$C42C!
+XSQUOTE=\$C42E! 
+QTBRAN=\$C442! 
+BRAN=\$C448! 
+QFBRAN=\$C44C! 
+SKIPBRAN=\$C452! 
+XDO=\$C456! 
+XPLOOP=\$C466! 
+XLOOP=\$C478! 
+MUSMOD=\$C47E!          unsigned 32/16 division
+SETIB=\$C4C4!           Set Input Buffer with org len values, reset >IN 
+REFILL=\$C4D4!          accept one line from input and leave org len of input buffer
+CIB_ADR=\$C4E4!         contents currently TIB_ORG; may be redirected to SDIB_ORG
+XDODOES=\$C4EC!         restore rDODOES: MOV #XDODOES,rDODOES
+XDOCON=\$C4FA!          restore rDOCON: MOV #XDOCON,rDOCON
+XDOVAR=\$C506!          restore rDOVAR: MOV #XDOCON,rDOVAR  
+RFROM=\$C506!           
+XDOCOL=\$C510!          restore rDOCOL: MOV #XDOCOL,rDOCOL      only for DTC model = 1
+
+DODOES=\$1284!          CALL rDODOES
+DOCON=\$1285!           CALL rDOCON
+DOVAR=\$1286!           CALL rDOVAR
+DOCOL=\$1287!
+
+! to find DTC value, download \MSP430-FORTH\FastForthSpecs.4th
+! if DTC = 1, restore rDOCOL as this : MOV #xdocol,rDOCOL
+! if DTC = 2, restore rDOCOL as this : MOV #EXIT,rDOCOL
+! if DTC = 3, nothing to do, R7 is free for use.
+! ----------------------------------------------
+! Interrupt Vectors and signatures - MSP430FR2433
+! ----------------------------------------------
+FRAM_FULL=\$FF30!       80 bytes are sufficient considering what can be compiled in one line and WORD use.
+SIGNATURES=\$FF80!      JTAG/BSL signatures
+JTAG_SIG1=\$FF80!       if 0 (electronic fuse=0) enable JTAG/SBW ; reset by wipe and by S1+<reset>
+JTAG_SIG2=\$FF82!       if JTAG_SIG <> |\$FFFFFFFF, \$00000000|, SBW and JTAG are locked
+BSL_SIG1=\$FF84!        
+BSL_SIG2=\$FF86!        
+JTAG_PASSWORD=\$FF88!   256 bits
+BSL_PASSWORD=\$FFE0!    256 bits
+VECT_ORG=\$FFDA!        FFDA-FFFF
+VECT_LEN=\$26!
+! ----------------------------------------------
+
+P2_Vec=\$FFDA!
+P1_Vec=\$FFDC!
+ADC10_B_Vec=\$FFDE!
+eUSCI_B0_Vec=\$FFE0!
+eUSCI_A1_Vec=\$FFE2!
+eUSCI_A0_Vec=\$FFE4!
+WDT_Vec=\$FFE6!
+RTC_Vec=\$FFE8!
+TA3_x_Vec=\$FFEA!
+TA3_0_Vec=\$FFEC!
+TA2_x_Vec=\$FFEE!
+TA2_0_Vec=\$FFF0!
+TA1_x_Vec=\$FFF2!
+TA1_0_Vec=\$FFF4!
+TA0_x_Vec=\$FFF6!
+TA0_0_Vec=\$FFF8!
+U_NMI_Vec=\$FFFA!
+S_NMI_Vec=\$FFFC!
+RST_Vec=\$FFFE!
+
+
+
+
+! You can check the addresses below by comparing their values in DTCforthMSP430FRxxxx.lst
+! those addresses are usable with the symbolic assembler
+
 
 
 ! ----------------------------------------------------------------------
index 0307edd..8018d37 100644 (file)
@@ -1,141 +1,5 @@
 !MSP430FR2476.pat
 
-! ----------------------------------------------
-! MSP430FR2476 MEMORY MAP
-! ----------------------------------------------
-! 0000-0005 = reserved
-! 0006-001F = TinyRAM
-! 0020-0FFF = peripherals (4 KB)
-! 1000-17FF = ROM bootstrap loader BSL1 (2k)
-! 1800-19FF = info B (FRAM 512 B)
-! 1A00-1A7F = TLV device descriptor info (FRAM 128 B)
-! 1A80-1FFF = unused
-! 2000-3FFF = RAM (8 KB)
-! 4000-7FFF = unused
-! 8000-17FFF = code memory (FRAM 64 kB)
-! FF80-FFFF = interrupt vectors (FRAM 128 B)
-! C0000-C3FFF = CapTivate lib
-! FFC00-FFFFF = BSL2 (2k)
-! ----------------------------------------------
-!PAGESIZE        .equ 512         ; MPU unit
-! ----------------------------------------------
-! BSL                           
-! ----------------------------------------------
-BSL1=\$1000!    to $17FF (2k)
-BSL2=\$FFC00!   to $FFFFFF (1k)
-! ----------------------------------------------
-! FRAM                          ; INFO B, TLV
-! ----------------------------------------------
-INFO_ORG =\$1800!   to $19FF (512b)
-INFO_LEN=\$0200!
-TLV_ORG=\$1A00!     to $1A31 Device Descriptor Info (Tag-Lenght-Value)
-TLV_LEN=\$0080!
-DEVICEID=\$1A04!
-! ----------------------------------------------
-! RAM
-! ----------------------------------------------
-TinyRAM_ORG=\$06!
-TinyRAM_LEN=\$1A!
-RAM_ORG=\$2000!
-RAM_LEN=\$2000!
-! ----------------------------------------------
-! FRAM
-! ----------------------------------------------
-MAIN_ORG=\$8000!        Code space start
-xdodoes=\$8000!         restore rDODOES: MOV #xdodoes,rDODOES
-xdocon=\$800E!          restore rDOCON: MOV #xdocon,rDOCON
-xdovar=\$8020!          restore rDOVAR: MOV #xdocon,rDOVAR  
-xdocol=\$802A!          restore rDOCOL: MOV #xdocol,rDOCOL      only for DTC model = 1
-DODOES=\$1284!          CALL rDODOES
-DOCON=\$1285!           CALL rDOCON
-DOVAR=\$1286!           CALL rDOVAR
-
-! to find DTC value, download \MSP430-FORTH\FastForthSpecs.4th
-! if DTC = 1, restore rDOCOL as this : MOV #xdocol,rDOCOL
-! if DTC = 2, restore rDOCOL as this : MOV #EXIT,rDOCOL
-! if DTC = 3, nothing to do, R7 is free for use.
-! ----------------------------------------------
-! Interrupt Vectors and signatures - MSP430FR2476
-! ----------------------------------------------
-FRAM_FULL=\$FF40!       64 bytes are sufficient considering what can be compiled in one line and WORD use.
-SIGNATURES=\$FF80!      JTAG/BSL signatures
-JTAG_SIG1=\$FF80!       if 0 (electronic fuse=0) enable JTAG/SBW ; reset by wipe and by S1+<reset>
-JTAG_SIG2=\$FF82!       if JTAG_SIG <> |\$FFFFFFFF, \$00000000|, SBW and JTAG are locked
-BSL_SIG1=\$FF84!        
-BSL_SIG2=\$FF86!        
-JTAG_PASSWORD=\$FF88!   256 bits
-BSL_PASSWORD=\$FFE0!    256 bits
-VECT_ORG=\$FFDA!        FFDA-FFFF
-VECT_LEN=\$38!
-! ----------------------------------------------
-
-
-;   .org    INTVECT         ; FFDA-FFFF 26 vectors + reset
-;
-;           .word  reset        ; FFCAh - eCOMP0       
-;           .word  reset        ; FFCCh - P6       
-;           .word  reset        ; FFCEh - P5       
-;           .word  reset        ; FFD0h - P4       
-;           .word  reset        ; FFD2h - P3       
-;           .word  reset        ; FFD4h - P2       
-;           .word  reset        ; FFD6h - P1       
-;           .word  reset        ; FFD8h - ADC10    
-;           .word  reset        ; FFDAh - eUSCI_B1 
-;           .word  reset        ; FFDCh - eUSCI_B0 
-;           .word  reset        ; FFDEh - eUSCI_A1 
-;           .word  reset        ; FFE0h - eUSCI_A0 
-;           .word  reset        ; FFE2h - WDT      
-;           .word  reset        ; FFE4h - RTC      
-;           .word  reset        ; FFE6h - TB0_x    
-;           .word  reset        ; FFE8h - TB0_0    
-;           .word  reset        ; FFEAh - TA3_x    
-;           .word  reset        ; FFECh - TA3_0    
-;           .word  reset        ; FFEEh - TA2_x    
-;           .word  reset        ; FFF0h - TA2_0    
-;           .word  reset        ; FFF2h - TA1_x    
-;           .word  reset        ; FFF4h - TA1_0    
-;           .word  reset        ; FFF6h - TA0_x    
-;           .word  reset        ; FFF8h - TA0_0    
-;           .word  reset        ; FFFAh - UserNMI  
-;           .word  reset        ; FFFCh - SysNMI  
-
-    
-eCOMP0_Vec=\$FFCA!
-P6_Vec=\$FFCC!
-P5_Vec=\$FFCE!
-P4_Vec=\$FFD0!
-P3_Vec=\$FFD2!
-P2_Vec=\$FFD4!
-P1_Vec=\$FFD6!
-ADC10_B_Vec=\$FFD8!
-eUSCI_B1_Vec=\$FFDA!
-eUSCI_B0_Vec=\$FFDC!
-eUSCI_A1_Vec=\$FFDE!
-eUSCI_A0_Vec=\$FFE0!
-WDT_Vec=\$FFE2!
-RTC_Vec=\$FFE4!
-TB0_x_Vec=\$FFE6!
-TB0_0_Vec=\$FFE8!
-TA3_x_Vec=\$FFEA!
-TA3_0_Vec=\$FFEC!
-TA2_x_Vec=\$FFEE!
-TA2_0_Vec=\$FFF0!
-TA1_x_Vec=\$FFF2!
-TA1_0_Vec=\$FFF4!
-TA0_x_Vec=\$FFF6!
-TA0_0_Vec=\$FFF8!
-U_NMI_Vec=\$FFFA!
-S_NMI_Vec=\$FFFC!
-RST_Vec=\$FFFE!
-
-
-LPM4=\$F8! SR(LPM4+GIE)
-LPM3=\$D8! SR(LPM3+GIE)
-LPM2=\$98! SR(LPM2+GIE)
-LPM1=\$58! SR(LPM1+GIE)
-LPM0=\$18! SR(LPM0+GIE)
-
-
 ! ============================================
 ! SR bits :
 ! ============================================
@@ -152,6 +16,12 @@ LPM0=\$18! SR(LPM0+GIE)
 \#UF10=\#\$400! = SR(10) User Flag 2  
 \#UF11=\#\$800! = SR(11) User Flag 3  
 
+LPM4=\$F8! SR(LPM4+GIE)
+LPM3=\$D8! SR(LPM3+GIE)
+LPM2=\$98! SR(LPM2+GIE)
+LPM1=\$58! SR(LPM1+GIE)
+LPM0=\$18! SR(LPM0+GIE)
+
 ! ============================================
 ! PORTx, Reg  bits :
 ! ============================================
@@ -182,19 +52,49 @@ NOP3=MOV R0,R0!     \ MOV PC,PC      one word three cycles
 NEXT=MOV \@R13+,R0! \ MOV @IP+,PC   
 SEMI=MOV \@R1+,R13\nMOV \@R13+,R0!
 
+! ----------------------------------------------
+! MSP430FR2476 MEMORY MAP
+! ----------------------------------------------
+! 0000-0005 = reserved
+! 0006-001F = TinyRAM
+! 0020-0FFF = peripherals (4 KB)
+! 1000-17FF = ROM bootstrap loader BSL1 (2k)
+! 1800-19FF = info B (FRAM 512 B)
+! 1A00-1A7F = TLV device descriptor info (FRAM 128 B)
+! 1A80-1FFF = unused
+! 2000-3FFF = RAM (8 KB)
+! 4000-7FFF = unused
+! 8000-17FFF = code memory (FRAM 64 kB)
+! FF80-FFFF = interrupt vectors (FRAM 128 B)
+! C0000-C3FFF = CapTivate lib
+! FFC00-FFFFF = BSL2 (2k)
+! ----------------------------------------------
+!PAGESIZE        .equ 512         ; MPU unit
 
-! ===========================================================
-! MSP430FR2xxx and FR4xxx DEVICES HAVE SPECIFIC RAM ADDRESSES
-! ===========================================================
 
+! ============================================
+! TINY RAM
+! ============================================
+TinyRAM_ORG=\$06!
+TinyRAM_LEN=\$1A!
 
-! You can check the addresses below by comparing their values in DTCforthMSP430FRxxxx.lst
-! those addresses are usable with the symbolic assembler
+! ============================================
+! BSL
+! ============================================
+BSL1=\$1000!    to $17FF (2k)
+BSL2=\$FFC00!   to $FFFFFF (1k)
 
 ! ============================================
-! FastForth INFO(DCBA) memory map (256 bytes):
+! FRAM INFO
 ! ============================================
+INFO_ORG=\$1800!
+INFO_LEN=\$0200!
 
+! You can check the addresses below by comparing their values in DTCforthMSP430FRxxxx.lst
+! those addresses are usable with the symbolic assembler
+! ----------------------------------------------
+! FastForth INFO(DCBA) memory map (256 bytes):
+! ----------------------------------------------
 INI_THREAD=\$1800!      .word THREADS
 TERMBRW_RST=\$1802!     .word TERMBRW_RST
 TERMMCTLW_RST=\$1804!   .word TERMMCTLW_RST
@@ -212,9 +112,21 @@ ReadSectorWX=\$1818!    call with W = SectorLO  X = SectorHI
 WriteSectorWX=\$181A!   call with W = SectorLO  X = SectorHI
 
 ! ============================================
-! FORTH RAM areas :
+! FRAM TLV
+! ============================================
+TLV_ORG=\$1A00!     to $1A31 Device Descriptor Info (Tag-Lenght-Value)
+TLV_LEN=\$0080!
+DEVICEID=\$1A04!
+
 ! ============================================
+! RAM
+! ============================================
+RAM_ORG=\$2000!
+RAM_LEN=\$2000!
 
+! ----------------------------------------------
+! FORTH RAM areas :
+! ----------------------------------------------
 LSTACK_SIZE=\#16! words
 PSTACK_SIZE=\#48! words
 RSTACK_SIZE=\#48! words
@@ -222,11 +134,9 @@ PAD_LEN=\#84! bytes
 TIB_LEN=\#84! bytes
 HOLD_SIZE=\#34! bytes
 
-! ============================================
+! ----------------------------------------------
 ! FastForth RAM memory map (>= 1k):
-! ============================================
-
-
+! ----------------------------------------------
 LEAVEPTR=\$2000!    \ Leave-stack pointer, init by QUIT
 LSATCK=\$2000!      \ leave stack,      grow up
 PSTACK=\$2080!      \ parameter stack,  grow down
@@ -268,17 +178,7 @@ CURRENT=\$21DA!         CURRENT dictionnary ptr
 BASEADR=\$21DC!           numeric base, must be defined before first reset !
 LINE=\$21DE!            line in interpretation, activated with NOECHO, desactivated with ECHO
 ! ---------------------------------------
-!21E0! 14 RAM bytes free conditionnaly
-! ---------------------------------------
-!ASMBW1=\$21E0          assembler backward reference 1
-!ASMBW2=\$21E2          assembler backward reference 2
-!ASMBW3=\$21E4          assembler backward reference 3
-!ASMFW1=\$21E6          assembler forward reference 1
-!ASMFW2=\$21E8          assembler forward reference 2
-!ASMFW3=\$21EA          assembler forward reference 3
-!RPT_WORD=\$21EC!    
-! ---------------------------------------
-!21EE! 14 RAM bytes free
+!21E0! 28 RAM bytes free
 ! ---------------------------------------
 
 ! ---------------------------------------
@@ -389,6 +289,119 @@ SDIB_ORG=\$251C!
 SD_END=\$2570!
 SD_LEN=\$16E!
 
+! ============================================
+! FRAM MAIN
+! ============================================
+MAIN_ORG=\$8000!        Code space start
+
+SLEEP=\$8000! 
+BODYSLEEP=\$8004!
+VECT_RESET=\$800E! 
+LIT=\$8024! 
+NEXT_ADR=\$802C!
+XSQUOTE=\$802E! 
+QTBRAN=\$8042! 
+BRAN=\$8048! 
+QFBRAN=\$804C! 
+SKIPBRAN=\$8052! 
+XDO=\$8056! 
+XPLOOP=\$8066! 
+XLOOP=\$8078! 
+MUSMOD=\$807E!          unsigned 32/16 division
+SETIB=\$80C4!           Set Input Buffer with org len values, reset >IN 
+REFILL=\$80D4!          accept one line from input and leave org len of input buffer
+CIB_ADR=\$80E4!         contents currently TIB_ORG; may be redirected to SDIB_ORG
+XDODOES=\$80EC!         restore rDODOES: MOV #XDODOES,rDODOES
+XDOCON=\$80FA!          restore rDOCON: MOV #XDOCON,rDOCON
+XDOVAR=\$8106!          restore rDOVAR: MOV #XDOCON,rDOVAR  
+RFROM=\$8106!           
+XDOCOL=\$8110!          restore rDOCOL: MOV #XDOCOL,rDOCOL      only for DTC model = 1
+
+DODOES=\$1284!          CALL rDODOES
+DOCON=\$1285!           CALL rDOCON
+DOVAR=\$1286!           CALL rDOVAR
+DOCOL=\$1287!
+
+! to find DTC value, download \MSP430-FORTH\FastForthSpecs.4th
+! if DTC = 1, restore rDOCOL as this : MOV #xdocol,rDOCOL
+! if DTC = 2, restore rDOCOL as this : MOV #EXIT,rDOCOL
+! if DTC = 3, nothing to do, R7 is free for use.
+! ----------------------------------------------
+! Interrupt Vectors and signatures - MSP430FR2476
+! ----------------------------------------------
+FRAM_FULL=\$FF40!       64 bytes are sufficient considering what can be compiled in one line and WORD use.
+SIGNATURES=\$FF80!      JTAG/BSL signatures
+JTAG_SIG1=\$FF80!       if 0 (electronic fuse=0) enable JTAG/SBW ; reset by wipe and by S1+<reset>
+JTAG_SIG2=\$FF82!       if JTAG_SIG <> |\$FFFFFFFF, \$00000000|, SBW and JTAG are locked
+BSL_SIG1=\$FF84!        
+BSL_SIG2=\$FF86!        
+JTAG_PASSWORD=\$FF88!   256 bits
+BSL_PASSWORD=\$FFE0!    256 bits
+VECT_ORG=\$FFDA!        FFDA-FFFF
+VECT_LEN=\$38!
+! ----------------------------------------------
+
+
+;   .org    INTVECT         ; FFDA-FFFF 26 vectors + reset
+;
+;           .word  reset        ; FFCAh - eCOMP0       
+;           .word  reset        ; FFCCh - P6       
+;           .word  reset        ; FFCEh - P5       
+;           .word  reset        ; FFD0h - P4       
+;           .word  reset        ; FFD2h - P3       
+;           .word  reset        ; FFD4h - P2       
+;           .word  reset        ; FFD6h - P1       
+;           .word  reset        ; FFD8h - ADC10    
+;           .word  reset        ; FFDAh - eUSCI_B1 
+;           .word  reset        ; FFDCh - eUSCI_B0 
+;           .word  reset        ; FFDEh - eUSCI_A1 
+;           .word  reset        ; FFE0h - eUSCI_A0 
+;           .word  reset        ; FFE2h - WDT      
+;           .word  reset        ; FFE4h - RTC      
+;           .word  reset        ; FFE6h - TB0_x    
+;           .word  reset        ; FFE8h - TB0_0    
+;           .word  reset        ; FFEAh - TA3_x    
+;           .word  reset        ; FFECh - TA3_0    
+;           .word  reset        ; FFEEh - TA2_x    
+;           .word  reset        ; FFF0h - TA2_0    
+;           .word  reset        ; FFF2h - TA1_x    
+;           .word  reset        ; FFF4h - TA1_0    
+;           .word  reset        ; FFF6h - TA0_x    
+;           .word  reset        ; FFF8h - TA0_0    
+;           .word  reset        ; FFFAh - UserNMI  
+;           .word  reset        ; FFFCh - SysNMI  
+
+    
+eCOMP0_Vec=\$FFCA!
+P6_Vec=\$FFCC!
+P5_Vec=\$FFCE!
+P4_Vec=\$FFD0!
+P3_Vec=\$FFD2!
+P2_Vec=\$FFD4!
+P1_Vec=\$FFD6!
+ADC10_B_Vec=\$FFD8!
+eUSCI_B1_Vec=\$FFDA!
+eUSCI_B0_Vec=\$FFDC!
+eUSCI_A1_Vec=\$FFDE!
+eUSCI_A0_Vec=\$FFE0!
+WDT_Vec=\$FFE2!
+RTC_Vec=\$FFE4!
+TB0_x_Vec=\$FFE6!
+TB0_0_Vec=\$FFE8!
+TA3_x_Vec=\$FFEA!
+TA3_0_Vec=\$FFEC!
+TA2_x_Vec=\$FFEE!
+TA2_0_Vec=\$FFF0!
+TA1_x_Vec=\$FFF2!
+TA1_0_Vec=\$FFF4!
+TA0_x_Vec=\$FFF6!
+TA0_0_Vec=\$FFF8!
+U_NMI_Vec=\$FFFA!
+S_NMI_Vec=\$FFFC!
+RST_Vec=\$FFFE!
+
+
+
 
 
 ! ----------------------------------------------------------------------
index 662d2d2..9c712c4 100644 (file)
@@ -1,94 +1,5 @@
 !MSP430FR2633.pat
 
-! ----------------------------------------------
-! MSP430FR2633 MEMORY MAP
-! ----------------------------------------------
-! 0000-0FFF = peripherals (4 KB)
-! 1000-17FF = ROM bootstrap loader BSL1 (4x512 B)
-! 1800-187F = info B (FRAM 128 B)
-! 1880-18FF = info A (FRAM 128 B)
-! 1900-19FF = N/A (mirrored into info A/B)
-! 1A00-1A7F = TLV device descriptor info (FRAM 128 B)
-! 2000-2FFF = RAM (4 KB)
-! 4000-6FFF = ROM captivate (12 k)
-! C400-FF7F = code memory (FRAM 15232 B)
-! FF80-FFFF = interrupt vectors (FRAM 127 B)
-! ----------------------------------------------
-! ----------------------------------------------
-! FRAM                          ; INFO B, TLV
-! ----------------------------------------------
-INFO_ORG =\$1800!
-INFO_LEN=\$0200!
-TLV_ORG=\$1A00!     Device Descriptor Info (Tag-Lenght-Value)
-TLV_LEN=\$0080!
-DEVICEID=\$1A04!
-! ----------------------------------------------
-! RAM
-! ----------------------------------------------
-RAM_ORG=\$2000!
-RAM_LEN=\$1000!
-! ----------------------------------------------
-! FRAM
-! ----------------------------------------------
-MAIN_ORG=\$C400!        Code space start
-xdodoes=\$C400!         restore rDODOES: MOV #xdodoes,rDODOES
-xdocon=\$C40E!          restore rDOCON: MOV #xdocon,rDOCON
-xdovar=\$C420!          restore rDOVAR: MOV #xdocon,rDOVAR  
-xdocol=\$C42A!          restore rDOCOL: MOV #xdocol,rDOCOL      only for DTC model = 1
-DODOES=\$1284!          CALL rDODOES
-DOCON=\$1285!           CALL rDOCON
-DOVAR=\$1286!           CALL rDOVAR
-
-! to find DTC value, download \MSP430-FORTH\FastForthSpecs.4th
-! if DTC = 1, restore rDOCOL as this : MOV #xdocol,rDOCOL
-! if DTC = 2, restore rDOCOL as this : MOV #EXIT,rDOCOL
-! if DTC = 3, nothing to do, R7 is free for use.
-! ----------------------------------------------
-! Interrupt Vectors and signatures - MSP430FR2633
-! ----------------------------------------------
-FRAM_FULL=\$FF30!       80 bytes are sufficient considering what can be compiled in one line and WORD use.
-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!  
-JTAG_PASSWORD=\$FF88!   256 bits
-BSL_PASSWORD=\$FFE0!    256 bits
-VECT_ORG=\$FFD8!        FFD8-FFFF
-VECT_LEN=\$28!
-
-
-CAPTIVATE_Vec=\$FFD8!
-P2_Vec=\$FFDA!
-P1_Vec=\$FFDC!
-ADC10_B_Vec=\$FFDE!
-eUSCI_B0_Vec=\$FFE0!
-eUSCI_A1_Vec=\$FFE2!
-eUSCI_A0_Vec=\$FFE4!
-WDT_Vec=\$FFE6!
-RTC_Vec=\$FFE8!
-TA3_x_Vec=\$FFEA!
-TA3_0_Vec=\$FFEC!
-TA2_x_Vec=\$FFEE!
-TA2_0_Vec=\$FFF0!
-TA1_x_Vec=\$FFF2!
-TA1_0_Vec=\$FFF4!
-TA0_x_Vec=\$FFF6!
-TA0_0_Vec=\$FFF8!
-U_NMI_Vec=\$FFFA!
-S_NMI_Vec=\$FFFC!
-RST_Vec=\$FFFE!
-
-
-!MSP430FR2xxx.pat
-
-LPM4=\$F8! SR(LPM4+GIE)
-LPM3=\$D8! SR(LPM3+GIE)
-LPM2=\$98! SR(LPM2+GIE)
-LPM1=\$58! SR(LPM1+GIE)
-LPM0=\$18! SR(LPM0+GIE)
-
-
 ! ============================================
 ! SR bits :
 ! ============================================
@@ -105,6 +16,12 @@ LPM0=\$18! SR(LPM0+GIE)
 \#UF10=\#\$400! = SR(10) User Flag 2  
 \#UF11=\#\$800! = SR(11) User Flag 3  
 
+LPM4=\$F8! SR(LPM4+GIE)
+LPM3=\$D8! SR(LPM3+GIE)
+LPM2=\$98! SR(LPM2+GIE)
+LPM1=\$58! SR(LPM1+GIE)
+LPM0=\$18! SR(LPM0+GIE)
+
 ! ============================================
 ! PORTx, Reg  bits :
 ! ============================================
@@ -135,19 +52,38 @@ NOP3=MOV R0,R0!     \ MOV PC,PC      one word three cycles
 NEXT=MOV \@R13+,R0! \ MOV @IP+,PC   
 SEMI=MOV \@R1+,R13\nMOV \@R13+,R0!
 
+! ----------------------------------------------
+! MSP430FR2633 MEMORY MAP
+! ----------------------------------------------
+! 0000-0FFF = peripherals (4 KB)
+! 1000-17FF = ROM bootstrap loader BSL1 (4x512 B)
+! 1800-19FF = info B (FRAM 512 B)
+! 1A00-1A7F = TLV device descriptor info (FRAM 128 B)
+! 2000-2FFF = RAM (4 KB)
+! 4000-6FFF = ROM captivate (12 k)
+! C400-FF7F = code memory (FRAM 15232 B)
+! FF80-FFFF = interrupt vectors (FRAM 128 B)
+! FFC00-FFFFF = BSL2 (2k)
+! ----------------------------------------------
+!PAGESIZE        .equ 512         ; MPU unit
 
-! ===========================================================
-! MSP430FR2xxx and FR4xxx DEVICES HAVE SPECIFIC RAM ADDRESSES
-! ===========================================================
-
-
-! You can check the addresses below by comparing their values in DTCforthMSP430FRxxxx.lst
-! those addresses are usable with the symbolic assembler
+! ============================================
+! BSL
+! ============================================
+BSL1=\$1000!
+BSL2=\$FFC00!
 
 ! ============================================
-! FastForth INFO(DCBA) memory map (256 bytes):
+! FRAM INFO
 ! ============================================
+INFO_ORG =\$1800!
+INFO_LEN=\$0200!
 
+! You can check the addresses below by comparing their values in DTCforthMSP430FRxxxx.lst
+! those addresses are usable with the symbolic assembler
+! ----------------------------------------------
+! FastForth INFO
+! ----------------------------------------------
 INI_THREAD=\$1800!      .word THREADS
 TERMBRW_RST=\$1802!     .word TERMBRW_RST
 TERMMCTLW_RST=\$1804!   .word TERMMCTLW_RST
@@ -165,9 +101,21 @@ ReadSectorWX=\$1818!    call with W = SectorLO  X = SectorHI
 WriteSectorWX=\$181A!   call with W = SectorLO  X = SectorHI
 
 ! ============================================
-! FORTH RAM areas :
+! FRAM TLV
+! ============================================
+TLV_ORG=\$1A00!     Device Descriptor Info (Tag-Lenght-Value)
+TLV_LEN=\$0080!
+DEVICEID=\$1A04!
+
+! ============================================
+! RAM
 ! ============================================
+RAM_ORG=\$2000!
+RAM_LEN=\$1000!
 
+! ---------------------------------------
+! FORTH RAM areas :
+! ---------------------------------------
 LSTACK_SIZE=\#16! words
 PSTACK_SIZE=\#48! words
 RSTACK_SIZE=\#48! words
@@ -175,11 +123,9 @@ PAD_LEN=\#84! bytes
 TIB_LEN=\#84! bytes
 HOLD_SIZE=\#34! bytes
 
-! ============================================
+! ---------------------------------------
 ! FastForth RAM memory map (>= 1k):
-! ============================================
-
-
+! ---------------------------------------
 LEAVEPTR=\$2000!    \ Leave-stack pointer, init by QUIT
 LSATCK=\$2000!      \ leave stack,      grow up
 PSTACK=\$2080!      \ parameter stack,  grow down
@@ -196,10 +142,9 @@ TIB_ORG=\$213C!     \ Terminal input buffer, 84 bytes, grow up
 HOLDS_ORG=\$2190!   \ a good address for HOLDS
 HOLD_BASE=\$21B2!   \ BASE HOLD area, grow down
 
-! ----------------------
+! ---------------------------------------
 ! NOT SAVED VARIABLES
-! ----------------------
-
+! ---------------------------------------
 HP=\$21B2!              HOLD ptr
 CAPS=\$21B4!            CAPS ON/OFF flag, must be set to -1 before first reset !
 LAST_NFA=\$21B6!
@@ -333,10 +278,80 @@ SD_END=\$2570!
 SD_LEN=\$16E!
 
 ! ============================================
-! Special Fonction Registers (SFR)
+! FRAM MAIN
 ! ============================================
+MAIN_ORG=\$C400!        Code space start
+
+SLEEP=\$C400! 
+BODYSLEEP=\$C404!
+VECT_RESET=\$C40E! 
+LIT=\$C424! 
+NEXT_ADR=\$C42C!
+XSQUOTE=\$C42E! 
+QTBRAN=\$C442! 
+BRAN=\$C448! 
+QFBRAN=\$C44C! 
+SKIPBRAN=\$C452! 
+XDO=\$C456! 
+XPLOOP=\$C466! 
+XLOOP=\$C478! 
+MUSMOD=\$C47E!          unsigned 32/16 division
+SETIB=\$C4C4!           Set Input Buffer with org len values, reset >IN 
+REFILL=\$C4D4!          accept one line from input and leave org len of input buffer
+CIB_ADR=\$C4E4!         contents currently TIB_ORG; may be redirected to SDIB_ORG
+XDODOES=\$C4EC!         restore rDODOES: MOV #XDODOES,rDODOES
+XDOCON=\$C4FA!          restore rDOCON: MOV #XDOCON,rDOCON
+XDOVAR=\$C506!          restore rDOVAR: MOV #XDOCON,rDOVAR  
+RFROM=\$C506!           
+XDOCOL=\$C510!          restore rDOCOL: MOV #XDOCOL,rDOCOL      only for DTC model = 1
+
+DODOES=\$1284!          CALL rDODOES
+DOCON=\$1285!           CALL rDOCON
+DOVAR=\$1286!           CALL rDOVAR
+DOCOL=\$1287!
+
+! to find DTC value, download \MSP430-FORTH\FastForthSpecs.4th
+! if DTC = 1, restore rDOCOL as this : MOV #xdocol,rDOCOL
+! if DTC = 2, restore rDOCOL as this : MOV #EXIT,rDOCOL
+! if DTC = 3, nothing to do, R7 is free for use.
+! ----------------------------------------------
+! Interrupt Vectors and signatures - MSP430FR2633
+! ----------------------------------------------
+FRAM_FULL=\$FF30!       80 bytes are sufficient considering what can be compiled in one line and WORD use.
+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!  
+JTAG_PASSWORD=\$FF88!   256 bits
+BSL_PASSWORD=\$FFE0!    256 bits
+VECT_ORG=\$FFD8!        FFD8-FFFF
+VECT_LEN=\$28!
 
+CAPTIVATE_Vec=\$FFD8!
+P2_Vec=\$FFDA!
+P1_Vec=\$FFDC!
+ADC10_B_Vec=\$FFDE!
+eUSCI_B0_Vec=\$FFE0!
+eUSCI_A1_Vec=\$FFE2!
+eUSCI_A0_Vec=\$FFE4!
+WDT_Vec=\$FFE6!
+RTC_Vec=\$FFE8!
+TA3_x_Vec=\$FFEA!
+TA3_0_Vec=\$FFEC!
+TA2_x_Vec=\$FFEE!
+TA2_0_Vec=\$FFF0!
+TA1_x_Vec=\$FFF2!
+TA1_0_Vec=\$FFF4!
+TA0_x_Vec=\$FFF6!
+TA0_0_Vec=\$FFF8!
+U_NMI_Vec=\$FFFA!
+S_NMI_Vec=\$FFFC!
+RST_Vec=\$FFFE!
 
+! ============================================
+! Special Fonction Registers (SFR)
+! ============================================
 
 SFRIE1=\$100!       \ SFR enable register
 SFRIFG1=\$102!      \ SFR flag register
index b98c602..43f88e7 100644 (file)
@@ -1,92 +1,5 @@
 !MSP430FR4133.pat
 
-! ----------------------------------------------
-! MSP430FR5739 MEMORY MAP
-! ----------------------------------------------
-! 0000-0FFF = peripherals (4 KB)
-! 1000-17FF = ROM bootstrap loader BSL0..3 (4x512 B)
-! 1800-187F = info B (FRAM 128 B)
-! 1880-18FF = info A (FRAM 128 B)
-! 1900-19FF = N/A (mirrored into info A/B)
-! 1A00-1A7F = TLV device descriptor info (FRAM 128 B)
-! 1A80-1BFF = unused (385 B)
-! 1C00-1FFF = RAM (1 KB)
-! 2000-C1FF = unused (41472 B)
-! C400-FF7F = code memory (FRAM 15232 B)
-! FF80-FFFF = interrupt vectors (FRAM 127 B)
-! ----------------------------------------------
-! ----------------------------------------------
-! FRAM                          ! INFO B, TLV
-! ----------------------------------------------
-INFO_ORG=\$1800!
-INFO_LEN=\$0200!
-TLV_ORG=\$1A00!      ! Device Descriptor Info (Tag-Lenght-Value)
-TLV_LEN=\$0080!      !
-DEVICEID=\$1A04!
-! ----------------------------------------------
-! RAM
-! ----------------------------------------------
-RAM_ORG=\$2000!
-RAM_LEN=\$0800!
-! ----------------------------------------------
-! FRAM
-! ----------------------------------------------
-MAIN_ORG=\$C400!        Code space start
-xdodoes=\$C400!         restore rDODOES: MOV #xdodoes,rDODOES
-xdocon=\$C40E!          restore rDOCON: MOV #xdocon,rDOCON
-xdovar=\$C420!          restore rDOVAR: MOV #xdocon,rDOVAR  
-xdocol=\$C42A!          restore rDOCOL: MOV #xdocol,rDOCOL      only for DTC model = 1
-DODOES=\$1284!          CALL rDODOES
-DOCON=\$1285!           CALL rDOCON
-DOVAR=\$1286!           CALL rDOVAR
-
-! to find DTC value, download \MSP430-FORTH\FastForthSpecs.4th
-! if DTC = 1, restore rDOCOL as this : MOV #xdocol,rDOCOL
-! if DTC = 2, restore rDOCOL as this : MOV #EXIT,rDOCOL
-! if DTC = 3, nothing to do, R7 is free for use.
-! ----------------------------------------------
-! Interrupt Vectors and signatures - MSP430FR4133
-! ----------------------------------------------
-FRAM_FULL=\$FF30!       80 bytes are sufficient considering what can be compiled in one line and WORD use.
-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!  
-JTAG_PASSWORD=\$FF88!   256 bits
-BSL_PASSWORD=\$FFE0!    256 bits
-VECT_ORG=\$FFE2!         FFE2-FFFF
-VECT_LEN=\$1E!
-
-
-LCD_Vec=\$FFE2!
-P2_Vec=\$FFE4!
-P1_Vec=\$FFE6!
-ADC10_B_Vec=\$FFE8!
-eUSCI_B0_Vec=\$FFEA!
-eUSCI_A0_Vec=\$FFEC!
-WDT_Vec=\$FFEE!
-RTC_Vec=\$FFF0!
-TA1_x_Vec=\$FFF2!
-TA1_0_Vec=\$FFF4!
-TA0_x_Vec=\$FFF6!
-TA0_0_Vec=\$FFF8!
-U_NMI_Vec=\$FFFA!
-S_NMI_Vec=\$FFFC!
-RST_Vec=\$FFFE!
-
-
-
-
-!MSP430FR2xxx.pat
-
-LPM4=\$F8! SR(LPM4+GIE)
-LPM3=\$D8! SR(LPM3+GIE)
-LPM2=\$98! SR(LPM2+GIE)
-LPM1=\$58! SR(LPM1+GIE)
-LPM0=\$18! SR(LPM0+GIE)
-
-
 ! ============================================
 ! SR bits :
 ! ============================================
@@ -103,6 +16,12 @@ LPM0=\$18! SR(LPM0+GIE)
 \#UF10=\#\$400! = SR(10) User Flag 2  
 \#UF11=\#\$800! = SR(11) User Flag 3  
 
+LPM4=\$F8! SR(LPM4+GIE)
+LPM3=\$D8! SR(LPM3+GIE)
+LPM2=\$98! SR(LPM2+GIE)
+LPM1=\$58! SR(LPM1+GIE)
+LPM0=\$18! SR(LPM0+GIE)
+
 ! ============================================
 ! PORTx, Reg  bits :
 ! ============================================
@@ -133,19 +52,34 @@ NOP3=MOV R0,R0!     \ MOV PC,PC      one word three cycles
 NEXT=MOV \@R13+,R0! \ MOV @IP+,PC   
 SEMI=MOV \@R1+,R13\nMOV \@R13+,R0!
 
+! ----------------------------------------------
+! MSP430FR4133 MEMORY MAP
+! ----------------------------------------------
+! 0000-0FFF = peripherals (4 KB)
+! 1000-13FF = ROM bootstrap loader BSL0.1 (2x512 B)
+! 1800-19FF = INFO 512 B
+! 1A00-1A23 = TLV device descriptor info (FRAM 35 B)
+! 2000-27FF = RAM (2 KB)
+! C400-FF7F = code memory (FRAM 15232 B)
+! FF80-FFFF = interrupt vectors (FRAM 127 B)
+! ----------------------------------------------
 
-! ===========================================================
-! MSP430FR2xxx and FR4xxx DEVICES HAVE SPECIFIC RAM ADDRESSES
-! ===========================================================
-
-
-! You can check the addresses below by comparing their values in DTCforthMSP430FRxxxx.lst
-! those addresses are usable with the symbolic assembler
+! ============================================
+! BSL
+! ============================================
+BSL1=\$1000!
 
 ! ============================================
-! FastForth INFO(DCBA) memory map (256 bytes):
+! FRAM INFO
 ! ============================================
+INFO_ORG =\$1800!
+INFO_LEN=\$0200!
 
+! You can check the addresses below by comparing their values in DTCforthMSP430FRxxxx.lst
+! those addresses are usable with the symbolic assembler
+! ----------------------------------------------
+! FastForth INFO
+! ----------------------------------------------
 INI_THREAD=\$1800!      .word THREADS
 TERMBRW_RST=\$1802!     .word TERMBRW_RST
 TERMMCTLW_RST=\$1804!   .word TERMMCTLW_RST
@@ -163,9 +97,21 @@ ReadSectorWX=\$1818!    call with W = SectorLO  X = SectorHI
 WriteSectorWX=\$181A!   call with W = SectorLO  X = SectorHI
 
 ! ============================================
-! FORTH RAM areas :
+! FRAM TLV
+! ============================================
+TLV_ORG=\$1A00!      ! Device Descriptor Info (Tag-Lenght-Value)
+TLV_LEN=\$0080!      !
+DEVICEID=\$1A04!
+
+! ============================================
+! RAM
 ! ============================================
+RAM_ORG=\$2000!
+RAM_LEN=\$0800!
 
+! ---------------------------------------
+! FORTH RAM areas :
+! ---------------------------------------
 LSTACK_SIZE=\#16! words
 PSTACK_SIZE=\#48! words
 RSTACK_SIZE=\#48! words
@@ -173,11 +119,9 @@ PAD_LEN=\#84! bytes
 TIB_LEN=\#84! bytes
 HOLD_SIZE=\#34! bytes
 
-! ============================================
+! ---------------------------------------
 ! FastForth RAM memory map (>= 1k):
-! ============================================
-
-
+! ---------------------------------------
 LEAVEPTR=\$2000!    \ Leave-stack pointer, init by QUIT
 LSATCK=\$2000!      \ leave stack,      grow up
 PSTACK=\$2080!      \ parameter stack,  grow down
@@ -194,10 +138,9 @@ TIB_ORG=\$213C!     \ Terminal input buffer, 84 bytes, grow up
 HOLDS_ORG=\$2190!   \ a good address for HOLDS
 HOLD_BASE=\$21B2!   \ BASE HOLD area, grow down
 
-! ----------------------
+! ---------------------------------------
 ! NOT SAVED VARIABLES
-! ----------------------
-
+! ---------------------------------------
 HP=\$21B2!              HOLD ptr
 CAPS=\$21B4!            CAPS ON/OFF flag, must be set to -1 before first reset !
 LAST_NFA=\$21B6!
@@ -219,7 +162,7 @@ CURRENT=\$21DA!         CURRENT dictionnary ptr
 BASEADR=\$21DC!           numeric base, must be defined before first reset !
 LINE=\$21DE!            line in interpretation, activated with NOECHO, desactivated with ECHO
 ! ---------------------------------------
-!21E0! 28 RAM bytes free
+!21E0! 28 RAM bytes free 
 ! ---------------------------------------
 
 ! ---------------------------------------
@@ -330,12 +273,76 @@ SDIB_ORG=\$251C!
 SD_END=\$2570!
 SD_LEN=\$16E!
 
-
 ! ============================================
-! Special Fonction Registers (SFR)
+! FRAM MAIN
 ! ============================================
+MAIN_ORG=\$C400!        Code space start
+
+SLEEP=\$C400! 
+BODYSLEEP=\$C404!
+VECT_RESET=\$C40E! 
+LIT=\$C424! 
+NEXT_ADR=\$C42C!
+XSQUOTE=\$C42E! 
+QTBRAN=\$C442! 
+BRAN=\$C448! 
+QFBRAN=\$C44C! 
+SKIPBRAN=\$C452! 
+XDO=\$C456! 
+XPLOOP=\$C466! 
+XLOOP=\$C478! 
+MUSMOD=\$C47E!          unsigned 32/16 division
+SETIB=\$C4C4!           Set Input Buffer with org len values, reset >IN 
+REFILL=\$C4D4!          accept one line from input and leave org len of input buffer
+CIB_ADR=\$C4E4!         contents currently TIB_ORG; may be redirected to SDIB_ORG
+XDODOES=\$C4EC!         restore rDODOES: MOV #XDODOES,rDODOES
+XDOCON=\$C4FA!          restore rDOCON: MOV #XDOCON,rDOCON
+XDOVAR=\$C506!          restore rDOVAR: MOV #XDOCON,rDOVAR  
+RFROM=\$C506!           
+XDOCOL=\$C510!          restore rDOCOL: MOV #XDOCOL,rDOCOL      only for DTC model = 1
+
+DODOES=\$1284!          code of CALL rDODOES
+DOCON=\$1285!           code of CALL rDOCON
+DOVAR=\$1286!           code of CALL rDOVAR
+DOCOL=\$1287!
+
+! to find DTC value, download \MSP430-FORTH\FastForthSpecs.4th
+! if DTC = 1, restore rDOCOL as this : MOV #xdocol,rDOCOL
+! if DTC = 2, restore rDOCOL as this : MOV #EXIT,rDOCOL
+! if DTC = 3, nothing to do, R7 is free for use.
+! ----------------------------------------------
+! Interrupt Vectors and signatures - MSP430FR4133
+! ----------------------------------------------
+FRAM_FULL=\$FF30!       80 bytes are sufficient considering what can be compiled in one line and WORD use.
+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!  
+JTAG_PASSWORD=\$FF88!   256 bits
+BSL_PASSWORD=\$FFE0!    256 bits
+VECT_ORG=\$FFE2!         FFE2-FFFF
+VECT_LEN=\$1E!
 
+LCD_Vec=\$FFE2!
+P2_Vec=\$FFE4!
+P1_Vec=\$FFE6!
+ADC10_B_Vec=\$FFE8!
+eUSCI_B0_Vec=\$FFEA!
+eUSCI_A0_Vec=\$FFEC!
+WDT_Vec=\$FFEE!
+RTC_Vec=\$FFF0!
+TA1_x_Vec=\$FFF2!
+TA1_0_Vec=\$FFF4!
+TA0_x_Vec=\$FFF6!
+TA0_0_Vec=\$FFF8!
+U_NMI_Vec=\$FFFA!
+S_NMI_Vec=\$FFFC!
+RST_Vec=\$FFFE!
 
+! ============================================
+! Special Fonction Registers (SFR)
+! ============================================
 
 SFRIE1=\$100!       \ SFR enable register
 SFRIFG1=\$102!      \ SFR flag register
index dbc3ab0..0beae86 100644 (file)
@@ -1,102 +1,5 @@
 !MSP430fr5738.pat
 
-! ----------------------------------------------
-! MSP430FR5738 MEMORY MAP
-! ----------------------------------------------
-! 0000-0FFF = peripherals (4 KB)
-! 1000-17FF = ROM bootstrap loader BSL0..3 (4x512 B)
-! 1800-187F = info B (FRAM 128 B)
-! 1880-18FF = info A (FRAM 128 B)
-! 1900-19FF = N/A (mirrored into info A/B)
-! 1A00-1A7F = TLV device descriptor info (FRAM 128 B)
-! 1A80-1BFF = unused (385 B)
-! 1C00-1FFF = RAM (1 KB)
-! 2000-C1FF = unused (41472 B)
-! C200-FF7F = code memory (FRAM 15743 B)
-! FF80-FFFF = interrupt vectors (FRAM 127 B)
-! ----------------------------------------------
-! ----------------------------------------------
-! FRAM                          ! INFO B, TLV
-! ----------------------------------------------
-INFO_ORG=\$1800!
-INFO_LEN=\$0100!
-INFOB_ORG=\$1800!
-INFOB_LEN=\$0080!
-INFOA_ORG=\$1880!
-INFOA_LEN=\$0080!
-TLV_ORG=\$1A00!         Device Descriptor Info (Tag-Lenght-Value)
-TLV_LEN=\$0080!
-DEVICEID=\$1A04!
-! ----------------------------------------------
-! RAM
-! ----------------------------------------------
-RAM_ORG=\$1C00!
-RAM_LEN=\$0400!
-! ----------------------------------------------
-! FRAM
-! ----------------------------------------------
-MAIN_ORG=\$C200!        Code space start
-xdodoes=\$C200!         restore rDODOES: MOV #xdodoes,rDODOES
-xdocon=\$C20E!          restore rDOCON: MOV #xdocon,rDOCON
-xdovar=\$C220!          restore rDOVAR: MOV #xdocon,rDOVAR  
-xdocol=\$C22A!          restore rDOCOL: MOV #xdocol,rDOCOL      only for DTC model = 1
-DODOES=\$1284!          CALL rDODOES
-DOCON=\$1285!           CALL rDOCON
-DOVAR=\$1286!           CALL rDOVAR
-
-! to find DTC value, download \MSP430-FORTH\FastForthSpecs.4th
-! if DTC = 1, restore rDOCOL as this : MOV #xdocol,rDOCOL
-! if DTC = 2, restore rDOCOL as this : MOV #EXIT,rDOCOL
-! if DTC = 3, nothing to do, R7 is free for use.
-! ----------------------------------------------
-! Interrupt Vectors and signatures - MSP430FR5738
-! ----------------------------------------------
-FRAM_FULL=\$FF30!       80 bytes are sufficient considering what can be compiled in one line and WORD use.
-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!
-JTAG_PASSWORD=\$FF88!   256 bits
-BSL_PASSWORD=\$FFE0!    256 bits
-VECT_ORG=\$FFCE!        FFCE-FFFF
-VECT_LEN=\$32!
-
-
-RTC_Vec=\$FFCE!
-P4_Vec=\$FFD0!
-P3_Vec=\$FFD2!
-TB2_x_Vec=\$FFD4!       All others
-TB2_0_Vec=\$FFD6!       only CCIFG0
-P2_Vec=\$FFD8!
-TB1_x_Vec=\$FFDA!       All others
-TB1_0_Vec=\$FFDC!       only CCIFG0
-P1_Vec=\$FFDE!
-TA1_x_Vec=\$FFE0!       All others
-TA1_0_Vec=\$FFE2!       only CCIFG0
-DMA_Vec=\$FFE4!
-!eUSCI_A1_Vec=\$FFE6!
-TA0_x_Vec=\$FFE8!       All others
-TA0_0_Vec=\$FFEA!       only CCIFG0
-ADC10_B_Vec=\$FFEC!
-eUSCI_B0_Vec=\$FFEE!
-eUSCI_A0_Vec=\$FFF0!
-TERM_Vec=\$FFF0!
-WDT_Vec=\$FFF2!
-TB0_x_Vec=\$FFF4!       All others
-TB0_0_Vec=\$FFF6!       only CCIFG0
-COMP_D_Vec=\$FFF8!
-USER_NMI_Vec=\$FFFA!
-SYS_NMI_Vec=\$FFFC!
-RST_Vec=\$FFFE!
-
-LPM4=\$F8! SR(LPM4+GIE)
-LPM3=\$D8! SR(LPM3+GIE)
-LPM2=\$98! SR(LPM2+GIE)
-LPM1=\$58! SR(LPM1+GIE)
-LPM0=\$18! SR(LPM0+GIE)
-
-
 ! ============================================
 ! SR bits :
 ! ============================================
@@ -113,6 +16,12 @@ LPM0=\$18! SR(LPM0+GIE)
 \#UF10=\#\$400! = SR(10) User Flag 2
 \#UF11=\#\$800! = SR(11) User Flag 3
 
+LPM4=\$F8! SR(LPM4+GIE)
+LPM3=\$D8! SR(LPM3+GIE)
+LPM2=\$98! SR(LPM2+GIE)
+LPM1=\$58! SR(LPM1+GIE)
+LPM0=\$18! SR(LPM0+GIE)
+
 ! ============================================
 ! PORTx, Reg  bits :
 ! ============================================
@@ -143,19 +52,35 @@ NOP3=MOV R0,R0!     \ MOV PC,PC      one word three cycles
 NEXT=MOV \@R13+,R0! \ MOV @IP+,PC
 SEMI=MOV \@R1+,R13\nMOV \@R13+,R0!
 
-! =================================================
-! MSP430FR57xx DEVICES HAVE SPECIFIC RAM ADDRESSES!
-! =================================================
-
-
+! ----------------------------------------------
+! MSP430FR5738 MEMORY MAP
+! ----------------------------------------------
+! 0000-0FFF = peripherals (4 KB)
+! 1000-17FF = ROM bootstrap loader BSL0..3 (4x512 B)
+! 1800-187F = info B (FRAM 128 B)
+! 1880-18FF = info A (FRAM 128 B)
+! 1A00-1A7F = TLV device descriptor info (FRAM 128 B)
+! 1C00-1FFF = RAM (1 KB)
+! C200-FF7F = code memory (FRAM 15743 B)
+! FF80-FFFF = interrupt vectors (FRAM 127 B)
+! ----------------------------------------------
 
-! You can check the addresses below by comparing their values in DTCforthMSP430FRxxxx.lst
-! those addresses are usable with the symbolic assembler
+! ============================================
+! BSL
+! ============================================
+BSL1=\$1000!
 
 ! ============================================
-! FastForth INFO(DCBA) memory map (256 bytes):
+! FRAM INFO
 ! ============================================
+INFO_ORG=\$1800!
+INFO_LEN=\$0100!
 
+! You can check the addresses below by comparing their values in DTCforthMSP430FRxxxx.lst
+! those addresses are usable with the symbolic assembler
+! ----------------------------------------------
+! FastForth INFO
+! ----------------------------------------------
 INI_THREAD=\$1800!      .word THREADS
 TERMBRW_RST=\$1802!     .word TERMBRW_RST
 TERMMCTLW_RST=\$1804!   .word TERMMCTLW_RST
@@ -257,7 +182,6 @@ HDLW_BUFofst=22!    BUFFER offset ; used by LOAD" and by WRITE"
 HDLW_PrevLEN=24!    previous LEN
 HDLW_PrevORG=26!    previous ORG
 
-
 !OpenedFirstFile     ; "openedFile" structure 
 HandleMax=5!
 HandleLenght=28!
@@ -272,10 +196,22 @@ SDIB_I2CADR=\$1CE0!
 SDIB_I2CCNT=\$1CE2!
 SDIB_ORG=\$1CE4!
 
+! ============================================
+! FRAM TLV
+! ============================================
+TLV_ORG=\$1A00!         Device Descriptor Info (Tag-Lenght-Value)
+TLV_LEN=\$0080!
+DEVICEID=\$1A04!
 
 ! ============================================
-! FORTH RAM areas :
+! RAM
 ! ============================================
+RAM_ORG=\$1C00!
+RAM_LEN=\$0400!
+
+! ---------------------------------------
+! FORTH RAM areas :
+! ---------------------------------------
 LSTACK_SIZE=\#16! words
 PSTACK_SIZE=\#48! words
 RSTACK_SIZE=\#48! words
@@ -283,10 +219,9 @@ PAD_LEN=\#84! bytes
 TIB_LEN=\#84! bytes
 HOLD_SIZE=\#34! bytes
 
-! ============================================
-! FastForth RAM memory map (= 1k):
-! ============================================
-
+! ---------------------------------------
+! FastForth RAM memory map (= 1k)
+! ---------------------------------------
 LEAVEPTR=\$1C00!    \ Leave-stack pointer, init by QUIT
 LSATCK=\$1C00!      \ leave stack,      grow up
 PSTACK=\$1C80!      \ parameter stack,  grow down
@@ -328,7 +263,7 @@ CURRENT=\$1DDA!         CURRENT dictionnary ptr
 BASEADR=\$1DDC!           numeric base, must be defined before first reset !
 LINE=\$1DDE!            line in interpretation, activated with NOECHO, desactivated with ECHO
 ! ---------------------------------------
-!1DE0! 28 RAM bytes free 
+!1DE0! 28 RAM bytes free
 ! ---------------------------------------
 
 ! ---------------------------------------
@@ -341,10 +276,85 @@ BUFEND=\$2000!
 
 
 ! ============================================
-! Special Fonction Registers (SFR)
+! FRAM MAIN
 ! ============================================
+MAIN_ORG=\$C200!        Code space start
+
+SLEEP=\$C200! 
+BODYSLEEP=\$C204!       address of SLEEP by default
+INIT_VECT=\$C20E!       default init for RST and INT vectors, comprizing default terminal INT 
+LIT=\$C224! 
+NEXT_ADR=\$C22C!
+XSQUOTE=\$C22E!         
+QTBRAN=\$C242! 
+BRAN=\$C248! 
+QFBRAN=\$C24C! 
+SKIPBRAN=\$C252! 
+XDO=\$C256! 
+XPLOOP=\$C266! 
+XLOOP=\$C278! 
+MUSMOD=\$C27E!          unsigned 32/16 division
+SETIB=\$C2C4!           Set Input Buffer with org len values, reset >IN 
+REFILL=\$C2D4!          accept one line from input and leave org len of input buffer
+CIB_ADR=\$C2E4!         contents currently TIB_ORG; may be redirected to SDIB_ORG
+XDODOES=\$C2EC!         restore rDODOES: MOV #XDODOES,rDODOES
+XDOCON=\$C2FA!          restore rDOCON: MOV #XDOCON,rDOCON
+XDOCOL=\$C306!          restore rDOCOL: MOV #XDOCOL,rDOCOL      only for DTC model = 1
+
+DODOES=\$1284!          CALL rDODOES
+DOCON=\$1285!           CALL rDOCON
+DOVAR=\$1286!           CALL rDOVAR
+DOCOL=\$1287!           CALL rDOCOL      only for DTC model = 1, 2
+
+! to find DTC value, download \MSP430-FORTH\FastForthSpecs.4th
+! if DTC = 1, restore rDOCOL as this : MOV #xdocol,rDOCOL
+! if DTC = 2, restore rDOCOL as this : MOV #EXIT,rDOCOL
+! if DTC = 3, nothing to do, R7 is free for use.
+! ----------------------------------------------
+! Interrupt Vectors and signatures - MSP430FR5738
+! ----------------------------------------------
+FRAM_FULL=\$FF30!       80 bytes are sufficient considering what can be compiled in one line and WORD use.
+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!
+JTAG_PASSWORD=\$FF88!   256 bits
+BSL_PASSWORD=\$FFE0!    256 bits
+VECT_ORG=\$FFCE!        FFCE-FFFF
+VECT_LEN=\$32!
 
 
+RTC_Vec=\$FFCE!
+P4_Vec=\$FFD0!
+P3_Vec=\$FFD2!
+TB2_x_Vec=\$FFD4!       All others
+TB2_0_Vec=\$FFD6!       only CCIFG0
+P2_Vec=\$FFD8!
+TB1_x_Vec=\$FFDA!       All others
+TB1_0_Vec=\$FFDC!       only CCIFG0
+P1_Vec=\$FFDE!
+TA1_x_Vec=\$FFE0!       All others
+TA1_0_Vec=\$FFE2!       only CCIFG0
+DMA_Vec=\$FFE4!
+!eUSCI_A1_Vec=\$FFE6!
+TA0_x_Vec=\$FFE8!       All others
+TA0_0_Vec=\$FFEA!       only CCIFG0
+ADC10_B_Vec=\$FFEC!
+eUSCI_B0_Vec=\$FFEE!
+eUSCI_A0_Vec=\$FFF0!
+TERM_Vec=\$FFF0!
+WDT_Vec=\$FFF2!
+TB0_x_Vec=\$FFF4!       All others
+TB0_0_Vec=\$FFF6!       only CCIFG0
+COMP_D_Vec=\$FFF8!
+USER_NMI_Vec=\$FFFA!
+SYS_NMI_Vec=\$FFFC!
+RST_Vec=\$FFFE!
+
+! ============================================
+! Special Fonction Registers (SFR)
+! ============================================
 
 SFRIE1=\$100!       \ SFR enable register
 SFRIFG1=\$102!      \ SFR flag register
index 9fc231c..52fd6dc 100644 (file)
@@ -36,13 +36,34 @@ RAM_LEN=\$0400!
 ! FRAM
 ! ----------------------------------------------
 MAIN_ORG=\$C200!        Code space start
-xdodoes=\$C200!         restore rDODOES: MOV #xdodoes,rDODOES
-xdocon=\$C20E!          restore rDOCON: MOV #xdocon,rDOCON
-xdovar=\$C220!          restore rDOVAR: MOV #xdocon,rDOVAR  
-xdocol=\$C22A!          restore rDOCOL: MOV #xdocol,rDOCOL      only for DTC model = 1
+
+SLEEP=\$C200! 
+BODYSLEEP=\$C204!
+VECT_RESET=\$C20E! 
+LIT=\$C224! 
+NEXT_ADR=\$C22C!
+XSQUOTE=\$C22E! 
+QTBRAN=\$C242! 
+BRAN=\$C248! 
+QFBRAN=\$C24C! 
+SKIPBRAN=\$C252! 
+XDO=\$C256! 
+XPLOOP=\$C266! 
+XLOOP=\$C278! 
+MUSMOD=\$C27E!          unsigned 32/16 division
+SETIB=\$C2C4!           Set Input Buffer with org len values, reset >IN 
+REFILL=\$C2D4!          accept one line from input and leave org len of input buffer
+CIB_ADR=\$C2E4!         contents currently TIB_ORG; may be redirected to SDIB_ORG
+XDODOES=\$C2EC!         restore rDODOES: MOV #XDODOES,rDODOES
+XDOCON=\$C2FA!          restore rDOCON: MOV #XDOCON,rDOCON
+XDOVAR=\$C306!          restore rDOVAR: MOV #XDOCON,rDOVAR  
+RFROM=\$C306!           
+XDOCOL=\$C310!          restore rDOCOL: MOV #XDOCOL,rDOCOL      only for DTC model = 1
+
 DODOES=\$1284!          CALL rDODOES
 DOCON=\$1285!           CALL rDOCON
 DOVAR=\$1286!           CALL rDOVAR
+DOCOL=\$1287!
 
 ! to find DTC value, download \MSP430-FORTH\FastForthSpecs.4th
 ! if DTC = 1, restore rDOCOL as this : MOV #xdocol,rDOCOL
index 7fddbd5..30aaa78 100644 (file)
@@ -1,110 +1,5 @@
 !MSP430fr5948.pat
 
-! ----------------------------------------------
-! MSP430fr5948 MEMORY MAP
-! ----------------------------------------------
-! 0000-0FFF = peripherals (4 KB)
-! 1000-17FF = ROM bootstrap loader BSL0..3 (4x512 B)
-! 1800-187F = info D (FRAM 128 B)
-! 1880-18FF = info C (FRAM 128 B)
-! 1900-197F = info B (FRAM 128 B) 
-! 1980-19FF = info A (FRAM 128 B) 
-! 1A00-1A7F = TLV device descriptor info (FRAM 128 B)
-! 1A80-1BFF = unused (385 B)
-! 1C00-23FF = RAM (2 KB)
-! 2000-43FF = unused
-! 4400-FF7F = code memory (FRAM)
-! FF80-FFFF = interrupt vectors (FRAM 128 B)
-! ----------------------------------------------
-! ----------------------------------------------
-! FRAM                          ! INFO B, TLV
-! ----------------------------------------------
-INFO_ORG=\$1800!
-INFO_LEN=\$0200!
-INFOD_ORG=\$1800!
-INFOD_LEN=\$0080!
-INFOC_ORG=\$1880!
-INFOC_LEN=\$0080!
-INFOB_ORG=\$1900!
-INFOB_LEN=\$0080!
-INFOA_ORG=\$1980!
-INFOA_LEN=\$0080!
-TLV_ORG=\$1A00!      ; Device Descriptor Info (Tag-Lenght-Value)
-TLV_LEN=\$0100!      ;
-DEVICEID=\$1A04!
-! ----------------------------------------------
-! RAM
-! ----------------------------------------------
-RAM_ORG=\$1C00!
-RAM_LEN=\$0800!
-! ----------------------------------------------
-! FRAM
-! ----------------------------------------------
-MAIN_ORG=\$4400!        Code space start
-xdodoes=\$4400!         restore rDODOES: MOV #xdodoes,rDODOES
-xdocon=\$440E!          restore rDOCON: MOV #xdocon,rDOCON
-xdovar=\$4420!          restore rDOVAR: MOV #xdocon,rDOVAR  
-xdocol=\$442A!          restore rDOCOL: MOV #xdocol,rDOCOL      only for DTC model = 1
-DODOES=\$1284!          CALL rDODOES
-DOCON=\$1285!           CALL rDOCON
-DOVAR=\$1286!           CALL rDOVAR
-
-! to find DTC value, download \MSP430-FORTH\FastForthSpecs.4th
-! if DTC = 1, restore rDOCOL as this : MOV #xdocol,rDOCOL
-! if DTC = 2, restore rDOCOL as this : MOV #EXIT,rDOCOL
-! if DTC = 3, nothing to do, R7 is free for use.
-! ----------------------------------------------
-! Interrupt Vectors and signatures - MSP430FR5948
-! ----------------------------------------------
-FRAM_FULL=\$FF30!       80 bytes are sufficient considering what can be compiled in one line and WORD use.
-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!  
-JTAG_PASSWORD=\$FF88!   256 bits
-BSL_PASSWORD=\$FFE0!    256 bits
-VECT_ORG=\$FFCC!        FFCC-FFFF
-VECT_LEN=\$34!
-
-
-AES_Vec=\$FFCC!
-RTC_Vec=\$FFCE!
-P4_Vec=\$FFD0!
-P3_Vec=\$FFD2!
-TB2_x_Vec=\$FFD4!
-TB2_0_Vec=\$FFD6!
-P2_Vec=\$FFD8!
-TB1_x_Vec=\$FFDA!
-TB1_0_Vec=\$FFDC!
-P1_Vec=\$FFDE!
-TA1_x_Vec=\$FFE0!
-TA1_0_Vec=\$FFE2!
-DMA_Vec=\$FFE4!
-eUSCI_A1_Vec=\$FFE6!
-TA0_x_Vec=\$FFE8!
-TA0_0_Vec=\$FFEA!
-ADC12_B_Vec=\$FFEC!
-eUSCI_B0_Vec=\$FFEE!
-eUSCI_A0_Vec=\$FFF0!
-WDT_Vec=\$FFF2!
-TB0_x_Vec=\$FFF4!
-TB0_0_Vec=\$FFF6!
-COMP_D_Vec=\$FFF8!
-U_NMI_Vec=\$FFFA!
-S_NMI_Vec=\$FFFC!
-RST_Vec=\$FFFE!
-
-
-
-LPM4=\$F8! SR(LPM4+GIE)
-LPM3=\$D8! SR(LPM3+GIE)
-LPM2=\$98! SR(LPM2+GIE)
-LPM1=\$58! SR(LPM1+GIE)
-LPM0=\$18! SR(LPM0+GIE)
-
-
-
 ! ============================================
 ! SR bits :
 ! ============================================
@@ -121,6 +16,11 @@ LPM0=\$18! SR(LPM0+GIE)
 \#UF10=\#\$400! = SR(10) User Flag 2  
 \#UF11=\#\$800! = SR(11) User Flag 3  
 
+LPM4=\$F8! SR(LPM4+GIE)
+LPM3=\$D8! SR(LPM3+GIE)
+LPM2=\$98! SR(LPM2+GIE)
+LPM1=\$58! SR(LPM1+GIE)
+LPM0=\$18! SR(LPM0+GIE)
 
 ! ============================================
 ! PORTx, Reg  bits :
@@ -152,19 +52,34 @@ NOP3=MOV R0,R0!     \ MOV PC,PC      one word three cycles
 NEXT=MOV \@R13+,R0! \ MOV @IP+,PC   
 SEMI=MOV \@R1+,R13\nMOV \@R13+,R0!
 
+! ----------------------------------------------
+! MSP430fr5948 MEMORY MAP
+! ----------------------------------------------
+! 0000-0FFF = peripherals (4 KB)
+! 1000-17FF = ROM bootstrap loader BSL0..3 (4x512 B)
+! 1800-19FF = INFO 512 B FRAM
+! 1A00-1A7F = TLV device descriptor info (FRAM 128 B)
+! 1C00-23FF = RAM 2 KB
+! 4400-FF7F = MAIN FRAM
+! FF80-FFFF = interrupt vectors (FRAM 128 B)
+! ----------------------------------------------
 
-! =================================================
-! MSP430FR5x6x DEVICES HAVE SPECIFIC RAM ADDRESSES!
-! =================================================
-
-
-! You can check the addresses below by comparing their values in DTCforthMSP430FRxxxx.lst
-! those addresses are usable with the symbolic assembler
+! ============================================
+! BSL
+! ============================================
+BSL1=\$1000!
 
 ! ============================================
-! FastForth INFO(DCBA) memory map (256 bytes):
+! FRAM INFO
 ! ============================================
+INFO_ORG=\$1800!
+INFO_LEN=\$0200!
 
+! You can check the addresses below by comparing their values in DTCforthMSP430FRxxxx.lst
+! those addresses are usable with the symbolic assembler
+! ----------------------------------------------
+! FastForth INFO
+! ----------------------------------------------
 INI_THREAD=\$1800!      .word THREADS
 TERMBRW_RST=\$1802!     .word TERMBRW_RST
 TERMMCTLW_RST=\$1804!   .word TERMMCTLW_RST
@@ -182,8 +97,21 @@ ReadSectorWX=\$1818!    call with W = SectorLO  X = SectorHI
 WriteSectorWX=\$181A!   call with W = SectorLO  X = SectorHI
 
 ! ============================================
-! FORTH RAM areas :
+! FRAM TLV
+! ============================================
+TLV_ORG=\$1A00!      ; Device Descriptor Info (Tag-Lenght-Value)
+TLV_LEN=\$0100!      ;
+DEVICEID=\$1A04!
+
+! ============================================
+! RAM
 ! ============================================
+RAM_ORG=\$1C00!
+RAM_LEN=\$0800!
+
+! ---------------------------------------
+! FORTH RAM areas :
+! ---------------------------------------
 LSTACK_SIZE=\#16! words
 PSTACK_SIZE=\#48! words
 RSTACK_SIZE=\#48! words
@@ -191,11 +119,9 @@ PAD_LEN=\#84! bytes
 TIB_LEN=\#84! bytes
 HOLD_SIZE=\#34! bytes
 
-! ============================================
-! FastForth RAM memory map (>= 2k):
-! ============================================
-
-
+! ---------------------------------------
+! FastForth RAM memory map (>= 1k)
+! ---------------------------------------
 LEAVEPTR=\$1C00!    \ Leave-stack pointer, init by QUIT
 LSATCK=\$1C00!      \ leave stack,      grow up
 PSTACK=\$1C80!      \ parameter stack,  grow down
@@ -223,7 +149,7 @@ LAST_THREAD=\$1DB8!
 LAST_CFA=\$1DBA!
 LAST_PSP=\$1DBC!
 
-STATEADR=\$1DBE!           Interpreter state
+STATEADR=\$1DBE!        Interpreter state
 
 SOURCE_LEN=\$1DC0!      len of input stream
 SOURCE_ADR=\$1DC2!      adr of input stream
@@ -234,8 +160,9 @@ LASTVOC=\$1DC8!         keep VOC-LINK
 CONTEXT=\$1DCA!         CONTEXT dictionnary space (8 CELLS)
 CURRENT=\$1DDA!         CURRENT dictionnary ptr
 
-BASEADR=\$1DDC!           numeric base, must be defined before first reset !
+BASEADR=\$1DDC!         numeric base, must be defined before first reset !
 LINE=\$1DDE!            line in interpretation, activated with NOECHO, desactivated with ECHO
+
 ! ---------------------------------------
 !1DE0! 28 RAM bytes free 
 ! ---------------------------------------
@@ -349,12 +276,89 @@ SDIB_LEN=\$54!
 SD_END=\$2170!
 SD_LEN=\$16E!
 
+! ============================================
+! FRAM MAIN
+! ============================================
+MAIN_ORG=\$4400!        Code space start
+
+SLEEP=\$4400! 
+BODYSLEEP=\$4404!
+VECT_RESET=\$440E! 
+LIT=\$4424! 
+NEXT_ADR=\$442C!
+XSQUOTE=\$442E! 
+QTBRAN=\$4442! 
+BRAN=\$4448! 
+QFBRAN=\$444C! 
+SKIPBRAN=\$4452! 
+XDO=\$4456! 
+XPLOOP=\$4466! 
+XLOOP=\$4478! 
+MUSMOD=\$447E!          unsigned 32/16 division
+SETIB=\$44C4!           Set Input Buffer with org len values, reset >IN 
+REFILL=\$44D4!          accept one line from input and leave org len of input buffer
+CIB_ADR=\$44E4!         contents currently TIB_ORG; may be redirected to SDIB_ORG
+XDODOES=\$44EC!         restore rDODOES: MOV #XDODOES,rDODOES
+XDOCON=\$44FA!          restore rDOCON: MOV #XDOCON,rDOCON
+XDOVAR=\$4506!          restore rDOVAR: MOV #XDOCON,rDOVAR  
+RFROM=\$4506!           
+XDOCOL=\$4510!          restore rDOCOL: MOV #XDOCOL,rDOCOL      only for DTC model = 1
+
+DODOES=\$1284!          CALL rDODOES
+DOCON=\$1285!           CALL rDOCON
+DOVAR=\$1286!           CALL rDOVAR
+DOCOL=\$1287!
+
+! to find DTC value, download \MSP430-FORTH\FastForthSpecs.4th
+! if DTC = 1, restore rDOCOL as this : MOV #xdocol,rDOCOL
+! if DTC = 2, restore rDOCOL as this : MOV #EXIT,rDOCOL
+! if DTC = 3, nothing to do, R7 is free for use.
+! ----------------------------------------------
+! Interrupt Vectors and signatures - MSP430FR5948
+! ----------------------------------------------
+FRAM_FULL=\$FF30!       80 bytes are sufficient considering what can be compiled in one line and WORD use.
+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!  
+JTAG_PASSWORD=\$FF88!   256 bits
+BSL_PASSWORD=\$FFE0!    256 bits
+VECT_ORG=\$FFCC!        FFCC-FFFF
+VECT_LEN=\$34!
+
+
+AES_Vec=\$FFCC!
+RTC_Vec=\$FFCE!
+P4_Vec=\$FFD0!
+P3_Vec=\$FFD2!
+TB2_x_Vec=\$FFD4!
+TB2_0_Vec=\$FFD6!
+P2_Vec=\$FFD8!
+TB1_x_Vec=\$FFDA!
+TB1_0_Vec=\$FFDC!
+P1_Vec=\$FFDE!
+TA1_x_Vec=\$FFE0!
+TA1_0_Vec=\$FFE2!
+DMA_Vec=\$FFE4!
+eUSCI_A1_Vec=\$FFE6!
+TA0_x_Vec=\$FFE8!
+TA0_0_Vec=\$FFEA!
+ADC12_B_Vec=\$FFEC!
+eUSCI_B0_Vec=\$FFEE!
+eUSCI_A0_Vec=\$FFF0!
+WDT_Vec=\$FFF2!
+TB0_x_Vec=\$FFF4!
+TB0_0_Vec=\$FFF6!
+COMP_D_Vec=\$FFF8!
+U_NMI_Vec=\$FFFA!
+S_NMI_Vec=\$FFFC!
+RST_Vec=\$FFFE!
 
 ! ============================================
 ! Special Fonction Registers (SFR)
 ! ============================================
 
-
 SFRIE1=\$100!       \ SFR enable register
 SFRIFG1=\$102!      \ SFR flag register
 SFRRPCR=\$104!      \ SFR reset pin control
index 186c6d3..d05a619 100644 (file)
@@ -1,109 +1,5 @@
 !MSP430fr5969.pat
 
-! ----------------------------------------------
-! MSP430FR5969 MEMORY MAP
-! ----------------------------------------------
-! 0000-0FFF = peripherals (4 KB)
-! 1000-17FF = ROM bootstrap loader BSL0..3 (4x512 B)
-! 1800-187F = FRAM info D (128 B)
-! 1880-18FF = FRAM info C (128 B)
-! 1900-197F = FRAM info B (128 B)
-! 1980-19FF = FRAM info A (128 B)
-! 1A00-1AFF = TLV device descriptor info (FRAM 256 B)
-! 1B00-1BFF = unused (256 B)
-! 1C00-23FF = RAM (2 KB)
-! 4400-FF7F = code memory (FRAM 47 kB)
-! FF80-FFFF = interrupt vectors (FRAM 127 B)
-! ----------------------------------------------
-! ----------------------------------------------
-! FRAM                          ! INFO B, TLV
-! ----------------------------------------------
-INFO_ORG=\$1800!
-INFO_LEN=\$0200!
-INFOD_ORG=\$1800!
-INFOD_LEN=\$0080!
-INFOC_ORG=\$1880!
-INFOC_LEN=\$0080!
-INFOB_ORG=\$1900!
-INFOB_LEN=\$0080!
-INFOA_ORG=\$1980!
-INFOA_LEN=\$0080!
-TLV_ORG=\$1A00!      ; Device Descriptor Info (Tag-Lenght-Value)
-TLV_LEN=\$0100!      ;
-DEVICEID=\$1A04!
-! ----------------------------------------------
-! RAM
-! ----------------------------------------------
-RAM_ORG=\$1C00!
-RAM_LEN=\$0800!
-! ----------------------------------------------
-! FRAM
-! ----------------------------------------------
-MAIN_ORG=\$4400!        Code space start
-xdodoes=\$4400!         restore rDODOES: MOV #xdodoes,rDODOES
-xdocon=\$440E!          restore rDOCON: MOV #xdocon,rDOCON
-xdovar=\$4420!          restore rDOVAR: MOV #xdocon,rDOVAR  
-xdocol=\$442A!          restore rDOCOL: MOV #xdocol,rDOCOL      only for DTC model = 1
-DODOES=\$1284!          CALL rDODOES
-DOCON=\$1285!           CALL rDOCON
-DOVAR=\$1286!           CALL rDOVAR
-
-! to find DTC value, download \MSP430-FORTH\FastForthSpecs.4th
-! if DTC = 1, restore rDOCOL as this : MOV #xdocol,rDOCOL
-! if DTC = 2, restore rDOCOL as this : MOV #EXIT,rDOCOL
-! if DTC = 3, nothing to do, R7 is free for use.
-! ----------------------------------------------
-! Interrupt Vectors and signatures - MSP430FR5969
-! ----------------------------------------------
-MAIN_LEN=\$FC00!        63k FRAM
-FRAM_FULL=\$FF30!       80 bytes are sufficient considering what can be compiled in one line and WORD use.
-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!  
-JTAG_PASSWORD=\$FF88!   256 bits
-BSL_PASSWORD=\$FFE0!    256 bits
-VECT_ORG=\$FFCC!        FFCC-FFFF
-VECT_LEN=\$34!
-
-AES_Vec=\$FFCC!
-RTC_Vec=\$FFCE!
-P4_Vec=\$FFD0!
-P3_Vec=\$FFD2!
-TA3_x_Vec=\$FFD4!
-TA3_0_Vec=\$FFD6!
-P2_Vec=\$FFD8!
-TA2_x_Vec=\$FFDA!
-TA2_0_Vec=\$FFDC!
-P1_Vec=\$FFDE!
-TA1_x_Vec=\$FFE0!
-TA1_0_Vec=\$FFE2!
-DMA_Vec=\$FFE4!
-eUSCI_A1_Vec=\$FFE6!
-TA0_x_Vec=\$FFE8!
-TA0_0_Vec=\$FFEA!
-ADC12_B_Vec=\$FFEC!
-eUSCI_B0_Vec=\$FFEE!
-eUSCI_A0_Vec=\$FFF0!
-WDT_Vec=\$FFF2!
-TB0_x_Vec=\$FFF4!
-TB0_0_Vec=\$FFF6!
-COMP_D_Vec=\$FFF8!
-U_NMI_Vec=\$FFFA!
-S_NMI_Vec=\$FFFC!
-RST_Vec=\$FFFE!
-
-
-
-LPM4=\$F8! SR(LPM4+GIE)
-LPM3=\$D8! SR(LPM3+GIE)
-LPM2=\$98! SR(LPM2+GIE)
-LPM1=\$58! SR(LPM1+GIE)
-LPM0=\$18! SR(LPM0+GIE)
-
-
-
 ! ============================================
 ! SR bits :
 ! ============================================
@@ -120,6 +16,11 @@ LPM0=\$18! SR(LPM0+GIE)
 \#UF10=\#\$400! = SR(10) User Flag 2  
 \#UF11=\#\$800! = SR(11) User Flag 3  
 
+LPM4=\$F8! SR(LPM4+GIE)
+LPM3=\$D8! SR(LPM3+GIE)
+LPM2=\$98! SR(LPM2+GIE)
+LPM1=\$58! SR(LPM1+GIE)
+LPM0=\$18! SR(LPM0+GIE)
 
 ! ============================================
 ! PORTx, Reg  bits :
@@ -152,19 +53,33 @@ NOP3=MOV R0,R0!     \ MOV PC,PC      one word three cycles
 NEXT=MOV \@R13+,R0! \ MOV @IP+,PC   
 SEMI=MOV \@R1+,R13\nMOV \@R13+,R0!
 
-
-! =================================================
-! MSP430FR5x6x DEVICES HAVE SPECIFIC RAM ADDRESSES!
-! =================================================
-
-
-! You can check the addresses below by comparing their values in DTCforthMSP430FRxxxx.lst
-! those addresses are usable with the symbolic assembler
+! ----------------------------------------------
+! MSP430FR5969 MEMORY MAP
+! ----------------------------------------------
+! 0000-0FFF = peripherals (4 KB)
+! 1000-17FF = ROM bootstrap loader BSL0..3 (4x512 B)
+! 1800-19FF = FRAM INFO 512 B
+! 1A00-1AFF = TLV device descriptor info (FRAM 256 B)
+! 1C00-23FF = RAM (2 KB)
+! 4400-FF7F = MAIN (FRAM 47 kB)
+! FF80-FFFF = interrupt vectors (FRAM 127 B)
+! ----------------------------------------------
+! ============================================
+! BSL
+! ============================================
+BSL1=\$1000!
 
 ! ============================================
-! FastForth INFO(DCBA) memory map (256 bytes):
+! FRAM INFO
 ! ============================================
+INFO_ORG=\$1800!
+INFO_LEN=\$0200!
 
+! You can check the addresses below by comparing their values in DTCforthMSP430FRxxxx.lst
+! those addresses are usable with the symbolic assembler
+! ----------------------------------------------
+! FastForth INFO
+! ----------------------------------------------
 INI_THREAD=\$1800!      .word THREADS
 TERMBRW_RST=\$1802!     .word TERMBRW_RST
 TERMMCTLW_RST=\$1804!   .word TERMMCTLW_RST
@@ -182,8 +97,21 @@ ReadSectorWX=\$1818!    call with W = SectorLO  X = SectorHI
 WriteSectorWX=\$181A!   call with W = SectorLO  X = SectorHI
 
 ! ============================================
-! FORTH RAM areas :
+! FRAM TLV
+! ============================================
+TLV_ORG=\$1A00!      ; Device Descriptor Info (Tag-Lenght-Value)
+TLV_LEN=\$0100!      ;
+DEVICEID=\$1A04!
+
 ! ============================================
+! RAM
+! ============================================
+RAM_ORG=\$1C00!
+RAM_LEN=\$0800!
+
+! ---------------------------------------
+! FORTH RAM areas :
+! ---------------------------------------
 LSTACK_SIZE=\#16! words
 PSTACK_SIZE=\#48! words
 RSTACK_SIZE=\#48! words
@@ -191,11 +119,9 @@ PAD_LEN=\#84! bytes
 TIB_LEN=\#84! bytes
 HOLD_SIZE=\#34! bytes
 
-! ============================================
-! FastForth RAM memory map (>= 2k):
-! ============================================
-
-
+! ---------------------------------------
+! FastForth RAM memory map (>= 1k)
+! ---------------------------------------
 LEAVEPTR=\$1C00!    \ Leave-stack pointer, init by QUIT
 LSATCK=\$1C00!      \ leave stack,      grow up
 PSTACK=\$1C80!      \ parameter stack,  grow down
@@ -223,10 +149,10 @@ LAST_THREAD=\$1DB8!
 LAST_CFA=\$1DBA!
 LAST_PSP=\$1DBC!
 
-STATEADR=\$1DBE!           Interpreter state
+STATEADR=\$1DBE!        Interpreter state
 
 SOURCE_LEN=\$1DC0!      len of input stream
-SOURCE_ORG=\$1DC2!      adr of input stream
+SOURCE_ADR=\$1DC2!      adr of input stream
 TOIN=\$1DC4!            >IN
 DP=\$1DC6!              dictionary ptr
 
@@ -234,8 +160,9 @@ LASTVOC=\$1DC8!         keep VOC-LINK
 CONTEXT=\$1DCA!         CONTEXT dictionnary space (8 CELLS)
 CURRENT=\$1DDA!         CURRENT dictionnary ptr
 
-BASEADR=\$1DDC!           numeric base, must be defined before first reset !
+BASEADR=\$1DDC!         numeric base, must be defined before first reset !
 LINE=\$1DDE!            line in interpretation, activated with NOECHO, desactivated with ECHO
+
 ! ---------------------------------------
 !1DE0! 28 RAM bytes free 
 ! ---------------------------------------
@@ -344,10 +271,89 @@ HandleEnd=\$2118!
 SDIB_I2CADR=\$2118!
 SDIB_I2CCNT=\$211A!
 SDIB_ORG=\$251C!
+SDIB_LEN=\$54!
 
 SD_END=\$2170!
 SD_LEN=\$16E!
 
+! ============================================
+! FRAM MAIN
+! ============================================
+MAIN_ORG=\$4400!        Code space start
+
+SLEEP=\$4400! 
+BODYSLEEP=\$4404!
+VECT_RESET=\$440E! 
+LIT=\$4424! 
+NEXT_ADR=\$442C!
+XSQUOTE=\$442E! 
+QTBRAN=\$4442! 
+BRAN=\$4448! 
+QFBRAN=\$444C! 
+SKIPBRAN=\$4452! 
+XDO=\$4456! 
+XPLOOP=\$4466! 
+XLOOP=\$4478! 
+MUSMOD=\$447E!          unsigned 32/16 division
+SETIB=\$44C4!           Set Input Buffer with org len values, reset >IN 
+REFILL=\$44D4!          accept one line from input and leave org len of input buffer
+CIB_ADR=\$44E4!         contents currently TIB_ORG; may be redirected to SDIB_ORG
+XDODOES=\$44EC!         restore rDODOES: MOV #XDODOES,rDODOES
+XDOCON=\$44FA!          restore rDOCON: MOV #XDOCON,rDOCON
+XDOVAR=\$4506!          restore rDOVAR: MOV #XDOCON,rDOVAR  
+RFROM=\$4506!           
+XDOCOL=\$4510!          restore rDOCOL: MOV #XDOCOL,rDOCOL      only for DTC model = 1
+
+DODOES=\$1284!          CALL rDODOES
+DOCON=\$1285!           CALL rDOCON
+DOVAR=\$1286!           CALL rDOVAR
+DOCOL=\$1287!
+
+! to find DTC value, download \MSP430-FORTH\FastForthSpecs.4th
+! if DTC = 1, restore rDOCOL as this : MOV #xdocol,rDOCOL
+! if DTC = 2, restore rDOCOL as this : MOV #EXIT,rDOCOL
+! if DTC = 3, nothing to do, R7 is free for use.
+! ----------------------------------------------
+! Interrupt Vectors and signatures - MSP430FR5969
+! ----------------------------------------------
+MAIN_LEN=\$FC00!        63k FRAM
+FRAM_FULL=\$FF30!       80 bytes are sufficient considering what can be compiled in one line and WORD use.
+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!  
+JTAG_PASSWORD=\$FF88!   256 bits
+BSL_PASSWORD=\$FFE0!    256 bits
+VECT_ORG=\$FFCC!        FFCC-FFFF
+VECT_LEN=\$34!
+
+AES_Vec=\$FFCC!
+RTC_Vec=\$FFCE!
+P4_Vec=\$FFD0!
+P3_Vec=\$FFD2!
+TA3_x_Vec=\$FFD4!
+TA3_0_Vec=\$FFD6!
+P2_Vec=\$FFD8!
+TA2_x_Vec=\$FFDA!
+TA2_0_Vec=\$FFDC!
+P1_Vec=\$FFDE!
+TA1_x_Vec=\$FFE0!
+TA1_0_Vec=\$FFE2!
+DMA_Vec=\$FFE4!
+eUSCI_A1_Vec=\$FFE6!
+TA0_x_Vec=\$FFE8!
+TA0_0_Vec=\$FFEA!
+ADC12_B_Vec=\$FFEC!
+eUSCI_B0_Vec=\$FFEE!
+eUSCI_A0_Vec=\$FFF0!
+WDT_Vec=\$FFF2!
+TB0_x_Vec=\$FFF4!
+TB0_0_Vec=\$FFF6!
+COMP_D_Vec=\$FFF8!
+U_NMI_Vec=\$FFFA!
+S_NMI_Vec=\$FFFC!
+RST_Vec=\$FFFE!
 
 ! ============================================
 ! Special Fonction Registers (SFR)
index 575c14a..f873701 100644 (file)
@@ -563,3 +563,16 @@ SD_TXBUF        .equ eUSCI_B0_SFR + 0Eh    ; eUSCI_B0 Transmit Buffer 8
 SD_IFG          .equ eUSCI_B0_SFR + 2Ch    ; eUSCI_B0 Interrupt Flags Register
     .ENDIF ;UCB0_SD
 
+    .IFDEF UCB0_TERM
+I2CTERM_CTLW0       .equ eUSCI_B0_SFR + 00h    ; USCI_B0 Control Word Register 0
+I2CTERM_CTLW1       .equ eUSCI_B0_SFR + 02h    ; USCI_B0 Control Word Register 1
+I2CTERM_BRW         .equ eUSCI_B0_SFR + 06h    ; USCI_B0 Baud Word Rate 0
+I2CTERM_RXBUF       .equ eUSCI_B0_SFR + 0Ch    ; USCI_B0 Receive Buffer 8
+I2CTERM_TXBUF       .equ eUSCI_B0_SFR + 0Eh    ; USCI_B0 Transmit Buffer 8
+I2CTERM_I2COA0      .equ eUSCI_B0_SFR + 14h    ; USCI_B0 I2C Own Address 0
+I2CTERM_ADDRX       .equ eUSCI_B0_SFR + 1Ch    ; USCI_B0  Received Address Register 
+I2CTERM_I2CSA       .equ eUSCI_B0_SFR + 20h    ; USCI_B0 I2C Slave Address
+I2CTERM_IE          .equ eUSCI_B0_SFR + 2Ah    ; USCI_B0 Interrupt Enable
+I2CTERM_IFG         .equ eUSCI_B0_SFR + 2Ch    ; USCI_B0 Interrupt Flags Register
+I2CTERMVEC          .equ 0FFE0h      ; interrupt vector for eUSCI_B0
+    .ENDIF ;UCB0_TERM
index 8ae782b..29a1910 100644 (file)
@@ -1,140 +1,5 @@
 !MSP430fr5994.pat
 
-! ----------------------------------------------
-! MSP430FR5994 MEMORY MAP
-! ----------------------------------------------
-! 000A-001F = tiny RAM
-! 0020-0FFF = peripherals (4 KB)
-! 1000-17FF = ROM bootstrap loader BSL0..3 (4x512 B)
-! 1800-187F = FRAM info D (128 B)
-! 1880-18FF = FRAM info C (128 B)
-! 1900-197F = FRAM info B (128 B)
-! 1980-19FF = FRAM info A (128 B)
-! 1A00-1AFF = FRAM TLV device descriptor info (256 B)
-! 1B00-1BFF = unused (256 B)
-! 1C00-2BFF = RAM (4KB)
-! 2C00-3BFF = sharedRAM (4kB)
-! 4400-FF7F = FRAM code memory (FRAM) (MSP430FR59x8/9)
-! 8000-FF7F = FRAM code memory (FRAM) (MSP430FR59x7/8/9)
-! FF80-FFFF = FRAM interrupt vectors and signatures (FRAM)
-
-! ----------------------------------------------
-! PAGESIZE        .equ 512         ; MPU unit
-! ----------------------------------------------
-! BSL                         
-! ----------------------------------------------
-BSL=\$1000!
-! ----------------------------------------------
-! FRAM                          ; INFO B, A, TLV
-! ----------------------------------------------
-INFO_ORG=\$1800!
-INFO_LEN=\$0200!
-INFOD_ORG=\$1800!
-INFOD_LEN=\$0080!
-INFOC_ORG=\$1880!
-INFOC_LEN=\$0080!
-INFOB_ORG=\$1900!
-INFOB_LEN=\$0080!
-INFOA_ORG=\$1980!
-INFOA_LEN=\$0080!
-TLV_ORG=\$1A00!      ; Device Descriptor Info (Tag-Lenght-Value)
-TLV_LEN=\$0100!      ;
-DEVICEID=\$1A04!
-! ----------------------------------------------
-! RAM
-! ----------------------------------------------
-TinyRAM_ORG=\$0A!
-TinyRAM_LEN=\$16!
-RAM_ORG=\$1C00!
-RAM_LEN=\$1000!
-SharedRAM_ORG=\$2C00!
-SharedRAM_LEN=\$1000!
-! ----------------------------------------------
-! FRAM
-! ----------------------------------------------
-MAIN_ORG=\$4000!        Code space start
-MAIN_LEN=\$40000!       256 k FRAM
-! ----------------------------------------------
-xdodoes=\$4000!         restore rDODOES: MOV #xdodoes,rDODOES
-xdocon=\$400E!          restore rDOCON: MOV #xdocon,rDOCON
-xdovar=\$4020!          restore rDOVAR: MOV #xdocon,rDOVAR  
-xdocol=\$402A!          restore rDOCOL: MOV #xdocol,rDOCOL      only for DTC = 1
-DODOES=\$1284!          CALL rDODOES
-DOCON=\$1285!           CALL rDOCON
-DOVAR=\$1286!           CALL rDOVAR
-
-! to find DTC value, download \MSP430-FORTH\FastForthSpecs.4th
-! if DTC = 1, restore rDOCOL as this : MOV #xdocol,rDOCOL
-! if DTC = 2, restore rDOCOL as this : MOV #EXIT,rDOCOL
-! if DTC = 3, nothing to do, R7 is free for use.
-! ----------------------------------------------
-! Interrupt Vectors and signatures - MSP430FR5994
-! ----------------------------------------------
-FRAM_FULL=\$FF30!       80 bytes are sufficient considering what can be compiled in one line, and WORD use.
-SIGNATURES=\$FF80!      JTAG/BSL signatures
-JTAG_SIG1=\$FF80!       if 0, enable JTAG/SBW
-JTAG_SIG2=\$FF82!       if JTAG_SIG1=\$AAAA, length of password string @ JTAG_PASSWORD
-BSL_SIG1=\$FF84!     
-BSL_SIG2=\$FF86!     
-JTAG_PASSWORD=\$FF88!   256 bits max
-IPE_SIG_VALID=\$FF88!   one word
-IPE_STR_PTR_SRC=\$FF8A! one word
-BSL_PASSWORD=\$FFE0!    256 bits
-VECT_ORG=\0FFB4!        FFB4-FFFF
-VECT_LEN=\$4C!
-
-
-LEA_Vec=\$FFB4!
-P8_Vec=\$FFB6!
-P7_Vec=\$FFB8!
-eUSCI_B3_Vec=\$FFBA!
-eUSCI_B2_Vec=\$FFBC!
-eUSCI_B1_Vec=\$FFBE!
-eUSCI_A3_Vec=\$FFC0!
-eUSCI_A2_Vec=\$FFC2!
-P6_Vec=\$FFC4!
-P5_Vec=\$FFC6!
-TA4_x_Vec=\$FFC8!
-TA4_0_Vec=\$FFCA!
-AES_Vec=\$FFCC!
-RTC_C_Vec=\$FFCE!
-P4_Vec=\$FFD0!
-P3_Vec=\$FFD2!
-TA3_x_Vec=\$FFD4!
-TA3_0_Vec=\$FFD6!
-P2_Vec=\$FFD8!
-TA2_x_Vec=\$FFDA!
-TA2_0_Vec=\$FFDC!
-P1_Vec=\$FFDE!
-TA1_x_Vec=\$FFE0!
-TA1_0_Vec=\$FFE2!
-DMA_Vec=\$FFE4!
-eUSCI_A1_Vec=\$FFE6!
-TA0_x_Vec=\$FFE8!
-TA0_0_Vec=\$FFEA!
-ADC12_B_Vec=\$FFEC!
-eUSCI_B0_Vec=\$FFEE!
-eUSCI_A0_Vec=\$FFF0!
-WDT_Vec=\$FFF2!
-TB0_x_Vec=\$FFF4!
-TB0_0_Vec=\$FFF6!
-COMP_E_Vec=\$FFF8!
-U_NMI_Vec=\$FFFA!
-S_NMI_Vec=\$FFFC!
-RST_Vec=\$FFFE!
-
-
-
-
-
-LPM4=\$F8! SR(LPM4+GIE)
-LPM3=\$D8! SR(LPM3+GIE)
-LPM2=\$98! SR(LPM2+GIE)
-LPM1=\$58! SR(LPM1+GIE)
-LPM0=\$18! SR(LPM0+GIE)
-
-
-
 ! ============================================
 ! SR bits :
 ! ============================================
@@ -151,6 +16,11 @@ LPM0=\$18! SR(LPM0+GIE)
 \#UF10=\#\$400! = SR(10) User Flag 2  
 \#UF11=\#\$800! = SR(11) User Flag 3  
 
+LPM4=\$F8! SR(LPM4+GIE)
+LPM3=\$D8! SR(LPM3+GIE)
+LPM2=\$98! SR(LPM2+GIE)
+LPM1=\$58! SR(LPM1+GIE)
+LPM0=\$18! SR(LPM0+GIE)
 
 ! ============================================
 ! PORTx, Reg  bits :
@@ -182,19 +52,46 @@ NOP2=\$3C00 ,!      \ compile JMP 0  one word two cycles
 NOP3=MOV R0,R0!     \ MOV PC,PC      one word three cycles
 NEXT=MOV \@R13+,R0! \ MOV @IP+,PC   
 
+! ----------------------------------------------
+! MSP430FR5994 MEMORY MAP
+! ----------------------------------------------
+! 000A-001F = tiny RAM
+! 0020-0FFF = peripherals (4 KB)
+! 1000-17FF = ROM bootstrap loader BSL0..3 (4x512 B)
+! 1800-19FF = FRAM INFO  512 B
+! 1A00-1AFF = FRAM TLV device descriptor info (256 B)
+! 1C00-2BFF = RAM (4KB)
+! 2C00-3BFF = sharedRAM (4kB)
+! 4000-FF7F = FRAM MAIN
+! FF80-FFFF = FRAM interrupt vectors and signatures (FRAM)
+! 10000-
+! ----------------------------------------------
+! PAGESIZE        .equ 512         ; MPU unit
+
 
-! =================================================
-! MSP430FR5x6x DEVICES HAVE SPECIFIC RAM ADDRESSES!
-! =================================================
+! ============================================
+! TINY RAM
+! ============================================
+TinyRAM_ORG=\$0A!
+TinyRAM_LEN=\$16!
 
+! ============================================
+! BSL
+! ============================================
+BSL1=\$1000!
 
-! You can check the addresses below by comparing their values in DTCforthMSP430FRxxxx.lst
-! those addresses are usable with the symbolic assembler
 
 ! ============================================
-! FastForth INFO(DCBA) memory map (256 bytes):
+! FRAM INFO
 ! ============================================
+INFO_ORG=\$1800!
+INFO_LEN=\$0200!
 
+! You can check the addresses below by comparing their values in DTCforthMSP430FRxxxx.lst
+! those addresses are usable with the symbolic assembler
+! ----------------------------------------------
+! FastForth INFO
+! ----------------------------------------------
 INI_THREAD=\$1800!      .word THREADS
 TERMBRW_RST=\$1802!     .word TERMBRW_RST
 TERMMCTLW_RST=\$1804!   .word TERMMCTLW_RST
@@ -212,8 +109,23 @@ ReadSectorWX=\$1818!    call with W = SectorLO  X = SectorHI
 WriteSectorWX=\$181A!   call with W = SectorLO  X = SectorHI
 
 ! ============================================
-! FORTH RAM areas :
+! FRAM TLV
 ! ============================================
+TLV_ORG=\$1A00!      ; Device Descriptor Info (Tag-Lenght-Value)
+TLV_LEN=\$0100!      ;
+DEVICEID=\$1A04!
+
+! ============================================
+! RAM
+! ============================================
+RAM_ORG=\$1C00!
+RAM_LEN=\$1000!
+SharedRAM_ORG=\$2C00!
+SharedRAM_LEN=\$1000!
+
+! ---------------------------------------
+! FORTH RAM areas :
+! ---------------------------------------
 LSTACK_SIZE=\#16! words
 PSTACK_SIZE=\#48! words
 RSTACK_SIZE=\#48! words
@@ -221,11 +133,9 @@ PAD_LEN=\#84! bytes
 TIB_LEN=\#84! bytes
 HOLD_SIZE=\#34! bytes
 
-! ============================================
-! FastForth RAM memory map (>= 2k):
-! ============================================
-
-
+! ----------------------------------------------
+! FastForth RAM memory map (>= 1k):
+! ----------------------------------------------
 LEAVEPTR=\$1C00!    \ Leave-stack pointer, init by QUIT
 LSATCK=\$1C00!      \ leave stack,      grow up
 PSTACK=\$1C80!      \ parameter stack,  grow down
@@ -379,6 +289,98 @@ SDIB_LEN=\$54!
 SD_END=\$2170!
 SD_LEN=\$16E!
 
+! ============================================
+! FRAM MAIN
+! ============================================
+MAIN_ORG=\$4000!        Code space start
+MAIN_LEN=\$40000!       256 k FRAM
+! ----------------------------------------------
+
+SLEEP=\$4000! 
+BODYSLEEP=\$4004!
+INIT_VECT=\$400E! 
+LIT=\$4024! 
+NEXT_ADR=\$402C!
+XSQUOTE=\$402E! 
+QTBRAN=\$4042! 
+BRAN=\$4048! 
+QFBRAN=\$404C! 
+SKIPBRAN=\$4052! 
+XDO=\$4056! 
+XPLOOP=\$4066! 
+XLOOP=\$4078! 
+MUSMOD=\$407E!          unsigned 32/16 division
+SETIB=\$40C4!           Set Input Buffer with org len values, reset >IN 
+REFILL=\$40D4!          accept one line from input and leave org len of input buffer
+CIB_ADR=\$40E2!         contents currently TIB_ORG; may be redirected to SDIB_ORG
+XDODOES=\$40EC!         restore rDODOES: MOV #XDODOES,rDODOES
+XDOCON=\$40FA!          restore rDOCON: MOV #XDOCON,rDOCON
+XDOCOL=\$4106!          restore rDOCOL: MOV #XDOCOL,rDOCOL      only for DTC model = 1
+
+DODOES=\$1284!          CALL rDODOES
+DOCON=\$1285!           CALL rDOCON
+DOVAR=\$1286!           CALL rDOVAR
+DOCOL=\$1287!
+
+! to find DTC value, download \MSP430-FORTH\FastForthSpecs.4th
+! if DTC = 1, restore rDOCOL as this : MOV #xdocol,rDOCOL
+! if DTC = 2, restore rDOCOL as this : MOV #EXIT,rDOCOL
+! if DTC = 3, nothing to do, R7 is free for use.
+! ----------------------------------------------
+! Interrupt Vectors and signatures - MSP430FR5994
+! ----------------------------------------------
+FRAM_FULL=\$FF30!       80 bytes are sufficient considering what can be compiled in one line, and WORD use.
+SIGNATURES=\$FF80!      JTAG/BSL signatures
+JTAG_SIG1=\$FF80!       if 0, enable JTAG/SBW
+JTAG_SIG2=\$FF82!       if JTAG_SIG1=\$AAAA, length of password string @ JTAG_PASSWORD
+BSL_SIG1=\$FF84!     
+BSL_SIG2=\$FF86!     
+JTAG_PASSWORD=\$FF88!   256 bits max
+IPE_SIG_VALID=\$FF88!   one word
+IPE_STR_PTR_SRC=\$FF8A! one word
+BSL_PASSWORD=\$FFE0!    256 bits
+VECT_ORG=\0FFB4!        FFB4-FFFF
+VECT_LEN=\$4C!
+
+
+LEA_Vec=\$FFB4!
+P8_Vec=\$FFB6!
+P7_Vec=\$FFB8!
+eUSCI_B3_Vec=\$FFBA!
+eUSCI_B2_Vec=\$FFBC!
+eUSCI_B1_Vec=\$FFBE!
+eUSCI_A3_Vec=\$FFC0!
+eUSCI_A2_Vec=\$FFC2!
+P6_Vec=\$FFC4!
+P5_Vec=\$FFC6!
+TA4_x_Vec=\$FFC8!
+TA4_0_Vec=\$FFCA!
+AES_Vec=\$FFCC!
+RTC_C_Vec=\$FFCE!
+P4_Vec=\$FFD0!
+P3_Vec=\$FFD2!
+TA3_x_Vec=\$FFD4!
+TA3_0_Vec=\$FFD6!
+P2_Vec=\$FFD8!
+TA2_x_Vec=\$FFDA!
+TA2_0_Vec=\$FFDC!
+P1_Vec=\$FFDE!
+TA1_x_Vec=\$FFE0!
+TA1_0_Vec=\$FFE2!
+DMA_Vec=\$FFE4!
+eUSCI_A1_Vec=\$FFE6!
+TA0_x_Vec=\$FFE8!
+TA0_0_Vec=\$FFEA!
+ADC12_B_Vec=\$FFEC!
+eUSCI_B0_Vec=\$FFEE!
+eUSCI_A0_Vec=\$FFF0!
+WDT_Vec=\$FFF2!
+TB0_x_Vec=\$FFF4!
+TB0_0_Vec=\$FFF6!
+COMP_E_Vec=\$FFF8!
+U_NMI_Vec=\$FFFA!
+S_NMI_Vec=\$FFFC!
+RST_Vec=\$FFFE!
 
 ! ============================================
 ! Special Fonction Registers (SFR)
index 98db775..c16cb64 100644 (file)
@@ -1,117 +1,5 @@
 !MSP430fr6989.pat
 
-! ----------------------------------------------
-! MSP430FR6989 MEMORY MAP
-! ----------------------------------------------
-! 0000-0005 = reserved ROM
-! 0006-001F = tiny RAM 26 bytes
-! 0020-0FFF = peripherals (4 KB)
-! 1000-17FF = ROM bootstrap loader BSL0..3 (4x512 B)
-! 1800-187F = FRAM info D (128 B)
-! 1880-18FF = FRAM info C (128 B)
-! 1900-197F = FRAM info B (128 B)
-! 1980-19FF = FRAM info A (128 B)
-! 1A00-1AFF = TLV device descriptor info (FRAM 256 B)
-! 1B00-1BFF = ROM boot memory
-! 1C00-23FF = RAM (2 KB)
-! 2000-C1FF = unused (41472 B)
-! C200-FF7F = code memory (FRAM 15743 B)
-! FF80-FFFF = interrupt vectors (FRAM 127 B)
-! ----------------------------------------------
-! ----------------------------------------------
-! FRAM                          ; INFO B, A, TLV
-! ----------------------------------------------
-INFO_ORG=\$1800!
-INFO_LEN=\$0200!
-INFOD_ORG=\$1800!
-INFOD_LEN=\$0080!
-INFOC_ORG=\$1880!
-INFOC_LEN=\$0080!
-INFOB_ORG=\$1900!
-INFOB_LEN=\$0080!
-INFOA_ORG=\$1980!
-INFOA_LEN=\$0080!
-TLV_ORG=\$1A00!      ; Device Descriptor Info (Tag-Lenght-Value)
-TLV_LEN=\$0100!      ;
-DEVICEID=\$1A04!
-! ----------------------------------------------
-! RAM
-! ----------------------------------------------
-RAM_ORG=\$1C00!
-RAM_LEN=\$0800!
-! ----------------------------------------------
-! FRAM
-! ----------------------------------------------
-MAIN_ORG=\$4400!        Code space start
-xdodoes=\$4400!         restore rDODOES: MOV #xdodoes,rDODOES
-xdocon=\$440E!          restore rDOCON: MOV #xdocon,rDOCON
-xdovar=\$4420!          restore rDOVAR: MOV #xdocon,rDOVAR  
-xdocol=\$442A!          restore rDOCOL: MOV #xdocol,rDOCOL      only for DTC model = 1
-DODOES=\$1284!          CALL rDODOES
-DOCON=\$1285!           CALL rDOCON
-DOVAR=\$1286!           CALL rDOVAR
-
-! to find DTC value, download \MSP430-FORTH\FastForthSpecs.4th
-! if DTC = 1, restore rDOCOL as this : MOV #xdocol,rDOCOL
-! if DTC = 2, restore rDOCOL as this : MOV #EXIT,rDOCOL
-! if DTC = 3, nothing to do, R7 is free for use.
-! ----------------------------------------------
-! Interrupt Vectors and signatures - MSP430FR5969
-! ----------------------------------------------
-MAIN_LEN=\$1FC00!       127 k FRAM
-FRAM_FULL=\$FF30!       80 bytes are sufficient considering what can be compiled in one line and WORD use.
-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!
-JTAG_PASSWORD=\$FF88!   256 bits
-BSL_PASSWORD=\$FFE0!    256 bits
-VECT_ORG=\$FFC6!        FFC6-FFFF
-VECT_LEN=\$3A!
-
-
-AES_Vec=\$FFC6!
-RTC_Vec=\$FFC8!
-LCD_Vec=\$FFCA!
-P4_Vec=\$FFCC!
-P3_Vec=\$FFCE!
-TA3_x_Vec=\$FFD0!
-TA3_0_Vec=\$FFD2!
-P2_Vec=\$FFD4!
-TA2_x_Vec=\$FFD6!
-TA2_0_Vec=\$FFD8!
-P1_Vec=\$FFDA!
-TA1_x_Vec=\$FFDC!
-TA1_0_Vec=\$FFDE!
-DMA_Vec=\$FFE0!
-eUSCI_B1_Vec=\$FFE2!
-eUSCI_A1_Vec=\$FFE4!
-TA0_x_Vec=\$FFE6!
-TA0_0_Vec=\$FFE8!
-ADC12_B_Vec=\$FFEA!
-eUSCI_B0_Vec=\$FFEC!
-eUSCI_A0_Vec=\$FFEE!
-ESI_Vec=\$FFF0!
-WDT_Vec=\$FFF2!
-TB0_x_Vec=\$FFF4!
-TB0_0_Vec=\$FFF6!
-COMP_E_Vec=\$FFF8!
-U_NMI_Vec=\$FFFA!
-S_NMI_Vec=\$FFFC!
-RST_Vec=\$FFFE!
-
-
-!MSP430fr5x6x.pat
-
-LPM4=\$F8! SR(LPM4+GIE)
-LPM3=\$D8! SR(LPM3+GIE)
-LPM2=\$98! SR(LPM2+GIE)
-LPM1=\$58! SR(LPM1+GIE)
-LPM0=\$18! SR(LPM0+GIE)
-
-
-
 ! ============================================
 ! SR bits :
 ! ============================================
@@ -128,6 +16,11 @@ LPM0=\$18! SR(LPM0+GIE)
 \#UF10=\#\$400! = SR(10) User Flag 2
 \#UF11=\#\$800! = SR(11) User Flag 3
 
+LPM4=\$F8! SR(LPM4+GIE)
+LPM3=\$D8! SR(LPM3+GIE)
+LPM2=\$98! SR(LPM2+GIE)
+LPM1=\$58! SR(LPM1+GIE)
+LPM0=\$18! SR(LPM0+GIE)
 
 ! ============================================
 ! PORTx, Reg  bits :
@@ -160,18 +53,44 @@ NOP3=MOV R0,R0!     \ MOV PC,PC      one word three cycles
 NEXT=MOV \@R13+,R0! \ MOV @IP+,PC
 SEMI=MOV \@R1+,R13\nMOV \@R13+,R0!
 
-! =================================================
-! MSP430FR5x6x DEVICES HAVE SPECIFIC RAM ADDRESSES!
-! =================================================
+! ----------------------------------------------
+! MSP430FR6989 MEMORY MAP
+! ----------------------------------------------
+! 0000-0005 = reserved ROM
+! 0006-001F = tiny RAM 26 bytes
+! 0020-0FFF = peripherals (4 KB)
+! 1000-17FF = ROM bootstrap loader BSL0..3 (4x512 B)
+! 1800-19FF = FRAM INFO  512 B
+! 1A00-1AFF = TLV device descriptor info (FRAM 256 B)
+! 1B00-1BFF = ROM boot memory
+! 1C00-23FF = RAM (2 KB)
+! 4400-FF7F = code memory (FRAM 48 kB)
+! FF80-FFFF = interrupt vectors (FRAM 127 B)
+! ----------------------------------------------
 
 
-! You can check the addresses below by comparing their values in DTCforthMSP430FRxxxx.lst
-! those addresses are usable with the symbolic assembler
+! ============================================
+! TINY RAM
+! ============================================
+TinyRAM_ORG=\$06!
+TinyRAM_LEN=\$20!
 
 ! ============================================
-! FastForth INFO(DCBA) memory map (256 bytes):
+! BSL
 ! ============================================
+BSL1=\$1000!
 
+! ============================================
+! FRAM INFO
+! ============================================
+INFO_ORG=\$1800!
+INFO_LEN=\$0200!
+
+! You can check the addresses below by comparing their values in DTCforthMSP430FRxxxx.lst
+! those addresses are usable with the symbolic assembler
+! ----------------------------------------------
+! FastForth INFO
+! ----------------------------------------------
 INI_THREAD=\$1800!      .word THREADS
 TERMBRW_RST=\$1802!     .word TERMBRW_RST
 TERMMCTLW_RST=\$1804!   .word TERMMCTLW_RST
@@ -189,8 +108,22 @@ ReadSectorWX=\$1818!    call with W = SectorLO  X = SectorHI
 WriteSectorWX=\$181A!   call with W = SectorLO  X = SectorHI
 
 ! ============================================
-! FORTH RAM areas :
+! FRAM TLV
+! ============================================
+TLV_ORG=\$1A00!      ; Device Descriptor Info (Tag-Lenght-Value)
+TLV_LEN=\$0100!      ;
+DEVICEID=\$1A04!
+
+
+! ============================================
+! RAM
 ! ============================================
+RAM_ORG=\$1C00!
+RAM_LEN=\$0800!
+
+! ---------------------------------------
+! FORTH RAM areas :
+! ---------------------------------------
 LSTACK_SIZE=\#16! words
 PSTACK_SIZE=\#48! words
 RSTACK_SIZE=\#48! words
@@ -198,11 +131,9 @@ PAD_LEN=\#84! bytes
 TIB_LEN=\#84! bytes
 HOLD_SIZE=\#34! bytes
 
-! ============================================
-! FastForth RAM memory map (>= 2k):
-! ============================================
-
-
+! ----------------------------------------------
+! FastForth RAM memory map (>= 1k):
+! ----------------------------------------------
 LEAVEPTR=\$1C00!    \ Leave-stack pointer, init by QUIT
 LSATCK=\$1C00!      \ leave stack,      grow up
 PSTACK=\$1C80!      \ parameter stack,  grow down
@@ -356,12 +287,93 @@ SDIB_LEN=\$54!
 SD_END=\$2170!
 SD_LEN=\$16E!
 
+! ----------------------------------------------
+! FRAM
+! ----------------------------------------------
+MAIN_ORG=\$4400!        Code space start
+
+SLEEP=\$4400! 
+BODYSLEEP=\$4404!
+VECT_RESET=\$440E! 
+LIT=\$4424! 
+NEXT_ADR=\$442C!
+XSQUOTE=\$442E! 
+QTBRAN=\$4442! 
+BRAN=\$4448! 
+QFBRAN=\$444C! 
+SKIPBRAN=\$4452! 
+XDO=\$4456! 
+XPLOOP=\$4466! 
+XLOOP=\$4478! 
+MUSMOD=\$447E!          unsigned 32/16 division
+SETIB=\$44C4!           Set Input Buffer with org len values, reset >IN 
+REFILL=\$44D4!          accept one line from input and leave org len of input buffer
+CIB_ADR=\$44E4!         contents currently TIB_ORG; may be redirected to SDIB_ORG
+XDODOES=\$44EC!         restore rDODOES: MOV #XDODOES,rDODOES
+XDOCON=\$44FA!          restore rDOCON: MOV #XDOCON,rDOCON
+XDOVAR=\$4506!          restore rDOVAR: MOV #XDOCON,rDOVAR  
+RFROM=\$4506!           
+XDOCOL=\$4510!          restore rDOCOL: MOV #XDOCOL,rDOCOL      only for DTC model = 1
+
+DODOES=\$1284!          CALL rDODOES
+DOCON=\$1285!           CALL rDOCON
+DOVAR=\$1286!           CALL rDOVAR
+DOCOL=\$1287!
+
+! to find DTC value, download \MSP430-FORTH\FastForthSpecs.4th
+! if DTC = 1, restore rDOCOL as this : MOV #xdocol,rDOCOL
+! if DTC = 2, restore rDOCOL as this : MOV #EXIT,rDOCOL
+! if DTC = 3, nothing to do, R7 is free for use.
+! ----------------------------------------------
+! Interrupt Vectors and signatures - MSP430FR6989
+! ----------------------------------------------
+MAIN_LEN=\$1FC00!       127 k FRAM
+FRAM_FULL=\$FF30!       80 bytes are sufficient considering what can be compiled in one line and WORD use.
+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!
+JTAG_PASSWORD=\$FF88!   256 bits
+BSL_PASSWORD=\$FFE0!    256 bits
+VECT_ORG=\$FFC6!        FFC6-FFFF
+VECT_LEN=\$3A!
+
+
+AES_Vec=\$FFC6!
+RTC_Vec=\$FFC8!
+LCD_Vec=\$FFCA!
+P4_Vec=\$FFCC!
+P3_Vec=\$FFCE!
+TA3_x_Vec=\$FFD0!
+TA3_0_Vec=\$FFD2!
+P2_Vec=\$FFD4!
+TA2_x_Vec=\$FFD6!
+TA2_0_Vec=\$FFD8!
+P1_Vec=\$FFDA!
+TA1_x_Vec=\$FFDC!
+TA1_0_Vec=\$FFDE!
+DMA_Vec=\$FFE0!
+eUSCI_B1_Vec=\$FFE2!
+eUSCI_A1_Vec=\$FFE4!
+TA0_x_Vec=\$FFE6!
+TA0_0_Vec=\$FFE8!
+ADC12_B_Vec=\$FFEA!
+eUSCI_B0_Vec=\$FFEC!
+eUSCI_A0_Vec=\$FFEE!
+ESI_Vec=\$FFF0!
+WDT_Vec=\$FFF2!
+TB0_x_Vec=\$FFF4!
+TB0_0_Vec=\$FFF6!
+COMP_E_Vec=\$FFF8!
+U_NMI_Vec=\$FFFA!
+S_NMI_Vec=\$FFFC!
+RST_Vec=\$FFFE!
 
 ! ============================================
 ! Special Fonction Registers (SFR)
 ! ============================================
 
-
 SFRIE1=\$100!       \ SFR enable register
 SFRIFG1=\$102!      \ SFR flag register
 SFRRPCR=\$104!      \ SFR reset pin control
index 91be812..f7c5c14 100644 (file)
 ; INIT order : WDT, GPIOs, FRAM, Clock, UARTs...
 ; ----------------------------------------------------------------------
 
-; ----------------------------------------------------------------------
-; POWER ON RESET AND INITIALIZATION : LOCK PMM_LOCKLPM5
-; ----------------------------------------------------------------------
-
-;              BIS     #LOCKLPM5,&PM5CTL0 ; unlocked by WARM
 
 ; ----------------------------------------------------------------------
 ; POWER ON RESET AND INITIALIZATION : WATCHDOG TIMER A
@@ -175,7 +170,7 @@ RTS         .equ    1           ; P2.0
 ; CTS input must be wired to the RTS output of UART2USB bridge 
 ; configure CTS as input low (true) to avoid lock when CTS is not wired
 CTS         .equ    2           ; P2.1
-            BIC.B #CTS,&P2OUT   ; CTS input pulled down
+            BIC.B #CTS,&P2OUT   ; CTS input resistor is pulled down
         .ENDIF  ; TERMINAL5WIRES
     .ENDIF  ; TERMINAL4WIRES
 
@@ -273,31 +268,32 @@ SD_BUS      .equ 0E000h ; pins P4.5 as UCA1CLK, P4.6 as UCA1SIMO & P4.7 as UCA1S
     .IFDEF LF_XTAL
 ;           MOV     #0000h,&CSCTL3      ; FLL select XT1, FLLREFDIV=0 (default value)
             MOV     #0000h,&CSCTL4      ; ACLOCK select XT1, MCLK & SMCLK select DCOCLKDIV
+;            BIC.B   #1,&CSCTL6          ; disable XT1AUTOOFF
+
+            BIS.B   #0C0h,&P2SEL1       ; P2.6 as XOUT, P2.7 as XIN
+
     .ELSE
             BIS     #0010h,&CSCTL3      ; FLL select REFCLOCK
 ;           MOV     #0100h,&CSCTL4      ; ACLOCK select REFO, MCLK & SMCLK select DCOCLKDIV (default value)
     .ENDIF
 
+
     .IF FREQUENCY = 0.5
 
-;            MOV     #058h,&CSCTL0       ; preset DCO = measured value @ 0x180 (88)
-;            MOV     #0001h,&CSCTL1      ; Set 1MHZ DCORSEL,disable DCOFTRIM,Modulation
             MOV     #1ED1h,&CSCTL0       ; preset MOD=31, DCO = measured value @ 0x180 (209)
             MOV     #00B0h,&CSCTL1      ; Set 1MHZ DCORSEL,enable DCOFTRIM=3h ,enable Modulation to reduce EMI
 ; ===================================== ;  fCOCLKDIV = REFO x (FLLN+1)
 ;            MOV     #100Dh,&CSCTL2      ; Set FLLD=1 (DCOCLKCDIV=DCO/2),set FLLN=0Dh
                                         ; fCOCLKDIV = 32768 x (13+1) = 0.459 MHz ; measured :  MHz
-;            MOV     #100Eh,&CSCTL2      ; Set FLLD=1 (DCOCLKCDIV=DCO/2),set FLLN=0Eh
+            MOV     #100Eh,&CSCTL2      ; Set FLLD=1 (DCOCLKCDIV=DCO/2),set FLLN=0Eh
                                         ; fCOCLKDIV = 32768 x (14+1) = 0.491 MHz ; measured :  MHz
-            MOV     #100Fh,&CSCTL2      ; Set FLLD=1 (DCOCLKCDIV=DCO/2),set FLLN=0Fh
+;            MOV     #100Fh,&CSCTL2      ; Set FLLD=1 (DCOCLKCDIV=DCO/2),set FLLN=0Fh
                                         ; fCOCLKDIV = 32768 x (15+1) = 0.524 MHz ; measured :  MHz
 ; =====================================
             MOV     #8,X
 
     .ELSEIF FREQUENCY = 1
 
-;            MOV     #100h,&CSCTL0       ; preset DCO = 256 
-;            MOV     #00B1h,&CSCTL1      ; Set 1MHZ DCORSEL,enable DCOFTRIM=3h ,disable Modulation
             MOV     #1EFFh,&CSCTL0       ; preset MOD=31, DCO=255  
             MOV     #00B0h,&CSCTL1      ; Set 1MHZ DCORSEL,enable DCOFTRIM=3h ,enable Modulation to reduce EMI
 ; ===================================== ;  fCOCLKDIV = REFO x (FLLN+1)
@@ -312,13 +308,11 @@ SD_BUS      .equ 0E000h ; pins P4.5 as UCA1CLK, P4.6 as UCA1SIMO & P4.7 as UCA1S
 
     .ELSEIF FREQUENCY = 2
 
-;            MOV     #100h,&CSCTL0       ; preset DCO = 256 
-;            MOV     #00B3h,&CSCTL1      ; Set 2MHZ DCORSEL,enable DCOFTRIM=3h ,disable Modulation
             MOV     #1EFFh,&CSCTL0       ; preset MOD=31, DCO=255  
             MOV     #00B2h,&CSCTL1      ; Set 2MHZ DCORSEL,enable DCOFTRIM=3h ,enable Modulation to reduce EMI
 ; ===================================== ;  fCOCLKDIV = REFO x (FLLN+1)
 ;            MOV     #003Bh,&CSCTL2        ; Set FLLD=0 (DCOCLKCDIV=DCO),set FLLN=3Bh
-                                        ; fCOCLKDIV = 32768 x (59+1) = 1.996 MHz ; measured :  MHz
+                                        ; fCOCLKDIV = 32768 x (59+1) = 1.966 MHz ; measured :  MHz
             MOV     #003Ch,&CSCTL2         ; Set FLLD=0 (DCOCLKCDIV=DCO),set FLLN=3Ch
                                         ; fCOCLKDIV = 32768 x (60+1) = 1.998 MHz ; measured :  MHz
 ;            MOV     #003Dh,&CSCTL2        ; Set FLLD=0 (DCOCLKCDIV=DCO),set FLLN=3Dh
@@ -328,8 +322,6 @@ SD_BUS      .equ 0E000h ; pins P4.5 as UCA1CLK, P4.6 as UCA1SIMO & P4.7 as UCA1S
 
     .ELSEIF FREQUENCY = 4
 
-;            MOV     #100h,&CSCTL0       ; preset DCO = 256 
-;            MOV     #00B5h,&CSCTL1      ; Set 4MHZ DCORSEL,enable DCOFTRIM=3h ,disable Modulation
             MOV     #1EFFh,&CSCTL0       ; preset MOD=31, DCO=255  
             MOV     #00B4h,&CSCTL1      ; Set 4MHZ DCORSEL,enable DCOFTRIM=3h ,enable Modulation to reduce EMI
 ; ===================================== ;  fCOCLKDIV = REFO x (FLLN+1)
@@ -346,14 +338,12 @@ SD_BUS      .equ 0E000h ; pins P4.5 as UCA1CLK, P4.6 as UCA1SIMO & P4.7 as UCA1S
 
     .ELSEIF FREQUENCY = 8
 
-;            MOV     #100h,&CSCTL0       ; preset DCO = 256 
-;            MOV     #00B7h,&CSCTL1      ; Set 8MHZ DCORSEL,enable DCOFTRIM=3h ,disable Modulation
             MOV     #1EFFh,&CSCTL0       ; preset MOD=31, DCO=255  
             MOV     #00B6h,&CSCTL1      ; Set 8MHZ DCORSEL,enable DCOFTRIM=3h ,enable Modulation to reduce EMI
 ; ===================================== ;  fCOCLKDIV = REFO x (FLLN+1)
-;            MOV     #00F3h,&CSCTL2      ; Set FLLD=0 (DCOCLKCDIV=DCO),set FLLN=F3h
+            MOV     #00F3h,&CSCTL2      ; Set FLLD=0 (DCOCLKCDIV=DCO),set FLLN=F3h
                                         ; fCOCLKDIV = 32768 x (243+1) = 7.995 MHz ; measured : 7.976MHz
-            MOV     #00F4h,&CSCTL2      ; Set FLLD=0 (DCOCLKCDIV=DCO),set FLLN=F4h
+;            MOV     #00F4h,&CSCTL2      ; Set FLLD=0 (DCOCLKCDIV=DCO),set FLLN=F4h
                                         ; fCOCLKDIV = 32768 x (244+1) = 8.028 MHz ; measured : 8.009MHz
 
 ;            MOV     #00F5h,&CSCTL2      ; Set FLLD=0 (DCOCLKCDIV=DCO),set FLLN=F5h
@@ -363,14 +353,12 @@ SD_BUS      .equ 0E000h ; pins P4.5 as UCA1CLK, P4.6 as UCA1SIMO & P4.7 as UCA1S
 
     .ELSEIF FREQUENCY = 12
 
-;            MOV     #100h,&CSCTL0       ; preset DCO = 256 
-;            MOV     #00B9h,&CSCTL1      ; Set 12MHZ DCORSEL,enable DCOFTRIM=3h ,disable Modulation
             MOV     #1EFFh,&CSCTL0       ; preset MOD=31, DCO=255  
             MOV     #00B8h,&CSCTL1      ; Set 12MHZ DCORSEL,enable DCOFTRIM=3h ,enable Modulation to reduce EMI
 ; ===================================== ;  fCOCLKDIV = REFO x (FLLN+1)
-;            MOV     #016Dh,&CSCTL2      ; Set FLLD=0 (DCOCLKCDIV=DCO),set FLLN=1E7h
+            MOV     #016Dh,&CSCTL2      ; Set FLLD=0 (DCOCLKCDIV=DCO),set FLLN=1E7h
                                         ; fCOCLKDIV = 32768 x 365+1) = 11.993 MHz ; measured : 11.xxxMHz
-            MOV     #016Eh,&CSCTL2      ; Set FLLD=0 (DCOCLKCDIV=DCO),set FLLN=1E8h
+;            MOV     #016Eh,&CSCTL2      ; Set FLLD=0 (DCOCLKCDIV=DCO),set FLLN=1E8h
                                         ; fCOCLKDIV = 32768 x 366+1) = 12.025 MHz ; measured : 12.xxxMHz
 ;            MOV     #016Fh,&CSCTL2      ; Set FLLD=0 (DCOCLKCDIV=DCO),set FLLN=1E9h
                                         ; fCOCLKDIV = 32768 x 367+1) = 12.058 MHz ; measured : 12.xxxMHz
@@ -379,8 +367,6 @@ SD_BUS      .equ 0E000h ; pins P4.5 as UCA1CLK, P4.6 as UCA1SIMO & P4.7 as UCA1S
 
     .ELSEIF FREQUENCY = 16
 
-;            MOV     #100h,&CSCTL0       ; preset DCO = 256 
-;            MOV     #00BBh,&CSCTL1      ; Set 16MHZ DCORSEL,enable DCOFTRIM=3h ,disable Modulation
             MOV     #1EFFh,&CSCTL0       ; preset MOD=31, DCO=255  
             MOV     #00BAh,&CSCTL1      ; Set 16MHZ DCORSEL,enable DCOFTRIM=3h ,enable Modulation to reduce EMI
 ; ===================================== ;  fCOCLKDIV = REFO x (FLLN+1)
@@ -395,8 +381,6 @@ SD_BUS      .equ 0E000h ; pins P4.5 as UCA1CLK, P4.6 as UCA1SIMO & P4.7 as UCA1S
 
     .ELSEIF FREQUENCY = 20
 
-;            MOV     #100h,&CSCTL0       ; preset DCO = 256 
-;            MOV     #00BDh,&CSCTL1      ; Set 20MHZ DCORSEL,enable DCOFTRIM=3h ,disable Modulation
             MOV     #1EFFh,&CSCTL0       ; preset MOD=31, DCO=255  
             MOV     #00BCh,&CSCTL1      ; Set 20MHZ DCORSEL,enable DCOFTRIM=3h ,enable Modulation to reduce EMI
 ; ===================================== ;  fCOCLKDIV = REFO x (FLLN+1)
@@ -411,8 +395,6 @@ SD_BUS      .equ 0E000h ; pins P4.5 as UCA1CLK, P4.6 as UCA1SIMO & P4.7 as UCA1S
 
     .ELSEIF FREQUENCY = 24
 
-;            MOV     #100h,&CSCTL0       ; preset DCO = 256 
-;            MOV     #00BFh,&CSCTL1      ; Set 24MHZ DCORSEL,enable DCOFTRIM=3h ,disable Modulation
             MOV     #1EFFh,&CSCTL0       ; preset MOD=31, DCO=255  
             MOV     #00BEh,&CSCTL1      ; Set 24MHZ DCORSEL,enable DCOFTRIM=3h ,enable Modulation to reduce EMI
 ; ===================================== ;  fCOCLKDIV = REFO x (FLLN+1)
index 19b88e6..a29e231 100644 (file)
@@ -161,8 +161,6 @@ TERM_BUS=\$0C!
 TERM_IN=\$221!          P4
 TERM_REN=\$227!
 TERM_SEL=\$22B!     \ SEL0
-TERM_IE=\$23B!
-TERM_IFG=\$23D!
 TERM_Vec=\$FFE2!        UCA1
 
 TERM_CTLW0=\$580!   \ eUSCI_A1 control word 0
@@ -276,7 +274,7 @@ I2CMM_IN=\$200!
 I2CMM_OUT=\$202!
 I2CMM_DIR=\$204!
 I2CMM_REN=\$206!
-I2CMM_SEL1=\$20A!       SEL0
+I2CMM_SEL=\$20A!        SEL0
 I2CMM_Vec=\$FFE0!       UCB0
 MMSDA=4!                P1.2
 MMSCL=8!                P1.3
@@ -287,7 +285,7 @@ I2CM_IN=\$200!
 I2CM_OUT=\$202!
 I2CM_DIR=\$204!
 I2CM_REN=\$206!
-I2CM_SEL1=\$20A!        SEL0
+I2CM_SEL=\$20A!         SEL0
 I2CM_Vec=\$FFE0!        UCB0
 MSDA=4!                 P1.2
 MSCL=8!                 P1.3
@@ -298,12 +296,48 @@ I2CS_IN=\$200!
 I2CS_OUT=\$202!
 I2CS_DIR=\$204!
 I2CS_REN=\$206!
-I2CS_SEL1=\$20A!        SEL0
+I2CS_SEL=\$20A!         SEL0
 I2CS_Vec=\$FFE0!        UCB0
 SSDA=4!                 P1.2
 SSCL=8!                 P1.3
 S_BUS=\$0C!
 
+UCSWRST=1!          eUSCI Software Reset
+UCTXIE=2!           eUSCI Transmit Interrupt Enable
+UCRXIE=1!           eUSCI Receive Interrupt Enable
+UCTXIFG=2!          eUSCI Transmit Interrupt Flag
+UCRXIFG=1!          eUSCI Receive Interrupt Flag
+UCTXIE0=2!          eUSCI_B Transmit Interrupt Enable
+UCRXIE0=1!          eUSCI_B Receive Interrupt Enable
+UCTXIFG0=2!         eUSCI_B Transmit Interrupt Flag
+UCRXIFG0=1!         eUSCI_B Receive Interrupt Flag
+
+I2CM_CTLW0=\$540!   USCI_B0 Control Word Register 0
+I2CM_CTLW1=\$542!   USCI_B0 Control Word Register 1
+I2CM_BRW=\$546!     USCI_B0 Baud Word Rate 0
+I2CM_STATW=\$548!   USCI_B0 status word 
+I2CM_TBCNT=\$54A!   USCI_B0 byte counter threshold  
+I2CM_RXBUF=\$54C!   USCI_B0 Receive Buffer 8
+I2CM_TXBUF=\$54E!   USCI_B0 Transmit Buffer 8
+I2CM_I2COA0=\$554!  USCI_B0 I2C Own Address 0
+I2CM_ADDRX=\$55C!   USCI_B0 Received Address Register 
+I2CM_I2CSA=\$560!   USCI_B0 I2C Slave Address
+I2CM_IE=\$56A!      USCI_B0 Interrupt Enable
+I2CM_IFG=\$56C!     USCI_B0 Interrupt Flags Register
+
+I2CS_CTLW0=\$540!   USCI_B0 Control Word Register 0
+I2CS_CTLW1=\$542!   USCI_B0 Control Word Register 1
+I2CS_BRW=\$546!     USCI_B0 Baud Word Rate 0
+I2CS_STATW=\$548!   USCI_B0 status word 
+I2CS_TBCNT=\$54A!   USCI_B0 byte counter threshold  
+I2CS_RXBUF=\$54C!   USCI_B0 Receive Buffer 8
+I2CS_TXBUF=\$54E!   USCI_B0 Transmit Buffer 8
+I2CS_I2COA0=\$554!  USCI_B0 I2C Own Address 0
+I2CS_ADDRX=\$55C!   USCI_B0 Received Address Register 
+I2CS_I2CSA=\$560!   USCI_B0 I2C Slave Address
+I2CS_IE=\$56A!      USCI_B0 Interrupt Enable
+I2CS_IFG=\$56C!     USCI_B0 Interrupt Flags Register
+
 SD_CD=\$10!             P4.4 as SD_CD
 SD_CDIN=\$221!
 SD_CS=\$20!             P2.5 as SD_CS     
index 0fefd53..45d3293 100644 (file)
 ; P1.0  - RTS TERMINAL     
 ; P1.1  - CTS TERMINAL     
 
+LED1_OUT    .equ    202h
+LED1_DIR    .equ    204h
+LED1        .equ    1           ;  P1.0
+
+RTS         .equ    1           ; P1.0
+CTS         .equ    2           ; P1.1
+HANDSHAKOUT .equ    P1OUT
+HANDSHAKIN  .equ    P1IN
 
     .IFDEF UCA0_TERM
-TXD         .equ 10h        ; P1.4 = TXD + FORTH Deep_RST pin
-RXD         .equ 20h        ; P1.5
-TERM_BUS    .equ 30h
-TERM_IN     .equ P1IN
-TERM_SEL    .equ P1SEL0
-TERM_REN    .equ P1REN
+TXD         .equ    10h        ; P1.4 = TXD + FORTH Deep_RST pin
+RXD         .equ    20h        ; P1.5
+TERM_BUS    .equ    30h
+TERM_IN     .equ    P1IN
+TERM_SEL    .equ    P1SEL0
+TERM_REN    .equ    P1REN
     .ENDIF
 
+; P2.1            <--- SD_CD (Card Detect)
+SD_CD       .equ    2
+SD_CDIN     .equ    P2IN
+; P2.0            ---> SD_CS (Card Select)
+SD_CS       .equ    1
+SD_CSOUT    .equ    P2OUT
+SD_CSDIR    .equ    P2DIR
+
     .IFDEF UCA1_SD
-SD_SEL      .equ PASEL0     ; to configure UCA1
-SD_REN      .equ PAREN      ; to configure pullup resistors
-SD_BUS      .equ 07000h     ; pins P2.4 as UCA1CLK, P2.5 as UCA1SOMI & P2.6 as UCA1SIMO
+SD_SEL      .equ    PASEL0     ; to configure UCA1
+SD_REN      .equ    PAREN      ; to configure pullup resistors
+SD_BUS      .equ    07000h     ; pins P2.4 as UCA1CLK, P2.5 as UCA1SOMI & P2.6 as UCA1SIMO
+    .ENDIF
+
+    .IFDEF UCA1_TERM
+TXD         .equ    40h        ; P2.6 = TXD + FORTH Deep_RST pin
+RXD         .equ    20h        ; P2.5
+TERM_BUS    .equ    60h
+TERM_IN     .equ    P2IN       ; TERMINAL TX  pin as FORTH Deep_RST 
+TERM_SEL    .equ    P2SEL0
+TERM_REN    .equ    P2REN
     .ENDIF
 
-; P2.1                <--- SD_CD (Card Detect)
-SD_CD           .equ  2
-SD_CDIN         .equ  P2IN
-; P2.0                ---> SD_CS (Card Select)
-SD_CS           .equ  1
-SD_CSOUT        .equ P2OUT
-SD_CSDIR        .equ P2DIR
+    .IFDEF UCB0_TERM        ; for MSP_EXP430FR2433_I2C
+S_BUS       .equ    0Ch     ; P1.2=SDA P1.3=SCL
+I2CS_SEL    .equ    P1SEL0
+I2CS_REN    .equ    P1REN
+I2CS_OUT    .equ    P1OUT
+I2CS_VEC    .equ    0FFE0h   ; UCB0_Vec
+
+I2CS_CTLW0      .equ 540h   ; USCI_B0 Control Word Register 0
+I2CS_CTLW1      .equ 542h   ; USCI_B0 Control Word Register 1
+I2CS_BRW        .equ 546h   ; USCI_B0 Baud Word Rate 0
+I2CS_STATW      .equ 548h   ; USCI_B0 status word 
+I2CS_TBCNT      .equ 54Ah   ; USCI_B0 byte counter threshold  
+I2CS_RXBUF      .equ 54Ch   ; USCI_B0 Receive Buffer 8
+I2CS_TXBUF      .equ 54Eh   ; USCI_B0 Transmit Buffer 8
+I2CS_I2COA0     .equ 554h   ; USCI_B0 I2C Own Address 0
+I2CS_ADDRX      .equ 55Ch   ; USCI_B0 Received Address Register 
+I2CS_ADDMASK    .equ 55Eh   ; USCI_B0 Address Mask
+I2CS_I2CSA      .equ 560h   ; USCI_B0 I2C Slave Address
+I2CS_IE         .equ 56Ah   ; USCI_B0 Interrupt Enable
+I2CS_IFG        .equ 56Ch   ; USCI_B0 Interrupt Flags Register
 
+    .ENDIF
 
-    .IFDEF UCA1_TERM
-TXD         .equ 40h        ; P2.6 = TXD + FORTH Deep_RST pin
-RXD         .equ 20h        ; P2.5
-TERM_BUS    .equ 60h
-TERM_IN     .equ P2IN       ; TERMINAL TX  pin as FORTH Deep_RST 
-TERM_SEL    .equ P2SEL0
-TERM_REN    .equ P2REN
+    .IFDEF  UCB0_I2CM       ; for TERM2IIC add-on
+I2CT_BUS    .equ    0Ch     ; P1.2=SDA P1.3=SCL
+I2CT_SEL    .equ    P1SEL0
+I2CT_REN    .equ    P1REN
+I2CT_OUT    .equ    P1OUT
     .ENDIF
 
+I2CT_SLA_BUS    .equ   07h     ; P2.0 P2.1 P2.1
+I2CT_SLA_IN     .equ   P2IN
+I2CT_SLA_OUT    .equ   P2OUT
+I2CT_SLA_DIR    .equ   P2DIR
+I2CT_SLA_REN    .equ   P2REN
+
             MOV #-1,&PAREN      ; all inputs with pull up/down resistors
             MOV #0FFFCh,&PAOUT  ; all pins with pullup resistors else LED1/LED2
 
     .IFDEF TERMINAL4WIRES
 ; RTS output is wired to the CTS input of UART2USB bridge 
 ; configure RTS as output high to disable RX TERM during start FORTH
-HANDSHAKOUT .equ    P1OUT
-HANDSHAKIN  .equ    P1IN
-RTS         .equ    1           ; P1.0
-;            BIS.B #RTS,&P1DIR   ; RTS as output high
-            BIS.B #RTS,&P1OUT   ; RTS as output high
+            BIS.B #RTS,&P1DIR   ; RTS as output high
         .IFDEF TERMINAL5WIRES
 ; CTS input must be wired to the RTS output of UART2USB bridge 
 ; configure CTS as input low (true) to avoid lock when CTS is not wired
-CTS         .equ    2           ; P1.1
-            BIC.B #CTS,&P1DIR   ; CTS input pulled down
-;            BIC.B #CTS,&P1OUT   ; CTS input pulled down
+            BIC.B #CTS,&P1OUT   ; CTS input pulled down
         .ENDIF  ; TERMINAL5WIRES
     .ENDIF  ; TERMINAL4WIRES
 
 
-    .IFDEF UCB0_TERM        ; for MSP_EXP430FR2433_I2C
-I2CM_BUS        .equ    0Ch   ; P1.2=SDA P1.3=SCL
-I2CM_SEL        .equ    P1SEL0
-I2CM_REN        .equ    P1REN
-I2CM_OUT        .equ    P1OUT
-    .ENDIF
-
-    .IFDEF  UCB0_I2CM   ; for TERM2IIC add-on
-I2CT_BUS        .equ    0Ch   ; P1.2=SDA P1.3=SCL
-I2CT_SEL        .equ    P1SEL0
-I2CT_REN        .equ    P1REN
-I2CT_OUT        .equ    P1OUT
-    .ENDIF
-
-I2CT_SLA_BUS    .equ   07h     ; P2.0 P2.1 P2.1
-I2CT_SLA_IN     .equ   P2IN
-I2CT_SLA_OUT    .equ   P2OUT
-I2CT_SLA_DIR    .equ   P2DIR
-I2CT_SLA_REN    .equ   P2REN
-
-
-
 ; ----------------------------------------------------------------------
 ; POWER ON RESET AND INITIALIZATION : PORT3
 ; ----------------------------------------------------------------------
index dc0d5b1..ab0f387 100644 (file)
@@ -95,8 +95,8 @@
 ! P2.1  -             J2.12  -  <---- SD_CD (Card Detect)
 ! P2.0  -             J2.11  -  ----> SD_CS (Card Select)
 !       
-! P1.2  - UCB0 SDA    J1.10  -  <---> SDA I2C Slave
 ! P1.3  - UCB0 SCL    J1.9   -  ----> SCL I2C Slave
+! P1.2  - UCB0 SDA    J1.10  -  <---> SDA I2C Slave
 !       
 ! P3.1  -             J2.13  -  ----> SCL I2C SoftMaster
 ! P3.2  -             J2.17  -  <---> SDA I2C SoftMaster
@@ -143,6 +143,7 @@ HANDSHAKOUT=\$202!
 ! APPLICATION I/O :
 ! ============================================
 LED1_OUT=\$202!
+LED1_DIR=\$204!
 LED1=1!          P1.0
 
 LED2_OUT=\$202!
@@ -191,7 +192,7 @@ I2CMM_OUT=\$202!
 I2CMM_DIR=\$204!
 I2CMM_REN=\$206!
 I2CMM_SEL=\$20A!    SEL0   
-I2CMM_Vec=\$FFE0!
+I2CMM_Vec=\$FFE0!   UCB0_Vec
 MMSDA=\$04!         P1.2
 MMSCL=\$08!         P1.3
 MM_BUS=\$0C!
@@ -202,7 +203,7 @@ I2CM_OUT=\$202!
 I2CM_DIR=\$204!
 I2CM_REN=\$206!
 I2CM_SEL=\$20A!     SEL0
-I2CM_Vec=\$FFE0!
+I2CM_Vec=\$FFE0!    UCB0_Vec
 MSDA=\$04!          P1.2
 MSCL=\$08!          P1.3
 M_BUS=\$0C!
@@ -213,10 +214,46 @@ I2CS_OUT=\$202!
 I2CS_DIR=\$204!
 I2CS_REN=\$206!
 I2CS_SEL=\$20A!     SEL0
-I2CS_Vec=\$FFE0!
-SSDA=\$40!          P1.2
-SSCL=\$80!          P1.3
-S_BUS=\$C0!
+I2CS_Vec=\$FFE0!    UCB0_Vec
+SSDA=\$04!          P1.2
+SSCL=\$08!          P1.3
+S_BUS=\$0C!
+
+UCSWRST=1!          eUSCI Software Reset
+UCTXIE=2!           eUSCI Transmit Interrupt Enable
+UCRXIE=1!           eUSCI Receive Interrupt Enable
+UCTXIFG=2!          eUSCI Transmit Interrupt Flag
+UCRXIFG=1!          eUSCI Receive Interrupt Flag
+UCTXIE0=2!          eUSCI_B Transmit Interrupt Enable
+UCRXIE0=1!          eUSCI_B Receive Interrupt Enable
+UCTXIFG0=2!         eUSCI_B Transmit Interrupt Flag
+UCRXIFG0=1!         eUSCI_B Receive Interrupt Flag
+
+I2CM_CTLW0=\$540!   USCI_B0 Control Word Register 0
+I2CM_CTLW1=\$542!   USCI_B0 Control Word Register 1
+I2CM_BRW=\$546!     USCI_B0 Baud Word Rate 0
+I2CM_STATW=\$548!   USCI_B0 status word 
+I2CM_TBCNT=\$54A!   USCI_B0 byte counter threshold  
+I2CM_RXBUF=\$54C!   USCI_B0 Receive Buffer 8
+I2CM_TXBUF=\$54E!   USCI_B0 Transmit Buffer 8
+I2CM_I2COA0=\$554!  USCI_B0 I2C Own Address 0
+I2CM_ADDRX=\$55C!   USCI_B0 Received Address Register 
+I2CM_I2CSA=\$560!   USCI_B0 I2C Slave Address
+I2CM_IE=\$56A!      USCI_B0 Interrupt Enable
+I2CM_IFG=\$56C!     USCI_B0 Interrupt Flags Register
+
+I2CS_CTLW0=\$540!   USCI_B0 Control Word Register 0
+I2CS_CTLW1=\$542!   USCI_B0 Control Word Register 1
+I2CS_BRW=\$546!     USCI_B0 Baud Word Rate 0
+I2CS_STATW=\$548!   USCI_B0 status word 
+I2CS_TBCNT=\$54A!   USCI_B0 byte counter threshold  
+I2CS_RXBUF=\$54C!   USCI_B0 Receive Buffer 8
+I2CS_TXBUF=\$54E!   USCI_B0 Transmit Buffer 8
+I2CS_I2COA0=\$554!  USCI_B0 I2C Own Address 0
+I2CS_ADDRX=\$55C!   USCI_B0 Received Address Register 
+I2CS_I2CSA=\$560!   USCI_B0 I2C Slave Address
+I2CS_IE=\$56A!      USCI_B0 Interrupt Enable
+I2CS_IFG=\$56C!     USCI_B0 Interrupt Flags Register
 
 SD_CD=2!        ; P2.1 as SD_CD
 SD_CS=1!        ; P2.0 as SD_CS     
index 7fde55a..ec9c3a6 100644 (file)
 ; P1.1 - RX0
 
     .IFDEF UCA0_TERM
-TXD         .equ 1     ; P1.0 = TXD + FORTH Deep_RST pin
-RXD         .equ 2     ; P1.1
-TERM_BUS    .equ 003h  ; TX RX
-TERM_IN     .equ P1IN
-TERM_REN    .equ P1REN
-TERM_SEL    .equ P1SEL0
+TXD         .equ    1       ; P1.0 = TXD + FORTH Deep_RST pin
+RXD         .equ    2       ; P1.1
+TERM_BUS    .equ    003h    ; TX RX
+TERM_IN     .equ    P1IN
+TERM_REN    .equ    P1REN
+TERM_SEL    .equ    P1SEL0
     .ENDIF
 
-
-    .IFDEF TERMINAL4WIRES
-
-; RTS output is wired to the CTS input of UART2USB bridge 
-; configure RTS as output high to disable RX TERM during start FORTH
-
+RTS         .set    8           ; P2.3 bit position
+CTS         .set    10h         ; P2.4 bit position
 HANDSHAKOUT .set    P2OUT
 HANDSHAKIN  .set    P2IN
 
-RTS         .set    8           ; P2.3 bit position
-
-            BIS #00800h,&PADIR  ; all pins as input else RTS P2.3 as output
             BIS #-1,&PAREN      ; all input pins with resistor
+            BIS #-1,&PAOUT      ; all pins with PULLUP resistor
 
+    .IFDEF TERMINAL4WIRES
+; RTS output is wired to the CTS input of UART2USB bridge 
+; configure RTS as output high to disable RX TERM during start FORTH
+            BIS.B #RTS,&P2DIR   ; RTS as output high
         .IFDEF TERMINAL5WIRES
-
-CTS         .set    10h         ; P2.4 bit position
-
-            MOV #0EFFFh,&PAOUT  ; P2.3 (RTS) as output HIGH, P2.4 (CTS) I pull down, others I pull up, 
-
-        .ELSEIF
-
-            MOV #-1,&PAOUT      ; that acts as pull up resistor, and P2.3 (RTS) as output HIGH
-
+            BIC.B #CTS,&P2OUT   ; CTS input pulled down
         .ENDIF  ; TERMINAL5WIRES
-
-    .ELSEIF
-
-; PORTx default wanted state : pins as input with pullup resistor
-
-            MOV #-1,&PAOUT  ; OUT1 for all pins
-            BIS #-1,&PAREN  ; all pins with pullup resistors
-
     .ENDIF  ; TERMINAL4WIRES
 
 ; ----------------------------------------------------------------------
index f684fd0..c0f8385 100644 (file)
@@ -315,7 +315,7 @@ I2CMM_OUT=\$242!
 I2CMM_DIR=\$244!
 I2CMM_REN=\$246!
 I2CMM_SEL=\$24A!        SEL0
-I2CMM_Vec=\$FFEA!
+I2CMM_Vec=\$FFEA!       UCB0_Vec
 MMSDA=\$04!             P5.2  SDA hadware MULTI_MASTER
 MMSCL=\$08!             P5.3  SCL hadware MULTI_MASTER
 MM_BUS=\$0C!
@@ -325,7 +325,7 @@ I2CM_OUT=\$242!
 I2CM_DIR=\$244!
 I2CM_REN=\$246!
 I2CM_SEL=\$24A!         SEL0
-I2CM_Vec=\$FFEA!
+I2CM_Vec=\$FFEA!        UCB0_Vec
 MSDA=\$04!              P5.2  SDA hadware MASTER
 MSCL=\$08!              P5.3  SCL hadware MASTER
 M_BUS=\$0C!
@@ -335,11 +335,47 @@ I2CS_OUT=\$242!
 I2CS_DIR=\$244!
 I2CS_REN=\$246!
 I2CS_SEL=\$24A!         SEL0
-I2CS_Vec=\$FFEA!
+I2CS_Vec=\$FFEA!        UCB0_Vec
 SSDA=\$04!              P5.2  SDA hadware SLAVE
 SSCL=\$08!              P5.3  SCL hadware SLAVE
 S_BUS=\$0C!
 
+UCSWRST=1!          eUSCI Software Reset
+UCTXIE=2!           eUSCI Transmit Interrupt Enable
+UCRXIE=1!           eUSCI Receive Interrupt Enable
+UCTXIFG=2!          eUSCI Transmit Interrupt Flag
+UCRXIFG=1!          eUSCI Receive Interrupt Flag
+UCTXIE0=2!          eUSCI_B Transmit Interrupt Enable
+UCRXIE0=1!          eUSCI_B Receive Interrupt Enable
+UCTXIFG0=2!         eUSCI_B Transmit Interrupt Flag
+UCRXIFG0=1!         eUSCI_B Receive Interrupt Flag
+
+I2CM_CTLW0=\$540!   USCI_B0 Control Word Register 0
+I2CM_CTLW1=\$542!   USCI_B0 Control Word Register 1
+I2CM_BRW=\$546!     USCI_B0 Baud Word Rate 0
+I2CM_STATW=\$548!   USCI_B0 status word 
+I2CM_TBCNT=\$54A!   USCI_B0 byte counter threshold  
+I2CM_RXBUF=\$54C!   USCI_B0 Receive Buffer 8
+I2CM_TXBUF=\$54E!   USCI_B0 Transmit Buffer 8
+I2CM_I2COA0=\$554!  USCI_B0 I2C Own Address 0
+I2CM_ADDRX=\$55C!   USCI_B0 Received Address Register 
+I2CM_I2CSA=\$560!   USCI_B0 I2C Slave Address
+I2CM_IE=\$56A!      USCI_B0 Interrupt Enable
+I2CM_IFG=\$56C!     USCI_B0 Interrupt Flags Register
+
+I2CS_CTLW0=\$540!   USCI_B0 Control Word Register 0
+I2CS_CTLW1=\$542!   USCI_B0 Control Word Register 1
+I2CS_BRW=\$546!     USCI_B0 Baud Word Rate 0
+I2CS_STATW=\$548!   USCI_B0 status word 
+I2CS_TBCNT=\$54A!   USCI_B0 byte counter threshold  
+I2CS_RXBUF=\$54C!   USCI_B0 Receive Buffer 8
+I2CS_TXBUF=\$54E!   USCI_B0 Transmit Buffer 8
+I2CS_I2COA0=\$554!  USCI_B0 I2C Own Address 0
+I2CS_ADDRX=\$55C!   USCI_B0 Received Address Register 
+I2CS_I2CSA=\$560!   USCI_B0 I2C Slave Address
+I2CS_IE=\$56A!      USCI_B0 Interrupt Enable
+I2CS_IFG=\$56C!     USCI_B0 Interrupt Flags Register
+
 
 SD_CS=2!        ; P8.1 as SD_CS     
 SD_CD=1!        ; P8.0 as SD_CD
index 74894be..5a46265 100644 (file)
 ; PORT 1  usage
 ; P1.4 is used as analog input from NTC voltage divider
 
-
-
     .IFDEF UCA0_TERM
-TERM_IN     .equ P2IN
-TXD         .equ 1          ; P2.0 = TXD + FORTH Deep_RST pin
-RXD         .equ 2          ; P2.1 = RXD
-TERM_BUS    .equ 3
-TERM_SEL    .equ P2SEL1
-TERM_REN    .equ P2REN
+TERM_IN     .equ    P2IN
+TXD         .equ    1          ; P2.0 = TXD + FORTH Deep_RST pin
+RXD         .equ    2          ; P2.1 = RXD
+TERM_BUS    .equ    3
+TERM_SEL    .equ    P2SEL1
+TERM_REN    .equ    P2REN
     .ENDIF
 
     .IFDEF UCB0_SD
-SD_SEL      .equ PASEL1     ; to configure UCB0
-SD_REN      .equ PAREN      ; to configure pullup resistors
-SD_BUS      .equ 7000h      ; pins P2.4 as UCB0CLK, P2.5 as UCB0SIMO & P2.6 as UCB0SOMI
-SD_CD       .equ 4          ; P2.2 as SD_CD
-SD_CS       .equ 8          ; P2.3 as SD_CS     
-SD_CDIN     .equ P2IN
-SD_CSOUT    .equ P2OUT
-SD_CSDIR    .equ P2DIR
+SD_SEL      .equ    PASEL1     ; to configure UCB0
+SD_REN      .equ    PAREN      ; to configure pullup resistors
+SD_BUS      .equ    7000h      ; pins P2.4 as UCB0CLK, P2.5 as UCB0SIMO & P2.6 as UCB0SOMI
+SD_CD       .equ    4          ; P2.2 as SD_CD
+SD_CS       .equ    8          ; P2.3 as SD_CS     
+SD_CDIN     .equ    P2IN
+SD_CSOUT    .equ    P2OUT
+SD_CSDIR    .equ    P2DIR
     .ENDIF
 
+RTS         .equ    4           ; P2.2
+CTS         .equ    8           ; P2.3
+HANDSHAKOUT .equ    P2OUT
+HANDSHAKIN  .equ    P2IN
 
 ; RTS output is wired to the CTS input of UART2USB bridge 
 ; configure RTS as output high to disable RX TERM during start FORTH
@@ -230,19 +232,14 @@ SD_CSDIR    .equ P2DIR
     .IFDEF TERMINAL4WIRES
 ; RTS output is wired to the CTS input of UART2USB bridge 
 ; configure RTS as output high to disable RX TERM during start FORTH
-HANDSHAKOUT .equ    P2OUT
-HANDSHAKIN  .equ    P2IN
-RTS         .equ    4           ; P2.2
             BIS.B #RTS,&P2DIR   ; RTS as output high
         .IFDEF TERMINAL5WIRES
 ; CTS input must be wired to the RTS output of UART2USB bridge 
 ; configure CTS as input low (true) to avoid lock when CTS is not wired
-CTS         .equ    8           ; P2.3
             BIC.B #CTS,&P2OUT   ; CTS input pulled down
         .ENDIF  ; TERMINAL5WIRES
     .ENDIF  ; TERMINAL4WIRES
 
-
 ; ----------------------------------------------------------------------
 ; POWER ON RESET AND INITIALIZATION : PORT3/4
 ; ----------------------------------------------------------------------
index db9c58f..1278a6b 100644 (file)
@@ -267,35 +267,72 @@ SMMSDA=\$40!            P1.6
 SMMSCL=\$80!            P1.7
 SMM_BUS=\$C0!
 
-I2CMM_IN=\$200!
-I2CMM_OUT=\$202!
-I2CMM_DIR=\$204!
-I2CMM_REN=\$206!
+I2CMM_IN=\$200
+I2CMM_OUT=\$202
+I2CMM_DIR=\$204
+I2CMM_REN=\$206
 I2CMM_SEL=\$20C!        SEL1
-I2CMM_Vec=\$FFEE!       UCB0
+I2CMM_Vec=\$FFEE!       eUSCIB0_INT
 MMSDA=\$40!             P1.6
 MMSCL=\$80!             P1.7
-MM_BUS=\$C0!
+MM_BUS=\$C0
 
-I2CM_IN=\$200!
-I2CM_OUT=\$202!
-I2CM_DIR=\$204!
-I2CM_REN=\$206!
+I2CM_IN=\$200
+I2CM_OUT=\$202
+I2CM_DIR=\$204
+I2CM_REN=\$206
 I2CM_SEL=\$20C!         SEL1
-I2CM_Vec=\$FFEE!        UCB0
+I2CM_Vec=\$FFEE!        eUSCIB0_INT
 MSDA=\$40!              P1.6
 MSCL=\$80!              P1.7
-M_BUS=\$C0!
+M_BUS=\$C0
 
-I2CS_IN=\$200!
-I2CS_OUT=\$202!
-I2CS_DIR=\$204!
-I2CS_REN=\$206!
+I2CS_IN=\$200
+I2CS_OUT=\$202
+I2CS_DIR=\$204
+I2CS_REN=\$206
 I2CS_SEL=\$20C!         SEL1
-I2CS_Vec=\$FFEE!        UCB0
+I2CS_Vec=\$FFEE!        eUSCIB0_INT
 SSDA=\$40!              P1.6
 SSCL=\$80!              P1.7
-S_BUS=\$C0!
+S_BUS=\$C0
+
+UCSWRST=1!          eUSCI Software Reset
+UCTXIE=2!           eUSCI Transmit Interrupt Enable
+UCRXIE=1!           eUSCI Receive Interrupt Enable
+UCTXIFG=2!          eUSCI Transmit Interrupt Flag
+UCRXIFG=1!          eUSCI Receive Interrupt Flag
+UCTXIE0=2!          eUSCI_B Transmit Interrupt Enable
+UCRXIE0=1!          eUSCI_B Receive Interrupt Enable
+UCTXIFG0=2!         eUSCI_B Transmit Interrupt Flag
+UCRXIFG0=1!         eUSCI_B Receive Interrupt Flag
+
+I2CM_CTLW0=\$640!   USCI_B0 Control Word Register 0
+I2CM_CTLW1=\$642!   USCI_B0 Control Word Register 1
+I2CM_BRW=\$646!     USCI_B0 Baud Word Rate 0
+I2CM_STATW=\$648!   USCI_B0 status word 
+I2CM_TBCNT=\$64A!   USCI_B0 byte counter threshold  
+I2CM_RXBUF=\$64C!   USCI_B0 Receive Buffer 8
+I2CM_TXBUF=\$64E!   USCI_B0 Transmit Buffer 8
+I2CM_I2COA0=\$654!  USCI_B0 I2C Own Address 0
+I2CM_ADDRX=\$65C!   USCI_B0 Received Address Register 
+I2CM_I2CSA=\$660!   USCI_B0 I2C Slave Address
+I2CM_IE=\$66A!      USCI_B0 Interrupt Enable
+I2CM_IFG=\$66C!     USCI_B0 Interrupt Flags Register
+
+I2CS_CTLW0=\$640!   USCI_B0 Control Word Register 0
+I2CS_CTLW1=\$642!   USCI_B0 Control Word Register 1
+I2CS_BRW=\$646!     USCI_B0 Baud Word Rate 0
+I2CS_STATW=\$648!   USCI_B0 status word 
+I2CS_TBCNT=\$64A!   USCI_B0 byte counter threshold  
+I2CS_RXBUF=\$64C!   USCI_B0 Receive Buffer 8
+I2CS_TXBUF=\$64E!   USCI_B0 Transmit Buffer 8
+I2CS_I2COA0=\$654!  USCI_B0 I2C Own Address 0
+I2CS_ADDRX=\$65C!   USCI_B0 Received Address Register 
+I2CS_I2CSA=\$660!   USCI_B0 I2C Slave Address
+I2CS_IE=\$66A!      USCI_B0 Interrupt Enable
+I2CS_IFG=\$66C!     USCI_B0 Interrupt Flags Register
+
 
 SD_CD=4!                P2.2 as SD_CD
 SD_CS=8!                P2.3 as SD_CS     
index 8ecc1bf..dade704 100644 (file)
@@ -267,37 +267,37 @@ SD_BUS      .equ 04C0h  ; pins P2.2 as UCB0CLK, P1.6 as UCB0SIMO & P1.7 as UCB0S
 ; ----------------------------------------------------------------------
 ; reset state : Px{DIR,REN,SEL0,SEL1,SELC,IE,IFG,IV} = 0 ; Px{IN,OUT,IES} = ?
 
-            BIS #-1,&PBREN  ; all pins as input with resistor
-            MOV #0BFFFh,&PBOUT  ; all pins as input with pull up resistor else P4.6
-
 ; PORT3 usage
 
 ; PORT4 usage
+; P4.5 - switch S1
+; P4.6 - LED1 red
+
+CTS         .equ    1       ; P4.0
+RTS         .equ    2       ; P4.1
+HANDSHAKOUT .equ    P4OUT
+HANDSHAKIN  .equ    P4IN
+
+SD_CD       .equ    4       ; P4.2 as SD_CD
+SD_CS       .equ    8       ; P4.3 as SD_CS     
+SD_CDIN     .equ    P4IN
+SD_CSOUT    .equ    P4OUT
+SD_CSDIR    .equ    P4DIR
+
+            BIS #-1,&PBREN  ; all pins as input with resistor
+            MOV #0BFFFh,&PBOUT  ; all pins as input with pull up resistor else P4.6
 
     .IFDEF TERMINAL4WIRES
 ; RTS output is wired to the CTS input of UART2USB bridge 
 ; configure RTS as output high to disable RX TERM during start FORTH
-HANDSHAKOUT .equ    P4OUT
-HANDSHAKIN  .equ    P4IN
-RTS         .equ    2           ; P4.1
             BIS.B #RTS,&P4DIR   ; RTS as output high
         .IFDEF TERMINAL5WIRES
 ; CTS input must be wired to the RTS output of UART2USB bridge 
 ; configure CTS as input low (true) to avoid lock when CTS is not wired
-CTS         .equ    1           ; P4.0
             BIC.B #CTS,&P4OUT   ; CTS input pulled down
         .ENDIF  ; TERMINAL5WIRES
     .ENDIF  ; TERMINAL4WIRES
 
-SD_CD       .equ 4        ; P4.2 as SD_CD
-SD_CS       .equ 8        ; P4.3 as SD_CS     
-SD_CDIN     .equ P4IN
-SD_CSOUT    .equ P4OUT
-SD_CSDIR    .equ P4DIR
-
-; P4.5 - switch S1
-; P4.6 - LED1 red
-
 ; ----------------------------------------------------------------------
 ; POWER ON RESET AND INITIALIZATION : PORTJ
 ; ----------------------------------------------------------------------
index 7d0c149..f534606 100644 (file)
@@ -335,7 +335,7 @@ I2CM_IN=\$200
 I2CM_OUT=\$202
 I2CM_DIR=\$204
 I2CM_REN=\$206
-I2CM_SEL=\$20C
+I2CM_SEL=\$20C!         SEL1
 I2CM_Vec=\$FFEE!        eUSCIB0_INT
 MSDA=\$40!              P1.6
 MSCL=\$80!              P1.7
@@ -345,9 +345,45 @@ I2CS_IN=\$200
 I2CS_OUT=\$202
 I2CS_DIR=\$204
 I2CS_REN=\$206
-I2CS_SEL=\$20C
+I2CS_SEL=\$20C!         SEL1
 I2CS_Vec=\$FFEE!        eUSCIB0_INT
 SSDA=\$40!              P1.6
 SSCL=\$80!              P1.7
 S_BUS=\$C0
 
+UCSWRST=1!          eUSCI Software Reset
+UCTXIE=2!           eUSCI Transmit Interrupt Enable
+UCRXIE=1!           eUSCI Receive Interrupt Enable
+UCTXIFG=2!          eUSCI Transmit Interrupt Flag
+UCRXIFG=1!          eUSCI Receive Interrupt Flag
+UCTXIE0=2!          eUSCI_B Transmit Interrupt Enable
+UCRXIE0=1!          eUSCI_B Receive Interrupt Enable
+UCTXIFG0=2!         eUSCI_B Transmit Interrupt Flag
+UCRXIFG0=1!         eUSCI_B Receive Interrupt Flag
+
+I2CM_CTLW0=\$640!   USCI_B0 Control Word Register 0
+I2CM_CTLW1=\$642!   USCI_B0 Control Word Register 1
+I2CM_BRW=\$646!     USCI_B0 Baud Word Rate 0
+I2CM_STATW=\$648!   USCI_B0 status word 
+I2CM_TBCNT=\$64A!   USCI_B0 byte counter threshold  
+I2CM_RXBUF=\$64C!   USCI_B0 Receive Buffer 8
+I2CM_TXBUF=\$64E!   USCI_B0 Transmit Buffer 8
+I2CM_I2COA0=\$654!  USCI_B0 I2C Own Address 0
+I2CM_ADDRX=\$65C!   USCI_B0 Received Address Register 
+I2CM_I2CSA=\$660!   USCI_B0 I2C Slave Address
+I2CM_IE=\$66A!      USCI_B0 Interrupt Enable
+I2CM_IFG=\$66C!     USCI_B0 Interrupt Flags Register
+
+I2CS_CTLW0=\$640!   USCI_B0 Control Word Register 0
+I2CS_CTLW1=\$642!   USCI_B0 Control Word Register 1
+I2CS_BRW=\$646!     USCI_B0 Baud Word Rate 0
+I2CS_STATW=\$648!   USCI_B0 status word 
+I2CS_TBCNT=\$64A!   USCI_B0 byte counter threshold  
+I2CS_RXBUF=\$64C!   USCI_B0 Receive Buffer 8
+I2CS_TXBUF=\$64E!   USCI_B0 Transmit Buffer 8
+I2CS_I2COA0=\$654!  USCI_B0 I2C Own Address 0
+I2CS_ADDRX=\$65C!   USCI_B0 Received Address Register 
+I2CS_I2CSA=\$660!   USCI_B0 I2C Slave Address
+I2CS_IE=\$66A!      USCI_B0 Interrupt Enable
+I2CS_IFG=\$66C!     USCI_B0 Interrupt Flags Register
+
index 367d0f1..e59ec05 100644 (file)
@@ -203,27 +203,27 @@ TERM_REN    .equ P2REN
 ; PORT3 FastForth usage
 
 ; PORT4 FastForth usage
-SD_CS       .equ 1              ; P4.0 as SD_CS     
-SD_CSOUT    .equ P4OUT
-SD_CSDIR    .equ P4DIR
+SD_CS       .equ    1              ; P4.0 as SD_CS     
+SD_CSOUT    .equ    P4OUT
+SD_CSDIR    .equ    P4DIR
 
+RTS         .equ    4           ; P4.2
+CTS         .equ    2           ; P4.1
+HANDSHAKIN  .equ    P4IN
+HANDSHAKOUT .equ    P4OUT
 
             MOV #-1,&PBREN      ; REN1 all pullup resistors
             BIS #-1,&PBOUT
 
     .IFDEF TERMINAL4WIRES
+; RTS output is wired to the CTS input of UART2USB bridge 
+; configure RTS as output high to disable RX TERM during start FORTH
+            BIS.B #RTS,&P4DIR   ; RTS as output high
         .IFDEF TERMINAL5WIRES
 ; CTS input must be wired to the RTS output of UART2USB bridge 
 ; configure CTS as input low (true) to avoid lock when CTS is not wired
-CTS         .equ  2             ; P4.1
             BIC.B #CTS,&P4OUT   ; CTS input pulled down
         .ENDIF  ; TERMINAL5WIRES
-; RTS output is wired to the CTS input of UART2USB bridge 
-; configure RTS as output high to disable RX TERM during start FORTH
-HANDSHAKOUT .equ    P4OUT
-HANDSHAKIN  .equ    P4IN
-RTS         .equ    4           ; P4.2
-            BIS.B #RTS,&P4DIR   ; RTS as output high
     .ENDIF  ; TERMINAL4WIRES
 
 ; ----------------------------------------------------------------------
index bf75b39..0924aee 100644 (file)
@@ -296,7 +296,7 @@ I2CMM_IN=\$260!
 I2CMM_OUT=\$262!
 I2CMM_DIR=\$264!
 I2CMM_REN=\$266!
-I2CMM_SEL1=\$26C!
+I2CMM_SEL=\$26A!        SEL0
 I2CMM_Vec=\$FFBC!       UCB2_Vec
 MMSDA=1!                P7.0
 MMSCL=2!                P7.1
@@ -306,8 +306,8 @@ I2CM_IN=\$260!
 I2CM_OUT=\$262!
 I2CM_DIR=\$264!
 I2CM_REN=\$266!
-I2CM_SEL1=\$26C!
-I2CM_Vec=\$FFBC!
+I2CM_SEL=\$26A!        SEL0
+I2CM_Vec=\$FFBC!       UCB2_Vec
 MSDA=1!                 P7.0
 MSCL=2!                 P7.1
 M_BUS=3!
@@ -316,9 +316,44 @@ I2CS_IN=\$260!
 I2CS_OUT=\$262!
 I2CS_DIR=\$264!
 I2CS_REN=\$266!
-I2CS_SEL1=\$26C!
-I2CS_Vec=\$FFBC!
+I2CS_SEL=\$26A!        SEL0
+I2CS_Vec=\$FFBC!       UCB2_Vec
 SSDA=1!                 P7.0
 SSCL=2!                 P7.1
 S_BUS=3!
 
+UCSWRST=1!          eUSCI Software Reset
+UCTXIE=2!           eUSCI Transmit Interrupt Enable
+UCRXIE=1!           eUSCI Receive Interrupt Enable
+UCTXIFG=2!          eUSCI Transmit Interrupt Flag
+UCRXIFG=1!          eUSCI Receive Interrupt Flag
+UCTXIE0=2!          eUSCI_B Transmit Interrupt Enable
+UCRXIE0=1!          eUSCI_B Receive Interrupt Enable
+UCTXIFG0=2!         eUSCI_B Transmit Interrupt Flag
+UCRXIFG0=1!         eUSCI_B Receive Interrupt Flag
+
+I2CM_CTLW0=\$6C0!   USCI_B2 Control Word Register 0
+I2CM_CTLW1=\$6C2!   USCI_B2 Control Word Register 1
+I2CM_BRW=\$6C6!     USCI_B2 Baud Word Rate 0
+I2CM_STATW=\$6C8!   USCI_B2 status word 
+I2CM_TBCNT=\$6CA!   USCI_B2 byte counter threshold  
+I2CM_RXBUF=\$6CC!   USCI_B2 Receive Buffer 8
+I2CM_TXBUF=\$6CE!   USCI_B2 Transmit Buffer 8
+I2CM_I2COA0=\$6D4!  USCI_B2 I2C Own Address 0
+I2CM_ADDRX=\$6DC!   USCI_B2 Received Address Register 
+I2CM_I2CSA=\$6E0!   USCI_B2 I2C Slave Address
+I2CM_IE=\$6EA!      USCI_B2 Interrupt Enable
+I2CM_IFG=\$6EC!     USCI_B2 Interrupt Flags Register
+
+I2CS_CTLW0=\$6C0!   USCI_B2 Control Word Register 0
+I2CS_CTLW1=\$6C2!   USCI_B2 Control Word Register 1
+I2CS_BRW=\$6C6!     USCI_B2 Baud Word Rate 0
+I2CS_STATW=\$6C8!   USCI_B2 status word 
+I2CS_TBCNT=\$6CA!   USCI_B2 byte counter threshold  
+I2CS_RXBUF=\$6CC!   USCI_B2 Receive Buffer 8
+I2CS_TXBUF=\$6CE!   USCI_B2 Transmit Buffer 8
+I2CS_I2COA0=\$6D4!  USCI_B2 I2C Own Address 0
+I2CS_ADDRX=\$6DC!   USCI_B2 Received Address Register 
+I2CS_I2CSA=\$6E0!   USCI_B2 I2C Slave Address
+I2CS_IE=\$6EA!      USCI_B2 Interrupt Enable
+I2CS_IFG=\$6EC!     USCI_B2 Interrupt Flags Register
index 5ea8a41..3fd5da5 100644 (file)
@@ -285,38 +285,38 @@ SD_CSDIR    .equ P2DIR
 ; reset state : Px{DIR,REN,SEL0,SEL1,SELC,IE,IFG,IV} = 0 ; Px{IN,OUT,IES} = ?
 ; PORTx default wanted state : pins as input with pullup resistor
 
-            MOV #-1,&PBREN  ; all pins as input with resistor
-            MOV #-1,&PBOUT  ; all pins as input with resistor
-
 ; PORT3 usage
 ; P3.0 = RTS
 ; P3.1 = CTS
 ; P3.4 = TX1
 ; P3.5 = RX1
 
+RTS         .equ    1       ; P3.0
+CTS         .equ    2       ; P3.1
+HANDSHAKOUT .equ    P3OUT
+HANDSHAKIN  .equ    P3IN
+
     .IFDEF UCA1_TERM
-TXD         .equ 10h    ; P3.4 = TXD + FORTH Deep_RST pin
-RXD         .equ 20h    ; P3.4 = RXD
-TERM_BUS    .equ 30h    ; P3.5 = RX
-TERM_IN     .equ P3IN   ; TERMINAL TX  pin as FORTH Deep_RST 
-TERM_REN    .equ P3REN
-TERM_SEL    .equ P3SEL0
+TXD         .equ    10h    ; P3.4 = TXD + FORTH Deep_RST pin
+RXD         .equ    20h    ; P3.4 = RXD
+TERM_BUS    .equ    30h    ; P3.5 = RX
+TERM_IN     .equ    P3IN   ; TERMINAL TX  pin as FORTH Deep_RST 
+TERM_REN    .equ    P3REN
+TERM_SEL    .equ    P3SEL0
     .ENDIF ;UCA1_TERM
 
 ; PORT4 usage
 
+            MOV #-1,&PBREN  ; all pins as input with resistor
+            MOV #-1,&PBOUT  ; all pins as input with resistor
 
     .IFDEF TERMINAL4WIRES
 ; RTS output is wired to the CTS input of UART2USB bridge 
 ; configure RTS as output high to disable RX TERM during start FORTH
-HANDSHAKOUT .equ    P3OUT
-HANDSHAKIN  .equ    P3IN
-RTS         .equ    1           ; P3.0
             BIS.B #RTS,&P3DIR   ; RTS as output high
         .IFDEF TERMINAL5WIRES
 ; CTS input must be wired to the RTS output of UART2USB bridge 
 ; configure CTS as input low (true) to avoid lock when CTS is not wired
-CTS         .equ  2             ; P3.1
             BIC.B #CTS,&P3OUT   ; CTS input pulled down
         .ENDIF  ; TERMINAL5WIRES
     .ENDIF  ; TERMINAL4WIRES
index 20f4911..c6125e7 100644 (file)
@@ -131,8 +131,8 @@ TERM_IE=\$5FA!       \ eUSCI_A interrupt enable
 TERM_IFG=\$5FC!      \ eUSCI_A interrupt flags
 TERM_IV=\$5FE!       \ eUSCI_A interrupt vector word
 
-RTS=2!              ; P3.1
-CTS=1!              ; P3.0
+RTS=1!              ; P3.0
+CTS=2!              ; P3.1
 HANDSHAKIN=\$220!
 HANDSHAKOUT=\$222!
 
@@ -232,29 +232,64 @@ I2CMM_IN=\$200!
 I2CMM_OUT=\$202!
 I2CMM_DIR=\$204!
 I2CMM_REN=\$206!
-I2CMM_SEL=\$20C!  SEL1
-I2CMM_Vec=\$FFEC!
-MMSDA=\$40!     P1.6
-MMSCL=\$80!     P1.7
+I2CMM_SEL=\$20A!    SEL0
+I2CMM_Vec=\$FFEC!   UCBO_Vec
+MMSDA=\$40!         P1.6
+MMSCL=\$80!         P1.7
 MM_BUS=\$C0!    
 
 I2CM_IN=\$200!
 I2CM_OUT=\$202!
 I2CM_DIR=\$204!
 I2CM_REN=\$206!
-I2CM_SEL=\$20C!
-I2CM_Vec=\$FFEC!
-MSDA=\$40!      P1.6
-MSCL=\$80!      P1.7
+I2CM_SEL=\$20A!     SEL0
+I2CM_Vec=\$FFEC!    UCBO_Vec
+MSDA=\$40!          P1.6
+MSCL=\$80!          P1.7
 M_BUS=\$C0!    
 
 I2CS_IN=\$200!
 I2CS_OUT=\$202!
 I2CS_DIR=\$204!
 I2CS_REN=\$206!
-I2CS_SEL=\$20C!
-I2CS_Vec=\$FFEC!
-SSDA=\$40!      P1.6
-SSCL=\$80!      P1.7
+I2CS_SEL=\$20A!     SEL0
+I2CS_Vec=\$FFEC!    UCBO_Vec
+SSDA=\$40!          P1.6
+SSCL=\$80!          P1.7
 S_BUS=\$C0!
 
+UCSWRST=1!          eUSCI Software Reset
+UCTXIE=2!           eUSCI Transmit Interrupt Enable
+UCRXIE=1!           eUSCI Receive Interrupt Enable
+UCTXIFG=2!          eUSCI Transmit Interrupt Flag
+UCRXIFG=1!          eUSCI Receive Interrupt Flag
+UCTXIE0=2!          eUSCI_B Transmit Interrupt Enable
+UCRXIE0=1!          eUSCI_B Receive Interrupt Enable
+UCTXIFG0=2!         eUSCI_B Transmit Interrupt Flag
+UCRXIFG0=1!         eUSCI_B Receive Interrupt Flag
+
+I2CM_CTLW0=\$640!   USCI_B0 Control Word Register 0
+I2CM_CTLW1=\$642!   USCI_B0 Control Word Register 1
+I2CM_BRW=\$646!     USCI_B0 Baud Word Rate 0
+I2CM_STATW=\$648!   USCI_B0 status word 
+I2CM_TBCNT=\$64A!   USCI_B0 byte counter threshold  
+I2CM_RXBUF=\$64C!   USCI_B0 Receive Buffer 8
+I2CM_TXBUF=\$64E!   USCI_B0 Transmit Buffer 8
+I2CM_I2COA0=\$654!  USCI_B0 I2C Own Address 0
+I2CM_ADDRX=\$65C!   USCI_B0 Received Address Register 
+I2CM_I2CSA=\$660!   USCI_B0 I2C Slave Address
+I2CM_IE=\$66A!      USCI_B0 Interrupt Enable
+I2CM_IFG=\$66C!     USCI_B0 Interrupt Flags Register
+
+I2CS_CTLW0=\$640!   USCI_B0 Control Word Register 0
+I2CS_CTLW1=\$642!   USCI_B0 Control Word Register 1
+I2CS_BRW=\$646!     USCI_B0 Baud Word Rate 0
+I2CS_STATW=\$648!   USCI_B0 status word 
+I2CS_TBCNT=\$64A!   USCI_B0 byte counter threshold  
+I2CS_RXBUF=\$64C!   USCI_B0 Receive Buffer 8
+I2CS_TXBUF=\$64E!   USCI_B0 Transmit Buffer 8
+I2CS_I2COA0=\$654!  USCI_B0 I2C Own Address 0
+I2CS_ADDRX=\$65C!   USCI_B0 Received Address Register 
+I2CS_I2CSA=\$660!   USCI_B0 I2C Slave Address
+I2CS_IE=\$66A!      USCI_B0 Interrupt Enable
+I2CS_IFG=\$66C!     USCI_B0 Interrupt Flags Register
index d7f1253..cbe51d3 100644 (file)
@@ -150,6 +150,10 @@ TERMMCTLW_INI   .equ 00A1h
 TERMBRW_INI     .equ 17
 TERMMCTLW_INI   .equ 04A00h
 
+        .CASE 100000
+; Configure UCBx_TERM for I2C @ 100kHZ / 1MHz
+TERMBRW_INI     .equ 10
+
         .CASE 100800  ; PL2303TA baudrate
 ; Configure UART_TERM @ 100800 bauds / 1MHz
 ; N=1000000/100800=9,920634 ==> UCOS16=0, UCBR0=int(N)=9, UCBRF0=dont_care=0, UCBRS0= fn(frac(N))=fn(0.920634)=0xFD
@@ -255,6 +259,10 @@ TERMMCTLW_INI   .equ 0241h
 TERMBRW_INI     .equ 2
 TERMMCTLW_INI   .equ 0BB21h
 
+        .CASE 100000
+; Configure UCBx_TERM for I2C @ 100kHZ / 2MHz
+TERMBRW_INI     .equ 20
+
         .CASE 115200
 ; Configure UART_TERM @ 57600 bauds / 1MHz
 ; N=1000000/57600=17.301... ==> UCOS16=0, UCBR0=int(N)=17, UCBRF0=dont_care=0, UCBRS0= fn(frac(N))=fn(0.301)=0x4A
@@ -283,6 +291,10 @@ TERMMCTLW_INI   .equ 0000h
 TERMBRW_INI     .equ 7
 TERMMCTLW_INI   .equ 05500h
 
+        .CASE 400000
+; Configure UCBx_TERM for I2C @ 400kHZ / 2MHz
+TERMBRW_INI     .equ 5
+
         .CASE 403200  ; PL2303TA baudrate
 ; Configure UART_TERM @ 201600 bauds / 1MHz
 ; N=1000000/201600=4.955401 ==> UCOS16=0, UCBR0=int(N)=4, UCBRF0=dont_care=0, UCBRS0= fn(frac(N))=fn(0.200396)=0xFE
@@ -361,6 +373,10 @@ TERMMCTLW_INI   .equ 02081h
 TERMBRW_INI     .equ 4
 TERMMCTLW_INI   .equ 5551h
 
+        .CASE 100000
+; Configure UCBx_TERM for I2C @ 100kHZ / 4MHz
+TERMBRW_INI     .equ 40
+
         .CASE 115200
 ; Configure UART_TERM @ 115200 bauds / 4MHz
 ; N=8000000/230400=34.7222... ==> UCOS16=1, UCBR0=int(N/16)=2, UCBRF0=int(frac(N/16)*16)=2, UCBRS0= fn(frac(N))=fn(0.72222)=0xBB
@@ -381,6 +397,10 @@ TERMMCTLW_INI   .equ 04A00h
 TERMBRW_INI     .equ 1
 TERMMCTLW_INI   .equ 0001h
 
+        .CASE 400000
+; Configure UCBx_TERM for I2C @ 400kHZ / 4MHz
+TERMBRW_INI     .equ 10
+
         .CASE 460800
 ; Configure UART_TERM @ 460800 bauds / 4MHz
 ; N = 8000000/921600 = 8.680555... ==> {UCOS16=0, UCBR0=int(N)=8, UCBRF0=dont_care=0, UCBRS0=fn(frac(N))=fn(0.68055)=0xD6
@@ -452,6 +472,10 @@ TERMMCTLW_INI   .equ 4901h
 TERMBRW_INI     .equ 8
 TERMMCTLW_INI   .equ 0F7A1h
 
+        .CASE 100000
+; Configure UCBx_TERM for I2C @ 100kHZ / 8MHz
+TERMBRW_INI     .equ 80
+
         .CASE 115200
 ; Configure UART_TERM @ 115200 bauds / 8MHz
 ; N=8000000/115200=69.444... ==> UCOS16=1, UCBR0=int(N/16)=4, UCBRF0=int(frac(N/16)*16)=5, UCBRS0= fn(frac(N))=fn(0.44444)=0x55
@@ -473,6 +497,10 @@ TERMMCTLW_INI   .equ 0BB21h
 TERMBRW_INI     .equ 2
 TERMMCTLW_INI   .equ 0001h
 
+        .CASE 400000
+; Configure UCBx_TERM for I2C @ 400kHZ / 8MHz
+TERMBRW_INI     .equ 20
+
         .CASE 460800
 ; Configure UART_TERM @ 460800 bauds / 8MHz
 ; see table "Recommended Settings for Typical Crystals and Baudrates"
@@ -589,6 +617,10 @@ TERMMCTLW_INI   .equ 09241h
 TERMBRW_INI     .equ 10
 TERMMCTLW_INI   .equ 0AD01h
 
+        .CASE 100000
+; Configure UCBx_TERM for I2C @ 100kHZ / 10MHz
+TERMBRW_INI     .equ 100
+
         .CASE 115200
 ; Configure UART_TERM @ 115200 bauds / 10MHz
 ; Configure UART_TERM @ 230400 bauds / 20MHz
@@ -613,6 +645,10 @@ TERMMCTLW_INI   .equ 92B1h
 TERMBRW_INI     .equ 2
 TERMMCTLW_INI   .equ 0081h
 
+        .CASE 400000
+; Configure UCBx_TERM for I2C @ 400kHZ / 10MHz
+TERMBRW_INI     .equ 25
+
         .CASE 460800
 ; Configure UART_TERM @ 460800 bauds / 10MHz
 ; Configure UART_TERM @ 921600 bauds / 20MHz
@@ -728,6 +764,10 @@ TERMMCTLW_INI   .equ 05581h
 TERMBRW_INI     .equ 13
 TERMMCTLW_INI   .equ 04901h
 
+        .CASE 100000
+; Configure UCBx_TERM for I2C @ 100kHZ / 12MHz
+TERMBRW_INI     .equ 120
+
         .CASE 115200
 ; Configure UART_TERM @ 115200 bauds / 12MHz
 ; Configure UART_TERM @ 230400 bauds / 24MHz
@@ -752,6 +792,10 @@ TERMMCTLW_INI   .equ 0241h
 ;TERMBRW_INI     .equ 3
 ;TERMMCTLW_INI   .equ 0001h
 
+        .CASE 400000
+; Configure UCBx_TERM for I2C @ 400kHZ / 12MHz
+TERMBRW_INI     .equ 30
+
         .CASE 460800
 ; Configure UART_TERM @ 460800 bauds / 12MHz
 ; Configure UART_TERM @ 921600 bauds / 24MHz
@@ -877,6 +921,10 @@ TERMMCTLW_INI   .equ 0D601h
 TERMBRW_INI     .equ 17
 TERMMCTLW_INI   .equ 0DD51h
 
+        .CASE 100000
+; Configure UCBx_TERM for I2C @ 100kHZ / 16MHz
+TERMBRW_INI     .equ 160
+
         .CASE 115200
 ; Configure UART_TERM @ 115200 bauds / 16MHz
 ; N=16000000/115200=138.888... ==> UCOS16=1, UCBR0=int(N/16)=8, UCBRF0=int(frac(N/16)*16)=10, UCBRS0= fn(frac(N))=fn(0.88888)=0xF7
@@ -898,6 +946,10 @@ TERMMCTLW_INI   .equ 5551h
 TERMBRW_INI     .equ 4
 TERMMCTLW_INI   .equ 0001h
 
+        .CASE 400000
+; Configure UCBx_TERM for I2C @ 400kHZ / 16MHz
+TERMBRW_INI     .equ 40
+
         .CASE 460800
 ; Configure UART_TERM @ 460800 bauds / 16MHz
 ; N=16000000/460800=34.7222... ==> UCOS16=1, UCBR0=int(N/16)=2, UCBRF0=int(frac(N/16)*16)=2, UCBRS0= fn(frac(N))=fn(0.72222)=0xBB
@@ -1039,6 +1091,10 @@ TERMMCTLW_INI   .equ 0BF01h
 TERMBRW_INI     .equ 21
 TERMMCTLW_INI   .equ 000A1h
 
+        .CASE 100000
+; Configure UCBx_TERM for I2C @ 100kHZ / 20MHz
+TERMBRW_INI     .equ 200
+
         .CASE 115200
 ; Configure UART_TERM @ 115200 bauds / 20MHz
 ; N=20000000/115200=173.61111... ==> UCOS16=1, UCBR0=int(N/16)=10, UCBRF0=int(frac(N/16)*16)=0, UCBRS0= fn(frac(N))=fn(0.6111)=0xAD
@@ -1060,6 +1116,10 @@ TERMMCTLW_INI   .equ 0EE61h
 TERMBRW_INI     .equ 5
 TERMMCTLW_INI   .equ 0001h
 
+        .CASE 400000
+; Configure UCBx_TERM for I2C @ 400kHZ / 20MHz
+TERMBRW_INI     .equ 50
+
         .CASE 460800
 ; Configure UART_TERM @ 460800 bauds / 20MHz
 ; N=20000000/460800=43.402777... ==> UCOS16=1, UCBR0=int(N/16)=2, UCBRF0=int(frac(N/16)*16)=0Bh, UCBRS0= fn(frac(N))=fn(0.4027)=0x92
@@ -1150,14 +1210,14 @@ TERMMCTLW_INI   .equ 04900h
 ; Configure UART_TERM @ 9600 bauds / 24MHz
 ; N=24000000/9600=2500 ==> UCOS16=1, UCBR0=int(N/16)=156, UCBRF0=int(frac(N/16)*16)=4, UCBRS0= fn(frac(N))=(fn(0))=0x00
 ; TERMBRW=UCBR1, TERMMCTLW= (UCBRS0<<8)|(UCBRF0<<4)|UCOS16
-TERMBRW_INI     .equ 156
+TERMBRW_INI     .equ 9Ch
 TERMMCTLW_INI   .equ 0041h
 
         .CASE 19200
 ; Configure UART_TERM @ 19200 bauds / 24MHz
 ; N=24000000/19200=1250 ==> UCOS16=1, UCBR0=int(N/16)=78, UCBRF0=int(frac(N/16)*16)=2, UCBRS0= fn(frac(N))=fn(0)=0x00
 ; TERMBRW=UCBR0, TERMMCTLW= (UCBRS0<<8)|(UCBRF0<<4)|UCOS16
-TERMBRW_INI     .equ 78
+TERMBRW_INI     .equ 4Eh
 TERMMCTLW_INI   .equ 0021h
 
         .CASE 31250  ; MIDI interface
@@ -1181,6 +1241,10 @@ TERMMCTLW_INI   .equ 0011h
 TERMBRW_INI     .equ 26
 TERMMCTLW_INI   .equ 0D601h
 
+        .CASE 100000
+; Configure UCBx_TERM for I2C @ 100kHZ / 24MHz
+TERMBRW_INI     .equ 240
+
         .CASE 115200
 ; Configure UART_TERM @ 115200 bauds / 24MHz
 ; N=24000000/115200=208.333... ==> UCOS16=1, UCBR0=int(N/16)=13, UCBRF0=int(frac(N/16)*16)=0, UCBRS0= fn(frac(N))=fn(0.333)=0x49
@@ -1202,6 +1266,10 @@ TERMMCTLW_INI   .equ 2081h
 TERMBRW_INI     .equ 6
 TERMMCTLW_INI   .equ 0001h
 
+        .CASE 400000
+; Configure UCBx_TERM for I2C @ 400kHZ / 24MHz
+TERMBRW_INI     .equ 60
+
         .CASE 460800
 ; Configure UART_TERM @ 460800 bauds / 24MHz
 ; N=24000000/460800=52.08333... ==> UCOS16=1, UCBR0=int(N/16)=3, UCBRF0=int(frac(N/16)*16)=4, UCBRS0= fn(frac(N))=fn(0.0833)=0x02
index cea70fe..4688d07 100644 (file)
 ; ThingsInFirst.inc
 
-;    .listing OFF
     .cpu MSP430X
 
+;    macexp off      ; uncomment to hide macros development in forthMSP430FR.lst
+
+;    .listing OFF
+
 ; ----------------------------------------------
 ; MACROS FOR assembly instructions
 ; ----------------------------------------------
 
-;****************************************************************************
-;*                                                                          *
-;*   AS 1.41 - Datei REGMSP.INC von Alfred Arnold                           *
-;*                                                                         *
-;*   Sinn : enthält Makro- und Registerdefinitionen fu den MSP430          *
-;*                                                                         *
-;*   letzte underungen : 2002-01-11                                         *
-;*                       2010/2011/2012 erweitert von Matthias Koch         *
-;*                                                                          *
-;****************************************************************************
-
-                ifndef  regmspinc      ; verhindert Mehrfacheinbindung
-
-regmspinc       equ     1
-
-                if      (MOMCPUNAME<>"MSP430")&&(MOMCPUNAME<>"MSP430X")
-                 fatal  "Falscher Prozessortyp eingestellt: nur MSP430 erlaubt!"
-               endif
-
-                if      MOMPASS=1
-                 message "MSP430-Register+Befehlsdefinitionen (C) 1996 Alfred Arnold"
-               endif
-
-; Definitions for Instructions, Macros and Ports.
-
-;----------------------------------------------------------------------------
-; Arithmetik
-
-adc             macro   op
-                addc.attribute #0,op
-                endm
-
-dadc            macro   op
-                dadd.attribute #0,op
-                endm
-
-dec             macro   op
-                sub.attribute #1,op
-                endm
-
-decd            macro   op
-                sub.attribute #2,op
-                endm
-
-inc             macro   op
-                add.attribute #1,op
-                endm
-
-incd            macro   op
-                add.attribute #2,op
-                endm
-
-sbc             macro   op
-                subc.attribute #0,op
-                endm
-
-;----------------------------------------------------------------------------
-; Logik
-
-inv             macro   op
-                xor.attribute #-1,op
-                endm
-
-rla             macro   op
-                add.attribute op,op
-                endm
-
-rlc             macro   op
-                addc.attribute op,op
-                endm
+NOP         .macro      ; 1 word, 1 cycle    
+            .word 4303h ; mov #0, r3         
+            .endm
+
+NOP2        .macro      ; 1 Word, 2 cycles
+            .word 3C00h ; jmp $+2
+            .endm
+
+NOP3        .macro      ; 1 Word, 3 cycles
+            .word 4000h ; MOV PC,PC
+            .endm
+
+; SR bits : only SR(11:0) are PUSHed by calls and interrupts
+C           .equ 0001h
+Z           .equ 0002h
+N           .equ 0004h
+V           .equ 0100h
+GIE         .equ 0008h
+CPUOFF      .equ 0010h ; CPU Off.                  1=turn_off_CPU
+OSCOFF      .equ 0020h ; Oscillator Off.           1=turn_off_LFXT1CLK
+SCG0        .equ 0040h ; System Clock Generator 0. 1=turn_off_DCO
+SCG1        .equ 0080h ; System Clock Generator 1. 1=turn_off_SMCLK
+UF9         .equ 0200h ; = SR(9) User Flag 1
+UF10        .equ 0400h ; = SR(10) User Flag 2  
+UF11        .equ 0800h ; = SR(11) User Flag 3  
 
 ;----------------------------------------------------------------------------
-; Daten bewegen ;-)
-
-clr             macro   op
-                mov.attribute #0,op
-                endm
-
-clrc            macro
-                bic     #1,sr
-                endm
-
-clrn            macro
-                bic     #4,sr
-                endm
-
-clrz            macro
-                bic     #2,sr
-                endm
-
-pop             macro   op         ; Muss hier noch ein Atribut anbringen ! Kann auch Bytes zurückladen...
-                mov.attribute     @sp+,op
-                endm
-
-setc            macro
-                bis     #1,sr
-                endm
-
-setn            macro
-                bis     #4,sr
-                endm
-
-setz            macro
-                bis     #2,sr
-                endm
-
-tst             macro   op
-                cmp.attribute #0,op
-                endm
-
-;----------------------------------------------------------------------------
-; Sprungbefehle
-
-br              macro   op
-            mov     op,pc
-                endm
-
-dint            macro
-            bic     #8,sr
-                endm
-
-eint            macro
-            bis     #8,sr
-                endm
-
-nop             macro         
-            .word   04303h         ; mov #0, r3         
-                endm
-
-nop2            macro                  ; 1 Word, 2 Takte
-            jmp $+2
-                endm
-
-nop3            macro                  ; 1 Word, 3 Takte
-            MOV PC,PC
-                endm
-
-ret             macro
-            mov     @sp+,pc
-                endm
-
-jlo            macro   label   ; unsigned
-               jnc     label
-               endm
-
-jhs            macro   label   ; unsigned
-               jc      label
-               endm
-
-jeq            macro   label
-               jz      label
-               endm
-
-; Flags im Statusregister
-; SR bits : only SR(11:0) are PUSHed by interrupts
-C             equ 0001h
-Z             equ 0002h
-N             equ 0004h
-V             equ 0100h
-GIE           equ 0008h
-CPUOFF        equ 0010h ; CPU Off.                  1=turn_off_CPU
-OSCOFF        equ 0020h ; Oscillator Off.           1=turn_off_LFXT1CLK
-SCG0          equ 0040h ; System Clock Generator 0. 1=turn_off_DCO
-SCG1          equ 0080h ; System Clock Generator 1. 1=turn_off_SMCLK
-UF9           equ 0200h ; = SR(9) User Flag 1 used by ?NUMBER --> INTERPRET --> LITERAL to process double numbers, else free for use.  
-UF10          equ 0400h ; = SR(10) User Flag 2  
-UF11          equ 0800h ; = SR(11) User Flag 3  
-
-;----------------------------------------------------------------------------
-; Low-Power-Mode Bitmuster
-
-LPM0          equ CPUOFF
-LPM1          equ SCG0 + CPUOFF
-LPM2          equ SCG1 + CPUOFF
-LPM3          equ SCG1 + SCG0 + CPUOFF
-LPM4          equ SCG1 + SCG0 + OSCOFF + CPUOFF
-
-;----------------------------------------------------------------------------
-
-                endif                   ; von IFDEF...
+LPM0        .equ CPUOFF
+; LPM0        .equ SCG0 + CPUOFF  ; for devices with FLL, to disable FLL
+LPM1        .equ SCG0 + CPUOFF
+LPM2        .equ SCG1 + CPUOFF
+LPM3        .equ SCG1 + SCG0 + CPUOFF
+LPM4        .equ SCG1 + SCG0 + OSCOFF + CPUOFF
 
 ; ----------------------------------------------
 ; INIT VOCABULARY POINTERS and MACROS FOR HEADER
 ; ----------------------------------------------
 
-voclink     .set 0                      ; init vocabulary links
+voclink     .set 0  ; init vocabulary links
 forthlink   .set 0
 asmlink     .set 0
 
@@ -625,40 +481,10 @@ asmlink31 .set    $
 ; --------------------------
     .include "TERMINALBAUDRATE.inc"
 
-; -----------------------------
-; compute value of FORTHVERSION
-; -----------------------------
-VERSIO .equ VAL(SUBSTR(VER,1,0))
-
-; -------------------------------------
-; define FREQ  used in WARM message (6)
-; -------------------------------------
-    .IF     FREQUENCY = 0.25
-FREQ    .set " .2MHz"
-    .ELSEIF FREQUENCY = 0.5
-FREQ    .set " .5MHz"
-    .ELSEIF FREQUENCY = 1
-FREQ    .set "  1MHz"
-    .ELSEIF FREQUENCY = 2
-FREQ    .set "  2MHz"
-    .ELSEIF FREQUENCY = 4
-FREQ    .set "  4MHz"
-    .ELSEIF FREQUENCY = 8
-FREQ    .set "  8MHz"
-    .ELSEIF FREQUENCY = 12
-FREQ    .set " 12MHz"
-    .ELSEIF FREQUENCY = 16
-FREQ    .set " 16MHz"
-    .ELSEIF FREQUENCY = 20
-FREQ    .set " 20MHz"
-    .ELSEIF FREQUENCY = 24
-FREQ    .set " 24MHz"
-    .ENDIF
-
 ; -------------------------------------
 ; define MAIN max bound
 ; -------------------------------------
-FRAM_FULL   .equ SIGNATURES-50h ; set to protect JTAG and BSL signatures against overwrite.
+FRAM_FULL   .equ SIGNATURES-40h ; set to protect JTAG and BSL signatures against overwrite.
                                 ; 80 bytes are sufficient considering what can be compiled in one line + WORD use.
                                 ; take care with ALLOT : don't ALLOT more than 32 words by line!
 
@@ -788,7 +614,19 @@ UCA0_TERM
 ; COMPUTE SWITCHES
 ; --------------------------
 
-    .IFDEF EXTENDED_MEM
+    .IFDEF CORE_COMPLEMENT
+        .IFNDEF USE_MOVE
+USE_MOVE
+        .ENDIF
+    .ENDIF
+
+    .IFDEF UTILITY
+        .IFNDEF USE_MOVE
+USE_MOVE
+        .ENDIF
+    .ENDIF
+
+    .IFDEF FIXPOINT_INPUT
         .IFNDEF DOUBLE_INPUT
 DOUBLE_INPUT
         .ENDIF
@@ -802,6 +640,7 @@ DOUBLE_INPUT
         .IFNDEF DEFER_ACCEPT
 DEFER_ACCEPT
         .ENDIF
+
         .IFDEF BOOTLOADER
             .IFNDEF CONDCOMP
 CONDCOMP                    ; mandatory for Bootstrap
@@ -813,9 +652,6 @@ DEFER_QUIT
     .ENDIF
 
     .IFDEF EXTENDED_ASM
-;        .IFNDEF MSP430ASSEMBLER
-;MSP430ASSEMBLER
-;        .ENDIF
         .IFNDEF DOUBLE_INPUT
 DOUBLE_INPUT
         .ENDIF
@@ -825,7 +661,7 @@ DOUBLE_INPUT
 MSP430ASSEMBLER
             .ENDIF
             .IFNDEF DOUBLE_INPUT
-DOUBLE_INPUT ; for indirect extended indexed modes of MOVA ADDA CMPA SUBA instructions
+DOUBLE_INPUT
             .ENDIF
         .ENDIF
     .ENDIF