IMD 1.16: 31/08/2008 11:01:00 84-93958-02 a000 f95802 sap4 release media    @0|)wwЀЀtQql)  " }gA `_l M@IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIOS4 MF484110608090400841106080904 841106080904 @F95802 VOLSAP4 RELEASE MEDIA (84-93958-02) A000   IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII_l M@iGyy GGG`HZ@ b G`^Y e IQ BBp@;:9 :7P@ G:پN 8!0. * C'xC# b# }B#z @0DAJL w+™ЀЀΖQA1"   i ž} š} @EEFF)DEۄF8 џ} ԟ} ̟} * `jUBBI,v BI, # @ G9H@pܾrCHC C GTq` Lg"gEXC P+s=胾P+c fQN p $Rxnj  ޔniZ ތ⊞ } }HGž Ÿ@ALS)"$ C k20j.h( +$`%ꂜ\1 !M' y %'+os慾)sY ed|{ @8 o O m J K i gN )V% t%sLn`"E F. F„ D>) =`;nrgy w"G,{Kq1 A&}E*`(t@% ;c  765y342(.OS:: SYS"iwvc Bc A@6<# Ic B# gIjHc rOVicEdDanoFCF `IA # 86:*7F%C @qW6TAM 6 6ɀFHXĆ `pEc # 5u@ SOQKM ^*T`"i# # )# h='?|)ҀGQ)F@ @G͢6ɢF@ @F@ @V# @I.#  SI =  SO =  LO = <1B O  "%'. # C @ bUbV)օ5CU Uc # +( h%BJXQlĤVS@6]@/6eR SX U+UGVG0N4H# II00 VI# 0Ir)Q  Ă0)C A# QIQdiA)" brF q H# bdI1ded@ q# eЀy D q # q{b;qex qs] M?RAC @`@K'@``pBC`HARJk%`(C @`(C @U ``p'BDBc # # C @`p ĄBࠁ1^RDĂ DIDc # @ DĂ@ ďS p_ GրXTOPQRKLMNT TrL,L)L(L=eIS ")SFZ) b$߄O K QMrL())rL+^ GPORQLKNMT T3rJQWSˈqHd^FF@GA)Ҁ *.1[)  QJd€eÞ "D L’)<AVSAZ2*BXsST5OYXÀHFԀr )2 bπvÀtFɟnXTQQAT KMX„Kr A)2 bsQrQw)8 bX+JQaހXK# @ B# @ KBM# @ # @ r # @ M)2 brr +L&_NO$HA)2 busQrQqwr*ߤB1X)2 blrXxeX1B(JR+9 b]-3AO# @ XB# @ OBQ# @ # @ QrL,HL FL+DL)A)2 b6s# G) b) bO K QM GS) " cSZ]JQY QW VYQ „\ \ ZrL()# :SIZ1SAZ2<CVX2* JYAv b jmSL=AQHR "fbϞb YJCAXZ# SOZ3 bE WI# `"  # eP`pjP`آ؄ 5 'HѠĀAHHF)IPX)IPTF¿PIPLIH)\IPD)QI@I<Ţp @)2 bsrQA CCCI )# sLOZ5zhyY h%Z4OCCISL.I))Χ _QADDar +iXG 0 ĢNPr ,VAsBSMDEFINITIONS 40ERRORSONLY EXPANDMACROS0FALSECONDS @FIRSTONLY PFORMATSOURCE`IFSANDENDCS pLISTING ~"LISTOBJECT  LISTONPASS1 LISTSPACES MACRODEFS MACHINE  OBJECT PAGESIZE SAVE |XADDRESSING 410 410A0430 @430AP490 `490Ap404 404A495 MAC ASM`" JF KI jOkLEIDIC@`K EIPDI CFQ&`Y`DFF)J%'+J`H}# GSX?JUC @`_RDYQB^Q1E`pLc Mc MAC..%<`"@@} L DJ+%'+DJHIC ` DĄID;H9C @XNX`PU,K KꗀO6AKJ[ -3A# qqqOsq&)\IWQҢw Sڢq6E "0I U[ўc )# VhSn SYDD)ҀG)E6B՞ b͂Є b  VSAS P DE+DQEUU`p%Ec )# SǢDESEE+-E? πDDc )# @? wc )# %XXZ4QQFB ZO Sᢹ6E "0_U`D%'+D` ʟQI0LIğC @i` `(%'`( @1 pt)`pDc # # XhZ)@ Xׄۄ؄܄لaIƀd6I6I)@Qɞz)@eJQ)I)@eeL)@a)1!)@ wVV)@aĀXXNIII#  +$d5A] <' e )@1# _^# d/6C )@ s)Ä))@քڄdb b+ 1KVXāXLgsh f# @ik@) 6FB(Ѐ(,4C @IX ` +` 1YЁ@֨  @@mЁC@``pEB dc `+ `+ 1# yj# =Rd6ҀXXIQEIk@VZj# d6ҀX6XIIk@W[j# @I @ )@@I/@@œI )@I/# 5I x4 MACENT >4 MACLAB >p4 MACRO =4MACRO =4 CMACRO =4 XMACRO =4 XMACRO =4 .ABS "> 6 ASMDATE "7 > BYTE #7 F TEXT #7 N CHAN #5 V8COMMENT #4 ^ COMMON #4 f DOUBLE #; n DPOOL $? vEND $b6 ~ENDC $4 EQU $:  EXTR &4  FLOATING#;  HEAD #5 IFF %0: IFT %.: 0INCLUDE %b4  INITY %<  LINKDATEF5  LOAD &4  LPOOL %6 MACHINE %>  M4D12 &`?  NAM &6 0NOTE 'Z?  OBJECT #!6  OBJNOTE #6 OPTIONS %> 0ORG "> REL "> & RES '7 . ROMMABLE#4 60SAVE '4 >SET $: F SEXT &4 N SHARABLE#4 V SNAM &6 ^0SPACE ' fSYMATT (: nSYMVAL ( : v SYSTEM (X< ~ TASK (k4  TASKEX (6  TEMPLATE(5 0TITL (4  WORD (7  DATA ( 7SIGNAL & WAIT & ENTER &] SCNTX \5 FIELD  SFIELD  SEX &  NXTQUE & LCNTX \E DEQUEN &M DEQUE & ENQUEB &= ENQUEA & GENECC & MOVE &} &COPYU \ .ECC & 6SEARCH  >LOCATE = FINSERT ] NDELETE } VENT   ^HLT   fNOP  nRSK #  vUIS   ~TAQ @ TAX  TAY ` TAK p TAL P TAS 0 TQA @ TQX @ TQY `@ TQK p@ TQL P@ TQS 0@ TXA  TXQ @  TXY `  TXK p  TXL P   TXS 0  TYA ` TYQ @` TYX ` &TYK p` .TYL  P` 6TYS 0` >TKA p FTKQ @p NTKX p VTKY `p ^TKL Pp fTKS 0p nTLA P vTLQ @P ~TLX P TLY `P TLK pP TLS 0P TSA 0 TSQ @0 TSX 0 TSY `0 TSK p0 TSL P0 TPA  TPQ @ TPX  TPY ` TPK p TPL P TPS 0AAA AAQ @AAX  AAY `&AAK p.AAL P6AQA B>AQQ @BFAQX  BNAQY `BVAQK pB^AQL PBfAXA "nAXQ @"vAXX "~AXY `"AXK p"AXL P"AYA bAYQ @bAYX bAYY `bAYK pbAYL PbAKA rAKQ @rAKX rAKY `rAKK prAKL PrALA RALQ @RALX RALY `RALK pRALL PR&ASA 2.ASQ  @26ASX 2>ASY `2FASK p2NASL P2VAPA ^APQ @fAPX nAPY `vAPK p~APL PSAA SAQ @SAX SAY `SAK pSAL PSQQ @CSQA CSQX CSQY `CSQK pCSQL PCSXA #SXQ @#SXX #SXY `#SXK p#SXL P#SYA cSYQ @c&SYX c.SYY `c6SYK pc>SYL PcFSKA  sNSKQ @sVSKX s^SKY `sfSKK psnSKL PsvSLA S~SLQ @SSLX SSLY `SSLK pSSLL PSSSA 3SSQ @3SSX 3SSY `3SSK p3SSL P3SPA SPQ @SPX SPY `SPK pSPL PANAQ @ANAX ANAY `ANAK p&ANAL P.ANAS  06ANQA D>ANQX DFANQY `DNANQK pDVANQL PD^ANQS 0DfANXA $nANXQ @$vANXY `$~ANXK p$ANXL P$ANXS 0$ANYA dANYQ @dANYX dANYK pdANYL Pd ANYS 0dANKA tANKQ @tANKX tANKY `tANKL PtANKS 0tANLA TANLQ @TANLX TANLY `TANLK pTANLS 0T&ANSA 4.ANSQ @46ANSX 4>ANSY `4FANSK  p4NANSL P4VANPA ^ANPQ @fANPX nANPY `vANPK p~ANPL PANPS 0XAQ @XAX XAY `XAK pXAL PXAS 0XQA EXQX EXQY `EXQK pEXQL PEXQS 0EXXA %XXQ @%XXY `%XXK p%XXL P%XXS 0%XYA e&XYQ @e.XYX  e6XYK pe>XYL PeFXYS 0eNXKA uVXKQ @u^XKX ufXKY `unXKL PuvXKS 0u~XLA UXLQ @UXLX UXLY `UXLK pUXLS 0UXSA 5XSQ @5XSX 5XSY `5XSK p5XSL P5XPA XPQ @XPX XPY `XPK pXPL PXPS 0ORAQ @ORAX &ORAY `.ORAK p6ORAL P>ORAS 0FORQA  GNORQX GVORQY `G^ORQK pGfORQL PGnORQS 0GvORXA '~ORXQ @'ORXY `'ORXK p'ORXL P'ORXS 0'ORYA gORYQ @gORYX gORYK pgORYL PgORYS 0gORKA wORKQ @wORKX wORKY `wORKL PwORKS 0wORLA WORLQ @WORLX WORLY `W&ORLK pW.ORLS  0W6ORSA 7>ORSQ @7FORSX 7NORSY `7VORSK p7^ORSL P7fORPA nORPQ @vORPX ~ORPY `ORPK pORPL PORPS 0CAR CQR @ICXR )CYR `iCKR pyCLR PYCAQ @ CAX CAY ` CAK p CAL P CAS 0 CQA ICQX ICQY `ICQK pICQL PI&CQS 0I.CXA )6CXQ @)>CXY `)FCXK  p)NCXL P)VCXS 0)^CYA ifCYQ @inCYX ivC YK pi~CYL PiCYS 0iCLA YCLQ @YCLX YCLY `YCLK pYCLS 0YCKA yCKQ @yCKX yCKY `yCKL PyCKS 0yCSA 9CSQ @9CSX 9CSY `9CSL P9CPA CPQ @&CPX .CPY  `6CPK p>CPL PFCPS 0NNAR VNQR @A^NXR !fNYR `anNKR pqvNLR PQ~NAQ @NAX NAY `NAK pNAL PNQA ANQX ANQY `ANQK pANQL PANXA !NXQ @!NXY `!NXK p!NXL P!NYA aNYQ @aNYX aNYK paNYL PaNKA q&NKQ @q.NKX q6NKY `q>NKL PqFNLA  QNNLQ @QVNLX Q^NLY `QfNLK pQnNSA 1vNSQ @1~NSX 1NSY `1NSK p1NSL P1NPA NPQ @NPX NPY `NPK pNPL PZAR ZQR IZXR )ZYR iARP QRP IXRP )YRP iARM QRM HXRM (&YRM h.IAR  6IQR K>IXR +FIYR kNDAR VDQR J^DXR *fDYR jnSOV vROV ~COV SXAD eRXAD gSAO SQO @SXO SYO `LAO LQO @LXO LYO `EAQ @EAX EAY `EAL PEAK pEAS 0EQA HEQX HEQY `HEQK pH&EQL PH.EQS 0H6EXA (>EXQ @(FEXY  `(NEXK p(VEXL P(^EXS 0(fEYA hnEYQ @hvEYX h~EYK phEYL PhEYS 0hEKA xEKQ @xEKX xEKY `xEKL PxEKS 0xELA XELQ @XELX XELY `XELK pXELS 0XICA ICQ AICX !ICY aOCA OCQ B&OCX ".OCY   b6SBM %>SWM 'FXNXA  NXNXQ C VXNXX # ^XNXY c fCSAQ KnCSAX +vCSAY k~CSAK {CSAL [CSAP CSAS ;CSQA @ CSQX @+CSQY @kCSQK @{CSQL @[CSQP @CSQS @;CSXA CSXQ KCSXY kCSXK {CSXL [CSXP CSXS ;CSYA ` CSYQ `KCSYX `+&CSYK `{.CSYL `[6CSYP `>CSYS `;FCSKA  p NCSKQ pKVCSKX p+^CSKY pkfCSKL p[nCSKP pvCSKS p;~CSLA P CSLQ PKCSLX P+CSLY PkCSLK P{CSLP PCSLS P;CSSA 0 CSSQ 0KCSSX 0+CSSY 0kCSSK 0{CSSL 0[CSSP 0CSMAQ FCSMAX &CSMAY fCSMAK vCSMAL VCSMAP CSMAS 6&CSMQA @.CSMQX  @&6CSMQY @f>CSMQK @vFCSMQL @VNCSMQP @VCSMQS @6^CSMXA fCSMXQ FnCSMXY fvCSMXK v~CSMXL VCSMXP CSMXS 6CSMYA `CSMYQ `FCSMYX `&CSMYK `vCSMYL `VCSMYP `CSMYS `6CSMKA pCSMKQ pFCSMKX p&CSMKY pfCSMKL pVCSMKP pCSMKS p6CSMLA PCSMLQ PFCSMLX P&CSMLY Pf&CSMLK Pv.CSMLP P6CSMLS P6>CSMSA 0FCSMSQ 0FNCSMSX 0&VCSMSY 0f^CSMSK 0vfCSMSL 0VnCSMSP 0vEIN ~DIN CIE ECID GRTCD WRTCE UFMTA FMTQ CFMTX #FMTY cTUM \%PUSHA PUSHQ OPUSHX /PUSHY oPOPA POPQ OPOPX /POPY oSEXQA & FIX R FLOAT R &EXIT &m.FMT  6XNX  >SWAL pfFPUSH C O POP c XSIN aAIB EiAIN qAOB eyAOT %SST COMP CSN NEG IN OUT SELP STRAP UTRAP ROTATE SHIFT CBIT RBIT SBI T TBIT JT  JF  JEQ  JGE  JGT  %JLE  -JLT  5JNE  =IJEQ  EIJNE  MJEQD  UJNED  ]DMS Gg  eDMSE Gg  mIMSE GG _ vJSTE  G' ? JMPE G  JSKE G ADDF G\ SUBF G\ MULF G\ DIVF G\ CSKF G\ IMS  JST  JMP  JSK  CSM   CSME E  CSK   CSKB   CSKE D'?!ADDC !SUBC C'?!ANDE C!#ORE C'?!,XORE C!5DIV !>MUL !G ADDE C !P SUBE C !Y CEA C!b AND !k OR !u XOR ! ADD  & ! SUB  & ! ANDB  ! ORB ! XORB ! ADDB ! SUBB ! CLSN !`EXCH !EXCHB ! EXCHE A !COPY ! COPYB " COPYE @  AY "$ AX "- AQ "6 P "? L "H K "Q S "Z Y "c Q "l X "u A " V Hc66YQA6t@ltXXV# ; 5"? YQ) 1k` lBIĆlB)1[Ćg* fg›hW8o•1”# # ==1a55;i6578"$I . '%'+U ' ` q rIlXX+U# 9a987Y#RI̞IWIVk ' H)T*5Q|Nƀl  ,Y yVĀkB V# + ' # ' # +# mH88851a5kQqWk# WWVXX dQkWGt# 67#"k@L )1K6 l ky# kl8;5=567#Y ]k%5'ji `# 87#k  y 1Ck ,p y# 85=7#' k HAml kWošo  , y GtXXk^# 1a5D76:*785$9  ny 1df  ,yk@jj힄Al C W8o.q'“ XX# 85=51a5x6:*7$b^ VS)@` Ԟ lWXLX BA@A uvwj6X6Xe _^d6ÀXXdX6@Xi6A¡)@BqJBf””l)@#  ;1a87558`?<47/:<5i6$ `(BIdO6A )@A B@ B @d6A) GtA# 857$3 o BHG6 rYmWlo# lhmǀqfr IfY Œy# 1a;5;*767Vgh%..  k@B BHqAlmA kJB@ A XXmWloGtǀd6O6BB# 1a;587%bC `) -u `j6G)@ ` a)@ 傢# e # %'+# C @Iak@Œdec # 988585a57%/  y )1\6 , ykq) 6“klo XX# 85=51a=5G67% `^W # 87;%THIkdQAbWYQJl mq r o̢QC@ 4oQAÀGtDX=XWoo {k)@QBQ€@ $oGokQAbQ̄dv1A6I6I# +=-&N&P&R&Pl# l# l l#  ;*8&F81a5857 &`U HҀr Ξp  G6U@6Zq1ŀloh3B f1΀lh@6 lqo kGo6Qp@6p@<@ loh B@ NG oW” GtXX.# 1a55/5678&     I@IWk V  )1A)1A6kခWVlk@ LL   Le Ǟe €  Le WJeLlk   D6AVkJASGWWXXV  ,_ Gt V# G# 8=f=55557'Z,X|X6`L E Wd@/6U@ ,tLELW @L z `#  7885E558c@6À` @6rM b6AW# @6ȀG G `s# n WW1WW9W `#  /./D1a51/51G.5/A571,[@6Π`,JQn W WW@6@ߢ6 , I`c@6Lc@6ÀW W# # TLLTEQLEGTNEGEHDSUUCSNNEEQNT 1a- --(.8890.5/-;U֘UW W# |/r57/Z/5-[H@6@6J6# |C @ "I ,%'FL +U/phF`xc #  ,ws0(Q)/r57/Z/5-88-@6HJQ֠n cc# |1a/Z57/5-'M 6M WJW# |lQpJQ# # 1a1571/A/5-kp6/6@6AlCnDqErF# 1a/55..2WX X@ ֬XE©F  ¥ ¤DyW6ԀX6Q']" ?6Y /6/6l@@l-6EqQd@6A /6ErLLL prqnc # 555 qG6O)5OkojJQ9MRBq3 q# 5C @QDJ+z)`pDc # 3T+4\4-4 +4-4!*4&/4+//4C%4C**40D&40D++40G;40G--40E<4w>4w=4w<=4w=<4w>=4w=>4w<>4woC @@@鞄C6B p܆c # ko Gj# KQ[ko)5jDCȞ *3+ bjVŒLL6B# L)orQPCQViKko)5fd VG1EG0/Ȟp6T `+oЀml$ G K ďjj# 58ml# ml# QPQPQP @IQPLL# hi# cd# $^_# YZ# mQ# mlP# l# 344445 \L)oǀQP՞@B 1Q 1I @ Ğ& lm1A # P3B !II5# N#  N # BqKKQP@IIIMMIԂQAIlIm# 334q4t3-54G6# @I T wy6Dn6Cu# jr# 5wAăQPAQP ߄# Z6Đe# 6sĉ# C @C @ pU6ŀ4ą    ܉jD9Qc c # C @C @ p,QPNąQP@ą܃܉f'c c # 557 C# p(܀ # 8855ELC AIC @X6)@@@&)@ `+ `+aF aVC pIăI)@c # # 1PAGE   SI =  SO =  LI = 5|[`pBc # A498C @`1ǤZ\]Yjj )# 99p9'9@9pgBI` * )QGIY`֞I`) @Q8IQ3I @`Q.@(Z - )` `]j6TI '@IQ I`Is]jj `)QBIQQBI@ II | pĂc # 8998<<9C @I Td o6]]] K păc # 889-C @`1ä]\\@*\d@o6̪]Rq ]UB4]y]-T)S]c # k%'ji#  99 ž.IV̞KL :%C 'oVA# 98<<=8:9' !jj6C @šðvQssąv`")%@ 0 9 *N9Qc # 00:C @L p%C ']k%-S 'ji]T4c # :*C @h)@BFhg@c # 5:<,C @)@¦⦠@k|`pE Ÿ I HC @—c `H%'`H+ HqoI@c # 6:oim:J:I:L:O:o:K@:M@:N@:w:Gh p+DBI1CD6L@A+*QIgc @``pE)`@1A+Cl, .r y p+@AC @A ` )@ %'4c C @`pLc # =:EO6; C @YLhl mfq r oc # Y‡ †y# ;*gh6;*cC @ )1)ܤY1i     oC6Broрr @6EXD p܆c # lmqoA@ā֤G# l̀mɀ6q#  ḠG# =f=55; # {85;wC @)GItXGXC @^1߀fhU1F1D?6AXX lqn r GtXXfe ӀQ((K 6 6^ ^Me lrqn Gt<^e  #``pH`1I ^ ^c GtXc # 7Y<F%=<C @BqC `{Cc # =U<' _1G_19|^# =U<<4_1N^1H/6C@@BPE`L`PUY_ `dcelip P}z1;NTJ sltw}l@ UQSMO `*V`"i# # )# @?|IQ) @ @IϢ6ˢ @ @ @ @Q# )L!I.#  SI =  SO =  LO = >@C!&>͢#  SAP4 ( A000)  SAP4 ( A000) C @`PH`pDc # C @`P*-I)%C *V;LJU /GJ :QT MNWXYZ[ 9D'A @ ``pDc # 7 1*-# # C @`Pqa c # p֠cȄ p)zIGGC @_ mEEf i=$6 b $ ɂ¤DDSҠ_܃cS p c zGG)c #  pr z @1HX@B;@@1 CC @_` _a p_ČI)b "^&+&c_ ā܃IbC _C Uc # yC @ a `I_ c@ UD@k{`"`#_`c # C @`_a`c # C @`PǠ_1 Sca  _ I_C bC Uc_b&_ păa a_J_@c3SBI_ `pDc # @P1@ HI 0zH Ƅ`" # IkceH# b"ꂎ֋QAŐT&# @1@4`PE@p ÂbGAKKzQ@  I?`%5`C+`I 5'³ 1A°@`lz)&$" # Ož "%'. # C @ b+Wb X)؅5c # l)+( ;BJI@"@b&# H# @3HSA@D6֦QBI@"@bISX 펔BW+WXR#R&o ۀnk/o`I@+kU%K EJ  .J)   5'o)Ȅ ÂĄ/H# II¶IXQA& 펥A7&2 I&%ǐ JQ L I# @H)># )~t Ăqz: GAC#  QKQdeGA mEf i=$z66H6&/6G6GH#    m # M?RAC @`@K'@``pBC`HARJk%`(C @`(C @U ``p'BDBc # # # ;C @놏I )c # $ ASSIGN LUN: THEN TYPE REENTER m  IրZTQRSTMNOPV VzL,L)L(L=KES $5SN*.yVSAQ M SOzL(SzL+R IRQTSNMPOV VH̢ւ֐ՄSƀyA (HJzJQYĂȄEBSՈmȢk LIOyNyJH[HJ@IA' Ʈ#1Y)  QHfž $D L‘);1LP)ST ǀZÀJHԀz D:|Ā}HȟmZVQQAV MOZ„Mz GAD:{QzQt)@ bZ+JQ_܀ZM# @ B# @ MBO# @ # @ z # @ Ozz +M&NO9, 5GAD:{QzQptz*ߤB1ZmzZ'@eZ1B(JR+A b]-3AQ# @ ZB# @ QBS# @ # @ SzL,HL FL+DL)GAD:{# ǂ҄Q M SO IʄESH)ƀĞy $) cS\jLQ[ Qd VQ ɞ̂@I6CIIS 悘 \zL()ₒ# ,SIW^X;SO1 L[GArEhSL=AGGW $eaɞabZXy [LCAU\# ǢSOyNy (JJH Y4I# `"  # 傐 "b "b# LO)l3@ 35  3/3` /P p @5 5ꉂD@@)IP%*,IP*&* IP*(I *)IP)~I* I͢Ţp @)$łńĄ P)L˞K yz:D:G{ G)L!LD›Gl CDŽCI );UCCIUL ?@ HÀHBHK))G6κ _QAFBSz +hLL  b"U Ģ=2:z ,BAzItSMDEFINITIONS ERRORSONLY EXPANDMACROS0FALSECONDS @FIRSTONLY PFORMATSOURCE`IFSANDENDCS pLISTING LISTOBJECT LISTONPASS1 LISTSPACES MACRODEFS MACHINE VOBJECT PAGESIZE  MAC.. Filename>9@CH(`"@@} L DJ+%'+DJ9ICI @bEdJ ` DĄID(C @XNX`PW,K KꏀI6AKJ] -3A# l 1  q)IYQn SӢI W"ŀ]lc )# ;ǀUm U[FBI)G6Bޞ݂ݐܐSJQLՄ WSAƢƂTT P FG+&FQEWW`p%Ec )# UπFG&+G+&$G ̀FBc )# @ wc )# !nXX)UF[:@1H \J Sᢺ ĂW`D%'+D` ʟRII @"@b\HIğC @i` `(%'`( @1 pt)`pDc # # ; '@ k:M. 6AyAMj#  @f)@ Xׄ؄܄لaIƀd6I6I)@Qɞz)@eJQ)I)@eeL)@a)1!)@ wVV)@aĀXXNIII# 0 &8v , B 3> e )@1# _^# d/6C )@ s)Ä))@քڄdb b+ 1KVXāXLgsh f# @ik@) 6FB(Ѐ(,4C @IX `+` 1YЁ@֨  @@mЁC@``pEB dc `+ `+ 1# yj# ?pd6ҀXXIQEȞIk@VZj# d6ҀX6XIIk@W[j# @I @ )@@I/@@œI )@I/# 7 >>> >> >)  **** GRAND-TOTALS **** ERRORS ( WARNINGS ( )@edX@6,@6A,@6AX `Gt)@Y  # B Q۞ QXYX    )1Bʞ )1BŞ )1Lc # `  W±   |dO6 Gt )1 )1,6XYXK #  4;x:?Bm+%88&9 0#C @C AL "L &)@ VQNQ@I p @V1c #  S$$) gBLANK  ]0SEGMENTENDM @4 qMACENT @o4 yMACLAB @4 MACRO @d4MACRO @d4 CMACRO @d4 XMACRO @d4 XMACRO @d4 ABS % > ASMDATE %l7 BYTE %7 TEXT %7 CHAN & 5 8COMMENT &44 COMMON &E4 DOUBLE &h; DPOOL &? END &6 ENDC 'K4 EQU 'm: EXTR )@4  FLOATING&r;  HEAD & 5 !IFF ': )IFT ': 10INCLUDE '4 9 INITY (+< A LINKDATET 5 I LOAD )D4 Q LPOOL (d6 YMACHINE (q> a M4D12 (? i NAM )<6 q0NOTE )? y OBJECT %6 OBJNOTE %6 OPTIONS (s> 0ORG %5> REL %"> RES * 7 ROMMABLE&G4 0SAVE *<4 SET 'o: SEXT )B4 SHARABLE&I4 SNAM )>6 0SPACE *T SYMATT *: SYMVAL *: SYSTEM *< TASK *4 TASKEX +6 TEMPLATE+#50TITL +L4 WORD +z7! DATA +z7SIGNAL &1WAIT &9ENTER &]ASCNTX \5IFIELD QSFIELD YSEX & aNXTQUE &iLCNTX \EqDEQUEN &MyDEQUE &ENQUEB &=ENQUEA &GENECC &MOVE &}COPYU \ECC &SEARCH LOCATE =INSERT ]DELETE }ENT  HLT  NOP RSK # UIS  TAQ @TAX  TAY `TAK pTAL P!TAS 0)TQA @1TQX @9 TQY `@ATQK p@ITQL P@QTQS 0@YTXA aTXQ @ iTXY ` qTXK p yTXL P TXS 0 TYA `TYQ @`TYX `TYK p`TYL P`TYS 0`TKA pTKQ @pTKX pTKY `pTKL PpTKS 0pTLA PTLQ @PTLX PTLY `P TLK pPTLS 0PTSA 0!TSQ @0)TSX 01TSY `09TSK p0ATSL P0ITPA QTPQ @YTPX aTPY `iTPK pqTPL PyTPS 0AAA AAQ @AAX AAY `AAK pAAL PAQA BAQQ @BAQX BAQY `BAQK pBAQL PBAXA "AXQ @"AXX "AXY `"AXK p" AXL P"AYA bAYQ @b!AYX b)AYY `b1AYK pb9AYL PbAAKA rIAKQ @rQAKX rYAKY `raAKK priAKL PrqALA RyALQ @RALX RALY `RALK pRALL PRASA 2ASQ @2ASX 2ASY `2ASK p2ASL P2APA APQ @APX APY `APK pAPL PSAA  SAQ @SAX SAY `!SAK p)SAL P1SQQ @C9SQA CASQX CISQY `CQSQK pCYSQL PCaSXA #iSXQ @#qSXX #ySXY `#SXK p#SXL P#SYA cSYQ @cSYX cSYY `cSYK pcSYL PcSKA sSKQ @sSKX sSKY `sSKK psSKL PsSLA SSLQ @SSLX S SLY `SSLK pSSLL PS!SSA 3)SSQ @31SSX 39SSY `3ASSK p3ISSL P3QSPA YSPQ @aSPX iSPY `qSPK pySPL PANAQ @ANAX ANAY `ANAK pANAL PANAS 0ANQA DANQX DANQY `DANQK pDANQL PDANQS 0DANXA $ANXQ @$ANXY `$ANXK p$ANXL P$ ANXS 0$ANYA dANYQ @d!ANYX d)ANYK pd1ANYL Pd9ANYS 0dAANKA tIANKQ @tQANKX tYANKY `taANKL PtiANKS 0tqANLA TyANLQ @TANLX TANLY `TANLK pTANLS 0TANSA 4ANSQ @4ANSX 4ANSY `4ANSK p4ANSL P4ANPA ANPQ @ANPX ANPY `ANPK pANPL PANPS 0 XAQ @XAX XAY `!XAK p)XAL P1XAS 09XQA EAXQX EIXQY `EQXQK pEYXQL PEaXQS 0EiXXA %qXXQ @%yXXY `%XXK p%XXL P%XXS 0%XYA eXYQ @eXYX eXYK pe XYL PeXYS 0eXKA uXKQ @uXKX uXKY `uXKL PuXKS 0uXLA UXLQ @U XLX UXLY `UXLK pU!XLS 0U)XSA 51XSQ @59XSX 5AXSY `5IXSK p5QXSL P5YXPA aXPQ @iXPX qXPY `yXPK pXPL PXPS 0ORAQ @ORAX ORAY `ORAK pORAL PORAS 0ORQA GORQX GORQY `GORQK pGORQL PGORQS 0GORXA 'ORXQ @'ORXY `' ORXK p'ORXL P'ORXS 0'!ORYA g)ORYQ @g1ORYX g9ORYK pgAORYL PgIORYS 0gQORKA wYORKQ @waORKX wiORKY `wqORKL PwyORKS 0wORLA WORLQ @WORLX WORLY `WORLK pWORLS 0WORSA 7ORSQ @7ORSX 7ORSY `7ORSK p7ORSL P7ORPA ORPQ @ORPX ORPY `ORPK p ORPL PORPS 0CAR !CQR @I)CXR )1CYR `i9CKR pyACLR PYICAQ @ QCAX YCAY ` aCAK p iCAL P qCAS 0 yCQA ICQX ICQY `ICQK pICQL PICQS 0ICXA )CXQ @)CXY `)CXK p)CXL P)CXS 0)CYA iCYQ @iCYX iCYK piCYL PiCYS 0i CLA YCLQ @YCLX Y!CLY `Y)CLK pY1CLS 0Y9CKA yACKQ @yICKX yQCKY `yYCKL PyaCKS 0yiCSA 9qCSQ @9yCSX 9CSY `9CSL P9CPA CPQ @CPX CPY `CPK pCPL PCPS 0NAR NQR @ANXR !NYR `aNKR pqNLR PQNAQ @NAX  NAY `NAK pNAL P!NQA A)NQX A1NQY `A9NQK pAANQL PAINXA !QNXQ @!YNXY `!aNXK p!iNXL P!qNYA ayNYQ @aNYX aNYK paNYL PaNKA qNKQ @qNKX qNKY `qNKL PqNLA QNLQ @QNLX QNLY `QNLK pQNSA 1NSQ @1NSX 1NSY `1 NSK p1NSL P1NPA !NPQ @)NPX 1NPY `9NPK pANPL PIZAR QZQR IYZXR )aZYR iiARP qQRP IyXRP )YRP iARM QRM HXRM (YRM hIAR IQR KIXR +IYR kDAR DQR JDXR *DYR jSOV ROV COV SXAD e RXAD gSAO SQO @!SXO )SYO `1LAO 9 LQO @ALXO ILYO `QEAQ @YEAX aEAY `iEAL PqEAK pyEAS 0EQA HEQX HEQY `HEQK pHEQL PHEQS 0HEXA (EXQ @(EXY `(EXK p(EXL P(EXS 0(EYA hEYQ @hEYX hEYK phEYL Ph EYS 0hEKA xEKQ @x!EKX x)EKY `x1EKL Px9EKS 0xAELA XIELQ @XQELX XYELY `XaELK pXiELS 0XqICA yICQ AICX !ICY aOCA OCQ BOCX "OCY bSBM %SWM 'XNXA  XNXQ C XNXX # XNXY c CSAQ KCSAX +CSAY kCSAK {CSAL [ CSAP CSAS ;CSQA @ !CSQX @+)CSQY @k1CSQK @{9CSQL @[ACSQP @ICSQS @;QCSXA YCSXQ KaCSXY kiCSXK {qCSXL [yCSXP CSXS ;CSYA ` CSYQ `KCSYX `+CSYK `{CSYL `[CSYP `CSYS `;CSKA p CSKQ pKCSKX p+CSKY pkCSKL p[CSKP pCSKS p;CSLA P CSLQ PK CSLX P+CSLY PkCSLK P{!CSLP P)CSLS P;1CSSA 0 9CSSQ 0KACSSX 0+ICSSY 0kQCSSK 0{YCSSL 0[aCSSP 0iCSMAQ FqCSMAX &yCSMAY fCSMAK vCSMAL VCSMAP CSMAS 6CSMQA @CSMQX @&CSMQY @fCSMQK @vCSMQL @VCSMQP @CSMQS @6CSMXA CSMXQ FCSMXY fCSMXK vCSMXL V CSMXP  CSMXS 6 CSMYA ` CSMYQ `F !CSMYX `& )CSMYK `v 1CSMYL `V 9CSMYP ` ACSMYS `6 ICSMKA p QCSMKQ pF YCSMKX p& aCSMKY pf iCSMKL pV qCSMKP p yCSMKS p6 CSMLA P CSMLQ PF CSMLX P& CSMLY Pf CSMLK Pv CSMLP P CSMLS P6 CSMSA 0 CSMSQ 0F CSMSX 0& CSMSY 0f CSMSK 0v CSMSL 0V CSMSP 0 EIN  DIN !CIE E! CID G!RTCD W!RTCE U!!FMTA !)FMTQ C!1FMTX #!9FMTY c!ATUM \%!IPUSHA !QPUSHQ O!YPUSHX /!aPUSHY o!iPOPA !qPOPQ O!yPOPX /!POPY o!SEXQA & !FIX R !FLOAT R !EXIT &m!FMT !XNX  !SWAL pf!PUSH C ! POP c !SIN !AIB E!AIN !AOB e!AOT %!SST "COMP " CSN "NEG "IN "$OUT ",SELP "4STRAP "<UTRAP "DROTATE "LSHIFT "TCBIT "\RBIT "eSBIT "nTBIT "wJT "JF "JEQ "JGE "JGT "JLE "JLT "JNE "IJ EQ "IJNE "JEQD "JNED "DMS Gg "DMSE Gg "IMSE GG _"JSTE G' ?"JMPE G #JSKE G# ADDF G\#SUBF G\#MULF G\#%DIVF G\#-CSKF G\#5IMS #=JST #EJMP #MJSK #UCSM #] CSME E#fCSK #oCSKB #y CSKE D'?#ADDC #SUBC C'?#ANDE C#ORE C'?#XORE C#DIV #MUL # ADDE C # SUBE C # CEA C#AND #OR #XOR #ADD  & $SUB  & $ANDB $ORB $$XORB $.ADDB $8SUBB $BCLSN $L`EXCH $VEXCHB $_EXCHE A $hCOPY $rCOPYB $ COPYE @  AY $ AX $ AQ $ P $ L $ K $ S $ Y $ Q $ X $ A % V Hc66YQA6t@ltXXV# =8&% L YQ) 1k` lBIĆlB)1[Ćg* fg›hW8o•1”# # @@388;>i98E:;x%l+I . '%'+U ' ` q rIlXX+U# ;a<;x9%tI̞IWIVk ' H)T*5Q|Nƀl ,Y yVĀkB V# + ' # ' # +# mH;];V;x8538kQqWk# WWVXX dQkWGt# 9:& )k@L )1K6 l ky# kl;x> 8?8i9:&4Y ]k%5'ji `# ;x:&E#k  y 1Ck ,p y# ;x85@:&h1 k HAml kWošo  , y GtXXk^# 38F9<:;x85&D  ny 1df  ,yk@jj힄Al C W8o.q'“ XX# ;x85@8;38x9<:&n VS)@` Ԟ lWXLX BA@A uvwj6X6Xe _^d6ÀXXdX6@Xi6A¡)@BqJBf””l)@# >3;x:88W:BK>9<8;i9'K" `(BIdO6A )@A B@ B @d6A) GtA# ;x8:'m< o BHG6 rYmWlo# lhmǀqfr IfY Œy# 3> 8&=:99gh'4  k@B BHqAlmA kJB@A XXmWloGtǀd6O6BB# 3> 8;x:'N `) -u `j6G)@ ` a)@ 傢# e # %'+# C @Iak@Œdec # ;;];V85;x8a8v:(+9  y )1\6 , ykq) 6“klo XX# ;x85?8i3@8;G9:(d `^W # ;x:>(qjHIkdQAbWYQJl mq r o̢QC@ 4oQAÀGtDX=XWoo {k)@QBQ€@ $oGokQAbQ̄dv1A6I6I# +=-((((˴l# l# l l# =;](;V38&;x85: 0(a HҀr Ξp  G6U@6Zq1ŀloh3B f1΀lh@6 lqo kGo 6Qp@6p@<@ loh B@ NG oW” GtXX.# 388;289:;])<     I@IWk V  )1A)1A6kခWVlk@ LL   Le Ǟe €  Le WJeLlk   D6AVkJASGWWXXV  ,_ Gt V# G# ;x??8i8H88>:)7X|X6`L E Wd@/6U@ ,tLELW @L z `# :;];V78A8l:>>;x>* 0hDmAlC ,X@Xšf˜CLDA‘CClW# l# 3<;]9:8*<e k@),4j `ek@ @@j# ;x:*T/qAGtl*dd6AIoXY8XXlUQSIk@dj B3K)@ 䞇UFk@dj## 3> 8G:*P)) Go` b 6| 'u* `)@oe 6A# ;x8,:*  y )1F6 ,l y# ;x85?8i:+AlC W)@SBꞈ@6E@ @ꞁ# 388,:+#)  y )1O6yg 6A {# ;x85?8i8;H9:+L.Y)ÀA)@`@") @h%'@h-B+*`H@`Hd@/6CI)@# `# ;;];x:+z' Hk =VAVDpp , y GtXXf# ;];V329;x85+8c (@6@6H kCcIUWk # +,- ---.'.4.E.|...////.//O//0&0H0v=++C @C @pVW # c@6@6R  ,,7rr€逇p@O6pO6@UUrJQp6΀p@O6ڀp6pO6@ \U@MUrp@O6pO6@c@6DWWWWc c # 3h853~1n033338810L +# k+R+# pAc# VllmmppqqrrnnV# 3܀,b@6Ҟ@6ϞV #˞@ X.y G   0rcW@6G@6E@6Cc@6B# # RURVLpO6ƐWccWA VBGG# *+l WW# 1n307pp3O88851033h- C @C @pV螬L ̀pO66Drܞ@6H@6BўОWδWʞl1GWÞHn AUUcWpO6pLp6p?6BMpc c # VllmmppqqrrnnV# 378 3h1n03w3~31888530-pO6€W@6F@6B# 333z3370-LlVr @ c@6V@6Dr@CSޞWV.'WR՞p@O6W؇W˞VlN1GWc@6B# # 33h731n033O8810-5rV6CU֞UpO6ĀWWVR# WlN1GW# # 33h733880p3O1.' pֆQA# 3܀8501.4pO6WA# 3܀8530.E7@6g HJQBfCllo @w ?WWX@ 8]9:1C @)HHǀl AWWc # 381C @C A)HHʀlV A1WWc # 381VArL n6 `x@ph# 381VArM lÀp `x@ph# 382C @_1V1SF19eLGeJQB1BqlIrc # 2?p28)2e # ^1# hf# L ^A# Lof# ^Jo kohMM2OM1K^o1F?6=# o1À?69ke DL^HLLh R*Q&oh R QnGŀpG6r L J6qrp/l6A9# p6Jr  nDG6A@ohA@,Ā pp6SÞp/6C,pl6EqÀd6qAfo# Ip# e @ ^܅ă Ă @ lnqr pG6Ān[# "# 8 8Z8K3@C @lCnDqErFM CE FpGkqElCfUBEЀpO6MCDg Cpp E Fp1WWc # 8528;3OC @cW9@ 6J@ 6Gy @ 6Ac # pp883hXL @L @L @NyQEJ/`x@ph# 3wKC AC @) C AC @) C AC @) C AC @) C AC @) C AC @) VAr J L L l.y,yWW,c # 3883O3C @C llCpˀr F EnDc # x883DC @ +JI pqmlLO n  ,NL334555R p = *YpQF  ,„NLNM nL$gL( LLL' rI)KOMSAP.q PyNq@rQP ' # # '# # 5846;x5Y4;];VJr Gm1CJI O@qd1BOaL nK r )1)1¤n nIAn6nG  6A@잂 @쀁6@G  3??5@ p @HO6_6DpAlQPX6@K  r6THQr NpˠK KQPNQP nK QC RA L@KO1EOO)OIIIko)5EC;Gj L" (@Cn 1EJI L +JI854   )1)1gp ߀H\,X̄XUUY,Y,Ypp ,R ) G\G LA;V;x?3z̀HŀmC AprHM M o6)8 >']" ?6Y /6/6l @@l-6EqQd@6A /6ErLLL prqnc # 8N8Z8 qG6O)5OkojJQ9MRBq3 q# 8;C @QDJ+z)`pDc # 5+6\6-6+6-6*6/6//6%6**6D&6D++6G;6G--6E<6>6=6<=6=<6>=6=>6<>6C @@@鞄C6B p܆c # ko Gj# KQ[ko)5jDCȞ *3+ bjVŒLL6B# L)orQPCQViKko)5fd VG1EG0/Ȟp6T `+oЀml$ G K ďjj# 8;ml# ml# QPQPQP @IQPLL# hi# cd# $^_# YZ# mQ# mlP# l# 67)7 7/7^7L)oǀQP՞@B 1Q 1I @ Ğ& lm1A # P3B !II5# N#  N # BqKKQP@IIIMMIԂQAIlIm# 66T66587 G6# @I T wy6Dn6Cu# jr# 8NAăQPAQP ߄# Z6Đe# 6sĉ# C @C @ pU6ŀ4ą    ܉jD9Qc c # C @C @ p,QPNąQP@ą܃܉f'c c # 8o7 C# p(܀ # ;];V857TC AIC @X6)@@@&)@ `+ `+aF aVC pIăI)@c # # 1PAGE   SI =  SO =  LI = G7>>5P78bGGGG G\G,GܞGlGGGG92C AC @q¡r   œny—f“lWflWVAc # tud 8;9::C @X@6d/6ɀGtqIQBXj6J@6Vj6d ?6^6\Gt@6R@6)@W߀oj66B@]j6@|c # j6A# )@W߄Woބo@|@@ )@߄Wބo# 7 >:d_6@6DGt@6Bង)@@6BٞW@/6@o6Рn1N@ZXVT@@?6Bo@/6A@O6B)@j66Bj)@6D@_6 jj`%'`L 4GtA# )+) H@ # ) H  @ # 7>>::5>>:{C AC @X@6JGQC tQC c # C @k@ gej@I/ pG¯@*t+QG+ 6I wc V¸° <I V# ;*E*EAJROPRGIXLRRCMPODMLU; (>) >>;VZ[Z] ]# ;]C @j6Ƞ]k%'ji] Z>[`pBc # C<;xC @`1ǤZ\]Yjj )# ;;;;;BI` * )QGIY`֞I`) @Q8IQ3I @`Q.@(Z - )` `]j6TI '@IQ I`Is]j j `)QBIQQBI@ II | pĂc # ;]<=;;V??2;C @I Td o6]]] K păc # ;];V<.C @`1ä]\\@*\d@o6̪]Rq ]UB4]y]-T)S]c # k%'ji#  <7<='ž.IV̞KL :%C 'oVA# O=>o=K@=M@=N@=[w< p+DBI1CD6L@A+*QIgc @``pE)`@1A+Cl, .r y p+@AC @A ` )@ %'4c C @`pLc # @<O59= C @YLhl mfq r oc # Y‡ †y# =gh9=hC @ )1)ܤY1i     oC6Broрr @6EXD p܆c # lmqoA@ā֤G# l̀mɀ6q#  ḠG# ??858&>  # {;x8>{C @)GItXGXC @^1߀fhU1F1D?6AXX lqn r GtXXfe ӀQ((K 6 6^ ^Me lrqn Gt<^e  #``pH`1I ^ ^c GtXc # 9>T-?p>C @BqC `{Cc # ?> _1G_19|^# ?>>_1N^1H/6C C @+ zc # >>C @@r yE)1yc # >XܐX# XX# >C @)@NK0M9K15c # >>C @C A)“@@ GK05VBI c #  d'X>?!C @ pIPQă Є I QP QP܃oc # ;]?g7^7 ;V?2+HP)IQ Q F A QPN.N.N.N.@hQ,PK # ;]?g;V?] Z A z a 9 0/`x@`x# ?pk@B1CBA*C Aj)# j# ?C @@ h1Hk@`B DDMM`pDc # 8f?.C @`k@AC¥)`H`H 5BK `@@qOI``pE1I`@ )`H`H5o`pEk@) 5c # S??k@BBj# ? k@BBC{Bj# ?C @ b+D`@A1111B11C11`pDc # ?C @1 p1F `pDBc # ??@8@C @ b+D1DX@Q`pDc # @%C @)1XHLXKĈIā@``pEk@IR)JRj)`pBDc # ??8i@8 `@ĂAăBĄCą`# @CC A`(+%', L - tc # V@I.@L sq@^ z `# # >@dcmj6PIlkmڄmj6ńlID6тWXYX̞ Y)QC ĞY Ee k@@j)1I  Emjj]J]V] | CkFFk DE1Ać E1gkĆ8A9:;]<=;x;V8&?@8AAAE1Imj݄jYAi `^X؄Xd6Zj6B # )@ Gt`Zj@jmdXGUP cZ )c1MXXV# Ue I)1E6€UZ HCF ] n FFsCU (&B?`  AlWWJQH `RFXX # 1 :;V?pABm on] 'ooXQ sn CQA]uk# ]k%'ji]# EQi@D2VP@1cqIĀākQ¤k @QqĀIDlQBqkqD`H%B B'`@D # D# # |rpL۞pr`B %'`Cpo# :ΞpQIo# # `QpYc`)p)no * `LIFcIBY`  # jIpIo`M ` ` ``# # # x;x?]@^?g ;];;VBK" )@\ )@Ƅ| `+<1M}1BQB @}q)@| }# ?Bm6 |Id?6Ġc6Hc۠v1GXQd@?6@`ʢk)%`H`H+ 'jijjICcD1E1)D;x5=?pC ?Āvk@?`jDcEd cEĂ ݤF1D܄ rr (@ )@ '@rQ ,i !1`n 1[gYX7F1U @`` )% +B- x'`@D1DvĀv Ccj@6|XvQA1AjCGX֊A@|X u# ChC@8:u%'+u# FDā @# Ĉy uIg z)+, LKZ wKLmuJu# 1D # F`H%B+*B'@hF- # j1C F# )Ih1S/n :TTk%'jyY1D @MTnr#  ?pHc t@?6r @/6@6 @6 p ` pBPG@B8 π C A A KIPIsJJLJ q1k oBBoQo`@@AooBBoQGo`@@6`(kj`(@Ď@6Ąą7@@ĎąÀ @@Aė/`PD@ K/o@6H7@Ď I}J=JFKMZ OQN@QL+ C @>Ikc o+H# JͫL"L61LAH1# @QB1# EFBC DJSAڀ6oFE%'+oF SoDC%'+oDUB81B81-oDC%'+oDoFE%'+oFA܄UB81oFE% '+oFA܄AFKJ2C @A ܖc # AFp6`(kj`(G6BJRE6A7݄F # KBKCoALćoQɀGPk p`c _# GPk p`c # !P !P@ꄉ  ď@ Ką(6 L B ʠB@JQÀAB π@ ăºĉ6& N IĀā 6BG  A6F7B@1܎֫KK@3@@0@$K* I} P IĀ+ P# oH@j1y@QC` y M` 6k` GAIN6ȀPDOE6>` T5U5 `k5oB@6ăAA@JFJ=3 1 @񄃂 6 31 5i@ 31 @5qo OI ` @kOĔHo@o/H@j1F@QC` y /MooGkI+@+kU*I⢀@+kU*` k ooBD @0QG섎 oA# @2JL7C @oBGIFCoQCc p`oo>Kc # Q]GP !Ӏ@фЄ ď@ Ką(6 jP`+`PkI@+kU`Pk%KJQEJJQI.J) JQI5'6L@`P@ `+P 䅂6# @JFJ@3HUC@L6@L> L@UC@ LJLH Filename>LO @@& &+G'# LW @@& &+GW# L_ C G&C&+G'# Li BCC"G"āBC"# L} @@N"@G"ā"# L CDC"G"āD& "# L ED @G&&G'# L FE @G&&GW# L C @G&&ZG'# L @BCB'"g"Cā'R# L @@& '"@g"ā'"# L C G&C&*G'# LG @ @G6BDāCGDĀ# LE GGW# MB V @FD g5@G6BĀtFSABE# M;BCHGBjDFCGDCk jGBCBG Cg4OBO GV@ĀlEgFCk j# NMZBC @E OBO GV@DĀEDCj# Mx @@& &* QA # M D G&D&* QA # MB @G&B-2*.0# OGW# MB @G&B-2*.0# OGW# MB @G&B-2*.0# OD# M -2*.0# OGW# M:BFoO`PB FBKS  \%G  GNOƛ™G@ƕ@” \\ @FQ# Oo# @OlAONCBLo/`PB LמOzG*JrK MMJKQIL1DGW # _/o# L1;v)DE NńMI@ FMM NNoB%'o@GG2FFElDGHEcG# H%5'@(# E M)I3oB%'koS MȞM+I@En_# N(N IoGNIHG  @H@I \\ @# @GOabcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ:_0123456789 N o @` 5 @5o# N Â}RHL=eRVnRSTm }!Q T侶 ( :˽ - : )  /0e'湦ƵpP'` n «⫂pP0/s Ͻ D E B U G C A 0 0 2 ϟb} ςzϾ P AE QB X? Y<н; K5 L2 S/֟S =ϟ{ ϟ|" *Ͻ z Y Q A GνԆ R Ɲƚ›LBLCLFLLLSLJLILGLRLZ؝ ÞAΆ}Άw v Ln T P B Pd# |QE[ , , `ↂџ ?Ͻ͞B ` J B YK QJfڞ҂ cޡ @ޟޝ `@E ;۽RA@EN@Aޏǎ Qފ ,^:I$& |d D `ឞs]*Qh ЀcЀ ā^@AĄ܃X B `Á D➄*P_U7 `5*3- +r }"Bƽֽ̓ҽǁOGÙE6'E / X ͽ֞]w Ṕچ@ՃֽҁBǢ ,ž[ + - * X /KJƎڞ^ڞ[{ xނZ ,| ҽL ʁ Ṕچ߽ڽֽ޺{ ҽ͞q kȆǂGާ}ަyޠ}y E ~  .σ E ~  .ޢރfN ,҆t@FC lqLL (w{u _|JQB[y L S T͞ON  Js߁ھˆ_]]| IƎ> ,Ƈ ,ƂpIưk ,  ,Htr Hm -ҁ -چ('\\ÂF -t͂ՃОx ’@"Fz@ Ό F ߝ l;#߁چ.bƝޙޖJQ!’ފދJQ %ςОu U ςPx q on "lIjM K b&_&[[ `ZKL$kT N =ςMM GςJ   :Ϟ ϟL gmG¬QR@«kj P¥羦 %'+ %'ސJƎ `Z RTVRC@@@ pnjn'6hddqeNLa@G@DY>Rg ` US { y9u    :wTVLP 75)510g- -P%'$"'',L,S,Z,T,PYXT ` O Iyyyx R G , ; + - * / X_1]\IW` RRR -@A@KJ@ JH +O -M * / X?ξ  `Yξ B `R-Ά, , +& N} I+KL v `p `PAQXYKLSDC Z A 9 0n C F =  t , ,ƙǽ•چޏJQ ` T͝ TmG9G4G3G6G5G7--E7G1--G0E4----@Ά}Άw v Ln T P B Pd# |QE[ , , `ↂџ ?Ͻ͞B ` J B YK QJfڞ҂ cޡ @ޟޝ `@E ;۽RA@EN@Aޏǎ Qފ ,^:I$& |d D `ឞs]*IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII  IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII! IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIe841106080904841106080904841106081453e@841106080904841106080904841106081452" e841106080904841106080904841106080904e841106080904841106080904841106080904841106080904841106080904841106080904eU1841105101104841102154743841106081354eYV841105101649841102155250841106081421e<`8411051342362584110513424325841106081436# $ % & ' ( ) * + . SAP4 SYSSAP4C SYSSAP4 MAC,  TITL SAP4.MAC (84-93958-61) A000 MNEMONIC DEFINITION FILE TITL MNEMONICS.............. ************************************************************************** * * REVISION HISTORY: * * REV A000 * INITIAL RELEASE * THESE ARE THE MNEMONICS WITH OPERANDS FOR THE SAP4 ASSEMBLER. * NO-OPERAND INSTRUCTIONS ARE IN THE INSTRUCTION SYMBOL * TABLE (SAP4.SYS). * 1/NOV/84 STEVE CUNIFF,ROCKY FOROUTAN ************************************************************************* TITL LDQ CMACRO Q LDY MACENT Y LDAQ MACENT AQ LDAX MACENT AX LDAY MACENT AY IFT #(1,'@') IFT #(1,'*') COPY #(1,1,1)#(1,3,15)(X),#0 ENDC IFF #(1,'*') COPY #(1,2,15)(X),#0 ENDC ENDC IFF #(1,'@') COPY #1,#0 ENDC ENDM LAP CMACRO A LQP MACENT Q LXP MACENT X LYP MACENT Y COPY =#1,#0 ENDM LDQB CMACRO Q LDYB MACENT Y IFT #(1,'@') IFT #(1,'*') COPYB #(1,1,1)#(1,3,15)(X),#0 ENDC IFF #(1,'*') COPYB #(1,2,15)(X),#0 ENDC ENDC IFF #(1,'@') COPYB #1,#0 ENDC ENDM STQB CMACRO Q STYB MACENT Y IFT #(1,'@') IFT #(1,'*') COPYB #0,#(1,1,1)#(1,3,15)(X) ENDC IFF #(1,'*') COPYB #0,#(1,2,15)(X) ENDC ENDC IFF #(1,'@') COPYB #0,#1 ENDC ENDM LAM CMACRO A LQM MACENT Q LXM MACENT X LYM MACENT Y COPY =-#1,#0 ENDM STQ CMACRO Q STY MACENT Y STAQ MACENT AQ STAX MACENT AX STAY MACENT AY IFT #(1,'@') IFT #(1,'*') COPY #0,#(1,1,1)#(1,3,15)(X) ENDC  IFF #(1,'*') COPY #0,#(1,2,15)(X) ENDC ENDC IFF #(1,'@') COPY #0,#1 ENDC ENDM ADA CMACRO A ADQ MACENT Q ADX MACENT X ADY MACENT Y ADAQ MACENT AQ IFT #(1,'@') IFT #(1,'*') @ADD #(1,1,1)#(1,3,15)(X),#0 ENDC IFF #(1,'*') @ADD #(1,2,15)(X),#0 ENDC ENDC IFF #(1,'@') @ADD #1,#0 ENDC ENDM AAI CMACRO A AQI MACENT Q AXI MACENT X AYI MACENT Y  @ADD =#1,#0 ENDM ADAB CMACRO A ADQB MACENT Q ADXB MACENT X ADYB MACENT Y IFT #(1,'@') IFT #(1,'*') @ADDB #(1,1,1)#(1,3,15)(X),#0 ENDC IFF #(1,'*') @ADDB #(1,2,15)(X),#0 ENDC ENDC IFF #(1,'@') @ADDB #1,#0 ENDC ENDM ADAC CMACRO A ADQC MACENT Q IFT #(1,'@') IFT #(1,'*') ADDC #(1,1,1)#(1,3,15)(X),#0 ENDC IFF #(1,'*') ADDC #(1,2,15)(X),#0 ENDC ENDC  IFF #(1,'@') ADDC #1,#0 ENDC ENDM SBA CMACRO A SBQ MACENT Q SBX MACENT X SBY MACENT Y SBAQ MACENT AQ IFT #(1,'@') IFT #(1,'*') @SUB #(1,1,1)#(1,3,15)(X),#0 ENDC IFF #(1,'*') @SUB #(1,2,15)(X),#0 ENDC ENDC IFF #(1,'@') @SUB #1,#0 ENDC ENDM SAI CMACRO A SQI MACENT Q SXI MACENT X SYI MACENT Y @SUB =#1,#0 ENDM SBAB CMACRO A SBQB MACENT Q SBXB MACENT X SBYB MACENT Y IFT #(1,'@') IFT #(1,'*') @SUBB #(1,1,1)#(1,3,15)(X),#0 ENDC IFF #(1,'*') @SUBB #(1,2,15)(X),#0 ENDC ENDC IFF #(1,'@') @SUBB #1,#0 ENDC ENDM SBAC CMACRO A SBQC MACENT Q IFT #(1,'@') IFT #(1,'*') SUBC #(1,1,1)#(1,3,15)(X),#0 ENDC IFF #(1,'*') SUBC #(1,2,15)(X),#0 ENDC ENDC IFF #(1,'@') SUBC #1,#0 ENDC  ENDM MPYQ CMACRO AQ MPYX MACENT AX MPYY MACENT AY MUL #1,#0 ENDM DVDQ CMACRO AQ DVDX MACENT AX DVDY MACENT AY DIV #1,#0 ENDM ANDA CMACRO A ANDQ MACENT Q IFT #(1,'@') IFT #(1,'*') @AND #(1,1,1)#(1,3,15)(X),#0 ENDC I- FF #(1,'*') @AND #(1,2,15)(X),#0 ENDC ENDC IFF #(1,'@') @AND #1,#0 ENDC ENDM ANDAB CMACRO A ANDQB MACENT Q IFT #(1,'@') IFT #(1,'*') @ANDB #(1,1,1)#(1,3,15)(X),#0 ENDC IFF #(1,'*') @ANDB #(1,2,15)(X),#0 ENDC ENDC IFF #(1,'@') @ANDB #1,#0 ENDC ENDM ANDAI CMACRO A ANDQI MACENT Q ANDXI MACENT X ANDYI MACENT Y AND =#1,#0 ENDM IORA CMACRO A IORQ MACENT Q IFT #(1,'@') IFT #(1,'*') OR #(1,1,1)#(1,3,15)(X),#0 ENDC IFF #(1,'*') OR #(1,2,15)(X),#0 ENDC ENDC IFF #(1,'@') OR #1,#0 ENDC ENDM IORAB CMACRO A IORQB MACENT Q IFT #(1,'@') IFT #(1,'*') ORB #(1,1,1)#(1,3,15)(X),#0 ENDC IFF #(1,'*') ORB #(1,2,15)(X),#0 ENDC ENDC IFF #(1,'@') ORB #1,#0 ENDC ENDM IORAI CMACRO A IORQI MACENT Q IORXI MACENT X IORYI MACENT Y OR =#1,#0 ENDM XORA CMACRO A XORQ MACENT Q IFT #(1,'@') IFT #(1,'*') @XOR #(1,1,1)#(1,3,15)(X),#0 ENDC IFF #(1,'*') @XOR #(1,2,15)(X),#0 ENDC ENDC IFF #(1,'@') @XOR #1,#0 ENDC ENDM XORAB CMACRO A XORQB MACENT Q IFT #(1,'@') IFT #(1,'*') @XORB #(1,1,1)#(1,3,15)(X),#0 ENDC IFF #(1,'*') @XORB #(1,2,15)(X),#0 ENDC ENDC IFF #(1,'@') @XORB #1,#0 ENDC ENDM XORAI CMACRO A XORQI MACENT Q XORXI MACENT X XORYI MACENT Y XOR =#1,#0 ENDM ASB CMACRO A QSB MACENT Q XSB MACENT X YSB MACENT Y SSB MACENT S SBIT #1,#0 ENDM ARB CMACRO A QRB MACENT Q XRB MACENT X YRB MACENT Y SRB MACENT S RBIT #1,#0 ENDM ACB CMACRO A QCB MACENT Q XCB MACENT X YCB MACENT Y SCB MACENT S CBIT #1,#0 ENDM ATB CMACRO A QTB MACENT Q XTB MACENT X YTB MACENT Y STB MACENT S TBIT #1,#0 ENDM EMA CMACRO A EMQ MACENT Q EMX MACENT X EMY MACENT Y IFT #(1,'@') IFT #(1,'*') EXCH #(1,1,1)#(1,3,15)(X),#0 ENDC IFF #(1,'*') EXCH #(1,2,15)(X),#0 ENDC ENDC IFF #(1,'@') EXCH #1,#0 ENDC ENDM EMAB CMACRO A EMQB MACENT Q EMXB MACENT X EMYB MACENT Y IFT #(1,'@') IFT #(1,'*') EXCHB #(1,1,1)(#(1,3,15)(X),#0 ENDC IFF #(1,'*') EXCHB #(1,2,15)(X),#0 ENDC ENDC IFF #(1,'@') EXCHB #1,#0 ENDC ENDM CMSA CMACRO A CMSQ MACENT Q IFT #(1,'@') IFT #(1,'*') @CSK #0,#(1,1,1)#(1,3,15)(X) ENDC IFF #(1,'*') @CSK #0,#(1,2,15)(X) ENDC ENDC IFF #(1,'@') @CSK #0,#1 ENDC ENDM CMSAB CMACRO A CMSQB MACENT Q IFT #(1,'@') IFT #(1,'*') @CSKB #0,#(1,1,1)#(1,3,15)(X) ENDC IFF #(1,'*') @CSKB #0,#(1,2,15)(X) ENDC ENDC IFF #(1,'@') @CSKB #0,#1 ENDC ENDM CSMA CMACRO A CSMQ MACENT Q CSMX MACENT X CSMY MACENT Y IFT #(1,'@') IFT #(1,'*') CSM #0,#(1,1,1)#(1,3,15)(X) ENDC IFF #(1,'*') CSM #0,#(1,2,15)(X) ENDC ENDC IFF #(1,'@') CSM #0,#1 ENDC ENDM CAI CMACRO A CQI MACENT Q CXI MACENT X CYI MACENT Y CLSN #0,=#1 ENDM JAG CMACRO A JQG MACENT Q JXG MACENT X JYG MACENT Y JGT #0,#1 ENDM JAP CMACRO A JQP MACENT Q JXP MACENT X JYP MACENT Y JGE #0,#1 ENDM JAZ CMACRO A JQZ MACENT Q JXZ MACENT X JYZ MACENT Y JEQ #0,#1 ENDM JAN CMACRO A JQN MACENT Q JXN MACENT X JYN MACENT Y JNE #0,#1  ENDM JAL CMACRO A JQL MACENT Q JXL MACENT X JYL MACENT Y JLE #0,#1 ENDM JAM CMACRO A JQM MACENT Q JX. M MACENT X JYM MACENT Y JLT #0,#1 ENDM IJAZ CMACRO A IJQZ MACENT Q IJXZ MACENT X IJYZ MACENT Y IJEQ #0,#1 ENDM JAED CMACRO A JQED MACENT Q JXED MACENT X JYED MACENT Y JEQD #0,#1 ENDM IJAN CMACRO A IJQN MACENT Q IJXN MACENT X IJYN MACENT Y IJNE #0,#1 ENDM JAND CMACRO A JQND MACENT Q JXND MACENT X JYND MACENT Y JNED #0,#1 ENDM JSS CMACRO SS JOS MACENT OV JCS MACENT CY JT #0,#1 ENDM JSR CMACRO SS JOR MACENT OV JCR MACENT CY JF #0,#1 ENDM ARQ CMACRO Q,RA ARX MACENT X,RA ARY MACENT Y,RA LLA MACENT A,L LLQ MACENT Q,L LLX MACENT X,L LLY MACENT Y,L LLAO MACENT A,LO LLQO MACENT Q,LO LLXO MACENT X,LO LLYO MACENT Y,LO LRA  MACENT A,R LRQ MACENT Q,R LRX MACENT X,R LRY MACENT Y,R LRAO MACENT A,RO LRQO MACENT Q,RO LRXO MACENT X,RO LRYO MACENT Y,RO LLAQ MACENT AQ,L LLAX MACENT AX,L LLAY MACENT AY,L LLAQO MACENT AQ,LO LLAXO MACENT AX,LO LLAYO MACENT AY,LO LRAQ MACENT AQ,R LRAX MACENT AX,R LRAY MACENT AY,R LRAQO MACENT AQ,RO LRAXO MACENT AX,RO LRAYO MACENT AY,RO LRL MACENT AX,LO LLR MACENT AX,RO SHIFT #0,#1 ENDM ARA MACRO A,RA SHIFT #0,#1 NOTE W,'THIS INSTRUCTION IS SLIGHTLY DIFFERENT FROM LSI-2,SEE MANUAL' ENDM RRA CMACRO A,R RRQ MACENT Q,R RRX MACENT X,R RRY MACENT Y,R RRAO MACENT A,RO RRQO MACENT Q,RO RRXO  MACENT X,RO RRYO MACENT Y,RO RLA MACENT A,L RLQ MACENT Q,L RLX MACENT X,L RLY MACENT Y,L RLAO MACENT A,LO RLQO MACENT Q,LO RLXO MACENT X,LO RLYO MACENT Y,LO RLAQ MACENT AQ,L RLAX MACENT AX,L RLAY MACENT AY,L RLAQO MACENT AQ,LO RLAXO MACENT AX,LO RLAYO MACENT AY,LO RRAQ MACENT AQ,R RRAX MACENT AX,R RRAY MACENT AY,R RRAQO MACENT AQ,RO RRAXO MACENT AX,RO RRAYO MACENT AY,RO LRL MACENT AX,LO LRR MACENT AX,RO ROTATE #0,#1 ENDM LDAE CMACRO A LDQE MACENT Q LDXE MACENT X LDYE MACENT Y LDAXE MACENT AX LDAYE MACENT AY LDAQE MACENT AQ COPYE #1,#0 ENDM STAE CMACRO A STQE MACENT Q STXE MACENT X STYE MACENT Y STAQE MACENT AQ STAXE MACENT AX STAYE MACENT AY COPYE #0,#1 ENDM EMAE CMACRO A EMQE MACENT Q EMXE MACENT X EMYE MACENT Y EXCHE #1,#0 ENDM ADAE CMACRO A ADQE MACENT Q ADXE MACENT X ADYE MACENT Y  ADDE #1,#0 ENDM SBAE CMACRO A SBQE MACENT Q SBXE MACENT X SBYE MACENT Y SUBE #1,#0 ENDM ANDAE CMACRO A ANDQE MACENT Q ANDE #1,#0 ENDM IORAE CMACRO A IORQE MACENT Q ORE #1,#0 ENDM XORAE CMACRO A XORQE MACENT Q XORE #1,#0 ENDM CMSAE CMACRO A CMSQE MACENT Q @CSKE #0,#1 ENDM CSMAE CMACRO A CSMQE MACENT Q CSMXE MACENT X CSMYE MACENT Y CSME #0,#1 ENDM CEAA CMACRO A CEAQ MACENT Q CEAX MACENT X CEAY MACENT Y CEA #1,#0 ENDM STRAPA CMACRO A STRAPQ MACENT Q STRAPX MACENT X STRAPY MACENT Y STRAP #0,#1 ENDM UTRAPA CMACRO A UTRAPQ MACENT Q UTRAPX MACENT X UTRAPY MACENT Y UTRAP #0,#1 ENDM MPYF CMACRO  MULF #1 ENDM DVDF CMACRO DIVF #1 ENDM CMSF CMACRO CSKF #1 ENDM FIELDA CMACRO A FIELDQ MACENT Q FIELDX MACENT X FIELDY MACENT Y FIELD #0,0(X,Y),#1 ENDM SFIELDA CMACRO A SFIELDQ MACENT Q SFIELDX MACEN/ T X SFIELDY MACENT Y SFIELD 0(X,Y),#0,#1 ENDM ECCT CMACRO @ECC 0(X),A ENDM GENECC CMACRO @GENECC 0(X),A ENDM MOVE CMACRO @MOVE 0(Q),0(X),A ENDM ADD CMACRO A IFT #(1,'@') IFT #(1,'*') @ADD #(1,1,1)#(1,3,15)(X),#0 ENDC IFF #(1,'*') @ADD #(1,2,15)(X),#0 ENDC ENDC IFF #(1,'@') @ADD #1,#0 ENDC ENDM ADDB CMACRO A IFT #(1,'@') IFT #(1,'*') @ADDB #(1,1,1)#(1,3,15)(X),#0 ENDC IFF #(1,'*') @ADDB #(1,2,15)(X),#0 ENDC ENDC IFF #(1,'@') @ADDB #1,#0 ENDC ENDM SUB CMACRO A IFT #(1,'@') IFT #(1,'*') @SUB #(1,1,1)#(1,3,15)(X),#0 ENDC IFF #(1,'*') @SUB #(1,2,15)(X),#0 ENDC ENDC IFF #(1,'@') @SUB #1,#0 ENDC ENDM SUBB CMACRO A IFT #(1,'@') IFT #(1,'*') @SUBB #(1,1,1)#(1,3,15)(X),#0 ENDC IFF #(1,'*') @SUBB #(1,2,15)(X),#0 ENDC ENDC IFF #(1,'@') @SUBB #1,#0 ENDC ENDM AND CMACRO A IFT #(1,'@') IFT #(1,'*') @AND #(1,1,1)#(1,3,15)(X),#0 ENDC IFF #(1,'*') @AND #(1,2,15)(X),#0 ENDC ENDC IFF #(1,'@') @AND #1,#0 ENDC ENDM ANDB CMACRO A IFT #(1,'@') IFT #(1,'*') @ANDB #(1,1,1)#(1,3,15)(X),#0 ENDC IFF #(1,'*') @ANDB #(1,2,15)(X),#0 ENDC ENDC IFF #(1,'@') @ANDB #1,#0 ENDC ENDM IOR CMACRO A IFT #(1,'@') IFT #(1,'*') OR #(1,1,1)#(1,3,15)(X),#0 ENDC IFF #(1,'*') OR #(1,2,15)(X),#0 ENDC ENDC IFF #(1,'@') OR #1,#0 ENDC ENDM IORB CMACRO A IFT #(1,'@') IFT #(1,'*') ORB #(1,1,1)#(1,3,15)(X),#0 ENDC IFF #(1,'*') ORB #(1,2,15)(X),#0 ENDC ENDC IFF #(1,'@') ORB #1,#0 ENDC ENDM XOR CMACRO A IFT #(1,'@') IFT #(1,'*') @XOR #(1,1,1)#(1,3,15)(X),#0 ENDC IFF #(1,'*') @XOR #(1,2,15)(X),#0 ENDC ENDC IFF #(1,'@') @XOR #1,#0 ENDC ENDM XORB CMACRO A IFT #(1,'@') IFT #(1,'*') @XORB #(1,1,1)#(1,3,15)(X),#0 ENDC IFF #(1,'*') @XORB #(1,2,15)(X),#0 ENDC ENDC IFF #(1,'@') @XORB #1,#0 ENDC ENDM LDA CMACRO A LDX MACENT X IFT #(1,'@') IFT #(1,'*') COPY #(1,1,1)#(1,3,15)(X),#0  ENDC IFF #(1,'*') COPY #(1,2,15)(X),#0 ENDC ENDC IFF #(1,'@') COPY #1,#0 ENDC ENDM LDAB CMACRO A LDXB MACENT X IFT #(1,'@') IFT #(1,'*') COPYB #(1,1,1)#(1,3,15)(X),#0 ENDC IFF #(1,'*') COPYB #(1,2,15)(X),#0 ENDC ENDC IFF #(1,'@') COPYB #1,#0 ENDC ENDM STA CMACRO A STX MACENT X IFT #(1,'@') IFT #(1,'*') COPY #0,#(1,1,1)#(1,3,15)(X) ENDC IFF #(1,'*') COPY #0,#(1,2,15)(X) ENDC ENDC IFF #(1,'@') COPY #0,#1 ENDC ENDM STAB CMACRO A STXB MACENT X IFT #(1,'@') IFT #(1,'*') COPYB #0,#(1,1,1)#(1,3,15)(X) ENDC IFF #(1,'*') COPYB #0,#(1,2,15)(X) ENDC ENDC IFF #(1,'@') COPYB #0,#1 ENDC ENDM CMS CMACRO A IFT #(1,'@') IFT #(1,'*') @CSK #0,#(1,1,1)#(1,3,15)(X) ENDC IFF #(1,'*') @CSK #0,#(1,2,15)(X) ENDC ENDC IFF #(1,'@') @CSK #0,#1 ENDC ENDM CMSB CMACRO A IFT #(1,'@') IFT #(1,'*') @CSKB #0,#(1,1,1)#(1,3,15)(X) ENDC IFF #(1,'*') @CSKB #0,#(1,2,15)(X) ENDC ENDC IFF #(1,'@') @CSKB #0,#1 ENDC ENDM IMS CMACRO IFT #(1,'@') IFT #(1,'*') @IMS #(1,1,1)#(1,3,15)(X) ENDC IFF #(1,'*') @IMS #(1,2,15)(X) ENDC ENDC IFF #(1,'@') @IMS #1 ENDC ENDM JMP CMACRO IFT #(1,'@') IFT #(1,'*') @JMP #(1,1,1)#(1,3,15)(X) ENDC IFF #(1,'*') @JMP #(1,2,15)(X) ENDC ENDC IFF #(1,'@') @JMP #1 ENDC ENDM JST CMACRO IFT #(1,'@') IFT #(1,'*') @JST #(1,1,1)#(1,3,15)(X) ENDC IFF #(1,'*') @JST #(1,2,15)(X) ENDC ENDC IFF #(1,'@') @JST #1 END0 C ENDM DVD CMACRO AX DIV #1,#0 ENDM MPY CMACRO AX MUL #1,#0 ENDM ZAX MACRO COPY =0,A COPY =0,X NOTE W,'INSTRUCTION EXPANSION' ENDM AXP MACRO COPY =1,A COPY =1,X NOTE W,'INSTRUCTION EXPANSION' ENDM AXM MACRO COPY =-1,A COPY =-1,X NOTE W,'INSTRUCTION EXPANSION' ENDM ANA CMACRO @AND X,A ENDM ANX CMACRO @AND A,X ENDM NRA MACRO OR X,A COMP A NOTE W,'INSTRUCTION EXPANSION' ENDM NRX MACRO OR A,X COMP X NOTE W,'INSTRUCTION EXPANSION' ENDM AXA CMACRO @ADD X,A ENDM SAX CMACRO @SUB A,X  ENDM SXA CMACRO @SUB X,A ENDM XXA CMACRO @XOR X,A ENDM XAX CMACRO @XOR A,X ENDM BSA CMACRO OR X,A ENDM BSX CMACRO OR A,X ENDM EIX CMACRO COPY X,P ENDM XNX CMACRO @XNX X ENDM IAH MACRO IN 4,A @HLT NOTE W,'INSTRUCTION EXPANSION' ENDM IXH MACRO IN 4,X @HLT NOTE W,'INSTRUCTION EXPANSION' ENDM OAH MACRO SELP A,4 @HLT NOTE W,'INSTRUCTION EXPANSION' ENDM OXH MACRO SELP X,4 @HLT NOTE W,'INSTRUCTION EXPANSION' ENDM STOP CMACRO @HLT ENDM WAIT CMACRO @JMP $ ENDM SIA CMACRO A SIX MACENT X COPY S,#0 ENDM SOA CMACRO A SOX MACENT X COPY #0,S ENDM RTN CMACRO JMP *#1 ENDM BAO CMACRO A BQO MACENT Q BXO MACENT X BYO MACENT Y TBIT #(1),#(0) ENDM BCA MACRO X,A BCX MACENT A,X @XOR #(0) @OR #(0) NOTE W,'INSTRUCTION EXPANSION' ENDM BSA CMACRO X,A BSX MACENT A,X @OR #(0) ENDM IAX MACRO A,X IXA MACENT X,A COPY #(0) @ADD =1,#(0,3,3) NOTE W,'INSTRUCTION EXPANSION' ENDM IPX MACRO P,X COPY #(0) @ADD =2,#(0,3,3) NOTE W,'INSTRUCION EXPANSION' ENDM DAX MACRO A,X DXA MACENT X,A COPY #(0) @SUB =1,#(0,3,3) NOTE W,'INSTRUCION EXPANSION' ENDM SEA CMACRO A SEL MACENT A SEQ MACENT Q SEX MACENT X SEY MACENT Y IFT #(?)=1 SELP #0,#1 ENDC IFF #(?)=1 SELP #0,#1*8+#2 ENDC ENDM INA CMACRO A INQ MACENT Q INX MACENT X INY MACENT Y IFT #(?)=1 IN #(1),#(0) ENDC IFF #(?)=1 IN #(1)*8+#(2),#(0) ENDC ENDM OTA CMACRO A OTQ MACENT Q OTX MACENT X OTY MACENT Y IFT #(?)=1 OUT #(0),#(1) ENDC IFF #(?)=1 OUT #(0),#(1)*8+#(2) ENDC ENDM AIN CMACRO AIN AOT MACENT AOT AIB MACENT AIB AOB MACENT AOB SEN MACENT SST IFT #(?)=1 @#(0) #(1) ENDC IFF #(?)=1 @#(0) #(1)*8+#(2) ENDC ENDM END =0,X NOTE W,'INSTRUCTION EXPANSION' ENDM AXP MACRO COPY =1,A COPY =1,X NOTE W,'INSTRUCTION EXPANSION' ENDM AXM MACRO COPY =-1,A COPY =-1,X NOTE W,'INSTRUCTION EXPANSION' ENDM ANA CMACRO @AND X,A ENDM ANX CMACRO @AND A,X ENDM NRA MACRO OR X,A COMP A NOTE W,'INSTRUCTION EXPANSION' ENDM NRX MACRO OR A,X COMP X NOTE W,'INSTRUCTION EXPANSION' ENDM AXA CMACRO @ADD X,A ENDM SAX CMACRO @SUB A,X IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII1 IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII2 IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII3 IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII4 IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII5 IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII6 IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII7 IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII8 IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII9 IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII: IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII; IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII< IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII= IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII> IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII? IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII@ IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIA IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIB IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIC IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIID IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIE IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIF IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIG IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIH IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIJ IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIK IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIL IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII