From 528f2430ca47c496a6161dae38af6f58c0c6f8f4 Mon Sep 17 00:00:00 2001 From: kenr Date: Mon, 15 Feb 2021 21:10:40 -0800 Subject: [PATCH] Initial commit --- .DS_Store | Bin 0 -> 10244 bytes 850640/.DS_Store | Bin 0 -> 6148 bytes 850640/850640-44 | 1 + 850640/850640-44.si | 225 + 850640/850640-84 | 1 + 850640/READ.ME | 6 + 850640/test/.DS_Store | Bin 0 -> 6148 bytes 850640/test/850640-44 | 1 + 850640/ttytst | 17 + 850644/850644-44 | 1 + 850644/READ.ME | 15 + 850645/850645-44 | 1 + 850645/850645-84 | 1 + 850645/READ.ME | 6 + 850647/850647-84 | 1 + 850647/READ.ME | 29 + 850647/recon | 36 + 850648/.DS_Store | Bin 0 -> 6148 bytes 850648/850648-34.lo | 86 + 850648/850648-34.si | 84 + 850648/850648-44 | 1 + 850648/850648-84 | 1 + 850648/READ.ME | 11 + 850649/.DS_Store | Bin 0 -> 6148 bytes 850649/850649-34 | 1 + 850649/850649-84 | 1 + 850649/850649.si | Bin 0 -> 1782 bytes 850649/READ.ME | 1 + 850657/850657-34 | 1 + 850657/850657.bo | 1 + 850657/850657.lo | 172 + 850657/READ.ME | 13 + 850657/cptst | 27 + 850816/.DS_Store | Bin 0 -> 6148 bytes 850816/850816-44 | 1 + 850816/READ.ME | 10 + 850816/alg | 1 + 850816/algol.si | 3887 +++++++++++++++++ 890548/890548-24 | 1 + 890548/890548-44 | 1 + 890548/READ.ME | 17 + 890548/regen.bo | 1 + 890548/regen.lo | 2411 ++++++++++ 890548/regen.si | 2242 ++++++++++ READ.ME | 61 + cross_assembler/.DS_Store | Bin 0 -> 6148 bytes cross_assembler/READ.ME | 9 + cross_assembler/bld_xsym.sh | 2 + cross_assembler/sym | Bin 0 -> 54820 bytes cross_assembler/sym.c | 1148 +++++ cross_assembler/sym.dSYM/Contents/Info.plist | 20 + .../sym.dSYM/Contents/Resources/DWARF/sym | Bin 0 -> 30991 bytes cross_assembler/sym.h | 112 + cross_assembler/sym2.c | 736 ++++ fortransa/.DS_Store | Bin 0 -> 8196 bytes fortransa/850957-84 | 1 + fortransa/READ.ME | 43 + fortransa/fiiexample.f | 22 + fortransa/fldr | 1 + fortransa/flib_corrected | 1 + fortransa/flib_original | 1 + fortransa/fort | 1 + fortransa/fortran | 18 + fortransa/fortran_ascii | 30 + fortransa/fortran_run | 16 + fortransa/frun.bo | 1 + fortransa/frun.lo | 1741 ++++++++ fortransa/frun.si | 1739 ++++++++ fortransa/frun_original | 1 + fortransa/hello.bo | 1 + fortransa/hello.f | 3 + fortransa/hello_sample | 39 + fortransa/ldr_2crd | 1 + fortransa/lib/.DS_Store | Bin 0 -> 6148 bytes fortransa/lib/ABS | 1 + fortransa/lib/ALOG | 1 + fortransa/lib/AMIN | 1 + fortransa/lib/AMOD | 1 + fortransa/lib/ATAN | 1 + fortransa/lib/COS | 1 + fortransa/lib/DIM | 1 + fortransa/lib/EXIT | 1 + fortransa/lib/EXP | 1 + fortransa/lib/FLOAT | 1 + fortransa/lib/IABS | 1 + fortransa/lib/IDIM | 1 + fortransa/lib/IF | 1 + fortransa/lib/IFIX | 1 + fortransa/lib/ISIGN | 1 + fortransa/lib/LOCF | 1 + fortransa/lib/MOD | 1 + fortransa/lib/SIGN | 1 + fortransa/lib/SQRT | 1 + fortransa/lib/SYS160 | 1 + fortransa/lib/SYS201 | 1 + fortransa/lib/SYS202 | 1 + fortransa/lib/SYS203 | 1 + fortransa/lib/SYS204 | 1 + fortransa/lib/SYS205 | 1 + fortransa/lib/SYS205- | 1 + fortransa/lib/SYS205_ | 30 + fortransa/lib/SYS206 | 1 + fortransa/lib/SYS206- | 1 + fortransa/lib/SYS206_ | 30 + fortransa/lib/SYS207 | 1 + fortransa/lib/SYS210 | 1 + fortransa/lib/SYS211 | 1 + fortransa/lib/SYS212 | 1 + fortransa/lib/SYS213 | 1 + fortransa/lib/SYS214 | 1 + fortransa/lib/SYS215 | 1 + fortransa/lib/SYS216 | 1 + fortransa/lib/SYS217 | 1 + fortransa/lib/SYS220 | 1 + fortransa/lib/SYS221 | 1 + fortransa/lib/SYS222 | 1 + fortransa/lib/SYS223 | 1 + fortransa/lib/SYS224 | 1 + fortransa/lib/SYS225 | 1 + fortransa/lib/SYS226 | 1 + fortransa/lib/SYS227 | 1 + fortransa/lib/SYS230 | 1 + fortransa/lib/SYS231 | 1 + fortransa/lib/SYS232 | 1 + fortransa/lib/SYS233 | 1 + fortransa/lib/SYS234 | 1 + fortransa/lib/SYS235 | 1 + fortransa/lib/SYS236 | 1 + fortransa/lib/SYS240 | 1 + fortransa/lib/SYS241 | 1 + fortransa/lib/SYS242 | 1 + fortransa/lib/SYS243 | 1 + fortransa/lib/SYS244 | 1 + fortransa/lib/SYS777_noend | 1 + fortransa/lib/SYS777_wend | 1 + fortransa/lib/SYS777_wend copy | 1 + fortransa/lib/ctl | 1 + fortransa/lib/sys203_ | 40 + fortransa/lib/sys204_ | 70 + fortransa/lib/sys233- | 1 + fortransa/lib/sys234- | 1 + symbol/.DS_Store | Bin 0 -> 6148 bytes symbol/READ.ME | 22 + symbol/cat_sym.sh | 13 + symbol/cbo.bo | 1 + symbol/cbo.lo | 61 + symbol/cbo.si | 51 + symbol/csi.bo | 1 + symbol/csi.lo | 30 + symbol/csi.si | 26 + symbol/llo.bo | 1 + symbol/llo.lo | 69 + symbol/llo.si | 59 + symbol/section-2a.bo | 1 + symbol/section-2a.lo | 98 + symbol/section-2a.si | 90 + symbol/section-2b.bo | 1 + symbol/section-2b.lo | 638 +++ symbol/section-2b.si | 629 +++ symbol/section-4.bo | 1 + symbol/section-4.lo | 951 ++++ symbol/section-4.si | 880 ++++ symbol/section-5.bo | 1 + symbol/section-5.lo | 1180 +++++ symbol/section-5.si | 1115 +++++ symbol/section-6.bo | 1 + symbol/section-6.lo | 515 +++ symbol/section-6.si | 470 ++ symbol/section-7.bo | 1 + symbol/section-7.lo | 724 +++ symbol/section-7.si | 672 +++ symbol/sym | 26 + symbol/sym_ascii | 25 + symbol/symbol | 1 + symbol/symbol.nm | 384 ++ symbol/tlo.bo | 1 + symbol/tlo.lo | 131 + symbol/tlo.si | 110 + tests/.DS_Store | Bin 0 -> 6148 bytes tests/940-mt.si | 54 + tests/READ.ME | 4 + tests/bo | 1 + tests/lo | 56 + tools/.DS_Store | Bin 0 -> 6148 bytes tools/READ.ME | 125 + tools/mkdeck | Bin 0 -> 19272 bytes tools/mkdeck.c | 494 +++ tools/mkdeck.dSYM/Contents/Info.plist | 20 + .../Contents/Resources/DWARF/mkdeck | Bin 0 -> 16176 bytes tools/sds_9pal | Bin 0 -> 23232 bytes tools/sds_9pal.c | 651 +++ tools/sds_bindmp | Bin 0 -> 13520 bytes tools/sds_bindmp.c | 244 ++ tools/sds_bindmp.dSYM/Contents/Info.plist | 20 + .../Contents/Resources/DWARF/sds_bindmp | Bin 0 -> 12316 bytes tools/sds_libmk | Bin 0 -> 13672 bytes tools/sds_libmk.c | 130 + tools/sds_libmk.dSYM/Contents/Info.plist | 20 + .../Contents/Resources/DWARF/sds_libmk | Bin 0 -> 11937 bytes tools/sds_libsplt | Bin 0 -> 13920 bytes tools/sds_libsplt.c | 217 + tools/sds_libsplt.dSYM/Contents/Info.plist | 20 + .../Contents/Resources/DWARF/sds_libsplt | Bin 0 -> 12459 bytes tools/sds_listtape | Bin 0 -> 19056 bytes tools/sds_listtape.c | 649 +++ tools/sds_listtape.dSYM/Contents/Info.plist | 20 + .../Contents/Resources/DWARF/sds_listtape | Bin 0 -> 14463 bytes tools/sds_nm | Bin 0 -> 18388 bytes tools/sds_nm.c | 258 ++ tools/sds_nm.dSYM/Contents/Info.plist | 20 + .../Contents/Resources/DWARF/sds_nm | Bin 0 -> 14022 bytes tools/sds_pal.dSYM/Contents/Info.plist | 20 + .../Contents/Resources/DWARF/sds_pal | Bin 0 -> 17002 bytes tools/sds_splitf.c | 111 + tools/sds_trmeof.c | 50 + 215 files changed, 27458 insertions(+) create mode 100644 .DS_Store create mode 100644 850640/.DS_Store create mode 100644 850640/850640-44 create mode 100644 850640/850640-44.si create mode 100644 850640/850640-84 create mode 100644 850640/READ.ME create mode 100644 850640/test/.DS_Store create mode 100644 850640/test/850640-44 create mode 100644 850640/ttytst create mode 100644 850644/850644-44 create mode 100644 850644/READ.ME create mode 100644 850645/850645-44 create mode 100644 850645/850645-84 create mode 100644 850645/READ.ME create mode 100644 850647/850647-84 create mode 100644 850647/READ.ME create mode 100644 850647/recon create mode 100644 850648/.DS_Store create mode 100644 850648/850648-34.lo create mode 100644 850648/850648-34.si create mode 100644 850648/850648-44 create mode 100644 850648/850648-84 create mode 100644 850648/READ.ME create mode 100644 850649/.DS_Store create mode 100644 850649/850649-34 create mode 100644 850649/850649-84 create mode 100644 850649/850649.si create mode 100644 850649/READ.ME create mode 100644 850657/850657-34 create mode 100644 850657/850657.bo create mode 100644 850657/850657.lo create mode 100644 850657/READ.ME create mode 100644 850657/cptst create mode 100644 850816/.DS_Store create mode 100644 850816/850816-44 create mode 100644 850816/READ.ME create mode 100644 850816/alg create mode 100644 850816/algol.si create mode 100644 890548/890548-24 create mode 100644 890548/890548-44 create mode 100644 890548/READ.ME create mode 100644 890548/regen.bo create mode 100644 890548/regen.lo create mode 100644 890548/regen.si create mode 100644 READ.ME create mode 100644 cross_assembler/.DS_Store create mode 100644 cross_assembler/READ.ME create mode 100755 cross_assembler/bld_xsym.sh create mode 100755 cross_assembler/sym create mode 100644 cross_assembler/sym.c create mode 100644 cross_assembler/sym.dSYM/Contents/Info.plist create mode 100644 cross_assembler/sym.dSYM/Contents/Resources/DWARF/sym create mode 100644 cross_assembler/sym.h create mode 100644 cross_assembler/sym2.c create mode 100644 fortransa/.DS_Store create mode 100644 fortransa/850957-84 create mode 100644 fortransa/READ.ME create mode 100644 fortransa/fiiexample.f create mode 100644 fortransa/fldr create mode 100644 fortransa/flib_corrected create mode 100644 fortransa/flib_original create mode 100644 fortransa/fort create mode 100644 fortransa/fortran create mode 100644 fortransa/fortran_ascii create mode 100644 fortransa/fortran_run create mode 100644 fortransa/frun.bo create mode 100644 fortransa/frun.lo create mode 100644 fortransa/frun.si create mode 100644 fortransa/frun_original create mode 100644 fortransa/hello.bo create mode 100644 fortransa/hello.f create mode 100644 fortransa/hello_sample create mode 100644 fortransa/ldr_2crd create mode 100644 fortransa/lib/.DS_Store create mode 100644 fortransa/lib/ABS create mode 100644 fortransa/lib/ALOG create mode 100644 fortransa/lib/AMIN create mode 100644 fortransa/lib/AMOD create mode 100644 fortransa/lib/ATAN create mode 100644 fortransa/lib/COS create mode 100644 fortransa/lib/DIM create mode 100644 fortransa/lib/EXIT create mode 100644 fortransa/lib/EXP create mode 100644 fortransa/lib/FLOAT create mode 100644 fortransa/lib/IABS create mode 100644 fortransa/lib/IDIM create mode 100644 fortransa/lib/IF create mode 100644 fortransa/lib/IFIX create mode 100644 fortransa/lib/ISIGN create mode 100644 fortransa/lib/LOCF create mode 100644 fortransa/lib/MOD create mode 100644 fortransa/lib/SIGN create mode 100644 fortransa/lib/SQRT create mode 100644 fortransa/lib/SYS160 create mode 100644 fortransa/lib/SYS201 create mode 100644 fortransa/lib/SYS202 create mode 100644 fortransa/lib/SYS203 create mode 100644 fortransa/lib/SYS204 create mode 100644 fortransa/lib/SYS205 create mode 100644 fortransa/lib/SYS205- create mode 100644 fortransa/lib/SYS205_ create mode 100644 fortransa/lib/SYS206 create mode 100644 fortransa/lib/SYS206- create mode 100644 fortransa/lib/SYS206_ create mode 100644 fortransa/lib/SYS207 create mode 100644 fortransa/lib/SYS210 create mode 100644 fortransa/lib/SYS211 create mode 100644 fortransa/lib/SYS212 create mode 100644 fortransa/lib/SYS213 create mode 100644 fortransa/lib/SYS214 create mode 100644 fortransa/lib/SYS215 create mode 100644 fortransa/lib/SYS216 create mode 100644 fortransa/lib/SYS217 create mode 100644 fortransa/lib/SYS220 create mode 100644 fortransa/lib/SYS221 create mode 100644 fortransa/lib/SYS222 create mode 100644 fortransa/lib/SYS223 create mode 100644 fortransa/lib/SYS224 create mode 100644 fortransa/lib/SYS225 create mode 100644 fortransa/lib/SYS226 create mode 100644 fortransa/lib/SYS227 create mode 100644 fortransa/lib/SYS230 create mode 100644 fortransa/lib/SYS231 create mode 100644 fortransa/lib/SYS232 create mode 100644 fortransa/lib/SYS233 create mode 100644 fortransa/lib/SYS234 create mode 100644 fortransa/lib/SYS235 create mode 100644 fortransa/lib/SYS236 create mode 100644 fortransa/lib/SYS240 create mode 100644 fortransa/lib/SYS241 create mode 100644 fortransa/lib/SYS242 create mode 100644 fortransa/lib/SYS243 create mode 100644 fortransa/lib/SYS244 create mode 100644 fortransa/lib/SYS777_noend create mode 100644 fortransa/lib/SYS777_wend create mode 100644 fortransa/lib/SYS777_wend copy create mode 100644 fortransa/lib/ctl create mode 100644 fortransa/lib/sys203_ create mode 100644 fortransa/lib/sys204_ create mode 100644 fortransa/lib/sys233- create mode 100644 fortransa/lib/sys234- create mode 100644 symbol/.DS_Store create mode 100644 symbol/READ.ME create mode 100755 symbol/cat_sym.sh create mode 100644 symbol/cbo.bo create mode 100644 symbol/cbo.lo create mode 100644 symbol/cbo.si create mode 100644 symbol/csi.bo create mode 100644 symbol/csi.lo create mode 100644 symbol/csi.si create mode 100644 symbol/llo.bo create mode 100644 symbol/llo.lo create mode 100644 symbol/llo.si create mode 100644 symbol/section-2a.bo create mode 100644 symbol/section-2a.lo create mode 100644 symbol/section-2a.si create mode 100644 symbol/section-2b.bo create mode 100644 symbol/section-2b.lo create mode 100644 symbol/section-2b.si create mode 100644 symbol/section-4.bo create mode 100644 symbol/section-4.lo create mode 100644 symbol/section-4.si create mode 100644 symbol/section-5.bo create mode 100644 symbol/section-5.lo create mode 100644 symbol/section-5.si create mode 100644 symbol/section-6.bo create mode 100644 symbol/section-6.lo create mode 100644 symbol/section-6.si create mode 100644 symbol/section-7.bo create mode 100644 symbol/section-7.lo create mode 100644 symbol/section-7.si create mode 100644 symbol/sym create mode 100644 symbol/sym_ascii create mode 100644 symbol/symbol create mode 100644 symbol/symbol.nm create mode 100644 symbol/tlo.bo create mode 100644 symbol/tlo.lo create mode 100644 symbol/tlo.si create mode 100644 tests/.DS_Store create mode 100644 tests/940-mt.si create mode 100644 tests/READ.ME create mode 100644 tests/bo create mode 100644 tests/lo create mode 100644 tools/.DS_Store create mode 100644 tools/READ.ME create mode 100755 tools/mkdeck create mode 100755 tools/mkdeck.c create mode 100644 tools/mkdeck.dSYM/Contents/Info.plist create mode 100644 tools/mkdeck.dSYM/Contents/Resources/DWARF/mkdeck create mode 100755 tools/sds_9pal create mode 100644 tools/sds_9pal.c create mode 100755 tools/sds_bindmp create mode 100644 tools/sds_bindmp.c create mode 100644 tools/sds_bindmp.dSYM/Contents/Info.plist create mode 100644 tools/sds_bindmp.dSYM/Contents/Resources/DWARF/sds_bindmp create mode 100755 tools/sds_libmk create mode 100644 tools/sds_libmk.c create mode 100644 tools/sds_libmk.dSYM/Contents/Info.plist create mode 100644 tools/sds_libmk.dSYM/Contents/Resources/DWARF/sds_libmk create mode 100755 tools/sds_libsplt create mode 100644 tools/sds_libsplt.c create mode 100644 tools/sds_libsplt.dSYM/Contents/Info.plist create mode 100644 tools/sds_libsplt.dSYM/Contents/Resources/DWARF/sds_libsplt create mode 100755 tools/sds_listtape create mode 100755 tools/sds_listtape.c create mode 100644 tools/sds_listtape.dSYM/Contents/Info.plist create mode 100644 tools/sds_listtape.dSYM/Contents/Resources/DWARF/sds_listtape create mode 100755 tools/sds_nm create mode 100644 tools/sds_nm.c create mode 100644 tools/sds_nm.dSYM/Contents/Info.plist create mode 100644 tools/sds_nm.dSYM/Contents/Resources/DWARF/sds_nm create mode 100644 tools/sds_pal.dSYM/Contents/Info.plist create mode 100644 tools/sds_pal.dSYM/Contents/Resources/DWARF/sds_pal create mode 100644 tools/sds_splitf.c create mode 100644 tools/sds_trmeof.c diff --git a/.DS_Store b/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..bbc5efca7ff67d152032d75c3d62bb892c809d56 GIT binary patch literal 10244 zcmeHMPl(i382_^WOzgHhf+!0f0#Yh;4>Rk`&dgz#aU2VkLQBUg#p-UxiS9@ySu)vO zbX^@(=&398sD&Q-4@&8ww9v~^w1+}3db5|}Md+!QQU&qi_uh-iOY$<=vQYN$G9=$j z-tT+wm)|dWo9`_EDD~xb0YC=;6?YPI<9HBkq@C=EZOA_}hf%?NfFk6r3x(!6r@NFu z%M(%osen{KDj*e*3hV?0@NYKR)K^%PN2!2RKq?R@K;{P>cM@xU?6XLx4m{8j0OJUr zrW=08I)LWreysVi&mv95K3Vmk_^FCtVkj&f+jRoRSo33_MV1ZKwCd!)VVG#V|-X24Jjxk7 z$~=#;=lR*6lROX;@<_vE@Tg?)sPH_F*RSO^lROX;@<_vE@Tg|+sPa7C9NqV!;66o6 z$RiCikVgpy`-1H}kB!-j2cO5E7m5jaq+tf|s6YW`2IxWCc^-vNPH(hsMV=QQ6Y@yI zr0}TX{87UBBkleO+Ib!u_YWL8@_E36!-PE2FajPEa1LB>pogD%FlaQP3oWp~1XrL? zMh4II!S^3OKJy*rnwb@{-+I=6zn+z*Yg>+e0cT(GQl!Coyml8n+zqht>W$WFZ^@sl z|7|TirF71!?@zJS{-F8;%&a&O^ zQM}(d{r;ZeEn+{~!P@ygUI1Q#s?F#2udP)|Q+la7y*{O{mCN}ly?A(LeO*)4$v575 z|LpShjoWv={Oap(?%tzGp!lzZu!sE)j=z#Fld1^r0|AQn{^-po&RsT-36Y`SgOLJ{ z1^vZ*9YZHC(Yx3Ii*xk%mySLR991>-RW<4-FElf3`{tod#HdL$s!~RGN@e0yAz!GX zZIx+a)&AEDvu`hSFI`@{vVQe;%%_RKA@=1ChR9V49E!B_-aPuCICqvkmoZG}N*YGs zN2HIK6QlTSndpWGJpn_mmFG9|=j2Z-f75v*f(Y4(5dv-`-@%WSI=I_$F+=4~sen{KDj*fu(FzPRb~;)AKbHRg{~dh|lAKgPDzH5Tl#xcW zQO7=B7EF<@;}7}g@+6WC+iQO8vq;nNJWa>Q zR`dV2e+Fb$@{M2}bL*8nzpAwLEW!JB2D{ihxS*2cszq7<2dg52+D)JxUqcP9>UqBh UBLyA{MvnO!sYp3Tw^{$c0QUC~)Bpeg literal 0 HcmV?d00001 diff --git a/850640/.DS_Store b/850640/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..26480e5c1f2050814dd9a254ce613a9513449c3a GIT binary patch literal 6148 zcmeHKJ5Iwu5S;}VmS|E^uDC%u$|Z76kdg+4AShxvQbO;Jv*Z#K+=n~x=0lXo7>Nc6 z^hTO}-kEt``xPFKh@{!`YAP}jks7WjFS-m(^XdaTi%11bdXM$vbaCIcn?dDxK)IFd z @@@@@@@@@@@@@@@@gd|zC7>@Oa@bOR@^#]Od@^%I]O&@ Obg@ h@bOR@^)I]O*@^k O,mn@ kObgmR/npbR@ h@bOR@^1I]O2@^s O4mu@ sObgmbRv7@ h@@@@@@@@@@@@@@@@gFb@bOR@^8I]Oy@^zI]O;@^|I]O=@^> Omnmu@ >ObXmbgmbR@ h@ h@bOR@@gQ|gQ|LgQ|TFgQ|gQ|dJgQ|,LgQ|4gQ||@@@@@@@@@@@@@@@@gL;hz@ hC4Q @ C@@[QCbaT@ J&gT@h*Ly)Q*8L2y*44zy#hnmW@gyJyp8T*)s*4|C[@,d@F)@vsT@1h11s[X|*;T,y*48L*XL2yJ4y8sXIT*k#[@@@@@@@@@@@@@@@@gn7W@dsT*8L*C[ n;W@kI,J)1XR8s Q,2*8RJJ#[p,|/ L@&ET@h*42L2hy*8sz#T^X%h,,kaR*b)p /ss@%b@aRsC,d@F7a^nW%sQsp#%pX&ps@@@@@@@@@@@@@@@@gp42sF*Q @ /|%|sJs&2#&k I &p#Rbg&k *&1 a&k%& Tb78@[^Ey8F&g % WFO aF%EO g^%&W[L[^E8C L#&&gnb[ )ILhka&k%ga%h% )&sJ* sb;@@@@@@@@@@@@@@@@g]2s%agg1a&*1a&k%ga%*&skJ4 4;mg @g &s hkaOL/R#I)za^/L82 p2psp&% #%F7a82X1@T)hIzduLLy,FX|1n W]k Ehy)v]EIz%zT@@@@@@@@@@@@@@@@g[md@ v@J#T|OFCLnEJ*8v| 4upIn^Jz LnLLp W%XuT||%^)dLL@v])*mpW]k RdvET8,II%EQkpWmk |,y*LuFTv|vTT|uQ,h8@@@@@@@@@@@@@@@@gE2p pT2&%%sFh|1 Qg%E [^Eg& %&F1LEsI OO^%&W gC@ aFg%zE;*8E]W]O W F&%%E]W%WOR&T[*@TLuFTuImLy=L1*T@ m=@@@@@@@@@@@@@@@@gp>X gF*#am R) g ) & *b2gCb%42ps&p2sp%T7p)Wp&)p&4sg4spsQR#Fv &dQ7d4dp&pFp%s)2Fhp@v| OLE L &X nR,*^^R/T2 J&F@[@@@@@@@@@@@@@@@@gs# 4uJguE%24b@F7]vnJXbpd&TF/^n2s&)p2%W#pXQ)Qs)F>@ XbugdF*mgaC)%&2mp *b@1Ek/XEy IQJ WR[ O% WO aF%EO d[X@@@@@@@@@@@@@@@@g=QE>*8E%C %W]Fg %FOC%[8E%O%Lb)a#% *b=muLb)a&ksJ#&sJ/ &p#Rbg&kR >b>=Cs%aF#%g s O)ga&ksJ#&sJ/ &p#Rbg&kR4 /uE  @n @@@@@@@@@@@@@@@@ghdQF@^EhF,Lv )*L%,%huF vC8m@ ,TaXXC82C auL2sp%Tp#QWb@d8v=&@FTzE| )*LymIpuu7mX 2sp%T7p@@@@@@@@@@@@@@@@g#&)p&4sg4spsQR#p%s)8CT ^%a#&QTpd&2sp)%s#8pQ22dR#Tpv&)TC bQ&J Q^F@,y*FImLy=L|L4Thu487IW@vTzE|FE]pug8]W@LEh4|@@@@@@@@@@@@@@@@g=RL%v u^7QW@h,%huI]|| )*@4%@OaW @npy Fg E E82p pT2&%%sCR a@4mE u^18p&%&b811g@@v v=&@X&E]|L%@@@@@@@@@@@@@@@@g4)|v|EEuFLnLI]I%v1QE[IWO&%QWOg@dL@@ @mz#pE*[W%%W &W[OC EJ T ]mz Q@CT [vX#2sp4gpdvp&)p%T7%WpsX)4@@@@@@@@@@@@@@@@g^pp&4sg4sCX8 d,sQR#p&pb%&v%p#%WsXC a&Q@@u1R^IWO^%&WO[RWL ^@,Td)LI#&QTpdQ2bCW4 [vXs&sQ#p&pp&)p#22pXQ)Qs)2pC8 adX@@@@@@@@@@@@@@@@gX Eb[CCIWCR&QFO^%&WL W nTFQI&@nE,LL%8 I|L)uTvTX|IzyTI% nWF=1@WL%XuT||IzuLLv])*@uuuW@RdvET8,II%EvXC2];@TJ%]@@@@@@@@@@@@@@@@g)mLE)*IF] 4)u=;@TT*TX)y&|LL%v u@OaW J,R^pERJ%FJ^&WO@CIW h W ,^F=b@>E 4)s=;@Ih*TX)y&|@|L%v u^18&C82C8 XE@@@@@@@@@@@@@@@@g/]%& )s4)%ps&ps2sp2#sp#&&gCX8 EIy@TzE|Iz|ymIpu81RRdp&EQJ m/ E^O#@C%%QE&&h W ,^FQab@) u^yQW@>E @@@@@@@@@@@@@@@@gLv@yTb4Q& FQFOW%%W [OCOb]RCOb]WWOC% W@n[@@u^8m&@X8|Ez,L>IuJuTpv@yTb4Q& ;Ob]WWOC% W@n[@@u^y2@Q*uT@@@@@@@@@@@@@@@@gmyIW@n[pEJ^& W   OWg ]n Q@CX %1d Q^]@X%XuT||IzuL@^pnp>|v])*@uu1R^ Q@C8 %QdR@8I @m4FQmhav&)Tp%&dg#s@@@@@@@@@@@@@@@@gOp psXp%7spXQ)C8 bE2s&)p%p&4sg4spsQR# &C8m@ mzpE^ [O %[#&FOC% L,n@@v@18pb4Q@@uX7h@C8 1dX@FI&]2@@@@@@@@@@@@@@@@gb)#spb8R&Q)Tp ppXQ)1v&)TCp WJXbpd&TCp bR2s&)ppXQ)p%g4sCTT@TE,LEFdy)T|p4#@@u^18p @ ],TI24Qdp= Fg&QW% @@@@@@@@@@@@@@@@gdXn kIWOCRQgX W n F|@%u1R Q@CT hQ&b Q^#@|zT%%vTT|uL4ThuLy uX8dhb4Wdp2[OC EJ T @m%FQmT EJ@m4 2sp@@@@@@@@@@@@@@@@g]7%T7p&)pQ##pXQ)ps8g g&4sCT EJIb@R,%8 I|IF] u^8, [d@CT@CRL@C8 #@R@@uhy,@%81XEF^%&W gC EJ T Q @ R@@ R I OIp@@@@@@@@@@@@@@@@g18 T [ OI7, g)gX)Q#pT[&XC2];@uFTv|vTT|u8I&@>d& = F&%%E]W%WOR&/#I OI7,Jv&)Tp&4%s &XC2@]p&XC2@^ &XC2@ap@@@@@@@@@@@@@@@@g4&&XC2@b&%zy@ImLy=L|L4ThuL nI Q^@W)zymL|y)ILLy,%X|uJFL&@>g& EQFO aF%EO g C EJ T &@>h@@vXCzd@C O* @ &@>k@@vXCzp@@@@@@@@@@@@@@@@ @C Ok@ &@>n@@vXCz|@C O,@@ &@>1@@vXC;@C O,p@ &@>4@@vXC;T@C Om @ J@mR@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@W%@@7@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/850640/850640-44.si b/850640/850640-44.si new file mode 100644 index 0000000..83aba87 --- /dev/null +++ b/850640/850640-44.si @@ -0,0 +1,225 @@ +_FIN +_JOB +* SEMI-AUTOMATIC TYPEWRITER TEST - W BUFFER/CHANNEL A +* +* J.M. FLETCHER +* +* CATALOG NUMBER +* +TYPE EQU 900 + RORG 0200 +DX EQU 1*(TYPE=9300) +IX EQU 2*(TYPE=900)+1*(TYPE=9300) + PROC 1 +A9300 NAME +$INST FORM 24 +P PROC 1 +$BRTW NAME 02014000 +$CLR NAME 04037711 + INST P(0) + END +P PROC 1 +$BPT NAME 022400 +$SWTC FORM 18,6 + SWTC P(0),1*/(6-P(1)) + END +P PROC 1 +$LSH NAME 060 +$SHFT FORM 9,15 + SHFT P(0),P(1)++04000 + END +P PROC 1 +$MIN NAME 071 +$MIW NAME 030 +$WIM NAME 032 +$IOIN FORM 3,6,15 + IOIN P(2),P(0),P(1) + END + END +P PROC 1 +DIS NAME 0200000 +TOP NAME 0214000 +TYP1 NAME 0202041 +TYP2 NAME 0202241 +TYP3 NAME 0202441 +TYP4 NAME 0202641 +RKB1 NAME 0202001 +RKB4 NAME 0202601 +READ FORM 24 + READ P(0) + END + DO TYPE=9300 + A9300 +INIT DIR DISABLE INTERRUPT + LDA RCVR SET-UP RECOVERY + STA 1 + CLR + HLT ALLOW TYPEWRITER ID INSERT TO B-REG + STB DVCE STORE ID + BRM MODE CHECK ON/OFF-LINE MODE + BRU $+4 +TEST TOP TERMINATE OUTPUT + BRTW BUFFER READY + BRU $-1 NO + BPT 1 + BRU EKOL INITIATE LINE ECHO TEST + BPT 2 + BRU EKO4 INITIATE 4 CHARACTER ECHO TEST + BPT 3 + BRU CHAR INITIATE ALL CHARACTER PRINT-OUT + BRU TEST+3 LOOP +MODE HLT MODE TEST SUBROUTINE + SKN DVCE IS TTY TEH TEST SPECIMEN? + BRR MODE NO-CONTINUE PROGRAM +CORR SKS 010001 YES- IS IT ON-LINE? + BRU $+2 NO-PROCEED TO HALT + BRR MODE YES-CONTINUE PROGRAM + HLT + NOP DISPLAY IN C-REG + BRU CORR TEST AGAIN +EKOL RKB1 SELECT KEYBOARD - 1 CHAR/WORD + BRM MODE CHECK MODE + WIM TERM STORE TERMINATING CHARACTER + DIS YES - DISCONNECT + BRTW BUFFER READY + BRU $-1 NO + TYP1 SELECT PRINTER - 1 CHAR/WORD + MIW CRET EXECUTE CARRIAGE RETURN + TOP TERMINATE OUTPUT + CLR + STB WCOUNT CLEAR WORD COUNT + LDA =0177653 USE TO SET INDEX REG FOR OUTPUT TABLE + STA FILL MAXIMUM OF 86 ENTRIES + BRTW + BRU $-1 NO + RKB1 SELECT KEYBOARD - 1 CHAR/WORD +NEXT LDX =0177774,DX + BRM MODE CHECK MODE + WIM HOLD STORE SINGLE CHARACTER + LDB HOLD + LSH 18 LEFT JUSTIFY + LDA TEMP + LSH 6 ASSEMBLE MOST RECENT CHARACTER + STA TEMP RE-STORE PARTIAL WORD + LDB =077 LOAD MASK + LDA TERM LOAD TERMINATING CHARACTER + SKM HOLD IS LAST INPUT TERMINATING CHARACTER? + BRU CHEK NO +FULL BRX COMP,DX YES-HAS A 4 CHAR WORD BEEN ASSEMBLED? + STX TYPIX,DX + LDA =040000000 YES + STA FLAG SET END FLAG +STOR MIN WCOUNT INCREMENT WORD COUNT + LDX FILL,DX SET INDEX FOR OUTPUT TABLE ENTRY + LDA TEMP LOAD MOST RECENTLY ASSEMBLED WORD + STA POUT+85,IX STORE IN OUTPUT TABLE + MIN FILL INCREMENT INDEX + SKN FLAG END FLAG SET? + BRU NEXT NO-ASSEMBLE NEXT WORD + CLR YES + STA FLAG CLEAR END FLAG + DIS YES - DISCONNECT + BRTW BUF + BRU $-1 NO +LINRPT LDA =0 + SUB WCOUNT INDEX SETTING DETERMINED BY NUMBER + ADD =0200000 SET INCREMENT FOR 9300 + STA TEMP OF ENTRIES IN OUTPUT TABLE + LDX TEMP,DX + LDA WCOUNT SET UP MIW FOR INDEXING THRU OUTPUT + ADD FIXMIW TABLE OF KNOWN LENGTH + STA $+8 + LDA =1 SET PRINT COUNT + LDB =0177 LOAD MASK + SKM WCOUNT TOTAL OF 4 OR LESS CHARACTERS ? + BRU $+2 NO - SET-UP NORMAL PRINT + BRU LAST+1 YES - SET-UP SPECIAL PRINT +PRNT EXU TPFORM+3 SELECT PRINTER - 4 CHAR/WORD + BRM MODE CHECK MODE + DATA 0 RESERVED FOR MIW + BPT 4 BREAKPOINT 4 SET? + HLT YES + BPT 1 NO-BREAKPOINT 1 SET? + BRU $+4 YES + BPT 3 NO-BREAKPOINT 3 SET? + BRU $+10 YES + BRU TEST NO-RETURN TO TEST SELECT LOOP + ADD =1 INCREMENT PRINT COUNT + LDB =0177 LOAD MASK + SKM WCOUNT ONLY 1 WORD REMAINING ? + BRU $+2 NO + BRU LAST YES + BRX PRNT+1,DX ALL ENTRIES NOT TYPED-TYPE NEXT WORD + BRM TOUT + BRU LINRPT ALL ENTRIES TYPED-REPEAT + BRX PRNT+1,DX TYPE NEXT WORD + BRM TOUT + BRU SCHIX REPEAT +LAST BRM TOUT PROCESS LAST ENTRY + LDX TYPIX,DX + EXU TPFORM+3,IX SELECT PRINTER - 1,2,3, CHAR/WORD + LDX =0177777,DX + BRU PRNT+1 +CHEK BRX NEXT+1,DX WORD INCOMPLETE - FETCH NEXT CHAR + BRU STOR STORE IN OUTPUT TABLE +COMP STX TYPIX,DX + LDA TEMP LEFT JUSTIFY FINAL WORD + LSH 6 + BRX $-1,DX + STA TEMP + BRU FULL+2 +EKO4 RKB4 SELECT KEYBOARD - 4 CHAR/WORD + BRM MODE CHECK MODE + WIM POUT STORE 4 CHAR INPUT + DIS YES - DISCONNECT + BRTW + BRU $-1 + LDX =0,DX CLEAR INDEX REG + LDA FIXMIW SET UP MIW + BRU LINRPT+7 +CHAR LDX =0177760,DX + LDA CARTAB+16,IX TRANSFER CHARACTER TABLE TO + STA POUT+16,IX OUTPUT TABLE + BRX CHAR+1,DX +SCHIX LDX =0177760,DX SET INDEX FOR ALL CHAR TYPE-POUT + LDA =16 SET-UP MIW + BRU LINRPT+6 +TOUT HLT + TOP + BRTW + BRU $-1 + BRR TOUT +TPFORM TYP1 PRINTER EOM TABLE + TYP2 + TYP3 + TYP4 +TYPIX DATA 0 +RCVR BRU INIT +DVCE DATA 0 PERIPHERAL ID +TERM DATA 0 TERMINATING CHARACTER +CRET DATA 052000000 CARRIAGE RETURN +WCOUNT DATA 0 WORD COUNT +FILL DATA 0 +HOLD DATA 0 +TEMP DATA 0 +FLAG DATA 0 +POUT RES 86 OUTPUT TABLE +FIXMIW MIW POUT,IX PRINTOUT COMMAND TO BE ALTERED +CARTAB DATA 052535455 ALL CHARACTERS TABLE + DATA 056576061 + DATA 062636465 + DATA 066677071 + DATA 072737475 + DATA 076770001 + DATA 002030405 + DATA 006071011 + DATA 012131415 + DATA 016172021 + DATA 022232425 + DATA 026273031 + DATA 032333435 + DATA 036374041 + DATA 042434445 + DATA 046475051 + END INIT +*EOF* diff --git a/850640/850640-84 b/850640/850640-84 new file mode 100644 index 0000000..4561f3e --- /dev/null +++ b/850640/850640-84 @@ -0,0 +1 @@ +@CC@@@F@@C@g@p@C@Ch@Fp@RF8@Cp@F@@ @@ @C@F@^F@R@@@XF@C @@@@@@@@@@@@@@@X@@O@Ch@@X @WEh@@@@O@^F@@EF@ h@@pCh@Ch@Ep@Fp@Eh@RE @Ch@Cp@@CCT@|@F@@sC@8@@QFEX@C@@ 8@FCh@@Fp@L8@@h@@@@Ch@Cp@4@EEh@EX@@ C,@EF@EF8@E@@X]kT@@R@pCh@s@C@@@@CpQXR@ @Q @@@I@@[@@Cv@@C@ @@@@EXQER@@XERQ2k[@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@d@d@ @@@@]^X@@@@@@@@@XRCR@@@@@@a@Q @s@CCpTpF@Ch@@h@FXRChF8@R J]^@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@d@d@ @@@@]2QppWF8@FChWhFpR@@CnCpC8OpFCChXFTpWhEnFEXX@ks@CChX@@@@@CEpF/@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@d@d@ @@@@]ubCE TEhFEChWWpTEhE/ChCpFFhF@T@CT@C*XXR@@@@@ @@@@@@C^@@C&@EhFFhFp/@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@d@d@ @@@@ ]zvC @T@C#@C)CXF@CCXF@CXFORXF@C,@;C8OpWF8@FC2ChW@y@XR]@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@d@d@ @@@@]*C8C@@@@@CzFpE/@CFIWpF@h)@FIpFJ@C @@@@@Q @@@EF@a@Ra@Ta@a@@@@g1 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@d@d@ @@@@%pJ@@@@@@@@@@*@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@d@d@ @@@@]/uE/Q*k,mn/p12s4uv78yz;|=>@CEFIJ L OQRTWX[]^ ab#d%&gh)@O>k@O|@@@ @@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@d@d@ @@@@u8%@F@@@O@Op@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@d@d@ @@@@%QF @@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@d@d@ @@@@ \ No newline at end of file diff --git a/850640/READ.ME b/850640/READ.ME new file mode 100644 index 0000000..2a22115 --- /dev/null +++ b/850640/READ.ME @@ -0,0 +1,6 @@ + +85064OAA B3 9-SERIES SEMI-AUTOMATIC TYPEWRITER TEST (SATT) + +set break point 1 to echo a single character input in infinte loop +set break point 2 to echo 4 character input in infinite loop +set break point 3 to type all 64 characters in infinite loop \ No newline at end of file diff --git a/850640/test/.DS_Store b/850640/test/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..5008ddfcf53c02e82d7eee2e57c38e5672ef89f6 GIT binary patch literal 6148 zcmeH~Jr2S!425mzP>H1@V-^m;4Wg<&0T*E43hX&L&p$$qDprKhvt+--jT7}7np#A3 zem<@ulZcFPQ@L2!n>{z**++&mCkOWA81W14cNZlEfg7;MkzE(HCqgga^y>{tEnwC%0;vJ&^%eQ zLs35+`xjp>T0 @@@@@@@@@@@@@@@@gd|zC7>@Oa@bOR@^#]Od@^%I]O&@ Obg@ h@bOR@^)I]O*@^k O,mn@ kObgmR/npbR@ h@bOR@^1I]O2@^s O4mu@ sObgmbRv7@ h@@@@@@@@@@@@@@@@gFb@bOR@^8I]Oy@^zI]O;@^|I]O=@^> Omnmu@ >ObXmbgmbR@ h@ h@bOR@@gQ|gQ|LgQ|TFgQ|gQ|dJgQ|,LgQ|4gQ||@@@@@@@@@@@@@@@@gL;hz@ hC4Q @ C@@[QCbaT@ J&gT@h*Ly)Q*8L2y*44zy#hnmW@gyJyp8T*)s*4|C[@,d@F)@vsT@1h11s[X|*;T,y*48L*XL2yJ4y8sXIT*k#[@@@@@@@@@@@@@@@@gn7W@dsT*8L*C[ n;W@kI,J)1XR8s Q,2*8RJJ#[p,|/ L@&ET@h*42L2hy*8sz#T^X%h,,kaR*b)p /ss@%b@aRsC,d@F7a^nW%sQsp#%pX&ps@@@@@@@@@@@@@@@@gp42sF*Q @ /|%|sJs&2#&k I &p#Rbg&k *&1 a&k%& Tb78@[^Ey8F&g % WFO aF%EO g^%&W[L[^E8C L#&&gnb[ )ILhka&k%ga%h% )&sJ* sb;@@@@@@@@@@@@@@@@g]2s%agg1a&*1a&k%ga%*&skJ4 4;mg @g &s hkaOL/R#I)za^/L82 p2psp&% #%F7a82X1@T)hIzduLLy,FX|1n W]k Ehy)v]EIz%zT@@@@@@@@@@@@@@@@g[md@ v@J#T|OFCLnEJ*8v| 4upIn^Jz LnLLp W%XuT||%^)dLL@v])*mpW]k RdvET8,II%EQkpWmk |,y*LuFTv|vTT|uQ,h8@@@@@@@@@@@@@@@@gE2p pT2&%%sFh|1 Qg%E [^Eg& %&F1LEsI OO^%&W gC@ aFg%zE;*8E]W]O W F&%%E]W%WOR&T[*@TLuFTuImLy=L1*T@ m=@@@@@@@@@@@@@@@@gp>X gF*#am R) g ) & *b2gCb%42ps&p2sp%T7p)Wp&)p&4sg4spsQR#Fv &dQ7d4dp&pFp%s)2Fhp@v| OLE L &X nR,*^^R/T2 J&F@[@@@@@@@@@@@@@@@@gs# 4uJguE%24b@F7]vnJXbpd&TF/^n2s&)p2%W#pXQ)Qs)F>@ XbugdF*mgaC)%&2mp *b@1Ek/XEy IQJ WR[ O% WO aF%EO d[X@@@@@@@@@@@@@@@@g=QE>*8E%C %W]Fg %FOC%[8E%O%Lb)a#% *b=muLb)a&ksJ#&sJ/ &p#Rbg&kR >b>=Cs%aF#%g s O)ga&ksJ#&sJ/ &p#Rbg&kR4 /uE  @n @@@@@@@@@@@@@@@@ghdQF@^EhF,Lv )*L%,%huF vC8m@ ,TaXXC82C auL2sp%Tp#QWb@d8v=&@FTzE| )*LymIpuu7mX 2sp%T7p@@@@@@@@@@@@@@@@g#&)p&4sg4spsQR#p%s)8CT ^%a#&QTpd&2sp)%s#8pQ22dR#Tpv&)TC bQ&J Q^F@,y*FImLy=L|L4Thu487IW@vTzE|FE]pug8]W@LEh4|@@@@@@@@@@@@@@@@g=RL%v u^7QW@h,%huI]|| )*@4%@OaW @npy Fg E E82p pT2&%%sCR a@4mE u^18p&%&b811g@@v v=&@X&E]|L%@@@@@@@@@@@@@@@@g4)|v|EEuFLnLI]I%v1QE[IWO&%QWOg@dL@@ @mz#pE*[W%%W &W[OC EJ T ]mz Q@CT [vX#2sp4gpdvp&)p%T7%WpsX)4@@@@@@@@@@@@@@@@g^pp&4sg4sCX8 d,sQR#p&pb%&v%p#%WsXC a&Q@@u1R^IWO^%&WO[RWL ^@,Td)LI#&QTpdQ2bCW4 [vXs&sQ#p&pp&)p#22pXQ)Qs)2pC8 adX@@@@@@@@@@@@@@@@gX Eb[CCIWCR&QFO^%&WL W nTFQI&@nE,LL%8 I|L)uTvTX|IzyTI% nWF=1@WL%XuT||IzuLLv])*@uuuW@RdvET8,II%EvXC2];@TJ%]@@@@@@@@@@@@@@@@g)mLE)*IF] 4)u=;@TT*TX)y&|LL%v u@OaW J,R^pERJ%FJ^&WO@CIW h W ,^F=b@>E 4)s=;@Ih*TX)y&|@|L%v u^18&C82C8 XE@@@@@@@@@@@@@@@@g/]%& )s4)%ps&ps2sp2#sp#&&gCX8 EIy@TzE|Iz|ymIpu81RRdp&EQJ m/ E^O#@C%%QE&&h W ,^FQab@) u^yQW@>E @@@@@@@@@@@@@@@@gLv@yTb4Q& FQFOW%%W [OCOb]RCOb]WWOC% W@n[@@u^8m&@X8|Ez,L>IuJuTpv@yTb4Q& ;Ob]WWOC% W@n[@@u^y2@Q*uT@@@@@@@@@@@@@@@@gmyIW@n[pEJ^& W   OWg ]n Q@CX %1d Q^]@X%XuT||IzuL@^pnp>|v])*@uu1R^ Q@C8 %QdR@8I @m4FQmhav&)Tp%&dg#s@@@@@@@@@@@@@@@@gOp psXp%7spXQ)C8 bE2s&)p%p&4sg4spsQR# &C8m@ mzpE^ [O %[#&FOC% L,n@@v@18pb4Q@@uX7h@C8 1dX@FI&]2@@@@@@@@@@@@@@@@gb)#spb8R&Q)Tp ppXQ)1v&)TCp WJXbpd&TCp bR2s&)ppXQ)p%g4sCTT@TE,LEFdy)T|p4#@@u^18p @ ],TI24Qdp= Fg&QW% @@@@@@@@@@@@@@@@gdXn kIWOCRQgX W n F|@%u1R Q@CT hQ&b Q^#@|zT%%vTT|uL4ThuLy uX8dhb4Wdp2[OC EJ T @m%FQmT EJ@m4 2sp@@@@@@@@@@@@@@@@g]7%T7p&)pQ##pXQ)ps8g g&4sCT EJIb@R,%8 I|IF] u^8, [d@CT@CRL@C8 #@R@@uhy,@%81XEF^%&W gC EJ T Q @ R@@ R I OIp@@@@@@@@@@@@@@@@g18 T [ OI7, g)gX)Q#pT[&XC2];@uFTv|vTT|u8I&@>d& = F&%%E]W%WOR&/#I OI7,Jv&)Tp&4%s &XC2@]p&XC2@^ &XC2@ap@@@@@@@@@@@@@@@@g4&&XC2@b&%zy@ImLy=L|L4ThuL nI Q^@W)zymL|y)ILLy,%X|uJFL&@>g& EQFO aF%EO g C EJ T &@>h@@vXCzd@C O* @ &@>k@@vXCzp@@@@@@@@@@@@@@@@ @C Ok@ &@>n@@vXCz|@C O,@@ &@>1@@vXC;@C O,p@ &@>4@@vXC;T@C Om @ J@mR@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@W%@@7@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/850640/ttytst b/850640/ttytst new file mode 100644 index 0000000..4e24af3 --- /dev/null +++ b/850640/ttytst @@ -0,0 +1,17 @@ +; command file to run tty test (850640-84) +; +; +; usage: do ttytst +; set bp and type c to continue after halt 207 +; set break point 1 to echo a single character input in infinte loop +; set break point 2 to echo 4 character input in infinite loop +; set break point 3 to type all 64 characters in infinite loop +; +set log /users/admin/sds/simlog +set debug /users/admin/sds/simdebug + +att cr 850640-84 +set cpu history=2000 + + +boot cr diff --git a/850644/850644-44 b/850644/850644-44 new file mode 100644 index 0000000..8e6e8ca --- /dev/null +++ b/850644/850644-44 @@ -0,0 +1 @@ +2IE, 7EOh4FO&)WF@yFEkO)2[Xb24dOyQvE FWyvTsOvd@E;Q[y%vTsOR)7J@TOysO#T7@OysE[y)##WO2b2@@@@OyvJ@EOR)4O%@RWyRQ2OX#sWI4)2s)sO[y)2s)sOQTTRQ2Os)@y%@C@CC@O2sQWy#&QT#&QTO&d@@@@@CF@@C@TQsQ&@@@@@@@@&@@C vO#TQO#2XFCO)2XJvTsW QvO2bQW&)yzbR)47 s sEJIX#sO24RW%vTsO2b%Oy%vW%T%s[y#&QTO&)Od%W#&QTW)##W@@@@WyX#s [y%T%sJ[y&)bO#TRWgO2bd[yg@IO2bWWyR)477s[y)#&&g/O2sRO)#gy)#gW)#&&gWy7s %v2OR)dWgs8& gR&)dFIJE@ gsOgy@CFO%T@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*@pk)yL)8hs*48hs*8Qs*J4nF*E E JO WFFg%  EJ W^&^%FJ;8 X kmp ;@Q hs*vnF]F71 a^#|p8%1)EpQIFab7EpQd1*JQ*%1*Wm8Q2[k[   v |  RRa&pL4]m]amp >bQk d;^1mOF1*@[/a/pa @@%XF @Xbn2g g %&# gdIaEX@JE @&Ta L)@ XQRJ@ IhpQ F@ X8L@2@4&T2sp&u)#&vpp%Tp)&)T2p42Jv&)Tp&4%snp4z^]%WQsup&pv&)Tp&4%sp#22p& u@@I#a*@@QCT @%hF JLI@T|h&|F,E4JTy*LmE g |%|E]v|E)*ELJTy* , T@ WX*@1pu@@I%a*288by W C 2maRkLgam R)7  2ma &I*zd8by Wam R)%#R*g R)a h#&#am R)dI,)p@R;C@&Fh@JL @ [,[22@nQLs8LkXy8Q*hy8@8Jyh8[T*2bp @XT*TTvLF,EL &vLI,Lz%*EJ[)4Fu@@&|Fu@@&>F*@I| @ [2@kT*h*XT*1sI8[T*XLkX2|[p[@)pvdW2by[gpp%&pR4)p))&)1&@XQd@,vsvXXXXXXXI J48J44sTyR 8L TFdy)T||JTEQ h @  b@7 4X@I]ab@@ C F#^C@@gF4 h )@ 2 @ ,v ;L,y);LLLLL*LLvET8,mILE*QJL @ X8 @; u ^^2bgpp#&QTp)#&[pvTpg)2%s8F [#O@hRsXRJLkL*48[T*]@[2@h^nXE8T*1sI8[T*bOL T@ X8X@  *@v u@In @R;>EC@zhC*y/a*h@CE @d>F;@y%XF^spI42J&*n>^ J L@C@ gLXJ#@Ed2CbhpTCp2*L@ pL%J#@F2CIbhpFCp2h*L@ T@pLJ#@C2C 2hp@1LapsL*L@ R L8 J#@@L@=apsp*L@ 7 #J#@ LC2hp Lapu4*L@ T# gJ#@Fd2C2hpap7@*L@ ]# 2J#@hC]Rhp1ap7*L@ WC %J#@@L@C@ ^Q/h ;@ @74)>p@g8 @Cd@ /]JI @ IXCO@ ChE C8CLL@@Ra#nJbX@gp  @@s2@ @E @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@W%n@@F@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/850644/READ.ME b/850644/READ.ME new file mode 100644 index 0000000..7517e48 --- /dev/null +++ b/850644/READ.ME @@ -0,0 +1,15 @@ +850644 9-SERIES BINARY INPUT-BASIC PAPER TAPE LOADER +AUTHOR: XEROX +ABSTRACT: +TO LOAD RELOCATABLE OR A8S0LUTE OBJECT PROGRAMS PRODUCED BY SYMBOL OR HETA-SYMBOL ON PAPER TAPE. AND TO LOAD THE "STANDARD CONSTANTS. ' , +COMMENTS: +SIZE 79 DECIMAL. CONFIGURATION: ANY XDS 900 SERIES COMPUTER WITH A PAPER TAPE READER. + + +850644-44 is a compressed source file for the loader. + +You can uncompress it to obtain Hollerith coded card images using the recon program, 850647-84. + +You can then assemble the Hollerith coded images with Symbol using the symbol/sym command file. + +This file is included in the kit as an example to experiment with the SDS simulator. \ No newline at end of file diff --git a/850645/850645-44 b/850645/850645-44 new file mode 100644 index 0000000..c62cf85 --- /dev/null +++ b/850645/850645-44 @@ -0,0 +1 @@ +|E,O)2EFvdCCOvdFCFOR)4O2b)WR&&sE WR&&sEFEF@TQsQ&@ &@@@@C@@@O)gsE;FO@QO2b2@@@@O#T7@FOs)@OQTT@EO#TQO2sQO&=@CL&@@CJ@ERO2b%O2s7OQ7@C@@@@2FOR)dWgs8&OR)7OgsOX#sOgyO&d@FO%T@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@d=p|s4*pIy4hsphs*48hs*8 T8 @XJ4,*yXR,z*4y18Qs*J4m7 >L@@FFsL&@^FsL&@W^FsL&@ ^FsL&@ 2vI@@^FFT@R>|X@@b ]Ca @%^L)4*]#n@nLzvL@*XnL|vL@TnL=L@kshE,@OCE]F]gC F]WEQd*shE@ C%E@ OC%/#7>|zE@C%E]F]gC F]TT|^JLL@@^TEX@C Qg%E#C W LX^^L4@[CTCs]s@/@ ^&LEp@WCC1Es@/EQg%OI%h^nLL@p]]|bLL@L4^y|b|F@ CCIW&g %FOE%OI%ag,L@T|L@@WL]]|bLp@@CR TW]]|bLEL@@[CCCCCCCCCQRg WT|b|E@@WCCCCCCCCCCCCCCCCIg%EXX]@X^LL@@L@L>R #J[O %F#gh,@Wp4@W8@T| @LCu%a%@W|d@W|ad@T@O@ @p@@@Ov@L@@@ L@@appL8@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@W&n@@F@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=LE,O)2EFvdCCOvdFCFOR)4O2b)WR&&sE WR&&sEFEJTQsQ&@ &@@@@C@@@O)RF@E;FO@QO2b2@@@F@@@@@O#T7@C@Os)@FOQgmvTT@O#TQO2sQ@CL&@@CJ@ERO2b%O2s7OQ7@C@@@@2FOR)dT)gOgsOX#sOgyJ@O&d@CF@FO%T@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=Xpys4*pIy4hs8Ih4*X T8 @XJ4,*yXR,z*4y18Qs*J4m7 >L@@FFsL&@^FsL&@W^FsL&@ ^FsL&@ 2vI@@^FFT@R>|X@@b ]Ca @%^L)4*]#n@nLzvL@L@nL|vdL@nL=L@XkshL@T*shL@/#C@]F@FJ^OF@ JOLF@J^OOF@@ JOF@ ROF@L OF@J O]F@ ^@QF@F O#@QdC@Eaad#*k sJs&2#aLbRI)aRkLg d2#dJps&vF@J^O)*F@@ ,@QX@@Oa g IO)&* n@Q&@@ aaaaaaaaaakI p pOs@Qdn@@ aaaaaaaaaaaaaaaads2*b,L>@ ROuF@@F@FO)J&1 % g%gR#O7yzO/Fy|@ JO>@J@@#p;,@C@ @p m& WC EJ WI>LF8@ Cb@a@@,LO@ @p@J] @X@@@ 4X@@#Q L]z@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@W& @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@1pE, WsRQ2Oh4EEkE@CFO&)W@ECW2IC@@F@ 7@ 7FE OdTO&gTb@F@@@@@@[Rg&@@@@[Rg&@@@@[RgC&@@@@[Rg&@@@@sR#CTQsQELh4R# TnO)Ogy[h4R#T)E;FO%&gO2bQOdR@OR)4#T)Q#T)[#&QT)O#TQO#TR g@O#T7O%O2sRWRQ2JOR)7F#sR#sR#O2b2OX#s@Os)dQT)O2sQRQ2O#)d#&2s)s#&&gOR)nd)QT#&QTs %O2bd gCWs2s))W2h%)[s2s)))s)Od)WWg)s)O2bWWs2sTTOO2b%O#R[s2s))d2W&)dFCFFJEWd2Wd2gFEd2dyWdyWOQ7O2s7sdgCF@Ts *)WgTs)RFL[#TQgs[7s#O)27sWQ)TCR)svQ)TO)gsWQ)TO)sO)RO%@Ovd vJ@RsvXWQ)TO%)gT&%v)W#ds %FW2)s) O%)2W#&QTd[g)Ws2s[%Ts2sFuO)2XJ g g %EW2Ts)O#2XOgCW)QTW)QTO24RvTs s#TvvTQTW4gd2bO&)WdW)QTCOd%OR))WRsd2b[%Td2bWOvTs8gO%T%TOTvOQTT@W%Qd2bW#7sW#EL2)#Ws#)# %W)#&&gOs)bO#)WdQT)O#&#TvOvT##TQ2)##TRRW2g)##)#)##2sQsdgd2bQ[2g)#W%u)sd2bW)#&##TRd)TQW%7sO7sJC ss[#)dQT)2s8g)a 2s[g&gs8gJ[24Rs8gOT2)XWgdsXOs7)s7T)s7))s7)TO7QRWs7)TWXQ%dsdgWs7))OdROg7)Og7TWg7T)Wg7TTWg7))Wg7)T[g7)TW&gd2b[24R&)WW2)XW2)X%2)sJ@]FW%2)sg[g&gs)Wg&gTJFJF[%2)s&g[%&gd2b[g&gR)4g)#W7g&g)W7g&gTO)Og&g[&d)[&dT gJ@J@J@CJ@@COg@@@@C^@&@@@@@@@&@@@&@n;@@@@&@@@@@@@&@C@@E@@@@&@@@@@@@@&@@@@@@@@&@W%T7FI %@@@C@^@@@@@@O)^@@@@@@@&@F@@@@@@&@@@@@I,1IOsR# TWd2gsF[2g)s)/y[2gTs)[2g&g)W2sR#&@@@@@O&d@FWd2gOdvs&gv&@E&@CFF&@CE&@EFF&@E@E@@CF@W)&%@F@@@@@@FW2s)s@@@@@@@@@@@@@@@*bpvR,z*4y18Qs*J48XXJX @XJ4,*yXIsRz*4yWb&1p ^sp@ha8Ib]a@k=,@shz a@yhza@=hzOa@@4QEm J@m  J@mRuX@m@^mabC) a gE#aO)RnkaLbhkRW%a%1% a&b%F*^m%b7O)RnkaLbhkRW%a%1% a&b%Fk&uh,J%*Q,@nQ1Tb@2Q47Td@8R);Tb@*Q|@2m>aF@L dQa W[ d;L*TX)y&|@I)OE@Im)WbpQ@ C bJ@FQb4@Ld@dXQI@ RdX,I@ R4pQ g@WJTLI]||JTy*|L ndpQOg@yzdu,, &LJTy*#Qh XydLL>Iuy%EI%,JTy*L]L,|IzduW4,a#TQR@ CJXbh@F 1,C QEX@Lb8n 8s&k%g m a) d#&sd,2*)aR*mdL,b @[ @1^nWJ,vFdnR[RsJ*&EJ*v2|/,LTL>CJv2JbmCCLn[JJ OFd2bh1^ITp@LJO1*,bkJ@s) #@FXR1h@1nJbCT#/hd@F 1@dT@ CE8#@FF@Lp%bh&*@ OXJXuQ@Lvb p@X4[ @2b dXQn@ CF a>@F1F8@LWb @ [p F*s ^sCRWI gI%W &FO%% WX,[p@1^n@L)hW@dQpX QkL,y);bpQp@ CEha@F 1@dT@ CE8#L@FQaE=bW2sp#R)Q)8pd&Tp2vsXF 14T=@ W@sQ1@ C #@d@F QE &2bgpp%&pT4g#QspT2FQ*T,2s&g,/d4#sg#pT2F @LWbp@F@;&/@ @F @L Cp@@ ^T,@ @puFh=@Qz^OX[8@F 1@dh=@ C@a@@F 1g4@L)z* b|Q@ TX@h=@@p/@dTO@L  J#4*Jp# bhQ@@2CJaRhR]FR%ECRW &O Qg%E#Q@CC%L@@LO@ IEL*@Laha))&)pT4ps&pg Qg)psQgpgQ)s8p&)C|bE4OQ)TpTpXbCE8Ws^2bgpp#R)Q)8pd&Tp2vsXp&%C|b@L @b@@puE@CELbd8%Tp&p#R)Q)8C|h@@p/E^ @%LI%,vIT*T^@p4p@CEL gL2bgpp%vp)&4s%p#QWp2sC|#4]4))%sp)&)Tp%&spQ%pTp)[CC@@La@@1[Cs@W,h&|F, Idv%&LJ,E]v,| p/E1]@Ty, I#^dv%&LJ, p78*T8g)2)uCC@)dJaIu@R&FT4y* 1F|JhRd@ dLO@ IEL*4 )2sp|g4)WCCT @LQ bQLFJ%WIWO[RWO[W /%[ CI gI%LQ1) bRWEIWOERQWC g LQ bbpEWIWOR%]WRQWC g LQ bL Eb%WIWOW[&[ &WC g C@4FW bRWE;JI&%[ERQWC g #g TL pbTbpEO W Ogh %%L @b@@2IX@C%p@Lp v@@p/@dJX7LLs @pp&)pps^@CE,&@@L pbIp/L,gCCL,LW bbpEJI&%[R%]WC W OC g #g TL pbI@@1FI @z%|I=Ju2@Lu,|Lm&4v@1^I1@W,h&|F,I,J,, %Ldv%&@p/d1@Wd|uT,|I)J, d,Ldv%&@p7Id*T8gCC& )hJaJ@]@1FJhR]FdLO@ IEL*4WCXdd81yp p)2sp#&QTpd&Tp2vsXC|h=bpE[JI&C[WO%%%RIEd @CCTa@@L&pa#@@1FEQ@TJTy*LL>Iuy%Ep4CX@CI,@@LpbLEsJI&%[C%[RWOC[ k)F%]TL pb]@I8Fa#]^s ^2|L @a#TEQ& ]FO&O&QLL pa #v @Q*TI4FgpbX@@1[EIs@h&|F,JTy*LF,|uT,|@E4 ) p/I8@CXh8W2s&)pv&)WbTp&4%sp#22pCXh@L @bb@@1FJL@CCa@@LQ@bd@@2%JX@)p%@#WE E ORR  W a RLEb @@2hJ @TzE|L,y*TuEJ, 1^J@Wh&|F,4,| )*LvET8,mIIE@p/J@CXhp@L% ;@@2%JL@CCT) @LTpbpEJI&%[ a R E^%TL k]Es ^2= a R&&dL @ k@@2)u@QE]vpL@@8,bs2sp2bggTJp)&)Tp&)p%Tp)&)T%h4@CCT* @LTpbkbpE JI&%[%%L pa #v @TJTLI]||JTy*@p4Cs@Q|%|I] 1F2,@mLvEh4vpp/4JOX,)QTp%7sp)^>&)T@p@C@@ @Izdu,, &LJTy*Ld|#JhE%s)8CCh @LQ bmLE%&g %F g%WQ C%EQRdL paJaE@T pgLCR|L>Iuy%Ep/@nJaIu@W*TTvLLy,Izdu,&|TTJmLv @T)zdu,,ELJTy*J| @ba@@puCX@CCd#8T2sp%vp)&4s%p#QWC4gCX2bgpp%&ps)Q%2)pv&)TC|,@@L @b1@@22@CQ@LW a@@p/@dJpsn@L p I&L1@WEI)|FX||F,FvT*T^LII%E1@p@C,y@g,vQs,p%Tp)&)TpvsXp%&ps)Q%2)pQTT)Cp,p@LQa@@p/)@TXydLI]||Iz%zT@ @Izdu,,ELJ2 Ty*L &vLLzT%%EJ,k@# @b1@@22@CQ@LQ a@@p4 @Cm@@Lbu@@1F @@8,g)&22pTQsQp)&)T@8,g)&22pd&T)pv&)T2IL4 X@CXmuRz4%sQ#ypQTT)22p&pd&T)2CC,W|Qp p#&QT QTT)22pv&)TCCn@y&4n @L  v@@2[C4@CE,TgL 2bgpp%&pd&T)pv&)Tpg)2%sC|h@@p/@dJJp@L pbaJa@CThWLQ)T4pv&)Tp&4%sCCT,RhRbpE1Is@4/RQ%%gC%L Cm8,[2s&)pd&T)pv&)Tp&)py)&CJ mp@L pbz@@p| d@@;,sp p%)p&pTQsQpv&)ECT2@8,Tg)&22p#&QTpQTT)22CC,@L b|@@22@C/4[|Qp pQTa42sTp#&QTpQTT)22CX/#[2s&)pd&TTp#&QTpQTT)22@8,Rg)&22pTQsQpv&)T2CThWL^|8sp p%)p&pTQsQpv&)T2p#22pCC/p@LQ #@LFE&Q&%OOEQR%W [@ OQ C%C@L# @ Cp8W|Qp p4))%spTQsQpv&)TCE8pd8b2bgpp|Qp)h4)2p2gQ#p)WE#&C|pp@CbpF^& W CJ] %FOgF[]% &WC% #TQp@LW #E FJI&%[E%  &WCJ] %%L p IaL@C|hk@@puCh@CE81d8#2bgpp&dd&%p)*#&Qs&%p2gTC|1487sCCd2@@LQ@#I EQgJ  WIIWEQR%W L, # EIEQCJ] %%I%LQ #@@1[L%@Lh&|F,OWLC,@@1111pp/L* @XI,vuLy,@QsvL&|I%,EJ, 1Ld@CX28#2Qup#&v)ppRs2p&pQTa42sTpQTT)CT/#[4))%sp#&QTpQTT)22p#22pCC@;8@CJT2u4^&dg#d%spEsXpRsp&pQTT)22CX[@;y@X,y*]L,uLF,I)uTv) )*@2h 8@2ah4@O@ E1Es@/OR&%WOQ C%LQ@#L ugJ  W[RWLL# FR%[g@IgO [ER EQR%W L p#R/ QW]gLC@@L@p2Lu]@/gL|ydLJXyd4v)&T 1^L@WLh&|F,OWLydLJXyd44Thup/@dJXp@L@# WE)ER O%  EJ WEQR%W L p#@@L@CCT%4|R)pp p&dd&%p)#&Qs&%pRQ2CE81d8^2bgpp|Qp&dd&%p)#&QsQR#C|h@@1LLu]@d]L,|JXyd44ThuEJ, p/L8@@pC4X@;y@L,y*]L,uLE4 )*@2h 81@&TzE|ydLEJ, 2hL@1@vTzE|E4 )*LEJ,  @d>8uJXyd4v) )*L p7 *@L #b,* @L&p =@@pyLJJ2hR@@p|@dTX2hQ@@L@C2Th@L @@LW bapFCJI&%[FOQ C% ^& W IL p#@@L@CCR@Lpb>@@p4 8@CXRT8%2s&)p4))%spdQ7d4dp#&QTpQTT)22pCJd487s@p@CbpFF]O1%&EgRRW%  &W b EE%s)8CCd28I2QupRQ2CQ@L, # EIEQCJ] %%I%LQ@aE E[1Es@/ER EQR%W LQ #@@p4@O@ E1Es@/OR&%WOQ C%LQ@#O@@1La@OWL|]L,uLE4 )*@2)Lu]@QE]vpL@@8,yQgg#8p2gTp)#&Qs&%pRQ22ps&pQTT)22p%pQp)W2s@8,#g)&22p2gQ#p*;1&p&g)Qs&%pv&)T2@p@CbpFz&[ &W g^& W I&W &FO%[ FQ[CbpER%%COb]W @F@ #@@L, bm@@1FJ41@&TzE|FuLEJ, p4J@CImC|@@LQ bapEF%Q WC%[RWLLp vpE7JI&%[O  O@OR%WC%L*aO QW]gLC@@ @yzdu,,I]||Fu|FET,u4X8uLCs  pbmJaF @W pL|ydv|IRI%,@,| )*LI%,Fu@puEQ@/gL|JTy*LL>Iuy%E2[ @CCd47LX|ssp%WQsupp|sp pCC2hR F1Es@/ aE&W/CFOQW/g^EQRgC%LQ@#T@@pm p@C =dQp@LQ@aE FW1Es@/ER CFOQWg aE&WEQR%W LQ b>LEWIWER EQR%W L  Ja@CCduT8]2sp2s8gpp&)p);p p&)pTCI,p@LQ@aT@@1F s@WL,O7L|Lm,>Iuy%ELd4XuL p4CX@CI,@@LQ aWE;I#Q Wg%[Og ^g L @ Ja@CCTORhR Ek1mIs@/@# aF%EO gC bQJLL p#JaE]@ pgL|@,&|Lm,>Iuy%E1^ L@C|@=*m ]R)Q%Xps&pg&gp24Rs8gp)&4s%C|@=d*m R)Q%Xps&p#QR#p24Rs8gp)&4s%@pCEdpvp@LW #pEgJI&%[Og  EIOg L p#%pWOL,LW JaI@T,h&|F, |F,EE p/ 41@Rm|F,J p4 81@Rm|F,EE 1^ @T,h&|F,|F,EE p/ y@Rd|F,J 2hE@ I8vT4uEE p/ @@@p@C27bpkg %[]E%8uT8R2bgppp2pQpTC|748Jp2pQp)8LEa@XT|F,EEn|EETzE|J,ymIu2hI1@XFTzE|Ldv%&LJ&|ymIup4 81@RmT;=X=EI%,p181@L%|EE,Eh4ppuL* @LQ Ja@CEz@Tz, |%Ty)E,EE, =8#Q@aE@FQ ##WuEQRg[%XL @ C8p@LQ #d@@1L|@CXy@L @ Ja@CQTz=8W|Qp puQ#4p&p28dR&#p7CEdy@LQ C88,2s&)p&dg#sTp)CCy@@LQ@aE@@1[Cs@Wh&|F,I,|4,|J,Fvp/ ]@]v|@L4,|J,Fvp/X@@@8,7pQ%TppQ)pR&sXp)272L4 81@W4EJ,,I%,@,|J,FI],v^XFQ ##@@p4@O#@@1T@C4T @L p#&@@p4 81@I],@,|vX 11@L%|J,Eh4ppumpL* @LQ Ja@CEz@W,y*I],E&,|vX,FL4Thu1@XImJ,Eh4|E*)LIhuL@,|vX 1@O#bpEEQR%W % C C%&XLQ C88,[#%bp%vpXQ%ps&p&8Q#TpXQ%C|4E4F7spC@p@CbpEQ a^^& W I&#2hR E[1Es@/C%@O[g CLW JaI@T,h&|F, |F,EE p/aQ@Rm|F,J  @Ry4vELEEnd^W # E;g Q[/CJI&%[Og QXL p#*L)Og %[k* #bp2pQpT;pQ#RspQpT4g#QspTCX2hR FOIWOR EC/%W E&W^%W&[ CFOL p#*WF2b&C ag ^&WO^& W  %XC@@ @Ry4vELJn W # EJI&%[ g QXL p#,L)Og %[m*TyuJp2pQpTCJ d %)d%sp2Qs2Tp)[p&4LW%s)CEd #XQ%Wp7p)&dpQp)ps&pQpT;a) 81@WOyd74T|=X|Iy)|Lm*I*v1FL*d82spv&)TCp&psdp7CX28T2Qupv&)TCp&psdp7CITO@LQ@#/@@2 mFs@X/WL|T|=X|h&|Iy)|y%EE*)L p1FF8@CC[ @LEaWE%Q%QWO^%[[RW dL p#p@@L@@8,^28dR&#psQR#p2Q)Xp24R)&4s%v2LhQ@Qz^@p7Q[C8*]|7p p&)W%p&p28dR&#psQR#CCdy@LQ #@@puE@|X4La@/WL|@,|Lv,I%,p1@*d8a2bgpp|psX)4pp p7|psX)4pC|| @L @#% EW1EICs@/@I@ aFg [LLTp =JaI@Xh&|F,LvJ]LL| LvJ]L@p/O@@;,s2sp&)pdQsXp&%ps8gCC @LW #pFWJI&%[CO@,C1%m/Cg  EIOg QpL @bFX|LE/L, C1%m//Cg ^g QpL) Ja@C4/C#2bgpppQ%Tp7pXQup2Qdps8gp&TC|| @L*#[ FW]gOWQ #/ bQJO FCOb]W E^%TC@OF[@ TX2hRWmEsIs@4/CCsIsC@LL[an@@p4C|@CE,[d82bgpp%Tp&psQR#p)QXTC||4s2sp%7spsQR#p%s)8@p@C@@ @XF%|I],Ez^LFLnI)h|L4ThuL# @an@@1|%[%@TE4h7@|COIyd7@1FQu@W L,y);LLnI)h|L4ThuImhym p,F@CXO48[QTT)22p&p#Q2spsQR#p%s)8CCOp@L @#@@puT@CXhR E %W@ O EIOCp%L =JaI@T|,y*@%L4T%X| )*@pu X@CI,=Lb|Qp p24Rps8gp&Tp2Q#Tpp#sCEd/ @LQ Ja@CE847L2bgpps8gp&Tp|sp2pC|=@LW JaI@2yWLh&|F,|F,E]|uTX|EE 2hE @C|4@@Cbp &WIgOEO FO^QWFCOb]W&Q% g&WC%@Ou#T= @L&pbEpF1Es@/EOOQFO^QWCI F @[ [LLyv JaI@XO )*L@|XzTLy)4LOyd7@1 p1@L%|L>IuFFT4y*O|7@1FL*d82spv&)TpCp&pp%p28dR&#psQR#CE82hR E[JI&%[Og ^QXL*@a)dWFI&%QWOW &FO^%[[RW g7#=h,|Qp pg&gp&Tp)&dpCC=h,|7@p pg&gp&Tp)&dpCI,>@@LQ # EIWCI F ^[RW dCF >^C EJ WC^uCCCCCs&WIgOEOOQFO^C QJ&[ &WEQR%W &W[^L*@#vbpE&%QWO^[RW gpF#>RhR@@1|@CEd/ @LQ #yJaI]@XL%|Iy)|Lm*I*vFIy)|L4ThuL@yy)|JXyd|L4Thu LF%|T|=X|h&|Iy)|y%EFy,Iy)|JXyd|Lpp4La@WL| )*@|I%,FuL |I*OIy)4|zWLdpQnhFp I@pF% =@@1=]@OWL|T|=X|Iy)|%y%ELd4XuL@Qu,pL@CCbhQ]FWsIb%1@Xg ^%OC EJ WEQR%W L@#zbpFWIWO^QW&W^%OC EJ WWg L p#WE^& W WO^g C@OhJhJE%s)8CX2@@L @#yJa@C>p@L#@@1FOd* @L*#zbpQW]gLC@@ @^Lm*mLvLy,L%|C*]CLF,zy%EFIy)|L4Thu,EzgX @#v@@1[CX@C|]p@LET#v@@p7OX@CC@@L@#z@@p/X@@pCu8T8#2bgpp|QpXQ2pg)W)ddTp&g)Qs&)p)C|1p@CbpEz^&^%FRQ]%g%  &TLQ@#;bpFIWO[g@[IgO [&O% C[C%&XLQ #@@p4@O@ E1Es@/OR&%WOQ C%LQ@#/@@2Fs@WL|Iy)|L% ETuI1FF8@CC[ @L @#yJaI]@WL|Iy)|L4ThuEz^@1=]@XWLE>|OIy)|F,zy%EL@@@ @k @Q1La@Xv%|T|=X|Iy)|y%EFE4 )*@p/L@@pCWFb =u4R@ %s)%Q#pg&gpTC %4R 7s)%Q#pg&gp)C u4R 7sC%)%Q#pg&gpTC g%4C %&spQ22W%T@p@@pC@C>@pC@C@pC@pCQ@@C@C^@CChC@@LE@ @@ hC@@LE@ @@ @Id|4>FbznC@@C@@C@#@CQX g)&22pR#Q%bp&dd&%pT#Q)Qs&% XF Wp1@LJ^% J,n^F*L^bn2v2[L4nvdnmLpQ]@ Rn^u J;Ln2vTL,4dd4hLE8@@@X@@ @LnJTn2v=L2nL*@>ELv&[L*nJb%JnRnRnXh@dIpTQsQp)&)Tp)&4s% hCQF7s)%Q#p)pQ%TpTp)&4s% h@@LE@81@JR,*&EJ*uJ&ELv&[L*hLE@p@ h^@@LE@p@ h^@;F@C@@v@dp@@d4E@X@d4F@T@d4@W@d4@pd4I@Jpd @C @pd4L@CIXd4 @CTCd4@C/@pd4O@C;Cd4@CLXd4Q@*@pd4R@kCd4@C>ugpd4T@@npd4@R@d4@W@1b4XEQ%@8WX=ETEX@b8#h*ah@WX=ETL @# ##@@b8#h* ;@pd[@|pd4@]pd4^@&@pd4@4@pdI4 @d@pd4a@EXd4 dOdX=@=@1@Th*EX@8# bLb8@ E8@@d @8@p#E@d @hFE@O*EX@T#E@@hE@@TX#@8h@W8#E@Jh@@# @@hk # @@ p# @@XF@8 p@dh@8 p@X@E@@@X# @@h# @@Xp# @@Xh# @@pFE@X@8F@8h@dpF@8h@W@8 p@p@8h@h#@8Xp@T@#@8 pz[@T @@Wp @@Jg @@8# @@FE@Q@J*4dd4nFuJJznu J;L)IXdp@XXdp@1Xdp@@pdp@2@pdp@CvCdp@@Xhd@pdp@RL &X@ d44@@L &h@ d4v@@C@8@=@1187@@LO@@@@X@@X@b/@s@@@RX@@@@Qh@gy@y@z@@@I8@%h@gX@g @@C|gh@ h@gh@@@gp@@@k@pdp@Cdp@O@pdp@@pdp@hCdp@)Cdp@*Cdp@k@pdp@@pdp@QpdpTh@dg@8@@X@8X@Q# % @Q # @@@X@Q@F)@LE|&4=&CL,>&^m LuF J&EJ*JbmLE )Q@ =J,|Jn#TEJ*J& J&CLnC4|zmCWXXsp)4%ps&p) )QTpsXQspQ)T /;@@C@@C@gX,@J d22QWpg)%sbhg@@sLF @g@@Lpdp@b%@@L a@a|@@LE8Th@dmn@/@4p@Cdp@bh&@@L8 @ mR@@LE8%8@dp)@@L&@a|@@LE8Th@b)g@)Xd42@@W#W@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/850645/850645-84 b/850645/850645-84 new file mode 100644 index 0000000..4cdb545 --- /dev/null +++ b/850645/850645-84 @@ -0,0 +1 @@ +C@CC@@@F@@C@g@I@ py))FFk@I@ C2py))EvIFXEy@I@@I@IF Ezy @C8@@@C@@^F@@QF@@O@@X @Eh@WWp@@kb@@EX@@8@@W; @@I@CC@@@F@@C@g@p@C@Ch@Fp@RF8@Cp@F@@ @@ @C@F@^F@R@@@XF@C @@@@@@@@@@@@@@@X@@O@Ch@@X @WEh@@@@O@^F@@EF@ h@@pCh@Ch@Ep@Fp@Eh@RE @Ch@Cp@@CCT@|@F@@sC@8@@QFEX@C@@ 8@FCh@@Fp@L8@@h@@@@Ch@Cp@4@EEh@EX@@ C,@EF@EF8@E@@X]nn;h4R#T)pp @>@@@^@I@Cp>h]4^Jp^sEh^Cp^n@@IIII ^QCh^&s@CCh^hXWCXXgp^% 1/@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@][8h^E@]7@h^8Cp^&p^)p^kX]4@yEX^/@1X^@hR^X@@d@&X^@@W;=C8^p^ ^QCh^7O@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]y=kp^nX^@a@@@@@@yp^@@@I@@I^@7@^Ch^/@Wp^*p^,^E@@@@@@]Lp^&@@@@@@@@@yg>X@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]|WC@@@@@@W@ @WJ@@W F@WJ@^F^ @W@@^|EX^/@W>pWh^E@^z@W@Xp^;JkW@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]8^W[@]4@W*p^)p^kX]4@y^Wp^/h^8Wbp^ECh^yCh^pCh^1Ch^;EX^p@X pWFp@ ]8X]4@WsX]v@W>@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]/WsEX^1@W>Ch^1EX^y@W>^Wp^8h^/WyCh^p@Ws@ChWF8@CCh^%p]4F8@FX]y@XI@@@C@@C@WE ]vX^E>mg@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@];;X @XFCh^Ch^#p^WCh^XpW ^8^|^XF@^F^XEX^@XCh^XFp@L8^Xh^@W@@@@@EWCpWh^@^7O@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]11X#@Wp]4Ch^;@W@@@@p^WCh^X^%L],p^#h]4Cp^;]y@X|pXEh^& ^QEX^/@X7@Xy@@RRRRCh^&=1@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@] X;@pXEh^& ^QCh^8pX ^Op^ChXp^bCh^[pX^FC8^h]4F8@X^E@@Q^#F@^#WhXC4^[F^[;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]av^pX^LEh^& ^RCh^dF@^#p^Ch^]4^]EX^^@8h^&EX^a@d@gh^gEX^ @Cp^ ]|Eh^Ch^@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@] ykX]|@4 ]|Ch^F@^d4^d8];C,^dF^d4^] ^@p^@h^&EX^a@=X@]Th^gEX^ @X@]TC,^d@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]=[CF^dF^]^FWh^bF8@p^bFF@^#@@@EX^#@]p^hX^dp^dCh^hEXg@@@@Cp^ ^QEh^ ^QCh^4^] ^=7=@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@] J[p^Ep]7Eh^XCh^Xp^#E ]7Ch^#X]4EXg^Xh^%F8@WCp^^Wp@ ]=^LEh^& ^QCh^dWh@Cp^ F8@ ]7Wu@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@],TsCh^p]4F8@FCh^8Wp@@Wh@^EX^^L]aL]%XEEX^^@[nX@@[p^dEX^ @[F^*@]EX^ @[F@^)F^y4/@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]|y[ p^dp^Wh@h@p@L ^QCh^4^Ch^ ^Ch^[Wp@ ^Qp^[C,^p^ ^QX]4@]@[Qp^dCh^4^ ^Q1>@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@][#^E@[ p^dp^CWh@h@p@L ^Q4^C,^@]Wp@X@@[vEX^ @]@F^,h@@]@EX^ @]@8^CF^yp^|^^@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]gp[;p^dh@Ch^Fp@ ]>Fp@OCh^^F@^k@;@@@@^Cp^[Ch^h^Ep^W@@@@Wp^[W@@@Wp]4EX^^p^L*==/@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@] yQ8@^L@WEEW;=C8^p^nX^@Jp^X^h@@@F@@FCh^n^np^h^[h@@p@h^F8@np^dh@EX^^]>^@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@];Xk@/X@F^)@]h^mF8@hQp@p^Lh@X@F^kp^m^mF8@Ch^F^mWp@ ]>p^dh@p^Fp@ ]>^8nmk@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]by]CX]E@]@@@@Ch^Wp@ ]p^h@E]Ep^mX]4@F@^m^mp^TX]E@]LEX^@ ]Ch^4^] ]>Fp@Ou/>@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]& ][Ch^^Wp@ ]>p^@@@v@@=@@=@@XF@@])@@=@@=@@XFp^dCh^g@]@@@@%@@%@@X,@@XF@@XF@@XF7@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@] ]s@@XF@@@@@@@@@@@@@C@@@@@@@@@@@@ @C@O8@@8|@@8@@XE@@@@@ @@@@O|@O;@Oz@8@O4 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]%n^ @X@@@@@@@@>@@@@@@C C|@@@@@@@; @W@@X@@X@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@^^@C8@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]z|^#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@OO@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]^;@@@@@@@@@@W@@@F^4^Ch^[Fp@O ]z@@E@aT^[F^[E ]u^E@R@Q @@@OE^JJJ*Eu&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@u2@d22%WJT2*JJJ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%sX @@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/850645/READ.ME b/850645/READ.ME new file mode 100644 index 0000000..6b6c3e8 --- /dev/null +++ b/850645/READ.ME @@ -0,0 +1,6 @@ +850645 9-SERIES UNIVERSAL LOADER +AUTHOR: XEROX +ABSTRACT: +TO LOAD ONE OR MORE PROGRAMS PRODUCED BY SYMBOL OR META-SYMBOL AND PRESENTED TO THE LOADER ON EITHER PUNCHED CARDS OR PAPER TAPE. THIS LOADER HAS ESSENTIALLY THE SAME CAPABILITIES AS THE XDS MONARCH LOADER BUT IT FUNCTIONS INDEPENDENTLY OF MONARCH. +COMMENTS: +SIZE 664 DECIMAL. ASSEMBLY LANGUAGE USED: SYMBOL. CONFIGUFIATION: ANY XDS 900 SERIES COMPUTER WITH A CARD READER AND/OR PHOTO READER AND A TYPEWRITER. LOADER EXISTS ON CARDS AND PAPER TAPE AND LOADS PROGRAMS WHICH EXIST EITHER ON CARDS OR PAPER TAPE. diff --git a/850647/850647-84 b/850647/850647-84 new file mode 100644 index 0000000..ab02338 --- /dev/null +++ b/850647/850647-84 @@ -0,0 +1 @@ +C@CC@@@F@@C@g@p@C@Ch@Fp@RF8@Cp@F@@ @@ @C@F@^F@R@@@XF@C @@@@@@@@@@@@@@@X@@O@Ch@@X @WEh@@@@O@^F@@EF@ h@@pCh@Ch@Ep@Fp@Eh@RE @Ch@Cp@@CCT@|@F@@sC@8@@QFEX@C@@ 8@FCh@@Fp@L8@@h@@@@Ch@Cp@4@EEh@EX@@ C,@EF@EF8@E@@X/F@@@XI@pQChOzpQChO;E QWCh;XE p;Ch|pOvEhQWCh;pQXChO|EhQWChO=pQChO>4O>Ch@pQChOpO4@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ s@@XE QOWpOaChO8pQC,O8]C,O8pQChCh pQ[O^hQT%hQCpCpOChEXCXQW@EXQX@E@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@phpQF8@ChO1E QWChOzF8@E Q]ChOyp Q^ChO;,O;O1RXEICpOspQ@C@C^pOyE QWChOyQ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;4@@C@kXF@@@XnpEE QWChEQ @CR@CX pQ[O^hQTCpQChCpQChpOChE@CXF@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@C ChFpOyXQW@C*XF@@@Fp@FpFF8@FChFEXJ@npFE QWChFQ @kpQaXnpEE QWChEQ @Cy@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#W@@C8@C*X pQ[O^hQTC|pQChCpOChEpQCh@C*hQb@QW@kXFChpE QWChQ @,XF@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@/%@@XnpEE QWChEQ @W@JpE QWChQ @,XF@WEXJ@b@@@@@@pOWChp=ChQRp>Ch>@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@vW@@hpQ#ChQX;@ X @ p EhQWCh XQX@4@C,pQ@hQd@Q%@y@C,pzXnpEE FChEQ @E@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@yz@@E@@k8QbEhQWChFpQCh @CyXC@E@@@F8@FF8@LF8@R@@@@pQC,QTChOupQ&hQbE QgChO4C,O4O4@E@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@y@@EXE QhChO7pQTChOvXFEE hQFp@ChOyF8@QC,O7pOuF8@EhOvE,O7C,O7pO7E QWChO7XOv@FpOyE QWQ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@)&@@Ep@EChOyXFEE OuhQRXFJ4OvC,OvpOuEhQWXQ@FE Q)ChOupOvEhQWXO7@F@FChOvhQC4Ov@Em@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]C@@FChOu@EmF8@RF8@LF8@F@@@OXJ[sQR#J&u)#&vJJ@@@@@@pOzEhQWChOzXQ@FsE Q)ChOzpO;EhQWX;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@1@@F @FpXJh@F;pLFp@O Q*EhQkCh;pLhQ,@Q,@>hQm@QnEFpQChO;,O;CpOspFEhQWChFpQhOs@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@8@@F8F8@FCpOsEFOXJ[%TJ&J# ))&)JJJ@@@@@@pQh@O|8@@ChpOEhO|ChOXQ/@)E QpChO@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@2@@pO>EhQWX|@bXJh@^pLFp@O Q*EhQkCh|pLhQ,@Q,@>Qm@^pQChO>,O>pQO8@@p@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;|@@hChCp@pQ1@vpO|EhQWChO|pO=EhQWChEhO=ChO=p8QbEhQWChII,O8CppECOXJ[@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@* @@@%g4sJ%&sJ%&TTJJJ@@@@@@pQh@F8@FChpOEhQhChOXQ/@kE QpChOpO>EhQWX|@dXJh@^@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@vy@@XpLFp@O Q*EhQkCh|pLhQ,@Q,@>Qm@^pQChO>,O>pQO8@@pChCp@pEF@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%@@pE QahQRXFJE,CC,CpEhQWChXQEnE Q)ChpCEhQWChCEn@@@@pQbChJ@@IC@pQ2ChO2@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@L@@IpQChOmChOnCO1pO1hQb Q*@7@I OXCO1pO1hQb Q*@8@I@IF@y@I@I&W@7@IdC,O2pO2@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ >@@I EhQWXQsChO2@IQI@IQ@@@pOm@4@Ik@J@v@In@JI@u@JQpOgChJ)pOn@4@Iv@J @v@Iy@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@d@@I8@J@u@JQOC8O/XOO/I|hQWCpJhO%pO*Ch Cp EI@pOh@I1pO)@I1pOkhOd@JpO,hO&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@,@@J@JO[XJ[%&))sJTuJQ22W%d%s2@@@@@@@@J@aJgpJ[EhQWChJ[TJ[Ja@Q @EJ[*JJJ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@1&@@Jh@@@@@@@@EJhpLFp@O Q*E QWChO1OpL|ObChO2pO1E QWChO1XQ@J;pO2J2pO2Fp@L8O2 Q4hQb@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@k@@ @@Q4@ FpJhEhQWChJhEJhOXJ[Xb24dJ))&)JJ@@@@@J)@@@@EXJ@ pO^Ch@@@@E hQCppy@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@&W@@ XXnpQE CCh8QbEhQupCh>@ @@@@O]C8OpI@@ d@^IO 4@ m@ 24@ m@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@^ @@ p@@ p@@L@pLhQb@O#@ y@ d@Qv@ |E ap aEhQWCh aE aOpL OXJ[sQgJ)QTJQ#4)@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*@@@LJJJ@@@@@ 4I@@L @>CO1@ #@@@@X X QX J@LzpQ@*QQTL@Q @X @@La@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@7h@@L ELQX @vCO1EhQWX XQ7@L1OXJ[sQgJv)sJQ#4)JJpQ8@@@@QW@LX@^zO1Lu@Q @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Q @@L8X @LXOXXJ[%TJ&JsQgJ@@@@@LR@@@@J@@  J@ E OXJ[sQgJ#Jg)&ssTJ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@n@@ @ @@@@J@ X E QQyX @^zO1 @Q @E Q@@@@X X QX @*Qz@Q @X E ]@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@aJ@@ h@ gpQ;@@ ) &@ ,&pQW@&QQT 2@Q @@@ uE QWQ*@ pE &@@@@O^C8pQ[hQT@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@p*@@@ X &X &E ;@@@@F@@ FE@EO F@L@^F4@@@O@@pEhQW@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@8 @@XChEOXJ[Q)TJ)QT)J))&)JJJ@@@@@E@@@@@@dO @4@h@@1p#EhQWCh#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@vI@@pE#OXJ[gQg)JsQgJ)QTJ))&)JJJ@@@@@d@@@@@dQQT>@@OF@Q @@@OCE;OXJ[@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@v@@OgQg)Jg4%XJ))&)JJJ@O@@@@O]@Fd@Q @@@OROEO@@O@O>@O=@O;@Oz@Oy@O|@Ov@O,@O@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@,@@O @OX@@@@4/ppX ;XOX ]X#XX aX;X &XLQpaEXdE bCh[p#ChpdEXdE %Chb@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g|@@O8Wp@CFp@ &EhgCh%s@CE %Ch)s@C @ChhWp@C hp[Chp)ChXpCh,8RgEX^8QTX@@p#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Fd@@C,b]F;E; @R%Xg@ET@Xa@X@Q @@@@@@@@@@@@@@@@@@@@@@ ]@@ *@;,@)%*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@h]||&%L*@@@@*@@*@%%C%C@% @QC8*@@@@@@g@@@d@@@/@@@1@@@*@@@z@@s@@s/&QQTQ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Q@@*@QC@;E2 @XTphk@,m@QLQ s@CCh&XhC8h)X2@@RF@@@C@@4@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@QX@@@@@ @@@@pppp@@Q@@@@O@@X@@ @@@@@@pppp*@@@,@@@@J@@ @@@@F@@@@@@@@ @@@8@@@@@@@@@W@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@uO@@Qp@@@X@@@Om@@O/@@@@QOO@@@@@@@@J@OyOOOO@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]4@@Q|@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/850647/READ.ME b/850647/READ.ME new file mode 100644 index 0000000..f70a96e --- /dev/null +++ b/850647/READ.ME @@ -0,0 +1,29 @@ +850647 900-SERIES ENCODED TO SYMBOLIC RECONSTRUCTOR(RECON) +AUTHOR: XEROX +ABSTRACT: +TO RECONSTRUCT FROM AN ENCODED REPRESENTATION OF A PROGRAM ON PAPER TAPE, CARDS OR MAGNETIC TAPE A SYMBOLIC REPRESENTATION OF THE PROGRAM ON CARDS. PAPER TAPE OR MAGNETIC TAPE. +COMMENTS: +SOURCE LANGUAGE: META-SYMBOL. SIZE: 1019 DECIMAL. CONFlGURATION: ANY XDS 900 SERIES COMPUTER WITH AT LEAST 4K WORDS OF MEMORY AND A CARD READER, OR PAPER TAPE READER, OR MAGNETIC TAPE UNIT AND CARD PUNCH OR PAPER TAPE PUNCH OR MAGNETIC TAPE UNIT. BINARY ALSO AVAILABLE ON MONARCH SYSTEM TAPES. + + +; usage: do recon file +; The program will hang waiting for typewriter input command specifying +; devices. +; +; Type ^ followed by two characters to specify input and +; output devices. Characters may be C, P or M, to specify +; card, paper tape or magnetic tape. Type / to restart entire +; command to correct an error. +; +; Magnetic tape output is on mt2. To list output on mag tape 2; use +; sds_listtape mt2. +; +; Program returns to 1113 for another ^command. +; +; For example, tyoe ^CMc/r - input from card reader, output on mt2 +; +; Test with: +; do recon 850644-44 +; type: ^CM +; + diff --git a/850647/recon b/850647/recon new file mode 100644 index 0000000..8e99854 --- /dev/null +++ b/850647/recon @@ -0,0 +1,36 @@ +; recon - command file to translate encoded to symbolic +; using 850647-84 +; +; +; usage: do recon file +; The program will hang waiting for typewriter input specifying +; devices. +; Type ^(057) followed by two characters to specify first input and +; second, output device. Characters may be C, P or M, to specify +; card, paper tape or magnetic tape. Restart entire command by +; typing / to correct error. +; +; Magnetic tape output is on mt2 +; +; For example, tyoe ^CMc/r - input from card reader, output on mt2 +; +; Test with: +; do recon 850644-44 +; type: ^CM +; +; Program returns to 1113 for another ^command +; To list output on mag tape 2; listtape mt2 + + +set log /users/admin/sds/simlog +set debug /users/admin/sds/simdebug + +! cat 850647/850647-84 %1 > bootdeck +att cr bootdeck +att cp card-punch +att mt2 mt2 + +set cpu history=20000 +boot cr + + diff --git a/850648/.DS_Store b/850648/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..5008ddfcf53c02e82d7eee2e57c38e5672ef89f6 GIT binary patch literal 6148 zcmeH~Jr2S!425mzP>H1@V-^m;4Wg<&0T*E43hX&L&p$$qDprKhvt+--jT7}7np#A3 zem<@ulZcFPQ@L2!n>{z**++&mCkOWA81W14cNZlEfg7;MkzE(HCqgga^y>{tEnwC%0;vJ&^%eQ zLs35+`xjp>T0H1@V-^m;4Wg<&0T*E43hX&L&p$$qDprKhvt+--jT7}7np#A3 zem<@ulZcFPQ@L2!n>{z**++&mCkOWA81W14cNZlEfg7;MkzE(HCqgga^y>{tEnwC%0;vJ&^%eQ zLs35+`xjp>T0@ p4RdX1@b#@1k@*#p4p;)81X @uERI81X Xu  pu  huu8 ,**z[*n2vF4uJ&vdn^n@FI81Xv^ I4uJ&vdnhs>p Rn^v*mJ4vvCJv,*&EJ*uJa Xv8I81XLX7LX77^I81XO  pv8*I81XOp78Opp@7g) aL,ma *kRm m sJh2&#g RIQah]aaX@CC8aX@Ib%4Ib%I@LIb%IJIb%4hIb%h #pp,@Ib%@>u@R#C@%FF&@ p@Ia)h@C@y8@CT@&dF& J4^FE JLLy*E @&*FOQCX@R^CI*%E@ 8XW Q@R#CI@@&FFE1p@XCXa,@C@ @v4@d2bgppTQsQp)k8&)T*pu*v%2sp7sp&)p%Tp)&)Tpv1s)%2)pQTT)kup@Iakh@RkC @@%dF/Wp b &^@CJvEJ,2^F4uJg^@FCJv,vX&dFpp b &^F4uJ& J*uJ&FbF4uJ&gFW@J4 4 b@ XX@v@v#g p8@y@p8@yup@I*a,p@R^Cp@gFs  L bE @gRF1@JL *@  n@k1@@ImXCXQ2b@@mC[ @g^F7@FF8| ]&4=&FFFFFF[*1bd&m Lu&pF1@4 g@ 2O @ XX]@ @zup@IQanh@RmC@;hC,12akh@RuCE @&*F; OuFF kpI42J&*n>^ J L@C@ ^QhLL*ppLC2hp@nXap1p*L@ X#hL J#8@EpLCbhp]Cp2*L@ ppL%J#@ubCI2hpgap2h*L@ & J>8hCL/d*aps ky@ R L;J>EbCR2/dLaps4ky@ XF J>FXzCX2/d@)apvpky@ [#h pJ>IzC2/duJp7Xky@ & 8J>@L@C@ ^ahL @ ^1hL@ C*, =@J4 @ @L=#v@ IFCp* @pL=#vb@k@L>p @@pT*J2 @R* pJb2 @ s4@ I8@ d,IFCp* @@RL@s>@ LL@  RCO8@dX @ @R sz@@R s>@ L@COR= @RQ pJbpCbLCOR=ha@ JpCO,FbCX@p LEJdb@h@*hLh,bCX@phL=@@R^@@RQ pJbp@#@L @C@@R4 s>@ IFC8@)p@dXL>@C>X1LE @E@s8@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@W%#@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F  @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/850649/850649-84 b/850649/850649-84 new file mode 100644 index 0000000..f3721a0 --- /dev/null +++ b/850649/850649-84 @@ -0,0 +1 @@ +@CC@@@F@@C@g@p@C@Ch@Fp@RF8@Cp@F@@ @@ @C@F@^F@R@@@XF@C @@@@@@@@@@@@@@@X@@O@Ch@@X @WEh@@@@O@^F@@EF@ h@@pCh@Ch@Ep@Fp@Eh@RE @Ch@Cp@@CCT@|@F@@sC@8@@QFEX@C@@ 8@FCh@@Fp@L8@@h@@@@Ch@Cp@4@EEh@EX@@ C,@EF@EF8@E@@X \ No newline at end of file diff --git a/850649/850649.si b/850649/850649.si new file mode 100644 index 0000000000000000000000000000000000000000..8f6262d148b5053023c6727104e18bcb2c775065 GIT binary patch literal 1782 zcmd^8%TmHX5bSflB4v3|N&*;y#`0hk3OqRM{JV*G5trt9er)6Dx|5YE*l2y97=SWMhWOkw#}7Cr-Rfb-?Mn=bEfe?Axr9~ zZ_C%)5r+Y$8-YEY+FsjXfOWh%4|jEiWVYvpYzYvsaH-?ESHM5{Z4y29lEsA#JD9ky zgFQ9_c{OgN90bcy{5c%fjK&cGOFXbE=3$d%`YP*+Yr$nV`NZuZEK59D7ts|yb?0k9 z@h^KwDD~t(S{Pss+^*lKIF~9b0cJ85lvi-#*<45iRJ@jp5dk1vEe%PjPtUj+Xn=DUo6Ty% z-jH;dArF8>nGr5i3_EBp=AfJ{jGWZ9E4{$#-TN-=9tuOHhJb92qYF&tdoFb>AGZBp Yd-McMTmQ>FajmB0Z9Jc}T7O{p08+ec_W%F@ literal 0 HcmV?d00001 diff --git a/850649/READ.ME b/850649/READ.ME new file mode 100644 index 0000000..3861a0e --- /dev/null +++ b/850649/READ.ME @@ -0,0 +1 @@ +850649AA B3 9-SERIES BINARY INPUT-TWO CARD LOADER \ No newline at end of file diff --git a/850657/850657-34 b/850657/850657-34 new file mode 100644 index 0000000..35b1849 --- /dev/null +++ b/850657/850657-34 @@ -0,0 +1 @@ +b@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@@b@@@@J@ I@@@@J@  Q@ @@a@ d@d@a@I@ @@  a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@@b@@@@J@ I@@@@ I@  @@a@ d@d@a@I@ @@J@ I@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@@b@@@@J@ I@@@@   @@  @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@I@d@I@@@@@Q@ d@@@@@@@@@@@  @@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@J@I@d@@@@@@@@@@@  @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@ @@@@@@@@@@I@ J@I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@ @@@@@@@@@@I@ J@I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ Q@I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@ @@@@@@@@@@J@I@d@I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ J@I@@@@@@a@Q@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@  I@ d@Q@  @@J@  Q@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Q@ @@@@@@@@@@  @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@a@ d@d@a@I@ @@I@ J@I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@J@I@d@@@@@@@@@@@  d@   @@@I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@@@@@@@@@@@b@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@ @@@@@@@@@@a@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ J@I@@@@@@Q@ @@@@@@@@@@  @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@  I@ d@Q@  @@a@ d@d@a@I@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Q@ d@@@@@@@@@@@a@J@I@d@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@J@ I@@@I@ J@I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@J@I@d@@@@@@@@@@@  d@   @@@I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@d@ @@@@@@@@@@a@d@ @ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@@@@@@@@@@@b@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Q@ @@@@@@@@@@  @ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Q@ d@@@@@@@@@@@a@J@I@d@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@J@I@d@@@@@@@@@@@  d@   @@@I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@d@ @@@@@@@@@@a@d@ @ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@@@@@@@@@@@b@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@b@I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@ @@@@@@@@@@   @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Q@ d@@@@@@@@@@@  @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@J@I@d@@@@@@@@@@@a@d@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ I@@@b@ I@@@@@@I@ J@I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@ @@@@@@@@@@b @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@J@R@J@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@ I@@@@@@ a@ @@b@ @@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@ @@@@@@@@@@b@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@J@R@J@@@@@@@@@@@@@ @@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@ I@@@@@@ a@ @@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@ @@@@@@@@@@b@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@Q@ @@@@@@@@@@  @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@  @@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@J@ Q@ a@I@@@ a@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@  d@   @@@I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@ I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@ @@@@@@@@@@J@I@d@I@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@@@@@@@@@@@b@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@a@ Q@ I@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@ @@@@@@@@@@b@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ I@@@b@ I@@@@@@I@ J@I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@ @@@@@@@@@@b @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@J@R@J@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@ I@@@@@@ a@ @@b@ @@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@ @@@@@@@@@@b@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@a@d@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@J@R@@@@@@@@@@@a@d@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@ @@@@@@@@@@b @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@ @@@@@@@@@@a@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ a@ @@ I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@ @@@@@@@@@@I@d@I@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@  @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@J@R@@@@@@@@@@@  @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@I@ J@I@@@ @@  @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@ @@@@@@@@@@b @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@ @@@@@@@@@@a@ @ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@ Q@I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@ @@@@@@@@@@J@I@d@I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@I@d@I@ @@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@a@ d@  @@a@d@ @@  d@  @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Q@ @@@@@@@@@@  @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Q@ d@@@@@@@@@@@  @ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@J@I@d@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Q@ d@@@@@@@@@@@  d@   @@@I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@d@ @@@@@@@@@@@b@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Q@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@J@R@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@ @@@@@@@@@@b @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@ @@@@@@@@@@b@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@J@I@b@@@@@@@@@@@  d@   @@@I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@@@@@@@@@@@I@d@I@  @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@@@@@@@@@@@I@d@I@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@   @@Q@ @@@@@@@@@@  @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@J@R@J@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@a@d@ @@ d@ @@ d@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@ @@@@@@@@@@b@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@a@ @@@@@@@@@I@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Q@ b@@@@@@@@@@@ J@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@  @@@@@@@@@@I@  @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Q@ d@@@@@@@@@@@I@  @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@J@R@ @@@@@@@@@@  d@   @@@I@@@@@@@@@@@@@@@@@@@@@a@ d@ @@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@ @@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@@@@@@@@@@@b@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@ @@@@@@@@@@I@d@I@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@  @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@J@R@@@@@@@@@@@  @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@I@ J@I@@@ @@  @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@ @@@@@@@@@@b @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@ @@@@@@@@@@   @@@@@@@@@@@@@@@@@@@@@@@@@@@@ d@ @@ I@@@a@d@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@I@@@@@@@@@@I@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@  @@ J@J@d@  @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Q@ @@@@@@@@@@  @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@ J@ @ @@I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@@@@@@@@@@@b@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@ @@@@@@@@@@a@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Q@ b@@@@@@@@@@@  d@   @@@I@@@@@@@@@@@@@@@@@@@@@ I@@@ @@ J@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@I@@@@@@@@@@I@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Q@ @@@@@@@@@@  @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@ J@ @ @@I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@@@@@@@@@@@b@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@ @@@@@@@@@@a@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@@a@d@ @@ a@ @@J@  a@ @@ I@  a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@@ I@ @@b@@@b@ @@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@@  I@@@b@@@b@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@@J@ I@@@  d@  @@ @@d@@@   J@I@ @@b@   @@J@I@d@I@  @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@@J@ I@@@b@@@@I@@@J@I@@@I@ J@I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@Q@ @@@@@@@@@@  @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@J@I@d@@@@@@@@@@@  d@   @@@I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@@@@@@@@@@@b@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@Q@ @@@@@@@@@@  @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@J@I@@@@@@@@@@@a@d@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@J@R@J@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@ I@@@@@@ a@ @@b@ @@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@ @@@@@@@@@@b@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@J@R@J@@@@@@@@@@@@@ @@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@ I@@@@@@ a@ @@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@ @@@@@@@@@@b@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@Q@ @@@@@@@@@@  @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@  @@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@J@ Q@ a@I@@@ a@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@  d@   @@@I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@@@@@@@@@@@b@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@ @@@@@@@@@@b@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@J@R@J@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@ I@@@@@@ a@ @@b@ @@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@ @@@@@@@@@@b@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@a@d@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@J@R@@@@@@@@@@@a@d@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@ @@@@@@@@@@b @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@ @@@@@@@@@@J@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@ @@@@@@@@@@b @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@ @@@@@@@@@@J@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ Q@I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@ @@@@@@@@@@J@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@  @ @@@@@@@@ a@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@  @@@@@@@@@ a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@  @@@@@@@@@ a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@  @@@@@@@@ a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@  @@@@@@@@ a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@  @@@@@@@@ a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@  @@ @@@@@@ a@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@@@@@@@@@@ a@@@@@@@@@@@@b@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@d@ @@@@@@a@I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@d@ @ @@@@a@I@@@@@@@@@@@@@ @@ @@ @@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@J@I@d@@@@@a@I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ J@@@@@@@a@I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ J@ @@@@@@@a@I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@a@ @@@@@@@@@@@ I   @@@@a@ Q@ I@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@a@I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ J@ @@@@@@@a@I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@a@ @@@@@@@@@@@I   @@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@a@I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@d@ @@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@  @@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@  @@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ d@  @@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@  @@@@@@@@@@a@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/850657/850657.bo b/850657/850657.bo new file mode 100644 index 0000000..6e3f2f3 --- /dev/null +++ b/850657/850657.bo @@ -0,0 +1 @@ +]d@@pCCh@@@@@@ @@@@@@@s@Ch,@J@@WphhEhF@O=ph,EhF@T@uW>@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]Cy@X@p@Ch@@@&@@] &@@@F&Q,@@@F@#@Q @@@@h@@@n&@@,FEXzmW@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]yX@p@@2@@aX@yFEX@@7@@@@@@@@@@@@@p=ChTWp,EhFz@FFTEXT@@@>p,@;@R@E@yk;=@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]nF@I@FhCWpWW@,@ X@yFEX@W@@aQO@@7Wh,@a>QTk;;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]W @@7h,#@C8&@g &@)@F&Q,m@Q @@@p&@2FEX@8@kk@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]@s8@@;@%@@@@@b|;z4p,@@@@@C****u)8JJ&dg#s********@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]s[@u)8J))&)****@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%4@@7 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/850657/850657.lo b/850657/850657.lo new file mode 100644 index 0000000..dc9fd02 --- /dev/null +++ b/850657/850657.lo @@ -0,0 +1,172 @@ + + 1 * + 2 * BP1 SET- SINGLE CHARACTER MODE. + 3 * BP2 SET- ENTIRE CHARACTER SET. + 4 * BP3 SET- VERIFY MODE + 5 * + 00000 0 76 00203 6 START LDA DM64 + 00001 0 35 00226 7 STA DONE + 00002 0 40 20400 8 BPT 1 + 00003 0 01 00010 9 BRU TEST1 + 00004 0 40 20200 10 BPT 2 + 00005 0 01 00015 11 BRU TEST2 + 00006 0 00 00000 12 HLT + 00007 0 01 00000 13 BRU START + 14 * + 00010 0 46 30003 15 TEST1 CLR INITIALIZE SINGLE + 00011 0 71 00202 16 LDX DM20 CHARACTER TEST + 00012 2 35 00254 17 STA IMAGE+20,2 + 00013 0 41 00012 18 BRX *-1 + 00014 0 01 00027 19 BRU COM1 + 20 * + 00015 0 71 00201 21 TEST2 LDX DM16 INITIALIZE CHARACTER + 00016 0 76 00207 22 LDA CSTAR SET TEST + 00017 2 35 00250 23 STA IMAGE+16,2 + 00020 0 55 00206 24 ADD CADD4 + 00021 0 41 00017 25 BRX *-2 + 00022 0 71 00175 26 LDX DM4 + 00023 0 76 00207 27 LDA CSTAR + 00024 2 35 00254 28 STA IMAGE+20,2 + 00025 0 55 00206 29 ADD CADD4 + 00026 0 41 00024 30 BRX *-2 + 31 * + 00027 0 40 20100 32 COM1 BPT 3 + 00030 0 01 00110 33 BRU VERIFY + 00031 0 76 00200 34 LDA DM12 + 00032 0 35 00225 35 STA CARD + 00033 0 40 20200 36 BPT 2 OMIT BIT 13-TEST 2 + 00034 0 01 00037 37 BRU *+3 + 00035 0 40 12046 38 SKS 12046 BIT 13-PUNCH BUF RDY + 00036 0 01 00035 39 BRU *-1 + 00037 0 40 14046 40 SKS 14046 BIT 12-PUNCH RDY + 00040 0 01 00037 41 BRU *-1 + 00041 0 71 00202 42 COM2 LDX DM20 + 00042 0 02 00646 43 EOM 646 SELECT PUNCH + 00043 2 12 00254 44 MIW IMAGE+20,2 + 00044 0 40 20010 45 BETW + 00045 0 01 00006 46 BRU START+6 + 00046 0 41 00043 47 BRX *-3 + 00047 0 02 14000 48 TOPW COMPLETE ROW + 00050 0 40 21000 49 BRTW + 00051 0 01 00050 50 BRU *-1 + 00052 0 40 20200 51 BPT 2 OMIT BIT 13-TEST 2 + 00053 0 01 00056 52 BRU *+3 + 00054 0 40 12046 53 SKS 12046 BIT 13-PUNCH BUF RDY + 00055 0 01 00054 54 BRU *-1 + 00056 0 61 00225 55 MIN CARD + 00057 0 53 00225 56 SKN CARD + 00060 0 01 00062 57 BRU *+2 + 00061 0 01 00041 58 BRU COM2 PUNCH NEXT ROW + 00062 0 43 00071 59 BRM ROTATE + 00063 0 61 00226 60 MIN DONE + 00064 0 53 00226 61 SKN DONE TEST FOR DONE + 00065 0 01 00067 62 BRU *+2 + 00066 0 01 00031 63 BRU COM1+2 + 00067 0 00 00000 64 COM5 HLT + 00070 0 01 00000 65 BRU START + 66 * + 00071 0 00 00000 67 ROTATE PZE CHANGE CARD IMAGE + 00072 0 71 00202 68 LDX DM20 + 00073 0 76 00175 69 LDA DM4 + 00074 0 35 00224 70 STA X2 + 00075 2 76 00254 71 LDA IMAGE+20,2 + 00076 0 55 00204 72 ADD 1B5 + 00077 0 67 20006 73 LCY 6 + 00100 0 61 00224 74 MIN X2 + 00101 0 53 00224 75 SKN X2 + 00102 0 01 00104 76 BRU *+2 + 00103 0 01 00076 77 BRU *-5 + 00104 2 36 00254 78 STB IMAGE+20,2 + 00105 0 41 00073 79 BRX ROTATE+2 + 00106 0 02 20001 80 ROV + 00107 0 51 00071 81 BRR ROTATE + 00110 0 71 00202 82 VERIFY LDX DM20 + 00111 0 40 12006 83 SKS 12006 CARD READER READY + 00112 0 01 00111 84 BRU *-1 + 00113 0 02 02606 85 RCDW 1,4 + 00114 0 75 00210 86 LDB ONES + 00115 0 32 00227 87 WIM TEMP + 00116 0 76 00227 88 LDA TEMP + 00117 2 70 00254 89 SKM IMAGE+20,2 COMPARE WORD + 00120 0 01 00134 90 BRU ERROR + 00121 0 41 00115 91 BRX *-4 + 00122 0 43 00071 92 BRM ROTATE + 00123 0 61 00226 93 MIN DONE + 00124 0 53 00226 94 SKN DONE TEST FOR DONE + 00125 0 01 00127 95 BRU *+2 + 00126 0 01 00110 96 BRU VERIFY READ NEXT CARD + 00127 0 02 02641 97 TYPW 1,4 DONE MESSAGE + 00130 0 71 00177 98 LDX DM6 + 00131 2 12 00217 99 MIW MSG1+6,2 + 00132 0 41 00131 100 BRX *-1 + 00133 0 01 00067 101 BRU COM5 + 00134 2 75 00254 102 ERROR LDB IMAGE+20,2 PRINT ERROR MSG + 00135 0 02 02641 103 TYPW 1,4 + 00136 0 71 00176 104 LDX DM5 + 00137 2 12 00224 105 MIW MSG2+5,2 + 00140 0 41 00137 106 BRX *-1 + 00141 0 01 00067 107 BRU COM5 + 108 * + 109 * CARD PUNCH SERVICE ROUTINE. + 110 * ENTER BY BRU 342 + 111 * EXIT BY BRU 200 + 112 * SET IMAGE IN A REGISTER BEFORE STARTING + 113 * SET BP1 TO STOP TEST + 114 * + 00142 0 71 00202 115 SERV LDX DM20 + 00143 2 35 00254 116 STA IMAGE+20,2 + 00144 0 41 00143 117 BRX *-1 + 00145 0 71 00200 118 SERV1 LDX DM12 + 00146 0 37 00225 119 STX CARD + 00147 0 40 12046 120 SKS 12046 BIT 13-PUNCH BUF RDY + 00150 0 01 00147 121 BRU *-1 + 00151 0 40 14046 122 SKS 14046 BIT 12-PUNCH RDY + 00152 0 01 00151 123 BRU *-1 + 00153 0 71 00202 124 SERV2 LDX DM20 + 00154 0 02 00646 125 EOM 646 SELECT PUNCH + 00155 2 12 00254 126 MIW IMAGE+20,2 + 00156 0 41 00155 127 BRX *-1 + 00157 0 02 14000 128 TOPW + 00160 0 40 21000 129 BRTW + 00161 0 01 00160 130 BRU *-1 + 00162 0 40 12046 131 SKS 12046 BIT 13-PUNCH BUF RDY + 00163 0 01 00162 132 BRU *-1 + 00164 0 61 00225 133 MIN CARD + 00165 0 53 00225 134 SKN CARD + 00166 0 01 00170 135 BRU *+2 + 00167 0 01 00153 136 BRU SERV2 + 00170 0 40 20400 137 BPT 1 + 00171 0 01 00173 138 BRU *+2 + 00172 0 01 00145 139 BRU SERV1 + 00173 0 00 00000 140 HLT + 00174 0 01 00142 141 BRU SERV + 142 * + 00175 77777774 143 DM4 DEC -4 + 00176 77777773 144 DM5 DEC -5 + 00177 77777772 145 DM6 DEC -6 + 00200 77777764 146 DM12 DEC -12 + 00201 77777760 147 DM16 DEC -16 + 00202 77777754 148 DM20 DEC -20 + 00203 77777700 149 DM64 DEC -64 + 00204 01000000 150 1B5 DEC 1B5 + 00205 01010101 151 CADD OCT 01010101 + 00206 04040404 152 CADD4 OCT 04040404 + 00207 00010203 153 CSTAR OCT 00010203 + 00210 77777777 154 ONES OCT 77777777 + 00211 52525252 155 MSG1 OCT 52525252 + 00212 65255131 156 BCI 4,VERIFY COMPLETE + 00213 26701212 + 00214 23464447 + 00215 43256325 + 00216 52525252 157 OCT 52525252 + 00217 52525252 158 MSG2 OCT 52525252 + 00220 65255131 159 BCI 3,VERIFY ERROR + 00221 26701225 + 00222 51514651 + 00223 52525252 160 OCT 52525252 + 00224 0 00 00000 161 X2 PZE + 00225 0 00 00000 162 CARD PZE + 00226 0 00 00000 163 DONE PZE + 00227 0 00 00000 164 TEMP PZE + 00230 0 00 00000 165 IMAGE PZE + 00000067 166 END COM5 \ No newline at end of file diff --git a/850657/READ.ME b/850657/READ.ME new file mode 100644 index 0000000..a6de8b4 --- /dev/null +++ b/850657/READ.ME @@ -0,0 +1,13 @@ +850657 9-SERIES CARD PUNCH TEST PROGRAM PACKAGE -9156 +ABSTRACT: +TO PROVIDE AN ACCFPTANCE TEST FOR THE XDS MODEL 9156 CARD PUNCH SYSTEM. +COMMENTS: +SIZE 172 DECIMAL. SOURCE LANGUAGE: META-SYMBOL. CONFIGURATION: ANY XDS 920/930 OR 910/925 WITH A TYPEWRITER, AND XDS MODEL 9151 OR 9152 CARD READER ON CHANNEL A (W). INTERLACE IS NOT USED. + +Use the command file symbol/sym to assemble the bcd deck at 850657-34 and create 850657.bo and 850657.lo. + +run the test using command file cptst. + + BP1 SET- SINGLE CHARACTER MODE. + BP2 SET- ENTIRE CHARACTER SET. + BP3 SET- VERIFY MODE diff --git a/850657/cptst b/850657/cptst new file mode 100644 index 0000000..e3af0d0 --- /dev/null +++ b/850657/cptst @@ -0,0 +1,27 @@ +; command file to run punch test +; +set log /users/admin/sds/simlog +set debug /users/admin/sds/simdebug + +; set bpt 1 to boot from cards +; this will load 850657.bo at 30000 and halt at 30070 +; +; set bpt 1 for single char test +; this will write 64 cards to cp +; set bpt 2 for character set test after punching, +; +; to verify after running the test, detach cp +; and attach card-punch to cr +; set bpt 3 and continue; + +! cat 850648/850648-84 symbol/section-2a.bo 850657/850657.bo card-punch >bootdeck + +set cpu history=700 + +! rm card-punch +att cr bootdeck +att cp card-punch + +; set bpt1 to boot from card re +dep bpt1 1 +boot cr diff --git a/850816/.DS_Store b/850816/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..5008ddfcf53c02e82d7eee2e57c38e5672ef89f6 GIT binary patch literal 6148 zcmeH~Jr2S!425mzP>H1@V-^m;4Wg<&0T*E43hX&L&p$$qDprKhvt+--jT7}7np#A3 zem<@ulZcFPQ@L2!n>{z**++&mCkOWA81W14cNZlEfg7;MkzE(HCqgga^y>{tEnwC%0;vJ&^%eQ zLs35+`xjp>T0I,,E,FQ&)WFOvdEFW&Ras8Oh4@F@@@%#sCR@FO2s#JF%dJFR#dJ@OyyQ&@@@@@@@ OyyT&@F@@@@@@Oyy&@F@@@@@@Oyyg&@@@@@@@@@@@@@@@@@@@@gC@@@@Oyy#&@CE@@@@@@Oyy)&@EE@@@@@@yy2&@EF@@@@@@WdQWO)2OR4TQsQ@E@@@@b@@@@@@LJF@E;)Q2sXQ)O#%%QdO%s &g J@R@@@Os88O&gT&@@@@@@@@@@@@@@@@@@gWL@@@@@@s8gvOdvs&gvR)svOR)4EkE OR))2bdQ&@@F@@@@@O2bdOd%2bWQ&@@@@@@O2bW2b%Q&@@@@@@O2b%O7Q&@@@@@@O2s7 ssO#TQO2sy&@@@@@@O#@@@@@@@@@@@@@@@@g8h)O2sQ 22O&g&@F@@@@@W)4)OR)dO&QOQ7&@C@@@@@O#T7O%Q&@C@@@@@O&)E OQTTO7dQ&@@@@@@E7dQOQTd&@E@@@@@O2b&@E@@@@@O2sRO#TRW2bQ@@@@@@@@@@@@@@@@g W2bQ2bQ&@F@@@@@O2b)&@F@@@@@OdTb@F@@@@@@O%&gO#Qb@F@@EO#Rb@E@@EO))&@F@@@@@))7&@E@@@@@@O7O#2XJ))s&@E@@@@@@Ws@@@@@@@@@@@@@@@@g*FOgyO)2XO2bQJFFO7QROs)&@@@@@@@&@@@@@@@&@C@@@@@@&@F@@@@@@@&@@@@@@@WsX[2s&g2vW%Tg&WX&#O[sX[sX)Q)TOb2v[sXE[@@@@@@@@@@@@@@@@gEsXORgsFC[sXCOQRsd%[sXELbQ[sXFW%&&T QW#T&%sWR&4%T QW#T2%W[Qg&2sWg)WQg&2s2%EWg))d%28%Wg)CO24RWg)E2%@@@@@@@@@@@@@@@@g[/W2s)vT[&d%sWg)[2d&#O%TWR#Q%b#v@y)2XFJ@@@@@OR)7O74b@C@@@@@R@Cd&TW2s&%g@FIWgQ)J@OgJJCOg[dQ2QWWT#sQOd@@@@@@@@@@@@@@@@gm2FOd2EOd2Od2COd2FEOd2bW)4#)O)#FO)#O)#CO)# QC QO)#E@O2dO)#FO&%&)dWu)sOTWsWh4Q#W&#&%O)gsW##WOQ&gO#s) gs[#gQ)%O#g@@@@@@@@@@@@@@@@ggvsOQ2s[)gQ)%Os%Od&gW&ddQd 2dW#v@OTTOT2yOTOTb@@@@@OTOTJ QOTFOTCOTEO2dWs8g2O2dO2dC2d@F@@ 2b2dF%TdW2s@@@@@@@@@@@@@@@@g *8gOs&s2dFWT2sW2dCC)TW2dCW2dCEWRsQRR@WRQ2Qb@@F@@@@@[2dCEQ@&@F@@@@@@Wv&)T2d&u%TRF[%TR#b2dgQ)QW2dW2dC vJ@@@@@@@@@@@@@@@@guyJ)TWR#bXTWsdgs)TWT2v2W%W)Qg%4dR)Q %TO7gb%T)TW2v%T)TE%%sW)TEQOT4gQT2sW)TFQ)TF)T)T #Q7%Qd&@F@F@F@F@@@@@@@@@@@@@@@@g^@[d&u%Qd&@@E@@@@&@@@@@@@W)TIQQER2%TW)TIR)TIOdQT[g)&2vb@@@@@@[RWR#bW)T@WR#bQT%TQTW)TW)TW2s2X&@@@@@@@@[)TQb@@@@@@@@@@@@@@@@@@@@g8z@@@)TW)Tb@CJE)T)T)T)ET)ETC)ET)ETE)ETF)ET)TOuQ))Td&TR[)TW)FT)TJC 2a &W)TQWRad@JC@)Q%T@@@@@@@@@@@@@@@@gJ%2sW%T7W)@TOQOgs)28%T28%28%2O28%[2gQ#OQW)ITW)24#sW)CIT22vW)CIT[%Tg)WW)@T[&gg)&2Qugad@W&gg)C&@@@@@@@W&gg)s2@@@@@@@@@@@@@@@@gI7Wad@W&gg)O)2s&g&W&ad@W&gQ)8JW&gQ)FW&gQ)W&gQ)W&gQ)W&gQ)C[%QRQTT&@@@@@@W&gQ)[&T&4sW&gQ)EWd&TQ[#QR)JWd&TQWd&TQW#R)@@@@@@@@@@@@@@@@g1/TyWd&TQWd&TQEWd&TQCsQR#v[Q22W%Wd&TQFuQ)uQ)uQ)uQ)CJIb@@@@@@@[R#bgQ)%[#QRT[QTR#%bW#RTCW#RT[%s&4sW#RTW#R#2#O#vI2v@@@@@@@@@@@@@@@@g,ys[g&2QTTR@@@QT2OQFW%QTTJQE#XvQsdu%b@@@@@2s22s22s2CJCOQ@2s2RR%QWRWRWdsdgT%2g&@@@@@@@&@F@@@@@R%Qb@F@@@@@@@@@@@@@@@@ghC&@@E@@@@OQE%TR%TRC%TRE%TR%TR%TR%s&g2vW&2vW&g2v^@@@@@&@&gW&Os2Ws2vWW&2vW&22WW&2vW4aad@W&g#2[&g#2[&g#2@@@@@@@@@@@@@@@@g%E[&g#2C[&g#2W#Tad@W))[&g#2[&g#2[&g#2FW4aadW22ad@&gsXW&gsXCW&gsXW&gsXFW%T)W&gsXW&gsXW2s)W&gsXW&gsXEW&gsXW&gsXI&gWaa@@@@@@@@@@@@@@@@g2d@W&gQ22W&gQ2C&@F@@@@@@W2sad@W&gQ2W&gQ2JCTO2ssO7XW&g&)JCC&g&gCs#JC&gJCE&g R)&gEWvXad@&gFW&gCW24ad@Wgyad&W@@@@@@@@@@@@@@@@g^42v&g&g&gIWagad@b@@@@@@@W&g[2g#ad@[TQ#%QJCFW&gWagadJCW&gWQ#adW&g))WR%Q&g4%&g4&g4C&g4&g4[#T%ad@O%WW&gR%JF@@@@@@@@@@@@@@@@gW]&gRF7g&%&@@@@@@gadgad&gRC&gR&gR&gR&gREW&gad@[&gadW#TadW#vXb QO#vCO#vO#vO#vO#vEO#vF#vFJIOQO#vO#v#v#v#v@@@@@@@@@@@@@@@@gICWQ#ad@O&)W&gsQR s2#vE 2%2sbaQT%dWQT%dsQT%O)8O2%O2%O2%CQg)O2%OTsO2%EO2%FO2%O2%O2%I2%2%C[&#&%2%)&g2%EW2%EQd@@@@@@@@@@@@@@@@g&1&g2%F#22%W2%Q2%Wh4u2%I2%C@2%C2%C2%C2%CEJE[dg#2%C2%CIO&g2%W2%RW2%Q2%F2%2%@[R#bsQR^@F@F@F@@F@@@@@@@@@@@@@@@@@g2F@@F@2%IO2QTR2%QW2%QW2s)v&@@@@@@@2s)7)ITO%s)IT)ITCW)IT)ITF)ITW%s2XW)ITEQ)ITE#QW%Tg)W%Tg)W%Tg)CW%Tg)EW%Tg)[)#&4s@@@@@@@@@@@@@@@@ggW%Tg)FW%Tg)b@@@@@@@&@C@E@@@@b@@@@@@@&@EFEOX#s[)2s)sW&#&TO&d@CF@W%Tg)I %%%s2FOQI%s2%s2%s2%s2C%s2%s2E%s2&@@@@@@@@@@@@@@@@@@@@@@gCu&@F@E@@@@[%4dsQRR@F@OO&E@O&O&b@@@@@@&F@O&CO&O&EO&F&&&C&Ib@C@@@@@@Od)W&@E@@@@@@@&@C@@@@@@@&O@@@@@@@@@@@@@@@@gn=&b@@@@@@@O&IO&&&&&@F@@@@@@&&C&OQCOdu%vT2&Ras)#&Odu#&@@CE@@@@XbOQWXb@C[2gQ2)gsvRsv))R@@@@@@@@@@@@@@@@gu@T2vR&@JI)QTWg4%XO2b2@@F[g4%X@@@@@@CFFJ@@@@@Wv)s&@C@@@@@@Os2W&gR)bW&gRW[&g#gQ)W&gR)EW&gR)FW&gR)W&gR)W&gR@@@@@@@@@@@@@@@@gI)&@F@@@%y)y)2  C  E F[2s)d%[2s)dQaW)2sO2%Wdd%ddQa[[#Ts%[#TsaW#vsQR QIWRQ2RWRQ2^@@@OQC%4d%4dR@C@@&@@@@@@@@@@@@@@@@@@@gpa@@@@&@@@@@F@@&@@@@@@F@@&@@@@@@@&@@@@@@@&@@@@@@@@F@@@@E@@^@@@@&@@F@@@F&@@@@&@@@C&@F@@E&@@@b@C@@@@@@@@@@@@@@@@g[E@@E&@@C@@C&@@C@@C&@@C@@@C@&@@CC@@CC&@@F@@&@@@@Fb@@@C&@C@@@@@@&@@@@@@@@@@@@C@@@E@@@@@E@@@@@@@@@@@@@@@@@@@gR@@@@@@@@@@E@@@@@@@E@@@@@@@@@@@@@@@C@@@@@@@CF4a%Q@@@@C@C@@C@E@CRg%Q@@@@@@@@@@@@@@@@@@g g%Q@@@E@@EE@EE@EE@@C@@EC@@@@@@@E@@@@E@@@E2sQ[4%bTsWu)TsWQ)TsW2vTsWg)TsO2T7RuQ)Q@@@@@@@@@@@@@@@@gWuQ)Rg)WRuQ)gWQuQ)gOdgWg)XT[RW%RO42[RW%)gQ)[2sds2hOQ2%W4#R#bWR#&bdgTO42O4R2O)&g[2s)%WW4&)2[4#&dgTsgW2vT242gWTsgQ #OQ@@@@@@@@@@@@@@@@gv g#)Q#[%sW)R&&#&)2WRW%O2 224R7JC[g)&TJCIWQ))Q8JJQ#g#JC T&JOg#JE Q7JFWQ)#2JWg)XTRJORg#JIOR&7JE@JEsX%JER#@@@@@@@@@@@@@@@@g>g#JECOT7JEJEEJEFOTyJE2sdsJEQsJEIQs)dJF@O2Q7JFJFJFCR2JFRsJFERs)dJFFOdgO2R7JF[g)&TJFIW#QR#J@OJ[2vsXJWg#gTJ@@@@@@@@@@@@@@@@gpCWg)XTQJ2sgJFO#QJW4%s#JO#RO#WvX#JO#TJOgJC[#R)&bJFTygJIOu4#JI@42%QJIEWQ)2WJI[#R)QbJI[g)XTgJIIO#gT@@@@@@@@@@@@@@@@@@@g/z24R#@@C[T#Q)@O#&R@E[7g)Ts@FOR7g@I @[g)XTgWQg#gT[2g#2CW))&)OT7gFO2v#W&s&I&)@@@@@@@@@@@@@@@@gCFEO42%2vTgCWu)#2C42%RCC2gC[7s)%Q#CEg2CFCO#R#CI[7g)#2OQ7gOQ)8EO7sFg)&O&v%[2vT@@@@@@@@@@@@@@@@gk,2gIE@WQsgEWQs)dgE2Q7gECE)#gEFO%&sEWRsgEOQ%TEIWRs)dgF@ &)FdggFFC2R7gFFEWuQ#4FFW4%TF@@@@@@@@@@@@@@@@gzJ[g)W)QdFs)4FIWQ#2@[&)dQsCWW%&)O4&gE[T&sT&sF@s8gW&d2s42%42%TEWg)XT@@@@@@@@@@@@@@@@g4II@24RTdgQ)4#W)4#&% )#TsR%Td&gO))IW)gQ)O))CO))O))EO))FO))Q&gTsQg)&d%T2dO))W#gQ)#2WQg2s)&g 7 @@@@@@@@@@@@@@@@gJk7O))O))))@42 7C 7 7E 7FW2d 7 7 7IO7O7FO7O7O7EO7FO7O7WR%T[Qg2sO7IO7@O7O7CO#7s7s%sW)&dd%sR&&#Q@@@@@@@@@@@@@@@@gnO%#7s)%Q##g)&T4)R@E@@b@E@@b@F@@b@@@@@@R@F@@b@@@@@@RWRRWTO8ICO)CO)CO)I8C )O)Od%T ))g)#g)O)O)CW2@@@@@@@@@@@@@@@@g8s)WO)CO)CCO8FO)CFO#O)FQg# 8 8 8CO)CE )FO)O)C@)CEy )C ) )E ) )WQ#g#O)Fg#OQ7Q)#O)CRg#OR7O)@O)WR#g#T7W#R#2O@@@@@@@@@@@@@@@@gL)@O)O)O)CO)O)EO)O)IO)@O)O)O)CO)O)CI#QRW2vX888C888@8E8F8C8CC8CO8EO8CIdO@@@@@@@@@@@@@@@@gQ8WdO8E@WRWRO8O8FO8WRWO8C)CFyO8#8@C)EyO8CO8EO8#O8IEQ7Q7O8O)CyWQ)#O8FWRg#W)g)W)g)W)g)CW)@@@@@@@@@@@@@@@@g1g)W)g)E[)g)F[)g)O8FFO8FE[)g)O8F)y)@yO)y#C)yO8C)yO8IWT7O8IO8IO8IO2h#88@[#s)Q2sRW2sQ)s@@@@@@@@@@@@@@@@@gLW2s)s@W2s)s%W2s)sbWRQ22RW2s)sRW2s)s#W2s)sW2s)sdWRQ22&RaR@@@W2s)sW2s)sEW2s)sCW2s)sFW2s)sW2s)sOQR2Od&TOdQ7[Q)sQ%7g #%2h)sO&2O2@@@@@@@@@@@@@@@@7y %W%T&W%g4s[&4sg4sWQ)T@@@F@F@F@@@@Wg%Xs@F[g%Xs[g%XsQ[g%XsR@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g>*u2222222222222222222222222222p)WQ#W&#ppppppppppppppppp,%JyFIFF@p@&FFFFFFFFEd)W@@Fpppppppppppppppp,,,,,,,,,,,,,,,,,,,,,,,,,,,,,7b@@@@@@@@@@@@@@@@@g8uW [7vkh1ksQ8I*)y8IsJJ8|*42&=]JaR%4dR)p&p#s)Q#2,az;a@1 z|zy )dkaLm sIOF2&sg m)Jg&s %n[u|4E^  #[&R^ % gOQO *k=|IRL|v@@@@@@@@@@@@@@@@g1]L4;hC28WpQ%F]EXbC287p&]%EF]EC2yWpQI8=L)bC2y7pu,|*TT8%zC2zWpvL|*TT8%zds2z7pR%FTyhy)[CkR7@ b 2Ly)zh| )*k@@@@@@@@@@@@@@@@gF2L hydLEJ )*kR|pk2 ] ] ] ] ] ] ]@ d;R2 4;R2 R2T;Rs@b R22;R2O;2Oa2O O2@@Fa TR@C1XQh@CQ@d@Fb @4XW@@@@@@@@@@@@@@@@g/d@R @IQ@ % IQX  @@ @@4d4@ b@WO@ b]@@@444@ )mh@hd8@nd@hdzX,4@ )hmh@CRQ[T]T@Fkz8@ XEup@R @ b@ m@@@@@@@@@@@@@@@@@gh@ bv@CWXQh@CRQ[]Ek1C^]|^[@Fn|@@ XEaF @ aE8 @R p@L@y^@LXb@ 2@@upWW@ ,hnn@CRQ[&^@F4=L R@Ca^dR@CRQ[@@@@@@@@@@@@@@@@gp#k^p@Fnz>4R@CXQh@CW]@F,z>4R@7; ,4@ k@nn@CRQ[/@@Fnz8@ *EaF @ FE; Q@E| @[& k @7W)d@X  @@L z @4XWv@@@@@@@@@@@@@@@@gX@ ]2@W8@ nXnn@C]^&I@ ) ,4@ ]a444@ ]Q7WW@ )mh@|b@/4@=b@/8@C^1XQh@Cp=g@dCC W & EaF @ IEm@@ @@4d4@ 1@@@@@@@@@@@@@@@@@@@gm@n@@X/C@ pa@8@%X a@F,4@@v@@#| XX@% C@@8d@%p b @FOpnJ@@Xv& @@Xsp@%p b @F,|@@a8p@#| p@F@@@@@@@@@@@@@@@@g/=,|@@y8h@dX Q4b @@ysp@&T a@FRm @h ,I@T ,I@E ,L@p# @F@,|@@Opp@&L@g C@@Xsp@)@ p@h d@F@,|@@@@@@@@@@@@@@@@@g[@@vdI@@y@)L@) T@gX@% R@g@% Rd@g @% d@%p p@FRnL@@Q@XEu|,I]||vE*)LF=L|L)mJTuh@@@@@@@@@@@@@@@@gT|Tpn[@@Fyp@d4 O@@F@,|@@yv^@W)]v ILL&y&T4|vTT|u Fy|@hJEaz@%,@%p W@FW@,|@I>aXnL@@zL@dX )@@F]pa)&@@@@@@@@@@@@@@@@@gnJFQ n%@@&z@dX Qvvg@@Fz @#| d@gd W@FQ mR@p@#| p%hT4 Whhd@% X4@d8* @FQ nk@@Cz2mkJ8d%&)p28%sQ7p&u)#&v@@@@@@@@@@@@@@@@g= kzEzL@%d ,@@FQ n@Jna@m) @@Fb@nR,b &QWF]@n2F F IIWCCCCCCCCCCC%WOgOmgFXns@@;@g[T@%p &p@F@n*@@4;X@@@@@@@@@@@@@@@@@g2& mp@Fm)n@@FQ ny@@X;@g [h@dX np@FQ n|@JRam)J @FQ n@@Xv%@FW@n#@@zh@%d /@FQ n>@JL payCg [h@dX @@@@@@@@@@@@@@@@gh/p@F@n*@@[@vdI@@4;X@& mp@Fm)n@@FQ /@@X;@g[h@dX p @F^n*@@y;4@% Q4@&, p@FW@n4[d@& pp@F@n4[d@%p@@@@@@@@@@@@@@@@gLz p@FX/C@@Fyh@/py1vg@@F|T@% m@@Fm)1 @FQ n@@F;p@1y1vg@@F|@% m@@F]pa)1 @FQ n|@@7F&z@@F;p@g [T@d@@@@@@@@@@@@@@@@ghX & @FQ n|@L@n4@@7Fg@@Fyh@/@y4;@dX 2[hR|R@d@@@Fn W gQOO&IIWF&QWC[E On&EWJ8 2p@Fb@,@@@ @@@@@@@@@@@@@@@@g]L# @Fpn4[p@&T 4@%@ p@dX Qvvg@@[@v&g@@[4])p@F]@,mF7L@@#@L|@/@@[O|huap@F%@m)4@F/R@@I;L@m2sp&%2s)4@@@@@@@@@@@@@@@@gy sp%s&pRQ2pQ%Tp%T7p)&dpQ;)a4pz@@;Qms@@F@/T[,@h| @FXp@F@n4[p@gL mF7L@@4vg@@;Qms@@Fb@nQ@@s;Qms@@F@,uF7@@@@@@@@@@@@@@@@g@@T;Qms@@F@,uF7@@pT[]X@&T 4 @FR/@ # @Fpn4[p@h| @FXp@F@,mF7L@@s;Qms@@FTpn4[p@h| d@F%@m)4@F/R@@@@@@@@@@@@@@@@@@g4QI;@,&dgQ)2p)4#pdg#)2pvsXp&%2s)4sp2s)%Wupz@@%=@% /@@*;QmvJ8 )hpp#Tp%T7%p mFvQ@ d]@nv X@& mp@FW@n4[@@@@@@@@@@@@@@@@gJ]h@% mF4I@@*vd%@@@@X;Qmuah 7pppp#Tp%T7& ,p@Fn4[]h@dd up@Fn4[]1@%@ ;Qmd@F@n4[@gd mF7[@@F=d@7@a =@@@@@@@@@@@@@@@@@g&dd up@Fy&WIgO &R^ % FC %&&W[W gQOOC %&]hX8@,@ d@%p mF4LF Ev/&R^ FW g@g WdFp@/T[d@&h uF4L@@=@@@@@@@@@@@@@@@@gI8@R)1XIpdIp8@;QmC@@FQ /@@Xv%@F[p,v@@F>@@7paX=8@g @dX 8CbE uF4L@@=Qm21h2sp%T7% m#@@=Qmuah2sp@@@@@@@@@@@@@@@@g@QRQ28paX=Qmy@@F]@/T[@Q8uLd%a;L@& 4p@F/T[^@d4 mFv @@ =Qm2p@F^n4[p@dX 8pC E 7 @F n* X@%p *#@@I=4@8aX@@@@@@@@@@@@@@@@gn==Qm@F]p#T@@F>@RIpELIp *vdI@@;Qm#Qh#Tp%T7&h 7 @FW@/T[,@RL,|FE]pX=@,@ mFv @@;QmyJ8%s)pg |gg m#@@@@@@@@@@@@@@@@gL@@s=Qmu C% uF7@@X;Qm#@FXn7@@a=L@d4 mFv @@ =Qm2p@F^n4[^@dX y@FQ /b@@&@WE&L,IuEE, &vFJ]u^@n4[d@@@@@@@@@@@@@@@@g,m@I8>LEFT|| %@Tvg@@;Qm@Fm)RJ@g  QmCh|@h C@@FW@n4[]Xuay8;W;XpQ)psF;;p)2gs,8 z@@F@m)C@@FW@n4[]X@% @@@@@@@@@@@@@@@@gL4 mF7)@@vd4@@F>h@Q%|EL@@[zpO@@Fp@n4[^d@%p mF7Xk F F m)@F @FW@n4[],@& up@FQ /,@h@n4[@,@ mF7)@@7Fd4@@F@@@@@@@@@@@@@@@@gsJ>4@Q%,ELEp[@vdI@@;Qmvp@F@m)@FW@n4[]bn@@a=@dX ;h%&pW&&T;a%=@% *#; LFW@/T@@X;4uap@F n4[@,@ mF7)@@@@@@@@@@@@@@@@@@gk==QmQhE) W,@ mFvR@@=QmChC) W% mFvR@@*vdL@@=Qmy@@F@n4[d@&h ;p@FW@/T[@% |C@@=Qm#@F@n4[,@& 7@F@n@@@@@@@@@@@@@@@@gL= X@,@ mF7)@@;4ua1E) ) W|aXpR4[d@h| 2p@F%@m)| @F /s X@%p mF4I@@[@@Xv%@FQ ,mF4Ik b%Og#O,E mFvR@@*;Qm2p@@@@@@@@@@@@@@@@g^@Fn4[d@=@a ;Qm@Fp@m))p@FT@m)@FQ /g[@dX =@@&%WJ^Q WIWOW^%&Qg gW FW gQOO uOX2sW ,@=p;u u>CW8@@@@@@@@@@@@@@@@@g*p@[u u>CW8@@[u u>CW8@@[u u2CWy@@[u;hu>#W;@@[upuW>@@[u8u#W>@@[u8u#W>@@[u8u#W@@[u|uCT@@@F^h uhuh@@su[>F@@@@@@@@@@@@@@@@gRFk>Fk>@@F^h pupup@@su[>Fk>Fk>@@F^h @u u @@suCFkFF,@@F^h  u hup@@su[>Fk>Fk>@@F^h pupup@@su[>FkF,F@@F^h  u u h@@s@@@@@@@@@@@@@@@@gh u[Fh4Fh4@@hO@%[R@IpO@JX[pF*@@F aX@@1X=F*@@F Fp@@14vF*@@FL 8@@s@)T8@@s@[R@@FJ@ I@@1FL@@@@@@@@@@@@@@@@gE@@FIpahu8@@1FL@@FLX@@1XXaX@@1F@OXv@@F pu8@@1a7@@F@@2Q@@F amJn@I24n]CLnTFLh 4@@F L@Q@@@@@@@@@@@@@@@@gXXXaX@@1L4 hI@@Fp ym @@1F@@FIh aX@@1)I@I@@Fp ym @@1FQ@@FLh @a Ih Whu8@@1X=F*@@FJ@ u8@@1FJCF)p#p@@@@@@@@@@@@@@@@gu@sbp ymu8@@1F@@FLh 4@@FJp @@1FJ@4 hIp dg#8pTspvT@2O@@FR Jg@@F  b @@1 hL@@FLh @@1F@F@@@@@@@@@@@@@@@@g E@@Fp b8@J@FCLd|L*&Jb%Fp 8@I@FEdhF @ u;n@I^FEd*pFJ@ Whu8@@1FR@@Fp 8@bp @ am@@2T)h@@1 @@F @ Fp@@s@@@@@@@@@@@@@@@@@gR)@@1FO@WX*F*@@F  @@1X=F*@@F am@@1XXv@@F am @@1X4 hI@@FR @@F am@@1[T *g@@F @ ^@u8@@1@@@@@@@@@@@@@@@@g)%[T * @@F @#T *g@@F @ %@@F 8 amT8@@1X) @@1[T kd@@F @ 4@@FQ@ R@@1a[]@@F @ Fp@@1=F*@@Fp ^@#@ @ L@@F #@@@@@@@@@@@@@@@@@@gE41F@X)T8@@1FX hI@[X)@@1FX hI@X)#hQ@,4z O@F @d^@@Fp a@@#8  d@@@1a@@FIh d@@@1X)@@1b@@Fp @@@@@@@@@@@@@@@@g a@@dX X@@1d@@F d@@1 @@F @ I@@F d@@1F@%1X)X@@1F& hI@g1X)p@@1F& hI@h1XX%@@2O[@@FR L*@@@@@@@@@@@@@@@@@@gFLX@@1XkI@IF*@@F L,@@FI 4@@Fp %h@@2T)%p@@1*)%8@@1p@@F@@1a1@mTI 2@@Fp &X@&   &h@@1F@v1[@@F d@@@@@@@@@@@@@@@@g44@@1FX hI@71XX#p@@118 ,yp pv@1F * @@F @ gmg@@1X#p@@1F@@FJ@@@1y^@@Fp a@@gX  W)m@@14v hI@@FL @@@@@@@@@@@@@@@@gd8@@2@@F8 L|@@FX gh@@1F@>s@@Fp a@@h@E8F @hQp@@1X]@@F hX@@1X]@@F hh@@1I]@&X)@@1]F@@Fp a@@@@@@@@@@@@@@@@@g*@h8 d @@1X@@F )@@)X )@@1X) @)X hp@@1a]L@@F @ hp@@1a] @@Fp a@@)pIh )@@1F]I hI@EOX)T8@@1F& hI@E@@@@@@@@@@@@@@@@ggs@EQ]R@@F @ d@@Fp )X@*XQp@@1s4 kX@@F T@@FX E1m @@14)E1m@@1a]@@F @ @@F Ep@@1X4 kX@@FR Ln@@F @@@@@@@@@@@@@@@@gs W@@FI *X@k@ @ J @@FL )h@@1XXk@@14kF*@@FL *X@@1*)h@@1Xn *g@@FL k@@1F][@EX]]@@F *@@1X)Qh@@1a] @@@@@@@@@@@@@@@@@gguE[1X)I@I@@F g8@@1]^@@F )@@1[@@F @ Jg@@FX@ #@@2@@F  @@F &@@@1[@@FL &@@1F] hI@Ea1[@@F )@@1*)&@@@@@@@@@@@@@@@@@gp@@14 h@@FL ,@@1*)h@@1XamC @@1X]]@@F  )@@1]R@@F @ I@@F &h@@1@@FIh #@@1a] @@FIh ,X@@1F@Ed1X]J@@@@@@@@@@@@@@@@@g@F  I@@Fp ,Im@,hL ,p@@2),8@@1F]h@@F @ )@@F  %Xu8@@1kF*@@FR Ln@@FX@ kh@@1#@@F @ %@@F 8 &@u8@@1F@Eh@@@@@@@@@@@@@@@@gyzTJC,mR,CuQ#4pR4sp%&pgQ)Qds)@1F@EkX)@@1]F@E,1a]&@@FR@ g@@Fp m@@@1[@@F @ hp@@2 @@F  #@@2X@@F amb@@@@@@@@@@@@@@@@gLmX@@1XkF*@@FR m@@F  ambX@@1kF*@@F J@@FI JFb%T Q)Ts;gQ)Q Ru@1 ]#@@FR Ln@@FX@ kh@@1#@@F X@@1X)T8@@s@@@@@@@@@@@@@@@@@gh,@@FQ@ Qh@@1*]F@@FQ@ mp@@1/pF*@@Fp a@@m8X #@n@ @ J @@Fp d1m@nX #@@1F@E2X) @@1@EsX) @@1F& @@@@@@@@@@@@@@@@g bhI@E4a@@Fp a@@nh d@@1X) @@1@@Fp a@@np @ L@@F #@n8Ih d@@@1F@E8a@@Fp /@/ @ @@Fp /X@/ba@@@@@@@@@@@@@@@@g @ @@Fp /X@/h @ g@@4JJF @d^@@F @ [@@Fp /X@/p gm/8@@1XXp@@@17F@@Fp p@@1^^C@@F gmpb^@|=L2^4>1sX#@@@@@@@@@@@@@@@@g[]p@@14^E@@FJpp@@1s^@@FIh pp@@1F@FFX/@p8E8F @1@ @ p@@@s@^I@@F 1@@1F@F C,a,pQLT&Lp28%sQ7p))&)@1F^L@@@@@@@@@@@@@@@@g@F C,12,p2sQsd%sp28%sQ7p))&)@1F^L@FOC, z,p2d&#&%p28%sQ7p))&)1 O W)m@Wp @ W)m@@1* hI@@F 1m@@1a7@@@@@@@@@@@@@@@@@gg&@FIp @@Fp 1 @@1X^I@@F  )@@F p@@@1X^Q@@F #p@@1p@@Fp a@@2  2X@@1F@FT1^@F1F^W@FX1Qp@@FO p@@@1@@@@@@@@@@@@@@@@g,F@@Xg)&pQ##p&TpW%)Qs&)sJaL s@@1^^[@@F @ @&@@@F J@@FI %@@Fp s @@1L)sh@spO p@@s  @ X@@118 *QpI)gQ)@@@@@@@@@@@@@@@@g g%p&g@1F^@@F @ @&@@@F p@@1^^ @@F p8@@1X)I@I@@F 8 pp@@1QFF@@FX ph@@1/^@@F @ @&@@@F L,@@FI 4@@Fp 4@@1a^b@@@@@@@@@@@@@@@@@g|@Fp s8@4O p@@@1F^@F#a^@@F p 4 @@1F^^@@a2sQspQ))Q8pT#Q)Qs&%p&g)Qs&)4hIh d@@@1% @@F @ h@@1pF*@@F @ X@@@@@@@@@@@@@@@@gWh@@178 n&@@Fp s8@@1XpI@IF*@@FIp&@u8@@2C,4z,p##WQ#pQ))Q8pR&4%T@1XpI@IF*@@FX@ &@u8@@s@)@@1#@@F X@@1*b@@Fp @@@@@@@@@@@@@@@@gggy@@1b@@F @ X@@118 *Q@@Fp s8@@1[@@F @ )@@I FznF I@@Fp u@@@1kbpR&&#Q%uX@ s@@FJ@ 4@@Fp u@@1 b@@@@@@@@@@@@@@@@@g=|@Fp u@u@ L@@Fp u@uX @ d@@2XI@F,1b@F*1X^m@@FX@ )@@s@)@@1#@@F @ %Xu8@@2T)up@@1*]]@@F %Xu8@@1[@@@@@@@@@@@@@@@@@@g4*F @ Jg@@FX@ )@@@2[d@@F  d@@@2y@@FR n@@FJX d@@1F^/@@F  kh@@1*)@@1p@@F @ d@@@14),8@@1a1@@FL v@@@1Xb@@@@@@@@@@@@@@@@@gC2@F 8 kh@vO )@@1F^*@@FO #p@@1F^@F/1*]#@@F  I@@F &@@@1a]b@@F &m@@1Xb@@F 8 ,X@@1X @@F %@@FL &@@1@@@@@@@@@@@@@@@@g|F^1@b@/@I@EL@@F @ I@@1a]&@@F I@@2C,vR,p[T4g#Qsp42p&pT%s)@1I]L@@1XQ%W2p&%2s)4sp)&dpb%Tp #Q@@@@@@@@@@@@@@@@gJn2spTp&pTsp)4#vX X@@1a]&@@FR@ g@@Fp v @@1^E@@F @ %Xu8@@14)Rp@@1J)snu@v|= J&XFp vp@@1L)R8@@1F^7@@F @ ph@@1*@@@@@@@@@@@@@@@@gb2)@@1F^8@Fv2T)up@@1*)%X@@1*^E@F71Qp@@FIh p@@@1Xp@@@2)m@@1a^y@@F @ @&@@@FR@ %vhEg)Ts@1F^z@F;1%^E@@F X@@@@@@@@@@@@@@@@g)@@14kF*@@FQ@ Qh@7 LX@@14^=F*@@FLh @@1X= hI@@Fp 71m@7 @ Qm@@14v hI@@FL 8@@17)78@@1F^;@@FL 7@@1X*@@@@@@@@@@@@@@@@@@gC7F p@@1a7@@F8 L@@@Fp 7X@@1^^C@@F p 4@@@1XXp@@@2)% @@1F@@@FJ@@@1y^@@@Fp 7X@8@L 4@@1F^;@@[XQ%W2p&@@@@@@@@@@@@@@@@gI4%2s)4sp)&dps8g/XLh ph@@14kF*@@F am@@2[)OWspd2Rp&ps8g@2T)@@1*4 hI@@Fp 7 @@ Q@ b,nmF* JJTnCLnvFTF#L@@@@@@@@@@@@@@@@g&bnR] L>uyX]]@@F *@@1a]L@@F @ ICL2dgpuQ)pTs@1a] @@F X@@1a@@Fp 8@|,4,v4hFLh #@@1FF*@@Fp 8@zT44*@@@@@@@@@@@@@@@@gLhFp 8X@%J*LXF JXF%sW)8 X &@@@2@@FL &@@1F@4)@@1F@C*)@@1F@X)]@@s@@@FQ@ 8h@@1*]@@@@@@@@@@@@@@@@g%g#@@F &@@@1 ]#@@F I|@@FI OF@@FIh ,X@@1a]b@@F %@@F &m@@1X)@@1F hL@@*Ws2pQTT)22p&pRRp&ddQ%Tp&)pT2@@@@@@@@@@@@@@@@gF)gs&)2,Qp@@1X@@FX@ d@@F ym@@1X@@FR Ln@@FI ,@y@E8 8@@ Q@J|JR,^b*sLk[L4n|sLn^WITIaJ@@FJX kp@@1F @@F @ )@@@@@@@@@@@@@@@@g>d@@1]^@@F I@@1a1@ 1X)I@I@@FL ,2^@J&J[FF[CT24,@FJ@ I@@1FL@@F @ %Xu8@@2T)Rp@@11)R;n@vd*JFX &@@@@@@@@@@@@@@@@g@ 2bn@ &d|[JnF&Rn2vCJb,n[JsJmF @ k*n@4IbJ F  gvhJb%T #QR#@1kkF*@@FL yh@yp OO@@Fp z@@y  @ kh@@1]R@@F @ @@@@@@@@@@@@@@@@@@g*nFL )h@@1F@F4TI]R@@F @ )@@FL )h@@1X^m@F81*)%ImR8@@1Qp@@FIh p@@@1Xp@@@1F@QX]]@@F z@@1]R@@F  )@@@@@@@@@@@@@@@@g@v@@1X)zX@@1X#p@@1X)I@I@@F g8@@1X^m@@F )@@@1a]L@@F @ Jg@@FL )h@@1F@@ g4s2p%vp%s)8p%s&p28dR&#psQR#)hQp@@@@@@@@@@@@@@@@@@gn2@@FQ@  @@1*u@@FQ@  @@1*@@FQ@ @@1Qa@@F  I@@FQ@ mp@@1*]R@T%^m@@F %Xu8@2z XF @ @@@2]n@@F  z*n@zR@@@@@@@@@@@@@@@@guR*@F  zp@@1XkJ^@2z XFIh uh@@1*)@@14 /W@@F amz8@@2T)up@@1*)I@@1a]@@F @ @@@2OXL@@F  I@@F 8 zp@@@@@@@@@@@@@@@@@g]@1X^m@@FJ@ ;@@@1I] @@FX gbn@JnWbT4^FJTnv*mJ4vpFp ;@@ Q@ |*Lbndv*mInFI,/buL4a&Jb% @ vQ&1&Jb% ]TJ@@F amz8@@@@@@@@@@@@@@@@@@gI1s4 *I@@FQ8 z8@@14 /E@[ 4 /W@@F @ @b4 /W@@F @b4 *I@@FIh amQ@@1y4 /E@@Fp ;X@@1I]@@^2 sp2Q)XpQ @p2pQ##p&%p@@@@@@@@@@@@@@@@g%%g4s,pQp@@2@@FR@ I@@14X%Q@I>[CT24,@FQ@ mp@@2T); @@14I%Tp%s)8@1X^m@@FX@ I@]#@@F  I@@FJ@  @@1F@@@@@@@@@@@@@@@@gEI^hT&%p p%&% 72s@1[@@F @%@@FQ@ p@@11X8@@Fp ;8@@2OXL@@F am@@1XXk@@2T)%p@@1*)@@14 / @@F @ |Jn@IFTRn@@@@@@@@@@@@@@@@g*LbhF |Qm@| @ @b4 / @@F @@1F@@FIh am|@@@1 b hI@@FO am@@1Fb@@FJ @@1I]&p7spvsXp%s)8p%&[;8J @@s@)@@@@@@@@@@@@@@@@g,@@1F]@^X)I@IpX7spvsXp%&% 72sp#QW@1I]&@@[R#&bpg42X T&v%pdQ%s%Q%,a p |X@@1[@@F &@@@1p hI@@F &m @@1X@@@@@@@@@@@@@@@@gL)) @@1a1@@FIh %@@1[@@F  uhQ@J*n>^* L^JRJb FQ@ p@@1*pO%7spQuQ#pQTT@1X%@@1 @@F @ kh@@1*)*8@@s@)Qh@@14@@@@@@@@@@@@@@@@gR) @@1%)I@L@@F @g@d1*)@@2@@F 8 88@@2@@F @g@@Fp | @@1 @@FIh |h@@1 &@@F @ ,X@@1X|p@@1X|hQ@L* b@@@@@@@@@@@@@@@@g8,>F,d>F&RJz/^F[CT2F  ,X@@1F@@g)&)dp%T & R#&bp&g)Qs&%2&a @ g@@F  ,X@@1X88@@1XX|p@@1]#@@F @ 88@@s@)@@@@@@@@@@@@@@@@g^s @@14 kL@@F @ kh@@1*)|8@@1Xam @@1XX|h@@2X@@FR Oh@2*)@@FL L@@1y%@@FL v@@@1X@@FR Ln@@F  O*@@@@@@@@@@@@@@@@@@gubF Ok@@FX Ep@@14)E1m@@1a]@@FL k@@1X)IR@@F 8 88@@1X^m@@F  =bn@I,bRR*O[8F ammp@@1*X@@F amC@@1XX%@@@@@@@@@@@@@@@@gm@@2O[@@FR L*@@F X uh@@s@^m@@FLp@@1#@@F @ @d)@@FR L*@@F zp@@1y)@@FO |p@=h J@@F @ @b4 mn@@FI JWvh4%%#QR@1F@@@@@@@@@@@@@@@@gF2n@@FI ]vhF7g)Ts@1F/@@F Ln@@FI 4@@Fp =8@@1XXamC@@14Xammp@@1a]@@F E1mT8@@1a]@/[m@@F @ >@@@12@@@@@@@@@@@@@@@@@gy@Fp a@@>@  =@=p @ @b4 h@@F y@@FL *h@@1XXamC@@2O]n@@F @@@14 h@@F @ I@@1a]&@@FR@ g@@Fp >@IT,4*n@@@@@@@@@@@@@@@@g z4vd* F @ %Xu8@@14)Rp@@1L),82@,JR,XFp >@@2T)%p@@14 /E@@FL v@@@1%4 h@@F @b4 mn@@FX amQ@@14)>Q@@1s @@F@@@@@@@@@@@@@@@@gL1 @ am8h@@1Fs@1X)>Q@@1] @@FLh amC @@1[@@F @ @b4 mn@@Fp z @>Lh amC @@1F/@@[2vsXpT#Q)Qs&%p&g)Qs&)> Ih @@@@@@@@@@@@@@@@gs|)@@1X]J@@F  L@@FLX@@1XR@@F &@u8@@1au@@F @ X@@118 k hF2d&#@1Fv@@F @ kh@@1*)>8Q@ RbnR]@^FFX)XOJb%IbJ F@@@@@@@@@@@@@@@@gI/ &@@@1X)J1@2F &m@@1X]JhC4gR@1p hL@@FLh )@@@1X]]@@F 8 %Xu8@@1X]J@@F  L@@F O8vhJ)#&p%&@1a1@@FO #@@@@@@@@@@@@@@@@gspp@@1@@Fp s8@>p @ kh@@1R@@Fp s8@L >h@@1y^@@Fp @@ Q@ *|v7^s[F4dd4nz,*mJ[L4/u@@F X@@1X;@@FX X@@2@@@@@@@@@@@@@@@@g>v)I@I@@FI >h@@1XXp@@@2T)Rp@@17),;n@,JR,XFp  @@17)R;n@vd*JFp  @@1a=@>1/^@@@FI >h@  p 8@@1X)I@I@@F@@@@@@@@@@@@@@@@gIp p@@ Q@I*,^Rn4zmJu@@8@ @Q @@@X]pX@@@FX8@@bT@,R@@a7@ RXC@%*FX8@@a7@ g@@aF@n@2n@ EILa7@ RW@@aF@n@2n@#@@@@@@@@@@@@@@@@g4R EaX@m @@@Xp@ Fd@@XW@ [I@@aX@@bT@,R@@a7@ ^@@aF@nn@W %LaX@mdp@@X]pFd @@@XW T@@FE 1) @@XX X@@F@@@@@@@@@@@@@@@@gI^pX@@@Fdv@@@as@,F@@@aa@mh @@XQ @JX 4,L2a p p2vTs hQX@,Q@d@@FFh4^@@a@,Q1m@d@@FE @@F8F4d @/ []%d@@@@@@@@@@@@@@@@gC]aF@,Q1mJ@@F48F4z@u^[[]%daF@,Q1mJ@@FE 1)@d@@FEp7;@Radv@@2ad4^@@aF@m> @ LhQ^@mp@@XQ @Jp@@XX X@@@@@@@@@@@@@@@@@g>4@FX8I@@Ra4v@@@aF@n@@@&4sg4s2pW&p2a ;222a @42@@aa@m& @@XW h@@FE88 @@aX@,Q@d@@FF|v@@@aI@m@@ sX%p&g)@@@@@@@@@@@@@@@@gapQs&) p1X@,F@@@bT@,R@@a7@ RX@@aF@nCRn@Ida7@ g@@aF@nCbn@ EILa7@ RW@@aF@nCbn@#R EaX@m @@@Xp@ Fd@@XW@ [I@@@@@@@@@@@@@@@@@g%y@aX@@bT@,R@@a7@ ^@@aF@nC2n@W %Laa@n@@@Xd@ F%p@@XQ ak I%&p)24#s@X L@@FX8R@E88E@ E,@@FF8h@QLhX@@F@@@@@@@@@@@@@@@@gE87@@aX@,Q@d@@FF8Fh@QLhX@FE v@@@#@@,I@@a@,mmd@@FE pX@@@FEpp [RI@E@E p;@@a1@mmF R#2p|&gp&g)Qs&)@XQ@@@@@@@@@@@@@@@@g7W aT@@FE 48F4#@EOIWCs EIs]%da@,^@@aX@,Q@d@@8[p X@@@FXv@CE p;@@a1@mmF #2@XQ [Rg@@a @m @@@XQ@@@@@@@@@@@@@@@@g&R a@@FE,@@FF8F@Ed4^@@ay@m @@@XQ h@O@8X 4F L2a p p2vTsaCaa@n @JF@ay@m @@@XQ a@@8W |@@FE 1) @@XQ @@@@@@@@@@@@@@@@gRma@@@Rv,I)uTy*XXL@ L@@F)C@@FE88E@@a[@@a@mdp@@XX aL@@FE88@@aX@mm@pF sX%@XW@ @Q @@XQ |@@@Xd,&yE@@@@@@@@@@@@@@@@gQb|I)uTy*y%EEuTy*X@8@ L@@F)C@@FE88E@@ay@m @@@X@ @Q @@@X]@ Fd% @@X@ FdI2@%&WO^%%LaF@nFp@@X%@ F% @@X F&@@@@@@@@@@@@@@@@@g#@@XW@ @@@FJd@@FF41@@aF@,Q1m@p@[@8W a4@@Fd4^@@aX@,^@@a1@mm@dF FQ22W%@XQ a8@@FE v@@@#@@mbR1@^ QCCJFpEpv@@a@@@@@@@@@@@@@@@@g>hF@m> @a8Ca1@mmb@g FgXp&g@X^ X@@@FE,@@FX8@@@Q@]WO &%QWO[%W ROOm%[FW#n%  gWC[&QFOCJF@8@@FE v@@@#@@mdp@@@@@@@@@@@@@@@@@@g X]pX@@@FE,@@FL@vIb@RuLLLhFd8@& 8@@FE v@@a@ 4@@a^@n @@XR h@#@ # @@X@ X@@@FFh1) @@XW@ [RI@@aX@,4@@@@@@@@@@@@@@@@gdzF4b@@Xp @Q @@@XW@ @mmd@@Fd8#@@@@E]gC OQW]%&I@E p;@@a1@mmbTF vX#p&g@XQ bX@@FE 1)@d@gLW@ b @@FXv@@@@@@@@@@@@@@@@gv@I 48FvJX*@#RW &OaF@nJp@@XX h@@FXv@Jp48Fv @@ aF@n @@X@ 4@@FEp8n@@aX@,L@@aF@nIp@b41X@nJ@@@X@@@@@@@@@@@@@@@@gd, FdX/@  aF@nL@@@XX h@@FE881@@aF@nL @#@11@,Lb|@R,,u8 IvXpFX8s@@aa@m& @@XW #@@Fdv@@@a^@n @#1@n @@XQ #@@@@@@@@@@@@@@@@@gm@Fdv@@@aa@np@@XQ # @7L@ FdR@I@@a@n @@X@ Fd @@@XX aL@8L@ b @@F)C@@FX8y@@a^@n @@X@ b8@@FFh1)#,@@FEp4@@@@@@@@@@@@@@@@g^p@@a[@@a4@,Q@d@@FF41@@aF@nO@@#d1^@nO@@XW #8@|@8 b @@FE p;@@a1@mm#|F T&@XQ d@@@FE 1) @@XX aL@@FE8y@@@@@@@@@@@@@@@@@@g haX@,4@@aa@n @@X^ X@@@FE 48Fvbn@n]agCgCC^pEppQ8@@FXv@@E8y@@aa@np@@X@ 4@@FEp8n@@a @m @@X@  [I @Qd@@@@@@@@@@@@@@@@gu,&yFXyC@Lp4v@@@aF@nL @dTCa@,,@@@XQ h@@FE 1) @@XX X@@FE8yF@@aX@,4@@aa@n @@X@ FdR@L@@a/@m @@@X^ Q8@@F@@@@@@@@@@@@@@@@gmJX7z@@@Q@E7RFg#]%gQW]%&QpEL4d@@aF@nR@@@X1>@>F&%#J[R#@@m @@XW@ T@@FXyI@R@F8@@b@,g@@aF@n@@@@@@@@@@@@@@@@gRbn@z[%W ROO [La@,4@@aF@nRp@@XW b@IJLW dp@@FFvb@Rd4^@@aF@m> @d,1^@n@@XQ dd@@@Wd&T^LI)uTy*y%EEu@@@@@@@@@@@@@@@@gTy*@8@ @Q @@X  [OI8@k @FXy@@aa@m& @@X@ F&TQm%@@F4v@@@a@,F@@@a^@m p@@XW %L@@FE8yT@@a^@mh@@@X^ X@@@FX@@@@@@@@@@@@@@@@g y@T@F8@@b@,g@@aF@nbn@z[%W ROO [La@,I@@aF@np@@XW b@@FXy@pE@1)C@@FXyX@E8y@@aF@n@% 1^@n@@@@@@@@@@@@@@@@gWRp@%T1y@m @@@XX @@Fd4^@@aF@m> @%X1^@nW@@@XQ %d@@@XdvET8,ITE &vLu]vTy)LF|Edy)]@8@ %8@@FEp24F4vp@@X Ch@I@ @@@@@@@@@@@@@@@@g8Xp@@X]@ @mm ,@@F 2 @@a@,mm8@@F|pL@@a*@,I@@a@,mmdEL%&[p%QdpvT2@X@ [nT@Rhu]| %LuFp8@@aF@nX@@@X@ [Ty@@@@@@@@@@@@@@@@g4J@XFL@@FE p [[@@a1@,Q@d R@@aF@nX @@X@@@Xp@ Fd@@X]pFd @@@XQ &L@@FXya@X@8@8@@Xy%T@)Xu]vTy)FJ I,u@@@@@@@@@@@@@@@@gI)b@  Ch@@FE 1)&X@@FE@pz@@aF@n@@@X@ [Ty@@a*@,I@@a/@,mm ,@@FE,@@FXy@XpFL@@Fp [[@@b@,z@@X%@ Fdz@@X @@@@@@@@@@@@@@@@g* &k R)4p#v@XW@ & R@I@@a@@b@,y@@@XXp@@Xb@ I@@FI1) T@@FIL@@FX@Ih@ Q &d@@FX7@@aF@,2@@XQ &h@@FXykT@QLz]EFXy@@@@@@@@@@@@@@@@gkF,T@QdX|%FEp@@a @m @@@Xp@@XW@ #X@@FF8@@a^@n[@@X@ 4@@FEp8n@@a%@,Rg@@a4@,n@@aF@n @&dX@n[pu@@FEpp;@@as@@@@@@@@@@@@@@@@g>b@,mm ,@@FFyp@24F4vp@]@%@,I@@a@,4 @@X Jh R@/ E 2*CTap@@XW@ [ @@aX@,m u@@FEpsTF4u @@Xdp@@XX L@I2@,Q@@@@@@@@@@@@@@@@g/, d@CIL Fd @@@XQ ]@[I@ E y/CTap@@XT @@@F44^@@a@,^@@aF@m4@@&,1X@,I@@as@,mm ,@@FEpuR@@aX@,I@@a@mF@@@@@@@@@@@@@@@@@g1m@XX gL@@FX7 @&p1X@,4@@aF@n1m@d@I%L p J2],J8@)Xu]vTy)FJ I,u FX2/@]8@@FEX24F4v@@@X@ C @@F)d@@Fdy@@@@@@@@@@@@@@@@gazu@@a*@,I@@a@,@@@X#p @p@@FFL@@F|@@F pL@@a*@,v@@a@,mmQL@@FE p7@@b@@#O@,4Fup@@X Cd R@]pEppyCTap@@X @@@@@@@@@@@@@@@@g&z @@Fdyu@] Xy7@@)8@,d @@^@ I@@Fg 2I@^E 1) @@XW@ C @@FFyu@@aF@,& @ghX@,I@@a@mQ@@@Xp@@X]@ C@@F 2R@@@@@@@@@@@@@@@@@g|n@a@m @@XQ Ih@I;@ ]@ F&@@@XQ ]@@I=@ ]@ F& @@XQ ]@@I@ @  [ @@a4@,F@@aF@nQm@d@J@@ @  [@@a4@,@@aF@nQm@d@@@@@@@@@@@@@@@@@g/JJ@ @  [X@@a4@,TF@@aF@nQm@d@J@ @  [@@a4@,T@@@aF@nam@d@JC@ @  [RQ@@a4@,TC@@aF@nQm@d@JL]@  [[@@aX@, p@@X@@@@@@@@@@@@@@@@g@, FdI@@@X]@  [TyI8@QL= FIL@@F1)O4@@FXy)F4@hT1X@mmX@@F1)hX@@FXy)F4@h14@,@@aF@nQm@p@JIL]@  [n@@aX@,@@@@@@@@@@@@@@@@gC8 p@@X]pFd@@@XQ hh@@F48F4FR^@;OXa1@,b@@a4@mm]g ,pvhhCb@@a4@, @@aF@nQm@d@JLL@  [d@@a4@, @@aF@nQm@d@@@@@@@@@@@@@@@@@gdJLX h@@FE 1)g8@@F42*F4@@X]@ Jh[I@@as@,umL,@@F2vF4@@Xp [@@aa@,4p@h|CaX@mm@d@@F1)[|@@FXy*F4@)@1X@@@@@@@@@@@@@@@@@gg&mmd@@F1))@@FXy)F4@)1X@mmT@@FEpp;@@aF@m@)L1X@mmp@@FXzRF4@)1X@mmQL@@FXzRF4@)T1X@mmLp@@FXzR@@@@@@@@@@@@@@@@g uF4@)X1X@mm^@@@FXzRF4@)1X@mm) @@F1))d@@FXy)F4@)h1X@mmCL@@FXzRF4@),1X@mmd|@@F1))p@@FXy)F4@)41@@@@@@@@@@@@@@@@ghTa@n]@)8CaF@,& @ ,1a@,pp@@XQ Ih@J@8@ C@@F1)@d@@F1)T@@FLu@@@aF@m@*@1 @mQ@@@Xp@@X]@ C@@F 2R@@a@, p@@X@ @@@@@@@@@@@@@@@@gu T@@F pL@@a*@m @@Xb@ @d@@FFhp7@@a@m @@XQ Ih@JaL Jh[I@@aX@,*am@d@@FEpsTF42p@@X@ X[I@@a@,um X@@FE 1)L@@FF@@@@@@@@@@@@@@@@gs@@aX@mm XEF%Tpv@X]@ Fdm@@XQ &d[I@h F7J@@aF@m@@hhR@@aX@,@@@X#p @p@@FEp24@@a@@b@,C@@@XXp@@X@ *L R@@@@@@@@@@@@@@@@@@gWa%@,m@@@X[p Cd R@@aI@m2 @*Lh/@b)@@@X p*T@@F|J&@@ /@ @@*1X@mW@@XW@ * @@FE8z)@@aX@,&T@Qhy4FEpp7@@aF@n^@L@@@@@@@@@@@@@@@@g4,1@,/@@X Jh@@FE 1) EF)gQ)%@XW@ C@@FFyu@@aX@,*@@a@,pp@*hCaF@n*p@@X@ F&k@@@X * @@FEp@@a @m @@@XW@ @Q @@@X@@@@@@@@@@@@@@@@@g4| * @@FF7 @@a4@,m@@aF@m4@@* @/@ @@*81X@m @@XW@ *|@@FX4@,@Fu@@aF@m@@k1a@m@@XQ k@JsL@ Fd@@XW@ *|@J4@@@@@@@@@@@@@@@@gaL@ T@@Fdu@@@a&@@b@@b@,d@@X[p TT@J2@8X kT@@FE,@@FEpz/@@a@mp@@XW@ TT@@FE 1)@p@@FXzv@mpEd@@aF@m@@@X@ @@@@@@@@@@@@@@@@gpTT@@F8)R8@@FL2,k k1@E)&W ]g g %FOO@WIgOa@mT @@X@ Fd)p@kXCa@mF@@XX gL@@FX4@@@Q@Ez[O W FWO F%Q@@@@@@@@@@@@@@@@g7[g@L2,kdk@@hQX@,X@n Fm@@aF@nnp@@XXp@@X@ R, R@@b@,X;@@aF@n/@@k4CaT@@a*@,I@@aF@nn @kpCaX@,E@@a@,m@@@X@@@@@@@@@@@@@@@@ga #p ]@@FEp24F4@@XOp Fda @k8Ca @,m@@@X @d R @@aC@,4@@a@ @@XQ@@XQ R@I@@ay@,mm@d@@FXz>@@aF@n/@k,Caa@n/p@@X@@@@@@@@@@@@@@@@g ; FdR@XF4@@X@ d@@FL@1) Fm@d@@FEp24F4F@,@CaX@mJ1m R@ICTap@@X]@ F% @@XR Fd @@@XQ ,@@FIL@@FE p [@@aa@mTp@@XW@ 8[@@@@@@@@@@@@@@@@gaIRg@@aa@m @,C#@np@@@X@ F%1 @@X 4@@FEppnF4@@X@ F&p @@XW@ 8[L@@aX@,g@@a@, amJ@@FE 1),L@@FELv@@a*@,[@@a@@@@@@@@@@@@@@@@g]%@, @@XX h@@F@ICT#@@Xp F&1@@XQ@@d@1 @@XQ ,@, hQ%@,Qd@@F,d;J@@aX@n2p@@XW@ @d@@FXpI@2p@hpL@@@Q@IF%@@@@@@@@@@@@@@@@g)8 aW WRQIgC EJ WEQC[C EJ W%[&g OC &Qm8@@FEL2p@@aI@nm@@X [)@@aX@ns@@,41*@ns @,|1@ns @@XQ m@@@FEp24F4d @@X@@@@@@@@@@@@@@@@g1h FdRg@4E uEF4u@@Fp [RR@@aF@n4 @@Xs m@ L@ [RR@@bT@,Tn@@a@mT @@X [)@@aI@nm@m1X@,mmI@@FL@1)4@@@@@@@@@@@@@@@@gCk@@FX;O@4@E ;L@@a@ s@@aF@nu@@@X Fd#@@XW@ ,p@@FFh;@@a@,mmI@@FFT1) )p@mT1X@mQQm@d R@@a@,4F4d @@Xs mT@@@@@@@@@@@@@@@@@@g@FEdp [RR@@aF@n4p@m1X@mW@@X F&u @@X X@@@FEppX@@@FE87@@aa@n/p@@X@ FdR@I@@a@ns@@@X[p X@@@FX; @/2a8@@FFvp@@@@@@@@@@@@@@@@@gd@aQ@bs@@@XR k|@@FE,@@FE ;L@@b@m[ @@XW@ 8@@FFh1)m@@FF,pn@@b@,C@@@X F&v@d@@F1)8[I@@aa@m@@XX h@@FE ;L@@@@@@@@@@@@@@@@@g1=@a*@,I@@bO@,@@X[p 4@@Fdz@@@Q@F Q&  C E C%gW FWp8@@FE,@@FE 1)md@@FFh4@@b@,F@@X @@FEp@@@@@@@@@@@@@@@@@@gF7a @m @@@XW@ @Q @@@XR gL@@@W|d]L&I| T^v,^LE%E)mIFyL# @@XTp @@@Fdvy@@aa@m& @@X@ X@@@FL@vIJ8@QhuLh[@ p@ Fd@@@@@@@@@@@@@@@@g, @@XW@ [RR@@a@mb @@XR [d@@FFL@@F1)IX@@FE v@CTap@@X@ F&p@@XQ m,@@FE 24F4d @@XW@ L@@FFX@@FFhv@@@#@@mb@@X @@Xb@ @@@@@@@@@@@@@@@@gdT @@FFh8E@@aa@,X @@XW b@ [@ @ [RR@@aF@nv @@]R4#Tp74s&%p#Q%W4QWpv&)TF@@a@,,@@@XR F@@FEpsTF4d @@XTp 8@@@@@@@@@@@@@@@@@@ghFX;@@aX@mR @@X]@ FdR@I@@aa@mL@@X@ [RR@@a@mW @@XW@ |@ L%@ F&7@@Xd@ FdR@I@@aF@n7 @@X@ @Qbn@^I&TaF@n7p@m81@@@@@@@@@@@@@@@@@gbF,[]@@aF@n7p@@X@ @Qbn@z^I&W&WgITbO@,d@m|@m[ @@X%@ F&8@@@XW@ @g  &gpgQ)sp2s@XTp |@@FE@Rd@@FX;a@@aX@m1p@@Xp@ @@@@@@@@@@@@@@@@g#Fd#@@XW@ [X@@aX@mW@@X F%yp@@XW@ @mm @@FE 1)@@FF|pRd@ aL@ [RR@@bO@,d @@X%@ F&8 @@X [X@@a#@@aF@,Q1m@d @@@@@@@@@@@@@@@@g;|R@@aF@n82n@b gOEQRdaF@nyn@g E %XaF@nyRn@ R^8pE,@@FsTF4d @@Xb@ X@ &@ [p @@@FX;g@z@F|4p@zE pnh@@FI1)n@@@@@@@@@@@@@@@@g ,@@F)C@@FX;g@@aX@,g@@k,@mL@@@XW@ @@ gLp@@XX @@FFT24F4v@@@XR F@ %@  L@@FE 4=@@a*@,[m[T@RX&|uIpFEpv@@@@@@@@@@@@@@@@gv/@CTap@@X 4@@FE 4=@@a@ %@y]|LuI| LduFhyd8 FEpp^T@@FL@1)@d@@FFh1)n8@@F@@FLv@@aF@ny @nX@,umI@@F|sX@@@@@@@@@@@@@@@@gF^@@bT@,[b@@a&@@a*@m @@@XT@ Xd@@FX;/@@a@,Q1m@d@ *L>@k E C%a@,mm h@@F1)IX@@Fp1)mm&%2sQ%s@XQ /@@@F1)@@@@@@@@@@@@@@@@gCRp@@Fp1)/@@FX;2@@aX@,%[T@h4|&24y),4|J FF|4p@@aX@,mm h@ s@ %@ F% @@XW@ [@@aX@,4F4v @/2T@,Tn@@a/@mL@@@@@@@@@@@@@@@@@g@@X @@Xd@ FdR@I@@a4@,g@@aX@,4F4v @@X%@ F%k @@X 4@@FEpp [@@aF@nz@/@J@ RXT@%*FX;u@@aJ@ RWC@QmIT84T FX;@@@@@@@@@@@@@@@@gas@@aJ@ ]C@RE]||IzdpFX;s@@aJ@ Q[T@QTLpFX;v@@aJ@ ^[T@Qm&LpFX;v@@aJ@ [7C@Q4EJ, FX;8@@aL@,[m@@aF@n>@@X@@@@@@@@@@@@@@@@gg@ F&; @@X[p @@@F@@FX;zF4)p@/d1L@,X;@@aF@n>am@d@@FI1),@@F1)C@@FX1F4)p@/X1X@,g[T@Qy)XIm)FX1F4C@@@X@ FdI@@@@@@@@@@@@@@@@g[=@/h1/@mL@@@X]@ [RR@@b@,u @@X@ [@@bT@,Tn@@aF@nz@@/L@,[@@aF@n>amJ@@FE 1)@@FF|4p@@aF@n>amJ@ 8L@ F&;@@X@@@@@@@@@@@@@@@@g,Q /h@ uL]@ nh@@FL24F4v @@XQ /@ /L @@@FX;gF4C@@@]2s2p))%ps&p&)vQ)Tp)aLCb@@a*@m @@@XW@ [RI@@aX@,RX@@@@@@@@@@@@@@@@@@gu1a@,4F4b@@XR aL@@@Xdv%&,EE&v)I%,E*]*LJhF@8# @@X X@@@FEp24F4b@@X@ @mmd@@FF7 @@aI@n @@]d&u2p&T@@@@@@@@@@@@@@@@g)p%s&p&4sg4spR4)2@@a@,,@@@XR @@FE@1) @@XR @@FL24Fu1@@X]@ /,k I#TQpv&)T2@Xp /p@@FEX24Fuup@@XW@ [RIT@TI&@@@@@@@@@@@@@@@@g]1| %L,Ly,Ey,@FFT;=@@E 4p@@a@, amd| R@@b&@,#@/81=8@4*LIdh>LImX4^L,LvF F4u]@@a @n@@@XT [WE@@aa@np@@X]@ [@@@@@@@@@@@@@@@@g*WE@@b@,@@Xp [WE@@#@/@@@@X /4@@FFvp@R4mE%%Em8pFFT1) Lp@p@y@,mmd@@FX;|@@a@n@mFOC [La%@,mm]@@F@@@@@@@@@@@@@@@@g&d41@@L@EF[O %QsRa8@@FEp24F4b@@XX [@@@FE u]@|pFh1)^@@FEppnF4C@@@X@ [RI@@bT@,Tn@@a*@,W@@a@, am@d@@@@@@@@@@@@@@@@g,@@FE 1)p@@FEppn@@aa@m @@XR 4@@@4mFXuL,=n84]nudvL)yIm,z]n4&4L,ImLvpJ# @@Xp@@X@ FdLp@@X /4@@FE@1)C@@Fd@@@@@@@@@@@@@@@@g&vp@@a@,mm@pk L%&[pTQsQpvT2@X [R @@a*@,Rg@@a#8@|y,v| %L,FJTpF un@@a*@,p@@a@, bn@IOXaX@,1@@a*@mW@@Xp@ [@@@@@@@@@@@@@@@@g4#L@@a@, am@dg C#Qv@X@ 8[O@@a@, a@d R|@Iy,&v)z] FFu@@a%@,mm4@@Fdvp@@@Q@F]& Q a R/ %W&W%#[ Q[@@@@@@@@@@@@@@@@gh@p8@@FE |J8@Qu*mE FEp|E@@aX@, @@X#p 8@@FI1)pX@@FFX@@FFL@@FE 1) T@LE@8@ 8@@F4|E@@#@/@@XW@ [L@@bO@,d@@@@@@@@@@@@@@@@@@g)#X@ [L@@bT@,@@a/@, @@XR pL@@@y4uL4uJTbL# @@X@ p@@FFT1) @@@XW@ p[CTap@@Xs R@I@@aE@@aF@,Q1@d@@@@@@@@@@@@@@@@@@g7aFp @ICT#@@X FdR@@@ J@, mp R@@aE@@#@,Q1@p@@Fpd@@FX|J@@, @@aI@,h @b21W]g2s L2,ppk@@@1 @@XQ J[I@C2a|L@@@@@@@@@@@@@@@@gg, @@ m@,y@@I4C /@#C @p|pm@, @@@#g4%XpQpR%Q)8pQ)Tpp @pv&)T2p&%#81@Cb@@aX@,QI@@F1|R@X,h&|F,I=ITvL@^4vX|@LF,JT@@@@@@@@@@@@@@@@gX1@FX1 @1LhQ@/E@Q@EkJI&%[ aFO@Cg %E aF@,Q1@d@@F,d|T@R|,4|I=ITv@FFT1)#E @@Xp 8[CTap@@Xs R@I@@kI@/EpQ@EC@@@@@@@@@@@@@@@@g; &Q& W[La*@,Ih@Rzm,ymIuFE@1) Rn@E#JI&%[@ #&[[R aaF@/pQ@bWO&[Xa@, amd|O#)p#Tp)#&pvT@[ 1@@FX@@@@@@@@@@@@@@@@gh1 @@Xp@@X FdR @@a@, amb@ R@@#@,Q1@d@@Fd|@@ m@,#@1 C m@, @@h2@@a@,,@@@XR h@@FEX24@@aa@/@p@@XX 1@@@@@@@@@@@@@@@@@@@gRmFE 1) Lp@@XW@ /4@@FFT24@@aI@m @LLCb@@aa@n]@@X@ C @@F1)J@@FdsC@*pE py@@a@mL@@@X@ FdR@I@@a@,@@@Xp@@XX @@@@@@@@@@@@@@@@g =@@FdsC@@@Q@ECIWO%OIgO@,Fp8@@FEX24F4z@@X@@@X @@XXp@@Xp@@X]@ F%p@@Xb@ C R@@a/@, amd|#&QTp)#&pvT[@X [@@@@@@@@@@@@@@@@gk[)@@aI@np@@a2sQbp&%s)&#pRQ2Tp&%pg)T%g@2@@a@,,@@@XR g@@z@ @ @Q @@X%@ FgF@@XW@ [n@@aX@,p@@X%@ FgF@@XT@@@@@@@@@@@@@@@@@g|E [n@@aF@/F @@X Q8@@FE p;@@a@,^@gpdyp@CF E pQ8@@F|2R@@bT@,[]@@a#@@aF@,Q1m@d R@@aF@n @@XQ d@@FX8@@@@@@@@@@@@@@@@@g@aF@/Fp@@XQ @@FX8X@@aF@nC@@@XQ @@@FX7y@@aF@/@@@XQ 14@@FX8d@@aF@m&@@XQ dT@@FXv%@@aF@mhp@@a24R2)gsp&@@@@@@@@@@@@@@@@g,g)Qs&)p&TpW%)Qs&)1,Caa@m& @@X@ @Q @@@X%@ Fd% @@X Fdbp2@aW FWLaF@/ @1|CaX@,p@@X  [RQJ8@Q*4FXv@@aX@,Q@d@@F@@@@@@@@@@@@@@@@g #Fhv@@C@Ep24F4@@X@ @mm@d@@FI1)IX@@F1)@@FX|a@@a[@@aX@m @@@Xp@ [I@@a@,mm@d@@F sX@@a@,mmJ@@FE 8u@@@@@@@@@@@@@@@@@@g@aF@,Q1m@p@Lb@8@ ,@@FFh24F4)p@@XX F@@FE 1)2L@@FF|24F4)p@@XTp [Rg@@aF@/ @@Xp@@Xp@ [I@@a/@m @@@X@ F&=p2@]EQR%W @@@@@@@@@@@@@@@@gL a*@mW@@Xp@ [I@@#@@,I@@a@,F@@@ay@m @@XQ |@L^@8]pF&;2@ RaF@/p@@XW T@@FFvb@@a^@n @@XQ 1|@La@8@ [I@@@@@@@@@@@@@@@@@g#s@#@@,I@@aF@/@@@^RW%pR#&bpQ%Tp&dgp2spdQ)b)1pCaX@,p@@X  [T@Q%LI)pFXv@@ay@m @@X@  [ T@Q,%yhpFEpp;@@aX@@@@@@@@@@@@@@@@g1n@,^@@a1@mmd,EgXp)@XQ |@@FXyE@@@Q@>]F%W]%gRaE p;@@a1@mmIg I)gQ)%p&g@XQ |@@Fd4^@@aF@mgp@@@aX@@@@@@@@@@@@@@@@gCp@m @@@Xp@ Xd@@FEpv@@aI@mh @,hQ[@@a%@,Q2@@FEp|%F7I@u@@FL81 @@XW@ 8[O@@aX@,Q@d@@FEp2#@@a@,&p@@XW@ XX@@FEp@@@@@@@@@@@@@@@@g=Q;L@@a@,,@@@X@ Fd@@XW@ R@@FEp2=@@a@,/Qm@d@@FE vI@@a@m @@@X@ @@FEp4^@@aX@,X@@a@mk@@X@ FdFp@@XW@ ]X@@FE @@@@@@@@@@@@@@@@gW|&@@a@mJ@@X@ 2@@FEp7&@@aX@/J@@@XW@ @@FE |)@@a@my@@X@ F%p@@XW@ Rd[I@@aX@,QCL@@FEp;=@@aX@,L@@a@n @@X@@@@@@@@@@@@@@@@@gv 2h@@FEp|k@@a@/ @@@X@ &|[@@a@mam@d@@FFT1) Fm@d@Lm@8@ R,[X u@@FI1)8@@FEp4kF4F@d R@@#@/ @@XQ J@@L&@,@@@@@@@@@@@@@@@@g@ Rd[I@CIp E 7&@CJ@ E 7@CJ E 7%@C OXQCTd@2h|n@,muC@Cp@,@ 2| RC@)EFT||d%OIF*W@FE |pCTa|1@2QFF%1pE|@4 @@@@@@@@@@@@@@@@gTR@TT4u,,EFT||d%R=L p@d@@F|@I@CI@|1@@* |@4@@ /@ @@*|@/@ @@TLp/@ @@TT@/@ @@Xh@/@ @@Tp/@ @@R@p/@ @@ @@@@@@@@@@@@@@@@g[2p/@ @@LC /@ @@,C /@ @@Thp/@ @@p/@ @@]W|@4@I@|@4@Op|@4@J@|@4@a|@4@Xp|@4@Wba|@4@O|@4@@@@@@@@@@@@@@@@@gFmR@|@4@4ba|@4@Q |@4@ |@4@F|@4@|@4@CI@@|1#I@ X2@/Jpu@@F8|,CTap@OL@m2@@@X# @ L psR@@@@@@@@@@@@@@@@@g4aI@@ /@#L1@d@T@,Q QT@C/@,@ C R@@u@E4sXh@TduI4TL,y*R4@T  ) @p@8  8@I^@,# s R@@, 8s7CTap@4h/@ F@@]XC /@ @@@@@@@@@@@@@@@@g]Fp@RdCaX@,Q1m@d@@F|Eg@@ m@,y@@sT1@, @u@a@  Cd@FQ@ @ Q8[I@bE v@@>pE 4p@;@E 4kCTap@d1X@/ u@XL# sXRk@@@@@@@@@@@@@@@@@g;Cu8|7 @,8X@nv@u@L@ @ 8@F@@,@ @@F4un@ E 1F4@@X ps g ERW%@X  p@C^@8 pC@LkJ T 4@@ m@,C@@2ph@@@@@@@@@@@@@@@@gun@,muC@@F4ps@ 4pI@CEp4k@pXyh@Q@E|p4@ |p4@C |p4@Cp|p4@s@ |@d@ XJ  h@ =L p Lp@ @C /@ @@@@@@@@@@@@@@@@g,R@I@yE 1@@ m@,d @hQX@,Qp@@X  b@@&L@ @@F42R@@ |L|h@Qh4*TT8 F|L=|@Qd,&yF|L>|@LvEOL,4T8g@F|L|@RvE@@@@@@@@@@@@@@@@g;OI)7@F| @|@EX|%OL,4T8g@F| |@RX|%OI)7@F|T@Q,m&4v@F| |@QEy,y F| CI8@Q,%yhpF| I8@u@F| EI8@QTy)IF| F8@Qhy@@@@@@@@@@@@@@@@g)s4F| I8@Q*4F| |@T@F| I|@X@F| J|@F| |@ F| L|@[@F| C@Q F]F| |@%uF| O|@huF| |@%@F|@@@@@@@@@@@@@@@@ggW Q|@)F| R|@h| F| |@%|pF| TC@Q&I8vTpF| |@u)pF| I8@QTyhy)F| W|@=I)pF| XI8@QT)mI@F| h@QIzdpF| J8@yv@@@@@@@@@@@@@@@@g/FF| [h@QvFJF| h@Q]&FXuF|]h@Q]IvXpF| ]h@QL,upF| ^h@%I F| @ | @ | a@W@| b@| #@p| d@@@@@@@@@@@@@@@@@gv | %@L| &@a| g@| h@ | )@2a| *@F| k@C[@| m@ | n@p| /@*| p@8p| 1@C |@@@@@@@@@@@@@@@@g,v s@z| 4@C]| v@)@| 7@&p| 8@@| y@Tp| z@ p| ;@h@| |@ @| =@ | >@ORa| @Oba|C)@@@@@@@@@@@@@@@@@gn |@@Q@|@Q |J&@[|@C pOX CTy@u8@n@,  @d@F=L p8@@F|E@@ /@#a @@X p8@@F|@@ /@#b@@@X p8 @@F|@@@@@@@@@@@@@@@@g[I@@ /@#b@@X p8h@@F| @@ /@##@@@X pgp@@F| @@ /@## @@O@,C@@@hO@,d @8|@O@, @@y@C O@md@|@8Cp @R @@m@|v@@@@@@@@@@@@@@@@gO  )p@T@O@,#@yhO@md@p@R@ Cp @JCp @R@I@C%@@|2R@C%Ra@|v@C% @|s)@@> @|s)@@>@|s @C%p@|s @@@|s@C&@@|@@@@@@@@@@@@@@@@g&7s@@>p@|sX@C&@|sX@@ @|s@C& @|s@@@|2Q@ @|s[@@@|4y@ @|un@@1p@|p@@1ba@|7W@@2a@|2I@@a@|7E@#@@@@@@@@@@@@@@@@gQ@|p@@n @|4@C&p@|4@Cg@@|sL@CgRa@|sL@@>@@|7 @Cg @|7 @@ @|ps@Cg2a@|ps@Ch@@|zX@Ch@|zX@Ch @|yO@Cap@|yO@@@@@@@@@@@@@@@@@g|WChp@|v&@C)@ @|v&@Ca @|4z@C)@|y&@C) @|v@C)2a@|8 @C*@@|y@C*@|8%@C* @|8)@Cb@|8,@C*p@|8@Ck@ @|u@Ck@|>@@@@@@@@@@@@@@@@gI n@Ck2a@|>p@C,@||@Ca@|>2@Cb@@|>s@Cm@@|>u@Cm @|>7@Cn@@|>y@Cn @|>;@C/@@|>=@C/ @|>@Cp@@|@Cp @|C@k@@@@@@@@@@@@@@@@@gvp|@C1@|F@C1p@|@C2@|J@sp@| @Cbp@|L@Cs@|@Csp@|@C4@|R@C4p@|T@Cu@|@Cb @|W@C#@@|X@Cv@@@@@@@@@@@@@@@@g/8@|@Cvp@|@C7@|^@C7p@|pW@C8@@|a@C8ba@|#@Cy@@|%@Cy @|g@Cza@|)@Cz @|k@C;@@|m@C; @|/@C|@@|1@@@@@@@@@@@@@@@@@gC| @|s@C=@@||@C=@|p=@C= @|7@C>@@|y@C> @|;@Ca@|=@C @|@@@@@O@W@@@ I O@W@L@@@O@W@T@a O@W@@@@@@@@@@@@@@@@@@gz| O@W@d@ @O@W@,@C# @O@W@p@CI O@W@8@C#@O@W@|@ O@W@ @O@WL@E O@WT@E @O@W@F@E O@Wd@Fa O@W,@@@O@W4@@@@@@@@@@@@@@@@@g,,a O@W|@@@O@W@ @O@WL@/1 O@W@I@O@WX@IpI O@W @@@O@Wd@J I O@W,@@pE O@Wp@ @O@W8@ pI O@WC@@L@O@@@@@@@@@@@@@@@@@gy^WC@LpI O@WC@ I O@WCX@ 1 O@WC @I O@WCh@Ca O@WC,@O@@O@WC4@Oa O@WC|@@@O@W@ @O@WL@Q@@O@WT@Q I O@W@R@@@@@@@@@@@@@@@@@gz @O@Wd@Ra O@W,@[ @O@Wp@@O@W8@p@O@WE@@TI O@WE@g@@O@WEL@@I O@WET@ @O@WE@@@O@WEd@ @O@WE,@W@@O@WE4@@@@@@@@@@@@@@@@@gmhW E O@WE|@X@I O@WF@&Q O@WF@XpI O@WF@d@O@WFT@ @O@WF@@@O@WFd@a O@WF,@[@I O@WF4@[ @O@WF|@ O@W@@1 O@@@@@@@@@@@@@@@@@g8W@@@@O@WL@]@@O@WT@] @O@W@^ O@Wd@@2@@O@Wh@@n O@W,@@I O@W4@ @O@W|@ @I O@W@ I O@WL@a@@O@WT@b@@@@@@@@@@@@@@@@@g1FI O@WX@bpI O@W@aa O@W @bI O@C@b I O@@d@bpI O@@p@#@@O@J@#I#v@IFhv@# @@OT@= C *L,Fh2p@ R@OX@C@ L*@pFhv@@@@@@@@@@@@@@@@g|*@# @|X= g* XFhd@ L/@&4X @@ @Fd^@bQ Q ud @@@4#pRI*TF,d@ @Fd^@bQ WI@udd@@@4#pRI*yF,dp@ @Fd^@bQ Q=@udh@@@4#pRL*OdF,%@@@@@@@@@@@@@@@@g|L@ @Fd^@bQ R@ ud,@@@4#pRL*O,F,%p@ @Fd^@bQ R@udp@@@4#pRI*O4F,&@ @Fd^@bQ T@ud4@@@4#pRI*gpF,&p@ @Fd^@bQ RC@ud8@@@4#pRI*LF,g@@@@@@@@@@@@@@@@gg@ @Fd^@bQ Q#@ud|@@@4#pRL*LF,gp@ @Fd^@bQ R@@u%@@@@4#pRI*h4F,h@ @Fd^@bQ Q]@u%@@@4#pRI*ypF,hp@ @Fd^@bQ Q|@u%@@@4#pRJ*O8F,)@@@@@@@@@@@@@@@@g^@ @Fd^@bQ W@u%L@@@4#pRL*zF,)p@ @Fd^@bQ WQ u%@&h a%8@IT @,F @@CRO@4 ,b bukJh@& I m@C@@) FvQ Q u%@p@@@@@@@@@@@@@@@@g;p h@@@4#pRJ* TF,k@@ @Fd^@bQ Q# u%@@@4#p C[dFh1@2n@IpX E 4@@@Q8FamdTCTh W @%@@8Ehp@@@ |@#v2J* TF,,@@ R@4X@@@@@@@@@@@@@@@@g2I @@ @Fd^@ Qh[E@uE*C@IL @,F @@CRO@QhF)@22@@@Q8IE@ua&CX@@CRO@4 ,b buk @hpI m@C@@) FvQ Q u%*@Rp h@@@@@@@@@@@@@@@@@@@gd^4#p C[hFhm2v@JX E 4@@@Q8IE@uE*C8@@CRO@4 ,b #k @gI2O@4 ,b #k d@d@I2O@4 ,b#k h@h RO@QdF* 2;@@@Q8@@@@@@@@@@@@@@@@g%XFamdTCTW ^@@%@zQ8FamdTCTh ^ @%4@zQ8FamdTCTh @@%vJFQ8FamdTCTW  @dvQ8FamdTCTh @@%J@nQh@ u2 y@ W@@%@nQh@@@@@@@@@@@@@@@@@g*# u4 y@ WQ@@%T@nQh@ uv y@ Q @%@nQh@ uz y@ Q @%X@nQh@ u> y@ Q @%@nQh@ uT@ y@ Q#@@%^@nQh@ uT y@ Q @% @nQh@ @@@@@@@@@@@@@@@@gykuT y@ Q @%b@nQh@ uTF y@ Q @%h@bQh@ uT y@ Q @%*@bQh@ uT y@ Q @%,@bQh@ uTR y@ Q @%n@bQh@ uTX y@ Q @%p@bQh@ uT@@@@@@@@@@@@@@@@g@ y@ F @%2@bQh@ uT@ y@ Q# @%8@bQh@ u y@ Q@@%z@bQh@ uT| y@ Q @%|@bQh@ u y@ Q @%>@bQh@@uRz y@ @@%d@bQh@ uT>@@@@@@@@@@@@@@@@g>^ y@ R@@%&@bQh@ uT> y@ X @%L@bQp u@RCT TyC@@CCu@W@hFh @ 4@@@Qp uhCT aCTp@@CCu@z@Fh @ 4@@@Qp uhCT@@@@@@@@@@@@@@@@g4 aCT@@@CCu@z@Fh @ 4@@@Qp uhCT TyCT@@CCu@zLFh @ 4@@@Qp@uhCT QCOp@I d@T @u@RCT@RCd@up@@@p=@@@@@@@@@@@@@@@@gkEnb*CFh @@ @Fd@TF @u@RCRCd@ud@R I@E@XCT  ud y@ XE@@@LOT@@dF*C@@)@E@XCT  uT^ y@ Q @@LOTX>bu*C@@)@@@@@@@@@@@@@@@@gv@E@RCT  uTJ y@ Q @@LOTXm 4*C@%R@J@pFh I*)@I2@bu@@@X^h1| uE*CTF @@CR@J@dFh @ I*)I2@#;@@@X^h7@uhCTF @@CR@@@@@@@@@@@@@@@@g8]@J@dFh @ I*)LI2@d@@@X^h7@uhCTF @@CR@JCFh @ I*)I2@n@IX#  I*CFh* Fh>p@ @F*@ms @uh@@@4#  I*CFh*@@@@@@@@@@@@@@@@g  Fh>@ @F*@ms @uh@@@4#  4*CFh* Fkg@@ RW@Q8@hC@ I*@dF*%pd* T@@az vCTh @@@ 8@h 4*@dF*%d*@@az 8CTF@@@@@@@@@@@@@@@@gE @@@ 8@h 4*@dF*d d*Od@@az 8CTF @@@ 8@h @ 4*@dF*& d*yp@&@R@J@pFh I*),I2@bu@@@X^h2@uE*CTF @@CR@JCFh @@@@@@@@@@@@@@@@g4L@ I*gI2@dE@I|#  I*CFh)2 Fh @ @F*@n @uh@@@4#  4*CFh)2 Fk%@@ RR@Q8@h 4*@dF*k d*O|@@az CTF @@@@@@@@@@@@@@@@@g@@@ 8@hC@ I*@pF*,@dk@@@az CFX R@@@ 8@h I*@dF*,dk@@@az 8CTF @@@ 8@hC@ I*@pF*,@d*O|@@az CFX R@@@@@@@@@@@@@@@@@@gF)@ 8@h I*@dF*,d*O|@@az 8CTF @@@ 8@h 4*@pF*k d*@@az a&CT @@@ 8@hC@ L*@dF*m@dkCL@@az CO @@@ @@@@@@@@@@@@@@@@gEL8@h I*@dF*,pd*@@az 8CTF @@@ 8@h @ 4*@dF*mpd*gp@*@I2@J@pFh I*h8I2@bu@@@X^h1| uE*CTF @@CR@J@dFh I*dI@@@@@@@@@@@@@@@@gCQ2@bu@@@X^h1 uhCTF @I @,@ Qh Q uCTR@F@&@@, Q uhCC@@@C@4F,F@@ @F&@@, @u@RCvp@@C@4Fkm @ @F&@@, @u@XC p@@@@@@@@@@@@@@@@gv2@@C@4F,W @ @F&@@, QI@uEC p@@C@4F*[ @ @F&@@, F@uhCTX8@@C@4Fh1p@ @F&@@,  uhCI@@@C@4F,R@@ @F&@@, @uC @@@@@@@@@@@@@@@@g^#@@C@4F, @ @F&@@, @udCJp@@C@4F, @ @F&@@,T8 @uRC8h@@C@4Fk1@ @F&@@,T8 F@uhCQh@@C@4F*#@ @F&@@,T8  uhC4p@@@@@@@@@@@@@@@@g/@@C@4Fk) @ @F&@@,T8 @uF,C=p@@C@4Fk; @ @F&@@,T8 Q uFpC8@@C@4F,Ip@ @F&@@,T8 QF uhC1 @@C@4F,[@@ @F&@@,Qh Q uF4Cu@@@@@@@@@@@@@@@@gn4@@C@L,Fk* @ @F&@@,Qh  uhCv@@C@L,Fk,@ @F&@@,Qh @ubC>@@C@L,Fk| @ @F&@@,Qh @uFvC>p@@C@L,Fk= @ @F&@@,Qh Q2@uhC1 @@@@@@@@@@@@@@@@g ]@@C@L,F,[ @ @F&@@,Qh  uhCLp@@C@L,F, @ @F&@@,Qh  uhC| @@C@L,Fky@@ @F&@@,  uhC@@@C@L,F,@@ @F&@@,  uhC=@@@@@@@@@@@@@@@@@gRk@@C@L,Fkz@@ @F&@@,  uhCsh@@C@L,Fkg@ @F&@@,R  uhC48@@C@L,F,p @ @F&@@,R F@uhCTX @@C@L,F,pp@ @F&@@,R  uhCu@@@@@@@@@@@@@@@@@gE/@@C@L,F,1@@ @F&@@,]  uhCF8@@C@L,F,1@ @F&@@,]  uFCu8@@C@L,F,1 @ I/@|11W@@L|CWaO@T&@L|2@@&)@L|CaO@@@@@@@@@@@@@@@@@g>C&)@L|4pJ F2vsX@L|2@CQ%T@L|2 @C%&s@L|2pJ sX%|&g@L|@ X Ig)&T4)@L|CWQO@2sg@L|s@@EW&ps&@L|C7@ER@@@@@@@@@@@@@@@@gEW%@L|QO@E4%s#@L|CWO@EvX# LEhp@@@ |bnQkL4@@) dRC2X g@@@ |bnkL|@@) dTC2p h@@@ |bpnWk @@)@@@@@@@@@@@@@@@@gIF dXCs@ )@@@ |#@nk @@) dCs ) @@ |b #=k @@) dCOp * @@ |bp)|k X@@) dRCT p k @@ |b#k @@)@@@@@@@@@@@@@@@@gk  dCTXp , @@ |bdCk h@@) dRCT @ m @@ |bp* k p@@) dCsX n @@ |bn]k 8@@) dCsp / @@ |bpnk@@@)@@@@@@@@@@@@@@@@g T dTC4 p @@ |#@nk@@) dRC4 1 @@ |#@nFk@@) dRC4h 2 @@ |b n&kX@@) dTC48 s @@ |b nhk @@)@@@@@@@@@@@@@@@@g| dCu 4 @@ |#@n*kh@@) dXC1 u @@ |#@nkkp@@) dTCu v @@ |#@nmk8@@) dCu8 7 @@ |bpn1kO@@@)@@@@@@@@@@@@@@@@g= dCph 8 @@ |#@nkO@@) dRCv y @@ |bpnvkO@@) dRC7@ z @@ |bnzkOX@@) dRC7 ; @@ |#@n>kO @@)@@@@@@@@@@@@@@@@gRz dRC8@ | @@ |b/kOh@@) dCh = @@ |bp/EkOp@@) dRC88 > @@ |b/IkO8@@) dRCTy8  @@ |#@n k@@@)@@@@@@@@@@@@@@@@gF dCyh @ @@ |#@/Ok@@) dXCz  @@ |#@/k@@) dXCzh  @@ |#@nJkX@@) dC1 C @@ |bp/k @@)@@@@@@@@@@@@@@@@gR= dXC;X  @@ |#@/]kh@@) dXC;8 E @@ |#@/ kp@@) dXC| F @@ |b/dk8@@) dRC|p  @@ |b/hkQ@@CL1@@@@@@@@@@@@@@@@gn O@ICL@@ O@g|@#v2J*yTFm@ TO@&4X @@ @Fd^@bQ g uhd@@@4#pRJkhFmp@ @Fd^@bQ WI uhh@@@4#pRJ*yTFmE@ @Fd^@bQ R^@uh,@@@4#p@@@@@@@@@@@@@@@@g/FRJkCTFmEp@ @Fd^@ Qh[E@ua2C#@@J@d^@ Qh[E@udC#@J@d^@ Qh[E@udC#@I/@d^@ Qh[E@udC#X@Ik d^@bQ W@uh8@@@4#pRJ*zTFm@ @@@@@@@@@@@@@@@@gmX@Fd^@ Qh[ u]4C#p@JO@d^@bQ W=@uh>@@@4#p C[dF) 4 @R@4#p C[hFk)@4a@L4#p C[dF,a@4b@R4#p C[hFk;@4#@OT#p @@@@@@@@@@@@@@@@gC[hFkz 4d@ ,#p C[hF,@4%@L8#p C[dF,a@4&@RX4#p C[hFk;@4g@T#p C[hF,@4h@OL4#p C[hFkm@4)@L#p C[@@@@@@@@@@@@@@@@gdkdF) 4*@Rh#p C[hFk)@4k@OX#pRJk@Fm @@ @Fd^@bQ W@u)@@@4#pRJ*8Fm @ @Fd^@bQ XC@u)^@@@4#pRI*FmL@@ @Fd^@bQ X@u)b@@@@@@@@@@@@@@@@@g/4@@4#pRI*hXFmL @ @Fd^@ Qh[ uLC&X@J@d^@ Qh[E@u]4C& @J d^@ Qh[E@u C&h@I; d^@ Qh[ uLC&p@J[@d^@ Qh[E@u]8C&8@I| d^@ @@@@@@@@@@@@@@@@g2Qh[ uLCg@@J@d^@ Qh[E@u^@C& @Im@d^@bQ XF u)2@@@4#pRI*|@Fm @ @Fd^@bQ Wd u)v@@@4#pRI*|FmO@@ @Fd^@bQ W]@u)z@@@4#p C[dF@@@@@@@@@@@@@@@@gn[k)4>@d4#p C[dF, 4@|TL#pRJ*84Fm@@ @Fd^@ Qh[E@uCh@J]@d^@ Qh[ u8Ch@Jaad^@ Qh[E@u ChX@J] d^@ Qh[E@u@C@@@@@@@@@@@@@@@@@gJ^@d^@ Qh[E@u@Ch @J^ d^@ Qh[E@u@Chh@Jad^@ Qh[E@u|Chp@I=@d^@bQ X@u)b@@@4#pRI*XFmQp@ @Fd^@bQ W@u)@@@4#pRJkXFmR@@@@@@@@@@@@@@@@@g @ @Fd^@ Qh[E@u^C%h@I> d^@ Qh[E@u^C)@I@d^@bQ X u& @@@4#pRJkpFmL@ @Fd^@bQ W@u)@@@4#pRJkFmR @ @Fd^@bQ  u*@@@4#p@@@@@@@@@@@@@@@@gXz C[dF) uL@Tp4#p C[hF,Iu @O|4#p C[hF)spu@ #pRJ*|Fmp@ @Fd^@ Qh[ u*C*@@JX@d^@ Qh[ u]4C*@Jh d^@ Qh[ @@@@@@@@@@@@@@@@gCuCh8@J# d^@ Qh[E@u]4C%X@Jh@d^@bQ R^@u*d@@@4#p C[hFkdpu@X#@I*Q Ip1|@#@I*QhIp1|@ #@I*Q,Ip1|@@@@@@@@@@@@@@@@@gpFQp#@I* Ip/*@R#@I* Ipn8@RT#@L*QpIpp@@@X^h7>@uhCTF @JQ d@  RC2@@@CCu@yFh @ 4@R#@L*@@@@@@@@@@@@@@@@gEIpn@@@X^h7I uhCTF @J d@  RCC @JT d@  RCv @J d@  RC2p@JO d@ T8 RC@@CCu@zF)  4@R@@@@@@@@@@@@@@@@g4*#@L* Ipnd@@@X^h2C@uhCTF @JW@d@  RCp@@CCu@zTFh @ 4@#@I* IpnI@TL#@I*Q|Ipn|@T#@I* I@@@@@@@@@@@@@@@@g*[pn @T@#@I* IpnJ@#@I* Ipn|@#@I* Ip/@@R|#@L* IppF@@@X^h7 uhCTF @Jd d@  RC88@@@@@@@@@@@@@@@@@gJ% d@  RCT78@@CCu@WTFh @ 4@T4#@I* Ipp%@ @#@I* Ipn[@#@L* Ipp@@@X^h7R uhCTF @Jg@d@  R@@@@@@@@@@@@@@@@g)CTy8@Jg d@  RCs@@CCu@LFh @ 4@R,#@I* Ipnd@L#@I* Ipn@Q#@I* Ipn@#@I* Ipn@@@@@@@@@@@@@@@@g2W@QX#@L* Ipd|@@@X^h8 uhCTF @JJ@d@  RC2X@@CCu@WCdFh @ 4@QT#@L* Ipn@@@X^h8 uhCTF @JI d@  R@@@@@@@@@@@@@@@@gdCE@@CCu@WCdFh @ 4@Q#@I* Ippy@Q#@L* Ippu@@@X^h8 uhCTF @JL@d@  RC@@CCu@WCdFh @ 4@ #@I@@@@@@@@@@@@@@@@gh*Ip1v@Qd#@I*T|Ipp@Qh#@I*RTIpp@Q,#@I*RIpp@O,#  L*@pFh&XF)sp@ @F*@n@ Wg uh@@@4#  4*C@@@@@@@@@@@@@@@@g/1FhdFk)@ )@Q8@h I*@dF)@dkCd@@az ^^CTF @@gQp@uhCT RCy8@Iu@ d@T @u@XCT,@RC u]L@@@p=EnQ*zXFh@@@@@@@@@@@@@@@@g= @@ @Fd@T @u@XCT,@RC u]@@@p=EnQ*zFh @@ @Fd@T @u@XCT,@RC u]@@@p=EnQ*z Fh @@ @Fd@T @u@XCT,@RC ub@@@p=EnQk Fh @@@@@@@@@@@@@@@@@gv^@ @Fd@T @u@XCT,@RC u]^@@@p=EnQ*z|Fh @@ @Fd@T @u@XCT,@RC u]b@@@p=EnQ*;Fh @@ @Fd@T @u@XCT,@RC u@@@p=EnQ*> Fh @@ @@@@@@@@@@@@@@@@ga@Fd@T @u@XCT,@RC uan@@@p=EnQkCFh @@ @Fd@TF @u@RCTa@RC u&@]8y@E@RCT  u ^ 8 @@@LOTF  4*C@@)@E@XCT  u @@@@@@@@@@@@@@@@gg  8 @@@LOT@p*C@@)@E@RCT  u 8 X>@@@LOTQ  4*C@@)@EhCTF  u b 8 X#@@g @nQp u@RCT RyC @@CCu@W@@@@@@@@@@@@@@@@gIhFh @ 4@@@QpF@u@XCT RzCI@@@CCu@WpF,  4@@@QpF@u@XCT RyaC @@CCu@WpF,F  4@@@Qp u@RCT R;aCO @@CCu@WF@@@@@@@@@@@@@@@@gpFh @ 4@@@Qp u@RCT RzaCI@@@CCu@WFh @ 4@@@Qp@uhCT R;C@I8 d@T F@u@RCT/RC uab@@@p=EdFkCFh @@ @Fd@T @@@@@@@@@@@@@@@@g#vF@u@RCT/@RC ub@@@p=E1|kCFh @@ @Fd@T  u@RCT/RC u#8@@@p=Ep1*CFh @@ @Fd@TF @u@RCT/RC u@^y@E@RCTF  u | 8 R@@@@@@@@@@@@@@@@@@g*d@@LOT[  4*C@@)@E@RCTF F@u 4 8  @@LOT[bp&*C@EQ R@JCFh @ I* Ip/ @#  I*@dFhC@dFk%@ @F*@m2h W u@@@@@@@@@@@@@@@@guh@@@4#  I*@dFhC@dFkdp@ @F*@m2X W uh@@@4#  I*@dFhC@dF)O@@ @F*@,g W uh@@@4#  I*@dFhC@dF,J @ @F*@nE W uh@@@@@@@@@@@@@@@@@gWa@@4#  I*@dFhC@dF)sp@ @F*@,y8 W uh@@@4#  I*@dFhC@dF, @ @F*@nFh W uh@@@4#  I*@dFhC@dF,@ @F*@n W uh@@@@@@@@@@@@@@@@@@g1p@4#  4*CFh%|F*@@ n@W8@h)p L*@dF)@dkh@@az LCT X W @)*@bQp@uhCT RCh@J@@d@T  u@RCT1@RC u@@@p=@@@@@@@@@@@@@@@@gbE&*hFh @@ @Fd@T @u@RCT1@RC u >@@@p=En4*CFh @@ E@g8@h @ 4*@dF)@d*gp@u R@J@dFh I* Ip1 @@@X^h7h uhCTF @@C@@@@@@@@@@@@@@@@g=R@JCFh @ I* Ip/Q@L#  I*CFhdF*g@@ @F*@nIh @uh@@@4#  I*@dFhdF,p@ @F*@mzX @uh@@@4#  4*CFhd@@@@@@@@@@@@@@@@g#bFk4p@ T@Q8@h 4*@dF)@d*h,@@az b^CTF @@@ 8@h I*@dF)@dkE@@az ^*CTF @@@ 8@h I*@dF)@dkX@@az ^*C@@@@@@@@@@@@@@@@g4TTF @@@ 8@h @ 4*@dF)@d*=T@ER@J@dFh @ I* Ip#=@@@X^h8h uhCTF @@CR@J@dFh @ I* Ip*@@@X^h8*@uhCTF @@CR@J@pF@@@@@@@@@@@@@@@@g**h I* Ip/&@@@X^huF ub@CTF @@CR@J@dFh I* Ip1T@@@X^h7F@uhCTF @J@d@TF @u@RCTa@RC u]4@^ I@E@XCT  u 8 W@@@@@@@@@@@@@@@@gW=@@@LOT[)@p**C@@)@E@RCT F@u 8 W]@@@LOT[)@nv*C@@)@EhCTF  uL 8 X@@h@bQpF@u@RCT R]aC2h@@CCu@LXFk% @@@@@@@@@@@@@@@@g4@@@Qp u@RCT RCE@@CCu@y8Fh @ 4@@@Qp u@RCT RCFh@@CCu@||Fh @ 4@@@Qp uhCT RCTX8@@CCu@yTFh1p 4@@@@@@@@@@@@@@@@@g/&@@QpQ u@XCT RTC= @@CCu@WFh1 /b@@@X^h1#@uhCTF @@CR@J@pFh L*R Ipn@@@X^h1#@uCTXp@@CR@J@dFh @ I*,Ip#F@@@@@@@@@@@@@@@@@@g^k@X^h7J uhCTF @@CR@JCFh @ I*X4Ipp @X#  I*CFh&F)/p@ @F*@m88 @uh@h y@EhCTF  u 8 WF@@h@bQp u@RCT@@@@@@@@@@@@@@@@gs  RCJp@@CCu@=dFh @ 4@@@Qp@uhCT RC;@J@d@T  u@RCTa@RC ubp@@@p=E/[*CFh @@ @Fd@TF @u@RCTa@RC u^v@a@@@@@@@@@@@@@@@@gI@E@RCTF  u 8 Xm@@@LOT@ 4*C@@)@E@RCT  u 8 Xn@@@LOT[7 4*C@@)@EhCTF  u 8 Wn @hT@bQp uhCT R@@@@@@@@@@@@@@@@g)>C p@@CCu@WEpFh @ 4@@@Qp u@RCT RCL@@@CCu@=|Fh @ 4@@@Qp@uhCT RC;8@JE d@T @u@RCTa@RC uT2@@@p=E1 @@@@@@@@@@@@@@@@g# *CFh @@ @Fd@T  u@RCTa@RC u#F@@@p=E/ *CFh @@ @Fd@TF @u@RCTa@RC u@@a I@E@RCTF  u 8  @@LOTXp 4*C@@)@E@XC@@@@@@@@@@@@@@@@g1 T  u 8 Ws@@@LOT#p*C@ER@I2@JCFh @ I* Ip/@O #  I*CFhdF, @ @F*@n@ @uh@@@4#  4*CFhdF,@@@@@@@@@@@@@@@@gga@@ b@Q8@h I*@dF)4d*> @@az a^CTF @@@ 8@h 4*@pF)@d*@@@az bTC@p @@)Qp@uhCT RC4h@Ih d@T @@@@@@@@@@@@@@@@gRI u@RCT&XRC u^@@@p=EnX*CFh @@ @Fd@TF @u@RCT&XRC up@I@E@XCT  uL, 8 Q @@LOTXm1**C@@)@EhCTF  u 8 W @@@@@@@@@@@@@@@@@g%p@g@bQp uhCT R>aCT @@@CCu@88F,  4@@@Qp@uhCT RC4h@Iu d@T  u@RCTa@RC uL@@@p=E* kFh @@ J@g8@h @ 4*@@@@@@@@@@@@@@@@g;L@dF)@d*|d@4pR@J@dFh I* Ippy@@@X^h7 uhCTF @@CR@JCFh @ I*Ip/O@p#  I*CFhdF*#@ @F*@nFh @uh@@@@@@@@@@@@@@@@@@g8s@4#  4*CFhdFksp@ ]@Q8@h I*@dF)@d*|@@az 4CTF @@@ 8@h @ 4*@dF)@d*yh@7pR@J@dFh I* IpgO@@@X^h@@@@@@@@@@@@@@@@g7T uhCTF @@CR@JCFh @ I* Ipn)@@#  I*@dFhdF)sp@ @F*@ms @uh@@@4#  4*CFhdFk&@ T @Q8@hC@ I*@dF)%@d@@@@@@@@@@@@@@@@g^;* T@@az FLC  @@@ 8@h @ 4*@dF) @dk@@uE2@J@pFhC@ L*,Ip2@@@X^h8>@u 4CCp@@CR@J@dFh L*RXIp1|@@@X^h8>@u@@@@@@@@@@@@@@@@gE4JCTF @@CR@J@pFhC@bg* Ipp1@@@X^h2C@uabCT p@@CCu@8TFh @ 4@@@Qp u@RCT R#aC@@CCu@W@Fh @ 4@@@QpF@u@XCTT8 RdaC@@@@@@@@@@@@@@@@gQ7 @@CCu@XFk/@dF@@@X^h8@uhCTF @@CR@J@pFhC@ I*T8Ipp@@@X^h2C@u CTF @@CR@J@dFh L*T|Ip/h@@@X^h74@uCTF @@CR@J@p@@@@@@@@@@@@@@@@g4XFhC@ I*Ip1|@@@X^h8[ ua|CTF @@CR@J@dFh I*@Ipp7@@@X^h8@uhCTF @@CR@J@pFhC@ I*Ipp>@@@X^h2C@ua|CTF @@CR@J@pFh@@@@@@@@@@@@@@@@gOmC@ L* Ipbu@@@X^h8#@uE*C= @@CR@J@dFh I*pIp1F@@@X^h7v@uhCTF @@CR@J@pFhC@bg*Ip/,@@@X^h2@@uXCT @@@CCu@; Fh @@@@@@@@@@@@@@@@@gE] 4@@@Qp u@RCT R2C=@@CCu@; Fh @ 4@@@Qp u@RCT R2aC@@@CCu@W@ F,@@ 4@@@QpF@u@XCT R2aC@@@@CCu@XF,@@ @@@@@@@@@@@@@@@@g 4@@@Qp u@RCT RvCC@@CCu@WhF,  4@@@QpF@u@XCT RvCCp@@CCu@XF,  4@@@Qp@uhCT aC1@I, d@T F@u@@@@@@@@@@@@@@@@@gpsRCTgpRC uI8@@@p=Ep*pFh @@ @Fd@T  u@XCT&pRC uab@@@p=Ep*LXFh @@ @Fd@T  u@XCTdXRC u]8@@@p=Ep*LXFh @@ @Fd@T  u@RC@@@@@@@@@@@@@@@@ghTa@RC uX@@@p=En*CFh @@ @Fd@TT8 Q u@RCTa@RC u@@@@p=En8*LFk/ @ @Fd@T F@u@RCTa@RC u @@@p=Ep@kFh @@ @Fd@T F@u@RCTa@@@@@@@@@@@@@@@@g&@RC u 4@@@p=Ep^kFh @@ @Fd@T  u@XCTa@RC ua|@@@p=Ep*LXFh @@ @Fd@T F@u@RCTgpRC ub@@@p=Ep*pFh @@ @Fd@TT8 Q u@XCTa@R@@@@@@@@@@@@@@@@gs/C ua^@@@p=E&kTF,@@ @F*@,Xp @uh@@@4#  I*@dFhC@dF)sp@ @F*@ms Q#@uh@@@4#  I*@dFhdFk%@ @F*@m2h @uh@@@4# @@@@@@@@@@@@@@@@g> I*@dFhdF)O@@ @F*@,g @uh@@@4#  4*CFh&OF,@@ |@Q8@hC@ L*@dF)@dk @@az ^C|p @@@ 8@h @ 4*@dF)bpd@@@@@@@@@@@@@@@@g>k@@7@R@J@dFh L* IpgO@@@X^h7 @uTCTF @@CR@JCFh @ I*X,Ipp @T E R@@8LX=  *F)[ @ @&OX@u %n@@R,s pCd@@@@@@@@@@@@@@@@g[|*4Fh @@ @FF@  QF uh@@@s pCd*4Fh @@ @FF@  QF uh@@@s pCd*4Fh @@ @FF@  QF uh@J7 CTQh @@@L8L@y@b *C@@g @@@@@@@@@@@@@@@@g;2CTQh @@@L8L@y@b *C@@g CTQh @@@L8L@y@b *C@@g CTF @@@L8L@y@ 4*C@@g CTF @@L@,E8@#amLz@*pC%#@@@@@@@@@@@@@@@@@@gk[@LE X @@LEp]p@ @FCb@n*8@@CF@W @@ 2 *2@@@p@E,vC Fhap@ @FCT@nk@@C@W, hF@b@@@Xpp#aE@@@p@Eu@@@X 17 @@LEp@@@@@@@@@@@@@@@@g@ @Fp@nkh@@C@] @@ ,@ *|@@@pW@Eg@@@XLhz/ @@LE [ pv [*@@ n@ k@F4CX QC @@LL8XQpd@L@@@X @zp @@LXCQO@IR)dp&Ras8@LX]@@@@@@@@@@@@@@@@gT@@ @F8@mp@@CF@W @EXIaa@@4@Ep@O@R, mX @  @@|]pvub@pp# Eu[@8p# Eu @d@E @/@Q@IC p@ ]@8]pdk@|p p@v@@@@@@@@@@@@@@@@@gQ4kC W  @@ C IF4C@[ @@,@z*h@F@un @@C@JFk p@ @F**@  [am@R@@@u@L*s hC@@ @F**@  [amE@@@uCd*s h#@ @F**@ @@@@@@@@@@@@@@@@g>1T8 [amd@@@u@I*s hz@ @F**@  [amF@@@ug*s hu @ @F**@  [amFp@@@u@L*s hv @ @F**@ Qh [amb@@@u *s )@ @F**@ @@@@@@@@@@@@@@@@g/ [am@2@@@u@I*s hb@ X@JXX@ @FL@,8[F@@@LX]Xp@ @FCJ@n, @@CX@WTFhap@ @F8@ma8 QC @@LL8XQpd@L@Lp) E L@@@Xp1 @@@@@@@@@@@@@@@@@@@gLFT] @ @Fp@n,8 QC @@LEp[F@b@@@Xpp#a@X@@@pQ Eb@p phQT@E @/@QTIEp@ @F@@a&p[Lm@,@&8C) Cm@@C@4F)@@ @@@@@@@@@@@@@@@@@gJF&@ Qh u@@@ L@#a @@@XF uk@@@4pC kp@@) Cmh@@C@4Fm[ @ @F&@ Qh Rb @@ L@#u/@@@XF uk @@@4p kW@@)@@@@@@@@@@@@@@@@gT= FCn@@C@L,Fmp@ @F&@ X z@@@ L@#&@@@@[TLI)FIh8uvLy%EL4=I|@^=,mE%%4@8@I J*J& J a@ E@@@pOpEa@@@@@@@@@@@@@@@@g,Q)L[T@Iz JJznEJn^%Lm]a@J h7@#Q)pvpQ%TpT2&%%s@L1]]  W2bgpp)QT)p2p)QT8@LXXh vb @@@z;b^@#%&#g &#R)aR*bhkR@@@@@@@@@@@@@@@@g=g@XLhp4a@8@@@p E ,CpFhaz|@Q)QTppXQ)Qs)2@L1[E@ %2bgppR4)p)QT8pR&)p#Q2spv&)T@LXXh vbQ@@@Xp1Qmn8@J%J*J&m LuL@@@@@@@@@@@@@@@@gb J&2** ag@ EF4X@@CLQ@WWd@|h&|F,I,mE%%E*CF@J )u17@)QTp))&) TQsQps)Q%2d22&%@LFXh v @E FgC[FQgIOL@@@@@@@@@@@@@@@@@g^^pREbb@*@b21W]g2p@p pEb,XXJpp@W&=L|E*|JXJTL4,|4@C F@@@Xp1QmE@@@p# @,%s)8,@L,dOp@R%Fdy)T|pCLQ@1@|h&|F,m@@@@@@@@@@@@@@@@g8aE%%F,JT@CF@J hs@@ @FR@,T[^@ XknsgX@XE8s @vp2g F7a p2npk%g &#R) g )IJ@p@R)=ITvLL4u2 @/C ,@ CR8@@ n@ X F4FX@@@@@@@@@@@@@@@@@gE@CX@8@@a @@@p%@Ea)XL@@@pp@Ea)@R@@@pW@E,C) @@ b @@LX[@v#)@@@z=b^@mO)J&1a&#ka,s&1aF*bhkWpTpE X F4FX@@C @1@ h@@@@@@@@@@@@@@@@g7zLp@ @FC2@mb@[L@@@LX[@v#@@@bz| @@L,XOp@4dLI4uI=ITv@C I@1@@& Xh@@@pQ E,Cd@@%d h@@@pp@ @F8@,Ep[Tg @@Ld[@@ @@@@@@@@@@@@@@@@/=^=E8X @@ >E8X @@ g@4X @@ @F@@a&8[ am@X@p@@C@@Q@@a# @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@W2W@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F I@d@@@@@@  IJ@IQ@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gJ8I,,E,FQ&)W@F@@@W&Ras8OR)dEOs88O&gT&@@@@@@@@O2sQQO2sRRO2s77 )O#TQOdQTs8EQ 2gO)2XFCs8QO#2XOs)dJEOQTTE OsQRss8gvFE;F@@@@@@@@@@@@@@@@gTnOdvs&gvR)svOR)4EkE O#TRO#T7OR))TQsQF@&@E@@@@@@&@@@@@@@b@COgyFFFEOR)7FELEJ#&QT#%WO%W2s&)Q##&ETQ##O%uE1E>O2s4OvX# &@@@@@@@@@@@@@@@@O%)OQ%TOdgdgOh4EE^W&s&s)4Q#2RQ#a4dgRg)&g)&RR#bR#bRT8%R&4% T24R27s &Q#R24RgQ)Q RT2dORO%T@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g7u2222222222222222222222222222p)W&Ras8ppppppppppppppppp,%JyFIFF@p@&FFFFFFFFE# %%%%%%%%%%%%%%%%%%%%%%%%%%%%&8&aQ&Rasp&Tps8g)/ z1@>@]@@@@@@@@@@@@@@@@gyh)&@u@ska@L=v@ F2;C ],@b Qhk&^; C]Lnn|@sW@T4ygn8@pCg #gphCg #gp@QEJQ#sg@&dp#&p@RIII)T1#sg@&d@@@@@@@@@@@@@@@@gQIphh ghp)C) d#)p*J*pkCaIpkRJk ks,L#sg@QTp,#%,s%pmCbpI1]R 1]R EQ]R E1]R FCmR pCmR@a]R@@@@@@@@@@@@@@@@g4*>nphh d#)p#s)pmCgpF>nphC/@,s)#gphCg /#,LpmC&pIb R@LFC @@sTQ@a@@* 8@@LudF@@C Q @@ &hbF @@sTQ@#p@@@@@@@@@@@@@@@@g#XLF@@C QQ@@ &hb@1 pXL@@Fb%#@@ &hb@ pXL@@Fb*C p@@* RT@@FbnC p@@* R@@Fb2C@@ &hb p@@* hLF@@C Q @@@@@@@@@@@@@@@@@@gEusTQ@hX@@LuJL@@FbEJC@@ &hb pXL@@FbERC p@@* IXLFC@@ &hbRpXL@@FbEQ  p@@* TzdFC@@ &hb @@sTQ@k@@* 8@@Lu @@@@@@@@@@@@@@@@@g[h@FbE&@@C Qu@@ &hb[ @@sTQ@n@@* WX@@Lu 4@@FbE>@@C QC p@@* XX@@LuLT@@FbFC @@sTQ@2@@* X@@LuL4@@FbF@@@@@@@@@@@@@@@@ga^C @@sTQ@4@@* XL@@FbFC p@@* XLFC@@ &hb pXL@@FbFC p@@* XLFC@@ &hb pXL@@FbFC p@@* XLFC@@ &hb pXL@@@@@@@@@@@@@@@@@@Ok&FbFC p@@* XLFC@@ &hb pXL@@FbFC p@@* XLFC@@ &hb pXL@@FbFC p@@[T@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@W&C@@k@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F I@d@@@@@@  IJ@IQ@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ghI,,E,FOQRO&gTE&@@@@@@ORQ&@E@@@@@Od4#&@F@@@@@OTu&@@@@@@O#Q&@C@@@@@@O#R&@C@@@@@O#7&@C@@@@@O7Q&@CC@@@@@OQ7&@C@@@@@@@@@@@@@@@@@@@@ga;@OR7&@CE@@@@@O%Q&@CF@@@@@O7dQ&@C@@@@@OQTd&@@@@@@@O2b&@@@@@@O2b)&@@@@@@O2bR&@C@@@@@O)2#&@@@@@@#)2XCO#T&@E@@@@@O2s&@@@@@@@@@@@@@@@@@g#F@@@@@OQT&@@@@@@O24&@E@@@@@@O77Q&@E@@@@@OgQ&@E@@@@@Og2&@EC@@@@@Q&)WR@OR)4R@E@@ 7@Oh4F@ 7Fgg)&OdT%Qd@F@2bRg@@@@@@@@@@@@@@@@@ghm@&)dFIE;JEE|EFO%T[Rg&@@@@[Rg&@@@@[RgC&@@@@[Rg&@@@@[#&QT)O#TQE @F@ORgsFEkEOX#sO2sQRQ2O#)O#T7O%@@@@@@@@@@@@@@@@g8WRQ2JIOR)7E #sR#sR#W#sQgW#Q)TW2s)sWhR%2s)s#&&gOR)d)QT#&QT shO#TR %O2bd gCTvgOs)dQT)OQTT[s2s))Ws2s)))s)Od)WWg)s)@@@@@@@@@@@@@@@@g2O2bW g@Ws2sTTOO2b%O#RQd2WFCFFd2gd2dyWdyWOQ7O2s7sdgCFLO%&g[2Q)XOgy##ROdR@Ts)WgTs)O2bQRF[#TQgs[g&gs)[7s#[g&@@@@@@@@@@@@@@@@g;gR)4[%2)s&gO)2b@C@@@@7sO&d@CF@TQsQ[282TsO%)g vELE/ W#ds %FW2)s)JW#&QTd[g)Ws2sO)2XJOgC gO24R[2g)s) %EW2Ts)FE O#2XW)@@@@@@@@@@@@@@@@gaQTW)QTvTs s#TvvTQTW4gd2bO&)WdW)QTCOd%OR))OvTs8g%TOTv@W%Qd2bW#7sW#2)#Ws#)# %W)#&&gOs)O2sRbO#)O#&#Tv@@@@@@@@@@@@@@@@g;pOvT##TQ2)##TRRW2g)##)#)##2sQsdgd2bQ[2g)#W%u)sd2bW)#&##TRg)#[%&gd2bW&gd2bJFd#&d)TQW%7sO7sJC ss[#)dQT)2s8g @@@@@@@@@@@@@@@@g@82sW2h%)[g&gs8g[24Rs8gOT2)XWgdsXOs7)s7T)WQd2bs7))s7)TO7QRWs7)TWXQ%dsdgWs7))OdRO%s%s%sQ%s@^@@@@@@%sR%sWu2J@@@@@@@@@@@@@@@@gICEEFERCEEFEECI@FE^IECE%4d%4dO7gR7gT7gWd4#sWd4#s%syO7)Q %)&%J gW)&%W)&%W)&%C)CE)CE)CEO%@@@@@@@@@@@@@@@@gsE&TJFTgvEWTgvITgvITgvF&@@@@@@@@ORQTg%dOTgJR@&@@@@WTgvOTgQOg7)Og7TWg7T)Wg7TTWg7))Wg7)T[g7)T[24R&)WW2)XW2)X%2)s@@@@@@@@@@@@@@@@gIsW%2)sgJ@Wg&gTJFO)W7g&g)W7g&gTOg&g[&d)[&dTJ@J@J@C@C@C@@@@@^@&@@@@@@@&@@@&@@@@@&@@@@@@@@&@&@@@@@@@@@@@@@@@@@gIX&@CO)^@@@@@@@&@F@@@@@@&@@@@@OsR# T[2gTs)[2g&g)W2sR#&@CCE&@E@F@Q)TWQ)TCO2b2@@@@@@@F@CF@FWQ@@@@@@@@@@@@@@@@gO )TOvdWQ)T@@@@sQgWsQgJCO4Qs@@J@F2%7s[282%T[T&dg282 %TWd2gs@Wd2gR)sv@FWd2gOdvs&gv&@E&@CFF&@CE@@@@@@@@@@@@@@@@g&@EFF&@Es2b7Qy2W%OQRd4#O)8O#8)2#2d4#OTg%Tu R@Tu dW2W%W2W%OdCTg%Q77dQ)2#)2#)2#C#@@@@@@@@@@@@@@@@/yOTdQTgQO)&u&@@@@@@b@@@@@@&@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g% u2222222222222222222222222222p)W)#pppppppppppppppppppp,%JyFFFFFF@p@&FFFFFFFFEd)W@Epppppppppppppppp,,,,,,,,,,,,,,,,,,,,,,,,,,,,,%L*L@@@@@@@@@@@@@@@@g1|4^FEdn[LbnF2JbmFFFFF*mL4,F8&a@m8g@u8ga@=8d@ QaL a @ a Wa@ a [aO@ ]aO a@Q2X 12@IQ2 I12@JQ2 @@@@@@@@@@@@@@@@g]J;  Q2[  12@LQ2 L12]@ Q2]  12^@Q2^ bQ bRpbbpbTbTpbbpbbpbWbWpbX@@@@@@@@@@@@@@@@gz*bXpbbpbb[b[pbbpb]b]pb^p@L@ 1L@ Q,XC2@|dJR@|,Ls|z@ y#n QaT)|#)@]@@@@@@@@@@@@@@@@gR&kQ XkQ dkQ ,kQ 4^kW1C@]8aL@;&@]y C/I4 nuJnCLd|[J*&2J&EJ,2^J/T@]z12@@ |8g[%78^|CsJs&2#Fs2k g @@@@@@@@@@@@@@@@gO>g a%,s&&pk%vg ) &kd;8gF&@]71O@;sb^^dnsJs&2#Fs2ka%1% a&b%F*;/b^ 7b8pCn>Iz 7I|@]|h4 OW&TgL|FI8vLJXyd4v)&T@@@@@@@@@@@@@@@@gz/JsI4 uJn2J&EJ,2[L4nJW); E2%EWO%%/FC%%[a7;]E^^& W C%%%%%Q7 C/>I@@7@aL@ |/@]k8 @@@@@@@@@@@@@@@@g7LJ@ Lm@@],8R4@v1 F@ |,#Jb@vs@vL@ QCn/aLR4 n^4uFdnR[RsJ*&EJ*vQ7EL@ X1h@]gpQ8g a) d#&sd,2*)aR*md]2@2@@@@@@@@@@@@@@@@g &CC%sO 2maLbhk s% s aF2%R#1aILh*]gpC &IhOJI|*g*@@]/X @7I zg, vua dgh@@]gpL@2R@RbIzF@ |,#Jb@vLp@ [v2p@]2XbI@@@@@@@@@@@@@@@@g,z&ghLEd4nLhghX@]sX@v/aL8@ ph@],8@v/a &@ Xs @]gpL vsL;O@ %&4=%>dnR[RsJ*&EJ*vJvm[JJ OFFR* J[7OaLz@ |kp@@@@@@@@@@@@@@@@gp1C*2>n @],8R|@v=a  ||v[L4nFWF,&FLzn^[JJ O7Q F@ >4 @],82%dkgaF2%R#1a%,s&&p]gpR=@;k8R 7E L@ ]pE@,yQLs8L@@@@@@@@@@@@@@@@g2kXRsXJ1,)hy*8JJk[LuL|@*svW2Qy,s1*8JJk>u@TC/%h% )&sJkag adkg X%h s %g gLhk s aO Oa&b%Fk k gR2k%J2>uX@]1 F v X@ @@@@@@@@@@@@@@@@g/^uX@]mX v/a @ [vup@]gp@@@ bmWaJ@ >,E @ [*X@]mXRpLz@ >v@]p  va @ ]dvX@]gpR) Eb a@@@ @%@uT*h*X@@@@@@@@@@@@@@@@g]CR*8T*)sT*X TsRXhs*48hs*82*X*4,kOaQhJk gp]/XRO@@]4[@7Lb@ |v8@]k8@vaL@@ ,Es]J[/7XCC%sO 2maFk*k CaI J#R&1 2)aR@@@@@@@@@@@@@@@@g W*g Rh]gpR2L*@ |1^@gJ2*X XQ,)Th4|,Es]#/7XCC%sO 2maFk*k EaI J#R&1 2)aR*g Rh]gp^Q8>g)Rk gaR*g R)a g # 2)aR*g Rh]mX^)z@4 I=@@@@@@@@@@@@@@@@g%bJnRm*)v/aLR22*^aspTsJh2&#g d],8L,*gh]>@akTg[ ,#bbIz ImJnRn^d>%Jzkav/a @ [8^@*Jy8Qs*XRJJ8[Ly),[8 @*yJy8zTk*8*y8[Ly@@@@@@@@@@@@@@@@g@),|/#J)4;R*b)aJk/gaR*g R) s aLb)aILh*@E8;2@ Q8=%sO 2maLb)aILhka%,s&&1 s%a J]gpR>L*g J^TL>^% J,n^EJ*uJav/a p@ ^8X@]p b@@@@@@@@@@@@@@@@@g7FL@ |,# JRag W aa aag = @]1 b v /I@I^^@u@Q7C &TL>CJv>%JznFn^Fs[F4)v n@ [8 @k4*yJy8zTk*8*y8[Ly),@@@@@@@@@@@@@@@@gh8>1@]ppE 7# |@ ^L88@]1 @@=%sO 2ma aR*m%a,kRkad#&sd,2*h]gp[2|#gaF*#%ga JkaR*ma,#%ad#&sd,2*h]mXdIz Lyv/aR2yR^ayXCh],8@@@@@@@@@@@@@@@@g R,nTgh|@ 4g[ ,#bbIz Jyvsa@@ |/#J)4m%sOag aJk/g 2)aR*g Rh@EnCm@]/8@7&Lh@ [/p@]k8F 7&L*@ X8dd@nQLs8LkX[T*XIs@@@@@@@@@@@@@@@@gQuRy8sXQh4k*g|yhg;L2d|@#vsvWg>2&^@*L11*kh18L2sz8 T2yg|/#J)4 RkR*b)&n>L8h@]1 @@C %sO 2maR*g R) p#% #gaF*#%g C h#&#amL@@@@@@@@@@@@@@@@g7]]gpg@vsa 4 J>uJnF4uJ&vdn^n@Qvsab@ >z@],8) v/a p@ z @]zhk@Fn;zhR^@)h))zRQhy*8I,J)1R^pz[R@,,2)4*2J2y8sTh@@@@@@@@@@@@@@@@g| k*8*JT*yz@@]s8@]2@h ;%sO 2maF#%gam R) &p*gE%)I*h]gpk vsa&@ ^mp@]zh) va,@ 7E@kyQLs8LkXI,J)1RXk4**g[L,|@*@@@@@@@@@@@@@@@@gp,vsvW),J)1RXJ44sTg>,X@];R> kns&T1OL&k%%a*kR2,2*)aR*g R)d>%%E *,n]Ov/ad@ [;Td@,,2,y,h1,|*8Jyh8[T*X*JTg[/2^ @v@@@@@@@@@@@@@@@@gQ>Im)zO@ bJL*[FFv=L2nL*>ELv&[L*hI JT=L2n,*&EJ*uJbhCk8h 7aII@ FTL>CJv,vF]JLnR2mF4uJav8@ >;h@]ppR4@7LJ@ [,X@@@@@@@@@@@@@@@@@g[]gpR| 7Lb@ [L;v@sv[,yvXJ2*XT*)sT*X[Ly,XRsX4h2y J48*JTg>;p@]gpR|m#Lb)aJk/gaOL/R#TCQOL&k%% kJ)aR*g R)a,s&1agR# d,k bh)Rk@@@@@@@@@@@@@@@@gv]%%nEb>;h@],8 7>@ T|@@],8n @I J=L2nbEJ*uJ I J4=L2nd2#JsJmF4uJ&h 8p vsaOE ;Lk[JL[OJnJb%Jn2vd2#JsJm@@@@@@@@@@@@@@@@g gQv/a;I@Jb &^2JdJb%JnF4uJavuaOF@ #/ aOJ@ [>1h@]y R) 7FLT@LFTL>CJv,vd2#JsJmF4uJ&=JnR,nv 2h @]gpR2LkF@ [zJ^ @v#@@@@@@@@@@@@@@@@gC1a#T@J J*&bnF4uJ&vdnvazgh]@*^IXF%8RJLkL*48[T*L gE ^uJnd2#JsJmF4uJ&uJmL17,O@ [|h@]n@2@@Is J*^^^m2vbF4uJ@@@@@@@@@@@@@@@@g@T&I Jd=L2n2J&Jb%JnQv/az@ ]=@@]ppR4@7LJ4 b &^Jd&*&2J&Jb%JnQvsaOI@ ^uJnd2#JsJ*&2J&Jb%JnI JT=L2nbF@@@@@@@@@@@@@@@@gvu4uJ&Qv#a#T@ 7b^[&^m2vbF4uJ&n@Iv/aOT@ [=d@p,2*L4*)y8*JT*yX X@y8Jyh8[T*@ vEb> g4 Jb &^^% J,n^bF4uJa7O4 L@@@@@@@@@@@@@@@@g;8TL>CJvb &EJmF# JnFTz*[JL^EJ,2vO@ @%@1s4sI*yX*),h18L8sX*4hy,sR8[T*];na @  >CR@pyQLs8LkXQs*XT*1sIhy,sR8*),kL**|,#J@@@@@@@@@@@@@@@@g b@v 2,X@]/8Rv 7Ob4 L^TL>CJv4dd4nEJ,2[L4nFTz*[JsJ*avOd4 bn;7sO&@ >#R@*LyQhy*8IyJ8*JT*yL>[R@)*JX*),kL**XIL@@@@@@@@@@@@@@@@g@hy[>X@]1 z )%sO 2ma8by ] @F]gpz4C &p#Jnkag  &1 dsgaLm bh)Rk%d]p z@vsaO&4 L^R*nv2m@&^2vJd&*&Jb%Iv#aOI@ @@@@@@@@@@@@@@@@gO#^% J,n^2J&Jb%Jnn@Iv/aI4 7*aOm 24d|,b,n^@n[F^2vJb%JnQvsaI4mCC%g Rk b)C)%&*) s# a kR#&s am Rh];@4 *k 8R][R@k>@@@@@@@@@@@@@@@@g#nXE8IzT4*2y8Jyh8[T*>;R@&,yQhy*8IsRygT>[R@22Tk8Qs[J48@bXILyyX X*z**X*JT*y|>R@bJ;,y @@O8R4 u8dy WaLb)aRkL&#&s @@@@@@@@@@@@@@@@g88 d2#d]2@8 y%sO 2ma8byaLb)aRkL&#&b%F*]gpR2L,h@ [v^@m*z8T*1sIhyh)Q*8*JT*y|@@va [ gb&^4dd4nEJ,2[L4nJQ7@@@@@@@@@@@@@@@@g*)Ob4 vTL>CJvb &4dd4nEJ,2JT)v 2h @]/X|Q84b)C)%gaRkL&#&b%Fk bh)Rk%d@2R@= C %sO 2ma8by p#% #aOR/I)a kR#g aR,]gpy@@@@@@@@@@@@@@@@@@g8/I 4=L2=JLdb*&4zmJuEJ,2[L4)7O7 L&Rn^v2m@v^2v4>sJ,&FvJmL1vsaO&@ > g4 Jb &^^% J,n^bF4uJa7O8@ ^*E@*>n@@@@@@@@@@@@@@@@gbXE8s8J4J2)*8R4g[s @]mX@v/aOzgh^@*>nXE8s8h)Q*8J2y4|d^@1>nXE8^s8L2y48IsJJ8X@@ @@bgT>[R@1,2yJ4y8)yz18s8IsJ@@@@@@@@@@@@@@@@g/WJ8L28Jyh8[T*@ yE# gR4 FuJnJd&*&bF4uJa7,OI@JsL*]J,b,n^2J&Jb%JnQ7,OWI@ [L*]J,b,n^bF4uJ&Jb%JnI J2nEJ,2[L@@@@@@@@@@@@@@@@g;Q4nF4uJ&QvuaOFgh@@]/8v,kFghX@]y R) 7sO2,^a v8 82b^ @@@ z@]s8@]2@hu@C%sO 2m # h#&#am R)%aOL&k%d*h]gpv@@@ >p@@@@@@@@@@@@@@@@g@]1 4 v/aOR@ [sR@2ysT*8IzT4*2y8R;,2RXQs*X*JT*yX@g^2/kR@bJ;,y @TCCkRm IaLb)a  g II aRkL&#&s |=h^@b*2y4|L>[R@@@@@@@@@@@@@@@@@g/ dyz*8ILhyph@]ppymdbh)a%*&2,2*) d2#d]p mm8by W b)C)%&*) bh)Rk%d],8y v/aIum/8by W g)Rk g h#&#am Rh]p  7EO&4 b &^@@@@@@@@@@@@@@@@g8WJd&*&bF4uJa7,aO1 bn;X@ @%@|hss1|X*),kL**XT*1sIhy,sR8ILhyJyXsX*JT*yXL288T*k,y* %@1s4sI*yX*),h18L8sX*4hy,sR8[T*@ @@@@@@@@@@@@@@@@@gkTC] )&sJk% m aOL&k%dsJ/ k/&kJ#aR*m% #J) h*mdT)R*g R)ag1k% C #J) @/ %@@]hXmh@ C,s %mI@kL2)4*2J2y8Ly*2X*JT*yC,/ %h @],Xh@@@@@@@@@@@@@@@@gE@ C,s %h* @h4**I*8[T*XIsRy#mF@%F* @nyQLs8LkXy8Q*hy88RT*8[T*Cm, d>&d@bJ;,y @ @Q F^^& W WOg /a%E[ g F @1L2@ u %m@@@@@@@@@@@@@@@@gsm| J@/>[ XE8QsIm8 X@y8[T*X XLy*2C, d@@],pp@ Cms@&* @,^ynXR*khy,z*8LkX^nXE8@#,/ db|a&d@2^nXE8I,,2=8h1zJ=8T8s8*JT8[T*Cm@@@@@@@@@@@@@@@@gT@&@@]*n @ CmC@d4@@]hhT4 FW1Es@/ER CFOQWg aE&WEQR%W ]&n%I@EWIWER EQR%W ]g|dgdL@ Cms@&&d@nyJy8|8X T8T*k@@@@@@@@@@@@@@@@gOz]8X T8JJkCm&@db@@]hh@ C,s &CJ @/>nXE8I|*8IsJJ8Ih1**X*4sC,/ %F @],p)T@ C,s &Ch|@/J4J2)*8R48LkXI8LyX8s8Ly*2C,/ da|a @]g@@@@@@@@@@@@@@@@g,m|%LgdL4 Ek1mIs@/@# aF%EO gC bQJL]&,pXgd EgsIs@/@ IgOC Q Ob]WQT])@pL@ C,@d gd  EuJ%F #C[^C Q Ob]W&[ &T]#8 Rd|ak|@@@@@@@@@@@@@@@@@gC/)Th2),XsXQh)J18I|*8Ts,2* @ hCg,p,@ Cm@&* @,yQLs8LkXI8LyX8Qh)J18Ly*2C,@&F|@ay%aCm@db|a&d@)QLs8LkX[8LyX8JJkC,@&F)@%[8LyX@@@@@@@@@@@@@@@@gW8T*kC,/ %4)@%[8LyX8JJkCm@&&d@)QLs8LkXI8LyX8JJkC,@&Fd@%I8LyX8T*kCm,@%R&d@&*1,)hy*8JJkC,/ db|a @]hhp= EI ER^ %  WQX]&@@@@@@@@@@@@@@@@g=dgdL@ C,@&@@@@@J@%[8LyX8T*k4C)@pT4 E JI&%[Og QX]#81@4 )Og %bp# %&d@p)8LyX8JJk]8JJ)4*2J2y8T*kXIsRy*4#,/ %4)@%@@@@@@@@@@@@@@@@gaOh1zJ8 XI#mE@%RI@&Jy8JJkX Qhk#, db|a @]&dgdL@ CnI T@)4*kX[8IJ)sRJyXJJkX[p8hT@ QL;&1Q uEQRg[%X]%| RJ@@]&1T@ Cm@% @@@@@@@@@@@@@@@@g@]&1X@ C,/ db|a @]hhT4 E1Es@/CFOQW[C bQJOC]hh1X@ C,s dQQ EO %WR^ W %X]%|1T@ Cm@% @]hphuT@E7JI&%[[O  O%@@@@@@@@@@@@@@@@g%O[&W aE&T]#8p E%W]gO@C  O%[&W aE&T]#81L@ @Q EWFOF%WJ[ #%[Jp/ %4)@/h*JT*yX X@y8T*kXL28R*;XI,,21;&1@ C,/ dQ@@@@@@@@@@@@@@@@gn@ Cm@% @]*h@@ C,@& @]%|n%I@2W[@ O &]hh1aI@sIWO%[ E]g|dgdL@ C,s db|a @]1I E7 %WW[&g O & &WC EJ T]hhT4 F@@@@@@@@@@@@@@@@g71F%R[W%[ E& @ O &]hh RJJ@k*JT*yX L*1*X[yX*4sC,s dQQ En & W[ aE&WC[  aE&T]#8p W]gO@L@L / %J @h,2y@@@@@@@@@@@@@@@@g*42h18T*kXJJkCma@dh@@]h,@ Cm#@%b @]&1h@ C,/ dp 2%L@ C,s & p/ dQ,@ CmC@d4@@]hhT@ C,L @]m 1,@ C,/ dQ,@ Cm dpQ4@ CmC@d4@@@@@@@@@@@@@@@@@g%4@]hhT@ C,s &O@Obp/ da|b@@]h/|@ CmE@&O@@]a|dgd@ Cm@% @]ad@ Cm %@@@]#81|@ Cm,@& @]bT1h@ C,R & @@]#81p@ Cm, d>  b1Q@da@@@@@@@@@@@@@@@@gIE@O1Q@da@ 1Q@da@@@@@T@n4*h18IsRyh2y8J sm8IsRz*4yLsR @ R@;kC%L@ Cm@]%@@]kC2@ Cm@^Q@@]kC2L@ Cm@^R@@]kC2T@ Cm@^@@]kC2@@@@@@@@@@@@@@@@gn@ Cm@^T@Tb1@a@1@a@ ]@a@1@a@b1@a@W]@a@Wg]@a@X1@a@X  db@1@a@ %@a@p/ %J @,T*h18Is@@@@@@@@@@@@@@@@gRyh2y8IsRz*4yLsR#ma@& @]h& @],XsX@ C,s & Fd@,248 XIsRyh2yyXL28T*)sT*C,/ dp 2%L@ C,s & [gu & d| @@]%|dgdL@ C,s &X@@]%|%L@@@@@@@@@@@@@@@@gaIgdL@ C,s &@@]%|dgdL@ Cma@d7@@]&2,@ C,/ dp@ Cm&@d7@@]&sL@ C,/ %J|a @]hX& @ C,s &O@@]%|&@1 @]b1,@  ;%|184 EIIE F% &@@@@@@@@@@@@@@@@gL ]hp&@a@@]#8s% y&gIa aE&T]%| RO@@]hhT@ CnI@@]%| RO@@]h/|@ CmE@%@@]& RO@@]nX18@ C,@&@g/ &)@hh4y8IsRz*@@@@@@@@@@@@@@@@g4yLsR#m#@& @]&24@ C,u@@]g|s@@ hTsL@ C,@&] @]1@ C,[ &@@]1@ C,X dp@ @@g Qsy8R2y,yspF,&@a@@]s4s8@ C,s &T @]nX2h@ C@@@@@@@@@@@@@@@@gm &@@])@24@ C,@& @]&h@ Cm#@& @]&24@ T@;%|&@8s8@ C, &@@]%|24@ TL@ Cms@& @]hp&@g@@]#84@ Cm#@dp8@ C,s & @]%|&@g@@@@@@@@@@@@@@@@@gpgapL @]a4@ C, &@@]g|2@gs@ C, @]&,&@a@@]s4s8@ C,s & @]a@ C, @]b2p@ C,/ dpTL@ C,I @] |sL@ C,s &W@@]4@ C, & @]hX&@) @@@@@@@@@@@@@@@@g)@]&2|@ C,= &b @]%|24@ C,Q dp@ C,@& @@@n]E %W RO#@/ &T @]&,&# @]s44@ C,s &T @]a@ C,Q dp@ CmC@&@@]h&d@@]&2h@ C@@@@@@@@@@@@@@@@g/L,E @]h&d @]b2h@ C,/ &T&d@kR*8 L2,yLJ*XIsRyh2y#,s dOyI@E [OR&%WOQL]m /8@ C,/ &@@]& Q@@]m /8@ C,R & @@]#8s] E R@@@@@@@@@@@@@@@@g*|[F[ agW FWL]mdg44 QW]gL@EF^[Ig gWW^^WbpI @]%|24@ Cms@& @]hp&@g@@]#84h@ Cm#@dp8@ C,s & @]%|&@g@%L @]b2p@ C@@@@@@@@@@@@@@@@ghC, &>X @]a@ C,u dpT@ Cn^ &@@]&28@ C, @]b2p@ Cms@&W @]g,4T@ C,/ & @]hp&@a@@]#84X@ C,@& ]b1&@d) @]nX2h@ C,F dpLh@ C,@@@@@@@@@@@@@@@@gk7T d),|@pIh1*8R8Lkm8h4y8 X4sJIym#,/ &@@]nX2h@ C,T d) @] 4&%@@]hX2h@ C,@&]@@@FQR[QJ W^% gI&W&QF g%RO &^Obbb1Q@@@@@@@@@@@@@@@@@@g*]%|2d@ C, &@@]nXsL@ C,F &W@@]a|2d@ Cms@&@@] 42|@ C,T &@@]g,4,@ C,s &T @]nX2h@ C,/ & @]bd%L@ C,F &W@@]bdp@ C,= &% @]&@@@@@@@@@@@@@@@@g[2d@ Cms@&@@]md4T@ T,C*@ CnI@@]#2h@ CnI@@]#2d@ Cm, &% @J@kRy),J*Xs84sI*yL2kpp;%|dgdL4 E[1Es@/C%@O[g C])@dgdL4 @@@@@@@@@@@@@@@@g&XE JI&%[Cg QX]#841g kg %XJ@%2y),J*XJJkT4C)@pT4 E;g Q[/CJI&%[Og QX]#84yI@)Og %gg],@%I@1I8LyX8JJk]@@@@@@@@@@@@@@@@g]81)J,y88J1,)hy*8JJkCmE@&h|@/kQhk8Ly*2X[8yX8J1,)hy**XJJkC,s db|a&d@1yJy8J8 Qhk8]8T*yh,284*z,sXh1zC,@&g|@p TsRX,LyXsL2y84@@@@@@@@@@@@@@@@g,psI*yXyX8T*k@@ @Q nQ a%&@]@&&d@hyQLs8LkXI,yX8JJkC,@&hI@%I8LyX8T*k;mT1ag )Og QX]hh*QI@E1 aF]WC&%[C[@@@@@@@@@@@@@@@@g2Q)EE@%4)@n^QsInEh)yz18s8IT8T,k,2#,s db|a&d@)yJy8[T*8 XLy*2X[#,s %y&d@*z*8[T*8 XLy*2X[#ma@d) @]h/p@ Cma@dhJ @1^nXE8)y@@@@@@@@@@@@@@@@gFz18CILy8s8IsJJ8 TsRX[#,s %@@]&,)p@ C,# %Eh|@,*J)4*2J2y8s8T*kXIsRy*4#,@&) @@@J@/RIQ8h)Q*8Jh4),XITs,2*p,JdIg W@@@@@@@@@@@@@@@@g |g ]&,ggd] E7sIs@/%%]&W[C bQJOC EJ T]nX1X@ C,s %y @]g|h@@ ;%|/L4 E[1Es@/@ O@ aFg [L]hdgdL4 FJI&%[OpC bg@Qs@/Cp@@@@@@@@@@@@@@@@g LC bg@Qp]#8uT@ C,/ & Fd@*>nXE8JXXI,4yX XI#m@ d)d|a&d@pyQLs8LkXI>8,TzXXE8[>8,TzXC,@&* @@k*y8 T8Ry),XR8|*#,/ %F @]@@@@@@@@@@@@@@@@g4F)@p T@FWJI&%[CO@,C1%m/Cg  EIOg Qp]%|naI@E/L, C1%m//Cg ^g Qp]mTdgdL@ Cm %4I@1yQLs8LkXI82*X[8Lz*82J8|*8IsJJ#@@@@@@@@@@@@@@@@g2,@&* @]mdp,4 FW]gOWQ #/ bQJO FCOb]W E^%T@*g] @d8)gd  EsIs@4/CCsIsC@L]),)p@ C,/ dy @]hp)p4 EsJI&%[[C EJ W@@@@@@@@@@@@@@@@gIO%E a]#8uQ EW W OWOC EJ WWg @@@@J@pL2yJ4y8R*;XJ2y4|XL28RIQ8h)Q*uXE|)p@ CmF@%Fd@h>Jy)Qn8F8^RQsInCmO %J @]&gL4 EmE@@@@@@@@@@@@@@@@g QR%W [  OC EJ WWg ]&,gL@ C,/ %y @]g|1X@ C,s da|a&d@*sT*8@y8Qh)J18[T*Cms@d)d|a&d@)ysT*8JXQh)J18[T*C, &C@@],psyT@F 1Es@/@@@@@@@@@@@@@@@@g8QC Q COb]WQWCI F @  [L]hhnd@ C,s db|a @])@p T@EkJI&%[COb]WQWCs sg @]#8u@ Cm@db|a&d@nQLs8LkXI8LyX28J;y*42h18JJkCm,@%@@@@@@@@@@@@@@@@gEW @]#8p@@ @Q  &WIgOEO FO^QWFCOb]W&Q% g&WC%@kg % @],puaT@F1Es@/EOOQFO^QWCI F @[ [L]hhdgdL4 FCs@@@@@@@@@@@@@@@@gm%@OF%E#W E&C2 1p]hhnaI@E#IWOCOb]W&Q% gC2OF]p]&dgdL4 EIWOC%@O[O&WC bQJOC EJ T])@dgdL4 E[JI&%[Og ^Q@@@@@@@@@@@@@@@@gObX]m hm FI&%QWOW &FO^%[[RW &,g/ %*@*>nXE8s8IsJJ8 TsRXI#,u %*@k^[ XE8s8IsJJ8 TsRXI#m&@&m@@]&/L4 EIWCI F @@@@@@@@@@@@@@@@gRJ^[RW dEX@ss8h)Q*8XXXXXXXL2yJ4y8)yz18s8ITs,2*8*JT*yXL2ysXs#m,@%*@*,2)4*2J2y8s8IsRy*4uLkE|/4gdL@ Cm@%>@@]hhnd@@@@@@@@@@@@@@@@@gEu C,s %>d|ah|@pJy8s8IT8T,k,28L28s8h)Q* k@>^%OC EJ Ws&WIgOEOOQFO@IgO^QW&W[^%OCL]%|/L4 FW1Es@/C%O[@@@@@@@@@@@@@@@@gWg CgC2^]O%sILg d2@h]a@d) @]h/1 F1Es@/EOOQFO^QWCI F @W [L@@]&,pgdO@FWsIb%1@Xg ^%OC EJ WEQR%W@@@@@@@@@@@@@@@@gga ]g,*y FWIWO^QW&W^%OC EJ WWg ]#8p E^& W WO^g @WEQ T@b*2y4|C,s %y @]%|/4gdL@ Cm@%= @]hh/L@ C,s %>@@@@@@@@@@@@@@@@g8%d|a @]md*y QW]gL@m  &E@n &E@ng &E@/@ &@ @@/%X %g@%Q@&p@@]*u,@ CmQ@&E@@]*u|@ @Q 2^C Q Ob]WJEQ@&,h|@@@@@@@@@@@@@@@@gT@)@L2y*42h18s8JJkCmQ@&n|@)@pJ;y*42h18s8T*kCmQ@&nh|@)J;y*42h18s8JJkCmQ@%g|@gpRs8yLk2**@@ @@ @@ @Q F^& W J F RRWQ@@@@@@@@@@@@@@@@g]> F% &pEX/ %4)@p)zT4*2y8h1zJ8 XQsIhy,sR8IsRy*4#,s dvh|@mJy8T,k,28 XIQh21XIsRRR#,@&@@@@@J@2yh)Q*8 X4sI*yL2k8Ts,2*8*JT@@@@@@@@@@@@@@@@gza*yJy ,Jk4 E Q %%&[ &T]*pEI@E1W &FO%[FQ[&[ &T]*u8@ CmQ@d*I@)J2*XT*)sT*XTs,2*#,@&L)@hL2y*42h18T*kXJJkCmQ@@@@@@@@@@@@@@@@@gn%g@@]#8s4 ER%FOW FWO%%]*,8@ @@ 4kCd@ XkCv@ LTkCv@ kCvL@ LCkCv@ OX;kCd,@ O CvT@ |;kCvX@ k Cv@ Op;@@@@@@@@@@@@@@@@g OkCv @ O,k Cvd@ O Cvh@ Q CkC4L@ JCkCv,@ @kCvp@ LkCv4@ L kCv8@ 4kCgEJ @v@]@8&8@  CkC14@ |CkC7@@ X;kC7@ |;kC7@ @@@@@@@@@@@@@@@@guQ ;kC7L@ T CvT@ O| Cvh@ J4kC8d@ WCd%8@ J7@ @;*k@ Jm4@ hC*m4@ Lmh@ hJm42%L@ OL Cd@ QX Cd@ Ip Cd@@@@@@@@@@@@@@@@gk@ Q;d)p@ WTd)p@ ,C*d@ 4 Cd@ Oh Cd@ O Cd@ O@ Cd@ ;*n4@ ;d1X@ TCd)p@ Xd/h@ T/@ @)p@ kCd@@@@@@@@@@@@@@@@g u@ dCkCd@ 8kCd@ F  Cd@ F4;*dIg ERRWC %E]W%%]&1@a@b1@a@Rb1@a@Eg]@a@]@a@%@a@@yb1Q@&z@ ]@@@@@@@@@@@@@@@@gz@a@ ]@a@ %@a@]@a@dg]@a@#%@a@;E@a@;%@a@|]@a@Cg]@a@J T %y  d %v Qb1@^|,,@#F@1,)FCm@^=L@@@@@@@@@@@@@@@@g,@#FTh4|F@Q F] F%%EC QJ&[ &WCCRgO@ aFO@=b1Q@da@@]m 7,@ Wp;7478@ C,@d2) @]747|@ C,@d2) @]k8@@ C,u dpF2@C@g@%@@@@@@@@@@@@@@@@g*/F2|a,,@&4*h*XR*8[T*Cn> &@@]#8&2d@ C,@gh|@1*44sT=8I T8T*h*XIJkT*8Qhy8[T*C,8@g@ @]748@ C,@g @]kdIg  &Q& W&L@@@@@@@@@@@@@@@@ga]7478@ C,@d2) @]md7,@ @@ XL;&X%L4 Fs ^s&O&&gC F%%EQd])|% g E>%^ E WQgJ%E F%&Wb^]d@nLLy8TzR8sXT*pT*h*@@@@@@@@@@@@@@@@gI,X,y8Ih4*C,@&>@@@T@mhs*48hs*8T*h*XITs,2* @ XTJ@ Cn> &@@]#8&8%L@ Cm@% @]&,&@8u @ C/@%F,|a @]7478@ C,8@d2b@@]74@@@@@@@@@@@@@@@@gR88@ C,@gC@@]kd@ Cn> &@@]#8&8%L@ Cm,@g @]md8T@ XX;kd@ C,s@d) @])|% g E]F]gC F]W%E&&d]#88T2%L@ @@ @Q E& WQWI%&@@@@@@@@@@@@@@@@g>  &WC EJ [E@aL|@d@8hyzCmQ@%J @gaXT*)sT*XT,k,2#mQ@gC* @&8[T*XIsRy#m@daL|@kbXR,y8@]8I,22*18[X^nCm@a@@|]Q@g&d@psT,k,28 X@@@@@@@@@@@@@@@@g=Qs*J48L2sz8ITs,2*8 Cd4C%Lg%Lg&Lg)g%@@ ;8 dgdg8dgdg8T@ T;8 dgdg8hgdg7,@ @Q E& %J%Fg#CIF% #C QJ&[ &T@EQ@daL|@b*2y4|@@@@@@@@@@@@@@@@gC,u %| @@]%|%LgdL@ C,s &z @]m *@@ X,, |J@g4*h*XR*8T*)sT*CmQ@%[@@]%|k @ C, %@@@]h&kh)g]k,@pyQLs8LkXQ*z*18@8RRh4),XL*XT*@@@@@@@@@@@@@@@@g%2)sT*C,@gE&d@k2s88Q*z*18@8L*XT*)sT*@@ Cm @gF| @@]g,84@ C,@d2FJI@kRs8J2*X X*2Xhs*#,u@@]md* QW]gL]&,7Tgd@@ C,= gF @]#8@@@@@@@@@@@@@@@@g^8,4 b[Q ]%|k 2d@ C, %FJ@@]md*@@ @@ @@ Xpk Ckg d@ Cm@]8|;kd@ @Q  R]F%WCIF% #IW#Cg #FQW&OR&%WO%%%F%Q@@@@@@@@@@@@@@@@gE T@b*2y4|C,/ da|a @]g|h@@ Cm@ %FTb@@]md8u QW]gL]%|%LgdL@ Cm@ %FJ@@]md8u QW]gL]m 84@ Cm, gF*@bJ;,y @ IXI|dIg vQW IE]W^%@@@@@@@@@@@@@@@@g &WL]m )X@ C,/ dIX@ C,s g@@],%@@ Cm@dp@ C,s gI@@]yL@ C,@d2) @]ky@ T;yX @@]m y@@ C,R gI@@]#8yT@ C/ @% @]y@ C/I @]@@@@@@@@@@@@@@@@g;#8&8%L@ Cm, % @C]Q@da@CI]Q@da@ b1@L@@]kCyd@ Cm@ @@]kCy,@ Cm@@@@@@T@d Xsy@@ @XC*|d@ C,s g @]#8y8@ @,C*|d@@@@@@@@@@@@@@@@@gTn Cms@g @]#8y|@ @4C*|d@ C, g@@]g,z@ C/Q@CQbsR@d) @]&y42d@ C/R d) @])@y42d@ C,@d2FTb@@]hXy42%L@ Cma@d) @]hzX@ C,8@gQ @@@@@@@@@@@@@@@@gW,@])@z@ C,@gT@@]g,zd@  F,y4@ Cm, da@@ ]W da@@]g,z@ CmF@g&T) @]#8&2d@ Cm, d2|1 CsR d) @],Xy42%L@ Cm* g @]*z,@ C,@@@@@@@@@@@@@@@@@gE g@@]mTz,@ CmC@g&T) Cp8@g@@]zT%L@ Cms@g&T) @]hzX@ Cma@& @]%|y42%L@ Cm@g @]#8z @ Cm* g @],Xz4@ CnI@@]mTz4@ Cm#@g @@@@@@@@@@@@@@@@@g;]1@ C,@gT@Cb1Q@da@@]&y42d@ Cm* d@ C,s g @]mTy42d@ Cm@d@ C,@gW@@]mTz4@ Cm#@g CWs g&T) @]%|y42d@ Cm@g&Tb@@]#8@@@@@@@@@@@@@@@@g#Ez|@ C,= gT CWg] g @]&,;@@ Cm, g CT ]Q@da@@]1@ Cm* g @],Xz4@ C,s g&J@@]nXy42&L@ C/Q@@]%|z4@ Cm g&J@@]#8;@ C,/ g@CX@@@@@@@@@@@@@@@@gLQb1#@g&T1 @]mdzd@ C*|d@ C,/ g@@]mdd@ LC*|d@ C, g@@]mdd@ TC*|d@ C,u g@@]mdd@ C*|d@ Cm g CObp/ g @]mdd@ d@@@@@@@@@@@@@@@@gCC*|d@ C,s g Cpu g @]mdd@ ,C*|d@ Cms@g @]#8;@ 4C*|d@ Cm* g @],Xz4@ Cm, da@@O ]W da@@]&y42%L@ C,/ d@ C,s g @]%@@@@@@@@@@@@@@@@gJ|y42%L@ [LF a@@]%|y4@ Cm, da@@ ]W da@@]&y4@ CmC@d@ C,@g @Q ]W da@@]nXy4@ C, g @]h a@@]#8&2d@ Cm,@da@COp g @@@@@@@@@@@@@@@@gRQ@]mdd@ TC*|d@ C,# &s@@])|d@ Cm@d@ Cm, da@@]m d@ Cm, da@@ ]W da@@]&y4@ Cms@g&T) @]%|y42%L@ Cm d@ C,@d2FTb@@]m @@@@@@@@@@@@@@@@g)Ed@ C,/ g @]mdd@ dC*|d@ Cm g&T) @]&y4@ C,u da@@]%|dgd@ C,u g @]h;@ CmE@g @]&&2%L@ C,s@da@@]),y42d@ C,/ g&Tb@@@@@@@@@@@@@@@@@@g@,]&,y42%L@ Cm@g[@@]*;X@ C,@d2FTb@@]#8y|@ C,s g&Tb@@]dy42d@ CmO da@@]%|y4@ Cma@d) @]hzX@ Cma@d42d@ Cm, da@@ ]W da@@]),@@@@@@@@@@@@@@@@g82y4@ CnI@@]mTy4@ Cm@g[ @]mTy4@ CnI@@]mdd@ [ C4d@ |C*|d@ CnI@@]&y4@ Cm&@dh@@],%@@ C,s g&T) @]&,y42%L@ C,/ g @]h;@@@@@@@@@@@@@@@@@gg4 CnI@@]mdd@ CC*|d@ CmC@d@ Cm@g@@]#8&2d@ Cm#@g @]mdd@ [ Jd@ CLC*|d@ Cm#@d@ Cm@g@@]#8&2d@ CmC@g @]mdd@ C@@@@@@@@@@@@@@@@gs;TC*|d@ Cm g&T) @]&y4@ C,/ g&T) @]#8;@ CC*|d@ C,s g @]hX a@Cbps g&T) @]%|y4@ Cm@d@ C,s g@@]%|y4@ CmE@d@ Cm @@@@@@@@@@@@@@@@g/g @]mTy42%L@ CmE@g@@]&; @ C/]@@]%|d@ Cm@g@@]&d@ C,/ g&T) @]mdd@ CdC*|d@ C,s g @],X a@@]#8;d@ [ C;,@ [T C;p@@@@@@@@@@@@@@@@@gLz [X Cy@ X C;4@ @kCd@ 4kCg) CX@]@8p@ ,kCv,@ *|%L@ 4*|,h@ @@ *|%L@ 4C*|v@ LJ|%L@ @@ @@ C,*@d/@@@@@@@@@@@@@@@@@@@@@Wa@@F>@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F I@d@@@@@@  IJ@IQ@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gCI,,E,FQOh4ER@F@7CR@CF@O))O&gT&@@@@@@@@OddF@OT)FOsdgFCO%TFgg)&#%QdF #%%2 2%FEOg#2FFg#22FOd%2@@d%2@Od#s@@@@@@@@@@@@@@@@@gdT Tu@COTu@OTu%@ETu%@F 7g@O7g@@ &)@OQ%T@Odg@Cdg@Oh#@E Ws@F #s@ h@C@ W@C #@C %@CCW@Cs@@@@@@@@@@@@@@@@g/@CE@CF R@Ca@@ Rg@ g@ RR@C R@ RT@ER@F R@ 22@E@7@Eu@E u)@EC uR@E@EE g&)dE;JEE|EO%TWT2@WT@@@@@@@@@@@@@@@@g^2OgWT2WT2COgOgy 7Ek[&4sg4sW&4sgs[&4sgs[&4sgs# ) )EO#TRO2sR[&4sgsOR)dO#TQE O2bWEL 4QO#T7[&4sgssOX#s[g%Xsgs8gWg4%X@@@@@@@@@@@@@@@@@@@g4u2222222222222222222222222222p)W&4sg4spppppppppppppppp,%JyFIFF@p@&FFFFFFFFEd)W@@pppppppppppppppp,,,,,,,,,,,,,,,,,,,,,,,,,,,,,%Ipp@@@@@@@@@@@@@@@@g)@&FFFv&>&^/b/F/@@b8zI@&8zJ@*8z @n8zL@2W %8;hO8z O%8zp@nL@ dQ@ QgR@ R%n@ gT@ T%n@ g@ dW@ WgX@ Xg@@@@@@@@@@@@@@@@g% @ %n@ d[@ [g@ d]@ ]g^@ ^g@ %n@@88a@X 8b@h 8#@8 8d@I 8%@IX 8&@Ih 8g@I8T8h@JT8)@JXT8*@Jh 8k@@@@@@@@@@@@@@@@@g&J8T8,@  8m@ X 8n@ h 8/@ 8 8p@L 81@LXT82@Lh 8s@L8 84@ T8u@ XT8v@ h 87@ 8 88@CT88 #& ]g*@; )gnT|]CO%8z@@@@@@@@@@@@@@@@gy*F^y7p@;^dJ@ ^/pR@ OpT@ Q7LzEa#)u@ ]/h s7I^agn]|]CO)8zF^y[p@;^dJ@ /p]@ p@ @@ysCa4EX]T@]h@FWR^]1u8]%7E@@@@@@@@@@@@@@@@g=a4FW^@v  ]1a8@y@p T@a pF^udEapv b@@]h Ip gR]X@b a|1I4gRF@^EF7J]@]&%v 8,]@L@X@]h4@@@@@@@@@@@@@@@@g># v#p J@X[]h%4EpvWCb14@])@dQX@]) vCb%IL@])T v#p %gR@zE%pv#p J@bEpTR@IE bX@Id@]h& v^@@ @@@@@@@@@@@@@@@@@@@@@W%s@@[@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F I@d@@@@@@  IJ@IQ@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gCI,,E,FQOh4ER@F@7CR@CF@O))O&gT&@@@@@@@@OddF@OT)FOsdgFCO%TFgg)&#%QdF #%%2 2%FEOg#2FFg#22FOd%2@@d%2@Od#s@@@@@@@@@@@@@@@@@gdT Tu@COTu@OTu%@ETu%@F 7g@O7g@@ &)@OQ%T@Odg@Cdg@Oh#@E Ws@F #s@ h@C@ W@C #@C %@CCW@Cs@@@@@@@@@@@@@@@@g/@CE@CF R@Ca@@ Rg@ g@ RR@C R@ RT@ER@F R@ 22@E@7@Eu@E u)@EC uR@E@EE g&)dE;JEE|EO%TWT2@WT@@@@@@@@@@@@@@@@g^2OgWT2WT2COgOgy 7Ek[&4sg4sW&4sgs[&4sgs[&4sgs# ) )EO#TRO2sR[&4sgsOR)dO#TQE O2bWEL 4QO#T7[&4sgssOX#s[g%Xsgs8gWg4%X@@@@@@@@@@@@@@@@@@@g4u2222222222222222222222222222p)W&4sg4spppppppppppppppp,%JyFIFF@p@&FFFFFFFFEd)W@@pppppppppppppppp,,,,,,,,,,,,,,,,,,,,,,,,,,,,,%Ipp@@@@@@@@@@@@@@@@g)@&FFFv&>&^/b/F/@@b8zI@&8zJ@*8z @n8zL@2W %8;hO8z O%8zp@nL@ dQ@ QgR@ R%n@ gT@ T%n@ g@ dW@ WgX@ Xg@@@@@@@@@@@@@@@@g% @ %n@ d[@ [g@ d]@ ]g^@ ^g@ %n@@88a@X 8b@h 8#@8 8d@I 8%@IX 8&@Ih 8g@I8T8h@JT8)@JXT8*@Jh 8k@@@@@@@@@@@@@@@@@g&J8T8,@  8m@ X 8n@ h 8/@ 8 8p@L 81@LXT82@Lh 8s@L8 84@ T8u@ XT8v@ h 87@ 8 88@CT88 #& ]g*@; )gnT|]CO%8z@@@@@@@@@@@@@@@@gy*F^y7p@;^dJ@ ^/pR@ OpT@ Q7LzEa#)u@ ]/h s7I^agn]|]CO)8zF^y[p@;^dJ@ /p]@ p@ @@ysCa4EX]T@]h@FWR^]1u8]%7E@@@@@@@@@@@@@@@@g=a4FW^@v  ]1a8@y@p T@a pF^udEapv b@@]h Ip gR]X@b a|1I4gRF@^EF7J]@]&%v 8,]@L@X@]h4@@@@@@@@@@@@@@@@g># v#p J@X[]h%4EpvWCb14@])@dQX@]) vCb%IL@])T v#p %gR@zE%pv#p J@bEpTR@IE bX@Id@]h& v^@@ @@@@@@@@@@@@@@@@@@@@@W%s@@[@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F I@d@@@@@@  IJ@IQ@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gQJI,,E,FOddOh4EF@OT)FOsdgFCO%TFgg)&#%QdF #%%2 2%FEOg#2FFg#22CFOd%2@@d%2@Od#s@ Tu@COTu@OTu%@ETu%@F @@@@@@@@@@@@@@@@g 27g@O7g@@ &)@OQ%T@Odg@Cdg@Oh#@E Ws@F #s@ h@C@ W@C #@C %@CCW@Cs@CE@CF R@Ca@@ Rg@ g@@@@@@@@@@@@@@@@@gJv RR@C R@ RT@ER@F R@ 22@E@7@Eu@E u)@EC uR@E@EE g&)dE;JEE|EO%TWT2@WT2OgWT2WT2COgOgy 7EkW@@@@@@@@@@@@@@@@/y%T&[%T&[%T&IEOR)d[%T&#7R@CF@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g/u2222222222222222222222222222p)W%T&ppppppppppppppppp,%JyFIFF@p@gXpFFFFEd)W@@Ipppppppppppppppp,,,,,,,,,,,,,,,,,,,,,,,,,,,,,%*,@@@@@@@@@@@@@@@@g]*#Lv8&a@m8g@u8ga@=8d@ Q 24OTEd4pE248F4O@FT4OhFs4OpTO|@u8g%8pIuyIbypJuzJauzp %; b;pLu|Lb|p @@@@@@@@@@@@@@@@g,u= au=p%>au>pOObp@IO@ aIOC@ QIOE@ QaIO@ R@)OI@ R )O @ @)O @ aIOO@ T@)OQ@ TaIO@ IO@ aIOW@ I@@@@@@@@@@@@@@@@gJWO@ aIO[@ W@)O]@ WaIO@ XIOa@ X )O#@ @)O%@ aIOg@ IO)@ )O*@ 1pvg n8/uaRO@1vd^@k#m|//y@Td@y= T@z= X@;@@@@@@@@@@@@@@@@g1L= ]mF[RF7@7=aI J8;RO@k1vd^@s#m|7/y@Td@;= *@|] @|a= ]mF[RF7@7>QI J8;RO@k1vd^@s#m|7/=RO@a1@ [>CvIQ Cy=T /|@@@@@@@@@@@@@@@@/^/=@@7/RE@C^=T@ O;|1 ;y@bh@7p CL@ C|*@hT@  |LJ@ ;d@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@W%n@@F@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F I@d@@@@@@  IJ@IQ@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@/TI,,E,FEk[%T&#OX#sO2s7E[d2Qu7O#TQE;FO2sQ[d)s%QTO#)[g#2#2OR)4[%s2s#Oh4CR@C@@@EO%T@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gJ^u2222222222222222222222222222p)W%T&#pppppppppppppppp,%JyFIFF@p@gXpFFFFEd)W@@@pppppppppppppppp,,,,,,,,,,,,,,,,,,,,,,,,,,,,,7b@@@@@@@@@@@@@@@@ hyh vO8@Ed J&TT@*k @mF]@%F]a@[F^@)F^a@8@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Wg7@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F I@d@@@@@@  IJ@IQ@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gyXI,,E,FEk[QsQgOX#sO#TREE;FO#TQ[Qsg4QOs)[QT)d2bOR)4[%s2[QsgO2b2@@@@OvdO#T7[TdE@@WT#Q8OR)7 O&dJ@XQ)OR))TQsQE R@@@@@@@@@@@@@@@@| E@@Oh4C@@O%T@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gFu2222222222222222222222222222p)WQsQgpppppppppppppppp,%JyFIFF@p@gXpFFFFEd)W@@pppppppppppppppp,,,,,,,,,,,,,,,,,,,,,,,,,,,,,7b@@@@@@@@@@@@@@@@v8>|E TR@*[J@ a Jm*a@>@ J&s W@)&vns/&;8@ LIL&|EEX4^E@Wa@WLb@J#L @[dW%&@R]gh)@bWgh*@Jk@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Wg@@@,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F I@d@@@@@@  IJ@IQ@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@I,,E,FEk[g%XsgOX#sO#TREE;FO#TQ[g%s4QOd)W2W%OR)4[%s2[g%sO&d@@OR))Oh4C@EO%T@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gh[u2222222222222222222222222222p)Wg%Xsgpppppppppppppppp,%JyFIFF@p@gXpFFFFEd)W@@pppppppppppppppp,,,,,,,,,,,,,,,,,,,,,,,,,,,,,7b@@@@@@@@@@@@@@@@@a8>|E TR@*[J@ a Jm*a@>@ J22kW@%>@4@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Wgv@@@^@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F I@d@@@@@@  IJ@IQ@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g8nI,,E,FEk[QgsOX#sO#TREE;FO#TQ[Qg4QOs)[QT)d2bOR)4[%s2[QgO&dJ@OvdXQ)[XQ)dO2bdOR))@@Odv[Q))s@@@@O2b2@@@@@@@@@@@@@@@@@@@@E FO#)O2sQ[)2Q%7Oh4C@@@R@EER@EFO%T@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g 4u2222222222222222222222222222p)WQgspppppppppppppppp,%JyFIFF@p@gXpFFFFEd)W@@Cpppppppppppppppp,,,,,,,,,,,,,,,,,,,,,,,,,,,,,7b@@@@@@@@@@@@@@@@gy8>|E TR@*[J@ a Jm*a@>@ J2sE ,g,vWF@kkJmk>@k;@@ E p EQ 1 EI&CRR&g@ E@ E&T@ E&J&g@ 4u ITu TTuW@ @@@@@@@@@@@@@@@@7;ETuW vTuX@ EX @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Wg@@@2@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F I@d@@@@@@  IJ@IQ@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ pI,,E,FEks8gOX#sO#TREE;FO#TQ[s8g4QOd)W2W%OR)4[%s2[s8gO&d@@OR))Oh4C@EO%T@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g u2222222222222222222222222222p)Ws8gpppppppppppppppppp,%JyFIFF@p@gXpFFFFEd)W@@pppppppppppppppp,,,,,,,,,,,,,,,,,,,,,,,,,,,,,7b@@@@@@@@@@@@@@@@1Q8>|E TR@*[J@a uTa@F J42sW@%#a@8@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Wg7@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F I@d@@@@@@  IJ@IQ@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g)sI,,E,FEk)QTOX#sO#TREE;FO#TQ[)QT4QOs)[QT)d2bOR)4[%s2[)QT[sdEL)svCFsdO&d@F@FO#T7Td@Ovd[%T2RFR)sv@@@@@@@@@@@@@@@@gy&XW&4%s OQ7JOR)7[)Q)T[)#)TOR)d[))#%bs7s#)Ts8gO))EJQ)TORsv[)s#&vO2sRXQ)OR))O24RWsX)O2bQ&%2)T2O8dEEOh4@@@@@@@@@@@@@@@@g @@F@R@ER@F@R@FER@CR@CEO%T@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g%2u2222222222222222222222222222p)W)QTpppppppppppppppppp,%JyFIFF@p@gXpFFFFEd)W@C@@pppppppppppppppp,,,,,,,,,,,,,,,,,,,,,,,,,,,,,7b@@@@@@@@@@@@@@@@gz8>|E TR@*[J@a uTa@T=%vnp[C &QW@WCI /,;y4J&n^ J&EJ*JbmEJg),|u7phRs]8h4y8,2L2k*@@F7J[L@Ou&k%g %h@@@@@@@@@@@@@@@@gL),,kaR*b)1ag a% JT&R]TE LX[ pkd^p2%R#J&1 2ma g )I %aR*b) kbvId>/F#%g &#R)aR*b) s k R&v[h*k,kh@T&Xmn8]pg1 bnb@@@@@@@@@@@@@@@@g]Fs ^kbvId>d,**)a aR*b) &p*g&v[2*k,k2@T&Xmn8]pg1 bnbs RQ]4%&k%g am R)%aR*bh7pk%7a&k%g k RT& ppkdT8>E Lz=ds@@@@@@@@@@@@@@@@g1E dkg &#R7aRkg)J>X,@|4@L TC T,u,|@QL%T| duQLXF##8E[W &WQWCEg &T1FF@Ts #a,@JI#C4@h;,y88RL28 XJ)%2,Tv#@@@@@@@@@@@@@@@@@gX1nd@nd b%@n%  b&@Fb& hbg@I*g @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@W&y@@Q@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F I@d@@@@@@  IJ@IQ@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gJsI,,E,F 22EO&gT&@@@@@@OdTb@F@@@@@@gg)&O2b)%QdE|FEE;FO%&gO2b%O%TEkWg4%XOX#sO#TRFO#TQ[g%X4QOd)W[#%WR#bOR)4[%s2[g%X@@@@@@@@@@@@@@@@g&pO2sRO#)WT@[&4s2yOR)d[2s&b[sdEgsvCsdE JgRsvO2sQs2s7R)svE O&d@FFO#T7Td@Odv[%T2RLOR)7@@@@[)2Q%7OR))O2@@@@@@@@@@@@@@@@gzR4RWsX)O2bQ&%2[))#%bs7sg%XTQsQF@J@b@C@CFFOh4R@ER@CR@E@F@FC@R@FER@ER@CE@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g&u2222222222222222222222222222p)Wg4%Xppppppppppppppppp,%JyFIFF@p@gXpFFFFEd)W@C@@Cpppppppppppppppp,,,,,,,,,,,,,,,,,,,,,,,,,,,,,7C2@@@@@@@@@@@@@@@@g/vEWC8Fkp X@bh;),kTF88vTz[Ju@ Q2C>]1=u>8WpXa8pyWQy%WpIg1y%Wp@XzQa 21 h4X,J,|I%,mE%%@@@@@@@@@@@@@@@@g,8TX;%Wp | 24|u,|4LI=ITvLJT|%W;TIn|L,4|LvF4X|=@]R4p@]a=p]a=p^vndp^1@Q O21p)W&4sg4spv&)Tp@@@@@@@@@@@@@@@@gy=)&dpR4)p ;|*@ WX^F@nE bX@bOCmpE@J @Q[8 @by@ T 4zI%8@#EC)b)|@2XQ |@QdyLh&sk  ad*&vQRuyT>@*p8R@s@@@@@@@@@@@@@@@@7%|k @ T ]^O F; g E  h E12 )@pn&p*@E&p* ]&pk@In&pk E&p,@%&p, I2&m@E%&pm ;&pn@Id@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@W&u@@]@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F I@d@@@@@@  IJ@IQ@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gaI,,E,FEk[%s2O2sR[d)s%QTO2sQE4%sO2s7[d2Qu7O#TQ[&4%s#[&4%suOd%O#TRWTI[#%WR#bO2bQ[TC[)2%7# QOs)[QT)d2bOQTT[&%sQW[s@@@@@@@@@@@@@@@@gRQW2sOT)O2b%OR)d[#%%&O#)[%&Q)WW&4%s[2Q%7[)2Q%7[g7g2u[gd%#&%2[gQ)%s[g#2#2O#T7OR))Oh4C@@@@R@R@CR@FR@ER@F@@@@@@@@@@@@@@@@[R)4d&gR@FC@C[))#%bR@FE@@R@F@E@F@@E@@E@F@E@EC@ER@O%T@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g)|u2222222222222222222222222222p)W%s2pppppppppppppppp,%JyFIFF@p@gXpFFFFEd)W@@Epppppppppppppppp,,,,,,,,,,,,,,,,,,,,,,,,,,,,,7uX@@@@@@@@@@@@@@@@gu /^F@zFR]LCFnh%W @2ska@Iv@ L2y8F]hCnvC#)J,Cn|g7@@L a@Lb@L#O@LdJ%@L&@L g@L h@L )@L *@L k@L ,@LRm@L @@@@@@@@@@@@@@@@gsn@L /@LpQ@L1 @ 2s4u@OJs4v@Q2s47@2s48@T2s4y@W4s4z@X2s4;@2s4|@=2s4>@[2s4@@Lvd@^Lvd@aLvdL@%Lvd@hLvdT@)LvdX@@@@@@@@@@@@@@@@@;*Lvd@kLvd @,Lvdd@mELvdh@nLvd,@gLvdp@/Lvd4@ Lvd8@Lg @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@W&8@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gC@ %n@ d[@ [g@ d]@ ]g^@ ^g@ %n@@88a@X 8b@h 8#@8 8d@I 8%@IX 8&@Ih 8g@I8T8h@JT8)@JXT8*@Jh 8k@J@@@@@@@@@@@@@@@@gEz8T8,@  8m@ X 8n@ h 8/@ 8 8p@L 81@LXT82@Lh 8s@L8 84@ T8u@ XT8v@ h 87@ 8 88@CT88 #& ]g*@; )gnT|]CO%8zF@@@@@@@@@@@@@@@@gI[^y7p@;^dJ@ ^/pR@ OpT@ Q7LzEa#)u@ ]/h s7I^agn]|]CO)8zF^y[p@;^dJ@ /p]@ p@ @@ysCa4EX]T@]h@FWR^]1u8]%7E@@@@@@@@@@@@@@@@g%Ia4FW^@v  ]1a8@y@p T@adEa v b@@]h p gR]@ba|1I4gR@EF7I]@]&%v 8h]@ @X@]hp#v# J@@@@@@@@@@@@@@@@OuT@X[]ha4EpvWCba4@]h|dX@]) vCbRdy@]) v# %WR@vE% v# J@^EpTR@IE bW@I @]h&v^@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@W%2@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F I@d@@@@@@  IJ@IQ@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gQJI,,E,FOddOh4EF@OT)FOsdgFCO%TFgg)&#%QdF #%%2 2%FEOg#2FFg#22CFOd%2@@d%2@Od#s@ Tu@COTu@OTu%@ETu%@F @@@@@@@@@@@@@@@@g 27g@O7g@@ &)@OQ%T@Odg@Cdg@Oh#@E Ws@F #s@ h@C@ W@C #@C %@CCW@Cs@CE@CF R@Ca@@ Rg@ g@@@@@@@@@@@@@@@@@g [ RR@C R@ RT@ER@F R@ 22@E@7@Eu@E u)@EC uR@E@EE g&)dE;JEE|EO%TWT2@WT2WT2OgWT2WT2COgOgy @@@@@@@@@@@@@@@@gRL7EkOQR2QR2WQR2IQ hy)&QR2ITQsQ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gnu2222222222222222222222222222p)WQR2ppppppppppppppppppp,%JyFIFF@p@gXpFFFFEd)W@@Fpppppppppppppppp,,,,,,,,,,,,,,,,,,,,,,,,,,,,,74@@@@@@@@@@@@@@@@g)E/8F/|/ I@&aza@,&av@na7@pa8@2&a=@v^a>@;zaa@@hO|hOFhOJLRhOhORThOX|hORhO^ hObdRhO&hhO*,@@@@@@@@@@@@@@@@g;hOnp|hO24hOv8RhOz|RhO>@@IJ8IJ8XIJ8hLIJ88EJyTEJyXXEJyhIJy8 EJzdIJzXhIJzh,IJz8pIJ;4I@@@@@@@@@@@@@@@@gh4J;X8EJ;h|IJ;8C@IJ|CEJ|XCEJ|hCLIJ|8CIJ=@bEJ=CIv1v4ym7@ >,JQ8C4#pE]) 8  @Qd OhTCb WhTC#@[hTCd@@@@@@@@@@@@@@@@@gdWO,C#mhsv; FnI|WQ8E^4#pF]) 8  @Qd #hTC%ghTC# hO,C#mhsv; F4I|WQ8E^4#pF]) 8  ,RQ8C2@  RL@ 1zdE@@@@@@@@@@@@@@@@gv*;RhC; O#R)Q)8p)&4s%[7,IE/^pdJ@I]a8[)m a / &4O@F|X[7ym@/O C[,@[41/a@/E [|@[1a/&4@^v=>[Qp@ QT@L^a@@@@@@@@@@@@@@@@/J[h@[7@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@W%n@@F@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F I@d@@@@@@  IJ@IQ@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g I,,E,FQOh4ER@F@WQs8gR@F7CR@CF@OddF@OT)FOsdgFCO%TFgg)&#%QdF #%%2 2%FEOg#2FFg#22FOd%2@@d%2@Od#s@ Tu@@@@@@@@@@@@@@@@gm#@COTu@OTu%@ETu%@F 7g@O7g@@ &)@OQ%T@Odg@Cdg@Oh#@E Ws@F #s@ h@C@ W@C #@C %@CCW@Cs@CE@@@@@@@@@@@@@@@@g>L@CF R@Ca@@ Rg@ g@ RR@C R@ RT@ER@F R@ 22@E@7@Eu@E u)@EC uR@E@EE g&)dE;JEE|EO%TWT2@WT2Og@@@@@@@@@@@@@@@@WT2WT2COgOgy 7Ek2W%W2W%OW2W%I gEO#TQO#TRE E O2bQ&@@@@@@@@OR)4W2W%O2sRO#)O2sQOR)d@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ggu2222222222222222222222222222p)W2W%pppppppppppppppppp,%JyFIFF@p@gXpFFFFEd)W@@Ipppppppppppppppp,,,,,,,,,,,,,,,,,,,,,,,,,,,,,%&@@@@@@@@@@@@@@@@gzJ|n/b/F/Ob@hdhh,h,|hpCI]@vWd^a@|#d@>Wd[@@J8bp8#Fb8#J8#Lb8#R8#Tb8#X8#^b8# bb8#d&8#h@@@@@@@@@@@@@@@@g*8#,nb8#p28#4vb8#8zb8#|>8b@@ daF@abCaF@bbCaFL@#bCaF@dbCaFT@%bCaFX@&bCaF@gaaF @haaFd@)aaFh@*bCaF,@kaaFp@,b@@@@@@@@@@@@@@@@gk|CaF4@mbCaF8@nbCaF|@/bCa@@pbCa@1aa@2bCaL@sbCa@4aaT@uaaX@vbCa@7bCa @Laab@ym4R]hCm2&^y14L=2W#h;g@Cmy@@@@@@@@@@@@@@@@@gk F)hzEgI;EgI||2I[hTzFgTv>CO%8zF^y714L=2g#h;%/@Cmy@ F)h=EgI4>EgIX|2I[hTzFgTvbCO%8zF^y714L=2g#h;%/@C,@%@@@@@@@@@@@@@@@@g|y7F @]gd@  @ hL aE F ^OCI%^W[RO &v @bF@@4@]h@E ,gR]L@a@,[]h]4EpvWb4@]hd vb b #4@]h4b88@]h|@@@@@@@@@@@@@@@@/2d@vb b  v#b #4@]hhb14@d@nQ@X@])@])L v%@ @X pTR@y@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@W%=@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F I@d@@@@@@  IJ@IQ@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g4XI,,E,FQOh4ER@F@7CR@CF@O))O&gT&@@@@@@@@O#Tg&@@E@@@@@O2sT&@@@@@@@OQR&@@@@@@ORQ&@E@@@@@Od4#&@F@@@@@OTu&@@@@@@O#Q@@@@@@@@@@@@@@@@gR&@C@@@@@@O#R&@C@@@@@O#7&@C@@@@@O7Q&@CC@@@@@OQ7&@C@@@@@OR7&@CE@@@@@O%Q&@CF@@@@@O7dQ&@C@@@@@OQTd&@@@@@@@O2b&@@@@@@O2b)@@@@@@@@@@@@@@@@gsX&@@@@@@O2bR&@C@@@@@O)2#&@@@@@@#)2XO#T&@E@@@@@O2s&@F@@@@@OQT&@@@@@@O24&@E@@@@@@O77Q&@E@@@@@OgQ&@E@@@@@Og2&@EC@@@@@@@@@@@@@@@@@@@@g8z@O7R&@E@@@@@O2bT&@EE@@@@@O77R&@EF@@@@@OddF@OT)FOsdgFCO%TFgg)&#%QdF #%%2 2%FEOg#2FFg#22FOd%2@@d%2@Od#s@ Tu@C@@@@@@@@@@@@@@@@g/&OTu@OTu%@ETu%@F 7g@O7g@@ &)@OQ%T@Odg@Cdg@Oh#@E Ws@F #s@ h@C@ W@C #@C %@CCW@Cs@CE@CF@@@@@@@@@@@@@@@@gpF R@Ca@@ Rg@ g@ RR@C R@ RT@ER@F R@ 22@E@7@Eu@E u)@EC uR@E@EE g&)dE;JEE|EO%TWT2@WT2WT2@@@@@@@@@@@@@@@@guWOgWT2WT2COgOgy 7[2h4Q)Ek2h)sO)2W2sQ)sWRW%O% hEOR)d24R)O2hO2bWJIROR)42hO2s7 s7O2sQ QXO2sR Q#O7QRO#8Os) d @@@@@@@@@@@@@@@@g *COQTT   @OR)7OO)2XO#TRJ@hORQO#T7OR))EL 2hTQsQb@CECb@@EFCb@CCCb@FECEC&@@CEEEF&@@@C@&@@E@&@@@&@F@@@@@@@@@@@@@@@@@gv>@CC&@FCE&@@CC&@CFCb@@E@b@Eb@E@@b@CCEb@E@@b@C@Fb@CCFb@CCFC&@FCEF&@FF@&@CFE@&@@@@@@@@@@@@@@@@@7JLEF@F&@FCFCC&@F&@C@C&@@F@Eb@C@@C@b@FCCb@C@^@FEFF@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g2du2222222222222222222222222222p)W2h)spppppppppppppppppp,%JyFFFFF@p@gXpFFFFFEd)W@Fpppppppppppppppp,,,,,,,,,,,,,,,,,,,,,,,,,,,,,u8d@@@@@@@@@@@@@@@@gJm8p ;8@WOQ7OQaI@p&%u)2&%*yz @nyzL@2yz @vyz@zyzO@>yz@@ gdQ@ QgdR@ Rgd@ gdT@ Tgd@ gd@ gdW@ WgdX@ Xgd@ @@@@@@@@@@@@@@@@g|gd@ gd[@ [%gd[@ d ]d] ^d^ d @Ca8b@aCa8bF@bCa8bJ@#Ca8b@dCa8bR@%Ca8b@@ELLLLy)]&) 8& Ip8g J@8@@@@@@@@@@@@@@@@gbh J8) J *@k8zp@,bJ8z^@m8zb@ma8z&@nJ8zz@/C*8z>@pz8;@1C*8;F@2z8;J@sC*8;@4J8;R@uC*8;@vC*8;@7z8;^@8J8;b@yC*@@@@@@@@@@@@@@@@gz#8;&@zJ8;*@;C*8;n@|C*8;2@=z8;v@>C*8;z@J8;>@@nnXnhCn8nQE@*nQXF@*nQh@*nQ8nRI@*nR@@@@@@@@@@@@@@@@gO[XJnRh nR8Ln nXnhO@*n8nTQnTXR@*nTh@*nT8TnnX@*@*n aEJ ^/u= @  *%@@@@@@@@@@@@@@@@gCdgv]^*R[uz) E&@  h@ J J* Ek[J8& E/[J8g E1[J8) E2phuzW*]X@E#a)ImgW*%d,]^*Ruz)J &@  h@ J J* Eu[J8,@E7[J8h E8p@@@@@@@@@@@@@@@@g huzW*]X@E#^)ImgW*%d,]^*Ruz)J &@  zJ%d)vXXv @I8@@@I8@s g@mL#&sJ/ ) h%Fk@R@v@FCavFIhb4h8hX7hQ#@E#^a@@@@@@@@@@@@@@@@g2p@  zIh#aEpEkE^&u>@ Xm,kOW*X4%# yp@ b@pXyQ%@EbIa@L@ R#4,@ W^a@ X]&F[g@J&n^JmLvu**> J=#gaFaW*^b@&*),@@@@@@@@@@@@@@@@gTmh18IhyJvdXXz Q* E#kFn@ IJ@ p@ 2JXX;Qmuz&@ J@@ 2[%^/;h#kRm I ghd2g ,sgX;pQ/uz>@ 2hX;pQpz>@ 2hX;pQpuz>@ I@@@@@@@@@@@@@@@@gdI8X;@XgXg@X;@X|Q y1W*F@#*8X@vJ@@ O J@h4*8J4Xh*8X@v8aOLhXh@X;@X&XQsyp&k%g bk k*k X| ,hLbkaLh)X| g Eb@@@@@@@@@@@@@@@@g8s aFn@ h]@X=X#XQk EbLaOg@Jm J;F^FCJv^@^|Jn#/@ |8Xg@X=Q) E#uaFT@ @WaF[g@Jn^4uJmLv J=bFav=&z@g2*k84k8@@@@@@@@@@@@@@@@gXJ44sTvOmaOpa]8X=p]8@E#77b@ O^p^XX=p]z@E#77*@ O^p/a^8X=p]|@E#772@ OnXX=p]>@E#77@@@@@@@@@@@@@@@@g]z@ OpX=p] E#7p@@Eb; ]@@,WCh@Eb; ]@p@,WCh@Eb; ]@,WChL@Eb; ]p@,WCh@Eb; ]@,WChT@Eb; ]p@,WChX@Eb; ]C@,W@@@@@@@@@@@@@@@@Q*Ch@Fns@F*sR@F&s@,s@Ebm@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@W#g@@O@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F I@d@@@@@@  IJ@IQ@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g=I,,E,FQOh4ER@F@WQs8gR@F7CR@CF@OQRO&gT&@@@@@@ORQ&@E@@@@@Od4#&@F@@@@@OTu&@@@@@@O#Q&@C@@@@@@O#R&@C@@@@@O#7&@@@@@@@@@@@@@@@@gvh@C@@@@@O7Q&@CC@@@@@OQ7&@C@@@@@OR7&@CE@@@@@O%Q&@CF@@@@@O7dQ&@C@@@@@OQTd&@@@@@@@O2b&@@@@@@O2b)&@@@@@@O2bR&@C@@@@@O)2#&@@@@@@@@@@@@@@@@g @@@@@@#)2XO#T&@E@@@@@O2s&@F@@@@@OQT&@@@@@@O24&@E@@@@@@O77Q&@E@@@@@OgQ&@E@@@@@Og2&@EC@@@@@O7R&@E@@@@@O2bT&@EE@@@@@@@@@@@@@@@@@@@@@gO77R&@EF@@@@@OddF@OT)FOsdgFCO%TFgg)&#%QdF #%%2 2%FEOg#2FFg#22FOd%2@@d%2@Od#s@ Tu@COTu@OTu%@ETu%@F 7g@@@@@@@@@@@@@@@@gub@O7g@@ &)@OQ%T@Odg@Cdg@Oh#@E Ws@F #s@ h@C@ W@C #@C %@CCW@Cs@CE@CF R@Ca@@ Rg@ g@ R@@@@@@@@@@@@@@@@gJR@C R@ RT@ER@F R@ 22@E@7@Eu@E u)@EC uR@E@EE g&)dE;JEE|EO%TWT2@WT2WT2OgWT2WT2COgOgy 7@ 7@@@@@@@@@@@@@@@@ghaO))&@@@@@@@@O#T&@@@@@@@O#)&@@@@@@@O#&@@C@@@@@O2sT&@@@@@@@O#Tg&@@E@@@@@O#%&@@F@@@@@O#d&@@@@@@@O#T&@@@@@@@O#2&@@@@@@@@@@@@@@@@@@@@@@gyO#Q&@@@@@@O#W&@C@@@@@O7&@@@@@@OTgd&@E@@@@@O7&&@F@@@@@O&&@@@@@@ ##&@@@@@@@&@@@@@@OTgQ&@@@@@@OTg2&@C@@@@@O2byO@@@@@@@@@@@@@@@@g 2bQE &@Ek7gW7@E8dO#TQO2sQWds8gOR)dO#)O#2XOQTTOR)4O7gO7gE 7gQO%&gRO2bWO7g7gQO7gQEL 4)O7gFO24R7gOd%W#&%O#@@@@@@@@@@@@@@@@O>TRO2sR7gRO7gEO#T7&@@@@@@@@ORQT s)7g7g@7gCW7g@QO)87g7ggOR))7gO)2X7gO2b%W7gCR7gE R&TQsQO)2@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g @u2222222222222222222222222222p)W7gpppppppppppppppppp,%JyFFFFF@p@gXpFFFFFEd)W@pppppppppppppppp,,,,,,,,,,,,,,,,,,,,,,,,,,,,,% Jn@@@@@@@@@@@@@@@@gQ||4*,n[J[L4nF=L2*&%Jn/b/F/Ob@bbR g *kds J&d*4nC2CTvCdzC4>@JQRJQXbJQh2JQ8EJQEERJQEXEb@@@@@@@@@@@@@@@@g@JQEhE2JQE8FJQFFRJQFXFa2QFXF*JQFpFzJQ@JJQJQ *JQpzJQ@@QIFQI JQIpQII@@T%TpppI@p&%u)2&%dd8bT@%@@@@@@@@@@@@@@@@ghJd8bX@&d8b@gd8b @ha&E*h,* nE*ppE*@2*[vQ*[ z*[p>Q*@C*CFQ* CJ*pCQ*]@CRQ*]C*] @@@@@@@@@@@@@@@@g2uC*]pC^Q*^@Cb*^C&Q*^ C*Q*^pCn*@C2Q*Cv* Cz*pC>*@@ahpahp ahppC *h1@ *h1E *h1 Fah@@@@@@@@@@@@@@@@g2,1p *h2@ah2Iah2 Jah2p ahs@Lahs *hs ahspOah4@ *h4Q *h4 Rah4pahu@@h *huE)uXn@@@@@@@@@@@@@@@@g%%@ uT* ^&EXhuzXb#W*m @ ub@ JJ)@EdE* b%@E&E* b&@EhE* bh@E*uXbgbJE E]a#W)aJ ^*vEXhuzXb#W)u @ ub@ JJ)@E,E* b* EnE*@@@@@@@@@@@@@@@@gL bg@EpuXbgbJE E]#W)aJ ^*vEXhuzXb#W)u @ u2J ^h@W]@I]a@I ^dWhdW8 dXadXXbdXh#dX@@@@@@@@@@@@@@@@g&X8dd%dX&dhgd8hd)dX*dhkd8,d[md[Xn@d[hOa@d[p/bd@pbd@@b*1@@@@@@@@@@@@@@@@gybJh@ 7/L@ ub@ E2Jv E]auJhWW&@E] EvX%b]@u m&IX%g@ h)u7WI8WT ]s=R*@ vL@pWX ] W]hE@E]7^@ 7 @@@@@@@@@@@@@@@@g>hWJ]]ub^@ uCWT* E]8 E]va@T@ 7dJhW^XE@E]ya^@ 1@ 7hT*u%v@ 7h^hW^ Q;@E]z;*hW^ Qz E]zp@ 72@ 72@ 72@ 7h]On@@@@@@@@@@@@@@@@gQC* *=h]g4@h *y8L2y8J;ssR*2yu7v*T@ 7h >a7 7>@k*4kT2XJ;ssR*2y,hy,sRu7h]O>@h)XRQy,s1,)hy,sR #va@L@ 7/n* E]zOuI WW @@@@@@@@@@@@@@@@g*%@F@@hR*JkL2**XT*yQy*yv p@ Jy1 WO]up@ Jyz@b WO@ Jz@ p@ Jy7@ p@ Jy8@a@W4@h@ Jy2@a2/* WOT@ Jy @ C@WL@X@ J@@@@@@@@@@@@@@@@gQ|zC@ E@ y#@bC WLp@X@ Jyb@ C@WOd@ OX,@@X@ Jyb@ C@W T* Wd@h@ Jyz@bE@|@yv C@E@y= a2dh@ Jyz@bE WpT**1]@W @ @@@@@@@@@@@@@@@@gv,@ Jy8@a)@WLh@Qv@WO@ @ Jyb@ C@WOd@ ,nL@ Jy^@b@F@@hR*JkL2**XT*yQy*yv p@ Jy= a2dh@ Jy^@b@F@@WO@ Jyb@ C@W4T* W@@@@@@@@@@@@@@@@g4|8@h@ Jyz@a4 aFF@ EJ1]@W4F W T* WO]uE ,@ Jz@WL@X@ Jyz@a4 E|p|@k*4kT2XJ;ssR*2y,hy,sR*yv 2@EE #RO &^ % @@@@@@@@@@@@@@@@g8[ &W8QEuET@ Jyv a2/*/|@byJy8 Jy7@bIOh@a2*k*zF@ EJ1]@I y8 W4QEuET@ Jy2@a2%T@ Jyz@bJ@J n @ * W8QEuET@ Jy1 WOQ@ Jy#@bL@@@@@@@@@@@@@@@@@gaWL@X@ JzL a@ yz@asnh**1] WOQh@ Jy#@ CQ,@)kT2XR*;y8s[J48 T*y%@ CQ@@d4*h18IhyJ*yb@ C@WOQL@ Qh4@ a&WO IWX@X@ Jz@ *@@@@@@@@@@@@@@@@gv Wd@X@ Jyz@bI J@yz@asnh**1]14@*2Qy,s1|Xs[J48L2ysX*yz@bO@WLX@ &%FO IWQ|Q@ Jy%@bLOh@gRs8 L4y8,2J*yb@bL@@nC@bI@dyJ@@@@@@@@@@@@@@@@gLWy8 XsJy8 W4QEuET@ Jyz@bJ O@yv CQ,@dL2y8IhyJ*zO bI@WORE=@z[O&g OC &QW8Q @ Jyz@b@ 8 @bL@WQpET@ Jz bL@WOR@@ Jy^@@@@@@@@@@@@@@@@/@@b@RJ@@4 m8@ F WILdh@ pkdd@ E2LpuET@ QRp@ Q Rp@ d2p@ |E2ET@ QRET@ JyX @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@W# @@%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F I@d@@@@@@  IJ@IQ@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gnI,,E,FQOh4ER@F@7CR@CF@O#TgO&gT&@@E@@@@@O2sT&@@@@@@@O7&@@@@@@OddF@OT)FOsdgFCO%TFgg)&#%QdF #%%2 2%FEOg#2FFg@@@@@@@@@@@@@@@@g2,#22FOd%2@@d%2@Od#s@ Tu@COTu@OTu%@ETu%@F 7g@O7g@@ &)@OQ%T@Odg@Cdg@Oh#@E Ws@F #s@ h@C@ W@@@@@@@@@@@@@@@@g| @C #@C %@CCW@Cs@CE@CF R@Ca@@ Rg@ g@ RR@C R@ RT@ER@F R@ 22@E@7@Eu@E u)@EC uR@E@EE g@@@@@@@@@@@@@@@@&)dE;JEE|EO%TWT2@WT2WT2OgWT2WT2COgOgy 7EkO7gO)2W2sQ)sWRW%O% hEOR)d@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gu2222222222222222222222222222p)W7gppppppppppppppppppp,%JyFIFF@p@gXpFFFFEd)W@@pppppppppppppppp,,,,,,,,,,,,,,,,,,,,,,,,,,,,,%n@@@@@@@@@@@@@@@@gm*|>/b/F/@@byzI@&yzJ@*8z @n8zL@28z @v8z@zWpO%@]Q@pF @4 @8JQ@]L]@]RW@]T]@]XW@]^]@] bQ@]d&]@]h@@@@@@@@@@@@@@@@gz%*]@],nW@]p2Q@]4v]@]8zQ@]|>]@@@ #d@z@ab4@z@b#d@zL@#b@z@db@zT@%b@zX@&b@z@gb@z @hb@zd@)aT@zh@*aT@z,@kaT@zp@,b@@@@@@@@@@@@@@@@g&@z4@maT@z8@nb@z|@/b@;@@pb@;@1b@;@2b@;L@saT@;@4b@;T@ub@;X@vaT@;@7aT@; @8b@;d@yb@;h@aT@;*@;88u8T^OCuvg#y8@@@@@@@@@@@@@@@@gT>27sp]=h Cu=@ )8>h1X@@2@F@2@@CgFg X^18^z ]^1|^u;W18W,X ]^1)|@)=@4E C2@2@F ECgFg X^18@@@@@@@@@@@@@@@@gJ^za ]^1|^u;W18W,X ]^1)|@*Fu;p@^g4@ap  @bd b @mWL@*F4@^hXza @8 ,a^8bpL1=z#g [@)m^hbO@@@@@@@@@@@@@@@@/dzC F@*L@^a zd@ J@4Wpz@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@W%y@@Q@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F I@d@@@@@@  IJ@IQ@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gI I,,E,FQOh4ER@F@7CR@CF@O#TgO&gT&@@E@@@@@O2sT&@@@@@@@O#W&@C@@@@@OddF@OT)FOsdgFCO%TFgg)&#%QdF #%%2 2%FEOg#2FFg@@@@@@@@@@@@@@@@g2,#22FOd%2@@d%2@Od#s@ Tu@COTu@OTu%@ETu%@F 7g@O7g@@ &)@OQ%T@Odg@Cdg@Oh#@E Ws@F #s@ h@C@ W@@@@@@@@@@@@@@@@g| @C #@C %@CCW@Cs@CE@CF R@Ca@@ Rg@ g@ RR@C R@ RT@ER@F R@ 22@E@7@Eu@E u)@EC uR@E@EE g@@@@@@@@@@@@@@@@Wp8&)dE;JEE|EO%TWT2@WT2WT2OgWT2WT2COgOgy 7EkO)2W2sQ)sWRW%O% hEOR)d@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gbuu2222222222222222222222222222p)W#%pppppppppppppppppppp,%JyFIFF@p@gXpFFFFEd)W@@pppppppppppppppp,,,,,,,,,,,,,,,,,,,,,,,,,,,,,%T@@@@@@@@@@@@@@@@gXn/b/F/@@byzI@&yzJ@*8z @n8zL@28z @v8z@zWpO%@]Q@pF @4 @8JQ@]L]@]RW@]T]@]XW@]^]@] bQ@]d&]@]h*@@@@@@@@@@@@@@@@gF7]@],nW@]p2Q@]4v]@]8zQ@]|>]@@@ #d@z@ab4@z@b#d@zL@#b@z@db@zT@%b@zX@&b@z@gb@z @hb@zd@)aT@zh@*aT@z,@kaT@zp@,b@@@@@@@@@@@@@@@@gmO@z4@maT@z8@nb@z|@/b@;@@pb@;@1b@;@2b@;L@saT@;@4b@;T@ub@;X@vaT@;@7aT@; @8b@;d@yb@;h@aT@;*@;88u8T^OCuvg#y8@@@@@@@@@@@@@@@@g7*>27sp]=h Cu=@ )8>h1X@@2@F@2@@CgFg X^18^z ]^1|^u;W18W,X ]^1)|@)=@4E C2@2@F ECgFg X^18^@@@@@@@@@@@@@@@@gW^za ]^1|^u;W18W,X ]^1)|@*Fu;p@^g4@ap  @bb @)W @*Fp@^hXza @4 ,a^8b  1=z#W [@)m^hbz@@@@@@@@@@@@@@@@gC F@*OL@^a z#p J@pWpz@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@W%8@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F I@d@@@@@@  IJ@IQ@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gv2I,,E,FO))O&gTE&@@@@@@@@gg)&[TgTQsQ%QdF@OTTE|FEO%TOTgd&@E@@@@@OQR&@@@@@@ORQ&@E@@@@@Od4#&@F@@@@@OTu&@@@@@@O@@@@@@@@@@@@@@@@gR*#Q&@C@@@@@@O#R&@C@@@@@O#7&@C@@@@@O7Q&@CC@@@@@OQ7&@C@@@@@OR7&@CE@@@@@O%Q&@CF@@@@@O7dQ&@C@@@@@OQTd&@@@@@@@O2b&@@@@@@O2@@@@@@@@@@@@@@@@gRub)&@@@@@@O2bR&@C@@@@@O)2#&@@@@@@#)2XCO#T&@E@@@@@O2s&@F@@@@@OQT&@@@@@@O24&@E@@@@@@O77Q&@E@@@@@OgQ&@E@@@@@Og2&@EC@@@@@@@@@@@@@@@@g/@@@@@O7R&@E@@@@@O2bT&@EE@@@@@O77R&@EF@@@@@EkO7O)27sOX#sO2s7E;FQ#&WOQTT gO#T7Ws2sO2bW&%2OR)4W)WXs O2sQOQ)WEOO2s@@@@@@@@@@@@@@@@gv;RO&%O#2XF2O#TQO#TRO)&uOs)dQ2bO2s b)OgF%s) b#&&gWsQR#E FF s2sO7QRO)2XOR)7  @O%&TgEEdEEL 7O&4sOR))O2bQ2W%TQ@@@@@@@@@@@@@@@@gCFsQI,1JC@@@@JF&@Cv[FIC@EJEEEv[FIE@@I&@EF@@E&@CCF@b@EC@@Cb@FC@Cb@CF^@EEFCF^@FE^@CF@@@@@@@@@@@@@@@@@gsEF@F@@@CC@EF@@E@CR@EFR@@R@Cb@FE@&@EE@F&@FCE&@CF@E&@FFFF&@FC@b@FFC&@@FFFCb@CF@CC&@@@@@@@@@@@@@@@@/@FF@&@FEEE@&@FF@E&@FE&@E@FCEC&@F@@@&@ECEC&@E@COR22y)&Oh4JIJ@JJQTT)@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gvu2222222222222222222222222222p)W7ppppppppppppppppppp,%JyFFFFF@p@gXpFFFFFEd)W@pppppppppppppppp,,,,,,,,,,,,,,,,,,,,,,,,,,,,,74@@@@@@@@@@@@@@@@gI*Ek [7n@2Rn]Ja@#X@ Wa@ J8dCWgI&WI4I4C4I8C)4I|Cy4I@FJLRTX^ bd&h@@@@@@@@@@@@@@@@g)2*,np24784z|>R@@ a1@&@aa1@&@ba1@&L@#a1@&@da1@&T@%a1@&X@&a1@&@ga1@& @@ELLLLy)]&) Iyd@E@@@@@@@@@@@@@@@@gEsQyd@E@hJ;y4h)y8J;ssR*2yd8&1mp&R*)nIn@J|X@ [h&|@71  p8aL@Q2m&u&@)LLk8T,k,8sX L;dXmX#dp2mgaF*mgag ,snQsb]Fd)*@d@@@@@@@@@@@@@@@@gm@z*84kd]Xg@gQp@QvbREg][@hkT2XR*;XJ;ssR*2yd8gm@O@h4%@bI4@4R,;kX1]WO%EO &T#2@ ^Xg)m]JLbLRn J>|v[*)I4@pI@@@@@@@@@@@@@@@@g2=4R @#p=; kpO2spQ%2v)ps&phpI|zR @#k> I=[hdkg g ) gag Qsb]&4@71O2s@ ^@gQ)J IJ*L^ JybI4@OksI2%d@ JR4d@@@@@@@@@@@@@@@@gugz Jn[F2J^ub2L,k@p,@gyI8Q,X )ysTbJR/p@bh@#]aLF@ JF/s>J L@@  mCRJ@@bua @  / RJ X[ILh2m1 # %,kRnR| @# ,mp@@@@@@@@@@@@@@@@@gpX@h8R| @# @b a 24b @,8R|mh@  /@n@R4 h@  bm@a*/2mh%&k%g m  O&1a&s*phR>kJ4@ np22mO@Xg IO)&k EX,khCkJ4@ @@@@@@@@@@@@@@@@gE%n/@%8R7kJ4m JEJ*L^*nvn||4hbnaJ|,k@%@n@R7kJ4@ Lm4R@hRsT21,|*8T*yQybJJ@  1R2mh)&k%g m  k/O a *mL,EkJ4@ L1d[F@@@@@@@@@@@@@@@@@g|&@bb @b^*p[bgE k/O Jk g@|^* @2,Ik@I,bLRn|v[*hbb @# ,m2v@& L;84kzRJ2yb m@@dX@2@ @b8a F@  mz2m Xbm IaJkm k/O Jk @@@@@@@@@@@@@@@@gb &nXRz J4z JLbLRn J>|v[*hb2 ,,kT@dIsRy,2zJn8I@8)Ibhb *@ O I@|*@ pI@;@ OOI@|,@ ayI@|n@ pRF,L1Ib2b *@ QQyI@|4@ QyI@; 8@@@@@@@@@@@@@@@@gC%^kJd&Is >7h@LLdCsh@2OO@@#I@|>@ LdC4@@2O @#I@=@ LdC4X@2OR@@#I@=J@ LdC4p@2O @#I@=@ LdCu@2O@@#I@=@ LdCu @@@@@@@@@@@@@@@@gp@2O @#I@=@ LdCu8@2OX@@#I@=b@ LdCv@2O @#I@=h@ LdCvh@2O[@@#I@=n@ LdC7@@2O @#I@=4@ LdC7X@2O^@@#I@=z@ LdC7p@4@@@@@@@@@@@@@@@@g|y@=>mp@=g%>b @,@m>b @| m>mp@7 m>b  &8@v@>8Xg&8 @1g&8h#&2 Can8@bp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Wd/@@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F I@d@@@@@@  IJ@IQ@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gv2I,,E,FO))O&gTE&@@@@@@@@gg)&[TgTQsQ%QdF@OTTE|FEO%TOTgd&@E@@@@@OQR&@@@@@@ORQ&@E@@@@@Od4#&@F@@@@@OTu&@@@@@@O@@@@@@@@@@@@@@@@gR*#Q&@C@@@@@@O#R&@C@@@@@O#7&@C@@@@@O7Q&@CC@@@@@OQ7&@C@@@@@OR7&@CE@@@@@O%Q&@CF@@@@@O7dQ&@C@@@@@OQTd&@@@@@@@O2b&@@@@@@O2@@@@@@@@@@@@@@@@gRub)&@@@@@@O2bR&@C@@@@@O)2#&@@@@@@#)2XCO#T&@E@@@@@O2s&@F@@@@@OQT&@@@@@@O24&@E@@@@@@O77Q&@E@@@@@OgQ&@E@@@@@Og2&@EC@@@@@@@@@@@@@@@@g @@@@@O7R&@E@@@@@O2bT&@EE@@@@@O77R&@EF@@@@@O&)WEkO#WO)27sOX#sO2bWy)&EL #%O2sQOQ)WEOO2sROQ7JRO%&TXQ)E;FO2s7W2Xs @@@@@@@@@@@@@@@@g7 O#)O24dO#TQ#&&gW#&v)O2bQ2W%OR)4uQ#O#8FEO#T7W#2sE FFF QFFCO#TRO&) O7QR CO)2X  OQTTO&usW&u#&%&)dJOR)7WRQ2O&4sOR)@@@@@@@@@@@@@@@@g/) Q Q QC Q QE QF Q QTQsQR[II,1JCv[@ICFIFCJz[CF@FCF@J[JF2[IIFI@FEE[F2[FIEIICC[z[EEEFEE@FF[CEz[CI@@@@@@@@@@@@@@@@%XEI@F[z[C@C@@F[Ez[@FCCFFIF[@z[@CCCR[@Fv[@C@C@C@IE2[FIC@EFOR22Oh4JIJQTT)@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g|u2222222222222222222222222222p)W#Wppppppppppppppppppp,%JyFFFFF@p@gXpFFFFFEd)W@Ipppppppppppppppp,,,,,,,,,,,,,,,,,,,,,,,,,,,,,74@@@@@@@@@@@@@@@@g=Ek [7n@2Rn]Ja@#XEsh aI@p&%u)2&%2]]@v]^@z]@>]@ #d1@ Q#d2@ R#ds@ #d4@ T#du@ #dv@ #d7@ W#d8@ X#dy@ #dz@ #@@@@@@@@@@@@@@@@ghId;@ [#d|@ #d=@ ]>=@ ^#d@ #d @Ia@XIb@hI#@8Id@II%@IXI&@IhIg@I8Ih@@ EQCC@dCWgI&T#Qd@EJ&|*@@@@@@@@@@@@@@@@gd^R@*|kR@@#Wv E W Og ]FOF%bFvk]h@Q7@Jn>]JJ^^n||4*,nFzI/W2&@Qd#*k #RnQpb[p@bg@ TX@#b8| yOW^^WL#%8pFzIs=Fd@@@@@@@@@@@@@@@@gb gd#*k &p#Rbg&kRs%&2&Qu]^Q,@hz*8LLk8IsRyd]mpkORkdkg g R*g&s*ka%)Qnb]u|h@8Q8@Q7b[u|) @g)Jk,28T**Iy,sR|%1sz ; W Og%F]@@@@@@@@@@@@@@@@gaT#2|phIzy=Fds aR#Jn*QQ7@Idv&^2vEJL*z),I;>@JT2nFbLnm*LE@>QOk7|spE]WOEvJ7EQR%W #/;/8yE OREvJ4#I F^@@E]8@@@@@@@@@@@@@@@@gJ@|I[%|T@ECXEg @@QW%nW1@|IW%|T@F8@QIF^@pu&F%^1EvJ4Q] dT^@kI F WO@@QW%^W1@IW @Q]@%pva)@J=JLy,JTuX@@@@@@@@@@@@@@@@gLu,7T| p%sEE&C@FF%CO@@QW%^W1Q @u]TX|Iyh>I)FTX1F8@QIaF]h1LR1F%O@QapLQTTpCpQsp TIa @Qa@Q&FW1Qg@@QEp%^@@@@@@@@@@@@@@@@@g sFQQ8@R,d4Xu|@FE@EX @XT@TIbE|Tv @QIW @QapdT^@kI F WO@Qa@QR&I@FE@ECX%EF]h@Wy@8y%|d%@,|@QFEW@EIE@@@@@@@@@@@@@@@@gp/Q&%O gWC RQQp%n@FE@EyE@@Q^%kv @XIF^@psI F W%W ROLQb %&va)@TdELvTT|u,vT1F W@7 W O[%[XQ]@&Lva,@R%y,y*@@@@@@@@@@@@@@@@gk>T|84|&@FOIEF]hX@EE&W[W^^WLQEp&@E%X@@4@d^RT@#IQQ8@Qzd4XuQFCW @R4vuL&yQFOXugFdR%)d%sp7g&%%@@@@@@@@@@@@@@@@gsLsWI#]h@* &T@ET@XI% @Q &W@E @XI&@Q &@E,@yv^y=;T@a d dz^zEET@a@d d7nbgaaW1@IICLThyzd@@@@@@@@@@@@@@@@@gnp dz^zE;ET@%d d1R&g*@v)y8hW,TEvEJb^)@@QC)gaa^1@IICLT*)zd@ dzn^zE;ET@&@d d1R,g*@vk8hW,TEvEJz^)@@@@@@@@@@@@@@@@gk@@QC/gaa^1@IhICLT,Izd@ d;F^zE;ET@&pd d1R2g*@v,y8hW,TEdpvmI8hW,E^;TI @&O TIE@kd;TIE@n;TI @XO XImpsO@@@@@@@@@@@@@@@@g]% XIn@yO XIgpI[XIa@[XIa@@QE @@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@W%R@@z@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F I@d@@@@@@  IJ@IQ@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ggI,,E,FQOh4ER@F@7CR@CF@O#TgO&gT&@@E@@@@@O2sT&@@@@@@@O#d&@@@@@@@OTgd&@E@@@@@OQR&@@@@@@ORQ&@E@@@@@Od4#&@F@@@@@OTu@@@@@@@@@@@@@@@@gT &@@@@@@O#Q&@C@@@@@@O#R&@C@@@@@O#7&@C@@@@@O7Q&@CC@@@@@OQ7&@C@@@@@OR7&@CE@@@@@O%Q&@CF@@@@@O7dQ&@C@@@@@OQTd&@@@@@@@O2b@@@@@@@@@@@@@@@@gI^&@@@@@@O2b)&@@@@@@O2bR&@C@@@@@O)2#&@@@@@@#)2XO#T&@E@@@@@O2s&@F@@@@@OQT&@@@@@@O24&@E@@@@@@O77Q&@E@@@@@OgQ&@E@@@@@@@@@@@@@@@@@@@@gb&@Og2&@EC@@@@@O7R&@E@@@@@O2bT&@EE@@@@@O77R&@EF@@@@@gg)&[TgTQsQ%QdF@OTTE|FEO%TOddOT)FOsdgFCO%TF# #%%2 2%FEOg#2FFg@@@@@@@@@@@@@@@@g2,#22FOd%2@@d%2@Od#s@ Tu@COTu@OTu%@ETu%@F 7g@O7g@@ &)@OQ%T@Odg@Cdg@Oh#@E Ws@F #s@ h@C@ W@@@@@@@@@@@@@@@@g| @C #@C %@CCW@Cs@CE@CF R@Ca@@ Rg@ g@ RR@C R@ RT@ER@F R@ 22@E@7@Eu@E u)@EC uR@E@EE g@@@@@@@@@@@@@@@@gp&)dE;JEWT2@WT2WT2OgWT2WT2COgOgy 7EkO&2O)2W2sQ)sWRW%O% hEOR)dO2O2%[2sQ)s[RW%%OhO2%O#T7O2s7[Qs&)@@@@@@@@@@@@@@@@g1%&%2OR)4O#O)2XQO#2XOQTTOgI@OO7g#s gCO2sQOQ)WO2sR2Qu sQO#8O#TQO74WsQR# g%sC%s%s%sO7QRO&)O&% by)&L@@@@@@@@@@@@@@@@gs%&2QO%&TOR))O#TRJRO2bW2%OQ%2O24RFO)&uO&us#&QTO)sWQ)W2h I  E C FIO@  F   @Os)E &@@@@TQsQ&@CI,1JCE v[@@@@@@@@@@@@@@@@g^v@@F&@FC@&@EEFCFz[@@v[IIIIIIIIIIIIJv[ECIFCCI2[C@ECECv[@@EEEv[@EECIFv[@@I@CIz[@@@CE@@@@@@@@@@@@@@@@OJLIIFEv[@@@@CFEz[@@@@@CEI@Cv[@@@@@@C@EFCz[@@@@@@@FFCOR227s s7JIJ@2W%JJ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gu2222222222222222222222222222p)W2% &2ppppppppppppppp,%JyFFFFF@p@gXpFFFFFEd)W@@pppppppppppppppp,,,,,,,,,,,,,,,,,,,,,,,,,,,,,u8d@@@@@@@@@@@@@@@@g&Jm8p ;8@WOQ7OQEWOQXaI@p&%u)2&%nyzL@2yz @vyz@zyzO@>yz@@ gdQ@ QgdR@ Rgd@ gdT@ Tgd@ gd@ gdW@ WgdX@ Xgd@ @@@@@@@@@@@@@@@@gWgd@ gd[@ [gd@ %gd@ ]d] ^d^ d @Ca8b@aCa8bF@bCa8bJ@#Ca8b@dCa8bR@%Ca8b@&Ca8b@@ELLLLy)]&)p^@hTz&@@@@@@@@@@@@@@@@gs@@*QzmW,@J%d1EL[1Ep]1E81F@spF RpFQRW@FL RW F RX@FTQR F]R@FdWR F,]R[@F4WR[ F|]R@QR @@@@@@@@@@@@@@@@g]dL]R]@T]R] WR^@dQR^ ,]R@4QR |]R@@C% Cua@EC%a Eb@IEb  E#@ E# OEd@QEd @@@@@@@@@@@@@@@@g2W%@% W&@E& [g@]Eg Eh@aEh #E)@%E) g*@)E* kEk@mk /,@1E,@@@@@@@@@@@@@@@@gd; sEm@mv Wkahn d@ XE% a% Xnyu @Ed@ O@ *;T y@ 2;T y@ v;T y @ 8mpy^nE28X by@ER>yTub8%W a%1Xn@@@@@@@@@@@@@@@@g=yW% @Ed@ O@ >;T yW@L;T y^@Lmpy^nE28X by@EyTub8%W a%1XnyW% @L% @TCC@W@C1/FEL@1;n] @L2Tp@@@@@@@@@@@@@@@@g> aW@EEL@2 b=u^8T;#@Lb;XJnE|@JuT1LmW@E @X@LpsT F@EL@h@2z@L|XTpCOT4E4@Tp #Q@EE@LTpCRCk4 ;anL@@@@@@@@@@@@@@@@gR*|@4EEa J8WpTk2u@@4 Ts@#@EQ@X@Lp CQy|@s;EL@ sTu#@E X@hupTv@#2v8X@Ts@#@EE8W , 2Q#p@@@@@@@@@@@@@@@@gbd)WXs 1Lm^nF@@LpvT7@anEs[@R,d4Xuu,u] z8X |QTTpI@pTW)2 u>@L2sp7g&%%sCh@ 4|m@ Lp a@E X@Cp@Ch@ T@@@@@@@@@@@@@@@@gT8[a @EQJ  @R=Ihyd|uXJ8XL W&p2Q#p#sLpvT #anF@@ 4y a @EmF8X@Ty#&2u@y Tv anEs[@R|d4XuJvL> y#)@E@@@@@@@@@@@@@@@@gu)@Ea@E*E;k@Thyd4uLm&u]TXuQL@E,d@4;kah;pEI^[C[^&]gC QJ%/b|pvT7@anEs[@R,d4Xuu,u%[ pTyp#&@ETO8X@Q2@@@@@@@@@@@@@@@@g vsp7g&%%sps&p T8[a @EXb8X@Cnn= |[a 8p1J%F #C EJ Tv@#2nF@@ |ka @EXO8X@Tv@#snF@@ = a @EXOR8X@Tv@#1nF@@|p/u= @@@@@@@@@@@@@@@@gkbE Q %EOO@ CQ]mT=p#W8@] TQ@#8@Eu@E7O&8X@TO #z@EXO W a >pE W]gOC bgCI&W & 4=47ka 7pyEQ@dCQ^%WITs@#|@Eu= @@@@@@@@@@@@@@@@g X] TJpT=T #W@E]O @,@ >@TazpE&QF g%W%W RO T T #@O ;@#&2u@zT4X8|=IEuX@ 8[a @E=@@ &&Q@@@@@@@@@@@@@@@@g2vF g%T*@ ER@a=@@g*y8J;s8 y48@EQ,@bk pL@gksXIsRz*8L2*%Qv@bL,kk p|@hJy8sXTTy8L1kEQ b p@@*O8 L@ OEpT yF/ EO Q %EOO@dC@@@@@@@@@@@@@@@@gOQ^%W*LpO1p@=WFOQ W[I&T* OQ%pF= yOFW]g ,a@@*T%%]/ 7IWF%RQWL*X@ EQ* apk p@@*T@ EQn apk p |@h*;ssR*@@@@@@@@@@@@@@@@g@)2y8 X4kyTE @*];@kI F WC[C*p%%@ ERC @*Tm )&F%J *a;@EC W Og@O@@* %F@@ hTm%%@ EQs bE @*T1Fp@=@@@@@@@@@@@@@@@@ghWFO^ObQ%FL* hE Ep@ EQz @*4@ EQz @*C8u%%]F@@ EJ bE @* hE Ep@ EQz @*8@ EQz @*C8y%%]F@@ EJ bE @* hE Ep@ EQz @@@@@@@@@@@@@@@@@g)T*|@ EQz @*C8=%%]F@@ EJ bE @* hE Ep@ EQz @*Q@@ EQz @*C8Q%%]F@@ EJ as@@* EF@@ EQ,@azLnk pO,@g Qsy82*XJ;,y/pE,EL@@@@@@@@@@@@@@@@g @ EQn@ k @*T%%@ EQs as@@*Tm J#QF%WF%RQWL*Tm%%@ EQs bE @*TQIF/ =WFO^ObQ%FL*OT@ Eb@bI @*OT@ E@bI,,kk p@@*@@@@@@@@@@@@@@@@gT,@ EQz @*Q@ EQz @*C8QQ%%]F@@ EJ bE @*OT@ Eb@bJ @*OT@ E@bJ,,kk p@@*T,@ EQz @*QX@ EQz @*C8Q%%]F@@ EJ bE @*OT@ E@@@@@@@@@@@@@@@@g4Fb@b @*OT@ E@b ,,kk pL@%)sL2*8y8@%Q@a>@ mv@a|k p@@#R*khy*%Q ak @* )F@@ dL@ EQz @*Q Q& @@*OT@ EQ@a, | b z@8@b @@@@@@@@@@@@@@@@g88 8n@2@b 8/@/@z 8k14kQzO%,@@8h n@kEF z @*Q,R@ Eh nQ  h nRQ4kRO%,@@ h nQ4kRO%L,@ @ h nO2^%R,,k% @ |E]1>TQ@@@@@@@@@@@@@@@@g>R4kRO%L,@J h nT14kR%%8,@@ h nQ4kRO%L,@J@ h nO2n%R,,sE @ 4E]1>Q4kRO%L,@I h n14kR%&h,@F@ h nWQ4kRO%L,@I@8h nO2>%@@@@@@@@@@@@@@@@RR,n% @ X@Ep@ m]s@Ep@ Es@E@ @E@ @E@ d@,@ OhE L@ O @@ TE X@ E @ E, @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@W#@@8@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F I@d@@@@@@  IJ@IQ@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gFI,,E,FQOh4ER@F@7CR@CF@O#TgO&gT&@@E@@@@@O2sT&@@@@@@@O#%&@@F@@@@@O#T&@@@@@@@OTgd&@E@@@@@OQR&@@@@@@ORQ&@E@@@@@Od4#@@@@@@@@@@@@@@@@g) &@F@@@@@OTu&@@@@@@O#Q&@C@@@@@@O#R&@C@@@@@O#7&@C@@@@@O7Q&@CC@@@@@OQ7&@C@@@@@OR7&@CE@@@@@O%Q&@CF@@@@@O7dQ&@C@@@@@OQTd@@@@@@@@@@@@@@@@g2F&@@@@@@@O2b&@@@@@@O2b)&@@@@@@O2bR&@C@@@@@O)2#&@@@@@@#)2XO#T&@E@@@@@O2s&@F@@@@@OQT&@@@@@@O24&@E@@@@@@O77Q&@E@@@@@@@@@@@@@@@@@@@@g,@OgQ&@E@@@@@Og2&@EC@@@@@O7R&@E@@@@@O2bT&@EE@@@@@O77R&@EF@@@@@gg)&[TgTQsQ%QdF@OTTE|FEO%TOddOT)FOsdgFCO%TF# #%%@@@@@@@@@@@@@@@@g* 2 2%FEOg#2FFg#22FOd%2@@d%2@Od#s@ Tu@COTu@OTu%@ETu%@F 7g@O7g@@ &)@OQ%T@Odg@Cdg@Oh#@E Ws@F #@@@@@@@@@@@@@@@@g|8s@ h@C@ W@C #@C %@CCW@Cs@CE@CF R@Ca@@ Rg@ g@ RR@C R@ RT@ER@F R@ 22@E@7@Eu@E u)@EC u@@@@@@@@@@@@@@@@gR@E@EE g&)dE;JEWT2@WT2WT2OgWT2WT2COgOgy 7Ek[Q)sQ%WQ)sOWQ)sI 7u 8uEOR)dOQsO#T7O2s77sO2sQ 82RO2bQ2W%@@@@@@@@@@@@@@@@g=F )28y)&OR)4O2b%W#&QTO#TQ gO#TRE  72O&)OQ7 W7X%W&%2O2s#QWQOQ)WO2sRO7gO2bWO)2XWQ)W2hORIO24ROREQsOROR)7[%s)u#@@@@@@@@@@@@@@@@g82LWsQR#O)8O#8OQROQTTORO%&TO7QRO&%J@QsQ%OQs%Ws2s[s2s72J s7OR))JOd@[)s4)%  E C W&gCQsTQsQR[EI,1JCR@C[ER[CE@@@@@@@@@@@@@@@@g 7FIJ[EJ@R[FEOR22[ER[E&@EEEb@EEF&@Cb@CFF&@@CFCb@EEC@Cb@F@@b@CFb@EC@C&@@@@&@FE&@C@@@@@@@@@@@@@@@@g1&@E@F&@C@@E&@E@C&@FF&@&@C&@EEEF&@FEEEE&@FCFCb@FCFC&@CCCCCCC&@CCCCCCC&@ECEFE&@FF@O@@@@@@@@@@@@@@@@,u)2@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g su2222222222222222222222222222p)WQ)sQ%pppppppppppppppp,%JyFFFFF@p@gXpFFFFFEd)W@pppppppppppppppp,,,,,,,,,,,,,,,,,,,,,,,,,,,,,u8d@@@@@@@@@@@@@@@@g;=Jm8p ;8@WOQ7OQEWOQXE7OQ aI@p&%u)2&%2yz @vyz@zyzO@>yz@@ gdQ@ QgdR@ Rgd@ gdT@ Tgd@ gd@ gdW@ WgdX@ Xgd@ @@@@@@@@@@@@@@@@gXgd@ gd[@ [gd@ gd]@ ]%gd]@ ^d^ d @Ca8b@aCa8bF@bCa8bJ@#Ca8b@dCa8bR@%Ca8b@&Ca8b@gCa8b^@@ELLLLy)]&)@b@@@@@@@@@@@@@@@@g@)Tz z*@k1E1m@Ju,1ET]1E81F@a1F4FL TFQTW FT TX@FX TX FQT@Fd]T F,WT[@F4]T[ F|WT@]T @@@@@@@@@@@@@@@@g LQT]@T]T] ]T^@dWT^ ,QT@4]T |QT@@C% CC%a@Eua C%b@IEb  E#@ E# OEd@QEd @@@@@@@@@@@@@@@@gaE%@% W&@& [Eg@]g Eh@aEh #E)@%E) gE*@)* kEk@mEk /,@1,@@@@@@@@@@@@@@@@g@, sEm@uEm mp8 dX )*nk,@k ETEa^k)En%Xh@%,@T@Q@ 2=@y@ z=@y^@ >=@yb@L@ny n%zzXk*;@E[@EX*zTEa@@@@@@@@@@@@@@@@gbk)Eyn%XXEh@%,@T@Q@LF=@y@LJ=@y @LLny n%zzXk*;@E[CEX*zTEak)Eyn%XXEh@,TEab pCE@W CF1uL#I@T|4u@@@@@@@@@@@@@@@@g)7|Xuyh|vT*T^E[Lh@,W 1@a@L,/pmn%z1pCL | [)n,@2 u#,2zXku[Fsd@ 4 b/@E[@h@& 2;)a@E/,[ C F@@@@@@@@@@@@@@@@@gE[L|@a s J@L*=h@L|1@a@E[L|@m4 4p#Tu;IWCI%^W[Cau #Wv@m]WOE 7bup4p#n&@av Lp#[v@s W OC#@@@@@@@@@@@@@@@@gz=g@7@#Fs*zX 7b/7 ; W OCI%^W[C]7@#s&zX 8@#as&zXnQ2spQ%2v)ps&p gnL8[)b@E[ dWk)byEEW^^WFW]g Cb/@E[@@@@@@@@@@@@@@@@g[@,d]L&yI%, u[g @T%u|L&yI%,m%[ &zX 8@b/@E[ X@Ruu|T,mW];X@EXs /X@Lu,| |E)*@E[L[ k)b@E[  [)b8 EOIWO@@@@@@@@@@@@@@@@gsIFW gC[]gI8p#an&@aL@n ]8Q2sp7g&%%sps&pmp7;)bzEEW^^WFW]g @#sd@mpzk)b@E[/X@R^LEzTu^p4#mv@EIWO@@@@@@@@@@@@@@@@g*b EE %Q&^OaE#n& n@u)*L |^LI*L]uX>;pEW%EOOW^^W 4p#ps&zXndJ)24#sp p4/| )b@E[QOJzX,dR2Qup7g&%%sp&p4d@/Lv@@@@@@@@@@@@@@@@g;7= L2Q#p4pQspmp1,u n&@d@mp1,ubn&@b7/@|%|L&F,|ymIu@E[4E&zW 4p#us&zXnTO2Qup2Q#TpQ)W/=[)b@E[OzX,dO#&Qs@@@@@@@@@@@@@@@@g,Lp%s)uQ#/> )b@E[ @mp>[)b8 ;JQFOF% I=p#zn&@mXup7@#FszX >p#Fs&zX >p#FyFJzX 8@#us&zXnTQ)Q##p2Q#TpQ@@@@@@@@@@@@@@@@ggX)Wm )b7IW&W gF |#pn& I@d]|&LI%, EX]O; [)*@EX/OzX,dQ)Q##p#2Xp&pQ)W/|Lun&@/|]8 dQbpg&2sua4,un&h@@@@@@@@@@@@@@@@gE@ @Ed@ EX#@a8L4, @k@ EX @a8 h1@@k ]FId  ECRs]u&4k E8@ E@ ,m8@& Qsy8T*yQy%X^@@kT@ EXW az,4,kh1@@kT@ EXW azkh1@@k @O1]F@@@@@@@@@@@@@@@@gT@ E @kOOy&%%]Fh@ Eh@bC@@k]* 1OCRC]u&4kCp@ EXJ azkh1d@)nz[n,vv8n h[n,vv%X@@k@ Eg@b h1@hhyh2n4**I**X4kv%Xb@@k@@@@@@@@@@@@@@@@gz[4@ EXb@@kOE%]Ey7@kI F WO@k @O1]F@ E @kX%]E8@ E @k@%&%%]Fh@ )^m44@ En@a#L4v h1@@kT@ EX#@ap @k4@ E @k@E&%%]@@@@@@@@@@@@@@@@gREF@ Es au @kOE%/@kI F WO@JE% n as@@k pL&&a]F@ En|@hz8L284*XT* %X#@ap @kT@ EX @ap,4,kh1@@k E8@ E@bF@/k4^|@&sh)1XJ@@@@@@@@@@@@@@@@g z;ssR*2y%h@bFmT@&4*ysT*8L2*J;%n a,kh1 @*k L;8Lk28sXT*yQy%@a)@@k 7 EJO&W%%]#O#QEQ,k8 @ OdEn@OI]F@ E1 a8 h1@@k @O&%%]@@@@@@@@@@@@@@@@g>F@ Eg@b h1@% *y84)yh2%n av @k pL&&)]F@ EXb@@k4@ EXb@@kOE%]Ey7@kI F WO@k p)&%y]FI2 E W]gOC bgQE&W &k 4* ; W OC@@@@@@@@@@@@@@@@gbI%^W[Ck p =]F@ EXb@@k4@ EXb@@kOEy]Ey7@kI F WO@k pm&%y]FJ E W]gOC bgQE&W &J@mb|@hh4)yh28ITs,2*%y b h1@@k pQE]F@@@@@@@@@@@@@@@@g>QI> EEW]gO%[F%CJQFLk@ Ez@ , @kO,L&%%]F@ Eh ay h1@@k LO&%%]F@ E8 a8 h1@@k@ E@ay h1@@k4@ EXT @k@O&%%]F@ EX a8 h1L@@@@@@@@@@@@@@@@gg@d@gyT4*84kzRJ2y%) az,4,kh1@@kOO]F@ EX bI h1 @g*zh18sQ|RsRLh1%z@ *kh/@@kT@ EX#@bI @kT@ EX @bI,4,kh1@@kO]F@ Ez@ *kh/@@@@@@@@@@@@@@@@@g|@kT@ EX#@bJ@@kT@ EX @bJL4,kh1@@kO]F@ Ez@ *kh/@@kT@ EX#@bJ @kT@ EX @bJ,4,kh1@@kO]F@ Eh@ay h1@@kF@@ E@b h1@%Lb@@@@@@@@@@@@@@@@@g]L@k8a]F@ )^d@ Ek@b h1@@k pQ]]FI1@# F%]dk@ Ey am@@k p12E%]FI4 ;#C &O F%]dk| )/@EW] aF]WCFC kT@ EXW amL4, @@@@@@@@@@@@@@@@@g%kT@ Eh@am @k p1]F@ QEd@ Oy^mpL2Fp@ OhQ Q& Eb n,%h@ Q^1 Qp@ EL@z1h,Qm2Edm@|@zL@8,1h,Qm2F m@@kQ Qz Eb n,%h@ OXQ E& Eb @@@@@@@@@@@@@@@@g[mnRO%h@ LQ R Eb n,%h@ Q@Q R @kQ RJ Eb n,%h@ ORLEd@ EL@zRQh,Qm2Edm@>EQ , @kQ R Eb n,%h@ dRLEd@ EL@8,1h,Qm2Edm@ @@@@@@@@@@@@@@@@gmzL@z * @kQ Ra]Rd@ EL@z * @kQ R1]R4@ EL@zW *W @kQ ]@ EL@z * @kQ Q]T@ QTQ ]@ QQ a]d@ QLQ )],@ QQ 1]@@@@@@@@@@@@@@@@gLC4@ Q y]|@ O@RLE8@ O^2LE8@ E2LEd@ 4RLEd@ XRLEd@ h2LE8@ RLEd@ J|4@E8@ ,@Eh@ X@EhX@ @Eh @ ,@Ehh@ 4E @@@@@@@@@@@@@@@@/  @ EXm @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Wb)@@E@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Fa@d@ I@d@ @@a@@I I@@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b d@Q@@b@ba@    @b bI bJ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@bd@Q@ @bIJ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b d@Q@@bIJ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @R@b  @b J@bI@  @b@b Q@J@ @bJ F@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F  @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Fa@d@ I@d@ @@a@@I I@@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b d@Q@@b@ba@    @b d@bI bJ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@bd@Q@ @bIJ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b d@Q@@bIJ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ d@@R@b  @b@J@bI@  @b@b Q@J@ @bJ F@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F  @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Fa@d@ I@d@ @@a@@I I@@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b d@Q@@b@ba@    @b  bI bJ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@bd@Q@ @bIJ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b d@Q@@bIJ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@bb@   @b@b I@   @bJ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@RL@@a@J@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@  @R@b@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b  @bJ F@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F  @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F I@d@@@@@@  IJ@IQ@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g]I,,E,FO))O&gTE&@@@@@@@@O#T&@@@@@@@O#)&@@@@@@@O#&@@C@@@@@O2sT&@@@@@@@O#Tg&@@E@@@@@O#%&@@F@@@@@O#d&@@@@@@@O#T&@@@@@@@@@@@@@@@@@@@@g@@@O#2&@@@@@@O#Q&@@@@@@O#W&@C@@@@@O7&@@@@@@OTgd&@E@@@@@O7&&@F@@@@@O&&@@@@@@ ##&@@@@@@@ 22&@@@@@@OTgQ&@@@@@@@@@@@@@@@@@@@@@gp@OTg2&@C@@@@@OQR&@@@@@@ORQ&@E@@@@@Od4#&@F@@@@@OTu&@@@@@@O#Q&@C@@@@@@O#R&@C@@@@@O#7&@C@@@@@O7Q&@CC@@@@@OQ7&@C@@@@@@@@@@@@@@@@@@@@ga;@OR7&@CE@@@@@O%Q&@CF@@@@@O7dQ&@C@@@@@OQTd&@@@@@@@O2b&@@@@@@O2b)&@@@@@@O2bR&@C@@@@@O)2#&@@@@@@#)2XCO#T&@E@@@@@O2s&@@@@@@@@@@@@@@@@@g sF@@@@@OQT&@@@@@@O24&@E@@@@@@O77Q&@E@@@@@OgQ&@E@@@@@Og2&@EC@@@@@O7R&@E@@@@@O2bT&@EE@@@@@O77R&@EF@@@@@gg)&O2by%QdO2@@@@@@@@@@@@@@@@gzJbQE &@O%TWs)QQ&)WR@F@[4)T8%Oh4FC%TRFWs&s2sF[dd2y@ 7@F@ 7EkQO)2OQvd s)R#&bOgyOT%2WQs8gs8gQR%O&)@@@@@@@@@@@@@@@@gnCs T TC TO%TO)sO2R2W2R2TW2R2TCW2R2T2R2W2R2TuW2R22sW2R2Wd2s&)OWsQOWssT%2sFWds8gWWdRWWdCORgTORg7ORg8ORgyWu#QWTQsQWQ#QgW@@@@@@@@@@@@@@@@gIbsX4%bOT&2R@CF@7O%&gQ#QW7@Od%W7OR)d TRO#TQO#2XFFOR)4E;W7s# #%%2OQ##QOg#2TQ##Od%2d%2Od#s TuOTuOTu%Tu%O2s4OvX# &@@@@@@@@@@@@@@@@g )OQ%TOdgdgOh# Ws #s h W # %W Ra Rg g RR RO &O2dOR Wd#&QTO%WO#T7O#TRO2sQO2sREOR))%W%WO&)O#)O24ROWd2g#42s)@@@@@@@@@@@@@@@@gJhWg#42OQTTd%2@Wd%42d%27Qdd#sO)2XOTu@OTuTu%@s2sEL %Tu%JCOs)b@@@@@@b@@@@@@JC dROd)W#&Wb@CEEFFJE@@FOWsOWsO2@@@@@@@@@@@@@@@@gbWOWsCWs)#^@FECE WW#QWO2b% WOW@@ OWROWQOWOWORORR T%2QLOROX#sR@EEFE[&#QWO&CO&O&O&Q&Q&Q&Q@@@@@@@@@@@@@@@@ghX&QCJTRgORgRg@O2bdb@EE@@@@@Rgb@EC@@@@@RgE QORgORgC 2Qb@E@@@@@RgCORgb@C@@@@@ORgEORgFRgERgRgC&@@@@@@@JIRgRg@@@@@@@@@@@@@@@@gnRgERgFWRg g@ 42 g gb@F@@@@@@&@@@@@@@@2s42s42s42s4s2s42s4CvX#vX#OWd@[OWdOWdWWdFWdFOWdEWdWdEWdQOWdWd@@@@@@@@@@@@@@@@gC@WdWWd@WWdWs2ssWWdWdWdWdCWWd&@F@@@@@@@JWWdC[WdF@[WdF@Ws8gs[WdFQ[WdFRWWdFCb@WWdFWdEWdEOWTWW@@@@@@@@@@@@@@@@gbJdEOWdFWd@WdWdWdCWdF2R2OWdOWdOWdIWdWd RQWdCJWdI R&&@F@WWd@WWdEQWWdQWWdTWWd&@@@@@@@@O2s7WWd@@@@@@@@@@@@@@@@gzOWWdCWWdC@WWdCb@E@@@@@@W2R2W2R2 2%[2R2W2R2E[2R2Q[2R2T 2W[2R2[2R2RW2R2C[2R2 2#Ws)Ws)[s) bWs8gQF@@@@@@@@@@@@@@@@/E%O7QR T%Ohhh&@@@hhhOQ7@C@@@@@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gmu2222222222222222222222222222p)W27ppppppppppppppppp,%JyFFFFFF@p@&FFFFFFFFEd)W@pppppppppppppppp,,,,,,,,,,,,,,,,,,,,,,,,,,,,,%IvT@@@@@@@@@@@@@@@@g,bL^nz*^&uL1LI@ppu)2&%a@8&kC&mCh&/@IdILEITEdIFIdFdI,I4dI|@RhbRhpIR)IbR)pJR*JbbR*p bRk@@@@@@@@@@@@@@@@gX bRkpLR,LbR,p Rm bRmpRnbRnpOR/ObR/p@@d@ a@dC@ Q@dE@ Qa@d@ R@dI@ Ra@d @ @d @ a@dO@ T@dQ@ Ta@d@@@@@@@@@@@@@@@@gW@ Jhd@ a@dW@ @d@ a@d[@ W@d]@ Wa@d@ X@da@ Xa@d#@ @d%@ a@dg@ @d)@ @Fh k@ [F4n7bnny@ W@y= hC]2@ [nh#,@@@@@@@@@@@@@@@@ggv@;>Ok4@=uk8@>=Ok|@>Oh@@ T|aTE Iz4uXEOT@ CTEOdF@nyJzJX))zRQhysT8@p8[T*,*p8T>QREJ)am R)1Cay J2@@@@@@@@@@@@@@@@gb*2b*&b,duOFJb%JnTE8TX%&kIO R#1aR*ns%&kFJ,ETF@m)IX*JT*yX XIzT4*2y8IQsI1QpQCay JT*n>^* LJTndnT /EJ,EOdF@h))z@@@@@@@@@@@@@@@@ggRRQhysT8|*2JkCay IJ4J>^Td8T>@&E8T>@hE8T>@*E8T>@,8T>@n8T>@p8T>X%h%dgRsOga*#hkLndEO  dEO  ndEO J@@@@@@@@@@@@@@@@gC8,EO ndEO OdEO OndEO J,EO aEO QEO Q*,ET RndEO dEO ndEO TJ,EO TaEO EO aEO EO @@@@@@@@@@@@@@@@gJ,n%WndEO XdEO XaEO8@7hQ@ n%h@ m*zO E,z8@Cy C][a*@ WC)au] JRb*2bnCLn]b^[L4k]^a@C]^a|@ 2@ u>E@@@@@@@@@@@@@@@@g=an@FzW8aX@7W8a7X@7W8bX@F7W8bpX@7W8#X8@J7W8dX8@L7W8dy@7W8%88@7W8&7W8&887W8gWXF7W8g887@@@@@@@@@@@@@@@@gaW8hX8J7W8hyL7W8)X87W8)88@7W8*WX7W8*887W8kX8F7W8ky7W8,X8J7W8,7XL7W8mWX7W8m7XF@7W8nWX@@@@@@@@@@@@@@@@g F7W8n7XF7W8/WXFF7W8/pXF7W8[@C]aW Xs]aWC] X;]aWE  C]aW]  ]aWI]  ]aW ]  []aW ]  #]ams  k]ams @@@@@@@@@@@@@@@@g s]ams  ;]ams @hFFF4zmJ[L4nCJ|,uJ*#]aIEWXRJCaa kns&7W84WXJ7W8[8^Jaa *g 2/ R*h7W81X^JIaaa %%aFska7W8TuXJJ7WR@@@@@@@@@@@@@@@@@gah#XXXXRhyLk2** u>E]@a#mu>E]^@aC@X aWX@ u2E]nT@gQs*X*4hy,sRmu>Epaa2E] @7Wvy/Lb)aJ*n#&s*ka kR#&s J7W7@C]a,@ ]*k]@@@@@@@@@@@@@@@@gWpLb)a%h% )&sJ*7]8EX@ u8E@C]8y  @7^C@C]yT y/ @7W R C]8aT @ 7hE]hb@m2E]v@nR*khy*8))zRQhysT8*4hy,sRmu>Ep7E)@@@@@@@@@@@@@@@@g)J4 J**znELv&[L*k]7aTa @7W8>[y  @7W8z C]aW,@ u8E4F@%IQ*8IhyJm7nEC8@ 7bEp@7^ 7@**R@dL2y8IhyJm72Ep@7^C@C]zW@ @@@@@@@@@@@@@@@@g;g^2*JT  I J*L^Rk @CITL@ 7hE]pb m2E@dsT*8mu>EpdE2E]%v@&*JX*4hysTmu2EX@7W8[@v*vgR@gs1zXITs,2*mu2E @7W8>|@@@@@@@@@@@@@@@@gs8Fs &7 CXIR*#F7CpTQ@7C@C]zWv@ k)^TL@ 7|E@dT@ 7bEp@7^ = FWvWX]s )%a kR#g *m2E@@@ 2Rv@@b4@nWJ @ 2T@@@@@@@@@@@@@@@@gdvC%s pTRFX)Q# pQ@ pRRF@n^ J @@ IW Jp@ syQ@ s1RF@n^ J @@aWJ]b;@ Ln*mRnFb]JJ^^4zmJuInWJ J@JJnz[L*zn@@@@@@@@@@@@@@@@g>,L*&EdanW8J8@hWJ]b;@JL&d^[L|F4zmJuInWJ @ 2TCC%s pTRFX)Q# pXQ@ pRRF@nW8Jp@ W Jp@ pvQ@ 4Q|@n^@@@@@@@@@@@@@@@@gpJp@ 2Rv@CRy,WXOTuTp&g)Qs&) hWJ @ 2TFX8C%s pTRFXI)Q#pQ2 pQ@ pRRF@nW8Jp@ ppJ2C@J*Tv[F4zmJL*&CLn*z@@@@@@@@@@@@@@@@gWmInJp@ 2|QpO @ s1R@nW8J h@8WJ]b;@J;Ln*mRn#kJbn4zmJuInWJ @ 2TE@Cy,WXTuT %s)p&g)Qs&) yWJa@@ 1,@n@@@@@@@@@@@@@@@@@gJ&8JaLJa J@J*Tv[F4zmJL*&,v^CLn Jk8@nW Jp@ 4TL@n@J@bJ@n^Jp@ 2Rv@CQJ*y,WX^%u)2 TuT %s)p&g)Qs&) 2yT@nW8J 8@@@@@@@@@@@@@@@@g1@ JWJ]b;@JL2;JL^4zmJuQn@@ 2|h@ 4 Qpap@ syQpa8@ 4T@n^JR@ 2yT@nI J>@n@8JaLQa J@J4#z*&T44*Ln4zmJL*&Qn@@@@@@@@@@@@@@@@@g,]@ 2|RF@nWhJO @ 4RQ@ s>RR@n@ 2|T@n J@ @ 4 QpO @ s1RF@nW8Jp@bpb @hOJ @pOJ @yOJ @[@OJ @[@@@@@@@@@@@@@@@@g]zJWJ]b;@J%J,[L4*L^4zmJuQn@@ 2|h@ 4T@nahJ@nJW@n^JT@ p|@nWhJO @ 1JRb@nW JF@n^JT@ 2y|@nW8J#C@@@@@@@@@@@@@@@@g2=@[Lnn J2C@L J*L^4n*m^Fv4dz L*>4uLbnJp@ pLQ@ pRR @nW J @n^JQ@#@W J@ba@nI J@bJ@nW8J#@ 2|R@n#J@@@@@@@@@@@@@@@@g^F@nW8J#[@bd4*)nC)@J4&&^bLRn@Fn^4nn^JR@@#a8JT@ 27RJ@nW8J#@@##J@bJ@n8JT@b>XIn8JT@d^XT[|T]h @ s/@@@@@@@@@@@@@@@@g7)RbX@n J@ @ 4 QpO @ s1RF@nW J>@n^JR@@ 2Rv@]J*n^@CQy@C[Qy@CQy@C]Qy@C^Qy@C@*|Qp#y|X8W@@@@@@@@@@@@@@@@gX2&ps&p&g)Qs&) s1T @nWJ] @ 1s@ndJd@@ 2Rv8]W&ps&p2vsXpvQ2p&4sp&p)Q%W 2|Qp@ s1T @bR|RLJ2pdpWpRR 4aRL &)pR&T@@@@@@@@@@@@@@@@g78ps2s 2T#X8%& 4 Qpdd%@nQn]8JQs@@ 4Q@ 2T&@g|TO@#g@I|4>Fd>T4Qn^JQ @ 2|Qp#zdX8JTQ##&Qs 1JRXCT%2 2Tb@@@@@@@@@@@@@@@@g @&|Q@ 4TOs@ @ 2Th@nW8Jd8@dXW J@bJ@n#JQ @ 2T)@n]8JQ#@@ 2|Q@ 4Q;X@nW8J%C@ WnW^F]JLnR2m4n]L4^Fv@@@@@@@@@@@@@@@@gLRd)yT*@nW8Jd@d4QhJ@JWJ]b;@IRR*;LnLnX@ 2|Ru@n^JR;@JnuJnEJn^%Ln2[L4)nW J@bJ@hC1Ru@nW8JW@@@EW Jp@ 1LQ@@@@@@@@@@@@@@@@gIhp@ 2Rv@Cb@*R@nX@ 2|RJ@n^Jh@ 2R8@C%RR@nWJ%X@ 2b@k4R@n]8Jk@L%@IR*;LnT2QnW JQp@ spQ7X% O2Qu@@@@@@@@@@@@@@@@gTp&#Tp4)T8% s1Q7X% Q%vpT%2ps&p4)T8% s>Q=X@n^JRp@ s>QpO@ s>O#@#g@J^,d>FuJJznLdvdnnahJd8)&dpR syR@n^JTX@@@@@@@@@@@@@@@@g%R@ 2yTmLQ##&QspT%2 2|RLIg42XpT&v% s1R2;@z[*T4)n@@ 4 Qpd @ s1RL%vpR#&b 27RX8Ig42XpT&v% s2R2;@IT4&^%Jg)n^ J%@@@@@@@@@@@@@@@@g* X@pJWJ%@IJ,*&T2QnW8Jp@% J@ 2|RL@nahJd@n#J@n@8Ja a J@IJRJ&|vF1n@ 2|Q7X%  T Q##&Qs s1RXCT%2 s>Q@@@@@@@@@@@@@@@@gT =X%pLWsp%T7p& s1RXQg&g 4gph4Q%ss2 2|Rp@ 1,@nW8J%8@ 4pT1T&4s)d&2spR#&bp7s 24T1@/C1RL g&gp4gpR#&b 27RX8@@@@@@@@@@@@@@@@gupFg&gp4g 2|R2;@2^%Jg)n^J;@d%@zL*&EJnn8JRp@ 2|Rp@ s1RW@n^ J%@]@JW JCJ@J;L,>&^Fv&>&^4zmJuInJ2@n @ 2y,@@@@@@@@@@@@@@@@@g2/nW J@n^J&X@ pTQ@ p,@*F@nW JTh@ s1R@n 8J|@nW8J&#@I J*L^R)npJssO#@ICLn^R,uC/RJX@nW JssO @ 1LRX@@@@@@@@@@@@@@@@@g|nW8J&p@ 2|RF@nI JO#@ @ 2Tv@nW8Jp@&p J2C@nuJ)nE Ep@ 2yRz@nW8JXh@& E@J2C@I J*L^R)nW8J&h@&8QhJ@&8W J|WX@@@@@@@@@@@@@@@@gns&pvX&#pQ))Q8 s1RX@nIpJR @g@@ syh@ 27R]@npJ@b]@n8Jh@ s>QpO @ pvRX@n JO @ s2RX@nIpJR @ 2T8@nIpJC@JTm@@@@@@@@@@@@@@@@gW2v,,b,n^F@LyJ*|R@n 8J|@nW8JgJ@%J*LnpJ@b@;J*|R@npJ|@nIJRh@ 1RX@nW8Jg J@I,4*nduJnF[Lb)nW8Jsg@bd4*,zJhT@@@@@@@@@@@@@@@@gbXRh@ p,@*F@nE@Jp@ pTRF@nE E@b@nW8JgX@XJ8J@ 1s@nWJ%X@ 2|kg@ *[*4uvd*^[L4nbnJ|*uIn Jgd=@JL*&Lv^**nR @@@@@@@@@@@@@@@@gk]OnpJ|gh2s&)QW 4 QpO@ 4QpOp@ 2RE^>@nJ>@npJdWX&)psX4%bpg&%s)pQ# s1R#@nWJ%h@ s/RX@nW Jh@ s>QpT @@@@@@@@@@@@@@@@ggO@ s1TO#@#g@ 2s ^z JLbnmbnR] L>u2nW JQ@ s1TT#@ @ syRu@nJd@n^J#y>X8%)p&pgQ)Qds)2 s1R*@nW Jh@ s>Qp@@@@@@@@@@@@@@@@gu8@ s1R@nW J@b@n^J[@Jd2^2vF[Fd,|sLnmIn^J#yzXX8#2s spQpa4,@I44zmJ[L4nbTQn@ s1R,X8Rp#u# 2T>@7RW@E@@@@@@@@@@@@@@@@@gvgJ*|R8@ uQphT,@JLz JLbnm4>FnnW8Jh[J@,,v^|>J*7RW@nW J@bW@nhJE% %TpQ##p&gps2s 2EF%&sp 2|R*X8]p2p%Tp&p@@@@@@@@@@@@@@@@gWQ##%Wp2h4% 1/Qp#y|@n@8Ja Fa J@JsLnb2sJ[J,n^ J>db,n^Qn8JR8@ s/RuX@nW J;@ @ s>Q=X@n@ 2|RWX82Qup)s s1Q>X@@@@@@@@@@@@@@@@@gWnW8Jh8@h)IpJ@JEJ*&bn J>vdnnW8J)@@ pTI)LI24g)#&42pQ)W4d%s 2@@E|RWX8 g4spg&%s) s1[@;Ln[nW J@bW@nh@@@@@@@@@@@@@@@@gFCJEJ% QRW%p2s)%Wps2s 2 F%&spR2 4 Qpdd%@ITL>v*mIn^JRzC@v] L*yn^J@bk@E J*7Rk@nW8Jh@@) 8JR8@ 2|R8@hhJE % RR@@@@@@@@@@@@@@@@g@,W%pQ##p&gps2s 2X8F%&spR 1R,X8%)Q2 24RQRp#u# 2L@EEQphd,@J,*&L^4>FnnW8J);@4,v^*n8J#@JJb*]J*R@@@@@@@@@@@@@@@@g1)nR^n*,]J,aR,@nW8Jg;@ Xn*,^444uz JLbnmInW8J)#@I,v^@n*,]OEQp)T,@JbR*;LnF] L*>4>FnnW8J*CJ@4,v^QnahJddhI2b@@@@@@@@@@@@@@@@g gp&u) s1RWXF2s)%W 2@EC/RX@pXg)&22puQ#4pgQ)Qds)2 1TOs@#g@JuJ*&bnz JLbnmvdnnW8J*@ 2|Qp#zdX8T&% 1JR@@@@@@@@@@@@@@@@@ghnW J#zdX@n^Jh@ 2R8@EQJ,a#y|X@nW8J*J@IL,v^F*L^b)nW J)Tg)gQ)ps&pWspuQ#4 s1Ru@nW J#y|X@nbJE@n^J@ 2y@@@@@@@@@@@@@@@@g#,Rz@nW J|@n^Jh@ 2y,WXIWspuQ#4 s/RX@nW J@dO#@ F@ 2zn^FznuL4&z JL&bnR] L>uIn J* @ 4 QpO@ s1R@nW JQs@I*n@@@@@@@@@@@@@@@@g#]v|sLnmInJdXI&)puQ#4 s1#yzX@nWJaCJ@I*4dz JnFznQn)@Iv*L^bnFJ^^bLnW8JksO#@ @ 2%s %s 2)Q# %s 24@@@@@@@@@@@@@@@@g|=]CRQT pTIIRQTpR)Q%Xpg&%s 2W%s )Q# 2XI)Q# )Q#*)]8JQs@F@IbTv[FT44*L)n J#y>X8d&upg42XpT&v% pRTO#@bC@@@@@@@@@@@@@@@@gu7@IFbLn[[JnQn J#zdXXFp## pRTO@ @ 2|QR;@IL*nvF*L^b)n^J#zdXX8Fs&pT%2 2|QpO @kI4^JTX@ 2yTm@n]8JQs@@*Q8J#y|X@@@@@@@@@@@@@@@@g8[%)pgQ)QpT2p#2spg&%s) 27TO@#g@ L*]z JL&|sLnm|sLnmInW8Jh8@*1@J@bJWXX&%u)spuQ#4ps&p%sW) s1R @nW J @n^JQ@@@@@@@@@@@@@@@@g*@ 2@EWJhQR;@J*4n*m^F*L^bnFvEJ*LnJQX@ 2|QpQX@ s1RJ@EXJk/RX@pd&upg42XpT&v% pTTOs@#@IFbLn[[JnQnJ@b;@8@@@@@@@@@@@@@@@@gFu,^Qn J#zdX@nJ#y>X@n J@bJWXI%vpuQ#4 pRTT#@#J@vvdnQnW J>@nW8Jk@ JWJ%@I*,*&=L2*&%J)nX@ 2|RW@n^Jh@ 2@@@@@@@@@@@@@@@@g2R8@*@)RX8b%Tp&pgQ)Qds)pQ##pR8p%Qdp&g) 4aQp@ 2@n]8JQs@@ 2|TO#@ @ s1R@n J#yzX@nJp@ 2|Rh@nI J@@@@@@@@@@@@@@@@ghz@nW8JksOp@ pTIkI@nWJ@ 2RE^>@ERy,@nIpJQp@ 2|Qp@ s1R@nIpJQp@ 1R@n J@b@nJp@ 1R@nIpJQp@ pT@@@@@@@@@@@@@@@@gOmQp@ s1Rg@n^J] @ 1R@nW J@b@n^Jh@k JIpJQp@ 1R@n J@b@n^JQ @ 4aRL@nW8Jkh@ 2|Q @ 2RE^>@E]RR@npJ@@@@@@@@@@@@@@@@gE&7@n^JRp@ s2Rp@ 1Rg@nW8Jk @ s4,@CFRXQQ##&Qsp&g)Qs&) 2|Qpkp@ 4RR@nI@J@bJ@n^J@b@nW J2@n^JTX@ 2yT@@@@@@@@@@@@@@@@gszm@n]8JQs@@ 2|Qp#y|X8C2s s1TT#@#@b4JynW JQ@ s1TOs@#g@Ib4uT2gF,*anW Jh@ 4RQpk8@ 1RLIg42XpT&v% s1TO@#@bT4@@@@@@@@@@@@@@@@g%;QnW8Jp@I8JRC@Jb*L2n4zmJuIn]8J@bLX@nW J@bX@nI@J@ @ 4 Qpd @ s1R@n@ 2|Q>X@n^JQ @ 2Rv@CRRX@@@@@@@@@@@@@@@@g|2sgp4%s#p&g)Qs&) 1s@n]8JQs@@ 4aTT#@ @ 2 %&sp)2spsd s8]J)2spsd s1TT#@#g@IJnRn^4JynW Jh@ s>QpO@ s1R@@@@@@@@@@@@@@@@g#7@nW J@b@nahJd@n^J#y|X8)s4)%pQTT)22 2a@E J*7Ru@nWJW@ 2y,@nWJ]kJ@I|2J&F,>F*L^b)nIpJh@ 2yb@nWJX@ 2y@@@@@@@@@@@@@@@@gbRRz@nWJ@>uJnF)nW J,X@ s1Ru@EaJ*yb@nWJ]kJ@42J&F)nW J,X@ s1Ru@nWJW@ 2y,@nWJ Cg@JL#Ln&sL*L^F*L^b)n8Jh@ 2yR@@@@@@@@@@@@@@@@gvXz@nWJ]b;@I2zn^F,>F*L^b)nW Jp@ 1/Qp#y|@nW8J, @,)8JkJ@I4n[Lnb)nWJW@ 2b@EdJk7Q@ 1LRF@n#JO @ 2%&%s%@@@@@@@@@@@@@@@@g4 2|QpO2;@JJ,,b,n^n;&*anIJh@ 2I@EbJ*4R@n]8JQs@@ 2|TO#@ @ syQpO @ 1Ru@n^J,X@ 2yRz@nWJ] @ s4b@E#J*4@@@@@@@@@@@@@@@@gb,R@C*RXR2dg#p&)p#d%s 1s@n]8JQs@@ 2|RJ@nI@Jh@ s>QpO @ s1TO#@#g@JRn^EJn^%LnJb%JnQnW8JW@@X8JRC@JsCLn4u@@@@@@@@@@@@@@@@g2C,,b,nnX@ s/RX@ndJ#zdX@nW8J,p@ s8]J)2spsd s1TT#@ @ 2|Ru@npJ>@n^JRp@ 2|Rp@ 4 Qpd @ s1TO#@#g@JRn@@@@@@@@@@@@@@@@gWR^EJn^%LnJb%Jn&J*y,@nW J@bJ@n 8J|@nW8J,8@ 2|QpO2;@JJ,,b,n^n;&*anIJh@ 2I@EgJ*7RuW&ps&p&)pR&T8 2|h@ 4 Q@@@@@@@@@@@@@@@@gppd @ s1Ru@nW8JW@@]X8JRC@J2,*&4uT2gF4zmJ[L4)nX@ s/RX@nW J#y|X@n^Jh@ 2R8@Cz4]Wspdd&)8pQTT)22p&)p2s&) @@@@@@@@@@@@@@@@g]s2|zX s8gp&ddQ%T2 s1,@nW JO @ 2h@C,R4]Wspdd&)8pQTT)22p&) s8mR)QTps8gp&ddQ%T2m@^JT@@ s/RhXdhI#QWpRs2 2@@@@@@@@@@@@@@@@gu8RE^|X@nW8Jm@IpFFFFCLdb*#J)nW8Jm[@J Ldb*#JnT44*L)nW8Jm#g@IXFFF# J*^nW8JmkJ@Ip^FFFF,d|uJ OnW8Jms@I8&FFFbnR] L>uInW8Jm;@@@@@@@@@@@@@@@@gh@J@ @nFFFCL*# J*^^bnR] L>uInW8JnCJ@I8vFFFvd*^bnJ=k|RJX ddpR&&#Q% s1R @nW J>@nW8Jn@mW JQRC@I Ldb*#J)n^JQ=@bb 2C@@@@@@@@@@@@@@@@g8]2sps8gp%sW)nI^JTh@nW J @n^JQ@nadJTCJ@Ivn^4uFuJ)n^ J]b;@I,vFuJmu#8@nW JTh@ 2=Q>@Ev#>R@n@ 2|7@@@@@@@@@@@@@@@@gzX@n@ 2RE^|X@nW8J/Cg@;LnCLnnW8J/ J@IEJ*LCLnn@8JaLQa J@J4#z*&T44*Ln4zmJL*&Qn@8Ja #a J@JRJ&JL*[F|sLnnW8J/J@ICLnEJ@@@@@@@@@@@@@@@@ggh*LnW8J/[J@I J*LEJ*LnW8J/#g@IT44,T44myJk1R 2sps8gp)Q# pRFXI&%u)spQ pRRFghs&p)Q#/ J2C@J>uJnCLnEd& F4uJ&an@@@@@@@@@@@@@@@@gv>J@bJ@n^ J] @/QC)@IFRn^Fz)n^JR;@vvCLnn@Jp@ s1RF@E8b|Qp/m>@ICLn^4JynW8J/8@/a4W J@ /pJR&&#p#QW/y4bJp@ s1Q@ s@@@@@@@@@@@@@@@@g^*4,@EmJk/RLXdhsdgp)p8@@ 1/Qpk8@ 2RE^>@nW8Jp@ s/RX@n]8J@ @ s/Q>X@nW8Jp@@pI88J@ 2|Q7X@npJOk@ @@@@@@@@@@@@@@@@g>C@ s>QpO@ s>RJ@nIJQ@ma4W J@bJWXIWspds8g 4T|@n@ 2|X@n JOp@p8^JTh@ 4aR @nW8Jp F@I,vFuJ)nW J@@ 1LQpO@@@@@@@@@@@@@@@@@g* 2u@nW JR@@ s1R%@nW8Jnh@pa8]8JTk@@ 2|QR;@JT=J,z JnFvn>]JJ^nW8JksO#@#g@ R4J>^4nCLn^L*&T44)nW8Jph@ s4,WXI)Q@@@@@@@@@@@@@@@@g@2#pQ2 4 Qpp4,@IRT44nRn#1R @nW8JnX@p)4WhJO2C@ICLn^R)n JOp@ 2@En|RJXXbp&)pQpQ2 1/Qp#y|XQTT)22 2@@@@@@@@@@@@@@@@g^*%& 2|QpQ[@JnW^dv*nJ^F1n^JQRI@>]O^nn Jp@ pRR @nW JR@@ s1R%@n^ J] @1W Jh@ s1R/@FIJ*yJ@F b|R@n^JTh@ 2@@@@@@@@@@@@@@@@gCsRE^|X@pQR)Q%Xp&%pT2pT 2LX8@ 2  2 2OC 21 C)@2bnR^@nW JR @ 2=Q|@n^@JRh@ 1JR@n^Jh@@@@@@@@@@@@@@@@g;@2IWJ2J@JRn*L^bnFbR] L>n]8JR[@@ 2RE^|X@pR)Q%Xp&%ps8g 2@nW8J2 @ 2@F|RXX8%sW)p24R2)gsT s>R@n^@@@@@@@@@@@@@@@@gJQRC@Iz,,b,n^Jb%JnQndJT@@ s4,WX%&p2s&) s/RX@nW8JksO#@ @ 2@nW8J28@ pTIsI@FWJhRF@nW8Js@21W Jp@sI^J@bJ@@@@@@@@@@@@@@@@gI@n^ J] @2 W JC@JEJ*L^FbR] L>*an @ 2=Q|@npJRh@ s1RJ@nW8Jn @2hC)@JT44*LnFbR] L>*an^@J@@ 2=Q|@n@JF@n^JQ;@@@@@@@@@@@@@@@@gO/@IEFdv[J,nn^JQ[sO#J@I J,b L*bmIn]8JQ[sO#@@ 2|R@nIJQX@ 4aR J2s&)ps2s 2[I%&sp2s&) 2|QpO2;@In^4uInI JRC@zT44*@@@@@@@@@@@@@@@@g^FL)n@8Jaa@ spQ[@IvuJnFRmFb,*)nWhJO#@ @ 4 Qpsh@ 4RRF@n JO#@ @ s2QX@ s4,@F[JkpQ[@I,2J&FRmFb,*)nWhJO#@ @ 4 @@@@@@@@@@@@@@@@gvQpO @ s1R @nW J @n^JQ@ s4,@F J*|RWXT2pp|pv&)T2 27RJ@n]8J@bJX@npJ;@ @ spRT@nJ@JF^2bgppTd%2&%2@@@@@@@@@@@@@@@@gnvp p@ 28 24R2)gsT s1RJ@nW8J4@@sy4^JRh@ 2|RJ@npJ|@n^Jh@ 2Q@FJ*|Qp#y|X8gQ)Qds)pQ##pR8p%Qd s1Rg@nW J|@@@@@@@@@@@@@@@@gFu@n^JTX@4I4W J@bJWXLWspgQ)Qdp%) 4 Qpd @ 1@np@ s>RJ@nJ7^|@npJ;@ @ s1Rp@nW JR @ 1LQpOp@ 2b@n]8J@bpX@n@@@@@@@@@@@@@@@@g2WW J@ @ 4 Qpd @ s1RJ@nWJ1@ 1@@nahJF^@nI J>@nW8J1X@ 2a@FbdQpO@ 2#@n#J>@nW8JksOp@ 2#@n]8J@bpX@@@@@@@@@@@@@@@@gn% WQ##pR8p%Qdp4%pT2W 2|RX@nahJd@n^JQ@ 2|RX@n 8JFd@nW8J4@ 2*@F##/RLX@n4hJ@b@n4hJTsg@IR*nT4QnW@@@@@@@@@@@@@@@@ghJ%kJ@*dnR@IndJQ @ 2&@n]8J@bLX@nW J@ @ s1Qp@ 2|@ @ s1RX@n]8J@bX@nW JOs@ @ s1RL@nW8J48@4148J@@@@@@@@@@@@@@@@@gOz 2|Q7X@n^J@b@npJOk@ @ s1R@nW J@b &4s)pR#&b s1RL@n8JRp@ 2|Rp@ s1Q7X@FgbR@nWJ%kJ@*dnR@In8JT8@ 2|@@@@@@@@@@@@@@@@g bR&@n^@Jd@nhJ@bJ@nW8J4[g@Jd,v^d4*nn;[L*>nnW J@bp@n^@JkJ@IL>&Fdv4)n^J@bWXQ#Q 2yTm@n^JkJ@JJ^^bL^F[Fd,2nW JT;@@@@@@@@@@@@@@@@g#g@IL>&Fdv4)n^J@bWXE&4%s 2yTmET%2 2|,ghWdp7s s1Qp@ 2yTmET%2 pTRFQQ s1Qp@ 2yTmET%2 s2Qp@ 2yTm@@@@@@@@@@@@@@@@gET%2 2|R@n^J@b@nWJ%h@ s8@nW JT;@&uIn^JT@@ s1Qp@ 2yTmET%2 2R8@FOJ*|RWXT8%Qdp%&% &v%pQ))Q82 27RJ@n]@@@@@@@@@@@@@@@@g&28J@bJX@n^JQ@ 2|Q7X@npJOk@ @ syRJ@n^JRp@ 2|Rp@ s1R@nW8J1 @2C)@ Lz JLbnmL*&WFF*L^b)nI@Jkg@vd,nQn 8J@@@@@@@@@@@@@@@@gJh|XOu#QWp p;psX% 2s)QspQ2pQ##pR8p%Qd s/RX@nW JQ@ syR@nJ7^|% TQ)W4d%sp%4dR)pg#42 s>Q7XdhT4)T8%p pQ)@@@@@@@@@@@@@@@@gRWpg&%s) s1RJ@nW J@bJ@n^JQ@ 4aR @n^ J] @ 2yT@n@ 2RE^|X@nW8JuCg@;LnCLnnW8J/@ pTIbLI@n@8Ja #a@ 2)@n@@@@@@@@@@@@@@@@gR>W8J/[J@I J*LEJ*L^hb|RFXIR&&# R&&# s1Q@ s4,@F)#8@n^JR@@ pRF@n^Jp@ s1Q@ s4,@E/J*|RJX%T)s&)pT2)gs&)@@@@@@@@@@@@@@@@gE s1R/@nW J@b/@nahJd@n^JQ@ 2I@EpJk/RJX4%pT2Wp) 2|Q7X@npJOk@ @ s>QpO@ s>O#@ @ 4 Qpd @ spQ@@@@@@@@@@@@@@@@@g s1RJ@nW J@nWhJO@ s1R%@F daR @nW8Jp @ 2u@FRJ*4]XuQ#4Qsp24R2)gsp|2R2 2|Qp@ 1Ts@n 8JO @ 2T7@nW J]b@@@@@@@@@@@@@@@@g=;@I&R*n|&n;n^J8@ 2|R @n^Jp@ s8]E#Q) s2RXXC2R2 s2RWX2R2 s2R @nW JR;@>R*n Qn^J@ 2|RT@n^J@ 2=Q|@@@@@@@@@@@@@@@@@g nJ|@npJh@ s1R]8W#Q2sp#&p&pT&gpus&) 2|R@n^JX@ spQpap@ 2|QpuT,@>Fn^kb7R/@nhJ@b/@nW8Ju @ 27R@nW8JuX@@@@@@@@@@@@@@@@gg@@ua4W J @ 1R@nI J@ pTIu,ITRQTp%)p&p24R2)gs2u18IpJ8@ 2|8@ 1T|@n^J@@ 2|8@ 4 Qpd @ s1RJ@nWJ]b;@I2zn@@@@@@@@@@@@@@@@gOv^F4zmJL*anW JTh@ 1/Qp@ 2/@nW J@bJ@FpOh@ 21@ndJd@@ pTIvTI@n^@J@n^Jd@@vI8IpJh@ s>QpO @ 4h@ 2@@@@@@@@@@@@@@@@g7>s@F4OCyh@ syQpO @ 1JRX@nIpJh@ 1R@nW8Jvh@v18IpJ8@ 2|R@n^JRX@ s1R%@nW J@ s1RT@nW JX@ s1R@nW J8@ @@@@@@@@@@@@@@@@gF^s1,@nW Jp@ s1R @n^ J2J@bn;^ub|h@ 1R]@nJ@b]@npJ|@n8Jh@ pvRX@n JO @ s2RX@nW8Jup@uy4@J@bJ@nW8Jv@@@@@@@@@@@@@@@@@g=@v8dJd@@ pTIv|I@n^@J@n^Jd@@ 24@C|J*4]]s2sp,dpQ%TpQp&)p)Q#p&)p%s 2yTX8 Q%Tp&%u)s 1@nW8JksO#@ @ s4|R&@@@@@@@@@@@@@@@@g FsXp%s 288)Q# %s pTIbLId7TpR&&#Q%p&g)Q%T2 pTIIRQTpR)Q%Xpg&%s 2y8%s )Q# 2z@pIR&sXp)Q# pTIsdILR&@@@@@@@@@@@@@@@@gkmsXpR&&#Q%74^JRCJ@J@FvFzn%J*L[anpJ2C@IJ4n*m^InJ2I@>vEJ*L^zO7|@n^ J @7I4pJ@bJWXR&%u)sp,dps&p)Q# pRR @nW J @@@@@@@@@@@@@@@@@g@ n^JQ@ 2|QpO @ s1R%@nW8J7@a#)@JJLEJ*y^@FFCLnCLnnF;@IXFEJ*LCLnnW JTn|@JFT44,,v^T44)nWhJOv=@Ih^FRJ&JL*[npJRC)@@@@@@@@@@@@@@@@@g%7J&F#z*g^CLnEJ*Ln>@I nFTv[FEJ*LnW Jn;@bI@I8vFTv[FT44*L)n^ Ja@@7y4pT#@T#@@@T#@8C@T#@T J@L4n*m^*J&@^^FvFznF[Lbn@@@@@@@@@@@@@@@@gWp@&ay^d@E7bnXdX>XzX|X2X>XzX>X>X>XzXzXzXzXz@J*4]7XQ%WpQpQ%Tp,dp&) pTQ@ 1RF@n8@ 1RF^|@n8@@@@@@@@@@@@@@@@g%@ pRR @nW JTh@ 1R@n^JTh@ 2|QpQX@ s1RJ@n^ J @%)#)@ ]Lv&[L*nFvJb&F[n4n,n^Qn^JT[sO#J@IT2vdn^F1n^JT[sOsJ@zdnL*@@@@@@@@@@@@@@@@gO4an4hJT[sOJ@J*[*Jz Ln^[L#nW JTX@ s>R@nahJd@n#J@ 2RE^>@n@8JaOa@ s1R@nW JT[sO @ spR#^>@n]8JT[sO@ s4@@@@@@@@@@@@@@@@g=yTm@FJ4RXWspT2W%Qs&)p#T2 s8] T2Wp%p,d spQ@ 2=Qz@n@ 2|Qp@ 2=Q>@n^JRX@ 2|Qp@ 2=Rd@n^JR @ 2|Q@@@@@@@@@@@@@@@@g1J@ 4 Qpd @ s1R@n^ J1@WJ#)@ Jb*2bnCLn]b^[L4nsJ,&QnW J@bu@nF@ 4 Qpd @ s1RJ@nW J@nWhJO@ s1Rh@n^ JW@8X^JQ@@@@@@@@@@@@@@@@g/s@J*,n]OFJvmT4v^]JLyn^Jh@ s/Qp8%>@JsL*&b,duOFFOJ/EJ/FWX@n4hJ@ @ 4aRX@nW8J8h@ 2|RX@nahJ@n^J@ 2@@@@@@@@@@@@@@@@g#FR8@n@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@W a@@I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F I@d@@@@@@  IJ@IQ@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g]dI,,E,FO7dQO&gTE&@C@@@@@O2bR&@C@@@@@O2s&@F@@@@@O7Q&@CC@@@@@O%Q&@CF@@@@@OQ7&@C@@@@@O#R&@C@@@@@O#T&@E@@@@@OR7&@CE@@@@@@@@@@@@@@@@@@@@g4@O2b&@@@@@@O#Q&@C@@@@@@OQTd&@@@@@@@OQR&@@@@@@ORQ&@E@@@@@OTu&@@@@@@Od4#&@F@@@@@Og2&@EC@@@@@OQT&@@@@@@O24&@E@@@@@@@@@@@@@@@@@@@@@g@O2b)&@@@@@@OgQ&@E@@@@@Q&)W@CTQsQF@E;F&@@@@@@@@&@@C@&@@@@@@@@gQWR@E@gg)&OQ7%QdO#TQy)&O%TO#%&@@F@@@@@@@@@@@@@@@@g7@@@@@O#Tg&@@@@@@@O2sT&@@@@@@OTg2&@C@@@@@OTgQ&@@@@@@WTJ&4)CF[2Rs@@@@[2b2d&gO2b2@@@@@OW#%Tb@@@@@@@[%T#TO@@@@@@@@@@@@@@@@gg)h4Ek[Q))s&@E@@@@@@[Xd2bE J@b@@@@@@EWTIJIC[R)4d&gOR)4OX#sW#%&)[))#%bW))&)7#[7R%TQ[#&Qs#[#&QsQW4%TOR)ds7s#QR#[%@@@@@@@@@@@@@@@@g*&ss#%O)2[sQW&%&@@@@@@@[2s&b[TR#7dg[%ss2sW&R4OR22JCC[%TR4[XQ)2vTsX[&s[%v)T[%v)T[%T#[%)#[%)#WsX)FCWR#Q%b[g)&@@@@@@@@@@@@@@@@g&;TR[@@@WRWgd[Q#R4s2&@C[&sCb@@@@@C[dQ)WQT[d%42E&@CO&)WO2sQ hR[%WR7O2bQO%&gOd%O&d@FOdv h hEs&gvX hCR)svOR@@@@@@@@@@@@@@@@g;>))O))&@EO2s7[7RQ7)[7sgO#T72W%OhCQW7R[7sdgOQTTW&sO2bW[2dQ#%WOhCO)2XFOhCCO#)O#2XO2b%OhC[#Q7)WOQ7JCO%&TO7&[7@@@@@@@@@@@@@@@@g=&g&gO#TROhFO&[&g&gWWXsO2sR&)[d2Qu7[d)sQTOsv&Od)W[%&Q)WO7QROs)[QT)d2b ##[Tgsdg 22W2Quy[2QuysOgy[%7XQ)[%2Q%W&4%sOdXQ@@@@@@@@@@@@@@@@gO)Oh[XsQR#LOR)7[X72Qu[R)4sR[XQu#g[W)&4g[gQ)%[g)%2[2Q%7[2Q%72WXQug[g7g2u[gd%WO24R[XQu)gOhOhIOhE@Q[g%T[#Q2s#%[XQu@@@@@@@@@@@@@@@@gO&%[Tg%sg7gOhE[&s2s[&#QWF[%&&dQ[R)4sR[2W%Rs[%ss%2[XQudWT#)%[W%ROT#)OhE[W%OhEC[2s&X[T#)&4sOhE[2s&XO7%7&4s@@@@@@@@@@@@@@@@gC^OX%X&4sQ&4sOhEE[&4s2y[)2Q%7[)2%7O#8JOhEFFF[)sdg)OQ%[Q%sgOhE[Q%sgOhF@OhEOhEI[Q%sgCWXCuOhFWW%[&%2%[#db#O%O@@@@@@@@@@@@@@@@gCp7&4s[d%42&4s[&%uCv[RT#%b&4sOhFOhFC7gOhFWd%42%%OhFEWTIIOhFF&7gOhFOQROs%[W%XQ)W2Qu7W2Q%7[2Q%7#OhFO)8WsQW@@@@@@@@@@@@@@@@g2s[Xd2b[RdR#%OhFI[W%)XOh@[%s2[W%ROhW&ddQ[W%&XOhOhCOhW2s&X[Q)W2QuOhEOhFW2XsOh[)2%7#Oh[2&bOhIOh@Oh[4%s@@@@@@@@@@@@@@@@g^|QTOhEOhOhCOhIOh[&TT#Oh[TdCC[R#Q%b2OhFRsvOhI@OhT2vg)s8[TWu[g)#W[s22W%[%gsv2[TWu2[TW2sOhIOhI[TW4sOhIC[%)@@@@@@@@@@@@@@@@gJa#C[d7g&WOhIOhIEOhIFX)[W%XQWWs)OhIOhIOhIIg#42h@@Ws2TW[)s2X[TWus[s&gER&Ws%R[%%Qs[W%XQ[Tdgs[Tdgs[TdgsC#%&O&usOR@@@@@@@@@@@@@@@@g)CQh@[)2%7Q[)sQW2s[)27#Qh@[2%7Q[sQW2s[27#dQX)E@@@&@CE@@@@@@g@@@&@EE@@@@@@@@@@@@@@@X@@@7@@@E1Q@@@[%&gd&gWTJWT@@@@@@@@@@@@@@@@gFXC[%TRsb@@@@@@@@&@@@@@@@b@@@@@@@&@F@@@@@@[s%sXb@CFC@&@@@@@@@b@@FIJIIFEJ@&@@@@@@@J[XQ#TROCITJCId&&@@@O#2R@@@@@@@@@@@@@@@@g=v[27#d F@@@@&@F@@@@@@@&@[sQW#&@@@@@@@R@@@R@C@@@[%W#d&@C#&vIR@[g&gQT)&@F@@@@@[Qg&gT[TWusWdQ2bR@@@[d#&%@@@@@@@@@@@@@@@@g/2&@@@@[%W7#&@@@[Q#Rs2&@#Q2s[)2QuQ7)W[%TWdW42TdR[&sR##J@[7sgJ@C[T&sQTJ@J@E 7J@F 8J@[Tdgs y@@ 7d@@@@@@@@@@@@@@@@gIu@[%)#WsdgQ@@WQT)@EWQT)@F[&u%T@ 8d@@ yd@W2sTs@@[)s2XC@E[%W2W%&%2@F[@2ys@CWgQ)s@CEWgQ)s@@@@@@@@@@@@@@@@@gvRCF[T&sd@C[T&7sd@@@@@C@@E@F@@E@@E@E@EC@E[#sdg@EE@E[T&7s@F@@FO)W@F7s@FC[QWssg@F@FE@FF@@@@@@@@@@@@@@@@@FW@QT)@[@2y@W@sQW@CW@%T@[2%2#v@E[)4%s&g@F[dQ7g&2@@2EETWdET[&#QW&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gQu2222222222222222222222222222p)W2Q%ppppppppppppppppp,%JyFFFFFF@p@gXpFFFFEd)W@Cpppppppppppppppp,,,,,,,,,,,,,,,,,,,,,,,,,,,,,a@% @@@@@@@@@@@@@@@@g4uLb^FFRLnFFFFF*mL4,F8&a@m8g@u8ga@=8d@ QaL a @ a Wa@ a [aO@ ]aO a@Q2X 12@IQ2 I12@JQ2 J12[@ @@@@@@@@@@@@@@@@g Q2[  12@LQ2 L==L=a=>^n>O@L=L=a LpL=p@ @ p|7@ L2XgE1 C@d1@&R@%1@&@&1@&@g1@&^@h1@&b@)Tvp^h@@@@@@@@@@@@@@@@@g4v*u&p^n@,p^4@mv[ ^;^@ba@@@@Wz[XO @ X[#@  XO%@ k X=@ LvpOh@ LvpR@uTvp@m >pm,;a @s7b^E8mFsJk s # )g #J)aRkg) 1,;1OJ|E@@@@@@@@@@@@@@@@gh))&)yum8g)u@dkL;8I2*=k|7z Quhyd|EO2^h)&&g &IgzCu7,@s7E8)Jh*,sJ*)aFbdk|,[ d>,m |@s7bC*@hysXLsXI,48LkXQF[^p *@@@@@@@@@@@@@@@@@g h*IQ*8 L;**XRQy&[p*@%IsRy8*ypgLJ@ 221 F@ z27 k 8k ^@ QR27 ,m8F ^@ Q*27 ,m8*,C2@*,C)XI 4C*y1I h),@@@@@@@@@@@@@@@@g/pR1 *,&pO @n,,R1 &[@|p@ J27 4,&pO gIn@ L[d,m8@shO8EhhhWJ*/ k/O ds&4R|@b*44sT&]&=F@%Q*8Rs2&XLs4>@a &]@@@@@@@@@@@@@@@@gWnR|@b*44sT&]J4p@48T8EF48R|@b*44sT&]uL>@abF] h @@|m8 [ h@@&7 O XQgW d/@*m Lu /kgE^@ R[@= @ b27 g@@@@@@@@@@@@@@@@gy^Xa dz I2s>RL*bF=J*yga &z IRs>F,d>@QgI/Q ga k[@&J|)&d@gXaI/Q &Ea @z I**>n|>&7 /@XI&Ea 2/@I2n|>^@zL*a&7 /@@@@@@@@@@@@@@@@@g)#XI&F ga 4z Is>F,dy& & g]a 8/@,2^Xyg^a |z JTbLn^**z[*)&7 @X&I &ba 4z Is>F,dyg InX p@ F[8p@ab8Oa &@@@@@@@@@@@@@@@@gT7E@X%>Cb@bX@hh]h,s/a&kI8 R[gFC@FC8hnhT,s/a&kIO mp#W@EJb#@=hv*@g L;8I2*8[4*k&]n#*@dkL;8I2*nz27 gXa@@@@@@@@@@@@@@@@g nz Ib42^F=J*y&J gdO yg%O y& gz Ib42^F=J*ygW nz z42^ %*sz&8& *m,@b T&[yup@a ,^^kOhR[ F ,yhhkp@@@@@@@@@@@@@@@@gQJ*2n1gg@>dz],@)XLkXJIQ*8J1yJ8F]bz#*@d2Xz*8[4&J&=F@ Fzzk*@&RXT*yzT28*T&Jzup@ay;F^n;C*@%2sX4k8 Qhk&z;C*@%2sX4k8 Qhk&]b@@@@@@@@@@@@@@@@gd,s *@d2X4k8*T&X^@ F]vs *@d2X4k8*T&^2@ F]z*m,@b T&^s *@d2X4k8*T&X2@ F^ &*@ FX^@ F^4;[*@d*T8RyQFzs *@d2X4k8*T&TC d2z IL&@@@@@@@@@@@@@@@@g > J>J%I&&LTz I#L,>&^F4uJ&@I&7 8z Izvdn^Fn^[L,n@;z&8@vn gd@8[4X@hhRgFC@Ig&aInX p@ F]h;h@upR[4X@1;p>aIn@ F]b;h@@@@@@@@@@@@@@@@g@y@F=F@ FzgI1 7@zR[gFC@gz@ F]&=F@ L kOhR[ &|a>@ F]b;h@y@F=F@ F^2@ Fb&y1 g, &aI2X p@ &]h;h@upp@@@@@@@@@@@@@@@@@gW CFgJsz&8@// gXaz@ F^C a/Q g, &TaInX@;@%hRgFC@Igz@ F]|@/*]&8@shn &baIn@ Fz|@@hhn gW>@ spaI@@@@@@@@@@@@@@@@g/n@ F>@ R2|aOFz ICLn^FRL)g)O/@*vdn&WaO/@*vdngQ@gO @I#Ln&@a&baO [@b[ OC#X4FC4 IR[ FJT)guOO@XIgXaOz Iz[ CL*@@@@@@@@@@@@@@@@g]Cbn>FR*)&7OXXOR@%ITz@8h)Q*=*2baO/@*vdngaOz I=Lvd>vdngRO^z Iz J,nvdn&baO^z Iz J,nvdngam@^^41&7OXz IR FJT)gaO@@@@@@@@@@@@@@@@gI z Jz J,nvdn^FR*)&baObz IvFRLnFygaOdz I^RLnF>FR*)&7Oz IL*n>^[ O&)zzhO k/Oad#**8hznhOas )% mFbnmp1hJk/g &p#R#h@@@@@@@@@@@@@@@@@gCshznhOas )% mFbn>pzhO k/Oad#**shzhO k/Oad#**mp1hJk/g &p#;kI^=s*@%k4s8IsRy&[Ep@aa&[ p@aa@baOdz I^RLnF>FR@@@@@@@@@@@@@@@@gLd*)gaObz IvFRLnFy&7Oz IL*n>^[ O2C%87nhW#Rk g ) &mp1hJk/g &p#Rhh,hW #R/ mFbn#XkW@gmLmp=W@E/ *@%J44sT8Q,21F@@@@@@@@@@@@@@@@gh[4C*y1= 4C8h>haO)% 2m kJ)aFs%&mp>nh[F#%gaFsJka )&/R8 pmFsJk s # )g #J)aRkg)Jhh8ha#Rk g ) gad#**sh7nhW#Rk g ) &mp|W@@@@@@@@@@@@@@@@g>;@E JJ=p@asR*&^n;C*@%2sX4k8 Qhk&z;C*@%2sX4k8 Qhk&[2|[*@dL2y8Ih2&^d1E,@b[J,FXz@ Fz u@zb*^|nXshI Jv@,>n|8shIQIu@I&CJv@@@@@@@@@@@@@@@@g nv&XshI^)u@Id>#Ln&4J8shI2v@b[ sCXIRQu@4zm L2 s pI R8@X sOIu@ICLn^FRLhsI u@zb*^|nXshI^au@IT>n|>FR*hshI Jv@,>n||@@@@@@@@@@@@@@@@gJ=@8/ 1hp2Q%p7  I]u@Iz[ CL*bn>FR*hsXhI au@LkLv4J>FFFFFFFFFFFFFFFFFFFFFF#Ln&Cs@IL|ECpC @F1 khOXQ)p%T7p2QuF1LF@@@@@@@@@@@@@@@@gh %&p&ddQp#QWFnLC]JR)4psQR#QhIau@IFJ|nXshI 1u@I,,v4db4J|I J4 khOXQ)p%T7p2QuFX/ d pE&4%sFnLC]JR)4@@@@@@@@@@@@@@@@gWpsQR#Fn bhI%7spXQ)aQhIau@IFJ|nXshI^)u@Id>#Ln&4J8s pIQu@IL*n>^[ s8@aOIaau@ zn^*n>^4u[ CL*^T,sCXIa*8@@@@@@@@@@@@@@@@@gmd]s pIa28@Xs pIQu@IL*n>^[ L@8/ 1hp2Q%p7FyLOh[Wsp%7sp&pXQ)p%#p&ddQFX[L W@CT#)FnLW@kFEJQ pER#Q%bb@OIbIu@@@@@@@@@@@@@@@@g @I&v4u[ s pIa^@2d]CL,R IyLLh[Wsp%7sp&)pXQ)p%#pR#%bFX[L W@CT#)FnLW@kFn bhI%7spXQ)bXOIbau@I^vCLv[ s pI@@@@@@@@@@@@@@@@gpbQu@zd]v&@yyLOh[Wsp%7sp&pXQ)p%#p&ddQFnLIhQ&4%sps2sp%&p2sb1hIRI^@*TL,sOIbau@I^vCLv[ s pIaIu@JJvdn^Fn^,vF@@@@@@@@@@@@@@@@gELRnW@yyLOh[Wsp%7sp&pXQ)p%#p&ddQFyLQhL2s&p&)pXQ)FnLIhQ&4%sps2sp%&p2s#OIaau@ zn^*n>^4u[ CL*^T,sOIbau@I^@@@@@@@@@@@@@@@@g=vCLv[ s pIaIu@JJvdn^Fn^,vFRnJsE |hg#42pp%Tp#2sFn =h #Q2sp#%p&4sFEJpvTsXF= pRppT&4R#p#2pFnLW@k@@@@@@@@@@@@@@@@gkbFE pRppT&4R#p#2p#hI#u@JLv&>&^sJ,&FOJhshIQv@&2&[@sWXI#au@IEFRLnF8shI#)u@J%FRLnF>[L#^sJ, sIIQQu@I#L,>&^F4uJ&@@@@@@@@@@@@@@@@g^@s#pI#z@sI IQ)u@IJ,n]JL^@L @yJJ hI%s)Q#pF^LaTXFFLJ hI%s)Q#pFyJ@hQ2s&p&pXQ)pp&bF[EJLh%Tp#Tp#QWFnL @@@@@@@@@@@@@@@@gdEW@kFnLbh)s4)%ps&pdQ%pg)&WdXXhIau@J|^&CJv,*&[Xs pIdQu@J]Jn^%LnFvb Ln=L28shIv@JQFCJvdvbTn,^Rn@ shIdau@ICLnF,d>@@@@@@@@@@@@@@@@@g1sWhIQv@&2&[@s pId*8@XshIQv@&2&[%@z]L&h Qp%psdgpFEJpvTsXF[v pRppT&4R#p#2pFaLh2W%pRsFX]@@sC8I#au@IE@@@@@@@@@@@@@@@@gs1FRLnF8s pIdz8@Xh@yEJQ pER#Q%bFX/L&h Qp%psdgpFyLOh[Wsp%7sp&pXQ)p%#p&ddQFX[IdhJQ)p)s4)%FnL)W@kFEJQ pER#Q%b@@@@@@@@@@@@@@@@gg%hI%Qu@ICLnF,d>@XsIIQ)u@IJ,n]JL^@s[I%^@Ib[ X&bTs8I%Qu@ICLnF,d>@Xs#pIdJ#@psI IQ)u@IJ,n]JL^@Lg@8/Ldh Qp%psdgpFn@@@@@@@@@@@@@@@@g4LhW@kF4JhIdpQ)WpQT)F[R7CW@@FXa@@shI%bv@bs*hsWhIv@JQFCJvdvbTn,^Rn@ s pI%*8@Xhs pIdQu@J]Jn^%LnFvb Ln=L2|m@8#@@s@@@@@@@@@@@@@@@@@gOpIF88XJ8@@shI8XJ8@s pIdQu@J]Jn^%LnFvb Ln=L2|nJ[E |hg#42pp%Tp#2sFnLbh)s4)%ps&pdQ%pg)&WFyL/hJ&%2sp2Q%FyLp@@@@@@@@@@@@@@@@@@g1s IIu@IL& J>J%sIIQ)u@IJ,n]JL^@sI @bhIdpQ)WpQT)FnLbh)s4)%ps&pdQ%pg)&W&XhIau@J|^&CJv,*&[Xs pIdQu@J]Jn^%LnFvb Ln@@@@@@@@@@@@@@@@gJ=L28sOI%yu@IR4n^FRLhsOI&@@FyL2W@C7F4JhIdpQ)WpQT)F]7CW@@FnLbh)s4)%ps&pdQ%pg)&W&XhIau@J|^&CJv,*&[Xs pI@@@@@@@@@@@@@@@@g=)u@I,^[L*nv&XshIQQu@I#L,>&^F4uJ&@sO@avh#&Qsp2g)&Wp#%bFLJJhL%g4spv&)TpFEL4hId%42p&%F]L@hTpg%s&)XhIau@J|^&@@@@@@@@@@@@@@@@gu)CJv,*&[Xs pI)u@I,^[L*nv&XsOI&p@FyL7@@s pIdQu@J]Jn^%LnFvb Ln=L2|8JsE |hg#42pp%Tp#2sFn =h #Q2sp#%p&4sFyLv@@@@@@@@@@@@@@@@@gg8@shIJ*v@b4v%shIQIu@I&CJvnv&XshIQ)u@IJ,n]JL^@s8IQ1u@IJ,n]JL^@sCXI2v@gJmLps pIgJ8@Xhs pIgR8@X4y@yEJhXQ)Qs)2sF[v@@@@@@@@@@@@@@@@g8 LpEgp7gF; W@C&%ghIgv@*nn|8shI&au@IL#Ln&4*hshIyu@I2[ JJ^m [JXsOI&8@FEIp&4)F]L[hQ&4sg4sp#Tp2yFXL]@@@@@@@@@@@@@@@@g8hT)p2Q%p7p#dsp#TFEL|TXFyJ@hQ2s&p&pXQ)pp&bFEJQ pER#Q%bF[EL;pEp7gFnL=W@kFEL;pEp7gFXQ@@shIgv@*nn|8s@@@@@@@@@@@@@@@@ghIg1^@,#Ln&T=@yyJ@hQ2s&p&pXQ)pp&bFEL;pEp7gF=Lp%%Fn @W@kF=  pFTpIIFn W@kCFyI2@@sOJ88hX@FX]@@s p@@@@@@@@@@@@@@@@gkIhR8@X]@@8]@@s pIhb8@X%@=E@@sX IJ#@shIh28@^,hsIgv@*nn|8sX I#z@@yyJ@hQ2s&p&pXQ)pp&bFEL;pEp7gF[L8@@@@@@@@@@@@@@@@g,FyJ@hQ2s&p&pXQ)pp&bFnLbh)s4)%ps&pdQ%pg)&WFX@E I/@@sI)^@vR*nF8sh@%I pF2Q%p7F=@8)Qu@I&RLnF>[L#Xs pI)8@Xs@@@@@@@@@@@@@@@@g[hILIu@I2,*&sJ,&[ shI2v@b[ spIhyu@I*zn^*n>^[ @=L TXFC)hC@F^ TXFXgJO pEsX)FE@8)1^@JFJzz*&F ^J%sC@@@@@@@@@@@@@@@@g;@F[7CW@@F[ OhJXQ)pdQ2bFX[ hIRdpR#Q%bFn QW@kFEJQ pER#Q%b*hI2v@b[ sT @%I pF2Q%p7F4  pF2Qup7FX[IdhJ@@@@@@@@@@@@@@@@g#kQ)p)s4)%Fn h Wsp%7spXQ)FX/@8)I^@vRLnF8spIhyu@I*zn^*n>^[ R I/@E@yyLLh[Wsp%7sp&)pXQ)p%#pR#%bFX[JQ pER#Q%bFn R@@@@@@@@@@@@@@@@g>EhQWsp%7sp&)pXQ)Fn W@kaa 8@FX@@sOI*au@JCLk[JL[OJnFRLnsOIhyu@I*zn^*n>^[ spIaau@ zn^*n>^4u[ CL*^T, I/@E@@@@@@@@@@@@@@@@g1F@yEIah%Tp#TpXQ)F] &pXQ)F[ELFh %&p&ddQp#QWFn hWsp%7sp&pXQ)p%#pR#%bFyLOh[Wsp%7sp&pXQ)p%#p&ddQFX[ W@@@@@@@@@@@@@@@@g* pE&ddQFn hWsp%7sp&pXQ)p%#pR#%bFX]@@shI 1u@I,,v4db4J8s pI*28@X X I/@@shI#)u@J%FRLnF>[L#^sJ, sWhI#au@IEFRLnF@@@@@@@@@@@@@@@@g b8s pIkJ8@Xs pIkR8@X@yEIah%Tp#TpXQ)Fn [W@kCkOI*)u@ Rzn^*n>^CLv[ CL*^T,sCXIRI^@*TL,spIku@Jzn^*n>^CLv[ @@@@@@@@@@@@@@@@gv#shIz8@4*m[@z] &pXQ)Fn XhWsp%7sp&pXQ)ay 8@F[ JO pEsX)Fy Th%sQ#yp2Q%2Fy h Wsp%7spXQ)FnLOh[Wsp@@@@@@@@@@@@@@@@gX%7sp&pXQ)p%#p&ddQFX@EJ/@@shIk)u@I J>FR*hsI)^@vR*nF8sh@%I pF2Q%p7F=@8)Qu@I&RLnF>[L#Xs pIk28@Xs pIkz8@X^@=L@@@@@@@@@@@@@@@@g,[ TXFC)hC@F^ TXFXgJO pEsX)FE@8)1^@JFJzz*&F ^J%sI,^@I>v[ F,d>@sC@F^7CW@@F[Lk pLXQ)CpdQ2bF[W@@@@@@@@@@@@@@@@gy; ]hQ)Wp2QuF]L7CW@@F4 pO2s&pXQ)psdgpF]@8)1^@JFJzz*&F ^J% @zd@8)I^@vRLnF8s I)^@vR*nF8spIka^@IFv[ LQ I/@@@@@@@@@@@@@@@@@gbR@sh@Fy Th%sQ#yp2Q%2Fy  p2s&pXQ)FnLQhL2s&p&)pXQ)ba 8@F[ JO pEsX)Fy Th%sQ#yp2Q%2F[ OhJXQ)pdQ2@@@@@@@@@@@@@@@@gbFX[JQ pER#Q%bFn aW@kFE bh)p2Q%p7p#dsF=I* pFTpIFn #W@kFE hIRdpR#Q%bFn aW@k,XhIRI^@*TL,a@yy  p2@@@@@@@@@@@@@@@@g[Os&pXQ)FnLTh 2s&p&pXQ) 8@F] dh2s&pp&bpsdgpFX]@@shIQau@I2,*&sJ,&4J=%@yELh)p2Q%p7F; W@C&%F=L]hT)p2Q%p@@@@@@@@@@@@@@@@gJa7p#dsp#TFn &W@kFELh2W%pRsF]JLh%Tp#Tp#QWFnJ@hQ2s&p&pXQ)pp&b,phI#au@IEFRLnF8sWXI#u@JLv&>&^sJ,&FOJ@@@@@@@@@@@@@@@@ga hs^pI#)u@J%FRLnF>[L#^sJ, sTIau@IFJ|nXs pI,z8@XsE8I#u@JLv&>&^sJ,&FOJhsCXI2v@gJmLpspIu@LnvCLv[ CJv4FFFFFFFFFFF@@@@@@@@@@@@@@@@gb&FF[ELvvshI,au@JFvCJv4F,d>@sOIbau@I^vCLv[ spIu@JvCLv[ CJv4g@yEJQ pER#Q%bFyLTh%2s&p&pXQ)ppppppppppppppppppp@@@@@@@@@@@@@@@@g|##p#Fn %W@kCFX@pJ/@@shI^@J4[L*nCLnLv&^L*&EJn^%LhshI Q^@2b*^@ysCXI,Qu@IuFRLnF>[L#XsO@%hh4%spQT)FEIdhJQ)p)s4@@@@@@@@@@@@@@@@ggL)%FyLTh 2s&p&pXQ)FX]@@shI#au@IEFRLnF8sXhI au@;Lv4J8s pImJ8@XXsO@%hh4%spQT)mOIhyu@I*zn^*n>^[ sT8I2v@b[ shI2@@@@@@@@@@@@@@@@guv@b[ sCXILau@IR EJn^%Lhs pImR8@XsRk@h @@Ek@zmXE@@@Fn kW@kFn ,W@kmhCXIm1u@I2bnb,nhsOIka^@IFv[ s pImz8@@@@@@@@@@@@@@@@@g4JX=)@z4 phTp CCFE 1hJQ##pR#Q%b2nhIp8X )@IR,*&b22ms]InR8@Xm/@yy@8mu@IFdk^J%snk@hT4p@s pInb8@Eu@;  &pXQ)FX]@@@@@@@@@@@@@@@@g)^@@s) IdJ#@psCXILau@IR EJn^%Lhs pIm*8@Xpsn2k@E,@8]@@shI#au@IEFRLnF8spI^@J4[L*nCLnLv&^L*&EJn^%Lm4@=vX@Fy@8Iu@IRm Lu[L@@@@@@@@@@@@@@@@gu,,sOJ88n8@Fn uW@kIFX@/ I/@@shI#au@IEFRLnF8sWXIQv@&2&[@shI#)u@J%FRLnF>[L#^sJ, sOI/u@JR#J;^4nnCLk[JLXsCh@F]J@@@@@@@@@@@@@@@@gu,hXQ)Qs)2sF] yh g)&Tp#QWFy zhIs2sp2W%F] ;hO%g4spv&)Tp2W%Fy |hOTWsp&%up2Q%FE =hRTWs2p2Q%%Tp%sF]J@@@@@@@@@@@@@@@@g OhXQ)Qs)2sFE &pXQ)FX[JRhFg)&TFn >W@kF] yh g)&Tp#QWFy |hOTWsp&%up2Q%/pCh@FX[ yh g)&Tp#QWFn @@@@@@@@@@@@@@@@ghIW@kCF[vL@hTpg%s/8WXIyu@I2[ JJ^m [JXs^pI Jv@,>n|8s^pIpu@Iz#J;^F&R*&nXshIyu@I2[ JJ^m [JXshI2v@b[ sCXILIu@I2,*@@@@@@@@@@@@@@@@gL]&sJ,&[ s pIpJ8@XspI%yu@IR4n^FRLn@yJJ hI%s)Q#pFLhI%s)Q#pCFE &pXQ)FX[L|TXFX/Lh)p2Q%p7Fy zhIs2s@@@@@@@@@@@@@@@@gOyp2W%F]ChOd%42p7g&%p#QWFy 8hRTWsp&%up%sQ#Fy |hOTWsp&%up2Q%F[C@@sXhIpu@I|#Ln&F||4n4J8s pIpb8@XpsIpIQ)u@IJ,n]@@@@@@@@@@@@@@@@gWzJL^@sIQ)u@IJ,n]JL^@@yEJ hI%s)Q#pphWXIyu@I2[ JJ^m [JXsWXI Jv@,>n|8shIyu@I2[ JJ^m [JXsIIpQu@IJ,n]JL^@XsI IQ)u@IJ,@@@@@@@@@@@@@@@@gsn]JL^@shI2v@b[ sCXILIu@I2,*&sJ,&[ s pIp28@@spI%yu@IR4n^FRLnF@yy@8Iu@IRm Lu[L,sOJ88p8@FnL/hJ&%2sp2Q%/ 8@F[@@@@@@@@@@@@@@@@gC@@shI/)u@JR#J;^FRL,**&nXshIpu@Iz#J;^F&R*&nXsI IQ)u@IJ,n]JL^@shI1u@Jbzn^*n>^CLv[ J%shI1I^@Izzn^vuE[ spI/u@J@@@@@@@@@@@@@@@@gbnR#J;^4nnCLk[JL]z I/@FJ@yy XhWsp%7sp&pXQ)FX[ W@ |dQ%2pR#Q%bFn W@kFnJW@k1XCXIg1^@,#Ln&s pI1b8@XXspI/Qu@I@@@@@@@@@@@@@@@@g8n^FJ|nL@8[ pg#42FX/Lh)p2Q%p7FX]@@spI/Qu@In^FJ|m| I/@FJ1yO pJs2spTWsFn |hOTWsp&%up2Q%FXgh)WXsp2Xs@@@@@@@@@@@@@@@@g )pF[I&h XQ)ppdQ2bF]QhQTWsp&%upsdgpFd =hRTWs2p2Q%%Tp%sFJJ hI%s)Q#pFaRhs&gpEpRs2p&%FnpkF[@@@@@@@@@@@@@@@@gFFIWTXFLJ hI%s)Q#pFJ pLs%pRp7QsFyJhQT&4R#p7Tpd4#sFQhQTWsp&%upsdgpFLJ hI%s)Q#pFd@hOTWs2p42@@@@@@@@@@@@@@@@gJ&Tp%sFnpk1y 8@Fy@81I^@Izzn^vuE[ sTIau@IFJ|nXspI1y^@In^#J;XsWhI2au@IkL*n^F48sT I1y^@In^#J;XspI1y^@I@@@@@@@@@@@@@@@@g^an^#J;[# I/@@shI2)u@J*zn^*n>^4u[ J%shI1I^@Izzn^vuE[ sXX@FLJ hI%s)Q#pFy |hOTWsp&%up2Q%FJJ hI%s)Q#@@@@@@@@@@@@@@@@gLpFn #h%sp2Q%I 8@FLhQTR#p7pdg8psdgpFEJ hI%s)Q#pFX@@s) IJ#@s8I2yu@JJbT^v>dFF,d>@sX@IJ@8sI Isu@JJb@@@@@@@@@@@@@@@@gnT^v>dFF,d>@XshI21u@JJbT^v>dFF,d>@sh@F]LyTXFXgJhI%s)Q#pF[@ I8FXhQTR#p7pdg8psdgpCFLXhQTR#p7pdg8ps@@@@@@@@@@@@@@@@gdgpCFEJhI%s)Q#pFXgWhRTR#p7pdg8psdgpFXhRTR#p7pdg8psdgpCFnJhQT&4R#p7Tpd4#sFX@FJ1yIp p#%p%1&4spQ%Tp)@@@@@@@@@@@@@@@@gus4)%FnJhJ&4%sps2s)XhI au@;Lv4J8s pIdQu@J]Jn^%LnFvb Ln=L28sOI^@J4[L*nCLnLv&^L*&EJn^%Lhs pIdQu@J]Jn^%LnFvb Ln=L2|b )h@@@@@@@@@@@@@@@@g*zE@@@Fb@@s Iau@IL&FR*nF=spI)u@Id&EJn^%LnJ% T I/@@shIk)u@I J>FR*hssX@F= W@C&%FnpkFE]hL)p2Q%p7pQT)F] I p@@@@@@@@@@@@@@@@g;mF2Q%p7FE^hR)psQWWTp2sQ)spQT)F[ hR)p2Q%p7p#dspQT)Fn pksahI4Iu@IbvFRLnF>J%shI)I^@vRLnF8shI4Qu@JRvFJzz*&F ^@@@@@@@@@@@@@@@@g]dJ%shI4u@JRvFRLnF>[L#^J% J2]  psQWWTp2sQ)spQT)F[R JhL2Q%p7p#dsFE ]hQ)Wp2QuFn Th%sQ#yp2Q%2& 8@FJJ h@@@@@@@@@@@@@@@@gOvI%s)Q#pFyI4hI7pRQ%TQF]J hI%s)Q#pFnL2W@C7FX@@s pI%1^@ z*2>CLnFFFFFFFFFFFFFFFFFFFFFFFhs pI%1^@ z*2>CLnFFFFFFFFFFFFFFFF@@@@@@@@@@@@@@@@gs=FFFFFFFps pI&J8@ ;CLnFFFFFFFFFFFFFFFFFFFFFFFFFCs pIbz8@ ;FCLnFFFFFFFFFFFFFFFFFFFFFFFFFC@s pIb*8@ >>CLnFFFFFFFFFFFFFFFFFFFFFFFFFF8s pIsJv@@@@@@@@@@@@@@@@@g^; |[L*nCLnLv&^FFFFFFFFFFFFFFFFFFFs pIa^@ zd]CLnFFFFFFFFFFFFFFFFFFFFFFFEXs pId8@ zCLnFFFFFFFFFFFFFFFFFFFFFFFFFs pIgv@ znv&^FFFFFFFFFF@@@@@@@@@@@@@@@@g>[FFFFFFFFFFFFFFhs pI&*v@ zvv&^FFFFFFFFFFFFFFFFFFFFFFFFps pI&v@ ;v&^FFFFFFFFFFFFFFFFFFFFFFFFCs pI#v@ ;Fv&^FFFFFFFFFFFFFFFFFFFFFFFFC@s@@@@@@@@@@@@@@@@gz pIb2v@ >>v&^FFFFFFFFFFFFFFFFFFFFFFFFF8s pIsJv@ |[L*nCLnLv&^FFFFFFFFFFFFFFFFFFFs pIbQu@ zd]v&^FFFFFFFFFFFFFFFFFFFFFFEXs pI#Jv@ zv&^FFF@@@@@@@@@@@@@@@@gaFFFFFFFFFFFFFFFFFFFFFL In bh%7spXQ)pppppppppppppppppppppFnLJhXQupd%42pppppppppppppppppppp Fn mhXQup#pgQ)%pppppppppppp@@@@@@@@@@@@@@@@gspppppp|Fn bh%7spXQ)ppppppppppppppppppppp;Fn s pXQupgppppppppppppppppppppppppgFn 7hXQup)pgQ)%ppppppppppppppppppFn >h@@@@@@@@@@@@@@@@gXQupQ&WpppppppppppppppppppFn >hXQupQ&WpppppppppppppppppppFn >hXQupQ&WpppppppppppppppppppFnLCh&ps2spppppppppp@@@@@@@@@@@@@@@@gE pppppppppppppXFnLCh&ps2sppppppppppppppppppppppp7FnLCh&ps2sppppppppppppppppppppppp1FnLCh&ps2spppppppppppppppppppppppkFn@@@@@@@@@@@@@@@@g& >hXQupQ&WpppppppppppppppppppQ]aO@a1hJ))&)p#%bFz@yWFd@@s pIQu@IL*n>^[  J1z@yWF%4p@Fz@yWg4p@FXv@>g@EWJz@yW@84p@@@@@@@@@@@@@@@@gF|@Fz@yWFh@@sFpu@g EOJ88u@Fz@yWFk@@sOJ88u @Fz@yWFm@@sOJ88up@Fz@yWF/4p@ahOJ88L^&@@sOJ88v@@]LILX@FX@F1 Jb@@@@@@@@@@@@@@@@gO7C@F2JXv@>s@F4JbI#@@sFp@v) 8@ @2Fpvp@FXv@>7@F I/ XhWsp%7sp&pXQ)2Fp7@@2QFp7@7QFp7X@2) 8I*Qu@JJzn^*@@@@@@@@@@@@@@@@gTn>^4u[ @8v@;@En IbI#@EO v@>|@kJXv@>=@Jpv@>>@EJXv@>@,Jpv@@@EF@8v@@FT v@@C%@8v@yg8X@8aFpF8@FXv@8>@CQJXv@|E@@@@@@@@@@@@@@@@@gvE@8v@F@Jpv@@I@8v@y@Fa I/ 1hLp2Q%p7pQT)4 8IyQu@I2vFRLnF>[L#^] I/Lh)p2Q%p7s1 8IX8XO @I Lvb22m I/ bh)p2Q@@@@@@@@@@@@@@@@gvn%p7p#dsyQFpy @nFpLzE@E v@ @E1 v@@O v@@ v@Q@yJXv@R@|JXv@@> IbI#@T v@@Jpv@W@X v@@ v@8n@@@@@@@@@@@@@@@@@g7FQ I/@[ v@87@JXv@]@^ v@@ v@a@b v@#@dJ1bI#L8y@% I/@F I/@&J1/@EJ/@EJ/@EJ I/@;J1/@g I/@Ck I/@Cn I/@@@@@@@@@@@@@@@@@gd;C2 I/@Cp I/@Ed I/@CX I/@s I/@hJbI#@@s8I=I@ ,vv^FF&nvCnCF^CvnFW*JbJ7k@,JbJ7m@nJbJ7/@dJbJ7/@FJbJ7/@zJbJ@@@@@@@@@@@@@@@@gg)7p@&JbJ7p@FWJbJ7p@1@)bJ72@FXJbJ72@*JbJ72@s@)bJ74@uJbJ74@v@)bJ77@FJbJ77@8@)bJ7y@zJbJ7y@;J1bJ7|@C]JbJ7=8ITgps@@@@@@@@@@@@@@@@g)Wdgp1LQ8@@@kCJ4@ @)#J4 @ #J4 @p@)#J4 @p#J4C @pC#J4C @kCJ4d>@I&F,d>@#@Lk*@ RLkT@Eb&LkT8@&4y@@@@@@@@@@@@@@@@gCC8LLk*48%*@81m @ JX1maO Qd2/ dsgh)#J4F>@I**>FJ|*,LkX@@Lk^8@d118R*yIhJX1myO s )%a J*[X)#Js)d>@IJ%bTT@@@@@@@@@@@@@@@@g4&Lkb@nb&Lkb@I,Lk&@p,Lk&@J,Lk*@>b&Lk*@ &Lkn@L&Lkn@|b&Lkn@&Lk2@4&Lk2@*&Lk4@*b&Lkv@@@@@@@@@@@@@@@@@g[41&Lk8@CQ&Lkz@2,Lk|@8b&Lk>@&LkQ@@z&LkQ@zb&LkQ@7b&LkQF@) LkQ@>&LkQJ@&LkQ@=b&LkQ@Cb&LkQ@@@@@@@@@@@@@@@@gT@Tb&LkQT@#b&LkQ@&LkQ@@RLkQ@Cb,LkQ@W@LkQ^@ b&LkQ^@X&LkQb@b&LkQb@db,LkQd@@&LkQ&@@ LkQh@b,L@@@@@@@@@@@@@@@@gkQ,8@#J X*T1nJX1mO *ads2kkCJ4]>@zhFJ%L]b,LkQ88@#* X*T1zJX1mp@ Q>JX1mO g) &skag OakI 1,#IJ kC 1@X@@@@@@@@@@@@@@@@7CakCI  )# *@h,#L@pkC k@@FX# @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Wn/@@I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F I@d@@@@@@  IJ@IQ@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g%I,,E,FO2bO&gTE&@@@@@@O2s&@F@@@@@O2bR&@C@@@@@O2b)&@@@@@@O7Q&@CC@@@@@O%Q&@CF@@@@@OQ7&@C@@@@@O7R&@E@@@@@O#T&@E@@@@@@@@@@@@@@@@@@@@g@ ##&@@@@@@@ 22&@@@@@@OTg2&@C@@@@@OTgQ&@@@@@@O&)WF@Ek[RT#%bO)2[R%RTOX#sOR)d[)%T&4sE;FO#TQg7gOQTT[XQ)2O2sQO2bQ2W%O#@@@@@@@@@@@@@@@@g )WsX)[Tg%s[&4s2yvTsXO24R[&s[)2Q%7[)2%7#O2b%[%v)TWR#Q%b[2s&bOR)4 Q Q[g4s&sT[g)&T QE&%2 Q QCOd%[%T#OR))[&%uCv[%v)@@@@@@@@@@@@@@@@g IT[%)#Od)W R[%)# RC REXQ#OQ7FF[s2s7g R R[sd@[7s%sXO)2X[%)#C IO2s7[RR2u7[2uX)2O&%[T&4sdO2bWWTII [))#%bs7s%@@@@@@@@@@@@@@@@gbd4d[uTRO#T7 F OTOEO%&TO%&gOs)[QT)d2b[QT)2W%&4) TO#TR[2Q%TC TC T C  O#2Xy)&FFO7QR[%&s2W%[#db#[#dQb W&sE  [T@@@@@@@@@@@@@@@@gmJdII F C [%v)T2 E[X#ds[#&#dsWs%sX[TR#d4#W&sdCWs%ROgyTQsQJJII&@@@@@@@@@@@@&@@@@@@@E @CC&@CFCF@&@CFCFb@@@@@@@@@@@@@@@@@g]O@@@@@@Oh4C@@FR@C@ER@CE@FF@FCR@CR@CC@@FR@CR@CER@CER@ER@CEC@FR@CFR@CR@CE@@C@@@[%)#@R@FE@R@@@@@@@@@@@@@@@@@]mER@CE@E@EER@CEER@F@CEO%T@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gIu2222222222222222222222222222p)WR%RTpppppppppppppppp,%JyFFFFFF@p@gXpFFFFEd)W@Epppppppppppppppp,,,,,,,,,,,,,,,,,,,,,,,,,,,,,a@%J@@@@@@@@@@@@@@@@g] zL*R&FFFFFFF*mL4,F8&a@m8g@u8ga@=8d@ QaL a @ a Wa@ a [RaO@ ]RaO a@Q2X yI)zJQyI**Jp;[[kp||bp@@@@@@@@@@@@@@@@g|=p=R] =p|b^@|b^=^ |^p|b =p|] pL@#XXF,CaX@,pIbk%8F7@ u IC@ 8 &LnW h%XI#k%8@,p@@@@@@@@@@@@@@@@gO[Ibk%8LIX@RIpdL@#XXFF2 I%k%8sE2| mpI IW ppR,1u2|@# psE2|@#gbRy^@TE,@#[ [Rs@ sXb@@@@@@@@@@@@@@@@g,@@QbpLzE)@]LR@ vh&T@Q1 Q/@ y8& nW J &@I* W p n@Qg1 @#Cpuu2|@#Fbuu2|@#X[@v%u,Wgmk 1/@ @@@@@@@@@@@@@@@@gE8 &znW ^W p^Ih %8zI[zy^@Q1 /@ WaJp W pIk %8h , R@ |&4@Qgn@#b8u2|@#gb*y^@1b[&4nm ^%W p I@@@@@@@@@@@@@@@@gC [&W p dIX [g@ 8@%2@Q,a d@#]y^@QzQ)/@ 8 gnW pv@^4/W[ F,R[;pO I@4 R@ 8 gbnW %XIp %8CbIb]y^@Q1O@@@@@@@@@@@@@@@@g)I/@ 2F@ vgJnW ^dsW > E &%OOCIa%[OORI)nmm/@ v@g&nW T@# aa)u,@#bpy2|@#;[F]4  Is %8F4,p@@@@@@@@@@@@@@@@gF XIn %87@ u g@nW |RmW pE1k@ 28> *I%@[TzW p^In %8FF>pI> %8=%2|@#Fbhu2|@#bW C8mR= @)hRn@@@@@@@@@@@@@@@@gE1^@ O8R&aJ8WE8@Q)8RnE1^@ y F FFa 4WE8@Qh @%1^@ pQW &8@Q% X@Qh %1^@ R[ F>aJ*@ kQm F>aLJ@ [pp@Qp8@@@@@@@@@@@@@@@@@g Q% X@Q#XJ)@IJW X@Q/@@F *d@ [ phaIXkyW FgaJWE8@QIT yJ@ QQ FXJd@ &*h@Q&hR%@FbLWE8@Q)8EE1^@ QXR *d@@@@@@@@@@@@@@@@@g) 21 @QnpF@F *d@ QhR I&@ 11W FXI&@ [R1yW FbL WE8@Q% RpE1^@ 1)W b% R/%1^@ QpRXI&@ [RmQW FbLdWE8@Qh E@@@@@@@@@@@@@@@@g&1^@ RRaJT@ 2IW F *d@ [Rph@Q)8EE1^@ @2X@Qh JE1^@ n@ [z2,,@,IsRy*4h)y8J;ssR*2y8ILyyX>*J ,k@Q#@Q#hJ)@F @@@@@@@@@@@@@@@@g F| 2@ [R2yW F4aL*@ ^1QW  %  @QmhW%s@ n@ Xz*@Q)8EE1^@ L F ,p@ XC d2@ &X@QnpF@F *d@ 2sQm Fga @@@@@@@@@@@@@@@@g8@WE8@/%@ XvsX@Q% @Qa8R F; F;LX@ Xz*@QkRW%2v@ ^kyW CJT @sE8@ Q@C&CshOO@COshO@C^ThR  =@ OQQ =@ @@@@@@@@@@@@@@@@gC&O1Q =F@ QyQ =I@nThOR 1OshO@ =@  =@ zC4@sa X@X = @s=h@[@=p@8@s=@@]=@] =@^s=@@@@@@@@@@@@@@@@g@X@= @s=h@hs=p@ s=8@aW@@as=W@d=W@%@=WX@g=W @)=Wh@*s=Wp =W8@,@=X@@1=Xa=XX@v@@@@@@@@@@@@@@@@^=X @|s=Xh@= =Xp=X8F@Is=Js=Ls=X  @Qyh@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Wd&@@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F I@d@@@@@@  IJ@IQ@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ghI,,E,FOQRO&gTE&@@@@@@ORQ&@E@@@@@Od4#&@F@@@@@OTu&@@@@@@O#Q&@C@@@@@@O#R&@C@@@@@O#7&@C@@@@@O7Q&@CC@@@@@OQ7&@C@@@@@@@@@@@@@@@@@@@@ga;@OR7&@CE@@@@@O%Q&@CF@@@@@O7dQ&@C@@@@@OQTd&@@@@@@@O2b&@@@@@@O2b)&@@@@@@O2bR&@C@@@@@O)2#&@@@@@@#)2XCO#T&@E@@@@@O2s&@@@@@@@@@@@@@@@@@ghWF@@@@@OQT&@@@@@@O24&@E@@@@@@O77Q&@E@@@@@OgQ&@E@@@@@Og2&@EC@@@@@ )&@@@@@@@@ #T&@@E@@@@@ Q&@@@@@@ 7@Oh4F@Q&)WR@@@OR@@@@@@@@@@@@@@@@g#m)4O))O#TO#)O#O2sTO#TgO#%O#dO#TO#2O#QOTgdO7&O& ## 22OTgQOTg2O&)WEkO)2O2sQ))sO2sREFO2s7FE;O#T7FCO#TQ 7Os)E @Od)W&@@@@@@@@@@@@@@@@@gE@@@@))OR)dW))&)OX#sO#TROR))FOQ7O)8FIO)2XJEOQTTR@@@O2b%O&)R@J@#Ts&@@@CO2bQ2QuO#)JCO%&T#)#TO7QRRO2bWEL #@@@@@@@@@@@@@@@@gduTQsQ&@@@@@@@@2sTsO2T2O2&u&@E@@@@@ s7OR227)WOgyQ)WWsdgsdg#QW&@@@@@@@@E &@F@@@@@@@JO&us&@@@@@@@@b@@@F@@@@ O24@@@@@@@@@@@@@@@@gRb@@@@@@O#8[&4#&vJIJCIOQO)&u&@@@@@@@@#dR#TROR)7JIR@C&@C#Q7CF[#Qg&gE #Qy#QW#QWd&@@@#Q#QW&2sJ@@@@@@@@@@@@@@@@/C#QT#QX&#&WT&#&&@C@@@@O%&g@@C@ORQ@E@E@FO%T@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gF1u2222222222222222222222222222p)Wg&gppppppppppppppppppp,%JyFFFFFF@p@gXpFFFFEd)W@pppppppppppppppp,,,,,,,,,,,,,,,,,,,,,,,,,,,,,a@% @@@@@@@@@@@@@@@@g nbL|4^F|4>FFFFFFF*mL4,F8&a@m8g@u8ga@=8d@ QaL a @ a Wa@ a [aO@ ]aO a@Q2X 12@IQ2 I12@JQ2 J; @@@@@@@@@@@@@@@@gy Q2[  12@LQ2 L12]@ Q2]  12^@Q2^ 2R@ORR O2R@ppRJ#@d@ Q8&R@bQ1Lh#bXIs@RI& d@ Q8&^@@@@@@@@@@@@@@@@@gpubQ1 @#bI4 R@bQpRI) dT@ Q8&*@bQ1 X#b8Iv@RI, %hC@ y28Ia %4^@ Q 8&= p &^pX|d2bX^R@bXa ;&2@@@@@@@@@@@@@@@@g8>Iay @I)zmXI,zmhI]; Ia &|p@ [%gC@ QL8&|@ba ;a@ QLh&= 1yIs7,FX^WO[dk &F@b]QRF@baIh@ Qpgn@b^Od@@@@@@@@@@@@@@@@g=]W,>X^@bQ1 /#@ QOhg>@ QgC@ QO@g>@bW1@@QFIvQh@Q2Ed@^@%7@Q)*@R*@Q,X@@QLIp@ EpIX[Rb1TC@Xy@@@@@@@@@@@@@@@@gy4d|y)]|Ly,JTX4Q/X@QT@QFIL@QFTIhdap&F@m@QsX@@4,,W@%C pEbE/WgOC[&W ]%p%C@Q]X @QTI dO@@@@@@@@@@@@@@@@gvgCF @QC|Ebb %*  %*^pp%*8,%Wp7gQ4@QhIhX@QpI&@QC,E#Xz @@RJ@Q8T d@p&@ ,W@%a@d,#p^L@4p,@@@@@@@@@@@@@@@@gW@%C@QbEd]dpW%CF @QE|IXQh@Q%Edp%C@I,W@%a@Em EpIpX &Q@QTIL@QFIvQh@Q2Ed@&Q@QLIp@@@@@@@@@@@@@@@@gv@d)LkI@pT&4R#pg)2&%p#&Qs%Wpg&%spgQbQW%@yT@@%L@% &WTL@&2TL@&b2TL@&y2TL@gR2TL@gb2TL@48,W@%C@Q/X@@@@@@@@@@@@@@@@gRC@Q*@L=),,y)I8uE|E*TT|v)TQ=* @7*a@RJ@Q=*bXLsv&p)24#s2pQ)p4%%&)dQ#yTQCIdL@QLI*R%@y*vTX|E*TT|v)|@dR&g@@@@@@@@@@@@@@@@gupEI&FO%EO &W@n@EQp%[XFL@QLI @] %7 pFE[&QW bCIWO [%[[% %*)zT 7g&%%sp4%T)#&v2p&)p&u)#&v2QIv&@Qz*h@@@@@@@@@@@@@@@@gp4*Em&FOXn@E/%%]#O&QF g%Qp%[XFL@QJhI*n)@W*vTX|Eb8@|u,|I*Xv^TR,W@QJX@QIk8&u)14%T)#&vQLI @@kyL8#2pQu@@@@@@@@@@@@@@@@g )QWpQ%Tpd%d4d @[T>8u,I]v ILOI*vTX|E*TT|v)p,I*@WEmO EpIp[p&@Qb @QTI@@QE4I& Ep pX &[,EI%^W Q@@@@@@@@@@@@@@@@gzgW^^WO[C1mI1Fp] %# p]% WC%CF @QE4Ig %aF @Q@Q|@QC@X&yXE]|uELE]yy)|I%,OIy@Wan1@T%]yy)@@@@@@@@@@@@@@@@g%p|I%,Jm|4 @QvC@Qu)*Tu h@QhIgLQ)&22pg)&T4sp24dQ@4I&2@%]|uLLy,EImhuIzTv&)TQ4@Q|I& C%CF @Qh@QCIg@@@@@@@@@@@@@@@@gTXb L&@Rsgpz%WIWO[%[&[@RL*4)E a gC2@E2s2@E1Qp&uhpb^[ I%J ap%a pE&QF g%W%W RO Qp&v@ T,Ip%*h&2@,bpz@@@@@@@@@@@@@@@@gWm||I L,|%JvL8I*Xv^TQ[X@QIdL@QXIXmp&v@Q[X@ b@d>8u,]Tum EpIp[p&@Qb @Q>@T%Ly, >|@LLy,%TQb@@@@@@@@@@@@@@@@gdn1@,&yXE]|uLE]yy)|O^4gQ% @QTI@@Q IXpCp%CF @Q L@QE4IgLd&)p2W[pXQ#p&ph4&s%sQ@,@Q IXXL2W% 7s%Tp)dQ%T@@@@@@@@@@@@@@@@g&@)QE4I&  %aF @Q@Q>@TT%Ly, u^|@LLy,%Tu@]gpE)R WW^^WO[%W RO ^ %*X;T&dg%2Qsp&)p2XsQI&pp] %#@]@@@@@@@@@@@@@@@@@g[8 4@QhI& Cp%CF @Q@4I&2@%]|uLLy,EImhuIzTv&)TQz4@QFTI&pap%4 pE&QF g%W%W ROv CT@QpIkd@QpIk*%@R]IEhymdR@@@@@@@@@@@@@@@@gEaTnC@>EdugpJp%*;Xbp&)py)&n2pmgp>/]E %W RO &XhpEgaWI/ WOW^^WOIWC%&) Qp&m@QsX@@ 2@d>8u,]Tu@@@@@@@@@@@@@@@@g[mmQ EpIp[p&@Q]z#@T%|Eh4|I4v]TR*4@Q[4@Q4I*Ia@z#@T)4uF,Iy,&v]TQ[4@EJ>dpE Oa W %E]TT[z@TRR@@@@@@@@@@@@@@@@g#=L>8u,]TumR EpIp[p&@ vX &X@Q]h@QE|Ig y|ORps&p7;p@ps&pRQFI&;2W% 7s%Tp7g&%%sp|Q;RQFTI&@]d @ap%@@@@@@@@@@@@@@@@g=CF @QIv#, JQp&hpOaWIp&hp= a gm,Qp%[XF2@)dQ#@>EdWgpaW &WQ %aF @Q>@T%Ly, >|@LLy,%TugpEsI%^@@@@@@@@@@@@@@@@gyCW W^^WOC2nQ@E1* &[,EER]F%WW^^WOI#@%*h&@QIp[1Q11d1QI,J%@X|TW,L|vET8,E)*EF%%Tu4uTQg*phpEsaWI/CIWO@@@@@@@@@@@@@@@@gLaQ]&RCIa%[OC[@L%p&@Q2v#@Izd=JL)X8u=IE4Q8pRhpEEF %^WCg # F%]%b C@ pIg*LWs2spvXsX)p#Qp&)p#2QIpzLC#QQFp@@@@@@@@@@@@@@@@g|zIgz1@uh|dyEd@%* b Lp%CF @QI1@CC FdI*@@QCIXQh@RJ@1T d@C FTIdL@QFIg  p))|RXbp&)p&u)#&vQI@@@@@@@@@@@@@@@@g;s1[C82QI1h,T%&[p%&)dQ#yp)24#sQIm Cgv@Q|T,LTRk)EgIWOW^^WOQ%% Wp%*,JL#TQpvsXpdQ7|7gpT;pCIQFTIvQh@@@@@@@@@@@@@@@@@g>u@Q8T dJLQ#W%p2dQ##)pvsXp#Q)W)Q|@121|z#@Lu,| &EvEEh4h|dQb#@uh4T*#@uh|dRJ@v#@E]4vu &vLIEI*^L@@@@@@@@@@@@@@@@g y4@Qh@QCLI& Qpg@L ,b)| g)&)dpTgQ/2p74@Qh@QCI& Qpg@L^@%a pFR[%[[CIW /%%]#O&QF g%W%W RO %*m@mp&;@@@@@@@@@@@@@@@@@gaQ[X@kLg);@Qd@Q@R]IEhymdQsX@@2)1% @2R1,k @Q=*d@Q8 @X)4v]^|L%|Ly,@@@@@@@p@@@@@114Q=*4)FJ^[Ig g/C@@@@@@@@@@@@@@@@g[vIWOC[@L,L]%@%[@QsX@@asLTL@QE4IW p%C@Q]X@@QFIW p&@Em FIs]dpWg@QgTL@QE4Isp4@] %#@@@@@@@@@@@@@@@@@gJy EdXpWgQ@QgQ#@kvL@Q@4Is ^ gQ@ )#@Q]@Q|Is C%aFL@Qh@QCI4b Lg@Rs@Q%4@QpI4 Ipg@@@@@@@@@@@@@@@@@&=Qs|@QLIva@Rnb&Q4@T@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Wd=@@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F I@d@@@@@@  IJ@IQ@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gI,,E,FQ&)WR@OR)4EOQRORQOd4#OTuO#QO#RO#7O7QOQ7OR7O%QO7dQOQTdO2bO2b)O2bRO)2#O#TO2sOQTO24O77QOgQOg2O7RO2bTO77RO&)WF@@@@@@@@@@@@@@@@g8W@O)2O2sQs2bO2sR7QO#)O#TRO#2XFOd42OR))d4#CO#T72sO#TQEO)2XOT2O2bQ dTuO&)O2bdTu R@EkE;FO2s7FOdCOR)7E O7QROs))2#@@@@@@@@@@@@@@@@gWTuCORQO2b%TuTuEWTuCO24RTuFTuTuWTuTuIWTu@WTuOQTTOTg%OgyFCOQRTg%yQ77dQOd%OdTO%&g)2#Od)W)2#OX#s)@@@@@@@@@@@@@@@@7g;2#C#TdTQsQ&@@@@JEO)&uQTQTgQgQ2bT2bT&@@@@@@b@@@@@@@&@CJC&@@@@@@@@2FEO%T@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gd7u2222222222222222222222222222p)Wg&gI@pppppppppppppppp,%JyFFFFFF@p@gXpFFFFEd)W@Fpppppppppppppppp,,,,,,,,,,,,,,,,,,,,,,,,,,,,,7b@@@@@@@@@@@@@@@@@g huW zC@uW8  @2%1@Ry@L)p FTn CJWT% ,@2%7@R|@L)^ FT/CJW,% 8@2%=@R@L)p FT,@@1Q@1Q@1QX@1Q @1Qh@1Qp@@@@@@@@@@@@@@@@g]@4y]@aEI]@@uQ]X@1Q] )EI]@@u)]X@1Q]p1EI]@@uQ]X@u8@vX%@@vI^@v]X@v]X@v]X@v]X@v]X@v]X@v]X@v]X@v]X@v]X@v]X@@@@@@@@@@@@@@@@g[J@v]X@va]@Fnvy]X@1Q@yEI]@@uQ]X@7IX%@@uQ]@7^@7a]X@7)p@1Q8@7I]X@p@m|@CQ,@FE8>v u[)d@a ghnF@C R F@ gm@CQ@@@@@@@@@@@@@@@@gdu1mu@ &8nR@COm42@ )nI @@sk]R@@T n)@@ L@ )hn@C@@8 n&@ @E*7T @F^b7p@LJEsp@ @CTQm42@ and@CTQmu@ an&@C8@@@@@@@@@@@@@@@@ghT*ua[8@Fu@&vW J@ a @sh@ vsdk]R@@X@CTQm42@ ann@C8@FhbuX@LJEv@@b n)@@LJEv@h T@ C, @@uk]R@@h T@@4p@@@@@@@@@@@@@@@@gm**uam42@ ) @L4E*@E]m@Epp@b  @phW[@ *pm|@CTQmu@ an8@C  [[TQmu@ & m@C@Evk^E*7@F&@@sh@ 4p@F^b7p@LJE7@ @@@@@@@@@@@@@@@@@gOCa]*s@@z @@phW@ *@@ ^E/ @h T@ 8#@ T@@4p@F 7p@ E/ @T n,@LmE*7TX@F1@@sd>@ ghmzp @phW#@ g/@1m*pmz#@@sW@ @@@@@@@@@@@@@@@@ghdh@ g/@C  @QJQ @FX| @L4E*@)E*@@n 2@@sh@ 1dh@ h8m@W gm@C  @TJQ @FuXCJv[buX@L4E*@T)E*@@  @@@@@@@@@@@@@@@@@gT1phW%@ Eadh@ h8m@C[8@Fk7p@L7E*p@XT @8aR T@@2hk]L @2 J@@T  @sdk]L F,*EaE@@LyE*p@h T@C@aR T@@4k]L @T  @u8@@@@@@@@@@@@@@@@g [T@@sk]L @XT s@CaR T@@24k@ &@m|@CQXQ@CaQu@ ,8m@ &@m@C  @JQ @F4pb @F4bu@@ QEaE@@L4E*@@[ T@@sh@ F1dh@ @@@@@@@@@@@@@@@@g7%%m@C Qm42@ gmz@@s4T@@phW]R@@[ T@@sdk@ & m@Em@CQ1m42@ %m@C 1 @Fbu@C 1,@F&b=@ kE;@@T b&@ mE*@@@@@@@@@@@@@@@@@@gu n)@@LyE*7T @F[bu[)d@CQ^8@F^b=p@LJE1T @FEup@L*E*7T @F4u[*@CQ @FbuX@L;E, @ g@@s,n)@@L4E*@4)E*@@  @4p@F@@@@@@@@@@@@@@@@gk uX@ E;p@@  @4p@Fu@C^v8@|Tbu@@ L@ %m@CLQ@F]b>@L*E*7@F[bu[)d@CQ,@F&b=8@ L@ F7L@Fu@@>Tbu@@ ^EaE@Chvh@@@@@@@@@@@@@@@@g/gb>h@LJE1T @Fk7p@L4E*@m E*@@)E*@@, J@@| @@phW4@ Qdh@ h8mz@@2hk@ gmz@@phW%@ adh@ %m@CQXQ@; %mzd@@u@@@@@@@@@@@@@@@@g28k@ %mz@@sdk@ )hmzd@@2hWu@ gm@C1mu@ ghnF@Cm42@ mX/*@;m%/*@Cp@2 T@@44W@ %m@CQm42@ & m@QbEm@CJa,@@@@@@@@@@@@@@@@@gaLFbpb @F 7p@ E/ @z @@phWv@ kpm@CJam42@ gm|@Ca@dJQ @F#buX@LpE*p@h T@paR T@@4k@ %hmz@@sk]L @  @sh@ @@@@@@@@@@@@@@@@g /IQdh@ ) @L*E*p@b y@@s,W2@ %mz@@sdT@@sW2@ gX/d@CJamu@ gmz@@uXk]R@@z a @phW8@ ^2hk]L @n n&@LyE*p@X@Ca[@@@@@@@@@@@@@@@@R 8[[8@Fk7p@ gE*@@XT |  [ =@ #[ =  s[ >@Is[ > L W T@p/ %, dQpRpF 8O8@@%@%W@ @ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@W%k@@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F  @@ I@@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F  @@ I@@ a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F   @@ I@@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F   @@ I@@ a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F  T@b@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/850816/READ.ME b/850816/READ.ME new file mode 100644 index 0000000..85273a1 --- /dev/null +++ b/850816/READ.ME @@ -0,0 +1,10 @@ +850816 9-SERIES 910/925 ALGOL 60 BASIC 4K SYSTEM +AUTHOR: XEROX +ABSTRACT: +TO COMPILE, LOAD AND EXECUTE ALGOL PROGRAMS FROM A FREE STANDING SYSTEM. +COMMENTS: +SOURCE LANGUAGE: META-SYMBOL. CONFIGURATION: 910/925 COMPUTER WITH AT LEAST 4K MEMORY, +TYPEWRITER AND PAPER TAPE I/0. SEE MANUAL NO. 900699. + + +This file 850816-44 has 4 ^ type control cards preceeding the encoded deck. \ No newline at end of file diff --git a/850816/alg b/850816/alg new file mode 100644 index 0000000..73c3c3f --- /dev/null +++ b/850816/alg @@ -0,0 +1 @@ +g>I,,E,FQ&)WFOvdEFW&Ras8Oh4@F@@@%#sCR@FO2s#JF%dJFR#dJ@OyyQ&@@@@@@@ OyyT&@F@@@@@@Oyy&@F@@@@@@Oyyg&@@@@@@@@@@@@@@@@@@@@gC@@@@Oyy#&@CE@@@@@@Oyy)&@EE@@@@@@yy2&@EF@@@@@@WdQWO)2OR4TQsQ@E@@@@b@@@@@@LJF@E;)Q2sXQ)O#%%QdO%s &g J@R@@@Os88O&gT&@@@@@@@@@@@@@@@@@@gWL@@@@@@s8gvOdvs&gvR)svOR)4EkE OR))2bdQ&@@F@@@@@O2bdOd%2bWQ&@@@@@@O2bW2b%Q&@@@@@@O2b%O7Q&@@@@@@O2s7 ssO#TQO2sy&@@@@@@O#@@@@@@@@@@@@@@@@g8h)O2sQ 22O&g&@F@@@@@W)4)OR)dO&QOQ7&@C@@@@@O#T7O%Q&@C@@@@@O&)E OQTTO7dQ&@@@@@@E7dQOQTd&@E@@@@@O2b&@E@@@@@O2sRO#TRW2bQ@@@@@@@@@@@@@@@@g W2bQ2bQ&@F@@@@@O2b)&@F@@@@@OdTb@F@@@@@@O%&gO#Qb@F@@EO#Rb@E@@EO))&@F@@@@@))7&@E@@@@@@O7O#2XJ))s&@E@@@@@@Ws@@@@@@@@@@@@@@@@g*FOgyO)2XO2bQJFFO7QROs)&@@@@@@@&@@@@@@@&@C@@@@@@&@F@@@@@@@&@@@@@@@WsX[2s&g2vW%Tg&WX&#O[sX[sX)Q)TOb2v[sXE[@@@@@@@@@@@@@@@@gEsXORgsFC[sXCOQRsd%[sXELbQ[sXFW%&&T QW#T&%sWR&4%T QW#T2%W[Qg&2sWg)WQg&2s2%EWg))d%28%Wg)CO24RWg)E2%@@@@@@@@@@@@@@@@g[/W2s)vT[&d%sWg)[2d&#O%TWR#Q%b#v@y)2XFJ@@@@@OR)7O74b@C@@@@@R@Cd&TW2s&%g@FIWgQ)J@OgJJCOg[dQ2QWWT#sQOd@@@@@@@@@@@@@@@@gm2FOd2EOd2Od2COd2FEOd2bW)4#)O)#FO)#O)#CO)# QC QO)#E@O2dO)#FO&%&)dWu)sOTWsWh4Q#W&#&%O)gsW##WOQ&gO#s) gs[#gQ)%O#g@@@@@@@@@@@@@@@@ggvsOQ2s[)gQ)%Os%Od&gW&ddQd 2dW#v@OTTOT2yOTOTb@@@@@OTOTJ QOTFOTCOTEO2dWs8g2O2dO2dC2d@F@@ 2b2dF%TdW2s@@@@@@@@@@@@@@@@g *8gOs&s2dFWT2sW2dCC)TW2dCW2dCEWRsQRR@WRQ2Qb@@F@@@@@[2dCEQ@&@F@@@@@@Wv&)T2d&u%TRF[%TR#b2dgQ)QW2dW2dC vJ@@@@@@@@@@@@@@@@guyJ)TWR#bXTWsdgs)TWT2v2W%W)Qg%4dR)Q %TO7gb%T)TW2v%T)TE%%sW)TEQOT4gQT2sW)TFQ)TF)T)T #Q7%Qd&@F@F@F@F@@@@@@@@@@@@@@@@g^@[d&u%Qd&@@E@@@@&@@@@@@@W)TIQQER2%TW)TIR)TIOdQT[g)&2vb@@@@@@[RWR#bW)T@WR#bQT%TQTW)TW)TW2s2X&@@@@@@@@[)TQb@@@@@@@@@@@@@@@@@@@@g8z@@@)TW)Tb@CJE)T)T)T)ET)ETC)ET)ETE)ETF)ET)TOuQ))Td&TR[)TW)FT)TJC 2a &W)TQWRad@JC@)Q%T@@@@@@@@@@@@@@@@gJ%2sW%T7W)@TOQOgs)28%T28%28%2O28%[2gQ#OQW)ITW)24#sW)CIT22vW)CIT[%Tg)WW)@T[&gg)&2Qugad@W&gg)C&@@@@@@@W&gg)s2@@@@@@@@@@@@@@@@gI7Wad@W&gg)O)2s&g&W&ad@W&gQ)8JW&gQ)FW&gQ)W&gQ)W&gQ)W&gQ)C[%QRQTT&@@@@@@W&gQ)[&T&4sW&gQ)EWd&TQ[#QR)JWd&TQWd&TQW#R)@@@@@@@@@@@@@@@@g1/TyWd&TQWd&TQEWd&TQCsQR#v[Q22W%Wd&TQFuQ)uQ)uQ)uQ)CJIb@@@@@@@[R#bgQ)%[#QRT[QTR#%bW#RTCW#RT[%s&4sW#RTW#R#2#O#vI2v@@@@@@@@@@@@@@@@g,ys[g&2QTTR@@@QT2OQFW%QTTJQE#XvQsdu%b@@@@@2s22s22s2CJCOQ@2s2RR%QWRWRWdsdgT%2g&@@@@@@@&@F@@@@@R%Qb@F@@@@@@@@@@@@@@@@ghC&@@E@@@@OQE%TR%TRC%TRE%TR%TR%TR%s&g2vW&2vW&g2v^@@@@@&@&gW&Os2Ws2vWW&2vW&22WW&2vW4aad@W&g#2[&g#2[&g#2@@@@@@@@@@@@@@@@g%E[&g#2C[&g#2W#Tad@W))[&g#2[&g#2[&g#2FW4aadW22ad@&gsXW&gsXCW&gsXW&gsXFW%T)W&gsXW&gsXW2s)W&gsXW&gsXEW&gsXW&gsXI&gWaa@@@@@@@@@@@@@@@@g2d@W&gQ22W&gQ2C&@F@@@@@@W2sad@W&gQ2W&gQ2JCTO2ssO7XW&g&)JCC&g&gCs#JC&gJCE&g R)&gEWvXad@&gFW&gCW24ad@Wgyad&W@@@@@@@@@@@@@@@@g^42v&g&g&gIWagad@b@@@@@@@W&g[2g#ad@[TQ#%QJCFW&gWagadJCW&gWQ#adW&g))WR%Q&g4%&g4&g4C&g4&g4[#T%ad@O%WW&gR%JF@@@@@@@@@@@@@@@@gW]&gRF7g&%&@@@@@@gadgad&gRC&gR&gR&gR&gREW&gad@[&gadW#TadW#vXb QO#vCO#vO#vO#vO#vEO#vF#vFJIOQO#vO#v#v#v#v@@@@@@@@@@@@@@@@gICWQ#ad@O&)W&gsQR s2#vE 2%2sbaQT%dWQT%dsQT%O)8O2%O2%O2%CQg)O2%OTsO2%EO2%FO2%O2%O2%I2%2%C[&#&%2%)&g2%EW2%EQd@@@@@@@@@@@@@@@@g&1&g2%F#22%W2%Q2%Wh4u2%I2%C@2%C2%C2%C2%CEJE[dg#2%C2%CIO&g2%W2%RW2%Q2%F2%2%@[R#bsQR^@F@F@F@@F@@@@@@@@@@@@@@@@@g2F@@F@2%IO2QTR2%QW2%QW2s)v&@@@@@@@2s)7)ITO%s)IT)ITCW)IT)ITF)ITW%s2XW)ITEQ)ITE#QW%Tg)W%Tg)W%Tg)CW%Tg)EW%Tg)[)#&4s@@@@@@@@@@@@@@@@ggW%Tg)FW%Tg)b@@@@@@@&@C@E@@@@b@@@@@@@&@EFEOX#s[)2s)sW&#&TO&d@CF@W%Tg)I %%%s2FOQI%s2%s2%s2%s2C%s2%s2E%s2&@@@@@@@@@@@@@@@@@@@@@@gCu&@F@E@@@@[%4dsQRR@F@OO&E@O&O&b@@@@@@&F@O&CO&O&EO&F&&&C&Ib@C@@@@@@Od)W&@E@@@@@@@&@C@@@@@@@&O@@@@@@@@@@@@@@@@gn=&b@@@@@@@O&IO&&&&&@F@@@@@@&&C&OQCOdu%vT2&Ras)#&Odu#&@@CE@@@@XbOQWXb@C[2gQ2)gsvRsv))R@@@@@@@@@@@@@@@@gu@T2vR&@JI)QTWg4%XO2b2@@F[g4%X@@@@@@CFFJ@@@@@Wv)s&@C@@@@@@Os2W&gR)bW&gRW[&g#gQ)W&gR)EW&gR)FW&gR)W&gR)W&gR@@@@@@@@@@@@@@@@gI)&@F@@@%y)y)2  C  E F[2s)d%[2s)dQaW)2sO2%Wdd%ddQa[[#Ts%[#TsaW#vsQR QIWRQ2RWRQ2^@@@OQC%4d%4dR@C@@&@@@@@@@@@@@@@@@@@@@gpa@@@@&@@@@@F@@&@@@@@@F@@&@@@@@@@&@@@@@@@&@@@@@@@@F@@@@E@@^@@@@&@@F@@@F&@@@@&@@@C&@F@@E&@@@b@C@@@@@@@@@@@@@@@@g[E@@E&@@C@@C&@@C@@C&@@C@@@C@&@@CC@@CC&@@F@@&@@@@Fb@@@C&@C@@@@@@&@@@@@@@@@@@@C@@@E@@@@@E@@@@@@@@@@@@@@@@@@@gR@@@@@@@@@@E@@@@@@@E@@@@@@@@@@@@@@@C@@@@@@@CF4a%Q@@@@C@C@@C@E@CRg%Q@@@@@@@@@@@@@@@@@@g g%Q@@@E@@EE@EE@EE@@C@@EC@@@@@@@E@@@@E@@@E2sQ[4%bTsWu)TsWQ)TsW2vTsWg)TsO2T7RuQ)Q@@@@@@@@@@@@@@@@gWuQ)Rg)WRuQ)gWQuQ)gOdgWg)XT[RW%RO42[RW%)gQ)[2sds2hOQ2%W4#R#bWR#&bdgTO42O4R2O)&g[2s)%WW4&)2[4#&dgTsgW2vT242gWTsgQ #OQ@@@@@@@@@@@@@@@@gv g#)Q#[%sW)R&&#&)2WRW%O2 224R7JC[g)&TJCIWQ))Q8JJQ#g#JC T&JOg#JE Q7JFWQ)#2JWg)XTRJORg#JIOR&7JE@JEsX%JER#@@@@@@@@@@@@@@@@g>g#JECOT7JEJEEJEFOTyJE2sdsJEQsJEIQs)dJF@O2Q7JFJFJFCR2JFRsJFERs)dJFFOdgO2R7JF[g)&TJFIW#QR#J@OJ[2vsXJWg#gTJ@@@@@@@@@@@@@@@@gpCWg)XTQJ2sgJFO#QJW4%s#JO#RO#WvX#JO#TJOgJC[#R)&bJFTygJIOu4#JI@42%QJIEWQ)2WJI[#R)QbJI[g)XTgJIIO#gT@@@@@@@@@@@@@@@@@@@g/z24R#@@C[T#Q)@O#&R@E[7g)Ts@FOR7g@I @[g)XTgWQg#gT[2g#2CW))&)OT7gFO2v#W&s&I&)@@@@@@@@@@@@@@@@gCFEO42%2vTgCWu)#2C42%RCC2gC[7s)%Q#CEg2CFCO#R#CI[7g)#2OQ7gOQ)8EO7sFg)&O&v%[2vT@@@@@@@@@@@@@@@@gk,2gIE@WQsgEWQs)dgE2Q7gECE)#gEFO%&sEWRsgEOQ%TEIWRs)dgF@ &)FdggFFC2R7gFFEWuQ#4FFW4%TF@@@@@@@@@@@@@@@@gzJ[g)W)QdFs)4FIWQ#2@[&)dQsCWW%&)O4&gE[T&sT&sF@s8gW&d2s42%42%TEWg)XT@@@@@@@@@@@@@@@@g4II@24RTdgQ)4#W)4#&% )#TsR%Td&gO))IW)gQ)O))CO))O))EO))FO))Q&gTsQg)&d%T2dO))W#gQ)#2WQg2s)&g 7 @@@@@@@@@@@@@@@@gJk7O))O))))@42 7C 7 7E 7FW2d 7 7 7IO7O7FO7O7O7EO7FO7O7WR%T[Qg2sO7IO7@O7O7CO#7s7s%sW)&dd%sR&&#Q@@@@@@@@@@@@@@@@gnO%#7s)%Q##g)&T4)R@E@@b@E@@b@F@@b@@@@@@R@F@@b@@@@@@RWRRWTO8ICO)CO)CO)I8C )O)Od%T ))g)#g)O)O)CW2@@@@@@@@@@@@@@@@g8s)WO)CO)CCO8FO)CFO#O)FQg# 8 8 8CO)CE )FO)O)C@)CEy )C ) )E ) )WQ#g#O)Fg#OQ7Q)#O)CRg#OR7O)@O)WR#g#T7W#R#2O@@@@@@@@@@@@@@@@gL)@O)O)O)CO)O)EO)O)IO)@O)O)O)CO)O)CI#QRW2vX888C888@8E8F8C8CC8CO8EO8CIdO@@@@@@@@@@@@@@@@gQ8WdO8E@WRWRO8O8FO8WRWO8C)CFyO8#8@C)EyO8CO8EO8#O8IEQ7Q7O8O)CyWQ)#O8FWRg#W)g)W)g)W)g)CW)@@@@@@@@@@@@@@@@g1g)W)g)E[)g)F[)g)O8FFO8FE[)g)O8F)y)@yO)y#C)yO8C)yO8IWT7O8IO8IO8IO2h#88@[#s)Q2sRW2sQ)s@@@@@@@@@@@@@@@@@gLW2s)s@W2s)s%W2s)sbWRQ22RW2s)sRW2s)s#W2s)sW2s)sdWRQ22&RaR@@@W2s)sW2s)sEW2s)sCW2s)sFW2s)sW2s)sOQR2Od&TOdQ7[Q)sQ%7g #%2h)sO&2O2@@@@@@@@@@@@@@@@7y %W%T&W%g4s[&4sg4sWQ)T@@@F@F@F@@@@Wg%Xs@F[g%Xs[g%XsQ[g%XsR@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g>*u2222222222222222222222222222p)WQ#W&#ppppppppppppppppp,%JyFIFF@p@&FFFFFFFFEd)W@@Fpppppppppppppppp,,,,,,,,,,,,,,,,,,,,,,,,,,,,,7b@@@@@@@@@@@@@@@@@g8uW [7vkh1ksQ8I*)y8IsJJ8|*42&=]JaR%4dR)p&p#s)Q#2,az;a@1 z|zy )dkaLm sIOF2&sg m)Jg&s %n[u|4E^  #[&R^ % gOQO *k=|IRL|v@@@@@@@@@@@@@@@@g1]L4;hC28WpQ%F]EXbC287p&]%EF]EC2yWpQI8=L)bC2y7pu,|*TT8%zC2zWpvL|*TT8%zds2z7pR%FTyhy)[CkR7@ b 2Ly)zh| )*k@@@@@@@@@@@@@@@@gF2L hydLEJ )*kR|pk2 ] ] ] ] ] ] ]@ d;R2 4;R2 R2T;Rs@b R22;R2O;2Oa2O O2@@Fa TR@C1XQh@CQ@d@Fb @4XW@@@@@@@@@@@@@@@@g/d@R @IQ@ % IQX  @@ @@4d4@ b@WO@ b]@@@444@ )mh@hd8@nd@hdzX,4@ )hmh@CRQ[T]T@Fkz8@ XEup@R @ b@ m@@@@@@@@@@@@@@@@@gh@ bv@CWXQh@CRQ[]Ek1C^]|^[@Fn|@@ XEaF @ aE8 @R p@L@y^@LXb@ 2@@upWW@ ,hnn@CRQ[&^@F4=L R@Ca^dR@CRQ[@@@@@@@@@@@@@@@@gp#k^p@Fnz>4R@CXQh@CW]@F,z>4R@7; ,4@ k@nn@CRQ[/@@Fnz8@ *EaF @ FE; Q@E| @[& k @7W)d@X  @@L z @4XWv@@@@@@@@@@@@@@@@gX@ ]2@W8@ nXnn@C]^&I@ ) ,4@ ]a444@ ]Q7WW@ )mh@|b@/4@=b@/8@C^1XQh@Cp=g@dCC W & EaF @ IEm@@ @@4d4@ 1@@@@@@@@@@@@@@@@@@@gm@n@@X/C@ pa@8@%X a@F,4@@v@@#| XX@% C@@8d@%p b @FOpnJ@@Xv& @@Xsp@%p b @F,|@@a8p@#| p@F@@@@@@@@@@@@@@@@g/=,|@@y8h@dX Q4b @@ysp@&T a@FRm @h ,I@T ,I@E ,L@p# @F@,|@@Opp@&L@g C@@Xsp@)@ p@h d@F@,|@@@@@@@@@@@@@@@@@g[@@vdI@@y@)L@) T@gX@% R@g@% Rd@g @% d@%p p@FRnL@@Q@XEu|,I]||vE*)LF=L|L)mJTuh@@@@@@@@@@@@@@@@gT|Tpn[@@Fyp@d4 O@@F@,|@@yv^@W)]v ILL&y&T4|vTT|u Fy|@hJEaz@%,@%p W@FW@,|@I>aXnL@@zL@dX )@@F]pa)&@@@@@@@@@@@@@@@@@gnJFQ n%@@&z@dX Qvvg@@Fz @#| d@gd W@FQ mR@p@#| p%hT4 Whhd@% X4@d8* @FQ nk@@Cz2mkJ8d%&)p28%sQ7p&u)#&v@@@@@@@@@@@@@@@@g= kzEzL@%d ,@@FQ n@Jna@m) @@Fb@nR,b &QWF]@n2F F IIWCCCCCCCCCCC%WOgOmgFXns@@;@g[T@%p &p@F@n*@@4;X@@@@@@@@@@@@@@@@@g2& mp@Fm)n@@FQ ny@@X;@g [h@dX np@FQ n|@JRam)J @FQ n@@Xv%@FW@n#@@zh@%d /@FQ n>@JL payCg [h@dX @@@@@@@@@@@@@@@@gh/p@F@n*@@[@vdI@@4;X@& mp@Fm)n@@FQ /@@X;@g[h@dX p @F^n*@@y;4@% Q4@&, p@FW@n4[d@& pp@F@n4[d@%p@@@@@@@@@@@@@@@@gLz p@FX/C@@Fyh@/py1vg@@F|T@% m@@Fm)1 @FQ n@@F;p@1y1vg@@F|@% m@@F]pa)1 @FQ n|@@7F&z@@F;p@g [T@d@@@@@@@@@@@@@@@@ghX & @FQ n|@L@n4@@7Fg@@Fyh@/@y4;@dX 2[hR|R@d@@@Fn W gQOO&IIWF&QWC[E On&EWJ8 2p@Fb@,@@@ @@@@@@@@@@@@@@@@g]L# @Fpn4[p@&T 4@%@ p@dX Qvvg@@[@v&g@@[4])p@F]@,mF7L@@#@L|@/@@[O|huap@F%@m)4@F/R@@I;L@m2sp&%2s)4@@@@@@@@@@@@@@@@gy sp%s&pRQ2pQ%Tp%T7p)&dpQ;)a4pz@@;Qms@@F@/T[,@h| @FXp@F@n4[p@gL mF7L@@4vg@@;Qms@@Fb@nQ@@s;Qms@@F@,uF7@@@@@@@@@@@@@@@@g@@T;Qms@@F@,uF7@@pT[]X@&T 4 @FR/@ # @Fpn4[p@h| @FXp@F@,mF7L@@s;Qms@@FTpn4[p@h| d@F%@m)4@F/R@@@@@@@@@@@@@@@@@@g4QI;@,&dgQ)2p)4#pdg#)2pvsXp&%2s)4sp2s)%Wupz@@%=@% /@@*;QmvJ8 )hpp#Tp%T7%p mFvQ@ d]@nv X@& mp@FW@n4[@@@@@@@@@@@@@@@@gJ]h@% mF4I@@*vd%@@@@X;Qmuah 7pppp#Tp%T7& ,p@Fn4[]h@dd up@Fn4[]1@%@ ;Qmd@F@n4[@gd mF7[@@F=d@7@a =@@@@@@@@@@@@@@@@@g&dd up@Fy&WIgO &R^ % FC %&&W[W gQOOC %&]hX8@,@ d@%p mF4LF Ev/&R^ FW g@g WdFp@/T[d@&h uF4L@@=@@@@@@@@@@@@@@@@gI8@R)1XIpdIp8@;QmC@@FQ /@@Xv%@F[p,v@@F>@@7paX=8@g @dX 8CbE uF4L@@=Qm21h2sp%T7% m#@@=Qmuah2sp@@@@@@@@@@@@@@@@g@QRQ28paX=Qmy@@F]@/T[@Q8uLd%a;L@& 4p@F/T[^@d4 mFv @@ =Qm2p@F^n4[p@dX 8pC E 7 @F n* X@%p *#@@I=4@8aX@@@@@@@@@@@@@@@@gn==Qm@F]p#T@@F>@RIpELIp *vdI@@;Qm#Qh#Tp%T7&h 7 @FW@/T[,@RL,|FE]pX=@,@ mFv @@;QmyJ8%s)pg |gg m#@@@@@@@@@@@@@@@@gL@@s=Qmu C% uF7@@X;Qm#@FXn7@@a=L@d4 mFv @@ =Qm2p@F^n4[^@dX y@FQ /b@@&@WE&L,IuEE, &vFJ]u^@n4[d@@@@@@@@@@@@@@@@g,m@I8>LEFT|| %@Tvg@@;Qm@Fm)RJ@g  QmCh|@h C@@FW@n4[]Xuay8;W;XpQ)psF;;p)2gs,8 z@@F@m)C@@FW@n4[]X@% @@@@@@@@@@@@@@@@gL4 mF7)@@vd4@@F>h@Q%|EL@@[zpO@@Fp@n4[^d@%p mF7Xk F F m)@F @FW@n4[],@& up@FQ /,@h@n4[@,@ mF7)@@7Fd4@@F@@@@@@@@@@@@@@@@gsJ>4@Q%,ELEp[@vdI@@;Qmvp@F@m)@FW@n4[]bn@@a=@dX ;h%&pW&&T;a%=@% *#; LFW@/T@@X;4uap@F n4[@,@ mF7)@@@@@@@@@@@@@@@@@@gk==QmQhE) W,@ mFvR@@=QmChC) W% mFvR@@*vdL@@=Qmy@@F@n4[d@&h ;p@FW@/T[@% |C@@=Qm#@F@n4[,@& 7@F@n@@@@@@@@@@@@@@@@gL= X@,@ mF7)@@;4ua1E) ) W|aXpR4[d@h| 2p@F%@m)| @F /s X@%p mF4I@@[@@Xv%@FQ ,mF4Ik b%Og#O,E mFvR@@*;Qm2p@@@@@@@@@@@@@@@@g^@Fn4[d@=@a ;Qm@Fp@m))p@FT@m)@FQ /g[@dX =@@&%WJ^Q WIWOW^%&Qg gW FW gQOO uOX2sW ,@=p;u u>CW8@@@@@@@@@@@@@@@@@g*p@[u u>CW8@@[u u>CW8@@[u u2CWy@@[u;hu>#W;@@[upuW>@@[u8u#W>@@[u8u#W>@@[u8u#W@@[u|uCT@@@F^h uhuh@@su[>F@@@@@@@@@@@@@@@@gRFk>Fk>@@F^h pupup@@su[>Fk>Fk>@@F^h @u u @@suCFkFF,@@F^h  u hup@@su[>Fk>Fk>@@F^h pupup@@su[>FkF,F@@F^h  u u h@@s@@@@@@@@@@@@@@@@gh u[Fh4Fh4@@hO@%[R@IpO@JX[pF*@@F aX@@1X=F*@@F Fp@@14vF*@@FL 8@@s@)T8@@s@[R@@FJ@ I@@1FL@@@@@@@@@@@@@@@@gE@@FIpahu8@@1FL@@FLX@@1XXaX@@1F@OXv@@F pu8@@1a7@@F@@2Q@@F amJn@I24n]CLnTFLh 4@@F L@Q@@@@@@@@@@@@@@@@gXXXaX@@1L4 hI@@Fp ym @@1F@@FIh aX@@1)I@I@@Fp ym @@1FQ@@FLh @a Ih Whu8@@1X=F*@@FJ@ u8@@1FJCF)p#p@@@@@@@@@@@@@@@@gu@sbp ymu8@@1F@@FLh 4@@FJp @@1FJ@4 hIp dg#8pTspvT@2O@@FR Jg@@F  b @@1 hL@@FLh @@1F@F@@@@@@@@@@@@@@@@g E@@Fp b8@J@FCLd|L*&Jb%Fp 8@I@FEdhF @ u;n@I^FEd*pFJ@ Whu8@@1FR@@Fp 8@bp @ am@@2T)h@@1 @@F @ Fp@@s@@@@@@@@@@@@@@@@@gR)@@1FO@WX*F*@@F  @@1X=F*@@F am@@1XXv@@F am @@1X4 hI@@FR @@F am@@1[T *g@@F @ ^@u8@@1@@@@@@@@@@@@@@@@g)%[T * @@F @#T *g@@F @ %@@F 8 amT8@@1X) @@1[T kd@@F @ 4@@FQ@ R@@1a[]@@F @ Fp@@1=F*@@Fp ^@#@ @ L@@F #@@@@@@@@@@@@@@@@@@gE41F@X)T8@@1FX hI@[X)@@1FX hI@X)#hQ@,4z O@F @d^@@Fp a@@#8  d@@@1a@@FIh d@@@1X)@@1b@@Fp @@@@@@@@@@@@@@@@g a@@dX X@@1d@@F d@@1 @@F @ I@@F d@@1F@%1X)X@@1F& hI@g1X)p@@1F& hI@h1XX%@@2O[@@FR L*@@@@@@@@@@@@@@@@@@gFLX@@1XkI@IF*@@F L,@@FI 4@@Fp %h@@2T)%p@@1*)%8@@1p@@F@@1a1@mTI 2@@Fp &X@&   &h@@1F@v1[@@F d@@@@@@@@@@@@@@@@g44@@1FX hI@71XX#p@@118 ,yp pv@1F * @@F @ gmg@@1X#p@@1F@@FJ@@@1y^@@Fp a@@gX  W)m@@14v hI@@FL @@@@@@@@@@@@@@@@gd8@@2@@F8 L|@@FX gh@@1F@>s@@Fp a@@h@E8F @hQp@@1X]@@F hX@@1X]@@F hh@@1I]@&X)@@1]F@@Fp a@@@@@@@@@@@@@@@@@g*@h8 d @@1X@@F )@@)X )@@1X) @)X hp@@1a]L@@F @ hp@@1a] @@Fp a@@)pIh )@@1F]I hI@EOX)T8@@1F& hI@E@@@@@@@@@@@@@@@@ggs@EQ]R@@F @ d@@Fp )X@*XQp@@1s4 kX@@F T@@FX E1m @@14)E1m@@1a]@@F @ @@F Ep@@1X4 kX@@FR Ln@@F @@@@@@@@@@@@@@@@gs W@@FI *X@k@ @ J @@FL )h@@1XXk@@14kF*@@FL *X@@1*)h@@1Xn *g@@FL k@@1F][@EX]]@@F *@@1X)Qh@@1a] @@@@@@@@@@@@@@@@@gguE[1X)I@I@@F g8@@1]^@@F )@@1[@@F @ Jg@@FX@ #@@2@@F  @@F &@@@1[@@FL &@@1F] hI@Ea1[@@F )@@1*)&@@@@@@@@@@@@@@@@@gp@@14 h@@FL ,@@1*)h@@1XamC @@1X]]@@F  )@@1]R@@F @ I@@F &h@@1@@FIh #@@1a] @@FIh ,X@@1F@Ed1X]J@@@@@@@@@@@@@@@@@g@F  I@@Fp ,Im@,hL ,p@@2),8@@1F]h@@F @ )@@F  %Xu8@@1kF*@@FR Ln@@FX@ kh@@1#@@F @ %@@F 8 &@u8@@1F@Eh@@@@@@@@@@@@@@@@gyzTJC,mR,CuQ#4pR4sp%&pgQ)Qds)@1F@EkX)@@1]F@E,1a]&@@FR@ g@@Fp m@@@1[@@F @ hp@@2 @@F  #@@2X@@F amb@@@@@@@@@@@@@@@@gLmX@@1XkF*@@FR m@@F  ambX@@1kF*@@F J@@FI JFb%T Q)Ts;gQ)Q Ru@1 ]#@@FR Ln@@FX@ kh@@1#@@F X@@1X)T8@@s@@@@@@@@@@@@@@@@@gh,@@FQ@ Qh@@1*]F@@FQ@ mp@@1/pF*@@Fp a@@m8X #@n@ @ J @@Fp d1m@nX #@@1F@E2X) @@1@EsX) @@1F& @@@@@@@@@@@@@@@@g bhI@E4a@@Fp a@@nh d@@1X) @@1@@Fp a@@np @ L@@F #@n8Ih d@@@1F@E8a@@Fp /@/ @ @@Fp /X@/ba@@@@@@@@@@@@@@@@g @ @@Fp /X@/h @ g@@4JJF @d^@@F @ [@@Fp /X@/p gm/8@@1XXp@@@17F@@Fp p@@1^^C@@F gmpb^@|=L2^4>1sX#@@@@@@@@@@@@@@@@g[]p@@14^E@@FJpp@@1s^@@FIh pp@@1F@FFX/@p8E8F @1@ @ p@@@s@^I@@F 1@@1F@F C,a,pQLT&Lp28%sQ7p))&)@1F^L@@@@@@@@@@@@@@@@g@F C,12,p2sQsd%sp28%sQ7p))&)@1F^L@FOC, z,p2d&#&%p28%sQ7p))&)1 O W)m@Wp @ W)m@@1* hI@@F 1m@@1a7@@@@@@@@@@@@@@@@@gg&@FIp @@Fp 1 @@1X^I@@F  )@@F p@@@1X^Q@@F #p@@1p@@Fp a@@2  2X@@1F@FT1^@F1F^W@FX1Qp@@FO p@@@1@@@@@@@@@@@@@@@@g,F@@Xg)&pQ##p&TpW%)Qs&)sJaL s@@1^^[@@F @ @&@@@F J@@FI %@@Fp s @@1L)sh@spO p@@s  @ X@@118 *QpI)gQ)@@@@@@@@@@@@@@@@g g%p&g@1F^@@F @ @&@@@F p@@1^^ @@F p8@@1X)I@I@@F 8 pp@@1QFF@@FX ph@@1/^@@F @ @&@@@F L,@@FI 4@@Fp 4@@1a^b@@@@@@@@@@@@@@@@@g|@Fp s8@4O p@@@1F^@F#a^@@F p 4 @@1F^^@@a2sQspQ))Q8pT#Q)Qs&%p&g)Qs&)4hIh d@@@1% @@F @ h@@1pF*@@F @ X@@@@@@@@@@@@@@@@gWh@@178 n&@@Fp s8@@1XpI@IF*@@FIp&@u8@@2C,4z,p##WQ#pQ))Q8pR&4%T@1XpI@IF*@@FX@ &@u8@@s@)@@1#@@F X@@1*b@@Fp @@@@@@@@@@@@@@@@gggy@@1b@@F @ X@@118 *Q@@Fp s8@@1[@@F @ )@@I FznF I@@Fp u@@@1kbpR&&#Q%uX@ s@@FJ@ 4@@Fp u@@1 b@@@@@@@@@@@@@@@@@g=|@Fp u@u@ L@@Fp u@uX @ d@@2XI@F,1b@F*1X^m@@FX@ )@@s@)@@1#@@F @ %Xu8@@2T)up@@1*]]@@F %Xu8@@1[@@@@@@@@@@@@@@@@@@g4*F @ Jg@@FX@ )@@@2[d@@F  d@@@2y@@FR n@@FJX d@@1F^/@@F  kh@@1*)@@1p@@F @ d@@@14),8@@1a1@@FL v@@@1Xb@@@@@@@@@@@@@@@@@gC2@F 8 kh@vO )@@1F^*@@FO #p@@1F^@F/1*]#@@F  I@@F &@@@1a]b@@F &m@@1Xb@@F 8 ,X@@1X @@F %@@FL &@@1@@@@@@@@@@@@@@@@g|F^1@b@/@I@EL@@F @ I@@1a]&@@F I@@2C,vR,p[T4g#Qsp42p&pT%s)@1I]L@@1XQ%W2p&%2s)4sp)&dpb%Tp #Q@@@@@@@@@@@@@@@@gJn2spTp&pTsp)4#vX X@@1a]&@@FR@ g@@Fp v @@1^E@@F @ %Xu8@@14)Rp@@1J)snu@v|= J&XFp vp@@1L)R8@@1F^7@@F @ ph@@1*@@@@@@@@@@@@@@@@gb2)@@1F^8@Fv2T)up@@1*)%X@@1*^E@F71Qp@@FIh p@@@1Xp@@@2)m@@1a^y@@F @ @&@@@FR@ %vhEg)Ts@1F^z@F;1%^E@@F X@@@@@@@@@@@@@@@@g)@@14kF*@@FQ@ Qh@7 LX@@14^=F*@@FLh @@1X= hI@@Fp 71m@7 @ Qm@@14v hI@@FL 8@@17)78@@1F^;@@FL 7@@1X*@@@@@@@@@@@@@@@@@@gC7F p@@1a7@@F8 L@@@Fp 7X@@1^^C@@F p 4@@@1XXp@@@2)% @@1F@@@FJ@@@1y^@@@Fp 7X@8@L 4@@1F^;@@[XQ%W2p&@@@@@@@@@@@@@@@@gI4%2s)4sp)&dps8g/XLh ph@@14kF*@@F am@@2[)OWspd2Rp&ps8g@2T)@@1*4 hI@@Fp 7 @@ Q@ b,nmF* JJTnCLnvFTF#L@@@@@@@@@@@@@@@@g&bnR] L>uyX]]@@F *@@1a]L@@F @ ICL2dgpuQ)pTs@1a] @@F X@@1a@@Fp 8@|,4,v4hFLh #@@1FF*@@Fp 8@zT44*@@@@@@@@@@@@@@@@gLhFp 8X@%J*LXF JXF%sW)8 X &@@@2@@FL &@@1F@4)@@1F@C*)@@1F@X)]@@s@@@FQ@ 8h@@1*]@@@@@@@@@@@@@@@@g%g#@@F &@@@1 ]#@@F I|@@FI OF@@FIh ,X@@1a]b@@F %@@F &m@@1X)@@1F hL@@*Ws2pQTT)22p&pRRp&ddQ%Tp&)pT2@@@@@@@@@@@@@@@@gF)gs&)2,Qp@@1X@@FX@ d@@F ym@@1X@@FR Ln@@FI ,@y@E8 8@@ Q@J|JR,^b*sLk[L4n|sLn^WITIaJ@@FJX kp@@1F @@F @ )@@@@@@@@@@@@@@@@g>d@@1]^@@F I@@1a1@ 1X)I@I@@FL ,2^@J&J[FF[CT24,@FJ@ I@@1FL@@F @ %Xu8@@2T)Rp@@11)R;n@vd*JFX &@@@@@@@@@@@@@@@@g@ 2bn@ &d|[JnF&Rn2vCJb,n[JsJmF @ k*n@4IbJ F  gvhJb%T #QR#@1kkF*@@FL yh@yp OO@@Fp z@@y  @ kh@@1]R@@F @ @@@@@@@@@@@@@@@@@@g*nFL )h@@1F@F4TI]R@@F @ )@@FL )h@@1X^m@F81*)%ImR8@@1Qp@@FIh p@@@1Xp@@@1F@QX]]@@F z@@1]R@@F  )@@@@@@@@@@@@@@@@g@v@@1X)zX@@1X#p@@1X)I@I@@F g8@@1X^m@@F )@@@1a]L@@F @ Jg@@FL )h@@1F@@ g4s2p%vp%s)8p%s&p28dR&#psQR#)hQp@@@@@@@@@@@@@@@@@@gn2@@FQ@  @@1*u@@FQ@  @@1*@@FQ@ @@1Qa@@F  I@@FQ@ mp@@1*]R@T%^m@@F %Xu8@2z XF @ @@@2]n@@F  z*n@zR@@@@@@@@@@@@@@@@guR*@F  zp@@1XkJ^@2z XFIh uh@@1*)@@14 /W@@F amz8@@2T)up@@1*)I@@1a]@@F @ @@@2OXL@@F  I@@F 8 zp@@@@@@@@@@@@@@@@@g]@1X^m@@FJ@ ;@@@1I] @@FX gbn@JnWbT4^FJTnv*mJ4vpFp ;@@ Q@ |*Lbndv*mInFI,/buL4a&Jb% @ vQ&1&Jb% ]TJ@@F amz8@@@@@@@@@@@@@@@@@@gI1s4 *I@@FQ8 z8@@14 /E@[ 4 /W@@F @ @b4 /W@@F @b4 *I@@FIh amQ@@1y4 /E@@Fp ;X@@1I]@@^2 sp2Q)XpQ @p2pQ##p&%p@@@@@@@@@@@@@@@@g%%g4s,pQp@@2@@FR@ I@@14X%Q@I>[CT24,@FQ@ mp@@2T); @@14I%Tp%s)8@1X^m@@FX@ I@]#@@F  I@@FJ@  @@1F@@@@@@@@@@@@@@@@gEI^hT&%p p%&% 72s@1[@@F @%@@FQ@ p@@11X8@@Fp ;8@@2OXL@@F am@@1XXk@@2T)%p@@1*)@@14 / @@F @ |Jn@IFTRn@@@@@@@@@@@@@@@@g*LbhF |Qm@| @ @b4 / @@F @@1F@@FIh am|@@@1 b hI@@FO am@@1Fb@@FJ @@1I]&p7spvsXp%s)8p%&[;8J @@s@)@@@@@@@@@@@@@@@@g,@@1F]@^X)I@IpX7spvsXp%&% 72sp#QW@1I]&@@[R#&bpg42X T&v%pdQ%s%Q%,a p |X@@1[@@F &@@@1p hI@@F &m @@1X@@@@@@@@@@@@@@@@gL)) @@1a1@@FIh %@@1[@@F  uhQ@J*n>^* L^JRJb FQ@ p@@1*pO%7spQuQ#pQTT@1X%@@1 @@F @ kh@@1*)*8@@s@)Qh@@14@@@@@@@@@@@@@@@@gR) @@1%)I@L@@F @g@d1*)@@2@@F 8 88@@2@@F @g@@Fp | @@1 @@FIh |h@@1 &@@F @ ,X@@1X|p@@1X|hQ@L* b@@@@@@@@@@@@@@@@g8,>F,d>F&RJz/^F[CT2F  ,X@@1F@@g)&)dp%T & R#&bp&g)Qs&%2&a @ g@@F  ,X@@1X88@@1XX|p@@1]#@@F @ 88@@s@)@@@@@@@@@@@@@@@@g^s @@14 kL@@F @ kh@@1*)|8@@1Xam @@1XX|h@@2X@@FR Oh@2*)@@FL L@@1y%@@FL v@@@1X@@FR Ln@@F  O*@@@@@@@@@@@@@@@@@@gubF Ok@@FX Ep@@14)E1m@@1a]@@FL k@@1X)IR@@F 8 88@@1X^m@@F  =bn@I,bRR*O[8F ammp@@1*X@@F amC@@1XX%@@@@@@@@@@@@@@@@gm@@2O[@@FR L*@@F X uh@@s@^m@@FLp@@1#@@F @ @d)@@FR L*@@F zp@@1y)@@FO |p@=h J@@F @ @b4 mn@@FI JWvh4%%#QR@1F@@@@@@@@@@@@@@@@gF2n@@FI ]vhF7g)Ts@1F/@@F Ln@@FI 4@@Fp =8@@1XXamC@@14Xammp@@1a]@@F E1mT8@@1a]@/[m@@F @ >@@@12@@@@@@@@@@@@@@@@@gy@Fp a@@>@  =@=p @ @b4 h@@F y@@FL *h@@1XXamC@@2O]n@@F @@@14 h@@F @ I@@1a]&@@FR@ g@@Fp >@IT,4*n@@@@@@@@@@@@@@@@g z4vd* F @ %Xu8@@14)Rp@@1L),82@,JR,XFp >@@2T)%p@@14 /E@@FL v@@@1%4 h@@F @b4 mn@@FX amQ@@14)>Q@@1s @@F@@@@@@@@@@@@@@@@gL1 @ am8h@@1Fs@1X)>Q@@1] @@FLh amC @@1[@@F @ @b4 mn@@Fp z @>Lh amC @@1F/@@[2vsXpT#Q)Qs&%p&g)Qs&)> Ih @@@@@@@@@@@@@@@@gs|)@@1X]J@@F  L@@FLX@@1XR@@F &@u8@@1au@@F @ X@@118 k hF2d&#@1Fv@@F @ kh@@1*)>8Q@ RbnR]@^FFX)XOJb%IbJ F@@@@@@@@@@@@@@@@gI/ &@@@1X)J1@2F &m@@1X]JhC4gR@1p hL@@FLh )@@@1X]]@@F 8 %Xu8@@1X]J@@F  L@@F O8vhJ)#&p%&@1a1@@FO #@@@@@@@@@@@@@@@@gspp@@1@@Fp s8@>p @ kh@@1R@@Fp s8@L >h@@1y^@@Fp @@ Q@ *|v7^s[F4dd4nz,*mJ[L4/u@@F X@@1X;@@FX X@@2@@@@@@@@@@@@@@@@g>v)I@I@@FI >h@@1XXp@@@2T)Rp@@17),;n@,JR,XFp  @@17)R;n@vd*JFp  @@1a=@>1/^@@@FI >h@  p 8@@1X)I@I@@F@@@@@@@@@@@@@@@@gIp p@@ Q@I*,^Rn4zmJu@@8@ @Q @@@X]pX@@@FX8@@bT@,R@@a7@ RXC@%*FX8@@a7@ g@@aF@n@2n@ EILa7@ RW@@aF@n@2n@#@@@@@@@@@@@@@@@@g4R EaX@m @@@Xp@ Fd@@XW@ [I@@aX@@bT@,R@@a7@ ^@@aF@nn@W %LaX@mdp@@X]pFd @@@XW T@@FE 1) @@XX X@@F@@@@@@@@@@@@@@@@gI^pX@@@Fdv@@@as@,F@@@aa@mh @@XQ @JX 4,L2a p p2vTs hQX@,Q@d@@FFh4^@@a@,Q1m@d@@FE @@F8F4d @/ []%d@@@@@@@@@@@@@@@@gC]aF@,Q1mJ@@F48F4z@u^[[]%daF@,Q1mJ@@FE 1)@d@@FEp7;@Radv@@2ad4^@@aF@m> @ LhQ^@mp@@XQ @Jp@@XX X@@@@@@@@@@@@@@@@@g>4@FX8I@@Ra4v@@@aF@n@@@&4sg4s2pW&p2a ;222a @42@@aa@m& @@XW h@@FE88 @@aX@,Q@d@@FF|v@@@aI@m@@ sX%p&g)@@@@@@@@@@@@@@@@gapQs&) p1X@,F@@@bT@,R@@a7@ RX@@aF@nCRn@Ida7@ g@@aF@nCbn@ EILa7@ RW@@aF@nCbn@#R EaX@m @@@Xp@ Fd@@XW@ [I@@@@@@@@@@@@@@@@@g%y@aX@@bT@,R@@a7@ ^@@aF@nC2n@W %Laa@n@@@Xd@ F%p@@XQ ak I%&p)24#s@X L@@FX8R@E88E@ E,@@FF8h@QLhX@@F@@@@@@@@@@@@@@@@gE87@@aX@,Q@d@@FF8Fh@QLhX@FE v@@@#@@,I@@a@,mmd@@FE pX@@@FEpp [RI@E@E p;@@a1@mmF R#2p|&gp&g)Qs&)@XQ@@@@@@@@@@@@@@@@g7W aT@@FE 48F4#@EOIWCs EIs]%da@,^@@aX@,Q@d@@8[p X@@@FXv@CE p;@@a1@mmF #2@XQ [Rg@@a @m @@@XQ@@@@@@@@@@@@@@@@g&R a@@FE,@@FF8F@Ed4^@@ay@m @@@XQ h@O@8X 4F L2a p p2vTsaCaa@n @JF@ay@m @@@XQ a@@8W |@@FE 1) @@XQ @@@@@@@@@@@@@@@@gRma@@@Rv,I)uTy*XXL@ L@@F)C@@FE88E@@a[@@a@mdp@@XX aL@@FE88@@aX@mm@pF sX%@XW@ @Q @@XQ |@@@Xd,&yE@@@@@@@@@@@@@@@@gQb|I)uTy*y%EEuTy*X@8@ L@@F)C@@FE88E@@ay@m @@@X@ @Q @@@X]@ Fd% @@X@ FdI2@%&WO^%%LaF@nFp@@X%@ F% @@X F&@@@@@@@@@@@@@@@@@g#@@XW@ @@@FJd@@FF41@@aF@,Q1m@p@[@8W a4@@Fd4^@@aX@,^@@a1@mm@dF FQ22W%@XQ a8@@FE v@@@#@@mbR1@^ QCCJFpEpv@@a@@@@@@@@@@@@@@@@g>hF@m> @a8Ca1@mmb@g FgXp&g@X^ X@@@FE,@@FX8@@@Q@]WO &%QWO[%W ROOm%[FW#n%  gWC[&QFOCJF@8@@FE v@@@#@@mdp@@@@@@@@@@@@@@@@@@g X]pX@@@FE,@@FL@vIb@RuLLLhFd8@& 8@@FE v@@a@ 4@@a^@n @@XR h@#@ # @@X@ X@@@FFh1) @@XW@ [RI@@aX@,4@@@@@@@@@@@@@@@@gdzF4b@@Xp @Q @@@XW@ @mmd@@Fd8#@@@@E]gC OQW]%&I@E p;@@a1@mmbTF vX#p&g@XQ bX@@FE 1)@d@gLW@ b @@FXv@@@@@@@@@@@@@@@@gv@I 48FvJX*@#RW &OaF@nJp@@XX h@@FXv@Jp48Fv @@ aF@n @@X@ 4@@FEp8n@@aX@,L@@aF@nIp@b41X@nJ@@@X@@@@@@@@@@@@@@@@gd, FdX/@  aF@nL@@@XX h@@FE881@@aF@nL @#@11@,Lb|@R,,u8 IvXpFX8s@@aa@m& @@XW #@@Fdv@@@a^@n @#1@n @@XQ #@@@@@@@@@@@@@@@@@gm@Fdv@@@aa@np@@XQ # @7L@ FdR@I@@a@n @@X@ Fd @@@XX aL@8L@ b @@F)C@@FX8y@@a^@n @@X@ b8@@FFh1)#,@@FEp4@@@@@@@@@@@@@@@@g^p@@a[@@a4@,Q@d@@FF41@@aF@nO@@#d1^@nO@@XW #8@|@8 b @@FE p;@@a1@mm#|F T&@XQ d@@@FE 1) @@XX aL@@FE8y@@@@@@@@@@@@@@@@@@g haX@,4@@aa@n @@X^ X@@@FE 48Fvbn@n]agCgCC^pEppQ8@@FXv@@E8y@@aa@np@@X@ 4@@FEp8n@@a @m @@X@  [I @Qd@@@@@@@@@@@@@@@@gu,&yFXyC@Lp4v@@@aF@nL @dTCa@,,@@@XQ h@@FE 1) @@XX X@@FE8yF@@aX@,4@@aa@n @@X@ FdR@L@@a/@m @@@X^ Q8@@F@@@@@@@@@@@@@@@@gmJX7z@@@Q@E7RFg#]%gQW]%&QpEL4d@@aF@nR@@@X1>@>F&%#J[R#@@m @@XW@ T@@FXyI@R@F8@@b@,g@@aF@n@@@@@@@@@@@@@@@@gRbn@z[%W ROO [La@,4@@aF@nRp@@XW b@IJLW dp@@FFvb@Rd4^@@aF@m> @d,1^@n@@XQ dd@@@Wd&T^LI)uTy*y%EEu@@@@@@@@@@@@@@@@gTy*@8@ @Q @@X  [OI8@k @FXy@@aa@m& @@X@ F&TQm%@@F4v@@@a@,F@@@a^@m p@@XW %L@@FE8yT@@a^@mh@@@X^ X@@@FX@@@@@@@@@@@@@@@@g y@T@F8@@b@,g@@aF@nbn@z[%W ROO [La@,I@@aF@np@@XW b@@FXy@pE@1)C@@FXyX@E8y@@aF@n@% 1^@n@@@@@@@@@@@@@@@@gWRp@%T1y@m @@@XX @@Fd4^@@aF@m> @%X1^@nW@@@XQ %d@@@XdvET8,ITE &vLu]vTy)LF|Edy)]@8@ %8@@FEp24F4vp@@X Ch@I@ @@@@@@@@@@@@@@@@g8Xp@@X]@ @mm ,@@F 2 @@a@,mm8@@F|pL@@a*@,I@@a@,mmdEL%&[p%QdpvT2@X@ [nT@Rhu]| %LuFp8@@aF@nX@@@X@ [Ty@@@@@@@@@@@@@@@@g4J@XFL@@FE p [[@@a1@,Q@d R@@aF@nX @@X@@@Xp@ Fd@@X]pFd @@@XQ &L@@FXya@X@8@8@@Xy%T@)Xu]vTy)FJ I,u@@@@@@@@@@@@@@@@gI)b@  Ch@@FE 1)&X@@FE@pz@@aF@n@@@X@ [Ty@@a*@,I@@a/@,mm ,@@FE,@@FXy@XpFL@@Fp [[@@b@,z@@X%@ Fdz@@X @@@@@@@@@@@@@@@@g* &k R)4p#v@XW@ & R@I@@a@@b@,y@@@XXp@@Xb@ I@@FI1) T@@FIL@@FX@Ih@ Q &d@@FX7@@aF@,2@@XQ &h@@FXykT@QLz]EFXy@@@@@@@@@@@@@@@@gkF,T@QdX|%FEp@@a @m @@@Xp@@XW@ #X@@FF8@@a^@n[@@X@ 4@@FEp8n@@a%@,Rg@@a4@,n@@aF@n @&dX@n[pu@@FEpp;@@as@@@@@@@@@@@@@@@@g>b@,mm ,@@FFyp@24F4vp@]@%@,I@@a@,4 @@X Jh R@/ E 2*CTap@@XW@ [ @@aX@,m u@@FEpsTF4u @@Xdp@@XX L@I2@,Q@@@@@@@@@@@@@@@@g/, d@CIL Fd @@@XQ ]@[I@ E y/CTap@@XT @@@F44^@@a@,^@@aF@m4@@&,1X@,I@@as@,mm ,@@FEpuR@@aX@,I@@a@mF@@@@@@@@@@@@@@@@@g1m@XX gL@@FX7 @&p1X@,4@@aF@n1m@d@I%L p J2],J8@)Xu]vTy)FJ I,u FX2/@]8@@FEX24F4v@@@X@ C @@F)d@@Fdy@@@@@@@@@@@@@@@@gazu@@a*@,I@@a@,@@@X#p @p@@FFL@@F|@@F pL@@a*@,v@@a@,mmQL@@FE p7@@b@@#O@,4Fup@@X Cd R@]pEppyCTap@@X @@@@@@@@@@@@@@@@g&z @@Fdyu@] Xy7@@)8@,d @@^@ I@@Fg 2I@^E 1) @@XW@ C @@FFyu@@aF@,& @ghX@,I@@a@mQ@@@Xp@@X]@ C@@F 2R@@@@@@@@@@@@@@@@@g|n@a@m @@XQ Ih@I;@ ]@ F&@@@XQ ]@@I=@ ]@ F& @@XQ ]@@I@ @  [ @@a4@,F@@aF@nQm@d@J@@ @  [@@a4@,@@aF@nQm@d@@@@@@@@@@@@@@@@@g/JJ@ @  [X@@a4@,TF@@aF@nQm@d@J@ @  [@@a4@,T@@@aF@nam@d@JC@ @  [RQ@@a4@,TC@@aF@nQm@d@JL]@  [[@@aX@, p@@X@@@@@@@@@@@@@@@@g@, FdI@@@X]@  [TyI8@QL= FIL@@F1)O4@@FXy)F4@hT1X@mmX@@F1)hX@@FXy)F4@h14@,@@aF@nQm@p@JIL]@  [n@@aX@,@@@@@@@@@@@@@@@@gC8 p@@X]pFd@@@XQ hh@@F48F4FR^@;OXa1@,b@@a4@mm]g ,pvhhCb@@a4@, @@aF@nQm@d@JLL@  [d@@a4@, @@aF@nQm@d@@@@@@@@@@@@@@@@@gdJLX h@@FE 1)g8@@F42*F4@@X]@ Jh[I@@as@,umL,@@F2vF4@@Xp [@@aa@,4p@h|CaX@mm@d@@F1)[|@@FXy*F4@)@1X@@@@@@@@@@@@@@@@@gg&mmd@@F1))@@FXy)F4@)1X@mmT@@FEpp;@@aF@m@)L1X@mmp@@FXzRF4@)1X@mmQL@@FXzRF4@)T1X@mmLp@@FXzR@@@@@@@@@@@@@@@@g uF4@)X1X@mm^@@@FXzRF4@)1X@mm) @@F1))d@@FXy)F4@)h1X@mmCL@@FXzRF4@),1X@mmd|@@F1))p@@FXy)F4@)41@@@@@@@@@@@@@@@@ghTa@n]@)8CaF@,& @ ,1a@,pp@@XQ Ih@J@8@ C@@F1)@d@@F1)T@@FLu@@@aF@m@*@1 @mQ@@@Xp@@X]@ C@@F 2R@@a@, p@@X@ @@@@@@@@@@@@@@@@gu T@@F pL@@a*@m @@Xb@ @d@@FFhp7@@a@m @@XQ Ih@JaL Jh[I@@aX@,*am@d@@FEpsTF42p@@X@ X[I@@a@,um X@@FE 1)L@@FF@@@@@@@@@@@@@@@@gs@@aX@mm XEF%Tpv@X]@ Fdm@@XQ &d[I@h F7J@@aF@m@@hhR@@aX@,@@@X#p @p@@FEp24@@a@@b@,C@@@XXp@@X@ *L R@@@@@@@@@@@@@@@@@@gWa%@,m@@@X[p Cd R@@aI@m2 @*Lh/@b)@@@X p*T@@F|J&@@ /@ @@*1X@mW@@XW@ * @@FE8z)@@aX@,&T@Qhy4FEpp7@@aF@n^@L@@@@@@@@@@@@@@@@g4,1@,/@@X Jh@@FE 1) EF)gQ)%@XW@ C@@FFyu@@aX@,*@@a@,pp@*hCaF@n*p@@X@ F&k@@@X * @@FEp@@a @m @@@XW@ @Q @@@X@@@@@@@@@@@@@@@@@g4| * @@FF7 @@a4@,m@@aF@m4@@* @/@ @@*81X@m @@XW@ *|@@FX4@,@Fu@@aF@m@@k1a@m@@XQ k@JsL@ Fd@@XW@ *|@J4@@@@@@@@@@@@@@@@gaL@ T@@Fdu@@@a&@@b@@b@,d@@X[p TT@J2@8X kT@@FE,@@FEpz/@@a@mp@@XW@ TT@@FE 1)@p@@FXzv@mpEd@@aF@m@@@X@ @@@@@@@@@@@@@@@@gpTT@@F8)R8@@FL2,k k1@E)&W ]g g %FOO@WIgOa@mT @@X@ Fd)p@kXCa@mF@@XX gL@@FX4@@@Q@Ez[O W FWO F%Q@@@@@@@@@@@@@@@@g7[g@L2,kdk@@hQX@,X@n Fm@@aF@nnp@@XXp@@X@ R, R@@b@,X;@@aF@n/@@k4CaT@@a*@,I@@aF@nn @kpCaX@,E@@a@,m@@@X@@@@@@@@@@@@@@@@ga #p ]@@FEp24F4@@XOp Fda @k8Ca @,m@@@X @d R @@aC@,4@@a@ @@XQ@@XQ R@I@@ay@,mm@d@@FXz>@@aF@n/@k,Caa@n/p@@X@@@@@@@@@@@@@@@@g ; FdR@XF4@@X@ d@@FL@1) Fm@d@@FEp24F4F@,@CaX@mJ1m R@ICTap@@X]@ F% @@XR Fd @@@XQ ,@@FIL@@FE p [@@aa@mTp@@XW@ 8[@@@@@@@@@@@@@@@@gaIRg@@aa@m @,C#@np@@@X@ F%1 @@X 4@@FEppnF4@@X@ F&p @@XW@ 8[L@@aX@,g@@a@, amJ@@FE 1),L@@FELv@@a*@,[@@a@@@@@@@@@@@@@@@@g]%@, @@XX h@@F@ICT#@@Xp F&1@@XQ@@d@1 @@XQ ,@, hQ%@,Qd@@F,d;J@@aX@n2p@@XW@ @d@@FXpI@2p@hpL@@@Q@IF%@@@@@@@@@@@@@@@@g)8 aW WRQIgC EJ WEQC[C EJ W%[&g OC &Qm8@@FEL2p@@aI@nm@@X [)@@aX@ns@@,41*@ns @,|1@ns @@XQ m@@@FEp24F4d @@X@@@@@@@@@@@@@@@@g1h FdRg@4E uEF4u@@Fp [RR@@aF@n4 @@Xs m@ L@ [RR@@bT@,Tn@@a@mT @@X [)@@aI@nm@m1X@,mmI@@FL@1)4@@@@@@@@@@@@@@@@gCk@@FX;O@4@E ;L@@a@ s@@aF@nu@@@X Fd#@@XW@ ,p@@FFh;@@a@,mmI@@FFT1) )p@mT1X@mQQm@d R@@a@,4F4d @@Xs mT@@@@@@@@@@@@@@@@@@g@FEdp [RR@@aF@n4p@m1X@mW@@X F&u @@X X@@@FEppX@@@FE87@@aa@n/p@@X@ FdR@I@@a@ns@@@X[p X@@@FX; @/2a8@@FFvp@@@@@@@@@@@@@@@@@gd@aQ@bs@@@XR k|@@FE,@@FE ;L@@b@m[ @@XW@ 8@@FFh1)m@@FF,pn@@b@,C@@@X F&v@d@@F1)8[I@@aa@m@@XX h@@FE ;L@@@@@@@@@@@@@@@@@g1=@a*@,I@@bO@,@@X[p 4@@Fdz@@@Q@F Q&  C E C%gW FWp8@@FE,@@FE 1)md@@FFh4@@b@,F@@X @@FEp@@@@@@@@@@@@@@@@@@gF7a @m @@@XW@ @Q @@@XR gL@@@W|d]L&I| T^v,^LE%E)mIFyL# @@XTp @@@Fdvy@@aa@m& @@X@ X@@@FL@vIJ8@QhuLh[@ p@ Fd@@@@@@@@@@@@@@@@g, @@XW@ [RR@@a@mb @@XR [d@@FFL@@F1)IX@@FE v@CTap@@X@ F&p@@XQ m,@@FE 24F4d @@XW@ L@@FFX@@FFhv@@@#@@mb@@X @@Xb@ @@@@@@@@@@@@@@@@gdT @@FFh8E@@aa@,X @@XW b@ [@ @ [RR@@aF@nv @@]R4#Tp74s&%p#Q%W4QWpv&)TF@@a@,,@@@XR F@@FEpsTF4d @@XTp 8@@@@@@@@@@@@@@@@@@ghFX;@@aX@mR @@X]@ FdR@I@@aa@mL@@X@ [RR@@a@mW @@XW@ |@ L%@ F&7@@Xd@ FdR@I@@aF@n7 @@X@ @Qbn@^I&TaF@n7p@m81@@@@@@@@@@@@@@@@@gbF,[]@@aF@n7p@@X@ @Qbn@z^I&W&WgITbO@,d@m|@m[ @@X%@ F&8@@@XW@ @g  &gpgQ)sp2s@XTp |@@FE@Rd@@FX;a@@aX@m1p@@Xp@ @@@@@@@@@@@@@@@@g#Fd#@@XW@ [X@@aX@mW@@X F%yp@@XW@ @mm @@FE 1)@@FF|pRd@ aL@ [RR@@bO@,d @@X%@ F&8 @@X [X@@a#@@aF@,Q1m@d @@@@@@@@@@@@@@@@g;|R@@aF@n82n@b gOEQRdaF@nyn@g E %XaF@nyRn@ R^8pE,@@FsTF4d @@Xb@ X@ &@ [p @@@FX;g@z@F|4p@zE pnh@@FI1)n@@@@@@@@@@@@@@@@g ,@@F)C@@FX;g@@aX@,g@@k,@mL@@@XW@ @@ gLp@@XX @@FFT24F4v@@@XR F@ %@  L@@FE 4=@@a*@,[m[T@RX&|uIpFEpv@@@@@@@@@@@@@@@@gv/@CTap@@X 4@@FE 4=@@a@ %@y]|LuI| LduFhyd8 FEpp^T@@FL@1)@d@@FFh1)n8@@F@@FLv@@aF@ny @nX@,umI@@F|sX@@@@@@@@@@@@@@@@gF^@@bT@,[b@@a&@@a*@m @@@XT@ Xd@@FX;/@@a@,Q1m@d@ *L>@k E C%a@,mm h@@F1)IX@@Fp1)mm&%2sQ%s@XQ /@@@F1)@@@@@@@@@@@@@@@@gCRp@@Fp1)/@@FX;2@@aX@,%[T@h4|&24y),4|J FF|4p@@aX@,mm h@ s@ %@ F% @@XW@ [@@aX@,4F4v @/2T@,Tn@@a/@mL@@@@@@@@@@@@@@@@@g@@X @@Xd@ FdR@I@@a4@,g@@aX@,4F4v @@X%@ F%k @@X 4@@FEpp [@@aF@nz@/@J@ RXT@%*FX;u@@aJ@ RWC@QmIT84T FX;@@@@@@@@@@@@@@@@gas@@aJ@ ]C@RE]||IzdpFX;s@@aJ@ Q[T@QTLpFX;v@@aJ@ ^[T@Qm&LpFX;v@@aJ@ [7C@Q4EJ, FX;8@@aL@,[m@@aF@n>@@X@@@@@@@@@@@@@@@@gg@ F&; @@X[p @@@F@@FX;zF4)p@/d1L@,X;@@aF@n>am@d@@FI1),@@F1)C@@FX1F4)p@/X1X@,g[T@Qy)XIm)FX1F4C@@@X@ FdI@@@@@@@@@@@@@@@@g[=@/h1/@mL@@@X]@ [RR@@b@,u @@X@ [@@bT@,Tn@@aF@nz@@/L@,[@@aF@n>amJ@@FE 1)@@FF|4p@@aF@n>amJ@ 8L@ F&;@@X@@@@@@@@@@@@@@@@g,Q /h@ uL]@ nh@@FL24F4v @@XQ /@ /L @@@FX;gF4C@@@]2s2p))%ps&p&)vQ)Tp)aLCb@@a*@m @@@XW@ [RI@@aX@,RX@@@@@@@@@@@@@@@@@@gu1a@,4F4b@@XR aL@@@Xdv%&,EE&v)I%,E*]*LJhF@8# @@X X@@@FEp24F4b@@X@ @mmd@@FF7 @@aI@n @@]d&u2p&T@@@@@@@@@@@@@@@@g)p%s&p&4sg4spR4)2@@a@,,@@@XR @@FE@1) @@XR @@FL24Fu1@@X]@ /,k I#TQpv&)T2@Xp /p@@FEX24Fuup@@XW@ [RIT@TI&@@@@@@@@@@@@@@@@g]1| %L,Ly,Ey,@FFT;=@@E 4p@@a@, amd| R@@b&@,#@/81=8@4*LIdh>LImX4^L,LvF F4u]@@a @n@@@XT [WE@@aa@np@@X]@ [@@@@@@@@@@@@@@@@g*WE@@b@,@@Xp [WE@@#@/@@@@X /4@@FFvp@R4mE%%Em8pFFT1) Lp@p@y@,mmd@@FX;|@@a@n@mFOC [La%@,mm]@@F@@@@@@@@@@@@@@@@g&d41@@L@EF[O %QsRa8@@FEp24F4b@@XX [@@@FE u]@|pFh1)^@@FEppnF4C@@@X@ [RI@@bT@,Tn@@a*@,W@@a@, am@d@@@@@@@@@@@@@@@@g,@@FE 1)p@@FEppn@@aa@m @@XR 4@@@4mFXuL,=n84]nudvL)yIm,z]n4&4L,ImLvpJ# @@Xp@@X@ FdLp@@X /4@@FE@1)C@@Fd@@@@@@@@@@@@@@@@g&vp@@a@,mm@pk L%&[pTQsQpvT2@X [R @@a*@,Rg@@a#8@|y,v| %L,FJTpF un@@a*@,p@@a@, bn@IOXaX@,1@@a*@mW@@Xp@ [@@@@@@@@@@@@@@@@g4#L@@a@, am@dg C#Qv@X@ 8[O@@a@, a@d R|@Iy,&v)z] FFu@@a%@,mm4@@Fdvp@@@Q@F]& Q a R/ %W&W%#[ Q[@@@@@@@@@@@@@@@@gh@p8@@FE |J8@Qu*mE FEp|E@@aX@, @@X#p 8@@FI1)pX@@FFX@@FFL@@FE 1) T@LE@8@ 8@@F4|E@@#@/@@XW@ [L@@bO@,d@@@@@@@@@@@@@@@@@@g)#X@ [L@@bT@,@@a/@, @@XR pL@@@y4uL4uJTbL# @@X@ p@@FFT1) @@@XW@ p[CTap@@Xs R@I@@aE@@aF@,Q1@d@@@@@@@@@@@@@@@@@@g7aFp @ICT#@@X FdR@@@ J@, mp R@@aE@@#@,Q1@p@@Fpd@@FX|J@@, @@aI@,h @b21W]g2s L2,ppk@@@1 @@XQ J[I@C2a|L@@@@@@@@@@@@@@@@gg, @@ m@,y@@I4C /@#C @p|pm@, @@@#g4%XpQpR%Q)8pQ)Tpp @pv&)T2p&%#81@Cb@@aX@,QI@@F1|R@X,h&|F,I=ITvL@^4vX|@LF,JT@@@@@@@@@@@@@@@@gX1@FX1 @1LhQ@/E@Q@EkJI&%[ aFO@Cg %E aF@,Q1@d@@F,d|T@R|,4|I=ITv@FFT1)#E @@Xp 8[CTap@@Xs R@I@@kI@/EpQ@EC@@@@@@@@@@@@@@@@g; &Q& W[La*@,Ih@Rzm,ymIuFE@1) Rn@E#JI&%[@ #&[[R aaF@/pQ@bWO&[Xa@, amd|O#)p#Tp)#&pvT@[ 1@@FX@@@@@@@@@@@@@@@@gh1 @@Xp@@X FdR @@a@, amb@ R@@#@,Q1@d@@Fd|@@ m@,#@1 C m@, @@h2@@a@,,@@@XR h@@FEX24@@aa@/@p@@XX 1@@@@@@@@@@@@@@@@@@@gRmFE 1) Lp@@XW@ /4@@FFT24@@aI@m @LLCb@@aa@n]@@X@ C @@F1)J@@FdsC@*pE py@@a@mL@@@X@ FdR@I@@a@,@@@Xp@@XX @@@@@@@@@@@@@@@@g =@@FdsC@@@Q@ECIWO%OIgO@,Fp8@@FEX24F4z@@X@@@X @@XXp@@Xp@@X]@ F%p@@Xb@ C R@@a/@, amd|#&QTp)#&pvT[@X [@@@@@@@@@@@@@@@@gk[)@@aI@np@@a2sQbp&%s)&#pRQ2Tp&%pg)T%g@2@@a@,,@@@XR g@@z@ @ @Q @@X%@ FgF@@XW@ [n@@aX@,p@@X%@ FgF@@XT@@@@@@@@@@@@@@@@@g|E [n@@aF@/F @@X Q8@@FE p;@@a@,^@gpdyp@CF E pQ8@@F|2R@@bT@,[]@@a#@@aF@,Q1m@d R@@aF@n @@XQ d@@FX8@@@@@@@@@@@@@@@@@g@aF@/Fp@@XQ @@FX8X@@aF@nC@@@XQ @@@FX7y@@aF@/@@@XQ 14@@FX8d@@aF@m&@@XQ dT@@FXv%@@aF@mhp@@a24R2)gsp&@@@@@@@@@@@@@@@@g,g)Qs&)p&TpW%)Qs&)1,Caa@m& @@X@ @Q @@@X%@ Fd% @@X Fdbp2@aW FWLaF@/ @1|CaX@,p@@X  [RQJ8@Q*4FXv@@aX@,Q@d@@F@@@@@@@@@@@@@@@@g #Fhv@@C@Ep24F4@@X@ @mm@d@@FI1)IX@@F1)@@FX|a@@a[@@aX@m @@@Xp@ [I@@a@,mm@d@@F sX@@a@,mmJ@@FE 8u@@@@@@@@@@@@@@@@@@g@aF@,Q1m@p@Lb@8@ ,@@FFh24F4)p@@XX F@@FE 1)2L@@FF|24F4)p@@XTp [Rg@@aF@/ @@Xp@@Xp@ [I@@a/@m @@@X@ F&=p2@]EQR%W @@@@@@@@@@@@@@@@gL a*@mW@@Xp@ [I@@#@@,I@@a@,F@@@ay@m @@XQ |@L^@8]pF&;2@ RaF@/p@@XW T@@FFvb@@a^@n @@XQ 1|@La@8@ [I@@@@@@@@@@@@@@@@@g#s@#@@,I@@aF@/@@@^RW%pR#&bpQ%Tp&dgp2spdQ)b)1pCaX@,p@@X  [T@Q%LI)pFXv@@ay@m @@X@  [ T@Q,%yhpFEpp;@@aX@@@@@@@@@@@@@@@@g1n@,^@@a1@mmd,EgXp)@XQ |@@FXyE@@@Q@>]F%W]%gRaE p;@@a1@mmIg I)gQ)%p&g@XQ |@@Fd4^@@aF@mgp@@@aX@@@@@@@@@@@@@@@@gCp@m @@@Xp@ Xd@@FEpv@@aI@mh @,hQ[@@a%@,Q2@@FEp|%F7I@u@@FL81 @@XW@ 8[O@@aX@,Q@d@@FEp2#@@a@,&p@@XW@ XX@@FEp@@@@@@@@@@@@@@@@g=Q;L@@a@,,@@@X@ Fd@@XW@ R@@FEp2=@@a@,/Qm@d@@FE vI@@a@m @@@X@ @@FEp4^@@aX@,X@@a@mk@@X@ FdFp@@XW@ ]X@@FE @@@@@@@@@@@@@@@@gW|&@@a@mJ@@X@ 2@@FEp7&@@aX@/J@@@XW@ @@FE |)@@a@my@@X@ F%p@@XW@ Rd[I@@aX@,QCL@@FEp;=@@aX@,L@@a@n @@X@@@@@@@@@@@@@@@@@gv 2h@@FEp|k@@a@/ @@@X@ &|[@@a@mam@d@@FFT1) Fm@d@Lm@8@ R,[X u@@FI1)8@@FEp4kF4F@d R@@#@/ @@XQ J@@L&@,@@@@@@@@@@@@@@@@g@ Rd[I@CIp E 7&@CJ@ E 7@CJ E 7%@C OXQCTd@2h|n@,muC@Cp@,@ 2| RC@)EFT||d%OIF*W@FE |pCTa|1@2QFF%1pE|@4 @@@@@@@@@@@@@@@@gTR@TT4u,,EFT||d%R=L p@d@@F|@I@CI@|1@@* |@4@@ /@ @@*|@/@ @@TLp/@ @@TT@/@ @@Xh@/@ @@Tp/@ @@R@p/@ @@ @@@@@@@@@@@@@@@@g[2p/@ @@LC /@ @@,C /@ @@Thp/@ @@p/@ @@]W|@4@I@|@4@Op|@4@J@|@4@a|@4@Xp|@4@Wba|@4@O|@4@@@@@@@@@@@@@@@@@gFmR@|@4@4ba|@4@Q |@4@ |@4@F|@4@|@4@CI@@|1#I@ X2@/Jpu@@F8|,CTap@OL@m2@@@X# @ L psR@@@@@@@@@@@@@@@@@g4aI@@ /@#L1@d@T@,Q QT@C/@,@ C R@@u@E4sXh@TduI4TL,y*R4@T  ) @p@8  8@I^@,# s R@@, 8s7CTap@4h/@ F@@]XC /@ @@@@@@@@@@@@@@@@g]Fp@RdCaX@,Q1m@d@@F|Eg@@ m@,y@@sT1@, @u@a@  Cd@FQ@ @ Q8[I@bE v@@>pE 4p@;@E 4kCTap@d1X@/ u@XL# sXRk@@@@@@@@@@@@@@@@@g;Cu8|7 @,8X@nv@u@L@ @ 8@F@@,@ @@F4un@ E 1F4@@X ps g ERW%@X  p@C^@8 pC@LkJ T 4@@ m@,C@@2ph@@@@@@@@@@@@@@@@gun@,muC@@F4ps@ 4pI@CEp4k@pXyh@Q@E|p4@ |p4@C |p4@Cp|p4@s@ |@d@ XJ  h@ =L p Lp@ @C /@ @@@@@@@@@@@@@@@@g,R@I@yE 1@@ m@,d @hQX@,Qp@@X  b@@&L@ @@F42R@@ |L|h@Qh4*TT8 F|L=|@Qd,&yF|L>|@LvEOL,4T8g@F|L|@RvE@@@@@@@@@@@@@@@@g;OI)7@F| @|@EX|%OL,4T8g@F| |@RX|%OI)7@F|T@Q,m&4v@F| |@QEy,y F| CI8@Q,%yhpF| I8@u@F| EI8@QTy)IF| F8@Qhy@@@@@@@@@@@@@@@@g)s4F| I8@Q*4F| |@T@F| I|@X@F| J|@F| |@ F| L|@[@F| C@Q F]F| |@%uF| O|@huF| |@%@F|@@@@@@@@@@@@@@@@ggW Q|@)F| R|@h| F| |@%|pF| TC@Q&I8vTpF| |@u)pF| I8@QTyhy)F| W|@=I)pF| XI8@QT)mI@F| h@QIzdpF| J8@yv@@@@@@@@@@@@@@@@g/FF| [h@QvFJF| h@Q]&FXuF|]h@Q]IvXpF| ]h@QL,upF| ^h@%I F| @ | @ | a@W@| b@| #@p| d@@@@@@@@@@@@@@@@@gv | %@L| &@a| g@| h@ | )@2a| *@F| k@C[@| m@ | n@p| /@*| p@8p| 1@C |@@@@@@@@@@@@@@@@g,v s@z| 4@C]| v@)@| 7@&p| 8@@| y@Tp| z@ p| ;@h@| |@ @| =@ | >@ORa| @Oba|C)@@@@@@@@@@@@@@@@@gn |@@Q@|@Q |J&@[|@C pOX CTy@u8@n@,  @d@F=L p8@@F|E@@ /@#a @@X p8@@F|@@ /@#b@@@X p8 @@F|@@@@@@@@@@@@@@@@g[I@@ /@#b@@X p8h@@F| @@ /@##@@@X pgp@@F| @@ /@## @@O@,C@@@hO@,d @8|@O@, @@y@C O@md@|@8Cp @R @@m@|v@@@@@@@@@@@@@@@@gO  )p@T@O@,#@yhO@md@p@R@ Cp @JCp @R@I@C%@@|2R@C%Ra@|v@C% @|s)@@> @|s)@@>@|s @C%p@|s @@@|s@C&@@|@@@@@@@@@@@@@@@@g&7s@@>p@|sX@C&@|sX@@ @|s@C& @|s@@@|2Q@ @|s[@@@|4y@ @|un@@1p@|p@@1ba@|7W@@2a@|2I@@a@|7E@#@@@@@@@@@@@@@@@@gQ@|p@@n @|4@C&p@|4@Cg@@|sL@CgRa@|sL@@>@@|7 @Cg @|7 @@ @|ps@Cg2a@|ps@Ch@@|zX@Ch@|zX@Ch @|yO@Cap@|yO@@@@@@@@@@@@@@@@@g|WChp@|v&@C)@ @|v&@Ca @|4z@C)@|y&@C) @|v@C)2a@|8 @C*@@|y@C*@|8%@C* @|8)@Cb@|8,@C*p@|8@Ck@ @|u@Ck@|>@@@@@@@@@@@@@@@@gI n@Ck2a@|>p@C,@||@Ca@|>2@Cb@@|>s@Cm@@|>u@Cm @|>7@Cn@@|>y@Cn @|>;@C/@@|>=@C/ @|>@Cp@@|@Cp @|C@k@@@@@@@@@@@@@@@@@gvp|@C1@|F@C1p@|@C2@|J@sp@| @Cbp@|L@Cs@|@Csp@|@C4@|R@C4p@|T@Cu@|@Cb @|W@C#@@|X@Cv@@@@@@@@@@@@@@@@g/8@|@Cvp@|@C7@|^@C7p@|pW@C8@@|a@C8ba@|#@Cy@@|%@Cy @|g@Cza@|)@Cz @|k@C;@@|m@C; @|/@C|@@|1@@@@@@@@@@@@@@@@@gC| @|s@C=@@||@C=@|p=@C= @|7@C>@@|y@C> @|;@Ca@|=@C @|@@@@@O@W@@@ I O@W@L@@@O@W@T@a O@W@@@@@@@@@@@@@@@@@@gz| O@W@d@ @O@W@,@C# @O@W@p@CI O@W@8@C#@O@W@|@ O@W@ @O@WL@E O@WT@E @O@W@F@E O@Wd@Fa O@W,@@@O@W4@@@@@@@@@@@@@@@@@g,,a O@W|@@@O@W@ @O@WL@/1 O@W@I@O@WX@IpI O@W @@@O@Wd@J I O@W,@@pE O@Wp@ @O@W8@ pI O@WC@@L@O@@@@@@@@@@@@@@@@@gy^WC@LpI O@WC@ I O@WCX@ 1 O@WC @I O@WCh@Ca O@WC,@O@@O@WC4@Oa O@WC|@@@O@W@ @O@WL@Q@@O@WT@Q I O@W@R@@@@@@@@@@@@@@@@@gz @O@Wd@Ra O@W,@[ @O@Wp@@O@W8@p@O@WE@@TI O@WE@g@@O@WEL@@I O@WET@ @O@WE@@@O@WEd@ @O@WE,@W@@O@WE4@@@@@@@@@@@@@@@@@gmhW E O@WE|@X@I O@WF@&Q O@WF@XpI O@WF@d@O@WFT@ @O@WF@@@O@WFd@a O@WF,@[@I O@WF4@[ @O@WF|@ O@W@@1 O@@@@@@@@@@@@@@@@@g8W@@@@O@WL@]@@O@WT@] @O@W@^ O@Wd@@2@@O@Wh@@n O@W,@@I O@W4@ @O@W|@ @I O@W@ I O@WL@a@@O@WT@b@@@@@@@@@@@@@@@@@g1FI O@WX@bpI O@W@aa O@W @bI O@C@b I O@@d@bpI O@@p@#@@O@J@#I#v@IFhv@# @@OT@= C *L,Fh2p@ R@OX@C@ L*@pFhv@@@@@@@@@@@@@@@@g|*@# @|X= g* XFhd@ L/@&4X @@ @Fd^@bQ Q ud @@@4#pRI*TF,d@ @Fd^@bQ WI@udd@@@4#pRI*yF,dp@ @Fd^@bQ Q=@udh@@@4#pRL*OdF,%@@@@@@@@@@@@@@@@g|L@ @Fd^@bQ R@ ud,@@@4#pRL*O,F,%p@ @Fd^@bQ R@udp@@@4#pRI*O4F,&@ @Fd^@bQ T@ud4@@@4#pRI*gpF,&p@ @Fd^@bQ RC@ud8@@@4#pRI*LF,g@@@@@@@@@@@@@@@@gg@ @Fd^@bQ Q#@ud|@@@4#pRL*LF,gp@ @Fd^@bQ R@@u%@@@@4#pRI*h4F,h@ @Fd^@bQ Q]@u%@@@4#pRI*ypF,hp@ @Fd^@bQ Q|@u%@@@4#pRJ*O8F,)@@@@@@@@@@@@@@@@g^@ @Fd^@bQ W@u%L@@@4#pRL*zF,)p@ @Fd^@bQ WQ u%@&h a%8@IT @,F @@CRO@4 ,b bukJh@& I m@C@@) FvQ Q u%@p@@@@@@@@@@@@@@@@g;p h@@@4#pRJ* TF,k@@ @Fd^@bQ Q# u%@@@4#p C[dFh1@2n@IpX E 4@@@Q8FamdTCTh W @%@@8Ehp@@@ |@#v2J* TF,,@@ R@4X@@@@@@@@@@@@@@@@g2I @@ @Fd^@ Qh[E@uE*C@IL @,F @@CRO@QhF)@22@@@Q8IE@ua&CX@@CRO@4 ,b buk @hpI m@C@@) FvQ Q u%*@Rp h@@@@@@@@@@@@@@@@@@@gd^4#p C[hFhm2v@JX E 4@@@Q8IE@uE*C8@@CRO@4 ,b #k @gI2O@4 ,b #k d@d@I2O@4 ,b#k h@h RO@QdF* 2;@@@Q8@@@@@@@@@@@@@@@@g%XFamdTCTW ^@@%@zQ8FamdTCTh ^ @%4@zQ8FamdTCTh @@%vJFQ8FamdTCTW  @dvQ8FamdTCTh @@%J@nQh@ u2 y@ W@@%@nQh@@@@@@@@@@@@@@@@@g*# u4 y@ WQ@@%T@nQh@ uv y@ Q @%@nQh@ uz y@ Q @%X@nQh@ u> y@ Q @%@nQh@ uT@ y@ Q#@@%^@nQh@ uT y@ Q @% @nQh@ @@@@@@@@@@@@@@@@gykuT y@ Q @%b@nQh@ uTF y@ Q @%h@bQh@ uT y@ Q @%*@bQh@ uT y@ Q @%,@bQh@ uTR y@ Q @%n@bQh@ uTX y@ Q @%p@bQh@ uT@@@@@@@@@@@@@@@@g@ y@ F @%2@bQh@ uT@ y@ Q# @%8@bQh@ u y@ Q@@%z@bQh@ uT| y@ Q @%|@bQh@ u y@ Q @%>@bQh@@uRz y@ @@%d@bQh@ uT>@@@@@@@@@@@@@@@@g>^ y@ R@@%&@bQh@ uT> y@ X @%L@bQp u@RCT TyC@@CCu@W@hFh @ 4@@@Qp uhCT aCTp@@CCu@z@Fh @ 4@@@Qp uhCT@@@@@@@@@@@@@@@@g4 aCT@@@CCu@z@Fh @ 4@@@Qp uhCT TyCT@@CCu@zLFh @ 4@@@Qp@uhCT QCOp@I d@T @u@RCT@RCd@up@@@p=@@@@@@@@@@@@@@@@gkEnb*CFh @@ @Fd@TF @u@RCRCd@ud@R I@E@XCT  ud y@ XE@@@LOT@@dF*C@@)@E@XCT  uT^ y@ Q @@LOTX>bu*C@@)@@@@@@@@@@@@@@@@gv@E@RCT  uTJ y@ Q @@LOTXm 4*C@%R@J@pFh I*)@I2@bu@@@X^h1| uE*CTF @@CR@J@dFh @ I*)I2@#;@@@X^h7@uhCTF @@CR@@@@@@@@@@@@@@@@g8]@J@dFh @ I*)LI2@d@@@X^h7@uhCTF @@CR@JCFh @ I*)I2@n@IX#  I*CFh* Fh>p@ @F*@ms @uh@@@4#  I*CFh*@@@@@@@@@@@@@@@@g  Fh>@ @F*@ms @uh@@@4#  4*CFh* Fkg@@ RW@Q8@hC@ I*@dF*%pd* T@@az vCTh @@@ 8@h 4*@dF*%d*@@az 8CTF@@@@@@@@@@@@@@@@gE @@@ 8@h 4*@dF*d d*Od@@az 8CTF @@@ 8@h @ 4*@dF*& d*yp@&@R@J@pFh I*),I2@bu@@@X^h2@uE*CTF @@CR@JCFh @@@@@@@@@@@@@@@@g4L@ I*gI2@dE@I|#  I*CFh)2 Fh @ @F*@n @uh@@@4#  4*CFh)2 Fk%@@ RR@Q8@h 4*@dF*k d*O|@@az CTF @@@@@@@@@@@@@@@@@g@@@ 8@hC@ I*@pF*,@dk@@@az CFX R@@@ 8@h I*@dF*,dk@@@az 8CTF @@@ 8@hC@ I*@pF*,@d*O|@@az CFX R@@@@@@@@@@@@@@@@@@gF)@ 8@h I*@dF*,d*O|@@az 8CTF @@@ 8@h 4*@pF*k d*@@az a&CT @@@ 8@hC@ L*@dF*m@dkCL@@az CO @@@ @@@@@@@@@@@@@@@@gEL8@h I*@dF*,pd*@@az 8CTF @@@ 8@h @ 4*@dF*mpd*gp@*@I2@J@pFh I*h8I2@bu@@@X^h1| uE*CTF @@CR@J@dFh I*dI@@@@@@@@@@@@@@@@gCQ2@bu@@@X^h1 uhCTF @I @,@ Qh Q uCTR@F@&@@, Q uhCC@@@C@4F,F@@ @F&@@, @u@RCvp@@C@4Fkm @ @F&@@, @u@XC p@@@@@@@@@@@@@@@@gv2@@C@4F,W @ @F&@@, QI@uEC p@@C@4F*[ @ @F&@@, F@uhCTX8@@C@4Fh1p@ @F&@@,  uhCI@@@C@4F,R@@ @F&@@, @uC @@@@@@@@@@@@@@@@g^#@@C@4F, @ @F&@@, @udCJp@@C@4F, @ @F&@@,T8 @uRC8h@@C@4Fk1@ @F&@@,T8 F@uhCQh@@C@4F*#@ @F&@@,T8  uhC4p@@@@@@@@@@@@@@@@g/@@C@4Fk) @ @F&@@,T8 @uF,C=p@@C@4Fk; @ @F&@@,T8 Q uFpC8@@C@4F,Ip@ @F&@@,T8 QF uhC1 @@C@4F,[@@ @F&@@,Qh Q uF4Cu@@@@@@@@@@@@@@@@gn4@@C@L,Fk* @ @F&@@,Qh  uhCv@@C@L,Fk,@ @F&@@,Qh @ubC>@@C@L,Fk| @ @F&@@,Qh @uFvC>p@@C@L,Fk= @ @F&@@,Qh Q2@uhC1 @@@@@@@@@@@@@@@@g ]@@C@L,F,[ @ @F&@@,Qh  uhCLp@@C@L,F, @ @F&@@,Qh  uhC| @@C@L,Fky@@ @F&@@,  uhC@@@C@L,F,@@ @F&@@,  uhC=@@@@@@@@@@@@@@@@@gRk@@C@L,Fkz@@ @F&@@,  uhCsh@@C@L,Fkg@ @F&@@,R  uhC48@@C@L,F,p @ @F&@@,R F@uhCTX @@C@L,F,pp@ @F&@@,R  uhCu@@@@@@@@@@@@@@@@@gE/@@C@L,F,1@@ @F&@@,]  uhCF8@@C@L,F,1@ @F&@@,]  uFCu8@@C@L,F,1 @ I/@|11W@@L|CWaO@T&@L|2@@&)@L|CaO@@@@@@@@@@@@@@@@@g>C&)@L|4pJ F2vsX@L|2@CQ%T@L|2 @C%&s@L|2pJ sX%|&g@L|@ X Ig)&T4)@L|CWQO@2sg@L|s@@EW&ps&@L|C7@ER@@@@@@@@@@@@@@@@gEW%@L|QO@E4%s#@L|CWO@EvX# LEhp@@@ |bnQkL4@@) dRC2X g@@@ |bnkL|@@) dTC2p h@@@ |bpnWk @@)@@@@@@@@@@@@@@@@gIF dXCs@ )@@@ |#@nk @@) dCs ) @@ |b #=k @@) dCOp * @@ |bp)|k X@@) dRCT p k @@ |b#k @@)@@@@@@@@@@@@@@@@gk  dCTXp , @@ |bdCk h@@) dRCT @ m @@ |bp* k p@@) dCsX n @@ |bn]k 8@@) dCsp / @@ |bpnk@@@)@@@@@@@@@@@@@@@@g T dTC4 p @@ |#@nk@@) dRC4 1 @@ |#@nFk@@) dRC4h 2 @@ |b n&kX@@) dTC48 s @@ |b nhk @@)@@@@@@@@@@@@@@@@g| dCu 4 @@ |#@n*kh@@) dXC1 u @@ |#@nkkp@@) dTCu v @@ |#@nmk8@@) dCu8 7 @@ |bpn1kO@@@)@@@@@@@@@@@@@@@@g= dCph 8 @@ |#@nkO@@) dRCv y @@ |bpnvkO@@) dRC7@ z @@ |bnzkOX@@) dRC7 ; @@ |#@n>kO @@)@@@@@@@@@@@@@@@@gRz dRC8@ | @@ |b/kOh@@) dCh = @@ |bp/EkOp@@) dRC88 > @@ |b/IkO8@@) dRCTy8  @@ |#@n k@@@)@@@@@@@@@@@@@@@@gF dCyh @ @@ |#@/Ok@@) dXCz  @@ |#@/k@@) dXCzh  @@ |#@nJkX@@) dC1 C @@ |bp/k @@)@@@@@@@@@@@@@@@@gR= dXC;X  @@ |#@/]kh@@) dXC;8 E @@ |#@/ kp@@) dXC| F @@ |b/dk8@@) dRC|p  @@ |b/hkQ@@CL1@@@@@@@@@@@@@@@@gn O@ICL@@ O@g|@#v2J*yTFm@ TO@&4X @@ @Fd^@bQ g uhd@@@4#pRJkhFmp@ @Fd^@bQ WI uhh@@@4#pRJ*yTFmE@ @Fd^@bQ R^@uh,@@@4#p@@@@@@@@@@@@@@@@g/FRJkCTFmEp@ @Fd^@ Qh[E@ua2C#@@J@d^@ Qh[E@udC#@J@d^@ Qh[E@udC#@I/@d^@ Qh[E@udC#X@Ik d^@bQ W@uh8@@@4#pRJ*zTFm@ @@@@@@@@@@@@@@@@gmX@Fd^@ Qh[ u]4C#p@JO@d^@bQ W=@uh>@@@4#p C[dF) 4 @R@4#p C[hFk)@4a@L4#p C[dF,a@4b@R4#p C[hFk;@4#@OT#p @@@@@@@@@@@@@@@@gC[hFkz 4d@ ,#p C[hF,@4%@L8#p C[dF,a@4&@RX4#p C[hFk;@4g@T#p C[hF,@4h@OL4#p C[hFkm@4)@L#p C[@@@@@@@@@@@@@@@@gdkdF) 4*@Rh#p C[hFk)@4k@OX#pRJk@Fm @@ @Fd^@bQ W@u)@@@4#pRJ*8Fm @ @Fd^@bQ XC@u)^@@@4#pRI*FmL@@ @Fd^@bQ X@u)b@@@@@@@@@@@@@@@@@g/4@@4#pRI*hXFmL @ @Fd^@ Qh[ uLC&X@J@d^@ Qh[E@u]4C& @J d^@ Qh[E@u C&h@I; d^@ Qh[ uLC&p@J[@d^@ Qh[E@u]8C&8@I| d^@ @@@@@@@@@@@@@@@@g2Qh[ uLCg@@J@d^@ Qh[E@u^@C& @Im@d^@bQ XF u)2@@@4#pRI*|@Fm @ @Fd^@bQ Wd u)v@@@4#pRI*|FmO@@ @Fd^@bQ W]@u)z@@@4#p C[dF@@@@@@@@@@@@@@@@gn[k)4>@d4#p C[dF, 4@|TL#pRJ*84Fm@@ @Fd^@ Qh[E@uCh@J]@d^@ Qh[ u8Ch@Jaad^@ Qh[E@u ChX@J] d^@ Qh[E@u@C@@@@@@@@@@@@@@@@@gJ^@d^@ Qh[E@u@Ch @J^ d^@ Qh[E@u@Chh@Jad^@ Qh[E@u|Chp@I=@d^@bQ X@u)b@@@4#pRI*XFmQp@ @Fd^@bQ W@u)@@@4#pRJkXFmR@@@@@@@@@@@@@@@@@g @ @Fd^@ Qh[E@u^C%h@I> d^@ Qh[E@u^C)@I@d^@bQ X u& @@@4#pRJkpFmL@ @Fd^@bQ W@u)@@@4#pRJkFmR @ @Fd^@bQ  u*@@@4#p@@@@@@@@@@@@@@@@gXz C[dF) uL@Tp4#p C[hF,Iu @O|4#p C[hF)spu@ #pRJ*|Fmp@ @Fd^@ Qh[ u*C*@@JX@d^@ Qh[ u]4C*@Jh d^@ Qh[ @@@@@@@@@@@@@@@@gCuCh8@J# d^@ Qh[E@u]4C%X@Jh@d^@bQ R^@u*d@@@4#p C[hFkdpu@X#@I*Q Ip1|@#@I*QhIp1|@ #@I*Q,Ip1|@@@@@@@@@@@@@@@@@gpFQp#@I* Ip/*@R#@I* Ipn8@RT#@L*QpIpp@@@X^h7>@uhCTF @JQ d@  RC2@@@CCu@yFh @ 4@R#@L*@@@@@@@@@@@@@@@@gEIpn@@@X^h7I uhCTF @J d@  RCC @JT d@  RCv @J d@  RC2p@JO d@ T8 RC@@CCu@zF)  4@R@@@@@@@@@@@@@@@@g4*#@L* Ipnd@@@X^h2C@uhCTF @JW@d@  RCp@@CCu@zTFh @ 4@#@I* IpnI@TL#@I*Q|Ipn|@T#@I* I@@@@@@@@@@@@@@@@g*[pn @T@#@I* IpnJ@#@I* Ipn|@#@I* Ip/@@R|#@L* IppF@@@X^h7 uhCTF @Jd d@  RC88@@@@@@@@@@@@@@@@@gJ% d@  RCT78@@CCu@WTFh @ 4@T4#@I* Ipp%@ @#@I* Ipn[@#@L* Ipp@@@X^h7R uhCTF @Jg@d@  R@@@@@@@@@@@@@@@@g)CTy8@Jg d@  RCs@@CCu@LFh @ 4@R,#@I* Ipnd@L#@I* Ipn@Q#@I* Ipn@#@I* Ipn@@@@@@@@@@@@@@@@g2W@QX#@L* Ipd|@@@X^h8 uhCTF @JJ@d@  RC2X@@CCu@WCdFh @ 4@QT#@L* Ipn@@@X^h8 uhCTF @JI d@  R@@@@@@@@@@@@@@@@gdCE@@CCu@WCdFh @ 4@Q#@I* Ippy@Q#@L* Ippu@@@X^h8 uhCTF @JL@d@  RC@@CCu@WCdFh @ 4@ #@I@@@@@@@@@@@@@@@@gh*Ip1v@Qd#@I*T|Ipp@Qh#@I*RTIpp@Q,#@I*RIpp@O,#  L*@pFh&XF)sp@ @F*@n@ Wg uh@@@4#  4*C@@@@@@@@@@@@@@@@g/1FhdFk)@ )@Q8@h I*@dF)@dkCd@@az ^^CTF @@gQp@uhCT RCy8@Iu@ d@T @u@XCT,@RC u]L@@@p=EnQ*zXFh@@@@@@@@@@@@@@@@g= @@ @Fd@T @u@XCT,@RC u]@@@p=EnQ*zFh @@ @Fd@T @u@XCT,@RC u]@@@p=EnQ*z Fh @@ @Fd@T @u@XCT,@RC ub@@@p=EnQk Fh @@@@@@@@@@@@@@@@@gv^@ @Fd@T @u@XCT,@RC u]^@@@p=EnQ*z|Fh @@ @Fd@T @u@XCT,@RC u]b@@@p=EnQ*;Fh @@ @Fd@T @u@XCT,@RC u@@@p=EnQ*> Fh @@ @@@@@@@@@@@@@@@@ga@Fd@T @u@XCT,@RC uan@@@p=EnQkCFh @@ @Fd@TF @u@RCTa@RC u&@]8y@E@RCT  u ^ 8 @@@LOTF  4*C@@)@E@XCT  u @@@@@@@@@@@@@@@@gg  8 @@@LOT@p*C@@)@E@RCT  u 8 X>@@@LOTQ  4*C@@)@EhCTF  u b 8 X#@@g @nQp u@RCT RyC @@CCu@W@@@@@@@@@@@@@@@@gIhFh @ 4@@@QpF@u@XCT RzCI@@@CCu@WpF,  4@@@QpF@u@XCT RyaC @@CCu@WpF,F  4@@@Qp u@RCT R;aCO @@CCu@WF@@@@@@@@@@@@@@@@gpFh @ 4@@@Qp u@RCT RzaCI@@@CCu@WFh @ 4@@@Qp@uhCT R;C@I8 d@T F@u@RCT/RC uab@@@p=EdFkCFh @@ @Fd@T @@@@@@@@@@@@@@@@g#vF@u@RCT/@RC ub@@@p=E1|kCFh @@ @Fd@T  u@RCT/RC u#8@@@p=Ep1*CFh @@ @Fd@TF @u@RCT/RC u@^y@E@RCTF  u | 8 R@@@@@@@@@@@@@@@@@@g*d@@LOT[  4*C@@)@E@RCTF F@u 4 8  @@LOT[bp&*C@EQ R@JCFh @ I* Ip/ @#  I*@dFhC@dFk%@ @F*@m2h W u@@@@@@@@@@@@@@@@guh@@@4#  I*@dFhC@dFkdp@ @F*@m2X W uh@@@4#  I*@dFhC@dF)O@@ @F*@,g W uh@@@4#  I*@dFhC@dF,J @ @F*@nE W uh@@@@@@@@@@@@@@@@@gWa@@4#  I*@dFhC@dF)sp@ @F*@,y8 W uh@@@4#  I*@dFhC@dF, @ @F*@nFh W uh@@@4#  I*@dFhC@dF,@ @F*@n W uh@@@@@@@@@@@@@@@@@@g1p@4#  4*CFh%|F*@@ n@W8@h)p L*@dF)@dkh@@az LCT X W @)*@bQp@uhCT RCh@J@@d@T  u@RCT1@RC u@@@p=@@@@@@@@@@@@@@@@gbE&*hFh @@ @Fd@T @u@RCT1@RC u >@@@p=En4*CFh @@ E@g8@h @ 4*@dF)@d*gp@u R@J@dFh I* Ip1 @@@X^h7h uhCTF @@C@@@@@@@@@@@@@@@@g=R@JCFh @ I* Ip/Q@L#  I*CFhdF*g@@ @F*@nIh @uh@@@4#  I*@dFhdF,p@ @F*@mzX @uh@@@4#  4*CFhd@@@@@@@@@@@@@@@@g#bFk4p@ T@Q8@h 4*@dF)@d*h,@@az b^CTF @@@ 8@h I*@dF)@dkE@@az ^*CTF @@@ 8@h I*@dF)@dkX@@az ^*C@@@@@@@@@@@@@@@@g4TTF @@@ 8@h @ 4*@dF)@d*=T@ER@J@dFh @ I* Ip#=@@@X^h8h uhCTF @@CR@J@dFh @ I* Ip*@@@X^h8*@uhCTF @@CR@J@pF@@@@@@@@@@@@@@@@g**h I* Ip/&@@@X^huF ub@CTF @@CR@J@dFh I* Ip1T@@@X^h7F@uhCTF @J@d@TF @u@RCTa@RC u]4@^ I@E@XCT  u 8 W@@@@@@@@@@@@@@@@gW=@@@LOT[)@p**C@@)@E@RCT F@u 8 W]@@@LOT[)@nv*C@@)@EhCTF  uL 8 X@@h@bQpF@u@RCT R]aC2h@@CCu@LXFk% @@@@@@@@@@@@@@@@g4@@@Qp u@RCT RCE@@CCu@y8Fh @ 4@@@Qp u@RCT RCFh@@CCu@||Fh @ 4@@@Qp uhCT RCTX8@@CCu@yTFh1p 4@@@@@@@@@@@@@@@@@g/&@@QpQ u@XCT RTC= @@CCu@WFh1 /b@@@X^h1#@uhCTF @@CR@J@pFh L*R Ipn@@@X^h1#@uCTXp@@CR@J@dFh @ I*,Ip#F@@@@@@@@@@@@@@@@@@g^k@X^h7J uhCTF @@CR@JCFh @ I*X4Ipp @X#  I*CFh&F)/p@ @F*@m88 @uh@h y@EhCTF  u 8 WF@@h@bQp u@RCT@@@@@@@@@@@@@@@@gs  RCJp@@CCu@=dFh @ 4@@@Qp@uhCT RC;@J@d@T  u@RCTa@RC ubp@@@p=E/[*CFh @@ @Fd@TF @u@RCTa@RC u^v@a@@@@@@@@@@@@@@@@gI@E@RCTF  u 8 Xm@@@LOT@ 4*C@@)@E@RCT  u 8 Xn@@@LOT[7 4*C@@)@EhCTF  u 8 Wn @hT@bQp uhCT R@@@@@@@@@@@@@@@@g)>C p@@CCu@WEpFh @ 4@@@Qp u@RCT RCL@@@CCu@=|Fh @ 4@@@Qp@uhCT RC;8@JE d@T @u@RCTa@RC uT2@@@p=E1 @@@@@@@@@@@@@@@@g# *CFh @@ @Fd@T  u@RCTa@RC u#F@@@p=E/ *CFh @@ @Fd@TF @u@RCTa@RC u@@a I@E@RCTF  u 8  @@LOTXp 4*C@@)@E@XC@@@@@@@@@@@@@@@@g1 T  u 8 Ws@@@LOT#p*C@ER@I2@JCFh @ I* Ip/@O #  I*CFhdF, @ @F*@n@ @uh@@@4#  4*CFhdF,@@@@@@@@@@@@@@@@gga@@ b@Q8@h I*@dF)4d*> @@az a^CTF @@@ 8@h 4*@pF)@d*@@@az bTC@p @@)Qp@uhCT RC4h@Ih d@T @@@@@@@@@@@@@@@@gRI u@RCT&XRC u^@@@p=EnX*CFh @@ @Fd@TF @u@RCT&XRC up@I@E@XCT  uL, 8 Q @@LOTXm1**C@@)@EhCTF  u 8 W @@@@@@@@@@@@@@@@@g%p@g@bQp uhCT R>aCT @@@CCu@88F,  4@@@Qp@uhCT RC4h@Iu d@T  u@RCTa@RC uL@@@p=E* kFh @@ J@g8@h @ 4*@@@@@@@@@@@@@@@@g;L@dF)@d*|d@4pR@J@dFh I* Ippy@@@X^h7 uhCTF @@CR@JCFh @ I*Ip/O@p#  I*CFhdF*#@ @F*@nFh @uh@@@@@@@@@@@@@@@@@@g8s@4#  4*CFhdFksp@ ]@Q8@h I*@dF)@d*|@@az 4CTF @@@ 8@h @ 4*@dF)@d*yh@7pR@J@dFh I* IpgO@@@X^h@@@@@@@@@@@@@@@@g7T uhCTF @@CR@JCFh @ I* Ipn)@@#  I*@dFhdF)sp@ @F*@ms @uh@@@4#  4*CFhdFk&@ T @Q8@hC@ I*@dF)%@d@@@@@@@@@@@@@@@@g^;* T@@az FLC  @@@ 8@h @ 4*@dF) @dk@@uE2@J@pFhC@ L*,Ip2@@@X^h8>@u 4CCp@@CR@J@dFh L*RXIp1|@@@X^h8>@u@@@@@@@@@@@@@@@@gE4JCTF @@CR@J@pFhC@bg* Ipp1@@@X^h2C@uabCT p@@CCu@8TFh @ 4@@@Qp u@RCT R#aC@@CCu@W@Fh @ 4@@@QpF@u@XCTT8 RdaC@@@@@@@@@@@@@@@@gQ7 @@CCu@XFk/@dF@@@X^h8@uhCTF @@CR@J@pFhC@ I*T8Ipp@@@X^h2C@u CTF @@CR@J@dFh L*T|Ip/h@@@X^h74@uCTF @@CR@J@p@@@@@@@@@@@@@@@@g4XFhC@ I*Ip1|@@@X^h8[ ua|CTF @@CR@J@dFh I*@Ipp7@@@X^h8@uhCTF @@CR@J@pFhC@ I*Ipp>@@@X^h2C@ua|CTF @@CR@J@pFh@@@@@@@@@@@@@@@@gOmC@ L* Ipbu@@@X^h8#@uE*C= @@CR@J@dFh I*pIp1F@@@X^h7v@uhCTF @@CR@J@pFhC@bg*Ip/,@@@X^h2@@uXCT @@@CCu@; Fh @@@@@@@@@@@@@@@@@gE] 4@@@Qp u@RCT R2C=@@CCu@; Fh @ 4@@@Qp u@RCT R2aC@@@CCu@W@ F,@@ 4@@@QpF@u@XCT R2aC@@@@CCu@XF,@@ @@@@@@@@@@@@@@@@g 4@@@Qp u@RCT RvCC@@CCu@WhF,  4@@@QpF@u@XCT RvCCp@@CCu@XF,  4@@@Qp@uhCT aC1@I, d@T F@u@@@@@@@@@@@@@@@@@gpsRCTgpRC uI8@@@p=Ep*pFh @@ @Fd@T  u@XCT&pRC uab@@@p=Ep*LXFh @@ @Fd@T  u@XCTdXRC u]8@@@p=Ep*LXFh @@ @Fd@T  u@RC@@@@@@@@@@@@@@@@ghTa@RC uX@@@p=En*CFh @@ @Fd@TT8 Q u@RCTa@RC u@@@@p=En8*LFk/ @ @Fd@T F@u@RCTa@RC u @@@p=Ep@kFh @@ @Fd@T F@u@RCTa@@@@@@@@@@@@@@@@g&@RC u 4@@@p=Ep^kFh @@ @Fd@T  u@XCTa@RC ua|@@@p=Ep*LXFh @@ @Fd@T F@u@RCTgpRC ub@@@p=Ep*pFh @@ @Fd@TT8 Q u@XCTa@R@@@@@@@@@@@@@@@@gs/C ua^@@@p=E&kTF,@@ @F*@,Xp @uh@@@4#  I*@dFhC@dF)sp@ @F*@ms Q#@uh@@@4#  I*@dFhdFk%@ @F*@m2h @uh@@@4# @@@@@@@@@@@@@@@@g> I*@dFhdF)O@@ @F*@,g @uh@@@4#  4*CFh&OF,@@ |@Q8@hC@ L*@dF)@dk @@az ^C|p @@@ 8@h @ 4*@dF)bpd@@@@@@@@@@@@@@@@g>k@@7@R@J@dFh L* IpgO@@@X^h7 @uTCTF @@CR@JCFh @ I*X,Ipp @T E R@@8LX=  *F)[ @ @&OX@u %n@@R,s pCd@@@@@@@@@@@@@@@@g[|*4Fh @@ @FF@  QF uh@@@s pCd*4Fh @@ @FF@  QF uh@@@s pCd*4Fh @@ @FF@  QF uh@J7 CTQh @@@L8L@y@b *C@@g @@@@@@@@@@@@@@@@g;2CTQh @@@L8L@y@b *C@@g CTQh @@@L8L@y@b *C@@g CTF @@@L8L@y@ 4*C@@g CTF @@L@,E8@#amLz@*pC%#@@@@@@@@@@@@@@@@@@gk[@LE X @@LEp]p@ @FCb@n*8@@CF@W @@ 2 *2@@@p@E,vC Fhap@ @FCT@nk@@C@W, hF@b@@@Xpp#aE@@@p@Eu@@@X 17 @@LEp@@@@@@@@@@@@@@@@g@ @Fp@nkh@@C@] @@ ,@ *|@@@pW@Eg@@@XLhz/ @@LE [ pv [*@@ n@ k@F4CX QC @@LL8XQpd@L@@@X @zp @@LXCQO@IR)dp&Ras8@LX]@@@@@@@@@@@@@@@@gT@@ @F8@mp@@CF@W @EXIaa@@4@Ep@O@R, mX @  @@|]pvub@pp# Eu[@8p# Eu @d@E @/@Q@IC p@ ]@8]pdk@|p p@v@@@@@@@@@@@@@@@@@gQ4kC W  @@ C IF4C@[ @@,@z*h@F@un @@C@JFk p@ @F**@  [am@R@@@u@L*s hC@@ @F**@  [amE@@@uCd*s h#@ @F**@ @@@@@@@@@@@@@@@@g>1T8 [amd@@@u@I*s hz@ @F**@  [amF@@@ug*s hu @ @F**@  [amFp@@@u@L*s hv @ @F**@ Qh [amb@@@u *s )@ @F**@ @@@@@@@@@@@@@@@@g/ [am@2@@@u@I*s hb@ X@JXX@ @FL@,8[F@@@LX]Xp@ @FCJ@n, @@CX@WTFhap@ @F8@ma8 QC @@LL8XQpd@L@Lp) E L@@@Xp1 @@@@@@@@@@@@@@@@@@@gLFT] @ @Fp@n,8 QC @@LEp[F@b@@@Xpp#a@X@@@pQ Eb@p phQT@E @/@QTIEp@ @F@@a&p[Lm@,@&8C) Cm@@C@4F)@@ @@@@@@@@@@@@@@@@@gJF&@ Qh u@@@ L@#a @@@XF uk@@@4pC kp@@) Cmh@@C@4Fm[ @ @F&@ Qh Rb @@ L@#u/@@@XF uk @@@4p kW@@)@@@@@@@@@@@@@@@@gT= FCn@@C@L,Fmp@ @F&@ X z@@@ L@#&@@@@[TLI)FIh8uvLy%EL4=I|@^=,mE%%4@8@I J*J& J a@ E@@@pOpEa@@@@@@@@@@@@@@@@g,Q)L[T@Iz JJznEJn^%Lm]a@J h7@#Q)pvpQ%TpT2&%%s@L1]]  W2bgpp)QT)p2p)QT8@LXXh vb @@@z;b^@#%&#g &#R)aR*bhkR@@@@@@@@@@@@@@@@g=g@XLhp4a@8@@@p E ,CpFhaz|@Q)QTppXQ)Qs)2@L1[E@ %2bgppR4)p)QT8pR&)p#Q2spv&)T@LXXh vbQ@@@Xp1Qmn8@J%J*J&m LuL@@@@@@@@@@@@@@@@gb J&2** ag@ EF4X@@CLQ@WWd@|h&|F,I,mE%%E*CF@J )u17@)QTp))&) TQsQps)Q%2d22&%@LFXh v @E FgC[FQgIOL@@@@@@@@@@@@@@@@@g^^pREbb@*@b21W]g2p@p pEb,XXJpp@W&=L|E*|JXJTL4,|4@C F@@@Xp1QmE@@@p# @,%s)8,@L,dOp@R%Fdy)T|pCLQ@1@|h&|F,m@@@@@@@@@@@@@@@@g8aE%%F,JT@CF@J hs@@ @FR@,T[^@ XknsgX@XE8s @vp2g F7a p2npk%g &#R) g )IJ@p@R)=ITvLL4u2 @/C ,@ CR8@@ n@ X F4FX@@@@@@@@@@@@@@@@@gE@CX@8@@a @@@p%@Ea)XL@@@pp@Ea)@R@@@pW@E,C) @@ b @@LX[@v#)@@@z=b^@mO)J&1a&#ka,s&1aF*bhkWpTpE X F4FX@@C @1@ h@@@@@@@@@@@@@@@@g7zLp@ @FC2@mb@[L@@@LX[@v#@@@bz| @@L,XOp@4dLI4uI=ITv@C I@1@@& Xh@@@pQ E,Cd@@%d h@@@pp@ @F8@,Ep[Tg @@Ld[@@ @@@@@@@@@@@@@@@@/=^=E8X @@ >E8X @@ g@4X @@ @F@@a&8[ am@X@p@@C@@Q@@a# @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@W2W@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F I@d@@@@@@  IJ@IQ@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gJ8I,,E,FQ&)W@F@@@W&Ras8OR)dEOs88O&gT&@@@@@@@@O2sQQO2sRRO2s77 )O#TQOdQTs8EQ 2gO)2XFCs8QO#2XOs)dJEOQTTE OsQRss8gvFE;F@@@@@@@@@@@@@@@@gTnOdvs&gvR)svOR)4EkE O#TRO#T7OR))TQsQF@&@E@@@@@@&@@@@@@@b@COgyFFFEOR)7FELEJ#&QT#%WO%W2s&)Q##&ETQ##O%uE1E>O2s4OvX# &@@@@@@@@@@@@@@@@O%)OQ%TOdgdgOh4EE^W&s&s)4Q#2RQ#a4dgRg)&g)&RR#bR#bRT8%R&4% T24R27s &Q#R24RgQ)Q RT2dORO%T@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g7u2222222222222222222222222222p)W&Ras8ppppppppppppppppp,%JyFIFF@p@&FFFFFFFFE# %%%%%%%%%%%%%%%%%%%%%%%%%%%%&8&aQ&Rasp&Tps8g)/ z1@>@]@@@@@@@@@@@@@@@@gyh)&@u@ska@L=v@ F2;C ],@b Qhk&^; C]Lnn|@sW@T4ygn8@pCg #gphCg #gp@QEJQ#sg@&dp#&p@RIII)T1#sg@&d@@@@@@@@@@@@@@@@gQIphh ghp)C) d#)p*J*pkCaIpkRJk ks,L#sg@QTp,#%,s%pmCbpI1]R 1]R EQ]R E1]R FCmR pCmR@a]R@@@@@@@@@@@@@@@@g4*>nphh d#)p#s)pmCgpF>nphC/@,s)#gphCg /#,LpmC&pIb R@LFC @@sTQ@a@@* 8@@LudF@@C Q @@ &hbF @@sTQ@#p@@@@@@@@@@@@@@@@g#XLF@@C QQ@@ &hb@1 pXL@@Fb%#@@ &hb@ pXL@@Fb*C p@@* RT@@FbnC p@@* R@@Fb2C@@ &hb p@@* hLF@@C Q @@@@@@@@@@@@@@@@@@gEusTQ@hX@@LuJL@@FbEJC@@ &hb pXL@@FbERC p@@* IXLFC@@ &hbRpXL@@FbEQ  p@@* TzdFC@@ &hb @@sTQ@k@@* 8@@Lu @@@@@@@@@@@@@@@@@g[h@FbE&@@C Qu@@ &hb[ @@sTQ@n@@* WX@@Lu 4@@FbE>@@C QC p@@* XX@@LuLT@@FbFC @@sTQ@2@@* X@@LuL4@@FbF@@@@@@@@@@@@@@@@ga^C @@sTQ@4@@* XL@@FbFC p@@* XLFC@@ &hb pXL@@FbFC p@@* XLFC@@ &hb pXL@@FbFC p@@* XLFC@@ &hb pXL@@@@@@@@@@@@@@@@@@Ok&FbFC p@@* XLFC@@ &hb pXL@@FbFC p@@* XLFC@@ &hb pXL@@FbFC p@@[T@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@W&C@@k@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F I@d@@@@@@  IJ@IQ@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ghI,,E,FOQRO&gTE&@@@@@@ORQ&@E@@@@@Od4#&@F@@@@@OTu&@@@@@@O#Q&@C@@@@@@O#R&@C@@@@@O#7&@C@@@@@O7Q&@CC@@@@@OQ7&@C@@@@@@@@@@@@@@@@@@@@ga;@OR7&@CE@@@@@O%Q&@CF@@@@@O7dQ&@C@@@@@OQTd&@@@@@@@O2b&@@@@@@O2b)&@@@@@@O2bR&@C@@@@@O)2#&@@@@@@#)2XCO#T&@E@@@@@O2s&@@@@@@@@@@@@@@@@@g#F@@@@@OQT&@@@@@@O24&@E@@@@@@O77Q&@E@@@@@OgQ&@E@@@@@Og2&@EC@@@@@Q&)WR@OR)4R@E@@ 7@Oh4F@ 7Fgg)&OdT%Qd@F@2bRg@@@@@@@@@@@@@@@@@ghm@&)dFIE;JEE|EFO%T[Rg&@@@@[Rg&@@@@[RgC&@@@@[Rg&@@@@[#&QT)O#TQE @F@ORgsFEkEOX#sO2sQRQ2O#)O#T7O%@@@@@@@@@@@@@@@@g8WRQ2JIOR)7E #sR#sR#W#sQgW#Q)TW2s)sWhR%2s)s#&&gOR)d)QT#&QT shO#TR %O2bd gCTvgOs)dQT)OQTT[s2s))Ws2s)))s)Od)WWg)s)@@@@@@@@@@@@@@@@g2O2bW g@Ws2sTTOO2b%O#RQd2WFCFFd2gd2dyWdyWOQ7O2s7sdgCFLO%&g[2Q)XOgy##ROdR@Ts)WgTs)O2bQRF[#TQgs[g&gs)[7s#[g&@@@@@@@@@@@@@@@@g;gR)4[%2)s&gO)2b@C@@@@7sO&d@CF@TQsQ[282TsO%)g vELE/ W#ds %FW2)s)JW#&QTd[g)Ws2sO)2XJOgC gO24R[2g)s) %EW2Ts)FE O#2XW)@@@@@@@@@@@@@@@@gaQTW)QTvTs s#TvvTQTW4gd2bO&)WdW)QTCOd%OR))OvTs8g%TOTv@W%Qd2bW#7sW#2)#Ws#)# %W)#&&gOs)O2sRbO#)O#&#Tv@@@@@@@@@@@@@@@@g;pOvT##TQ2)##TRRW2g)##)#)##2sQsdgd2bQ[2g)#W%u)sd2bW)#&##TRg)#[%&gd2bW&gd2bJFd#&d)TQW%7sO7sJC ss[#)dQT)2s8g @@@@@@@@@@@@@@@@g@82sW2h%)[g&gs8g[24Rs8gOT2)XWgdsXOs7)s7T)WQd2bs7))s7)TO7QRWs7)TWXQ%dsdgWs7))OdRO%s%s%sQ%s@^@@@@@@%sR%sWu2J@@@@@@@@@@@@@@@@gICEEFERCEEFEECI@FE^IECE%4d%4dO7gR7gT7gWd4#sWd4#s%syO7)Q %)&%J gW)&%W)&%W)&%C)CE)CE)CEO%@@@@@@@@@@@@@@@@gsE&TJFTgvEWTgvITgvITgvF&@@@@@@@@ORQTg%dOTgJR@&@@@@WTgvOTgQOg7)Og7TWg7T)Wg7TTWg7))Wg7)T[g7)T[24R&)WW2)XW2)X%2)s@@@@@@@@@@@@@@@@gIsW%2)sgJ@Wg&gTJFO)W7g&g)W7g&gTOg&g[&d)[&dTJ@J@J@C@C@C@@@@@^@&@@@@@@@&@@@&@@@@@&@@@@@@@@&@&@@@@@@@@@@@@@@@@@gIX&@CO)^@@@@@@@&@F@@@@@@&@@@@@OsR# T[2gTs)[2g&g)W2sR#&@CCE&@E@F@Q)TWQ)TCO2b2@@@@@@@F@CF@FWQ@@@@@@@@@@@@@@@@gO )TOvdWQ)T@@@@sQgWsQgJCO4Qs@@J@F2%7s[282%T[T&dg282 %TWd2gs@Wd2gR)sv@FWd2gOdvs&gv&@E&@CFF&@CE@@@@@@@@@@@@@@@@g&@EFF&@Es2b7Qy2W%OQRd4#O)8O#8)2#2d4#OTg%Tu R@Tu dW2W%W2W%OdCTg%Q77dQ)2#)2#)2#C#@@@@@@@@@@@@@@@@/yOTdQTgQO)&u&@@@@@@b@@@@@@&@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g% u2222222222222222222222222222p)W)#pppppppppppppppppppp,%JyFFFFFF@p@&FFFFFFFFEd)W@Epppppppppppppppp,,,,,,,,,,,,,,,,,,,,,,,,,,,,,%L*L@@@@@@@@@@@@@@@@g1|4^FEdn[LbnF2JbmFFFFF*mL4,F8&a@m8g@u8ga@=8d@ QaL a @ a Wa@ a [aO@ ]aO a@Q2X 12@IQ2 I12@JQ2 @@@@@@@@@@@@@@@@g]J;  Q2[  12@LQ2 L12]@ Q2]  12^@Q2^ bQ bRpbbpbTbTpbbpbbpbWbWpbX@@@@@@@@@@@@@@@@gz*bXpbbpbb[b[pbbpb]b]pb^p@L@ 1L@ Q,XC2@|dJR@|,Ls|z@ y#n QaT)|#)@]@@@@@@@@@@@@@@@@gR&kQ XkQ dkQ ,kQ 4^kW1C@]8aL@;&@]y C/I4 nuJnCLd|[J*&2J&EJ,2^J/T@]z12@@ |8g[%78^|CsJs&2#Fs2k g @@@@@@@@@@@@@@@@gO>g a%,s&&pk%vg ) &kd;8gF&@]71O@;sb^^dnsJs&2#Fs2ka%1% a&b%F*;/b^ 7b8pCn>Iz 7I|@]|h4 OW&TgL|FI8vLJXyd4v)&T@@@@@@@@@@@@@@@@gz/JsI4 uJn2J&EJ,2[L4nJW); E2%EWO%%/FC%%[a7;]E^^& W C%%%%%Q7 C/>I@@7@aL@ |/@]k8 @@@@@@@@@@@@@@@@g7LJ@ Lm@@],8R4@v1 F@ |,#Jb@vs@vL@ QCn/aLR4 n^4uFdnR[RsJ*&EJ*vQ7EL@ X1h@]gpQ8g a) d#&sd,2*)aR*md]2@2@@@@@@@@@@@@@@@@g &CC%sO 2maLbhk s% s aF2%R#1aILh*]gpC &IhOJI|*g*@@]/X @7I zg, vua dgh@@]gpL@2R@RbIzF@ |,#Jb@vLp@ [v2p@]2XbI@@@@@@@@@@@@@@@@g,z&ghLEd4nLhghX@]sX@v/aL8@ ph@],8@v/a &@ Xs @]gpL vsL;O@ %&4=%>dnR[RsJ*&EJ*vJvm[JJ OFFR* J[7OaLz@ |kp@@@@@@@@@@@@@@@@gp1C*2>n @],8R|@v=a  ||v[L4nFWF,&FLzn^[JJ O7Q F@ >4 @],82%dkgaF2%R#1a%,s&&p]gpR=@;k8R 7E L@ ]pE@,yQLs8L@@@@@@@@@@@@@@@@g2kXRsXJ1,)hy*8JJk[LuL|@*svW2Qy,s1*8JJk>u@TC/%h% )&sJkag adkg X%h s %g gLhk s aO Oa&b%Fk k gR2k%J2>uX@]1 F v X@ @@@@@@@@@@@@@@@@g/^uX@]mX v/a @ [vup@]gp@@@ bmWaJ@ >,E @ [*X@]mXRpLz@ >v@]p  va @ ]dvX@]gpR) Eb a@@@ @%@uT*h*X@@@@@@@@@@@@@@@@g]CR*8T*)sT*X TsRXhs*48hs*82*X*4,kOaQhJk gp]/XRO@@]4[@7Lb@ |v8@]k8@vaL@@ ,Es]J[/7XCC%sO 2maFk*k CaI J#R&1 2)aR@@@@@@@@@@@@@@@@g W*g Rh]gpR2L*@ |1^@gJ2*X XQ,)Th4|,Es]#/7XCC%sO 2maFk*k EaI J#R&1 2)aR*g Rh]gp^Q8>g)Rk gaR*g R)a g # 2)aR*g Rh]mX^)z@4 I=@@@@@@@@@@@@@@@@g%bJnRm*)v/aLR22*^aspTsJh2&#g d],8L,*gh]>@akTg[ ,#bbIz ImJnRn^d>%Jzkav/a @ [8^@*Jy8Qs*XRJJ8[Ly),[8 @*yJy8zTk*8*y8[Ly@@@@@@@@@@@@@@@@g@),|/#J)4;R*b)aJk/gaR*g R) s aLb)aILh*@E8;2@ Q8=%sO 2maLb)aILhka%,s&&1 s%a J]gpR>L*g J^TL>^% J,n^EJ*uJav/a p@ ^8X@]p b@@@@@@@@@@@@@@@@@g7FL@ |,# JRag W aa aag = @]1 b v /I@I^^@u@Q7C &TL>CJv>%JznFn^Fs[F4)v n@ [8 @k4*yJy8zTk*8*y8[Ly),@@@@@@@@@@@@@@@@gh8>1@]ppE 7# |@ ^L88@]1 @@=%sO 2ma aR*m%a,kRkad#&sd,2*h]gp[2|#gaF*#%ga JkaR*ma,#%ad#&sd,2*h]mXdIz Lyv/aR2yR^ayXCh],8@@@@@@@@@@@@@@@@g R,nTgh|@ 4g[ ,#bbIz Jyvsa@@ |/#J)4m%sOag aJk/g 2)aR*g Rh@EnCm@]/8@7&Lh@ [/p@]k8F 7&L*@ X8dd@nQLs8LkX[T*XIs@@@@@@@@@@@@@@@@gQuRy8sXQh4k*g|yhg;L2d|@#vsvWg>2&^@*L11*kh18L2sz8 T2yg|/#J)4 RkR*b)&n>L8h@]1 @@C %sO 2maR*g R) p#% #gaF*#%g C h#&#amL@@@@@@@@@@@@@@@@g7]]gpg@vsa 4 J>uJnF4uJ&vdn^n@Qvsab@ >z@],8) v/a p@ z @]zhk@Fn;zhR^@)h))zRQhy*8I,J)1R^pz[R@,,2)4*2J2y8sTh@@@@@@@@@@@@@@@@g| k*8*JT*yz@@]s8@]2@h ;%sO 2maF#%gam R) &p*gE%)I*h]gpk vsa&@ ^mp@]zh) va,@ 7E@kyQLs8LkXI,J)1RXk4**g[L,|@*@@@@@@@@@@@@@@@@gp,vsvW),J)1RXJ44sTg>,X@];R> kns&T1OL&k%%a*kR2,2*)aR*g R)d>%%E *,n]Ov/ad@ [;Td@,,2,y,h1,|*8Jyh8[T*X*JTg[/2^ @v@@@@@@@@@@@@@@@@gQ>Im)zO@ bJL*[FFv=L2nL*>ELv&[L*hI JT=L2n,*&EJ*uJbhCk8h 7aII@ FTL>CJv,vF]JLnR2mF4uJav8@ >;h@]ppR4@7LJ@ [,X@@@@@@@@@@@@@@@@@g[]gpR| 7Lb@ [L;v@sv[,yvXJ2*XT*)sT*X[Ly,XRsX4h2y J48*JTg>;p@]gpR|m#Lb)aJk/gaOL/R#TCQOL&k%% kJ)aR*g R)a,s&1agR# d,k bh)Rk@@@@@@@@@@@@@@@@gv]%%nEb>;h@],8 7>@ T|@@],8n @I J=L2nbEJ*uJ I J4=L2nd2#JsJmF4uJ&h 8p vsaOE ;Lk[JL[OJnJb%Jn2vd2#JsJm@@@@@@@@@@@@@@@@g gQv/a;I@Jb &^2JdJb%JnF4uJavuaOF@ #/ aOJ@ [>1h@]y R) 7FLT@LFTL>CJv,vd2#JsJmF4uJ&=JnR,nv 2h @]gpR2LkF@ [zJ^ @v#@@@@@@@@@@@@@@@@gC1a#T@J J*&bnF4uJ&vdnvazgh]@*^IXF%8RJLkL*48[T*L gE ^uJnd2#JsJmF4uJ&uJmL17,O@ [|h@]n@2@@Is J*^^^m2vbF4uJ@@@@@@@@@@@@@@@@g@T&I Jd=L2n2J&Jb%JnQv/az@ ]=@@]ppR4@7LJ4 b &^Jd&*&2J&Jb%JnQvsaOI@ ^uJnd2#JsJ*&2J&Jb%JnI JT=L2nbF@@@@@@@@@@@@@@@@gvu4uJ&Qv#a#T@ 7b^[&^m2vbF4uJ&n@Iv/aOT@ [=d@p,2*L4*)y8*JT*yX X@y8Jyh8[T*@ vEb> g4 Jb &^^% J,n^bF4uJa7O4 L@@@@@@@@@@@@@@@@g;8TL>CJvb &EJmF# JnFTz*[JL^EJ,2vO@ @%@1s4sI*yX*),h18L8sX*4hy,sR8[T*];na @  >CR@pyQLs8LkXQs*XT*1sIhy,sR8*),kL**|,#J@@@@@@@@@@@@@@@@g b@v 2,X@]/8Rv 7Ob4 L^TL>CJv4dd4nEJ,2[L4nFTz*[JsJ*avOd4 bn;7sO&@ >#R@*LyQhy*8IyJ8*JT*yL>[R@)*JX*),kL**XIL@@@@@@@@@@@@@@@@g@hy[>X@]1 z )%sO 2ma8by ] @F]gpz4C &p#Jnkag  &1 dsgaLm bh)Rk%d]p z@vsaO&4 L^R*nv2m@&^2vJd&*&Jb%Iv#aOI@ @@@@@@@@@@@@@@@@gO#^% J,n^2J&Jb%Jnn@Iv/aI4 7*aOm 24d|,b,n^@n[F^2vJb%JnQvsaI4mCC%g Rk b)C)%&*) s# a kR#&s am Rh];@4 *k 8R][R@k>@@@@@@@@@@@@@@@@g#nXE8IzT4*2y8Jyh8[T*>;R@&,yQhy*8IsRygT>[R@22Tk8Qs[J48@bXILyyX X*z**X*JT*y|>R@bJ;,y @@O8R4 u8dy WaLb)aRkL&#&s @@@@@@@@@@@@@@@@g88 d2#d]2@8 y%sO 2ma8byaLb)aRkL&#&b%F*]gpR2L,h@ [v^@m*z8T*1sIhyh)Q*8*JT*y|@@va [ gb&^4dd4nEJ,2[L4nJQ7@@@@@@@@@@@@@@@@g*)Ob4 vTL>CJvb &4dd4nEJ,2JT)v 2h @]/X|Q84b)C)%gaRkL&#&b%Fk bh)Rk%d@2R@= C %sO 2ma8by p#% #aOR/I)a kR#g aR,]gpy@@@@@@@@@@@@@@@@@@g8/I 4=L2=JLdb*&4zmJuEJ,2[L4)7O7 L&Rn^v2m@v^2v4>sJ,&FvJmL1vsaO&@ > g4 Jb &^^% J,n^bF4uJa7O8@ ^*E@*>n@@@@@@@@@@@@@@@@gbXE8s8J4J2)*8R4g[s @]mX@v/aOzgh^@*>nXE8s8h)Q*8J2y4|d^@1>nXE8^s8L2y48IsJJ8X@@ @@bgT>[R@1,2yJ4y8)yz18s8IsJ@@@@@@@@@@@@@@@@g/WJ8L28Jyh8[T*@ yE# gR4 FuJnJd&*&bF4uJa7,OI@JsL*]J,b,n^2J&Jb%JnQ7,OWI@ [L*]J,b,n^bF4uJ&Jb%JnI J2nEJ,2[L@@@@@@@@@@@@@@@@g;Q4nF4uJ&QvuaOFgh@@]/8v,kFghX@]y R) 7sO2,^a v8 82b^ @@@ z@]s8@]2@hu@C%sO 2m # h#&#am R)%aOL&k%d*h]gpv@@@ >p@@@@@@@@@@@@@@@@g@]1 4 v/aOR@ [sR@2ysT*8IzT4*2y8R;,2RXQs*X*JT*yX@g^2/kR@bJ;,y @TCCkRm IaLb)a  g II aRkL&#&s |=h^@b*2y4|L>[R@@@@@@@@@@@@@@@@@g/ dyz*8ILhyph@]ppymdbh)a%*&2,2*) d2#d]p mm8by W b)C)%&*) bh)Rk%d],8y v/aIum/8by W g)Rk g h#&#am Rh]p  7EO&4 b &^@@@@@@@@@@@@@@@@g8WJd&*&bF4uJa7,aO1 bn;X@ @%@|hss1|X*),kL**XT*1sIhy,sR8ILhyJyXsX*JT*yXL288T*k,y* %@1s4sI*yX*),h18L8sX*4hy,sR8[T*@ @@@@@@@@@@@@@@@@@gkTC] )&sJk% m aOL&k%dsJ/ k/&kJ#aR*m% #J) h*mdT)R*g R)ag1k% C #J) @/ %@@]hXmh@ C,s %mI@kL2)4*2J2y8Ly*2X*JT*yC,/ %h @],Xh@@@@@@@@@@@@@@@@gE@ C,s %h* @h4**I*8[T*XIsRy#mF@%F* @nyQLs8LkXy8Q*hy88RT*8[T*Cm, d>&d@bJ;,y @ @Q F^^& W WOg /a%E[ g F @1L2@ u %m@@@@@@@@@@@@@@@@gsm| J@/>[ XE8QsIm8 X@y8[T*X XLy*2C, d@@],pp@ Cms@&* @,^ynXR*khy,z*8LkX^nXE8@#,/ db|a&d@2^nXE8I,,2=8h1zJ=8T8s8*JT8[T*Cm@@@@@@@@@@@@@@@@gT@&@@]*n @ CmC@d4@@]hhT4 FW1Es@/ER CFOQWg aE&WEQR%W ]&n%I@EWIWER EQR%W ]g|dgdL@ Cms@&&d@nyJy8|8X T8T*k@@@@@@@@@@@@@@@@gOz]8X T8JJkCm&@db@@]hh@ C,s &CJ @/>nXE8I|*8IsJJ8Ih1**X*4sC,/ %F @],p)T@ C,s &Ch|@/J4J2)*8R48LkXI8LyX8s8Ly*2C,/ da|a @]g@@@@@@@@@@@@@@@@g,m|%LgdL4 Ek1mIs@/@# aF%EO gC bQJL]&,pXgd EgsIs@/@ IgOC Q Ob]WQT])@pL@ C,@d gd  EuJ%F #C[^C Q Ob]W&[ &T]#8 Rd|ak|@@@@@@@@@@@@@@@@@gC/)Th2),XsXQh)J18I|*8Ts,2* @ hCg,p,@ Cm@&* @,yQLs8LkXI8LyX8Qh)J18Ly*2C,@&F|@ay%aCm@db|a&d@)QLs8LkX[8LyX8JJkC,@&F)@%[8LyX@@@@@@@@@@@@@@@@gW8T*kC,/ %4)@%[8LyX8JJkCm@&&d@)QLs8LkXI8LyX8JJkC,@&Fd@%I8LyX8T*kCm,@%R&d@&*1,)hy*8JJkC,/ db|a @]hhp= EI ER^ %  WQX]&@@@@@@@@@@@@@@@@g=dgdL@ C,@&@@@@@J@%[8LyX8T*k4C)@pT4 E JI&%[Og QX]#81@4 )Og %bp# %&d@p)8LyX8JJk]8JJ)4*2J2y8T*kXIsRy*4#,/ %4)@%@@@@@@@@@@@@@@@@gaOh1zJ8 XI#mE@%RI@&Jy8JJkX Qhk#, db|a @]&dgdL@ CnI T@)4*kX[8IJ)sRJyXJJkX[p8hT@ QL;&1Q uEQRg[%X]%| RJ@@]&1T@ Cm@% @@@@@@@@@@@@@@@@g@]&1X@ C,/ db|a @]hhT4 E1Es@/CFOQW[C bQJOC]hh1X@ C,s dQQ EO %WR^ W %X]%|1T@ Cm@% @]hphuT@E7JI&%[[O  O%@@@@@@@@@@@@@@@@g%O[&W aE&T]#8p E%W]gO@C  O%[&W aE&T]#81L@ @Q EWFOF%WJ[ #%[Jp/ %4)@/h*JT*yX X@y8T*kXL28R*;XI,,21;&1@ C,/ dQ@@@@@@@@@@@@@@@@gn@ Cm@% @]*h@@ C,@& @]%|n%I@2W[@ O &]hh1aI@sIWO%[ E]g|dgdL@ C,s db|a @]1I E7 %WW[&g O & &WC EJ T]hhT4 F@@@@@@@@@@@@@@@@g71F%R[W%[ E& @ O &]hh RJJ@k*JT*yX L*1*X[yX*4sC,s dQQ En & W[ aE&WC[  aE&T]#8p W]gO@L@L / %J @h,2y@@@@@@@@@@@@@@@@g*42h18T*kXJJkCma@dh@@]h,@ Cm#@%b @]&1h@ C,/ dp 2%L@ C,s & p/ dQ,@ CmC@d4@@]hhT@ C,L @]m 1,@ C,/ dQ,@ Cm dpQ4@ CmC@d4@@@@@@@@@@@@@@@@@g%4@]hhT@ C,s &O@Obp/ da|b@@]h/|@ CmE@&O@@]a|dgd@ Cm@% @]ad@ Cm %@@@]#81|@ Cm,@& @]bT1h@ C,R & @@]#81p@ Cm, d>  b1Q@da@@@@@@@@@@@@@@@@gIE@O1Q@da@ 1Q@da@@@@@T@n4*h18IsRyh2y8J sm8IsRz*4yLsR @ R@;kC%L@ Cm@]%@@]kC2@ Cm@^Q@@]kC2L@ Cm@^R@@]kC2T@ Cm@^@@]kC2@@@@@@@@@@@@@@@@gn@ Cm@^T@Tb1@a@1@a@ ]@a@1@a@b1@a@W]@a@Wg]@a@X1@a@X  db@1@a@ %@a@p/ %J @,T*h18Is@@@@@@@@@@@@@@@@gRyh2y8IsRz*4yLsR#ma@& @]h& @],XsX@ C,s & Fd@,248 XIsRyh2yyXL28T*)sT*C,/ dp 2%L@ C,s & [gu & d| @@]%|dgdL@ C,s &X@@]%|%L@@@@@@@@@@@@@@@@gaIgdL@ C,s &@@]%|dgdL@ Cma@d7@@]&2,@ C,/ dp@ Cm&@d7@@]&sL@ C,/ %J|a @]hX& @ C,s &O@@]%|&@1 @]b1,@  ;%|184 EIIE F% &@@@@@@@@@@@@@@@@gL ]hp&@a@@]#8s% y&gIa aE&T]%| RO@@]hhT@ CnI@@]%| RO@@]h/|@ CmE@%@@]& RO@@]nX18@ C,@&@g/ &)@hh4y8IsRz*@@@@@@@@@@@@@@@@g4yLsR#m#@& @]&24@ C,u@@]g|s@@ hTsL@ C,@&] @]1@ C,[ &@@]1@ C,X dp@ @@g Qsy8R2y,yspF,&@a@@]s4s8@ C,s &T @]nX2h@ C@@@@@@@@@@@@@@@@gm &@@])@24@ C,@& @]&h@ Cm#@& @]&24@ T@;%|&@8s8@ C, &@@]%|24@ TL@ Cms@& @]hp&@g@@]#84@ Cm#@dp8@ C,s & @]%|&@g@@@@@@@@@@@@@@@@@gpgapL @]a4@ C, &@@]g|2@gs@ C, @]&,&@a@@]s4s8@ C,s & @]a@ C, @]b2p@ C,/ dpTL@ C,I @] |sL@ C,s &W@@]4@ C, & @]hX&@) @@@@@@@@@@@@@@@@g)@]&2|@ C,= &b @]%|24@ C,Q dp@ C,@& @@@n]E %W RO#@/ &T @]&,&# @]s44@ C,s &T @]a@ C,Q dp@ CmC@&@@]h&d@@]&2h@ C@@@@@@@@@@@@@@@@g/L,E @]h&d @]b2h@ C,/ &T&d@kR*8 L2,yLJ*XIsRyh2y#,s dOyI@E [OR&%WOQL]m /8@ C,/ &@@]& Q@@]m /8@ C,R & @@]#8s] E R@@@@@@@@@@@@@@@@g*|[F[ agW FWL]mdg44 QW]gL@EF^[Ig gWW^^WbpI @]%|24@ Cms@& @]hp&@g@@]#84h@ Cm#@dp8@ C,s & @]%|&@g@%L @]b2p@ C@@@@@@@@@@@@@@@@ghC, &>X @]a@ C,u dpT@ Cn^ &@@]&28@ C, @]b2p@ Cms@&W @]g,4T@ C,/ & @]hp&@a@@]#84X@ C,@& ]b1&@d) @]nX2h@ C,F dpLh@ C,@@@@@@@@@@@@@@@@gk7T d),|@pIh1*8R8Lkm8h4y8 X4sJIym#,/ &@@]nX2h@ C,T d) @] 4&%@@]hX2h@ C,@&]@@@FQR[QJ W^% gI&W&QF g%RO &^Obbb1Q@@@@@@@@@@@@@@@@@@g*]%|2d@ C, &@@]nXsL@ C,F &W@@]a|2d@ Cms@&@@] 42|@ C,T &@@]g,4,@ C,s &T @]nX2h@ C,/ & @]bd%L@ C,F &W@@]bdp@ C,= &% @]&@@@@@@@@@@@@@@@@g[2d@ Cms@&@@]md4T@ T,C*@ CnI@@]#2h@ CnI@@]#2d@ Cm, &% @J@kRy),J*Xs84sI*yL2kpp;%|dgdL4 E[1Es@/C%@O[g C])@dgdL4 @@@@@@@@@@@@@@@@g&XE JI&%[Cg QX]#841g kg %XJ@%2y),J*XJJkT4C)@pT4 E;g Q[/CJI&%[Og QX]#84yI@)Og %gg],@%I@1I8LyX8JJk]@@@@@@@@@@@@@@@@g]81)J,y88J1,)hy*8JJkCmE@&h|@/kQhk8Ly*2X[8yX8J1,)hy**XJJkC,s db|a&d@1yJy8J8 Qhk8]8T*yh,284*z,sXh1zC,@&g|@p TsRX,LyXsL2y84@@@@@@@@@@@@@@@@g,psI*yXyX8T*k@@ @Q nQ a%&@]@&&d@hyQLs8LkXI,yX8JJkC,@&hI@%I8LyX8T*k;mT1ag )Og QX]hh*QI@E1 aF]WC&%[C[@@@@@@@@@@@@@@@@g2Q)EE@%4)@n^QsInEh)yz18s8IT8T,k,2#,s db|a&d@)yJy8[T*8 XLy*2X[#,s %y&d@*z*8[T*8 XLy*2X[#ma@d) @]h/p@ Cma@dhJ @1^nXE8)y@@@@@@@@@@@@@@@@gFz18CILy8s8IsJJ8 TsRX[#,s %@@]&,)p@ C,# %Eh|@,*J)4*2J2y8s8T*kXIsRy*4#,@&) @@@J@/RIQ8h)Q*8Jh4),XITs,2*p,JdIg W@@@@@@@@@@@@@@@@g |g ]&,ggd] E7sIs@/%%]&W[C bQJOC EJ T]nX1X@ C,s %y @]g|h@@ ;%|/L4 E[1Es@/@ O@ aFg [L]hdgdL4 FJI&%[OpC bg@Qs@/Cp@@@@@@@@@@@@@@@@g LC bg@Qp]#8uT@ C,/ & Fd@*>nXE8JXXI,4yX XI#m@ d)d|a&d@pyQLs8LkXI>8,TzXXE8[>8,TzXC,@&* @@k*y8 T8Ry),XR8|*#,/ %F @]@@@@@@@@@@@@@@@@g4F)@p T@FWJI&%[CO@,C1%m/Cg  EIOg Qp]%|naI@E/L, C1%m//Cg ^g Qp]mTdgdL@ Cm %4I@1yQLs8LkXI82*X[8Lz*82J8|*8IsJJ#@@@@@@@@@@@@@@@@g2,@&* @]mdp,4 FW]gOWQ #/ bQJO FCOb]W E^%T@*g] @d8)gd  EsIs@4/CCsIsC@L]),)p@ C,/ dy @]hp)p4 EsJI&%[[C EJ W@@@@@@@@@@@@@@@@gIO%E a]#8uQ EW W OWOC EJ WWg @@@@J@pL2yJ4y8R*;XJ2y4|XL28RIQ8h)Q*uXE|)p@ CmF@%Fd@h>Jy)Qn8F8^RQsInCmO %J @]&gL4 EmE@@@@@@@@@@@@@@@@g QR%W [  OC EJ WWg ]&,gL@ C,/ %y @]g|1X@ C,s da|a&d@*sT*8@y8Qh)J18[T*Cms@d)d|a&d@)ysT*8JXQh)J18[T*C, &C@@],psyT@F 1Es@/@@@@@@@@@@@@@@@@g8QC Q COb]WQWCI F @  [L]hhnd@ C,s db|a @])@p T@EkJI&%[COb]WQWCs sg @]#8u@ Cm@db|a&d@nQLs8LkXI8LyX28J;y*42h18JJkCm,@%@@@@@@@@@@@@@@@@gEW @]#8p@@ @Q  &WIgOEO FO^QWFCOb]W&Q% g&WC%@kg % @],puaT@F1Es@/EOOQFO^QWCI F @[ [L]hhdgdL4 FCs@@@@@@@@@@@@@@@@gm%@OF%E#W E&C2 1p]hhnaI@E#IWOCOb]W&Q% gC2OF]p]&dgdL4 EIWOC%@O[O&WC bQJOC EJ T])@dgdL4 E[JI&%[Og ^Q@@@@@@@@@@@@@@@@gObX]m hm FI&%QWOW &FO^%[[RW &,g/ %*@*>nXE8s8IsJJ8 TsRXI#,u %*@k^[ XE8s8IsJJ8 TsRXI#m&@&m@@]&/L4 EIWCI F @@@@@@@@@@@@@@@@gRJ^[RW dEX@ss8h)Q*8XXXXXXXL2yJ4y8)yz18s8ITs,2*8*JT*yXL2ysXs#m,@%*@*,2)4*2J2y8s8IsRy*4uLkE|/4gdL@ Cm@%>@@]hhnd@@@@@@@@@@@@@@@@@gEu C,s %>d|ah|@pJy8s8IT8T,k,28L28s8h)Q* k@>^%OC EJ Ws&WIgOEOOQFO@IgO^QW&W[^%OCL]%|/L4 FW1Es@/C%O[@@@@@@@@@@@@@@@@gWg CgC2^]O%sILg d2@h]a@d) @]h/1 F1Es@/EOOQFO^QWCI F @W [L@@]&,pgdO@FWsIb%1@Xg ^%OC EJ WEQR%W@@@@@@@@@@@@@@@@gga ]g,*y FWIWO^QW&W^%OC EJ WWg ]#8p E^& W WO^g @WEQ T@b*2y4|C,s %y @]%|/4gdL@ Cm@%= @]hh/L@ C,s %>@@@@@@@@@@@@@@@@g8%d|a @]md*y QW]gL@m  &E@n &E@ng &E@/@ &@ @@/%X %g@%Q@&p@@]*u,@ CmQ@&E@@]*u|@ @Q 2^C Q Ob]WJEQ@&,h|@@@@@@@@@@@@@@@@gT@)@L2y*42h18s8JJkCmQ@&n|@)@pJ;y*42h18s8T*kCmQ@&nh|@)J;y*42h18s8JJkCmQ@%g|@gpRs8yLk2**@@ @@ @@ @Q F^& W J F RRWQ@@@@@@@@@@@@@@@@g]> F% &pEX/ %4)@p)zT4*2y8h1zJ8 XQsIhy,sR8IsRy*4#,s dvh|@mJy8T,k,28 XIQh21XIsRRR#,@&@@@@@J@2yh)Q*8 X4sI*yL2k8Ts,2*8*JT@@@@@@@@@@@@@@@@gza*yJy ,Jk4 E Q %%&[ &T]*pEI@E1W &FO%[FQ[&[ &T]*u8@ CmQ@d*I@)J2*XT*)sT*XTs,2*#,@&L)@hL2y*42h18T*kXJJkCmQ@@@@@@@@@@@@@@@@@gn%g@@]#8s4 ER%FOW FWO%%]*,8@ @@ 4kCd@ XkCv@ LTkCv@ kCvL@ LCkCv@ OX;kCd,@ O CvT@ |;kCvX@ k Cv@ Op;@@@@@@@@@@@@@@@@g OkCv @ O,k Cvd@ O Cvh@ Q CkC4L@ JCkCv,@ @kCvp@ LkCv4@ L kCv8@ 4kCgEJ @v@]@8&8@  CkC14@ |CkC7@@ X;kC7@ |;kC7@ @@@@@@@@@@@@@@@@guQ ;kC7L@ T CvT@ O| Cvh@ J4kC8d@ WCd%8@ J7@ @;*k@ Jm4@ hC*m4@ Lmh@ hJm42%L@ OL Cd@ QX Cd@ Ip Cd@@@@@@@@@@@@@@@@gk@ Q;d)p@ WTd)p@ ,C*d@ 4 Cd@ Oh Cd@ O Cd@ O@ Cd@ ;*n4@ ;d1X@ TCd)p@ Xd/h@ T/@ @)p@ kCd@@@@@@@@@@@@@@@@g u@ dCkCd@ 8kCd@ F  Cd@ F4;*dIg ERRWC %E]W%%]&1@a@b1@a@Rb1@a@Eg]@a@]@a@%@a@@yb1Q@&z@ ]@@@@@@@@@@@@@@@@gz@a@ ]@a@ %@a@]@a@dg]@a@#%@a@;E@a@;%@a@|]@a@Cg]@a@J T %y  d %v Qb1@^|,,@#F@1,)FCm@^=L@@@@@@@@@@@@@@@@g,@#FTh4|F@Q F] F%%EC QJ&[ &WCCRgO@ aFO@=b1Q@da@@]m 7,@ Wp;7478@ C,@d2) @]747|@ C,@d2) @]k8@@ C,u dpF2@C@g@%@@@@@@@@@@@@@@@@g*/F2|a,,@&4*h*XR*8[T*Cn> &@@]#8&2d@ C,@gh|@1*44sT=8I T8T*h*XIJkT*8Qhy8[T*C,8@g@ @]748@ C,@g @]kdIg  &Q& W&L@@@@@@@@@@@@@@@@ga]7478@ C,@d2) @]md7,@ @@ XL;&X%L4 Fs ^s&O&&gC F%%EQd])|% g E>%^ E WQgJ%E F%&Wb^]d@nLLy8TzR8sXT*pT*h*@@@@@@@@@@@@@@@@gI,X,y8Ih4*C,@&>@@@T@mhs*48hs*8T*h*XITs,2* @ XTJ@ Cn> &@@]#8&8%L@ Cm@% @]&,&@8u @ C/@%F,|a @]7478@ C,8@d2b@@]74@@@@@@@@@@@@@@@@gR88@ C,@gC@@]kd@ Cn> &@@]#8&8%L@ Cm,@g @]md8T@ XX;kd@ C,s@d) @])|% g E]F]gC F]W%E&&d]#88T2%L@ @@ @Q E& WQWI%&@@@@@@@@@@@@@@@@g>  &WC EJ [E@aL|@d@8hyzCmQ@%J @gaXT*)sT*XT,k,2#mQ@gC* @&8[T*XIsRy#m@daL|@kbXR,y8@]8I,22*18[X^nCm@a@@|]Q@g&d@psT,k,28 X@@@@@@@@@@@@@@@@g=Qs*J48L2sz8ITs,2*8 Cd4C%Lg%Lg&Lg)g%@@ ;8 dgdg8dgdg8T@ T;8 dgdg8hgdg7,@ @Q E& %J%Fg#CIF% #C QJ&[ &T@EQ@daL|@b*2y4|@@@@@@@@@@@@@@@@gC,u %| @@]%|%LgdL@ C,s &z @]m *@@ X,, |J@g4*h*XR*8T*)sT*CmQ@%[@@]%|k @ C, %@@@]h&kh)g]k,@pyQLs8LkXQ*z*18@8RRh4),XL*XT*@@@@@@@@@@@@@@@@g%2)sT*C,@gE&d@k2s88Q*z*18@8L*XT*)sT*@@ Cm @gF| @@]g,84@ C,@d2FJI@kRs8J2*X X*2Xhs*#,u@@]md* QW]gL]&,7Tgd@@ C,= gF @]#8@@@@@@@@@@@@@@@@g^8,4 b[Q ]%|k 2d@ C, %FJ@@]md*@@ @@ @@ Xpk Ckg d@ Cm@]8|;kd@ @Q  R]F%WCIF% #IW#Cg #FQW&OR&%WO%%%F%Q@@@@@@@@@@@@@@@@gE T@b*2y4|C,/ da|a @]g|h@@ Cm@ %FTb@@]md8u QW]gL]%|%LgdL@ Cm@ %FJ@@]md8u QW]gL]m 84@ Cm, gF*@bJ;,y @ IXI|dIg vQW IE]W^%@@@@@@@@@@@@@@@@g &WL]m )X@ C,/ dIX@ C,s g@@],%@@ Cm@dp@ C,s gI@@]yL@ C,@d2) @]ky@ T;yX @@]m y@@ C,R gI@@]#8yT@ C/ @% @]y@ C/I @]@@@@@@@@@@@@@@@@g;#8&8%L@ Cm, % @C]Q@da@CI]Q@da@ b1@L@@]kCyd@ Cm@ @@]kCy,@ Cm@@@@@@T@d Xsy@@ @XC*|d@ C,s g @]#8y8@ @,C*|d@@@@@@@@@@@@@@@@@gTn Cms@g @]#8y|@ @4C*|d@ C, g@@]g,z@ C/Q@CQbsR@d) @]&y42d@ C/R d) @])@y42d@ C,@d2FTb@@]hXy42%L@ Cma@d) @]hzX@ C,8@gQ @@@@@@@@@@@@@@@@gW,@])@z@ C,@gT@@]g,zd@  F,y4@ Cm, da@@ ]W da@@]g,z@ CmF@g&T) @]#8&2d@ Cm, d2|1 CsR d) @],Xy42%L@ Cm* g @]*z,@ C,@@@@@@@@@@@@@@@@@gE g@@]mTz,@ CmC@g&T) Cp8@g@@]zT%L@ Cms@g&T) @]hzX@ Cma@& @]%|y42%L@ Cm@g @]#8z @ Cm* g @],Xz4@ CnI@@]mTz4@ Cm#@g @@@@@@@@@@@@@@@@@g;]1@ C,@gT@Cb1Q@da@@]&y42d@ Cm* d@ C,s g @]mTy42d@ Cm@d@ C,@gW@@]mTz4@ Cm#@g CWs g&T) @]%|y42d@ Cm@g&Tb@@]#8@@@@@@@@@@@@@@@@g#Ez|@ C,= gT CWg] g @]&,;@@ Cm, g CT ]Q@da@@]1@ Cm* g @],Xz4@ C,s g&J@@]nXy42&L@ C/Q@@]%|z4@ Cm g&J@@]#8;@ C,/ g@CX@@@@@@@@@@@@@@@@gLQb1#@g&T1 @]mdzd@ C*|d@ C,/ g@@]mdd@ LC*|d@ C, g@@]mdd@ TC*|d@ C,u g@@]mdd@ C*|d@ Cm g CObp/ g @]mdd@ d@@@@@@@@@@@@@@@@gCC*|d@ C,s g Cpu g @]mdd@ ,C*|d@ Cms@g @]#8;@ 4C*|d@ Cm* g @],Xz4@ Cm, da@@O ]W da@@]&y42%L@ C,/ d@ C,s g @]%@@@@@@@@@@@@@@@@gJ|y42%L@ [LF a@@]%|y4@ Cm, da@@ ]W da@@]&y4@ CmC@d@ C,@g @Q ]W da@@]nXy4@ C, g @]h a@@]#8&2d@ Cm,@da@COp g @@@@@@@@@@@@@@@@gRQ@]mdd@ TC*|d@ C,# &s@@])|d@ Cm@d@ Cm, da@@]m d@ Cm, da@@ ]W da@@]&y4@ Cms@g&T) @]%|y42%L@ Cm d@ C,@d2FTb@@]m @@@@@@@@@@@@@@@@g)Ed@ C,/ g @]mdd@ dC*|d@ Cm g&T) @]&y4@ C,u da@@]%|dgd@ C,u g @]h;@ CmE@g @]&&2%L@ C,s@da@@]),y42d@ C,/ g&Tb@@@@@@@@@@@@@@@@@@g@,]&,y42%L@ Cm@g[@@]*;X@ C,@d2FTb@@]#8y|@ C,s g&Tb@@]dy42d@ CmO da@@]%|y4@ Cma@d) @]hzX@ Cma@d42d@ Cm, da@@ ]W da@@]),@@@@@@@@@@@@@@@@g82y4@ CnI@@]mTy4@ Cm@g[ @]mTy4@ CnI@@]mdd@ [ C4d@ |C*|d@ CnI@@]&y4@ Cm&@dh@@],%@@ C,s g&T) @]&,y42%L@ C,/ g @]h;@@@@@@@@@@@@@@@@@gg4 CnI@@]mdd@ CC*|d@ CmC@d@ Cm@g@@]#8&2d@ Cm#@g @]mdd@ [ Jd@ CLC*|d@ Cm#@d@ Cm@g@@]#8&2d@ CmC@g @]mdd@ C@@@@@@@@@@@@@@@@gs;TC*|d@ Cm g&T) @]&y4@ C,/ g&T) @]#8;@ CC*|d@ C,s g @]hX a@Cbps g&T) @]%|y4@ Cm@d@ C,s g@@]%|y4@ CmE@d@ Cm @@@@@@@@@@@@@@@@g/g @]mTy42%L@ CmE@g@@]&; @ C/]@@]%|d@ Cm@g@@]&d@ C,/ g&T) @]mdd@ CdC*|d@ C,s g @],X a@@]#8;d@ [ C;,@ [T C;p@@@@@@@@@@@@@@@@@gLz [X Cy@ X C;4@ @kCd@ 4kCg) CX@]@8p@ ,kCv,@ *|%L@ 4*|,h@ @@ *|%L@ 4C*|v@ LJ|%L@ @@ @@ C,*@d/@@@@@@@@@@@@@@@@@@@@@Wa@@F>@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F I@d@@@@@@  IJ@IQ@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gCI,,E,FQOh4ER@F@7CR@CF@O))O&gT&@@@@@@@@OddF@OT)FOsdgFCO%TFgg)&#%QdF #%%2 2%FEOg#2FFg#22FOd%2@@d%2@Od#s@@@@@@@@@@@@@@@@@gdT Tu@COTu@OTu%@ETu%@F 7g@O7g@@ &)@OQ%T@Odg@Cdg@Oh#@E Ws@F #s@ h@C@ W@C #@C %@CCW@Cs@@@@@@@@@@@@@@@@g/@CE@CF R@Ca@@ Rg@ g@ RR@C R@ RT@ER@F R@ 22@E@7@Eu@E u)@EC uR@E@EE g&)dE;JEE|EO%TWT2@WT@@@@@@@@@@@@@@@@g^2OgWT2WT2COgOgy 7Ek[&4sg4sW&4sgs[&4sgs[&4sgs# ) )EO#TRO2sR[&4sgsOR)dO#TQE O2bWEL 4QO#T7[&4sgssOX#s[g%Xsgs8gWg4%X@@@@@@@@@@@@@@@@@@@g4u2222222222222222222222222222p)W&4sg4spppppppppppppppp,%JyFIFF@p@&FFFFFFFFEd)W@@pppppppppppppppp,,,,,,,,,,,,,,,,,,,,,,,,,,,,,%Ipp@@@@@@@@@@@@@@@@g)@&FFFv&>&^/b/F/@@b8zI@&8zJ@*8z @n8zL@2W %8;hO8z O%8zp@nL@ dQ@ QgR@ R%n@ gT@ T%n@ g@ dW@ WgX@ Xg@@@@@@@@@@@@@@@@g% @ %n@ d[@ [g@ d]@ ]g^@ ^g@ %n@@88a@X 8b@h 8#@8 8d@I 8%@IX 8&@Ih 8g@I8T8h@JT8)@JXT8*@Jh 8k@@@@@@@@@@@@@@@@@g&J8T8,@  8m@ X 8n@ h 8/@ 8 8p@L 81@LXT82@Lh 8s@L8 84@ T8u@ XT8v@ h 87@ 8 88@CT88 #& ]g*@; )gnT|]CO%8z@@@@@@@@@@@@@@@@gy*F^y7p@;^dJ@ ^/pR@ OpT@ Q7LzEa#)u@ ]/h s7I^agn]|]CO)8zF^y[p@;^dJ@ /p]@ p@ @@ysCa4EX]T@]h@FWR^]1u8]%7E@@@@@@@@@@@@@@@@g=a4FW^@v  ]1a8@y@p T@a pF^udEapv b@@]h Ip gR]X@b a|1I4gRF@^EF7J]@]&%v 8,]@L@X@]h4@@@@@@@@@@@@@@@@g># v#p J@X[]h%4EpvWCb14@])@dQX@]) vCb%IL@])T v#p %gR@zE%pv#p J@bEpTR@IE bX@Id@]h& v^@@ @@@@@@@@@@@@@@@@@@@@@W%s@@[@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F I@d@@@@@@  IJ@IQ@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gCI,,E,FQOh4ER@F@7CR@CF@O))O&gT&@@@@@@@@OddF@OT)FOsdgFCO%TFgg)&#%QdF #%%2 2%FEOg#2FFg#22FOd%2@@d%2@Od#s@@@@@@@@@@@@@@@@@gdT Tu@COTu@OTu%@ETu%@F 7g@O7g@@ &)@OQ%T@Odg@Cdg@Oh#@E Ws@F #s@ h@C@ W@C #@C %@CCW@Cs@@@@@@@@@@@@@@@@g/@CE@CF R@Ca@@ Rg@ g@ RR@C R@ RT@ER@F R@ 22@E@7@Eu@E u)@EC uR@E@EE g&)dE;JEE|EO%TWT2@WT@@@@@@@@@@@@@@@@g^2OgWT2WT2COgOgy 7Ek[&4sg4sW&4sgs[&4sgs[&4sgs# ) )EO#TRO2sR[&4sgsOR)dO#TQE O2bWEL 4QO#T7[&4sgssOX#s[g%Xsgs8gWg4%X@@@@@@@@@@@@@@@@@@@g4u2222222222222222222222222222p)W&4sg4spppppppppppppppp,%JyFIFF@p@&FFFFFFFFEd)W@@pppppppppppppppp,,,,,,,,,,,,,,,,,,,,,,,,,,,,,%Ipp@@@@@@@@@@@@@@@@g)@&FFFv&>&^/b/F/@@b8zI@&8zJ@*8z @n8zL@2W %8;hO8z O%8zp@nL@ dQ@ QgR@ R%n@ gT@ T%n@ g@ dW@ WgX@ Xg@@@@@@@@@@@@@@@@g% @ %n@ d[@ [g@ d]@ ]g^@ ^g@ %n@@88a@X 8b@h 8#@8 8d@I 8%@IX 8&@Ih 8g@I8T8h@JT8)@JXT8*@Jh 8k@@@@@@@@@@@@@@@@@g&J8T8,@  8m@ X 8n@ h 8/@ 8 8p@L 81@LXT82@Lh 8s@L8 84@ T8u@ XT8v@ h 87@ 8 88@CT88 #& ]g*@; )gnT|]CO%8z@@@@@@@@@@@@@@@@gy*F^y7p@;^dJ@ ^/pR@ OpT@ Q7LzEa#)u@ ]/h s7I^agn]|]CO)8zF^y[p@;^dJ@ /p]@ p@ @@ysCa4EX]T@]h@FWR^]1u8]%7E@@@@@@@@@@@@@@@@g=a4FW^@v  ]1a8@y@p T@a pF^udEapv b@@]h Ip gR]X@b a|1I4gRF@^EF7J]@]&%v 8,]@L@X@]h4@@@@@@@@@@@@@@@@g># v#p J@X[]h%4EpvWCb14@])@dQX@]) vCb%IL@])T v#p %gR@zE%pv#p J@bEpTR@IE bX@Id@]h& v^@@ @@@@@@@@@@@@@@@@@@@@@W%s@@[@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F I@d@@@@@@  IJ@IQ@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gQJI,,E,FOddOh4EF@OT)FOsdgFCO%TFgg)&#%QdF #%%2 2%FEOg#2FFg#22CFOd%2@@d%2@Od#s@ Tu@COTu@OTu%@ETu%@F @@@@@@@@@@@@@@@@g 27g@O7g@@ &)@OQ%T@Odg@Cdg@Oh#@E Ws@F #s@ h@C@ W@C #@C %@CCW@Cs@CE@CF R@Ca@@ Rg@ g@@@@@@@@@@@@@@@@@gJv RR@C R@ RT@ER@F R@ 22@E@7@Eu@E u)@EC uR@E@EE g&)dE;JEE|EO%TWT2@WT2OgWT2WT2COgOgy 7EkW@@@@@@@@@@@@@@@@/y%T&[%T&[%T&IEOR)d[%T&#7R@CF@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g/u2222222222222222222222222222p)W%T&ppppppppppppppppp,%JyFIFF@p@gXpFFFFEd)W@@Ipppppppppppppppp,,,,,,,,,,,,,,,,,,,,,,,,,,,,,%*,@@@@@@@@@@@@@@@@g]*#Lv8&a@m8g@u8ga@=8d@ Q 24OTEd4pE248F4O@FT4OhFs4OpTO|@u8g%8pIuyIbypJuzJauzp %; b;pLu|Lb|p @@@@@@@@@@@@@@@@g,u= au=p%>au>pOObp@IO@ aIOC@ QIOE@ QaIO@ R@)OI@ R )O @ @)O @ aIOO@ T@)OQ@ TaIO@ IO@ aIOW@ I@@@@@@@@@@@@@@@@gJWO@ aIO[@ W@)O]@ WaIO@ XIOa@ X )O#@ @)O%@ aIOg@ IO)@ )O*@ 1pvg n8/uaRO@1vd^@k#m|//y@Td@y= T@z= X@;@@@@@@@@@@@@@@@@g1L= ]mF[RF7@7=aI J8;RO@k1vd^@s#m|7/y@Td@;= *@|] @|a= ]mF[RF7@7>QI J8;RO@k1vd^@s#m|7/=RO@a1@ [>CvIQ Cy=T /|@@@@@@@@@@@@@@@@/^/=@@7/RE@C^=T@ O;|1 ;y@bh@7p CL@ C|*@hT@  |LJ@ ;d@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@W%n@@F@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F I@d@@@@@@  IJ@IQ@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@/TI,,E,FEk[%T&#OX#sO2s7E[d2Qu7O#TQE;FO2sQ[d)s%QTO#)[g#2#2OR)4[%s2s#Oh4CR@C@@@EO%T@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gJ^u2222222222222222222222222222p)W%T&#pppppppppppppppp,%JyFIFF@p@gXpFFFFEd)W@@@pppppppppppppppp,,,,,,,,,,,,,,,,,,,,,,,,,,,,,7b@@@@@@@@@@@@@@@@ hyh vO8@Ed J&TT@*k @mF]@%F]a@[F^@)F^a@8@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Wg7@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F I@d@@@@@@  IJ@IQ@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gyXI,,E,FEk[QsQgOX#sO#TREE;FO#TQ[Qsg4QOs)[QT)d2bOR)4[%s2[QsgO2b2@@@@OvdO#T7[TdE@@WT#Q8OR)7 O&dJ@XQ)OR))TQsQE R@@@@@@@@@@@@@@@@| E@@Oh4C@@O%T@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gFu2222222222222222222222222222p)WQsQgpppppppppppppppp,%JyFIFF@p@gXpFFFFEd)W@@pppppppppppppppp,,,,,,,,,,,,,,,,,,,,,,,,,,,,,7b@@@@@@@@@@@@@@@@v8>|E TR@*[J@ a Jm*a@>@ J&s W@)&vns/&;8@ LIL&|EEX4^E@Wa@WLb@J#L @[dW%&@R]gh)@bWgh*@Jk@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Wg@@@,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F I@d@@@@@@  IJ@IQ@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@I,,E,FEk[g%XsgOX#sO#TREE;FO#TQ[g%s4QOd)W2W%OR)4[%s2[g%sO&d@@OR))Oh4C@EO%T@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gh[u2222222222222222222222222222p)Wg%Xsgpppppppppppppppp,%JyFIFF@p@gXpFFFFEd)W@@pppppppppppppppp,,,,,,,,,,,,,,,,,,,,,,,,,,,,,7b@@@@@@@@@@@@@@@@@a8>|E TR@*[J@ a Jm*a@>@ J22kW@%>@4@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Wgv@@@^@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F I@d@@@@@@  IJ@IQ@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g8nI,,E,FEk[QgsOX#sO#TREE;FO#TQ[Qg4QOs)[QT)d2bOR)4[%s2[QgO&dJ@OvdXQ)[XQ)dO2bdOR))@@Odv[Q))s@@@@O2b2@@@@@@@@@@@@@@@@@@@@E FO#)O2sQ[)2Q%7Oh4C@@@R@EER@EFO%T@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g 4u2222222222222222222222222222p)WQgspppppppppppppppp,%JyFIFF@p@gXpFFFFEd)W@@Cpppppppppppppppp,,,,,,,,,,,,,,,,,,,,,,,,,,,,,7b@@@@@@@@@@@@@@@@gy8>|E TR@*[J@ a Jm*a@>@ J2sE ,g,vWF@kkJmk>@k;@@ E p EQ 1 EI&CRR&g@ E@ E&T@ E&J&g@ 4u ITu TTuW@ @@@@@@@@@@@@@@@@7;ETuW vTuX@ EX @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Wg@@@2@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F I@d@@@@@@  IJ@IQ@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ pI,,E,FEks8gOX#sO#TREE;FO#TQ[s8g4QOd)W2W%OR)4[%s2[s8gO&d@@OR))Oh4C@EO%T@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g u2222222222222222222222222222p)Ws8gpppppppppppppppppp,%JyFIFF@p@gXpFFFFEd)W@@pppppppppppppppp,,,,,,,,,,,,,,,,,,,,,,,,,,,,,7b@@@@@@@@@@@@@@@@1Q8>|E TR@*[J@a uTa@F J42sW@%#a@8@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Wg7@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F I@d@@@@@@  IJ@IQ@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g)sI,,E,FEk)QTOX#sO#TREE;FO#TQ[)QT4QOs)[QT)d2bOR)4[%s2[)QT[sdEL)svCFsdO&d@F@FO#T7Td@Ovd[%T2RFR)sv@@@@@@@@@@@@@@@@gy&XW&4%s OQ7JOR)7[)Q)T[)#)TOR)d[))#%bs7s#)Ts8gO))EJQ)TORsv[)s#&vO2sRXQ)OR))O24RWsX)O2bQ&%2)T2O8dEEOh4@@@@@@@@@@@@@@@@g @@F@R@ER@F@R@FER@CR@CEO%T@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g%2u2222222222222222222222222222p)W)QTpppppppppppppppppp,%JyFIFF@p@gXpFFFFEd)W@C@@pppppppppppppppp,,,,,,,,,,,,,,,,,,,,,,,,,,,,,7b@@@@@@@@@@@@@@@@gz8>|E TR@*[J@a uTa@T=%vnp[C &QW@WCI /,;y4J&n^ J&EJ*JbmEJg),|u7phRs]8h4y8,2L2k*@@F7J[L@Ou&k%g %h@@@@@@@@@@@@@@@@gL),,kaR*b)1ag a% JT&R]TE LX[ pkd^p2%R#J&1 2ma g )I %aR*b) kbvId>/F#%g &#R)aR*b) s k R&v[h*k,kh@T&Xmn8]pg1 bnb@@@@@@@@@@@@@@@@g]Fs ^kbvId>d,**)a aR*b) &p*g&v[2*k,k2@T&Xmn8]pg1 bnbs RQ]4%&k%g am R)%aR*bh7pk%7a&k%g k RT& ppkdT8>E Lz=ds@@@@@@@@@@@@@@@@g1E dkg &#R7aRkg)J>X,@|4@L TC T,u,|@QL%T| duQLXF##8E[W &WQWCEg &T1FF@Ts #a,@JI#C4@h;,y88RL28 XJ)%2,Tv#@@@@@@@@@@@@@@@@@gX1nd@nd b%@n%  b&@Fb& hbg@I*g @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@W&y@@Q@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F I@d@@@@@@  IJ@IQ@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gJsI,,E,F 22EO&gT&@@@@@@OdTb@F@@@@@@gg)&O2b)%QdE|FEE;FO%&gO2b%O%TEkWg4%XOX#sO#TRFO#TQ[g%X4QOd)W[#%WR#bOR)4[%s2[g%X@@@@@@@@@@@@@@@@g&pO2sRO#)WT@[&4s2yOR)d[2s&b[sdEgsvCsdE JgRsvO2sQs2s7R)svE O&d@FFO#T7Td@Odv[%T2RLOR)7@@@@[)2Q%7OR))O2@@@@@@@@@@@@@@@@gzR4RWsX)O2bQ&%2[))#%bs7sg%XTQsQF@J@b@C@CFFOh4R@ER@CR@E@F@FC@R@FER@ER@CE@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g&u2222222222222222222222222222p)Wg4%Xppppppppppppppppp,%JyFIFF@p@gXpFFFFEd)W@C@@Cpppppppppppppppp,,,,,,,,,,,,,,,,,,,,,,,,,,,,,7C2@@@@@@@@@@@@@@@@g/vEWC8Fkp X@bh;),kTF88vTz[Ju@ Q2C>]1=u>8WpXa8pyWQy%WpIg1y%Wp@XzQa 21 h4X,J,|I%,mE%%@@@@@@@@@@@@@@@@g,8TX;%Wp | 24|u,|4LI=ITvLJT|%W;TIn|L,4|LvF4X|=@]R4p@]a=p]a=p^vndp^1@Q O21p)W&4sg4spv&)Tp@@@@@@@@@@@@@@@@gy=)&dpR4)p ;|*@ WX^F@nE bX@bOCmpE@J @Q[8 @by@ T 4zI%8@#EC)b)|@2XQ |@QdyLh&sk  ad*&vQRuyT>@*p8R@s@@@@@@@@@@@@@@@@7%|k @ T ]^O F; g E  h E12 )@pn&p*@E&p* ]&pk@In&pk E&p,@%&p, I2&m@E%&pm ;&pn@Id@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@W&u@@]@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F I@d@@@@@@  IJ@IQ@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gaI,,E,FEk[%s2O2sR[d)s%QTO2sQE4%sO2s7[d2Qu7O#TQ[&4%s#[&4%suOd%O#TRWTI[#%WR#bO2bQ[TC[)2%7# QOs)[QT)d2bOQTT[&%sQW[s@@@@@@@@@@@@@@@@gRQW2sOT)O2b%OR)d[#%%&O#)[%&Q)WW&4%s[2Q%7[)2Q%7[g7g2u[gd%#&%2[gQ)%s[g#2#2O#T7OR))Oh4C@@@@R@R@CR@FR@ER@F@@@@@@@@@@@@@@@@[R)4d&gR@FC@C[))#%bR@FE@@R@F@E@F@@E@@E@F@E@EC@ER@O%T@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g)|u2222222222222222222222222222p)W%s2pppppppppppppppp,%JyFIFF@p@gXpFFFFEd)W@@Epppppppppppppppp,,,,,,,,,,,,,,,,,,,,,,,,,,,,,7uX@@@@@@@@@@@@@@@@gu /^F@zFR]LCFnh%W @2ska@Iv@ L2y8F]hCnvC#)J,Cn|g7@@L a@Lb@L#O@LdJ%@L&@L g@L h@L )@L *@L k@L ,@LRm@L @@@@@@@@@@@@@@@@gsn@L /@LpQ@L1 @ 2s4u@OJs4v@Q2s47@2s48@T2s4y@W4s4z@X2s4;@2s4|@=2s4>@[2s4@@Lvd@^Lvd@aLvdL@%Lvd@hLvdT@)LvdX@@@@@@@@@@@@@@@@@;*Lvd@kLvd @,Lvdd@mELvdh@nLvd,@gLvdp@/Lvd4@ Lvd8@Lg @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@W&8@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gC@ %n@ d[@ [g@ d]@ ]g^@ ^g@ %n@@88a@X 8b@h 8#@8 8d@I 8%@IX 8&@Ih 8g@I8T8h@JT8)@JXT8*@Jh 8k@J@@@@@@@@@@@@@@@@gEz8T8,@  8m@ X 8n@ h 8/@ 8 8p@L 81@LXT82@Lh 8s@L8 84@ T8u@ XT8v@ h 87@ 8 88@CT88 #& ]g*@; )gnT|]CO%8zF@@@@@@@@@@@@@@@@gI[^y7p@;^dJ@ ^/pR@ OpT@ Q7LzEa#)u@ ]/h s7I^agn]|]CO)8zF^y[p@;^dJ@ /p]@ p@ @@ysCa4EX]T@]h@FWR^]1u8]%7E@@@@@@@@@@@@@@@@g%Ia4FW^@v  ]1a8@y@p T@adEa v b@@]h p gR]@ba|1I4gR@EF7I]@]&%v 8h]@ @X@]hp#v# J@@@@@@@@@@@@@@@@OuT@X[]ha4EpvWCba4@]h|dX@]) vCbRdy@]) v# %WR@vE% v# J@^EpTR@IE bW@I @]h&v^@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@W%2@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F I@d@@@@@@  IJ@IQ@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gQJI,,E,FOddOh4EF@OT)FOsdgFCO%TFgg)&#%QdF #%%2 2%FEOg#2FFg#22CFOd%2@@d%2@Od#s@ Tu@COTu@OTu%@ETu%@F @@@@@@@@@@@@@@@@g 27g@O7g@@ &)@OQ%T@Odg@Cdg@Oh#@E Ws@F #s@ h@C@ W@C #@C %@CCW@Cs@CE@CF R@Ca@@ Rg@ g@@@@@@@@@@@@@@@@@g [ RR@C R@ RT@ER@F R@ 22@E@7@Eu@E u)@EC uR@E@EE g&)dE;JEE|EO%TWT2@WT2WT2OgWT2WT2COgOgy @@@@@@@@@@@@@@@@gRL7EkOQR2QR2WQR2IQ hy)&QR2ITQsQ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gnu2222222222222222222222222222p)WQR2ppppppppppppppppppp,%JyFIFF@p@gXpFFFFEd)W@@Fpppppppppppppppp,,,,,,,,,,,,,,,,,,,,,,,,,,,,,74@@@@@@@@@@@@@@@@g)E/8F/|/ I@&aza@,&av@na7@pa8@2&a=@v^a>@;zaa@@hO|hOFhOJLRhOhORThOX|hORhO^ hObdRhO&hhO*,@@@@@@@@@@@@@@@@g;hOnp|hO24hOv8RhOz|RhO>@@IJ8IJ8XIJ8hLIJ88EJyTEJyXXEJyhIJy8 EJzdIJzXhIJzh,IJz8pIJ;4I@@@@@@@@@@@@@@@@gh4J;X8EJ;h|IJ;8C@IJ|CEJ|XCEJ|hCLIJ|8CIJ=@bEJ=CIv1v4ym7@ >,JQ8C4#pE]) 8  @Qd OhTCb WhTC#@[hTCd@@@@@@@@@@@@@@@@@gdWO,C#mhsv; FnI|WQ8E^4#pF]) 8  @Qd #hTC%ghTC# hO,C#mhsv; F4I|WQ8E^4#pF]) 8  ,RQ8C2@  RL@ 1zdE@@@@@@@@@@@@@@@@gv*;RhC; O#R)Q)8p)&4s%[7,IE/^pdJ@I]a8[)m a / &4O@F|X[7ym@/O C[,@[41/a@/E [|@[1a/&4@^v=>[Qp@ QT@L^a@@@@@@@@@@@@@@@@/J[h@[7@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@W%n@@F@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F I@d@@@@@@  IJ@IQ@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g I,,E,FQOh4ER@F@WQs8gR@F7CR@CF@OddF@OT)FOsdgFCO%TFgg)&#%QdF #%%2 2%FEOg#2FFg#22FOd%2@@d%2@Od#s@ Tu@@@@@@@@@@@@@@@@gm#@COTu@OTu%@ETu%@F 7g@O7g@@ &)@OQ%T@Odg@Cdg@Oh#@E Ws@F #s@ h@C@ W@C #@C %@CCW@Cs@CE@@@@@@@@@@@@@@@@g>L@CF R@Ca@@ Rg@ g@ RR@C R@ RT@ER@F R@ 22@E@7@Eu@E u)@EC uR@E@EE g&)dE;JEE|EO%TWT2@WT2Og@@@@@@@@@@@@@@@@WT2WT2COgOgy 7Ek2W%W2W%OW2W%I gEO#TQO#TRE E O2bQ&@@@@@@@@OR)4W2W%O2sRO#)O2sQOR)d@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ggu2222222222222222222222222222p)W2W%pppppppppppppppppp,%JyFIFF@p@gXpFFFFEd)W@@Ipppppppppppppppp,,,,,,,,,,,,,,,,,,,,,,,,,,,,,%&@@@@@@@@@@@@@@@@gzJ|n/b/F/Ob@hdhh,h,|hpCI]@vWd^a@|#d@>Wd[@@J8bp8#Fb8#J8#Lb8#R8#Tb8#X8#^b8# bb8#d&8#h@@@@@@@@@@@@@@@@g*8#,nb8#p28#4vb8#8zb8#|>8b@@ daF@abCaF@bbCaFL@#bCaF@dbCaFT@%bCaFX@&bCaF@gaaF @haaFd@)aaFh@*bCaF,@kaaFp@,b@@@@@@@@@@@@@@@@gk|CaF4@mbCaF8@nbCaF|@/bCa@@pbCa@1aa@2bCaL@sbCa@4aaT@uaaX@vbCa@7bCa @Laab@ym4R]hCm2&^y14L=2W#h;g@Cmy@@@@@@@@@@@@@@@@@gk F)hzEgI;EgI||2I[hTzFgTv>CO%8zF^y714L=2g#h;%/@Cmy@ F)h=EgI4>EgIX|2I[hTzFgTvbCO%8zF^y714L=2g#h;%/@C,@%@@@@@@@@@@@@@@@@g|y7F @]gd@  @ hL aE F ^OCI%^W[RO &v @bF@@4@]h@E ,gR]L@a@,[]h]4EpvWb4@]hd vb b #4@]h4b88@]h|@@@@@@@@@@@@@@@@/2d@vb b  v#b #4@]hhb14@d@nQ@X@])@])L v%@ @X pTR@y@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@W%=@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F I@d@@@@@@  IJ@IQ@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g4XI,,E,FQOh4ER@F@7CR@CF@O))O&gT&@@@@@@@@O#Tg&@@E@@@@@O2sT&@@@@@@@OQR&@@@@@@ORQ&@E@@@@@Od4#&@F@@@@@OTu&@@@@@@O#Q@@@@@@@@@@@@@@@@gR&@C@@@@@@O#R&@C@@@@@O#7&@C@@@@@O7Q&@CC@@@@@OQ7&@C@@@@@OR7&@CE@@@@@O%Q&@CF@@@@@O7dQ&@C@@@@@OQTd&@@@@@@@O2b&@@@@@@O2b)@@@@@@@@@@@@@@@@gsX&@@@@@@O2bR&@C@@@@@O)2#&@@@@@@#)2XO#T&@E@@@@@O2s&@F@@@@@OQT&@@@@@@O24&@E@@@@@@O77Q&@E@@@@@OgQ&@E@@@@@Og2&@EC@@@@@@@@@@@@@@@@@@@@g8z@O7R&@E@@@@@O2bT&@EE@@@@@O77R&@EF@@@@@OddF@OT)FOsdgFCO%TFgg)&#%QdF #%%2 2%FEOg#2FFg#22FOd%2@@d%2@Od#s@ Tu@C@@@@@@@@@@@@@@@@g/&OTu@OTu%@ETu%@F 7g@O7g@@ &)@OQ%T@Odg@Cdg@Oh#@E Ws@F #s@ h@C@ W@C #@C %@CCW@Cs@CE@CF@@@@@@@@@@@@@@@@gpF R@Ca@@ Rg@ g@ RR@C R@ RT@ER@F R@ 22@E@7@Eu@E u)@EC uR@E@EE g&)dE;JEE|EO%TWT2@WT2WT2@@@@@@@@@@@@@@@@guWOgWT2WT2COgOgy 7[2h4Q)Ek2h)sO)2W2sQ)sWRW%O% hEOR)d24R)O2hO2bWJIROR)42hO2s7 s7O2sQ QXO2sR Q#O7QRO#8Os) d @@@@@@@@@@@@@@@@g *COQTT   @OR)7OO)2XO#TRJ@hORQO#T7OR))EL 2hTQsQb@CECb@@EFCb@CCCb@FECEC&@@CEEEF&@@@C@&@@E@&@@@&@F@@@@@@@@@@@@@@@@@gv>@CC&@FCE&@@CC&@CFCb@@E@b@Eb@E@@b@CCEb@E@@b@C@Fb@CCFb@CCFC&@FCEF&@FF@&@CFE@&@@@@@@@@@@@@@@@@@7JLEF@F&@FCFCC&@F&@C@C&@@F@Eb@C@@C@b@FCCb@C@^@FEFF@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g2du2222222222222222222222222222p)W2h)spppppppppppppppppp,%JyFFFFF@p@gXpFFFFFEd)W@Fpppppppppppppppp,,,,,,,,,,,,,,,,,,,,,,,,,,,,,u8d@@@@@@@@@@@@@@@@gJm8p ;8@WOQ7OQaI@p&%u)2&%*yz @nyzL@2yz @vyz@zyzO@>yz@@ gdQ@ QgdR@ Rgd@ gdT@ Tgd@ gd@ gdW@ WgdX@ Xgd@ @@@@@@@@@@@@@@@@g|gd@ gd[@ [%gd[@ d ]d] ^d^ d @Ca8b@aCa8bF@bCa8bJ@#Ca8b@dCa8bR@%Ca8b@@ELLLLy)]&) 8& Ip8g J@8@@@@@@@@@@@@@@@@gbh J8) J *@k8zp@,bJ8z^@m8zb@ma8z&@nJ8zz@/C*8z>@pz8;@1C*8;F@2z8;J@sC*8;@4J8;R@uC*8;@vC*8;@7z8;^@8J8;b@yC*@@@@@@@@@@@@@@@@gz#8;&@zJ8;*@;C*8;n@|C*8;2@=z8;v@>C*8;z@J8;>@@nnXnhCn8nQE@*nQXF@*nQh@*nQ8nRI@*nR@@@@@@@@@@@@@@@@gO[XJnRh nR8Ln nXnhO@*n8nTQnTXR@*nTh@*nT8TnnX@*@*n aEJ ^/u= @  *%@@@@@@@@@@@@@@@@gCdgv]^*R[uz) E&@  h@ J J* Ek[J8& E/[J8g E1[J8) E2phuzW*]X@E#a)ImgW*%d,]^*Ruz)J &@  h@ J J* Eu[J8,@E7[J8h E8p@@@@@@@@@@@@@@@@g huzW*]X@E#^)ImgW*%d,]^*Ruz)J &@  zJ%d)vXXv @I8@@@I8@s g@mL#&sJ/ ) h%Fk@R@v@FCavFIhb4h8hX7hQ#@E#^a@@@@@@@@@@@@@@@@g2p@  zIh#aEpEkE^&u>@ Xm,kOW*X4%# yp@ b@pXyQ%@EbIa@L@ R#4,@ W^a@ X]&F[g@J&n^JmLvu**> J=#gaFaW*^b@&*),@@@@@@@@@@@@@@@@gTmh18IhyJvdXXz Q* E#kFn@ IJ@ p@ 2JXX;Qmuz&@ J@@ 2[%^/;h#kRm I ghd2g ,sgX;pQ/uz>@ 2hX;pQpz>@ 2hX;pQpuz>@ I@@@@@@@@@@@@@@@@gdI8X;@XgXg@X;@X|Q y1W*F@#*8X@vJ@@ O J@h4*8J4Xh*8X@v8aOLhXh@X;@X&XQsyp&k%g bk k*k X| ,hLbkaLh)X| g Eb@@@@@@@@@@@@@@@@g8s aFn@ h]@X=X#XQk EbLaOg@Jm J;F^FCJv^@^|Jn#/@ |8Xg@X=Q) E#uaFT@ @WaF[g@Jn^4uJmLv J=bFav=&z@g2*k84k8@@@@@@@@@@@@@@@@gXJ44sTvOmaOpa]8X=p]8@E#77b@ O^p^XX=p]z@E#77*@ O^p/a^8X=p]|@E#772@ OnXX=p]>@E#77@@@@@@@@@@@@@@@@g]z@ OpX=p] E#7p@@Eb; ]@@,WCh@Eb; ]@p@,WCh@Eb; ]@,WChL@Eb; ]p@,WCh@Eb; ]@,WChT@Eb; ]p@,WChX@Eb; ]C@,W@@@@@@@@@@@@@@@@Q*Ch@Fns@F*sR@F&s@,s@Ebm@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@W#g@@O@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F I@d@@@@@@  IJ@IQ@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g=I,,E,FQOh4ER@F@WQs8gR@F7CR@CF@OQRO&gT&@@@@@@ORQ&@E@@@@@Od4#&@F@@@@@OTu&@@@@@@O#Q&@C@@@@@@O#R&@C@@@@@O#7&@@@@@@@@@@@@@@@@gvh@C@@@@@O7Q&@CC@@@@@OQ7&@C@@@@@OR7&@CE@@@@@O%Q&@CF@@@@@O7dQ&@C@@@@@OQTd&@@@@@@@O2b&@@@@@@O2b)&@@@@@@O2bR&@C@@@@@O)2#&@@@@@@@@@@@@@@@@g @@@@@@#)2XO#T&@E@@@@@O2s&@F@@@@@OQT&@@@@@@O24&@E@@@@@@O77Q&@E@@@@@OgQ&@E@@@@@Og2&@EC@@@@@O7R&@E@@@@@O2bT&@EE@@@@@@@@@@@@@@@@@@@@@gO77R&@EF@@@@@OddF@OT)FOsdgFCO%TFgg)&#%QdF #%%2 2%FEOg#2FFg#22FOd%2@@d%2@Od#s@ Tu@COTu@OTu%@ETu%@F 7g@@@@@@@@@@@@@@@@gub@O7g@@ &)@OQ%T@Odg@Cdg@Oh#@E Ws@F #s@ h@C@ W@C #@C %@CCW@Cs@CE@CF R@Ca@@ Rg@ g@ R@@@@@@@@@@@@@@@@gJR@C R@ RT@ER@F R@ 22@E@7@Eu@E u)@EC uR@E@EE g&)dE;JEE|EO%TWT2@WT2WT2OgWT2WT2COgOgy 7@ 7@@@@@@@@@@@@@@@@ghaO))&@@@@@@@@O#T&@@@@@@@O#)&@@@@@@@O#&@@C@@@@@O2sT&@@@@@@@O#Tg&@@E@@@@@O#%&@@F@@@@@O#d&@@@@@@@O#T&@@@@@@@O#2&@@@@@@@@@@@@@@@@@@@@@@gyO#Q&@@@@@@O#W&@C@@@@@O7&@@@@@@OTgd&@E@@@@@O7&&@F@@@@@O&&@@@@@@ ##&@@@@@@@&@@@@@@OTgQ&@@@@@@OTg2&@C@@@@@O2byO@@@@@@@@@@@@@@@@g 2bQE &@Ek7gW7@E8dO#TQO2sQWds8gOR)dO#)O#2XOQTTOR)4O7gO7gE 7gQO%&gRO2bWO7g7gQO7gQEL 4)O7gFO24R7gOd%W#&%O#@@@@@@@@@@@@@@@@O>TRO2sR7gRO7gEO#T7&@@@@@@@@ORQT s)7g7g@7gCW7g@QO)87g7ggOR))7gO)2X7gO2b%W7gCR7gE R&TQsQO)2@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g @u2222222222222222222222222222p)W7gpppppppppppppppppp,%JyFFFFF@p@gXpFFFFFEd)W@pppppppppppppppp,,,,,,,,,,,,,,,,,,,,,,,,,,,,,% Jn@@@@@@@@@@@@@@@@gQ||4*,n[J[L4nF=L2*&%Jn/b/F/Ob@bbR g *kds J&d*4nC2CTvCdzC4>@JQRJQXbJQh2JQ8EJQEERJQEXEb@@@@@@@@@@@@@@@@g@JQEhE2JQE8FJQFFRJQFXFa2QFXF*JQFpFzJQ@JJQJQ *JQpzJQ@@QIFQI JQIpQII@@T%TpppI@p&%u)2&%dd8bT@%@@@@@@@@@@@@@@@@ghJd8bX@&d8b@gd8b @ha&E*h,* nE*ppE*@2*[vQ*[ z*[p>Q*@C*CFQ* CJ*pCQ*]@CRQ*]C*] @@@@@@@@@@@@@@@@g2uC*]pC^Q*^@Cb*^C&Q*^ C*Q*^pCn*@C2Q*Cv* Cz*pC>*@@ahpahp ahppC *h1@ *h1E *h1 Fah@@@@@@@@@@@@@@@@g2,1p *h2@ah2Iah2 Jah2p ahs@Lahs *hs ahspOah4@ *h4Q *h4 Rah4pahu@@h *huE)uXn@@@@@@@@@@@@@@@@g%%@ uT* ^&EXhuzXb#W*m @ ub@ JJ)@EdE* b%@E&E* b&@EhE* bh@E*uXbgbJE E]a#W)aJ ^*vEXhuzXb#W)u @ ub@ JJ)@E,E* b* EnE*@@@@@@@@@@@@@@@@gL bg@EpuXbgbJE E]#W)aJ ^*vEXhuzXb#W)u @ u2J ^h@W]@I]a@I ^dWhdW8 dXadXXbdXh#dX@@@@@@@@@@@@@@@@g&X8dd%dX&dhgd8hd)dX*dhkd8,d[md[Xn@d[hOa@d[p/bd@pbd@@b*1@@@@@@@@@@@@@@@@gybJh@ 7/L@ ub@ E2Jv E]auJhWW&@E] EvX%b]@u m&IX%g@ h)u7WI8WT ]s=R*@ vL@pWX ] W]hE@E]7^@ 7 @@@@@@@@@@@@@@@@g>hWJ]]ub^@ uCWT* E]8 E]va@T@ 7dJhW^XE@E]ya^@ 1@ 7hT*u%v@ 7h^hW^ Q;@E]z;*hW^ Qz E]zp@ 72@ 72@ 72@ 7h]On@@@@@@@@@@@@@@@@gQC* *=h]g4@h *y8L2y8J;ssR*2yu7v*T@ 7h >a7 7>@k*4kT2XJ;ssR*2y,hy,sRu7h]O>@h)XRQy,s1,)hy,sR #va@L@ 7/n* E]zOuI WW @@@@@@@@@@@@@@@@g*%@F@@hR*JkL2**XT*yQy*yv p@ Jy1 WO]up@ Jyz@b WO@ Jz@ p@ Jy7@ p@ Jy8@a@W4@h@ Jy2@a2/* WOT@ Jy @ C@WL@X@ J@@@@@@@@@@@@@@@@gQ|zC@ E@ y#@bC WLp@X@ Jyb@ C@WOd@ OX,@@X@ Jyb@ C@W T* Wd@h@ Jyz@bE@|@yv C@E@y= a2dh@ Jyz@bE WpT**1]@W @ @@@@@@@@@@@@@@@@gv,@ Jy8@a)@WLh@Qv@WO@ @ Jyb@ C@WOd@ ,nL@ Jy^@b@F@@hR*JkL2**XT*yQy*yv p@ Jy= a2dh@ Jy^@b@F@@WO@ Jyb@ C@W4T* W@@@@@@@@@@@@@@@@g4|8@h@ Jyz@a4 aFF@ EJ1]@W4F W T* WO]uE ,@ Jz@WL@X@ Jyz@a4 E|p|@k*4kT2XJ;ssR*2y,hy,sR*yv 2@EE #RO &^ % @@@@@@@@@@@@@@@@g8[ &W8QEuET@ Jyv a2/*/|@byJy8 Jy7@bIOh@a2*k*zF@ EJ1]@I y8 W4QEuET@ Jy2@a2%T@ Jyz@bJ@J n @ * W8QEuET@ Jy1 WOQ@ Jy#@bL@@@@@@@@@@@@@@@@@gaWL@X@ JzL a@ yz@asnh**1] WOQh@ Jy#@ CQ,@)kT2XR*;y8s[J48 T*y%@ CQ@@d4*h18IhyJ*yb@ C@WOQL@ Qh4@ a&WO IWX@X@ Jz@ *@@@@@@@@@@@@@@@@gv Wd@X@ Jyz@bI J@yz@asnh**1]14@*2Qy,s1|Xs[J48L2ysX*yz@bO@WLX@ &%FO IWQ|Q@ Jy%@bLOh@gRs8 L4y8,2J*yb@bL@@nC@bI@dyJ@@@@@@@@@@@@@@@@gLWy8 XsJy8 W4QEuET@ Jyz@bJ O@yv CQ,@dL2y8IhyJ*zO bI@WORE=@z[O&g OC &QW8Q @ Jyz@b@ 8 @bL@WQpET@ Jz bL@WOR@@ Jy^@@@@@@@@@@@@@@@@/@@b@RJ@@4 m8@ F WILdh@ pkdd@ E2LpuET@ QRp@ Q Rp@ d2p@ |E2ET@ QRET@ JyX @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@W# @@%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F I@d@@@@@@  IJ@IQ@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gnI,,E,FQOh4ER@F@7CR@CF@O#TgO&gT&@@E@@@@@O2sT&@@@@@@@O7&@@@@@@OddF@OT)FOsdgFCO%TFgg)&#%QdF #%%2 2%FEOg#2FFg@@@@@@@@@@@@@@@@g2,#22FOd%2@@d%2@Od#s@ Tu@COTu@OTu%@ETu%@F 7g@O7g@@ &)@OQ%T@Odg@Cdg@Oh#@E Ws@F #s@ h@C@ W@@@@@@@@@@@@@@@@g| @C #@C %@CCW@Cs@CE@CF R@Ca@@ Rg@ g@ RR@C R@ RT@ER@F R@ 22@E@7@Eu@E u)@EC uR@E@EE g@@@@@@@@@@@@@@@@&)dE;JEE|EO%TWT2@WT2WT2OgWT2WT2COgOgy 7EkO7gO)2W2sQ)sWRW%O% hEOR)d@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gu2222222222222222222222222222p)W7gppppppppppppppppppp,%JyFIFF@p@gXpFFFFEd)W@@pppppppppppppppp,,,,,,,,,,,,,,,,,,,,,,,,,,,,,%n@@@@@@@@@@@@@@@@gm*|>/b/F/@@byzI@&yzJ@*8z @n8zL@28z @v8z@zWpO%@]Q@pF @4 @8JQ@]L]@]RW@]T]@]XW@]^]@] bQ@]d&]@]h@@@@@@@@@@@@@@@@gz%*]@],nW@]p2Q@]4v]@]8zQ@]|>]@@@ #d@z@ab4@z@b#d@zL@#b@z@db@zT@%b@zX@&b@z@gb@z @hb@zd@)aT@zh@*aT@z,@kaT@zp@,b@@@@@@@@@@@@@@@@g&@z4@maT@z8@nb@z|@/b@;@@pb@;@1b@;@2b@;L@saT@;@4b@;T@ub@;X@vaT@;@7aT@; @8b@;d@yb@;h@aT@;*@;88u8T^OCuvg#y8@@@@@@@@@@@@@@@@gT>27sp]=h Cu=@ )8>h1X@@2@F@2@@CgFg X^18^z ]^1|^u;W18W,X ]^1)|@)=@4E C2@2@F ECgFg X^18@@@@@@@@@@@@@@@@gJ^za ]^1|^u;W18W,X ]^1)|@*Fu;p@^g4@ap  @bd b @mWL@*F4@^hXza @8 ,a^8bpL1=z#g [@)m^hbO@@@@@@@@@@@@@@@@/dzC F@*L@^a zd@ J@4Wpz@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@W%y@@Q@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F I@d@@@@@@  IJ@IQ@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gI I,,E,FQOh4ER@F@7CR@CF@O#TgO&gT&@@E@@@@@O2sT&@@@@@@@O#W&@C@@@@@OddF@OT)FOsdgFCO%TFgg)&#%QdF #%%2 2%FEOg#2FFg@@@@@@@@@@@@@@@@g2,#22FOd%2@@d%2@Od#s@ Tu@COTu@OTu%@ETu%@F 7g@O7g@@ &)@OQ%T@Odg@Cdg@Oh#@E Ws@F #s@ h@C@ W@@@@@@@@@@@@@@@@g| @C #@C %@CCW@Cs@CE@CF R@Ca@@ Rg@ g@ RR@C R@ RT@ER@F R@ 22@E@7@Eu@E u)@EC uR@E@EE g@@@@@@@@@@@@@@@@Wp8&)dE;JEE|EO%TWT2@WT2WT2OgWT2WT2COgOgy 7EkO)2W2sQ)sWRW%O% hEOR)d@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gbuu2222222222222222222222222222p)W#%pppppppppppppppppppp,%JyFIFF@p@gXpFFFFEd)W@@pppppppppppppppp,,,,,,,,,,,,,,,,,,,,,,,,,,,,,%T@@@@@@@@@@@@@@@@gXn/b/F/@@byzI@&yzJ@*8z @n8zL@28z @v8z@zWpO%@]Q@pF @4 @8JQ@]L]@]RW@]T]@]XW@]^]@] bQ@]d&]@]h*@@@@@@@@@@@@@@@@gF7]@],nW@]p2Q@]4v]@]8zQ@]|>]@@@ #d@z@ab4@z@b#d@zL@#b@z@db@zT@%b@zX@&b@z@gb@z @hb@zd@)aT@zh@*aT@z,@kaT@zp@,b@@@@@@@@@@@@@@@@gmO@z4@maT@z8@nb@z|@/b@;@@pb@;@1b@;@2b@;L@saT@;@4b@;T@ub@;X@vaT@;@7aT@; @8b@;d@yb@;h@aT@;*@;88u8T^OCuvg#y8@@@@@@@@@@@@@@@@g7*>27sp]=h Cu=@ )8>h1X@@2@F@2@@CgFg X^18^z ]^1|^u;W18W,X ]^1)|@)=@4E C2@2@F ECgFg X^18^@@@@@@@@@@@@@@@@gW^za ]^1|^u;W18W,X ]^1)|@*Fu;p@^g4@ap  @bb @)W @*Fp@^hXza @4 ,a^8b  1=z#W [@)m^hbz@@@@@@@@@@@@@@@@gC F@*OL@^a z#p J@pWpz@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@W%8@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F I@d@@@@@@  IJ@IQ@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gv2I,,E,FO))O&gTE&@@@@@@@@gg)&[TgTQsQ%QdF@OTTE|FEO%TOTgd&@E@@@@@OQR&@@@@@@ORQ&@E@@@@@Od4#&@F@@@@@OTu&@@@@@@O@@@@@@@@@@@@@@@@gR*#Q&@C@@@@@@O#R&@C@@@@@O#7&@C@@@@@O7Q&@CC@@@@@OQ7&@C@@@@@OR7&@CE@@@@@O%Q&@CF@@@@@O7dQ&@C@@@@@OQTd&@@@@@@@O2b&@@@@@@O2@@@@@@@@@@@@@@@@gRub)&@@@@@@O2bR&@C@@@@@O)2#&@@@@@@#)2XCO#T&@E@@@@@O2s&@F@@@@@OQT&@@@@@@O24&@E@@@@@@O77Q&@E@@@@@OgQ&@E@@@@@Og2&@EC@@@@@@@@@@@@@@@@g/@@@@@O7R&@E@@@@@O2bT&@EE@@@@@O77R&@EF@@@@@EkO7O)27sOX#sO2s7E;FQ#&WOQTT gO#T7Ws2sO2bW&%2OR)4W)WXs O2sQOQ)WEOO2s@@@@@@@@@@@@@@@@gv;RO&%O#2XF2O#TQO#TRO)&uOs)dQ2bO2s b)OgF%s) b#&&gWsQR#E FF s2sO7QRO)2XOR)7  @O%&TgEEdEEL 7O&4sOR))O2bQ2W%TQ@@@@@@@@@@@@@@@@gCFsQI,1JC@@@@JF&@Cv[FIC@EJEEEv[FIE@@I&@EF@@E&@CCF@b@EC@@Cb@FC@Cb@CF^@EEFCF^@FE^@CF@@@@@@@@@@@@@@@@@gsEF@F@@@CC@EF@@E@CR@EFR@@R@Cb@FE@&@EE@F&@FCE&@CF@E&@FFFF&@FC@b@FFC&@@FFFCb@CF@CC&@@@@@@@@@@@@@@@@/@FF@&@FEEE@&@FF@E&@FE&@E@FCEC&@F@@@&@ECEC&@E@COR22y)&Oh4JIJ@JJQTT)@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gvu2222222222222222222222222222p)W7ppppppppppppppppppp,%JyFFFFF@p@gXpFFFFFEd)W@pppppppppppppppp,,,,,,,,,,,,,,,,,,,,,,,,,,,,,74@@@@@@@@@@@@@@@@gI*Ek [7n@2Rn]Ja@#X@ Wa@ J8dCWgI&WI4I4C4I8C)4I|Cy4I@FJLRTX^ bd&h@@@@@@@@@@@@@@@@g)2*,np24784z|>R@@ a1@&@aa1@&@ba1@&L@#a1@&@da1@&T@%a1@&X@&a1@&@ga1@& @@ELLLLy)]&) Iyd@E@@@@@@@@@@@@@@@@gEsQyd@E@hJ;y4h)y8J;ssR*2yd8&1mp&R*)nIn@J|X@ [h&|@71  p8aL@Q2m&u&@)LLk8T,k,8sX L;dXmX#dp2mgaF*mgag ,snQsb]Fd)*@d@@@@@@@@@@@@@@@@gm@z*84kd]Xg@gQp@QvbREg][@hkT2XR*;XJ;ssR*2yd8gm@O@h4%@bI4@4R,;kX1]WO%EO &T#2@ ^Xg)m]JLbLRn J>|v[*)I4@pI@@@@@@@@@@@@@@@@g2=4R @#p=; kpO2spQ%2v)ps&phpI|zR @#k> I=[hdkg g ) gag Qsb]&4@71O2s@ ^@gQ)J IJ*L^ JybI4@OksI2%d@ JR4d@@@@@@@@@@@@@@@@gugz Jn[F2J^ub2L,k@p,@gyI8Q,X )ysTbJR/p@bh@#]aLF@ JF/s>J L@@  mCRJ@@bua @  / RJ X[ILh2m1 # %,kRnR| @# ,mp@@@@@@@@@@@@@@@@@gpX@h8R| @# @b a 24b @,8R|mh@  /@n@R4 h@  bm@a*/2mh%&k%g m  O&1a&s*phR>kJ4@ np22mO@Xg IO)&k EX,khCkJ4@ @@@@@@@@@@@@@@@@gE%n/@%8R7kJ4m JEJ*L^*nvn||4hbnaJ|,k@%@n@R7kJ4@ Lm4R@hRsT21,|*8T*yQybJJ@  1R2mh)&k%g m  k/O a *mL,EkJ4@ L1d[F@@@@@@@@@@@@@@@@@g|&@bb @b^*p[bgE k/O Jk g@|^* @2,Ik@I,bLRn|v[*hbb @# ,m2v@& L;84kzRJ2yb m@@dX@2@ @b8a F@  mz2m Xbm IaJkm k/O Jk @@@@@@@@@@@@@@@@gb &nXRz J4z JLbLRn J>|v[*hb2 ,,kT@dIsRy,2zJn8I@8)Ibhb *@ O I@|*@ pI@;@ OOI@|,@ ayI@|n@ pRF,L1Ib2b *@ QQyI@|4@ QyI@; 8@@@@@@@@@@@@@@@@gC%^kJd&Is >7h@LLdCsh@2OO@@#I@|>@ LdC4@@2O @#I@=@ LdC4X@2OR@@#I@=J@ LdC4p@2O @#I@=@ LdCu@2O@@#I@=@ LdCu @@@@@@@@@@@@@@@@gp@2O @#I@=@ LdCu8@2OX@@#I@=b@ LdCv@2O @#I@=h@ LdCvh@2O[@@#I@=n@ LdC7@@2O @#I@=4@ LdC7X@2O^@@#I@=z@ LdC7p@4@@@@@@@@@@@@@@@@g|y@=>mp@=g%>b @,@m>b @| m>mp@7 m>b  &8@v@>8Xg&8 @1g&8h#&2 Can8@bp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Wd/@@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F I@d@@@@@@  IJ@IQ@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gv2I,,E,FO))O&gTE&@@@@@@@@gg)&[TgTQsQ%QdF@OTTE|FEO%TOTgd&@E@@@@@OQR&@@@@@@ORQ&@E@@@@@Od4#&@F@@@@@OTu&@@@@@@O@@@@@@@@@@@@@@@@gR*#Q&@C@@@@@@O#R&@C@@@@@O#7&@C@@@@@O7Q&@CC@@@@@OQ7&@C@@@@@OR7&@CE@@@@@O%Q&@CF@@@@@O7dQ&@C@@@@@OQTd&@@@@@@@O2b&@@@@@@O2@@@@@@@@@@@@@@@@gRub)&@@@@@@O2bR&@C@@@@@O)2#&@@@@@@#)2XCO#T&@E@@@@@O2s&@F@@@@@OQT&@@@@@@O24&@E@@@@@@O77Q&@E@@@@@OgQ&@E@@@@@Og2&@EC@@@@@@@@@@@@@@@@g @@@@@O7R&@E@@@@@O2bT&@EE@@@@@O77R&@EF@@@@@O&)WEkO#WO)27sOX#sO2bWy)&EL #%O2sQOQ)WEOO2sROQ7JRO%&TXQ)E;FO2s7W2Xs @@@@@@@@@@@@@@@@g7 O#)O24dO#TQ#&&gW#&v)O2bQ2W%OR)4uQ#O#8FEO#T7W#2sE FFF QFFCO#TRO&) O7QR CO)2X  OQTTO&usW&u#&%&)dJOR)7WRQ2O&4sOR)@@@@@@@@@@@@@@@@g/) Q Q QC Q QE QF Q QTQsQR[II,1JCv[@ICFIFCJz[CF@FCF@J[JF2[IIFI@FEE[F2[FIEIICC[z[EEEFEE@FF[CEz[CI@@@@@@@@@@@@@@@@%XEI@F[z[C@C@@F[Ez[@FCCFFIF[@z[@CCCR[@Fv[@C@C@C@IE2[FIC@EFOR22Oh4JIJQTT)@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g|u2222222222222222222222222222p)W#Wppppppppppppppppppp,%JyFFFFF@p@gXpFFFFFEd)W@Ipppppppppppppppp,,,,,,,,,,,,,,,,,,,,,,,,,,,,,74@@@@@@@@@@@@@@@@g=Ek [7n@2Rn]Ja@#XEsh aI@p&%u)2&%2]]@v]^@z]@>]@ #d1@ Q#d2@ R#ds@ #d4@ T#du@ #dv@ #d7@ W#d8@ X#dy@ #dz@ #@@@@@@@@@@@@@@@@ghId;@ [#d|@ #d=@ ]>=@ ^#d@ #d @Ia@XIb@hI#@8Id@II%@IXI&@IhIg@I8Ih@@ EQCC@dCWgI&T#Qd@EJ&|*@@@@@@@@@@@@@@@@gd^R@*|kR@@#Wv E W Og ]FOF%bFvk]h@Q7@Jn>]JJ^^n||4*,nFzI/W2&@Qd#*k #RnQpb[p@bg@ TX@#b8| yOW^^WL#%8pFzIs=Fd@@@@@@@@@@@@@@@@gb gd#*k &p#Rbg&kRs%&2&Qu]^Q,@hz*8LLk8IsRyd]mpkORkdkg g R*g&s*ka%)Qnb]u|h@8Q8@Q7b[u|) @g)Jk,28T**Iy,sR|%1sz ; W Og%F]@@@@@@@@@@@@@@@@gaT#2|phIzy=Fds aR#Jn*QQ7@Idv&^2vEJL*z),I;>@JT2nFbLnm*LE@>QOk7|spE]WOEvJ7EQR%W #/;/8yE OREvJ4#I F^@@E]8@@@@@@@@@@@@@@@@gJ@|I[%|T@ECXEg @@QW%nW1@|IW%|T@F8@QIF^@pu&F%^1EvJ4Q] dT^@kI F WO@@QW%^W1@IW @Q]@%pva)@J=JLy,JTuX@@@@@@@@@@@@@@@@gLu,7T| p%sEE&C@FF%CO@@QW%^W1Q @u]TX|Iyh>I)FTX1F8@QIaF]h1LR1F%O@QapLQTTpCpQsp TIa @Qa@Q&FW1Qg@@QEp%^@@@@@@@@@@@@@@@@@g sFQQ8@R,d4Xu|@FE@EX @XT@TIbE|Tv @QIW @QapdT^@kI F WO@Qa@QR&I@FE@ECX%EF]h@Wy@8y%|d%@,|@QFEW@EIE@@@@@@@@@@@@@@@@gp/Q&%O gWC RQQp%n@FE@EyE@@Q^%kv @XIF^@psI F W%W ROLQb %&va)@TdELvTT|u,vT1F W@7 W O[%[XQ]@&Lva,@R%y,y*@@@@@@@@@@@@@@@@gk>T|84|&@FOIEF]hX@EE&W[W^^WLQEp&@E%X@@4@d^RT@#IQQ8@Qzd4XuQFCW @R4vuL&yQFOXugFdR%)d%sp7g&%%@@@@@@@@@@@@@@@@gsLsWI#]h@* &T@ET@XI% @Q &W@E @XI&@Q &@E,@yv^y=;T@a d dz^zEET@a@d d7nbgaaW1@IICLThyzd@@@@@@@@@@@@@@@@@gnp dz^zE;ET@%d d1R&g*@v)y8hW,TEvEJb^)@@QC)gaa^1@IICLT*)zd@ dzn^zE;ET@&@d d1R,g*@vk8hW,TEvEJz^)@@@@@@@@@@@@@@@@gk@@QC/gaa^1@IhICLT,Izd@ d;F^zE;ET@&pd d1R2g*@v,y8hW,TEdpvmI8hW,E^;TI @&O TIE@kd;TIE@n;TI @XO XImpsO@@@@@@@@@@@@@@@@g]% XIn@yO XIgpI[XIa@[XIa@@QE @@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@W%R@@z@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F I@d@@@@@@  IJ@IQ@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ggI,,E,FQOh4ER@F@7CR@CF@O#TgO&gT&@@E@@@@@O2sT&@@@@@@@O#d&@@@@@@@OTgd&@E@@@@@OQR&@@@@@@ORQ&@E@@@@@Od4#&@F@@@@@OTu@@@@@@@@@@@@@@@@gT &@@@@@@O#Q&@C@@@@@@O#R&@C@@@@@O#7&@C@@@@@O7Q&@CC@@@@@OQ7&@C@@@@@OR7&@CE@@@@@O%Q&@CF@@@@@O7dQ&@C@@@@@OQTd&@@@@@@@O2b@@@@@@@@@@@@@@@@gI^&@@@@@@O2b)&@@@@@@O2bR&@C@@@@@O)2#&@@@@@@#)2XO#T&@E@@@@@O2s&@F@@@@@OQT&@@@@@@O24&@E@@@@@@O77Q&@E@@@@@OgQ&@E@@@@@@@@@@@@@@@@@@@@gb&@Og2&@EC@@@@@O7R&@E@@@@@O2bT&@EE@@@@@O77R&@EF@@@@@gg)&[TgTQsQ%QdF@OTTE|FEO%TOddOT)FOsdgFCO%TF# #%%2 2%FEOg#2FFg@@@@@@@@@@@@@@@@g2,#22FOd%2@@d%2@Od#s@ Tu@COTu@OTu%@ETu%@F 7g@O7g@@ &)@OQ%T@Odg@Cdg@Oh#@E Ws@F #s@ h@C@ W@@@@@@@@@@@@@@@@g| @C #@C %@CCW@Cs@CE@CF R@Ca@@ Rg@ g@ RR@C R@ RT@ER@F R@ 22@E@7@Eu@E u)@EC uR@E@EE g@@@@@@@@@@@@@@@@gp&)dE;JEWT2@WT2WT2OgWT2WT2COgOgy 7EkO&2O)2W2sQ)sWRW%O% hEOR)dO2O2%[2sQ)s[RW%%OhO2%O#T7O2s7[Qs&)@@@@@@@@@@@@@@@@g1%&%2OR)4O#O)2XQO#2XOQTTOgI@OO7g#s gCO2sQOQ)WO2sR2Qu sQO#8O#TQO74WsQR# g%sC%s%s%sO7QRO&)O&% by)&L@@@@@@@@@@@@@@@@gs%&2QO%&TOR))O#TRJRO2bW2%OQ%2O24RFO)&uO&us#&QTO)sWQ)W2h I  E C FIO@  F   @Os)E &@@@@TQsQ&@CI,1JCE v[@@@@@@@@@@@@@@@@g^v@@F&@FC@&@EEFCFz[@@v[IIIIIIIIIIIIJv[ECIFCCI2[C@ECECv[@@EEEv[@EECIFv[@@I@CIz[@@@CE@@@@@@@@@@@@@@@@OJLIIFEv[@@@@CFEz[@@@@@CEI@Cv[@@@@@@C@EFCz[@@@@@@@FFCOR227s s7JIJ@2W%JJ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gu2222222222222222222222222222p)W2% &2ppppppppppppppp,%JyFFFFF@p@gXpFFFFFEd)W@@pppppppppppppppp,,,,,,,,,,,,,,,,,,,,,,,,,,,,,u8d@@@@@@@@@@@@@@@@g&Jm8p ;8@WOQ7OQEWOQXaI@p&%u)2&%nyzL@2yz @vyz@zyzO@>yz@@ gdQ@ QgdR@ Rgd@ gdT@ Tgd@ gd@ gdW@ WgdX@ Xgd@ @@@@@@@@@@@@@@@@gWgd@ gd[@ [gd@ %gd@ ]d] ^d^ d @Ca8b@aCa8bF@bCa8bJ@#Ca8b@dCa8bR@%Ca8b@&Ca8b@@ELLLLy)]&)p^@hTz&@@@@@@@@@@@@@@@@gs@@*QzmW,@J%d1EL[1Ep]1E81F@spF RpFQRW@FL RW F RX@FTQR F]R@FdWR F,]R[@F4WR[ F|]R@QR @@@@@@@@@@@@@@@@g]dL]R]@T]R] WR^@dQR^ ,]R@4QR |]R@@C% Cua@EC%a Eb@IEb  E#@ E# OEd@QEd @@@@@@@@@@@@@@@@g2W%@% W&@E& [g@]Eg Eh@aEh #E)@%E) g*@)E* kEk@mk /,@1E,@@@@@@@@@@@@@@@@gd; sEm@mv Wkahn d@ XE% a% Xnyu @Ed@ O@ *;T y@ 2;T y@ v;T y @ 8mpy^nE28X by@ER>yTub8%W a%1Xn@@@@@@@@@@@@@@@@g=yW% @Ed@ O@ >;T yW@L;T y^@Lmpy^nE28X by@EyTub8%W a%1XnyW% @L% @TCC@W@C1/FEL@1;n] @L2Tp@@@@@@@@@@@@@@@@g> aW@EEL@2 b=u^8T;#@Lb;XJnE|@JuT1LmW@E @X@LpsT F@EL@h@2z@L|XTpCOT4E4@Tp #Q@EE@LTpCRCk4 ;anL@@@@@@@@@@@@@@@@gR*|@4EEa J8WpTk2u@@4 Ts@#@EQ@X@Lp CQy|@s;EL@ sTu#@E X@hupTv@#2v8X@Ts@#@EE8W , 2Q#p@@@@@@@@@@@@@@@@gbd)WXs 1Lm^nF@@LpvT7@anEs[@R,d4Xuu,u] z8X |QTTpI@pTW)2 u>@L2sp7g&%%sCh@ 4|m@ Lp a@E X@Cp@Ch@ T@@@@@@@@@@@@@@@@gT8[a @EQJ  @R=Ihyd|uXJ8XL W&p2Q#p#sLpvT #anF@@ 4y a @EmF8X@Ty#&2u@y Tv anEs[@R|d4XuJvL> y#)@E@@@@@@@@@@@@@@@@gu)@Ea@E*E;k@Thyd4uLm&u]TXuQL@E,d@4;kah;pEI^[C[^&]gC QJ%/b|pvT7@anEs[@R,d4Xuu,u%[ pTyp#&@ETO8X@Q2@@@@@@@@@@@@@@@@g vsp7g&%%sps&p T8[a @EXb8X@Cnn= |[a 8p1J%F #C EJ Tv@#2nF@@ |ka @EXO8X@Tv@#snF@@ = a @EXOR8X@Tv@#1nF@@|p/u= @@@@@@@@@@@@@@@@gkbE Q %EOO@ CQ]mT=p#W8@] TQ@#8@Eu@E7O&8X@TO #z@EXO W a >pE W]gOC bgCI&W & 4=47ka 7pyEQ@dCQ^%WITs@#|@Eu= @@@@@@@@@@@@@@@@g X] TJpT=T #W@E]O @,@ >@TazpE&QF g%W%W RO T T #@O ;@#&2u@zT4X8|=IEuX@ 8[a @E=@@ &&Q@@@@@@@@@@@@@@@@g2vF g%T*@ ER@a=@@g*y8J;s8 y48@EQ,@bk pL@gksXIsRz*8L2*%Qv@bL,kk p|@hJy8sXTTy8L1kEQ b p@@*O8 L@ OEpT yF/ EO Q %EOO@dC@@@@@@@@@@@@@@@@gOQ^%W*LpO1p@=WFOQ W[I&T* OQ%pF= yOFW]g ,a@@*T%%]/ 7IWF%RQWL*X@ EQ* apk p@@*T@ EQn apk p |@h*;ssR*@@@@@@@@@@@@@@@@g@)2y8 X4kyTE @*];@kI F WC[C*p%%@ ERC @*Tm )&F%J *a;@EC W Og@O@@* %F@@ hTm%%@ EQs bE @*T1Fp@=@@@@@@@@@@@@@@@@ghWFO^ObQ%FL* hE Ep@ EQz @*4@ EQz @*C8u%%]F@@ EJ bE @* hE Ep@ EQz @*8@ EQz @*C8y%%]F@@ EJ bE @* hE Ep@ EQz @@@@@@@@@@@@@@@@@g)T*|@ EQz @*C8=%%]F@@ EJ bE @* hE Ep@ EQz @*Q@@ EQz @*C8Q%%]F@@ EJ as@@* EF@@ EQ,@azLnk pO,@g Qsy82*XJ;,y/pE,EL@@@@@@@@@@@@@@@@g @ EQn@ k @*T%%@ EQs as@@*Tm J#QF%WF%RQWL*Tm%%@ EQs bE @*TQIF/ =WFO^ObQ%FL*OT@ Eb@bI @*OT@ E@bI,,kk p@@*@@@@@@@@@@@@@@@@gT,@ EQz @*Q@ EQz @*C8QQ%%]F@@ EJ bE @*OT@ Eb@bJ @*OT@ E@bJ,,kk p@@*T,@ EQz @*QX@ EQz @*C8Q%%]F@@ EJ bE @*OT@ E@@@@@@@@@@@@@@@@g4Fb@b @*OT@ E@b ,,kk pL@%)sL2*8y8@%Q@a>@ mv@a|k p@@#R*khy*%Q ak @* )F@@ dL@ EQz @*Q Q& @@*OT@ EQ@a, | b z@8@b @@@@@@@@@@@@@@@@g88 8n@2@b 8/@/@z 8k14kQzO%,@@8h n@kEF z @*Q,R@ Eh nQ  h nRQ4kRO%,@@ h nQ4kRO%L,@ @ h nO2^%R,,k% @ |E]1>TQ@@@@@@@@@@@@@@@@g>R4kRO%L,@J h nT14kR%%8,@@ h nQ4kRO%L,@J@ h nO2n%R,,sE @ 4E]1>Q4kRO%L,@I h n14kR%&h,@F@ h nWQ4kRO%L,@I@8h nO2>%@@@@@@@@@@@@@@@@RR,n% @ X@Ep@ m]s@Ep@ Es@E@ @E@ @E@ d@,@ OhE L@ O @@ TE X@ E @ E, @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@W#@@8@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F I@d@@@@@@  IJ@IQ@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gFI,,E,FQOh4ER@F@7CR@CF@O#TgO&gT&@@E@@@@@O2sT&@@@@@@@O#%&@@F@@@@@O#T&@@@@@@@OTgd&@E@@@@@OQR&@@@@@@ORQ&@E@@@@@Od4#@@@@@@@@@@@@@@@@g) &@F@@@@@OTu&@@@@@@O#Q&@C@@@@@@O#R&@C@@@@@O#7&@C@@@@@O7Q&@CC@@@@@OQ7&@C@@@@@OR7&@CE@@@@@O%Q&@CF@@@@@O7dQ&@C@@@@@OQTd@@@@@@@@@@@@@@@@g2F&@@@@@@@O2b&@@@@@@O2b)&@@@@@@O2bR&@C@@@@@O)2#&@@@@@@#)2XO#T&@E@@@@@O2s&@F@@@@@OQT&@@@@@@O24&@E@@@@@@O77Q&@E@@@@@@@@@@@@@@@@@@@@g,@OgQ&@E@@@@@Og2&@EC@@@@@O7R&@E@@@@@O2bT&@EE@@@@@O77R&@EF@@@@@gg)&[TgTQsQ%QdF@OTTE|FEO%TOddOT)FOsdgFCO%TF# #%%@@@@@@@@@@@@@@@@g* 2 2%FEOg#2FFg#22FOd%2@@d%2@Od#s@ Tu@COTu@OTu%@ETu%@F 7g@O7g@@ &)@OQ%T@Odg@Cdg@Oh#@E Ws@F #@@@@@@@@@@@@@@@@g|8s@ h@C@ W@C #@C %@CCW@Cs@CE@CF R@Ca@@ Rg@ g@ RR@C R@ RT@ER@F R@ 22@E@7@Eu@E u)@EC u@@@@@@@@@@@@@@@@gR@E@EE g&)dE;JEWT2@WT2WT2OgWT2WT2COgOgy 7Ek[Q)sQ%WQ)sOWQ)sI 7u 8uEOR)dOQsO#T7O2s77sO2sQ 82RO2bQ2W%@@@@@@@@@@@@@@@@g=F )28y)&OR)4O2b%W#&QTO#TQ gO#TRE  72O&)OQ7 W7X%W&%2O2s#QWQOQ)WO2sRO7gO2bWO)2XWQ)W2hORIO24ROREQsOROR)7[%s)u#@@@@@@@@@@@@@@@@g82LWsQR#O)8O#8OQROQTTORO%&TO7QRO&%J@QsQ%OQs%Ws2s[s2s72J s7OR))JOd@[)s4)%  E C W&gCQsTQsQR[EI,1JCR@C[ER[CE@@@@@@@@@@@@@@@@g 7FIJ[EJ@R[FEOR22[ER[E&@EEEb@EEF&@Cb@CFF&@@CFCb@EEC@Cb@F@@b@CFb@EC@C&@@@@&@FE&@C@@@@@@@@@@@@@@@@g1&@E@F&@C@@E&@E@C&@FF&@&@C&@EEEF&@FEEEE&@FCFCb@FCFC&@CCCCCCC&@CCCCCCC&@ECEFE&@FF@O@@@@@@@@@@@@@@@@,u)2@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g su2222222222222222222222222222p)WQ)sQ%pppppppppppppppp,%JyFFFFF@p@gXpFFFFFEd)W@pppppppppppppppp,,,,,,,,,,,,,,,,,,,,,,,,,,,,,u8d@@@@@@@@@@@@@@@@g;=Jm8p ;8@WOQ7OQEWOQXE7OQ aI@p&%u)2&%2yz @vyz@zyzO@>yz@@ gdQ@ QgdR@ Rgd@ gdT@ Tgd@ gd@ gdW@ WgdX@ Xgd@ @@@@@@@@@@@@@@@@gXgd@ gd[@ [gd@ gd]@ ]%gd]@ ^d^ d @Ca8b@aCa8bF@bCa8bJ@#Ca8b@dCa8bR@%Ca8b@&Ca8b@gCa8b^@@ELLLLy)]&)@b@@@@@@@@@@@@@@@@g@)Tz z*@k1E1m@Ju,1ET]1E81F@a1F4FL TFQTW FT TX@FX TX FQT@Fd]T F,WT[@F4]T[ F|WT@]T @@@@@@@@@@@@@@@@g LQT]@T]T] ]T^@dWT^ ,QT@4]T |QT@@C% CC%a@Eua C%b@IEb  E#@ E# OEd@QEd @@@@@@@@@@@@@@@@gaE%@% W&@& [Eg@]g Eh@aEh #E)@%E) gE*@)* kEk@mEk /,@1,@@@@@@@@@@@@@@@@g@, sEm@uEm mp8 dX )*nk,@k ETEa^k)En%Xh@%,@T@Q@ 2=@y@ z=@y^@ >=@yb@L@ny n%zzXk*;@E[@EX*zTEa@@@@@@@@@@@@@@@@gbk)Eyn%XXEh@%,@T@Q@LF=@y@LJ=@y @LLny n%zzXk*;@E[CEX*zTEak)Eyn%XXEh@,TEab pCE@W CF1uL#I@T|4u@@@@@@@@@@@@@@@@g)7|Xuyh|vT*T^E[Lh@,W 1@a@L,/pmn%z1pCL | [)n,@2 u#,2zXku[Fsd@ 4 b/@E[@h@& 2;)a@E/,[ C F@@@@@@@@@@@@@@@@@gE[L|@a s J@L*=h@L|1@a@E[L|@m4 4p#Tu;IWCI%^W[Cau #Wv@m]WOE 7bup4p#n&@av Lp#[v@s W OC#@@@@@@@@@@@@@@@@gz=g@7@#Fs*zX 7b/7 ; W OCI%^W[C]7@#s&zX 8@#as&zXnQ2spQ%2v)ps&p gnL8[)b@E[ dWk)byEEW^^WFW]g Cb/@E[@@@@@@@@@@@@@@@@g[@,d]L&yI%, u[g @T%u|L&yI%,m%[ &zX 8@b/@E[ X@Ruu|T,mW];X@EXs /X@Lu,| |E)*@E[L[ k)b@E[  [)b8 EOIWO@@@@@@@@@@@@@@@@gsIFW gC[]gI8p#an&@aL@n ]8Q2sp7g&%%sps&pmp7;)bzEEW^^WFW]g @#sd@mpzk)b@E[/X@R^LEzTu^p4#mv@EIWO@@@@@@@@@@@@@@@@g*b EE %Q&^OaE#n& n@u)*L |^LI*L]uX>;pEW%EOOW^^W 4p#ps&zXndJ)24#sp p4/| )b@E[QOJzX,dR2Qup7g&%%sp&p4d@/Lv@@@@@@@@@@@@@@@@g;7= L2Q#p4pQspmp1,u n&@d@mp1,ubn&@b7/@|%|L&F,|ymIu@E[4E&zW 4p#us&zXnTO2Qup2Q#TpQ)W/=[)b@E[OzX,dO#&Qs@@@@@@@@@@@@@@@@g,Lp%s)uQ#/> )b@E[ @mp>[)b8 ;JQFOF% I=p#zn&@mXup7@#FszX >p#Fs&zX >p#FyFJzX 8@#us&zXnTQ)Q##p2Q#TpQ@@@@@@@@@@@@@@@@ggX)Wm )b7IW&W gF |#pn& I@d]|&LI%, EX]O; [)*@EX/OzX,dQ)Q##p#2Xp&pQ)W/|Lun&@/|]8 dQbpg&2sua4,un&h@@@@@@@@@@@@@@@@gE@ @Ed@ EX#@a8L4, @k@ EX @a8 h1@@k ]FId  ECRs]u&4k E8@ E@ ,m8@& Qsy8T*yQy%X^@@kT@ EXW az,4,kh1@@kT@ EXW azkh1@@k @O1]F@@@@@@@@@@@@@@@@gT@ E @kOOy&%%]Fh@ Eh@bC@@k]* 1OCRC]u&4kCp@ EXJ azkh1d@)nz[n,vv8n h[n,vv%X@@k@ Eg@b h1@hhyh2n4**I**X4kv%Xb@@k@@@@@@@@@@@@@@@@gz[4@ EXb@@kOE%]Ey7@kI F WO@k @O1]F@ E @kX%]E8@ E @k@%&%%]Fh@ )^m44@ En@a#L4v h1@@kT@ EX#@ap @k4@ E @k@E&%%]@@@@@@@@@@@@@@@@gREF@ Es au @kOE%/@kI F WO@JE% n as@@k pL&&a]F@ En|@hz8L284*XT* %X#@ap @kT@ EX @ap,4,kh1@@k E8@ E@bF@/k4^|@&sh)1XJ@@@@@@@@@@@@@@@@g z;ssR*2y%h@bFmT@&4*ysT*8L2*J;%n a,kh1 @*k L;8Lk28sXT*yQy%@a)@@k 7 EJO&W%%]#O#QEQ,k8 @ OdEn@OI]F@ E1 a8 h1@@k @O&%%]@@@@@@@@@@@@@@@@g>F@ Eg@b h1@% *y84)yh2%n av @k pL&&)]F@ EXb@@k4@ EXb@@kOE%]Ey7@kI F WO@k p)&%y]FI2 E W]gOC bgQE&W &k 4* ; W OC@@@@@@@@@@@@@@@@gbI%^W[Ck p =]F@ EXb@@k4@ EXb@@kOEy]Ey7@kI F WO@k pm&%y]FJ E W]gOC bgQE&W &J@mb|@hh4)yh28ITs,2*%y b h1@@k pQE]F@@@@@@@@@@@@@@@@g>QI> EEW]gO%[F%CJQFLk@ Ez@ , @kO,L&%%]F@ Eh ay h1@@k LO&%%]F@ E8 a8 h1@@k@ E@ay h1@@k4@ EXT @k@O&%%]F@ EX a8 h1L@@@@@@@@@@@@@@@@gg@d@gyT4*84kzRJ2y%) az,4,kh1@@kOO]F@ EX bI h1 @g*zh18sQ|RsRLh1%z@ *kh/@@kT@ EX#@bI @kT@ EX @bI,4,kh1@@kO]F@ Ez@ *kh/@@@@@@@@@@@@@@@@@g|@kT@ EX#@bJ@@kT@ EX @bJL4,kh1@@kO]F@ Ez@ *kh/@@kT@ EX#@bJ @kT@ EX @bJ,4,kh1@@kO]F@ Eh@ay h1@@kF@@ E@b h1@%Lb@@@@@@@@@@@@@@@@@g]L@k8a]F@ )^d@ Ek@b h1@@k pQ]]FI1@# F%]dk@ Ey am@@k p12E%]FI4 ;#C &O F%]dk| )/@EW] aF]WCFC kT@ EXW amL4, @@@@@@@@@@@@@@@@@g%kT@ Eh@am @k p1]F@ QEd@ Oy^mpL2Fp@ OhQ Q& Eb n,%h@ Q^1 Qp@ EL@z1h,Qm2Edm@|@zL@8,1h,Qm2F m@@kQ Qz Eb n,%h@ OXQ E& Eb @@@@@@@@@@@@@@@@g[mnRO%h@ LQ R Eb n,%h@ Q@Q R @kQ RJ Eb n,%h@ ORLEd@ EL@zRQh,Qm2Edm@>EQ , @kQ R Eb n,%h@ dRLEd@ EL@8,1h,Qm2Edm@ @@@@@@@@@@@@@@@@gmzL@z * @kQ Ra]Rd@ EL@z * @kQ R1]R4@ EL@zW *W @kQ ]@ EL@z * @kQ Q]T@ QTQ ]@ QQ a]d@ QLQ )],@ QQ 1]@@@@@@@@@@@@@@@@gLC4@ Q y]|@ O@RLE8@ O^2LE8@ E2LEd@ 4RLEd@ XRLEd@ h2LE8@ RLEd@ J|4@E8@ ,@Eh@ X@EhX@ @Eh @ ,@Ehh@ 4E @@@@@@@@@@@@@@@@/  @ EXm @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Wb)@@E@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Fa@d@ I@d@ @@a@@I I@@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b d@Q@@b@ba@    @b bI bJ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@bd@Q@ @bIJ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b d@Q@@bIJ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @R@b  @b J@bI@  @b@b Q@J@ @bJ F@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F  @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Fa@d@ I@d@ @@a@@I I@@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b d@Q@@b@ba@    @b d@bI bJ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@bd@Q@ @bIJ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b d@Q@@bIJ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ d@@R@b  @b@J@bI@  @b@b Q@J@ @bJ F@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F  @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Fa@d@ I@d@ @@a@@I I@@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b d@Q@@b@ba@    @b  bI bJ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@bd@Q@ @bIJ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b d@Q@@bIJ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@bb@   @b@b I@   @bJ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@RL@@a@J@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@  @R@b@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b  @bJ F@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F  @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F I@d@@@@@@  IJ@IQ@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g]I,,E,FO))O&gTE&@@@@@@@@O#T&@@@@@@@O#)&@@@@@@@O#&@@C@@@@@O2sT&@@@@@@@O#Tg&@@E@@@@@O#%&@@F@@@@@O#d&@@@@@@@O#T&@@@@@@@@@@@@@@@@@@@@g@@@O#2&@@@@@@O#Q&@@@@@@O#W&@C@@@@@O7&@@@@@@OTgd&@E@@@@@O7&&@F@@@@@O&&@@@@@@ ##&@@@@@@@ 22&@@@@@@OTgQ&@@@@@@@@@@@@@@@@@@@@@gp@OTg2&@C@@@@@OQR&@@@@@@ORQ&@E@@@@@Od4#&@F@@@@@OTu&@@@@@@O#Q&@C@@@@@@O#R&@C@@@@@O#7&@C@@@@@O7Q&@CC@@@@@OQ7&@C@@@@@@@@@@@@@@@@@@@@ga;@OR7&@CE@@@@@O%Q&@CF@@@@@O7dQ&@C@@@@@OQTd&@@@@@@@O2b&@@@@@@O2b)&@@@@@@O2bR&@C@@@@@O)2#&@@@@@@#)2XCO#T&@E@@@@@O2s&@@@@@@@@@@@@@@@@@g sF@@@@@OQT&@@@@@@O24&@E@@@@@@O77Q&@E@@@@@OgQ&@E@@@@@Og2&@EC@@@@@O7R&@E@@@@@O2bT&@EE@@@@@O77R&@EF@@@@@gg)&O2by%QdO2@@@@@@@@@@@@@@@@gzJbQE &@O%TWs)QQ&)WR@F@[4)T8%Oh4FC%TRFWs&s2sF[dd2y@ 7@F@ 7EkQO)2OQvd s)R#&bOgyOT%2WQs8gs8gQR%O&)@@@@@@@@@@@@@@@@gnCs T TC TO%TO)sO2R2W2R2TW2R2TCW2R2T2R2W2R2TuW2R22sW2R2Wd2s&)OWsQOWssT%2sFWds8gWWdRWWdCORgTORg7ORg8ORgyWu#QWTQsQWQ#QgW@@@@@@@@@@@@@@@@gIbsX4%bOT&2R@CF@7O%&gQ#QW7@Od%W7OR)d TRO#TQO#2XFFOR)4E;W7s# #%%2OQ##QOg#2TQ##Od%2d%2Od#s TuOTuOTu%Tu%O2s4OvX# &@@@@@@@@@@@@@@@@g )OQ%TOdgdgOh# Ws #s h W # %W Ra Rg g RR RO &O2dOR Wd#&QTO%WO#T7O#TRO2sQO2sREOR))%W%WO&)O#)O24ROWd2g#42s)@@@@@@@@@@@@@@@@gJhWg#42OQTTd%2@Wd%42d%27Qdd#sO)2XOTu@OTuTu%@s2sEL %Tu%JCOs)b@@@@@@b@@@@@@JC dROd)W#&Wb@CEEFFJE@@FOWsOWsO2@@@@@@@@@@@@@@@@gbWOWsCWs)#^@FECE WW#QWO2b% WOW@@ OWROWQOWOWORORR T%2QLOROX#sR@EEFE[&#QWO&CO&O&O&Q&Q&Q&Q@@@@@@@@@@@@@@@@ghX&QCJTRgORgRg@O2bdb@EE@@@@@Rgb@EC@@@@@RgE QORgORgC 2Qb@E@@@@@RgCORgb@C@@@@@ORgEORgFRgERgRgC&@@@@@@@JIRgRg@@@@@@@@@@@@@@@@gnRgERgFWRg g@ 42 g gb@F@@@@@@&@@@@@@@@2s42s42s42s4s2s42s4CvX#vX#OWd@[OWdOWdWWdFWdFOWdEWdWdEWdQOWdWd@@@@@@@@@@@@@@@@gC@WdWWd@WWdWs2ssWWdWdWdWdCWWd&@F@@@@@@@JWWdC[WdF@[WdF@Ws8gs[WdFQ[WdFRWWdFCb@WWdFWdEWdEOWTWW@@@@@@@@@@@@@@@@gbJdEOWdFWd@WdWdWdCWdF2R2OWdOWdOWdIWdWd RQWdCJWdI R&&@F@WWd@WWdEQWWdQWWdTWWd&@@@@@@@@O2s7WWd@@@@@@@@@@@@@@@@gzOWWdCWWdC@WWdCb@E@@@@@@W2R2W2R2 2%[2R2W2R2E[2R2Q[2R2T 2W[2R2[2R2RW2R2C[2R2 2#Ws)Ws)[s) bWs8gQF@@@@@@@@@@@@@@@@/E%O7QR T%Ohhh&@@@hhhOQ7@C@@@@@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gmu2222222222222222222222222222p)W27ppppppppppppppppp,%JyFFFFFF@p@&FFFFFFFFEd)W@pppppppppppppppp,,,,,,,,,,,,,,,,,,,,,,,,,,,,,%IvT@@@@@@@@@@@@@@@@g,bL^nz*^&uL1LI@ppu)2&%a@8&kC&mCh&/@IdILEITEdIFIdFdI,I4dI|@RhbRhpIR)IbR)pJR*JbbR*p bRk@@@@@@@@@@@@@@@@gX bRkpLR,LbR,p Rm bRmpRnbRnpOR/ObR/p@@d@ a@dC@ Q@dE@ Qa@d@ R@dI@ Ra@d @ @d @ a@dO@ T@dQ@ Ta@d@@@@@@@@@@@@@@@@gW@ Jhd@ a@dW@ @d@ a@d[@ W@d]@ Wa@d@ X@da@ Xa@d#@ @d%@ a@dg@ @d)@ @Fh k@ [F4n7bnny@ W@y= hC]2@ [nh#,@@@@@@@@@@@@@@@@ggv@;>Ok4@=uk8@>=Ok|@>Oh@@ T|aTE Iz4uXEOT@ CTEOdF@nyJzJX))zRQhysT8@p8[T*,*p8T>QREJ)am R)1Cay J2@@@@@@@@@@@@@@@@gb*2b*&b,duOFJb%JnTE8TX%&kIO R#1aR*ns%&kFJ,ETF@m)IX*JT*yX XIzT4*2y8IQsI1QpQCay JT*n>^* LJTndnT /EJ,EOdF@h))z@@@@@@@@@@@@@@@@ggRRQhysT8|*2JkCay IJ4J>^Td8T>@&E8T>@hE8T>@*E8T>@,8T>@n8T>@p8T>X%h%dgRsOga*#hkLndEO  dEO  ndEO J@@@@@@@@@@@@@@@@gC8,EO ndEO OdEO OndEO J,EO aEO QEO Q*,ET RndEO dEO ndEO TJ,EO TaEO EO aEO EO @@@@@@@@@@@@@@@@gJ,n%WndEO XdEO XaEO8@7hQ@ n%h@ m*zO E,z8@Cy C][a*@ WC)au] JRb*2bnCLn]b^[L4k]^a@C]^a|@ 2@ u>E@@@@@@@@@@@@@@@@g=an@FzW8aX@7W8a7X@7W8bX@F7W8bpX@7W8#X8@J7W8dX8@L7W8dy@7W8%88@7W8&7W8&887W8gWXF7W8g887@@@@@@@@@@@@@@@@gaW8hX8J7W8hyL7W8)X87W8)88@7W8*WX7W8*887W8kX8F7W8ky7W8,X8J7W8,7XL7W8mWX7W8m7XF@7W8nWX@@@@@@@@@@@@@@@@g F7W8n7XF7W8/WXFF7W8/pXF7W8[@C]aW Xs]aWC] X;]aWE  C]aW]  ]aWI]  ]aW ]  []aW ]  #]ams  k]ams @@@@@@@@@@@@@@@@g s]ams  ;]ams @hFFF4zmJ[L4nCJ|,uJ*#]aIEWXRJCaa kns&7W84WXJ7W8[8^Jaa *g 2/ R*h7W81X^JIaaa %%aFska7W8TuXJJ7WR@@@@@@@@@@@@@@@@@gah#XXXXRhyLk2** u>E]@a#mu>E]^@aC@X aWX@ u2E]nT@gQs*X*4hy,sRmu>Epaa2E] @7Wvy/Lb)aJ*n#&s*ka kR#&s J7W7@C]a,@ ]*k]@@@@@@@@@@@@@@@@gWpLb)a%h% )&sJ*7]8EX@ u8E@C]8y  @7^C@C]yT y/ @7W R C]8aT @ 7hE]hb@m2E]v@nR*khy*8))zRQhysT8*4hy,sRmu>Ep7E)@@@@@@@@@@@@@@@@g)J4 J**znELv&[L*k]7aTa @7W8>[y  @7W8z C]aW,@ u8E4F@%IQ*8IhyJm7nEC8@ 7bEp@7^ 7@**R@dL2y8IhyJm72Ep@7^C@C]zW@ @@@@@@@@@@@@@@@@g;g^2*JT  I J*L^Rk @CITL@ 7hE]pb m2E@dsT*8mu>EpdE2E]%v@&*JX*4hysTmu2EX@7W8[@v*vgR@gs1zXITs,2*mu2E @7W8>|@@@@@@@@@@@@@@@@gs8Fs &7 CXIR*#F7CpTQ@7C@C]zWv@ k)^TL@ 7|E@dT@ 7bEp@7^ = FWvWX]s )%a kR#g *m2E@@@ 2Rv@@b4@nWJ @ 2T@@@@@@@@@@@@@@@@gdvC%s pTRFX)Q# pQ@ pRRF@n^ J @@ IW Jp@ syQ@ s1RF@n^ J @@aWJ]b;@ Ln*mRnFb]JJ^^4zmJuInWJ J@JJnz[L*zn@@@@@@@@@@@@@@@@g>,L*&EdanW8J8@hWJ]b;@JL&d^[L|F4zmJuInWJ @ 2TCC%s pTRFX)Q# pXQ@ pRRF@nW8Jp@ W Jp@ pvQ@ 4Q|@n^@@@@@@@@@@@@@@@@gpJp@ 2Rv@CRy,WXOTuTp&g)Qs&) hWJ @ 2TFX8C%s pTRFXI)Q#pQ2 pQ@ pRRF@nW8Jp@ ppJ2C@J*Tv[F4zmJL*&CLn*z@@@@@@@@@@@@@@@@gWmInJp@ 2|QpO @ s1R@nW8J h@8WJ]b;@J;Ln*mRn#kJbn4zmJuInWJ @ 2TE@Cy,WXTuT %s)p&g)Qs&) yWJa@@ 1,@n@@@@@@@@@@@@@@@@@gJ&8JaLJa J@J*Tv[F4zmJL*&,v^CLn Jk8@nW Jp@ 4TL@n@J@bJ@n^Jp@ 2Rv@CQJ*y,WX^%u)2 TuT %s)p&g)Qs&) 2yT@nW8J 8@@@@@@@@@@@@@@@@g1@ JWJ]b;@JL2;JL^4zmJuQn@@ 2|h@ 4 Qpap@ syQpa8@ 4T@n^JR@ 2yT@nI J>@n@8JaLQa J@J4#z*&T44*Ln4zmJL*&Qn@@@@@@@@@@@@@@@@@g,]@ 2|RF@nWhJO @ 4RQ@ s>RR@n@ 2|T@n J@ @ 4 QpO @ s1RF@nW8Jp@bpb @hOJ @pOJ @yOJ @[@OJ @[@@@@@@@@@@@@@@@@g]zJWJ]b;@J%J,[L4*L^4zmJuQn@@ 2|h@ 4T@nahJ@nJW@n^JT@ p|@nWhJO @ 1JRb@nW JF@n^JT@ 2y|@nW8J#C@@@@@@@@@@@@@@@@g2=@[Lnn J2C@L J*L^4n*m^Fv4dz L*>4uLbnJp@ pLQ@ pRR @nW J @n^JQ@#@W J@ba@nI J@bJ@nW8J#@ 2|R@n#J@@@@@@@@@@@@@@@@g^F@nW8J#[@bd4*)nC)@J4&&^bLRn@Fn^4nn^JR@@#a8JT@ 27RJ@nW8J#@@##J@bJ@n8JT@b>XIn8JT@d^XT[|T]h @ s/@@@@@@@@@@@@@@@@g7)RbX@n J@ @ 4 QpO @ s1RF@nW J>@n^JR@@ 2Rv@]J*n^@CQy@C[Qy@CQy@C]Qy@C^Qy@C@*|Qp#y|X8W@@@@@@@@@@@@@@@@gX2&ps&p&g)Qs&) s1T @nWJ] @ 1s@ndJd@@ 2Rv8]W&ps&p2vsXpvQ2p&4sp&p)Q%W 2|Qp@ s1T @bR|RLJ2pdpWpRR 4aRL &)pR&T@@@@@@@@@@@@@@@@g78ps2s 2T#X8%& 4 Qpdd%@nQn]8JQs@@ 4Q@ 2T&@g|TO@#g@I|4>Fd>T4Qn^JQ @ 2|Qp#zdX8JTQ##&Qs 1JRXCT%2 2Tb@@@@@@@@@@@@@@@@g @&|Q@ 4TOs@ @ 2Th@nW8Jd8@dXW J@bJ@n#JQ @ 2T)@n]8JQ#@@ 2|Q@ 4Q;X@nW8J%C@ WnW^F]JLnR2m4n]L4^Fv@@@@@@@@@@@@@@@@gLRd)yT*@nW8Jd@d4QhJ@JWJ]b;@IRR*;LnLnX@ 2|Ru@n^JR;@JnuJnEJn^%Ln2[L4)nW J@bJ@hC1Ru@nW8JW@@@EW Jp@ 1LQ@@@@@@@@@@@@@@@@gIhp@ 2Rv@Cb@*R@nX@ 2|RJ@n^Jh@ 2R8@C%RR@nWJ%X@ 2b@k4R@n]8Jk@L%@IR*;LnT2QnW JQp@ spQ7X% O2Qu@@@@@@@@@@@@@@@@gTp&#Tp4)T8% s1Q7X% Q%vpT%2ps&p4)T8% s>Q=X@n^JRp@ s>QpO@ s>O#@#g@J^,d>FuJJznLdvdnnahJd8)&dpR syR@n^JTX@@@@@@@@@@@@@@@@g%R@ 2yTmLQ##&QspT%2 2|RLIg42XpT&v% s1R2;@z[*T4)n@@ 4 Qpd @ s1RL%vpR#&b 27RX8Ig42XpT&v% s2R2;@IT4&^%Jg)n^ J%@@@@@@@@@@@@@@@@g* X@pJWJ%@IJ,*&T2QnW8Jp@% J@ 2|RL@nahJd@n#J@n@8Ja a J@IJRJ&|vF1n@ 2|Q7X%  T Q##&Qs s1RXCT%2 s>Q@@@@@@@@@@@@@@@@gT =X%pLWsp%T7p& s1RXQg&g 4gph4Q%ss2 2|Rp@ 1,@nW8J%8@ 4pT1T&4s)d&2spR#&bp7s 24T1@/C1RL g&gp4gpR#&b 27RX8@@@@@@@@@@@@@@@@gupFg&gp4g 2|R2;@2^%Jg)n^J;@d%@zL*&EJnn8JRp@ 2|Rp@ s1RW@n^ J%@]@JW JCJ@J;L,>&^Fv&>&^4zmJuInJ2@n @ 2y,@@@@@@@@@@@@@@@@@g2/nW J@n^J&X@ pTQ@ p,@*F@nW JTh@ s1R@n 8J|@nW8J&#@I J*L^R)npJssO#@ICLn^R,uC/RJX@nW JssO @ 1LRX@@@@@@@@@@@@@@@@@g|nW8J&p@ 2|RF@nI JO#@ @ 2Tv@nW8Jp@&p J2C@nuJ)nE Ep@ 2yRz@nW8JXh@& E@J2C@I J*L^R)nW8J&h@&8QhJ@&8W J|WX@@@@@@@@@@@@@@@@gns&pvX&#pQ))Q8 s1RX@nIpJR @g@@ syh@ 27R]@npJ@b]@n8Jh@ s>QpO @ pvRX@n JO @ s2RX@nIpJR @ 2T8@nIpJC@JTm@@@@@@@@@@@@@@@@gW2v,,b,n^F@LyJ*|R@n 8J|@nW8JgJ@%J*LnpJ@b@;J*|R@npJ|@nIJRh@ 1RX@nW8Jg J@I,4*nduJnF[Lb)nW8Jsg@bd4*,zJhT@@@@@@@@@@@@@@@@gbXRh@ p,@*F@nE@Jp@ pTRF@nE E@b@nW8JgX@XJ8J@ 1s@nWJ%X@ 2|kg@ *[*4uvd*^[L4nbnJ|*uIn Jgd=@JL*&Lv^**nR @@@@@@@@@@@@@@@@gk]OnpJ|gh2s&)QW 4 QpO@ 4QpOp@ 2RE^>@nJ>@npJdWX&)psX4%bpg&%s)pQ# s1R#@nWJ%h@ s/RX@nW Jh@ s>QpT @@@@@@@@@@@@@@@@ggO@ s1TO#@#g@ 2s ^z JLbnmbnR] L>u2nW JQ@ s1TT#@ @ syRu@nJd@n^J#y>X8%)p&pgQ)Qds)2 s1R*@nW Jh@ s>Qp@@@@@@@@@@@@@@@@gu8@ s1R@nW J@b@n^J[@Jd2^2vF[Fd,|sLnmIn^J#yzXX8#2s spQpa4,@I44zmJ[L4nbTQn@ s1R,X8Rp#u# 2T>@7RW@E@@@@@@@@@@@@@@@@@gvgJ*|R8@ uQphT,@JLz JLbnm4>FnnW8Jh[J@,,v^|>J*7RW@nW J@bW@nhJE% %TpQ##p&gps2s 2EF%&sp 2|R*X8]p2p%Tp&p@@@@@@@@@@@@@@@@gWQ##%Wp2h4% 1/Qp#y|@n@8Ja Fa J@JsLnb2sJ[J,n^ J>db,n^Qn8JR8@ s/RuX@nW J;@ @ s>Q=X@n@ 2|RWX82Qup)s s1Q>X@@@@@@@@@@@@@@@@@gWnW8Jh8@h)IpJ@JEJ*&bn J>vdnnW8J)@@ pTI)LI24g)#&42pQ)W4d%s 2@@E|RWX8 g4spg&%s) s1[@;Ln[nW J@bW@nh@@@@@@@@@@@@@@@@gFCJEJ% QRW%p2s)%Wps2s 2 F%&spR2 4 Qpdd%@ITL>v*mIn^JRzC@v] L*yn^J@bk@E J*7Rk@nW8Jh@@) 8JR8@ 2|R8@hhJE % RR@@@@@@@@@@@@@@@@g@,W%pQ##p&gps2s 2X8F%&spR 1R,X8%)Q2 24RQRp#u# 2L@EEQphd,@J,*&L^4>FnnW8J);@4,v^*n8J#@JJb*]J*R@@@@@@@@@@@@@@@@g1)nR^n*,]J,aR,@nW8Jg;@ Xn*,^444uz JLbnmInW8J)#@I,v^@n*,]OEQp)T,@JbR*;LnF] L*>4>FnnW8J*CJ@4,v^QnahJddhI2b@@@@@@@@@@@@@@@@g gp&u) s1RWXF2s)%W 2@EC/RX@pXg)&22puQ#4pgQ)Qds)2 1TOs@#g@JuJ*&bnz JLbnmvdnnW8J*@ 2|Qp#zdX8T&% 1JR@@@@@@@@@@@@@@@@@ghnW J#zdX@n^Jh@ 2R8@EQJ,a#y|X@nW8J*J@IL,v^F*L^b)nW J)Tg)gQ)ps&pWspuQ#4 s1Ru@nW J#y|X@nbJE@n^J@ 2y@@@@@@@@@@@@@@@@g#,Rz@nW J|@n^Jh@ 2y,WXIWspuQ#4 s/RX@nW J@dO#@ F@ 2zn^FznuL4&z JL&bnR] L>uIn J* @ 4 QpO@ s1R@nW JQs@I*n@@@@@@@@@@@@@@@@g#]v|sLnmInJdXI&)puQ#4 s1#yzX@nWJaCJ@I*4dz JnFznQn)@Iv*L^bnFJ^^bLnW8JksO#@ @ 2%s %s 2)Q# %s 24@@@@@@@@@@@@@@@@g|=]CRQT pTIIRQTpR)Q%Xpg&%s 2W%s )Q# 2XI)Q# )Q#*)]8JQs@F@IbTv[FT44*L)n J#y>X8d&upg42XpT&v% pRTO#@bC@@@@@@@@@@@@@@@@gu7@IFbLn[[JnQn J#zdXXFp## pRTO@ @ 2|QR;@IL*nvF*L^b)n^J#zdXX8Fs&pT%2 2|QpO @kI4^JTX@ 2yTm@n]8JQs@@*Q8J#y|X@@@@@@@@@@@@@@@@g8[%)pgQ)QpT2p#2spg&%s) 27TO@#g@ L*]z JL&|sLnm|sLnmInW8Jh8@*1@J@bJWXX&%u)spuQ#4ps&p%sW) s1R @nW J @n^JQ@@@@@@@@@@@@@@@@g*@ 2@EWJhQR;@J*4n*m^F*L^bnFvEJ*LnJQX@ 2|QpQX@ s1RJ@EXJk/RX@pd&upg42XpT&v% pTTOs@#@IFbLn[[JnQnJ@b;@8@@@@@@@@@@@@@@@@gFu,^Qn J#zdX@nJ#y>X@n J@bJWXI%vpuQ#4 pRTT#@#J@vvdnQnW J>@nW8Jk@ JWJ%@I*,*&=L2*&%J)nX@ 2|RW@n^Jh@ 2@@@@@@@@@@@@@@@@g2R8@*@)RX8b%Tp&pgQ)Qds)pQ##pR8p%Qdp&g) 4aQp@ 2@n]8JQs@@ 2|TO#@ @ s1R@n J#yzX@nJp@ 2|Rh@nI J@@@@@@@@@@@@@@@@ghz@nW8JksOp@ pTIkI@nWJ@ 2RE^>@ERy,@nIpJQp@ 2|Qp@ s1R@nIpJQp@ 1R@n J@b@nJp@ 1R@nIpJQp@ pT@@@@@@@@@@@@@@@@gOmQp@ s1Rg@n^J] @ 1R@nW J@b@n^Jh@k JIpJQp@ 1R@n J@b@n^JQ @ 4aRL@nW8Jkh@ 2|Q @ 2RE^>@E]RR@npJ@@@@@@@@@@@@@@@@gE&7@n^JRp@ s2Rp@ 1Rg@nW8Jk @ s4,@CFRXQQ##&Qsp&g)Qs&) 2|Qpkp@ 4RR@nI@J@bJ@n^J@b@nW J2@n^JTX@ 2yT@@@@@@@@@@@@@@@@gszm@n]8JQs@@ 2|Qp#y|X8C2s s1TT#@#@b4JynW JQ@ s1TOs@#g@Ib4uT2gF,*anW Jh@ 4RQpk8@ 1RLIg42XpT&v% s1TO@#@bT4@@@@@@@@@@@@@@@@g%;QnW8Jp@I8JRC@Jb*L2n4zmJuIn]8J@bLX@nW J@bX@nI@J@ @ 4 Qpd @ s1R@n@ 2|Q>X@n^JQ @ 2Rv@CRRX@@@@@@@@@@@@@@@@g|2sgp4%s#p&g)Qs&) 1s@n]8JQs@@ 4aTT#@ @ 2 %&sp)2spsd s8]J)2spsd s1TT#@#g@IJnRn^4JynW Jh@ s>QpO@ s1R@@@@@@@@@@@@@@@@g#7@nW J@b@nahJd@n^J#y|X8)s4)%pQTT)22 2a@E J*7Ru@nWJW@ 2y,@nWJ]kJ@I|2J&F,>F*L^b)nIpJh@ 2yb@nWJX@ 2y@@@@@@@@@@@@@@@@gbRRz@nWJ@>uJnF)nW J,X@ s1Ru@EaJ*yb@nWJ]kJ@42J&F)nW J,X@ s1Ru@nWJW@ 2y,@nWJ Cg@JL#Ln&sL*L^F*L^b)n8Jh@ 2yR@@@@@@@@@@@@@@@@gvXz@nWJ]b;@I2zn^F,>F*L^b)nW Jp@ 1/Qp#y|@nW8J, @,)8JkJ@I4n[Lnb)nWJW@ 2b@EdJk7Q@ 1LRF@n#JO @ 2%&%s%@@@@@@@@@@@@@@@@g4 2|QpO2;@JJ,,b,n^n;&*anIJh@ 2I@EbJ*4R@n]8JQs@@ 2|TO#@ @ syQpO @ 1Ru@n^J,X@ 2yRz@nWJ] @ s4b@E#J*4@@@@@@@@@@@@@@@@gb,R@C*RXR2dg#p&)p#d%s 1s@n]8JQs@@ 2|RJ@nI@Jh@ s>QpO @ s1TO#@#g@JRn^EJn^%LnJb%JnQnW8JW@@X8JRC@JsCLn4u@@@@@@@@@@@@@@@@g2C,,b,nnX@ s/RX@ndJ#zdX@nW8J,p@ s8]J)2spsd s1TT#@ @ 2|Ru@npJ>@n^JRp@ 2|Rp@ 4 Qpd @ s1TO#@#g@JRn@@@@@@@@@@@@@@@@gWR^EJn^%LnJb%Jn&J*y,@nW J@bJ@n 8J|@nW8J,8@ 2|QpO2;@JJ,,b,n^n;&*anIJh@ 2I@EgJ*7RuW&ps&p&)pR&T8 2|h@ 4 Q@@@@@@@@@@@@@@@@gppd @ s1Ru@nW8JW@@]X8JRC@J2,*&4uT2gF4zmJ[L4)nX@ s/RX@nW J#y|X@n^Jh@ 2R8@Cz4]Wspdd&)8pQTT)22p&)p2s&) @@@@@@@@@@@@@@@@g]s2|zX s8gp&ddQ%T2 s1,@nW JO @ 2h@C,R4]Wspdd&)8pQTT)22p&) s8mR)QTps8gp&ddQ%T2m@^JT@@ s/RhXdhI#QWpRs2 2@@@@@@@@@@@@@@@@gu8RE^|X@nW8Jm@IpFFFFCLdb*#J)nW8Jm[@J Ldb*#JnT44*L)nW8Jm#g@IXFFF# J*^nW8JmkJ@Ip^FFFF,d|uJ OnW8Jms@I8&FFFbnR] L>uInW8Jm;@@@@@@@@@@@@@@@@gh@J@ @nFFFCL*# J*^^bnR] L>uInW8JnCJ@I8vFFFvd*^bnJ=k|RJX ddpR&&#Q% s1R @nW J>@nW8Jn@mW JQRC@I Ldb*#J)n^JQ=@bb 2C@@@@@@@@@@@@@@@@g8]2sps8gp%sW)nI^JTh@nW J @n^JQ@nadJTCJ@Ivn^4uFuJ)n^ J]b;@I,vFuJmu#8@nW JTh@ 2=Q>@Ev#>R@n@ 2|7@@@@@@@@@@@@@@@@gzX@n@ 2RE^|X@nW8J/Cg@;LnCLnnW8J/ J@IEJ*LCLnn@8JaLQa J@J4#z*&T44*Ln4zmJL*&Qn@8Ja #a J@JRJ&JL*[F|sLnnW8J/J@ICLnEJ@@@@@@@@@@@@@@@@ggh*LnW8J/[J@I J*LEJ*LnW8J/#g@IT44,T44myJk1R 2sps8gp)Q# pRFXI&%u)spQ pRRFghs&p)Q#/ J2C@J>uJnCLnEd& F4uJ&an@@@@@@@@@@@@@@@@gv>J@bJ@n^ J] @/QC)@IFRn^Fz)n^JR;@vvCLnn@Jp@ s1RF@E8b|Qp/m>@ICLn^4JynW8J/8@/a4W J@ /pJR&&#p#QW/y4bJp@ s1Q@ s@@@@@@@@@@@@@@@@g^*4,@EmJk/RLXdhsdgp)p8@@ 1/Qpk8@ 2RE^>@nW8Jp@ s/RX@n]8J@ @ s/Q>X@nW8Jp@@pI88J@ 2|Q7X@npJOk@ @@@@@@@@@@@@@@@@g>C@ s>QpO@ s>RJ@nIJQ@ma4W J@bJWXIWspds8g 4T|@n@ 2|X@n JOp@p8^JTh@ 4aR @nW8Jp F@I,vFuJ)nW J@@ 1LQpO@@@@@@@@@@@@@@@@@g* 2u@nW JR@@ s1R%@nW8Jnh@pa8]8JTk@@ 2|QR;@JT=J,z JnFvn>]JJ^nW8JksO#@#g@ R4J>^4nCLn^L*&T44)nW8Jph@ s4,WXI)Q@@@@@@@@@@@@@@@@g@2#pQ2 4 Qpp4,@IRT44nRn#1R @nW8JnX@p)4WhJO2C@ICLn^R)n JOp@ 2@En|RJXXbp&)pQpQ2 1/Qp#y|XQTT)22 2@@@@@@@@@@@@@@@@g^*%& 2|QpQ[@JnW^dv*nJ^F1n^JQRI@>]O^nn Jp@ pRR @nW JR@@ s1R%@n^ J] @1W Jh@ s1R/@FIJ*yJ@F b|R@n^JTh@ 2@@@@@@@@@@@@@@@@gCsRE^|X@pQR)Q%Xp&%pT2pT 2LX8@ 2  2 2OC 21 C)@2bnR^@nW JR @ 2=Q|@n^@JRh@ 1JR@n^Jh@@@@@@@@@@@@@@@@g;@2IWJ2J@JRn*L^bnFbR] L>n]8JR[@@ 2RE^|X@pR)Q%Xp&%ps8g 2@nW8J2 @ 2@F|RXX8%sW)p24R2)gsT s>R@n^@@@@@@@@@@@@@@@@gJQRC@Iz,,b,n^Jb%JnQndJT@@ s4,WX%&p2s&) s/RX@nW8JksO#@ @ 2@nW8J28@ pTIsI@FWJhRF@nW8Js@21W Jp@sI^J@bJ@@@@@@@@@@@@@@@@gI@n^ J] @2 W JC@JEJ*L^FbR] L>*an @ 2=Q|@npJRh@ s1RJ@nW8Jn @2hC)@JT44*LnFbR] L>*an^@J@@ 2=Q|@n@JF@n^JQ;@@@@@@@@@@@@@@@@gO/@IEFdv[J,nn^JQ[sO#J@I J,b L*bmIn]8JQ[sO#@@ 2|R@nIJQX@ 4aR J2s&)ps2s 2[I%&sp2s&) 2|QpO2;@In^4uInI JRC@zT44*@@@@@@@@@@@@@@@@g^FL)n@8Jaa@ spQ[@IvuJnFRmFb,*)nWhJO#@ @ 4 Qpsh@ 4RRF@n JO#@ @ s2QX@ s4,@F[JkpQ[@I,2J&FRmFb,*)nWhJO#@ @ 4 @@@@@@@@@@@@@@@@gvQpO @ s1R @nW J @n^JQ@ s4,@F J*|RWXT2pp|pv&)T2 27RJ@n]8J@bJX@npJ;@ @ spRT@nJ@JF^2bgppTd%2&%2@@@@@@@@@@@@@@@@gnvp p@ 28 24R2)gsT s1RJ@nW8J4@@sy4^JRh@ 2|RJ@npJ|@n^Jh@ 2Q@FJ*|Qp#y|X8gQ)Qds)pQ##pR8p%Qd s1Rg@nW J|@@@@@@@@@@@@@@@@gFu@n^JTX@4I4W J@bJWXLWspgQ)Qdp%) 4 Qpd @ 1@np@ s>RJ@nJ7^|@npJ;@ @ s1Rp@nW JR @ 1LQpOp@ 2b@n]8J@bpX@n@@@@@@@@@@@@@@@@g2WW J@ @ 4 Qpd @ s1RJ@nWJ1@ 1@@nahJF^@nI J>@nW8J1X@ 2a@FbdQpO@ 2#@n#J>@nW8JksOp@ 2#@n]8J@bpX@@@@@@@@@@@@@@@@gn% WQ##pR8p%Qdp4%pT2W 2|RX@nahJd@n^JQ@ 2|RX@n 8JFd@nW8J4@ 2*@F##/RLX@n4hJ@b@n4hJTsg@IR*nT4QnW@@@@@@@@@@@@@@@@ghJ%kJ@*dnR@IndJQ @ 2&@n]8J@bLX@nW J@ @ s1Qp@ 2|@ @ s1RX@n]8J@bX@nW JOs@ @ s1RL@nW8J48@4148J@@@@@@@@@@@@@@@@@gOz 2|Q7X@n^J@b@npJOk@ @ s1R@nW J@b &4s)pR#&b s1RL@n8JRp@ 2|Rp@ s1Q7X@FgbR@nWJ%kJ@*dnR@In8JT8@ 2|@@@@@@@@@@@@@@@@g bR&@n^@Jd@nhJ@bJ@nW8J4[g@Jd,v^d4*nn;[L*>nnW J@bp@n^@JkJ@IL>&Fdv4)n^J@bWXQ#Q 2yTm@n^JkJ@JJ^^bL^F[Fd,2nW JT;@@@@@@@@@@@@@@@@g#g@IL>&Fdv4)n^J@bWXE&4%s 2yTmET%2 2|,ghWdp7s s1Qp@ 2yTmET%2 pTRFQQ s1Qp@ 2yTmET%2 s2Qp@ 2yTm@@@@@@@@@@@@@@@@gET%2 2|R@n^J@b@nWJ%h@ s8@nW JT;@&uIn^JT@@ s1Qp@ 2yTmET%2 2R8@FOJ*|RWXT8%Qdp%&% &v%pQ))Q82 27RJ@n]@@@@@@@@@@@@@@@@g&28J@bJX@n^JQ@ 2|Q7X@npJOk@ @ syRJ@n^JRp@ 2|Rp@ s1R@nW8J1 @2C)@ Lz JLbnmL*&WFF*L^b)nI@Jkg@vd,nQn 8J@@@@@@@@@@@@@@@@gJh|XOu#QWp p;psX% 2s)QspQ2pQ##pR8p%Qd s/RX@nW JQ@ syR@nJ7^|% TQ)W4d%sp%4dR)pg#42 s>Q7XdhT4)T8%p pQ)@@@@@@@@@@@@@@@@gRWpg&%s) s1RJ@nW J@bJ@n^JQ@ 4aR @n^ J] @ 2yT@n@ 2RE^|X@nW8JuCg@;LnCLnnW8J/@ pTIbLI@n@8Ja #a@ 2)@n@@@@@@@@@@@@@@@@gR>W8J/[J@I J*LEJ*L^hb|RFXIR&&# R&&# s1Q@ s4,@F)#8@n^JR@@ pRF@n^Jp@ s1Q@ s4,@E/J*|RJX%T)s&)pT2)gs&)@@@@@@@@@@@@@@@@gE s1R/@nW J@b/@nahJd@n^JQ@ 2I@EpJk/RJX4%pT2Wp) 2|Q7X@npJOk@ @ s>QpO@ s>O#@ @ 4 Qpd @ spQ@@@@@@@@@@@@@@@@@g s1RJ@nW J@nWhJO@ s1R%@F daR @nW8Jp @ 2u@FRJ*4]XuQ#4Qsp24R2)gsp|2R2 2|Qp@ 1Ts@n 8JO @ 2T7@nW J]b@@@@@@@@@@@@@@@@g=;@I&R*n|&n;n^J8@ 2|R @n^Jp@ s8]E#Q) s2RXXC2R2 s2RWX2R2 s2R @nW JR;@>R*n Qn^J@ 2|RT@n^J@ 2=Q|@@@@@@@@@@@@@@@@@g nJ|@npJh@ s1R]8W#Q2sp#&p&pT&gpus&) 2|R@n^JX@ spQpap@ 2|QpuT,@>Fn^kb7R/@nhJ@b/@nW8Ju @ 27R@nW8JuX@@@@@@@@@@@@@@@@gg@@ua4W J @ 1R@nI J@ pTIu,ITRQTp%)p&p24R2)gs2u18IpJ8@ 2|8@ 1T|@n^J@@ 2|8@ 4 Qpd @ s1RJ@nWJ]b;@I2zn@@@@@@@@@@@@@@@@gOv^F4zmJL*anW JTh@ 1/Qp@ 2/@nW J@bJ@FpOh@ 21@ndJd@@ pTIvTI@n^@J@n^Jd@@vI8IpJh@ s>QpO @ 4h@ 2@@@@@@@@@@@@@@@@g7>s@F4OCyh@ syQpO @ 1JRX@nIpJh@ 1R@nW8Jvh@v18IpJ8@ 2|R@n^JRX@ s1R%@nW J@ s1RT@nW JX@ s1R@nW J8@ @@@@@@@@@@@@@@@@gF^s1,@nW Jp@ s1R @n^ J2J@bn;^ub|h@ 1R]@nJ@b]@npJ|@n8Jh@ pvRX@n JO @ s2RX@nW8Jup@uy4@J@bJ@nW8Jv@@@@@@@@@@@@@@@@@g=@v8dJd@@ pTIv|I@n^@J@n^Jd@@ 24@C|J*4]]s2sp,dpQ%TpQp&)p)Q#p&)p%s 2yTX8 Q%Tp&%u)s 1@nW8JksO#@ @ s4|R&@@@@@@@@@@@@@@@@g FsXp%s 288)Q# %s pTIbLId7TpR&&#Q%p&g)Q%T2 pTIIRQTpR)Q%Xpg&%s 2y8%s )Q# 2z@pIR&sXp)Q# pTIsdILR&@@@@@@@@@@@@@@@@gkmsXpR&&#Q%74^JRCJ@J@FvFzn%J*L[anpJ2C@IJ4n*m^InJ2I@>vEJ*L^zO7|@n^ J @7I4pJ@bJWXR&%u)sp,dps&p)Q# pRR @nW J @@@@@@@@@@@@@@@@@g@ n^JQ@ 2|QpO @ s1R%@nW8J7@a#)@JJLEJ*y^@FFCLnCLnnF;@IXFEJ*LCLnnW JTn|@JFT44,,v^T44)nWhJOv=@Ih^FRJ&JL*[npJRC)@@@@@@@@@@@@@@@@@g%7J&F#z*g^CLnEJ*Ln>@I nFTv[FEJ*LnW Jn;@bI@I8vFTv[FT44*L)n^ Ja@@7y4pT#@T#@@@T#@8C@T#@T J@L4n*m^*J&@^^FvFznF[Lbn@@@@@@@@@@@@@@@@gWp@&ay^d@E7bnXdX>XzX|X2X>XzX>X>X>XzXzXzXzXz@J*4]7XQ%WpQpQ%Tp,dp&) pTQ@ 1RF@n8@ 1RF^|@n8@@@@@@@@@@@@@@@@g%@ pRR @nW JTh@ 1R@n^JTh@ 2|QpQX@ s1RJ@n^ J @%)#)@ ]Lv&[L*nFvJb&F[n4n,n^Qn^JT[sO#J@IT2vdn^F1n^JT[sOsJ@zdnL*@@@@@@@@@@@@@@@@gO4an4hJT[sOJ@J*[*Jz Ln^[L#nW JTX@ s>R@nahJd@n#J@ 2RE^>@n@8JaOa@ s1R@nW JT[sO @ spR#^>@n]8JT[sO@ s4@@@@@@@@@@@@@@@@g=yTm@FJ4RXWspT2W%Qs&)p#T2 s8] T2Wp%p,d spQ@ 2=Qz@n@ 2|Qp@ 2=Q>@n^JRX@ 2|Qp@ 2=Rd@n^JR @ 2|Q@@@@@@@@@@@@@@@@g1J@ 4 Qpd @ s1R@n^ J1@WJ#)@ Jb*2bnCLn]b^[L4nsJ,&QnW J@bu@nF@ 4 Qpd @ s1RJ@nW J@nWhJO@ s1Rh@n^ JW@8X^JQ@@@@@@@@@@@@@@@@g/s@J*,n]OFJvmT4v^]JLyn^Jh@ s/Qp8%>@JsL*&b,duOFFOJ/EJ/FWX@n4hJ@ @ 4aRX@nW8J8h@ 2|RX@nahJ@n^J@ 2@@@@@@@@@@@@@@@@g#FR8@n@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@W a@@I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F I@d@@@@@@  IJ@IQ@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g]dI,,E,FO7dQO&gTE&@C@@@@@O2bR&@C@@@@@O2s&@F@@@@@O7Q&@CC@@@@@O%Q&@CF@@@@@OQ7&@C@@@@@O#R&@C@@@@@O#T&@E@@@@@OR7&@CE@@@@@@@@@@@@@@@@@@@@g4@O2b&@@@@@@O#Q&@C@@@@@@OQTd&@@@@@@@OQR&@@@@@@ORQ&@E@@@@@OTu&@@@@@@Od4#&@F@@@@@Og2&@EC@@@@@OQT&@@@@@@O24&@E@@@@@@@@@@@@@@@@@@@@@g@O2b)&@@@@@@OgQ&@E@@@@@Q&)W@CTQsQF@E;F&@@@@@@@@&@@C@&@@@@@@@@gQWR@E@gg)&OQ7%QdO#TQy)&O%TO#%&@@F@@@@@@@@@@@@@@@@g7@@@@@O#Tg&@@@@@@@O2sT&@@@@@@OTg2&@C@@@@@OTgQ&@@@@@@WTJ&4)CF[2Rs@@@@[2b2d&gO2b2@@@@@OW#%Tb@@@@@@@[%T#TO@@@@@@@@@@@@@@@@gg)h4Ek[Q))s&@E@@@@@@[Xd2bE J@b@@@@@@EWTIJIC[R)4d&gOR)4OX#sW#%&)[))#%bW))&)7#[7R%TQ[#&Qs#[#&QsQW4%TOR)ds7s#QR#[%@@@@@@@@@@@@@@@@g*&ss#%O)2[sQW&%&@@@@@@@[2s&b[TR#7dg[%ss2sW&R4OR22JCC[%TR4[XQ)2vTsX[&s[%v)T[%v)T[%T#[%)#[%)#WsX)FCWR#Q%b[g)&@@@@@@@@@@@@@@@@g&;TR[@@@WRWgd[Q#R4s2&@C[&sCb@@@@@C[dQ)WQT[d%42E&@CO&)WO2sQ hR[%WR7O2bQO%&gOd%O&d@FOdv h hEs&gvX hCR)svOR@@@@@@@@@@@@@@@@g;>))O))&@EO2s7[7RQ7)[7sgO#T72W%OhCQW7R[7sdgOQTTW&sO2bW[2dQ#%WOhCO)2XFOhCCO#)O#2XO2b%OhC[#Q7)WOQ7JCO%&TO7&[7@@@@@@@@@@@@@@@@g=&g&gO#TROhFO&[&g&gWWXsO2sR&)[d2Qu7[d)sQTOsv&Od)W[%&Q)WO7QROs)[QT)d2b ##[Tgsdg 22W2Quy[2QuysOgy[%7XQ)[%2Q%W&4%sOdXQ@@@@@@@@@@@@@@@@gO)Oh[XsQR#LOR)7[X72Qu[R)4sR[XQu#g[W)&4g[gQ)%[g)%2[2Q%7[2Q%72WXQug[g7g2u[gd%WO24R[XQu)gOhOhIOhE@Q[g%T[#Q2s#%[XQu@@@@@@@@@@@@@@@@gO&%[Tg%sg7gOhE[&s2s[&#QWF[%&&dQ[R)4sR[2W%Rs[%ss%2[XQudWT#)%[W%ROT#)OhE[W%OhEC[2s&X[T#)&4sOhE[2s&XO7%7&4s@@@@@@@@@@@@@@@@gC^OX%X&4sQ&4sOhEE[&4s2y[)2Q%7[)2%7O#8JOhEFFF[)sdg)OQ%[Q%sgOhE[Q%sgOhF@OhEOhEI[Q%sgCWXCuOhFWW%[&%2%[#db#O%O@@@@@@@@@@@@@@@@gCp7&4s[d%42&4s[&%uCv[RT#%b&4sOhFOhFC7gOhFWd%42%%OhFEWTIIOhFF&7gOhFOQROs%[W%XQ)W2Qu7W2Q%7[2Q%7#OhFO)8WsQW@@@@@@@@@@@@@@@@g2s[Xd2b[RdR#%OhFI[W%)XOh@[%s2[W%ROhW&ddQ[W%&XOhOhCOhW2s&X[Q)W2QuOhEOhFW2XsOh[)2%7#Oh[2&bOhIOh@Oh[4%s@@@@@@@@@@@@@@@@g^|QTOhEOhOhCOhIOh[&TT#Oh[TdCC[R#Q%b2OhFRsvOhI@OhT2vg)s8[TWu[g)#W[s22W%[%gsv2[TWu2[TW2sOhIOhI[TW4sOhIC[%)@@@@@@@@@@@@@@@@gJa#C[d7g&WOhIOhIEOhIFX)[W%XQWWs)OhIOhIOhIIg#42h@@Ws2TW[)s2X[TWus[s&gER&Ws%R[%%Qs[W%XQ[Tdgs[Tdgs[TdgsC#%&O&usOR@@@@@@@@@@@@@@@@g)CQh@[)2%7Q[)sQW2s[)27#Qh@[2%7Q[sQW2s[27#dQX)E@@@&@CE@@@@@@g@@@&@EE@@@@@@@@@@@@@@@X@@@7@@@E1Q@@@[%&gd&gWTJWT@@@@@@@@@@@@@@@@gFXC[%TRsb@@@@@@@@&@@@@@@@b@@@@@@@&@F@@@@@@[s%sXb@CFC@&@@@@@@@b@@FIJIIFEJ@&@@@@@@@J[XQ#TROCITJCId&&@@@O#2R@@@@@@@@@@@@@@@@g=v[27#d F@@@@&@F@@@@@@@&@[sQW#&@@@@@@@R@@@R@C@@@[%W#d&@C#&vIR@[g&gQT)&@F@@@@@[Qg&gT[TWusWdQ2bR@@@[d#&%@@@@@@@@@@@@@@@@g/2&@@@@[%W7#&@@@[Q#Rs2&@#Q2s[)2QuQ7)W[%TWdW42TdR[&sR##J@[7sgJ@C[T&sQTJ@J@E 7J@F 8J@[Tdgs y@@ 7d@@@@@@@@@@@@@@@@gIu@[%)#WsdgQ@@WQT)@EWQT)@F[&u%T@ 8d@@ yd@W2sTs@@[)s2XC@E[%W2W%&%2@F[@2ys@CWgQ)s@CEWgQ)s@@@@@@@@@@@@@@@@@gvRCF[T&sd@C[T&7sd@@@@@C@@E@F@@E@@E@E@EC@E[#sdg@EE@E[T&7s@F@@FO)W@F7s@FC[QWssg@F@FE@FF@@@@@@@@@@@@@@@@@FW@QT)@[@2y@W@sQW@CW@%T@[2%2#v@E[)4%s&g@F[dQ7g&2@@2EETWdET[&#QW&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gQu2222222222222222222222222222p)W2Q%ppppppppppppppppp,%JyFFFFFF@p@gXpFFFFEd)W@Cpppppppppppppppp,,,,,,,,,,,,,,,,,,,,,,,,,,,,,a@% @@@@@@@@@@@@@@@@g4uLb^FFRLnFFFFF*mL4,F8&a@m8g@u8ga@=8d@ QaL a @ a Wa@ a [aO@ ]aO a@Q2X 12@IQ2 I12@JQ2 J12[@ @@@@@@@@@@@@@@@@g Q2[  12@LQ2 L==L=a=>^n>O@L=L=a LpL=p@ @ p|7@ L2XgE1 C@d1@&R@%1@&@&1@&@g1@&^@h1@&b@)Tvp^h@@@@@@@@@@@@@@@@@g4v*u&p^n@,p^4@mv[ ^;^@ba@@@@Wz[XO @ X[#@  XO%@ k X=@ LvpOh@ LvpR@uTvp@m >pm,;a @s7b^E8mFsJk s # )g #J)aRkg) 1,;1OJ|E@@@@@@@@@@@@@@@@gh))&)yum8g)u@dkL;8I2*=k|7z Quhyd|EO2^h)&&g &IgzCu7,@s7E8)Jh*,sJ*)aFbdk|,[ d>,m |@s7bC*@hysXLsXI,48LkXQF[^p *@@@@@@@@@@@@@@@@@g h*IQ*8 L;**XRQy&[p*@%IsRy8*ypgLJ@ 221 F@ z27 k 8k ^@ QR27 ,m8F ^@ Q*27 ,m8*,C2@*,C)XI 4C*y1I h),@@@@@@@@@@@@@@@@g/pR1 *,&pO @n,,R1 &[@|p@ J27 4,&pO gIn@ L[d,m8@shO8EhhhWJ*/ k/O ds&4R|@b*44sT&]&=F@%Q*8Rs2&XLs4>@a &]@@@@@@@@@@@@@@@@gWnR|@b*44sT&]J4p@48T8EF48R|@b*44sT&]uL>@abF] h @@|m8 [ h@@&7 O XQgW d/@*m Lu /kgE^@ R[@= @ b27 g@@@@@@@@@@@@@@@@gy^Xa dz I2s>RL*bF=J*yga &z IRs>F,d>@QgI/Q ga k[@&J|)&d@gXaI/Q &Ea @z I**>n|>&7 /@XI&Ea 2/@I2n|>^@zL*a&7 /@@@@@@@@@@@@@@@@@g)#XI&F ga 4z Is>F,dy& & g]a 8/@,2^Xyg^a |z JTbLn^**z[*)&7 @X&I &ba 4z Is>F,dyg InX p@ F[8p@ab8Oa &@@@@@@@@@@@@@@@@gT7E@X%>Cb@bX@hh]h,s/a&kI8 R[gFC@FC8hnhT,s/a&kIO mp#W@EJb#@=hv*@g L;8I2*8[4*k&]n#*@dkL;8I2*nz27 gXa@@@@@@@@@@@@@@@@g nz Ib42^F=J*y&J gdO yg%O y& gz Ib42^F=J*ygW nz z42^ %*sz&8& *m,@b T&[yup@a ,^^kOhR[ F ,yhhkp@@@@@@@@@@@@@@@@gQJ*2n1gg@>dz],@)XLkXJIQ*8J1yJ8F]bz#*@d2Xz*8[4&J&=F@ Fzzk*@&RXT*yzT28*T&Jzup@ay;F^n;C*@%2sX4k8 Qhk&z;C*@%2sX4k8 Qhk&]b@@@@@@@@@@@@@@@@gd,s *@d2X4k8*T&X^@ F]vs *@d2X4k8*T&^2@ F]z*m,@b T&^s *@d2X4k8*T&X2@ F^ &*@ FX^@ F^4;[*@d*T8RyQFzs *@d2X4k8*T&TC d2z IL&@@@@@@@@@@@@@@@@g > J>J%I&&LTz I#L,>&^F4uJ&@I&7 8z Izvdn^Fn^[L,n@;z&8@vn gd@8[4X@hhRgFC@Ig&aInX p@ F]h;h@upR[4X@1;p>aIn@ F]b;h@@@@@@@@@@@@@@@@g@y@F=F@ FzgI1 7@zR[gFC@gz@ F]&=F@ L kOhR[ &|a>@ F]b;h@y@F=F@ F^2@ Fb&y1 g, &aI2X p@ &]h;h@upp@@@@@@@@@@@@@@@@@gW CFgJsz&8@// gXaz@ F^C a/Q g, &TaInX@;@%hRgFC@Igz@ F]|@/*]&8@shn &baIn@ Fz|@@hhn gW>@ spaI@@@@@@@@@@@@@@@@g/n@ F>@ R2|aOFz ICLn^FRL)g)O/@*vdn&WaO/@*vdngQ@gO @I#Ln&@a&baO [@b[ OC#X4FC4 IR[ FJT)guOO@XIgXaOz Iz[ CL*@@@@@@@@@@@@@@@@g]Cbn>FR*)&7OXXOR@%ITz@8h)Q*=*2baO/@*vdngaOz I=Lvd>vdngRO^z Iz J,nvdn&baO^z Iz J,nvdngam@^^41&7OXz IR FJT)gaO@@@@@@@@@@@@@@@@gI z Jz J,nvdn^FR*)&baObz IvFRLnFygaOdz I^RLnF>FR*)&7Oz IL*n>^[ O&)zzhO k/Oad#**8hznhOas )% mFbnmp1hJk/g &p#R#h@@@@@@@@@@@@@@@@@gCshznhOas )% mFbn>pzhO k/Oad#**shzhO k/Oad#**mp1hJk/g &p#;kI^=s*@%k4s8IsRy&[Ep@aa&[ p@aa@baOdz I^RLnF>FR@@@@@@@@@@@@@@@@gLd*)gaObz IvFRLnFy&7Oz IL*n>^[ O2C%87nhW#Rk g ) &mp1hJk/g &p#Rhh,hW #R/ mFbn#XkW@gmLmp=W@E/ *@%J44sT8Q,21F@@@@@@@@@@@@@@@@gh[4C*y1= 4C8h>haO)% 2m kJ)aFs%&mp>nh[F#%gaFsJka )&/R8 pmFsJk s # )g #J)aRkg)Jhh8ha#Rk g ) gad#**sh7nhW#Rk g ) &mp|W@@@@@@@@@@@@@@@@g>;@E JJ=p@asR*&^n;C*@%2sX4k8 Qhk&z;C*@%2sX4k8 Qhk&[2|[*@dL2y8Ih2&^d1E,@b[J,FXz@ Fz u@zb*^|nXshI Jv@,>n|8shIQIu@I&CJv@@@@@@@@@@@@@@@@g nv&XshI^)u@Id>#Ln&4J8shI2v@b[ sCXIRQu@4zm L2 s pI R8@X sOIu@ICLn^FRLhsI u@zb*^|nXshI^au@IT>n|>FR*hshI Jv@,>n||@@@@@@@@@@@@@@@@gJ=@8/ 1hp2Q%p7  I]u@Iz[ CL*bn>FR*hsXhI au@LkLv4J>FFFFFFFFFFFFFFFFFFFFFF#Ln&Cs@IL|ECpC @F1 khOXQ)p%T7p2QuF1LF@@@@@@@@@@@@@@@@gh %&p&ddQp#QWFnLC]JR)4psQR#QhIau@IFJ|nXshI 1u@I,,v4db4J|I J4 khOXQ)p%T7p2QuFX/ d pE&4%sFnLC]JR)4@@@@@@@@@@@@@@@@gWpsQR#Fn bhI%7spXQ)aQhIau@IFJ|nXshI^)u@Id>#Ln&4J8s pIQu@IL*n>^[ s8@aOIaau@ zn^*n>^4u[ CL*^T,sCXIa*8@@@@@@@@@@@@@@@@@gmd]s pIa28@Xs pIQu@IL*n>^[ L@8/ 1hp2Q%p7FyLOh[Wsp%7sp&pXQ)p%#p&ddQFX[L W@CT#)FnLW@kFEJQ pER#Q%bb@OIbIu@@@@@@@@@@@@@@@@g @I&v4u[ s pIa^@2d]CL,R IyLLh[Wsp%7sp&)pXQ)p%#pR#%bFX[L W@CT#)FnLW@kFn bhI%7spXQ)bXOIbau@I^vCLv[ s pI@@@@@@@@@@@@@@@@gpbQu@zd]v&@yyLOh[Wsp%7sp&pXQ)p%#p&ddQFnLIhQ&4%sps2sp%&p2sb1hIRI^@*TL,sOIbau@I^vCLv[ s pIaIu@JJvdn^Fn^,vF@@@@@@@@@@@@@@@@gELRnW@yyLOh[Wsp%7sp&pXQ)p%#p&ddQFyLQhL2s&p&)pXQ)FnLIhQ&4%sps2sp%&p2s#OIaau@ zn^*n>^4u[ CL*^T,sOIbau@I^@@@@@@@@@@@@@@@@g=vCLv[ s pIaIu@JJvdn^Fn^,vFRnJsE |hg#42pp%Tp#2sFn =h #Q2sp#%p&4sFEJpvTsXF= pRppT&4R#p#2pFnLW@k@@@@@@@@@@@@@@@@gkbFE pRppT&4R#p#2p#hI#u@JLv&>&^sJ,&FOJhshIQv@&2&[@sWXI#au@IEFRLnF8shI#)u@J%FRLnF>[L#^sJ, sIIQQu@I#L,>&^F4uJ&@@@@@@@@@@@@@@@@g^@s#pI#z@sI IQ)u@IJ,n]JL^@L @yJJ hI%s)Q#pF^LaTXFFLJ hI%s)Q#pFyJ@hQ2s&p&pXQ)pp&bF[EJLh%Tp#Tp#QWFnL @@@@@@@@@@@@@@@@gdEW@kFnLbh)s4)%ps&pdQ%pg)&WdXXhIau@J|^&CJv,*&[Xs pIdQu@J]Jn^%LnFvb Ln=L28shIv@JQFCJvdvbTn,^Rn@ shIdau@ICLnF,d>@@@@@@@@@@@@@@@@@g1sWhIQv@&2&[@s pId*8@XshIQv@&2&[%@z]L&h Qp%psdgpFEJpvTsXF[v pRppT&4R#p#2pFaLh2W%pRsFX]@@sC8I#au@IE@@@@@@@@@@@@@@@@gs1FRLnF8s pIdz8@Xh@yEJQ pER#Q%bFX/L&h Qp%psdgpFyLOh[Wsp%7sp&pXQ)p%#p&ddQFX[IdhJQ)p)s4)%FnL)W@kFEJQ pER#Q%b@@@@@@@@@@@@@@@@gg%hI%Qu@ICLnF,d>@XsIIQ)u@IJ,n]JL^@s[I%^@Ib[ X&bTs8I%Qu@ICLnF,d>@Xs#pIdJ#@psI IQ)u@IJ,n]JL^@Lg@8/Ldh Qp%psdgpFn@@@@@@@@@@@@@@@@g4LhW@kF4JhIdpQ)WpQT)F[R7CW@@FXa@@shI%bv@bs*hsWhIv@JQFCJvdvbTn,^Rn@ s pI%*8@Xhs pIdQu@J]Jn^%LnFvb Ln=L2|m@8#@@s@@@@@@@@@@@@@@@@@gOpIF88XJ8@@shI8XJ8@s pIdQu@J]Jn^%LnFvb Ln=L2|nJ[E |hg#42pp%Tp#2sFnLbh)s4)%ps&pdQ%pg)&WFyL/hJ&%2sp2Q%FyLp@@@@@@@@@@@@@@@@@@g1s IIu@IL& J>J%sIIQ)u@IJ,n]JL^@sI @bhIdpQ)WpQT)FnLbh)s4)%ps&pdQ%pg)&W&XhIau@J|^&CJv,*&[Xs pIdQu@J]Jn^%LnFvb Ln@@@@@@@@@@@@@@@@gJ=L28sOI%yu@IR4n^FRLhsOI&@@FyL2W@C7F4JhIdpQ)WpQT)F]7CW@@FnLbh)s4)%ps&pdQ%pg)&W&XhIau@J|^&CJv,*&[Xs pI@@@@@@@@@@@@@@@@g=)u@I,^[L*nv&XshIQQu@I#L,>&^F4uJ&@sO@avh#&Qsp2g)&Wp#%bFLJJhL%g4spv&)TpFEL4hId%42p&%F]L@hTpg%s&)XhIau@J|^&@@@@@@@@@@@@@@@@gu)CJv,*&[Xs pI)u@I,^[L*nv&XsOI&p@FyL7@@s pIdQu@J]Jn^%LnFvb Ln=L2|8JsE |hg#42pp%Tp#2sFn =h #Q2sp#%p&4sFyLv@@@@@@@@@@@@@@@@@gg8@shIJ*v@b4v%shIQIu@I&CJvnv&XshIQ)u@IJ,n]JL^@s8IQ1u@IJ,n]JL^@sCXI2v@gJmLps pIgJ8@Xhs pIgR8@X4y@yEJhXQ)Qs)2sF[v@@@@@@@@@@@@@@@@g8 LpEgp7gF; W@C&%ghIgv@*nn|8shI&au@IL#Ln&4*hshIyu@I2[ JJ^m [JXsOI&8@FEIp&4)F]L[hQ&4sg4sp#Tp2yFXL]@@@@@@@@@@@@@@@@g8hT)p2Q%p7p#dsp#TFEL|TXFyJ@hQ2s&p&pXQ)pp&bFEJQ pER#Q%bF[EL;pEp7gFnL=W@kFEL;pEp7gFXQ@@shIgv@*nn|8s@@@@@@@@@@@@@@@@ghIg1^@,#Ln&T=@yyJ@hQ2s&p&pXQ)pp&bFEL;pEp7gF=Lp%%Fn @W@kF=  pFTpIIFn W@kCFyI2@@sOJ88hX@FX]@@s p@@@@@@@@@@@@@@@@gkIhR8@X]@@8]@@s pIhb8@X%@=E@@sX IJ#@shIh28@^,hsIgv@*nn|8sX I#z@@yyJ@hQ2s&p&pXQ)pp&bFEL;pEp7gF[L8@@@@@@@@@@@@@@@@g,FyJ@hQ2s&p&pXQ)pp&bFnLbh)s4)%ps&pdQ%pg)&WFX@E I/@@sI)^@vR*nF8sh@%I pF2Q%p7F=@8)Qu@I&RLnF>[L#Xs pI)8@Xs@@@@@@@@@@@@@@@@g[hILIu@I2,*&sJ,&[ shI2v@b[ spIhyu@I*zn^*n>^[ @=L TXFC)hC@F^ TXFXgJO pEsX)FE@8)1^@JFJzz*&F ^J%sC@@@@@@@@@@@@@@@@g;@F[7CW@@F[ OhJXQ)pdQ2bFX[ hIRdpR#Q%bFn QW@kFEJQ pER#Q%b*hI2v@b[ sT @%I pF2Q%p7F4  pF2Qup7FX[IdhJ@@@@@@@@@@@@@@@@g#kQ)p)s4)%Fn h Wsp%7spXQ)FX/@8)I^@vRLnF8spIhyu@I*zn^*n>^[ R I/@E@yyLLh[Wsp%7sp&)pXQ)p%#pR#%bFX[JQ pER#Q%bFn R@@@@@@@@@@@@@@@@g>EhQWsp%7sp&)pXQ)Fn W@kaa 8@FX@@sOI*au@JCLk[JL[OJnFRLnsOIhyu@I*zn^*n>^[ spIaau@ zn^*n>^4u[ CL*^T, I/@E@@@@@@@@@@@@@@@@g1F@yEIah%Tp#TpXQ)F] &pXQ)F[ELFh %&p&ddQp#QWFn hWsp%7sp&pXQ)p%#pR#%bFyLOh[Wsp%7sp&pXQ)p%#p&ddQFX[ W@@@@@@@@@@@@@@@@g* pE&ddQFn hWsp%7sp&pXQ)p%#pR#%bFX]@@shI 1u@I,,v4db4J8s pI*28@X X I/@@shI#)u@J%FRLnF>[L#^sJ, sWhI#au@IEFRLnF@@@@@@@@@@@@@@@@g b8s pIkJ8@Xs pIkR8@X@yEIah%Tp#TpXQ)Fn [W@kCkOI*)u@ Rzn^*n>^CLv[ CL*^T,sCXIRI^@*TL,spIku@Jzn^*n>^CLv[ @@@@@@@@@@@@@@@@gv#shIz8@4*m[@z] &pXQ)Fn XhWsp%7sp&pXQ)ay 8@F[ JO pEsX)Fy Th%sQ#yp2Q%2Fy h Wsp%7spXQ)FnLOh[Wsp@@@@@@@@@@@@@@@@gX%7sp&pXQ)p%#p&ddQFX@EJ/@@shIk)u@I J>FR*hsI)^@vR*nF8sh@%I pF2Q%p7F=@8)Qu@I&RLnF>[L#Xs pIk28@Xs pIkz8@X^@=L@@@@@@@@@@@@@@@@g,[ TXFC)hC@F^ TXFXgJO pEsX)FE@8)1^@JFJzz*&F ^J%sI,^@I>v[ F,d>@sC@F^7CW@@F[Lk pLXQ)CpdQ2bF[W@@@@@@@@@@@@@@@@gy; ]hQ)Wp2QuF]L7CW@@F4 pO2s&pXQ)psdgpF]@8)1^@JFJzz*&F ^J% @zd@8)I^@vRLnF8s I)^@vR*nF8spIka^@IFv[ LQ I/@@@@@@@@@@@@@@@@@gbR@sh@Fy Th%sQ#yp2Q%2Fy  p2s&pXQ)FnLQhL2s&p&)pXQ)ba 8@F[ JO pEsX)Fy Th%sQ#yp2Q%2F[ OhJXQ)pdQ2@@@@@@@@@@@@@@@@gbFX[JQ pER#Q%bFn aW@kFE bh)p2Q%p7p#dsF=I* pFTpIFn #W@kFE hIRdpR#Q%bFn aW@k,XhIRI^@*TL,a@yy  p2@@@@@@@@@@@@@@@@g[Os&pXQ)FnLTh 2s&p&pXQ) 8@F] dh2s&pp&bpsdgpFX]@@shIQau@I2,*&sJ,&4J=%@yELh)p2Q%p7F; W@C&%F=L]hT)p2Q%p@@@@@@@@@@@@@@@@gJa7p#dsp#TFn &W@kFELh2W%pRsF]JLh%Tp#Tp#QWFnJ@hQ2s&p&pXQ)pp&b,phI#au@IEFRLnF8sWXI#u@JLv&>&^sJ,&FOJ@@@@@@@@@@@@@@@@ga hs^pI#)u@J%FRLnF>[L#^sJ, sTIau@IFJ|nXs pI,z8@XsE8I#u@JLv&>&^sJ,&FOJhsCXI2v@gJmLpspIu@LnvCLv[ CJv4FFFFFFFFFFF@@@@@@@@@@@@@@@@gb&FF[ELvvshI,au@JFvCJv4F,d>@sOIbau@I^vCLv[ spIu@JvCLv[ CJv4g@yEJQ pER#Q%bFyLTh%2s&p&pXQ)ppppppppppppppppppp@@@@@@@@@@@@@@@@g|##p#Fn %W@kCFX@pJ/@@shI^@J4[L*nCLnLv&^L*&EJn^%LhshI Q^@2b*^@ysCXI,Qu@IuFRLnF>[L#XsO@%hh4%spQT)FEIdhJQ)p)s4@@@@@@@@@@@@@@@@ggL)%FyLTh 2s&p&pXQ)FX]@@shI#au@IEFRLnF8sXhI au@;Lv4J8s pImJ8@XXsO@%hh4%spQT)mOIhyu@I*zn^*n>^[ sT8I2v@b[ shI2@@@@@@@@@@@@@@@@guv@b[ sCXILau@IR EJn^%Lhs pImR8@XsRk@h @@Ek@zmXE@@@Fn kW@kFn ,W@kmhCXIm1u@I2bnb,nhsOIka^@IFv[ s pImz8@@@@@@@@@@@@@@@@@g4JX=)@z4 phTp CCFE 1hJQ##pR#Q%b2nhIp8X )@IR,*&b22ms]InR8@Xm/@yy@8mu@IFdk^J%snk@hT4p@s pInb8@Eu@;  &pXQ)FX]@@@@@@@@@@@@@@@@g)^@@s) IdJ#@psCXILau@IR EJn^%Lhs pIm*8@Xpsn2k@E,@8]@@shI#au@IEFRLnF8spI^@J4[L*nCLnLv&^L*&EJn^%Lm4@=vX@Fy@8Iu@IRm Lu[L@@@@@@@@@@@@@@@@gu,,sOJ88n8@Fn uW@kIFX@/ I/@@shI#au@IEFRLnF8sWXIQv@&2&[@shI#)u@J%FRLnF>[L#^sJ, sOI/u@JR#J;^4nnCLk[JLXsCh@F]J@@@@@@@@@@@@@@@@gu,hXQ)Qs)2sF] yh g)&Tp#QWFy zhIs2sp2W%F] ;hO%g4spv&)Tp2W%Fy |hOTWsp&%up2Q%FE =hRTWs2p2Q%%Tp%sF]J@@@@@@@@@@@@@@@@g OhXQ)Qs)2sFE &pXQ)FX[JRhFg)&TFn >W@kF] yh g)&Tp#QWFy |hOTWsp&%up2Q%/pCh@FX[ yh g)&Tp#QWFn @@@@@@@@@@@@@@@@ghIW@kCF[vL@hTpg%s/8WXIyu@I2[ JJ^m [JXs^pI Jv@,>n|8s^pIpu@Iz#J;^F&R*&nXshIyu@I2[ JJ^m [JXshI2v@b[ sCXILIu@I2,*@@@@@@@@@@@@@@@@gL]&sJ,&[ s pIpJ8@XspI%yu@IR4n^FRLn@yJJ hI%s)Q#pFLhI%s)Q#pCFE &pXQ)FX[L|TXFX/Lh)p2Q%p7Fy zhIs2s@@@@@@@@@@@@@@@@gOyp2W%F]ChOd%42p7g&%p#QWFy 8hRTWsp&%up%sQ#Fy |hOTWsp&%up2Q%F[C@@sXhIpu@I|#Ln&F||4n4J8s pIpb8@XpsIpIQ)u@IJ,n]@@@@@@@@@@@@@@@@gWzJL^@sIQ)u@IJ,n]JL^@@yEJ hI%s)Q#pphWXIyu@I2[ JJ^m [JXsWXI Jv@,>n|8shIyu@I2[ JJ^m [JXsIIpQu@IJ,n]JL^@XsI IQ)u@IJ,@@@@@@@@@@@@@@@@gsn]JL^@shI2v@b[ sCXILIu@I2,*&sJ,&[ s pIp28@@spI%yu@IR4n^FRLnF@yy@8Iu@IRm Lu[L,sOJ88p8@FnL/hJ&%2sp2Q%/ 8@F[@@@@@@@@@@@@@@@@gC@@shI/)u@JR#J;^FRL,**&nXshIpu@Iz#J;^F&R*&nXsI IQ)u@IJ,n]JL^@shI1u@Jbzn^*n>^CLv[ J%shI1I^@Izzn^vuE[ spI/u@J@@@@@@@@@@@@@@@@gbnR#J;^4nnCLk[JL]z I/@FJ@yy XhWsp%7sp&pXQ)FX[ W@ |dQ%2pR#Q%bFn W@kFnJW@k1XCXIg1^@,#Ln&s pI1b8@XXspI/Qu@I@@@@@@@@@@@@@@@@g8n^FJ|nL@8[ pg#42FX/Lh)p2Q%p7FX]@@spI/Qu@In^FJ|m| I/@FJ1yO pJs2spTWsFn |hOTWsp&%up2Q%FXgh)WXsp2Xs@@@@@@@@@@@@@@@@g )pF[I&h XQ)ppdQ2bF]QhQTWsp&%upsdgpFd =hRTWs2p2Q%%Tp%sFJJ hI%s)Q#pFaRhs&gpEpRs2p&%FnpkF[@@@@@@@@@@@@@@@@gFFIWTXFLJ hI%s)Q#pFJ pLs%pRp7QsFyJhQT&4R#p7Tpd4#sFQhQTWsp&%upsdgpFLJ hI%s)Q#pFd@hOTWs2p42@@@@@@@@@@@@@@@@gJ&Tp%sFnpk1y 8@Fy@81I^@Izzn^vuE[ sTIau@IFJ|nXspI1y^@In^#J;XsWhI2au@IkL*n^F48sT I1y^@In^#J;XspI1y^@I@@@@@@@@@@@@@@@@g^an^#J;[# I/@@shI2)u@J*zn^*n>^4u[ J%shI1I^@Izzn^vuE[ sXX@FLJ hI%s)Q#pFy |hOTWsp&%up2Q%FJJ hI%s)Q#@@@@@@@@@@@@@@@@gLpFn #h%sp2Q%I 8@FLhQTR#p7pdg8psdgpFEJ hI%s)Q#pFX@@s) IJ#@s8I2yu@JJbT^v>dFF,d>@sX@IJ@8sI Isu@JJb@@@@@@@@@@@@@@@@gnT^v>dFF,d>@XshI21u@JJbT^v>dFF,d>@sh@F]LyTXFXgJhI%s)Q#pF[@ I8FXhQTR#p7pdg8psdgpCFLXhQTR#p7pdg8ps@@@@@@@@@@@@@@@@gdgpCFEJhI%s)Q#pFXgWhRTR#p7pdg8psdgpFXhRTR#p7pdg8psdgpCFnJhQT&4R#p7Tpd4#sFX@FJ1yIp p#%p%1&4spQ%Tp)@@@@@@@@@@@@@@@@gus4)%FnJhJ&4%sps2s)XhI au@;Lv4J8s pIdQu@J]Jn^%LnFvb Ln=L28sOI^@J4[L*nCLnLv&^L*&EJn^%Lhs pIdQu@J]Jn^%LnFvb Ln=L2|b )h@@@@@@@@@@@@@@@@g*zE@@@Fb@@s Iau@IL&FR*nF=spI)u@Id&EJn^%LnJ% T I/@@shIk)u@I J>FR*hssX@F= W@C&%FnpkFE]hL)p2Q%p7pQT)F] I p@@@@@@@@@@@@@@@@g;mF2Q%p7FE^hR)psQWWTp2sQ)spQT)F[ hR)p2Q%p7p#dspQT)Fn pksahI4Iu@IbvFRLnF>J%shI)I^@vRLnF8shI4Qu@JRvFJzz*&F ^@@@@@@@@@@@@@@@@g]dJ%shI4u@JRvFRLnF>[L#^J% J2]  psQWWTp2sQ)spQT)F[R JhL2Q%p7p#dsFE ]hQ)Wp2QuFn Th%sQ#yp2Q%2& 8@FJJ h@@@@@@@@@@@@@@@@gOvI%s)Q#pFyI4hI7pRQ%TQF]J hI%s)Q#pFnL2W@C7FX@@s pI%1^@ z*2>CLnFFFFFFFFFFFFFFFFFFFFFFFhs pI%1^@ z*2>CLnFFFFFFFFFFFFFFFF@@@@@@@@@@@@@@@@gs=FFFFFFFps pI&J8@ ;CLnFFFFFFFFFFFFFFFFFFFFFFFFFCs pIbz8@ ;FCLnFFFFFFFFFFFFFFFFFFFFFFFFFC@s pIb*8@ >>CLnFFFFFFFFFFFFFFFFFFFFFFFFFF8s pIsJv@@@@@@@@@@@@@@@@@g^; |[L*nCLnLv&^FFFFFFFFFFFFFFFFFFFs pIa^@ zd]CLnFFFFFFFFFFFFFFFFFFFFFFFEXs pId8@ zCLnFFFFFFFFFFFFFFFFFFFFFFFFFs pIgv@ znv&^FFFFFFFFFF@@@@@@@@@@@@@@@@g>[FFFFFFFFFFFFFFhs pI&*v@ zvv&^FFFFFFFFFFFFFFFFFFFFFFFFps pI&v@ ;v&^FFFFFFFFFFFFFFFFFFFFFFFFCs pI#v@ ;Fv&^FFFFFFFFFFFFFFFFFFFFFFFFC@s@@@@@@@@@@@@@@@@gz pIb2v@ >>v&^FFFFFFFFFFFFFFFFFFFFFFFFF8s pIsJv@ |[L*nCLnLv&^FFFFFFFFFFFFFFFFFFFs pIbQu@ zd]v&^FFFFFFFFFFFFFFFFFFFFFFEXs pI#Jv@ zv&^FFF@@@@@@@@@@@@@@@@gaFFFFFFFFFFFFFFFFFFFFFL In bh%7spXQ)pppppppppppppppppppppFnLJhXQupd%42pppppppppppppppppppp Fn mhXQup#pgQ)%pppppppppppp@@@@@@@@@@@@@@@@gspppppp|Fn bh%7spXQ)ppppppppppppppppppppp;Fn s pXQupgppppppppppppppppppppppppgFn 7hXQup)pgQ)%ppppppppppppppppppFn >h@@@@@@@@@@@@@@@@gXQupQ&WpppppppppppppppppppFn >hXQupQ&WpppppppppppppppppppFn >hXQupQ&WpppppppppppppppppppFnLCh&ps2spppppppppp@@@@@@@@@@@@@@@@gE pppppppppppppXFnLCh&ps2sppppppppppppppppppppppp7FnLCh&ps2sppppppppppppppppppppppp1FnLCh&ps2spppppppppppppppppppppppkFn@@@@@@@@@@@@@@@@g& >hXQupQ&WpppppppppppppppppppQ]aO@a1hJ))&)p#%bFz@yWFd@@s pIQu@IL*n>^[  J1z@yWF%4p@Fz@yWg4p@FXv@>g@EWJz@yW@84p@@@@@@@@@@@@@@@@gF|@Fz@yWFh@@sFpu@g EOJ88u@Fz@yWFk@@sOJ88u @Fz@yWFm@@sOJ88up@Fz@yWF/4p@ahOJ88L^&@@sOJ88v@@]LILX@FX@F1 Jb@@@@@@@@@@@@@@@@gO7C@F2JXv@>s@F4JbI#@@sFp@v) 8@ @2Fpvp@FXv@>7@F I/ XhWsp%7sp&pXQ)2Fp7@@2QFp7@7QFp7X@2) 8I*Qu@JJzn^*@@@@@@@@@@@@@@@@gTn>^4u[ @8v@;@En IbI#@EO v@>|@kJXv@>=@Jpv@>>@EJXv@>@,Jpv@@@EF@8v@@FT v@@C%@8v@yg8X@8aFpF8@FXv@8>@CQJXv@|E@@@@@@@@@@@@@@@@@gvE@8v@F@Jpv@@I@8v@y@Fa I/ 1hLp2Q%p7pQT)4 8IyQu@I2vFRLnF>[L#^] I/Lh)p2Q%p7s1 8IX8XO @I Lvb22m I/ bh)p2Q@@@@@@@@@@@@@@@@gvn%p7p#dsyQFpy @nFpLzE@E v@ @E1 v@@O v@@ v@Q@yJXv@R@|JXv@@> IbI#@T v@@Jpv@W@X v@@ v@8n@@@@@@@@@@@@@@@@@g7FQ I/@[ v@87@JXv@]@^ v@@ v@a@b v@#@dJ1bI#L8y@% I/@F I/@&J1/@EJ/@EJ/@EJ I/@;J1/@g I/@Ck I/@Cn I/@@@@@@@@@@@@@@@@@gd;C2 I/@Cp I/@Ed I/@CX I/@s I/@hJbI#@@s8I=I@ ,vv^FF&nvCnCF^CvnFW*JbJ7k@,JbJ7m@nJbJ7/@dJbJ7/@FJbJ7/@zJbJ@@@@@@@@@@@@@@@@gg)7p@&JbJ7p@FWJbJ7p@1@)bJ72@FXJbJ72@*JbJ72@s@)bJ74@uJbJ74@v@)bJ77@FJbJ77@8@)bJ7y@zJbJ7y@;J1bJ7|@C]JbJ7=8ITgps@@@@@@@@@@@@@@@@g)Wdgp1LQ8@@@kCJ4@ @)#J4 @ #J4 @p@)#J4 @p#J4C @pC#J4C @kCJ4d>@I&F,d>@#@Lk*@ RLkT@Eb&LkT8@&4y@@@@@@@@@@@@@@@@gCC8LLk*48%*@81m @ JX1maO Qd2/ dsgh)#J4F>@I**>FJ|*,LkX@@Lk^8@d118R*yIhJX1myO s )%a J*[X)#Js)d>@IJ%bTT@@@@@@@@@@@@@@@@g4&Lkb@nb&Lkb@I,Lk&@p,Lk&@J,Lk*@>b&Lk*@ &Lkn@L&Lkn@|b&Lkn@&Lk2@4&Lk2@*&Lk4@*b&Lkv@@@@@@@@@@@@@@@@@g[41&Lk8@CQ&Lkz@2,Lk|@8b&Lk>@&LkQ@@z&LkQ@zb&LkQ@7b&LkQF@) LkQ@>&LkQJ@&LkQ@=b&LkQ@Cb&LkQ@@@@@@@@@@@@@@@@gT@Tb&LkQT@#b&LkQ@&LkQ@@RLkQ@Cb,LkQ@W@LkQ^@ b&LkQ^@X&LkQb@b&LkQb@db,LkQd@@&LkQ&@@ LkQh@b,L@@@@@@@@@@@@@@@@gkQ,8@#J X*T1nJX1mO *ads2kkCJ4]>@zhFJ%L]b,LkQ88@#* X*T1zJX1mp@ Q>JX1mO g) &skag OakI 1,#IJ kC 1@X@@@@@@@@@@@@@@@@7CakCI  )# *@h,#L@pkC k@@FX# @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Wn/@@I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F I@d@@@@@@  IJ@IQ@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g%I,,E,FO2bO&gTE&@@@@@@O2s&@F@@@@@O2bR&@C@@@@@O2b)&@@@@@@O7Q&@CC@@@@@O%Q&@CF@@@@@OQ7&@C@@@@@O7R&@E@@@@@O#T&@E@@@@@@@@@@@@@@@@@@@@g@ ##&@@@@@@@ 22&@@@@@@OTg2&@C@@@@@OTgQ&@@@@@@O&)WF@Ek[RT#%bO)2[R%RTOX#sOR)d[)%T&4sE;FO#TQg7gOQTT[XQ)2O2sQO2bQ2W%O#@@@@@@@@@@@@@@@@g )WsX)[Tg%s[&4s2yvTsXO24R[&s[)2Q%7[)2%7#O2b%[%v)TWR#Q%b[2s&bOR)4 Q Q[g4s&sT[g)&T QE&%2 Q QCOd%[%T#OR))[&%uCv[%v)@@@@@@@@@@@@@@@@g IT[%)#Od)W R[%)# RC REXQ#OQ7FF[s2s7g R R[sd@[7s%sXO)2X[%)#C IO2s7[RR2u7[2uX)2O&%[T&4sdO2bWWTII [))#%bs7s%@@@@@@@@@@@@@@@@gbd4d[uTRO#T7 F OTOEO%&TO%&gOs)[QT)d2b[QT)2W%&4) TO#TR[2Q%TC TC T C  O#2Xy)&FFO7QR[%&s2W%[#db#[#dQb W&sE  [T@@@@@@@@@@@@@@@@gmJdII F C [%v)T2 E[X#ds[#&#dsWs%sX[TR#d4#W&sdCWs%ROgyTQsQJJII&@@@@@@@@@@@@&@@@@@@@E @CC&@CFCF@&@CFCFb@@@@@@@@@@@@@@@@@g]O@@@@@@Oh4C@@FR@C@ER@CE@FF@FCR@CR@CC@@FR@CR@CER@CER@ER@CEC@FR@CFR@CR@CE@@C@@@[%)#@R@FE@R@@@@@@@@@@@@@@@@@]mER@CE@E@EER@CEER@F@CEO%T@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gIu2222222222222222222222222222p)WR%RTpppppppppppppppp,%JyFFFFFF@p@gXpFFFFEd)W@Epppppppppppppppp,,,,,,,,,,,,,,,,,,,,,,,,,,,,,a@%J@@@@@@@@@@@@@@@@g] zL*R&FFFFFFF*mL4,F8&a@m8g@u8ga@=8d@ QaL a @ a Wa@ a [RaO@ ]RaO a@Q2X yI)zJQyI**Jp;[[kp||bp@@@@@@@@@@@@@@@@g|=p=R] =p|b^@|b^=^ |^p|b =p|] pL@#XXF,CaX@,pIbk%8F7@ u IC@ 8 &LnW h%XI#k%8@,p@@@@@@@@@@@@@@@@gO[Ibk%8LIX@RIpdL@#XXFF2 I%k%8sE2| mpI IW ppR,1u2|@# psE2|@#gbRy^@TE,@#[ [Rs@ sXb@@@@@@@@@@@@@@@@g,@@QbpLzE)@]LR@ vh&T@Q1 Q/@ y8& nW J &@I* W p n@Qg1 @#Cpuu2|@#Fbuu2|@#X[@v%u,Wgmk 1/@ @@@@@@@@@@@@@@@@gE8 &znW ^W p^Ih %8zI[zy^@Q1 /@ WaJp W pIk %8h , R@ |&4@Qgn@#b8u2|@#gb*y^@1b[&4nm ^%W p I@@@@@@@@@@@@@@@@gC [&W p dIX [g@ 8@%2@Q,a d@#]y^@QzQ)/@ 8 gnW pv@^4/W[ F,R[;pO I@4 R@ 8 gbnW %XIp %8CbIb]y^@Q1O@@@@@@@@@@@@@@@@g)I/@ 2F@ vgJnW ^dsW > E &%OOCIa%[OORI)nmm/@ v@g&nW T@# aa)u,@#bpy2|@#;[F]4  Is %8F4,p@@@@@@@@@@@@@@@@gF XIn %87@ u g@nW |RmW pE1k@ 28> *I%@[TzW p^In %8FF>pI> %8=%2|@#Fbhu2|@#bW C8mR= @)hRn@@@@@@@@@@@@@@@@gE1^@ O8R&aJ8WE8@Q)8RnE1^@ y F FFa 4WE8@Qh @%1^@ pQW &8@Q% X@Qh %1^@ R[ F>aJ*@ kQm F>aLJ@ [pp@Qp8@@@@@@@@@@@@@@@@@g Q% X@Q#XJ)@IJW X@Q/@@F *d@ [ phaIXkyW FgaJWE8@QIT yJ@ QQ FXJd@ &*h@Q&hR%@FbLWE8@Q)8EE1^@ QXR *d@@@@@@@@@@@@@@@@@g) 21 @QnpF@F *d@ QhR I&@ 11W FXI&@ [R1yW FbL WE8@Q% RpE1^@ 1)W b% R/%1^@ QpRXI&@ [RmQW FbLdWE8@Qh E@@@@@@@@@@@@@@@@g&1^@ RRaJT@ 2IW F *d@ [Rph@Q)8EE1^@ @2X@Qh JE1^@ n@ [z2,,@,IsRy*4h)y8J;ssR*2y8ILyyX>*J ,k@Q#@Q#hJ)@F @@@@@@@@@@@@@@@@g F| 2@ [R2yW F4aL*@ ^1QW  %  @QmhW%s@ n@ Xz*@Q)8EE1^@ L F ,p@ XC d2@ &X@QnpF@F *d@ 2sQm Fga @@@@@@@@@@@@@@@@g8@WE8@/%@ XvsX@Q% @Qa8R F; F;LX@ Xz*@QkRW%2v@ ^kyW CJT @sE8@ Q@C&CshOO@COshO@C^ThR  =@ OQQ =@ @@@@@@@@@@@@@@@@gC&O1Q =F@ QyQ =I@nThOR 1OshO@ =@  =@ zC4@sa X@X = @s=h@[@=p@8@s=@@]=@] =@^s=@@@@@@@@@@@@@@@@g@X@= @s=h@hs=p@ s=8@aW@@as=W@d=W@%@=WX@g=W @)=Wh@*s=Wp =W8@,@=X@@1=Xa=XX@v@@@@@@@@@@@@@@@@^=X @|s=Xh@= =Xp=X8F@Is=Js=Ls=X  @Qyh@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Wd&@@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F I@d@@@@@@  IJ@IQ@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ghI,,E,FOQRO&gTE&@@@@@@ORQ&@E@@@@@Od4#&@F@@@@@OTu&@@@@@@O#Q&@C@@@@@@O#R&@C@@@@@O#7&@C@@@@@O7Q&@CC@@@@@OQ7&@C@@@@@@@@@@@@@@@@@@@@ga;@OR7&@CE@@@@@O%Q&@CF@@@@@O7dQ&@C@@@@@OQTd&@@@@@@@O2b&@@@@@@O2b)&@@@@@@O2bR&@C@@@@@O)2#&@@@@@@#)2XCO#T&@E@@@@@O2s&@@@@@@@@@@@@@@@@@ghWF@@@@@OQT&@@@@@@O24&@E@@@@@@O77Q&@E@@@@@OgQ&@E@@@@@Og2&@EC@@@@@ )&@@@@@@@@ #T&@@E@@@@@ Q&@@@@@@ 7@Oh4F@Q&)WR@@@OR@@@@@@@@@@@@@@@@g#m)4O))O#TO#)O#O2sTO#TgO#%O#dO#TO#2O#QOTgdO7&O& ## 22OTgQOTg2O&)WEkO)2O2sQ))sO2sREFO2s7FE;O#T7FCO#TQ 7Os)E @Od)W&@@@@@@@@@@@@@@@@@gE@@@@))OR)dW))&)OX#sO#TROR))FOQ7O)8FIO)2XJEOQTTR@@@O2b%O&)R@J@#Ts&@@@CO2bQ2QuO#)JCO%&T#)#TO7QRRO2bWEL #@@@@@@@@@@@@@@@@gduTQsQ&@@@@@@@@2sTsO2T2O2&u&@E@@@@@ s7OR227)WOgyQ)WWsdgsdg#QW&@@@@@@@@E &@F@@@@@@@JO&us&@@@@@@@@b@@@F@@@@ O24@@@@@@@@@@@@@@@@gRb@@@@@@O#8[&4#&vJIJCIOQO)&u&@@@@@@@@#dR#TROR)7JIR@C&@C#Q7CF[#Qg&gE #Qy#QW#QWd&@@@#Q#QW&2sJ@@@@@@@@@@@@@@@@/C#QT#QX&#&WT&#&&@C@@@@O%&g@@C@ORQ@E@E@FO%T@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gF1u2222222222222222222222222222p)Wg&gppppppppppppppppppp,%JyFFFFFF@p@gXpFFFFEd)W@pppppppppppppppp,,,,,,,,,,,,,,,,,,,,,,,,,,,,,a@% @@@@@@@@@@@@@@@@g nbL|4^F|4>FFFFFFF*mL4,F8&a@m8g@u8ga@=8d@ QaL a @ a Wa@ a [aO@ ]aO a@Q2X 12@IQ2 I12@JQ2 J; @@@@@@@@@@@@@@@@gy Q2[  12@LQ2 L12]@ Q2]  12^@Q2^ 2R@ORR O2R@ppRJ#@d@ Q8&R@bQ1Lh#bXIs@RI& d@ Q8&^@@@@@@@@@@@@@@@@@gpubQ1 @#bI4 R@bQpRI) dT@ Q8&*@bQ1 X#b8Iv@RI, %hC@ y28Ia %4^@ Q 8&= p &^pX|d2bX^R@bXa ;&2@@@@@@@@@@@@@@@@g8>Iay @I)zmXI,zmhI]; Ia &|p@ [%gC@ QL8&|@ba ;a@ QLh&= 1yIs7,FX^WO[dk &F@b]QRF@baIh@ Qpgn@b^Od@@@@@@@@@@@@@@@@g=]W,>X^@bQ1 /#@ QOhg>@ QgC@ QO@g>@bW1@@QFIvQh@Q2Ed@^@%7@Q)*@R*@Q,X@@QLIp@ EpIX[Rb1TC@Xy@@@@@@@@@@@@@@@@gy4d|y)]|Ly,JTX4Q/X@QT@QFIL@QFTIhdap&F@m@QsX@@4,,W@%C pEbE/WgOC[&W ]%p%C@Q]X @QTI dO@@@@@@@@@@@@@@@@gvgCF @QC|Ebb %*  %*^pp%*8,%Wp7gQ4@QhIhX@QpI&@QC,E#Xz @@RJ@Q8T d@p&@ ,W@%a@d,#p^L@4p,@@@@@@@@@@@@@@@@gW@%C@QbEd]dpW%CF @QE|IXQh@Q%Edp%C@I,W@%a@Em EpIpX &Q@QTIL@QFIvQh@Q2Ed@&Q@QLIp@@@@@@@@@@@@@@@@gv@d)LkI@pT&4R#pg)2&%p#&Qs%Wpg&%spgQbQW%@yT@@%L@% &WTL@&2TL@&b2TL@&y2TL@gR2TL@gb2TL@48,W@%C@Q/X@@@@@@@@@@@@@@@@gRC@Q*@L=),,y)I8uE|E*TT|v)TQ=* @7*a@RJ@Q=*bXLsv&p)24#s2pQ)p4%%&)dQ#yTQCIdL@QLI*R%@y*vTX|E*TT|v)|@dR&g@@@@@@@@@@@@@@@@gupEI&FO%EO &W@n@EQp%[XFL@QLI @] %7 pFE[&QW bCIWO [%[[% %*)zT 7g&%%sp4%T)#&v2p&)p&u)#&v2QIv&@Qz*h@@@@@@@@@@@@@@@@gp4*Em&FOXn@E/%%]#O&QF g%Qp%[XFL@QJhI*n)@W*vTX|Eb8@|u,|I*Xv^TR,W@QJX@QIk8&u)14%T)#&vQLI @@kyL8#2pQu@@@@@@@@@@@@@@@@g )QWpQ%Tpd%d4d @[T>8u,I]v ILOI*vTX|E*TT|v)p,I*@WEmO EpIp[p&@Qb @QTI@@QE4I& Ep pX &[,EI%^W Q@@@@@@@@@@@@@@@@gzgW^^WO[C1mI1Fp] %# p]% WC%CF @QE4Ig %aF @Q@Q|@QC@X&yXE]|uELE]yy)|I%,OIy@Wan1@T%]yy)@@@@@@@@@@@@@@@@g%p|I%,Jm|4 @QvC@Qu)*Tu h@QhIgLQ)&22pg)&T4sp24dQ@4I&2@%]|uLLy,EImhuIzTv&)TQ4@Q|I& C%CF @Qh@QCIg@@@@@@@@@@@@@@@@gTXb L&@Rsgpz%WIWO[%[&[@RL*4)E a gC2@E2s2@E1Qp&uhpb^[ I%J ap%a pE&QF g%W%W RO Qp&v@ T,Ip%*h&2@,bpz@@@@@@@@@@@@@@@@gWm||I L,|%JvL8I*Xv^TQ[X@QIdL@QXIXmp&v@Q[X@ b@d>8u,]Tum EpIp[p&@Qb @Q>@T%Ly, >|@LLy,%TQb@@@@@@@@@@@@@@@@gdn1@,&yXE]|uLE]yy)|O^4gQ% @QTI@@Q IXpCp%CF @Q L@QE4IgLd&)p2W[pXQ#p&ph4&s%sQ@,@Q IXXL2W% 7s%Tp)dQ%T@@@@@@@@@@@@@@@@g&@)QE4I&  %aF @Q@Q>@TT%Ly, u^|@LLy,%Tu@]gpE)R WW^^WO[%W RO ^ %*X;T&dg%2Qsp&)p2XsQI&pp] %#@]@@@@@@@@@@@@@@@@@g[8 4@QhI& Cp%CF @Q@4I&2@%]|uLLy,EImhuIzTv&)TQz4@QFTI&pap%4 pE&QF g%W%W ROv CT@QpIkd@QpIk*%@R]IEhymdR@@@@@@@@@@@@@@@@gEaTnC@>EdugpJp%*;Xbp&)py)&n2pmgp>/]E %W RO &XhpEgaWI/ WOW^^WOIWC%&) Qp&m@QsX@@ 2@d>8u,]Tu@@@@@@@@@@@@@@@@g[mmQ EpIp[p&@Q]z#@T%|Eh4|I4v]TR*4@Q[4@Q4I*Ia@z#@T)4uF,Iy,&v]TQ[4@EJ>dpE Oa W %E]TT[z@TRR@@@@@@@@@@@@@@@@g#=L>8u,]TumR EpIp[p&@ vX &X@Q]h@QE|Ig y|ORps&p7;p@ps&pRQFI&;2W% 7s%Tp7g&%%sp|Q;RQFTI&@]d @ap%@@@@@@@@@@@@@@@@g=CF @QIv#, JQp&hpOaWIp&hp= a gm,Qp%[XF2@)dQ#@>EdWgpaW &WQ %aF @Q>@T%Ly, >|@LLy,%TugpEsI%^@@@@@@@@@@@@@@@@gyCW W^^WOC2nQ@E1* &[,EER]F%WW^^WOI#@%*h&@QIp[1Q11d1QI,J%@X|TW,L|vET8,E)*EF%%Tu4uTQg*phpEsaWI/CIWO@@@@@@@@@@@@@@@@gLaQ]&RCIa%[OC[@L%p&@Q2v#@Izd=JL)X8u=IE4Q8pRhpEEF %^WCg # F%]%b C@ pIg*LWs2spvXsX)p#Qp&)p#2QIpzLC#QQFp@@@@@@@@@@@@@@@@g|zIgz1@uh|dyEd@%* b Lp%CF @QI1@CC FdI*@@QCIXQh@RJ@1T d@C FTIdL@QFIg  p))|RXbp&)p&u)#&vQI@@@@@@@@@@@@@@@@g;s1[C82QI1h,T%&[p%&)dQ#yp)24#sQIm Cgv@Q|T,LTRk)EgIWOW^^WOQ%% Wp%*,JL#TQpvsXpdQ7|7gpT;pCIQFTIvQh@@@@@@@@@@@@@@@@@g>u@Q8T dJLQ#W%p2dQ##)pvsXp#Q)W)Q|@121|z#@Lu,| &EvEEh4h|dQb#@uh4T*#@uh|dRJ@v#@E]4vu &vLIEI*^L@@@@@@@@@@@@@@@@g y4@Qh@QCLI& Qpg@L ,b)| g)&)dpTgQ/2p74@Qh@QCI& Qpg@L^@%a pFR[%[[CIW /%%]#O&QF g%W%W RO %*m@mp&;@@@@@@@@@@@@@@@@@gaQ[X@kLg);@Qd@Q@R]IEhymdQsX@@2)1% @2R1,k @Q=*d@Q8 @X)4v]^|L%|Ly,@@@@@@@p@@@@@114Q=*4)FJ^[Ig g/C@@@@@@@@@@@@@@@@g[vIWOC[@L,L]%@%[@QsX@@asLTL@QE4IW p%C@Q]X@@QFIW p&@Em FIs]dpWg@QgTL@QE4Isp4@] %#@@@@@@@@@@@@@@@@@gJy EdXpWgQ@QgQ#@kvL@Q@4Is ^ gQ@ )#@Q]@Q|Is C%aFL@Qh@QCI4b Lg@Rs@Q%4@QpI4 Ipg@@@@@@@@@@@@@@@@@&=Qs|@QLIva@Rnb&Q4@T@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Wd=@@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F I@d@@@@@@  IJ@IQ@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gI,,E,FQ&)WR@OR)4EOQRORQOd4#OTuO#QO#RO#7O7QOQ7OR7O%QO7dQOQTdO2bO2b)O2bRO)2#O#TO2sOQTO24O77QOgQOg2O7RO2bTO77RO&)WF@@@@@@@@@@@@@@@@g8W@O)2O2sQs2bO2sR7QO#)O#TRO#2XFOd42OR))d4#CO#T72sO#TQEO)2XOT2O2bQ dTuO&)O2bdTu R@EkE;FO2s7FOdCOR)7E O7QROs))2#@@@@@@@@@@@@@@@@gWTuCORQO2b%TuTuEWTuCO24RTuFTuTuWTuTuIWTu@WTuOQTTOTg%OgyFCOQRTg%yQ77dQOd%OdTO%&g)2#Od)W)2#OX#s)@@@@@@@@@@@@@@@@7g;2#C#TdTQsQ&@@@@JEO)&uQTQTgQgQ2bT2bT&@@@@@@b@@@@@@@&@CJC&@@@@@@@@2FEO%T@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gd7u2222222222222222222222222222p)Wg&gI@pppppppppppppppp,%JyFFFFFF@p@gXpFFFFEd)W@Fpppppppppppppppp,,,,,,,,,,,,,,,,,,,,,,,,,,,,,7b@@@@@@@@@@@@@@@@@g huW zC@uW8  @2%1@Ry@L)p FTn CJWT% ,@2%7@R|@L)^ FT/CJW,% 8@2%=@R@L)p FT,@@1Q@1Q@1QX@1Q @1Qh@1Qp@@@@@@@@@@@@@@@@g]@4y]@aEI]@@uQ]X@1Q] )EI]@@u)]X@1Q]p1EI]@@uQ]X@u8@vX%@@vI^@v]X@v]X@v]X@v]X@v]X@v]X@v]X@v]X@v]X@v]X@v]X@@@@@@@@@@@@@@@@g[J@v]X@va]@Fnvy]X@1Q@yEI]@@uQ]X@7IX%@@uQ]@7^@7a]X@7)p@1Q8@7I]X@p@m|@CQ,@FE8>v u[)d@a ghnF@C R F@ gm@CQ@@@@@@@@@@@@@@@@gdu1mu@ &8nR@COm42@ )nI @@sk]R@@T n)@@ L@ )hn@C@@8 n&@ @E*7T @F^b7p@LJEsp@ @CTQm42@ and@CTQmu@ an&@C8@@@@@@@@@@@@@@@@ghT*ua[8@Fu@&vW J@ a @sh@ vsdk]R@@X@CTQm42@ ann@C8@FhbuX@LJEv@@b n)@@LJEv@h T@ C, @@uk]R@@h T@@4p@@@@@@@@@@@@@@@@gm**uam42@ ) @L4E*@E]m@Epp@b  @phW[@ *pm|@CTQmu@ an8@C  [[TQmu@ & m@C@Evk^E*7@F&@@sh@ 4p@F^b7p@LJE7@ @@@@@@@@@@@@@@@@@gOCa]*s@@z @@phW@ *@@ ^E/ @h T@ 8#@ T@@4p@F 7p@ E/ @T n,@LmE*7TX@F1@@sd>@ ghmzp @phW#@ g/@1m*pmz#@@sW@ @@@@@@@@@@@@@@@@ghdh@ g/@C  @QJQ @FX| @L4E*@)E*@@n 2@@sh@ 1dh@ h8m@W gm@C  @TJQ @FuXCJv[buX@L4E*@T)E*@@  @@@@@@@@@@@@@@@@@gT1phW%@ Eadh@ h8m@C[8@Fk7p@L7E*p@XT @8aR T@@2hk]L @2 J@@T  @sdk]L F,*EaE@@LyE*p@h T@C@aR T@@4k]L @T  @u8@@@@@@@@@@@@@@@@g [T@@sk]L @XT s@CaR T@@24k@ &@m|@CQXQ@CaQu@ ,8m@ &@m@C  @JQ @F4pb @F4bu@@ QEaE@@L4E*@@[ T@@sh@ F1dh@ @@@@@@@@@@@@@@@@g7%%m@C Qm42@ gmz@@s4T@@phW]R@@[ T@@sdk@ & m@Em@CQ1m42@ %m@C 1 @Fbu@C 1,@F&b=@ kE;@@T b&@ mE*@@@@@@@@@@@@@@@@@@gu n)@@LyE*7T @F[bu[)d@CQ^8@F^b=p@LJE1T @FEup@L*E*7T @F4u[*@CQ @FbuX@L;E, @ g@@s,n)@@L4E*@4)E*@@  @4p@F@@@@@@@@@@@@@@@@gk uX@ E;p@@  @4p@Fu@C^v8@|Tbu@@ L@ %m@CLQ@F]b>@L*E*7@F[bu[)d@CQ,@F&b=8@ L@ F7L@Fu@@>Tbu@@ ^EaE@Chvh@@@@@@@@@@@@@@@@g/gb>h@LJE1T @Fk7p@L4E*@m E*@@)E*@@, J@@| @@phW4@ Qdh@ h8mz@@2hk@ gmz@@phW%@ adh@ %m@CQXQ@; %mzd@@u@@@@@@@@@@@@@@@@g28k@ %mz@@sdk@ )hmzd@@2hWu@ gm@C1mu@ ghnF@Cm42@ mX/*@;m%/*@Cp@2 T@@44W@ %m@CQm42@ & m@QbEm@CJa,@@@@@@@@@@@@@@@@@gaLFbpb @F 7p@ E/ @z @@phWv@ kpm@CJam42@ gm|@Ca@dJQ @F#buX@LpE*p@h T@paR T@@4k@ %hmz@@sk]L @  @sh@ @@@@@@@@@@@@@@@@g /IQdh@ ) @L*E*p@b y@@s,W2@ %mz@@sdT@@sW2@ gX/d@CJamu@ gmz@@uXk]R@@z a @phW8@ ^2hk]L @n n&@LyE*p@X@Ca[@@@@@@@@@@@@@@@@R 8[[8@Fk7p@ gE*@@XT |  [ =@ #[ =  s[ >@Is[ > L W T@p/ %, dQpRpF 8O8@@%@%W@ @ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@W%k@@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F  @@ I@@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F  @@ I@@ a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F   @@ I@@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F   @@ I@@ a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F  T@b@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/850816/algol.si b/850816/algol.si new file mode 100644 index 0000000..75464e2 --- /dev/null +++ b/850816/algol.si @@ -0,0 +1,3887 @@ +****************************** +* ALGOL * +* 910/920 60-4 * +* 012016 * +****************************** + AORG 1 + WIM 2 +OBJTY EQU 016000 ALGOL OBJECT CODE TYPER +NLIT EQU 0176 NUMBER OF LITERALS +STL EQU 67 +NIMF EQU 16 NUMBER OF IMPLICIT FUNCTIONS +LIMF EQU 20 LENGTH OF IMPLICIT DECS +ZZA EQU 014000000 APOSTROPHE +ZZD EQU 061000000 DIVIDE +ZZI EQU 076000000 INVERSE DIVIDE +ZZP EQU 020000000 PLUS +ZZL EQU 035000000 LEFT BRACKET +ZZR EQU 055000000 RIGHT BRACKET +ZZSC EQU 056000000 SEMICOLON +IMAGE RES 20 +BUF DATA 050000 CONTROL WORD + DATA 02100000 LOAD ADDR WORD + RES 24 + DATA 0,0,0,0,0,0,0,0 +RAST RES 1 +CHAR RES 1 +LEN RES 1 +NAME RES 2 +CNT RES 1 +OP RES 1 +CC DATA 80 + AORG 0100 +TYY OPD 010000000 + TYPW 1,1 + MIW *0 + TOPW 1 + BRTW + BRU $-1 + BRR 0 +SKMA OPD 010600000 +SKMA SKM *0 + MIN 0 + BRR 0 +SKGA OPD 011100000 +SKGA SKG *0 + MIN 0 + BRR 0 +SKNA OPD 011400000 +SKNA SKN *0 + MIN 0 + BRR 0 +CXA OPD 011700000 + STX TT + LDA TT + BRR 0 +STZ OPD 012200000 +STZ CLR + STA *0 + BRR 0 +SS DATA 0 +COP OPD 012600000 +COP LDA 0 + STA RECUR + LDA *0 + BRM COA + BRR RECUR +RECUR DATA 0 +CAX OPD 013400000 + STA TT + LDX TT + BRR 0 +CNA OPD 013700000 + EOR =-1 + ADD =1 + BRR 0 +XMA OPD 014200000 + STA TT+1 + LDA *0 + STA TT + LDA TT+1 +XMA1 STA *0 + LDA TT + BRR 0 +ADM OPD 015100000 + STA TT + ADD *0 + BRU XMA1 +SKE OPD 015400000 + STB TT + LDB =-1 + SKM *0 + BRU SKEA2 + BRU SKEA1 +SKEA OPD 016100000 + STB TT + LDB =-1 + SKM *0 +SKEA1 MIN 0 +SKEA2 LDB TT + BRR 0 +SKR OPD 016700000 +MDE OPD 06000000 + MDE *0 + NOP FOR 920 TESTING + SKN *0 + BRR 0 + MIN 0 + BRR 0 +CLA OPD 07600175 +CLB OPD 07500175 + DATA 0 +ERR OPD 017600000 + STX ERRX + LDX 0 + STX RECUR + TYY =052000000 + LDA 0,IX2 + LSH 18 + STA ERRT + TYY ERRT + TYY =054000000 + LDA CC + STA ERRT + STZ CC + BRM GETC + TYY CHAR + MIN CC + SKR ERRT + BRU $-4 + SKR CC + LDX ERRX + BRR RECUR +ERRT RES 1 +ERRX RES 1 +TT RES 2 +GETC PZE + LDA CC + RSH 2 + CAX + LDB IMAGE,IX2 + LDA CC + SKA =2 + LSH 12 + LDA CC + SKA =1 + LSH 6 + XAB + ETR =077000000 + SKEA =074000000 + LDA =035000000 + SKEA =034000000 + LDA =055000000 + SKEA =060000000 + LDA =012000000 + STA CHAR + BRR GETC +* GETS NEXT CHAR FROM INPUT SOURCE +FETCH SKN STOPSW + BRU ENDPO + MIN CC + LDA CC + SKG HICOL MAXIMUM SIGNIFICANT CHARACTERS + BRU FETCH1 +FETCHR BRM CARD + CLR + STA SS + STA CC +FETCH1 BRM GETC + SKN KSW + BRU FETCH5 + SKEA =012000000 + BRU FETCH2 + BPT 3 + BRU $+3 + BRU FETCH3 + TYY =012000000 + SKR SS + BRU $-2 + TYY CHAR +FETCH2 MIN SS +FETCH3 ABC + LDA =4 + SKGA TMIN + BRU FETCH4 + ERR 'K' MINOR SYNTAX OVERFLOW +FETCH6 STZ KSW + STZ NOCOD + BRU FETCH +FETCH4 LDA =0 + LSH 6 LD INDEX + LDB A8 LD BASE PZE CVERT,IX2 + BRM LDCON + STA T + SKEA =BOUND + STA STOPSW + LDA TMIN + LDB A4 + BRM LDSNG + SKE =APOST2 + BRU PREC2 + LDA T + SKE =APOST + BRU SN25 + BRU PREC1 +FETCH5 SKE =ZZSC + BRU FETCH + LDA =-1 + STA KSW + STZ TMIN + STZ RMIN + BRU SYN2 +KSW DATA -1 +PREC2 SKE =APOST + BRU PREC3 + LDA TMIN + SUB =1 + LDB A4 + BRM LDSNG + SKE =APOST2 + BRU PREC5 + LDA T + SKEA =APOST + BRU SN21 + SKR TMIN + SKR RMIN + LDA =ZZA + XMA CHAR + STA T+1 + BRM STRWD + LDA T+1 + STA CHAR + BRM STRWD + BRU FETCH +PREC3 SKE =COMENT + BRU PREC4 + LDA T + SKE =SEMCOL + BRU FETCH + BRU PREC1 +PREC4 SKE =END + BRU PREC5 + LDA T + SKEA =SEMCOL + BRU PREC1 + SKEA =APOST + BRU PREC1 + SKE =BOUND + BRU FETCH + BRU PREC1 +PREC5 LDA T + SKEA =BLANK + BRU FETCH +PREC1 LDB T + BRU LW10 +STOPSW DATA -1 +* +* LD CONSTRUCT FROM BASE AND INDEX TO ACC,RJE +ZRSH LSH 8 + LSH 16 + XAB +LDCON PZE + STB T+22 + LDX =040000 + SKG =2 + BRU $+3 + SUB =3 + BRX $-3 + LDB *T+22 + CAX +EXU OPD 02300000 + EXU ZRSH,IX2 + ETR =0377 + LDX MODE + BRR LDCON +* ST CONSTRUCT INTO BASE AND INDEX FROM ACC,RJE +STCON PZE + STA T+22 + LDA P+8 + RSH 1 + CAX + LDA T+22 + STB T+22 + LDB =07777 + SKN T+22 + LSH 12 + STB T+22 + EOR *P+9 + ETR T+22 + EOR *P+9 + STA *P+9 + LDX MODE + BRR STCON +LDSNG PZE + STB T+22 + RSH 1 + CAX + LDA *T+22 + STB T+22 + SKN T+22 + RSH 12 + ETR =0377 + LDX MODE + BRR LDSNG +* COMPARES RULE IMPLIERS WITH CONSTRUCT STRING +CPARE PZE + LDX MODE + LDA RMIN,IX2 + ADD T+10 R+Q LD INDEX + STA T+12 +CP2 LDB A4,IX2 + BRM LDSNG + STA T+11 + LDA T+1 + ADD =020000000 + XAB + LDA T+9 X LD INDEX + BRM LDCON + SKE T+11 + BRR CPARE + MIN T+9 EQ + MIN T+12 + LDA T+12 + SKR T+13 + BRU CP2 +CP1 MIN CPARE + BRR CPARE +* INSERTS IMPLICAND STRING INTO CONSTRUCT STRING +MASAGE PZE + SUB =1 + STA T+2 NO. IMPLAND CONSTR -1 IS CNTR + SUB P+1 + ADD P+2 + STA DELTA P5-P2+P3-1 + SKN T+2 + BRU MS6 + LDA =-1 + ADM RAST + BRU MS5 +MS6 LDA DELTA + SKE =0 + BRU MS2 +MS3 LDA P+2 + STA P+8 ST INDEX + LDA A4,IX2 + STA P+9 ST BASE +MS1 LDA P+5 + LDB P+3 LD BASE + BRM LDCON + BRM STCON + MIN P+5 + MIN T+4 + MIN P+8 + SKR T+2 + BRU MS1 +MS5 LDA DELTA + ADD TMIN,IX2 + STA TMIN,IX2 + BRR MASAGE +MS2 LDA P+1 + SKEA P + BRU MS3 P1 EQ P2 + ADD =1 + STA T+4 LD INDEX + ADD DELTA + STA P+8 ST INDEX + LDA P + SUB T+4 + STA T+5 CNTR P1-(P2+1) + LDB A4,IX2 + STB P+9 +MS4 LDB P+9 + LDA T+4 + BRM LDSNG + BRM STCON + MIN T+4 + MIN P+8 + SKR T+5 + BRU MS4 + BRU MS3 +* FINDS MATE DEF WITHIN A RULE +RULER LDA T+1 IMPLY DICT WD + ETR =07777 + STA T+1 + LDX =-3 + LDB *T+1 +RL1 CLA + LSH 2 + STA T+9,IX2 F,G,H ARE T+6,7,8 RESPECT + BRX RL1 + LDA =2 + STA T+9 + LDA T+7 + SKG =0 + BRU RL2 G EQ 0 + CLR G GT 0 + SUB T+7 + STA T+10 Q + ADD =1 + CNA + STA T+13 + BRM CPARE + BRU RL3 +RL2 LDA T+6 + SUB T+7 + SKEA =0 + BRU RL4 F EQ G + SUB =1 + STA T+13 + LDA =1 + STA T+10 Q + BRM CPARE + BRU RL3 NO GOOD +RL4 LDX MODE + LDA TMIN,IX2 T + STA P + LDA RMIN,IX2 + ADD T+6 + SUB T+7 + STA P+1 R+F-G + SUB T+6 + STA P+2 R-G + LDA T+6 + ADD =2 + STA P+5 + LDA T+1 + ADD A3 + STA P+3 + LDA A1,IX2 + STA P+4 + LDA T+8 + BRM MASAGE + LDA RMIN,IX2 + SUB T+7 + STA RMIN,IX2 R=R-G +RL5 LDA *T+1 + RSH 8 + ETR =01777 + ADD SEM,IX2 + STA T+1 + CLR + LDA =-1 + BRU *T+1 RCVRY PT +RL3 LDA T+6 + ADD T+8 + MIN T+1 +RL6 MIN T+1 + SUB =3 + SKG =1 + BRU RULER+3 + BRU RL6 +* CORRESPONDENCE BETWEEN PRIMITIVES AND CONSTRUCTS +CON FORM 8,8,8 +CVERT CON DGT,DGT,DGT + CON DGT,DGT,DGT + CON DGT,DGT,DGT + CON DGT,BLANK,EQUAL + CON APOST,COLON,RPT + CON ILLEG,AOP,LTR + CON LTR,LTR,LTR + CON LTR,LTR,LTR + CON LTR,LTR,BLANK + CON PT,ILLEG,LPAREN + CON LPT,BOUND,AOP + CON LTR,LTR,LTR + CON LTR,LTR,LTR + CON LTR,LTR,LTR + CON BLANK,ILLEG,AST + CON RPAREN,SEMCOL,TEN + CON ILLEG,MOP,LTR + CON LTR,LTR,LTR + CON LTR,LTR,LTR + CON LTR,BLANK,COMMA + CON ILLEG,ILLEG,MOP + CON BLANK,0,0 +M EQU $ +SM LDX MODE +LW102 EQU SM +DEF LDA A1,IX2 + STA D + LDA RMIN,IX2 + STA RAST + LDB A4,IX2 + BRM LDSNG + SUB =3 + SUB MODE + SKG =-1 + BRU DF8 + SKGA SIZE,IX2 + BRU DF8 + CAX + LDA *D + BRU DF2 +DF4 STA RAST + LDB A4,IX2 + BRM LDSNG + CLB + LSH 12 + STA T+1 CONSTR IN B2-9 + LDX =0 + LDB =07770000 +DF1 LDA *D + SKM T+1 + BRU $+2 + BRU DF2 + MIN D + SKG =-1 + BRU $+2 + BRU DF1 + LDX MODE +DF8 MIN RMIN,IX2 + LDA RMIN,IX2 + SKG TMIN,IX2 + BRU DEF R LE T +DF7 BRU $+1,IX2 + BRU FETCH + LDX =0 + STX MODE + BRU DEF +DF2 STA T+1 IMPLY DICT WD + RSH 21 + ETR =3 + ADD A2 + STA $+2 + LDX MODE + BRU +DF6 BRU DF3 + BRU DF5 1 - IMPLAND ADDR + BRU RULER 2 - RULE + LDA TMIN,IX2 3 - RULEF + SKG RMIN,IX2 + BRU DF7 + BRU RULER +DF3 LDA T+1 + ETR =07777 + STA D + LDA RAST + SUB =1 + BRU DF4 +DF5 LDA TMIN,IX2 + STA P + LDA RMIN,IX2 + STA P+1 + LDA RAST + STA P+2 + LDA T+1 + ETR =07777 + STA T+1 + STA P+3 + LDA A1,IX2 + STA P+4 + LDB *P+3 + LDA =020000000 + ADM P+3 + LDA =2 + STA P+5 + LDA =0 + LSH 6 + BRM MASAGE + LDA RAST + STA RMIN,IX2 + BRU RL5 +SM1 LDA =2 + STA TYPES + BRU SM +SM2 LDA =3 + BRU SM1+1 +SM3 LDA =1 + BRU SM1+1 +SM17 LDA =01600 OPARY + STA *SK + BRU SM +SM64 STZ NDIM + SKN STYPE + MIN NDIM + LDA =1 + STA TOT + BRU SM +SM68 CLR + STA DECST + STA STYPE + STA NDIM + LDA =1 + STA TOT + BRU SM +SM133 LDA =8 + BRU R2D2+1 +SM134 LDA =9 + BRU R2D2+1 +SM135 LDA *BCTAB + RSH 9 + ETR =0777 + CAX + LDA BASEA-1,IX2 + LDB =00600000 + SKMA =0 + BRU SM135A + ETR =077777 + ADD =060100000 + STA WORDS + ABC + BRM MOVE +SM135A MIN NDB6 + BRU ENDBLK +SM22 STZ PARA + BRU SM +SM117 CLR + STA STYPE + BRU SM1+1 +SM137 LDA *SK + SKE CW+14 - CW + BRU $+4 + LDA CW+28 + STA *SK + BRU SM + SKNA NOCOD + SKR SK + BRU SM +R1D1 ADD RMIN+1 + LDB A4+1 + BRM LDSNG + CLB + SKEA =BLKHD + STB TEMPT + BRU SM +R1D2 STB DECSW + BRU SM +SIGN DATA 0 +FRACP PZE + LDA NUMB + STA FRAC + LDA ND + STA EXP + BRR FRACP +R2D2 LDA =1 + STA KIND + BRU SM +R2D4 STA DECST + LDA TYPES + STA SWIND +R2D5 STB NENT + LDA =2 +R2D5A STA KIND + BRM DUP + LDA KIND + BRM ADST + BRU SM +R2D6A MIN NENT + BRU R2D5+1 +R2D6 LDA =3 + BRU R2D2+1 +R2D8 STB TYPES +R2D7 STZ LA + LDA =5 + BRU R2D5A +XNAM PZE + STB T+10 + LDB =060606060 + STB BUF+2 + LDB =BUF+1 + BRM MOVNAM + LDA =010450000 + STA BUF + LDA T+10 + ETR =077777 + ADD =020100000 + BRR XNAM +R2D9A LDA =4 + BRM ADST + LDA *A15B + LDB BASEA,IX2 + BRM XNAM + ADD =020000000 + STA BUF+3 + BRM SEND + BRU R2D9B +R2D9 LDA MAD + STA LA + LDA =4 + BRM ADST +R2D9B LDA =-1 + STA DECSW + STA PROCSW + STA NENT + CLR + LDA =3 + SUB TYPES + LSH 21 + ADD =04100000 + STA WORDS + CLR + BRM MOVE + BRU BEGBLK+1 +R2D10 CLR + STA NENT + ADD =WORDS + STA T+20 + BRM BLKAD + ADD =020000000 + STA *T+20 + LDA MAD + ADD NENT + STA LA + LDA =1 + STA PARA + STA TYPES + MIN TYPES + BRM ADST + MIN NDAD + BRU SM +R2D11 LDA NENT + ADD =1 + BRU R2D10+1 +R2D12 BRM STSCH + SKA =040000000 + BRU R2D12A + LDA =01000000 + ADD BASEA,IX2 + STA BASEA,IX2 + ETR =077777 + SUB MAD + CAX + LDA =020000000 + ADM WORDS,IX2 + BRU SM +R2D12A ERR 'C' VALUE BUT NO PARAMETER + BRU SM +R2D1 LDA =1 + STA KIND +R2D14 BRM STSCH + SKA =040000000 + BRU R2D12A + CLR + LDA KIND + LSH 4 + ADD TYPES + LSH 16 + STA T+21 + LDA BASEA,IX2 + ETR =03177777 + ADD T+21 + STA BASEA,IX2 + LDB =077000000 + SKMA =012000000 KIND=ARIDT,PARA=CBV + MIN NDAD + ETR =077777 + SUB MAD + CAX + CLR + LDA =3 + SUB TYPES + LSH 4 + ADD KIND + LSH 15 + ADM WORDS,IX2 + BRU SM +R4D1 STB TYPES +R4D2 LDA =4 + BRU R2D2+1 +R4D4 STB TYPES + BRU SM +R5D1 LDA =2 + STA TYPES +R5D3 LDA =2 + BRU R2D2+1 +R5D2 STA STYPE + BRU SM +R5D5 STA STYPE + LDA =2 + STA TYPES + BRU SM +R5D6 LDA =2 + STA TYPES +R5D4 MIN NDIM + BRU SM +R7D2 STA STYPE + BRU VAR +R7D4 LDA =9 + BRU MODB +R11D14 LDA =11 + BRU MODB +R26D4 LDA CW LBRACK + STA *SK + LDA =13 + BRU MODB +R8D2 LDB CW+37 + LDA *SJ + SKEA IO + BRU R8D2A + COP BCJM0 + LDB CW+30 PROC OP +R8D2A STB *SK + LDB RAND + SKNA NEST + STB INDEX + MIN NEST + BRU SM +NEST DATA -1 +INDEX DATA 0 +R10D2 LDA SJ + SUB A12 + STA PTR + BRU SM +SYND ERR 'D' 'DO' SYNTAX ERROR + BRU SYN1 +SYNS ERR 'E' STATEMENT SYNTAX ERROR + BRU SYN1 +SYN ERR 'M' SEMICOLON SYNTAX ERROR +SYN1 SKR RMIN+1 +SYN2 LDA RMIN+1 + STA TMIN+1 + LDB A4+1 + BRM LDSNG + SKGA =SPECAL + BRU SYN1 + LDA A12 + ADD =7 + STA SJ + LDA A11 + STA SK + STZ NOCOD + BRU SM +R29D1 STZ RSULT + BRU SM +R39D1 STA SCSW +R39D2 BRU ENDPRG +R40D1 SKNA NOCOD + SKR SJ + BRU SM +* PROC CALL CODE GENERATOR +OPPROC BRM SAVE + COP PJM0 + LDA *SJ + LDB =074000000 + SKMA =020000000 + BRU OPPR3 + SKM =024000000 +OPPR2 SKR SJ +OPPR3 LDA OP + SKE CW+12 RPAREN OP + BRU TSEX + LDA *SJ + SKE IO + COP ECJM0 + LDB INDEX + LDA =-1 + ADM NEST + SKNA NEST + STB RAND + ADM SK + LDA *SJ + LDB =00600000 + SKMA =0 + BRU OPPR1 + BRM RST + BRU TSEX +OPPR1 SKR SJ + BRU TSEX +OPIO BRM SAVE + COP IOJM0 + BRU OPPR2 +* STATIC ARRAY DECLARATION OPERATOR +OPARY MIN NDIM + LDX NDIM + LDA NUMB + STA WORDS,IX2 + LDA OP + SKEA CW+27 + BRU TSEX + LDA WORDS-1,IX2 + SKGA WORDS,IX2 + ERR 'F' ILLEGAL ARRAY BOUND + LDA WORDS-1,IX2 + SUB WORDS,IX2 + SUB =1 + CAX + CLR + ADD TOT + BRX $-1 + STA TOT + LDA OP + SKE CW+12 + BRU TSEX + CLR + LDA SWIND HAS TYPES + SKE =1 + BRU OPAR6 + XMA TOT BOOLEAN +OPAR7 SUB =24 + SKG =0 + BRU OPAR2 + MIN TOT + BRU OPAR7 +OPAR6 SKE =2 + BRU OPAR2 +OPAR1 LDA TOT + LSH 1 +OPAR3 STA TOT +OPAR2 LDA NABADD + SUB NENT + SUB =1 + CAX + LDA BASEA,IX2 + ETR =077700000 + ADD MAD + STA BASEA,IX2 + CLR + LDA =3 + SUB SWIND + LSH 5 + ADD NDIM + LSH 14 + ETR =077700000 + SKN STYPE + BRU OPAR4 + ADD MAD + ADD =1 + STA WORDS + LDA NDIM + LDB =040000000 + BRM MOVE + BRM CODOUT + LDA TOT + ADM MAD +OPAR5 SKR NENT + BRU OPAR2 + SKR SK + BRU TSEX +OPAR4 ADD NDAD + ADD =010000000 + STA WORDS + BRM BLKAD + STA WORDS+1 + LDA TOT + ADM NDAD + LDA NDIM + LDB =020000000 + BRM MOVE + BRU OPAR5 +TOT DATA 1 +DUP PZE + LDA =-1 + BRM STSCH + SKE =-1 + ERR 'G' DUPLICATE USE OF IDENTIFIER + BRR DUP +* CHANGES CONSTRUCT FROM KIND -LAST DEF OF IDT RULE +MODA CLR + BRM STSCH + SKA =040000000 + BRU LABREF + STA RAND + LDA BASEA,IX2 + LDB =074000000 + SKMA =024000000 XPRIDT + BRU MODA2 + SKM =034000000 + BRU MODA1 + LDA RAND + ADD =1 + BRU LBRF1 +MODA2 ETR =077700000 + ADD =BASEA + ADD RAND +MODA1 SKNA NOCOD + MIN SJ + STA *SJ + SKA =01000000 + BRM FFDZ + LDA *SJ + SKA =020000000 PRIDT + BRU MODA4 +MODA5 LDX RAND + CLR + LDB BASEA,IX2 + LSH 4 +MODA3 CAX + LDB TAB1,IX2 + LDX MODE + LDA RMIN+1 + BRU LW14+1 +MODA4 LDA TMIN+1 + LDB A4+1 + BRM LDSNG + SKEA =ASSIGN + BRU MODA5 + BRM FFDZ + LDA TMIN + LDB A4 + BRM LDSNG + SKEA =LPAREN + BRU MODA5 + COP BCJM0 + COP ECJM0 + LDA *SJ + SKA =00600000 + BRU MODA6 + SKNA NOCOD + SKR SJ + BRU MODA5 +MODA6 BRM RST + BRU MODA5 +* CHANGES CONSTRUCT FROM TYPE +MODB LDX RAND + LDB BASEA,IX2 + STA T+1 + LSH 7 GET MSB OF TYPE + ETR =1 + ADD T+1 + BRU MODA3 +* ENTERS VARIABLES INTO S-T,BUILDS DESCRIPTORS +VAR LDA MAD + STA LA + BRM DUP + LDA =1 SIMP VAR IDT + BRM ADST + CLR + SKN STYPE + BRU VAR4 NON-OWN + LDX TYPES + BRU $,IX2 + BRU VAR1 BOOLEAN + BRU VAR2 REAL + LDB =060000000 INTEGER +VAR3 STB WORDS + CLB + BRM MOVE + BRU SM +VAR1 LDB =010000000 + BRU VAR3 +VAR2 ADD =1 + BRU VAR3 +VAR4 LDA =7 + SUB TYPES + LSH 19 + ADD NDAD + STA WORDS + MIN NDAD + LDB =06000000 + SKMA =02000000 + MIN NDAD + BRM BLKAD + LDB =020000000 + STA WORDS+1 + LDA =1 + BRU VAR3+2 +* GETS ADDRESS OF BB COMMAND FOR DESCRIPTORS +BLKAD PZE + LDA BLKPAR + SUB =5 + STA $+1 + LDA + ETR =077777 + BRR BLKAD +N EQU $ +* LABEL DEFINITION POINTS +LABDEF BRM ADBLNK + SKN PROCSW + BRU LBDF3 + LDA NENT + STA PROCSW + LDB =-1 + BRM MOVE +LBDF3 LDA =-1 + BRM STSCH SRCH THIS BLOCK ONLY + SKG =-1 + BRU LBDF1 + LDA BASEA,IX2 + ETR =074000000 + SKE =034000000 UNCLAB + ERR 'G' DUPLICATE USE OF IDENTIFIER + LDA MAD LA=MAD + ADD =040000000 KIND=LABEL + XMA BASEA,IX2 + BRM INTOUT +LBDF2 LDB =LBLSL + BRU LW9 +LBDF1 LDA MAD + STA LA + LDA =8 + BRM ADST + BRU LBDF2 +LABREF STZ LA + LDA =7 + BRM ADST + LDA NABADD +LBRF1 ADD =BASEA-1+034000000 + SKNA NOCOD + MIN SJ + STA *SJ + BRU SM +SWIT LDA MAD + STA POSADD + STZ LA + STZ NENT + LDA =0400 + STA *SK + LDA =-1 + STA DECSW + LDA NABADD + STA SWIND + BRM DUP + LDA =3 + BRM ADST + BRU SM +* PUTS NEW ENTRY INTO SYMBOL TABLE +ADST PZE + CLB + LSH 2 + ADD PARA + LSH 2 + ADD TYPES + LSH 1 + SKNA STYPE + ADD =1 + LSH 15 + ADD LA +ADS1 LDX NABADD + STA BASEA,IX2 A PART + LDA LEN + LSH 15 + ADD A16 BASEC-1 + ADD NCADD + STA *A15B B PART + MIN NABADD + ADD =1 + STA T+17 + LDB T+17 + ETR =077700000 + ADD =NAME-1 + BRM MOVNAM + LDA LEN + RSH 2 + ADD =1 + ADM NCADD + LDA NABADD + SKG A15L + BRR ADST + ERR 'H' SYMBOL TABLE OVERFLOW + BRU WAIT +* NAME MOVER: A=LEN,'FROM' ADDR.-1; B='TO' ADDR. +MOVNAM PZE + STA T+17 + STB T+18 + RSH 17 + STA T+19 +MVN1 MIN T+17 + LDA *T+17 + STA *T+18 + MIN T+18 + SKR T+19 + BRU MVN1 + BRR MOVNAM +* S-T SEARCH A=0 IS ALL ON INPUT +STSCH PZE + CLB + SKA =-1 + LDB *BCTAB THIS BLOCK ONLY + LSH 15 + ETR =00000777 + STA T END ENTRY + LDA NABADD + SUB =1 +STS1 CAX + ADD =1 + SKG T + BRU STS4 DONE - NON-EXIST + CLR + LDB *A15B + LSH 9 + SKE LEN + BRU STS3 + RSH 2 + STA T+1 + LDA *A15B + ETR =077777 + ADD =1 + STA T+23 + LDA A10 SKE NAME + STA STS2+1 +STS2 LDA *T+23 + SKE NAME + BRU STS3 + MIN T+23 + MIN STS2+1 + SKR T+1 + BRU STS2 + CXA + BRR STSCH EXIT WITH ENTRY NO. +STS3 CXA + SUB =1 + BRU STS1 +STS4 LDA =-1 EXIT WITH NON-EXIST FLAG + BRR STSCH +* BLOCK PUSH-DOWN MAINTENANCE +BEGBLK COP BBNA + CLR + STA WORDS + STA WORDS+1 + STA WORDS+2 + LDA =2 + BRM MOVE + MIN BCTAB + CLR + ADD NABADD NEXT AVAIL ABADD + LSH 9 + ADD NCADD NEXT AVAIL CADD + STA *BCTAB + MIN BLKPAR + LDA MAD + ADD =020100000 + SUB =4 + LDB =2 + LDX =-2 + STA *BLKPAR +BEGB1 ADD =1 + XAB + ADM BLKPAR + XAB + STA *BLKPAR + BRX BEGB1 + MIN BLKPAR + MIN MTEMP + MIN DNSP + LDA NDAD + STA *DNSP + STZ *MTEMP CLEAR MAX TEMP USAGE, THIS BLOCK + STZ NDAD + BRU SM +* PERFORM END-OF-BLOCK OPERATIONS +ENDBLK LDA =040000000 + ADD NDAD + STA *BLKPAR + LDA *DNSP + STA NDAD + LDA BLKPAR + SUB =2 + STA T+22 + LDA MAD + ADD =040100000 + STA *T+22 + LDA *MTEMP + LSH 16 + ETR =077600000 +NDB6 ADD EBNA + BRM COA + SKR MTEMP + BRM CODOUT + LDA BLKPAR + ETR =077777 + ADD =02677772 + LDB =040750000 + STB BUF + LDB =BUF+1 + BRM MOVNAM + BRM SEND + LDA =-6 + ADM BLKPAR + LDA NABADD + ADD A15 LDA BASEA,IX2 + STA T+15 + ADD A15L + STA T+16 + LDA *BCTAB + RSH 9 + ETR =0777 + XMA NABADD + SUB NABADD + CNA + CAX + LDA *BCTAB + ETR =0777 + STA NCADD + SKR BCTAB + SKR DNSP +NDB2 LDB =074000000 + LDA *T+15 + SKMA =034000000 UNENCLAB + BRU NDB3 + SKM =024000000 XPRIDT + BRU NDB5 + LDB =077777 + SKMA =0 + BRU NDB5 + LDA *T+16 + LDB *T+15 + BRM XNAM + STA BUF+3 + BRM SEND +NDB5 BRX NDB2 + LDA NDB7 + STA NDB6 + BRU SM +NDB7 ADD EBNA +NDB3 LDA *T+16 + LDB =NAME + BRM MOVNAM + LDA *T+16 + RSH 15 + STA LEN + STX T+20 + LDA =-1 + BRM STSCH + SKA =040000000 + BRU NDB4 NONE FOUND + LDA BASEA,IX2 + LDB =074000000 + SKM =040000000 LABEL + BRU NDB4 + ETR =077777 + STA T+19 + BRM CODOUT + LDX T+20 + LDB *T+15 + STB T+18 + LDB =NDB8-1 + STB INTOUT + LDA T+19 + BRU INT1 +NDB4 LDA =NDB8-1 + STA ADST + LDX T+20 + CLR + LDA *T+15 + BRU ADS1 +NDB8 LDX T+20 + BRU NDB5 +* SWITCH DECLARATION OPERATOR +OPSW MIN NENT + LDA NENT + ADD =2 + CAX + LDA POSADD + STA WORDS,IX2 + BRM GOSW + LDA OP + SKE CW+8 SEMCOL + BRU OPSW1 + LDA MAD + ADD =0100001 DESCR 0, T=0,N=1,ADDR=MAD + STA WORDS + LDA =1 LOB + STA WORDS+1 + LDA NENT UPB + STA WORDS+2 + LDX SWIND + LDA MAD + ADM BASEA,IX2 + LDA NENT + ADD =2 + LDB =047777777 RELOC INFO + BRM MOVE + SKR SK + STZ DECSW + BRU TSEX +OPSW1 LDA MAD + STA POSADD + BRU TSEX +OPGO BRM GOSW + SKR SK + BRU TS2 +* GOTO,SWITCH COMMON GENERATION +GOSW PZE + CLR + LDA ITESW + STB ITESW + SKA =-1 + BRR GOSW + LDA *SJ + ETR =074000000 + SKEA =040000000 LABEL + BRU GOSW1 + SKEA =034000000 UNCLAB + BRU GOSW1 + BRM GOSS +GOSW2 ADM SJ + BRR GOSW +GOSW1 COP UJJM0 + LDA =-1 + BRU GOSW2 +* ELSE OPERATOR +OPELS LDA *SJ + SKEA SJ + BRU OPELS7 + ETR =074000000 + SKEA =060000000 FR + BRU OPELS5 + SKEA =040000000 + BRU OPELS3 LABEL + SKEA =034000000 + BRU OPELS3 UNENCLAB + LDA SJ + SUB =1 + STA $+1 + LDA + ETR =074000000 + SKEA =014000000 + BRU OPELS1 SWIDT + LDA RSULT + SKEA =0 + COP LDJM0 + LDA =-1 + BRM RECFR + LDB *SJ + SKR SJ + STB *SJ + BRM RST + BRU OPELS2 +OPELS1 BRM GOSS SJ-1 = SWIDT +OPELS4 LDA =-1 + ADD SK + STA $+1 + LDA + SKEA CW+6 SW OPERATOR + BRU $+3 + SKE CW+7 GOTO OPERATOR + BRU $+3 + LDA =1 + STA ITESW +OPELS6 SKR SJ +OPELS2 SKR SK + BRU TS2 +OPELS3 COP UJJM0 + BRU OPELS4 +OPELS5 CLR + BRM RECFR + BRU OPELS6 +OPELS7 MIN SJ + BRU OPELS4 +* OUTPUTS GO SJ-1,SSSJ-0 +GOSS PZE + BRM SAVE + COP UJJM1 + COP SSJM0 + LDA =-1 + ADM SJ + BRR GOSS +* THEN OPERATOR +OPTH LDA *SJ + ETR =074000000 + SKEA =060000000 + BRU OPTH3 FR + SKEA =040000000 + BRU OPTH8 LABEL + SKEA =034000000 + BRU OPTH8 UNENCLAB + LDA SJ + SUB =1 + STA $+1 + LDA + ETR =074000000 + SKEA =014000000 + BRU OPTH6 SWIDT + BRM FINDR + SKA =040000000 + BRU OPTH1 NO RESULT + STZ RSULT + BRU OPTH2 +OPTH1 COP LDJM0 +OPTH2 CLR + BRM SETFR SJ-0 + COP UJJM0 + LDA =-1 + BRM RECFR SJ-1 + LDA SJ + SUB =1 + STA T+18 + LDA *SJ + STA *T+18 +OPTH7 LDA OP + SKE CW+5 ELSE (OP) OPERATOR + BRU OPTH5 + LDA CW+4 ELSE (STACK) OPERATOR + STA *SK + LDA =-1 +OPTH4 ADM SJ + BRU TSEX +OPTH3 LDA OP + SKE CW+5 ELSE + BRU $+3 + MIN SJ + BRU OPTH2 + CLR + BRM RECFR +OPTH5 SKR SK + SKR SJ + BRU TS2 +OPTH6 BRM GOSS SJ-1 = SWIDT +OPTH9 BRM RECFR SJ-1 + SKR SJ + BRU OPTH7 +OPTH8 COP UJJM0 + LDA =-1 + BRU OPTH9 +* IF OPERATOR +OPIF LDA RSULT + SKEA =0 + COP LDJM0 + CLR + STA RSULT + BRM SETFR + COP JFJM0 + LDA CW+2 THEN + STA *SK + BRU TSEX +* ASSIGNMENT OPERATOR CODE GENERATOR +OPASS LDA RSULT + SKEA =0 + COP LDJM0 + SKR SJ + LDA *SJ + LDB =074000000 + SKM =020000000 INT PRIDT + BRU OPAS3 + ETR =077777 + ADD =060400000 + STA WORDS + ABC + BRM MOVE + BRU $+2 +OPAS3 COP STJM0 + SKR SK + LDA *SK + SKE CW+1 ASSIGN + BRU OPAS1 + LDA SJ + SUB A12 LDA SJ +OPAS2 STA RSULT + BRU TS2 +OPAS1 SKE CW+31 PHI OP + SKR SJ + CLR + BRU OPAS2 +* GETS INCREMENT OF RESULT,IF ANY,RELATIVE TO NORMAL SJ +FINDR PZE + LDA SJ + SUB RSULT + SKEA SJ + CLR + SUB A12 LDA SJ + BRR FINDR +SAVE PZE + LDA RSULT + SKGA =0 + COP STT + BRR SAVE +XCH PZE + LDA SJ + ADD =-1 + STA T+18 + LDA *T+18 + XMA *SJ + STA *T+18 + BRR XCH +* FOR STMT CODE GENERATOR +OPFOR LDA OP + SKE CW+33 WHILE OP + BRU OPF1 + LDA =1 +OPF3 STA TELE + BRU TSEX +OPF1 SKE CW+34 UNTIL OP + BRU OPF2 + BRM SAVE + BRU TSEX +OPF2 SKE CW+35 STEP OP + BRU OPF4 + LDA MAD + STA BR + LDA =2 + BRU OPF3 +OPF4 LDA TELE + SKE =1 WH + BRU OPF5 + BRM SAVE + COP WHJM0 + BRU OPF6 +OPF5 SKE =2 STEP-UNTIL + BRU OPF13 + BRM SAVE + COP SUJM0 + SKR SJ + COP PZJMO +OPF6 SKN FEFSW + BRU OPF7 + SKR SJ + BRM XCH + BRU OPF8 +OPF7 LDA =-1 + STA FEFSW + LDA =0 + BRM SETFR +OPF8 LDA TELE + SKEA =0 + BRU OPF9 + COP JPJM0 + LDA BR + ADD =04000000 + STA WORDS + CLR + LDB =-1 + BRM MOVE + BRU OPF11 +OPF9 COP SPLJM0 + COP DEALNA +OPF11 STZ TELE + LDA OP + SKE CW+36 DO + BRU OPF12 + LDA =-1 + BRM SETFR + COP JPJM1 + LDA =0 + BRM RECFR + SKR SJ + LDA CW+32 PHI R OP +OPF14 STA *SK + BRU TSEX +OPF12 COP ALJM2 + BRM XCH + LDA MAD + STA BR + MIN SK + LDA CW+1 ASSIGN + BRU OPF14 +OPF13 MIN SJ + BRU OPF6 +OPFRR SKN NOCOD + BRU TS2 + LDA =-1 + BRM RECFR + COP EFBNA + LDA =0 + BRM RECFR + LDA =-2 + ADM SJ + SKR SK + BRU TS2 +* UNARY OPERATOR CODE GENERATOR +OPUN SKN DECST + BRU OPU4 + CLR NEG ARRAY BOUND + SUB NUMB + STA NUMB + BRU OPU3 +OPU4 BRM FINDR + SKA =040000000 + BRU OPU1 NO RESULT LEFT + SKG =0 + BRU OPU2 + COP STT +OPU1 COP LDNJM0 + BRM RST +OPU3 SKR SK + BRU TS2 +OPU2 COP NEG + BRU OPU3 +* BINARY OPERATOR CODE GENERATOR +OPBIN LDA *SK + SKE CW+26 ** + BRU OPB6 + BRM SAVE + LDA =XPON+024400000 + MIN SJ + STA *SJ + COP BCJM0 + COP PJM2 + COP PJM1 + COP ECJM0 + SKR SJ + BRU OPB3 +OPB6 BRM FINDR + SKA =040000000 + BRU OPB4 NO RESULT LEFT + SKG =1 + BRU OPB1 + COP STT + BRU OPB4 +OPB1 SKG =0 + BRU OPB2 +OPB5 COP OPJM0 + BRU OPB3 +OPB2 COP OPIJM1 +OPB3 SKR SJ + BRM RST + SKR SK + BRU TS2 +OPB4 COP LDJM1 + BRU OPB5 +* CHECK NAME WITH LEXICON - INT FCNS +LWCHK LDA A7 + STA T+13 + STZ CNT +LW3 CAX + LDB *T+13 + LSH 4 + STA T+15 + RSH 2 + ADD =1 + STA T+14 NO. NAME WDS + LDA T+15 LEX WD LEN + SKE LEN + BRU LW2 + LDA T+14 +LW1 CAX + LDA *T+13 + SKE NAME-1,IX2 + BRU LW4 + CXA + SUB =1 + SKEA =0 + BRU LW5 + BRU LW1 +LW2 SKGA LEN +LW6 BRU LW16 NON-LEXICON IN QUOTES +LW4 MIN CNT + LDA =29 + SKG CNT + BRU LW6 + LDA T+14 + ADD =1 + ADM T+13 + CLR + BRU LW3 +LW5 CAX + LDB *T+13 + LSH 7 + ETR =7 + ADD A24 BRU LW7 + STA LW7-1 + CLA + LSH 5 + CAX + LSH 12 + ETR =07777 + XAB + BRU +LW7 BRU LW8 + BRU LW9 + BRU LW10 + BRU LW11 + BRU LW12 TRUE + BRU LW13 FALSE + SKNA NOCOD + MIN SJ + CLR + STA FEFSW + BRM SETFR + COP ALJM0 + LDA MAD + STA BR + LDX =3 + LDB =FOR + BRU LW11 +LW8 LDA OPTAB,IX2 + STA OP + STB T+13 + BRM TS +LW15 LDB T+13 +LW9 LDX =1 + STX MODE + MIN TMIN,IX2 +LW14 LDA TMIN,IX2 + STA P+8 + LDA A4,IX2 + STA P+9 + XAB + BRM STCON +SN BRU LW102 +LW10 LDX =0 + BRU LW9+1 +LW11 LDA OPTAB,IX2 + SKNA NOCOD + MIN SK + STA *SK + BRU LW9 +LW12 LDA =1 + STB T+13 + STA LA + LDA =1 + STA TYPES + BRM SETK + BRU LW9-1 +LW13 LDA =0 + BRU LW12+1 +LW16 ERR 'J' NON-LEXICON IN QUOTES + BRU FETCH6 +ADNM PZE + STX T+10 + LDA LEN + SKEA =7 + BRR ADNM + ADD =1 + STA LEN + RSH 2 + CAX + CLA + LSH 2 + ADD =ADNMT + STA T+21 + LDA CHAR + CLB + EXU *T+21 + ADD NAME,IX2 +ADN1 STA NAME,IX2 + LDX MODE + BRR ADNM +ADNMT BRU ADN1 + RCY 6 + RCY 12 + RCY 18 +SN1 LDA =-1 + STA LEN + BRM ADNM + BRU FETCH +SN2 LDA =1 + STA ND + CLR + LDB CHAR + LSH 6 + STA NUMB + BRU FETCH +SN3 LDB =APRI + BRU LW9 +SN4 LDB =IDT + BRU LW9 +SN5 LDA CW+8 + LDB =SEMCOL + BRU LW8+1 +SN6 LDA CW+9 + LDB =END + BRU LW8+1 +SN7 LDA CW+10 + LDB =COMMA + BRU LW8+1 +SN8 LDA CW+11 + LDB =LPAREN + BRU LW11+1 +SN9 LDA CW+12 + LDB =RPAREN + BRU LW8+1 +SN12 LDB CW+13 + LDA CHAR + SKE =ZZP + LDB CW+14 - CW + XAB + LDB =AOP + BRU LW8+1 +SN13 LDA CW+27 + LDB =COLONE + BRU LW8+1 +SN14 LDB =ROPE + BRU LW8+2 +SN15 LDB CW+15 + LDA CHAR + SKEA =ZZD + BRU SN15A + LDB CW+16 \ CW + SKE =ZZI + LDB CW+17 * CW +SN15A XAB + LDB =MOPE + BRU LW8+1 +SN16 LDA CW+5 + LDB =ELSE + BRU LW8+1 +SN27 BRM ADBLNK + LDA =IDT + MIN TMIN+1 + LDB TMIN+1 + STB P+8 + LDB A4+1 + STB P+9 + BRM STCON +SN27A LDA CW+1 + LDB =ASSIGN + BRU LW11+1 +SN28 LDA CW+18 + LDB =EQUIV + BRU LW8+1 +SN29 LDA CW+19 + STA OP + BRU LW102 +SN30 LDA CW+20 + BRU SN29+1 +SN31 LDA CW+21 + BRU SN29+1 +SN32 LDA CW+22 + BRU SN29+1 +SN34 LDA CW+23 + BRU SN29+1 +SN35 LDA CW+25 + LDB =IMPLIC + BRU LW8+1 +SN38 LDA CW+24 + BRU SN29+1 +SN39 LDA CW+26 + LDB =EOP + BRU LW8+1 +SN24 BRM ADNM +SN24B BRU FETCH +SN25 BRM STRWD + BRU FETCH +SN24A LDA CHAR + LDB =1 + SKE =020000000 + STB SIGN + BRU LW102 +SN26 MIN ND + CLR + LDB CHAR + LSH 6 + STA CHAR + LDA NUMB + LSH 2 + ADD NUMB + LSH 1 + ADD CHAR + STA NUMB + BRU FETCH +SN22 MIN TMIN+1 + LDA TMIN+1 + STA P+8 + LDA A4+1 + STA P+9 + LDA =END + BRM STCON + LDA CW+9 END CW + LDB =BOUND + BRU LW8+1 +SN40 BRM ADBLNK + BRU SM +ADBLNK PZE + LDA LEN + RSH 2 + STA T + CLA + LSH 2 + CAX + LDA BLKTAB,IX2 + LDX T + ADM NAME,IX2 + BRR ADBLNK +BLKTAB DATA 0606060 + DATA 06060 + DATA 060 + DATA 0 +SN19 LDA MAD + STA SAD + COP BSNA + LDA =ZZL LPAREN + STA CHAR + BRU SN1 +SN21 STZ RMIN + STZ TMIN + LDA =ZZR RPAREN + STA CHAR + BRM ADNM + LDA =SN21A + STA STRWD +SN21A BRU STRW1 + LDA =044000000 + ADD SAD + SKNA NOCOD + MIN SJ + STA *SJ + LDA SAD + BRM INTOUT + LDB =STRX + BRU LW9 +SAD DATA 0 +R9D1 LDA NUMB + STA INT + BRU SM +R9D2 BRM FRACP + BRU SM +R9D3 BRM FRACP + BRU R9D41 +R9D6 LDA =1 + STA INT +R9D4 LDA NUMB + SKR SIGN + CNA + CLB + LSH 12 + ADM EXP +R9D41 BRM NTSCH + CLR + STA INT + STA FRAC + STA EXP + LDA =2 + BRU R9D5A +R9D5 SKNA DECST + BRU SM + LDA NUMB + SKGA =077777 + ERR 'L' INTEGER LITERAL GT 15 BITS + STA LA + LDA =3 +R9D5A STA TYPES + BRM SETK + BRU SM +* OUTPUTS CONSTANTS AND REF-DEFS +ENDPO ERR 'A' +ENDPRG LDA =NIMF +NDPR1 SKEA NABADD + BRU NDPR2 + CAX + LDA BASEA,IX2 + SKA =04000000 + BRU NDPR3 +NDPR5 CXA + ADD =1 + BRU NDPR1 +NDPR3 LDA *A15B + STA T + RSH 17 + STA T+1 + TYY =052000000 +NDPR4 MIN T + TYPW 1,4 + MIW *T + TOPW 1 + BRTW + BRU $-1 + SKR T+1 + BRU NDPR4 + BRU NDPR5 +NDPR2 BRM RELOUT + LDX =-NIMF+1 + LDA A15B + SUB =-NIMF+1 + STA T+16 +NDPR6 LDA BASEA+NIMF-1,IX2 + LDB =077777 + SKMA =0 + BRU NDPR7 + XAB + LDA *T+16 + BRM XNAM + STA BUF+3 + BRM SEND +NDPR7 BRX NDPR6 + LDA =02000000 + ADD MAD + STA BUF+1 + LDA =00100000 + STA BUF+2 + LDA =040000000 + STA BUF+3 + LDA =030250000 + SKN SCSW + ADD =00200000 + STA BUF + BRM SEND + TYPW 1,4 + MIW =052224645 + TOPW 1 +WAIT HLT + BRU RESTRT +$OLODE LDX =-7 + EOM 03604 + LDA NDPR9 + STA 1 + BRU 1 +NDPR9 WIM 2 +* SEARCHES NUMBER TABLE -ADD TO TABLE IF FIRST TIME +NTSCH PZE + SKN NOCOD + BRR NTSCH + STX T+7 + LDA NN +NTS6 ADD A19 +NTS4 SKG A19 + BRU NTS1 + STA T+6 + LDX =-3 +NTS2 LDA EXP+1,IX2 + SKE *T+6 + BRU NTS3 + BRX NTS2 +NTS8 LDA T+6 + ETR =077777 + STA LA + LDX T+7 + BRR NTSCH +NTS3 LDA T+6 + SUB =4 + BRU NTS4 +NTS1 LDA NN + SKGA =24 + BRU NTS5 + ADD =4 + STA NN + ADD A19 + STA T+6 + LDX =-3 +NTS7 LDA EXP+1,IX2 + STA *T+6 + BRX NTS7 + STZ *T+6 + BRU NTS8 +NTS5 LDA MAD + ADD =040000017 + MIN SJ + STA *SJ + COP UJJM0 + BRM RELOUT + LDA =-1 + STA NN + ADM SJ + BRU NTS6 +RELOUT PZE + BRM CODOUT + SKNA NN + BRR RELOUT + CLR + LDA NN + LSH 15 + STA BUF + ADD =060250000 + XMA BUF + LSH 2 + ADD =NUMTAB-1 + LDB =BUF+1 + BRM MOVNAM + BRM SEND + LDA NN + ADD =1 + RSH 1 + ADM MAD + BRR RELOUT +* BUILDS STACK WORD FOR A CONSTANT +SETK PZE + CLR + LDA =0260 + ADD TYPES + LSH 16 + ADD LA + SKNA NOCOD + MIN SJ + STA *SJ + BRR SETK +* SAVE SIMP VAR,IF ANY -FDZ FOUND +FFDZ PZE + SKN NOCOD + BRR FFDZ + BRM SAVE + LDA SJ + SUB A12 LDA SJ +FF1 SUB =1 + STA T+6 + SKG PTR + BRR FFDZ + CAX + LDB =074000000 + LDA SJ,IX2 + SKM =04000000 + BRU FF2 + LDA T+6 + STA RSULT + CNA + ADD SJ + SUB A12 + CLB + LSH 10 + ADD LDJM0 + BRM COA + COP STT +FF2 LDA T+6 + BRU FF1 +* BUILD EXECUTION LANGUAGE WORD +COA PZE + SKN NOCOD + BRR COA + STA P+6 + SKN PROCSW + BRU CO15 + LDA NENT + LDB =-1 + BRM MOVE + LDA P+6 + STA PROCSW + STA DECSW +CO15 ETR =077 + SKA =-1 + BRU CO1 + LDA *SK OP-BIN + BRU CO2 +CO1 SKE =077 + BRU CO2 + LDA *SK OP-BIN INVERSE + RSH 12 +CO2 LSH 15 + ETR =07700000 + STA WORDS OP PART SET + SKN DECSW + SKNA *BCTAB + BRU CO16 + LDA BLKPAR + SUB =4 + STA T+10 + LDA MAD + ADD =040100000 + STA *T+10 + LDA =040000000 + ADM *BCTAB +CO16 LDA P+6 + RSH 6 + ETR =017 + STX T+10 + CAX + BRU $+1,IX2 + BRU CO3 LIT ADDR + BRU CO4 STACK REF + BRU CO5 TEMP +CO3 CLR + LDB P+6 + LSH 9 +CO6 ADM WORDS + BRU CO21 +CO22 ADM WORDS +CO23 LDA *CO19 + ETR =03000000 + SKEA =0 + BRU CO21 + LDA =040000000 + MRG WORDS + STA WORDS +CO21 CLA + BRM MOVE + LDX T+10 + BRR COA +CO5 LDX RSULT + LDA TEMPT + ADD =050000000 KIND=TEMP + STA SJ,IX2 + MIN TEMPT + LDA TEMPT + SKGA *MTEMP MAX TEMP USAGE IN BLOCK + STA *MTEMP + SUB =1 + ADD =030000000 + CLB + STB RSULT + BRU CO6 +CO4 LDA P+6 + RSH 10 + ETR =017 + CNA + ADD SJ + SKG A12 + BRU CO77 + STA $+1 +CO19 LDA STACK WORD + STA T+11 + LDB =074000000 + SKM =054000000 CONSTANT + BRU CO7 + LDB =00600000 + SKM =00400000 + BRU CO9 + LDA =020000000 FLAG BIT=CONSTANT REF + ADM WORDS + LDA T+11 +CO8 ETR =077777 + STA T+11 + LDA *T+11 +CO18 ETR =077777 + ADM WORDS + CLB + SKA =-1 + LDB =040000000 + LDA *T+11 + ETR =077700000 + ADD MAD + STA *T+11 + BRU CO23 +CO7 SKMA =060000000 FR + BRU CO17 + SKMA =034000000 UNCLAB + BRU CO8 + SKMA =024000000 EXT PROC + BRU CO8 + SKMA =010000000 ARIDT + BRU CO12 + SKMA =014000000 SWIDT + BRU CO12 + SKMA =064000000 ADDRESS + BRU CO14 + SKM =050000000 + BRU CO13 + LDA =030000000 + ADM WORDS + CLB + BRU CO11+3 +CO13 SKM =04000000 + BRU CO11+1 + ETR =00100000 + SKE =0 + BRU $+3 +CO12 LDA =040000000 NON-OWN + BRU $+2 + LDA =020000000 +CO11 ADM WORDS + LDB P+6 + LSH 9 + LDA T+11 + ETR =077777 + BRU CO22 +CO9 SKM =00200000 + BRU CO11+3 + LDA =010000000 + ADM WORDS + BRU CO11+3 +CO14 LDA =050000000 + BRU CO11 +CO17 LDB CO19 + STB T+11 + BRU CO18 +CO77 STZ NOCOD + BRU CO21+2 +* SETS REFERENCE TO FORWARD REF +SETFR PZE + ADD SJ + STA T+18 + LDA =060000000 + STA *T+18 + BRR SETFR +* SATISFIES DEFINITION OF FRWRD REF +RECFR PZE + ADD SJ + STA T+18 + LDA *T+18 + BRM INTOUT + BRR RECFR +* MOVES CODE INTO OUTPUT BUFFER +MOVE PZE + SKN NOCOD + BRR MOVE + SKG =-1 + BRR MOVE + STB T+19 + LDB A13 LDA WORDS + STB MV1 + STX T+17 + STA T+18 NO. WDS TO GO -1 + LDX NWDS +MV1 LDA WORDS + STA BUF+26,IX2 + BPT 4 +OBJT NOP BRM OBJTY OVERLAYS THIS + MIN MAD + MIN MV1 + SKNA T+19 + BRM RELO + LDB T+19 + LSH 1 + STB T+19 + BRX MV2 + STX NWDS + BRM CODOUT BUFFER FULL + LDX =-24 +MV2 SKR T+18 + BRU MV1 + STX NWDS ALL WDS OUT + LDX T+17 + BRR MOVE +* OUTPUTS A REF-DEF +INTOUT PZE + STA T+18 + BRM CODOUT + LDA MAD +INT1 ADD =040100000 + STA BUF+2 + LDA T+18 + ETR =077777 + ADD =020100000 + STA BUF+1 + LDA =040350000 + STA BUF + BRM SEND + BRR INTOUT +* BUILDS CW,LAW,FCHSM,MOVES LRW,BIN CARDS OUT +CODOUT PZE + CLR + LDA =24 + ADD NWDS + SKG =0 + BRR CODOUT + STA T+2 NO. DATA WDS + STX T+4 + ADD =3 + CAX TOT. WDS IN REC + LSH 15 + ADD =050000 + STA BUF CW + LDA =02100000 + ADD MAD + SUB T+2 + STA BUF+1 LAW + LDA BUF+26 + STA BUF-1,IX2 POSITION LRW + BRM SEND + LDX T+4 + BRR CODOUT +* FORM FOLDED CHECKSUM,STORE IN RH OF BUF +FCHK PZE + LDA A22 EOR BUF + STA FCHK1 + LDA BUF + RSH 15 + ETR =037 + CNA + CAX + LDA =07777 +FCHK1 EOR BUF + MIN FCHK1 + BRX FCHK1 + STA T+2 + RSH 12 + EOR T+2 + ETR =07777 + ADM BUF + BRR FCHK +* PAPER TAPE READ +CARD PZE + LDA SPACES + LDX =-20 + STA IMAGE+20,IX2 + BRX $-1 + BRTW + BRU $-1 + RPTW 1,4 + LDX =-20 + WIM IMAGE+20,IX2 + BRTW + BRX $-2 + BETW + BRU ERRB + DISW + BRR CARD **EXIT** +ERRB ERR 'B' + HLT + BRU CARD+1 +SPACES DATA 012121212 + RES 5 +HICOL DATA 79 +READ RES 0 +* PUNCH A BINARY CARD -40 WORDS ONLY +PUNCH PZE + LDA =-12 + SKS 014046 SKIP IF PUNCH 1,CHANNEL 0 IS READY + BRU $-1 +PUNCH1 SKS 021000 SKIP IF CHANNEL 0 IS READY + BRU $-1 + EOM 003646 START PUNCH + LDX =-40 + MIW BUF+40,IX2 + BRX $-1 + EOM 014000 TERMINATE OUTPUT + ADD =1 ROW COUNTER + SKG =-1 SKIP IF 12TH ROW PUNCHED + BRU PUNCH1 NEXT ROW + STA BUF+26 CLR LD RELOC WD + SKS 021000 + BRU $-1 + CLR + LDX =-31 + STA BUF+31,IX2 + BRX $-1 + BRR PUNCH + RES 4 +WRITE RES 0 +SEND PZE + SKN NOCOD + BRR SEND + STX T + BRM FCHK + BRM PUNCH + LDA =-24 + STA NWDS + LDX T + BRR SEND +STRWD PZE + BRM ADNM + LDA LEN + SKE =3 + BRR STRWD +STRW1 LDA NAME + STA WORDS + LDA =-1 + STA LEN + CLR + BRM MOVE + BRR STRWD +* SET RELOC BIT =1 +RELO PZE + STX T+7 + CXA + CNA + CAX + CLR + LDB =040000000 + LSH 0,IX2 + ADM BUF+26 LOAD RELOC WD. + LDX T+7 + BRR RELO +* STACK CONTROL BASED ON PRECEDENCE +TS PZE + SKN NOCOD + BRR TS +TS2 LDA *SK + ETR =037000000 + STA T+15 + LDA OP + ETR =037000000 + SKG T+15 + BRU TS1 + MIN SK + LDA OP + STA *SK +TSEX BRR TS +TS1 LDA *SK + RSH 6 + ETR =077 + CAX + BRU $+1,IX2 + BRU OPBIN + BRU OPUN + BRU OPASS + BRU OPBRK + BRU OPSW + BRU OPIF + BRU OPTH + BRU OPELS + BRU OPGO + BRU OPBEG + BRU OPLPAR + BRU OPFOR + BRU OPPROC + BRU OPFRR + BRU OPARY + BRU OPIO +* SUBSCRIPT OPERATOR CODE GENERATOR +OPBRK BRM SAVE + LDA *SJ + ETR =074000000 + SKE =054000000 CONSTANT + BRU OPBR5 +OPBR6 LDA OP + SKE CW+12 RPAREN + BRU TSEX + LDA =-1 + ADD SJ +OPBR2 STA T+1 + LDA *T+1 + ETR =074000000 + SKE =010000000 + BRU OPBR1 + CLR + LDA SJ + SUB T+1 + STA T+1 + LSH 10 + STA T+3 + LDA PZJMO + BRU $+2 +OPBR4 LDA SSJM0 + ADD T+3 + BRM COA + LDA =077776000 + ADM T+3 + SKN T+3 + BRU OPBR4 + CLR + SUB T+1 + ADM SJ + LDA =064000000 ADDRESS + ADD MAD + SUB T+1 + SUB =1 + STA *SJ + SKR SK + BRU TSEX +OPBR5 SKEA =050000000 TEMP + BRU OPBR6 + COP LDJM0 + BRM RST + COP STT + BRU OPBR6 +OPBR1 LDA T+1 + SUB =1 + BRU OPBR2 +* BEGIN BLOCK AND COMP ST MARKER +OPBEG LDA OP + SKE CW+9 END OP + BRU TSEX + SKR SK + LDA CW+8 SEMCOL + STA OP + LDA *SK + SKE CW+32 PHI R + BRU TSEX + BRU OPFRR +* LPAREN OPERATOR +OPLPAR LDA OP + SKE CW+12 RPAREN OP + BRU TSEX + SKR SK + BRU TSEX +RST PZE + LDA SJ + SUB A12 + STA RSULT + BRR RST +RESTRT CLR + LDX =-NZER + STA ZERS+NZER,IX2 + BRX $-1 + STA BUF+26 + LDA =-1 + STA KSW + STA STOPSW + STA NEST + STA NN + STA NOCOD + LDA =1 + STA TOT + STA RMIN + STA RMIN+1 + LDA A12 + STA SJ + LDA A11 + STA SK + LDA =NIMF + STA NABADD + LDA =LIMF + STA NCADD + LDA I1 + STA BCTAB + LDA I3 + STA DNSP + LDA I4 + STA BLKPAR + LDA I5 + STA MTEMP + LDA =040000000 + STA BCTAB+1 + LDA =-24 + STA NWDS + LDA =2 + STA FEFSW + LDA I6 + STA STRMIN + STA STRMAJ + LDA OPTAB+11 + STA SK+1 + LDX =-NIMF+1 +REST1 LDA BASEA+NIMF-1,IX2 + ETR =077700000 + STA BASEA+NIMF-1,IX2 + BRX REST1 + BRU FETCHR +I1 LDA BCTAB+1 +I3 LDA DNSP +I4 LDA BLKPAR +I5 LDA MTEMP +SNG FORM 12,12 +I6 SNG BOUND,0 +A1 LDA MMIN,IX2 MAIN DICT BASE (MINOR) + LDA MMAJ,IX2 (MAJOR) +D DATA 0 ACCESS DICT BASE +RMIN DATA 1 + DATA 1 +ZERS EQU $ +TMIN DATA 0 + DATA 0 +INT DATA 0 +FRAC DATA 0 +EXP DATA 0 +PTR DATA 0 +SCSW DATA 0 +NDIM DATA 0 +MODE DATA 0 +RSULT DATA 0 +ITESW DATA 0 +NENT DATA 0 +LA DATA 0 +$MAD DATA 0 +DECST DATA 0 +DECSW DATA 0 +TELE DATA 0 +RAND DATA 0 +NDAD DATA 0 +PROCSW DATA 0 +TEMPT DATA 0 +SWIND DATA 0 +POSADD DATA 0 +KIND DATA 0 +PARA DATA 0 +TYPES DATA 0 +STYPE DATA 0 +NZER EQU $-ZERS +A4 PZE STRMIN,IX2 + PZE STRMAJ,IX2 +SEM PZE N + PZE M +SIZE DATA LDICTN-1 + DATA LDICTJ-1 +A2 BRU DF6 +A3 LDA 0,IX2 +P RES 10 MASAGE PARA STORE +T RES 25 +WORDS RES 15 +A7 PZE LWTAB,IX2 +A8 PZE CVERT,IX2 +NABADD DATA NIMF +NCADD DATA LIMF +BCTAB LDA $+1 + DATA 040000000 + RES 5 +A9 STA 0,IX2 +A10 SKE NAME +A11 LDA SK+1 +A12 LDA SJ +A13 LDA WORDS +A15 LDA BASEA,IX2 +A15B LDA BASEB,IX2 +A15L PZE BASEB-BASEA +A16 PZE BASEC-1 +A19 LDA NUMTAB,IX2 +A22 EOR BUF +SJ LDA $ + RES 15 +SK LDA $+1 + DATA 0771100 BEGIN + RES 20 +DELTA DATA 0 +STRMIN SNG BOUND,0 + RES 2 +STRMAJ SNG BOUND,0 + RES 24 +FEFSW RES 1 +A23 STA BASEA +A24 BRU LW7 +ND DATA 0 +NUMB DATA 0 +NUM1 DATA 0 +NUM2 DATA 0 +NN DATA -1 +NUMTAB RES 28 +NWDS DATA -24 +NOCOD DATA -1 +MTEMP LDA $ + RES 6 +BLKPAR LDA $ + RES 31 +DNSP LDA $ + RES 6 +CW DATA 0300 LBRACK + DATA 002000200 ASSIGN + DATA 001000600 THEN (STACK) + DATA 000000600 THEN (OP) + DATA 002000700 ELSE (STACK) + DATA 001000700 ELSE (OP) + DATA 0400 SWITCH + DATA 001001000 GOTO + DATA 07600 SEMCOL + DATA 01177 END + DATA 07500 COMMA + DATA 0771200 LPAREN + DATA 01277 RPAREN + DATA 011060006 + + DATA 011110010 - + DATA 012140013 / + DATA 012160015 \ + DATA 012120012 * + DATA 03250025 EQUIV + DATA 010320031 GE + DATA 010310032 LE + DATA 010300030 EQ + DATA 010330033 NE + DATA 010260027 LS + DATA 010270026 GT + DATA 04240023 IMPLIC + DATA 013200017 EOP + DATA 07400 COLON + DATA 011000100 UOP + DATA 07700 BOUND + DATA 01401 PROC + DATA 01300 PHI + DATA 01501 PHI R + DATA 01400 WHILE + DATA 01600 UNTIL + DATA 01500 STEP + DATA 01700 DO + DATA 01701 +STT DATA 000204 +PZJMO DATA 040145 +LDJM1 DATA 042101 +LDJM0 DATA 040101 +SSJM0 DATA 040150 +STJM0 DATA 040104 +WHJM0 DATA 040120 +LDNJM0 DATA 040102 +NEG DATA 000003 +OPJM0 DATA 040100 +OPIJM1 DATA 042177 +JFJM0 DATA 040136 +UJNA DATA 000034 +UJJM1 DATA 042134 +UJJM0 DATA 040134 +BSNA DATA 054 +BBNA DATA 043 +BPNA DATA 041 +EBNA DATA 044 +EPNA DATA 042 +IOJM0 DATA 040152 +PJM0 DATA 040155 +PJM1 DATA 042155 +PJM2 DATA 044155 +BCJM0 DATA 040137 +ECJM0 DATA 040153 +SUJM0 DATA 040117 +JPJM0 DATA 040140 +SPLJM0 DATA 040157 +DEALNA DATA 7 +JPJM1 DATA 042140 +ALJM2 DATA 044105 +EFBNA DATA 060 +ALJM0 DATA 040105 +STFA FORM 4,5,15 +BR RES 1 +TAB1 DATA UNKIDT + DATA VRIDT + DATA ARIDT + DATA SWIDT + DATA PRIDT + DATA PRIDT + DATA PRIDT + DATA SDX + DATA SDX + DATA BVAR + DATA AVAR + DATA BPRI + DATA APRI + DATA BVARP + DATA AVARP +IX2 EQU 2 +SPECAL EQU 6 +EMP EQU 0 +PRHED EQU SPECAL-5 +BLKHD EQU SPECAL-4 +BOUND EQU SPECAL-3 +MOP EQU 4 +BEGINB EQU SPECAL-2 +USI EQU 5 +BEGINC EQU SPECAL-1 +RPAR EQU 6 +STMTSQ EQU SPECAL +ASN EQU 7 +COLON EQU 7 +EQUAL EQU 8 +ULBLK EQU 8 +LPT EQU 9 +BLOCK EQU 9 +RPT EQU 10 +CMPD EQU 10 +AST EQU 11 +UCS EQU 11 +AOP EQU 12 +IDT EQU 13 +APRI EQU 14 +COMMA EQU 15 +END EQU 16 +SEMCOL EQU 17 +RPAREN EQU 18 +LPAREN EQU 19 +ELSE EQU 20 +APOST EQU 21 +UBS EQU 21 +ROP EQU 22 +STRING EQU 22 +DGT EQU 23 +UFORS EQU 23 +LTR EQU 24 +ULCOMP EQU 24 +IDTP EQU 25 +SWDES EQU 25 +USIP EQU 26 +SWIDT EQU 26 +IDTPA EQU 27 +FL EQU 27 +ARIDT EQU 28 +APL EQU 29 +REAL EQU 30 +INTGER EQU 31 +BOOL EQU 32 +FORS EQU 33 +BEGIN EQU 34 +SDX EQU 35 +IFS EQU 36 +CS EQU 37 +SUBX EQU 38 +PROCED EQU 39 +ARRAY EQU 40 +VRIDT EQU 41 +PRIDT EQU 42 +ALPL EQU 43 +DO EQU 44 +FPL EQU 45 +AX EQU 46 +ARLIS EQU 47 +PRHDB EQU 48 +BPL EQU 49 +BOX EQU 50 +STRX EQU 51 +THEN EQU 52 +BLPL EQU 53 +DEX EQU 54 +LBLSL EQU 55 +AVAR EQU 56 +FDZ EQU 57 +STMT EQU 58 +AFCT EQU 59 +ATRM EQU 60 +SAX EQU 61 +BVAR EQU 62 +BPRI EQU 63 +BSEC EQU 64 +BFCT EQU 65 +BTRM EQU 66 +IMP EQU 67 +SBX EQU 68 +PRODEC EQU 69 +LABEL EQU 70 +IFC EQU 71 +SWITCH EQU 72 +FPLPD EQU 73 +PRHDA EQU 74 +STEP EQU 76 +ELA EQU 77 +UNTIL EQU 78 +ELB EQU 79 +ELC EQU 80 +WHILE EQU 81 +ELD EQU 82 +FCP EQU 83 +LBROCK EQU 86 +FDZP EQU 89 +VUL EQU 90 +USNA EQU 95 +ARSEG EQU 97 +LBRACK EQU 98 +PRHDCP EQU 99 +LPD EQU 100 +AVARP EQU 101 +SUBL EQU 102 +BVARP EQU 103 +DECLAR EQU 104 +LOB EQU 105 +XPRIDT EQU 106 +BXP EQU 109 +IF EQU 110 +PRHDEP EQU 111 +APLPD EQU 112 +SPECLS EQU 113 +ERROR EQU 114 +DXP EQU 116 +ASSIGN EQU 117 +SWL EQU 118 +GOTO EQU 119 +TEN EQU 121 +FORC EQU 124 +PT EQU 125 +USN EQU 127 +SWDP EQU 131 +VRLIS EQU 132 +USNB EQU 133 +IFSP EQU 134 +XTRNAL EQU 135 +PIFS EQU 136 +UNKIDT EQU 137 +LBL EQU 139 +XPRLIS EQU 141 +AXP EQU 142 +ARY EQU 145 +EXT EQU 146 +PROC EQU 147 +OWN EQU 148 +SWDESP EQU 149 +FOR EQU 150 +AFCTP EQU 151 +ATRMP EQU 152 +SAXP EQU 153 +EOP EQU 154 +RELP EQU 156 +NOT EQU 157 +BFCTP EQU 158 +AND EQU 159 +BTRMP EQU 160 +OR EQU 161 +IMPP EQU 162 +IMPLIC EQU 163 +SBXP EQU 164 +EQUIV EQU 165 +VALUE EQU 166 +UNDEF EQU 167 +PRGRAM EQU 168 +TRUE EQU 169 +FALSE EQU 170 +FORMAT EQU 171 +COMENT EQU 172 +ILLEG EQU 173 +IGNOR EQU 174 +UOP EQU 175 +DOTDOT EQU 176 +BLANK EQU 177 +APOST2 EQU 180 +TYPE EQU 181 +COMST EQU 182 +USNC EQU 184 +USND EQU 185 +PRHDC EQU 187 +ROPE EQU 188 +MOPE EQU 189 +COLONE EQU 190 +SUBD EQU 0 +IMPA EQU 1 +RULE EQU 2 +RULEF EQU 3 +ICON FORM 6,10,8 +CON FORM 8,8,8 +RL FORM 2,2,2,10,8 +DICT FORM 3,9,12 +MMIN RES 0 + DICT SUBD,BOUND,BND1 + DICT SUBD,MOP,MOP1 + DICT RULEF,USI,RR9 + DICT SUBD,RPAR,RPAR1 + DICT RULEF,COLON,RR3 + DICT RULEF,EQUAL,RR4 + DICT RULEF,LPT,RR5 + DICT RULEF,RPT,RR6 + DICT RULEF,AST,RR7 + DICT SUBD,AOP,AOP1 + DICT SUBD,IDT,IDT1 + DICT SUBD,APRI,APR1 + DICT SUBD,COMMA,COM1 + DICT SUBD,END,END1 + DICT SUBD,SEMCOL,SEM1 + DICT RULEF,RPAREN,RR8 + DICT SUBD,LPAREN,LPAR1 + DICT SUBD,ELSE,ELS1 + DICT SUBD,APOST,APST1 + DICT SUBD,ROP,ROP1 + DICT IMPA,DGT,X2 + DICT IMPA,LTR,X1 + DICT RULEF,IDTP,RR1 + DICT RULEF,USIP,RR2 + DICT RULEF,IDTPA,RR10 +LDICTN EQU $-MMIN +USI1 RES 0 + DICT 4+IMPA,BOUND,X3 +IDT1 RES 0 + DICT 4+IMPA,BOUND,X4 +SEM1 RES 0 + DICT IMPA,BOUND,X5 + DICT IMPA,END,X6 + DICT 4+SUBD,COMENT,SEM11 +COM1 RES 0 + DICT 4+IMPA,BOUND,X7 +LPAR1 RES 0 + DICT 4+IMPA,BOUND,X8 +RPAR1 RES 0 + DICT 4+IMPA,BOUND,X9 +AOP1 RES 0 + DICT IMPA,TEN,X24 + DICT IMPA,USNB,X26 + DICT 4+IMPA,BOUND,X12 +ROP1 RES 0 + DICT 4+IMPA,BOUND,X14 +MOP1 RES 0 + DICT 4+IMPA,BOUND,X15 +ELS1 RES 0 + DICT IMPA,BOUND,X16 + DICT 4+IMPA,END,X17 +END1 DICT 4+IMPA,END,X18 +BND1 DICT 4+SUBD,END,BND11 +APST1 DICT SUBD,IDT,APST12 + DICT 4+IMPA,APOST,X19 +SEM11 DICT 4+IMPA,BOUND,X20 +BND11 DICT 4+IMPA,BOUND,X22 +APST12 DICT 4+IMPA,APOST,X23 +APR1 DICT 4+IMPA,BOUND,X3 +X1 ICON 1,SN1-N,IDTP +X2 ICON 1,SN2-N,USIP +X3 ICON 1,SN3-N,BOUND +X4 ICON 1,SN4-N,BOUND +X5 ICON 1,SN5-N,BOUND +X6 ICON 1,SN6-N,SEMCOL +X7 ICON 1,SN7-N,BOUND +X8 ICON 1,SN8-N,BOUND +X9 ICON 1,SN9-N,BOUND +X12 ICON 1,SN12-N,BOUND +X14 ICON 1,SN14-N,BOUND +X15 ICON 1,SN15-N,BOUND +X16 ICON 1,SN16-N,BOUND +X17 ICON 1,SN6-N,ELSE +X18 ICON 1,SN6-N,END +X19 ICON 1,SN19-N,APOST2 +X20 ICON 1,SN24B-N,BOUND +X22 ICON 1,SN22-N,BOUND +X23 ICON 0,LWCHK-N,0 +X24 ICON 1,SN24A-N,TEN +X26 ICON 1,SN24A-N,USNB +RR1 RL 1,1,1,SN-N,LPD + CON LPD,0,0 + RL 1,0,1,SN24-N,LTR + CON IDTP,0,0 + RL 1,0,1,SN24-N,DGT + CON IDTP,0,0 + RL 1,0,1,SN-N,COLON + CON IDTPA,0,0 + RL 0,0,1,SN40-N,IDT +RR2 RL 1,0,1,SN26-N,DGT + CON USIP,0,0 + RL 0,0,1,SN-N,USI +RR3 RL 2,1,1,SN-N,LPD + CON LPAREN,COMMA,0 + RL 2,1,1,SN27A-N,BOUND + CON EQUAL,BOUND,0 + RL 1,1,1,SN13-N,BOUND + CON BOUND,0,0 +RR4 RL 2,1,1,SN28-N,BOUND + CON EQUAL,BOUND,0 + RL 1,0,1,SN29-N,RPT + CON ROP,0,0 + RL 1,0,1,SN30-N,LPT + CON ROP,0,0 + RL 0,0,1,SN31-N,ROP +RR5 RL 1,0,1,SN32-N,RPT + CON ROP,0,0 + RL 1,0,1,SN30-N,EQUAL + CON ROP,0,0 + RL 0,0,1,SN34-N,ROP +RR6 RL 2,1,1,SN35-N,BOUND + CON RPT,BOUND,0 + RL 1,0,1,SN32-N,LPT + CON ROP,0,0 + RL 1,0,1,SN29-N,EQUAL + CON ROP,0,0 + RL 0,0,1,SN38-N,ROP +RR7 RL 2,1,1,SN39-N,BOUND + CON AST,BOUND,0 + RL 0,0,1,SN-N,MOP +RR8 RL 1,0,1,SN-N,LTR + CON LPD,0,0 + RL 0,0,1,SN-N,RPAR +RR9 RL 1,0,1,R9D1-N,PT + CON USNA,0,0 + RL 2,1,2,R9D2-N,USNA + CON TEN,USNB,TEN + RL 1,1,1,R9D3-N,USNA + CON APRI,0,0 + RL 2,1,2,R9D2-N,PT + CON TEN,USNB,TEN + RL 1,1,1,R9D3-N,PT + CON APRI,0,0 + RL 1,0,2,R9D1-N,TEN + CON USNB,TEN,0 + RL 2,2,1,R9D4-N,USNB + CON TEN,APRI,0 + RL 1,1,1,R9D6-N,TEN + CON APRI,0,0 + RL 0,0,1,R9D5-N,APRI +RR10 RL 2,1,1,SN27-N,BOUND + CON EQUAL,BOUND,0 + RL 1,1,1,LABDEF-N,BOUND + CON BOUND,0,0 +LEX FORM 4,3,5,12 +LWTAB LEX 1,3,0,IF + TEXT 4,IF + LEX 1,0,1,DO + TEXT 4,DO + LEX 1,0,2,OR + TEXT 4,OR + LEX 2,6,3,FOR + TEXT 4,FOR + LEX 2,2,0,END + TEXT 4,END + LEX 2,1,0,OWN + TEXT 4,OWN + LEX 2,0,5,AND + TEXT 4,AND + LEX 2,0,6,NOT + TEXT 4,NOT + LEX 3,0,7,THEN + TEXT 4,THEN + LEX 3,2,0,ELSE + TEXT 4,ELSE + LEX 3,1,0,REAL + TEXT 4,REAL + LEX 3,0,9,STEP + TEXT 4,STEP + LEX 3,3,10,GOTO + TEXT 4,GOTO + LEX 3,4,0,BPRI + TEXT 4,TRUE + LEX 4,3,11,BEGIN + TEXT 8,BEGIN + LEX 4,1,0,ARRAY + TEXT 8,ARRAY + LEX 4,0,12,UNTIL + TEXT 8,UNTIL + LEX 4,0,13,WHILE + TEXT 8,WHILE + LEX 4,5,0,BPRI + TEXT 8,FALSE + LEX 4,1,0,VALUE + TEXT 8,VALUE + LEX 4,1,0,LABEL + TEXT 8,LABEL + LEX 5,1,0,FORMAT + TEXT 8,FORMAT + LEX 5,1,0,SWITCH + TEXT 8,SWITCH + LEX 5,1,0,STRING + TEXT 8,STRING + LEX 6,1,0,INTGER + TEXT 8,INTEGER + LEX 6,2,0,COMENT + TEXT 8,COMMENT + LEX 6,1,0,BOOL + TEXT 8,BOOLEAN + LEX 7,1,0,XTRNAL + TEXT 8,EXTERNAL + LEX 7,1,8,PROCED + TEXT 8,PROCEDUR +OPTAB DATA 0500 IF + DATA 01700 DO + DATA 05210021 OR + DATA 01300 FOR + DATA 0400 SWITCH + DATA 06220022 AND + DATA 07000100 NOT + DATA 0600 THEN(OP) + DATA 0 PROCEDURE + DATA 01500 STEP + DATA 01001000 GO TO + DATA 0771100 BEGIN + DATA 01600 UNTIL + DATA 01400 WHILE +MMAJ RES 0 + DICT SUBD,BEGINB,BGB1 + DICT SUBD,BEGINC,BGC1 + DICT SUBD,STMTSQ,DEC1 + DICT IMPA,ASN,Y93 + DICT RULE,ULBLK,R34 + DICT RULEF,BLOCK,R38 + DICT RULEF,CMPD,R38 + DICT RULE,UCS,R29 + DICT IMPA,AOP,Y137 + DICT RULE,IDT,R2 + DICT RULE,APRI,R12 + DICT SUBD,COMMA,CM1 + DICT SUBD,END,END2 + DICT RULE,SEMCOL,R1 + DICT SUBD,RPAREN,RPR1 + DICT SUBD,LPAREN,LPR1 + DICT RULE,ELSE,R44 + DICT RULE,UBS,R31 + DICT SUBD,STRING,STRG1 + DICT RULE,UFORS,R32 + DICT RULE,ULCOMP,R33 + DICT IMPA,SWDES,Y62 + DICT RULEF,SWIDT,R36 + DICT SUBD,FL,FL1 + DICT RULEF,ARIDT,R26 + DICT SUBD,APL,APL1 + DICT IMPA,REAL,Y1 + DICT IMPA,INTGER,Y2 + DICT IMPA,BOOL,Y3 + DICT RULE,FORS,R35 + DICT RULEF,BEGIN,R6 + DICT RULEF,SDX,R27 + DICT RULEF,IFS,R30 + DICT IMPA,CS,R35Z + DICT RULEF,SUBX,R3 + DICT RULE,PROCED,R4 + DICT RULE,ARRAY,R5 + DICT RULE,VRIDT,R7 + DICT RULEF,PRIDT,R8 + DICT SUBD,ALPL,ALPL1 + DICT RULE,DO,R16 + DICT SUBD,FPL,FPL1 + DICT SUBD,AX,AX1 + DICT SUBD,ARLIS,ARL1 + DICT RULEF,PRHDB,R37 + DICT SUBD,BPL,BPL1 + DICT SUBD,BOX,BX1 + DICT RULE,STRX,R40 + DICT RULE,THEN,R42 + DICT SUBD,BLPL,BLPL1 + DICT SUBD,DEX,DEX1 + DICT SUBD,LBLSL,LBLS1 + DICT RULEF,AVAR,R10 + DICT RULE,FDZ,R11 + DICT RULEF,STMT,R18 + DICT RULEF,AFCT,R13 + DICT RULEF,ATRM,R14 + DICT RULEF,SAX,R15 + DICT RULEF,BVAR,R17 + DICT RULE,BPRI,R19 + DICT RULE,BSEC,R20 + DICT RULEF,BFCT,R21 + DICT RULEF,BTRM,R22 + DICT RULEF,IMP,R23 + DICT RULEF,SBX,R24 + DICT RULEF,PRODEC,R39 + DICT SUBD,LABEL,LAB1 + DICT SUBD,IFC,IFC1 + DICT SUBD,SWITCH,SWCH1 +LDICTJ EQU $-MMAJ +DEC1 DICT 4+IMPA,STMTSQ,Y112 +IFC1 RES 0 + DICT IMPA,LBLSL,Y124 + DICT IMPA,FORC,Y123 + DICT IMPA,BEGINC,Y121 + DICT IMPA,STMTSQ,Y122 + DICT IMPA,BLKHD,Y120 + DICT IMPA,IFSP,Y125 + DICT 4+IMPA,PIFS,Y126 +SWCH1 DICT 4+IMPA,PRHDC,Y132 +LAB1 DICT 4+IMPA,PRHDC,Y133 +STRG1 DICT 4+IMPA,PRHDC,Y134 +CM1 DICT IMPA,FPL,Y15 + DICT IMPA,APL,Y39 + DICT 4+SUBD,AX,CM12 +CM12 DICT IMPA,FCP,Y48 + DICT 4+SUBD,COMMA,CM121 +CM121 DICT 4+IMPA,FL,Y50 +BGB1 DICT 4+SUBD,PRHDC,BGB11 +BGB11 DICT 4+IMPA,PRHDA,Y22 +FPL1 DICT 4+IMPA,FPLPD,Y16 +LPR1 DICT 4+IMPA,ARSEG,Y17 +BGC1 DICT 4+SUBD,PRHDC,BGC11 +BGC11 DICT 4+IMPA,PRHDA,Y23 +APL1 DICT 4+IMPA,APLPD,R36Z +ALPL1 DICT 4+IMPA,ALPL,Y42 +FL1 DICT 4+SUBD,COMMA,FL11 +FL11 DICT 4+IMPA,FL,Y103 +AX1 DICT IMPA,AXP,R15Z + DICT IMPA,ALPL,Y43 + DICT IMPA,FDZP,Y52 + DICT IMPA,LBRACK,Y74 + DICT SUBD,UNTIL,ELC1 + DICT IMPA,APLPD,Y95 + DICT SUBD,COLONE,AX11 + DICT 4+SUBD,COMMA,AX12 +AX11 DICT 4+IMPA,AX,Y71 +AX12 DICT 4+IMPA,SUBL,R3Z +ARL1 DICT 4+SUBD,COMMA,ARL11 +ARL11 DICT 4+IMPA,ARLIS,Y67 +BPL1 DICT 4+SUBD,COMMA,BPL11 +BPL11 DICT 4+IMPA,BPL,Y71 +RPR1 DICT SUBD,SUBL,RPR11 + DICT SUBD,BPL,RPR12 + DICT SUBD,DEX,RPR13 + DICT SUBD,BOX,RPR14 + DICT SUBD,AX,RPR15 + DICT 4+SUBD,APL,RPR161 +RPR11 DICT 4+SUBD,LBRACK,RPR111 +RPR111 DICT IMPA,BVARP,Y66 + DICT 4+IMPA,AVARP,Y65 +RPR12 DICT 4+SUBD,LBROCK,RPR121 +RPR121 DICT 4+IMPA,ARSEG,Y64 +RPR13 DICT 4+IMPA,LPAREN,Y62 +RPR14 DICT 4+IMPA,LPAREN,R17Z +RPR15 DICT 4+IMPA,LPAREN,R10Z +RPR161 DICT 4+IMPA,FDZP,R8Z +BX1 DICT IMPA,APLPD,Y95 + DICT SUBD,WHILE,ELC3 + DICT IMPA,FDZP,Y52 + DICT IMPA,BXP,R24Z + DICT 4+IMPA,BLPL,Y43 +BLPL1 DICT 4+IMPA,BLPL,Y83 +DEX1 DICT IMPA,GOTO,Y93 + DICT IMPA,APLPD,Y95 + DICT IMPA,FDZP,Y52 + DICT IMPA,DXP,R27Z + DICT IMPA,ASSIGN,Y91 + DICT 4+SUBD,COMMA,DEX11 +DEX11 DICT 4+IMPA,SWL,Y92 +LBLS1 DICT 4+IMPA,LBLSL,Y97 +END2 DICT IMPA,LBLSL,Y98 + DICT 4+SUBD,STMTSQ,SQ1 +ELC1 DICT 4+SUBD,AX,ELC2 +ELC2 DICT 4+SUBD,STEP,ELC3 +ELC3 DICT 4+IMPA,AX,Y103 +SQ1 DICT IMPA,BLKHD,Y114 + DICT 4+IMPA,BEGINC,Y110 +Y1 ICON 1,SM1-M,TYPE +Y2 ICON 1,SM2-M,TYPE +Y3 ICON 1,SM3-M,TYPE +Y15 ICON 1,SM-M,FPLPD +Y16 ICON 1,SM-M,FPL +Y17 ICON 2,SM17-M,ARSEG + CON LBROCK,0,0 +Y22 ICON 2,SM22-M,PRHED + CON BEGINB,0,0 +Y23 ICON 2,SM22-M,PRHED + CON BEGINC,0,0 +Y39 ICON 1,SM-M,APLPD +Y42 ICON 1,SM-M,ALPL +Y43 ICON 1,SM-M,ASN +Y48 ICON 3,SM-M,FCP + CON FL,COMMA,0 +Y50 ICON 2,SM-M,FL + CON COMMA,0,0 +Y52 ICON 2,SM-M,FDZP + CON APL,0,0 +Y62 ICON 1,SM-M,SDX +Y64 ICON 1,SM64-M,ARLIS +Y65 ICON 1,SM-M,AVAR +Y66 ICON 1,SM-M,BVAR +Y67 ICON 1,SM-M,ARLIS +Y71 ICON 1,SM-M,BPL +Y74 ICON 2,SM-M,LBRACK + CON SUBX,0,0 +Y83 ICON 1,SM-M,BLPL +Y91 ICON 2,SM-M,ASSIGN + CON SWL,0,0 +Y92 ICON 1,SM-M,SWL +Y93 ICON 1,SM-M,UBS +Y95 ICON 2,SM-M,APLPD + CON APL,0,0 +Y97 ICON 1,SM-M,LBLSL +Y98 ICON 2,SM-M,UCS + CON END,0,0 +Y103 ICON 1,SM-M,FL +Y110 ICON 1,SM-M,ULCOMP +Y112 ICON 1,SM-M,STMTSQ +Y114 ICON 1,SM-M,ULBLK +Y120 ICON 2,SM-M,BLKHD + CON PIFS,0,0 +Y121 ICON 2,SM-M,BEGINC + CON PIFS,0,0 +Y122 ICON 2,SM-M,STMTSQ + CON PIFS,0,0 +Y123 ICON 2,SM-M,FORC + CON PIFS,0,0 +Y124 ICON 1,SM-M,PIFS +Y125 ICON 2,SM-M,IFSP + CON PIFS,0,0 +Y126 ICON 2,SM-M,PIFS + CON PIFS,0,0 +Y137 ICON 1,SM137-M,UOP +Y132 ICON 1,R2D6-M,PRHDEP +Y133 ICON 1,SM133-M,PRHDEP +Y134 ICON 1,SM134-M,PRHDEP +R40 RL 2,2,1,R40D1-M,LBLSL + CON FORMAT,STMT,0 + RL 0,0,1,SM-M,APL +R35 RL 1,1,1,SM-M,PIFS + CON STMT,0,0 +R35Z RL 0,0,1,SM-M,STMT +R6 RL 1,0,2,BEGBLK-M,REAL + CON BEGINB,REAL,0 + RL 1,0,2,BEGBLK-M,INTGER + CON BEGINB,INTGER,0 + RL 1,0,2,BEGBLK-M,BOOL + CON BEGINB,BOOL,0 + RL 1,0,2,BEGBLK-M,OWN + CON BEGINB,OWN,0 + RL 1,0,2,BEGBLK-M,PROCED + CON BEGINB,PROCED,0 + RL 1,0,2,BEGBLK-M,ARRAY + CON BEGINB,ARRAY,0 + RL 1,0,2,BEGBLK-M,SWITCH + CON BEGINB,SWITCH,0 + RL 1,0,2,BEGBLK-M,XTRNAL + CON BEGINB,XTRNAL,0 + RL 0,0,1,SM-M,BEGINC +R4 RL 1,1,1,R4D1-M,PRHDC + CON PRHDEP,0,0 + RL 2,2,1,R4D2-M,PRHDC + CON TYPE,PRHDEP,0 + RL 1,1,1,SM-M,TYPE + CON PROC,0,0 + RL 0,0,1,R4D4-M,PROC +R5 RL 1,1,1,R5D1-M,PRHDC + CON PRHDEP,0,0 + RL 2,2,1,R5D2-M,OWN + CON TYPE,ARY,0 + RL 2,2,1,R5D3-M,PRHDC + CON TYPE,PRHDEP,0 + RL 1,1,1,R5D4-M,TYPE + CON ARY,0,0 + RL 1,1,1,R5D5-M,OWN + CON ARY,0,0 + RL 0,0,1,R5D6-M,ARY +R7 RL 2,2,1,VAR-M,VRLIS + CON COMMA,VRLIS,0 + RL 2,2,1,R7D2-M,OWN + CON TYPE,VRLIS,0 + RL 1,1,1,VAR-M,TYPE + CON VRLIS,0,0 + RL 0,0,1,R7D4-M,AVAR +R8 RL 1,0,1,R8D2-M,LPAREN + CON FDZP,0,0 + RL 1,0,2,R7D4-M,ASSIGN + CON AVAR,ASSIGN,0 +R8Z RL 0,0,1,SM-M,FDZ +R11 RL 1,1,2,SM-M,STMTSQ + CON STMTSQ,UBS,0 + RL 1,1,2,SM-M,BEGINC + CON BEGINC,UBS,0 + RL 1,1,2,SM-M,BLKHD + CON BLKHD,UBS,0 + RL 1,1,2,SM-M,FORC + CON FORC,UBS,0 + RL 1,1,2,SM-M,LBLSL + CON LBLSL,UBS,0 + RL 1,1,2,SM-M,IFSP + CON IFSP,UBS,0 + RL 1,1,2,SM-M,PIFS + CON PIFS,UBS,0 + RL 0,0,1,R11D14-M,APRI +R3 RL 3,2,1,SM-M,SWDESP + CON LBRACK,RPAREN,SWDES +R3Z RL 0,0,1,SM-M,SUBL +R10 RL 2,1,1,R10D2-M,FOR + CON ASSIGN,FCP,0 + RL 1,0,1,R10D2-M,ASSIGN + CON ALPL,0,0 +R10Z RL 0,0,1,SM-M,APRI +R12 RL 1,1,1,SM-M,AFCTP + CON AFCT,0,0 + RL 0,0,1,SM-M,AFCT +R13 RL 1,0,1,SM-M,EOP + CON AFCTP,0,0 + RL 1,1,1,SM-M,ATRMP + CON ATRM,0,0 + RL 0,0,1,SM-M,ATRM +R14 RL 1,0,1,SM-M,MOPE + CON ATRMP,0,0 + RL 1,1,1,SM-M,SAXP + CON SAX,0,0 + RL 1,1,1,SM-M,UOP + CON SAX,0,0 + RL 0,0,1,SM-M,SAX +R15 RL 1,0,1,SM-M,AOP + CON SAXP,0,0 + RL 1,0,1,SM-M,ROPE + CON RELP,0,0 + RL 2,1,1,SM-M,IFC + CON ELSE,AXP,0 + RL 1,1,1,SM-M,RELP + CON BPRI,0,0 +R15Z RL 0,0,1,SM-M,AX +R16 RL 2,2,1,SM-M,FCP + CON FL,FORC,0 + RL 1,1,2,SM-M,AX + CON FL,DO,0 + RL 0,0,1,SYND-M,ERROR +R18 RL 2,1,1,R1D1-M,STMTSQ + CON SEMCOL,STMTSQ,0 + RL 1,1,1,SM-M,FORC + CON UFORS,0,0 + RL 1,1,1,SM-M,IFSP + CON STMT,0,0 + RL 1,0,2,SM-M,END + CON STMTSQ,END,0 + RL 3,2,2,SM135-M,PRHDA + CON PRHDC,SEMCOL,PRODEC + CON SEMCOL,0,0 + RL 2,1,2,SM135-M,PRHED + CON SEMCOL,PRODEC,SEMCOL + RL 1,0,1,R1D1-M,SEMCOL + CON STMTSQ,0,0 + RL 0,0,1,SYNS-M,ERROR +R17 RL 1,0,1,R10D2-M,ASSIGN + CON BLPL,0,0 +R17Z RL 0,0,1,SM-M,BPRI +R19 RL 1,1,1,SM-M,NOT + CON BSEC,0,0 + RL 0,0,1,SM-M,BSEC +R20 RL 1,1,1,SM-M,BFCTP + CON BFCT,0,0 + RL 0,0,1,SM-M,BFCT +R21 RL 1,0,1,SM-M,AND + CON BFCTP,0,0 + RL 1,1,1,SM-M,BTRMP + CON BTRM,0,0 + RL 0,0,1,SM-M,BTRM +R22 RL 1,0,1,SM-M,OR + CON BTRMP,0,0 + RL 1,1,1,SM-M,IMPP + CON IMP,0,0 + RL 0,0,1,SM-M,IMP +R23 RL 1,0,1,SM-M,IMPLIC + CON IMPP,0,0 + RL 1,1,1,SM-M,SBXP + CON SBX,0,0 + RL 0,0,1,SM-M,SBX +R24 RL 1,0,1,SM-M,EQUIV + CON SBXP,0,0 + RL 2,1,1,SM-M,IFC + CON ELSE,BXP,0 +R24Z RL 0,0,1,SM-M,BOX +R37 RL 1,0,1,SM-M,VALUE + CON PRHDCP,0,0 + RL 0,0,1,SM-M,PRHDC +R36 RL 1,1,1,SWIT-M,SWITCH + CON SWDP,0,0 + RL 1,0,2,SM-M,LPAREN + CON SWDESP,LBRACK,0 +R36Z RL 0,0,1,SM-M,APL +R34 RL 1,1,1,ENDBLK-M,LBLSL + CON BLOCK,0,0 + RL 0,0,1,ENDBLK-M,BLOCK +R38 RL 2,1,1,R39D2-M,BOUND + CON BOUND,PRGRAM,0 + RL 0,0,1,SM-M,UCS +R26 RL 1,0,2,R26D4-M,LPAREN + CON AVARP,LBRACK,0 + RL 0,0,1,SM-M,APL +R27 RL 2,1,1,SM-M,IFC + CON ELSE,DXP,0 +R27Z RL 0,0,1,SM-M,DEX +R29 RL 1,1,1,SM-M,PIFS + CON IFS,0,0 + RL 0,0,1,R29D1-M,STMT +R30 RL 1,0,1,SM-M,ELSE + CON IFSP,0,0 + RL 0,0,1,SM-M,STMT +R31 RL 1,1,1,SM-M,LBLSL + CON UCS,0,0 + RL 0,0,1,SM-M,UCS +R32 RL 1,1,1,SM-M,LBLSL + CON FORS,0,0 + RL 0,0,1,SM-M,FORS +R33 RL 1,1,1,SM-M,LBLSL + CON CMPD,0,0 + RL 0,0,1,SM-M,CMPD +R39 RL 2,1,1,R39D1-M,BOUND + CON SEMCOL,PRGRAM,0 + RL 0,0,1,SM22-M,DECLAR +R2 RL 2,2,2,R2D1-M,PRHDC + CON TYPE,PRHDEP,SPECLS + RL 1,1,2,R2D2-M,TYPE + CON TYPE,VRIDT,0 + RL 2,2,3,SM-M,VRLIS + CON COMMA,VRLIS,COMMA + CON VRIDT,0,0 + RL 1,1,1,R2D4-M,ARY + CON ARSEG,0,0 + RL 2,2,3,R2D5-M,ARLIS + CON COMMA,ARLIS,COMMA + CON ARSEG,0,0 + RL 2,2,1,R2D6A-M,ARSEG + CON COMMA,ARSEG,0 + RL 1,1,2,R2D6-M,SWITCH + CON SWITCH,SWIDT,0 + RL 2,2,1,R2D7-M,TYPE + CON XTRNAL,XPRLIS,0 + RL 1,1,1,R2D8-M,XTRNAL + CON XPRLIS,0,0 + RL 2,2,1,R2D7-M,XPRLIS + CON COMMA,XPRLIS,0 + RL 2,2,2,R2D9A-M,BOUND + CON PROC,BOUND,PRHDA + RL 1,1,1,R2D9-M,PROC + CON PRHDA,0,0 + RL 2,2,3,R2D10-M,PRHDA + CON LPAREN,PRHDA,LPAREN + CON FPL,0,0 + RL 1,1,1,R2D11-M,FPLPD + CON FPL,0,0 + RL 1,1,2,R2D12-M,PRHDCP + CON PRHDCP,VUL,0 + RL 2,2,1,R2D12-M,VUL + CON COMMA,VUL,0 + RL 1,1,2,R2D14-M,PRHDEP + CON PRHDEP,SPECLS,0 + RL 2,2,1,R2D14-M,SPECLS + CON COMMA,SPECLS,0 + RL 0,0,1,MODA-M,SDX +R1 RL 2,2,1,R1D2-M,BLKHD + CON DECLAR,BLKHD,0 + RL 1,1,2,SM117-M,VRLIS + CON DECLAR,SEMCOL,0 + RL 1,1,2,SM68-M,ARLIS + CON DECLAR,SEMCOL,0 + RL 1,1,1,SM-M,PRHDA + CON PRHED,0,0 + RL 3,3,1,SM-M,LPAREN + CON FPL,RPAREN,PRHDB + RL 2,2,1,SM-M,PRHDCP + CON VUL,PRHDC,0 + RL 2,2,1,SM-M,PRHDEP + CON SPECLS,PRHDC,0 + RL 1,1,2,SM-M,XPRLIS + CON DECLAR,SEMCOL,0 + RL 2,2,1,R1D2-M,BEGINB + CON DECLAR,BLKHD,0 + RL 3,3,2,SM-M,SWDP + CON ASSIGN,SWL,DECLAR + CON SEMCOL,0,0 + RL 1,1,2,SM-M,LBLSL + CON UCS,SEMCOL,0 + RL 1,1,1,SM-M,STMTSQ + CON STMTSQ,0,0 + RL 1,1,1,SM-M,BLKHD + CON BLKHD,0,0 + RL 0,0,1,SYN-M,ERROR +R42 RL 2,2,1,SM-M,IF + CON BOX,IFC,0 + RL 0,0,1,SYND-M,ERROR +R44 RL 1,1,2,SM-M,LBLSL + CON UCS,ELSE,0 + RL 0,0,1,SYND-M,ERROR +LITERA RES NLIT +STFA FORM 4,5,15 +STFB FORM 9,15 +BASEA STFA 5,4,0 + STFA 5,4,0 + STFA 5,4,0 + STFA 5,4,0 + STFA 5,4,0 + STFA 5,4,0 +XPON STFA 5,4,0 + STFA 5,4,0 + STFA 5,4,0 + STFA 5,4,0 + STFA 5,4,0 + STFA 5,4,0 + STFA 5,0,0 + STFA 5,0,0 + STFA 5,0,0 +IO DATA $+024000000 +START HLT + LDA =1 + STA 017777 + SKE 017777 + BRU STRT0 + LDX STRTN + LDA BASEB+NIMF,IX2 + ADD STRTK + STA BASSB+NIMF,IX2 + BRX $-3 + LDA STRTB + ADD A3 + STA A15B + LDA STRTL + STA A15L + LDA STRTC + STA A16 + LDX STRTM + LDA BASEC+LIMF,IX2 + STA BASSC+LIMF,IX2 + BRX $-2 + LDA OBJ4 + SKE OBJTY BRM OBJTY + BRU STRT0 + STA OBJT + BRU STRT0 +OBJ4 BRM OBJTY +BASSB EQU BASEA+1000 +BASSC EQU BASSB+1000 +STRTB PZE BASSB +STRTC PZE BASSC-1 +STRTK DATA BASSC-BASEC +STRTL PZE BASSB-BASEA +STRTM DATA -LIMF +STRTN DATA -NIMF + AORG BASEA+NIMF+STL +BASEB STFB 2,BASEC-1 + STFB 3,BASEC + STFB 2,BASEC+1 + STFB 2,BASEC+2 + STFB 2,BASEC+3 + STFB 5,BASEC+4 + STFB 3,BASEC+6 + STFB 1,BASEC+7 + STFB 2,BASEC+8 + STFB 3,BASEC+9 + STFB 2,BASEC+10 + STFB 2,BASEC+11 + STFB 4,BASEC+12 + STFB 4,BASEC+14 + STFB 5,BASEC+16 + STFB 1,BASEC+18 +STRT0 BPT 1 + BRU $+2 + BRU STRT1 + LDX STRT5 + LDA STRT3,IX2 + STA READ,IX2 + BRX $-2 +STRT1 BPT 2 + BRU FETCH + LDX STRT6 + LDA STRT4,IX2 + STA WRITE,IX2 + BRX $-2 + BRU FETCH +STRT5 DATA STRT2-STRT3 +STRT6 DATA STRT3-STRT4 + AORG BASEB+NIMF+STL +BASEC TEXT 4,ABS + TEXT 4,SIGN + TEXT 4,MOD + TEXT 4,MIN + TEXT 4,MAX + TEXT 8,ARCTAN + TEXT 4,1EXP + TEXT 4,LN + TEXT 4,EXP + TEXT 4,SQRT + TEXT 4,COS + TEXT 4,SIN + TEXT 8,ENDIO + TEXT 8,INPUT + TEXT 8,OUTPUT + TEXT 4,IO +* READ ONE HOLLERITH CODED CARD,UNIT 1,W BUFFER +STRT2 PZE READ CARD + BPT 3 + TYY =052000000 CARRIAGE RETURN +CARD1 BRM CARD+20 CLEAR W AND DISCONNECT + SKS 012006 SKIP IF READER IS READY + BRU CARD+4 + EOM 02606 START CARD READER + LDX =-20 + WIM IMAGE+20,IX2 READ 4 CHARACTERS + SKS 021000 SKIP IF BUFFER READY BEFORE LAST WORD + BRU CARD+12 + BRU CARD+17 READ ERROR-CARD FEED + BRX CARD+8 + SKS 020010 SKIP IF NO BUFFER ERROR + BRU CARD+17 READ ERROR-DATA TRANSMISSION + BRM CARD+20 CLEAR W AND DISCONNECT + BRR CARD **EXIT** + ERR 'B' INPUT ERROR. RE-READ LAST CARD + HLT + BRU CARD+3 + PZE *ENTRY* + EOM DISCONNECT + SKS 021000 SKIP IF BUFFER IS READY + BRU CARD+22 + BRR CARD+20 *EXIT* + DATA 71 HICOL. HIGHEST CARD COLUMN +* PUNCH TAPE +STRT3 PZE +PNCHT LDA =BUF + STA PUNCH+24 + LDA BUF + RSH 15 + ETR =037 + SUB =1 + STA PUNCH+25 + BRTW + BRU PUNCH+7 + EOM 01644 PUNCH TAPE WITH LEADER +PNCHT1 MIW *PUNCH+24 + MIN PUNCH+24 + SKR PUNCH+25 + BRU PUNCH+11 + SKS 020010 + HLT BAD PAPER PUNCH + EOM 014000 + SKS 021000 + BRU PUNCH+18 + EOM 0 + CLR + STA BUF+26 + BRR PUNCH +PNCHTA PZE 0 +PNCHTB PZE 0 +STRT4 RES 0 + AORG BASEC+LIMF+2*STL + AORG LITERA + END +*EOF* diff --git a/890548/890548-24 b/890548/890548-24 new file mode 100644 index 0000000..b74fc6f --- /dev/null +++ b/890548/890548-24 @@ -0,0 +1 @@ +Ib)W%ppp @g&gsppp vg&gsppp v@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]1@X/XCXs@XFC@XF*XXpksE k1Chks,v@O,7@EXkp@FkpEX,RXd@%XXE@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]ugX@[X*@pk/ ,8X,2X,1@X[WChk/X XX]@[XF7Fk2X[hXvXJXXEXkp@)Xb1@@@@@>@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]Fp@@@Cpk4p@ ,yChkup@@XC]p,zChFCp@ ,;p,|Ch=@@@XCOp@@XC]ChdCpdCp@@XC]ChdCpdIp@@kn@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]mkCXC]p,zCpFChFpCChpE/@@@@@@C@TaX,=@@@@F@CO@@@@LCO7J#Jg)&ssTJJ*@@@@Fp@R ,>%T@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]s C E,pm@pmm@CyhCvmC@C)hCum@C,hCumEhC7mF@C1EC]m@CyhC8EC]XdXX@@X@@|@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]C8XdL@@Cy@TaXm@@Q22W%d%sJ))&)JJJ*@@@@p@ChkppmIChk>pmJChb[Chbpk4Ch,&Ch,gCh,hp,7*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]=m C,,hF,hQp@C,,hF,hC,,hp,hEhmLCh,EhmLCh,OpkuE mLCh,E mLCh,p,7Ch,RChk2@g@@@ @=|@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]^Rh@&XF7p,7@p@ChdJp,7@ p@ChdEC@@@@XF@@E>pE>m XE,E E mChksmOp%hm@mQy&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]JOE@@EW8@F@ksWp%hmR@m@EOFp@,v8mTXm@E @EOFsEsp%hm@mW@EpmXChdFpmChdXdI//@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]hyEX@dE@4hm@m[@EdpmChdFpmCChdXdI@dE@4@@Ed@TaXm]@@@@2@@@4Es@@@@@@Em@TaT2@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]R&EpXm^@@@@2@@@4EE,%g4sJ)QTJ))&)JJJ*##WQ#J&)dQsJ*@@@@@@%@@F@^XC7@@@@Wp%Fp@O ,>Chk1&@k@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]I*FE mLChkvC8k8hmRpmW@%@Fgp@Q8%W8@F@kv@FChkvFp@L8kvhFa@Fa@F]FFCk8EFC@@F]@Tak/z@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]1F Xm@@@pk1Ehk8p@EFCpksChk1EFC@@@@p@W8%C8F=p@pk1ChF>XF@F|pF|m @@@@EF*@@@@&|7z@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@u@F8XF1@F|EF78@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]gF|@@@@@@@@@@@@@^XF8@@@@pm X@C@F| mE@m@@@@XJE@@@@pmXChF=pmaChF>XC@@F|pF|m @@@@>7>@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]b^TE F=Tp@@ mEJ@@@@Wh%p@Fz@CChk7p@Fz@FE mLFk7pF@#@L@@z@k@J1@k@I @k@kFXk7mI/@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]b,@n@4pmbChdFpmCChdXdI@dEk7EXk2W8@@@@@EXEXk2@Jmp@W8@F@k7Wp%ChkmWp%[ChknWp%|@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]]hm#@m#@IW8@F@k7m#@L@XChk/m @QX[@RXIW8@CpmdFXk7EXk7@EXpm%hm&Ek/pmg;7@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]8IChk,C8k/pmhChdFpm)ChdXdI@dEk/W8@CpmdFXk7EXk7@EXEXk2@Jmp@W8@F@k7Wp%ChkmWp%[Chkn;>@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]np4Wp%Chk/Fp@ ,>pF@hkmpvhknpvp@pk/m @IE m*p,Chk/X[W8@CpmdFXk7EXk7@pEXEXk2u;>@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]IL@Jmp@F@k7W8@pmkChkWp% m,XdppkmEhmmChkQpknChkRWp%F2 IChk,W8@F@k7Wp% mnpk,Fp@F m,kz=@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]& IdXdppkmEhm/ChkpknChkTWp% m,XdppkmEhmpChkpknChkpmJChkWp@X%@I=W8@F@k7Wp%W8@F@k7=m@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]p|I|Wh%ChkWCpkXpm1ChdFpm2ChdXdI@dEpm1Ch%pmsCh%[Wp% ,7XdppmJC,%F%pkmC,%F%4knCh%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]2%JTF@%[@J pm1ChdFpm4ChdXdI@dEW8@F@k7@JEEXW8@F@k7@JIpmsE %[F m)Fp@Cpdpm1ChdFXdI@dE7@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@] 7J,EXFXk7k7W8@EXp@F@k7W8@pk> mIQp%ChkzX%@J|F@k7W8@ ,8XzEXk2@ QC,,gF,gW8@p,7z/;=@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]^> ChkpF@k7@ EXWp%hkz mEmupmvEm7pm&XXJEXX X ]pmJChkmChknp@Chk/Xadpm8ChkmpmJ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]| Chk/pm)C8ky8kX /kyW8@p,7ChkpF@k7@ 1pmJChkmpm)C8ky8k[X /X #Xb]kyEXWp% mhkz@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]WL 4W8@F@k7@ 4EmupmvEm7pm&X*XFpmJChk/@ )p@Ehk7Ch,@W8@F@k7Wh%W8@F@k7C8,I,@p@Em []@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]LmLL@L@LQWp%W;F@k7Chk;p@E,@L@LWp%W;F@k7Chk|p@Em7@L^@LaWp%W;F@k7Chk=p@Emu;^7m@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]mnLd@L&@LhWp%F@k7Chkz,Ip@ ,8Xz@L/X CWp%XREXk2@ OEX,F@Lyp,Fmy@Ly@L|pkEX,CXXJ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]>%L|Fk>W8@F@k7@Ln,@W8@EX@@@@pk;hk|Fz@Chk;Cpk|pk=hkzFz@Chk=CpkzE CC8,IX pk>X*@ Xnm;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]su Tpk/,@ @ 2XWv@ mXF@ 2X ]XadpmzChkmpmJChknChk/pm)8kX /pm;Chkmpm)8k[X /X #@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]2R ,Xb]pmJChkmChknp@Chk/Xadp,Chkmp,ChknpmJChk/pm)8kX /EX,F@ @Wp,C ,>XdppknFp@L=>@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]7pmJFp@Fp,E m F,EFp@FCpkpkEX,pm| m,Xdppkmpm=hknFz@LChkTCpk@hp@F,E ,7Xdppmyn;/@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]W,F@%pkmChkpknChkTpmJChk@hpknChk@ pm)Ch,8k[C8,EX,F@/@=EX,@2@Opm>Chkm@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]pR4pmJChknChk/p,,X /Ch,C8,@Opmy,F@O p@hkFp@FCpkmpkhkTFp@FCpknhkTpmJF2@F@OgW]@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]LXOL@O&pkhmF2@FChkmCpkn@7EX,C@Opk m,Xdppkmpn@hknFz@LChkmCpkn@O&pk>XXg@O#@O&pk;;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]zOdX*XFpmJChk/p,,X /Ch,C8,p,Ems@O1@O;hmJCpknCpk/Fp@FpnFp@FCpkmp,,X /X #=@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]p>O|Xb],IFk>W8@F@k7@Ln,@W8@EX@@@@C8,Jh%EnEEFEp@Fz@IE mLmLWh%p@p@Em @;kys@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]sIT@WWp%W;Chk;p@E,@@^Wp%W;Chk|p@Em7@#@%Wp%W;Chk=p@Emu@*@,Wp%W;uz=^@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]&,Chkzp@ ,>E mLChk7p@ ,8Chk>E mLCh,1Ehk7Ch,2,JEE@@@@E@k>@>EzhmI@k>@QLEXk2@QEChk>n7@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]X2QEzXk>@QIXQgEzChk>XRdEzEXk2@QWFk>C,,gF,gE,gXd#pk>C,,gF,gEzCh, 4,gF,gE@,7@Q]@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]usQXd#E@k>XQg4,gF,gChk>XRdp, E@k>XQgEz@@@@Ch, C8,Lp@Ch@@X X ]pk>X*@Q2@Q;XWv@Qv>s@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]= Q4XF@Q;pmJChkmChknp@Chk/XadpnCChkmpmJChknChk/pm)8kX /FQkFk>pk>E@, @RJ@ROX*@R >@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]FRL@ROXWv@RpR m,Xdppkmpn@hknFz@LChkmCpknpmJChk/pm)8k[X /X #Xb]pk>E@, @Q*,LEQg;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]X=Rd@@@@pmJChkChkQChkRChkChkTChkChkmChknp@Chk/Xadpk>Fp@O m)C8 p@WpChkmpmJChk/pm)8k=v@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%bJR|X /pk> m,Xdppkmpn@hknFz@FChkmCpknpm)8k[X /X #Xb] ERd/>@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]XQ&)W)&)W&)W&)W@@@@Ch,sC8,4p@8m|Fp@OCp,m@@ ,>E@m@p,vE@mF@bp,vE@n@%p,vCh,Ck@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]&p@WpTuE@,7@k@TCh,pmJCh,p@Ch,Fh,sp@F8@CCh,Ep,s mpmIEXkz8mvEXk=8m&Chkp,s,4v@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]Jb>EREXk|@TI ,>Ch,Cp@WpvCh,WpvCh,@nEXu@T ,>p@WpuE@,7@TQ@TCh,pmJCh,@nh,v>7@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]ITCp,FCp,EXkz@T[@T EXk=@T^@T EXk;@TkF,FpnECh,pnFCh,p@Ch,Ch,sF8@JCh,E@4p@Chkpmk;[@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]QETnCh,pmJCh,p,sCh,E,4ERX#spR)4p&dpd8pdvpg&sps)pd)Wp&)p%&gp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*@F74p8dpvdpg%p2sQp2sRp2s7p2b2pR)7pR)dp)Xp2bp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@EF@^R))p2bRp2b%p24RpQTTp24pQTp2b)pd%p7dQpQTdpd4#pTup)2Xp#2Xp2bdp#T7p2bQp2bWp2bTp#TRp#TQpQ7p@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@] CWv@@@@C8,h,8,OpF@E mLX,@XEpF@W@@@@WzFWvC8k,,EWvp@,7C8k,,EWv@@@@XWv@XRk,]s;7@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]T2Xp,@@,EXJ,OF,Oh@@pF@EhmX,@XXd#p@,EXJ@@@@XWv@@@@k,p,8@@,h@@,/Ou@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]JQX&EX]@@@@C8,Qh,8,RpF@E m)X,@Chk,pF@W@@@@XWh@@Cpk/pF@Fk,pF@Wh@CpknWh@CpkmFXg,Qn|*W@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]kTX>EXg@@@@XkW;@X1p@,7C8k,,QEXg@@@@EX,R@Rp@p,Ch,RE mLCh,p@C8,Q,pF@E mCm^7m@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]guX,OXd#Ch,pF@p@p@hk/p@hkmp@Chknp@,QEI@@@@hdCp*h,RCp,T@k@@@@C8,Qp,7,T8*77@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]T@nh,8pF@E mCX,@Chk,pF@@@@FW@@@/C8,Tp@Fk,Wh@Cpk/pWh@CpkmWh@CCpknF*,QE*/ T/@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]2FW;@u,7C8,TC8k,,QE*@@@@,8@RC,,TE C8,Qp@p,E mLX,OXd#Ch,E ,TEhmLp@p,TEhn//;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]@@^Chbp,TEhnCh#p@@Ch@@bC4,TF@,Tp@,QE @@@@C8k,h,8,pF@E m)X,@[@pF@W@@@@nWh@|;]2@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]vCpknWh@CpkmWh@@Cpk/pF@Fk,pF@F*E*p,7Fk,pF@E*@@@@EX,RXd#C8,W,pF@E m)X,OXd#Ch,*/W/@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]zX[pF@hk/p@hkmp@hknp@C,WE[@@@@C8,XE k>Ch,Ehmph,vF4,Wp% mpm Ek=pm&Ekzpmv[7@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]pm[&,XE[W@@@@p,E ,OEhmLCh,p,O mpm Ch,[,4,[ ,8C,,[[2,C8,C8,4,[[|@,[@@7@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]EW[>4,[C8,[|,FT,[,C,,[,[7@@@@p,8C,,O,pmIW@@W8@@LC8,]pm&W@@W8@@R;uu@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@])>C8,^pmvW@@W8@@XC8,p,^Ch,bEhmLCh,%X,@%p,7Ch,p,]Ch,aEhmLCh,dX,^@mp,7Ch,^p,u@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]=InCh, EhmLCh,#X,]@up,7Ch,]E[h@@@@p,gCh,hp,7C,,hX^)hmI4,d@mv@]FX%Ch%4,^X%]@]FCh%]7@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]C]F4,%@m&@]OX%^Ch%^4,X%@]OCh%F@,g4,gE@mI@]T@]#Fp@ nIp@Wp%[,g@][C,,gF@,g4,gmu@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]&F]^E mLWX%[@]bh%[@]OhmIp%[X%@]1F,gE,g@]k@@@@4,gmI@]gp%,gC,,gp,&Ch,gp%]X%@^@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]RL]vF,gE,g@]z@@@@4,g@mv@]vp%,gC,,gp,&Ch,gp%X%^@^QF,gE,g@^I@@@@4,g@m&@^Ep%^,g;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]W^C,,gp,&Ch,gp,7Ch,*pmCh,)F,gE,g@^@^d4,gF,gmI@^X,)Ch,)4,gX,*@^Ch,*@^p,&Ch,g@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]p^&4,gChk>Ev@@@@p,8Ch%Ch%Ch%^p,7Ch%[Ch%]Ch%p,E m)X,@Ep@Wp@@Fp@ nIp@Wp@@ ,8p@p;|R@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@],1^>WX%h%WX%[@Ch%[p@@^sE^)@@@@Ch,k ,8Chk/C8,,mI@[X,*X,)@Q@[ m,Xdppkmpn@hkn>7@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]&Fz@LChkmCpknp,kEF mCh,upmJChkmChknp,u nJp@Wp @hkmFp@FpkmCpkmhknFp@FCpknp,uFp@Ch,u[m@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]p)nm@apn h,kEmvpnLEm&pn hkmFp@LpkmCpkmhknFp@LCpknp,k,,EFpppyppppppapppbppp#pppd;/@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]L Fppp%ppphppp)ppp2pppsppp4pppupppvppp7ppp8@@@@pmJChkpk> m,Xdppkmpm=hknFz@LChkQCpkRE @@@@@n@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@][ ^pmJChkChkTChkE ]@@@@C8,mpmJh,>nW@k* h@ ,hk* k,mE #@@@@Ch,p m)Ch,nC8,mnO,,m>>@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@];L vFz@FF@,n vCp,/h,>@mJ@aWEX,p@aFp@FW;h,mCp,/C8,nhkmXa[pkmhknXa[pknhk/Xa[pk/hmJy@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]R,aXa[,/p,nEhnInW8@ m)p,vE /h,/ vF,m@ 4@@@@,na@aaFz@F@a]C,,mF,mEa[@@@@Xa>>n=@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]Fa&Fz@LChkCpkWp,7hk/Em#p@Ch,ppnQhkmEX,pFp@FCpkXpkmhknEX,pFp@FCpkpknhmJEX,pFp@FCpkEad^=;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@],a>@@@@pmsChbpbhb[EhmL nRChb ,>Xm2@bTpb nF2@FF@b@bCp@L nTpn@Chb[CpbEa>pbF2@Fm>@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@uCbF@b@b@b8@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]ub]@@@@EXdJ@b)pnChdpd ChdFXdI@dEpdEm X#&EXdEb]XdC@#p#m X#1Eb]@@@@EXdJ@#[pn7@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@],buChdpd ChdF,Rp@E m)p@X,@#OWp@@Chk>X Wp@ChkWp@ChkTXdI@dEpdEm X#&W;Wp@@,8=[Wy@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]k# @#J@bypC8E@dI@#[pmLChdpnXChdFX@@@8dEpdEm X#&EXdEb1pC7E@dCEb1XdC@#p#m X#1;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]#%Eb1@@@@@@#g@TaXnE#&#2sJ&4sg4sJ))&)JJ*@@@@@@#2@TaXn@@@@E#1@b)28dR&#J&4sg4sJ% Jp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@zs#=))&)JJ*@@@@@@kX@@@T@hXO @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@EWOdE@@@@@@k@@@@pXdLR@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]=zd @@k@@@@FdL4dLXn[EdL8m7n8n]ChdX#@@@@EdL@@@@FdX4dXpmvm7@dpn^ChdaX@@@@@@EdX/>/y@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]|Wd#@@@@@@dd@TaXn@@@@2@@Ed#g)&W)QdJs&&JRW*@@@@C8%hm)Cp%FFp@CpFp@Cp@F@%F@d4CpknJ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@uhd;hm)Cp%FFp@CpFp@Cp@F@%F@d=Cpkm%Edpp>@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%@%JR&&s2s)QgJJJJ4%T%sTJ)&)TJJJJJXb24dJ))&)JJdd&)8J&u)#&vJJJ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%E8@k*)W%JJJ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@] ,v @@@@[@C@@@@@@ @TCX@@@@@@@@@@F@@@@@@@@@@@@@@@@ @@@@TC>@X@@pppp@Og@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]k8m@C@@@@@@@C@@@@@@E@@2@@@I@@@/777@@%@@@TOpC@@@@%@Ez@TEu@%Q>@@@h@@Ezp@@@=&dp@O@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]m&@@@g)&p@@k,@@@Cp TQsQ@pQp@8@@pp@p)p@@@k@@@I@@@@@@X@@@@@@@@@%Tp@@Cg&gTkppp@@@ppp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@hy@m>,ppp;pp@pp@@ppp;8@@@)2p@@@&@pppWp@h@@@@@F@@@OppQIpp)IppI@Os|@@@LpppkO@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@mgn@@@E/&@@nW@T#,@X#yC@@@E@@@@ @@@d,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ *yh282spppuh2824ppph28d&pppCChR%&pppCT)gppppCvdsQgpppdC)2upppROg)%spppd@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%JXgs8&pppd @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%)zn @@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@d)zn @@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/890548/890548-44 b/890548/890548-44 new file mode 100644 index 0000000..763eb65 --- /dev/null +++ b/890548/890548-44 @@ -0,0 +1 @@ +gsI,,E,FgQW)&)WR@@@EkW)W%Oh4EOR)dWQ2W%dO2s)sC%sgQ2[)QTROR)4E FQWgQ2RWb24dWgQ2v)s7)QTO#TQWvT%sO24RO@@@@@@@@@@@@@@@@g[%sRO2sQO2bQE I,1JCEFCO2b%O%TOd%[)s&gWgQ28W)&sWgQ27gQ2WRb)T7W)QTWgQ2RW%)&sWgQ2 COs)^@CCLO2bW[g)&Wg[g)&WgWQT)[)@@@@@@@@@@@@@@@@gzF#2s[TQT#2sW)v%T7gQ22[2&)sQT[R#b2sgQ2CO)T7[%2Xgg)&g)%s%QdWg)%sE|EWQT)#&FW%s#&O74[Q###&O2b2WTs#&s8gR)svOs8gF@E;FOg&sJ@@@@@@@@@@@@@@@@ggOaQsOaQOQ%2 T&O&sI [R%&sOgyO%&gO2sR[RWdd@C@@[%TddWh282sQ##Od)W@@@@&d7WQ##7R@@b@@@@ [gs))Wh2824W&d2&[Q##2&Wh@@@@@@@@@@@@@@@@g128d&W&d#&WhR%&[Q##RW&dROR))[#d2FEOX#sO2b) ORTE^ 7#gg)&ssTE*EO)2XJ@O2bRJR@@@^@@@F@@@@Q2W%))O#TRQ#J@Q#s@@@@@@@@@@@@@@@@g^sJ@@@Q#d@@@FQ#ggQg)T)gWdsQgg)s)[Q2W%dkQ22W%d%sW))&)O#Q^@C@@@@@Wg)&WgELWQ)TWQ)T[#2sR&s[#2s%7s[#2ss&gO#T7^@@@@@@JEOR@@@@@@@@@@@@@@@@g z)7OQTT[QT)R&s[QT)s&g[Ts&g[TR&sORgsW#&#WW2&#WWTsRJWR))WQT)R@CR4&@@@@@JO2bd@C@@@@OQ7@@@@@@E@@@@[d&T))O&)&@F@@@@@@@@@@@@@@@@@g@@@@@&@&@@@@@@@E/O777W%&T#J@&@F@b@C@@@@@W%&)WR&&sd#)dFFF[Rd2WW%g4s##WQ#[&)dQsW%sRTQsQ@@O)sRJEW2%sO2s7@@@@@@@@@@@@@@@@gQO27[2d&TJX#sW2))W2d2W@OQ7O7QWQT)27vT27Ts7O&dW7sdg7O)2O8dO2bJ@O#7O#8W)T%sO7dQO77QWasQR#[)Tg&g2[%T)W2TQsQO@@@@@@@@@@@@@@@@g)vQTd[##WI@C@@[R8)W)T#&g  &@F@@@@@@@[R#%Ws&@@@@@@@@[2T#2s[2)#2sO&dOg)& @[g&g#&gJFWg&gsWg&gsWg&g2&@F@C&@@@@@@@@#@@@@@@@@@@@@@@@@gC%Q#)2XFIb@@@@@@)OQR[%&T#QRFWT#TQsWT#T&gWT#%7JOd4#W)#&g2sW%T)[R#b%7sb@@@@@@@^@@@@@@b@@@@@@@[2QT#2s[QT)22[R#%b&g[#QR)@@@@@@@@@@@@@@@@gL)TW%Ts7gQbW%T)W%T)CJ[R#%b#%[&4sg4s[T#2s[dQb#QRT%s7OTs7JIW&)#g&g)&d)J@ORQTQs#[8)#W[%2s2sTQsWTQsR@CWTQsRQT)g%2@@@@@@@@@@@@@@@@gg CWTQsRWTQsWTQs[QT#2sWTQsg&gT%2%2WTQsWOsQWWTQsb2sQ)@@@@@WTQsXWTQsaW#%W#%7gWTQsdWTQs#WTQsyWTQsgO)8WTQshWTQs)J@@@@@@@@@@@@@@@@gF@@[)#2sJ@WTQs2)Ts7&@@@@@@@@Wg2sWg2sR[&)W#%Wg2sWdd&u[g2sdgQWg2RsQWg2Rs7[g2sRIW)2u[g2sR[g2sR[g#42XW&)Ws7W&)W#2Q&)W&)W@@@@@@@@@@@@@@@@g4]&)WOsQOs7O#RWg&gdR@FW%2sW%&%2[2ss)4O#2X[2sQT)J@C[&)sdR&)sW&)sW&)dWTQsQ@J@Od8OdvOvdOg%O)XO24OQTOTuO2bTJF[QTs@@@@@@@@@@@@@@@@g;bdg7QTQT%[QTs&g[)sdg7)[)R&s)%))CW2)#W#)&sW)&s&s%W)&sCW)&sR@@W)#&@F@@@@W)#&@CE@@@@@W)#CTT@@@@@@@@@@@@@@@@gJ%[Tsdg7[WQsdg7[WQsdgQR@@W2&)s7[2&)s&g[2&)sQ[2&)s7[2&)sQ[2&)sQC[2&)sQ[QQTs&g[)QTs&g[QTs&g[QTR&s[QT%7s[)QTR&s[)QT%7s[QQTR&s[QQT%7s[@@@@@@@@@@@@@@@@g pR#bs&g[T2g%WR#b2WR#b2WR#b2CJ@FWR#b2WR#b2E[R#bR&sWR#b2FWR#b2WR#b2WR#b2IWd7QQTWd%QQT[R#b2@[R#b2WT2gWT2gO77RdbsQdbs7Wdb#RR&@F@F@@@@@@@@@@@@@@@@g|@@@@@WdbsdgWdb#R@[X7sQR QI )I Iyab#d%h2s4uv78WgQb7JCJF[T&##WWgQbQWgQbCWgQbWgQbRWgQb[gQb2@&@@@@@@@@W%7)@@@@@@@@@@@@@@@@g]bT%78W%7#&g&@W%7sdg@W%7%&@@@%7sO7QRW&4s2&J[QT)#%W#&))WTs2&W2&))W2&%%%O&O2u%O&gT^@@@@@@#&d#2s2&@@@@@@@@@@@@@@@@g11d#28dR&#OvsTOg#gb@Cb@@@@@@@b@E@@@@@@[g)%s&g^@@@@@@[gQg)&gWgs8&[ddd2Wg)&W)QdOs&&ORWOQ7b@F@@@R&s7R&sgR&&s2s)Qg4)ds4%T@@@@@@@@@@@@@@@@/X%sT[)&)T#Xb24dW&ud2W[dd&)8#&u)#&vW#QR#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g)7v222222222222222222222222222222222222222222222222222222222222p)&L)W%Lppppppppppppppppppppppppg)&W)Qd%On[C=L2=JL&FsL^z,*mJn[[L@@@@@@@@@@@@@@@@gQ**>L*&Lu>Rnbd4FWbT4[J18Tbp&)pQ%8pg)&W)Qdp%psXp2T2p2sQ%TQ)TpR%Q)8p#Q%W4QW%OC^CFu ^,nFvJ,>^CL,>&^Lv&>&^J|,b,n^F[EL@@@@@@@@@@@@@@@@g#7vb;1d&%Q)X% ]zJ|nF8I^R]J[FbJ>FLz,)a/Q22W%p2& 28dR&#p&4sg4spdT4d% mzJ|n1[^v&>&^b*#dd)b/Q22W%pR 2&4)pdT4dp&)@@@@@@@@@@@@@@@@g)[p)W%%I|2J&@F|4)p2spRgspps&pgQ42pRsv%p#&QT%WpQ%Tp74s&%&JuRn^2*,n=L2=JL&T)v2spRgsppQsp%%sQ#yQs&%ps&pR8gQ22p28dR&#@@@@@@@@@@@@@@@@gnpp&4sg4s%Rn^T>^@^^CLk[JL[OJ[L4nFvWz[^v&>&COm%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%d)24Rg)&W)Qd2p42@@@@@@@@@@@@@@@@g;T&,&Lz,1T)g&,>CL41Eg)%s%IL|4>F&R*d1%&%%I|b,duOFEJmF# J*d1 Qsp#Q2spFb&J=L2=JL&2^d;Jn@dT1)dQ%T)p2pT8%Qdp#2s2%IvLznEJ@@@@@@@@@@@@@@@@gLbmF# J*d1&% pp78y*1@s^|FQCC )&sJk m a%1% F2gaR*nkJkR#&s Jh^)%,I|%]EI,LnI)hvT|EET8,,E*)LL%L,L,4L&T^L4=u2a d,&yIE@@@@@@@@@@@@@@@@g=4I*^LLy,v,|*v%8L%CCz saWs)8pQWQ%p&%p)QTp))&)=>T@@ Cm*@dk,18J;,y#)QQ n;T,y*8118Q*kh18T*)sT*XR8[ #)R@ /2hJ@,%;T*XL28,@@@@@@@@@@@@@@@@gX2L)h18T*)sT*CshTT k;T*XL28Qs ,)h18T*)sT*CuQ %[T*XQ*k#uh7@ CmFW8@ Cuh n &QLs8LkX*4sCmO@ C8h k,yXJ2*XT*)sT*XIJ*28LLy#mLQ @@@@@@@@@@@@@@@@g&aRsO ­@8IsR1*y*#yh@ C8hC@ph4*8,J4*82|XJ;y*42h18T*kJ4*2)*y/)[J@1Jy]84*8,J4*82|X[Ly,X*28h,1yCm[*@aRs I C)]@ CmQ )k,@@@@@@@@@@@@@@@@g4)18J;,y=8Rs8Jyh#mFW8 gJy]s4sI*yXLy=/)^J@hk*y8R*y8*28h,1#m*@m,LyXT*)sT*FXJR*8JXR*;y>/2hT d *y8h,1#h@J*zn^d2bnJJb%Jn4@@@@@@@@@@@@@@@@g ,@^aa In4>2vEJ*uJ ^b JTv^4&2vEJ*uJ&@4]%@ ,v^CLnF[CEJ*uJg^dv*n4hdbhpJ2zn^Jb%Jn|sLn*&Fp]TJ vR*/^C^bOFRnC@@@@@@@@@@@@@@@@g sLnFRLbnEJ*uJ d# [LnRm^C^4nEJ*2mJ,*n[Xd#a Rb,n^C^uL4&Jb%Jn[X4^%@Iz[*dF[CF L[>RR z%W&CI% sR@d%@@@@@@@@@@@@@@@@gTm Tu^v&^F[nJb%Jn[Xd%a LRb|b,n^T2FvCL*^bbnL^b*vTp,Rh^%ECRI@@]b *#J&F2n=L2nF[n,*&EJ*uJ 4&pT,@@@@@@@@@@@@@@@@g pdg@@yh @ pm@Q T ELR@ 4)O*Jh@* @]Jz%^*@C*bE @,d @O[W@@]d@ga@z)@@=8@ a,8@C72@aX@O# I=R/yE|>h@@@@@@@@@@@@@@@@g1* @;O4@FTREX@FXRE@@]bs @> O*XJh@CE=@ I=y@ v^Eh@ *d@C/2pvuC1[TXI=y*u@du @;@ [zmLvLy,,&y@@@@@@@@@@@@@@@@g>8IEI*^LLIuvETX|EE]TubX@C;]pE%J&gI^E[ gW]O &TO/@@]JIdd4* J[FT4vX]>@]Ty@@zTasJ@mpya4@ >)vC@R4&T^@@@@@@@@@@@@@@@@gvJLII%Ezha7@ =yCp@C/2s2T@&I,22*18zR,ya>)z= T&XuIzhT||Lu,pzh LWg@@@CdbpLT7p2p#pg)&ssTC)R4h2&Cdb@Op@O/p@]@@@@@@@@@@@@@@@@gW J@ ELCb z@@@ @;^ @Cdha CJ% b&p#Jnkag ds 2ma)d*) #%a%1%a )&sJCb z@@zbX;@pdsJ#1aILh*Cm8a @@ @yJa^k @@&W#@@@@@@@@@@@@@@@@gT @Cph I C8 @CkhCLL@ @|@ @|RO @Cmh@C# OdT@&4**X,J8*ypp]EbFa4Q8R@zsX7@LJ#L&CLvL^uL4&Fb^,n]OFCLnOI&@ @y>@@@@@@@@@@@@@@@@gTaEdhQ I2#L&,4&CLnOJbXE,,C@*[*zb b CpCnh @g*sR]8I)y48;T*@yEd2Q Jz#L&ELv&[L*nL^CLn 4@ @|vaF@)yRJ8Ih4*XT*h@@@@@@@@@@@@@@@@g>*J4 yEdz I2 J&C@vu@8 @XW*8@CsXaOXg1kmRs&kRC%X 8@C# FEzn@ @|v1F@&sT8hs*48hs* yE%@@ @|vTIF@b2hs* yE%@ @84a^k#h@@@@@@@@@@@@@@@@g//OORs &kRCph z@@bQdX/&pkdk dsg%aI)%g dka2kLC#a @@O bE@ @|J OpdT)F@)*),h18y|LsXQ,21 ,IEL@ T,IE@ T ,IEQ Tz*[JL^= @@@@@@@@@@@@@@@@gE*Ln^ELv&[L*n[L,T48TF@@naRpp8@C# @ERQXaF]b4a @ ELv&[L*nFvCLk[JL[OJn[^W^4J>W^L*&|sLnmn @Cu @C% @@Rbh@@@@@@@@@@@@@@@@g/asF*n#a R/ @C%aW@@RbWaE@IR J&,s^@@E @ @yT@Cdh 8@@Ed@ @yTX@C%a@@RbX # @Cvh p7[ @@I@@bEh@ @=p vk#h@@@@@@@@@@@@@@@@gvJ^# m E %LgEdCu @C%  @C&Xa@@@IQsgm a2k %ag a&2ka&ps%aL,,Cdha@@ObX@@E4@ @=2E 8@ @yTWX@Cdh y@@bX@@E8@ @@@@@@@@@@@@@@@@@g ;yE 8@ @yTWh@Cdh CX8@ @yTF L@k4*kJ4*2)*8Q,y8Rs8*2 yTIIF@dshyXRs 84a^k @OE J4z&Rn4uF[n4zmJuO@8@ @84 vk @I@@@@@@@@@@@@@@@@gL@ @yJE v@@O @ @=X7@J|,v[^v&>&^CJv@^FRnXE>@ @yJE v@@OC@ @=X7@ ,vFWbT4[J^v&>&^CJv@&FRnXF@@ @|J8@@hCu )&sJkag @@@@@@@@@@@@@@@@g@QaR*b) s O)gaR*g R)% %Lg*)a)Oag @a,)%#R*g RhLasX@ @z2X@C1@a @RbF@ @yE 88L@hQLs8LkXRsXJ44sT 8dXX@Cd8ab@@bb1/ )dkaL@@@@@@@@@@@@@@@@gLkmam R)%aR*b) sJC% @@ObXp@@RbFL@ @|vE&Od@JRT2L*>d2bnbTOdb%Q%sO 2m %Lg*hC# FE;@ @>C#k#hyOLs g dk1 J) %LgsJ/ p*b@@@@@@@@@@@@@@@@g|hkRC1 @@RbFLp*8L@ny*y8J)sR*X[T*X T8|*8Jy) |vE&X@ @>RE&[E@J&L* OFEJ*uJ  FC@T,pOIn IOnLbORhbXE)@ @>^E&ad@J*[@@@@@@@@@@@@@@@@gbL*zn@nFv@g^@>Fv@pahy@7%sO 2ma gag 7 C7 E7 7 JC# FEzn@ @84p@C&X L pRknsgagh*Cph L Fha#@@O b)@@OdbWz^)W1)g1 m @@@@@@@@@@@@@@@@g=d hk&#aR*g RhC#a* @haLpzp@C# L%88 I>]OF*n>^EJ*uJ&*OsX 8@Cy [Cv@gy4|X8Iy4hs 84[@C*mL @ @84CI^@F2Okhm, @ @|@ @;@@@@@@@@@@@@@@@@g 2[#Cn @ @2W# @Cph L pTknsg ,#dka#;X@ @zzE[sCC @O@@vbhp;h@C# L%88@ @|JXX/4Q&> ]b4a Fv QXaF@]pa4a FOm bC;XXp@@@@@@@@@@@@@@@@gW1CFE CJLCpL @ XIE@ @>v p g IO)&k &p*gE%)Cdha#LJn@ @|dp@Cg8 RaF@, *y8IsRy8 X,LyXT*)sT*@yTE@@Cd8 C @C%as @O4R@ @@@@@@@@@@@@@@@@gs1@|vE&E@J2[*4u*zL^EJ*uJ Rb& @OdbFLp*8@C#au@@O p]%&#g &p*gE%)Cy8a#LJnC@I2#L&[*d O%b@8p*8@C1as @ @X &@@C%as @@@@@@@@@@@@@@@@gy@OIT b44 OgbJ@2sLk@O bXQ L* OdbXQ &nX @ @y&@h@%4*yzT284zJ =*]z@*yz*8T,k,2h18sL2y*4 |J@v#zzE]s1@X Q@a7 @@@@@@@@@@@@@@@@gpa@vb^@ @yJE@@C7a4#h%I *k dk1 J)aR*g RhC>@@Cph  Rkg) ,#dku1Jp@C% TChydkg g ) ga#%g n#Rdbnkam R)dCph  Tknsg ,#d*@h=d@@@@@@@@@@@@@@@@gagR#&&1a&#k p#J)FsJ/a )&sJkdQsX7@Jvu n4*nFR]J[Fb LO8mpCI/aOLs g%ag d*ns JsJ/am R)aLmaR*g RhCyXa#LJnC@IzJb&b22mRRhO4d@ @ @ @@@@@@@@@@@@@@@@g;g@yJE@@C%ay @IE@ @zv^ @Cdhaz@@bO%,mE@JFTL>CJv,vm LuO@@Ob@ I@>v pgRk,sJ)adgR#&&1a&#*Cba @Ozbh@ @|JI@;CnC z@@@@@@@@@@@@@@@@gmdsX7@ sLnFJTn4uFR]J[FFLz/dOm ybsX@ 8m2bC@p,C1@CpOba 2Om#@m4*h*XI4hy),Xhs*8I)1[4*@yJE vk @IE@ @p^ @Cg8 Xh@C@@@@@@@@@@@@@@@@gE7 JyR@h*L*XLy8h)*8IX@|7@T,pI@ @|J@&aX7@JmJ*J&4*nFR]J[Fb LRb#@@d@ @yJEg4@ @yT^X@Cba @Oh@ @yJ^ @C%X @@@@@@@@@@@@@@@@g7,Jy[ @pa%sO 2ma k RC1@@Cd8ay ^nkga aLmam R)dC[@,sL2y8sXh4y8 XT*)sT*@y>E&J@ @|JIh@@hC%h% )&sJkag aI *k s O)gaR*g R)%ag @@@@@@@@@@@@@@@@g@aFs%g% #J) %hsF)a )gO)g sbnRsX@ @|vXsk @O@@O>  I4dv*nFznFvz@ @=X@ @8[hb@g2*8IsRy8sX yE 8T I4n@4uFTOzJ@@@@@@@@@@@@@@@@gh@JnuJnvdn^znFvOmp/g1kag a/7am R)a ag bC# @Fk @| 1bL@2h8IsRyh,2yXsL2y*4yXyXTs,2*yXJ2y*4  @ @Cah@ @  @Ca@@@@@@@@@@@@@@@@g#uh@@ @ @@Cah@@ @ p@p@8 hF@@CpTO4J@FJR[W^&W gIWb& ]FO%%Cah@pW%@ @ C@@C%L ,p&@ X TO4J@Eb%W^[Ig &W@@@@@@@@@@@@@@@@g|h^&W g&WCC#d@ ]% TFk Ch @ v T @ ] TR@@aX TF@C#dd@ @  @C/@7@>%W %W^&W dC,,pp%@ @]a>a@, y8Ly*2XL*X@@@@@@@@@@@@@@@@gbCIJ*28T*2**hObTLXp%@ @E @CbTLXWapp%@ @F@@CbTLXW%p%@ @] a@ud@E W OgEQQg C,d2F @Cah@pW#@@ @]%a@Fk @Chd@@@@@@@@@@@@@@@@gE[O4@ @a@ud@EJI&%[C Q Ob]W@@Cah@pW%@ @ @@CbhC8@ @a@|@ @ @F|X@@CaQ@@ @ @F|k @CaQ@ @]%a@XFka4@*;Jz*8R**XIX8@@@@@@@@@@@@@@@@g Ly*2@Ra@,X@@CpTO4@ @Xa> @Cahh@ @]a@R@@8Ra@J>I@yWhh@,IsRRR8Q*2ky,XJJkL2,y,sR ] a@ X@ @]Ja@d@mQLs8LkXRs84s 4h2XQ*2ky,@@@@@@@@@@@@@@@@@gCRa@J>I yWhh@,s4s 4h2XQ*2ky,XJJkL2,y,sR J@@Cn C8@ @)aJFX@@CkTC8@ @]%a@XFk @CbTp #@@ @^a> @C#O4@ @ E@@ChT@  @|@@@@@@@@@@@@@@@@@gRp@ @Xa@d @CahdC@E] b] %%W] @C/@@ @]%a@Fk @ChdO4J@Em&g OgQWa IW%R[RJ 8Ra#Fk @Cbh,@ @Ra#|Fk @Cbh@@@@@@@@@@@@@@@@gL7p@ @Ra#|k&k @CbhC8@ @]I d@mJy8Ly8R8,J88IsJJ8Q,y a@I@ @] @C),,@ @7a &k @C),p@ @7aLFk @C/@@ @Ra@@@Cb,2,@@@@@@@@@@@@@@@@g7 @*yQLs8LkXRs8T*kJ4*2)*  L @C#|2 L @k*JT*y]8T*1sI=8X|* za@Qmd@b^ ECbhC8@ @I@X@kJy8Ly8R8,J8JJkXQ,y1dO |@p@ @]%a@@@@@@@@@@@@@@@@gm8@XFk @CbTp #@@ @^a> @C#O4@ @ J @ChT@ O |@p E1Q C  QWO FTsOIWRTC#d@ @  @C/@7@ERRgOW&g O] Ch@@@@@@@@@@@@@@@@gsndO4@ @]%a@Fk @CbT1Wn W @CbhQp@ @Ra#Fk @C&d@ @RaE @Ckd1W z 8pJ|@ @|@@CbTp@ @|k @CbTLXp%@ @^O@*O @Cbh@@@@@@@@@@@@@@@@gnQQ@ @]%a@Fka4@h2*8sXR*;y8[T*@]a> @CbTLXp%C@E2]% CRa%]#&%QWO[RWLC#|2@@CgTQ@ @]Ina@h1sIhy*8yXL2y*k*4 4aC @C@@@@@@@@@@@@@@@@g1mbT,@ @]a@J|RFW @CbhQpW#@@ @RaF@@CbhQpW&@ @Ra#Fk X@h *y8T*s*hy8Is2 4aC @CbT,@ @]a@J|RFW @CbhQpWh@ @RaF@@@@@@@@@@@@@@@@@@g[CbhQpWm4@ @Ra@J|EJ|@ @=n@@C2L@ @Xa#Fk X@hLyX,J4*88Qh)J1  R@X@aRs@]%a@Fka4@/Jy]8R*8Ly8sX,J84,2y8Q,2* ]a> @CbTLX@@@@@@@@@@@@@@@@gXp%@ @]%a@Fk @ChdO4@ @] a#Fk R@8=n@@C&|QpW2T@ @h *FFO @X@pIyh18JR8,J8T*y8 X,J8[T*RXObTE2@@CbhLXQ EyO  O@@@@@@@@@@@@@@@@g^@OO [ Q[F%WCbT1n@@CbhLXWap@ RObTLXp%@ @4aR @CbT1W )W @Cbh@Q#@@C#LLX@ @RaE @Cbh@Q#@@C#LLX@ @Ra@p@ @#@@@@@@@@@@@@@@@@@g8@ChdLXWap@ @ T@@C%EQpp2d@ @]%a@Fka4@g2*8sL2y*48R ]a>a@)RT*8[T*XsXIsRJ  @h|Jy]8JXR*;y8Q,2* ]a@RL@)RL4h)1*y]8LyyX@@@@@@@@@@@@@@@@gJz*22 O,,pp% 2R[W^&W dChdO4J@uFW# a& [LCahRJ@ECaW /EQC[ &TCbT1nd@m2sXJ*8L[XQsRk8,J8Q,2*8Ly@a#|@@C2hpXd@@@@@@@@@@@@@@@@@g=I*a8[T*X*48Jyh8[T*@]I@@@C&|E @ @Ra@Qp@ @@k@@C%dEh@ @ma@n@@ChT@ dTO4@ @]a> @C,,pp% F%^[Ig &W^&W gIWb@@@@@@@@@@@@@@@@gL=%%ChT@ L@|@p@ @]8F8@)4*yzT28sL2y*48sX[ ]a> @C,,pp% EFR[WC[WOg CbTJ8@ @a@J4 &RQWIgOCgTLXp%@ @ @C@@@@@@@@@@@@@@@@gL #LXp%C@EQg C a%WFQW g LCah@pW#@ JXChdO4J@EaW /R[W] OgLC,,pp%@ @a@@@ @IL@*yJy8pT*k8sX4s 8J2*@Xa@d @CahR@@@@@@@@@@@@@@@@gv#4J@E2] @ /RTsOC %WJICbh@RW@@C#LR8C@^R[WTC,,pp%@ @Ra@,@@CbhC@ @]a> @Cah@pW%@ @]a@RL@n2sX4h2y J48T8RJL@@@@@@@@@@@@@@@@g^kL*48[T*@Ra#Fk @C),R,@ @a@LE@E FIWEQR%W O C)T2Wg,@*yQLs8LkXRsXQs*XT*1sI za@@@ @]Ja@= E#JI&%[[ORRW%LCgT@@@@@@@@@@@@@@@@gb/1[@@CaC@EOIWOWEQR%W  g LChT@ R4OaL@ @I@@CbT1W )W @Cbh,@ @F@@C*p@ @@@@CaT@ @Ra@J|@yW @Cbh,@ @@@@@@@@@@@@@@@@@g)Ra@J|EJ|@ @@@@CbTpX@@Cn X@ @]%a>O @Ca@ @]a[@@C,,pp%@ @Ra@,@@CbhC@ @]a> @Cah @ @Ra@J|EJ=E@E[C%FWI@@@@@@@@@@@@@@@@ga2gEQR%W Cbh,@ dObTpX@@Cn X@ @]%a>]@@Ca@ @I] X@)IQh21XT*y8 XQ,2* I^@@CkTX@ @]a@R@|Ra#Fk @C#|1b @C),R,@@@@@@@@@@@@@@@@g4@ @]%a@Fk @ChdO4J@ER[W] OC ag %%Cah@p %@ @]Ja@R|= E[JI&%[[OE%LCgT2X@@C)T2Xg,@,QLs8LkXRs8IsRRR8T*1sI za@@@@@@@@@@@@@@@@@g=m X@ @I^ X@*LyXLy8R8J;y*2*XQ,y I@X@kRs]8R1J88Qh)J18 XLy Ra@J|EJ|@ @@@@Cahd@ L O@@ @]a>a@ksL2y8sXJ2*X XI J4 @@@@@@@@@@@@@@@@g|bL@gsT*8 T8*2 ]%a@Fka4@);Jz*8h1J28R*8[T*@]a> @C),LXp%@ @]%a@Fk @ChdO4@ @]4 4@,sz8sL2y*48yL*J8 T8Rs[@C@Eb^& W @@@@@@@@@@@@@@@@g]%  &WC%CkT|Q EJ^&WOC[  OC%C*p@ @]Ja@J@4 u&[%  &TCah@pW%@ @ @F|1@@CbTLXp%@ @]%a@ app%Q EgTsWC FIW@@@@@@@@@@@@@@@@gO*W&C E&LChdO4@ @a@@C*p@ @]Ja@I44EE@z^%  &TCah@pW%@ @ @F|1@@CbTLXp%@ @]%a@ app%@ @]a>a@hR*8 X,J8h,1 @@@@@@@@@@@@@@@@gCa @C*p@ @]Ja@I|4EE@1RRW%LCah@pW%@ @ @F|1@@CbTLXp%@ @]%a@ app%Q EW[C aWC E&LChdO4@ @b@@C*p@ @]Ja@TT4EE@>@@@@@@@@@@@@@@@@gXE%  &TCah@pW%@ @ @F|X@@CbTLXp%@ @]a>a@,sR*8RT*8 ]8JR*8[Ly,X[  @CkTT@ Eb^&WOC[&g OQ C%C4X@ @a@@ @@@@@@@@@@@@@@@@g* EI]WOEQR%W CRQTCaRp@ @ #b|@#aXId@X@kI|I1*8T*1sIhy,sR8[T*@Ra#Fk @CaTd@ @Xa@d @CahThQ /I] C&TT,J@E*RR%@@@@@@@@@@@@@@@@g*>[gO FW&W gQO &TCbTF 1Q g&Cb,2&@*RQy,kL*1*XRJ2yX T2@ %a@hkT2XXJy8*JT*y@ &a@bJyh4,ObTT8Q EIEQR%W ^&W @@@@@@@@@@@@@@@@gg|OCXC#T|Q FRTsO g O%[gLs QQF O FLCa@ T4O#LJ8@ @]%a@Fk @ChdO4@ @ # @CkT|Q ER^&WOC[WO%%C,,pp%@ @]a@R@@@@@@@@@@@@@@@@gg@d@8v@@CbTT@ @] aa @C/pp@ @a@@C&|TL@ @Rab@@C),R,@ @]>@@@CbhT@ @7a @ChTT @ Th  T@@ @I @CbTJ8@ @I^ @C@@@@@@@@@@@@@@@@gX ah@J@n[OQ&CbTC8@ @a@Qmd@1g gO^]CahJ@OaWCahJ@Jh|I) X@,I,J)1XLkX[J&T*8*JT*yJ*@ *@aRs@I@X@mJy]8 @@@@@@@@@@@@@@@@gLO*2*4hy*8yJzJXQh)J1  )@ha|I@X@*)Qh21X*4hy,sRyXIsJJ I X@kJy8Qh)J182*XIh4*XRs Ra@J>**|@ @E @CbT1W )W @Cbhp@ @@@@@@@@@@@@@@@@@g T@@@CbTpXd@kyJy8L2y4zIy,sR8RJ2R,) ]%a>O @Ca@ @Ra@J|FW @Cbh,@ @Ra@C@T EIWO]%F% C,,QpWsh@ @I[ @Ca,@ @@@@@@@@@@@@@@@@@gm[I^@*|Ra@J|EJ=E@EQ]% WJ F  EILCbh,@ @F@@C*p@ @@@)|I X@*Jy8Qh)J18XIh4*XRs  QEQR%W / EIO/C F%/@@@@@@@@@@@@@@@@gb7R^ W W/CIWORR%LCbTX@ @E @CbT@ @F@@CbT1W )W @CbhC8@ @Ra@C@@ @]%a>O @Ca@ @ EOIWOCRQW g &C&X @@@@@@@@@@@@@@@@gWz@ @Rag @C&dE@ @RaF@@C),@ @Ra@J|EJ|@ @]In @CbTd@ @a@,4@X@mI1*h488s8ILy8LkX,J4* ], @C) 4@ @7a|X@m|@@@@@@@@@@@@@@@@g Rag@@C#,@ @za@1E@1&Q&%OOIgLC&d@ @RaE @CgT1WaXpJ=E@EEJ F C@O OgC),p@ @]>u @CbhQpW&@ @7a=C @Cah4@  O@@@@@@@@@@@@@@@@g@Q*p@ @],a4@2y,LyXLyXQhy8J8 T8hk8I1*h48yX Qh 4aR @CbT2&@kLyXLy88RQy,kL*1*XRs a@s @Cah8J@OaWCbT,@ @|X@X@)Jyh@@@@@@@@@@@@@@@@g 18sXQ,2*8L2k* RaF@@CbhQpW&@ @Ra@J|EJ|@ @=C @Cah4@ 8ObTp@ @|X@@Cahh@ @ EIWOCR]%F% Rna|Ra@C@@ @/@@@@@@@@@@@@@@@@g; @C,,QpWsh@ @]4p@@C&X@ @Xam @Cah@pW%@ @ 1@@CbT1W  J|@ @E @CbT1W )W @Cbhp@ @@@1a|Ra/ @CkT@@ @I[ @@@@@@@@@@@@@@@@@gJJCbh|@ @]4p@@Cah@ ObT2&@*LyX,L2k8RQy,kL**J*@a@s @CahJ@JXC*p@ @] a|X@@C) 4 E QF%FW W EC%&XC&|,@ @Ra@@@@@@@@@@@@@@@@g,2|X@@C),QpW&@ @]In @C&|p@ @] a|1@@CbT1W )W @CvT 4@ @ s|@@CahX@ ObTQpW#@C@X@C),1W&O&Whh@%)sRR8sXIa@^2an@@@@@@@@@@@@@@@@gO @Cbh,T EJ/&WO FOC[LC&|pT mRQC[LCahLJ@Es I#gOW &WF^& R1|Xag @Cah@ @Rag@@C&d F]% WO F@@@@@@@@@@@@@@@@gWsOgEQR%W % CbT,@ @za@J|OvaWhh@,s8;XI)y4yX *y8IQh2*@] aF@@C/p,@ @E @C&|p@ @ s@sa|RaW@@CadC@E)F%WCWW@@@@@@@@@@@@@@@@gFW RW%% TCah@pW% >[/ Q&  EILCahX@ @Rag@@Ca4C@=g C ag Q&Ca8C@>[/QFIWWCR^s|Ra@J|EJ|@ @@d@)Qhy8@@@@@@@@@@@@@@@@ghI)y48LyXIQh21@Ra/ @CkT@@ @I[bL@,2*8,LyXRysXQ,2*8L2k* / @Cn @@ @Ra, @Cb,2u@@Cah@pW%@ @ ua@&RsXhk8 L*1*@] a@@@@@@@@@@@@@@@@@gQJ|EJ|@ @7aF@@C&|C8@ @]In @CbT1WaXp*|@ @]In @C&|,@ @Ra/ @CkT@@ @I[ ua|I] X@k)Qh21XT*2,2*J48 XQ,2* I^@X@hssz@@@@@@@@@@@@@@@@guJ8Q,2*8L2k* ]a @@C#LJ8@ @]%a@Fk @ChdO4@ @ # @CkT|Q ER^&WOC[WO%%C,,pp%@ @]a@R@@@T@p))1[4*XT*h*L2k8*),h18Ts@@@@@@@@@@@@@@@@g^C,2*#hO&p@ @]4v@@C),LX@ @]Ja@ud@EJI&%[COb]WC%&XChTChJ@2%WOR&WFOITC#LChJ@E&%QWO%WOR&TC*p@ @]>Oa@b)sRy a@pT EER[@@@@@@@@@@@@@@@@g>LW@gaEQdCkTp@@C),LXp%@ @]8F8@ksL2y8sXJ2*X XT*)sT*@]@@C)T1v d@dLsXT*1sI  @F|k @Cah@pW#@@ @Ra#Fk @C,,,Fk @@@@@@@@@@@@@@@@g@CbhT@ @]@@C)T1bv hh@gs8T*1sIhy,sR  @F|k @Cah@pW#@@ @Ra#Fk @C,,,Fk @CbhTL@ @]@@C)T1Obv hh@&IsRRR8T*1sI  @F|k@@@@@@@@@@@@@@@@g/ @Cah@pW#@@ @Ra#Fk @C,,,Fk @CbhT@ @]@@C)T2bbv hh@%Qs*XT*1sI  @F|k @Cah@pW#@@ @Ra#Fk @C,,,Fk @CbhR,@ @]8&8@,@@@@@@@@@@@@@@@@gp4*yQyh2y8[T*XIsRy8sX a@IQ EaQ W WFW#&QW]F%IE]TCbp@@CbhO4J@FI[RWO[/&W gQO &W&W%%C4X7@EFRQWEEQR%W C%C@@@@@@@@@@@@@@@@g |#|p @@CbhJ8J@E &g OO[%%Cbp@@CbhC@EWI[[%%CkdO4@ @@a X@&*2*X XT*)sT*@]av@@ChTCh@ @ v&[ &WC[R@@@@@@@@@@@@@@@@gb)Q%[#^[RW g/ F Cg #W[EQR%W FRQT@X@d,28pT*km2p Fp@ @]|aW@@Cah@pW%@ @]aL@*spIs2*48Q]8RsX[T1@] a@J4@ @]daW@@@@@@@@@@@@@@@@@gEhh,yXRJJ8R),2k**@ 7@d2s]kL;8Ly Xa@d @Cah@pW#@ ] @CbhJ8J@] @ChTRp@ @aW@k,yXLy8 T;JXT8I)1[4*@ @F|X4@gI)1[@@@@@@@@@@@@@@@@g#74*X^Tk I7 @ChTRp@ @W@*4*yJy84s 4h2XIsRy*4 I8@X@%sT,k,28Q,2* ]a@7|Xa@d @CahWJ@] @C/8J8@ @@RyE@EvWO@@@@@@@@@@@@@@@@gEuE& EJ WJ IgO LC#LR8@ @Xa@RyE@EEg WO]E&g]TCaWJ@JXCbTJ8@ @@R8@ @aW@X@*R*8sXI1sT*8I*11 ]a@8a|y @Cb@@@@@@@@@@@@@@@@guT@RWh@, *y8J2*X X4*yJ2y8IQsI1@aW@X@)R*8sXR*;y8h4y ]|a@,4@gy*y8 T8J44sTy@ @F|k @CaW@ @]|aW@@Ca|@ @Ra@RyE@E]]W@@@@@@@@@@@@@@@@g&>OC FgO[WOJC#LR8@ @W@@CaW@@ @Ray @C/dJ8@ @I7 @ChTRp@ |O&p@ @z@@Cn WT@ WXJp@ @; @CaL@ @I@@CbT@@@@@@@@@@@@@@@@gv>J8@ @I^ X@g4*8[J8JJkL2**@ @F|ka4@%2s8JJkL2**@ |@@CaLC@EF%WCWEQR%W ICah@pW#@ JXCa8C@EaW /QFIW EILCahW @ @@@@@@@@@@@@@@@@@g^Ra@J|EJ|@ @Ebd@* *2*4hy*8IQh21XQh)J1 F@@C*p@ @@@|@8I X@)Qh)J182*XIh4*XRs Ra@J=; yWhh@&4*yJ4z*8T*J4 E @CbT1W )@@@@@@@@@@@@@@@@gXW @Cbhp@ @@@@CbTpX@@C,,QpW1|@ @I[ | 8a; @C#LJ8@ @RaW@@C/dW@ @ @F|k @CahWh@ @I^ X@g4*8[J8JJkL2**@ @F|ka@@@@@@@@@@@@@@@@gz 4@aRs@ =@X@a|Jy@I) X@h4*8[J8*JT*yJ*@ | X@%Rs]2*8R7hTWJ@EJ/ O %WIgC&d EFQFIWFWO FO,CbT,@ @za@J|Ova@@@@@@@@@@@@@@@@g>)Whh@&)Qh21Xs8;@] aF@@C/p,@ @E @C&|p@ @Ra@J|EJ|@ @@@@CbTpX@@C,,QpWsh@ @I[ @Ca,C@EIJ F %W O[ &TCapC@@@@@@@@@@@@@@@@@g7E^%&WO &W&QE]TCbTJ8@ @]|az@h,yX,LyXQs8JR*  ;@X@)Rs]ksX4sR*Xkh,2 ]az @ChT|@ W@Fp@ @Ra@J|EJ|@ R& m4@ @>a,@@@@@@@@@@@@@@@@gQ&@g)Qh21XQ,y8ILyy@E @CbhpT mJ F  EILC*p@ @@@@CaT@ @RaW@@C)XT >RQWC[&W ]dC#|pX@@Cn W,@ @]8@@CbTWpp%@ @@@@@@@@@@@@@@@@g @E @CbT1W )W @CbhC8@ @Ra@C@@ @]%a>O @Ca@ @RaW@@C&d@ @RaE @CgT1Wa>4J=E@uJ F CCOXC),p@ @]>n @Cbh,@ @@@@@@@@@@@@@@@@gy@7aF@@CbTpX@@C,,QpWsh@ @I[ @Ca,@ @I^@@CkTW,J@E^%W%%WWW %&&QWChTW@@ W,O/p@ WpOnLEJ>>*|@ @]1 )W %W @CnLEJ>J@@@@@@@@@@@@@@@@g T|@ @]1 )W7=W X@#,11*kh1  F QJ&[ &W&W O O&W gQO &WC W L@T@*;=h8z*8*48Ts,2*  F&W %E W O EIO F%W [[4@T@y2y@@@@@@@@@@@@@@@@g[sX@XLkX4zJ=8R*k8LkX 1yJ=8 L*1*XRs 8L28Qs[XILyy@ F Fg%[[O&Q&%OO#EQR%W I@T@4hk8hk8LkX4zJ=8IsRy8T8Jyh8LkX 1yJ  u@@@@@@@@@@@@@@@@gp>&W/&W /&WO@# aF%EO g&W gQO &WQWIgO /%X@X@kIyh18*JT*yXJJ22*J*@ EuER&EQR%W ^&W C[/g@@@T@ysy =8sya@@@@@@@@@@@@@@@@gsXh)Q*yX Xs8Rh2Jy]8[T*@82*X[T*@ E^^gCCC^%  &T@T@k4*1sI8XXQs*XT*1sIhy,sR  E%RgCCCRRW%  &T@T@kLsT*18XXL8@@@@@@@@@@@@@@@@gpdsXT*1sIhy,sR  F gO]/%[g%FW]QW QRd 8v@@CbhX@@ @]4C@ @C8@ @]ga@1E@1 aF]WsIgLC)X@ @7am @Cb,1 a@#ss8IL@@@@@@@@@@@@@@@@g=Ly  C @C#|1J@@C/d1Oa4@d,yXLy8JsR@ @F|k @CgTp4W@@C/d1QL@d,yXLy8Q@ @F|k @CgTp4W@@C/dsL@d,yXLy8T),@ @F|k @@@@@@@@@@@@@@@@g@CgTp4W@@CbhT|@ @]8@@CbTXTp%@ @]|a@,@@Cah@pW%@ @ CC@@CbhX@ @Ra@J|EJ|@ @k CC yF8@gyJy82y[J484zJ @s @C),X@@@@@@@@@@@@@@@@@g=k@ @]@@C8 C@@ @, C 8RaC@@@C#|1bhh@hyh1J8*JT*yXR1|@za@XhnE@EQJ[ #RRWFEC#R,@ @]ga@TTnE@=Q W WEIgLC#@@@@@@@@@@@@@@@@g^T@ @]ga@I|nE@EEQ W WRRWIgLCbhT8@ @RaC@@@CkTX@ @]ad Ca|a@F@@C#TL@ @ CE @C#|1J@@CbhT|@ @]8@@CbTQp%@ @k@@@@@@@@@@@@@@@@@g=/@CbTQ p%@ @k @CahX@ X,CXp@ @ CC@@C#|1J@@C/@@ @RaCF&k @C/dp ap@ @ @F|k @CahXX@ @k@@CbT1W )W @Cbh@ @ @@@@@@@@@@@@@@@@ga>CC CC= a@pb8W&@ vQC@% C&|F@ @7ambL@))h22s8IJ8L2*L48J)y Xa @Cah@pW%@ @ @kL@* @ @bXLkXT*1sIhyh)Q* Xab@@Cah@pW@@@@@@@@@@@@@@@@gL%@ @ C@@C#T@ @ Ca@d*yh8[T*X8O#LF IWOC[@ % CbT1WyW @CbhX@ @Ra@J|1W @Cbh@ @]@@CbhT|@ @] aC@@@C8 @@@@@@@@@@@@@@@@g |@ @, @CahXd@ X|O*p@ @g@@CbT1Wn W @CbhX@ @Ra@J|EJ|@ @k @CbTX@@ @, @CkTX@ @]ad Ca=1 )Wh J|C@@CnLEJ| @yW @@@@@@@@@@@@@@@@g]=X@ ]1 )W/TJ|C@CnLE,d@ a ]1 h apT CnLE,d@ b ]1 h apT XCnLE,d@ # ]1 )WyJ|C@@CnLE,d@a@ ]1 )WyLJ|C@CnLEJ|1 yW @@@@@@@@@@@@@@@@gdX@a@a ]1 )W#|J|C@CnLE,d@a@b ]1 )WgTJ|C@XCnLEJ=g yW X@a@# ]1 )W&4J|C@@CnLE,d@a@ ]1 h apT CnLEJ|, yW X@a ]1 h apT @@@@@@@@@@@@@@@@g|CnLE,d@a ]1 h apT XCnLE,d@aC ]1 )W/ J|C@L@CnLE,d@a ]1 )WyJ|C@LCnLEJJ yW X@aa ]1 h apT LCnLEJ|@yW X@ab ]1 )@@@@@@@@@@@@@@@@g&W&|J|C@LXCnLEJ=4@yW X@a# ]1 )W%,J|C@@CnLEJ=@yW X@a@ ]1 h apT CnLEJ|I@yW X@a ]1 h apT CnLE,d@a ]1 )WyXJ|C@XCnLE@@@@@@@@@@@@@@@@gTW,d@aC ]1 )W/dJ|C@T@CnLEJ= yW X@a ]1 )W)TJ|C@TCnLEJ|X yW X@aa ]1 )WbJ|C@TCnLEJ= yW X@ab ]1 )WyJ|C@TXCnLEJL@yW X@a#@@@@@@@@@@@@@@@@gRz ]1 )WhdJ|C@X@CnLEJ| yW X@aC@ ]1 )W/8J|C@XCnLEJ> yW X@aC ]1 )W2hJ|C@XCnLEJL yW X@aC ]1 )W)J|C@XXCnLEJ@yW X@aCC ]1 )W,d@@@@@@@@@@@@@@@@g@IJ|C@@CnLEJ= yW X@aC ]1 )Wb,J|C@CnLEJ|a@yW X@aCa ]1 )WyhJ|C@CnLEJ= yW X@aCb ]1 )WbTJ|C@XCnLEJ=% yW X@aC#84O |@p@ Xp LE@@@@@@@@@@@@@@@@g>F@ EF[g%FW &TFQO,@ @2L@y;aC ) 8vF8@,I,J)1XLkXR8*JT*yXQ,y ]4C@@C),p @@CkT ,@ 4 O|@ @a@p@ @a]@@Cah8Q @@@@@@@@@@@@@@@@gQ)W]gOFOITC/|@ @]da@pFk @Cah4Q E[OC ag /Cg#F[ adC#LLC@2FR%[[RCn QT E gQW^&W gC[L@CkTp@ @]a) CO8&8@k4*yzT2@@@@@@@@@@@@@@@@g2,8Jh4),XLy*2XsX ]a@,@@Cn QT IWOLC] gTCkTpC@ER%W%%WWWg#&QWChTL@ Fp7@Ez&[ &WC[EQC[EQR%W  g LCaLC@E@@@@@@@@@@@@@@@@g m g gOC a%WF%E Cah|C@JXCkTQ@ @za@Qmd@EWI%% W EC/8F@p% F %WgOF]WO%%]&FOCgI&TCkTpC@Ey]WOC&C@@@@@@@@@@@@@@@@gTha%W ERO OOgLChT@ | T ,C@Eu]WO^&W gC[WOE& EJ TC#L ,@ @@pFk @C/|@ @]a@E@ @a^ X@,),J)1X T8RJ2T|X*4kQs[@@@@@@@@@@@@@@@@@gTF @F|ka4@aQ@Iy@)yT4|]84s 8sXILk ]8 @CkTpC@Ey]WOC&Ca%W ERO OOgLChT@ @ Fn&[ &WC[Q W WFWg &EQR%W @@@@@@@@@@@@@@@@gT g L# 8v@@CaLC@]&gLCh 7@&&dCkTQ@ @Ra@@ EJ[ #RQW CR/CQC/8F@p%@ @a@Qmd@E#JI&%[O#@%% TCbhF@p%@@@@@@@@@@@@@@@@g@g E%W %WC aW%% TCkTp@ @]a@# @@T@),J)1XT*kJ4*2)*8Q,y828*28I,,28J2*X[Ly,X118@FX8I1sJ*X@C@sg #C E@,F4 8v@@Cn @@@@@@@@@@@@@@@@@g])@ @] a@@@ @]a@@Ca @CbpX@@Cd@ @ CQbL@)4*kJ4*2)*8Rs8 R*@J@@C/|@  LdF@p%@ @ CRbL@k2s8,LyXR*=84|Xkh,2 ] a@@@@@@@@@@@@@@@@@gzpFka4@kkR*XLy=8 *y8|*8ILyy@7a@@@C/|@ @]Jd@ky[Ly),XsX L4y8sL2y*4 ] @C),Ep% v]% CR EILC&|p@ @] a@Fk @C&|,@ @@@@@@@@@@@@@@@@@gW a4 X@d*;,y84zJ ]aC@X@#z*8[ ]a4 CRaJa@pFka4@k,yX,LyX8I1sL2k8J2y4|@ @F|ka4@aRs@ CbL@*Jy]8R*8*48Qh)J1 ]%a@ app%Q E&R@@@@@@@@@@@@@@@@g;[WC[WOEQR%W g CahQ [g#gOQa8&8@k4*yzT28Jh4),XLy*2XsX ]a@,4@%J;,y8 1yJ ]4J@@CkT@@ @]a4 @@T@*yJy8R8T*kJ4*2)@@@@@@@@@@@@@@@@g*8Q,y1Fp@ @Xa@@X@hLyXLy8*2**XJy  C@a|Jy@^Q @CbT 4C@E[/]WgOI[[QXCbhC@ @a@p@ @CQ@@C4X@ XOn @C@[IWCC@@@@@@@@@@@@@@@@g)kT@ @] @Cbp1d@mkT8J1*2J2yyXsXh4y8LJ4* a] @CaW@ @CQ@X@g2*;XQ,y8IysR@] @C8@ @7a@Fk @C),C8@ @7a@k&k @C),@@@@@@@@@@@@@@@@gW,@ @7a@XFk @C),p@ @7a@1Fk @CkT@@ @]a @@T@,kL4y8T*kJ4*2)*8*28h,1#XO&p@ @] a@F,@@C&|Cp@ @] a@@X@%ys8 XQ,y 7aCa@@@@@@@@@@@@@@@@@g z,Qhy8T*kJ4*2)*8*28h,1  @F|k @^|v@@Cn @@ @Ra@,@@CkT@ @] a@@@  O/|@ @a@F@ @aCQ@@CahdQ )W]gOFOITCbhQ@ @] @@@@@@@@@@@@@@@@g=bC=Ja@pFka4@&LyXLy828J2*@ Ca@aRs@a@pFka4@kLyyX28J2*]8LyXLy8*2  CT@aRs@]4Ca@pyz*8sL2y*48 T8R*;y8Jh4),XLy*2@]8&8@h|Jy@@@@@@@@@@@@@@@@gL]8z*8sL2y*4 ]Jd@* *y8sL2y*48sXQh)J1 ] a@Fka4@hs,)1X8Q,21X[T*@7a@@@CyXpQ a I/ C),Ep%@ @7aE @C),C@p%@ @7aF@@@@@@@@@@@@@@@@@gF[@C#LCpJ@%W]gOCgQTCkT@@ @]a@^@Ca|a@F@@C,,,FkbL@my4|XR*;y8J1*2J2y8 XIQ,y  C@CTaa@,4@)s*28h,18Rs8 R*@]4C @C@@@@@@@@@@@@@@@@g Ln Q@ @]aC@@ChTCp@ @ u&WIgOW[%% W g O RQW %[Oa C E&OC[Ca% #CT@X@%LQ*XhkdXFp@ @a@@ EEg  QWOC E@@@@@@@@@@@@@@@@g&LCah4J@JXCbh@ X@*Jy]8I1sJ8,LyXQ,y ]a@#@X@kh8L21*8L2yJ4y,sR8JR*z4On @@ @^Q @CbT@ @a@pT E%WEQQ&Wg Cd ,@@@@@@@@@@@@@@@@g JC@mRW gOgLCaWJ@#J[CJ&g Cbh@ @aC @Ckdp@@C/@@ @RaC @CkdsW@@Cbh|@ @RaC @CkdsX@@Cbh[@ |ObT7@/2%[ 1@, X@@@@@@@@@@@@@@@@ga|F8@d>Q4kn]a@]@F,ka4@*R*8,J8Q,y8J[R8@ 7a@C@E [[C aWW[Wg ChdJ@ERR[WgWOCIF% C4X@ @]aC@@ChTX@ 4Fp7@F@@@@@@@@@@@@@@@@g>IF% #gg WW &FOQ[ g LCn Q@ @] a@@@ @]a^@C @CbpX@@Cd 4@ @ CbL@%J;,y8 1yJ ] @C,dF@p%@ @ CL@)Rs8@@@@@@@@@@@@@@@@gy,Ly]84|XR*;y ] a@k&ka4@,kR*XLy=8R*8sXI*2y4h1 7aF@@C),pp%@ @7aE @C),F@p%@ @7a@@@C/|7@EgIW&WC/^&W gC[C/8QT @@@@@@@@@@@@@@@@gFFF]% CR C/CIW^&W g&WL@C/|7@1FCCIETC#L4C@%W]gOCgQTChT4@ [L Tp ap@ @]Jd@mJy8I XR*khy,z*=8 *y8L2*J; ]&8@hT*s@@@@@@@@@@@@@@@@g#1h)*yX[82*X ]a^ @8v@@C#CC@Eg %% W g O]TCaWJ@saW /E&OR%TCn [@ @]a^ @C/|@ @a@C@@ @a] @CaWJ@>QRg#@@@@@@@@@@@@@@@@gs[%[XCbh 4@ @] @C),C8@ @7a@Fk @C),,@ @7a@k&k @C),p@ @7a@XFk @CkT[@ @]a@@@T@|Ts,2*8sX,)1X8,J8*JT*yX XT@@@@@@@@@@@@@@@@gu*kJ4*2)**XL2y4zIy,sRdT Fp@ @]4C @CbJ8J@E]WOC%/[%%Cbh[XC@IWgLCkdpkbd@1,2*J;8sL2y*48sX,LyX[T*X2*XI @ C[bL@@@@@@@@@@@@@@@@gO@dIh;=8I1h ] a@pb8@ @]I@[X@ @Ra#Fk X@h,)1X8,J8[T*@a@LE@1EQR%W O CgT2, @&4*kJ42)*8 Qhk ]JabL@gLyXLy8IsRRR**@za@@@@@@@@@@@@@@@@@gI X EaW /CIWORRW EC)TR,J@EEg gO%  EJ TCgT2X@)|JyXXJy8T*1sI8 Qhk ]aC @ChTT@ hFp7@EJgOEQR%W  g LCbT h@ @a]@@@@@@@@@@@@@@@@g2 @Ckdp@@Cbh[ @ @Ra] @C#|1b @CgT2 @Cbh[d@ @]aC@@CbT@hh@kJJ1*y*8T*kJ4*2)*8 Qhky@a@@ ERQWFEQR%W O Cbh@@@@@@@@@@@@@@@@@gg; @Ck @p #@@ @]aC@hs,)1X8sL2y*48@;h [,C@E2O g O&W&%I&%QdCn [ @ @Ra@[d@ @]@F|k @Cah[p@ [4@ @Cah[8@ @@@@@@@@@@@@@@@@@gRa@[%E@E]WOCJQF gg Cn [,C@ECIWgO  &W@yC^ @CkT[ @ @]@[d@ @]aC] @Cbh@ @CkT[ @ @]C]@X@)281;|XIJ84zJ ]@@@@@@@@@@@@@@@@gv]F8@b*J) ;pTp @h Qhk8J2*X XQ,y @ ,@ @ E=J%F EQR%W  g O&W[@O g OCkT h@ @Ra@J4 =RRWg%LCb,pp% ECJI&%[@@@@@@@@@@@@@@@@gE JO TCah@pW#@@ @]%a@Fk @Cah@p #@@ @]4C X@ns8 X)Qz*8*JT*yXQ,y Ra@ X RRTCb,pp% E JI&%[[ORRTCah@pW#@@@@@@@@@@@@@@@@@@g^ @]%a@Fk @Cah@p #@@ @]4C @X@kys8 XT*1sIhyh)Q*8Q,y Ra@@ n%  EJ TCb,pp% EJI&%[[O%  EJ TCah@pW#@@ @]%a@Fk @C@@@@@@@@@@@@@@@@gEah@p #@@ @]4C @@T@kJy88Q,y8IJk,22,2ky@RaC @@CbhC@EuJ[O[RRWEQR%W  g LCkdp@@CbhLC@EWORRWEQR%W Cd@@@@@@@@@@@@@@@@@g n @ @F|X4@d2s8J2y|@Ra@,4@% Qhk8J2y|@C @CbT[|@ @Cb@@Ckdp@@CbhT@ @aC @@Cah@pW#@ &[ORO CbTp ap u Eg@@@@@@@@@@@@@@@@gy^O&RO Cbh@@ @Ra]@@CbhX@ @]a@p@ @C# @Cd[|@ @ @F|X4@d2s8J2y|@Ra@,@@Cbh[|@ @]a@%@@@T@|Ts,2*8sXRJLkXIQsI1XQ@@@@@@@@@@@@@@@@g^L,yyXsXL2)1zJJ8118JJkL2,y,sRy@C@E)F%  EJ W%% W% 8v@@CbTR8@ @Cd@X@nR*8s8 XQ,y8sX4zJ8s Ra@,@@Cbh@d@@Ca@@@@@@@@@@@@@@@@gnXdC@Ea&CJ]FW[Q&g &WC),1d@gRJJ8ILyyXRyQ@Ra@E@E&g O%  gWEQR%W C,d2X@nLyXLy8L2*J**X8T*1sI8*JT*y@ C%@a@@@@@@@@@@@@@@@@g%vRs@a#|k @CbhLXW%C@EnQ&&R%  EJ WEQR%W CbT@ @@CdLXW#@@ @ @F|k @CbhLXW#@C@EnQ]&R%  EJ WEQR%W %|Ra@L@ @]@@@@@@@@@@@@@@@@gQLda@ X Eg gO&QRRTCah,J@JXCdLXW&@ @#|1@X@kRL2,2RXIsRRR8*JT*y@Ra@@ @a#=C @Cah@pW%@ @#=C X@kR;,2@@@@@@@@@@@@@@@@gERXIsRRR8*JT*y,OhdR8C@EzR[WIE F% C bgJ  g LCbT@RW@@C/d1d@*IJk,22,2k8 X4s 4h2@ @F|k @Cahp@ @]I@2d@d|*8[8@@@@@@@@@@@@@@@@@gQba@4 u]WOCOb]WO C/@@ @Ra#|Fkd@*R;,2RX|*8*JT*y@a@R8@ @ @F|ka4@/*JT*yL2k8LyXRs8)*8I J4 @RyE@FIW J@@@@@@@@@@@@@@@@gsF C[&OQQWEQR%W I&ChdR8C@ER[WC[C FgO[JCbT@RW@@Cb,1bhh@*QLs8LkX*JT*yX*4s@a@pT ERWI[[C ag JCdLXWapp%@@@@@@@@@@@@@@@@g Eyg gOEJ[WC[%% &Cah@pW% JXCbhLXWapp% E#aW OO%% &IECah,J@E^[R[WOJ &= a@J4 &RQWQJCbT@@@@@@@@@@@@@@@@g[FLXWap@ @a#L@1,yX,J4*828Ryh22**X)Qz*84*h  Cg@aRs|O#LR8@ @Xa@RyE@ug C ag QCah@pW%@ @]F8@b*J) Ra@R8@ @a@J@@@@@@@@@@@@@@@@g==4 ECJI&%[E JO TCah|@ @Ra#L@n1s[Jy8yQJ*X)Qz*8*JT*y@a@R8@ @@R8@ 8ObT]@@ @W@@CbTLXW#@@ @a#|k X@pLyX,J4*8@@@@@@@@@@@@@@@@g|28Ryh22**XT*1sI84*h  Cha@aRs]O#LR8C@&RQWQJC#@RWh@&,yX,LyXJ2*J*@ @F|k @Ch 7@Q QCbT@RW@@C,d2X@&yQLs8LkXT*1sI @@@@@@@@@@@@@@@@gy> C)@@CbTLXW%@ @a@R8@ @@R8@ @RaCh@@CbhR8@ ]ObTLXWh@ @a#|1@X@p,yX,J4*828Ryh22**XIsRRR84*h  C)a@aRs]O#LR8@ @Xa@@@@@@@@@@@@@@@@gd @RyE@1g C ag RTCah@pW% JXCh 7@Q QCbT@RW@@C,d1[@gQLs8LkXIsRRR  C*@@CbTLXW&@ @a@R8@ @@R8@ @RaCh@@CbhR8@ @@@@@@@@@@@@@@@@@gky =Q^QW  &W[J  g OR^ W W/CIWOCJ]FW[E JO WEQR%W)a|Ra@,@@Cbh]TJ@EbQ]&RE JO WEQR%W CbT1b @Cbh]XJ@EbQ&&@@@@@@@@@@@@@@@@gh>RE JO WEQR%W k 8aW@@C#@RWh@%h4*8[J8JR*  @F|k @Cah] C@OaWCbT@RWh@h *y8h4y*48[T*@aW@X@hR*8sXJ2*X[T*@a@J4 E@@@@@@@@@@@@@@@@g%CJI&%[E JO TCah]C@; W OWO]E&dCd]X@ @Ck@nJy8RL2,2RX)Qz*8*JT*y@Ra@RyE@aC%Cd]T@ @ Ck X@&y4|XR*;y8h,4 @@@@@@@@@@@@@@@@g|C*a@nJy8R;,2RX)Qz*8*JT*y@ Ck C,@8RaCh@@CbhR8C@E]J ^&W gC[J[OCbT@RW@@CbhJ8@ @]a@% @@T@v4s,2*8sX,)1X8@@@@@@@@@@@@@@@@gXW8JJkL2,y,sR Ra@,@@CbhLXWapC@EnQ]&RE JO WQ&g &TCbhLXW#@@ @#=C @CbT p@ ]dObpX@@Cd 4C@=g  g OR %Cah]hJ@@@@@@@@@@@@@@@@@g[2OaWC/@@ @Ra@pFka4@k[2y8*JT*yX[T*XR1|@]I@2d@%k*y8|*8@a@4@ @^Q @CbTF@p%@ @a@@ ERQWCEQR%W O C=,@ @a#Fk @@@@@@@@@@@@@@@@@gCCbhLXp%C@ERQ&&RCOb]WEQR%W CdLXWapp%@ @ @F|k @CbhLXWapp% ERQ]&RCOb]WEQR%W C4X7@ER[W g O^&W gC[Cah]dJ@E^[g@@@@@@@@@@@@@@@@gWbWOg m=aCd @@T@n4s,2*8sXR1J8*JT*yXQh)J1s8Fp@ @Cn@@C#|p @mh1J8RJJ82*X*JT*yXR1|@@d@gL2y*42h18Qh)J1 ]4Cn @@@@@@@@@@@@@@@@@g#Cb,1d@h,yXLy8T*1sIhyh)Q*  C/@a|Jy@aC*a@m2sXLyXLy8[Ly,L28,J84s 4h2@aCk@@Cah@pW% 2[/^[O FLCah]8@ @4aC @CbT,@ @z@@@@@@@@@@@@@@@@gIsa@]=d@Ek@  aF%EO g F%WJ FC),p@ @]>ubd@&Q*k8z,k@E @C&|p@ @RaCn@@ChT8@ ]8O |@p Ea Q& #]EQ &QFO EILC#|@@@@@@@@@@@@@@@@g[n1bhh@hyh1J8*JT*yXR1|@Cp@@CbT1W )W @Cbh,@ @F@@CbT^@@ ^O#|s1@@C/@@ @RaC1&kd@k,)1X8R*;y8I,4h)y*4 ] aEbd@%R*8Ly8@@@@@@@@@@@@@@@@g L2 ]In @CbT,@ @7aE @C),p@ @]In @C&|p@ @RaCp@@C)F E]O[C aWCIIgOCbh^@@ @a@LT@ @ Cp @CbT1Wa2J|@ @] aC@@@@@@@@@@@@@@@@gWn@@C)T2X@kLyXLy8Qs*XT*1sIhyh)Q* Ra@J|O>Whh@a|Jy@]Ja@ X Eag gORRW%  EJ TCbT1WasJ=E@OaWC),,T E^R[WC aW%QW %%g@@@@@@@@@@@@@@@@g u TC),@ @RaE @C&|,@ @] aF@@C),@ @7aFd@gQh)J18IsR1*y* RaCn@@CkT]4@ @]a@C1 8a@F@@CnLEJ| ^]W X@/@XXXXLJ;h*J),218*J@@@@@@@@@@@@@@@@g 8T*yXh)Q* ]1 )Wa*|C@CnLEJ| ^aW X@ a@]1 )Wa[4*|C@LCnLEJ| ^)W X@ b@]1 )Wa[u*|C@TCnLEJ| ^1W X@ #@]1 )Wa[v*|C@CnLEJ| RIW X@a@ @]1 )@@@@@@@@@@@@@@@@g=&Wa[7J|C@CnLEJ| ^=W X@a@a@]1 )Wa[8J|C@LCnLEJ| EW X@a@b@]1 )Wa[yJ|C@TCnLEJ|  W X@a@#@]1 )Wa[zJ|C@d,WCp@]p@T@44s,2*yXsXyLy@@@@@@@@@@@@@@@@g8|8IL1*L2k8 XQ,2*8L2k*sLFp7@E1 Q& EQR%W [ g O[LCbT1W )W @CbhQp@ @RaW@@C&d@ @RaE @CgT1WaXpJ=E@=J F C[C@LC@@@@@@@@@@@@@@@@g ),p@ @]>u @CbhQpWap@ @7a|k @ChTL@ Fp7@EJ F ]% &W QTCbT1W )W @CbhQpW#@@ @|1@@CbhQpWh@ @]a@] 8v@@@@@@@@@@@@@@@@@@gu)@T@n)Qh21XT*2,2*J48 X4,2y8Q,2* ]4Cz @CbT1W )W @C),1J@@CkT1[/;@@C,dQpWp%= Ey&&g OC%Cg #J F Ck @p ap@ @ @@@@@@@@@@@@@@@@g]=@F|k @CbhQpWp%= EaJ F %QE&Qg[&QE]TCk @p ap@ @]aCz @ChT,@ @ k QJ&[ &WC[]E L/L /LOW[%% ]FgO[ &@@@@@@@@@@@@@@@@g[aXv@@Cbh C@F%[&g OJ F C[IWC R^^%W IC#|sE4@12sX XI)y4yXIJkT*8 L4y8IQh21X*y C| @Cn T@ hOkTp &@ @] a@T@ ,@@@@@@@@@@@@@@@@gCbO/p 4@ @]aC| @Ck @p % EyOa WC &O%^%EJ W F%W] LC&|p@ @] a@I@ @]da@J|EJ|@ @ C> @C# C@E[JI&%[J FC R^^%W Cah@pW#@@@@@@@@@@@@@@@@gIh@@ @]Ina@)2*8IQh21XI)y48 ]%a@ app%@ @] aCz @C&|p@ @]4C| @C),,@ @IC@@CbT,@ @] aF@@Ca8@ @RaF@@C),C8@ @IC@@C@@@@@@@@@@@@@@@@ga/bTC8@ @] a@J|EJ|@ @IC@@CkTpJ@a]WOC%CbTdJ@F]WOn[ aF%EO g C ag  &W] ICkd1nbd@msL2y8sX L4y8I)y48Jy8R a@|Q@@@@@@@@@@@@@@@@g#m EIg C%[%[C,,pp% EaW /R[WC%CRC#|sE4@gy8R88I)y4 za@@@2@X2sp&%QQss%%Qsp#QW@a@=|&ppE@Tgbp4@@@@@@@@@@@@@@@@g#gp)2sp&pv&)T@n@,E@Rs)8p%7spXQ)Qs)@LpTE@W%&%pX)ps)8p%7spv&)T@F h@>@8[@@@md@@ @L|p@@F @p pp@@s|@7Q@F@@@@@@@@@@@@@@@@gXIIa%[OCRgOC%%%W W &Tp@C@[C@@@h@T@@CLu@@2E @TCa,@@pR@@@@J,@@h|7@@[pQp s@@p%@ @[p@@@@@@@@@@@@@@@@@@g dI,@>d@4T%X|J&E,Fp^|@nppIT@,42@2psp7s)%Q#@k@@@J  @@T@,J|E LJ|@@I, @@p1>@@@d  4@@F|=I@@I,@@@@@@@@@@@@@@@@g>@@I,L@@p1>@@@d  4@@F|=p@@IJp@@I,@,J|b/@@p1>@@@d  4@@F|=d@@aT@@@T@WTduLymIuJmLvE)*4@@@@@@@@@@@@@@@@gh7Lh|[@@@Ip7@@@J  @@T1@@2[@,@@ L2y@ @@@p@ @@p*@@Opp%@@@ 2 @@F  @@TE@@p@ @@u%@7@@@@@@@@@@@@@@@@g[@@b @@hC@ h@@C|@,| sQbpQspd&2spFpTWs2@]17s@uJ F CCOXp*@,@@@[p @@T@pTE@@u%@7@@b@@@@@@@@@@@@@@@@g|7 @@h@L,p@@F  d@E|=pp@X=pp@p|=pp@1|=pp@|@8[@@@L |@@h @@p%@ L4@*,y*EJ,,LymI| @@@@@@@@@@@@@@@@gvhhX@@p%C@@J EX@@Ed@@1[@W@@@IEp@@,@,p @@pRC T@ECJI&%[[&&&pCC@@@2EO@@@|@@E,O@@p%C@@@@@@@@@@@@@@@@gnhp@@Jpp@mL@@@@2EO@@8Ca,@@@E@J&[ &WC[[OCW &FO g &Q& WCJXp1@/pT@EQg  g &%W[QW pT@@@@@@@@@@@@@@@@@gJJXp%@ @@p*@@@@I 4@@h@@2u@ @F@E%OI#W &FO%% WJ O@@@,C@@@O@@@Fb@@pp@@IF@XQW@@p*@@@@@@@@@@@@@@@@@gn%k @@ L@@T@Fp@@J Qp pp@@p%@1aE@@h|X @@Eh@@E,@@p%@W@@@Jpp@mL 2bgpp%&p))&)@  8@@L,@[@@@@@@@@@@@@@@@@g1pXQWL@ImIy&uEIm)I)T Fp]@E]% CREQR%W g Rpk@ @@F,LvF,ELI%,vh@L,L@]@JXp #@EaW ]WOWOg@@@@@@@@@@@@@@@@gJk RpTd@@sy@ F@Eg [W^%&W dpT@JXp%@ @@@p*@@@@Ip@,J|48TJ|@@J EX@@*E a@@@W44X8|LvEIz@@@@@@@@@@@@@@@@g/7|FuEFT|8>@aT@@p%@W@@@Jpp@mL 2bgpp%&p))&)@  8@Q|LL@@@T@X@),I)]v,uL %JEI)Ta@@sy@@@@@@@@@@@@@@@@@gW7pF@Eg CJ[WQE F]T2E@ F@JX1@p@@F  |E@Iv)sp&@I |@@,@,p @@pR@@@a8@|[@@@WJa XR@@2EC @a Eb @@@@@@@@@@@@@@@@gb@#@yO@J,2I@|[@@@WJahX]@@2@@2E@@@F  ,E@Is)8pQWQ%ahEb @#[@yO@J,2I@O|[@@@[@Qp 4%@@s#@hu @88@XaF@@@@@@@@@@@@@@@@g>,@XQb@@pg@@p@O@@@W@Fp@|[@Qp@X|8pJ p@>F@XFX @EhC R@*@@ |s7@@@ 4Ca,@@@g24T&pg)%sp)&4s%psXQs@@@@@@@@@@@@@@@@g2bpXQ%T#2p&dgQsR#p&g2ps&p&sX)p2T2pJ Ea,@@ps@*@#@>R[WC[QTp%@h@@1@ ^,@F,F|ImLy=LpThL@) L|@,@@,@,a|@@@@@@@@@@@@@@@@gm@@L|@,b@@@ha@@pR@Tp@bCb@@2E@*@@@Tg24T&pgs8&p)&4s%JTEa,@@@E@,@@Cg C FQF%I&Fg#&W@@Wg Oa&[I&Fg#CR[@@@@@@@@@@@@@@@@gQ)WC[]F@E@@Cg C FQF%I&Fg#[O@g Oa&[I&Fg#[Lps@)#@>R[WC[QTp%@%@@1u@ p@T&T^LII%EEh4p,@,^p@@@@@@@@@@@@@@@@g@L2psp&4sg4s@F @p 1W4@>E T@,bT2spd&ups&pWQgp#QW@J bL@@d@p @@T%@ Fp[ [)&4s%p&%pdd&)8ps&&p2dQ##@W@@@@@@@@@@@@@@@@gv&JbTXQb@@2@@1m@CEF7@@F p@@TE2@I,LbXChg@zJI@@@T@[JmLvLy,E)*LId|4X| &)I%,Fp^|ph)@*E bh@k@8[@@@@@@@@@@@@@@@@@@@g@Wz@b,@@I,@,C@@@F|,@@2R@L@@@^J@@d C@@@O@@d,@@p@C@[@@F|L@@2[@ @p@@1/ @@@d C@@@bd@@I@p@@s1@@@@@@@@@@@@@@@@@g@2I @@@F @pF2@@1/p@@mb,@@Tk@ @O@@JpO@@@v J,RL@z I@nXbpp8/@zL@I@Cn|bpp81@8*2Q@L ,L@@@@@@@@@@@@@@@@g>>Lp#EbQ@@@E@FI Qg F&QFO#Q& O1 OCd4@u)*JyLhyd8%LJTy*LdXCpLX sdm=p@@bppCI2p@z @QC7@@Q@Em@@@@@@@@@@@@@@@@g W%FOQ C%FWIg OIpO@@C@O@@@O O@@@L JO@@WELJTy*LEh4|I|E)*Lz]Eh@h=ppQ)&)Tpv&)Tp&4%sdE#7@@Q@@@@@@@@@@@@@@@@gg@E]  Eg@I O@@)vL&T4X|JTy*L )*LymI1p@8=ppR2sQ)sp&p#2spQ)QC#7@@Q@E[ g OF%ypO@@y|, @@@@@@@@@@@@@@@@g)hL%LnL8,mIC=|=pp%spQ2p42TpR8p)QTd#7@@Q@ Rg RQ O@@TLuI=|E)*EJT4k|=pp)#&Qs&%p#QW2Ts7@@@@@@@@@@@@@@@@@@@gzTLE#7@@@TE#7@@@J8s7@@Q@E^&W gC[/@1a%T1 O@@XTEJ,,Iy&uLLy,nLF,z]|v)TX=ppsdg7p&)pTQsQp)QT%WXE#7@@@@@@@@@@@@@@@@gX@@Q@FW%FWIg O gQR^[I&W gQ pO@@pO@@pO@@X&FT||EJ,&|Eh4|I2udX|%@h=ppXsQWp#Tp&p%@@@@@@@@@@@@@@@@g &2s)4s&%F#7@@Q@E]FW g Eg&W W WpO@@XhvIy&u,E)*E]|uELI4T8&u |=pp@E@@h=ppJTQsQpsdg7pE#7@@Q@E/ @@@@@@@@@@@@@@@@g@RgIE F% %EQ&]]@O@@|uI4E)*I|%4%u|=ppOsdg7p&)pg2sRWLC#7@@Q@; R]gIW g@O@@,uI=|E)*EJ,,v@@@@@@@@@@@@@@@@ga,2;@8=pps&gp&pQTT)22p#2s hC#7@@Q@EJ[O[EQR%W  g h@O@@LuI=|E)*J%Tuv,p4@8=pps&gp&p))%p#2s@@@@@@@@@@@@@@@@g;C#7@@Q@EaJ[O[%% W g )pO@@X4,|J%TuLI)uL4X2=@8=ppRR&ss&dp&pTp#2s pC#7@@Q@[Q[ g m@O@@@@@@@@@@@@@@@@@g,g@TuI=|E)*EEhv,vu@8=ppsdg7p&)pWQT)[XC#7@@Q@; R]g]ER%n@O@@WE]|E)*J,,v,|L)*vvy@8=ppa#2sps&gp&)@@@@@@@@@@@@@@@@g7npQTT)22p#2sp2&)s%W[,C#7@@Q@k RCJgO]/pO@@X>IuLEJ,,v,|n|Ly)|L),|y)@@8=pp@@8=pp@F@8=pp@@8=pp@@8=p@@@@@@@@@@@@@@@@gFp@@8=pp@E@8=pp@C@8=pp@2@8Cp@pR#&b#2sps&gpp%7sppR&ss&d]@C#7@@@ LC O@C@@R8C#7@@@ C O@C@@ C#7@@@]Xs7@@@@@@@@@@@@@@@@@g|X@Q@EbQ&&RE JO WEQR%W IuO@@I]v ILT,)h=LuEJ,gX=ppsdgQp&)pdQb#QR]4E#7@@Q@EC RgQFJ EI=O@@LuI@@@@@@@@@@@@@@@@gEa=|E)*vmFXuF|I4T8,JmLvWy|=ppsdgQp&)p#%pgQb)ps7@@Q@EW R] g &W]EI%>@O@@XE]|uTX|4T%X|Eh4|4T%X|I@@@@@@@@@@@@@@@@gm)X%Q@8=pp@C@8=pp@F@@h=pp@F@h=pp@ |=pp@C @@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@W/^@@v@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/890548/READ.ME b/890548/READ.ME new file mode 100644 index 0000000..ae5b21c --- /dev/null +++ b/890548/READ.ME @@ -0,0 +1,17 @@ +890548 930 REGEN-A BINARY TO SYMBOLIC TRANSLATOR +AUTHOR:.J.W. LAYLAND, ,JET PROPULSION LABORATORY +ABSTRACT: +REGEN IS A PROGRAM FOR TRANSLATING BETWEEN THE XDS 900 SERIES UNIVERSAL BINARY LANGUAGE AND A SYMBOLIC EQUIVALANT. THE PROGRAM OPERATES UNDER A BASIC MONARCH SYSTEM WITH ONE SCRATCH TAPE AND USES THE SYSTEM INPUT/OUTPUT ASSIGNMENTS. BREAKPOINTS 3 AND 4. SELECT THE PF!ODUCTION or EITHER A LIST OUTPUT OR AN ASSEMBLABLE SYMBOLIC: DECK OUTPUT. EXTERNAL REFERENCE AND DEFINITION ITEMS IN THE BINARY TEXT PROVIDE NAMES AND MAKE THE REGENERATED TEXT AS CLOSE AS POSSIBLE TO THE ORIGINAL SOURCE. +COMMENTS: +ADDITIONAL INFORMATlON:NEEDS I SCRATCH TAPE. + +* regen - disassembler 930 binary to symbol +* catalog number 890548 +* regen.si came from 890548-34 +* commented out the proc directives in hope of +* assembling with symbol, not metasymbol + + +* 890548-24 is relocatable binary deck +* intended for Monarch +* has undefined refs from Monarch diff --git a/890548/regen.bo b/890548/regen.bo new file mode 100644 index 0000000..2c8dee7 --- /dev/null +++ b/890548/regen.bo @@ -0,0 +1 @@ +bg&gsppp Og&gsppp O)W%ppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 4aQsppppp@@@#)2Xpppp@@%Qdpppp @@g#gpppppp@@g)%spppQ@@@g)%sppppQ@@g)&ppppQ @@s8gppppQp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=/W#7pppppR@@@T&ppppppR@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]hd@XCIXXEI@XF @XF/X]pkE kEChk,J@O, @EXk@FkEXk&XX=@%XFXOd@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%8vJX@[XC@pkC ,LX,FX,E@XpChkCX&XWv@[XF|FkFX[XOXOX]EXk@)Xb@p@@>@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%&Jp@@@@p, Ch#p, Ch#X#@#Xp@@@@@@z@TaX, p@@@@@EXkI/@CE@/p@@@@ ,O1QypL&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]byCXd@@@@@@@Cpkp@ ,OChkIp@@XCup,ChCpE ,Qp,RChCW@@@XC)p@@XCuCh#Cp#p@@XCuCh#[%/z;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%12JC Cp#p@@XCup,CpFJChFIpChChCJECI@@@@h8C/@@@@F@C)@@@@LC)7J#Jg)&ssTJJ*JJJJ@@@@Fp@R ,/zh@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]vsC8E,Tp,p,,W@@@h,X@h ,@h ,hO,[@IECu,@@@hECuX#kX@@X@@=@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%>pJX#h8@@Q22W%d%sJ))&)JJJ*JJJJ@@@@p@Chkp,]ChkRp,^Cha2ChaspkChkzChk;Chk|p, ,C,k|p@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]=hFk|gp@C,k|Fk|C,k|pk|Eh, ChkdEh, Chk#pkIE , Chk*E , Chk)p, Chk&ChkF@=@@@ @@|XF|7s@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]W4E@p, @p@Ch#]p, @ p@Ch#WE@@@@XFJ@@FFpFF,aXEuE F ,bChk,#pdmh,d@,%@EW8@&[>@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%#kJEXF@kWpdmh,&@,g@E%Fp@,J8,hX,)@E#@E%FEIEEIpdmh,*@,k@Ekhhdm@EJh,,@,m@Ephhd@EJ>@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%/JEph8F@@@@2@@@EJEEI@@@@h8E;@@@@2@@@EJEEu%g4sJ)QTJ))&)JJJ*JJJJ##WQ#J&)dQsJ*JJJJ@@@@@@dm&&@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]8)F@@F@^X@@@@@@WpdmFp@O ,ChkEE , ChkJC8kLh,&p,gW@dm@F,p@Q8dmW8@F@kJ@FXChkJFp@L8kJhF&z;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%ITJF @F&@F%FF kLEF h8db@@@pkEEhkLp@EF pkChkEEF @@@@p@W8dmC8p@pkEChCX@@@ ym@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]&8F8p,a@@@@EF/@@@@X@@@EF|4p@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]R)@@@@@@@@@@@@@^X@@@@@@p,nX@@C@ ,bE@,@@@@XOEF@@@@p,/Chp,pChCX@@@@p,a@@@@@n7n@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%gJE I@@@ ,bEO@@@@Whdmp@Fz@CChk p@Fz@FE , Fk pF@h@ h@v@a@J@@@@I@@@@@@FXk mI/)@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@% QJ1@s@4h Fk EXkF@Jp@W8@F@k WpdmChkWpdnChkWpd/h,1@,1@W8@F@k ,1@@ChkC,aO>@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%&4JI@LX]@ XXbW8@Cp,2FXk EXk @zE]p,sh,4EkCp,uChk@C8kCX k@kCW8@Cp,2FXk EXk @zE]=@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]JLaEXkF@Jp@W8@F@k WpdmChkWpdnChkWpd/ChkCFp@ ,pF@hkpOhkpOp@pkC,a@; ,vp,Ts>/@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%*^JyChkCX]W8@Cp,2FXk EXk @&E]EXkF@Jp@F@k W8@p,7Ch*#Wpdm@@@EpkEh,8Ch*dpkCh*%Wpdm@I7=]>@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@] IQChk@W8@F@k Wpdm ,ypk@Fp@F@@@EpkEh,zCh*&pkCh*gWpdm@@@EpkEh,;Ch*hpkCh*)p,^Ch**p@Xdm/O7=@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%=|JI)@IpW8@F@k WpdmW8@F@k WhdmCh**Cp*kh*#p,|Chdmp,=ChdnWpdm@@@p,^C,dmFdmpkC,dmFdm4kChdmm;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%u;JJF@dn@Jh*#W8@F@k @IsE]W8@F@k @I7p,=E dnF ,>Fp@Cp#p,|Ch#X#@#XE]FXk k W8@E];//=@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@] OJp@F@k W8@pkR ,]QpdmChkXdm@JdF@k W8@ ,LXEXkF@JyC,k;Fk;W8@p, ChkF@k @JpE]WpdmW=>@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]|J1hk ,bE,pm@Emp,4XW#E]XhX4p,^ChkChkp@ChkCX ;pmChkp,^ChkCp,>C8k 8*,X F/@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]dh Ik W8@p, ChkF@k @ p,^Chkp,>C8k 8*nX FXzXa4k E]Wpdm ,bhkW8@F@k @ E,pm@//@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]@ aEmp,4XCX^p,^ChkC@ Qp@Ehk ChkTW8@F@k WhdmW8@F@k C8k]kTp@E,a@ v@ yWpdmW;F@k mn=@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@] yChkOp@E,T@ >@LWpdmW;F@k Chkp@Em@LF@LIWpdmW;F@k ChkQp@E,@L@LWpdmF@k Chk/[v@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@% mJLQk]p@ ,LX@LWXL*WpdmXRkEXkF@Lv@L pkmC@L @L#pkEXkWXW#FkRW8@F@k @LkTW8@/n@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@] L)E]@@@@pkOhkFz@ChkOCpkpkQhkFz@ChkQCpkEL*C8k]XhpkRXC@LpkC,T@ C@ XWO@ Tm;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]I% X^@ X4X ;pmChkp,^ChkChkCp,>8*,X FpmEChkp,>8*nX FXzXa4p,^ChkChkp@ChkC=@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%;J X ;pkChkpkChkp,^ChkCp,>8*,X F@ zpkW@@@pkFp@Lp,^Fp@Fpk ,nFkFp@FCp*&pkEXkX7@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@])g 1pmF@@@EpkpmhkFz@LCh*gCp*h@Jp@Fk@@kpmCk@pkCh*&pkCh*gp,^Ch*h@JpkCh*&nz@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%JI@ /p,>Chk[8*nC8k@]EXkX@R@spmChkp,^ChkChkCpk[kX FChk[C8k@spmCk@mp@>@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]ah*&Fp@FCpkp*&h*gFp@FCpkh*gp,^F2@F@OF@OEp*&hmIF2@FChkCpk@WEXkW@>pk@@@EpkpmJn;7;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]yhkFz@LChkCpk@OEpkRXX@@O@OEpkXCX^p,^ChkCpk[kX FChk[C8kpk,=@O@Oh,^/@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]OOQCpkCpkCFp@Fpm Fp@FCpkpk[kX FXzXa4k]FkRW8@F@k @LkTW8@E]@@@@C8k^hdmEmLEOdun/@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]O)FOdp@Fz@IE , , Whdmp@p@E,a@O4@OvWpdmW;ChkOp@E,T@O;@O=WpdmW;Chkp@Em@gOWk@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]Wu@WpdmW;ChkQp@E,@I@ WpdmW;Chkp@ ,E , Chk p@ ,LChkRE , Ch,EEhk Ch,Fk^EOduz;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]^ @@@@E@kR@]Eh,]@kR@kEXkF@dChkREXkR@hXQFEChkRXREEXkF@vFkRC,k;Fk;Ek;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]11X#vpkRC,k;Fk;EChka4k;Fk;E@, @|X#vE@kRXQF4k;Fk;ChkRXRpkaE@kRXQFE@@@@ChkC8k ;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]F*QIp@Ch@@XhX4pkRXC@QQ@QXWO@QX^@Qp,^ChkChkp@ChkCX ;pm Chkp,^ChkChkCp,>O;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]F^Qa8*,X FF@@FkRpkRE@k@Q)@QnXC@Q,@QnXWO@Q#p@@@@@EpkpmJhkFz@LChkCpkp,^ChkCp,>7g@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%OJQy8*nX FXzXa4pkRE@k@QIk EQF@@@@p,^I@FCh|&ChkChkp@ChkCX ;pkRFp@O ,>C8R&p@WpRgz[m@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@E=RQChkp,^ChkCp,>8*,X FpkR@@@EpkpmJhkFz@FChkCpkp,>8*nX FXzXa4R&ERn8@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]LRgQ&)W)&)W&)W&)W@@@@Ch,C8,p@8mFFp@OCpkX,@X ,E@,@R8p,JE@,[@R;p,JE@m@R>p,JChkWk@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]vRp@WpTE@, @@nChkp,^Chkp@Chkh,p@F8@CChkp, ,bp,]EXk8m@EXkQ8,4Chkp,,v@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@] WERkEXk@b ,ChkWp@WpOChkWpOChk@EX@n ,p@WpE@, @*@nChkp,^Chk@h,J>7@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]C@/CpkCpkXEXk@4@yEXkQ@7@yEXkO@TFkpmOChkpmChkp@ChkWh,F8@JChk@ p@Chkp,7;[@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]TChkp,^Chkp,Chk,ERkX#spR)4p&dpd8pdvpg&sps)pd)Wp&)p%&gp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Fs@T74p8dpvdpg%p2sQp2sRp2s7p2b2pR)7pR)dp)Xp2bp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@/@T7R))p2bRp2b%p24RpQTTp24pQTp2b)pd%p7dQpQTdpd4#pTup)2Xp#2Xp2bdp#T7p2bQp2bWp2bTp#TRp#TQpQ7p@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]& WO@@@@C8kbh,Lk#pF@E , Xkd@W^pF@W@@@@WFWOC8k@kbEWOp@, C8k@kbEWO@@@@XWO@Wkk@]s;7@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]R Wgp,T@@kbEW#k#Fk#h@@pF@Eh,Xk)@WsX#vp@kbEW#@@@@XWO@@@@k@p,L@@,Th@@kb/Ou@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]JuWEWv@@@@C8k%h,Lk&pF@E ,>Xkg@X]Chk@pF@W@@@@XXWh@@CpkCpF@Fk@pF@Wh@CpkWh@CpkFX@k%n|*W@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@],RXWEX@@@@X[@XW;@XJp@, C8k@k%EX@@@@@EXk&@Xkp@pk)Chk&E , Chkgp@C8k%kgpF@E ,Xm^7m@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]&QX/Xk#X#vChkgpF@p@p@hkCp@hkp@Chkp@k%EXb@@@@hX=CpChk&Cpkh@@@@@C8k%p, kh8*77@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]Rh,LpF@E ,XXkg@aChk@pF@@@@W@@@C8khp@Fk@Wh@CpkCpWh@CpkWh@CCpkFCk%EC/ T/@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]2W;@, C8khC8k@k%EC@@@@,L@kC,khE&C8k%p@pkgE , Xk#X#vChkgE khEh, p@pkhEhmQ//;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]@p7Ch;pkhEhmRCh|p@@Ch@@;C4khF@khp@k%E&@@@@C8k@h,Lk*pF@E ,>Xk)@pF@W@@@@Wh@|;]2@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]LOCpkWh@CpkWh@@CpkCpF@Fk@pF@FCECp, Fk@pF@EC@@@@EXk&X#vC8kkk)pF@E ,>Xk#X#vChk)*/W/@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@];JgpF@hkCp@hkp@hkp@CkkE]@@@@C8k,E kRChkmEh,ph,JF4kmWpdm ,bp,aEkQp,4Ekpm@[7@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]1sk,Ep@@@@pkdE k#Eh, Chknpk# ,bp,aChk/kn4k/ ,LC,k/[ knC8kpC8kn4k/[@[ak/@[7@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]ER[W4k/C8kp[knFTk/kpC,k/kn[@@@@p,LC,k#kdp,]W@@[)W8@@[%C8k1p,4W@@[/W8@@[k;uu@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]nu[/C8k2pm@W@@[uW8@@[1C8kspk2ChkvEh, ChkyXks@[>p, Chkspk1ChkuEh, Chk8Xk2@Fp, Chk2pkdu@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]z;Chk4Eh, Chk7Xk1@p, Chk1E[@@@@pk;Chk|p, C,k|X^h,]4k8@m@@Xd/Chd/4k2Xdp@Chdp7@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]@4ky@,4@hXd1Chd14ksXd2@hChd2F@k;4k;E@,]@m@|Fp@ mp@Wpdnk;@4C,k;F@k;4k;,bu@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]# 7E , WXdn@;hdn@hh,]pdnXdm@]JFk;Ek;@]@@@@4k;,]@]@pdmk;C,k;pkzChk;pdpXd/@][@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]W]OFk;Ek;@]@@@@4k;@m@@]Opd/k;C,k;pkzChk;pd2Xd1@]*Fk;Ek;@]b@@@@4k;@,4@]^pd1k;;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]s]gC,k;pkzChk;p, Chk>p,bChk=Fk;Ek;@]2@]=4k;Fk;,]@]nXk=Chk=4k;Xk>@]nChk>@]npkzChk;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]IT]4k;ChkREO@@@@p,LChdmChd/Chd1p, ChdnChdpChd2pk*E ,>Xk)@^^p@Wp@@Fp@ mp@Wp@@ ,Lp@p;|R@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]#^WWXdmhdmWXdn@^hdnp@@^LE^@@@@Chk ,LChkCC8,@,]@^sXk>Xk=@^*@^s@@@EpkpmJhkFz@L>7n@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]|W^/ChkCpkpkE^ ,bCh,Ip,^ChkChkp,I mTp@WpXhkFp@FpkCpkhkFp@FCpkp,IFp@Ch,I,b>7[@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@])|@^ypmhkEm@pmE,4pmWhkFp@LpkCpkhkFp@LCpkpk,@E^pppyppppppapppbppp#pppdppp%7^@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]ppphppp)ppp2pppsppp4pppupppvppp7ppp8@@@@p,^Ch*#pkR@@@EpkpmhkFz@LCh*dCp*%Eh@@@@p,^Ch*&@Cn;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@];7Ch*gCh*hE4@@@@C8,p,^h,mXW@*=@ Ch*= ,Ez@@@@Ch, ,>Ch,C8,m,,Fz@FF@,;;=@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]ys O Cp,Ch,@,^@ nEX,@ XFp@FW;h,Cp,CC8,hkX 2pkhkX 2pkhkCX 2pkCh,^X 2,Cg@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]#R gp,EhmmW8@ ,>p,JE Fh,C F,@ @@@@, v@ 8Fz@F@ 4C,,F,E 2@@@@XaFz@LCh*);>;u@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]1& Cp**p, hkCE,1p@Ch,pm[hkEX,Fp@FCp*kpkhkEX,Fp@FCp*,pkh,^EX,Fp@FCp*mE ;@@@@p,==;7m@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]84aWCha1pasha2Eh,  mChap ,Xm]@akpap m^F2@FF@a1@ap@L mpmJCha2CpasEapapF2@FF@a1@a,>7;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%]a/@a% @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]|va4@@@@EX#]@b@pm Ch#p#^Ch#X#@#Xp#X,aXb=EX#WEa4X#@#Rp#R,aX#FEa4@@@@EX#]@b2pma7@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]@8bLCh#p#^Ch#k&p@E ,>p@Xkg@b&Wp@@ChkRXhWp@Ch*&Wp@Ch*gX#@#Xp#X,aXb=W;Wp@@,L=[Wy@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]2bd@ba@bpE@#@b2p, Ch#pmbCh#X1@8#Xp#X,aXb=EX#WEbpOE@#EbX#@#Rp#R,aX#F@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%nLJb|Eb@@@@h8#@Eb=#2sJ&4sg4sJ))&)JJ*JJJJ@@@@88# @@@@E#F@b@28dR&#J&4sg4sJ))&)JJ*JJJJ@@@@@@*k,X@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@mz@#T@@@T@hX@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ J#X@@@@@@*#@@@X@@X#R@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]y#^@@*#@@@@F#4#Xm#E#8mmd8m%Ch#)X1@@@@E#@@@@F#k4#kpm@m@#2pm&Ch#4X@@@@@@E#k/>/y@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%CJ#v@@@@h8#|@@@@2@@E#vg)&W)QdJs&&JRW*JJJJ@@@@C8dXh,>CpdWFp@CpFp@Cp@F@dW@dECpkh,>CpdWQ@8@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%1dFp@CpFp@Cp@F@dW@dCpkdXEdC8@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@u>@@dJR&&s2s)QgJJJJ4%T%sTJ)&)TJJJJJXb24dJ))&)JJJJJJdd&)8J&u)#&vJJJJJJJ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@mg@*=)W%JJJJJJJ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]@v,J @@@@[@@/@@C@@@@@@ @@@@@@@@@@F@@@@@@@@@@@@@@@@ @@@@X@@pppp@Og@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]zQ,b@C@@@@@@@C@@@@@@E@@2@@@I@@@J777OpC@@>@@dm@@@hp@@@=&dp@@@g)&pp TQsQpQp@8@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]^,zpp@p)p@@@*#@@@@@@C@@@@@@@@@%Tp@@Cg&gTkppp@@@ppp@,ppp;pp@pp@@ppp;8@@@)2p@@@&@pppWp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@= h@mRh@@@@@F@@@OppQIpp)IppI@Os|@@@LpppkO@@@I@@@@@@@@@E@@@@C@@@E@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@= *@mR@Cpm@Cpp@Cps@Cpv@Cpy@Cp|@Cp@C1@C1E@C1@C1 @C1@C1Q@C1T@C1W@C1@C1]@C1 @C1#@C1&@C1)@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%*=mg@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/890548/regen.lo b/890548/regen.lo new file mode 100644 index 0000000..067fee7 --- /dev/null +++ b/890548/regen.lo @@ -0,0 +1,2411 @@ + + 1 + 2 *************************************************************** + 3 * 'REGEN' PROGRAM + 4 * THIS PROGRAM WILL GENERATE A LISTING AND/OR A PSEUDO-SYMBOLIC + 5 * DECK FOR ANY PROGRAM IN THE SDS STANDARD BINARY LANGUAGE + 6 * IT IS WRITTEN TO ACCEPT INPUT/OUTPUT ASSIGNMENTS THROUGH + 7 * MONARCH + 8 * ASSIGN X1=SCRATCH MAG TAPE + 9 * ASSIGN SO=SYMBOLIC OUTPUT MEDIUM + 10 * ASSIGN LO=LIST OUTPUT MEDIUM + 11 * ASSIGN BI=SOURCE MEDIUM FOR REGEN + 12 * LOAD 0 GO + 13 * SET BPT 1 TO PAUSE BETWEEN LOADING AND EXECUTION + 14 * OR BETWEEN PROGRAMS + 15 * SET BPT 4 AT ININTIALIZATION TO BYPASS SYMBOLIC OUTPUT + 16 * SET BPT 3 AT INITIALIZATION TO BYPASS LIST OUTPUT + 17 * + 18 + 19 *************************************************************** + 20 * SUBPROGRAMS USED + 21 * MTAPE + 22 * CDRP + 23 * PTYIO + 24 * PRINT + 25 * POPS USED + 26 * NONE + 27 * MEMORY REQUIRED + 28 * AT LEAST 6K + 29 * PROGRAM OCCUPIES 4K + 30 * REMAINDER IS DYNAMIC LISTS + 31 * TAPES REQUIRED + 32 * ONE: X1 + + 33 PAGE + 00200 34 RORG 0200 + 00000200 35 $REGEN EQU $ ROUTINE FOR SYMBOLIC REGENERATION + 36 * OF PSEUDO SYMBOLIC DECKS FROM SDS STANDARD BINARY LANGUAGE + 00200 0 43 00311 37 BRM ASGNM ASSIGN MEMORY TO LISTS + 00201 0 43 00431 38 STRT BRM INIT + 00202 0 43 00511 39 PAS1 BRM READBI + 00203 0 01 00202 40 BRU $-1 TRY AGAIN ON READ ERROR + 00204 0 43 00613 41 PAS1B BRM CKSUM + 00205 0 01 00210 42 BRU PAS1C FAIL EXIT + 00206 0 43 00657 43 BRM WRTX WRITE ALL LEGAL RECORDS ON X1 + 00207 0 43 00735 44 BRM READ + 00210 0 76 05307 45 PAS1C LDA WDCNT =WORDS IN PHYSICAL RECORD + 00211 0 54 05305 46 SUB CNT WORDS IN LOGICAL RECORD + 00212 0 35 05307 47 STA WDCNT WORDS LEFT +T 00213 0 72 05412 48 SKA =1*/23 + 00214 0 01 00217 49 BRU $+3 + 00215 0 72 05413 50 SKA =-1 SKIP IF ZERO + 00216 0 01 00204 51 BRU PAS1B + 00217 0 53 05304 52 SKN END HAS END RECORD BEEN HIT + 00220 0 01 00202 53 BRU PAS1 NO + 54 * PAS1 COMPLETE + 00221 0 61 05304 55 MIN END + 00222 0 53 05346 56 SKN REFTOP ARE THERE ANY EXTERNAL REFERENCES + 00223 0 43 03075 57 PAS2Y BRM FRFOT YES, ARE THERE ANY WITH OPEN TAILS + 00224 0 01 00245 58 BRU PAS2X NO + 00225 0 43 00706 59 PAS2 BRM BKRDX + 00226 0 43 01744 60 BRM READ2 + 00227 0 01 00225 61 BRU PAS2 FAIL EXIT, NOT DATA + 00230 0 01 00233 62 BRU $+3 YES,PROCESS IT + 00231 0 43 03103 63 PAS2B BRM NRFOT GET NET OPEN TAIL + 00232 0 01 00223 64 BRU PAS2Y THIS RECORD'S DONE DO NEXT + 00233 0 76 05303 65 PAS2C LDA C3 GET TAIL + 00234 0 14 05414 66 ETR =0337777 GET MODE/ADDRESS ONLY + 00235 0 73 05406 67 SKG PROGP2 TOP OF RECORD + 00236 0 73 05405 68 SKG PROGP1 BOTTOM OF RECORD -1 + 00237 0 01 00231 69 BRU PAS2B NOT IN THIS RECORD, MOVE ON + 00240 0 43 03260 70 BRM GADR GET ADDRESS POINTED TO + 00241 0 35 05303 71 STA C3 SAVE, IT MAY BE IN SAME RECORD + 00242 0 43 03146 72 BRM IRFLST INSERT IT ON REFERENCE LIST + 00243 0 43 02766 73 BRM DADLST DELET IT FROM ADDRESS LIST + 00244 0 01 00233 74 BRU PAS2C CHEDK THIS TAIL + 00245 0 43 00674 75 PAS2X BRM RWNDX REWIND SCRATCH + 00246 0 61 05306 76 MIN PASS + 00247 0 43 03301 77 BRM SORTAD SORT OUT THE ADDRESS LIST + 00250 0 43 03417 78 BRM BLKSET AUGMENT BLOCKS TO INCLUDE ALL DEFS + 00251 0 43 00717 79 PAS3 BRM RDX READ X1 + 00252 0 43 00735 80 BRM READ + 00253 0 53 05304 81 SKN END DID WE PROCESS THE END RECORD + 00254 0 01 00251 82 BRU PAS3 NO + 00255 0 43 04210 83 BRM FINISH + 00256 0 01 00201 84 BRU STRT +DI 00257 1 06 00000 85 P PROC +I 00260 1 02 00000 86 PRNT NAME +I 00261 1 02 00000 87 PRINT NAME +DE 00262 0 76 05415 88 LDA =P(1) + 00263 0 35 04331 89 STA ADRLO +DE 00264 0 76 05415 90 LDA =P(2) + 00265 0 35 04332 91 STA CNTLO + 00266 0 23 04334 92 EXU CALLLO + 00267 0 40 04330 93 SKS FDTLO + 94 * END +DI 00270 1 06 00000 95 P PROC +I 00271 1 02 00000 96 TYPE NAME + 00272 0 40 21000 97 BRTW + 00273 0 01 00272 98 BRU $-1 + 00274 0 02 42641 99 TYP *0,1,4 +DE 00275 0 13 05415 100 POT =P(2)*/14+P(1) + 101 * END +DI 00276 1 06 00000 102 P PROC +I 00277 1 02 00000 103 JAT NAME 0 +I 00300 1 02 00001 104 JAF NAME 1 + 00301 0 53 05332 105 SKN ANS +DEI 00302 1 11 00257 106 DO P(0) + 00303 0 01 00305 107 BRU $+2 +DE 00304 0 01 00257 108 BRU P(1) + 109 * END +DI 00305 1 06 00000 110 P PROC +I 00306 1 02 00000 111 OCT NAME +DEPR 00307 0 14 05416 112 ETR =-1--(-1*/(3*P(1))) + 00310 0 43 04401 113 BRM BINOCT + 114 * END + 115 * ROUTINE TO ASSIGN MEMORY AND PERIPHERAL DEVICES + 00311 0 00 00000 116 ASGNM PZE + 00312 0 20 00000 117 NOP BRR ASGNM AFTER EXECUTION + 00313 0 36 05310 118 STB BEGMEM + 00314 0 76 00001 119 LDA 1 MONARCH BOOT + 00315 0 14 05417 120 ETR =037700 + 00316 0 35 05311 121 STA ENDMEM +* 00317 0 76 00000 122 LDA QSYST X1 + 00320 0 43 00365 123 BRM CALL + 00321 0 16 05420 124 MRG =01000 BINARY MODE + 00322 0 35 00704 125 STA EOMX + 00323 0 36 00705 126 STB CALLX + 00324 0 14 05421 127 ETR =0107 CHANNEL/UNIT + 00325 0 16 05422 128 MRG =04014010 FILE PROJECT TEST + 00326 0 35 00327 129 STA $+1 + 00327 0 20 00000 130 NOP + 00330 0 43 00351 131 BRM FPTERR X1 IS FILE PROTECTED +* 00331 0 76 00000 132 LDA QSYSU SO + 00332 0 43 00365 133 BRM CALL + 00333 0 35 04325 134 STA EOMSO + 00334 0 36 04326 135 STB CALLSO +* 00335 0 76 00000 136 LDA QSYMO LO + 00336 0 43 00365 137 BRM CALL + 00337 0 35 04333 138 STA EOMLO + 00340 0 36 04334 139 STB CALLLO +* 00341 0 76 00000 140 LDA QBINO BO/CHANGE TO BI IF USED AS SYS ROUTIN + 00342 0 43 00365 141 BRM CALL + 00343 0 16 05420 142 MRG =01000 BINARY MODE + 00344 0 36 00612 143 STB CALLBI + 00345 0 35 00611 144 STA EOMBI + 00346 0 76 00350 145 LDA $+2 + 00347 0 35 00312 146 STA ASGNM+1 + 00350 0 51 00311 147 BRR ASGNM + 00351 0 00 00000 148 FPTERR PZE +I 00352 5 07 00357 149 TYPE FILEMS,5 + 00353 0 00 00000 150 HLT + 00354 0 60 00351 151 SKR FPTERR + 00355 0 20 00000 152 NOP + 00356 0 01 40351 153 BRU *FPTERR REDO THE TEST + 00357 67011226 154 FILEMS BCD + 00360 31432512 + 00361 47514663 + 00362 25236325 + 00363 24121252 + 00364 12121212 + 00365 0 00 00000 155 CALL PZE BUILD IO CALL FROM UAT ENTRY IN A + 00366 0 66 00022 156 RSH 18 + 00367 0 14 05423 157 ETR =077 BUILD EOM IN A + 00370 0 52 05424 158 SKB =1*/21 CHECK + 00371 0 16 05425 159 MRG =0100 Y + 00372 0 16 05426 160 MRG =0200600 EOM, 4CCTR/WORD + 00373 0 72 05427 161 SKA =020 BUILD ROUTINE CALL IN B +* 00374 0 01 00000 162 BRU ASGNERR + 00375 0 75 00416 163 LDB CALC ASSUME CARD READER + 00376 0 72 05430 164 SKA =04 CARD IS 6 OR 7 + 00377 0 01 00401 165 BRU $+2 + 00400 0 75 00415 166 LDB CALT TYPEWRITER + 00401 0 72 05431 167 SKA =02 + 00402 0 01 00404 168 BRU $+2 + 00403 0 75 00415 169 LDB CALT OR PAPER TAPE + 00404 0 72 05432 170 SKA =010 + 00405 0 75 00417 171 LDB CALM MTAPE + 00406 0 72 05433 172 SKA =040 + 00407 0 01 00411 173 BRU $+2 PRINTER + 00410 0 51 00365 174 BRR CALL + 00411 0 72 05434 175 SKA =016 THESE BITS MUST BE ZERO +* 00412 0 01 00000 176 BRU ASGNERR + 00413 0 75 00420 177 LDB CALP + 00414 0 51 00365 178 BRR CALL + 00415 0 43 04353 179 CALT BRM PAPR SPECIAL PTYIO LINK +* 00416 0 43 00000 180 CALC BRM CDRP +* 00417 0 43 00000 181 CALM BRM MTAPE + 00420 0 43 04337 182 CALP BRM PRTR SPECIAL PRINT ROUTINE LINK +L 00000421 183 ASGNERR EQU $ +I 00421 5 07 00423 184 TYPE ASIGNM,5 + 00422 0 01 00001 185 BRU 1 + 00423 21626231 186 ASIGNM BCD + 00424 27454425 + 00425 45631225 + 00426 51514651 + 00427 12121252 + 00430 12121212 + 187 * ROUTINE TO INITIALIZE LISTS, FLAGS, AND POINTERS + 00431 0 00 00000 188 INIT PZE + 00432 0 46 00001 189 CLA + 00433 0 35 05304 190 STA END + 00434 0 76 05435 191 LDA =0300000 ILLEGAL ORG 0 + 00435 0 35 05322 192 STA PROGP + 00436 0 76 05436 193 LDA =' ' CARD NO. 0 + 00437 0 35 04162 194 STA CARD1 + 00440 0 35 04163 195 STA CARD2 + 00441 0 76 05310 196 LDA BEGMEM + 00442 0 35 05372 197 STA LSTBOT + 00443 0 35 05373 198 STA LSTNXT + 00444 0 35 05374 199 STA LSTTOP + 00445 0 76 05413 200 LDA =-1 + 00446 0 71 05437 201 LDX =0200000-25 + 00447 0 35 45374 202 STA *LSTTOP + 00450 0 61 05374 203 MIN LSTTOP + 00451 0 41 00447 204 BRX $-2 ALLOW 12 BLOCKS + 00452 0 46 00001 205 CLA + 00453 0 35 45374 206 STA *LSTTOP + 00454 0 61 05374 207 MIN LSTTOP + 00455 0 35 45374 208 STA *LSTTOP TWO ZEROS TO TIE THIS OFF + 00456 0 76 05374 209 LDA LSTTOP + 00457 0 55 05440 210 ADD =1 + 00460 0 35 05344 211 STA ADRBOT + 00461 0 55 05440 212 ADD =1 + 00462 0 35 05343 213 STA ADRTOP + 00463 0 76 05311 214 LDA ENDMEM + 00464 0 54 05440 215 SUB =1 + 00465 0 35 05352 216 STA DEFTOP + 00466 0 54 05440 217 SUB =1 + 00467 0 35 05351 218 STA DEFBOT + 00470 0 76 05413 219 LDA =-1 + 00471 0 35 05346 220 STA REFTOP REFERENCE LIST NOT OPEN + 00472 0 35 05306 221 STA PASS PASS NO.1 + 00473 0 01 00475 222 BRU $+2 + 00474 0 00 00040 223 HLT 040 PAUSE FOR THE OPERATOR + 00475 0 40 20400 224 BPT 1 + 00476 0 01 00474 225 BRU $-2 + 00477 0 43 00674 226 BRM RWNDX + 00500 0 76 05413 227 LDA =-1 + 00501 0 40 20100 228 BPT 3 + 00502 0 46 00001 229 CLA NO LIST OUTPUT IF 3 SET + 00503 0 35 04335 230 STA LOFLG + 00504 0 76 05413 231 LDA =-1 + 00505 0 40 20040 232 BPT 4 + 00506 0 46 00001 233 CLA NO SYMBOLIC OUTPUT IF 4 SET + 00507 0 35 04327 234 STA SOFLG + 00510 0 51 00431 235 BRR INIT + 236 * ROUTINE TO READ INPUT RECORDS BLOCKED UP TO 400 WDS/RECORD + 00511 0 00 00000 237 READBI PZE + 00512 0 23 00612 238 EXU CALLBI + 00513 0 00 00606 239 HLT FDTBI + 00514 0 76 00606 240 LDA FDTBI + 00515 0 72 05441 241 SKA =1*/22 SKIP IF NO ERROR + 00516 0 43 00565 242 BRM BIERR + 00517 0 54 00607 243 SUB ADRBI + 00520 0 14 05442 244 ETR =037777 NUMBER OF WORDS READ IN + 00521 0 35 05307 245 STA WDCNT + 00522 0 71 05443 246 LDX =0 + 00523 0 76 04455 247 LDA BUFF + 00524 0 75 05444 248 LDB =077770000 BLOCKING MODE MASK + 00525 0 70 05445 249 SKM =030000 SKIP IF BLOCKED + 00526 0 01 00532 250 BRU $+4 + 00527 2 77 00001 251 EAX 1,2 POINT BEYOND BLOCKING HEADER + 00530 0 60 05307 252 SKR WDCNT + 00531 2 76 04455 253 LDA BUFF,2 TEST SECOND WORD FOR TYPE ETC + 00532 0 75 05446 254 LDB =070000 + 00533 0 70 05447 255 SKM =050000 STD BINARY RECORD + 00534 0 01 00545 256 BRU MODERR NO + 00535 0 66 00002 257 RSH 2 YES/MAYBE +T 00536 0 72 05412 258 SKA =1*/23 + 00537 0 17 05450 259 EOR =062000000 CHANGE 5 TO 4, 7 TO 6 + 00540 0 73 05451 260 SKG =011777777 SKIP IF NOT T 0, 1, 2, 3, 5 + 00541 0 01 00543 261 BRU $+2 + 00542 0 01 00545 262 BRU MODERR + 00543 0 61 00511 263 MIN READBI EXIT TRUE + 00544 0 51 00511 264 BRR READBI + 00545 0 76 04455 265 MODERR LDA BUFF + 00546 0 75 05452 266 LDB =077000000 + 00547 0 70 05453 267 SKM =' XXX' TRY FOR DELTA RECORD + 00550 0 01 00553 268 BRU NODEL +IT 00551 5 05 04455 269 PRNT BUFF,20 + 00552 0 01 00512 270 BRU READBI+1 TRY NEXT RECORD + 00553 0 75 05454 271 NODEL LDB =017777760 + 00554 0 70 05455 272 SKM =03200000 TRY A BOOTSTRAP + 00555 0 01 00560 273 BRU NOREC +I 00556 5 05 04431 274 PRNT BOOTM,4 + 00557 0 01 00512 275 BRU READBI+1 +I 00560 5 07 00601 276 NOREC TYPE ILRM,4 + 00561 0 00 00000 277 HLT + 00562 6 20 00007 278 NOP 7,6 + 00563 0 01 00512 279 BRU READBI+1 + 00564 0 51 00511 280 BRR READBI EXIT FALSE + 00565 0 00 00000 281 BIERR PZE +I 00566 5 07 00573 282 TYPE BIEMSG,5 + 00567 0 00 00000 283 HLT + 00570 6 20 00077 284 NOP 077,6 + 00571 0 01 00512 285 BRU READBI+1 + 00572 0 51 00565 286 BRR BIERR + 00573 31454764 287 BIEMSG BCD + 00574 63125125 + 00575 21241225 + 00576 51514651 + 00577 12121252 + 00600 12121212 + 00601 31434325 288 ILRM BCD + 00602 27214312 + 00603 26465144 + 00604 21631252 + 00605 12121212 + 00606 0 00 00000 289 FDTBI PZE + 00607 0 00 04455 290 ADRBI PZE BUFF + 00610 00000620 291 CNTBI DATA 400 + 00611 0 02 03610 292 EOMBI RTB 0,0,4 +* 00612 0 43 00000 293 CALLBI BRM MTAPE + 00613 0 00 00000 294 CKSUM PZE COMPUTE CHECKSUM + 00614 2 76 04455 295 LDA BUFF,2 + 00615 0 66 00017 296 RSH 15 + 00616 0 14 05423 297 ETR =077 GET COUNT OF THIS RECORD + 00617 0 35 05305 298 STA CNT + 00620 0 54 05440 299 SUB =1 + 00621 0 35 05312 300 STA CSCNT + 00622 0 37 05314 301 STX CSX + 00623 0 75 05446 302 LDB =070000 CHECK FOR LEGAL RECORD + 00624 0 76 05447 303 LDA =050000 + 00625 2 70 04455 304 SKM BUFF,2 + 00626 0 01 00654 305 BRU CSMODE + 00627 0 46 00001 306 CLA START CHECKSUM + 00630 2 17 04455 307 EOR BUFF,2 BUILD CHECKSUM + 00631 2 77 00001 308 EAX 1,2 + 00632 0 60 05312 309 SKR CSCNT + 00633 0 01 00630 310 BRU $-3 + 00634 0 35 05312 311 STA CSCNT + 00635 0 66 00014 312 RSH 12 FOLD + 00636 0 17 05312 313 EOR CSCNT FINISH + 00637 0 75 00646 314 LDB HLT7 AND + 00640 0 70 00646 315 SKM HLT7 TEST + 00641 0 01 00645 316 BRU CSERR + 00642 0 61 00613 317 MIN CKSUM RETURN TRUE + 00643 0 71 05314 318 LDX CSX SAVE ORIGINAL POINTER + 00644 0 51 00613 319 BRR CKSUM +I 00645 5 07 04442 320 CSERR TYPE CSMSG,4 + 00646 0 00 07777 321 HLT7 HLT 07777 + 00647 0 20 07777 322 NOP 07777 + 00650 0 76 05305 323 LDA CNT + 00651 0 55 05314 324 ADD CSX MOVE BEYOND RECORD + 00652 0 46 00400 325 CAX + 00653 0 51 00613 326 BRR CKSUM RETURN FALSE + 00654 0 76 05307 327 CSMODE LDA WDCNT + 00655 0 35 05305 328 STA CNT SET COUNT PAST GARBAGE WORDS + 00656 0 51 00613 329 BRR CKSUM EXIT FALSE + 330 * SCRATCH TAPE HANDLING ROUTINES + 00657 0 00 00000 331 WRTX PZE WRITE ONE SCRATCH MARK + 00660 0 46 00200 332 CXA X POINTS TO BEGINNING WORD OF RECORD + 00661 2 77 04455 333 EAX BUFF,2 ADD BUFFER BASE + 00662 0 37 00702 334 STX ADRSX + 00663 0 46 00400 335 CAX + 00664 0 76 05305 336 LDA CNT + 00665 0 35 00703 337 STA WDSX +* 00666 0 43 00000 338 BRM MTAPE + 00667 0 40 00701 339 SKS FDTX + 00670 0 76 00701 340 LDA FDTX + 00671 0 72 05441 341 SKA =02*/21 SKIP IF NO ERROR + 00672 0 00 00000 342 HLT + 00673 0 51 00657 343 BRR WRTX + 00674 0 00 00000 344 RWNDX PZE REWIND SCRATCH TAPE +* 00675 0 43 00000 345 BRM MTAPE + 00676 0 02 00701 346 EOM FDTX + 00677 0 51 00674 347 BRR RWNDX + 00700 348 XTMPX RES 1 + 00701 0 00 00000 349 FDTX PZE FILE TABLE FOR SCRATCH TAPE + 00702 0 00 00000 350 ADRSX PZE + 00703 0 00 00000 351 WDSX PZE + 00704 0 02 03610 352 EOMX RTB 0,0,4 +* 00705 0 43 00000 353 CALLX BRM MTAPE + 00706 0 00 00000 354 BKRDX PZE READ SCRATCH TAPE BACKWARDS + 00707 0 76 05456 355 LDA =-2 +* 00710 0 43 00000 356 BRM MTAPE + 00711 0 30 00701 357 YIM FDTX + 00712 0 14 05442 358 ETR =037777 + 00713 0 50 05431 359 SKE =2 DID IT SPACE BY 2 + 00714 0 00 00000 360 HLT NO + 00715 0 43 00717 361 BRM RDX + 00716 0 51 00706 362 BRR BKRDX + 00717 0 00 00000 363 RDX PZE READ ONE SCRATCH MARK + 00720 0 76 05457 364 LDA =BUFF + 00721 0 35 00702 365 STA ADRSX + 00722 0 76 05460 366 LDA =40 + 00723 0 35 00703 367 STA WDSX +* 00724 0 43 00000 368 BRM MTAPE + 00725 0 00 00701 369 HLT FDTX + 00726 0 76 00701 370 LDA FDTX + 00727 0 72 05441 371 SKA =2*/21 SKIP IF NO ERROR + 00730 0 00 00000 372 HLT + 00731 0 54 00702 373 SUB ADRSX GET NO OF WORDS +I 00732 1 10 00000 374 CLX POINT TO START OF RECORD + 00733 0 14 05442 375 ETR =037777 + 00734 0 51 00717 376 BRR RDX + 377 * SUBROUTINE TO MOVE INPUT RECORDS TO LISTS AND BUILD OUTPUT IMAG + 00735 0 00 00000 378 READ PZE + 00736 2 75 04455 379 LDB BUFF,2 + 00737 0 46 00001 380 CLA + 00740 0 67 20003 381 LCY 3 MOVE TYPE TO A + 00741 0 35 05313 382 STA RDCNT + 00742 0 46 00001 383 CLA + 00743 0 67 20006 384 LCY 6 MOVE COUNT TO A + 00744 0 54 05440 385 SUB =1 LESS 1 FOR SKR + 00745 0 62 05313 386 XMA RDCNT STORE COUNT,TYPE TO A + 00746 0 46 00600 387 XXA TYPE TO X, WORD NO TO A + 00747 2 01 00750 388 BRU JTABL,2 + 00750 0 01 01350 389 JTABL BRU DATA A CONTAINS POINTERS AS ROUTINES ENTER + 00751 0 01 00766 390 BRU REFDEF + 00752 0 01 01041 391 BRU POPS + 00753 0 01 01231 392 BRU ENDREC +* 00754 0 01 00000 393 BRU ILLEGAL + 00755 0 01 01101 394 BRU SDATA +* 00756 0 01 00000 395 BRU ILLEGAL +* 00757 0 01 00000 396 BRU ILLEGAL +L 00000760 397 ILLEGAL EQU $ + 00760 0 63 05313 398 ADM RDCNT MOVE POINTER BEYOND ILLEGAL RECORD + 00761 0 01 00763 399 BRU $+2 + 00762 0 01 00764 400 BRU ILLEG1 +I 00763 5 04 00601 401 PRINT ILRM,4 + 00764 0 71 05313 402 ILLEG1 LDX RDCNT RE POSITION POINTER IN X + 00765 0 53 05306 403 SKN PASS + 404 EAX 1,2 + 405 HLT + 406 NOP *030707 + 407 BRR READ + 00000766 408 REFDEF EQU $ + 409 SKN PASS + 00766 0 01 01225 410 BRU BYEREC + 00767 0 46 00400 411 CAX RESTORE POINTER + 00770 2 77 00001 412 EAX 1,2 + 00771 0 60 05313 413 SKR RDCNT 1ST ITEM HAD BEEN REMOVED + 00772 2 76 04455 414 RDLOP LDA BUFF,2 + 00773 0 35 05301 415 STA C1 + 00774 2 76 04456 416 LDA BUFF+1,2 + 00775 0 35 05302 417 STA C2 + 00776 2 76 04457 418 LDA BUFF+2,2 + 00777 0 75 05461 419 LDB =060000000 TEST FOR ADDEND ITEM + 01000 0 70 05461 420 SKM =060000000 + 01001 0 01 01004 421 BRU $+3 + 01002 2 77 00001 422 EAX 1,2 + 01003 0 60 05313 423 SKR RDCNT + 01004 0 72 05461 424 SKA =060000000 SKIP IF SUBTYPE 0 + 01005 0 01 01007 425 BRU $+2 + 01006 0 01 01023 426 BRU BLENGT + 01007 0 35 05303 427 STA C3 + 01010 0 72 05441 428 SKA =020000000 + 01011 0 01 01014 429 BRU $+3 + 01012 0 43 03235 430 BRM SDFLST + 01013 0 01 01015 431 BRU $+2 + 01014 0 43 03042 432 BRM SRFLST + 01015 2 77 00003 433 EAX 3,2 WEVE MOVED BY 3 ITEMS + 01016 0 76 05462 434 LDA =-3 + 01017 0 63 05313 435 ADM RDCNT + 01020 0 53 05313 436 SKN RDCNT + 01021 0 01 00772 437 BRU RDLOP + 01022 0 51 00735 438 BRR READ + 01023 0 76 05463 439 BLENGT LDA ='COM ' COMMON LENGTH DEFINITION + 01024 0 75 05464 440 LDB =0200000 + 01025 0 52 05303 441 SKB C3 SKIP IF NOT PROGRAM LENGTH + 01026 0 76 05465 442 LDA ='PRO ' PROGRAM LENGTH DEFINITION + 01027 0 35 05300 443 STA C0 + 01030 0 37 05303 444 STX C3 +I 01031 3 04 05300 445 PRINT C0,3 + 01032 0 71 05303 446 LDX C3 + 01033 2 77 00003 447 EAX 3,2 + 01034 0 76 05462 448 LDA =-3 + 01035 0 63 05313 449 ADM RDCNT + 01036 0 53 05313 450 SKN RDCNT + 01037 0 01 00772 451 BRU RDLOP + 01040 0 51 00735 452 BRR READ + 00001041 453 POPS EQU $ + 01041 0 53 05306 454 SKN PASS + 01042 0 01 01225 455 BRU BYEREC BYPASS RECORD ON PASS 2 + 01043 0 46 00400 456 CAX + 01044 2 77 00001 457 EAX 1,2 + 01045 0 60 05313 458 SKR RDCNT FIRST ITME HAS BEEN REMOVED + 01046 2 76 04455 459 POPLOP LDA BUFF,2 + 01047 0 35 05301 460 STA C1 + 01050 2 76 04456 461 LDA BUFF+1,2 + 01051 0 35 05302 462 STA C2 + 01052 2 76 04457 463 LDA BUFF+2,2 + 01053 0 35 05303 464 STA C3 + 01054 0 66 00020 465 RSH 16 SET IT ON THE OP CODE LIST + 01055 0 14 05423 466 ETR =077 + 01056 0 46 00600 467 XXA + 01057 0 75 05301 468 LDB C1 + 01060 2 36 02517 469 STB POPT1,2 + 01061 0 75 05302 470 LDB C2 + 01062 2 36 02617 471 STB POPT2,2 + 01063 0 46 00400 472 CAX + 01064 0 76 05303 473 LDA C3 + 01065 0 72 05441 474 SKA =020000000 SKIP IF NOT REFERENCE + 01066 0 01 01073 475 BRU POPS1 + 01067 0 14 05466 476 ETR =060137777 ADDRESS, RELOC, + TYPE + 01070 0 16 05424 477 MRG =010000000 POP FLAG + 01071 0 35 05303 478 STA C3 + 01072 0 43 03235 479 BRM SDFLST SET IT ON THE DEF LIST + 00001073 480 POPS1 EQU $ + 01073 2 77 00003 481 EAX 3,2 + 01074 0 76 05462 482 LDA =-3 + 01075 0 63 05313 483 ADM RDCNT + 01076 0 53 05313 484 SKN RDCNT + 01077 0 01 01046 485 BRU POPLOP + 01100 0 51 00735 486 BRR READ + 00001101 487 SDATA EQU $ DATA STATEMENT CAN'T BE DONE + 01101 0 53 05306 488 SKN PASS + 01102 0 01 01225 489 BRU BYEREC + 01103 0 46 00400 490 CAX DUMP IT ON FIRST PASS + 01104 0 60 05313 491 SKR RDCNT + 01105 2 77 00001 492 EAX 1,2 + 01106 0 76 05467 493 LDA ='DATA' + 01107 0 35 05243 494 STA LINE + 01110 2 76 04455 495 LDA BUFF,2 + 01111 00000005 496 OCT 5 + 01112 0 76 05301 497 LDA C1 + 01113 0 55 05470 498 ADD =' A 0' + 01114 0 35 05244 499 STA LINE+1 + 01115 0 76 05302 500 LDA C2 + 01116 0 35 05245 501 STA LINE+2 + 01117 2 76 04455 502 LDA BUFF,2 +I 01120 1 01 00011 503 LRSH 9 + 01121 0 35 05300 504 STA C0 + 01122 2 77 00001 505 EAX 1,2 MOVE TO NEXT WORD + 01123 0 60 05313 506 SKR RDCNT + 01124 2 76 04455 507 LDA BUFF,2 PICK UP HIGH INCREMENT COUNT + 01125 0 14 05471 508 ETR =07700000 + 01126 0 16 05300 509 MRG C0 + 01127 0 66 00006 510 RSH 6 LOCATE AS INTEGER + 01130 00000005 511 OCT 5 + 01131 0 76 05301 512 LDA C1 + 01132 0 55 05472 513 ADD =' I 0' + 01133 0 35 05246 514 STA LINE+3 + 01134 0 76 05302 515 LDA C2 + 01135 0 35 05247 516 STA LINE+4 + 01136 2 76 04455 517 LDA BUFF,2 GET REPEAT COUTN + 01137 00000005 518 OCT 5 + 01140 0 76 05301 519 LDA C1 + 01141 0 55 05473 520 ADD =' R 0' + 01142 0 35 05250 521 STA LINE+5 + 01143 0 76 05302 522 LDA C2 + 01144 0 35 05251 523 STA LINE+6 + 01145 0 76 05436 524 LDA =' ' + 01146 0 35 05252 525 STA LINE+7 + 01147 0 46 00004 526 CAB + 01150 2 53 04455 527 SKN BUFF,2 IS THERE A LABEL + 01151 0 01 01160 528 BRU NODLAB NO + 01152 2 77 00001 529 EAX 1,2 YES, MOVE IT TO THE PRINT LINE + 01153 0 60 05313 530 SKR RDCNT + 01154 2 76 04455 531 LDA BUFF,2 + 01155 2 77 00001 532 EAX 1,2 + 01156 0 60 05313 533 SKR RDCNT + 01157 2 75 04455 534 LDB BUFF,2 + 01160 0 35 05252 535 NODLAB STA LINE+7 + 01161 0 36 05253 536 STB LINE+8 +IT 01162 1 05 05243 537 PRNT LINE,9 + 538 * OCTAL DUMP THE REST OF THE WORDS + 01163 0 76 05474 539 DLDAT LDA =LINE + 01164 0 35 04455 540 STA BUFF AT LEAST 3 LOCS OF BUFF ARE OK + 01165 0 76 05475 541 LDA =7 + 01166 0 35 04456 542 STA BUFF+1 + 01167 2 76 04455 543 DLDOP LDA BUFF,2 +E 01170 00000002 544 OCT 8 + 01171 0 76 05436 545 LDA =' ' + 01172 0 35 44455 546 STA *BUFF + 01173 0 61 04455 547 MIN BUFF + 01174 0 76 05301 548 LDA C1 + 01175 0 35 44455 549 STA *BUFF + 01176 0 61 04455 550 MIN BUFF + 01177 0 76 45302 551 LDA *C2 + 01200 0 35 04455 552 STA BUFF + 01201 0 60 04456 553 SKR BUFF+1 + 01202 0 01 01210 554 BRU DLNEX +IT 01203 1 05 05243 555 PRNT LINE,24 + 01204 2 77 00001 556 EAX 1,2 MOVE POINTER ON + 01205 0 60 05313 557 SKR RDCNT MORE WORDS TO COME + 01206 0 01 01163 558 BRU DLDAT YES, DO NEXT LINE + 01207 0 51 00735 559 BRR READ MIRACLES, ITS EVEN + 01210 2 77 00001 560 DLNEX EAX 1,2 MOVE POINTER + 01211 0 60 05313 561 SKR RDCNT ANYTHING LEFT + 01212 0 01 01167 562 BRU DLDOP YES, ADD TO LINE + 01213 0 76 05475 563 LDA =7 NO SEE HOW LONG THE LINE IS + 01214 0 54 04456 564 SUB BUFF+1 + 01215 0 64 05476 565 MUL =3 3 WORDS PER DATA WORD + 01216 0 66 00001 566 RSH 1 + 01217 0 36 04332 567 STB CNTLO + 01220 0 76 05474 568 LDA =LINE + 01221 0 35 04331 569 STA ADRLO + 01222 0 23 04334 570 EXU CALLLO + 01223 0 40 04330 571 SKS FDTLO + 01224 0 51 00735 572 BRR READ + 01225 0 63 05313 573 BYEREC ADM RDCNT + 01226 0 71 05313 574 LDX RDCNT + 01227 2 77 00001 575 EAX 1,2 REPOSITION POINTER BEYOND RECORD + 01230 0 51 00735 576 BRR READ + 00001231 577 ENDREC EQU $ + 01231 0 46 00400 578 CAX RETURN POINTER TO X + 01232 0 60 05313 579 SKR RDCNT + 01233 2 77 00001 580 EAX 1,2 MOVE TO NEXT ITEM + 01234 0 76 05322 581 LDA PROGP + 01235 0 14 05435 582 ETR =0300000 MODE BITS + 01236 2 16 04455 583 MRG BUFF,2 + 01237 0 35 05316 584 STA RELOC + 01240 2 53 04455 585 SKN BUFF,2 IS THERE A NAME LIST + 01241 0 01 01244 586 BRU $+3 NO + 01242 0 60 05313 587 SKR RDCNT YES, MOVE PAST IT + 01243 2 77 00001 588 EAX 1,2 + 01244 0 14 05414 589 ETR =0337777 + 01245 0 43 02031 590 BRM PSET SET P-REG TO PROG END + 01246 0 53 05306 591 SKN PASS + 01247 0 01 01271 592 BRU ENDR1 PASS 2, DON'T STORE BLOCKEND + 01250 0 35 45373 593 STA *BLKNXT + 01251 0 61 05373 594 MIN BLKNXT MOVE ON + 01252 2 77 00001 595 EAX 1,2 + 01253 0 76 05413 596 LDA =-1 + 01254 0 35 05304 597 STA END + 01255 0 60 05313 598 SKR RDCNT + 01256 0 01 01260 599 BRU $+2 + 01257 0 51 00735 600 BRR READ NO TRANSFER OR MODIFIER WORDS + 01260 2 76 04455 601 LDA BUFF,2 + 01261 0 75 05316 602 LDB RELOC + 01262 0 14 05442 603 ETR =037777 TAKE ADDRESS ONLY + 01263 0 52 05477 604 SKB =02000000 SKIP IF NO LOAD RELOC + 01264 0 16 05500 605 MRG =0100000 + 01265 0 52 05501 606 SKB =04000000 SKIP IF NOT COMMON RELOC + 01266 0 16 05464 607 MRG =0200000 + 01267 0 43 02743 608 BRM SADLST SET ON ADDRESS LIST + 01270 0 51 00735 609 BRR READ + 01271 0 43 03750 610 ENDR1 BRM ADRESS + 01272 0 43 03764 611 BRM BLNKOP + 01273 0 76 05436 612 LDA =' ' + 01274 0 35 05301 613 STA C1 + 01275 0 35 05302 614 STA C2 + 01276 0 46 00001 615 CLA + 01277 0 35 05303 616 STA C3 + 01300 0 43 04073 617 BRM LABCRD + 01301 0 76 05502 618 LDA ='END ' + 01302 0 35 05301 619 STA C1 + 01303 0 76 05436 620 LDA =' ' + 01304 0 35 05303 621 STA C3 + 01305 0 76 05476 622 LDA =3 + 01306 0 37 05315 623 STX ENDTX + 01307 0 77 05254 624 EAX LINE+9 + 01310 0 43 04006 625 BRM PACK + 01311 0 71 05315 626 LDX ENDTX + 01312 2 77 00001 627 EAX 1,2 + 01313 0 76 05413 628 LDA =-1 + 01314 0 35 05304 629 STA END + 01315 0 60 05313 630 SKR RDCNT + 01316 0 01 01331 631 BRU ENDR2 + 01317 0 76 05436 632 LDA =' ' NO TRANSFER ADDRESS + 01320 0 35 05301 633 STA C1 + 01321 0 76 05476 634 ENDR3 LDA =3 + 01322 0 37 05315 635 STX ENDTX + 01323 0 77 05256 636 EAX LINE+11 + 01324 0 43 04006 637 BRM PACK + 01325 0 43 03772 638 BRM BLNKLN BLANK REST OF LINE + 01326 0 43 04164 639 BRM OUTPUT + 01327 0 71 05315 640 LDX ENDTX + 01330 0 51 00735 641 BRR READ + 01331 2 76 04455 642 ENDR2 LDA BUFF,2 + 01332 0 14 05442 643 ETR =037777 + 01333 0 75 05316 644 LDB RELOC + 01334 2 77 00001 645 EAX 1,2 + 01335 0 60 05313 646 SKR RDCNT MOVE PAST THIS RECORD + 01336 0 01 01334 647 BRU $-2 + 01337 0 52 05477 648 SKB =02000000 SKIP IF NOT LOAD RELOC + 01340 0 16 05500 649 MRG =0100000 + 01341 0 52 05501 650 SKB =04000000 SKIP IF NOT COMMON RELOC + 01342 0 16 05464 651 MRG =0200000 + 01343 0 43 03203 652 BRM CDFLST IS IT ON EXTEND LIST + 01344 0 43 03637 653 BRM MAKLAB NO, MAKE A LABEL OF IT + 01345 0 76 05436 654 LDA =' ' + 01346 0 35 05303 655 STA C3 + 01347 0 01 01321 656 BRU ENDR3 + 01350 0 46 00400 657 DATA CAX + 01351 0 55 05313 658 ADD RDCNT POINT TO END OF BUFFER + 01352 0 35 05324 659 STA DNTX STORE FOR TEMP + 01353 2 77 00001 660 EAX 1,2 WEVE TAKEN ONE WORD + 01354 0 60 05313 661 SKR RDCNT + 01355 2 75 04455 662 LDB BUFF,2 + 01356 2 77 00001 663 EAX 1,2 + 01357 0 60 05313 664 SKR RDCNT + 01360 0 37 05335 665 STX DTX PUT POINTER ASIDE FOR NOW + 666 * PROCESS RELOCATION WORDS + 01361 0 71 05324 667 LDX DNTX POINT TO LAST WORD + 01362 0 46 00001 668 CLA + 01363 0 52 05441 669 SKB =010*/19 IO RELOCATION + 01364 0 01 01366 670 BRU $+2 + 01365 0 01 01371 671 BRU $+4 + 01366 2 76 04455 672 LDA BUFF,2 + 01367 2 77 37777 673 EAX -1,2 WE'VE TAKEN ONE FROM TAIL + 01370 0 60 05313 674 SKR RDCNT + 01371 0 35 05317 675 STA IOREL + 01372 0 46 00001 676 CLA + 01373 0 52 05424 677 SKB =04*/19 POP RELOCATION + 01374 0 01 01376 678 BRU $+2 + 01375 0 01 01401 679 BRU $+4 + 01376 2 76 04455 680 LDA BUFF,2 + 01377 2 77 37777 681 EAX -1,2 + 01400 0 60 05313 682 SKR RDCNT ONE OFF THE TAIL + 01401 0 35 05320 683 STA POPR + 01402 0 46 00001 684 CLA + 01403 0 52 05501 685 SKB =02*/19 COMMON RELOC + 01404 0 01 01406 686 BRU $+2 + 01405 0 01 01411 687 BRU $+4 + 01406 2 76 04455 688 LDA BUFF,2 + 01407 2 77 37777 689 EAX -1,2 ONE OFF THE TAIL + 01410 0 60 05313 690 SKR RDCNT + 01411 0 35 05321 691 STA COMR + 01412 0 46 00001 692 CLA + 01413 0 52 05477 693 SKB =01*/19 LOAD RELOCATION + 01414 0 01 01416 694 BRU $+2 + 01415 0 01 01420 695 BRU $+3 + 01416 2 76 04455 696 LDA BUFF,2 + 01417 0 60 05313 697 SKR RDCNT ONE MORE OFF, DONE WITH X + 01420 0 35 05316 698 STA RELOC + 01421 0 71 05335 699 LDX DTX POINT TO FIRST DATA WORD + 01422 0 46 00010 700 CBA + 01423 0 14 05414 701 ETR =0337777 GET ADDRESS + MODE + 01424 0 43 02031 702 BRM PSET + 01425 0 01 01427 703 BRU DATL+1 + 01426 0 43 01452 704 DATL BRM CYRFLG CYCLE RELOCATION WORDS + 01427 2 76 04455 705 LDA BUFF,2 + 01430 0 43 02253 706 BRM INSTST + 01431 0 53 05306 707 SKN PASS + 01432 0 01 01466 708 BRU DAT2 SECOND PASS +I 01433 1 00 01440 709 JAT DAT1C JUMP IF ITS AN INSTRUCTION + 01434 0 76 05332 710 LDA ANS DATA OR FORM + 01435 0 72 05503 711 SKA =0377 MULTIFIELD MENS FORM + 01436 0 01 01440 712 BRU DAT1C FORM SET ADDRESS + 01437 0 01 01443 713 BRU DAT1B DATA + 01440 0 76 05323 714 DAT1C LDA ADRP ADDRESS POINTEC TO + 01441 0 53 05327 715 SKN INS3 DON'T LIST IF IT'S DEMANDS OCTAL + 01442 0 43 02743 716 BRM SADLST + 01443 0 61 05322 717 DAT1B MIN PROGP + 01444 2 77 00001 718 EAX 1,2 + 01445 0 60 05313 719 SKR RDCNT + 01446 0 01 01426 720 BRU DATL + 01447 0 71 05324 721 LDX DNTX POINT TO NEXT RECORD + 01450 2 77 00001 722 EAX 1,2 + 01451 0 51 00735 723 BRR READ + 01452 0 00 00000 724 CYRFLG PZE + 01453 0 76 05317 725 LDA IOREL + 01454 0 75 05320 726 LDB POPR + 01455 0 67 20001 727 LCY 1 + 01456 0 35 05317 728 STA IOREL + 01457 0 36 05320 729 STB POPR + 01460 0 76 05321 730 LDA COMR + 01461 0 75 05316 731 LDB RELOC + 01462 0 67 20001 732 LCY 1 + 01463 0 35 05321 733 STA COMR + 01464 0 36 05316 734 STB RELOC + 01465 0 51 01452 735 BRR CYRFLG + 01466 0 37 05335 736 DAT2 STX DTX + 01467 0 43 03750 737 BRM ADRESS + 01470 0 76 05322 738 LDA PROGP + 01471 0 43 03203 739 BRM CDFLST + 01472 0 01 01477 740 BRU DAT2B NOT DEFINED + 01473 0 76 05303 741 LDA C3 + 01474 0 72 05424 742 SKA =010000000 IS IT A POPD + 01475 0 01 01503 743 BRU DAT2C YES + 01476 0 01 01531 744 BRU DAT2F NO + 01477 0 43 02717 745 DAT2B BRM CADLST CHECK IF WE'RE ADDRESSED + 01500 0 01 01524 746 BRU DAT2E NO + 01501 0 43 03637 747 BRM MAKLAB YES, GENERATE PSEUDO LABEL + 01502 0 01 01531 748 BRU DAT2F + 01503 0 43 03764 749 DAT2C BRM BLNKOP BLANK OPERATIONS CODE + 01504 0 43 04073 750 BRM LABCRD SET LABEL AND CARD NO. + 01505 0 76 05504 751 LDA ='POPD' + 01506 0 35 05301 752 STA C1 + 01507 0 76 05436 753 LDA =' ' + 01510 0 35 05302 754 STA C2 + 01511 0 35 05303 755 STA C3 + 01512 0 76 05476 756 LDA =3 SET INSTRUCTION MEMONIC + 01513 0 77 05254 757 EAX LINE+9 + 01514 0 43 04006 758 BRM PACK + 01515 0 76 05505 759 LDA ='$ ' + 01516 0 35 05301 760 STA C1 + 01517 0 76 05476 761 LDA =3 SET OPERAND FIELD + 01520 0 77 05256 762 EAX LINE+11 + 01521 0 43 04006 763 BRM PACK + 01522 0 43 03772 764 BRM BLNKLN + 01523 0 43 04164 765 BRM OUTPUT + 01524 0 76 05436 766 DAT2E LDA =' ' GENERATE BLANK LABEL + 01525 0 35 05301 767 STA C1 + 01526 0 35 05302 768 STA C2 + 01527 0 46 00001 769 CLA + 01530 0 35 05303 770 STA C3 + 01531 0 43 04073 771 DAT2F BRM LABCRD SET LABEL + CARD NO. + 772 * ADDRESS, LABEL, + CARD NO. COMPLETE, SET OP MNEMONIC + 01532 0 76 05325 773 LDA INS1 + 01533 0 35 05301 774 STA C1 + 01534 0 76 05326 775 LDA INS2 + 01535 0 35 05302 776 STA C2 + 01536 0 76 05436 777 LDA =' ' + 01537 0 35 05303 778 STA C3 + 01540 0 76 05476 779 LDA =3 + 01541 0 77 05254 780 EAX LINE+9 + 01542 0 43 04006 781 BRM PACK + 782 * SET UP CODE LISTING +I 01543 1 00 01572 783 JAF DAT2G + 01544 0 76 05327 784 LDA INS3 + 01545 00000002 785 OCT 2 + 01546 0 76 05302 786 LDA C2 + 01547 0 66 00014 787 RSH 12 + 01550 0 76 05436 788 LDA =' ' + 01551 0 66 00006 789 RSH 6 + 01552 0 76 05331 790 LDA TAG + 01553 0 14 05456 791 ETR =-1*/1 CLEAR OUT POP BIT IF THERE + 01554 0 62 05331 792 XMA TAG + 01555 0 66 00006 793 RSH 6 + 01556 0 36 05246 794 STB LINE+3 + 01557 0 76 05323 795 DAT2K LDA ADRP + 01560 0 53 05330 796 SKN STAR + 01561 0 16 05506 797 MRG =040000 INDIRECT BIT + 01562 00000005 798 OCT 5 + 01563 0 76 05301 799 LDA C1 + 01564 0 16 05507 800 MRG =' 0' BLANK TOP 3 CCTRS + 01565 0 75 05302 801 LDB C2 + 01566 0 67 20014 802 LCY 12 + 01567 0 35 05247 803 STA LINE+4 + 01570 0 36 05250 804 STB LINE+5 + 01571 0 01 01612 805 BRU DAT2H + 01572 0 46 00001 806 DAT2G CLA + 01573 0 62 05331 807 XMA TAG THIS IS LAST USE FOR TAG CLEAR AS FLA +E 01574 00005331 808 OCT 8 + 01575 0 76 05503 809 LDA =0377 IS IT A MULTIFIELD NO. + 01576 0 72 05332 810 SKA ANS + 01577 0 01 01607 811 BRU DAT2J YES + 01600 0 76 05301 812 LDA C1 + 01601 0 35 05246 813 STA LINE+3 DATA TO LINE IMAGE + 01602 0 76 05302 814 LDA C2 + 01603 0 35 05247 815 STA LINE+4 + 01604 0 76 05436 816 LDA =' ' + 01605 0 35 05250 817 STA LINE+5 + 01606 0 01 01612 818 BRU DAT2H + 01607 0 76 05302 819 DAT2J LDA C2 + 01610 0 35 05246 820 STA LINE+3 + 01611 0 01 01557 821 BRU DAT2K + 822 * SET UP OPERAND FIELD + 01612 0 76 05476 823 DAT2H LDA =3 + 01613 0 35 05333 824 STA LINCC + 01614 0 77 05256 825 EAX LINE+11 + 01615 0 37 05334 826 STX LINXP +I 01616 1 00 01635 827 JAF DAT2M + 01617 0 53 05330 828 SKN STAR + 01620 0 01 01622 829 BRU $+2 + 01621 0 01 01663 830 BRU DAT2L + 01622 0 76 05510 831 LDA ='* ' + 01623 0 35 05301 832 STA C1 + 01624 0 76 05436 833 LDA =' ' + 01625 0 35 05302 834 STA C2 + 01626 0 35 05303 835 STA C3 + 01627 0 76 05333 836 DAT2Z LDA LINCC + 01630 0 71 05334 837 LDX LINXP + 01631 0 43 04006 838 BRM PACK + 01632 0 35 05333 839 STA LINCC + 01633 0 37 05334 840 STX LINXP + 01634 0 01 01663 841 BRU DAT2L + 01635 0 76 05503 842 DAT2M LDA =0377 IS THING MULTIFIEDED + 01636 0 72 05332 843 SKA ANS + 01637 0 01 01655 844 BRU DAT2P NO + 01640 0 46 00001 845 CLA + 01641 0 75 05246 846 LDB LINE+3 + 01642 0 66 00006 847 RSH 6 GUARANTEE LEAD ZERO + 01643 0 36 05301 848 STB C1 + 01644 0 76 05246 849 LDA LINE+3 + 01645 0 75 05247 850 LDB LINE+4 + 01646 0 66 00006 851 RSH 6 + 01647 0 36 05302 852 STB C2 + 01650 0 75 05247 853 LDB LINE+4 + 01651 0 76 05436 854 LDA =' ' + 01652 0 66 20006 855 RCY 6 + 01653 0 01 01706 856 BRU DAT2Q+1 + 01654 0 01 01705 857 BRU DAT2Q + 01655 0 76 05246 858 DAT2P LDA LINE+3 F1014 + 01656 0 75 05511 859 LDB =', 0' COMMA TO C2 + 01657 0 66 20006 860 RCY 6 + 01660 0 35 05301 861 STA C1 NO. IN OCTAL TO C1 + 01661 0 36 05302 862 STB C2 COMMA TO C2 + 01662 0 01 01627 863 BRU DAT2Z STASH IT ON LINE AND PROCEED + 01663 0 53 05327 864 DAT2L SKN INS3 + 01664 0 01 01676 865 BRU DAT2R + 01665 0 76 05323 866 LDA ADRP + 01666 00000005 867 OCT 5 GENERATE OCTAL FOR ADDRESS FIELD + 01667 0 76 05301 868 LDA C1 + 01670 0 16 05512 869 MRG =' 00' TOP TWO CCTRS GET BLANDS + 01671 0 75 05302 870 LDB C2 + 01672 0 67 20014 871 LCY 12 + 01673 0 35 05301 872 STA C1 + 01674 0 36 05302 873 STB C2 + 01675 0 01 01705 874 BRU DAT2Q + 01676 0 76 05322 875 DAT2R LDA PROGP + 01677 0 43 03000 876 BRM CRFLST ARE WE ON EXTEDN REFERENCE + 01700 0 01 01702 877 BRU $+2 NO, BUILD LABEL + 01701 0 01 01705 878 BRU DAT2Q + 01702 0 76 05323 879 LDA ADRP + 01703 0 43 03203 880 BRM CDFLST IS THIS DEFINED + 01704 0 43 03637 881 BRM MAKLAB NO, MAKE ONE UP + 01705 0 76 05436 882 DAT2Q LDA =' ' + 01706 0 35 05303 883 STA C3 LAST CCTR IS BLANK + 01707 0 76 05333 884 LDA LINCC + 01710 0 71 05334 885 LDX LINXP + 01711 0 43 04006 886 BRM PACK MOVE THIS ONTO LINE IMAGE + 01712 0 35 05333 887 STA LINCC + 01713 0 37 05334 888 STX LINXP + 01714 0 76 05331 889 LDA TAG + 01715 0 72 05475 890 SKA =07 + 01716 0 01 01720 891 BRU $+2 + 01717 0 01 01732 892 BRU DAT2S NO TAG FIELD + 01720 0 75 05436 893 LDB =' ' + 01721 0 36 05302 894 STB C2 + 01722 0 36 05303 895 STB C3 + 01723 0 66 00006 896 RSH 6 + 01724 0 76 05513 897 LDA =' ,' + 01725 0 66 00006 898 RSH 6 + 01726 0 36 05301 899 STB C1 + 01727 0 76 05333 900 LDA LINCC + 01730 0 71 05334 901 LDX LINXP + 01731 0 43 04006 902 BRM PACK + 01732 0 43 03772 903 DAT2S BRM BLNKLN BLANK REMAINDER OF LINE + 01733 0 43 04164 904 BRM OUTPUT OUTPUT LINE IMAGE + 01734 0 71 05335 905 LDX DTX + 01735 0 61 05322 906 MIN PROGP + 01736 2 77 00001 907 EAX 1,2 + 01737 0 60 05313 908 SKR RDCNT + 01740 0 01 01426 909 BRU DATL + 01741 0 71 05324 910 LDX DNTX POINT TO NEXT RECORD + 01742 2 77 00001 911 EAX 1,2 + 01743 0 51 00735 912 BRR READ + 913 * BACKWARDS READING SPECIAL ROUTINE + 01744 0 00 00000 914 READ2 PZE + 01745 0 37 05336 915 STX RDTX + 01746 0 75 04455 916 LDB BUFF + 01747 0 52 05514 917 SKB =070000000 SKIP IF TYPE ZERO + 01750 0 51 01744 918 BRR READ2 RETURN FALSE + 01751 0 61 01744 919 MIN READ2 INCREMENT RETURN + 01752 0 46 00001 920 CLA + 01753 0 67 20011 921 LCY 9 COUNT + 01754 0 54 05440 922 SUB =1 DOWN 1 FOR HEADER + 01755 0 71 05440 923 LDX =1 + 01756 2 75 04455 924 LDB BUFF,2 + 01757 0 46 00400 925 CAX POINT TO END OF RECORD + 01760 0 46 00001 926 CLA + 01761 0 52 05441 927 SKB =010*/19 IO RELOC + 01762 0 01 01764 928 BRU $+2 + 01763 0 01 01766 929 BRU $+3 + 01764 2 76 04455 930 LDA BUFF,2 + 01765 2 77 37777 931 EAX -1,2 + 01766 0 35 05317 932 STA IOREL + 01767 0 46 00001 933 CLA + 01770 0 52 05424 934 SKB =04*/19 POP RELOCATION + 01771 0 01 01773 935 BRU $+2 + 01772 0 01 01775 936 BRU $+3 + 01773 2 76 04455 937 LDA BUFF,2 + 01774 2 77 37777 938 EAX -1,2 + 01775 0 35 05320 939 STA POPR + 01776 0 46 00001 940 CLA + 01777 0 52 05501 941 SKB =02*/19 COMMON RELOC + 02000 0 01 02002 942 BRU $+2 + 02001 0 01 02004 943 BRU $+3 + 02002 2 76 04455 944 LDA BUFF,2 + 02003 2 77 37777 945 EAX -1,2 + 02004 0 35 05321 946 STA COMR + 02005 0 46 00001 947 CLA + 02006 0 52 05477 948 SKB =01*/19 LOAD RELOC + 02007 0 01 02011 949 BRU $+2 + 02010 0 01 02013 950 BRU $+3 + 02011 2 76 04455 951 LDA BUFF,2 + 02012 2 77 37777 952 EAX -1,2 + 02013 0 35 05316 953 STA RELOC + 02014 0 46 00200 954 CXA RESULTANT WORD COUNT TO A + 02015 0 14 05423 955 ETR =077 DELETE ANY INDEX GARBAGE + 02016 0 54 05440 956 SUB =1 + 02017 0 35 05313 957 STA RDCNT COUNT OF NO. INSTRUCTION IN RECORD + 02020 0 46 00010 958 CBA MODE/ADDRESS WORD + 02021 0 14 05414 959 ETR =0337777 + 02022 0 35 05322 960 STA PROGP FIRST LOC OF RECORD + 02023 0 54 05440 961 SUB =1 + 02024 0 35 05405 962 STA PROGP1 ONE BELOW RECORD + 02025 0 55 05313 963 ADD RDCNT + 02026 0 35 05406 964 STA PROGP2 END OF RECORD + 02027 0 71 05336 965 LDX RDTX + 02030 0 51 01744 966 BRR READ2 + 967 * ROUTINE TO MODIFY P-COUNTER, CALLED WITH NEW ADDRESS AND MODE + 968 * IN A-REG. + 02031 0 00 00000 969 PSET PZE + 02032 0 50 05322 970 SKE PROGP + 02033 0 01 02035 971 BRU $+2 + 02034 0 51 02031 972 BRR PSET P-COUTNER OK, NO WORK + 02035 0 75 05435 973 LDB =0300000 + 02036 0 70 05322 974 SKM PROGP IS MODE UNCHANGED + 02037 0 01 02053 975 BRU PSET1 NO,FIX IT + 02040 0 53 05306 976 SKN PASS + 02041 0 01 02044 977 BRU $+3 PASS 2 + 02042 0 35 05322 978 STA PROGP PASS 1 + 02043 0 51 02031 979 BRR PSET + 02044 0 73 05322 980 SKG PROGP IS IT FORWD OR BACKWARD + 02045 0 01 02050 981 BRU $+3 BACKWARD ()ORG + 02046 0 43 02106 982 BRM PSETB + 02047 0 51 02031 983 BRR PSET + 02050 0 35 05322 984 STA PROGP RESET PROGRAM COUNTER + 02051 0 43 02202 985 BRM ORGLIN ORIGIN LINE + 02052 0 51 02031 986 BRR PSET + 02053 0 53 05306 987 PSET1 SKN PASS + 02054 0 01 02066 988 BRU PSET2 PASS 2 + 02055 0 62 05322 989 XMA PROGP + 02056 0 35 45373 990 STA *BLKNXT NEXT AVAILABLE BLOCK BIT CELL + 02057 0 61 05373 991 MIN BLKNXT + 02060 0 53 45373 992 SKN *BLKNXT IS NEXT PAIR OPEN + 02061 0 43 04366 993 BRM MEMOV NO + 02062 0 76 05322 994 LDA PROGP + 02063 0 35 45373 995 STA *BLKNXT + 02064 0 61 05373 996 MIN BLKNXT MOVE TO CLOSURE CELL + 02065 0 51 02031 997 BRR PSET + 02066 0 35 05341 998 PSET2 STA PSTMPA + 02067 0 76 45373 999 LDA *BLKNXT GET END OF PRESENT BLOCK + 02070 0 61 05373 1000 MIN BLKNXT MOVE TO NEXT START + 02071 0 50 05413 1001 SKE =-1 TEST FOR ERRORS + 02072 0 01 02074 1002 BRU $+2 + 02073 0 43 04366 1003 BRM MEMOV + 02074 0 50 05322 1004 SKE PROGP + 02075 0 43 02106 1005 BRM PSETB + 02076 0 76 45373 1006 LDA *BLKNXT GET START OF NEXT BLOCK + 02077 0 61 05373 1007 MIN BLKNXT + 02100 0 35 05322 1008 STA PROGP + 02101 0 43 02202 1009 BRM ORGLIN + 02102 0 76 05341 1010 LDA PSTMPA + 02103 0 50 05322 1011 SKE PROGP + 02104 0 43 02106 1012 BRM PSETB + 02105 0 51 02031 1013 BRR PSET + 02106 0 00 00000 1014 PSETB PZE + 02107 0 35 05337 1015 STA PSBTA + 02110 0 37 05340 1016 STX PSBTX + 02111 0 46 00001 1017 PSETB9 CLA +* 02112 0 35 00000 1018 STA RESVE + 02113 0 43 03750 1019 BRM ADRESS + 02114 0 43 03764 1020 BRM BLNKOP + 02115 0 76 05322 1021 LDA PROGP + 02116 0 43 03203 1022 BRM CDFLST ARE WE DEFINED + 02117 0 01 02121 1023 BRU $+2 NOT DEFINED + 02120 0 01 02132 1024 BRU PSETB1 + 02121 0 43 02717 1025 BRM CADLST ARE WE ADDRESSED + 02122 0 01 02125 1026 BRU $+3 NO + 02123 0 43 03637 1027 BRM MAKLAB YES, MAKE A LABEL + 02124 0 01 02132 1028 BRU PSETB1 + 02125 0 76 05436 1029 LDA =' ' + 02126 0 35 05301 1030 STA C1 GENERATE BLANK LABEL + 02127 0 35 05302 1031 STA C2 + 02130 0 46 00001 1032 CLA + 02131 0 35 05303 1033 STA C3 + 02132 0 43 04073 1034 PSETB1 BRM LABCRD LABEL AND CARD NO. + 02133 0 76 05515 1035 LDA ='RES ' RESERVE ORDER + 02134 0 35 05301 1036 STA C1 + 02135 0 76 05436 1037 LDA =' ' + 02136 0 35 05302 1038 STA C2 + 02137 0 35 05303 1039 STA C3 + 02140 0 76 05476 1040 LDA =3 + 02141 0 77 05254 1041 EAX LINE+9 + 02142 0 43 04006 1042 BRM PACK +* 02143 0 61 00000 1043 PSETB2 MIN RESVE + 02144 0 61 05322 1044 MIN PROGP + 02145 0 76 05322 1045 LDA PROGP + 02146 0 50 05337 1046 SKE PSBTA + 02147 0 01 02151 1047 BRU $+2 + 02150 0 01 02156 1048 BRU PFLUSH + 02151 0 43 03203 1049 BRM CDFLST ARE WE DEFINED + 02152 0 01 02154 1050 BRU $+2 NO + 02153 0 01 02156 1051 BRU PFLUSH YES + 02154 0 43 02717 1052 BRM CADLST ARE WE ADDRESSED + 02155 0 01 02143 1053 BRU PSETB2 NO,MOVE ON +* 02156 0 76 00000 1054 PFLUSH LDA RESVE NO. CELLS RESERVED + 02157 00000005 1055 OCT 5 MAKE AN OCTAL NO. + 02160 0 76 05301 1056 LDA C1 + 02161 0 16 05512 1057 MRG =' 00' BLANK TOP TWO + 02162 0 75 05302 1058 LDB C2 + 02163 0 67 20014 1059 LCY 12 + 02164 0 35 05301 1060 STA C1 + 02165 0 36 05302 1061 STB C2 + 02166 0 76 05436 1062 LDA =' ' + 02167 0 35 05303 1063 STA C3 + 02170 0 76 05476 1064 LDA =3 + 02171 0 77 05256 1065 EAX LINE+11 + 02172 0 43 04006 1066 BRM PACK + 02173 0 43 03772 1067 BRM BLNKLN BLANK REST OF LINE + 02174 0 43 04164 1068 BRM OUTPUT PRINT LINE IMAGE + 02175 0 76 05322 1069 LDA PROGP + 02176 0 50 05337 1070 SKE PSBTA IS THIS LOOP DONE + 02177 0 01 02111 1071 BRU PSETB9 NO,GO AROUND AGAIN + 02200 0 71 05340 1072 LDX PSBTX + 02201 0 51 02106 1073 BRR PSETB + 02202 0 00 00000 1074 ORGLIN PZE + 02203 0 76 05436 1075 LDA =' ' +I 02204 1 11 00006 1076 I DO 6 +R 02205 0 35 07446 1077 STA LINE+I-1 BLANK LIST BITS + 02206 0 35 05301 1078 STA C1 + 02207 0 35 05302 1079 STA C2 BLANK LABEL + 02210 0 46 00001 1080 CLA + 02211 0 35 05303 1081 STA C3 + 02212 0 43 04073 1082 BRM LABCRD + 02213 0 76 05322 1083 LDA PROGP + 02214 0 66 00017 1084 RSH 15 MODE TO INTEGER + 02215 0 14 05476 1085 ETR =3 + 02216 0 37 02246 1086 STX ORGTX + 02217 0 46 00400 1087 CAX + 02220 2 76 02247 1088 LDA ORGLS,2 + 02221 0 35 05301 1089 STA C1 + 02222 0 76 05436 1090 LDA =' ' + 02223 0 35 05303 1091 STA C3 + 02224 0 76 05476 1092 LDA =3 + 02225 0 77 05254 1093 EAX LINE+9 + 02226 0 43 04006 1094 BRM PACK + 02227 0 76 05322 1095 LDA PROGP + 02230 00000005 1096 OCT 5 + 02231 0 76 05301 1097 LDA C1 + 02232 0 16 05512 1098 MRG =' 00' BLANK TOP TWO + 02233 0 75 05302 1099 LDB C2 + 02234 0 67 20006 1100 LCY 6 + 02235 0 35 05301 1101 STA C1 + 02236 0 36 05302 1102 STB C2 + 02237 0 76 05476 1103 LDA =3 + 02240 0 77 05256 1104 EAX LINE+11 + 02241 0 43 04006 1105 BRM PACK + 02242 0 43 03772 1106 BRM BLNKLN + 02243 0 43 04164 1107 BRM OUTPUT + 02244 0 71 02246 1108 LDX ORGTX RETRIEVE ENTERING INDEX + 02245 0 51 02202 1109 BRR ORGLIN + 02246 1110 ORGTX RES 1 + 02247 21465127 1111 ORGLS DATA 'AORG' + 02250 51465127 1112 DATA 'RORG' + 02251 23465127 1113 DATA 'CORG' + 02252 31465127 1114 DATA 'IORG' ILLEGAL + 1115 * SUBROUTINE INSTST INSTRUCTION TEST + 1116 * X,A SAVE OVER ROUTINE + 1117 * INTERFACE CELL LABELS ARE AS FOLLOWS: + 1118 * ANS 0 IF TRUE, NEG IF FALSE, FIELD NO. IN LOW BITS + 1119 * STAR NEG IF NOT INDIRECTLY ADDRESSED + 1120 * TAG -TAG IF TRUE, COUNT OR DATA IF FALSE + 1121 * INS1, INS2, INS3 8 CHARACTER INSTRUCTION OP CODE BITS, NEG IF + 1122 * OCTAL ADDRESS DEMANDED + 1123 * ADRP ADDRESS POINTED TO, OR 0 + 1124 * POPT1, POPT2 TABLES OF POP NAMES, WORDS1 AND WORD2 + 1125 * POPR POP RELOCATION + 1126 * RELOC LOAD RELOCATION + 1127 * COMR COMMON RELOCATION + 1128 * IOREL I/O RELOCATION + 1129 * FORT NEG. IF FORTRAN OPCODES NEEDED + 02253 0 00 00000 1130 INSTST PZE + 02254 0 35 05407 1131 STA ITA + 02255 0 37 05410 1132 STX ITX + 02256 0 46 00002 1133 CLB + 02257 0 17 05506 1134 EOR =040000 CHANGE * BIT + 02260 0 66 00017 1135 RSH 15 + 02261 0 36 05330 1136 STB STAR + 02262 0 72 05425 1137 SKA =0100 POP BIT + 02263 0 01 02330 1138 BRU POPMB + 02264 0 14 05423 1139 ETR =077 + 02265 0 50 05431 1140 SKE =02 IS IT EOM + 02266 0 01 02270 1141 BRU $+2 +T 02267 0 16 05412 1142 MRG =1*/23 + 02270 0 50 05433 1143 SKE =040 IS IT SKS + 02271 0 01 02273 1144 BRU $+2 +T 02272 0 16 05412 1145 MRG =1*/23 + 02273 0 50 05516 1146 SKE =046 IS IT RCH + 02274 0 01 02276 1147 BRU $+2 +T 02275 0 16 05412 1148 MRG =1*/23 + 02276 0 35 05327 1149 STA INS3 + 02277 0 46 00400 1150 CAX + 02300 2 76 02416 1151 LDA INST1,2 + 02301 0 50 05413 1152 SKE =-1 + 02302 0 01 02304 1153 BRU $+2 + 02303 0 01 02356 1154 BRU NOINS + 02304 0 35 05325 1155 STA INS1 + 02305 0 76 05436 1156 LDA =' ' + 02306 0 35 05326 1157 STA INS2 + 02307 0 46 00001 1158 SETTRU CLA SET ANSWER TRUE + 02310 0 35 05332 1159 STA ANS + 02311 0 75 05407 1160 LDB ITA + 02312 0 46 00001 1161 CLA + 02313 0 67 00003 1162 LSH 3 + 02314 0 35 05331 1163 STA TAG + 02315 0 76 05407 1164 SETADR LDA ITA + 02316 0 14 05442 1165 ETR =037777 TAKE ADDRESS ONLY + 02317 0 16 05435 1166 MRG =03*/15 BOTH COMMON AND LOAD + 02320 0 53 05316 1167 SKN RELOC + 02321 0 17 05500 1168 EOR =01*/15 DELETE LOAD BIT + 02322 0 53 05321 1169 SKN COMR + 02323 0 17 05464 1170 EOR =02*/15 DELETE COMMON BIT + 02324 0 35 05323 1171 STA ADRP + 02325 0 76 05407 1172 LDA ITA + 02326 0 71 05410 1173 LDX ITX + 02327 0 51 02253 1174 BRR INSTST + 00002330 1175 POPMB EQU $ + 02330 0 53 05320 1176 SKN POPR + 02331 0 01 02342 1177 BRU FORTMB + 02332 0 14 05423 1178 ETR =077 + 02333 0 35 05327 1179 STA INS3 + 02334 0 46 00400 1180 CAX + 02335 2 76 02517 1181 LDA POPT1,2 + 02336 0 35 05325 1182 STA INS1 + 02337 2 76 02617 1183 LDA POPT2,2 + 02340 0 35 05326 1184 STA INS2 + 02341 0 01 02307 1185 BRU SETTRU + 02342 0 53 02516 1186 FORTMB SKN FORT + 02343 0 01 02356 1187 BRU NOINS + 02344 0 14 05423 1188 ETR =077 + 02345 0 46 00400 1189 CAX + 02346 2 76 02516 1190 LDA FORT1,2 + 02347 0 50 05413 1191 SKE =-1 + 02350 0 01 02352 1192 BRU $+2 + 02351 0 01 02356 1193 BRU NOINS + 02352 0 35 05325 1194 STA INS1 + 02353 0 76 05436 1195 LDA =' ' + 02354 0 35 05326 1196 STA INS2 + 02355 0 01 02307 1197 BRU SETTRU +T 02356 0 75 05412 1198 NOINS LDB =1*/23+0 MEG + 1 FIELD + 02357 0 36 05332 1199 STB ANS + 02360 0 36 05330 1200 STB STAR CANNOT BE INDIR ECT + 02361 0 53 05316 1201 SKN RELOC + 02362 0 01 02364 1202 BRU $+2 + 02363 0 01 02371 1203 BRU IFORM F1014 IF RELOCATABLE + 02364 0 53 05321 1204 SKN COMR + 02365 0 01 02367 1205 BRU $+2 + 02366 0 01 02371 1206 BRU IFORM + 02367 0 53 05317 1207 SKN IOREL + 02370 0 01 02404 1208 BRU IDATA DATA WORD + 02371 0 61 05332 1209 IFORM MIN ANS SET TO 2 FIELDS + 02372 0 76 05517 1210 LDA ='F101' + 02373 0 35 05325 1211 STA INS1 + 02374 0 76 05520 1212 LDA ='4 ' + 02375 0 35 05326 1213 STA INS2 + 02376 0 46 00001 1214 CLA + 02377 0 35 05327 1215 STA INS3 + 02400 0 75 05407 1216 LDB ITA + 02401 0 67 00012 1217 LSH 10 + 02402 0 35 05331 1218 STA TAG + 02403 0 01 02315 1219 BRU SETADR + 02404 0 46 00001 1220 IDATA CLA + 02405 0 35 05323 1221 STA ADRP + 02406 0 76 05467 1222 LDA ='DATA' + 02407 0 35 05325 1223 STA INS1 + 02410 0 76 05436 1224 LDA =' ' + 02411 0 35 05326 1225 STA INS2 + 02412 0 76 05407 1226 LDA ITA + 02413 0 35 05331 1227 STA TAG + 02414 0 71 05410 1228 LDX ITX + 02415 0 51 02253 1229 BRR INSTST + 02416 30436360 1230 INST1 DATA 'HLT ' 0 + 02417 22516460 1231 DATA 'BRU ' 1 + 02420 25464460 1232 DATA 'EOM ' 2 + 02421 77777777 1233 DATA -1 3 + 02422 77777777 1234 DATA -1 4 + 02423 77777777 1235 DATA -1 5 + 02424 77777777 1236 DATA -1 6 + 02425 77777777 1237 DATA -1 7 + 02426 44317060 1238 DATA 'MIY ' 10 + 02427 77777777 1239 DATA -1 11 + 02430 44316660 1240 DATA 'MIW ' 12 + 02431 47466360 1241 DATA 'POT ' 13 + 02432 25635160 1242 DATA 'ETR ' 14 + 02433 77777777 1243 DATA -1 15 + 02434 44512760 1244 DATA 'MRG ' 16 + 02435 25465160 1245 DATA 'EOR ' 17 + 02436 45464760 1246 DATA 'NOP ' 20 + 02437 77777777 1247 DATA -1 21 + 02440 77777777 1248 DATA -1 22 + 02441 25676460 1249 DATA 'EXU ' 23 + 02442 77777777 1250 DATA -1 24 + 02443 77777777 1251 DATA -1 25 + 02444 77777777 1252 DATA -1 26 + 02445 77777777 1253 DATA -1 27 + 02446 70314460 1254 DATA 'YIM ' 30 + 02447 77777777 1255 DATA -1 31 + 02450 66314460 1256 DATA 'WIM ' 32 + 02451 47314560 1257 DATA 'PIN ' 33 + 02452 77777777 1258 DATA -1 34 + 02453 62632160 1259 DATA 'STA ' 35 + 02454 62632260 1260 DATA 'STB ' 36 + 02455 62636760 1261 DATA 'STX ' 37 + 02456 62426260 1262 DATA 'SKS ' 40 + 02457 22516760 1263 DATA 'BRX ' 41 + 02460 77777777 1264 DATA -1 42 + 02461 22514460 1265 DATA 'BRM ' 43 + 02462 77777777 1266 DATA -1 44 + 02463 77777777 1267 DATA -1 45 + 02464 51233060 1268 DATA 'RCH ' 46 + 02465 77777777 1269 DATA -1 47 + 02466 62422560 1270 DATA 'SKE ' 50 + 02467 22515160 1271 DATA 'BRR ' 51 + 02470 62422260 1272 DATA 'SKB ' 52 + 02471 62424560 1273 DATA 'SKN ' 53 + 02472 62642260 1274 DATA 'SUB ' 54 + 02473 21242460 1275 DATA 'ADD ' 55 + 02474 62642360 1276 DATA 'SUC ' 56 + 02475 21242360 1277 DATA 'ADC ' 57 + 02476 62425160 1278 DATA 'SKR ' 60 + 02477 44314560 1279 DATA 'MIN ' 61 + 02500 67442160 1280 DATA 'XMA ' 62 + 02501 21244460 1281 DATA 'ADM ' 63 + 02502 44644360 1282 DATA 'MUL ' 64 + 02503 24316560 1283 DATA 'DIV ' 65 + 02504 51623060 1284 DATA 'RSH ' 66 + 02505 43623060 1285 DATA 'LSH ' 67 + 02506 62424460 1286 DATA 'SKM ' 70 + 02507 43246760 1287 DATA 'LDX ' 71 + 02510 62422160 1288 DATA 'SKA ' 72 + 02511 62422760 1289 DATA 'SKG ' 73 + 02512 62422460 1290 DATA 'SKD ' 74 + 02513 43242260 1291 DATA 'LDB ' 75 + 02514 43242160 1292 DATA 'LDA ' 76 + 02515 25216760 1293 DATA 'EAX ' 77 + 00002516 1294 FORT1 EQU $ + 02516 00000000 1295 FORT DATA 0 NO FORTRAN OPTION + 02517 1296 $POPT1 RES 64 + 02617 1297 $POPT2 RES 64 + 02717 0 00 00000 1298 CADLST PZE CHECK IF ON ADDRESS LIST + 02720 0 37 05342 1299 STX ADTMPX + 02721 0 75 05414 1300 LDB =0337777 + 02722 0 71 05343 1301 LDX ADRTOP + 02723 0 46 00600 1302 CAD1 XXA + 02724 0 54 05440 1303 SUB =1 + 02725 0 73 05344 1304 SKG ADRBOT + 02726 0 01 02736 1305 BRU ADNF EXIT FALSE + 02727 0 46 00600 1306 XXA + 02730 2 70 00000 1307 SKM 0,2 + 02731 0 01 02723 1308 BRU CAD1 NOT THIS, TRY ANOTHER + 02732 0 61 02717 1309 MIN CADLST JMP IF FOUND + 02733 0 37 05300 1310 STX C0 TRUE POINTER TO C0 + 02734 0 71 05342 1311 LDX ADTMPX + 02735 0 51 02717 1312 BRR CADLST + 02736 0 46 00200 1313 ADNF CXA RETURN SEARCH ITEM TO A + 02737 0 71 05413 1314 LDX =-1 + 02740 0 37 05300 1315 STX C0 SET C0 NEGATIVE + 02741 0 71 05342 1316 LDX ADTMPX RETRIEVE ENTRY INDEX + 02742 0 51 02717 1317 BRR CADLST + 02743 0 00 00000 1318 SADLST PZE ROUTINE TO ADD TO ADDRESS LIST + 02744 0 43 02717 1319 BRM CADLST IS IT THERE ALREADY + 02745 0 01 02753 1320 BRU ADTOP1 NO + 02746 0 71 05300 1321 LDX C0 + 02747 0 16 05424 1322 MRG =010000000 SECOND REFERENCE FLAG + 02750 2 62 00000 1323 XMA 0,2 STORE IT AND GET ORIGINAL VERSION + 02751 0 71 05342 1324 LDX ADTMPX GET X FROM WHERE CADLST PUT IT + 02752 0 51 02743 1325 BRR SADLST + 02753 0 71 05343 1326 ADTOP1 LDX ADRTOP GET POINTER TO NEXT AVAILABLE + 02754 0 61 05343 1327 MIN ADRTOP + 02755 2 35 00000 1328 STA 0,2 + 02756 0 46 00600 1329 XXA + 02757 0 55 05431 1330 ADD =2 + 02760 0 73 05351 1331 SKG DEFBOT CHECK FOR MEMORY OVERFLOW + 02761 0 01 02763 1332 BRU $+2 OK + 02762 0 43 04366 1333 BRM MEMOV SORRY, PROG TOO BIG + 02763 0 46 00200 1334 CXA + 02764 0 71 05342 1335 LDX ADTMPX GET X FROM WHERE CADLST PUT IT + 02765 0 51 02743 1336 BRR SADLST + 1337 * ROUTINE TO DELETE AN ITEM FROM ADDRESS LIST + 02766 0 00 00000 1338 DADLST PZE + 02767 0 43 02717 1339 BRM CADLST FIND IT + 02770 0 00 00000 1340 HLT ERROR + 02771 0 71 05300 1341 LDX C0 + 02772 0 76 05414 1342 LDA =0337777 BOTH MODES UP, TOP MEM + 02773 2 62 00000 1343 XMA 0,2 + 02774 0 72 05424 1344 SKA =010000000 SKIP IF ONLY 1 REFERENCE + 02775 2 35 00000 1345 STA 0,2 RESTORE THE REFERENCE + 02776 0 71 05342 1346 LDX ADTMPX + 02777 0 51 02766 1347 BRR DADLST + 1348 * CHECK REFERENCE LIST AN OPEN CHAIN ENDS WITH ALL 0'S A CLOSED O + 1349 * WITH TAG 2=1 + 03000 0 00 00000 1350 CRFLST PZE + 03001 0 37 05345 1351 STX RFTMPX + 03002 0 75 05414 1352 LDB =0337777 + 03003 0 71 05346 1353 LDX REFTOP + 03004 0 46 00600 1354 CRF1 XXA + 03005 0 54 05476 1355 SUB =3 + 03006 0 73 05347 1356 SKG REFBOT + 03007 0 01 03035 1357 BRU RFNF REFERENCE NOT FOUND + 03010 0 35 05300 1358 STA C0 + 03011 0 46 00600 1359 XXA + 03012 2 70 00000 1360 CRF2 SKM 0,2 + 03013 0 01 03030 1361 BRU CRF3 NOT THIS ONE, TRY AGAIN + 03014 2 75 00000 1362 LDB 0,2 FOUND IT, GET TYPE BITS + 03015 0 36 05303 1363 STB C3 + 03016 0 46 00600 1364 XXA + 03017 0 62 05300 1365 XMA C0 SWITCH TO FIRST POINTER + 03020 0 46 00600 1366 XXA + 03021 2 75 00002 1367 LDB 2,2 PICK UP LABEL + 03022 0 36 05302 1368 STB C2 + 03023 2 75 00001 1369 LDB 1,2 + 03024 0 36 05301 1370 STB C1 + 03025 0 61 03000 1371 MIN CRFLST EXIT TRUE + 03026 0 71 05345 1372 LDX RFTMPX SAVE X + 03027 0 51 03000 1373 BRR CRFLST + 03030 2 52 00000 1374 CRF3 SKB 0,2 IS THIS A CLOSING ENTRY + 03031 0 01 03033 1375 BRU $+2 NO + 03032 0 01 03004 1376 BRU CRF1 YES, MOVE OVER LABEL + 03033 2 77 37777 1377 EAX -1,2 MOVE TO NEXT ADDRESS ITEM + 03034 0 01 03012 1378 BRU CRF2 TRY IT + 03035 0 46 00200 1379 RFNF CXA RETURN SEARCH ITEM TO A + 03036 0 71 05413 1380 LDX =-1 EXIT FALSE + 03037 0 37 05300 1381 STX C0 + 03040 0 71 05345 1382 LDX RFTMPX + 03041 0 51 03000 1383 BRR CRFLST + 1384 * SET ON REFERENCE LIST + 03042 0 00 00000 1385 SRFLST PZE + 03043 0 53 05346 1386 SKN REFTOP IS IT OPENED YET + 03044 0 01 03053 1387 BRU SRFL1 YES + 03045 0 46 00004 1388 CAB + 03046 0 76 05351 1389 LDA DEFBOT NO, OPEN IT BELOW DEF + 03047 0 35 05346 1390 STA REFTOP + 03050 0 54 05440 1391 SUB =1 + 03051 0 35 05347 1392 STA REFBOT + 03052 0 46 00010 1393 CBA + 03053 0 37 05345 1394 SRFL1 STX RFTMPX SAVE X + 03054 0 71 05347 1395 LDX REFBOT + 03055 0 46 00600 1396 XXA + 03056 0 54 05430 1397 SUB =4 FOUR ELEMENTS TO START HERE + 03057 0 73 05343 1398 SKG ADRTOP + 03060 0 43 04366 1399 BRM MEMOV + 03061 0 35 05347 1400 STA REFBOT NEW LIST BOTTOM + 03062 0 46 00600 1401 XXA + 03063 0 46 00002 1402 CLB + 03064 2 36 00001 1403 STB 1,2 + 03065 0 75 05303 1404 LDB C3 + 03066 2 36 00002 1405 STB 2,2 + 03067 0 75 05301 1406 LDB C1 + 03070 2 36 00003 1407 STB 3,2 + 03071 0 75 05302 1408 LDB C2 + 03072 2 36 00004 1409 STB 4,2 + 03073 0 71 05345 1410 LDX RFTMPX + 03074 0 51 03042 1411 BRR SRFLST + 1412 * FIRST REFERENCE OPEN TAIL + 03075 0 00 00000 1413 FRFOT PZE + 03076 0 75 03075 1414 LDB $-1 + 03077 0 36 03103 1415 STB NRFOT + 03100 0 75 05346 1416 LDB REFTOP TOP OF LIST + 03101 0 36 05350 1417 STB LRFOT LAST REFERENCE OPEN TAIL + 03102 0 01 03104 1418 BRU $+2 + 03103 0 00 00000 1419 NRFOT PZE + 03104 0 37 05345 1420 STX RFTMPX + 03105 0 76 05413 1421 LDA =-1 + 03106 0 71 05350 1422 LDX LRFOT + 03107 0 75 05414 1423 LDB =0337777 + 03110 0 46 00600 1424 RFOT1 XXA + 03111 0 54 05430 1425 SUB =4 + 03112 0 73 05347 1426 SKG REFBOT + 03113 0 01 03141 1427 BRU OTNF EXIT FALSE + 03114 0 35 05300 1428 STA C0 + 03115 0 46 00600 1429 XXA + 03116 2 52 00000 1430 RFOT3 SKB 0,2 IS IT AN END + 03117 0 01 03137 1431 BRU RFOT2 NO + 03120 2 72 00000 1432 SKA 0,2 ITS AN END, IS IT OPEN + 03121 0 01 03110 1433 BRU RFOT1 NO + 03122 0 37 05350 1434 STX LRFOT SAVE POINTER FOR NEXT SEARCH ITEM + 03123 0 46 00200 1435 CXA YES, SAVE POINTER + 03124 0 62 05300 1436 XMA C0 GET POINTER TO LABEL + 03125 2 75 00001 1437 LDB 1,2 PICK UP LINK WORD + 03126 0 36 05303 1438 STB C3 + 03127 0 46 00410 1439 RCH 0410 CBA, CAX + 03130 2 75 00002 1440 LDB 2,2 + 03131 0 36 05301 1441 STB C1 + 03132 2 75 00003 1442 LDB 3,2 + 03133 0 36 05302 1443 STB C2 + 03134 0 61 03103 1444 MIN NRFOT EXIT TRUE + 03135 0 71 05345 1445 LDX RFTMPX + 03136 0 51 03103 1446 BRR NRFOT + 00003137 1447 RFOT2 EQU $ + 03137 2 77 37777 1448 EAX -1,2 TRY NEXT ELEMENT OF SUBLIST + 03140 0 01 03116 1449 BRU RFOT3 + 03141 0 71 05413 1450 OTNF LDX =-1 OPEN TAIL NOT FOUND + 03142 0 37 05350 1451 STX LRFOT + 03143 0 37 05300 1452 STX C0 + 03144 0 71 05345 1453 LDX RFTMPX + 03145 0 51 03103 1454 BRR NRFOT + 1455 * INSERT ONTO REFERENCE LIST ASSUMES LRFOT HAS TAIL TO WHICH WE + 1456 * SHOULD TAG + 03146 0 00 00000 1457 IRFLST PZE + 03147 0 72 05414 1458 SKA =0337777 IS ELEMENT A TAIL + 03150 0 01 03153 1459 BRU IRFL1 NO + 03151 0 35 45350 1460 STA *LRFOT YES, CLOSE THIS LIST + 03152 0 51 03146 1461 BRR IRFLST A SIMPLE INSERTION DONE + 03153 0 37 05345 1462 IRFL1 STX RFTMPX + 03154 0 46 00004 1463 CAB + 03155 0 76 05347 1464 LDA REFBOT + 03156 0 54 05440 1465 SUB =1 WERE ADDING ONE ITEM + 03157 0 73 05343 1466 SKG ADRTOP DOES IT FIT + 03160 0 43 04366 1467 BRM MEMOV SO SORRY + 03161 0 35 05347 1468 STA REFBOT + 03162 0 54 05350 1469 SUB LRFOT + 03163 0 55 05440 1470 ADD =1 + 03164 0 46 00400 1471 CAX + 03165 0 76 05350 1472 LDA LRFOT + 03166 0 55 05521 1473 ADD =027600001 + 03167 0 35 03173 1474 STA IRFL2 + 03170 0 76 05350 1475 LDA LRFOT + 03171 0 55 05522 1476 ADD =023500000 + 03172 0 35 03174 1477 STA IRFL3 + 03173 0 76 00000 1478 IRFL2 LDA (LRFOT)+1,2 + 03174 0 35 00000 1479 IRFL3 STA (LRFOT),2 + 03175 0 41 03173 1480 BRX $-2 MOVE THE LIST DOWN 1 + 03176 0 36 45350 1481 STB *LRFOT STOW THE NEW ENTRY + 03177 0 60 05350 1482 SKR LRFOT MOVE FOR NEXT SEARCH + 03200 0 46 00010 1483 CBA + 03201 0 71 05345 1484 LDX RFTMPX + 03202 0 51 03146 1485 BRR IRFLST + 03203 0 00 00000 1486 CDFLST PZE SEARCH FOR ITEM ON EXTERNAL DEF LIST + 03204 0 37 05300 1487 STX C0 + 03205 0 75 05414 1488 LDB =0337777 + 03206 0 71 05352 1489 LDX DEFTOP + 03207 0 46 00600 1490 CDF1 XXA + 03210 0 54 05476 1491 SUB =3 + 03211 0 73 05351 1492 SKG DEFBOT + 03212 0 01 03231 1493 BRU DFNF EXIT FALSE + 03213 0 46 00600 1494 XXA + 03214 2 70 00000 1495 SKM 0,2 + 03215 0 01 03207 1496 BRU CDF1 NOT THIS, TRY NEXT + 03216 2 75 00002 1497 LDB 2,2 FOUND IT, MOVE TO CENTRAL + 03217 0 36 05302 1498 STB C2 + 03220 2 75 00001 1499 LDB 1,2 + 03221 0 36 05301 1500 STB C1 + 03222 2 75 00000 1501 LDB 0,2 + 03223 0 36 05303 1502 STB C3 + 03224 0 46 00600 1503 XXA SAVE A IN X, POINTER TO A + 03225 0 62 05300 1504 XMA C0 PICK UP OLD X, SAVE POINTER IN C0 + 03226 0 46 00600 1505 XXA A AND X SAFE + 03227 0 61 03203 1506 MIN CDFLST EXIT TRUE + 03230 0 51 03203 1507 BRR CDFLST + 03231 0 76 05413 1508 DFNF LDA =-1 + 03232 0 62 05300 1509 XMA C0 SET C0 NEGATIVE, GET INDEX + 03233 0 46 00600 1510 XXA REPLACES X AND A + 03234 0 51 03203 1511 BRR CDFLST + 03235 0 00 00000 1512 SDFLST PZE + 03236 0 53 05346 1513 SKN REFTOP IS REFERENCE LIST OPEN + 03237 0 43 04366 1514 BRM MEMOV YES, FAILURE + 03240 0 37 05353 1515 STX DFTMPX + 03241 0 71 05351 1516 LDX DEFBOT + 03242 0 46 00600 1517 XXA + 03243 0 54 05476 1518 SUB =3 + 03244 0 73 05343 1519 SKG ADRTOP + 03245 0 43 04366 1520 BRM MEMOV MEMORY OVERFLOW + 03246 0 35 05351 1521 STA DEFBOT + 03247 0 46 00600 1522 XXA + 03250 0 75 05303 1523 LDB C3 + 03251 2 36 00001 1524 STB 1,2 + 03252 0 75 05301 1525 LDB C1 + 03253 2 36 00002 1526 STB 2,2 + 03254 0 75 05302 1527 LDB C2 + 03255 2 36 00003 1528 STB 3,2 + 03256 0 71 05353 1529 LDX DFTMPX + 03257 0 51 03235 1530 BRR SDFLST + 1531 * ROUTINE TO PICK UP THE ADDRESS OF REFERENCED INSTRUCTION + 03260 0 00 00000 1532 GADR PZE + 03261 0 37 05354 1533 STX GATMPX + 03262 0 54 05322 1534 SUB PROGP GET WORD NO. OF RECORD + 03263 0 35 05355 1535 STA GATMPA SAVE IT + 03264 0 55 05431 1536 ADD =2 INDEX POINTER TO THIS WORD AND BUFF + 03265 0 46 00401 1537 RCH 0401 CAX, CLA +T 03266 0 75 05412 1538 LDB =1*/23 + 03267 0 66 45355 1539 RSH *GATMPA + 03270 2 76 04455 1540 LDA BUFF,2 PICK UP THE WORD + 03271 0 14 05442 1541 ETR =037777 ADDRESS ONLY + 03272 0 16 05441 1542 MRG =020000000 REFERNCE FLAG + 03273 0 52 05321 1543 SKB COMR IS IT COMMONED + 03274 0 16 05464 1544 MRG =0200000 YES, SET COMMON FLAG + 03275 0 52 05316 1545 SKB RELOC IS IT RELOCATABLE + 03276 0 16 05500 1546 MRG =0100000 YES SET RELOC FLAG + 03277 0 71 05354 1547 LDX GATMPX + 03300 0 51 03260 1548 BRR GADR + 03301 0 00 00000 1549 SORTAD PZE SORT ADDRESS LIST + 03302 0 76 05344 1550 LDA ADRBOT + 03303 0 54 05343 1551 SUB ADRTOP + 03304 0 55 05440 1552 ADD =1 + 03305 0 35 05356 1553 STA SORTX + 03306 0 76 05343 1554 LDA ADRTOP + 03307 0 14 05442 1555 ETR =037777 + 03310 0 16 05441 1556 MRG =020000000 + 03311 0 35 05357 1557 STA SORTOP + 03312 0 71 05356 1558 LDX SORTX + 03313 0 76 45357 1559 LDA *SORTOP DELETE REFERENCE FLAGS + 03314 0 14 05414 1560 ETR =0337777 MODE AND ADDRESS ONLY + 03315 0 35 45357 1561 STA *SORTOP + 03316 0 41 03313 1562 BRX $-3 + 03317 0 71 05356 1563 LDX SORTX PICK UP POINTER 1 + 03320 0 37 05360 1564 SORTA1 STX SORTX2 PUT LIST IN INCREASING ORDER + 03321 0 37 05356 1565 STX SORTX + 03322 0 76 45357 1566 LDA *SORTOP + 03323 0 41 03325 1567 BRX $+2 + 03324 0 01 03341 1568 BRU SORTA2 + 03325 0 73 45357 1569 SORTA3 SKG *SORTOP + 03326 0 01 03331 1570 BRU SORTA4 + 03327 0 76 45357 1571 LDA *SORTOP GET SMALLER ITEM + 03330 0 37 05360 1572 STX SORTX2 SAVE IT LOCATION + 03331 0 41 03325 1573 SORTA4 BRX SORTA3 + 03332 0 71 05356 1574 LDX SORTX + 03333 0 62 45357 1575 XMA *SORTOP + 03334 0 71 05360 1576 LDX SORTX2 + 03335 0 35 45357 1577 STA *SORTOP + 03336 0 71 05356 1578 LDX SORTX + 03337 0 41 03320 1579 BRX SORTA1 MUST ALWAYS BE TRUE + 03340 0 00 00000 1580 HLT DEBUG + 03341 0 76 05414 1581 SORTA2 LDA =0337777 FLAG END OF LIST + 03342 0 35 45343 1582 STA *ADRTOP + 1583 * BREAK ADDRESS LIST INTO 3 LISTS + 03343 0 71 05344 1584 LDX ADRBOT + 03344 0 76 05435 1585 LDA =0300000 COMMON OR RELOC + 03345 2 72 00001 1586 SKA 1,2 SKIP IF ABSOLUTE + 03346 0 01 03351 1587 BRU $+3 + 03347 2 77 00001 1588 EAX 1,2 + 03350 0 01 03345 1589 BRU $-3 + 03351 0 37 05361 1590 STX AADTOP TOP OF ABSOLUTE ADDRESS LIST + 03352 0 76 05464 1591 LDA =0200000 COMMON + 03353 2 72 00001 1592 SKA 1,2 SKIP IF NOT COMMON + 03354 0 01 03357 1593 BRU $+3 + 03355 2 77 00001 1594 EAX 1,2 + 03356 0 01 03353 1595 BRU $-3 + 03357 0 37 05362 1596 STX RADTOP TOP OF RELOCATABLE LIST + 03360 0 76 05500 1597 LDA =0100000 RELOCATABLE + 03361 2 72 00001 1598 SKA 1,2 SKIP IF NOT RELOCATABLE + 03362 0 01 03365 1599 BRU $+3 + 03363 2 77 00001 1600 EAX 1,2 + 03364 0 01 03361 1601 BRU $-3 + 03365 0 37 05363 1602 STX CADTOP + 1603 * SET UP LIST BEGINNINGS + 03366 0 76 05362 1604 LDA RADTOP + 03367 0 35 05366 1605 STA CADBOT BOTTOM OF COMMON ADDRESS LIST + 03370 0 55 05440 1606 ADD =1 + 03371 0 35 05371 1607 STA CADNXT NEXT COMMON ADDRESS + 03372 0 73 05363 1608 SKG CADTOP + 03373 0 01 03376 1609 BRU $+3 NOT EMPTY + 03374 0 76 05413 1610 LDA =-1 FLAG EMPTY + 03375 0 35 05363 1611 STA CADTOP + 03376 0 76 05361 1612 LDA AADTOP + 03377 0 35 05365 1613 STA RADBOT + 03400 0 55 05440 1614 ADD =1 + 03401 0 35 05370 1615 STA RADNXT + 03402 0 73 05362 1616 SKG RADTOP + 03403 0 01 03406 1617 BRU $+3 NOT EMPTY + 03404 0 76 05413 1618 LDA =-1 FLAG IT IMPTY + 03405 0 35 05362 1619 STA RADTOP + 03406 0 76 05344 1620 LDA ADRBOT + 03407 0 35 05364 1621 STA AADBOT + 03410 0 55 05440 1622 ADD =1 + 03411 0 35 05367 1623 STA AADNXT + 03412 0 73 05361 1624 SKG AADTOP + 03413 0 01 03416 1625 BRU $+3 NOT EMPTY + 03414 0 76 05413 1626 LDA =-1 + 03415 0 35 05361 1627 STA AADTOP + 03416 0 51 03301 1628 BRR SORTAD + 1629 * ROUTINE TO MODIFY BLOCK LISTS TO INCLUDE ALL DEFINITIONS + 1630 * AND RELOCATABLE REFERENCES + 03417 0 00 00000 1631 BLKSET PZE + 03420 0 76 05373 1632 LDA BLKNXT + 03421 0 35 05374 1633 STA BLKTOP MOVE TOP OF LIST TO TRUE TOP + 03422 0 76 05413 1634 LDA =-1 + 03423 0 35 45374 1635 STA *BLKTOP + 03424 0 43 03602 1636 BRM DEFSPN FIND SPAN OF DEFINITIONS + 03425 0 75 05435 1637 LDB =0300000 MODE BITS MASK + 03426 0 76 45370 1638 LDA *RADNXT FIRST RELATIVE ADDRESS + 03427 0 70 05500 1639 SKM =0100000 IS IT INDEED A RELOC ADDRESS + 03430 0 01 03437 1640 BRU BLKS1 NO + 03431 0 73 04457 1641 SKG BUFF+2 + 03432 0 35 04457 1642 STA BUFF+2 MINIMUM RELOCATABLE ADDRESS + 03433 0 76 45362 1643 LDA *RADTOP + 03434 0 73 04460 1644 SKG BUFF+3 + 03435 0 01 03437 1645 BRU $+2 + 03436 0 35 04460 1646 STA BUFF+3 MAXIMUM RELOCATABLE ADDRESS + 03437 0 76 45371 1647 BLKS1 LDA *CADNXT + 03440 0 70 05464 1648 SKM =0200000 IS IT INDEED A COMMON + 03441 0 01 03450 1649 BRU BLKS2 NO + 03442 0 73 04461 1650 SKG BUFF+4 + 03443 0 35 04461 1651 STA BUFF+4 MINIMUM COMMON ADDRESS + 03444 0 76 45363 1652 LDA *CADTOP + 03445 0 73 04462 1653 SKG BUFF+5 + 03446 0 01 03450 1654 BRU $+2 + 03447 0 35 04462 1655 STA BUFF+5 MAXIMUM COMMON ADDRESS + 03450 0 60 05373 1656 BLKS2 SKR BLKNXT MOVE BACKWARDS THRU BLOCK LIST + 03451 0 76 45373 1657 LDA *BLKNXT + 03452 0 50 05435 1658 SKE =0300000 BEGINNING OF PROGRAM + 03453 0 01 03455 1659 BRU $+2 + 03454 0 01 03474 1660 BRU BLKS3 + 03455 0 66 00016 1661 RSH 14 TYPE X 2 + 03456 0 14 05523 1662 ETR =06 GET TYPE ONLY + 03457 0 46 00400 1663 CAX + 03460 2 76 04456 1664 LDA BUFF+1,2 MAXIMUM TYPE ADDRESS + 03461 0 73 45373 1665 SKG *BLKNXT + 03462 0 01 03464 1666 BRU $+2 ADDRESSING IS NOT ABOVE BUFFER + 03463 0 35 45373 1667 STA *BLKNXT EXTEND BLOCK TO INCLUDE ADDRESSING + 03464 0 60 05373 1668 SKR BLKNXT MOVE TO START OF BLOCK + 03465 0 76 45373 1669 LDA *BLKNXT + 03466 0 72 05442 1670 SKA =037777 SKIP IF ADDRESS ZERO + 03467 0 54 05440 1671 SUB =1 ONE BELOW THIS BLOCK + 03470 2 73 04456 1672 SKG BUFF+1,2 IS IT ABOVE TOP OF REFERENCING + 03471 0 01 03473 1673 BRU $+2 NO + 03472 2 35 04456 1674 STA BUFF+1,2 YES CUT REFERENCING BACK + 03473 0 01 03450 1675 BRU BLKS2 GO DO NEXT BLOCK + 03474 0 75 05435 1676 BLKS3 LDB =0300000 MODE MASK + 03475 0 76 04456 1677 LDA BUFF+1 + 03476 0 73 04455 1678 SKG BUFF IS THERE AN UNSPANNED ABSOLUTE AREA + 03477 0 01 03512 1679 BRU BLKS4 NO + 03500 0 61 05373 1680 BLKS5 MIN BLKNXT + 03501 0 53 45373 1681 SKN *BLKNXT IS THIS ENDED + 03502 0 01 03504 1682 BRU $+2 + 03503 0 00 00000 1683 HLT DEBUG + 03504 0 76 45373 1684 LDA *BLKNXT + 03505 0 72 05435 1685 SKA =0300000 SKIP IF ABSOLUTE + 03506 0 01 03500 1686 BRU BLKS5 + 03507 0 76 04455 1687 LDA BUFF LOWEST ASKED ABSOLUTE ADDRESS + 03510 0 73 45373 1688 SKG *BLKNXT + 03511 0 35 45373 1689 STA *BLKNXT + 03512 0 76 05372 1690 BLKS4 LDA BLKBOT + 03513 0 35 05373 1691 STA BLKNXT + 03514 0 76 04460 1692 LDA BUFF+3 + 03515 0 73 04457 1693 SKG BUFF+2 IS THERE AN UNSPANNED RELOC AREA + 03516 0 01 03533 1694 BRU BLKS6 NO + 03517 0 61 05373 1695 BLKS7 MIN BLKNXT MODE MASK + 03520 0 53 45373 1696 SKN *BLKNXT IS THIS ENDED + 03521 0 01 03523 1697 BRU $+2 + 03522 0 00 00000 1698 HLT DEBUG + 03523 0 76 45373 1699 LDA *BLKNXT + 03524 0 70 05500 1700 SKM =0100000 SKIP IF RELOC + 03525 0 01 03517 1701 BRU BLKS7 + 03526 0 76 04457 1702 LDA BUFF+2 + 03527 0 73 45373 1703 SKG *BLKNXT + 03530 0 35 45373 1704 STA *BLKNXT + 03531 0 76 05372 1705 LDA BLKBOT + 03532 0 35 05373 1706 STA BLKNXT + 03533 0 76 04462 1707 BLKS6 LDA BUFF+5 + 03534 0 73 04461 1708 SKG BUFF+4 IS THERE AN UNSPANNED COMMON AREA + 03535 0 01 03552 1709 BRU BLKS8 NO + 03536 0 61 05373 1710 BLKS9 MIN BLKNXT + 03537 0 53 45373 1711 SKN *BLKNXT IS THIS DONE + 03540 0 01 03542 1712 BRU $+2 NO + 03541 0 00 00000 1713 HLT DEBUG + 03542 0 76 45373 1714 LDA *BLKNXT + 03543 0 70 05464 1715 SKM =0200000 SKIP IF COMMON + 03544 0 01 03536 1716 BRU BLKS9 + 03545 0 76 04461 1717 LDA BUFF+4 + 03546 0 73 45373 1718 SKG *BLKNXT + 03547 0 35 45373 1719 STA *BLKNXT + 03550 0 76 05372 1720 LDA BLKBOT + 03551 0 35 05373 1721 STA BLKNXT + 1722 * AUGMENTATION OF BLOCK LIST COMPLETE, SET SPAN OF ABSOLUTE ADDRE + 03552 0 76 05413 1723 BLKS8 LDA =-1 + 03553 0 35 05376 1724 STA MXAAD MAXIMUM ABSOLUTE ADDRESS + 03554 0 76 05442 1725 LDA =037777 + 03555 0 35 05375 1726 STA MNAAD MINIMUM ABSOLUTE ADDRESS + 03556 0 61 05373 1727 BLKS10 MIN BLKNXT + 03557 0 53 45373 1728 SKN *BLKNXT ARE WE DONE + 03560 0 01 03562 1729 BRU $+2 + 03561 0 01 03575 1730 BRU BLKS11 YES + 03562 0 76 45373 1731 LDA *BLKNXT GET STARTER WORD + 03563 0 61 05373 1732 MIN BLKNXT MOVE TO END WORD + 03564 0 72 05435 1733 SKA =0300000 SKIP IF ABSOLUTE + 03565 0 01 03556 1734 BRU BLKS10 TEST NEXT PAIR + 03566 0 73 05375 1735 SKG MNAAD + 03567 0 35 05375 1736 STA MNAAD SET MINIMUM ABSOLUTE ADDRESS + 03570 0 76 45373 1737 LDA *BLKNXT END WORD + 03571 0 73 05376 1738 SKG MXAAD + 03572 0 01 03556 1739 BRU BLKS10 TRY NEXT PAIR + 03573 0 35 05376 1740 STA MXAAD SET MAXIMUM ABSOLUTE ADDRESS + 03574 0 01 03556 1741 BRU BLKS10 + 03575 0 76 05372 1742 BLKS11 LDA BLKBOT + 03576 0 35 05373 1743 STA BLKNXT BLOCK POINTER TO BOTTOM + 03577 0 76 45373 1744 LDA *BLKNXT + 03600 0 35 05322 1745 STA PROGP + 03601 0 51 03417 1746 BRR BLKSET + 1747 * ROUTINE TO PICK UP THE SPAN OF EXT DEFINITION + 03602 0 00 00000 1748 DEFSPN PZE + 03603 0 76 05414 1749 LDA =0337777 + 03604 0 35 04455 1750 STA BUFF MINIMUM ABSOLUTE DEFINITION + 03605 0 35 04457 1751 STA BUFF+2 MINIMUM REL. DEFINITION + 03606 0 35 04461 1752 STA BUFF+4 MINIMUM COM. DEFINITION + 03607 0 76 05413 1753 LDA =-1 + 03610 0 35 04456 1754 STA BUFF+1 MAXIMUM ABSOLUTE DEFINITION + 03611 0 35 04460 1755 STA BUFF+3 + 03612 0 35 04462 1756 STA BUFF+5 + 03613 0 76 05352 1757 LDA DEFTOP + 03614 0 54 05476 1758 DFSP1 SUB =3 + 03615 0 73 05351 1759 SKG DEFBOT IS LIST EMPTIED + 03616 0 01 03636 1760 BRU DFSP2 YES + 03617 0 46 00400 1761 CAX + 03620 2 76 00000 1762 LDA 0,2 WANT ADDRESS WORD ONLY + 03621 0 66 00016 1763 RSH 14 GET TYPE *2 + 03622 0 14 05523 1764 ETR =06 + 03623 0 46 00004 1765 CAB + 03624 2 76 00000 1766 LDA 0,2 + 03625 0 14 05414 1767 ETR =0337777 MODE + ADDRESS ONLY + 03626 0 46 00060 1768 XXB + 03627 2 73 04455 1769 SKG BUFF,2 + 03630 2 35 04455 1770 STA BUFF,2 MINIMUM TYPE ADDRESS + 03631 2 73 04456 1771 SKG BUFF+1,2 + 03632 0 01 03634 1772 BRU $+2 + 03633 2 35 04456 1773 STA BUFF+1,2 MAXIMUM TYPE ADDRESS + 03634 0 46 00010 1774 CBA MOVE LIST POINTER TO A + 03635 0 01 03614 1775 BRU DFSP1 GO FOR NEXT ITEM + 03636 0 51 03602 1776 DFSP2 BRR DEFSPN + 1777 * ROUTINE TO MAKE ADDRESS LABEL + 03637 0 00 00000 1778 MAKLAB PZE + 03640 0 35 05377 1779 STA MKTA + 03641 0 14 05414 1780 ETR =0337777 TAKE MODE AND ADDRESS ONLY + 03642 0 35 05303 1781 STA C3 INTERNAL LABEL + 03643 0 37 05400 1782 STX MKTX + 03644 0 72 05435 1783 SKA =0300000 IS IT RELOCATABLE + 03645 0 01 03663 1784 BRU MKLBB YES + 03646 0 73 05376 1785 SKG MXAAD NO IS IT WITHIN THE PROGRAM + 03647 0 73 05375 1786 SKG MNAAD + 03650 0 01 03652 1787 BRU $+2 NO, GO OCTAL + 03651 0 01 03663 1788 BRU MKLBB + 03652 00000005 1789 OCT 5 + 03653 0 76 05301 1790 LDA C1 + 03654 0 16 05512 1791 MRG =060600000 TOP 2 CHARACTERS ARE BLANK + 03655 0 75 05302 1792 LDB C2 + 03656 0 67 20014 1793 LCY 12 LEFT JUSTIFY + 03657 0 35 05301 1794 STA C1 + 03660 0 36 05302 1795 STB C2 + 03661 0 76 05377 1796 LDA MKTA + 03662 0 51 03637 1797 BRR MAKLAB + 00003663 1798 MKLBB EQU $ BUILD A HXADECIMAL LABEL + 03663 0 14 05442 1799 ETR =037777 TAKE ADDRESS ONLY + 03664 0 35 05411 1800 STA MKTMP + 03665 0 76 05436 1801 LDA =' ' + 03666 0 35 05301 1802 STA C1 + 03667 0 35 05302 1803 STA C2 + 03670 0 76 05411 1804 LDA MKTMP + 03671 0 14 05524 1805 MKLBC ETR =017 + 03672 0 46 00400 1806 CAX + 03673 2 76 03730 1807 LDA HEXTAB,2 PICK UP NEXT CHARACTER + 03674 0 75 05301 1808 LDB C1 MOVE IT IN + 03675 0 66 00006 1809 RSH 6 + 03676 0 76 05301 1810 LDA C1 + 03677 0 36 05301 1811 STB C1 + 03700 0 75 05302 1812 LDB C2 + 03701 0 66 00006 1813 RSH 6 + 03702 0 36 05302 1814 STB C2 + 03703 0 76 05411 1815 LDA MKTMP + 03704 0 66 00004 1816 RSH 4 PEEL OFF THE USED BITS + 03705 0 35 05411 1817 STA MKTMP + 03706 0 72 05442 1818 SKA =037777 + 03707 0 01 03671 1819 BRU MKLBC + 03710 0 76 05525 1820 LDA =' A9' + 03711 0 75 05377 1821 LDB MKTA + 03712 0 52 05500 1822 SKB =0100000 IS IT LOAD RELOCATABLE + 03713 0 76 05526 1823 LDA =' R9' YES + 03714 0 52 05464 1824 SKB =0200000 IS IT COMMON RELOCATABLE + 03715 0 76 05527 1825 LDA =' C9' YES + 03716 0 75 05301 1826 LDB C1 MOVE THE IDENTIFIERS ON + 03717 0 66 00014 1827 RSH 12 + 03720 0 76 05301 1828 LDA C1 + 03721 0 36 05301 1829 STB C1 + 03722 0 75 05302 1830 LDB C2 + 03723 0 66 00014 1831 RSH 12 + 03724 0 36 05302 1832 STB C2 LABEL COMPLETE + 03725 0 76 05377 1833 LDA MKTA + 03726 0 71 05400 1834 LDX MKTX + 03727 0 51 03637 1835 BRR MAKLAB + 00003730 1836 HEXTAB EQU $ + 03730 60606071 1837 DATA ' Z' 0 HEXADECIMAL ADDRESS TABLE + 03731 60606031 1838 DATA ' I' 1 + 03732 60606041 1839 DATA ' J' 2 + 03733 60606042 1840 DATA ' K' 3 + 03734 60606043 1841 DATA ' L' 4 + 03735 60606044 1842 DATA ' M' 5 + 03736 60606045 1843 DATA ' N' 6 + 03737 60606050 1844 DATA ' Q' 7 + 03740 60606051 1845 DATA ' R' 10 + 03741 60606062 1846 DATA ' S' 11 + 03742 60606063 1847 DATA ' T' 12 + 03743 60606064 1848 DATA ' U' 13 + 03744 60606065 1849 DATA ' V' 14 + 03745 60606066 1850 DATA ' W' 15 + 03746 60606067 1851 DATA ' X' 16 + 03747 60606070 1852 DATA ' Y' =15 (017) + 1853 * ROUTINES TO ASSIST BUILDING OF LINE IMAGE + 03750 0 00 00000 1854 ADRESS PZE BUILD ADDRESS OF LIST OUTPUT + 03751 0 76 05436 1855 LDA =' ' + 03752 0 35 05243 1856 STA LINE + 03753 0 76 05322 1857 LDA PROGP + 03754 00000005 1858 OCT 5 + 03755 0 76 05301 1859 LDA C1 + 03756 0 16 05507 1860 MRG =' 0' BLANKS TO TOP 3 + 03757 0 75 05302 1861 LDB C2 + 03760 0 67 20014 1862 LCY 12 + 03761 0 35 05244 1863 STA LINE+1 + 03762 0 36 05245 1864 STB LINE+2 + 03763 0 51 03750 1865 BRR ADRESS + 03764 0 00 00000 1866 BLNKOP PZE BLANK OPERATIONS CODE + 03765 0 76 05436 1867 LDA =' ' + 03766 0 35 05246 1868 STA LINE+3 + 03767 0 35 05247 1869 STA LINE+4 + 03770 0 35 05250 1870 STA LINE+5 + 03771 0 51 03764 1871 BRR BLNKOP + 03772 0 00 00000 1872 BLNKLN PZE + 1873 * BLANK REMAINDER OF PRINT LINE + 03773 0 37 05401 1874 STX PACKX + 03774 0 76 05436 1875 LDA =' ' + 03775 0 75 05423 1876 LDB =077 + 03776 0 71 05530 1877 LDX =0200000-13 + 03777 2 70 05275 1878 SKM LINE+26,2 FIND FIRST WORD WITH BLANK END + 04000 0 41 03777 1879 BRX $-1 + 04001 0 01 04003 1880 BRU $+2 + 04002 2 35 05275 1881 STA LINE+26,2 BLANK REMAINDER OF IMAGE + 04003 0 41 04002 1882 BRX $-1 + 04004 0 71 05401 1883 LDX PACKX + 04005 0 51 03772 1884 BRR BLNKLN + 1885 * SUBROUTINE TO PACK C1, C2, C3 ONTO REFERENCED PART OF LINE + 04006 0 00 00000 1886 PACK PZE + 04007 0 35 05404 1887 STA DOLFLG NEG IF FIRST BLANK TO BE SUPPRESSED + 04010 0 14 05476 1888 ETR =03 NO OF CCTRS BEFORE FIRST BLANK TEST + 04011 0 35 05402 1889 STA PACKA + 04012 0 37 05401 1890 STX PACKX + 04013 0 71 05531 1891 PACK3 LDX =-4 + 04014 0 75 45401 1892 LDB *PACKX + 04015 0 67 20006 1893 PACK2 LCY 6 + 04016 0 60 05402 1894 SKR PACKA + 04017 0 41 04015 1895 BRX $-2 CYCLE TILL IGNORABLES ARE PAST + 04020 0 36 05403 1896 STB PACKB + 04021 0 75 05423 1897 LDB =077 + 04022 0 70 05436 1898 SKM =' ' + 04023 0 01 04056 1899 BRU PACK1 + 04024 0 53 05404 1900 SKN DOLFLG SKIP IF BLAND SUPPRESS + 04025 0 01 04030 1901 BRU $+3 + 04026 0 66 00006 1902 RSH 6 MOVE BLANK CCTR OUT + 04027 2 77 37777 1903 EAX -1,2 + 04030 0 75 05401 1904 LDB PACKX + 04031 0 36 05403 1905 STB PACKB + 04032 0 37 05402 1906 STX PACKA + 04033 0 75 05301 1907 LDB C1 + 04034 0 43 04062 1908 BRM PACKSF + 04035 0 76 05301 1909 LDA C1 + 04036 0 75 05302 1910 LDB C2 + 04037 0 43 04062 1911 BRM PACKSF + 04040 0 76 05302 1912 LDA C2 + 04041 0 75 05303 1913 LDB C3 + 04042 0 43 04062 1914 BRM PACKSF + 04043 0 76 05303 1915 LDA C3 + 04044 0 75 05436 1916 LDB =' ' + 04045 0 43 04062 1917 BRM PACKSF + 04046 0 71 05403 1918 LDX PACKB GET WORD + 04047 0 76 05402 1919 LDA PACKA GET NO.OF CHARACTERS THIS LINE PASSED + 04050 0 55 05523 1920 ADD =6 POINT TO FIRST CCTR SET ON + 04051 0 72 05532 1921 SKA =014 IS WORD OVERFLOWED + 04052 2 77 00001 1922 EAX 1,2 YES, MOVE WORD UP + 04053 0 14 05476 1923 ETR =03 AT MOST 3 CCTR + 04054 0 16 05412 1924 MRG =040000000 SET CONCAATTEENNATE FLAG + 04055 0 51 04006 1925 BRR PACK + 04056 0 75 05403 1926 PACK1 LDB PACKB PICK UP REST OF WORD + 04057 0 41 04015 1927 BRX PACK2 TRY NEXT CHARACTER + 04060 0 61 05401 1928 MIN PACKX NONE HERE TRY NEXT WORD + 04061 0 01 04013 1929 BRU PACK3 + 04062 0 00 00000 1930 PACKSF PZE + 04063 0 71 05402 1931 LDX PACKA + 04064 0 41 04066 1932 BRX $+2 + 04065 0 01 04070 1933 BRU $+3 + 04066 0 67 20006 1934 LCY 6 SHIFT UNITL WORD ORIENTED ON LINE + 04067 0 01 04064 1935 BRU $-3 + 04070 0 35 45401 1936 STA *PACKX + 04071 0 61 05401 1937 MIN PACKX + 04072 0 51 04062 1938 BRR PACKSF + 04073 0 00 00000 1939 LABCRD PZE + 04074 0 43 04125 1940 BRM NXCRD + 04075 0 67 20014 1941 LCY 12 + 04076 0 35 05251 1942 STA LINE+6 + 04077 0 36 05252 1943 STB LINE+7 + 04100 0 76 05413 1944 LDA =-1 + 04101 0 75 05303 1945 LDB C3 LABEL RESIDES IN C1, 2,3 + 04102 0 52 05461 1946 SKB =060000000 IS IT EXTERNAL + 04103 0 46 00001 1947 CLA + 04104 0 35 05404 1948 STA DOLFLG + 04105 0 76 05533 1949 LDA =' $' + 04106 0 75 05301 1950 LDB C1 + 04107 0 53 05404 1951 SKN DOLFLG + 04110 0 66 00006 1952 RSH 6 + 04111 0 36 05253 1953 STB LINE+8 + 04112 0 76 05301 1954 LDA C1 + 04113 0 75 05302 1955 LDB C2 + 04114 0 53 05404 1956 SKN DOLFLG + 04115 0 66 00006 1957 RSH 6 + 04116 0 36 05254 1958 STB LINE+9 + 04117 0 76 05302 1959 LDA C2 + 04120 0 75 05436 1960 LDB =' ' + 04121 0 53 05404 1961 SKN DOLFLG + 04122 0 66 00006 1962 RSH 6 + 04123 0 36 05255 1963 STB LINE+10 + 04124 0 51 04073 1964 BRR LABCRD + 1965 * BCD COUNTER ROUTINE FOR CARDS + 04125 0 00 00000 1966 NXCRD PZE + 04126 0 76 05475 1967 LDA =7 + 04127 0 35 04161 1968 STA NXCY + 04130 0 76 04163 1969 LDA CARD2 + 04131 0 75 04162 1970 LDB CARD1 + 04132 0 55 05440 1971 NXLOP ADD =1 + 04133 0 14 05534 1972 ETR =077777717 + 04134 0 35 04160 1973 STA NXTMP + 04135 0 14 05423 1974 ETR =077 + 04136 0 73 05535 1975 SKG =011 + 04137 0 01 04153 1976 BRU NXFIN + 04140 0 76 04160 1977 LDA NXTMP + 04141 0 14 05536 1978 ETR =077777700 + 04142 0 66 20006 1979 RCY 6 + 04143 0 60 04161 1980 SKR NXCY + 04144 0 01 04132 1981 BRU NXLOP + 04145 0 46 00014 1982 NXIT XAB + 04146 0 14 05537 1983 ETR =07777 TAKE AT MOST 6 DIGITS + 04147 0 16 05512 1984 MRG =060600000 BLANK TOP TWO + 04150 0 35 04162 1985 STA CARD1 + 04151 0 36 04163 1986 STB CARD2 + 04152 0 51 04125 1987 BRR NXCRD + 04153 0 76 04160 1988 NXFIN LDA NXTMP + 04154 0 66 20006 1989 RCY 6 + 04155 0 60 04161 1990 SKR NXCY + 04156 0 01 04154 1991 BRU $-2 + 04157 0 01 04145 1992 BRU NXIT + 04160 1993 NXTMP RES 1 + 04161 1994 NXCY RES 1 + 04162 1995 CARD1 RES 1 + 04163 1996 CARD2 RES 1 + 04164 0 00 00000 1997 OUTPUT PZE + 04165 0 53 04335 1998 SKN LOFLG + 04166 0 01 04200 1999 BRU OUTSO + 04167 0 76 05540 2000 LDA =28 RESTORE ADDRESS AND COUNTS + 04170 0 35 04332 2001 STA CNTLO + 04171 0 76 04336 2002 LDA ADRLIN + 04172 0 35 04331 2003 STA ADRLO + 04173 0 23 04334 2004 EXU CALLLO + 04174 0 40 04330 2005 SKS FDTLO + 04175 0 76 04330 2006 LDA FDTLO + 04176 0 72 05441 2007 SKA =1*/22 + 04177 0 43 04275 2008 BRM LOERR SKIP IF NO ERROR + 04200 0 53 04327 2009 OUTSO SKN SOFLG + 04201 0 51 04164 2010 BRR OUTPUT + 04202 0 23 04326 2011 EXU CALLSO + 04203 0 40 04322 2012 SKS FDTSO + 04204 0 76 04322 2013 LDA FDTSO + 04205 0 72 05441 2014 SKA =1*/22 + 04206 0 43 04306 2015 BRM SOERR + 04207 0 51 04164 2016 BRR OUTPUT + 04210 0 00 00000 2017 FINISH PZE + 2018 * ROUTINE TO OUTPUT EXTERNAL LISTING END ENDFILE SO + 04211 0 53 04335 2019 SKN LOFLG IS LISTING REWUESTED + 04212 0 01 04262 2020 BRU SOFIN NO + 04213 0 76 05541 2021 LDA =5 + 04214 0 35 04332 2022 STA CNTLO + 04215 0 76 04336 2023 LDA ADRLIN + 04216 0 35 04331 2024 STA ADRLO + 04217 0 71 05346 2025 LDX REFTOP FLUSH EXTERNAL REFERENCES + 04220 0 46 00200 2026 FIN1 CXA + 04221 0 54 05476 2027 SUB =3 + 04222 0 46 00400 2028 CAX + 04223 0 73 05347 2029 SKG REFBOT + 04224 0 01 04246 2030 BRU FIN2 + 04225 2 76 00000 2031 LDA 0,2 + 04226 0 35 05322 2032 STA PROGP + 04227 0 43 03750 2033 BRM ADRESS + 04230 2 76 00001 2034 LDA 1,2 + 04231 0 35 05246 2035 STA LINE+3 + 04232 2 76 00002 2036 LDA 2,2 + 04233 0 35 05247 2037 STA LINE+4 + 04234 0 23 04334 2038 EXU CALLLO + 04235 0 40 04330 2039 SKS FDTLO + 04236 0 76 04330 2040 LDA FDTLO + 04237 0 72 05441 2041 SKA =1*/22 SKIP IF NO ERROR + 04240 0 43 04275 2042 BRM LOERR + 04241 2 77 37777 2043 EAX -1,2 MOVE POINTER DOWN ONE + 04242 2 76 00000 2044 LDA 0,2 PICK UP ADDRESS ITEDM + 04243 0 72 05414 2045 SKA =0337777 IS THIS END OF CHAIN + 04244 0 01 04241 2046 BRU $-3 NO + 04245 0 01 04220 2047 BRU FIN1 YES GET NEXT ITEM + 04246 0 76 00420 2048 FIN2 LDA CALP + 04247 0 50 04334 2049 SKE CALLLO IS LO ON PRINTER + 04250 0 01 04262 2050 BRU SOFIN NO + 04251 0 76 05440 2051 LDA =1 + 04252 0 35 04332 2052 STA CNTLO +EP 04253 0 76 05542 2053 LDA =(=' EOF') + 04254 0 35 04331 2054 STA ADRLO + 00700000 2055 SVN OPD 0700000 + 04255 0 43 00261 2056 BRM PRINT CALL THE PRINT HANDLER DIRECTLY + 04256 0 07 04330 2057 SVN FDTLO + 04257 0 76 04330 2058 LDA FDTLO + 04260 0 72 05441 2059 SKA =1*/22 SKIP IF NO ERROR + 04261 0 43 04275 2060 BRM LOERR + 04262 0 53 04327 2061 SOFIN SKN SOFLG + 04263 0 51 04210 2062 BRR FINISH SO NONEXISTEND WE'RE DONE + 04264 0 76 00417 2063 LDA CALM + 04265 0 50 04326 2064 SKE CALLSO IS SO ON MAGTAPE + 04266 0 51 04210 2065 BRR FINISH NO + 04267 0 23 04326 2066 EXU CALLSO + 04270 0 01 04322 2067 BRU FDTSO WRITE EOF + 04271 0 76 04322 2068 LDA FDTSO + 04272 0 72 05441 2069 SKA =1*/22 + 04273 0 43 04306 2070 BRM SOERR + 04274 0 51 04210 2071 BRR FINISH + 04275 0 00 00000 2072 LOERR PZE +I 04276 5 07 04300 2073 TYPE LOEM,5 + 04277 0 51 04275 2074 BRR LOERR + 04300 43316263 2075 LOEM BCD + 04301 12466463 + 04302 47646312 + 04303 25515146 + 04304 51121252 + 04305 12121212 + 04306 0 00 00000 2076 SOERR PZE +I 04307 7 07 04313 2077 TYPE SOEM,6 + 04310 0 00 00000 2078 HLT + 04311 0 51 04306 2079 BRR SOERR + 04312 0 01 04200 2080 BRU OUTSO TRY AGAIN + 04313 62704422 2081 SOEM BCD + 04314 46433123 + 04315 12466463 + 04316 47646312 + 04317 25515146 + 04320 51121252 + 04321 12121212 + 04322 0 00 00000 2082 FDTSO PZE + 04323 0 00 05253 2083 PZE LINE+8 + 04324 00000024 2084 DATA 20 + 04325 0 02 02650 2085 EOMSO WTD 0,0,4 +* 04326 0 43 00000 2086 CALLSO BRM MTAPE + 04327 2087 SOFLG RES 1 + 04330 0 00 00000 2088 FDTLO PZE + 04331 0 00 05243 2089 ADRLO PZE LINE + 04332 00000034 2090 CNTLO DATA 28 +EI 04333 1 03 00000 2091 EOMLO PLP 0,1,4 + 04334 0 43 04337 2092 CALLLO BRM PRTR + 04335 2093 LOFLG RES 1 + 04336 0 00 05243 2094 ADRLIN PZE LINE + 2095 * PSEUDO PRINT ROUTINE THAT HANDLES COMPATIBLE OPS TO OTHER SDS I + 04337 0 00 00000 2096 PRTR PZE + 04340 0 61 04337 2097 MIN PRTR MOVE TO OP CODE + 04341 0 76 44337 2098 LDA *PRTR + 04342 0 73 05543 2099 SKG =03777777 IS IT OUTPUT + 04343 0 51 04337 2100 BRR PRTR NO + 04344 0 17 05501 2101 EOR =04000000 + 04345 0 72 05544 2102 SKA =01000000 + 04346 0 17 05545 2103 EOR =05000000 + 04347 0 35 04351 2104 STA PRNTOP + 04350 0 43 00261 2105 BRM PRINT + 04351 0 00 00000 2106 PRNTOP HLT + 04352 0 51 04337 2107 BRR PRTR + 2108 * PSEUDO PTYIO ROUTINE + 04353 0 00 00000 2109 PAPR PZE + 2110 * 000 IS STANDARD BINARY IN/005 IS PTYIO BINARY + MOVE TO GAP + 2111 * 040 IS STANDARD BINARY OUT/041 IS PTYIO BINARY OUT + 04354 0 61 04353 2112 MIN PAPR MOVE TO OP CODE + 04355 0 76 44353 2113 LDA *PAPR + 04356 0 16 05500 2114 MRG =0100000 BINARY MODE FLAG + 04357 0 72 05501 2115 SKA =04000000 IS IT OUTPUT + 04360 0 01 04362 2116 BRU $+2 YES + 04361 0 16 05546 2117 MRG =0400000 SET MOVE TO GAP FLAG + 04362 0 35 04364 2118 STA PAPROP +* 04363 0 43 00000 2119 BRM PTYIO + 04364 0 00 00000 2120 PAPROP HLT + 04365 0 51 04353 2121 BRR PAPR + 04366 0 00 00000 2122 MEMOV PZE ROUTINE ON MEMORY TOO SMALL +I 04367 5 07 04374 2123 TYPE MEMMSG,4 + 04370 0 00 00000 2124 HLT + 04371 6 20 77777 2125 NOP *037777,6 + 04372 0 01 00001 2126 BRU 1 + 04373 0 51 04366 2127 BRR MEMOV + 04374 47514627 2128 MEMMSG BCD + 04375 51214412 + 04376 63464612 + 04377 22312752 + 04400 12121212 + 2129 * ROUTINE TO FORM OCTAL VERSION OF A IN C1, C2 + 04600401 2130 AXC OPD 04600401 + 04401 0 00 00000 2131 BINOCT PZE + 04402 0 37 04430 2132 STX BOTX + 04403 0 75 05476 2133 LDB =3 + 04404 0 36 04427 2134 STB BOTC + 04405 0 66 00003 2135 RSH 3 + 04406 0 46 00401 2136 AXC + 04407 0 66 00003 2137 RSH 3 + 04410 0 46 00200 2138 CXA + 04411 0 60 04427 2139 SKR BOTC + 04412 0 01 04405 2140 BRU $-5 + 04413 0 36 05302 2141 STB C2 + 04414 0 75 05476 2142 LDB =3 + 04415 0 36 04427 2143 STB BOTC + 04416 0 66 00003 2144 RSH 3 + 04417 0 46 00401 2145 AXC + 04420 0 66 00003 2146 RSH 3 + 04421 0 46 00200 2147 CXA + 04422 0 60 04427 2148 SKR BOTC + 04423 0 01 04416 2149 BRU $-5 + 04424 0 36 05301 2150 STB C1 + 04425 0 71 04430 2151 LDX BOTX + 04426 0 51 04401 2152 BRR BINOCT + 04427 2153 BOTC RES 1 + 04430 2154 BOTX RES 1 + 04431 12224646 2155 BOOTM BCD < BOOTSTRAP > + 04432 63626351 + 04433 21471212 + 04434 12126445 2156 UIRM BCD < UNIDENTIFIED RECORD > + 04435 31242545 + 04436 63312631 + 04437 25241251 + 04440 25234651 + 04441 24121212 + 04442 12122330 2157 CSMSG BCD < CHECKSUM ERROR> + 04443 25234262 + 04444 64441225 + 04445 51514651 + 04446 12121212 + 04447 12124425 2158 OVMSG BCD < MEMORY OVERFLOW > + 04450 44465170 + 04451 12466525 + 04452 51264346 + 04453 66121212 + 04454 12121212 + 2159 * BUFFERS AND FORMALLY DEFINED CELLS + 04455 2160 BUFF RES 400 FOR RTM BLOCKED RECORDS + 00005243 2161 LINE EQU BUFF+400-26 + 05275 51252725 2162 BCD RECORD LABEL + 05276 45121212 + 05277 12121212 + 05300 2163 C0 RES 1 CENTRAL DATA TRANSFER CELLS + 05301 2164 C1 RES 1 + 05302 2165 C2 RES 1 + 05303 2166 C3 RES 1 + 05304 2167 END RES 1 END RECORD FLAG NEG FOR TRUE + 05305 2168 CNT RES 1 RECORD WORD COUNT + 05306 2169 PASS RES 1 PASS FLAG NEG FOR 1 + 05307 2170 WDCNT RES 1 PHYSICAL RECORD WORD COUNT + 05310 2171 BEGMEM RES 1 START OF LIST AREA + 05311 2172 ENDMEM RES 1 END OF LIST AREA + 05312 2173 CSCNT RES 1 CNT AS USED BY CKSUM + 05313 2174 RDCNT RES 1 CNT AS USED BY READ + 05314 2175 CSX RES 1 TEMPX FOR CKSUM + 05315 2176 ENDTX RES 1 TEMPX FOR ENDREC + 05316 2177 RELOC RES 1 RELOCATION FLAGS + 05317 2178 IOREL RES 1 + 05320 2179 POPR RES 1 + 05321 2180 COMR RES 1 + 05322 2181 PROGP RES 1 POINTER TO $ 'HERE' + 05323 2182 ADRP RES 1 ADDRESS POINTED TO BY INSTRUCTION + 05324 2183 DNTX RES 1 TEMPX FOR DATA READING + 05325 2184 INS1 RES 1 TRANSFER CELLS FOR DECOMPOSED INSTRUC + 05326 2185 INS2 RES 1 + 05327 2186 INS3 RES 1 + 05330 2187 STAR RES 1 INDIRECT ADDRESSING FLAG NEG=FALSE + 05331 2188 TAG RES 1 TAG FIELD OF INSTRUCTION + 05332 2189 ANS RES 1 ANSWER FLAG FOR INSTEST + 05333 2190 LINCC RES 1 LINE POINTERS FOR EXTENDED PACKING + 05334 2191 LINXP RES 1 + 05335 2192 DTX RES 1 DATA TEMPX + 05336 2193 RDTX RES 1 TEMPX FOR BACKWARDS READING + 2194 * 09 '' HH 6 H H + 05337 2195 PSBTA RES 1 TEMPA FOR PSETB + 05340 2196 PSBTX RES 1 TEMPX FOR PSETB + 05341 2197 PSTMPA RES 1 TEMPA FOR PSET + 05342 2198 ADTMPX RES 1 TEMPX FOR ADDRESS LIST + 05343 2199 ADRTOP RES 1 TOP OF ADDRESS LIST + 05344 2200 ADRBOT RES 1 BOTTOM OF ADDRESS LIST + 05345 2201 RFTMPX RES 1 TEMPX FOR REFERENCE LIST + 05346 2202 REFTOP RES 1 TOP OF REFERENCE LIST + 05347 2203 REFBOT RES 1 BOTTOM OF REFERENCE LIST + 05350 2204 LRFOT RES 1 LAST REFERENCED OPEN TAIL + 05351 2205 DEFBOT RES 1 BOTTOM OF DEF LIST + 05352 2206 DEFTOP RES 1 TOP OF DEF LIST + 05353 2207 DFTMPX RES 1 TEMPX FOR DEFLIST + 05354 2208 GATMPX RES 1 TEMPX FOR GADR + 05355 2209 GATMPA RES 1 TEMPA FOR GADR + 05356 2210 SORTX RES 1 INDEX FOR ADRESS LIST SORTING + 05357 2211 SORTOP RES 1 LIST TOP FOR ADDRESS LIST SORTING + 05360 2212 SORTX2 RES 1 TEMP SORTX + 05361 2213 AADTOP RES 1 TYPED ADDRESS LISTS, TOP + BOTTOM + 05362 2214 RADTOP RES 1 + 2215 + 05363 2216 CADTOP RES 1 + 05364 2217 AADBOT RES 1 + 05365 2218 RADBOT RES 1 + 05366 2219 CADBOT RES 1 + 05367 2220 AADNXT RES 1 + 05370 2221 RADNXT RES 1 + 05371 2222 CADNXT RES 1 + 00005372 2223 LSTBOT EQU $ BLOKLIST TOP + NEXT + BOTTOM + 05372 2224 BLKBOT RES 1 + 00005373 2225 LSTNXT EQU $ + 05373 2226 BLKNXT RES 1 + 00005374 2227 LSTTOP EQU $ + 05374 2228 BLKTOP RES 1 + 05375 2229 MNAAD RES 1 MINIMUM ABSOLUTE ADDRESS + 05376 2230 MXAAD RES 1 MAXIMUM ABSOLUTE ADDRESS + 05377 2231 MKTA RES 1 TEMPA FOR MAKLAB + 05400 2232 MKTX RES 1 TEMPX FOR MAKLAB + 05401 2233 PACKX RES 1 TEMPX FOR LINE BUILDING PACK ROUTINE + 05402 2234 PACKA RES 1 TEMPA FOR LINE PACKER + 05403 2235 PACKB RES 1 TEMPB FOR LINE PACKER + 05404 2236 DOLFLG RES 1 EXTERNAL LABEL FLAG -LABEL MAKER + 05405 2237 PROGP1 RES 1 + 05406 2238 PROGP2 RES 1 + 05407 2239 ITA RES 1 + 05410 2240 ITX RES 1 + 05411 2241 MKTMP RES 1 + 00000200 2242 END REGEN + 05412 40000000 + 05413 77777777 + 05414 00337777 + 05415 00000257 + 05416 00017777 + 05417 00037700 + 05420 00001000 + 05421 00000107 + 05422 04014010 + 05423 00000077 + 05424 10000000 + 05425 00000100 + 05426 00200600 + 05427 00000020 + 05430 00000004 + 05431 00000002 + 05432 00000010 + 05433 00000040 + 05434 00000016 + 05435 00300000 + 05436 60606060 + 05437 00177747 + 05440 00000001 + 05441 20000000 + 05442 00037777 + 05443 00000000 + 05444 77770000 + 05445 00030000 + 05446 00070000 + 05447 00050000 + 05450 62000000 + 05451 11777777 + 05452 77000000 + 05453 12676767 + 05454 17777760 + 05455 03200000 + 05456 77777776 + 05457 00004455 + 05460 00000050 + 05461 60000000 + 05462 77777775 + 05463 23464460 + 05464 00200000 + 05465 47514660 + 05466 60137777 + 05467 24216321 + 05470 60216000 + 05471 07700000 + 05472 60316000 + 05473 60516000 + 05474 00005243 + 05475 00000007 + 05476 00000003 + 05477 02000000 + 05500 00100000 + 05501 04000000 + 05502 25452460 + 05503 00000377 + 05504 47464724 + 05505 53606060 + 05506 00040000 + 05507 60606000 + 05510 54606060 + 05511 73606000 + 05512 60600000 + 05513 60606073 + 05514 70000000 + 05515 51256260 + 05516 00000046 + 05517 26010001 + 05520 04606060 + 05521 27600001 + 05522 23500000 + 05523 00000006 + 05524 00000017 + 05525 60602111 + 05526 60605111 + 05527 60602311 + 05530 00177763 + 05531 77777774 + 05532 00000014 + 05533 60606053 + 05534 77777717 + 05535 00000011 + 05536 77777700 + 05537 00007777 + 05540 00000034 + 05541 00000005 + 05542 00000000 + 05543 03777777 + 05544 01000000 + 05545 05000000 + 05546 00400000 + 04326 MTAPE + 00724 MTAPE + 00710 MTAPE + 00705 MTAPE + 00675 MTAPE + 00666 MTAPE + 00612 MTAPE + 00417 MTAPE + 04363 PTYIO + 00341 QBINO + 00335 QSYMO + 00317 QSYST + 00331 QSYSU + 02156 RESVE + 02143 RESVE + 02112 RESVE + 00412 ASGNER + 00374 ASGNER + 00416 CDRP + 00757 ILLEGA + 00756 ILLEGA + 00754 ILLEGA diff --git a/890548/regen.si b/890548/regen.si new file mode 100644 index 0000000..6473ba2 --- /dev/null +++ b/890548/regen.si @@ -0,0 +1,2242 @@ +*************************************************************** +* 'REGEN' PROGRAM +* THIS PROGRAM WILL GENERATE A LISTING AND/OR A PSEUDO-SYMBOLIC +* DECK FOR ANY PROGRAM IN THE SDS STANDARD BINARY LANGUAGE +* IT IS WRITTEN TO ACCEPT INPUT/OUTPUT ASSIGNMENTS THROUGH +* MONARCH +* _ASSIGN X1=SCRATCH MAG TAPE +* _ASSIGN SO=SYMBOLIC OUTPUT MEDIUM +* _ASSIGN LO=LIST OUTPUT MEDIUM +* _ASSIGN BI=SOURCE MEDIUM FOR REGEN +* _LOAD 0 GO +* SET BPT 1 TO PAUSE BETWEEN LOADING AND EXECUTION +* OR BETWEEN PROGRAMS +* SET BPT 4 AT ININTIALIZATION TO BYPASS SYMBOLIC OUTPUT +* SET BPT 3 AT INITIALIZATION TO BYPASS LIST OUTPUT +* + +*************************************************************** +* SUBPROGRAMS USED +* MTAPE +* CDRP +* PTYIO +* PRINT +* POPS USED +* NONE +* MEMORY REQUIRED +* AT LEAST 6K +* PROGRAM OCCUPIES 4K +* REMAINDER IS DYNAMIC LISTS +* TAPES REQUIRED +* ONE: X1 + PAGE + RORG 0200 +$REGEN EQU $ ROUTINE FOR SYMBOLIC REGENERATION +* OF PSEUDO SYMBOLIC DECKS FROM SDS STANDARD BINARY LANGUAGE + BRM ASGNM ASSIGN MEMORY TO LISTS +STRT BRM INIT +PAS1 BRM READBI + BRU $-1 TRY AGAIN ON READ ERROR +PAS1B BRM CKSUM + BRU PAS1C FAIL EXIT + BRM WRTX WRITE ALL LEGAL RECORDS ON X1 + BRM READ +PAS1C LDA WDCNT =WORDS IN PHYSICAL RECORD + SUB CNT WORDS IN LOGICAL RECORD + STA WDCNT WORDS LEFT + SKA =1*/23 + BRU $+3 + SKA =-1 SKIP IF ZERO + BRU PAS1B + SKN END HAS END RECORD BEEN HIT + BRU PAS1 NO +* PAS1 COMPLETE + MIN END + SKN REFTOP ARE THERE ANY EXTERNAL REFERENCES +PAS2Y BRM FRFOT YES, ARE THERE ANY WITH OPEN TAILS + BRU PAS2X NO +PAS2 BRM BKRDX + BRM READ2 + BRU PAS2 FAIL EXIT, NOT DATA + BRU $+3 YES,PROCESS IT +PAS2B BRM NRFOT GET NET OPEN TAIL + BRU PAS2Y THIS RECORD'S DONE DO NEXT +PAS2C LDA C3 GET TAIL + ETR =0337777 GET MODE/ADDRESS ONLY + SKG PROGP2 TOP OF RECORD + SKG PROGP1 BOTTOM OF RECORD -1 + BRU PAS2B NOT IN THIS RECORD, MOVE ON + BRM GADR GET ADDRESS POINTED TO + STA C3 SAVE, IT MAY BE IN SAME RECORD + BRM IRFLST INSERT IT ON REFERENCE LIST + BRM DADLST DELET IT FROM ADDRESS LIST + BRU PAS2C CHEDK THIS TAIL +PAS2X BRM RWNDX REWIND SCRATCH + MIN PASS + BRM SORTAD SORT OUT THE ADDRESS LIST + BRM BLKSET AUGMENT BLOCKS TO INCLUDE ALL DEFS +PAS3 BRM RDX READ X1 + BRM READ + SKN END DID WE PROCESS THE END RECORD + BRU PAS3 NO + BRM FINISH + BRU STRT +P PROC +PRNT NAME +PRINT NAME + LDA =P(1) + STA ADRLO + LDA =P(2) + STA CNTLO + EXU CALLLO + SKS FDTLO +* END +P PROC +TYPE NAME + BRTW + BRU $-1 + TYP *0,1,4 + POT =P(2)*/14+P(1) +* END +P PROC +JAT NAME 0 +JAF NAME 1 + SKN ANS + DO P(0) + BRU $+2 + BRU P(1) +* END +P PROC +OCT NAME + ETR =-1--(-1*/(3*P(1))) + BRM BINOCT +* END +* ROUTINE TO ASSIGN MEMORY AND PERIPHERAL DEVICES +ASGNM PZE + NOP BRR ASGNM AFTER EXECUTION + STB BEGMEM + LDA 1 MONARCH BOOT + ETR =037700 + STA ENDMEM + LDA QSYST X1 + BRM CALL + MRG =01000 BINARY MODE + STA EOMX + STB CALLX + ETR =0107 CHANNEL/UNIT + MRG =04014010 FILE PROJECT TEST + STA $+1 + NOP + BRM FPTERR X1 IS FILE PROTECTED + LDA QSYSU SO + BRM CALL + STA EOMSO + STB CALLSO + LDA QSYMO LO + BRM CALL + STA EOMLO + STB CALLLO + LDA QBINO BO/CHANGE TO BI IF USED AS SYS ROUTIN + BRM CALL + MRG =01000 BINARY MODE + STB CALLBI + STA EOMBI + LDA $+2 + STA ASGNM+1 + BRR ASGNM +FPTERR PZE + TYPE FILEMS,5 + HLT + SKR FPTERR + NOP + BRU *FPTERR REDO THE TEST +FILEMS BCD +CALL PZE BUILD IO CALL FROM UAT ENTRY IN A + RSH 18 + ETR =077 BUILD EOM IN A + SKB =1*/21 CHECK + MRG =0100 Y + MRG =0200600 EOM, 4CCTR/WORD + SKA =020 BUILD ROUTINE CALL IN B + BRU ASGNERR + LDB CALC ASSUME CARD READER + SKA =04 CARD IS 6 OR 7 + BRU $+2 + LDB CALT TYPEWRITER + SKA =02 + BRU $+2 + LDB CALT OR PAPER TAPE + SKA =010 + LDB CALM MTAPE + SKA =040 + BRU $+2 PRINTER + BRR CALL + SKA =016 THESE BITS MUST BE ZERO + BRU ASGNERR + LDB CALP + BRR CALL +CALT BRM PAPR SPECIAL PTYIO LINK +CALC BRM CDRP +CALM BRM MTAPE +CALP BRM PRTR SPECIAL PRINT ROUTINE LINK +ASGNERR EQU $ + TYPE ASIGNM,5 + BRU 1 +ASIGNM BCD +* ROUTINE TO INITIALIZE LISTS, FLAGS, AND POINTERS +INIT PZE + CLA + STA END + LDA =0300000 ILLEGAL ORG 0 + STA PROGP + LDA =' ' CARD NO. 0 + STA CARD1 + STA CARD2 + LDA BEGMEM + STA LSTBOT + STA LSTNXT + STA LSTTOP + LDA =-1 + LDX =0200000-25 + STA *LSTTOP + MIN LSTTOP + BRX $-2 ALLOW 12 BLOCKS + CLA + STA *LSTTOP + MIN LSTTOP + STA *LSTTOP TWO ZEROS TO TIE THIS OFF + LDA LSTTOP + ADD =1 + STA ADRBOT + ADD =1 + STA ADRTOP + LDA ENDMEM + SUB =1 + STA DEFTOP + SUB =1 + STA DEFBOT + LDA =-1 + STA REFTOP REFERENCE LIST NOT OPEN + STA PASS PASS NO.1 + BRU $+2 + HLT 040 PAUSE FOR THE OPERATOR + BPT 1 + BRU $-2 + BRM RWNDX + LDA =-1 + BPT 3 + CLA NO LIST OUTPUT IF 3 SET + STA LOFLG + LDA =-1 + BPT 4 + CLA NO SYMBOLIC OUTPUT IF 4 SET + STA SOFLG + BRR INIT +* ROUTINE TO READ INPUT RECORDS BLOCKED UP TO 400 WDS/RECORD +READBI PZE + EXU CALLBI + HLT FDTBI + LDA FDTBI + SKA =1*/22 SKIP IF NO ERROR + BRM BIERR + SUB ADRBI + ETR =037777 NUMBER OF WORDS READ IN + STA WDCNT + LDX =0 + LDA BUFF + LDB =077770000 BLOCKING MODE MASK + SKM =030000 SKIP IF BLOCKED + BRU $+4 + EAX 1,2 POINT BEYOND BLOCKING HEADER + SKR WDCNT + LDA BUFF,2 TEST SECOND WORD FOR TYPE ETC + LDB =070000 + SKM =050000 STD BINARY RECORD + BRU MODERR NO + RSH 2 YES/MAYBE + SKA =1*/23 + EOR =062000000 CHANGE 5 TO 4, 7 TO 6 + SKG =011777777 SKIP IF NOT T 0, 1, 2, 3, 5 + BRU $+2 + BRU MODERR + MIN READBI EXIT TRUE + BRR READBI +MODERR LDA BUFF + LDB =077000000 + SKM ='_XXX' TRY FOR DELTA RECORD + BRU NODEL + PRNT BUFF,20 + BRU READBI+1 TRY NEXT RECORD +NODEL LDB =017777760 + SKM =03200000 TRY A BOOTSTRAP + BRU NOREC + PRNT BOOTM,4 + BRU READBI+1 +NOREC TYPE ILRM,4 + HLT + NOP 7,6 + BRU READBI+1 + BRR READBI EXIT FALSE +BIERR PZE + TYPE BIEMSG,5 + HLT + NOP 077,6 + BRU READBI+1 + BRR BIERR +BIEMSG BCD +ILRM BCD +FDTBI PZE +ADRBI PZE BUFF +CNTBI DATA 400 +EOMBI RTB 0,0,4 +CALLBI BRM MTAPE +CKSUM PZE COMPUTE CHECKSUM + LDA BUFF,2 + RSH 15 + ETR =077 GET COUNT OF THIS RECORD + STA CNT + SUB =1 + STA CSCNT + STX CSX + LDB =070000 CHECK FOR LEGAL RECORD + LDA =050000 + SKM BUFF,2 + BRU CSMODE + CLA START CHECKSUM + EOR BUFF,2 BUILD CHECKSUM + EAX 1,2 + SKR CSCNT + BRU $-3 + STA CSCNT + RSH 12 FOLD + EOR CSCNT FINISH + LDB HLT7 AND + SKM HLT7 TEST + BRU CSERR + MIN CKSUM RETURN TRUE + LDX CSX SAVE ORIGINAL POINTER + BRR CKSUM +CSERR TYPE CSMSG,4 +HLT7 HLT 07777 + NOP 07777 + LDA CNT + ADD CSX MOVE BEYOND RECORD + CAX + BRR CKSUM RETURN FALSE +CSMODE LDA WDCNT + STA CNT SET COUNT PAST GARBAGE WORDS + BRR CKSUM EXIT FALSE +* SCRATCH TAPE HANDLING ROUTINES +WRTX PZE WRITE ONE SCRATCH MARK + CXA X POINTS TO BEGINNING WORD OF RECORD + EAX BUFF,2 ADD BUFFER BASE + STX ADRSX + CAX + LDA CNT + STA WDSX + BRM MTAPE + SKS FDTX + LDA FDTX + SKA =02*/21 SKIP IF NO ERROR + HLT + BRR WRTX +RWNDX PZE REWIND SCRATCH TAPE + BRM MTAPE + EOM FDTX + BRR RWNDX +XTMPX RES 1 +FDTX PZE FILE TABLE FOR SCRATCH TAPE +ADRSX PZE +WDSX PZE +EOMX RTB 0,0,4 +CALLX BRM MTAPE +BKRDX PZE READ SCRATCH TAPE BACKWARDS + LDA =-2 + BRM MTAPE + YIM FDTX + ETR =037777 + SKE =2 DID IT SPACE BY 2 + HLT NO + BRM RDX + BRR BKRDX +RDX PZE READ ONE SCRATCH MARK + LDA =BUFF + STA ADRSX + LDA =40 + STA WDSX + BRM MTAPE + HLT FDTX + LDA FDTX + SKA =2*/21 SKIP IF NO ERROR + HLT + SUB ADRSX GET NO OF WORDS + CLX POINT TO START OF RECORD + ETR =037777 + BRR RDX +* SUBROUTINE TO MOVE INPUT RECORDS TO LISTS AND BUILD OUTPUT IMAG +READ PZE + LDB BUFF,2 + CLA + LCY 3 MOVE TYPE TO A + STA RDCNT + CLA + LCY 6 MOVE COUNT TO A + SUB =1 LESS 1 FOR SKR + XMA RDCNT STORE COUNT,TYPE TO A + XXA TYPE TO X, WORD NO TO A + BRU JTABL,2 +JTABL BRU DATA A CONTAINS POINTERS AS ROUTINES ENTER + BRU REFDEF + BRU POPS + BRU ENDREC + BRU ILLEGAL + BRU SDATA + BRU ILLEGAL + BRU ILLEGAL +ILLEGAL EQU $ + ADM RDCNT MOVE POINTER BEYOND ILLEGAL RECORD + BRU $+2 + BRU ILLEG1 + PRINT ILRM,4 +ILLEG1 LDX RDCNT RE POSITION POINTER IN X + SKN PASS + EAX 1,2 + HLT + NOP *030707 + BRR READ +REFDEF EQU $ + SKN PASS + BRU BYEREC + CAX RESTORE POINTER + EAX 1,2 + SKR RDCNT 1ST ITEM HAD BEEN REMOVED +RDLOP LDA BUFF,2 + STA C1 + LDA BUFF+1,2 + STA C2 + LDA BUFF+2,2 + LDB =060000000 TEST FOR ADDEND ITEM + SKM =060000000 + BRU $+3 + EAX 1,2 + SKR RDCNT + SKA =060000000 SKIP IF SUBTYPE 0 + BRU $+2 + BRU BLENGT + STA C3 + SKA =020000000 + BRU $+3 + BRM SDFLST + BRU $+2 + BRM SRFLST + EAX 3,2 WEVE MOVED BY 3 ITEMS + LDA =-3 + ADM RDCNT + SKN RDCNT + BRU RDLOP + BRR READ +BLENGT LDA ='COM ' COMMON LENGTH DEFINITION + LDB =0200000 + SKB C3 SKIP IF NOT PROGRAM LENGTH + LDA ='PRO ' PROGRAM LENGTH DEFINITION + STA C0 + STX C3 + PRINT C0,3 + LDX C3 + EAX 3,2 + LDA =-3 + ADM RDCNT + SKN RDCNT + BRU RDLOP + BRR READ +POPS EQU $ + SKN PASS + BRU BYEREC BYPASS RECORD ON PASS 2 + CAX + EAX 1,2 + SKR RDCNT FIRST ITME HAS BEEN REMOVED +POPLOP LDA BUFF,2 + STA C1 + LDA BUFF+1,2 + STA C2 + LDA BUFF+2,2 + STA C3 + RSH 16 SET IT ON THE OP CODE LIST + ETR =077 + XXA + LDB C1 + STB POPT1,2 + LDB C2 + STB POPT2,2 + CAX + LDA C3 + SKA =020000000 SKIP IF NOT REFERENCE + BRU POPS1 + ETR =060137777 ADDRESS, RELOC, + TYPE + MRG =010000000 POP FLAG + STA C3 + BRM SDFLST SET IT ON THE DEF LIST +POPS1 EQU $ + EAX 3,2 + LDA =-3 + ADM RDCNT + SKN RDCNT + BRU POPLOP + BRR READ +SDATA EQU $ DATA STATEMENT CAN'T BE DONE + SKN PASS + BRU BYEREC + CAX DUMP IT ON FIRST PASS + SKR RDCNT + EAX 1,2 + LDA ='DATA' + STA LINE + LDA BUFF,2 + OCT 5 + LDA C1 + ADD =' A 0' + STA LINE+1 + LDA C2 + STA LINE+2 + LDA BUFF,2 + LRSH 9 + STA C0 + EAX 1,2 MOVE TO NEXT WORD + SKR RDCNT + LDA BUFF,2 PICK UP HIGH INCREMENT COUNT + ETR =07700000 + MRG C0 + RSH 6 LOCATE AS INTEGER + OCT 5 + LDA C1 + ADD =' I 0' + STA LINE+3 + LDA C2 + STA LINE+4 + LDA BUFF,2 GET REPEAT COUTN + OCT 5 + LDA C1 + ADD =' R 0' + STA LINE+5 + LDA C2 + STA LINE+6 + LDA =' ' + STA LINE+7 + CAB + SKN BUFF,2 IS THERE A LABEL + BRU NODLAB NO + EAX 1,2 YES, MOVE IT TO THE PRINT LINE + SKR RDCNT + LDA BUFF,2 + EAX 1,2 + SKR RDCNT + LDB BUFF,2 +NODLAB STA LINE+7 + STB LINE+8 + PRNT LINE,9 +* OCTAL DUMP THE REST OF THE WORDS +DLDAT LDA =LINE + STA BUFF AT LEAST 3 LOCS OF BUFF ARE OK + LDA =7 + STA BUFF+1 +DLDOP LDA BUFF,2 + OCT 8 + LDA =' ' + STA *BUFF + MIN BUFF + LDA C1 + STA *BUFF + MIN BUFF + LDA *C2 + STA BUFF + SKR BUFF+1 + BRU DLNEX + PRNT LINE,24 + EAX 1,2 MOVE POINTER ON + SKR RDCNT MORE WORDS TO COME + BRU DLDAT YES, DO NEXT LINE + BRR READ MIRACLES, ITS EVEN +DLNEX EAX 1,2 MOVE POINTER + SKR RDCNT ANYTHING LEFT + BRU DLDOP YES, ADD TO LINE + LDA =7 NO SEE HOW LONG THE LINE IS + SUB BUFF+1 + MUL =3 3 WORDS PER DATA WORD + RSH 1 + STB CNTLO + LDA =LINE + STA ADRLO + EXU CALLLO + SKS FDTLO + BRR READ +BYEREC ADM RDCNT + LDX RDCNT + EAX 1,2 REPOSITION POINTER BEYOND RECORD + BRR READ +ENDREC EQU $ + CAX RETURN POINTER TO X + SKR RDCNT + EAX 1,2 MOVE TO NEXT ITEM + LDA PROGP + ETR =0300000 MODE BITS + MRG BUFF,2 + STA RELOC + SKN BUFF,2 IS THERE A NAME LIST + BRU $+3 NO + SKR RDCNT YES, MOVE PAST IT + EAX 1,2 + ETR =0337777 + BRM PSET SET P-REG TO PROG END + SKN PASS + BRU ENDR1 PASS 2, DON'T STORE BLOCKEND + STA *BLKNXT + MIN BLKNXT MOVE ON + EAX 1,2 + LDA =-1 + STA END + SKR RDCNT + BRU $+2 + BRR READ NO TRANSFER OR MODIFIER WORDS + LDA BUFF,2 + LDB RELOC + ETR =037777 TAKE ADDRESS ONLY + SKB =02000000 SKIP IF NO LOAD RELOC + MRG =0100000 + SKB =04000000 SKIP IF NOT COMMON RELOC + MRG =0200000 + BRM SADLST SET ON ADDRESS LIST + BRR READ +ENDR1 BRM ADRESS + BRM BLNKOP + LDA =' ' + STA C1 + STA C2 + CLA + STA C3 + BRM LABCRD + LDA ='END ' + STA C1 + LDA =' ' + STA C3 + LDA =3 + STX ENDTX + EAX LINE+9 + BRM PACK + LDX ENDTX + EAX 1,2 + LDA =-1 + STA END + SKR RDCNT + BRU ENDR2 + LDA =' ' NO TRANSFER ADDRESS + STA C1 +ENDR3 LDA =3 + STX ENDTX + EAX LINE+11 + BRM PACK + BRM BLNKLN BLANK REST OF LINE + BRM OUTPUT + LDX ENDTX + BRR READ +ENDR2 LDA BUFF,2 + ETR =037777 + LDB RELOC + EAX 1,2 + SKR RDCNT MOVE PAST THIS RECORD + BRU $-2 + SKB =02000000 SKIP IF NOT LOAD RELOC + MRG =0100000 + SKB =04000000 SKIP IF NOT COMMON RELOC + MRG =0200000 + BRM CDFLST IS IT ON EXTEND LIST + BRM MAKLAB NO, MAKE A LABEL OF IT + LDA =' ' + STA C3 + BRU ENDR3 +DATA CAX + ADD RDCNT POINT TO END OF BUFFER + STA DNTX STORE FOR TEMP + EAX 1,2 WEVE TAKEN ONE WORD + SKR RDCNT + LDB BUFF,2 + EAX 1,2 + SKR RDCNT + STX DTX PUT POINTER ASIDE FOR NOW +* PROCESS RELOCATION WORDS + LDX DNTX POINT TO LAST WORD + CLA + SKB =010*/19 IO RELOCATION + BRU $+2 + BRU $+4 + LDA BUFF,2 + EAX -1,2 WE'VE TAKEN ONE FROM TAIL + SKR RDCNT + STA IOREL + CLA + SKB =04*/19 POP RELOCATION + BRU $+2 + BRU $+4 + LDA BUFF,2 + EAX -1,2 + SKR RDCNT ONE OFF THE TAIL + STA POPR + CLA + SKB =02*/19 COMMON RELOC + BRU $+2 + BRU $+4 + LDA BUFF,2 + EAX -1,2 ONE OFF THE TAIL + SKR RDCNT + STA COMR + CLA + SKB =01*/19 LOAD RELOCATION + BRU $+2 + BRU $+3 + LDA BUFF,2 + SKR RDCNT ONE MORE OFF, DONE WITH X + STA RELOC + LDX DTX POINT TO FIRST DATA WORD + CBA + ETR =0337777 GET ADDRESS + MODE + BRM PSET + BRU DATL+1 +DATL BRM CYRFLG CYCLE RELOCATION WORDS + LDA BUFF,2 + BRM INSTST + SKN PASS + BRU DAT2 SECOND PASS + JAT DAT1C JUMP IF ITS AN INSTRUCTION + LDA ANS DATA OR FORM + SKA =0377 MULTIFIELD MENS FORM + BRU DAT1C FORM SET ADDRESS + BRU DAT1B DATA +DAT1C LDA ADRP ADDRESS POINTEC TO + SKN INS3 DON'T LIST IF IT'S DEMANDS OCTAL + BRM SADLST +DAT1B MIN PROGP + EAX 1,2 + SKR RDCNT + BRU DATL + LDX DNTX POINT TO NEXT RECORD + EAX 1,2 + BRR READ +CYRFLG PZE + LDA IOREL + LDB POPR + LCY 1 + STA IOREL + STB POPR + LDA COMR + LDB RELOC + LCY 1 + STA COMR + STB RELOC + BRR CYRFLG +DAT2 STX DTX + BRM ADRESS + LDA PROGP + BRM CDFLST + BRU DAT2B NOT DEFINED + LDA C3 + SKA =010000000 IS IT A POPD + BRU DAT2C YES + BRU DAT2F NO +DAT2B BRM CADLST CHECK IF WE'RE ADDRESSED + BRU DAT2E NO + BRM MAKLAB YES, GENERATE PSEUDO LABEL + BRU DAT2F +DAT2C BRM BLNKOP BLANK OPERATIONS CODE + BRM LABCRD SET LABEL AND CARD NO. + LDA ='POPD' + STA C1 + LDA =' ' + STA C2 + STA C3 + LDA =3 SET INSTRUCTION MEMONIC + EAX LINE+9 + BRM PACK + LDA ='$ ' + STA C1 + LDA =3 SET OPERAND FIELD + EAX LINE+11 + BRM PACK + BRM BLNKLN + BRM OUTPUT +DAT2E LDA =' ' GENERATE BLANK LABEL + STA C1 + STA C2 + CLA + STA C3 +DAT2F BRM LABCRD SET LABEL + CARD NO. +* ADDRESS, LABEL, + CARD NO. COMPLETE, SET OP MNEMONIC + LDA INS1 + STA C1 + LDA INS2 + STA C2 + LDA =' ' + STA C3 + LDA =3 + EAX LINE+9 + BRM PACK +* SET UP CODE LISTING + JAF DAT2G + LDA INS3 + OCT 2 + LDA C2 + RSH 12 + LDA =' ' + RSH 6 + LDA TAG + ETR =-1*/1 CLEAR OUT POP BIT IF THERE + XMA TAG + RSH 6 + STB LINE+3 +DAT2K LDA ADRP + SKN STAR + MRG =040000 INDIRECT BIT + OCT 5 + LDA C1 + MRG =' 0' BLANK TOP 3 CCTRS + LDB C2 + LCY 12 + STA LINE+4 + STB LINE+5 + BRU DAT2H +DAT2G CLA + XMA TAG THIS IS LAST USE FOR TAG CLEAR AS FLA + OCT 8 + LDA =0377 IS IT A MULTIFIELD NO. + SKA ANS + BRU DAT2J YES + LDA C1 + STA LINE+3 DATA TO LINE IMAGE + LDA C2 + STA LINE+4 + LDA =' ' + STA LINE+5 + BRU DAT2H +DAT2J LDA C2 + STA LINE+3 + BRU DAT2K +* SET UP OPERAND FIELD +DAT2H LDA =3 + STA LINCC + EAX LINE+11 + STX LINXP + JAF DAT2M + SKN STAR + BRU $+2 + BRU DAT2L + LDA ='* ' + STA C1 + LDA =' ' + STA C2 + STA C3 +DAT2Z LDA LINCC + LDX LINXP + BRM PACK + STA LINCC + STX LINXP + BRU DAT2L +DAT2M LDA =0377 IS THING MULTIFIEDED + SKA ANS + BRU DAT2P NO + CLA + LDB LINE+3 + RSH 6 GUARANTEE LEAD ZERO + STB C1 + LDA LINE+3 + LDB LINE+4 + RSH 6 + STB C2 + LDB LINE+4 + LDA =' ' + RCY 6 + BRU DAT2Q+1 + BRU DAT2Q +DAT2P LDA LINE+3 F1014 + LDB =', 0' COMMA TO C2 + RCY 6 + STA C1 NO. IN OCTAL TO C1 + STB C2 COMMA TO C2 + BRU DAT2Z STASH IT ON LINE AND PROCEED +DAT2L SKN INS3 + BRU DAT2R + LDA ADRP + OCT 5 GENERATE OCTAL FOR ADDRESS FIELD + LDA C1 + MRG =' 00' TOP TWO CCTRS GET BLANDS + LDB C2 + LCY 12 + STA C1 + STB C2 + BRU DAT2Q +DAT2R LDA PROGP + BRM CRFLST ARE WE ON EXTEDN REFERENCE + BRU $+2 NO, BUILD LABEL + BRU DAT2Q + LDA ADRP + BRM CDFLST IS THIS DEFINED + BRM MAKLAB NO, MAKE ONE UP +DAT2Q LDA =' ' + STA C3 LAST CCTR IS BLANK + LDA LINCC + LDX LINXP + BRM PACK MOVE THIS ONTO LINE IMAGE + STA LINCC + STX LINXP + LDA TAG + SKA =07 + BRU $+2 + BRU DAT2S NO TAG FIELD + LDB =' ' + STB C2 + STB C3 + RSH 6 + LDA =' ,' + RSH 6 + STB C1 + LDA LINCC + LDX LINXP + BRM PACK +DAT2S BRM BLNKLN BLANK REMAINDER OF LINE + BRM OUTPUT OUTPUT LINE IMAGE + LDX DTX + MIN PROGP + EAX 1,2 + SKR RDCNT + BRU DATL + LDX DNTX POINT TO NEXT RECORD + EAX 1,2 + BRR READ +* BACKWARDS READING SPECIAL ROUTINE +READ2 PZE + STX RDTX + LDB BUFF + SKB =070000000 SKIP IF TYPE ZERO + BRR READ2 RETURN FALSE + MIN READ2 INCREMENT RETURN + CLA + LCY 9 COUNT + SUB =1 DOWN 1 FOR HEADER + LDX =1 + LDB BUFF,2 + CAX POINT TO END OF RECORD + CLA + SKB =010*/19 IO RELOC + BRU $+2 + BRU $+3 + LDA BUFF,2 + EAX -1,2 + STA IOREL + CLA + SKB =04*/19 POP RELOCATION + BRU $+2 + BRU $+3 + LDA BUFF,2 + EAX -1,2 + STA POPR + CLA + SKB =02*/19 COMMON RELOC + BRU $+2 + BRU $+3 + LDA BUFF,2 + EAX -1,2 + STA COMR + CLA + SKB =01*/19 LOAD RELOC + BRU $+2 + BRU $+3 + LDA BUFF,2 + EAX -1,2 + STA RELOC + CXA RESULTANT WORD COUNT TO A + ETR =077 DELETE ANY INDEX GARBAGE + SUB =1 + STA RDCNT COUNT OF NO. INSTRUCTION IN RECORD + CBA MODE/ADDRESS WORD + ETR =0337777 + STA PROGP FIRST LOC OF RECORD + SUB =1 + STA PROGP1 ONE BELOW RECORD + ADD RDCNT + STA PROGP2 END OF RECORD + LDX RDTX + BRR READ2 +* ROUTINE TO MODIFY P-COUNTER, CALLED WITH NEW ADDRESS AND MODE +* IN A-REG. +PSET PZE + SKE PROGP + BRU $+2 + BRR PSET P-COUTNER OK, NO WORK + LDB =0300000 + SKM PROGP IS MODE UNCHANGED + BRU PSET1 NO,FIX IT + SKN PASS + BRU $+3 PASS 2 + STA PROGP PASS 1 + BRR PSET + SKG PROGP IS IT FORWD OR BACKWARD + BRU $+3 BACKWARD ()ORG + BRM PSETB + BRR PSET + STA PROGP RESET PROGRAM COUNTER + BRM ORGLIN ORIGIN LINE + BRR PSET +PSET1 SKN PASS + BRU PSET2 PASS 2 + XMA PROGP + STA *BLKNXT NEXT AVAILABLE BLOCK BIT CELL + MIN BLKNXT + SKN *BLKNXT IS NEXT PAIR OPEN + BRM MEMOV NO + LDA PROGP + STA *BLKNXT + MIN BLKNXT MOVE TO CLOSURE CELL + BRR PSET +PSET2 STA PSTMPA + LDA *BLKNXT GET END OF PRESENT BLOCK + MIN BLKNXT MOVE TO NEXT START + SKE =-1 TEST FOR ERRORS + BRU $+2 + BRM MEMOV + SKE PROGP + BRM PSETB + LDA *BLKNXT GET START OF NEXT BLOCK + MIN BLKNXT + STA PROGP + BRM ORGLIN + LDA PSTMPA + SKE PROGP + BRM PSETB + BRR PSET +PSETB PZE + STA PSBTA + STX PSBTX +PSETB9 CLA + STA RESVE + BRM ADRESS + BRM BLNKOP + LDA PROGP + BRM CDFLST ARE WE DEFINED + BRU $+2 NOT DEFINED + BRU PSETB1 + BRM CADLST ARE WE ADDRESSED + BRU $+3 NO + BRM MAKLAB YES, MAKE A LABEL + BRU PSETB1 + LDA =' ' + STA C1 GENERATE BLANK LABEL + STA C2 + CLA + STA C3 +PSETB1 BRM LABCRD LABEL AND CARD NO. + LDA ='RES ' RESERVE ORDER + STA C1 + LDA =' ' + STA C2 + STA C3 + LDA =3 + EAX LINE+9 + BRM PACK +PSETB2 MIN RESVE + MIN PROGP + LDA PROGP + SKE PSBTA + BRU $+2 + BRU PFLUSH + BRM CDFLST ARE WE DEFINED + BRU $+2 NO + BRU PFLUSH YES + BRM CADLST ARE WE ADDRESSED + BRU PSETB2 NO,MOVE ON +PFLUSH LDA RESVE NO. CELLS RESERVED + OCT 5 MAKE AN OCTAL NO. + LDA C1 + MRG =' 00' BLANK TOP TWO + LDB C2 + LCY 12 + STA C1 + STB C2 + LDA =' ' + STA C3 + LDA =3 + EAX LINE+11 + BRM PACK + BRM BLNKLN BLANK REST OF LINE + BRM OUTPUT PRINT LINE IMAGE + LDA PROGP + SKE PSBTA IS THIS LOOP DONE + BRU PSETB9 NO,GO AROUND AGAIN + LDX PSBTX + BRR PSETB +ORGLIN PZE + LDA =' ' +I DO 6 + STA LINE+I-1 BLANK LIST BITS + STA C1 + STA C2 BLANK LABEL + CLA + STA C3 + BRM LABCRD + LDA PROGP + RSH 15 MODE TO INTEGER + ETR =3 + STX ORGTX + CAX + LDA ORGLS,2 + STA C1 + LDA =' ' + STA C3 + LDA =3 + EAX LINE+9 + BRM PACK + LDA PROGP + OCT 5 + LDA C1 + MRG =' 00' BLANK TOP TWO + LDB C2 + LCY 6 + STA C1 + STB C2 + LDA =3 + EAX LINE+11 + BRM PACK + BRM BLNKLN + BRM OUTPUT + LDX ORGTX RETRIEVE ENTERING INDEX + BRR ORGLIN +ORGTX RES 1 +ORGLS DATA 'AORG' + DATA 'RORG' + DATA 'CORG' + DATA 'IORG' ILLEGAL +* SUBROUTINE INSTST INSTRUCTION TEST +* X,A SAVE OVER ROUTINE +* INTERFACE CELL LABELS ARE AS FOLLOWS: +* ANS 0 IF TRUE, NEG IF FALSE, FIELD NO. IN LOW BITS +* STAR NEG IF NOT INDIRECTLY ADDRESSED +* TAG -TAG IF TRUE, COUNT OR DATA IF FALSE +* INS1, INS2, INS3 8 CHARACTER INSTRUCTION OP CODE BITS, NEG IF +* OCTAL ADDRESS DEMANDED +* ADRP ADDRESS POINTED TO, OR 0 +* POPT1, POPT2 TABLES OF POP NAMES, WORDS1 AND WORD2 +* POPR POP RELOCATION +* RELOC LOAD RELOCATION +* COMR COMMON RELOCATION +* IOREL I/O RELOCATION +* FORT NEG. IF FORTRAN OPCODES NEEDED +INSTST PZE + STA ITA + STX ITX + CLB + EOR =040000 CHANGE * BIT + RSH 15 + STB STAR + SKA =0100 POP BIT + BRU POPMB + ETR =077 + SKE =02 IS IT EOM + BRU $+2 + MRG =1*/23 + SKE =040 IS IT SKS + BRU $+2 + MRG =1*/23 + SKE =046 IS IT RCH + BRU $+2 + MRG =1*/23 + STA INS3 + CAX + LDA INST1,2 + SKE =-1 + BRU $+2 + BRU NOINS + STA INS1 + LDA =' ' + STA INS2 +SETTRU CLA SET ANSWER TRUE + STA ANS + LDB ITA + CLA + LSH 3 + STA TAG +SETADR LDA ITA + ETR =037777 TAKE ADDRESS ONLY + MRG =03*/15 BOTH COMMON AND LOAD + SKN RELOC + EOR =01*/15 DELETE LOAD BIT + SKN COMR + EOR =02*/15 DELETE COMMON BIT + STA ADRP + LDA ITA + LDX ITX + BRR INSTST +POPMB EQU $ + SKN POPR + BRU FORTMB + ETR =077 + STA INS3 + CAX + LDA POPT1,2 + STA INS1 + LDA POPT2,2 + STA INS2 + BRU SETTRU +FORTMB SKN FORT + BRU NOINS + ETR =077 + CAX + LDA FORT1,2 + SKE =-1 + BRU $+2 + BRU NOINS + STA INS1 + LDA =' ' + STA INS2 + BRU SETTRU +NOINS LDB =1*/23+0 MEG + 1 FIELD + STB ANS + STB STAR CANNOT BE INDIR ECT + SKN RELOC + BRU $+2 + BRU IFORM F1014 IF RELOCATABLE + SKN COMR + BRU $+2 + BRU IFORM + SKN IOREL + BRU IDATA DATA WORD +IFORM MIN ANS SET TO 2 FIELDS + LDA ='F101' + STA INS1 + LDA ='4 ' + STA INS2 + CLA + STA INS3 + LDB ITA + LSH 10 + STA TAG + BRU SETADR +IDATA CLA + STA ADRP + LDA ='DATA' + STA INS1 + LDA =' ' + STA INS2 + LDA ITA + STA TAG + LDX ITX + BRR INSTST +INST1 DATA 'HLT ' 0 + DATA 'BRU ' 1 + DATA 'EOM ' 2 + DATA -1 3 + DATA -1 4 + DATA -1 5 + DATA -1 6 + DATA -1 7 + DATA 'MIY ' 10 + DATA -1 11 + DATA 'MIW ' 12 + DATA 'POT ' 13 + DATA 'ETR ' 14 + DATA -1 15 + DATA 'MRG ' 16 + DATA 'EOR ' 17 + DATA 'NOP ' 20 + DATA -1 21 + DATA -1 22 + DATA 'EXU ' 23 + DATA -1 24 + DATA -1 25 + DATA -1 26 + DATA -1 27 + DATA 'YIM ' 30 + DATA -1 31 + DATA 'WIM ' 32 + DATA 'PIN ' 33 + DATA -1 34 + DATA 'STA ' 35 + DATA 'STB ' 36 + DATA 'STX ' 37 + DATA 'SKS ' 40 + DATA 'BRX ' 41 + DATA -1 42 + DATA 'BRM ' 43 + DATA -1 44 + DATA -1 45 + DATA 'RCH ' 46 + DATA -1 47 + DATA 'SKE ' 50 + DATA 'BRR ' 51 + DATA 'SKB ' 52 + DATA 'SKN ' 53 + DATA 'SUB ' 54 + DATA 'ADD ' 55 + DATA 'SUC ' 56 + DATA 'ADC ' 57 + DATA 'SKR ' 60 + DATA 'MIN ' 61 + DATA 'XMA ' 62 + DATA 'ADM ' 63 + DATA 'MUL ' 64 + DATA 'DIV ' 65 + DATA 'RSH ' 66 + DATA 'LSH ' 67 + DATA 'SKM ' 70 + DATA 'LDX ' 71 + DATA 'SKA ' 72 + DATA 'SKG ' 73 + DATA 'SKD ' 74 + DATA 'LDB ' 75 + DATA 'LDA ' 76 + DATA 'EAX ' 77 +FORT1 EQU $ +FORT DATA 0 NO FORTRAN OPTION +$POPT1 RES 64 +$POPT2 RES 64 +CADLST PZE CHECK IF ON ADDRESS LIST + STX ADTMPX + LDB =0337777 + LDX ADRTOP +CAD1 XXA + SUB =1 + SKG ADRBOT + BRU ADNF EXIT FALSE + XXA + SKM 0,2 + BRU CAD1 NOT THIS, TRY ANOTHER + MIN CADLST JMP IF FOUND + STX C0 TRUE POINTER TO C0 + LDX ADTMPX + BRR CADLST +ADNF CXA RETURN SEARCH ITEM TO A + LDX =-1 + STX C0 SET C0 NEGATIVE + LDX ADTMPX RETRIEVE ENTRY INDEX + BRR CADLST +SADLST PZE ROUTINE TO ADD TO ADDRESS LIST + BRM CADLST IS IT THERE ALREADY + BRU ADTOP1 NO + LDX C0 + MRG =010000000 SECOND REFERENCE FLAG + XMA 0,2 STORE IT AND GET ORIGINAL VERSION + LDX ADTMPX GET X FROM WHERE CADLST PUT IT + BRR SADLST +ADTOP1 LDX ADRTOP GET POINTER TO NEXT AVAILABLE + MIN ADRTOP + STA 0,2 + XXA + ADD =2 + SKG DEFBOT CHECK FOR MEMORY OVERFLOW + BRU $+2 OK + BRM MEMOV SORRY, PROG TOO BIG + CXA + LDX ADTMPX GET X FROM WHERE CADLST PUT IT + BRR SADLST +* ROUTINE TO DELETE AN ITEM FROM ADDRESS LIST +DADLST PZE + BRM CADLST FIND IT + HLT ERROR + LDX C0 + LDA =0337777 BOTH MODES UP, TOP MEM + XMA 0,2 + SKA =010000000 SKIP IF ONLY 1 REFERENCE + STA 0,2 RESTORE THE REFERENCE + LDX ADTMPX + BRR DADLST +* CHECK REFERENCE LIST AN OPEN CHAIN ENDS WITH ALL 0'S A CLOSED O +* WITH TAG 2=1 +CRFLST PZE + STX RFTMPX + LDB =0337777 + LDX REFTOP +CRF1 XXA + SUB =3 + SKG REFBOT + BRU RFNF REFERENCE NOT FOUND + STA C0 + XXA +CRF2 SKM 0,2 + BRU CRF3 NOT THIS ONE, TRY AGAIN + LDB 0,2 FOUND IT, GET TYPE BITS + STB C3 + XXA + XMA C0 SWITCH TO FIRST POINTER + XXA + LDB 2,2 PICK UP LABEL + STB C2 + LDB 1,2 + STB C1 + MIN CRFLST EXIT TRUE + LDX RFTMPX SAVE X + BRR CRFLST +CRF3 SKB 0,2 IS THIS A CLOSING ENTRY + BRU $+2 NO + BRU CRF1 YES, MOVE OVER LABEL + EAX -1,2 MOVE TO NEXT ADDRESS ITEM + BRU CRF2 TRY IT +RFNF CXA RETURN SEARCH ITEM TO A + LDX =-1 EXIT FALSE + STX C0 + LDX RFTMPX + BRR CRFLST +* SET ON REFERENCE LIST +SRFLST PZE + SKN REFTOP IS IT OPENED YET + BRU SRFL1 YES + CAB + LDA DEFBOT NO, OPEN IT BELOW DEF + STA REFTOP + SUB =1 + STA REFBOT + CBA +SRFL1 STX RFTMPX SAVE X + LDX REFBOT + XXA + SUB =4 FOUR ELEMENTS TO START HERE + SKG ADRTOP + BRM MEMOV + STA REFBOT NEW LIST BOTTOM + XXA + CLB + STB 1,2 + LDB C3 + STB 2,2 + LDB C1 + STB 3,2 + LDB C2 + STB 4,2 + LDX RFTMPX + BRR SRFLST +* FIRST REFERENCE OPEN TAIL +FRFOT PZE + LDB $-1 + STB NRFOT + LDB REFTOP TOP OF LIST + STB LRFOT LAST REFERENCE OPEN TAIL + BRU $+2 +NRFOT PZE + STX RFTMPX + LDA =-1 + LDX LRFOT + LDB =0337777 +RFOT1 XXA + SUB =4 + SKG REFBOT + BRU OTNF EXIT FALSE + STA C0 + XXA +RFOT3 SKB 0,2 IS IT AN END + BRU RFOT2 NO + SKA 0,2 ITS AN END, IS IT OPEN + BRU RFOT1 NO + STX LRFOT SAVE POINTER FOR NEXT SEARCH ITEM + CXA YES, SAVE POINTER + XMA C0 GET POINTER TO LABEL + LDB 1,2 PICK UP LINK WORD + STB C3 + RCH 0410 CBA, CAX + LDB 2,2 + STB C1 + LDB 3,2 + STB C2 + MIN NRFOT EXIT TRUE + LDX RFTMPX + BRR NRFOT +RFOT2 EQU $ + EAX -1,2 TRY NEXT ELEMENT OF SUBLIST + BRU RFOT3 +OTNF LDX =-1 OPEN TAIL NOT FOUND + STX LRFOT + STX C0 + LDX RFTMPX + BRR NRFOT +* INSERT ONTO REFERENCE LIST ASSUMES LRFOT HAS TAIL TO WHICH WE +* SHOULD TAG +IRFLST PZE + SKA =0337777 IS ELEMENT A TAIL + BRU IRFL1 NO + STA *LRFOT YES, CLOSE THIS LIST + BRR IRFLST A SIMPLE INSERTION DONE +IRFL1 STX RFTMPX + CAB + LDA REFBOT + SUB =1 WERE ADDING ONE ITEM + SKG ADRTOP DOES IT FIT + BRM MEMOV SO SORRY + STA REFBOT + SUB LRFOT + ADD =1 + CAX + LDA LRFOT + ADD =027600001 + STA IRFL2 + LDA LRFOT + ADD =023500000 + STA IRFL3 +IRFL2 LDA (LRFOT)+1,2 +IRFL3 STA (LRFOT),2 + BRX $-2 MOVE THE LIST DOWN 1 + STB *LRFOT STOW THE NEW ENTRY + SKR LRFOT MOVE FOR NEXT SEARCH + CBA + LDX RFTMPX + BRR IRFLST +CDFLST PZE SEARCH FOR ITEM ON EXTERNAL DEF LIST + STX C0 + LDB =0337777 + LDX DEFTOP +CDF1 XXA + SUB =3 + SKG DEFBOT + BRU DFNF EXIT FALSE + XXA + SKM 0,2 + BRU CDF1 NOT THIS, TRY NEXT + LDB 2,2 FOUND IT, MOVE TO CENTRAL + STB C2 + LDB 1,2 + STB C1 + LDB 0,2 + STB C3 + XXA SAVE A IN X, POINTER TO A + XMA C0 PICK UP OLD X, SAVE POINTER IN C0 + XXA A AND X SAFE + MIN CDFLST EXIT TRUE + BRR CDFLST +DFNF LDA =-1 + XMA C0 SET C0 NEGATIVE, GET INDEX + XXA REPLACES X AND A + BRR CDFLST +SDFLST PZE + SKN REFTOP IS REFERENCE LIST OPEN + BRM MEMOV YES, FAILURE + STX DFTMPX + LDX DEFBOT + XXA + SUB =3 + SKG ADRTOP + BRM MEMOV MEMORY OVERFLOW + STA DEFBOT + XXA + LDB C3 + STB 1,2 + LDB C1 + STB 2,2 + LDB C2 + STB 3,2 + LDX DFTMPX + BRR SDFLST +* ROUTINE TO PICK UP THE ADDRESS OF REFERENCED INSTRUCTION +GADR PZE + STX GATMPX + SUB PROGP GET WORD NO. OF RECORD + STA GATMPA SAVE IT + ADD =2 INDEX POINTER TO THIS WORD AND BUFF + RCH 0401 CAX, CLA + LDB =1*/23 + RSH *GATMPA + LDA BUFF,2 PICK UP THE WORD + ETR =037777 ADDRESS ONLY + MRG =020000000 REFERNCE FLAG + SKB COMR IS IT COMMONED + MRG =0200000 YES, SET COMMON FLAG + SKB RELOC IS IT RELOCATABLE + MRG =0100000 YES SET RELOC FLAG + LDX GATMPX + BRR GADR +SORTAD PZE SORT ADDRESS LIST + LDA ADRBOT + SUB ADRTOP + ADD =1 + STA SORTX + LDA ADRTOP + ETR =037777 + MRG =020000000 + STA SORTOP + LDX SORTX + LDA *SORTOP DELETE REFERENCE FLAGS + ETR =0337777 MODE AND ADDRESS ONLY + STA *SORTOP + BRX $-3 + LDX SORTX PICK UP POINTER 1 +SORTA1 STX SORTX2 PUT LIST IN INCREASING ORDER + STX SORTX + LDA *SORTOP + BRX $+2 + BRU SORTA2 +SORTA3 SKG *SORTOP + BRU SORTA4 + LDA *SORTOP GET SMALLER ITEM + STX SORTX2 SAVE IT LOCATION +SORTA4 BRX SORTA3 + LDX SORTX + XMA *SORTOP + LDX SORTX2 + STA *SORTOP + LDX SORTX + BRX SORTA1 MUST ALWAYS BE TRUE + HLT DEBUG +SORTA2 LDA =0337777 FLAG END OF LIST + STA *ADRTOP +* BREAK ADDRESS LIST INTO 3 LISTS + LDX ADRBOT + LDA =0300000 COMMON OR RELOC + SKA 1,2 SKIP IF ABSOLUTE + BRU $+3 + EAX 1,2 + BRU $-3 + STX AADTOP TOP OF ABSOLUTE ADDRESS LIST + LDA =0200000 COMMON + SKA 1,2 SKIP IF NOT COMMON + BRU $+3 + EAX 1,2 + BRU $-3 + STX RADTOP TOP OF RELOCATABLE LIST + LDA =0100000 RELOCATABLE + SKA 1,2 SKIP IF NOT RELOCATABLE + BRU $+3 + EAX 1,2 + BRU $-3 + STX CADTOP +* SET UP LIST BEGINNINGS + LDA RADTOP + STA CADBOT BOTTOM OF COMMON ADDRESS LIST + ADD =1 + STA CADNXT NEXT COMMON ADDRESS + SKG CADTOP + BRU $+3 NOT EMPTY + LDA =-1 FLAG EMPTY + STA CADTOP + LDA AADTOP + STA RADBOT + ADD =1 + STA RADNXT + SKG RADTOP + BRU $+3 NOT EMPTY + LDA =-1 FLAG IT IMPTY + STA RADTOP + LDA ADRBOT + STA AADBOT + ADD =1 + STA AADNXT + SKG AADTOP + BRU $+3 NOT EMPTY + LDA =-1 + STA AADTOP + BRR SORTAD +* ROUTINE TO MODIFY BLOCK LISTS TO INCLUDE ALL DEFINITIONS +* AND RELOCATABLE REFERENCES +BLKSET PZE + LDA BLKNXT + STA BLKTOP MOVE TOP OF LIST TO TRUE TOP + LDA =-1 + STA *BLKTOP + BRM DEFSPN FIND SPAN OF DEFINITIONS + LDB =0300000 MODE BITS MASK + LDA *RADNXT FIRST RELATIVE ADDRESS + SKM =0100000 IS IT INDEED A RELOC ADDRESS + BRU BLKS1 NO + SKG BUFF+2 + STA BUFF+2 MINIMUM RELOCATABLE ADDRESS + LDA *RADTOP + SKG BUFF+3 + BRU $+2 + STA BUFF+3 MAXIMUM RELOCATABLE ADDRESS +BLKS1 LDA *CADNXT + SKM =0200000 IS IT INDEED A COMMON + BRU BLKS2 NO + SKG BUFF+4 + STA BUFF+4 MINIMUM COMMON ADDRESS + LDA *CADTOP + SKG BUFF+5 + BRU $+2 + STA BUFF+5 MAXIMUM COMMON ADDRESS +BLKS2 SKR BLKNXT MOVE BACKWARDS THRU BLOCK LIST + LDA *BLKNXT + SKE =0300000 BEGINNING OF PROGRAM + BRU $+2 + BRU BLKS3 + RSH 14 TYPE X 2 + ETR =06 GET TYPE ONLY + CAX + LDA BUFF+1,2 MAXIMUM TYPE ADDRESS + SKG *BLKNXT + BRU $+2 ADDRESSING IS NOT ABOVE BUFFER + STA *BLKNXT EXTEND BLOCK TO INCLUDE ADDRESSING + SKR BLKNXT MOVE TO START OF BLOCK + LDA *BLKNXT + SKA =037777 SKIP IF ADDRESS ZERO + SUB =1 ONE BELOW THIS BLOCK + SKG BUFF+1,2 IS IT ABOVE TOP OF REFERENCING + BRU $+2 NO + STA BUFF+1,2 YES CUT REFERENCING BACK + BRU BLKS2 GO DO NEXT BLOCK +BLKS3 LDB =0300000 MODE MASK + LDA BUFF+1 + SKG BUFF IS THERE AN UNSPANNED ABSOLUTE AREA + BRU BLKS4 NO +BLKS5 MIN BLKNXT + SKN *BLKNXT IS THIS ENDED + BRU $+2 + HLT DEBUG + LDA *BLKNXT + SKA =0300000 SKIP IF ABSOLUTE + BRU BLKS5 + LDA BUFF LOWEST ASKED ABSOLUTE ADDRESS + SKG *BLKNXT + STA *BLKNXT +BLKS4 LDA BLKBOT + STA BLKNXT + LDA BUFF+3 + SKG BUFF+2 IS THERE AN UNSPANNED RELOC AREA + BRU BLKS6 NO +BLKS7 MIN BLKNXT MODE MASK + SKN *BLKNXT IS THIS ENDED + BRU $+2 + HLT DEBUG + LDA *BLKNXT + SKM =0100000 SKIP IF RELOC + BRU BLKS7 + LDA BUFF+2 + SKG *BLKNXT + STA *BLKNXT + LDA BLKBOT + STA BLKNXT +BLKS6 LDA BUFF+5 + SKG BUFF+4 IS THERE AN UNSPANNED COMMON AREA + BRU BLKS8 NO +BLKS9 MIN BLKNXT + SKN *BLKNXT IS THIS DONE + BRU $+2 NO + HLT DEBUG + LDA *BLKNXT + SKM =0200000 SKIP IF COMMON + BRU BLKS9 + LDA BUFF+4 + SKG *BLKNXT + STA *BLKNXT + LDA BLKBOT + STA BLKNXT +* AUGMENTATION OF BLOCK LIST COMPLETE, SET SPAN OF ABSOLUTE ADDRE +BLKS8 LDA =-1 + STA MXAAD MAXIMUM ABSOLUTE ADDRESS + LDA =037777 + STA MNAAD MINIMUM ABSOLUTE ADDRESS +BLKS10 MIN BLKNXT + SKN *BLKNXT ARE WE DONE + BRU $+2 + BRU BLKS11 YES + LDA *BLKNXT GET STARTER WORD + MIN BLKNXT MOVE TO END WORD + SKA =0300000 SKIP IF ABSOLUTE + BRU BLKS10 TEST NEXT PAIR + SKG MNAAD + STA MNAAD SET MINIMUM ABSOLUTE ADDRESS + LDA *BLKNXT END WORD + SKG MXAAD + BRU BLKS10 TRY NEXT PAIR + STA MXAAD SET MAXIMUM ABSOLUTE ADDRESS + BRU BLKS10 +BLKS11 LDA BLKBOT + STA BLKNXT BLOCK POINTER TO BOTTOM + LDA *BLKNXT + STA PROGP + BRR BLKSET +* ROUTINE TO PICK UP THE SPAN OF EXT DEFINITION +DEFSPN PZE + LDA =0337777 + STA BUFF MINIMUM ABSOLUTE DEFINITION + STA BUFF+2 MINIMUM REL. DEFINITION + STA BUFF+4 MINIMUM COM. DEFINITION + LDA =-1 + STA BUFF+1 MAXIMUM ABSOLUTE DEFINITION + STA BUFF+3 + STA BUFF+5 + LDA DEFTOP +DFSP1 SUB =3 + SKG DEFBOT IS LIST EMPTIED + BRU DFSP2 YES + CAX + LDA 0,2 WANT ADDRESS WORD ONLY + RSH 14 GET TYPE *2 + ETR =06 + CAB + LDA 0,2 + ETR =0337777 MODE + ADDRESS ONLY + XXB + SKG BUFF,2 + STA BUFF,2 MINIMUM TYPE ADDRESS + SKG BUFF+1,2 + BRU $+2 + STA BUFF+1,2 MAXIMUM TYPE ADDRESS + CBA MOVE LIST POINTER TO A + BRU DFSP1 GO FOR NEXT ITEM +DFSP2 BRR DEFSPN +* ROUTINE TO MAKE ADDRESS LABEL +MAKLAB PZE + STA MKTA + ETR =0337777 TAKE MODE AND ADDRESS ONLY + STA C3 INTERNAL LABEL + STX MKTX + SKA =0300000 IS IT RELOCATABLE + BRU MKLBB YES + SKG MXAAD NO IS IT WITHIN THE PROGRAM + SKG MNAAD + BRU $+2 NO, GO OCTAL + BRU MKLBB + OCT 5 + LDA C1 + MRG =060600000 TOP 2 CHARACTERS ARE BLANK + LDB C2 + LCY 12 LEFT JUSTIFY + STA C1 + STB C2 + LDA MKTA + BRR MAKLAB +MKLBB EQU $ BUILD A HXADECIMAL LABEL + ETR =037777 TAKE ADDRESS ONLY + STA MKTMP + LDA =' ' + STA C1 + STA C2 + LDA MKTMP +MKLBC ETR =017 + CAX + LDA HEXTAB,2 PICK UP NEXT CHARACTER + LDB C1 MOVE IT IN + RSH 6 + LDA C1 + STB C1 + LDB C2 + RSH 6 + STB C2 + LDA MKTMP + RSH 4 PEEL OFF THE USED BITS + STA MKTMP + SKA =037777 + BRU MKLBC + LDA =' A9' + LDB MKTA + SKB =0100000 IS IT LOAD RELOCATABLE + LDA =' R9' YES + SKB =0200000 IS IT COMMON RELOCATABLE + LDA =' C9' YES + LDB C1 MOVE THE IDENTIFIERS ON + RSH 12 + LDA C1 + STB C1 + LDB C2 + RSH 12 + STB C2 LABEL COMPLETE + LDA MKTA + LDX MKTX + BRR MAKLAB +HEXTAB EQU $ + DATA ' Z' 0 HEXADECIMAL ADDRESS TABLE + DATA ' I' 1 + DATA ' J' 2 + DATA ' K' 3 + DATA ' L' 4 + DATA ' M' 5 + DATA ' N' 6 + DATA ' Q' 7 + DATA ' R' 10 + DATA ' S' 11 + DATA ' T' 12 + DATA ' U' 13 + DATA ' V' 14 + DATA ' W' 15 + DATA ' X' 16 + DATA ' Y' =15 (017) +* ROUTINES TO ASSIST BUILDING OF LINE IMAGE +ADRESS PZE BUILD ADDRESS OF LIST OUTPUT + LDA =' ' + STA LINE + LDA PROGP + OCT 5 + LDA C1 + MRG =' 0' BLANKS TO TOP 3 + LDB C2 + LCY 12 + STA LINE+1 + STB LINE+2 + BRR ADRESS +BLNKOP PZE BLANK OPERATIONS CODE + LDA =' ' + STA LINE+3 + STA LINE+4 + STA LINE+5 + BRR BLNKOP +BLNKLN PZE +* BLANK REMAINDER OF PRINT LINE + STX PACKX + LDA =' ' + LDB =077 + LDX =0200000-13 + SKM LINE+26,2 FIND FIRST WORD WITH BLANK END + BRX $-1 + BRU $+2 + STA LINE+26,2 BLANK REMAINDER OF IMAGE + BRX $-1 + LDX PACKX + BRR BLNKLN +* SUBROUTINE TO PACK C1, C2, C3 ONTO REFERENCED PART OF LINE +PACK PZE + STA DOLFLG NEG IF FIRST BLANK TO BE SUPPRESSED + ETR =03 NO OF CCTRS BEFORE FIRST BLANK TEST + STA PACKA + STX PACKX +PACK3 LDX =-4 + LDB *PACKX +PACK2 LCY 6 + SKR PACKA + BRX $-2 CYCLE TILL IGNORABLES ARE PAST + STB PACKB + LDB =077 + SKM =' ' + BRU PACK1 + SKN DOLFLG SKIP IF BLAND SUPPRESS + BRU $+3 + RSH 6 MOVE BLANK CCTR OUT + EAX -1,2 + LDB PACKX + STB PACKB + STX PACKA + LDB C1 + BRM PACKSF + LDA C1 + LDB C2 + BRM PACKSF + LDA C2 + LDB C3 + BRM PACKSF + LDA C3 + LDB =' ' + BRM PACKSF + LDX PACKB GET WORD + LDA PACKA GET NO.OF CHARACTERS THIS LINE PASSED + ADD =6 POINT TO FIRST CCTR SET ON + SKA =014 IS WORD OVERFLOWED + EAX 1,2 YES, MOVE WORD UP + ETR =03 AT MOST 3 CCTR + MRG =040000000 SET CONCAATTEENNATE FLAG + BRR PACK +PACK1 LDB PACKB PICK UP REST OF WORD + BRX PACK2 TRY NEXT CHARACTER + MIN PACKX NONE HERE TRY NEXT WORD + BRU PACK3 +PACKSF PZE + LDX PACKA + BRX $+2 + BRU $+3 + LCY 6 SHIFT UNITL WORD ORIENTED ON LINE + BRU $-3 + STA *PACKX + MIN PACKX + BRR PACKSF +LABCRD PZE + BRM NXCRD + LCY 12 + STA LINE+6 + STB LINE+7 + LDA =-1 + LDB C3 LABEL RESIDES IN C1, 2,3 + SKB =060000000 IS IT EXTERNAL + CLA + STA DOLFLG + LDA =' $' + LDB C1 + SKN DOLFLG + RSH 6 + STB LINE+8 + LDA C1 + LDB C2 + SKN DOLFLG + RSH 6 + STB LINE+9 + LDA C2 + LDB =' ' + SKN DOLFLG + RSH 6 + STB LINE+10 + BRR LABCRD +* BCD COUNTER ROUTINE FOR CARDS +NXCRD PZE + LDA =7 + STA NXCY + LDA CARD2 + LDB CARD1 +NXLOP ADD =1 + ETR =077777717 + STA NXTMP + ETR =077 + SKG =011 + BRU NXFIN + LDA NXTMP + ETR =077777700 + RCY 6 + SKR NXCY + BRU NXLOP +NXIT XAB + ETR =07777 TAKE AT MOST 6 DIGITS + MRG =060600000 BLANK TOP TWO + STA CARD1 + STB CARD2 + BRR NXCRD +NXFIN LDA NXTMP + RCY 6 + SKR NXCY + BRU $-2 + BRU NXIT +NXTMP RES 1 +NXCY RES 1 +CARD1 RES 1 +CARD2 RES 1 +OUTPUT PZE + SKN LOFLG + BRU OUTSO + LDA =28 RESTORE ADDRESS AND COUNTS + STA CNTLO + LDA ADRLIN + STA ADRLO + EXU CALLLO + SKS FDTLO + LDA FDTLO + SKA =1*/22 + BRM LOERR SKIP IF NO ERROR +OUTSO SKN SOFLG + BRR OUTPUT + EXU CALLSO + SKS FDTSO + LDA FDTSO + SKA =1*/22 + BRM SOERR + BRR OUTPUT +FINISH PZE +* ROUTINE TO OUTPUT EXTERNAL LISTING END ENDFILE SO + SKN LOFLG IS LISTING REWUESTED + BRU SOFIN NO + LDA =5 + STA CNTLO + LDA ADRLIN + STA ADRLO + LDX REFTOP FLUSH EXTERNAL REFERENCES +FIN1 CXA + SUB =3 + CAX + SKG REFBOT + BRU FIN2 + LDA 0,2 + STA PROGP + BRM ADRESS + LDA 1,2 + STA LINE+3 + LDA 2,2 + STA LINE+4 + EXU CALLLO + SKS FDTLO + LDA FDTLO + SKA =1*/22 SKIP IF NO ERROR + BRM LOERR + EAX -1,2 MOVE POINTER DOWN ONE + LDA 0,2 PICK UP ADDRESS ITEDM + SKA =0337777 IS THIS END OF CHAIN + BRU $-3 NO + BRU FIN1 YES GET NEXT ITEM +FIN2 LDA CALP + SKE CALLLO IS LO ON PRINTER + BRU SOFIN NO + LDA =1 + STA CNTLO + LDA =(='_EOF') + STA ADRLO +SVN OPD 0700000 + BRM PRINT CALL THE PRINT HANDLER DIRECTLY + SVN FDTLO + LDA FDTLO + SKA =1*/22 SKIP IF NO ERROR + BRM LOERR +SOFIN SKN SOFLG + BRR FINISH SO NONEXISTEND WE'RE DONE + LDA CALM + SKE CALLSO IS SO ON MAGTAPE + BRR FINISH NO + EXU CALLSO + BRU FDTSO WRITE EOF + LDA FDTSO + SKA =1*/22 + BRM SOERR + BRR FINISH +LOERR PZE + TYPE LOEM,5 + BRR LOERR +LOEM BCD +SOERR PZE + TYPE SOEM,6 + HLT + BRR SOERR + BRU OUTSO TRY AGAIN +SOEM BCD +FDTSO PZE + PZE LINE+8 + DATA 20 +EOMSO WTD 0,0,4 +CALLSO BRM MTAPE +SOFLG RES 1 +FDTLO PZE +ADRLO PZE LINE +CNTLO DATA 28 +EOMLO PLP 0,1,4 +CALLLO BRM PRTR +LOFLG RES 1 +ADRLIN PZE LINE +* PSEUDO PRINT ROUTINE THAT HANDLES COMPATIBLE OPS TO OTHER SDS I +PRTR PZE + MIN PRTR MOVE TO OP CODE + LDA *PRTR + SKG =03777777 IS IT OUTPUT + BRR PRTR NO + EOR =04000000 + SKA =01000000 + EOR =05000000 + STA PRNTOP + BRM PRINT +PRNTOP HLT + BRR PRTR +* PSEUDO PTYIO ROUTINE +PAPR PZE +* 000 IS STANDARD BINARY IN/005 IS PTYIO BINARY + MOVE TO GAP +* 040 IS STANDARD BINARY OUT/041 IS PTYIO BINARY OUT + MIN PAPR MOVE TO OP CODE + LDA *PAPR + MRG =0100000 BINARY MODE FLAG + SKA =04000000 IS IT OUTPUT + BRU $+2 YES + MRG =0400000 SET MOVE TO GAP FLAG + STA PAPROP + BRM PTYIO +PAPROP HLT + BRR PAPR +MEMOV PZE ROUTINE ON MEMORY TOO SMALL + TYPE MEMMSG,4 + HLT + NOP *037777,6 + BRU 1 + BRR MEMOV +MEMMSG BCD +* ROUTINE TO FORM OCTAL VERSION OF A IN C1, C2 +AXC OPD 04600401 +BINOCT PZE + STX BOTX + LDB =3 + STB BOTC + RSH 3 + AXC + RSH 3 + CXA + SKR BOTC + BRU $-5 + STB C2 + LDB =3 + STB BOTC + RSH 3 + AXC + RSH 3 + CXA + SKR BOTC + BRU $-5 + STB C1 + LDX BOTX + BRR BINOCT +BOTC RES 1 +BOTX RES 1 +BOOTM BCD < BOOTSTRAP > +UIRM BCD < UNIDENTIFIED RECORD > +CSMSG BCD < CHECKSUM ERROR> +OVMSG BCD < MEMORY OVERFLOW > +* BUFFERS AND FORMALLY DEFINED CELLS +BUFF RES 400 FOR RTM BLOCKED RECORDS +LINE EQU BUFF+400-26 + BCD RECORD LABEL +C0 RES 1 CENTRAL DATA TRANSFER CELLS +C1 RES 1 +C2 RES 1 +C3 RES 1 +END RES 1 END RECORD FLAG NEG FOR TRUE +CNT RES 1 RECORD WORD COUNT +PASS RES 1 PASS FLAG NEG FOR 1 +WDCNT RES 1 PHYSICAL RECORD WORD COUNT +BEGMEM RES 1 START OF LIST AREA +ENDMEM RES 1 END OF LIST AREA +CSCNT RES 1 CNT AS USED BY CKSUM +RDCNT RES 1 CNT AS USED BY READ +CSX RES 1 TEMPX FOR CKSUM +ENDTX RES 1 TEMPX FOR ENDREC +RELOC RES 1 RELOCATION FLAGS +IOREL RES 1 +POPR RES 1 +COMR RES 1 +PROGP RES 1 POINTER TO $ 'HERE' +ADRP RES 1 ADDRESS POINTED TO BY INSTRUCTION +DNTX RES 1 TEMPX FOR DATA READING +INS1 RES 1 TRANSFER CELLS FOR DECOMPOSED INSTRUC +INS2 RES 1 +INS3 RES 1 +STAR RES 1 INDIRECT ADDRESSING FLAG NEG=FALSE +TAG RES 1 TAG FIELD OF INSTRUCTION +ANS RES 1 ANSWER FLAG FOR INSTEST +LINCC RES 1 LINE POINTERS FOR EXTENDED PACKING +LINXP RES 1 +DTX RES 1 DATA TEMPX +RDTX RES 1 TEMPX FOR BACKWARDS READING +* 09 '' HH 6 H H +PSBTA RES 1 TEMPA FOR PSETB +PSBTX RES 1 TEMPX FOR PSETB +PSTMPA RES 1 TEMPA FOR PSET +ADTMPX RES 1 TEMPX FOR ADDRESS LIST +ADRTOP RES 1 TOP OF ADDRESS LIST +ADRBOT RES 1 BOTTOM OF ADDRESS LIST +RFTMPX RES 1 TEMPX FOR REFERENCE LIST +REFTOP RES 1 TOP OF REFERENCE LIST +REFBOT RES 1 BOTTOM OF REFERENCE LIST +LRFOT RES 1 LAST REFERENCED OPEN TAIL +DEFBOT RES 1 BOTTOM OF DEF LIST +DEFTOP RES 1 TOP OF DEF LIST +DFTMPX RES 1 TEMPX FOR DEFLIST +GATMPX RES 1 TEMPX FOR GADR +GATMPA RES 1 TEMPA FOR GADR +SORTX RES 1 INDEX FOR ADRESS LIST SORTING +SORTOP RES 1 LIST TOP FOR ADDRESS LIST SORTING +SORTX2 RES 1 TEMP SORTX +AADTOP RES 1 TYPED ADDRESS LISTS, TOP + BOTTOM +RADTOP RES 1 + +CADTOP RES 1 +AADBOT RES 1 +RADBOT RES 1 +CADBOT RES 1 +AADNXT RES 1 +RADNXT RES 1 +CADNXT RES 1 +LSTBOT EQU $ BLOKLIST TOP + NEXT + BOTTOM +BLKBOT RES 1 +LSTNXT EQU $ +BLKNXT RES 1 +LSTTOP EQU $ +BLKTOP RES 1 +MNAAD RES 1 MINIMUM ABSOLUTE ADDRESS +MXAAD RES 1 MAXIMUM ABSOLUTE ADDRESS +MKTA RES 1 TEMPA FOR MAKLAB +MKTX RES 1 TEMPX FOR MAKLAB +PACKX RES 1 TEMPX FOR LINE BUILDING PACK ROUTINE +PACKA RES 1 TEMPA FOR LINE PACKER +PACKB RES 1 TEMPB FOR LINE PACKER +DOLFLG RES 1 EXTERNAL LABEL FLAG -LABEL MAKER +PROGP1 RES 1 +PROGP2 RES 1 +ITA RES 1 +ITX RES 1 +MKTMP RES 1 + END REGEN + diff --git a/READ.ME b/READ.ME new file mode 100644 index 0000000..258e960 --- /dev/null +++ b/READ.ME @@ -0,0 +1,61 @@ +This is a collection of software for use with the SDS simulator +provided with the simh simulator system. It is provided in hopes of +exciting the interested of someone curious about computing during +the 1960-1976 period. + +It includes a cross assembler used on a Mac to produce the included +Symbol assembler. It also includes a tool set to help manage and +manipulate this stuff; things like a binary object dump, a namelist +program and a program to retieve files from a PAL library file. + +The SDS 900 Series computers were initially paper tape and card unit +systems and the software in this kit predominatly uses these devices. + +The SDS programs in the kit were obtained from files copied from a +9-track tape that was created by the SDS PAL library back in 1982. +This file is from the bitsaver.org archives, M300-19820128.tap. + +The SDS basic paper tape loader program, 850644, is included in the kit as +an example to experiment with the SDS recon and Symbol assembler +programs. + +850640 SEMI-AUTOMATIC TYPEWRITER TEST + +850644 BINARY INPUT-BASIC PAPER TAPE LOADER + +850645 UNIVERSAL LOADER + +850647 ENCODED TO SYMBOLIC RECONSTRUCTOR(RECON) + +850648 BINARY INPUT ONE CARD LOADER + +850649 BINARY INPUT-TWO CARD LOADER + +850657 CARD PUNCH TEST PROGRAM PACKAGE + +850816 910/925 ALGOL 60 BASIC 4K SYSTEM + +890548 BINARY TO SYMBOLIC TRANSLATOR + +cross assembler Assemble SYMBOL programs on a MAC + +fortransa 920/930 FORTRAN II SYSTEM (STAND ALONE) + +symbol Symbol assembler and command files + +tests A magtape test, so far + +tools Possibly useful tools + +The work to put this kit together was done on a Mac. I don't know what +will happen using this stuff on other platforms + + + + + + + + + + diff --git a/cross_assembler/.DS_Store b/cross_assembler/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..5008ddfcf53c02e82d7eee2e57c38e5672ef89f6 GIT binary patch literal 6148 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 V3G);Ut~?#_;6r0Ejd46*{cm`cgarTq literal 0 HcmV?d00001 diff --git a/cross_assembler/sym.c b/cross_assembler/sym.c new file mode 100644 index 0000000..bdb2fd7 --- /dev/null +++ b/cross_assembler/sym.c @@ -0,0 +1,1148 @@ +// +// sym.c +// +// +// Created by Ken Rector on 3/15/20. +// + +#include +#include +#include +#include + +#include "sym.h" + +extern tbl *scan(void); +extern void scnr(void); +extern void scnm(void); +extern int scnl(void); +extern tbl mt[]; +extern tbl sym[]; +extern tbl lt[]; +extern tbl rt[]; +extern uint8_t ascii_to_sds930[]; +extern int ctt[]; + +FILE *fp; +FILE *ifp; +FILE *lofp; +FILE *bofp; + +char *lbl; // loc string +char *op; // op string +char *var; // operand string +char crd[84]; +char line[84]; +char refr[8]; +int lineno; +tbl lbl1; + + +int sot[16]; +int sit[16]; +int it[16]; +int sxt[4]; +int scxt[4]; + + +int *lop; // ptr to loc of scan connector +int *litm; +int *lsot = sot; // location of scan connnector +int *lsit = sit; // location of scan item +int *lsxt = sxt; +int *scnx = sxt; + +int icn; +int cw; +int derr; +int dw[40]; +int dwc; // record size +int eerr; +int ierr; +int iflg; +int inst; +int ladd; // current literal pool location +int lerr; +int loc; +int locp; // literal pool origin +int mloc; +int mode; +int oerr; +int octf; +int pass2; +int perr; +int ploc; +int pmod; +int prel; +int ptyp; +int qloc; +int rel; +int relm; +int rerr; +int scno; +int sm1; +int srel; +int styp; +int terr; +int term; +int uerr; +int _verr; +int valu; +int wmod; +int word; +int wrd2; // form data +int wrd3; +int xerr; +int xflg; + +int ct[] = {0,0100,020000000,020000100}; + +void dir(int op); + +void edtd(int i); + +unsigned int parity7[64] = { + 0100, 0000, 0000, 0100, 0000, 0100, 0100, 0000 /* 00 - 07 */ + ,0000, 0100, 0100, 0000, 0100, 0000, 0000, 0100 /* 10 - 17 */ + ,0000, 0100, 0100, 0000, 0100, 0000, 0000, 0100 /* 20 - 27 */ + ,0100, 0000, 0000, 0100, 0000, 0100, 0100, 0000 /* 30 - 37 */ + ,0000, 0100, 0100, 0000, 0100, 0000, 0000, 0100 /* 40 - 47 */ + ,0100, 0000, 0000, 0100, 0000, 0100, 0100, 0000 /* 50 - 57 */ + ,0100, 0000, 0000, 0100, 0000, 0100, 0100, 0000 /* 60 - 67 */ + ,0000, 0100, 0100, 0000, 0100, 0000, 0000, 0100}; /* 70 - 77 */ + + + + + +int *errflg[] = {&xerr,&oerr,&derr,&eerr,&ierr,&lerr,&perr, + &rerr,&terr,&uerr,&_verr}; +char errchr[] = {'*','O','D','E','I','L','P','R','T','U','V'}; + +// output word to card punch +void punch(int fst, int data) { + int tmp; + + for (int i = 18; i >= 0;i-=6) { + tmp = ((data >> i ) & 0x3f); + tmp = tmp | parity7[tmp]; + if ((fst == 0) & (i == 18)) + tmp |= 0x80; // Set record mark + fwrite(&tmp,1,1,bofp); + } +} + +// save item into table - clear next entry +void _move(tbl *item,char *key,int l,int m) { + if (*(int *)item != (int)item) + printf("move error %s\n",item->lbl); + memcpy(item->lbl,key,6); + item->word = l; // save loc address and mode + item->mode = m; + item++; + *(int *)item = (int)item; // mark end of table + return; +} + +tbl *srch(tbl *t, char *key) { + int lit; + if (t == lt) + lit = 1; + else + lit = 0; + while (*(int *)t != (int)t) { + if (!lit) { + if (strncmp(t->lbl,key,6) == 0) + return t; + } + else { + if (*(int *)t == *(int *)key) + return t; + } + t++; + } + return t; // return address of ending entry +} + + +// insert item onto table +tbl *nsrt(tbl *t,char *key,int l,int m) { + tbl *item; + + item = srch(t,key); + if (*(int *)item == (int)item) { // not found + if (!pass2) + _move(item,key,l,m); + } + else { + if (!pass2) // found + if (item->word != l) + derr++; + } + return item; +} + +//define label at given location +void dlbl(char *key, int l) { + tbl *item; + + if (lbl1.lbl[0] != '\0') { + item = nsrt(sym,key,l,lbl1.mode); + } +} + +void reset(int typ) { + qloc = loc; // save record load addresss + ptyp = typ; // save record type + rel = srel = prel = 0; + + return; +} + +// compute folded checksum +int chksum(int *ctl) { + int ck = 0; + int chks; + int n; + + n = ((cw >> 15) & 077); // nr words in record + ck = (cw & 077770000) ^ 077770000; + for (int i = 0; i < (n-1);i++) + ck ^= (ctl[i] &077777777); // 24 bit words + chks = (ck >> 12) & 07777; + chks ^= ck & 07777; + return chks; +} + +// build cpntrol word and other controls for output record +void flush () { + int i; + + if ((ptyp == RECDAT) | (ptyp == RECEND)) { // record type being flushed + dwc++; // include load-address word in count + dw[0] = qloc; // store load-address + if (rel) { + dw[dwc++] = rel; //store relocation indicator word + dw[0] |= 02000000; // include load-relocation word in count + } + if (srel) { + dw[dwc++] = srel; // include special reloc word in count + dw[0] |= 020000000; + } + if (prel) { + dw[dwc++] = prel; + dw[0] |= 010000000; + } + } + cw = (((ptyp << 6) + dwc + 1) << 15) | 050000; // initialize record control word + cw += chksum(dw); // compute folded checksum + punch(0,cw); + for (i = 0; i < dwc; i++) { + punch(1,dw[i]); + } + for (;i < 39;i++) // 40 - ce card + punch(1,0); + + dwc = 0; + return; +} + +// output word +void outp(int ctyp, int styp, tbl *t, int loc) { + char lbl[8]; + int i; + + if ((dwc & 077777) == 0) { // empty record, reset only + reset(ctyp); + } + else if (ctyp != ptyp) { // type change + flush(); // flush out current record + reset(ctyp); + } + else if (dwc >= 21) { // record filled + flush(); // flush out current record + reset(ctyp); + } + else if (ptyp == RECDAT) { // previous type was data record + if (loc != (ploc + 1)) { // if not incremental location + flush(); // flush out current record + reset(ctyp); + } + } + switch (ctyp) { // switch on current record type + case RECEND+1: // endn + if ((cw >> 21) != RECEND) { // do nothing when previous type was end + ptyp = RECEND; + qloc = mloc; + flush(); + } + break; + case RECEND: // endm - end record with transfer address + word = (*(int *)t & 077777) | 00100000; // bru op + trannsfer address + qloc = mloc; // max value of location counter + 1 + //printf("type 3: %08o %08o\n",word,qloc); + t = (tbl *)&word; // fall thru to finish as data + case RECDAT: // data record + ploc = loc; + dw[dwc+1] = *(int *)t; // leave the load/transfer word empty for now + rel |= (wmod & 02) << (22 - dwc); + if (styp) + srel += 1 << (24-dwc); // special i/o word + if (pmod != 0) + prel += 010000000 >> dwc; + //printf("type 0: %08o %08o\n",dw[dwc],loc); + dwc++; + break; + case RECDEF: // def/ref record with subtype + for (i = 0; i < 6; i++) { + if (t->lbl[i] == '\0') + break; + lbl[i] = ascii_to_sds930[t->lbl[i]]; + } + for (;i < 8; i++) + lbl[i] = ascii_to_sds930[' ']; + dw[dwc] = dw[dwc+1] = 0; + for (int i = 0; i < 4;i++) { + dw[dwc] = dw[dwc] << 6 | lbl[i]; + dw[dwc+1] = dw[dwc+1] << 6 | lbl[i+4]; + } + dw[dwc+2] = t->word | (styp << 22); + //printf("type 1: %08o %08o %08o\n", + // dw[dwc],dw[dwc+1],dw[dwc+2]); + dwc += 3; + break; + case RECPOP: // pop ref/def record with subtype + //word = cntr; + //dw[dwc] = word; + //dw1[1] = (*word++ & 077770000) | ' '; + //dw1[dwc+2] = *word; + break; + } + return; +} + + + +void maxl() { + if (mloc < loc) + mloc = loc; +} + +// increment location value +int iloc(int l) { + maxl(); // set maximum loc + scan(); // get increment + return l + valu; +} + + +// count bits in field +// wrd2 = form word +// wrd3 = B register for NOD +// returns bit count, >24 if last field +int fldc() { + int i; + int A,B; + int X; + + A = wrd2 ^ 040000000; + B = wrd3; + X = 22; + for (i = 0; i < 24; i++,X--) { // simulator NOD 24 + if ((A ^ (A << 1)) & 040000000) + break; + A = ((A << 1) | (B >> 23)) & 077777777; + B = (B << 1) & 077777777; + } + wrd2 = A << 1; // beginning of next field to A[0] + wrd3 = B; + return (23 - X) & 077777; + // when A == 0, nod returns X == 22 - 24 == -2 + // this returns 23 - (-2) = 25 +} +/* + + for (i = 0; i < sc; i++) { // until max count + if ((A ^ (A << 1)) & SIGN) + break; + A = ((A << 1) | (B >> 23)) & DMASK; + B = (B << 1) & DMASK; + } + X = (X - i) & DMASK; + */ + + + +void fref() { // 811 + int cnt1; + int cnt2; + int cnt3; + + cnt1 = 24; // no. of bits left + cnt3 = -5; // set field count + wrd2 = word; // form word for fdlc() + wrd3 = 040000000; + word = 0; // 0 to data + do { + if ((cnt2 = fldc()) > 24) // fr4: count bits in field + break; // no more fields + cnt3++; // count fields + // if it is address field size or last field + if ((cnt2 == 15) && (cnt2 == cnt1)) { + valu = scnl(); // scan as address field + } + else { + scan(); // get non-address field - valu in a and mode in b + if (relm) + rerr++; // set R flag + } + //valu = valu >> cnt2; // left adjust valu in B + if ((valu >> cnt2) != 0) { + if (valu >> cnt2 != -1) { + terr++; //fr6 + } + } + //valu = valu << (24 - cnt1); + word = (word << cnt2) | valu; // insert field in word + cnt1 = cnt1 - cnt2; // decrement bits left + } while (term == ','); // process next field + if (cnt3 < 0) + wrd2 = 0; // too many fields to edit + if (pass2) { + edtd(0); // edit instruction form + outp(RECDAT,0,(tbl *)&word,loc); + } + return; +} + +void ede() { + int i = 0; + for (int j = 0;j < 11;j++) { + if (*errflg[j]) { + fprintf(lofp,"%c",errchr[j]); + i++; + *errflg[j] = 0; + } + } + for (;i<5;i++) + fprintf(lofp," "); + return; +} +void edit(int form,int word) { + ede(); + fprintf(lofp,"%05o",loc & 037777); + fprintf(lofp," %01o %02o %01o %05o",(word>>21)&7,(word>>15)&077,(word>>14)&01,word&037777); + fprintf(lofp," %6d",lineno); + fprintf(lofp," %s",crd); + fprintf(lofp,"\n"); +} + +void edti() { + ede(); + fprintf(lofp,"%05o",loc & 037777); + fprintf(lofp," %01o %02o %05o ",(word>>21)&7,(word>>15)&077,word&077777); + fprintf(lofp," %6d",lineno); + fprintf(lofp," %s",crd); + fprintf(lofp,"\n"); +} + +void edtl() { + ede(); + fprintf(lofp,"%05o",loc & 037777); + fprintf(lofp," "); + fprintf(lofp," %6d",lineno); + fprintf(lofp," %s",crd); + fprintf(lofp,"\n"); +} + +void edtv(int op) { + ede(); + if (op) + fprintf(lofp," %08o ",word); + else + fprintf(lofp," "); + fprintf(lofp," %6d",lineno); + fprintf(lofp," %s",crd); + fprintf(lofp,"\n"); +} + +void edtd(int i) { + ede(); // 5 bytes of error code + fprintf(lofp,"%05o",loc & 037777); + fprintf(lofp," %08o ",word & 077777777); + if (!i) { + fprintf(lofp," %6d",lineno); + fprintf(lofp," %s",crd); + } + fprintf(lofp,"\n"); +} + +void edtr(char *s,int l) { + fprintf(lofp," %05o",l & 037777); + fprintf(lofp," %s",s); + fprintf(lofp,"\n"); +} + + +// handle INS2 and INS9 +void inr3() { + int b,a; + + if (mode & 04000) { // INS9 - 00004010 + scan(); // :360 first arg = channel, valu in a and mode in b + if (valu & 04) + b = 00600000; + else + b= 0; + a = b | ct[valu * 03] | word; + if ((a & 07700000) == 04600000) + a = a ^ 00640000; + word = a; + if (term != ',') { + wmod = 0; + edit(044040000,word); // edit instruction form + outp(RECDAT,0,(tbl *)&word,loc); // type 0 output item + return; // only one arg + } + } + if (iflg) // :377 inr31 INS2, or two args + word |= 040000; // set indirect bit + scan(); // next arg - valu in a and mode in b + if (valu & 077777700) + terr++; + word += (valu & 077); // :384 insert unit + if (term == ',') { + scan(); // second or third arg - valu in a and mode in b + if (valu != 0) + valu -= 1; + word |= (valu & 03) << 7; // position char/word + } + wmod = 0; + edti(); //edit(044040000,word); // edit instruction form + outp(RECDAT,0,(tbl *)&word,loc); // type 0 output item + return; +} + +// mark this label as external if it exists +void lxl(char *l) { + tbl *t; + t = srch(sym,l); + if (*(int *)t != (int)t) + t->mode |= xflg; + return; +} + +int lbl1p1,lbl1p2; + + +// build pop insruction +void popi() { + +#ifdef NEVER + tbl t; + + dlbl(lbl1.lbl,loc); // define label + word = 0; + if (!pass2) { + loc++; + lbl1p2 = 020000000; + memcpy(&sym[0],&lbl1p1,3); + lbl1p1 += 02040; // popd1 + } + else { + dir(PZE); + } +#endif + printf(" POPI called at line %d\n", lineno); + return; +} + +void popd() { + if (!pass2) { + lbl1p2 = loc; + lbl1p1 = lbl1p1 & 077777776; + if (xflg) + lbl1p2 += 040000000; + lbl1p1 += 02040; // like popd1 + } + else { + //BRM PRNT + } +} + +void popr() { + pmod++; + word = ((word & 017600000) | 020000000) >> 1; + ierr++; + dir(PZE); + return; +} + + + + +// end card +void end() { + tbl *t; + int eflg; + int ltr1; + + if (!pass2) { + rewind(ifp); // end1 + pass2 = -1; + locp = loc; // set literal pool origin + ladd = loc; // set 1st literal address + xerr = oerr = derr = eerr = ierr = lerr = perr = 0; + terr = uerr = _verr = 0; + dwc = 0; + t = sym; // end14 search symbol table + while (*(int *)t != (int)t) { + if (t->mode & EXTM) { + t->mode &= ~EXTM; // reset external flag + outp(RECDEF,DEFT,t,loc); // type 1 output def + } + t++; + } + ltr1 = 0; // end13 + t = lt; // search literal table + while (*(int *)t != (int)t) { + if ((t->mode & 07777) == 02040) { // if TYP or TYPW + t->word |= (ltr1 << 16); + ltr1++; + outp(RECPOP,0,t,loc); + } + t++; + } + loc = 0; + } + else { + eflg = 0; // end2 - pass 2 + if (strlen(var)){ + scan(); // get transfer address - valu in a and mode in b + word = valu; + //trns = valu; + edtv(END); + eflg++; + } + else + edtv(0); + loc = locp; // end5 + ltr1 = locp; // literal pool origin + t = lt; + while (ltr1 != ladd) { // end6 check if f 0s in pool + word = *(int *)&(t->lbl); // value + mode = t->mode; + wmod = mode; + edtd(1); // no line num or source + outp(RECDAT,0,(tbl *)&word,loc); + ltr1++; // increment sequence + loc++; // include lit in data + t++; + } + maxl(); // set max load address after literals + t = rt; + while (*(int *)t != (int)t) { // end12 + edtr(t->lbl,t->word); + outp(RECDEF,REFT,t,loc); // type 1 output ref + t++; + } + if (eflg--) { // end15 + //word = valu; + wmod = mode; + outp(RECEND,0,(tbl *)&valu,loc); // type 3 - output transfer card + } + outp(RECEND+1,0,(tbl *)&valu,loc); // end7 type 4 no transfer - output clear cards + return; // end11 + } +} + +// process directives +void dir(int op) { + tbl *t; + char *tmp; + int i = 0; + int j; + int m; + int n; + + + switch (op) { + case 0: // machine instruction + printf(" machine instruction 0\n"); + break; + case INS2: + case DIR1: + case DIR2: + printf(" mnemonic opcode error %o\n",op); + break; + case BORG: + octf = 0; + case AORG: + case ORG: // same as RORG + if (op == AORG) + loc = iloc(0); + else + loc = iloc(00100000); // get new loc relocatable + dlbl(lbl1.lbl,loc); // define label + if (pass2) + edtl(); + break; + case BSS: // RES + n = iloc(0); + dlbl(lbl1.lbl,loc); // define label + if (pass2) + edtl(); + loc += n; + break; + case COPY: + case DATA: + i = 0; + do { + scan(); // valu in a and mode in b + word = valu; + if (pass2) { + wmod = mode; + edtd(i); + outp(RECDAT,0,(tbl *)&word,loc); // type 0 output item + } + i++; + loc++; + } while (term == ','); + break; + case DEC: + m = *var; + if (sscanf(var,"%d",&word) != 1) + eerr++; + word &= 077777777; + if ((word == 0) && (m == '-')) + word = 040000000; + if (pass2) { + edtd(0); + //outp(RECDAT,0,(tbl *)&word,loc); // type 0 output item + } + loc++; + break; + case DED: + case END: + end(); + // bgn4 - begine pass2 + mloc = 0; + loc = 00100000; // relocatable 00000 + break; + case BOOL: + octf = 0; + case EQU: // 435 + scan(); // get value + word = valu; + t = nsrt(sym,lbl1.lbl, + (mode & RELM) ? valu |00100000 : valu, + (mode & 077777776) | xflg); // insert in symbol table + if (pass2) + edtv(EQU); + break; + case FORM: // 466 + + wrd2 = 0; + do { + scan(); // get field length - valu in a and mode in b + wrd2 = (wrd2 | 01)<< (valu); + } while (term == ','); // process next field + lbl1.mode += 041; + word = wrd2>>1; + mode = 041; + t = nsrt(mt,lbl1.lbl,word,mode); // insert form item + if (pass2) { + edtd(0); // edit instruction form + outp(RECDAT,0,(tbl *)&word,loc); + } + + break; + case NOPO: + case OCT: + j = 0; + do { + n = 0; + m = *var; + if ((m == '+') || (m == '-')) + var++; + for (i = 0; i < strlen(var);i++) { + term = var[i]; + if ((var[i] == ' ') || (var[i] == ',')){ + var[i] = '\0'; + break; + } + if (!isdigit(var[i])) { + break; + } + if ((var[i] == '8') || (var[i] == '9')) + n++; + } + if ((i == strlen(var)) && !n) + n = sscanf(var,"%o",&word); + else { + n = 0; + word = 0; + } + if (term == ',') + var = var + strlen(var) + 1; + word &= 077777777; + if ((word == 0) && (m == '-')) + word = 040000000; + if (!n) + eerr++; + if (pass2) { + edtd(j++); + outp(RECDAT,0,(tbl *)&word,loc); // type 0 output item + } + + loc++; + } while (term == ','); + break; + case OPD: + octf = FORCEO; // set octal flag + scan(); // get value - valu in a and mode in b + word = valu; + lbl1.mode += 040; // programmer defined mnemonic + t = nsrt(mt,lbl1.lbl,valu,0); + if ((valu & 07777) == 02140) { + t->mode = lbl1.mode; + t->word = lbl1.word; + } + dlbl(lbl1.lbl,loc); // define label + if (pass2) { + edtv(OPD); + } + break; + case PAGE: + break; + case POPD: + case PZE: + if (pass2) { + word = (scnl() & 077777); // inr1 - get instruction address + wmod = mode; + // EOM or EOD + if (iflg) + word |= 040000; // inr92 - set indirect bit + // inr94 + octf = 0; // reset octal flag + if (term == ',') { + scan(); // get index - valu in a and mode in b + word |= (valu & XMASK) << 21; // inr2 insert index + } + if ((term != ' ') && (term != '\0')) // lin8 test if blank or \0 terminator + eerr++; + term = ' '; + edit(044040000,word); // edit instruction form + outp(RECDAT,0,(tbl *)&word,loc); // type 0 output item + } + loc++; + break; + case BPT: + if (pass2) { + word = 04020000; // base sks instruction + do { + scan(); // get break-point + word = word + (01000 >> valu); + } while (term == ','); + edit(0,word); // edit instruction form + outp(RECDAT,0,(tbl *)&word,loc); + } + loc++; + break; + case BCI: + // goto text1; + case BCD: + case TEXT: + if (*var == '<') { + tmp = strtok(++var,">"); + n = (int)strlen(tmp); + } + else { + tmp = strtok(var,","); // text1 get count + if (tmp == NULL) { + terr++; + n = 0; + } + else if (*tmp == '0') + i = sscanf(tmp,"%o",&n); + else + i = sscanf(tmp,"%d",&n); + if (i != 1) + terr++; + tmp = strtok(NULL,""); + m = strlen(tmp); + } + i = 0; + mode = 0; + wmod = 0; + for (int j = 0;j < n;) { + word = 0; + for (int k = 0;k<4;k++,j++) { + if (j < m) + word = (word<<6) | ascii_to_sds930[tmp[j]]; + else + word = (word<<6) | ascii_to_sds930[' ']; //60; + } + if (pass2) { + edtd(i++); + outp(RECDAT,0,(tbl *)&word,loc); // type 0 output item + } + loc++; + } + break; + default: + printf("unknown pseudo op %d\n",op); + break; + }; +} + + + +// read line +int _read() { + int tmp; + + //ssize_t r; + //size_t len = 0; + int i; + int c; + char *p; + FILE *infile; + + if (pass2) { + infile = ifp; + } + else { + infile = fp; + } + while (1) { + tmp = 0; + p = line; + while ((c = fgetc(infile)) != EOF) { + if (c == '\r') + continue; + if (c == '\n') { + *p++ = '\0'; + break; + } + if (c == '\t') { + for (int j = 0; j < 4;j++) + *p++ = ' '; + } + else + *p++ = toupper(c); + if (c != ' ') + tmp++; + } + if (c == EOF) + return -2; + if (tmp) + break; + } + + if(!pass2) + fprintf(ifp,"%s\n",line); + if (c == EOF) + return -2; // end of file or error + + strcpy(crd,line); + if (line[0] == '*') { + return -1; // REMARK card + } + if (line[0] != ' ') { + if (line[0] == '$') { + if (!pass2) + xflg = EXTM; // set external flag + lbl = strtok(&line[1]," "); + } + else + lbl = strtok(&line[0]," "); + op = strtok(NULL," "); + if (lbl[0] == '*') { + if (pass2) + edtv(0); // REMARK card + return -1; + } + } + else { + lbl = ""; + op = strtok(line," "); + } + // if (op == NULL) + // return 0; + var = strtok(NULL,""); + if (var == NULL) + var = ""; + i = 0; + while (*var == ' ') { + i++; + var++; // skip leading blanks + } + if (i > 7) + var = ""; + return (int)strlen(crd); +} + +int main(int argc, char **argv) { + + int i; + int r; + tbl *mne; + char *c; + + if (argc < 2 || argc > 4) { + printf("Usage: sym source-file [[list-file][-]] [[binary-file]]]"); + exit(1); + } + fp = fopen(argv[1],"r"); + if (fp == NULL) { + fprintf(stderr,"Open error on source-file: %s\n",argv[1]); + exit(1); + } + if (argc > 2) { + if (argv[2][0] != '-') { + lofp = fopen(argv[2],"w"); + if (lofp == NULL) { + fprintf(stderr,"Open error on list-file: %s\n",argv[2]); + exit(1); + } + } + else + lofp = fopen("/dev/null","w"); + } + if (argc > 3) { + bofp = fopen(argv[3],"w"); + if (bofp == NULL) { + fprintf(stderr,"Open error on binary-file: %s\n",argv[3]); + exit(1); + } + } + else + bofp = fopen("/dev/null","w"); + + ifp = fopen("sym_i","w+"); + + pass2 = 0; + loc = 00100000; // relocatable 0000 + mloc = 0; + lineno = 0; + lop = lsot; + litm = lsit; + scnx = lsxt; + *(int *)sym = (int)sym; + *(int *)lt = (int)lt; + *(int *)rt = (int)rt; + mne = srch(mt,"QQQ"); + *(int *)mne = (int)mne; + + while (1) { + iflg = 0; + xflg = 0; + octf = 0; // reset octal flag + lbl1.lbl[0] = '\0'; + if (pass2) + lineno++; + + if ((r = _read()) == -2) // read line + break; // EOF + if (r == -1) { + if (pass2) + edtv(0); + continue; // comment card + } + if (r == 0) + continue; + + if (strlen(lbl)) { // lin1 process label field + lbl = strtok(lbl,","); + while (1) { + //if (*lbl == '0') + // lerr++; + + if (!(CTT(*lbl) & SC)) + lerr++; + strcpy(lbl1.lbl,lbl); + lbl1.mode = xflg; + if (strpbrk(lbl,"'+-()*/$") != NULL) // illegal character + lerr++; + for (i = 0; i< strlen(lbl);i++) + if (!isdigit(lbl[i])) // test for at least + break; // 1 alphabetic + if (i == strlen(lbl)) + lerr++; // all numeric + if (strlen(lbl) > 6) { + lbl[6] = '\0'; // too long + lerr++; + } + lxl(lbl); // if label exists, or in xflg + lbl = strtok(NULL,","); + //if ((c = strpbrk(lbl,",")) == NULL) { + if (lbl == NULL) { + //if (lerr) // test for label error + //lbl1.lbl[0] = '\0'; // don't enter label + break; + } + + //lbl = c + 1; // processs next label + } + } + //lxl(lbl); // if label exists, or in xflg + if (op == NULL) + continue; + if (op[strlen(op)] == '*') { // lp1 - test for * + iflg++; // set iflg + op[strlen(op)] = '\0'; // eliminate the * + } + if (strpbrk(op,"'+-()*/$") != NULL) // illegal character + sm1++; // undefined command + mne = srch(mt,op); // look up mnemonic + if (*(int *)mne == (int)mne) + popi(); // undefined, must be pop + word = mne->word; // instruction skeleton + mode = mne->mode; // save op code type + if ((mode & DIR1)) { // 00000004 + dir(word & 07777); + continue; + } + dlbl(lbl1.lbl,loc); // define label + if ((mode & DIR2)) { // lin7 + dir(word & 07777); + continue; + } + if (pass2) { // build instruction on pass 2 + if (mode & 02000) + popr(); // :292 + else if (mode & 01) + fref(); // :294 + else if (mode & 010) { // INS2 000000010 or INS9 00004010 + inr3(); // :356 + } + else { + if (mode & INS1) // 00000020 + octf = FORCEO; + else + octf = 0; + word |= (scnl() & 037777); // inr1 - get instruction address + wmod = mode; + // EOM or EOD + if (iflg) + word |= 040000; // inr92 - set indirect bit + // inr94 + octf = 0; // reset octal flag + if (term == ',') { + scan(); // get index + word |= (valu & XMASK) << 21; // inr2 insert index + } + if ((term != ' ') && (term != '\0')) // lin8 test if blank or \0 terminator + eerr++; + term = ' '; + edit(044040000,word); // edit instruction form + outp(RECDAT,0,(tbl *)&word,loc); // type 0 output item + } + } + loc++; // lin2 pass 1 and 2, inst and directive + } + return 1; +} + + diff --git a/cross_assembler/sym.dSYM/Contents/Info.plist b/cross_assembler/sym.dSYM/Contents/Info.plist new file mode 100644 index 0000000..46a7b45 --- /dev/null +++ b/cross_assembler/sym.dSYM/Contents/Info.plist @@ -0,0 +1,20 @@ + + + + + CFBundleDevelopmentRegion + English + CFBundleIdentifier + com.apple.xcode.dsym.sym + CFBundleInfoDictionaryVersion + 6.0 + CFBundlePackageType + dSYM + CFBundleSignature + ???? + CFBundleShortVersionString + 1.0 + CFBundleVersion + 1 + + diff --git a/cross_assembler/sym.dSYM/Contents/Resources/DWARF/sym b/cross_assembler/sym.dSYM/Contents/Resources/DWARF/sym new file mode 100644 index 0000000000000000000000000000000000000000..f6869a26301d030a82bd7cce5a87a65ab96dab83 GIT binary patch literal 30991 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 literal 0 HcmV?d00001 diff --git a/cross_assembler/sym.h b/cross_assembler/sym.h new file mode 100644 index 0000000..1d1130d --- /dev/null +++ b/cross_assembler/sym.h @@ -0,0 +1,112 @@ +// +// sym.h +// +// Created by Ken Rector on 3/15/20 + + +#define INS1 020 +#define INS9 04010 +#define INS2 010 +#define DIR1 04 +#define DIR2 02 + +#define RELM 02 +#define EXTM 01 + + + +#define REFT 01 // ref/def/pop subtype +#define DEFT 02 +#define INTT 00 + +#define RECDAT 00 // record type +#define RECDEF 01 +#define RECPOP 02 +#define RECEND 03 + +#define AORG 0103 +#define BCD 0104 +#define BCI 0105 +#define BORG 0106 +#define BSS 0107 +#define DEC 0110 +#define DED 0111 +#define END 0112 +#define EQU 0113 +#define FORM 0114 +#define NOPO 0115 +#define OCT 0116 +#define OPD 0117 +#define POPD 0120 +#define PZE 0121 +#define TEXT 0122 +#define BOOL 0123 +#define COPY 0124 +#define DATA 0125 +#define ORG 0126 +#define PAGE 0127 +#define BPT 0130 + +#define FORCEO 1 +#define XMASK 07 + +#define EOM 00200000 + +typedef struct def { + int cw; + char lbl[8]; + int data; +} def; + + + +typedef struct tbl { + char lbl[8]; + int mode; + int word; +} tbl; + + +#define CTT(c) ctt[ascii_to_sds930[c]] + +#define IC 04000000 +#define CC 02000000 +#define LC 01000000 +#define SC 00400000 +#define DC 00200000 +#define OC 00100000 +#define XYZ 06000000 + + +#define ITM 04000000 // ITEM +#define CON 02000000 // CONNECTOR +#define STM 05400000 // SYMBOL,LABEL,ITEM +#define DTM 04600000 // DECIMAL, SYMBOL, ITEM +#define OTM 04700000 // OCTAL,DECIMAL,SYMBOL,ITEM +#define SCO 0 // ZERO +#define SCD 0 // DIGIT +#define SCS 0 // LETTER +#define SCA 1 // APOSTROPHY (single quote) +#define SCL 5 // DOLLAR, ASTERISK +#define SCX 9 // LEFT PAREN + +#define BCON 00000 // BLANK connector code +#define CCON 00100 // , connector code +#define RCON 00200 // ) connector code +#define SCON 03310 // + ++ connector codes +#define DCON 03411 // - -- connector codes +#define PCON 04522 // * ** connector codes +#define QCON 04647 // / // connector codes + + + +#define CLS 0 +#define CLD 1 +#define CLP 2 +#define CAS 3 +#define CAD 4 +#define CAP 5 +#define CEQ 6 +#define CXQ 7 +#define CDS 8 +#define CBS 9 diff --git a/cross_assembler/sym2.c b/cross_assembler/sym2.c new file mode 100644 index 0000000..aeb929b --- /dev/null +++ b/cross_assembler/sym2.c @@ -0,0 +1,736 @@ +// +// sym2.c +// +// +// Created by Ken Rector on 3/21/20. +// + +#include +#include +#include +#include +#include + +#include "sym.h" + +extern tbl *srch(tbl *t, char *key); +extern void _move(tbl *item, char *key, int loc, int mode); + +extern char *var; // operand string +extern char refr[]; +extern int *lop; +extern int *litm; +extern int ladd; +extern int *scnx; + + +extern int derr; +extern int eerr; +extern int iflg; +extern int loc; +extern int lsot; +extern int lsxt; +extern int mode; +extern int octf; +extern int pass2; +extern int perr; +extern int relm; +extern int rerr; +extern int scno; +extern int term; +extern int terr; +extern int _verr; +extern int valu; +extern int xerr; + +void scan(void); + + + +tbl mt[1000] = { + {"LCY", 00, 06720000}, + {"LDA", 00, 07600000}, + {"LDB", 00, 07500000}, + {"LDE", 00, 04600140}, + {"LDX", 00, 07100000}, + {"LIL", DIR2, NOPO}, + {"LIST", DIR2, NOPO}, + {"LRSH", 00, 06624000}, + {"LSH", 00, 06700000}, + {"MIN", 00, 06100000}, + {"MIW", 00, 01200000}, + {"MIY", 00, 01000000}, + {"MPT", INS9, 010210}, + {"MRG", 00, 01600000}, + {"MUL", 00, 06400000}, + {"NOD", 00, 06710000}, + {"NOP", 00, 02000000}, + {"OCT", DIR2, OCT}, + {"OPD", DIR1, OPD}, + {"ORG", DIR1, ORG}, + {"OVT", 00, 04020001}, + {"PAGE", DIR2, PAGE}, + {"PBF", INS9, 017457+EOM}, + {"PBT", INS9, 04012045}, + {"PCB", INS9, 03045+EOM}, + {"PCD", INS9, 02045+EOM}, + {"PFT", INS9, 011057}, + {"PLP", INS9, 02057+EOM}, + {"POL", INS9, 012057+EOM}, + {"POPD", DIR1, POPD}, + {"POT", 00, 01300000}, + {"PPT", INS9, 02043+EOM}, + {"PPTW", INS2, 0202043}, + {"PPTY", INS2, 0202143}, + {"PRT", INS9, 012057}, + {"PS1F", INS9, 010457+EOM}, + {"PS2F", INS9, 012457+EOM}, + {"PSP1", INS9, 011657+EOM}, + {"PSP2", INS9, 012657+EOM}, + {"PSP3", INS9, 013657+EOM}, + {"PSP4", INS9, 014657+EOM}, + {"PSP5", INS9, 015657+EOM}, + {"PSP6", INS9, 016657+EOM}, + {"PSP7", INS9, 017657+EOM}, + {"PTF", INS9, 011457+EOM}, + {"PTL", INS9, 043+EOM}, + {"PTLW", INS2, 0200043}, + {"PTLY", INS2, 0200143}, + {"PZE", DIR2, PZE}, + {"RCB", INS9, 03005+EOM}, + {"RCBW", INS2, 0203005}, + {"RCBY", INS2, 0203105}, + {"RCD", INS9, 02005+EOM}, + {"RCDW", INS2, 0202005}, + {"RCDY", INS2, 0202105}, + {"RCH", INS1, 04600000}, + {"RCY", 00, 06620000}, + {"REL", DIR2, NOPO}, + {"REO", 00, 020010+EOM}, + {"RES", DIR2, BSS}, + {"REW", INS9, 014010+EOM}, + {"REWW", INS2, 014010+EOM}, + {"RKB", INS9, 02000+EOM}, + {"RKBW", INS2, 0202000}, + {"RKBY", INS2, 0202100}, + {"RORG", DIR2, ORG}, + {"ROV", 00, 020001+EOM}, + {"RPT", INS9, 02003+EOM}, + {"RPTW", INS2, 0202003}, + {"RPTY", INS2, 0202103}, + {"RSH", 00, 06600000}, + {"RTB", INS9, 03010+EOM}, + {"RTBW", INS2, 0203010}, + {"RTBY", INS2, 0203110}, + {"RTD", INS9, 02010+EOM}, + {"RTDW", INS2, 0202010}, + {"RTDY", INS2, 0202110}, + {"RTS", INS9, 014000+EOM}, + {"SFB", INS9, 03030+EOM}, + {"SFB", INS2, 0203030}, + {"SFD", INS9, 02030+EOM}, + {"SKA", 00, 07200000}, + {"SKB", 00, 05200000}, + {"SKD", 00, 07400000}, + {"SKE", 00, 05000000}, + {"SKG", 00, 07300000}, + {"SKM", 00, 07000000}, + {"SKN", 00, 05300000}, + {"SKR", 00, 06000000}, + {"SKS", INS1, 04000000}, + {"SRB", INS9, 07030+EOM}, + {"SRBW", INS2, 0207030}, + {"SRC", INS9, 012005+EOM}, + {"SRD", INS9, 06030+EOM}, + {"SRR", INS9, 013610+EOM}, + {"STA", 00, 03500000}, + {"STB", 00, 03600000}, + {"STE", 00, 04600122}, + {"STX", 00, 03700000}, + {"SUB", 00, 05400000}, + {"SUC", 00, 05600000}, + {"TCD", DIR2, NOPO}, + {"TEXT", DIR2, TEXT}, + {"TFT", INS9, 013610}, + {"TGT", INS9, 012610}, + {"TOP", INS9, 014000+EOM}, + {"TOPW", 00, 014000+EOM}, + {"TOPY", 00, 014100+EOM}, + {"TRT", INS9, 04010410}, + {"TYP", INS9, 02040+EOM}, + {"TYPW", INS2, 0202040}, + {"TYPY", INS2, 0202140}, + {"UNLI", 0, 0}, + {"WIM", 00, 03200000}, + {"WTB", INS9, 03050+EOM}, + {"WTBW", INS2, 0203050}, + {"WTBY", INS2, 0203150}, + {"WTD", INS9, 02050+EOM}, + {"WTDW", INS2, 0202050}, + {"WTDY", INS2, 0202150}, + {"XAB", 00, 04600014}, + {"XEE", 00, 04600160}, + {"XMA", 00, 06200000}, + {"XXA", 00, 04600600}, + {"XXB", 00, 04600060}, + {"YIM", 00, 03000000}, + {"ABC", 00, 04620005}, + {"ADC", 00, 05700000}, + {"ADD", 00, 05500000}, + {"ADM", 00, 06300000}, + {"AIR", 00, 020020+EOM}, + {"ALC", INS9, 0250000}, + {"AORG", DIR1, AORG}, + {"ASC", INS9, 012000+EOM}, + {"BAC", 00, 04610012}, + {"BCD", DIR2, BCD}, + {"BCI", DIR2, BCI}, + {"BETW", 00, 04020010}, + {"BETY", 00, 04020020}, + {"BLK", DIR2, NOPO}, + {"BOOL", DIR1, BOOL}, + {"BORG", DIR1, BORG}, + {"BPT", DIR2, BPT}, + {"BRM", 00, 04300000}, + {"BRR", 00, 05100000}, + {"BRTW", 00, 04021000}, + {"BRTY", 00, 04022000}, + {"BRU", 00, 00100000,}, + {"BRX", 00, 04100000}, + {"BSS", DIR2, BSS}, + {"BTT", INS9, 04012010}, + {"CAB", 00, 04600004}, + {"CAT", INS9, 04014000}, + {"CAX", 00, 04600400}, + {"CBA", 00, 04600010}, + {"CBX", 00, 04600020}, + {"CET", INS9, 04011000}, + {"CFT", INS9, 04011005}, + {"CIT", INS9, 04010400}, + {"CLA", 00, 04600001}, + {"CLB", 00, 04600002}, + {"CLR", 00, 04630003}, + {"CLX", 00, 024600000}, + {"CNA", 00, 04601000}, + {"COPY", DIR2, COPY}, + {"COPY", 0, 0}, + {"CPT", INS9, 04014045}, + {"CRT", INS9, 04012005}, + {"CXA", 00, 04600200}, + {"CXB", 00, 04600040}, + {"CZT", INS9, 04012000}, + {"DATA", DIR2, DATA}, + {"DEC", DIR2, DEC}, + {"DED", DIR2, DED}, + {"DIR", 00, 00220004}, + {"DISW", 00, 00+EOM}, + {"DISY", 00, 0100+EOM}, + {"DIV", 00, 06500000}, + {"DSC", INS9, 00+EOM}, + {"DT2", INS9, 016210}, + {"DT5", INS9, 016610}, + {"DT8", INS9, 017210}, + {"EAX", 00, 07700000}, + {"EFT", INS9, 03070+EOM}, + {"EIR", 00, 00220002}, + {"END", DIR2, END}, + {"EOD", INS1, 0600000}, + {"EOM", INS1, 0200000}, + {"EOR", 00, 01700000}, + {"EPT", INS9, 014057}, + {"EQU", DIR1, EQU}, + {"ERT", INS9, 07070+EOM}, + {"ETR", 00, 01400000}, + {"ETT", INS9, 04011010}, + {"ETW", INS2, 0203070}, + {"EXU", 00, 02300000}, + {"F101", 0, 0}, + {"FCT", INS9, 04014005}, + {"FORM", DIR1, FORM}, + {"FORT", DIR2, NOPO}, + {"HLT", 0, 0}, + {"FPT", INS9, 04014010}, + {"IDT", 00, 04020002}, + {"IET", 00, 04020004}, + {"QQQ",00, 0000}, + {" ", 00,00000} +}; + + +tbl sym[1000] = {{"\0\0\0", 00,00000} // symbol table +}; +tbl lt[1000] = {{"\0\0\0", 00,00000} // literal table +}; +tbl rt[1000] = {{"\0\0\0", 00,00000} // ref table +}; + + +const uint8_t ascii_to_sds930[128] = { + 060, -1, -1, -1, -1, -1, -1, -1, /* 00 - 37 */ + 032, 072, -1, -1, -1, 052, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, + 060, 052, -1, 077, 053, 017, -1, 014, /* 40 - 77 */ + 074, 034, 054, 020, 073, 040, 033, 061, + 000, 001, 002, 003, 004, 005, 006, 007, + 010, 011, 015, 056, 036, 013, 016, 072, + 037, 021, 022, 023, 024, 025, 026, 027, /* 100 - 137 */ + 030, 031, 041, 042, 043, 044, 045, 046, + 047, 050, 051, 062, 063, 064, 065, 066, + 067, 070, 071, 035, 076, 055, 057, 060, + -1, 021, 022, 023, 024, 025, 026, 027, /* 140 - 177 */ + 030, 031, 041, 042, 043, 044, 045, 046, /* fold lower case to upper */ + 047, 050, 051, 062, 063, 064, 065, 066, + 067, 070, 071, -1, -1, -1, -1, -1 +}; + + +int ctt[] = { + OTM |SCO, // O OO + OTM |SCD, // 1 01 + OTM |SCD, // 2 02 + OTM |SCD, // 3 03 + OTM |SCD, // 4 04 + OTM |SCD, // 5 05 + OTM |SCD, // 6 06 + OTM |SCD, // 7 07 + DTM |SCD, // 8 10 + DTM |SCD, // 9 11 + 0, // Z HLT 0 + 077, // C3 HLT 077 = + ITM |SCA, // ' 14 + 040000000, // 80 DATA 040000000 + 2, // 822 HLT 2 + 030, // P24 HLT 24 + CON |SCON, // + 20 + STM |SCS, // A 21 + STM |SCS, // B 22 + STM |SCS, // C 23 + STM |SCS, // D 24 + STM |SCS, // E 25 + STM |SCS, // F 26 + STM |SCS, // G 27 + STM |SCS, // H 30 + STM |SCS, // I 31 + 013, // ECHR |HLT '=' + 040, // MCHR |HLT '-' + CON |RCON, // ) 34 + 07, // A7 HLT 7 + 03, // P3 HLT 3 + 0100, // B17 HLT 0100 + CON |DCON, // - 40 + STM |SCS, // J 41 + STM |SCS, // K 42 + STM |SCS, // L 43 + STM |SCS, // M 44 + STM| SCS, // N 45 + STM |SCS, // O 46 + STM |SCS, // P 47 + STM |SCS, // Q 50 + STM| SCS, // R 51 + 020, // PLUS HLT '+' // + + ITM |SCL, // $ 53 + XYZ |SCL, // * 54 + 033, // PCHR HLT '.' + 014, // QCHR HLT 014 + 034, // RCHR HLT ')' + CON |BCON, // 60 ' ' = 02000000 + CON |QCON, // / 61 + STM |SCS, // S 62 + STM |SCS, // T 63 + STM |SCS, // U 64 + STM |SCS, // V 65 + STM |SCS, // W 66 + STM |SCS, // X 67 + STM |SCS, // Y 70 + STM |SCS, // Z 71 + 0, // HLT 0 + CON |CCON, // , 73 + ITM |SCX, // ( 74 + 022, // HB HLT 'B' + 025, // HE HLT 'E' + 020000000 // X2W HLT 0,X2 +}; + +int chr1; + + + +// evaluate a connector partII 660 +char * scc(char *s, int *m) { + //int flg; + int cnct; + + if (!(CTT(*s) & CC)) { + term = *s; // not a connector + eerr++; // set E flag - skip char + *m = mode; + return ++s; // skip char + } + if (*s == '*') { // scc1 conecter is AP if * + chr1 = *s; // save it + s++; + if (*s == '+') { + cnct = 05000; // *+ decimal scale connector + // X *+ Y -> (X).(10^Y) // + } + else if (*s == '/') { // */ binary scale connector + cnct = 05100; // X */ Y -> (X).(2^Y) + // scc4 position at next char + } + else { + cnct = PCON; // PCON = 04522 + if (*s == '*') { + cnct = cnct << 6; // ** == 2200 code for pair + } + } + } + else { + cnct = CTT(*s); // scc7 - save conecter + if (!(cnct & 07000)) { // if ), ,, or ' ' + term = *s; // save terminater + } + else { + chr1 = *s; // scc2 not a terminator - save char + if (s[1] == chr1) { // if paired + cnct = cnct << 6; // use alternate connector + s++; + } + } + } + *m = mode | (cnct & 07700); // scc3 extract connecter + return ++s; +} + + +// evaluates an item part II - 431 +char *sci(char *s, tbl *item) { + int i; + int n; + char itm[12]; + tbl *t; + + while (1) { + if (!(CTT(*s) & IC)) { // & 04000000 - OTM or DTM or STM symbol worthy + eerr++; + s++; + return s; + } + switch(CTT(*s) & 07777) { + case SCO: // digits and alpha + //chr2 = *s; // save lead char + if (!(CTT(*s) & SC)) { // if 1st char not item character + strncpy(item->lbl," ",6); // return error + return s; + } + n = (int)strlen(s); + for (i = 0; i < n; i++) { + if (!(CTT(*s) & SC)) // if not item character + break; + itm[i] = *s; + s++; + } + itm[i] = '\0'; + n = 0; + for (i = 0; i < strlen(itm);i++) { + if (!isdigit(itm[i])) + break; + if ((itm[i] == '8') || (itm[i] == '9')) + n++; + } + if (i == strlen(itm)) { + if ((itm[0] == '0') || octf) { + if (!n) + n = sscanf(itm,"%o",&item->word); + else + n = 0; // found decimal digits + } + else + n = sscanf(itm,"%d",&item->word); + if (!n) + eerr++; + item->mode = 0; + } + else { + t = srch(sym,itm); // scit4 search a= valu b= mode + strncpy(item->lbl,itm,6); + if (*(int *)t == (int)t) { + _verr++; // 543 undefined referenced + } + if ((t->mode & 0100)) + derr++; // refers to duplicate + item->mode = t->mode & 03; + if (t->word & 0100000) + item->mode |= RELM; + item->word = t->word; + if (item->mode & RELM) + item->word &= 037777; // clean up address + } + return (s); + case SCA: // 602 apostrophe (single quote) + valu = 0; // sca2 + s++; // skip the quote + while (*s != '\'') { // scan for closing quote + if (valu & 077000000) { // sca1 alf char + terr++; // more than four characters + } + else { + valu = (valu << 6) | ascii_to_sds930[*s]; // insert new char + } + s++; + } + s++; // sca3 skip second quote + item->word = valu; + item->mode = 0; + return s; + case SCL: // 555 * or $ + if (*s == '*') { // test for * + s++; + if (!(CTT(*s) & CC)) { + iflg++; // next character is a connector + continue; + } + } + else + s++; // scl1 skip $ + if (loc & 00100000) // scl2 if relocatable + item->mode = RELM; + else + item->mode = 0; + item->word = loc & 037777; + return s; + + case SCX: // 621 ( + /* + if ((int)scnx <= scno) { + perr++; // scx1 too many levels - set p flag + s++; + while (*s != ')') + s++; // skip sub-expression + s++; // skip ) + item->word = 0; + item->mode = 0; + return s; + } + */ + scnx++; + lop++; + litm++; + var++; // skip ( + scan(); // get sub expression + lop--; + litm--; + scnx--; + item->word = valu; + item->mode = 0; + return var; + } + } + return s; +} + +// evaluate symbolic expression part II 315: +// returns with valu and mode for address field +// and term == last terminator character +void scan() { + + int i; + int n; + int B; + + + tbl t; + *lop = 0; // 0 to base conecter + valu = 0; // 0 to value + mode = 0; // 0 to mode + chr1 = 0; // reset + + if (CTT(*var) & IC) { // & IC 04000000 connector flag? + var = sci(var,&t); // scn1: not a connecter - get next item + strncpy(refr,t.lbl,6); // save ref label + valu = t.word; + mode = t.mode; // mode indicates RELM or zero + } + while (1) { + // evaluate next connector + // returns the connector code from CTT[*var] or + // a generated code for two character connectors + // masked with 07700 + var = scc(var,&mode); // scn8 get next connecter + + scn6: + if ((mode <= *lop) || + ((mode & 07000) == *lop)) { // scn7 hierarchy mask + if ((*lop & 07000) == 0) { // scn2 last connector - test for terminator + B = mode & 077; // mask mode - gives connector code + if ((int)scnx == lsxt) { // test p level + if (term != ')') { // p level zero + while (1) { // scn12 - gnf() skip to next field + if ((term == ',') || + (term == ' ') || + (term =='\0')) + return; + var++; + term = *var; + } + } + else { + perr++; // level 0 and terminator == ) + } + } + else { // not level 0 + if (term != ')') // scn11 + perr++; + } + return; + } + else { + i = *lop; // scn4 do operation + if ((*lop & 07000) != 05000) + i &= 0700; + i &= 01700; + i = i >> 6; // op number + switch (i) { // scn4 - do operation + case CLS: // logical sum V=L++V + valu = *litm | valu; + break; + case CLD: // logical diff V=L--V + valu = *litm ^ valu; + break; + case CLP: // logical product V=L**V + valu = *litm & valu; + break; + case CAS: // arithmetic sum V=L+V + valu = *litm + valu; + break; + case CAD: // arithmetic diff V=L-V + valu = *litm - valu; + break; + case CAP: // arithmetic product V=L*V + valu = *litm * valu; + break; + case CEQ: // inclusive quotent V=L+V-1 + valu = (*litm + valu - 1) / valu; + break; + case CXQ: // exclusive quotent V=L/V + valu = *litm / valu; + break; + case CDS: // decimal shift + if ((n = valu) < 0) + n = abs(valu); + if (n > 9) + terr++; + valu = *litm * pow(10,n); + case CBS: // binary shift + n = valu; + valu = *litm * pow(2,n); + break; // goto CAP1 + } + switch (i) { + case CEQ: // inclusive quotent + case CXQ: // exclusive quotent + case CLS: // logical sum + case CLD: // logical difference{ + case CLP: // logical product + case CAP: // arithmetic product + case CDS: + case CBS: + if ((mode | *lop) & RELM) // cls1 error if either are relative + rerr++; + break; + case CAS: // arithmetic sum + if ((mode & *lop) & RELM) // cls2 error if both are relative + rerr++; + break; + case CAD: // arithmetic difference + if ((mode & (*lop ^ -1)) & RELM) + rerr++; + break; + } + // if previous mode was absolute, invert mode + if ((*lop & RELM)) + mode = mode ^ RELM; + + lop--; // scn6 + litm--; + goto scn6; // avoided another loop + } + } + else { + *(++lop) = mode; // scn3 store op + *(++litm) = valu; // store item + var = sci(var,&t); // get next item + valu = t.word; + mode = t.mode; + } + } + return; +} + +// insert literal +int scnm(char *s) { + tbl *t; + if (!pass2) + return 0; + t = srch(lt,s); // search for literal + if (*(int *)t == (int)t) { + _move(t,s,ladd,mode); // not found, insert literal in table + mode = ladd & 0100000 ? RELM : 0; + valu =ladd; + ladd++; // increment literal location + } + else { + mode = t->word & 0100000 ? RELM : 0; // sck3 found it + valu = t->word & 037777; + } + return valu; +} + +// scan reference +// if just one symbol - its external ref +int scnr(int conn) { + tbl *t; + //char *s; + //int tmp; + + scan(); // get expression + if (_verr <= 0) // undefined flag + return valu; // all symbol defined - no ref or literal + if (chr1 != 0) // test for no connectors + return valu; // undefined item + if (pass2) { + _verr = 0; // reset undefined flag + xerr++; // set external flag + t = srch(rt,refr); // search for reference + if (*(int *)t == (int)t) { + _move(t,refr,loc,0); // scr4 insert reference + valu = 0; // no previous ref + mode = 0; + } + else { + valu = t->word; // scr4 found it + t->word = loc; // link to next in chain + t->mode = (loc & 0100000) ? 0202 : 0200; + mode = t->mode; + } + return valu; + } + else + return 0; +} + +// scan address field +int scnl() { + //tbl v; + int i = 0; + //char *s; + + if (*var != '=') // test for = + i = scnr(i); // not literal - get expression + else { + var++; // skip = + scan(); + i = scnm((char *)&valu); + } + return i; +} diff --git a/fortransa/.DS_Store b/fortransa/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..7882a5da0c3cc855688c7470f77803d61e52928d GIT binary patch literal 8196 zcmeHMTWl0n82bmfe;esG;{uQ z{@Xd{Ki`?N{}ceQ!`D*)H2@&d!>L+D)l~|Y^Jhwlg`C+$k?aBP1q+;_m+SV~6zzx+ zMIeem6oDuLQ3Rq0+zb(*JDV42ntNYJqdJN}6oLO`1o-M14Kr3AzII5#J;J9`fW;%O!1_G`Nqe&1AFBf|<+?XXueV zA3gZeKo%7=9}{x95mwAuPL4Pq=ZcoeyyoT$7^|q9F>{tA)88EFvFxxjlJzvtXC0cm zllOWwZ#WmWdmYD`Y-_n~rZF<8F6?w{Pcv=94UA3QAeCMHrmZ_89gc77Ebx;R0zQsB zsMd^)wY9BjOt!S7#v7AkYgVNildIRXj*rXIqWaX@uA#!{fw6<*hmO%?sbKg`0bK(y@-1W#tWl)`8qBU(PdZuHu zZHCK;4yx6R;?R|M>>k(P^8UPI`30K|s`K)imG>>pGukaHYaTF&SIzRSV_7{8Gr61X z1D>(p;U|Y+KuLzFM6( zf5AdU*+C(-J#&v~xP2q0?hS9(Sl+O8)85-(GMSmPj9yzS81t}EmIJGr+v4#7KW9Gf zo8G8eCrJUfc5z(UrPD~89G!d9)l-ttU%EIR-^nGNu0gdP8r;arMTRjU&3FNvtC8$;%O3zhf)?OTDC!b0A<_3`*_K5Vzf zye&n;rYU_Cj@?O9+RkO|y3Qvg)s;8AF1<`N>(Z-5Rfq}3%4pvt`sF&t@9{F)St&fsu~)B->BI&O>YEtTU(XdlzU9_M$@=9h zT2?>MJ_&>?cK@=CycCcD3I)sp_?6)m;Qlv%F+7Ne@Nfv*qxdX7hsW?ZzJRac>-Yx2_XM8AQ+S$S{5GD&Pw_l{ zk3U}l-0m`D1;t-30=M8~GT|*G9XY!B+!JTcwqGjM|3g|Fp6(T2%DT4Y*n7!S`S6IL zueA=3WDU>%ADsUC|FsSi*+&tGB5)H&04p=uOb1PHy4MTOwUhJ=(ZdVZn-DZGp(;qn xi3aI7(aC=pQaeei+$J5;2|ITI]II]RpXI^XCIXbI[EJXp IXv@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%@@X@ I]RII@^I]RJXp@IX@@I^%IX@FIX@F@4=L@ J @LL@ J @LIX@F@/Epp&J@OI8@JIWzXnI @E@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*/@@p/*I@@TI@@I@@@7IJ @JI/>X=Jh@8@g@E@JhsW8@gIp@h#>Fp@]#X;IhsXhJhsW@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@p @@E X@g@@h @8sWp@#>Fp@s>IhsXhpXu/zJ @EF@uJ @E u@ h@JJ @EpXm/7 m@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Xg@@E J@JI8@O@ #pph@T E)IXIX@@ /* E;I8@IXpXE,/zpIJp@FJ@@ @@J@ EyIX@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ %@@E8@EuJ@@ II]I@Tp /*IXpXF/z@  FQI/X XIT/7@@ ]II],@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ,F@@F@ ]EX@^@Fy FyIWzX X/* X2& XI@@IXIJ @LI @I^%I^* @JX@Jp@IXL @IX XI @II^O@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@vy@@Fh @I@@pXF#/z X/X XJp@IIJ@IIXRIX@FF@4=p@]Ch=@  pp)/*I@@ IQp@ Ch@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@h @@@I^%WsF@E#Eh2hFp@k @ @R@LIX^ @ C@JIX@FF@u@ /zX/FIWpX@Q/8@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@|h@@XXs/mXy/]Xy@T =I psXX@@//%XF/bX /#X XQ/>X/F/*XQ/4@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@L@@pX/Fp@/F/8X/F2LX1X*@s@T 1I @/p@TChsX@#p@TCh@C2LX1p@Ch@Cp@Ch@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Wk@@F@sX@@@/F@T I /hX @/FX*@TX @/F@@@@@@@@@@@@@@@ kppkIWz a F@X#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ y@@ @nL@FI @F/* )IL/zI]II;IX@  npp,@  2ppnJp@L@Id ;pp/@T 8Jp@@Id@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@; @@8pp1Jp@@Id I pp2@T IJp@@Id/&XIpp1IJp@O@I&pp4IJp@@I IXppv/sXIpp1@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*4@@IIJp@Q@I&pp7IJp@Rp@Id Iappz@T I^Jp@J@Idpp1Jp@ @Id J pp;Jp@IIXIX@@p I)@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@C@@IhIIkJp@@ I8@ /* I1IIk/z@I>hWh I;@@@@X @@F@u 2g Jp@[@I>II]I@ p J@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ b|@@J@hW# I,/X I=L8@L p@ I@JJL8@L p@ L8@ X@L@/F J#pp%/*XJpp=ppL8@T@Jp1/ J[@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@u@@@JXp1CL8@@J]p1L8@EI/z4@@F@uIX|@C7 J,p1FIXp1III]I@CIX@@  J2p1p1I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@h@@JpJp@W@  J>p1IXL @JXhL8@ I |XhI @JpXJ4@  L1p1JILaI8@ /*I Q/zpX /7@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@T@@  J@ J@ LX@ X JL8@ p@X @ #I u ILR @@h@@@ I uXhI @ ILR @ pX WI@@@ h@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@O@@ I @ ILR @ pX QI8@I@@I@@T 8@  /I @J@ #>h@@J @L @J hF@uFu@ h@hIXL @ Xh@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%@@ 8L8@I | nv@nzI8@ d@@XLL8@ ]7X =|@@ p@ XLJ@ @nu 2&L8@L]7> p@ XLJJ@  p@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]@@L @nyI@@IXI/*p@TChsX LI IhsXh/zIp2apsX /EEhsX@/Ep@TCh@#@Lhp@Wp@@ @F@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@E=@@Lhp@#Ehs|X4|@Ldp4RE s|FX4FX4*@/F L|p1 EX@aJp@CEX@a@ I@@@hI@@bIXR@  Fp1OJX@h @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@4C@@ @ I@sX @ @ JX2@  p1h Jp@C@  p1RIJp@@  p1TIJp@ @  mp1I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@>@@ XJp@@ /7@ #/7p@@ a/7p@Ch@ F@^@@ hIO %@p@LCh@ p@ECh@F@LX@RX s s@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ I7@@ pI@1I k /yX XI8@JI8@ IO]I 8J@RJ@J ^L@@F@u@/7@ |J@JJ@ IOIO@C  @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@/yF@p2F/7IO@p@FCh@EJp@CIO@%p@LCh@ p@ECh@FCh@JX*8/7X/  /F@@aIO@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Fd@@ @p@ECh@JX*8/7 aF@L@I@2hI@,X*8@T pI@1/W@@@@kX*8/WX7/ F@u@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@7@@8psXCh@OX@@/FI^1Wp@@Ch@O @@uIIdL4@22 p@p2 C,@2@/FI@@OEX@ @/ELX@L /EWp@@E4=@/E@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@8L@@OF@4=L@LL@LJ @ J @ @O J@J@RJ@OJ@J@@)pJ@Rp@FCh@E@/XI@@ Ih8X*82 @Obp@Ch@]Ch8@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@s@@OhI@2mp@E@O;X*E@/7@O1p@EX8F@]p8X@@Ovh/7@Oyp@ Eh@ThyCp@Ch@ECh@JChsX@@L @R @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @u@@@ @TJ @JJ @ I@@@@p@E@/7@Okp@ECh@FF@ p@ Ch@LEX@]@ny@nusR@*[p@dCh@Ep/7Ch@uE*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @%@@X@/ELX@  /FJ@ X @/7@/F@/W@@@@@/|F@u@[LX@L 21XL@L 2F@4=F@4= @ s h@@Ih8@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @X@@pIT=@hL@ y2 @@@@F@u@2LX@ Q@1]Ih8IT=LX@X|J@@J@@Ck @ @RL8@ X@L8@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @u%@@Q X@CI)pI@@p47E s7Fp@ @Eh@X @Eh@ @Ch@p@Ch@LX@J Q41# 8@J Q/ITWp@@FX@p@E @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ T@@Q h@@L8@ p@  Q*L @ Qa 2&CL8@XIRvIL8@ p@XQk@QI@@Tp@E @ @IJ1hLX@  RI8@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@Q8I@@ 8@  RI @J@ J @WX@@@Qyh@@@QyI@@L8@IRvJ@ @QuI@sLI@@IJJ@LJX2WLh@E RIgJXsX@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ @@Rp2)FX4a@RLJX2WI@@L8@IsJX2WI@@L8@@IsJX2WL8@ X@JX@JX@I)pLX@F Rm1n 8@F Rm@/W@/W@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @;R@@RhsIT=JXsWJXsX@RdI)p@@@Xu2@/7p@E@@@R1@R 8@ J@ITWs|k;#>k>X@@W7=@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @Ld@@@WX@@Wp@@/= J @LJ @LJ @L@RvJ@@/CJ@L / 8@LWs>XsW@WsXsX@@/W@/W14IRITy@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @d@@X@JI@sXI@JCIR@@@ITa /IIdLp2[Wh@@|@2@/EI@@ITa nvITWp@@F@FX@h@@I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@mE@@pWsChsX@n8,@@ /EIgX=W@@Wp4 s1p@@ @ JXsX]|@@@s  E@ /F@@@Ip2a 2& TX@@Ws>@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Wa@@T @> @@ @W[>@/EIW; TW E@XT[Ip2XTXI @CI@@@/FI^yIp2aI@@T@T^@@@Ip2a 2g /FX@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g8@@T @/FpsWE@2[@T%@nu@/W@/WL @XTmL @C T214@Tn1vITyp@ChsX@n4@@@F8@Ih@@I@2)I)JITy@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@LC@@T8@ny@/WsIT=@/Fp2/X@R@/7@/FI@@J @LIIF@4=@/FITI^ @JITI]I@[EI8@JhWhXIT@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ )@@J @JpX @/FI8@JI8@ InX/]I7I*X^In g J @JJ @JI*X InX >@ p@JJ@J@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@nd@@hJ@ @/F/] nvI7@nz/m nvI7Ip2IXu 8@nz 8a@nzI /y  /y I Lpz@8J @ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@I /y /y I Lpz@J @ =@ p@ /> /FI /y W/y I Lpz@Lp|@Lp|@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@>@@X@8IWz ^yIp2X/F E@X=@n2&Xg/* FIT/z@/FIWzX1/* ^yL@FIXII @FL @Xn@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@h@@p@vIp2X/F E@X=/*IL/z u@ h@JJ@J 8;@/F/*XW@@,I8@J@@@ 2h @@JI8@ ITJ @ p@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@/@@WXWE/zL@ IWvLX@  WL@J , 8=L@ IWv 8>@WLLX@JX,J@ J@J XW]Ip2IXWaJ @I^[@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@4g@@W J @ 87b@/FIWz ^yIp2X/F@n2& XIWz X E@ X/*X X@@@@@IRI 87b@/FIp2a /F@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Ob@@W8L@y@/FIXL @IXXL @XnzL @@XnzL @EXXL @FXXL @ nvIXI@nzpsWF sT 2zp@Wp/ sT@X@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@24@@X4up2aC,u4u@/F2& 1IX%ChsWIX%ChsXX/FIX%@X[p@TCh@Cp2 IX&h@Cp@C@/Fp2hCh@)p@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@a@@@XhCh@gCh@h@) X8@gRX2Q 27FX@hp@Ch@F@gp@gE@2h@X*p@h@nv@gWpsCp@h@nzIXp@/FI @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ /E@@@IhsIX*psXX@@*@^1Is@C8@)@T I[Jh@k8@)/hX/b@7JhsWIhs X*@/h@T@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@7@@X 1I[/bJh@) X@m8@)JhsW g8@gIJh@) sW8@)Jh@g8sW8@/Fy@p8sWEX@*@8F@*Jh22X1Fy@/@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@4R@@p8sWW;=@*Jh24X1Fy@/8sWW8@F@@*@sX@@Jp CpsXp@ @WXsXs@J@*/m  I s@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@,u@@ XsW8sW@/F/]@ @T 1II[JhsWIhs X*@/Fs@C8@k8@m8@/8sW@/F@T /FI@[p@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;)@@ F sT 2zCh@pF@,p@Ch@JhsW2X@/FF8@8sWJh2X1 @/8sWF@n@/F@@@@8@#psXp@F2@F @#Fp@W@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Xk@@88@%p@dp@F2@F sWFp@W @%8@%psWF @# @%E1I^ I]nX[I^FI^ I[hI[TIX/FI^X[QJp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@[@@[@/FJp@@/FXdWp@@E@@T@/E44=E,4=Eh2 @ @/EI]n [ Xd@/FI^FX[hIp2a [hI^ I[hJp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@u/@@[h >@ [vI[L@  JI]WsC>@[sX,@[4X4F@u@[k =@  I[L@  JI]X|]C@[yI8@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@ I8@L@  FIp2IXL8@ X@L@ @[]CJ@ @/F ; ^ @@I8@J @@JI;I^FIW [ @/F @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@)m@@X  2&IXF@/FIX@/F | , @@I]nX%I[ I]h >I[]C XC]C@/F z v @@I]R@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ X2@@p I]R@X@Jp@X@/FI^ @@I[]C@I8@J@J ]@I]O@|J@JJ@@XJ@ ]@@]CJ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@J@@]@/FJ@ /FI[J@I],@]II^ I]R@I]n ][p@C@]]I^F ]] @/EI[@]hI[@]hI]n@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@7m@@] X/FI]h I[ = >]C=@/FI^@@@X@/FX@I@@   ]v @@I@@T]C>@]pIp2I nv@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@h@@]8I^FXnz @ nzIRp@8@WFy@Wp 8sWIJ@nzp2a@^4u 2aE4=@nv@nz4u 2a @L@/FI@s[@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@^F@Xp@XF@Xh@@h@@@XII^[4u44=C,u@/FI@sF@]p@]F@]X@@Eh@TX@@/FCh@@/FI^/@@@IX@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@&4@@^hWp@@@/FI^/@@@IX@FWp@@@/FI@sL@^4L @X/FI@sXL@ J @Wp@@@/FI@@IXIIp2aX@L@I @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@//@@@L@@I @@ @/EL @X/FL@psX @@/FJhsWp@L8sWL @CX/FL@CI @C@/FIdLJ,@28sW@/F@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@4Q@@Xps1@]p@p4Fhs1h4h4h41p@ @WEh@TE@2Q@EL8p@/L817@/L81z@/L82@/L81|p@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=@@p@sL81p@E @RJ @R@ XXmp@C,up=Ch@]p@Ch@CI8@O@/FXmX F@nv@@p2bFXu@nz@@@@Ch@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@v&@@ J8@@J8@J8@J8@Qp@L @p@E @p@ @p F @ @p@#F FE FuWp@@E @TCh@dWsCh FWs>Ch@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 8C@@ Ws=Ch@EWs|Ch@Lp2dFXu h@Q h@ h@ h@@E Fp2&Ch@#2#J|@#F@# nX F@ 4@/Fp@dC,up2Ch@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;%@@ 82# ,@#F@@# yp2OFXu@/FX,;Wp4 s1 @Wp4 s1 @Wp41 s1 @@npX,;4uhs1h41F@u4u@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@4O@@ahs1h4F@u4uhs1h4F@u@npXmC8@1@a^XmC8@1I^FIp2a4uF sFX@1FX@1I@1@/FXmp@Ehs@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@m>@@ah @ @J@/FXmp@FTu @Ip2Xa= 7b b @@IX2Ib ay@@@aWsp2Jk@bIb bWs@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@vb@@b@p@Tk4uF sTF 2vp@E,uE @TF sRF@u4upsR@bQXm4uF sRp@Fp@Jp@ @ @/E I@Xb%EX@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@2@@bX@nv@@@IRL @ nv  E@ 2&F@u b%p@ @ E> 2&@nzX,;Wp@@ @ @n,XmWp4 41Ch@1EX@1@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@bp@nvWps 2zE @TCh@2ppQCh#LCh#XWp41E @2Eh@TCh@sppCh# Eh@TCh# @WE @TppRCh#C8@4Wps2L@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@@#@1psXhsWp@LW8@@@@@#Lp@L@@@# @#[@1h@shs psXW8@@W@@@#Xp@ @WX@T@nvp2^@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@8/@@# Ch@u@4Wps 2^Eh@sEh@u s1 @@nzX,;Wps 2^h41 s1Eh@T @@n,X,;psW]@@psX]@@@n,Xm@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@T@@#84uW@@@nz@nvXmp@F8@Lh27u@nv@nzXm@@@ IdLWp@@FX@24@2C,u@/F4uF sT 2zp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ b2@@d4u @Whs1Ch@2@/EXd>@nzX,;Wp41 4 @@n,X,;Wp@@ @@n,X,;Wp@@FTuh@@@n,X,;4uF@u@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@dh]@@@n,Xd>W441@41 @@nzXd>4W44 @@nzXd>E @T@dyXd>Eh@T4p@h@8sW@nz@@@@Xm@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;n@@%@Wp4Eh@TWX41Ed>Wp4h4h41@nvX,;Wp4 s1]@@Wp4 s1]@@Wp41h4h4@n,XmWp4h4h41WXs1@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%X@/FW44hs1h4@4W44hs1@4Wh4h4p41@/Fp@X%/p@d4uC,u@/Fp@@%mp2aX%/@/F@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Wb@@%pXmCh@1Ch@d[ @@Ch@%Ch@#puE @#p@Wp@@ @O 2ap@dCh@dF@@#@%vpuE @%Chu4u @14u@C,uF@u@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Ta@@&E%/X,;p@F8@L 2^Ehu@E 4@Eh@T @p@ 2g @O@n,XmC8@&4uF@u @WCh@gEh4@p@Wp@@Ch@#@&&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ k@@& F@gp@gEh4@p@Wp@@ L@&F@@#@& @/FXmp@ @@/F4uF@uXg@h@%TXmC8@1L@1 nu|@@ @1@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@^h@@&8@nzppTXg@gppTXgp@d4uC,u4u @WEh4@Ch@2p@#F@2@/F@@@@XmCh@&C8@hp@Ch@#Ch@dJT@h@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@)]@@g gJd@&F@# 2ap@d@gEgXm4uQ8@@h@@@/EXm8@1EX@1s@CEX@1 X@1] @@@@nzJh@1@nvX,;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#s@@ghWp@@Wh@@npX,;h@@p@@npX,;p@Lh@p@L8@@@npX,;p@L @p@Lp@@@npX*LW@@@nz@nvXm@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@  @@h@X@@X/F@1X*L@@@@nvp@Ch@@nzXmWh@@F8@FX)T@/FXmXh]Xh&@/FFp@RX)T@hX*LXh]Xh&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@s&@@hX@/FE@@@ XX*@hW@@hOC8@yp2gCh@74@yCh@8Xh&Eh]@h#@@hp@8h27@/hFh&2@EF8@FCp@8p@F@@7@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@J@@hp@hvF@y4@yCh@8p2gCh@7Wp/ Eh&I@2)I@@Ws> s F 2nFh21s>p@4uC,uX@8@J^@/ C@hz@/W@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@,@@)@/W@/C@)Qp@WkF8@Csp@^@/ @@@@) @/@@hp@Fp@FCp@zX,[@a@zF@Rp2E@@z@),F@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@/y@@) p@E@2@)*p@Ch@p2nCh@;@zF@@;@)gp@Ch@R@Q @E)T@@@@E@@@J@ J@  /Fp@h@@v@)y@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@vJ@@)8Xu@4uhvEh7@@*Xv@*@*FXv@*EX7@*Eh@TCh7F@uF@@)2@)2@@@@Xmp@E@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@v@@*E*LC8@#X*@#E*L@@@@p@ECh@ X*8Chy@*X*8E@/W@*bp@CE@@T@*[p/WE@/7@EX8@*hh@ECp8@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@7@@*hEX@@p@ECh@dF@LX*82 @*m2hC8@%E@/W@RX*8F@@%@*2@@@@@p@EE@@@kXkT@&p@X@E@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@W@@k@@*|F@Ep2gE @E 2gCh@&p@EFp@2@EFh,p@4,@&RX2 2zp@Wp/ Ch@uE*8@@@@p@JEh,E uT@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@2a@@kXX@EkTFkTF@k[X,[p@Chk>pkCh,@@FC>h@@@k/p,@@@u @,@u p@Ch@EkTp>@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ Cd@@kp 2zChWh/ F@,@@@@EX,@h/7Cp>puEX,@X,@X,E@k#@@@@ @@@@@8@@C @@L,@@Lk@@@@F@p@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@1[@@, Ch;C8z|@@Wp41@s2@,hXm[W8@@p;41,41zE@@Chzp@@,2Chzp2|u2@/J|@@@,8Xm@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@; @@,8C8@@F@@@@/J@@@@C8@>F@@Ch@F@@|@@E,;@@hChzpuE@4C@mIXm[8@Qp@@ @WFuC,upz@@@Chz@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%7@@, 2gCh@|p@Fp@2@EFh,p@Cp@=4,@|Q 2;Ch@|p>RX2Q 27p@|@=h8@E,E@@)X@@,@R@E,[@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Q@@mp@ @WXs1@mu|@@p@ @Wp@pzEm@@mC8@4ps2E 41X@T@n@4Fm[m[p@ @WCh@2p@T@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ |@@mh@nCCh@sp@Wp41Eh@TppWChm>Wp41E @TppXChmWps1 41E @TCh@up2%Xs1X4X4X41@u@n@W2*=@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*[@@n@m>p@sEh@TX@2@m)@4Em[p2RCh@2@2Wps2Ch@s41Ch@u 41p@X4X4hs1hs1 41E @Tp@@n@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@C@@nX4@uC,@sF@@uF@@snXF@@2p@2E@@@nIp41E s2X2%@maXEX@@n*IO@/7p@Rm@C8@@uE@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@/F@uCh@@pzuE@@@@RE@E@EC@E@EE@EF@E@E@EI@EJ@@ @@L@@ @@@@O@@@@QFR@F@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@np@C8@@@>E@@F@uF@u8@@n;F@uF@u82ChzWp@@uk 2][@/F@uF@uF@uF@uChz4u@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@J[@@/ @FT@F@F@FW@FX@F&@@[@@m@@]@@^@@@@ @@a@&b@&#@&d@&%@&&Fg@Fh@F)F*@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@u@@/8k@@,@@m@n@@/@@J@@1@2@Fs@F4@Fu@Fv@F7@F8@Fy@Fz@W@;@]@@=@@>@@@p@Eh@TJh@>@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@[@@pX@W8@@W@@@@@@@@@O@@@@@@Wp@@h@@[*2sJgQg)*[&dg#)J)QT8**[24R)&4s%[4%s&%[[d%2&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@>@@ph%[&s&[&)dQs[Q##[&%s%4[s8g[Qgs[sQg[)QT[%g4ssQg[v)s[4sg4ssQg[g4%X[g)%s[#&Qs%W[&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=)@@1@u)#&v[2%2[vsX[#WXs[Q22W%[&dd&%[s&[h4uQ#%[)s4)%[gQ42[2s&g[%T#[)v%T[RQb2gQ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@J)@@1X[J**T&J%2sJ))&)2**[**#QR#%WJ))&)2JJJ**[**&dd&%JQ##&Qs&%**[**g)&W)QdJQ##&Qs&%**[**24Rg@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@4@@1p)&W)Qd2J)h4)T**[))&)[T4dd8[Q##&Qs&%[%4dR)[TJT#Q)Qs&%[28%sQ7[24R2)gs2[**sXJ%T[%T[@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Q@@2@@@@ @@@@@@@@@@@@@@@@@O@@@;@@@7@@@@@@TLp@@|@@@@@@@p@@>@@@T@@@@@@@kkkk*@@@p@@|@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@p^@@2 @@@@@@/2;>@@@@@@C@@@@@@E@@@F@@@@@@@@@I@@@J@@@|@@C4I@&&&pT@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@k&@@28@@@@@@@@@@@@@@@@F sF sQF sTJJJJ@JJJ@@JJ@@@J@C;@@C@@@@@X @@@@O@@@@@>@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ L@@s@ @@@@ @@@@@@@@@@ @@ @JJJ[@@@@@@@@[JJJp@@ @@@|@8@ CCd@ Eh@EFh@@@Ch@CI8@CJ@@ @@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@a @@shL@ @@C@@CO@@Q@R@@T@@@; @|@|@|@|@|@|@|@|@|@|@|@|@|@|@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@L@@4@@|@|@|@>@>@>@>@@; @|@|@|@|@|@|@|@|@|@|@|@|@|@|@|@|@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@LE@@4X@|@>@>@>@@; @|@|@|@|@|@|@|@|@|@|@|@|@|@|@|@|@|@>@>@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ R@@4p@>@@; @|@|@|@|@|@|@|@|@|@|@|@|@|@|@|@|@|@>@>@>L8@ X@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@O @@u@mIX@FI@sX C @O@k@@@@@@@@@@pk>Ch@EkT@@@@@@vWp7Fp@X@@u^h7@uap)nh7@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@u uXp7h7IF8@Lp7FCh7Ep@Lp7Ch7p7 h7 F8@Lp7JCh7Cp@Lp7LCh7 &@u1pv&s@CCh@Q@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @J[@@u8@u7@^&v[Q7Fu;@Q @F@QEX@Q@v@u7v]s@CCh@h7FvEFv^pv^Ch7Eu@@ vp)nh7v@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @R[@@vs@CCh@Ev @@@@p)/Chv^Ch7s@CEv@@@b4X8@@@@p@@@C@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @E>@@vh@C@J@@@y@E@I@@@@@@@@@@@W8@@@@@@y@E@@I@@@Ch@E@C@@C@Fp@F@@@XEh@E@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @  @@7@@@X@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@X[/% RpsXCh7;E @T7z@RCh7psW@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @z7@@7XE@@@RCh@h@TCp@Cp@TCh7=CpsXp2gCh7|p/=F@7;@7sh7>Fz@FCp7>F@7|@7bF@7=@7CpsWp@Ch@Cp7@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @Ob@@7pX2g@@J2Lp@ 78Cp7;@7bCp@@7%8@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @]=k@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @]]*@@8@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@CC@@@F@@C@Ch@@E @ Fp@RF8@C@C @@@@@@@@@@@@Xp@C@C@@FR@@@@@C@@@C@@C@^F@@FFb@@@EC@@C@EC@F@@@C@@@@@QF@C@y@@Fp@8@C@@@&CT@C|@CF@@@F@CEX@@@@ C@8@@QF@@@ Ch@CFp@L8@Ch@p@@p@@R@@p@X@@@FX@7@@@@R@@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]|k@@@@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@n@@C@X;@CCXTXCXXph@@y@CJCp@p@vCh@up@yp2Ch@;8)Ch@|pvE E @yCh@zp;Ch@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@z%@@CX@@@@s@CCh@X%C8@RXQXQ^|@CpXQ^h/@XTaXQ^XRp@TCh@QXQXQ^h|@@Q@CF@Q@C)@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@&@@Cphu@vXTaF2@O gE @TE Ch@Q@@XRX =X hXOp@Q@Cv@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ )k@@XQXQ^hu@v@@CsCh@Cp@C,@Rp@C@OXQXQ^hu@7@L@C]@@@@XQ^Ch@XQ^Ch@OX%ER@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@,@@[>@ERp@4Ch@uECX@@@@XJXQ^F@@u|@ OXJCh@)XJEh@yX@,EhCh@yChRXpChQ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@2@@1XJCh@Ch@*XJCh@OCh@kp@yXOXJh@@]XTaXJhs W@E@RXnQp)X@=Ch@X#p@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@s @@EIXQ%@W@E @=XJXE @=X#@= @WXJEpFX@=Ch@XXJCh@XIp@hn@@>XR@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@8W@@EaX X@E%@=EX@E,Fph]8pX2p@@E[pQh2XJh@@]@E7E/@EyX#@E1@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@bv@@Ey XJh@)Ezs@Cp@aE @bE @TCh@F8@Eh@EhCXQX@@pQCh2@FQXJC,QFQXJC,QFQ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;I@@FQF pQChTp@yCh@,Eh@bCh@mp@yEh@gp@)Ch@)p@yEh@dCh@np@yEh@%Ch@/p@yEh@&Ch@pp@yE @ Ch@1E @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@>^@@F)Ch@2pX@hp@hChp@yEh@#Ch@sX@)X@F|p2pRCh@C^Wp@1C,@CFypRChQhs4R@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@h@@@XQ%@W@F@ FR4RC,QFQFFRp/XR@)@F>@^@TCh@I@ @@C,QFQ@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@4@@ @WE mEh*@RXEh@I @WCh@Cs@CCh@I4R /p@C@p@gEh@yCh@yXLdpTX2@|42@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ p @@1F2@,X@7hEp@@,2F2X2F@,@mp7Ch@QE@Q@ [h@QF2@CCp@ChEC4@QF2@Ch@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 8@@Iph]@QX2F@Qp@QX8@>E@@@@Fp@h1Cp@hpX#@@@Eh@/ER@@@@h2Cp@h1X#E @F@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@4@@aEh@pE[@@@@Cp@Ch@Cs@CCh@Fp@X@@2p@C@@uF@F@F@F@hp@CE @FE#h@@@sF@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@7@@y4@@@>Eh@,@Ehu @WF#F#E#@@@@Ch@CEh@CEh@CCh@CFp@Eh@CFp@Eh@CEhFp@Eh/Ch@C4@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@u@@IQ@@IEh@, @WEICEhu@IT@@@@Fp@Eh@,EIX@@@@XEIp@X @WE kX@>@I7Ch@E @>E @TCh@Ep@=@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@p&@@I) @WE @ChCCh@XQX@s@CC,@F@@EF@EX@E@Ipp@Ch@>XQ%p@yC,@=EI@@@@X@>@J@pWEI;XQ%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@pQ@@J4@=@WEI;@I>@@@@Ch@XyXTaX8@JLXTa4@n@JQp@C,@p@EJE@@@@C8@Ep@uX@4@Jap@v@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*,@@JX@u@J4@uF@u@EEJXT@Jp@vE @4E Ch@Cs@CCh@E,@u@@JmEX@@J/@J1EX@@J2E@u@J2@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@J1Eh@TF@uF@@C@@@EX@C@J&h@F@@v@v@sp@4Eh@TCh@u4@4 ,@@XTaF@@J@@@@dXp@ @W@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@|/@@ IX8[p@yX,X^E F@yp@yCh@7s@CCh@,XLv@IRXX XXCRXm@ Wh@p[@@XTa@@O@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 7R@@ aXTap@ hCh@hpX@hp@hCh@ Wp@X hp@h@OX2@ WX hXO@ WX Ch@X hX@ yChQ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@1@@ yp@uEh@JE Ch@CCh@p2h@@@L@LFF@@C,@CpyFp@L@p@CE @uE @TCh@Ep@Ch@FX Ch@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@@LQ]p@FWz@LLRXEh@Xs@Cp@FF2@Ch@FF@@E@@@EX@E@LOp@Ch@u@ T@@@@XQ,XELdpu@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@L)E X@yX@ELdX X hCh@ypkX@L4C,@XLdE@@@@XQ^Ch@Ch4@n@ Th@Fz@CCp@IF8@h@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@1@@ Fz@ECp@Jp@JE @TCh@ XQ%p@uCh@p@C|@F@ JCh@F2@L8@8,,@sELv@XTaXQ@L7@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;T@@ X Ch@X Ch@OX Ch@E X@@@@F@@ @@@EX@ @ &@ TXQ^E @@@@Ch@Cpz@C zFp@ ,p@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@1@@ 1 @WCh@C@Cp@CE hXTaXTaXTa@ zp@7Eh@C@ 1@@@@p@yEh@TCh@7XQ^E =@@@@F2@ Ch@C@CF8@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%4@@IEC@@@@s@CCh@hCh@ICh@X%@@@C8@Cp@CE WChCp2Ch@=p@yCh@@C|@=C|@CC8@>C8@EJ@@@@F@y@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@O@@aX&E@@@@X&E#@@@@XE&p@LpCXQ@pC4QFQE&X@E&@@@@Ch@Cp@OC8@LX%@[>@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@s@@y@OEWs>p2k>XF@OCp@L @WppXW@LE2C8@CX@OCWs> @WCh@ @LWp@@@W@OWp@ h@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ]T@@OQ@Cp@L @Wppk>@OCCh@@@OL@@@@ @WCh@X%@Ob[>@O&EOp@p@XWEOWs>Ch@Lp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=@@O) >p@k>XFh&pd@@@Eh@p]@@O@Es@Ch@F8@FCh@CF8@Cp@CF8@CCh@CF8@Cp@CF8@CCh@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@d@@p@ @WpEC,@CEO@@@@XEFWs> @WCh@C@LWp@@Ch@ >p@Ch@@@p@W@@ EF@@@@k>@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@y4@@p@h@@p@Oks@Ck=pCE ChCXQX@EW@@@@hhp%Ch@CWp@@@n8@Ch@p@CFz@F@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@2@@1h@4@)gh@p^@@@QJp@O@]@QJXX dX]Wp4XaX^ppXRW@;X^W;=@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@v8@@QI@Qh@Wp@@@@QE%@@@QWWs@@O@QWF%E%W;=@QL@@@@XTp@4Ch@uEQ@@@@p@vX@u@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @&@@QaXT4@uF@uEQ^@@@@ @W8)Eh@TCh@@EQ%@@@@XQ@QpEQ,p1XRWEQ,p@X,p@yE @TX,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @|@@QyXTQp@yE @X8p@h@@RIp@,@@R@RQ[XTQp[Xa@RLpuE @hX,p@,@@R@RQX,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @d*@@RQX^p1W;=XRWEQ,@RQ@@@@Ch@Rp@W@@@R]ERWWs>h=XThn@@R@R1@pkk>dXWp@@Xa@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @am@@R)WsXaFRW[>ERWWs>X,ERWW;=@R@@@@C8@C@@RuaX@@aXQ/R|X^X@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ hJ@@ERsp@R8@QLp@p@R|@@@@@@X@Q@aXEX^Ep@J@QpE@X@pE@p@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ d@@[[X^E@@@@@@@@Q @E^@@@@XgXgXgXgEa@@@@Ch@C@CFz@FEg@@@@XTQFz@FC8@C]@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @n@@1 *Ch@@Fz@C1@CE,@@@@[Eh@TC8@C]WX@T h@Cp@WX@TF F@@Th@F2@FCh@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @Fb@@TI@Fz@F@TO[=@CE8@@@@[[ETQ@@@@C8@C]@@TX@aFTTTT[@Q @@CET@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @sE@@Ta@@@@@@@XT*##WQ#J%g4s[JJ)#XT&QTJg)&W)Qd[JJJJJJJ*@C@@@@@XT*)QTJ))&)[JJ)#&QTXTJ#Q2@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ b@@TysJ)&)T[JJJJJJ*@@@@R@ETp@@@@XT*g)&W)QdJs&&JRW[JJ*pJ4ChpChQE@Eh@mEh@sXIXXICEh@2@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%X@@QEh@1XI;XRX[J @@ @@@ @@p@@Lp@@@X@@@h@@@@@p@@@ @@p@@Eh@@E @@Ch@@p@ 8 8 8 8 8@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@yL@@)@EX@E@EF@En@EQ@E@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@XTaXTaXTap@7p@@ s@ W@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Xk@@XTa@LmXTaXTaXTaXTa@ @ *@ pXTa@@@Oh@@d@@@J@@@@@@@ @@@@@@@8*JJ*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=2@@ JJJppppJJJJ@@@282JJ2F@2,g)&W)Qd%QdJJJJJJ%s)8J&)W%JJJ#Q2sJ2y1@J&dd&%JJJRQ2Jd22%WJ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 1%@@124Rg)&W)Qd2 @@@@@@@@@@@@@p@@g@@/@@@@@XWdp=Chpbh#F2@2CpChOCh@^pCh@yCh@8pv@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@FO@@WIE @yXQ%pvpChWOs@Ch@@WOzhhWRCh@ChCh@Ch p@ChpyChph@@kp4@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@,@@Wappk>E;@@@@XT*#&QTJdQ%Jg)&W)Qd[*@@@@R@CXRsp@Ch@CF@@C@XXJh@Wp@@p@@X@@@Xh@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@yO@@WyC8uC8vW;>bC8LW;C8FuEWdhCp#pIChpJCh@@W2W; @@W4@C@@@@p@W@@@EX@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@7@@XQXQ@IXdXp XapaXap@X,pX,p@yE @TX,XTQp@yE X8p@@X^X@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@TR@@X)X@@X*X@C@pEh@yXu@X4X@@C@EX @X>XT*#&QTJ)4%Jsd[JJJ**@@@@R@@^@R@F@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@R@@@@@^FC@@[>EX W;=@Xp,XRW@XX^W;=@JpuE X,@Xg@@@@pLCh@4Ch@uCh@v@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@y@@@@@F@vF@[@^FCT@vF@v@@s@@ p@vE XCh@vh@4@4@ @n@h44@4@n@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@= F@@1@sET@@@XTp@p@Ch XX s@CCh EX@@C@XT*#&QTJ24Rg)&W)Qd2[J*@@@@R@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]ad@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [@@E@@@@@h@@@@@@@X@ F@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@C@@@@@@E@@@@O>@O=@O|@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@uvR@@]@O;@O8@O7@Ov@OsIO @8 @@@2@@@z888@@@@@@@@@@@@88@@@C|@E@@7|@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@J=@@h@@O@@@p@@@p@@8@@|@@T@@@4@@@@@@O8@@@@@8@@E@@XE@@p@@@@@@@@@8k8@@|@@kkkk@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]db@@@@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@ L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%]aC@282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]Q/@@@@@@#8d@yW4@,@yE, @#,@|X@ @Qp@p @L@|d@ gd%@@@ @Wp@TE@ @O FpJdn&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]gn@XE@@ @[ @E@@T @^ @Op@LE@ @Ogp# FW@Wh@L@y% @n%@^ @nWp@Wh@@LL@| @O#p)#hh[O@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ]u7@pWp@X@ @Wh@@h8&)h&X@@,hh8&)h&X@@d@= @OL8@@ @OE@@  %a IE@*hbk X@,,% ]k,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]JC @Op@ @O*hhv#h%7khh@ Wp@gh%E@Tg],@|L8@@ @4J,@|X%,, W@@@@@@/mR@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@% s@ @@@@@@;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=2=Q#&Wpppp@v7gppppp@z@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@&@*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@d@Q@ @@@@@@@@@@@@@@@@@@@@@@@@@@ L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@mvRQ#&Wpppp @@Q#&Wppp @@#&Wpppp @@#&Wppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]g@@@@@@#8E|@|Wp@Wh@@X@ pR#h#pFp8@Fy@#hC#8s@C#hI#pgpgX@ @gp@Fz@E,[4@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]Q^@Xp@7Lgp @#hgpIp@C#hIgpghF]h@@Fz@#h#pF @8@#hghFmhp@L%h]p@L%8^mhF[;k@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]^T@pFp@p@L%hp@L%8 mhFFp@p@L% p@L%p mhFp@L%hp@L%8Igp@@%hC@ LFy@pdmh k@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ]Fy@p gE%@@Fp@8@dE EX#&WJs@C J@@a@@%@@)@@m@@1@@u@@y@@=%X ^1pguL1p@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@mb@ hzkbLsL2sLs4R=2 dT^nEz8Th&F& ,)8T^nWaQz;=yI=&&&&WzCF;[=JOuphs2*=2&&R&m]=@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%hX@8C^QT^nEQQz8>J&1,#yv2 g;II[@%zv>>#) d @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%h@J@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=7d7gppppp @@7gpppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]m@@@@@@#8Q|@|Wp@Wh@@pR#8mh*&%h#gX@ TgXd @gpdpF@#h#pRF @T8@@#hOgpghR>=g@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]/g@X8@@@R@a %#pR#hgp p@#h#pTgpd#hgagpghR7Xk @yp@Lu |p@Lupk#h#pRgpghTO=@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@];,@pp@@p@L%hTp@L%8#h#pTgpghR&@d@&mh&%h mhT&O%h#p@gpOFy@pF@gXhgX)  pF@ =@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]Cp gQ%@@@ Rgp%gh)X7gJ Is@C IXbpbp@pF@p@@#pRp@@h@#pOa % @[%1@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 1@ @@@@@Q@@@@@@%h E2E@@C;2% b*Rn@ JpE@s;z4@ms2@%@ a@Ep>@8d@@@nJ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @8@@WE@@ b@@E1@@8@@O7h%yh2/QRE774 av;gvsOCp[2&y8ub=hQvEQ,Qh2]#TpT@*];T@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@E|b@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%4@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@a@J@@@@@@@@@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@mvR&2ppppp @@&2pppp @@2%ppppp @2%pppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]@@@@@@#8C|@|Wp@Wh@@,hz @ @ dX@Qp@@ @ dX@Q8@@%h7@p @#@@@@pF@a ygX8 @WTp@CpF@Q[R@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@],u@Xp%@Q@@@@#8C|@|gp@#h@@Wp@Wh@@,hzp#8C @ @s&C%hv&C#hCX#pCWdX@Qp@@#hCp@RFz@C%4@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@];@@pp@pgpC2X@zdX@Q8@@#hCX#pCWgu#8C @m  Q Q   I I p@L8@Eh@Tp@La8>E8@]@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]>) X%h7dXTp@Lp@p@LE@Eh@Tp@@TFy@ p gC%@@gpCXghCWgCFy@XpF@X@ agp=gh|gC8@>O@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ]p %@@pF@#hCX#pCW#8Cp@%hCp@gX8 ,p@C  p@gpCXmhCWX@E@ 48@h@#hC#pCmhCQp@@nm@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@] p8p@L%hC p@L%8CmhCp@@p@L%hCIp@L%8CJmhCp@@p@L%hCEp@L%8CFmhCp@@p@L%hCp@L%8CmhCWgCW@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]sJ R% 7dXT Q@@@@F8@#hCX#pCWmhCW#hC#pCmhCp@L%hCOp@L%8CmhCp@L%hC p@L%8CLmhCp@L%hC|m@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]g/hp@L%8CmhCp@L%hCCp@L%8CmhCp@L%hp@L%8C@%T@@@@@@C@@@@@@p@@TQ@Cm&8@hIy>8u @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@> @C@OT mvm^,,L#[)X=ha4dCp;Q>d@EFQ@|*h, 7kb; OX @@|O%*I @@@1n/F>W@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@m|@CX@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @dy@C[@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @F@@@@@@@@@@@@@J@I@@@@@@@@@@@@@@@@@@@@@@@@@@@ L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @=Q2h)spppp @@2h)sppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @]b@@@@@@#8R|@|Wp@Wh@@E@@ @ @h@ @*#h#pOpLFz@a @npF@v @;uh@7& uh@s& uh@/&OpE@7 >@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ ][E@Xd@pF@Fp@ghphE@TFp@Fp@&hO#hQ1@J&hOF @T%hQ%hOp gR%@@X2h)sL8@@ @J@@@C/ gd [@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @m@@pn;u]TCmnRC*gO |4C 7 =RyI [z^d 8dT,, ]R);LFC &LC4# nRL4Qp 2 J=4F7#s#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @m,O@y1JW;I|C|FEbC@4L[LX@u4@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @&1@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @F@@@@@@@@@@@@@d@I@d@@@@@@@@@@@@@@@@@@@@@@@@@@@ L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @I@QsQ%pppp @@QsQ%ppp @@QshQpppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]Lv@@@@@@#8C=L@yWp@Wh@@#hC@L8@@#hCX#hC|#pC;p@ E @TE@@y @Qg8C @p@W@@gpCXE@@ @[X@ zQ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]%;@XgpCughC4 7Wp@Wh@@#hC>a8C#hCXWp@@L8@@E@@ @*gpCughC4L8@@8@ yg C; >@#8C,hC;pRypyv@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]2F@p#hC8#pC7#8CTpF@X@ @8pF@ @zpF@dXu#hCz#pCygC% C@ % C @ Edd@gpCz#8C#pC7yWv@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]Lv C &C7#pC8F2@v C Fz@%hC82@E%8C7%hCQ8@Fy@p &Czp@L&CygCp@Lu C @TFy@hp ,hCypRz,b@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ]h pF@dXLdXugCp@LuhCp@Lu8C]%XC pp@L%hC4p@p@L%8Cu8@Fp@%XC> 7p@L%hC4p@L%8Cu8@]]I*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]@8Fy@Lp gC=%XCX%@@L8@@%@@gpCTghC7gC8dXL%XC dXu *%XC> ydXuFp@ s@@@@gXCR spF@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]#Fp@dR#8CT#hC8#pC7p@%hCTp@p@gpC8mhC7#hCz#pCymhC2p@@p@L%hCpp@L%8C1mhCyp@@p@L%hCnp@L^g22@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]4mh%8C/mhCyp@@p@L%hC,p@L%8CmmhC7gCTFy@C%LpF@%L@@@@pF@p@gXCv ;Tp@CpF@p@%upF@gCL2z#E@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]%C@ CIpF@gXC| @,&C|p@L&C;Tp@L @mpF@ C@@@@@C@@@@@@F@@@@@@@@@,J@@@@@@@L@@@@@@@@@@n*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Cz@CX@@@@@@@@@@@@@)*,nIICzvz^|E/X1g;8|@WQd4hJR|b/d EO* 8LdOv=pFu@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@nI@Cp&&F&[[[p;[[[kn=E&7 R@@@>@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#b@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@d@b@J@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=7dQR2ppppp @@QR2pppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ Eu@@@@@@,@|4@y, @p@L7 @JFL@y4@|X@L8@@%@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g/@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@ d@b@J@@@@@@@@@@@@@@@@@@@@@@@@@@@ L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=QQR2pppp @@QR2ppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@E7 @@@@@@4@|,@yE, @X@p@%@@FL@y,@|p@Lv @E @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g/@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@ Q@d@I@@@@@@@@@@@@@@@@@@@@@@@@@ L@@@L@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=7d#&Qsppp @@#&Qspp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=]a@@@@@@4@|7%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ]W7@@@@@@J,@|v%@@@@@@dX@@7%@E@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@   @@@@@@@@@@@@@@@@@@@@@@@@@@ L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]u7pppp @@7ppp @@%sppppp @@%spppp @@Q%spppp @Q%sppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@J@  @@@@@@@@@@@@@@@@@@@@@@@@@@ L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=Q2W%pppp @@2W%ppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@EuF@@@@@@#8@T@yWp@,@Wp@@, @LW4@@7 @ J,@|@L8@@@ @RL8@@g@T%@@@@@@Ip@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g7@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@ J@  @@@@@@@@@@@@@@@@@@@@@@@@ L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=7d2W%ppp @@2W%pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ =n@@@@@@#8@@yp,W@@W@@ @W4@@@p@@ @p@g@%@@J,@|v @I@@@@, @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gv@@T@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@d@  @@@@@@@@@@@@@@@@@@@@@@@@@@ L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=QQd&Tpppp @@Qd&Tppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@EXF@@@@@@p@|#h@L&@LJ,@|,,@Lv7,L@L ,@|L8@@%@@@@@@ I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g/@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@  @@@@@@@@@@@@@@@@@@@@@@@@@@@@ L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%gd&Tppppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%EF@@@@@@#8@@yW4@@d@p@Lg@%@@@@@@p@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gk@@I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ F@@@@@@@@@@@@@d@ @@@@@@@@@@@@@@@@@@@@@@@@@@ L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ QdQ7pppp @@QdQ7@ppp @@QdQ7ppp @@dQ7ppppp @EdQ7@pppp @EdQ7pppp @EQd%pppp @IQd%@ppp @I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@m|Qd%ppp @Id%ppppp @d%@pppp @d%pppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]au@@@@@@p@gh@udX@R%@@@@@@dX@@v%@E@@@@pC,gh@vdX@R%@I@@@@dX@Iv%@@@@@#h@|#p@m#8@=gp@7#h@;)u@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]p@Xp@ Eh@#h@>%h@8#h@p@yE @ #h@g@g4@>, @gg4@7 @*g,@&L@>g4@h8@ykh@;#h@@@@@ @1*h@y]/;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%C@ph8@;d@a*h@;g@=%@RX@%X@;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@> @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@&#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@  @@@@@@@@@@@@@@@@@@@@@@@@@@@@ L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=7dTdppppp @@Tdpppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@m4v@@@@@@p@|#h@I&@IJ,@|k,@I@s@C%@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ gh@@J@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@   @@@@@@@@@@@@@@@@@@@@@@@@@@ L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=QTdpppp @@Tdppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@m /@@@@@@#8@I@yW4@@d@@s@Cg@I%@@@@@@X@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gh@@J@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@Q@a@ @@@@@@@@@@@@@@@@@@@@@@@@@@ L@@@L@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%gb#&pppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=8@@@@@@4@y @W%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@  @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ %>4pppppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]R@@@@@@#8@Wp@ Eh@W#h@XE@@| @RJ,@|@#8@Xpp%h@gX@Xh@p@Lg@W%@@J,@|pk,@X @I@@@#@@@@RdsL@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]2@@X@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@  I@@@@@@@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%[7spppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@u|@@@@@@pQh@JCpQXs,*ChQX@@@@*,7@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g)@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@ L@@@L@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%^dF@282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ %@@@@C8@JWp@@ @WCh@ X@@@@@LJ@@ X@@E@J@@@@@@@@@@L]EmR4 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=uL282pp@EC282pp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@ L@@@L@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%b@282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=Xm@@@@@@p@yCh@%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@ L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%b@282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]^Q@@@@@@p@E@@ @E%@@XQ)W%%@@F@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ g*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%^b@C282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@mb@@@@@@@pQh@ICpQX&g,*ChQ@@@@@@*,2s@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gh@@J@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@J@J@@@@ @@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @%b@282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @E2#@@@@@@C8@XC#X@@@Op@p@p@@p@TCh@ @@@@E@@F@@E@@X22@@@ @@@@@,8 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @g7@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ %Xb@E282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @g)@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@uCk@@@@@@&@@g@@X@ @E @T&X@@%@@XWs&%@@2@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%[b@F282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@ L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @gv@@T@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @=@@@@@@@C8@XX%X@@@p@p@h@z@@@@@=F@@8@ @=Ch@=E@@X2#F@@E@@p@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%b@282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%,@@@@@@p@@h@X@@@@@@p@dX@@E@@Q@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ =vC282pp@FCE282pp@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gk@@I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%]#@282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%)@@@@@@p@@h@X@@@@@@p@X@@E@@Q@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=vC282pp@FCE282pp@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gk@@I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@%#282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]=@@@@@@p@@h@X@@@@@@p@7@@@Fp@@#pC@h/@,@@@QLp@@X@@@@ p@@@Qp@@X@@@@T@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ u/@X pp@)ChC@@@]@Qp@*@pQCa@@Q @E@E Cb@@@Xg)%s@@Fp@@@JR@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%hbCE282pp@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gI@@k@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@a@@@@@@@@@@@@@@@@@@@@%#282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]#@@@@@@p@@h@X@@@@@@p@7@@@F &@@h@phnp@nCh@WpCT@@1@@8@hCTp@Fz@Fn@@X@@ &C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]J,@X@ p@/&s@CCh@@&@pQCT@@Q @@@@bF@EX@E@@@]E Cb@@@Xg%X@@F@@@z4p)Ld@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%1@@p,JJJJ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%hbCE282pp@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g@@2@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=v282pp @@C282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@mu@@@@@@p@@h@X@@@@@@@@@E@dX@@E@d@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=2CE282pp@C@282pp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gh@@J@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@J@J@@@@ @@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=2282pp @@282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@m@@@@@@p@@h@X@@@@@@@@@E@adX@@E@d@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=2CE282pp@C@282pp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gh@@J@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%X#E282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ mO@@@@@@X@@X@@RX@L@aE@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=1282pp@282pp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gd@@F@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%[#F282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]@@@@@@p@@h@X@@@@@@p@7@@@FF@@,@F@sCT@@@WW8@R@Tu#)T@@EuQ)T@@E@LJ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]&y@X@@@Qp@4ChCT@shnp@2Ch@WpCT@k@@%8@hCTp@Fz@Fn@@*@@@]E@E Cb@@@XbC2@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=4CE282pp@CCF282pp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Ek>@p)T2@@F@@@z,JJJJ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ gW@@u@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%#282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Epn@@@@@@X@@p@@h@T@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=4282pp@282pp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gg@@E@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%] @282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]F>@@@@@@X@@p@@h@X@@@@@@QC8@CX@@RX@@@pRX@IRCa@@@Q@@@ C@@@@R@@@bC8@bgJ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ][@XpRh@@@@@vpC@@@@d@vpT@@1@C@k@vpQp@ Ch@)u)Ts7E@EC8@CX@RX@ C@@@%mT)@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]nI@ppQp@ Ch@4u7777@@EX@@@zhWpCaE @Ch@pOE @ChC@hnpCh@CWpC@k@8@CC,C)X)@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]CTp@CFz@Fn@ @@E@EWpC@@@@zvOO@@&@s)@)Ts@JJJJ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ms;CE282pp@CF282pp@@282pp@282pp@,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@&z@X@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@% 282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Ep/@@@@@@X@@p@@h@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=4282pp@282pp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gg@@E@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@% 282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]QR@@@@@@X@@p@@h@X@@@@@@p@dEhCbFp@XpCh@EhECh@s@CE @Ch@@hnpCh@CWp@@C@@FpW@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]mk@X8@CC,@p@CFz@Fn@@@@T@RpCkCh@EX@@RX@F@T@@%@Q @X@@@@@,E@EEX@E@@;F@ER[=QpX4@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ s2@p@@@@1@Q @X@bRX@@@@@7@Q @@@bpQp@ Ch@uv)s@E@E@@@z@@@JJJJJv)s@WpC@J R@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@mvLCE282pp@282pp@C282pp@4282pp@h@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@&d@F@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%^ C282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=O@@@@@@EX@2@@Fu&#E@@p@Ch@2@u@aE@@I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ gn@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@J@J@@@@ @@@@@@@@@@@@@@@@@@@@@@ L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@% 282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 4z@@@@@@EX@O&@@s@CCh@O%@@I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gd@@F@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%X E282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]]@@@@@@X@@p@hCh@X@@RX@C@@EX@,@@RRX@JC@p@@*@@h@k@@k@@@@RX@ C@@@@X@@a8F@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@EE)@XE@@F@EX@@@bp@,8@Ch@,X@RX@@@p@)Qp@ Ch@&uRb27@@vRb2@@@@@@@@@@&vd@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=1282pp@282pp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ gO@@m@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%[ F282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]O%@@@@@@X@@X@@h@]R[h@^Cp@RX@@@@@I@Q @X@@RX@@@@Q @X@L@@@@aE@@p@ Qp@ Ch@EJm@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%bh@Xuv7RX@ C@@@@=*yO@@@v@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@)E282pp@C282pp@282pp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @gC@@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @% 282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @u k@@@@@@C8@p@E@@h@=Cp@=XX%X@@@ph@8@@p@=Ch@=@E@@X2%#sE@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ g1@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@ L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @%aC282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @u @@@@@@v%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ga@@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@ L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%aC282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ua@@@@@@7%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ga@@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@ L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ %^aCC282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]I/@@@@@@p@y#h@g4@#h@[&@g4@ @W#h@gp@[, @R&@@ @O%@@*@[&@[ @L&@@ @%@@*L@[&@[&@[Om@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@==@X @R@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g>@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]Ch@p1@JFz@p@Cp@@RX@CQ8C@hC@F@b@@R@@@ug)s8@@@>X@Q@@@@O=LTF8@RF8@LF8@F@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]v@X@@@@@@E@@@n@@dE@@@@R@a*@Q @@@@Ch@@g@@y8 nCh@p@bX@@n@@RFp@Ch@C%1@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]@@@@@@C8@Ch@QpChnF2@2Ch@E@E@@@@C8@b;pC,>@ @@@O@@@C@@@@;p@hn@*L*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%aC282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@J@J@@@@ @@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]>b@JJJJ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ %kaCF282pp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@&k@I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%XaCE282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]>^@@@@@@Eh@TCh@,Cp@uC8@ap@@Eh@TChs@Cp F2@2Ch@7@,h Wp@@@@@@W|@@@@#@@T@@Ch@,TX@L@yR8@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]Fs@X@@]hh@J@W|@@hhW4@@@)@W@@W@C8@p@ @WCh@@h Wp@@@@T@@m@@s@L@@v@p,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]y@pWp@@@@T@@zC8@n@R@@ |p@E @TCh@n@@4u&)dC8@p@ @WCh@n@@4u&)g@@QWh@@u&)#Cp@X@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ Q&@@@bI@@8@@@@@L/L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@&,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%[aCF282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ] #@@s@CCh@^Ch@Ch@&ChC[p@Ch@*ChCWp@%ChCXpCTChCpCOChCp=E @pEh@TF8@EX@4@@p@hCh@gF@@g@7WpQ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]d @pCh@&EX@&@@vXT)F@&@@1F@@&@XEX@k@EX@sXWyEX@*X;pCnEh@^2@EE8@@@)Ch@p@#XC2@,IT@Q@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]#vXCm@QX7g&uEX@*@ppC,hC2@Tp@@#p @kh@p@@@%XT;@@vpC)E @#@@sXX%@aQE@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]@Xp@&XCp@@pCpEXCWp@EhC[E CXCh@&p@h@^C*Fy@/C8@#X@@@8Ch@Cp@^pCXCREX@s@@1p@&E @)Jp4@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]y pX%p@p@p@@@kEX@*p@h@@@%p@F@#@X7g4%s@C@Tp@hCm@TX%&upC,@dXXL@b@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]m8XCg@C@CQ;I@@@@@n@2@7@z@n@4@@X@|@|pCChLXX7@@XChCpCg@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]*FXCR@[p@&F Cd@R@F8@XEhC@pC,Ch@&@@E@CR@#FCXp@XCQ@&FC[@@pCChC@^X>pCp#7=@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]mhEh@^2@EE8@Ch@Cp@^@@W8@C8CChC@@Ch@*@uChCWW8@@/p@CpCX@u;;@/EX@4@C@s@C@]k@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;C@pCE@CJXCg@@XpCO@p@@@p@@@J@@@@@@ @@@[@@@@@@@@@ @@@;@@@p@@@JCLs zyuhX@7@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@d>@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ F@@@@@@@@@@@@@J@J@@@ @@@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%]&@282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@])@@@@@@C8@p@dX@m@@p*ChCT@@XFp@Ch@1@JFz@Cp@C@CWppCh@Cp*@Ch@WpC@ @C8@8@ChC@F@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ^y@Xp@kCh@pC@Ckh/@k@@ 8@,Ch@@@*@@g@Q @@E@@Fz@F@F@@@pC@z@@@@@p1 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gL@@n@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@J@J@@@ @@@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%&282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]@@Ch@,Cp@up@ChpChChE,ChEmChEnEhC&ChEks@CEX@u@@OpCbFEnC,E,X aEX@u@@ EX@2@@pC#4E,C,E, ||/@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]|h@XX@yE,X@1EX@k@@F@kX@1@@EX@2@@gXdE,pC]Xn@@bXdXyC4@kEX@k@@XdXyF@kC4@kz7>@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]y @p@@@@@@pEkXEnX@y4@kC,EnFEnE@1@@@@X^C,EnpCEhEnChpE,E EnE @TCh@EpCkCh@X@@RX@E@En;>@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ] Q@@@Q @X@@@@TpE,Eh@TChEns@CC,E,E@y@vEX@@>F@R[=@E@@@Q @XERX@@EQkT@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]4 @@ @Q @@E@@@@pEnXEm@,,EmFEmFdEdhC#pC#E,@1EdCh7pCaCh@X RX@@CRX@*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]z8CC)@@>@@CI@2CgEk@@C@C@@@@@WC8@p@EhE @T @WChEnX^k7J@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]WLEdEn@@CpE,Eh@TChEm@%F@EX@@CX4RX@JC@@4@@@@pE,ChEmE EnCh@@R@@s@CE,Em@m&W@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]s[hEh@TFEm&E^@@@@@@Q@@@@@vhs@7@4EnQp@ Ch7u@@@@En@@@@pCXns@CEypC Qp@ ]Rv@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@],sC@ChCCs@Cuv)s7@@C@pC@CpC)hC%@Cd@2pC[Qp@ ChCQu@@@@@2@vpC^Qp@ ChCXua4*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%>CX@@@@@Q@&@s)@#))@)Ts@2))@v)s@v@@@@@@OO@@@@@@@=@@C)@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@uz)@Ek@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=sEC282pp]282pp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b @E/@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ F@@@@@@@@@@@@@J@J@@@ @@@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%&282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]p@@@@@@C8@aXC&X@@@4h@@@s@@I@@OCh@s@8p@sQp@#h@s@ @yC8@v@R@E@@@>8^v@h| @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@vR@@X @^h@h@^8@^@@>X@vX@Q @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@m/@p@@@@@@@@@@@@susg%& C&@@E@p@@@&T@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gX@@z@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@J@J@@@ @@@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%^&C282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]@@@@@@X@@RX@@@RX@C@@IRX@@@aE@@s@Cp@gF2@2E @T@@@LRX@LRX@@@X@h@*@@Xh@hR[h@)EI=@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@E^k@XCp@RX@@@@@[@Q @@@p@,@@bp@kQp@ Ch@%u7777@@@J=*y>O sv@gs@=@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ %)4282pp@R@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gO@@m@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@J@J@@@ @ @@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%&282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=@@@@@@@@@p@h@F2@2@vRX@E@@Eh@T@@@p@RQp@ Ch@Xs%)7@@s%)@QLLI)@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gv@@T@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@ L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%m282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@CC@@@F@@C@Ch@@E @ Fp@RF8@C@C @@@@@@@@@@@@Xp@C@C@@FR@@@@@C@@@C@@C@^F@@FFb@@@EC@@C@EC@F@@@C@@@@@QF@C@y@@Fp@8@C@@@&CT@C|@CF@@@F@CEX@@@@ C@8@@QF@@@ Ch@CFp@L8@Ch@p@@p@@R@@p@X@@@FX@7@@@@R@@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]|X@@@@Cs@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@b^@@@>@@@@@@@Is@Iu@@C@J@ @F@ F@IR@I @J1@J/@J@JE@JR@JO@ m@ h@%@>@T@J=@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@%>u@@n@n@/@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@ >|@@@p@W@X@@I@@[@@@8@@C@E>@IC@#@@F%@&@J@Jh@J&@*@ @ Q@%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@W2@@hOp@@ @@@****pppp@@@@@@p@@@@@@@@@@OXXOXhu#QR#@8@@@@C @Ca@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@d@@Ca@@@@@@C@@@@@@E@@@F@@@@@@I@@@J@@@W@@@/|@@C@@@@@@@@8@;s@CCh@=Ch@O@R@@@C7@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@ p@@Cy@aQdC;@Q @@@@@R@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@%F@@@@@@ChOpCnTpXsFOF@@@aQTR@Q @@@@@E))JJJJ*Ch@ p@@XCh@ p@Ch@E@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@J@@C8@Lp@Cp@pRC8@Eh@Lp|@@@@@%s@C@EE@@ @)s@C@vp@Wh@@pRpF@E @X@@Es@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@1@@1pX&F@ h@F4@ p@LEX@E@>pCp @@8Cpp@Lp@@Eph@@p@L8@pR@@EhFy@&@@EITp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@]1@@EIpF@XC2%E pF@Tp C8@E@L@@E2E@@p@spX&W@pF@p@@pEX@E@E#F@ p@LF@E @p@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@,@@EaEp@ @Ep@LEh@p@LE8@ @EFp@8@E pF@XCm@ELEE p@ Q8@@E7pRE7s@C@LE@@@C8@O@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@|4@@Ey8@Fp@g8@8C@E C8@LCh@ p@pRC8@p@RFz@pF@|@@F2  @Ch@Wp@@p@ pEpF@FX@pRF2 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@)@@FQF @ Eh@F CaCp@F@  @p@LEh@p@LE8@ @C,@EC1@E@@@]F2@@C8@LCh@ p@pR@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@ |C@@F)C8@p@RFz@h@ ph|@@Fp@h@@@E/Ch@1@JFp@Ch@ Wh@@p@pRpF@p@EhCaFX@1@JF2@p@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@g@@F @Eh@ h@F CaEh@@@@@]C8@LEC1@p@E@@4E@@pRE@@@F2@WFy@pF@XCm@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@Wu@@XC2@E pF@p @LE@@pRp@Lp@p@L8@@C8@L|@@Ch@F1@JF2@ @Ch@Wp@@F2 F @FEh@F Ca@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@ @@1Cp@F@F @p@LEh@p@LE8@F@LX@E@E@@E= @zp@@Ch@]J,@]XOE@]Fd@@Fp@p@LE@@F @TF,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@)@@IE@@XOC,@@E@@Xh@ F@@@@C8@CEC/s@CCh@ C)@bpCp@p@@p@Lp@p@LE@EX@@ Eh@T@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@dT@@aEOp8@@@4@@XhE@@@@@@C8@Cp@C)Fy@Wp @CEhCp@ICh@Jp@@Ch@]4@@Xh @IE@]Cp@I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@y=@@yCh@Jp@@Ch@]4@@XhL@IE@]XIF h@IE@]XIFLh@IE@]@@@@Cp@ICh@Jp@@Ch@]4@@XhF@Jp@LF@Ip@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@sW@@IQEIFh@@Cp@F@@F@@@@I4@@@F@@E@@4@@@F@@E@@Ch@p@@Ch@QEh@TCh@Rp@ L@R|@REX@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@p*@@ IEh@Ep@p@|@@h@p@@@EE@@C8@E|@@p@Lh@@p@L8@@EE@@C8@E|@@p@L @@p@Lp@@EE@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@CJ@@J1C8@LL@@Wp@@hh@)@JzC8@@LE@uQWs&@J7C8@Ep@Eh@Ep@|@@Wp@Wh@@@EE@@C8@ECh@p@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@7s@@JF@ @LF@@E@@u2yE@@@@@@C8@LpF@Eh@LpF@EJ XJ @J)C8@Lp@@ @WC,@@@LF@@E@@XJ @J2@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@u/@@JE@@uQ)Wd@I;XJ p,@JJp@C8@Lh@yCp@ h@zCp@@JTXJ p,@JTp@C8@LC,@ |@@p@ @WF@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@ ss@@I)@I/J,@Q ,@RX@F@RE@R ,@QX@F@RE@Rp@@Ivp,h,C8@L|@@@@J4@F@h@@p@h@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@1@@ a@@@@C8@ @a@R@s@CCh@2E@,p@ F8@p@pp@@ np@aCp@aCh@k|@@p@ @WFX@kp@@Ch@,@ EX@2E a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@ h@@ yu7&E@,s@CCh@)ChspdChmp@Ch@mXWXT EX@4@LIX)g]E@X#@LL@OnE@X*@LO@Onu%&J]@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@*@@LQ@LOXT @XkLTL)@R@R@@@@@Og@LR@,@E@On@>@I@O@OX@LR@E@On@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@L,@@L)Eh]ChL,uX7@LRp;hC#dXQIXRp@%EhC%EX@*E @TChns@CE@@@L;@ p@)EX@)FXnEh@%XR*p@&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@s&@@ E @)Ch@&p@)ChkEXkp@Eh@%ChhpnEX@4p@hE @hXp@&hXXWhXgp@LX)p@&@p@XQ@ %@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@m@@ F @TFhRCp@&X)p@&F @TFhChCp@&X)p@&X)@Q;p@LpXgEX@&pm@ [XRp@E@@p@)Eh@&Ch@&Eh@%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@/I@@ 1XR*p@%X@@p@X@&p@&Chkp@%EX@&@ =Eh@&Chhp@%EhCaEX@&Eh@&EX@*E @TEX@4p@hE @hX@Q;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@ [T@@IEX@4h@TCp,F@,@O@LREX@u@TXTXz@LXXLdX@LXRp@&XR*s@CChhp@&X@@dChkEhCa@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@,O@@aEX@sE @T@p@TCp@@s@ChXQIEX@4@7p@hCh@bX|@nCbXQX|EX@4@s@C@pp=E @p@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@v^@@yF8@E @/@m@@@@F@@b@Op@h@^EX@kp@L@RXXLXC&@pE@m@OJE|E@Ch@O E|E@X @O@p^@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@C;@@OQChOX&s7 C&@pCp@)@LRXT p@Lp@p@LE@X&@O@OE@X@L)EX@4h@@O)s@ChC#dXQIEX@4h@T@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@X=@@O)p@Lp@X4@LR@LRpmXg@O4u]&u@LREhCbChm@X&C8@1mEX@4h@T1@JE @Th@@h@p@m@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@2|@@F8@Op@nh@@LRFm@ pmX%@E CbChm@LRmWp@F CnCh@m1@JF2@ICh@n@LRX ap@FX@,EX@1@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@ @v@@@^XQX a@EXs@bp&ChmmWp@h@@Wp@F CnCh@m1@JF2@ICh@n@EX@4@pX)gkXT@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@ @&k@@1E@Xa@4@LREX@u@8Xz@pXXLE@Xa@|pmX@pEX@4h@TCp,F@,@Q@LREX@u@QXW@Q@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@ @u]@@QI@@@@Ch@^Cp@bX ap@bEX@k@QREh@bCh@bEX@4Ch@hE @hh@^EX@u@RX@@QE@^@QbCh@gEX@g@Q%X4@%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@ @,J@@Qa@Q%p@hp@Ch@g@kWh@@EX@k@QmWp@EQIp@LCh@^Cp@EQI@QsC%pn@QuCbpC&Ch@IF@@b@R@EQI@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@ @ h2@@Qy@Q;@%p@EX@4X4@%@%p@^h@z@@Ch@^Cp@ @IX)@QvCp@EQIEQI@@RR@hC8@bE@@R@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@ @ug@@RQ@RTX4@@@s@CCh@JF@@b@R&p@^h@F@@J@Rd@kEX@k@Rbh@@p@@%p@@@%Fz@F@RXXLC%XQ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@ @/@@R)@R@@@@XX@ER*F @Tp@p@^hX4Ch@^p@8XuCh@@@RyER*F@&p[Ch@^pCh@ER*@@@@X a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@ @)2@@EX@u@^EX@k@@kWp@Wh@@pRCh@Cp@^C8@#Ch@*@X;EX@sEX@k@XWyXWERs@C4@kC)Fy@W@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@ @aR@@@I@@@@Ch@gEX@g@ X4EEX@*@dpXgX)pkX@@kF@kX>X)@dEX@sEpXkX)EXk@u@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@ @=z@@1Fks@CX)@/F@h@8EX>X)@u@@@@s@CE @^2@EEp@@#@@TFy@Ch@Cp@^C8@#E;F2@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@%E@@TIT@T@@@@s@CCh@4Cp@^XTXCg@TXE@mXCh@TOCh*h@^ET F@@4@@@F@^F Cd1@JFX@^@TO@@@@@m@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@a#@@TaTdF@nCkC8@m4@nRXXp nET@@@@p@#E Cbp@p@h@^Fp@FhCh@^1@JFhF @Tp@^Fy@Ch@Cp@^@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@/@@TyC8@#ET)@@@@pC#FX@#p@F Ch@p@^Cp@^p@F2@F F @Tp@LEh@^p@LE8@@#Fy@Ch@Cp@^C8@#ET;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@v>@@Q@@@@F@^h@8@@p@Lp@^Ch@Cp@^EQ@@@@p@L@mE@#bF@nCkC8@mRXX4Wp4d@nC4@nF@nE@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@ %I@@)@@@@F@@gE)Ch@Ep@X4E)C8@@/h@ERXX4Wp4d@pC4@pF@p@E)@@@@hzCp)@,@@@@p@^F Cd@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@h[@@@EhChCp@^F@F Cdp@LEh@p@LE8@F8@Ch@1@JF2@F@E>p@@p@Ch@sF@1C8)EX@4h@TCp,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@|@@XT Cp@hEX@s@,E@Xk@,p@4Ch@CXT p@CCh@4Cp@%)F@,W@s@CCh@4p*@Ls@C@d@L1@ *@W@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@k)@@1@Ln@g@Od@@@@p@FX@dFp@FX@pp@F8@Eh@/@@W@EhCkF@pCh@/p@pX@W X=@WIp|Ch@dE4@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@ v@@WIF4E4pCh@pp@Ch@/@WF@@@@;pkEX@up;C,>WC8@dEX@upCh@pp@Ch@/EW@@@@s@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@, @@WaCh@&E@@@WhEWXT;F@@&@@@p@#XT@W%X@@W1XT)F@&p@#@Wkp@p@p@h@^p@@Ch@Cp@^EW@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@s4@@Wy@@@@p@#@p@E C*@@XEWyC8@p@p@p@h@^p@@8@@Ch@Cp@^@EWy@@@@p@X4@XWC8@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@ \ No newline at end of file diff --git a/fortransa/READ.ME b/fortransa/READ.ME new file mode 100644 index 0000000..aac6a20 --- /dev/null +++ b/fortransa/READ.ME @@ -0,0 +1,43 @@ +850957 9-SERIES 920/930 FORTRAN II SYSTEM (STAND ALONE) +AUTHOR: XEROX +ABSTRACT: +THIS IS THE STAND-ALONE 920/930 FORTRAN-II PACKAGE CONSISTING OF COMPILER, LOADER +AND RUN-TIME/LIBRARY +COMMENTS: +SOURCE LANGUAGE:SYMBOL. SIZE 4096 DECIMAL. THIS PROGRAM COVERS 850938,850959,850960. +SEE MANUALS 900587, 900 SERIES FORTRAN II OPERATIONS, 900003. 900 SERIES FORTRAN II REFERENCE MANUAL AND 901048, 900 SERIES FORTRAN II TECHNICAL MANUAL. +CONFIGURATION: ANY 920/930 COMPUTER. + + + + + +This directory contains material having to do with the Stand Alone Fortran II system from the M300_19820128.tap file, catalog number 850957-84. + +You may obtain the four parts of the Fortran II (Stand Alone) System, the Compiler (fort), Loader (fldr), Library (flib) and Runtime (frun), by splitting the +850957-84 file using head and tail and identifying the length of each section using tools/sds_bindmp. These files have been included here for your convience. + +The 850957-84 file is composed of four sections delimited by Standard Binary Object End records and library catalog cards. +1. The Compiler, preceeded by a two card loader and terminated by an end record. +2. The Loader, preceeded by a two card loader and terminated by an end record. +3. The Library with 55 object decks, each preceeded by a catalog record and terminated by an end record (exept the last). The catalog record is a Hollerith BCD image beginning with the characters ^2 folowed by spaces and a file name. The last object deck has a catalog record with the file name SYS777 and has no end card. +4. The Runtime program, preceeded by a two card loader and (supposedly) terminated by an end record. (See problem 2. below) + +Consult the Fortran II Operations Manual, 900587, for operating instructions for compiling and loading programs. + + +There are two problems with the 850957-84 file extracted from both the M300_19820128.tap and M400_19820305.tap files. + +1, Three of the library files have out of order records. I used xxd and vi to edit the files to straighten things out and the fld file in this repository is correct and loads ok. It appears that these problems occured when copying the original card decks to tape, perhaps cards were dropped and then put back into the deck incorrectly as some were in reverse order. A corrected version of the library was saved as flib_corrected and the original, uncorrected version of the library is found in flib_original. + +2, The runtime program is missing the last several data records and the end record. The missing end record was corrected but I could not find the missing data records. This file was saved as runtime_ldr. A version of a runtime program based on the source code in the Fortran II Technical Reference Manual, (900065) is included as frun.si, frun.bo and frun.lo for experimenting. This is notably different than the corrupted runtime program on the PAL trap but it will load and begin execution of the simple.si example. + +There are three command files for use with the Fortran II SA System. Use the fort or fort_ascii command files to run the compiler with either Hollerith or ASCII format input, and save the binary object deck output from the attached cp device. + +Use the fortran_run command file to load and run a binary object deck loaded with files from the flib and the frun.bo runtime. Since frun.bo is not preceeded by a loader the command file includes ldr_2crd preceeding frun.bo in the input deck. + +A simple HELLO WORLD example is included as hello.f with output from its execution in hello_sample. Note that there is a halt at location 5 after the load map is printed. Clear this halt by branching to location 1 to continue, then type c to continue after loading is completed to execute the program. The program currently doesn't print the HELLO WORLD message. Maybe you can figure out why? + +The program fiiexample.f is also included. + +The Fortran II system depended on the operator to manage cards in the reader and punch. The simulator does not close and flush input and output on those devices just because the program has halted so its up to you to reset devices or quit the simulator as necessary. diff --git a/fortransa/fiiexample.f b/fortransa/fiiexample.f new file mode 100644 index 0000000..8bdd914 --- /dev/null +++ b/fortransa/fiiexample.f @@ -0,0 +1,22 @@ +C PROGRAM TO SOLVE THE QUADRATIC EQUATION ABCDEFGH + READ 10,A,B,C + DISC = B*B-4*A*C + IF (DISC) 15,25,35 + 15 R = 0.0 - 0.5 * B/A + AI = 0.5 * SQRTF(0.0-DISC)/A + PRINT 11,R,AI + GO TO 99 + 25 R = 0.0 - 0.5 * B/A + PRINT 21,R + GO TO 99 + 35 SD = SQRTF(DISC) + R1 = 0.5*(SD-B)/A + R2 = 0.5*(0.0-(B+SD))/A + PRINT 31,R2,R1 + 99 STOP + 10 FORMAT( 3F12.5 ) + 11 FORMAT( 19H TWO COMPLEX ROOTS:, F12.5,14H PLUS OR MINUS, + CF12.5, 2H I ) + 21 FORMAT( 15H ONE REAL ROOT:, F12.5 ) + 31 FORMAT( 16H TWO REAL ROOTS:, F12.5, 5H AND , F12.5 ) + END \ No newline at end of file diff --git a/fortransa/fldr b/fortransa/fldr new file mode 100644 index 0000000..85a662d --- /dev/null +++ b/fortransa/fldr @@ -0,0 +1 @@ +@CC@@@F@@C@Ch@@E @ Fp@RF8@C@C @@@@@@@@@@@@Xp@C@C@@FR@@@@@C@@@C@@C@^F@@FFb@@@EC@@C@EC@F@@@C@@@@@QF@C@y@@Fp@8@C@@@&CT@C|@CF@@@F@CEX@@@@ C@8@@QF@@@ Ch@CFp@L8@Ch@p@@p@@R@@p@X@@@FX@7@@@@R@@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]|k@@@@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@n@@C@X;@CCXTXCXXph@@y@CJCp@p@vCh@up@yp2Ch@;8)Ch@|pvE E @yCh@zp;Ch@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@z%@@CX@@@@s@CCh@X%C8@RXQXQ^|@CpXQ^h/@XTaXQ^XRp@TCh@QXQXQ^h|@@Q@CF@Q@C)@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@&@@Cphu@vXTaF2@O gE @TE Ch@Q@@XRX =X hXOp@Q@Cv@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ )k@@XQXQ^hu@v@@CsCh@Cp@C,@Rp@C@OXQXQ^hu@7@L@C]@@@@XQ^Ch@XQ^Ch@OX%ER@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@,@@[>@ERp@4Ch@uECX@@@@XJXQ^F@@u|@ OXJCh@)XJEh@yX@,EhCh@yChRXpChQ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@2@@1XJCh@Ch@*XJCh@OCh@kp@yXOXJh@@]XTaXJhs W@E@RXnQp)X@=Ch@X#p@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@s @@EIXQ%@W@E @=XJXE @=X#@= @WXJEpFX@=Ch@XXJCh@XIp@hn@@>XR@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@8W@@EaX X@E%@=EX@E,Fph]8pX2p@@E[pQh2XJh@@]@E7E/@EyX#@E1@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@bv@@Ey XJh@)Ezs@Cp@aE @bE @TCh@F8@Eh@EhCXQX@@pQCh2@FQXJC,QFQXJC,QFQ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;I@@FQF pQChTp@yCh@,Eh@bCh@mp@yEh@gp@)Ch@)p@yEh@dCh@np@yEh@%Ch@/p@yEh@&Ch@pp@yE @ Ch@1E @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@>^@@F)Ch@2pX@hp@hChp@yEh@#Ch@sX@)X@F|p2pRCh@C^Wp@1C,@CFypRChQhs4R@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@h@@@XQ%@W@F@ FR4RC,QFQFFRp/XR@)@F>@^@TCh@I@ @@C,QFQ@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@4@@ @WE mEh*@RXEh@I @WCh@Cs@CCh@I4R /p@C@p@gEh@yCh@yXLdpTX2@|42@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ p @@1F2@,X@7hEp@@,2F2X2F@,@mp7Ch@QE@Q@ [h@QF2@CCp@ChEC4@QF2@Ch@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 8@@Iph]@QX2F@Qp@QX8@>E@@@@Fp@h1Cp@hpX#@@@Eh@/ER@@@@h2Cp@h1X#E @F@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@4@@aEh@pE[@@@@Cp@Ch@Cs@CCh@Fp@X@@2p@C@@uF@F@F@F@hp@CE @FE#h@@@sF@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@7@@y4@@@>Eh@,@Ehu @WF#F#E#@@@@Ch@CEh@CEh@CCh@CFp@Eh@CFp@Eh@CEhFp@Eh/Ch@C4@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@u@@IQ@@IEh@, @WEICEhu@IT@@@@Fp@Eh@,EIX@@@@XEIp@X @WE kX@>@I7Ch@E @>E @TCh@Ep@=@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@p&@@I) @WE @ChCCh@XQX@s@CC,@F@@EF@EX@E@Ipp@Ch@>XQ%p@yC,@=EI@@@@X@>@J@pWEI;XQ%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@pQ@@J4@=@WEI;@I>@@@@Ch@XyXTaX8@JLXTa4@n@JQp@C,@p@EJE@@@@C8@Ep@uX@4@Jap@v@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*,@@JX@u@J4@uF@u@EEJXT@Jp@vE @4E Ch@Cs@CCh@E,@u@@JmEX@@J/@J1EX@@J2E@u@J2@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@J1Eh@TF@uF@@C@@@EX@C@J&h@F@@v@v@sp@4Eh@TCh@u4@4 ,@@XTaF@@J@@@@dXp@ @W@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@|/@@ IX8[p@yX,X^E F@yp@yCh@7s@CCh@,XLv@IRXX XXCRXm@ Wh@p[@@XTa@@O@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 7R@@ aXTap@ hCh@hpX@hp@hCh@ Wp@X hp@h@OX2@ WX hXO@ WX Ch@X hX@ yChQ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@1@@ yp@uEh@JE Ch@CCh@p2h@@@L@LFF@@C,@CpyFp@L@p@CE @uE @TCh@Ep@Ch@FX Ch@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@@LQ]p@FWz@LLRXEh@Xs@Cp@FF2@Ch@FF@@E@@@EX@E@LOp@Ch@u@ T@@@@XQ,XELdpu@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@L)E X@yX@ELdX X hCh@ypkX@L4C,@XLdE@@@@XQ^Ch@Ch4@n@ Th@Fz@CCp@IF8@h@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@1@@ Fz@ECp@Jp@JE @TCh@ XQ%p@uCh@p@C|@F@ JCh@F2@L8@8,,@sELv@XTaXQ@L7@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;T@@ X Ch@X Ch@OX Ch@E X@@@@F@@ @@@EX@ @ &@ TXQ^E @@@@Ch@Cpz@C zFp@ ,p@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@1@@ 1 @WCh@C@Cp@CE hXTaXTaXTa@ zp@7Eh@C@ 1@@@@p@yEh@TCh@7XQ^E =@@@@F2@ Ch@C@CF8@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%4@@IEC@@@@s@CCh@hCh@ICh@X%@@@C8@Cp@CE WChCp2Ch@=p@yCh@@C|@=C|@CC8@>C8@EJ@@@@F@y@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@O@@aX&E@@@@X&E#@@@@XE&p@LpCXQ@pC4QFQE&X@E&@@@@Ch@Cp@OC8@LX%@[>@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@s@@y@OEWs>p2k>XF@OCp@L @WppXW@LE2C8@CX@OCWs> @WCh@ @LWp@@@W@OWp@ h@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ]T@@OQ@Cp@L @Wppk>@OCCh@@@OL@@@@ @WCh@X%@Ob[>@O&EOp@p@XWEOWs>Ch@Lp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=@@O) >p@k>XFh&pd@@@Eh@p]@@O@Es@Ch@F8@FCh@CF8@Cp@CF8@CCh@CF8@Cp@CF8@CCh@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@d@@p@ @WpEC,@CEO@@@@XEFWs> @WCh@C@LWp@@Ch@ >p@Ch@@@p@W@@ EF@@@@k>@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@y4@@p@h@@p@Oks@Ck=pCE ChCXQX@EW@@@@hhp%Ch@CWp@@@n8@Ch@p@CFz@F@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@2@@1h@4@)gh@p^@@@QJp@O@]@QJXX dX]Wp4XaX^ppXRW@;X^W;=@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@v8@@QI@Qh@Wp@@@@QE%@@@QWWs@@O@QWF%E%W;=@QL@@@@XTp@4Ch@uEQ@@@@p@vX@u@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @&@@QaXT4@uF@uEQ^@@@@ @W8)Eh@TCh@@EQ%@@@@XQ@QpEQ,p1XRWEQ,p@X,p@yE @TX,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @|@@QyXTQp@yE @X8p@h@@RIp@,@@R@RQ[XTQp[Xa@RLpuE @hX,p@,@@R@RQX,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @d*@@RQX^p1W;=XRWEQ,@RQ@@@@Ch@Rp@W@@@R]ERWWs>h=XThn@@R@R1@pkk>dXWp@@Xa@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @am@@R)WsXaFRW[>ERWWs>X,ERWW;=@R@@@@C8@C@@RuaX@@aXQ/R|X^X@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ hJ@@ERsp@R8@QLp@p@R|@@@@@@X@Q@aXEX^Ep@J@QpE@X@pE@p@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ d@@[[X^E@@@@@@@@Q @E^@@@@XgXgXgXgEa@@@@Ch@C@CFz@FEg@@@@XTQFz@FC8@C]@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @n@@1 *Ch@@Fz@C1@CE,@@@@[Eh@TC8@C]WX@T h@Cp@WX@TF F@@Th@F2@FCh@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @Fb@@TI@Fz@F@TO[=@CE8@@@@[[ETQ@@@@C8@C]@@TX@aFTTTT[@Q @@CET@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @sE@@Ta@@@@@@@XT*##WQ#J%g4s[JJ)#XT&QTJg)&W)Qd[JJJJJJJ*@C@@@@@XT*)QTJ))&)[JJ)#&QTXTJ#Q2@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ b@@TysJ)&)T[JJJJJJ*@@@@R@ETp@@@@XT*g)&W)QdJs&&JRW[JJ*pJ4ChpChQE@Eh@mEh@sXIXXICEh@2@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%X@@QEh@1XI;XRX[J @@ @@@ @@p@@Lp@@@X@@@h@@@@@p@@@ @@p@@Eh@@E @@Ch@@p@ 8 8 8 8 8@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@yL@@)@EX@E@EF@En@EQ@E@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@XTaXTaXTap@7p@@ s@ W@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Xk@@XTa@LmXTaXTaXTaXTa@ @ *@ pXTa@@@Oh@@d@@@J@@@@@@@ @@@@@@@8*JJ*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=2@@ JJJppppJJJJ@@@282JJ2F@2,g)&W)Qd%QdJJJJJJ%s)8J&)W%JJJ#Q2sJ2y1@J&dd&%JJJRQ2Jd22%WJ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 1%@@124Rg)&W)Qd2 @@@@@@@@@@@@@p@@g@@/@@@@@XWdp=Chpbh#F2@2CpChOCh@^pCh@yCh@8pv@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@FO@@WIE @yXQ%pvpChWOs@Ch@@WOzhhWRCh@ChCh@Ch p@ChpyChph@@kp4@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@,@@Wappk>E;@@@@XT*#&QTJdQ%Jg)&W)Qd[*@@@@R@CXRsp@Ch@CF@@C@XXJh@Wp@@p@@X@@@Xh@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@yO@@WyC8uC8vW;>bC8LW;C8FuEWdhCp#pIChpJCh@@W2W; @@W4@C@@@@p@W@@@EX@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@7@@XQXQ@IXdXp XapaXap@X,pX,p@yE @TX,XTQp@yE X8p@@X^X@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@TR@@X)X@@X*X@C@pEh@yXu@X4X@@C@EX @X>XT*#&QTJ)4%Jsd[JJJ**@@@@R@@^@R@F@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@R@@@@@^FC@@[>EX W;=@Xp,XRW@XX^W;=@JpuE X,@Xg@@@@pLCh@4Ch@uCh@v@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@y@@@@@F@vF@[@^FCT@vF@v@@s@@ p@vE XCh@vh@4@4@ @n@h44@4@n@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@= F@@1@sET@@@XTp@p@Ch XX s@CCh EX@@C@XT*#&QTJ24Rg)&W)Qd2[J*@@@@R@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]ad@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [@@E@@@@@h@@@@@@@X@ F@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@C@@@@@@E@@@@O>@O=@O|@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@uvR@@]@O;@O8@O7@Ov@OsIO @8 @@@2@@@z888@@@@@@@@@@@@88@@@C|@E@@7|@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@J=@@h@@O@@@p@@@p@@8@@|@@T@@@4@@@@@@O8@@@@@8@@E@@XE@@p@@@@@@@@@8k8@@|@@kkkk@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]db@@@@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/fortransa/flib_corrected b/fortransa/flib_corrected new file mode 100644 index 0000000..ba8f9d3 --- /dev/null +++ b/fortransa/flib_corrected @@ -0,0 +1 @@ +F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@ L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%]aC@282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]Q/@@@@@@#8d@yW4@,@yE, @#,@|X@ @Qp@p @L@|d@ gd%@@@ @Wp@TE@ @O FpJdn&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]gn@XE@@ @[ @E@@T @^ @Op@LE@ @Ogp# FW@Wh@L@y% @n%@^ @nWp@Wh@@LL@| @O#p)#hh[O@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ]u7@pWp@X@ @Wh@@h8&)h&X@@,hh8&)h&X@@d@= @OL8@@ @OE@@  %a IE@*hbk X@,,% ]k,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]JC @Op@ @O*hhv#h%7khh@ Wp@gh%E@Tg],@|L8@@ @4J,@|X%,, W@@@@@@/mR@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@% s@ @@@@@@;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=2=Q#&Wpppp@v7gppppp@z@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@&@*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@d@Q@ @@@@@@@@@@@@@@@@@@@@@@@@@@ L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@mvRQ#&Wpppp @@Q#&Wppp @@#&Wpppp @@#&Wppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]g@@@@@@#8E|@|Wp@Wh@@X@ pR#h#pFp8@Fy@#hC#8s@C#hI#pgpgX@ @gp@Fz@E,[4@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]Q^@Xp@7Lgp @#hgpIp@C#hIgpghF]h@@Fz@#h#pF @8@#hghFmhp@L%h]p@L%8^mhF[;k@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]^T@pFp@p@L%hp@L%8 mhFFp@p@L% p@L%p mhFp@L%hp@L%8Igp@@%hC@ LFy@pdmh k@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ]Fy@p gE%@@Fp@8@dE EX#&WJs@C J@@a@@%@@)@@m@@1@@u@@y@@=%X ^1pguL1p@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@mb@ hzkbLsL2sLs4R=2 dT^nEz8Th&F& ,)8T^nWaQz;=yI=&&&&WzCF;[=JOuphs2*=2&&R&m]=@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%hX@8C^QT^nEQQz8>J&1,#yv2 g;II[@%zv>>#) d @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%h@J@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=7d7gppppp @@7gpppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]m@@@@@@#8Q|@|Wp@Wh@@pR#8mh*&%h#gX@ TgXd @gpdpF@#h#pRF @T8@@#hOgpghR>=g@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]/g@X8@@@R@a %#pR#hgp p@#h#pTgpd#hgagpghR7Xk @yp@Lu |p@Lupk#h#pRgpghTO=@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@];,@pp@@p@L%hTp@L%8#h#pTgpghR&@d@&mh&%h mhT&O%h#p@gpOFy@pF@gXhgX)  pF@ =@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]Cp gQ%@@@ Rgp%gh)X7gJ Is@C IXbpbp@pF@p@@#pRp@@h@#pOa % @[%1@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 1@ @@@@@Q@@@@@@%h E2E@@C;2% b*Rn@ JpE@s;z4@ms2@%@ a@Ep>@8d@@@nJ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @8@@WE@@ b@@E1@@8@@O7h%yh2/QRE774 av;gvsOCp[2&y8ub=hQvEQ,Qh2]#TpT@*];T@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@E|b@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%4@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@a@J@@@@@@@@@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@mvR&2ppppp @@&2pppp @@2%ppppp @2%pppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]@@@@@@#8C|@|Wp@Wh@@,hz @ @ dX@Qp@@ @ dX@Q8@@%h7@p @#@@@@pF@a ygX8 @WTp@CpF@Q[R@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@],u@Xp%@Q@@@@#8C|@|gp@#h@@Wp@Wh@@,hzp#8C @ @s&C%hv&C#hCX#pCWdX@Qp@@#hCp@RFz@C%4@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@];@@pp@pgpC2X@zdX@Q8@@#hCX#pCWgu#8C @m  Q Q   I I p@L8@Eh@Tp@La8>E8@]@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]>) X%h7dXTp@Lp@p@LE@Eh@Tp@@TFy@ p gC%@@gpCXghCWgCFy@XpF@X@ agp=gh|gC8@>O@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ]p %@@pF@#hCX#pCW#8Cp@%hCp@gX8 ,p@C  p@gpCXmhCWX@E@ 48@h@#hC#pCmhCQp@@nm@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@] p8p@L%hC p@L%8CmhCp@@p@L%hCIp@L%8CJmhCp@@p@L%hCEp@L%8CFmhCp@@p@L%hCp@L%8CmhCWgCW@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]sJ R% 7dXT Q@@@@F8@#hCX#pCWmhCW#hC#pCmhCp@L%hCOp@L%8CmhCp@L%hC p@L%8CLmhCp@L%hC|m@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]g/hp@L%8CmhCp@L%hCCp@L%8CmhCp@L%hp@L%8C@%T@@@@@@C@@@@@@p@@TQ@Cm&8@hIy>8u @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@> @C@OT mvm^,,L#[)X=ha4dCp;Q>d@EFQ@|*h, 7kb; OX @@|O%*I @@@1n/F>W@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@m|@CX@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @dy@C[@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @F@@@@@@@@@@@@@J@I@@@@@@@@@@@@@@@@@@@@@@@@@@@ L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @=Q2h)spppp @@2h)sppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @]b@@@@@@#8R|@|Wp@Wh@@E@@ @ @h@ @*#h#pOpLFz@a @npF@v @;uh@7& uh@s& uh@/&OpE@7 >@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ ][E@Xd@pF@Fp@ghphE@TFp@Fp@&hO#hQ1@J&hOF @T%hQ%hOp gR%@@X2h)sL8@@ @J@@@C/ gd [@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @m@@pn;u]TCmnRC*gO |4C 7 =RyI [z^d 8dT,, ]R);LFC &LC4# nRL4Qp 2 J=4F7#s#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @m,O@y1JW;I|C|FEbC@4L[LX@u4@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @&1@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @F@@@@@@@@@@@@@d@I@d@@@@@@@@@@@@@@@@@@@@@@@@@@@ L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @I@QsQ%pppp @@QsQ%ppp @@QshQpppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]Lv@@@@@@#8C=L@yWp@Wh@@#hC@L8@@#hCX#hC|#pC;p@ E @TE@@y @Qg8C @p@W@@gpCXE@@ @[X@ zQ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]%;@XgpCughC4 7Wp@Wh@@#hC>a8C#hCXWp@@L8@@E@@ @*gpCughC4L8@@8@ yg C; >@#8C,hC;pRypyv@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]2F@p#hC8#pC7#8CTpF@X@ @8pF@ @zpF@dXu#hCz#pCygC% C@ % C @ Edd@gpCz#8C#pC7yWv@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]Lv C &C7#pC8F2@v C Fz@%hC82@E%8C7%hCQ8@Fy@p &Czp@L&CygCp@Lu C @TFy@hp ,hCypRz,b@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ]h pF@dXLdXugCp@LuhCp@Lu8C]%XC pp@L%hC4p@p@L%8Cu8@Fp@%XC> 7p@L%hC4p@L%8Cu8@]]I*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]@8Fy@Lp gC=%XCX%@@L8@@%@@gpCTghC7gC8dXL%XC dXu *%XC> ydXuFp@ s@@@@gXCR spF@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]#Fp@dR#8CT#hC8#pC7p@%hCTp@p@gpC8mhC7#hCz#pCymhC2p@@p@L%hCpp@L%8C1mhCyp@@p@L%hCnp@L^g22@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]4mh%8C/mhCyp@@p@L%hC,p@L%8CmmhC7gCTFy@C%LpF@%L@@@@pF@p@gXCv ;Tp@CpF@p@%upF@gCL2z#E@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]%C@ CIpF@gXC| @,&C|p@L&C;Tp@L @mpF@ C@@@@@C@@@@@@F@@@@@@@@@,J@@@@@@@L@@@@@@@@@@n*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Cz@CX@@@@@@@@@@@@@)*,nIICzvz^|E/X1g;8|@WQd4hJR|b/d EO* 8LdOv=pFu@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@nI@Cp&&F&[[[p;[[[kn=E&7 R@@@>@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#b@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@d@b@J@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=7dQR2ppppp @@QR2pppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ Eu@@@@@@,@|4@y, @p@L7 @JFL@y4@|X@L8@@%@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g/@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@ d@b@J@@@@@@@@@@@@@@@@@@@@@@@@@@@ L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=QQR2pppp @@QR2ppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@E7 @@@@@@4@|,@yE, @X@p@%@@FL@y,@|p@Lv @E @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g/@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@ Q@d@I@@@@@@@@@@@@@@@@@@@@@@@@@ L@@@L@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=7d#&Qsppp @@#&Qspp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=]a@@@@@@4@|7%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ F@@@@@@@@@@@@@   @@@@@@@@@@@@@@@@@@@@@@@@@@ L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]u7pppp @@7ppp @@%sppppp @@%spppp @@Q%spppp @Q%sppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]W7@@@@@@J,@|v%@@@@@@dX@@7%@E@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@J@  @@@@@@@@@@@@@@@@@@@@@@@@@@ L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=Q2W%pppp @@2W%ppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@EuF@@@@@@#8@T@yWp@,@Wp@@, @LW4@@7 @ J,@|@L8@@@ @RL8@@g@T%@@@@@@Ip@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g7@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@ J@  @@@@@@@@@@@@@@@@@@@@@@@@ L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=7d2W%ppp @@2W%pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ =n@@@@@@#8@@yp,W@@W@@ @W4@@@p@@ @p@g@%@@J,@|v @I@@@@, @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gv@@T@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@d@  @@@@@@@@@@@@@@@@@@@@@@@@@@ L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=QQd&Tpppp @@Qd&Tppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@EXF@@@@@@p@|#h@L&@LJ,@|,,@Lv7,L@L ,@|L8@@%@@@@@@ I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g/@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@  @@@@@@@@@@@@@@@@@@@@@@@@@@@@ L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%gd&Tppppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%EF@@@@@@#8@@yW4@@d@p@Lg@%@@@@@@p@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gk@@I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ F@@@@@@@@@@@@@d@ @@@@@@@@@@@@@@@@@@@@@@@@@@ L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ QdQ7pppp @@QdQ7@ppp @@QdQ7ppp @@dQ7ppppp @EdQ7@pppp @EdQ7pppp @EQd%pppp @IQd%@ppp @I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@m|Qd%ppp @Id%ppppp @d%@pppp @d%pppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]au@@@@@@p@gh@udX@R%@@@@@@dX@@v%@E@@@@pC,gh@vdX@R%@I@@@@dX@Iv%@@@@@#h@|#p@m#8@=gp@7#h@;)u@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]p@Xp@ Eh@#h@>%h@8#h@p@yE @ #h@g@g4@>, @gg4@7 @*g,@&L@>g4@h8@ykh@;#h@@@@@ @1*h@y]/;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%C@ph8@;d@a*h@;g@=%@RX@%X@;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@> @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@&#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@  @@@@@@@@@@@@@@@@@@@@@@@@@@@@ L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=7dTdppppp @@Tdpppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@m4v@@@@@@p@|#h@I&@IJ,@|k,@I@s@C%@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ gh@@J@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@   @@@@@@@@@@@@@@@@@@@@@@@@@@ L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=QTdpppp @@Tdppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@m /@@@@@@#8@I@yW4@@d@@s@Cg@I%@@@@@@X@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gh@@J@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@Q@a@ @@@@@@@@@@@@@@@@@@@@@@@@@@ L@@@L@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%gb#&pppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=8@@@@@@4@y @W%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@  @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ %>4pppppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]R@@@@@@#8@Wp@ Eh@W#h@XE@@| @RJ,@|@#8@Xpp%h@gX@Xh@p@Lg@W%@@J,@|pk,@X @I@@@#@@@@RdsL@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]2@@X@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@  I@@@@@@@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%[7spppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@u|@@@@@@pQh@JCpQXs,*ChQX@@@@*,7@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g)@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@ L@@@L@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%^dF@282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ %@@@@C8@JWp@@ @WCh@ X@@@@@LJ@@ X@@E@J@@@@@@@@@@L]EmR4 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=uL282pp@EC282pp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@ L@@@L@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%b@282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=Xm@@@@@@p@yCh@%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@ L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%b@282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]^Q@@@@@@p@E@@ @E%@@XQ)W%%@@F@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ g*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%^b@C282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@mb@@@@@@@pQh@ICpQX&g,*ChQ@@@@@@*,2s@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gh@@J@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@J@J@@@@ @@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @%b@282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @E2#@@@@@@C8@XC#X@@@Op@p@p@@p@TCh@ @@@@E@@F@@E@@X22@@@ @@@@@,8 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @g7@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ %Xb@E282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @=@@@@@@@C8@XX%X@@@p@p@h@z@@@@@=F@@8@ @=Ch@=E@@X2#F@@E@@p@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @gv@@T@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@ L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @%[b@F282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @uCk@@@@@@&@@g@@X@ @E @T&X@@%@@XWs&%@@2@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g)@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%b@282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%,@@@@@@p@@h@X@@@@@@p@dX@@E@@Q@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ =vC282pp@FCE282pp@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gk@@I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%]#@282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%)@@@@@@p@@h@X@@@@@@p@X@@E@@Q@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=vC282pp@FCE282pp@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gk@@I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@%#282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]=@@@@@@p@@h@X@@@@@@p@7@@@Fp@@#pC@h/@,@@@QLp@@X@@@@ p@@@Qp@@X@@@@T@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ u/@X pp@)ChC@@@]@Qp@*@pQCa@@Q @E@E Cb@@@Xg)%s@@Fp@@@JR@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%hbCE282pp@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gI@@k@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@a@@@@@@@@@@@@@@@@@@@@%#282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]#@@@@@@p@@h@X@@@@@@p@7@@@F &@@h@phnp@nCh@WpCT@@1@@8@hCTp@Fz@Fn@@X@@ &C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]J,@X@ p@/&s@CCh@@&@pQCT@@Q @@@@bF@EX@E@@@]E Cb@@@Xg%X@@F@@@z4p)Ld@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%1@@p,JJJJ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%hbCE282pp@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g@@2@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=v282pp @@C282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@mu@@@@@@p@@h@X@@@@@@@@@E@dX@@E@d@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=2CE282pp@C@282pp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gh@@J@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@J@J@@@@ @@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=2282pp @@282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@m@@@@@@p@@h@X@@@@@@@@@E@adX@@E@d@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=2CE282pp@C@282pp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gh@@J@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%X#E282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ mO@@@@@@X@@X@@RX@L@aE@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=1282pp@282pp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gd@@F@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%[#F282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]@@@@@@p@@h@X@@@@@@p@7@@@FF@@,@F@sCT@@@WW8@R@Tu#)T@@EuQ)T@@E@LJ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]&y@X@@@Qp@4ChCT@shnp@2Ch@WpCT@k@@%8@hCTp@Fz@Fn@@*@@@]E@E Cb@@@XbC2@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=4CE282pp@CCF282pp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Ek>@p)T2@@F@@@z,JJJJ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ gW@@u@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%#282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Epn@@@@@@X@@p@@h@T@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=4282pp@282pp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gg@@E@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%] @282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]F>@@@@@@X@@p@@h@X@@@@@@QC8@CX@@RX@@@pRX@IRCa@@@Q@@@ C@@@@R@@@bC8@bgJ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ][@XpRh@@@@@vpC@@@@d@vpT@@1@C@k@vpQp@ Ch@)u)Ts7E@EC8@CX@RX@ C@@@%mT)@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]nI@ppQp@ Ch@4u7777@@EX@@@zhWpCaE @Ch@pOE @ChC@hnpCh@CWpC@k@8@CC,C)X)@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]CTp@CFz@Fn@ @@E@EWpC@@@@zvOO@@&@s)@)Ts@JJJJ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ms;CE282pp@CF282pp@@282pp@282pp@,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@&z@X@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@% 282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Ep/@@@@@@X@@p@@h@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=4282pp@282pp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gg@@E@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@% 282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]QR@@@@@@X@@p@@h@X@@@@@@p@dEhCbFp@XpCh@EhECh@s@CE @Ch@@hnpCh@CWp@@C@@FpW@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]mk@X8@CC,@p@CFz@Fn@@@@T@RpCkCh@EX@@RX@F@T@@%@Q @X@@@@@,E@EEX@E@@;F@ER[=QpX4@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ s2@p@@@@1@Q @X@bRX@@@@@7@Q @@@bpQp@ Ch@uv)s@E@E@@@z@@@JJJJJv)s@WpC@J R@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@mvLCE282pp@282pp@C282pp@4282pp@h@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@&d@F@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%^ C282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=O@@@@@@EX@2@@Fu&#E@@p@Ch@2@u@aE@@I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ gn@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@J@J@@@@ @@@@@@@@@@@@@@@@@@@@@@ L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@% 282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 4z@@@@@@EX@O&@@s@CCh@O%@@I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gd@@F@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%X E282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]]@@@@@@X@@p@hCh@X@@RX@C@@EX@,@@RRX@JC@p@@*@@h@k@@k@@@@RX@ C@@@@X@@a8F@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@EE)@XE@@F@EX@@@bp@,8@Ch@,X@RX@@@p@)Qp@ Ch@&uRb27@@vRb2@@@@@@@@@@&vd@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=1282pp@282pp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ gO@@m@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%[ F282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]O%@@@@@@X@@X@@h@]R[h@^Cp@RX@@@@@I@Q @X@@RX@@@@Q @X@L@@@@aE@@p@ Qp@ Ch@EJm@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%bh@Xuv7RX@ C@@@@=*yO@@@v@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@)E282pp@C282pp@282pp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @gC@@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @% 282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @u k@@@@@@C8@p@E@@h@=Cp@=XX%X@@@ph@8@@p@=Ch@=@E@@X2%#sE@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ g1@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@ L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @%aC282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @u @@@@@@v%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ga@@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@ L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%aC282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ua@@@@@@7%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ga@@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@ L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ %^aCC282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]I/@@@@@@p@y#h@g4@#h@[&@g4@ @W#h@gp@[, @R&@@ @O%@@*@[&@[ @L&@@ @%@@*L@[&@[&@[Om@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@==@X @R@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g>@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@J@J@@@@ @@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%aC282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]@@@@@@C8@Ch@QpChnF2@2Ch@E@E@@@@C8@b;pC,>@ @@@O@@@C@@@@;p@hn@*L*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]v@X@@@@@@E@@@n@@dE@@@@R@a*@Q @@@@Ch@@g@@y8 nCh@p@bX@@n@@RFp@Ch@C%1@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]Ch@p1@JFz@p@Cp@@RX@CQ8C@hC@F@b@@R@@@ug)s8@@@>X@Q@@@@O=LTF8@RF8@LF8@F@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]>b@JJJJ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ %kaCF282pp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@&k@I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%XaCE282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]>^@@@@@@Eh@TCh@,Cp@uC8@ap@@Eh@TChs@Cp F2@2Ch@7@,h Wp@@@@@@W|@@@@#@@T@@Ch@,TX@L@yR8@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]Fs@X@@]hh@J@W|@@hhW4@@@)@W@@W@C8@p@ @WCh@@h Wp@@@@T@@m@@s@L@@v@p,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]y@pWp@@@@T@@zC8@n@R@@ |p@E @TCh@n@@4u&)dC8@p@ @WCh@n@@4u&)g@@QWh@@u&)#Cp@X@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ Q&@@@bI@@8@@@@@L/L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@&,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%[aCF282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ] #@@s@CCh@^Ch@Ch@&ChC[p@Ch@*ChCWp@%ChCXpCTChCpCOChCp=E @pEh@TF8@EX@4@@p@hCh@gF@@g@7WpQ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]d @pCh@&EX@&@@vXT)F@&@@1F@@&@XEX@k@EX@sXWyEX@*X;pCnEh@^2@EE8@@@)Ch@p@#XC2@,IT@Q@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]#vXCm@QX7g&uEX@*@ppC,hC2@Tp@@#p @kh@p@@@%XT;@@vpC)E @#@@sXX%@aQE@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]@Xp@&XCp@@pCpEXCWp@EhC[E CXCh@&p@h@^C*Fy@/C8@#X@@@8Ch@Cp@^pCXCREX@s@@1p@&E @)Jp4@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]y pX%p@p@p@@@kEX@*p@h@@@%p@F@#@X7g4%s@C@Tp@hCm@TX%&upC,@dXXL@b@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]m8XCg@C@CQ;I@@@@@n@2@7@z@n@4@@X@|@|pCChLXX7@@XChCpCg@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]*FXCR@[p@&F Cd@R@F8@XEhC@pC,Ch@&@@E@CR@#FCXp@XCQ@&FC[@@pCChC@^X>pCp#7=@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]mhEh@^2@EE8@Ch@Cp@^@@W8@C8CChC@@Ch@*@uChCWW8@@/p@CpCX@u;;@/EX@4@C@s@C@]k@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;C@pCE@CJXCg@@XpCO@p@@@p@@@J@@@@@@ @@@[@@@@@@@@@ @@@;@@@p@@@JCLs zyuhX@7@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@d>@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ F@@@@@@@@@@@@@J@J@@@ @@@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%]&@282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@])@@@@@@C8@p@dX@m@@p*ChCT@@XFp@Ch@1@JFz@Cp@C@CWppCh@Cp*@Ch@WpC@ @C8@8@ChC@F@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ^y@Xp@kCh@pC@Ckh/@k@@ 8@,Ch@@@*@@g@Q @@E@@Fz@F@F@@@pC@z@@@@@p1 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gL@@n@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@J@J@@@ @@@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%&282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]@@Ch@,Cp@up@ChpChChE,ChEmChEnEhC&ChEks@CEX@u@@OpCbFEnC,E,X aEX@u@@ EX@2@@pC#4E,C,E, ||/@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]|h@XX@yE,X@1EX@k@@F@kX@1@@EX@2@@gXdE,pC]Xn@@bXdXyC4@kEX@k@@XdXyF@kC4@kz7>@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]y @p@@@@@@pEkXEnX@y4@kC,EnFEnE@1@@@@X^C,EnpCEhEnChpE,E EnE @TCh@EpCkCh@X@@RX@E@En;>@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ] Q@@@Q @X@@@@TpE,Eh@TChEns@CC,E,E@y@vEX@@>F@R[=@E@@@Q @XERX@@EQkT@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]4 @@ @Q @@E@@@@pEnXEm@,,EmFEmFdEdhC#pC#E,@1EdCh7pCaCh@X RX@@CRX@*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]z8CC)@@>@@CI@2CgEk@@C@C@@@@@WC8@p@EhE @T @WChEnX^k7J@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]WLEdEn@@CpE,Eh@TChEm@%F@EX@@CX4RX@JC@@4@@@@pE,ChEmE EnCh@@R@@s@CE,Em@m&W@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]s[hEh@TFEm&E^@@@@@@Q@@@@@vhs@7@4EnQp@ Ch7u@@@@En@@@@pCXns@CEypC Qp@ ]Rv@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@],sC@ChCCs@Cuv)s7@@C@pC@CpC)hC%@Cd@2pC[Qp@ ChCQu@@@@@2@vpC^Qp@ ChCXua4*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%>CX@@@@@Q@&@s)@#))@)Ts@2))@v)s@v@@@@@@OO@@@@@@@=@@C)@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@uz)@Ek@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=sEC282pp]282pp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b @E/@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ F@@@@@@@@@@@@@J@J@@@ @@@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%&282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]p@@@@@@C8@aXC&X@@@4h@@@s@@I@@OCh@s@8p@sQp@#h@s@ @yC8@v@R@E@@@>8^v@h| @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@vR@@X @^h@h@^8@^@@>X@vX@Q @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@m/@p@@@@@@@@@@@@susg%& C&@@E@p@@@&T@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gX@@z@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@J@J@@@ @@@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%^&C282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]@@@@@@X@@RX@@@RX@C@@IRX@@@aE@@s@Cp@gF2@2E @T@@@LRX@LRX@@@X@h@*@@Xh@hR[h@)EI=@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@E^k@XCp@RX@@@@@[@Q @@@p@,@@bp@kQp@ Ch@%u7777@@@J=*y>O sv@gs@=@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ %)4282pp@R@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gO@@m@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@J@J@@@ @ @@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%&282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=@@@@@@@@@p@h@F2@2@vRX@E@@Eh@T@@@p@RQp@ Ch@Xs%)7@@s%)@QLLI)@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gv@@T@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@ L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%m282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/fortransa/flib_original b/fortransa/flib_original new file mode 100644 index 0000000..349a2be --- /dev/null +++ b/fortransa/flib_original @@ -0,0 +1 @@ +F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@ L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%]aC@282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]Q/@@@@@@#8d@yW4@,@yE, @#,@|X@ @Qp@p @L@|d@ gd%@@@ @Wp@TE@ @O FpJdn&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]gn@XE@@ @[ @E@@T @^ @Op@LE@ @Ogp# FW@Wh@L@y% @n%@^ @nWp@Wh@@LL@| @O#p)#hh[O@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ]u7@pWp@X@ @Wh@@h8&)h&X@@,hh8&)h&X@@d@= @OL8@@ @OE@@  %a IE@*hbk X@,,% ]k,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]JC @Op@ @O*hhv#h%7khh@ Wp@gh%E@Tg],@|L8@@ @4J,@|X%,, W@@@@@@/mR@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@% s@ @@@@@@;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=2=Q#&Wpppp@v7gppppp@z@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@&@*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@d@Q@ @@@@@@@@@@@@@@@@@@@@@@@@@@ L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@mvRQ#&Wpppp @@Q#&Wppp @@#&Wpppp @@#&Wppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]g@@@@@@#8E|@|Wp@Wh@@X@ pR#h#pFp8@Fy@#hC#8s@C#hI#pgpgX@ @gp@Fz@E,[4@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]Q^@Xp@7Lgp @#hgpIp@C#hIgpghF]h@@Fz@#h#pF @8@#hghFmhp@L%h]p@L%8^mhF[;k@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]^T@pFp@p@L%hp@L%8 mhFFp@p@L% p@L%p mhFp@L%hp@L%8Igp@@%hC@ LFy@pdmh k@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ]Fy@p gE%@@Fp@8@dE EX#&WJs@C J@@a@@%@@)@@m@@1@@u@@y@@=%X ^1pguL1p@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@mb@ hzkbLsL2sLs4R=2 dT^nEz8Th&F& ,)8T^nWaQz;=yI=&&&&WzCF;[=JOuphs2*=2&&R&m]=@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%hX@8C^QT^nEQQz8>J&1,#yv2 g;II[@%zv>>#) d @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%h@J@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=7d7gppppp @@7gpppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]m@@@@@@#8Q|@|Wp@Wh@@pR#8mh*&%h#gX@ TgXd @gpdpF@#h#pRF @T8@@#hOgpghR>=g@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]/g@X8@@@R@a %#pR#hgp p@#h#pTgpd#hgagpghR7Xk @yp@Lu |p@Lupk#h#pRgpghTO=@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@];,@pp@@p@L%hTp@L%8#h#pTgpghR&@d@&mh&%h mhT&O%h#p@gpOFy@pF@gXhgX)  pF@ =@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]Cp gQ%@@@ Rgp%gh)X7gJ Is@C IXbpbp@pF@p@@#pRp@@h@#pOa % @[%1@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 1@ @@@@@Q@@@@@@%h E2E@@C;2% b*Rn@ JpE@s;z4@ms2@%@ a@Ep>@8d@@@nJ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @8@@WE@@ b@@E1@@8@@O7h%yh2/QRE774 av;gvsOCp[2&y8ub=hQvEQ,Qh2]#TpT@*];T@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@E|b@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%4@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@a@J@@@@@@@@@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@mvR&2ppppp @@&2pppp @@2%ppppp @2%pppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]@@@@@@#8C|@|Wp@Wh@@,hz @ @ dX@Qp@@ @ dX@Q8@@%h7@p @#@@@@pF@a ygX8 @WTp@CpF@Q[R@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@],u@Xp%@Q@@@@#8C|@|gp@#h@@Wp@Wh@@,hzp#8C @ @s&C%hv&C#hCX#pCWdX@Qp@@#hCp@RFz@C%4@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@];@@pp@pgpC2X@zdX@Q8@@#hCX#pCWgu#8C @m  Q Q   I I p@L8@Eh@Tp@La8>E8@]@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]>) X%h7dXTp@Lp@p@LE@Eh@Tp@@TFy@ p gC%@@gpCXghCWgCFy@XpF@X@ agp=gh|gC8@>O@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ]p %@@pF@#hCX#pCW#8Cp@%hCp@gX8 ,p@C  p@gpCXmhCWX@E@ 48@h@#hC#pCmhCQp@@nm@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@] p8p@L%hC p@L%8CmhCp@@p@L%hCIp@L%8CJmhCp@@p@L%hCEp@L%8CFmhCp@@p@L%hCp@L%8CmhCWgCW@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]sJ R% 7dXT Q@@@@F8@#hCX#pCWmhCW#hC#pCmhCp@L%hCOp@L%8CmhCp@L%hC p@L%8CLmhCp@L%hC|m@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]g/hp@L%8CmhCp@L%hCCp@L%8CmhCp@L%hp@L%8C@%T@@@@@@C@@@@@@p@@TQ@Cm&8@hIy>8u @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@> @C@OT mvm^,,L#[)X=ha4dCp;Q>d@EFQ@|*h, 7kb; OX @@|O%*I @@@1n/F>W@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@m|@CX@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @dy@C[@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @F@@@@@@@@@@@@@J@I@@@@@@@@@@@@@@@@@@@@@@@@@@@ L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @=Q2h)spppp @@2h)sppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @]b@@@@@@#8R|@|Wp@Wh@@E@@ @ @h@ @*#h#pOpLFz@a @npF@v @;uh@7& uh@s& uh@/&OpE@7 >@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ ][E@Xd@pF@Fp@ghphE@TFp@Fp@&hO#hQ1@J&hOF @T%hQ%hOp gR%@@X2h)sL8@@ @J@@@C/ gd [@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @m@@pn;u]TCmnRC*gO |4C 7 =RyI [z^d 8dT,, ]R);LFC &LC4# nRL4Qp 2 J=4F7#s#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @m,O@y1JW;I|C|FEbC@4L[LX@u4@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @&1@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @F@@@@@@@@@@@@@d@I@d@@@@@@@@@@@@@@@@@@@@@@@@@@@ L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @I@QsQ%pppp @@QsQ%ppp @@QshQpppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]Lv@@@@@@#8C=L@yWp@Wh@@#hC@L8@@#hCX#hC|#pC;p@ E @TE@@y @Qg8C @p@W@@gpCXE@@ @[X@ zQ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]%;@XgpCughC4 7Wp@Wh@@#hC>a8C#hCXWp@@L8@@E@@ @*gpCughC4L8@@8@ yg C; >@#8C,hC;pRypyv@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]2F@p#hC8#pC7#8CTpF@X@ @8pF@ @zpF@dXu#hCz#pCygC% C@ % C @ Edd@gpCz#8C#pC7yWv@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]Lv C &C7#pC8F2@v C Fz@%hC82@E%8C7%hCQ8@Fy@p &Czp@L&CygCp@Lu C @TFy@hp ,hCypRz,b@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ]h pF@dXLdXugCp@LuhCp@Lu8C]%XC pp@L%hC4p@p@L%8Cu8@Fp@%XC> 7p@L%hC4p@L%8Cu8@]]I*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]@8Fy@Lp gC=%XCX%@@L8@@%@@gpCTghC7gC8dXL%XC dXu *%XC> ydXuFp@ s@@@@gXCR spF@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]#Fp@dR#8CT#hC8#pC7p@%hCTp@p@gpC8mhC7#hCz#pCymhC2p@@p@L%hCpp@L%8C1mhCyp@@p@L%hCnp@L^g22@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]4mh%8C/mhCyp@@p@L%hC,p@L%8CmmhC7gCTFy@C%LpF@%L@@@@pF@p@gXCv ;Tp@CpF@p@%upF@gCL2z#E@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]%C@ CIpF@gXC| @,&C|p@L&C;Tp@L @mpF@ C@@@@@C@@@@@@F@@@@@@@@@,J@@@@@@@L@@@@@@@@@@n*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Cz@CX@@@@@@@@@@@@@)*,nIICzvz^|E/X1g;8|@WQd4hJR|b/d EO* 8LdOv=pFu@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@nI@Cp&&F&[[[p;[[[kn=E&7 R@@@>@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#b@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@d@b@J@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=7dQR2ppppp @@QR2pppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ Eu@@@@@@,@|4@y, @p@L7 @JFL@y4@|X@L8@@%@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g/@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@ d@b@J@@@@@@@@@@@@@@@@@@@@@@@@@@@ L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=QQR2pppp @@QR2ppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@E7 @@@@@@4@|,@yE, @X@p@%@@FL@y,@|p@Lv @E @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g/@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@ Q@d@I@@@@@@@@@@@@@@@@@@@@@@@@@ L@@@L@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=7d#&Qsppp @@#&Qspp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=]a@@@@@@4@|7%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ]W7@@@@@@J,@|v%@@@@@@dX@@7%@E@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@   @@@@@@@@@@@@@@@@@@@@@@@@@@ L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]u7pppp @@7ppp @@%sppppp @@%spppp @@Q%spppp @Q%sppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@J@  @@@@@@@@@@@@@@@@@@@@@@@@@@ L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=Q2W%pppp @@2W%ppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@EuF@@@@@@#8@T@yWp@,@Wp@@, @LW4@@7 @ J,@|@L8@@@ @RL8@@g@T%@@@@@@Ip@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g7@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@ J@  @@@@@@@@@@@@@@@@@@@@@@@@ L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=7d2W%ppp @@2W%pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ =n@@@@@@#8@@yp,W@@W@@ @W4@@@p@@ @p@g@%@@J,@|v @I@@@@, @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gv@@T@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@d@  @@@@@@@@@@@@@@@@@@@@@@@@@@ L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=QQd&Tpppp @@Qd&Tppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@EXF@@@@@@p@|#h@L&@LJ,@|,,@Lv7,L@L ,@|L8@@%@@@@@@ I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g/@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@  @@@@@@@@@@@@@@@@@@@@@@@@@@@@ L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%gd&Tppppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%EF@@@@@@#8@@yW4@@d@p@Lg@%@@@@@@p@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gk@@I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ F@@@@@@@@@@@@@d@ @@@@@@@@@@@@@@@@@@@@@@@@@@ L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ QdQ7pppp @@QdQ7@ppp @@QdQ7ppp @@dQ7ppppp @EdQ7@pppp @EdQ7pppp @EQd%pppp @IQd%@ppp @I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@m|Qd%ppp @Id%ppppp @d%@pppp @d%pppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]au@@@@@@p@gh@udX@R%@@@@@@dX@@v%@E@@@@pC,gh@vdX@R%@I@@@@dX@Iv%@@@@@#h@|#p@m#8@=gp@7#h@;)u@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]p@Xp@ Eh@#h@>%h@8#h@p@yE @ #h@g@g4@>, @gg4@7 @*g,@&L@>g4@h8@ykh@;#h@@@@@ @1*h@y]/;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%C@ph8@;d@a*h@;g@=%@RX@%X@;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@> @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@&#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@  @@@@@@@@@@@@@@@@@@@@@@@@@@@@ L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=7dTdppppp @@Tdpppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@m4v@@@@@@p@|#h@I&@IJ,@|k,@I@s@C%@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ gh@@J@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@   @@@@@@@@@@@@@@@@@@@@@@@@@@ L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=QTdpppp @@Tdppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@m /@@@@@@#8@I@yW4@@d@@s@Cg@I%@@@@@@X@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gh@@J@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@Q@a@ @@@@@@@@@@@@@@@@@@@@@@@@@@ L@@@L@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%gb#&pppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=8@@@@@@4@y @W%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@  @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ %>4pppppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]R@@@@@@#8@Wp@ Eh@W#h@XE@@| @RJ,@|@#8@Xpp%h@gX@Xh@p@Lg@W%@@J,@|pk,@X @I@@@#@@@@RdsL@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]2@@X@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@  I@@@@@@@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%[7spppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@u|@@@@@@pQh@JCpQXs,*ChQX@@@@*,7@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g)@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@ L@@@L@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%^dF@282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ %@@@@C8@JWp@@ @WCh@ X@@@@@LJ@@ X@@E@J@@@@@@@@@@L]EmR4 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=uL282pp@EC282pp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@ L@@@L@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%b@282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=Xm@@@@@@p@yCh@%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@ L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%b@282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]^Q@@@@@@p@E@@ @E%@@XQ)W%%@@F@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ g*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%^b@C282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@mb@@@@@@@pQh@ICpQX&g,*ChQ@@@@@@*,2s@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gh@@J@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@J@J@@@@ @@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @%b@282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @E2#@@@@@@C8@XC#X@@@Op@p@p@@p@TCh@ @@@@E@@F@@E@@X22@@@ @@@@@,8 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @g7@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ %Xb@E282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @g)@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@uCk@@@@@@&@@g@@X@ @E @T&X@@%@@XWs&%@@2@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%[b@F282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@ L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @gv@@T@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @=@@@@@@@C8@XX%X@@@p@p@h@z@@@@@=F@@8@ @=Ch@=E@@X2#F@@E@@p@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%b@282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%,@@@@@@p@@h@X@@@@@@p@dX@@E@@Q@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ =vC282pp@FCE282pp@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gk@@I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%]#@282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%)@@@@@@p@@h@X@@@@@@p@X@@E@@Q@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=vC282pp@FCE282pp@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gk@@I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@%#282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]=@@@@@@p@@h@X@@@@@@p@7@@@Fp@@#pC@h/@,@@@QLp@@X@@@@ p@@@Qp@@X@@@@T@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ u/@X pp@)ChC@@@]@Qp@*@pQCa@@Q @E@E Cb@@@Xg)%s@@Fp@@@JR@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%hbCE282pp@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gI@@k@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@a@@@@@@@@@@@@@@@@@@@@%#282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]#@@@@@@p@@h@X@@@@@@p@7@@@F &@@h@phnp@nCh@WpCT@@1@@8@hCTp@Fz@Fn@@X@@ &C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]J,@X@ p@/&s@CCh@@&@pQCT@@Q @@@@bF@EX@E@@@]E Cb@@@Xg%X@@F@@@z4p)Ld@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%1@@p,JJJJ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%hbCE282pp@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g@@2@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=v282pp @@C282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@mu@@@@@@p@@h@X@@@@@@@@@E@dX@@E@d@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=2CE282pp@C@282pp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gh@@J@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@J@J@@@@ @@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=2282pp @@282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@m@@@@@@p@@h@X@@@@@@@@@E@adX@@E@d@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=2CE282pp@C@282pp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gh@@J@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%X#E282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ mO@@@@@@X@@X@@RX@L@aE@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=1282pp@282pp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gd@@F@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%[#F282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]@@@@@@p@@h@X@@@@@@p@7@@@FF@@,@F@sCT@@@WW8@R@Tu#)T@@EuQ)T@@E@LJ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]&y@X@@@Qp@4ChCT@shnp@2Ch@WpCT@k@@%8@hCTp@Fz@Fn@@*@@@]E@E Cb@@@XbC2@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=4CE282pp@CCF282pp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Ek>@p)T2@@F@@@z,JJJJ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ gW@@u@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%#282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Epn@@@@@@X@@p@@h@T@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=4282pp@282pp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gg@@E@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%] @282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]F>@@@@@@X@@p@@h@X@@@@@@QC8@CX@@RX@@@pRX@IRCa@@@Q@@@ C@@@@R@@@bC8@bgJ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ][@XpRh@@@@@vpC@@@@d@vpT@@1@C@k@vpQp@ Ch@)u)Ts7E@EC8@CX@RX@ C@@@%mT)@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]nI@ppQp@ Ch@4u7777@@EX@@@zhWpCaE @Ch@pOE @ChC@hnpCh@CWpC@k@8@CC,C)X)@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]CTp@CFz@Fn@ @@E@EWpC@@@@zvOO@@&@s)@)Ts@JJJJ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ms;CE282pp@CF282pp@@282pp@282pp@,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@&z@X@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@% 282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Ep/@@@@@@X@@p@@h@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=4282pp@282pp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gg@@E@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@% 282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]QR@@@@@@X@@p@@h@X@@@@@@p@dEhCbFp@XpCh@EhECh@s@CE @Ch@@hnpCh@CWp@@C@@FpW@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]mk@X8@CC,@p@CFz@Fn@@@@T@RpCkCh@EX@@RX@F@T@@%@Q @X@@@@@,E@EEX@E@@;F@ER[=QpX4@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ s2@p@@@@1@Q @X@bRX@@@@@7@Q @@@bpQp@ Ch@uv)s@E@E@@@z@@@JJJJJv)s@WpC@J R@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@mvLCE282pp@282pp@C282pp@4282pp@h@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@&d@F@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%^ C282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=O@@@@@@EX@2@@Fu&#E@@p@Ch@2@u@aE@@I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ gn@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@J@J@@@@ @@@@@@@@@@@@@@@@@@@@@@ L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@% 282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 4z@@@@@@EX@O&@@s@CCh@O%@@I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gd@@F@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%X E282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]]@@@@@@X@@p@hCh@X@@RX@C@@EX@,@@RRX@JC@p@@*@@h@k@@k@@@@RX@ C@@@@X@@a8F@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@EE)@XE@@F@EX@@@bp@,8@Ch@,X@RX@@@p@)Qp@ Ch@&uRb27@@vRb2@@@@@@@@@@&vd@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=1282pp@282pp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ gO@@m@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%[ F282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]O%@@@@@@X@@X@@h@]R[h@^Cp@RX@@@@@I@Q @X@@RX@@@@Q @X@L@@@@aE@@p@ Qp@ Ch@EJm@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%bh@Xuv7RX@ C@@@@=*yO@@@v@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@)E282pp@C282pp@282pp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @gC@@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @% 282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @u k@@@@@@C8@p@E@@h@=Cp@=XX%X@@@ph@8@@p@=Ch@=@E@@X2%#sE@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ g1@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@ L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @%aC282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @u @@@@@@v%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ga@@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@ L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%aC282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ua@@@@@@7%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ga@@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@ L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ %^aCC282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]I/@@@@@@p@y#h@g4@#h@[&@g4@ @W#h@gp@[, @R&@@ @O%@@*@[&@[ @L&@@ @%@@*L@[&@[&@[Om@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@==@X @R@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g>@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]Ch@p1@JFz@p@Cp@@RX@CQ8C@hC@F@b@@R@@@ug)s8@@@>X@Q@@@@O=LTF8@RF8@LF8@F@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]v@X@@@@@@E@@@n@@dE@@@@R@a*@Q @@@@Ch@@g@@y8 nCh@p@bX@@n@@RFp@Ch@C%1@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]@@@@@@C8@Ch@QpChnF2@2Ch@E@E@@@@C8@b;pC,>@ @@@O@@@C@@@@;p@hn@*L*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%aC282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@J@J@@@@ @@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]>b@JJJJ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ %kaCF282pp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@&k@I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%XaCE282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]>^@@@@@@Eh@TCh@,Cp@uC8@ap@@Eh@TChs@Cp F2@2Ch@7@,h Wp@@@@@@W|@@@@#@@T@@Ch@,TX@L@yR8@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]Fs@X@@]hh@J@W|@@hhW4@@@)@W@@W@C8@p@ @WCh@@h Wp@@@@T@@m@@s@L@@v@p,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]y@pWp@@@@T@@zC8@n@R@@ |p@E @TCh@n@@4u&)dC8@p@ @WCh@n@@4u&)g@@QWh@@u&)#Cp@X@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ Q&@@@bI@@8@@@@@L/L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@&,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%[aCF282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ] #@@s@CCh@^Ch@Ch@&ChC[p@Ch@*ChCWp@%ChCXpCTChCpCOChCp=E @pEh@TF8@EX@4@@p@hCh@gF@@g@7WpQ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]d @pCh@&EX@&@@vXT)F@&@@1F@@&@XEX@k@EX@sXWyEX@*X;pCnEh@^2@EE8@@@)Ch@p@#XC2@,IT@Q@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]#vXCm@QX7g&uEX@*@ppC,hC2@Tp@@#p @kh@p@@@%XT;@@vpC)E @#@@sXX%@aQE@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]@Xp@&XCp@@pCpEXCWp@EhC[E CXCh@&p@h@^C*Fy@/C8@#X@@@8Ch@Cp@^pCXCREX@s@@1p@&E @)Jp4@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]y pX%p@p@p@@@kEX@*p@h@@@%p@F@#@X7g4%s@C@Tp@hCm@TX%&upC,@dXXL@b@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]m8XCg@C@CQ;I@@@@@n@2@7@z@n@4@@X@|@|pCChLXX7@@XChCpCg@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]*FXCR@[p@&F Cd@R@F8@XEhC@pC,Ch@&@@E@CR@#FCXp@XCQ@&FC[@@pCChC@^X>pCp#7=@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]mhEh@^2@EE8@Ch@Cp@^@@W8@C8CChC@@Ch@*@uChCWW8@@/p@CpCX@u;;@/EX@4@C@s@C@]k@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;C@pCE@CJXCg@@XpCO@p@@@p@@@J@@@@@@ @@@[@@@@@@@@@ @@@;@@@p@@@JCLs zyuhX@7@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@d>@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ F@@@@@@@@@@@@@J@J@@@ @@@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%]&@282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@])@@@@@@C8@p@dX@m@@p*ChCT@@XFp@Ch@1@JFz@Cp@C@CWppCh@Cp*@Ch@WpC@ @C8@8@ChC@F@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ^y@Xp@kCh@pC@Ckh/@k@@ 8@,Ch@@@*@@g@Q @@E@@Fz@F@F@@@pC@z@@@@@p1 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gL@@n@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@J@J@@@ @@@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%&282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]@@Ch@,Cp@up@ChpChChE,ChEmChEnEhC&ChEks@CEX@u@@OpCbFEnC,E,X aEX@u@@ EX@2@@pC#4E,C,E, ||/@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]|h@XX@yE,X@1EX@k@@F@kX@1@@EX@2@@gXdE,pC]Xn@@bXdXyC4@kEX@k@@XdXyF@kC4@kz7>@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]y @p@@@@@@pEkXEnX@y4@kC,EnFEnE@1@@@@X^C,EnpCEhEnChpE,E EnE @TCh@EpCkCh@X@@RX@E@En;>@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ] Q@@@Q @X@@@@TpE,Eh@TChEns@CC,E,E@y@vEX@@>F@R[=@E@@@Q @XERX@@EQkT@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]4 @@ @Q @@E@@@@pEnXEm@,,EmFEmFdEdhC#pC#E,@1EdCh7pCaCh@X RX@@CRX@*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]z8CC)@@>@@CI@2CgEk@@C@C@@@@@WC8@p@EhE @T @WChEnX^k7J@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]WLEdEn@@CpE,Eh@TChEm@%F@EX@@CX4RX@JC@@4@@@@pE,ChEmE EnCh@@R@@s@CE,Em@m&W@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]s[hEh@TFEm&E^@@@@@@Q@@@@@vhs@7@4EnQp@ Ch7u@@@@En@@@@pCXns@CEypC Qp@ ]Rv@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@],sC@ChCCs@Cuv)s7@@C@pC@CpC)hC%@Cd@2pC[Qp@ ChCQu@@@@@2@vpC^Qp@ ChCXua4*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%>CX@@@@@Q@&@s)@#))@)Ts@2))@v)s@v@@@@@@OO@@@@@@@=@@C)@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@uz)@Ek@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=sEC282pp]282pp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b @E/@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ F@@@@@@@@@@@@@J@J@@@ @@@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%&282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]p@@@@@@C8@aXC&X@@@4h@@@s@@I@@OCh@s@8p@sQp@#h@s@ @yC8@v@R@E@@@>8^v@h| @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@vR@@X @^h@h@^8@^@@>X@vX@Q @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@m/@p@@@@@@@@@@@@susg%& C&@@E@p@@@&T@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gX@@z@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@J@J@@@ @@@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%^&C282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]@@@@@@X@@RX@@@RX@C@@IRX@@@aE@@s@Cp@gF2@2E @T@@@LRX@LRX@@@X@h@*@@Xh@hR[h@)EI=@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@E^k@XCp@RX@@@@@[@Q @@@p@,@@bp@kQp@ Ch@%u7777@@@J=*y>O sv@gs@=@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ %)4282pp@R@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gO@@m@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@J@J@@@ @ @@@@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%&282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=@@@@@@@@@p@h@F2@2@vRX@E@@Eh@T@@@p@RQp@ Ch@Xs%)7@@s%)@QLLI)@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gv@@T@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@F@@@@@@@@@@@@@J@J@@@@@@@@@@@@@@@@@@@@@@@@@@ L@@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%m282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@CC@@@F@@C@Ch@@E @ Fp@RF8@C@C @@@@@@@@@@@@Xp@C@C@@FR@@@@@C@@@C@@C@^F@@FFb@@@EC@@C@EC@F@@@C@@@@@QF@C@y@@Fp@8@C@@@&CT@C|@CF@@@F@CEX@@@@ C@8@@QF@@@ Ch@CFp@L8@Ch@p@@p@@R@@p@X@@@FX@7@@@@R@@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]|X@@@@Cs@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@b^@@@>@@@@@@@Is@Iu@@C@J@ @F@ F@IR@I @J1@J/@J@JE@JR@JO@ m@ h@%@>@T@J=@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@%>u@@n@n@/@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@ >|@@@p@W@X@@I@@[@@@8@@C@E>@IC@#@@F%@&@J@Jh@J&@*@ @ Q@%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@W2@@hOp@@ @@@****pppp@@@@@@p@@@@@@@@@@OXXOXhu#QR#@8@@@@C @Ca@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@d@@Ca@@@@@@C@@@@@@E@@@F@@@@@@I@@@J@@@W@@@/|@@C@@@@@@@@8@;s@CCh@=Ch@O@R@@@C7@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@ p@@Cy@aQdC;@Q @@@@@R@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@%F@@@@@@ChOpCnTpXsFOF@@@aQTR@Q @@@@@E))JJJJ*Ch@ p@@XCh@ p@Ch@E@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@J@@C8@Lp@Cp@pRC8@Eh@Lp|@@@@@%s@C@EE@@ @)s@C@vp@Wh@@pRpF@E @X@@Es@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@1@@1pX&F@ h@F4@ p@LEX@E@>pCp @@8Cpp@Lp@@Eph@@p@L8@pR@@EhFy@&@@EITp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@]1@@EIpF@XC2%E pF@Tp C8@E@L@@E2E@@p@spX&W@pF@p@@pEX@E@E#F@ p@LF@E @p@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@,@@EaEp@ @Ep@LEh@p@LE8@ @EFp@8@E pF@XCm@ELEE p@ Q8@@E7pRE7s@C@LE@@@C8@O@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@|4@@Ey8@Fp@g8@8C@E C8@LCh@ p@pRC8@p@RFz@pF@|@@F2  @Ch@Wp@@p@ pEpF@FX@pRF2 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@)@@FQF @ Eh@F CaCp@F@  @p@LEh@p@LE8@ @C,@EC1@E@@@]F2@@C8@LCh@ p@pR@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@ |C@@F)C8@p@RFz@h@ ph|@@Fp@h@@@E/Ch@1@JFp@Ch@ Wh@@p@pRpF@p@EhCaFX@1@JF2@p@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@g@@F @Eh@ h@F CaEh@@@@@]C8@LEC1@p@E@@4E@@pRE@@@F2@WFy@pF@XCm@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@Wu@@XC2@E pF@p @LE@@pRp@Lp@p@L8@@C8@L|@@Ch@F1@JF2@ @Ch@Wp@@F2 F @FEh@F Ca@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@ @@1Cp@F@F @p@LEh@p@LE8@F@LX@E@E@@E= @zp@@Ch@]J,@]XOE@]Fd@@Fp@p@LE@@F @TF,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@)@@IE@@XOC,@@E@@Xh@ F@@@@C8@CEC/s@CCh@ C)@bpCp@p@@p@Lp@p@LE@EX@@ Eh@T@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@dT@@aEOp8@@@4@@XhE@@@@@@C8@Cp@C)Fy@Wp @CEhCp@ICh@Jp@@Ch@]4@@Xh @IE@]Cp@I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@y=@@yCh@Jp@@Ch@]4@@XhL@IE@]XIF h@IE@]XIFLh@IE@]@@@@Cp@ICh@Jp@@Ch@]4@@XhF@Jp@LF@Ip@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@sW@@IQEIFh@@Cp@F@@F@@@@I4@@@F@@E@@4@@@F@@E@@Ch@p@@Ch@QEh@TCh@Rp@ L@R|@REX@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@p*@@ IEh@Ep@p@|@@h@p@@@EE@@C8@E|@@p@Lh@@p@L8@@EE@@C8@E|@@p@L @@p@Lp@@EE@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@CJ@@J1C8@LL@@Wp@@hh@)@JzC8@@LE@uQWs&@J7C8@Ep@Eh@Ep@|@@Wp@Wh@@@EE@@C8@ECh@p@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@7s@@JF@ @LF@@E@@u2yE@@@@@@C8@LpF@Eh@LpF@EJ XJ @J)C8@Lp@@ @WC,@@@LF@@E@@XJ @J2@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@u/@@JE@@uQ)Wd@I;XJ p,@JJp@C8@Lh@yCp@ h@zCp@@JTXJ p,@JTp@C8@LC,@ |@@p@ @WF@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@ ss@@I)@I/J,@Q ,@RX@F@RE@R ,@QX@F@RE@Rp@@Ivp,h,C8@L|@@@@J4@F@h@@p@h@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@1@@ a@@@@C8@ @a@R@s@CCh@2E@,p@ F8@p@pp@@ np@aCp@aCh@k|@@p@ @WFX@kp@@Ch@,@ EX@2E a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@ h@@ yu7&E@,s@CCh@)ChspdChmp@Ch@mXWXT EX@4@LIX)g]E@X#@LL@OnE@X*@LO@Onu%&J]@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@*@@LQ@LOXT @XkLTL)@R@R@@@@@Og@LR@,@E@On@>@I@O@OX@LR@E@On@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@L,@@L)Eh]ChL,uX7@LRp;hC#dXQIXRp@%EhC%EX@*E @TChns@CE@@@L;@ p@)EX@)FXnEh@%XR*p@&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@s&@@ E @)Ch@&p@)ChkEXkp@Eh@%ChhpnEX@4p@hE @hXp@&hXXWhXgp@LX)p@&@p@XQ@ %@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@m@@ F @TFhRCp@&X)p@&F @TFhChCp@&X)p@&X)@Q;p@LpXgEX@&pm@ [XRp@E@@p@)Eh@&Ch@&Eh@%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@/I@@ 1XR*p@%X@@p@X@&p@&Chkp@%EX@&@ =Eh@&Chhp@%EhCaEX@&Eh@&EX@*E @TEX@4p@hE @hX@Q;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@ [T@@IEX@4h@TCp,F@,@O@LREX@u@TXTXz@LXXLdX@LXRp@&XR*s@CChhp@&X@@dChkEhCa@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@,O@@aEX@sE @T@p@TCp@@s@ChXQIEX@4@7p@hCh@bX|@nCbXQX|EX@4@s@C@pp=E @p@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@v^@@yF8@E @/@m@@@@F@@b@Op@h@^EX@kp@L@RXXLXC&@pE@m@OJE|E@Ch@O E|E@X @O@p^@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@C;@@OQChOX&s7 C&@pCp@)@LRXT p@Lp@p@LE@X&@O@OE@X@L)EX@4h@@O)s@ChC#dXQIEX@4h@T@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@X=@@O)p@Lp@X4@LR@LRpmXg@O4u]&u@LREhCbChm@X&C8@1mEX@4h@T1@JE @Th@@h@p@m@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@2|@@F8@Op@nh@@LRFm@ pmX%@E CbChm@LRmWp@F CnCh@m1@JF2@ICh@n@LRX ap@FX@,EX@1@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@ @v@@@^XQX a@EXs@bp&ChmmWp@h@@Wp@F CnCh@m1@JF2@ICh@n@EX@4@pX)gkXT@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@ @&k@@1E@Xa@4@LREX@u@8Xz@pXXLE@Xa@|pmX@pEX@4h@TCp,F@,@Q@LREX@u@QXW@Q@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@ @u]@@QI@@@@Ch@^Cp@bX ap@bEX@k@QREh@bCh@bEX@4Ch@hE @hh@^EX@u@RX@@QE@^@QbCh@gEX@g@Q%X4@%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@ @,J@@Qa@Q%p@hp@Ch@g@kWh@@EX@k@QmWp@EQIp@LCh@^Cp@EQI@QsC%pn@QuCbpC&Ch@IF@@b@R@EQI@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@ @ h2@@Qy@Q;@%p@EX@4X4@%@%p@^h@z@@Ch@^Cp@ @IX)@QvCp@EQIEQI@@RR@hC8@bE@@R@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@ @ug@@RQ@RTX4@@@s@CCh@JF@@b@R&p@^h@F@@J@Rd@kEX@k@Rbh@@p@@%p@@@%Fz@F@RXXLC%XQ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@ @/@@R)@R@@@@XX@ER*F @Tp@p@^hX4Ch@^p@8XuCh@@@RyER*F@&p[Ch@^pCh@ER*@@@@X a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@ @)2@@EX@u@^EX@k@@kWp@Wh@@pRCh@Cp@^C8@#Ch@*@X;EX@sEX@k@XWyXWERs@C4@kC)Fy@W@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@ @aR@@@I@@@@Ch@gEX@g@ X4EEX@*@dpXgX)pkX@@kF@kX>X)@dEX@sEpXkX)EXk@u@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@ @=z@@1Fks@CX)@/F@h@8EX>X)@u@@@@s@CE @^2@EEp@@#@@TFy@Ch@Cp@^C8@#E;F2@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@%E@@TIT@T@@@@s@CCh@4Cp@^XTXCg@TXE@mXCh@TOCh*h@^ET F@@4@@@F@^F Cd1@JFX@^@TO@@@@@m@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@a#@@TaTdF@nCkC8@m4@nRXXp nET@@@@p@#E Cbp@p@h@^Fp@FhCh@^1@JFhF @Tp@^Fy@Ch@Cp@^@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@/@@TyC8@#ET)@@@@pC#FX@#p@F Ch@p@^Cp@^p@F2@F F @Tp@LEh@^p@LE8@@#Fy@Ch@Cp@^C8@#ET;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@v>@@Q@@@@F@^h@8@@p@Lp@^Ch@Cp@^EQ@@@@p@L@mE@#bF@nCkC8@mRXX4Wp4d@nC4@nF@nE@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@ %I@@)@@@@F@@gE)Ch@Ep@X4E)C8@@/h@ERXX4Wp4d@pC4@pF@p@E)@@@@hzCp)@,@@@@p@^F Cd@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@h[@@@EhChCp@^F@F Cdp@LEh@p@LE8@F8@Ch@1@JF2@F@E>p@@p@Ch@sF@1C8)EX@4h@TCp,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@|@@XT Cp@hEX@s@,E@Xk@,p@4Ch@CXT p@CCh@4Cp@%)F@,W@s@CCh@4p*@Ls@C@d@L1@ *@W@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@k)@@1@Ln@g@Od@@@@p@FX@dFp@FX@pp@F8@Eh@/@@W@EhCkF@pCh@/p@pX@W X=@WIp|Ch@dE4@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@ v@@WIF4E4pCh@pp@Ch@/@WF@@@@;pkEX@up;C,>WC8@dEX@upCh@pp@Ch@/EW@@@@s@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@, @@WaCh@&E@@@WhEWXT;F@@&@@@p@#XT@W%X@@W1XT)F@&p@#@Wkp@p@p@h@^p@@Ch@Cp@^EW@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@s4@@Wy@@@@p@#@p@E C*@@XEWyC8@p@p@p@h@^p@@8@@Ch@Cp@^@EWy@@@@p@X4@XWC8@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@ \ No newline at end of file diff --git a/fortransa/fort b/fortransa/fort new file mode 100644 index 0000000..8588dd4 --- /dev/null +++ b/fortransa/fort @@ -0,0 +1 @@ +C@CC@@@F@@C@Ch@@E @ Fp@RF8@C@C @@@@@@@@@@@@Xp@C@C@@FR@@@@@C@@@C@@C@^F@@FFb@@@EC@@C@EC@F@@@C@@@@@QF@C@y@@Fp@8@C@@@&CT@C|@CF@@@F@CEX@@@@ C@8@@QF@@@ Ch@CFp@L8@Ch@p@@p@@R@@p@X@@@FX@7@@@@R@@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@I4@@@@aX@g@hC@,p@,m@@h@gk@d@d @,7@ak@#1@g@#7@%@dW@%@d/@bg@d%@gg@a%@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@pT@@X@&@dC@b @&m@&I@&y@&|@%,@%*@#)@d*@d@bk@d4@%d@&)@gW@, @#|@gu@g/@aJ@&2@d7@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@p@hI@h@g;@a[@v@@@@/7@ %@@@@@@@@[@@@@@@@@@@@@@@@@@@psOh/mE sCh4FC44FE4F@X@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@y@@p@Ch@ECh@Xv Ch@Jp@Chpp2%Ch@p@@@@R@@@Xp@ @QCh=Ch@XCh@Ch@p@TCh@Lp@Ch@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ X@@ Ch@^Ch@XvCh@I/y *IO@dIhh 2@uFI k upp IW#ICJ/* C@z Cpp#IW#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@|@@8ICJ/*Jp@IWzXnL @XnI @I^O @@@pX;/zJp@L8@ X@@vWp@@Ch@JX2JX@I @ JX2W@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@m@@CI^/Ch@bIX@FJX@@/EJ@JX2JX@JX2[JX2[JX2WF@aL8@ X@I)p@C&Ihh 2hIF@@@@@I k FF@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ h@@Ch/dXE#/aXC;pp%/* XIFI/zIX|JXpOIX@IX|JXpIX@IXIX@@ /s *IXpIW#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@h @@@/XIJ @L@ I^ IIp@@@XI^%I^*C>ITI]II]RpXI^XCIXbI[EJXp IXv@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%@@X@ I]RII@^I]RJXp@IX@@I^%IX@FIX@F@4=L@ J @LL@ J @LIX@F@/Epp&J@OI8@JIWzXnI @E@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*/@@p/*I@@TI@@I@@@7IJ @JI/>X=Jh@8@g@E@JhsW8@gIp@h#>Fp@]#X;IhsXhJhsW@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@p @@E X@g@@h @8sWp@#>Fp@s>IhsXhpXu/zJ @EF@uJ @E u@ h@JJ @EpXm/7 m@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Xg@@E J@JI8@O@ #pph@T E)IXIX@@ /* E;I8@IXpXE,/zpIJp@FJ@@ @@J@ EyIX@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ %@@E8@EuJ@@ II]I@Tp /*IXpXF/z@  FQI/X XIT/7@@ ]II],@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ,F@@F@ ]EX@^@Fy FyIWzX X/* X2& XI@@IXIJ @LI @I^%I^* @JX@Jp@IXL @IX XI @II^O@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@vy@@Fh @I@@pXF#/z X/X XJp@IIJ@IIXRIX@FF@4=p@]Ch=@  pp)/*I@@ IQp@ Ch@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@h @@@I^%WsF@E#Eh2hFp@k @ @R@LIX^ @ C@JIX@FF@u@ /zX/FIWpX@Q/8@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@|h@@XXs/mXy/]Xy@T =I psXX@@//%XF/bX /#X XQ/>X/F/*XQ/4@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@L@@pX/Fp@/F/8X/F2LX1X*@s@T 1I @/p@TChsX@#p@TCh@C2LX1p@Ch@Cp@Ch@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Wk@@F@sX@@@/F@T I /hX @/FX*@TX @/F@@@@@@@@@@@@@@@ kppkIWz a F@X#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ y@@ @nL@FI @F/* )IL/zI]II;IX@  npp,@  2ppnJp@L@Id ;pp/@T 8Jp@@Id@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@; @@8pp1Jp@@Id I pp2@T IJp@@Id/&XIpp1IJp@O@I&pp4IJp@@I IXppv/sXIpp1@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*4@@IIJp@Q@I&pp7IJp@Rp@Id Iappz@T I^Jp@J@Idpp1Jp@ @Id J pp;Jp@IIXIX@@p I)@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@C@@IhIIkJp@@ I8@ /* I1IIk/z@I>hWh I;@@@@X @@F@u 2g Jp@[@I>II]I@ p J@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ b|@@J@hW# I,/X I=L8@L p@ I@JJL8@L p@ L8@ X@L@/F J#pp%/*XJpp=ppL8@T@Jp1/ J[@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@u@@@JXp1CL8@@J]p1L8@EI/z4@@F@uIX|@C7 J,p1FIXp1III]I@CIX@@  J2p1p1I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@h@@JpJp@W@  J>p1IXL @JXhL8@ I |XhI @JpXJ4@  L1p1JILaI8@ /*I Q/zpX /7@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@T@@  J@ J@ LX@ X JL8@ p@X @ #I u ILR @@h@@@ I uXhI @ ILR @ pX WI@@@ h@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@O@@ I @ ILR @ pX QI8@I@@I@@T 8@  /I @J@ #>h@@J @L @J hF@uFu@ h@hIXL @ Xh@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%@@ 8L8@I | nv@nzI8@ d@@XLL8@ ]7X =|@@ p@ XLJ@ @nu 2&L8@L]7> p@ XLJJ@  p@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]@@L @nyI@@IXI/*p@TChsX LI IhsXh/zIp2apsX /EEhsX@/Ep@TCh@#@Lhp@Wp@@ @F@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@E=@@Lhp@#Ehs|X4|@Ldp4RE s|FX4FX4*@/F L|p1 EX@aJp@CEX@a@ I@@@hI@@bIXR@  Fp1OJX@h @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@4C@@ @ I@sX @ @ JX2@  p1h Jp@C@  p1RIJp@@  p1TIJp@ @  mp1I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@>@@ XJp@@ /7@ #/7p@@ a/7p@Ch@ F@^@@ hIO %@p@LCh@ p@ECh@F@LX@RX s s@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ I7@@ pI@1I k /yX XI8@JI8@ IO]I 8J@RJ@J ^L@@F@u@/7@ |J@JJ@ IOIO@C  @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@/yF@p2F/7IO@p@FCh@EJp@CIO@%p@LCh@ p@ECh@FCh@JX*8/7X/  /F@@aIO@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Fd@@ @p@ECh@JX*8/7 aF@L@I@2hI@,X*8@T pI@1/W@@@@kX*8/WX7/ F@u@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@7@@8psXCh@OX@@/FI^1Wp@@Ch@O @@uIIdL4@22 p@p2 C,@2@/FI@@OEX@ @/ELX@L /EWp@@E4=@/E@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@8L@@OF@4=L@LL@LJ @ J @ @O J@J@RJ@OJ@J@@)pJ@Rp@FCh@E@/XI@@ Ih8X*82 @Obp@Ch@]Ch8@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@s@@OhI@2mp@E@O;X*E@/7@O1p@EX8F@]p8X@@Ovh/7@Oyp@ Eh@ThyCp@Ch@ECh@JChsX@@L @R @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @u@@@ @TJ @JJ @ I@@@@p@E@/7@Okp@ECh@FF@ p@ Ch@LEX@]@ny@nusR@*[p@dCh@Ep/7Ch@uE*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @%@@X@/ELX@  /FJ@ X @/7@/F@/W@@@@@/|F@u@[LX@L 21XL@L 2F@4=F@4= @ s h@@Ih8@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @X@@pIT=@hL@ y2 @@@@F@u@2LX@ Q@1]Ih8IT=LX@X|J@@J@@Ck @ @RL8@ X@L8@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @u%@@Q X@CI)pI@@p47E s7Fp@ @Eh@X @Eh@ @Ch@p@Ch@LX@J Q41# 8@J Q/ITWp@@FX@p@E @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ T@@Q h@@L8@ p@  Q*L @ Qa 2&CL8@XIRvIL8@ p@XQk@QI@@Tp@E @ @IJ1hLX@  RI8@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@Q8I@@ 8@  RI @J@ J @WX@@@Qyh@@@QyI@@L8@IRvJ@ @QuI@sLI@@IJJ@LJX2WLh@E RIgJXsX@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ @@Rp2)FX4a@RLJX2WI@@L8@IsJX2WI@@L8@@IsJX2WL8@ X@JX@JX@I)pLX@F Rm1n 8@F Rm@/W@/W@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @;R@@RhsIT=JXsWJXsX@RdI)p@@@Xu2@/7p@E@@@R1@R 8@ J@ITWs|k;#>k>X@@W7=@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @Ld@@@WX@@Wp@@/= J @LJ @LJ @L@RvJ@@/CJ@L / 8@LWs>XsW@WsXsX@@/W@/W14IRITy@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @d@@X@JI@sXI@JCIR@@@ITa /IIdLp2[Wh@@|@2@/EI@@ITa nvITWp@@F@FX@h@@I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@mE@@pWsChsX@n8,@@ /EIgX=W@@Wp4 s1p@@ @ JXsX]|@@@s  E@ /F@@@Ip2a 2& TX@@Ws>@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Wa@@T @> @@ @W[>@/EIW; TW E@XT[Ip2XTXI @CI@@@/FI^yIp2aI@@T@T^@@@Ip2a 2g /FX@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g8@@T @/FpsWE@2[@T%@nu@/W@/WL @XTmL @C T214@Tn1vITyp@ChsX@n4@@@F8@Ih@@I@2)I)JITy@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@LC@@T8@ny@/WsIT=@/Fp2/X@R@/7@/FI@@J @LIIF@4=@/FITI^ @JITI]I@[EI8@JhWhXIT@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ )@@J @JpX @/FI8@JI8@ InX/]I7I*X^In g J @JJ @JI*X InX >@ p@JJ@J@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@nd@@hJ@ @/F/] nvI7@nz/m nvI7Ip2IXu 8@nz 8a@nzI /y  /y I Lpz@8J @ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@I /y /y I Lpz@J @ =@ p@ /> /FI /y W/y I Lpz@Lp|@Lp|@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@>@@X@8IWz ^yIp2X/F E@X=@n2&Xg/* FIT/z@/FIWzX1/* ^yL@FIXII @FL @Xn@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@h@@p@vIp2X/F E@X=/*IL/z u@ h@JJ@J 8;@/F/*XW@@,I8@J@@@ 2h @@JI8@ ITJ @ p@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@/@@WXWE/zL@ IWvLX@  WL@J , 8=L@ IWv 8>@WLLX@JX,J@ J@J XW]Ip2IXWaJ @I^[@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@4g@@W J @ 87b@/FIWz ^yIp2X/F@n2& XIWz X E@ X/*X X@@@@@IRI 87b@/FIp2a /F@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Ob@@W8L@y@/FIXL @IXXL @XnzL @@XnzL @EXXL @FXXL @ nvIXI@nzpsWF sT 2zp@Wp/ sT@X@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@24@@X4up2aC,u4u@/F2& 1IX%ChsWIX%ChsXX/FIX%@X[p@TCh@Cp2 IX&h@Cp@C@/Fp2hCh@)p@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@a@@@XhCh@gCh@h@) X8@gRX2Q 27FX@hp@Ch@F@gp@gE@2h@X*p@h@nv@gWpsCp@h@nzIXp@/FI @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ /E@@@IhsIX*psXX@@*@^1Is@C8@)@T I[Jh@k8@)/hX/b@7JhsWIhs X*@/h@T@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@7@@X 1I[/bJh@) X@m8@)JhsW g8@gIJh@) sW8@)Jh@g8sW8@/Fy@p8sWEX@*@8F@*Jh22X1Fy@/@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@4R@@p8sWW;=@*Jh24X1Fy@/8sWW8@F@@*@sX@@Jp CpsXp@ @WXsXs@J@*/m  I s@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@,u@@ XsW8sW@/F/]@ @T 1II[JhsWIhs X*@/Fs@C8@k8@m8@/8sW@/F@T /FI@[p@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;)@@ F sT 2zCh@pF@,p@Ch@JhsW2X@/FF8@8sWJh2X1 @/8sWF@n@/F@@@@8@#psXp@F2@F @#Fp@W@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Xk@@88@%p@dp@F2@F sWFp@W @%8@%psWF @# @%E1I^ I]nX[I^FI^ I[hI[TIX/FI^X[QJp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@[@@[@/FJp@@/FXdWp@@E@@T@/E44=E,4=Eh2 @ @/EI]n [ Xd@/FI^FX[hIp2a [hI^ I[hJp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@u/@@[h >@ [vI[L@  JI]WsC>@[sX,@[4X4F@u@[k =@  I[L@  JI]X|]C@[yI8@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@ I8@L@  FIp2IXL8@ X@L@ @[]CJ@ @/F ; ^ @@I8@J @@JI;I^FIW [ @/F @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@)m@@X  2&IXF@/FIX@/F | , @@I]nX%I[ I]h >I[]C XC]C@/F z v @@I]R@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ X2@@p I]R@X@Jp@X@/FI^ @@I[]C@I8@J@J ]@I]O@|J@JJ@@XJ@ ]@@]CJ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@J@@]@/FJ@ /FI[J@I],@]II^ I]R@I]n ][p@C@]]I^F ]] @/EI[@]hI[@]hI]n@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@7m@@] X/FI]h I[ = >]C=@/FI^@@@X@/FX@I@@   ]v @@I@@T]C>@]pIp2I nv@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@h@@]8I^FXnz @ nzIRp@8@WFy@Wp 8sWIJ@nzp2a@^4u 2aE4=@nv@nz4u 2a @L@/FI@s[@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@^F@Xp@XF@Xh@@h@@@XII^[4u44=C,u@/FI@sF@]p@]F@]X@@Eh@TX@@/FCh@@/FI^/@@@IX@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@&4@@^hWp@@@/FI^/@@@IX@FWp@@@/FI@sL@^4L @X/FI@sXL@ J @Wp@@@/FI@@IXIIp2aX@L@I @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@//@@@L@@I @@ @/EL @X/FL@psX @@/FJhsWp@L8sWL @CX/FL@CI @C@/FIdLJ,@28sW@/F@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@4Q@@Xps1@]p@p4Fhs1h4h4h41p@ @WEh@TE@2Q@EL8p@/L817@/L81z@/L82@/L81|p@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=@@p@sL81p@E @RJ @R@ XXmp@C,up=Ch@]p@Ch@CI8@O@/FXmX F@nv@@p2bFXu@nz@@@@Ch@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@v&@@ J8@@J8@J8@J8@Qp@L @p@E @p@ @p F @ @p@#F FE FuWp@@E @TCh@dWsCh FWs>Ch@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 8C@@ Ws=Ch@EWs|Ch@Lp2dFXu h@Q h@ h@ h@@E Fp2&Ch@#2#J|@#F@# nX F@ 4@/Fp@dC,up2Ch@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;%@@ 82# ,@#F@@# yp2OFXu@/FX,;Wp4 s1 @Wp4 s1 @Wp41 s1 @@npX,;4uhs1h41F@u4u@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@4O@@ahs1h4F@u4uhs1h4F@u@npXmC8@1@a^XmC8@1I^FIp2a4uF sFX@1FX@1I@1@/FXmp@Ehs@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@m>@@ah @ @J@/FXmp@FTu @Ip2Xa= 7b b @@IX2Ib ay@@@aWsp2Jk@bIb bWs@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@vb@@b@p@Tk4uF sTF 2vp@E,uE @TF sRF@u4upsR@bQXm4uF sRp@Fp@Jp@ @ @/E I@Xb%EX@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@2@@bX@nv@@@IRL @ nv  E@ 2&F@u b%p@ @ E> 2&@nzX,;Wp@@ @ @n,XmWp4 41Ch@1EX@1@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@bp@nvWps 2zE @TCh@2ppQCh#LCh#XWp41E @2Eh@TCh@sppCh# Eh@TCh# @WE @TppRCh#C8@4Wps2L@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b@@#@1psXhsWp@LW8@@@@@#Lp@L@@@# @#[@1h@shs psXW8@@W@@@#Xp@ @WX@T@nvp2^@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@8/@@# Ch@u@4Wps 2^Eh@sEh@u s1 @@nzX,;Wps 2^h41 s1Eh@T @@n,X,;psW]@@psX]@@@n,Xm@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@T@@#84uW@@@nz@nvXmp@F8@Lh27u@nv@nzXm@@@ IdLWp@@FX@24@2C,u@/F4uF sT 2zp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ b2@@d4u @Whs1Ch@2@/EXd>@nzX,;Wp41 4 @@n,X,;Wp@@ @@n,X,;Wp@@FTuh@@@n,X,;4uF@u@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@dh]@@@n,Xd>W441@41 @@nzXd>4W44 @@nzXd>E @T@dyXd>Eh@T4p@h@8sW@nz@@@@Xm@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;n@@%@Wp4Eh@TWX41Ed>Wp4h4h41@nvX,;Wp4 s1]@@Wp4 s1]@@Wp41h4h4@n,XmWp4h4h41WXs1@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%X@/FW44hs1h4@4W44hs1@4Wh4h4p41@/Fp@X%/p@d4uC,u@/Fp@@%mp2aX%/@/F@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Wb@@%pXmCh@1Ch@d[ @@Ch@%Ch@#puE @#p@Wp@@ @O 2ap@dCh@dF@@#@%vpuE @%Chu4u @14u@C,uF@u@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Ta@@&E%/X,;p@F8@L 2^Ehu@E 4@Eh@T @p@ 2g @O@n,XmC8@&4uF@u @WCh@gEh4@p@Wp@@Ch@#@&&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ k@@& F@gp@gEh4@p@Wp@@ L@&F@@#@& @/FXmp@ @@/F4uF@uXg@h@%TXmC8@1L@1 nu|@@ @1@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@^h@@&8@nzppTXg@gppTXgp@d4uC,u4u @WEh4@Ch@2p@#F@2@/F@@@@XmCh@&C8@hp@Ch@#Ch@dJT@h@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@)]@@g gJd@&F@# 2ap@d@gEgXm4uQ8@@h@@@/EXm8@1EX@1s@CEX@1 X@1] @@@@nzJh@1@nvX,;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#s@@ghWp@@Wh@@npX,;h@@p@@npX,;p@Lh@p@L8@@@npX,;p@L @p@Lp@@@npX*LW@@@nz@nvXm@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@  @@h@X@@X/F@1X*L@@@@nvp@Ch@@nzXmWh@@F8@FX)T@/FXmXh]Xh&@/FFp@RX)T@hX*LXh]Xh&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@s&@@hX@/FE@@@ XX*@hW@@hOC8@yp2gCh@74@yCh@8Xh&Eh]@h#@@hp@8h27@/hFh&2@EF8@FCp@8p@F@@7@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@J@@hp@hvF@y4@yCh@8p2gCh@7Wp/ Eh&I@2)I@@Ws> s F 2nFh21s>p@4uC,uX@8@J^@/ C@hz@/W@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@,@@)@/W@/C@)Qp@WkF8@Csp@^@/ @@@@) @/@@hp@Fp@FCp@zX,[@a@zF@Rp2E@@z@),F@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@/y@@) p@E@2@)*p@Ch@p2nCh@;@zF@@;@)gp@Ch@R@Q @E)T@@@@E@@@J@ J@  /Fp@h@@v@)y@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@vJ@@)8Xu@4uhvEh7@@*Xv@*@*FXv@*EX7@*Eh@TCh7F@uF@@)2@)2@@@@Xmp@E@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@v@@*E*LC8@#X*@#E*L@@@@p@ECh@ X*8Chy@*X*8E@/W@*bp@CE@@T@*[p/WE@/7@EX8@*hh@ECp8@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@7@@*hEX@@p@ECh@dF@LX*82 @*m2hC8@%E@/W@RX*8F@@%@*2@@@@@p@EE@@@kXkT@&p@X@E@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@W@@k@@*|F@Ep2gE @E 2gCh@&p@EFp@2@EFh,p@4,@&RX2 2zp@Wp/ Ch@uE*8@@@@p@JEh,E uT@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@2a@@kXX@EkTFkTF@k[X,[p@Chk>pkCh,@@FC>h@@@k/p,@@@u @,@u p@Ch@EkTp>@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ Cd@@kp 2zChWh/ F@,@@@@EX,@h/7Cp>puEX,@X,@X,E@k#@@@@ @@@@@8@@C @@L,@@Lk@@@@F@p@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@1[@@, Ch;C8z|@@Wp41@s2@,hXm[W8@@p;41,41zE@@Chzp@@,2Chzp2|u2@/J|@@@,8Xm@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@; @@,8C8@@F@@@@/J@@@@C8@>F@@Ch@F@@|@@E,;@@hChzpuE@4C@mIXm[8@Qp@@ @WFuC,upz@@@Chz@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%7@@, 2gCh@|p@Fp@2@EFh,p@Cp@=4,@|Q 2;Ch@|p>RX2Q 27p@|@=h8@E,E@@)X@@,@R@E,[@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Q@@mp@ @WXs1@mu|@@p@ @Wp@pzEm@@mC8@4ps2E 41X@T@n@4Fm[m[p@ @WCh@2p@T@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ |@@mh@nCCh@sp@Wp41Eh@TppWChm>Wp41E @TppXChmWps1 41E @TCh@up2%Xs1X4X4X41@u@n@W2*=@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*[@@n@m>p@sEh@TX@2@m)@4Em[p2RCh@2@2Wps2Ch@s41Ch@u 41p@X4X4hs1hs1 41E @Tp@@n@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@C@@nX4@uC,@sF@@uF@@snXF@@2p@2E@@@nIp41E s2X2%@maXEX@@n*IO@/7p@Rm@C8@@uE@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@/F@uCh@@pzuE@@@@RE@E@EC@E@EE@EF@E@E@EI@EJ@@ @@L@@ @@@@O@@@@QFR@F@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@np@C8@@@>E@@F@uF@u8@@n;F@uF@u82ChzWp@@uk 2][@/F@uF@uF@uF@uChz4u@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@J[@@/ @FT@F@F@FW@FX@F&@@[@@m@@]@@^@@@@ @@a@&b@&#@&d@&%@&&Fg@Fh@F)F*@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@u@@/8k@@,@@m@n@@/@@J@@1@2@Fs@F4@Fu@Fv@F7@F8@Fy@Fz@W@;@]@@=@@>@@@p@Eh@TJh@>@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@[@@pX@W8@@W@@@@@@@@@O@@@@@@Wp@@h@@[*2sJgQg)*[&dg#)J)QT8**[24R)&4s%[4%s&%[[d%2&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@>@@ph%[&s&[&)dQs[Q##[&%s%4[s8g[Qgs[sQg[)QT[%g4ssQg[v)s[4sg4ssQg[g4%X[g)%s[#&Qs%W[&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=)@@1@u)#&v[2%2[vsX[#WXs[Q22W%[&dd&%[s&[h4uQ#%[)s4)%[gQ42[2s&g[%T#[)v%T[RQb2gQ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@J)@@1X[J**T&J%2sJ))&)2**[**#QR#%WJ))&)2JJJ**[**&dd&%JQ##&Qs&%**[**g)&W)QdJQ##&Qs&%**[**24Rg@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@4@@1p)&W)Qd2J)h4)T**[))&)[T4dd8[Q##&Qs&%[%4dR)[TJT#Q)Qs&%[28%sQ7[24R2)gs2[**sXJ%T[%T[@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Q@@2@@@@ @@@@@@@@@@@@@@@@@O@@@;@@@7@@@@@@TLp@@|@@@@@@@p@@>@@@T@@@@@@@kkkk*@@@p@@|@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@p^@@2 @@@@@@/2;>@@@@@@C@@@@@@E@@@F@@@@@@@@@I@@@J@@@|@@C4I@&&&pT@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@k&@@28@@@@@@@@@@@@@@@@F sF sQF sTJJJJ@JJJ@@JJ@@@J@C;@@C@@@@@X @@@@O@@@@@>@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ L@@s@ @@@@ @@@@@@@@@@ @@ @JJJ[@@@@@@@@[JJJp@@ @@@|@8@ CCd@ Eh@EFh@@@Ch@CI8@CJ@@ @@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@a @@shL@ @@C@@CO@@Q@R@@T@@@; @|@|@|@|@|@|@|@|@|@|@|@|@|@|@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@L@@4@@|@|@|@>@>@>@>@@; @|@|@|@|@|@|@|@|@|@|@|@|@|@|@|@|@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@LE@@4X@|@>@>@>@@; @|@|@|@|@|@|@|@|@|@|@|@|@|@|@|@|@|@>@>@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ R@@4p@>@@; @|@|@|@|@|@|@|@|@|@|@|@|@|@|@|@|@|@>@>@>L8@ X@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@O @@u@mIX@FI@sX C @O@k@@@@@@@@@@pk>Ch@EkT@@@@@@vWp7Fp@X@@u^h7@uap)nh7@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@u uXp7h7IF8@Lp7FCh7Ep@Lp7Ch7p7 h7 F8@Lp7JCh7Cp@Lp7LCh7 &@u1pv&s@CCh@Q@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @J[@@u8@u7@^&v[Q7Fu;@Q @F@QEX@Q@v@u7v]s@CCh@h7FvEFv^pv^Ch7Eu@@ vp)nh7v@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @R[@@vs@CCh@Ev @@@@p)/Chv^Ch7s@CEv@@@b4X8@@@@p@@@C@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @E>@@vh@C@J@@@y@E@I@@@@@@@@@@@W8@@@@@@y@E@@I@@@Ch@E@C@@C@Fp@F@@@XEh@E@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @  @@7@@@X@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@X[/% RpsXCh7;E @T7z@RCh7psW@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @z7@@7XE@@@RCh@h@TCp@Cp@TCh7=CpsXp2gCh7|p/=F@7;@7sh7>Fz@FCp7>F@7|@7bF@7=@7CpsWp@Ch@Cp7@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @Ob@@7pX2g@@J2Lp@ 78Cp7;@7bCp@@7%8@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @]=k@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @]]*@@8@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ \ No newline at end of file diff --git a/fortransa/fortran b/fortransa/fortran new file mode 100644 index 0000000..fb4091c --- /dev/null +++ b/fortransa/fortran @@ -0,0 +1,18 @@ +; Run Fortran II system standalone +; listing typewriter output +; binary object output on card-punch +; +set log /users/admin/sds/simlog +set debug /users/admin/sds/simdebug + +!cat fff/fort %1 >bootdeck + +att cr bootdeck +att cp card-punch + +set cpu history=7000 + +dep bpt1 1 +dep bpt2 0 +boot cr + diff --git a/fortransa/fortran_ascii b/fortransa/fortran_ascii new file mode 100644 index 0000000..0783798 --- /dev/null +++ b/fortransa/fortran_ascii @@ -0,0 +1,30 @@ +; Run Fortran II system standalone ascii input +; +set log /users/admin/sds/simlog +set debug /users/admin/sds/simdebug + +!rm %2 + +! cat fortransa/fort >bootdeck +! tools/mkdeck -a %1 >>bootdeck + +att cr bootdeck +att cp %2 +att lpt /users/admin/sds/line-printer + +att mt0 /users/admin/sds/mt0 +att mt1 /users/admin/sds/mt1 +att mt2 /users/admin/sds/mt2 +att mt3 /users/admin/sds/mt3 + +set cpu history=7000 + +; reset bp1; punch object program +dep bpt1 0 +; reset bpt2; type source statements +dep bpt2 0 +;dep bpt3 0 +;dep bpt4 0 + +boot cr + diff --git a/fortransa/fortran_run b/fortransa/fortran_run new file mode 100644 index 0000000..1176fee --- /dev/null +++ b/fortransa/fortran_run @@ -0,0 +1,16 @@ + +set cpu history=7000 +reset cr +! cat fortransa/fldr %1 fortransa/flib_corrected fortransa/ldr_2crd fortransa/frun.bo >rundeck + +; reset bpt1; output on typwewriter +dep bpt1 0 +; set bpt2; produce map +dep bpt2 1 +; set bpt3; type lbel map +dep bpt3 1 +; reset bpt4; no label trace +dep bpt4 0 + +att cr rundeck +boot cr \ No newline at end of file diff --git a/fortransa/frun.bo b/fortransa/frun.bo new file mode 100644 index 0000000..221692c --- /dev/null +++ b/fortransa/frun.bo @@ -0,0 +1 @@ +%^n@@Cu @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]^2@>@@@@@@@JJ@JL@@C@L@@F@ ;@I)@I7@ @ L@J@J@Jm@J*@ @ @z@@@T@ 2O@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]> @IE@W@X@@I @[@@Ey@IW@@E@F@@I@#@I@Fg@&@L@ E@ C@*@L@LF@g@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@mLun@n@/p@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]]2h@@@X@@@@@@@@@@@*@@@@@@,@@@*@@O@@C@@@@@RO@@@@@@=u#QR#@8@@@@@@@@Qv@@T)@ @@>g@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@RR@Ca@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@CJ@@@[@@@@@C@@@@;#&QT%WJ&dg#sJJJ*p@Ch@=Ch@O@R@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@] Cy@aC/QCuC;@Q @@@@@R@@@@@@@Ch ppTpLF F@aQTR@Q @@@@@@@E;#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]g%Q))JJJJ*C8Ch@Jp@Cp@QpRC8@Ehp|@@@@@ s@C@EE@@J@ds@C@1p@Wh@@pRpF@E @* @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]dL)X@@Edp#F@Jh@QF4@Jp@LEXE@yp @@8p@Lp@@=ph@@p@L8@pR@@E#Fy@&L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]@E@@ETp@@pF@Xs%EFpF@Tp C8E@@EmE@@p@dp#W@pF@p@@pEXE@E^F@Jp@L LL@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]RaEF@QE @Qp@LEp@J@=p@LEh@Qp@LE8@J@=Fp@8@EpF@XCm@EEEFp@JQ8@@E2pRE2s@Cn@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@][2E1E@@@C8@O8@Fp@g8@8C@EChE@@8@FE@@@@@C8Ch@Jp@pRC8@p@RFz@pF@|@@@4@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]JFI2  @Ch@QWp@@p@ pEpF@FX@pR2 F @JEh@QF WCp@QF@J @p@LEh@Qp@LE8@J@C,@XEz@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@])Fa@XE@@@F2@X@XC8Ch@Jp@pRC8@p@RFz@h@Jph|@@Fp@h@@@E*Ch@Q1@JFp@Ch@Jk @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]aFyWh@@p@pRpF@p@EhWFX@1@JF2@p@F @QEh@Jh@F WEh@Q@@@X@C8Ez@ap@E@@@Q|@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]hQ|E@@pRE@@@XF2@Fy@pF@XCmXs@EFpF@p E@@pRp@Lp@p@L8@@^C8|@@bgF@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@] J)Ch@I1@JF2@ @Ch@QWp@@2 F @IEh@QF WCp@QF@I @p@LEh@Qp@LE8@IX@E@E@@E@@|p@@@F@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]y>Ch@sJ,@sXE@sFd@@Fp@p@LE@@F @TF,@@E@@C8@2@@C8@sX@2C,@sE@sh@@Cp@sp@X=|@sE@s@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]2L@@@@C8@1ChW @@@L8@@C8@@Ep@/E1@/pRCh@Ep@p@Eh2Xs@1p@p@Ep@@@us@C@u^E@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]781p@p@p@E8@@EXW @8p@@1E4@@X=E@@@@@@C8@1p@8@WFy@Wp @1E=Cp@]Ch@^p@@Ch@sCJ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]g#II4@@X= @]E@sCp@]Ch@^p@@Ch@s4@@X=8@mJh@] h@mE@sCp@]Ch@^p@@Ch@s4@@X=L@]E@sCp@]Ch@^@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@])EIap@@Ch@s4@@X=8@mJh@]Lh@mE@sh@@Cp@F@@F@@@@Is4@@@F@@E@@4@@@F@@E@@Ch@p@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]h IyCh@Eh@TCh@pp@ L@p|@pEX@@JFJ,@ ,@pX@F@pE@p ,@X@F@pE@pp@@J p,h,C8|@@@@@|@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]aXJQ@J4@F@h@@p@h@E@@uQ)Wd@JRXJ;p,@Jap@C8h@yCp@ h@zCp@zF@@z@J/u2ybk4F@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]>EJ)@J/XJ;p,@J/p@C8C,@ |@@p@ @WF@ F@ F@@E@@u2yE@@@@@@C8Ch@Jp@1Fz@p@p=@d@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]/C p@JEJ;XJ;@ FC8p@@ @WC,@@F@@E@@XJ;@ OC8L@@Wp@@hu@v@ WC8@4E@4uQWs&^Is*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@] @ Th)@ ]hbCp@kC8@ap@@Ch@bpWpWJChWJC8Cnp@EhCnp@LX)hCnp@|@@p@ @WChCnJ,Cn8Cd|O@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@] 1@;C8@Lp@Eh@Lp@|@@Wp@Wh@@@LE@@C8@LCh@Rp@Eh@Lp@p@R|@@h@p@@@LE@@C8@L|@@p@L @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]uLIh@@p@L8@@LE@@C8@L|@@p@L @@p@Lp@@LE@@XTaCp@%F@@%@@@p@Q@LLC8WE;p@%@@Q^@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]CLaChWFF@*p@*W@;ChWp@&ChW@LCp@hEX@)@Lp@Ch@)E @hCh@h@LF@WF@Lu@L8pWCh@&@LF@@*gCz@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]s>Ly@LpWJE@W@L>uEX@,@T>XROpWCh@*@Lup@TpWJChWJXTaCpCbp@Ch@vCh@7ChC#Ch@)p@QE@Ck@ >z|@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]O QXTaCp@vp@hCh@7F@@&WEEX@ W;8C8WEC8>mp@Ch>WEF@@%m@Lp@Ch@)@LX*E@J@ )@Lav@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@][ )F@@&XQE@J@ npC*XQ#@ %X*E@J@ 4@LXQh@ pXQ@ ^pC*XQh@ ^XQXQ#@ ^X*XQh@ ^@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@][bEX@,@T>pCbX@k@p@kCh@spCbEh@gCh@4JhCdFz@R8CgJhCgFz@F8CgXQvEXC&@@EX@,@p@kCh@R74@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]s@XCb@pCbCh@EpCbE @k@p@FX@g@/pC*F@@EXQE@m@)pC*Ch@FJhCg p@FFz@F8CgF@@@#zF=%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]*m1Cnp@@p@pX@k@8@p@@@h@@EX@,@XR;XCnJhCg|Cn@EX@,@XR;XX%b7m@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]T^OICnh@@@EX@,@T>pCd78Cdp@Ch@vEX@,@T> ^@EX@,@T> p)ChC#pCgpChE@@@Obk1J=@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]*1Oa@O%pCaE @7Eh@TChWCp@ChCa^p)Ch@sFX@4pXQvpC*EXWC@OupWCp@ChWCp@XQvpWCX@O2)>/@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@] OyX[@X&7gp@@p@@F2@EF8@Fh]CpWCF8@RXQvpWCF8@RXQv@@@@@C8W4@uW@pmy[W@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]JTQCh@QE F2@pFz@F C)4W@p@8@@ XE@m@^pC*Ch@QFL@uWE@mE F@uE @@@@X*E@C*E%QggW@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]|>)@&@@@@p@XFX E*@@@@pmCh@QEX>E/XQE@E/p@Ch>@p@@@@p@4X@g@@Qpm@QEgWvO@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]TpQX/E@C*Ezp@TCh@QEz@@@@hC)XFX EQ@@@@Ch@C8W4@uW@Q@Q F2@pFz@F C)4W@C8@]y^WF@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@] pQp@z@@ p@2@@@]C,W@FL@uWEQL@@@@p@XFXQLEQ#@@@@hC)XF XE@C*@Qsp@#X1@Qs,;;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@])7Q1pm@Q4pC*XQLEQh@@@@ChWIp@ChC&p@gEh@TX@4@Rp@ChC&EQvp@gEh@sE @4@@RLF@@sE@@EQv>h,I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]aRIpWIXQhEQvpC*XQh@Qz@@@@hROp1E@@#@ pmXQhp@Ch@gEX@ @h@ X @Qp@QE@m@R[@Q @b&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]|Ra@@Ra@R4E@XXQL@Rk,pnhCaR)@ @@R7h@Qp@F2@FE@m@Rd@@@p@Ch@gERO@@@u|#E@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]aaRyR)s8@Rn@@@@p@gEhCbCh@4X4p@ChCaCh@X|Ch@mXTp@^ChCap@QE@Ck@ Ch@XTp@E@@@QE @vR*kR@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]hQEhCaE @7E @ChCap@QE@m@ER;JhCg8@p@QE@F@@gX|Ch@/X4XTs@CEX@/@g XCgCpCgpCgEhCa%y@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]s2)Eh@7ChCaJh@8Cgp@QE@m@1ER;uX)ER;@@@@s@CCh@^Ch@8CgpRCh@2E4@@@@XzE@@T@T@=zFk@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@] TE@@@TE|E@>F@@gp@E|@@@@XTETF  nCh7F@^JhCgT@TIF8@8CgJhXT) 78CgF@/n>@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@])T@TI@@@@@2@ETX^FTET@@@@pCh@2s@C8CgXThCgETa@@@@8@pCgp@F2@F @FFp@W8@F#4| @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]T1p@p@F2@F ChFp@W @F8@FpChF @E @FET)XRO@ EX@ @XRO@@@@@@aE@b@@@@Ch@1@Jn@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]JIX@T@phCh@up)h*@Tp&Ch@up@dhgChW@CpWp@EF@@@@JhCgXChCgEX@|@|@O@ ;[sk@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]hua@ v@T|@ %@@OX@O@OL@ >@ 8@T|@ p@@L@ b@L @L@L*@L2@ @ @ @ @ @ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]%Iy@ @ uX)@L@@@ @@@]@@@;&&&g&&&m@@@@@@@@@@@@X@@@7@@@1@@@k@@@Q@@@R@@@@@@@@@W@@@@@@@z@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]1WQT@@@@@z@@@ >@@@&X@@%@@@@@@@@@@I@@#@@@E@@@JI@@@2@@@@@@@@@@@@@g@@@@@@@&@@k@@@gQ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]&v)@C@@@@#@) p@@@JJJJQ@@@@@@@@C@@@@W;@@Op@@ @@@@@@@@@@@@@@8@|@O@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@m)[@W@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@pn@WL@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/fortransa/frun.lo b/fortransa/frun.lo new file mode 100644 index 0000000..c3fa03d --- /dev/null +++ b/fortransa/frun.lo @@ -0,0 +1,1741 @@ + + 1 + 2 * S D S F O R T R A N I I R U N T I M E + 3 * + 4 * D E C E M B E R O , 1 O 6 3 + 5 * + 6 * + 7 * PUNCH OUT RUNTIME FROM 1 TO 1,T 1, TO 15T. + 8 * AND FROM 250 TO FOLLONING ADDRESS: +D 00002674 9 PUNCH2 EQU LAST + 10 * + 11 * + 12 * + 00001 13 BORG 1 + 00001 0 01 00365 14 BRU SYSINI SYSTEM INITIALIZE + 00076 15 BORG 76 + 00076 00000001 16 FPONE DEC 1 + 00077 20000000 17 TAGBIT OCT 20000000 TAG BIT + 18 * + 19 * P R O G R A M M E D O P E R A T O R S + 20 * + 00100 0 01 01212 21 BRU XSDPOP 100 FIXED SET UF DUMMY + 00101 0 01 01214 22 BRU FSDPOP 101 FLBATING SETUP DUMMY + 00102 0 01 00102 23 BRU * 102 (SKR - O10) + 00103 0 01 00103 24 BRU * 103 (SKE - O10) + 00104 0 01 01014 25 BRU XSTPOP 104 FIX AND STORE + 00105 0 01 01023 26 BRU FSTPOP 105 FLOAT AND STORE + 00106 0 01 00106 27 BRU * 106 (XMA - O10) + 00107 0 01 01373 28 BRU STDPOP 107 STORE DOUBLE PRECISION + 00110 0 01 01151 29 BRU DOXPOP 110 DO FIXED + 00111 0 01 01167 30 BRU DOFPOP 111 DO FLOATING + 00112 0 01 01316 31 BRU AGXPOP 112 ASSIGNED GO TO FIXED + 00113 0 01 01314 32 BRU AGFPOP 113 ASSIGNED GO TO FLOATING + 00114 0 01 01237 33 BRU XFAPOP 114 FIXED FIRST ARGUMENT + 00115 0 01 01234 34 BRU FFAPOP 11S FLOATING FIRST ARGUMENT + 00116 0 01 01255 35 BRU XNAPOP 116 FIXED NEXT ARGUMENT + 00117 0 01 01252 36 BRU FNAPOP 11T FLOATING NEXT ARGUMENT + 00120 0 01 01332 37 BRU XIOPOP 120 FIXED INPUT/OUTPUT + 00121 0 01 01334 38 BRU FIOPOP 121 FLOATING INPUT/OUT *UT + 00122 0 01 01072 39 BRU LTFPOP 122 LBAD THEN FLAT + 00123 0 01 01000 40 BRU LTXPOP 123 LBAD THEN FIX + 00124 0 01 00124 41 BRU * 124 (MUL + O1D) + 00125 0 01 01362 42 BRU LDPPOP 125 LOAD DOUBLE PRECISION + 00126 0 01 01105 43 BRU FTAPOP 126 FLOAT THEN ADD + 00127 0 01 00127 44 BRU * 12T (DIY - 910) + 00130 0 01 00130 45 BRU * 130 (SKB - 910) + 00131 0 01 00423 46 BRU FLAPOP 131 FLOATING ADD + 00132 0 01 01115 47 BRU FTSPOP 132 FLOAT THEN SUBTRACT + 00133 0 01 00133 48 BRU * 133 IADM 10) + 00134 0 01 00134 49 BRU * 134 (CA( + O1) + 00135 0 01 00571 50 BRU FLSPOP 135 FLOATING SUBTRACT + 00136 0 01 01127 51 BRU FTMPOP 136 FLOAT THEN MULTIPLY + 00137 0 01 00137 52 BRU * 13T (CXA - 910) + 00140 0 01 01005 53 BRU XMPPOP 140 FIXED MULTIPLY + 00141 0 01 00600 54 BRU FLMPOP 141 FLOATING MULTIPLY + 00142 0 01 01137 55 BRU FTDPOP 142 FLOAT THEN DIVIDE + 00143 0 01 00143 56 BRU * 143 (STE - 910) + 00144 0 01 01011 57 BRU XDVPOP 144 FIXED DIVIDE + 00145 0 01 00647 58 BRU FLDPOP 145 FLOATING DIVIDE + 00146 0 01 00146 59 BRU * 146 (CHA - 910) + 00147 0 01 00714 60 BRU FLNPOP 147 FLOATING NEGATE + 00150 0 01 01305 61 BRU ALXPOP 150 ASSIQN LABEL TO FIXED + 00151 0 01 01303 62 BRU ALFPOP 151 ASSIQN LABEL TO FLOATING + 00152 0 01 00152 63 BRU * 152 (LDE - 91O) + 00153 0 01 01416 64 BRU DPSPOP 153 DOUBLE PRECISION SUBTRACT + 00154 0 01 01406 65 BRU DPAPOP 154 DOUBLE PRECISION ADD + 00155 0 01 00747 66 BRU DPMPOP 155 DOUBLE PRECISION MULTIPLY + 00156 0 01 00156 67 BRU * 156 (CBX - 910) + 00157 0 01 00157 68 BRU * 157 (CXB - 910) + 69 PAGE + 00250 70 BORG 250 + 71 *DEC 24 + 00250 00000030 72 DEC24 DEC 24 + 73 *FOUR + 00251 00000004 74 FOUR DEC 4 + 75 *S 14 BIT + 00252 00001000 76 S14BIT OCT 1000 + 77 *LIVE SKS MOP + 00253 0 40 20000 78 SKSMOP SKS 20000 20000 + 79 *FLOAT IND + 00254 01000000 80 FLIND OCT 1000000 + 81 *END FIELD CHAR + 00000255 82 ENDFLD EQU * + 83 *CAR RETURN + 00255 52000000 84 CARRET OCT 52000000 + 85 *CHAR 4 MASK + 00256 00000077 86 CH4MSK OCT 77 + 00257 77777754 87 DEC -20 + 00260 00000052 88 OCT 00000052 + 89 *DEC 79 + 00261 00000117 90 DEC79 DEC 79 + 00262 00000203 91 DEC 131 + 92 *LIVE BRU MOP + 00263 0 01 00000 93 BRUMOP BRU 0 + 00264 0 00 02217 94 HLT LNIOR LINE IN/OUT AND RETURN + 95 *ERROR LINK + 00265 0 00 00401 96 ERRLNK HLT ERROR ERROR + 97 *FIX SPROG LINK + 00266 0 00 01031 98 FIXL HLT FXBNDA FIX BANDA + 99 *FLOAT SPROG LINK + 00267 0 00 01075 100 FLOATL HLT FLOATA FLOAT A + 101 *UNDEFINED LABEL + 00270 0 43 40265 102 UNDEF BRM* ERRLNK ERRR LINK + 00271 43212243 103 BCI 1,LABL + 00272 0 01 00270 104 BRU UNDEF UNDEFINED LABEL + 105 *COUNT TEST LINK + 00273 0 00 00000 106 CNTTLN HLT + 107 *ONE AND TAG BIT + 00274 20000001 108 TAGONE OCT 20000001 + 00275 0 00 02166 109 HLT STIFOK STO IO CHAR IF OK + 00276 0 00 02451 110 HLT DBLXMP DOUBLE FIXED MULT + 00277 0 01 01534 111 BRU CNTTST COUNT TEST + 112 *IO BUFFER + 00300 113 IOBUF BSS 33 + 114 *END BUFFR + 00000341 115 ENDBUF EQU * + 116 *CHARACTERISTIC + 00341 0 00 00000 117 CHARIS HLT + 118 *WIDTH + 00342 0 00 00000 119 WDTH HLT + 120 *4 IF E OUT + 00343 0 00 00000 121 4IFEOT HLT + 122 *INPUT WORD 1 + 00344 0 00 00000 123 INWRD1 HLT + 124 *INPUT WORD2 + 00345 0 00 00000 125 INWRD2 HLT + 126 *END FIELD FLAG + 00346 0 00 00000 127 ENDFFL HLT + 128 *CENTRAL 1 + 00347 0 00 00000 129 CENRL1 HLT + 130 *CENTRAL2 + 00350 0 00 00000 131 CENRL2 HLT + 132 *THREE + 00351 00000003 133 THREE DEC 3 + 134 *BLANK + 00352 12000000 135 BLANK OCT 12000000 + 136 *PERI3D + 00353 33000000 137 PERIOD BCI 1,.000 + 138 *LARGEST POS MANTISA + 00000354 139 BIGP EQU * + 140 *ALL BUT S + 00354 37777777 141 ALBUTS OCT 37777777 + 142 *CHARIS UPPER POS LIMIT + 00000355 143 OCT377 EQU * + 144 *POS LIMIT + 00355 00000377 145 OCT 00000377 + 146 *M ARG ADR + 00356 0 00 00000 147 MARGAD HLT + 148 *MINUS 5 + 00357 77777773 149 MINUS5 OCT 77777773 + 00360 43462124 150 BCI 1,LOAD + 00361 31452712 151 OCT 31452712 + 00362 23464447 152 BCI 1,COMP + 00363 43256325 153 BCI 1,LETE + 00364 12121252 154 OCT 12121252 + 155 PAGE + 156 *SYSTEM INITIALIZE + 00365 0 46 00001 157 SYSINI CLA + 00366 0 35 00075 158 STA SENSLW SENSE LIGHT WORD + 00367 0 35 00017 159 STA OVFIND OVERFLOW IND + 00370 0 02 20004 160 DIR 20004 + 00371 0 02 02641 161 TYPW 1,4 EOM 2641 + 00372 0 71 00357 162 LDX MINUS5 MINUS 5 + 00373 2 12 00365 163 Q1 MIW SYSINI,2 SYSTEM INITIALIZE + 00374 0 41 00373 164 BRX Q1 $1 + 00375 0 02 14000 165 TOPW 14000 + 00376 0 00 00000 166 HLT + 00377 2 20 10000 167 NOP 4096,2 10000 + 00400 0 01 03216 168 BRU MNPRST MAIN PROG START + 169 *ERROR + 00401 0 00 00000 170 ERROR HLT + 00402 0 35 00415 171 STA Q2 $1 + 00403 0 76 02660 172 LDA NEGBEX NEG EXP BIT + 00404 0 72 40401 173 SKA* ERROR ERROR + 00405 0 76 02614 174 LDA NOPMOP LIV NOP MOP + 00406 0 62 00415 175 XMA Q2 $1 + 00407 0 61 00401 176 MIN ERROR ERROR + 00410 0 02 02641 177 TYPW 1,4 EOM 2641 + 00411 0 12 00421 178 MIW Q4 $3 + 00412 0 12 40401 179 MIW* ERROR ERROR + 00413 0 12 00422 180 MIW Q5 $4 + 00414 0 02 14000 181 TOPW + 00415 0 00 00000 182 Q2 HLT + 00416 0 40 21000 183 Q3 BRTW 21000 + 00417 0 01 00416 184 BRU Q3 $2 + 00420 0 51 00401 185 BRR ERROR ERROR + 00421 25515112 186 Q4 BCI 1,ERR + 00422 12121252 187 Q5 OCT 12121252 + 00423 0 37 02677 188 FLAPOP STX XREG + 00424 0 35 00012 189 STA TEMPA A,B NON ZERO + 00425 0 46 00200 190 CXA + 00426 0 36 00021 191 STB ZM B + 00427 0 46 00122 192 STE + 00430 0 37 00010 193 STX ZE SIGN EXTENDED EXP(A,B) + 00431 0 55 02677 194 ADD XREG DOUBLE X + 00432 0 46 00401 195 AXC + 00433 0 77 40000 196 EAX* 0 PROCURE ARGUMENT ADDRESS + 00434 2 50 00001 197 SKE 1,2 + 00435 0 01 00440 198 BRU Q5B + 00436 0 46 30003 199 CLR M=ZERO + 00437 0 01 00525 200 BRU FLAD + 00440 0 50 00012 201 Q5B SKE TEMPA + 00441 0 01 00444 202 BRU Q5A + 00442 0 46 30003 203 CLR A,B=ZERO + 00443 0 01 00461 204 BRU FLAC + 00444 0 46 00200 205 Q5A CXA M NON ZERO + 00445 2 75 00000 206 LDB 0,2 + 00446 0 46 00122 207 STE EXTEND SIGN OF EXP (4) 20S + 00447 0 46 00600 208 XXA + 00450 0 54 00010 209 SUB ZE EXP (M)-EXP(A) + 00451 0 73 00026 210 SKG ONES + 00452 0 01 00516 211 BRU FLAGM /A/ .GR. /M/ + 00453 0 72 02644 212 SKA M770 /A/ .LE. /M/ + 00454 0 76 02643 213 LDA 39D MAX SHIFT = 39 + 00455 0 62 00012 214 XMA TEMPA + 00456 0 75 00021 215 LDB ZM + 00457 0 66 40012 216 RSH* TEMPA ALIGN FRACTIONS + 00460 0 46 00014 217 XAB + 00461 0 53 00577 218 FLAC SKN FLAG FLAG NEGATIVE IFF FLS + 00462 0 01 00471 219 BRU Q5C FLA + 00463 0 16 00777 220 MRG 0777 FLS + 00464 2 54 00000 221 SUB 0,2 + 00465 0 17 00777 222 EOR 0777 + 00466 0 46 00014 223 XAB + 00467 2 56 00001 224 SUC 1,2 + 00470 0 01 00475 225 BRU FLAF + 00471 0 46 00101 226 Q5C RCH 101 CLA(E) + 00472 2 55 00000 227 ADD 0,2 + 00473 0 46 00014 228 XAB + 00474 2 57 00001 229 ADC 1,2 + 00475 0 46 00122 230 FLAF STE + 00476 0 40 20001 231 FLAOVT OVT + 00477 0 01 00543 232 BRU OFSET RIGHT NORMALIZE + 00500 0 67 10046 233 NOD 38 LEFT NORMALIZE + 00501 0 72 00026 234 SKA ONES + 00502 0 01 00504 235 BRU FLANZ + 00503 2 46 00000 236 CLX + 00504 0 46 00600 237 FLANZ XXA + 00505 0 73 02663 238 SKG M2570 TEST FOR EXPONENT UNDERFLOW + 00506 4 51 00506 239 FLAOF BRR FLAOF,4 + 00507 0 46 00600 240 FLAOK XXA + 00510 2 46 00140 241 FLAX LDE 0,2 LDE,CLX + 00511 0 37 00577 242 STX FLAG RESET FLA/FLS FLAG + 00512 0 71 02677 243 LDX XREG + 00513 0 40 20001 244 OVT + 00514 0 01 00555 245 BRU OFLO + 00515 0 51 00000 246 BRR 0 + 00516 0 46 01000 247 FLAGM CNA FORCE EXP DIFF POSITIVE + 00517 0 72 02644 248 SKA M770 SKIP IF LESS THAN 64 + 00520 0 76 02643 249 LDA 39D + 00521 2 71 00001 250 LDX 1,2 + 00522 0 46 00600 251 XXA + 00523 2 66 00000 252 RSH 0,2 ALIGN FRACTIONS + 00524 0 46 00102 253 RCH 102 + 00525 0 53 00577 254 FLAD SKN FLAG + 00526 0 01 00536 255 BRU Q5D FLA + 00527 0 62 00012 256 XMA TEMPA FLS + 00530 0 46 00014 257 XAB + 00531 0 62 00021 258 XMA ZM + 00532 0 54 00021 259 SUB ZM + 00533 0 46 00014 260 XAB + 00534 0 56 00012 261 SUC TEMPA + 00535 0 01 00475 262 BRU FLAF + 00536 0 46 00014 263 Q5D XAB FLA + 00537 0 55 00021 264 ADD ZM + 00540 0 46 00014 265 XAB + 00541 0 57 00012 266 ADC TEMPA + 00542 0 01 00475 267 BRU FLAF + 00543 0 66 00001 268 OFSET RSH 1 RIGHT NORMALIZE + 00544 0 17 00025 269 EOR MINUS + 00545 0 41 00510 270 BRX FLAX + 00546 0 46 00600 271 XXA + 00547 0 73 00355 272 SKG 255D CHECK FOR OVERFLOW + 00550 0 01 00507 273 BRU FLAOK + 00551 0 51 00506 274 BRR FLAOF + 00552 0 76 00012 275 DIVOF LDA TEMPA + 00553 2 17 00001 276 EOR 1,2 DETERMINE SIGN OF QUOTIENT + 00554 0 01 00562 277 BRU Q5E OVERFLOW + 00555 0 46 00122 278 OFLO STE + 00556 0 41 00562 279 BRX Q5E OVERFLOW + 00557 0 46 30003 280 CLR UNDERFLOW + 00560 0 71 02677 281 LDX XREG + 00561 0 51 00000 282 BRR 0 + 00562 0 71 00025 283 Q5E LDX SIGN SET OVERFLOW INDICATOR + 00563 0 37 00017 284 STX OFFLAG + 00564 0 17 00025 285 EOR MINUS + 00565 0 66 00047 286 RSH 39 + 00566 0 17 00025 287 EOR MINUS + 00567 0 77 00377 288 EAX 255 + 00570 0 01 00510 289 BRU FLAX + 00571 0 35 00577 290 FLSPOP STA FLAG + 00572 0 72 00025 291 SKA MINUS + 00573 0 01 00423 292 BRU FLAPOP + 00574 0 17 00026 293 EOR ONES + 00575 0 62 00577 294 XMA FLAG + 00576 0 01 00423 295 BRU FLAPOP + 00577 0 00 00000 296 FLAG PZE 0 + 00600 0 37 02677 297 FLMPOP STX XREG + 00601 0 35 00012 298 STA TEMPA AH + 00602 0 46 00200 299 CXA + 00603 0 46 00122 300 STE EXTEND EXP (A,B) + 00604 0 37 00010 301 STX ZE + 00605 0 46 00022 302 BXC + 00606 0 67 20001 303 LCY 1 DOUBLE X + 00607 0 46 00600 304 XXA + 00610 0 77 40000 305 EAX* 0 + 00611 0 46 24002 306 LGR 2 FORCE + + 00612 2 64 00001 307 MUL 1,2 + 00613 0 35 00021 308 STA ZM AL * MH + 00614 2 76 00000 309 LDA 0,2 + 00615 0 46 00040 310 CXB + 00616 0 46 00501 311 AXCE AXC(E) KENR + 00617 0 46 00600 312 XXA EXTEND EXP (M) + 00620 0 63 00010 313 ADM ZE AE+ME = EXP (BSSULT) + 00621 0 46 00222 314 BXAC CXA, BXC + 00622 0 46 24002 315 LGR 2 FORCE + + 00623 0 64 00012 316 MUL TEMPA AH * ML + 00624 0 55 00021 317 ADD ZM AH * ML + AL * MH + 00625 0 64 02627 318 MUL TWO SCALE + 00626 0 36 00021 319 STB ZM + 00627 0 62 00012 320 XMA TEMPA + 00630 2 64 00001 321 MUL 1,2 AH * MH + 00631 0 46 00014 322 XAB + 00632 0 55 00021 323 ADD ZM + 00633 0 46 00014 324 XAB + 00634 0 57 00012 325 ADC TEMPA + 00635 0 71 00010 326 LDX ZE EXP (BSSULT) + 00636 0 72 00354 327 SKA MAXPOS + 00637 0 01 00730 328 BRU FLCOM ALL RIGHT TO NORMALIZE + 00640 0 52 02672 329 SKB MLONES + 00641 0 01 00730 330 BRU FLCOM NOT -1 OR 0 + 00642 0 50 00025 331 SKE MINUS SEPARATE -1 FROM 0 + 00643 0 01 00737 332 BRU FLMX 0, EXIT + 00644 0 66 20001 333 RCY 1 -1, RIGHT NORMALIZE + 00645 0 41 00730 334 BRX FLCOM + 00646 0 01 00730 335 BRU FLCOM + 00647 0 37 02677 336 FLDPOP STX XREG + 00650 0 35 00012 337 STA TEMPA + 00651 0 46 00200 338 CXA + 00652 0 46 00122 339 STE EXTEND EXP (A,B) + 00653 0 37 00010 340 STX ZE + 00654 0 46 00022 341 BXC + 00655 0 67 20001 342 LCY 1 (AH+AL)/(MH+ML)= + 00656 0 75 00012 343 LDB TEMPA ((AH+AL)/MH)*(1-ML/MH)= + 00657 0 46 00450 344 AXBA (Q+R/MH)*(1-ML/MH)= + 00660 0 77 40000 345 EAX* 0 Q+(R-Q*ML)/MH + 00661 0 66 00002 346 RSH 2 + 00662 2 65 00001 347 DIV 1,2 + 00663 0 40 20001 348 OVT + 00664 0 01 00552 349 BRU DIVOF OVERFLOW IFF DIVISOR =0 + 00665 0 35 00021 350 STA ZM SINGLE PRECISION QUOTIENT=Q + 00666 0 46 10012 351 BAC + 00667 0 66 00001 352 RSH 1 + 00670 0 35 00012 353 STA TEMPA REMAINDER = R + 00671 2 75 00000 354 LDB 0,2 + 00672 0 46 00200 355 CXA + 00673 0 46 00122 356 STE EXTEND EXP (M) + 00674 0 46 00600 357 XXA + 00675 0 46 01000 358 CNA EXP(BSSULT)=EXP(A)+2-EXP(M) + 00676 0 55 02627 359 ADD TWO + 00677 0 63 00010 360 ADM ZE + 00700 0 46 10012 361 BAC + 00701 0 66 20002 362 RCY 2 + 00702 0 46 01000 363 CNA -ML + 00703 0 64 00021 364 MUL ZM Q + 00704 0 55 00012 365 ADD TEMPA R- Q*ML + 00705 2 65 00001 366 DIV 1,2 (R-Q*ML)/MH + 00706 0 64 02627 367 MUL TWO SCALE + 00707 0 55 00021 368 ADD ZM Q+(R-Q*ML)/MH + 00710 0 71 00010 369 LDX ZE EXP(BSSULT) + 00711 0 72 00026 370 SKA ONES + 00712 0 01 00730 371 BRU FLCOM + 00713 0 01 00737 372 BRU FLMX + 00714 0 37 02677 373 FLNPOP STX XREG + 00715 0 52 02672 374 SKB MLONES + 00716 0 01 00741 375 BRU FLNA LESS SIG. HALF NON ZERO + 00717 0 46 01000 376 CNA + 00720 0 50 00023 377 SKE ZERO + 00721 0 72 02674 378 SKA QQQ1S + 00722 0 51 00000 379 BRR 0 + 00723 0 46 00122 380 STE + 00724 0 50 00025 381 SKE MINUS PLACE SIGN BIT IN B + 00725 0 01 00730 382 BRU FLCOM + 00726 0 66 20001 383 RCY 1 SIGN BIT TO A + 00727 0 41 00731 384 BRX Q5F + 00730 0 67 10004 385 FLCOM NOD 4 NORMALIZE RESULT + 00731 0 46 00600 386 Q5F XXA + 00732 0 73 00355 387 SKG 255D CHICK FOR EXPONENT + 00733 0 73 02663 388 SKG M2570 OVERFLOW/UNDERFLOW + 00734 0 01 00506 389 BRU FLAOF + 00735 0 46 00600 390 XXA + 00736 0 46 00140 391 FLNB LDE + 00737 0 71 02677 392 FLMX LDX XREG + 00740 0 51 00000 393 BRR 0 + 00741 0 46 00122 394 FLNA STE + 00742 0 46 00014 395 XAB + 00743 0 46 01000 396 CNA + 00744 0 46 00014 397 XAB + 00745 0 17 00026 398 EOR ONES + 00746 0 01 00736 399 BRU FLNB + 400 *DPM POP + 00747 0 37 02677 401 DPMPOP STX XREG + 00750 0 77 40000 402 EAX* 0 + 00751 0 35 00011 403 STA XM + 00752 0 46 10012 404 BAC + 00753 0 66 20002 405 RCY 2 + 00754 2 64 00001 406 MUL 1,2 + 00755 0 35 00021 407 STA ZM + 00756 2 76 00000 408 LDA 0,2 + 00757 0 46 24002 409 LGR 2 + 00760 0 64 00011 410 MUL XM + 00761 0 55 00021 411 ADD ZM + 00762 0 64 02627 412 MUL TWO + 00763 0 36 00021 413 STB ZM + 00764 0 62 00011 414 XMA XM + 00765 2 64 00001 415 MUL 1,2 + 00766 0 46 00014 416 XAB + 00767 0 55 00021 417 ADD ZM + 00770 0 46 00014 418 XAB + 00771 0 57 00011 419 ADC XM + 00772 0 71 02677 420 LDX XREG + 00773 0 73 00025 421 SKG MINUS + 00774 0 52 00026 422 Q28 SKB ONES + 00775 0 51 00000 423 BRR 0 + 00776 0 51 00777 424 BRR Q29 *2 + 00777 0 00 00774 425 Q29 HLT Q28 + 426 *LTX POP + 01000 0 76 00000 427 LTXPOP LDA 0 + 01001 0 35 00063 428 STA EXIT + 01002 1 25 40063 429 LDP* EXIT + 01003 0 43 01031 430 BRM FXBNDA FIX BANDA + 01004 0 51 00063 431 BRR EXIT + 432 *XMP POP + 01005 0 64 40000 433 XMPPOP MUL* 0 0 + 01006 0 66 00001 434 RSH 1 1 + 01007 0 46 00014 435 XAB NO + 01010 0 51 00000 436 BRR 0 0 + 437 *XDV POP + 01011 0 64 00024 438 XDVPOP MUL RTSH23 RT SHIFTER 23 + 01012 0 65 40000 439 DIV* 0 0 + 01013 0 51 00000 440 BRR 0 0 + 441 *XST POP + 01014 0 37 00062 442 XSTPOP STX REG + 01015 0 71 00000 443 LDX 0 + 01016 0 37 00063 444 STX EXIT + 01017 0 43 01031 445 BRM FXBNDA FIX B AND A + 01020 0 71 00062 446 LDX REG + 01021 0 35 40063 447 STA* EXIT + 01022 0 51 00063 448 BRR EXIT + 449 *FST POP + 01023 0 75 00000 450 FSTPOP LDB 0 + 01024 0 36 00063 451 STB EXIT + 01025 0 46 00002 452 CLB + 01026 0 43 01075 453 BRM FLOATA FLOAT A + 01027 1 07 40063 454 STD* EXIT + 01030 0 51 00063 455 BRR EXIT + 456 *FIX BANDA + 01031 0 00 00000 457 FXBNDA HLT + 01032 0 37 00061 458 STX FXBAXR FIX BANDA XREG + 01033 0 35 02713 459 STA FIXTP2 FIX TEMP 2 + 01034 0 71 00000 460 LDX 0 0 + 01035 0 72 00025 461 SKA SIGN SIGN + 01036 1 47 00000 462 FLN + 01037 0 37 00000 463 STX 0 0 + 01040 0 52 02660 464 SKB NEGBEX NEG EXP BIT + 01041 0 01 01057 465 BRU Q31 + 01042 0 52 02661 466 SKB EXB78 EXP BITS 7AND8 + 01043 0 01 01057 467 BRU Q31 + 01044 0 46 00122 468 STE + 01045 0 35 00005 469 STA FIXTMP FIX TEMP + 01046 0 46 00200 470 CXA + 01047 0 46 01000 471 CNA + 01050 0 55 02662 472 ADD OCT27 OCT27 + 01051 0 73 02663 473 SKG SMALNG SMALLEST NEGATIVE + 01052 0 01 01061 474 BRU Q32 + 01053 0 46 00400 475 CAX + 01054 0 76 00005 476 LDA FIXTMP FIX TEMP + 01055 2 66 00000 477 RSH 0,2 + 01056 0 01 01065 478 BRU Q33 $4 + 01057 0 46 30003 479 Q31 CLR + 01060 0 01 01065 480 BRU Q33 + 01061 0 46 01000 481 Q32 CNA + 01062 0 46 00400 482 CAX + 01063 0 76 00005 483 LDA FIXTMP + 01064 2 67 00000 484 LSH 0,2 + 01065 0 53 02713 485 Q33 SKN FIXTP2 FIX TEMP 2 + 01066 0 01 01070 486 BRU Q34 $5 + 01067 0 46 01000 487 CNA + 01070 0 71 00061 488 Q34 LDX FXBAXR FIX BANDA XREG + 01071 0 51 01031 489 BRR FXBNDA + 490 *LTF POP + 01072 0 76 40000 491 LTFPOP LDA* 0 + 01073 0 43 01075 492 BRM FLOATA FLOAT A + 01074 0 51 00000 493 BRR 0 0 + 494 *FLOAT A + 01075 0 00 00000 495 FLOATA HLT + 01076 0 37 00061 496 STX FLAXRG FLOAT A XREG + 01077 0 46 00002 497 CLB + 01100 0 77 00027 498 EAX 23 + 01101 0 67 10027 499 NOD 23 27 + 01102 0 46 00140 500 LDE + 01103 0 71 00061 501 LDX FLAXRG FLOAT A XREG + 01104 0 51 01075 502 BRR FLOATA FLOAT A + 503 *FTA POP + 01105 0 36 00035 504 FTAPOP STB PART1 + 01106 0 35 00036 505 STA PART2 + 01107 0 76 00000 506 LDA 0 0 + 01110 0 35 00063 507 STA EXIT + 01111 0 76 40000 508 LDA* 0 0 + 01112 0 43 01075 509 BRM FLOATA FLOAT A + 01113 1 31 00035 510 FLA PART1 + 01114 0 51 00063 511 BRR EXIT + 512 * FTS POP + 01115 0 36 00035 513 FTSPOP STB PART1 + 01116 0 35 00036 514 STA PART2 + 01117 0 76 00000 515 LDA 0 0 + 01120 0 35 00063 516 STA EXIT + 01121 0 76 40000 517 LDA* 0 0 + 01122 0 43 01075 518 BRM FLOATA FLOAT A + 01123 1 07 00055 519 STD FLTEMP + 01124 1 25 00035 520 LDP PART1 + 01125 1 35 00055 521 FLS FLTEMP + 01126 0 51 00063 522 BRR EXIT + 523 *FTM POP + 01127 0 36 00035 524 FTMPOP STB PART1 + 01130 0 35 00036 525 STA PART2 + 01131 0 76 00000 526 LDA 0 + 01132 0 35 00063 527 STA EXIT + 01133 0 76 40000 528 LDA* 0 + 01134 0 43 01075 529 BRM FLOATA FLOAT A + 01135 1 41 00035 530 FLM PART1 + 01136 0 51 00063 531 BRR EXIT + 532 *FTD POP + 01137 0 36 00035 533 FTDPOP STB PART1 + 01140 0 35 00036 534 STA PART2 + 01141 0 76 00000 535 LDA 0 + 01142 0 35 00063 536 STA EXIT + 01143 0 76 40000 537 LDA* 0 0 + 01144 0 43 01075 538 BRM FLOATA FLOAT A + 01145 1 07 00055 539 STD FLTEMP + 01146 1 25 00035 540 LDP PART1 + 01147 1 45 00055 541 FLD FLTEMP + 01150 0 51 00063 542 BRR EXIT + 543 *DOX POP + 01151 0 75 00000 544 DOXPOP LDB 0 0 + 01152 0 36 00037 545 STB DOXTEM DOX TEMP + 01153 0 61 00000 546 MIN 0 0 + 01154 0 63 40000 547 ADM* 0 O + 01155 0 72 00025 548 SKA SIGNBT SIGN BIT + 01156 0 01 01163 549 BRU Q35 $1 + 01157 0 76 40000 550 LDA* 0 O + 01160 0 73 40037 551 SKG* DOXTEM DOX TEMP + 01161 0 61 00000 552 MIN 0 0 + 01162 0 51 00000 553 BRR 0 0 + 01163 0 76 40037 554 Q35 LDA* DOXTEM DOX TEMP + 01164 0 73 40000 555 SKG* 0 O + 01165 0 61 00000 556 MIN 0 0 + 01166 0 51 00000 557 BRR 0 O + 558 *DOF POP + 01167 0 35 00037 559 DOFPOP STA DOFTEM DOF TEMP + 01170 0 76 00000 560 LDA 0 0 + 01171 0 35 00004 561 STA DOFTAD DOF TEMP ADR + 01172 0 55 00024 562 ADD ONE ONE + 01173 0 35 00060 563 STA DOFXIT DOF EXIT + 01174 0 76 00037 564 LDA DOFTEM DOF TEMP + 01175 1 31 40060 565 FLA* DOFXIT DOF EXIT + 01176 1 07 40060 566 STD* DOFXIT DOF EXIT + 01177 0 53 00037 567 SKN DOFTEM DOF TEMP + 01200 0 01 01206 568 BRU Q36 *1 + 01201 1 25 40004 569 LDP* DOFTAD DOF TEMP ADR + 01202 1 35 40060 570 FLS* DOFXIT DOF EXIT + 01203 0 73 00023 571 SKG ZERO ZERO + 01204 0 61 00060 572 MIN DOFXIT DOF EXIT + 01205 0 51 00060 573 BRR DOFXIT DOF EXIT + 01206 1 35 40004 574 Q36 FLS* DOFTAD DOF TEMP ADR + 01207 0 73 00023 575 SKG ZERO ZERO + 01210 0 61 00060 576 MIN DOFXIT DOF EXIT + 01211 0 51 00060 577 BRR DOFXIT DOF EXIT + 578 *XSD POP + 01212 0 46 00001 579 XSDPOP CLA + 01213 0 01 01215 580 BRU Q37 *1 + 581 *FSD POP + 01214 0 76 00254 582 FSDPOP LDA FLIND FLOAT IND + 01215 0 75 00254 583 Q37 LDB FLIND FLOAT IND + 01216 0 37 02677 584 STX XREG XREG + 01217 0 77 40000 585 EAX* 0 0 + 01220 0 70 40016 586 SKM* EADR2 EADR 2 + 01221 0 01 01231 587 BRU Q39 *2 + 01222 0 16 40016 588 Q38 MRG* EADR2 EADR 2 + 01223 0 61 00016 589 MIN EADR2 EADR 2 + 01224 2 35 00000 590 STA 0,2 0 + 01225 0 16 00077 591 MRG TAGBIT TAG BIT + 01226 2 35 00001 592 STA 1,2 1 + 01227 0 71 02677 593 LDX XREG XREG + 01230 0 51 00000 594 BRR 0 0 + 01231 0 43 40265 595 Q39 BRM* ERRLNK ERROR LINK + 01232 21512744 596 BCI 1,ARGM + 01233 0 01 01222 597 BRU Q38 + 598 *FFA POP + 01234 0 43 01273 599 FFAPOP BRM DBLXRG DOUBLE XREG + 01235 0 76 00254 600 LDA FLIND FLOAT IND + 01236 0 01 01241 601 BRU Q40 *1 + 602 *XFA POP + 01237 0 46 00001 603 XFAPOP CLA + 01240 0 37 02677 604 STX XREG XREG + 01241 0 75 00071 605 Q40 LDB EOADR EO ADR + 01242 0 36 00015 606 STB EADR1 EADR 1 + 01243 0 75 00072 607 LDB EOSIZE EO SIZE + 01244 0 36 00072 608 STB EOSIZE EO SIZE TEMP + 01245 0 60 00072 609 SKR EOSIZE EO SIZE TEMP + 01246 0 01 01257 610 BRU Q41 $2 + 01247 0 43 40265 611 BRM* ERRLNK ERROR LINK + 01250 62317125 612 BCI 1,SIZE + 01251 0 01 01257 613 BRU Q41 + 614 *FNA POP + 01252 0 43 01273 615 FNAPOP BRM DBLXRG DOUBLE XREG + 01253 0 76 00254 616 LDA FLIND FLOAT IND + 01254 0 01 01257 617 BRU Q41 *2 + 618 *XNA POP + 01255 0 46 00001 619 XNAPOP CLA + 01256 0 37 02677 620 STX XREG XREG + 01257 0 35 40015 621 Q41 STA* EADR1 EADR 1 + 01260 0 77 40000 622 EAX* 0 0 + 01261 0 46 00200 623 CXA + 01262 0 14 00027 624 ETR ADRMSK ADR MASK + 01263 0 63 40015 625 ADM* EADR1 EADR 1 + 01264 0 61 00015 626 MIN EADR1 EADR 1 + 01265 0 71 02677 627 LDX XREG XREG + 01266 0 60 00034 628 SKR E0SIZT E0 SIZE TEMP + 01267 0 51 00000 629 BRR 0 0 + 01270 0 43 40265 630 BRM* ERRLNK ERROR LINK + 01271 62317125 631 BCI 1,SIZE + 01272 0 51 00000 632 BRR 0 0 + 633 *DOUBLE XREG + 01273 0 00 00000 634 DBLXRG HLT + 01274 0 37 02677 635 STX XREG XREG + 01275 0 35 00012 636 STA TEMPA TEMPA + 01276 0 46 00061 637 RCH 61 XXB+CLA + 01277 0 67 20001 638 LCY 1 + 01300 0 46 00060 639 XXB + 01301 0 76 00012 640 LDA TEMPA TEMPA + 01302 0 51 01273 641 BRR DBLXRG DOUBLE XREG + 642 *ALF POP + 01303 0 43 01273 643 ALFPOP BRM DBLXRG DOUBLE XREG + 01304 0 01 01306 644 BRU Q42 $1 + 645 *ALX POP + 01305 0 37 02677 646 ALXPOP STX XREG XREG + 01306 0 76 00000 647 Q42 LDA 0 0 + 01307 0 14 00027 648 ETR ADRMSK ADR MASK + 01310 0 35 40000 649 STA* 0 0 + 01311 0 71 02677 650 LDX XREG XREG + 01312 0 61 00000 651 MIN 0 0 + 01313 0 51 00000 652 BRR 0 0 + 653 *AGF POP + 01314 0 43 01273 654 AGFPOP BRM DBLXRG DOUBLE XREG + 01315 0 01 01317 655 BRU Q43 *3 + 656 *AGX POP + 01316 0 37 02677 657 AGXPOP STX XREG XREG + 01317 0 71 40000 658 Q43 LDX* 0 0 + 01320 2 76 00000 659 LDA 0,2 0 + 01321 0 75 02665 660 LDB POPADR POP ADR MASK + 01322 0 70 02666 661 SKM APOPCD ASN POP CODE + 01323 0 01 01327 662 BRU Q45 *1 + 01324 0 37 00064 663 Q44 STX AGTTP1 AGT TEMP 1 + 01325 0 71 02677 664 LDX XREG XREG + 01326 0 51 00064 665 BRR AGTTP1 AGT TEMP 1 + 01327 0 43 40265 666 Q45 BRM* ERRLNK ERROR LINK + 01330 21276346 667 BCI 1,AGTO + 01331 0 01 01324 668 BRU Q44 *2 + 669 *XIO POP + 01332 0 75 00251 670 XIOPOP LDB FOUR FOUR + 01333 0 01 01335 671 BRU Q46 $1 + 672 *FIO POP + 01334 0 75 02642 673 FIOPOP LDB EIGHT EIGHT + 01335 0 36 00053 674 Q46 STB 8OR4 8 IF DOUBLE ELSE 4 + 01336 0 37 00041 675 STX MSAVEX M SAVE XR + 01337 0 76 00000 676 LDA 0 0 + 01340 0 35 00042 677 STA MRETAD M RETURN ADR + 01341 0 76 02627 678 LDA TWO TWO + 01342 0 16 02712 679 MRG NOARGF NO ARG FLAG + 01343 0 35 02712 680 STA NOARGF NO ARG FLAG + 01344 0 37 00356 681 STX MARGAD M ARG ADR + 01345 0 46 00200 682 CXA + 01346 0 55 00356 683 ADD MARGAD M ARG ADR + 01347 0 46 00014 684 XAB + 01350 0 73 00251 685 SKG FOUR FOUR + 01351 0 75 00356 686 LDB MARGAD M ARG ADR + 01352 0 46 00020 687 CBX + 01353 0 77 40000 688 EAX* 0 0 + 01354 0 46 00200 689 CXA + 01355 0 14 00027 690 ETR ADRMSK ADR MASK + 01356 0 35 00356 691 STA MARGAD M ARG ADR + 01357 1 25 40356 692 LDP* MARGAD M ARG ADR + 01360 1 07 00344 693 STD INWRD1 INPUT WORD 1 + 01361 0 01 00273 694 BRU CNTTLN COUNT TEST LINK + 695 *LDP POP + 01362 0 37 00014 696 LDPPOP STX DPTMP1 + 01363 0 46 00200 697 CXA + 01364 0 55 00014 698 ADD DPTMP1 + 01365 0 46 00400 699 CAX + 01366 0 77 40000 700 EAX* 0 0 + 01367 2 76 00001 701 LDA 1,2 1 + 01370 2 75 00000 702 LDB 0,2 0 + 01371 0 71 00014 703 LDX DPTMP1 + 01372 0 51 00000 704 BRR 0 0 + 705 *STDPOP + 01373 0 37 00014 706 STDPOP STX DPTMP1 + 01374 0 35 00022 707 STA STDT2 + 01375 0 46 00200 708 CXA + 01376 0 55 00014 709 ADD DPTMP1 + 01377 0 46 00400 710 CAX + 01400 0 76 00022 711 LDA STDT2 + 01401 0 77 40000 712 EAX* 0 0 + 01402 2 35 00001 713 STA 1,2 1 + 01403 2 36 00000 714 STB 0,2 0 + 01404 0 71 00014 715 LDX DPTMP1 + 01405 0 51 00000 716 BRR 0 0 + 717 *DPA POP + 01406 0 37 00014 718 DPAPOP STX DPTMP1 + 01407 0 77 40000 719 EAX* 0 0 + 01410 0 46 00014 720 XAB + 01411 2 55 00000 721 ADD 0,2 0 + 01412 0 46 00014 722 XAB + 01413 2 57 00001 723 ADC 1,2 1 + 01414 0 71 00014 724 LDX DPTMP1 + 01415 0 51 00000 725 BRR 0 0 + 726 *DPS POP + 01416 0 37 00014 727 DPSPOP STX DPTMP1 + 01417 0 77 40000 728 EAX* 0 0 + 01420 0 46 00014 729 XAB + 01421 2 54 00000 730 SUB 0,2 0 + 01422 0 46 00014 731 XAB + 01423 2 56 00001 732 SUC 1,2 1 + 01424 0 71 00014 733 LDX DPTMP1 + 01425 0 51 00000 734 BRR 0 0 + 735 PAGE + 736 *NEXT SKN + 01426 0 43 02441 737 NXCHAR BRM INSCAN INT SCAN + 01427 0 36 00045 738 STB COUNT COUNT + 01430 0 60 00045 739 SKR COUNT COUNT + 01431 0 20 00000 740 NOP + 01432 0 71 02637 741 LDX M14 MINUS 14 + 01433 0 76 00021 742 LDA CHAR CHAR + 01434 2 50 02614 743 Q47 SKE CHTABL,2 CHAR TABLE + 01435 0 41 01434 744 BRX Q47 $1 + 01436 0 37 02705 745 STX CHXSAV CHAR INDEX SAVE + 01437 2 01 02573 746 BRU BRUITB,2 BRUI TABLE + 747 *HAVE L PAREN + 01440 0 76 00045 748 HAVELP LDA COUNT COUNT + 01441 0 35 02706 749 STA GROUPC GROUP COUNT + 01442 0 61 00052 750 MIN PARENC PAREN COUNT + 01443 0 76 00052 751 LDA PARENC PAREN COUNT + 01444 0 72 02627 752 SKA TWO TWO + 01445 0 01 02573 753 BRU BRUITB BRUI TABLE + 01446 0 35 02710 754 STA PRENCS PAREN COUNT SAVE + 01447 0 76 00046 755 LDA FSCANX F SCAN X + 01450 0 35 02707 756 STA SCANXS SCAN X SAVE + 01451 0 01 01426 757 BRU NXCHAR NEXT CHAR + 758 *HAVE P + 01452 0 36 00050 759 HAVEP STB PEXPSV P EXP SAVE + 01453 0 53 00051 760 SKN PMINFG P MINUS FLAG + 01454 0 01 01426 761 BRU NXCHAR NEXT CHAR + 01455 0 46 00001 762 CLA + 01456 0 35 00051 763 STA PMINFG P MINUS FLAG + 01457 0 54 00050 764 SUB PEXPSV P EXP SAVE + 01460 0 35 00050 765 STA PEXPSV P EXP SAVE + 01461 0 01 01426 766 BRU NXCHAR NEXT CHAR + 767 *HAVE R PAREN + 01462 0 60 02706 768 HAVERP SKR GROUPC GROUP COUNT + 01463 0 01 01465 769 BRU Q48 $3 + 01464 0 01 01470 770 BRU Q49 $2 + 01465 0 76 02707 771 Q48 LDA SCANXS SCAN X SAVE + 01466 0 35 00046 772 STA FSCANX F SCAN X + 01467 0 01 01426 773 BRU NXCHAR NEXT CHAR + 01470 0 60 00052 774 Q49 SKR PARENC PAREN COUNT + 01471 0 01 01426 775 BRU NXCHAR NEXT CHAR + 01472 0 76 02712 776 LDA NOARGF NO ARG FLAG + 01473 0 50 02627 777 SKE TWO TWO + 01474 0 01 01476 778 BRU Q50 $4 + 01475 0 43 40265 779 BRM* ERRLNK ERROR LINK + 01476 0 53 00054 780 Q50 SKN PIFEND PLUS IF END LIST + 01477 0 01 02476 781 BRU LASTLN LAST LINE OUT + 01500 0 43 02217 782 BRM LNIOR LINE IN/OUT AND RETURN + 01501 0 76 02710 783 LDA PRENCS PAREN COUNT SAVE + 01502 0 35 00052 784 STA PARENC PAREN COUNT + 01503 0 01 01465 785 BRU Q48 $3 + 786 *HAVE EFIAOG + 01504 0 76 00024 787 HAVEEF LDA ONE ONE + 01505 0 16 02712 788 MRG NOARGF NP ARG FLAG + 01506 0 35 02712 789 STA NOARGF NO ARG FLAG + 01507 0 43 02441 790 BRM INSCAN INT SCAN + 01510 0 36 00342 791 STB WDTH WDTH + 01511 0 46 00001 792 CLA + 01512 0 35 00066 793 STA DECPNT DEC PNT + 01513 0 35 00067 794 STA PEXP P EXP + 01514 0 35 00343 795 STA 4IFEOT 4 IF E OUT + 01515 0 35 00051 796 STA PMINFG P MINUS FLAG + 01516 0 76 00021 797 LDA CHAR CHAR + 01517 0 50 00353 798 SKE PERIOD PERIOD + 01520 0 01 01525 799 BRU Q51 $4 + 01521 0 43 02441 800 BRM INSCAN INT SCAN + 01522 0 36 00066 801 STB DECPNT DEC PNT + 01523 0 76 00050 802 LDA PEXPSV P EXP SAVE + 01524 0 35 00067 803 STA PEXP P EXP + 01525 0 60 00046 804 Q51 SKR FSCANX F SCAN X + 805 *IO TEST + 01526 0 71 02705 806 IOTEST LDX CHXSAV CHAR INDEX SAVE + 01527 0 53 00040 807 SKN IOFLAG IO FLAG + 01530 2 77 37770 808 EAX -8,2 -10 + 01531 0 37 02705 809 STX CHXSAV CHAR INDEX SAVE + 01532 0 37 02676 810 STX NOCOMA NO COMMA FLG + 01533 2 01 02555 811 BRU BRU2TB,2 BRU2 TABLE + 812 *COUNT TEST + 01534 0 76 00025 813 CNTTST LDA SIGNBT SIGN BIT + 01535 0 35 02676 814 STA NOCOMA NO COMMA FLAGTLG + 815 *COUNT TEST NO SET + 01536 0 71 02705 816 CNTTNS LDX CHXSAV CHAR INDEX SAVE + 01537 0 60 00045 817 SKR COUNT COUNT + 01540 2 01 02555 818 BRU BRU2TB,2 BRU2 TABLE + 01541 0 01 01426 819 BRU NXCHAR NEXT CHAR + 820 *HAVE MINUS + 01542 0 76 00025 821 HAVEMI LDA SIGNBT SIGN BIT + 01543 0 35 00051 822 STA PMINFG P MINUS FLAG + 01544 0 01 01426 823 BRU NXCHAR NEXT CHAR + 824 PAGE + 825 *DLR IN + 01545 0 43 02052 826 DLRIN BRM GNFCIB GET NEXT FOR CHAR INCL BLNK + 01546 0 50 02612 827 SKE DLR DLR + 01547 0 01 01551 828 BRU Q52 $1 + 01550 0 01 01426 829 BRU NXCHAR NEXT CHAR + 01551 0 60 00046 830 Q52 SKR FSCANX F SCAN X + 01552 0 43 02107 831 BRM GNICIC GET NEXT IO CHAR INCL COMMA + 01553 0 50 02612 832 SKE DLR DLR + 01554 0 01 01556 833 BRU Q53 $2 + 01555 0 76 00352 834 LDA BLANK BLANK + 01556 0 43 02143 835 Q53 BRM STOFCH STO FOR CHAR + 01557 0 01 01545 836 BRU DLRIN DLR IN + 837 *DLROUT + 01560 0 43 02052 838 DLROUT BRM GNFCIB GET NEXT FOR CHAR INCL BLNK + 01561 0 50 02612 839 SKE DLR DLR + 01562 0 01 01564 840 BRU Q54 $1 + 01563 0 01 01426 841 BRU NXCHAR NEXT CHAR + 01564 0 43 02150 842 Q54 BRM STOICH STO IO CHAR + 01565 0 01 01560 843 BRU DLROUT DLR OUT + 844 *X IN + 01566 0 43 02107 845 XIN BRM GNICIC GET NEXT ICHAR INGLCOMMA 44 + 01567 0 01 01536 846 BRU CNTTNS COUNT TEST NO SET + 847 *X OUT + 01570 0 76 00352 848 XOUT LDA BLANK 5LANX + 01571 0 43 02150 849 BRM STOICH STO IO CHAR + 01572 0 01 01536 850 BRU CNTTNS COUNT TEST NO SET + 851 *HIN + 01573 0 43 02107 852 HIN BRM GNICIC GET NEXT IO CHAR INCL COMMA + 01574 0 43 02143 853 BRM STOFCH STO FOR CHAR + 01575 0 01 01536 854 BRU CNTTNS COUNT TE3T NO SET + 855 *H OUT + 01576 0 43 02052 856 HOUT BRM GNFCIB GET NEXT FOR CHAR INCL BLNK + 01577 0 43 02150 857 BRM STOICH STO IO CHAR + 01600 0 01 01536 858 BRU CNTTNS COUNT TEST NO SET + 859 *AOUT + 01601 0 53 00054 860 AOUT SKN PIFEND PLUS IF END LIST + 01602 0 01 02476 861 BRU LASTLN LAST LINE OUT + 01603 0 76 00342 862 LDA WDTH WDTH + 01604 0 73 00053 863 SKG 8OR4 8 IF DOUBLE ELSE 4 + 01605 0 01 01607 864 BRU Q55 $1 + 01606 0 76 00053 865 LDA 8OR4 8 IF DOUBLE ELSE 4 + 01607 0 35 00063 866 Q55 STA OUTFSZ OUTPUT FIELD SIZE + 01610 0 76 00342 867 LDA WDTH WDTH + 01611 0 55 00047 868 ADD RSCANX R SCAN X + 01612 0 35 00064 869 STA RSCNXF R SCAN X LIMIT FIELD + 01613 1 25 00344 870 LDP INWRD1 INPUT WORD 1 + 01614 0 67 20022 871 LCY 18 22 + 01615 1 07 00347 872 STD CENRL1 CENTRAL 1 + 01616 1 25 00347 873 Q56 LDP CENRL1 CENTRAL 1 + 01617 0 67 20006 874 LCY 6 + 01620 1 07 00347 875 STD CENRL1 CENTRAL 1 + 01621 0 43 02166 876 BRM STIFOK STO IO CHAR IF OK + 01622 0 53 00346 877 SKN ENDFFL END FIELD FLAG + 01623 0 01 01616 878 BRU Q56 $2 + 01624 0 01 02502 879 BRU RETMPR RETURN TO MAIN PROG + 880 *AIN + 01625 0 53 00054 881 AIN SKN PIFEND PLUS IF END LIST + 01626 0 01 02502 882 BRU RETMPR RETURN TO MAIN PROG + 01627 0 76 00053 883 LDA 8OR4 8 IF DOUBLE ELSE 4 + 01630 0 35 00004 884 STA AINTP1 A IN TEMP 1 + 01631 0 73 00342 885 SKG WDTH WDTH + 01632 0 01 01634 886 BRU Q57 $1 + 01633 0 76 00342 887 LDA WDTH WDTH + 01634 0 35 00005 888 Q57 STA AINTP2 A IN TEMP 2 + 01635 0 76 00342 889 LDA WDTH WDTH + 01636 0 54 00053 890 SUB 8OR4 8 IF DOUBLE ELSE 4 + 01637 0 72 00025 891 SKA SIGNBT SIGN BIT + 01640 0 46 00001 892 CLA + 01641 0 63 00047 893 ADM RSCANX R SCAN X + 01642 0 01 01657 894 BRU Q60 $3 + 01643 0 76 00352 895 Q58 LDA BLANK BLANK + 01644 0 60 00005 896 SKR AINTP2 A IN TEMP 2 + 01645 0 43 02107 897 BRM GNICIC GET NEXT IO CHAR INCL COMMA + 01646 0 50 00255 898 SKE CARRET CAR RETURN + 01647 0 01 01651 899 BRU Q59 $2 + 01650 0 76 00352 900 LDA BLANK BLANK + 01651 0 35 00006 901 Q59 STA AINTP3 A IN TEMP 3 + 01652 1 25 00347 902 LDP CENRL1 CENTRAL1 + 01653 0 14 02631 903 ETR CH234 CHAR234 MASK + 01654 0 16 00006 904 MRG AINTP3 A IN TEMP 3 + 01655 0 67 20006 905 LCY 6 + 01656 1 07 00347 906 STD CENRL1 CENTRAL 1 + 01657 0 60 00004 907 Q60 SKR AINTP1 A IN TEMP 1 + 01660 0 01 01643 908 BRU Q58 $4 + 01661 0 71 00356 909 LDX MARGAD M ARG ADR + 01662 2 36 00000 910 STB 0,2 0 + 01663 0 46 00004 911 CAB + 01664 0 76 02634 912 LDA FIVE FIVE + 01665 0 73 00053 913 SKG 8OR4 8 IF DOUBLE ELSE 4 + 01666 0 01 01670 914 BRU Q61 $5 + 01667 0 01 02502 915 BRU RETMPR RETURN TO MAIN PROG + 01670 0 46 00010 916 Q61 CBA + 01671 2 62 00000 917 XMA 0,2 0 + 01672 2 35 00001 918 STA 1,2 + 01673 0 01 02502 919 BRU RETMPR RETURN TO MAIN PROG + 920 *EFGIN + 01674 0 53 00054 921 EFGIN SKN PIFEND PLUS IF END LIST + 01675 0 01 02502 922 BRU RETMPR RETURN TO MAIN PROG + 01676 0 43 02273 923 BRM CONSCN CONST SCAN + 01677 0 43 00237 924 BRM FLCMKL FL CONST MAKER LINK + 01700 0 71 00356 925 LDX MARGAD M ARG ADR + 01701 1 25 00347 926 LDP CENRL1 CENTRAL 1 + 01702 1 07 40356 927 STD* MARGAD M ARG ADR + 01703 0 01 02502 928 BRU RETMPR RETURN TO MAIN PROG + 929 *I IN + 01704 0 53 00054 930 IIN SKN PIFEND PLUS IF END LIST + 01705 0 01 02502 931 BRU RETMPR RETURN TO MAIN PROG + 01706 0 43 02273 932 BRM CONSCN CONST SCAN + 01707 0 43 40237 933 BRM* FLCMKL FL CONST MAKER LINK + 01710 0 43 02530 934 BRM FIX FIX + 01711 0 71 00356 935 LDX MARGAD M ARG ADR + 01712 2 35 00000 936 STA 0,2 + 01713 0 01 02502 937 BRU RETMPR RETURN TO MAIN PROG + 938 *I OUT + 01714 0 53 00054 939 IOUT SKN PIFEND PLUS IF END LIST + 01715 0 01 02476 940 BRU LASTLN LAST LTNE OUT + 01716 0 76 00344 941 LDA INWRD1 INPUT WORD 1 + 01717 0 43 40267 942 BRM* FLOATL FLOAT SPROG LINK + 01720 1 07 00344 943 STD INWRD1 INPUT WORD 1 + 01721 0 76 00026 944 LDA MINUS1 MINUS ONE + 01722 0 35 00066 945 STA DECPNT DEC PNT + 946 *F OUT + 01723 0 53 00054 947 FOUT SKN PIFEND PLUS IF END LIST + 01724 0 01 02476 948 BRU LASTLN LAST LINEUT + 01725 0 43 40240 949 BRM* CONV3W CONV TO 3 WORDS LINK + 01726 0 43 40236 950 BRM* BCDLNK BIN TO BCD CONV LINK + 01727 0 01 02502 951 BRU RETMPR RETURN TO MAIN PPROG + 952 *E OUT + 01730 0 53 00054 953 EOUT SKN PIFEND PLUS IF END LIST + 01731 0 01 02476 954 BRU LASTLN LAST LINE OUT + 01732 0 43 40240 955 BRM* CONV3W CONV TO 3 WORDS LINK + 01733 0 76 00251 956 LDA FOUR FOUR + 01734 0 35 00343 957 STA 4IFEOT 4 IF E OUT + 01735 0 76 00347 958 LDA CENRL1 CENTRAL1 + 01736 0 16 00350 959 MRG CENRL2 CENTRAL2 + 01737 0 50 00023 960 SKE ZERO ZERO + 01740 0 01 01742 961 BRU Q62 $5 + 01741 0 01 01745 962 BRU Q63 $6 + 01742 0 76 00341 963 Q62 LDA CHARIS CHARACTERISTIC + 01743 0 54 00067 964 SUB PEXP P EXP + 01744 0 55 00024 965 ADD ONE ONE + 01745 0 35 02703 966 Q63 STA EEXP E EXP + 01746 0 76 00026 967 LDA MINUS1 MINUS ONE + 01747 0 35 00341 968 STA CHARIS CHARACTERISTIC + 01750 0 43 40236 969 BRM* BCDLNK BIN TO BCD CONV LINK + 01751 0 76 00251 970 LDA FOUR FOUR + 01752 0 35 00063 971 STA OUTFSZ OUTPUT FIELD SIZE + 01753 0 63 00064 972 ADM RSCNXF R SCAN X LIMIT FIELD + 01754 0 76 02604 973 LDA E E + 01755 0 43 02166 974 BRM STIFOK STO IO CHAR IF OK + 01756 0 76 00352 975 LDA BLANK BLANK + 01757 0 53 02703 976 SKN EEXP E EXP + 01760 0 01 01765 977 BRU Q64 $1 + 01761 0 76 02703 978 LDA EEXP E EXP + 01762 0 46 01000 979 CNA + 01763 0 35 02703 980 STA EEXP E EXP + 01764 0 76 00025 981 LDA MINUS MINUS + 01765 0 43 02166 982 Q64 BRM STIFOK STO IO CHAR IF OK + 01766 0 76 02703 983 LDA EEXP E EXP + 01767 0 73 02632 984 SKG NINE NINE + 01770 0 01 01777 985 BRU Q65 $2 + 01771 0 73 02633 986 SKG DEC99 DEC 99 + 01772 0 01 02001 987 BRU Q66 $3 + 01773 0 43 00401 988 BRM ERROR + 01774 46256747 989 BCI 1,OEXP + 01775 0 46 00001 990 CLA + 01776 0 01 02001 991 BRU Q66 $3 + 01777 0 46 00001 992 Q65 CLA + 02000 0 01 02006 993 BRU Q67 $4 + 02001 0 46 20005 994 Q66 ABC + 02002 0 67 00001 995 LSH 1 + 02003 0 65 02635 996 DIV TEN TEN + 02004 0 36 02703 997 STB EEXP EEXP + 02005 0 67 00022 998 LSH 18 22 + 02006 0 43 02166 999 Q67 BRM STIFOK STO IO CHAR IF OK + 02007 0 76 02703 1000 LDA EEXP E EXP + 02010 0 67 00022 1001 LSH 18 22 + 02011 0 43 02166 1002 BRM STIFOK STO IO CHAT IF OK + 02012 0 01 02502 1003 BRU RETMPR RETURN TO MAIN PROG + 1004 PAGE + 1005 *GET NEXT CHAR + 02013 0 00 00000 1006 GNCHAR HLT + 02014 0 37 02701 1007 STX SAVEX SAVE X + 02015 0 76 40065 1008 LDA* SCANX SCAN X + 02016 0 73 42702 1009 SKG* SCANXL SCAN X LIMIT + 02017 0 01 02023 1010 BRU Q68 $1 + 02020 0 76 00255 1011 LDA ENDFLD END FIELD CHAR + 02021 0 35 00021 1012 STA CHAR CHAR + 02022 0 51 02013 1013 BRR GNCHAR GET NEXT CHAR + 02023 0 66 20002 1014 Q68 RCY 2 + 02024 0 46 00401 1015 AXC + 02025 0 67 20002 1016 LCY 2 + 02026 0 64 00351 1017 MUL THREE THREE + 02027 0 76 42700 1018 LDA* TAGST TAGGED START ADR + 02030 0 46 00020 1019 CBX + 02031 2 67 00000 1020 LSH 0,2 + 02032 0 14 02630 1021 ETR CH1MSK CHAR1 MASK + 02033 0 50 02655 1022 SKE IBMBLNK IBM BLANK + 02034 0 01 02036 1023 BRU Q69 $2 + 02035 0 76 00352 1024 LDA BLANK BLANK + 02036 0 35 00021 1025 Q69 STA CHAR CHAR + 02037 0 61 40065 1026 MIN* SCANX SCAN X + 02040 0 71 02701 1027 LDX SAVEX SAVE X + 02041 0 50 00255 1028 SKE CARRET CAR RETURN + 02042 0 51 02013 1029 BRR GNCHAR GET NEXT CHAR + 02043 0 60 40065 1030 SKR* SCANX SCAN X + 02044 0 51 02013 1031 BRR GNCHAR GET NEXT CHAR + 1032 *GET NEXT FOR CHAR + 02045 0 00 00000 1033 GNFRCH HLT + 02046 0 43 02052 1034 Q70 BRM GNFCIB GET NEXT FOR CHAR INCL BLNK + 02047 0 50 00352 1035 SKE BLANK BLANK + 02050 0 51 02045 1036 BRR GNFRCH GET NEXT FOR CHAR + 02051 0 01 02046 1037 BRU Q70 $1 + 1038 *GET NEXT FOR CHAR INCL BLNK + 02052 0 00 00000 1039 GNFCIB HLT + 02053 0 46 00002 1040 CLB + 02054 0 43 02506 1041 BRM INITSC INITIALIZE SCANS + 02055 0 43 02013 1042 BRM GNCHAR GET NEXT CHAR + 02056 0 51 02052 1043 BRR GNFCIB GET NEXT FOR CHAR INCL BLANK + 1044 *GET NEXT IO CHAR INCL BLNK + 02057 0 00 00000 1045 GNICIB HLT + 02060 0 76 00255 1046 Q71 LDA ENDFLD END FIELD CHAR + 02061 0 35 00021 1047 STA CHAR CHAR + 02062 0 53 02676 1048 SKN NOCOMA NO COMMA FLAG + 02063 0 51 02057 1049 BRR GNICIB GET NEXT IO CHAR INCL BLNK + 02064 0 43 02107 1050 BRM GNICIC GET NEXT IO CHAR INVL COMMA + 02065 0 50 02601 1051 SKE COMMA COMMA + 02066 0 51 02057 1052 BRR GNICIB GET NEXT IO CHAR INCL BLNK + 02067 0 46 00001 1053 CLA + 02070 0 35 02676 1054 STA NOCOMA NO COMMA FLAG + 02071 0 01 02060 1055 BRU Q71 $1 + 1056 *GET NEXT IO CHAR + 02072 0 00 00000 1057 GNIOCH HLT + 02073 0 76 00064 1058 LDA RSCNXF R SCAN X LIMIT FIELD + 02074 0 73 00047 1059 SKG RSCANX R SCAN X + 02075 0 01 02077 1060 BRU Q72 $1 + 02076 0 01 02101 1061 BRU Q73 $2 + 02077 0 76 00255 1062 Q72 LDA ENDFLD ENDFIELD CHAR + 02100 0 01 02105 1063 BRU Q74 $3 + 02101 0 43 02057 1064 Q73 BRM GNICIB GET NET IO CHAR INCL BLNK + 02102 0 50 00352 1065 SKE BLANK BLANK + 02103 0 51 02072 1066 BRR GNIOCH GET NEXT IO CHAR + 02104 0 76 00024 1067 LDA ONE ONE + 02105 0 35 00021 1068 Q74 STA CHAR CHAR + 02106 0 51 02072 1069 BRR GNIOCH GET NEX IO CHAR + 1070 *GET NEXT IO CHAR INCL COMMA + 02107 0 00 00000 1071 GNICIC HLT + 02110 0 75 00351 1072 LDB THREE THREE + 02111 0 43 02506 1073 BRM INITSC INITIALIZE SCANS + 02112 0 43 02013 1074 BRM GNCHAR GET NEXT CHAR + 02113 0 51 02107 1075 BRR GNICIC GET NEXT IO CHAR INCL COMMA + 1076 PAGE + 1077 *STO CHAR + 02114 0 00 00000 1078 STOCH HLT + 02115 0 35 00034 1079 STA ARGSAV ARG SAVE + 02116 0 37 02701 1080 STX SAVEX SAVE X + 02117 0 76 40065 1081 LDA* SCANX SCANX + 02120 0 73 42702 1082 SKG* SCANXL SCAN X LIMIT + 02121 0 01 02123 1083 BRU Q75 $1 + 02122 0 01 02140 1084 BRU Q76 $2 + 02123 0 66 20002 1085 Q75 RCY 2 2 + 02124 0 46 00401 1086 AXC 401 + 02125 0 67 20002 1087 LCY 2 2 + 02126 0 64 00351 1088 MUL THREE THREE + 02127 0 76 42700 1089 LDA* TAGST TAGGED START AOR + 02130 0 37 00035 1090 STX SCHT1 STO CHAR TEMP 1 + 02131 0 46 00020 1091 CBX + 02132 2 67 20000 1092 LCY 0,2 0 + 02133 0 14 02631 1093 ETR CH234 CHAR234 MASK + 02134 0 16 00034 1094 MRG ARGSAV ARG SAVE + 02135 2 66 20000 1095 RCY 0,2 + 02136 0 71 00035 1096 LDX SCHT1 STO CHAR TEMP 1 + 02137 0 35 42700 1097 STA* TAGST TAGGED START ADR + 02140 0 61 40065 1098 Q76 MIN* SCANX SCAN X + 02141 0 71 02701 1099 LDX SAVEX SAVE X + 02142 0 51 02114 1100 BRR STOCH STO CHAR + 1101 *STO FOR CHAR + 02143 0 00 00000 1102 STOFCH HLT + 02144 0 46 00002 1103 CLB + 02145 0 43 02506 1104 BRM INITSC INITIALIZE SCANS + 02146 0 43 02114 1105 BRM STOCH STO CHAR + 02147 0 51 02143 1106 BRR STOFCH STO FOR CHAR + 1107 *STO IO CHAR + 02150 0 00 00000 1108 STOICH HLT + 02151 0 75 00351 1109 LDB THREE THREE + 02152 0 43 02506 1110 BRM INITSC INITIALIZE SCANS + 02153 0 14 02630 1111 ETR CH1MSK CHAR 1 MASK + 02154 0 50 00352 1112 SKE BLANK BLANK + 02155 0 01 02163 1113 BRU Q77 $1 + 02156 0 76 00043 1114 LDA RSCNXL R SCAN LIMIT + 02157 0 73 00261 1115 SKG DEC79 DEC 79 + 02160 0 01 02163 1116 BRU Q77 $2 + 02161 0 76 02655 1117 LDA IBMBLN IBM BLANK + 02162 0 01 02164 1118 BRU Q78 $1 + 02163 0 76 00352 1119 Q77 LDA BLANK BLANK + 02164 0 43 02114 1120 Q78 BRM STOCH STO CHAR + 02165 0 51 02150 1121 BRR STOICH STO 19 CHAR + 1122 *STO IO CHAR IF OK + 02166 0 00 00000 1123 STIFOK HLT + 02167 0 35 02711 1124 STA SIFOK1 STO IF OK TEMP 1 + 02170 0 46 00001 1125 CLA + 02171 0 35 00346 1126 STA ENDFFL END FIELD FLAG + 02172 0 76 00047 1127 Q79 LDA RSCANX R SCAN X5,A ( + 02173 0 55 00024 1128 ADD ONE ONE + 02174 0 73 00064 1129 SKG RSCNXF P SCAN X LIMIT FIELD + 02175 0 01 02201 1130 BRU Q80 $1 + 02176 0 76 00025 1131 LDA SIGNBT SIGN BIT + 02177 0 35 00346 1132 STA ENDFFL END FIELD FLAG + 02200 0 51 02166 1133 BRR STIFOK STO IO CHAR IF OK + 02201 0 76 00047 1134 Q80 LDA RSCANX R SCAN X + 02202 0 55 00063 1135 ADD OUTFSZ OUTPUT FIELD SIZE + 02203 0 54 00064 1136 SUB RSCNXF R SCAN X LIMIT FIELD + 02204 0 72 00025 1137 SKA SIGNBT SIGN BIT + 02205 0 01 02214 1138 BRU Q81 $2 + 02206 0 60 00063 1139 SKR OUTFSZ OUTPUT FIELD SIIE + 02207 0 50 00023 1140 SKE ZERO ZERO + 02210 0 51 02166 1141 BRR STIFOK STO IO CHAR IF OK + 02211 0 76 02711 1142 LDA SIFOK1 STO IF OK TEMP 1 + 02212 0 43 02150 1143 BRM STOICH STO IO CHAR + 02213 0 51 02166 1144 BRR STIFOK STO IO CHAR IF OK + 02214 0 76 00352 1145 Q81 LDA BLANK BLANK + 02215 0 43 02150 1146 BRM STOICH STO IO CHAR + 02216 0 01 02172 1147 BRU Q79 + 1148 PAGE + 1149 *LINE IN/OUT AND RETURN + 02217 0 00 00000 1150 LNIOR HLT + 02220 0 75 02217 1151 LDB LNIOR LINE IN/OUT AND RETURN + 02221 0 76 00261 1152 LDA DEC79 DEC 79 + 02222 0 50 00043 1153 SKE RSCNXL R SCAN X LIMIT + 02223 0 43 40040 1154 BRM* UNITAD UNIT ADR + 02224 0 76 00255 1155 LDA CARRET CAR RETURN + 02225 0 43 02150 1156 BRM STOICH STO CHAR + 02226 0 46 00001 1157 CLA + 02227 0 35 00047 1158 STA RSCANX R SCAN X + 02230 0 53 00040 1159 SKN IOFLAG IO FLAG + 02231 0 01 02350 1160 BRU Q95 $3 + 02232 0 43 40040 1161 BRM* UNITAD UNIT ADR + 02233 0 43 02013 1162 Q82 BRM GNCHAR GET NEXT CHAR + 02234 0 12 00021 1163 MIW CHAR CHAR + 02235 0 76 00021 1164 LDA CHAR CHAR + 02236 0 50 00255 1165 SKE CARRET CAR RETURN + 02237 0 01 02233 1166 BRU Q82 $1 + 02240 0 02 14000 1167 TOPW 14000 + 02241 0 40 21000 1168 Q83 BRTW 21000 + 02242 0 01 02241 1169 BRU Q83 $4 + 02243 0 01 02264 1170 BRU Q89 $2 + 02244 0 50 02630 1171 Q84 SKE CODDEL CODE DELETE + 02245 0 43 02114 1172 BRM STOCH STO CHAR + 02246 0 01 02253 1173 BRU Q87 $7 + 02247 0 71 02654 1174 Q85 LDX DECM33 DEC -33 + 02250 0 76 02656 1175 LDA BLANKS ALL BLANKS + 02251 2 35 00341 1176 Q86 STA ENDBUF,2 END SUFFER + 02252 0 41 02251 1177 BRX Q86 $5 + 02253 0 43 40040 1178 Q87 BRM* UNITAD UNIT ADR + 02254 0 40 20010 1179 BETW + 02255 0 01 02267 1180 BRU Q90 $8 + 02256 0 75 00021 1181 Q88 LDB CHAR CHAR + 02257 0 46 00001 1182 CLA + 02260 0 66 20006 1183 RCY 6 + 02261 0 50 00255 1184 SKE CARRET CAR RETURN + 02262 0 01 02244 1185 BRU Q84 $6 + 02263 0 02 00000 1186 DISW + 02264 0 46 00001 1187 Q89 CLA + 02265 0 35 00047 1188 STA RSCANX R SCAN X + 02266 0 51 02217 1189 BRR LNIOR LINE IN/OUT AND RETURN + 02267 0 02 00000 1190 Q90 DISW + 02270 0 43 40265 1191 BRM* ERRLNK ERRR LINK + 02271 22516370 1192 BCI 1,BRTY + 02272 0 01 02256 1193 BRU Q88 $9 + 1194 PAGE + 1195 *CONST SCAN + 02273 0 00 00000 1196 CONSCN HLT + 02274 0 76 00047 1197 LDA RSCANX R SCAN X + 02275 0 55 00342 1198 ADD WDTH WDTH + 02276 0 35 00064 1199 STA RSCNXF R SCAN X LIMIT FIELD + 02277 0 43 02364 1200 BRM DIGCVI DIGIT CONV INITIAL + 02300 0 46 00001 1201 CLA + 02301 0 35 00341 1202 STA CHARIS CHARACTERISTIC + 02302 0 35 00037 1203 STA PERFLG PERIOD FLAG + 02303 0 43 02374 1204 BRM TSSIGN TEST SIGN + 02304 0 35 00055 1205 STA INPTWS INPUT WORD SIGN + 02305 0 43 02410 1206 BRM DIGCVS DIGIT CONV SCAN + 02306 0 76 00036 1207 LDA DIGSCT DIGITS SCANNED CNT + 02307 0 35 00341 1208 STA CHARIS CHARACTERISTIC + 02310 0 76 00021 1209 LDA CHAR CHAR + 02311 0 50 00353 1210 SKE PERIOD PERIOD + 02312 0 01 02315 1211 BRU Q91 $1 + 02313 0 35 00037 1212 STA PERFLG PERIOD FLA + 02314 0 43 02410 1213 BRM DIGCVS DIGIT CONV SCAN + 02315 0 46 00001 1214 Q91 CLA + 02316 0 50 00037 1215 SKE PERFLG PERIOD FLAG + 02317 0 01 02321 1216 BRU Q92 $3 + 02320 0 54 00066 1217 SUB DECPNT DEC PNT + 02321 0 55 00341 1218 Q92 ADD CHARIS CHARACTERISTIC + 02322 0 54 00067 1219 SUB PEXP P EXP + 02323 0 54 00020 1220 SUB DIGUCT DIGITS USED CNT + 02324 0 35 00341 1221 STA CHARIS CHARACTERISTIC + 02325 0 76 00021 1222 LDA CHAR + 02326 0 50 00255 1223 SKE ENDFLD END FIELD CHAR + 02327 0 01 02331 1224 BRU Q93 $2 + 02330 0 51 02273 1225 BRR CONSCN CONST SCAN + 02331 1 25 00347 1226 Q93 LDP CENRL1 CENTRAL 1 + 02332 1 07 00010 1227 STD CENRL3 CENTRAL 3 + 02333 0 76 00021 1228 LDA CHAR CHAR + 02334 0 50 02604 1229 SKE E E + 02335 0 60 00047 1230 SKR RSCANX R SCAN X + 02336 0 43 02374 1231 BRM TSSIGN TEST SIGN + 02337 0 35 00057 1232 STA MXPOFG MINUS XPON FLAG + 02340 0 43 02364 1233 BRM DIGCVI DIGIT CONV INITIAL + 02341 0 43 02410 1234 BRM DIGCVS DIGIT CONV SCAN + 02342 0 46 30003 1235 CLR + 02343 0 53 00057 1236 SKN MXPOFG MINUS XPON FLAG + 02344 0 01 02347 1237 BRU Q94 $6 + 02345 1 53 00347 1238 DPS CENRL1 CENTRAL 1 + 02346 0 36 00347 1239 STB CENRL1 CENTRAL 1 + 02347 0 76 00347 1240 Q94 LDA CENRL1 CENTRAL 1 + 02350 0 55 00341 1241 Q95 ADD CHARIS CHARACTERISTIC + 02351 0 55 00067 1242 ADD PEXP P EXP + 02352 0 35 00341 1243 STA CHARIS CHARACTERISTIC + 02353 1 25 00010 1244 LDP CENRL3 CENTRAL 3 + 02354 1 07 00347 1245 STD CENRL1 CENTRAL 1 + 02355 0 76 00021 1246 LDA CHAR CHAR + 02356 0 50 00255 1247 SKE ENDFLD END FIELD CHAR + 02357 0 01 02361 1248 BRU Q96 $8 + 02360 0 51 02273 1249 BRR CONSCN CONST SCAN + 02361 0 43 40265 1250 Q96 BRM* ERRLNK ERROR LINK + 02362 31233051 1251 BCI 1,ICHR + 02363 0 51 02273 1252 BRR CONSCN CONST SCAN + 1253 *DIGIT CONV INITIAL + 02364 0 00 00000 1254 DIGCVI HLT + 02365 0 46 30003 1255 CLR + 02366 0 35 00036 1256 STA DIGSCT DIGITS SCANNED CNT + 02367 0 35 00020 1257 STA DIGUCT DIQITS USED CNT + 02370 1 07 00347 1258 STD CENRL1 CENTRAL 1 + 02371 0 76 02622 1259 LDA GNICHA GET NEXT IO CHAR ADR + 02372 0 35 00062 1260 STA GETFR GET F OR R CHAR + 02373 0 51 02364 1261 BRR DIGCVI DIGIT CONV INITIAL + 1262 *TEST SIGN + 02374 0 00 00000 1263 TSSIGN HLT + 02375 0 43 02072 1264 Q97 BRM GNIOCH GET NEXT IO CHAR + 02376 0 50 00024 1265 SKE ONE (MEANS BLANK) + 02377 0 01 02401 1266 BRU Q98 $2 + 02400 0 01 02375 1267 BRU Q97 $1 + 02401 0 50 00025 1268 Q98 SKE MINUS MINUS + 02402 0 01 02404 1269 BRU Q99 $3 + 02403 0 51 02374 1270 BRR TSSIGN TEST SIGN + 02404 0 50 02576 1271 Q99 SKE PLUS PLUS + 02405 0 60 00047 1272 SKR RSCANX R SCAN X + 02406 0 46 00001 1273 CLA + 02407 0 51 02374 1274 BRR TSSIGN TEST SIGN + 1275 *DIGIT CONV SCAN + 02410 0 00 00000 1276 DIGCVS HLT + 02411 0 43 02432 1277 Q100 BRM TSDIG TEST DIGIT + 02412 0 51 02410 1278 BRR DIGCVS DIGIT CONV SCAN + 02413 0 64 02623 1279 MUL RTSH18 RIGHT SHIFTER 18 + 02414 0 14 00256 1280 ETR CH4MSK CHAR 4 MASK + 02415 0 35 02667 1281 STA DGCVT1 DIGIT CONV TEMP 1 + 02416 0 61 00036 1282 MIN DIGSCT DIGITS SCANNED CNT + 02417 1 25 00347 1283 LDP CENRL1 CENTRAL 1 + 02420 0 72 02624 1284 SKA TOP500 TOP 5 BITS ONE + 02421 0 01 02411 1285 BRU Q100 $1 + 02422 0 67 00004 1286 LSH 4 4 + 02423 1 07 00347 1287 STD CENRL1 CENTRAL 1 + 02424 1 25 02620 1288 LDP TENB4 TEN B4 EXACT + 02425 0 43 02451 1289 BRM DBLXMP DOUBLE FIXED MULT + 02426 1 04 02667 1290 DPA DGCVT1 DIGIT CONV TEMP 1 + 02427 1 07 00347 1291 STD CENRL1 CENTRAL 1 + 02430 0 61 00020 1292 MIN DIGUCT DIGITS USED CNT + 02431 0 01 02411 1293 BRU Q100 $1 + 1294 *TEST DIGIT + 02432 0 00 00000 1295 TSDIG HLT + 02433 0 43 40062 1296 BRM* GETFR GET R OR R CHAR + 02434 0 72 00025 1297 SKA SIGNBT SIGN BIT + 02435 0 51 02432 1298 BRR TSDIG TEST DIGIT + 02436 0 73 02636 1299 SKG NINEAT NINE AT TOP + 02437 0 61 02432 1300 MIN TSDIG TEST DIGIT + 02440 0 51 02432 1301 BRR TSDIG TEST DIGIT + 1302 *INT SCAN + 02441 0 00 00000 1303 INSCAN HLT + 02442 0 76 02626 1304 LDA GNFCHA GET NEXT FOR CHAR ADR + 02443 0 35 00062 1305 STA GETFR GET F OR R CHAR + 02444 0 46 30003 1306 CLR + 02445 1 07 00347 1307 STD CENRL1 CENTRAL 1 + 02446 0 43 02410 1308 BRM DIGCVS DIQIT CONV SCAN + 02447 0 75 00347 1309 LDB CENRL1 CENTRAL 1 + 02450 0 51 02441 1310 BRR INSCAN INT SCAN + 1311 *DOUBLE FIXED MULT + 02451 0 00 00000 1312 DBLXMP HLT + 02452 1 07 00004 1313 STD DFMPT1 DBL FX MPY TEMP 1 + 02453 0 76 00347 1314 LDA CENRL1 CENTRAL 1 + 02454 0 46 00002 1315 CLB + 02455 0 66 20001 1316 RCY 1 + 02456 0 64 00006 1317 MUL DFMPT32 DBL FX MPY TEMP 2 + 02457 0 66 00027 1318 RSH 23 + 02460 1 07 00006 1319 STD DFMPT3 DBL FX MPY TEMP 3 + 02461 0 76 00004 1320 LDA DFMPT1 DBL FX MPY TEMP 1 + 02462 0 46 00002 1321 CLB + 02463 0 66 20001 1322 RCY 1 1 + 02464 0 64 00350 1323 MUL CENRL2 CENTRAL 2 + 02465 0 66 00027 1324 RSH 23 27 + 02466 1 04 00006 1325 DPA DFMPT3 DBL FX MPY TEMP 3 + 02467 1 07 00006 1326 STD DFMPT3 DBL FX MPY TEMP 3 + 02470 0 76 00350 1327 LDA CENRL2 CENTRAL 2 + 02471 0 64 00005 1328 MUL DFMPT2 DBL FIX MPY TEMP 2 + 02472 1 04 00006 1329 DPA DFMPT3 DBL FIX MPY TEMP 3 + 02473 0 51 02451 1330 BRR DBLXMP DOUBLE FIXED MULT + 1331 PAGE + 1332 *LINE IN/OUT + 02474 0 43 02217 1333 LNIO BRM LNIOR LINE IN/OUT AND RETURN + 02475 0 01 01534 1334 BRU CNTTST COUNT TEST + 1335 *LAST LINE OUT + 02476 0 53 00040 1336 LASTLN SKN IOFLAG IOFLAG + 02477 0 01 02502 1337 BRU RETMPR RETURN TO MAIN PROG + 02500 0 43 02217 1338 BRM LNIOR LINE IN/OUT AND RETURN + 02501 0 01 02502 1339 BRU RETMPR RETURN TO MAIN PROG + 1340 *RETURN TO MAIN PROG + 02502 0 40 20001 1341 RETMPR OVT + 02503 0 20 00000 1342 NOP + 02504 0 71 00041 1343 LDX MSAVEX M SAVE XR + 02505 0 51 00042 1344 BRR MRETAD M RETURN ADR + 1345 *INITIALIZE SCANS + 02506 0 00 00000 1346 INITSC HLT + 02507 0 35 00034 1347 STA ARGSAV ARG SAVE + 02510 0 46 10012 1348 BAC + 02511 0 73 00024 1349 SKG ONE ONE + 02512 0 01 02520 1350 BRU Q101 $1 + 02513 0 76 02650 1351 LDA RSCNXA R SCAN X ADR + 02514 0 35 00065 1352 STA SCANX SCAN + 02515 0 76 02651 1353 LDA RTAGST R TAGGED START ADR + 02516 0 75 02652 1354 LDB RSCXLA R SCAN X LIMIT ADR + 02517 0 01 02524 1355 BRU Q102 $2 + 02520 0 76 02646 1356 Q101 LDA FSCNXA F SCAN X ADR + 02521 0 35 00065 1357 STA SCANX SCANX + 02522 0 76 00044 1358 LDA FTAGST F TAGGED START ADR + 02523 0 75 02647 1359 LDB FSXLMA F SCAN X LIMIT ADP + 02524 0 35 02700 1360 Q102 STA TAGST TAGGED START ADR + 02525 0 36 02702 1361 STB SCANXL SCAN X LIMIT + 02526 0 76 00034 1362 LDA ARGSAV ARG SAVE + 02527 0 51 02506 1363 BRR INITSC INITIALIZE SCANS + 1364 *FIX + 02530 0 00 00000 1365 FIX HLT + 02531 1 25 00347 1366 LDP CENRL1 CENTRAL 1 + 02532 0 43 01031 1367 BRM FXBNDA FIX BANDA + 02533 0 35 00347 1368 STA CENRL1 CENTRAL 1 + 02534 0 51 02530 1369 BRR FIX FIX + 1370 PAGE + 02535 0 01 01674 1371 BRU EFGIN EFG IN E + 02536 0 01 01674 1372 BRU EFGIN EFG IN F + 02537 0 01 01704 1373 BRU IIN I IN I + 02540 0 01 01573 1374 BRU HIN H IN H + 02541 0 01 01566 1375 BRU XIN X N X + 02542 0 01 02474 1376 BRU LNIO LINE IN/OUT / + 02543 0 01 01545 1377 BRU DLRIN DLR IN $ + 02544 0 01 01625 1378 BRU AIN A IN A + 02545 0 01 01730 1379 BRU EOUT E OUT E + 02546 0 01 01723 1380 BRU FOUT F OUT F + 02547 0 01 01714 1381 BRU IOUT I OUT I + 02550 0 01 01576 1382 BRU HOUT H OUT H + 02551 0 01 01570 1383 BRU XOUT X OUT X + 02552 0 01 02474 1384 BRU LNIO LINE INT/OUT / + 02553 0 01 01560 1385 BRU DLROUT DLR OUT $ + 02554 0 01 01601 1386 BRU AOUT A OUT A + 1387 *BRU2 TABLE + 02555 0 01 01426 1388 BRU2TB BRU NXCHAR NEXT CHAR + + 02556 0 01 01542 1389 BRU HAVEMI HAVE MINUS - + 02557 0 01 01440 1390 BRU HAVELP HAVE L PAREN ( + 02560 0 01 01426 1391 BRU NXCHAR NEXT CHAR . + 02561 0 01 01452 1392 BRU HAVEP HAVE P P + 02562 0 01 01462 1393 BRU HAVERP HAVE R PAREN ) + 02563 0 01 01504 1394 BRU HAVEEF HAVE EFIAOG E + 02564 0 01 01504 1395 BRU HAVEEF HAVE EFIAOG F + 02565 0 01 01504 1396 BRU HAVEEF HAVE EFIAOG I + 02566 0 01 01526 1397 BRU IOTEST IO TEST H + 02567 0 01 01526 1398 BRU IOTEST IO TEST X + 02570 0 01 01526 1399 BRU IOTEST IO TEST / + 02571 0 01 01526 1400 BRU IOTEST IO TEST $ + 02572 0 01 01504 1401 BRU HAVEEF HAVE EFIAOG A + 1402 *BRUI TABLE + 02573 0 43 40265 1403 BRUITB BRM* ERRLNK ERROR LINK + 02574 26233051 1404 BCI 1,FCHR + 02575 0 01 01426 1405 BRU NXCHAR NEXT CHAR + 1406 *PLUS + 02576 20000000 1407 PLUS BCI 1,+000 + 02577 40000000 1408 BCI 1,-000 + 02600 35000000 1409 OCT 35000000 L BRAKET + 1410 *COMMA + 02601 73464646 1411 COMMA BCI 1,,OOO + 02602 47464646 1412 BCI 1,POOO + 02603 55000000 1413 OCT 55000000 R BRAKET + 1414 *E + 02604 25000000 1415 E BCI 1,E000 + 02605 26000000 1416 BCI 1,F000 + 02606 31000000 1417 BCI 1,I000 + 02607 30000000 1418 BCI 1,H000 + 02610 67000000 1419 BCI 1,X000 + 02611 61000000 1420 BCI 1,/000 + 1421 *DLR + 02612 53000000 1422 DLR BCI 1,$000 + 02613 21000000 1423 BCI 1,A000 + 1424 *CHAR TABLE + 00002614 1425 CHTABL EQU * + 1426 PAGE + 1427 *LIVE NOP MOP + 02614 2 20 00000 1428 NOPMOP NOP 0,2 + 1429 *DEC 22 + 02615 00000026 1430 DEC22 DEC 22 + 1431 *DEC 23 + 00002616 1432 DEC23 EQU * + 1433 *TWENTY THREE + 02616 00000027 1434 DEC 23 + 1435 *IND BIT + 02617 0 00 40000 1436 INDBIT HLT* + 1437 *TEN B4 EXACT + 02620 00000000 1438 TENB4 OCT 00000000 + 02621 24000000 1439 OCT 24000000 + 1440 *GET NEXT IO CHAR ADR + 02622 0 00 02072 1441 GNICHA HLT GNIOCH GET NEXT IO CHAR + 1442 *RIGHT SHIFTER 18 + 02623 00000040 1443 RTSH18 OCT 00000040 + 1444 *TOP 5 BITS ONE + 02624 76000000 1445 TOP500 OCT 76000000 + 1446 *ONE TENTH FULL SCALE + 02625 02314630 1447 1TENTH OCT 02314630 + 1448 *GET NEXT FOR CHAR ADR + 02626 0 00 02045 1449 GNFCHA HLT GNFRCH GET NEXT FOR CHAR + 1450 *TWO + 02627 00000002 1451 TWO DEC 2 + 1452 *CODE DELETE + 00002630 1453 CODDEL EQU * + 1454 *CHAR1 MASK + 02630 77000000 1455 CH1MSK OCT 77000000 + 1456 *CHAR234 MASK + 02631 00777777 1457 CH234 OCT 00777777 + 1458 *NINE + 02632 00000011 1459 NINE DEC 9 + 1460 *DEC 99 + 02633 00000143 1461 DEC99 DEC 99 + 1462 *FIVE + 02634 00000005 1463 FIVE DEC 5 + 1464 *TEN + 02635 00000012 1465 TEN DEC 10 + 1466 *NINE AT TOP + 02636 11000000 1467 NINEAT OCT 11000000 + 1468 *MINUS 14 + 02637 77777762 1469 M14 DEC -14 + 1470 *ONE HALF DOUBLE + 02640 00000000 1471 HALFDB OCT 0 + 02641 20000000 1472 OCT 20000000 + 1473 *EIGHT + 02642 00000010 1474 EIGHT DEC 8 + 02643 00000047 1475 39D DEC 39 + 02644 77777700 1476 M770 OCT 77777700 + 02645 00001000 1477 LSB OCT 1000 + 1478 *F SCAN X ADR + 02646 0 00 00046 1479 FSCNXA HLT FSCANX F SCAN X ADR + 1480 *F SCAN X LIMIT ADR + 02647 0 00 02653 1481 FSXLMA HLT FSXLIM F SCANX LIMIT + 1482 *R SCAN X ADR + 02650 0 00 00047 1483 RSCNXA HLT RSCANX R SCAN X + 1484 *R TAGGED START ADR + 02651 2 00 00300 1485 RTAGST HLT IOBUF,2 IO BUFFER + 1486 *R SCAN X LIMIT ADR + 02652 0 00 00043 1487 RSCXLA HLT RSCNXL R SCAN XLIMIT + 1488 *F SCAN X LIMIT + 02653 00165140 1489 FSXLIM DEC 60000 + 1490 *DEC -33 + 02654 77777737 1491 DECM33 DEC -33 + 1492 *IBM BLANK + 02655 60000000 1493 IBMBLN OCT 60000000 + 1494 *ALL BLANKS + 02656 12121212 1495 BLANKS OCT 12121212 + 1496 *TAG BIT AND FLOAT IND + 02657 21000000 1497 TAGFLI OCT 21000000 + 1498 *NEG EXP BIT + 02660 00000400 1499 NEGBEX OCT 400 + 1500 *EXP BITS 7AND8 + 02661 00000300 1501 EXB78 OCT 300 + 1502 *OCT 27 + 02662 00000027 1503 OCT27 OCT 27 + 1504 *SMALLEST NEGATIYE + 00002663 1505 SMALNG EQU * + 1506 *NEG LIMIT + 02663 77777377 1507 NEGLIM OCT 77777377 + 1508 *LOW 9 BITS + 02664 00000777 1509 LOW9 OCT 777 + 1510 *POP ADR MASK + 02665 17600000 1511 POPADR OCT 17600000 + 1512 *ASN POP CODE + 02666 15000000 1513 APOPCD OCT 15000000 + 1514 *DIGIT CONV TEMP 1 + 02667 0 00 00000 1515 DGCVT1 HLT + 1516 *DIGIT CONV TEMP 2 + 02670 00000000 1517 DGCVT2 DEC 0 MUST STAY ZERO + 1518 *EMASK + 02671 00000700 1519 EMASK OCT 700 + 1520 *MLONES + 02672 77777000 1521 MLONES OCT 77777000 + 1522 *NEG EXP LIMIT + 02673 77777400 1523 NEGEXL OCT 77777400 + 1524 *ALL BUT S1 + 02674 17777777 1525 ALBTS1 OCT 17777777 + 1526 * MEMORY USED FOR CODE + 00002674 1527 LAST EQU *-1 + 1528 * + 1529 * + 1530 * + 1531 * T E M P O R A R Y S T O R A G E + 1532 *ERRO SAVE A + 02675 0 00 00000 1533 ERSAVA HLT + 1534 *NO COMMA FLAG + 02676 0 00 00000 1535 NOCOMA HLT + 1536 *X REGE + 02677 0 00 00000 1537 XREG HLT + 1538 *TAGGED START ADR + 02700 0 00 00000 1539 TAGST HLT + 1540 *SAVE X + 02701 0 00 00000 1541 SAVEX HLT + 1542 *SCAN X LIMIT + 02702 0 00 00000 1543 SCANXL HLT + 1544 *E EXP + 02703 0 00 00000 1545 EEXP HLT + 1546 *NUMBER DIGITS OUT -1 + 02704 0 00 00000 1547 NDIGM1 HLT + 1548 *CHAR INDEX SAVE + 02705 0 00 00000 1549 CHXSAV HLT + 1550 *GROUP COUNT + 02706 0 00 00000 1551 GROUPC HLT + 1552 *SCAN X SAVE + 02707 0 00 00000 1553 SCANXS HLT + 1554 *PAREN COUNT SAVE + 02710 0 00 00000 1555 PRENCS HLT + 1556 *STO IF OK TEMP + 02711 0 00 00000 1557 SIFOK1 HLT + 1558 *NO ARG FLAG + 02712 0 00 00000 1559 NOARGF HLT + 1560 *FIX TEMP 2 + 02713 0 00 00000 1561 FIXTP2 HLT + 1562 * + 1563 * TOTAL MEMORY USED BT RUN-TIME + 00002714 1564 USEDM EQU * + 00002715 1565 XXX EQU *+1 + 1566 *MNPRST EQU XXX/8*8 + 00003216 1567 MNPRST EQU 1678 + 1568 PAGE B O O L D E F I N I T I O N S + 1569 *IOTBLL + 00000002 1570 IOTBLL BOOL 2 + 1571 *FIX TEMP 1 + 00000003 1572 FIXTP1 BOOL 3 + 1573 *DOF TEMP ADR + 00000004 1574 DOFTAD BOOL 4 + 1575 *A IN TEMP 1 + 00000004 1576 AINTP1 BOOL 4 + 1577 *DBL FX MPY TEMP 1 + 00000004 1578 DFMPT1 BOOL 4 + 1579 *FIX TEMP + 00000005 1580 FIXTMP BOOL 5 + 1581 *A IN TEMP 2 + 00000005 1582 AINTP2 BOOL 5 + 1583 *DBL FX MPY TEMP 2 + 00000005 1584 DFMPT2 BOOL 5 + 1585 *XE + 00000006 1586 XE BOOL 6 + 1587 *DBL FX MPY TEMP 3 + 00000006 1588 DFMPT3 BOOL 6 + 1589 *A IN TEMP 3 + 00000006 1590 AINTP3 BOOL 6 + 1591 *YE + 00000007 1592 YE BOOL 7 + 1593 *DBL FX MPY TEMP 4 + 00000007 1594 DFMPT4 BOOL 7 + 1595 *ZE + 00000010 1596 ZE BOOL 10 + 1597 *CENTRAL 3 + 00000010 1598 CENRL3 BOOL 10 + 1599 *XM + 00000011 1600 XM BOOL 11 + 1601 *CENTRAL M + 00000011 1602 CENRL4 BOOL 11 + 1603 *TEMP A + 00000012 1604 TEMPA BOOL 12 + 00000014 1605 DPTMP1 BOOL 14 DP TEMP 1 + 1606 *EADR 1 + 00000015 1607 EADR1 BOOL 15 + 1608 *EADR 2 + 00000016 1609 EADR2 BOOL 16 + 1610 *OVERFLOW IND + 00000017 1611 OVFIND BOOL 17 + 1612 *YM + 00000020 1613 YM BOOL 20 + 1614 *DIGITS USED CNT + 00000020 1615 DIGUCT BOOL 20 + 1616 *ZM + 00000021 1617 ZM BOOL 21 + 1618 *CHAR + 00000021 1619 CHAR BOOL 21 + 00000022 1620 STDT2 BOOL 22 STD TEMP 2 + 00000023 1621 ZERO BOOL 23 + 00000024 1622 ONE BOOL 24 + 00000024 1623 RTSH23 BOOL 24 RT SHIFTER 23 + 00000025 1624 SIGN BOOL 25 + 00000025 1625 SIGNBT BOOL 25 SIQN BIT + 00000025 1626 NEGSGN BOOL 25 NEG SIGN + 00000025 1627 MINUS BOOL 25 + 00000026 1628 ONES BOOL 26 ALL ONES + 00000026 1629 MINUS1 BOOL 26 MINUS ONE + 00000027 1630 ADRMSK BOOL 27 ADR MASK + 1631 *E0 SIZE TEMP + 00000034 1632 E0SIZT BOOL 34 + 1633 *ARG SAVE + 00000034 1634 ARGSAV BOOL 34 + 00000035 1635 PART1 BOOL 35 + 1636 *STO CHAR TEMP 1 + 00000035 1637 SCHT1 BOOL 35 + 00000036 1638 PART2 BOOL 36 + 1639 *DIGITS SCANNED CNT + 00000036 1640 DIGSCT BOOL 36 + 1641 *DOF TEMP + 00000037 1642 DOFTEM BOOL 37 + 1643 *DOX TEMP + 00000037 1644 DOXTEM BOOL 37 + 1645 *PERIOD FLAG + 00000037 1646 PERFLG BOOL 37 + 1647 *IO FLAG + 00000040 1648 IOFLAG BOOL 40 + 1649 *UNIT ADR + 00000040 1650 UNITAD BOOL 40 + 1651 *M SAVE XR + 00000041 1652 MSAVEX BOOL 41 + 1653 *M RETURN ADR + 00000042 1654 MRETAD BOOL 42 + 1655 *R SCAN X LIMIT + 00000043 1656 RSCNXL BOOL 43 + 1657 *F TAGGED START ADR + 00000044 1658 FTAGST BOOL 44 + 1659 *COUNT + 00000045 1660 COUNT BOOL 45 + 1661 *F SCAN X + 00000046 1662 FSCANX BOOL 46 + 1663 *R SCAN X + 00000047 1664 RSCANX BOOL 47 + 1665 *P EXP SAVE + 00000050 1666 PEXPSV BOOL 50 + 1667 *P MINUS FLAG + 00000051 1668 PMINFG BOOL 51 + 1669 *PAREN COUNT + 00000052 1670 PARENC BOOL 52 + 1671 *8 IF DOUBLE ELSE 4 + 00000053 1672 8OR4 BOOL 53 + 1673 *PLUS IF END LIST + 00000054 1674 PIFEND BOOL 54 + 00000055 1675 FLTEMP BOOL 55 + 1676 *INPUT WORD SIGN + 00000055 1677 INPTWS BOOL 55 + 1678 *MINUS XPON FLAG + 00000057 1679 MXPOFG BOOL 57 + 1680 *DOF EXIT + 00000060 1681 DOFXIT BOOL 60 + 1682 *FLOAT A XREG + 00000061 1683 FLAXRG BOOL 61 + 1684 *FIX BANDA XREG + 00000061 1685 FXBAXR BOOL 61 + 00000062 1686 REG BOOL 62 + 1687 *GET F OR R CHAR + 00000062 1688 GETFR BOOL 62 + 00000063 1689 EXIT BOOL 63 + 1690 *OUTPUT FIELD SIZE + 00000063 1691 OUTFSZ BOOL 63 + 1692 *AGT TEMP 1 + 00000064 1693 AGTTP1 BOOL 64 + 1694 *R SCANX LIMIT FIELD + 00000064 1695 RSCNXF BOOL 64 + 1696 *SCAN X + 00000065 1697 SCANX BOOL 65 + 1698 *DEC PNT + 00000066 1699 DECPNT BOOL 66 + 1700 *P EXP + 00000067 1701 PEXP BOOL 67 + 00000071 1702 EOADR BOOL 71 E0 ADR + 00000072 1703 EOSIZE BOOL 72 E0 SIZE + 00000073 1704 EOTAG BOOL 73 EO+ ADR + 00000074 1705 EOIND BOOL 74 E0* ADR + 1706 *SENSE LIGHT WORD + 00000075 1707 SENSLW BOOL 75 + 00000076 1708 RUNTOP BOOL 76 RUN-TIME TOP MEMORY + 1709 *BIN TO BCD CONV LINK + 00000236 1710 BCDLNK BOOL 236 + 1711 *FL CONST MAKER LINK + 00000237 1712 FLCMKL BOOL 237 + 1713 *CONV TO 3 WORDS LTNK + 00000240 1714 CONV3W BOOL 240 + 00000354 1715 MAXPOS EQU ALBUTS + 00002674 1716 QQQ1S EQU ALBTS1 + 00000355 1717 255D EQU OCT377 + 00002663 1718 M2570 EQU NEGLIM + 00000017 1719 OFFLAG EQU OVFIND + 00002664 1720 O777 EQU LOW9 + 04600401 1721 AXC OPD 04600401 + 04600022 1722 BXC OPD 04600022 + 04624000 1723 LGR OPD 04624000 + 04600501 1724 AXCE OPD 04600501 AXC(E) KENR + 04600222 1725 BXAC OPD 04600222 + 04600450 1726 AXBA OPD 04600450 + 04601100 1727 CNAE OPD 04601100 CNA(E) KENR + 24600000 1728 CLX OPD 24600000 + 10400000 1729 DPA OPD 10400000 + 10700000 1730 STD OPD 10700000 + 11000000 1731 DOX OPD 11000000 + 11100000 1732 DOF OPD 11100000 + 12500000 1733 LDP OPD 12500000 + 14700000 1734 FLN OPD 14700000 + 13100000 1735 FLA OPD 13100000 + 13500000 1736 FLS OPD 13500000 + 14100000 1737 FLM OPD 14100000 + 14500000 1738 FLD OPD 14500000 + 15300000 1739 DPS OPD 15300000 + 1740 END \ No newline at end of file diff --git a/fortransa/frun.si b/fortransa/frun.si new file mode 100644 index 0000000..85e96e5 --- /dev/null +++ b/fortransa/frun.si @@ -0,0 +1,1739 @@ +* S D S F O R T R A N I I R U N T I M E +* +* D E C E M B E R O , 1 O 6 3 +* +* +* PUNCH OUT RUNTIME FROM 1 TO 1,T 1, TO 15T. +* AND FROM 250 TO FOLLONING ADDRESS: +PUNCH2 EQU LAST +* +* +* + BORG 1 + BRU SYSINI SYSTEM INITIALIZE + BORG 76 +FPONE DEC 1 +TAGBIT OCT 20000000 TAG BIT +* +* P R O G R A M M E D O P E R A T O R S +* + BRU XSDPOP 100 FIXED SET UF DUMMY + BRU FSDPOP 101 FLBATING SETUP DUMMY + BRU * 102 (SKR - O10) + BRU * 103 (SKE - O10) + BRU XSTPOP 104 FIX AND STORE + BRU FSTPOP 105 FLOAT AND STORE + BRU * 106 (XMA - O10) + BRU STDPOP 107 STORE DOUBLE PRECISION + BRU DOXPOP 110 DO FIXED + BRU DOFPOP 111 DO FLOATING + BRU AGXPOP 112 ASSIGNED GO TO FIXED + BRU AGFPOP 113 ASSIGNED GO TO FLOATING + BRU XFAPOP 114 FIXED FIRST ARGUMENT + BRU FFAPOP 11S FLOATING FIRST ARGUMENT + BRU XNAPOP 116 FIXED NEXT ARGUMENT + BRU FNAPOP 11T FLOATING NEXT ARGUMENT + BRU XIOPOP 120 FIXED INPUT/OUTPUT + BRU FIOPOP 121 FLOATING INPUT/OUT *UT + BRU LTFPOP 122 LBAD THEN FLAT + BRU LTXPOP 123 LBAD THEN FIX + BRU * 124 (MUL + O1D) + BRU LDPPOP 125 LOAD DOUBLE PRECISION + BRU FTAPOP 126 FLOAT THEN ADD + BRU * 12T (DIY - 910) + BRU * 130 (SKB - 910) + BRU FLAPOP 131 FLOATING ADD + BRU FTSPOP 132 FLOAT THEN SUBTRACT + BRU * 133 IADM 10) + BRU * 134 (CA( + O1) + BRU FLSPOP 135 FLOATING SUBTRACT + BRU FTMPOP 136 FLOAT THEN MULTIPLY + BRU * 13T (CXA - 910) + BRU XMPPOP 140 FIXED MULTIPLY + BRU FLMPOP 141 FLOATING MULTIPLY + BRU FTDPOP 142 FLOAT THEN DIVIDE + BRU * 143 (STE - 910) + BRU XDVPOP 144 FIXED DIVIDE + BRU FLDPOP 145 FLOATING DIVIDE + BRU * 146 (CHA - 910) + BRU FLNPOP 147 FLOATING NEGATE + BRU ALXPOP 150 ASSIQN LABEL TO FIXED + BRU ALFPOP 151 ASSIQN LABEL TO FLOATING + BRU * 152 (LDE - 91O) + BRU DPSPOP 153 DOUBLE PRECISION SUBTRACT + BRU DPAPOP 154 DOUBLE PRECISION ADD + BRU DPMPOP 155 DOUBLE PRECISION MULTIPLY + BRU * 156 (CBX - 910) + BRU * 157 (CXB - 910) + PAGE + BORG 250 +*DEC 24 +DEC24 DEC 24 +*FOUR +FOUR DEC 4 +*S 14 BIT +S14BIT OCT 1000 +*LIVE SKS MOP +SKSMOP SKS 20000 20000 +*FLOAT IND +FLIND OCT 1000000 +*END FIELD CHAR +ENDFLD EQU * +*CAR RETURN +CARRET OCT 52000000 +*CHAR 4 MASK +CH4MSK OCT 77 + DEC -20 + OCT 00000052 +*DEC 79 +DEC79 DEC 79 + DEC 131 +*LIVE BRU MOP +BRUMOP BRU 0 + HLT LNIOR LINE IN/OUT AND RETURN +*ERROR LINK +ERRLNK HLT ERROR ERROR +*FIX SPROG LINK +FIXL HLT FXBNDA FIX BANDA +*FLOAT SPROG LINK +FLOATL HLT FLOATA FLOAT A +*UNDEFINED LABEL +UNDEF BRM* ERRLNK ERRR LINK + BCI 1,LABL + BRU UNDEF UNDEFINED LABEL +*COUNT TEST LINK +CNTTLN HLT +*ONE AND TAG BIT +TAGONE OCT 20000001 + HLT STIFOK STO IO CHAR IF OK + HLT DBLXMP DOUBLE FIXED MULT + BRU CNTTST COUNT TEST +*IO BUFFER +IOBUF BSS 33 +*END BUFFR +ENDBUF EQU * +*CHARACTERISTIC +CHARIS HLT +*WIDTH +WDTH HLT +*4 IF E OUT +4IFEOT HLT +*INPUT WORD 1 +INWRD1 HLT +*INPUT WORD2 +INWRD2 HLT +*END FIELD FLAG +ENDFFL HLT +*CENTRAL 1 +CENRL1 HLT +*CENTRAL2 +CENRL2 HLT +*THREE +THREE DEC 3 +*BLANK +BLANK OCT 12000000 +*PERI3D +PERIOD BCI 1,.000 +*LARGEST POS MANTISA +BIGP EQU * +*ALL BUT S +ALBUTS OCT 37777777 +*CHARIS UPPER POS LIMIT +OCT377 EQU * +*POS LIMIT + OCT 00000377 +*M ARG ADR +MARGAD HLT +*MINUS 5 +MINUS5 OCT 77777773 + BCI 1,LOAD + OCT 31452712 + BCI 1,COMP + BCI 1,LETE + OCT 12121252 + PAGE +*SYSTEM INITIALIZE +SYSINI CLA + STA SENSLW SENSE LIGHT WORD + STA OVFIND OVERFLOW IND + DIR 20004 + TYPW 1,4 EOM 2641 + LDX MINUS5 MINUS 5 +Q1 MIW SYSINI,2 SYSTEM INITIALIZE + BRX Q1 $1 + TOPW 14000 + HLT + NOP 4096,2 10000 + BRU MNPRST MAIN PROG START +*ERROR +ERROR HLT + STA Q2 $1 + LDA NEGBEX NEG EXP BIT + SKA* ERROR ERROR + LDA NOPMOP LIV NOP MOP + XMA Q2 $1 + MIN ERROR ERROR + TYPW 1,4 EOM 2641 + MIW Q4 $3 + MIW* ERROR ERROR + MIW Q5 $4 + TOPW +Q2 HLT +Q3 BRTW 21000 + BRU Q3 $2 + BRR ERROR ERROR +Q4 BCI 1,ERR +Q5 OCT 12121252 +FLAPOP STX XREG + STA TEMPA A,B NON ZERO + CXA + STB ZM B + STE + STX ZE SIGN EXTENDED EXP(A,B) + ADD XREG DOUBLE X + AXC + EAX* 0 PROCURE ARGUMENT ADDRESS + SKE 1,2 + BRU Q5B + CLR M=ZERO + BRU FLAD +Q5B SKE TEMPA + BRU Q5A + CLR A,B=ZERO + BRU FLAC +Q5A CXA M NON ZERO + LDB 0,2 + STE EXTEND SIGN OF EXP (4) 20S + XXA + SUB ZE EXP (M)-EXP(A) + SKG ONES + BRU FLAGM /A/ .GR. /M/ + SKA M770 /A/ .LE. /M/ + LDA 39D MAX SHIFT = 39 + XMA TEMPA + LDB ZM + RSH* TEMPA ALIGN FRACTIONS + XAB +FLAC SKN FLAG FLAG NEGATIVE IFF FLS + BRU Q5C FLA + MRG 0777 FLS + SUB 0,2 + EOR 0777 + XAB + SUC 1,2 + BRU FLAF +Q5C RCH 101 CLA(E) + ADD 0,2 + XAB + ADC 1,2 +FLAF STE +FLAOVT OVT + BRU OFSET RIGHT NORMALIZE + NOD 38 LEFT NORMALIZE + SKA ONES + BRU FLANZ + CLX +FLANZ XXA + SKG M2570 TEST FOR EXPONENT UNDERFLOW +FLAOF BRR FLAOF,4 +FLAOK XXA +FLAX LDE 0,2 LDE,CLX + STX FLAG RESET FLA/FLS FLAG + LDX XREG + OVT + BRU OFLO + BRR 0 +FLAGM CNA FORCE EXP DIFF POSITIVE + SKA M770 SKIP IF LESS THAN 64 + LDA 39D + LDX 1,2 + XXA + RSH 0,2 ALIGN FRACTIONS + RCH 102 +FLAD SKN FLAG + BRU Q5D FLA + XMA TEMPA FLS + XAB + XMA ZM + SUB ZM + XAB + SUC TEMPA + BRU FLAF +Q5D XAB FLA + ADD ZM + XAB + ADC TEMPA + BRU FLAF +OFSET RSH 1 RIGHT NORMALIZE + EOR MINUS + BRX FLAX + XXA + SKG 255D CHECK FOR OVERFLOW + BRU FLAOK + BRR FLAOF +DIVOF LDA TEMPA + EOR 1,2 DETERMINE SIGN OF QUOTIENT + BRU Q5E OVERFLOW +OFLO STE + BRX Q5E OVERFLOW + CLR UNDERFLOW + LDX XREG + BRR 0 +Q5E LDX SIGN SET OVERFLOW INDICATOR + STX OFFLAG + EOR MINUS + RSH 39 + EOR MINUS + EAX 255 + BRU FLAX +FLSPOP STA FLAG + SKA MINUS + BRU FLAPOP + EOR ONES + XMA FLAG + BRU FLAPOP +FLAG PZE 0 +FLMPOP STX XREG + STA TEMPA AH + CXA + STE EXTEND EXP (A,B) + STX ZE + BXC + LCY 1 DOUBLE X + XXA + EAX* 0 + LGR 2 FORCE + + MUL 1,2 + STA ZM AL * MH + LDA 0,2 + CXB + AXCE AXC(E) KENR + XXA EXTEND EXP (M) + ADM ZE AE+ME = EXP (BSSULT) + BXAC CXA, BXC + LGR 2 FORCE + + MUL TEMPA AH * ML + ADD ZM AH * ML + AL * MH + MUL TWO SCALE + STB ZM + XMA TEMPA + MUL 1,2 AH * MH + XAB + ADD ZM + XAB + ADC TEMPA + LDX ZE EXP (BSSULT) + SKA MAXPOS + BRU FLCOM ALL RIGHT TO NORMALIZE + SKB MLONES + BRU FLCOM NOT -1 OR 0 + SKE MINUS SEPARATE -1 FROM 0 + BRU FLMX 0, EXIT + RCY 1 -1, RIGHT NORMALIZE + BRX FLCOM + BRU FLCOM +FLDPOP STX XREG + STA TEMPA + CXA + STE EXTEND EXP (A,B) + STX ZE + BXC + LCY 1 (AH+AL)/(MH+ML)= + LDB TEMPA ((AH+AL)/MH)*(1-ML/MH)= + AXBA (Q+R/MH)*(1-ML/MH)= + EAX* 0 Q+(R-Q*ML)/MH + RSH 2 + DIV 1,2 + OVT + BRU DIVOF OVERFLOW IFF DIVISOR =0 + STA ZM SINGLE PRECISION QUOTIENT=Q + BAC + RSH 1 + STA TEMPA REMAINDER = R + LDB 0,2 + CXA + STE EXTEND EXP (M) + XXA + CNA EXP(BSSULT)=EXP(A)+2-EXP(M) + ADD TWO + ADM ZE + BAC + RCY 2 + CNA -ML + MUL ZM Q + ADD TEMPA R- Q*ML + DIV 1,2 (R-Q*ML)/MH + MUL TWO SCALE + ADD ZM Q+(R-Q*ML)/MH + LDX ZE EXP(BSSULT) + SKA ONES + BRU FLCOM + BRU FLMX +FLNPOP STX XREG + SKB MLONES + BRU FLNA LESS SIG. HALF NON zero + CNA + SKE ZERO + SKA QQQ1S + BRR 0 + STE + SKE MINUS PLACE SIGN BIT IN B + BRU FLCOM + RCY 1 SIGN BIT TO A + BRX Q5F +FLCOM NOD 4 NORMALIZE RESULT +Q5F XXA + SKG 255D CHICK FOR EXPONENT + SKG M2570 OVERFLOW/UNDERFLOW + BRU FLAOF + XXA +FLNB LDE +FLMX LDX XREG + BRR 0 +FLNA STE + XAB + CNA + XAB + EOR ONES + BRU FLNB +*DPM POP +DPMPOP STX XREG + EAX* 0 + STA XM + BAC + RCY 2 + MUL 1,2 + STA ZM + LDA 0,2 + LGR 2 + MUL XM + ADD ZM + MUL TWO + STB ZM + XMA XM + MUL 1,2 + XAB + ADD ZM + XAB + ADC XM + LDX XREG + SKG MINUS +Q28 SKB ONES + BRR 0 + BRR Q29 *2 +Q29 HLT Q28 +*LTX POP +LTXPOP LDA 0 + STA EXIT + LDP* EXIT + BRM FXBNDA FIX BANDA + BRR EXIT +*XMP POP +XMPPOP MUL* 0 0 + RSH 1 1 + XAB NO + BRR 0 0 +*XDV POP +XDVPOP MUL RTSH23 RT SHIFTER 23 + DIV* 0 0 + BRR 0 0 +*XST POP +XSTPOP STX REG + LDX 0 + STX EXIT + BRM FXBNDA FIX B AND A + LDX REG + STA* EXIT + BRR EXIT +*FST POP +FSTPOP LDB 0 + STB EXIT + CLB + BRM FLOATA FLOAT A + STD* EXIT + BRR EXIT +*FIX BANDA +FXBNDA HLT + STX FXBAXR FIX BANDA XREG + STA FIXTP2 FIX TEMP 2 + LDX 0 0 + SKA SIGN SIGN + FLN + STX 0 0 + SKB NEGBEX NEG EXP BIT + BRU Q31 + SKB EXB78 EXP BITS 7AND8 + BRU Q31 + STE + STA FIXTMP FIX TEMP + CXA + CNA + ADD OCT27 OCT27 + SKG SMALNG SMALLEST NEGATIVE + BRU Q32 + CAX + LDA FIXTMP FIX TEMP + RSH 0,2 + BRU Q33 $4 +Q31 CLR + BRU Q33 +Q32 CNA + CAX + LDA FIXTMP + LSH 0,2 +Q33 SKN FIXTP2 FIX TEMP 2 + BRU Q34 $5 + CNA +Q34 LDX FXBAXR FIX BANDA XREG + BRR FXBNDA +*LTF POP +LTFPOP LDA* 0 + BRM FLOATA FLOAT A + BRR 0 0 +*FLOAT A +FLOATA HLT + STX FLAXRG FLOAT A XREG + CLB + EAX 23 + NOD 23 27 + LDE + LDX FLAXRG FLOAT A XREG + BRR FLOATA FLOAT A +*FTA POP +FTAPOP STB PART1 + STA PART2 + LDA 0 0 + STA EXIT + LDA* 0 0 + BRM FLOATA FLOAT A + FLA PART1 + BRR EXIT +* FTS POP +FTSPOP STB PART1 + STA PART2 + LDA 0 0 + STA EXIT + LDA* 0 0 + BRM FLOATA FLOAT A + STD FLTEMP + LDP PART1 + FLS FLTEMP + BRR EXIT +*FTM POP +FTMPOP STB PART1 + STA PART2 + LDA 0 + STA EXIT + LDA* 0 + BRM FLOATA FLOAT A + FLM PART1 + BRR EXIT +*FTD POP +FTDPOP STB PART1 + STA PART2 + LDA 0 + STA EXIT + LDA* 0 0 + BRM FLOATA FLOAT A + STD FLTEMP + LDP PART1 + FLD FLTEMP + BRR EXIT +*DOX POP +DOXPOP LDB 0 0 + STB DOXTEM DOX TEMP + MIN 0 0 + ADM* 0 O + SKA SIGNBT SIGN BIT + BRU Q35 $1 + LDA* 0 O + SKG* DOXTEM DOX TEMP + MIN 0 0 + BRR 0 0 +Q35 LDA* DOXTEM DOX TEMP + SKG* 0 O + MIN 0 0 + BRR 0 O +*DOF POP +DOFPOP STA DOFTEM DOF TEMP + LDA 0 0 + STA DOFTAD DOF TEMP ADR + ADD ONE ONE + STA DOFXIT DOF EXIT + LDA DOFTEM DOF TEMP + FLA* DOFXIT DOF EXIT + STD* DOFXIT DOF EXIT + SKN DOFTEM DOF TEMP + BRU Q36 *1 + LDP* DOFTAD DOF TEMP ADR + FLS* DOFXIT DOF EXIT + SKG ZERO ZERO + MIN DOFXIT DOF EXIT + BRR DOFXIT DOF EXIT +Q36 FLS* DOFTAD DOF TEMP ADR + SKG ZERO ZERO + MIN DOFXIT DOF EXIT + BRR DOFXIT DOF EXIT +*XSD POP +XSDPOP CLA + BRU Q37 *1 +*FSD POP +FSDPOP LDA FLIND FLOAT IND +Q37 LDB FLIND FLOAT IND + STX XREG XREG + EAX* 0 0 + SKM* EADR2 EADR 2 + BRU Q39 *2 +Q38 MRG* EADR2 EADR 2 + MIN EADR2 EADR 2 + STA 0,2 0 + MRG TAGBIT TAG BIT + STA 1,2 1 + LDX XREG XREG + BRR 0 0 +Q39 BRM* ERRLNK ERROR LINK + BCI 1,ARGM + BRU Q38 +*FFA POP +FFAPOP BRM DBLXRG DOUBLE XREG + LDA FLIND FLOAT IND + BRU Q40 *1 +*XFA POP +XFAPOP CLA + STX XREG XREG +Q40 LDB EOADR EO ADR + STB EADR1 EADR 1 + LDB EOSIZE EO SIZE + STB EOSIZE EO SIZE TEMP + SKR EOSIZE EO SIZE TEMP + BRU Q41 $2 + BRM* ERRLNK ERROR LINK + BCI 1,SIZE + BRU Q41 +*FNA POP +FNAPOP BRM DBLXRG DOUBLE XREG + LDA FLIND FLOAT IND + BRU Q41 *2 +*XNA POP +XNAPOP CLA + STX XREG XREG +Q41 STA* EADR1 EADR 1 + EAX* 0 0 + CXA + ETR ADRMSK ADR MASK + ADM* EADR1 EADR 1 + MIN EADR1 EADR 1 + LDX XREG XREG + SKR E0SIZT E0 SIZE TEMP + BRR 0 0 + BRM* ERRLNK ERROR LINK + BCI 1,SIZE + BRR 0 0 +*DOUBLE XREG +DBLXRG HLT + STX XREG XREG + STA TEMPA TEMPA + RCH 61 XXB+CLA + LCY 1 + XXB + LDA TEMPA TEMPA + BRR DBLXRG DOUBLE XREG +*ALF POP +ALFPOP BRM DBLXRG DOUBLE XREG + BRU Q42 $1 +*ALX POP +ALXPOP STX XREG XREG +Q42 LDA 0 0 + ETR ADRMSK ADR MASK + STA* 0 0 + LDX XREG XREG + MIN 0 0 + BRR 0 0 +*AGF POP +AGFPOP BRM DBLXRG DOUBLE XREG + BRU Q43 *3 +*AGX POP +AGXPOP STX XREG XREG +Q43 LDX* 0 0 + LDA 0,2 0 + LDB POPADR POP ADR MASK + SKM APOPCD ASN POP CODE + BRU Q45 *1 +Q44 STX AGTTP1 AGT TEMP 1 + LDX XREG XREG + BRR AGTTP1 AGT TEMP 1 +Q45 BRM* ERRLNK ERROR LINK + BCI 1,AGTO + BRU Q44 *2 +*XIO POP +XIOPOP LDB FOUR FOUR + BRU Q46 $1 +*FIO POP +FIOPOP LDB EIGHT EIGHT +Q46 STB 8OR4 8 IF DOUBLE ELSE 4 + STX MSAVEX M SAVE XR + LDA 0 0 + STA MRETAD M RETURN ADR + LDA TWO TWO + MRG NOARGF NO ARG FLAG + STA NOARGF NO ARG FLAG + STX MARGAD M ARG ADR + CXA + ADD MARGAD M ARG ADR + XAB + SKG FOUR FOUR + LDB MARGAD M ARG ADR + CBX + EAX* 0 0 + CXA + ETR ADRMSK ADR MASK + STA MARGAD M ARG ADR + LDP* MARGAD M ARG ADR + STD INWRD1 INPUT WORD 1 + BRU CNTTLN COUNT TEST LINK +*LDP POP +LDPPOP STX DPTMP1 + CXA + ADD DPTMP1 + CAX + EAX* 0 0 + LDA 1,2 1 + LDB 0,2 0 + LDX DPTMP1 + BRR 0 0 +*STDPOP +STDPOP STX DPTMP1 + STA STDT2 + CXA + ADD DPTMP1 + CAX + LDA STDT2 + EAX* 0 0 + STA 1,2 1 + STB 0,2 0 + LDX DPTMP1 + BRR 0 0 +*DPA POP +DPAPOP STX DPTMP1 + EAX* 0 0 + XAB + ADD 0,2 0 + XAB + ADC 1,2 1 + LDX DPTMP1 + BRR 0 0 +*DPS POP +DPSPOP STX DPTMP1 + EAX* 0 0 + XAB + SUB 0,2 0 + XAB + SUC 1,2 1 + LDX DPTMP1 + BRR 0 0 + PAGE +*NEXT SKN +NXCHAR BRM INSCAN INT SCAN + STB COUNT COUNT + SKR COUNT COUNT + NOP + LDX M14 MINUS 14 + LDA CHAR CHAR +Q47 SKE CHTABL,2 CHAR TABLE + BRX Q47 $1 + STX CHXSAV CHAR INDEX SAVE + BRU BRUITB,2 BRUI TABLE +*HAVE L PAREN +HAVELP LDA COUNT COUNT + STA GROUPC GROUP COUNT + MIN PARENC PAREN COUNT + LDA PARENC PAREN COUNT + SKA TWO TWO + BRU BRUITB BRUI TABLE + STA PRENCS PAREN COUNT SAVE + LDA FSCANX F SCAN X + STA SCANXS SCAN X SAVE + BRU NXCHAR NEXT CHAR +*HAVE P +HAVEP STB PEXPSV P EXP SAVE + SKN PMINFG P MINUS FLAG + BRU NXCHAR NEXT CHAR + CLA + STA PMINFG P MINUS FLAG + SUB PEXPSV P EXP SAVE + STA PEXPSV P EXP SAVE + BRU NXCHAR NEXT CHAR +*HAVE R PAREN +HAVERP SKR GROUPC GROUP COUNT + BRU Q48 $3 + BRU Q49 $2 +Q48 LDA SCANXS SCAN X SAVE + STA FSCANX F SCAN X + BRU NXCHAR NEXT CHAR +Q49 SKR PARENC PAREN COUNT + BRU NXCHAR NEXT CHAR + LDA NOARGF NO ARG FLAG + SKE TWO TWO + BRU Q50 $4 + BRM* ERRLNK ERROR LINK +Q50 SKN PIFEND PLUS IF END LIST + BRU LASTLN LAST LINE OUT + BRM LNIOR LINE IN/OUT AND RETURN + LDA PRENCS PAREN COUNT SAVE + STA PARENC PAREN COUNT + BRU Q48 $3 +*HAVE EFIAOG +HAVEEF LDA ONE ONE + MRG NOARGF NP ARG FLAG + STA NOARGF NO ARG FLAG + BRM INSCAN INT SCAN + STB WDTH WDTH + CLA + STA DECPNT DEC PNT + STA PEXP P EXP + STA 4IFEOT 4 IF E OUT + STA PMINFG P MINUS FLAG + LDA CHAR CHAR + SKE PERIOD PERIOD + BRU Q51 $4 + BRM INSCAN INT SCAN + STB DECPNT DEC PNT + LDA PEXPSV P EXP SAVE + STA PEXP P EXP +Q51 SKR FSCANX F SCAN X +*IO TEST +IOTEST LDX CHXSAV CHAR INDEX SAVE + SKN IOFLAG IO FLAG + EAX -8,2 -10 + STX CHXSAV CHAR INDEX SAVE + STX NOCOMA NO COMMA FLG + BRU BRU2TB,2 BRU2 TABLE +*COUNT TEST +CNTTST LDA SIGNBT SIGN BIT + STA NOCOMA NO COMMA FLAGTLG +*COUNT TEST NO SET +CNTTNS LDX CHXSAV CHAR INDEX SAVE + SKR COUNT COUNT + BRU BRU2TB,2 BRU2 TABLE + BRU NXCHAR NEXT CHAR +*HAVE MINUS +HAVEMI LDA SIGNBT SIGN BIT + STA PMINFG P MINUS FLAG + BRU NXCHAR NEXT CHAR + PAGE +*DLR IN +DLRIN BRM GNFCIB GET NEXT FOR CHAR INCL BLNK + SKE DLR DLR + BRU Q52 $1 + BRU NXCHAR NEXT CHAR +Q52 SKR FSCANX F SCAN X + BRM GNICIC GET NEXT IO CHAR INCL COMMA + SKE DLR DLR + BRU Q53 $2 + LDA BLANK BLANK +Q53 BRM STOFCH STO FOR CHAR + BRU DLRIN DLR IN +*DLROUT +DLROUT BRM GNFCIB GET NEXT FOR CHAR INCL BLNK + SKE DLR DLR + BRU Q54 $1 + BRU NXCHAR NEXT CHAR +Q54 BRM STOICH STO IO CHAR + BRU DLROUT DLR OUT +*X IN +XIN BRM GNICIC GET NEXT ICHAR INGLCOMMA 44 + BRU CNTTNS COUNT TEST NO SET +*X OUT +XOUT LDA BLANK 5LANX + BRM STOICH STO IO CHAR + BRU CNTTNS COUNT TEST NO SET +*HIN +HIN BRM GNICIC GET NEXT IO CHAR INCL COMMA + BRM STOFCH STO FOR CHAR + BRU CNTTNS COUNT TE3T NO SET +*H OUT +HOUT BRM GNFCIB GET NEXT FOR CHAR INCL BLNK + BRM STOICH STO IO CHAR + BRU CNTTNS COUNT TEST NO SET +*AOUT +AOUT SKN PIFEND PLUS IF END LIST + BRU LASTLN LAST LINE OUT + LDA WDTH WDTH + SKG 8OR4 8 IF DOUBLE ELSE 4 + BRU Q55 $1 + LDA 8OR4 8 IF DOUBLE ELSE 4 +Q55 STA OUTFSZ OUTPUT FIELD SIZE + LDA WDTH WDTH + ADD RSCANX R SCAN X + STA RSCNXF R SCAN X LIMIT FIELD + LDP INWRD1 INPUT WORD 1 + LCY 18 22 + STD CENRL1 CENTRAL 1 +Q56 LDP CENRL1 CENTRAL 1 + LCY 6 + STD CENRL1 CENTRAL 1 + BRM STIFOK STO IO CHAR IF OK + SKN ENDFFL END FIELD FLAG + BRU Q56 $2 + BRU RETMPR RETURN TO MAIN PROG +*AIN +AIN SKN PIFEND PLUS IF END LIST + BRU RETMPR RETURN TO MAIN PROG + LDA 8OR4 8 IF DOUBLE ELSE 4 + STA AINTP1 A IN TEMP 1 + SKG WDTH WDTH + BRU Q57 $1 + LDA WDTH WDTH +Q57 STA AINTP2 A IN TEMP 2 + LDA WDTH WDTH + SUB 8OR4 8 IF DOUBLE ELSE 4 + SKA SIGNBT SIGN BIT + CLA + ADM RSCANX R SCAN X + BRU Q60 $3 +Q58 LDA BLANK BLANK + SKR AINTP2 A IN TEMP 2 + BRM GNICIC GET NEXT IO CHAR INCL COMMA + SKE CARRET CAR RETURN + BRU Q59 $2 + LDA BLANK BLANK +Q59 STA AINTP3 A IN TEMP 3 + LDP CENRL1 CENTRAL1 + ETR CH234 CHAR234 MASK + MRG AINTP3 A IN TEMP 3 + LCY 6 + STD CENRL1 CENTRAL 1 +Q60 SKR AINTP1 A IN TEMP 1 + BRU Q58 $4 + LDX MARGAD M ARG ADR + STB 0,2 0 + CAB + LDA FIVE FIVE + SKG 8OR4 8 IF DOUBLE ELSE 4 + BRU Q61 $5 + BRU RETMPR RETURN TO MAIN PROG +Q61 CBA + XMA 0,2 0 + STA 1,2 + BRU RETMPR RETURN TO MAIN PROG +*EFGIN +EFGIN SKN PIFEND PLUS IF END LIST + BRU RETMPR RETURN TO MAIN PROG + BRM CONSCN CONST SCAN + BRM FLCMKL FL CONST MAKER LINK + LDX MARGAD M ARG ADR + LDP CENRL1 CENTRAL 1 + STD* MARGAD M ARG ADR + BRU RETMPR RETURN TO MAIN PROG +*I IN +IIN SKN PIFEND PLUS IF END LIST + BRU RETMPR RETURN TO MAIN PROG + BRM CONSCN CONST SCAN + BRM* FLCMKL FL CONST MAKER LINK + BRM FIX FIX + LDX MARGAD M ARG ADR + STA 0,2 + BRU RETMPR RETURN TO MAIN PROG +*I OUT +IOUT SKN PIFEND PLUS IF END LIST + BRU LASTLN LAST LTNE OUT + LDA INWRD1 INPUT WORD 1 + BRM* FLOATL FLOAT SPROG LINK + STD INWRD1 INPUT WORD 1 + LDA MINUS1 MINUS ONE + STA DECPNT DEC PNT +*F OUT +FOUT SKN PIFEND PLUS IF END LIST + BRU LASTLN LAST LINEUT + BRM* CONV3W CONV TO 3 WORDS LINK + BRM* BCDLNK BIN TO BCD CONV LINK + BRU RETMPR RETURN TO MAIN PPROG +*E OUT +EOUT SKN PIFEND PLUS IF END LIST + BRU LASTLN LAST LINE OUT + BRM* CONV3W CONV TO 3 WORDS LINK + LDA FOUR FOUR + STA 4IFEOT 4 IF E OUT + LDA CENRL1 CENTRAL1 + MRG CENRL2 CENTRAL2 + SKE ZERO ZERO + BRU Q62 $5 + BRU Q63 $6 +Q62 LDA CHARIS CHARACTERISTIC + SUB PEXP P EXP + ADD ONE ONE +Q63 STA EEXP E EXP + LDA MINUS1 MINUS ONE + STA CHARIS CHARACTERISTIC + BRM* BCDLNK BIN TO BCD CONV LINK + LDA FOUR FOUR + STA OUTFSZ OUTPUT FIELD SIZE + ADM RSCNXF R SCAN X LIMIT FIELD + LDA E E + BRM STIFOK STO IO CHAR IF OK + LDA BLANK BLANK + SKN EEXP E EXP + BRU Q64 $1 + LDA EEXP E EXP + CNA + STA EEXP E EXP + LDA MINUS MINUS +Q64 BRM STIFOK STO IO CHAR IF OK + LDA EEXP E EXP + SKG NINE NINE + BRU Q65 $2 + SKG DEC99 DEC 99 + BRU Q66 $3 + BRM ERROR + BCI 1,OEXP + CLA + BRU Q66 $3 +Q65 CLA + BRU Q67 $4 +Q66 ABC + LSH 1 + DIV TEN TEN + STB EEXP EEXP + LSH 18 22 +Q67 BRM STIFOK STO IO CHAR IF OK + LDA EEXP E EXP + LSH 18 22 + BRM STIFOK STO IO CHAT IF OK + BRU RETMPR RETURN TO MAIN PROG + PAGE +*GET NEXT CHAR +GNCHAR HLT + STX SAVEX SAVE X + LDA* SCANX SCAN X + SKG* SCANXL SCAN X LIMIT + BRU Q68 $1 + LDA ENDFLD END FIELD CHAR + STA CHAR CHAR + BRR GNCHAR GET NEXT CHAR +Q68 RCY 2 + AXC + LCY 2 + MUL THREE THREE + LDA* TAGST TAGGED START ADR + CBX + LSH 0,2 + ETR CH1MSK CHAR1 MASK + SKE IBMBLNK IBM BLANK + BRU Q69 $2 + LDA BLANK BLANK +Q69 STA CHAR CHAR + MIN* SCANX SCAN X + LDX SAVEX SAVE X + SKE CARRET CAR RETURN + BRR GNCHAR GET NEXT CHAR + SKR* SCANX SCAN X + BRR GNCHAR GET NEXT CHAR +*GET NEXT FOR CHAR +GNFRCH HLT +Q70 BRM GNFCIB GET NEXT FOR CHAR INCL BLNK + SKE BLANK BLANK + BRR GNFRCH GET NEXT FOR CHAR + BRU Q70 $1 +*GET NEXT FOR CHAR INCL BLNK +GNFCIB HLT + CLB + BRM INITSC INITIALIZE SCANS + BRM GNCHAR GET NEXT CHAR + BRR GNFCIB GET NEXT FOR CHAR INCL BLANK +*GET NEXT IO CHAR INCL BLNK +GNICIB HLT +Q71 LDA ENDFLD END FIELD CHAR + STA CHAR CHAR + SKN NOCOMA NO COMMA FLAG + BRR GNICIB GET NEXT IO CHAR INCL BLNK + BRM GNICIC GET NEXT IO CHAR INVL COMMA + SKE COMMA COMMA + BRR GNICIB GET NEXT IO CHAR INCL BLNK + CLA + STA NOCOMA NO COMMA FLAG + BRU Q71 $1 +*GET NEXT IO CHAR +GNIOCH HLT + LDA RSCNXF R SCAN X LIMIT FIELD + SKG RSCANX R SCAN X + BRU Q72 $1 + BRU Q73 $2 +Q72 LDA ENDFLD ENDFIELD CHAR + BRU Q74 $3 +Q73 BRM GNICIB GET NET IO CHAR INCL BLNK + SKE BLANK BLANK + BRR GNIOCH GET NEXT IO CHAR + LDA ONE ONE +Q74 STA CHAR CHAR + BRR GNIOCH GET NEX IO CHAR +*GET NEXT IO CHAR INCL COMMA +GNICIC HLT + LDB THREE THREE + BRM INITSC INITIALIZE SCANS + BRM GNCHAR GET NEXT CHAR + BRR GNICIC GET NEXT IO CHAR INCL COMMA + PAGE +*STO CHAR +STOCH HLT + STA ARGSAV ARG SAVE + STX SAVEX SAVE X + LDA* SCANX SCANX + SKG* SCANXL SCAN X LIMIT + BRU Q75 $1 + BRU Q76 $2 +Q75 RCY 2 2 + AXC 401 + LCY 2 2 + MUL THREE THREE + LDA* TAGST TAGGED START AOR + STX SCHT1 STO CHAR TEMP 1 + CBX + LCY 0,2 0 + ETR CH234 CHAR234 MASK + MRG ARGSAV ARG SAVE + RCY 0,2 + LDX SCHT1 STO CHAR TEMP 1 + STA* TAGST TAGGED START ADR +Q76 MIN* SCANX SCAN X + LDX SAVEX SAVE X + BRR STOCH STO CHAR +*STO FOR CHAR +STOFCH HLT + CLB + BRM INITSC INITIALIZE SCANS + BRM STOCH STO CHAR + BRR STOFCH STO FOR CHAR +*STO IO CHAR +STOICH HLT + LDB THREE THREE + BRM INITSC INITIALIZE SCANS + ETR CH1MSK CHAR 1 MASK + SKE BLANK BLANK + BRU Q77 $1 + LDA RSCNXL R SCAN LIMIT + SKG DEC79 DEC 79 + BRU Q77 $2 + LDA IBMBLN IBM BLANK + BRU Q78 $1 +Q77 LDA BLANK BLANK +Q78 BRM STOCH STO CHAR + BRR STOICH STO 19 CHAR +*STO IO CHAR IF OK +STIFOK HLT + STA SIFOK1 STO IF OK TEMP 1 + CLA + STA ENDFFL END FIELD FLAG +Q79 LDA RSCANX R SCAN X5,A ( + ADD ONE ONE + SKG RSCNXF P SCAN X LIMIT FIELD + BRU Q80 $1 + LDA SIGNBT SIGN BIT + STA ENDFFL END FIELD FLAG + BRR STIFOK STO IO CHAR IF OK +Q80 LDA RSCANX R SCAN X + ADD OUTFSZ OUTPUT FIELD SIZE + SUB RSCNXF R SCAN X LIMIT FIELD + SKA SIGNBT SIGN BIT + BRU Q81 $2 + SKR OUTFSZ OUTPUT FIELD SIIE + SKE ZERO ZERO + BRR STIFOK STO IO CHAR IF OK + LDA SIFOK1 STO IF OK TEMP 1 + BRM STOICH STO IO CHAR + BRR STIFOK STO IO CHAR IF OK +Q81 LDA BLANK BLANK + BRM STOICH STO IO CHAR + BRU Q79 + PAGE +*LINE IN/OUT AND RETURN +LNIOR HLT + LDB LNIOR LINE IN/OUT AND RETURN + LDA DEC79 DEC 79 + SKE RSCNXL R SCAN X LIMIT + BRM* UNITAD UNIT ADR + LDA CARRET CAR RETURN + BRM STOICH STO CHAR + CLA + STA RSCANX R SCAN X + SKN IOFLAG IO FLAG + BRU Q95 $3 + BRM* UNITAD UNIT ADR +Q82 BRM GNCHAR GET NEXT CHAR + MIW CHAR CHAR + LDA CHAR CHAR + SKE CARRET CAR RETURN + BRU Q82 $1 + TOPW 14000 +Q83 BRTW 21000 + BRU Q83 $4 + BRU Q89 $2 +Q84 SKE CODDEL CODE DELETE + BRM STOCH STO CHAR + BRU Q87 $7 +Q85 LDX DECM33 DEC -33 + LDA BLANKS ALL BLANKS +Q86 STA ENDBUF,2 END SUFFER + BRX Q86 $5 +Q87 BRM* UNITAD UNIT ADR + BETW + BRU Q90 $8 +Q88 LDB CHAR CHAR + CLA + RCY 6 + SKE CARRET CAR RETURN + BRU Q84 $6 + DISW +Q89 CLA + STA RSCANX R SCAN X + BRR LNIOR LINE IN/OUT AND RETURN +Q90 DISW + BRM* ERRLNK ERRR LINK + BCI 1,BRTY + BRU Q88 $9 + PAGE +*CONST SCAN +CONSCN HLT + LDA RSCANX R SCAN X + ADD WDTH WDTH + STA RSCNXF R SCAN X LIMIT FIELD + BRM DIGCVI DIGIT CONV INITIAL + CLA + STA CHARIS CHARACTERISTIC + STA PERFLG PERIOD FLAG + BRM TSSIGN TEST SIGN + STA INPTWS INPUT WORD SIGN + BRM DIGCVS DIGIT CONV SCAN + LDA DIGSCT DIGITS SCANNED CNT + STA CHARIS CHARACTERISTIC + LDA CHAR CHAR + SKE PERIOD PERIOD + BRU Q91 $1 + STA PERFLG PERIOD FLA + BRM DIGCVS DIGIT CONV SCAN +Q91 CLA + SKE PERFLG PERIOD FLAG + BRU Q92 $3 + SUB DECPNT DEC PNT +Q92 ADD CHARIS CHARACTERISTIC + SUB PEXP P EXP + SUB DIGUCT DIGITS USED CNT + STA CHARIS CHARACTERISTIC + LDA CHAR + SKE ENDFLD END FIELD CHAR + BRU Q93 $2 + BRR CONSCN CONST SCAN +Q93 LDP CENRL1 CENTRAL 1 + STD CENRL3 CENTRAL 3 + LDA CHAR CHAR + SKE E E + SKR RSCANX R SCAN X + BRM TSSIGN TEST SIGN + STA MXPOFG MINUS XPON FLAG + BRM DIGCVI DIGIT CONV INITIAL + BRM DIGCVS DIGIT CONV SCAN + CLR + SKN MXPOFG MINUS XPON FLAG + BRU Q94 $6 + DPS CENRL1 CENTRAL 1 + STB CENRL1 CENTRAL 1 +Q94 LDA CENRL1 CENTRAL 1 +Q95 ADD CHARIS CHARACTERISTIC + ADD PEXP P EXP + STA CHARIS CHARACTERISTIC + LDP CENRL3 CENTRAL 3 + STD CENRL1 CENTRAL 1 + LDA CHAR CHAR + SKE ENDFLD END FIELD CHAR + BRU Q96 $8 + BRR CONSCN CONST SCAN +Q96 BRM* ERRLNK ERROR LINK + BCI 1,ICHR + BRR CONSCN CONST SCAN +*DIGIT CONV INITIAL +DIGCVI HLT + CLR + STA DIGSCT DIGITS SCANNED CNT + STA DIGUCT DIQITS USED CNT + STD CENRL1 CENTRAL 1 + LDA GNICHA GET NEXT IO CHAR ADR + STA GETFR GET F OR R CHAR + BRR DIGCVI DIGIT CONV INITIAL +*TEST SIGN +TSSIGN HLT +Q97 BRM GNIOCH GET NEXT IO CHAR + SKE ONE (MEANS BLANK) + BRU Q98 $2 + BRU Q97 $1 +Q98 SKE MINUS MINUS + BRU Q99 $3 + BRR TSSIGN TEST SIGN +Q99 SKE PLUS PLUS + SKR RSCANX R SCAN X + CLA + BRR TSSIGN TEST SIGN +*DIGIT CONV SCAN +DIGCVS HLT +Q100 BRM TSDIG TEST DIGIT + BRR DIGCVS DIGIT CONV SCAN + MUL RTSH18 RIGHT SHIFTER 18 + ETR CH4MSK CHAR 4 MASK + STA DGCVT1 DIGIT CONV TEMP 1 + MIN DIGSCT DIGITS SCANNED CNT + LDP CENRL1 CENTRAL 1 + SKA TOP500 TOP 5 BITS ONE + BRU Q100 $1 + LSH 4 4 + STD CENRL1 CENTRAL 1 + LDP TENB4 TEN B4 EXACT + BRM DBLXMP DOUBLE FIXED MULT + DPA DGCVT1 DIGIT CONV TEMP 1 + STD CENRL1 CENTRAL 1 + MIN DIGUCT DIGITS USED CNT + BRU Q100 $1 +*TEST DIGIT +TSDIG HLT + BRM* GETFR GET R OR R CHAR + SKA SIGNBT SIGN BIT + BRR TSDIG TEST DIGIT + SKG NINEAT NINE AT TOP + MIN TSDIG TEST DIGIT + BRR TSDIG TEST DIGIT +*INT SCAN +INSCAN HLT + LDA GNFCHA GET NEXT FOR CHAR ADR + STA GETFR GET F OR R CHAR + CLR + STD CENRL1 CENTRAL 1 + BRM DIGCVS DIQIT CONV SCAN + LDB CENRL1 CENTRAL 1 + BRR INSCAN INT SCAN +*DOUBLE FIXED MULT +DBLXMP HLT + STD DFMPT1 DBL FX MPY TEMP 1 + LDA CENRL1 CENTRAL 1 + CLB + RCY 1 + MUL DFMPT32 DBL FX MPY TEMP 2 + RSH 23 + STD DFMPT3 DBL FX MPY TEMP 3 + LDA DFMPT1 DBL FX MPY TEMP 1 + CLB + RCY 1 1 + MUL CENRL2 CENTRAL 2 + RSH 23 27 + DPA DFMPT3 DBL FX MPY TEMP 3 + STD DFMPT3 DBL FX MPY TEMP 3 + LDA CENRL2 CENTRAL 2 + MUL DFMPT2 DBL FIX MPY TEMP 2 + DPA DFMPT3 DBL FIX MPY TEMP 3 + BRR DBLXMP DOUBLE FIXED MULT + PAGE +*LINE IN/OUT +LNIO BRM LNIOR LINE IN/OUT AND RETURN + BRU CNTTST COUNT TEST +*LAST LINE OUT +LASTLN SKN IOFLAG IOFLAG + BRU RETMPR RETURN TO MAIN PROG + BRM LNIOR LINE IN/OUT AND RETURN + BRU RETMPR RETURN TO MAIN PROG +*RETURN TO MAIN PROG +RETMPR OVT + NOP + LDX MSAVEX M SAVE XR + BRR MRETAD M RETURN ADR +*INITIALIZE SCANS +INITSC HLT + STA ARGSAV ARG SAVE + BAC + SKG ONE ONE + BRU Q101 $1 + LDA RSCNXA R SCAN X ADR + STA SCANX SCAN + LDA RTAGST R TAGGED START ADR + LDB RSCXLA R SCAN X LIMIT ADR + BRU Q102 $2 +Q101 LDA FSCNXA F SCAN X ADR + STA SCANX SCANX + LDA FTAGST F TAGGED START ADR + LDB FSXLMA F SCAN X LIMIT ADP +Q102 STA TAGST TAGGED START ADR + STB SCANXL SCAN X LIMIT + LDA ARGSAV ARG SAVE + BRR INITSC INITIALIZE SCANS +*FIX +FIX HLT + LDP CENRL1 CENTRAL 1 + BRM FXBNDA FIX BANDA + STA CENRL1 CENTRAL 1 + BRR FIX FIX + PAGE + BRU EFGIN EFG IN E + BRU EFGIN EFG IN F + BRU IIN I IN I + BRU HIN H IN H + BRU XIN X N X + BRU LNIO LINE IN/OUT / + BRU DLRIN DLR IN $ + BRU AIN A IN A + BRU EOUT E OUT E + BRU FOUT F OUT F + BRU IOUT I OUT I + BRU HOUT H OUT H + BRU XOUT X OUT X + BRU LNIO LINE INT/OUT / + BRU DLROUT DLR OUT $ + BRU AOUT A OUT A +*BRU2 TABLE +BRU2TB BRU NXCHAR NEXT CHAR + + BRU HAVEMI HAVE MINUS - + BRU HAVELP HAVE L PAREN ( + BRU NXCHAR NEXT CHAR . + BRU HAVEP HAVE P P + BRU HAVERP HAVE R PAREN ) + BRU HAVEEF HAVE EFIAOG E + BRU HAVEEF HAVE EFIAOG F + BRU HAVEEF HAVE EFIAOG I + BRU IOTEST IO TEST H + BRU IOTEST IO TEST X + BRU IOTEST IO TEST / + BRU IOTEST IO TEST $ + BRU HAVEEF HAVE EFIAOG A +*BRUI TABLE +BRUITB BRM* ERRLNK ERROR LINK + BCI 1,FCHR + BRU NXCHAR NEXT CHAR +*PLUS +PLUS BCI 1,+000 + BCI 1,-000 + OCT 35000000 L BRAKET +*COMMA +COMMA BCI 1,,OOO + BCI 1,POOO + OCT 55000000 R BRAKET +*E +E BCI 1,E000 + BCI 1,F000 + BCI 1,I000 + BCI 1,H000 + BCI 1,X000 + BCI 1,/000 +*DLR +DLR BCI 1,$000 + BCI 1,A000 +*CHAR TABLE +CHTABL EQU * + PAGE +*LIVE NOP MOP +NOPMOP NOP 0,2 +*DEC 22 +DEC22 DEC 22 +*DEC 23 +DEC23 EQU * +*TWENTY THREE + DEC 23 +*IND BIT +INDBIT HLT* +*TEN B4 EXACT +TENB4 OCT 00000000 + OCT 24000000 +*GET NEXT IO CHAR ADR +GNICHA HLT GNIOCH GET NEXT IO CHAR +*RIGHT SHIFTER 18 +RTSH18 OCT 00000040 +*TOP 5 BITS ONE +TOP500 OCT 76000000 +*ONE TENTH FULL SCALE +1TENTH OCT 02314630 +*GET NEXT FOR CHAR ADR +GNFCHA HLT GNFRCH GET NEXT FOR CHAR +*TWO +TWO DEC 2 +*CODE DELETE +CODDEL EQU * +*CHAR1 MASK +CH1MSK OCT 77000000 +*CHAR234 MASK +CH234 OCT 00777777 +*NINE +NINE DEC 9 +*DEC 99 +DEC99 DEC 99 +*FIVE +FIVE DEC 5 +*TEN +TEN DEC 10 +*NINE AT TOP +NINEAT OCT 11000000 +*MINUS 14 +M14 DEC -14 +*ONE HALF DOUBLE +HALFDB OCT 0 + OCT 20000000 +*EIGHT +EIGHT DEC 8 +39D DEC 39 +M770 OCT 77777700 +LSB OCT 1000 +*F SCAN X ADR +FSCNXA HLT FSCANX F SCAN X ADR +*F SCAN X LIMIT ADR +FSXLMA HLT FSXLIM F SCANX LIMIT +*R SCAN X ADR +RSCNXA HLT RSCANX R SCAN X +*R TAGGED START ADR +RTAGST HLT IOBUF,2 IO BUFFER +*R SCAN X LIMIT ADR +RSCXLA HLT RSCNXL R SCAN XLIMIT +*F SCAN X LIMIT +FSXLIM DEC 60000 +*DEC -33 +DECM33 DEC -33 +*IBM BLANK +IBMBLN OCT 60000000 +*ALL BLANKS +BLANKS OCT 12121212 +*TAG BIT AND FLOAT IND +TAGFLI OCT 21000000 +*NEG EXP BIT +NEGBEX OCT 400 +*EXP BITS 7AND8 +EXB78 OCT 300 +*OCT 27 +OCT27 OCT 27 +*SMALLEST NEGATIYE +SMALNG EQU * +*NEG LIMIT +NEGLIM OCT 77777377 +*LOW 9 BITS +LOW9 OCT 777 +*POP ADR MASK +POPADR OCT 17600000 +*ASN POP CODE +APOPCD OCT 15000000 +*DIGIT CONV TEMP 1 +DGCVT1 HLT +*DIGIT CONV TEMP 2 +DGCVT2 DEC 0 MUST STAY ZERO +*EMASK +EMASK OCT 700 +*MLONES +MLONES OCT 77777000 +*NEG EXP LIMIT +NEGEXL OCT 77777400 +*ALL BUT S1 +ALBTS1 OCT 17777777 +* MEMORY USED FOR CODE +LAST EQU *-1 +* +* +* +* T E M P O R A R Y S T O R A G E +*ERRO SAVE A +ERSAVA HLT +*NO COMMA FLAG +NOCOMA HLT +*X REGE +XREG HLT +*TAGGED START ADR +TAGST HLT +*SAVE X +SAVEX HLT +*SCAN X LIMIT +SCANXL HLT +*E EXP +EEXP HLT +*NUMBER DIGITS OUT -1 +NDIGM1 HLT +*CHAR INDEX SAVE +CHXSAV HLT +*GROUP COUNT +GROUPC HLT +*SCAN X SAVE +SCANXS HLT +*PAREN COUNT SAVE +PRENCS HLT +*STO IF OK TEMP +SIFOK1 HLT +*NO ARG FLAG +NOARGF HLT +*FIX TEMP 2 +FIXTP2 HLT +* +* TOTAL MEMORY USED BT RUN-TIME +USEDM EQU * +XXX EQU *+1 +*MNPRST EQU XXX/8*8 +MNPRST EQU 1678 + PAGE B O O L D E F I N I T I O N S +*IOTBLL +IOTBLL BOOL 2 +*FIX TEMP 1 +FIXTP1 BOOL 3 +*DOF TEMP ADR +DOFTAD BOOL 4 +*A IN TEMP 1 +AINTP1 BOOL 4 +*DBL FX MPY TEMP 1 +DFMPT1 BOOL 4 +*FIX TEMP +FIXTMP BOOL 5 +*A IN TEMP 2 +AINTP2 BOOL 5 +*DBL FX MPY TEMP 2 +DFMPT2 BOOL 5 +*XE +XE BOOL 6 +*DBL FX MPY TEMP 3 +DFMPT3 BOOL 6 +*A IN TEMP 3 +AINTP3 BOOL 6 +*YE +YE BOOL 7 +*DBL FX MPY TEMP 4 +DFMPT4 BOOL 7 +*ZE +ZE BOOL 10 +*CENTRAL 3 +CENRL3 BOOL 10 +*XM +XM BOOL 11 +*CENTRAL M +CENRL4 BOOL 11 +*TEMP A +TEMPA BOOL 12 +DPTMP1 BOOL 14 DP TEMP 1 +*EADR 1 +EADR1 BOOL 15 +*EADR 2 +EADR2 BOOL 16 +*OVERFLOW IND +OVFIND BOOL 17 +*YM +YM BOOL 20 +*DIGITS USED CNT +DIGUCT BOOL 20 +*ZM +ZM BOOL 21 +*CHAR +CHAR BOOL 21 +STDT2 BOOL 22 STD TEMP 2 +ZERO BOOL 23 +ONE BOOL 24 +RTSH23 BOOL 24 RT SHIFTER 23 +SIGN BOOL 25 +SIGNBT BOOL 25 SIQN BIT +NEGSGN BOOL 25 NEG SIGN +MINUS BOOL 25 +ONES BOOL 26 ALL ONES +MINUS1 BOOL 26 MINUS ONE +ADRMSK BOOL 27 ADR MASK +*E0 SIZE TEMP +E0SIZT BOOL 34 +*ARG SAVE +ARGSAV BOOL 34 +PART1 BOOL 35 +*STO CHAR TEMP 1 +SCHT1 BOOL 35 +PART2 BOOL 36 +*DIGITS SCANNED CNT +DIGSCT BOOL 36 +*DOF TEMP +DOFTEM BOOL 37 +*DOX TEMP +DOXTEM BOOL 37 +*PERIOD FLAG +PERFLG BOOL 37 +*IO FLAG +IOFLAG BOOL 40 +*UNIT ADR +UNITAD BOOL 40 +*M SAVE XR +MSAVEX BOOL 41 +*M RETURN ADR +MRETAD BOOL 42 +*R SCAN X LIMIT +RSCNXL BOOL 43 +*F TAGGED START ADR +FTAGST BOOL 44 +*COUNT +COUNT BOOL 45 +*F SCAN X +FSCANX BOOL 46 +*R SCAN X +RSCANX BOOL 47 +*P EXP SAVE +PEXPSV BOOL 50 +*P MINUS FLAG +PMINFG BOOL 51 +*PAREN COUNT +PARENC BOOL 52 +*8 IF DOUBLE ELSE 4 +8OR4 BOOL 53 +*PLUS IF END LIST +PIFEND BOOL 54 +FLTEMP BOOL 55 +*INPUT WORD SIGN +INPTWS BOOL 55 +*MINUS XPON FLAG +MXPOFG BOOL 57 +*DOF EXIT +DOFXIT BOOL 60 +*FLOAT A XREG +FLAXRG BOOL 61 +*FIX BANDA XREG +FXBAXR BOOL 61 +REG BOOL 62 +*GET F OR R CHAR +GETFR BOOL 62 +EXIT BOOL 63 +*OUTPUT FIELD SIZE +OUTFSZ BOOL 63 +*AGT TEMP 1 +AGTTP1 BOOL 64 +*R SCANX LIMIT FIELD +RSCNXF BOOL 64 +*SCAN X +SCANX BOOL 65 +*DEC PNT +DECPNT BOOL 66 +*P EXP +PEXP BOOL 67 +EOADR BOOL 71 E0 ADR +EOSIZE BOOL 72 E0 SIZE +EOTAG BOOL 73 EO+ ADR +EOIND BOOL 74 E0* ADR +*SENSE LIGHT WORD +SENSLW BOOL 75 +RUNTOP BOOL 76 RUN-TIME TOP MEMORY +*BIN TO BCD CONV LINK +BCDLNK BOOL 236 +*FL CONST MAKER LINK +FLCMKL BOOL 237 +*CONV TO 3 WORDS LTNK +CONV3W BOOL 240 +MAXPOS EQU ALBUTS +QQQ1S EQU ALBTS1 +255D EQU OCT377 +M2570 EQU NEGLIM +OFFLAG EQU OVFIND +O777 EQU LOW9 +AXC OPD 04600401 +BXC OPD 04600022 +LGR OPD 04624000 +AXCE OPD 04600501 AXC(E) KENR +BXAC OPD 04600222 +AXBA OPD 04600450 +CNAE OPD 04601100 CNA(E) KENR +CLX OPD 24600000 +DPA OPD 10400000 +STD OPD 10700000 +DOX OPD 11000000 +DOF OPD 11100000 +LDP OPD 12500000 +FLN OPD 14700000 +FLA OPD 13100000 +FLS OPD 13500000 +FLM OPD 14100000 +FLD OPD 14500000 +DPS OPD 15300000 + END diff --git a/fortransa/frun_original b/fortransa/frun_original new file mode 100644 index 0000000..f173ecf --- /dev/null +++ b/fortransa/frun_original @@ -0,0 +1 @@ +@CC@@@F@@C@Ch@@E @ Fp@RF8@C@C @@@@@@@@@@@@Xp@C@C@@FR@@@@@C@@@C@@C@^F@@FFb@@@EC@@C@EC@F@@@C@@@@@QF@C@y@@Fp@8@C@@@&CT@C|@CF@@@F@CEX@@@@ C@8@@QF@@@ Ch@CFp@L8@Ch@p@@p@@R@@p@X@@@FX@7@@@@R@@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]|X@@@@Cs@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@b^@@@>@@@@@@@Is@Iu@@C@J@ @F@ F@IR@I @J1@J/@J@JE@JR@JO@ m@ h@%@>@T@J=@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@%>u@@n@n@/@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@ >|@@@p@W@X@@I@@[@@@8@@C@E>@IC@#@@F%@&@J@Jh@J&@*@ @ Q@%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@W2@@hOp@@ @@@****pppp@@@@@@p@@@@@@@@@@OXXOXhu#QR#@8@@@@C @Ca@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@d@@Ca@@@@@@C@@@@@@E@@@F@@@@@@I@@@J@@@W@@@/|@@C@@@@@@@@8@;s@CCh@=Ch@O@R@@@C7@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@ p@@Cy@aQdC;@Q @@@@@R@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@%F@@@@@@ChOpCnTpXsFOF@@@aQTR@Q @@@@@E))JJJJ*Ch@ p@@XCh@ p@Ch@E@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@J@@C8@Lp@Cp@pRC8@Eh@Lp|@@@@@%s@C@EE@@ @)s@C@vp@Wh@@pRpF@E @X@@Es@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@1@@1pX&F@ h@F4@ p@LEX@E@>pCp @@8Cpp@Lp@@Eph@@p@L8@pR@@EhFy@&@@EITp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@]1@@EIpF@XC2%E pF@Tp C8@E@L@@E2E@@p@spX&W@pF@p@@pEX@E@E#F@ p@LF@E @p@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@,@@EaEp@ @Ep@LEh@p@LE8@ @EFp@8@E pF@XCm@ELEE p@ Q8@@E7pRE7s@C@LE@@@C8@O@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@|4@@Ey8@Fp@g8@8C@E C8@LCh@ p@pRC8@p@RFz@pF@|@@F2  @Ch@Wp@@p@ pEpF@FX@pRF2 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@)@@FQF @ Eh@F CaCp@F@  @p@LEh@p@LE8@ @C,@EC1@E@@@]F2@@C8@LCh@ p@pR@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@ |C@@F)C8@p@RFz@h@ ph|@@Fp@h@@@E/Ch@1@JFp@Ch@ Wh@@p@pRpF@p@EhCaFX@1@JF2@p@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@g@@F @Eh@ h@F CaEh@@@@@]C8@LEC1@p@E@@4E@@pRE@@@F2@WFy@pF@XCm@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@Wu@@XC2@E pF@p @LE@@pRp@Lp@p@L8@@C8@L|@@Ch@F1@JF2@ @Ch@Wp@@F2 F @FEh@F Ca@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@ @@1Cp@F@F @p@LEh@p@LE8@F@LX@E@E@@E= @zp@@Ch@]J,@]XOE@]Fd@@Fp@p@LE@@F @TF,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@)@@IE@@XOC,@@E@@Xh@ F@@@@C8@CEC/s@CCh@ C)@bpCp@p@@p@Lp@p@LE@EX@@ Eh@T@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@dT@@aEOp8@@@4@@XhE@@@@@@C8@Cp@C)Fy@Wp @CEhCp@ICh@Jp@@Ch@]4@@Xh @IE@]Cp@I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@y=@@yCh@Jp@@Ch@]4@@XhL@IE@]XIF h@IE@]XIFLh@IE@]@@@@Cp@ICh@Jp@@Ch@]4@@XhF@Jp@LF@Ip@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@sW@@IQEIFh@@Cp@F@@F@@@@I4@@@F@@E@@4@@@F@@E@@Ch@p@@Ch@QEh@TCh@Rp@ L@R|@REX@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@p*@@ IEh@Ep@p@|@@h@p@@@EE@@C8@E|@@p@Lh@@p@L8@@EE@@C8@E|@@p@L @@p@Lp@@EE@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@CJ@@J1C8@LL@@Wp@@hh@)@JzC8@@LE@uQWs&@J7C8@Ep@Eh@Ep@|@@Wp@Wh@@@EE@@C8@ECh@p@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@7s@@JF@ @LF@@E@@u2yE@@@@@@C8@LpF@Eh@LpF@EJ XJ @J)C8@Lp@@ @WC,@@@LF@@E@@XJ @J2@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@u/@@JE@@uQ)Wd@I;XJ p,@JJp@C8@Lh@yCp@ h@zCp@@JTXJ p,@JTp@C8@LC,@ |@@p@ @WF@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@ ss@@I)@I/J,@Q ,@RX@F@RE@R ,@QX@F@RE@Rp@@Ivp,h,C8@L|@@@@J4@F@h@@p@h@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@1@@ a@@@@C8@ @a@R@s@CCh@2E@,p@ F8@p@pp@@ np@aCp@aCh@k|@@p@ @WFX@kp@@Ch@,@ EX@2E a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@ h@@ yu7&E@,s@CCh@)ChspdChmp@Ch@mXWXT EX@4@LIX)g]E@X#@LL@OnE@X*@LO@Onu%&J]@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@*@@LQ@LOXT @XkLTL)@R@R@@@@@Og@LR@,@E@On@>@I@O@OX@LR@E@On@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@L,@@L)Eh]ChL,uX7@LRp;hC#dXQIXRp@%EhC%EX@*E @TChns@CE@@@L;@ p@)EX@)FXnEh@%XR*p@&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@s&@@ E @)Ch@&p@)ChkEXkp@Eh@%ChhpnEX@4p@hE @hXp@&hXXWhXgp@LX)p@&@p@XQ@ %@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@m@@ F @TFhRCp@&X)p@&F @TFhChCp@&X)p@&X)@Q;p@LpXgEX@&pm@ [XRp@E@@p@)Eh@&Ch@&Eh@%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@/I@@ 1XR*p@%X@@p@X@&p@&Chkp@%EX@&@ =Eh@&Chhp@%EhCaEX@&Eh@&EX@*E @TEX@4p@hE @hX@Q;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@ [T@@IEX@4h@TCp,F@,@O@LREX@u@TXTXz@LXXLdX@LXRp@&XR*s@CChhp@&X@@dChkEhCa@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@,O@@aEX@sE @T@p@TCp@@s@ChXQIEX@4@7p@hCh@bX|@nCbXQX|EX@4@s@C@pp=E @p@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@v^@@yF8@E @/@m@@@@F@@b@Op@h@^EX@kp@L@RXXLXC&@pE@m@OJE|E@Ch@O E|E@X @O@p^@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@C;@@OQChOX&s7 C&@pCp@)@LRXT p@Lp@p@LE@X&@O@OE@X@L)EX@4h@@O)s@ChC#dXQIEX@4h@T@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@X=@@O)p@Lp@X4@LR@LRpmXg@O4u]&u@LREhCbChm@X&C8@1mEX@4h@T1@JE @Th@@h@p@m@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@2|@@F8@Op@nh@@LRFm@ pmX%@E CbChm@LRmWp@F CnCh@m1@JF2@ICh@n@LRX ap@FX@,EX@1@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@ @v@@@^XQX a@EXs@bp&ChmmWp@h@@Wp@F CnCh@m1@JF2@ICh@n@EX@4@pX)gkXT@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@ @&k@@1E@Xa@4@LREX@u@8Xz@pXXLE@Xa@|pmX@pEX@4h@TCp,F@,@Q@LREX@u@QXW@Q@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@ @u]@@QI@@@@Ch@^Cp@bX ap@bEX@k@QREh@bCh@bEX@4Ch@hE @hh@^EX@u@RX@@QE@^@QbCh@gEX@g@Q%X4@%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@ @,J@@Qa@Q%p@hp@Ch@g@kWh@@EX@k@QmWp@EQIp@LCh@^Cp@EQI@QsC%pn@QuCbpC&Ch@IF@@b@R@EQI@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@ @ h2@@Qy@Q;@%p@EX@4X4@%@%p@^h@z@@Ch@^Cp@ @IX)@QvCp@EQIEQI@@RR@hC8@bE@@R@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@ @ug@@RQ@RTX4@@@s@CCh@JF@@b@R&p@^h@F@@J@Rd@kEX@k@Rbh@@p@@%p@@@%Fz@F@RXXLC%XQ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@ @/@@R)@R@@@@XX@ER*F @Tp@p@^hX4Ch@^p@8XuCh@@@RyER*F@&p[Ch@^pCh@ER*@@@@X a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@ @)2@@EX@u@^EX@k@@kWp@Wh@@pRCh@Cp@^C8@#Ch@*@X;EX@sEX@k@XWyXWERs@C4@kC)Fy@W@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@ @aR@@@I@@@@Ch@gEX@g@ X4EEX@*@dpXgX)pkX@@kF@kX>X)@dEX@sEpXkX)EXk@u@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@ @=z@@1Fks@CX)@/F@h@8EX>X)@u@@@@s@CE @^2@EEp@@#@@TFy@Ch@Cp@^C8@#E;F2@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@%E@@TIT@T@@@@s@CCh@4Cp@^XTXCg@TXE@mXCh@TOCh*h@^ET F@@4@@@F@^F Cd1@JFX@^@TO@@@@@m@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@a#@@TaTdF@nCkC8@m4@nRXXp nET@@@@p@#E Cbp@p@h@^Fp@FhCh@^1@JFhF @Tp@^Fy@Ch@Cp@^@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@/@@TyC8@#ET)@@@@pC#FX@#p@F Ch@p@^Cp@^p@F2@F F @Tp@LEh@^p@LE8@@#Fy@Ch@Cp@^C8@#ET;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@v>@@Q@@@@F@^h@8@@p@Lp@^Ch@Cp@^EQ@@@@p@L@mE@#bF@nCkC8@mRXX4Wp4d@nC4@nF@nE@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@ %I@@)@@@@F@@gE)Ch@Ep@X4E)C8@@/h@ERXX4Wp4d@pC4@pF@p@E)@@@@hzCp)@,@@@@p@^F Cd@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@h[@@@EhChCp@^F@F Cdp@LEh@p@LE8@F8@Ch@1@JF2@F@E>p@@p@Ch@sF@1C8)EX@4h@TCp,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@|@@XT Cp@hEX@s@,E@Xk@,p@4Ch@CXT p@CCh@4Cp@%)F@,W@s@CCh@4p*@Ls@C@d@L1@ *@W@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@k)@@1@Ln@g@Od@@@@p@FX@dFp@FX@pp@F8@Eh@/@@W@EhCkF@pCh@/p@pX@W X=@WIp|Ch@dE4@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@ v@@WIF4E4pCh@pp@Ch@/@WF@@@@;pkEX@up;C,>WC8@dEX@upCh@pp@Ch@/EW@@@@s@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@, @@WaCh@&E@@@WhEWXT;F@@&@@@p@#XT@W%X@@W1XT)F@&p@#@Wkp@p@p@h@^p@@Ch@Cp@^EW@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@s4@@Wy@@@@p@#@p@E C*@@XEWyC8@p@p@p@h@^p@@8@@Ch@Cp@^@EWy@@@@p@X4@XWC8@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@g/@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/fortransa/hello.bo b/fortransa/hello.bo new file mode 100644 index 0000000..3bd902e --- /dev/null +++ b/fortransa/hello.bo @@ -0,0 +1 @@ +E@@@@@@@@@kkkkkkkk@p@@@hI @88@h X88@@ 8y@E]X@X##&Jv&)#TmJJJ X8y@hC@@@p@@@p@@@p@@@p@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@CQ>@@@@@@@@ \ No newline at end of file diff --git a/fortransa/hello.f b/fortransa/hello.f new file mode 100644 index 0000000..94ed6ac --- /dev/null +++ b/fortransa/hello.f @@ -0,0 +1,3 @@ + PRINT 13 + 13 FORMAT(12H0HELLO WORLD) + END \ No newline at end of file diff --git a/fortransa/hello_sample b/fortransa/hello_sample new file mode 100644 index 0000000..3140497 --- /dev/null +++ b/fortransa/hello_sample @@ -0,0 +1,39 @@ +SDS 940 simulator V4.0-0 Current git commit id: 9c60c904 +sim> do fortransa/fortran_run fortransa/hello.bo +/Users/admin/sds/sds-kit/fortransa/fortran_run-15> att cr rundeck +CR: 455 card Deck Loaded from rundeck +/Users/admin/sds/sds-kit/fortransa/fortran_run-16> boot cr +SIGINT will be delivered to your debugger when the ^F character is entered + +LOAD MAIN PROGRAM. + +HALT instruction, P: 02754 (NOP 1003,2) +sim> c + + +NAME ENTRY ORIGIN LAST SIZE/10 COMMON BASE + += 13 03221 +$$$$$$$$ 03216 03206 03227 18 03230 +203SYS 03231 03230 03242 11 +211SYS 03244 03243 03316 44 +223SYS 03320 03317 03333 13 +235SYS 03335 03334 03452 79 + + +*PROGRAM 03216 03206 03452 165 + + +HALT instruction, P: 00005 (EOM 12006) +sim> dep p 1 +sim> c +LOADING COMPLETE +HALT instruction, P: 00377 (NOP 10000,2) +sim> c + + +*STOP* + + +HALT instruction, P: 03241 (BRU 1) +sim> \ No newline at end of file diff --git a/fortransa/ldr_2crd b/fortransa/ldr_2crd new file mode 100644 index 0000000..e163e8d --- /dev/null +++ b/fortransa/ldr_2crd @@ -0,0 +1 @@ +@CC@@@F@@C@Ch@@E @ Fp@RF8@C@C @@@@@@@@@@@@Xp@C@C@@FR@@@@@C@@@C@@C@^F@@FFb@@@EC@@C@EC@F@@@C@@@@@QF@C@y@@Fp@8@C@@@&CT@C|@CF@@@F@CEX@@@@ C@8@@QF@@@ Ch@CFp@L8@Ch@p@@p@@R@@p@X@@@FX@7@@@@R@@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/fortransa/lib/.DS_Store b/fortransa/lib/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..5008ddfcf53c02e82d7eee2e57c38e5672ef89f6 GIT binary patch literal 6148 zcmeH~Jr2S!425mzP>H1@V-^m;4Wg<&0T*E43hX&L&p$$qDprKhvt+--jT7}7np#A3 zem<@ulZcFPQ@L2!n>{z**++&mCkOWA81W14cNZlEfg7;MkzE(HCqgga^y>{tEnwC%0;vJ&^%eQ zLs35+`xjp>T0J&1,#yv2 g;II[@%zv>>#) d @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%h@J@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/fortransa/lib/AMIN b/fortransa/lib/AMIN new file mode 100644 index 0000000..c5e3eac --- /dev/null +++ b/fortransa/lib/AMIN @@ -0,0 +1 @@ + QdQ7pppp @@QdQ7@ppp @@QdQ7ppp @@dQ7ppppp @EdQ7@pppp @EdQ7pppp @EQd%pppp @IQd%@ppp @I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@m|Qd%ppp @Id%ppppp @d%@pppp @d%pppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]au@@@@@@p@gh@udX@R%@@@@@@dX@@v%@E@@@@pC,gh@vdX@R%@I@@@@dX@Iv%@@@@@#h@|#p@m#8@=gp@7#h@;)u@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]p@Xp@ Eh@#h@>%h@8#h@p@yE @ #h@g@g4@>, @gg4@7 @*g,@&L@>g4@h8@ykh@;#h@@@@@ @1*h@y]/;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%C@ph8@;d@a*h@;g@=%@RX@%X@;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@> @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@&#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/fortransa/lib/AMOD b/fortransa/lib/AMOD new file mode 100644 index 0000000..8b1c132 --- /dev/null +++ b/fortransa/lib/AMOD @@ -0,0 +1 @@ +=QQd&Tpppp @@Qd&Tppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@EXF@@@@@@p@|#h@L&@LJ,@|,,@Lv7,L@L ,@|L8@@%@@@@@@ I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g/@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/fortransa/lib/ATAN b/fortransa/lib/ATAN new file mode 100644 index 0000000..36ccef8 --- /dev/null +++ b/fortransa/lib/ATAN @@ -0,0 +1 @@ +I@QsQ%pppp @@QsQ%ppp @@QshQpppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]Lv@@@@@@#8C=L@yWp@Wh@@#hC@L8@@#hCX#hC|#pC;p@ E @TE@@y @Qg8C @p@W@@gpCXE@@ @[X@ zQ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]%;@XgpCughC4 7Wp@Wh@@#hC>a8C#hCXWp@@L8@@E@@ @*gpCughC4L8@@8@ yg C; >@#8C,hC;pRypyv@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]2F@p#hC8#pC7#8CTpF@X@ @8pF@ @zpF@dXu#hCz#pCygC% C@ % C @ Edd@gpCz#8C#pC7yWv@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]Lv C &C7#pC8F2@v C Fz@%hC82@E%8C7%hCQ8@Fy@p &Czp@L&CygCp@Lu C @TFy@hp ,hCypRz,b@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ]h pF@dXLdXugCp@LuhCp@Lu8C]%XC pp@L%hC4p@p@L%8Cu8@Fp@%XC> 7p@L%hC4p@L%8Cu8@]]I*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]@8Fy@Lp gC=%XCX%@@L8@@%@@gpCTghC7gC8dXL%XC dXu *%XC> ydXuFp@ s@@@@gXCR spF@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]#Fp@dR#8CT#hC8#pC7p@%hCTp@p@gpC8mhC7#hCz#pCymhC2p@@p@L%hCpp@L%8C1mhCyp@@p@L%hCnp@L^g22@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]4mh%8C/mhCyp@@p@L%hC,p@L%8CmmhC7gCTFy@C%LpF@%L@@@@pF@p@gXCv ;Tp@CpF@p@%upF@gCL2z#E@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]%C@ CIpF@gXC| @,&C|p@L&C;Tp@L @mpF@ C@@@@@C@@@@@@F@@@@@@@@@,J@@@@@@@L@@@@@@@@@@n*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Cz@CX@@@@@@@@@@@@@)*,nIICzvz^|E/X1g;8|@WQd4hJR|b/d EO* 8LdOv=pFu@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@nI@Cp&&F&[[[p;[[[kn=E&7 R@@@>@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#b@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/fortransa/lib/COS b/fortransa/lib/COS new file mode 100644 index 0000000..98e7a20 --- /dev/null +++ b/fortransa/lib/COS @@ -0,0 +1 @@ +mvR&2ppppp @@&2pppp @@2%ppppp @2%pppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]@@@@@@#8C|@|Wp@Wh@@,hz @ @ dX@Qp@@ @ dX@Q8@@%h7@p @#@@@@pF@a ygX8 @WTp@CpF@Q[R@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@],u@Xp%@Q@@@@#8C|@|gp@#h@@Wp@Wh@@,hzp#8C @ @s&C%hv&C#hCX#pCWdX@Qp@@#hCp@RFz@C%4@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@];@@pp@pgpC2X@zdX@Q8@@#hCX#pCWgu#8C @m  Q Q   I I p@L8@Eh@Tp@La8>E8@]@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]>) X%h7dXTp@Lp@p@LE@Eh@Tp@@TFy@ p gC%@@gpCXghCWgCFy@XpF@X@ agp=gh|gC8@>O@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ]p %@@pF@#hCX#pCW#8Cp@%hCp@gX8 ,p@C  p@gpCXmhCWX@E@ 48@h@#hC#pCmhCQp@@nm@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@] p8p@L%hC p@L%8CmhCp@@p@L%hCIp@L%8CJmhCp@@p@L%hCEp@L%8CFmhCp@@p@L%hCp@L%8CmhCWgCW@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]sJ R% 7dXT Q@@@@F8@#hCX#pCWmhCW#hC#pCmhCp@L%hCOp@L%8CmhCp@L%hC p@L%8CLmhCp@L%hC|m@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]g/hp@L%8CmhCp@L%hCCp@L%8CmhCp@L%hp@L%8C@%T@@@@@@C@@@@@@p@@TQ@Cm&8@hIy>8u @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@> @C@OT mvm^,,L#[)X=ha4dCp;Q>d@EFQ@|*h, 7kb; OX @@|O%*I @@@1n/F>W@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@m|@CX@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @dy@C[@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ \ No newline at end of file diff --git a/fortransa/lib/DIM b/fortransa/lib/DIM new file mode 100644 index 0000000..37bdc17 --- /dev/null +++ b/fortransa/lib/DIM @@ -0,0 +1 @@ +=7dTdppppp @@Tdpppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@m4v@@@@@@p@|#h@I&@IJ,@|k,@I@s@C%@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ gh@@J@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/fortransa/lib/EXIT b/fortransa/lib/EXIT new file mode 100644 index 0000000..d9b47ae --- /dev/null +++ b/fortransa/lib/EXIT @@ -0,0 +1 @@ +%[7spppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@u|@@@@@@pQh@JCpQXs,*ChQX@@@@*,7@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g)@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/fortransa/lib/EXP b/fortransa/lib/EXP new file mode 100644 index 0000000..dc4749f --- /dev/null +++ b/fortransa/lib/EXP @@ -0,0 +1 @@ +=7d7gppppp @@7gpppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]m@@@@@@#8Q|@|Wp@Wh@@pR#8mh*&%h#gX@ TgXd @gpdpF@#h#pRF @T8@@#hOgpghR>=g@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]/g@X8@@@R@a %#pR#hgp p@#h#pTgpd#hgagpghR7Xk @yp@Lu |p@Lupk#h#pRgpghTO=@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@];,@pp@@p@L%hTp@L%8#h#pTgpghR&@d@&mh&%h mhT&O%h#p@gpOFy@pF@gXhgX)  pF@ =@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]Cp gQ%@@@ Rgp%gh)X7gJ Is@C IXbpbp@pF@p@@#pRp@@h@#pOa % @[%1@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 1@ @@@@@Q@@@@@@%h E2E@@C;2% b*Rn@ JpE@s;z4@ms2@%@ a@Ep>@8d@@@nJ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @8@@WE@@ b@@E1@@8@@O7h%yh2/QRE774 av;gvsOCp[2&y8ub=hQvEQ,Qh2]#TpT@*];T@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@E|b@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%4@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/fortransa/lib/FLOAT b/fortransa/lib/FLOAT new file mode 100644 index 0000000..3a13f01 --- /dev/null +++ b/fortransa/lib/FLOAT @@ -0,0 +1 @@ +=7d#&Qsppp @@#&Qspp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=]a@@@@@@4@|7%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/fortransa/lib/IABS b/fortransa/lib/IABS new file mode 100644 index 0000000..63d9034 --- /dev/null +++ b/fortransa/lib/IABS @@ -0,0 +1 @@ +=QQR2pppp @@QR2ppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@E7 @@@@@@4@|,@yE, @X@p@%@@FL@y,@|p@Lv @E @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g/@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/fortransa/lib/IDIM b/fortransa/lib/IDIM new file mode 100644 index 0000000..d1db383 --- /dev/null +++ b/fortransa/lib/IDIM @@ -0,0 +1 @@ +=QTdpppp @@Tdppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@m /@@@@@@#8@I@yW4@@d@@s@Cg@I%@@@@@@X@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gh@@J@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/fortransa/lib/IF b/fortransa/lib/IF new file mode 100644 index 0000000..46a4388 --- /dev/null +++ b/fortransa/lib/IF @@ -0,0 +1 @@ +%>4pppppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]R@@@@@@#8@Wp@ Eh@W#h@XE@@| @RJ,@|@#8@Xpp%h@gX@Xh@p@Lg@W%@@J,@|pk,@X @I@@@#@@@@RdsL@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]2@@X@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/fortransa/lib/IFIX b/fortransa/lib/IFIX new file mode 100644 index 0000000..313afb3 --- /dev/null +++ b/fortransa/lib/IFIX @@ -0,0 +1 @@ +]u7pppp @@7ppp @@%sppppp @@%spppp @@Q%spppp @Q%sppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]W7@@@@@@J,@|v%@@@@@@dX@@7%@E@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/fortransa/lib/ISIGN b/fortransa/lib/ISIGN new file mode 100644 index 0000000..cc1a28a --- /dev/null +++ b/fortransa/lib/ISIGN @@ -0,0 +1 @@ +=7d2W%ppp @@2W%pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ =n@@@@@@#8@@yp,W@@W@@ @W4@@@p@@ @p@g@%@@J,@|v @I@@@@, @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gv@@T@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/fortransa/lib/LOCF b/fortransa/lib/LOCF new file mode 100644 index 0000000..1970e18 --- /dev/null +++ b/fortransa/lib/LOCF @@ -0,0 +1 @@ +%gb#&pppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=8@@@@@@4@y @W%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/fortransa/lib/MOD b/fortransa/lib/MOD new file mode 100644 index 0000000..2ae4648 --- /dev/null +++ b/fortransa/lib/MOD @@ -0,0 +1 @@ +%gd&Tppppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%EF@@@@@@#8@@yW4@@d@p@Lg@%@@@@@@p@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gk@@I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/fortransa/lib/SIGN b/fortransa/lib/SIGN new file mode 100644 index 0000000..0bfc94e --- /dev/null +++ b/fortransa/lib/SIGN @@ -0,0 +1 @@ +=Q2W%pppp @@2W%ppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@EuF@@@@@@#8@T@yWp@,@Wp@@, @LW4@@7 @ J,@|@L8@@@ @RL8@@g@T%@@@@@@Ip@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g7@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/fortransa/lib/SQRT b/fortransa/lib/SQRT new file mode 100644 index 0000000..dd17f7a --- /dev/null +++ b/fortransa/lib/SQRT @@ -0,0 +1 @@ +=Q2h)spppp @@2h)sppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @]b@@@@@@#8R|@|Wp@Wh@@E@@ @ @h@ @*#h#pOpLFz@a @npF@v @;uh@7& uh@s& uh@/&OpE@7 >@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ ][E@Xd@pF@Fp@ghphE@TFp@Fp@&hO#hQ1@J&hOF @T%hQ%hOp gR%@@X2h)sL8@@ @J@@@C/ gd [@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @m@@pn;u]TCmnRC*gO |4C 7 =RyI [z^d 8dT,, ]R);LFC &LC4# nRL4Qp 2 J=4F7#s#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @m,O@y1JW;I|C|FEbC@4L[LX@u4@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @&1@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ \ No newline at end of file diff --git a/fortransa/lib/SYS160 b/fortransa/lib/SYS160 new file mode 100644 index 0000000..15404ba --- /dev/null +++ b/fortransa/lib/SYS160 @@ -0,0 +1 @@ +%^dF@282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ %@@@@C8@JWp@@ @WCh@ X@@@@@LJ@@ X@@E@J@@@@@@@@@@L]EmR4 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=uL282pp@EC282pp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/fortransa/lib/SYS201 b/fortransa/lib/SYS201 new file mode 100644 index 0000000..18a035a --- /dev/null +++ b/fortransa/lib/SYS201 @@ -0,0 +1 @@ +%b@282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=Xm@@@@@@p@yCh@%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/fortransa/lib/SYS202 b/fortransa/lib/SYS202 new file mode 100644 index 0000000..ee3dbb5 --- /dev/null +++ b/fortransa/lib/SYS202 @@ -0,0 +1 @@ +%b@282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]^Q@@@@@@p@E@@ @E%@@XQ)W%%@@F@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ g*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/fortransa/lib/SYS203 b/fortransa/lib/SYS203 new file mode 100644 index 0000000..c801214 --- /dev/null +++ b/fortransa/lib/SYS203 @@ -0,0 +1 @@ +%^b@C282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@mb@@@@@@@pQh@ICpQX&g,*ChQ@@@@@@*,2s@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gh@@J@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/fortransa/lib/SYS204 b/fortransa/lib/SYS204 new file mode 100644 index 0000000..cf20d46 --- /dev/null +++ b/fortransa/lib/SYS204 @@ -0,0 +1 @@ +%b@282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @E2#@@@@@@C8@XC#X@@@Op@p@p@@p@TCh@ @@@@E@@F@@E@@X22@@@ @@@@@,8 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @g7@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ \ No newline at end of file diff --git a/fortransa/lib/SYS205 b/fortransa/lib/SYS205 new file mode 100644 index 0000000..26ab2d1 --- /dev/null +++ b/fortransa/lib/SYS205 @@ -0,0 +1 @@ +%Xb@E282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @=@@@@@@@C8@XX%X@@@p@p@h@z@@@@@=F@@8@ @=Ch@=E@@X2#F@@E@@p@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @gv@@T@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ \ No newline at end of file diff --git a/fortransa/lib/SYS205- b/fortransa/lib/SYS205- new file mode 100644 index 0000000..26ab2d1 --- /dev/null +++ b/fortransa/lib/SYS205- @@ -0,0 +1 @@ +%Xb@E282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @=@@@@@@@C8@XX%X@@@p@p@h@z@@@@@=F@@8@ @=Ch@=E@@X2#F@@E@@p@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @gv@@T@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ \ No newline at end of file diff --git a/fortransa/lib/SYS205_ b/fortransa/lib/SYS205_ new file mode 100644 index 0000000..6df5208 --- /dev/null +++ b/fortransa/lib/SYS205_ @@ -0,0 +1,30 @@ +00000000: 8825 5862 0240 4532 3832 7070 2008 4040 .%Xb.@E282pp .@@ +00000010: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +00000020: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +00000030: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +00000040: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +00000050: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +00000060: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +00000070: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +00000080: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +00000090: 4040 4040 4040 0140 0840 0440 4020 4010 @@@@@@.@.@.@@ @. +000000a0: 823d 1c40 0208 4040 4040 4040 4338 4004 .=.@..@@@@@@C8@. +000000b0: 0758 5825 0758 4013 4008 4010 0470 0440 .XX%.X@.@.@..p.@ +000000c0: 0770 4015 0768 4015 167a 4040 0708 4004 .p@..h@..z@@..@. +000000d0: 0740 403d 4608 4040 0138 4016 0120 403d .@@=F.@@.8@.. @= +000000e0: 4368 403d 4508 4040 0458 0401 1916 3223 Ch@=E.@@.X....2# +000000f0: 4608 4040 4508 4040 0201 0470 4040 4040 F.@@E.@@...p@@@@ +00000100: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +00000110: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +00000120: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +00000130: 4040 4040 4040 0140 0840 0440 4020 4008 @@@@@@.@.@.@@ @. +00000140: d815 6776 4008 4054 4040 4040 4040 4040 ..gv@.@T@@@@@@@@ +00000150: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +00000160: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +00000170: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +00000180: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +00000190: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +000001a0: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +000001b0: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +000001c0: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +000001d0: 4040 4040 4040 0140 0840 0440 4020 4004 @@@@@@.@.@.@@ @@ diff --git a/fortransa/lib/SYS206 b/fortransa/lib/SYS206 new file mode 100644 index 0000000..6da365c --- /dev/null +++ b/fortransa/lib/SYS206 @@ -0,0 +1 @@ +%[b@F282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @uCk@@@@@@&@@g@@X@ @E @T&X@@%@@XWs&%@@2@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g)@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/fortransa/lib/SYS206- b/fortransa/lib/SYS206- new file mode 100644 index 0000000..6da365c --- /dev/null +++ b/fortransa/lib/SYS206- @@ -0,0 +1 @@ +%[b@F282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @uCk@@@@@@&@@g@@X@ @E @T&X@@%@@XWs&%@@2@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g)@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/fortransa/lib/SYS206_ b/fortransa/lib/SYS206_ new file mode 100644 index 0000000..26e8358 --- /dev/null +++ b/fortransa/lib/SYS206_ @@ -0,0 +1,30 @@ +00000000: 8825 5b62 0240 4632 3832 7070 2008 4040 .%[b.@F282pp .@@ +00000010: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +00000020: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +00000030: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +00000040: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +00000050: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +00000060: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +00000070: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +00000080: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +00000090: 4040 4040 4040 0140 0840 0440 4020 4001 @@@@@@.@.@.@@ @. +000000a0: 8175 436b 0208 4040 4040 4040 2608 4040 .uCk..@@@@@@&.@@ +000000b0: 671c 4040 0758 4013 2008 4008 4520 4054 g.@@.X@. .@.E @T +000000c0: 2658 4040 2508 4040 0458 0401 1357 7326 &X@@%.@@.X...Ws& +000000d0: 2508 4040 1a32 4040 4040 4040 4040 4040 %.@@.2@@@@@@@@@@ +000000e0: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +000000f0: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +00000100: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +00000110: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +00000120: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +00000130: 4040 4040 4040 0140 0840 0440 4010 0840 @@@@@@.@.@.@@..@ +00000140: d815 6729 4008 400b 4040 4040 4040 4040 ..g)@.@.@@@@@@@@ +00000150: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +00000160: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +00000170: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +00000180: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +00000190: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +000001a0: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +000001b0: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +000001c0: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +000001d0: 4040 4040 4040 0140 0840 0440 4010 0440 @@@@@@.@.@.@@..@ diff --git a/fortransa/lib/SYS207 b/fortransa/lib/SYS207 new file mode 100644 index 0000000..5b07e04 --- /dev/null +++ b/fortransa/lib/SYS207 @@ -0,0 +1 @@ +%b@282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%,@@@@@@p@@h@X@@@@@@p@dX@@E@@Q@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ =vC282pp@FCE282pp@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gk@@I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/fortransa/lib/SYS210 b/fortransa/lib/SYS210 new file mode 100644 index 0000000..bc20026 --- /dev/null +++ b/fortransa/lib/SYS210 @@ -0,0 +1 @@ +%]#@282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%)@@@@@@p@@h@X@@@@@@p@X@@E@@Q@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=vC282pp@FCE282pp@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gk@@I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/fortransa/lib/SYS211 b/fortransa/lib/SYS211 new file mode 100644 index 0000000..e11f037 --- /dev/null +++ b/fortransa/lib/SYS211 @@ -0,0 +1 @@ +%#282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]=@@@@@@p@@h@X@@@@@@p@7@@@Fp@@#pC@h/@,@@@QLp@@X@@@@ p@@@Qp@@X@@@@T@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ u/@X pp@)ChC@@@]@Qp@*@pQCa@@Q @E@E Cb@@@Xg)%s@@Fp@@@JR@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%hbCE282pp@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gI@@k@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/fortransa/lib/SYS212 b/fortransa/lib/SYS212 new file mode 100644 index 0000000..dc2815a --- /dev/null +++ b/fortransa/lib/SYS212 @@ -0,0 +1 @@ +%#282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]#@@@@@@p@@h@X@@@@@@p@7@@@F &@@h@phnp@nCh@WpCT@@1@@8@hCTp@Fz@Fn@@X@@ &C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]J,@X@ p@/&s@CCh@@&@pQCT@@Q @@@@bF@EX@E@@@]E Cb@@@Xg%X@@F@@@z4p)Ld@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%1@@p,JJJJ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%hbCE282pp@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g@@2@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/fortransa/lib/SYS213 b/fortransa/lib/SYS213 new file mode 100644 index 0000000..e9f8233 --- /dev/null +++ b/fortransa/lib/SYS213 @@ -0,0 +1 @@ +=v282pp @@C282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@mu@@@@@@p@@h@X@@@@@@@@@E@dX@@E@d@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=2CE282pp@C@282pp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gh@@J@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/fortransa/lib/SYS214 b/fortransa/lib/SYS214 new file mode 100644 index 0000000..18477e7 --- /dev/null +++ b/fortransa/lib/SYS214 @@ -0,0 +1 @@ +=2282pp @@282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@m@@@@@@p@@h@X@@@@@@@@@E@adX@@E@d@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=2CE282pp@C@282pp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gh@@J@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/fortransa/lib/SYS215 b/fortransa/lib/SYS215 new file mode 100644 index 0000000..f189777 --- /dev/null +++ b/fortransa/lib/SYS215 @@ -0,0 +1 @@ +%X#E282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ mO@@@@@@X@@X@@RX@L@aE@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=1282pp@282pp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gd@@F@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/fortransa/lib/SYS216 b/fortransa/lib/SYS216 new file mode 100644 index 0000000..3141b2b --- /dev/null +++ b/fortransa/lib/SYS216 @@ -0,0 +1 @@ +%[#F282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]@@@@@@p@@h@X@@@@@@p@7@@@FF@@,@F@sCT@@@WW8@R@Tu#)T@@EuQ)T@@E@LJ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]&y@X@@@Qp@4ChCT@shnp@2Ch@WpCT@k@@%8@hCTp@Fz@Fn@@*@@@]E@E Cb@@@XbC2@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=4CE282pp@CCF282pp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Ek>@p)T2@@F@@@z,JJJJ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ gW@@u@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/fortransa/lib/SYS217 b/fortransa/lib/SYS217 new file mode 100644 index 0000000..1783ef2 --- /dev/null +++ b/fortransa/lib/SYS217 @@ -0,0 +1 @@ +%#282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Epn@@@@@@X@@p@@h@T@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=4282pp@282pp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gg@@E@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/fortransa/lib/SYS220 b/fortransa/lib/SYS220 new file mode 100644 index 0000000..29608bc --- /dev/null +++ b/fortransa/lib/SYS220 @@ -0,0 +1 @@ +%] @282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]F>@@@@@@X@@p@@h@X@@@@@@QC8@CX@@RX@@@pRX@IRCa@@@Q@@@ C@@@@R@@@bC8@bgJ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ][@XpRh@@@@@vpC@@@@d@vpT@@1@C@k@vpQp@ Ch@)u)Ts7E@EC8@CX@RX@ C@@@%mT)@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]nI@ppQp@ Ch@4u7777@@EX@@@zhWpCaE @Ch@pOE @ChC@hnpCh@CWpC@k@8@CC,C)X)@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]CTp@CFz@Fn@ @@E@EWpC@@@@zvOO@@&@s)@)Ts@JJJJ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ms;CE282pp@CF282pp@@282pp@282pp@,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@&z@X@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/fortransa/lib/SYS221 b/fortransa/lib/SYS221 new file mode 100644 index 0000000..9d2d463 --- /dev/null +++ b/fortransa/lib/SYS221 @@ -0,0 +1 @@ +% 282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Ep/@@@@@@X@@p@@h@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=4282pp@282pp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gg@@E@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/fortransa/lib/SYS222 b/fortransa/lib/SYS222 new file mode 100644 index 0000000..8ed440d --- /dev/null +++ b/fortransa/lib/SYS222 @@ -0,0 +1 @@ +% 282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]QR@@@@@@X@@p@@h@X@@@@@@p@dEhCbFp@XpCh@EhECh@s@CE @Ch@@hnpCh@CWp@@C@@FpW@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]mk@X8@CC,@p@CFz@Fn@@@@T@RpCkCh@EX@@RX@F@T@@%@Q @X@@@@@,E@EEX@E@@;F@ER[=QpX4@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ s2@p@@@@1@Q @X@bRX@@@@@7@Q @@@bpQp@ Ch@uv)s@E@E@@@z@@@JJJJJv)s@WpC@J R@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@mvLCE282pp@282pp@C282pp@4282pp@h@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@&d@F@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/fortransa/lib/SYS223 b/fortransa/lib/SYS223 new file mode 100644 index 0000000..42d12b6 --- /dev/null +++ b/fortransa/lib/SYS223 @@ -0,0 +1 @@ +%^ C282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=O@@@@@@EX@2@@Fu&#E@@p@Ch@2@u@aE@@I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ gn@@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/fortransa/lib/SYS224 b/fortransa/lib/SYS224 new file mode 100644 index 0000000..a5e5529 --- /dev/null +++ b/fortransa/lib/SYS224 @@ -0,0 +1 @@ +% 282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 4z@@@@@@EX@O&@@s@CCh@O%@@I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gd@@F@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/fortransa/lib/SYS225 b/fortransa/lib/SYS225 new file mode 100644 index 0000000..3a11632 --- /dev/null +++ b/fortransa/lib/SYS225 @@ -0,0 +1 @@ +%X E282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]]@@@@@@X@@p@hCh@X@@RX@C@@EX@,@@RRX@JC@p@@*@@h@k@@k@@@@RX@ C@@@@X@@a8F@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@EE)@XE@@F@EX@@@bp@,8@Ch@,X@RX@@@p@)Qp@ Ch@&uRb27@@vRb2@@@@@@@@@@&vd@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=1282pp@282pp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ gO@@m@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/fortransa/lib/SYS226 b/fortransa/lib/SYS226 new file mode 100644 index 0000000..31736e2 --- /dev/null +++ b/fortransa/lib/SYS226 @@ -0,0 +1 @@ +%[ F282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]O%@@@@@@X@@X@@h@]R[h@^Cp@RX@@@@@I@Q @X@@RX@@@@Q @X@L@@@@aE@@p@ Qp@ Ch@EJm@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%bh@Xuv7RX@ C@@@@=*yO@@@v@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@)E282pp@C282pp@282pp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @gC@@a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ \ No newline at end of file diff --git a/fortransa/lib/SYS227 b/fortransa/lib/SYS227 new file mode 100644 index 0000000..d2a1ced --- /dev/null +++ b/fortransa/lib/SYS227 @@ -0,0 +1 @@ +% 282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @u k@@@@@@C8@p@E@@h@=Cp@=XX%X@@@ph@8@@p@=Ch@=@E@@X2%#sE@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ g1@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ \ No newline at end of file diff --git a/fortransa/lib/SYS230 b/fortransa/lib/SYS230 new file mode 100644 index 0000000..9fe38be --- /dev/null +++ b/fortransa/lib/SYS230 @@ -0,0 +1 @@ +%]aC@282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]Q/@@@@@@#8d@yW4@,@yE, @#,@|X@ @Qp@p @L@|d@ gd%@@@ @Wp@TE@ @O FpJdn&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]gn@XE@@ @[ @E@@T @^ @Op@LE@ @Ogp# FW@Wh@L@y% @n%@^ @nWp@Wh@@LL@| @O#p)#hh[O@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ]u7@pWp@X@ @Wh@@h8&)h&X@@,hh8&)h&X@@d@= @OL8@@ @OE@@  %a IE@*hbk X@,,% ]k,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]JC @Op@ @O*hhv#h%7khh@ Wp@gh%E@Tg],@|L8@@ @4J,@|X%,, W@@@@@@/mR@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@% s@ @@@@@@;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=2=Q#&Wpppp@v7gppppp@z@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@&@*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/fortransa/lib/SYS231 b/fortransa/lib/SYS231 new file mode 100644 index 0000000..d7a770a --- /dev/null +++ b/fortransa/lib/SYS231 @@ -0,0 +1 @@ +%aC282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @u @@@@@@v%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ga@@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ \ No newline at end of file diff --git a/fortransa/lib/SYS232 b/fortransa/lib/SYS232 new file mode 100644 index 0000000..2a686ae --- /dev/null +++ b/fortransa/lib/SYS232 @@ -0,0 +1 @@ +%aC282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ua@@@@@@7%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ga@@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/fortransa/lib/SYS233 b/fortransa/lib/SYS233 new file mode 100644 index 0000000..70b1acd --- /dev/null +++ b/fortransa/lib/SYS233 @@ -0,0 +1 @@ +%^aCC282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]I/@@@@@@p@y#h@g4@#h@[&@g4@ @W#h@gp@[, @R&@@ @O%@@*@[&@[ @L&@@ @%@@*L@[&@[&@[Om@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@==@X @R@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g>@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/fortransa/lib/SYS234 b/fortransa/lib/SYS234 new file mode 100644 index 0000000..d051fe0 --- /dev/null +++ b/fortransa/lib/SYS234 @@ -0,0 +1 @@ +%aC282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]@@@@@@C8@Ch@QpChnF2@2Ch@E@E@@@@C8@b;pC,>@ @@@O@@@C@@@@;p@hn@*L*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]v@X@@@@@@E@@@n@@dE@@@@R@a*@Q @@@@Ch@@g@@y8 nCh@p@bX@@n@@RFp@Ch@C%1@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]Ch@p1@JFz@p@Cp@@RX@CQ8C@hC@F@b@@R@@@ug)s8@@@>X@Q@@@@O=LTF8@RF8@LF8@F@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]>b@JJJJ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ %kaCF282pp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@&k@I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/fortransa/lib/SYS235 b/fortransa/lib/SYS235 new file mode 100644 index 0000000..1fbdd38 --- /dev/null +++ b/fortransa/lib/SYS235 @@ -0,0 +1 @@ +%XaCE282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]>^@@@@@@Eh@TCh@,Cp@uC8@ap@@Eh@TChs@Cp F2@2Ch@7@,h Wp@@@@@@W|@@@@#@@T@@Ch@,TX@L@yR8@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]Fs@X@@]hh@J@W|@@hhW4@@@)@W@@W@C8@p@ @WCh@@h Wp@@@@T@@m@@s@L@@v@p,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]y@pWp@@@@T@@zC8@n@R@@ |p@E @TCh@n@@4u&)dC8@p@ @WCh@n@@4u&)g@@QWh@@u&)#Cp@X@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ Q&@@@bI@@8@@@@@L/L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@&,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/fortransa/lib/SYS236 b/fortransa/lib/SYS236 new file mode 100644 index 0000000..fa8caf7 --- /dev/null +++ b/fortransa/lib/SYS236 @@ -0,0 +1 @@ +%[aCF282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ] #@@s@CCh@^Ch@Ch@&ChC[p@Ch@*ChCWp@%ChCXpCTChCpCOChCp=E @pEh@TF8@EX@4@@p@hCh@gF@@g@7WpQ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]d @pCh@&EX@&@@vXT)F@&@@1F@@&@XEX@k@EX@sXWyEX@*X;pCnEh@^2@EE8@@@)Ch@p@#XC2@,IT@Q@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]#vXCm@QX7g&uEX@*@ppC,hC2@Tp@@#p @kh@p@@@%XT;@@vpC)E @#@@sXX%@aQE@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]@Xp@&XCp@@pCpEXCWp@EhC[E CXCh@&p@h@^C*Fy@/C8@#X@@@8Ch@Cp@^pCXCREX@s@@1p@&E @)Jp4@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]y pX%p@p@p@@@kEX@*p@h@@@%p@F@#@X7g4%s@C@Tp@hCm@TX%&upC,@dXXL@b@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]m8XCg@C@CQ;I@@@@@n@2@7@z@n@4@@X@|@|pCChLXX7@@XChCpCg@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]*FXCR@[p@&F Cd@R@F8@XEhC@pC,Ch@&@@E@CR@#FCXp@XCQ@&FC[@@pCChC@^X>pCp#7=@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]mhEh@^2@EE8@Ch@Cp@^@@W8@C8CChC@@Ch@*@uChCWW8@@/p@CpCX@u;;@/EX@4@C@s@C@]k@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;C@pCE@CJXCg@@XpCO@p@@@p@@@J@@@@@@ @@@[@@@@@@@@@ @@@;@@@p@@@JCLs zyuhX@7@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@d>@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/fortransa/lib/SYS240 b/fortransa/lib/SYS240 new file mode 100644 index 0000000..4c961da --- /dev/null +++ b/fortransa/lib/SYS240 @@ -0,0 +1 @@ +%]&@282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@])@@@@@@C8@p@dX@m@@p*ChCT@@XFp@Ch@1@JFz@Cp@C@CWppCh@Cp*@Ch@WpC@ @C8@8@ChC@F@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ^y@Xp@kCh@pC@Ckh/@k@@ 8@,Ch@@@*@@g@Q @@E@@Fz@F@F@@@pC@z@@@@@p1 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gL@@n@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/fortransa/lib/SYS241 b/fortransa/lib/SYS241 new file mode 100644 index 0000000..31188ea --- /dev/null +++ b/fortransa/lib/SYS241 @@ -0,0 +1 @@ +%&282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]@@Ch@,Cp@up@ChpChChE,ChEmChEnEhC&ChEks@CEX@u@@OpCbFEnC,E,X aEX@u@@ EX@2@@pC#4E,C,E, ||/@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]|h@XX@yE,X@1EX@k@@F@kX@1@@EX@2@@gXdE,pC]Xn@@bXdXyC4@kEX@k@@XdXyF@kC4@kz7>@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]y @p@@@@@@pEkXEnX@y4@kC,EnFEnE@1@@@@X^C,EnpCEhEnChpE,E EnE @TCh@EpCkCh@X@@RX@E@En;>@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ] Q@@@Q @X@@@@TpE,Eh@TChEns@CC,E,E@y@vEX@@>F@R[=@E@@@Q @XERX@@EQkT@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]4 @@ @Q @@E@@@@pEnXEm@,,EmFEmFdEdhC#pC#E,@1EdCh7pCaCh@X RX@@CRX@*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]z8CC)@@>@@CI@2CgEk@@C@C@@@@@WC8@p@EhE @T @WChEnX^k7J@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]WLEdEn@@CpE,Eh@TChEm@%F@EX@@CX4RX@JC@@4@@@@pE,ChEmE EnCh@@R@@s@CE,Em@m&W@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]s[hEh@TFEm&E^@@@@@@Q@@@@@vhs@7@4EnQp@ Ch7u@@@@En@@@@pCXns@CEypC Qp@ ]Rv@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@],sC@ChCCs@Cuv)s7@@C@pC@CpC)hC%@Cd@2pC[Qp@ ChCQu@@@@@2@vpC^Qp@ ChCXua4*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%>CX@@@@@Q@&@s)@#))@)Ts@2))@v)s@v@@@@@@OO@@@@@@@=@@C)@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@uz)@Ek@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=sEC282pp]282pp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@b @E/@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/fortransa/lib/SYS242 b/fortransa/lib/SYS242 new file mode 100644 index 0000000..0c72c70 --- /dev/null +++ b/fortransa/lib/SYS242 @@ -0,0 +1 @@ +%&282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]p@@@@@@C8@aXC&X@@@4h@@@s@@I@@OCh@s@8p@sQp@#h@s@ @yC8@v@R@E@@@>8^v@h| @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@vR@@X @^h@h@^8@^@@>X@vX@Q @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@m/@p@@@@@@@@@@@@susg%& C&@@E@p@@@&T@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gX@@z@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/fortransa/lib/SYS243 b/fortransa/lib/SYS243 new file mode 100644 index 0000000..e6e8b2f --- /dev/null +++ b/fortransa/lib/SYS243 @@ -0,0 +1 @@ +%^&C282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]@@@@@@X@@RX@@@RX@C@@IRX@@@aE@@s@Cp@gF2@2E @T@@@LRX@LRX@@@X@h@*@@Xh@hR[h@)EI=@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@E^k@XCp@RX@@@@@[@Q @@@p@,@@bp@kQp@ Ch@%u7777@@@J=*y>O sv@gs@=@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ %)4282pp@R@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gO@@m@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/fortransa/lib/SYS244 b/fortransa/lib/SYS244 new file mode 100644 index 0000000..e8e5d4e --- /dev/null +++ b/fortransa/lib/SYS244 @@ -0,0 +1 @@ +%&282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=@@@@@@@@@p@h@F2@2@vRX@E@@Eh@T@@@p@RQp@ Ch@Xs%)7@@s%)@QLLI)@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@gv@@T@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/fortransa/lib/SYS777_noend b/fortransa/lib/SYS777_noend new file mode 100644 index 0000000..a765a13 --- /dev/null +++ b/fortransa/lib/SYS777_noend @@ -0,0 +1 @@ +%m282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/fortransa/lib/SYS777_wend b/fortransa/lib/SYS777_wend new file mode 100644 index 0000000..1e6b0e3 --- /dev/null +++ b/fortransa/lib/SYS777_wend @@ -0,0 +1 @@ +%m282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g/@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/fortransa/lib/SYS777_wend copy b/fortransa/lib/SYS777_wend copy new file mode 100644 index 0000000..a765a13 --- /dev/null +++ b/fortransa/lib/SYS777_wend copy @@ -0,0 +1 @@ +%m282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/fortransa/lib/ctl b/fortransa/lib/ctl new file mode 100644 index 0000000..495d500 --- /dev/null +++ b/fortransa/lib/ctl @@ -0,0 +1 @@ +^2 SYS230 04/01/65 0106 30001^2 ALOG 04/01/65 0138 30010^2 EXP 11/05/65 0150 30019^2 COS 11/05/65 0219 30029^2 SQRT 04/01/65 0083 30042^2 ATAN 04/01/65 0256 30049^2 ABS 04/01/65 0013 30063^2 IABS 04/01/65 0013 30067^2 FLOAT 04/01/65 0004 30071^2 IFIX 04/01/65 0008 30075^2 SIGN 04/01/65 0021 30079^2 ISIGN 04/01/65 0020 30083^2 AMOD 04/01/65 0013 30087^2 MOD 04/01/65 0009 30091^2 AMIN 04/01/65 0065 30095^2 DIM 04/01/65 0010 30102^2 IDIM 04/01/65 0010 30106^2 LOCF 04/01/65 0004 30110^2 IF 04/01/65 0025 30114^2 EXIT 12/15/65 0011 30119^2 SYS160 04/01/65 0014 30123^2 SYS201 04/01/65 0004 30128^2 SYS202 04/01/65 0008 30132^2 SYS203 12/15/65 0010 30136^2 SYS204 12/15/65 0021 30140^2 SYS205 12/15/65 0020 30144^2 SYS206 04/01/65 0011 30148^2 SYS207 12/15/65 0009 30152^2 SYS210 12/15/65 0009 30157^2 SYS211 12/15/65 0043 062001F 30162^2 SYS212 03/25/66 0050 032001C 30168^2 SYS213 12/15/65 0010 30175^2 SYS214 05/02/66 0010 30180^2 SYS215 12/15/65 0006 30185^2 SYS216 03/25/66 0053 30190^2 SYS217 12/15/65 0005 30197^2 SYS220 03/25/66 0088 30202^2 SYS221 12/15/65 0005 30210^2 SYS222 12/15/65 0070 30215^2 SYS223 12/15/65 0012 30222^2 SYS224 04/01/65 0006 30226^2 SYS225 12/15/65 0045 30230^2 SYS226 12/15/65 0033 30236^2 SYS227 12/15/65 0019 30242^2 SYS231 04/01/65 0003 30246^2 SYS232 04/01/65 0003 30250^2 SYS233 04/01/65 0028 30254^2 SYS234 02/25/66 0068 30259^2 SYS235 12/15/65 0078 30266^2 SYS236 12/15/65 0220 30273^2 SYS240 12/15/65 0046 30285^2 SYS241 12/15/65 0367 30290^2 SYS242 12/15/65 0058 30305^2 SYS243 12/15/65 0045 30311^2 SYS244 02/25/66 0020 30317^2 SYS777 04/01/65 30321 \ No newline at end of file diff --git a/fortransa/lib/sys203_ b/fortransa/lib/sys203_ new file mode 100644 index 0000000..d3723eb --- /dev/null +++ b/fortransa/lib/sys203_ @@ -0,0 +1,40 @@ +00000000: 8825 5e61 0243 4332 3832 7070 2008 4040 .%^a.CC282pp .@@ +00000010: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +00000020: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +00000030: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +00000040: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +00000050: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +00000060: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +00000070: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +00000080: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +00000090: 4040 4040 4040 0140 0840 0240 4010 4010 @@@@@@.@.@.@@.@. +000000a0: c35d 492f 0208 4040 4040 4040 0770 4079 .]I/..@@@@@@.p@y +000000b0: 2368 4019 6734 4019 2368 405b 2608 4019 #h@.g4@.#h@[&.@. +000000c0: 6734 4019 0120 4057 2368 401a 6770 405b g4@.. @W#h@.gp@[ +000000d0: 0710 022c 2008 4052 2640 401a 2008 404f ..., .@R&@@. .@O +000000e0: 2508 4040 2a04 405b 2608 405b 2008 404c %.@@*.@[&.@[ .@L +000000f0: 2640 401a 2008 4015 2508 4040 2a4c 405b &@@. .@.%.@@*L@[ +00000100: 2608 405b 2608 405b 4f6d 7f7f 4040 4040 &.@[&.@[Om..@@@@ +00000110: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +00000120: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +00000130: 4040 4040 4040 0140 0840 0240 4010 4008 @@@@@@.@.@.@@.@. +00000140: c03d 3d08 0208 4058 2008 4052 4040 4040 .==...@X .@R@@@@ +00000150: 4040 4040 4040 4040 2040 4040 4040 4040 @@@@@@@@ @@@@@@@ +00000160: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +00000170: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +00000180: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +00000190: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +000001a0: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +000001b0: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +000001c0: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +000001d0: 4040 4040 4040 0140 0840 0240 4010 4004 @@@@@@.@.@.@@.@. +000001e0: d815 673e 4008 401c 4040 4040 4040 4040 ..g>@.@.@@@@@@@@ +000001f0: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +00000200: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +00000210: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +00000220: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +00000230: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +00000240: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +00000250: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +00000260: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +00000270: 4040 4040 4040 0140 0840 0240 4010 4002 @@@@@@.@.@.@@.@. diff --git a/fortransa/lib/sys204_ b/fortransa/lib/sys204_ new file mode 100644 index 0000000..e6ffeb4 --- /dev/null +++ b/fortransa/lib/sys204_ @@ -0,0 +1,70 @@ +00000000: 8825 1961 0243 0432 3832 7070 2008 4040 .%.a.C.282pp .@@ +00000010: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +00000020: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +00000030: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +00000040: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +00000050: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +00000060: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +00000070: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +00000080: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +00000090: 4040 4040 4040 0140 0840 0240 4008 0840 @@@@@@.@.@.@@..@ +000000a0: c35d 1610 0208 4040 4040 4040 4338 4004 .]....@@@@@@C8@. +000000b0: 4368 4051 0770 0143 0768 026e 4632 4032 Ch@Q.p.C.h.nF2@2 +000000c0: 4368 4045 0708 4045 0240 4040 0408 4008 Ch@E..@E.@@@..@. +000000d0: 4338 4062 0708 023b 0770 0108 432c 023e C8@b...;.p..C,.> +000000e0: 0408 400d 0402 0840 4008 404f 4010 4040 ..@....@@.@O@.@@ +000000f0: 4310 4002 0402 4008 4008 403b 0770 4002 C.@...@.@.@;.p@. +00000100: 0768 026e 0740 022a 4c04 2a08 4040 4040 .h.n.@.*L.*.@@@@ +00000110: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +00000120: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +00000130: 4040 4040 4040 0140 0840 0240 4008 0440 @@@@@@.@.@.@@..@ +00000140: c35d 7601 0208 4058 4008 401c 4010 4040 .]v...@X@.@.@.@@ +00000150: 0708 4004 4508 4040 0740 026e 4008 4064 ..@.E.@@.@.n@.@d +00000160: 451c 4040 4008 4052 4010 1061 0110 022a E.@@@.@R@..a...* +00000170: 4051 2040 4008 4007 0740 4368 4008 4067 @Q @@.@..@Ch@.@g +00000180: 4008 4079 0138 0108 0120 026e 4368 4002 @.@y.8... .nCh@. +00000190: 0770 4062 0758 0102 4008 406e 4008 4052 .p@b.X..@.@n@.@R +000001a0: 4670 4002 4368 4043 2531 1c1c 4040 4040 Fp@.Ch@C%1..@@@@ +000001b0: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +000001c0: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +000001d0: 4040 4040 4040 0140 0840 0240 4008 0240 @@@@@@.@.@.@@..@ +000001e0: c35d 4368 0208 4070 0431 404a 467a 4002 .]Ch..@p.1@JFz@. +000001f0: 0770 4002 4370 4002 0708 4002 5258 0104 .p@.Cp@...@.RX.. +00000200: 0708 4043 5138 4340 1368 4340 4608 4062 ..@CQ8C@.hC@F.@b +00000210: 4008 4052 4010 4040 041c 0275 6729 7338 @.@R@.@@...ug)s8 +00000220: 0402 0840 4008 403e 0258 4051 4008 4015 ...@@.@>.X@Q@.@. +00000230: 4040 014f 7f3d 4c54 4638 4052 4638 404c @@.O.=LTF8@RF8@L +00000240: 4638 4046 0240 4040 0102 0740 4040 4040 F8@F.@@@...@@@@@ +00000250: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +00000260: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +00000270: 4040 4040 4040 0140 0840 0240 4008 0140 @@@@@@.@.@.@@..@ +00000280: c05d 3e62 4008 0108 4a4a 4a4a 4040 4040 .]>b@...JJJJ@@@@ +00000290: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +000002a0: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +000002b0: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +000002c0: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +000002d0: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +000002e0: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +000002f0: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +00000300: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +00000310: 4040 4040 4040 0140 0840 0240 4008 4020 @@@@@@.@.@.@@.@ +00000320: 8825 6b61 0243 4632 3832 7070 1008 4040 .%ka.CF282pp..@@ +00000330: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +00000340: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +00000350: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +00000360: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +00000370: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +00000380: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +00000390: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +000003a0: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +000003b0: 4040 4040 4040 0140 0840 0240 4008 4010 @@@@@@.@.@.@@.@. +000003c0: d815 266b 4008 0149 4040 4040 4040 4040 ..&k@..I@@@@@@@@ +000003d0: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +000003e0: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +000003f0: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +00000400: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +00000410: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +00000420: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +00000430: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +00000440: 4040 4040 4040 4040 4040 4040 4040 4040 @@@@@@@@@@@@@@@@ +00000450: 4040 4040 4040 0140 0840 0240 4008 4008 @@@@@@.@.@.@@.@. diff --git a/fortransa/lib/sys233- b/fortransa/lib/sys233- new file mode 100644 index 0000000..70b1acd --- /dev/null +++ b/fortransa/lib/sys233- @@ -0,0 +1 @@ +%^aCC282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]I/@@@@@@p@y#h@g4@#h@[&@g4@ @W#h@gp@[, @R&@@ @O%@@*@[&@[ @L&@@ @%@@*L@[&@[&@[Om@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@==@X @R@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g>@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/fortransa/lib/sys234- b/fortransa/lib/sys234- new file mode 100644 index 0000000..d051fe0 --- /dev/null +++ b/fortransa/lib/sys234- @@ -0,0 +1 @@ +%aC282pp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]@@@@@@C8@Ch@QpChnF2@2Ch@E@E@@@@C8@b;pC,>@ @@@O@@@C@@@@;p@hn@*L*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]v@X@@@@@@E@@@n@@dE@@@@R@a*@Q @@@@Ch@@g@@y8 nCh@p@bX@@n@@RFp@Ch@C%1@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]Ch@p1@JFz@p@Cp@@RX@CQ8C@hC@F@b@@R@@@ug)s8@@@>X@Q@@@@O=LTF8@RF8@LF8@F@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]>b@JJJJ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ %kaCF282pp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@&k@I@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/symbol/.DS_Store b/symbol/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..21016802054ca809c62bc2e37880473671358a8a GIT binary patch literal 6148 zcmeHKu};H441HHBR0Kmu#tf`b5JiG5s=|PTSSpwaG(#kys7(g8d^*oQt7?=obO2Sz zu6)n&*}2QRDvkk!NjtQe5@LqZiy4V#Gi>foR)08u_8RcK2uAvuX*YS={N3?;-=VoVLzVuYAZ ze`0Z|VG}W?BUtkhY~^4bO3>AL|3t$P(uh7f1I|F3fxUP+l=^@BbN}B?@+)V+8TeNW zgnl;7CVV8Tt(}LHTANUxsUi~BL|moN&{E7;DaFTB75Wn~h^b){ksgYF2q+CcI0Jvm Fz&8_4Ml%2a literal 0 HcmV?d00001 diff --git a/symbol/READ.ME b/symbol/READ.ME new file mode 100644 index 0000000..edc1cd2 --- /dev/null +++ b/symbol/READ.ME @@ -0,0 +1,22 @@ +This is the source code, binaries and listing output for the +SDS Symbol Assembler described in Symbol Tech Manual dated March 1965, with +catalog number 900688A. This source code was obtained using the +ocropus OCR system and first assembled by a cross assembler. The result of +that operation was then used to assemble the code again +on the simh SDS simulator to produce the .bo files in this directory. + +The section-7 code is a version extracted from the PAL tapes contributed by JPL. +Some portions of that were removed to get everything to work. The standard +SDS release of this module could not be located. + +The cat_sym.sh script collects the binaries into a single file, or card deck if +you will, prefaced with a one card loader program. The script also produces + a namelist file giving the values for external definitions. The order of +the namelist is that which would occur when card reader, card punch and +line printer modules are included at run time. + +Instructions on how to use the assembler can be found in the Technical Manual +and the Symbol MetaSymbol Reference Manual, SDS publication 900506G. + +Two simulator command files, sym_ascii and sym, are provided as examples +of how to run the assembler. \ No newline at end of file diff --git a/symbol/cat_sym.sh b/symbol/cat_sym.sh new file mode 100755 index 0000000..74af202 --- /dev/null +++ b/symbol/cat_sym.sh @@ -0,0 +1,13 @@ + cat /users/admin/sds/850648-84 >symbol + cat section-2a.bo >>symbol + cat section-2b.bo >>symbol + cat csi.bo >>symbol + cat cbo.bo >>symbol + cat llo.bo >>symbol + cat section-4.bo >>symbol + cat section-5.bo >>symbol + cat section-6.bo >>symbol + cat section-7.bo >>symbol +../tools/sds_nm 233 csi.bo \ + cbo.bo llo.bo section-4.bo section-5.bo section-6.bo \ + section-7.bo >symbol.nm diff --git a/symbol/cbo.bo b/symbol/cbo.bo new file mode 100644 index 0000000..933c777 --- /dev/null +++ b/symbol/cbo.bo @@ -0,0 +1 @@ +Ev&pppp @^v)s)ppp @@R&ppppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]]*@@@@@@p@d &@@&s@CCh@@@@@^&p@]Ch@[@%h@p@@@&Cp@[T@[F@[E @g@O@Q @F@EX@Tk7;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@mE@XE@@@@p@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ *@@@@h@@@@@@@@p@)Ch@@@@@@@E@^4@OX @@@@@@@@@@&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=vpppppp@]Tvppppp@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g@@*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/symbol/cbo.lo b/symbol/cbo.lo new file mode 100644 index 0000000..841f3a6 --- /dev/null +++ b/symbol/cbo.lo @@ -0,0 +1,61 @@ + + 1 + 2 * OCRED TEXT FROM SYMBOL TECHNICAL MANUAL + 3 * MODIFIED TO NOT PUNCH TWO BLANK CARDS AT WEOF + 4 * KEN RECTOR, 9/11/2020 + 5 * + 6 * ^XC + 00000 7 $CBO RES 0 + 00000000 8 S9300 EQU 0 + 00000000 9 X0 EQU S9300 + 00000002 10 X2 EQU 2-S9300 + 00000000 11 CH EQU 0 + 00000001 12 U EQU 1 + 00000 0 00 00000 13 $WRITR PZE 0 ENTRY + 00001 0 76 00044 14 LDA =-12 LOAD REPEAT COUNT + 00002 0 40 14046 15 CPT CH,U + 00003 0 01 00002 16 BRU $-1 + 00004 0 40 12046 17 PBT CH,U + 00005 0 46 30003 18 CLR BUFFERED, SET REPEAT CDUN + 00006 0 35 00032 19 STA PETEC SAVE REPEAT COUNT + 00007 0 40 21000 20 PETEL1 BRTW WAIT FOR BUFFER TO BE READY + 00010 0 01 00007 21 BRU $-1 + 00011 0 02 03646 22 PCB CH,U,4 + 00012 0 76 00035 23 LDA PETECW + 00013 0 35 00033 24 STA PETEA INIALIZE BUFFER ADDRESS + 00014 0 71 00045 25 LDX =00200000-40,X0 + 00015 0 75 00034 26 LDB PETE0 +* 00016 0 76 00000 27 LDA DWC A = RECORD SIZE - 1 + 00017 0 72 00046 28 PETEL2 SKA =040000000 IS A NEGAT1VE + 00020 0 36 00033 29 STB PETEA YES, SET ADDRESS = ADDRESS OF 0 + 00021 0 12 40033 30 MIW *PETEA OUTPUT WORD + 00022 0 61 00033 31 MIN PETEA INCREMENT ADDRESS + 00023 0 54 00047 32 SUB =1 DECREMENT COUNT + 00024 0 41 00017 33 BRX PETEL2,X0 + 00025 0 02 14000 34 TOP CH + 00026 0 61 00032 35 MIN PETEC INCREMENT REPEAT COUNT + 00027 0 53 00032 36 SKN PETEC IS ALL TRANSMISION COMPLETE + 00030 0 51 00000 37 BRR WRITR YES, EXIT + 00031 0 01 00007 38 BRU PETEL1 NO, LOOP AGAIN + 39 * + 00032 40 PETEC RES 1 SAVE LOCATION FOR REPEAT COUNT + 00033 41 PETEA RES 1 SAVE LOCATION FOR ADDRESS + 00034 0 00 00050 42 PETE0 PZE =0 ADDRESS OF A ZERO CONSTANT +* 00035 0 00 00000 43 PETECW PZE CW + 00036 0 00 00000 44 $WEOF PZE 0 + 00037 0 76 00051 45 LDA =-1 +* 00040 0 35 00016 46 STA DWC + 47 * BRM WRITR KENR + 00041 0 20 00000 48 NOP 0 + 49 * BRM WRITR KENR + 00042 0 20 00000 50 NOP 0 + 00043 0 51 00036 51 BRR WEOF + 52 END + 00044 77777764 + 00045 00177730 + 00046 40000000 + 00047 00000001 + 00050 00000000 + 00051 77777777 + 00035 CW + 00040 DWC \ No newline at end of file diff --git a/symbol/cbo.si b/symbol/cbo.si new file mode 100644 index 0000000..e5138cd --- /dev/null +++ b/symbol/cbo.si @@ -0,0 +1,51 @@ +* OCRed text from Symbol Technical Manual +* modified to not punch two blank cards at weof +* Ken Rector, 9/11/2020 +* +* ^XC +$CBO RES 0 +S9300 EQU 0 +X0 EQU S9300 +X2 EQU 2-S9300 +CH EQU 0 +U EQU 1 +$WRITR PZE 0 ENTRY + LDA =-12 LOAD REPEAT COUNT + CPT CH,U + BRU $-1 + PBT CH,U + CLR BUFFERED, SET REPEAT CDUN + STA PETEC SAVE REPEAT COUNT +PETEL1 BRTW WAIT FOR BUFFER TO BE READY + BRU $-1 + PCB CH,U,4 + LDA PETECW + STA PETEA INIALIZE BUFFER ADDRESS + LDX =00200000-40,X0 + LDB PETE0 + LDA DWC A = RECORD SIZE - 1 +PETEL2 SKA =040000000 IS A NEGAT1VE + STB PETEA YES, SET ADDRESS = ADDRESS OF 0 + MIW *PETEA OUTPUT WORD + MIN PETEA INCREMENT ADDRESS + SUB =1 DECREMENT COUNT + BRX PETEL2,X0 + TOP CH + MIN PETEC INCREMENT REPEAT COUNT + SKN PETEC IS ALL TRANSMISION COMPLETE + BRR WRITR YES, EXIT + BRU PETEL1 NO, LOOP AGAIN +* +PETEC RES 1 SAVE LOCATION FOR REPEAT COUNT +PETEA RES 1 SAVE LOCATION FOR ADDRESS +PETE0 PZE =0 ADDRESS OF A ZERO CONSTANT +PETECW PZE CW +$WEOF PZE 0 + LDA =-1 + STA DWC +* BRM WRITR kenr + NOP 0 +* BRM WRITR kenr + NOP 0 + BRR WEOF + END diff --git a/symbol/csi.bo b/symbol/csi.bo new file mode 100644 index 0000000..64bb966 --- /dev/null +++ b/symbol/csi.bo @@ -0,0 +1 @@ +Ik2ppppp @@%T2ppp @ %g4sppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]8R@@@@@@F@@@F@O@@@@E@@@ E@@@@@@@@@@@@E@ @O,Jh@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%bRpppp@E@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g2@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/symbol/csi.lo b/symbol/csi.lo new file mode 100644 index 0000000..f0c5f45 --- /dev/null +++ b/symbol/csi.lo @@ -0,0 +1,30 @@ + + 1 + 2 * \057 C + 00000 3 $CSI RES 0 + 00000000 4 S9300 EQU 0 + 00000000 5 X0 EQU S9300 + 00000002 6 X2 EQU 2-S9300 + 00000000 7 CH EQU 0 + 00000001 8 U EQU 1 + 00000 9 $INPUT RES 0 + 00000 0 00 00000 10 CARD PZE 0 + 00001 0 40 12006 11 CKSK CRT CH,U + 00002 0 01 00001 12 BRU CKSK + 00003 0 02 02606 13 RCD CH,U,4 + 00004 0 71 00017 14 LDX =00200000-20,X0 +* 00005 2 32 00000 15 CWIM WIM CBFE,X2 ((CBFE,2):=(W) + 00006 0 40 21000 16 BRTW + 00007 0 41 00005 17 BRX CWIM,X0 + 00010 0 40 20010 18 BETW + 00011 0 01 00013 19 BRU CSKSE + 00012 0 51 00000 20 BRR CARD EXIT** + 00013 0 00 00000 21 CSKSE HLT HALT ON MIS-READ + 00014 0 01 00001 22 BRU CKSK + 23 * + 24 * + 00015 0 00 00000 25 $ENDSI PZE 0 + 00016 0 51 00015 26 BRR ENDSI + 27 END + 00017 00177754 + 00005 CBFE \ No newline at end of file diff --git a/symbol/csi.si b/symbol/csi.si new file mode 100644 index 0000000..6c9b567 --- /dev/null +++ b/symbol/csi.si @@ -0,0 +1,26 @@ +* \057 C +$CSI RES 0 +S9300 EQU 0 +X0 EQU S9300 +X2 EQU 2-S9300 +CH EQU 0 +U EQU 1 +$INPUT RES 0 +CARD PZE 0 +CKSK CRT CH,U + BRU CKSK + RCD CH,U,4 + LDX =00200000-20,X0 +CWIM WIM CBFE,X2 ((CBFE,2):=(W) + BRTW + BRX CWIM,X0 + BETW + BRU CSKSE + BRR CARD EXIT** +CSKSE HLT HALT ON MIS-READ + BRU CKSK +* +* +$ENDSI PZE 0 + BRR ENDSI + END diff --git a/symbol/llo.bo b/symbol/llo.bo new file mode 100644 index 0000000..15ef4d9 --- /dev/null +++ b/symbol/llo.bo @@ -0,0 +1 @@ +m|##&ppppp @@g)%spppp @@X&dpppp @d@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]h>@@@@@@p@@@QpX@Q@@@@mp@nh@@@I8@@C8@@p@/Ch@@E@@@@@@@@@@p@@@@p@Eh@bCh@#p@pJzTO@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]n8@XE @TCh@X@@pT@#@@Q @@@@E@Q@@ @@b@@@@p@@%@QLp@p@Q @@@@*E@d@O8pppp@@@;OX@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]J@@p@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@m#m#R4pppp@#R4pppp@ITspppp@Tvppppp@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g@@1@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/symbol/llo.lo b/symbol/llo.lo new file mode 100644 index 0000000..e30ea24 --- /dev/null +++ b/symbol/llo.lo @@ -0,0 +1,69 @@ + + 1 + 2 + 3 * A:XL + 00000 4 $LLO RES 0 + 00000000 5 S9300 EQU 0 + 00000000 6 X0 EQU S9300 + 00000002 7 X2 EQU 2-S9300 + 00000 0 00 00000 8 $PRNT PZE 0 + 00001 0 40 12060 9 PRN1 SKS 012060 SKIP IF BUFFERED PRINIER + 00002 0 01 00001 10 BRU PRN1 + 00003 0 02 10460 11 EOM 010460 STEP ONE LINE BEFORE PRINTING + 00004 0 43 00021 12 PRST BRM LINEP PRINT VARIABLE LENGTH LINE + 00005 0 40 20010 13 BETW + 00006 0 01 00020 14 BRU PERRP + 00007 0 71 00055 15 PRN2 LDX =00200000-8,X0 + 00010 0 76 00056 16 LDA =060606060 +* 00011 2 35 00000 17 SBLK STA CBUF,X2 STORE BLANKS IN 1ST 32 POSNS + 00012 0 41 00011 18 BRX SBLK,X0 +* 00013 0 77 00000 19 EAX LBUF,X0 +* 00014 0 37 00000 20 STX EDW,X0 + 00015 0 76 00057 21 LDA =8 +* 00016 0 35 00000 22 STA EDCT + 00017 0 51 00000 23 BRR PRNT *EX1T* + 24 * + 25 * + 00020 0 00 00000 26 PERRP HLT + 27 * REPLACE PREVIOUS LINE WITH RESTART PROCEDURE + 28 * PRINT ONE VARIABLE LENGTH LINE + 00021 0 00 00000 29 LINEP PZE ENTRY + 00022 0 40 11060 30 SKS 011060 SKIP IF NO PRINTER FAULT + 00023 0 00 00000 31 HLT **HALT-PRINTER FAULT** +* 00024 0 76 00016 32 LDA EDCT NUMBER OF WORDS TO PRINT + 00025 0 55 00042 33 ADD DPTWI PLUS ORIGIN OF PRINT BUFFER + 00026 0 35 00043 34 STA DPTW INDEXED INDIRECT ADDRESS + 00027 0 76 00060 35 LDA =00200000 +* 00030 0 54 00024 36 SUB EDCT +* 00031 0 35 00030 37 STA EDCT +* 00032 0 71 00031 38 LDX EDCT,X0 + 00033 0 02 02660 39 EOM 02660 + 00034 0 12 40043 40 MIW *DPTW + 00035 0 41 00034 41 BRX $-1,X0 + 00036 0 02 14000 42 TOP + 00037 0 40 21000 43 BRTW + 00040 0 01 00037 44 BRU $-1 + 00041 0 51 00021 45 BRR LINEP + 46 * +* 00042 2 00 00013 47 DPTWI PZE LBUF,X2 +* 00043 2 00 00042 48 DPTW PZE LBUF,X2 + 49 * + 50 * HOME PAPER SUOROUTI6E + 00044 0 00 00000 51 $HOME PZE 0 + 00045 0 40 12060 52 SKS 012060 SKIP IF BUFFERED PRINTER READY + 00046 0 01 00045 53 BRU $-1 + 00047 0 02 11460 54 EOM 011460 RESTORE PAGE OR 'HOME' PAPER + 00050 0 02 02660 55 EOM 02660 START BUFFERED PRINTER NR 1 + 00051 0 02 14000 56 EOM 014000 + 00052 0 40 21000 57 BRTW + 00053 0 01 00052 58 BRU $-1 + 00054 0 51 00044 59 BRR HOME EXIT + 60 END + 00055 00177770 + 00056 60606060 + 00057 00000010 + 00060 00200000 + 00043 LBUF + 00011 CBUF + 00032 EDCT + 00014 EDW \ No newline at end of file diff --git a/symbol/llo.si b/symbol/llo.si new file mode 100644 index 0000000..64af411 --- /dev/null +++ b/symbol/llo.si @@ -0,0 +1,59 @@ +* A:XL +$LLO RES 0 +S9300 EQU 0 +X0 EQU S9300 +X2 EQU 2-S9300 +$PRNT PzE 0 +PRN1 SKS 012060 SKIP IF BUFFERED PRINIER + BRU PRN1 + EOM 010460 STEP ONE LINE BEFORE PRINTING +PRST BRM LINEP PRINT VARIABLE LENGTH LINE + BETW + BRU PERRP +PRN2 LDX =00200000-8,X0 + LDA =060606060 +SBLK STA CBUF,X2 STORE BLANKS IN 1ST 32 POSNS + BRX SBLK,X0 + EAX LBUF,X0 + STX EDW,X0 + LDA =8 + STA EDCT + BRR PRNT *EX1T* +* +* +PERRP HLT +* REPLACE PREVIOUS LINE WITH RESTART PROCEDURE +* PRINT ONE VARIABLE LENGTH LINE +LINEP PZE ENTRY + SKS 011060 SKIP IF NO PRINTER FAULT + HLT **HALT-PRINTER FAULT** + LDA EDCT NUMBER OF WORDS TO PRINT + ADD DPTWi PLUS ORIGIN OF PRINT BUFFER + STA DPTW INDEXED INDIRECT ADDRESS + LDA =00200000 + SUB EDCT + STA EDCT + LDX EDCT,X0 + EOM 02660 + MIW *DPTW + BRX $-1,X0 + TOP + BRTW + BRU $-1 + BRR LINEP +* +DPTWI PZE LBUF,X2 +DPTW PZE LBUF,X2 +* +* HOME PAPER SUOROUTI6E +$HOME PZE 0 + SKS 012060 SKIP IF BUFFERED PRINTER READY + BRU $-1 + EOM 011460 RESTORE PAGE OR 'HOME' PAPER + EOM 02660 START BUFFERED PRINTER NR 1 + EOM 014000 + BRTW + BRU $-1 + BRR HOME EXIT + END + diff --git a/symbol/section-2a.bo b/symbol/section-2a.bo new file mode 100644 index 0000000..4897216 --- /dev/null +++ b/symbol/section-2a.bo @@ -0,0 +1 @@ +vF@@X@hQpRE Ch C,  @XE TCh @@XI@@XO@@XRF@XO@^FCLpL@R@F8@CFp@RCh@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@vI@@XX@@X[@IC p Eh @pJChOChp Fp@EhE ChpL8 @X/CTO|OFOX,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@mL@@XpCL8L@@QF@@ICh Fp@L8 hI@I@IhL@CpO4Eh EXO@EC,FF8@X@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@mXd@@@XI@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@E&F@@Q@@@ @@@8@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]b@@@@X@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/symbol/section-2a.lo b/symbol/section-2a.lo new file mode 100644 index 0000000..cbc1b0a --- /dev/null +++ b/symbol/section-2a.lo @@ -0,0 +1,98 @@ + + 1 + 03000 2 AORG 03000 + 00000000 3 S9300 EQU 0 + 00000000 4 X0 EQU S9300 + 00000002 5 X2 EQU 2-S9300 + 00000000 6 CH EQU 0 + 00000001 7 U EQU 1 + 03000 0 75 03121 8 START LDB =-1 COMPUTE MAXIMUM MEMORY ADDR + 03001 0 76 03122 9 LDA =040000*/S9300+2047 + 03002 0 54 03123 10 LOOP1 SUB =04000 + 03003 0 35 03113 11 STA BIAS + 03004 0 35 43113 12 STA *BIAS + 03005 0 70 43113 13 SKM *BIAS + 03006 0 01 03002 14 BRU LOOP1 + 03007 0 54 03124 15 SUB =4095 SUBTRACT 07777 + 03010 0 35 03113 16 STA BIAS BIAS=MEMORY SIIE+4K + 03011 0 40 21000 17 BPT BRTW + 03012 0 01 03011 18 BRU BPT + 03013 0 40 20400 19 BPT 1 + 03014 0 01 03017 20 BRU CARDS + 03015 0 02 02604 21 RPT CH,U,4 + 03016 0 01 03022 22 BRU READ + 03017 0 40 12006 23 CARDS CRT CH,U + 03020 0 01 03017 24 BRU CARDS + 03021 0 02 03606 25 RCB CH,U,4 + 03022 0 32 03114 26 READ WIM CW CONTROL WORD + 03023 0 76 03114 27 LDA CW + 03024 0 02 20001 28 ROV + 03025 0 67 00003 29 LSH 3 END RECORD TURNSONOYERFLO1 + 03026 0 66 00022 30 RSH 18 + 03027 0 35 03116 31 STA COUNT WORD COUNT + 03030 0 40 21000 32 BRTW CHECK FOR CARD FEED ERROR + 03031 0 01 03033 33 BRU $+2 NO + 03032 0 01 03111 34 BRU ERROR YES + 03033 0 32 03115 35 WIM LOC RECORD ORIGIN + 03034 0 76 03115 36 LDA LOC + 03035 0 72 03125 37 SKA =01700000 IS RECORD RELOCATABLE + 03036 0 55 03113 38 ADD BIAS YES + 03037 0 40 20001 39 OVT NO, CHECK FOR END RECORD + 03040 0 76 03112 40 LDA BRUX YES + 03041 0 35 03117 41 STA T1 T1,T2 NOW POINT EITHER TO RECORD + 03042 0 35 03120 42 STA T2 ORIGIN OR TO EX1T + 03043 0 76 03115 43 LDA LOC + 03044 0 66 00023 44 RSH 19 (A)=1 IF REL WORD PRESENT + 03045 0 55 03126 45 ADD =00200001 COMPUTE XREG CONSTANT CORRESPONDING + 03046 0 54 03116 46 SUB COUNT TO NUMBER OF DATA WORDS TO READ + 03047 0 35 03116 47 STA COUNT + 03050 0 76 03114 48 LDA CW BEGIN CHECKSUM + 03051 0 17 03115 49 EOR LOC + 03052 0 71 03116 50 LDX COUNT,X0 + 03053 0 01 03057 51 BRU BRX1 + 03054 0 32 43117 52 LOOP2 WIM *T1 READ RECORD + 03055 0 17 43117 53 EOR *T1 + 03056 0 61 03117 54 MIN T1 + 03057 0 41 03054 55 BRX1 BRX LOOP2,X0 + 03060 0 32 03114 56 WIM REL READ IN REL WORD IF ANY + 03061 0 17 03114 57 EOR REL + 03062 0 40 20400 58 BPT 1 + 03063 0 02 12006 59 SRC CH,U + 03064 0 40 20010 60 BETW CHECK FOR BUFFER ERROR + 03065 0 01 03111 61 BRU ERROR + 03066 0 35 03115 62 STA CS FOLD CHECKSLUM + 03067 0 66 00014 63 RSH 12 + 03070 0 17 03115 64 EOR CS + 03071 0 75 03111 65 LDB ERROR + 03072 0 70 03111 66 SKM ERROR + 03073 0 01 03111 67 BRU ERROR CHECKSUM FAILS + 03074 0 71 03116 68 LDX COUNT,X0 + 03075 0 75 03114 69 LDB REL + 03076 0 01 03107 70 BRU BRX2 + 03077 0 36 03117 71 LOOP3 STB T1 RELOCATION LOOP + 03100 0 76 43120 72 LDA *T2 + 03101 0 55 03113 73 ADD BIAS + 03102 0 53 03117 74 SKN T1 + 03103 0 01 03105 75 BRU MIN + 03104 0 35 43120 76 STA *T2 + 03105 0 61 03120 77 MIN MIN T2 + 03106 0 67 00001 78 LSH 1 + 03107 0 41 03077 79 BRX2 BRX LOOP3,X0 + 03110 0 01 03011 80 EXIT BRU BPT + 03111 0 00 07777 81 ERROR HLT 07777 + 03112 0 01 03110 82 BRUX BRU EXIT + 03113 83 BIAS RES 1 + 03114 84 CW RES 1 + 03115 85 LOC RES 1 + 03116 86 COUNT RES 1 + 03117 87 T1 RES 1 + 03120 88 T2 RES 1 + 00003114 89 REL EQU CW + 00003115 90 CS EQU LOC + 00003000 91 END START + 03121 77777777 + 03122 00043777 + 03123 00004000 + 03124 00007777 + 03125 01700000 + 03126 00200001 \ No newline at end of file diff --git a/symbol/section-2a.si b/symbol/section-2a.si new file mode 100644 index 0000000..4ada8f5 --- /dev/null +++ b/symbol/section-2a.si @@ -0,0 +1,90 @@ + AORG 03000 +S9300 EQU 0 +X0 EQU S9300 +X2 EQU 2-S9300 +CH EQU 0 +U EQU 1 +START LDB =-1 COMPUTE MAXIMUM MEMORY ADDR + LDA =040000*/S9300+2047 +LOOP1 SUB =04000 + STA BIAS + STA *BIAS + SKM *BIAS + BRU LOOP1 + SUB =4095 SUBTRACT 07777 + STA BIAS BiAS=MEMORY SIIE+4K +BPT BRTW + BRU BPT + BPT 1 + BRU CARDS + RPT CH,U,4 + BRU READ +CARDS CRT CH,U + BRU CARDS + RCB CH,U,4 +READ WIM CW CONTROL WORD + LDA CW + ROV + LSH 3 END RECORD TURNSONOYERFLO1 + RSH 18 + STA COUNT WORD COUNT + BRTW CHECK FOR CARD FEED ERROR + BRU $+2 NO + BRU ERROR YES + WIM LOC RECORD ORIGIN + LDA LOC + SKA =01700000 IS RECORD RELOCATABLE + ADD BIAS YES + OVT NO, CHECK FOR END RECORD + LDA BRUX YES + STA T1 T1,T2 NOW POINT EITHER TO RECORD + STA T2 ORIGIN OR TO EX1T + LDA LOC + RSH 19 (A)=1 IF REL WORD PRESENT + ADD =00200001 COMPUTE XREG CONSTANT CORRESPONDING + SUB COUNT TO NUMBER OF DATA WORDS TO READ + STA COUNT + LDA CW BEGIN CHECKSUM + EOR LOC + LDX COUNT,X0 + BRU BRX1 +LOOP2 WIM *T1 READ RECORD + EOR *T1 + MIN T1 +BRX1 BRX LOOP2,X0 + WIM REL READ IN REL WORD IF ANY + EOR REL + BPT 1 + SRC CH,U + BETW CHECK FOR BUFFER ERROR + BRU ERROR + STA CS FOLD CHECKSLUM + RSH 12 + EOR CS + LDB ERROR + SKM ERROR + BRU ERROR CHECKSUM FAILS + LDX COUNT,X0 + LDB REL + BRU BRX2 +LOOP3 STB T1 RELOCATION LOOP + LDA *T2 + ADD BIAS + SKN T1 + BRU MIN + STA *T2 +MIN MIN T2 + LSH 1 +BRX2 BRX LOOP3,X0 +EXIT BRU BPT +ERROR HLT 07777 +BRUX BRU EXIT +BIAS RES 1 +CW RES 1 +LOC RES 1 +COUNT RES 1 +T1 RES 1 +T2 RES 1 +REL EQU CW +CS EQU LOC + END START diff --git a/symbol/section-2b.bo b/symbol/section-2b.bo new file mode 100644 index 0000000..16aabe8 --- /dev/null +++ b/symbol/section-2b.bo @@ -0,0 +1 @@ +TF@@ F@@@@@@@@@@@1@@@/=@Oz@@ @@@ @@@*@@@@@@@d@@@s@@@g@@@@@@#2ppR&pp#&pp@@ X@ppCh @Ch @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@>%@@ ^Ch Ch@dp LCh Fh&C Op O@ I@ #C Op O@ @ ,@ [@ @ /@ 7 &2@Ep FX C4 FF Fh&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@>@@ v@ g@@@h2pbsE b4Ch,C,,,@ z@@a@a paF@ChaFbhWpbbh@2aF4aFChIF@b*@ab)@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]@%@aWp]h[apbkF@bmpb2Ch@)Chb,X@mpkCh CCh p;Ch@hp@bCh F@hWp@@Wh@Fp@R &p@LbhCp O@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]E@a&hka)@ayW@ X@agp OW@ C@aspp@hh@@F Cp O av@ayW@ @a4F p>bEh@hCh@hp FE >b@@@Q@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@n@@a>Ch FXp@b@a^EX @bF@bLX@mEX CXp@*@a@bEp @@ Q@b@bT@ R@@kpbn@bpb/C,b,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]*h@bFb,p|Fp@hb1XphbpC4b,@@kF@@n@@@@^F@Q@@@n@^@@@E@O|@O@@[@@Cv@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ b@@bn@@@L@@@O@@@@1@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]s@@@@ X@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]^Q@@)@@CvX@mX@@*@@@@@@@@@@@@@@C@@@@v@Ip@Fp@O &E |Ch@aCh@bp;Ch=p@CT=|=@@[@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]zs@F@@aF=EX@a@@C@]@@E@@QCh@]Fp@L8@]hz@@a@IE@m@@@@@n@@@@p;Ch@hp@*@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@uFJ@)@>1@=yp@bk@gp@CgEh@) mCh@#Ch@)E@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@d@@m@C|@@@O=@@@@ @@@)@@@@C@C @C@C@Cb@C)@@@C@CXChC1@CgCpC1@Chp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@EX/2@EF2@ChCsFz@EXCs@ EhC2Fp@ C/EX@E@XC@C1E@@X/XC2@%XFz@E C2811@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@z@@@]@ 81EhC2Fz@CpC2 C/Fp@pC2EXCp@82E 2p@L82E 2p@L@@@@@ChCs|@@ChCp8CsE@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=O@@u@882E 2ChC2pCsEXCs@=XC@C8C1sE/@@@@p@L82E 2ChC4CpCu2@Ep2C4@C ppE CuEC@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;)@@C C8C1pC1E@@Ch@C1E@@Cp@@CQ82E 2E@@ChC24@@ChC1pC2C,@@pC1E@@ChC1E,@@@CCpC1h2@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@m^Q@@C%@CgF@@hC1E@@F@@@@@E@@E@@F@@E@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@1@@Cv@F@FF@F@FJ@FL@F@F@FT@FW@F@F[@F]p@E@@p@E@@p@E@@p@E@@p@E@@p@E@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ;z@@E@@E@@F@@E@@F@@E@@@Fd@@E@@F,@@E@@F@@E@@FT@@E@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]8 =vyppppppp @p@bs@Cp@ChWh@ChF@@bgEh@) mCh@#F@@bp>Ch@^4@^Cp@%EX@%@>LEh@)C,@#F@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]2>F@^F@@bF8@EX@b@>p@dX@#p@#Ch@dEp@%>>p/E >bCh//Eh[ mX@d@@@Cp@%h=yh@&h@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]y&>&p=zp@#h=;p>bEh@hCh@hp@bE >bCh@bXpE@hWp@gEh@)Ch@#Wp@@2@>z@>)Wh@/Ch@%Cp@&,@p@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]#v>>hkW@=y>p@&W@=z>Xp@#X=;@@ EX@#@Wh=;p@Lp=; mCh@g4@gQ8=; nQ8=;,@gp@LC4@g[]hh@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]ym@ @>) mCh@g4@g mm@p@#Wh=;p@Lp=; mE,@gC,@g@>)@@@hg/W8@X=y@/*XJbg@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%Q&n@@pkCh@%Ch@&4@& mCh@%C4@&p@%m@1@m@@@@@C@@@@@@C@@@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]8E@@ X@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/symbol/section-2b.lo b/symbol/section-2b.lo new file mode 100644 index 0000000..2669e2c --- /dev/null +++ b/symbol/section-2b.lo @@ -0,0 +1,638 @@ + + 1 + 2 * SYMBOL LOADER + 3 * + 04000 4 AORG 04000 + 00000000 5 S9300 EQU 0 + 00000000 6 X0 EQU S9300 + 00000002 7 X2 EQU 2-S9300 +D 04500004 8 CAB OPD 04500004 +D 04600010 9 CBA OPD 04600010 +D 04600400 10 CAX OPD 04600400 +D 04600200 11 CXA OPD 04600200 +D 04600020 12 CBX OPD 04600020 +D 04601000 13 CNA OPD 04601000 +D 05000000 14 SKE OPD 05000000 +D 06000000 15 SKR OPD 06000000 +D 06400000 16 MUL OPD 06400000 +D 06500000 17 DIV OPD 06500000 +D 06300000 18 ADM OPD 06300000 +D 06200000 19 XMA OPD 06200000 + 04000 20 SICT RES 1 + 04001 21 BOCT RES 1 + 04002 22 LOCT RES 1 + 04003 23 ONEIO RES 1 + 04004 24 ANYIO RES 1 + 04005 25 SIC RES 1 + 04006 00000000 26 PC DATA 0 + 04007 00000000 27 PLC DATA 0 + 04010 00000061 28 VCHR DATA '/' + 04011 00000057 29 DCHR DATA 057 + 04012 01777775 30 M3 DATA 02000000-3 + 04013 00177772 31 M6 DATA 00200000-6 + 04014 00004000 32 LSICT DATA SICT + 04015 00004002 33 LLOCT DATA LOCT + 04016 00000052 34 CR DATA 052 + 04017 00000000 35 CHR DATA 0 + 04020 00000044 36 DEVICE DATA 'M','T','P','C','L' + 04021 00000063 + 04022 00000047 + 04023 00000023 + 04024 00000043 + 04025 62316060 37 FNCS DATA 'SI ','BO ','LO ' + 04026 22466060 + 04027 43466060 + 04030 0 40 21000 38 STRT BRTW + 04031 0 01 04030 39 BRU STRT + 04032 0 02 02001 40 RKB 0,1,1 + 04033 0 76 00160 41 RESET LDA Z CLEAR I/O INDICATORS + 04034 0 35 04000 42 STA SICT + 04035 0 35 04001 43 STA BOCT + 04036 0 35 04002 44 STA LOCT + 04037 0 35 00044 45 STA MLOC + 04040 0 76 04014 46 LDA LSICT + 04041 0 35 04006 47 STA PC INITIALIIZE POINTER + 04042 0 75 00146 48 LDB P63 + 04043 0 32 04017 49 CIN WIM CHR + 04044 0 76 04017 50 LDA CHR + 04045 0 70 04011 51 SKM DCHR WAIT FOR DELTA + 04046 0 01 04043 52 BRU CIN + 04047 0 32 04017 53 NXTCHR WIM CHR + 04050 0 76 04017 54 LDA CHR + 04051 0 70 04010 55 SKM VCHR RESET UPONSLASH + 04052 0 01 04054 56 BRU $+2 + 04053 0 01 04033 57 BRU RESET + 04054 0 70 04016 58 SKM CR FINISH UPON CARRIAGE RETURN + 04055 0 01 04057 59 BRU $+2 + 04056 0 01 04067 60 BRU LOADIO + 04057 0 14 00146 61 ETR P63 + 04060 0 46 20005 62 ABC + 04061 0 76 04006 63 LDA PC + 04062 0 73 04015 64 SKG LLOCT + 04063 0 36 44006 65 STB *PC + 04064 0 61 04006 66 MIN PC + 04065 0 75 00146 67 LDB P63 + 04066 0 01 04047 68 BRU NXTCHR GET NEXT CHARACTER + 04067 0 02 00000 69 LOADIO DSC 0 + 04070 0 75 00162 70 LDB M1 COMPUTE MEMORY SIZE + 04071 0 76 04263 71 LDA BIGADR 18K FOR 900 SERIES, 34K FOR 9300 + 04072 0 54 04264 72 M2K SUB B12 SUBTRACT + 04073 0 35 00154 73 STA HIGH 2K + 04074 0 35 40154 74 STA *HIGH + 04075 0 70 40154 75 SKM *HIGH SKIP WHEN F1N1SHED + 04076 0 01 04072 76 BRU M2K + 04077 0 40 20400 77 BPT 1 + 04100 0 01 04102 78 BRU EITHER + 79 * BPT 2 REMOVE ASTERISK FROM MAG TAPE LOAD + 80 * BRU EITHER ROMOVE ASTERISK FOR MAG TAPE LOAD + 04101 0 01 04113 81 BRU LIO3 + 04102 0 76 04106 82 EITHER LDA SETUP + 04103 0 40 20200 83 BPT 2 + 84 * ADD P REMDVE ASTERISK FROM MAG TAPE LOAD + 04104 0 35 04106 85 STA SETUP + 04105 0 71 04250 86 LDX M4,X0 + 04106 2 76 04242 87 SETUP LDA CARDS+4,X2 + 04107 2 35 00062 88 STA READY+4,X2 + 04110 0 41 04106 89 BRX SETUP,X0 + 04111 0 76 44106 90 LDA *SETUP + 04112 0 35 00111 91 STA BERROR + 04113 0 60 04252 92 LIO3 SKR NEG + 04114 0 01 04126 93 BRU LIO 910 + 04115 0 71 04251 94 LDX LENGTH,X0 + 04116 2 76 00435 95 LDA END920,X2 + 04117 2 35 00233 96 STA END920-D,X2 + 04120 0 41 04116 97 BRX $-2,X0 + 04121 0 76 04253 98 LDA NEWEND + 04122 0 60 04255 99 SKR COMP93 TEST FOR 9300 + 04123 0 76 04262 100 LDA ORG93 YES. ORIGIN I/O AT 3164 + 04124 0 35 00051 101 STA BIAS NO. ORIGIN I/O AT 0233 + 04125 0 35 04254 102 STA NWBIAS + 04126 0 43 00055 103 LIO BRM READ READ ONE RECORD (1ST EEXTRNAL DEFS) + 04127 0 76 00153 104 LDA N1 RESET LOAD1NG INDICATORS + 04130 0 35 04003 105 STA ONEIO + 04131 0 35 04004 106 STA ANYIO + 04132 0 76 07773 107 LDA LDW1 INITIALIZE POINTER + 04133 0 35 00050 108 STA WD1 + 04134 0 76 00042 109 LDA CT + 04135 0 35 04006 110 STA PC + 04136 0 71 00050 111 LOOK LDX WD1,X0 + 04137 2 76 00000 112 LDA 0,X2 ACESS EXTERNAL DEF + 04140 2 75 00001 113 LDB 1,X2 + 04141 0 66 00022 114 RSH 18 + 04142 0 14 00146 115 ETR P63 MOST SIGNIFICANT CHARACTER IN A + 04143 0 46 00014 116 XAB 2ND,3RD CHARACTERS LEFT JUST, IN A + 04144 0 71 04250 117 LDX M4,X0 + 04145 0 36 04017 118 STB CHR + 04146 0 75 00153 119 LDB N1 + 04147 0 41 04151 120 BRX $+2,X0 EXHAUST CHECK AFTER 3 ATTEMPTS + 04150 0 01 04171 121 BRU NEXTL + 04151 2 70 04030 122 SKM FNCS+3,X2 CHECK FOR SI,BO OR LO. + 04152 0 01 04147 123 BRU $-3 NO + 04153 0 76 04017 124 LDA CHR YES + 04154 2 70 04003 125 SKM SICT+3,X2 CHECK FOR COINCIDENCE OF 1ST CHAR + 04155 0 01 04163 126 BRU NOLOAD NO + 04156 0 76 00160 127 LDA Z YES + 04157 0 71 00050 128 LDX WD1,X0 DEF HAS SERVED ITS PURPOSE + 04160 2 35 00000 129 STA 0,X2 CLEAR + 04161 0 61 04003 130 MIN ONEIO FLAG TO LOAD + 04162 0 76 04017 131 LDA CHR + 04163 0 71 04013 132 NOLOAD LDX M6,X0 DETERMINE WHETHER 1ST CHAR COINCIDES + 04164 0 41 04166 133 BRX $+2,X0 WITH ANY LEGITIMATE 1ST CHAR + 04165 0 01 04171 134 BRU NEXTL + 04166 2 70 04025 135 SKM DEVICE+5,X2 + 04167 0 01 04164 136 BRU $-3 + 04170 0 61 04004 137 MIN ANYIO IF SO, MAKE INDICATOR POSITIVE + 04171 0 76 07642 138 NEXTL LDA P3 ADYANCE POINTER TO NEXT EXTERNAL DEF + 04172 0 55 00050 139 ADD WD1 + 04173 0 35 00050 140 STA WD1 + 04174 0 76 04006 141 LDA PC CHECK FOR END OF RECORD + 04175 0 54 07642 142 SUB P3 + 04176 0 35 04006 143 STA PC + 04177 0 73 00160 144 SKG Z + 04200 0 01 04202 145 BRU $+2 YES + 04201 0 01 04136 146 BRU LOOK NO, ACCESS NEXT DEF + 04202 0 53 04004 147 SKN ANYIO IF ANYIO STILL NEG, RECORD NOT I/O + 04203 0 01 04206 148 BRU $+3 STILL I/O + 04204 0 01 04214 149 BRU FINIO + 04205 0 43 00055 150 READIO BRM READ + 04206 0 53 04003 151 SKN ONEIO DO NOT LOAD IF ONEIO STILL NEGATIVE + 04207 0 43 00123 152 BRM LOAD + 04210 0 76 00002 153 LDA CW CHECK FOR END RECORD + 04211 0 72 00152 154 SKA P2B21 + 04212 0 01 04126 155 BRU LIO + 04213 0 01 04205 156 BRU READIO NO + 04214 0 76 04000 157 FINIO LDA SICT + 04215 0 70 04021 158 SKM DEVICE+1 T + 04216 0 01 04220 159 BRU $+2 CHECK FOR PAPER TAPE + 04217 0 01 04224 160 BRU STEOM OR TYPEWR1TER INPUT + 04220 0 70 04022 161 SKM DEVICE+2 P + 04221 0 01 00053 162 BRU LAP+1 + 04222 0 76 04256 163 LDA RPT + 04223 0 01 04225 164 BRU $+2 + 04224 0 76 04257 165 STEOM LDA RKB + 04225 0 35 44254 166 STA *NWBIAS + 04226 0 61 04254 167 MIN NWBIAS + 04227 0 76 07774 168 LDA P2 DETERMINE CYCLE TIME OF MACHINE + 04230 0 66 00100 169 RSH 64 FOR PAER TAPE READ DELAY + 04231 0 75 04261 170 LDB SLOW + 04232 0 73 00160 171 SKG Z + 04233 0 75 04260 172 LDB FAST + 04234 0 36 44254 173 STB *NWBIAS + 04235 0 01 00053 174 BRU LAP+1 + 04236 0 40 12006 175 CARDS CRT 0,1 + 04237 0 01 00056 176 BRU READY + 04240 0 20 00000 177 NOP + 04241 0 02 03606 178 RCB 0,1,4 + 04242 0 01 00121 179 BRU P1 + 04243 0 40 10410 180 TRT 0,0 + 04244 0 40 21000 181 BRTW + 04245 0 01 00056 182 BRU READY + 04246 0 02 03610 183 RTB 0,0,4 + 184 * BRU RECOV REMOVE ASTERISK FOR MAG TAPE LOAD + 04247 00000005 185 P5 DATA 5 + 04250 00177774 186 M4 DATA 00200000-4 + 04251 00177731 187 LENGTH DATA 00200000-END920+POP920 + 04252 77777777 188 NEG DATA -1 + 04253 0 00 00233 189 NEWEND HLT END920-D + 04254 0 00 00366 190 NWBIAS HLT ENDPOP + 04255 0 00 00000 191 COMP93 HLT S9300 + 04256 0 02 02004 192 RPT RPT 0,1,1 + 04257 0 02 02001 193 RKB RKB 0,1,1 + 04260 00140000 194 FAST DATA 00140000 + 04261 00170000 195 SLOW DATA 00170000 + 04262 0 00 00161 196 ORG93 HLT Z+1 + 04263 00043777 197 BIGADR DATA 040000*/S9300+2047 + 04264 00004000 198 B12 DATA 2048 + 00001 199 AORG 1 + 00001 0 01 04030 200 BRU STRT + 00002 201 CW RES 1 + 00003 202 DW1 RES 26 + 00035 203 TMP1 RES 1 + 00036 204 IWD RES 1 + 00037 205 RCTR RES 1 + 00040 206 CTR RES 1 + 00041 207 WDCT RES 1 + 00042 208 CT RES 1 + 00043 209 LOC RES 1 + 00044 210 MLOC RES 1 + 00045 211 ALFA RES 1 + 00046 212 BETA RES 1 + 00047 213 CHAIN RES 1 + 00050 214 WD1 RES 1 + 00051 0 00 00366 215 BIAS HLT ENDPOP + 00052 0 43 00055 216 LAP BRM READ + 00053 0 43 00123 217 BRM LOAD + 00054 0 01 00052 218 BRU LAP + 219 * READ ONE RECORD FROM PAPER TAPE AND VER1FY + 220 * + 00055 0 00 00000 221 READ HLT ENTRY + 222 * LDX M10,X0 REMOYE ASTERISK FROM MAGT LOAD + 223 * STX WD1,X0 REMOVE ASTERISK FROM MAGT LOAD + 00056 0 20 00000 224 READY NOP + 00057 0 20 00000 225 NOP + 00060 0 20 00000 226 NOP + 00061 0 02 02604 227 RPT 0,1,4 + 00062 0 32 00002 228 WIM CW READ RECORD CONTROL WORD + 00063 0 40 21000 229 BRTW + 00064 0 01 00066 230 BRU $+2 + 00065 0 01 00111 231 BRU BERROR + 00066 0 76 00002 232 LDA CW + 00067 0 66 00017 233 RSH 15 + 00070 0 14 00146 234 ETR P63 + 00071 0 54 07774 235 SUB P2 + 00072 0 35 00041 236 STA WDCT STORE WORD COUNT LESS 2 + 00073 0 35 00042 237 STA CT + 00074 0 76 07773 238 LDA LDW1 + 00075 0 35 07775 239 STA WDAD + 00076 0 76 00002 240 LDA CW + 00077 0 32 47775 241 READ3 WIM *WDAD PEAD ONE WORD + 00100 0 17 47775 242 EOR *WDAD ACCUMULATE CHECKSLM + 00101 0 60 00041 243 SKR WDCT + 00102 0 61 07775 244 MIN WDAD + 00103 0 53 00041 245 SKN WDCT + 00104 0 01 00077 246 BRU READ3 + 00105 0 32 00035 247 WIM TMP1 EXHAUST RECORD + 00106 0 40 21000 248 BRTW + 00107 0 01 00105 249 BRU $-2 + 00110 0 40 20010 250 BETW + 00111 0 01 00121 251 BERROR BRU P1 + 00112 0 35 00035 252 STA TMP1 + 00113 0 66 00014 253 RSH 12 + 00114 0 17 00035 254 EOR TMP1 + 00115 0 75 07772 255 LDB O7777 + 00116 0 70 00041 256 SKM WDCT + 00117 0 01 00111 257 BRU BERROR + 00120 0 51 00055 258 BRR READ + 259 *REINSTATE FOLLOWIN CODE FOR MAG TAPE LOAD + 260 *RECV TRT 0,0 + 261 * BRTW + 262 * BRU $-2 + 263 * SRB 0,0,4 + 264 * BRTW + 265 * BRU $-1 + 266 * LDX WD1,X0 + 267 * BRX READ+1,X0 + 00121 0 00 00001 268 P1 HLT 1 *STOP* (DELTA)W BUFFER ERROR + 00122 0 01 00056 269 BRU READ+1 REREAD + 270 *M10 DATA 0020000-10 REMOVE ASTERISK FOR MAG TAPE + 271 * PROCESS VERIFIED RECORDS + 00123 0 00 00000 272 LOAD HLT ENTRY + 00124 0 76 07773 273 LDA LDW1 + 00125 0 35 00050 274 STA WD1 + 00126 0 76 00002 275 LDA CW + 00127 0 72 00152 276 SKA P2B21 + 00130 0 01 00134 277 BRU END + 00131 0 72 00151 278 SKA P1B21 + 00132 0 01 07661 279 BRU EXT + 00133 0 01 07571 280 LTO BRU DATA USED AS CONSTANT + 00134 0 76 00042 281 END LDA CT + 00135 0 72 00153 282 SKA N1 TRANSFER ADDRESS + 00136 0 01 07747 283 BRU NOPS YES + 00137 0 76 00003 284 LDA DW1 NO + 00140 0 72 00147 285 SKA P1B15 + 00141 0 55 00051 286 ADD BIAS + 00142 0 14 00155 287 ETR MADR + 00143 0 35 00043 288 STA LOC MAX LOCATION+1, CURRENT PR0GRAM + 00144 0 35 00051 289 STA BIAS + 00145 0 51 00123 290 BRR LOAD + 00146 00000077 291 P63 DATA 077 + 00147 00100000 292 P1B15 DATA 0100000 + 00150 02000000 293 P2B18 DATA 02000000 + 00151 10000000 294 P1B21 DATA 010000000 + 00152 20000000 295 P2B21 DATA 020000000 + 00153 77777777 296 N1 DATA 077777777 + 00037777 297 ADDR EQU 1*/(14+S9300)-1 + 00154 298 HIGH RES 1 MUST BE AT ASME LOC(0154) AS FOR ASSM + 00155 00037777 299 MADR DATA ADDR + 00156 77740000 300 MRDA DATA -1--ADDR + 00157 00177775 301 TL DATA 00200000-3 + 00160 00000000 302 Z DATA 0 + 00161 40000000 303 B0 DATA 040000000 + 00162 77777777 304 M1 DATA -1 + 00163 77777751 305 M23 DATA -23 + 06000000 306 MMO OPD 06000000 + 00164 307 POP910 RES 0 + 00164 0 01 00200 308 BRU CAB + 00165 0 01 00202 309 BRU CBA + 00166 0 01 00320 310 BRU CAX + 00167 0 01 00315 311 BRU CXA + 00170 0 01 00323 312 BRU CBX + 00171 0 01 00325 313 BRU CNA + 00172 0 01 00342 314 BRU SKE + 00173 0 01 00351 315 BRU SKR + 00174 0 01 00204 316 BRU MUL + 00175 0 01 00225 317 BRU DIV + 00176 0 01 00337 318 BRU ADM + 00177 0 01 00330 319 BRU XMA + 00200 0 35 00361 320 CAB STA T + 00201 0 01 00347 321 BRU SKE1 + 00202 0 36 00361 322 CBA STB T + 00203 0 01 00316 323 BRU CXA1 + 00204 0 75 00160 324 MUL LDB Z + 00205 0 43 00257 325 BRM SIGN + 00206 0 46 20005 326 ABC + 00207 0 66 20001 327 MUL1 RCY 1 + 00210 0 35 00363 328 STA T+2 + 00211 0 67 20001 329 LCY 1 + 00212 0 53 00363 330 SKN T+2 + 00213 0 01 00215 331 BRU $+2 + 00214 0 55 00362 332 ADD T+1 + 00215 0 66 00001 333 RSH 1 + 00216 0 14 00357 334 ETR RSL4 + 00217 0 41 00207 335 BRX MUL1 + 00220 0 53 00005 336 SKN 5 + 00221 0 01 00223 337 BRU MUL2 + 00222 0 43 00300 338 BRM DPN + 00223 0 71 00361 339 MUL2 LDX T + 00224 0 51 00000 340 BRR 0 + 00225 0 43 00257 341 DIV BRM SIGN + 00226 0 73 00362 342 SKG T+1 + 00227 0 01 00231 343 BRU $+2 + 00230 4 51 00230 344 BRR $,4 + 00231 0 67 20001 345 DIV2 LCY 1 + 00232 0 54 00362 346 SUB T+1 + 00233 0 17 00161 347 EOR B0 + 00234 0 72 00161 348 SKA B0 + 00235 0 01 00240 349 BRU DIV1 + 00236 0 17 00161 350 EOR B0 + 00237 0 55 00362 351 ADD T+1 + 00240 0 41 00231 352 DIV1 BRX DIV2 + 00241 0 67 20001 353 LCY 1 + 00242 0 36 00362 354 STB T+1 + 00243 0 14 00357 355 ETR RSL4 + 00244 0 66 00031 356 RSH 25 + 00245 0 76 00362 357 LDA T+1 + 00246 0 53 00360 358 SKN S + 00247 0 01 00223 359 BRU MUL2 + 00250 0 17 00162 360 EOR M1 + 00251 0 54 00162 361 SUB M1 + 00252 0 46 00014 362 XAB + 00253 0 17 00162 363 EOR M1 + 00254 0 54 00162 364 SUB M1 + 00255 0 46 00014 365 XAB + 00256 0 01 00223 366 BRU MUL2 + 00257 0 00 00000 367 SIGN HLT 0 + 00260 0 35 00363 368 STA T+2 + 00261 0 17 40000 369 EOR *0 + 00262 0 35 00360 370 STA S + 00263 0 17 00363 371 EOR T+2 + 00264 0 53 40000 372 SKN *0 + 00265 0 01 00270 373 BRU SIGN1 + 00266 0 17 00162 374 EOR M1 + 00267 0 54 00162 375 SUB M1 + 00270 0 35 00362 376 SIGN1 STA T+1 + 00271 0 76 00363 377 LDA T+2 + 00272 0 53 00363 378 SKN T+2 + 00273 0 01 00275 379 BRU SIGN2 + 00274 0 43 00300 380 BRM DPN + 00275 0 37 00361 381 SIGN2 STX T + 00276 0 71 00163 382 LDX M23 + 00277 0 51 00257 383 BRR SIGN + 00300 0 00 00000 384 DPN HLT 0 + 00301 0 46 00014 385 XAB + 00302 0 17 00162 386 EOR M1 + 00303 0 54 00162 387 SUB M1 + 00304 0 35 00364 388 STA T+3 + 00305 0 36 00365 389 STB T+4 + 00306 0 46 20005 390 ABC + 00307 0 76 00162 391 LDA M1 + 00310 0 72 00364 392 SKA T+3 + 00311 0 01 00313 393 BRU DPN1 + 00312 0 76 00160 394 LDA Z + 00313 0 54 00365 395 DPN1 SUB T+4 + 00314 0 51 00300 396 BRR DPN + 00315 0 37 00361 397 CXA STX T + 00316 0 76 00361 398 CXA1 LDA T + 00317 0 51 00000 399 BRR 0 + 00320 0 35 00001 400 CAX STA 1 + 00321 0 71 00361 401 CAX1 LDX T + 00322 0 51 00000 402 BRR 0 + 00323 0 36 00001 403 CBX STB 1 + 00324 0 01 00321 404 BRU CAX1 + 00325 0 17 00162 405 CNA EOR M1 + 00326 0 54 00162 406 SUB M1 + 00327 0 51 00000 407 BRR 0 + 00330 0 35 00362 408 XMA STA T+1 + 00331 0 76 40000 409 LDA *0 + 00332 0 35 00361 410 STA T + 00333 0 76 00362 411 LDA T+1 + 00334 0 35 40000 412 XMA1 STA *0 + 00335 0 76 00361 413 LDA T + 00336 0 51 00000 414 BRR 0 + 00337 0 35 00361 415 ADM STA T + 00340 0 55 40000 416 ADD *0 + 00341 0 01 00334 417 BRU XMA1 + 00342 0 36 00361 418 SKE STB T + 00343 0 75 00162 419 LDB M1 + 00344 0 70 40000 420 SKM *0 + 00345 0 01 00347 421 BRU $+2 + 00346 0 61 00000 422 MIN 0 + 00347 0 75 00361 423 SKE1 LDB T + 00350 0 51 00000 424 BRR 0 + 00351 0 60 40000 425 SKR MMO *0 + 00352 0 20 00000 426 NOP + 00353 0 53 40000 427 SKN *0 + 00354 0 51 00000 428 BRR 0 + 00355 0 61 00000 429 MIN 0 + 00356 0 51 00000 430 BRR 0 + 00357 37777777 431 RSL4 DATA 037777777 + 00360 432 S RES 1 + 00361 433 T RES 5 + 00366 434 ENDPOP RES 0 + 00366 435 POP920 RES 0 + 00000202 436 D EQU POP920-POP910 + 00366 0 01 00604 437 BRU CAB920+D + 00367 0 01 00606 438 BRU CBA920+D + 00370 0 01 00610 439 BRU CAX920+D + 00371 0 01 00612 440 BRU CXA920+D + 00372 0 01 00614 441 BRU CBX920+D + 00373 0 01 00616 442 BRU CNA920+D + 00374 0 01 00620 443 BRU SKE920+D + 00375 0 01 00624 444 BRU SKR920+D + 00376 0 01 00627 445 BRU MUL920+D + 00377 0 01 00631 446 BRU DIV920+D + 00400 0 01 00633 447 BRU ADM920+D + 00401 0 01 00635 448 BRU XMA920+D + 00402 0 46 00004 449 CAB920 CAB + 00403 0 51 00000 450 BRR 0 + 00404 0 46 00010 451 CBA920 CBA + 00405 0 51 00000 452 BRR 0 + 00406 0 46 00400 453 CAX920 CAX + 00407 0 51 00000 454 BRR 0 + 00410 0 46 00200 455 CXA920 CXA + 00411 0 51 00000 456 BRR 0 + 00412 0 46 00020 457 CBX920 CBX + 00413 0 51 00000 458 BRR 0 + 00414 0 46 01000 459 CNA920 CNA + 00415 0 51 00000 460 BRR 0 + 00416 0 50 40000 461 SKE920 SKE *0 + 00417 0 51 00000 462 BRR 0 + 00420 0 61 00000 463 SKIP2 MIN 0 + 00421 0 51 00000 464 BRR 0 + 00422 0 60 40000 465 SKR920 SKR *0 + 00423 0 51 00000 466 BRR 0 + 00424 0 01 00216 467 BRU SKIP2-D + 00425 0 64 40000 468 MUL920 MUL *0 + 00426 0 51 00000 469 BRR 0 + 00427 0 65 40000 470 DIV920 DIV *0 + 00430 0 51 00000 471 BRR 0 + 00431 0 63 40000 472 ADM920 ADM *0 + 00432 0 51 00000 473 BRR 0 + 00433 0 62 40000 474 XMA920 XMA *0 + 00434 0 51 00000 475 BRR 0 + 00435 476 END920 RES 0 + 07567 477 RORG 07567 + 07566 478 RORG 07566 + 479 F FORM 3,6,15 + 07566 71606060 480 TEXT 8,Z + 07567 60606060 + 07570 4 00 00160 481 F 4,0,Z + 07571 482 TO RES 0 + 483 * PROCESS DATA RECORD + 07571 0 71 00042 484 DATA LDX CT,X0 + 07572 0 46 30003 485 CLR + 07573 0 76 00003 486 LDA DW1 + 07574 0 72 00150 487 SKA P2B18 + 07575 2 75 00003 488 LDB DW1,X2 + 07576 0 72 00150 489 SKA P2B18 + 07577 0 60 00042 490 SKR CT SUBTRACT RELOCATION WORD + 07600 0 72 00147 491 SKA P1B15 + 07601 0 55 00051 492 ADD BIAS + 07602 0 14 00155 493 ETR MADR + 07603 0 35 00043 494 STA LOC STORE MODIFIED LOAD ADDRESS + 495 * PROCESS DATA WORDS + 07604 0 60 00042 496 SKR CT (CT) = NO. DATA WDRDS - 1 + 07605 0 76 07776 497 LDA LDW2 + 07606 0 35 00036 498 STA IWD + 499 * + 07607 0 76 40036 500 LLDA LDA *IWD (A) = CURRENT DATA WORD + 07610 0 36 00045 501 STB ALFA + 07611 0 53 00045 502 SKN ALFA + 07612 0 01 07614 503 BRU $+2 + 07613 0 55 00051 504 ADD BIAS + 07614 0 35 40043 505 STA *LOC + 07615 0 61 00043 506 MIN LOC INCREMENT LOAD ADDRESS + 07616 0 61 00036 507 MIN IWD INCREMENT DATA WORD ADDRESS + 07617 0 60 00042 508 SKR CT + 07620 0 67 00001 509 LSH 1 + 07621 0 53 00042 510 SKN CT + 07622 0 01 07607 511 BRU LLDA + 512 * + 07623 0 76 00044 513 LDA MLOC + 07624 0 73 00043 514 SKG LOC + 07625 0 76 00043 515 LDA LOC + 07626 0 35 00044 516 STA MLOC STORE CURRENT MAXIMUM LOAD ADDRESS +1 + 07627 0 51 00123 517 BRR LOAD EXIT + 518 * + 519 * ROUTINES FOR PROCESSING EXTERNAL REFS AND DEFS + 520 * (RECORD TYPE 1) + 521 * MATCH1NG TABLE ENTRY WAA A DEF + 07630 0 76 00045 522 SRCH2 LDA ALFA + 07631 0 41 07632 523 SRCH3 BRX $+1,X0 + 07632 0 41 07677 524 BRX SRCH1,X0 + 07633 0 76 00157 525 NSRT LDA TL + 07634 0 54 07642 526 SUB P3 + 07635 0 35 00157 527 STA TL + 07636 0 71 00157 528 LDX TL,X0 + 07637 0 55 00133 529 ADD LTO + 07640 0 14 00155 530 ETR MADR + 07641 0 73 00044 531 SKG MLOC + 07642 00000003 532 P3 DATA 3 + 07643 0 76 00045 533 LDA ALFA + 07644 2 35 07571 534 STA TO,X2 + 07645 0 75 00046 535 LDB BETA + 07646 2 36 07572 536 STB TO+1,X2 + 07647 0 76 00043 537 LDA LOC + 07650 2 35 07573 538 STA TO+2,X2 + 07651 0 76 07642 539 NEXT1 LDA P3 + 07652 0 55 00050 540 ADD WD1 + 07653 0 35 00050 541 STA WD1 + 07654 0 76 00042 542 LDA CT + 07655 0 54 07642 543 SUB P3 + 07656 0 35 00042 544 STA CT REDUCE WORD COUNT + 07657 0 73 00160 545 SKG Z SKIP IF AT LEAST 3 MORE MORD + 07660 0 51 00123 546 BRR LOAD EXIT + 547 * + 548 * PROCESS NEXT ITEM, HEREAFTER CALLED 'C' + 07661 0 71 00050 549 EXT LDX WD1,X0 (X0) = LOC, OF 1ST WORD OF LABEL + 07662 2 76 00002 550 LDA 2,X2 (B) = CHAINWORD OR VALUE WORD + 07663 0 72 00147 551 SKA P1B15 + 07664 0 55 00051 552 ADD BIAS + 07665 0 35 00043 553 STA LOC + 07666 2 76 00000 554 LDA 0,X2 + 07667 0 72 00162 555 SKA M1 TEST FOR SPECIAL I/O IDENTIFIER + 07670 0 01 07672 556 BRU $+2 NO + 07671 0 01 07651 557 BRU NEXT1 YES, IGNORE + 07672 2 75 00001 558 LDB 1,X2 (AB) = 8 CHAR LABEL OF C + 559 * + 560 * PROCESS EXTERNAL DEF OR REF + 07673 0 71 00157 561 LDX TL,X0 SEARCH SYMBOL TABLE + 07674 0 35 00045 562 STA ALFA + 07675 0 36 00046 563 STB BETA + 07676 0 75 00153 564 LDB N1 + 07677 2 70 07571 565 SRCH1 SKM TO,X2 + 07700 0 41 07631 566 BRX SRCH3,X0 NO MATCH + 07701 0 76 00046 567 LDA BETA TENTATIVE MATHC + 07702 2 70 07572 568 SKM TO+1,X2 + 07703 0 41 07630 569 BRX SRCH2,X0 + 07704 0 76 00043 570 LDA LOC + 07705 2 53 07573 571 SKN TO+2,X2 + 07706 0 01 07710 572 BRU $+2 + 07707 0 01 07715 573 BRU TXDR X IS A DEF + 07710 0 53 00043 574 SKN LOC + 07711 0 01 07731 575 BRU TXRR C IS A REF + 07712 2 75 07573 576 LDB TO+2,X2 + 07713 0 46 00014 577 XAB + 07714 2 36 07573 578 STB TO+2,X2 + 07715 0 14 00155 579 TXDR ETR MADR + 07716 0 35 00047 580 TXRD1 STA CHAIN ADDR OF A REF + 07717 0 76 40047 581 LDA *CHAIN + 07720 2 17 07573 582 EOR TO+2,X2 + 07721 0 14 00156 583 ETR MRDA + 07722 2 17 07573 584 EOR TO+2,X2 + 07723 0 75 40047 585 LDB *CHAIN + 07724 0 46 00014 586 XAB + 07725 0 36 40047 587 STB *CHAIN + 07726 0 72 00155 588 SKA MADR + 07727 0 01 07715 589 BRU TXDR + 07730 0 01 07651 590 BRU NEXT1 EXIT 1 + 591 * X AND C ARE BOTH REFS + 07731 0 14 00155 592 TXRR ETR MADR ADDRESS OF 1ST REF IN NEW CHAIN + 07732 0 35 00047 593 TXRR1 STA CHAIN + 07733 0 76 40047 594 LDA *CHAIN + 07734 0 14 00155 595 ETR MADR + 07735 0 72 00155 596 SKA MADR + 07736 0 01 07732 597 BRU TXRR1 + 07737 0 76 00043 598 LDA LOC NEW 1ST LINK + 07740 2 75 07573 599 LDB TO+2,X2 + 07741 0 46 00014 600 XAB + 07742 2 36 07573 601 STB TO+2,X2 + 07743 0 14 00155 602 ETR MADR REMOVE REF FLAG FROM OLD 1ST LINK + 07744 0 55 40047 603 ADD *CHAIN + 07745 0 35 40047 604 STA *CHAIN + 07746 0 01 07651 605 BRU NEXT1 EXIT 3 + 07747 0 20 00000 606 NOPS NOP + 07750 0 75 07747 607 LDB NOPS + 07751 0 71 00157 608 LDX TL,X0 BE TO I/O ROUTINES + 07752 2 77 00002 609 EAX 2,X2 + 07753 2 53 07571 610 POINT SKN TO,X2 + 07754 0 01 07757 611 BRU $+3 REF + 07755 0 41 07752 612 ADV BRX NOPS+3,X0 DEF + 07756 0 01 00004 613 BRU CW+2 FINISHED. BRANCH TO START + 07757 0 76 07753 614 LDA POINT + 07760 0 35 00045 615 STA ALFA + 07761 0 35 00046 616 STEP STA BETA NOP REF CHAIN + 07762 0 76 40046 617 LDA *BETA + 07763 0 14 00155 618 ETR MADR + 07764 0 35 00045 619 STA ALFA + 07765 0 36 40046 620 STB *BETA + 07766 0 76 00045 621 LDA ALFA + 07767 0 72 00155 622 SKA MADR CHECK FOR END OF CHAIN + 07770 0 01 07761 623 BRU STEP NO + 07771 0 01 07755 624 BRU ADV ES + 07772 00007777 625 O7777 DATA 07777 + 07773 0 00 00003 626 LDW1 HLT DW1 + 07774 00000002 627 P2 DATA 2 + 07775 0 00 00003 628 WDAD HLT DW1 + 07776 0 00 00004 629 LDW2 HLT DW1+1 + 00004030 630 END STRT \ No newline at end of file diff --git a/symbol/section-2b.si b/symbol/section-2b.si new file mode 100644 index 0000000..5fd4465 --- /dev/null +++ b/symbol/section-2b.si @@ -0,0 +1,629 @@ +* SYMBOL LOADER +* + AORG 04000 +S9300 EQU 0 +X0 EQU S9300 +X2 EQU 2-S9300 +CAB OPD 04500004 +CBA OPD 04600010 +CAX OPD 04600400 +CXA OPD 04600200 +CBX OPD 04600020 +CNA OPD 04601000 +SKE OPD 05000000 +SKR OPD 06000000 +MUL OPD 06400000 +DIV OPD 06500000 +ADM OPD 06300000 +XMA OPD 06200000 +SICT RES 1 +BOCT RES 1 +LOCT RES 1 +ONEIO RES 1 +ANYIO RES 1 +SIC RES 1 +PC DATA 0 +PLC DATA 0 +VCHR DATA '/' +DCHR DATA 057 +M3 DATA 02000000-3 +M6 DATA 00200000-6 +LSICT DATA SICT +LLOCT DATA LOCT +CR DATA 052 +CHR DATA 0 +DEVICE DATA 'M','T','P','C','L' +FNCS DATA 'SI ','BO ','LO ' +STRT BRTW + BRU STRT + RKB 0,1,1 +RESET LDA Z CLEAR I/O INDICATORS + STA SICT + STA BOCT + STA LOCT + STA MLOC + LDA LSICT + STA PC INITIALIIZE POINTER + LDB P63 +CIN WIM CHR + LDA CHR + SKM DCHR WAIT FOR DELTA + BRU CIN +NXTCHR WIM CHR + LDA CHR + SKM VCHR RESET UPONSLASH + BRU $+2 + BRU RESET + SKM CR FINISH UPON CARRIAGE RETURN + BRU $+2 + BRU LOADIO + ETR P63 + ABC + LDA PC + SKG LLOCT + STB *PC + MIN PC + LDB P63 + BRU NXTCHR GET NEXT CHARACTER +LOADIO DSC 0 + LDB M1 COMPUTE MEMORY SIZE + LDA BIGADR 18K FOR 900 SERIES, 34K FOR 9300 +M2K SUB B12 SUBTRACT + STA HIGH 2K + STA *HIGH + SKM *HIGH SKIP WHEN F1N1SHED + BRU M2K + BPT 1 + BRU EITHER +* BPT 2 REMOVE ASTERISK FROM MAG TAPE LOAD +* BRU EITHER ROMOVE ASTERISK FOR MAG TAPE LOAD + BRU LIO3 +EITHER LDA SETUP + BPT 2 +* ADD P REMDVE ASTERISK FROM MAG TAPE LOAD + STA SETUP + LDX M4,X0 +SETUP LDA CARDS+4,X2 + STA READY+4,X2 + BRX SETUP,X0 + LDA *SETUP + STA BERROR +LIO3 SKR NEG + BRU LIO 910 + LDX LENGTH,X0 + LDA END920,X2 + STA END920-D,X2 + BRX $-2,X0 + LDA NEWEND + SKR COMP93 TEST FOR 9300 + LDA ORG93 YES. ORIGIN I/O AT 3164 + STA BIAS NO. ORIGIN I/O AT 0233 + STA NWBIAS +LIO BRM READ READ ONE RECORD (1ST EEXTRNAL DEFS) + LDA N1 RESET LOAD1NG INDICATORS + STA ONEIO + STA ANYIO + LDA LDW1 INITIALIZE POINTER + STA WD1 + LDA CT + STA PC +LOOK LDX WD1,X0 + LDA 0,X2 ACESS EXTERNAL DEF + LDB 1,X2 + RSH 18 + ETR P63 MOST SIGNIFICANT CHARACTER IN A + XAB 2ND,3RD CHARACTERS LEFT JUST, IN A + LDX M4,X0 + STB CHR + LDB N1 + BRX $+2,X0 EXHAUST CHECK AFTER 3 ATTEMPTS + BRU NEXTL + SKM FNCS+3,X2 CHECK FOR SI,BO OR LO. + BRU $-3 NO + LDA CHR YES + SKM SICT+3,X2 CHECK FOR COINCIDENCE OF 1ST CHAR + BRU NOLOAD NO + LDA Z YES + LDX WD1,X0 DEF HAS SERVED ITS PURPOSE + STA 0,X2 CLEAR + MIN ONEIO FLAG TO LOAD + LDA CHR +NOLOAD LDX M6,X0 DETERMINE WHETHER 1ST CHAR COINCIDES + BRX $+2,X0 WITH ANY LEGITIMATE 1ST CHAR + BRU NEXTL + SKM DEVICE+5,X2 + BRU $-3 + MIN ANYIO IF SO, MAKE INDICATOR POSITIVE +NEXTL LDA P3 ADYANCE POINTER TO NEXT EXTERNAL DEF + ADD WD1 + STA WD1 + LDA PC CHECK FOR END OF RECORD + SUB P3 + STA PC + SKG Z + BRU $+2 YES + BRU LOOK NO, ACCESS NEXT DEF + SKN ANYIO IF ANYIO STILL NEG, RECORD NOT I/O + BRU $+3 STILL I/O + BRU FINIO +READIO BRM READ + SKN ONEIO DO NOT LOAD IF ONEIO STILL NEGATIVE + BRM LOAD + LDA CW CHECK FOR END RECORD + SKA P2B21 + BRU LIO + BRU READIO NO +FINIO LDA SICT + SKM DEVICE+1 T + BRU $+2 CHECK FOR PAPER TAPE + BRU STEOM OR TYPEWR1TER INPUT + SKM DEVICE+2 P + BRU LAP+1 + LDA RPT + BRU $+2 +STEOM LDA RKB + STA *NWBIAS + MIN NWBIAS + LDA P2 DETERMINE CYCLE TIME OF MACHINE + RSH 64 FOR PAER TAPE READ DELAY + LDB SLOW + SKG Z + LDB FAST + STB *NWBIAS + BRU LAP+1 +CARDS CRT 0,1 + BRU READY + NOP + RCB 0,1,4 + BRU P1 + TRT 0,0 + BRTW + BRU READY + RTB 0,0,4 +* BRU RECOV REMOVE ASTERISK FOR MAG TAPE LOAD +P5 DATA 5 +M4 DATA 00200000-4 +LENGTH DATA 00200000-END920+POP920 +NEG DATA -1 +NEWEND HLT END920-D +NWBIAS HLT ENDPOP +COMP93 HLT S9300 +RPT RPT 0,1,1 +RKB RKB 0,1,1 +FAST DATA 00140000 +SLOW DATA 00170000 +ORG93 HLT Z+1 +BIGADR DATA 040000*/S9300+2047 +B12 DATA 2048 + AORG 1 + BRU STRT +CW RES 1 +DW1 RES 26 +TMP1 RES 1 +IWD RES 1 +RCTR RES 1 +CTR RES 1 +WDCT RES 1 +CT RES 1 +LOC RES 1 +MLOC RES 1 +ALFA RES 1 +BETA RES 1 +CHAIN RES 1 +WD1 RES 1 +BIAS HLT ENDPOP +LAP BRM READ + BRM LOAD + BRU LAP +* READ ONE RECORD FROM PAPER TAPE AND VER1FY +* +READ HLT ENTRY +* LDX M10,X0 REMOYE ASTERISK FROM MAGT LOAD +* STX WD1,X0 REMOVE ASTERISK FROM MAGT LOAD +READY NOP + NOP + NOP + RPT 0,1,4 + WIM CW READ RECORD CONTROL WORD + BRTW + BRU $+2 + BRU BERROR + LDA CW + RSH 15 + ETR P63 + SUB P2 + STA WDCT STORE WORD COUNT LESS 2 + STA CT + LDA LDW1 + STA WDAD + LDA CW +READ3 WIM *WDAD PEAD ONE WORD + EOR *WDAD ACCUMULATE CHECKSLM + SKR WDCT + MIN WDAD + SKN WDCT + BRU READ3 + WIM TMP1 EXHAUST RECORD + BRTW + BRU $-2 + BETW +BERROR BRU P1 + STA TMP1 + RSH 12 + EOR TMP1 + LDB O7777 + SKM WDCT + BRU BERROR + BRR READ +*REINSTATE FOLLOWIN CODE FOR MAG TAPE LOAD +*RECV TRT 0,0 +* BRTW +* BRU $-2 +* SRB 0,0,4 +* BRTW +* BRU $-1 +* LDX WD1,X0 +* BRX READ+1,X0 +P1 HLT 1 *STOP* (delta)W BUFFER ERROR + BRU READ+1 REREAD +*M10 DATA 0020000-10 REMOVE ASTERISK FOR MAG TAPE +* PROCESS VERIFIED RECORDS +LOAD HLT ENTRY + LDA LDW1 + STA WD1 + LDA CW + SKA P2B21 + BRU END + SKA P1B21 + BRU EXT +LTO BRU DATA USED AS CONSTANT +END LDA CT + SKA N1 TRANSFER ADDRESS + BRU NOPS YES + LDA DW1 NO + SKA P1B15 + ADD BIAS + ETR MADR + STA LOC MAX LOCATION+1, CURRENT PR0GRAM + STA BIAS + BRR LOAD +P63 DATA 077 +P1B15 DATA 0100000 +P2B18 DATA 02000000 +P1B21 DATA 010000000 +P2B21 DATA 020000000 +N1 DATA 077777777 +ADDR EQU 1*/(14+S9300)-1 +HIGH RES 1 MUST BE AT ASME LOC(0154) AS FOR ASSM +MADR DATA ADDR +MRDA DATA -1--ADDR +TL DATA 00200000-3 +Z DATA 0 +B0 DATA 040000000 +M1 DATA -1 +M23 DATA -23 +MMO OPD 06000000 +POP910 RES 0 + BRU CAB + BRU CBA + BRU CAX + BRU CXA + BRU CBX + BRU CNA + BRU SKE + BRU SKR + BRU MUL + BRU DIV + BRU ADM + BRU XMA +CAB STA T + BRU SKE1 +CBA STB T + BRU CXA1 +MUL LDB Z + BRM SIGN + ABC +MUL1 RCY 1 + STA T+2 + LCY 1 + SKN T+2 + BRU $+2 + ADD T+1 + RSH 1 + ETR RSL4 + BRX MUL1 + SKN 5 + BRU MUL2 + BRM DPN +MUL2 LDX T + BRR 0 +DIV BRM SIGN + SKG T+1 + BRU $+2 + BRR $,4 +DIV2 LCY 1 + SUB T+1 + EOR B0 + SKA B0 + BRU DIV1 + EOR B0 + ADD T+1 +DIV1 BRX DIV2 + LCY 1 + STB T+1 + ETR RSL4 + RSH 25 + LDA T+1 + SKN S + BRU MUL2 + EOR M1 + SUB M1 + XAB + EOR M1 + SUB M1 + XAB + BRU MUL2 +SIGN HLT 0 + STA T+2 + EOR *0 + STA S + EOR T+2 + SKN *0 + BRU SIGN1 + EOR M1 + SUB M1 +SIGN1 STA T+1 + LDA T+2 + SKN T+2 + BRU SIGN2 + BRM DPN +SIGN2 STX T + LDX M23 + BRR SIGN +DPN HLT 0 + XAB + EOR M1 + SUB M1 + STA T+3 + STB T+4 + ABC + LDA M1 + SKA T+3 + BRU DPN1 + LDA Z +DPN1 SUB T+4 + BRR DPN +CXA STX T +CXA1 LDA T + BRR 0 +CAX STA 1 +CAX1 LDX T + BRR 0 +CBX STB 1 + BRU CAX1 +CNA EOR M1 + SUB M1 + BRR 0 +XMA STA T+1 + LDA *0 + STA T + LDA T+1 +XMA1 STA *0 + LDA T + BRR 0 +ADM STA T + ADD *0 + BRU XMA1 +SKE STB T + LDB M1 + SKM *0 + BRU $+2 + MIN 0 +SKE1 LDB T + BRR 0 +SKR MMO *0 + NOP + SKN *0 + BRR 0 + MIN 0 + BRR 0 +RSL4 DATA 037777777 +S RES 1 +T RES 5 +ENDPOP RES 0 +POP920 RES 0 +D EQU POP920-POP910 + BRU CAB920+D + BRU CBA920+D + BRU CAX920+D + BRU CXA920+D + BRU CBX920+D + BRU CNA920+D + BRU SKE920+D + BRU SKR920+D + BRU MUL920+D + BRU DIV920+D + BRU ADM920+D + BRU XMA920+D +CAB920 CAB + BRR 0 +CBA920 CBA + BRR 0 +CAX920 CAX + BRR 0 +CXA920 CXA + BRR 0 +CBX920 CBX + BRR 0 +CNA920 CNA + BRR 0 +SKE920 SKE *0 + BRR 0 +SKIP2 MIN 0 + BRR 0 +SKR920 SKR *0 + BRR 0 + BRU SKIP2-D +MUL920 MUL *0 + BRR 0 +DIV920 DIV *0 + BRR 0 +ADM920 ADM *0 + BRR 0 +XMA920 XMA *0 + BRR 0 +END920 RES 0 + RORG 07567 + RORG 07566 +F FORM 3,6,15 + TEXT 8,Z + F 4,0,Z +TO RES 0 +* PROCESS DATA RECORD +DATA LDX CT,X0 + CLR + LDA DW1 + SKA P2B18 + LDB DW1,X2 + SKA P2B18 + SKR CT SUBTRACT RELOCATION WORD + SKA P1B15 + ADD BIAS + ETR MADR + STA LOC STORE MODIFIED LOAD ADDRESS +* PROCESS DATA WORDS + SKR CT (CT) = NO. DATA WDRDS - 1 + LDA LDW2 + STA IWD +* +LLDA LDA *IWD (A) = CURRENT DATA WORD + STB ALFA + SKN ALFA + BRU $+2 + ADD BIAS + STA *LOC + MIN LOC INCREMENT LOAD ADDRESS + MIN IWD INCREMENT DATA WORD ADDRESS + SKR CT + LSH 1 + SKN CT + BRU LLDA +* + LDA MLOC + SKG LOC + LDA LOC + STA MLOC STORE CURRENT MAXIMUM LOAD ADDRESS +1 + BRR LOAD EXIT +* +* ROUTINES FOR PROCESSING EXTERNAL REFS AND DEFS +* (RECORD TYPE 1) +* MATCH1NG TABLE ENTRY WAA A DEF +SRCH2 LDA ALFA +SRCH3 BRX $+1,X0 + BRX SRCH1,X0 +NSRT LDA TL + SUB P3 + STA TL + LDX TL,X0 + ADD LTO + ETR MADR + SKG MLOC +P3 DATA 3 + LDA ALFA + STA TO,X2 + LDB BETA + STB TO+1,X2 + LDA LOC + STA TO+2,X2 +NEXT1 LDA P3 + ADD WD1 + STA WD1 + LDA CT + SUB P3 + STA CT REDUCE WORD COUNT + SKG Z SKIP IF AT LEAST 3 MORE MORD + BRR LOAD EXIT +* +* PROCESS NEXT ITEM, HEREAFTER CALLED 'C' +EXT LDX WD1,X0 (X0) = LOC, OF 1ST WORD OF LABEL + LDA 2,X2 (B) = CHAINWORD OR VALUE WORD + SKA P1B15 + ADD BIAS + STA LOC + LDA 0,X2 + SKA M1 TEST FOR SPECIAL I/O IDENTIFIER + BRU $+2 NO + BRU NEXT1 YES, IGNORE + LDB 1,X2 (AB) = 8 CHAR LABEL OF C +* +* PROCESS EXTERNAL DEF OR REF + LDX TL,X0 SEARCH SYMBOL TABLE + STA ALFA + STB BETA + LDB N1 +SRCH1 SKM TO,X2 + BRX SRCH3,X0 NO MATCH + LDA BETA TENTATIVE MATHC + SKM TO+1,X2 + BRX SRCH2,X0 + LDA LOC + SKN TO+2,X2 + BRU $+2 + BRU TXDR X IS A DEF + SKN LOC + BRU TXRR C IS A REF + LDB TO+2,X2 + XAB + STB TO+2,X2 +TXDR ETR MADR +TXRD1 STA CHAIN ADDR OF A REF + LDA *CHAIN + EOR TO+2,X2 + ETR MRDA + EOR TO+2,X2 + LDB *CHAIN + XAB + STB *CHAIN + SKA MADR + BRU TXDR + BRU NEXT1 EXIT 1 +* X AND C ARE BOTH REFS +TXRR ETR MADR ADDRESS OF 1ST REF IN NEW CHAIN +TXRR1 STA CHAIN + LDA *CHAIN + ETR MADR + SKA MADR + BRU TXRR1 + LDA LOC NEW 1ST LINK + LDB TO+2,X2 + XAB + STB TO+2,X2 + ETR MADR REMOVE REF FLAG FROM OLD 1ST LINK + ADD *CHAIN + STA *CHAIN + BRU NEXT1 EXIT 3 +NOPS NOP + LDB NOPS + LDX TL,X0 BE TO I/O ROUTINES + EAX 2,X2 +POINT SKN TO,X2 + BRU $+3 REF +ADV BRX NOPS+3,X0 DEF + BRU CW+2 FINISHED. BRANCH TO START + LDA POINT + STA ALFA +STEP STA BETA NOP REF CHAIN + LDA *BETA + ETR MADR + STA ALFA + STB *BETA + LDA ALFA + SKA MADR CHECK FOR END OF CHAIN + BRU STEP NO + BRU ADV ES +O7777 DATA 07777 +LDW1 HLT DW1 +P2 DATA 2 +WDAD HLT DW1 +LDW2 HLT DW1+1 + END STRT diff --git a/symbol/section-4.bo b/symbol/section-4.bo new file mode 100644 index 0000000..3a6fd00 --- /dev/null +++ b/symbol/section-4.bo @@ -0,0 +1 @@ + R#QTTpppp @@#R#gpp @]#R#gpp @^#R#pppp @#dspppp @m#%pppp #%Cpppp #%pppp a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@  #%pppppp @#&ppppp @b#)sppppp @h#2sppppp @spppp @)#s)pppp @E#s)pppp @F#s)Cpppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ Igdpppppp OdCppppp Rd&Tpppp @%&g@pppp ^&pppppp @;&spppp @&))pppp @ &gTpppp FE@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ,&gTppppp E>&)Wppppp Fvgppppp LgQWpppp F/gQ22pppp @kg))pppp @gd&Tpppp @#g&g)spp CE@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ u@gyppppp C)dpppp @)#dpppp F)))pppp @Q2X)pppp @s2pppppp @y2bRppppp L2&sppppp @@*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ad2gQpppp  2s8gpppp @*s)dpppp @hs))pppp @Rs7spppp 1s7sppp ;sg#ppppp @4))pppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ;uQ#4pppp @Iu))pppp @Tvd&Tpppp @dv&)Tpppp @%v)Tpppp @gv)Tpppp @&7))pppp @J7#Wpppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 717ppppppp @ yppppppp @aQpppppp @4Q&)Wpppp F4R@pppppp @vRppppp @|Rpppppp @;RTppppp /@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ RnRX)pppp @pRpppp @[R22ppppp Cpppppp X)pppp @1pppppp @7%s)pppp @s8gpppp @)@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ pTQsQpppp JTpppppp @zTTppppp WT))pppp @LT#R#pppp C T4gdpppp ))pppp @ %Tppppp k@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ yh4ppppp E1&)dpppp F)dpppp Fmpppppp @%))pppp @#Wpppp @C%)pppp C,%)pppp Q@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%@@@W @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@];@a@@@@@@@@@@@@@@@@@@@J@@@@@b@@@&@@@*@@@z@@@@@@@@@@@@@@p@@@;@@@k@@@,@@@@@ @@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@y@@y@ @@@@@@@@@@@@@ @@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@X@@@@@@J@@@C>@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]WJQ;)QX@@@@@ @@@s@CCh@@nW8@CC8@Wp@@hWh@@C4@F@Wh@C4@F@Wh@C4@F@W8@C@vv@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]Tv)p@E@@/@L%p@ahbnp,E ChChQpIChChp@nE ChJpICh p@/E @n Ch@Fy@X>) ^@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]4J TE @%@#Eh@%2@E8@@ChLp@E LChEh@nCh p@aChkCh)p@)Ch@@p@*Ch@@p@kCh@@p@,Ch@@p@/|R%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]JE ,Chm@@@@p@aCh@@Ch@@p@;Chbp@aCh#ChdCh@Ch@CCh@Ch*Ch@OpOCh@pRCh@@pCh@@X@@E@@p)7)@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]yI1@X@@E@@p@7XEh@^X@@p@@E@@sF@@CF@CE@@sEXOX@@E@@pCh@@p@@h@gX@@@@@Ch%Cp@X2p@/O)@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]b#CIE@L%XC @C]@@@@p@E@@aE@@EC p@]hbCp@^XL@@@;pFCh@]p@mh@&X@@EC p@F@L%EXkm=@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]OpCa@@>@@@@ #@bhOCh@@Cp@X@@@R@@@8@@p@@ @@p%@F@RCpdhL&@@@@Cz7z@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]Cy@C|@@@@EX@CpLg@FEXk@XC,Cpd LhEX@Cp@@Ch%pOCh@phE@@1@X@@ @@E@@IF@RF8@/[ &@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]#Qp%Ch%p@@Ch&p@pE@hF@ ChhX@@Fb@aE@@s@EEXk@aX@@@ap@@=@&@7XLh@aE#k@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]&>)hC7 p@1@JQp@ap%hL&@@@@s8@@Ch%phE@@1@pLgEX@CFX%X& E@@IF@RFX%phE@@12h=y@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]%&E@XzE@@aE  F8@@QE@@2@E EXkF@X>h@yX@aF@OXL@@@@ETF@OX7Ch@p@p@Ch@]>;=;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]7&Ep@@@EXOF@Op8E@L)@EbXEh@ELE@@pF@Op@aE@@OCh@@2@@@@p@mh@&XCCEEhp@p@h@EEh/;u@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]/zE1XECh%p@L FX@]Cp@^p@mh@&XC[EXk@aX@@@apC*Ch@XE1Ch%Ch@^pFX@]p@mh@gXEy L*gz=@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]|WFIE@Lk@Ezp@]h@p@^h@@Ezs@CCp&XF@p@h&p@vz@@O@F XL@@@v@FaphE@@1@F @FQF@Rzd//@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]bFap@p@vCh@^pEhFX@]p@mh@gXFEXk@aX@@X @aEXk@aX@@XFm@as@C@F7p@;XF;Chbzun@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@])[FyXC @@@@@ChnX@@XFREhnChnEF;pbXF;EXkEXOX@@pnChb@aXF>EXk@RCh%Cpdp@vCh&1J#R@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]uQXFbphE@@1@a@JpCh,X@@X@@Cp%Ch@IEXk@bp@vCh&XQFbEXk@*p@ICh%p@vCh&g1@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]h)XaFbphE@@1@a@Wh @2h@pCp@[pE]E@L,@zpLChhpLm@X@@E hCphXLm@pLmgv7@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]hF@RCh@XELEX@EXO@ap@[F LnF8@WCh%L/psE@@p@p@[E@h@p@Ch@@^E @[h@aRX)FX%sz>@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]C8@XC@F@@Lp@vCh&EXkEXOX)Fb@F8@RF8@LF8@F@@@p@aChkEXk@n@I;X@@pOChk @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]2z1pbCh/Ch@@@@p@ah@TvCh@TCh@@pFCh*pCh)p@EhX,EXO@Ip@Wp@EXO@ uEg@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]RII h@C8%C8@X@@@@p@aCh@EpFCh)pJEhLEhCh@nW8@CC8@Wp@hL*@Lp@I&Wp@F2@%|E@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]IbIap@EFz@h@F@EXI @W8@Cp@E@@Ip@aCh)pChChWpIChCh[Ch]pOChpEL1h@@gF@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@];EIyI8@pCh@pLE@@pEXO@JXJCh%p@vCh&XE|F@@@JIXF2p/ChbCh@EE@@@@J=XF=pz|@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]COJQCh*pCh)@hWp@@EhCh@Eh@h@Ch@Fp@FX@E@Jnp@ECh%4@ECh@@F@E4@E IpL2Ch@@F@E4@Egu;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]^mJ)F@EChbXFXI%@J[pCh)F@@@J7p@ICh%p@ChdXJ,pECh)XJvXF1X@@@Wp@Ehp@Wp@/][T@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]4 E@@E@ Wp@@Ch%Wp@Chdp@vCh&C8@FXb@FF@Ep@EFb@J E /Ch@Eh@Eh@EhEhCh@Wp@@FT@p/ku@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]@b h@@F@Wp@FT@h@F@Wp@FT@h@@ p Ch@pQCh@Xp%ChgCh&p@aCh%h@vX@@@L F@XCh@WW1W@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]FT 1E@@@@ 8E@@@ 8XCpd@ |XJXL@@FF@Qh@a@Wp@@E@@a@Lp@a@8@@p%Ch%p@E @WCh@^/@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@][LIphE@@1@L @ mpgCh&p@vEX@XCh&@E@OF@RXL@@@vEXOF@R@L@@@@FLEhLdFLp@LTL@Lb7>;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@m8LaFLp@LEL@@@Oh8@@@@@@@@@;@@@@Q @@@^@@@7@O|@@ @O8@@pph@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ pR#sdppppW#&gppppp#28dppppCdQ7#ppppJOd#&pppp]dsppppp@/dspppppp@n%QRpppppCn@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ z=%2)sppppF)&4sgppppJyg&gppppCg&g)ppppC#g)%sppppJ)QTpppp/2Q#pppX2Q%pppp 8@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [|27pppp2%#pppp u2%7ppppQ2b2&Tppp2dpppppC@2)XppppEk28dpppppETv&ppppJ;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ WI7d2bpppp QRpppppp 1QTT)ppppC1Q#%ppppp^R4ppppI8X)pppppI=sspppppEQTvppppz@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 7sT#8ppppIvTgv)ppppTgvpppppTvpppppyTsppppnTpppppF,Tspppp JTs#ppppJk@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ =8TsuppppJE%T2pppn&Tpppp2&Tppppp)&dpppppCz)pppJa)pppJ&))pppp4@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@uW#Tpppp m#TpppppC&)&ppE>WspppppX&dppppJz%TRppppE%2spppp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@kQ@Ls@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/symbol/section-4.lo b/symbol/section-4.lo new file mode 100644 index 0000000..b9815e0 --- /dev/null +++ b/symbol/section-4.lo @@ -0,0 +1,951 @@ + + 1 + 2 * S1 + 3 * +D 16400000 4 CAB OPD 016400000 +D 16500000 5 CBA OPD 016500000 +D 16600000 6 CAX OPD 016600000 +D 16700000 7 CXA OPD 016700000 +D 17000000 8 CBX OPD 017000000 +D 17100000 9 CNA OPD 017100000 +D 17200000 10 SKE OPD 017200000 +D 17300000 11 SKR OPD 017300000 +D 17400000 12 MUL OPD 017400000 +D 17500000 13 DIV OPD 017500000 +D 17600000 14 ADM OPD 017600000 +D 17700000 15 XMA OPD 017700000 + 00000000 16 S9300 EQU 0 + 00000000 17 X0 EQU S9300 + 00000002 18 X2 EQU 2-S9300 + 00000001 19 IN EQU 1 + 00000002 20 OUT EQU 2 + 00001 21 AORG 1 + 00001 0 01 00127 22 BRU BGN RESTART + 00042 23 AORG 34 + 00042 24 SXT RES 4 + 00046 25 SCXT RES 4 + 00052 26 $SOT RES 16 + 00072 27 SIT RES 16 + 00112 28 TPM RES 6 + 00120 29 TPS RES 6 + 00126 30 TPR RES 6 + 00134 31 $TPL RES 6 + 00142 32 ENDP RES 0 + 00142 33 $LOC RES 1 + 00143 34 $PMOD RES 1 + 00144 35 $WMOD RES 1 + 00145 36 $WORD RES 1 + 00146 37 $WRD2 RES 1 + 00147 38 $WRD1 RES 1 + 00150 39 $TERM RES 1 + 00151 40 $CTYP RES 1 + 00152 41 $STYP RES 1 + 00153 42 $PASS RES 1 + 00154 43 HIGH RES 1 + 00155 44 $LIMT RES 1 + 00156 45 LOC1 RES 1 + 00157 46 LOCP RES 1 + 00000 47 ORG 0 + 00000 48 $LADD RES 1 + 00001 49 $OCTF RES 1 + 00002 50 XFLG RES 1 + 00003 51 $IFLG RES 1 + 00004 52 EFLG RES 1 + 00005 53 $LTR1 RES 1 + 00006 54 $LTR2 RES 1 + 00007 55 $LTR3 RES 1 + 00010 56 $MODE RES 1 + 00011 57 $VALU RES 1 + 00012 58 $XERR RES 1 + 00013 59 $OERR RES 1 + 00014 60 $DERR RES 1 + 00015 61 $EERR RES 1 + 00016 62 IERR RES 1 + 00017 63 LERR RES 1 + 00020 64 $PERR RES 1 + 00021 65 $RERR RES 1 + 00022 66 $TERR RES 1 + 00023 67 $UERR RES 1 + 00024 68 $VERR RES 1 + 00025 69 $CNTR RES 1 + 00026 70 CNT1 RES 1 + 00027 71 CNT2 RES 1 + 00030 72 CNT3 RES 1 + 00031 73 CNTB RES 1 + 00032 74 $LN RES 1 + 00033 75 BCIF RES 1 + 00034 76 $LBL1 RES 1 + 00035 77 $LBL1P1 RES 1 + 00036 78 $LBL1P2 RES 1 + 00037 79 IOC RES 1 + 00040 80 $X RES 1 + 00041 81 Z RES 0 + 00041 00000000 82 CT DATA 000000000 + 00042 00000100 83 DATA 000000100 + 00043 84 B1 RES 0 + 00043 20000000 85 DATA 020000000 + 00044 20000100 86 DATA 020000100 + 00045 87 B3 RES 0 + 00045 04000000 88 DATA 004000000 + 00046 0 00 00120 89 $LST HLT TPS + 00047 0 00 00112 90 LMT HLT TPM LOCAT1ON OF MNEMONIC TABLE PACKET + 00050 0 00 00126 91 $LRT HLT TPR + 00051 0 00 00042 92 $LSXT HLT SXT + 00052 0 00 00046 93 LSCX HLT SCXT + 00053 0 00 00052 94 LSOT HLT SOT LOCATION OF SCAN CONECTER + 00054 0 00 00072 95 LSIT HLT SIT LOCATION OF SCAN ITEM + 00055 0 00 00034 96 LLBL HLT LBL1 LOCATION OF LBL +* 00056 0 00 00000 97 FRST HLT MT 1ST MNEMONIC TABLE LOCATION +* 00057 0 00 00000 98 FINL HLT MTE FINAL MNEMONIC TABLE LOCATION + 00060 00000060 99 $BCHR DATA 060 + 00061 00000073 100 $CCHR DATA 073 + 00062 00000053 101 DCHR DATA 053 + 00063 00000054 102 $SCHR DATA 054 + 00064 00000007 103 $A7 DATA 07 + 00065 00000777 104 A57 DATA 0777 + 00066 40000000 105 B0 DATA 040000000 + 00067 02000000 106 B4 DATA 02000000 + 00070 01000000 107 B5 DATA 01000000 + 00071 00400000 108 B6 DATA 0400000 + 00072 00200000 109 B7 DATA 0200000 + 00073 00100000 110 $B8 DATA 0100000 + 00074 00010000 111 B11 DATA 010000 + 00075 00004000 112 B12 DATA 04000 + 00076 00002000 113 B13 DATA 02000 + 00077 00001000 114 B14 DATA 01000 + 00100 00000200 115 B16 DATA 0200 + 00101 00000100 116 B17 DATA 0100 + 00102 00000040 117 B18 DATA 040 + 00103 00000020 118 B19 DATA 020 + 00104 00000010 119 B20 DATA 010 + 00105 00000004 120 B21 DATA 04 + 00106 00000002 121 B22 DATA 2 + 00107 00000001 122 B23 DATA 1 + 00110 00000077 123 C3 DATA 077 + 00111 77770000 124 C01 DATA 077770000 + 00112 00000102 125 P66 DATA 66 + 00113 00000030 126 P24 DATA 24 + 00114 00000016 127 P14 DATA 016 + 00115 00000012 128 P10 DATA 10 + 00116 00000003 129 P3 DATA 3 + 00117 77777777 130 M1 DATA -1 + 00120 77777776 131 M2 DATA -2 + 00121 77777773 132 M5 DATA -5 + 00122 77777751 133 M23 DATA -23 + 00123 77777721 134 M47 DATA -47 + 00124 30000000 135 MC DATA 030000000 + 00125 00000740 136 BPM DATA 0740 + 00126 00000034 137 LL DATA 034 + 00000045 138 $IC EQU B3 + 00000067 139 $CC EQU B4 + 00000070 140 LC EQU B5 + 00000071 141 $SC EQU B6 + 00000072 142 $DC EQU B7 + 00000073 143 $OC EQU B8 + 00000100 144 $REFM EQU B16 + 00000101 145 $DUPM EQU B17 + 00000106 146 $RELM EQU B22 + 00000107 147 EXTM EQU B23 + 00000115 148 SPAC EQU P10 + 00000107 149 REFT EQU B23 + 00000106 150 DEFT EQU B22 + 00127 151 BGN RES 0 + 00127 0 46 30003 152 CLR + 00130 0 35 00032 153 STA LN + 00131 154 BGNB RES 0 + 00131 0 71 00056 155 LDX FRST,X0 + 00132 2 77 00003 156 EAX 3,2 + 00133 0 37 00025 157 STX CNTR,X0 + 00134 2 76 00001 158 RST2 LDA 1,X2 + 00135 0 72 00102 159 SKA B18 TEST ASSEMBLER DEFINED + 00136 0 01 00150 160 BRU RST1 DONT SAVE PROGRAMMER DEFINED + 00137 2 75 00000 161 LDB 0,X2 + 00140 0 36 40025 162 STB *CNTR SAVE 1ST WORD + 00141 0 61 00025 163 MIN CNTR + 00142 2 75 00001 164 LDB 1,X2 + 00143 0 36 40025 165 STB *CNTR SAVE 2ND WORD + 00144 0 61 00025 166 MIN CNTR + 00145 2 75 00002 167 LDB 2,X2 + 00146 0 36 40025 168 STB *CNTR SAVE 3RD WORD + 00147 0 61 00025 169 MIN CNTR + 00150 2 77 00003 170 RST1 EAX 3,X2 ADDRESS OF NEXT FROM WORD + 00151 0 76 00025 171 LDA CNTR ADDRESS OF NEXT TO WORD + 00152 0 50 00057 172 SKE FINL TEST FOR END OF COMMAND TABLE + 00153 0 01 00134 173 BRU RST2 + 00154 0 71 01445 174 BGN2 LDX =00200000-24,X0 + 00155 0 76 00041 175 LDA Z + 00156 2 35 00142 176 BGN3 STA ENDP,X2 CLEAR ALL PACKETS + 00157 0 41 00156 177 BRX BGN3,X0 + 00160 0 76 00154 178 LDA HIGH HIGHEST LOCATION + 00161 0 54 00116 179 SUB P3 + 00162 0 35 00120 180 STA TPS BASE OF SYMBOL TABLE + 00163 0 35 00121 181 STA TPS+1 + 00164 0 76 00111 182 LDA C01 + 00165 0 35 00123 183 STA TPS+3 + 00166 0 35 00125 184 STA TPS+5 + 00167 0 76 00056 185 LDA FRST + 00170 0 54 00116 186 SUB P3 + 00171 0 35 00112 187 STA TPM BASE OF MNEMONIC 1ABLE + 00172 0 76 00111 188 LDA C01 + 00173 0 35 00115 189 STA TPM+3 + 00174 0 76 00057 190 LDA FINL + 00175 0 54 00056 191 SUB FRST + 00176 0 71 00113 192 LDX P24,X0 + 00177 0 35 00025 193 STA CNTR NO. OF WORDS IN TABLE + 00200 0 67 10030 194 NOD 24 + 00201 0 14 00124 195 ETR MC + 00202 0 54 00045 196 SUB B3 + 00203 0 72 00043 197 SKA B1 + 00204 0 55 00045 198 ADD B3 + 00205 0 46 20005 199 ABC + 00206 2 67 00000 200 LSH 0,X2 + 00207 0 35 00114 201 STA TPM+2 + 00210 0 76 00025 202 LDA CNTR + 00211 0 54 00114 203 SUB TPM+2 + 00212 0 35 00116 204 STA TPM+4 + 00213 0 55 00056 205 ADD FRST + 00214 0 35 00113 206 STA TPM+1 + 00215 0 76 00041 207 LDA Z + 00216 0 35 00153 208 STA PASS SET PASS1 + 00217 0 35 00151 209 STA CTYP + 00220 0 76 00051 210 LDA LSXT +* 00221 0 35 00000 211 STA SCNX SET SCAN EXIT + 00222 0 76 00052 212 LDA LSCX +* 00223 0 35 00000 213 STA SCIX + 00224 0 76 00053 214 LDA LSOT +* 00225 0 35 00000 215 STA LOP SET SCAN CONNECTER + 00226 0 76 00054 216 LDA LSIT +* 00227 0 35 00000 217 STA LITM SET SCAN ITEM + 00230 0 76 00057 218 LDA FINL 1ST AVAILABLE CELL + 00231 0 54 00154 219 SUB HIGH + 00232 0 35 00155 220 STA LIMT MINUS NO. OF CELLS AVAILABLE + 00233 0 00 00000 221 HLT + 00234 0 76 00041 222 BGN4 LDA Z +* 00235 0 35 00000 223 STA MLOC 0 TO MAX LOC +* 00236 0 35 00000 224 STA ALN + 00237 0 76 00073 225 LDA B8 + 00240 0 35 00142 226 STA LOC + 00241 0 76 00041 227 LINE LDA Z + 00242 0 35 00143 228 STA PMOD + 00243 0 35 00144 229 STA WMOD 0 TO MODE + 00244 0 35 00002 230 STA XFLG RESET EXTERNALFLAG + 00245 0 35 00003 231 STA IFLG RESET INDIRECT FLAG + 00246 0 35 00034 232 STA LBL1 RESET LABEL + 00247 0 35 00152 233 STA STYP + 00250 0 35 00017 234 STA LERR + 00251 0 76 00117 235 LDA M1 + 00252 0 35 00001 236 STA OCTF RESET OCTAL FLAG + 00253 0 76 00122 237 LDA M23 +* 00254 0 35 00000 238 STA SCALE + 00255 0 76 00126 239 LDA LL +* 00256 0 35 00000 240 STA EDCT +* 00257 0 43 00000 241 BRM READ READ LINE + 00260 0 50 00060 242 SKE BCHR TEST FOR BLANK LABEL + 00261 0 01 00434 243 BRU LIN1 PROCESS LABEL FIELD +* 00262 0 43 00000 244 LIN6 BRM FLD SKIP TO OPERATION + 00263 0 50 00060 245 SKE BCHR + 00264 0 01 00267 246 BRU LP1 + 00265 0 43 00550 247 BRM LXL + 00266 0 01 00436 248 BRU LIN10 +* 00267 0 43 00000 249 LP1 BRM SYM +* 00270 0 76 00000 250 LDA CHR + 00271 0 50 00063 251 SKE SCHR TEST FOR * + 00272 0 60 00003 252 SKR IFLG + 00273 0 61 00003 253 MIN IFLG SET 1FLAG + 00274 0 50 00063 254 SKE SCHR + 00275 0 53 00117 255 SKN M1 ALWAY5 SK1P +* 00276 0 43 00000 256 BRM GET SKIP * + 00277 0 50 00060 257 SKE BCHR TEST FOR BLANK +* 00300 0 35 00000 258 STA SM1 UNDEFINED COMMAND +* 00301 0 76 00000 259 LDA LSYM + 00302 0 75 00047 260 LDB LMT +* 00303 0 43 00000 261 BRM SRCH LODK UP MNEMONIC +* 00304 0 01 00000 262 BRU POPI + 00305 0 35 00145 263 $POPIRT STA WORD + 00306 0 36 00010 264 STB MODE SAVE TYPE +* 00307 0 43 00262 265 BRM FLD SKIP TO OPERAND FIELD + 00310 0 76 00010 266 LDA MODE + 00311 0 72 00105 267 SKA B21 + 00312 0 01 40145 268 BRU *WORD + 00313 0 43 00315 269 BRM DLBL DEFINE LABEL + 00314 0 01 00335 270 BRU LIN7 + 00315 0 00 00000 271 DLBL HLT 0 + 00316 0 76 00034 272 LDA LBL1 + 00317 0 50 00041 273 SKE Z + 00320 0 50 00034 274 SKE LBL1 + 00321 0 51 00315 275 BRR DLBL EXIT + 00322 0 76 00035 276 LDA LBL1+1 + 00323 0 75 00142 277 LDB LOC + 00324 0 36 00036 278 STB LBL1+2 + 00325 0 43 01432 279 BRM SKB + 00326 0 00 00073 280 HLT B8 + 00327 0 16 00106 281 MRG B22 + 00330 0 35 00035 282 STA LBL1+1 + 00331 0 76 00055 283 LDA LLBL + 00332 0 75 00046 284 LDB LST +* 00333 0 43 00000 285 BRM NSRT INSERT IN SYMBOL TABLE + 00334 0 51 00315 286 BRR DLBL EXIT LABEL DEFINE + 00335 0 76 00010 287 LIN7 LDA MODE + 00336 0 72 00106 288 SKA B22 + 00337 0 01 40145 289 BRU *WORD + 00340 0 53 00153 290 SKN PASS + 00341 0 01 00432 291 BRU LIN2 1ST PASS + 00342 0 72 00076 292 SKA B13 +* 00343 0 01 00000 293 BRU POPR + 00344 0 72 00107 294 SKA B23 + 00345 0 01 01343 295 BRU FREF + 00346 0 72 00104 296 SKA B20 + 00347 0 01 00442 297 BRU INR3 + 00350 0 75 00117 298 LDB M1 + 00351 0 72 00103 299 SKA B19 +* 00352 0 75 00000 300 LDB FORCEO + 00353 0 36 00001 301 STB OCTF OCTAL ADDRESS +* 00354 0 43 00000 302 INR1 BRM SCNL GET INSTRUCTION ADDRESS + 00355 0 02 20001 303 INR1A ROV +* 00356 0 71 00000 304 LDX NAB,X0 + 00357 2 67 00000 305 LSH 0,X2 + 00360 2 66 00000 306 RSH 0,X2 +* 00361 0 14 00000 307 ETR ADDR + 00362 0 16 00145 308 MRG WORD + 00363 0 40 20001 309 INR9 OVT + 00364 0 61 00022 310 MIN TERR SET T ERROR + 00365 0 36 00144 311 STB WMOD + 00366 0 75 01446 312 LDB =07700000 +* 00367 0 70 00000 313 SKM EOD + 00370 0 01 00372 314 BRU INR93 + 00371 0 01 00374 315 BRU INR92 +* 00372 0 70 00000 316 INR93 SKM EOM + 00373 0 01 00404 317 BRU INR91 + 00374 0 53 00003 318 INR92 SKN IFLG + 00375 0 16 01447 319 MRG =040000 + 00376 0 01 00406 320 BRU INR94 + 00377 0 53 00153 321 $PZE SKN PASS + 00400 0 01 00432 322 BRU LIN2 +* 00401 0 43 00354 323 BRM SCNL + 00402 0 36 00144 324 STB WMOD + 00403 0 14 01450 325 ETR =077777 + 00404 0 53 00003 326 INR91 SKN IFLG +* 00405 0 16 00000 327 MRG INDB SET INDIRECT BIT + 00406 0 35 00145 328 INR94 STA WORD + 00407 0 76 00117 329 LDA M1 + 00410 0 35 00001 330 STA OCTF RESET OCTALFLAG + 00411 0 76 00150 331 LDA TERM + 00412 0 50 00061 332 SKE CCHR + 00413 0 01 00423 333 BRU LIN3 +* 00414 0 43 00000 334 BRM SCAN GET INDEX +* 00415 0 14 00000 335 ETR XMSK MASK X FIELD + 00416 0 50 00011 336 SKE VALU + 00417 0 61 00022 337 MIN TERR SET TRUNCATION ERROR + 00420 0 67 00025 338 LSH 21 POSITION X FIELD + 00421 0 16 00145 339 $INR2 MRG WORD + 00422 0 35 00145 340 STA WORD +* 00423 0 76 00000 341 $LIN3 LDA INST + 00424 0 35 00146 342 STA WRD2 INSTRUCTION FORM + 00425 0 76 00060 343 LIN8 LDA BCHR + 00426 0 50 00150 344 SKE TERM TEST FOR BLANK + 00427 0 61 00015 345 MIN EERR SET ERROR + 00430 0 35 00150 346 STA TERM +* 00431 0 43 00000 347 BRM EDIT EDIT INSTRUCTION + 00432 0 61 00142 348 $LIN2 MIN LOC L+1 TO L + 00433 0 01 00241 349 BRU LINE + 00434 0 50 00063 350 LIN1 SKE SCHR TEST FOR * + 00435 0 01 00510 351 BRU LIN4 + 00436 352 $NOP0 RES 0 + 00436 0 53 00153 353 LIN10 SKN PASS + 00437 0 01 00241 354 BRU LINE SKIP IF 1ST PASS +* 00440 0 43 00000 355 BRM PRNT PRINT COMMENTS LINE + 00441 0 01 00241 356 BRU LINE + 00442 0 76 00010 357 INR3 LDA MODE + 00443 0 72 00075 358 SKA B12 + 00444 0 01 00446 359 BRU $+2 + 00445 0 01 00467 360 BRU INR31 +* 00446 0 43 00414 361 BRM SCAN + 00447 0 75 00041 362 LDB Z + 00450 0 72 00105 363 SKA B21 +* 00451 0 75 00367 364 LDB EOD + 00452 0 14 00116 365 ETR P3 + 00453 0 46 00400 366 CAX + 00454 0 46 10012 367 BAC + 00455 2 16 00041 368 MRG CT,X2 + 00456 0 16 00145 369 MRG WORD + 00457 0 75 01446 370 LDB =07700000 +* 00460 0 70 00000 371 SKM SKSEOD + 00461 0 01 00463 372 BRU $+2 +* 00462 0 17 00000 373 EOR EODI + 00463 0 35 00145 374 STA WORD + 00464 0 76 00150 375 LDA TERM + 00465 0 50 00061 376 SKE CCHR + 00466 0 01 00423 377 BRU LIN3 + 00467 0 76 01447 378 INR31 LDA =040000 + 00470 0 53 00003 379 SKN IFLG + 00471 0 63 00145 380 ADM WORD +* 00472 0 43 00446 381 BRM SCAN + 00473 0 14 00110 382 ETR C3 + 00474 0 50 00011 383 SKE VALU + 00475 0 61 00022 384 MIN TERR + 00476 0 63 00145 385 ADM WORD INSERT UNIT + 00477 0 76 00150 386 LDA TERM + 00500 0 50 00061 387 SKE CCHR + 00501 0 01 00423 388 BRU LIN3 +* 00502 0 43 00472 389 BRM SCAN GET CHAR/WORD + 00503 0 50 00041 390 SKE Z + 00504 0 54 00107 391 SUB B23 + 00505 0 14 00116 392 ETR P3 + 00506 0 67 00007 393 LSH 7 POSITION CHAR/WORD + 00507 0 01 00421 394 BRU INR2 + 00510 0 50 00062 395 LIN4 SKE DCHR TEST FOR $ + 00511 0 01 00515 396 BRU LIN5 + 00512 0 53 00153 397 SKN PASS + 00513 0 61 00002 398 MIN XFLG SET EXTERNAL FLAG +* 00514 0 43 00276 399 LIN49 BRM GET + 00515 0 75 00071 400 LIN5 LDB SC CHECK FOR LABEL CHARACTER + 00516 0 73 00041 401 SKG Z + 00517 0 61 00017 402 MIN LERR 1ST CHAR= 0 P ) + 00520 0 43 01432 403 BRM SKB +* 00521 2 00 00000 404 HLT CTT,X2 + 00522 0 01 00524 405 BRU LIN9 + 00523 0 61 00017 406 LIN11 MIN LERR SET LABEL FIELD ERROR FLAG +* 00524 0 43 00267 407 LIN9 BRM SYM + 00525 0 35 00034 408 STA LBL1 SAVE + 00526 0 46 00010 409 CBA + 00527 0 16 00002 410 MRG XFLG SET EXTERNALMODE + 00530 0 35 00035 411 STA LBL1+1 + 00531 0 16 00034 412 MRG LBL1 +* 00532 0 72 00000 413 SKA DLY1 TDST FOR AT LEST 1 ALPHABETEC + 00533 0 53 00117 414 SKN M1 ALWAYS SKIP + 00534 0 61 00017 415 MIN LERR +* 00535 0 76 00270 416 LDA CHR + 00536 0 50 01451 417 SKE =',' + 00537 0 01 00542 418 BRU LIN99 + 00540 0 43 00550 419 BRM LXL + 00541 0 01 00514 420 BRU LIN49 + 00542 0 50 00060 421 LIN99 SKE BCHR + 00543 0 61 00017 422 MIN LERR ILLEGAL CHARACTER IN LABEL + 00544 0 76 00041 423 LDA Z + 00545 0 50 00017 424 SKE LERR TEST FOR LABEL ERROR + 00546 0 35 00034 425 STA LBL1 DONT ENTER LABEL + 00547 0 01 00262 426 BRU LIN6 + 00550 0 00 00000 427 LXL HLT 0 + 00551 0 76 00055 428 LDA LLBL + 00552 0 75 00046 429 LDB LST +* 00553 0 43 00303 430 BRM SRCH + 00554 0 51 00550 431 BRR LXL + 00555 0 46 00010 432 CBA + 00556 0 16 00002 433 MRG XFLG + 00557 2 35 00001 434 STA 1,X2 + 00560 0 51 00550 435 BRR LXL +* 00561 0 43 00502 436 $EQU BRM SCAN GET VALUE + 00562 0 35 00145 437 STA WORD + 00563 0 46 00014 438 XAB + 00564 0 14 00120 439 ETR M2 + 00565 0 63 00035 440 ADM LBL1+1 + 00566 0 36 00036 441 STB LBL1+2 + 00567 0 76 00055 442 LDA LLBL + 00570 0 75 00046 443 LDB LST +* 00571 0 43 00333 444 EQU1 BRM NSRT INSERT IN SYMBOL TABLE + 00572 0 53 00153 445 EQU2 SKN PASS + 00573 0 01 00241 446 BRU LINE +* 00574 0 43 00000 447 BRM EDTV PR1NT + 00575 0 01 00241 448 BRU LINE +* 00576 0 76 00352 449 $OPD LDA FORCEO + 00577 0 35 00001 450 STA OCTF SET OCTAL FLAG +* 00600 0 43 00561 451 BRM SCAN GET VALUE + 00601 0 35 00145 452 STA WORD + 00602 0 35 00036 453 STA LBL1+2 + 00603 0 76 00102 454 LDA B18 + 00604 0 63 00035 455 ADM LBL1+1 + 00605 0 76 00055 456 OPD1 LDA LLBL + 00606 0 75 00047 457 LDB LMT +* 00607 0 43 00571 458 BRM NSRT + 00610 0 14 01452 459 ETR =07777 + 00611 0 50 01453 460 SKE =02140 + 00612 0 01 00572 461 BRU EQU2 + 00613 0 76 00035 462 LDA LBL1+1 + 00614 2 35 00001 463 STA 1,X2 + 00615 0 76 00036 464 LDA LBL1+2 + 00616 2 35 00002 465 STA 2,X2 + 00617 0 01 00572 466 BRU EQU2 + 00620 0 46 30003 467 $FORM CLR + 00621 0 36 00146 468 FRM3 STB WRD2 STORE FORM WORD +* 00622 0 43 00600 469 BRM SCAN GET FIELD LENGTH + 00623 0 46 00400 470 CAX + 00624 0 75 00146 471 LDB WRD2 + 00625 0 76 00066 472 LDA B0 + 00626 2 67 20000 473 LCY 0,X2 INSERT NEW FIELD + 00627 0 72 00117 474 SKA M1 + 00630 0 01 00640 475 BRU FRM1 MORE THAN 24 BITS + 00631 0 43 01432 476 BRM SKB + 00632 0 00 00066 477 HLT B0 + 00633 0 01 00641 478 BRU FRM2 END OF FORM + 00634 0 76 00150 479 LDA TERM + 00635 0 50 00061 480 SKE CCHR + 00636 0 01 00640 481 BRU FRM1 LESS THAN 24 BITS + 00637 0 01 00621 482 BRU FRM3 PROCESS NEXT FIELD + 00640 0 61 00022 483 FRM1 MIN TERR SET TRUNCATION ERROR + 00641 0 46 00010 484 FRM2 CBA + 00642 0 16 00066 485 MRG B0 + 00643 0 35 00036 486 STA LBL1+2 + 00644 0 76 00107 487 LDA B23 + 00645 0 55 00102 488 ADD B18 + 00646 0 63 00035 489 ADM LBL1+1 + 00647 0 76 00055 490 LDA LLBL + 00650 0 75 00047 491 LDB LMT +* 00651 0 43 00607 492 BRM NSRT INSERT FORM ITEM + 00652 0 53 00153 493 SKN PASS + 00653 0 01 00241 494 BRU LINE SKIP IF PASS1 +* 00654 0 43 00000 495 BRM EDE EDIT ERRORS +* 00655 0 43 00440 496 FRM4 BRM PRNT + 00656 0 01 00241 497 BRU LINE + 00657 0 53 00153 498 $PAGE SKN PASS + 00660 0 01 00241 499 BRU LINE +* 00661 0 43 00000 500 BRM HOME EJECT TO NEXT PAGE +* 00662 0 43 00655 501 BRM PRNT + 00663 0 01 00241 502 BRU LINE + 00664 0 46 30003 503 $AORG CLR + 00665 0 01 00667 504 BRU ORG1 + 00666 0 76 00073 505 $ORG LDA B8 + 00667 0 43 00673 506 ORG1 BRM ILOC GET NEW LOC + 00670 0 35 00142 507 STA LOC + 00671 0 43 00315 508 BRM DLBL DEFINE LABEL + 00672 0 01 00704 509 BRU BSS1 + 00673 0 00 00000 510 ILOC HLT 0 + 00674 0 35 00156 511 STA LOC1 +* 00675 0 43 00000 512 BRM MAXL SET MAXIMUM LOC +* 00676 0 43 00622 513 BRM SCAN GET INCREMENT + 00677 0 55 00156 514 ADD LOC1 + 00700 0 35 00156 515 STA LOC1 SAVE RESULT + 00701 0 51 00673 516 BRR ILOC EXIT + 00702 0 76 00142 517 $BSS LDA LOC OLD LOC + 00703 0 43 00673 518 BRM ILOC GET NEW LOC + 00704 0 53 00153 519 BSS1 SKN PASS TEST PASS + 00705 0 53 00117 520 SKN M1 D0NT PR1NT IF 1ST PASS +* 00706 0 43 00000 521 BRM EDTL PRINT LOCATION + 00707 0 76 00156 522 LDA LOC1 NEW LOCATION + 00710 0 35 00142 523 STA LOC + 00711 0 01 00241 524 BRU LINE +* 00712 0 43 00676 525 $DATA BRM SCAN + 00713 0 53 00153 526 SKN PASS + 00714 0 01 00722 527 BRU DATA1 + 00715 0 35 00145 528 STA WORD + 00716 0 36 00144 529 STB WMOD + 00717 0 76 00066 530 LDA B0 + 00720 0 35 00146 531 STA WRD2 +* 00721 0 43 00431 532 BRM EDIT + 00722 0 61 00142 533 DATA1 MIN LOC + 00723 0 76 00150 534 LDA TERM + 00724 0 50 00061 535 SKE CCHR + 00725 0 01 00241 536 BRU LINE + 00726 0 01 00712 537 BRU DATA + 00727 0 76 00123 538 $DED LDA M47 SCALE +* 00730 0 35 00254 539 STA SCALE +* 00731 0 43 00000 540 BRM DPW GET DOUBLE PRECISION WORD +* 00732 0 23 00000 541 EXU DPWR TO EXCHANGE OR NOT TO EXCHANGE + 00733 0 36 00145 542 STB WORD + 00734 0 35 00011 543 STA VALU + 00735 0 53 00153 544 SKN PASS + 00736 0 01 00742 545 BRU DED1 + 00737 0 76 00066 546 LDA B0 + 00740 0 35 00146 547 STA WRD2 +* 00741 0 43 00721 548 BRM EDIT + 00742 0 61 00142 549 DED1 MIN LOC + 00743 0 53 00153 550 SKN PASS + 00744 0 01 00752 551 BRU DED2 + 00745 0 76 00011 552 LDA VALU + 00746 0 35 00145 553 STA WORD + 00747 0 76 00066 554 LDA B0 + 00750 0 35 00146 555 STA WRD2 +* 00751 0 43 00741 556 BRM EDIT + 00752 0 61 00142 557 DED2 MIN LOC + 00753 0 76 00150 558 LDA TERM + 00754 0 50 00061 559 SKE CCHR + 00755 0 01 00241 560 BRU LINE + 00756 0 01 00727 561 BRU DED + 00757 562 $BCD RES + 00757 0 75 00115 563 LDB SPAC + 00760 0 01 00762 564 BRU $+2 + 00761 565 $TEXT RES 0 + 00761 0 75 00060 566 LDB BCHR + 00762 0 36 00033 567 STB BCIF +* 00763 0 76 00535 568 LDA CHR + 00764 0 50 01454 569 SKE ='<' + 00765 0 01 00772 570 BRU TEXT7 + 00766 0 76 00114 571 LDA P14 + 00767 0 35 00150 572 STA TERM + 00770 0 76 01455 573 LDA =55 + 00771 0 01 01002 574 BRU TEXT6 +* 00772 0 43 00000 575 TEXT7 BRM DECW + 00773 0 54 00107 576 TEXT1 SUB B23 + 00774 0 75 00101 577 LDB B17 + 00775 0 36 00150 578 STB TERM + 00776 0 73 01455 579 SKG =55 + 00777 0 01 01002 580 BRU TEXT6 + 01000 0 76 01455 581 LDA =55 + 01001 0 61 00022 582 MIN TERR + 01002 0 35 00031 583 TEXT6 STA CNTB +* 01003 0 43 00514 584 BRM GET + 01004 0 53 00031 585 TEXT2 SKN CNTB + 01005 0 53 00117 586 SKN M1 ALWAYS SKIP + 01006 0 01 00241 587 BRU LINE DONE + 01007 0 76 00033 588 LDA BCIF + 01010 0 64 01456 589 MUL =01010101 + 01011 0 67 00027 590 LSH 23 + 01012 0 35 00145 591 STA WORD SET WORD TO BLANK: + 01013 0 71 01457 592 LDX =00200000-4,X0 +* 01014 0 76 00763 593 TEXT3 LDA CHR + 01015 0 50 00060 594 SKE BCHR + 01016 0 01 01020 595 BRU $+2 + 01017 0 76 00033 596 LDA BCIF + 01020 0 50 00150 597 SKE TERM + 01021 0 01 01025 598 BRU TEXT8 + 01022 0 46 01000 599 CNA + 01023 0 35 00031 600 STA CNTB + 01024 0 01 01036 601 BRU TEXT4 + 01025 0 54 00033 602 TEXT8 SUB BCIF + 01026 0 75 00041 603 LDB Z + 01027 2 23 01051 604 EXU TEXT5,X2 EXECUTE SHIFT + 01030 0 63 00145 605 ADM WORD ADD CHARACTER TO WORD + 01031 0 37 00025 606 STX CNTR,X0 +* 01032 0 43 01003 607 BRM GET + 01033 0 71 00025 608 LDX CNTR,X0 + 01034 0 60 00031 609 SKR CNTB + 01035 0 41 01014 610 BRX TEXT3,X0 + 01036 0 76 00066 611 TEXT4 LDA B0 + 01037 0 35 00146 612 STA WRD2 + 01040 0 53 00153 613 SKN PASS + 01041 0 53 00117 614 SKN M1 YES +* 01042 0 43 00751 615 BRM EDIT EDIT ALPHA-NUMERIC WORD + 01043 0 61 00142 616 MIN LOC L+1 TO L + 01044 0 01 01004 617 BRU TEXT2 + 01045 0 67 00022 618 LSH 18 + 01046 0 67 00014 619 LSH 12 + 01047 0 67 00006 620 LSH 6 + 01050 0 20 00000 621 NOP 0 + 01051 622 TEXT5 RES 0 + 01051 0 76 00041 623 ENDPS LDA Z + 01052 0 35 00153 624 STA PASS FORCE END OF PASS 1 + 01053 625 $END RES 0 + 01053 0 53 00153 626 END1A SKN PASS + 01054 0 01 01056 627 BRU END1 END PASS 1 + 01055 0 01 01173 628 BRU END2 + 01056 629 END1 RES 0 +* 01056 0 43 00000 630 BRM ENDSI + 01057 0 76 00117 631 LDA M1 + 01060 0 35 00153 632 STA PASS CHANGE PASS + 01061 0 76 00142 633 LDA LOC + 01062 0 35 00157 634 STA LOCP SET LITERAL OR1GIN + 01063 0 35 00000 635 STA LADD SET 1ST LITERAL ADDRESS +* 01064 0 71 00000 636 LDX ERRC,X0 + 01065 0 76 00041 637 LDA Z + 01066 2 35 00024 638 END3 STA VERR,X2 CLEAR ERROR FLAGS + 01067 0 41 01066 639 BRX END3,X0 + 01070 0 35 00024 640 STA VERR +* 01071 0 35 00000 641 STA DWC + 01072 0 76 00106 642 LDA DEFT + 01073 0 35 00152 643 STA STYP + 01074 0 76 00107 644 LDA B23 + 01075 0 35 00151 645 STA CTYP + 01076 0 71 00120 646 LDX TPS,X0 + 01077 0 46 00200 647 END14 CXA + 01100 0 55 00116 648 ADD P3 + 01101 0 73 00154 649 SKG HIGH + 01102 0 53 00117 650 SKN M1 + 01103 0 01 01120 651 BRU END13 + 01104 0 46 00400 652 CAX + 01105 2 76 00001 653 LDA 1,X2 + 01106 0 72 00107 654 SKA EXTM + 01107 0 53 00117 655 SKN M1 + 01110 0 01 01077 656 BRU END14 + 01111 0 14 00120 657 ETR M2 + 01112 2 35 00001 658 STA 1,X2 + 01113 0 37 00145 659 STX WORD,X0 + 01114 0 37 00025 660 STX CNTR,X0 +* 01115 0 43 00000 661 BRM OUTP + 01116 0 71 00025 662 LDX CNTR,X0 + 01117 0 01 01077 663 BRU END14 + 01120 0 76 00041 664 END13 LDA Z + 01121 0 35 00005 665 STA LTR1 + 01122 0 76 00106 666 LDA B22 + 01123 0 35 00151 667 STA CTYP + 01124 0 76 00112 668 LDA TPM + 01125 0 55 00114 669 ADD TPM+2 + 01126 0 55 00116 670 ADD TPM+4 + 01127 0 35 00134 671 STA TPL ORICIN OF LITERAL TABLE + 01130 0 71 00056 672 LDX FRST,X0 + 01131 2 77 00003 673 EAX 3,X2 + 01132 0 37 00025 674 ENDP2 STX CNTR,X0 + 01133 2 76 00001 675 LDA 1,X2 + 01134 0 75 01452 676 LDB =07777 + 01135 0 70 01460 677 SKM =02040 + 01136 0 01 01146 678 BRU ENDP1 + 01137 2 76 00002 679 LDA 2,X2 + 01140 0 66 20020 680 RCY 16 + 01141 0 16 00005 681 MRG LTR1 + 01142 0 67 20020 682 LCY 16 + 01143 2 35 00002 683 STA 2,X2 + 01144 0 61 00005 684 MIN LTR1 +* 01145 0 43 01115 685 BRM OUTP + 01146 0 71 00025 686 ENDP1 LDX CNTR,X0 + 01147 2 77 00003 687 EAX 3,X2 + 01150 0 46 00200 688 CXA + 01151 0 50 00134 689 SKE TPL + 01152 0 01 01132 690 BRU ENDP2 + 01153 0 76 00041 691 LDA Z + 01154 0 35 00151 692 STA CTYP + 01155 0 76 00120 693 LDA TPS + 01156 0 35 00126 694 STA TPR ORIGIN OF REFERENCE TABLE + 01157 0 35 00127 695 STA TPR+1 + 01160 0 76 00111 696 LDA C01 + 01161 0 35 00131 697 STA TPR+3 + 01162 0 35 00133 698 STA TPR+5 + 01163 0 35 00135 699 STA TPL+1 + 01164 0 76 00117 700 LDA M1 + 01165 0 35 00137 701 STA TPL+3 +* 01166 0 76 00532 702 LDA DLY1 + 01167 0 71 01461 703 LDX =00200000-8,X0 +* 01170 2 35 00000 704 END8 STA CBUF,X2 CLEAR PRINT LINE + 01171 0 41 01170 705 BRX END8,X0 + 01172 0 01 00234 706 BRU BGN4 + 01173 0 76 00107 707 END2 LDA B23 + 01174 0 35 00004 708 STA EFLG +* 01175 0 76 01014 709 LDA CHR + 01176 0 50 00060 710 SKE BCHR + 01177 0 53 00117 711 SKN M1 ALWAYS SKIP + 01200 0 01 01210 712 BRU END4 NO TRANSFER +* 01201 0 43 00712 713 BRM SCAN GET TRANSFER ADDRESS + 01202 0 35 00145 714 STA WORD + 01203 0 76 00066 715 LDA B0 + 01204 0 35 00146 716 STA WRD2 +* 01205 0 43 00574 717 BRM EDTV EOTT + 01206 0 60 00004 718 SKR EFLG SET TRANSFER FLAG + 01207 0 01 01211 719 BRU END5 +* 01210 0 43 00662 720 END4 BRM PRNT PRINT + 01211 0 71 00134 721 END5 LDX TPL,X0 L1T TABLE ORIGIN + 01212 0 76 00157 722 LDA LOCP + 01213 0 35 00142 723 STA LOC + 01214 0 35 00005 724 STA LTR1 0 TO SEQUENCE + 01215 0 50 00000 725 END6 SKE LADD + 01216 0 01 01275 726 BRU PLTR LITERAL TO OUTPUT +* 01217 0 43 00675 727 BRM MAXL MAXIMUM LOCATION + 01220 0 76 00107 728 LDA REFT + 01221 0 35 00152 729 STA STYP + 01222 0 76 00107 730 LDA B23 + 01223 0 35 00151 731 STA CTYP + 01224 0 71 00050 732 LDX LRT,X0 1ST WORD OF REF TABLE + 01225 2 76 00000 733 LDA 0,X2 + 01226 0 55 00116 734 ADD P3 + 01227 0 35 00005 735 STA LTR1 + 01230 2 55 00002 736 ADD 2,X2 + 01231 2 55 00004 737 ADD 4,X2 + 01232 0 35 00006 738 STA LTR2 END OF REF TABLE + 01233 0 76 00006 739 END12 LDA LTR2 + 01234 0 73 00005 740 SKG LTR1 + 01235 0 01 01256 741 BRU END15 NO MORE REFS + 01236 0 76 00005 742 LDA LTR1 + 01237 0 35 00145 743 STA WORD + 01240 0 76 40005 744 LDA *LTR1 +* 01241 0 35 00000 745 STA EREF1 + 01242 0 61 00005 746 MIN LTR1 + 01243 0 76 40005 747 LDA *LTR1 + 01244 0 14 00111 748 ETR C01 + 01245 0 16 01462 749 MRG =' ' +* 01246 0 35 00000 750 STA EREF2 + 01247 0 61 00005 751 MIN LTR1 + 01250 0 76 40005 752 LDA *LTR1 + 01251 0 61 00005 753 MIN LTR1 + 01252 0 35 00142 754 STA LOC +* 01253 0 43 00706 755 BRM EDTL +* 01254 0 43 01145 756 BRM OUTP OUTPUT REF + 01255 0 01 01233 757 BRU END12 + 01256 0 76 00116 758 END15 LDA P3 + 01257 0 35 00151 759 STA CTYP END CARD TYPE + 01260 0 60 00004 760 SKR EFLG + 01261 0 01 01267 761 BRU END7 NO TRANSFER + 01262 0 76 00011 762 LDA VALU + 01263 0 35 00145 763 STA WORD ADDRESS + 01264 0 76 00010 764 LDA MODE + 01265 0 35 00144 765 STA WMOD +* 01266 0 43 01254 766 BRM OUTP OUTPUT TRANSFER CARD + 01267 0 76 00105 767 END7 LDA B21 + 01270 0 35 00151 768 STA CTYP +* 01271 0 43 01266 769 BRM OUTP CLEAR CARDS + 01272 770 END11 RES 0 +* 01272 0 43 00661 771 BRM HOME +* 01273 0 43 00000 772 BRM WEOF + 01274 0 01 00127 773 BRU BGN + 01275 0 46 00200 774 PLTR CXA + 01276 0 55 00116 775 ADD P3 CURRENT SEQUENCE + 01277 0 46 00400 776 CAX + 01300 2 76 00002 777 LDA 2,X2 + 01301 0 50 00005 778 PLT2 SKE LTR1 + 01302 0 01 01320 779 BRU PLT1 OUT OF SEQUENCE + 01303 2 76 00000 780 LDA 0,X2 + 01304 0 35 00145 781 STA WORD VALUE + 01305 2 76 00001 782 LDA 1,X2 + 01306 0 35 00144 783 STA WMOD MODE + 01307 0 76 00066 784 LDA B0 + 01310 0 35 00146 785 STA WRD2 + 01311 0 37 00006 786 STX LTR2,X0 +* 01312 0 43 01042 787 BRM EDIT + 01313 0 71 00006 788 LDX LTR2,X0 RESTORE + 01314 0 61 00005 789 MIN LTR1 ICREMENT SEQUENCE + 01315 0 76 00005 790 LDA LTR1 + 01316 0 61 00142 791 MIN LOC + 01317 0 01 01215 792 BRU END6 + 01320 0 54 00157 793 PLT1 SUB LOCP + 01321 0 35 00025 794 STA CNTR + 01322 0 55 00025 795 ADD CNTR + 01323 0 55 00025 796 ADD CNTR 3 * SEQUENCE + 01324 0 55 00116 797 ADD P3 + 01325 0 55 00134 798 ADD TPL + 01326 0 35 00007 799 STA LTR3 CORRECT POS1TION + 01327 2 76 00000 800 LDA 0,X2 + 01330 0 62 40007 801 XMA *LTR3 EXCHANGE LITERALS + 01331 2 35 00000 802 STA 0,X2 + 01332 0 61 00007 803 MIN LTR3 + 01333 2 76 00001 804 LDA 1,X2 + 01334 0 62 40007 805 XMA *LTR3 + 01335 2 35 00001 806 STA 1,X2 + 01336 0 61 00007 807 MIN LTR3 + 01337 2 76 00002 808 LDA 2,X2 + 01340 0 62 40007 809 XMA *LTR3 + 01341 2 35 00002 810 STA 2,X2 + 01342 0 01 01301 811 BRU PLT2 + 01343 0 76 00113 812 FREF LDA P24 + 01344 0 35 00026 813 STA CNT1 NO. OF BITS LEFT + 01345 0 76 00121 814 LDA M5 + 01346 0 35 00030 815 STA CNT3 SET FIELD COUNT + 01347 0 76 00145 816 LDA WORD + 01350 0 35 00147 817 STA WRD1 SAVE FORM FOR ED1T + 01351 0 35 00146 818 STA WRD2 + 01352 0 76 00041 819 LDA Z + 01353 0 35 00145 820 STA WORD 0 TO DATA + 01354 0 75 00066 821 LDB B0 +* 01355 0 43 00000 822 FR4 BRM FLDC COUNT BITS IN FIELD + 01356 0 01 01415 823 BRU FR5 NO MORE FIELD5 + 01357 0 61 00030 824 MIN CNT3 + 01360 0 35 00027 825 STA CNT2 FIELD SIZE +* 01361 0 50 00000 826 SKE AB ADDRESS BITS + 01362 0 01 01370 827 BRU FR2 N0T ADDRESS SIZE + 01363 0 50 00026 828 SKE CNT1 BITS LEFT + 01364 0 01 01370 829 BRU FR2 NOT ADDRESS FIELD +* 01365 0 43 00401 830 BRM SCNL + 01366 0 36 00144 831 STB WMOD + 01367 0 01 01374 832 BRU FR3 +* 01370 0 43 01201 833 FR2 BRM SCAN GET NON-ADDRESS FIELD + 01371 0 43 01432 834 BRM SKB + 01372 0 00 00106 835 HLT RELM + 01373 0 61 00021 836 MIN RERR SET R FLAG + 01374 0 75 00041 837 FR3 LDB Z + 01375 0 71 00027 838 LDX CNT2,X0 + 01376 2 66 00000 839 RSH 0,X2 LEFT ADLUST IN B + 01377 0 50 00041 840 SKE Z + 01400 0 01 01423 841 BRU FR6 + 01401 0 76 00041 842 FR1 LDA Z + 01402 0 71 00026 843 LDX CNT1,X0 + 01403 2 67 00000 844 LSH 0,X2 + 01404 0 16 00145 845 MRG WORD INSERT FIELD IN WORD + 01405 0 35 00145 846 STA WORD + 01406 0 76 00026 847 LDA CNT1 + 01407 0 54 00027 848 SUB CNT2 DECREMENT BITS LEFT + 01410 0 35 00026 849 STA CNT1 + 01411 0 76 00150 850 LDA TERM + 01412 0 50 00061 851 SKE CCHR TEST FOR COMMA + 01413 0 01 01415 852 BRU FR5 END OF REFERENCE + 01414 0 01 01355 853 BRU FR4 PROCES5 NEXT FIELD + 01415 0 76 00147 854 FR5 LDA WRD1 + 01416 0 35 00146 855 STA WRD2 SET FDRM FOR PRNTTNG + 01417 0 76 00066 856 LDA B0 + 01420 0 53 00030 857 SKN CNT3 + 01421 0 35 00146 858 STA WRD2 TOO MANY FIELDS TO EDIT + 01422 0 01 00425 859 BRU LIN8 + 01423 0 50 00117 860 FR6 SKE M1 + 01424 0 61 00022 861 MIN TERR + 01425 0 43 01432 862 BRM SKB + 01426 0 00 00066 863 HLT B0 + 01427 0 53 00117 864 SKN M1 + 01430 0 61 00022 865 MIN TERR + 01431 0 01 01401 866 BRU FR1 + 01432 0 00 00000 867 $SKB HLT + 01433 0 62 01432 868 XMA SKB + 01434 0 55 01444 869 ADD IND1 + 01435 0 62 01432 870 XMA SKB + 01436 0 46 00014 871 XAB + 01437 0 72 41432 872 SKA *SKB + 01440 0 01 01442 873 BRU $+2 + 01441 0 61 01432 874 MIN SKB + 01442 0 46 00014 875 XAB + 01443 0 51 01432 876 BRR SKB + 01444 0 00 40001 877 IND1 HLT *1 + 878 $M1,LINE,B0,P14,BCIF,SPAC,TEXT1,M23 + 879 $IERR,INR1,DLBL,FRM4,XFLG,OPD1 + 880 $B11,C3,Z + 881 END + 01445 00177750 + 01446 07700000 + 01447 00040000 + 01450 00077777 + 01451 00000073 + 01452 00007777 + 01453 00002140 + 01454 00000036 + 01455 00000067 + 01456 01010101 + 01457 00177774 + 01460 00002040 + 01461 00177770 + 01462 00006060 + 00227 LITM + 00225 LOP + 00301 LSYM + 01217 MAXL + 00235 MLOC + 00057 MTE + 00056 MT + 00356 NAB + 00651 NSRT + 01271 OUTP + 00304 POPI + 00343 POPR + 01210 PRNT + 00257 READ + 00730 SCALE + 01370 SCAN + 00223 SCIX + 01365 SCNL + 00221 SCNX + 00460 SKSEOD + 00300 SM1 + 00553 SRCH + 00524 SYM + 01273 WEOF + 00415 XMSK + 01361 AB + 00361 ADDR + 00236 ALN + 01170 CBUF + 01175 CHR + 00521 CTT + 00772 DECW + 01166 DLY1 + 00732 DPWR + 00731 DPW + 01071 DWC + 00256 EDCT + 00654 EDE + 01312 EDIT + 01253 EDTL + 01205 EDTV + 01056 ENDSI + 00462 EODI + 00451 EOD + 00372 EOM + 01241 EREF1 + 01246 EREF2 + 01064 ERRC + 01355 FLDC + 00307 FLD + 00576 FORCEO + 01032 GET + 01272 HOME + 00405 INDB + 00423 INST \ No newline at end of file diff --git a/symbol/section-4.si b/symbol/section-4.si new file mode 100644 index 0000000..f0f3b53 --- /dev/null +++ b/symbol/section-4.si @@ -0,0 +1,880 @@ +* S1 +* +CAB OPD 016400000 +CBA OPD 016500000 +CAX OPD 016600000 +CXA OPD 016700000 +CBX OPD 017000000 +CNA OPD 017100000 +SKE OPD 017200000 +SKR OPD 017300000 +MUL OPD 017400000 +DIV OPD 017500000 +ADM OPD 017600000 +XMA OPD 017700000 +S9300 EQU 0 +X0 EQU S9300 +X2 EQU 2-S9300 +IN EQU 1 +OUT EQU 2 + AORG 1 + BRU BGN RESTART + AORG 34 +SXT RES 4 +SCXT RES 4 +$SOT RES 16 +SIT RES 16 +TPM RES 6 +TPS RES 6 +TPR RES 6 +$TPL RES 6 +ENDP RES 0 +$LOC RES 1 +$PMOD RES 1 +$WMOD RES 1 +$WORD RES 1 +$WRD2 RES 1 +$WRD1 RES 1 +$TERM RES 1 +$CTYP RES 1 +$STYP RES 1 +$PASS RES 1 +HIGH RES 1 +$LIMT RES 1 +LOC1 RES 1 +LOCP RES 1 + ORG 0 +$LADD RES 1 +$OCTF RES 1 +XFLG RES 1 +$IFLG RES 1 +EFLG RES 1 +$LTR1 RES 1 +$LTR2 RES 1 +$LTR3 RES 1 +$MODE RES 1 +$VALU RES 1 +$XERR RES 1 +$OERR RES 1 +$DERR RES 1 +$EERR RES 1 +IERR RES 1 +LERR RES 1 +$PERR RES 1 +$RERR RES 1 +$TERR RES 1 +$UERR RES 1 +$VERR RES 1 +$CNTR RES 1 +CNT1 RES 1 +CNT2 RES 1 +CNT3 RES 1 +CNTB RES 1 +$LN RES 1 +BCIF RES 1 +$LBL1 RES 1 +$LBL1P1 RES 1 +$LBL1P2 RES 1 +IOC RES 1 +$X RES 1 +Z RES 0 +CT DATA 000000000 + DATA 000000100 +B1 RES 0 + DATA 020000000 + DATA 020000100 +B3 RES 0 + DATA 004000000 +$LST HLT TPS +LMT HLT TPM LOCAT1ON OF MNEMONIC TABLE PACKET +$LRT HLT TPR +$LSXT HLT SXT +LSCX HLT SCXT +LSOT HLT SOT LOCATION OF SCAN CONECTER +LSIT HLT SIT LOCATION OF SCAN ITEM +LLBL HLT LBL1 LOCATION OF LBL +FRST HLT MT 1ST MNEMONIC TABLE LOCATION +FINL HLT MTE FINAL MNEMONIC TABLE LOCATION +$BCHR DATA 060 +$CCHR DATA 073 +DCHR DATA 053 +$SCHR DATA 054 +$A7 DATA 07 +A57 DATA 0777 +B0 DATA 040000000 +B4 DATA 02000000 +B5 DATA 01000000 +B6 DATA 0400000 +B7 DATA 0200000 +$B8 DATA 0100000 +B11 DATA 010000 +B12 DATA 04000 +B13 DATA 02000 +B14 DATA 01000 +B16 DATA 0200 +B17 DATA 0100 +B18 DATA 040 +B19 DATA 020 +B20 DATA 010 +B21 DATA 04 +B22 DATA 2 +B23 DATA 1 +C3 DATA 077 +C01 DATA 077770000 +P66 DATA 66 +P24 DATA 24 +P14 DATA 016 +P10 DATA 10 +P3 DATA 3 +M1 DATA -1 +M2 DATA -2 +M5 DATA -5 +M23 DATA -23 +M47 DATA -47 +MC DATA 030000000 +BPM DATA 0740 +LL DATA 034 +$IC EQU B3 +$CC EQU B4 +LC EQU B5 +$SC EQU B6 +$DC EQU B7 +$OC EQU B8 +$REFM EQU B16 +$DUPM EQU B17 +$RELM EQU B22 +EXTM EQU B23 +SPAC EQU P10 +REFT EQU B23 +DEFT EQU B22 +BGN RES 0 + CLR + STA LN +BGNB RES 0 + LDX FRST,X0 + EAX 3,2 + STX CNTR,X0 +RST2 LDA 1,X2 + SKA B18 TEST ASSEMBLER DEFINED + BRU RST1 DONT SAVE PROGRAMMER DEFINED + LDB 0,X2 + STB *CNTR SAVE 1ST WORD + MIN CNTR + LDB 1,X2 + STB *CNTR SAVE 2ND WORD + MIN CNTR + LDB 2,X2 + STB *CNTR SAVE 3RD WORD + MIN CNTR +RST1 EAX 3,X2 ADDRESS OF NEXT FROM WORD + LDA CNTR ADDRESS OF NEXT TO WORD + SKE FINL TEST FOR END OF COMMAND TABLE + BRU RST2 +BGN2 LDX =00200000-24,X0 + LDA Z +BGN3 STA ENDP,X2 CLEAR ALL PACKETS + BRX BGN3,X0 + LDA HIGH HIGHEST LOCATION + SUB P3 + STA TPS BASE OF SYMBOL TABLE + STA TPS+1 + LDA C01 + STA TPS+3 + STA TPS+5 + LDA FRST + SUB P3 + STA TPM BASE OF MNEMONIC 1ABLE + LDA C01 + STA TPM+3 + LDA FINL + SUB FRST + LDX P24,X0 + STA CNTR NO. OF WORDS IN TABLE + NOD 24 + ETR MC + SUB B3 + SKA B1 + ADD B3 + ABC + LSH 0,X2 + STA TPM+2 + LDA CNTR + SUB TPM+2 + STA TPM+4 + ADD FRST + STA TPM+1 + LDA Z + STA PASS SET PASS1 + STA CTYP + LDA LSXT + STA SCNX SET SCAN EXIT + LDA LSCX + STA SCIX + LDA LSOT + STA LOP SET SCAN CONNECTER + LDA LSIT + STA LITM SET SCAN ITEM + LDA FINL 1ST AVAILABLE CELL + SUB HIGH + STA LIMT MINUS NO. OF CELLS AVAILABLE + HLT +BGN4 LDA Z + STA MLOC 0 TO MAX LOC + STA ALN + LDA B8 + STA LOC +LINE LDA Z + STA PMOD + STA WMOD 0 TO MODE + STA XFLG RESET EXTERNALFLAG + STA IFLG RESET INDIRECT FLAG + STA LBL1 RESET LABEL + STA STYP + STA LERR + LDA M1 + STA OCTF RESET OCTAL FLAG + LDA M23 + STA SCALE + LDA LL + STA EDCT + BRM READ READ LINE + SKE BCHR TEST FOR BLANK LABEL + BRU LIN1 PROCESS LABEL FIELD +LIN6 BRM FLD SKIP TO OPERATION + SKE BCHR + BRU LP1 + BRM LXL + BRU LIN10 +LP1 BRM SYM + LDA CHR + SKE SCHR TEST FOR * + SKR IFLG + MIN IFLG SET 1FLAG + SKE SCHR + SKN M1 ALWAY5 SK1P + BRM GET SKIP * + SKE BCHR TEST FOR BLANK + STA SM1 UNDEFINED COMMAND + LDA LSYM + LDB LMT + BRM SRCH LODK UP MNEMONIC + BRU POPI +$POPIRT STA WORD + STB MODE SAVE TYPE + BRM FLD SKIP TO OPERAND FIELD + LDA MODE + SKA B21 + BRU *WORD + BRM DLBL DEFINE LABEL + BRU LIN7 +DLBL HLT 0 + LDA LBL1 + SKE Z + SKE LBL1 + BRR DLBL EXIT + LDA LBL1+1 + LDB LOC + STB LBL1+2 + BRM SKB + HLT B8 + MRG B22 + STA LBL1+1 + LDA LLBL + LDB LST + BRM NSRT INSERT IN SYMBOL TABLE + BRR DLBL EXIT LABEL DEFINE +LIN7 LDA MODE + SKA B22 + BRU *WORD + SKN PASS + BRU LIN2 1ST PASS + SKA B13 + BRU POPR + SKA B23 + BRU FREF + SKA B20 + BRU INR3 + LDB M1 + SKA B19 + LDB FORCEO + STB OCTF OCTAL ADDRESS +INR1 BRM SCNL GET INSTRUCTION ADDRESS +INR1A ROV + LDX NAB,X0 + LSH 0,X2 + RSH 0,X2 + ETR ADDR + MRG WORD +INR9 OVT + MIN TERR SET T ERROR + STB WMOD + LDB =07700000 + SKM EOD + BRU INR93 + BRU INR92 +INR93 SKM EOM + BRU INR91 +INR92 SKN IFLG + MRG =040000 + BRU INR94 +$PZE SKN PASS + BRU LIN2 + BRM SCNL + STB WMOD + ETR =077777 +INR91 SKN IFLG + MRG INDB SET INDIRECT BIT +INR94 STA WORD + LDA M1 + STA OCTF RESET OCTALFLAG + LDA TERM + SKE CCHR + BRU LIN3 + BRM SCAN GET INDEX + ETR XMSK MASK X FIELD + SKE VALU + MIN TERR SET TRUNCATION ERROR + LSH 21 POSITION X FIELD +$INR2 MRG WORD + STA WORD +$LIN3 LDA INST + STA WRD2 INSTRUCTION FORM +LIN8 LDA BCHR + SKE TERM TEST FOR BLANK + MIN EERR SET ERROR + STA TERM + BRM EDIT EDIT INSTRUCTION +$LIN2 MIN LOC L+1 TO L + BRU LINE +LIN1 SKE SCHR TEST FOR * + BRU LIN4 +$NOP0 RES 0 +LIN10 SKN PASS + BRU LINE SKIP IF 1ST PASS + BRM PRNT PRINT COMMENTS LINE + BRU LINE +INR3 LDA MODE + SKA B12 + BRU $+2 + BRU INR31 + BRM SCAN + LDB Z + SKA B21 + LDB EOD + ETR P3 + CAX + BAC + MRG CT,X2 + MRG WORD + LDB =07700000 + SKM SKSEOD + BRU $+2 + EOR EODI + STA WORD + LDA TERM + SKE CCHR + BRU LIN3 +INR31 LDA =040000 + SKN IFLG + ADM WORD + BRM SCAN + ETR C3 + SKE VALU + MIN TERR + ADM WORD INSERT UNIT + LDA TERM + SKE CCHR + BRU LIN3 + BRM SCAN GET CHAR/WORD + SKE Z + SUB B23 + ETR P3 + LSH 7 POSITION CHAR/WORD + BRU INR2 +LIN4 SKE DCHR TEST FOR $ + BRU LIN5 + SKN PASS + MIN XFLG SET EXTERNAL FLAG +LIN49 BRM GET +LIN5 LDB SC CHECK FOR LABEL CHARACTER + SKG Z + MIN LERR 1ST CHAR= 0 P ) + BRM SKB + HLT CTT,X2 + BRU LIN9 +LIN11 MIN LERR SET LABEL FIELD ERROR FLAG +LIN9 BRM SYM + STA LBL1 SAVE + CBA + MRG XFLG SET EXTERNALMODE + STA LBL1+1 + MRG LBL1 + SKA DLY1 TDST FOR AT LEST 1 ALPHABETEC + SKN M1 ALWAYS SKIP + MIN LERR + LDA CHR + SKE =',' + BRU LIN99 + BRM LXL + BRU LIN49 +LIN99 SKE BCHR + MIN LERR ILLEGAL CHARACTER IN LABEL + LDA Z + SKE LERR TEST FOR LABEL ERROR + STA LBL1 DONT ENTER LABEL + BRU LIN6 +LXL HLT 0 + LDA LLBL + LDB LST + BRM SRCH + BRR LXL + CBA + MRG XFLG + STA 1,X2 + BRR LXL +$EQU BRM SCAN GET VALUE + STA WORD + XAB + ETR M2 + ADM LBL1+1 + STB LBL1+2 + LDA LLBL + LDB LST +EQU1 BRM NSRT INSERT IN SYMBOL TABLE +EQU2 SKN PASS + BRU LINE + BRM EDTV PR1NT + BRU LINE +$OPD LDA FORCEO + STA OCTF SET OCTAL FLAG + BRM SCAN GET VALUE + STA WORD + STA LBL1+2 + LDA B18 + ADM LBL1+1 +OPD1 LDA LLBL + LDB LMT + BRM NSRT + ETR =07777 + SKE =02140 + BRU EQU2 + LDA LBL1+1 + STA 1,X2 + LDA LBL1+2 + STA 2,X2 + BRU EQU2 +$FORM CLR +FRM3 STB WRD2 STORE FORM WORD + BRM SCAN GET FIELD LENGTH + CAX + LDB WRD2 + LDA B0 + LCY 0,X2 INSERT NEW FIELD + SKA M1 + BRU FRM1 MORE THAN 24 BITS + BRM SKB + HLT B0 + BRU FRM2 END OF FORM + LDA TERM + SKE CCHR + BRU FRM1 LESS THAN 24 BITS + BRU FRM3 PROCESS NEXT FIELD +FRM1 MIN TERR SET TRUNCATION ERROR +FRM2 CBA + MRG B0 + STA LBL1+2 + LDA B23 + ADD B18 + ADM LBL1+1 + LDA LLBL + LDB LMT + BRM NSRT INSERT FORM ITEM + SKN PASS + BRU LINE SKIP IF PASS1 + BRM EDE EDIT ERRORS +FRM4 BRM PRNT + BRU LINE +$PAGE SKN PASS + BRU LINE + BRM HOME EJECT TO NEXT PAGE + BRM PRNT + BRU LINE +$AORG CLR + BRU ORG1 +$ORG LDA B8 +ORG1 BRM ILOC GET NEW LOC + STA LOC + BRM DLBL DEFINE LABEL + BRU BSS1 +ILOC HLT 0 + STA LOC1 + BRM MAXL SET MAXIMUM LOC + BRM SCAN GET INCREMENT + ADD LOC1 + STA LOC1 SAVE RESULT + BRR ILOC EXIT +$BSS LDA LOC OLD LOC + BRM ILOC GET NEW LOC +BSS1 SKN PASS TEST PASS + SKN M1 D0NT PR1NT IF 1ST PASS + BRM EDTL PRINT LOCATION + LDA LOC1 NEW LOCATION + STA LOC + BRU LINE +$DATA BRM SCAN + SKN PASS + BRU DATA1 + STA WORD + STB WMOD + LDA B0 + STA WRD2 + BRM EDIT +DATA1 MIN LOC + LDA TERM + SKE CCHR + BRU LINE + BRU DATA +$DED LDA M47 SCALE + STA SCALE + BRM DPW GET DOUBLE PRECISION WORD + EXU DPWR TO EXCHANGE OR NOT TO EXCHANGE + STB WORD + STA VALU + SKN PASS + BRU DED1 + LDA B0 + STA WRD2 + BRM EDIT +DED1 MIN LOC + SKN PASS + BRU DED2 + LDA VALU + STA WORD + LDA B0 + STA WRD2 + BRM EDIT +DED2 MIN LOC + LDA TERM + SKE CCHR + BRU LINE + BRU DED +$BCD RES + LDB SPAC + BRU $+2 +$TEXT RES 0 + LDB BCHR + STB BCIF + LDA CHR + SKE ='<' + BRU TEXT7 + LDA P14 + STA TERM + LDA =55 + BRU TEXT6 +TEXT7 BRM DECW +TEXT1 SUB B23 + LDB B17 + STB TERM + SKG =55 + BRU TEXT6 + LDA =55 + MIN TERR +TEXT6 STA CNTB + BRM GET +TEXT2 SKN CNTB + SKN M1 ALWAYS SKIP + BRU LINE DONE + LDA BCIF + MUL =01010101 + LSH 23 + STA WORD SET WORD TO BLANK: + LDX =00200000-4,X0 +TEXT3 LDA CHR + SKE BCHR + BRU $+2 + LDA BCIF + SKE TERM + BRU TEXT8 + CNA + STA CNTB + BRU TEXT4 +TEXT8 SUB BCIF + LDB Z + EXU TEXT5,X2 EXECUTE SHIFT + ADM WORD ADD CHARACTER TO WORD + STX CNTR,X0 + BRM GET + LDX CNTR,X0 + SKR CNTB + BRX TEXT3,X0 +TEXT4 LDA B0 + STA WRD2 + SKN PASS + SKN M1 YES + BRM EDIT EDIT ALPHA-NUMERIC WORD + MIN LOC L+1 TO L + BRU TEXT2 + LSH 18 + LSH 12 + LSH 6 + NOP 0 +TEXT5 RES 0 +ENDPS LDA Z + STA PASS FORCE END OF PASS 1 +$END RES 0 +END1A SKN PASS + BRU END1 END PASS 1 + BRU END2 +END1 RES 0 + BRM ENDSI + LDA M1 + STA PASS CHANGE PASS + LDA LOC + STA LOCP SET LITERAL OR1GIN + STA LADD SET 1ST LITERAL ADDRESS + LDX ERRC,X0 + LDA Z +END3 STA VERR,X2 CLEAR ERROR FLAGS + BRX END3,X0 + STA VERR + STA DWC + LDA DEFT + STA STYP + LDA B23 + STA CTYP + LDX TPS,X0 +END14 CXA + ADD P3 + SKG HIGH + SKN M1 + BRU END13 + CAX + LDA 1,X2 + SKA EXTM + SKN M1 + BRU END14 + ETR M2 + STA 1,X2 + STX WORD,X0 + STX CNTR,X0 + BRM OUTP + LDX CNTR,X0 + BRU END14 +END13 LDA Z + STA LTR1 + LDA B22 + STA CTYP + LDA TPM + ADD TPM+2 + ADD TPM+4 + STA TPL ORICIN OF LITERAL TABLE + LDX FRST,X0 + EAX 3,X2 +ENDP2 STX CNTR,X0 + LDA 1,X2 + LDB =07777 + SKM =02040 + BRU ENDP1 + LDA 2,X2 + RCY 16 + MRG LTR1 + LCY 16 + STA 2,X2 + MIN LTR1 + BRM OUTP +ENDP1 LDX CNTR,X0 + EAX 3,X2 + CXA + SKE TPL + BRU ENDP2 + LDA Z + STA CTYP + LDA TPS + STA TPR ORIGIN OF REFERENCE TABLE + STA TPR+1 + LDA C01 + STA TPR+3 + STA TPR+5 + STA TPL+1 + LDA M1 + STA TPL+3 + LDA DLY1 + LDX =00200000-8,X0 +END8 STA CBUF,X2 CLEAR PRINT LINE + BRX END8,X0 + BRU BGN4 +END2 LDA B23 + STA EFLG + LDA CHR + SKE BCHR + SKN M1 ALWAYS SKIP + BRU END4 NO TRANSFER + BRM SCAN GET TRANSFER ADDRESS + STA WORD + LDA B0 + STA WRD2 + BRM EDTV EOTT + SKR EFLG SET TRANSFER FLAG + BRU END5 +END4 BRM PRNT PRINT +END5 LDX TPL,X0 L1T TABLE ORIGIN + LDA LOCP + STA LOC + STA LTR1 0 TO SEQUENCE +END6 SKE LADD + BRU PLTR LITERAL TO OUTPUT + BRM MAXL MAXIMUM LOCATION + LDA REFT + STA STYP + LDA B23 + STA CTYP + LDX LRT,X0 1ST WORD OF REF TABLE + LDA 0,X2 + ADD P3 + STA LTR1 + ADD 2,X2 + ADD 4,X2 + STA LTR2 END OF REF TABLE +END12 LDA LTR2 + SKG LTR1 + BRU END15 NO MORE REFS + LDA LTR1 + STA WORD + LDA *LTR1 + STA EREF1 + MIN LTR1 + LDA *LTR1 + ETR C01 + MRG =' ' + STA EREF2 + MIN LTR1 + LDA *LTR1 + MIN LTR1 + STA LOC + BRM EDTL + BRM OUTP OUTPUT REF + BRU END12 +END15 LDA P3 + STA CTYP END CARD TYPE + SKR EFLG + BRU END7 NO TRANSFER + LDA VALU + STA WORD ADDRESS + LDA MODE + STA WMOD + BRM OUTP OUTPUT TRANSFER CARD +END7 LDA B21 + STA CTYP + BRM OUTP CLEAR CARDS +END11 RES 0 + BRM HOME + BRM WEOF + BRU BGN +PLTR CXA + ADD P3 CURRENT SEQUENCE + CAX + LDA 2,X2 +PLT2 SKE LTR1 + BRU PLT1 OUT OF SEQUENCE + LDA 0,X2 + STA WORD VALUE + LDA 1,X2 + STA WMOD MODE + LDA B0 + STA WRD2 + STX LTR2,X0 + BRM EDIT + LDX LTR2,X0 RESTORE + MIN LTR1 ICREMENT SEQUENCE + LDA LTR1 + MIN LOC + BRU END6 +PLT1 SUB LOCP + STA CNTR + ADD CNTR + ADD CNTR 3 * SEQUENCE + ADD P3 + ADD TPL + STA LTR3 CORRECT POS1TION + LDA 0,X2 + XMA *LTR3 EXCHANGE LITERALS + STA 0,X2 + MIN LTR3 + LDA 1,X2 + XMA *LTR3 + STA 1,X2 + MIN LTR3 + LDA 2,X2 + XMA *LTR3 + STA 2,X2 + BRU PLT2 +FREF LDA P24 + STA CNT1 NO. OF BITS LEFT + LDA M5 + STA CNT3 SET FIELD COUNT + LDA WORD + STA WRD1 SAVE FORM FOR ED1T + STA WRD2 + LDA Z + STA WORD 0 TO DATA + LDB B0 +FR4 BRM FLDC COUNT BITS IN FIELD + BRU FR5 NO MORE FIELD5 + MIN CNT3 + STA CNT2 FIELD SIZE + SKE AB ADDRESS BITS + BRU FR2 N0T ADDRESS SIZE + SKE CNT1 BITS LEFT + BRU FR2 NOT ADDRESS FIELD + BRM SCNL + STB WMOD + BRU FR3 +FR2 BRM SCAN GET NON-ADDRESS FIELD + BRM SKB + HLT RELM + MIN RERR SET R FLAG +FR3 LDB Z + LDX CNT2,X0 + RSH 0,X2 LEFT ADLUST IN B + SKE Z + BRU FR6 +FR1 LDA Z + LDX CNT1,X0 + LSH 0,X2 + MRG WORD INSERT FIELD IN WORD + STA WORD + LDA CNT1 + SUB CNT2 DECREMENT BITS LEFT + STA CNT1 + LDA TERM + SKE CCHR TEST FOR COMMA + BRU FR5 END OF REFERENCE + BRU FR4 PROCES5 NEXT FIELD +FR5 LDA WRD1 + STA WRD2 SET FDRM FOR PRNTTNG + LDA B0 + SKN CNT3 + STA WRD2 TOO MANY FIELDS TO EDIT + BRU LIN8 +FR6 SKE M1 + MIN TERR + BRM SKB + HLT B0 + SKN M1 + MIN TERR + BRU FR1 +$SKB HLT + XMA SKB + ADD IND1 + XMA SKB + XAB + SKA *SKB + BRU $+2 + MIN SKB + XAB + BRR SKB +IND1 HLT *1 +$M1,LINE,B0,P14,BCIF,SPAC,TEXT1,M23 +$IERR,INR1,DLBL,FRM4,XFLG,OPD1 +$B11,C3,Z + END diff --git a/symbol/section-5.bo b/symbol/section-5.bo new file mode 100644 index 0000000..ed20faf --- /dev/null +++ b/symbol/section-5.bo @@ -0,0 +1 @@ + ##sdpppp @#&gppppp @C#28dpppp @@dQ7#pppp nd#&pppp @%2)spppp I/&svpppp On2Q#ppp @*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ m2Q%pppp C 27pppp @E2%#pppp F2%dpppp 2%7pppp @2dppppp @]2)Xpppp IC28dppppp h@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ssppppp FTvpppp Tgvppppp L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%]O@@@@@] @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%W@@FX)X)@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]u@@I%s@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]Fz@@L@@@@@@@@@@@@@@@8@@@@@8@@@@@@@@@@@@@@@@@E@@@/@@@I@@@E@@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]J%@@^2dp2dCp78b8#bp#bdp#bgp#b2p#bsp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]g@/@@%R%@@@ 2@@@d@@@ @@@@ @@@@@@@E@@@@@=@@I1@@pu@C4I@mWau%>@@8@@@@@8#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@];b8#8#8#8#8#8#8#8#8#@@@@@@@@E @@@@@@@@@X@[E #E #E #E #E #E #E #E #yC@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]|gE #@@@ @@@ @@@@@@@@C@@@@IE #E #E #E #E #E #E #E #E #@@@@EmF@Em@@@[@@@L@@@@@@ O>p@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]W7@&gE #E #E #E #E #E #E #E #@@@@@@@FQ@@@R@@@@@@@@@@p@@E@ @%X@@XC XEF@@@@yn@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]OCh@ EX@@Ep@ Cp@@h@LXIC@Wp@h@@h@@ @@Ch@@Cp@@Ep@@Ch@@FXJEp @XXgEFm4@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]7g@@@@XC p@@X@C p@FE@@C pEXEgCh)F@@p@@h@@XIC@C [ChCp]p@@h@@h@[WWs@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]Jph@Wp@ 4p@X@pyhzEgCh@XJEs@C@8pCEg@@@@s@CC,@CChC ChCECh@FWhFX@@@@@@I=s|@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]=CW@C@C%F@CF@pCQC,@CpCC,@pCp@XChC]CpC[CXFpChC#h@Q@C@C,@C@C4@C@@@;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]#C/pC& Qp@p@E@@@@CypuE@@@@C>@C;puE@CvF@@pCbEC Xa@C|h@Q@u @R vFp@Fp@,@Cu/y@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]IQ@R@4@LJ@@*@,@n@2@8@>@|@@p@@FX@CFX@pC/@Cg@@@@hCXC@F@bF@@/^@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]d=XJs@CELFh#Cp@@Ch@E@@/Xh@@X[@F@/s@CEh@uh@^F@]Fz@Fp@]Ch@]Cp@^n=77@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]7h)X@@@|F@d@1p@]p@^@@@Eh@X*@@@@@Ed7F^p@^X Q @2Cp@^E@F@@p@]//=@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]|XEOX Q@R@Eh@^@FE hEp@]h@^@E[Fz@Fp@@F@z@E 4Ch@^Cp@]p@@h@@XICF2p@L%F@@k|@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]>dEg Qp@LXE@@ 8EpCdE@@@@E8Xhp@h@@XE)@F@EyF@@@XEpp;h=hE* EkE/,;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]>gEp@FpC|@TFE@T@F F8@FpEmChFXE8hE@4@FXFIhpFEp@X@@F)pC C,@p/@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]ynFWC,@EF@EF@F@CF@XF XC pTFX@FX@CFX@FX@E4@ECh4@ChC pFOEFC;XFE@u@F*XF*s@C>@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]h]F/E@@@@hE2XEs@F@FzChCzFEXFmpWEFpp@E@En@ICh@FXF7E@8@Chu@h@/Cp@IE@y@W/>@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]8mhz@WhFCp@IXF2@@@Q@TC8FuXF>p@I @pF8EFpCh@FXOh@IE@@F@F8@FCp@I@OpFgChpR@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]1O4@CE|F@@@FFCp^8 p@L%Cpd@T8]@] *@]FX,phd@C@ E nCh24@C8F^ /s/@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]RE7@ F sF8@W,@C@]EhuEh8Fp@WFh=@zpX|p@X@@F#p@h@R@Wp@v8@@@FFF7/]@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]nWOX@4@@84@@>pEX@#p@p@h4@p@@X @@O@@zEh@v@zp@h4@8@@y/v@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]8@g@z@@@@hCh@]Cp@^h7X8@7h@^F@]X]@@@@Fz@Fp@]@*h@^p@]X1@@@@Fz@FpE@y//;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]>F2@LCh@]Cp@^Eh@@@@Ch@bCp@&p@Wp@@Ch@ Wp@p@Q @CCh@aWp@@Ch@%Wp@Wh@CCp@#Wh@@IFp@Wp@@X@ ]dT)@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]kTIW@Ibp@Eh@%p@pXy@@@@ITs@C@%@IkE@@ @ImWp@ @#E@@a@I,FICWh@Wp@EICX@aC8@%@IXk7/O@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]CI/@@@@XIC@JF@b4@bF@b,@b@@@I|p@L@@@I|EI/p@@Qp@h@FE&EI/XJEEI/F@@EJE@@@@pd)#u@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]8#JFX@@EXJ@JCC8@d@&pEp@dX@E@J|Ch@#EhdCh@%Wp@@E @dEh;p@@J4@%C,@#JX|p@%E dCh@d/[@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]R J4@bC,@%F@bJ@&pdX@Wp@WX@@JsX@E@J/Wp@@E dh@@@J1pdX@@dEJEhh@h@p@E8@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]%J7Wp@@X@EEhdh@@J,EhT @Ch@%EhdCh@#Wp@@h@h@E @dX@ p=p@4@%C,@#W;> Ip@#Eh@v |^7@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]* OCh@%@J[@@@@Ch @ @pEh RCh  4 @1Eh E Q@@@@pFChhCp@gE@a@ %h^Cp@g@ gE@p@ h7@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]7 gXE [@@@@Cp@@F @p *Cp ,F2@F >@R@Eh m@F E )@@@@Ch@Jp@@ @Fp@ Cp@ Eh@ Fp@W @vs*u]@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]T @R@Eh@JEh@@@F sE u@@@@pLh 7Cp 1F @mFLFCpLF @nFp@W @vX uChLJCpL pLFp@ F @mFp@W7v@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]s@LW @vX uChLCpLQELE@@@@p@*Ch@)hCpLCpLh bCp@,Cp@kX [h@gCp@hE@s@LzF@,@LuEh FLa2@E>>@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@] ]L/FL X )X uChL/CpLmEX@kF@kh@@Xm@Lh@L,p@hLvXI@F@L,pEX@kE @kCh@kpL,E@@ JX gn@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]|1 XFX@kp CE@C@ TX FXp@Ch@)pLbCh@,p I@ E@Q@@ #X LE@@@ ]X XFX@k@ CE@y@ #/=@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]a X XEh@)@ OpL2hLsFy@nCh #Cp dp@Fz@IFp@IXQpQEX@kEhFX@)EX@k@ms@CE @k@ ypQ,7@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]#v 7FX@)p@khCp@kX@@@E @Ch@kp@p@p@FX@)Wh@vpFy@nChLRp@Fz@IFp@Ip@FX@)p@Ohyz@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]&>OFhCh@m1@JFhOEh@vCh@nXLEp@kE@@ vp gEX@,@OF@R@@)EX@)@&F@)p@F@)@)p@@@)8@@7/@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]R%g@FLCChCp hXO@OXpQFX@)hp@kCp@kX@@7E @Ch@kp@p@FX@)Wh@vp@XFy@nCh@mp@=z@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]7OFX@)Cp@nXLEp@kX@@/XO@XFy@/Ch)p@pE@Eh@)Ch@)F8@OFp@OE@@)FhFz@Op@F2@Oz>X@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]hOWCp*p RCh ]X XahOWpOIEL@@@@EX@hEOp@L8 E O#p@LEhOdXL|@@O&E Oh8O)ChO]CpOEO@@@@v7>@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]k%O/X [X#@O4FFvEOnCh h@@XL7@O>Fp@CpO4@FOF8@C@O4ChOXOXapOy8EX@g8ChEOn[/@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]7k@@@@X [X@@ p@ChEhL;XOv@[p h@R@F8@EhQF8@EhOX@FO;@ pp@EX@gp@Jz@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]sICh[E@@@@pO>E@@@EXO*EaE@=EXdEaFO2pWChbXO@b@@@@p@XEyppCh@En@@@@h@@@O@u;8@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ugO@7@@@@@@1@@)@@O@O=@@@@@@J@@@,R@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ |1#QTTppppa#dsppppJ#&ppppp1#)spppppu#2spppppEa#27sppppCs#s)ppppO#s)pppp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [#s)Cpppp#dppppppgd&Tppppv&ppppppOu&sppppEC&))ppppJCgQ22pppppg))ppppF)@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ pb)dpppp|)#dppppg)))ppppa2X)ppppF;2pppppp,2bRpppppOg2&sppppp@sX)ppppO@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ *Ws)dppppks))ppppsg#ppppp@LuQ#4ppppu))ppppE#v&)TppppRv)TppppOkv)TppppO,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ d|7))ppppsQTT)ppppE=RppppppE;RX)pppp&X)pppp#ppppppF1X)ppppp*%s)ppppE[@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ,>TppppppT))ppppIT#8pppp>T4gdppppI|))pppp)Wsppppp,pppppp#WppppEv@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@va@QC@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/symbol/section-5.lo b/symbol/section-5.lo new file mode 100644 index 0000000..d7f5eaa --- /dev/null +++ b/symbol/section-5.lo @@ -0,0 +1,1180 @@ + + 1 + 2 * S2 + 00000000 3 S9300 EQU 0 + 00000000 4 X0 EQU S9300 + 00000002 5 X2 EQU 2-S9300 +D 16400000 6 CAB OPD 016400000 +D 16500000 7 CBA OPD 016500000 +D 16600000 8 CAX OPD 016600000 +D 15700000 9 CXA OPD 015700000 +D 17000000 10 CBX OPD 017000000 +D 17100000 11 CNA OPD 017100000 +D 17200000 12 SKE OPD 017200000 +D 17300000 13 SKR OPD 017300000 +D 17400000 14 MUL OPD 017400000 +D 17500000 15 DIV OPD 017500000 +D 17500000 16 ADM OPD 017500000 +D 17700000 17 XMA OPD 017700000 + 00000 0 00 00035 18 $LSYM HLT SM1 + 00001 19 $MLOC RES 1 + 00002 20 $SCNX RES 1 + 00003 21 $LOP RES 1 + 00004 22 $LITM RES 1 + 00005 23 $SCIX RES 1 + 00006 23305101 24 CHR1 TEXT 4,CHR1 + 00007 23305102 25 CHR2 TEXT 4,CHR2 + 00010 26 LREF RES 1 + 00011 23452363 27 CNCT TEXT 4,CNCT + 00012 28 TEMP RES 2 +* 00014 0 00 00000 29 LLT HLT TPL LOCATION OF LITERAL TABLE PACKET +* 00015 0 00 00000 30 LLTR HLT LTR1 LOCATION OF LTR1 +* 00016 0 00 00000 31 SCNO HLT SOT SCAN STORAGE LIMIT + 00017 32 B1 RES 0 + 00017 20000000 33 B1 DATA 020000000 + 00020 70000000 34 A0 DATA 070000000 + 00021 00007000 35 A4 DATA 07000 + 00022 00000700 36 A5 DATA 0700 + 00023 00040000 37 B9 DATA 040000 + 00024 77000000 38 C0 DATA 077000000 + 00025 00007700 39 C2 DATA 07700 + 00026 77007700 40 C02 DATA 077007700 + 00027 00000105 41 P69 DATA 69 + 00030 00000057 42 P47 DATA 47 + 00031 00000011 43 P9 DATA 011 + 00032 00000005 44 P5 DATA 5 + 00033 00000202 45 RRM DATA 0202 + 00034 2 00 37777 46 XADR HLT -1,X2 + 00035 47 $SM1 RES 1 + 00036 62440260 48 SM2 TEXT 4,SM2 + 00037 62440360 49 SM3 TEXT 4,SM3 + 00040 67257001 50 KEY1 TEXT 4,XEY1 + 00041 42257002 51 KEY2 TEXT 4,KEY2 + 00042 43420160 52 LKI TEXT 4,LK1 + 00043 43424460 53 LKM TEXT 4,LKM + 00044 43424760 54 LKP TEXT 4,LKP + 00045 43426260 55 LKS TEXT 4,LKS + 00046 43426360 56 LKT TEXT 4,LKT + 00047 57 SIGN RES 1 + 00050 58 DPSIGN RES 1 + 00051 59 BEXP RES 1 + 00052 60 $SCALE RES 1 + 00053 61 DEXP RES 1 + 00054 62 FFLG RES 1 + 00055 63 MULT1 RES 1 + 00056 64 MULT2 RES 1 + 00057 0 00 04522 65 AP HLT PCON PRODUCT CONNECTER + 66 KF1 FORM 7,17 + 67 KF2 FORM 13,11 + 00060 112 000000 68 K1 KF1 10-0100,0 + 00061 10144 0000 69 K2 KF2 100-010000,0 + 00062 00011610 70 K3 DATA 5000 + 00063 110 000000 71 KF1 010-0100,0 + 00064 10100 0000 72 KF2 0100-010000,0 + 00065 00004000 73 DATA 010000/2 + 00066 74 B23 RES 0 + 00066 75 ONE RES 0 + 00066 00000001 76 FIVES DATA 1 + 00067 00000005 77 DATA 5 + 00070 00000031 78 DATA 25 + 00071 00000175 79 DATA 125 + 00072 00001161 80 DATA 625 + 00073 00006065 81 DATA 3125 + 00074 00036411 82 DATA 15625 + 00075 00230455 83 DATA 78125 + 00076 01372741 84 DATA 390625 + 00077 07346545 85 DATA 1953125 + 00100 86 M2 RES 0 + 00100 77777776 87 LOM DATA 077777776 + 00101 00000777 88 FEM DATA 0777 + 00102 77777000 89 FMM DATA 077777000 + 00103 00007777 90 MK12 DATA 07777 + 00104 00770077 91 MK6 DATA 0770077 + 00105 07070707 92 MK3 DATA 07070707 + 06000000 93 XYZ OPD 06000000 + 04000000 94 ITM OPD 04000000 ITEM + 02000000 95 CON OPD 02000000 CONNECTER + 05400000 96 STM OPD 05400000 SYMBOL,LABEL,ITEM + 04600000 97 DTM OPD 04600000 DECIMAL,SYMBOL,ITEM + 04700000 98 OTM OPD 04700000 OCTAL,DECIMAL,SYMBOL,ITEM + 00106 99 $CTT RES 0 + 00106 0 47 00443 100 OTM SCO + 00107 0 47 00443 101 OTM SCD 1 01 + 00110 0 47 00443 102 OTM SCD 2 02 + 00111 0 47 00443 103 OTM SCD 3 03 + 00112 0 47 00443 104 OTM SCD 4 04 + 00113 0 47 00443 105 OTM SCD 5 05 + 00114 0 47 00443 106 OTM SCD 6 06 + 00115 0 47 00443 107 OTM SCD 7 07 + 00116 0 47 00443 108 OTM SCD 8 10 + 00117 0 47 00443 109 OTM SCD 9 11 + 00120 0 00 00000 110 Z HLT 0 + 00121 0 00 00077 111 C3 HLT 077 + 00122 0 40 00577 112 ITM SCA ' 14 + 00123 40000000 113 B0 DATA 040000000 + 00124 0 00 00002 114 B22 HLT 2 + 00125 0 00 00030 115 P24 HLT 24 + 00126 0 20 03310 116 CON SCON + 20 + 00127 0 54 00443 117 STM SCS A 21 + 00130 0 54 00443 118 STM SCS B 22 + 00131 0 54 00443 119 STM SCS C 23 + 00132 0 54 00443 120 STM SCS D 24 + 00133 0 54 00443 121 STM SCS E 25 + 00134 0 54 00443 122 STM SCS F 26 + 00135 0 54 00443 123 STM SCS G 27 + 00136 0 54 00443 124 STM SCS H 30 + 00137 0 54 00443 125 STM SCS I 31 + 00140 0 00 00013 126 ECHR HLT '=' + 00141 0 00 00040 127 MCHR HLT '-' + 00142 0 20 00020 128 CON RCON ) 34 + 00143 0 00 00007 129 A7 HLT 7 + 00144 0 00 00003 130 P3 HLT 3 + 00145 0 00 00100 131 B17 HLT 0100 + 00146 0 20 03411 132 CON DCON - 40 + 00147 0 54 00443 133 STM SCS J 41 + 00150 0 54 00443 134 STM SCS K 42 + 00151 0 54 00443 135 STM SCS L 43 + 00152 0 54 00443 136 STM SCS M 44 + 00153 0 54 00443 137 STM SCS N 45 + 00154 0 54 00443 138 STM SCS O 45 + 00155 0 54 00443 139 STM SCS P 47 + 00156 0 54 00443 140 STM SCS Q 50 + 00157 0 54 00443 141 STM SCS R 51 + 00160 0 00 00020 142 PLUS HLT '+' + 00161 0 40 00555 143 ITM SCL $ 53 + 00162 0 60 00555 144 XYZ SCL * 54 + 00163 0 00 00033 145 PCHR HLT '.' + 00164 0 00 00014 146 QCHR HLT 014 + 00165 0 00 00034 147 RCHR HLT ')' + 00166 0 20 00000 148 CON BCON 60 + 00167 0 20 04647 149 CON QCON / 61 + 00170 0 54 00443 150 STM SCS S 62 + 00171 0 54 00443 151 STM SCS T 63 + 00172 0 54 00443 152 STM SCS L 64 + 00173 0 54 00443 153 STM SCS V 65 + 00174 0 54 00443 154 STM SCS W 66 + 00175 0 54 00443 155 STM SCS X 67 + 00176 0 54 00443 156 STM SCS Y 70 + 00177 0 54 00443 157 STM SCS Z 71 + 00200 0 00 00000 158 HLT 0 + 00201 0 20 00100 159 CON CCON , 73 + 00202 0 40 00621 160 ITM SCX ( 74 + 00203 0 00 00022 161 HB HLT 'B' + 00204 0 00 00025 162 HE HLT 'E' + 00205 2 00 00000 163 X2W HLT 0,X2 + 00206 0 00 00000 164 $SCNL HLT 0 +* 00207 0 76 00000 165 LDA CHR + 00210 0 50 00140 166 SKE ECHR TEST FOR = + 00211 0 01 00245 167 BRU SCR1 NOT LITERAL +* 00212 0 43 00000 168 BRM GET SKIP = + 00213 0 43 00315 169 BRM SCAN + 00214 0 43 00216 170 BRM SCNM + 00215 0 51 00206 171 BRR SCNL EXIT SCNL + 00216 0 00 00000 172 $SCNM HLT 0 +* 00217 0 35 00015 173 SCKS STA LTR1 +* 00220 0 53 00000 174 SKN PASS + 00221 0 51 00216 175 BRR SCNM EXIT + 00222 0 76 00015 176 LDA LLTR +* 00223 0 36 00000 177 STB LTR2 STORE LITERAL + 00224 0 75 00014 178 LDB LLT + 00225 0 43 01103 179 BRM SRCH SEARCH FOR LITERAL + 00226 0 01 00237 180 BRU SCK2 NOT IN TABLE + 00227 2 76 00002 181 LDA 2,X2 LOCATION OF LITERAL + 00230 0 75 00120 182 SCK3 LDB Z +* 00231 0 72 00000 183 SKA B8 +* 00232 0 75 00000 184 LDB RELM +* 00233 0 14 00000 185 ETR ADDR +* 00234 0 35 00000 186 STA VALU +* 00235 0 36 00000 187 STB MODE + 00236 0 51 00216 188 BRR SCNM EXIT SCNM +* 00237 0 76 00000 189 SCK2 LDA LADD +* 00240 0 35 00000 190 STA LTR3 +* 00241 0 61 00237 191 MIN LADD INCREMENT LITERAL LOCATION + 00242 0 43 01205 192 BRM MOVE INSERT LITERAL IN TABLE +* 00243 0 76 00240 193 LDA LTR3 LOCATION OF LITERAL + 00244 0 01 00230 194 BRU SCK3 + 00245 0 43 00247 195 SCR1 BRM SCNR GET EXPRESSION OR REFERENCE + 00246 0 51 00206 196 BRR SCNL + 00247 0 00 00000 197 SCNR HLT 0 + 00250 0 43 00315 198 BRM SCAN GET EXPRESSION +* 00251 0 76 00000 199 LDA VERR UNDEFINED FLAG + 00252 0 73 00120 200 SKG Z + 00253 0 01 00313 201 BRU SCR2 ALL SYMBOL DEFINED + 00254 0 76 00006 202 LDA CHR1 + 00255 0 50 00120 203 SKE Z TEST FOR NO CONNECTERS + 00256 0 01 00313 204 BRU SCR2 UNDEFINED ITEM + 00257 0 76 00120 205 LDA Z REFERENCE +* 00260 0 53 00220 206 SKN PASS + 00261 0 51 00247 207 BRR SCNR +* 00262 0 35 00251 208 STA VERR RESET UNDEFINED FLAG +* 00263 0 61 00000 209 MIN XERR SET EXTERNALFLAG + 00264 0 76 00000 210 LDA LSYM +* 00265 0 75 00000 211 LDB LRT + 00266 0 43 01103 212 BRM SRCH SEARCH FOR REFERENCE + 00267 0 01 00307 213 BRU SCR3 NOT INTABLE +* 00270 0 14 00233 214 SCR4 ETR ADDR +* 00271 0 35 00234 215 STA VALU +* 00272 0 36 00235 216 STB MODE +* 00273 0 76 00000 217 LDA LOC +* 00274 0 75 00000 218 LDB REFM +* 00275 0 72 00231 219 SKA B8 + 00276 0 75 00033 220 LDB RRM + 00277 2 35 00002 221 STA 2,X2 + 00300 2 76 00001 222 LDA 1,X2 + 00301 0 14 02064 223 ETR =077770000 + 00302 2 36 00001 224 STB 1,X2 + 00303 2 63 00001 225 ADM 1,X2 +* 00304 0 76 00271 226 LDA VALU +* 00305 0 75 00272 227 LDB MODE + 00306 0 51 00247 228 BRR SCNR EXIT + 00307 0 35 00037 229 SCR3 STA SM3 NO PREVIOUS REF + 00310 0 43 01205 230 BRM MOVE INSERT REFERENCE + 00311 0 46 30003 231 CLR + 00312 0 01 00270 232 BRU SCR4 +* 00313 0 76 00304 233 SCR2 LDA VALU NO REF OR LIT + 00314 0 51 00247 234 BRR SCNR EXIT + 00315 0 00 00000 235 $SCAN HLT 0 + 00316 0 46 30003 236 CLR + 00317 0 35 40003 237 STA *LOP 0 TO BASE CONECTER +* 00320 0 35 00313 238 STA VALU 0 TO VALUE +* 00321 0 35 00305 239 STA MODE 0 TO MODE + 00322 0 35 00006 240 STA CHR1 RESET +* 00323 0 71 00207 241 LDX CHR,X0 + 00324 2 75 00106 242 LDB CTT,X2 +* 00325 0 43 00000 243 BRM SKB +* 00326 0 00 00000 244 HLT IC + 00327 0 01 00337 245 BRU SCN1 NOT CONECTER + 00330 0 01 00345 246 BRU SCN8 + 00331 0 61 00003 247 SCN3 MIN LOP INCR OP + 00332 0 61 00004 248 MIN LITM INCR ITEM +* 00333 0 76 00321 249 LDA MODE + 00334 0 35 40003 250 STA *LOP STORE OP +* 00335 0 76 00320 251 LDA VALU + 00336 0 35 40004 252 STA *LITM STORE ITEM +* 00337 0 76 00323 253 SCN1 LDA CHR + 00340 0 46 00400 254 CAX + 00341 0 43 00431 255 BRM SCI GET NEXT ITEM +* 00342 0 35 00335 256 STA VALU +* 00343 0 36 00333 257 STB MODE +* 00344 0 71 00337 258 LDX CHR,X0 + 00345 0 43 00660 259 SCN8 BRM SCC GET NEXT CONECTER +* 00346 0 35 00343 260 STA MODE + 00347 0 75 00021 261 SCN7 LDB A4 HIERARCHY MASK + 00350 0 73 40003 262 SKG *LOP MODE IS IN A + 00351 0 01 00354 263 BRU SCN2 LEVEL NOT GREATER + 00352 0 70 40003 264 SKM *LOP + 00353 0 01 00331 265 BRU SCN3 LEVEL GREATER + 00354 0 76 40003 266 SCN2 LDA *LOP LAST CONECTER + 00355 0 70 00120 267 SKM Z TEST FOR TERMINATER + 00356 0 01 00400 268 BRU SCN4 DO OPERATION +* 00357 0 76 00346 269 LDA MODE + 00360 0 14 00121 270 ETR C3 MASK MODE + 00361 0 46 00004 271 CAB MODE TO B + 00362 0 76 00002 272 LDA SCNX +* 00363 0 50 00000 273 SKE LSXT TEST P LEVEL + 00364 0 01 00371 274 BRU SCN11 NOT 0 + 00365 0 76 00165 275 LDA RCHR +* 00366 0 50 00000 276 SKE TERM ERROR IF ) + 00367 0 01 00376 277 BRU SCN12 + 00370 0 01 00373 278 BRU SCN13 + 00371 0 76 00165 279 SCN11 LDA RCHR +* 00372 0 50 00366 280 SKE TERM +* 00373 0 61 00000 281 SCN13 MIN PERR SET P ERROR +* 00374 0 76 00342 282 SCN14 LDA VALU + 00375 0 51 00315 283 BRR SCAN EXIT SCAN + 00376 0 43 02041 284 SCN12 BRM GNF SKIP TO NEXT FIELD + 00377 0 01 00374 285 BRU SCN14 + 00400 0 75 00021 286 SCN4 LDB A4 + 00401 0 70 02065 287 SKM =05000 + 00402 0 14 00022 288 ETR A5 + 00403 0 14 02066 289 ETR =01700 + 00404 0 66 00006 290 RSH 6 + 00405 0 46 00400 291 CAX OP NUMBER TO X + 00406 0 75 40003 292 LDB *LOP + 00407 0 02 20001 293 ROV + 00410 0 76 40004 294 LDA *LITM + 00411 2 01 40412 295 BRU *SCN5,X2 BRANCH TO OP CODE + 00412 0 01 00734 296 SCN5 BRU CLS LOSICALSUM + 00413 0 01 00752 297 BRU CLD LOGICAL DIFFERENCE + 00414 0 01 00754 298 BRU CLP LOGICAL PRODUCT + 00415 0 01 00756 299 BRU CAS ARITHMETIC SUM + 00416 0 01 00762 300 BRU CAD ARITHMETIC DIFFERENCE + 00417 0 01 00770 301 BRU CAP ARITHMETIC PRODUCT + 00420 0 01 00776 302 BRU CXQ EXCLUSIVE QUOTIENT + 00421 0 01 00774 303 BRU CEQ INCLUSIE QUOTIENT + 00422 0 01 01001 304 BRU CDS + 00423 0 01 01025 305 BRU CBS +* 00424 0 76 00000 306 SCN6 LDA M1 + 00425 0 63 00003 307 ADM LOP DECR OP + 00426 0 63 00004 308 ADM LITM DECR ITEM +* 00427 0 76 00357 309 LDA MODE + 00430 0 01 00347 310 BRU SCN7 TEST PREVIOUS OP + 00431 0 00 00000 311 SCI HLT 0 +* 00432 0 75 00326 312 SCI2 LDB IC +* 00433 0 43 00325 313 BRM SKB + 00434 2 00 00106 314 HLT CTT,X2 + 00435 0 01 00442 315 BRU SCI1 +* 00436 0 61 00000 316 MIN EERR SET EFLAG +* 00437 0 43 00212 317 BRM GET SKIP CHAR + 00440 0 46 30003 318 CLR + 00441 0 51 00431 319 BRR SCI EXIT + 00442 2 01 40106 320 SCI1 BRU *CTT,X2 + 00000443 321 SCS EQU $ + 00000443 322 SCO EQU $ + 00000443 323 SCD EQU $ + 00443 0 75 00143 324 SCIT LDB A7 +* 00444 0 36 00000 325 STB CNTR MAX CHARACTER COUNT + 00445 0 35 00007 326 STA CHR2 SAVE LEAD CHAR + 00446 0 50 00120 327 SKE Z + 00447 0 01 00457 328 BRU SCIT7 +* 00450 0 43 00437 329 BRM GET SKIP 0 +* 00451 0 75 00000 330 LDB SC +* 00452 0 43 00433 331 BRM SKB + 00453 2 00 00106 332 HLT CTT,X2 + 00454 0 01 00457 333 BRU SCIT7 VALID SYMBOL CHARACTER + 00455 0 46 30003 334 CLR + 00456 0 51 00431 335 BRR SCI EXIT WITH ZERO + 00457 0 75 00120 336 SCIT7 LDB Z + 00460 0 01 00465 337 BRU SCIT1 + 00461 0 75 00036 338 SCIT3 LDB SM2 + 00462 0 62 00035 339 XMA SM1 + 00463 0 67 20006 340 LCY 6 + 00464 0 16 00035 341 MRG SM1 INSERT NEW CHARACTER + 00465 0 35 00035 342 SCIT1 STA SM1 + 00466 0 36 00036 343 STB SM2 +* 00467 0 75 00451 344 LDB SC +* 00470 0 43 00000 345 BRM TCHR TEST FOR ALPHANUMERIC + 00471 0 01 00474 346 BRU SCIT2 END OF SYMBOLIC ITEM +* 00472 0 60 00444 347 SKR CNTR TEST FOR MAX SIZE + 00473 0 01 00461 348 BRU SCIT3 + 00474 0 76 00035 349 SCIT2 LDA SM1 + 00475 0 16 00036 350 MRG SM2 +* 00476 0 72 00000 351 SKA DLY1 TEST ZONE BITS + 00477 0 01 00526 352 BRU SCIT4 SYMBOL + 00500 0 71 00120 353 LDX Z,X0 + 00501 0 75 00007 354 LDB CHR2 +* 00502 0 43 00452 355 BRM SKB +* 00503 0 00 00000 356 HLT OCTF + 00504 0 01 00510 357 BRU SCIT21 + 00505 0 71 00144 358 LDX P3,X0 + 00506 0 72 02067 359 SKA =010101010 +* 00507 0 61 00436 360 MIN EERR + 00510 0 76 00036 361 SCIT21 LDA SM2 HIGH ORDER HALF + 00511 0 43 01321 362 BRM CNVRT CONVERT + 00512 2 64 00062 363 MUL K3,X2 TIMES BASE TO THE 4TH + 00513 0 36 00036 364 STB SM2 PARTIAL RESULT + 00514 0 50 00120 365 SKE Z +* 00515 0 61 00000 366 MIN TERR SET TRUNCATION ERROR + 00516 0 76 00035 367 LDA SM1 LOW ORDER HALF + 00517 0 43 01321 368 BRM CNVRT CONVERT + 00520 0 02 20001 369 ROV + 00521 0 55 00036 370 ADD SM2 + 00522 0 40 20001 371 OVT +* 00523 0 61 00515 372 MIN TERR SET TRUNCATION ERROR + 00524 0 75 00120 373 LDB Z 0 TO MODE + 00525 0 51 00431 374 BRR SCI EXIT + 00526 0 76 00035 375 SCIT4 LDA SM1 + 00527 0 75 00036 376 LDB SM2 + 00530 0 01 00533 377 BRU SCIT5 + 00531 0 67 20006 378 SCIT6 LCY 6 ADDUST +* 00532 0 16 00000 379 MRG BCHR INSERT BLANK +* 00533 0 60 00472 380 SCIT5 SKR CNTR TEST FOR SYMBOL ADJUSTED + 00534 0 01 00531 381 BRU SCIT6 + 00535 0 14 02064 382 ETR =077770000 + 00536 0 35 00036 383 STA SM2 + 00537 0 36 00035 384 STB SM1 + 00540 0 76 00000 385 LDA LSYM LOCATION OF SYMBOL +* 00541 0 75 00000 386 LDB LST LOCATION OF SYMBOL TABLE + 00542 0 43 01103 387 BRM SRCH SEARCH +* 00543 0 61 00262 388 MIN VERR NOT FOUND + 00544 0 46 00014 389 XAB + 00545 0 72 00145 390 SKA B17 +* 00546 0 61 00000 391 MIN DERR + 00547 0 14 00121 392 ETR C3 SAVE MODE + 00550 0 46 00014 393 XAB +* 00551 0 43 00502 394 BRM SKB +* 00552 0 00 00232 395 HLT RELM +* 00553 0 14 00270 396 ETR ADDR + 00554 0 51 00431 397 BRR SCI EXIT +* 00555 0 76 00344 398 SCL LDA CHR +* 00556 0 50 00000 399 SKE SCHR TEST FOR * + 00557 0 01 00570 400 BRU SCL1 $ IS ALWAYS LOCATION COUNTER +* 00560 0 43 00450 401 BRM GET + 00561 0 46 00400 402 CAX +* 00562 0 75 00000 403 LDB CC +* 00563 0 43 00551 404 BRM SKB + 00564 2 00 00106 405 HLT CTT,X2 + 00565 0 01 00571 406 BRU SCL2 +* 00566 0 61 00000 407 MIN IFLG + 00567 0 01 00432 408 BRU SCI2 +* 00570 0 43 00560 409 SCL1 BRM GET +* 00571 0 76 00273 410 SCL2 LDA LOC + 00572 0 75 00120 411 LDB Z +* 00573 0 72 00275 412 SKA B8 +* 00574 0 75 00552 413 LDB RELM +* 00575 0 14 00553 414 ETR ADDR + 00576 0 51 00431 415 BRR SCI EXIT + 00577 0 76 00120 416 SCA LDA Z + 00600 0 01 00610 417 BRU SCA2 +* 00601 0 76 00374 418 SCA1 LDA VALU + 00602 0 72 00024 419 SKA C0 +* 00603 0 61 00523 420 MIN TERR + 00604 0 72 00024 421 SKA C0 + 00605 0 01 00615 422 BRU SCA3 + 00606 0 67 00006 423 LSH 6 +* 00607 0 16 00555 424 MRG CHR INSERT NEW CHAR +* 00610 0 35 00601 425 SCA2 STA VALU +* 00611 0 43 00570 426 BRM GET GET CHAR + 00612 0 75 00120 427 LDB Z + 00613 0 50 00164 428 SKE QCHR TEST FOR QUOTE + 00614 0 01 00601 429 BRU SCA1 +* 00615 0 43 00611 430 SCA3 BRM GET + 00616 0 75 00120 431 LDB Z +* 00617 0 76 00610 432 LDA VALU + 00620 0 51 00431 433 BRR SCI EXIT + 00621 0 76 00016 434 SCX LDA SCNO + 00622 0 73 00002 435 SKG SCNX + 00623 0 01 00651 436 BRU SCX1 TOO MANY LEYELS + 00624 0 76 00315 437 LDA SCAN + 00625 0 35 40002 438 STA *SCNX SAVE EXIT + 00626 0 76 00431 439 LDA SCI + 00627 0 35 40005 440 STA *SCIX + 00630 0 61 00005 441 MIN SCIX + 00631 0 61 00002 442 MIN SCNX INCR + 00632 0 61 00003 443 MIN LOP + 00633 0 61 00004 444 MIN LITM +* 00634 0 43 00615 445 BRM GET SKIP ( + 00635 0 43 00315 446 BRM SCAN GET SUB-EXPRESSION +* 00636 0 76 00424 447 LDA M1 + 00637 0 63 00002 448 ADM SCNX DECR + 00640 0 63 00003 449 ADM LOP + 00641 0 63 00004 450 ADM LITM + 00642 0 63 00005 451 ADM SCIX + 00643 0 76 40005 452 LDA *SCIX + 00644 0 35 00431 453 STA SCI + 00645 0 76 40002 454 LDA *SCNX + 00646 0 35 00315 455 STA SCAN RESTORE EXIT +* 00647 0 76 00617 456 LDA VALU + 00650 0 51 00431 457 BRR SCI EXIT +* 00651 0 61 00373 458 SCX1 MIN PERR SET P FLAG +* 00652 0 43 00634 459 SCX2 BRM GET + 00653 0 50 00165 460 SKE RCHR + 00654 0 01 00652 461 BRU SCX2 SKIP SUB+EXPRESSIDN +* 00655 0 43 00652 462 BRM GET SKIP ) + 00656 0 46 30003 463 CLR + 00657 0 51 00431 464 BRR SCI EXIT + 00660 0 00 00000 465 SCC HLT 0 +* 00661 0 75 00562 466 LDB CC +* 00662 0 43 00563 467 BRM SKB + 00663 2 00 00106 468 HLT CTT,X2 + 00664 0 01 00672 469 BRU SCC1 +* 00665 0 35 00372 470 STA TERM +* 00666 0 61 00507 471 MIN EERR SET E FLAG +* 00667 0 43 00655 472 BRM GET SKIP CHAR +* 00670 0 76 00427 473 LDA MODE + 00671 0 51 00660 474 BRR SCC EXIT + 00672 0 46 00200 475 SCC1 CXA +* 00673 0 50 00556 476 SKE SCHR CONECTER IS AP IF * + 00674 0 01 00711 477 BRU SCC7 + 00675 0 35 00006 478 STA CHR1 +* 00676 0 43 00667 479 BRM GET + 00677 0 50 02070 480 SKE ='+' + 00700 0 01 00703 481 BRU SCC5 + 00701 0 75 02065 482 LDB =05000 + 00702 0 01 00732 483 BRU SCC8 + 00703 0 75 00057 484 SCC5 LDB AP + 00704 0 36 00011 485 STB CNCT + 00705 0 50 02071 486 SKE ='/' + 00706 0 01 00727 487 BRU SCC6 + 00707 0 75 02072 488 LDB =05100 + 00710 0 01 00732 489 BRU SCC8 + 00711 2 75 00106 490 SCC7 LDB CTT,X2 + 00712 0 36 00011 491 STB CNCT SAVE CONECTER +* 00713 0 43 00662 492 BRM SKB + 00714 0 00 00021 493 HLT A4 + 00715 0 01 00724 494 BRU SCC2 NOT TERMTNATER +* 00716 0 37 00665 495 STX TERM,X0 SAVE TERMINATER +* 00717 0 43 00676 496 SCC4 BRM GET POSITION AT NEXT CHAR + 00720 0 76 00011 497 SCC3 LDA CNCT + 00721 0 14 00025 498 ETR C2 EXTRACT CONNECTER +* 00722 0 16 00670 499 MRG MODE + 00723 0 51 00660 500 BRR SCC EXIT + 00724 0 35 00006 501 SCC2 STA CHR1 SAVE CHAR +* 00725 0 43 00717 502 BRM GET GET NEXT CHAR + 00726 0 75 00011 503 LDB CNCT + 00727 0 50 00006 504 SCC6 SKE CHR1 + 00730 0 01 00720 505 BRU SCC3 + 00731 0 67 00006 506 LSH 6 USE ALTERNATE CONNECTER + 00732 0 36 00011 507 SCC8 STB CNCT + 00733 0 01 00717 508 BRU SCC4 +* 00734 0 16 00647 509 CLS MRG VALU V = L++V +* 00735 0 35 00734 510 CLS1 STA VALU +* 00736 0 76 00722 511 LDA MODE + 00737 0 16 40003 512 MRG *LOP ERROR IF EITHER ARE REL +* 00740 0 72 00574 513 CLS2 SKA RELM +* 00741 0 61 00000 514 MIN RERR + 00742 0 40 20001 515 OVT +* 00743 0 61 00603 516 MIN TERR SET TRUNCATION ERROR +* 00744 0 76 00736 517 LDA MODE +* 00745 0 17 00740 518 EOR RELM + 00746 0 46 00014 519 XAB +* 00747 0 72 00745 520 SKA RELM +* 00750 0 36 00744 521 STB MODE + 00751 0 01 00424 522 BRU SCN6 +* 00752 0 17 00735 523 CLD EOR VALU V=L--V + 00753 0 01 00735 524 BRU CLS1 +* 00754 0 14 00752 525 CLP ETR VALU V=L**V + 00755 0 01 00735 526 BRU CLS1 +* 00756 0 63 00754 527 CAS ADM VALU V=L+V +* 00757 0 76 00750 528 LDA MODE + 00760 0 14 40003 529 ETR *LOP ERROR IF BOTH ARE REL + 00761 0 01 00740 530 BRU CLS2 +* 00762 0 54 00756 531 CAD SUB VALU +* 00763 0 35 00762 532 STA VALU V=L-V + 00764 0 76 40003 533 LDA *LOP +* 00765 0 17 00636 534 EOR M1 COMPLEMENT OF UMODE +* 00766 0 14 00757 535 ETR MODE ERROR IF V REL AND U NOT + 00767 0 01 00740 536 BRU CLS2 ERROR IF V IS REL +* 00770 0 64 00763 537 CAP MUL VALU + 00771 0 67 00027 538 LSH 23 V=L*Y + 00772 0 75 40003 539 CAP1 LDB *LOP RESTORE B + 00773 0 01 00735 540 BRU CLS1 +* 00774 0 55 00765 541 CEQ ADD M1 +* 00775 0 55 00770 542 ADD VALU L+V-1 + 00776 0 66 00027 543 CXQ RSH 23 +* 00777 0 65 00775 544 DIV VALU L/V OR (L+Y-1)/V + 01000 0 01 00772 545 BRU CAP1 +* 01001 0 76 00777 546 CDS LDA VALU +* 01002 0 73 00774 547 SKG M1 + 01003 0 46 01000 548 CNA + 01004 0 73 00031 549 SKG P9 + 01005 0 01 01007 550 BRU $+2 +* 01006 0 61 00743 551 MIN TERR + 01007 0 46 00400 552 CAX + 01010 0 75 00120 553 LDB Z + 01011 0 02 20001 554 ROV + 01012 2 76 00066 555 LDA FIVES,X2 + 01013 2 67 00000 556 LSH 0,X2 + 01014 0 40 20001 557 OVT +* 01015 0 61 01006 558 MIN TERR +* 01016 0 62 01001 559 XMA VALU +* 01017 0 73 01002 560 SKG M1 + 01020 0 01 01023 561 BRU CDS1 + 01021 0 76 40004 562 LDA *LITM + 01022 0 01 00770 563 BRU CAP + 01023 0 76 40004 564 CDS1 LDA *LITM + 01024 0 01 00776 565 BRU CXQ +* 01025 0 76 01016 566 CBS LDA VALU +* 01026 0 53 01025 567 SKN VALU + 01027 0 01 01043 568 BRU CBS1 + 01030 0 46 01000 569 CNA + 01031 0 46 00400 570 CAX + 01032 0 75 00120 571 LDB Z + 01033 0 76 40004 572 LDA *LITM + 01034 2 66 00000 573 RSH 0,X2 +* 01035 0 43 00713 574 BRM SKB +* 01036 0 00 01017 575 HLT M1 + 01037 0 73 40004 576 SKG *LITM + 01040 0 01 00772 577 BRU CAP1 + 01041 0 55 00066 578 ADD ONE + 01042 0 01 00772 579 BRU CAP1 + 01043 0 46 00400 580 CBS1 CAX + 01044 0 75 00120 581 LDB Z + 01045 0 76 40004 582 LDA *LITM + 01046 2 67 00000 583 LSH 0,X2 + 01047 0 01 00772 584 BRU CAP1 + 01050 0 00 00000 585 $SYM HLT 0 + 01051 0 75 00120 586 LDB Z + 01052 0 35 00035 587 SYM2 STA SM1 + 01053 0 36 00036 588 STB SM2 +* 01054 0 75 00467 589 LDB SC +* 01055 0 43 00470 590 BRM TCHR TEST FOR SYMBOL CHAR + 01056 0 01 01067 591 BRU SYM1 END SYMBOL + 01057 0 75 00036 592 LDB SM2 + 01060 0 62 00035 593 XMA SM1 +* 01061 0 43 01035 594 BRM SKB + 01062 0 00 00025 595 HLT C2 + 01063 0 01 01077 596 BRU SYM3 + 01064 0 67 20006 597 LCY 6 + 01065 0 16 00035 598 MRG SM1 + 01066 0 01 01052 599 BRU SYM2 + 01067 0 75 00036 600 SYM1 LDB SM2 + 01070 0 76 00035 601 LDA SM1 +* 01071 0 43 01061 602 SYM4 BRM SKB + 01072 0 00 00025 603 HLT C2 + 01073 0 01 01077 604 BRU SYM3 + 01074 0 67 20006 605 LCY 6 +* 01075 0 16 00532 606 MRG BCHR + 01076 0 01 01071 607 BRU SYM4 + 01077 0 66 20014 608 SYM3 RCY 12 + 01100 0 35 00035 609 STA SM1 + 01101 0 36 00036 610 STB SM2 + 01102 0 51 01050 611 BRR SYM EXIT + 01103 0 00 00000 612 $SRCH HLT 0 + 01104 0 35 00042 613 STA LKI SAVE ITEM LOC + 01105 0 36 00046 614 STB LKT SAVE PACKET LOC + 01106 0 46 00400 615 CAX LOC OF ITEM + 01107 2 76 00000 616 LDA 0,X2 + 01110 0 35 00040 617 STA KEY1 + 01111 2 76 00001 618 LDA 1,X2 + 01112 0 46 00020 619 CBX + 01113 2 14 00003 620 ETR 3,X2 + 01114 0 35 00041 621 STA KEY2 STORE KEY + 01115 2 76 00000 622 LDA 0,X2 T = END OF TABLE + 01116 0 35 00045 623 STA LKS S=T + 01117 2 76 00001 624 LDA 1,X2 F = LOC OF 1ST ITEM + 01120 2 75 00003 625 LDB 3,X2 + 01121 0 36 00043 626 STB LKM MASK FOR 2ND KEY WORD + 01122 2 75 00002 627 LDB 2,X2 I = INITIAL INCR + 01123 0 01 01132 628 BRU LK1 + 01124 0 66 00001 629 LK3 RSH 1 + 01125 2 76 00000 630 LDA 0,X2 K(X) + 01126 0 73 00040 631 SKG KEY1 COMPARE WITH K(L) + 01127 0 01 01142 632 BRU LK2 K(L) GREATER OR EQUAL + 01130 0 46 00010 633 LK7 CBA + 01131 0 55 00045 634 ADD LKS + 01132 0 46 00400 635 LK1 CAX + 01133 0 76 00120 636 LDA Z +* 01134 0 43 01071 637 BRM SKB + 01135 0 00 00100 638 HLT M2 + 01136 0 01 01124 639 BRU LK3 + 01137 0 46 30003 640 CLR NOT FOUND + 01140 0 71 00045 641 LDX LKS,X0 + 01141 0 01 01153 642 BRU LK5 + 01142 0 50 00040 643 LK2 SKE KEY1 + 01143 0 01 01155 644 BRU LK4 KEYS NOT EQUAL + 01144 2 76 00001 645 LDA 1,X2 2ND WORD OF KEY + 01145 0 14 00043 646 ETR LKM MASK OUT MODE + 01146 0 50 00041 647 SKE KEY2 TEST FOR EQUAL KEYS + 01147 0 01 01154 648 BRU LK6 KEYS NOT EQUAL + 01150 0 61 01103 649 MIN SRCH TAPE FOUND EX1T + 01151 2 75 00001 650 LDB 1,X2 MODE + 01152 2 76 00002 651 LDA 2,X2 VALUE + 01153 0 51 01103 652 LK5 BRR SRCH EXIT + 01154 0 73 00041 653 LK6 SKG KEY2 COMPARE 2ND WORDS + 01155 0 37 00045 654 LK4 STX LKS,X0 K(L) GREATER, S = X + 01156 0 01 01130 655 BRU LK7 + 01157 0 00 00000 656 $NSRT HLT 0 + 01160 0 43 01103 657 BRM SRCH SEARCH FOR ITEM + 01161 0 01 01201 658 BRU NS3 NOT FOUND + 01162 0 61 00042 659 MIN LKI + 01163 0 76 40042 660 LDA *LKI + 01164 0 61 00042 661 MIN LKI + 01165 0 75 40042 662 LDB *LKI + 01166 2 50 00001 663 SKE 1,X2 + 01167 0 01 01174 664 BRU NS1 1ST WORD NOT EQUAL + 01170 0 46 00014 665 XAB + 01171 2 50 00002 666 SKE 2,X2 + 01172 0 01 01174 667 BRU NS1 2ND WORDS NOT EQUAL + 01173 0 51 01157 668 BRR NSRT EXIT +* 01174 0 76 00000 669 NS1 LDA DUPM + 01175 2 16 00001 670 MRG 1,X2 SET DUP FLAG + 01176 2 35 00001 671 STA 1,X2 +* 01177 0 61 00546 672 MIN DERR SET DUP ERROR + 01200 0 51 01157 673 BRR NSRT EXIT + 01201 0 43 01205 674 NS3 BRM MOVE MOVE ITEM TO TABLE + 01202 0 51 01157 675 BRR NSRT EXIT +* 01203 0 61 00000 676 OFLO MIN OERR + 01204 0 51 01205 677 BRR MOVE + 01205 0 00 00000 678 MOVE HLT 0 + 01206 0 76 00144 679 LDA P3 +* 01207 0 63 00000 680 ADM LIMT -(M-3) TO M +* 01210 0 53 01207 681 SKN LIMT + 01211 0 01 01203 682 BRU OFLO + 01212 0 37 00044 683 STX LKP,X0 SAVE P + 01213 0 71 00046 684 LDX LKT,X0 PACKET LOCATION + 01214 0 76 00205 685 LDA X2W CONSTRUCTION INDIRECT WORD + 01215 0 16 00044 686 MRG LKP P,X2 + 01216 2 53 00005 687 SKN 5,X2 TYPE (UP OR DOWN) + 01217 0 01 01274 688 BRU MOV1 MOVE UP + 01220 0 35 00043 689 STA LKM P,X2 (TO) + 01221 0 55 00144 690 ADD P3 P+3,X2 (FORM) + 01222 0 35 00045 691 STA LKS P+3,X2 IFORM) + 01223 2 76 00000 692 LDA 0,X2 B + 01224 0 54 00044 693 SUB LKP NO, OF WORDS TO MOYE + 01225 0 55 02073 694 ADD =0177777 + 01226 0 46 00400 695 CAX + 01227 0 01 01232 696 BRU MOV2 + 01230 0 76 40045 697 MOV3 LDA *LKS + 01231 0 35 40043 698 STA *LKM MOVE ONE WORD DOWN + 01232 0 41 01230 699 MOV2 BRX MOV3,X0 + 01233 0 71 02074 700 MV1 LDX =00200000-3,X0 + 01234 0 76 00045 701 LDA LKS + 01235 0 54 00144 702 SUB P3 + 01236 0 35 00044 703 STA LKP LOCATIONOF INSERTED ITEM + 01237 0 76 40042 704 MOV4 LDA *LKI + 01240 0 35 40045 705 STA *LKS INSERT NEW ITEM + 01241 0 61 00042 706 MIN LKI + 01242 0 41 01237 707 BRX MOV4,X0 + 01243 0 71 00046 708 LDX LKT,X0 PACKET LOCATION + 01244 0 76 00144 709 LDA P3 + 01245 2 63 00004 710 ADM 4,X2 N+3 TO N + 01246 2 76 00002 711 LDA 2,X2 M + 01247 2 73 00004 712 SKG 4,X2 M:N + 01250 0 01 01263 713 BRU MOV5 M=N + 01251 2 53 00005 714 SKN 5,X2 TYPE + 01252 0 01 01257 715 BRU MOV8 UP TABLE + 01253 2 76 00000 716 LDA 0,X2 + 01254 0 54 00144 717 MV2 SUB P3 + 01255 2 35 00000 718 STA 0,X2 B-3 TO B + 01256 0 01 01261 719 BRU MV3 + 01257 0 76 00144 720 MOV8 LDA P3 + 01260 2 63 00001 721 ADM 1,X2 F+3 TO F + 01261 0 71 00044 722 MV3 LDX LKP,X0 LOCATION OF INSERTED ITEM + 01262 0 51 01205 723 BRR MOVE EXIT + 01263 0 75 00120 724 MOV5 LDB Z + 01264 2 55 00004 725 ADD 4,X2 M+N TO M + 01265 2 35 00002 726 STA 2,X2 + 01266 2 36 00004 727 STB 4,X2 0 TO N + 01267 2 76 00000 728 LDA 0,X2 B + 01270 2 53 00005 729 SKN 5,X2 + 01271 0 55 00144 730 ADD P3 B + 3 TO B + 01272 2 35 00001 731 STA 1,X2 B TO F + 01273 0 01 01254 732 BRU MV2 + 01274 0 55 00124 733 MOV1 ADD B22 + 01275 0 14 00034 734 ETR XADR CONSTRUCT INDIRECT WORD + 01276 0 35 00045 735 STA LKS P+2,X2 (FROM) + 01277 0 55 00144 736 ADD P3 + 01300 0 35 00043 737 STA LKM P+5,X2 (TO) + 01301 2 76 00000 738 LDA 0,X2 B + 01302 2 55 00002 739 ADD 2,X2 B+M + 01303 2 55 00004 740 ADD 4,X2 B+M+N + 01304 0 54 00044 741 SUB LKP B+M+N-P + 01305 0 73 00120 742 SKG Z NO OF WORDS TO MOVE + 01306 0 01 01315 743 BRU MOV6 0 WORDS + 01307 0 16 02075 744 MRG =040000*/S9300 + 01310 0 46 00400 745 CAX + 01311 0 76 40045 746 MOV7 LDA *LKS + 01312 0 35 40043 747 STA *LKM MOVE ONE WORD UP 3 + 01313 2 77 37776 748 EAX -2,X2 + 01314 0 41 01311 749 BRX MOV7,X0 + 01315 0 76 00043 750 MOV6 LDA LKM P+5,X2 + 01316 0 55 00066 751 ADD B23 P+6,X2 + 01317 0 35 00045 752 STA LKS + 01320 0 01 01233 753 BRU MV1 + 01321 0 00 00000 754 CNVRT HLT 0 +* 01322 0 35 01026 755 STA VALU + 01323 0 14 00026 756 ETR C02 MASK 1ST AND 3RD CHARACTERS + 01324 2 64 00060 757 MUL K1,X2 T1MES BASE - 64 +* 01325 0 55 01322 758 ADD VALU +* 01326 0 35 01325 759 STA VALU + 01327 0 14 02064 760 ETR =077770000 + 01330 2 64 00061 761 MUL K2,X2 TIMES BASE SQUARED - 4096 +* 01331 0 55 01326 762 ADD VALU RESULT + 01332 0 51 01321 763 BRR CNVRT EXIT + 01333 0 00 00000 764 SSIGN HLT 0 +* 01334 0 76 00607 765 LDA CHR +* 01335 0 35 00716 766 STA TERM + 01336 0 75 00120 767 LDB Z + 01337 0 36 00047 768 STB SIGN + TO SIGN + 01340 0 50 00141 769 SKE MCHR TEST FOR - + 01341 0 01 01345 770 BRU SSIGN1 +* 01342 0 75 01036 771 LDB M1 + 01343 0 36 00047 772 STB SIGN - TO SIGN + 01344 0 01 01347 773 BRU SSIGN2 + 01345 0 50 00160 774 SSIGN1 SKE PLUS TEST FOR + + 01346 0 01 01350 775 BRU SSIGN3 +* 01347 0 43 00725 776 SSIGN2 BRM GET SKIP + OR - + 01350 0 51 01333 777 SSIGN3 BRR SSIGN EXIT + 01351 0 00 00000 778 DPMT HLT 0 +* 01352 0 36 00000 779 STB WORD LOW + 01353 0 64 00032 780 MUL P5 10*HOW TO B +* 01354 0 76 01352 781 LDA WORD LOW +* 01355 0 36 01354 782 STB WORD + 01356 0 66 20001 783 RCY 1 MUL CLEARS B23 + 01357 0 64 02076 784 MUL =10 + 01360 0 02 20001 785 ROV +* 01361 0 55 01355 786 ADD WORD 10*HIGH + CARRY + 01362 0 40 20001 787 OVT +* 01363 0 61 01015 788 MIN TERR SET TRUNCATION ERROR + 01364 0 51 01351 789 BRR DPMT EXIT + 01365 0 00 00000 790 DPA HLT 0 + 01366 0 35 00012 791 STA TEMP +* 01367 0 76 00000 792 LDA WRD2 + 01370 0 14 00100 793 ETR M2 + 01371 0 66 00001 794 RSH 1 + 01372 0 14 02077 795 ETR =037777777 + 01373 0 36 00013 796 STB TEMP+1 + 01374 0 55 00013 797 ADD TEMP+1 + 01375 0 66 00027 798 RSH 23 + 01376 0 14 00066 799 ETR ONE + 01377 0 02 20001 800 ROV + 01400 0 55 00012 801 ADD TEMP +* 01401 0 55 00000 802 ADD WRD1 + 01402 0 40 20001 803 OVT +* 01403 0 61 01363 804 MIN TERR SET TRUNCATION ERROR + 01404 0 51 01365 805 BRR DPA EXIT + 01405 0 00 00000 806 DPNM HLT 0 +* 01406 0 76 01401 807 LDA WRD1 +* 01407 0 75 01367 808 LDB WRD2 +* 01410 0 36 01361 809 STB WORD X2 + 01411 0 64 00055 810 MUL MULT1 +* 01412 0 62 01406 811 XMA WRD1 X1 TO A, SAVE H +* 01413 0 36 01407 812 STB WRD2 SAVE L + 01414 0 64 00056 813 MUL MULT2 + 01415 0 66 00027 814 RSH 23 + 01416 0 14 00066 815 ETR ONE + 01417 0 43 01365 816 BRM DPA AB + HL TO AB +* 01420 0 35 01412 817 STA WRD1 SAVE H +* 01421 0 36 01413 818 STB WRD2 SAVEL +* 01422 0 76 01410 819 LDA WORD X2 + 01423 0 66 00001 820 RSH 1 + 01424 0 14 02077 821 ETR =037777777 + 01425 0 64 00055 822 MUL MULT1 + 01426 0 66 00027 823 RSH 23 + 01427 0 14 00066 824 ETR ONE + 01430 0 43 01365 825 BRM DPA AB + HL TO AB +* 01431 0 35 01420 826 STA WRD1 +* 01432 0 36 01421 827 STB WRD2 + 01433 0 51 01405 828 BRR DPNM EXIT + 01434 0 00 00000 829 $DPW HLT 0 + 01435 0 76 00052 830 LDA SCALE + 01436 0 35 00051 831 STA BEXP SCALING (IF NOT SPECIFIED + 01437 0 75 00120 832 LDB Z +* 01440 0 36 01431 833 STB WRD1 CLEAR HOW +* 01441 0 36 01432 834 STB WRD2 CLEAR LOW +* 01442 0 75 01342 835 LDB M1 + 01443 0 36 00054 836 STB FFLG RESET FLOATING FLAG + 01444 0 36 00053 837 STB DEXP -1 TO DECIMAL EXPONNET + 01445 0 43 01333 838 BRM SSIGN SET SIGN + 01446 0 75 00047 839 LDB SIGN + 01447 0 36 00050 840 STB DPSIGN SET DP SIGN + 01450 0 50 00163 841 DPW3 SKE PCHR TEST FOR . + 01451 0 01 01472 842 BRU DPW4 + 01452 0 61 00054 843 MIN FFLG SET FLOAT FLAG + 01453 0 01 01465 844 BRU DPW2 +* 01454 0 55 01334 845 DPW1 ADD CHR 2*CHR TO A +* 01455 0 62 01441 846 XMA WRD2 2*CHR TO L + 01456 0 46 20005 847 ABC L TO B +* 01457 0 62 01440 848 XMA WRD1 H TO A, 0 TO H + 01460 0 43 01351 849 BRM DPMT 10*AB TO AB + 01461 0 43 01365 850 BRM DPA 10*AB+CHR TO AB +* 01462 0 35 01457 851 STA WRD1 SAVE H +* 01463 0 36 01455 852 STB WRD2 SAVE L + 01464 0 53 00053 853 SKN DEXP SKIP UNLESS PERIOED SEEN + 01465 0 61 00053 854 DPW2 MIN DEXP INCR DECIMAL EXPONENT +* 01466 0 75 00000 855 LDB DC +* 01467 0 43 01055 856 BRM TCHR TEST FOR DECIMAL DIGIT + 01470 0 01 01450 857 BRU DPW3 + 01471 0 01 01454 858 BRU DPW1 + 01472 0 46 00400 859 DPW4 CAX +* 01473 0 75 01466 860 LDB DC +* 01474 0 43 01134 861 BRM SKB + 01475 2 00 00106 862 HLT CTT,X2 + 01476 0 01 01454 863 BRU DPW1 + 01477 0 76 00120 864 LDA Z + 01500 0 53 00053 865 SKN DEXP TEST FOR PERIOD + 01501 0 54 00053 866 SUB DEXP DECIMAL EXPONENT + 01502 0 35 00053 867 STA DEXP +* 01503 0 76 01454 868 LDA CHR + 01504 0 50 00204 869 DECK2 SKE HE + 01505 0 01 01512 870 BRU DECK3 +* 01506 0 43 01347 871 BRM GET + 01507 0 43 02007 872 BRM DECW + 01510 0 63 00053 873 DECK6 ADM DEXP +* 01511 0 76 01503 874 LDA CHR + 01512 0 50 00203 875 DECK3 SKE HB + 01513 0 01 01524 876 BRU DECK4 +* 01514 0 43 01506 877 BRM GET + 01515 0 43 02007 878 BRM DECW + 01516 0 46 01000 879 CNA + 01517 0 35 00051 880 DECK8 STA BEXP +* 01520 0 76 01442 881 LDA M1 + 01521 0 35 00054 882 STA FFLG +* 01522 0 76 01511 883 LDA CHR + 01523 0 01 01504 884 BRU DECK2 + 01524 0 50 02100 885 DECK4 SKE ='*' + 01525 0 01 01543 886 BRU DECK5 +* 01526 0 43 01514 887 BRM GET + 01527 0 50 00020 888 SKE '+' + 01530 0 01 01535 889 BRU DECK7 +* 01531 0 43 01526 890 BRM GET + 01532 0 43 00431 891 BRM SCI + 01533 0 63 00053 892 ADM DEXP + 01534 0 01 01503 893 BRU DECK2-1 + 01535 0 50 02071 894 DECK7 SKE ='/' + 01536 0 01 01543 895 BRU DECK5 +* 01537 0 43 01531 896 BRM GET + 01540 0 43 00431 897 BRM SCI + 01541 0 55 00051 898 ADD BEXP + 01542 0 01 01517 899 BRU DECK8 +* 01543 0 76 01462 900 DECK5 LDA WRD1 +* 01544 0 75 01463 901 LDB WRD2 + 01545 0 71 00120 902 LDX Z,X0 + 01546 0 67 10056 903 NOD 46 NORMALIIE +* 01547 0 35 01543 904 STA WRD1 +* 01550 0 36 01544 905 STB WRD2 + 01551 0 46 00200 906 CXA + 01552 0 67 20011 907 LCY 9 + 01553 0 66 00011 908 RSH 9 + 01554 0 73 02101 909 SKG =-46 + 01555 0 76 02101 910 LDA =-46 + 01556 0 53 00053 911 SKN DEXP + 01557 0 55 00125 912 ADD P24 + 01560 0 63 00051 913 ADM BEXP MODIFY B1NARY EXPONENT + 01561 0 53 00053 914 SKN DEXP TEST SIGN OF DECIMAL EXPONENT + 01562 0 01 01655 915 BRU DPW5A + 01563 0 46 30003 916 CLR + 01564 0 54 00053 917 SUB DEXP + 01565 0 01 01571 918 BRU DPW9 + 01566 0 76 02101 919 DPW91 LDA =-46 + 01567 0 63 00051 920 ADM BEXP + 01570 0 76 00053 921 LDA DEXP + 01571 0 75 00120 922 DPW9 LDB Z + 01572 0 36 00053 923 STB DEXP 0 TO D + 01573 0 73 00031 924 SKG P9 TEST RANGE + 01574 0 01 01600 925 BRU DPW6 + 01575 0 54 00031 926 SUB P9 + 01576 0 35 00053 927 STA DEXP D-9 TO D + 01577 0 76 00031 928 LDA P9 + 01600 0 46 00400 929 DPW6 CAX + 01601 0 46 01000 930 CNA + 01602 0 63 00051 931 ADM BEXP MODIFY BINARY EXPONENT + 01603 2 75 00066 932 LDB FIVES,X2 POWER OF 5 + 01604 0 76 00120 933 LDA Z + 01605 0 71 00120 934 LDX Z,X0 + 01606 0 67 10056 935 NOD 46 NORMALIZE POWER OF F1VE +* 01607 0 35 01422 936 STA WORD + 01610 0 46 00200 937 CXA + 01611 0 67 20011 938 LCY 9 + 01612 0 66 00011 939 RSH 9 + 01613 0 46 01000 940 CNA + 01614 0 63 00051 941 ADM BEXP BINARY EXPONENT + 01615 0 76 00017 942 LDA B1 + 01616 0 75 00120 943 LDB Z +* 01617 0 65 01607 944 DIV WORD + 01620 0 35 00055 945 STA MULT1 1ST WORD OF RECIPRICAL + 01621 0 46 10012 946 BAC +* 01622 0 65 01617 947 DIV WORD + 01623 0 55 00066 948 ADD ONE + 01624 0 35 00056 949 STA MULT2 2ND WORD OF RECIPRICAL + 01625 0 43 01405 950 BRM DPNM DATA TIMES POWER OF 5 + 01626 0 76 00053 951 LDA DEXP + 01627 0 50 00120 952 SKE Z TEST FOR DECIMAL SCALING DONE + 01630 0 01 01566 953 BRU DPW91 +* 01631 0 76 01547 954 DPW10 LDA WRD1 + 01632 0 53 00054 955 SKN FFLG TEST FOR FLOATING PO1NT + 01633 0 01 01706 956 BRU DPF + 01634 0 02 20001 957 ROV + 01635 0 71 00051 958 LDX BEXP,X0 + 01636 0 53 00051 959 SKN BEXP + 01637 0 01 01646 960 BRU DPW12 + 01640 0 62 00051 961 XMA BEXP + 01641 0 46 01000 962 CNA + 01642 0 62 00051 963 XMA BEXP + 01643 0 71 00051 964 LDX BEXP,X0 + 01644 2 66 00000 965 RSH 0,X2 + 01645 0 01 01651 966 BRU DPW13 + 01646 2 67 00000 967 DPW12 LSH 0,X2 + 01647 0 40 20001 968 OVT +* 01650 0 61 01403 969 MIN TERR SET TRUNCATION ERROR +* 01651 0 35 01631 970 DPW13 STA WRD1 +* 01652 0 36 01550 971 DPW14 STB WRD2 + 01653 0 43 01737 972 BRM DPSS COMPLEMENT IF NEG + 01654 0 01 01730 973 BRU DPW20 + 01655 0 76 02102 974 DPW5A LDA =22 + 01656 0 63 00051 975 ADM BEXP + 01657 0 75 00120 976 DPW5 LDB Z + 01660 0 76 00053 977 LDA DEXP + 01661 0 36 00053 978 STB DEXP 0 TO B + 01662 0 73 00031 979 SKG P9 TEST RANGE + 01663 0 01 01667 980 BRU DPW11 + 01664 0 54 00031 981 SUB P9 + 01665 0 35 00053 982 STA DEXP + 01666 0 76 00031 983 LDA P9 + 01667 0 46 00400 984 DPW11 CAX + 01670 0 63 00051 985 ADM BEXP MODIFY BINARY EXPONENT + 01671 2 75 00066 986 LDB FIVES,X2 PWER OF 5 + 01672 0 76 00120 987 LDA Z + 01673 0 71 00030 988 LDX P47,X0 + 01674 0 67 10056 989 NOD 46 + 01675 0 35 00055 990 STA MULT1 NORMALIZED POWER OF 5 + 01676 0 46 00200 991 CXA + 01677 0 63 00051 992 ADM BEXP MODIFY B + 01700 0 36 00056 993 STB MULT2 CLEAR LOW ORDER WORD + 01701 0 43 01405 994 BRM DPNM DATA TIMES POWER OF 5 + 01702 0 76 00053 995 LDA DEXP + 01703 0 73 00120 996 SKG Z + 01704 0 01 01631 997 BRU DPW10 FINISHED + 01705 0 01 01657 998 BRU DPW5 + 01706 0 43 01737 999 DPF BRM DPSS COMPLEMENT IF NEG + 01707 0 71 00030 1000 LDX P47,X0 + 01710 0 67 10057 1001 NOD 47 +* 01711 0 35 01651 1002 STA WRD1 + 01712 0 46 00200 1003 CXA + 01713 0 72 00102 1004 SKA FMM + 01714 0 76 00120 1005 LDA Z + 01715 0 50 00120 1006 SKE Z + 01716 0 55 00051 1007 ADD BEXP MODIFY BINARY EXPONENT + 01717 0 35 00051 1008 STA BEXP + 01720 0 67 00017 1009 LSH 15 + 01721 0 66 00017 1010 RSH 15 + 01722 0 50 00051 1011 SKE BEXP +* 01723 0 61 01650 1012 MIN TERR SET TRUNCATION ERROR + 01724 0 67 20017 1013 LCY 15 + 01725 0 46 00004 1014 CAB + 01726 0 66 20017 1015 RCY 15 +* 01727 0 36 01652 1016 STB WRD2 +* 01730 0 76 01522 1017 DPW20 LDA CHR +* 01731 0 35 01335 1018 STA TERM SET TERMINATIR +* 01732 0 43 01537 1019 BRM GET SKIP , + 01733 0 43 02041 1020 BRM GNF +* 01734 0 75 01727 1021 LDB WRD2 +* 01735 0 76 01711 1022 LDA WRD1 + 01736 0 51 01434 1023 BRR DPW EXIT + 01737 0 00 00000 1024 DPSS HLT 0 + 01740 0 53 00050 1025 SKN DPSIGN TEST DP SIGN + 01741 0 51 01737 1026 BRR DPSS EXIT + 01742 0 46 00014 1027 XAB +* 01743 0 17 01520 1028 EOR M1 +* 01744 0 54 01743 1029 SUB M1 + 01745 0 46 00014 1030 XAB +* 01746 0 55 01744 1031 ADD M1 +* 01747 0 43 01474 1032 BRM SKB +* 01750 0 00 01746 1033 HLT M1 +* 01751 0 54 01750 1034 SUB M1 +* 01752 0 17 01751 1035 EOR M1 +* 01753 0 35 01735 1036 STA WRD1 +* 01754 0 36 01734 1037 STB WRD2 + 01755 0 51 01737 1038 BRR DPSS EXIT + 01756 0 00 00000 1039 $OCTW HLT 0 + 01757 0 43 01333 1040 BRM SSIGN SET SIGN + 01760 0 73 00143 1041 SKG A7 + 01761 0 01 01764 1042 BRU OCT1 +* 01762 0 61 00666 1043 MIN EERR NOT OCTAL CHAR + 01763 0 51 01756 1044 BRR OCTW EXIT +* 01764 0 35 01331 1045 OCT1 STA VALU +* 01765 0 75 00000 1046 LDB OC +* 01766 0 43 01467 1047 BRM TCHR TEST FOR OCTAL CHAR + 01767 0 01 01776 1048 BRU OCT2 + 01770 0 66 00003 1049 RSH 3 +* 01771 0 76 01764 1050 LDA VALU + 01772 0 72 00020 1051 SKA A0 +* 01773 0 61 01723 1052 MIN TERR + 01774 0 67 00003 1053 LSH 3 INSERT NEW CHAR + 01775 0 01 01764 1054 BRU OCT1 TRY NEXT CHAR +* 01776 0 35 01731 1055 OCT2 STA TERM +* 01777 0 43 01732 1056 BRM GET + 02000 0 43 02041 1057 BRM GNF +* 02001 0 76 01771 1058 LDA VALU + 02002 0 17 00123 1059 EOR B0 + 02003 0 53 00047 1060 SKN SIGN TEST FOR PRECEDING MINUS + 02004 0 17 00123 1061 EOR B0 NO PRECEDING MUNUS +* 02005 0 35 02001 1062 STA VALU RESULT + 02006 0 51 01756 1063 BRR OCTW EXIT + 02007 0 00 00000 1064 $DECW HLT 0 + 02010 0 43 01333 1065 BRM SSIGN SET SIGN + 02011 0 73 00031 1066 SKG P9 + 02012 0 01 02015 1067 BRU DEC1 + 02013 0 76 00120 1068 LDA Z + 02014 0 01 02034 1069 BRU DEC3 +* 02015 0 35 02005 1070 DEC1 STA VALU +* 02016 0 75 01473 1071 LDB DC +* 02017 0 43 01766 1072 BRM TCHR + 02020 0 01 02033 1073 BRU DEC2 +* 02021 0 76 02015 1074 LDA VALU + 02022 0 75 00120 1075 LDB Z + 02023 0 02 20001 1076 ROV + 02024 0 67 00002 1077 LSH 2 +* 02025 0 55 02021 1078 ADD VALU + 02026 0 67 00001 1079 LSH 1 +* 02027 0 55 01730 1080 ADD CHR + 02030 0 40 20001 1081 OVT +* 02031 0 61 01773 1082 MIN TERR SET TRUNCATION ERROR + 02032 0 01 02015 1083 BRU DEC1 +* 02033 0 76 02025 1084 DEC2 LDA VALU + 02034 0 46 01000 1085 DEC3 CNA + 02035 0 53 00047 1086 SKN SIGN TEST FOR PRECEDING M1NUS + 02036 0 46 01000 1087 CNA +* 02037 0 35 02033 1088 STA VALU RESULT + 02040 0 51 02007 1089 BRR DECW EXIT + 02041 0 00 00000 1090 GNF HLT 0 +* 02042 0 76 01776 1091 GNF1 LDA TERM +* 02043 0 50 00000 1092 SKE CCHR TEST FOR COMMA +* 02044 0 53 01752 1093 SKN M1 ALWAYS SKIP + 02045 0 51 02041 1094 BRR GNF EXIT +* 02046 0 50 01075 1095 SKE BCHR TEST FOR BLANK +* 02047 0 53 02044 1096 SKN M1 ALWAYS SKIP + 02050 0 51 02041 1097 BRR GNF EXIT IF BLANK +* 02051 0 61 01762 1098 MIN EERR ILLEGAL CHARACTER +* 02052 0 76 02027 1099 LDA CHR +* 02053 0 35 02042 1100 STA TERM +* 02054 0 43 01777 1101 BRM GET SKIP CHARACTER + 02055 0 01 02042 1102 BRU GNF1 + 02056 0 00 00000 1103 $MAXL HLT 0 + 02057 0 76 00001 1104 LDA MLOC OLD MAX +* 02060 0 73 00571 1105 SKG LOC +* 02061 0 76 02060 1106 LDA LOC + 02062 0 35 00001 1107 STA MLOC NEW MAX + 02063 0 51 02056 1108 BRR MAXL + 00000000 1109 BCON EQU 0 BLANK CONNECTER CODE + 00000100 1110 CCON EQU 0100 , CONNECTER CODE + 00000020 1111 RCON EQU 020 ) CONNECTER CODE + 00003310 1112 SCON EQU 03310 + ++ CONNECTER CODES + 00003411 1113 DCON EQU 03411 - -- CONNECTER CDDES + 00004522 1114 PCON EQU 04522 * ** CONNECTER CODES + 00004647 1115 QCON EQU 04647 / // CONNECTER CODES + 1116 END + 02064 77770000 + 02065 00005000 + 02066 00001700 + 02067 10101010 + 02070 00000020 + 02071 00000061 + 02072 00005100 + 02073 00177777 + 02074 00177775 + 02075 00040000 + 02076 00000012 + 02077 37777777 + 02100 00000054 + 02101 77777722 + 02102 00000026 + 00241 LADD + 01210 LIMT + 02061 LOC + 00265 LRT + 00541 LST + 00363 LSXT + 00217 LTR1 + 00223 LTR2 + 00243 LTR3 + 02047 M1 + 00766 MODE + 01765 OC + 00503 OCTF + 01203 OERR + 00260 PASS + 00651 PERR + 00274 REFM + 00747 RELM + 00741 RERR + 00673 SCHR + 01054 SC + 01747 SKB + 00016 SOT + 02017 TCHR + 02053 TERM + 02031 TERR + 00014 TPL + 02037 VALU + 00543 VERR + 01622 WORD + 01753 WRD1 + 01754 WRD2 + 00263 XERR + 00575 ADDR + 00573 B8 + 02046 BCHR + 02043 CCHR + 00661 CC + 02052 CHR + 00533 CNTR + 02016 DC + 01177 DERR + 00476 DLY1 + 01174 DUPM + 02051 EERR + 02054 GET + 00432 IC + 00566 IFLG \ No newline at end of file diff --git a/symbol/section-5.si b/symbol/section-5.si new file mode 100644 index 0000000..4ba5e37 --- /dev/null +++ b/symbol/section-5.si @@ -0,0 +1,1115 @@ +* S2 +S9300 EQU 0 +X0 EQU S9300 +X2 EQU 2-S9300 +CAB OPD 016400000 +CBA OPD 016500000 +CAX OPD 016600000 +CXA OPD 015700000 +CBX OPD 017000000 +CNA OPD 017100000 +SKE OPD 017200000 +SKR OPD 017300000 +MUL OPD 017400000 +DIV OPD 017500000 +ADM OPD 017500000 +XMA OPD 017700000 +$LSYM HLT SM1 +$MLOC RES 1 +$SCNX RES 1 +$LOP RES 1 +$LITM RES 1 +$SCIX RES 1 +CHR1 TEXT 4,CHR1 +CHR2 TEXT 4,CHR2 +LREF RES 1 +CNCT TEXT 4,CNCT +TEMP RES 2 +LLT HLT TPL LOCATION OF LITERAL TABLE PACKET +LLTR HLT LTR1 LOCATION OF LTR1 +SCNO HLT SOT SCAN STORAGE LIMIT +B1 RES 0 +B1 DATA 020000000 +A0 DATA 070000000 +A4 DATA 07000 +A5 DATA 0700 +B9 DATA 040000 +C0 DAtA 077000000 +C2 DATA 07700 +C02 DATA 077007700 +P69 DATA 69 +P47 DATA 47 +P9 DATA 011 +P5 DATA 5 +RRM DATA 0202 +XADR HLT -1,X2 +$SM1 RES 1 +SM2 TEXT 4,SM2 +SM3 TEXT 4,SM3 +KEY1 TEXT 4,XEY1 +KEY2 TEXT 4,KEY2 +LKI TEXT 4,LK1 +LKM TEXT 4,LKM +LKP TEXT 4,LKP +LKS TEXT 4,LKS +LKT TEXT 4,LKT +SIGN RES 1 +DPSIGN RES 1 +BEXP RES 1 +$SCALE RES 1 +DEXP RES 1 +FFLG RES 1 +MULT1 RES 1 +MULT2 RES 1 +AP HLT PCON PRODUCT CONNECTER +KF1 FORM 7,17 +KF2 FORM 13,11 +K1 KF1 10-0100,0 +K2 KF2 100-010000,0 +K3 DATA 5000 + KF1 010-0100,0 + KF2 0100-010000,0 + DATA 010000/2 +B23 RES 0 +ONE RES 0 +FIVES DATA 1 + DATA 5 + DATA 25 + DATA 125 + DATA 625 + DATA 3125 + DATA 15625 + DATA 78125 + DATA 390625 + DATA 1953125 +M2 RES 0 +LOM DATA 077777776 +FEM DATA 0777 +FMM DATA 077777000 +MK12 DATA 07777 +MK6 DATA 0770077 +MK3 DATA 07070707 +XYZ OPD 06000000 +ITM OPD 04000000 ITEM +CON OPD 02000000 CONNECTER +STM OPD 05400000 SYMBOL,LABEL,ITEM +DTM OPD 04600000 DECIMAL,SYMBOL,ITEM +OTM OPD 04700000 OCTAL,DECIMAL,SYMBOL,ITEM +$CTT RES 0 + OTM SCO + OTM SCD 1 01 + OTM SCD 2 02 + OTM SCD 3 03 + OTM SCD 4 04 + OTM SCD 5 05 + OTM SCD 6 06 + OTM SCD 7 07 + OTM SCD 8 10 + OTM SCD 9 11 +Z HLT 0 +C3 HLT 077 + ITM SCA ' 14 +B0 DATA 040000000 +B22 HLT 2 +P24 HLT 24 + CON SCON + 20 + STM SCS A 21 + STM SCS B 22 + STM SCS C 23 + STM SCS D 24 + STM SCS E 25 + STM SCS F 26 + STM SCS G 27 + STM SCS H 30 + STM SCS I 31 +ECHR HLT '=' +MCHR HLT '-' + CON RCON ) 34 +A7 HLT 7 +P3 HLT 3 +B17 HLT 0100 + CON DCON - 40 + STM SCS J 41 + STM SCS K 42 + STM SCS L 43 + STM SCS M 44 + STM SCS N 45 + STM SCS O 45 + STM SCS P 47 + STM SCS Q 50 + STM SCS R 51 +PLUS HLT '+' + ITM SCL $ 53 + XYZ SCL * 54 +PCHR HLT '.' +QCHR HLT 014 +RCHR HLT ')' + CON BCON 60 + CON QCON / 61 + STM SCS S 62 + STM SCS T 63 + STM SCS L 64 + STM SCS V 65 + STM SCS W 66 + STM SCS X 67 + STM SCS Y 70 + STM SCS Z 71 + HLT 0 + CON CCON , 73 + ITM SCX ( 74 +HB HLT 'B' +HE HLT 'E' +X2W HLT 0,X2 +$SCNL HLT 0 + LDA CHR + SKE ECHR TEST FOR = + BRU SCR1 NOT LITERAL + BRM GET SKIP = + BRM SCAN + BRM SCNM + BRR SCNL EXIT SCNL +$SCNM HLT 0 +SCKS STA LTR1 + SKN PASS + BRR SCNM EXIT + LDA LLTR + STB LTR2 STORE LITERAL + LDB LLT + BRM SRCH SEARCH FOR LITERAL + BRU SCK2 NOT IN TABLE + LDA 2,X2 LOCATION OF LITERAL +SCK3 LDB Z + SKA B8 + LDB RELM + ETR ADDR + STA VALU + STB MODE + BRR SCNM EXIT SCNM +SCK2 LDA LADD + STA LTR3 + MIN LADD INCREMENT LITERAL LOCATION + BRM MOVE INSERT LITERAL IN TABLE + LDA LTR3 LOCATION OF LITERAL + BRU SCK3 +SCR1 BRM SCNR GET EXPRESSION OR REFERENCE + BRR SCNL +SCNR HLT 0 + BRM SCAN GET EXPRESSION + LDA VERR UNDEFINED FLAG + SKG Z + BRU SCR2 ALL SYMBOL DEFINED + LDA CHR1 + SKE Z TEST FOR NO CONNECTERS + BRU SCR2 UNDEFINED ITEM + LDA Z REFERENCE + SKN PASS + BRR SCNR + STA VERR RESET UNDEFINED FLAG + MIN XERR SET EXTERNALFLAG + LDA LSYM + LDB LRT + BRM SRCH SEARCH FOR REFERENCE + BRU SCR3 NOT INTABLE +SCR4 ETR ADDR + STA VALU + STB MODE + LDA LOC + LDB REFM + SKA B8 + LDB RRM + STA 2,X2 + LDA 1,X2 + ETR =077770000 + STB 1,X2 + ADM 1,X2 + LDA VALU + LDB MODE + BRR SCNR EXIT +SCR3 STA SM3 NO PREVIOUS REF + BRM MOVE INSERT REFERENCE + CLR + BRU SCR4 +SCR2 LDA VALU NO REF OR LIT + BRR SCNR EXIT +$SCAN HLT 0 + CLR + STA *LOP 0 TO BASE CONECTER + STA VALU 0 TO VALUE + STA MODE 0 TO MODE + STA CHR1 RESET + LDX CHR,X0 + LDB CTT,X2 + BRM SKB + HLT IC + BRU SCN1 NOT CONECTER + BRU SCN8 +SCN3 MIN LOP INCR OP + MIN LITM INCR ITEM + LDA MODE + STA *LOP STORE OP + LDA VALU + STA *LITM STORE ITEM +SCN1 LDA CHR + CAX + BRM SCI GET NEXT ITEM + STA VALU + STB MODE + LDX CHR,X0 +SCN8 BRM SCC GET NEXT CONECTER + STA MODE +SCN7 LDB A4 HIERARCHY MASK + SKG *LOP MODE IS IN A + BRU SCN2 LEVEL NOT GREATER + SKM *LOP + BRU SCN3 LEVEL GREATER +SCN2 LDA *LOP LAST CONECTER + SKM Z TEST FOR TERMINATER + BRU SCN4 DO OPERATION + LDA MODE + ETR C3 MASK MODE + CAB MODE TO B + LDA SCNX + SKE LSXT TEST P LEVEL + BRU SCN11 NOT 0 + LDA RCHR + SKE TERM ERROR IF ) + BRU SCN12 + BRU SCN13 +SCN11 LDA RCHR + SKE TERM +SCN13 MIN PERR SET P ERROR +SCN14 LDA VALU + BRR SCAN EXIT SCAN +SCN12 BRM GNF SKIP TO NEXT FIELD + BRU SCN14 +SCN4 LDB A4 + SKM =05000 + ETR A5 + ETR =01700 + RSH 6 + CAX OP NUMBER TO X + LDB *LOP + ROV + LDA *LITM + BRU *SCN5,X2 BRANCH TO OP CODE +SCN5 BRU CLS LOSICALSUM + BRU CLD LOGICAL DIFFERENCE + BRU CLP LOGICAL PRODUCT + BRU CAS ARITHMETIC SUM + BRU CAD ARITHMETIC DIFFERENCE + BRU CAP ARITHMETIC PRODUCT + BRU CXQ EXCLUSIVE QUOTIENT + BRU CEQ INCLUSIE QUOTIENT + BRU CDS + BRU CBS +SCN6 LDA M1 + ADM LOP DECR OP + ADM LITM DECR ITEM + LDA MODE + BRU SCN7 TEST PREVIOUS OP +SCI HLT 0 +SCI2 LDB IC + BRM SKB + HLT CTT,X2 + BRU SCI1 + MIN EERR SET EFLAG + BRM GET SKIP CHAR + CLR + BRR SCI EXIT +SCI1 BRU *CTT,X2 +SCS EQU $ +SCO EQU $ +SCD EQU $ +SCIT LDB A7 + STB CNTR MAX CHARACTER COUNT + STA CHR2 SAVE LEAD CHAR + SKE Z + BRU SCIT7 + BRM GET SKIP 0 + LDB SC + BRM SKB + HLT CTT,X2 + BRU SCIT7 VALID SYMBOL CHARACTER + CLR + BRR SCI EXIT WITH ZERO +SCIT7 LDB Z + BRU SCIT1 +SCIT3 LDB SM2 + XMA SM1 + LCY 6 + MRG SM1 INSERT NEW CHARACTER +SCIT1 STA SM1 + STB SM2 + LDB SC + BRM TCHR TEST FOR ALPHANUMERIC + BRU SCIT2 END OF SYMBOLIC ITEM + SKR CNTR TEST FOR MAX SIZE + BRU SCIT3 +SCIT2 LDA SM1 + MRG SM2 + SKA DLY1 TEST ZONE BITS + BRU SCIT4 SYMBOL + LDX Z,X0 + LDB CHR2 + BRM SKB + HLT OCTF + BRU SCIT21 + LDX P3,X0 + SKA =010101010 + MIN EERR +SCIT21 LDA SM2 HIGH ORDER HALF + BRM CNVRT CONVERT + MUL K3,X2 TIMES BASE TO THE 4TH + STB SM2 PARTIAL RESULT + SKE Z + MIN TERR SET TRUNCATION ERROR + LDA SM1 LOW ORDER HALF + BRM CNVRT CONVERT + ROV + ADD SM2 + OVT + MIN TERR SET TRUNCATION ERROR + LDB Z 0 TO MODE + BRR SCI EXIT +SCIT4 LDA SM1 + LDB SM2 + BRU SCIT5 +SCIT6 LCY 6 ADDUST + MRG BCHR INSERT BLANK +SCIT5 SKR CNTR TEST FOR SYMBOL ADJUSTED + BRU SCIT6 + ETR =077770000 + STA SM2 + STB SM1 + LDA LSYM LOCATION OF SYMBOL + LDB LST LOCATION OF SYMBOL TABLE + BRM SRCH SEARCH + MIN VERR NOT FOUND + XAB + SKA B17 + MIN DERR + ETR C3 SAVE MODE + XAB + BRM SKB + HLT RELM + ETR ADDR + BRR SCI EXIT +SCL LDA CHR + SKE SCHR TEST FOR * + BRU SCL1 $ IS ALWAYS LOCATION COUNTER + BRM GET + CAX + LDB CC + BRM SKB + HLT CTT,X2 + BRU SCL2 + MIN IFLG + BRU SCI2 +SCL1 BRM GET +SCL2 LDA LOC + LDB Z + SKA B8 + LDB RELM + ETR ADDR + BRR SCI EXIT +SCA LDA Z + BRU SCA2 +SCA1 LDA VALU + SKA C0 + MIN TERR + SKA C0 + BRU SCA3 + LSH 6 + MRG CHR INSERT NEW CHAR +SCA2 STA VALU + BRM GET GET CHAR + LDB Z + SkE QCHR TEST FOR QUOTE + BRU SCA1 +SCA3 BRM GET + LDB Z + LDA VALU + BRR SCI EXIT +SCX LDA SCNO + SKG SCNX + BRU SCX1 TOO MANY LEYELS + LDA SCAN + STA *SCNX SAVE EXIT + LDA SCI + STA *SCIX + MIN SCIX + MIN SCNX INCR + MIN LOP + MIN LITM + BRM GET SKIP ( + BRM SCAN GET SUB-EXPRESSION + LDA M1 + ADM SCNX DECR + ADM LOP + ADM LITM + ADM SCIX + LDA *SCIX + STA SCI + LDA *SCNX + STA SCAN RESTORE EXIT + LDA VALU + BRR SCI EXIT +SCX1 MIN PERR SET P FLAG +SCX2 BRM GET + SKE RCHR + BRU SCX2 SKIP SUB+EXPRESSIDN + BRM GET SKIP ) + CLR + BRR SCI EXIT +SCC HLT 0 + LDB CC + BRM SKB + HLT CTT,X2 + BRU SCC1 + STA TERM + MIN EERR SET E FLAG + BRM GET SKIP CHAR + LDA MODE + BRR SCC EXIT +SCC1 CXA + SKE SCHR CONECTER IS AP IF * + BRU SCC7 + STA CHR1 + BRM GET + SKE ='+' + BRU SCC5 + LDB =05000 + BRU SCC8 +SCC5 LDB AP + STB CNCT + SKE ='/' + BRU SCC6 + LDB =05100 + BRU SCC8 +SCC7 LDB CTT,X2 + STB CNCT SAVE CONECTER + BRM SKB + HLT A4 + BRU SCC2 NOT TERMTNATER + STX TERM,X0 SAVE TERMINATER +SCC4 BRM GET POSITION AT NEXT CHAR +SCC3 LDA CNCT + ETR C2 EXTRACT CONNECTER + MRG MODE + BRR SCC EXIT +SCC2 STA CHR1 SAVE CHAR + BRM GET GET NEXT CHAR + LDB CNCT +SCC6 SKE CHR1 + BRU SCC3 + LSH 6 USE ALTERNATE CONNECTER +SCC8 STB CNCT + BRU SCC4 +CLS MRG VALU V = L++V +CLS1 STA VALU + LDA MODE + MRG *LOP ERROR IF EITHER ARE REL +CLS2 SKA RELM + MIN RERR + OVT + MIN TERR SET TRUNCATION ERROR + LDA MODE + EOR RELM + XAB + SKA RELM + STB MODE + BRU SCN6 +CLD EOR VALU V=L--V + BRU CLS1 +CLP ETR VALU V=L**V + BRU CLS1 +CAS ADM VALU V=L+V + LDA MODE + ETR *LOP ERROR IF BOTH ARE REL + BRU CLS2 +CAD SUB VALU + STA VALU V=L-V + LDA *LOP + EOR M1 COMPLEMENT OF UMODE + ETR MODE ERROR IF V REL AND U NOT + BRU CLS2 ERROR IF V IS REL +CAP MUL VALU + LSH 23 V=L*Y +CAP1 LDB *LOP RESTORE B + BRU CLS1 +CEQ ADD M1 + ADD VALU L+V-1 +CXQ RSH 23 + DIV VALU L/V OR (L+Y-1)/V + BRU CAP1 +CDS LDA VALU + SKG M1 + CNA + SKG P9 + BRU $+2 + MIN TERR + CAX + LDB Z + ROV + LDA FIVES,X2 + LSH 0,X2 + OVT + MIN TERR + XMA VALU + SKG M1 + BRU CDS1 + LDA *LITM + BRU CAP +CDS1 LDA *LITM + BRU CXQ +CBS LDA VALU + SKN VALU + BRU CBS1 + CNA + CAX + LDB Z + LDA *LITM + RSH 0,X2 + BRM SKB + HLT M1 + SKG *LITM + BRU CAP1 + ADD ONE + BRU CAP1 +CBS1 CAX + LDB Z + LDA *LITM + LSH 0,X2 + BRU CAP1 +$SYM HLT 0 + LDB Z +SYM2 STA SM1 + STB SM2 + LDB SC + BRM TCHR TEST FOR SYMBOL CHAR + BRU SYM1 END SYMBOL + LDB SM2 + XMA SM1 + BRM SKB + HLT C2 + BRU SYM3 + LCY 6 + MRG SM1 + BRU SYM2 +SYM1 LDB SM2 + LDA SM1 +SYM4 BRM SKB + HLT C2 + BRU SYM3 + LCY 6 + MRG BCHR + BRU SYM4 +SYM3 RCY 12 + STA SM1 + STB SM2 + BRR SYM EXIT +$SRCH HLT 0 + STA LKI SAVE ITEM LOC + STB LKT SAVE PACKET LOC + CAX LOC OF ITEM + LDA 0,X2 + STA KEY1 + LDA 1,X2 + CBX + ETR 3,X2 + STA KEY2 STORE KEY + LDA 0,X2 T = END OF TABLE + STA LKS S=T + LDA 1,X2 F = LOC OF 1ST ITEM + LDB 3,X2 + STB LKM MASK FOR 2ND KEY WORD + LDB 2,X2 I = INITIAL INCR + BRU LK1 +LK3 RSH 1 + LDA 0,X2 K(X) + SKG KEY1 COMPARE WITH K(L) + BRU LK2 K(L) GREATER OR EQUAL +LK7 CBA + ADD LKS +LK1 CAX + LDA Z + BRM SKB + HLT M2 + BRU LK3 + CLR NOT FOUND + LDX LKS,X0 + BRU LK5 +LK2 SKE KEY1 + BRU LK4 KEYS NOT EQUAL + LDA 1,X2 2ND WORD OF KEY + ETR LKM MASK OUT MODE + SKE KEY2 TEST FOR EQUAL KEYS + BRU LK6 KEYS NOT EQUAL + MIN SRCH TAPE FOUND EX1T + LDB 1,X2 MODE + LDA 2,X2 VALUE +LK5 BRR SRCH EXIT +LK6 SKG KEY2 COMPARE 2ND WORDS +LK4 STX LKS,X0 K(L) GREATER, S = X + BRU LK7 +$NSRT HLT 0 + BRM SRCH SEARCH FOR ITEM + BRU NS3 NOT FOUND + MIN LKI + LDA *LKI + MIN LKI + LDB *LKI + SKE 1,X2 + BRU NS1 1ST WORD NOT EQUAL + XAB + SKE 2,X2 + BRU NS1 2ND WORDS NOT EQUAL + BRR NSRT EXIT +NS1 LDA DUPM + MRG 1,X2 SET DUP FLAG + STA 1,X2 + MIN DERR SET DUP ERROR + BRR NSRT EXIT +NS3 BRM MOVE MOVE ITEM TO TABLE + BRR NSRT EXIT +OFLO MIN OERR + BRR MOVE +MOVE HLT 0 + LDA P3 + ADM LIMT -(M-3) TO M + SKN LIMT + BRU OFLO + STX LKP,X0 SAVE P + LDX LKT,X0 PACKET LOCATION + LDA X2W CONSTRUCTION INDIRECT WORD + MRG LKP P,X2 + SKN 5,X2 TYPE (UP OR DOWN) + BRU MOV1 MOVE UP + STA LKM P,X2 (TO) + ADD P3 P+3,X2 (FORM) + STA LKS P+3,X2 IFORM) + LDA 0,X2 B + SUB LKP NO, OF WORDS TO MOYE + ADD =0177777 + CAX + BRU MOV2 +MOV3 LDA *LKS + STA *LKM MOVE ONE WORD DOWN +MOV2 BRX MOV3,X0 +MV1 LDX =00200000-3,X0 + LDA LKS + SUB P3 + STA LKP LOCATIONOF INSERTED ITEM +MOV4 LDA *LKI + STA *LKS INSERT NEW ITEM + MIN LKI + BRX MOV4,X0 + LDX LKT,X0 PACKET LOCATION + LDA P3 + ADM 4,X2 N+3 TO N + LDA 2,X2 M + SKG 4,X2 M:N + BRU MOV5 M=N + SKN 5,X2 TYPE + BRU MOV8 UP TABLE + LDA 0,X2 +MV2 SUB P3 + STA 0,X2 B-3 TO B + BRU MV3 +MOV8 LDA P3 + ADM 1,X2 F+3 TO F +MV3 LDX LKP,X0 LOCATION OF INSERTED ITEM + BRR MOVE EXIT +MOV5 LDB Z + ADD 4,X2 M+N TO M + STA 2,X2 + STB 4,X2 0 TO N + LDA 0,X2 B + SKN 5,X2 + ADD P3 B + 3 TO B + STA 1,X2 B TO F + BRU MV2 +MOV1 ADD B22 + ETR XADR CONSTRUCT INDIRECT WORD + STA LKS P+2,X2 (FROM) + ADD P3 + STA LKM P+5,X2 (TO) + LDA 0,X2 B + ADD 2,X2 B+M + ADD 4,X2 B+M+N + SUB LKP B+M+N-P + SKG Z NO OF WORDS TO MOVE + BRU MOV6 0 WORDS + MRG =040000*/S9300 + CAX +MOV7 LDA *LKS + STA *LKM MOVE ONE WORD UP 3 + EAX -2,X2 + BRX MOV7,X0 +MOV6 LDA LKM P+5,X2 + ADD B23 P+6,X2 + STA LKS + BRU MV1 +CNVRT HLT 0 + STA VALU + ETR C02 MASK 1ST AND 3RD CHARACTERS + MUL K1,X2 T1MES BASE - 64 + ADD VALU + STA VALU + ETR =077770000 + MUL K2,X2 TIMES BASE SQUARED - 4096 + ADD VALU RESULT + BRR CNVRT EXIT +SSIGN HLT 0 + LDA CHR + STA TERM + LDB Z + STB SIGN + TO SIGN + SKE MCHR TEST FOR - + BRU SSIGN1 + LDB M1 + STB SIGN - TO SIGN + BRU SSIGN2 +SSIGN1 SKE PLUS TEST FOR + + BRU SSIGN3 +SSIGN2 BRM GET SKIP + OR - +SSIGN3 BRR SSIGN EXIT +DPMT HLT 0 + STB WORD LOW + MUL P5 10*HOW TO B + LDA WORD LOW + STB WORD + RCY 1 MUL CLEARS B23 + MUL =10 + ROV + ADD WORD 10*HIGH + CARRY + OVT + MIN TERR SET TRUNCATION ERROR + BRR DPMT EXIT +DPA HLT 0 + STA TEMP + LDA WRD2 + ETR M2 + RSH 1 + ETR =037777777 + STB TEMP+1 + ADD TEMP+1 + RSH 23 + ETR ONE + ROV + ADD TEMP + ADD WRD1 + OVT + MIN TERR SET TRUNCATION ERROR + BRR DPA EXIT +DPNM HLT 0 + LDA WRD1 + LDB WRD2 + STB WORD X2 + MUL MULT1 + XMA WRD1 X1 TO A, SAVE H + STB WRD2 SAVE L + MUL MULT2 + RSH 23 + ETR ONE + BRM DPA AB + HL TO AB + STA WRD1 SAVE H + STB WRD2 SAVEL + LDA WORD X2 + RSH 1 + ETR =037777777 + MUL MULT1 + RSH 23 + ETR ONE + BRM DPA AB + HL TO AB + STA WRD1 + STB WRD2 + BRR DPNM EXIT +$DPW HLT 0 + LDA SCALE + STA BEXP SCALING (IF NOT SPECIFIED + LDB Z + STB WRD1 CLEAR HOW + STB WRD2 CLEAR LOW + LDB M1 + STB FFLG RESET FLOATING FLAG + STB DEXP -1 TO DECIMAL EXPONNET + BRM SSIGN SET SIGN + LDB SIGN + STB DPSIGN SET DP SIGN +DPW3 SKE PCHR TEST FOR . + BRU DPW4 + MIN FFLG SET FLOAT FLAG + BRU DPW2 +DPW1 ADD CHR 2*CHR TO A + XMA WRD2 2*CHR TO L + ABC L TO B + XMA WRD1 H TO A, 0 TO H + BRM DPMT 10*AB TO AB + BRM DPA 10*AB+CHR TO AB + STA WRD1 SAVE H + STB WRD2 SAVE L + SKN DEXP SKIP UNLESS PERIOED SEEN +DPW2 MIN DEXP INCR DECIMAL EXPONENT + LDB DC + BRM TCHR TEST FOR DECIMAL DIGIT + BRU DPW3 + BRU DPW1 +DPW4 CAX + LDB DC + BRM SKB + HLT CTT,X2 + BRU DPW1 + LDA Z + SKN DEXP TEST FOR PERIOD + SUB DEXP DECIMAL EXPONENT + STA DEXP + LDA CHR +DECK2 SKE HE + BRU DECK3 + BRM GET + BRM DECW +DECK6 ADM DEXP + LDA CHR +DECK3 SKE HB + BRU DECK4 + BRM GET + BRM DECW + CNA +DECK8 STA BEXP + LDA M1 + STA FFLG + LDA CHR + BRU DECK2 +DECK4 SKE ='*' + BRU DECK5 + BRM GET + SKE '+' + BRU DECK7 + BRM GET + BRM SCI + ADM DEXP + BRU DECK2-1 +DECK7 SKE ='/' + BRU DECK5 + BRM GET + BRM SCI + ADD BEXP + BRU DECK8 +DECK5 LDA WRD1 + LDB WRD2 + LDX Z,X0 + NOD 46 NORMALIIE + STA WRD1 + STB WRD2 + CXA + LCY 9 + RSH 9 + SKG =-46 + LDA =-46 + SKN DEXP + ADD P24 + ADM BEXP MODIFY B1NARY EXPONENT + SKN DEXP TEST SIGN OF DECIMAL EXPONENT + BRU DPW5A + CLR + SUB DEXP + BRU DPW9 +DPW91 LDA =-46 + ADM BEXP + LDA DEXP +DPW9 LDB Z + STB DEXP 0 TO D + SKG P9 TEST RANGE + BRU DPW6 + SUB P9 + STA DEXP D-9 TO D + LDA P9 +DPW6 CAX + CNA + ADM BEXP MODIFY BINARY EXPONENT + LDB FIVES,X2 POWER OF 5 + LDA Z + LDX Z,X0 + NOD 46 NORMALIZE POWER OF F1VE + STA WORD + CXA + LCY 9 + RSH 9 + CNA + ADM BEXP BINARY EXPONENT + LDA B1 + LDB Z + DIV WORD + STA MULT1 1ST WORD OF RECIPRICAL + BAC + DIV WORD + ADD ONE + STA MULT2 2ND WORD OF RECIPRICAL + BRM DPNM DATA TIMES POWER OF 5 + LDA DEXP + SKE Z TEST FOR DECIMAL SCALING DONE + BRU DPW91 +DPW10 LDA WRD1 + SKN FFLG TEST FOR FLOATING PO1NT + BRU DPF + ROV + LDX BEXP,X0 + SKN BEXP + BRU DPW12 + XMA BEXP + CNA + XMA BEXP + LDX BEXP,X0 + RSH 0,X2 + BRU DPW13 +DPW12 LSH 0,X2 + OVT + MIN TERR SET TRUNCATION ERROR +DPW13 STA WRD1 +DPW14 STB WRD2 + BRM DPSS COMPLEMENT IF NEG + BRU DPW20 +DPW5A LDA =22 + ADM BEXP +DPW5 LDB Z + LDA DEXP + STB DEXP 0 TO B + SKG P9 TEST RANGE + BRU DPW11 + SUB P9 + STA DEXP + LDA P9 +DPW11 CAX + ADM BEXP MODIFY BINARY EXPONENT + LDB FIVES,X2 PWER OF 5 + LDA Z + LDX P47,X0 + NOD 46 + STA MULT1 NORMALIZED POWER OF 5 + CXA + ADM BEXP MODIFY B + STB MULT2 CLEAR LOW ORDER WORD + BRM DPNM DATA TIMES POWER OF 5 + LDA DEXP + SKG Z + BRU DPW10 FINISHED + BRU DPW5 +DPF BRM DPSS COMPLEMENT IF NEG + LDX P47,X0 + NOD 47 + STA WRD1 + CXA + SKA FMM + LDA Z + SKE Z + ADD BEXP MODIFY BINARY EXPONENT + STA BEXP + LSH 15 + RSH 15 + SKE BEXP + MIN TERR SET TRUNCATION ERROR + LCY 15 + CAB + RCY 15 + STB WRD2 +DPW20 LDA CHR + STA TERM SET TERMINATIR + BRM GET SKIP , + BRM GNF + LDB WRD2 + LDA WRD1 + BRR DPW EXIT +DPSS HLT 0 + SKN DPSIGN TEST DP SIGN + BRR DPSS EXIT + XAB + EOR M1 + SUB M1 + XAB + ADD M1 + BRM SKB + HLT M1 + SUB M1 + EOR M1 + STA WRD1 + STB WRD2 + BRR DPSS EXIT +$OCTW HLT 0 + BRM SSIGN SET SIGN + SKG A7 + BRU OCT1 + MIN EERR NOT OCTAL CHAR + BRR OCTW EXIT +OCT1 STA VALU + LDB OC + BRM TCHR TEST FOR OCTAL CHAR + BRU OCT2 + RSH 3 + LDA VALU + SKA A0 + MIN TERR + LSH 3 INSERT NEW CHAR + BRU OCT1 TRY NEXT CHAR +OCT2 STA TERM + BRM GET + BRM GNF + LDA VALU + EOR B0 + SKN SIGN TEST FOR PRECEDING MINUS + EOR B0 NO PRECEDING MUNUS + STA VALU RESULT + BRR OCTW EXIT +$DECW HLT 0 + BRM SSIGN SET SIGN + SKG P9 + BRU DEC1 + LDA Z + BRU DEC3 +DEC1 STA VALU + LDB DC + BRM TCHR + BRU DEC2 + LDA VALU + LDB Z + ROV + LSH 2 + ADD VALU + LSH 1 + ADD CHR + OVT + MIN TERR SET TRUNCATION ERROR + BRU DEC1 +DEC2 LDA VALU +DEC3 CNA + SKN SIGN TEST FOR PRECEDING M1NUS + CNA + STA VALU RESULT + BRR DECW EXIT +GNF HLT 0 +GNF1 LDA TERM + SKE CCHR TEST FOR COMMA + SKN M1 ALWAYS SKIP + BRR GNF EXIT + SKE BCHR TEST FOR BLANK + SKN M1 ALWAYS SKIP + BRR GNF EXIT IF BLANK + MIN EERR ILLEGAL CHARACTER + LDA CHR + STA TERM + BRM GET SKIP CHARACTER + BRU GNF1 +$MAXL HLT 0 + LDA MLOC OLD MAX + SKG LOC + LDA LOC + STA MLOC NEW MAX + BRR MAXL +BCON EQU 0 BLANK CONNECTER CODE +CCON EQU 0100 , CONNECTER CODE +RCON EQU 020 ) CONNECTER CODE +SCON EQU 03310 + ++ CONNECTER CODES +DCON EQU 03411 - -- CONNECTER CDDES +PCON EQU 04522 * ** CONNECTER CODES +QCON EQU 04647 / // CONNECTER CODES + END diff --git a/symbol/section-6.bo b/symbol/section-6.bo new file mode 100644 index 0000000..7a124c3 --- /dev/null +++ b/symbol/section-6.bo @@ -0,0 +1 @@ + ]#R4pppp @R&4sgpppp k)QTpppp /sRpppp @&sX)pppp ERQ#%ppppp @Rpppp @nR4pppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 2X)ppppp @@vpppppp @@T#8pppp @nTvppppp @CTppppp @Tspppp @Tppppp EvTspppp E@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ J)T2ppppp QTs#pppp E1Tsupppp E%Tvppppp @)ppp @)ppp @))pppp @y#Tpppp Fp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@m)#Tppppp 8Wspppp E Wsppppp Evppppp @ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@uE[@E@@@R@@@@@8@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@][@npppp@@@,@@@&@@@T@@@@@@@@@#@@@g@@@)@@@s@@@4@Ovp@@@@p@@@@p@O@@@@O@@@@O@@@@@E F>h@@XFCF@@@@W@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]yFE@F8@RF8@LF8@F@ hCpCF@F@E@X@@@@Ch@Fp@OEhChCEQ@@@@p@EhFCh@ @nFp@Cp@#>n|@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]&@^Eh@ @Ch@W@@&Qp@=bh@nF2@LCh@XCp@EW@@@@@@p@C X@@p@E@@J@pCX@C;g/@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]v@p@JE@/Lp@ EhE@@@@LXaXC,Lp@@ paChp@@Ch@L@Cp|Ch@ pEh@p@@]|@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]W@ Eh8p@p@p@OCh@OEX@@@hpO2@@FX@s@CE@@@h2@FX@QF@CEk@@@@p@JXW@gE@Fs] /@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@])&@CFF@Cp@LCh@C@Cp@OE@#@/@4h@CW8@F@CpFX@Cp@E@,@8@=h@CW8@F@CpFX@Cp@Q;y/ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]m4>E@u@C@CFh@CW8@F@CpIFX@Cp@Jh>F8@FEhEh@CF8@OpJCh@XCp@Ch@X@@pCCh@CEa@@@@ym*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]Cp@Fp@O  E EChCkpFCh@ p@ L8L|@ F@ F@Ck@C hCRFz@LCp@hCdF2@L8@EC@@@@@@@@pIO/;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]npCnCh@LpCgCh@OCh@Ch@Q,C8@JEC,pC/h@F8@CE@F@C|EkpFCh@JpFCh@LXaEk@C4 h@CFCy=@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]7F4E Lp h@hCvpTF8@ChCk4F Ep@LF4Q X@@@@EppCkh@EpFFX@CEk@@@@;]7@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]m]^@@b@@@@Cv@@@@Cp@@ChR4dh@CF%4g Lp h@Fh4,@X@@@@X@@pOCh@pEQChECXWz7n@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]7gvXEE/@@@@pCh@IXEE@F>E8F@@I@;E8@@@@4@XEIFEC  Ch@@p@EEFp@RFp@LFp@F@E hEQ7>>#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]OmECpECF@@EEXEI@@@@Cp@IXEh@IXT@@@FEREER@@@@XEvXFFp@XQpmCh@@XFX@@XkEE@@@@=;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]/E&XEvp@XQpCh#pEFp@ XF&XEbEE%@@@@XEvXFFXE/EE1@@@@p@EXQpJF@@FX@@@yWp@y^=s@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]yuE>WhEzXE@@@@X@hEypE>E=EEv@@@@p@FXQpQChE*pCm @@Fp@LXF&EFF@@@@hRXFp@F%Fp@WFhF77s]@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]nJFXE@@F@F[E hFChFJp@pFhE 8@@XF&pF>X@hF]@FREF@@@@@F*pF#F8@CCpF^X@hF*F@F[[=/@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]CzFn@FhEF&@@@@p@@8RFy@XF8@ChF1C8FmpTE F7 XCFFpEFp@@@p@vv7OOOO@O=@@@@X@@@@@@sO|@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ FF@@@C@@@@@@@@@@E@@@@@@@@@pp@@@@@@@@@@@@ @@@@@@@@@W@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ %I#&pppppF dppppppF@d#&ppppC>gd&Tpppp[g)%sppppE42bRpppppF2s8gpppp 4))ppppE;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ bu))ppppFCvd&Tpppp v&)TppppEkv)TppppF,v)TppppFvv)s)pppCQypppppppFhQTT)ppppFL@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@mdu%s)ppppFysspppppEWs8gppppCs%g4spppp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 7@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/symbol/section-6.lo b/symbol/section-6.lo new file mode 100644 index 0000000..af776e9 --- /dev/null +++ b/symbol/section-6.lo @@ -0,0 +1,515 @@ + + 1 + 2 * S3 + 00000000 3 S9300 EQU 0 + 00000000 4 X0 EQU S9300 + 00000002 5 X2 EQU 2-S9300 +D 10400000 6 CAB OPD 010400000 +D 16500000 7 CBA OPD 016500000 + 16600000 8 GAX OPD 016600000 +D 16700000 9 CXA OPD 016700000 + 17000000 10 GBX OPD 017000000 + 17100000 11 GNA OPD 017100000 +D 17200000 12 SKE OPD 017200000 +D 17000000 13 SKR OPD 017000000 +D 17400000 14 MUL OPD 017400000 +D 17500000 15 DIV OPD 017500000 +D 17600000 16 ADM OPD 017600000 +D 17700000 17 XMA OPD 017700000 + 00002 18 AORG 2 + 00002 19 $CW RES 1 + 00003 20 DW1 RES 31 + 00000 21 ORG 0 + 00000 22 $CHR RES 1 + 00001 23 $EDCT RES 1 + 00002 24 $ALN RES 1 + 00003 25 $DWC RES 1 + 00004 26 CHAR RES 1 + 27 IFRM FORM 3,6,1,14 + 00005 0 00 00022 28 EDWE HLT LBUF + 00006 0 01 00023 29 EDWL BRU LBUF+1 + 00007 0 00 00025 30 EDWV HLT LBUF+3 + 00010 31 $EDW RES 1 + 00011 32 TEMP RES 1 + 00012 33 PTYP RES 1 + 00013 34 PLOC RES 1 + 00014 35 QLOC RES 1 + 00015 36 $ICW RES 1 + 00016 37 CHKS RES 1 + 00017 38 REL RES 1 + 00020 39 SREL RES 1 + 00021 40 PREL RES 1 + 00022 41 $LBUF RES 0 + 00022 42 RES 3 + 00025 43 $EREF1 RES 0 + 00025 44 RES 1 + 00026 45 $EREF2 RES 0 + 00026 46 RES 4 + 00032 47 $CBUF RES 0 + 00032 48 RES 12 + 00046 49 $TBFE RES 0 + 00046 50 RES 8 + 00056 51 $CBFE RES 0 + 00056 60606060 52 $DLY1 DATA 060606060 + 00057 00000054 53 ERRA DATA 054 + 00060 00000046 54 DATA 'O' + 00061 00000024 55 DATA 024 + 00062 00000025 56 DATA 025 + 00063 00000031 57 DATA 031 + 00064 00000043 58 DATA 043 + 00065 00000047 59 DATA 047 + 00066 00000051 60 DATA 051 + 00067 00000063 61 DATA 063 + 00070 00000064 62 DATA 064 + 00071 00177766 63 $ERRC DATA ERRA-ERRC+0200000 + 00072 60000000 64 DATA 060000000 + 00073 00600000 65 DATA 0600000 + 00074 00006000 66 DATA 06000 + 00075 17000000 67 DATA 017000000 + 00076 00170000 68 DATA 0170000 + 00077 00001700 69 DATA 01700 + 00100 70 ETBL RES 0 + 00100 0 00 00000 71 $EDC HLT 0 + 00101 0 54 00676 72 SUB =060 +* 00102 0 75 00000 73 LDB Z + 00103 0 23 00107 74 EDC1 EXU EDCS EXECLUTE SHIFT + 00104 0 61 00103 75 MIN EDC1 STEP SHIFT + 00105 0 63 40010 76 ADM *EDW ADD CHARACTER TO MEMORY + 00106 0 51 00100 77 BRR EDC EXIT + 00107 0 67 00022 78 EDCS LSH 18 1ST CHAR + 00110 0 67 00014 79 LSH 12 2ND CHAR + 00111 0 67 00006 80 LSH 6 3RD CHAR + 00112 0 01 00113 81 BRU EDC2 LAST CHAR IN WORD + 00113 0 75 00120 82 EDC2 LDB EDCX RESET EXC + 00114 0 36 00103 83 STB EDC1 + 00115 0 63 40010 84 ADM *EDW STORE LAST CHAR + 00116 0 61 00010 85 MIN EDW STEP WORD + 00117 0 51 00100 86 BRR EDC EAT + 00120 0 23 00107 87 EDCX EXU EDCS + 00121 0 00 00000 88 $EDS HLT 0 + 00122 0 35 00010 89 STA EDW WORD POSITION + 00123 0 66 00017 90 RSH 15 + 00124 0 55 00120 91 ADD EDCX + 00125 0 35 00103 92 STA EDC1 CHAR POSITION + 00126 0 51 00121 93 BRR EDS EXIT + 00127 0 00 00000 94 ELN HLT 0 + 00130 0 76 00002 95 LDA ALN ALPNABETIC LINE NO. + 00131 0 55 00677 96 ADD =0666667 + 00132 0 35 00002 97 STA ALN + 00133 0 14 00056 98 ETR DLY1 + 00134 0 66 00003 99 RSH 3 + 00135 0 46 01000 100 CNA + 00136 0 55 00002 101 ADD ALN SUBTRACT ZONE FROM NON-ZONEBITS + 00137 0 14 00700 102 ETR =017171717 + 00140 0 35 00002 103 STA ALN SAVE ALPHANUMERIC LINE NUMBER + 00141 0 71 00701 104 LDX =00200000-3,X0 + 00142 2 72 00100 105 ELN1 SKA ETBL,X2 TEST FOR 0 + 00143 0 01 00146 106 BRU ELN2 + 00144 2 16 00075 107 MRG ETBL-3,X2 REPLACE0WITHBLANK + 00145 0 41 00142 108 BRX ELN1,X0 + 00146 0 75 00056 109 ELN2 LDB DLY1 + 00147 0 66 20014 110 RCY 12 + 00150 0 35 00030 111 STA CBUF-2 + 00151 0 36 00031 112 STB CBUF-1 + 00152 0 51 00127 113 BRR ELN EXIT + 114 * RELOCATABLE B1NARY OUTPUT + 115 * + 00153 0 00 00000 116 $OUTP HLT 0 +* 00154 0 71 00000 117 LDX CTYP,X0 + 00155 0 76 00003 118 LDA DWC + 00156 0 14 00702 119 ETR =077777 +* 00157 0 73 00102 120 SKG Z + 00160 0 01 00200 121 BRU OUTP2 (DWC) = 0, RESET ONLY + 00161 0 46 00200 122 CXA + 00162 0 50 00012 123 SKE PTYP + 00163 0 01 00177 124 BRU OUTP1 TYPE CHANGE, FLUSH AND RESET + 00164 0 76 00703 125 LDA =24 + 00165 0 73 00003 126 SKG DWC + 00166 0 01 00177 127 BRU OUTP1 (DWC) = 24, FLUSH AND RESET + 00167 0 76 00012 128 LDA PTYP +* 00170 0 50 00157 129 SKE Z + 00171 2 01 40434 130 BRU *TYP,X2 (PTYP) + 0 + 00172 0 76 00013 131 LDA PLOC (PIYP) = 0 + 00173 0 55 00704 132 ADD =1 +* 00174 0 50 00000 133 SKE LOC + 00175 0 01 00177 134 BRU OUTP1 (PLOC)+1NOT = (LOC), FLUSH AA + 00176 2 01 40434 135 BRU *TYP,X2 (PLOC)+1= (LOC) + 00177 0 43 00241 136 OUTP1 BRM FLUSH + 00200 0 43 00354 137 OUTP2 BRM RESET + 00201 2 01 40434 138 BRU *TYP,X2 +* 00202 0 76 00000 139 ENDM LDA WORD + 00203 0 14 00702 140 ETR =077777 + 00204 0 16 00441 141 MRG LBRU +* 00205 0 35 00202 142 STA WORD (WORD):= BRU0,0++(WORD) +* 00206 0 76 00000 143 LDA MLOC + 00207 0 35 00014 144 STA QLOC (QLOC) := (MLOC) + 145 * + 00210 0 71 00003 146 DATA LDX DWC,X0 +* 00211 0 76 00174 147 LDA LOC + 00212 0 35 00013 148 STA PLOC (PLOC) := (LOC) +* 00213 0 76 00205 149 LDA WORD + 00214 2 35 00004 150 STA DW1+1,X2 (DW1(DWC+1)) := (WORD) +* 00215 0 76 00000 151 LDA WMOD + 00216 0 14 00705 152 ETR =2 +* 00217 0 75 00170 153 LDB Z + 00220 2 66 00002 154 RSH 2,X2 B22(WMOD)*2**(22-(DWC)) + 00221 0 46 00010 155 CBA + 00222 0 16 00017 156 MRG REL + 00223 0 35 00017 157 STA REL (KEL) :=IREL)++(A) +* 00224 0 53 00000 158 SKN STYP SKIP IF SPECIAL IY WORD + 00225 0 01 00232 159 BRU $+5 + 00226 0 75 00704 160 LDB =1 +* 00227 0 76 00217 161 LDA Z + 00230 2 66 20000 162 RCY 0,X2 + 00231 0 63 00020 163 ADM SREL (SKEL) := I**(24-DWC)++(SREL) + 00232 0 46 30003 164 CLR +* 00233 0 50 00000 165 SKE PMOD + 00234 0 75 00704 166 LDB =1 + 00235 2 66 20001 167 RCY 1,X2 + 00236 0 63 00021 168 ADM PREL + 00237 0 61 00003 169 MIN DWC (DWC):=(DWC)+1 + 00240 0 51 00153 170 BRR OUTP EXI1 + 171 * + 00241 0 00 00000 172 FLUSH HLT ENTRY + 00242 0 76 00012 173 LDA PTYP RECORD TYPE OF RECORD BEING FLUSHED +* 00243 0 73 00227 174 SKG Z + 00244 0 01 00247 175 BRU $+3 (PTYP) =0 + 00245 0 50 00706 176 SKE =3 + 00246 0 01 00306 177 BRU FLUSH1 (PTYP) = 1 OR 2 + 00247 0 61 00003 178 MIN DWC INCLUDE LOAD-ADDRESS WORD IN COUNT + 00250 0 76 00014 179 LDA QLOC + 00251 0 35 00003 180 STA DW1 STORE LOAD ADDRESS + 00252 0 71 00003 181 LDX DWC,X0 + 00253 0 76 00017 182 LDA REL +* 00254 0 50 00243 183 SKE Z + 00255 0 01 00257 184 BRU $+2 + 00256 0 01 00264 185 BRU FLSH2 + 00257 2 35 00003 186 STA DW1,X2 STORE RELOCATION INDICATOR WRD + 00260 2 77 00001 187 EAX 1,X2 + 00261 0 61 00003 188 MIN DWC INCLUDE LOAD-RELOCAT1ON WORD IN COUNT + 00262 0 76 00707 189 LDA =02000000 + 00263 0 63 00003 190 ADM DW1 (M) := 1, (RELOCATION WORD PRESENT) + 00264 0 76 00020 191 FLSH2 LDA SREL +* 00265 0 50 00254 192 SKE Z + 00266 0 01 00270 193 BRU $+2 + 00267 0 01 00275 194 BRU FLSH3 + 00270 2 35 00003 195 STA DW1,X2 + 00271 2 77 00001 196 EAX 1,X2 + 00272 0 61 00003 197 MIN DWC INCLLUDE SPECIAL RELOC W0R0 IN COUNT + 00273 0 76 00710 198 LDA =020000000 + 00274 0 63 00003 199 ADM DW1 (M) := 8+ (M) + 00275 0 76 00021 200 FLSH3 LDA PREL +* 00276 0 50 00265 201 SKE Z + 00277 0 01 00301 202 BRU $+2 + 00300 0 01 00306 203 BRU FLUSH1 + 00301 2 35 00003 204 STA DW1,X2 + 00302 2 77 00001 205 EAX 1,X2 + 00303 0 61 00003 206 MIN DWC + 00304 0 76 00711 207 LDA =010000000 + 00305 0 63 00003 208 ADM DW1 + 209 * FORM RECORD CONTROL WDRD + 00306 0 76 00012 210 FLUSH1 LDA PTYP RECORD TYPE +* 00307 0 75 00276 211 LDB Z + 00310 0 67 00006 212 LSH 6 + 00311 0 55 00704 213 ADD =1 INDLUDE CONTROL WORD IN COUNT + 00312 0 55 00003 214 ADD DWC NR OF WORDS IN RECORD + 00313 0 67 00017 215 LSH 15 + 00314 0 16 00712 216 MRG =050000 RECORD MODE (BINARY) + 00315 0 35 00002 217 STA CW + 218 * COMPUTE CHECKSUM AND WR1TE RECORD + 00316 0 43 00325 219 BRM CHKSUM CDMPUTE FOLDED CHECKSUM + 00317 0 16 00002 220 MRG CW INSERT CHECKSUM IN CONTROL WORD + 00320 0 35 00002 221 STA CW STORE COMPLETED RECORD CONTROL WORD +* 00321 0 43 00000 222 BRM WRITR WRITE ONE RECORD +* 00322 0 76 00307 223 LDA Z + 00323 0 35 00003 224 STA DWC (DWC) :=0 + 00324 0 51 00241 225 BRR FLUSH EXIT + 226 * + 227 * SUBROUTINE TO COMPUTE FOLDED CHECKSUM + 00325 0 00 00000 228 CHKSUM HLT ENYRY + 00326 0 76 00002 229 LDA CW + 00327 0 66 00017 230 RSH 15 + 00330 0 14 00713 231 ETR =077 (A) = NR WORDS IN RECORD + 00331 0 54 00705 232 SUB =2 + 00332 0 35 00353 233 STA ICN + 00333 0 76 00706 234 LDA =DW1 ADDRESS OF 2D WORD + 00334 0 35 00015 235 STA ICW + 00335 0 76 00002 236 LDA CW + 00336 0 14 00714 237 ETR =077770000 EXTRACT CHECKSUM + 00337 0 17 00714 238 EOR =077770000 ODD PARITY CHECKSUM + 00340 0 17 40015 239 EOR *ICW + 00341 0 61 00015 240 MIN ICW INCREMENT ADDRESS + 00342 0 60 00353 241 SKR ICN + 00343 0 01 00340 242 BRU $-3 +* 00344 0 75 00322 243 LDB Z (A) = 24-BIT CHECKSUM OF WORDS 1 THRU + 00345 0 67 20014 244 LCY 12 + 00346 0 36 00016 245 STB CHKS +* 00347 0 75 00344 246 LDB Z + 00350 0 66 20014 247 RCY 12 + 00351 0 17 00016 248 EOR CHKS (A) = COMPLETED 12-BIT CHECKSUM + 00352 0 51 00325 249 BRR CHKSUM EXIT + 00353 00000000 250 ICN DATA 0 + 251 * + 252 * + 253 * + 00354 0 00 00000 254 RESET HLT ENTRY +* 00355 0 76 00211 255 LDA LOC + 00356 0 35 00014 256 STA QLOC (QLOC):=(LOC) +* 00357 0 76 00347 257 LDA Z + 00360 0 35 00017 258 STA REL (KEL) :=0 + 00361 0 35 00020 259 STA SREL (SREL) T=0 + 00362 0 35 00021 260 STA PREL +* 00363 0 71 00154 261 LDX CTYP,X0 + 00364 0 37 00012 262 STX PTYP,X0 + 00365 0 51 00354 263 BRR RESET EXIT + 264 * +* 00366 0 76 00357 265 ENDN LDA Z + 00367 0 75 00002 266 LDB CW + 00370 0 67 00003 267 LSH 3 + 00371 0 50 00706 268 SKE =3 + 00372 0 01 00374 269 BRU $+2 + 00373 0 51 00153 270 BRR OUTP + 00374 0 76 00706 271 LDA =3 + 00375 0 35 00012 272 STA PTYP +* 00376 0 76 00206 273 LDA MLOC + 00377 0 35 00014 274 STA QLOC + 00400 0 43 00241 275 BRM FLUSH + 00401 0 51 00153 276 BRR OUTP + 277 * + 278 * INSERT 3 WORD REF OR DEF ITEM IN CURRENT OUTPUT RECORD + 00402 0 71 00003 279 DEF LDX DWC,X0 ENTRY +* 00403 0 76 40213 280 LDA *WORD + 00404 2 35 00003 281 STA DW1,X2 STORE 1ST 4 CHARS OF LABEL +* 00405 0 61 00403 282 MIN WORD +* 00406 0 76 40405 283 LDA *WORD + 00407 0 14 00714 284 ETR =077770000 + 00410 0 16 00715 285 MRG =06060 + 00411 2 35 00004 286 STA DW1+1,X2 STORE LAST .2 CHARS OF LABEL +* 00412 0 75 00366 287 LDB Z +* 00413 0 76 00224 288 LDA STYP + 00414 0 67 00026 289 LSH 22 + 00415 0 35 00353 290 STA ICN +* 00416 0 76 40406 291 LDA *WORD + 00417 0 14 00705 292 ETR =2 + 00420 0 46 00014 293 XAB +* 00421 0 61 00416 294 MIN WORD +* 00422 0 76 40421 295 LDA *WORD + 00423 0 14 00702 296 ETR =077777 +* 00424 0 43 00000 297 BRM SKB + 00425 0 00 00705 298 HLT =2 + 00426 0 16 00716 299 MRG =0100000 SET ADDRESS RELOCATION FLAG + 00427 0 16 00353 300 MRG ICN SET SUB-TYPE + 00430 2 35 00005 301 DEF1 STA DW1+2,X2 + 00431 0 76 00706 302 LDA =3 + 00432 0 63 00003 303 ADM DWC (DWC) := (DWC)+3 + 00433 0 51 00153 304 BRR OUTP EXIT + 305 * + 00000402 306 REF EQU DEF + 307 * CURRENT RECORD IMAGE + 00434 0 00 00210 308 TYP HLT DATA + 00435 0 00 00402 309 HLT DEF EXTERNAL REF OR DEF + 00436 0 00 00442 310 HLT POP + 00437 0 00 00202 311 HLT ENDM + 00440 0 00 00366 312 HLT ENDN + 00441 0 01 00000 313 LBRU BRU 0 + 00442 0 71 00003 314 POP LDX DWC,X0 +* 00443 0 76 00000 315 LDA CNTR +* 00444 0 35 00422 316 STA WORD +* 00445 0 76 40444 317 LDA *WORD + 00446 2 35 00003 318 STA DW1,X2 +* 00447 0 61 00445 319 MIN WORD +* 00450 0 76 40447 320 LDA *WORD + 321 * BLANK CARD IN TECH MANUAL + 00451 0 14 00714 322 ETR =077770000 + 00452 0 16 00715 323 MRG =' ' + 00453 2 35 00004 324 STA DW1+1,X2 +* 00454 0 61 00450 325 MIN WORD +* 00455 0 76 40454 326 LDA *WORD + 00456 0 01 00430 327 BRU DEF1 + 00457 0 00 00000 328 $READ HLT 0 +* 00460 0 43 00000 329 BRM INPUT + 00461 0 76 00717 330 LDA =CBUF + 00462 0 35 00004 331 STA CHAR SETBEGINNINGOFLIPE + 00463 0 76 00521 332 LDA GETX + 00464 0 35 00503 333 STA GETS SET BEGINNINGOF WORD + 00465 0 43 00127 334 BRM ELN + 00466 0 43 00501 335 BRM GET GET 1STCHARACTEROFLINE + 00467 0 51 00457 336 BRR READ EXIT + 00470 0 00 00000 337 $FLD HLT 0 + 00471 0 76 00720 338 LDA =7 + 00472 0 35 00011 339 STA TEMP + 00473 0 43 00501 340 FLD1 BRM GET + 00474 0 50 00676 341 SKE =' ' + 00475 0 51 00470 342 BRR FLD + 00476 0 60 00011 343 SKR TEMP + 00477 0 01 00473 344 BRU FLD1 + 00500 0 51 00470 345 BRR FLD EXIT + 00501 0 00 00000 346 $GET HLT 0 + 00502 0 76 40004 347 LDA *CHAR LOAD CHARACTER + 00503 0 23 00511 348 GETS EXU GETT EXECUTE SHIFT + 00504 0 61 00503 349 MIN GETS + 00505 0 14 00713 350 GET1 ETR =077 + 00506 0 35 00000 351 STA CHR + 00507 0 46 00400 352 CAX + 00510 0 51 00501 353 BRR GET + 00511 0 66 00022 354 GETT RSH 18 1ST CMAR + 00512 0 66 00014 355 RSH 12 2ND CHAR + 00513 0 66 00006 356 RSH 6 3RD CHAR + 00514 0 01 00515 357 BRU GET2 END WORD + 00515 0 75 00521 358 $GET2 LDB GETX + 00516 0 36 00503 359 STB GETS RESET EXU + 00517 0 61 00004 360 MIN CHAR STEP WORD + 00520 0 01 00505 361 BRU GET1 + 00521 0 23 00511 362 GETX EXU GETT + 00522 0 00 00000 363 $TCHR HLT 0 + 00523 0 36 00011 364 STB TEMP + 00524 0 43 00501 365 BRM GET GET CHAR + 00525 0 75 00011 366 LDB TEMP +* 00526 0 43 00424 367 BRM SKB +* 00527 2 00 00000 368 HLT CTT,X2 TEST FOR MATCM + 00530 0 61 00522 369 MIN TCHR CHARACTER IS O.K. + 00531 0 51 00522 370 BRR TCHR EXIT + 00532 0 00 00000 371 $EDIT HLT 0 + 00533 0 43 00566 372 BRM EDE EDIT ERRORS + 00534 0 43 00606 373 BRM EDL EDIT LOCATION + 00535 0 76 00007 374 LDA EDWV + 00536 0 43 00121 375 BRM EDS +* 00537 0 76 00455 376 LDA WORD +* 00540 0 35 00000 377 STA WRD1 DATA WORD + 00541 0 43 00620 378 BRM EDR EDIT BY FORM +* 00542 0 43 00000 379 BRM PRNT PRINT LINE + 00543 0 43 00153 380 BRM OUTP OUTPUT WORD + 00544 0 51 00532 381 BRR EDIT EXIT + 00545 0 00 00000 382 $EDTV HLT 0 + 00546 0 43 00566 383 BRM EDE EDIT ERRORS + 00547 0 76 00007 384 LDA EDWV VALUE WORD POSITON + 00550 0 43 00121 385 BRM EDS + 00551 0 76 00720 386 LDA =7 +* 00552 0 35 00443 387 STA CNTR 7 CHARACTERS LEFT IN B +* 00553 0 76 00537 388 LDA WORD DATA + 00554 0 66 00025 389 RSH 21 LEAVE 1ST CHAR IN A + 00555 0 14 00720 390 ETR =7 + 00556 0 43 00646 391 BRM EDF EDIT FIELD +* 00557 0 43 00542 392 BRM PRNT PR1NT LINE + 00560 0 51 00545 393 BRR EDTV EXIT + 00561 0 00 00000 394 $EDTL HLT 0 + 00562 0 43 00566 395 BRM EDE ED1T ERRORS + 00563 0 43 00606 396 BRM EDL EDIT LOCATION +* 00564 0 43 00557 397 BRM PRNT PRINT LINE + 00565 0 51 00561 398 BRR EDTL EXIT + 00566 0 00 00000 399 $EDE HLT 0 + 00567 0 76 00005 400 LDA EDWE ERRORWORD POSITION + 00570 0 43 00121 401 BRM EDS +* 00571 0 76 00412 402 LDA Z +* 00572 0 62 00000 403 XMA VERR RESET V ERRORFLAG +* 00573 0 63 00000 404 ADM UERR U SET IF V SET + 00574 0 71 00071 405 LDX ERRC,X0 ERROR COUNT + 00575 2 76 00071 406 EDE1 LDA ERRC,X2 ERROR LISTING CHAR +* 00576 2 75 00572 407 LDB VERR,X2 +* 00577 0 43 00526 408 BRM SKB +* 00600 0 00 00000 409 HLT M1 + 00601 0 43 00100 410 BRM EDC INSERT ERRORCODE +* 00602 0 75 00571 411 LDB Z +* 00603 2 36 00576 412 STB VERR,X2 RESET FLAG + 00604 0 41 00575 413 BRX EDE1,X0 TEST NEXTFLAG + 00605 0 51 00566 414 BRR EDE EXIT + 00606 0 00 00000 415 EDL HLT 0 + 00607 0 76 00006 416 LDA EDWL LOC WORD POS1TION + 00610 0 43 00121 417 BRM EDS + 00611 0 76 00721 418 LDA =4 +* 00612 0 35 00552 419 STA CNTR MORE CHARACTERS INB +* 00613 0 76 00355 420 LDA LOC +* 00614 0 14 00000 421 ETR ADDR + 00615 0 66 00014 422 RSH 12 + 00616 0 43 00646 423 BRM EDF EDIT LOC + 00617 0 51 00606 424 BRR EDL EXIT + 00620 0 00 00000 425 EDR HLT 0 + 00621 0 75 00722 426 LDB =040000000 + 00622 0 43 00660 427 EDR3 BRM FLDC CDUNT BITS FIELD + 00623 0 01 00645 428 BRU EDR1 NO MORE FIELDS + 00624 0 66 00027 429 RSH 23 + 00625 0 65 00706 430 DIV =3 +* 00626 0 43 00577 431 BRM SKB + 00627 0 00 00706 432 HLT =3 + 00630 0 01 00633 433 BRU EDR2 + 00631 0 54 00704 434 SUB =1 + 00632 0 75 00706 435 LDB =3 +* 00633 0 35 00612 436 EDR2 STA CNTR OCTAL CHARACTERS IN FIELD + 00634 0 46 00020 437 CBX BITS IN 1ST CHAR +* 00635 0 76 00602 438 LDA Z +* 00636 0 75 00540 439 LDB WRD1 DATA WORD + 00637 2 67 00000 440 LSH 0,X2 1ST CHAR IN A + 00640 0 43 00646 441 BRM EDF EDIT FIELD + 00641 0 76 00676 442 LDA =060 + 00642 0 43 00100 443 BRM EDC INSERT TRAILING BLANK +* 00643 0 75 00635 444 LDB Z + 00644 0 01 00622 445 BRU EDR3 D0 NEXT FIELD + 00645 0 51 00620 446 EDR1 BRR EDR EXIT + 00646 0 00 00000 447 EDF HLT 0 + 00647 0 01 00652 448 BRU EDF1 +* 00650 0 76 00643 449 EDF2 LDA Z + 00651 0 67 00003 450 LSH 3 NEW OCTAL CHAR +* 00652 0 36 00636 451 EDF1 STB WRD1 + 00653 0 43 00100 452 BRM EDC INSERT CHAR INIMAGE +* 00654 0 75 00652 453 LDB WRD1 +* 00655 0 60 00633 454 SKR CNTR TLST FOREND FIELD + 00656 0 01 00650 455 BRU EDF2 + 00657 0 51 00646 456 BRR EDF EXIT + 00660 0 00 00000 457 $FLDC HLT 0 +* 00661 0 76 00000 458 LDA WRD2 FORM WORD + 00662 0 17 00722 459 EOR =040000000 + 00663 0 71 00723 460 LDX =22,X0 + 00664 0 67 10030 461 NOD 24 CDUNT BITS IN FIELD + 00665 0 67 00001 462 LSH 1 +* 00666 0 35 00661 463 STA WRD2 NEW FORM WORD +* 00667 0 37 00655 464 STX CNTR,X0 + 00670 0 76 00724 465 LDA =23 +* 00671 0 54 00667 466 SUB CNTR + 00672 0 14 00702 467 ETR =077777 + 00673 0 73 00703 468 SKG =24 + 00674 0 61 00660 469 MIN FLDC + 00675 0 51 00660 470 FLC1 BRR FLDC EXIT + 471 END + 00676 00000060 + 00677 00666667 + 00700 17171717 + 00701 00177775 + 00702 00077777 + 00703 00000030 + 00704 00000001 + 00705 00000002 + 00706 00000003 + 00707 02000000 + 00710 20000000 + 00711 10000000 + 00712 00050000 + 00713 00000077 + 00714 77770000 + 00715 00006060 + 00716 00100000 + 00717 00000032 + 00720 00000007 + 00721 00000004 + 00722 40000000 + 00723 00000026 + 00724 00000027 + 00613 LOC + 00600 M1 + 00376 MLOC + 00233 PMOD + 00564 PRNT + 00626 SKB + 00413 STYP + 00573 UERR + 00603 VERR + 00215 WMOD + 00553 WORD + 00654 WRD1 + 00666 WRD2 + 00321 WRITR + 00650 Z + 00614 ADDR + 00671 CNTR + 00527 CTT + 00363 CTYP + 00460 INPUT \ No newline at end of file diff --git a/symbol/section-6.si b/symbol/section-6.si new file mode 100644 index 0000000..910ba88 --- /dev/null +++ b/symbol/section-6.si @@ -0,0 +1,470 @@ +* S3 +S9300 EQU 0 +X0 EQU S9300 +X2 EQU 2-S9300 +CAB OPD 010400000 +CBA OPD 016500000 +GAX OPD 016600000 +CXA OPD 016700000 +GBX OPD 017000000 +GNA OPD 017100000 +SKE OPD 017200000 +SKR OPD 017000000 +MUL OPD 017400000 +DIV OPD 017500000 +ADM OPD 017600000 +XMA OPD 017700000 + AORG 2 +$CW RES 1 +DW1 RES 31 + ORG 0 +$CHR RES 1 +$EDCT RES 1 +$ALN RES 1 +$DWC RES 1 +CHAR RES 1 +IFRM FORM 3,6,1,14 +EDWE HLT LBUF +EDWL BRU LBUF+1 +EDWV HLT LBUF+3 +$EDW RES 1 +TEMP RES 1 +PTYP RES 1 +PLOC RES 1 +QLOC RES 1 +$ICW RES 1 +CHKS RES 1 +REL RES 1 +SREL RES 1 +PREL RES 1 +$LBUF RES 0 + RES 3 +$EREF1 RES 0 + RES 1 +$EREF2 RES 0 + RES 4 +$CBUF RES 0 + RES 12 +$TBFE RES 0 + RES 8 +$CBFE RES 0 +$DLY1 DATA 060606060 +ERRA DATA 054 + DATA 'O' + DATA 024 + DATA 025 + DATA 031 + DATA 043 + DATA 047 + DATA 051 + DATA 063 + DATA 064 +$ERRC DATA ERRA-ERRC+0200000 + DATA 060000000 + DATA 0600000 + DATA 06000 + DATA 017000000 + DATA 0170000 + DATA 01700 +ETBL RES 0 +$EDC HLT 0 + SUB =060 + LDB Z +EDC1 EXU EDCS EXECLUTE SHIFT + MIN EDC1 STEP SHIFT + ADM *EDW ADD CHARACTER TO MEMORY + BRR EDC EXIT +EDCS LSH 18 1ST CHAR + LSH 12 2ND CHAR + LSH 6 3RD CHAR + BRU EDC2 LAST CHAR IN WORD +EDC2 LDB EDCX RESET EXC + STB EDC1 + ADM *EDW STORE LAST CHAR + MIN EDW STEP WORD + BRR EDC EAT +EDCX EXU EDCS +$EDS HLT 0 + STA EDW WORD POSITION + RSH 15 + ADD EDCX + STA EDC1 CHAR POSITION + BRR EDS EXIT +ELN HLT 0 + LDA ALN ALPNABETIC LINE NO. + ADD =0666667 + STA ALN + ETR DLY1 + RSH 3 + CNA + ADD ALN SUBTRACT ZONE FROM NON-ZONEBITS + ETR =017171717 + STA ALN SAVE ALPHANUMERIC LINE NUMBER + LDX =00200000-3,X0 +ELN1 SKA ETBL,X2 TEST FOR 0 + BRU ELN2 + MRG ETBL-3,X2 REPLACE0WITHBLANK + BRX ELN1,X0 +ELN2 LDB DLY1 + RCY 12 + STA CBUF-2 + STB CBUF-1 + BRR ELN EXIT +* RELOCATABLE B1NARY OUTPUT +* +$OUTP HLT 0 + LDX CTYP,X0 + LDA DWC + ETR =077777 + SKG Z + BRU OUTP2 (DWC) = 0, RESET ONLY + CXA + SKE PTYP + BRU OUTP1 TYPE CHANGE, FLUSH AND RESET + LDA =24 + SKG DWC + BRU OUTP1 (DWC) = 24, FLUSH AND RESET + LDA PTYP + SKE Z + BRU *TYP,X2 (PTYP) + 0 + LDA PLOC (PIYP) = 0 + ADD =1 + SKE LOC + BRU OUTP1 (PLOC)+1NOT = (LOC), FLUSH AA + BRU *TYP,X2 (PLOC)+1= (LOC) +OUTP1 BRM FLUSH +OUTP2 BRM RESET + BRU *TYP,X2 +ENDM LDA WORD + ETR =077777 + MRG LBRU + STA WORD (WORD):= BRU0,0++(WORD) + LDA MLOC + STA QLOC (QLOC) := (MLOC) +* +DATA LDX DWC,X0 + LDA LOC + STA PLOC (PLOC) := (LOC) + LDA WORD + STA DW1+1,X2 (DW1(DWC+1)) := (WORD) + LDA WMOD + ETR =2 + LDB Z + RSH 2,X2 B22(WMOD)*2**(22-(DWC)) + CBA + MRG REL + STA REL (KEL) :=IREL)++(A) + SKN STYP SKIP IF SPECIAL IY WORD + BRU $+5 + LDB =1 + LDA Z + RCY 0,X2 + ADM SREL (SKEL) := I**(24-DWC)++(SREL) + CLR + SKE PMOD + LDB =1 + RCY 1,X2 + ADM PREL + MIN DWC (DWC):=(DWC)+1 + BRR OUTP EXI1 +* +FLUSH HLT ENTRY + LDA PTYP RECORD TYPE OF RECORD BEING FLUSHED + SKG Z + BRU $+3 (PTYP) =0 + SKE =3 + BRU FLUSH1 (PTYP) = 1 OR 2 + MIN DWC INCLUDE LOAD-ADDRESS WORD IN COUNT + LDA QLOC + STA DW1 STORE LOAD ADDRESS + LDX DWC,X0 + LDA REL + SKE Z + BRU $+2 + BRU FLSH2 + STA DW1,X2 STORE RELOCATION INDICATOR WRD + EAX 1,X2 + MIN DWC INCLUDE LOAD-RELOCAT1ON WORD IN COUNT + LDA =02000000 + ADM DW1 (M) := 1, (RELOCATION WORD PRESENT) +FLSH2 LDA SREL + SKE Z + BRU $+2 + BRU FLSH3 + STA DW1,X2 + EAX 1,X2 + MIN DWC INCLLUDE SPECIAL RELOC W0R0 IN COUNT + LDA =020000000 + ADM DW1 (M) := 8+ (M) +FLSH3 LDA PREL + SKE Z + BRU $+2 + BRU FLUSH1 + STA DW1,X2 + EAX 1,X2 + MIN DWC + LDA =010000000 + ADM DW1 +* FORM RECORD CONTROL WDRD +FLUSH1 LDA PTYP RECORD TYPE + LDB Z + LSH 6 + ADD =1 INDLUDE CONTROL WORD IN COUNT + ADD DWC NR OF WORDS IN RECORD + LSH 15 + MRG =050000 RECORD MODE (BINARY) + STA CW +* COMPUTE CHECKSUM AND WR1TE RECORD + BRM CHKSUM CDMPUTE FOLDED CHECKSUM + MRG CW INSERT CHECKSUM IN CONTROL WORD + STA CW STORE COMPLETED RECORD CONTROL WORD + BRM WRITR WRITE ONE RECORD + LDA Z + STA DWC (DWC) :=0 + BRR FLUSH EXIT +* +* SUBROUTINE TO COMPUTE FOLDED CHECKSUM +CHKSUM HLT ENYRY + LDA CW + RSH 15 + ETR =077 (A) = NR WORDS IN RECORD + SUB =2 + STA ICN + LDA =DW1 ADDRESS OF 2D WORD + STA ICW + LDA CW + ETR =077770000 EXTRACT CHECKSUM + EOR =077770000 ODD PARITY CHECKSUM + EOR *ICW + MIN ICW INCREMENT ADDRESS + SKR ICN + BRU $-3 + LDB Z (A) = 24-BIT CHECKSUM OF WORDS 1 THRU + LCY 12 + STB CHKS + LDB Z + RCY 12 + EOR CHKS (A) = COMPLETED 12-BIT CHECKSUM + BRR CHKSUM EXIT +ICN DATA 0 +* +* +* +RESET HLT ENTRY + LDA LOC + STA QLOC (QLOC):=(LOC) + LDA Z + STA REL (KEL) :=0 + STA SREL (SREL) T=0 + STA PREL + LDX CTYP,X0 + STX PTYP,X0 + BRR RESET EXIT +* +ENDN LDA Z + LDB CW + LSH 3 + SKE =3 + BRU $+2 + BRR OUTP + LDA =3 + STA PTYP + LDA MLOC + STA QLOC + BRM FLUSH + BRR OUTP +* +* INSERT 3 WORD REF OR DEF ITEM IN CURRENT OUTPUT RECORD +DEF LDX DWC,X0 ENTRY + LDA *WORD + STA DW1,X2 STORE 1ST 4 CHARS OF LABEL + MIN WORD + LDA *WORD + ETR =077770000 + MRG =06060 + STA DW1+1,X2 STORE LAST .2 CHARS OF LABEL + LDB Z + LDA STYP + LSH 22 + STA ICN + LDA *WORD + ETR =2 + XAB + MIN WORD + LDA *WORD + ETR =077777 + BRM SKB + HLT =2 + MRG =0100000 SET ADDRESS RELOCATION FLAG + MRG ICN SET SUB-TYPE +DEF1 STA DW1+2,X2 + LDA =3 + ADM DWC (DWC) := (DWC)+3 + BRR OUTP EXIT +* +REF EQU DEF +* CURRENT RECORD IMAGE +TYP HLT DATA + HLT DEF EXTERNAL REF OR DEF + HLT POP + HLT ENDM + HLT ENDN +LBRU BRU 0 +POP LDX DWC,X0 + LDA CNTR + STA WORD + LDA *WORD + STA DW1,X2 + MIN WORD + LDA *WORD +* blank card in tech manual + ETR =077770000 + MRG =' ' + STA DW1+1,X2 + MIN WORD + LDA *WORD + BRU DEF1 +$READ HLT 0 + BRM INPUT + LDA =CBUF + STA CHAR SETBEGINNINGOFLIPE + LDA GETX + STA GETS SET BEGINNINGOF WORD + BRM ELN + BRM GET GET 1STCHARACTEROFLINE + BRR READ EXIT +$FLD HLT 0 + LDA =7 + STA TEMP +FLD1 BRM GET + SKE =' ' + BRR FLD + SKR TEMP + BRU FLD1 + BRR FLD EXIT +$GET HLT 0 + LDA *CHAR LOAD CHARACTER +GETS EXU GETT EXECUTE SHIFT + MIN GETS +GET1 ETR =077 + STA CHR + CAX + BRR GET +GETT RSH 18 1ST CMAR + RSH 12 2ND CHAR + RSH 6 3RD CHAR + BRU GET2 END WORD +$GET2 LDB GETX + STB GETS RESET EXU + MIN CHAR STEP WORD + BRU GET1 +GETX EXU GETT +$TCHR HLT 0 + STB TEMP + BRM GET GET CHAR + LDB TEMP + BRM SKB + HLT CTT,X2 TEST FOR MATCM + MIN TCHR CHARACTER IS O.K. + BRR TCHR EXIT +$EDIT HLT 0 + BRM EDE EDIT ERRORS + BRM EDL EDIT LOCATION + LDA EDWV + BRM EDS + LDA WORD + STA WRD1 DATA WORD + BRM EDR EDIT BY FORM + BRM PRNT PRINT LINE + BRM OUTP OUTPUT WORD + BRR EDIT EXIT +$EDTV HLT 0 + BRM EDE EDIT ERRORS + LDA EDWV VALUE WORD POSITON + BRM EDS + LDA =7 + STA CNTR 7 CHARACTERS LEFT IN B + LDA WORD DATA + RSH 21 LEAVE 1ST CHAR IN A + ETR =7 + BRM EDF EDIT FIELD + BRM PRNT PR1NT LINE + BRR EDTV EXIT +$EDTL HLT 0 + BRM EDE ED1T ERRORS + BRM EDL EDIT LOCATION + BRM PRNT PRINT LINE + BRR EDTL EXIT +$EDE HLT 0 + LDA EDWE ERRORWORD POSITION + BRM EDS + LDA Z + XMA VERR RESET V ERRORFLAG + ADM UERR U SET IF V SET + LDX ERRC,X0 ERROR COUNT +EDE1 LDA ERRC,X2 ERROR LISTING CHAR + LDB VERR,X2 + BRM SKB + HLT M1 + BRM EDC INSERT ERRORCODE + LDB Z + STB VERR,X2 RESET FLAG + BRX EDE1,X0 TEST NEXTFLAG + BRR EDE EXIT +EDL HLT 0 + LDA EDWL LOC WORD POS1TION + BRM EDS + LDA =4 + STA CNTR MORE CHARACTERS INB + LDA LOC + ETR ADDR + RSH 12 + BRM EDF EDIT LOC + BRR EDL EXIT +EDR HLT 0 + LDB =040000000 +EDR3 BRM FLDC CDUNT BITS FIELD + BRU EDR1 NO MORE FIELDS + RSH 23 + DIV =3 + BRM SKB + HLT =3 + BRU EDR2 + SUB =1 + LDB =3 +EDR2 STA CNTR OCTAL CHARACTERS IN FIELD + CBX BITS IN 1ST CHAR + LDA Z + LDB WRD1 DATA WORD + LSH 0,X2 1ST CHAR IN A + BRM EDF EDIT FIELD + LDA =060 + BRM EDC INSERT TRAILING BLANK + LDB Z + BRU EDR3 D0 NEXT FIELD +EDR1 BRR EDR EXIT +EDF HLT 0 + BRU EDF1 +EDF2 LDA Z + LSH 3 NEW OCTAL CHAR +EDF1 STB WRD1 + BRM EDC INSERT CHAR INIMAGE + LDB WRD1 + SKR CNTR TLST FOREND FIELD + BRU EDF2 + BRR EDF EXIT +$FLDC HLT 0 + LDA WRD2 FORM WORD + EOR =040000000 + LDX =22,X0 + NOD 24 CDUNT BITS IN FIELD + LSH 1 + STA WRD2 NEW FORM WORD + STX CNTR,X0 + LDA =23 + SUB CNTR + ETR =077777 + SKG =24 + MIN FLDC +FLC1 BRR FLDC EXIT + END diff --git a/symbol/section-7.bo b/symbol/section-7.bo new file mode 100644 index 0000000..9ab20ca --- /dev/null +++ b/symbol/section-7.bo @@ -0,0 +1 @@ + Ldsppppp I7dspppppp |%QRppppp 8g&gpppp @ g&g)pppp @2b2&Tpp n7d2bpppp ;QRpppppp 7@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ^&QTT)pppp yTgv)pppp 4&Tpppp /&Tppppp ,&dppppp m&)&pp z%TRpppp v%2spppp u@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]kO@@Op@@@@>@@ F@@p@@ @@p1Fp@Ch@EF@@@@@F@JX@@s@CCh@IEX@@@@@@ F@@p1Ch@@@@Wp@@@4%h@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]T>@XCh@@Wp@ @Ch@@@@kEX@@@ @@@p@Ch@p@[ @Ch@bpzh@@@@@p@@Eh@aCh@)p@CEh@dCh@,@@@s@C /1|@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]1@pCh@@@@@s@CCh@p@@@X@@p@@hzX@=@@uX@@X@=@@z@@@@EX@]@JCp@OE @&@EEX@EhChp@h]/@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]a7Ch@@X@@F@ p@@hE@s@@@E@=p@@h@@@@X@@@@@X@@h@@Cp@@F8@@@@EX@>@@@ppChFX@@p1 @m@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]su @vp@  2XzF@@Eh]Ch%p hL@s@@@@^@p@@@@@p@@@4@@@@@@@@@ @@@;@@@d@@@@@@@@m=@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@pR@8@@@I@C@@@@@@@#8ppp@@Fz@@#TQppp@@p@@#TRppp@@h@@#Tppp@@p #T7ppp@@@@#2Xppp@@F8@@d%ppp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]WF@@dvppp@@@@d8ppp@@@@@d)Wppp@@p@@d4#ppp@@F @@%&Tppp@@Fy@@%&gppp@@@@@&sppp@@@@u&gTppp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]bh@@@@&)Wppp@@@@4&usppp@@@gQWpp@@@@@gRsppp %gRppp @X%gTppp @%g%ppp@@CX@@g&gTpp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]z&C@@@@]g&sppp@@X@@ggsppp @#ggsvpp@@#ggs8pp@@Q#gs#ppp @@#gs#vpp@@@#gs#8pp@@#gyppp@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@CX@@@@)Rppp @XE)Rvpp@@XE)R8pp@@E)Tppp @E)Tvpp@@E)T8pp@@QE)Xppp@p@@)8ppp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]TCpF2@@)2ppp@@@@@)vppp @Q )vvpp@@Q )bRppp @@)bRvpp@@@)bR8pp@@Q@)&)Wpp@@@k)&uppp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;@@R@)gsppp @C)gsvpp@@C)gs8pp@@QC)2Xppp@@Fp@@)sRppp @X)sRvpp@@X)sR8pp@@)sTppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@8@ @)sTvpp@@)sT8pp@@Q)s2ppp @Q @2Rppp @XX2Rppp@@XX2Tppp @X2bQppp@@@@2bRppp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Fy@8E@@2bTppp@@ @@2bppp@@E@@@2bWppp@@X@@2bdppp@@@@@2b%ppp@@EX@@2b)ppp@@F@@@2b2ppp@@@@2)Rppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@y@E@8X2)Rvpp@@8X2)ppp @QE2)Tppp @pX2sQppp@@Ch@@2sRppp@@Cp@@2sppp@@pR2s7ppp@@C8@@24Rppp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@EhE @@24ppp@@Ep@@s7spp@@@@@s&gppp @Q @s&gvpp@@@Q @s&g8pp@@@Qa@s)sppp s8gppp @ s8gvpp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ak@F@@ s8g8pp@@Q vdppp@@C@@vsRppp @XhvsRvpp@@XhvsR8pp@@hvsTppp @hvsTvpp@@hvsT8pp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@FX@Qh7QRppp@@p@L7ppp@@pp7dQppp@@F@@77Qppp@@pF@77Rppp@@p@p8dppp@@C@@@QRppp@@2@EQTppp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*@FpE8@@QTTppp@@Eh@@QTdppp@@FX@@Q)ppp@@@R@Q#ppp @@@Q&)Wpp@@@@@Q2ppp @Q@RQppp@@1@JRTppp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]u[@@@@Rppp@@@Rsvpp@@@Rs8pp@@@R&&#pp@@@@/R&)Wpp@@@@2Rgsppp@@@R)dppp@@X@@R))ppp@@@d @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]T E@@R)svpp@@@R)s8pp@@@R)4ppp@@@@@R)7ppp@@@@R22ppp@@@CsRssppp QRppp@@p@Qsppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@E@8 @Q7ppp@@p@RQppp@@p@R7ppp@@p@sppp @sppp Esppp @#Qppp@@p@#Rppp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@J@p@#)ppp@@s@C%Qppp@@p@gsppp  %)sppp E7Qppp@@p@7Rppp@@p@ ysppp @TQsQpp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]ksh@@@@Tppp@@@@zTTppp@@@@@T)ppp@@@R@T2vpp@@@@@T28pp@@@@Tuppp@@Fh@@T2ppp @@@Q7ppp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]yLI@8@@sppp @X8)ppp@@@R@%Tppp@@@@@&Tppp@@p@@&dppp@@@@&)ppp@@8@@h4ppp@@@@1)sppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@v#@IX@88s)ppp@@ @@ssppp svppp@@X874ppp@@X@@sppp  E&)dpp@@@@@gsppp  X#sppp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 7 @Ip@@@@Tsppp@@@sppp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ #R#gpp@m#R#gpp@*#R#pppp@X#%pppp[#%Cpppp*#%pppp#&pppppJ#28dpppp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ F2dpppppph&spppp@s&svpppp@u&gTpppp@n&gTppppph&)WpppppEgpppppgQWpppp1@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 1kgQ22ppppgd&Tpppp@gypppppCX2Q%pppp^2bRppppp2gQpppps)dppppgs))ppppd@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ bhs7sppppEns7spppuQ#4pppp v&)Tpppp&v)Tpppp7#Wpppp@gQ&)WppppFR@pppppp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ gRTpppppRppppWR22ppppp/X)pppppRsspppppTTQsQpppphTppppppQTvpppp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 1|TTpppppnT#R#pppp@ Tgvppppp@zTsppppI%TpppppIIh4pppppI&)dppppI*)dpppp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=7))pppp@L%)pppp@R@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]n[@I8@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/symbol/section-7.lo b/symbol/section-7.lo new file mode 100644 index 0000000..920c7ea --- /dev/null +++ b/symbol/section-7.lo @@ -0,0 +1,724 @@ + + 1 + 2 + 3 * S5C + 00000000 4 S9300 EQU 0 + 00000000 5 X0 EQU S9300 + 00000002 6 X2 EQU 2-S9300 + 00000 17600000 7 C176 DATA 017600000 + 00001 77770000 8 C7777 DATA 077770000 + 00002 77777776 9 M2 DATA -2 + 00003 00002040 10 C2040 DATA 02040 +* 00004 0 61 00000 11 $POPR MIN PMOD +* 00005 0 76 00000 12 LDA WORD + 00006 0 14 00000 13 ETR C176 + 00007 0 16 00161 14 MRG B1 + 00010 0 66 00001 15 RSH 1 +* 00011 0 35 00005 16 STA WORD +* 00012 0 61 00000 17 MIN IERR +* 00013 0 01 00000 18 BRU INR1 +* 00014 0 61 00012 19 MIN IERR REMOVED POPI LABEL THIS LINE +* 00015 0 43 00000 20 $POPI BRM DLBL + 00016 0 46 30003 21 CLR +* 00017 0 35 00011 22 STA WORD +* 00020 0 53 00000 23 SKN PASS + 00021 0 01 00023 24 BRU $+2 +* 00022 0 01 00013 25 BRU INR1 +* 00023 0 61 00000 26 MIN LOC + 00024 0 76 00161 27 LDA B1 +* 00025 0 35 00000 28 STA LBL1P2 +* 00026 0 71 00000 29 LDX LSYM,X0 + 00027 2 76 00000 30 LDA 0,X2 +* 00030 0 35 00000 31 STA LBL1 + 00031 2 76 00001 32 LDA 1,X2 + 00032 0 14 00001 33 ETR C7777 +* 00033 0 35 00000 34 STA LBL1P1 + 00034 0 01 00053 35 BRU POPD1 +* 00035 0 53 00020 36 POPD SKN PASS + 00036 0 01 00040 37 BRU $+2 +* 00037 0 01 00000 38 BRU FRM4 +* 00040 0 76 00023 39 LDA LOC +* 00041 0 35 00025 40 STA LBL1P2 +* 00042 0 76 00033 41 LDA LBL1P1 + 00043 0 14 00002 42 ETR M2 +* 00044 0 35 00042 43 STA LBL1P1 + 00045 0 76 00172 44 LDA Z +* 00046 0 75 00000 45 LDB M1 +* 00047 0 70 00000 46 SKM XFLG +* 00050 0 76 00000 47 LDA B0 +* 00051 0 55 00041 48 ADD LBL1P2 +* 00052 0 35 00051 49 STA LBL1P2 + 00053 0 76 00003 50 POPD1 LDA C2040 +* 00054 0 55 00044 51 ADD LBL1P1 +* 00055 0 35 00054 52 STA LBL1P1 +* 00056 0 01 00000 53 BRU OPD1 + 00057 0 46 30003 54 BOOL CLR +* 00060 0 35 00000 55 STA OCTF +* 00061 0 01 00000 56 BRU EQU + 00062 0 46 30003 57 BORG CLR +* 00063 0 35 00060 58 STA OCTF +* 00064 0 01 00000 59 BRU ORG +* 00065 0 43 00000 60 OCT BRM OCTW +* 00066 0 76 00000 61 LDA VALU + 00067 0 75 00172 62 LDB Z + 00070 0 43 00075 63 BRM OCTDEC + 00071 0 01 00065 64 BRU OCT +* 00072 0 43 00000 65 DEC BRM DPW + 00073 0 43 00075 66 BRM OCTDEC + 00074 0 01 00072 67 BRU DEC + 00075 0 00 00000 68 OCTDEC HLT 0 +* 00076 0 53 00035 69 SKN PASS + 00077 0 01 00112 70 BRU OD1 +* 00100 0 36 00017 71 STB WORD +* 00101 0 54 00046 72 SUB M1 +* 00102 0 72 00101 73 SKA M1 + 00103 0 01 00105 74 BRU $+2 +* 00104 0 53 00100 75 SKN WORD +* 00105 0 55 00102 76 ADD M1 +* 00106 0 35 00104 77 STA WORD +* 00107 0 76 00050 78 LDA B0 +* 00110 0 35 00000 79 STA WRD2 +* 00111 0 43 00000 80 BRM EDIT +* 00112 0 61 00040 81 OD1 MIN LOC +* 00113 0 76 00000 82 LDA TERM +* 00114 0 75 00105 83 LDB M1 + 00115 0 70 00163 84 SKM CCHR +* 00116 0 01 00000 85 BRU LINE + 00117 0 51 00075 86 BRR OCTDEC +* 00120 0 76 00000 87 BCI LDA P14 +* 00121 0 75 00000 88 LDB DC +* 00122 0 71 00000 89 LDX CHR,X0 +* 00123 0 43 00000 90 BRM SKB +* 00124 2 00 00000 91 HLT CTT,X2 +* 00125 0 43 00000 92 BRM DECW +* 00126 0 75 00000 93 LDB SPAC +* 00127 0 36 00000 94 STB BCIF + 00130 0 67 00002 95 LSH 2 +* 00131 0 01 00000 96 BRU TEXT1 +* 00132 0 53 00076 97 BPT SKN PASS +* 00133 0 01 00000 98 BRU LIN2 IGNORE IF 1ST PASS + 00134 0 76 00160 99 LDA SKSB +* 00135 0 35 00106 100 STA WORD INSTRUCTION +* 00136 0 43 00000 101 BPT1 BRM SCAN GET BREAK-POINT + 00137 0 76 00161 102 LDA B1 +* 00140 0 71 00066 103 LDX VALU,X0 + 00141 2 66 00015 104 RSH 13,X2 POSITION BREAKPOINT BIT + 00142 0 14 00162 105 ETR BPM MASK + 00143 0 73 00172 106 SKG Z TEST RANGE +* 00144 0 61 00000 107 MIN TERR SET TRUNCATION ERROR +* 00145 0 55 00135 108 ADD WORD +* 00146 0 35 00145 109 STA WORD +* 00147 0 76 00113 110 LDA TERM +* 00150 0 75 00114 111 LDB M1 + 00151 0 70 00163 112 SKM CCHR +* 00152 0 01 00000 113 BRU LIN3 LAST BREAKPOINT + 00153 0 01 00136 114 BRU BPT1 GET NEXT BREAKPOINT + 00154 00600000 115 $EOD DATA 0600000 + 00155 00200000 116 $EOM DATA 0200000 + 00156 04600000 117 $SKSEOD DATA 04600000 + 00157 00640000 118 $EODI DATA 0640000 + 00160 04020000 119 SKSB DATA 04020000 + 00161 20000000 120 B1 DATA 020000000 + 00162 00000740 121 BPM DATA 0740 + 00163 00000073 122 CCHR DATA 073 + 00164 0 20 00000 123 $DPWR NOP 0 FLPT ECXHANGE OPERATOR. XAB FOR 9300 + 00165 44040000 124 $INST DATA 044040000 + 00166 00040000 125 $INDB DATA 040000 + 00167 00000016 126 $AB DATA 016 + 00170 00000011 127 $NAB DATA 9 + 00171 0 00 37777 128 $ADDR HLT 037777 + 00172 129 $FORCEO RES 0 + 00172 00000000 130 Z DATA + 00173 00000007 131 $XMSK DATA 07 + 00000020 132 INS1 EQU 020 + 00000010 133 INS2 EQU 010 + 00004010 134 INS9 EQU 04010 + 00000004 135 DIR1 EQU 4 + 00000002 136 DIR2 EQU 2 + 60600000 137 NEM OPD 060600000 + 138 HAF FORM 12,12 + 139 P FORM 9,15 + 00174 140 $MT RES 0 + 00174 43237060 141 TEXT 4,LCY + 00175 6 06 00000 142 NEM 0 + 00176 06720000 143 DATA 006720000 + 00177 43242160 144 TEXT 4,LDA + 00200 6 06 00000 145 NEM 0 + 00201 07600000 146 DATA 007600000 + 00202 43242260 147 TEXT 4,LDB + 00203 6 06 00000 148 NEM 0 + 00204 07500000 149 DATA 007500000 + 00205 43242560 150 TEXT 4,LDE + 00206 6 06 00000 151 NEM 0 + 00207 04600140 152 DATA 004600140 + 00210 43246760 153 TEXT 4,LDX + 00211 6 06 00000 154 NEM 0 + 00212 07100000 155 DATA 007100000 + 156 * TEXT 4,LIL + 157 * NEM DIR2 + 158 * HLT NOPO + 159 * TEXT 4,LIST + 160 * NEM DIR2 + 161 * HLT NOPO + 00213 43623060 162 TEXT 4,LSH + 00214 6 06 00000 163 NEM 0 + 00215 06700000 164 DATA 006700000 + 00216 44314560 165 TEXT 4,MIN + 00217 6 06 00000 166 NEM 0 + 00220 06100000 167 DATA 006100000 + 00221 44316660 168 TEXT 4,MIW + 00222 6 06 00000 169 NEM 0 + 00223 01200000 170 DATA 001200000 + 00224 44317060 171 TEXT 4,MIY + 00225 6 06 00000 172 NEM 0 + 00226 01000000 173 DATA 001000000 + 00227 44512760 174 TEXT 4,MRG + 00230 6 06 00000 175 NEM 0 + 00231 01600000 176 DATA 001600000 + 00232 44644360 177 TEXT 4,MUL + 00233 6 06 00000 178 NEM 0 + 00234 06400000 179 DATA 006400000 + 00235 45462460 180 TEXT 4,NOD + 00236 6 06 00000 181 NEM 0 + 00237 06710000 182 DATA 006710000 + 00240 45464760 183 TEXT 4,NOP + 00241 6 06 00000 184 NEM 0 + 00242 02000000 185 DATA 002000000 + 00243 46236360 186 TEXT 4,OCT + 00244 6 06 00002 187 NEM DIR2 + 00245 0 00 00065 188 HLT OCT + 00246 46472460 189 TEXT 4,OPD + 00247 6 06 00004 190 NEM DIR1 +* 00250 0 00 00000 191 HLT OPD + 00251 46512760 192 TEXT 4,ORG + 00252 6 06 00004 193 NEM DIR1 +* 00253 0 00 00064 194 HLT ORG + 00254 46656360 195 TEXT 4,OVT + 00255 6 06 00000 196 NEM 0 + 00256 04020001 197 DATA 04020001 + 00257 47212725 198 TEXT 4,PAGE + 00260 6 06 00002 199 NEM DIR2 +* 00261 0 00 00000 200 HLT PAGE + 00262 47226360 201 TEXT 4,PBT + 00263 6 06 04010 202 NEM INS9 + 00264 04012045 203 DATA 04012045 + 00265 47232260 204 TEXT 4,PCB + 00266 6 06 04010 205 NEM INS9 + 00267 0 02 03045 206 EOM 003045 + 00270 47232460 207 TEXT 4,PCD + 00271 6 06 04010 208 NEM INS9 + 00272 0 02 02045 209 EOM 002045 + 00273 47314560 210 TEXT 4,PIN + 00274 6 06 00000 211 NEM 0 + 00275 03300000 212 DATA 003300000 + 00276 47464724 213 TEXT 4,POPD + 00277 6 06 00004 214 NEM DIR1 + 00300 0 00 00035 215 HLT POPD + 00301 47466360 216 TEXT 4,POT + 00302 6 06 00000 217 NEM 0 + 00303 01300000 218 DATA 001300000 + 00304 47476360 219 TEXT 4,PPT + 00305 6 06 04010 220 NEM INS9 + 00306 0 02 02043 221 EOM 02043 + 00307 47476366 222 TEXT 4,PPTW + 00310 6 06 00010 223 NEM INS2 + 00311 00202043 224 DATA 00202043 + 00312 47476370 225 TEXT 4,PPTY + 00313 6 06 00010 226 NEM INS2 + 00314 00202143 227 DATA 00202143 + 00315 47634360 228 TEXT 4,PTL + 00316 6 06 04010 229 NEM INS9 + 00317 0 02 00043 230 EOM 043 + 00320 47634366 231 TEXT 4,PTLW + 00321 6 06 00010 232 NEM INS2 + + 00322 00200043 233 DATA 00200043 + 00323 47634370 234 TEXT 4,PTLY + 00324 6 06 00010 235 NEM INS2 + 00325 00200143 236 DATA 00200143 + 00326 47712560 237 TEXT 4,PZE + 00327 6 06 00002 238 NEM DIR2 +* 00330 0 00 00000 239 HLT PZE + 00331 51232260 240 TEXT 4,RCB + 00332 6 06 04010 241 NEM INS9 + 00333 0 02 03005 242 EOM 03005 + 00334 51232266 243 TEXT 4,RCBW + 00335 6 06 00010 244 NEM INS2 + 00336 00203005 245 DATA 00203005 + 00337 51232270 246 TEXT 4,RCBY + 00340 6 06 00010 247 NEM INS2 + 00341 00203105 248 DATA 00203105 + 00342 51232460 249 TEXT 4,RCD + 00343 6 06 04010 250 NEM INS9 + 00344 0 02 02005 251 EOM 02005 + 00345 51232466 252 TEXT 4,RCDW + 00346 6 06 00010 253 NEM INS2 + 00347 00202005 254 DATA 00202005 + 00350 51232470 255 TEXT 4,RCDY + 00351 6 06 00010 256 NEM INS2 + 00352 00202105 257 DATA 00202105 + 00353 51233060 258 TEXT 4,RCH + 00354 6 06 00020 259 NEM INS1 + 00355 04600000 260 DATA 004600000 + 00356 51237060 261 TEXT 4,RCY + 00357 6 06 00000 262 NEM 0 + 00360 06620000 263 DATA 006620000 + 264 * TEXT 4,REL + 265 * NEM DIR2 + 266 * HLT NOPO + 00361 51256260 267 TEXT 4,RES + 00362 6 06 00002 268 NEM DIR2 +* 00363 0 00 00000 269 HLT BSS + 00364 51256660 270 TEXT 4,REW + 00365 6 06 04010 271 NEM INS9 + 00366 0 02 14010 272 EOM 014010 + 00367 51256666 273 TEXT 4,REWW + 00370 6 06 00010 274 NEM INS2 + 00371 0 02 14010 275 EOM 014010 + 00372 51422260 276 TEXT 4,RKB + 00373 6 06 04010 277 NEM INS9 + 00374 0 02 02000 278 EOM 02000 + 00375 51422266 279 TEXT 4,RKBW + 00376 6 06 00010 280 NEM INS2 + 00377 00202000 281 DATA 00202000 + 00400 51422270 282 TEXT 4,RKBY + 00401 6 06 00010 283 NEM INS2 + 00402 00202100 284 DATA 00202100 + 00403 51465127 285 TEXT 4,RORG + 00404 6 06 00002 286 NEM DIR2 +* 00405 0 00 00253 287 HLT ORG + 00406 51466560 288 TEXT 4,ROV + 00407 6 06 00000 289 NEM 0 + 00410 0 02 20001 290 EOM 020001 + 00411 51476360 291 TEXT 4,RPT + 00412 6 06 04010 292 NEM INS9 + 00413 0 02 02003 293 EOM 02003 + 00414 51476366 294 TEXT 4,RPTW + 00415 6 06 00010 295 NEM INS2 + 00416 00202003 296 DATA 00202003 + 00417 51476370 297 TEXT 4,RPTY + 00420 6 06 00010 298 NEM INS2 + 00421 00202103 299 DATA 00202103 + 00422 51623060 300 TEXT 4,RSH + 00423 6 06 00000 301 NEM 0 + 00424 06600000 302 DATA 006600000 + 00425 51632260 303 TEXT 4,RTB + 00426 6 06 04010 304 NEM INS9 + 00427 0 02 03010 305 EOM 03010 + 00430 51632266 306 TEXT 4,RTBW + 00431 6 06 00010 307 NEM INS2 + 00432 00203010 308 DATA 00203010 + 00433 51632270 309 TEXT 4,RTBY + 00434 6 06 00010 310 NEM INS2 + 00435 00203110 311 DATA 00203110 + 00436 51632460 312 TEXT 4,RTD + 00437 6 06 04010 313 NEM INS9 + 00440 0 02 02010 314 EOM 02010 + 00441 51632466 315 TEXT 4,RTDW + 00442 6 06 00010 316 NEM INS2 + 00443 00202010 317 DATA 00202010 + 00444 51632470 318 TEXT 4,RTDY + 00445 6 06 00010 319 NEM INS2 + 00446 00202110 320 DATA 00202110 + 00447 51636260 321 TEXT 4,RTS + 00450 6 06 04010 322 NEM INS9 + 00451 0 02 14000 323 EOM 014000 + 00452 62262260 324 TEXT 4,SFB + 00453 6 06 04010 325 NEM INS9 + 00454 0 02 03030 326 EOM 03030 + 00455 62262260 327 TEXT 4,SFB + 00456 6 06 00010 328 NEM INS2 + 00457 00203030 329 DATA 00203030 + 00460 62262460 330 TEXT 4,SFD + 00461 6 06 04010 331 NEM INS9 + 00462 0 02 02030 332 EOM 02030 + 00463 62422160 333 TEXT 4,SKA + 00464 6 06 00000 334 NEM 0 + 00465 07200000 335 DATA 007200000 + 00466 62422260 336 TEXT 4,SKB + 00467 6 06 00000 337 NEM 0 + 00470 05200000 338 DATA 005200000 + 00471 62422460 339 TEXT 4,SKD + 00472 6 06 00000 340 NEM 0 + 00473 07400000 341 DATA 007400000 + 00474 62422560 342 TEXT 4,SKE + 00475 6 06 00000 343 NEM 0 + 00476 05000000 344 DATA 005000000 + 00477 62422760 345 TEXT 4,SKG + 00500 6 06 00000 346 NEM 0 + 00501 07300000 347 DATA 007300000 + 00502 62424460 348 TEXT 4,SKM + 00503 6 06 00000 349 NEM 0 + 00504 07000000 350 DATA 007000000 + 00505 62424560 351 TEXT 4,SKN + 00506 6 06 00000 352 NEM 0 + 00507 05300000 353 DATA 005300000 + 00510 62425160 354 TEXT 4,SKR + 00511 6 06 00000 355 NEM 0 + 00512 06000000 356 DATA 006000000 + 00513 62426260 357 TEXT 4,SKS + 00514 6 06 00020 358 NEM INS1 + 00515 04000000 359 DATA 004000000 + 00516 62512260 360 TEXT 4,SRB + 00517 6 06 04010 361 NEM INS9 + 00520 0 02 07030 362 EOM 07030 + 00521 62512266 363 TEXT 4,SRBW + 00522 6 06 00010 364 NEM INS2 + 00523 00207030 365 DATA 00207030 + 00524 62512360 366 TEXT 4,SRC + 00525 6 06 04010 367 NEM INS9 + 00526 0 02 12005 368 EOM 012005 + 00527 62512460 369 TEXT 4,SRD + 00530 6 06 04010 370 NEM INS9 + 00531 0 02 06030 371 EOM 06030 + 00532 62632160 372 TEXT 4,STA + 00533 6 06 00000 373 NEM 0 + 00534 03500000 374 DATA 003500000 + 00535 62632260 375 TEXT 4,STB + 00536 6 06 00000 376 NEM 0 + 00537 03600000 377 DATA 003600000 + 00540 62632560 378 TEXT 4,STE + 00541 6 06 00000 379 NEM 0 + 00542 04600122 380 DATA 004600122 + 00543 62636760 381 TEXT 4,STX + 00544 6 06 00000 382 NEM 0 + 00545 03700000 383 DATA 003700000 + 00546 62642260 384 TEXT 4,SUB + 00547 6 06 00000 385 NEM 0 + 00550 05400000 386 DATA 005400000 + 00551 62642360 387 TEXT 4,SUC + 00552 6 06 00000 388 NEM 0 + 00553 05600000 389 DATA 005600000 + 390 * TEXT 4,TCD + 391 * NEM DIR2 + 392 * HLT NOPO + 00554 63256763 393 TEXT 4,TEXT + 00555 6 06 00002 394 NEM DIR2 +* 00556 0 00 00000 395 HLT TEXT + 00557 63464760 396 TEXT 4,TOP + 00560 6 06 04010 397 NEM INS9 + 00561 0 02 14000 398 EOM 014000 + 00562 63464766 399 TEXT 4,TOPW + 00563 6 06 00000 400 NEM 0 + 00564 0 02 14000 401 EOM 014000 + 00565 63464770 402 TEXT 4,TOPY + 00566 6 06 00000 403 NEM 0 + 00567 0 02 14100 404 EOM 014100 + 00570 63516360 405 TEXT 4,TRT + 00571 6 06 04010 406 NEM INS9 + 00572 04010410 407 DATA 04010410 + 00573 63704760 408 TEXT 4,TYP + 00574 6 06 04010 409 NEM INS9 + 00575 0 02 02040 410 EOM 02040 + 00576 63704766 411 TEXT 4,TYPW + 00577 6 06 00010 412 NEM INS2 + 00600 00202040 413 DATA 00202040 + 00601 63704770 414 TEXT 4,TYPY + 00602 6 06 00010 415 NEM INS2 + 00603 00202140 416 DATA 00202140 + 417 * TEXT 4,UNLI + 418 * HAF 'ST',DIR2 + 419 * HLT NOPO + 00604 66314460 420 TEXT 4,WIM + 00605 6 06 00000 421 NEM 0 + 00606 03200000 422 DATA 003200000 + 00607 66632260 423 TEXT 4,WTB + 00610 6 06 04010 424 NEM INS9 + 00611 0 02 03050 425 EOM 03050 + 00612 66632266 426 TEXT 4,WTBW + 00613 6 06 00010 427 NEM INS2 + 00614 00203050 428 DATA 00203050 + 00615 66632270 429 TEXT 4,WTBY + 00616 6 06 00010 430 NEM INS2 + 00617 00203150 431 DATA 00203150 + 00620 66632460 432 TEXT 4,WTD + 00621 6 06 04010 433 NEM INS9 + 00622 0 02 02050 434 EOM 02050 + 00623 66632466 435 TEXT 4,WTDW + 00624 6 06 00010 436 NEM INS2 + 00625 00202050 437 DATA 00202050 + 00626 66632470 438 TEXT 4,WTDY + 00627 6 06 00010 439 NEM INS2 + 00630 00202150 440 DATA 00202150 + 00631 67212260 441 TEXT 4,XAB + 00632 6 06 00000 442 NEM 0 + 00633 04600014 443 DATA 004600014 + 00634 67252560 444 TEXT 4,XEE + 00635 6 06 00000 445 NEM 0 + 00636 04600160 446 DATA 004600160 + 00637 67442160 447 TEXT 4,XMA + 00640 6 06 00000 448 NEM 0 + 00641 06200000 449 DATA 006200000 + 00642 67672160 450 TEXT 4,XXA + 00643 6 06 00000 451 NEM 0 + 00644 04600600 452 DATA 004600600 + 00645 67672260 453 TEXT 4,XXB + 00646 6 06 00000 454 NEM 0 + 00647 04600060 455 DATA 004600060 + 00650 70314460 456 TEXT 4,YIM + 00651 6 06 00000 457 NEM 0 + 00652 03000000 458 DATA 003000000 + 00653 21222360 459 TEXT 4,ABC + 00654 6 06 00000 460 NEM 0 + 00655 04620005 461 DATA 04620005 + 00656 21242360 462 TEXT 4,ADC + 00657 6 06 00000 463 NEM 0 + 00660 05700000 464 DATA 05700000 + 00661 21242460 465 TEXT 4,ADD + 00662 6 06 00000 466 NEM 0 + 00663 05500000 467 DATA 05500000 + 00664 21244460 468 TEXT 4,ADM + 00665 6 06 00000 469 NEM 0 + 00666 06300000 470 DATA 06300000 + 00667 21315160 471 TEXT 4,AIR + 00670 6 06 00000 472 NEM 0 + 00671 0 02 20020 473 EOM 020020 + 00672 21432360 474 TEXT 4,ALC + 00673 6 06 04010 475 NEM INS9 + 00674 00250000 476 DATA 0250000 + 00675 21465127 477 TEXT 4,AORG + 00676 6 06 00004 478 NEM DIR1 +* 00677 0 00 00000 479 HLT AORG + 00700 21622360 480 TEXT 4,ASC + 00701 6 06 04010 481 NEM INS9 + 00702 0 02 12000 482 EOM 012000 + 00703 22212360 483 TEXT 4,BAC + 00704 6 06 00000 484 NEM 0 + 00705 04610012 485 DATA 04610012 + 00706 22232460 486 TEXT 4,BCD + 00707 6 06 00002 487 NEM DIR2 +* 00710 0 00 00000 488 HLT BCD + 00711 22233160 489 TEXT 4,BCI + 00712 6 06 00002 490 NEM DIR2 + 00713 0 00 00120 491 HLT BCI + 00714 22256366 492 TEXT 4,BETW + 00715 6 06 00000 493 NEM 0 + 00716 04020010 494 DATA 04020010 + 00717 22256370 495 TEXT 4,BETY + 00720 6 06 00000 496 NEM 0 + 00721 04020020 497 DATA 04020020 + 498 * TEXT 4,BLK + 499 * NEM DIR2 + 500 * HLT NOPO + 00722 22464643 501 TEXT 4,BOOL + 00723 6 06 00004 502 NEM DIR1 + 00724 0 00 00057 503 HLT BOOL + 00725 22465127 504 TEXT 4,BORG + 00726 6 06 00004 505 NEM DIR1 + 00727 0 00 00062 506 HLT BORG + 00730 22476360 507 TEXT 4,BPT + 00731 6 06 00002 508 NEM DIR2 + 00732 0 00 00132 509 HLT BPT + 00733 22514460 510 TEXT 4,BRM + 00734 6 06 00000 511 NEM 0 + 00735 04300000 512 DATA 04300000 + 00736 22515160 513 TEXT 4,BRR + 00737 6 06 00000 514 NEM 0 + 00740 05100000 515 DATA 05100000 + 00741 22516366 516 TEXT 4,BRTW + 00742 6 06 00000 517 NEM 0 + 00743 04021000 518 DATA 04021000 + 00744 22516370 519 TEXT 4,BRTY + 00745 6 06 00000 520 NEM 0 + 00746 04022000 521 DATA 04022000 + 00747 22516460 522 TEXT 4,BRU + 00750 6 06 00000 523 NEM 0 + 00751 0 01 00000 524 BRU 0 + 00752 22516760 525 TEXT 4,BRX + 00753 6 06 00000 526 NEM 0 + 00754 04100000 527 DATA 04100000 + 00755 22626260 528 TEXT 4,BSS + 00756 6 06 00002 529 NEM DIR2 +* 00757 0 00 00363 530 HLT BSS + 00760 22636360 531 TEXT 4,BTT + 00761 6 06 04010 532 NEM INS9 + 00762 04012010 533 DATA 04012010 + 00763 23212260 534 TEXT 4,CAB + 00764 6 06 00000 535 NEM 0 + 00765 04600004 536 DATA 04600004 + 00766 23216360 537 TEXT 4,CAT + 00767 6 06 04010 538 NEM INS9 + 00770 04014000 539 DATA 04014000 + 00771 23216760 540 TEXT 4,CAX + 00772 6 06 00000 541 NEM 0 + 00773 04600400 542 DATA 04600400 + 00774 23222160 543 TEXT 4,CBA + 00775 6 06 00000 544 NEM 0 + 00776 04600010 545 DATA 04600010 + 00777 23226760 546 TEXT 4,CBX + 01000 6 06 00000 547 NEM 0 + 01001 04600020 548 DATA 04600020 + 01002 23256360 549 TEXT 4,CET + 01003 6 06 04010 550 NEM INS9 + 01004 04011000 551 DATA 04011000 + 01005 23266360 552 TEXT 4,CFT + 01006 6 06 04010 553 NEM INS9 + 01007 04011005 554 DATA 04011005 + 01010 23316360 555 TEXT 4,CIT + 01011 6 06 04010 556 NEM INS9 + 01012 04010400 557 DATA 04010400 + 01013 23432160 558 TEXT 4,CLA + 01014 6 06 00000 559 NEM 0 + 01015 04600001 560 DATA 04600001 + 01016 23432260 561 TEXT 4,CLB + 01017 6 06 00000 562 NEM 0 + 01020 04600002 563 DATA 04600002 + 01021 23435160 564 TEXT 4,CLR + 01022 6 06 00000 565 NEM 0 + 01023 04630003 566 DATA 04630003 + 01024 23452160 567 TEXT 4,CNA + 01025 6 06 00000 568 NEM 0 + 01026 04601000 569 DATA 04601000 + 570 * TEXT 4,COPY + 571 * NEM DIR2 + 572 * HLT COPY + 01027 23476360 573 TEXT 4,CPT + 01030 6 06 04010 574 NEM INS9 + 01031 04014045 575 DATA 04014045 + 01032 23516360 576 TEXT 4,CRT + 01033 6 06 04010 577 NEM INS9 + 01034 04012005 578 DATA 04012005 + 01035 23672160 579 TEXT 4,CXA + 01036 6 06 00000 580 NEM 0 + 01037 04600200 581 DATA 04600200 + 01040 23672260 582 TEXT 4,CXB + 01041 6 06 00000 583 NEM 0 + 01042 04600040 584 DATA 04600040 + 01043 23716360 585 TEXT 4,CZT + 01044 6 06 04010 586 NEM INS9 + 01045 04012000 587 DATA 04012000 + 01046 24216321 588 TEXT 4,DATA + 01047 6 06 00002 589 NEM DIR2 +* 01050 0 00 00000 590 HLT DATA + 01051 24252360 591 TEXT 4,DEC + 01052 6 06 00002 592 NEM DIR2 + 01053 0 00 00072 593 HLT DEC + 01054 24252460 594 TEXT 4,DED + 01055 6 06 00002 595 NEM DIR2 +* 01056 0 00 00000 596 HLT DED + 01057 24315160 597 TEXT 4,DIR + 01060 6 06 00000 598 NEM 0 + 01061 0 02 20004 599 DIR + 01062 24316266 600 TEXT 4,DISW + 01063 6 06 00000 601 NEM 0 + 01064 0 02 00000 602 EOM 0 + 01065 24316270 603 TEXT 4,DISY + 01066 6 06 00000 604 NEM 0 + 01067 0 02 00100 605 EOM 0100 + 01070 24316560 606 TEXT 4,DIV + 01071 6 06 00000 607 NEM 0 + 01072 06500000 608 DATA 06500000 + 01073 24622360 609 TEXT 4,DSC + 01074 6 06 04010 610 NEM INS9 + 01075 0 02 00000 611 EOM 0 + 01076 25216760 612 TEXT 4,EAX + 01077 6 06 00000 613 NEM 0 + 01100 07700000 614 DATA 07700000 + 01101 25266360 615 TEXT 4,EFT + 01102 6 06 04010 616 NEM INS9 + 01103 0 02 03070 617 EOM 03070 + 01104 25315160 618 TEXT 4,EIR + 01105 6 06 00000 619 NEM 0 + 01106 0 02 20002 620 EIR + 01107 25452460 621 TEXT 4,END + 01110 6 06 00002 622 NEM DIR2 +* 01111 0 00 00000 623 HLT END + 01112 25462460 624 TEXT 4,EOD + 01113 6 06 00020 625 NEM INS1 + 01114 00600000 626 DATA 0600000 + 01115 25464460 627 TEXT 4,EOM + 01116 6 06 00020 628 NEM INS1 + 01117 00200000 629 DATA 0200000 + 01120 25465160 630 TEXT 4,EOR + 01121 6 06 00000 631 NEM 0 + 01122 01700000 632 DATA 01700000 + 01123 25506460 633 TEXT 4,EQU + 01124 6 06 00004 634 NEM DIR1 +* 01125 0 00 00061 635 HLT EQU + 01126 25516360 636 TEXT 4,ERT + 01127 6 06 04010 637 NEM INS9 + 01130 0 02 07070 638 EOM 07070 + 01131 25635160 639 TEXT 4,ETR + 01132 6 06 00000 640 NEM 0 + 01133 01400000 641 DATA 01400000 + 01134 25636360 642 TEXT 4,ETT + 01135 6 06 04010 643 NEM INS9 + 01136 04011010 644 DATA 04011010 + 01137 25636660 645 TEXT 4,ETW + 01140 6 06 00010 646 NEM INS2 + 01141 00203070 647 DATA 00203070 + 01142 25676460 648 TEXT 4,EXU + 01143 6 06 00000 649 NEM 0 + 01144 02300000 650 DATA 02300000 + 01145 26236360 651 TEXT 4,FCT + 01146 6 06 04010 652 NEM INS9 + 01147 04014005 653 DATA 04014005 + 01150 26465144 654 TEXT 4,FORM + 01151 6 06 00004 655 NEM DIR1 +* 01152 0 00 00000 656 HLT FORM + 657 * TEXT 4,FORT + 658 * NEM DIR2 + 659 * HLT NOPO + 01153 26476360 660 TEXT 4,FPT + 01154 6 06 04010 661 NEM INS9 + 01155 04014010 662 DATA 04014010 + 01156 30436360 663 TEXT 4,HLT + 01157 6 06 00000 664 NEM 0 + 01160 00000000 665 DATA 0 + 01161 31246360 666 TEXT 4,IDT + 01162 6 06 00000 667 NEM 0 + 01163 04020002 668 DATA 04020002 IDT + 01164 31256360 669 TEXT 4,IET + 01165 6 06 00000 670 NEM 0 + 01166 04020004 671 DATA 04020004 IET + 01167 672 $MTE RES 1 + 00000001 673 END 1 + 00055 LBL1P1 + 00052 LBL1P2 + 00030 LBL1 + 00133 LIN2 + 00152 LIN3 + 00116 LINE + 00112 LOC + 00026 LSYM + 00150 M1 + 00063 OCTF + 00065 OCTW + 00056 OPD1 + 00250 OPD + 00405 ORG + 00120 P14 + 00261 PAGE + 00132 PASS + 00004 PMOD + 00330 PZE + 00136 SCAN + 00123 SKB + 00126 SPAC + 00147 TERM + 00144 TERR + 00556 TEXT + 00131 TEXT1 + 00140 VALU + 00146 WORD + 00110 WRD2 + 00047 XFLG + 00677 AORG + 00107 B0 + 00710 BCD + 00127 BCIF + 00757 BSS + 00122 CHR + 00124 CTT + 01050 DATA + 00121 DC + 00125 DECW + 01056 DED + 00015 DLBL + 00072 DPW + 00111 EDIT + 01111 END + 01125 EQU + 01152 FORM + 00037 FRM4 + 00014 IERR + 00022 INR1 \ No newline at end of file diff --git a/symbol/section-7.si b/symbol/section-7.si new file mode 100644 index 0000000..f7929c0 --- /dev/null +++ b/symbol/section-7.si @@ -0,0 +1,672 @@ +* S5C +S9300 EQU 0 +X0 EQU S9300 +X2 EQU 2-S9300 +C176 DATA 017600000 +C7777 DATA 077770000 +M2 DATA -2 +C2040 DATA 02040 +$POPR MIN PMOD + LDA WORD + ETR C176 + MRG B1 + RSH 1 + STA WORD + MIN IERR + BRU INR1 + MIN IERR removed popi label this line +$POPI BRM DLBL + CLR + STA WORD + SKN PASS + BRU $+2 + BRU INR1 + MIN LOC + LDA B1 + STA LBL1P2 + LDX LSYM,X0 + LDA 0,X2 + STA LBL1 + LDA 1,X2 + ETR C7777 + STA LBL1P1 + BRU POPD1 +POPD SKN PASS + BRU $+2 + BRU FRM4 + LDA LOC + STA LBL1P2 + LDA LBL1P1 + ETR M2 + STA LBL1P1 + LDA Z + LDB M1 + SKM XFLG + LDA B0 + ADD LBL1P2 + STA LBL1P2 +POPD1 LDA C2040 + ADD LBL1P1 + STA LBL1P1 + BRU OPD1 +BOOL CLR + STA OCTF + BRU EQU +BORG CLR + STA OCTF + BRU ORG +OCT BRM OCTW + LDA VALU + LDB Z + BRM OCTDEC + BRU OCT +DEC BRM DPW + BRM OCTDEC + BRU DEC +OCTDEC HLT 0 + SKN PASS + BRU OD1 + STB WORD + SUB M1 + SKA M1 + BRU $+2 + SKN WORD + ADD M1 + STA WORD + LDA B0 + STA WRD2 + BRM EDIT +OD1 MIN LOC + LDA TERM + LDB M1 + SKM CCHR + BRU LINE + BRR OCTDEC +BCI LDA P14 + LDB DC + LDX CHR,X0 + BRM SKB + HLT CTT,X2 + BRM DECW + LDB SPAC + STB BCIF + LSH 2 + BRU TEXT1 +BPT SKN PASS + BRU LIN2 IGNORE IF 1ST PASS + LDA SKSB + STA WORD INSTRUCTION +BPT1 BRM SCAN GET BREAK-POINT + LDA B1 + LDX VALU,X0 + RSH 13,X2 POSITION BREAKPOINT BIT + ETR BPM MASK + SKG Z TEST RANGE + MIN TERR SET TRUNCATION ERROR + ADD WORD + STA WORD + LDA TERM + LDB M1 + SKM CCHR + BRU LIN3 LAST BREAKPOINT + BRU BPT1 GET NEXT BREAKPOINT +$EOD DATA 0600000 +$EOM DATA 0200000 +$SKSEOD DATA 04600000 +$EODI DATA 0640000 +SKSB DATA 04020000 +B1 DATA 020000000 +BPM DATA 0740 +CCHR DATA 073 +$DPWR NOP 0 FLPT ECXHANGE OPERATOR. XAB FOR 9300 +$INST DATA 044040000 +$INDB DATA 040000 +$AB DATA 016 +$NAB DATA 9 +$ADDR HLT 037777 +$FORCEO RES 0 +Z DATA +$XMSK DATA 07 +INS1 EQU 020 +INS2 EQU 010 +INS9 EQU 04010 +DIR1 EQU 4 +DIR2 EQU 2 +NEM OPD 060600000 +HAF FORM 12,12 +P FORM 9,15 +$MT RES 0 + TEXT 4,LCY + NEM 0 + DATA 006720000 + TEXT 4,LDA + NEM 0 + DATA 007600000 + TEXT 4,LDB + NEM 0 + DATA 007500000 + TEXT 4,LDE + NEM 0 + DATA 004600140 + TEXT 4,LDX + NEM 0 + DATA 007100000 +* TEXT 4,LIL +* NEM DIR2 +* HLT NOPO +* TEXT 4,LIST +* NEM DIR2 +* HLT NOPO + TEXT 4,LSH + NEM 0 + DATA 006700000 + TEXT 4,MIN + NEM 0 + DATA 006100000 + TEXT 4,MIW + NEM 0 + DATA 001200000 + TEXT 4,MIY + NEM 0 + DATA 001000000 + TEXT 4,MRG + NEM 0 + DATA 001600000 + TEXT 4,MUL + NEM 0 + DATA 006400000 + TEXT 4,NOD + NEM 0 + DATA 006710000 + TEXT 4,NOP + NEM 0 + DATA 002000000 + TEXT 4,OCT + NEM DIR2 + HLT OCT + TEXT 4,OPD + NEM DIR1 + HLT OPD + TEXT 4,ORG + NEM DIR1 + HLT ORG + TEXT 4,OVT + NEM 0 + DATA 04020001 + TEXT 4,PAGE + NEM DIR2 + HLT PAGE + TEXT 4,PBT + NEM INS9 + DATA 04012045 + TEXT 4,PCB + NEM INS9 + EOM 003045 + TEXT 4,PCD + NEM INS9 + EOM 002045 + TEXT 4,PIN + NEM 0 + DATA 003300000 + TEXT 4,POPD + NEM DIR1 + HLT POPD + TEXT 4,POT + NEM 0 + DATA 001300000 + TEXT 4,PPT + NEM INS9 + EOM 02043 + TEXT 4,PPTW + NEM INS2 + DATA 00202043 + TEXT 4,PPTY + NEM INS2 + DATA 00202143 + TEXT 4,PTL + NEM INS9 + EOM 043 + TEXT 4,PTLW + NEM INS2 + + DATA 00200043 + TEXT 4,PTLY + NEM INS2 + DATA 00200143 + TEXT 4,PZE + NEM DIR2 + HLT PZE + TEXT 4,RCB + NEM INS9 + EOM 03005 + TEXT 4,RCBW + NEM INS2 + DATA 00203005 + TEXT 4,RCBY + NEM INS2 + DATA 00203105 + TEXT 4,RCD + NEM INS9 + EOM 02005 + TEXT 4,RCDW + NEM INS2 + DATA 00202005 + TEXT 4,RCDY + NEM INS2 + DATA 00202105 + TEXT 4,RCH + NEM INS1 + DATA 004600000 + TEXT 4,RCY + NEM 0 + DATA 006620000 +* TEXT 4,REL +* NEM DIR2 +* HLT NOPO + TEXT 4,RES + NEM DIR2 + HLT BSS + TEXT 4,REW + NEM INS9 + EOM 014010 + TEXT 4,REWW + NEM INS2 + EOM 014010 + TEXT 4,RKB + NEM INS9 + EOM 02000 + TEXT 4,RKBW + NEM INS2 + DATA 00202000 + TEXT 4,RKBY + NEM INS2 + DATA 00202100 + TEXT 4,RORG + NEM DIR2 + HLT ORG + TEXT 4,ROV + NEM 0 + EOM 020001 + TEXT 4,RPT + NEM INS9 + EOM 02003 + TEXT 4,RPTW + NEM INS2 + DATA 00202003 + TEXT 4,RPTY + NEM INS2 + DATA 00202103 + TEXT 4,RSH + NEM 0 + DATA 006600000 + TEXT 4,RTB + NEM INS9 + EOM 03010 + TEXT 4,RTBW + NEM INS2 + DATA 00203010 + TEXT 4,RTBY + NEM INS2 + DATA 00203110 + TEXT 4,RTD + NEM INS9 + EOM 02010 + TEXT 4,RTDW + NEM INS2 + DATA 00202010 + TEXT 4,RTDY + NEM INS2 + DATA 00202110 + TEXT 4,RTS + NEM INS9 + EOM 014000 + TEXT 4,SFB + NEM INS9 + EOM 03030 + TEXT 4,SFB + NEM INS2 + DATA 00203030 + TEXT 4,SFD + NEM INS9 + EOM 02030 + TEXT 4,SKA + NEM 0 + DATA 007200000 + TEXT 4,SKB + NEM 0 + DATA 005200000 + TEXT 4,SKD + NEM 0 + DATA 007400000 + TEXT 4,SKE + NEM 0 + DATA 005000000 + TEXT 4,SKG + NEM 0 + DATA 007300000 + TEXT 4,SKM + NEM 0 + DATA 007000000 + TEXT 4,SKN + NEM 0 + DATA 005300000 + TEXT 4,SKR + NEM 0 + DATA 006000000 + TEXT 4,SKS + NEM INS1 + DATA 004000000 + TEXT 4,SRB + NEM INS9 + EOM 07030 + TEXT 4,SRBW + NEM INS2 + DATA 00207030 + TEXT 4,SRC + NEM INS9 + EOM 012005 + TEXT 4,SRD + NEM INS9 + EOM 06030 + TEXT 4,STA + NEM 0 + DATA 003500000 + TEXT 4,STB + NEM 0 + DATA 003600000 + TEXT 4,STE + NEM 0 + DATA 004600122 + TEXT 4,STX + NEM 0 + DATA 003700000 + TEXT 4,SUB + NEM 0 + DATA 005400000 + TEXT 4,SUC + NEM 0 + DATA 005600000 +* TEXT 4,TCD +* NEM DIR2 +* HLT NOPO + TEXT 4,TEXT + NEM DIR2 + HLT TEXT + TEXT 4,TOP + NEM INS9 + EOM 014000 + TEXT 4,TOPW + NEM 0 + EOM 014000 + TEXT 4,TOPY + NEM 0 + EOM 014100 + TEXT 4,TRT + NEM INS9 + DATA 04010410 + TEXT 4,TYP + NEM INS9 + EOM 02040 + TEXT 4,TYPW + NEM INS2 + DATA 00202040 + TEXT 4,TYPY + NEM INS2 + DATA 00202140 +* TEXT 4,UNLI +* HAF 'ST',DIR2 +* HLT NOPO + TEXT 4,WIM + NEM 0 + DATA 003200000 + TEXT 4,WTB + NEM INS9 + EOM 03050 + TEXT 4,WTBW + NEM INS2 + DATA 00203050 + TEXT 4,WTBY + NEM INS2 + DATA 00203150 + TEXT 4,WTD + NEM INS9 + EOM 02050 + TEXT 4,WTDW + NEM INS2 + DATA 00202050 + TEXT 4,WTDY + NEM INS2 + DATA 00202150 + TEXT 4,XAB + NEM 0 + DATA 004600014 + TEXT 4,XEE + NEM 0 + DATA 004600160 + TEXT 4,XMA + NEM 0 + DATA 006200000 + TEXT 4,XXA + NEM 0 + DATA 004600600 + TEXT 4,XXB + NEM 0 + DATA 004600060 + TEXT 4,YIM + NEM 0 + DATA 003000000 + TEXT 4,ABC + NEM 0 + DATA 04620005 + TEXT 4,ADC + NEM 0 + DATA 05700000 + TEXT 4,ADD + NEM 0 + DATA 05500000 + TEXT 4,ADM + NEM 0 + DATA 06300000 + TEXT 4,AIR + NEM 0 + EOM 020020 + TEXT 4,ALC + NEM INS9 + DATA 0250000 + TEXT 4,AORG + NEM DIR1 + HLT AORG + TEXT 4,ASC + NEM INS9 + EOM 012000 + TEXT 4,BAC + NEM 0 + DATA 04610012 + TEXT 4,BCD + NEM DIR2 + HLT BCD + TEXT 4,BCI + NEM DIR2 + HLT BCI + TEXT 4,BETW + NEM 0 + DATA 04020010 + TEXT 4,BETY + NEM 0 + DATA 04020020 +* TEXT 4,BLK +* NEM DIR2 +* HLT NOPO + TEXT 4,BOOL + NEM DIR1 + HLT BOOL + TEXT 4,BORG + NEM DIR1 + HLT BORG + TEXT 4,BPT + NEM DIR2 + HLT BPT + TEXT 4,BRM + NEM 0 + DATA 04300000 + TEXT 4,BRR + NEM 0 + DATA 05100000 + TEXT 4,BRTW + NEM 0 + DATA 04021000 + TEXT 4,BRTY + NEM 0 + DATA 04022000 + TEXT 4,BRU + NEM 0 + BRU 0 + TEXT 4,BRX + NEM 0 + DATA 04100000 + TEXT 4,BSS + NEM DIR2 + HLT BSS + TEXT 4,BTT + NEM INS9 + DATA 04012010 + TEXT 4,CAB + NEM 0 + DATA 04600004 + TEXT 4,CAT + NEM INS9 + DATA 04014000 + TEXT 4,CAX + NEM 0 + DATA 04600400 + TEXT 4,CBA + NEM 0 + DATA 04600010 + TEXT 4,CBX + NEM 0 + DATA 04600020 + TEXT 4,CET + NEM INS9 + DATA 04011000 + TEXT 4,CFT + NEM INS9 + DATA 04011005 + TEXT 4,CIT + NEM INS9 + DATA 04010400 + TEXT 4,CLA + NEM 0 + DATA 04600001 + TEXT 4,CLB + NEM 0 + DATA 04600002 + TEXT 4,CLR + NEM 0 + DATA 04630003 + TEXT 4,CNA + NEM 0 + DATA 04601000 +* TEXT 4,COPY +* NEM DIR2 +* HLT COPY + TEXT 4,CPT + NEM INS9 + DATA 04014045 + TEXT 4,CRT + NEM INS9 + DATA 04012005 + TEXT 4,CXA + NEM 0 + DATA 04600200 + TEXT 4,CXB + NEM 0 + DATA 04600040 + TEXT 4,CZT + NEM INS9 + DATA 04012000 + TEXT 4,DATA + NEM DIR2 + HLT DATA + TEXT 4,DEC + NEM DIR2 + HLT DEC + TEXT 4,DED + NEM DIR2 + HLT DED + TEXT 4,DIR + NEM 0 + DIR + TEXT 4,DISW + NEM 0 + EOM 0 + TEXT 4,DISY + NEM 0 + EOM 0100 + TEXT 4,DIV + NEM 0 + DATA 06500000 + TEXT 4,DSC + NEM INS9 + EOM 0 + TEXT 4,EAX + NEM 0 + DATA 07700000 + TEXT 4,EFT + NEM INS9 + EOM 03070 + TEXT 4,EIR + NEM 0 + EIR + TEXT 4,END + NEM DIR2 + HLT END + TEXT 4,EOD + NEM INS1 + DATA 0600000 + TEXT 4,EOM + NEM INS1 + DATA 0200000 + TEXT 4,EOR + NEM 0 + DATA 01700000 + TEXT 4,EQU + NEM DIR1 + HLT EQU + TEXT 4,ERT + NEM INS9 + EOM 07070 + TEXT 4,ETR + NEM 0 + DATA 01400000 + TEXT 4,ETT + NEM INS9 + DATA 04011010 + TEXT 4,ETW + NEM INS2 + DATA 00203070 + TEXT 4,EXU + NEM 0 + DATA 02300000 + TEXT 4,FCT + NEM INS9 + DATA 04014005 + TEXT 4,FORM + NEM DIR1 + HLT FORM +* TEXT 4,FORT +* NEM DIR2 +* HLT NOPO + TEXT 4,FPT + NEM INS9 + DATA 04014010 + TEXT 4,HLT + NEM 0 + DATA 0 + TEXT 4,IDT + NEM 0 + DATA 04020002 IDT + TEXT 4,IET + NEM 0 + DATA 04020004 IET +$MTE RES 1 + END 1 + diff --git a/symbol/sym b/symbol/sym new file mode 100644 index 0000000..6e5af10 --- /dev/null +++ b/symbol/sym @@ -0,0 +1,26 @@ +; command file to assemble an ascii file +; +; do sym hollerith-source binary-output listing-output +; +; no prompt, just type I/O options: ^'si''bo''lo''c/r' +; ^CCL for card input, card punch output, line printer listing +; type '/' to start option input over +; type c at first halt, (642) if options were '^CCLc/r' +; type q at next halt at (642) +; +set log /users/admin/sds/simlog +set debug /users/admin/sds/simdebug + +! cat symbol/symbol >bootdeck +! cat %1 >>bootdeck +! cat %1 >>bootdeck + +att cr bootdeck +att cp %2 +att lpt %3 + + +dep bpt1 1 +set cpu history=20000 + +boot cr diff --git a/symbol/sym_ascii b/symbol/sym_ascii new file mode 100644 index 0000000..eed3009 --- /dev/null +++ b/symbol/sym_ascii @@ -0,0 +1,25 @@ +; command file to assemble an ascii file +; +; do sym_ascii asci-source binary-output listing-output +; +; no prompt, just type I/O options: ^'si''bo''lo''c/r' +; ^CCL for card input, card punch output, line printer listing +; type '/' to start option input over +; type c at first halt, (642) if options were '^CCLc/r' +; type q at next halt at (642) +; +set log /users/admin/sds/simlog +set debug /users/admin/sds/simdebug + +! cat symbol/symbol >bootdeck +! tools/mkdeck -a %1 >>bootdeck +! tools/mkdeck -a %1 >>bootdeck + +att cr bootdeck +att cp %2 +att lpt %3 + +dep bpt1 1 +set cpu history=20000 + +boot cr \ No newline at end of file diff --git a/symbol/symbol b/symbol/symbol new file mode 100644 index 0000000..1232b5c --- /dev/null +++ b/symbol/symbol @@ -0,0 +1 @@ +C@CC@@@F@@C@g@@@@CEX@@@@@@#h@#8@Fp@LCh@@QF8@CC@C@@EX@@F@F@@@|@CT@@@[@8@p@CCh@@Fp@RE @F8@Cp@CC@@@C@@ @C@C@^F@@FvF@@X@hQpRE Ch C,  @XE TCh @@XI@@XO@@XRF@XO@^FCLpL@R@F8@CFp@RCh@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@vI@@XX@@X[@IC p Eh @pJChOChp Fp@EhE ChpL8 @X/CTO|OFOX,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@mL@@XpCL8L@@QF@@ICh Fp@L8 hI@I@IhL@CpO4Eh EXO@EC,FF8@X@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@mXd@@@XI@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@E&F@@Q@@@ @@@8@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]b@@@@X@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@TF@@ F@@@@@@@@@@@1@@@/=@Oz@@ @@@ @@@*@@@@@@@d@@@s@@@g@@@@@@#2ppR&pp#&pp@@ X@ppCh @Ch @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@>%@@ ^Ch Ch@dp LCh Fh&C Op O@ I@ #C Op O@ @ ,@ [@ @ /@ 7 &2@Ep FX C4 FF Fh&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@>@@ v@ g@@@h2pbsE b4Ch,C,,,@ z@@a@a paF@ChaFbhWpbbh@2aF4aFChIF@b*@ab)@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]@%@aWp]h[apbkF@bmpb2Ch@)Chb,X@mpkCh CCh p;Ch@hp@bCh F@hWp@@Wh@Fp@R &p@LbhCp O@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]E@a&hka)@ayW@ X@agp OW@ C@aspp@hh@@F Cp O av@ayW@ @a4F p>bEh@hCh@hp FE >b@@@Q@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@n@@a>Ch FXp@b@a^EX @bF@bLX@mEX CXp@*@a@bEp @@ Q@b@bT@ R@@kpbn@bpb/C,b,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]*h@bFb,p|Fp@hb1XphbpC4b,@@kF@@n@@@@^F@Q@@@n@^@@@E@O|@O@@[@@Cv@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ b@@bn@@@L@@@O@@@@1@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]s@@@@ X@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]^Q@@)@@CvX@mX@@*@@@@@@@@@@@@@@C@@@@v@Ip@Fp@O &E |Ch@aCh@bp;Ch=p@CT=|=@@[@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]zs@F@@aF=EX@a@@C@]@@E@@QCh@]Fp@L8@]hz@@a@IE@m@@@@@n@@@@p;Ch@hp@*@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@uFJ@)@>1@=yp@bk@gp@CgEh@) mCh@#Ch@)E@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@d@@m@C|@@@O=@@@@ @@@)@@@@C@C @C@C@Cb@C)@@@C@CXChC1@CgCpC1@Chp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@EX/2@EF2@ChCsFz@EXCs@ EhC2Fp@ C/EX@E@XC@C1E@@X/XC2@%XFz@E C2811@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@z@@@]@ 81EhC2Fz@CpC2 C/Fp@pC2EXCp@82E 2p@L82E 2p@L@@@@@ChCs|@@ChCp8CsE@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=O@@u@882E 2ChC2pCsEXCs@=XC@C8C1sE/@@@@p@L82E 2ChC4CpCu2@Ep2C4@C ppE CuEC@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;)@@C C8C1pC1E@@Ch@C1E@@Cp@@CQ82E 2E@@ChC24@@ChC1pC2C,@@pC1E@@ChC1E,@@@CCpC1h2@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@m^Q@@C%@CgF@@hC1E@@F@@@@@E@@E@@F@@E@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@1@@Cv@F@FF@F@FJ@FL@F@F@FT@FW@F@F[@F]p@E@@p@E@@p@E@@p@E@@p@E@@p@E@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ;z@@E@@E@@F@@E@@F@@E@@@Fd@@E@@F,@@E@@F@@E@@FT@@E@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]8 =vyppppppp @p@bs@Cp@ChWh@ChF@@bgEh@) mCh@#F@@bp>Ch@^4@^Cp@%EX@%@>LEh@)C,@#F@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]2>F@^F@@bF8@EX@b@>p@dX@#p@#Ch@dEp@%>>p/E >bCh//Eh[ mX@d@@@Cp@%h=yh@&h@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]y&>&p=zp@#h=;p>bEh@hCh@hp@bE >bCh@bXpE@hWp@gEh@)Ch@#Wp@@2@>z@>)Wh@/Ch@%Cp@&,@p@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]#v>>hkW@=y>p@&W@=z>Xp@#X=;@@ EX@#@Wh=;p@Lp=; mCh@g4@gQ8=; nQ8=;,@gp@LC4@g[]hh@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]ym@ @>) mCh@g4@g mm@p@#Wh=;p@Lp=; mE,@gC,@g@>)@@@hg/W8@X=y@/*XJbg@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%Q&n@@pkCh@%Ch@&4@& mCh@%C4@&p@%m@1@m@@@@@C@@@@@@C@@@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]8E@@ X@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Ik2ppppp @@%T2ppp @ %g4sppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]8R@@@@@@F@@@F@O@@@@E@@@ E@@@@@@@@@@@@E@ @O,Jh@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%bRpppp@E@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g2@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Ev&pppp @^v)s)ppp @@R&ppppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]]*@@@@@@p@d &@@&s@CCh@@@@@^&p@]Ch@[@%h@p@@@&Cp@[T@[F@[E @g@O@Q @F@EX@Tk7;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@mE@XE@@@@p@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ *@@@@h@@@@@@@@p@)Ch@@@@@@@E@^4@OX @@@@@@@@@@&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=vpppppp@]Tvppppp@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g@@*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@m|##&ppppp @@g)%spppp @@X&dpppp @d@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]h>@@@@@@p@@@QpX@Q@@@@mp@nh@@@I8@@C8@@p@/Ch@@E@@@@@@@@@@p@@@@p@Eh@bCh@#p@pJzTO@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]n8@XE @TCh@X@@pT@#@@Q @@@@E@Q@@ @@b@@@@p@@%@QLp@p@Q @@@@*E@d@O8pppp@@@;OX@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]J@@p@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@m#m#R4pppp@#R4pppp@ITspppp@Tvppppp@L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@g@@1@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ R#QTTpppp @@#R#gpp @]#R#gpp @^#R#pppp @#dspppp @m#%pppp #%Cpppp #%pppp a@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@  #%pppppp @#&ppppp @b#)sppppp @h#2sppppp @spppp @)#s)pppp @E#s)pppp @F#s)Cpppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ Igdpppppp OdCppppp Rd&Tpppp @%&g@pppp ^&pppppp @;&spppp @&))pppp @ &gTpppp FE@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ,&gTppppp E>&)Wppppp Fvgppppp LgQWpppp F/gQ22pppp @kg))pppp @gd&Tpppp @#g&g)spp CE@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ u@gyppppp C)dpppp @)#dpppp F)))pppp @Q2X)pppp @s2pppppp @y2bRppppp L2&sppppp @@*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ad2gQpppp  2s8gpppp @*s)dpppp @hs))pppp @Rs7spppp 1s7sppp ;sg#ppppp @4))pppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ;uQ#4pppp @Iu))pppp @Tvd&Tpppp @dv&)Tpppp @%v)Tpppp @gv)Tpppp @&7))pppp @J7#Wpppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 717ppppppp @ yppppppp @aQpppppp @4Q&)Wpppp F4R@pppppp @vRppppp @|Rpppppp @;RTppppp /@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ RnRX)pppp @pRpppp @[R22ppppp Cpppppp X)pppp @1pppppp @7%s)pppp @s8gpppp @)@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ pTQsQpppp JTpppppp @zTTppppp WT))pppp @LT#R#pppp C T4gdpppp ))pppp @ %Tppppp k@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ yh4ppppp E1&)dpppp F)dpppp Fmpppppp @%))pppp @#Wpppp @C%)pppp C,%)pppp Q@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%@@@W @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@];@a@@@@@@@@@@@@@@@@@@@J@@@@@b@@@&@@@*@@@z@@@@@@@@@@@@@@p@@@;@@@k@@@,@@@@@ @@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@y@@y@ @@@@@@@@@@@@@ @@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@X@@@@@@J@@@C>@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]WJQ;)QX@@@@@ @@@s@CCh@@nW8@CC8@Wp@@hWh@@C4@F@Wh@C4@F@Wh@C4@F@W8@C@vv@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]Tv)p@E@@/@L%p@ahbnp,E ChChQpIChChp@nE ChJpICh p@/E @n Ch@Fy@X>) ^@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]4J TE @%@#Eh@%2@E8@@ChLp@E LChEh@nCh p@aChkCh)p@)Ch@@p@*Ch@@p@kCh@@p@,Ch@@p@/|R%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]JE ,Chm@@@@p@aCh@@Ch@@p@;Chbp@aCh#ChdCh@Ch@CCh@Ch*Ch@OpOCh@pRCh@@pCh@@X@@E@@p)7)@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]yI1@X@@E@@p@7XEh@^X@@p@@E@@sF@@CF@CE@@sEXOX@@E@@pCh@@p@@h@gX@@@@@Ch%Cp@X2p@/O)@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]b#CIE@L%XC @C]@@@@p@E@@aE@@EC p@]hbCp@^XL@@@;pFCh@]p@mh@&X@@EC p@F@L%EXkm=@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]OpCa@@>@@@@ #@bhOCh@@Cp@X@@@R@@@8@@p@@ @@p%@F@RCpdhL&@@@@Cz7z@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]Cy@C|@@@@EX@CpLg@FEXk@XC,Cpd LhEX@Cp@@Ch%pOCh@phE@@1@X@@ @@E@@IF@RF8@/[ &@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]#Qp%Ch%p@@Ch&p@pE@hF@ ChhX@@Fb@aE@@s@EEXk@aX@@@ap@@=@&@7XLh@aE#k@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]&>)hC7 p@1@JQp@ap%hL&@@@@s8@@Ch%phE@@1@pLgEX@CFX%X& E@@IF@RFX%phE@@12h=y@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]%&E@XzE@@aE  F8@@QE@@2@E EXkF@X>h@yX@aF@OXL@@@@ETF@OX7Ch@p@p@Ch@]>;=;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]7&Ep@@@EXOF@Op8E@L)@EbXEh@ELE@@pF@Op@aE@@OCh@@2@@@@p@mh@&XCCEEhp@p@h@EEh/;u@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]/zE1XECh%p@L FX@]Cp@^p@mh@&XC[EXk@aX@@@apC*Ch@XE1Ch%Ch@^pFX@]p@mh@gXEy L*gz=@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]|WFIE@Lk@Ezp@]h@p@^h@@Ezs@CCp&XF@p@h&p@vz@@O@F XL@@@v@FaphE@@1@F @FQF@Rzd//@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]bFap@p@vCh@^pEhFX@]p@mh@gXFEXk@aX@@X @aEXk@aX@@XFm@as@C@F7p@;XF;Chbzun@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@])[FyXC @@@@@ChnX@@XFREhnChnEF;pbXF;EXkEXOX@@pnChb@aXF>EXk@RCh%Cpdp@vCh&1J#R@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]uQXFbphE@@1@a@JpCh,X@@X@@Cp%Ch@IEXk@bp@vCh&XQFbEXk@*p@ICh%p@vCh&g1@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]h)XaFbphE@@1@a@Wh @2h@pCp@[pE]E@L,@zpLChhpLm@X@@E hCphXLm@pLmgv7@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]hF@RCh@XELEX@EXO@ap@[F LnF8@WCh%L/psE@@p@p@[E@h@p@Ch@@^E @[h@aRX)FX%sz>@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]C8@XC@F@@Lp@vCh&EXkEXOX)Fb@F8@RF8@LF8@F@@@p@aChkEXk@n@I;X@@pOChk @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]2z1pbCh/Ch@@@@p@ah@TvCh@TCh@@pFCh*pCh)p@EhX,EXO@Ip@Wp@EXO@ uEg@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]RII h@C8%C8@X@@@@p@aCh@EpFCh)pJEhLEhCh@nW8@CC8@Wp@hL*@Lp@I&Wp@F2@%|E@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]IbIap@EFz@h@F@EXI @W8@Cp@E@@Ip@aCh)pChChWpIChCh[Ch]pOChpEL1h@@gF@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@];EIyI8@pCh@pLE@@pEXO@JXJCh%p@vCh&XE|F@@@JIXF2p/ChbCh@EE@@@@J=XF=pz|@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]COJQCh*pCh)@hWp@@EhCh@Eh@h@Ch@Fp@FX@E@Jnp@ECh%4@ECh@@F@E4@E IpL2Ch@@F@E4@Egu;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]^mJ)F@EChbXFXI%@J[pCh)F@@@J7p@ICh%p@ChdXJ,pECh)XJvXF1X@@@Wp@Ehp@Wp@/][T@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]4 E@@E@ Wp@@Ch%Wp@Chdp@vCh&C8@FXb@FF@Ep@EFb@J E /Ch@Eh@Eh@EhEhCh@Wp@@FT@p/ku@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]@b h@@F@Wp@FT@h@F@Wp@FT@h@@ p Ch@pQCh@Xp%ChgCh&p@aCh%h@vX@@@L F@XCh@WW1W@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]FT 1E@@@@ 8E@@@ 8XCpd@ |XJXL@@FF@Qh@a@Wp@@E@@a@Lp@a@8@@p%Ch%p@E @WCh@^/@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@][LIphE@@1@L @ mpgCh&p@vEX@XCh&@E@OF@RXL@@@vEXOF@R@L@@@@FLEhLdFLp@LTL@Lb7>;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@m8LaFLp@LEL@@@Oh8@@@@@@@@@;@@@@Q @@@^@@@7@O|@@ @O8@@pph@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ pR#sdppppW#&gppppp#28dppppCdQ7#ppppJOd#&pppp]dsppppp@/dspppppp@n%QRpppppCn@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ z=%2)sppppF)&4sgppppJyg&gppppCg&g)ppppC#g)%sppppJ)QTpppp/2Q#pppX2Q%pppp 8@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [|27pppp2%#pppp u2%7ppppQ2b2&Tppp2dpppppC@2)XppppEk28dpppppETv&ppppJ;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ WI7d2bpppp QRpppppp 1QTT)ppppC1Q#%ppppp^R4ppppI8X)pppppI=sspppppEQTvppppz@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 7sT#8ppppIvTgv)ppppTgvpppppTvpppppyTsppppnTpppppF,Tspppp JTs#ppppJk@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ =8TsuppppJE%T2pppn&Tpppp2&Tppppp)&dpppppCz)pppJa)pppJ&))pppp4@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@uW#Tpppp m#TpppppC&)&ppE>WspppppX&dppppJz%TRppppE%2spppp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@kQ@Ls@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ##sdpppp @#&gppppp @C#28dpppp @@dQ7#pppp nd#&pppp @%2)spppp I/&svpppp On2Q#ppp @*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ m2Q%pppp C 27pppp @E2%#pppp F2%dpppp 2%7pppp @2dppppp @]2)Xpppp IC28dppppp h@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ssppppp FTvpppp Tgvppppp L@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%]O@@@@@] @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%W@@FX)X)@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]u@@I%s@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]Fz@@L@@@@@@@@@@@@@@@8@@@@@8@@@@@@@@@@@@@@@@@E@@@/@@@I@@@E@@C@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]J%@@^2dp2dCp78b8#bp#bdp#bgp#b2p#bsp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]g@/@@%R%@@@ 2@@@d@@@ @@@@ @@@@@@@E@@@@@=@@I1@@pu@C4I@mWau%>@@8@@@@@8#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@];b8#8#8#8#8#8#8#8#8#@@@@@@@@E @@@@@@@@@X@[E #E #E #E #E #E #E #E #yC@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]|gE #@@@ @@@ @@@@@@@@C@@@@IE #E #E #E #E #E #E #E #E #@@@@EmF@Em@@@[@@@L@@@@@@ O>p@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]W7@&gE #E #E #E #E #E #E #E #@@@@@@@FQ@@@R@@@@@@@@@@p@@E@ @%X@@XC XEF@@@@yn@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]OCh@ EX@@Ep@ Cp@@h@LXIC@Wp@h@@h@@ @@Ch@@Cp@@Ep@@Ch@@FXJEp @XXgEFm4@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]7g@@@@XC p@@X@C p@FE@@C pEXEgCh)F@@p@@h@@XIC@C [ChCp]p@@h@@h@[WWs@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]Jph@Wp@ 4p@X@pyhzEgCh@XJEs@C@8pCEg@@@@s@CC,@CChC ChCECh@FWhFX@@@@@@I=s|@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]=CW@C@C%F@CF@pCQC,@CpCC,@pCp@XChC]CpC[CXFpChC#h@Q@C@C,@C@C4@C@@@;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]#C/pC& Qp@p@E@@@@CypuE@@@@C>@C;puE@CvF@@pCbEC Xa@C|h@Q@u @R vFp@Fp@,@Cu/y@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]IQ@R@4@LJ@@*@,@n@2@8@>@|@@p@@FX@CFX@pC/@Cg@@@@hCXC@F@bF@@/^@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]d=XJs@CELFh#Cp@@Ch@E@@/Xh@@X[@F@/s@CEh@uh@^F@]Fz@Fp@]Ch@]Cp@^n=77@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]7h)X@@@|F@d@1p@]p@^@@@Eh@X*@@@@@Ed7F^p@^X Q @2Cp@^E@F@@p@]//=@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]|XEOX Q@R@Eh@^@FE hEp@]h@^@E[Fz@Fp@@F@z@E 4Ch@^Cp@]p@@h@@XICF2p@L%F@@k|@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]>dEg Qp@LXE@@ 8EpCdE@@@@E8Xhp@h@@XE)@F@EyF@@@XEpp;h=hE* EkE/,;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]>gEp@FpC|@TFE@T@F F8@FpEmChFXE8hE@4@FXFIhpFEp@X@@F)pC C,@p/@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]ynFWC,@EF@EF@F@CF@XF XC pTFX@FX@CFX@FX@E4@ECh4@ChC pFOEFC;XFE@u@F*XF*s@C>@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]h]F/E@@@@hE2XEs@F@FzChCzFEXFmpWEFpp@E@En@ICh@FXF7E@8@Chu@h@/Cp@IE@y@W/>@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]8mhz@WhFCp@IXF2@@@Q@TC8FuXF>p@I @pF8EFpCh@FXOh@IE@@F@F8@FCp@I@OpFgChpR@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]1O4@CE|F@@@FFCp^8 p@L%Cpd@T8]@] *@]FX,phd@C@ E nCh24@C8F^ /s/@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]RE7@ F sF8@W,@C@]EhuEh8Fp@WFh=@zpX|p@X@@F#p@h@R@Wp@v8@@@FFF7/]@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]nWOX@4@@84@@>pEX@#p@p@h4@p@@X @@O@@zEh@v@zp@h4@8@@y/v@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]8@g@z@@@@hCh@]Cp@^h7X8@7h@^F@]X]@@@@Fz@Fp@]@*h@^p@]X1@@@@Fz@FpE@y//;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]>F2@LCh@]Cp@^Eh@@@@Ch@bCp@&p@Wp@@Ch@ Wp@p@Q @CCh@aWp@@Ch@%Wp@Wh@CCp@#Wh@@IFp@Wp@@X@ ]dT)@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]kTIW@Ibp@Eh@%p@pXy@@@@ITs@C@%@IkE@@ @ImWp@ @#E@@a@I,FICWh@Wp@EICX@aC8@%@IXk7/O@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]CI/@@@@XIC@JF@b4@bF@b,@b@@@I|p@L@@@I|EI/p@@Qp@h@FE&EI/XJEEI/F@@EJE@@@@pd)#u@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]8#JFX@@EXJ@JCC8@d@&pEp@dX@E@J|Ch@#EhdCh@%Wp@@E @dEh;p@@J4@%C,@#JX|p@%E dCh@d/[@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]R J4@bC,@%F@bJ@&pdX@Wp@WX@@JsX@E@J/Wp@@E dh@@@J1pdX@@dEJEhh@h@p@E8@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]%J7Wp@@X@EEhdh@@J,EhT @Ch@%EhdCh@#Wp@@h@h@E @dX@ p=p@4@%C,@#W;> Ip@#Eh@v |^7@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]* OCh@%@J[@@@@Ch @ @pEh RCh  4 @1Eh E Q@@@@pFChhCp@gE@a@ %h^Cp@g@ gE@p@ h7@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]7 gXE [@@@@Cp@@F @p *Cp ,F2@F >@R@Eh m@F E )@@@@Ch@Jp@@ @Fp@ Cp@ Eh@ Fp@W @vs*u]@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]T @R@Eh@JEh@@@F sE u@@@@pLh 7Cp 1F @mFLFCpLF @nFp@W @vX uChLJCpL pLFp@ F @mFp@W7v@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]s@LW @vX uChLCpLQELE@@@@p@*Ch@)hCpLCpLh bCp@,Cp@kX [h@gCp@hE@s@LzF@,@LuEh FLa2@E>>@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@] ]L/FL X )X uChL/CpLmEX@kF@kh@@Xm@Lh@L,p@hLvXI@F@L,pEX@kE @kCh@kpL,E@@ JX gn@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]|1 XFX@kp CE@C@ TX FXp@Ch@)pLbCh@,p I@ E@Q@@ #X LE@@@ ]X XFX@k@ CE@y@ #/=@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]a X XEh@)@ OpL2hLsFy@nCh #Cp dp@Fz@IFp@IXQpQEX@kEhFX@)EX@k@ms@CE @k@ ypQ,7@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]#v 7FX@)p@khCp@kX@@@E @Ch@kp@p@p@FX@)Wh@vpFy@nChLRp@Fz@IFp@Ip@FX@)p@Ohyz@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]&>OFhCh@m1@JFhOEh@vCh@nXLEp@kE@@ vp gEX@,@OF@R@@)EX@)@&F@)p@F@)@)p@@@)8@@7/@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]R%g@FLCChCp hXO@OXpQFX@)hp@kCp@kX@@7E @Ch@kp@p@FX@)Wh@vp@XFy@nCh@mp@=z@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]7OFX@)Cp@nXLEp@kX@@/XO@XFy@/Ch)p@pE@Eh@)Ch@)F8@OFp@OE@@)FhFz@Op@F2@Oz>X@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]hOWCp*p RCh ]X XahOWpOIEL@@@@EX@hEOp@L8 E O#p@LEhOdXL|@@O&E Oh8O)ChO]CpOEO@@@@v7>@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]k%O/X [X#@O4FFvEOnCh h@@XL7@O>Fp@CpO4@FOF8@C@O4ChOXOXapOy8EX@g8ChEOn[/@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]7k@@@@X [X@@ p@ChEhL;XOv@[p h@R@F8@EhQF8@EhOX@FO;@ pp@EX@gp@Jz@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]sICh[E@@@@pO>E@@@EXO*EaE@=EXdEaFO2pWChbXO@b@@@@p@XEyppCh@En@@@@h@@@O@u;8@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ugO@7@@@@@@1@@)@@O@O=@@@@@@J@@@,R@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ |1#QTTppppa#dsppppJ#&ppppp1#)spppppu#2spppppEa#27sppppCs#s)ppppO#s)pppp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ [#s)Cpppp#dppppppgd&Tppppv&ppppppOu&sppppEC&))ppppJCgQ22pppppg))ppppF)@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ pb)dpppp|)#dppppg)))ppppa2X)ppppF;2pppppp,2bRpppppOg2&sppppp@sX)ppppO@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ *Ws)dppppks))ppppsg#ppppp@LuQ#4ppppu))ppppE#v&)TppppRv)TppppOkv)TppppO,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ d|7))ppppsQTT)ppppE=RppppppE;RX)pppp&X)pppp#ppppppF1X)ppppp*%s)ppppE[@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ,>TppppppT))ppppIT#8pppp>T4gdppppI|))pppp)Wsppppp,pppppp#WppppEv@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@va@QC@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ]#R4pppp @R&4sgpppp k)QTpppp /sRpppp @&sX)pppp ERQ#%ppppp @Rpppp @nR4pppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 2X)ppppp @@vpppppp @@T#8pppp @nTvppppp @CTppppp @Tspppp @Tppppp EvTspppp E@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ J)T2ppppp QTs#pppp E1Tsupppp E%Tvppppp @)ppp @)ppp @))pppp @y#Tpppp Fp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@m)#Tppppp 8Wspppp E Wsppppp Evppppp @ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@uE[@E@@@R@@@@@8@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@][@npppp@@@,@@@&@@@T@@@@@@@@@#@@@g@@@)@@@s@@@4@Ovp@@@@p@@@@p@O@@@@O@@@@O@@@@@E F>h@@XFCF@@@@W@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]yFE@F8@RF8@LF8@F@ hCpCF@F@E@X@@@@Ch@Fp@OEhChCEQ@@@@p@EhFCh@ @nFp@Cp@#>n|@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]&@^Eh@ @Ch@W@@&Qp@=bh@nF2@LCh@XCp@EW@@@@@@p@C X@@p@E@@J@pCX@C;g/@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]v@p@JE@/Lp@ EhE@@@@LXaXC,Lp@@ paChp@@Ch@L@Cp|Ch@ pEh@p@@]|@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]W@ Eh8p@p@p@OCh@OEX@@@hpO2@@FX@s@CE@@@h2@FX@QF@CEk@@@@p@JXW@gE@Fs] /@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@])&@CFF@Cp@LCh@C@Cp@OE@#@/@4h@CW8@F@CpFX@Cp@E@,@8@=h@CW8@F@CpFX@Cp@Q;y/ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]m4>E@u@C@CFh@CW8@F@CpIFX@Cp@Jh>F8@FEhEh@CF8@OpJCh@XCp@Ch@X@@pCCh@CEa@@@@ym*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]Cp@Fp@O  E EChCkpFCh@ p@ L8L|@ F@ F@Ck@C hCRFz@LCp@hCdF2@L8@EC@@@@@@@@pIO/;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]npCnCh@LpCgCh@OCh@Ch@Q,C8@JEC,pC/h@F8@CE@F@C|EkpFCh@JpFCh@LXaEk@C4 h@CFCy=@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]7F4E Lp h@hCvpTF8@ChCk4F Ep@LF4Q X@@@@EppCkh@EpFFX@CEk@@@@;]7@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]m]^@@b@@@@Cv@@@@Cp@@ChR4dh@CF%4g Lp h@Fh4,@X@@@@X@@pOCh@pEQChECXWz7n@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]7gvXEE/@@@@pCh@IXEE@F>E8F@@I@;E8@@@@4@XEIFEC  Ch@@p@EEFp@RFp@LFp@F@E hEQ7>>#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]OmECpECF@@EEXEI@@@@Cp@IXEh@IXT@@@FEREER@@@@XEvXFFp@XQpmCh@@XFX@@XkEE@@@@=;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]/E&XEvp@XQpCh#pEFp@ XF&XEbEE%@@@@XEvXFFXE/EE1@@@@p@EXQpJF@@FX@@@yWp@y^=s@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]yuE>WhEzXE@@@@X@hEypE>E=EEv@@@@p@FXQpQChE*pCm @@Fp@LXF&EFF@@@@hRXFp@F%Fp@WFhF77s]@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]nJFXE@@F@F[E hFChFJp@pFhE 8@@XF&pF>X@hF]@FREF@@@@@F*pF#F8@CCpF^X@hF*F@F[[=/@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]CzFn@FhEF&@@@@p@@8RFy@XF8@ChF1C8FmpTE F7 XCFFpEFp@@@p@vv7OOOO@O=@@@@X@@@@@@sO|@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ FF@@@C@@@@@@@@@@E@@@@@@@@@pp@@@@@@@@@@@@ @@@@@@@@@W@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ %I#&pppppF dppppppF@d#&ppppC>gd&Tpppp[g)%sppppE42bRpppppF2s8gpppp 4))ppppE;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ bu))ppppFCvd&Tpppp v&)TppppEkv)TppppF,v)TppppFvv)s)pppCQypppppppFhQTT)ppppFL@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@mdu%s)ppppFysspppppEWs8gppppCs%g4spppp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 7@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ Ldsppppp I7dspppppp |%QRppppp 8g&gpppp @ g&g)pppp @2b2&Tpp n7d2bpppp ;QRpppppp 7@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ^&QTT)pppp yTgv)pppp 4&Tpppp /&Tppppp ,&dppppp m&)&pp z%TRpppp v%2spppp u@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]kO@@Op@@@@>@@ F@@p@@ @@p1Fp@Ch@EF@@@@@F@JX@@s@CCh@IEX@@@@@@ F@@p1Ch@@@@Wp@@@4%h@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]T>@XCh@@Wp@ @Ch@@@@kEX@@@ @@@p@Ch@p@[ @Ch@bpzh@@@@@p@@Eh@aCh@)p@CEh@dCh@,@@@s@C /1|@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]1@pCh@@@@@s@CCh@p@@@X@@p@@hzX@=@@uX@@X@=@@z@@@@EX@]@JCp@OE @&@EEX@EhChp@h]/@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]a7Ch@@X@@F@ p@@hE@s@@@E@=p@@h@@@@X@@@@@X@@h@@Cp@@F8@@@@EX@>@@@ppChFX@@p1 @m@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]su @vp@  2XzF@@Eh]Ch%p hL@s@@@@^@p@@@@@p@@@4@@@@@@@@@ @@@;@@@d@@@@@@@@m=@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@pR@8@@@I@C@@@@@@@#8ppp@@Fz@@#TQppp@@p@@#TRppp@@h@@#Tppp@@p #T7ppp@@@@#2Xppp@@F8@@d%ppp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]WF@@dvppp@@@@d8ppp@@@@@d)Wppp@@p@@d4#ppp@@F @@%&Tppp@@Fy@@%&gppp@@@@@&sppp@@@@u&gTppp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]bh@@@@&)Wppp@@@@4&usppp@@@gQWpp@@@@@gRsppp %gRppp @X%gTppp @%g%ppp@@CX@@g&gTpp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]z&C@@@@]g&sppp@@X@@ggsppp @#ggsvpp@@#ggs8pp@@Q#gs#ppp @@#gs#vpp@@@#gs#8pp@@#gyppp@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@CX@@@@)Rppp @XE)Rvpp@@XE)R8pp@@E)Tppp @E)Tvpp@@E)T8pp@@QE)Xppp@p@@)8ppp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]TCpF2@@)2ppp@@@@@)vppp @Q )vvpp@@Q )bRppp @@)bRvpp@@@)bR8pp@@Q@)&)Wpp@@@k)&uppp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;@@R@)gsppp @C)gsvpp@@C)gs8pp@@QC)2Xppp@@Fp@@)sRppp @X)sRvpp@@X)sR8pp@@)sTppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@8@ @)sTvpp@@)sT8pp@@Q)s2ppp @Q @2Rppp @XX2Rppp@@XX2Tppp @X2bQppp@@@@2bRppp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Fy@8E@@2bTppp@@ @@2bppp@@E@@@2bWppp@@X@@2bdppp@@@@@2b%ppp@@EX@@2b)ppp@@F@@@2b2ppp@@@@2)Rppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@y@E@8X2)Rvpp@@8X2)ppp @QE2)Tppp @pX2sQppp@@Ch@@2sRppp@@Cp@@2sppp@@pR2s7ppp@@C8@@24Rppp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@EhE @@24ppp@@Ep@@s7spp@@@@@s&gppp @Q @s&gvpp@@@Q @s&g8pp@@@Qa@s)sppp s8gppp @ s8gvpp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ak@F@@ s8g8pp@@Q vdppp@@C@@vsRppp @XhvsRvpp@@XhvsR8pp@@hvsTppp @hvsTvpp@@hvsT8pp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@FX@Qh7QRppp@@p@L7ppp@@pp7dQppp@@F@@77Qppp@@pF@77Rppp@@p@p8dppp@@C@@@QRppp@@2@EQTppp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*@FpE8@@QTTppp@@Eh@@QTdppp@@FX@@Q)ppp@@@R@Q#ppp @@@Q&)Wpp@@@@@Q2ppp @Q@RQppp@@1@JRTppp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]u[@@@@Rppp@@@Rsvpp@@@Rs8pp@@@R&&#pp@@@@/R&)Wpp@@@@2Rgsppp@@@R)dppp@@X@@R))ppp@@@d @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]T E@@R)svpp@@@R)s8pp@@@R)4ppp@@@@@R)7ppp@@@@R22ppp@@@CsRssppp QRppp@@p@Qsppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@E@8 @Q7ppp@@p@RQppp@@p@R7ppp@@p@sppp @sppp Esppp @#Qppp@@p@#Rppp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@J@p@#)ppp@@s@C%Qppp@@p@gsppp  %)sppp E7Qppp@@p@7Rppp@@p@ ysppp @TQsQpp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]ksh@@@@Tppp@@@@zTTppp@@@@@T)ppp@@@R@T2vpp@@@@@T28pp@@@@Tuppp@@Fh@@T2ppp @@@Q7ppp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]yLI@8@@sppp @X8)ppp@@@R@%Tppp@@@@@&Tppp@@p@@&dppp@@@@&)ppp@@8@@h4ppp@@@@1)sppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@v#@IX@88s)ppp@@ @@ssppp svppp@@X874ppp@@X@@sppp  E&)dpp@@@@@gsppp  X#sppp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 7 @Ip@@@@Tsppp@@@sppp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ #R#gpp@m#R#gpp@*#R#pppp@X#%pppp[#%Cpppp*#%pppp#&pppppJ#28dpppp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ F2dpppppph&spppp@s&svpppp@u&gTpppp@n&gTppppph&)WpppppEgpppppgQWpppp1@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 1kgQ22ppppgd&Tpppp@gypppppCX2Q%pppp^2bRppppp2gQpppps)dppppgs))ppppd@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ bhs7sppppEns7spppuQ#4pppp v&)Tpppp&v)Tpppp7#Wpppp@gQ&)WppppFR@pppppp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ gRTpppppRppppWR22ppppp/X)pppppRsspppppTTQsQpppphTppppppQTvpppp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 1|TTpppppnT#R#pppp@ Tgvppppp@zTsppppI%TpppppIIh4pppppI&)dppppI*)dpppp@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=7))pppp@L%)pppp@R@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]n[@I8@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/symbol/symbol.nm b/symbol/symbol.nm new file mode 100644 index 0000000..49deed5 --- /dev/null +++ b/symbol/symbol.nm @@ -0,0 +1,384 @@ + + + EXTERNAL DEFS + +File: csi.bo Load Address: 00233 +Relocatable: + CSI 00000 00233 + INPUT 00000 00233 + ENDSI 00015 00250 + + Unsatisfied Refs: + CBFE  csi.bo + +File: cbo.bo Load Address: 00253 +Relocatable: + WRITR 00000 00253 + CBO 00000 00253 + WEOF 00036 00311 + + Unsatisfied Refs: + CW  cbo.bo + DWC  cbo.bo + +File: llo.bo Load Address: 00325 +Relocatable: + LLO 00000 00325 + PRNT 00000 00325 + HOME 00044 00371 + + Unsatisfied Refs: + LBUF  llo.bo + CBUF  llo.bo + EDCT  llo.bo + EDW  llo.bo + +File: section-4.bo Load Address: 00406 +Relocatable: + LADD 00000 00406 + OCTF 00001 00407 + XFLG 00002 00410 + IFLG 00003 00411 + LTR1 00005 00413 + LTR2 00006 00414 + LTR3 00007 00415 + MODE 00010 00416 + VALU 00011 00417 + XERR 00012 00420 + OERR 00013 00421 + DERR 00014 00422 + EERR 00015 00423 + IERR 00016 00424 + PERR 00020 00426 + RERR 00021 00427 + TERR 00022 00430 + UERR 00023 00431 + VERR 00024 00432 + CNTR 00025 00433 + LN 00032 00440 + BCIF 00033 00441 + LBL1 00034 00442 + LBL1P1 00035 00443 + LBL1P2 00036 00444 + X 00040 00446 + Z 00041 00447 + IC 00045 00453 + LST 00046 00454 + LRT 00050 00456 + LSXT 00051 00457 + BCHR 00060 00466 + CCHR 00061 00467 + SCHR 00063 00471 + A7 00064 00472 + B0 00066 00474 + CC 00067 00475 + SC 00071 00477 + DC 00072 00500 + B8 00073 00501 + OC 00073 00501 + B11 00074 00502 + REFM 00100 00506 + DUPM 00101 00507 + RELM 00106 00514 + C3 00110 00516 + P14 00114 00522 + SPAC 00115 00523 + M1 00117 00525 + M23 00122 00530 + LINE 00241 00647 + POPIRT 00305 00713 + DLBL 00315 00723 + INR1 00354 00762 + PZE 00377 01005 + INR2 00421 01027 + LIN3 00423 01031 + LIN2 00432 01040 + NOP0 00436 01044 + EQU 00561 01167 + OPD 00576 01204 + OPD1 00605 01213 + FORM 00620 01226 + FRM4 00655 01263 + PAGE 00657 01265 + AORG 00664 01272 + ORG 00666 01274 + BSS 00702 01310 + DATA 00712 01320 + DED 00727 01335 + BCD 00757 01365 + TEXT 00761 01367 + TEXT1 00773 01401 + END 01053 01461 + SKB 01432 02040 + + Absolute: + SOT 00052 + TPL 00134 + LOC 00142 + PMOD 00143 + WMOD 00144 + WORD 00145 + WRD2 00146 + WRD1 00147 + TERM 00150 + CTYP 00151 + STYP 00152 + PASS 00153 + LIMT 00155 + + + Unsatisfied Refs: + LITM  section-4.bo + LOP  section-4.bo + LSYM  section-4.bo + MAXL  section-4.bo + MLOC  section-4.bo + MTE  section-4.bo + MT  section-4.bo + NAB  section-4.bo + NSRT  section-4.bo + OUTP  section-4.bo + POPI  section-4.bo + POPR  section-4.bo + PRNT  section-4.bo + READ  section-4.bo + SCALE  section-4.bo + SCAN  section-4.bo + SCIX  section-4.bo + SCNL  section-4.bo + SCNX  section-4.bo + SKSEOD  section-4.bo + SM1  section-4.bo + SRCH  section-4.bo + SYM  section-4.bo + WEOF  section-4.bo + XMSK  section-4.bo + AB  section-4.bo + ADDR  section-4.bo + ALN  section-4.bo + CBUF  section-4.bo + CHR  section-4.bo + CTT  section-4.bo + DECW  section-4.bo + DLY1  section-4.bo + DPWR  section-4.bo + DPW  section-4.bo + DWC  section-4.bo + EDCT  section-4.bo + EDE  section-4.bo + EDIT  section-4.bo + EDTL  section-4.bo + EDTV  section-4.bo + ENDSI  section-4.bo + EODI  section-4.bo + EOD  section-4.bo + EOM  section-4.bo + EREF1  section-4.bo + EREF2  section-4.bo + ERRC  section-4.bo + FLDC  section-4.bo + FLD  section-4.bo + FORCEO  section-4.bo + GET  section-4.bo + HOME  section-4.bo + INDB  section-4.bo + INST  section-4.bo + +File: section-5.bo Load Address: 02071 +Relocatable: + LSYM 00000 02071 + MLOC 00001 02072 + SCNX 00002 02073 + LOP 00003 02074 + LITM 00004 02075 + SCIX 00005 02076 + SM1 00035 02126 + SCALE 00052 02143 + CTT 00106 02177 + SCNL 00206 02277 + SCNM 00216 02307 + SCAN 00315 02406 + SYM 01050 03141 + SRCH 01103 03174 + NSRT 01157 03250 + DPW 01434 03525 + OCTW 01756 04047 + DECW 02007 04100 + MAXL 02056 04147 + + Unsatisfied Refs: + LADD  section-5.bo + LIMT  section-5.bo + LOC  section-5.bo + LRT  section-5.bo + LST  section-5.bo + LSXT  section-5.bo + LTR1  section-5.bo + LTR2  section-5.bo + LTR3  section-5.bo + M1  section-5.bo + MODE  section-5.bo + OC  section-5.bo + OCTF  section-5.bo + OERR  section-5.bo + PASS  section-5.bo + PERR  section-5.bo + REFM  section-5.bo + RELM  section-5.bo + RERR  section-5.bo + SCHR  section-5.bo + SC  section-5.bo + SKB  section-5.bo + SOT  section-5.bo + TCHR  section-5.bo + TERM  section-5.bo + TERR  section-5.bo + TPL  section-5.bo + VALU  section-5.bo + VERR  section-5.bo + WORD  section-5.bo + WRD1  section-5.bo + WRD2  section-5.bo + XERR  section-5.bo + ADDR  section-5.bo + B8  section-5.bo + BCHR  section-5.bo + CCHR  section-5.bo + CC  section-5.bo + CHR  section-5.bo + CNTR  section-5.bo + DC  section-5.bo + DERR  section-5.bo + DLY1  section-5.bo + DUPM  section-5.bo + EERR  section-5.bo + GET  section-5.bo + IC  section-5.bo + IFLG  section-5.bo + +File: section-6.bo Load Address: 04174 +Relocatable: + CHR 00000 04174 + EDCT 00001 04175 + ALN 00002 04176 + DWC 00003 04177 + EDW 00010 04204 + ICW 00015 04211 + LBUF 00022 04216 + EREF1 00025 04221 + EREF2 00026 04222 + CBUF 00032 04226 + TBFE 00046 04242 + CBFE 00056 04252 + DLY1 00056 04252 + ERRC 00071 04265 + EDC 00100 04274 + EDS 00121 04315 + OUTP 00153 04347 + READ 00457 04653 + FLD 00470 04664 + GET 00501 04675 + GET2 00515 04711 + TCHR 00522 04716 + EDIT 00532 04726 + EDTV 00545 04741 + EDTL 00561 04755 + EDE 00566 04762 + FLDC 00660 05054 + + Absolute: + CW 00002 + + + Unsatisfied Refs: + LOC  section-6.bo + M1  section-6.bo + MLOC  section-6.bo + PMOD  section-6.bo + PRNT  section-6.bo + SKB  section-6.bo + STYP  section-6.bo + UERR  section-6.bo + VERR  section-6.bo + WMOD  section-6.bo + WORD  section-6.bo + WRD1  section-6.bo + WRD2  section-6.bo + WRITR  section-6.bo + Z  section-6.bo + ADDR  section-6.bo + CNTR  section-6.bo + CTT  section-6.bo + CTYP  section-6.bo + INPUT  section-6.bo + +File: section-7.bo Load Address: 05121 +Relocatable: + POPR 00004 05125 + POPI 00015 05136 + EOD 00154 05275 + EOM 00155 05276 + SKSEOD 00156 05277 + EODI 00157 05300 + DPWR 00164 05305 + INST 00165 05306 + INDB 00166 05307 + AB 00167 05310 + NAB 00170 05311 + ADDR 00171 05312 + FORCEO 00172 05313 + XMSK 00173 05314 + MT 00174 05315 + MTE 01167 06310 + + Unsatisfied Refs: + LBL1P1  section-7.bo + LBL1P2  section-7.bo + LBL1  section-7.bo + LIN2  section-7.bo + LIN3  section-7.bo + LINE  section-7.bo + LOC  section-7.bo + LSYM  section-7.bo + M1  section-7.bo + OCTF  section-7.bo + OCTW  section-7.bo + OPD1  section-7.bo + OPD  section-7.bo + ORG  section-7.bo + P14  section-7.bo + PAGE  section-7.bo + PASS  section-7.bo + PMOD  section-7.bo + PZE  section-7.bo + SCAN  section-7.bo + SKB  section-7.bo + SPAC  section-7.bo + TERM  section-7.bo + TERR  section-7.bo + TEXT  section-7.bo + TEXT1  section-7.bo + VALU  section-7.bo + WORD  section-7.bo + WRD2  section-7.bo + XFLG  section-7.bo + AORG  section-7.bo + B0  section-7.bo + BCD  section-7.bo + BCIF  section-7.bo + BSS  section-7.bo + CHR  section-7.bo + CTT  section-7.bo + DATA  section-7.bo + DC  section-7.bo + DECW  section-7.bo + DED  section-7.bo + DLBL  section-7.bo + DPW  section-7.bo + EDIT  section-7.bo + END  section-7.bo + EQU  section-7.bo + FORM  section-7.bo + FRM4  section-7.bo + IERR  section-7.bo + INR1  section-7.bo diff --git a/symbol/tlo.bo b/symbol/tlo.bo new file mode 100644 index 0000000..397996a --- /dev/null +++ b/symbol/tlo.bo @@ -0,0 +1 @@ +|g)%spppp @@s#&ppppp @@X&dpppp @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@] /@@@@@@p^hF@@@@CEX@W@@@@@I@@CXpE @ECh@ X p Ch[pX@hp@LCh[EX@R@@]Fpa[@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@])#@XX@pbX@p]X@h#p^h@@@8@FC8@@pdCh@TpaX@E@@@@@@Ch@b4@)h%E &%EhgEhhm=@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]]@pF2@F)@@,Cp@a@Q @@@@7F@*F@dF[EX[E@h@@*@@@@Ch@a@Q @@@E@@@@@]Oz&@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@]7hFpX*EXE@@@@pEhkChpaX@s@CChE@@@@@@@@@@@@@@@a@@@@ppppv@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@u/a@ ,*@@@z@@@@O8@@@@@@@@@p@@@&@@@J@@@@2>>@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Ek#R4ppppsRpppp]R4pppp@Tspppp@zTvppppp@y@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@&@,@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ \ No newline at end of file diff --git a/symbol/tlo.lo b/symbol/tlo.lo new file mode 100644 index 0000000..9157369 --- /dev/null +++ b/symbol/tlo.lo @@ -0,0 +1,131 @@ + + 1 + 2 * 6XXT + 00000 3 $TLO RES 0 + 00000000 4 S9300 EQU 0 + 00000000 5 X0 EQU S9300 + 00000002 6 X2 EQU 2-S9300 + 00000000 7 CH EQU 0 + 00000001 8 U EQU 1 + 06000000 9 MMO OPD 06000000 + 00000 0 00 00000 10 $PRNT PZE 0 + 00001 0 76 00136 11 LDA =060606060 + 00002 0 75 00137 12 LDB =-1 +* 00003 0 60 00000 13 TYP MMO EDCT +* 00004 0 71 00003 14 LDX EDCT,X0 +* 00005 0 53 00004 15 SKN EDCT +* 00006 2 70 00000 16 SKM LBUF,X2 + 00007 0 01 00011 17 BRU TYPL1 + 00010 0 01 00003 18 BRU TYP + 00011 0 43 00107 19 TYPL1 BRM LNCT INCREMENT AND TEST LINE COUNT + 00012 0 76 00137 20 LDA =-1 +* 00013 0 54 00005 21 SUB EDCT +* 00014 0 35 00013 22 STA EDCT + 00015 0 73 00140 23 SKG =-20 + 00016 0 76 00140 24 LDA =-20 + 00017 0 35 00133 25 STA TTMP + 00020 0 76 00134 26 LDA LLBUF + 00021 0 43 00050 27 BRM TYPE +* 00022 0 76 00014 28 LDA EDCT + 00023 0 35 00133 29 STA TTMP +* 00024 0 53 00022 30 SKN EDCT + 00025 0 01 00035 31 BRU PRN2 + 32 * TYPE LAST N-75 CHARACTERS ON NEXT LINE + 00026 0 61 00131 33 TYP2 MIN CTR INCREMENT LINE COUNTER + 00027 0 76 00141 34 LDA =052000000 + 00030 0 43 00077 35 BRM TYCC TYPE CARRIAGE RETURN + 00031 0 76 00142 36 LDA =072000000 + 00032 0 43 00077 37 BRM TYCC TYPE TAB + 00033 0 76 00135 38 LDA LTBFE + 00034 0 43 00050 39 BRM TYPE TYPE LAST N-75 CHARS OF LINE + 00035 0 71 00143 40 PRN2 LDX =00200000-8,X0 + 00036 0 76 00136 41 LDA =' ' +* 00037 2 35 00000 42 STA CBUF,X2 + 00040 0 41 00037 43 BRX $-1,X0 +* 00041 0 77 00006 44 EAX LBUF,X0 +* 00042 0 37 00000 45 STX EDW,X0 + 00043 0 76 00144 46 LDA =8 +* 00044 0 35 00024 47 STA EDCT + 00045 0 76 00141 48 LDA =052000000 + 00046 0 43 00077 49 BRM TYCC + 00047 0 51 00000 50 BRR PRNT + 51 * + 52 * TYPE N CHARACTERS + 00050 0 00 00000 53 TYPE PZE ENTRY +* 00051 0 35 00042 54 STA EDW ADDRESS OF 1ST CHAR TO TYPE +* 00052 0 76 40051 55 TMIW LDA *EDW + 00053 0 75 00145 56 LDB =077 + 00054 0 54 00146 57 TMIW1 SUB =060 + 00055 0 72 00145 58 SKA =077 + 00056 0 55 00147 59 ADD =046 + 00057 0 55 00150 60 ADD =012 + 00060 0 66 20006 61 RCY 6 + 00061 0 72 00151 62 SKA =077777700 + 00062 0 01 00054 63 BRU TMIW1 + 00063 0 36 00132 64 STB TMP STORE DATUM + 00064 0 02 02641 65 TYP CH,U,4 + 00065 0 12 00132 66 MIW TMP + 00066 0 02 14000 67 TOP CH + 00067 0 40 21000 68 TBRT BRTW + 00070 0 01 00067 69 BRU TBRT +* 00071 0 61 00052 70 MIN EDW +* 00072 0 61 00044 71 MIN EDCT + 00073 0 61 00133 72 MIN TTMP + 00074 0 53 00133 73 SKN TTMP + 00075 0 51 00050 74 BRR TYPE + 00076 0 01 00052 75 BRU TMIW + 76 * TYPE CONTROL CHARACTER + 00077 0 00 00000 77 TYCC PZE ENTRY + 00100 0 35 00132 78 STA TMP + 00101 0 02 02041 79 TYC1 TYP CH,U,1 + 00102 0 12 00132 80 MIW TMP + 00103 0 02 14000 81 TOP CH + 00104 0 40 21000 82 TYSS BRTW + 00105 0 01 00104 83 BRU TYSS + 00106 0 51 00077 84 BRR TYCC EXIT + 85 * + 86 * LINE COUNT AND PAGE EJECT SUBROUTINE + 00107 0 00 00000 87 LNCT PZE + 00110 0 61 00131 88 MIN CTR + 00111 0 76 00131 89 LDA CTR + 00112 0 73 00152 90 SKG =50 + 00113 0 51 00107 91 BRR LNCT + 00114 0 43 00116 92 BRM THOME HOME PAGE + 00115 0 51 00107 93 BRR LNCT EXIT + 00116 94 $HOME RES 0 + 00116 0 00 00000 95 THOME PZE 0 + 00117 0 76 00131 96 LDA CTR L1NES TYPED + 00120 0 55 00153 97 ADD =002000000-66 + 00121 0 35 00131 98 STA CTR + 00122 0 71 00131 99 LDX CTR,X0 + 00123 0 76 00141 100 NPG LDA =052000000 + 00124 0 43 00077 101 BRM TYCC + 00125 0 41 00123 102 BRX NPG,X0 + 00126 0 46 30003 103 CLR + 00127 0 35 00131 104 STA CTR + 00130 0 51 00116 105 BRR THOME + 00131 00000000 106 CTR DATA 0 + 00132 0 00 00000 107 TMP PZE + 00133 0 00 00000 108 TTMP PZE +* 00134 0 00 00041 109 LLBUF PZE LBUF +* 00135 0 00 00000 110 LTBFE PZE TBFE + 111 END + 00136 60606060 + 00137 77777777 + 00140 77777754 + 00141 52000000 + 00142 72000000 + 00143 00177770 + 00144 00000010 + 00145 00000077 + 00146 00000060 + 00147 00000046 + 00150 00000012 + 00151 77777700 + 00152 00000062 + 00153 01777676 + 00134 LBUF + 00135 TBFE + 00037 CBUF + 00072 EDCT + 00071 EDW \ No newline at end of file diff --git a/symbol/tlo.si b/symbol/tlo.si new file mode 100644 index 0000000..f5fb765 --- /dev/null +++ b/symbol/tlo.si @@ -0,0 +1,110 @@ +* 6XXT +$TLO RES 0 +S9300 EQU 0 +X0 EQU S9300 +X2 EQU 2-S9300 +CH EQU 0 +U EQU 1 +MMO OPD 06000000 +$PRNT PZE 0 + LDA =060606060 + LDB =-1 +TYP MMO EDCT + LDX EDCT,X0 + SKN EDCT + SKM LBUF,X2 + BRU TYPL1 + BRU TYP +TYPL1 BRM LNCT INCREMENT AND TEST LINE COUNT + LDA =-1 + SUB EDCT + STA EDCT + SKG =-20 + LDA =-20 + STA TTMP + LDA LLBUF + BRM TYPE + LDA EDCT + STA TTMP + SKN EDCT + BRU PRN2 +* TYPE LAST N-75 CHARACTERS ON NEXT LINE +TYP2 MIN CTR INCREMENT LINE COUNTER + LDA =052000000 + BRM TYCC TYPE CARRIAGE RETURN + LDA =072000000 + BRM TYCC TYPE TAB + LDA LTBFE + BRM TYPE TYPE LAST N-75 CHARS OF LINE +PRN2 LDX =00200000-8,X0 + LDA =' ' + STA CBUF,X2 + BRX $-1,X0 + EAX LBUF,X0 + STX EDW,X0 + LDA =8 + STA EDCT + LDA =052000000 + BRM TYCC + BRR PRNT +* +* TYPE N CHARACTERS +TYPE PZE ENTRY + STA EDW ADDRESS OF 1ST CHAR TO TYPE +TMIW LDA *EDW + LDB =077 +TMIW1 SUB =060 + SKA =077 + ADD =046 + ADD =012 + RCY 6 + SKA =077777700 + BRU TMIW1 + STB TMP STORE DATUM + TYP CH,U,4 + MIW TMP + TOP CH +TBRT BRTW + BRU TBRT + MIN EDW + MIN EDCT + MIN TTMP + SKN TTMP + BRR TYPE + BRU TMIW +* TYPE CONTROL CHARACTER +TYCC PZE ENTRY + STA TMP +TYC1 TYP CH,U,1 + MIW TMP + TOP CH +TYSS BRTW + BRU TYSS + BRR TYCC EXIT +* +* LINE COUNT AND PAGE EJECT SUBROUTINE +LNCT PZE + MIN CTR + LDA CTR + SKG =50 + BRR LNCT + BRM THOME HOME PAGE + BRR LNCT EXIT +$HOME RES 0 +THOME PZE 0 + LDA CTR L1NES TYPED + ADD =002000000-66 + STA CTR + LDX CTR,X0 +NPG LDA =052000000 + BRM TYCC + BRX NPG,X0 + CLR + STA CTR + BRR THOME +CTR DATA 0 +TMP PZE +TTMP PZE +LLBUF PZE LBUF +LTBFE PZE TBFE + END diff --git a/tests/.DS_Store b/tests/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..5008ddfcf53c02e82d7eee2e57c38e5672ef89f6 GIT binary patch literal 6148 zcmeH~Jr2S!425mzP>H1@V-^m;4Wg<&0T*E43hX&L&p$$qDprKhvt+--jT7}7np#A3 zem<@ulZcFPQ@L2!n>{z**++&mCkOWA81W14cNZlEfg7;MkzE(HCqgga^y>{tEnwC%0;vJ&^%eQ zLs35+`xjp>T0~4mLT=zcf5VeUYKx1rd!7VYK=eA%QI?@6<|BjSy zX-FC6G+v0d0aL&f_-zXC-rc4N_Uwc%sJwsoF_zFdoer)$$<-*=9epreoso~?I30{q zLgeM`=Da>#}&Yx%@#BT&6@(IfGIFj zfX{~zjWJRz1pUzg=Su)!1H<0X=UReuLd8h25X213Nh(lMot79*(lH)tT%=eCN;)|$ zKAe8pX@%na*YW<)hm(s0&6@(IKvjWFd2I9je^OunSCj0?6fgz;l>)92Cvg``(z|tG vaeUW?Xniy`jw=Lx3Y=cYzQb4XE}A#Yh1>x~iiIFXVD=;6WiV$7{HOw-H|U04 literal 0 HcmV?d00001 diff --git a/tools/READ.ME b/tools/READ.ME new file mode 100644 index 0000000..0e44ea2 --- /dev/null +++ b/tools/READ.ME @@ -0,0 +1,125 @@ +This directory includes some programs that may be helpful to users of the +simh SDS simulator. + +sds_9pal - Extract file or list contents of an SDS Pal Library 9 track tape. + + Usage: sds_pal -l | -x nnnn-tt tapefile outfile [>stdout] + -l : List all catalog numbers + -x nnnnn-tt : Extract catalog number nnnnn element type tt + + Extracted files will be unpacked and written to outfile. + + Type 84 files contain column binary images in standard binary format, + sometimes prefaced by an absolute binary loader. + + Type 34 files contain Hollerith encoded data. The unpacked + Hollerith images will be written to outfile and also to stdout as + ASCII characters. + + Type 44 files contain compressed program data that can be uncompressed + by the 'recon' program (850647). Sometimes the compressed data may be + preceeded by control card which can cause an error during uncompression. + + + The PAL library tape file is in simh Magnetic Tape format copied from + a 9 track SDS tape. Thanks to Al Kassow of the CHM and bitsavers.org + for doing that. + + The tape contains label files composed of EBCDIC characters, (the + tapes were made on a Sigma 7) and program data files containing packed + 6bit data, such that threee 8bit bytes contain four 6bit characters, + or one 24bit 9 Series word. + + There is one :LBL file at the beginning of the tape with the tape's + PAL identifier. Following the :LBL are program files, + preceeded by :BOF labels containing the PAL program catalog number + to identify the data file. + + Program files consist of multiple blocks, + usually of 2048 bytes. Program files are organized as follows: + + number of records + record sequence number within file + length of record data to follow, usually 160 bytes, but + some times less if the record spans blocks + packed data bytes + + Records may span across blocks. A partial packed set will be continued + as a new record with the same sequence number in the next block. A + packed sequence of bytes will be continued in the next block and remaining + packed data will be present to complete the record, to make 160 bytes. + + + Catalog numbers have a two digits suffix to indicate the data type. + The Pal manual defines the types as: + 2x Relocatable Binary + 3x Source cards (Hollerith) + 4x Compressed Source (encoded) + 5x Listing + 8x Absolute Binary + where x == 4 indicates card medium. + + The hexdump for an example Source file (890548-34) is: + 0000000 10 62 10 62 10 62 10 62 10 62 10 62 10 62 10 62 + * + 0000070 10 62 10 62 10 62 10 62 10 62 10 62 10 62 40 40 + 0000080 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 40 + etc. + which converts to ascii characters: + **************************************** blank ... + + +sds_nm - List external defs from SDS Standard Binary Object files. + + Usage: sds_nm bias file... + bias is an octal value defining the origin of the first file in file... + file... is a list of SDS Standard Binary Object files. + + Sds_nm will ignore records not in standard binary format, ie, the 4th + character is not 05. + + +sds_bindmp - Dump SDS Standard Binary Object file to stdout. + + Usage: sds_bindmp file + file is a standard binary object file. + + Sds_bindmp will note and skip over records not in Standard Binary format, ie, the 4th + character is not 05. + Sds_bindmp will print Fortran Library catalog cards that start with '^2'. + Sds_bindmp will print Control Word information from a Standard Binary format record. + + + +sds_listtape - List contents of simh mag tape. + + Usage: sds_listtape file + file is a simh tape format file. + + Sds_listtape is an adaptaion of Rich Cornwell's listape program that ignores + gap markers produced by the SDS magtape simulator. + +sds_libsplt - Split a Fortran library file composed of binary object files + seperated by catalog cards into individual files named + according to the catalog card names. + + Usage: sds_libsplt file + 'file' is a Fortran Library file composed of binary object files + seperated by catalog cards. Object files are copied to individual + files in the current dirctory named according to the catalog + card names. Catalog cards are copied into file 'ctl' in the current + directory in the order of their occurence in 'file'. + +sds_libmk - Create a Fortran Library file from files in the current directory. + + Usage: sds_libmk file + Copy binary object files named by records in the catalog file 'ctl' in the + order of their appearance into 'file'. Preceed each binary file by it's record + in the catalog file. + +mkdeck - Convert file from ascii to Hollerith format. + Usage: mkdeck -a file + + Specify -a option to convert from ASCII to Hollerith format. Other options are + available + Mkdeck is copied here from Rich Cornwell's I7000 kit \ No newline at end of file diff --git a/tools/mkdeck b/tools/mkdeck new file mode 100755 index 0000000000000000000000000000000000000000..e43faa765cc321da2738b86810875e1b170df461 GIT binary patch literal 19272 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 +#include +#include + +int sequence = 0; +int cardno = 1; +int image_mode = 0; +int fcard = 0; +int lcard = -1; +int ccard = 0; +char *label = NULL; +int wrdnum; + +const unsigned short ascii_to_hol[128] = { + /* Control */ + 0xf000,0xf000,0xf000,0xf000,0xf000,0xf000,0xf000,0xf000, /*0-37*/ + /*Control*/ + 0xf000,0xf000,0xf000,0xf000,0xf000,0xf000,0xf000,0xf000, + /*Control*/ + 0xf000,0xf000,0xf000,0xf000,0xf000,0xf000,0xf000,0xf000, + /*Control*/ + 0xf000,0xf000,0xf000,0xf000,0xf000,0xf000,0xf000,0xf000, + /* sp ! " # $ % & ' */ + 0x000, 0x482, 0x006, 0x282, 0x442, 0x222, 0x800, 0x022, /* 40 - 77 */ + /* ( ) * + , - . / */ + 0x222, 0x822, 0x422, 0x800, 0x242, 0x400, 0x842, 0x300, + /* 0 1 2 3 4 5 6 7 */ + 0x200, 0x100, 0x080, 0x040, 0x020, 0x010, 0x008, 0x004, + /* 8 9 : ; < = > ? */ + 0x002, 0x001, 0x012, 0x40A, 0x80A, 0x042, 0x00A, 0x882, + /* @ A B C D E F G */ + 0x022, 0x900, 0x880, 0x840, 0x820, 0x810, 0x808, 0x804, /* 100 - 137 */ + /* H I J K L M N O */ + 0x802, 0x801, 0x500, 0x480, 0x440, 0x420, 0x410, 0x408, + /* P Q R S T U V W */ + 0x404, 0x402, 0x401, 0x280, 0x240, 0x220, 0x210, 0x208, + /* X Y Z [ \ ] ^ _ */ + 0x204, 0x202, 0x201, 0x812, 0x20A, 0x412, 0x406, 0x082, + /* ` a b c d e f g */ + 0x212, 0x900, 0x880, 0x840, 0x820, 0x810, 0x808, 0x804, /* 140 - 177 */ + /* h i j k l m n o */ + 0x802, 0x801, 0x500, 0x480, 0x440, 0x420, 0x410, 0x408, + /* p q r s t u v w */ + 0x404, 0x402, 0x401, 0x280, 0x240, 0x220, 0x210, 0x208, + /* x y z { | } ~ del*/ + 0x204, 0x202, 0x201, 0x206, 0x806,0xf000,0xf000,0xf000 +}; + +unsigned char parity_table[64] = { + /* 0 1 2 3 4 5 6 7 */ + 0000, 0100, 0100, 0000, 0100, 0000, 0000, 0100, + 0100, 0000, 0000, 0100, 0000, 0100, 0100, 0000, + 0100, 0000, 0000, 0100, 0000, 0100, 0100, 0000, + 0000, 0100, 0100, 0000, 0100, 0000, 0000, 0100, + 0100, 0000, 0000, 0100, 0000, 0100, 0100, 0000, + 0000, 0100, 0100, 0000, 0100, 0000, 0000, 0100, + 0000, 0100, 0100, 0000, 0100, 0000, 0000, 0100, + 0100, 0000, 0000, 0100, 0000, 0100, 0100, 0000 +}; + + +/* Dump card image to output file */ +void dump_card(FILE *of, unsigned short image[80]) { + int t; + int i, j; + unsigned char out[160]; + + + /* Fill in label columns */ + if (label) { + char *p = label; + unsigned short temp; + for (i = 72; i < 80; i++) { + temp = ascii_to_hol[*p++]; + if ((temp & 0xf000) == 0) + image[i] = temp; + + } + } + + /* Add sequence */ + if (sequence) { + i = cardno; + j = 79; + while( i != 0) { + t = i % 10; + if (t == 0) + image[j] = 0x200; + else + image[j] = 1 << (9 - t); + j--; + i -= t; + i /= 10; + } + } + + /* Fill buffer */ + for (i = 0; i < 80; i++) { + unsigned short int col = image[i]; + out[i*2] = (col >> 6) & 077; + out[i*2+1] = col & 077; + } + + /* Now set parity */ + for (i = 0; i < 160; i++) + out[i] |= 0100 ^ parity_table[(int)out[i]]; + out[0] |= 0x80; /* Set record mark */ + i = 160; + fwrite(out, 1, i, of); + cardno++; +} + +/* Dump a text file as hollerith based images */ +void dump_text(FILE *of, FILE *f) { + int col; + unsigned short image[80]; + char ch; + unsigned short temp; + + memset(image, 0, sizeof(image)); /* Clear image */ + col = 0; + while(!feof(f)) { + ch = fgetc(f); + switch(ch) { + case '\0': + case '\r': break; + default: + temp = ascii_to_hol[ch]; + if ((temp & 0xf000) == 0 && col < 80) + image[col++] = temp; + break; + case '\n': + dump_card(of, image); + memset(image, 0, sizeof(image)); + col = 0; + break; + case '\t': + col = (col | 7) + 1; /* Mult of 8 */ + break; + } + } + if (col != 0) + dump_card(of, image); +} + +/* Produce a transfer card */ +void transfer_card(char *addr, FILE *of) { + unsigned short image[80]; + int loc = 0; + int i; + + memset(image, 0, sizeof(image)); + image[43] = 1; + if (*addr == '0') { /* Octal */ + while(*addr != '\0') { + loc <<= 3; + loc += *addr++ - '0'; + } + } else { /* Decimal */ + while(*addr != '\0') { + loc *= 10; + loc += *addr++ - '0'; + } + } + for(i = 71; i > 56; i--) { + if (loc & 1) + image[i] = 1; + loc >>= 1; + } + dump_card(of, image); +} + +/* Set address for correction card */ +void set_addr(char *addr, unsigned short image[80]) { + int loc = 0; + int i; + memset(image, 0, 80); + if (*addr == '0') { + while(*addr != '\0') { + loc <<= 3; + loc += *addr++ - '0'; + } + } else { + while(*addr != '\0') { + loc *= 10; + loc += *addr++ - '0'; + } + } + for(i = 35; i > 20; i--) { + if (loc & 1) + image[i] = 1; + loc >>= 1; + } + wrdnum = 0; +} + +/* Add correction data */ +int add_data(char *addr, unsigned short image[80]) { + int long long data = 0; + int i; + int digit = 2 << (wrdnum / 2); + int col = (wrdnum&1)?36:0; + + if (addr == 0) + return 0; + if (*addr == '-') { + data = (long long)1 << 36; + addr++; + } + if (*addr == '0') { + while(*addr != '\0') { + data <<= 3; + data += *addr++ - '0'; + } + } else if (*addr >= '1' && *addr <= '9') { + while(*addr != '\0') { + if (*addr < '0' || *addr > '9') + return 0; + data *= 10; + data += *addr++ - '0'; + } + } else { + return 0; + } + for(i = 35; i >= 0; i--) { + if (data & 1) + image[i+col] |= digit; + data >>= 1; + } + wrdnum++; + return 1; +} + +/* Compute checksum and put word count into correction card */ +void checksum(unsigned short image[80]) { + int long long data = wrdnum; + int i; + int row; + + /* Word count into correct spot */ + for(i = 17; i > 10; i--) { + if (data & 1) + image[i] |= 1; + data >>= 1; + } + + /* Sum up all data on card */ + data = 0; + for (row = 0; row < 12; row++) { + long long wd = 0; + int mask = 1 << row; + for (i = 0; i < 36; i++) { + wd <<= 1; + if (image[i] & mask) + wd |= 1; + } + data += wd; + if (data & ((long long)1 << 37)) + data++; + data &= ((long long)1 << 37) - 1; + wd = 0; + for (i = 0; i < 36; i++) { + wd <<= 1; + if (image[i+36] & mask) + wd |= 1; + } + data += wd; + if (data & ((long long)1 << 37)) + data++; + data &= ((long long)1 << 37) - 1; + } + + /* Put sum into correct place */ + for(i = 35; i >= 0; i--) { + if (data & 1) + image[i+36] |= 1; + data >>= 1; + } +} + +/* Check if card should be copied to output file */ +int good_card(unsigned short image[80]) { + int t; + int i, j; + unsigned long long wd; + int bl; + + ccard++; + if (image_mode) + return 1; + for (t = i = 0; i < 80; i++) t |= image[i]; + if (t == 0) { + return 0; /* Ignore blank cards */ + } else if (ccard < fcard) { /* Before first card? */ + return 0; + } else if (lcard > 0 && ccard > lcard) { /* After the last card? */ + return 0; + } else { + wd = 0; + t = 1; + bl = 0; + /* Check first word of card */ + for (j = 0, i = 0; i < 36; i++) { + wd = (wd << 1) | (image[i] & 1); + t &= image[i] & 1; + bl |= image[i] & 1; + } + /* Check 9R word */ + for (; i < 72; i++) { + bl |= image[i] & 1; + } + /* If all ones, skip this */ + if (t) { + return 0; + } + /* If no data in 9L/9R, skip */ + if (bl == 0 || wd == 0200000000000LL) { + return 0; + } + } + return 1; +} + +/* Pretty print card for show */ +void print_card(unsigned short image[80]) { + int t; + int row; + int i, j; + + for (t = i = 0; i < 80; i++) t |= image[i]; + if (t == 0) { + printf("blank\n"); + } else { + t = 0; + for(row=0; row < 12; row++) { + int mask = 1 << row; + for (j = 0, i = 0; i < 72; i++) { + t <<= 1; + if (image[i] & mask) + t |= 1; + if (j == 2) { + putchar('0' + t); + t = 0; + j = 0; + } else + j++; + if (i == 35) + putchar(' '); + } + putchar('\n'); + } + putchar('-'); + putchar('\n'); + } +} + + + +int +main(int argc, char *argv[]) { + unsigned short image[80]; + int col; + int t; + int i, j; + unsigned char ch; + int card; + char *n; + FILE *of = stdout; + FILE *f; + + card = 0; + while((n = *++argv) != NULL) { + if (*n == '-') { + switch (n[1]) { + case 'o': /* Output file */ + n = *++argv; + if ((of = fopen(n, "wb")) == NULL) { + fprintf(stderr, "Unable to open: %s for output\n", n); + exit(1); + } + break; + case 't': /* Tranfer card */ + transfer_card(*++argv, of); + break; + case 'B': /* Truely Blank card. */ + memset(image, 0, sizeof(image)); + { + int seq = sequence; + char *lab = label; + sequence = 0; + label = NULL; + dump_card(of, image); + sequence = seq; + label = lab; + } + break; + case 'b': /* Blank card */ + memset(image, 0, sizeof(image)); + dump_card(of, image); + break; + case 'a': /* Ascii text card */ + n = *++argv; + if ((f = fopen(n, "r")) == NULL) { + fprintf(stderr, "Unable to open: %s\n", n); + exit(1); + } + dump_text(of, f); + fclose(f); + break; + case 'i': /* Toggle image mode */ + image_mode = !image_mode; + break; + case 'l': /* Set label */ + label = *++argv; + break; + case 's': /* Sequence */ + sequence = ! sequence; + break; + case 'c': /* Correction card */ + memset(image, 0, sizeof(image)); + set_addr(*++argv, image); + while(add_data(*++argv, image)); + argv--; /* Back up one argumement */ + checksum(image); /* Compute checksum */ + dump_card(of, image); + break; + case 'f': /* Start card */ + ++argv; + if (*argv[0] == 't') + fcard = -1; + else + fcard = atoi(*argv); + break; + case 'e': /* Final card */ + ++argv; + if (*argv[0] == 't') + lcard = -1; + else + lcard = atoi(*argv); + break; + } + } else { + if ((f = fopen(n, "rb")) == NULL) { + fprintf(stderr, "Unable to open: %s\n", n); + exit(1); + } + + memset(image, 0, sizeof(image)); + col = 0; + t = 6; + while(!feof(f)) { + ch = fgetc(f); + if (ch & 0x80) { + if (col != 0) { + if (good_card(image)) { + dump_card(of, image); + card++; + } + } + memset(image, 0, sizeof(image)); + col = 0; + t = 6; + } + image[col] |= (ch & 077) << t; + if (t) { + t = 0; + } else { + col++; + t = 6; + } + } + fclose(f); + if (col != 0) { + if (good_card(image)) { + dump_card(of, image); + card++; + } + } + ccard = 0; + fcard = 0; + lcard = -1; + } + } + fprintf(stderr, "%d cards in deck\n", cardno); + return (0); + +} + diff --git a/tools/mkdeck.dSYM/Contents/Info.plist b/tools/mkdeck.dSYM/Contents/Info.plist new file mode 100644 index 0000000..a08eb92 --- /dev/null +++ b/tools/mkdeck.dSYM/Contents/Info.plist @@ -0,0 +1,20 @@ + + + + + CFBundleDevelopmentRegion + English + CFBundleIdentifier + com.apple.xcode.dsym.mkdeck + CFBundleInfoDictionaryVersion + 6.0 + CFBundlePackageType + dSYM + CFBundleSignature + ???? + CFBundleShortVersionString + 1.0 + CFBundleVersion + 1 + + diff --git a/tools/mkdeck.dSYM/Contents/Resources/DWARF/mkdeck b/tools/mkdeck.dSYM/Contents/Resources/DWARF/mkdeck new file mode 100644 index 0000000000000000000000000000000000000000..ad53a6f85411141febcb784b19c37475bc4997ce GIT binary patch literal 16176 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 rD-GZ_;g@ +#include +#include + + +char ebcdic_to_ascii[256] = { + 0x00, 0x01, 0x02, 0x03, 0x04, 0x09, 0x06, 0x07, /* 00 - 1F */ + 0x08, 0x05, 0x15, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F, + 0x10, 0x11, 0x12, 0x13, 0x14, 0x0A, 0x16, 0x17, //10 + 0x18, 0x19, 0x1A, 0x1B, 0x1C, 0x1D, 0x1E, 0x1F, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 20 - 3F */ + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // 30 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + ' ', 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 40 - 5F */ + 0x00, 0x00, '`', '.', '<', '(', '+', '|', + '&', 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, //50 + 0x00, 0x00, '!', '$', '*', ')', ';', '~', + '-', '/', 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* 60 - 7F */ + 0x00, 0x00, '^', ',', '%', '_', '>', '?', + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, //70 + 0x00, 0x00, ':', '#', '@', '\'', '=', '"', + 0x00, 'a', 'b', 'c', 'd', 'e', 'f', 'g', /* 80 - 9F */ + 'h', 'i', 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 'j', 'k', 'l', 'm', 'n', 'o', 'p', // 90 + 'q', 'r', 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 's', 't', 'u', 'v', 'w', 'x', /* A0 - BF */ + 'y', 'z', 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, '\\', '{', '}', '[', ']', 0x00, 0x00, //b0 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 'A', 'B', 'C', 'D', 'E', 'F', 'G', /* C0 - DF */ + 'H', 'I', 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 'J', 'K', 'L', 'M', 'N', 'O', 'P', //d0 + 'Q', 'R', 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 'S', 'T', 'U', 'V', 'W', 'X', /* E0 - FF */ + 'Y', 'Z', 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + '0', '1', '2', '3', '4', '5', '6', '7', // f0 + '8', '9', 0x00, 0x00, 0x00, 0x00, 0x00, 0x7F, +}; + +unsigned int parity7[64] = { + 0100, 0000, 0000, 0100, 0000, 0100, 0100, 0000 /* 00 - 07 */ + ,0000, 0100, 0100, 0000, 0100, 0000, 0000, 0100 /* 10 - 17 */ + ,0000, 0100, 0100, 0000, 0100, 0000, 0000, 0100 /* 20 - 27 */ + ,0100, 0000, 0000, 0100, 0000, 0100, 0100, 0000 /* 30 - 37 */ + ,0000, 0100, 0100, 0000, 0100, 0000, 0000, 0100 /* 40 - 47 */ + ,0100, 0000, 0000, 0100, 0000, 0100, 0100, 0000 /* 50 - 57 */ + ,0100, 0000, 0000, 0100, 0000, 0100, 0100, 0000 /* 60 - 67 */ + ,0000, 0100, 0100, 0000, 0100, 0000, 0000, 0100}; /* 70 - 77 */ + + +char bcd_ascii[64] = { + ' ', /* 0 - space */ + '1', /* 1 1 - 1 */ + '2', /* 2 2 - 2 */ + '3', /* 3 21 - 3 */ + '4', /* 4 4 - 4 */ + '5', /* 5 4 1 - 5 */ + '6', /* 6 42 - 6 */ + '7', /* 7 421 - 7 */ + '8', /* 8 8 - 8 */ + '9', /* 9 8 1 - 9 */ + '0', /* 10 8 2 - 0 */ + '=', /* 11 8 21 - equal */ + '\'', /* 12 84 - apostrophe */ + ':', /* 13 84 1 - colon */ + '>', /* 14 842 - greater than */ + '"', /* 15 8421 - radical 017 {? */ + ' ', /* 16 A - substitute blank */ + '/', /* 17 A 1 - slash */ + 'S', /* 18 A 2 - S */ + 'T', /* 19 A 21 - T */ + 'U', /* 20 A 4 - U */ + 'V', /* 21 A 4 1 - V */ + 'W', /* 22 A 42 - W */ + 'X', /* 23 A 421 - X */ + 'Y', /* 24 A8 - Y */ + 'Z', /* 25 A8 1 - Z */ + '#', /* 26 A8 2 - record mark */ + ',', /* 27 A8 21 - comma */ + '(', /* 28 A84 - paren */ + '`', /* 29 A84 1 - word separator */ + '\\', /* 30 A842 - left oblique */ + '{', /* 31 A8421 - segment mark */ + '-', /* 32 B - hyphen */ + 'J', /* 33 B 1 - J */ + 'K', /* 34 B 2 - K */ + 'L', /* 35 B 21 - L */ + 'M', /* 36 B 4 - M */ + 'N', /* 37 B 4 1 - N */ + 'O', /* 38 B 42 - O */ + 'P', /* 39 B 421 - P */ + 'Q', /* 40 B 8 - Q */ + 'R', /* 41 B 8 1 - R */ + '!', /* 42 B 8 2 - exclamation */ + '$', /* 43 B 8 21 - dollar sign */ + '*', /* 44 B 84 - asterisk */ + ']', /* 45 B 84 1 - right bracket */ + ';', /* 46 B 842 - semicolon */ + '_', /* 47 B 8421 - delta */ + '+', /* 48 BA - ampersand or plus */ + 'A', /* 49 BA 1 - A */ + 'B', /* 50 BA 2 - B */ + 'C', /* 51 BA 21 - C */ + 'D', /* 52 BA 4 - D */ + 'E', /* 53 BA 4 1 - E */ + 'F', /* 54 BA 42 - F */ + 'G', /* 55 BA 421 - G */ + 'H', /* 56 BA8 - H */ + 'I', /* 57 BA8 1 - I */ + '?', /* 58 BA8 2 - question mark 032 */ + '.', /* 59 BA8 21 - period */ + ')', /* 60 BA84 - paren */ + '[', /* 61 BA84 1 - left bracket 035 */ + '<', /* 62 BA842 - less than 036 */ + '}' /* 63 BA8421 - group mark 037 */ +}; + + + + +FILE *infile, *outfile; +int upkx; + +void usage() { + fprintf(stderr,"Usage: sds_9pal [-l] [-x nnnn-tt] [>stdout]\n"); + fprintf(stderr," -l : List all catalog numbers \n"); + fprintf(stderr," -x nnnnn-tt : Extract catalog number nnnnn "); + fprintf(stderr,"element type tt\n"); + fprintf(stderr," if type = 34 file, extracted ascii data is "); + fprintf(stderr,"written to stdout\n"); + exit(1); +} + + +/* Returns the BCD of the hollerith code or 0x7f if error */ +uint8_t +sim_hol_to_bcd(uint16_t hol) { + uint8_t bcd; + + /* Convert 10,11,12 rows */ + switch (hol & 0xe00) { + case 0x000: + bcd = 0; + break; + case 0x200: + if ((hol & 0x1ff) == 0) + return 10; + bcd = 020; + break; + case 0x400: + bcd = 040; + break; + case 0x600: /* 11-10 Punch */ + bcd = 052; + break; + case 0x800: + bcd = 060; + break; + case 0xA00: /* 12-10 Punch */ + bcd = 072; + break; + default: /* Double punch in 10,11,12 rows */ + return 0x7f; + } + + hol &= 0x1ff; /* Mask rows 0-9 */ + /* Check row 8 punched */ + if (hol & 0x2) { + bcd += 8; + hol &= ~0x2; + } + + /* Convert rows 0-9 */ + while (hol != 0 && (hol & 0x200) == 0) { + bcd++; + hol <<= 1; + } + + /* Any more columns punched? */ + if ((hol & 0x1ff) != 0) + return 0x7f; + return bcd; +} + + + + + +// get int32_t value from input file +uint32_t getint() { + char tmp[4]; + uint32_t val; + for (int j = 3; j>= 0;j--) { + fread(&tmp[j],1,1,infile); + } + val = *(uint32_t *)&tmp[0]; + return val; +} + +// return 4 6 bit bytes packed into a word +int getwd(int icnt) { + static int res; // unpack 3-4 index + static char upkchr; // unpack temp byte + static int upkbytctr; // unpack byte counter + int ch; + + //for (int i = 0; i < 4;i++) { + while(icnt) { + switch (upkx) { + case 0: + fread(&upkchr, sizeof(unsigned char), 1, infile); + upkbytctr++; + icnt--; // used first char + ch = (upkchr >> 2) & 077; + upkx++; + res = 0; + break; + case 1: + ch = (upkchr & 03) << 4; + fread(&upkchr, sizeof(unsigned char), 1, infile); + upkbytctr++; + icnt--; // used first and second char + ch = ch | ((upkchr >> 4) & 017); + upkx++; + break; + case 2: + ch = ((upkchr & 017) << 2); + fread(&upkchr, sizeof(unsigned char), 1, infile); + upkbytctr++; + ch = ch | ((upkchr >> 6) & 03); // used second and third char + upkx++; + break; + case 3: + ch = upkchr & 077; + icnt--; // used third character again + upkx = 0; + break; + } + res = res<<6 | ch; + } + return res; +} + +// read simh length word +int rdlen() { + char xlen[4]; + int sz; + + if ((sz = fread(xlen, sizeof(unsigned char), 4, infile)) != 4) + return 0; + + /* Convert to number */ + sz = (xlen[0] & 0xff); + sz |= ((xlen[1]) & 0xff)<< 8; + sz |= ((xlen[2]) & 0xff)<< 16; + sz |= ((xlen[3]) & 0xff) << 24; + /* Check for EOM */ + if (sz == 0xffffffff) { + return -2; + } + /* Check for EOF */ + if (sz == 0) { + return -1; + } + return sz; +} + +// Read the label at the beginning of the tape + +int getbot(void) { + int sz; + char lbl[60]; + int i; + + sz = rdlen(); + if (sz != 12) { + fprintf(stderr,":LBL size error\n"); + return 0; + } + if (fread(&lbl,1,sz, infile) != sz) { + fprintf(stderr,":LBL read error\n"); + return 0; + } + if ((ebcdic_to_ascii[lbl[0]&0xff] != ':') || + (ebcdic_to_ascii[lbl[1]&0xff] != 'L') || + (ebcdic_to_ascii[lbl[2]&0xff] != 'B') || + (ebcdic_to_ascii[lbl[3]&0xff] != 'L')) { + fprintf(stderr,":LBL missing\n"); + return 0; + } + fread(&lbl, sizeof(unsigned char), 4, infile); + + sz = rdlen(); + if (sz != 28) { + fprintf(stderr,":ACN size error\n"); + return 0; + } + if (fread(&lbl,1,sz, infile) != sz) { + fprintf(stderr,":ACN read error\n"); + return 0; + } + if ((ebcdic_to_ascii[lbl[0]&0xff] != ':') || + (ebcdic_to_ascii[lbl[1]&0xff] != 'A') || + (ebcdic_to_ascii[lbl[2]&0xff] != 'C') || + (ebcdic_to_ascii[lbl[3]&0xff] != 'N')) { + fprintf(stderr,":ACN missing\n"); + return 0; + } + fread(&lbl, sizeof(unsigned char), 4, infile); + + // should be an EOF here + sz = rdlen(); + if (sz != -1) { + fprintf(stderr,"Missing EOF following ACN\n"); + return 0; + } + return sz; +} + + +int getbof(char *buf) { + int sz; + char lbl[60]; + int i; + + sz = rdlen(); + if (sz != 52) { + if (sz == 12) { + if (fread(&lbl,1,sz, infile) != sz) { + fprintf(stderr,":BOF read error\n"); + return 0; + } + if ((ebcdic_to_ascii[lbl[0]&0xff] != ':') || + (ebcdic_to_ascii[lbl[1]&0xff] != 'E') || + (ebcdic_to_ascii[lbl[2]&0xff] != 'O') || + (ebcdic_to_ascii[lbl[3]&0xff] != 'R')) { + fprintf(stderr,":BOF/EOR missing end of tape?\n"); + return 0; + } + fread(&lbl, sizeof(unsigned char), 4, infile); + //fprintf(stderr,":EOR at end of tape\n"); + return 0; + } + + fprintf(stderr,":BOF size error %d %x\n",sz,sz); + //return 0; + } + if (fread(buf,1,sz, infile) != sz) { + fprintf(stderr,":BOF read error\n"); + return 0; + } + if ((ebcdic_to_ascii[buf[0]&0xff] != ':') || + (ebcdic_to_ascii[buf[1]&0xff] != 'B') || + (ebcdic_to_ascii[buf[2]&0xff] != 'O') || + (ebcdic_to_ascii[buf[3]&0xff] != 'F')) { + fprintf(stderr,":BOF missing %x %x %x %x\n",buf[0]&0xff,buf[1]&0xff,buf[2]&0xff,buf[3]&0xff); + return 0; + } + fread(&lbl, sizeof(unsigned char), 4, infile); + // should be an EOF here + if (rdlen() != -1) { + fprintf(stderr,"Missing EOF following BOF\n"); + return 0; + } + return sz; +} + +int geteof(void) { + int sz; + char lbl[60]; + int i; + + sz = rdlen(); + if (sz != 12) { + fprintf(stderr,":EOF size error\n"); + return 0; + } + if (fread(&lbl,1,sz, infile) != sz) { + fprintf(stderr,":EOF read error\n"); + return 0; + } + if ((ebcdic_to_ascii[lbl[0]&0xff] != ':') || + (ebcdic_to_ascii[lbl[1]&0xff] != 'E') || + (ebcdic_to_ascii[lbl[2]&0xff] != 'O') || + (ebcdic_to_ascii[lbl[3]&0xff] != 'F')) { + fprintf(stderr,":EOF missing\n"); + return 0; + } + fread(&lbl, sizeof(unsigned char), 4, infile); + // should be an EOF here + if (rdlen() != -1) { + fprintf(stderr,"Missing EOF following :EOF\n"); + return 0; + } + return sz; +} + + +// Extract data +// output card images suitable for sim_card reader and sds_cr +void extract(int pnum,int ptype) { + + int32_t blksz; // leading length in simh block + int32_t finsz; // final length in simh block + int32_t remsz; + int32_t bytcnt; // counter of input bytes from block + int32_t length; // number bytes in record data to unpack + int mod; // number bytes of incomplete unpack dat + int mrkflg; + unsigned char tmp; + int j; + int32_t data; + int32_t numrec; // number records in block + int32_t totrec; // total number records in deck + int32_t reccnt; // counter of records in block + int32_t recnum = -1; // record sequence number + + + totrec = 0; + mod = 0; + // read blocks to end of file marker + while ((blksz = rdlen()) > 0) { // leading length + reccnt = 0; + numrec = getint(); // record count + bytcnt = 4; + //printf("numrec 0x%x \n",numrec); + // unpack records + while (bytcnt < blksz) { + remsz = blksz - bytcnt; + data = getint() & 0xffffff; // record number + bytcnt += 4; + if (data == recnum) { // continued record + totrec--; + mrkflg = 0; // no record mark + } + else { + if (ptype == 34) + printf("\n"); + mrkflg = 1; + } + recnum = data; + + length = getint() & 0xffffff; // length of record data + bytcnt += 4; + if (mod) { + data = getwd(3-mod); // unpack remainder of word + if (ptype == 34) { + printf("%c",bcd_ascii[sim_hol_to_bcd(data>>12 &0xfff)]); + printf("%c",bcd_ascii[sim_hol_to_bcd(data &0xfff)]); + } + bytcnt += 3-mod; + for (int i = 18; i >= 0;i-=6) { + tmp = ((data >> i ) & 0x3f); + tmp = tmp | parity7[tmp]; + fwrite(&tmp,1,1,outfile); + + } + length -= (3-mod); + mod = 0; + } + mod = length % 3; + for (j = 0; j < length - mod; j+=3,bytcnt+=3) { + upkx = 0; + data = getwd(3); // output full words + if (ptype == 34) { + printf("%c",bcd_ascii[sim_hol_to_bcd(data>>12 &0xfff)]); + printf("%c",bcd_ascii[sim_hol_to_bcd(data &0xfff)]); + } + for (int i = 18; i >= 0;i-=6) { + tmp = ((data >> i ) & 0x3f); + tmp = tmp | parity7[tmp]; + if ((j == 0) & (i == 18) & mrkflg) + tmp |= 0x80; // Set record mark + fwrite(&tmp,1,1,outfile); + } + } + if (mod) { + tmp = getwd(mod); // unpack partial word + bytcnt+=mod; + } + reccnt++; + totrec++; + } + finsz = rdlen(); + if (finsz != blksz) + printf(" end length not equal %x %x\n",blksz,finsz); + } + fflush(stdout); + fprintf(stderr,"\n\ncatalog number %d-%d %d cards\n",pnum,ptype,recnum+1); + return; +} + + + +int main(int argc, char *argv[]) { + int lst = 0; + int ext = 0; + int cat = 0; + int elm = 0; + char bof[120]; + char asc[120]; + char tmp; + int pnum; + int ptype; + int sz; + int blksz; + + if ((argc < 2) || (argc > 5)){ + usage(); + return 0; + } + while(--argc && **(++argv) == '-') { + switch(tolower((*argv)[1])) { + case 'l': + lst = 1; + break; + case 'x': + if (sscanf(argv[1],"%d-%d",&cat,&elm) != 2) + usage(); + if ((elm != 24) && (elm != 34) && + (elm != 44) && (elm != 84)) { + fprintf(stderr,"Unsupported element type\n"); + return 0; + } + ext = 1; + --argc; + ++argv; + break; + + default: + usage(); + return 0; + } + } + + infile = fopen(argv[0], "rb"); + if (!infile) { + printf("Cannot open PAL file: %s\n", argv[0]); + return 1; + } + outfile = fopen(argv[1], "w"); + if (!outfile) { + printf("Cannot open output file: %s\n", argv[1]); + return 1; + } + + getbot(); + while (1) { + sz = getbof(bof); + if (sz == 0) + break; // end of input tape + + for (int i = 0; i < sz; i++) { + asc[i] = ebcdic_to_ascii[bof[i]&0xff]; + } + sscanf(&asc[9],"%6d-%2d",&pnum,&ptype); + + if (lst) + fprintf(outfile,"catalog number %d-%d\n",pnum,ptype); + else if (ext && (pnum == cat) && (ptype == elm)) { + extract(pnum,ptype); + return 0; + } + while ((blksz = rdlen()) != -1) { + if (feof(infile) != 0) { + printf("Unexpected EOF on infile\n"); + return 0; + } + for (int j = 0; j < blksz; j++) { + fread(&tmp,1,1,infile); + } + rdlen(); + } + geteof(); + } + if (ext) + fprintf(stderr,"Missing file: %d-%d\n",cat,elm); +} diff --git a/tools/sds_bindmp b/tools/sds_bindmp new file mode 100755 index 0000000000000000000000000000000000000000..4e34fe546b1efb1b39578858e17f3224cbda51a2 GIT binary patch literal 13520 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 literal 0 HcmV?d00001 diff --git a/tools/sds_bindmp.c b/tools/sds_bindmp.c new file mode 100644 index 0000000..bd3ad0b --- /dev/null +++ b/tools/sds_bindmp.c @@ -0,0 +1,244 @@ +/* sds_bindmp.c - Dump SDS Standard Binary Object file to stdout */ + +/* Created by Ken Rector, Nov. 7, 2020 */ + + +#include +#include + + +FILE *infile, *outfile; +int btz; + +#define eof 027657537 + + + +char bcd_ascii[64] = { + ' ', /* 0 - space */ + '1', /* 1 1 - 1 */ + '2', /* 2 2 - 2 */ + '3', /* 3 21 - 3 */ + '4', /* 4 4 - 4 */ + '5', /* 5 4 1 - 5 */ + '6', /* 6 42 - 6 */ + '7', /* 7 421 - 7 */ + '8', /* 8 8 - 8 */ + '9', /* 9 8 1 - 9 */ + '0', /* 10 8 2 - 0 */ + '=', /* 11 8 21 - equal */ + '\'', /* 12 84 - apostrophe */ + ':', /* 13 84 1 - colon */ + '>', /* 14 842 - greater than */ + '"', /* 15 8421 - radical 017 {? */ + ' ', /* 16 A - substitute blank */ + '/', /* 17 A 1 - slash */ + 'S', /* 18 A 2 - S */ + 'T', /* 19 A 21 - T */ + 'U', /* 20 A 4 - U */ + 'V', /* 21 A 4 1 - V */ + 'W', /* 22 A 42 - W */ + 'X', /* 23 A 421 - X */ + 'Y', /* 24 A8 - Y */ + 'Z', /* 25 A8 1 - Z */ + '#', /* 26 A8 2 - record mark */ + ',', /* 27 A8 21 - comma */ + '(', /* 28 A84 - paren */ + '`', /* 29 A84 1 - word separator */ + '\\', /* 30 A842 - left oblique */ + '{', /* 31 A8421 - segment mark */ + '-', /* 32 B - hyphen */ + 'J', /* 33 B 1 - J */ + 'K', /* 34 B 2 - K */ + 'L', /* 35 B 21 - L */ + 'M', /* 36 B 4 - M */ + 'N', /* 37 B 4 1 - N */ + 'O', /* 38 B 42 - O */ + 'P', /* 39 B 421 - P */ + 'Q', /* 40 B 8 - Q */ + 'R', /* 41 B 8 1 - R */ + '!', /* 42 B 8 2 - exclamation */ + '$', /* 43 B 8 21 - dollar sign */ + '*', /* 44 B 84 - asterisk */ + ']', /* 45 B 84 1 - right bracket */ + ';', /* 46 B 842 - semicolon */ + '^', /* 47 B 8421 - delta */ + '+', /* 48 BA - ampersand or plus */ + 'A', /* 49 BA 1 - A */ + 'B', /* 50 BA 2 - B */ + 'C', /* 51 BA 21 - C */ + 'D', /* 52 BA 4 - D */ + 'E', /* 53 BA 4 1 - E */ + 'F', /* 54 BA 42 - F */ + 'G', /* 55 BA 421 - G */ + 'H', /* 56 BA8 - H */ + 'I', /* 57 BA8 1 - I */ + '?', /* 58 BA8 2 - question mark 032 */ + '.', /* 59 BA8 21 - period */ + ')', /* 60 BA84 - paren */ + '[', /* 61 BA84 1 - left bracket 035 */ + '<', /* 62 BA842 - less than 036 */ + '}' /* 63 BA8421 - group mark 037 */ +}; + + +/* Returns the BCD of the hollerith code or 0x7f if error */ +int sim_hol_to_bcd(short hol) { + int bcd; + + /* Convert 10,11,12 rows */ + switch (hol & 0xe00) { + case 0x000: + bcd = 0; + break; + case 0x200: + if ((hol & 0x1ff) == 0) + return 10; + bcd = 020; + break; + case 0x400: + bcd = 040; + break; + case 0x600: /* 11-10 Punch */ + bcd = 052; + break; + case 0x800: + bcd = 060; + break; + case 0xA00: /* 12-10 Punch */ + bcd = 072; + break; + default: /* Double punch in 10,11,12 rows */ + return 0x7f; + } + + hol &= 0x1ff; /* Mask rows 0-9 */ + /* Check row 8 punched */ + if (hol & 0x2) { + bcd += 8; + hol &= ~0x2; + } + + /* Convert rows 0-9 */ + while (hol != 0 && (hol & 0x200) == 0) { + bcd++; + hol <<= 1; + } + + /* Any more columns punched? */ + if ((hol & 0x1ff) != 0) + return 0x7f; + return bcd; +} + + + + +unsigned int get24(){ + unsigned int i; + + i = fgetc(infile) & 077; + i = i<<6 | (fgetc(infile) & 077); + i = i<<6 | (fgetc(infile) & 077); + i = i<<6 | (fgetc(infile) & 077); + btz += 4; + return(i); +} + +int main(int argc, char *argv[]) +{ + unsigned int i,j,n; + unsigned int bin,type,cksm,cnt; + unsigned int len; + unsigned int cardno = 0; + + btz = 0; + + if (argc != 2) + { + printf("Usage: sds_bindmp binfile \n"); + printf(" Dump SDS Standard Binary Object file to stdout\n"); + printf(" Skip non-binary object file cards (col9-11 not 05)\n"); + printf(" Assumes each record is 80 columns\n"); + return 1; + } + + infile = fopen(argv[1], "rb"); + if (!infile) + { + printf("Cannot open binfile: %s\n", argv[1]); + return 1; + } + + outfile = stdout; + cardno = 0; + + do + { + cardno++; + i = get24(); + if (feof(infile)) + break; + if (i!=eof) + { + bin = (i >> 12) & 07; + if (bin != 05) { + if (i == 03200003) { + printf("Probable boostrap loader here\n"); + for (j = 1; j< 40; j++) + i = get24(); + } + else { + printf("\n%c",bcd_ascii[sim_hol_to_bcd(i>>12 &0xfff)]); + printf("%c",bcd_ascii[sim_hol_to_bcd(i &0xfff)]); + for (j = 1; j< 40; j++) { + i = get24(); + printf("%c",bcd_ascii[sim_hol_to_bcd(i>>12 &0xfff)]); + printf("%c",bcd_ascii[sim_hol_to_bcd(i &0xfff)]); + } + } + printf("\n"); + continue; + } + type = i >> 21; + cnt = (i >> 15) & 077; + cksm = i & 07777; + printf("%08o ",i); + len = 40; + switch (type) { + case 0: + printf("data "); + break; + case 3: + printf("end "); + break; + case 1: + printf("def/ref "); + break; + default: + printf("unknown %o\n",i); + } + printf("cnt = %o, chksm = %o %d\n",cnt,cksm, btz); + + if (type == 0 ) { + i = get24(); + printf("%08o load address = %08o\n",i,i); + cnt--; + len--; + } + for (j = 1; j + + + + CFBundleDevelopmentRegion + English + CFBundleIdentifier + com.apple.xcode.dsym.sds_bindmp + CFBundleInfoDictionaryVersion + 6.0 + CFBundlePackageType + dSYM + CFBundleSignature + ???? + CFBundleShortVersionString + 1.0 + CFBundleVersion + 1 + + diff --git a/tools/sds_bindmp.dSYM/Contents/Resources/DWARF/sds_bindmp b/tools/sds_bindmp.dSYM/Contents/Resources/DWARF/sds_bindmp new file mode 100644 index 0000000000000000000000000000000000000000..21a9649f1cb6306fb1927d32a03a95fd40875be5 GIT binary patch literal 12316 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 a?%Ps*LYv$=iOCT{d&)O{JOpl1)8gL?$sE7{ literal 0 HcmV?d00001 diff --git a/tools/sds_libmk b/tools/sds_libmk new file mode 100755 index 0000000000000000000000000000000000000000..80bc5d307564fc2c3f132e06c13404ba3b9fc7df GIT binary patch literal 13672 zcmeHOUu+yl9iH8+owbwn9MeF66t-?s1!#Sj)@kjEsAngJP3k7s#wk$?nw}$?< z?%leHOOc!$r~0@avOrc)r9u!ALh#T$q|gWK*iez?rKIpuA&`vdpNj;@MW`~Uiurys zv-aIORiyR}?X)xV`(}Rg?Qg%G8E?09zyI$)u5V;a+rSvpk=u}$n;0uG3l?LaMz)bT zkM(}F|MC7uk5Fr4(i-6n5%KKC1vnqyyF=g;8!+eVn_=)9#w1pD)&e zn?bi@NFTz=lnn-(l!h!hFSz4Fh1DiM-^DGGFQPm=>xF>*8~A*}~cl`}tzG$oRxfgM@Iy{jL&AgL9|g=F{0>)xM4|B>6^Ee+;-j zHN=Vz&d0N-(%A%0XHz+W8=vnhijU?HCBl9V*&|DuCqF>u{6OzuFW-OU@KHHiFdrJ` zi8o(VP4kyB`A`$*!?`upKAg{^p+Pj>OY}TV51^*Fx15u@!&(+}}y#I7*A+`oLeG_bO=LZszc8ZC!$PGm2|ndI2G@NvaNTod>b2T-xL=~J zqg;xBu=W4 zR&kcBSg6_sU{{;|^+{Bf?%Jdz-%rq)A)hH@Yeftz&TD01T)Tv3KUH(6`k18Jh_RI_ z4J|I1w(~~xJ6&zIBSuE2+@>XEhvo*FmWuzeLL~&vuF;4To&HdZ0B-x>S9w&ILwkm@!bax$m{hkENZ=Y90#5G=+v);k3Wzz z7_fGaX9VkcL=mb!OtHwv5t@5m47QyG++OHbbpLX*UVJaQ+AjlWdEE=ef0>`)GPtpf z&}>!&J6EOZ%#}%8XG+*Ij`QNWVoKQ+bB^YCZ70ebNBIPKSDQ8wF{UNW3_R!$5MsI1 zO&6{7)LutpahZj_EhZ5C&BKVl!lg1RT_UwvH2Pzn!EiCt;Qb4D6Ms=r%`8m5xAOji z7Ahs-by-{rT||8K6VmngI@h0mu(DDS8-iWgGJ#2AS6b}Kv1PmGjdE!xctRz5@2&{j zKJ)4#z&Czd!%AbJP17s8zJgbgm0h+d4~cR>l!rwb6Xm0#97H)#z3mvP-lHqKw&7aS zBcNf|-oa%?=(XY6pUK)u)*r}kwHN$@&^uKPM|m)_GW{*U}REc>l1o zMl(CB_Zb~JGdoy^-eGna% zjGC6&W}2p9>ZWG0rb#1eSVo&+8it`8nlY(IbxUv4P2JFSUDMmmR=wS5HqNqk{iBR; z)|*Xv->2CAcs84Jt=w2LYvFY(AJ0!%xp8-F+_h5aO!5J1SD}?TZieL>Tphf|XL7^J z2mMxSLw`E!F$e-$3_FzS^);Tact`9)O_~0Cl@i%BeKtd{He{7n4X+`n0|f#F0tEsE z0tEsE0tEsE0tEsE0tEsE0tEsE{{IyCH@*+hM}X_9Ht|2S2)C^9h`WG+SacCv?)u0y~gKqn*!>?VN24WcJP;8Z^CCaJ3%Xbh*-U80alQWFlQbc}ojEf>`o<%A3Fm(IbmxA2#sOCAC3g=eAwqZtpH^;dnCpk}xnN2_9pq0VJQsUl1;SH;(VV@AIzM)0#9C8bgi(f5! zwcyoK_ZGRgyw~kA_+bNWJXrlt$FUiNj}?;nLO7lnO=rV}M1k_%C(~}&&E+zMFazW` zZ8dtb(_!JK8g;m-ik^OWZ0vtO?H;=T literal 0 HcmV?d00001 diff --git a/tools/sds_libmk.c b/tools/sds_libmk.c new file mode 100644 index 0000000..e9d5bac --- /dev/null +++ b/tools/sds_libmk.c @@ -0,0 +1,130 @@ +/* sds_libmk - assemble a library file */ + +/* + copy cards from binary files referenced by records in the catalog file + preceed each binary file by it's record in the catalog file + +*/ + +/* created by Ken Rector, Nov 21, 2020 */ + +#include +#include +#include + + + +FILE *infile, *outfile, *ctfile; +char crbuffer[160]; +unsigned short image[80]; + +const unsigned short ascii_to_hol[128] = { + /* Control */ + 0xf000,0xf000,0xf000,0xf000,0xf000,0xf000,0xf000,0xf000, /*0-37*/ + /*Control*/ + 0xf000,0xf000,0xf000,0xf000,0xf000,0xf000,0xf000,0xf000, + /*Control*/ + 0xf000,0xf000,0xf000,0xf000,0xf000,0xf000,0xf000,0xf000, + /*Control*/ + 0xf000,0xf000,0xf000,0xf000,0xf000,0xf000,0xf000,0xf000, + /* sp ! " # $ % & ' */ + 0x000, 0x482, 0x006, 0x282, 0x442, 0x222, 0x800, 0x022, /* 40 - 77 */ + /* ( ) * + , - . / */ + 0x222, 0x822, 0x422, 0x800, 0x242, 0x400, 0x842, 0x300, + /* 0 1 2 3 4 5 6 7 */ + 0x200, 0x100, 0x080, 0x040, 0x020, 0x010, 0x008, 0x004, + /* 8 9 : ; < = > ? */ + 0x002, 0x001, 0x012, 0x40A, 0x80A, 0x042, 0x00A, 0x882, + /* @ A B C D E F G */ + 0x022, 0x900, 0x880, 0x840, 0x820, 0x810, 0x808, 0x804, /* 100 - 137 */ + /* H I J K L M N O */ + 0x802, 0x801, 0x500, 0x480, 0x440, 0x420, 0x410, 0x408, + /* P Q R S T U V W */ + 0x404, 0x402, 0x401, 0x280, 0x240, 0x220, 0x210, 0x208, + /* X Y Z [ \ ] ^ _ */ + 0x204, 0x202, 0x201, 0x812, 0x20A, 0x412, 0x406, 0x082, + /* ` a b c d e f g */ + 0x212, 0x900, 0x880, 0x840, 0x820, 0x810, 0x808, 0x804, /* 140 - 177 */ + /* h i j k l m n o */ + 0x802, 0x801, 0x500, 0x480, 0x440, 0x420, 0x410, 0x408, + /* p q r s t u v w */ + 0x404, 0x402, 0x401, 0x280, 0x240, 0x220, 0x210, 0x208, + /* x y z { | } ~ del*/ + 0x204, 0x202, 0x201, 0x206, 0x806,0xf000,0xf000,0xf000 +}; + +unsigned char parity_table[64] = { + /* 0 1 2 3 4 5 6 7 */ + 0000, 0100, 0100, 0000, 0100, 0000, 0000, 0100, + 0100, 0000, 0000, 0100, 0000, 0100, 0100, 0000, + 0100, 0000, 0000, 0100, 0000, 0100, 0100, 0000, + 0000, 0100, 0100, 0000, 0100, 0000, 0000, 0100, + 0100, 0000, 0000, 0100, 0000, 0100, 0100, 0000, + 0000, 0100, 0100, 0000, 0100, 0000, 0000, 0100, + 0000, 0100, 0100, 0000, 0100, 0000, 0000, 0100, + 0100, 0000, 0000, 0100, 0000, 0100, 0100, 0000 +}; + + + +int main (int argc, char *argv[]) { + int i; + char ifname[8]; + char out[160]; + int j; + + outfile = fopen(argv[1], "w"); + if (!outfile) { + printf("Cannot open library output file: %s\n", argv[1]); + exit (1); + } + + ctfile = fopen("ctl","r"); + if (!ctfile) { + printf("Cannot open catalog file: ctl \n"); + exit (1); + } + do { + for (i = 0; i < 80; i++) + crbuffer[i] = fgetc(ctfile); + for (i = 0;i < 6;i++) { + ifname[i] = crbuffer[8+i]; + if (ifname[i] == ' ') + break; + } + ifname[i] = '\0'; + infile = fopen(ifname,"r"); + if (!infile) { + printf("Cannot open input file %s\n",ifname); + exit (1); + } + + for (i = 0; i < 80; i++) + image[i] = ascii_to_hol[crbuffer[i]]; + + /* Fill buffer */ + for (i = 0; i < 80; i++) { + unsigned short int col = image[i]; + out[i*2] = (col >> 6) & 077; + out[i*2+1] = col & 077; + } + + /* Now set parity */ + for (i = 0; i < 160; i++) + out[i] |= 0100 ^ parity_table[(int)out[i]]; + out[0] |= 0x80; /* Set record mark */ + i = 160; + fwrite(out, 1, i, outfile); + + /* copy the binary file */ + do { + for (i = 0; i < 160; i++) { + j = fgetc(infile); + if (feof(infile)) + break; + fputc(j,outfile); + } + } while(!feof(infile)); + j = 0; + } while(!feof(ctfile)); +} diff --git a/tools/sds_libmk.dSYM/Contents/Info.plist b/tools/sds_libmk.dSYM/Contents/Info.plist new file mode 100644 index 0000000..451cfeb --- /dev/null +++ b/tools/sds_libmk.dSYM/Contents/Info.plist @@ -0,0 +1,20 @@ + + + + + CFBundleDevelopmentRegion + English + CFBundleIdentifier + com.apple.xcode.dsym.sds_libmk + CFBundleInfoDictionaryVersion + 6.0 + CFBundlePackageType + dSYM + CFBundleSignature + ???? + CFBundleShortVersionString + 1.0 + CFBundleVersion + 1 + + diff --git a/tools/sds_libmk.dSYM/Contents/Resources/DWARF/sds_libmk b/tools/sds_libmk.dSYM/Contents/Resources/DWARF/sds_libmk new file mode 100644 index 0000000000000000000000000000000000000000..b02e2d8f62146f9925f540e48c83ef86e2aa01a4 GIT binary patch literal 11937 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 Mt}TWwZn3`q0Fqy2 +#include +#include + + +FILE *infile, *outfile, *ctfile; +int btz; +int crbuffer[160]; + +#define eof 027657537 + +char bcd_ascii[64] = { + ' ', /* 0 - space */ + '1', /* 1 1 - 1 */ + '2', /* 2 2 - 2 */ + '3', /* 3 21 - 3 */ + '4', /* 4 4 - 4 */ + '5', /* 5 4 1 - 5 */ + '6', /* 6 42 - 6 */ + '7', /* 7 421 - 7 */ + '8', /* 8 8 - 8 */ + '9', /* 9 8 1 - 9 */ + '0', /* 10 8 2 - 0 */ + '=', /* 11 8 21 - equal */ + '\'', /* 12 84 - apostrophe */ + ':', /* 13 84 1 - colon */ + '>', /* 14 842 - greater than */ + '"', /* 15 8421 - radical 017 {? */ + ' ', /* 16 A - substitute blank */ + '/', /* 17 A 1 - slash */ + 'S', /* 18 A 2 - S */ + 'T', /* 19 A 21 - T */ + 'U', /* 20 A 4 - U */ + 'V', /* 21 A 4 1 - V */ + 'W', /* 22 A 42 - W */ + 'X', /* 23 A 421 - X */ + 'Y', /* 24 A8 - Y */ + 'Z', /* 25 A8 1 - Z */ + '#', /* 26 A8 2 - record mark */ + ',', /* 27 A8 21 - comma */ + '(', /* 28 A84 - paren */ + '`', /* 29 A84 1 - word separator */ + '\\', /* 30 A842 - left oblique */ + '{', /* 31 A8421 - segment mark */ + '-', /* 32 B - hyphen */ + 'J', /* 33 B 1 - J */ + 'K', /* 34 B 2 - K */ + 'L', /* 35 B 21 - L */ + 'M', /* 36 B 4 - M */ + 'N', /* 37 B 4 1 - N */ + 'O', /* 38 B 42 - O */ + 'P', /* 39 B 421 - P */ + 'Q', /* 40 B 8 - Q */ + 'R', /* 41 B 8 1 - R */ + '!', /* 42 B 8 2 - exclamation */ + '$', /* 43 B 8 21 - dollar sign */ + '*', /* 44 B 84 - asterisk */ + ']', /* 45 B 84 1 - right bracket */ + ';', /* 46 B 842 - semicolon */ + '^', /* 47 B 8421 - delta */ + '+', /* 48 BA - ampersand or plus */ + 'A', /* 49 BA 1 - A */ + 'B', /* 50 BA 2 - B */ + 'C', /* 51 BA 21 - C */ + 'D', /* 52 BA 4 - D */ + 'E', /* 53 BA 4 1 - E */ + 'F', /* 54 BA 42 - F */ + 'G', /* 55 BA 421 - G */ + 'H', /* 56 BA8 - H */ + 'I', /* 57 BA8 1 - I */ + '?', /* 58 BA8 2 - question mark 032 */ + '.', /* 59 BA8 21 - period */ + ')', /* 60 BA84 - paren */ + '[', /* 61 BA84 1 - left bracket 035 */ + '<', /* 62 BA842 - less than 036 */ + '}' /* 63 BA8421 - group mark 037 */ +}; + + +/* Returns the BCD of the hollerith code or 0x7f if error */ +int sim_hol_to_bcd(short hol) { + int bcd; + + /* Convert 10,11,12 rows */ + switch (hol & 0xe00) { + case 0x000: + bcd = 0; + break; + case 0x200: + if ((hol & 0x1ff) == 0) + return 10; + bcd = 020; + break; + case 0x400: + bcd = 040; + break; + case 0x600: /* 11-10 Punch */ + bcd = 052; + break; + case 0x800: + bcd = 060; + break; + case 0xA00: /* 12-10 Punch */ + bcd = 072; + break; + default: /* Double punch in 10,11,12 rows */ + return 0x7f; + } + + hol &= 0x1ff; /* Mask rows 0-9 */ + /* Check row 8 punched */ + if (hol & 0x2) { + bcd += 8; + hol &= ~0x2; + } + + /* Convert rows 0-9 */ + while (hol != 0 && (hol & 0x200) == 0) { + bcd++; + hol <<= 1; + } + + /* Any more columns punched? */ + if ((hol & 0x1ff) != 0) + return 0x7f; + return bcd; +} + +unsigned int getascii(int i){ + int a; + + a = ((crbuffer[i] & 077) << 6) + (crbuffer[i+1] & 077); + return(bcd_ascii[sim_hol_to_bcd(a)]); +} + +int main(int argc, char *argv[]) { + unsigned int i,j,n; + int k; + unsigned int cardno = 0; + char numc[12]; + char ofname[64]; + + + btz = 0; + + infile = fopen(argv[1], "rb"); + if (!infile) + { + printf("Cannot open binfile: %s\n", argv[1]); + return 1; + } + ctfile = fopen("ctl","w"); + for (j = 0; j < 160; j++) { + crbuffer[j] = fgetc(infile) & 0xff; + } + cardno++; + do { + i = getascii(0); + if (i != '^') { + printf("Missing control card: %d\n",cardno); + for (j = 0; j < 160; j++) { + printf("%02x ",crbuffer[j]); + if (((j+1) % 0x10) == 0) + printf("\n"); + } + printf("\n"); + } + else { + for (j = 0; j < 160; j+=2) + fprintf(ctfile,"%c",getascii(j)); + for (j = 0; j < 10;j++) + numc[j] = getascii(68+(2*j)); + numc[j] = '\0'; + n = atoi(numc) -2; + + for (j = 0; j < 7; j++) { + ofname[j] = getascii(16+(2*j)); + if (ofname[j] == ' ') { + ofname[j] = '\0'; + outfile = fopen(ofname,"w"); + break; + } + } + + } + do { + for (j = 0; j < 160; j++) { + crbuffer[j] = fgetc(infile) & 0xff; + } + i = getascii(0); + if (i == '^') { + //fclose (outfile); + break; // new deck + } + + if ((crbuffer[1] & 07) != 0x5) { + printf("Not std binary\n"); + exit(1); + } + for (j = 0; j < 160; j++) + fputc(crbuffer[j],outfile); + } while(!feof(infile)); + } while(!feof(infile)); + fclose (ctfile); + fclose (outfile); +} diff --git a/tools/sds_libsplt.dSYM/Contents/Info.plist b/tools/sds_libsplt.dSYM/Contents/Info.plist new file mode 100644 index 0000000..d2e1e43 --- /dev/null +++ b/tools/sds_libsplt.dSYM/Contents/Info.plist @@ -0,0 +1,20 @@ + + + + + CFBundleDevelopmentRegion + English + CFBundleIdentifier + com.apple.xcode.dsym.sds_libsplt + CFBundleInfoDictionaryVersion + 6.0 + CFBundlePackageType + dSYM + CFBundleSignature + ???? + CFBundleShortVersionString + 1.0 + CFBundleVersion + 1 + + diff --git a/tools/sds_libsplt.dSYM/Contents/Resources/DWARF/sds_libsplt b/tools/sds_libsplt.dSYM/Contents/Resources/DWARF/sds_libsplt new file mode 100644 index 0000000000000000000000000000000000000000..121992ffd4e899a4f01c48d436c745b480439901 GIT binary patch literal 12459 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 +#include +#include +#include +#include + +#define TAPE_BUFFER_SIZE 100000L + + +#define TAPE_IRG 0200 +#define BCD_TM 017 + +char buffer[TAPE_BUFFER_SIZE]; +char *xlat; /* Pointer to translate table */ +int eor = 0; /* Report eor */ +int bin = 0; /* Doing binary */ +int p7b = 0; /* Doing BCD tape */ +int mark = 0; /* Show marks */ +int com = 0; /* Show as commercial */ +int cc = 0; /* Process print control chars */ +int ibm029 = 0; /* Translate using IBM 029 codes */ +int auto_bcd = 0; /* Automatic translation of binary */ +int reclen = 130; +int dis = 0; /* Display code */ +int cosy = 0; /* Expand COSY blanks */ +int bci = 0; /* Burroughs BCI code */ +int univac = 0; /* Univac code. */ + +int bytecnt = 0; + + +char parity_table[64] = { + /* 0 1 2 3 4 5 6 7 */ + 0000,0100,0100,0000,0100,0000,0000,0100, + 0100,0000,0000,0100,0000,0100,0100,0000, + 0100,0000,0000,0100,0000,0100,0100,0000, + 0000,0100,0100,0000,0100,0000,0000,0100, + 0100,0000,0000,0100,0000,0100,0100,0000, + 0000,0100,0100,0000,0100,0000,0000,0100, + 0000,0100,0100,0000,0100,0000,0000,0100, + 0100,0000,0000,0100,0000,0100,0100,0000 +}; + +char bcd_ascii[64] = { + '_', /* 0 - space */ + '1', /* 1 1 - 1 */ + '2', /* 2 2 - 2 */ + '3', /* 3 21 - 3 */ + '4', /* 4 4 - 4 */ + '5', /* 5 4 1 - 5 */ + '6', /* 6 42 - 6 */ + '7', /* 7 421 - 7 */ + '8', /* 8 8 - 8 */ + '9', /* 9 8 1 - 9 */ + '0', /* 10 8 2 - 0 */ + '=', /* 11 8 21 - equal */ + '\'', /* 12 84 - apostrophe */ + ':', /* 13 84 1 - colon */ + '>', /* 14 842 - greater than */ + '"', /* 15 8421 - radical 017 {? */ + ' ', /* 16 A - substitute blank */ + '/', /* 17 A 1 - slash */ + 'S', /* 18 A 2 - S */ + 'T', /* 19 A 21 - T */ + 'U', /* 20 A 4 - U */ + 'V', /* 21 A 4 1 - V */ + 'W', /* 22 A 42 - W */ + 'X', /* 23 A 421 - X */ + 'Y', /* 24 A8 - Y */ + 'Z', /* 25 A8 1 - Z */ + '#', /* 26 A8 2 - record mark */ + ',', /* 27 A8 21 - comma */ + '(', /* 28 A84 - paren */ + '`', /* 29 A84 1 - word separator */ + '\\', /* 30 A842 - left oblique */ + '{', /* 31 A8421 - segment mark */ + '-', /* 32 B - hyphen */ + 'J', /* 33 B 1 - J */ + 'K', /* 34 B 2 - K */ + 'L', /* 35 B 21 - L */ + 'M', /* 36 B 4 - M */ + 'N', /* 37 B 4 1 - N */ + 'O', /* 38 B 42 - O */ + 'P', /* 39 B 421 - P */ + 'Q', /* 40 B 8 - Q */ + 'R', /* 41 B 8 1 - R */ + '!', /* 42 B 8 2 - exclamation */ + '$', /* 43 B 8 21 - dollar sign */ + '*', /* 44 B 84 - asterisk */ + ']', /* 45 B 84 1 - right bracket */ + ';', /* 46 B 842 - semicolon */ + '_', /* 47 B 8421 - delta */ + '+', /* 48 BA - ampersand or plus */ + 'A', /* 49 BA 1 - A */ + 'B', /* 50 BA 2 - B */ + 'C', /* 51 BA 21 - C */ + 'D', /* 52 BA 4 - D */ + 'E', /* 53 BA 4 1 - E */ + 'F', /* 54 BA 42 - F */ + 'G', /* 55 BA 421 - G */ + 'H', /* 56 BA8 - H */ + 'I', /* 57 BA8 1 - I */ + '?', /* 58 BA8 2 - question mark 032 */ + '.', /* 59 BA8 21 - period */ + ')', /* 60 BA84 - paren */ + '[', /* 61 BA84 1 - left bracket 035 */ + '<', /* 62 BA842 - less than 036 */ + '}' /* 63 BA8421 - group mark 037 */ +}; + +char bcd029_ascii[64] = { + '#', /* 0 - space */ + '1', /* 1 1 - 1 */ + '2', /* 2 2 - 2 */ + '3', /* 3 21 - 3 */ + '4', /* 4 4 - 4 */ + '5', /* 5 4 1 - 5 */ + '6', /* 6 42 - 6 */ + '7', /* 7 421 - 7 */ + '8', /* 8 8 - 8 */ + '9', /* 9 8 1 - 9 */ + '0', /* 10 8 2 - 0 */ + '@', /* 11 8 21 - equal */ + '?', /* 12 84 - apostrophe */ + ':', /* 13 84 1 - colon */ + '>', /* 14 842 - greater than */ + '}', /* 15 8421 - radical 017 {? */ + ' ', /* 16 A - substitute blank */ + '/', /* 17 A 1 - slash */ + 'S', /* 18 A 2 - S */ + 'T', /* 19 A 21 - T */ + 'U', /* 20 A 4 - U */ + 'V', /* 21 A 4 1 - V */ + 'W', /* 22 A 42 - W */ + 'X', /* 23 A 421 - X */ + 'Y', /* 24 A8 - Y */ + 'Z', /* 25 A8 1 - Z */ + ',', /* 26 A8 2 - record mark */ + '%', /* 27 A8 21 - comma */ + '!', /* 28 A84 - paren */ + '=', /* 29 A84 1 - word separator */ + ']', /* 30 A842 - left oblique */ + '"', /* 31 A8421 - segment mark */ + '|', /* 32 B - hyphen */ + 'J', /* 33 B 1 - J */ + 'K', /* 34 B 2 - K */ + 'L', /* 35 B 21 - L */ + 'M', /* 36 B 4 - M */ + 'N', /* 37 B 4 1 - N */ + 'O', /* 38 B 42 - O */ + 'P', /* 39 B 421 - P */ + 'Q', /* 40 B 8 - Q */ + 'R', /* 41 B 8 1 - R */ + '$', /* 42 B 8 2 - exclamation */ + '*', /* 43 B 8 21 - dollar sign */ + '-', /* 44 B 84 - asterisk */ + ')', /* 45 B 84 1 - right bracket */ + ';', /* 46 B 842 - semicolon */ + '{', /* 47 B 8421 - delta */ + '+', /* 48 BA - ampersand or plus */ + 'A', /* 49 BA 1 - A */ + 'B', /* 50 BA 2 - B */ + 'C', /* 51 BA 21 - C */ + 'D', /* 52 BA 4 - D */ + 'E', /* 53 BA 4 1 - E */ + 'F', /* 54 BA 42 - F */ + 'G', /* 55 BA 421 - G */ + 'H', /* 56 BA8 - H */ + 'I', /* 57 BA8 1 - I */ + '.', /* 58 BA8 2 - question mark 032 */ + '[', /* 59 BA8 21 - period */ + '&', /* 60 BA84 - paren */ + '(', /* 61 BA84 1 - left bracket 035 */ + '<', /* 62 BA842 - less than 036 */ + '~' /* 63 BA8421 - group mark 037 */ +}; + + +char bci_ascii[64] = { + '0', /* 0 - space */ + '1', /* 1 1 - 1 */ + '2', /* 2 2 - 2 */ + '3', /* 3 21 - 3 */ + '4', /* 4 4 - 4 */ + '5', /* 5 4 1 - 5 */ + '6', /* 6 42 - 6 */ + '7', /* 7 421 - 7 */ + '8', /* 8 8 - 8 */ + '9', /* 9 8 1 - 9 */ + '#', /* 10 8 2 - 0 */ + '@', /* 11 8 21 - atsign */ + '?', /* 12 84 - question */ + ':', /* 13 84 1 - colon */ + '>', /* 14 842 - greater than */ + '}', /* 15 8421 - greater or equal */ + '+', /* 48 BA - ampersand or plus */ + 'A', /* 49 BA 1 - A */ + 'B', /* 50 BA 2 - B */ + 'C', /* 51 BA 21 - C */ + 'D', /* 52 BA 4 - D */ + 'E', /* 53 BA 4 1 - E */ + 'F', /* 54 BA 42 - F */ + 'G', /* 55 BA 421 - G */ + 'H', /* 56 BA8 - H */ + 'I', /* 57 BA8 1 - I */ + '.', /* 58 BA8 2 - period */ + '[', /* 59 BA8 21 - left bracket */ + '&', /* 60 BA84 - and */ + '(', /* 61 BA84 1 - left paren 035 */ + '<', /* 62 BA842 - less than 036 */ + '~', /* 63 BA8421 - left arrow 037 */ + '|', /* 32 B - bar */ + 'J', /* 33 B 1 - J */ + 'K', /* 34 B 2 - K */ + 'L', /* 35 B 21 - L */ + 'M', /* 36 B 4 - M */ + 'N', /* 37 B 4 1 - N */ + 'O', /* 38 B 42 - O */ + 'P', /* 39 B 421 - P */ + 'Q', /* 40 B 8 - Q */ + 'R', /* 41 B 8 1 - R */ + '$', /* 42 B 8 2 - dollar sign */ + '*', /* 43 B 8 21 - asterisk */ + '-', /* 44 B 84 - minus */ + ')', /* 45 B 84 1 - right paren */ + ';', /* 46 B 842 - semicolon */ + '{', /* 47 B 8421 - less or equal */ + ' ', /* 16 A - substitute blank */ + '/', /* 17 A 1 - slash */ + 'S', /* 18 A 2 - S */ + 'T', /* 19 A 21 - T */ + 'U', /* 20 A 4 - U */ + 'V', /* 21 A 4 1 - V */ + 'W', /* 22 A 42 - W */ + 'X', /* 23 A 421 - X */ + 'Y', /* 24 A8 - Y */ + 'Z', /* 25 A8 1 - Z */ + ',', /* 26 A8 2 - comma */ + '%', /* 27 A8 21 - percent */ + '!', /* 28 A84 - not equal */ + '=', /* 29 A84 1 - equal */ + ']', /* 30 A842 - right brack */ + '"' /* 31 A8421 - qoute */ +}; + + +char dis_ascii[64] = { + ':', /* 0 - space */ + 'A', /* 1 1 - 1 */ + 'B', /* 2 2 - 2 */ + 'C', /* 3 21 - 3 */ + 'D', /* 4 4 - 4 */ + 'E', /* 5 4 1 - 5 */ + 'F', /* 6 42 - 6 */ + 'G', /* 7 421 - 7 */ + 'H', /* 8 8 - 8 */ + 'I', /* 9 8 1 - 9 */ + 'J', /* 10 8 2 - 0 */ + 'K', /* 11 8 21 - equal */ + 'L', /* 12 84 - apostrophe */ + 'M', /* 13 84 1 - colon */ + 'N', /* 14 842 - greater than */ + 'O', /* 15 8421 - radical 017 {? */ + 'P', /* 16 A - substitute blank */ + 'Q', /* 17 A 1 - slash */ + 'R', /* 18 A 2 - S */ + 'S', /* 19 A 21 - T */ + 'T', /* 20 A 4 - U */ + 'U', /* 21 A 4 1 - V */ + 'V', /* 22 A 42 - W */ + 'W', /* 23 A 421 - X */ + 'X', /* 24 A8 - Y */ + 'Y', /* 25 A8 1 - Z */ + 'Z', /* 26 A8 2 - record mark */ + '0', /* 27 A8 21 - comma */ + '1', /* 28 A84 - paren */ + '2', /* 29 A84 1 - word separator */ + '3', /* 30 A842 - left oblique */ + '4', /* 31 A8421 - segment mark */ + '5', /* 32 B - hyphen */ + '6', /* 33 B 1 - J */ + '7', /* 34 B 2 - K */ + '8', /* 35 B 21 - L */ + '9', /* 36 B 4 - M */ + '+', /* 37 B 4 1 - N */ + '-', /* 38 B 42 - O */ + '*', /* 39 B 421 - P */ + '/', /* 40 B 8 - Q */ + '(', /* 41 B 8 1 - R */ + ')', /* 42 B 8 2 - exclamation */ + '$', /* 43 B 8 21 - dollar sign */ + '=', /* 44 B 84 - asterisk */ + ' ', /* 45 B 84 1 - right bracket */ + ',', /* 46 B 842 - semicolon */ + '.', /* 47 B 8421 - delta */ + '\'', /* 48 BA - ampersand or plus */ + '[', /* 49 BA 1 - A */ + ']', /* 50 BA 2 - B */ + '%', /* 51 BA 21 - C */ + '!', /* 52 BA 4 - D */ + 'a', /* 53 BA 4 1 - E */ + 'b', /* 54 BA 42 - F */ + 'c', /* 55 BA 421 - G */ + 'd', /* 56 BA8 - H */ + 'e', /* 57 BA8 1 - I */ + 'f', /* 58 BA8 2 - question mark 032 */ + 'g', /* 59 BA8 21 - period */ + 'h', /* 60 BA84 - paren */ + 'i', /* 61 BA84 1 - left bracket 035 */ + 'j', /* 62 BA842 - less than 036 */ + ';' /* 63 BA8421 - group mark 037 */ +}; + +char univ_ascii[64] = { + '@', /* 0 - space */ + '[', /* 1 1 - 1 */ + ']', /* 2 2 - 2 */ + '#', /* 3 21 - 3 */ + '_', /* 4 4 - 4 */ + ' ', /* 5 4 1 - 5 */ + 'A', /* 49 BA 1 - A */ + 'B', /* 50 BA 2 - B */ + 'C', /* 51 BA 21 - C */ + 'D', /* 52 BA 4 - D */ + 'E', /* 53 BA 4 1 - E */ + 'F', /* 54 BA 42 - F */ + 'G', /* 55 BA 421 - G */ + 'H', /* 56 BA8 - H */ + 'I', /* 57 BA8 1 - I */ + 'J', /* 33 B 1 - J */ + 'K', /* 34 B 2 - K */ + 'L', /* 35 B 21 - L */ + 'M', /* 36 B 4 - M */ + 'N', /* 37 B 4 1 - N */ + 'O', /* 38 B 42 - O */ + 'P', /* 39 B 421 - P */ + 'Q', /* 40 B 8 - Q */ + 'R', /* 41 B 8 1 - R */ + 'S', /* 18 A 2 - S */ + 'T', /* 19 A 21 - T */ + 'U', /* 20 A 4 - U */ + 'V', /* 21 A 4 1 - V */ + 'W', /* 22 A 42 - W */ + 'X', /* 23 A 421 - X */ + 'Y', /* 24 A8 - Y */ + 'Z', /* 25 A8 1 - Z */ + ')', /* 6 42 - 6 */ + '-', /* 7 421 - 7 */ + '+', /* 8 8 - 8 */ + '<', /* 9 8 1 - 9 */ + '=', /* 10 8 2 - 0 */ + '>', /* 11 8 21 - equal */ + '&', /* 12 84 - apostrophe */ + '$', /* 13 84 1 - colon */ + '*', /* 14 842 - greater than */ + '(', /* 15 8421 - radical 017 {? */ + '%', /* 16 A - substitute blank */ + ':', /* 17 A 1 - slash */ + '?', /* 26 A8 2 - record mark */ + '!', /* 27 A8 21 - comma */ + '\'', /* 28 A84 - paren */ + '\\', /* 29 A84 1 - word separator */ + '0', /* 30 A842 - left oblique */ + '1', /* 31 A8421 - segment mark */ + '2', /* 32 B - hyphen */ + '3', /* 42 B 8 2 - exclamation */ + '4', /* 43 B 8 21 - dollar sign */ + '5', /* 44 B 84 - asterisk */ + '6', /* 45 B 84 1 - right bracket */ + '7', /* 46 B 842 - semicolon */ + '8', /* 47 B 8421 - delta */ + '9', /* 48 BA - ampersand or plus */ + '`', /* 58 BA8 2 - question mark 032 */ + ';', /* 59 BA8 21 - period */ + '/', /* 60 BA84 - paren */ + '.', /* 61 BA84 1 - left bracket 035 */ + '=', /* 62 BA842 - less than 036 */ + '!' /* 63 BA8421 - group mark 037 */ +}; + + +void usage() { + fprintf(stderr,"SDS listtape\n"); + fprintf(stderr," Use no options, simply type \"sds_listtape \"\n"); + + fprintf(stderr,"Usage: listtape [-b] [-e] [-p] [-r#] \n"); + fprintf(stderr," -r#: Characters per record #\n"); + fprintf(stderr," -a: Auto Binary/BCD translation\n"); + fprintf(stderr," -b: Use IBSYS binary translation\n"); + fprintf(stderr," -d: Use CDC Display Code translation\n"); + fprintf(stderr," -9: Use IBM029 translation\n"); + fprintf(stderr," -m: Show record marks |\n"); + fprintf(stderr," -e: Show end of records as {\n"); + fprintf(stderr," -p: Read BCD tape instead of TAP format\n"); + fprintf(stderr," -c: Print with commerical charset\n"); + fprintf(stderr," -l: Process listing control chars\n"); + fprintf(stderr," -i: Display BCI character encoding\n"); + fprintf(stderr," -u: Use univac character encoding\n"); + fprintf(stderr," -z: Display CDC Cosy records\n"); + exit(1); +} + +/* Read one record from tape */ +int read_tape(FILE *f, int *len) { + unsigned long int sz; + *len = 0; + if (p7b) { + static unsigned char lastchar = 0xff; + unsigned char ch; + sz = 0; + if (lastchar != 0xff) + buffer[sz++] = lastchar; + /* Check if last char was Tape Mark */ + else if (lastchar == (BCD_TM|TAPE_IRG)) { + lastchar = 0xff; + *len = -1; + return 1; + } + lastchar = 0xff; + while(fread(&ch, sizeof(unsigned char), 1, f) == 1) { + if (ch & TAPE_IRG) { + lastchar = ch; + *len = sz; + return 1; + } + buffer[sz++] = ch; + } + if (sz != 0) { + *len = sz; + return 1; + } + return 0; + } else { + unsigned char xlen[4]; + int i; + if (fread(&xlen, sizeof(unsigned char), 4, f) != 4) + return 0; + bytecnt += 4; + + /* Convert to number */ + sz = xlen[0]; + sz |= (xlen[1]) << 8; + sz |= (xlen[2]) << 16; + sz |= (xlen[3]) << 24; + + /* skip over Erase Gap codes */ + while (sz == -2) { + if (fread(&xlen, sizeof(unsigned char), 4, f) != 4) + return 0; + bytecnt += 4; + + /* Convert to number */ + sz = xlen[0]; + sz |= (xlen[1]) << 8; + sz |= (xlen[2]) << 16; + sz |= (xlen[3]) << 24; + } + + /* Check for EOM */ + if (sz == 0xffffffff) { + *len = -2; + return 0; + } + /* Check for EOF */ + if (sz == 0) { + *len = -1; + return 1; + } + if (sz > TAPE_BUFFER_SIZE) { + fprintf(stderr, "Block to big for buffer @%x %lx\n",bytecnt,sz); + return 0; + } + *len = sz; + sz = 0x7fffffff & ((sz + 1) & ~1); + if (fread(buffer, 1, sz, f) != sz) { + fprintf(stderr, "read error\n"); + return 0; + } + bytecnt += sz; + /* Read backward length */ + fread(&sz, sizeof(unsigned char), 4, f); + bytecnt += 4; + } + return 1; +} + + + +int main(int argc, char *argv[]) { + int sz; + int i; + int col; + char *p; + FILE *tape; + int cosy_rec; + + xlat = &bcd_ascii[0]; + while(--argc && **(++argv) == '-') { + switch(tolower((*argv)[1])) { + case 'r': + reclen = atoi(&(*argv)[2]); + fprintf(stderr,"Recordlen set: %d\n",reclen); + break; + case 'a': + auto_bcd = 1; + break; + case 'e': + eor = 1; + break; + case 'd': + dis = 1; + xlat = &dis_ascii[0]; + break; + case 'b': + bin = 1; + break; + case 'p': + p7b = 1; + break; + case 'm': + mark = 1; + break; + case 'c': + com = 1; + break; + case 'l': + cc = 1; + break; + case 'u': + univac = 1; + xlat = &univ_ascii[0]; + break; + case 'i': + bci = 1; + xlat = &bci_ascii[0]; + break; + case '9': + ibm029 = 1; + xlat = &bcd029_ascii[0]; + break; + case 'z': + cosy = 1; + break; + default: + fprintf(stderr,"Unknown option: %s\n",*argv); + } + } + + if(argc != 1) { + usage(); + } + + /* Open input */ + if((tape = fopen(*argv,"rb")) == NULL) { + fprintf(stderr,"Can't open tape file %s: ",*argv); + perror(""); + exit(1); + } + + bytecnt = 0; + + /* Process records of the file */ + while(read_tape(tape, &sz)) { + cosy_rec = 0; + if (sz == -2) + break; + if (sz == -1) + puts("*EOF*"); + else { + p = buffer; + col = 0; + for(i = 0; i < sz; i++) { + char ch = *p++; + if (auto_bcd) { + if (parity_table[ch & 077] == (ch & 0100)) + bin = 0; + else + bin = 1; + } + ch &= 077; + if (bin) { + ch ^= (ch & 020) << 1; + if (ch == 012) + ch = 0; + else if (ch == 0) + ch = 012; + } + if (ch == 032 && !(dis | univac | bci)) { + if (mark) { + putchar(xlat[ch]); + col++; + } else { + putchar('\n'); + col = 0; + } + } else { + int asc = xlat[ch]; + if (cosy) { + if (ch == 0) + asc = '\n'; + else if (ch >= 064) { + int bl = ch - 062; + asc = ' '; + if (ch >= 074) + bl = 10 * (ch - 073); + while(--bl > 0) { + putchar(' '); + col++; + } + } + } + if (com) { + switch(asc) { + case '+': asc = '&'; break; + case '(': asc = '%'; break; + case '\'': asc = '@'; break; + } + } + if (cc && col == 0) { + switch(asc) { + case '1': putchar('\f'); break; + case '2': putchar('\n'); + case '0': putchar('\n'); + default: break; + } + } else + putchar(asc); + if((++col == reclen && sz != (i+1))){ + putchar('\n'); + col = 0; + } + } + } + if (eor) + putchar('{'); + putchar('\n'); + } + } + fclose(tape); +} diff --git a/tools/sds_listtape.dSYM/Contents/Info.plist b/tools/sds_listtape.dSYM/Contents/Info.plist new file mode 100644 index 0000000..b970e83 --- /dev/null +++ b/tools/sds_listtape.dSYM/Contents/Info.plist @@ -0,0 +1,20 @@ + + + + + CFBundleDevelopmentRegion + English + CFBundleIdentifier + com.apple.xcode.dsym.sds_listtape + CFBundleInfoDictionaryVersion + 6.0 + CFBundlePackageType + dSYM + CFBundleSignature + ???? + CFBundleShortVersionString + 1.0 + CFBundleVersion + 1 + + diff --git a/tools/sds_listtape.dSYM/Contents/Resources/DWARF/sds_listtape b/tools/sds_listtape.dSYM/Contents/Resources/DWARF/sds_listtape new file mode 100644 index 0000000000000000000000000000000000000000..cc62b46d19deb46ea017d59afc4027e475c1fea6 GIT binary patch literal 14463 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 literal 0 HcmV?d00001 diff --git a/tools/sds_nm.c b/tools/sds_nm.c new file mode 100644 index 0000000..f70decf --- /dev/null +++ b/tools/sds_nm.c @@ -0,0 +1,258 @@ +/* sdsnm.c - produce namelist for SDS binary object file */ + +/* created by Ken Rector, Aug 23, 2020 */ + + +#include +#include +#include + + +#define eof 027657537 + + +FILE *infile, *outfile; + +const char sds930_to_ascii[64] = { + '0', '1', '2', '3', '4', '5', '6', '7', + '8', '9', ' ', '=', '\'', ':', '>', '%', /* 17 = check mark */ + '+', 'A', 'B', 'C', 'D', 'E', 'F', 'G', + 'H', 'I', '?', '.', ')', '[', '<', '@', /* 37 = stop code */ + '-', 'J', 'K', 'L', 'M', 'N', 'O', 'P', + 'Q', 'R', '!', '$', '*', ']', ';', '^', /* 57 = triangle */ + ' ', '/', 'S', 'T', 'U', 'V', 'W', 'X', + 'Y', 'Z', '?', ',', '(', '~', '\\', '#' /* 72 = rec mark */ +}; /* 75 = squiggle, 77 = del */ + +typedef struct df { + int lbl1; + int lbl2; + int value; + int bias; +} df; + +df def[1000]; +df adef[1000]; +df ref[1000]; +int ddd = 0; +int addd = 0; +int rddd = 0; +int bias = 0; +int fbias = 0; + +unsigned int get24(){ + unsigned int i; + + i = fgetc(infile) & 077; + i = i<<6 | (fgetc(infile) & 077); + i = i<<6 | (fgetc(infile) & 077); + i = i<<6 | (fgetc(infile) & 077); + return(i); +} + +unsigned int get24bcd(){ + unsigned int i; + + i = sds930_to_ascii[fgetc(infile) & 077]; + i = (sds930_to_ascii[fgetc(infile) & 077]) << 8 | i; + i = (sds930_to_ascii[fgetc(infile) & 077]) << 16 | i; + i = (sds930_to_ascii[fgetc(infile) & 077]) << 24 | i; + return(i); +} + +int cmpfnc (const void * a, const void * b) { + df *x = (df *)a; + df *y = (df *)b; + return ( x->value - y->value ); +} + + +int main(int argc, char *argv[]) { + unsigned int i,j,n; + unsigned int bin,type,cksm,cnt; + int len; + int max; + int nf; + + int l1; + int l2; + int val; + char length[24]; + char *lll; + + if (argc < 3) + { + printf("Usage: sds_nm bias binfile ... \n"); + printf("where bias is an octal value defining the origin of\n"); + printf("the first file in a list of object files\n"); + printf("binfile ... is a list of SDS standard binary object files\n"); + exit(1); + } + + i = sscanf(argv[1], "%o", &bias); + if ( i != 1) + printf("invalid bias\n"); + outfile = stdout; + + printf("\n\n EXTERNAL DEFS \n"); + for (nf = 2;nf < argc;nf++) { + infile = fopen(argv[nf], "rb"); + if (!infile) { + printf("Cannot open %s\n", argv[nf]); + return 1; + } + + do { + len = 40; + i = get24(); // control word + len--; + if (feof(infile)) + break; + if (i!=eof) { + if ((bin = (i >> 12) & 07) != 05) { + for (j = 0; j < len;j++) { // skip non binary card + i = get24(); + } + continue; + } + type = i >> 21; // control type + cnt = (i >> 15) & 077; + cnt--; // count this control word + cksm = i & 07777; + switch (type) { + case 0: // data + while (cnt) { + i = get24(); + cnt--; + len--; + } + for (j = 0;j < len;j++) + i = get24(); + break; + case 3: // end + max = get24() & 077777; // save max location + cnt--; + len--; + while (cnt) { + i = get24(); + cnt--; + len--; + } + for (j = 0;j < len;j++) + i = get24(); + break; + case 1: //ext def/ref + while(cnt) { + l1 = get24bcd(); + cnt--; + len--; + l2 = get24bcd(); + cnt--; + len--; + val = get24(); + cnt--; + len--; + def[ddd].value = n & 077777; + switch (val >> 22) { + case 0: // common or program length + break; + case 1: // external ref + for (j = 0; j < rddd;j++) { + if ((l1 == ref[j].lbl1) && + (l2 == ref[j].lbl2)) + break; + } + if (j == rddd) { + ref[rddd].lbl1 = l1; // add ref to list + ref[rddd].lbl2 = l2; + ref[rddd].value = nf; + ref[rddd].bias = bias; + rddd++; + } + break; + case 2: // external def + if (val & 0100000) { + def[ddd].lbl1 = l1; + def[ddd].lbl2 = l2; + def[ddd].value = (val & 077777777); + def[ddd].bias = bias; + ddd++; + } + else { + adef[addd].lbl1 = l1; + adef[addd].lbl2 = l2; + adef[addd].value = (val & 077777777); + addd++; + } + break; + case 3: // external ref w/added item + break; + } + + } + for (j = 0;j < len;j++) + i = get24(); + break; + default: + printf("unknown record type %o\n",i); + } + } + n++; + } while(!feof(infile)); + + qsort(def,ddd,sizeof(df),cmpfnc); + qsort(adef,addd,sizeof(df),cmpfnc); + + + printf("\nFile: %s Load Address: %05o\n",argv[nf],bias); + if (ddd) { + printf("Relocatable:\n"); + for (j = 0; j < ddd; j++) { + printf("\t"); + char *c = (char *)&def[j]; + for (i = 0; i < 8; i++) + printf("%c",*c++); + printf(" %05o",def[j].value & 077777); + printf(" %05o\n",(def[j].value+def[j].bias) & 077777); + } + } + if (addd) { + printf("\n Absolute:\n"); + for (j = 0; j < addd; j++) { + printf("\t"); + char *c = (char *)&adef[j]; + for (i = 0; i < 8; i++) + printf("%c",*c++); + printf(" %05o\n",adef[j].value & 077777); + } + printf("\n"); + } + if (rddd) { + printf("\n Unsatisfied Refs:\n"); + for (j = 0; j < rddd; j++) { + for (n = 0; n < ddd; n++) { + if ((ref[j].lbl1 == def[n].lbl1) && + (ref[j].lbl2 == def[n].lbl2)) + break; + } + if (n == ddd) { + for (n = 0; n < addd; n++) { + if ((ref[j].lbl1 == adef[n].lbl1) && + (ref[j].lbl2 == adef[n].lbl2)) + break; + } + if (n == addd) { + printf("\t%s %s\n",(char *)&ref[j],argv[ref[j].value]); + } + } + } + } + fclose(infile); + ddd = 0; + addd = 0; + rddd = 0; + bias += max; + } + fclose(outfile); +} + diff --git a/tools/sds_nm.dSYM/Contents/Info.plist b/tools/sds_nm.dSYM/Contents/Info.plist new file mode 100644 index 0000000..bac48ce --- /dev/null +++ b/tools/sds_nm.dSYM/Contents/Info.plist @@ -0,0 +1,20 @@ + + + + + CFBundleDevelopmentRegion + English + CFBundleIdentifier + com.apple.xcode.dsym.sds_nm + CFBundleInfoDictionaryVersion + 6.0 + CFBundlePackageType + dSYM + CFBundleSignature + ???? + CFBundleShortVersionString + 1.0 + CFBundleVersion + 1 + + diff --git a/tools/sds_nm.dSYM/Contents/Resources/DWARF/sds_nm b/tools/sds_nm.dSYM/Contents/Resources/DWARF/sds_nm new file mode 100644 index 0000000000000000000000000000000000000000..c01577af86862284ab8b65408df689b0d096f0cb GIT binary patch literal 14022 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 literal 0 HcmV?d00001 diff --git a/tools/sds_pal.dSYM/Contents/Info.plist b/tools/sds_pal.dSYM/Contents/Info.plist new file mode 100644 index 0000000..e93b001 --- /dev/null +++ b/tools/sds_pal.dSYM/Contents/Info.plist @@ -0,0 +1,20 @@ + + + + + CFBundleDevelopmentRegion + English + CFBundleIdentifier + com.apple.xcode.dsym.sds_pal + CFBundleInfoDictionaryVersion + 6.0 + CFBundlePackageType + dSYM + CFBundleSignature + ???? + CFBundleShortVersionString + 1.0 + CFBundleVersion + 1 + + diff --git a/tools/sds_pal.dSYM/Contents/Resources/DWARF/sds_pal b/tools/sds_pal.dSYM/Contents/Resources/DWARF/sds_pal new file mode 100644 index 0000000000000000000000000000000000000000..513c84d7406028ebe5874230a918ffd036a35ec1 GIT binary patch literal 17002 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 +#include + + +FILE *infile, *outfile; +int btz; + +#define eof 027657537 + +unsigned int get24(){ +unsigned int i,j; + + i = (j = fgetc(infile)) & 077; + fputc(j,outfile); + i = i<<6 | ((j = fgetc(infile)) & 077); + fputc(j,outfile); + i = i<<6 | ((j = fgetc(infile)) & 077); + fputc(j,outfile); + i = i<<6 | ((j = fgetc(infile)) & 077); + fputc(j,outfile); + btz += 4; + return(i); +} + +int main(int argc, char *argv[]) +{ + unsigned int i,j,n; + unsigned int bin,type,cksm,cnt; + unsigned int len; + char fl[32]; + int fn; + + btz = 0; + + if (argc != 3) + { + fprintf(stderr,"Split file composed of several object files\n"); + fprintf(stderr,"Usage: sds_splitf binary \n"); + return 1; + } + + infile = fopen(argv[1], "rb"); + if (!infile) + { + fprintf(stderr,"Cannot open binary file: %s\n", argv[1]); + return 1; + } + sprintf(fl,"%s%0.3d",argv[2],fn++); + outfile = fopen(fl,"w"); + + do + { + i = get24(); + if (feof(infile)) + break; + if (i!=eof) + { + bin = (i >> 12) & 07; + if (bin != 05) { + for (j = 1; j < 40; j++) { + i = get24(); + } + continue; + } + type = i >> 21; + cnt = (i >> 15) & 077; + cksm = i & 07777; + printf("%08o ",i); + switch (type) { + case 0: + printf("data "); + break; + case 3: + printf("end "); + break; + case 1: + printf("def/ref "); + break; + default: + printf("unknown %o\n",i); + } + printf("cnt = %o, chksm = %o %d\n",cnt,cksm, btz); + len = 40; + if (type == 0 ) { + i = get24(); + printf("%08o load address = %08o\n",i,i); + cnt--; + len--; + } + for (j = 1; j +#include + + +int main(int argc, char *argv[]) +{ + FILE *infile; + int i; + int card[160]; + + if (argc != 2) { + printf("sds_trmeof - Remove blank cards from a file\n"); + printf("Usage: sds_trmeof binary\n"); + exit(1); + } + infile = fopen(argv[1], "rb"); + if (!infile) + { + + printf("Cannot open binfile: %s\n", argv[1]); + return 1; + } + + while (1) { + i = fread(card,1,160,infile); + if (i == 0) + return 1; + if (card[0] == 0x404040c0) + return 1; + fprintf(stderr," %8x %8x\n",card[0], (card[0] & 0x700)); + + if ((card[0] & 0x700) != 0x500) { + fprintf(stderr,"non binary type record %x\n",card[0]); + return 1; + } + fwrite(card,4,40,stdout); + } +}