Í €àÃöýáýFýnýfÕÝ~¸0Å>ÝFÅÕÏÑÁÚw€ñ�G >Ïõ8<ñÑ>Àí9:!@u~½ í¡êH€Ã€>Èí9:!_€çÉFailed testing low RAM ÁÁ!~€çÉError reading Operating System }Ã\ãÃ_ã~ CCP+ v2.2 (C) 1986, C.B. Falconer, Tel. (203) 281-1438, 680 Hartford Tpk., Hamden, CT., USANo FileNo roomAll (y/N)?File existsNo UPSHIFT*úç·È=Ö)< üÉþaØþ{Ðæ_Éþ0Øþ:?É> ÍÞà> Õ_>ÍtáÑÉþ 8Å/ Æö8ûÆ õyÍÞàñÁÆ0Þ> ÍtáÈ>j¯2Üç¼ç:÷ç8· Í'áÀ<Í'áÀÉ>Ítá<É>÷>ó¼ç>ì>è¼ç>,>(>Ù€>>íK»çy·üláOíC»ç_ÿ> > åÕÅÝåOÍ·ÝáÁÑáÉ:˜çÍiá™çÍ'á('Õ:¨ç=2¹çàÍSáÑÍDá 2†à!§çw#5Í.á(Íá(:˜çÍiá™çÍ=á¯2ºçÍPá:õæÍiáñæ_å*øçÍÀàáÚ=ã>ˆ:ºç·Ä„á:õæÆAÍÞàñæÄçà>>ÍÞà:ºç·!àÂ>æà> Ítáo¯g#wɯ!»çÍÁãÍ+ãÝ"ÝçÍ•âq#pÍãþ:ÌúâåÍnâÍãþ.ÌúâÍnâ#6û á>?#¾  ùy·ÉÍã(#þ* 6?ÍÇàwÍúâéÍãÈÍúâÈú#6 ûÉÿÝåÑÍÇàÍÐà0þ@ØþQÐþ:(ÍÐàØþ:( ÍÐàØþ:ÀÍãÍÐà0 ÍÇàÖ@GÍúâþ:ÈæOÍúâÈÍëâÍúâ:òç¹8SÉæWyþ?؇‡�‡‚OÉÝ~·(Ý#Ý~·7Èþ=Èþ_Èþ.Èþ:Èþ;Èþ<Èþ>Èþ,Èþ|Èþ Èþ 8ÉÍãØÍ#ãÀÍúâ0÷ÉÍ(âÈÍ×à*ÝçÝåÑ{•G~ÍÞà#ù>?ÍÞà͹á`Ãeç¯2à1˜ç!cã"à¯2Írá2ºçyÍ÷ã1˜çÍÉáÍ×à:à·Ììá:ºç·Äá(͹á#!à"ÝçåÝá~þ*(Ö;(<(:à·Ä(â:à·Äÿã¯2ๅoÐ$É*ôç~·À*öçÃÀàÍ+ã0e> Í(äy<°ÈÍ[áyæðOx=òóã:æ±OÍÚáy2É:ÅçÖ 2ßç 3:½çÖ (ÂíK»ç y°>Ì?ä!3ç‡ÍÁã~#foéíK»çÍÆãÐ :óç<¹ xÔºàÐÃ=ã!Eç#ý yþÐ½ç¾ ï#øþ éy<ÍÆãyÐ>ÉÍ[áx=òuä:æGÍÚáíC»çÉÍ+ã¯2ßçÍ(âÍ+ã8ÍÇàþS(þO 2ßçÌúâÍ+ã8þ; ’Íúâ> Í(äÍjä!½ç~þ  6?#ûÍ6á(V=æ`OÍ,å8? :ðç_Í×àÍWáÆAÍÞà:»ç·Äçà> ÍÞà>:ÍÞà> ÍÞàxÍBåæÍÞàxþ (ìþ 8íÍáÀÍ2á ¬Í+ãØÍ×àÍÌáÃ�ä> ÍBåG:ßç· xÉþSÈx/É!€�ÍÁã~ÉÍ9ãÍ[áÍ á(TÍ×à€xþ€8ÍAáÀG!€ÍÁã~þÈÍÞàÍá(ãÉÍ9ã:¼ç· (!½ç ~þ (þ+( #ÍÐàÔëâ8ìyÉ2ßç#(÷~þ (÷Ã=ãÍyåõÍ9ãÍjä½çþ (êÍ=áÍLá(5¯2Üçño&):ßç·(#|µ(+å!€åÍSá¼çÍHáÑá(è ¼çÍ.áÀåá!�à!ñç~/w·!¯à(!²à'Í(âþ !˜àÍ;æÍâë5À#~æ_þYÀÍjä¼çÍ=áÀ!ˆàÍ×à~·È#ÍÞà÷Í9ãÍjäÅÍ6á :!¼çÌçí°Í+ãþ=(þ_ *ÍúâÍ9ãÍ+ã0*»ç}<´ á"»çÍjäÍ6á(°>Ãtáñ!£à¨Ã=ã:¼ç!ßç¶ ô=w »ç!ãç> Í(ä!àçÅçí°Í[áÍ á(Ò!€€à}“|šÒþåëÍSáëÍAá(èÍ(âÍ3ã>Í)â¯2Üç2Ëç\!¼ç!í°!à:ßç· ~·(þ (#õ�:ñç·~ÄÇà·(#ïx2€Í×àÍÉáÃ�äæKå­åGææßæ¹á¬æDIR ERA TYPESAVEREN CAPSGO KILL1˜ç!qçÍ;æÃcãCCP+ Ver. 2.2$$$ SUBCOMCCPXTENDSYSÿ Ãè6ëUë{ëZëà èF@py2¨õísþõ1þõýåÝåÕÝá!è~æ@Äë¯2«õ2­õgo"©õ>&¹8y!ˆèÍhè:«õ·Ä{íÝáýáí{þõ*©õ}Dɇ…oŒ•g~#foé{!|èþÐìŒìyï ìéé éöé¯ê÷èüèé3é$é)éêBê.éì+ì…í*ñ®ñEìmìyì?ó¦óxò„ì‘ì˜ìrïŸì;ï¤ì©ì±ì¶ì5ó–óÄìùì.íÖè!åè~¹#(�<(�##ô(–óh%õiõÒsèÓ_éÿ—ìÍö%KÃöKÃöÍ-ö*è*è|µÄrè Í×éÍêÔ°êÛì:ø{2ÉÍ×êîK((:èæ (y*‡õëÄ•éëÔìÍòéËÍòéÈÍ×éÂëo& ¯)¹8‘#÷õ|µÄeéñÆ0ÅÕåͰêáÑÁÉ> Í�é> > õÍ×êñOõÝåýåÅÍ öÁå:èÜéÑýáÝáñþÈ!ˆõ4þ Ð5þ(þ À645È5É!ˆõ~·ÈÍÓéÍŽé>¾!†õ~6#·~6À! öÝåýåÍrèýáÝáÉ:†õ·>ÿÀÍ ê·ÈÍãé2‡õöÿ2†õÉ!ö×þ Èþ Èþ ÈþÈþ Éþ$ÈÍ{éöx·ÈÅåÍÇéáå~þ ÜÇéáÁ+ÉÍ(ê ûÝåáN#åÅÍ×éÁáæþ åÅÍ…éîÍ(êçþ(÷þ(óþ :èî2èÑþ(Áþ(½þ (#þ (#wy¸ +>Í{é±~ÍÂêþx ¨=Ìùê¢#6Ýp {þ Â�éÍŽé:ˆõæ ö> ÉÍêÒ{éõ>^Í{éñõÆ@Í{éñÉÍ ê·(¯2†õÍòéÈ:‡õþ>ÿÀÍ×éÍ×éþ(¯É:èæ@Èd~æ yþÈÅÕÍòéÑÁÈ:‡õ!è¾ÀÕÅšëÍêÍ ìÍéõÍ…éñÁÑæ_þYÈ/Eõ¯Íªë�ëÍêÍéæ_þRÈþA(þI ê·ÉNõ$Wõ>ÿͪëÍ×é:¨õOÝåÑí{þõ*èå!"èÉ\õ¯Þ A)bort I)gnore R)etry?$ Resume (y/N)?$OÅÕ:±õÆA2|õoõÍêÑÍê`õÍê:¨õõÍbéñÁþ87þ8þ( þ!8+þ%8þ( #ÝåÖ ±(ͽîãgõÍêáÍì>.Í{éÍìÍòéÈÍ×é÷#~æþ Ä{éõÉ:èæ>" t>%p€Írï¯2±õog"„õ"‚õ͆í:²õVÍNíÝ~Ö?( Ý~þ?(Ý6><Í9ð*‘õí[€õ€í°ÉÝ*¸õÍNíÍHðçÍNíÍÂð:ºõÍNíÍãðó!è*„õ"©õÉ:±õ2©õÉ*—õð*‚õëÍNíÍùðÎ*“õÞ{(æ2¯õ:¯õ×ÍNíQÍÿìÍñÀÍÔîÈͽîë!Í ízÝ–!yÝž"xÝž#ÔÿìÍHðÍÔî ߢ! Í íÝr!Ýq"Ýp#É~! W~æËÎËO##~õæGñæð�OÐÉ{/_z/W*„õ{¥oz¤g"„õë*‚õ{¥oz¤g"‚õÉ>ÿ2«õ:±õ2°õ_Ý~2¬õþ?(!æ{(Ý~=͆í:¯õÝwÉ* èé:¬õÝw:°õ_{æGí[„õ·(ËËú!±õËC(¾ÈwÕO!öÍæé|µ(Ë^#V#íS‰õ"‹õ‘õí°*“õí°ÑËCÀ*„õÍ/î"„õí[žõ>Ë:Ë= ù*—õå6#z³ øáí[¢õs#r*‹õ¯w#w2²õÍÍî>ÿÍïîÍÔîÈͽîþå(ðþ!(ì· #~Ö$ =2²õ͸ïÍÛî×ë!:±õ·()= üz´g{µoÉ*µõË<ËË<Ë"³õë!íK™õ>·íB0 ?ËË=(íjîå*¦õDM!öÍæéÁí[‰õ!0öÍæéDM!!öÃæéÝN :›õGË9ü/Æ G:�õݦ ý�Ýåá O :Ÿõ·^WÈ ^#V+É*‘õ:·õ…oŒ•gåýá~É!ÿÿ"µõÉ*µõ|¥<ÉÍâîØj*‹õí[µõ{–#zžÉO*µõ#"µõí[ õ·íR(0Ê}æ`2·õÀÅÍDîÍ…ïÍPïÍïÁ*¤õí[³õ·íRÈØ*‘õ€¯†#ü*•õ w¾È*‚õÍ/î"‚õí[ õ*‹õs#rÉ!'öÍæé·ÈÍnï(óÉ!*öÍæé·ÈÍnï(ñÉ* èéíS€õÍï*€õÔìíK€õíK‘õ!$öÃæé{æ2»õ>ÿ2ºõÝ"¸õÍÍî¯ÍïîÍÔî(ií[¸õþå(ÕÍâîÑ0Yͽîþ!(à¯2®õO:»õGÖ8"ýË ~(~· 2®õ# ÍÛî:µõæ2©õ¯2ºõÉÖ?/(âyÖ (à<(®æ �ÕÅ®G:�õ/æ ÁïÍÍî>ÿÛìÍôï> Í9ðÍÔîÈͽîÍëï6åͺïÍ›ñÍHðçÍñÀÍÔîÈÍâï ̓ñÍHðîÍñÀÍÔîÈÝË~(Ý~ ýw  ̓ñÍHðåÍôï> Í9ð:®õ·È2ºõ“ÍNíÝ6Í'òÍÔîÈÍGñÝ~ <ÀÝ~ Ýw ÉÝ~ õͽîÝåÑ í°ÝËþÝF ÝNñÝw ¸(0€Ýq:èæÈÝË ~ÌäôØÀͽîëÝåáÅ ÁHí°ý˾ýwÍDîÿÍïÍ…ïÍ^ïÃïÍNíÝË~ÀÍôïÍ7ðÍÔîÈÍâïýË ¾ ëÝåá :Ÿõ·(ÍòëÍòë½ð#Ë@(# é!ìÿÝ~ ¾8w###Ý~wÍâô–~Ë@(#¶+· wË@È#w–À°È#–+ÉÍ7ðÍÔîÀ:¬õ·À*è|µÈ:°õG~#·#ʺðþ$(ñ=æ¸(ë+å͆íá:¯õG~#þ$(¨æ ÖåÍ7ðÍÔîá(Ìͽî:±õ<2¬õÉÍNíÝ6Í¡óÍôïÝ~õÝ6å>Í9ðñÝwÍÔîȯÝw Ýåáw#üͽîÝ~wÍäôÍâôÍäô ̓ñÝËþÉÝË~ ,ͱñ:©õ<ÈÍ ó8 $Í7ðÍÔî :­õ·(Í‚òÍÔî ÝËþúðÍ ó8ôÜÍGñ¯Ã›ìÝN ÝFËp7À yæO xæ?G7È:�õ¡Ý~ Ýq OÝ~ÝpGÉÍNí¯ÍRôÀÍNí¯2­õÝ~ þ€ ÍÊò:©õ· $Ýw ݾ0ÍŽîz³(Í~óÍVîÍPï:¨õþÀÝ4 É>‰!:›õGË#ËËø:œõݦ ³_ÉÍNí>ÿÍRôÀÝ˾ÉÍNí>ÿ2­õÍôïÝåýáÍåïÝ~ þ€8 ÍÊò:©õ· ²Ýw ÍŽîz³ Zåy·(=ͨîÍðáz³>Ê›ìÍ¡ós:Ÿõ·(#r:¨õÖ( 3Õ*‘õ€w#üÍ~ó:œõG/£_åÕÅÍVîÍ…ïÁÅÍ^ïÁÑáêÍïÑÍ¡óÅÍ~óÍVîÁÍ^ïÝ~ ݾ8<Ýw:¨õþÀÝ4 É2­õÝ~!W˺Ý~"õæOñæGÝ~#þ0c€GÝr ÝVËr Syݾ xÝ®æ?(>Ëz ÕÅͱñÁÑ:©õ<(.Í&óÅÍ7ðÁ:©õ< :­õ<(Í&ó>Í‚ò:©õ<(ÍGñ¯ Ý6ÀÝËþ{2©õ·É*‘õ` ~Ö!ÀWÕ:·õ_ƒ_åÍ4õÑÁØyþ(óí°û¯ÉÕÍ4õÑ>ÿ8Í õ~ÛìÕÕÁÍ7õÑØÀëÍ õÉ*è|µ7È:èæ€ÈéDisk I/O$No drive$File R/O$ Fn: $ File: $ DOS+ error : $€Copyright (c) 1986 C.B. Falconer (203) 281-1438ÃgùÑöÃ÷Ã÷Ã>÷Ãg÷ÃV÷ÃI÷Â÷æ÷Ç÷Ù÷á÷ÃÒ÷ÃÞ÷Ãa÷Þ÷gùuö›úçùgùuö»úAúVùH®?€ß% *ÿPå'cùHÊÀ ß%ÿlåO1€ÍŒ÷ b:fùõOͦ÷ñW Ý*Ûú!àÝ~¸0Å>ÝFÅÕÍÅü87ÑÁñ�G >ÍÅü8(¯2çú2åú>Ã2!ö"2!è"€Í¡÷:OÃà!÷Í ÷óv FAIL~§ÈOÍ>÷#öí8àŸÉåÅ!@Í÷§ +|µ õóͽøÍ÷(ûÁáí8áæÉí8àËW(ùyÓáÉí8�ËG(ùí8˜Ë¿Éí8�Ëo(ùí ˜Éí8�ŸÉÍa÷ (þõí Œ> í9Ž> í9ŽÉÍŒ÷y2êúÉ:çú·È:èú·ÄÇøÉy2ëúÉÅáÉíCßúÉ!y2éúþÐíL!3ö å ~#fo+F+NíCÝú "ÛúáÉ>2áú>2âúS¯2áúy2âúþ >2åú:éú2ïú:êú2ðú:ëú2ñú:åú·(*=2åú*éúí[ïúíR !ñú:ëú¾ 4~þH86!ðú4¯2äú¯2åú<2äú¯2ãú:ëúË?Ë?2æú!çú~6·(*éúí[ìúíR !æú:îú¾(:èú·ÄÇø*éú"ìú:æú2îú:äú·ÄÃø¯2èú:ëúæ.Ë?gËþýí[ßú€:áú· >2èúëí°:âúþ:ãúÀ·À¯2èúÍÇø:ãúÉ>ÍÅüÉ>>ÝåõÍNùÝ*Ûú!þý:ìúWñÍÅüÝá8¯É>§2ãúÉzþ?ØBíL!3ö  {þÿ ~#foåÝáÝ^ýÝ Éþ?ØåÝáË#!2ù~#fo´7ÈÝuÝt§ÉVöuöy§ÊÅü= :fùÉ=7ÌíøÉ*ÝúíKíúéxË!þ 8Ö <_ÉXɯ2z22fù!<ù"öÍíø¯ÍÅü!·ùͪù>í9Žþ û> í9Ží8�í8�¯2F!ÄùÍ ÷ÃÓö>ÿNí È#í£õ›€˜ ™›™œ BIOS built 08-Mar-1997 ÅÕí8ÞËw( öô ñ7¯ÑÁÉÍòú>8AÅÕñýÍeûùÑÁ!ñýå~æøý¾ !#~ý¾ #~Ö í(&í8'µá> ¯ >7>á7Éõí8”Ë(ùñí9•Éí8”Ë(ùí8•ÉÅF#~ÍXûùÁÉå!ïý:ðý/¦wáÉͳýí)#í!$í9%> í9 ¯í9!í9"Éͳýí) í!!í9"> í9#¯í9$í9%Éýã{€==ݾ0Šcí90>ÿÍXûÍûÅõý ñÁýãÉåÕÅ!@ÝF)ýT]!ÁÅýí)&í!'"üýÁÑáÉÍòú>Ø>ÍXûÍeûGÍeûÅË9¹Á>7Àxæàþ È>7ÉÅåB>‡ý2ðýGí8’Oæü²ö í9’y  í8’°í9’Ý~ ‡þ û= øÝ~ í9—>ÍXûÝ~ÍXûÝ~ˇÍXû!ïý:ðý¦ >ÍXûzÍXûÍ3ü8:ðý¶w¯§áÁÉþ8>7ÉÍØüõÜNýñدÉå!èü‡…o0$~#foãÉNýiýöüüüýý³ýå!sýå!‹ý å!£ýå!°ý"úýáõ>Ã2ùýå!"üýá>2øýñåÍùýá0þ(þ õÍ{û:øý= ãñ7ñýÉí[üýñýÉ7Éå¯2ïýí9’> í9’!dýÍpû¯áÉq+í8’æí9’¯ÉÍXüÂLý͇ûÍü>Íí91͹ûF@€ÉÍXüÂLýÍ ûÍü>ñí91͹ûE@€ÉÍXüÂLý͹ûVÉÃLýå|æðgí8:æðo|•8í88í8:‡‡‡‡o|•>8í89áÅåLo`)))) |æEá`Á§ÉNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNamo Ching-Hai Wu Shang ShihRECEIVE PASLICENSE TXT€ LICENSE TXTHARDWARETXT€HARDWARETXTd@AUUENCODEPASJ !"#UUDECODECÏMR'()*+,UUDECODEPASM$%&-.UUENCODECÏMP56789QDUP HEXRECEIVE CÏMC89:;<USER MAC1FORMAT CÏMGZ80 LIB23USER CÏMIDOS LIB 4PPIP CÏMMNDOSPLUS HEXD:;<=>DOSPLUS MAC€?EFHJKLODOSPLUS MAC€PQRSTUVWDOSPLUS MAC€XYZ[\]^_DOSPLUS MAC€`abcdefgDOSPLUS MACahijklmnBIOSHOOKMAC oROMHOOK INCpBIOS HEX,DqrBIOS MAC€stuvwxyzBIOS MAC€{|}~’“7BIOS SUB€BIOSTOP MAC�DPARM INC‚DRVTYPE INCƒDISKOPQ MAC€„…†‡ˆ‰Š‹DISKOPQ MAC!Œ�ŽFDC INC �LOADBIOSMAC �‘README TXTBCASCII INC”Z180 INCE•–—˜™Z180 INCEš›œ�žDPARM INCŸDRVTYPE INC ASCII INC¡ROMHOOK INC¢BOOTSEC HEX£BOOTSEC MAC@¤¥¦§BOOTSEC SUB¨README TXT ©Z80 LIBª«CCPLUS MAC€¬­®¯°±²³CCPLUS MAC}´µ¶·¸¹º»CCPLUS HEX'¼½¾Z180 INCE¿ÀÁÂÃDPARM INCÄASCII INCÅDISKOP MAC€ÆÇÈÉÊËÌÍDISKOP MAC!ÎÏÐFORMAT HEX&ÑÒÓFORMAT MACKÔÕÖרFORMAT SUBÙZ180 INCEÚÛÜÝÞDISKOP MAC€ßàáâãäåæDISKOP MAC!çèéDPARM INCêDRVTYPE INCëFDC INC ìASCII INCíROMHOOK INCîMACROS INCïSTARTUP MAC€ðñòóôõö÷STARTUP MACDøùúûüDEBUG MAC€ýþÿDRIVPARMMACDEBUG MAC€   ROM HEXf  ROM SUBDEBUG MACeMEMSETUPMACg>?@NOPSYSBOOT MAC* !RTC MAC."#$FDC INC %Z180 INCE&'()*DOSPLUS SUB+CCPLUS SUB,!!READ ME -ROM UUE€./012345ROM UUE6BIOS MAC=ROM PASoABCDEFGROM COM^HIJKLMREADME TXT_QRSTUVQDUP MAC DISKCOPYMAC?/0DISKCOMPMACYWXYZ[\DISKCOPYCOM]DISKCOMPCOM ^åDEBUG PRN€klmnopqråDEBUG PRN€stuvwxy{åDEBUG PRN€|}~€�‚ƒåDEBUG PRNe„…†‡ˆ‰ŠåSYSBOOT PRN€‹Œ�Ž��‘“åSYSBOOT REL’åSYSBOOT PRN”åDISKOP PRN€•–—˜™š›œåDISKOP REL ŸåDISKOP PRN€�ž ¡¢£¤¥åDISKOP PRN€¦§¨©ª«¬­åDISKOP PRND®¯°±²åDRIVPARMPRN)³´µåDRIVPARMREL¶åTEST HEXe·¸¹º»¼½åTEST SYM¾ååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååtype receive.pas Program Receive_Text_Files; {Simple program to receive downloaded text files. Text is processed until a ESC occurs at the start of a line. Lines are terminated by CR. LF chars. are discarded. Invokation: RECEIVE The file-name must be specified on the command line. D-X Designs Pty Ltd. Perth Australia Author: D R Brooks. May 1996 } type xline = string[120]; const cmtail = $80; {CP/M command tail} var lfirst: boolean; outf : text; iline : xline; cmd : ^char; ctr : integer; procedure xreadln (var x :xline); var a : char; begin if (not lfirst) then write(#6); {Move to here: Ready signal} lfirst:= false; inline ($3e); inline ($05); {ld a,05} inline ($ed); inline ($39); inline ($e0); {out0 (sccacnt),a} inline ($3e); inline ($6a); {ld a,6a - RTS on} inline ($ed); inline ($39); inline ($e0); {out0 (sccacnt),a} x := ''; repeat a := chr(bios(2)); if a <> ^J then begin if a <> ^M then x := x + a; end; until a = ^M; { write('.'); Moved to top of routine} inline ($3e); inline ($05); {ld a,05} inline ($ed); inline ($39); inline ($e0); {out0 (sccacnt),a} inline ($3e); inline ($68); {ld a,68 - RTS off} inline ($ed); inline ($39); inline ($e0); {out0 (sccacnt),a} end; begin writeln('File Download Receiver: D-X Designs Pty Ltd, 1996'); lfirst := true; ctr := 1; {Start of string} iline := ''; cmd := ptr (cmtail + ctr); while ord(cmd^) <> 0 do begin iline := iline + cmd^; ctr := ctr + 1; cmd := ptr (cmtail + ctr); end; if length(iline) = 0 then begin writeln('File Name must be specified'); halt; end else begin assign(outf,iline); rewrite(outf); writeln('Ready to receive ', iline, ' type ESC/CR to end'); xreadln(iline); while iline[1] <> ^[ do begin if iline[1] <> ^J then writeln(outf,iline); xreadln(iline); end; close(outf); end; inline ($3e); inline ($05); {ld a,05} inline ($ed); inline ($39); inline ($e0); {out0 (sccacnt),a} inline ($3e); inline ($6a); {ld a,6a - RTS on} inline ($ed); inline ($39); inline ($e0); {out0 (sccacnt),a} end.  type ESC/CR to end'); xreadln(iline); while iline[1] <> ^[ do begin if iline[1] <> ^J then writeln(outf,il What's on this disk, & where is it? ----------------------------------- To keep things in order, I have filed everything under different DOS+ "users". Think of those users as MS-DOS subdirectories. I have not included source files that are generally available on the Internet: only for code I myself wrote or altered. In general, the code is suitable for processing with M80/L80, and Turbo Pascal. Generally, each "user" repesents a separate project. Each user therefore includes (unless it's a trivial matter) a .SUB file to assemble & link it. The more complex projects also include a README.TXT file. The DOS+ and CCP+ modules are by C B Falconer (see his notices in !!READ.ME and the source files). I have made minor changes to assemble with M80 (documented in the files), but have not changed the "sense" of the code. The disk layout is: User 0, "system" files (accessible from any user): 1. PPIP.COM A shareware replacement for CP/M's PIP 2. UUENCODE.COM and UUDECODE.COM The standard binary/ASCII converters 3. FORMAT.COM Formats 3" and 5" disks for the P112 system 4. USER.COM Change user numbers under DOS+. Same as CP/M (ie "USER n"), but 0 <= n <= 9. 5. RECEIVE.COM Receives and files ASCII text. Enter "RECEIVE ", and enter ESC/CR to quit. Because these are "system" files, they will not show up on a DIR listing. User 0, non-system files (visible on DIR): 1. README.TXT This file 2. HARDWARE.TXT Explanation:20800000AF320081CF3E021600CD2A803E031601CD2A803E041601CD2A803A00813C32009A :2080200081FE5038E0214680E7FF0603C52100814E06121E01210181DD2A0B00CFC1D01072 :20804000EB215180E7FF46696E6973686564210D00556E7265636F76657261626C65206533 :0780600072726F72210D0026 :00000001FF FORMAT CÏMGZ80 LIB23USER CÏMIDOS LIB 4="!M87D@;F]T(&)E M('1H92!S86UE(&1R:79E+`T*(&)U="!M=7-T(&)E('1H92!S86UE('1Y<&4- M"@T*(&5G($1)4TM#3U!9($$Z($(Z#0H-"B1$7!E#0HD0V%N;F]T(&-O<'D@=&\@=&AE('-A;64@9')I=F4-"B1! M8G-E;G0@;W(@:6YV86QI9"!DJ!KS)6@CI<`,T4@#X"S2>`.FP`S12`/@/-)X`Z;`#-%(`^!,TG@"%6@C1^ MRS_=O@LXTRC1$4>"P["`0V]M<&QE=&5D(0T*)``````````````````````` M```````````````````````````````````````````````````````````` M```````````````````````````````````````````````````````````` M```````````````````````````````````````````````````````````` M```````````````````````````````````````````````````````````` M```````````````````````````````````````````````````````````` I```````````````````````````````````````````````````````` ` end sum -r/size 10924/1265 section (from "begin" to "end") sum -r/size 16667/896 entire input file m -r/size 57242/1443 section (from "begin" to "end") sum -r/size 64639/1024 entire input file `````` M```````````````````````````````````````````````````````````` M```````````````````````````````````````````````````````````` M```````````````````````````````````````````````````````````` M```````````````````````````````````````````````````````````` M```````````````````````````````````````````````````````````` B```````````````````````````````````````````````` ` end su;Fast duplicator. Runs under ROM. 3" disks only. .z80 cseg xor a ld (track),a rst diskop ;Reset drives l1: ld a,2 ld d,0 ;Read drive A call dfn ld a,3 ld d,1 ;Write drive B call dfn ld a,4 ld d,1 ;Verify B call dfn ld a,(track) ;Next track inc a ld (track),a cp 80 ;Done? jr c,l1 ld hl,dunmsg ;Yes rst putmsg rst break ;The end... dfn: ld b,3 ;Retry limit df1: push bc ld hl,track ld c,(hl) ld b,18 ;Sectors/track ld e,1 ld hl,buff ld ix,(parptr) ;Drive parameters rst diskop pop bc ret nc ;Back if no error djnz df1 ld hl,fltmsg ;Report failure rst putmsg rst break ;Crash! diskop equ 08h ;Diskette driver parptr equ 0bh ;Ptr. to drive params. putmsg equ 20h ;ASCIIZ from (HL) break equ 38h ;Exit to ROM dunmsg: db 'Finished!',0dh,0 fltmsg: db 'Unrecoverable error!',0dh,0 dseg track: ds 1 ;Track number buff: ds 512*18 ;Track buffer end tmsg rst break ;Crash! diskop equ 08h ;Diskette driver parptr equ 0bh ;Ptr. to drive params. putmsg equ 20h ;ASCIIZ from (HL) break equ 38h ;Exit to ROM dunmsg: db 'Finished!',0dh,0 fltmsg: db 'Unrecoverable error!',0dh,0 dseg track: ds 1 page 90 title Disk-Copy Utility: P112 subttl 29-May-1996 DRB ;===============================================================; ; ; ; D I S K - C O P Y U T I L I T Y - P 1 1 2 ; ; ; ; ; ;===============================================================; ;=======================================================================; ; ; ; D-X Designs Pty. Ltd. Perth, Western Australia ; ; Project: 112 May, 1996 ; ; ; ; Copyright (C) 1996 David R. Brooks ; ; ; ; This program is free software; you can redistribute it and/or ; ; modify it under the terms of the GNU General Public License ; ; as published by the Free Software Foundation; either version 2 ; ; of the License, or (at your option) any later version. ; ; ; ; This program is distributed in the hope that it will be useful, ; ; but WITHOUT ANY WARRANTY; without even the implied warranty of ; ; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ; ; GNU General Public License for more details. ; ; ; ; You should have received a copy of the GNU General Public License ; ; along with this program; if not, write to the Free Software ; ; Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. ; ; ; ;=======================================================================; .COMMENT $ This program runs under DOS+, but uses ROM functions. It is relocated to high memory to run. $ Z80182 equ $ include Z180.INC include DPARM.INC include ROMHOOK.INC include ASCII.INC aseg org 100h jp begin runat equ 8000h begin: ld hl,reloc ld de,runat ld bc,size ldir ;Copy it up jp start ;Then run it sdv equ 5ch tdv equ 6ch ;Drive nos. from CCP+ exit equ 0 bios equ 1 ;Points to BIOS+3 bdos equ 5 ;------------------------------- reloc equ $ .phase runat ;Moved code testdv: ;Validate drive, passed in A and a scf ret z ;Zero from CCP+ if invalid dec a ;ROM is based-zero ld d,a ;Drive ld c,2 ;Call code ld e,-1 ;get type ld hl,(bios) dec hl dec hl dec hl ;Point at "overload" entry call jphl ret ;Back: CY, E, IX jphl: jp (hl) ;------------------------------- spars: ;Set up parameters for drive function ; Pass drive no. in A (as from CCP+) ld ix,(hwp) ld hl,tbuff ld e,1 ;Start at Sector 1 dec a ;Drives based zero ld d,a ld a,(ctrack) ld c,a ld b,(ix+EOT) ;No. of sectors ret ;------------------------------- dodv: ;Basic drive function push de push af ld a,0c8h out0 (cbar),a ;General Public License: Free Software Foundation Version 2, June 1991 Copyright (C) 1989, 1991 Free Software Foundation, Inc. 675 Mass Ave, Cambridge, MA 02139, USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. Preamble The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Library General Public License instead.) You can apply it to your programs, too. When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things. To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it. For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software. Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations. Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all. The precise terms and conditions for copying, distribution and modification follow. TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 1. This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you". Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does. 2. You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program. You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. 3. You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions: 1. You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change. 2. You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License. 3. If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.) These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program. In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. 4. You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following: 1. Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, 2. Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, 3. Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.) The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable. If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code. 5. You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. 6. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it. 7. Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License. 8. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program. If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances. It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice. This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. 9. If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License. 10. The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation. 11. If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. NO WARRANTY 12. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 13. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. END OF TERMS AND CONDITIONS How to Apply These Terms to Your New Programs If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. one line to give the program's name and an idea of what it does. Copyright (C) 19yy name of author This program is free software; you can redistribute it and/or modifyneral Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. Also add information on how to contact you by electronic and paper mail. If the program is interactive, make it output a short notice like this when it starts in an interactive mode: Gnomovision version 69, Copyright (C) 19yy name of author Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details. The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, the commands you use may be called something other than `show w' and `show c'; they could even be mouse-clicks or menu items--whatever suits your program. You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the program, if necessary. Here is a sample; alter the names: Yoyodyne, Inc., hereby disclaims all copyright interest in the program `Gnomovision' (which makes passes at compilers) written by James Hacker. signature of Ty Coon, 1 April 1989 Ty Coon, President of Vice This General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Library General Public License instead of this License. ompilers) written by James Hacker. signature of Ty Coon, 1 April 1989 Ty Coon, President of Vice This General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you mayååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååZ80182 CPU card. David R. Brooks, daveb@iinet.net.au ---------------------------------------------------- 1 Introduction The "P112" board implements a stand-alone Z180-based computer system. Although primarily designed as a CP/M platform, it can support other software. The board is designed to fit on a 3.5" diskette drive (some drives may require spacers). It requires only +5V power, so that, with a 5V-only diskette drive, no other power supplies are required. Power consumption (board only) is around 150mA. The board supports two RS-232 serial and one parallel IO port, besides a capability for bus expansion. An expansion socket permits 3 further serial ports to be used, by providing off-board level converters. All ports are fully inter- rupt-capable. The following goals were set, in selecting components: * Parts should be current production, recommended for new designs * No specially programmed logic devices should be necessary 2 Logic Description The following descriptions should be read in conjunction with the accompanying schematics. Data sheets on the various chips are obtainable from the manufac- turers' Web sites. 2.1 CPU Zilog recommend two parts for new designs: the Z84C15 and Z80182. For the present project, the Z80182 is appropriate, providing a Z180 core, with enhanced memory mapping features. This part is available in a range of clock speeds: the initial boards are clocked at 16MHz. This speed, while the highest the CPU chip can support, does limit the choice of serial-port speeds, as it does not factor well. This has minimal impact on the standard serial port, which uses the in- built baud-rate generator. This generator is very flexible in its range of pos- sible divisors. If however, the expansion ports (see P16 below) are used, they have a much reduced set of divisors available, and will normally require a carefully-chosen clock frequency. The boot software can recognise and adjust to the following clocks: 12.288MHz 16.0MHz 18.432MHz 24.576MHz The last two will require a faster CPU chip to be fitted. The Z80182 includes several in-built peripheral functions. All these are fully supported by the Z80 vectored interrupt system. The following internal peri- pherals are used: 2.1.1 Serial Port The Z80182 has a total of 4 serial ports. Of these, one is brought out as the default terminal port, at normal RS232 levels. The remaining 3 ports are available as un-buffered TTL signals, for use with off-board level converters. One of these additional ports features full SDLC functionality, and can be configured for DMA control. The Z80182 serial ports do not support the DSR and RTS modem-control signals, so these are provided (in the main-terminal port) by two lines from the on-chip paral- lel port (see below). These lines are not used by the standard software. 2.1.2 Parallel Port The Z80182 has one 8-bit parallel port available (the others have been overridden for other functions). This is used to support on-board facilities. The pin assign- ments are: A0 RTC data I/O line (bidirectional) A1 RTC Clock line A2 RTC Reset line A3..A4 Not used A5 Set low to enable the 12V Vpp generator for flash ROMs A6 DSR input from Serial Port 1 A7 RTS output to Serial Port 1 2.1.3 DMA By default, DMA Channel 0 is used for the diskette controller, and Channel 1 is available to an expansion card (if fitted). Jumper P2 may be altered if required, to provide DMA support for Serial Port 1. The Z180 DMA only provides the TENDx (end-of-block) signal during its write cycle. This makes it unusable with the floppy disk controller, when reading from the disk (the FDC requires TEND asserted during the DMA cycle addressed to it, not to the memory). Consequently, the FDC is programmed not to use TENDx, which implies that all transfers will post a "end of cylinder" error. This is allowed for by the software. 2.1.4 Memory Mapping The Z80182 includes two levels of memory mapping logic. The first maps the 64kB logical address space into a maximum of 3 "zones" in the 1MB physical address space. The second decodes the RAMCS\ and ROMCS\ outputs from the translated physical address. In normal use, the first map may be changed frequently, as the operating system switches tasks. The second will normally be initialised at reset, in terms of the amount of memory actually fitted, and not changed thereafter. The boot-code includes a "smart" memory initialisation routine, which examines the chips actually fitted, and locates them in the physical space in an optimal manner. The sign-on message includes a report of the amount of RAM available, and its location in physical address space. If sufficient RAM is present, the ROM will be copied into low RAM, and afterwards disabled. This enables the CPU to be run faster. The memory setup routine makes two requirements: 1. If two RAM chips are fitted, they must be of the same size. 2. The address-decode jumper P1 must be correctly set. If these requirements are not met, the startup code will malfunction. 2.1.5 Interrupts The Z80182 has full vectored-interrupt support for its internal peripherals, plus 3 external interrupts. These are: INT0\ The regular Z-80 vectored interrupt input INT1\ & INT2\ Auxiliary interrupt inputs (vectored) The NMI interrupt is not used. The P112 board does not use INT0\, but makes it available on the expansion socket, J1. It is therefore available to expansion boards. INT1\ is assigned to the diskette interrupt, while INT2\ is shared by the parallel port and the auxiliary serial port (both on the SMC chip). For proper operation, both these interrupts should be programmed to be active-low, level sensitive (this is done by default in the ROM code). The initial software release uses no interrupts. A future INT2\ routine should begin by reading the interrupt-ready register from the auxiliary serial port. This will reveal which (if any) serial-port condition has issued the interrupt. If none, the interrupt is from the parallel port. The interrupt routine should run repeatedly as long as the INT2\ pin is low: this will process multiple interrupts occurring together. Note that the ROM code leaves the INT1\ and INT2\ interrupts disabled (via the ITC processor control register). This must be enabled before they can be used. 2.2 Memory The board is designed to accept a wide variety of memory parts, in both 28 and 32-pin packages. The 0.6" DIP format was chosen as being compatible with the widest range of parts. One ROM socket and two RAM sockets are fitted. A pre-programmed ROM can be fitted in a RAM socket if desired. On-board RAM capacities from 32kB to 1MB are available. The jumper P3 can interchange the select signals for the ROM and RAM-1 sites. This permits a pre-programmed ROM to be fitted in RAM-1 (U3), to program a blank flash device in U4. (See below). 2.2.1 ROM The ROM socket (U4) can accept a 32kB ROM part. A pre-programmed EPROM may be used, or a "flash" ROM. The board includes facilities for in-system programming of 5V and 12V flash ROMs. For normal use, the header P12 should be jumpered across Pins 2-3 (WE\). For 12V parts (Intel or AMD 28F256), the 12V converter U12 is required. At power-up, this converter will be disabled, causing a Vpp of 5V to be supplied via D2. This makes the circuit safe with 5V ROMs also. To program a ROM, set the CPU parallel port pin A5 low: this enables the 12V supply. For 5V ROMs (eg Atmel AT29C256), U12, Q1, R3 and R4 may be omitted. D2 may be replaced by a shorting link, to deliver standard 5V power. 2.2.2 On-Board RAM Each RAM socket may accept a 32kB, 128kB or 512kB SRAM part. The address decoding must be set for the parts in use, as follows: RAM size RAM part (typical) P1 setting P13 setting ------------------------------------------------------------------- 32kB / 64kB HM62256 1-4 (A15) 1-2 (Vcc) 128kB / 256kB HM628128 1-2 (A17) 1-2 (Vcc) 512kB / 1MB HM628512 1-3 (A19) 2-3 (A17) It is not possible to mix RAM chips of different sizes. For zero wait-state operation, 70nS parts are required. 2.2.3 Expansion RAM Provision is made for an expansion board to carry up to 32kB of RAM, which may be mapped into the main memory space. By convention, such memory will be at the top of the 1MB physical space. The purpose of this is to provide for dual-port memory for video drivers and similar devices. Of course, the 32kB may be extended by a bank-switching arrangement on the expansion board. Expansion board memory should be selected when the signals ROMCS\ and RAMCS\ are both high (ie no on-board memory is selected). The read and write enables are MRD\ and MWR\, which enable bus transactions. If necessary, the WAIT\ line may be driven low to delay the CPU. 2.3 IO Cycle Control The multi-function IO chip requires two additional wait-states in every IO cycle, to satisfy its timing. This is provided by setting the IWI bits in the DCNTL register of the Z80182 CPU (IO address 32H). 2.4 Real-Time Clock The Dallas DS1202 has a simple bit-serial interface. This is supported by 3 bits from the CPU's internal PIO device (see above). The DS1202 also provides a block of battery-backed RAM, which may be useful for storing BIOS setup parameters (memory size, serial communications setups, etc.). 2.5 Expansion Socket The CPU bus is brought out to the expansion socket J1. Access to expansion memory has been described above. For external IO devices, IORQ\ low and M1\ high should be decoded to validate an IO access. Valid addresses for expansion boards are in the ranges 40..7F and C0..D7. The IO data strobes are RD\ and WR\. Support is provided for expansion boards using the Z80182 internal DMA. The EXTRQ\ request line may be jumpered (at P2) to one of the internal DMA channels. 2.6 Serial Port 1 This is implemented using one of the Z80181's internal SCC channels. These have enhanced capabilities over standard PC channels, including SDLC operation, and fully vectored interrupt support. See the Z80182 documentation for details. 2.7 Multi-IO Chip The non-CPU IO functions are implemented in a SMC multi-function IO chip. These parts are available in several variants, and the board is designed to accept 4 different types: FD37C651, '652, '665 and '666. Further details on configuration options are given below. 2.7.1 Address Decoding The multi-IO chip occupies the IO address space 80..BF. These addresses are mapped to appear to the IO chip as standard PC addresses. Programming of the multi-IO features follows standard PC practice. The address mapping is described below. 2.7.2 Cycle Timing The IO chip latches address data at the beginning of IOR\ or IOW\. This can cause problems with the Zilog timing, which regards the RD\ and WR\ signals as basically clock-enables. This is overcome by use of the CPU's "E" clock output, which goes high during the valid part of a bus cycle. This is used as a local enable to IOR\ and IOW\, via the decoder U11A. This decoder also provides the interlock from the safety-latch described below. 2.7.3 Safety Latch As pointed out by Claude Palm (The Computer Journal, No. 76) the Z180-series devices can generate spurious IO selections during interrupt-acknowledge cycles. These are normally suppressed, since neither of the RD\ or WR\ data strobes appear. However systems which decode the DACK\ (DMA acknowledge) from the address may malfunction, due to these spurious IORQ\ signals. In the present design, this is prevented by the latch U8. This is set at the beginning of a interrupt acknowledge cycle (M1\ and IORQ\ both low), and blocks any address decodes. The latch is only cleared when IORQ\ again goes high, at the end of the acknowledge cycle. 2.8 Serial Port 2 This is the "primary" serial port on the multi-IO device (the secondary port is not used). It is strictly PC compatible. 2.9 Diskette Port The diskette interface emulates a standard PC-type diskette controller. The IO chip is configured to logically "swap" Drives 0 and 1. This assumes the drives have the DS1 jumper set, as is normal for PC-AT usage. Given this, Drive-0 connects directly to the PCB, with no ribbon-cable cores swapped. This is to enable the PCB to be mounted directly on the disk drive, with the PCB and drive connectors adjacent. Drive-1 will be the further away, and will have cores 10-16 swapped in the cable. It should be noted that there is no universal standard regarding the placement of the data connector on diskette drives: it is not possible to have this card fit directly to every drive available. The direct fitting has been tested with Teac FD235 drives. 2.10 Printer Port The printer port provides PC-like functions, in basic bidirectional mode. Enhanced ECP and EPP modes are not supported. 3 Major Components The principal components are briefly introduced below, with particular reference to their use in the present application. 3.1 CPU Chip The Z80182 provides a Z180 CPU core, multi-function serial IO port, and two DMA channels. Extensive use is made of the Z180's memory mapping ability, to fill in "holes" in the physical address space, and to switch the ROM in and out of circuit. This part is available in several speed grades: the initial build will be fitted for 16MHz clocking. 3.2 I/O Combination Most of the IO functions are implemented in a SMC multi-IO part, designed for use in PC's. The board is multi-capable, and can accept any of the following parts: * FDC37C651 * FDC37C652 * FDC37C665 * FDC37C666 The '651 and '665 are fully software configurable. However the '652 and '666 have some functions configured by external resistors. These are not otherwise fitted, and are the only surface-mount resistors on the board. Space limitations preclude putting reference designators on the board, however they are all 1206 size, 27kR parts. Their reference designators are R101..R111. No harm will occur if they are fitted with a software-configurable IO chip. These parts can be programmed to generate active-high or active-low interrupt signals. In this application, active-low is required, and is selected by the start-up code. These chips come in (at least) two sub-variants, identified by -GT and -IR suffixes. In the P112 board, the main difference is that the -IR version only supports 3 disk drives (Drive 2 is unavailable), while the -GT supports 4. 3.2.1 Port Addressing The IO chip may be configured for several different internal address decoding schemes, correponding to different IO assignments in a PC environment. In the present application, the following addresses are used: Function Address (CPU) Address (IO chip) ----------------------------------------------------------------- Parallel Port 8C..8F 3BC..3BF Diskette (program access) 90..97 3F0..3F7 Serial Port 98..9F 3F8..3FF Diskette (DMA access) A0..BF N/A 3.3 Flash ROM The board is designed to accept a variety of flash ROM parts. The inital build is fitted with Intel parts, which need a 12V programming voltage. If 5V-only parts (eg Atmel) are used, the voltage converter U12 and its associated components may be omitted. 3.4 Realtime Clock A Dallas DS1202 realtime clock/RAM is used. This has a serial interface, which is implemented using 3 spare parallel-port pins from the CPU chip. Be aware that this chip, when first powered-up, defaults to write-protected and oscillator disabled. Before it will run normally, you must first turn off write- protect, then activate the oscillator. Each is a single-byte write operation. 4 Connector Pins The pin assignments of the various connectors are tabulated below. All are 0.1" pitch headers. 4.1 P1 RAM Size Selector Pin Assignment -------------- 1 Address decoder input 2 A17 (128kB chips) 3 A19 (512kB chips) 4 A15 (32kB chips) This jumper selects the address at which the address logic switches between the RAM chips. In effect, it defines the capacity of each RAM chip. The pin assignment is as follows: 4 3 1 2 4.2 P2 DMA Requests Pin Assignment -------------- 1 Diskette controller request 2 DMA request 0 (to CPU) 3 Expansion skt. request 4 DMA request 1 (to CPU) 5 SIO request This header selects the sources for DMA requests. The Z180 core includes 2 DMA channels, which may be connected among 3 possible sources: diskette, expansion socket, and serial IO channel. The standard boot code requires Pins 1 and 2 jumpered. 4.3 P3 Flash Bootload Selector Pin Assignment -------------- 1 RAM select from CPU 2 RAM socket 1 select 3 ROM socket select 4 ROM select from CPU For normal use, jumper pins 1-2, 3-4. For ROM duplicating, jumper pins 1-3, 2-4. This jumper allows the ROM (U4) and RAM-1 (U3) sockets to be logically interchanged. The effect is that the CPU will boot from RAM-1. This enables the board to serve as a flash-ROM duplicator, using the following procedure. Set P3 in the "normal" position, and fit the standard boot ROM in U4, with a 32kB RAM in U2 and U3. Boot the system: it will report RAM available at 40000..4FFFF (physical locations). The logical space is mapped as 0000..7FFF to U4 (ROM), and 8000..FFFF to U3 (RAM). U2 is currently inaccessible (being overlaid by the ROM). NB The following procedure will be superseded by future software. Now copy the existing boot code into U3 as follows. Manually enter the following code into high memory: FFF0 di F3 FFF1 ld hl,0 21 00 00 FFF4 ld de,8000 11 00 80 FFF7 ld bc,FFF0 01 F0 FF ;Copy up to this code FFFA ldir ED B0 FFFC halt 76 Set SP=FFFF, and Go FF00. The ROM code will be copied into U3 RAM (overwriting the Debugger workspace), and the CPU will then halt. Without removing power, hold the Reset input pin low. Then interchange the J3 jumpers, and fit the new ROM in U4 (do this carefully: you are "hot-plugging" the ROM). Finally remove the Reset. The board will re-boot, and will report RAM at 40000..47FFF (physical). The code now sees logical addresses 0000..7FFF in U3, and 8000..FFFF in U2. The ROM is currently inaccessible. The system is now live, with 64kB of logical RAM available. You can boot the opera- ting system normally, and use the ROM-burning program (not yet available) to prog- ram the ROM. Remember to use an OS version with a RAM-resident BIOS! To boot from your new ROM, don't forget to reset the P3 jumpers before resetting. If you do not, it will boot from the RAM image: this may be a useful technique for checking-out a new boot program before burning it in ROM. The above procedure is not, of course, limited to building boot ROMs. In this mode, the board serves as a general-purpose flash-ROM programmer, for 32kB parts. 4.4 P4 Serial Port 1 Pin Assignment -------------- 1 DCD (in) 2 DSR (spare in) 3 RXD (in) 4 RTS (spare out) 5 TXD (out) 6 CTS (in) 7 DTR (out) 8 SYNC/RI (in) 9 Ground 10 Not used The pin assignments are such that a 10-way ribbon cable (with the 10th core removed) can connect a 10-way header to a DB-9 plug, and generate the standard PC/AT pin arrangement. This port is implemented as a Z180 port, which does not support the DSR and RTS lines. These are therefore implemented using parallel port pins. This port can support synchronous modes, in which the CPU's SYNC pin (normally used as the RI input) becomes an output. To prevent contention with the RS232 receiver, the jumper at P5 should be removed in synchronous working. The Z180 uses the CTS and DCD pins as hardware enables. For the port to operate, these must either be strapped to the DTR output, or connected via (for example) a "null modem" cable to another PC-AT compatible port. If left open, the port will be disabled. 4.5 P5 SYNC Jumper Pin Assignment -------------- 1 From SYNC receiver 2 To SYNC pin on CPU See P4 above. This link may be removed to prevent contention between the SYNC output of the CPU chip, and the RS232 receiver output. The link should be fitted in asynchronous working, and removed for synchronous. 4.6 P6 Power Supply/Reset Pin Assignment -------------- 1 Ground 2 +5V 3 Reset 4 +5V 5 Ground The reset input is intended for a switch to ground. It may be left open, the board will automatically reset when powered up. 4.7 P7 Parallel Printer Pin Assignment -------------- 1 Strobe\ 2 AutoFeed\ 3 D0 4 Error\ 5 D1 6 Init\ 7 D2 8 Select-In\ 9 D3 10 Ground 11 D4 12 Ground 13 D5 14 Ground 15 D6 16 Ground 17 D7 18 Ground 19 Ack\ 20 Ground 21 Busy 22 Ground 23 PaperEnd 24 Ground 25 Select 26 Ground The pin assignment is such that a 26-way ribbon cable (with line 26 removed) may run direct to a DB-25 connector, presenting a standard IBM parallel printer inter- face. The interface offers the basic bidirectional capability; expanded (ECP/EPP) feat- ures are not available. 4.8 P8 Serial Port 2 Pin Assignment -------------- 1 DCD (in) 2 RXD (in) 3 TXD (out) 4 DTR (out) 5 Ground 6 DSR (in) 7 RTS (out) 8 CTS (in) 9 RI (in) 10 Not used See P4 for details. This port is implemented on the combination IO chip, and is strictly PC compatible. 4.9 P9 Disk Drives 0,1 Pin Assignment -------------- 2 DENSEL\ 4 Not used 6 DRATE0 8 INDEX\ 10 MTR0\ 12 DR1\ 14 DR0\ 16 MTR1\ 18 DIR\ 20 STEP\ 22 WDATA\ 24 WGATE\ 26 TK0\ 28 WPROT\ 30 RDATA\ 32 HDSEL\ 34 DSKCHG\ All odd-numbered pins are Ground. Drive wiring is the usual PC/AT type, with lines 10..16 switched around between the drives. The Drive 0 & 1 signals are logically interchanged within the IO chip, so that the drive connected without a twist in the cable is Drive 0. This will typically be the drive on which the board is mounted. 4.10 P10 Disk Drives 2,3 Same as P9, but decodes Drives 2 & 3. 4.11 P11 Battery Isolator Pin Assignment -------------- 1 Ground 2 Battery -ve This serves as a safety-isolator while working on the board, and to force a reset to the real-time clock chip. 4.12 P12 ROM Pin-3 Function Pin Assignment -------------- 1 +5V 2 U4 pin 3 3 Memory Write\ This jumper connects Pin 3 of the ROM socket either to MWR\, or to Vdd. For normal use, connect to MWR\. 4.13 P13 RAM Pin-30 Function Pin Assignment -------------- 1 +5V 2 U2/3 pin 30 3 A17 For 512kB RAM chips, this pin should connect to A17. For smaller parts, connect to Vdd. 4.14 P14 Extra Serial Ports This connector carries un-buffered signals for the spare CPU serial ports. Uncom- mitted inputs have 47k pull-up resistors. The signal names follow those used in the Z80182 data-book, which should be consulted for the capa- bilities of these ports. The pin-outs are: Pin Signal Pin Signal ---------------------------------------------- 1 TXA1 2 RXA0 3 RTS0 4 CTS0 5 RTSB = TEND1 6 DTRB 7 CTS1 8 TXA0 9 RXA1 10 DCD0 11 CTSB 12 DCDB 13 Vcc 14 TXDB 15 TRXCB 16 RXDB 17 RTXCB 18 SYNCB 19 GND 20 GND The 3 ports are designated by the final characters in the names, thus: 0 & 1 Basic asynchronous ports B Full-function a/sycnhronous port Note that RTSB and TEND1 share a pin. Either role is possible, by suitably program- ming the CPU chip. The standard software does not use this pin at all. 4.15 J1 Bus Expansion Pin Assignment -------------- 1A Ground 1B Ground 1C +5V 2A D0 2B A8 2C D1 3A D2 3B A9 3C D3 4A D4 4B A10 4C D5 5A D6 5B A11 5C D7 6A A0 6B A12 6C A1 7A A2 7B A13 7C A3 8A A4 8B A14 8C A5 9A A6 9B RAMCS\ 9C A7 10A Mem-Read\ 10B Mem-Write\ 10C Ground 11A M1\ 11B WAIT\ (input) 11C RD\ 12A IORQ\ 12B ROMCS\ 12C WR\ 13A RST\ (reset) 13B E 13C INT0\ (dedicated interruProgram uuencode; { UUDECODE program modified May 1996 by D R Brooks. To enable it to run with DOS+, which aborts a program that tries to read a non-existent file. This precludes the standard Turbo trick of issuing RESET to see if a file exists: if it does not, the program will die. The test has been removed: it will overwrite existing files, WITH NO WARNING GIVEN.} {Fixed 'off-by-one' error @ EOF in routine ENCODE1 - B.Eiben@MARKET - 16-Aug-86} {Functions to parse the CP/M command tail. D-X Designs Pty Ltd. D R Brroks May 1996 } const cmtail = $80; type argt = string[32]; function paramcount : integer; var ct, ctr : integer; cmd : ^char; last : char; begin ct := 0; ctr := 1; last := ' '; cmd := ptr(cmtail+ctr); while ord(cmd^) <> 0 do begin if ((last = ' ') and (cmd^ <> ' ')) then ct:= ct+1; last := cmd^; ctr := ctr+1; cmd := ptr(cmtail+ctr); end; paramcount := ct; end; function paramstr(i : integer) : argt; var local : argt; last : char; ct, ctr : integer; cmd : ^char; label got, exit; begin ct := 0; ctr:= 1; last := ' '; local := ''; cmd:= ptr(cmtail+ctr); while ord(cmd^) <> 0 do begin if ((last = ' ') and (cmd^ <> ' ')) then begin ct:= ct+1; if ct = i then goto got; end; last := cmd^; ctr:= ctr+1; cmd:= ptr(cmtail+ctr); end; goto exit; got: while ((ord(cmd^) <> 0) and (cmd^ <> ' ')) do begin local := local + cmd^; ctr:= ctr+1; cmd:= ptr(cmtail+ctr); end; exit: paramstr:= local; end; {--- End of new functions ---} CONST header = 'begin'; trailer = 'end'; defaultMode = '644'; defaultExtension = '.uue'; offset = 32; charsPerLine = 60; bytesPerHunk = 3; sixBitMask = $3F; endofinfile : boolean = FALSE; TYPE string80 = string[80]; VAR inf : file; outfile: text; infilename, outfilename, mode: string80; lineLength, numbytes, bytesInLine: integer; line: array [0..59] of char; hunk: array [0..2] of byte; chars: array [0..3] of byte; { procedure debug; var i: integer; procedure writebin(x: byte); var i: integer; begin for i := 1 to 8 do begin write ((x and $80) shr 7); x := x shl 1 end; write (' ') end; begin for i := 0 to 2 do writebin(hunk[i]); writeln; for i := 0 to 3 do writebin(chars[i]); writeln; for i := 0 to 3 do writebin(chars[i] and sixBitMask); writeln end; } {Binary file read added by Ross Alford, ...!mcnc!ecsvax!alford. The original MSDOS versions of uuencode/decode just use read/write on a FILE OF BYTE. CP/M Turbo expects some file info to be stored in the first 4 bytes of files of any type other than TEXT. Getbyte (below) and Putbyte (in UUDECODE) bypass this 'feature' by using blockread and blockwrite. The only global variables either use are 'infilename' and 'inf' or 'outfilename' and 'outf'} function getbyte(var b : byte) : boolean; type bufptr = ^bufrec; bufrec = record next : bufptr; buffer : array[1..128] of byte end; const sectstobuf = 8; {max number of sectors to buffer} sectsread : integer = 0; {constants are essentially statics} bytptr : integer = 129; notopen : boolean = TRUE; j : integer = 0; infsize : integer = 0; listsave : integer = 0; var list,temp,temp2 : bufptr; begin if notopen then begin notopen := FALSE; assign(inf,infilename); {$i-} reset(inf); {$i+} if ioresult <> 0 then begin writeln('File ',infilename,' not found. Aborting'); halt end; infsize := filesize(inf); new(list); list^.next := NIL; listsave := ord(list); sectsread := 0 end; list := ptr(listsave); if bytptr > 128 then begin if list^.next <> NIL then begin temp := list^.next; dispose(list); list := temp; bytptr := 1 end else begin dispose(list); list := NIL; j := 0; while (sectsread NIL then begin b := list^.buffer[bytptr]; bytptr := succ(bytptr); getbyte := TRUE end else begin b := 0; getbyte := FALSE end end; procedure Abort (message: string80); begin {abort} writeln(message); close(inf); close(outfile); halt end; {abort} procedure Init; procedure GetFiles; VAR i: integer; temp: string80; ch: char; begin {GetFiles} if ParamCount < 1 then abort ('No input file specified.'); infilename := ParamStr(1); {$I-} assign (inf, infilename); reset (inf); {$i+} if IOResult > 0 then abort (concat ('Can''t open file ', infilename)); write('Uuencoding file ', infilename); i := pos('.', infilename); if i = 0 then outfilename := infilename else outfilename := copy (infilename, 1, pred(i)); mode := defaultMode; if ParamCount > 1 then for i := 2 to ParamCount do begin temp := Paramstr(i); if temp[1] in ['0'..'9'] then mode := temp else outfilename := temp end; if pos ('.', outfilename) = 0 then outfilename := concat(outfilename, defaultExtension); assign (outfile, outfilename); writeln (' to file ', outfilename, '.'); {--- Code disabled to run with DOS+ ---} {$i-} { reset(outfile); } {$i+} { if IOresult = 0 then begin Write ('Overwrite current ', outfilename, '? [Y/N] '); repeat read (kbd, ch); ch := Upcase(ch) until ch in ['Y', 'N']; writeln (ch); if ch = 'N' then abort(concat (outfilename, ' not overwritten.')) end; close(outfile); } {--- End of disabled code ---} {$i-} rewrite(outfile); {$i+} if ioresult > 0 then abort(concat('Can''t open ', outfilename)); end; {getfiles} begin {Init} GetFiles; bytesInLine := 0; lineLength := 0; numbytes := 0; writeln (outfile, header, ' ', mode, ' ', infilename); end; {init} procedure FlushLine; VAR i: integer; procedure writeout(ch: char); begin {writeout} if ch = ' ' then write(outfile, '`') else write(outfile, ch) end; {writeout} begin {FlushLine} write ('.'); writeout(chr(bytesInLine + offset)); for i := 0 to pred(lineLength) do writeout(line[i]); writeln (outfile); lineLength := 0; bytesInLine := 0 end; {FlushLine} procedure FlushHunk; VAR i: integer; begin {FlushHunk} if lineLength = charsPerLine then FlushLine; chars[0] := hunk[0] shr 2; chars[1] := (hunk[0] shl 4) + (hunk[1] shr 4); chars[2] := (hunk[1] shl 2) + (hunk[2] shr 6); chars[3] := hunk[2] and sixBitMask; {debug;} for i := 0 to 3 do begin line[lineLength] := chr((chars[i] and sixBitMask) + offset); {write(line[linelength]:2);} lineLength := succ(lineLength) end; {writeln;} bytesInLine := bytesInLine + numbytes; numbytes := 0 end; {FlushHunk} procedure encode1; begin {encode1}; if numbytes = bytesperhunk then flushhunk; endofinfile := not (getbyte(hunk[numbytes])); if not endofinfile then numbytes := succ(numbytes) {No succ at EOF -BE} end; {encode1} procedure terminate; begin {terminate} if numbytes > 0 then flushhunk; if lineLength > 0 then begin flushLine; flushLine; end else flushline; writeln (outfile, trailer); close (outfile); close (inf); end; {terminate} begin {uuencode} init; while not endofinfile do encode1; terminate end. {uuencode} terminate} if numbytes > 0 then flushhunk; if lineLength > 0 then begin flushLine; flushLine; end else flushline; writeln (outfile, trailer); close (outfile); MT.MQ(W#)/ID8!C[P&`(^!,,@%L'1[5/B`,7ES5(;T;?M4MH?&RKB``$(``ES M(W(!)``)>+$@&BKB``$, M``D&`(Q#[[5OB``X/S04`/"A(*N(``2$`">U+Y`!Q(W`C(^OM2^8`Q=4. M<%`.U;X@`.(+$@U2KB``$D M``GIW2KB`#[PPW^;\7R'M`"+K`-TJ[0#=;@+=9@-] MM"A([5(P#]UN`-UF`>7=(NL`W>$8XR`*W5X`W58!W>48&TU$W6X`W68!W>7= M&=UU`-UT`=UQ`MUP`]WET2KK`',C7A&2+-`"KR``$$``G= MY<$)VC4=[4O/`.U"`0``(0``VO`-^(V9O$Q,3>^;\7^LB\@`J M[0#EW>&program uudecode; { UUDECODE program modified May 1996 by D R Brooks. To enable it to run with DOS+, which aborts a program that tries to read a non-existent file. This precludes the standard Turbo trick of issuing RESET to see if a file exists: if it does not, the program will die. The test has been removed: it will overwrite existing files, WITH NO WARNING GIVEN.} {Functions to parse the CP/M command tail. D-X Designs Pty Ltd. D R Brooks May 1996 } const cmtail = $80; type argt = string[32]; function paramcount : integer; var ct, ctr : integer; cmd : ^char; last : char; begin ct := 0; ctr := 1; last := ' '; cmd := ptr(cmtail+ctr); while ord(cmd^) <> 0 do begin if ((last = ' ') and (cmd^ <> ' ')) then ct:= ct+1; last := cmd^; ctr := ctr+1; cmd := ptr(cmtail+ctr); end; paramcount := ct; end; function paramstr(i : integer) : argt; var local : argt; last : char; ct, ctr : integer; cmd : ^char; label got, exit; begin ct := 0; ctr:= 1; last := ' '; local := ''; cmd:= ptr(cmtail+ctr); while ord(cmd^) <> 0 do begin if ((last = ' ') and (cmd^ <> ' ')) then begin ct:= ct+1; if ct = i then goto got; end; last := cmd^; ctr:= ctr+1; cmd:= ptr(cmtail+ctr); end; goto exit; got: while ((ord(cmd^) <> 0) and (cmd^ <> ' ')) do begin local := local + cmd^; ctr:= ctr+1; cmd:= ptr(cmtail+ctr); end; exit: paramstr:= local; end; {--- End of new functions ---} CONST defaultSuffix = '.uue'; offset = 32; TYPE string80 = string[80]; VAR infile: text; outf : file; lineNum: integer; line: string80; outfilename : string80; {Binary file read added by Ross Alford, ...!mcnc!ecsvax!alford. The original MSDOS versions of uuencode/decode just use read/write on a FILE OF BYTE. CP/M Turbo expects some file info to be stored in the first 4 bytes of files of any type other than TEXT. Putbyte (below) and Getbyte (in UUENCODE) bypass this 'feature' by using blockread and blockwrite. The only global variables either use are 'infilename' and 'inf' or 'outfilename' and 'outf'} procedure putbyte(b : byte; flush : boolean); type bufptr = ^bufrec; bufrec = record next : bufptr; buffer : array[1..128] of byte end; const sectstobuf = 8; {max number of sectors to buffer} sectswritten : integer = 1; {constants are essentially statics} bytptr : integer = 1; notopen : boolean = TRUE; infsize : integer = 0; listsave : integer = 0; tempsave : integer = 0; var list,temp,temp2 : bufptr; i : integer; begin if flush then begin list := ptr(listsave); temp := list; for i := 1 to sectswritten do begin blockwrite(outf,temp^.buffer,1); temp := temp^.next end; close(outf) end else begin if notopen then begin notopen := FALSE; assign(outf,outfilename); {--- Following code disabled to run with DOS+ ---} {$i-} { reset(outf); } {$i+} { if ioresult = 0 then begin writeln('File ',outfilename,' exists. Cannot overwrite.'); halt end; } {--- End of disabled section ---} {$i-} rewrite(outf); {$i+} if ioresult <> 0 then begin writeln('Cannot open file ',outfilename,' for output.'); halt end; new(list); temp := list; for i := 1 to sectstobuf - 1 do begin new(temp2); temp2^.next := NIL; temp^.next := temp2; temp := temp2 end; listsave := ord(list); tempsave := listsave; end; temp := ptr(tempsave); if bytptr > 128 then begin if temp^.next <> NIL then begin sectswritten := succ(sectswritten); temp := temp^.next; bytptr := 1 end else begin temp := ptr(listsave); for i := 1 to sectstobuf do begin blockwrite(outf,temp^.buffer,1); temp := temp^.next end; temp := ptr(listsave); sectswritten := 1; bytptr := 1 end end; temp^.buffer[bytptr] := b; bytptr := succ(bytptr); tempsave := ord(temp) end end; procedure Abort(message: string80); begin {abort} writeln; if lineNum > 0 then write('Line ', lineNum, ': '); writeln(message); halt end; {Abort} procedure NextLine(var s: string80); begin {NextLine} LineNum := succ(LineNum); write('.'); readln(infile, s) end; {NextLine} procedure Init; procedure GetInFile; VAR infilename: string80; begin {GetInFile} if ParamCount = 0 then abort ('Usage: uudecode '); infilename := ParamStr(1); if pos('.', infilename) = 0 then infilename := concat(infilename, defaultSuffix); assign(infile, infilename); {$i-} reset(infile); {$i+} if IOresult > 0 then abort (concat('Can''t open ', infilename)); writeln ('Decoding ', infilename) end; {GetInFile} procedure GetOutFile; var header, mode : string80; ch: char; procedure ParseHeader; VAR index: integer; Procedure NextWord(var word:string80; var index: integer); begin {nextword} word := ''; while header[index] = ' ' do ÃÉÍ«Copyright (C) 1984 BORLAND Inc‚AM-102 120/Apple CP/MP[1;1k~·7È#õå~Íáñ=ÈóÍ% ÉÅÕåÝåýåõo&åͦñýáÝááÑÁÉoåͦÉþ€Ü�Ô©æîÅÕåÝåýåÍ£}Ùå!å!"8áãõÅÕ~#·(åÍáôÑÁñãÉ}´È:$‡‡‡ããããÅÒÁ= ô+èÍÐØ*ÎßõÅÕå!¨ÍZ!¢ÍÐ*ºÔBáÑÁñÉõÅÕå!´éõÅÕå!®àõ:¼·(ÅÕå=2¼!ÈÍZáÑÁñÉõ:¼· ÷ÅÕå<2¼!ÂåõÅÕå!¼ÛõÅÕååð!‹í°Ñ:žO:œ‚ÕÍÑ:ŸO:�ƒÍ!ðÍÐ* ÍBáÑÁñÉ!ð ë!›45(É!.+/ –0ü†õyþ0(ñíÉ d!kÃZ!{ÃZ͈æ͈o&Éô  áÁå:á·(yþ ÕÅÍ |µ(Íþ ÍþÊÅÁÑ*é"ÛÕx2áy·( >Ã28!?"9!É í°!á¸í°áí°>2گà Ã:ÃDÃ]ÃSÃXÃNÃ]ÃDÿ í[Ûþ (ú!eÍ}Í„þA8þQ0Gþ: xÖ@¯!\w# ( þ  ÍyÍVþ. ÍV!h6#ûÉ (þ*(þ.(þ!8þ}(þ*(Í„w#ßÉ>?> w#üÉþaØþ{ÐÖ É|Í’}õÍ›ñæÆ�'Î@'Ãè¯7Ë|À|·}È>ÿÉ"ÍíCß"í6#ûëÑùü "Ïë"ÕÍ�Í©éå*Ï·íB"Ïí[Í·íRëáÚ5í°É*Ïí°"ÏÙÉ^#V#Õ^#V#N#FáÉÝáëO/o&ÿ9ùëí°ÝéÑO/o&ÿ9ùëí°éÝáë!àÿ9ùëÅ(¯üí°Á> �‘(G¯üÝéÝá!àÿ9ù ¯w#üÝéÝáEÍŠ¶wÝéÝáÑ}“8÷�Ãu·íR·íB0 É>‘î·íRëê@ðøÉÕë·íRëáë·íR!È+Éͨ õÍz ð·íR!À+Éͨ õÍz ðÍ<!Ð+Éͨ õÍz ðÍ<!ÈØ+Éͨ ôÍz ïÍ<!ÈØ#Éͨ ôÍz ïÍ<!Ø+Éͨ õÍz ðT]KBë!z·> S>)ë)ë0 = öÉ|ªõÍJëÍJëDM¯go>íjíB0 7?ËË= ðëñðHåÍ\Ë<ËÑëÍÞëËzÈ5Í+È)ýÉÍ+ÈË<ËúÉëz· {þ0G·É¯goÉë|ª|úHºÀ}»ÉÉË|È|/g}/o#É}æo&ÉíKÓí[ÑÅÕxAJSËËËËáëáíJDM!éb"Ñë!6íJ"ÓDMÉ'ͬèͬdͬ ͬ} ¯<íR0û= ÈÆ0ÝwÝ#ÉÝ~Ö$O! Ý#Ý~Í„Ö08)þ 8 !Öþ 8þ0T])Ø)Ø T]Ø)Ø_ØËy·È|‡ÉÝááå}&#9N�8wë!DíB9ùëåí°ëá+Oí¸ë#ùÝé>ÃwÝáͦWáͧ _áå}“8(º8J`9{‚T]=o`9yí¸ë ¯ÃwÍÖ Ð>ÃuÍJ õÍuÍ` íÙ}·Ù>(è; àÙËxÙÂQ Ù}·ÙÈÙÅÕåÙ}· Ù˸TÅËø¯ÙËø}Ù•(0íD=ÙÍC ,= ù(Ùñæ€ Í[ 0%ÍD ·, 7 Í� ?õ(8ÙÍu Ëx ÍO - öÍ; ñ8˸·ÙáÑÁÙÉÙËxÙÂÝ ÍX ÍÝ Ø,-Èxî€GÉÙ}·ÙÊ; }·ÈÙ…ÙÍ ÅÕåÝ9Í; Ù.Ù>Ý#ÝnË0Í[ ÍD = ñÙ-Ù åÝnûËx ÍP ,-(-ñññ·ñÙÁáÙÝá˸°G,-Ì; É}·ÈÙ•Ù?Í åååÝ9Ù.Ù>Í� 8Íu ?Ë= ÝuÝ+Ù-Ù(>ÍO 0ßÍu ·áÍO 8Í� ?áÑÁËx ÍP š, —7•8Æ€8Æ€8oÝãÙåÅxËøÙ¨æ€õËøÝåÝ!ÉáØ¯oGOW_gÉ·ËËËËËÉ·ËËËËËÉ|Ù„Ùg{Ù‹Ù_zÙŠÙWyÙ‰ÙOxÙˆÙGÉ|Ù”Ùg{Ù›Ù_zÙšÙWyÙ™ÙOxÙ˜ÙGÉxÙ¸ÙÀyÙ¹ÙÀzÙºÙÀ{Ù»ÙÀ|Ù¼ÙÉÙxÙ¨ò² xÉËx(ͼ È?É}Ù½ÙÀ·ÈÃ� }Ö�Ú; <þ(ÐÙÅÕåÍ; 7ÍD = ùÙ|Ù¤Ùg{Ù£Ù_zÙ¢ÙWyÙ¡ÙOxÙ ÙGÃD ÙÅÕåÙÍuÙÍÆ ÙÍJ ë}·ÈËx>ÂuÍu}Æ€Ë/Æ€oÖõÙÅÕå; ÍÖ -ÅÕåÍJ }áÑÁÙáÑÁã¼ã0ãñÙÉÙÍW-ÍJ ÙÍW,Ù}þlØÅ˸ͨ Á8 ; Íý Í` Ëx(ÍÖ Ù-Ùͨ õ8ÍJ Ù-Ùͨ 8Ù,ÍJ }þl8;Ùª*ªª!ªÍ` ÝåÝ!Ð >ÍýÝáÍuÍ` Í` ÅÕåÙÍu--Ù-ÍÖ ÙáÑÁÙÍJ ,,ñ,-ÈØxî€GÉgª?+2×n¶*ï8t Ð Ðzˆˆˆˆ~«ªªªª,->ÊuËxÂuÙÍaÙ}.�•õ; ÙÍOÙÍJ ÅÕåÙ,ÍÖ ÙáÑÁ; ÝåÝ!U >ÍýÝá,ÙÍk-ÙÍÖ ñÅÕåo&0%ÍÑÙ,Í` ÙáÑÁÍÖ }þgÚ; É}Š�؉}颋.:}Žã8Žc~I’$I~ÍÌÌÌL«ªªª*ÙÍkÙ·Ëxõ˸; }þˆ0GÅÕå,Í™åË<Ë}áõÍÑ,-(-ÙñáÑÁõÍJ ÝåÝ!Ù >ÍÝáñ0 õÙÍaÙÍ` ñ…o8 ñÈÙÍOþ á>Ãum.`1pF,þåt6|‰„!wS<ÿÃ.zÒ}[•|%¸FXc~üïýu€Ò÷r1}·ÈÝåÙÍOÙ¯Ëx(<˸õͨ 8Ù; ñËÿõÙÏŽé!~JÙͨ 0Í÷OÝ!—>ÙÝÍ<Ùͨ 8 = ìÙ ÝÙÙÍ7ËøÍÖ ÅÕåÍ<Í` ÙÍOÍÖ ÙáÑÁ; ÝåÍ÷ÝáÙÍ7ÍÖ ñ0 õÙÍW-ÍJ ñÝáËOÈËøÉçÏÌTöô¢0 jÁ‘ €µžŠoD€‚,:Í€jÁ‘ �€!¢ÚI}袋.º}Žã8Žc~I’$I’~ÍÌÌÌL«ªªªªÝ!Ó>ÅÕåõÍuÍ` ñÍÙáÑÁÃ` õÙÍ7õÙÅÕåÍ7ÍÖ ÙáÑÁÙÍ` ñ= éÙÍOÃÖ ÝÝnÝfÝ^ÝVÝNÝFÉ!�DLT\ÉI¢Ú!‚!É53ó!�úÉr1÷!€ÒÉÅÕåÙáÑÁÉÍ\!€> Ëx Ë#ËËË-= ðo˸ÉËxÙÍO(Ëø-ÍÖ ·Ë}(ËxËø>�½8(ÍC ,óÍC `iÈÃM!É>’Ãu|µÊ; Ë|ÍJ>�Ë| )=Ë|(úDMboÀ˸Éͦë8þ8ͦÙËxÙ(’0¯þ 8> ÕÍMÑËx(>-ͲË{(aËy(Ͱͦ ò\z·(>.Ͳ (Ͱ ÷ú~ͦ÷Ë{È>EͲ>+Ë|(|íDg>-Ͳ|/Ö 0ûÆ:ÝpÝ# ý~ý#· ý+>0ÝwÝ#Éýå,-  ý60ý#ø¯ÃJÅ˸}ÙÖ€oŸgMÍÄ|þÙ <ýwíDÍ }þ�0Í€ý5Ëø>„•.(ÍC Ë= øý~õ> xæÆ0ýwý#xæGÅÕåË%ÍP Ë%ÍP ëãÑãíZëáãíJDMáË%ÍP = ÈñÁýáÉýåá_~6þ5Øúi+~¨¥Ôh¶¿ÉìÅëx-ÐÍÎÂSÞùx9?ë+¨­ÅøÉ{Η@}·ÈËøÅÕ|ÍC ÍC „gãíZëáãíJDMá0ÍD ,7È}Æo˸ÉÍ ¾ #øyîO!@9ùi&ÝéÍ  ë¶¾ â#÷ÚÍ ¶w#ùëùÝéÍ /¦w#øïÍ ¦w#ùãýáÝá!9ë! E9ýéÝá!!9~·(¯+FÍŠ¦!"9ù!(#Ýé>¯2æýá*ÛͲ¯á"âýå|·>"Ê :æ·( ͆ *â6#wÉÍ÷*â6#6 ë!\$í°É!¶Ååí[Ûþ (úÍ„–( áÁã·É#ëÁÁþ:À~ÉCONTRMKBDLSTAUXUSR>¯2æÍîÍ$*â#~þ ͶÍ$*â:æ·> >w###6ÀÃÖþ þ #6++pÉ>¯2æíSäÍ-Í$Ͷ:Ù·À*â6###ww#w$w#wÖÿ:æ· åÍôá##N#F*ä·íBÈ>�à å¯w#w#í[äs#ráÃó>¯2æÍSÍ$ͶÍ$*â6å ë#Íá-¯Nw#FwÖÿq#p#6€#w#w#wÉÍß*â ë:æ·( ÕÍÑñÅÍÁ<Àxà *â6#ûÉ"â#~+þ 2ËN(>Í’:Ù· *âË^ îËFÈ*âå ëÍá< >ÿ2Ù6É"â~æÈÍŸ*â-¯w#wÕÿw#ÍóÍŸÀ"â~æÈ·ÍÀ ëÍ<À@ýá*ÛͲ¯áýåÍÀåÍ÷áåë!\ í°á åëÍÑ<Ê®!\$í°É>à >¯2æÍÀ*ß|µ>! ë*â \$í°\Í<(Ï!ý€í°:æ· í[1Ã�ÿÕÍ\ÍÑ!€ë·(éf"âÍÂÈ> 2ÙÉ:Ù·ÈñÉÝáÝåå!ÊÍ<áÉÝáÝå"âËF( #~þÀ#6Ãe>Îå!ÊÍ[áÉ"âËNÀ>ë!Ú~þ€8>O6*Û"ÝÍwþ (=þ(&þ("þ(þ :á·(ßÃNþ 8Øyº(Ô~#ÍèÌúx+Í% (½ï6Éå*â#~þáÉÍÂÈÍ[þÈÅÕå*â#~· *Ý~þ(h#"Ýb= Íõþ 8Íèþ ÌáñJ= ÍB== ͯ}8= ͵}/Í­ !*â###å~Æ-_~áþ(4òQ6*âËÖ>™2Ù>*â##wáÑÁÉ:Ù·>Àå*â##~áÉå*â#~þÿ(EÍÌÍ[þ ( þ (þ (þ ÍÖè!]Í[þ (þ (þ (þ(w#(ÍÖãÍÂÌÖ6áÉÝ!]Ý~·Èþ-ÀÝ#É8Ý~·È>7à ëÍ Í[ÃÖÍÖÉ>¯OÅÍkÁͼÈÅåÍÁÑÁÍÎØÌMës #rëÉÍkͼÈÅåÍpÙáÁÍÎØÙÌX ÙáåÍÌÍ[þ ÍÖôÍ[þ (þ( #w(ÍÖêÍÂÌÖáqÉ*â#~þÊáÍ[þ (þÈÍÖñÍ ÍÖþ ÀÃÖ*â##~þÈ6ÉÅÕåÍœáÑÁÉOÍ$*â#~þ(08áÅå·Ê¦=ʦ==Ê©=ʬò+ËÞ###å~Æ-_qá4ð6Í¡È>ðà *æ:è¾È4^qÉ}Ã’ÁÑÅÝ*ÛË|(ÍMëëË|( ÍMÝ6-Ý#ÕÍ�áͦí[ÛÝåá·íRë“8 (G> Í’ùCÈ~Í’#÷ÁÑÙáÑÁÙÅÝ*ÛÕÍôÇÁÑÅͦËC!h Ç!lÀTRUEFALSEͦ!9^#Í(ÑùÕÉá~#·(G~Í’#ùé> Í’> Ã’ "âËF!ÈÍ[¸(þÀ#ÉåÍRë·íRá0Íô*â4À#4É>™Ã åÍR·íR *â4 #4(áÍóÒ>òÜ>¯2çÍ$ë*âËV(/Ë–:ç·(#~+· x· y·ú2ÅÕ!͵ÑÁ( =(þ X:ç·(R*â:ç·(ËÞ###~Æ-Õ_ÑÖ-ÍŒí âX<òN=<ÍŒ*â###æw ÅÕåÍŸáÑÁ Õ*Ñ4 #4x±ÂüëÉ>™>ðà õ:ç·(ëñÉ"âÍŸÈè"*âËÖË^ÈËž*âËVÈË–åÅ0ëÍÁá ëÍ·ÉÁÑíSâÅåÍRÑ·íR8A*â N#F#s#rÍ$ 0}æ)ëíjëS\*â###w* N#Fë·íB ÈÕåÍŸÑár+sÉ>‘à ÕÙáÙ!T]>)ëíjëÙ)Ù0 0= ïÉÍU·íR!À#ÉÍUëÉ*â^#V#ÕN#F#^#VáÉ>">!2çDMÝáÑáÝå"â~æÊóx±(LÅÕÍ*â ë:çOÍÑÁ·(o:çþ" C}=(þ ?ÅÕ*â-N#Fp+qÛÿq#pÑÁ!€ë °*â F+N+++V+^ë·íBÐëq#pÉ>™>ð>à ÁÑíSâÅåÍRÑ·íRÚ*â s#r$ s#rÉ"äíSæëá"â! N#Fë·íB(^x± *â 6#ûí[âÍ<(H*â! íKäq#p##ëíKæÅÕÍí[â!Í· *â! 4 #4Ñ!€ëÁ x± Õ*â$ éÝ*â>ðÃw"òëáã"ô{æü_!í"ëÝ*íÝnÝf}´(HíR0ÝnÝfåÝ"ëÝáã Ý^ÝVÝåMDÝnÝfÝåÝÝuÝtÝqÝpÝåÑ*ës#rÑ*ôs#rÉÝåá"Í*ò ÝåÁ Ú5íKÏíB!Úð>ÿÃuëáã~#fo{æü_ë"ò*íåÝá·íR0RÝnÝfå·íR0ÝáðáÕýáíKòýqýpýuýtÝsÝrÝåáÝNÝFÍÄ( Ý^ÝVÕÝáÝåáÝNÝFÝ^ÝV*ííSíÕÝáÝuÝtíKòÝqÝpë ·íRÀÕýá*Í·íR(ý~Ýwý~Ýwýnýf ÝuÝt¯ÉÝåá"Í6#ûÉÍ *öÉÍ *øÉ!"ö"øÝ*íÝNÝFy°(*ö "ö*ø·íB0íCøÝnÝfåÝáØ*Ïûÿ í[Í·íRØë*ö"ö*ø·íRÐíSøÉí[Ís#rÉ^#VíSÍÉ>¯O"æ¯w2Ùx2è!ê"âá"äá ÍöÍ@*äé>¯2ê"æ!ê"âá"äá"è!\Ͳ¯*è:ê· ÍîÍ!Ù~6·go(Ýåá\íRë*æs#r¯ÿí_2ÔÉëÝáÁáx±( s x±(T]í°ÝéDMÝáÑá·íR0ð ë ëí¸ÝéÑÁÕ-a%ÃÆ}Í„oÉ*é!Ù~6o&ÉÍ |µÈÍ£}þÀÝáÍ%^C User break1:Ù·ÈÝáõÍ% I/OÝáÍ% Run-timeÍ% error Í’Í%, PC=Ýåáí[Õ·íR"×Í�Í% Program aborted*ßé1!Àä¸ÿÍ�!Û)éàͲö)!"´ä!"²ä! }2¯ä!€å*²äÑ"°ä*°än&å!ÑÍaËEÊo *¯ä&å! ÑÍNå*°än&å! ÑÍaÑ}£oËEÊJ *´äå!Ñ"´ä*°än&}2¯ä*²äå!Ñ"²ä!€å*²äÑ"°äà *´ä"ºä*ºäÉýáá"Œäýå!"dä!"bä! }2fäÍ !gäͲ!€å*bäÑ"`ä*`än&å!ÑÍaËEÊ(!*fä&å! ÑÍNå*`än&å! ÑÍaÑ}£oËEÊ!*däå!Ñ"dä*däå*ŒäÑÍNËEÊ!Ã+!*`än&}2fä*bäå!Ñ"bä!€å*bäÑ"`äì Ç!*`än&å!ÑÍaå*`än&å! ÑÍaÑ}£oËEʇ!!gäÍ *`än&e.åÍ !gäͲ*bäå!Ñ"bä!€å*bäÑ"`äÃ+!!gäÍ  !ŽäͲýá!ŽäÍ ýåÉî!ýáá}2Úâá}2Ûâýå*Úâ&ËEÊ"*ª!"Ôâ*Ôâ"Òâ!å*£!ÑÍ5z³Ê"Õ"Îâ!€ãå*Òâå!ÍgÍb*Òâ^#Vë"Òâ*Îâ#ÑÃÝ!!€ãÍSÍbí#*§!&ËEÊñ"!}2§!!€ãå!ÜâÍ Í=!€ãÍyÍ5å!ÑÍaËEÊ‹"ÍRÍ�Cannot open file !ÜâÍ !ÍqÍ� for output.Í�ÍbÍÅ!Ôâå!‚Í¥*Ôâ"Òâ!å!å!Ñë·íRÑÍ5z³Êå"Õ"Îâ!Ðâå!‚Í¥!ë*Ðâs#r*Ðâë*Òâs#r*Ðâ"Òâ*Îâ#Ñï"*Ôâ"ª!*ª!"¬!*¬!"Òâ*¥!å!€ÑÍ›ËEʉ#*Òâ^#Vëå!ÑÍaËEÊ5#*£!#"£!*Òâ^#Vë"Òâ!"¥!É#*ª!"Òâ!å!ÑÍ5z³Êw#Õ"Îâ!€ãå*Òâå!ÍgÍb*Òâ^#Vë"Òâ*Îâ#ÑÃF#*ª!"Òâ!"£!!"¥!*Òâå*¥!+Ñå*Ûâ&ëás*¥!#"¥!*Òâ"¬!ÉýáP!}âͲýåÍRÍ�Íb*~ãå!ÑÍ›ËEÊò#ÍRÍ�Line *~ãå!ÍöÍ�: Íb!}âÍ ÍR!ÍqÍ�ÍbÍÅÉýáá"wâýå*~ã#"~ãÍR!.ÍòÍb!°ãÍ8*wâPÍ.Í_ÍbÉø&Íçå!ÑÍNËEÊo$ÍUsage: uudecode Í®#!åÍy P!âͲ!.e.å!âÍ Í|å!ÑÍNËEÊ´$!âÍ Í.uueÍP!âͲ!°ãå!âÍ Í<Íb!°ãÍÏÍ5å!ÑÍ›ËEÊõ$Í Can't open !âÍ ÍÍ®#ÍRÍ� Decoding !âÍ !ÍqÍ�ÍbÉÃ!&Ãì%ýáá"iáá"káýåÍP*káͲ!Åáå*iá^#VëÑn&å! ÑÍNËEÊ—%*iá^#Vë#ë*iás#r*iá^#Vëå!ÅáÍ ÍmÑÍ›ËEÊ”%ÍIncomplete headerÍ®#Ã6%!Åáå*iá^#VëÑn&å! ÑÍaËEÊë%*káÍ !Åáå*iá^#VëÑn&e.åÍP*káͲ*iá^#Vë#ë*iás#r×%É!ÅáÍ ! e.åÍP!ÅáͲ!"má!táå!máåÍ%!Üâå!máåÍ%É!°ãÍ�ËEÊE&ÍNothing to decode.Í®#!ÅáåÍ $!ÅáÍ !å!Í5Íbegin Í\å!°ãÍ�Ñ}³o}îoËEʇ&!ÅáåÍ $ÃL&ÍRÍ�Íb!°ãÍ�ËEÊ´&ÍNothing to decode.Í®#Í%É!"~ãÍ>$Í%É!-ãÍ ÍÍ\ËEÊð&ÍBlank line in fileÍ®#!-ãå!Ñn&åÍQ! Ía!`ÍaÍ}îo}2dá*dá&ÉÃâ(*Zá#"Zá*Záå!-ãÍ ÍmÑÍ›ËEÊS'ÍLine too short.Í®#!-ãå*ZáÑn&åÍQ! å!`ÍkÍ}îoËEÊš'ÍIllegal character in line.Í®#!-ãå*ZáÑn&å!`ÑÍNËEʽ'! }2LáÃÍ'!-ãå*ZáÑn&}2Lá*Lá&Éó(!å!ÑÍ5z³Ê (Õ">á!Páå*>áÑåÍ 'å! Ñë·íRëás*>á#ÑÃá'!Máå!Ñå!Páå!Ñn&å!ÑÍå!Páå!Ñn&å!ÑÍ Ñëás!Máå!Ñå!Páå!Ñn&å!ÑÍå!Páå!Ñn&å!ÑÍ Ñëás!Máå!Ñå!Páå!Ñn&å!ÑÍå!Páå!Ñn&Ñëás!"XáÉ*Xáå!ÑÍNËEÊÆ(ÍÖ'!Máå*XáÑn&å!åÍ !*Xá#"XáÉ!"Zá!"XáÍ 'å! Ñë·íR"Vá!å*VáÑÍ5z³Ê)Õ"TáÍÓ'*Tá#ÑÃ)É!°ãÍ�ËEÊ=)Í Abnormal end.Í®#!éàåÍ $!éàÍ Ímå!ÑͯËEÊn)Í Abnormal end.Í®#!éàÍ !å!Í5ÍendÍoËEÊ¡)Í Abnormal end.Í®#!°ãÍîÍb!å!åÍ !ÉÍ;$!-ãåÍ $ÍÅ&ËEÊÕ)Í'!-ãåÍ $ÃÀ)Í)ÃÅ Abnormal end.Í®#!éàÍ !å!Í5Íëás*>á#ÑÃá'!Máå!Ñå!Páå!Ñn&å!ÑÍå!Páå!Ñn&å!ÑÍ Ñëás!Máå!Ñå!Páå!Ñn&å!ÑÍå!Páå!Ñn&å!ÑÍ Ñëás!Máå!Ñå!Páå!Ñn&å!ÑÍå!Páå!Ñn&Ñëás!"XáÉ*Xáå!ÑÍNËEÊÆ(ÍÖ'!Máå*XáÑn&å!åÍ !*Xá#"XáÉ!"Zá!"XáÍ 'å! Ñë·íR"Vá!åååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååå begin index := succ(index); if index > length(header) then abort ('Incomplete header') end; while header[index] <> ' ' do begin word := concat(word, header[index]); index := succ(index) end end; {NextWord} begin {ParseHeader} header := concat(header, ' '); index := 7; NextWord(mode, index); NextWord(outfilename, index) end; {ParseHeader} begin {GetOutFile} if eof(infile) then abort('Nothing to decode.'); NextLine (header); while not ((copy(header, 1, 6) = 'begin ') or eof(infile)) do NextLine(header); writeln; if eof(infile) then abort('Nothing to decode.'); ParseHeader; end; {GetOutFile} begin {init} lineNum := 0; GetInFile; GetOutFile; end; { init} Function CheckLine: boolean; begin {CheckLine} if line = '' then abort ('Blank line in file'); CheckLine := not (line[1] in [' ', '`']) end; {CheckLine} procedure DecodeLine; VAR lineIndex, byteNum, count, i: integer; chars: array [0..3] of byte; hunk: array [0..2] of byte; { procedure debug; var i: integer; procedure writebin(x: byte); var i: integer; begin for i := 1 to 8 do begin write ((x and $80) shr 7); x := x shl 1 end; write (' ') end; begin writeln; for i := 0 to 3 do writebin(chars[i]); writeln; for i := 0 to 2 do writebin(hunk[i]); writeln end; } function nextch: char; begin {nextch} {} lineIndex := succ(lineIndex); if lineIndex > length(line) then abort('Line too short.'); if not (line[lineindex] in [' '..'`']) then abort('Illegal character in line.'); { write(line[lineindex]:2);} if line[lineindex] = '`' then nextch := ' ' else nextch := line[lineIndex] end; {nextch} procedure DecodeByte; procedure GetNextHunk; VAR i: integer; begin {GetNextHunk} for i := 0 to 3 do chars[i] := ord(nextch) - offset; hunk[0] := (chars[0] shl 2) + (chars[1] shr 4); hunk[1] := (chars[1] shl 4) + (chars[2] shr 2); hunk[2] := (chars[2] shl 6) + chars[3]; byteNum := 0 {; debug } end; {GetNextHunk} begin {DecodeByte} if byteNum = 3 then GetNextHunk; putbyte(hunk[byteNum],FALSE); {writeln(bytenum, ' ', hunk[byteNum]);} byteNum := succ(byteNum) end; {DecodeByte} begin {DecodeLine} lineIndex := 0; byteNum := 3; count := (ord(nextch) - offset); for i := 1 to count do DecodeByte end; {DecodeLine} procedure terminate; var trailer: string80; begin {terminate} if eof(infile) then abort ('Abnormal end.'); NextLine (trailer); if length (trailer) < 3 then abort ('Abnormal end.'); if copy (trailer, 1, 3) <> 'end' then abort ('Abnormal end.'); close (infile); putbyte(26,TRUE) end; begin {uudecode} init; NextLine(line); while CheckLine do begin DecodeLine; NextLine(line) end; terminate end. infile) then abort ('Abnormal end.'); NextLine (trailer); if length (trailer) < 3 then abort ('Abnormal end.'); if copy (trailer, 1, 3) <> 'end' then abort ('Abnormal end.'); close (infile); putbyte(26,TRUE) end; begin {uudecode} init; NextLine(line); while CheckLine do begin DecodeLine; NextLine(ROM on pop af rst diskop ;ROM to do it push af ld a,0c0h out0 (cbar),a ;ROM off pop af pop de ret nc ;Back if OK push de ld c,9 ld de,fatal call bdos ;Error message pop af ;D => A add a,'A' ld e,a ld c,2 call bdos ld de,fatal2 jp exms ;Quit fatal: db 'Fatal error on Drive $' fatal2: db ': Exiting',ascicr,ascilf,'$' ;------------------------------- start: ld sp,lstak ld a,(sdv) ;Source drive ld hl,tdv cp (hl) ;Drives must be different ld de,samedv jr z,fail call testdv ;Check source ld de,baddv jr c,fail ld (hwp),ix ;Save hardware ptr. ld a,(tdv) call testdv ;Check target ld de,baddv jr c,fail push ix pop hl ld bc,(hwp) ;Must be same h'ware type sbc hl,bc ld de,mixed jp z,ok fail: ld c,9 ;Report command errors call bdos ld de,usage exms: ld c,9 ;Final message call bdos ld de,sysbak call dskchg ;Be sure the right disk is in jp exit sysbak: db 'Replace system disk if necessary, & hit Return$' usage: db 'Usage: DISKCOPY ',ascicr,ascilf db 'Source & target may not be the same drive,',ascicr,ascilf db ' but must be the same type',ascicr,ascilf,ascicr,ascilf db ' eg DISKCOPY A: B:',ascicr,ascilf,ascicr,ascilf,'$' mixed: db 'Drives must be the same type',ascicr,ascilf,'$' samedv: db 'Cannot copy to the same drive',ascicr,ascilf,'$' baddv: db 'Absent or invalid drive spec.',ascicr,ascilf,'$' prompt: db 'Load disks & hit Return$' newline: db ascilf,'$' dskchg: ;Request reload disks ld c,9 call bdos ;Output prompt ld hl,tbuff ld (hl),80 ;Buffer length ex de,hl ld c,0ah call bdos ;Wait for reply ld de,newline ld c,9 call bdos ;Final linefeed ret ok: ld c,0dh call bdos ;BDOS: disks are changing! ld de,prompt ;User: change them call dskchg xor a ;Start at track 0 ld (ctrack),a nrd: ld a,(sdv) call spars ld a,2 call dodv ;Read 1 track ld a,(tdv) call spars ld a,3 call dodv ;Then write ld a,(tdv) call spars ld a,4 call dodv ;Verify ld hl,ctrack inc (hl) ;Next track ld a,(hl) srl a ;Cylinder cp (ix+MAXCYL) jr c,nrd jr z,nrd ;More ld de,suxes jp exms ;Done suxes: db 'Completed!',ascicr,ascilf,'$' size equ $-runat hwp: ds 2 ctrack: ds 1 ds 256 ;Safe stack lstak equ $ tbuff equ $ ;Track buffer .dephase end  jr c,nrd jr z,nrd ;More ld de,suxes jp exms ;Done title Dummy USER Program ;=======================================================================; ; ; ; D-X Designs Pty. Ltd. Perth, Western Australia ; ; Project: 112 May, 1996 ; ; ; ; Copyright (C) 1996 David R. Brooks ; ; ; ; This program is free software; you can redistribute it and/or ; ; modify it under the terms of the GNU General Public License ; ; as published by the Free Software Foundation; either version 2 ; ; of the License, or (at your option) any later version. ; ; ; ; This program is distributed in the hope that it will be useful, ; ; but WITHOUT ANY WARRANTY; without even the implied warranty of ; ; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ; ; GNU General Public License for more details. ; ; ; ; You should have received a copy of the GNU General Public License ; ; along with this program; if not, write to the Free Software ; ; Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. ; ; ; ;=======================================================================; .comment $ A simple replacement for the USER function (which seems not to exist in CCP+). Just invoke as USER n (0 <= n <= 9) $ cseg .z80 ld hl,80h ;Command tail l1: inc hl ld a,(hl) and a ;End? jp z,0 ;If so, exit cp ' ' jr z,l1 ;Skip blanks sub '0' ;Make it a digit jp c,0 ;Quit if invalid cp 10 jp nc,0 add a,a ;User into top bits add a,a add a,a add a,a ld b,a ld a,(4) ;User bits and 0fh or b ;New user ld (4),a jp 0 ;Done! end  .xlist .sall ; ; Macros for CCP+, DOS+. Intel mnemnonics, z80 opcodes ; Needed with M80, not necessary with SLRMAC. Allows slight ; source revision to assemble with MAC and RMAC also. a equ 7 b equ 0 c equ 1 d equ 2 e equ 3 h equ 4 l equ 5 m equ 6 ; pushix macro db 0ddh,0e5h endm popix macro db 0ddh,0e1h endm pushiy macro db 0fdh,0e5h endm popiy macro db 0fdh,0e1h endm inxix macro db 0ddh,023h endm dcxix macro db 0ddh,02bh endm jrc macro where db 038h db where-$-1 endm jr macro where db 018h db where-$-1 endm jrz macro where db 028h db where-$-1 endm jrnc macro where db 030h db where-$-1 endm jrnz macro where db 020h db where-$-1 endm djnz macro where db 010h db where-$-1 endm bit macro num,reg db 0cbh,040h + num shl 3 + reg endm res macro num,reg db 0cbh,080h + reg + num shl 3 endm bitx macro num,disp db 0ddh,0cbh,disp,046h+num shl 3 endm setx macro num,disp db 0ddh,0cbh,disp,0c6h+num shl 3 endm resx macro num,disp db 0ddh,0cbh,disp,086h+num shl 3 endm bity macro num,disp db 0fdh,0cbh,disp,046h+num shl 3 endm sety macro num,disp db 0fdh,0cbh,disp,0c6h+num shl 3 endm resy macro num,disp db 0fdh,0cbh,disp,086h+num shl 3 endm ldx macro reg,disp db 0ddh mov reg,m db disp endm stx macro reg,disp db 0ddh mov m,reg db disp endm ldy macro reg,disp db 0fdh mov reg,m db disp endm sty macro reg,disp db 0fdh mov m,reg db disp endm andx macro disp db 0ddh ana m db disp endm subx macro disp db 0ddh sub m db disp endm sbcx macro disp db 0ddh sbb m db disp endm cmpx macro disp db 0ddh cmp m db disp endm inrx macro disp db 0ddh inr m db disp endm xorx macro disp db 0ddh xra m db disp endm lbcd macro addr db 0edh,04bh dw addr endm sbcd macro addr db 0edh,043h dw addr endm lded macro addr db 0edh,05bh dw addr endm sded macro addr db 0edh,053h dw addr endm lspd macro addr db 0edh,07bh dw addr endm sspd macro addr db 0edh,073h dw addr endm lixd macro addr db 0ddh lhld addr endm sixd macro addr db 0ddh shld addr endm ldir macro db 0edh,0b0h endm ralr macro reg db 0cbh,010h+reg endm rarr macro reg db 0cbh,018h+reg endm slar macro reg db 0cbh,020h+reg endm srlr macro reg db 0cbh,038h+reg endm dsbc macro reg db 0edh,042h+reg shl 3 endm .list !Y2$OX\T*!4A``#1S4X&RT7*IR0A+^/-"@4&4"'>XLVR!+-L@7-YQ_E(0$`T+-L@7#0R4A MA^'-"@4&4"'>XLVR!2K8X2/1&\/J)"$N`&4N`>4AWN+-"@7-?`CE(0``TXLVR!2&`X^4AWN+-"@7-/!/- M8A_-4A;-@1D)('1O(&9I;&4@(=[BS0H%(0``S7$9(2X`S?(8S9`9S6(?(8#C MSXLT*!(A@./-6Q;-@1D%8F5G:6XA(`#-\A@A MC>+-"@4A``#-<1DA(`#-\A@A+^/-"@4A``#-<1G-D!G-8A_)PWTF_>'A?3)_ MX?WE*G_A)@#E(2``T4A2.+E(0``T1EN)@#E(0(`T4A2.+E(0``T1EN M)@#E(00`T4A1.+E*G7AT1EN)@#E(3\`T7RB9WVC M;^4A(`#1&>OA$CT1O#L"+) M*HGBY2$#`-'-3@;+1+1&>7-H2%][@%O?3*@(2J@(28` M?>X!;\M%RD,H*HGB(R*)XLDJB>+E(0``T(C; Customization equates for DOS+ system ; ; Define memory size base for DOS+ msize equ 63; kbytes RAM available. Not used in DOS+ ; ; Define memory. Max. TPA is ramlow+0100h to base+0800h ramlow equ 0; Available memory starts here base equ (msize-7)*1024; of CCP area - multiple of 256 only ; ; Define path location pathat equ 046H; Location of Path Buffer. 0 disables path ; NOTE: if non-zero coldboot must zero the byte at this address ; to prevent a random path being followed. ; ; Define timer locations and operations timeat equ 040h; Location of time buffer or routine. 0 = none tfunct equ false; true if routine, false if address acctim equ true; true enables file access time stamps ; ; Define BREAK capabilities to interrupt runaway programs. usrbrk equ true; true enables user break on 'brkchr' dciobk equ true; true enables user break on DCIO calls brkchr equ 0; The keyboard input to break (if enabled) ; debug equ false; true for copy executable under an existing ; system. false for normal system e if address acctim equ true; true enables file access time stamps ; ; Define BREAK capabilities to interrupt runaway programs. usrbrk equ true; true enables user break on 'brkchr' dciobk equ true; true enables user break on DCIO calls brkchr equ 0; The keyboard input to break (if enabled) ; debug equ false; true for copy executable under an existing ; system. false forååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååÃÉÍ«Copyright (C) 1984 BORLAND Inc‚AM-102 120/Apple CP/MP[1;1k~·7È#õå~Íáñ=ÈóÍ% ÉÅÕåÝåýåõo&åͦñýáÝááÑÁÉoåͦÉþ€Ü�Ô©æîÅÕåÝåýåÍ£}Ùå!å!"8áãõÅÕ~#·(åÍáôÑÁñãÉ}´È:$‡‡‡ããããÅÒÁ= ô+èÍÐØ*ÎßõÅÕå!¨ÍZ!¢ÍÐ*ºÔBáÑÁñÉõÅÕå!´éõÅÕå!®àõ:¼·(ÅÕå=2¼!ÈÍZáÑÁñÉõ:¼· ÷ÅÕå<2¼!ÂåõÅÕå!¼ÛõÅÕååð!‹í°Ñ:žO:œ‚ÕÍÑ:ŸO:�ƒÍ!ðÍÐ* ÍBáÑÁñÉ!ð ë!›45(É!.+/ –0ü†õyþ0(ñíÉ d!kÃZ!{ÃZ͈æ͈o&Éô  áÁå:á·(yþ ÕÅÍ |µ(Íþ ÍþÊÅÁÑ*é"ÛÕx2áy·( >Ã28!?"9!É í°!á¸í°áí°>2گà Ã:ÃDÃ]ÃSÃXÃNÃ]ÃDÿ í[Ûþ (ú!eÍ}Í„þA8þQ0Gþ: xÖ@¯!\w# ( þ  ÍyÍVþ. ÍV!h6#ûÉ (þ*(þ.(þ!8þ}(þ*(Í„w#ßÉ>?> w#üÉþaØþ{ÐÖ É|Í’}õÍ›ñæÆ�'Î@'Ãè¯7Ë|À|·}È>ÿÉ"ÍíCß"í6#ûëÑùü "Ïë"ÕÍ�Í©éå*Ï·íB"Ïí[Í·íRëáÚ5í°É*Ïí°"ÏÙÉ^#V#Õ^#V#N#FáÉÝáëO/o&ÿ9ùëí°ÝéÑO/o&ÿ9ùëí°éÝáë!àÿ9ùëÅ(¯üí°Á> �‘(G¯üÝéÝá!àÿ9ù ¯w#üÝéÝáEÍŠ¶wÝéÝáÑ}“8÷�Ãu·íR·íB0 É>‘î·íRëê@ðøÉÕë·íRëáë·íR!È+Éͨ õÍz ð·íR!À+Éͨ õÍz ðÍ<!Ð+Éͨ õÍz ðÍ<!ÈØ+Éͨ ôÍz ïÍ<!ÈØ#Éͨ ôÍz ïÍ<!Ø+Éͨ õÍz ðT]KBë!z·> S>)ë)ë0 = öÉ|ªõÍJëÍJëDM¯go>íjíB0 7?ËË= ðëñðHåÍ\Ë<ËÑëÍÞëËzÈ5Í+È)ýÉÍ+ÈË<ËúÉëz· {þ0G·É¯goÉë|ª|úHºÀ}»ÉÉË|È|/g}/o#É}æo&ÉíKÓí[ÑÅÕxAJSËËËËáëáíJDM!éb"Ñë!6íJ"ÓDMÉ'ͬèͬdͬ ͬ} ¯<íR0û= ÈÆ0ÝwÝ#ÉÝ~Ö$O! Ý#Ý~Í„Ö08)þ 8 !Öþ 8þ0T])Ø)Ø T]Ø)Ø_ØËy·È|‡ÉÝááå}&#9N�8wë!DíB9ùëåí°ëá+Oí¸ë#ùÝé>ÃwÝáͦWáͧ _áå}“8(º8J`9{‚T]=o`9yí¸ë ¯ÃwÍÖ Ð>ÃuÍJ õÍuÍ` íÙ}·Ù>(è; àÙËxÙÂQ Ù}·ÙÈÙÅÕåÙ}· Ù˸TÅËø¯ÙËø}Ù•(0íD=ÙÍC ,= ù(Ùñæ€ Í[ 0%ÍD ·, 7 Í� ?õ(8ÙÍu Ëx ÍO - öÍ; ñ8˸·ÙáÑÁÙÉÙËxÙÂÝ ÍX ÍÝ Ø,-Èxî€GÉÙ}·ÙÊ; }·ÈÙ…ÙÍ ÅÕåÝ9Í; Ù.Ù>Ý#ÝnË0Í[ ÍD = ñÙ-Ù åÝnûËx ÍP ,-(-ñññ·ñÙÁáÙÝá˸°G,-Ì; É}·ÈÙ•Ù?Í åååÝ9Ù.Ù>Í� 8Íu ?Ë= ÝuÝ+Ù-Ù(>ÍO 0ßÍu ·áÍO 8Í� ?áÑÁËx ÍP š, —7•8Æ€8Æ€8oÝãÙåÅxËøÙ¨æ€õËøÝåÝ!ÉáØ¯oGOW_gÉ·ËËËËËÉ·ËËËËËÉ|Ù„Ùg{Ù‹Ù_zÙŠÙWyÙ‰ÙOxÙˆÙGÉ|Ù”Ùg{Ù›Ù_zÙšÙWyÙ™ÙOxÙ˜ÙGÉxÙ¸ÙÀyÙ¹ÙÀzÙºÙÀ{Ù»ÙÀ|Ù¼ÙÉÙxÙ¨ò² xÉËx(ͼ È?É}Ù½ÙÀ·ÈÃ� }Ö�Ú; <þ(ÐÙÅÕåÍ; 7ÍD = ùÙ|Ù¤Ùg{Ù£Ù_zÙ¢ÙWyÙ¡ÙOxÙ ÙGÃD ÙÅÕåÙÍuÙÍÆ ÙÍJ ë}·ÈËx>ÂuÍu}Æ€Ë/Æ€oÖõÙÅÕå; ÍÖ -ÅÕåÍJ }áÑÁÙáÑÁã¼ã0ãñÙÉÙÍW-ÍJ ÙÍW,Ù}þlØÅ˸ͨ Á8 ; Íý Í` Ëx(ÍÖ Ù-Ùͨ õ8ÍJ Ù-Ùͨ 8Ù,ÍJ }þl8;Ùª*ªª!ªÍ` ÝåÝ!Ð >ÍýÝáÍuÍ` Í` ÅÕåÙÍu--Ù-ÍÖ ÙáÑÁÙÍJ ,,ñ,-ÈØxî€GÉgª?+2×n¶*ï8t Ð Ðzˆˆˆˆ~«ªªªª,->ÊuËxÂuÙÍaÙ}.�•õ; ÙÍOÙÍJ ÅÕåÙ,ÍÖ ÙáÑÁ; ÝåÝ!U >ÍýÝá,ÙÍk-ÙÍÖ ñÅÕåo&0%ÍÑÙ,Í` ÙáÑÁÍÖ }þgÚ; É}Š�؉}颋.:}Žã8Žc~I’$I~ÍÌÌÌL«ªªª*ÙÍkÙ·Ëxõ˸; }þˆ0GÅÕå,Í™åË<Ë}áõÍÑ,-(-ÙñáÑÁõÍJ ÝåÝ!Ù >ÍÝáñ0 õÙÍaÙÍ` ñ…o8 ñÈÙÍOþ á>Ãum.`1pF,þåt6|‰„!wS<ÿÃ.zÒ}[•|%¸FXc~üïýu€Ò÷r1}·ÈÝåÙÍOÙ¯Ëx(<˸õͨ 8Ù; ñËÿõÙÏŽé!~JÙͨ 0Í÷OÝ!—>ÙÝÍ<Ùͨ 8 = ìÙ ÝÙÙÍ7ËøÍÖ ÅÕåÍ<Í` ÙÍOÍÖ ÙáÑÁ; ÝåÍ÷ÝáÙÍ7ÍÖ ñ0 õÙÍW-ÍJ ñÝáËOÈËøÉçÏÌTöô¢0 jÁ‘ €µžŠoD€‚,:Í€jÁ‘ �€!¢ÚI}袋.º}Žã8Žc~I’$I’~ÍÌÌÌL«ªªªªÝ!Ó>ÅÕåõÍuÍ` ñÍÙáÑÁÃ` õÙÍ7õÙÅÕåÍ7ÍÖ ÙáÑÁÙÍ` ñ= éÙÍOÃÖ ÝÝnÝfÝ^ÝVÝNÝFÉ!�DLT\ÉI¢Ú!‚!É53ó!�úÉr1÷!€ÒÉÅÕåÙáÑÁÉÍ\!€> Ëx Ë#ËËË-= ðo˸ÉËxÙÍO(Ëø-ÍÖ ·Ë}(ËxËø>�½8(ÍC ,óÍC `iÈÃM!É>’Ãu|µÊ; Ë|ÍJ>�Ë| )=Ë|(úDMboÀ˸Éͦë8þ8ͦÙËxÙ(’0¯þ 8> ÕÍMÑËx(>-ͲË{(aËy(Ͱͦ ò\z·(>.Ͳ (Ͱ ÷ú~ͦ÷Ë{È>EͲ>+Ë|(|íDg>-Ͳ|/Ö 0ûÆ:ÝpÝ# ý~ý#· ý+>0ÝwÝ#Éýå,-  ý60ý#ø¯ÃJÅ˸}ÙÖ€oŸgMÍÄ|þÙ <ýwíDÍ }þ�0Í€ý5Ëø>„•.(ÍC Ë= øý~õ> xæÆ0ýwý#xæGÅÕåË%ÍP Ë%ÍP ëãÑãíZëáãíJDMáË%ÍP = ÈñÁýáÉýåá_~6þ5Øúi+~¨¥Ôh¶¿ÉìÅëx-ÐÍÎÂSÞùx9?ë+¨­ÅøÉ{Η@}·ÈËøÅÕ|ÍC ÍC „gãíZëáãíJDMá0ÍD ,7È}Æo˸ÉÍ ¾ #øyîO!@9ùi&ÝéÍ  ë¶¾ â#÷ÚÍ ¶w#ùëùÝéÍ /¦w#øïÍ ¦w#ùãýáÝá!9ë! E9ýéÝá!!9~·(¯+FÍŠ¦!"9ù!(#Ýé>¯2æýá*ÛͲ¯á"âýå|·>"Ê :æ·( ͆ *â6#wÉÍ÷*â6#6 ë!\$í°É!¶Ååí[Ûþ (úÍ„–( áÁã·É#ëÁÁþ:À~ÉCONTRMKBDLSTAUXUSR>¯2æÍîÍ$*â#~þ ͶÍ$*â:æ·> >w###6ÀÃÖþ þ #6++pÉ>¯2æíSäÍ-Í$Ͷ:Ù·À*â6###ww#w$w#wÖÿ:æ· åÍôá##N#F*ä·íBÈ>�à å¯w#w#í[äs#ráÃó>¯2æÍSÍ$ͶÍ$*â6å ë#Íá-¯Nw#FwÖÿq#p#6€#w#w#wÉÍß*â ë:æ·( ÕÍÑñÅÍÁ<Àxà *â6#ûÉ"â#~+þ 2ËN(>Í’:Ù· *âË^ îËFÈ*âå ëÍá< >ÿ2Ù6É"â~æÈÍŸ*â-¯w#wÕÿw#ÍóÍŸÀ"â~æÈ·ÍÀ ëÍ<À@ýá*ÛͲ¯áýåÍÀåÍ÷áåë!\ í°á åëÍÑ<Ê®!\$í°É>à >¯2æÍÀ*ß|µ>! ë*â \$í°\Í<(Ï!ý€í°:æ· í[1Ã�ÿÕÍ\ÍÑ!€ë·(éf"âÍÂÈ> 2ÙÉ:Ù·ÈñÉÝáÝåå!ÊÍ<áÉÝáÝå"âËF( #~þÀ#6Ãe>Îå!ÊÍ[áÉ"âËNÀ>ë!Ú~þ€8>O6*Û"ÝÍwþ (=þ(&þ("þ(þ :á·(ßÃNþ 8Øyº(Ô~#ÍèÌúx+Í% (½ï6Éå*â#~þáÉÍÂÈÍ[þÈÅÕå*â#~· *Ý~þ(h#"Ýb= Íõþ 8Íèþ ÌáñJ= ÍB== ͯ}8= ͵}/Í­ !*â###å~Æ-_~áþ(4òQ6*âËÖ>™2Ù>*â##wáÑÁÉ:Ù·>Àå*â##~áÉå*â#~þÿ(EÍÌÍ[þ ( þ (þ (þ ÍÖè!]Í[þ (þ (þ (þ(w#(ÍÖãÍÂÌÖ6áÉÝ!]Ý~·Èþ-ÀÝ#É8Ý~·È>7à ëÍ Í[ÃÖÍÖÉ>¯OÅÍkÁͼÈÅåÍÁÑÁÍÎØÌMës #rëÉÍkͼÈÅåÍpÙáÁÍÎØÙÌX ÙáåÍÌÍ[þ ÍÖôÍ[þ (þ( #w(ÍÖêÍÂÌÖáqÉ*â#~þÊáÍ[þ (þÈÍÖñÍ ÍÖþ ÀÃÖ*â##~þÈ6ÉÅÕåÍœáÑÁÉOÍ$*â#~þ(08áÅå·Ê¦=ʦ==Ê©=ʬò+ËÞ###å~Æ-_qá4ð6Í¡È>ðà *æ:è¾È4^qÉ}Ã’ÁÑÅÝ*ÛË|(ÍMëëË|( ÍMÝ6-Ý#ÕÍ�áͦí[ÛÝåá·íRë“8 (G> Í’ùCÈ~Í’#÷ÁÑÙáÑÁÙÅÝ*ÛÕÍôÇÁÑÅͦËC!h Ç!lÀTRUEFALSEͦ!9^#Í(ÑùÕÉá~#·(G~Í’#ùé> Í’> Ã’ "âËF!ÈÍ[¸(þÀ#ÉåÍRë·íRá0Íô*â4À#4É>™Ã åÍR·íR *â4 #4(áÍóÒ>òÜ>¯2çÍ$ë*âËV(/Ë–:ç·(#~+· x· y·ú2ÅÕ!͵ÑÁ( =(þ X:ç·(R*â:ç·(ËÞ###~Æ-Õ_ÑÖ-ÍŒí âX<òN=<ÍŒ*â###æw ÅÕåÍŸáÑÁ Õ*Ñ4 #4x±ÂüëÉ>™>ðà õ:ç·(ëñÉ"âÍŸÈè"*âËÖË^ÈËž*âËVÈË–åÅ0ëÍÁá ëÍ·ÉÁÑíSâÅåÍRÑ·íR8A*â N#F#s#rÍ$ 0}æ)ëíjëS\*â###w* N#Fë·íB ÈÕåÍŸÑár+sÉ>‘à ÕÙáÙ!T]>)ëíjëÙ)Ù0 0= ïÉÍU·íR!À#ÉÍUëÉ*â^#V#ÕN#F#^#VáÉ>">!2çDMÝáÑáÝå"â~æÊóx±(LÅÕÍ*â ë:çOÍÑÁ·(o:çþ" C}=(þ ?ÅÕ*â-N#Fp+qÛÿq#pÑÁ!€ë °*â F+N+++V+^ë·íBÐëq#pÉ>™>ð>à ÁÑíSâÅåÍRÑ·íRÚ*â s#r$ s#rÉ"äíSæëá"â! N#Fë·íB(^x± *â 6#ûí[âÍ<(H*â! íKäq#p##ëíKæÅÕÍí[â!Í· *â! 4 #4Ñ!€ëÁ x± Õ*â$ éÝ*â>ðÃw"òëáã"ô{æü_!í"ëÝ*íÝnÝf}´(HíR0ÝnÝfåÝ"ëÝáã Ý^ÝVÝåMDÝnÝfÝåÝÝuÝtÝqÝpÝåÑ*ës#rÑ*ôs#rÉÝåá"Í*ò ÝåÁ Ú5íKÏíB!Úð>ÿÃuëáã~#fo{æü_ë"ò*íåÝá·íR0RÝnÝfå·íR0ÝáðáÕýáíKòýqýpýuýtÝsÝrÝåáÝNÝFÍÄ( Ý^ÝVÕÝáÝåáÝNÝFÝ^ÝV*ííSíÕÝáÝuÝtíKòÝqÝpë ·íRÀÕýá*Í·íR(ý~Ýwý~Ýwýnýf ÝuÝt¯ÉÝåá"Í6#ûÉÍ *öÉÍ *øÉ!"ö"øÝ*íÝNÝFy°(*ö "ö*ø·íB0íCøÝnÝfåÝáØ*Ïûÿ í[Í·íRØë*ö"ö*ø·íRÐíSøÉí[Ís#rÉ^#VíSÍÉ>¯O"æ¯w2Ùx2è!ê"âá"äá ÍöÍ@*äé>¯2ê"æ!ê"âá"äá"è!\Ͳ¯*è:ê· ÍîÍ!Ù~6·go(Ýåá\íRë*æs#r¯ÿí_2ÔÉëÝáÁáx±( s x±(T]í°ÝéDMÝáÑá·íR0ð ë ëí¸ÝéÑÁÕ-a%ÃÆ}Í„oÉ*é!Ù~6o&ÉÍ |µÈÍ£}þÀÝáÍ%^C User break1:Ù·ÈÝáõÍ% I/OÝáÍ% Run-timeÍ% error Í’Í%, PC=Ýåáí[Õ·íR"×Í�Í% Program aborted*ßé1!Àä¸ÿÍ�!¶(máͲÙ(!"´ä!"²ä! }2¯ä!€å*²äÑ"°ä*°än&å!ÑÍaËEÊo *¯ä&å! ÑÍNå*°än&å! ÑÍaÑ}£oËEÊJ *´äå!Ñ"´ä*°än&}2¯ä*²äå!Ñ"²ä!€å*²äÑ"°äà *´ä"ºä*ºäÉýáá"Œäýå!"dä!"bä! }2fäÍ !gäͲ!€å*bäÑ"`ä*`än&å!ÑÍaËEÊ(!*fä&å! ÑÍNå*`än&å! ÑÍaÑ}£oËEÊ!*däå!Ñ"dä*däå*ŒäÑÍNËEÊ!Ã+!*`än&}2fä*bäå!Ñ"bä!€å*bäÑ"`äì Ç!*`än&å!ÑÍaå*`än&å! ÑÍaÑ}£oËEʇ!!gäÍ *`än&e.åÍ !gäͲ*bäå!Ñ"bä!€å*bäÑ"`äÃ+!!gäÍ  !ŽäͲýá!ŽäÍ ýåÉï!�ýáá"Aâýå*¨!&ËEÊN"!}2¨!!0äå!/ãÍ Í=!0äÍzÍ5å!ÑÍaËEÊ%"ÍRÍ�File !/ãÍ !ÍqÍ� not found. AbortingÍ�ÍbÍÅ!0äÍU"«!!;âå!‚Í¥!ë*;âs#r*;â"­!!"¤!*­!";â*¦!å!€ÑÍ›ËEÊ@#*;â^#Vëå!ÑÍaËEÊ›"*;â^#Vë"9â!;âå!‚Í:*9â";â!"¦!Ã@#!;âå!‚Í:!";â!"©!*¤!å*«!Ñͯå*©!å!ÑͯÑ}£oËEÊ:#!7âå!‚Í¥!ë*7âs#r*;âå!ÑÍNËEÊ#*7â";â*;â"9âÃ#*7âë*9âs#r*7â"9â!0äå*9âå!ÍkÍb*©!#"©!*¤!#"¤!ñ"!"¦!*;â"­!*;âå!ÑÍaËEÊ}#*;âå*¦!+Ñn&ë*Aâs*¦!#"¦!!}2CâÃŒ#!ë*Aâs!}2Câ*Câ&ÉýáP!æáͲýå!æáÍ ÍR!ÍqÍ�Íb!0äÍSÍb!€ãÍîÍbÍÅÉÃì%Íçå!ÑͯËEÊû#ÍNo input file specified.Í’#!åÍy P!/ãͲ!0äå!/ãÍ Í=!0äÍzÍ5å!ÑÍ›ËEÊM$ÍCan't open file !/ãÍ ÍÍ’#ÍRÍ�Uuencoding file !/ãÍ !ÍqÍb!.e.å!/ãÍ Í|"Øá*Øáå!ÑÍNËEʧ$!/ãÍ P!ÞâͲÃÀ$!/ãÍ !å*Øá+Í5P!ÞâͲÍ644P!�âͲÍçå!ÑÍ›ËEÊL%!åÍçÑÍ5z³ÊL%Õ"Øá*ØáåÍy P!‡áͲ!‡áå!Ñn&åÍQ!0å!9ÍkÍËEÊ5%!‡áÍ P!�âͲÃC%!‡áÍ P!ÞâͲ*Øá#ÑÃê$!.e.å!ÞâÍ Í|å!ÑÍNËEÊ‚%!ÞâÍ Í.uueÍP!ÞâͲ!€ãå!ÞâÍ Í<ÍbÍRÍ� to file !ÞâÍ !Íq!.ÍòÍ�Íb!€ãÍÎÍ5å!ÑÍ›ËEÊë%Í Can't open !ÞâÍ ÍÍ’#ÉÍÌ#!"‡â!"‹â!"‰â!€ãÍ[Í�begin! Íò!�âÍ !Íq! Íò!/ãÍ !ÍqÍ�ÍbÉÃ}&ýáá}2áýå*á&å! ÑÍNËEÊk&!€ãÍ[!`ÍòÍbÃ|&!€ãÍ[*á&ÍòÍbÉÍR!.ÍòÍb*‡âå! ÑåÍ>&!å*‹â+ÑÍ5z³ÊÄ&Õ"€á!Kâå*€áÑn&åÍ>&*€á#Ñâ&!€ãÍ[Í�Íb!"‹â!"‡âÉ*‹âå!<ÑÍNËEÊð&Í;&!Dâå!Ñå!Hâå!Ñn&å!ÑÍ ëás!Dâå!Ñå!Hâå!Ñn&å!ÑÍå!Hâå!Ñn&å!ÑÍ Ñëás!Dâå!Ñå!Hâå!Ñn&å!ÑÍå!Hâå!Ñn&å!ÑÍ Ñëás!Dâå!Ñå!Hâå!Ñn&å!?Ñ|¢g}£oëás!å!ÑÍ5z³Êó'Õ"uá!Kâå*‹âÑå!Dâå*uáÑn&å!?Ñ|¢g}£oå! Ñëás*‹â#"‹â*uá#Ñð'*‡âå*‰âÑ"‡â!"‰âÉ*‰âå!ÑÍNËEÊ(ÍÝ&!Hâå*‰âÑåÍ¡!}îo}2 !* !&}îoËEÊC(*‰â#"‰âÉ*‰âå!ÑÍ›ËEÊW(ÍÝ&*‹âå!ÑÍ›ËEÊp(Í;&Í;&Ãs(Í;&!€ãÍ[Í�endÍ�Íb!€ãÍîÍb!0äÍSÍbÉÍÉ#* !&}îoËEʰ(Í(Ü(ÍD(ÃÅoËEÊst*‰â#"‰âÉ*‰âå!ÑÍ›ËEÊ›ÍÝ&*‹âå!ÑÍ›ËEÊ›Í;&Í;&Ãe(Í;&!€ãÍ[Í�end:20E80000000000000000C311E836EB55EB7BEB5AEBC320E84600400070000000000000006F :20E820007932A8F5ED73FEF531FEF5FDE5DDE5D5DDE12118E87EE640C401EBAF32ABF532BA :20E84000ADF5676F22A9F53E26B93801792188E8CD68E83AABF5B7C47BEDDDE1FDE1ED7B42 :20E86000FEF52AA9F57D44C987856F8C95677E23666FE97B217CE8FE06D018EC8CEC79EF39 :20E8800009EC04E90EE909E903F618E9AFEAF7E8FCE800E933E924E929E91EEA42EA2EE9E8 :20E8A0001EEC2BEC85ED2AF1AEF145EC6DEC79EC3FF3A6F378F284EC91EC98EC72EF9FEC8A :20E8C0003BEFA4ECA9ECB1ECB6EC35F396F3C4ECF9EC2EEDD6E821E5E87EB92328903C2827 :20E8E0008D232318F42896F36825F56912F5D273E8D35FE9FF97ECCD15F618254BC312F6A1 :20E900004BC30FF6CD2DF618182A1AE818032A1CE87CB5C472E81809CDD7E9CD0FEAD4B008 :20E92000EAC39BEC3A030018F87B320300C9CDD7EA18EE4B1C281F1C28173A18E8E60820F8 :20E94000041C28161C792A87F5EBC495E9EBC394ECCDF2E918CBCDF2E9C8CDD7E918C2EB76 :20E9600018036F2600010A10AF2917B93802912310F7F57CB5C465E9F1C630C5D5E5CDB014 :20E98000EAE1D1C1C93E0DCD90E93E0A18023E20F5CDD7EAF14FF5DDE5FDE5C5CD0CF6C14F :20E9A000E53A18E80FDC01E9D1FDE1DDE1F1FE7FC82188F534FE20D035FE082805FE0DC0CD :20E9C00036013435C835C92188F57EB7C8CDD3E9CD8EE93E0818BE2186F57E360023B77EA5 :20E9E0003600C02109F6DDE5FDE5CD72E8FDE1DDE1C93A86F5B73EFFC0CD0AEAB7C8CDE378 :20EA0000E93287F5F6FF3286F5C92106F618D7FE0DC8FE0AC8FE09C8FE08C8FE20C91AFEA9 :20EA200024C813CD7BE918F678B7C8C5E5CDC7E9E1E57EFE20DCC7E9E1C12B05C9CD28EA12 :20EA400020FBDDE5E14E230600E5C5CDD7E9C1E1E67FFE05200CE5C5CD85E918EECD28EA4A :20EA600018E7FE0828F7FE7F28F3FE10200A3A18E8EE013218E818D1FE1528C1FE1828BD67 :20EA8000FE0D2823FE0A281F23770479B820092B053E07CD7BE918B17ECDC2EAFE037820DA :20EAA000A83DCCF9EA18A2233600DD70011E0D7BFE09C290E9CD8EE93A88F5E60720F63E3D :20EAC00009C9CD0FEAD27BE9F53E5ECD7BE9F1F5C640CD7BE9F1C9CD0AEAB72804AF3286C4 :20EAE000F5CDF2E9C83A87F5FE133EFFC0CDD7E9CDD7E9FE032802AFC93A18E8E640C818F0 :20EB0000647EE620200479FE06C8C5D5CDF2E9D1C1C83A87F52119E8BEC0D5C5119AEBCDB5 :20EB20001EEACD09ECCD18E9F5CD85E9F1C1D1E65FFE59C8182F1145F5AFCDAAEB1181EB06 :20EB4000CD1EEACD18E9E65FFE52C8FE412816FE4920EAB7C9114EF518241157F53EFFCD70 :20EB6000AAEBCDD7E93AA8F54FDDE5D1ED7BFEF52A1EE8E5210000221EE8C9115CF5AF180F :20EB8000DE0D0A4129626F7274204929676E6F7265205229657472793F240D0A526573753A :20EBA0006D652028792F4E293F244FC5D53AB1F5C641327CF5116FF5CD1EEAD1CD1EEA1145 :20EBC00060F5CD1EEA3AA8F5F5CD62E9F1C1FE0F3837FE183810FE1E280CFE21382BFE25A6 :20EBE0003804FE282023DDE5D6132007B12804CDBDEEE31167F5CD1EEAE10608CD12EC3E2C :20EC00002ECD7BE90603CD12ECCDF2E9C8CDD7E918F7237EE67FFE20C47BE910F5C93A1849 :20EC2000E8E6083E2220743E251870118000CD72EFAF32B1F56F672284F52282F5CD86ED8F :20EC40003AB2F51856CD4EEDDD7E00D63F280DDD7E0EFE3F2804DD360E003E0E3CCD39F047 :20EC60002A91F5ED5B80F5018000EDB0C9DD2AB8F5CD4EEDCD48F018E7CD4EEDCDC2F03ABF :20EC8000BAF51817CD4EEDCDE3F018F32100E818032A84F522A9F5C93AB1F532A9F5C92AF0 :20ECA00097F518F02A82F518EBCD4EEDCDF9F018CE2A93F518DE7B1C2805E61F32AFF53AF7 :20ECC000AFF518D7CD4EED01000051CDFFECCD1BF1C0CDD4EEC8CDBDEEEB210F00CD09ED49 :20ECE0007ADD962179DD9E2278DD9E23D4FFECCD48F0CDD4EE20DF18A2212000CD09EDDDED :20ED00007221DD7122DD7023C9197E210C0019577EE61FCB12CE001FCB1A4F23237E0F0F20 :20ED20000F0FF5E60347F1E6F0814FD004C97B2F5F7A2F572A84F57BA56F7AA4672284F501 :20ED4000EB2A82F57BA56F7AA4672282F5C93EFF32ABF53AB1F532B0F55FDD7E0032ACF55E :20ED6000FE3F2821E61F7B2804DD7E003DCD86ED3AAFF5DD7700C92A0BE8E93AACF5DD7759 :20ED8000003AB0F55F7BE60F47ED5B84F5B72806CB1ACB1B10FA21B1F5CB432802BEC87707 :20EDA000D54F211BF6CDE6E97CB528CB5E235623ED5389F5228BF5110600191191F5010813 :20EDC00000EDB02A93F50E0FEDB0D1CB43C02A84F5CD2FEE2284F5ED5B9EF53E03CB3ACB77 :20EDE0001B3D20F9132A97F5E53600231B7AB320F8E1ED5BA2F57323722A8BF5AF77237709 :20EE000032B2F5CDCDEE3EFFCDEFEECDD4EEC8CDBDEEFEE528F0FE2128ECB7200A237ED655 :20EE20002420043D32B2F5CDB8EFCDDBEE18D7EB2101003AB1F5B72804293D20FC7AB46794 :20EE40007BB56FC92AB5F5CB3CCB1DCB3CCB1D22B3F5EB210000ED4B99F53E11B7ED423097 :20EE600001093FCB13CB123D2804ED6A18EEE52AA6F519444D211EF6CDE6E9C1ED5B89F51C :20EE80002130F6CDE6E9444D2121F6C3E6E9DD4E203A9BF547CB3910FC2FC609473A9DF5B7 :20EEA000DDA60C0F0710FD81DDE5E10E10094F093A9FF5B75E57C8095E23562BC92A91F577 :20EEC0003AB7F5856F8C9567E5FDE17EC921FFFF22B5F5C92AB5F57CA53CC9CDE2EED81390 :20EEE000186A2A8BF5ED5BB5F57B96237A9EC94F2AB5F52322B5F5ED5BA0F5B7ED521928B9 :20EF00000230CA7D0F0F0FE66032B7F5C0C5CD44EECD85EFCD50EFCD7FEFC12AA4F5ED5B4F :20EF2000B3F5B7ED52C8D82A91F50680AF862310FC2A95F5190C200177BEC82A82F5CD2F65 :20EF4000EE2282F5ED5BA0F5132A8BF5732372C92127F6CDE6E9B7C8CD6EEF28F3C9212A0D :20EF6000F6CDE6E9B7C8CD6EEF0E0128F1C92A09E8E9ED5380F5CD7FEF2A80F5C394ECEDA2 :20EF80004B80F51804ED4B91F52124F6C3E6E97BE6073C474FCB3ACB1BCB3ACB1BCB3ACB2A :20EFA0001B2A97F5197E0710FD41C9C5CD8FEFE6FED1B30F10FD77C90E01CDBDEE1110004F :20EFC00019435E233A9FF5B75728030556237AB3280DE5C52A9EF5B7ED52D4ABEFC1E110F0 :20EFE000E1C9CDBDEEFDCB0A7E2005FDCB097EC82A0FE8E92A82F5CD2FEEED52C02A0DE8B0 :20F00000E9626B7AB3280B1BE5D5CD8FEF1F301FD1E1ED4B9EF5B7ED4209300E23D5E5EBDA :20F02000CD8FEF1F3009E1D118D97AB320D5C93717CDB3EFD1E1C93E0F32BBF53EFF32BA0F :20F04000F5DD22B8F5CDCDEEAFCDEFEECDD4EE2869ED5BB8F51AFEE52807D5CDE2EED1307A :20F0600059CDBDEEFE2128E0AF32AEF54F3ABBF547D60F3822FDCB0A7E281C7EB720183222 :20F08000AEF513230C1010CDDBEE3AB5F5E60332A9F5AF32BAF5C91AD63F2F28E279D60D1B :20F0A00028E03C1A2807AEE67F209D18D5C5AE473A9DF52FE61FA0C118EFCDCDEE3EFFC35C :20F0C0009BECCDF4EF3E0CCD39F0CDD4EEC8CDBDEECDEBEF36E50E00CDBAEFCD9BF1CD4836 :20F0E000F018E7CD18F1C0CDD4EEC8CDE2EF01100CCD83F1CD48F018EECD18F1C0CDD4EE08 :20F10000C8DDCB067E2806DD7E20FD770D01000CCD83F1CD48F018E5CDF4EF3E0CCD39F091 :20F120003AAEF5B7C832BAF51893CD4EEDDD360E00CD27F2CDD4EEC8CD47F1DD7E203CC005 :20F14000DD7E0DDD7720C9DD7E0CF5CDBDEEDDE5D1012000EDB0DDCB0EFEDD460CDD4E0FC8 :20F16000F1DD770CB828060E0030020E80DD710F3A18E8E610C8DDCB097E1E08CCE4F4D864 :20F18000C01818CDBDEEEBDDE5E1C5060009C1480600EDB0FDCB06BEFD7700CD44EE0EFFED :20F1A000CD1BEFCD85EF0E01CD5EEFC37FEFCD4EEDDDCB0E7EC0CDF4EFCD37F0CDD4EEC8E6 :20F1C000CDE2EFFDCB0BBE01100009EBDDE5E1093A9FF5B7280105CD05F2EBCD05F2EBC27C :20F1E000BDF02313CB40280323130D0D20E921ECFF19DD7E0CBE380877232323DD7E0F7752 :20F20000CDE2F418967ECB40280323B62BB7200B1A77CB40C823131A7718071A96C0B0C8D1 :20F2200023131A962B1BC9CD37F0CDD4EEC03AACF5B7C02A14E87CB5C83AB0F5477E23B7A7 :20F2400023CABAF0FE2428F13DE60FB828EB2BE5CD86EDE13AAFF5477E23FE242805A8E60B :20F260001F20D6E5CD37F0CDD4EEE128CCCDBDEE3AB1F53C32ACF5C9CD4EEDDD360E00CD16 :20F28000A1F3CDF4EFDD7E00F5DD3600E53E01CD39F0F1DD7700CDD4EEC8AFDD770DDDE53F :20F2A000E1110F00190611772310FCCDBDEEDD7E00771E02CDE4F4CDE2F41E08CDE4F401F9 :20F2C0000020CD83F1DDCB0EFEC9DDCB0E7E202CCDB1F13AA9F53CC8CD0AF338182024CD5A :20F2E00037F0CDD4EE201C3AADF5B72808CD82F2CDD4EE2011DDCB0EFEC3BAF0CD0AF33835 :20F30000F418DCCD47F1AFC39BECDD4E0CDD460ECB7037C00C79E61F4F20070478E63F4785 :20F3200037C83A9DF5A1DD7E0CDD710C4FDD7E0EDD700E47C9CD4EEDAFCD52F4C01803CD0B :20F340004EEDAF32ADF5DD7E20FE80200ECDCAF23AA9F5B72024DD77201805DDBE0F301AE7 :20F36000CD8EEE7AB32813CD7EF3CD56EECD50EF3AA8F5FE14C0DD3420C93E0118892100DD :20F38000003A9BF547CB23CB12CB1510F83A9CF5DDA620B35FC9CD4EED3EFFCD52F4C01830 :20F3A00008DDCB0EBEC9CD4EED3EFF32ADF5CDF4EFDDE5FDE1CDE5EFDD7E20FE80380CCDF4 :20F3C000CAF23AA9F5B720B2DD7720CD8EEE7AB3205AE579B728043DCDA8EECD01F0E17AB2 :20F3E000B33E02CA9BECCDA1F3733A9FF5B7280223720E023AA8F5D6282033D52A91F506EE :20F4000080772310FCCD7EF33A9CF547042FA35F0E02E5D5C5CD56EECD85EFC1C5CD5EEFC0 :20F42000C1D1E10E001C10EACD7FEFD10E00CDA1F3C5CD7EF3CD56EEC1CD5EEFDD7E20DD73 :20F44000BE0F38043CDD770F3AA8F5FE15C0DD3420C932ADF5DD7E2157CBBA17DD7E221789 :20F46000F5E61F4FF117171717E60F47DD7E231E06FE043063070707078047DD7220DD56FE :20F480000ECB72205379DDBE0C200878DDAE0EE63F283ECB7A200FD5C5CDB1F1C1D11E039A :20F4A0003AA9F53C282ECD26F3C5CD37F0C13AA9F53C201A3AADF53C2807CD26F33E0418AD :20F4C0001CCD82F21E053AA9F53C28081803CD47F1AF1809DD360EC0DDCB0EFE7B32A9F598 :20F4E000B7C91E042A91F5016000097ED621C05719D53AB7F50F0F5F0F0F835F19E5CD3474 :20F50000F5D1C1D879FE022803010400F3EDB0FBAFC9D5CD34F5D13EFF3807010400CD0CEA :20F52000F57EC39BECD5D5C1CD37F5D1D8C0EBCD09F512C90100002A16E87CB537C83A1805 :20F54000E8E680C8E94469736B20492F4F244E6F2064726976652446696C6520522F4F2467 :20F560000D0A466E3A20242046696C653A20240D0A444F532B206572726F7220003A202414 :20F580008000000000000000000000000000000000000000000000000000000000000000EB :20F5A00000000000000000000000000000000000000000000000000000000000436F7079B0 :20F5C000726967687420286329203139383620432E422E2046616C636F6E6572202832304C :20F5E0003329203238312D31343338000000000000000000000000000000000000000000F7 :00000001FF S4T'W38`+=TC MU7AM^U2ZY,X"B@(1SX@S9(8$/E#!`7(?LV2&",8]\'1 MV>'1P=G%W2K;`-7-]`\8Q\'1Q+<@'7FW^C(:Q=4.(OQR2+B`,V?&L@8Z`XB*N(`R];+7LC+ MGA@(*N(`RU;(RY;EQ1$P`!GK#AK-!0#!X1$,`!GKS04`M\G!T>U3X@#%Y%R*W/)/I'#(!;5V>'9(0``5%T^$"GK M[6KKV2G9,`0),`$3/2#OR4BX@!^Y@/*\QMXL2A,Q=4.<% M`"KB`!$,`!GK.N<`3\T%`-'!MR@0;SKG`/XB($-]/2@$_@,@/\75*N(`$2T` M&4XC1@-P*W$1V_\9<2-PT<$A@``9ZPL8L"KB`!$)`!E&*TXK*RM6*U[KM^U" MT.MQ(W#)/ID8!C[P&`(^!,,@%L'1[5/B`,7ES5(;T;?M4MH?&RKB``$(``ES M(W(!)``)>+$@&BKB``$, M``D&`(Q#[[5OB``X/S04`/"A(*N(``2$`">U+Y`!Q(W`C(^OM2^8`Q=4. M<%`.U;X@`.(+$@U2KB``$D M``GIW2KB`#[PPW^;\7R'M`"+K`-TJ[0#=;@+=9@-] MM"A([5(P#]UN`-UF`>7=(NL`W>$8XR`*W5X`W58!W>48&TU$W6X`W68!W>7= M&=UU`-UT`=UQ`MUP`]WET2KK`',C7A&2+-`"KR``$$``G= MY<$)VC4=[4O/`.U"`0``(0``VO`-^(V9O$Q,3>^;\7^LB\@`J M[0#EW>&W[ page 90 title 'DOS+ Disk Operating System 2.5' ; ver equ 5; 3 thru 15 allowable ; ; *************************************************************** ; * * ; * D O S + Z80 replacement Disk Operating System Version 2.5 * ; * * ; * Copyright (c) 1986 by * ; * C.B. Falconer, 680 Hartford Tpk., (203) 281-1438 * ; * Hamden, Conn. 06517, USA * ; * all rights reserved * ; *************************************************************** ; ; DOS+ is designed for general usage, and is an improved replacement ; for CPM 2.2. DOS+ requires a Z80 cpu. DOS+ has comprehensive ; provisions for RCPM security, especially when used with CCP+ (the ; supplied CCP), and is virtually impregnable with BYERSX. The system ; allows extension with user installable RSXs (Resident System Exten- ; sions), which are used for print spool/unspoolers, the XJOB utility, ; and others. These RSX's may be dynamically installed and removed, ; for optimum memory usage. DSKDRIVE (the foreign disk driver) and ; BYERSX (the communications system) must be installed for the target ; system before use. See below. ; ; Some of the code is quite tricky, in order to pack the features into ; the available space. The tricks are usually commented. ; ; Revisions: ; 2.5 (86/12/06) cbf. Prevented permanent lockout of random read ; files after a bad seek (can now re-seek, aborted Turbo Pascal). ; If the bios supports it (by returning an appropriate value in ; HL on console output calls) DCIO output calls (function 6) will ; return that value as the current X/Y screen position. GETINFO ; arguments 3, 4 & 5 return List, Punch, and Reader status resp- ; ectively (punch/reader only when customization addresses set). ; A special vector at offset 01Eh now controls the exit point for ; aborts, either from DOS errors, or CTL-C (breaks enabled) from ; the console. If used, the vector resets itself to a warm-boot. ; 2.4 (86/11/05) cbf. Console buffer read simplified. No CTL-R, ; rub equivalent to bs, pt) 14A TEND0\ 14B TEND1\ 14C IEI (daisy-chain int. enable) 15A EXTRQ\ 15B Clock 15C IEO (daisy-chain out) 16A +5V 16B Ground 16C Ground In essence, a subset of the CPU bus is brought out on these pins. The lines are unbuffered, and are not intended to drive long backplane lines. The pin assignments are such that for basic IO functions, only the two outer rows of the connector are used. This enables the cheaper 2-row connectors to be used. The centre row is needed only when a memory page is mapped on to an external board. The intended mating connector is the same half-DIN41612 format, with wire-wrap tails. These are soldered through the expansion board, and are plugged into J1. This technique enables several expansion boards to be stacked on each other, if required. The IEO pin is not connected on the CPU card. It is assigned for use by expansion cards, to enable the daisy-chain to be propagated through a maximum of 2 expansion cards. The method is shown below (X denotes a connector pin): Vcc | 15C Expn. board 1 15C Expn. board 2 15C < X----X-------------------X+---X----X+-------------------X----X > J1 J2 | J1 | J2 < 14C | 14C | 14C IEI +----X----X-------------------X----X----X--------------------X----X | | | | +---------------+ | | +---------------+ X-| IEO Logic IEI |-X+ X+-| IEO Logic IEI |-X +---------------+ +---------------+ Each of the IEI connections to the expansion-board logics should have a pullup resistor. Each expansion board has 2 jumpers, J1 and J2. It may be seen that by setting these jumpers as shown, a daisy-chain of up to two vectored-interrupt expansion boards is possible. The "E" clock output may be used to gate the RD\ and WR\ signals, as described for the IO combination chip. It also provides a convenient clock to control a logic analyser. For this purpose the falling edge is appropriate, and will give exactly one clock (with valid data available) per bus cycle. If a logic analyser is used, bear in mind that CPU accesses to internal chips usually do not generate external bus cycles. ^$#`75%TIV"G8#`T@`E1=&=@IV%\6`!G8&,MYM\A\A\G= MX>'E?28`(SE.@3@<=^LA``!$[4(Y^>OE`^VPZ^$K&T\#[;CK(_G=Z3X0PW'-I@17XG=X>'E?28`(SGY;R8`W>G=X2$``%0Y7DLCY1E>0R/E&>7] MX='A>9`X$#Q/Q=7E&KXH#.'1P2,-(/(A```8#B,3$.S1X<$A```YZ^U2_?G= MZ=WAS:8$3^'-IPE?X7Z3.!L,#2@7D3@2]7Z1=P8`4!E470GQ/$_ML!@"'7/= MZ=WAS:<)3]'M4^8`(0``.1KUAC@#N#@!>!+Q5UZ1."\\;WJ#.`2X?3@(>),X M)I$X(SRW*!_%U2KF`%\=%@!"&0G1U>50&>OA3^VXT<$8!7H\*!E/>)$\NS@! M>[LA`0`Y3^VP(0``5#E>$QGYW>G=X>$MPC`(;"8`W>DA`@!4 M.5X3&7XV`2-WR2$$`%0Y7DLCY1E>0R/E&>7]X='AK[@H!+D@"'BYX=']^=7I M&KX@]B,3!0T8YWRW(`-]M\`^$<-W'\W6"=`^`<-U'\U*"ACUS74/S6`*&.W9 M?;?9/@(HZ,V^"AC@V-Q@@ MS8\+/_4H$#@!V'9W>'+N+!'+"W,.PL(R7VWR-F5V3_-%@OEY>7=.=DN!=D^"`C-CPLX M`\UU"S_+%0@](`S==07=*]DMV2@./@C-3PLPWPC-=0NW&.'-3PLX!,V/"S_A MT<'+>"`%S5`+&)HL()/9Y<5XR_C9J.:`]7=(0``R>'8KV]'3U=?9\FWRQC+&MF*V5=YV8G93WC9B-E'R7S9E-EG>]F;V5]ZV9K95WG9F=E/>-F8 MV4?)>-FXV]F[V"@&S;P+ MR#_)?=F]V<"WR,./"WW6@=H["SS^*-#9Q=7E",T["P@WS40+/2#YV7S9I-EG M>]FCV5]ZV:+95WG9H=E/>-F@V4?#1`K9Q=7EV#X#PG4?S74/?<:`RR_&@&_6%/79Q=7ES;X*S=8Notes on the "first cut" BIOS: This is the first version, to get CP/M up & running on the P112 board. Support is minimal: basic devices, no interrupts or IOBYTE. The Submit file will build BIOS for its correct starting location (F600), with a loader in the 100H bytes below that. The entire .HEX file is to be read in using the Hex Upload feature of the ROM debugger. GO to locn. F500 (from the debugger), and BIOS will be installed on the correct sectors. Assuming the boot sector and CP/M itself are also installed, this is now a bootable disk. Note that the version of DISKOP (the diskette subsystem) used in BIOS has had the FORMAT command deleted. This to save memory: FORMAT is quite large, and never normally used. See the FORMAT subdirectory for formatting diskettes. The DISKOP source file is the same for BIOS and the ROM, save for the switch "incformat" - this is defined in the ROM version, and commented out in the BIOS version. This BIOS is designed so that loading will not corrupt the final 200H bytes of RAM - they are occupied by the disk sector-buffer. This is because these locations are used as workspace by the ROM. Since they are not altered, the act of loading CP/M will not interfere with ROM functionality, and an un- successful load can return to the ROM in safety. (Note that once CP/M is actually initiated, the ROM is no longer accessible). "OVERLOAD" FUNCTIONS Besides the regular BIOS functions, additional "overload" functions are defined. These are called from the cold-boot entry (which CP/M never uses after start-up). The call passes a function code in C. Currently defined are: C=0 Reset disk subsystem This will turn off all drive motors, and issue a reset to the controller hardware. It does NOT flush the CP/M blocking buffers: a call to HOME should be made first, to do this. C=1 Get boot-drive number The number of the drive from which CP/M was booted is returned in A. C=2 Assign drive type Pass D = required rive number E = required drive type (see DRVTYPE.INC for definitions) If D and E are valid, the given drive is assigned to the hardware type specified in E. This affects both the CP/M organsiation tables, and the parameter-block controlling the hardware setup. If E = -1, the assigned type is returned in E. 07 Mar 1997 Added cold-boot code to set the DOS+ "path" variable to null as a startup default. See the DOS+ documentation. MSXBRB`6.N8`MR@-S883(`@JX@`V`"-WRLA7``!)`#ML,D&!B&V$\7E!@/M6]L`$QK^("CZ&LV$!)8H"N'! M$00`&1#CM\DC$Q#KP<$:_CK`?LE#3TX`5%)-`4M"1`),4U0#0558!%534@4^ MKS+F`,WN%,TD%BKB`"-^_@8@'LZY@"W`0\!*`K5#A/-!0#1`1;QQ41'``9ZR%<``$, M`.VPX1$,`!GEZPX7S04`T3S*KA4A7``!)`#ML,D^`<,@%CZO,N8`S1<6P"K? M`'RU/B$@ZRKB`!$,`!D17``!)`#ML!%<``X/S04`/"C/(?T5$8```1H`[;`1 M``$ZY@"W(`3M6P$!,0`!PX$`_]4.<%`!%<``X4S04`T2&``!GKMRCI&&8B MX@#-PA;(/B`RV0#).MD`M\CQR=WAW>7E(;HHU'X4(\WH`1C,%?IX%BO-)0(((`@`'2B]&.\V&LGE*N(`(W[^!N') MS<(6R,U;%_X:R,75Y2KB`"-^MR`.*MT`?OX:*&@C(MT`&&(](!7-$@+U_B`X M!S5L7_B`H%OX):20F50000C307F5000D01042171F5E7CDCDF538F7FE0230F357D52189F5E7CDCDF538F7213A :20F520000B00FD2103F5FE03280B210D00FD2105F5FE0520E14E2346C5DDE121EEFD0100E5 :20F54000F6A7ED4201FF010944CB382100F6D1FD4E00FD5E013E03CF380621A1F5E71809F2 :20F56000F521B6F5E7F1C630DF21CBF5E73E01CFFF456E746572206472697665204E6F2E05 :20F58000205B302E2E335D3A00456E7465722064726976652073697A65205B332F355D3ADE :20F5A000005772697474656E207375636365737366756C6C79005772697465206661696C52 :20F5C00065643A20636F64653D20000D00D7A728FCFE1BCC3800D630D8FE0A3FF521CBF549 :20F5E000CD2000F1C900000000000000000000000000000000000000000000000000000064 :20F60000C367F9C391F6C314F7C31AF7C33EF7C367F7C356F7C349F7C382F7C3A6F7C387C9 :20F62000F7C399F7C3A1F7C3D2F7C3DEF7C361F7C39EF7000000000000000067F975F69B28 :20F64000FAE7F9000000000000000067F975F6BBFA41FA0056F94800040F01AE003F0080FD :20F660000010000100DF022502092AFF50E50F0827020363F94800040F00CA027F00C00005 :20F6800020000100DF022502121BFF6CE50F084F00318000CD8CF720623A66F9F54FCDA68B :20F6A000F7F157060BDD2ADBFA2100E00E001E02DD7E04B83016C53E02DD460405C5D5CDFA :20F6C000C5FC3837D1C1F190470C1E013E02CDC5FC3828AF32E7FA32E5FA3EC33200002120 :20F6E00003F62201003205002106E8220600018000CDA1F73A04004FC300E02103F7CD0A78 :20F70000F7F3760D0A4641494C007EA7C84FCD3EF72318F6ED38E01F9FC9E5C5210000068A :20F7200040CD14F7A7200F2B7CB520F510F3CDBDF8CD14F728FBC1E1ED38E1E67FC9ED38EF :20F74000E0CB5728F979D3E1C9ED389DCB4728F9ED3898CBBFC9ED389DCB6F28F9ED0998E0 :20F76000C9ED388D079FC9CD61F72006062810FE18F5ED098C3E0DED398E00003E0CED391A :20F780008EC9CD8CF70E007932EAFAC93AE7FAB7C83AE8FAB7C4C7F8C97932EBFAC9C5E1A4 :20F7A000C9ED43DFFAC92100007932E9FAFE02D00610ED4C2133F609E5010A00097E23668D :20F7C0006F2B462B4EED43DDFA0111000922DBFAE1C93E0132E1FA3E0232E2FA1853AF3227 :20F7E000E1FA7932E2FAFE0220173E1032E5FA3AE9FA32EFFA3AEAFA32F0FA3AEBFA32F15D :20F80000FA3AE5FAB7282A3D32E5FA2AE9FAED5BEFFAED52201B21F1FA3AEBFABE20123477 :20F820007EFE483806360021F0FA34AF32E4FA1808AF32E5FA3C32E4FAAF32E3FA3AEBFA89 :20F84000CB3FCB3F32E6FA21E7FA7E3601B7281B2AE9FCTL-U equivalent to CTL-X. No reg. save ; Improved error reports. Compatibility flag bit. Setting ; break inhibit also prevents ^C break on call 10 (cons. input) ; and when exiting from CTL-S output pause. R/O files are not ; stamped for access time. Extended calls GETINFO and TDEC. ; 2.3 (86/09/20) cbf. Flags expanded to control time access method. ; Time routine may be a pointer to storage. File timestamps for ; creation, update, and access (incompatible with CPM3). Access ; stamping controlled separately, allows for disk wrt-protect. ; Set/Get time bdos calls changed for compatibility with CPM3 ; Initial link at bdos+11, compatible with dos finder routines. ; Console input modified to make DCIO compatible with other ops. ; SYSTEM files, user 0, are visible to all users (for read). ; Removed path restriction to SYSTEM files. Applies to all read ; Paths only apply to FCBs with a default drive specification. ; User break on any DOS call available. DCIO enabled separately. ; Corrected wrt_rand_zero_fill (40) call. Corrected file system ; so SUBMIT/JOB files work. File alteration now resets the ; $ARC bit (T3) for proper operation of archiving utilities. ; The CPM3 method (via set file attributes) of recording exact ; file length in bytes is available (using F6). Wild cards ; rejected for rename, file size, set attributes. ; ; 2.1/2 Based on Mr. Ten-Brugges original P2DOS release, which made ; this development practical. Uses CCP+ for best results. ; ; New features of DOS+ (over CPM2.2) are: ; - Console status call always checks physical input, so that it is ; always possible to abort a program by the sequence CTL-S CTL-C. ; (assuming the program is making console calls other than DCIO ; and that breaks are enabled in the flag byte). ; - DCIO calls (function 6) are now compatible with all other console ; calls, so that a mixture of functions can be used. The abilities ; are such that direct bios calls are no longer needed. ; - DCIO provides the CPM3 conin_wait call (0fdh), and a "lookahead" ; call (0fch) so programs may examine input chars without using ; them. The lookahead call also returns the console column (as ; viewed by DOS, not the bios) in the h (and b) registers. This may ; not be accurate if tabs or cursor positioning sequences etc. have ; been used. If no char is ready lookahead returns 0 (which, if ; the status call (0feh) has returned true, is really a ready nul). ; The output call (any value less than 0fch in e) returns any value ; returned in hl by the bios. If implemented in the bios, this ; should describe the current row (in h) and column (in l) of the ; cursor, with an offset of 020h added. Applications can now intel- ; ligently control the cursor for windowing, status lines, etc. ; - User break on "brkchr" (except DCIO calls, enabled separately). ; This can abort a runaway program, provided it makes DOS calls. ; - Error routines are more informative, including DOS call number. ; DOS+ ERROR ON D: disk I/O ; bad drive ; file R/O ; R/O ; Fn=XXX (FILE =FILENAME.TYP) ; The option 'FILE =FILENAME.TYP' is displayed only when the DOS ; function uses a filename. After all errors a warm boot is done, ; except bad sectors, which allow retry/ignore/abort options. ; Provisions exist (separate documentation) for applications to ; intercept errors, and to detect where the DOS+ call would have ; returned if successful. ; - Search path is implemented to find files on other drives. The ; files must be specified by their exact name. This takes effect ; only after the file is not found on the current default drv/usr, ; thus there is no point to a $$ entry in the path string. If the ; FCB specifies a drive no path is searched. ; - Any file stored on USER 0 with the $SYS attribute set, is visible ; to all other users for read (but not write or erase). Such files ; can be erased from user 0, but not written into. ; - Automatic date ÊéInsert system disk in drive $Enter drive from which to read System Track/s: $Enter drive to be formatted: $Insert disk to format & hit Enter: $Formatting... $Format another? [Y/N] $: and hit Enter $Invalid choice: try again! $Format successful! $ $ÍЇO!& ^#VÕ6> ÍÑ> Í>ÍÃI_u��³ÆFatal disk error: $Recalibration error $Error from FDC chip $Sectors overrun track $DMA lost data $Operation timed out $Invalid function $Seek error $>&2   Íý ÍÉõ ÍñÆA_ͺ ÍÍÓÉÕË ÍÑÕ ÍÍÓ: §Ñ(æ: þ`8˯þQÌþC0ÒÖAÕWÿ*ýÿ ÍB{Ñþÿ(¹xÉÝF: W>ÍÉÝ~¸0Å>ÝFÅÕÍÑÁñ�G >ÍÉ         ÝFÅåË q˾#yæw#w#Ý~w#ëáÁÉÅ!. ;: W>ÍÁÉÝ* Ý~þ(£ÍÝ Ý~‘þ(¬ÍÝ Ý~‘þ(µÍÝØyݾ èÉÝ* ÝFÅ!. : W>ÍÁy ݾ éÉFormatting... $Verifying... $Writing System Track/s $ Í* Í*ýÿ Í!Í2 Ý" : ÍéÝ* : W!v Í\QÍ2 Ý" o ÍÍÓ>ÍR ÍÍñb ÍÍ1q Í!v ÝFÍMÝ~þÄMè Í£ ÍÍÓ: §( : þY(�þy(™>Í>ÃÅÕí8ÞËw( öô ñ7¯ÑÁÉÍI>8AÅÕx-ͼùÑÁ!x-å~æøý¾ !#~ý¾ #~Ö í(&í8'µá> ¯ >7>á7Éõí8”Ë(ùñí9•Éí8”Ë(ùí8•ÉÅF#~ͯùÁÉå!v-:w-/¦wáÉÍ{í)#í!$í9%> í9 ¯í9!í9"ÉÍ{í) í!!í9"> í9#¯í9$í9%Éýã{€==ݾ0Šcí90>ÿͯÍfÅõý ñÁýãÉåÕÅ!@ÝF)ýT]!ÁÅýí)&í!'"ƒ-ÁÑáÉÍI>Ø>ͯͼGͼÅË9¹Á>7Àxæàþ È>7ÉÅåB>‡ý2w-Gí8’Oæü²ö í9’y  í8’°í9’Ý~ ‡þ û= øÝ~ í9—>ͯÝ~ͯÝ~ˇͯ!v-:w-¦ >ͯzͯÍŠ8:w-¶w¯§áÁÉþ8>7ÉÍ/õÜ¥ñدÉå!?‡…o0$~#foãÉ¥ÀMSY_{å!Êå!â å!úå!"�-áõ>Ã2€-å!"ƒ-á>2-ñåÍ€-á0þ(þ õÍÒ:-= ãñ7x-Éí[ƒ-x-É7Éå¯2v-í9’> í9’!»ÍǯáÉq+í8’æí9’¯Éͯ£ÍÞÍf>Íí91ÍF@€Éͯ£Í÷Íf>ñí91ÍE@€Éͯ£ÍVÉͯ£>ͯzËA(Ë×ͯyË?ͯÍŠØÍ÷åÝn&))í)&í!'"ƒ-á>ñí91>MͯzËA(Ë×ͯÝ~ͯÝ~ͯÝ~ͯ>cí90Ý~ͯýåý!xÍfýáÉå|æðgí8:æðo|•8í88í8:‡‡‡‡o|•>8í89áÅåLo`)))) |æEá`Á§Éand time stamp is implemented. The creation date ; is set when the function MAKE is executed. The update date and ; time is set as the file is closed (when modified). The access ; date and time is is set whenever the file is opened, UNLESS the ; file is marked R/O or the TACESS flags bit is reset. To enable ; this feature you need to have a real time clock and the correct ; DOS+ driver (or reserved memory area). You must also initialize ; directories for time stamps (every 4th entry = 021h,0,0....0), ; i.e 3,7.. (0 based). INITDIR utility performs this operation. ; - File R/O error message occurs if one of the following file types ; is active and a write is attempted: ; File R/O (T1) (also prevents erase) ; System file (T2) (erasable from base user) ; - Disk sizes up to 65536 * 16K = 1 048 576 K BYTE = 1 G BYTE. ; - File sizes up to 32 * 64 * 16K = 32 768K BYTE = 32 M BYTE. ; - CPM3 function GET TIME (105) is implemented to get the correct ; date and time. Entry DE is address to put time. The date and ; time record has the following layout: ; date: ds 2; date = 1 (Sun 1978-Jan-01) ; date = 65535 (Sun 2157-Jun-05) ; hour: ds 1; hour in BCD ; min: ds 1; minute in BCD ; Functions only if suitable bios function call is installed. ; - CPM3 function SET TIME (104) is implemented to set the correct ; date and time. Entry DE is address new time. The date and time ; layout is as above. System seconds field is zeroed. Functions ; only if suitable bios function call is installed. ; - BDOS function GETINFO (210) returns system info, on (e) value ; e = 0 Returns pointer to Serial # area (BDOS base) ; e = 1 Returns current setting of DMA ; e = 2 Returns 0, Flushes any pending console input ; e = 3 Returns list device status (ready/not ready) ; e = 4 Returns punch " " " ; e = 5 Returns reader " " " ; e = other Reserved for future. Returns 0. ; (operands 4 and 5 function only if suitable connector addresses ; !€#~§Êþ (öÖ0Úþ Ò‡‡‡‡G:æ°2Ã:‡#Ž€€0=`2`àž($`,,````$.AT. MAR..@(`',#U@,@(`&&``!.```)X:```````````````````````````````` F```````````````````````````````````````````````````` ` end sum -r/size 40540/203 section (from "begin" to "end") sum -r/size 8694/128 entire input file FORMAT COMGUSER UUEåååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååå have been installed at offsets 01ah and 01ch respectively. Else ; these functions return 0, i.e. device not ready) ; - BDOS function TDEC (211) writes de as unsigned decimal to the ; console, with leading zero suppression. ; - Offset 01eh can be set to a trap address after any abort. ; ; Possible DOS+ Incompatibilities with CPM 2.2 ; - The IX and IY registers are used, and restored to user values ; on function exit. Bios calls from DOS+ are protected. DOS+ ; does not use the alternate register set. Interrupt systems ; that modify and do not restore IX & IY will cause failure. ; - SYS (T2) attribute automatically marks files non-writable. ; - The CTL-S pause mechanism always works. Programs that depend ; on 2 char input buffering (DOS buffer and hardware) may fail. ; - Console output chars 0fch and 0fdh are now input on function 6. ; Compatibility mode inhibits this feature. ; - Buffered console input (function 10) treats DEL/RUBOUT as BS, ; and does not implement the ^R repeat line operation. Will not ; end a line when full, refuses chars until entered. Marks ; line end with a 0 byte. Thus max length 1 less than original. ; - Version returned is 2x, where x is DOS+ revision (4 up). Values ; in hex. This allows discrimination against CPM2.2, and avoids ; confusion with CPM3. The compatibility bit forces 2.2 value. ; Note that call #210 with e = 0 will always return a non-zero ; value, so that DOS+ can be detected in compatibility mode. ; - Files written with more than 65536 records will not be legible ; to CPM2.2 systems (but will be to CPM3 systems). ; - Time stamp directory entries may appear as peculiar file names ; on user 33 to some utilities. CPM2 and 3 will not access them. ; - The date/time file stamp format is INCOMPATIBLE with CPM3. ; dates will be garbage data if read there (and vice-versa). ; This is caused by maintenance of 3 (not 2) dates with DOS+ ; NOTE: The following do not agree with CPM2.2, but DO agree with ; Digital Researchs CPM 2.2 documentation ; - Console status call returns 0ffh for ready, rather than 01 ; - SYS files on user area 0 are visible to all users ; ; Added features can be enabled/disabled by the following data: ; - Enable PATH by putting address of PATH in offset 14H. If this ; value is 0 no path is used. Suggested value 046H. ; NOTE power-on cold-boot should clear the PATH string (0 at Path^) ; - Enable DOS+ time and date stamping with a suitable (non-zero) ; data address at offset 16H. Suggested value 040h (5 bytes used). ; - Enable other features with the flag byte at offset 18h: ; MSB 76543210 LSB ; ^^^^^ ^---- 1 = Echo console to list. ^P complements ; ||||| (this locn allows applications to control) ; ||||^------- 1 = compatibility bit. Causes verno call to ; |||| return 2.2. Disables fc/fd operand on DCIO ; |||^-------- 1 = do file access time stamp (timeat <> 0) ; ||| (disable caters to wrt-protected disks) ; ||^--------- 1 = enable break on DCIO (if following bit) ; |^---------- 1 = enable user break, 0 = disable (see 19h) ; | When disabled ^C will not abort either. ; ^----------- 0 = time address is location of time array ; 1 = time address is location of routine ; (when non-0 address in offset 16h only) ; (value x10x1000b for maximum CPM2 compatibility) ; - If user breaks enabled, the char at offset 19h will break. ; - CCP+ can access wheel byte, suggested location 045h. This allows ; path/wheel to be initialized by "lxi h,0ffh; shld 45" in bios. ; ; ------------- ; ; NOTE - All features can be controlled in the file DOS.LIB ; ; Change with assembler. Allows for SLRMAC or M80. The M80 include ; statement must be changed to MACLIB for RMAC, with other changes. ; This allows for the widest range of assemblers, even ASM with manual ; macro expansion by editing. ; ; Following must be upper case for M80. ; SLRMAC can use "maclib z80" and/or dispense with Z80.LIB file INCLUDE Z80.LIB ; ; SLRMAC v1.0 bug fix - mvix/mviy operands interchanged mvix macro disp,value db 0ddh,036h,disp,value endm ; true equ -1 false equ not true empty equ 0e5h; mark for vacant directory entries tmstamp equ 021h; mark for time-stamp directory entries ; ; Following must be upper case for M80. ; Specifies base/path/ramlow/timesystem/debug INCLUDE DOS.LIB ; ; Ascii control char. definitions etx equ 03h; key to generate warm boot enq equ 05h; break line bel equ 07h; bell bs equ 08h; backspace tab equ 09h; tab lf equ 0ah; line feed cr equ 0dh; carriage return dle equ 10h; set/reset print flag dc3 equ 13h; pause console output nak equ 15h; delete line can equ 18h; delete line (backspaces) rubout equ 7fh; delete last char ; ; FCB description. Like CPM3, we reserve bits f7 and f8 for internal ; use. Caller should initialize to off, and never alter them. f.usr equ 0; usage in directory. 5 bits f.drv equ f.usr; alternate use for field in FCB f.name equ 1; 8 char field f.ifc6 equ 6; hi bit, sfattr interface control f.type equ 9; 3 char field f.ro equ f.type; hi bit f.sys equ 10; " f.arc equ 11; " f.exlo equ 12; 5 low bits f.s1 equ 13 f.exhi equ 14; 6 low bits f.clean equ f.exhi; hi bit f.rc equ 15; Records in last FCB extent f.dm equ 16; 16 bytes/8 words f.next equ 32; next recd, FCB only f.rrno equ 33; 3 bytes, FCB only ; ; Flag byte bit definitions fb.tcal equ 80h; Timer is routine, not data area fb.ubrk equ 40h; Implement console break fb.bcio equ 20h; also on DCIO calls fb.tacc equ 10h; Do file access time stamps fb.comp equ 08h; Compatibility bit fb.lflg equ 01h; Echo console output to lister ; ; bit settings via DOS.LIB tcal equ tfunct AND fb.tcal ubrk equ usrbrk AND fb.ubrk bcio equ dciobk AND fb.bcio tacc equ acctim AND fb.tacc ; ; A standard CPM 2.2 Bios arrangement ; This linkage allows debugging using pre-existing bios. ;extrn boot; 0 boot none none extrn wboot; 1 wbootÃP/VCAEWM!6# x±Â!Õ"8!U"2!9"1!$ Ír Í® :]þ/ÊÆ Í„:5·ÊÆ Í5þÚŠO; Ignoring: > ÍÎ xÍâÍÄ Íõ x¹ÚuÍ„ x2y2.0Í}·Â¦ Í!ƒ~þ=Ê·#·Â©ÃÃ:5þÚïÍ#¯Íâ“Íž  :5þÚâ>ÿ2#ÃL; No destination file specified. Ãt¯ÍâKÍžÚt:5þÒ7”::<!L#Ír ÃL>Íâ•ͲÚtþ Ê,*ë*2Í— Ús!€Í— ÚiÃ_`i"|µÂŠ; Out of memory. Ãt:#·ÊG>ÍâpͲÚt:qþ!Úâ>?!qÍ‚ ÊÑ; Wildcards not allowed. Ãt!pÍ:Í Út; File is open. Use ^Z to quit. *2ͧ p*2Í' ÒA; Disk is full. Deleting file. ÍZ ÃtÍ´ ÃtÍ| ¹ > Í{ :2!!U; COPYING: åL Ír !Kp•Íø!KÍ:; to !pÍ::)þÿ´:Væ€Ê´; ArchivedÃ@>PþPÒ¾Íõ !Jo Íž Âò; Can't copy to same drive/user.Ãt!q¹ Íž Â; Duplicate!Ã@!Kp͈Ò(:4·ÂtÃ@:%þʽ*Ñ"Ó; - Verifying pÍ Út*Óë*ÑÍ— Ê¢; failed! :!·Â”; Please check your disk. Ãt=2!ápÍZ ÃT; OK :2!:'þʽ*ÑÍ :/þÿÂá; - Erasing !KåÍ:ÑÍu ÍZ !q¹ Ír :·Ê: ·Ê:yö€2yÃL!q ~æw怶w# :)þÿÂ::Vö€2V:{æ2{KÍf pÍf *6+"6|µáÊtÍõ  Í ÊkÍþ þÂk; User abort :G:OÍ• *ùɯ25!€~·È#~#þ=Ê‘þ Ê‘Ø+ͧ‘ÉÅå:5Íâë<25á~þ!ÚÊþ=ÂÄ#ÃÊ#õë6#:5ÍìëÁÉÅO!8 ÁÉõÍ×~#foñÉÕëÍ×s#rëÑÉÅÕåG:5·Ê=25Ox¹ÊÍ×ë<Í×G~#~xÃáÑÁÉÍâë<Íâ=Íì<ëÍìÉ:5Ox¹ÐÍâ:¾ÊLÃ7xÍ÷#~·Ê7$·Êg¾ÊŠÃY~ÍΠ; - unrecognized option ÃPþM—>ÿ2%Ù/ÃPͲØÍÐ ÐÍ< no file ÍôÒÓÍ< bad drive/user spec in ÍNÒóÍ< invalid characters in ÉÕ:G:O>:Í‚ Ê@å=ÊJ:¾ÚJ~ÖAÚG#Ía Ú1O#Ía Ú1W#yO�‚O~þ:ÂJ#:¹ÚJÑÑyx<¯ÉáÑ7ÉÍÆåÕ~ÍèÂÂ~#þ.ÊŽþ*ʃþ!Ú³ÂV~#þ.Ê“þ!Ú³Ãt>?Â…ÃtÂŽ~ÍèÂÂ~#þ.ÊÂþ*Ê·þ!Ú³•Ñá¯É>?·óÑá7ÉÅÕ > Í{ ÑÍÖÁÉÅÕå! ë¯Í{ áÑÁÉå!ñÍ‚ áÉ,;:='"ÍÆ  #ÕÄ>Í!>.>Í!¯!ÄÑÍNÉõ þ?Â+~æþ Ê2#ñ=Â!ÉF+NÍY##ÍO>.ÍÎ ~#ÍÎ ÂOÉxÆAÍÎ y/þ ÒoÆ0ÍΠÂÖ ÒoÆ OxÍÎ yÆ0ÍÎ >:ÍΠɯ2"2Ñ2ÒëÍw Ò±!Í< can't open sourceëÍ Øëå*DM*2ÍK ÒÍ:"/2"DMáëå*2Í' áÒþÍZ !Í< Disk full. Copy deleted.:"·Ê¶Í´ Ð!Í< can't close destinationÍu å!ãx±ÊI Í‹ ͘ ÚI Õ€Ñã# Ã. áÉÍu å!ãx±Êu Í‹ ͦ Úu :%þÿÌP Õ€Ñã# ÃR áÉÅÕåÍÖÍu ÍÆáÑÁÉÅÕåëÍáÑÁÉÅÕåÍÆÿáÑÁÉÅÕåÍÆÿáÑÁÉÅÕåÍÆáÑÁɯ22 ͨ Ú* Í >ÿ2å! ~æ€~wáÊ >ÿ2 :-þÿÊ ; R/O!ÍÝ ØÍf Ã' :+þÿÊ' :-þÿÊ' ; Exists!ÍÝ ØÍZ ÍF Ð!Í< directory is fullÅÕåÍÖÍu ÍÆáÑÁÉÅÕåÍáÑÁÉÅÕåÍu ÍáÑÁÉÅÕå_ ÍáÑÁÉÍõÿ ÍOñGÉÕåÅXÍÁY ÍáÑÉåÕÍÖ!€Í‹ Íu ÍÑáÆ=ÉÕ‡‡‡‡‡o&€ÑÉͨ ØÕÍÁ #ë*2ë Ír ë"2*6#"6ë!Í— ÑÈÕÍÑ<·È=ÃÔ ÅÕåÍÁ # Ír áÑÁÉ!"ÑÍw Ò< Í< verify file open error!€Í‹ ͦ ÚN ÍP ÃB ¯ÉÅÕå€~Íb #ÂU áÑÁÉÅå*ÑëªO!Ñ ~«W$^ë"ÑáÁÉ!Ñë!yŬg)Ò— >¬g>!­o‹ Áër$s%# Â� É€ͪ þ~Êá þÊe þÊe þ ʆ þÊÖ Íþ ÊÖ ÍB ® x6#=Â× BKÉͪ Íi þ@Úö þ`Òö Ö@ÃÊ þ~ÊÊ Ã± Õ_þ Ò õ>^ÍÎ ñ Æ@ÍÎ yþOÚ# {ÍB Ê@ Ã. þF{Ú@ þ Â@ > ÍÎ ÍB Ê@ > ÍÎ ÑÉw#x·ÂM €Õå*Í— áÑÀ>¸Ø>ÍÎ >¸ÉÍk î y·È+~þ Òy Í¢ Í¢ xþ�ØÉÍ� ÊÖ Ã® > ÍÎ ÍB È> ÍÎ ÃB ;  ÉÅÕåÿÍ·Ê­ æáÑÁÉãÍÄ ãÉ~#·ÈÍÎ ÃÄ ÅÕåõ_ÍñáÑÁÉ; Delete? Íþ Íi þYÈ7Éõ; ñÉÅÕåÍáÑÁÉÅÕå Í·áÑÁÉåõ|Í$ }Í$ ñáÉõÍ- ñæþ Ú6 ÆÆ0ÍÎ Éå; ERROR: áãÍÄ á|µÄÄ Íõ >ÿ247É>9¾Ø~Ö0ÉþaØþ{Ðæ_É~#Âr ÉÂ{ ÉÅåO~#·Ê” ¹Â‡ x·áÁÉ{•_zœWÉ~æOæ¹À#ž É*ýéë*ÕÍ— ÑÒ ë"É; PPIP, Version 1.7 USAGE: PPIP [DU:][ [DU:][]ÍX; PPIP [[DU:]=][DU:]ÍXÃt; [ :ÍΠ; options] É$!Ò; Options (default):; ·Êõ:ÍÎ ñÍÎ þÊ¿; (ON) - ÃÌ; (OFF) - ÍÄ Ã�do CRC Verificationprint the CRC valuecopy only unarchived filesdelete (Erase) R/W files without askingdelete (Wipe) R/W and R/O files without askingmove files - deletes source after copyCON:PPIP v1.7 7 SEP 87 Copyright (C) David Jewett,III - 1986åååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååå " " extrn const; 2 console status " A=0FFH ready ; =0 not ready extrn conin; 3 console input " A=console char extrn conout; 4 console output C=console char option xy posn extrn list; 5 list output C=list char " extrn punch; 6 punch output C=punch char " extrn reader; 7 reader input none A=reader char ;extrn home; 8 home disk " option sysadr. extrn seldsk; 9 select disk C=drv # (0..15) HL=^Disk table extrn settrk; 10 select track BC=track # none extrn setsec; 11 select sector BC=sector # " extrn setdma; 12 set DMA address BC=DMA address " extrn read; 13 read 128 bytes none A = 0 no error ; A <> 0 error extrn write; 14 write 128 bytes; C=0 write data A = 0 no error ; C=1 wrt dir. A <> 0 error ; C=2 wrt unalloc extrn listst; 15 list status none A = 0ffh ready ; A = 0 not ready extrn sectrn; 16 sector translate BC = sect HL = sector # ; DE = ^table ; (from select) ; XX time BC =0 get pointer only HL=pointer to time array ; BC <> 0 allows hard- HL+0^ date LSB days since ; ware to be updated HL+1^ date MSB (1=1978/1/1) ; if a routine call. HL+2^ hour (bcd) ; ignored if timead HL+3^ minute (bcd) ; is purely an address. HL+4^ seconds (bcd) ; BC^ time to set. (no secs) ; CARRY clear, NZ on exit. ; ; Start of BDOS module serial: ds 6,0; Serial number not implemented ; ; Linkage for function calls start: jmp entry; To location 11, for DOSfinders ; ; Error trap vector. Programs can alter error traps here stbdsc: dw badsec; Bad sector stsel: dw selerr; Select error stro: dw rdonly; Drive read only sfilro: dw filro; File read only ; ; Connector so DOSfinder routines work. The jump at location ; bdos+6 must be to bdos+11h. The above error vector must not ; be moved or programs that trap BDOS errors will fail. entry: jmp dos ; ; ------------------------- ; The following area is patchable. DOS.LIB sets initial values ; ; Location of external path for open file command path: dw pathat ; ; Time address. 0 disables all time operations. Array or routine timead: dw timeat; Routine addr. for time/date stamps ; ; Flags for specials flags: db tcal+ubrk+bcio+tacc brkch: db brkchr; char. for user breaks ; " " ; If non-zero, address of bios routines. (a): 0ffh=ready, 0=not ready rdrsta: dw 0; rdr status routine ptr punsta: dw 0; pun status routine ptr ; ; This specifies control transfer after fatal errors or CTL-C exits ; when breaks are enabled. CAUTION: must point to a valid connector. ; Automatically reset to ramlow if used. abtrap: dw ramlow; destination on aborts ; ; ------------------------- ; ; Entry point DOS+ function calls dos: mov a,c; function number sta funct sspd spsave; Save user SP lxi sp,stack; Switch stacks pushiy pushix; Save push d; Save parameter popix; in IX lxi h,flags mov a,m ani fb.ubrk cnz userbk; User break enabled, check it xra a sta drvflg; Reset drive select done flag sta rdwr; and read/write flag mov h,a mov l,a; lxi h,0 shld fvalue; Clear exit value (default) mvi a,maxcmd-1 cmp c jrc dos1; above command table, use last entry mov a,c; else use specified dos1: lxi h,ctable call jinx; execute ; " " ; DOS+ exit routine lda drvflg; test drive select used flag ora a cnz drvfix; restore entry drive if modified popix popiy lspd spsave; restore saved on entry lhld fvalue; Get exit code mov a,l; Copy exit code to ba mov b,h ret ; ; Jump indexed to (hl + 2 * a). Max entry a = 127 ; a,f,h,l jinx: add a; * 2, words add l mov l,a adc h sub l mov h,a; hl := hl+a ; " " ; indirect transfer to hl^ ; a,f,h,l jind: mov a,m inx h mov h,m mov l,a; hl := (hl) xpchl: pchl; implements "call hl" ; ; Function 210, Get info, e specifies details. ; This can perform anything that does not require input parameters. getinf: mov a,e lxi h,inftbl cpi maxinf rnc jr jinx ; inftbl: dw @serial; 0 pointer to serial dos+/serial # area dw rtndma; 1 current dma setting dw cflush; 2 flush console input buffers dw lsta; 3 list device status (ready/not ready) dw psta; 4 punch device status " " dw rsta; 5 reader device status " " maxinf equ ($-inftbl) /2 ; ; Main Command table. Covers the contiguous opcodes. ; DOS+ returns values in HL, with BA a copy. Thus 8 bit values are ; also returned in A. Function 0 ignores the pointer at 1, and can ; be used to force system reloading if bios unaltered. ctable: dw wboot; warm boot dw cin; console input dw coute; console output dw rin; reader input dw pout; punch output dw lout; list output dw dcio; direct console I/O dw giobyt; get I/O byte dw siobyt; set I/O byte dw mesg; print string dw rdbuf; read console buffer dw cstat; get console status dw cmnd12; get CPM version. num dw cmnd13; reset disk system dw cmnd14; select disk dw cmnd15; open file dw cmnd16; close file dw cmnd17; search for first dw cmnd18; search for next dw cmnd19; delete file dw cmnd20; read sequential dw cmnd21; write sequential dw cmnd22; make file dw cmnd23; rename file dw cmnd24; Get login vector dw cmnd25; Get current disk dw cmnd26; Set DMA address dw cmnd27; get address allocation vector dw cmnd28; write protect disk dw cmnd29; Get R/O vector dw cmnd30; Set file attributes dw cmnd31; Get addr. disk parameter header (DPH) dw cmnd32; Get/set user code dw cmnd33; Read random dw cmnd34; Write random dw cmnd35; Compute file size dw cmnd36; Set random recordd dw cmnd37; reset individual drive(s) dw other; last entry, check extensions maxcmd equ (($-ctable)/2); Number of valid DOS commands ; ; Check function in auxiliary table other: lxi h,auxtbl ; " " ; Search table hl^ up for index c. last (default) entry is 0ffh ; execute result. ; a,f,h,l + executed code tblchk: mov a,m; get id byte cmp c inx h; point to operand field jrz jind; found, hl points to exec adr. inr a jrz jind; last entry, use as default inx h inx h; skip operand jr tblchk; go check next ; ; Define table entry format dt macro op,adr db op dw adr endm ; ; Auxiliary table. 1st entry found fastest. 0ffh terminator ; This structure allows for unused opcodes. auxtbl: dt 40, cmnd40; write random w/zero fill dt 104, settim; set time dt 105, gettim; get time dt 210, getinf; return data, e specifies what dt 211, cmd211; write de in decimal, zero suppress dt 0ffh, dummy; end marker, null operation ; ; *********************** ; * * ; * Device I/O routines * ; * * ; *********************** ; ; Read reader. BDOS function 3 rin: call reader jr exit; return rdr char. to caller ; ; Write punch. BDOS function 4 pout: mov c,e jmp punch; Char. to punch device ; ; Write list. BDOS function 5 lout: mov c,e ; " " ; list from console echo mechanism listx: jmp list; Char. to list device ; ; list status lsta: call listst jr exit ; ; reader status rsta: lhld rdrsta jr biosx ; ; punch status psta: lhld punsta ; " " ; Execute routine hl^ if hl non zero, else return 0 biosx: mov a,h ora l cnz xpchl; non-zero, call it jr exit ; ; Read Char. from console and echo if in [cr, lf, tab, bs, >= blank] ; BDOS function 1 cin: call getch; get it call tstch cnc couta; echo cr, lf, tab, bs, >= blank exit: jmp rtnbyt ; ; Get I/O status byte. BDOS function 7 giobyt: lda ramlow+3 jr exit; return it to caller ; ; Set I/O status byte. BDOS function 8 siobyt: mov a,e sta ramlow+3; Save new value in RAM ret ; ; Test console status. BDOS function 11 cstat: call qwait; Get console status, check pause jr exit; and return it ; ; Direct console input/output. BDOS function 6 ; input E : 0ffh - get char or 0 if not ready ; 0feh - get console status ; 0fdh - console input, wait for it (CPM3 usage) ; 0fch - get buffered char, without flushing ; (so still available for console input) ; (DOS+ also sets b=h=column count) ; This now co-operates with the 1 char input buffering, and thus can ; be used intermixed with other console functions. Output here cannot ; be paused with CTL-S. Output via other functions will flush any ; incoming CTL-S. This status call (argument = 0feh) will not pause ; on incoming CTL-S. Note that a nul input can be detected by calling ; status (argument 0feh), and if ready then calling input (arg 0ffh) ; or input-wait (arg 0fdh) or look-ahead (arg 0fch). This allows ; discrimination between no_char ready and nul ready. However, ; console output may not track columns correctly. Compatibility bit ; disables arguments 0fch and 0fdh (become output). ; IF the bios co-operates, console output calls return an indicator ; of the x/y screen position. H describes row, L describes column. dcio: mov c,e; Possible output char. inr e jrz dcio5; 0ffh, do input inr e jrz dcio4; 0feh, get status lda flags ani fb.comp; compatibility bit jrnz dcio3; inhibits extra operations over 2.2 inr e jrz dcio6; 0fdh, console input, wait inr e dcio3: mov a,c lhld lastch; assumes status called before xchg cnz coraw; <> 0fch, output char. xchg jmp rtnwd; h is column value dcio4: call csta; Get console status jr exit; and return it to caller dcio5: call csta; Get console status rz; Exit if no char. available dcio6: call getch; else get char. jr exit; and return it to caller ; ; Call #211, write in decimal to console cmd211: xchg jr tdzs ; ; output (a) in decimal to console, leading zero suppress. Recursive ; a,f,b,c,d,e,h,l tadzs: mov l,a mvi h,0 ; " " ; output (hl) in decimal to console, leading zero suppress. Recursive ; a,f,b,c,d,e,h,l tdzs: lxi b,0100ah; c=divisor=10, b=iter cnt=16 xra a; clear tdzs1: dad h; (hl) := (hl)/10; rdr to (a) ral; shift off into (a) cmp c; test jrc tdzs2; no bit sub c; bit = 1 inx h tdzs2: djnz tdzs1; not done push psw; save output digit mov a,h ora l cnz tdzs; not left digit, recursive pop psw; last unlisted digit adi '0' ; " " ; couta, preserving bcdehl co: push b push d push h call couta pop h pop d pop b ret ; ; cr/lf to console ; a,f,b,c,d,e,h,l crlf: mvi a,cr call cout mvi a,lf jr cout ; ; Blank to console ; a,f,b,c,d,e,h,l blk: mvi a,' ' ; " " ; Console output A, no tab expansion. Preserve A. Check for pause ; However a tab records appropriate column advance here. ; Column confusion results if hi bit is set in char. or if ; cursor movement sequences are used. ; b,c,d,e,h,l cout: push psw; Save non tab call qwait; Check for user pause pop psw; Get char back ; " " ; Raw console output, attempting to track output column, and ; implementing any list echo in effect. Guard against evil bioses. ; If the bios performs, de returns indicating the current x/y posn. ; b,c,d,e,h,l coraw: mov c,a push psw pushix pushiy push b call conout; output it pop b; get char back to ck push h; save bios return (x/y posn) lda flags; Get printer echo flag rrc; test fb.lflg cc listx; bit set, output char to printer pop d; may be x/y posn popiy popix pop psw; restore char. ; " " ; Count chars. in line ; f,h,l countc: cpi rubout rz; non-print, no column update lxi h,column; Pointer inr m; advance cpi ' ' rnc; printing char, exit dcr m; control, cancel column advance cpi bs jrz count3; bs, decrement column cpi cr rnz; Not tab char, ignore for count mvi m,1; will become 0, for cr count3: inr m dcr m rz; don't reduce past zero dcr m; reduce, for bs ret ; ; Backup if column > 0. Called only from delch, thus rdbuf ; a,f,b,c,d,e,h,l (because bios) bakup: lxi h,column mov a,m ora a rz; at lh column, absorb call bakup1; write backspace (in c) call blk; write space bakup1: mvi a,bs jr coraw ; ; Get char. from console, using look ahead buffer. Wait for it ; a,f,b,c,d,e,h,l (because bios) getch: lxi h,bufull mov a,m; flag mvi m,0; Reset buffer full flag inx h; point to lastch at bufull+1 ora a mov a,m; buffer contents (lastch) mvi m,0; and reset it to nul rnz; lastch was valid ; " " ; conin protected against evil bioses ; a,f,b,c,d,e,h,l (because bios) cinx: lxi h,conin ; " " ; Guard against a bios that clobbers ix/iy (e.g. Osborne 1). ; Call (hl)^, saving and restoring ix and iy ; a,f,b,c,d,e,h,l (because bios) xbios: pushix pushiy call xpchl popiy popix ret ; ; Get console status to a and z flag, using look ahead buffer. ; When char. ready lastch buffer is loaded. ; a,f,b,c,d,e,h,l (because bios) csta: lda bufull ora a mvi a,0ffh rnz; buffer is non-empty call cstax; Physical console status ora a rz; nothing read, return 0 call cinx sta lastch; get char and save ori 0ffh; return true sta bufull; mark char in buffer ret ; ; protected const ; a,f,b,c,d,e,h,l (because bios) cstax: lxi h,const jr xbios ; ; Test character ; reset carry : cr, lf, tab, bs, OR >= space ; set carry : all others ; f tstch: cpi cr rz cpi lf rz cpi tab rz cpi bs rz cpi ' '; test >= space ret ; ; Output message. BDOS function 9 ; a,f,d,e mesg: ldax d cpi '$' rz; End of string inx d; point to next char. call co; output jr mesg; more ; ; Delete char. Called only from rdbuf ; Entry : HL = ^ last char in buffer ; B = Char. counter ; Exit : hl decremented, b decremented, z flag on b ; a,f,b,d,e,h,l delch: mov a,b ora a rz; empty, nothing to do push b push h call bakup pop h push h mov a,m cpi ' ' cc bakup; control, wipe out 2 pos'ns pop h pop b dcx h dcr b; Char counter ret ; ; Read buffer IX^. BDOS function 10 ENTRY below rdbuf0: call delch; Delete last char in line jrnz rdbuf0; more to remove ; " " rdbuf: pushix; buffer start addr. << ENTRY here pop h; to HL mov c,m; Max. line length inx h; Adv. to actual line lgh position mvi b,0; Clear line length counter rdbuf1: push h push b rdbuf2: call getch pop b pop h ani 07fh; Mask char cpi enq jrnz rdbuf5; Not CTL-E push h; SAVE push b call crlf; newln; Move cursor to next line jr rdbuf2; and get next char rdbuf4: call delch; Delete char jr rdbuf1; Get next char. rdbuf5: cpi bs jrz rdbuf4; backspace cpi rubout jrz rdbuf4; rubout cpi dle jrnz rdbuf6; not CTL-P (print enable/disable) lda flags; Complement print flag xri fb.lflg sta flags; flip fb.lflg jr rdbuf1; and get next char rdbuf6: cpi nak jrz rdbuf0; CTL-U, delete line cpi can jrz rdbuf0; CTL-X, delete line cpi cr jrz rdbufx; cr, exit cpi lf jrz rdbufx; lf, exit inx h; incr. pointer mov m,a; and save char. inr b; incr. line counter mov a,c cmp b jrnz rdbuf8 dcx h; line end, refuse char dcr b mvi a,bel call co jr rdbuf1 rdbuf8: mov a,m call outch; Echo char. cpi etx mov a,b; Get line count jrnz rdbuf1; Not CTL-C dcr a; If 1st char in line then cz abtchk; abort if breaks enabled jr rdbuf1; else just another char. rdbufx: inx h mvi m,0; mark line end for user stx b,+1; save line counter mvi e,cr; force carriage return ; " " ; Write console. BDOS function 2 coute: mov a,e; Char ; " " ; Write char A to console, expand tabs. Preserves A couta: cpi tab jnz cout; not tab couta1: call blk; expand tab to spaces, 1 or more lda column ani 7 jrnz couta1; Not done, repeat mvi a,tab; return tab ret ; ; Output char (Control char displays ^CHAR) outch: call tstch jnc co; cr,lf,tab,bs or >= space push psw mvi a,'^' call co; write '^' pop psw push psw adi 'A'-1; add offset call co; output it pop psw; restore chanr. ret ; ; ******************************* ; * * ; * ERROR ROUTINES etc. * ; * * ; ******************************* ; ; Check for user pause (CTL-S). Always uses key depression. ; Returns current console status in a and z flag qwait: call cstax; bios ora a jrz qwait1; No key, check buffer xra a sta bufull; flush buffer on physical input qwait1: call csta rz; no input lda lastch; what was it cpi dc3 mvi a,0ffh; to return status=ready rnz; not pause call getch; flush the DC3 call getch; and get the next input cpi etx jrz abtchk; reboot on CTL-C xra a; set status = not ready ret ; ; Check breaks enabled, and abort if so. Else return 0 and z flag ; a,f abtchk: lda flags ani fb.ubrk rz; breaks disabled jr abort ; ; Check for user break. At entry hl points to flags ; a,f,h,l userbk: mov a,m ani fb.bcio jrnz ubk1; enabled for DCIO mov a,c cpi 6 rz; Not for DCIO call ubk1: push b push d call csta pop d pop b rz; no input, no break lda lastch; look ahead lxi h,brkch cmp m rnz ; " " ; Check operator for abort. ; a,f,h,l qabort: push d push b lxi d,brkmsg call mesg call cflush; purge char and input buffer call cin; Get user response push psw call crlf pop psw pop b pop d ani 05fh; upshift any 'y' cpi 'Y' rz; ignore non Y jr abort; abort ; ; Bad sector error badsec: lxi d,mbadsc; bad sector message xra a; not file r/o call error; display, flush input stream retry: lxi d,qretry call mesg call cin ani 05fh cpi 'R' rz; with z flag for "retry" cpi 'A' jrz abort; else abort cpi 'I' jrnz retry ora a ret; with n/z flag for ignore ; ; Select error selerr: lxi d,msel; Select error message jr abterr; go display error & abort ; ; File read only error filro: lxi d,mfilro; File R/O message mvi a,0ffh; Set file R/O message flag ; " " ; Abort error, no option to retry abtro: call error; display error call getch; get operator response ; " " ; Errors and user breaks abort through here. ; Restore input arguments and stack for any debugger. abort: lda funct mov c,a; restore fnct pushix pop d; restore argument lspd spsave; callers stack lhld abtrap; usually 0, reboot push h lxi h,ramlow+0 shld abtrap; reset for next time ret ; ; Drive read only error rdonly: lxi d,mro; Drive R/O messaage ; " " abterr: xra a; not file r/o jr abtro ; qretry: db cr,lf,'A)bort I)gnore R)etry?$' brkmsg: db cr,lf,'Resume (y/N)?$' ; ; Display Error Message ; DOS+ error on D: ERROR MESSAGE ; FUNCTION = NN [FILE = FILENAME.TYP] error: mov c,a; Save file R/O message flag push b push d; Save error message pointer lda defdrv; get current drive adi 'A'; make Ascii sta mdrive; modify message lxi d,mberr; "DOS+ ERROR ON D:" call mesg; display message pop d; Get error message pointer call mesg; display it lxi d,mbfunc; "FUNCTION =" call mesg; display it lda funct; Get function number push psw call tadzs; display number pop psw; restore function number pop b; Get file R/O flag cpi 15; Test FCB used in command jrc cflush; no cpi 24 jrc error1; yes cpi 30 jrz error1; yes cpi 33 jrc cflush; no cpi 37 jrc error1; yes cpi 40 jrnz cflush; no error1: pushix; yes, display "FILE =" sui 19 jrnz error2; Not delete file function ora c jrz error2; not file r/o error call caldir; Get FCB from directory buffer xthl; save it error2: lxi d,mfile; " FILE =" call mesg; Display it pop h; ^FCB mvi b,8; 1st 8 chars. call filenm mvi a,'.' call co; write '.' mvi b,3; last 3 chars call filenm ; " " ; Flush any incoming console chars ; a,f,b,c,d,e,h,l (because bios) cflush: call csta rz; nothing ready call getch; purge it jr cflush ; ; Display hl^ for (b) chars, suppress blanks filenm: inx h; adv pointer mov a,m ani 07fh; remove any attributes cpi ' ' cnz co; write djnz filenm; more ret ; ; ******************************* ; * * ; * DISK FUNCTIONS * ; * * ; ******************************* ; ; Return Version Number cmnd12: lda flags ani fb.comp mvi a,22h jrnz rtnbyt; return 2.2 in compatibility mode mvi a,020h+ver; act like 2.2 compatible, not 3.0 jr rtnbyt; exit ; ; Reset disk system cmnd13: lxi d,ramlow+080h; Set default DMA address call cmnd26; SETDMA, so bios agrees xra a; Default drive 'A' sta defdrv mov l,a mov h,a; lxi h,0 shld login; All drives logged out shld dskro; " " read/write call seldk; Select drive 'A' lda subflg; return submit flag jr rtnbyt; exit ; ; Search for file cmnd17: call seldrv; from FCB ldx a,f.drv sui '?' jrz cmd17b; '?' in drv field, all entries match ldx a,f.exhi; Get system byte cpi '?' jrz cmd17a; is '?' mvix f.exhi,0; Else set it to zero cmd17a: mvi a,14; Test 1st 15 bytes in FCB cmd17b: inr a; allow for the zero from above call search; do the search. (leaves result code) ; " " cpydir: lhld @dirbuf; Copy directory buffer lded dma; To dma addr. lxi b,128; for 128 bytes ldir ret ; ; Seach for next occurence of file cmnd18: lixd dcopy; last FCB used by search call seldrv; from FCB call searcn; Search next file match jr cpydir; and copy directory to DMA addr. ; ; Delete file cmnd19: call seldrv; from FCB call delete ; " " ; Return search result (found/not found) srchcd: lda searex; Get exit byte 00=file found, 0FFH not jr rtnbyt; and exit ; ; Rename file cmnd23: call seldrv; From FCB call renam jr srchcd; and exit with code ; ; Call 212 getinfo, subcall 0. ; Return pointer to serial # area of executing system. ; (offsets from here can access configuration tables) ; In compatibility mode this non-zero value indicates DOS+ @serial: lxi h,serial jr rtnwd ; ; Return login vector cmnd24: lhld login ; " " ; Return word value HL rtnwd: shld fvalue ; " " dummy: ret; label for null operations ; ; Return current drive cmnd25: lda defdrv; Get current drive ; " " ; Return byte value A rtnbyt: sta fvalue ret ; ; Return pointer to ALV vector cmnd27: lhld @alv jr rtnwd; and exit ; ; Return disk R/O vector cmnd29: lhld dskro jr rtnwd; and exit ; ; Change status of file (attributes) cmnd30: call seldrv; from FCB call sfattr; Change status jr srchcd; and exit ; ; Return pointer to drive table cmnd31: lhld @ixp jr rtnwd; and exit ; ; Set/get user code. Return current user code cmnd32: mov a,e; argument inr e jrz cmd32a; get only, arg 0ffh ani 01fh; mask sta user cmd32a: lda user jr rtnbyt ; ; Compute file size cmnd35: call seldrv; from FCB ; " " ; Compute file size filsz: lxi b,0; Reset file size length mov d,c call ldrrc; in FCB+33,34,35 call nowild; initial search, check wild cards rnz; wild card, illegal, error set call tstfct rz; Not found, exit with search result filsz2: call caldir; Get directory entry to hl & iy xchg; copy to de lxi h,f.rc; Offset to next record call calrrc; Calculate random record count mov a,d; Test LSB < (IX+33) subx f.rrno mov a,c; Test ISB < (IX+34) sbcx f.rrno+1 mov a,b; Test MSB < (IX+35) sbcx f.rrno+2 cnc ldrrc; Write new maximum call searcn; next file call tstfct jrnz filsz2; and test it jr rtnbyt; set 0, file found ; ; Set random record count cmnd36: lxi h,f.next; pointer to next record call calrrc; calculate ; " " ; Store bcd (3 bytes) in FCB IX^ random rcd field ldrrc: stx d,f.rrno stx c,f.rrno+1 stx b,f.rrno+2 ret ; ; Calculate random record from f.rc or f.next (on entry hl) ; Entry HL = offset in FCB; DE = FCB pointer ; Exit B,C,D = random record calrrc: dad d; Point to FCB+15 or FCB+32 mov a,m lxi h,f.exlo; Offset to extent number dad d mov d,a; Save record # to use mov a,m; extent byte ani 01fh; Mask it ralr d; Shift MSB in carry aci 0; add carry rar; Shift 1 time (16 bits) rarr d mov c,a; save ISB inx h; exhi, FCB+14 inx h mov a,m; Get exhi rrc; Shift 4 times rrc rrc rrc push psw; Save ani 03h; Mask MSB mov b,a; Save pop psw; Get LSB ani 0f0h; Mask add c; Add with ISB mov c,a; Save ISB rnc; No carry, return inr b; Incr. MSB ret ; ; Reset specified drives. No files should be open cmnd37: mov a,e cma; Complement input vector mov e,a mov a,d cma mov d,a lhld login mov a,e; mask login vector ana l mov l,a mov a,d ana h mov h,a shld login; Save resultant login vector xchg; use result as mask lhld dskro; for drive R/O vector mov a,e ana l mov l,a mov a,d ana h mov h,a shld dskro; Save resultant drive R/O vector ret ; ; ******************************* ; * * ; * Subroutines and functions * ; * * ; ******************************* ; ; Select disk from FCB. Save 0th byte in FCB0 and set to current user. seldrv: mvi a,0ffh; Set disk select done flag sta drvflg lda defdrv sta drive; Save current drive mov e,a; and to (e) ldx a,f.drv; Get drive from FCB sta fcb0; save cpi '?' jrz cmnd14; '?', select drive from (e) ani 01fh; mask drive mov a,e jrz seldr0; 0=default, select drive from (e) ldx a,f.drv; else get drive from FCB dcr a; normalize to 0..maxdrv seldr0: call seldk lda user; set current user in 1st FCB byte stx a,f.usr; (for directory searches) ret ; ; select error occured slkter: lhld stsel; error message address pchl; go display error ; ; restore entry drive. Used only on exit drvfix: lda fcb0; Get FCB byte 0 stx a,f.drv; restore it in FCB lda drive; Get old drive number mov e,a ; " " ; Select disk e cmnd14: mov a,e; drive number ; " " ; select disk a seldk: ani 0fh; mask mov b,a; to b lded login ora a jrz seldk1; Drive 'A' seldk0: rarr d; Rotate login vector rarr e; until bit 0 of (e) djnz seldk0; represents current drive seldk1: lxi h,defdrv bit 0,e jrz seldk2; Not logged in cmp m rz; Already selected, no effort needed seldk2: mov m,a; save new current drive push d; save logged in flag (e) mov c,a; copy drive number lxi h,seldsk; bios select, e bit 0 specifies reset call xbios; bad bios guard mov a,h ora l jrz slkter; Error, illegal drive mov e,m; Get translation vector inx h mov d,m inx h sded @trans; and save shld @filect; save addr. temp0 lxi d,6 dad d; ignore temp1, temp2 lxi d,@dirbuf; point to dirbuf lxi b,8; copy 8 bytes ldir lhld @ixp; Get drive parameter addr. mvi c,15; copy 15 bytes ldir pop d; restore drive logged in flag bit 0,e rnz; drive was logged in, return lhld login call sdrvb; Set drive bit in login vector shld login ; " " ; Init drive. Set up ALV bit buffer for blocks assigned. SUBFLG ; indicates if drive holds any '$*.*' file on user 0. initdr: lded maxblk; Get length ALV buffer-1 (bits) mvi a,3; / 8 initd0: srlr d; to get bytes rarr e dcr a jrnz initd0 inx d; +1, so all bits are cleared lhld @alv; point to ALV buffer push h initd1: mvi m,0; clear 8 bits inx h dcx d mov a,d ora e jrnz initd1; more pop h; restore ALV pointer lded ndir0; Get 1st 2 bytes ALV buffer (directory) mov m,e inx h mov m,d; save lhld @filect; Clear number of files on this drive xra a mov m,a inx h mov m,a sta subflg; Clear submit flag (Reset disk command) call setfct; Set file count initd2: mvi a,0ffh; update directory checksum call rddir; read FCB'S from directory call tstfct rz; last FCB, exit call caldir; Point to entry point FCB, get 0th byte cpi empty jrz initd2; Empty dir entry, get next FCB cpi tmstamp jrz initd2; Time stamp entry, get next FCB ora a jrnz initd3; Not on user 0 inx h; point to filename mov a,m sui '$' jrnz initd3; 1st filename char <> '$' dcr a; i.e. 0ffh sta subflg; to SUBFLG, may be a submit file active initd3: call allocb; Set bits from FCB in ALV buffer call setlf; update last file count jr initd2; and get next FCB ; ; Set drive bit in HL for defdrv ; a,f,d,e,h,l sdrvb: xchg; de := hl lxi h,1 lda defdrv; Get current drive ora a jrz sdrvb1; Drive 'A', hl is set sdrvb0: dad h; left shift bit dcr a jrnz sdrvb0; not positioned yet sdrvb1: mov a,d; hl := hl OR de ora h mov h,a mov a,e ora l mov l,a ret ; ; Calculate and set sector/track for directory entry # filcnt ; a,f,b,c,d,e,h,l stdir: lhld filcnt; Directory FCB counter srlr h; / 4 rarr l; (4 FCB'S / sector) srlr h rarr l shld recdir; Save (used by checksum) xchg; de := hl lxi h,0; hl := 0 ; " " ; Calculate sector/track ; Entry : HL, DE = sector number (128 byte sector) ; Result set track = HL,DE / maxsec ; set sector = HL,DE MOD maxsec ; a,f,b,c,d,e,h,l calst: lbcd maxsec; sectors/track mvi a,17; init loop counter calst1: ora a; divide by maxsec. dsbc b jrnc calst2; hl >= bc dad b; hl < bc, restore hl, set carry calst2: cmc ralr e; shift left result in DE ralr d dcr a jrz calst3; divide done ; *** Undefined macro: DADC *** ; dadc h; shift next bit (left) in hl ; Intended to be ADC HL,HL - put in as code db 0edh, 06ah ; *** End of fix *** jr calst1; continue calst3: push h; Save sector num. lhld nftrk dad d; add 1st track offset mov b,h; to BC for bios mov c,l lxi h,settrk call xbios; bad bios guard pop b; sector number lded @trans; Get translation table addr. lxi h,sectrn call xbios; bad bios guard mov b,h; result to BC mov c,l lxi h,setsec jmp xbios; bad bios guard ; ; Get disk map block number for FCB f.next entry ; Exit: HL = Address of FCB DM entry ; DE = DM entry ; BC = offset in DM ; a,f,b,c,d,e,h,l getdm: ldx c,f.next; c := next record lda nblock; a := number of blocks mov b,a; to b getdm1: srlr c; shift next_record djnz getdm1; number_of_blocks times cma adi 1+8 mov b,a; B := 8-number of blocks lda nextnd; Get extent mask andx f.exlo; mask with extent rrc getdm2: rlc djnz getdm2; 8-number of blocks times add c; Add the 2 values to get entry FCB ; " " ; Get block no. for diskmap entry (a) of FCB ix^ (b=0 on entry) ; a,f,c,d,e,h,l getbk: pushix; FCB addr. pop h mvi c,f.dm; Offset 16 to point to DM dad b mov c,a; add entry FCB dad b lda maxblk+1 ora a; Test 8/16 bits FCB entry mov e,m; Get 8 bit value mov d,a; zero if 8 bits / entry rz; 8 bits per entry only dad b; add twice (16 bit values) mov e,m; load 16 bit value inx h mov d,m dcx h; restore pointer ret ; ; Calculate dirbuf entry point. Set hl and iy pointers ; Return a := directory entry user code (0th byte) ; a,f,h,l,iy caldir: lhld @dirbuf; hl := dirbuf + secpnt lda secpnt add l mov l,a adc h sub l mov h,a push h; Set iy pointer popiy mov a,m ret ; ; Init file count ; h,l setfct: lxi h,-1 shld filcnt ret ; ; Test file count = -1, z flag if so ; a,f,h,l tstfct: lhld filcnt mov a,h ana l inr a; z if -1 ret ; ; Set last file ; a,f,d,e,h,l setlf: call tstlf; Test last file rc; No, exit inx d; incr. last file jr sdem; Save it in filect ; ; Test last file ; a,f,d,e,h,l tstlf: lhld @filect; get pointer to last file lded filcnt; get file counter mov a,e; DE-(HL) sub m inx h mov a,d sbb m ret ; ; Get next FCB from drive ; Entry : A=0 Check checksum, A=0FFH update checksum ; a,f,b,c,d,e,h,l rddir: mov c,a; Save checksum flag lhld filcnt inx h; advance file counter shld filcnt lded nfiles; get max number of files ora a; clear cy dsbc d dad d; leaves dsbc flags, restore hl jrz rddir1; Not last file jrnc setfct; last file, set file count 0FFFFH rddir1: mov a,l; Get file count LSB rrc; *32, around the bend rrc rrc ani 060h; Mask sta secpnt; Save for later use rnz; Not first FCB sector push b; save checksum flag call stdir; calculate sector/track directory call dmadir; Set DMA for directory call rdrcd; Read dir. record from drive call stdma; Set DMA for user pop b; checksum flag ; " " ; Update/Check directory checksum ; Entry : C=0 Check checksum, C=0FFH update checksum ; a,f,b,c,d,e,h,l chkdir: lhld ncheck; number of checked records lded recdir; get current record ora a dsbc d; test current record rz rc; >= ncheck, exit lhld @dirbuf mvi b,128; Set up counter xra a; Clear checksum chkdr0: add m; Add checksum inx h djnz chkdr0; 128 times lhld @csv; pointer to directory checksum dad d; add current record inr c; test checksum flag jrnz chkdr2; 0, setup checksum mov m,a; 0ffh, update checksum chkdr2: cmp m; test checksum rz; ok or setting, exit ; " " ; Set write protect disk command cmnd28: lhld dskro; get disk R/O vector call sdrvb; include drive bit shld dskro lded nfiles; Get max number of files - 1 inx d lhld @filect; point to disk parameter block ; " " and set max number of files ; Store de in hl^ ; h,l sdem: mov m,e inx h mov m,d ret ; ; Read sector from drive ; a,f,b,c,d,e,h,l rdrcd: lxi h,read call xbios; guard against bad bios ora a rz call rwerr jrz rdrcd; retry if error handler returns z ret; ignore if error handler returns nz ; ; Write sector to drive ; a,f,b,c,d,e,h,l wrtrcd: lxi h,write call xbios; guard against bad bios ora a rz; no error call rwerr mvi c,1; retries must put to disk jrz wrtrcd; retry if error handler returns z ret; ignore if error handler returns nz ; ; read/write error handler rwerr: lhld stbdsc; Bad sector message pointer pchl; DOS+ Error on D: disk I/O ; ; Set DMA address command. ; a,f,b,c,d,e,h,l cmnd26: sded dma; Save DMA address call stdma ; " " ; return current dma setting rtndma: lhld dma; echo back setting jmp rtnwd ; ; Set DMA Address for user ; a,f,b,c,d,e,h,l stdma: lbcd dma jr dmaset; do bios call ; ; Set DMA Addr. for directory ; a,f,b,c,d,e,h,l dmadir: lbcd @dirbuf; Get DMA Addr. for directory ; " " ; protected setdma dmaset: lxi h,setdma jmp xbios; guard against bad bios ; ; Get bit from ALV buffer ; Entry : DE = block number ; EXIT : A = bit IN LSB (rotated, other bits meaningful) ; B = bitnumber in A ; HL = pointer in ALV buffer ; a,f,b,c,d,e,h,l getbit: mov a,e; Get bit number ani 7; mod 8 inr a; +1 mov b,a; to b mov c,a; and c srlr d; Get byte number rarr e; DE = DE/8 srlr d rarr e srlr d rarr e lhld @alv; Get start addr. ALV buffer dad d; + byte number mov a,m; Get 8 bits getbt0: rlc; select correct bit djnz getbt0 mov b,c; restore bit number ret ; ; Set/reset bit in ALV buffer ; ENTRY : DE = block number ; C = 0 reset bit, C=1 set bit ; a,f,b,c,d,e,h,l setbit: push b call getbit; Get bit ani 0feh; mask it (reset bit) pop d; Get set/reset bit ora e; set/reset bit ; " " ; position bit and save ; a,f,b bitset: rrc; rotate bit to correct position djnz bitset mov m,a; save 8 bits ret ; ; Mark allocated blocks from FCB in dirbuf allocb: mvi c,1 ; " " ; Fill bit buffer from FCB in dirbuf ; Entry : C = 0 reset bit, C=1 set bit fillbb: call caldir; Get directory entry lxi d,f.dm; offset to DM block dad d mov b,e; Get block counter fillb0: mov e,m; Get block number, 8 bits extened inx h; advance lda maxblk+1 ora a mov d,a; 0 if < 256 blocks present jrz fillb1; < 256 blocks present dcr b; Decr. block counter, 256 or more mov d,m; Get correct MSB inx h; advance fillb1: mov a,d ora e jrz fillb2; block number = 0, Get next block push h; Save pointer push b; counter and set/reset bit lhld maxblk; get max length ALV buffer ora a dsbc d cnc setbit; de <= max length, insert bit pop b; counter and set/reset bit pop h; pointer fillb2: djnz fillb0; repeat over all DM entries ret ; ; Check file R/O, get DIR entry to hl & iy chkfro: call caldir; Get DIR entry to hl & iy ; " " ; Check file iy^ for r/o ; f ckfyro: bity 7,f.sys jrnz fronly; $SYS file, error ; " " ; For erase, allows SYS files to be erased rochk: bity 7,f.ro rz; not $R/O file, ok ; " " ; File read/only error fronly: lhld sfilro; Pointer to FILE R/O error handler pchl; Error trap ; ; Check drive read only chkro: lhld dskro; Drive R/O vector call sdrvb; Set drive bit dsbc d; test extra bit added rnz; Yes, then drive not R/O lhld stro; Pointer to DRIVE R/O error handler pchl; error trap ; ; Get free block from ALV buffer ; Entry : DE = old block number ; Exit : DE = new block number (0 if no free block) ; HL counts up, DE counts down getfre: mov h,d; hl := old block mov l,e getfr0: mov a,d ora e jrz getfr1; down counter = 0 dcx d; decrement push h; Save up/down counters push d call getbit; from ALV buffer rar jrnc getfr3; 0, found empty block pop d; Get up/down counters pop h getfr1: lbcd maxblk; get max ALV length-1 to BC ora a dsbc b; Test HL >= length ALV -1 dad b; restore HL (Flags not changed) jrnc getfr2; End Buffer inx h; Incr up counter push d; Save counters push h xchg; Up counter to DE call getbit; from ALV buffer rar jrnc getfr3; 0, found empty block pop h; Get counters pop d jr getfr0; and test next block getfr2: mov a,d ora e jrnz getfr0; not last block, test next block ret; Exit (DE=0) getfr3: stc ral; Sst block number used call bitset; put bit in ALV buffer pop d; Get correct counter pop h; restore stack pointer ret; Exit (DE=block number) ; ; Search for file name, for read/directory operations srchrd: mvi a,15; bytes to match ; " " ; Search for file name ; Entry : A : number of bytes to match search: sta searnb; Save number of bytes mvi a,0ffh; Set exit code 0FFH (not found) sta searex sixd dcopy; copy FCB pointer to RAM (search next) call setfct; init. file counter ; " " ; Search next file name searcn: xra a; check checksum directory call rddir; Get FCB from directory call tstfct jrz nofile; past last entry lded dcopy; Get FCB pointer ldax d; user byte cpi empty jrz searc1; empty directory entry push d; FCB pointer call tstlf pop d jrnc nofile; last file on this drive searc1: call caldir; hl := iy := dir entry, a := 0th byte cpi tmstamp jrz searcn; time stamp, get next directory entry xra a sta wildcd; no wild card detected yet mov c,a; i.e. a zero lda searnb; get number of bytes to match (to b) mov b,a; save input (a) for search length ; " " ; If dir entry (hl=iy)^ has the sys attribute set, and is stored under ; user 0, ignore the user number during the directory search by ; advancing the indices appropriately. At entry a contains the length ; of the directory entry to be matched, and de points to the input FCB ; (i.e. the searchee name). IY^ is the candidate dir entry. sui 15; differentiate from erase searches jrc searc4; not looking for name, orig. algorithm bity 7,f.sys; test system bit jrz searc4; not (sys) file, original algorithm mov a,m ora a jrnz searc4; not on user 0, original algorithm searc2: sta wildcd; set/reset wild card found flag searc3: inx d inx h; skip over the user id inr c djnz searc4; if more bytes to match ; " " ; All bytes matched. call setlf; update last file count (empty FCB) lda filcnt; Get file counter ani 3; mask it sta fvalue; and set exit code xra a; clear exit code search sta searex ret ; ; Check for match. searc4: ldax d; Get byte from FCB sui '?' cma; If zero then a holds 0ffh jrz searc2; set wild card found, matches any mov a,c; FCB char posn sui f.s1 jrz searc3; s1 scratch, then no test inr a; cpi f.exlo; test if extent number ldax d jrz searc7; Special case if extent number xra m; compare to directory entry ani 07fh; on mask searc6: jrnz searcn; not equal on mask, get next entry jr searc3; test next byte ; ; Special handling for extent number searc7: push b; save counters xra m; test extents mov b,a lda nextnd cma; complement extent mask ani 01fh ana b; mask extents pop b; restore counters jr searc6; and test result ; nofile: call setfct; error set file counter ; " " rtnerr: mvi a,0ffh; and set return value jmp rtnbyt ; ; delete file delete: call chkro; check disk R/O mvi a,12; count of bytes to match call search; for file del0: call tstfct rz; not found, exit call caldir; get entry point directory to iy, hl call rochk; allow $SYS files to be erased. mvi m,empty; remove file mvi c,0; remove bits ALV buffer (recycle space) call fillbb call wrtdir; write dir buffer to disk call searcn; search next entry jr del0; and test it ; ; Rename file renam: call schbgn; Check disk R/O, no wild cards, etc. rnz; wild cards renam0: call tstfct; iy points to dir entry rz; Not found, exit call chkfro; Check file R/O, set iy^ dir entry lxi b,12*256+16; Copy FCB+16 to Directory+0 12 times call wrfcb; and write dir to disk call searcn; search next file jr renam0; and test it ; ; Change status file sfattr: call schbgn; Check disk R/O, no wild cards etc. rnz; wild cards sfatr1: call tstfct; iy points to dir entry rz; Not found, exit bitx 7,f.ifc6 jrz sfatr2; No byte count update requested ldx a,f.next sty a,f.s1; set byte count sfatr2: lxi b,12*256+0; Copy FCB+0 to directory+0 12 times call wrfcb; and write dir to disk call searcn; search next file jr sfatr1; and test it ; ; Set up for search on name field. From sfattr and renam ; Error if wild cards specified (nz flag) or r/o disk (abort) schbgn: call chkro; Check disk R/O ; " " ; Initial search on name field. ; nz for wild cards specified when exit errors set nowild: mvi a,12; Count of bytes to match call search; file. iy points to dir entry lda wildcd ora a rz; No wild cards found, ok sta searex; attrib & rename return this jr rtnerr; a is 0ffh ; ; Open file command cmnd15: call seldrv; from FCB mvix f.exhi,0; clear hi extent call findf; find file (using PATH name) call tstfct rz; Not found, exit call fopen ldx a,f.next inr a rnz; Not 0ffh on entry ldx a,f.s1 stx a,f.next; else return byte count ret ; ; Open file/extent, directory entry loaded fopen: ldx a,f.exlo; Get extent number from FCB push psw call caldir; Get dir entry, hl & iy pushix pop d; FCB entry to de lxi b,32; Number of bytes to move ldir; Move directory to FCB setx 7,f.clean; Set FCB/FILE not modified ldx b,f.exlo; Get extent number ldx c,f.rc; Get next record number pop psw; old extent number stx a,f.exlo; Save it cmp b jrz fopen1; old and new extent numbers same mvi c,0; Set next record count 0 jrnc fopen1; old extent >= new extent mvi c,80h; Set next record count to maximum fopen1: stx c,f.rc; Save next record count lda flags ani fb.tacc rz; access stamping disabled bitx 7,f.ro mvi e,8 cz stime; not r/o, set access time stamp rc; timer system disabled rnz; No time stamps, this disk jr wrtdir; else time stamp updated ; ; write FCB to disk directory entry ; c is offset into FCB to copy from, b is byte count to copy wrfcb: call caldir; Get dir entry to iy, hl, a := usr code xchg; in DE pushix; Save FCB entry pop h; to hl push b mvi b,0 dad b; add offset into FCB pop b mov c,b; Get number of bytes to move mvi b,0; 0 extend ldir; Move resy 7,f.ifc6; Reset any interface bit sty a,f.usr; Restore user code ; " " ; Write directory entry to drive wrtdir: call stdir; Calculate sector/track directory mvi c,0ffh; Update dir checksum call chkdir call dmadir; Set DMA for directory mvi c,1; Write directory flag call wrtrcd; write jmp stdma; Set DMA for user & exit ; ; Close file command cmnd16: call seldrv; from FCB ; " " ; close file close: bitx 7,f.clean rnz; FCB/FILE not modified, no close req'd call chkro; test disk R/O call srchrd; file, match 15 bytes call tstfct rz; file not present, exit call chkfro; Check file R/O, get directory entry resy 7,f.arc; and reset any archive bit lxi b,f.dm; Offset to DM block dad b xchg; to de pushix pop h; FCB pointer to HL dad b; Add offset lda maxblk+1 ora a jrz close0; number of blocks < 256 dcr b; Set flag close0: call copydm; Copy and test blocks xchg; exchange copy direction call copydm; Copy and test blocks xchg; Exchange copy direction jnz rtnerr; Block not the same, error inx h; incr FCB pointer inx d; incr DIR pointer bit 0,b jrz close1; number of blocks < 256 inx h; incr FCB pointer inx d; incr DIR pointer dcr c; decr counter close1: dcr c; decr counter jrnz close0; not ready lxi h,f.exlo-f.next; Add -20, point to extent no. dad d ldx a,f.exlo; Get extent number FCB cmp m; Compare with extent number DIR jrc close3; FCB < DIRECTORY THEN JUMP mov m,a; Save extent number in directory inx h; Get pointer record count inx h inx h ldx a,f.rc; Get FCB record count in case mov m,a; entry lgh changed (+ normal, - submit) close3: call updatm; set last update time jr wrtdir; Write FCB on disk ; ; Copy and test disk map ; Entry : HL : pointer to 1st FCB ; DE : pointer to 2nd FCB ; B : 000H < 256 blocks ; 0FFH >= 256 blocks ; Exit : ZERO : 1 Blocks are the same ; 0 Blocks are not the same copydm: mov a,m; Get byte 1st FCB bit 0,b jrz copyd0; number of blocks < 256 inx h; adv. pointer ora m; test byte = 0 dcx h; restore pointer copyd0: ora a; Test block number is zero jrnz copyd1; no, compare blocks ldax d; Copy block from other FCB mov m,a; in empty location bit 0,b rz; number of blocks < 256, exit inx h; incr to MSB block numbers inx d ldax d; Copy block from other FCB mov m,a; in empty location jr copyd2; JUMP TRICK TO SAVE SPACE copyd1: ldax d; Get block number 1st FCB sub m rnz; not the same ora b rz; < 256 blocks, return inx h; incr to MSB block numbers inx d copyd2: ldax d; Get block number 1st FCB sub m; test if the same dcx h; Decr. block FCB pointers dcx d ret ; ; Find file, using path. Only default and current user entries apply findf: call srchrd; for read file. Match 15 bytes call tstfct rnz; found, exit lda fcb0 ora a rnz; drive specified, ignore path lhld path; get PATH address mov a,h ora l rz; 0, no path, exit findf2: lda drive mov b,a; keep handy. 0..maxdrv mov a,m; Get 1st entry PATH name inx h; adv. pointer ora a inx h jz nofile; last entry, not found exit cpi '$' jrz findf2; current drive already searched dcr a; put in 0..maxdrv range ani 0fh cmp b jrz findf2; current drive already searched dcx h push h; Different drive, so.. call seldk; Select drive pop h; PATH pointer lda user; keep handy mov b,a mov a,m; Get user number inx h; adv. pointer cpi '$' jrz findf5; current user, ok, search xra b ani 01fh; Mask user no. area only jrnz findf2; Path entry not for this user, skip findf5: push h; path pointer call srchrd; file, match 15 bytes call tstfct pop h; path pointer jrz findf2; file not present, test next path entry call caldir; Get directory entry lda defdrv; Get now current drive inr a; in range 1.. sta fcb0; save it in exit FCB0 ret ; ; Make file command cmnd22: call seldrv; from FCB mvix f.exhi,0; Clear high extent # call fdirty; ensure archive bit reset ; " " ; Make file make: call chkro; Check drive r/o ldx a,f.usr push psw; Save user id for file mvix f.usr,empty; Set 1st byte to empty file mvi a,1; Search for 1 byte call search; for empty DIR space. Sets result code pop psw stx a,f.usr; Restore user id for file call tstfct rz; No empty entry found, return error xra a; clear last record byte count stx a,f.s1 pushix pop h; copy FCB pointer to HL lxi d,f.rc; Prepare offset dad d mvi b,17; Set loop counter make0: mov m,a; Clear rc and dm area inx h djnz make0 call caldir; Get directory entry ldx a,f.usr; Get first byte FCB & save in mov m,a; directory (write FCB needs this) mvi e,2; Set creation date call stime call updatm; Set last update date/time mvi e,8; Set last access date/time call stime lxi b,32*256+0; Copy FCB+0 to directory+0 32 times call wrfcb; write FCB to disk setx 7,f.clean; Mark FCB/FILE not modified ret ; ; Open next extent openex: bitx 7,f.clean jrnz openx5; FCB/FILE not modified (write) call close; Current FCB. Reads/loads dir entry. lda fvalue; exit code from close inr a rz; error, exit call calnex; Calculate next extent jrc openx3; error jrnz openx6; FCB present from close (wrt, dir read) openx1: call srchrd; for file, match 15 bytes call tstfct jrnz openx6; file found lda rdwr ora a jrz openx3; read flag, error (no extent) call make; new extent (is write) call tstfct jrnz openx7; successful, exit openx3: setx 7,f.clean; Set FCB/FILE not modified jmp nofile; Set exit code for error openx5: call calnex; Calculate next extent jrc openx3; error jr openx1; use same routine ; openx6: call fopen; open file openx7: xra a; and clear exit code ; " " bytrtn: jmp rtnbyt ; ; Calculate next extent ; exit: carry => overflow detectedd ; zflag => search next extent ; nzflag => next extent present in FCB (close) ; (A single directory/FCB entry can hold multiple extents) calnex: ldx c,f.exlo; Get extent number ldx b,f.exhi; Get high portion bit 6,b; Test error bit random record stc rnz; Non-zero, error exit, cy set inr c; Incr. extent number mov a,c ani 01fh; mask extent number mov c,a; to b jrnz calnx1; non-zero extent inr b; Incr. high order extent mov a,b ani 03fh; mask it (c is zero) mov b,a; Save it in c stc rz; file overflow, error flag (cy) set ; " " since c is 0 following returns z flag ; " " for "not same dir entry" calnx1: lda nextnd; Get next extent mask ana c; Test if same dir entry (close) ; " " ; Set FCB extent bytes from bc (high/low). Preserve flags. ; Return bc = old values xchext: ldx a,f.exlo stx c,f.exlo; Save extent number mov c,a ldx a,f.exhi stx b,f.exhi; and high portion mov b,a ret ; ; Read random record command cmnd33: call seldrv; from FCB xra a; set read/write flag call ldfcb; Load random record in FCB rnz; Return error jr reads; no error, go read sector ; ; Read sequential cmnd20: call seldrv; from FCB ; " " ; Read sector reads: xra a; set read/write flag sta rdwr; save it ldx a,f.next; Get record counter cpi 080h jrnz reads1; Not last rcd of this extent call openex; Open next extent lda fvalue; get exit code ora a jrnz eofull; end of file stx a,f.next; Clear record counter jr reads2 reads1: cmpx f.rc; illegal rcd ctr fields cause eof jrnc eofull; signal EOF reads2: call getdm; Get block number from DM in FCB mov a,d ora e jrz eofull; block number = 0, end file call calsec; Calculate sector number (128 bytes) call calst; Calculate sector/track number call rdrcd; Read data lda funct; Get function number cpi 20 rnz; Not read sequential, return inrx f.next; incr. next record counter ret ; ; Signal eof or full eofull: mvi a,1; Set EOF flag jr bytrtn; and return to caller ; ; Calculate sector number from start of data area in HLDE ; Entry : DE = block number from FCB ; a,f,b,d,e,h,l calsec: lxi h,0; clear MSB sector number lda nblock; get loop counter mov b,a; to b calsc1: slar e; shift L,D,E ralr d ralr l djnz calsc1; B times lda nmask; Get sector mask andx f.next; and with next record ora e; Set up LSB sector number mov e,a ret ; ; Write random sector (with zero fill command 40 done in "writes") cmnd34: cmnd40: call seldrv; from FCB mvi a,0ffh; Set read/write flag call ldfcb; Load FCB from random record rnz; return error jr writes; no error, write record ; ; Mark file modified fdirty: resx 7,f.clean; reset FCB/FILE modified ret ; ; Write sequential cmnd21: call seldrv; from FCB ; " " ; Write sector writes: mvi a,0ffh; Set read/write flag sta rdwr; and save it call chkro; Check disk R/O pushix popiy; FCB pointer to iy call ckfyro; Check file iy^ R/O ldx a,f.next; Get record count cpi 080h jrc writs0; not end of this extent call openex; open next extent lda fvalue; error code ora a jrnz eofull; error, directory full stx a,f.next; Clear record counter writs0: call getdm; Get block number from FCB mov a,d ora e jrnz writs5; Not 0, write sector push h; save pointer to block number mov a,c ora a jrz writs1; 1st block number in extent dcr a; Decr pointer to block number call getbk; Get prev. blocknumber writs1: call getfre; Get nearest free block pop h; Get pointer to block number mov a,d ora e mvi a,2 jz rtnbyt; blocknumber = 0, disk full error call fdirty; reset FCB/FILE modified mov m,e; Save blocknumber lda maxblk+1 ora a jrz writs2; blocksize < 256 inx h; adv. to MSB blocknumber mov m,d; Save MSB blocknumber writs2: mvi c,2; Set write new block flag lda funct; Get function number sui 40 jrnz writs6; Not writeranrcd with zero fill push d; save blocknumber lhld @dirbuf; use directory buffer for zero fill mvi b,128; bytes to clear writs3: mov m,a; Clear directory buffer inx h djnz writs3; more call calsec; Calculate sector number (128 bytes) lda nmask; Get sector mask mov b,a; to b inr b; Increment to get number of writes cma; Complement sector mask ana e; Mask sector number mov e,a; and save it mvi c,2; Set write new block flag writs4: push h; Save registers push d push b call calst; Calculate sector/track call dmadir; Set DMA directory buffer pop b; Get write new block flag push b; Save it again call wrtrcd; Write record to disk pop b; Restore registers pop d pop h mvi c,0; Clear write new block flag inr e; Incr. sector number djnz writs4; Write all blocks call stdma; Set user DMA address pop d; Get block number writs5: mvi c,0; Clear write new block flag writs6: call fdirty; Reset FCB/FILE unmodified flag push b call calsec; Calculate sector number (128 bytes) call calst; Calculate sector/track pop b; write new block flag call wrtrcd; Write record to disk ldx a,f.next; Get record counter cmpx f.rc; next record jrc writs7; record counter < next record inr a; incr. record count stx a,f.rc; Save on next record position writs7: lda funct; Get function number cpi 21 rnz; not write sequential, return inrx f.next; incr. record count ret ; ; Load FCB for random read/write. NZ flag for error. ; Entry a=0 for read, 0ffh for write ldfcb: sta rdwr; save read/write flag ldx a,f.rrno; Get 1st byte random record mov d,a; to d res 7,d; Rest MSB to get next record ral; Shift MSB to carry ldx a,f.rrno+1; Load next byte ral; Shift carry push psw; Save ani 01fh; Mask next extent mov c,a; Save it in C pop psw; Get byte ral; Shift 4 times ral ral ral ani 0fh; Mask mov b,a; Save FCB+14 ldx a,f.rrno+2; Get next byte random record mvi e,6; Set random record too large flag cpi 4 jrnc ldfcb7; error, random record too large rlc; address extent (actually div 16) rlc rlc rlc add b; add byte mov b,a; Save FCB+14 in B stx d,f.next; Set next record count ldx d,f.exhi; Get FCB+14 bit 6,d jrnz ldfcb7; error, earlier random record write mov a,c; Get new extent number cmpx f.exlo; Compare with FCB jrnz ldfcb1; not equal, open next extent mov a,b; Get new FCB+14 xorx f.exhi; Compare with FCB+14 ani 03fh; Mask it jrz ldfcb5; FCB at appropriate extent, return ldfcb1: bit 7,d jrnz ldfcb2; FCB not modified (not written) push d push b call close; extent pop b pop d mvi e,3; Set close error in case lda fvalue; Get exit code inr a jrz ldfcb6; close error, exit ldfcb2: call xchext; Save new extent # (bc=high/low) push b call srchrd; search file, match 15 bytes pop b; previous value for extent fields lda fvalue; Get error code inr a jrnz ldfcb4; No error, exit lda rdwr; Get read/write flag inr a jrz ldfcb3; write, go make it call xchext; read, restore the extent bytes mvi a,4; Error, reading empty record jr ldfcb9; and exit ldfcb3: call make; make new FCB mvi e,5; make error code lda fvalue; error ? inr a jrz ldfcb6; make error exit jr ldfcb5; No error exit (zero set) ldfcb4: call fopen; open file ldfcb5: xra a; Set Z flag and clear error code jr ldfcb9 ; ldfcb6: mvix f.exhi,0c0h; Set random record error ldfcb7: setx 7,f.clean; Set FCB/FILE not modified mov a,e; error code ldfcb9: sta fvalue; save error code ora a; Clear/set zero flag ret ; ; Set update time updatm: mvi e,4 ; " " ; Set time and date ; Entry : E = 2 : Set creation date ; 4 : Set last update time/date ; 8 : Set last access time/date ; Exit : cy for timer disabled ; nz for no time stamp on drive ; z and nc for directory updated stime: lhld @dirbuf; Get directory entry lxi b,060h; offset entry point time/date stamp dad b; Add offset mov a,m; Get byte sui tmstamp rnz; No time stamp present, return mov d,a; 0, clear D dad d; Add entry (create/update/access) push d; save field id lda secpnt; Get sector pointer (0, 32, 64 rrc; Divide / 4 rrc mov e,a; 0, 8, 16 rrc; divide 4 = 0, 2, 4 rrc add e; Add it (A=0,10,20) mov e,a; Save in e dad d; point to appropriate field push h call getbtm; point to system time array pop d; field pointer pop b; restore field id rc; timer system disabled mov a,c cpi 2; no carry for valid field id jrz mvdate; 2 byte field for creation ; " " ; Move 4 byte time array hl^ to de^, avoid interrupts ; b,c,d,e,h,l mvtime: lxi b,4 ; " " ; entry for 2/4 byte fields, bc = length on entry ; b,c,d,e,h,l mvdate: di ldir; store it ei xra a; z/nc for good exits ret ; ; Get time gettim: push d; Save address to put time call getbtm; get system time adr. pop d; Restore address to put time mvi a,0ffh; If disabled return error jrc getim2 lxi b,4 call mvdate; if timer enabled mov a,m; seconds field getim2: jmp rtnbyt ; ; Set time settim: push d; keep source time ptr push d pop b; if hardware must be accessed to set call btime; get system ptr pop d rc; timer system disabled rnz; Bios did it all xchg call mvtime; sets a := 0 stax d; set seconds field 0 ret ; ; Specification for any bios timer routine. Leaves carry clear, NZ flg ; Input Output (always) ; BC = 0 get pointer HL=pointer to time array ; BC <> 0 allows hard- HL+0^ date LSB days since 1977 Dec. 31 ; ware to be updated HL+1^ date MSB (1=1978/1/1) (0=nodate) ; if a routine call. HL+2^ hour (bcd) ; ignored if timead HL+3^ minute (bcd) ; is purely an address. HL+4^ seconds (bcd) ; BC^ is time to set. ; Carry and Z flags reset. ; ; Get time from bios system getbtm: lxi b,0; so hardware not updated ; " " ; Execute BIOS time routine. ; bc = 0 to get time, <> 0 to set hardware, when bc points to time ; to set. This is used only when hardware ports accessed. ; flags 80h bit = 0 for timead = address of array ; = 1 for timead = pointer to routine ; net result is to return hl pointer to array ; i.e. at exit hl always points to the system array ; The routine call allows for interrogation of hardware ports. ; The bios routine may leave interrupts disabled, they will be ; re-enabled when the time value has been copied. ; carry set on exit means timer disabled. ; Z flag set on exit if timead is a pointer only btime: lhld timead; Get address time routine mov a,h ora l; check disabled stc rz; disabled, do nothing lda flags ani fb.tcal rz; timead is address of array only pchl; is address of routine, execute ; ; Error messages mbadsc: db 'Disk I/O$' msel: db 'No drive$' mfilro: db 'File ' mro: db 'R/O$' ; mbfunc: db cr,lf,'Fn: $' mfile: db ' File: $' ; mberr: db cr,lf,'DOS+ error '; Last area checksummable mdrive: db 0,': $'; modified ; ; RAM AREA. Note mdrive above is a variable ; dma: dw 080h; DMA address dskro: dw 0; Disk R/O vector login: dw 0; Login vector ; ; Console i/o variables. Keep these 3 in this order (wired into code) bufull: db 0; Lastch contains unused char. lastch: db 0; Last console input char. column: db 0; Current console output column ; ; Copied in from Bios tables on drive selection @trans: dw 0; ^Translation vector, 0 for none @filect: dw 0; ^Number of files on drive ds 4; temp1, temp2 not used @dirbuf: dw 0; ^directory buffer @ixp: dw 0; ^Disk parameter block @csv: dw 0; ^Check sum vector @alv: dw 0; ^Allocation vector ; ; Copied in from Disk Parameter table on drive selection maxsec: dw 0; Maximum number of sectors/track nblock: db 0; Number of blocks nmask: db 0; Mask number of blocks nextnd: db 0; Extent mask maxblk: dw 0; Maximum block number -1 nfiles: dw 0; Maximum number of files - 1 ndir0: db 0,0; First two entries ALV buffer ncheck: dw 0; Number of checksum entries nftrk: dw 0; First track number ; funct: db 0; Function number fvalue: dw 0; Exit code drvflg: db 0; Drive select used flag fcb0: db 0; FCB byte 0 (save for exit) ; rdwr: db 0; Read/write flag wildcd: db 0; Search question mark used ; user: db 0; User number drive: db 0; Drive number defdrv: db 0; Default drive number subflg: db 0; Submit flag (Reset disk command) ; recdir: dw 0; Record directory (checksum) filcnt: dw 0; File counter secpnt: db 0; Sector pointer ; dcopy: dw 0; Copy address FCB searex: db 0; Exit code for search searnb: db 0; Search number of bytes ; ; 64 minimum byte stack area. Copyright re-used for stack. stktop: db 'Copyright (c) 1986 C.B. Falconer (203) 281-1438' ds 64-($-stktop) ; ; Macro for storage allocation messages only, SLRMAC specific px macro v, xmsg ; *** FIX: PRINTX requires delimiters around its string *** .printx * v&xmsg * endm ; left equ serial+0dfeh-$ if left ge 8000h; negative +++ ERROR DOS+ too big +++ px %(-left), < too many bytes used> else px %left, < bytes still available> if left gt 0 ds left; space that's left endif ; Put stack at end of segment. Error trappers expect spsave there. stack: spsave: dw 0; Entry stack pointer save at end endif ; end iters around its string *** .printx * v&xmsg * endm ; left equ serial+0dfeh-$ if left ge 8000h; negative +++ ERROR DOS+ too big +++ px %(-left), < too many bytes used> else px %left, < bytes still available> if left gt 0 ds left; space that's left endif ; Put stack at end of segment. Error trappers expect spsave there. stack: spsave: dw 0; Eåååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååå page 90 title BIOS Hooks ;=======================================================================; ; ; ; D-X Designs Pty. Ltd. Perth, Western Australia ; ; Project: 112 May, 1996 ; ; ; ; Copyright (C) 1996 David R. Brooks ; ; ; ; This program is free software; you can redistribute it and/or ; ; modify it under the terms of the GNU General Public License ; ; as published by the Free Software Foundation; either version 2 ; ; of the License, or (at your option) any later version. ; ; ; ; This program is distributed in the hope that it will be useful, ; ; but WITHOUT ANY WARRANTY; without even the implied warranty of ; ; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ; ; GNU General Public License for more details. ; ; ; ; You should have received a copy of the GNU General Public License ; ; along with this program; if not, write to the Free Software ; ; Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. ; ; ; ;=======================================================================; global BOOT, WBOOT, CONST, CONIN, CONOUT, LIST, PUNCH global READER, HOME, SELDSK, SETTRK, SETSEC, SETDMA, READ global WRITE, LISTST, SECTRN dseg ;Make it DSEG, then exclude from output file BOOT: ds 3 ;Each is length of a JP WBOOT: ds 3 CONST: ds 3 CONIN: ds 3 CONOUT: ds 3 LIST: ds 3 PUNCH: ds 3 READER: ds 3 HOME: ds 3 SELDSK: ds 3 SETTRK: ds 3 SETSEC: ds 3 SETDMA: ds 3 READ: ds 3 WRITE: ds 3 LISTST: ds 3 SECTRN: ds 3 end  global BOOT, WBOOT, CONST, CONIN, CONOUT, LIST, PUNCH global READER, HOME, SELDSK, SETTRK, SETSEC, SETDMA, READ global WRITE, LISTST, SECTRN dseg ;Make it DSEG, then exclude from output file BOOT: ds 3 ;Each is length of a JP WBOOT: ds 3 CONST: ds 3 CONIN: ds 3 CONOUT: ds 3 LIST: ds 3 PUNCH: ds 3 READER: ds 3 HOME: ds 3 SELDSK: ds 3 SETTRK: ds 3 SETSEC: ds .comment $ R O M - M O N I T O R E X T E R N A L H O O K S Definitions of code-hooks for external entry to the ROM. These are intended for use by OS boot-sectors, etc. They MUST NOT be used by BIOS and similar code, since the ROM will be disabled. The symbolic names are those used in the ROM code for these routines. $ diskop equ 8 ;JP to diskette handler dpb3 equ diskop+3 ;Ptr. to 3" D.P.B. dpb5 equ dpb3+2 ;Ptr. to 5" D.P.B. getchr equ 10h ;Read console to A (or 0) putchr equ 18h ;Output A on console putmsg equ 20h ;Output ASCIIZ (HL) on console break equ 38h ;ROM breakpoint trap ;----------------------------------------------------------------------- ill be disabled. The symbolic names are those used in the ROM code for these routines. $ diskop equ 8 ;JP to diskette handler dpb3 equ diskop+3 ;Ptr. to 3" D.P.B. dpb5 equ dpb3+2 ;Ptr. to 5" D.P.B. getchr equ 10h ;Read console to A ååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååAED5BECFAED52200921E6FA3AEE05 :20F86000FABE281E3AE8FAB7C4C7F82AE9FA22ECFA3AE6FA32EEFA3AE4FAB7C4C3F8AF32BC :20F88000E8FA3AEBFAE6032E00CB3F67CB1D11FEFD19ED5BDFFA0180003AE1FAB720063E00 :20F8A0000132E8FAEBEDB03AE2FAFE013AE3FAC0B7C0AF32E8FACDC7F83AE3FAC93E01CD0D :20F8C000C5FCC93E0218023E03DDE5F5CD4EF9DD2ADBFA21FEFD3AECFA570601F1CDC5FC43 :20F8E000DDE13802AFC93E01A732E3FAC97AFE023FD8420E10ED4C2133F609010A00097BCE :20F90000FEFF20107E23666FE5DDE1DD5EFD010F00DD09C9FE053FD8E5DDE1CB23160021C8 :20F9200032F9197E23666FB437C8DD7500DD7401A7C956F60000000075F6000079A7CAC5E0 :20F94000FC3D20043A66F9C93D37CCEDF8C92ADDFAED4BEDFAE978CB21FE093803D6090C60 :20F960003C5FC90458C900AF3203007A3204003266F9213CF92201F6CDEDF8AFCDC5FC215A :20F98000B7F9CDAAF93E08ED398E01100010FE0D20FB3E0CED398EED388DED388DAF32467D :20F9A0000021C4F9CD0AF7C3D3F63EFF06004EED0CC823EDA318F59B80980C99009B03996E :20F9C000009C03000D0A42494F53206275696C742030382D4D61722D313939370D0A000011 :20F9E000000000000000000000000000000000000000000000000000000000000000000007 :20FA00000000000000000000000000000000000000000000000000000000000000000000E6 :20FA20000000000000000000000000000000000000000000000000000000000000000000C6 :20FA40000000000000000000000000000000000000000000000000000000000000000000A6 :20FA6000000000000000000000000000000000000000000000000000000000000000000086 :20FA8000000000000000000000000000000000000000000000000000000000000000000066 :20FAA000000000000000000000000000000000000000000000000000000000000000000046 :20FAC000000000000000000000000000000000000000000000000000000000000000000026 :20FAE000000000000000000000000000000000000000C5D50100001614ED38DECB77280BC9 :20FB00000D20F610F41520F1371801AFD1C1C9CDF2FA3E053841C5D511F1FD0607CD65FBF6 :20FB2000121310F9D1C121F1FDE57EE6F8FDBE012021237EFDBE02201A237ED6002014ED88 :20FB40002826ED3827B5E13E042008AF18093E033718043E02E137C9F5ED3894CB7F28F96D :20FB6000F1ED3995C9ED3894CB7F28F9ED3895C9C546237ECD58FB10F9C1C9E521EFFD3ADE :20FB8000F0FD2FA677E1C9CDB3FDED2923ED2124ED39253EA0ED3920AFED3921ED3922C924 :20FBA000CDB3FDED2920ED2121ED39223EA0ED3923AFED3924ED3925C9FDE37B803D3DDDB5 :20FBC000BE04308A3C67FD7E00CD58FB7ACB412802CBD7CD58FB79CB3FCD58FB79E601CD29 :20FBE00058FB7BCD58FBDD7E03CD58FB7CCD58FBDD7E05CD58FB3E63ED39303EFFCD58FB29 :20FC0000CD0FFBC5F5010300FD09F1C1FDE3C9E5D5C5214000DD4603042910FD545D2100DC :20FC200000C1C51910FDED2926ED212722FCFDC1D1E1C9CDF2FA3E05D83E08CD58FBCD65E4 :20FC4000FB47CD65FBC5CB39B9C13E0737C078E6E0FE20C83E0137C9C5E542043E08871086 :20FC6000FD32F0FD47ED38924FE6FCB2F60CED399279A02016ED3892B0ED3992DD7E0A8773 :20FC800001000010FE0D20FB3D20F8DD7E0CED39973E03CD58FBDD7E00CD58FBDD7E01CBB1 :20FCA00087CD58FB21EFFD3AF0FDA620133E07CD58FB7ACD58FBCD33FC38063AF0FDB67703 :20FCC000AFA7E1C1C9FE0738043E0637C9CDD8FCF5DC4EFDF1D8AFC9E521E8FC87856F304B :20FCE00001247E23666FE3C94EFD69FDF6FCFCFC02FD08FDB3FDE52173FD1810E5218BFD42 :20FD0000180AE521A3FD1804E521B0FD22FAFDE1F53EC332F9FDE521000022FCFDE13E03F1 :20FD200032F8FDF1E5CDF9FDE13018FE022804FE07200BF5CD7BFB3AF8FD3D20E3F137119E :20FD4000F1FDC9ED5BFCFD1911F1FDC937C9E5AF32EFFDED39923E0CED39922164FDCD709F :20FD6000FBAFE1C9041300712BED3892E60FED3992AFC9CD58FCC24CFDCD87FBCD0FFC3E0F :20FD8000CDED3931CDB9FB464080C9CD58FCC24CFDCDA0FBCD0FFC3EF1ED3931CDB9FB4537 :20FDA0004080C9CD58FCC24CFDCDB9FB560000C9C34CFDE57CE6F067ED383AE6F06F7C958F :20FDC0003805ED38381811ED383A878787876F7C953E003803ED3839E1C5E54C06006F60E2 :0EFDE00029292929097CE60F45E160C1A7C940 :00000001FF 000000000000000000000000000000026 :20FAE000000000000000000000000000000000000000C5D50100001614ED38DECB77280BC9 :20FB00000D20F610F41520F1371801AFD1C1C9CDF2FA3E053841C5D511F1FD0607CD65FBF6 :20FB2000121310F9D1C121F1FDE57EE6F8FDBE012021237EFDBE02201A237ED6002014ED88 :20FB40002826ED3827B5E13E042008AF18093E033718043E02E137C9F5ED3894CB7F28F96D :20FB6000F1ED3995C9ED3894CB7F28F9ED3895C9C546237ECD58FB10F9C1C9E521EFFD3ADE :20FB8000F0FD2FA677E1C9CDB3FDED2923ED2124ED39253EA0ED3920AFED3921ED3922C924 :20FBA000CDB3FD page 90 title BIOS1 subttl 08-Mar-1997 DRB ;===============================================================; ; ; ; Z 1 8 2 C P / M B I O S - M k I ; ; ; ; "First cut" BIOS for the Z80182 CP/M board. Includes support ; ; for 3" and 5" drives. By default, Drives 0 & 1 are 3" ; ; ; ; NB If you change this, update DATECODE: to suit ; ; - at end of file ; ; ; ;===============================================================; ;=======================================================================; ; ; ; D-X Designs Pty. Ltd. Perth, Western Australia ; ; Project: 112 May, 1996 ; ; ; ; Copyright (C) 1996 David R. Brooks ; ; ; ; This program is free software; you can redistribute it and/or ; ; modify it under the terms of the GNU General Public License ; ; as published by the Free Software Foundation; either version 2 ; ; of the License, or (at your option) any later version. ; ; ; ; This program is distributed in the hope that it will be useful, ; ; but WITHOUT ANY WARRANTY; without even the implied warranty of ; ; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ; ; GNU General Public License for more details. ; ; ; ; You should have received a copy of the GNU General Public License ; ; along with this program; if not, write to the Free Software ; ; Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. ; ; ; ;=======================================================================; .comment $ Besides the regular BIOS functions, additional "overload" functions are defined. These are called from the cold-boot entry (which CP/M never uses after start-up). The call passes a function code in C. Currently defined are: C=0 Reset disk subsystem This will turn off all drive motors, and issue a reset to the controller hardware. It does NOT flush the CP/M blocking buffers: a call to HOME should be made first, to do this. C=1 Get boot-drive number The number of the drive from which CP/M was booted is returned in A. C=2 Assign drive type Pass D = required drive number E = required drive type (see DRVTYPE.INC for definitions) If D and E are valid, the given drive is assigned to the hardware type specified in E. This affects both the CP/M organisation tables, and the parameter-block controlling the hardware setup. If E = -1, the assigned type is returned in E. 6-May-1996 Original issue 7-Mar-1997 Fixed boot-up to exclude path for DOS+ 8-Mar-1997 Added date-stamp sign-on message $ auxio equ 0 ;Define to include AUX ports code Z80182 equ 0 include Z180.INC include DPARM.INC include FDC.INC include DRVTYPE.INC include ASCII.INC global bios extrn diskop ;The core disk driver extrn hstbuf ;512-byte host buffer ; Addresses within the CP/M load CPMSZE equ 1600h ;Length of CCP + BDOS ccp equ bios-CPMSZE ;Start of CP/M proper bdos equ ccp+806h ;Entry point within CP/M ; ; Addresses within the 1st. 100H bytes boot? equ 0 ;"jp boot" iobyte equ 3 ;Intel i/o byte cdisk equ 4 ;currently logged disk bdos? equ 5 ;"jp bdos" ; cseg ; ;BIOS standard entry points bios: jp boot ;First locn. wboote: jp wboot jp const jp conin jp conout jp list jp punch jp reader jp home ;See side effect below jp seldsk jp settrk jp setsec jp setdma jp read jp write jp listst jp sectran $eject ; D I S K O R G A N I S A T I O N T A B L E S .comment $ The 3" diskette has 18 sectors per track, while the 5" has 9. Both drives are 2-sided. This makes for a very simple dual-drive scheme: for 5" drives, the two sides are mapped into one 18-sector track, while each side is a separate track on the 3" drives. The overall organisation is then: 3" 5" ------------------------------------- Bytes / sector 512 512 Sectors / track 18 18 Tracks / disk 160 40 ------------------------------------- Bytes / disk 1,474,560 368,640 The only parameter which changes is the number of "tracks". Both drives have the sector interlace created by hard formatting. Hence there is no sector-translation table. This system is not only simpler, but is inherently transparent to disks created with different interlace strategies. $ ;Constants describing the track layout:- blksiz equ 2048 ;CP/M allocation block size hstsiz equ 512 ;host sector size hstspt equ 18 ;host sectors per track hstblk equ hstsiz/128 ;CP/M sectors per host sector cpmspt equ hstblk * hstspt ;CP/M sectors per track secmsk equ hstblk-1 ;sector mask secshf equ 2 ;log(2) hstblk ; ;BDOS write-command codes: wrall equ 0 ;write to allocated wrdir equ 1 ;write to directory wrual equ 2 ;write to unallocated ;---------------------------------------------------------------------- ; D I S K - P A R A M E T E R H E A D E R S dpbase: ;Drive Parameter headers: Drives 0 & 1 ;Drive 0: Values for a 3", 1.44MB drive dw 0 ;Skew table (none) dw 0,0,0 ;Scratch for CP/M dw dirbf ;Directory Buffer dpbptr: dw dpblk3 ;Disk Parameter Block (3") dw chk00 ;Work area (for changed diskettes) dw all00 ;Allocation vector hdrsiz equ $-dpbase ;Length of block ; ;Drive 1: Values for a 5", 360kB drive dw 0 ;Skew table (none) dw 0,0,0 ;Scratch for CP/M dw dirbf ;Directory Buffer dw dpblk3 ;Disk Parameter Block (3") dw chk01 ;Work area (for changed diskettes) dw all01 ;Allocation vector ndrives equ ($-dpbase) / hdrsiz ;No. of drives ;---------------------------------------------------------------------- ; D I S K - P A R A M E T E R B L O C K S ; ;Parameters for 5", 360kB drives ;Special parameters BEFORE label db D5_360 ;Drive type dw remap5 ;Sector mapping strategy dpblk5: dw cpmspt ;CP/M "sectors"/track db 4 ;Block shift db 15 ;Block mask db 1 ;Extent mask dw 174 ;Max. allocn. block no. dw 63 ;No. of directory entries -1 db 10000000B ;Bit-map for allocn. blocks db 00000000B ; used for directory dw 16 ;No. of bytes in dir. check buffer dw 1 ;No. of tracks before directory dpbofs equ $-dpblk5 ;Size of the preceding block ; Custom extension: controller hardware parameters ; Format is same as MS-DOS db 0dfh ;SRT=3mS, HUT=240mS db 02h ;HLT=4mS, no DMA db 25h ;5 secs. (25 index pulses) db 02h ;512 bytes/sector maxsec: db 09 ;Sectors/track db 2ah ;Gap length db 0ffh ;DTL (not used) db 50h ;Gap-3 length: Format db 0e5h ;Data fill: Format db 0fh ;Head-settle time (mS) db 8 ;Motor-on delay * 1/8 sec. db 39 ;Highest cylinder no. db 02 ;data rate (250kb/s) ;----------------------------------------------- ; The following "max." values are defined for the largest disk node equ 128 ;No. of directory entries noab equ 715 ;No. of allocation blocks ;Parameters for 3", 1.4MB drives ;Special parameters BEFORE label db D3_144 ;Drive type dw remap3 ;Sector mapping strategy dpblk3: dw cpmspt ;CP/M "sectors"/track db 4 ;Block shift db 15 ;Block mask db 0 ;Extent mask dw noab-1 ;Max. allocn. block no. dw node-1 ;No. of directory entries -1 db 11000000B ;Bit-map for allocn. blocks db 00000000B ; used for directory dw 32 ;No. of bytes in dir. check buffer dw 1 ;No. of tracks before directory ; Custom extension: controller hardware parameters ; Format is same as MS-DOS db 0dfh ;SRT=3mS, HUT=240mS db 02h ;HLT=4mS db 25h ;5 secs. (25 index pulses) db 02h ;512 bytes/sector db 18 ;Sectors/track db 1bh ;Gap length db 0ffh ;DTL (not used) db 6ch ;Gap-3 length: Format db 0e5h ;Data fill: Format db 15 ;Head-settle time (mS) db 8 ;Motor-on delay * 1/8 sec. db 79 ;Highest cylinder no. db 00 ;data rate (500kb/s) ;--------------------------------------------------------------------- bsects equ (bios-ccp)/hstsiz ;No. of warm-boot sectors to load basect equ 2 ;First CP/M sector (after boot) wboot: ld sp,80h ;warm boot: reload cp/m ;NB boot from 5" double-density drive, ; so we save time by reading physical, ; 512-byte sectors. CP/M starts at ; physical sector 1. ; call flush ;Clean up the disk system jr nz,faults ; write errors ; Re-load CP/M. This code must determine whether CP/M is entirely on ; one track, or split over the two sides of the disk. Either one or ; two reads are necessary, as the disk driver does not support multi- ; track operations. ; This code uses "physical" sector notation, so there is no need to ; call the transation function. ;Set up to re-load CP/M ld a,(bootdv) ;Boot drive push af ld c,a call seldsk ;Sets up DPH pointers, etc. pop af ld d,a ;Drive in D ld b,CPMSZE / hstsiz ;No. of sectors to load ld ix,(curdph) ld hl,ccp ;Start of load ld c,0 ;First system track ld e,2 ;After boot sector ld a,(ix+EOT) ;Final sector, this track cp b ;Is that enough? jr nc,onetrk push bc ;Save total sectors ld a,2 ;No: read an extra track ld b,(ix+EOT) ;Sectors on this track dec b ;Skipping the first push bc push de call diskop ;Read 1st track jr c,faults pop de pop bc pop af ;Total sectors reqd. (B -> A) sub b ;Less those already read ld b,a inc c ;Next track ld e,1 ;Start at the beginning onetrk: ld a,2 ;"Read" last/only track call diskop jr c,faults ; C O M M O N C O D E T O C O L D & W A R M - B O O T gocpm: xor a ld (hstact),a ;host buffer inactive ld (unacnt),a ;unalloc. ctr. = 0 ld a,0c3h ;"jp" ld (boot?),a ld hl,wboote ld (boot?+1),hl ;BIOS entry ld (bdos?),a ld hl,bdos ld (bdos?+1),hl ;BDOS entry ld bc,80h call setdma ;default buffer locn. ld a,(cdisk) ld c,a ;currently logged disk jp ccp ;then to cp/m ; faults: ld hl,emsg ;Reboot failed (this is fatal) call putmsg di halt emsg: db 0dh,0ah,'FAIL',0 ;------------------------------------------------------------ putmsg: ;Output ASCIIZ on conout ld a,(hl) ;Affects A, BC, HL and a ret z ;Zero terminates ld c,a call conout ;Display 1 char. inc hl jr putmsg ;------------------------------------------------------------ ; C O N S O L E I / O O P E R A T I O N S const: in0 a,(sccacnt) ;Console status rra ;Input-ready is Bit-0 ( -> CY) sbc a,a ;a = ff, if CY = 1 ret ; ; conin: push hl ;console input push bc ;delays for drive turn-off ld hl,0 ld b,64 ;initialise: 20 secs. approx lp: call const and a ;console ready? jr nz,ex ;yes... dec hl ld a,h or l ;inner-loop count jr nz,lp djnz lp ;outer-loop count ; call turnoff ;After 20 secs., drives off w2: call const ;then wait on... jr z,w2 ex: pop bc ;input ready pop hl in0 a,(sccad) and 7fh ;so get it ret ; conout: in0 a,(sccacnt) ;console output bit 2,a ;tx ready? jr z,conout ld a,c out (sccad),a ;send it ret ; ;------------------------------------------------------------- ; ; A U X I L I A R Y I / O F U N C T I O N S ; ;Parallel Port IO Addresses dport equ 8ch ;Data port sport equ 8dh ;Status port cport equ 8eh ;Control port reader: ifdef auxio in0 a,(_LSR) ;Line status? bit 0,a jr z,reader ;Loop till ready in0 a,(_RBR) res 7,a ;Mask bit 7 (CP/M std.) ret endif punch: ifdef auxio in0 a,(_LSR) ;Line status? bit 5,a jr z,punch ;Wait till ready out0 (_THR),c ;Send from C ret endif listst: ;List device status in0 a,(sport) ;Get status rlca ;A[7] (ready) -> CY sbc a,a ;A = -1 if CY set ret ;Returns A, & NZ if ready list: ;Output C on printer call listst ;Busy? jr nz,ls2 ;Go if ready ld b,40 ls1: djnz ls1 ;Pause, jr list ; then try again ls2: out0 (dport),c ;Latch data ld a,0dh out0 (cport),a ;STB = 1 nop nop ;Pause ld a,0ch out0 (cport),a ;STB = 0 ret ; ;---------------------------------------------------------------- ; D I S K - M A N A G E M E N T F U N C T I O N S home: call flush ;Intentional side effect ld c,0 ;use track 0 settrk: ld a,c ;use track (c) - 8 bits only ld (sektrk),a ret ;----------------------------------------------------------------- ; Clean-up the disk sub-system flush: ld a,(hstact) ;see if block needs writing out, first or a ret z ld a,(hstwrt) ;if active & written, write it back or a call nz,writehst ;Return Z if OK ret ;------------------------------------------------------------------ ; setsec: ld a,c ;use sector (c) ld (seksec),a ret ; ; sectran: ;translate sector (bc), using table at (de) push bc pop hl ;Null routine: just BC => HL ret ; ; setdma: ld (dmaadr),bc ;buffer addr. in bc ret ; ; seldsk: ld hl,0 ;select drive (c): DPH ptr. in HL ld a,c ld (sekdsk),a cp ndrives ;Valid? ret nc ;if > 1, abort ; ld b,hdrsiz ;Length of DPH entry mlt bc ;BC = offset into list ld hl,dpbase add hl,bc ;DPH ptr. in HL (wanted for BDOS) push hl ; - hence saved ld bc,dpbptr-dpbase add hl,bc ld a,(hl) inc hl ld h,(hl) ld l,a ;HL -> Drive Parameter Block dec hl ld b,(hl) dec hl ld c,(hl) ;BC -> mapping strategy ld (mapptr),bc ; Saved for disk access routines ld bc,dpbofs+2 add hl,bc ld (curdph),hl ;HL -> current hardware parameters pop hl ;Original DPH ptr. for BDOS ret ; ;----------------------------------------------------------------- ; read: ;Read one, 128-byte "sector" ld a,1 ld (readop),a ;read operation ld a,wrual ld (wrtype),a ;treat as unalloc. jr alloc ;to common code ; ; write: ;Write one, 128-byte "sector" xor a ld (readop),a ;not a read ld a,c ;write type in c (ex BDOS) ld (wrtype),a cp wrual ;write unallocated? jr nz,chkuna ;check for unalloc. ; ; write to unallocated: set parameters ld a,blksiz/128 ;next unalloc. recs. ld (unacnt),a ld a,(sekdsk) ;drive to seek ld (unadsk),a ;unadsk := sekdsk ld a,(sektrk) ld (unatrk),a ;unatrk := sektrk ld a,(seksec) ld (unasec),a ;unasec := seksec ; chkuna: ;checks for write to unallocated sectors ld a,(unacnt) or a ;any unallocated sectors remaining? jr z,alloc ;skip if not ; ; more unallocated records remain dec a ;unacnt := unacnt - 1 ld (unacnt),a ld hl,(sekdsk) ;sekdsk, sektrk ld de,(unadsk) ;unadsk, unatrk sbc hl,de ;equal? (cy=0 from "or" above) jr nz,alloc ld hl,unasec ld a,(seksec) cp (hl) ;same sector? jr nz,alloc ;skip if not same inc (hl) ;unasec := unasec + 1 ld a,(hl) ;end of track? cp cpmspt ;count cp/m sectors jr c,noovf ;skip if no oflo ; ; overflow to next track ld (hl),0 ;unasec := 0 ld hl,unatrk inc (hl) ;unatrk := unatrk + 1 ; ; match found: mark as unnecessary read noovf: xor a ld (rsflag),a jr rwoper ;to do the write ; ; not an unallocated record: requires a pre-read alloc: xor a ld (unacnt),a ;unacnt := 0 inc a ld (rsflag),a ;rsflag := 1 ; ; ; common code for read & write ; rwoper: xor a ld (erflag),a ;no errors (yet!) ld a,(seksec) ;compute host sector rept secshf srl a ;a shr 1: bring in zero endm ld (sekhst),a ;host sector to seek ; ; active host sector? ld hl,hstact ;host-active flag ld a,(hl) ld (hl),1 ;active now! or a ;was it already? jr z,filhst ;fill host if not ; ; host buffer active: same as seek buffer? ld hl,(sekdsk) ;sekdsk, sektrk ld de,(hstdsk) ;hstdsk, hsttrk sbc hl,de ;equal? (cy=0 from "or" above) jr nz,wngsec ld hl,sekhst ;use converted sector no. ld a,(hstsec) cp (hl) ;same sector too? jr z,match ; ; proper disk, but not correct sector wngsec: ld a,(hstwrt) ;host written? or a call nz,writehst ;clear host buffer ; ; may have to fill the host buffer filhst: ld hl,(sekdsk) ;sekdsk & sektrk => ld (hstdsk),hl ; hstdsk & hsttrk ld a,(sekhst) ld (hstsec),a ;sekhst => hstsec ld a,(rsflag) ;need to read? or a call nz,readhst ;yes, if 1 xor a ld (hstwrt),a ;no pending write ; match: ;copy data to/from buffer ld a,(seksec) ;mask buffer no. and secmsk ;l.s. bits ld l,0 ;bits shl 7 => hl srl a ld h,a rr l ;shift right 1, ie left 7 in next byte ld de,hstbuf add hl,de ;hl := host addr. ld de,(dmaadr) ;get/put to cp/m buffer ld bc,128 ld a,(readop) ;which way? or a jr nz,rwmove ;skip if read ; ; write operation: mark & switch direction ld a,1 ld (hstwrt),a ;hstwrt := 1 ex de,hl ;source/dest. swap rwmove: ldir ;shift across ; ; data has been moved to/from host buffer ld a,(wrtype) cp wrdir ;write to directory? ld a,(erflag) ;in case errors ret nz ;no further processing ; ; clear host buffer for directory write or a ;errors? ret nz ;skip if so xor a ld (hstwrt),a ;buffer written call writehst ld a,(erflag) ret ;--------------------------------------------------------- ; B A S I C D I S K O P E R A T I O N S turnoff: ;Turn off all drive motors ld a,1 call diskop ret readhst: ;Set up argts. for READ ld a,2 ;READ command jr common writehst: ;Set up argts. for WRITE ld a,3 ;WRITE command common: push ix ;Must not alter it, for DOS+ push af ;Save the command call mapsec ;Get track & sector in C, E ld ix,(curdph) ;Current drive parameters ld hl,hstbuf ;Always IO to this buffer ld a,(hstdsk) ;Drive no. ld d,a ld b,1 ;Always 1 sector only pop af ;Command code call diskop ;Go do it pop ix ;Unchanged jr c,flt xor a ;OK - set zero ret flt: ld a,1 ;Errors: set NZ and a ld (erflag),a ret ;---------------------------------------------------------- ; S E T U P D R I V E P A R A M E T E R S ; Routine to assign hardware type & CP/M strategies to a given ; drive. Enter with: ; D = Drive No. (0..ndrives) ; E = Drive Type (0..ntypes) ; ; If E = -1, the currently assigned type is RETURNED in E, and ; IX will point to the hardware parameter block. The BIOS tables ; are unchanged by this call. drivetype: ld a,d cp ndrives ;Drive in range? ccf ret c ;No: exit with CY=1 ld b,d ld c,hdrsiz mlt bc ld hl,dpbase add hl,bc ;HL -> reqd. DPH ld bcm80 loadbios,loadbios=loadbios m80 bios,bios=bios m80 diskopq,diskopq=diskopq m80 biostop,biostop=biostop l80 /p:F500,/d:FDEF,loadbios,bios,diskopq,biostop,bios/n:p/y/x/e ROMHOOK INCpBIOS HEX,qrsBIOS MAC€tuvwxyz{BIOS MAC5|}~BIOS SUBåååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååå page 90 title BIOS top-of-memory ;===============================================================; ; ; ; T O P - O F - M E M O R Y M A R K F O R B I O S ; ; ; ; D-X Designs Pty. Ltd. Perth, Western Australia ; ; Project: 112 Author: D R Brooks May, 1996 ; ; ; ;===============================================================; ; Just mark the top "cseg" location used: cseg global biostop, hstbuf biostop equ $ dseg hstbuf: ds 512 ;Disk sector buffer end - O F - M E M O R Y M A R K F O R B I O S ; ; ; ; D-X Designs Pty. Ltd. Perth, Western Australia ; ; Project: 112 Author: D R Brooks May, 1996 ; ; ; ;===============================================================; ; Just mark the top "cseg" location used: cseg global biostop, hstbuf biostop equ $ dseg hstbuf: ds 51åååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååå;Standard drive-parameter block ; Format is same as MS-DOS BIOS SPEC_1 equ 0 ;"Specify" byte 1 SPEC_2 equ 1 ;"Specify" byte 2 MTROFF equ 2 ;Wait before stop motor SECSZE equ 3 ;Bytes/sector (must be > 0) EOT equ 4 ;Final sector no. GPL equ 5 ;Gap length DTL equ 6 ;Data transfer length GAPFMT equ 7 ;Gap-3 length: Format DATFMT equ 8 ;Data fill: Format SETTLE equ 9 ;Head-settle time (mS) MTRON equ 10 ;Motor-start (* 1/8 sec.) MAXCYL equ 11 ;Max. cylinder no. DRATE equ 12 ;Data rate  EOT equ 4 ;Final sector no. GPL equ 5 ;Gap length DTL equ 6 ;Data transfer length GAPFMT equ 7 ;Gap-3 length: Format DATFMT equ 8 ;Data fill: Format SETTLE equ 9 ;Head-settle åååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååå; Standard drive-type identifiers ntypes equ 5 ;No. of defined types D5_360 equ 0 ;5", 360kB D5_120 equ 1 ;5", 1.2MB D3_720 equ 2 ;3", 720kB D3_144 equ 3 ;3", 1.44MB D3_288 equ 4 ;3", 2.88MB ROMHOOK INCpBIOS HEX,qrsBIOS MAC€tuvwxyz{BIOS MAC5|}~BIOS SUB€BIOSTOP MAC�DPARM INC‚DRVTYPE INCåååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååå page 90 title Basic diskette handler .comment $ ;=======================================================================; ; ; ; B A S I C D I S K - D R I V E R O U T I N E S ; ; ; ; Non-interrupt driven support routines for the SMC diskette chip. ; ; ; ;=======================================================================; ;=======================================================================; ; ; ; D-X Designs Pty. Ltd. Perth, Western Australia ; ; Project: 112 May, 1996 ; ; ; ; Copyright (C) 1996 David R. Brooks ; ; ; ; This program is free software; you can redistribute it and/or ; ; modify it under the terms of the GNU General Public License ; ; as published by the Free Software Foundation; either version 2 ; ; of the License, or (at your option) any later version. ; ; ; ; This program is distributed in the hope that it will be useful, ; ; but WITHOUT ANY WARRANTY; without even the implied warranty of ; ; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ; ; GNU General Public License for more details. ; ; ; ; You should have received a copy of the GNU General Public License ; ; along with this program; if not, write to the Free Software ; ; Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. ; ; ; ;=======================================================================; DISKOPQ - Version for BIOS, with FORMAT disabled to save space. This code is designed to work without interrupts (compatible with the ROM bootstrap code). Consequently, timing functions are done by polling and/or delay loops. The DMA is used for data transfer, and is polled for completion (check that the byte counter has decremented to zero). Call: A - OPCODE: 0 - Reset disk system: all drives uncalibrated 1 - Turn motors off (leave drives calibrated) 2 - Read sector/s 3 - Write sector/s 4 - Verify sector/s 5 - Format track 6 - Translate logical address to physical B - No. of sectors to read/write C - Track No. (even tracks are Side 0, odd tracks are Side 1) D - Drive No. (0..3) E - Sector No. HL - Ptr. to data buffer (logical address) IX - Ptr. to Drive Parameter Block (DPB) Return: If successful: CY = 0 A undefined HL advanced past data block If errors: CY = 1 A status (see below) HL unchanged In either case: DE -> Result vector (7 bytes) IX, IY unchanged BC trashed $ Z80182 equ 0 include Z180.INC include DPARM.INC include FDC.INC ;incformat equ 0 ;Define this to include the FORMAT cmnd. .sall dseg ;====================================================================== ; L O C A L D A T A ;Return-error status values (in A, if CY=1) calerr equ 1 ;Error in a recalibration function ioerr equ 2 ;Error posted by Result Phase: see (HL) badsect equ 3 ;Sector/Length will overrun track lostdat equ 4 ;DMA did not transfer full block timeout equ 5 ;Interrupt timed out badcmd equ 6 ;Invalid function code sekerr equ 7 ;Seek error calibd: ds 1 ;Drives "Calibrated" flags mask: ds 1 ;Bit-mask of current drive restab: ds 7 ;Buffer for result-phase data rtcnt: ds 1 ;IO command retry count (after RESTAB) switch: ds 3 ;Builds a JP instruction tries equ 3 ;No. of retries on IO errors blksze: ds 2 ;Save block size cseg ;====================================================================== ; F . D . C . C O M M A N D C O D E S cmd_recal equ 7 ;Recalibrate cmd_sense equ 8 ;Sense Interrupt cmd_seek equ 0fh ;Seek to track cmd_read equ 46h ;Read (MFM, implied seek) cmd_write equ 45h ;Write, ditto cmd_verify equ 56h ;Verify, ditto cmd_format equ 4dh ;Format a track ; D . M . A . C O M M A N D S dma_incmd equ 0cdh ;IO => MEM dma_outcmd equ 0f1h ;MEM => IO dma_run equ 63h ;Kick off Channel-0 ;====================================================================== ; U T I L I T Y S U B R O U T I N E S waitint: ;Wait for interrupt (but polled) push bc push de ld bc,0 ;Inner timeout counters ld d,20 ;Coarse timeout setting w1: in0 a,(drc) ;Get interrupt lines bit 6,a jr z,w2 ;Go if interrupt set dec c jr nz,w1 djnz w1 ;65k loops dec d jr nz,w1 ;Coarse outer loop scf jr w3 ;Exit: timed out w2: xor a ;Exit: OK w3: pop de pop bc ret ;-------------------------------- testresult: ;Check results of I/O operations ; IY -> test-block for status: ; see "launch" for details call waitint ;Wait for completion ld a,timeout jr c,exit ;Failed (CY posted to caller) ;Get 7 result bytes after read/write push bc push de ld de,restab ;Point to Result Table ld b,7 ;No. of expected bytes lc3: call getbyte ld (de),a inc de ;Post it djnz lc3 pop de pop bc ld hl,restab ;Pointer to results block push hl ld a,(hl) and 0f8h ;Kill variable bits (just errors) cp (iy+tst0) ;Check to expected value jr nz,bad inc hl ld a,(hl) cp (iy+tst1) ;Check to expected value jr nz,bad inc hl ld a,(hl) sub 0 ;No "funny" errors (ever!) jr nz,bad in0 l,(bcr0l) in0 a,(bcr0h) or l ;Check that all was transferred pop hl ld a,lostdat jr nz,bad ;Should have counted back to zero xor a ;It all succeeded! jr exit ;OK: return CY=0 (A=0) bad1: ld a,badsect ;Bad sector specification scf jr exit bad: ld a,ioerr ;Error post: see block at (HL) pop hl scf exit: ret ;CY = error ;-------------------------------- sendbyte: ;Send A to Cmnd/data port push af scb1: in0 a,(_MSR) ;Check FDC status bit 7,a ;Wait till ready jr z,scb1 pop af ;Recover the cmnd. byte out0 (_DATA),a ret ;-------------------------------- getbyte: ;Read Cmnd/data port to A in0 a,(_MSR) bit 7,a ;Ready? jr z,getbyte in0 a,(_DATA) ;Get it ret ;-------------------------------- sendcmdstrg: ;Send string of commands from HL push bc ;1st. byte is count ld b,(hl) ;Save count scs1: inc hl ld a,(hl) ;Get cmnd. byte call sendbyte ;Send it djnz scs1 ;Repeat pop bc ret ;-------------------------------- uncal: ;Force a recalibrate on this drive push hl ld hl,calibd ;First force a recalibrate ld a,(mask) cpl and (hl) ;Turn of the "calibrated" bit ld (hl),a pop hl ret ;-------------------------------- dmainput: ;Set up DMA buffers for input call absaddr ;Get physical addr. for DMA out0 (dar0l),l out0 (dar0h),h out0 (dar0b),a ;Destination pointers ld a,_DMA out0 (sar0l),a ;Source: FDC's DMA port xor a out0 (sar0h),a out0 (sar0b),a ;Controlled by /DREQ0 ret ;-------------------------------- dmaoutput: ;Set up DMA buffers for output call absaddr ;Get physical addr. for DMA out0 (sar0l),l out0 (sar0h),h out0 (sar0b),a ;Source pointers ld a,_DMA out0 (dar0l),a ;Destn.: FDC's DMA port xor a out0 (dar0h),a out0 (dar0b),a ;Controlled by /DREQ0 ret ;-------------------------------- ;Offsets for inline arguments opcode equ 0 ;Command to FDC tst0 equ 1 ;Match Status 0 tst1 equ 2 ; " " 1 skip equ 3 ;No. of bytes to skip at return launch: ;Initiate a read or write command ex (sp),iy ;Save IY, point at argts. ld a,e ;Find final sector for transfer add a,b dec a ;Last sector to do dec a ;1 under final cp (ix+EOT) ;This MUST be < true final jr nc,bad1 inc a ;True final sector ld h,a ;Save it ld a,(iy+opcode) call sendbyte ;Command code ld a,d ;Drive bit 0,c ;Odd track (ie Side 1)? jr z,lc1 set 2,a lc1: call sendbyte ;Drive & head ld a,c srl a ;Cylinder call sendbyte ld a,c and 1 call sendbyte ;Head ld a,e call sendbyte ;Sector ld a,(ix+SECSZE) call sendbyte ;Sector length (encoded) ld a,h call sendbyte ;Final sector no. ld a,(ix+GPL) call sendbyte ;Gap length ld a,dma_run ;Activate DMA Ch-0 out0 (dstat),a ld a,0ffh ;Data transfer length (default) call sendbyte ;Final byte: FDC & DMA running call testresult ;Find out what happened push bc push af ld bc,skip add iy,bc ;Jump past the inline params. pop af pop bc ex (sp),iy ;Recover IY, post link ret ;-------------------------------- transze: ;Determine buffer size (DMA count set) push hl push de push bc ld hl,64 ld b,(ix+SECSZE) ;Size N, => 128*2^N inc b tz1: add hl,hl djnz tz1 ld d,h ld e,l ;Sector size in DE ld hl,0 pop bc ;No. of sectors in B push bc tz2: add hl,de ;Form total in HL djnz tz2 out0 (bcr0l),l ;Set DMA counter out0 (bcr0h),h ld (blksze),hl ;Save block size pop bc pop de ;Restore regs. pop hl ret ;-------------------------------- endseek: ;Finish of a seek/recalibrate function call waitint ;Wait for it ld a,timeout ret c ;Timed out ld a,cmd_sense ;"Sense Interrupt" at the end call sendbyte call getbyte ld b,a ;ST0 in B call getbyte ;PCN in A push bc ;Verify correct cylinder srl c cp c ;Yes? pop bc ld a,sekerr scf ret nz ;Quit if unequal ld a,b ;Get back ST0 and 0e0h cp 20h ;Look for success ret z ld a,calerr scf ret ;CY=1 if it failed ;-------------------------------- doron equ 0ch ;Basic state: no drives, no reset, DMA setup: ;Prepare for a Read or Write operation push bc ;Save them... push hl ld b,d ;Drive no. inc b ld a,08h su1: add a,a djnz su1 ;Shift drive bit as reqd. ld (mask),a ;Save drive indicator bit ld b,a ;Local copy in0 a,(_DOR) ld c,a and 0fch ;Kill select bits or d ;Select reqd. drive or doron ;No reset, DMA out0 (_DOR),a ;Selected ld a,c and b ;Is this drive running? jr nz,su2 in0 a,(_DOR) or b ;Start it up out0 (_DOR),a ; Wait for motor to run-up. NB this delay assumes: ; 1. 16MHz CPU clock ; 2. 2 wait states per memory access ; 3. Z-80 instruction cycle-counts ld a,(ix+MTRON) ;Start delay add a,a ;Scale for inner loop ld bc,0 ;Prime for inner loop mo1: djnz mo1 ;17*256 = 4352 clocks dec c ; 6 jr nz,mo1 ; 17 ; ---- ; 4375 clocks ; x 256 ; ------- ; 1,120,000 clocks ; or, 1/16 second dec a jr nz,mo1 ;Full delay su2: ;Send the SPECIFY command (all from DPB) ld a,(ix+DRATE) out0 (_CCR),a ;Data rate as reqd. ld a,03h ;"Specify" call sendbyte ld a,(ix+SPEC_1) call sendbyte ld a,(ix+SPEC_2) res 0,a ;Be sure DMA is activated call sendbyte ld hl,calibd ld a,(mask) and (hl) ;Is this drive calibrated? jr nz,su3 ;Done if so ld a,cmd_recal call sendbyte ;Send the "recal" command ld a,d call sendbyte ;Drive no. call endseek ;Finish the operation jr c,su5 ;Jump if error ld a,(mask) or (hl) ld (hl),a ;Flag it calibrated, now su3: xor a ;Success... su5: and a ;Set the Z bit pop hl pop bc ret ;Done: Z set if OK ;====================================================================== ; C O M M A N D D E S P A T C H E R global diskop diskop: cp maxcmd jr c,do1 ld a,badcmd scf ret ;Illegal command do1: call entry ;Enter the slave routine push af ;Save exit status call c,reset ;If errors, reset the FDC pop af ret c ;If error, take exit code xor a ;If OK, return zero ret ;Back to caller entry: push hl ;Save it ld hl,dtab add a,a ;Scale opcode by 2 add a,l ld l,a ;Access the jumptable jr nc,do2 inc h ;Propagate carry do2: ld a,(hl) ;Look into the table inc hl ld h,(hl) ld l,a ex (sp),hl ;Recover HL: routine ptr. on stack ret ;Switch to routine dtab: ;Pointers to function routines dw reset dw motors dw xread ;I/O functions: call wrappers dw xwrite dw xverf dw xform dw absaddr maxcmd equ ($-dtab)/2 ;No. of valid commands ;====================================================================== ; I / O C O M M A N D W R A P P E R F U N C T I O N ; The READ, WRITE, VERIFY and FORMAT commands are essentially identical. ; The despatcher calls a stub, which sets up a common wrapper to ; run the required sub-function, and to implement re-tries in the ; event of data errors. ; Wrapper stubs. The common tail is called with the user's HL stacked, ; and HL pointing to the required sub-function. jpopc equ 0c3h ;A "JP" opcode xread: push hl ld hl,read ;Sub-function pointer jr comtail xwrite: push hl ld hl,write jr comtail xverf: push hl ld hl,verify jr comtail xform: push hl ld hl,format comtail: ;Common tail of the "wrapper" function ld (switch+1),hl ;Target for the despatcher pop hl ;Caller's value push af ld a,jpopc ld (switch),a ;Complete the "JP" instruction push hl ld hl,0 ld (blksze),hl ;Default value pop hl ld a,tries again: ld (rtcnt),a ;Retry counter pop af push hl call switch ;To the sub-function pop hl ;Save HL (no others changed) jr nc,ok ;Exit: no error cp ioerr ;Was it an IO error? jr z,more cp sekerr ;Or a seek error jr nz,fatal ;No: other errors are fatal more: push af ;Seek or IO errors: retry call uncal ;Reset the "calibrated" bit ld a,(rtcnt) dec a ;Count attempts jr nz,again ;More to go pop af ;Exhausted: get the error code fatal: scf ;Hard errors ld de,restab ;Pass the result pointer ret ok: ld de,(blksze) add hl,de ;Success: index HL past block ld de,restab ;Return DE -> status block ret ;------------------------------- fails: ;Common stub for sub-functions to exit with error scf ret ;====================================================================== ; R E S E T T H E D I S K E T T E S Y S T E M reset: push hl xor a ld (calibd),a ;All drives uncalibrated out0 (_DOR),a ;Force reset ld a,doron out0 (_DOR),a ;All drives off (DMA asserted) ld hl,configtab call sendcmdstrg ;"Configure" xor a ;Post OK pop hl ret configtab: db ecft-$-1 ;Length db 13h ;"Configure" db 00h ;Required db 71h ;No FIFO in use db 43 ;Write precomp point ecft equ $ ;====================================================================== ; T U R N O F F A L L D R I V E - M O T O R S ; This command is really only needed until interrups are supported, ; since it is then possible to automatically turn off a drive which has ; not been accessed for some time. ; This command is used by the elementary BIOS keyboard routine: the ; drives are turned off if the system has waited for keyboard input ; for too long - a simple method! motors: in0 a,(_DOR) and 0fh ;Drop motor lines: keep selection out0 (_DOR),a xor a ;"Success" ret ;====================================================================== ; R E A D O N E O R M O R E S E C T O R S read: call setup ;Drive selected & ready jp nz,fails call dmainput ;Set up DMA pointers for input call transze ;Get total buffer size ld a,dma_incmd out0 (dmode),a ;DMA set up: IO => MEM call launch ;Go fire it off db cmd_read ;Command code db 40h ;Expected ST0 db 80h ;Expected ST1 ret ;CY=fault: HL -> result phase ;====================================================================== ; W R I T E O N E O R M O R E S E C T O R S write: call setup ;Drive selected & ready jp nz,fails call dmaoutput ;Set up DMA pointers for output call transze ;Get total buffer size ld a,dma_outcmd out0 (dmode),a ;DMA set up: MEM => IO call launch ;Go fire it off db cmd_write ;Command code db 40h ;Expected ST0 db 80h ;Expected ST1 ret ;CY=fault: HL -> result phase ;====================================================================== ; V E R I F Y S E C T O R S - N O T R A N S F E R verify: call setup ;Drive selected & ready jp nz,fails call launch ;Go fire it off db cmd_verify ;Command code db 0 ;Expected ST0 db 0 ;Expected ST1 ret ;CY=fault: HL -> result phase ;====================================================================== ; F O R M A T A T R A C K O F T H E D I S K E T T E format: ifdef incformat ;Do we include FORMAT ? call setup ;Drive running, & calibrated jp nz,fails ld a,cmd_seek ;Seek to the required track call sendbyte ;We cannot use "implied seeks" here ld a,d bit 0,c jr z,fm1 set 2,a ;A = drive & head bits fm1: call sendbyte ld a,c srl a ;Cylinder no. call sendbyte call endseek ;Wait for seek to complete ret c ;Failed call dmaoutput ;DMA pointers for output push hl ld l,(ix+EOT) ;No. of sectors ld h,0 add hl,hl add hl,hl ;4 bytes/sector out0 (bcr0l),l out0 (bcr0h),h ;Set up DMA counter ld (blksze),hl pop hl ld a,dma_outcmd out0 (dmode),a ;DMA armed to output ld a,cmd_format ;Now initiate the FDC call sendbyte ld a,d bit 0,c jr z,fm2 set 2,a ;Side select fm2: call sendbyte ;Drive & side ld a,(ix+SECSZE) call sendbyte ;Sector size ld a,(ix+EOT) call sendbyte ;Final sector no. ld a,(ix+GAPFMT) call sendbyte ;Gap-3 length ld a,dma_run out0 (dstat),a ;Kick off the DMA ld a,(ix+DATFMT) call sendbyte ;Last byte: FDC running push iy ld iy,fmtres ;Expected results call testresult ;Wait for it... pop iy ret ;A and CY show result fmtres: db 0 ;Filler db 0 ;ST-0 db 0 ;ST-1 else jp fails ;No FORMAT command endif ;====================================================================== ; C O N V E R T L O G I C A L T O P H Y S I C A L A D D R E S S ; This utility converts a logical address (in HL) to a 20-bit physical ; address (in AHL). Other registers are unchanged. Absolute addresses ; are used by the Z182 DMA. ; The routine accesses the memory-mapping hardware registers, to obtain ; the current translations. ;NB This code assumes that CA1 > BA > CA0 absaddr: ;Converts HL to AHL push hl ld a,h ;First, see which logical bank and 0f0h ld h,a ;Save 4kB page in0 a,(cbar) and 0f0h ;CA1 logical base ld l,a ld a,h sub l ;Form Addr - Base jr c,not1 ;If CY: Addr < Base, so don't use in0 a,(cbr) ;It is CA1 - take base jr mod not1: in0 a,(cbar) add a,a add a,a add a,a add a,a ;BA logical base in A[7:4] ld l,a ld a,h sub l ;Form Addr - Base ld a,0 jr c,mod ;Not BA, must be CA0 in0 a,(bbr) ;Else, it is BA mod: pop hl ;Now do the adjustment push bc ;Save it push hl ;Save HL again ld c,h ld b,0 ;BC = HL >> 8 ld l,a ld h,b ;HL = physical base add hl,hl add hl,hl add hl,hl add hl,hl ;HL = physical base << 4 add hl,bc ;Top address in HL ld a,h and 0fh ;Bits 19:16 in A ld b,l ;Save bits 15:8 pop hl ld h,b ;Full address in AHL pop bc ;Restore BC and a ;CY=0 (ie no errors) ret ;Done end  ld l,a ld h,b ;HL = physical base add hl,hl add hl,hl add hl,hl add hl,hl ;HL = physical base << 4 add hl,bc ;Top address in HL ld a,h and 0fh ;Bits 19:16 in A ld b,l ;Save bits 15:8 pop hl ld h,b ;Full addåååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååå; Port definitions for the FDC37C665/6 combo chips ; Prefix a "_" as some names clash with Z180 names ; Diskette controller _DOR equ 92h ;Digital Output _MSR equ 94h ;Main Status _DSR equ 94h ;Data-rate Select _DATA equ 95h ;Data & commands I/O _DIR equ 97h ;Digital Input _CCR equ 97h ;Confign. Control _DMA equ 0a0h ;Diskette DMA address ; Serial port ;RD/WR _RBR equ 98h ;R Receiver buffer _THR equ 98h ;W Transmit holding reg. _IER equ 99h ;RW Interrupt-enable reg. _IIR equ 9ah ;R Interrupt ident. reg. _FCR equ 9ah ;W FIFO control reg. _LCR equ 9bh ;RW Line control reg. _MCR equ 9ch ;RW Modem control reg. _LSR equ 9dh ;RW Line status reg. _MMSR equ 9eh ;RW Modem status reg. (name clash w. FDC) _SCR equ 9fh ;N/A Scratch reg. (not avail. in XT) _DDL equ 98h ;RW Divisor LSB | with DLAB _DLM equ 99h ;RW Divisor MSB | set high 9ah ;R Interrupt ident. reg. _FCR equ 9ah ;W FIFO control reg. _LCR equ 9bh ;RW Line control reg. _MCR equ 9ch ;RW Modem control reg. _LSR equ 9dh ;RW Line status reg. _MMSR equ 9eh ;RW Modem status reg. (name clash w. FDC) _SCR equ 9fh ;N/A Scratch reg. (not avail. in XT) _DDL åååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååå page 90 title BIOS Loader ;===============================================================; ; ; ; B I O S I N S T A L L A T I O N T O D I S K ; ; ; ; D-X Designs Pty. Ltd. Perth, Western Australia ; ; Project: 112 Author: D R Brooks May, 1996 ; ; ; ;===============================================================; ;=======================================================================; ; ; ; D-X Designs Pty. Ltd. Perth, Western Australia ; ; Project: 112 May, 1996 ; ; ; ; Copyright (C) 1996 David R. Brooks ; ; ; ; This program is free software; you can redistribute it and/or ; ; modify it under the terms of the GNU General Public License ; ; as published by the Free Software Foundation; either version 2 ; ; of the License, or (at your option) any later version. ; ; ; ; This program is distributed in the hope that it will be useful, ; ; but WITHOUT ANY WARRANTY; without even the implied warranty of ; ; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ; ; GNU General Public License for more details. ; ; ; ; You should have received a copy of the GNU General Public License ; ; along with this program; if not, write to the Free Software ; ; Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. ; ; ; ;=======================================================================; .Comment $ This code is a "stub" which is loaded below the BIOS. It may be executed (via the debugger), and will write BIOS into the proper sectors on the disc. NB This code does NOT write CP/M on the disk. $ Z80182 equ 0 include Z180.INC include DPARM.INC include ASCII.INC include ROMHOOK.INC extrn bios, biostop ;Start & end of code load cseg entry: jp start ;Must be start of code ;------------------------------------------------------------ ; Starting positions on disk for the BIOS load: locn3: db 0, 13 ;Track, sector: 3" disks locn5: db 1, 4 ; ditto 5" disks ;============================================================ ; B I O S I N S T A L L A T I O N T O O L start: gdrv: ld hl,getdrv rst putmsg ;Drive No. call getdig ;Get it jr c,gdrv ;Repeat till good cp 2 ; & in range jr nc,gdrv ld d,a ;Drive in D push de ;Save it gtyp: ld hl,getype rst putmsg ;Drive type call getdig ;Get it jr c,gtyp ld hl,dpb3 ld iy,locn3 cp 3 ;3' drive? jr z,hdv ld hl,dpb5 ld iy,locn5 cp 5 ;Or, 5" ? jr nz,gtyp hdv: ld c,(hl) inc hl ld b,(hl) push bc pop ix ;IX -> DPB ld hl,biostop ;Compute no. of sectors to write ld bc,bios and a sbc hl,bc ;No. of code bytes ld bc,01ffh add hl,bc ;Round up ld b,h srl b ;No. of sectors in B ld hl,bios ;Load base pop de ;Drive in D ld c,(iy+0) ;Track ld e,(iy+1) ;Sector ld a,3 ;"Write" rst diskop ;Go write it jr c,fail ld hl,goodms rst putmsg jr ends fail: push af ld hl,badms rst putmsg pop af add a,'0' ;Make a digit rst putchr ;Send it ends: ld hl,nline rst putmsg ;Final newline ld a,1 ;Turn off drives rst diskop rst break ;To DEBUG when done getdrv: db 'Enter drive No. [0..3]:',0 getype: db 'Enter drive size [3/5]:',0 goodms: db 'Written successfully',0 badms: db 'Write failed: code= ',0 nline: db ascicr,0 ;------------------------------------------------------------- getdig: rst getchr ;Get something and a jr z,getdig ;Wait for it... cp asciesc call z,break ;ESC will abort anything sub '0' ;Else, must be a digit ret c cp 10 ccf push af ld hl,nline call putmsg ;Newline after pop af ret ;Back: CY=1 if invalid ;-------------------------------------------------------------- org entry+0ffh db 0 ;Align BIOS-proper correctly end ,dpbptr-dpbase add hl,bc ;HL -> DPBPTR ld a,e ;Given drive type cp -1 ;Requested? jr nz,dt1 ;This leaves CY=0 ld a,(hl) ;Yes inc hl ld h,(hl) ld l,a ;HL -> Drive Parameter Block push hl pop ix ;IX ditto ld e,(ix-3) ;Drive type ld bc,dpbofs add ix,bc ;Ptr. to hardware params. in IX ret ;Return them dt1: cp ntypes ;Set type: is it valid? ccf ret c ;Out of range push hl pop ix ;IX -> DPBPTR sla e ld d,0 ld hl,typtab add hl,de ;HL -> type ptr. ld a,(hl) inc hl ld h,(hl) ld l,a ;HL -> reqd. parameters or h ;Null pointer? scf ret z ;If so, error ld (ix),l ld (ix+1),h ;OK: set up the DPH pointer and a ret typtab: ;List of ptrs. to valid drive types dw dpblk5 ;D5_360 dw 0 ;D5_120 dw 0 ;D3_720 dw dpblk3 ;D3_144 dw 0 ;D3_288 ;---------------------------------------------------------- ; " O V E R L O A D E D " F U N C T I O N S ; The following are extensions to BIOS. They are invoked by ; calling the cold-boot entry, which has been overloaded after ; boot-up. Pass a function-code in C. ; Codes defined: ; 0 - Reset disk subsystem ; 1 - Return boot-drive no. in A ; 2 - Set Drive D to be of type E. If E = -1, this call ; returns as follows (and changes nothing in BIOS): ; E - currently set type for Drive D ; IX - points to hardware parameter table for Drive D overloads: ld a,c ;Function code in A and a jp z,diskop ;A=0: reset DISKOP dec a jr nz,ov2 ld a,(bootdv) ;A=1: return boot drive no. ret ov2: dec a scf ;Error if A != 2 call z,drivetype ;A=2: Set drive type ret ;---------------------------------------------------------- ; S E C T O R - M A P P I N G F U N C T I O N S ; The 3" drive treats each side as one track, while the 5" drive ; treats the entire "cylinder" as one track. This routine maps ; track & sector for these. ; Get logical address from (hsttrk, hstsec) ; Return physical track in C, sector in E sectrk equ hstspt/2 ;No. of sectors/track (not cyl.) mapsec: ;Generic entry: requires IX -> DPB ld hl,(mapptr) ;Point to slave routine ld bc,(hsttrk) ;C=track, B=sector jp (hl) ;Go to slave function remap5: ;Mapping for 5" disk ld a,b ;Logical sector sla c ;Cylinder => track cp sectrk ;Over 1 physical track? jr c,rm51 sub sectrk ;Yes: adjust down inc c ; & use top side rm51: inc a ;Physical sectors based 1 ld e,a ;Sector in E ret ;Returns physical track in C remap3: ;Mapping for 3" disk inc b ;Sector based 1 ld e,b ;Sector in E ret ;Track already in C $eject bootdv: ds 1 ;Boot-drive number ; not overlayed by boot-code ; localdata: ;BIOS workspace, overlaying thascicr equ 0dh ;ASCII characters ascilf equ 0ah ascibs equ 08h asciht equ 09h asciesc equ 1bh space equ ' ' ascdel equ 7fh åååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååå.xlist .z80 ; Macros to define the Z-180 extended instructions. ; ; D-X Designs Pty. Ltd. 4/12/95 D. R. Brooks ; ; WARNING! These instructions are NOT supported by ; Z80MU. However the IO instructions are ; necessary to ensure correct access to ; the internal machine registers, which ; fully decode all 16 address bits. ; ; Adapted from Zilog (file 182macro.lib) ; Enhanced to provide conditional definition for the ; following chips (define the appropriate symbol) ; Z80180 Default ; Z80S180 ; Z80181 ; Z80182 ; First, check only one CPU is defined ifdef Z80180 ?test equ 0 ;These will throw a "Multiple endif ; Definition" error if 2 CPU's ifdef Z80S180 ; are defined ?test equ 1 endif ifdef Z80181 ?test equ 2 endif ifdef Z80182 ?test equ 3 endif ;========== Z180 Internal Interrupt Vectors ======== ; The following vectors are offsets from the value ; loaded in IL, the Interrupt Vector Low register. VINT1 equ 0 ;External INT-1 pin VINT2 equ 2 ;External INT-2 pin VPRT0 equ 4 ;Timer 0 VPRT1 equ 6 ;Timer 1 VDMA0 equ 8 ;DMA Ch-0 VDMA1 equ 0ah ;DMA Ch-1 VCSIO equ 0ch ;Clocked serial I/O VASC0 equ 0eh ;Asynch. comms. Ch-0 VASC1 equ 10h ;Asynch. comms. Ch-1 ;========== Z180 System Control Registers ========== ;NB These registers may be relocated to multiples of ; 40H, by setting the IO Control Register (ICR = 3FH) ; The addresses below are valid with ICR=0 (else they ; are offsets from the ICR base value). ;ASCI Registers cntla0 equ 00h ;ASCI Control Reg A Ch0 cntla1 equ 01h ;ASCI Control Reg A Ch1 cntlb0 equ 02h ;ASCI Control Reg B Ch0 cntlb1 equ 03h ;ASCI Control Reg B Ch1 stat0 equ 04h ;ASCI Status Reg Ch0 stat1 equ 05h ;ASCI Status Reg Ch1 tdr0 equ 06h ;ASCI TX Data Reg Ch0 tdr1 equ 07h ;ASCI TX Data Reg Ch1 rdr0 equ 08h ;ASCI RX Data Reg Ch0 rdr1 equ 09h ;ASCI RX Data Reg Ch1 brk0 equ 12h ;Break Control Reg Ch0 brk1 equ 13h ;Break Control reg Ch1 ;CSI/O Registers cntr equ 0ah ;CSI/O Control Reg trdr equ 0bh ;CSI/O TX/RX Data Reg ;Timer Registers tmdr0l equ 0ch ;Timer Data Reg Ch0-Low tmdr0h equ 0dh ;Timer Data Reg Ch0-High rldr0l equ 0eh ;Timer Reload Reg Ch0-Low rldr0h equ 0fh ;Timer Reload Reg Ch0-High tcr equ 10h ;Timer Control Reg tmdr1l equ 14h ;Timer Data Reg Ch1-Low tmdr1h equ 15h ;Timer Data Reg Ch1-High rldr1l equ 16h ;Timer Reload Reg Ch1-Low rldr1h equ 17h ;Timer Reload Reg Ch1-High frc equ 18h ;Free-Running Counter ifdef Z80S180 ccr equ 1fh ;CPU Control Reg endif ;DMA Registers sar0l equ 20h ;DMA Source Addr Reg Ch0-Low sar0h equ 21h ;DMA Source Addr Reg Ch0-High sar0b equ 22h ;DMA Source Addr Reg Ch0-B dar0l equ 23h ;DMA Destn Addr Reg Ch0-Low dar0h equ 24h ;DMA Destn Addr Reg Ch0-High dar0b equ 25h ;DMA Destn Addr Reg Ch0-B bcr0l equ 26h ;DMA Byte Count Reg Ch0-Low bcr0h equ 27h ;DMA Byte Count Reg Ch0-High mar1l equ 28h ;DMA Memory Addr Reg Ch1-Low mar1h equ 29h ;DMA Memory Addr Reg Ch1-High mar1b equ 2ah ;DMA Memory Addr Reg Ch1-B iar1l equ 2bh ;DMA I/O Addr Reg Ch1-Low iar1h equ 2ch ;DMA I/O Addr Reg Ch1-High bcr1l equ 2eh ;DMA Byte Count Reg Ch1-Low bcr1h equ 2fh ;DMA Byte Count Reg Ch1-High dstat equ 30h ;DMA Status Reg dmode equ 31h ;DMA Mode Reg dcntl equ 32h ;DMA/WAIT Control Reg ;System Control Registers il equ 33h ;INT Vector Low Reg itc equ 34h ;INT/TRAP Control Reg rcr equ 36h ;Refresh Control Reg cbr equ 38h ;MMU Common Base Reg bbr equ 39h ;MMU Bank Base Reg cbar equ 3ah ;MMU Common/Bank Area Reg omcr equ 3eh ;Operation Mode Control Reg icr equ 3fh ;I/O Control Reg ifdef Z80181 ;Features unique to Z80181 ;Integral PIO device p1ddr equ 0e0h ;Data Direction Reg 1 p1dp equ 0e1h ;Port 1 Data p2ddr equ 0e2h ;Data Direction Reg 2 p2dp equ 0e3h ;Port 2 Data ;Integral CTC device ctc0 equ 0e4h ;CTC Channel 0 ctc1 equ 0e5h ;CTC Channel 1 ctc2 equ 0e6h ;CTC Channel 2 ctc3 equ 0e7h ;CTC Channel 3 scccr equ 0e8h ;SCC Control Reg sccdr equ 0e9h ;SCC Data Reg ;Chip-select output pins ramubr equ 0eah ;RAM Upper Boundary ramlbr equ 0ebh ;RAM Lower Boundary rombr equ 0ech ;ROM Boundary scr equ 0edh ;System Control Reg endif ifdef Z80182 ;Features unique to Z80182 ccr equ 1fh ;CPU control reg. intype equ 0dfh ;Interrupt edge/pin mux reg. wsgcs equ 0d8h ;Wait-State Generator CS enh182 equ 0d9h ;Z80182 Enhancements Reg pinmux equ 0dfh ;Interrupt Edge/Pin Mux Reg ramubr equ 0e6h ;RAM End Boundary ramlbr equ 0e7h ;RAM Start Boundary rombr equ 0e8h ;ROM Boundary fifoctl equ 0e9h ;FIFO Control Reg rtotc equ 0eah ;RX Time-Out Time Const ttotc equ 0ebh ;TX Time-Out Time Const fcr equ 0ech ;FIFO Register scr equ 0efh ;System Pin Control rbr equ 0f0h ;MIMIC RX Buffer Reg thr equ 0f0h ;MIMIC TX Holding Reg ier equ 0f1h ;Interrupt Enable Reg lcr equ 0f3h ;Line Control Reg mcr equ 0f4h ;Modem Control Reg lsr equ 0f5h ;Line Status Reg msr equ 0f6h ;Modem Status Reg mscr equ 0f7h ;MIMIC Scratch Reg dlatl equ 0f8h ;Divisor latch LS dlatm equ 0f9h ;Divisor latch MS ttcr equ 0fah ;TX Time Constant rtcr equ 0fbh ;RX Time Constant ivec equ 0fch ;MIMIC Interrupt Vector mimie equ 0fdh ;MIMIC Interrupt Enable Reg iusip equ 0feh ;MIMIC Interrupt Under-Service Reg mmcr equ 0ffh ;MIMIC Master Control Reg ;Z80182 PIO Registers ddra equ 0edh ;Data Direction Reg A dra equ 0eeh ;Port A Data ddrb equ 0e4h ;Data Direction Reg B drb equ 0e5h ;Port B Data ddrc equ 0ddh ;Data Direction Reg C drc equ 0deh ;Port C data ;ESCC Registers sccacnt equ 0e0h ;ESCC Control Channel A sccad equ 0e1h ;ESCC Data Channel A sccbcnt equ 0e2h ;ESCC Control Channel B sccbd equ 0e3h ;ESCC Data Channel B endif ;[E]SCC Internal Register Definitions RR0 equ 00h RR1 equ 01h RR2 equ 02h RR3 equ 03h RR6 equ 06h RR7 equ 07h RR10 equ 0ah RR12 equ 0ch RR13 equ 0dh RR15 equ 0fh WR0 equ 00h WR1 equ 01h WR2 equ 02h WR3 equ 03h WR4 equ 04h WR5 equ 05h WR6 equ 06h WR7 equ 07h WR9 equ 09h WR10 equ 0ah WR11 equ 0bh WR12 equ 0ch WR13 equ 0dh WR14 equ 0eh WR15 equ 0fh ;==== Define the additional Z-180 instructions ===== ;Machine registers (internal use only) ?b equ 0 ?c equ 1 ?d equ 2 ?e equ 3 ?h equ 4 ?l equ 5 ?a equ 7 ??bc equ 0 ??de equ 1 ??hl equ 2 ??sp equ 3 slp macro db 0edh db 76h endm mlt macro ?r db 0edh db 4ch+(??&?r AND 3) SHL 4 endm in0 macro ?r, ?p db 0edh db 0+(?&?r AND 7) SHL 3 db ?p endm out0 macro ?p, ?r db 0edh db 1+(?&?r AND 7) SHL 3 db ?p endm otim macro db 0edh db 83h endm otimr macro db 0edh db 93h endm otdm macro db 0edh db 8bh endm otdmr macro db 0edh db 9bh endm tstio macro ?p db 0edh db 74h db ?p endm tst macro ?r db 0edh ifidn ,<(hl)> db 34h else ifdef ?&?r db 4+(?&?r AND 7) SHL 3 else db 64h db ?r endif endif endm .list  macro db 0edh db 9bh endm tstio macro ?p db 0edh db 74h db ?p endm tst macro ?r db 0edh ifidn ,<(hl)> db 34h else ifdef ?&?r db 4+(?&?r AND 7) SHL 3 else db 64h db ?r endif endif endm .liåååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååå.xlist .z80 ; Macros to define the Z-180 extended instructions. ; ; D-X Designs Pty. Ltd. 4/12/95 D. R. Brooks ; ; WARNING! These instructions are NOT supported by ; Z80MU. However the IO instructions are ; necessary to ensure correct access to ; the internal machine registers, which ; fully decode all 16 address bits. ; ; Adapted from Zilog (file 182macro.lib) ; Enhanced to provide conditional definition for the ; following chips (define the appropriate symbol) ; Z80180 Default ; Z80S180 ; Z80181 ; Z80182 ; First, check only one CPU is defined ifdef Z80180 ?test equ 0 ;These will throw a "Multiple endif ; Definition" error if 2 CPU's ifdef Z80S180 ; are defined ?test equ 1 endif ifdef Z80181 ?test equ 2 endif ifdef Z80182 ?test equ 3 endif ;========== Z180 Internal Interrupt Vectors ======== ; The following vectors are offsets from the value ; loaded in IL, the Interrupt Vector Low register. VINT1 equ 0 ;External INT-1 pin VINT2 equ 2 ;External INT-2 pin VPRT0 equ 4 ;Timer 0 VPRT1 equ 6 ;Timer 1 VDMA0 equ 8 ;DMA Ch-0 VDMA1 equ 0ah ;DMA Ch-1 VCSIO equ 0ch ;Clocked serial I/O VASC0 equ 0eh ;Asynch. comms. Ch-0 VASC1 equ 10h ;Asynch. comms. Ch-1 ;========== Z180 System Control Registers ========== ;NB These registers may be relocated to multiples of ; 40H, by setting the IO Control Register (ICR = 3FH) ; The addresses below are valid with ICR=0 (else they ; are offsets from the ICR base value). ;ASCI Registers cntla0 equ 00h ;ASCI Control Reg A Ch0 cntla1 equ 01h ;ASCI Control Reg A Ch1 cntlb0 equ 02h ;ASCI Control Reg B Ch0 cntlb1 equ 03h ;ASCI Control Reg B Ch1 stat0 equ 04h ;ASCI Status Reg Ch0 stat1 equ 05h ;ASCI Status Reg Ch1 tdr0 equ 06h ;ASCI TX Data Reg Ch0 tdr1 equ 07h ;ASCI TX Data Reg Ch1 rdr0 equ 08h ;ASCI RX Data Reg Ch0 rdr1 equ 09h ;ASCI RX Data Reg Ch1 brk0 equ 12h ;Break Control Reg Ch0 brk1 equ 13h ;Break Control reg Ch1 ;CSI/O Registers cntr equ 0ah ;CSI/O Control Reg trdr equ 0bh ;CSI/O TX/RX Data Reg ;Timer Registers tmdr0l equ 0ch ;Timer Data Reg Ch0-Low tmdr0h equ 0dh ;Timer Data Reg Ch0-High rldr0l equ 0eh ;Timer Reload Reg Ch0-Low rldr0h equ 0fh ;Timer Reload Reg Ch0-High tcr equ 10h ;Timer Control Reg tmdr1l equ 14h ;Timer Data Reg Ch1-Low tmdr1h equ 15h ;Timer Data Reg Ch1-High rldr1l equ 16h ;Timer Reload Reg Ch1-Low rldr1h equ 17h ;Timer Reload Reg Ch1-High frc equ 18h ;Free-Running Counter ifdef Z80S180 ccr equ 1fh ;CPU Control Reg endif ;DMA Registers sar0l equ 20h ;DMA Source Addr Reg Ch0-Low sar0h equ 21h ;DMA Source Addr Reg Ch0-High sar0b equ 22h ;DMA Source Addr Reg Ch0-B dar0l equ 23h ;DMA Destn Addr Reg Ch0-Low dar0h equ 24h ;DMA Destn Addr Reg Ch0-High dar0b equ 25h ;DMA Destn Addr Reg Ch0-B bcr0l equ 26h ;DMA Byte Count Reg Ch0-Low bcr0h equ 27h ;DMA Byte Count Reg Ch0-High mar1l equ 28h ;DMA Memory Addr Reg Ch1-Low mar1h equ 29h ;DMA Memory Addr Reg Ch1-High mar1b equ 2ah ;DMA Memory Addr Reg Ch1-B iar1l equ 2bh ;DMA I/O Addr Reg Ch1-Low iar1h equ 2ch ;DMA I/O Addr Reg Ch1-High bcr1l equ 2eh ;DMA Byte Count Reg Ch1-Low bcr1h equ 2fh ;DMA Byte Count Reg Ch1-High dstat equ 30h ;DMA Status Reg dmode equ 31h ;DMA Mode Reg dcntl equ 32h ;DMA/WAIT Control Reg ;System Control Registers il equ 33h ;INT Vector Low Reg itc equ 34h ;INT/TRAP Control Reg rcr equ 36h ;Refresh Control Reg cbr equ 38h ;MMU Common Base Reg bbr equ 39h ;MMU Bank Base Reg cbar equ 3ah ;MMU Common/Bank Area Reg omcr equ 3eh ;Operation Mode Control Reg icr equ 3fh ;I/O Control Reg ifdef Z80181 ;Features unique to Z80181 ;Integral PIO device p1ddr equ 0e0h ;Data Direction Reg 1 p1dp equ 0e1h ;Port 1 Data p2ddr equ 0e2h ;Data Direction Reg 2 p2dp equ 0e3h ;Port 2 Data ;Integral CTC device ctc0 equ 0e4h ;CTC Channel 0 ctc1 equ 0e5h ;CTC Channel 1 ctc2 equ 0e6h ;CTC Channel 2 ctc3 equ 0e7h ;CTC Channel 3 scccr equ 0e8h ;SCC Control Reg sccdr equ 0e9h ;SCC Data Reg ;Chip-select output pins ramubr equ 0eah ;RAM Upper Boundary ramlbr equ 0ebh ;RAM Lower Boundary rombr equ 0ech ;ROM Boundary scr equ 0edh ;System Control Reg endif ifdef Z80182 ;Features unique to Z80182 ccr equ 1fh ;CPU control reg. intype equ 0dfh ;Interrupt edge/pin mux reg. wsgcs equ 0d8h ;Wait-State Generator CS enh182 equ 0d9h ;Z80182 Enhancements Reg pinmux equ 0dfh ;Interrupt Edge/Pin Mux Reg ramubr equ 0e6h ;RAM End Boundary ramlbr equ 0e7h ;RAM Start Boundary rombr equ 0e8h ;ROM Boundary fifoctl equ 0e9h ;FIFO Control Reg rtotc equ 0eah ;RX Time-Out Time Const ttotc equ 0ebh ;TX Time-Out Time Const fcr equ 0ech ;FIFO Register scr equ 0efh ;System Pin Control rbr equ 0f0h ;MIMIC RX Buffer Reg thr equ 0f0h ;MIMIC TX Holding Reg ier equ 0f1h ;Interrupt Enable Reg lcr equ 0f3h ;Line Control Reg mcr equ 0f4h ;Modem Control Reg lsr equ 0f5h ;Line Status Reg msr equ 0f6h ;Modem Status Reg mscr equ 0f7h ;MIMIC Scratch Reg dlatl equ 0f8h ;Divisor latch LS dlatm equ 0f9h ;Divisor latch MS ttcr equ 0fah ;TX Time Constant rtcr equ 0fbh ;RX Time Constant ivec equ 0fch ;MIMIC Interrupt Vector mimie equ 0fdh ;MIMIC Interrupt Enable Reg iusip equ 0feh ;MIMIC Interrupt Under-Service Reg mmcr equ 0ffh ;MIMIC Master Control Reg ;Z80182 PIO Registers ddra equ 0edh ;Data Direction Reg A dra equ 0eeh ;Port A Data ddrb equ 0e4h ;Data Direction Reg B drb equ 0e5h ;Port B Data ddrc equ 0ddh ;Data Direction Reg C drc equ 0deh ;Port C data ;ESCC Registers sccacnt equ 0e0h ;ESCC Control Channel A sccad equ 0e1h ;ESCC Data Channel A sccbcnt equ 0e2h ;ESCC Control Channel B sccbd equ 0e3h ;ESCC Data Channel B endif ;[E]SCC Internal Register Definitions RR0 equ 00h RR1 equ 01h RR2 equ 02h RR3 equ 03h RR6 equ 06h RR7 equ 07h RR10 equ 0ah RR12 equ 0ch RR13 equ 0dh RR15 equ 0fh WR0 equ 00h WR1 equ 01h WR2 equ 02h WR3 equ 03h WR4 equ 04h WR5 equ 05h WR6 equ 06h WR7 equ 07h WR9 equ 09h WR10 equ 0ah WR11 equ 0bh WR12 equ 0ch WR13 equ 0dh WR14 equ 0eh WR15 equ 0fh ;==== Define the additional Z-180 instructions ===== ;Machine registers (internal use only) ?b equ 0 ?c equ 1 ?d equ 2 ?e equ 3 ?h equ 4 ?l equ 5 ?a equ 7 ??bc equ 0 ??de equ 1 ??hl equ 2 ??sp equ 3 slp macro db 0edh db 76h endm mlt macro ?r db 0edh db 4ch+(??&?r AND 3) SHL 4 endm in0 macro ?r, ?p db 0edh db 0+(?&?r AND 7) SHL 3 db ?p endm out0 macro ?p, ?r db 0edh db 1+(?&?r AND 7) SHL 3 db ?p endm otim macro db 0edh db 83h endm otimr macro db 0edh db 93h endm otdm macro db 0edh db 8bh endm otdmr macro db 0edh db 9bh endm tstio macro ?p db 0edh db 74h db ?p endm tst macro ?r db 0edh ifidn ,<(hl)> db 34h else ifdef ?&?r db 4+(?&?r AND 7) SHL 3 else db 64h db ?r endif endif endm .list  macro db 0edh db 9bh endm tstio macro ?p db 0edh db 74h db ?p endm tst macro ?r db 0edh ifidn ,<(hl)> db 34h else ifdef ?&?r db 4+(?&?r AND 7) SHL 3 else db 64h db ?r endif endif endm .liåååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååå;Standard drive-parameter block ; Format is same as MS-DOS BIOS SPEC_1 equ 0 ;"Specify" byte 1 SPEC_2 equ 1 ;"Specify" byte 2 MTROFF equ 2 ;Wait before stop motor SECSZE equ 3 ;Bytes/sector (must be > 0) EOT equ 4 ;Final sector no. GPL equ 5 ;Gap length DTL equ 6 ;Data transfer length GAPFMT equ 7 ;Gap-3 length: Format DATFMT equ 8 ;Data fill: Format SETTLE equ 9 ;Head-settle time (mS) MTRON equ 10 ;Motor-start (* 1/8 sec.) MAXCYL equ 11 ;Max. cylinder no. DRATE equ 12 ;Data rate  EOT equ 4 ;Final sector no. GPL equ 5 ;Gap length DTL equ 6 ;Data transfer length GAPFMT equ 7 ;Gap-3 length: Format DATFMT equ 8 ;Data fill: Format SETTLE equ 9 ;Head-settle åååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååå; Standard drive-type identifiers ntypes equ 5 ;No. of defined types D5_360 equ 0 ;5", 360kB D5_120 equ 1 ;5", 1.2MB D3_720 equ 2 ;3", 720kB D3_144 equ 3 ;3", 1.44MB D3_288 equ 4 ;3", 2.88MB ROMHOOK INCpBIOS HEX,qrsBIOS MAC€tuvwxyz{BIOS MAC5|}~BIOS SUB€BIOSTOP MAC�DPARM INC‚DRVTYPE INCååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååascicr equ 0dh ;ASCII characters ascilf equ 0ah ascibs equ 08h asciht equ 09h asciesc equ 1bh space equ ' ' ascdel equ 7fh åååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååå.comment $ R O M - M O N I T O R E X T E R N A L H O O K S Definitions of code-hooks for external entry to the ROM. These are intended for use by OS boot-sectors, etc. They MUST NOT be used by BIOS and similar code, since the ROM will be disabled. The symbolic names are those used in the ROM code for these routines. $ diskop equ 8 ;JP to diskette handler dpb3 equ diskop+3 ;Ptr. to 3" D.P.B. dpb5 equ dpb3+2 ;Ptr. to 5" D.P.B. getchr equ 10h ;Read console to A (or 0) putchr equ 18h ;Output A on console putmsg equ 20h ;Output ASCIIZ (HL) on console break equ 38h ;ROM breakpoint trap ;----------------------------------------------------------------------- ill be disabled. The symbolic names are those used in the ROM code for these routines. $ diskop equ 8 ;JP to diskette handler dpb3 equ diskop+3 ;Ptr. to 3" D.P.B. dpb5 equ dpb3+2 ;Ptr. to 5" D.P.B. getchr equ 10h ;Read console to A åååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååå:20800000CD0A8000E00F00C300F6FDE1FD4602FD6E00FD6601D50E001E02DD7E04B8301510 :20802000C53E02DD460405C5D5CFD1C1DA7780F190470C1E013E02CFF5383CF1D13EC0ED2B :20804000393A21000001401F757EBD2008EDA1EA4880C307803EC8ED393A215F80E7C9466E :2080600061696C65642074657374696E67206C6F772052414D0D00C1C1217E80E7C945725C :20808000726F722072656164696E67204F7065726174696E672053797374656D0D00000018 :2080A0000000000000000000000000000000000000000000000000000000000000000000C0 :2080C0000000000000000000000000000000000000000000000000000000000000000000A0 :2080E000000000000000000000000000000000000000000000000000000000000000000080 :2081000000000000000000000000000000000000000000000000000000000000000000005F :2081200000000000000000000000000000000000000000000000000000000000000000003F :2081400000000000000000000000000000000000000000000000000000000000000000001F :208160000000000000000000000000000000000000000000000000000000000000000000FF :208180000000000000000000000000000000000000000000000000000000000000000000DF :2081A0000000000000000000000000000000000000000000000000000000000000000000BF :2081C00000000000000000000000000000000000000000000000000000000000000000009F :2081E00000000000000000000000000000000000000000000000000000000000000000007F :20820000216482E7CDBF8238F7FE0230F357D5217C82E7CDBF8238F7210B00FE0328072124 :208220000D00FE0520E94E2346C5DDE121008001FF01AF86EDA1EA3382ED4432FF81D12112 :2082400000803E0306010E001E01CF3806219482E71809F521A982E7F1C630DF21BD82E7A8 :208260003E01CFFF456E746572206472697665204E6F2E205B302E2E335D3A00456E746551 :20828000722064726976652073697A65205B332F355D3A005772697474656E2073756363F3 :2082A00065737366756C6C79005772697465206661696C65643A20636F64653D000D00D7A1 :1782C000A728FCFE1BCC3800D630D8FE0A3FF521BD82CD2000F1C99E :00000001FF DBF8238F7210B00FE0328072124 :208220000D00FE0520E94E2346C5DDE121008001FF01AF86EDA1EA3382ED4432FF81D12112 :2082400000803E0306010E001E01CF3806219482E71809F521A982E7F1C630DF21BD82E7A8 :208260003E01CFFF456E746572206472697665204E6F2E205B302E2E335D3A00456E7465 page 90 title P112 OS Boot Sector ;===============================================================; ; ; ; B O O T - S E C T O R C O D E ; ; ; ;===============================================================; ;=======================================================================; ; ; ; D-X Designs Pty. Ltd. Perth, Western Australia ; ; Project: 112 May, 1996 ; ; ; ; Copyright (C) 1996 David R. Brooks ; ; ; ; This program is free software; you can redistribute it and/or ; ; modify it under the terms of the GNU General Public License ; ; as published by the Free Software Foundation; either version 2 ; ; of the License, or (at your option) any later version. ; ; ; ; This program is distributed in the hope that it will be useful, ; ; but WITHOUT ANY WARRANTY; without even the implied warranty of ; ; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ; ; GNU General Public License for more details. ; ; ; ; You should have received a copy of the GNU General Public License ; ; along with this program; if not, write to the Free Software ; ; Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. ; ; ; ;=======================================================================; .Comment $ Boot-sector code. This is loaded & executed at 8000H. The incoming machine state is: IX - Points to hardware DPB for boot drive D - Boot drive no. E - Boot-drive type-code SP - Valid stack-frame The stack is valid, however it should be used with care: being in high memory, it MAY be overwritten as CP/M loads (usually not: it is in the blank data area). This routine need not post error messages: a simple Return will generate one. Boot sectors are sumchecked. The 8-bit sum over all 512 bytes must be zero, else the ROM will not run this code. (As a test-aid, a sumcheck generator is included). The boot-drive number is passed in D as a parameter to BIOS, which should remember to re-boot from it. This code's final task before triggering BIOS, is to re-map memory, & kill the ROM. The code assumes a physical disk sector of 512 bytes. ------------------------------------------------------------------------- If the "testing" variable is defined, the code will return to the ROM after loading the OS, but before relocating it. The OS image may be examined in memory. The test-code includes a hook at Bootsec + 1F0. A jump to this will disable the ROM, and jump to BIOS (ie will complete the transfer of control to CP/M. ------------------------------------------------------------------------- Above the boot-sector code (ie 512 bytes on), is a utility (intended to be run from the ROM debugger) which will compute a correct sumcheck, then write the boot code. $ Z80182 equ 0 include Z180.INC include DPARM.INC include ASCII.INC include ROMHOOK.INC ;testing equ 0 ;Define to stop after loading OS ramon equ 0c0h ;Value to disable ROM (for MMU) ramoff equ 0c8h ;Value to restore ROM if error ;Offsets in standard header, below ldbase equ 0 ;Final OS load address nsects equ 2 ;No. of sectors to load ;======================================================================= ; ; Standard boot-sector header. This only need be changed in most cases, ; to accommodate different load configurations. ; ;======================================================================= cseg begsec: ;Start of boot-code call start ;Mark: & pass header ;Control Area: offset from IY dw 0e000h ;0 Load base dw 15 ;2 No. of sectors to load trig: jp 0f600h ;4 Jump to OS start ;======================================================================= start: ifdef testing push de ld hl,signon rst putmsg ;Sign-on msg. pop de endif pop iy ;IY -> controls, as above ld b,(iy+nsects) ;No. of 512-byte sectors reqd. ld l,(iy+ldbase) ld h,(iy+ldbase+1) ;Load addess ; Code fragment to boot in CP/M, allowing for 1 or 2 system tracks. ; On entry, D = Drive ; E = Drive-type code (for BIOS) ; B = Total sectors reqd. ; IX -> DPB ; HL -> Load-base push de ld c,0 ;First system track ld e,2 ;After boot sector ld a,(ix+EOT) ;Final sector, this track cp b ;Is that enough? jr nc,onetrk push bc ;Save total sectors ld a,2 ;No: read an extra track ld b,(ix+EOT) ;Sectors on this track dec b ;Skipping the first push bc push de rst diskop ;Read 1st track pop de pop bc jp c,flt ;Errors pop af ;Total sectors reqd. (B -> A) sub b ;Less those already read ld b,a inc c ;Next track ld e,1 ;Start at the beginning onetrk: ld a,2 ;"Read" last/only track rst diskop push af ;Keep it in balance jr c,flt ;Errors pop af pop de ;Drive & type for BIOS ;Loaded OK: Kill the ROM ld a,ramon out0 (cbar),a ;Now check we have set up the RAM ld hl,0 ld bc,8000 ts: ld (hl),l ld a,(hl) cp l ;Read it OK? jr nz,bad cpi ;HL++, BC--, set P/V jp pe,ts ifdef testing ;<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< ld a,ramoff out0 (cbar),a ;Test: put ROM back ld hl,trapms ;Report rst putmsg ret ; & back to ROM trapms: db 'Load halted for testing',ascicr,0 signon: db 'Running boot sector',ascicr,0 endif ;<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< jp trig ;OK: go run the OS bad: ld a,ramoff ;RAM test failed: ROM again out0 (cbar),a ld hl,badram rst putmsg ret ;Back to ROM badram: db 'Failed testing low RAM',ascicr,0 ;------------------------------------------------------- flt: ;Load failure pop bc ;Balance stack (discard) pop bc ;Up 2 levels ld hl,ldfld rst putmsg ret ;Back to ROM ldfld: db 'Error reading Operating System',ascicr,0 ;============================================================ ifdef testing ;<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< org begsec+1f0h ld a,ramon out0 (cbar),a ;Kill the ROM jp trig ;Go run BIOS endif ;<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< ;============================================================ ; B O O T - S E C T O R I N S T A L L A T I O N org begsec+200h ;Load beyond the boot sector sumloc equ begsec+1ffh ;Sumcheck locn. gdrv: ld hl,getdrv rst putmsg ;Drive No. call getdig ;Get it jr c,gdrv ;Repeat till good cp 2 ; & in range jr nc,gdrv ld d,a ;Drive in D push de ;Save it gtyp: ld hl,getype rst putmsg ;Drive type call getdig ;Get it jr c,gtyp ld hl,dpb3 cp 3 ;3' drive? jr z,hdv ld hl,dpb5 cp 5 ;Or, 5" ? jr nz,gtyp hdv: ld c,(hl) inc hl ld b,(hl) push bc pop ix ;IX -> DPB ;Compute & place sumcheck ld hl,begsec ;Sumcheck the boot sector ld bc,1ffh ;Length loaded (excl. sum) xor a slp: add a,(hl) ;Run the check cpi ;HL++, BC--, set P/V jp pe,slp ;All neg ;Negate all this ld (sumloc),a ;Place sum pop de ;Got drive back ld hl,begsec ;Set up to write ld a,3 ;"Write" ld b,1 ;1 sector ld c,0 ;Track 0 ld e,1 ;1st sector rst diskop ;Go write it jr c,fail ld hl,goodms rst putmsg jr ends fail: push af ld hl,badms rst putmsg pop af add a,'0' ;Make a digit rst putchr ;Send it ends: ld hl,nline rst putmsg ;Final newline ld a,1 ;Turn off drives rst diskop rst break ;To DEBUG when done getdrv: db 'Enter drive No. [0..3]:',0 getype: db 'Enter drive size [3/5]:',0 goodms: db 'Written successfully',0 badms: db 'Write failed: code=',0 nline: db ascicr,0 ;------------------------------------------------------------- getdig: rst getchr ;Get something and a jr z,getdig ;Wait for it... cp asciesc call z,break ;ESC will abort anything sub '0' ;Else, must be a digit ret c cp 10 ccf push af ld hl,nline call putmsg ;Newline after pop af ret ;Back: CY=1 if invalid end m80 bootsec,bootsec=bootsec l80 /p:8000,/d:8400,bootsec,bootsec/n:p/y/x/e README TXT’“ASCII INC”Z180 INCE•–—˜™Z180 INCEš›œ�žDPARM INCŸDRVTYPE INC ASCII INC¡ROMHOOK INC¢BOOTSEC HEX£BOOTSEC MAC@¤¥¦§BOOTSEC SUBåååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååå CP/M boot sector for the P112 boards. This code is loaded on Track 0, Sector 1 of a bootable disk. It is loaded by the ROM at locn. 8000H (the lowest RAM location accessible from the ROM). This code will load CP/M and BIOS from the remainder of the system track. The code is very short: all IO is handled by ROM services. The BIOS code is designed not to overload the top 200H RAM locations, which are used by the ROM code. This ensures that the ROM remains usable after CP/M is loaded, and can resume control if errors occur in the loading. Once CP/M is successfully loaded, the Z80182 memory map is altered to disable the ROM, and substitute the lower 32kB of RAM. The entire 64kB logical space is now filled with RAM. From this point on, ROM services are unavailable. Following the boot-sector code itself, is a self-loader. If the entire .HEX file is loaded into RAM using the ROM's "hex upload" function, a GO to locn. 8200H will execute this loader, which will copy the boot-sector code onto a disk. ered to disable the ROM, and substitute the lower 32kB of RAM. The entire 64kB logical space is now filled with RAM. From this point on, ROM services are unavailable. Following the boot-sector code itself, is a self-loader. If the entire .HEX file is loaded into RAM using the ROM's "hex upload" function, a GO to locn. 8200H will execute this loader, which will copy the åååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååå .xlist .sall ; ; Macros for CCP+, DOS+. Intel mnemnonics, z80 opcodes ; Needed with M80, not necessary with SLRMAC. Allows slight ; source revision to assemble with MAC and RMAC also. a equ 7 b equ 0 c equ 1 d equ 2 e equ 3 h equ 4 l equ 5 m equ 6 ; pushix macro db 0ddh,0e5h endm popix macro db 0ddh,0e1h endm pushiy macro db 0fdh,0e5h endm popiy macro db 0fdh,0e1h endm inxix macro db 0ddh,023h endm dcxix macro db 0ddh,02bh endm jrc macro where db 038h db where-$-1 endm jr macro where db 018h db where-$-1 endm jrz macro where db 028h db where-$-1 endm jrnc macro where db 030h db where-$-1 endm jrnz macro where db 020h db where-$-1 endm djnz macro where db 010h db where-$-1 endm bit macro num,reg db 0cbh,040h + num shl 3 + reg endm res macro num,reg db 0cbh,080h + reg + num shl 3 endm bitx macro num,disp db 0ddh,0cbh,disp,046h+num shl 3 endm setx macro num,disp db 0ddh,0cbh,disp,0c6h+num shl 3 endm resx macro num,disp db 0ddh,0cbh,disp,086h+num shl 3 endm bity macro num,disp db 0fdh,0cbh,disp,046h+num shl 3 endm sety macro num,disp db 0fdh,0cbh,disp,0c6h+num shl 3 endm resy macro num,disp db 0fdh,0cbh,disp,086h+num shl 3 endm ldx macro reg,disp db 0ddh mov reg,m db disp endm stx macro reg,disp db 0ddh mov m,reg db disp endm ldy macro reg,disp db 0fdh mov reg,m db disp endm sty macro reg,disp db 0fdh mov m,reg db disp endm andx macro disp db 0ddh ana m db disp endm subx macro disp db 0ddh sub m db disp endm sbcx macro disp db 0ddh sbb m db disp endm cmpx macro disp db 0ddh cmp m db disp endm inrx macro disp db 0ddh inr m db disp endm xorx macro disp db 0ddh xra m db disp endm lbcd macro addr db 0edh,04bh dw addr endm sbcd macro addr db 0edh,043h dw addr endm lded macro addr db 0edh,05bh dw addr endm sded macro addr db 0edh,053h dw addr endm lspd macro addr db 0edh,07bh dw addr endm sspd macro addr db 0edh,073h dw addr endm lixd macro addr db 0ddh lhld addr endm sixd macro addr db 0ddh shld addr endm ldir macro db 0edh,0b0h endm ralr macro reg db 0cbh,010h+reg endm rarr macro reg db 0cbh,018h+reg endm slar macro reg db 0cbh,020h+reg endm srlr macro reg db 0cbh,038h+reg endm dsbc macro reg db 0edh,042h+reg shl 3 endm .list åååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååå page 90 title CCP+ v2.2 (c) by C.B Falconer (1986 Oct. 27) ; ; Z80 cpu required. Use CCPLUS 1.7 for 8080/8085 ; ; SEE CCP+.DOC for features, etc. Assembles as is with M80 or SLRMAC. ; For M80 Z80.LIB must be available and must rename source 'CCPLUS'. ; ; 2.2 86/10/27. Search suppression for DOS+ use. Added KILL command ; to abort submit/job operations. CCP+ knows how executed. cbf ; 2.1 86/10/11 Fixed so "-b:xyz name" executes name in b:xyz.lbr ; (with CCPXTEND mounted). Was aborting. Added non-wheel drive ; access checks. Commands suppressed under wheel now search for ; transients, and transient execution is non-suppressable. Now a ; du consisting of ":" alone specifies default. Fixed REN. cbf ; 2.0 86/10/2 Preliminary beta test release. Complete rewrite of 1.7 ; cseg ccpver equ 22; UPDATE with each revision true equ -1 false equ not true debug equ false; true allows linking to existing code cr equ 0dh lf equ 0ah tab equ 09h eof equ 01ah ; ; User configurable values. See patch area at end. doupsft equ true; FALSE for NO command line upshift ; at initialization. subuser equ 0; User # for $$$.sub files maxuser equ 31; Max user when wheel set whluser equ 13; Max user when wheel not set dcols equ 5; columns for directory display ; END user options ; ; For M80 the following must be upper case. INCLUDE Z80.LIB ; ; CPM/DOS+ syscall values @cin equ 1 @cout equ 2 @instg equ 10 @csta equ 11 @rsdsk equ 13 @seldk equ 14 @fopen equ 15 @fclose equ 16 @srch1 equ 17 @srchn equ 18 @fpurg equ 19 @rdseq equ 20 @wtseq equ 21 @fnew equ 22 @frenm equ 23 @curdk equ 25 @stdma equ 26 @usrcd equ 32 ; ; CPM/DOS+ definitions reboot equ 0 iobyte equ reboot+3 defdu equ reboot+4; user/drive fields if debug; link separately extrn sysfnc else sysfnc equ reboot+5; connector to BDOS system endif defcbk equ reboot+05ch defdma equ reboot+080h tpa equ reboot+100h ; ; Macros tdig macro rlc rlc rlc rlc endm ; ; --------- Start ---------- ; ; Standard entry points. The "cold" entry is auto-patched to "both" ; at initial execution, for single sign-on and to cater to peculiar ; Osborne 1 peculiar cold boot mechanism. begin: jmp cold; execute command jmp warm; clear command line ; ; This MUST start at begin+6 for compatability. ibfsiz: db 126; size of input buffer. space for eol mark. ; 127 can cause obscure problems. ; set the following byte 0 for no cold start default command ibflen: db 0; patch command length for cold execution ; and install command below, 0 terminator ; ; For Osborne 1, do not modify. Result won't boot iobuff: dw 0,0,0,0,0,0,0; needed for OS1 autoboot. Why? db ' CCP+ v', ccpver/10 + '0', '.', ccpver MOD 10 + '0' db ' (C) 1986, C.B. Falconer,' db ' Tel. (203) 281-1438,' db ' 680 Hartford Tpk., Hamden, CT., USA' ds 136-($-begin),0; must have 2 spare bytes here. ; nofmsg: db 'No File',0 fulmsg: db 'No room',0 allmsg: db 'All (y/N)?',0 foldms: db 'File exists',0 dnmsg: db 'No ' upmsg: db 'UPSHIFT',0 ; ; Check for valid drive access. Carry if drive (a) invalid. ; entry (a) = 0 is default, always valid, 1, 2.. for A, B.. ; a,f,h,l drvchk: lhld whlmsk ; " " ; Entry here can check against mask hl (usually drvmsk) ; a,f,h,l drvckw: ora a rz dcr a ; " " ; move bit (a) of hl to carry. 0 is lsb, 15 is msb ; a,f,h,l bitmsk: sui 16 bitm1: dad h; left shift 16-n times inr a jrnz bitm1 ret ; ; Upshift (a) if lower case alpha. ; a,f upshft: cpi 'a' rc cpi 'z'+1 rnc ani 05fh ret ; ; Check (a) valid digit, carry if not ; f qnum: cpi '0' rc cpi '9'+1 cmc ret ; ; crlf to console ; a,f crlf: mvi a,cr call couta mvi a,lf ; " " ; console output from (a) ; a,f couta: push d mov e,a mvi a,@cout call bdos pop d ret ; ; Numeric 1..99 to console. Convert to Ascii, zero suppress ; a,f putnum: cpi 10 jrc pn2; 1 digit only push b mvi c,'0'-1 pn1: inr c adi -10 jrc pn1 adi 10 push psw mov a,c call couta pop psw pop b pn2: adi '0' jr couta ; ; Test for any console character ready. If so purge it and ; return nz flag. Else return z flag. Nulls absorbed ; a,f qbreak: mvi a,@csta call bdos rz mvi a,@cin jr bdos ; ; called from xcom and xtyp. If disk is default then search system ; disk on failure. z flag indicates failure ; a,f,d,e fopenf: xra a sta frecd lxi d,fcbdrv lda cmdmsk+1; (get high byte) ral jrc fopen; search disabled ldax d ora a jrnz fopen; not default, restrict search call fopen rnz; success on default drive inr a; i.e. disk a stax d; now try the system drive call fopen rnz; success stax d; restore default drive id for ccpxtd ret ; ; open file (de)^. z flag for failure ; a,f fopen: mvi a,@fopen ; " " ; execute functions, Z flag for 0ffh, increment return value ; a,f sfncr: call bdos inr a ret ; ; close file (de)^. Z flag for failure ; a,f fclose: mvi a,@fclose jr sfncr ; ; search next on (de)^. Z flag for failure, exit (a) incremented ; a,f srchn: mvi a,@srchn jr sfncr ; ; search for file fcbdrv. Z flag for failure, exit (a) incremented. ; a,f,d,e ffind: lxi d,fcbdrv mvi a,@srch1 jr sfncr ; ; purge file (de)^, z flag for failure ; a,f fpurge: mvi a,@fpurg jr sfncr ; ; read from file fcbdrv. z flag for success ; a,f,d,e freadf: lxi d,fcbdrv ; " " ; read from file (de)^. z flag for success ; a,f,d,e rdseq: mvi a,@rdseq jr bdos ; ; write to file (de)^. z flag for success ; a,f fwrite: mvi a,@wtseq jr bdos ; ; create file (de)^; z flag for success ; a,f create: mvi a,@fnew jr sfncr ; ; set dma access to defdma area ; a,f,d,e sdma80: lxi d,defdma ; " " ; set dma access to (de)^ ; a,f setdma: mvi a,@stdma jr bdos ; ; Find current logged disk qdisk: mvi a,@curdk jr bdos ; ; Set user to absolute value in fcbusr and select on BDOS. ; Do not modify or select drive. Leave drv/usr in bc ; Update fcbusr to absolute value ; a,f,b,c,e setusr: lbcd fcbusr; c := user, b := drive mov a,c ora a cm quser; default, get current user mov c,a; now an absolute value sbcd fcbusr ; " " ; set user to a ; a,f,e susera: mov e,a jr suser ; ; find current user code ; a,f,e quser: mvi e,0ffh ; " " ; set user (e) ; a,f suser: mvi a,@usrcd jr bdos ; ; reset disk system ; a,f rsdisk: mvi a,@rsdsk ; " " ; execute bdos call, return (a), set flags. Preserve other registers ; This is the sole connection to the outside world. ; a,f bdos: push h push d push b pushix mov c,a call sysfnc ora a; set flags on return value popix pop b pop d pop h ret ; ; Get a line from $$$.SUB file, and reduce the file size. ; If anything fails, purge $$$.SUB and reset subflg ; Line is placed in ' call couta; finish the prompt lda subflg ora a lxi h,iobuff jnz tstr; a subfile line loaded, echo & exit ; " " ; Input line from console. Add line end mark. Return de^ to ibflen ; a,f,d,e,h,l getln: lxi d,ibfsiz mvi a,@instg call bdos; else read from console & exit inx d; to ibflen ldax d mov l,a xra a mov h,a dad d; point to line end inx h mov m,a; and mark it ret ; ; Parse the next field from the command line (IX^) into fcbdrv. Any ; drive/user specifications are recorded in fcbdrv and fcbusr ; (which default to 0 and -1 respectively). name and type are parsed ; into fname and ftype, blank padded, with any '*'s expanded into ; '?'s, and the fields are blank padded. At exit IX points to the ; field terminating delimiter char and lastwd points to the 1st char. ; a contains a count of '?' characters in fname & ftype fields, with ; flags set on it. Illegal chars. cause abort. ; a,f,b,c,d,e,h,l,ix parse: xra a ; " " ; Entry to parse 2nd drive spec. for xcom, when a = 010h parsef: lxi h,fcbusr call index; select fcb or alternate fcb call skipbk; skip any leading blanks sixd lastwd; save marker for errors call getdu; c := user, b := drv mov m,c; set fcbusr inx h mov m,b; set fcbdrv, set up for ldfld call lastch cpi ':' cz nextch; Absorb any du terminating ':' mvi b,8 push h call ldfld; fill the name field call lastch cpi '.' cz nextch; Absorb any name terminating '.' mvi b,3; (else terminator blank fills) call ldfld; fill the type field mvi b,3 parse1: inx h mvi m,0 djnz parse1; zero ex, s2, s1 fields lxi b,11 shl 8; b := 11, c := 0 pop h mvi a,'?' parse2: inx h cmp m jrnz parse3 inr c parse3: djnz parse2; count the '?'s in fname/ftype mov a,c ora a; z flag for no wild cards ret ; ; load up to (b) chars from (ix)^ up to (hl)^ up. ; skip to delimiter. Implement any wild cards on "*" ; blank fill if less than (b) chars available. ; Upshift any lower case characters. ; a,f,b,h,l,ix ldfld: call lastch; on (ix)^ and load it jrz ldfld4; delimiter inx h cpi '*' jrnz ldfld1 mvi m,'?'; expand '*' jr ldfld2; dont skip past it ldfld1: call upshft; upshift any lower case mov m,a call nextch ldfld2: djnz ldfld call lastch; on (de)^ and load it rz; a delimiter ldfld3: call nextch; else skip to a delimiter rz jr ldfld3 ldfld4: inx h mvi m,' '; blank fill djnz ldfld4 ret ; ; getdu returns any "du" spec. in b and c, with c = user, b = drv ; The default user is signified by a -1 value, default drive by 0 ; At entry, IX points to the start of the field to be parsed. At ; exit, either IX is unchanged (no du found), or points to ':' ; a,f,b,c,d,e,ix getdu: lxi b,0ffh; set defaults pushix pop d; pre-scan for valid du field ldax d call upshft; 2.1 - No ':' abort here call qnum jrnc getdu1; 1st char digit, no d cpi '@' rc; < '@', no du spec cpi 'P'+1 rnc; > P, no du spec inx d ldax d cpi ':' jrz getdu2; d spec only call qnum rc; no 'du' spec getdu1: inx d ldax d cpi ':' jrz getdu2; du spec found call qnum rc; no du spec inx d ldax d cpi ':' rnz; not terminal ':', no du spec ; " " ; prescan found a valid du format, now load it getdu2: call lastch call qnum jrnc getdu3; digit, no d portion call upshft sui '@' mov b,a; save d portion call nextch getdu3: cpi ':' rz; no 'u' portion ani 0fh mov c,a call nextch rz; ':', 1 digit only call dstep; incorporate call nextch; and advance to the (known) ':' lda maxusr cmp c jrc badcmd; User # too large ret ; ; Decimal input step. Carry for overflow. c is accumulator, a digit ; a,f,c,d dstep: ani 0fh mov d,a mov a,c cpi 26 cmc rc; overflow add a add a add c; 5* add a; 10* add d mov c,a; result ret; cy for overflow ; ; Get next character from line. Z flag for a delimiter, ; and abort if the character is illegal. Do not advance past eoln. ; Return char in a and leave IX pointing to it. cy for eoln ; a,f,ix nextch: ldx a,+0 ora a jrz lastch; don't advance past eol inxix ; " " ; Return last character, as above. Abort if invalid, cy for eoln ; a,f lastch: ldx a,+0 ora a stc rz; null is a delimiter cpi '='; and all these rz cpi '_' rz cpi '.' rz cpi ':' rz cpi ';' rz cpi '<' rz cpi '>'; Redirection chars rz cpi ','; Operand separator rz cpi '|'; Piping separator rz; ; " " ; Check white space, abort on illegal chars. z flag for white qwhite: cpi tab rz; white space is a delimiter cpi ' ' jrc badcmd; abort on illegals ret ; ; skip blanks and tabs in input line. Abort on illegal chars. ; return the 1st non-blank char. found. ; a,f,ix skipbk: call lastch rc; eoln skip1: call qwhite rnz; not white space ; " " ; Effectively "call nextch ! call skipbk" next: call nextch jrnc skip1 ret; eoln ; ; Parse a filename, abort if wild cards specified pfwild: call parse rz ; " " ; Badcmd is a command aborter. It shows the portion of the ; current line from lastwd^ thru ix, with a '?', kills any ; submit job in progress, and returns to the command loop. badcmd: call crlf lhld lastwd pushix pop d inx d mov a,e sub l mov b,a; char count for the field badcd1: mov a,m call couta inx h djnz badcd1; display the field mvi a,'?' call couta call killsub jr cmdone; go mark line empty ; ; **************************** ; The 'cold' entry should be at the magic 035Ch from begin ; to function with the peculiar Osborne 1 bootstrap loader. spare equ 035ch - ($-begin); available for patching if spare AND 08000h; i.e. negative +++ Code entry point wrong for Osborne 1 +++ else if spare NE 0 ds spare,0; null fill it endif endif ; ; ------- Outer Block -------- ; ; cold entry and sign-on. This is only used on initial entry, and is ; automatically patched out. If "cold" and "both" are not on the ; same page the relocation mechanism in RELOCCP will have problems. cold: jmp signon ; ; at entry (c) specifies default user/drive warm: xra a sta ibflen; kill prestored command ; " " ; Initialization. Entry here executes pre-stored command. c = usr/drv both: lxi sp,stktop lxi h,both; Automatic no sign-on patch. shld begin+1; also allows for Osborne 1 peculiarity xra a sta defdu; Until input (c) found valid call rsdisk; true if any '$*.*' file exists sta subflg mov a,c call dvalid; So defdu is A0: if invalid ; " " ; Main loop of the command processor. cmdlp: lxi sp,stktop; in case aborted call preset; Set default drv/user/dma call crlf lda ibflen ora a cz getcmd; No prestored, get new lda subflg; (sub breaks checked before and ora a; after echo, to ease operation) cnz qbreak; If console break on sub job jrz cmdlp1 call killsub; then abort sub in progress jr cmdone cmdlp1: lxi h,iobuff; init cursor to buffer start shld lastwd push h popix mov a,m cpi '*' jrz cmdone; initial '*' is also a comment for now sui ';' jrz cmdone; an initial ';' marks a comment line inr a; i.e. cpi ':' jrz cmdone; and ':' is a label for submit, ignore lda ibflen ora a cnz parse; next item into fcbdrv lda ibflen ora a cnz exec; execute the non-null command ; " " ; Exit point from commands cmdone: xra a; badcmd re-enters here sta ibflen jr cmdlp; Until a .COM file reboots ; ; hl := hl + a ; a,f,h,l index: add l mov l,a rnc inr h ret ; ; ------- The rest is execution features ------- ; ; The abilities of CCP+ can be modified fairly freely in the following ; code, without affecting the main parsing and submit execution. ; ; ----------------------------------------------- ; ; Check wheel permission for command # (a). At entry, ; a = 0 1 2 3 4 5 6 7 8 9 (= maxcmd+1) ; for login, dir, era, type, save, ren, caps, go, kill, xcom ; Values 10, 11, 12 for du check on login, dir, xcom respectively ; Returns carry for controlled command ; a,f,h,l whlchk: lhld @wheel mov a,m ora a rnz; wheel set lhld cmdmsk jmp bitmsk; put controlling bit in carry ; ; Login to drive/user specified by fcbusr, fcbdrv. ; a,f,b,c,e login: call skipbk jrnc cmdbad; more in line mvi a,maxcmd+2; for logins call chkdu; check validity while defaults marked mov a,c; chkdu set c := user, b := drv inr a ora b rz; drv/user default, null command call setusr; update to abs usr, call bdos mov a,c tdig ani 0f0h mov c,a mov a,b dcr a jp login1; not default drive lda defdu login1: ani 0fh ora c mov c,a; new defdu value, if valid ; " " ; validate drive selection before defdu update ; a,f,e dvalid: call seldka; so BDOS aborts if invalid mov a,c sta defdu; outer block does actual selection ret ; ; Exec receives the initial command line field parsed into fcbdrv, ; and is responsible for whatever is done with it. IX has been advanced ; to the delimiter past this first field. exec: lda ftype sui ' ' sta flag; if good, a default 0 jrnz cmdbad; No type allowed on initial field lda fname sui ' ' jrz login; A login command only lbcd fcbusr; Something other than a login command inr c mov a,c ora b mvi a,maxcmd cz lookup; No drv nor user spec, check built-ins lxi h,xfrtbl; (otherwise a file is specified) add a call index mov a,m inx h mov h,m mov l,a pchl; transfer via hl, returns to main ; ; Check validity of du under wheel reset conditions ; Abort to badcmd if illegal du. Returns b := drv, c := user ; Used for login, dir, and execution of transient commands, ; for which a = 10, 11 or 12 on entry respectively. ; a,f,b,c,h,l chkdu: lbcd fcbusr call whlchk; Wheel for command access? rnc; not controlled ; " " ; Validate against system values, abort if illegal inr c; so default is 0 lda whlusr; max ALLOWED inr a cmp c dcr c; restore c mov a,b cnc drvchk; if u ok check drive rnc; drive ok ; " " ; linkage to badcmd cmdbad: jmp badcmd ; ; search for valid command. Checks (fname) against internal list ; Returns a := index of command, maxcmd if not found (i.e. xcom) ; A suppressed command (via wheel/cmdmsk) returns maxcmd ; a,f,b,c,d,e,h,l lookup: lxi h,cmdtbl mvi c,0 jr look4; to loop entry look1: inx h djnz look1; skip over command table to next look2: inr c; advance index, test next entry mov a,c cpi maxcmd rnc; not in command table - exit look4: lxi d,fname mvi b,4; length of command strings look5: ldax d cmp m jrnz look1; not this one inx d inx h djnz look5; more chars to check ldax d cpi ' ' jrnz look2; Not terminated, not command mov a,c; found inr a; because 0 describes login call whlchk; is command suppressed? mov a,c rnc mvi a,maxcmd; yes, look for transient ret; found ; ; Set drv/user from fcbusr/fcbdrv. Expected to be restored. ; This is used only by the built-in and transient commands. ; Revise fcbusr/drv to specify absolute values. ; a,f,b,c,e setdu: call setusr; b := drv; c := usr mov a,b dcr a; put in range 0..15 jp setdu1; not default lda defdu; else get default setting setdu1: ani 0fh mov b,a; now drv/user are absolute values call seldka; aborts on invalid inr b; non-default, defeat any paths sbcd fcbusr; update fcb ret ; ; DIR command ; a,f,b,c,d,e,h,l,ix xdir: call skipbk xra a sta flag call parse call skipbk; so ix^ is at any options (O, S) jrc xdir3; end of line, no options call upshft cpi 'S'; system also jrz xdir1 cpi 'O'; only system jrnz xdir2; go check separator xdir1: sta flag cz nextch; position past any flag found call skipbk jrc xdir3; eol, no more xdir2: cpi ';' jrnz cmdbad; should have line end now xdir3: call nextch; absorb separator mvi a,maxcmd+3 call chkdu call setdu; now bc is abs drv/usr lxi h,fname mov a,m cpi ' ' jrnz dir; something specified mvi b,11; set *.* default xdir4: mvi m,'?'; with 11 "?"s inx h djnz xdir4 ; " " ; Parameters set up. List all matching entries dir: call ffind; return (a) := dir ptr + 1 jrz dirx mvi e,1; so first item causes new line dir1: dcr a; regain dir block pointer rrc rrc rrc ani 060h; mov c,a; form dir entry pointer call qlist jrc dir9; suppress this entry dcr e jrnz dir2; not new line needed lda cols mov e,a call crlf call qdisk adi 'A' call couta lda fcbusr ora a cnz putnum; show user if non-zero jr dir3 dir2: mvi a,' ' call couta dir3: mvi a,':' call couta mvi b,1; point to 1st char. in fname dir4: mvi a,' ' call couta dir5: mov a,b call idxac ani 07fh; remove any attribute bit call couta inr b; count position in name mov a,b cpi 9 jrz dir4; after fn, insert blank cpi 12 jrc dir5; not done, continue dir9: call qbreak; check for interruption rnz; user break call srchn jrnz dir1; with (a) := dir entry id dirx: call skipbk rc; end of command line, EXIT call crlf call setdud; restore defaults and jmp xdir; repeat for next field ; ; Check whether entry should be listed. defdma holds the ; directory field, c holds the field index, and flags any ; command input flag (0 if none, ystem ; Set carry if listing to be suppressed ; a,f,b,h,l qlist: mvi a,10 call idxac mov b,a; get system bit lda flag ora a jrnz qlist1; a flag mov a,b ral ret; with carry for system file qlist1: cpi 'S' rz; (S)ystem also, list this one mov a,b; must be (O)nly system cma ral ret; carry for non-system ; ; load (a+c)th char from defdma array ; a,f,h,l idxac: lxi h,defdma add c call index mov a,m ret ; ; TYPE command execution xtype: call pfwild; aborts if wild cards call setusr; but not drive, allow paths call fopenf jrz getn6; badcmd call crlf mvi b,128 xtype1: mov a,b cpi 128 jrc xtype2; disk read not needed call freadf rnz; eof mov b,a; a zero xtype2: inr b lxi h,defdma call index mov a,m cpi eof rz call couta call qbreak jrz xtype1; no interruption ret ; ; Get number from command line. ; Optional final "+" which sets 'flag' getnum: call pfwild; forbids wild cards lda fcbdrv ora a jrnz getn6; badcmd; starts with "d:" lxi h,fname lxi b,11 shl 8; c := 0, b := 11 getn1: mov a,m cpi ' ' jrz getn5; done cpi '+' jrz getn4; done, with + flag inx h call qnum cnc dstep; incorporate jrc getn6; badcmd overflow djnz getn1 getn3: mov a,c ret getn4: sta flag; i.e. "+" terminator getn5: inx h dcr b jrz getn3 mov a,m; test for excess garbage cpi ' ' jrz getn5 getn6: jmp badcmd ; ; SAVE command execution xsave: call getnum push psw call pfwild; aborts if wildcards call setdu; no paths, absolute drive lxi d,fname ldax d dcx d; to fcbdrv cpi ' ' jrz getn6; badcmd; no name specified call fpurge call create jrz xsave3; fullup xra a sta frecd pop psw mov l,a mvi h,0 dad h; convert pages to records lxi d,tpa lda flag ora a jrz xsave1 inx h; extra record to save xsave1: mov a,h ora l jrz xsave2 dcx h push h lxi h,128; advance to next record dad d push h; save next, d is present call setdma lxi d,fcbdrv call fwrite pop d; get back next pointer pop h; and record counter jrz xsave1; write succeeded jr fullup; write failure xsave2: lxi d,fcbdrv; done call fclose rnz; close succeeded push h; so we can arrive with xsave3: pop h; junk on the stack ; " " ; NO ROOM message and return fullup: lxi h,fulmsg jr xcaps1; tstrc ; ; CAPS command execution xcaps: lxi h,lcuc mov a,m cma mov m,a ora a lxi h,dnmsg jrz xcaps1 lxi h,upmsg xcaps1: jr tstrc; exit with message ; ; ERA command execution xera: call parse cpi 11 jrnz xera1; not *.* specification lxi h,allmsg call tstrc call getln xchg; hl points to ibflen dcr m rnz; not 1 char reply. jr byte saver inx h mov a,m ani 05fh; upshift, only interested in 'Y' cpi 'Y' rnz; not confirmed xera1: call setdu lxi d,fcbdrv call fpurge rnz; ok ; " " ; crlf,"NO FILE" message ; a,f,h,l nofile: lxi h,nofmsg ; " " ; crlf, then tstr ; a,f,h,l tstrc: call crlf ; " " ; string (hl) to console until 0 byte ; a,f,h,l tstr: mov a,m ora a rz inx h call couta jr tstr ; ; REN command execution xren: call pfwild; aborts if wild cards call setdu push b call ffind jrnz xren2; new name pre-exists lxi h,fcbdrv lxi d,filedn lxi b,16 ldir call skipbk cpi '=' jrz xren1 cpi '_' jrnz xren3; badcmd; invalid assignment operator. xren1: call nextch call pfwild; aborts on wild card call skipbk jrnc xren3; badcmd; extra garbage on line lhld fcbusr mov a,l inr a ora h jrnz xren3; badcmd; 2nd spec has a d/u pop h; du from 1st spec, absolute shld fcbusr; make them match call setdu call ffind; (sets de := fcbdrv) jrz nofile; cant find file to rename mvi a,@frenm jmp bdos; rename and EXIT xren2: pop psw lxi h,foldms jr tstrc; and EXIT with message xren3: jmp badcmd; LINKAGE ; ; COM/CCPXTEND.SYS file not found. (flag specifies which). ; Recycle the loader to load CCPXTEND or abort. ; This transient receives the complete command line, and can control ; any access rights, search libraries, execute interpreters, etc. ccpxtd: lda fcbdrv; no ccp extension when disk specified lxi h,flag; nor if already tried ora m jrnz xren3; badcmd dcr a mov m,a; set flag to prevent re-execution etc. lxi b,13; user, drive, name, type lxi d,fcbusr; Now try for ccp extension lxi h,xtndf jr xcom1; load extension and execute ; ; anything other than built-ins. look for a com file first, ; If this fails, pass the complete command line to CCPXTEND.SYS xcom: mvi a,maxcmd+4; for execution call chkdu; allows access restriction lxi h,com lxi d,ftype lxi b,3 xcom1: ldir; set file type to ".COM" call setusr; leave drive default, for paths call fopenf jrz ccpxtd; not found, exit lxi h,tpa-128 xcom2: lxi d,128; advance store ptr. dad d lxi d,begin mov a,l sub e mov a,h sbb d jnc fullup; prevent overwriting ccp on load xchg call setdma xchg call freadf; load the COM file jrz xcom2; not eof yet ; " " ; Execute loaded program after parsing command tail into page 0. xgo: call parse; 1st passed fcb call next; past closing delimiter. nextch/skipbk mvi a,010h call parsef; 2nd passed fcb xra a sta frecd sta frecnt lxi d,defcbk lxi h,fcbdrv lxi b,33; set default fcbs for execution ldir lxi h,iobuff lda flag ora a jrnz xgo2; keep everything on CCPXTEND xgo1: mov a,m ora a jrz xgo2 cpi ' ' jrz xgo2; skip the command name inx h jr xgo1 xgo2: mvi b,0 lxi d,defdma+1 xgo3: lda lcuc ora a mov a,m; set the passed command line cnz upshft; upshifting in effect stax d ora a jrz xgo4 inr b; count chars passed inx h inx d jr xgo3 xgo4: mov a,b sta defdma; set cmd line lgh for execution call crlf call preset; preset drive/user/dma jmp tpa; EXECUTE. Return to cmdlp on TOS ; xfrtbl: dw xdir, xera dw xtype, xsave dw xren, xcaps dw xgo, killsub dw xcom; xcom must be last entry maxcmd equ ($-xfrtbl)/2-1 ; ; Resident commands cmdtbl: db 'DIR ' db 'ERA ' db 'TYPE' db 'SAVE' db 'REN ' db 'CAPS' db 'GO ' db 'KILL' ; ; Check overall size if ($-begin) GT 1896 +++ CCP+ too large +++ else; enough room ; ; This space is re-used as execution time stack space. ; ; cold entry and sign-on. This is only used on initial entry. ; If "cold" and "both" are not on the same page the relocation ; mechanism in RELOCCP will have problems. signon: lxi sp,stktop lxi h,vermsg call tstrc jmp both ; ; Do not lengthen this message, else signon stack use clobbers it. vermsg: db 'CCP+ Ver. ' db ccpver/10 + '0','.',ccpver MOD 10 + '0' db 0 ds 1944-($-begin),0; working stack space available stktop: ds 0 endif; Too large check ; ; Data area. Starts at 0798h (from begin) ; ; SUBMIT control block. (34 bytes) subusr: db subuser subfcb: db 1,'$$$ SUB'; drv A, user 0 subex: db 0 subs1: db 0 subs2: db 0 subrc: ds 1,0 subdn: ds 16,0 subrcd: ds 1,0 subflg: ds 1,0; zero prevents sub file searches ; ; NOTE: the ",0" in ds statements ensures the areas are 0 filled ; ; File control block and receiver of parse fields (34 bytes) fcbusr: ds 1,0 fcbdrv: ds 1,0 fname: ds 8,0 ftype: ds 3,0 ds 3,0 frecnt: ds 1,0 filedn: ds 16,0; map or altfcb image frecd: ds 1,0 ; ; Parsing (3 bytes) lastwd: ds 2,0; start of current word in iobuff flag: ds 1,0; Command options. Multiple uses ; ; The rest can be re-configured. Placed at the end so location ; will not change with revisions. 16 bytes for this group com: db 'COM'; file type for transients ; ; The following file is loaded, passed the complete command line as ; entered by the user, and executed whenever a transient command is ; not found. Distributed CCPXTEND.SYS checks user 0, then looks in ; COMMAND.LBR on default and A drives, current user and user 0, and ; if that fails attempts to execute RUNPCD Pascal interpreter. You ; are perfectly free to install whatever CCPXTEND file you prefer. ; By installing different ones on various drv/user areas you can ; alter the system characteristics dependent on login area. If you ; are using normal CPM2.2 installation of the CPMFIX patch will make ; files on user area 0 with the SYSTEM attribute visible everywhere, ; and thus a single CCPXTEND.SYS can serve all areas by default. ; DOS+ requires no such patch, and implements paths. xtndf: db 0,0,'CCPXTENDSYS'; ccp extension usr/drv/filename ; ; Configuration constants for customization. Patchable. ; These ALWAYS appear in the last 16 bytes of the CCP area. cols: db dcols; columns to use for directory lcuc: db doupsft; zero to prevent command line upshift ; CAPS command modifies at run time. maxusr: db maxuser; Limit for parsing. Login max = 15 whlusr: db whluser; Highest user allowed when @wheel^ = 0 @wheel: dw reboot + 0; Location of wheel byte. +0 = none. ; (reboot always holds 0c3h=jmp) ; ; This mask specifies which commands are wheel controlled. ; bit (lsb) 0 1 2 3 4 5 6 7 8 9 ; for login, dir, era, type, save, ren, caps, go, kill, trans ; AND ; bit 10 11 12 cause du checks (wheel off) on ; for login dir transients (i.e. running .COM files) ; AND ; bit 15 (msb) disables A: search for transients & type command. This ; is normally disabled for DOS+, since DOS+ provides the search. ; ; (The ordering is dependent on the command table) ; running transients cannot be disabled, bit 9 is ignored ; Set to enable search for .COM files for CPM use. cmdmsk: dw 0; (use 8000h for DOS+) Mask for wheel controlled cmds ; ; These masks specify drives that may NOT be accessed. The lsb (of ; the word, weight 1) specifies A:, the msb (bit 15, weight 8000h) ; specifies P:. DRVMSK can prevent logins causing BDOS SELECT errors ; by specifying all drives not physically present in the system. ; WHLMSK is used for security purposes. ; CAUTION: do not disable drive A on most systems drvmsk: dw 0; Mask for invalid drives, wheel set whlmsk: dw 0; Mask for bad drives when @wheel^ = 0 db 0,0,0,0; Spares for future use ; (last word is available for ccitcrc) ; ; Check for relocator problem if ((both-begin) SHR 8) NE ((cold-begin) SHR 8) +++ Relocator problems, cold/warm/both pages +++ endif; relocation problem ; end drives not physically present in the system. ; WHLMSK is used for security purposes. ; CAUTION: do not disable drive A on most systems drvmsk: dw 0; Mask for invalid drives, wheel set whlmsk: dw 0; Mask for bad drives when @wheel^ = 0 db 0,0,0,0; Spares for future use ; (last word is available for ccitcrc) ; ; Check for relocator problem if ((both-begin) SHR 8) NE (:20E00000C35CE3C35FE37E00000000000000000000000000000020204343502B2076322E44 :20E02000322028432920313938362C20432E422E2046616C636F6E65722C2054656C2E20CC :20E040002832303329203238312D313433382C203638302048617274666F72642054706B8F :20E060002E2C2048616D64656E2C2043542E2C205553410000000000000000000000000093 :20E0800000000000000000004E6F2046696C65004E6F20726F6F6D00416C6C2028792F4E32 :20E0A000293F0046696C6520657869737473004E6F2055505348494654002AFAE7B7C83DF1 :20E0C000D610293C20FCC9FE61D8FE7BD0E65FC9FE30D8FE3A3FC93E0DCDDEE03E0AD55FEA :20E0E0003E02CD74E1D1C9FE0A3811C50E2F0CC6F638FBC60AF579CDDEE0F1C1C63018DE6F :20E100003E0BCD74E1C83E01186AAF32DCE711BCE73AF7E71738101AB7200CCD27E1C03C6E :20E1200012CD27E1C012C93E0FCD74E13CC93E1018F73E1218F311BCE73E1118EC3E1318C1 :20E14000E811BCE73E14182C3E1518283E1618D91180003E1A181D3E191819ED4BBBE779BC :20E16000B7FC6CE14FED43BBE75F18021EFF3E2018023E0DE5D5C5DDE54FCD0500B7DDE14E :20E18000C1D1E1C93A98E7CD69E11199E7CD27E12827D53AA8E73D32B9E71107E0CD53E118 :20E1A000D1CD44E120133286E021A7E7772335CD2EE12805CD00E128103A98E7CD69E11183 :20E1C00099E7CD3DE1AF32BAE7CD50E13A0400F507070707E60FCD69E1F1E60F5FE52AF8AD :20E1E000E7CDC0E0E1DA3DE33E0E18883ABAE7B7C484E13A0400F5E60FC641CDDEE0F10797 :20E20000070707E60FC4E7E03E3ECDDEE03ABAE7B72108E0C23EE61106E03E0ACD74E1136D :20E220001A6FAF67192377C9AF21BBE7CDC1E3CD2BE3DD22DDE7CD95E2712370CD02E3FE4A :20E240003ACCFAE20608E5CD6EE2CD02E3FE2ECCFAE20603CD6EE2060323360010FB0100B2 :20E260000BE13E3F23BE20010C10F979B7C9CD02E3281C23FE2A2004363F1807CDC7E07741 :20E28000CDFAE210E9CD02E3C8CDFAE2C818FA23362010FBC901FF00DDE5D11ACDC7E0CDA4 :20E2A000D0E03010FE40D8FE51D0131AFE3A2813CDD0E0D8131AFE3A2809CDD0E0D8131A2C :20E2C000FE3AC0CD02E3CDD0E03009CDC7E0D64047CDFAE2FE3AC8E60F4FCDFAE2C8CDEBF7 :20E2E000E2CDFAE23AF2E7B93853C9E60F5779FE1A3FD887878187824FC9DD7E00B7280293 :20E30000DD23DD7E00B737C8FE3DC8FE5FC8FE2EC8FE3AC8FE3BC8FE3CC8FE3EC8FE2CC8D7 :20E32000FE7CC8FE09C8FE203813C9CD02E3D8CD23E3C0CDFAE230F7C9CD28E2C8CDD7E0C1 :20E340002ADDE7DDE5D1137B95477ECDDEE02310F93E3FCDDEE0CDB9E1186000C365E7AFF8 :20E360003207E03198E72163E32201E0AF320400CD72E132BAE779CDF7E33198E7CDC9E14B :20E38000CDD7E03A07E0B7CCECE13ABAE7B7C400E12805CDB9E118232108E022DDE7E5DDD1 :20E3A000E17EFE2A2815D63B28113C280E3A07E0B7C428E23A07E0B7C4FFE3AF3207E018D9 :20E3C000B9856FD024C92AF4E77EB7C02AF6E7C3C0E0CD2BE330653E0ACD28E4793CB0C8B1 :20E3E000CD5BE17907070707E6F04F783DF2F3E33A0400E60FB14FCDDAE179320400C93A70 :20E40000C5E7D62032DFE720333ABDE7D62028C2ED4BBBE70C79B03E08CC3FE42133E7874B :20E42000CDC1E37E23666FE9ED4BBBE7CDC6E3D00C3AF3E73CB90D78D4BAE0D0C33DE32110 :20E4400045E70E0018082310FD0C79FE08D011BDE706041ABE20EF132310F81AFE2020E9B2 :20E46000793CCDC6E379D03E08C9CD5BE1783DF275E43A0400E60F47CDDAE104ED43BBE738 :20E48000C9CD2BE3AF32DFE7CD28E2CD2BE3381ACDC7E0FE532804FE4F200B32DFE7CCFA06 :20E4A000E2CD2BE33804FE3B2092CDFAE23E0BCD28E4CD6AE421BDE77EFE202007060B36C3 :20E4C0003F2310FBCD36E128561E013D0F0F0FE6604FCD2CE5383F1D20183AF0E75FCDD791 :20E4E000E0CD57E1C641CDDEE03ABBE7B7C4E7E018053E20CDDEE03E3ACDDEE006013E2019 :20E50000CDDEE078CD42E5E67FCDDEE00478FE0928ECFE0C38EDCD00E1C0CD32E120ACCD67 :20E520002BE3D8CDD7E0CDCCE1C381E43E0ACD42E5473ADFE7B720037817C9FE53C8782F5A :20E5400017C921800081CDC1E37EC9CD39E3CD5BE1CD0AE12854CDD7E0068078FE8038059E :20E56000CD41E1C04704218000CDC1E37EFE1AC8CDDEE0CD00E128E3C9CD39E33ABCE7B7A7 :20E58000202821BDE701000B7EFE202814FE2B280D23CDD0E0D4EBE2381010EC79C932DF54 :20E5A000E7230528F77EFE2028F7C33DE3CD79E5F5CD39E3CD6AE411BDE71A1BFE2028EA51 :20E5C000CD3DE1CD4CE12835AF32DCE7F16F2600291100013ADFE7B72801237CB528162BF7 :20E5E000E521800019E5CD53E111BCE7CD48E1D1E128E8180911BCE7CD2EE1C0E5E1219042 :20E60000E0180F21F1E77E2F77B721AFE0280321B2E01827CD28E2FE0B20132198E0CD3B9E :20E62000E6CD17E2EB35C0237EE65FFE59C0CD6AE411BCE7CD3DE1C02188E0CDD7E07EB795 :20E64000C823CDDEE018F7CD39E3CD6AE4C5CD36E1203A21BCE711CCE7011000EDB0CD2B00 :20E66000E3FE3D2804FE5F202ACDFAE2CD39E3CD2BE3301F2ABBE77D3CB42017E122BBE7D8 :20E68000CD6AE4CD36E128B03E17C374E1F121A3E018A8C33DE33ABCE721DFE7B620F43D33 :20E6A00077010D0011BBE721E3E7180E3E0CCD28E421E0E711C5E7010300EDB0CD5BE1CDD2 :20E6C0000AE128D2218000118000191100E07D937C9AD2FEE5EBCD53E1EBCD41E128E8CD9B :20E6E00028E2CD33E33E10CD29E2AF32DCE732CBE7115C0021BCE7012100EDB02108E03A4C :20E70000DFE7B7200B7EB72807FE2028032318F506001181003AF1E7B77EC4C7E012B72839 :20E720000504231318EF78328000CDD7E0CDC9E1C3000181E414E64BE5ADE547E603E6DF94 :20E74000E6B9E1ACE64449522045524120545950455341564552454E2043415053474F205D :20E76000204B494C4C3198E72171E7CD3BE6C363E34343502B205665722E20322E320000FF :20E780000000000000000000000000000000000000000000000000000001242424202020AC :20E7A00020205355420000000000000000000000000000000000000000000000000000002F :20E7C000000000000000000000000000000000000000000000000000000000000000000039 :20E7E000434F4D00004343505854454E4453595305FF1F0D000000000000000000000000B2 :00000001FF 1ACE64449522045524120545950455341564552454E2043415053474F205D :20E76000204B494C4C3198E72171E7CD3BE6C363E34343502B205665722E2032åååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååå.xlist .z80 ; Macros to define the Z-180 extended instructions. ; ; D-X Designs Pty. Ltd. 4/12/95 D. R. Brooks ; ; WARNING! These instructions are NOT supported by ; Z80MU. However the IO instructions are ; necessary to ensure correct access to ; the internal machine registers, which ; fully decode all 16 address bits. ; ; Adapted from Zilog (file 182macro.lib) ; Enhanced to provide conditional definition for the ; following chips (define the appropriate symbol) ; Z80180 Default ; Z80S180 ; Z80181 ; Z80182 ; First, check only one CPU is defined ifdef Z80180 ?test equ 0 ;These will throw a "Multiple endif ; Definition" error if 2 CPU's ifdef Z80S180 ; are defined ?test equ 1 endif ifdef Z80181 ?test equ 2 endif ifdef Z80182 ?test equ 3 endif ;========== Z180 Internal Interrupt Vectors ======== ; The following vectors are offsets from the value ; loaded in IL, the Interrupt Vector Low register. VINT1 equ 0 ;External INT-1 pin VINT2 equ 2 ;External INT-2 pin VPRT0 equ 4 ;Timer 0 VPRT1 equ 6 ;Timer 1 VDMA0 equ 8 ;DMA Ch-0 VDMA1 equ 0ah ;DMA Ch-1 VCSIO equ 0ch ;Clocked serial I/O VASC0 equ 0eh ;Asynch. comms. Ch-0 VASC1 equ 10h ;Asynch. comms. Ch-1 ;========== Z180 System Control Registers ========== ;NB These registers may be relocated to multiples of ; 40H, by setting the IO Control Register (ICR = 3FH) ; The addresses below are valid with ICR=0 (else they ; are offsets from the ICR base value). ;ASCI Registers cntla0 equ 00h ;ASCI Control Reg A Ch0 cntla1 equ 01h ;ASCI Control Reg A Ch1 cntlb0 equ 02h ;ASCI Control Reg B Ch0 cntlb1 equ 03h ;ASCI Control Reg B Ch1 stat0 equ 04h ;ASCI Status Reg Ch0 stat1 equ 05h ;ASCI Status Reg Ch1 tdr0 equ 06h ;ASCI TX Data Reg Ch0 tdr1 equ 07h ;ASCI TX Data Reg Ch1 rdr0 equ 08h ;ASCI RX Data Reg Ch0 rdr1 equ 09h ;ASCI RX Data Reg Ch1 brk0 equ 12h ;Break Control Reg Ch0 brk1 equ 13h ;Break Control reg Ch1 ;CSI/O Registers cntr equ 0ah ;CSI/O Control Reg trdr equ 0bh ;CSI/O TX/RX Data Reg ;Timer Registers tmdr0l equ 0ch ;Timer Data Reg Ch0-Low tmdr0h equ 0dh ;Timer Data Reg Ch0-High rldr0l equ 0eh ;Timer Reload Reg Ch0-Low rldr0h equ 0fh ;Timer Reload Reg Ch0-High tcr equ 10h ;Timer Control Reg tmdr1l equ 14h ;Timer Data Reg Ch1-Low tmdr1h equ 15h ;Timer Data Reg Ch1-High rldr1l equ 16h ;Timer Reload Reg Ch1-Low rldr1h equ 17h ;Timer Reload Reg Ch1-High frc equ 18h ;Free-Running Counter ifdef Z80S180 ccr equ 1fh ;CPU Control Reg endif ;DMA Registers sar0l equ 20h ;DMA Source Addr Reg Ch0-Low sar0h equ 21h ;DMA Source Addr Reg Ch0-High sar0b equ 22h ;DMA Source Addr Reg Ch0-B dar0l equ 23h ;DMA Destn Addr Reg Ch0-Low dar0h equ 24h ;DMA Destn Addr Reg Ch0-High dar0b equ 25h ;DMA Destn Addr Reg Ch0-B bcr0l equ 26h ;DMA Byte Count Reg Ch0-Low bcr0h equ 27h ;DMA Byte Count Reg Ch0-High mar1l equ 28h ;DMA Memory Addr Reg Ch1-Low mar1h equ 29h ;DMA Memory Addr Reg Ch1-High mar1b equ 2ah ;DMA Memory Addr Reg Ch1-B iar1l equ 2bh ;DMA I/O Addr Reg Ch1-Low iar1h equ 2ch ;DMA I/O Addr Reg Ch1-High bcr1l equ 2eh ;DMA Byte Count Reg Ch1-Low bcr1h equ 2fh ;DMA Byte Count Reg Ch1-High dstat equ 30h ;DMA Status Reg dmode equ 31h ;DMA Mode Reg dcntl equ 32h ;DMA/WAIT Control Reg ;System Control Registers il equ 33h ;INT Vector Low Reg itc equ 34h ;INT/TRAP Control Reg rcr equ 36h ;Refresh Control Reg cbr equ 38h ;MMU Common Base Reg bbr equ 39h ;MMU Bank Base Reg cbar equ 3ah ;MMU Common/Bank Area Reg omcr equ 3eh ;Operation Mode Control Reg icr equ 3fh ;I/O Control Reg ifdef Z80181 ;Features unique to Z80181 ;Integral PIO device p1ddr equ 0e0h ;Data Direction Reg 1 p1dp equ 0e1h ;Port 1 Data p2ddr equ 0e2h ;Data Direction Reg 2 p2dp equ 0e3h ;Port 2 Data ;Integral CTC device ctc0 equ 0e4h ;CTC Channel 0 ctc1 equ 0e5h ;CTC Channel 1 ctc2 equ 0e6h ;CTC Channel 2 ctc3 equ 0e7h ;CTC Channel 3 scccr equ 0e8h ;SCC Control Reg sccdr equ 0e9h ;SCC Data Reg ;Chip-select output pins ramubr equ 0eah ;RAM Upper Boundary ramlbr equ 0ebh ;RAM Lower Boundary rombr equ 0ech ;ROM Boundary scr equ 0edh ;System Control Reg endif ifdef Z80182 ;Features unique to Z80182 ccr equ 1fh ;CPU control reg. intype equ 0dfh ;Interrupt edge/pin mux reg. wsgcs equ 0d8h ;Wait-State Generator CS enh182 equ 0d9h ;Z80182 Enhancements Reg pinmux equ 0dfh ;Interrupt Edge/Pin Mux Reg ramubr equ 0e6h ;RAM End Boundary ramlbr equ 0e7h ;RAM Start Boundary rombr equ 0e8h ;ROM Boundary fifoctl equ 0e9h ;FIFO Control Reg rtotc equ 0eah ;RX Time-Out Time Const ttotc equ 0ebh ;TX Time-Out Time Const fcr equ 0ech ;FIFO Register scr equ 0efh ;System Pin Control rbr equ 0f0h ;MIMIC RX Buffer Reg thr equ 0f0h ;MIMIC TX Holding Reg ier equ 0f1h ;Interrupt Enable Reg lcr equ 0f3h ;Line Control Reg mcr equ 0f4h ;Modem Control Reg lsr equ 0f5h ;Line Status Reg msr equ 0f6h ;Modem Status Reg mscr equ 0f7h ;MIMIC Scratch Reg dlatl equ 0f8h ;Divisor latch LS dlatm equ 0f9h ;Divisor latch MS ttcr equ 0fah ;TX Time Constant rtcr equ 0fbh ;RX Time Constant ivec equ 0fch ;MIMIC Interrupt Vector mimie equ 0fdh ;MIMIC Interrupt Enable Reg iusip equ 0feh ;MIMIC Interrupt Under-Service Reg mmcr equ 0ffh ;MIMIC Master Control Reg ;Z80182 PIO Registers ddra equ 0edh ;Data Direction Reg A dra equ 0eeh ;Port A Data ddrb equ 0e4h ;Data Direction Reg B drb equ 0e5h ;Port B Data ddrc equ 0ddh ;Data Direction Reg C drc equ 0deh ;Port C data ;ESCC Registers sccacnt equ 0e0h ;ESCC Control Channel A sccad equ 0e1h ;ESCC Data Channel A sccbcnt equ 0e2h ;ESCC Control Channel B sccbd equ 0e3h ;ESCC Data Channel B endif ;[E]SCC Internal Register Definitions RR0 equ 00h RR1 equ 01h RR2 equ 02h RR3 equ 03h RR6 equ 06h RR7 equ 07h RR10 equ 0ah RR12 equ 0ch RR13 equ 0dh RR15 equ 0fh WR0 equ 00h WR1 equ 01h WR2 equ 02h WR3 equ 03h WR4 equ 04h WR5 equ 05h WR6 equ 06h WR7 equ 07h WR9 equ 09h WR10 equ 0ah WR11 equ 0bh WR12 equ 0ch WR13 equ 0dh WR14 equ 0eh WR15 equ 0fh ;==== Define the additional Z-180 instructions ===== ;Machine registers (internal use only) ?b equ 0 ?c equ 1 ?d equ 2 ?e equ 3 ?h equ 4 ?l equ 5 ?a equ 7 ??bc equ 0 ??de equ 1 ??hl equ 2 ??sp equ 3 slp macro db 0edh db 76h endm mlt macro ?r db 0edh db 4ch+(??&?r AND 3) SHL 4 endm in0 macro ?r, ?p db 0edh db 0+(?&?r AND 7) SHL 3 db ?p endm out0 macro ?p, ?r db 0edh db 1+(?&?r AND 7) SHL 3 db ?p endm otim macro db 0edh db 83h endm otimr macro db 0edh db 93h endm otdm macro db 0edh db 8bh endm otdmr macro db 0edh db 9bh endm tstio macro ?p db 0edh db 74h db ?p endm tst macro ?r db 0edh ifidn ,<(hl)> db 34h else ifdef ?&?r db 4+(?&?r AND 7) SHL 3 else db 64h db ?r endif endif endm .list  macro db 0edh db 9bh endm tstio macro ?p db 0edh db 74h db ?p endm tst macro ?r db 0edh ifidn ,<(hl)> db 34h else ifdef ?&?r db 4+(?&?r AND 7) SHL 3 else db 64h db ?r endif endif endm .liåååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååå;Standard drive-parameter block ; Format is same as MS-DOS BIOS SPEC_1 equ 0 ;"Specify" byte 1 SPEC_2 equ 1 ;"Specify" byte 2 MTROFF equ 2 ;Wait before stop motor SECSZE equ 3 ;Bytes/sector (must be > 0) EOT equ 4 ;Final sector no. GPL equ 5 ;Gap length DTL equ 6 ;Data transfer length GAPFMT equ 7 ;Gap-3 length: Format DATFMT equ 8 ;Data fill: Format SETTLE equ 9 ;Head-settle time (mS) MTRON equ 10 ;Motor-start (* 1/8 sec.) MAXCYL equ 11 ;Max. cylinder no. DRATE equ 12 ;Data rate  EOT equ 4 ;Final sector no. GPL equ 5 ;Gap length DTL equ 6 ;Data transfer length GAPFMT equ 7 ;Gap-3 length: Format DATFMT equ 8 ;Data fill: Format SETTLE equ 9 ;Head-settle ååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååascicr equ 0dh ;ASCII characters ascilf equ 0ah ascibs equ 08h asciht equ 09h asciesc equ 1bh space equ ' ' ascdel equ 7fh åååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååå page 90 title Basic diskette handler .comment $ ;=======================================================================; ; ; ; B A S I C D I S K - D R I V E R O U T I N E S ; ; ; ; Non-interrupt driven support routines for the SMC diskette chip. ; ; ; ;=======================================================================; ;=======================================================================; ; ; ; D-X Designs Pty. Ltd. Perth, Western Australia ; ; Project: 112 May, 1996 ; ; ; ; Copyright (C) 1996 David R. Brooks ; ; ; ; This program is free software; you can redistribute it and/or ; ; modify it under the terms of the GNU General Public License ; ; as published by the Free Software Foundation; either version 2 ; ; of the License, or (at your option) any later version. ; ; ; ; This program is distributed in the hope that it will be useful, ; ; but WITHOUT ANY WARRANTY; without even the implied warranty of ; ; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ; ; GNU General Public License for more details. ; ; ; ; You should have received a copy of the GNU General Public License ; ; along with this program; if not, write to the Free Software ; ; Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. ; ; ; ;=======================================================================; This code is designed to work without interrupts (compatible with the ROM bootstrap code). Consequently, timing functions are done by polling and/or delay loops. The DMA is used for data transfer, and is polled for completion (check that the byte counter has decremented to zero). Call: A - OPCODE: 0 - Reset disk system: all drives uncalibrated 1 - Turn motors off (leave drives calibrated) 2 - Read sector/s 3 - Write sector/s 4 - Verify sector/s 5 - Format track 6 - Translate logical address to physical B - No. of sectors to read/write C - Track No. (even tracks are Side 0, odd tracks are Side 1) D - Drive No. (0..3) E - Sector No. HL - Ptr. to data buffer (logical address) IX - Ptr. to Drive Parameter Block (DPB) Return: If successful: CY = 0 A undefined HL advanced past data block If errors: CY = 1 A status (see below) HL unchanged In either case: DE -> Result vector (7 bytes) IX, IY unchanged BC trashed $ Z80182 equ 0 include Z180.INC include DPARM.INC include FDC.INC incformat equ 0 ;Define this to include the FORMAT cmnd. .sall dseg ;====================================================================== ; L O C A L D A T A ;Return-error status values (in A, if CY=1) calerr equ 1 ;Error in a recalibration function ioerr equ 2 ;Error posted by Result Phase: see (HL) badsect equ 3 ;Sector/Length will overrun track lostdat equ 4 ;DMA did not transfer full block timeout equ 5 ;Interrupt timed out badcmd equ 6 ;Invalid function code sekerr equ 7 ;Seek error calibd: ds 1 ;Drives "Calibrated" flags mask: ds 1 ;Bit-mask of current drive restab: ds 7 ;Buffer for result-phase data rtcnt: ds 1 ;IO command retry count (after RESTAB) switch: ds 3 ;Builds a JP instruction tries equ 3 ;No. of retries on IO errors blksze: ds 2 ;Save block size cseg ;====================================================================== ; F . D . C . C O M M A N D C O D E S cmd_recal equ 7 ;Recalibrate cmd_sense equ 8 ;Sense Interrupt cmd_seek equ 0fh ;Seek to track cmd_read equ 46h ;Read (MFM, implied seek) cmd_write equ 45h ;Write, ditto cmd_verify equ 56h ;Verify, ditto cmd_format equ 4dh ;Format a track ; D . M . A . C O M M A N D S dma_incmd equ 0cdh ;IO => MEM dma_outcmd equ 0f1h ;MEM => IO dma_run equ 63h ;Kick off Channel-0 ;====================================================================== ; U T I L I T Y S U B R O U T I N E S waitint: ;Wait for interrupt (but polled) push bc push de ld bc,0 ;Inner timeout counters ld d,20 ;Coarse timeout setting w1: in0 a,(drc) ;Get interrupt lines bit 6,a jr z,w2 ;Go if interrupt set dec c jr nz,w1 djnz w1 ;65k loops dec d jr nz,w1 ;Coarse outer loop scf jr w3 ;Exit: timed out w2: xor a ;Exit: OK w3: pop de pop bc ret ;-------------------------------- testresult: ;Check results of I/O operations ; IY -> test-block for status: ; see "launch" for details call waitint ;Wait for completion ld a,timeout jr c,exit ;Failed (CY posted to caller) ;Get 7 result bytes after read/write push bc push de ld de,restab ;Point to Result Table ld b,7 ;No. of expected bytes lc3: call getbyte ld (de),a inc de ;Post it djnz lc3 pop de pop bc ld hl,restab ;Pointer to results block push hl ld a,(hl) and 0f8h ;Kill variable bits (just errors) cp (iy+tst0) ;Check to expected value jr nz,bad inc hl ld a,(hl) cp (iy+tst1) ;Check to expected value jr nz,bad inc hl ld a,(hl) sub 0 ;No "funny" errors (ever!) jr nz,bad in0 l,(bcr0l) in0 a,(bcr0h) or l ;Check that all was transferred pop hl ld a,lostdat jr nz,bad ;Should have counted back to zero xor a ;It all succeeded! jr exit ;OK: return CY=0 (A=0) bad1: ld a,badsect ;Bad sector specification scf jr exit bad: ld a,ioerr ;Error post: see block at (HL) pop hl scf exit: ret ;CY = error ;-------------------------------- sendbyte: ;Send A to Cmnd/data port push af scb1: in0 a,(_MSR) ;Check FDC status bit 7,a ;Wait till ready jr z,scb1 pop af ;Recover the cmnd. byte out0 (_DATA),a ret ;-------------------------------- getbyte: ;Read Cmnd/data port to A in0 a,(_MSR) bit 7,a ;Ready? jr z,getbyte in0 a,(_DATA) ;Get it ret ;-------------------------------- sendcmdstrg: ;Send string of commands from HL push bc ;1st. byte is count ld b,(hl) ;Save count scs1: inc hl ld a,(hl) ;Get cmnd. byte call sendbyte ;Send it djnz scs1 ;Repeat pop bc ret ;-------------------------------- uncal: ;Force a recalibrate on this drive push hl ld hl,calibd ;First force a recalibrate ld a,(mask) cpl and (hl) ;Turn of the "calibrated" bit ld (hl),a pop hl ret ;-------------------------------- dmainput: ;Set up DMA buffers for input call absaddr ;Get physical addr. for DMA out0 (dar0l),l out0 (dar0h),h out0 (dar0b),a ;Destination pointers ld a,_DMA out0 (sar0l),a ;Source: FDC's DMA port xor a out0 (sar0h),a out0 (sar0b),a ;Controlled by /DREQ0 ret ;-------------------------------- dmaoutput: ;Set up DMA buffers for output call absaddr ;Get physical addr. for DMA out0 (sar0l),l out0 (sar0h),h out0 (sar0b),a ;Source pointers ld a,_DMA out0 (dar0l),a ;Destn.: FDC's DMA port xor a out0 (dar0h),a out0 (dar0b),a ;Controlled by /DREQ0 ret ;-------------------------------- ;Offsets for inline arguments opcode equ 0 ;Command to FDC tst0 equ 1 ;Match Status 0 tst1 equ 2 ; " " 1 skip equ 3 ;No. of bytes to skip at return launch: ;Initiate a read or write command ex (sp),iy ;Save IY, point at argts. ld a,e ;Find final sector for transfer add a,b dec a ;Last sector to do dec a ;1 under final cp (ix+EOT) ;This MUST be < true final jr nc,bad1 inc a ;True final sector ld h,a ;Save it ld a,(iy+opcode) call sendbyte ;Command code ld a,d ;Drive bit 0,c ;Odd track (ie Side 1)? jr z,lc1 set 2,a lc1: call sendbyte ;Drive & head ld a,c srl a ;Cylinder call sendbyte ld a,c and 1 call sendbyte ;Head ld a,e call sendbyte ;Sector ld a,(ix+SECSZE) call sendbyte ;Sector length (encoded) ld a,h call sendbyte ;Final sector no. ld a,(ix+GPL) call sendbyte ;Gap length ld a,dma_run ;Activate DMA Ch-0 out0 (dstat),a ld a,0ffh ;Data transfer length (default) call sendbyte ;Final byte: FDC & DMA running call testresult ;Find out what happened push bc push af ld bc,skip add iy,bc ;Jump past the inline params. pop af pop bc ex (sp),iy ;Recover IY, post link ret ;-------------------------------- transze: ;Determine buffer size (DMA count set) push hl push de push bc ld hl,64 ld b,(ix+SECSZE) ;Size N, => 128*2^N inc b tz1: add hl,hl djnz tz1 ld d,h ld e,l ;Sector size in DE ld hl,0 pop bc ;No. of sectors in B push bc tz2: add hl,de ;Form total in HL djnz tz2 out0 (bcr0l),l ;Set DMA counter out0 (bcr0h),h ld (blksze),hl ;Save block size pop bc pop de ;Restore regs. pop hl ret ;-------------------------------- endseek: ;Finish of a seek/recalibrate function call waitint ;Wait for it ld a,timeout ret c ;Timed out ld a,cmd_sense ;"Sense Interrupt" at the end call sendbyte call getbyte ld b,a ;ST0 in B call getbyte ;PCN in A push bc ;Verify correct cylinder srl c cp c ;Yes? pop bc ld a,sekerr scf ret nz ;Quit if unequal ld a,b ;Get back ST0 and 0e0h cp 20h ;Look for success ret z ld a,calerr scf ret ;CY=1 if it failed ;-------------------------------- doron equ 0ch ;Basic state: no drives, no reset, DMA setup: ;Prepare for a Read or Write operation push bc ;Save them... push hl ld b,d ;Drive no. inc b ld a,08h su1: add a,a djnz su1 ;Shift drive bit as reqd. ld (mask),a ;Save drive indicator bit ld b,a ;Local copy in0 a,(_DOR) ld c,a and 0fch ;Kill select bits or d ;Select reqd. drive or doron ;No reset, DMA out0 (_DOR),a ;Selected ld a,c and b ;Is this drive running? jr nz,su2 in0 a,(_DOR) or b ;Start it up out0 (_DOR),a ; Wait for motor to run-up. NB this delay assumes: ; 1. 16MHz CPU clock ; 2. 2 wait states per memory access ; 3. Z-80 instruction cycle-counts ld a,(ix+MTRON) ;Start delay add a,a ;Scale for inner loop ld bc,0 ;Prime for inner loop mo1: djnz mo1 ;17*256 = 4352 clocks dec c ; 6 jr nz,mo1 ; 17 ; ---- ; 4375 clocks ; x 256 ; ------- ; 1,120,000 clocks ; or, 1/16 second dec a jr nz,mo1 ;Full delay su2: ;Send the SPECIFY command (all from DPB) ld a,(ix+DRATE) out0 (_CCR),a ;Data rate as reqd. ld a,03h ;"Specify" call sendbyte ld a,(ix+SPEC_1) call sendbyte ld a,(ix+SPEC_2) res 0,a ;Be sure DMA is activated call sendbyte ld hl,calibd ld a,(mask) and (hl) ;Is this drive calibrated? jr nz,su3 ;Done if so ld a,cmd_recal call sendbyte ;Send the "recal" command ld a,d call sendbyte ;Drive no. call endseek ;Finish the operation jr c,su5 ;Jump if error ld a,(mask) or (hl) ld (hl),a ;Flag it calibrated, now su3: xor a ;Success... su5: and a ;Set the Z bit pop hl pop bc ret ;Done: Z set if OK ;====================================================================== ; C O M M A N D D E S P A T C H E R global diskop diskop: cp maxcmd jr c,do1 ld a,badcmd scf ret ;Illegal command do1: call entry ;Enter the slave routine push af ;Save exit status call c,reset ;If errors, reset the FDC pop af ret c ;If error, take exit code xor a ;If OK, return zero ret ;Back to caller entry: push hl ;Save it ld hl,dtab add a,a ;Scale opcode by 2 add a,l ld l,a ;Access the jumptable jr nc,do2 inc h ;Propagate carry do2: ld a,(hl) ;Look into the table inc hl ld h,(hl) ld l,a ex (sp),hl ;Recover HL: routine ptr. on stack ret ;Switch to routine dtab: ;Pointers to function routines dw reset dw motors dw xread ;I/O functions: call wrappers dw xwrite dw xverf dw xform dw absaddr maxcmd equ ($-dtab)/2 ;No. of valid commands ;====================================================================== ; I / O C O M M A N D W R A P P E R F U N C T I O N ; The READ, WRITE, VERIFY and FORMAT commands are essentially identical. ; The despatcher calls a stub, which sets up a common wrapper to ; run the required sub-function, and to implement re-tries in the ; event of data errors. ; Wrapper stubs. The common tail is called with the user's HL stacked, ; and HL pointing to the required sub-function. jpopc equ 0c3h ;A "JP" opcode xread: push hl ld hl,read ;Sub-function pointer jr comtail xwrite: push hl ld hl,write jr comtail xverf: push hl ld hl,verify jr comtail xform: push hl ld hl,format comtail: ;Common tail of the "wrapper" function ld (switch+1),hl ;Target for the despatcher pop hl ;Caller's value push af ld a,jpopc ld (switch),a ;Complete the "JP" instruction push hl ld hl,0 ld (blksze),hl ;Default value pop hl ld a,tries again: ld (rtcnt),a ;Retry counter pop af push hl call switch ;To the sub-function pop hl ;Save HL (no others changed) jr nc,ok ;Exit: no error cp ioerr ;Was it an IO error? jr z,more cp sekerr ;Or a seek error jr nz,fatal ;No: other errors are fatal more: push af ;Seek or IO errors: retry call uncal ;Reset the "calibrated" bit ld a,(rtcnt) dec a ;Count attempts jr nz,again ;More to go pop af ;Exhausted: get the error code fatal: scf ;Hard errors ld de,restab ;Pass the result pointer ret ok: ld de,(blksze) add hl,de ;Success: index HL past block ld de,restab ;Return DE -> status block ret ;------------------------------- fails: ;Common stub for sub-functions to exit with error scf ret ;====================================================================== ; R E S E T T H E D I S K E T T E S Y S T E M reset: push hl xor a ld (calibd),a ;All drives uncalibrated out0 (_DOR),a ;Force reset ld a,doron out0 (_DOR),a ;All drives off (DMA asserted) ld hl,configtab call sendcmdstrg ;"Configure" xor a ;Post OK pop hl ret configtab: db ecft-$-1 ;Length db 13h ;"Configure" db 00h ;Required db 71h ;No FIFO in use db 43 ;Write precomp point ecft equ $ ;====================================================================== ; T U R N O F F A L L D R I V E - M O T O R S ; This command is really only needed until interrups are supported, ; since it is then possible to automatically turn off a drive which has ; not been accessed for some time. ; This command is used by the elementary BIOS keyboard routine: the ; drives are turned off if the system has waited for keyboard input ; for too long - a simple method! motors: in0 a,(_DOR) and 0fh ;Drop motor lines: keep selection out0 (_DOR),a xor a ;"Success" ret ;====================================================================== ; R E A D O N E O R M O R E S E C T O R S read: call setup ;Drive selected & ready jp nz,fails call dmainput ;Set up DMA pointers for input call transze ;Get total buffer size ld a,dma_incmd out0 (dmode),a ;DMA set up: IO => MEM call launch ;Go fire it off db cmd_read ;Command code db 40h ;Expected ST0 db 80h ;Expected ST1 ret ;CY=fault: HL -> result phase ;====================================================================== ; W R I T E O N E O R M O R E S E C T O R S write: call setup ;Drive selected & ready jp nz,fails call dmaoutput ;Set up DMA pointers for output call transze ;Get total buffer size ld a,dma_outcmd out0 (dmode),a ;DMA set up: MEM => IO call launch ;Go fire it off db cmd_write ;Command code db 40h ;Expected ST0 db 80h ;Expected ST1 ret ;CY=fault: HL -> result phase ;====================================================================== ; V E R I F Y S E C T O R S - N O T R A N S F E R verify: call setup ;Drive selected & ready jp nz,fails call launch ;Go fire it off db cmd_verify ;Command code db 0 ;Expected ST0 db 0 ;Expected ST1 ret ;CY=fault: HL -> result phase ;====================================================================== ; F O R M A T A T R A C K O F T H E D I S K E T T E format: ifdef incformat ;Do we include FORMAT ? call setup ;Drive running, & calibrated jp nz,fails ld a,cmd_seek ;Seek to the required track call sendbyte ;We cannot use "implied seeks" here ld a,d bit 0,c jr z,fm1 set 2,a ;A = drive & head bits fm1: call sendbyte ld a,c srl a ;Cylinder no. call sendbyte call endseek ;Wait for seek to complete ret c ;Failed call dmaoutput ;DMA pointers for output push hl ld l,(ix+EOT) ;No. of sectors ld h,0 add hl,hl add hl,hl ;4 bytes/sector out0 (bcr0l),l out0 (bcr0h),h ;Set up DMA counter ld (blksze),hl pop hl ld a,dma_outcmd out0 (dmode),a ;DMA armed to output ld a,cmd_format ;Now initiate the FDC call sendbyte ld a,d bit 0,c jr z,fm2 set 2,a ;Side select fm2: call sendbyte ;Drive & side ld a,(ix+SECSZE) call sendbyte ;Sector size ld a,(ix+EOT) call sendbyte ;Final sector no. ld a,(ix+GAPFMT) call sendbyte ;Gap-3 length ld a,dma_run out0 (dstat),a ;Kick off the DMA ld a,(ix+DATFMT) call sendbyte ;Last byte: FDC running push iy ld iy,fmtres ;Expected results call testresult ;Wait for it... pop iy ret ;A and CY show result fmtres: db 0 ;Filler db 0 ;ST-0 db 0 ;ST-1 else jp fails ;No FORMAT command endif ;====================================================================== ; C O N V E R T L O G I C A L T O P H Y S I C A L A D D R E S S ; This utility converts a logical address (in HL) to a 20-bit physical ; address (in AHL). Other registers are unchanged. Absolute addresses ; are used by the Z182 DMA. ; The routine accesses the memory-mapping hardware registers, to obtain ; the current translations. ;NB This code assumes that CA1 > BA > CA0 absaddr: ;Converts HL to AHL push hl ld a,h ;First, see which logical bank and 0f0h ld h,a ;Save 4kB page in0 a,(cbar) and 0f0h ;CA1 logical base ld l,a ld a,h sub l ;Form Addr - Base jr c,not1 ;If CY: Addr < Base, so don't use in0 a,(cbr) ;It is CA1 - take base jr mod not1: in0 a,(cbar) add a,a add a,a add a,a add a,a ;BA logical base in A[7:4] ld l,a ld a,h sub l ;Form Addr - Base ld a,0 jr c,mod ;Not BA, must be CA0 in0 a,(bbr) ;Else, it is BA mod: pop hl ;Now do the adjustment push bc ;Save it push hl ;Save HL again ld c,h ld b,0 ;BC = HL >> 8 ld l,a ld h,b ;HL = physical base add hl,hl add hl,hl add hl,hl add hl,hl ;HL = physical base << 4 add hl,bc ;Top address in HL ld a,h and 0fh ;Bits 19:16 in A ld b,l ;Save bits 15:8 pop hl ld h,b ;Full address in AHL pop bc ;Restore BC and a ;CY=0 (ie no errors) ret ;Done end d hl,hl add hl,hl add hl,hl add hl,hl ;HL = physical base << 4 add hl,bc ;Top address in HL ld a,h and 0fh ;Bits 19:16 in A ld b,l ;Save bits 15:8 pop hl ld h,b ;Full address in AHL pop bc ;Restore BC and a ;CY=0 (ie no erroåååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååå:20010000C38A04E9496E736572742073797374656D206469736B20696E206472697665204F :2001200024456E7465722064726976652066726F6D20776869636820746F2072656164207D :2001400053797374656D20547261636B2F733A2024456E74657220647269766520746F208A :20016000626520666F726D61747465643A2024496E73657274206469736B20746F20666F1C :20018000726D617420262068697420456E7465723A2024466F726D617474696E672E2E2EBF :2001A0000D0A24466F726D617420616E6F746865723F205B592F4E5D20243A20616E6420AC :2001C00068697420456E7465722024496E76616C69642063686F6963653A207472792061EC :2001E0006761696E210D0A24466F726D6174207375636365737366756C210D0A240D0A24A4 :20020000CD1C07D0874F0600212602095E2356D51136023E09CD0500D13E09CD05003E00BA :20022000CD1C070E00C3050049025F0275028D029D02B302C602466174616C206469736B77 :20024000206572726F723A2024526563616C6962726174696F6E206572726F720D0A2445CD :2002600072726F722066726F6D2046444320636869700D0A24536563746F7273206F7665AC :200280007272756E20747261636B0D0A24444D41206C6F737420646174610D0A244F70655A :2002A000726174696F6E2074696D6564206F75740D0A24496E76616C69642066756E6374C4 :2002C000696F6E0D0A245365656B206572726F720D0A243E263206091106090E0ACD0500E1 :2002E00011FD010E09CD0500C9F50E09CD0500F1C6415F0E02CD050011BA010E09CD050071 :20030000CDD302C9D511CB010E09CD0500D1D50E09CD0500CDD3023A0709A7D128E63A0894 :2003200009FE603802CBAFFE510E00CC0500FE4330D2D641D5571EFF2A010001FDFF090E92 :2003400002CD0301427BD1FEFF28B978C9DD46043A0309571E013E03CD0002C90E001E0134 :20036000DD7E04B83013C53E02DD4604C5D5CD0002D1C1F190470C1E013E02CD0002C90130 :200380001202030405060708090A0B0C0D0E0F1011010A020B030C040D050E060F07100834 :2003A000110912010902030405060708070809010203040506010602070308040905DD4667 :2003C00004C5E5CB0971CBBE237907E60177231A771323DD7E03772310EBE1C1C9C5212E44 :2003E00009CDBE033A0309571E013E05CD0002C1C9DD2A04090E00DD7E04117F03FE1228C2 :200400000311A303CDDD030CDD7E04119103FE12280311AC03CDDD030CDD7E04119103FEAF :2004200012280311B503CDDD03D879DDBE0B20E8C9DD2A0409DD46040E00C5212E093A039E :2004400009571E013E04CD0002C1790CDDBE0B20E9C9466F726D617474696E672E2E2E0D9C :200460000A24566572696679696E672E2E2E0D0A2457726974696E672053797374656D202D :20048000547261636B2F730D0A240E0DCD05002A010001150009CD03012A010001FDFF0951 :2004A0000E00CD0301112101CD0E03320009DD2201091104013A0009CDE902DD2A01093AAC :2004C0000009570612217609CD5C03115101CD0E03320309DD220409116F010E09CD0500E3 :2004E000CDD3023E00CD00021152040E09CD0500CDF1031162040E09CD0500CD3104117158 :20050000040E09CD0500217609DD46040E00CD4D03DD7E04FE120E01C44D0311E8010E0959 :20052000CD050011A3010E09CD0500CDD3023A0709A7280B3A0809FE59289DFE7928993EA8 :2005400000CD00023E00C30500C5D50100001614ED38DECB77280B0D20F610F41520F13705 :200560001801AFD1C1C9CD49053E053841C5D511782D0607CDBC05121310F9D1C121782D10 :20058000E57EE6F8FDBE012021237EFDBE02201A237ED6002014ED2826ED3827B5E13E047B :2005A0002008AF18093E033718043E02E137C9F5ED3894CB7F28F9F1ED3995C9ED3894CB7C :2005C0007F28F9ED3895C9C546237ECDAF0510F9C1C9E521762D3A772D2FA677E1C9CD7B73 :2005E00008ED2923ED2124ED39253EA0ED3920AFED3921ED3922C9CD7B08ED2920ED21215D :20060000ED39223EA0ED3923AFED3924ED3925C9FDE37B803D3DDDBE04308A3C67FD7E0092 :20062000CDAF057ACB412802CBD7CDAF0579CB3FCDAF0579E601CDAF057BCDAF05DD7E0327 :20064000CDAF057CCDAF05DD7E05CDAF053E63ED39303EFFCDAF05CD6605C5F5010300FD93 :2006600009F1C1FDE3C9E5D5C5214000DD4603042910FD545D210000C1C51910FDED29261C :20068000ED212722832DC1D1E1C9CD49053E05D83E08CDAF05CDBC0547CDBC05C5CB39B935 :2006A000C13E0737C078E6E0FE20C83E0137C9C5E542043E088710FD32772D47ED38924FED :2006C000E6FCB2F60CED399279A02016ED3892B0ED3992DD7E0A8701000010FE0D20FB3DFE :2006E00020F8DD7E0CED39973E03CDAF05DD7E00CDAF05DD7E01CB87CDAF0521762D3A777C :200700002DA620133E07CDAF057ACDAF05CD8A0638063A772DB677AFA7E1C1C9FE0738046A :200720003E0637C9CD2F07F5DCA507F1D8AFC9E5213F0787856F3001247E23666FE3C9A5D1 :2007400007C0074D07530759075F077B08E521CA071810E521E207180AE521FA071804E5BC :2007600021070822812DE1F53EC332802DE521000022832DE13E03327F2DF1E5CD802DE1BA :200780003018FE022804FE07200BF5CDD2053A7F2D3D20E3F13711782DC9ED5B832D19112D :2007A000782DC937C9E5AF32762DED39923E0CED399221BB07CDC705AFE1C9041300712B20 :2007C000ED3892E60FED3992AFC9CDAF06C2A307CDDE05CD66063ECDED3931CD100646409B :2007E00080C9CDAF06C2A307CDF705CD66063EF1ED3931CD1006454080C9CDAF06C2A3079B :20080000CD1006560000C9CDAF06C2A3073E0FCDAF057ACB412802CBD7CDAF0579CB3FCDF7 :20082000AF05CD8A06D8CDF705E5DD6E0426002929ED2926ED212722832DE13EF1ED3931B0 :200840003E4DCDAF057ACB412802CBD7CDAF05DD7E03CDAF05DD7E04CDAF05DD7E07CDAF1C :20086000053E63ED3930DD7E08CDAF05FDE5FD217808CD6605FDE1C9000000E57CE6F0679B :20088000ED383AE6F06F7C953805ED38381811ED383A878787876F7C953E003803ED38390E :1608A000E1C5E54C06006F6029292929097CE60F45E160C1A7C9C1 :00000001FF DAF057ACB412802CBD7CDAF0579CB3FCDF7 :20082000AF05CD8A06D8CDF705E5DD6E0426002929ED2926ED212722832DE13EF1ED3931B0 :200840003E4DCDAF057ACB412802CBD7CDAF05DD7E03CDAF05DD7E04CDAF05DD7E07CDAF1C :20086000053E63ED3930DD7E08CDAF05FDE5FD217808CD6605FDE1C9000000E5åååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååå page 90 title Format Program ;===============================================================; ; ; ; D I S K E T T E F O R M A T P R O G R A M ; ; ; ;===============================================================; ;=======================================================================; ; ; ; D-X Designs Pty. Ltd. Perth, Western Australia ; ; Project: 112 May, 1996 ; ; ; ; Copyright (C) 1996 David R. Brooks ; ; ; ; This program is free software; you can redistribute it and/or ; ; modify it under the terms of the GNU General Public License ; ; as published by the Free Software Foundation; either version 2 ; ; of the License, or (at your option) any later version. ; ; ; ; This program is distributed in the hope that it will be useful, ; ; but WITHOUT ANY WARRANTY; without even the implied warranty of ; ; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ; ; GNU General Public License for more details. ; ; ; ; You should have received a copy of the GNU General Public License ; ; along with this program; if not, write to the Free Software ; ; Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. ; ; ; ;=======================================================================; Z80182 equ 0 include Z180.INC include DPARM.INC include ASCII.INC .radix 10 extrn diskop ;Disk subsystem BIOS equ 0 ;Pointers to CP/M services BDOS equ 5 cseg jp start dseg sysdrv: ds 1 ;Drive to read system tracks systab: ds 2 ;Ptr. to its hardware params. fmtdrv: ds 1 ;Drive to format (may be the same) fmttab: ds 2 ;Ptr. to its hardware params. reply: ds 40 ;User-reply buffer srp equ $-reply-2 ;Useful length fbuf: ds 4*18 ;Format table buffer sysbuf: ds 18*512 ;Buffer for system track/s cseg jphl: jp (hl) ;Just a routine hook sysdsk: db 'Insert system disk in drive $' sysmsg: db 'Enter drive from which to read System Track/s: $' fdmsg: db 'Enter drive to be formatted: $' reqmsg: db 'Insert disk to format & hit Enter: $' formsg: db 'Formatting...', ascicr, ascilf, '$' mormsg: db 'Format another? [Y/N] $' endst: db ': and hit Enter $' ermsg: db 'Invalid choice: try again!', ascicr, ascilf, '$' suxes: db 'Format successful!', ascicr, ascilf, '$' nline: db ascicr,ascilf,'$' ;================================================================== disk: ;Disk function, & trap errors call diskop ret nc ;Back if OK add a,a ;Error code ld c,a ld b,0 ld hl,etab-2 add hl,bc ;Point into table ld e,(hl) inc hl ld d,(hl) push de ld de,ec0 ld a,9 call BDOS ;Message preamble pop de ld a,9 call BDOS ;Display error ld a,0 call diskop ;Reset disks ld c,0 jp BDOS ;Escape to CP/M etab: dw ec1 dw ec2 dw ec3 dw ec4 dw ec5 dw ec6 dw ec7 ec0: db 'Fatal disk error: $' ec1: db 'Recalibration error', ascicr,ascilf,'$' ec2: db 'Error from FDC chip', ascicr,ascilf,'$' ec3: db 'Sectors overrun track', ascicr,ascilf,'$' ec4: db 'DMA lost data', ascicr,ascilf,'$' ec5: db 'Operation timed out', ascicr,ascilf,'$' ec6: db 'Invalid function', ascicr,ascilf,'$' ec7: db 'Seek error', ascicr,ascilf,'$' ;-------------------------------- input: ;Get a reply from user ld a,srp ld (reply),a ld de,reply ld c,0ah call BDOS ;Read to buffer ld de,nline ld c,9 ;Newline after call BDOS ret ;-------------------------------- diskin: ;Call user to insert disk push af ld c,9 call BDOS ;Send 1st msg (DE^) pop af add a,'A' ;Drive letter ld e,a ld c,2 call BDOS ;Output it ld de,endst ld c,9 call BDOS call input ;Pause for reply ret ;-------------------------------- repeat: ;Internal label: repeat query push de ld de,ermsg ld c,9 call BDOS pop de getdrv: ;Call for user's drive selection push de ld c,9 call BDOS ;Display prompt call input ld a,(reply+1) ;Reply may not be null and a pop de jr z,repeat ;Retry if bad ld a,(reply+2) cp 60h jr c,gd1 res 5,a ;Fold case gd1: cp 'Q' ld c,0 call z,BDOS ;"Q" exits cp 'C' ;Highest drive currently jr nc,repeat sub 'A' ;Drive no. push de ld d,a ld e,-1 ;Request drive type ld hl,(BIOS+1) ld bc,-3 ;Point at overload entry add hl,bc ld c,2 call jphl ;To BIOS (special entry) ld b,d ;Save drive no. ld a,e ;Drive type pop de cp -1 ;Invalid drive? jr z,repeat ld a,b ret ;Back: see A & IX ;-------------------------------- wstk: ;Write one System Track (in C) ld b,(ix+EOT) ;All sectors ld a,(fmtdrv) ld d,a ;Drive ld e,1 ;From Sector 1 ld a,3 ;Write call disk ret ;-------------------------------- ; Code fragment to boot in CP/M, allowing for 1 or 2 system tracks. ; Lifted from the Boot Sector code ; On entry, D = Drive ; E = Drive-type code (for BIOS) ; B = Total sectors reqd. ; IX -> DPB ; HL -> Load-base systrk: ld c,0 ;First system track ld e,1 ;Including boot sector ld a,(ix+EOT) ;Final sector, this track cp b ;Is that enough? jr nc,onetrk push bc ;Save total sectors ld a,2 ;No: read an extra track ld b,(ix+EOT) ;Sectors on this track push bc push de call disk ;Read 1st track pop de ;HL is updated pop bc pop af ;Total sectors reqd. (B -> A) sub b ;Less those already read ld b,a inc c ;Next track ld e,1 ;Start at the beginning onetrk: ld a,2 ;"Read" last/only track call disk ret ;============================================================= ; F O R M A T - E N G I N E P R O P E R ;Sector interlace tables t0_18: db 1, 18, 2, 3, 4, 5, 6, 7, 8 ;System track (18 sectors) db 9, 10, 11, 12, 13, 14, 15, 16, 17 ;Special skew tn_18: db 1, 10, 2, 11, 3, 12, 4, 13, 5 ;Data tracks db 14, 6, 15, 7, 16, 8, 17, 9, 18 ;Skewed 2:1 t0_9: db 1, 9, 2, 3, 4, 5, 6, 7, 8 ;System Tk-0 (9 sectors) t1_9: db 7, 8, 9, 1, 2, 3, 4, 5, 6 ;System Tk-1 tn_9: db 1, 6, 2, 7, 3, 8, 4, 9, 5 ;data tracks maktab: ;Build the sector initialisation table ;DE -> table, HL -> buffer, C = track ld b,(ix+EOT) ;Final sector push bc push hl rrc c ;Track => Cyl., Side mt1: ld (hl),c res 7,(hl) ;Cylinder inc hl ld a,c rlca and 1 ld (hl),a ;Side inc hl ld a,(de) ld (hl),a ;Sector inc de inc hl ld a,(ix+SECSZE) ld (hl),a ;Sector size inc hl djnz mt1 pop hl pop bc ret fortrk: ;Format this track push bc ;Track in C, DE -> table ld hl,fbuf call maktab ld a,(fmtdrv) ld d,a ;Drive no. ld e,1 ;Start at Sector 1 ld a,5 ;"Format" call disk pop bc ret format: ld ix,(fmttab) ld c,0 ;Track 0 ld a,(ix+EOT) ld de,t0_18 cp 12h ;18-sector track? jr z,dot0 ld de,t0_9 ;Else, 9-sector dot0: call fortrk inc c ;Track 1 ld a,(ix+EOT) ld de,tn_18 ;18-sectors (as data)? cp 12h jr z,dot1 ld de,t1_9 ;Else 9-sector Tk-1 dot1: call fortrk fm1: inc c ;All other tracks ld a,(ix+EOT) ld de,tn_18 ;Try 18 sectors cp 12h jr z,dotn ld de,tn_9 ;Else 9 sectors dotn: call fortrk ret c ld a,c cp (ix+MAXCYL) ;Do the lot... jr nz,fm1 ret verify: ld ix,(fmttab) ld b,(ix+EOT) ld c,0 vl1: push bc ld hl,fbuf ld a,(fmtdrv) ld d,a ;Drive no. ld e,1 ;From Sector 1 ld a,4 ;"Verify" call disk pop bc ld a,c inc c cp (ix+MAXCYL) jr nz,vl1 ret fmtmsg: db 'Formatting...',ascicr,ascilf,'$' vermsg: db 'Verifying...',ascicr,ascilf,'$' wrmsg: db 'Writing System Track/s',ascicr,ascilf,'$' ;============================================================= start: ld c,0dh call BDOS ;Reset BDOS ld hl,(BIOS+1) ;Addr. of warm boot ld bc,15h ;Offset to Home/Flush add hl,bc call jphl ;Flush BIOS sector buffer ld hl,(BIOS+1) ld bc,-3 add hl,bc ;Point to "overloaded" entry ld c,0 call jphl ;Hard disk-subsystem reset ld de,sysmsg call getdrv ;System-tracks drive ld (sysdrv),a ;Save the details ld (systab),ix ld de,sysdsk ld a,(sysdrv) call diskin ;Request to load System disk ld ix,(systab) ;Parameter ptr. ld a,(sysdrv) ld d,a ;Drive ld b,18 ;Read all sectors ld hl,sysbuf call systrk ;Read system tracks ld de,fdmsg call getdrv ld (fmtdrv),a ld (fmttab),ix ;Save details for Format drive NFORM: ;Entry to format another disk ld de,reqmsg ld c,9 call BDOS ;"Insert disk..." call input ld a,0 call disk ;Force recalibrate ld de,fmtmsg ld c,9 call BDOS call format ;Do the format ld de,vermsg ld c,9 call BDOS call verify ;Verify ld de,wrmsg ld c,9 call BDOS ;Writing system tracks ld hl,sysbuf ld b,(ix+EOT) ;No. of sectors ld c,0 call wstk ;Write 1 track ld a,(ix+EOT) cp 12h ;Was that all? ld c,1 ;No, need Track 1 also call nz,wstk ld de,suxes ;OK! ld c,9 call BDOS ld de,mormsg ;More? ld c,9 call BDOS call input ld a,(reply+1) ;Get reply and a jr z,xit ;Null: quit ld a,(reply+2) ;Else, 1st. char. cp 'Y' jr z,NFORM ;Yes - repeat cp 'y' jr z,NFORM xit: ld a,0 call disk ;Done: clear disk subsystem ld a,0 jp BDOS ;Then back to CP/M end lso call nz,wstk ld de,suxes ;OK! ld c,9 call BDOS ld de,mormsg ;More? ld c,9 call BDOS call input ld a,ååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååm80 format,format=format m80 diskop,diskop=diskop l80 /p:100,/d:900,format,diskop,format/n:p/y/x/e PPIP18 LBR€¹º»¼½¾¿ÀUUDECODEBAKA€�‚ƒ„UUDECODEPASK‹Œ�Ž�USER MACPPPIP18 LBRSSTAT COM#TUVRECEIVE UUE_;OQRSWREADME TXTxyFORMAT SUBzFORMAT $$$åRECEIVE UUE_š›œ�žŸåååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååå.xlist .z80 ; Macros to define the Z-180 extended instructions. ; ; D-X Designs Pty. Ltd. 4/12/95 D. R. Brooks ; ; WARNING! These instructions are NOT supported by ; Z80MU. However the IO instructions are ; necessary to ensure correct access to ; the internal machine registers, which ; fully decode all 16 address bits. ; ; Adapted from Zilog (file 182macro.lib) ; Enhanced to provide conditional definition for the ; following chips (define the appropriate symbol) ; Z80180 Default ; Z80S180 ; Z80181 ; Z80182 ; First, check only one CPU is defined ifdef Z80180 ?test equ 0 ;These will throw a "Multiple endif ; Definition" error if 2 CPU's ifdef Z80S180 ; are defined ?test equ 1 endif ifdef Z80181 ?test equ 2 endif ifdef Z80182 ?test equ 3 endif ;========== Z180 Internal Interrupt Vectors ======== ; The following vectors are offsets from the value ; loaded in IL, the Interrupt Vector Low register. VINT1 equ 0 ;External INT-1 pin VINT2 equ 2 ;External INT-2 pin VPRT0 equ 4 ;Timer 0 VPRT1 equ 6 ;Timer 1 VDMA0 equ 8 ;DMA Ch-0 VDMA1 equ 0ah ;DMA Ch-1 VCSIO equ 0ch ;Clocked serial I/O VASC0 equ 0eh ;Asynch. comms. Ch-0 VASC1 equ 10h ;Asynch. comms. Ch-1 ;========== Z180 System Control Registers ========== ;NB These registers may be relocated to multiples of ; 40H, by setting the IO Control Register (ICR = 3FH) ; The addresses below are valid with ICR=0 (else they ; are offsets from the ICR base value). ;ASCI Registers cntla0 equ 00h ;ASCI Control Reg A Ch0 cntla1 equ 01h ;ASCI Control Reg A Ch1 cntlb0 equ 02h ;ASCI Control Reg B Ch0 cntlb1 equ 03h ;ASCI Control Reg B Ch1 stat0 equ 04h ;ASCI Status Reg Ch0 stat1 equ 05h ;ASCI Status Reg Ch1 tdr0 equ 06h ;ASCI TX Data Reg Ch0 tdr1 equ 07h ;ASCI TX Data Reg Ch1 rdr0 equ 08h ;ASCI RX Data Reg Ch0 rdr1 equ 09h ;ASCI RX Data Reg Ch1 brk0 equ 12h ;Break Control Reg Ch0 brk1 equ 13h ;Break Control reg Ch1 ;CSI/O Registers cntr equ 0ah ;CSI/O Control Reg trdr equ 0bh ;CSI/O TX/RX Data Reg ;Timer Registers tmdr0l equ 0ch ;Timer Data Reg Ch0-Low tmdr0h equ 0dh ;Timer Data Reg Ch0-High rldr0l equ 0eh ;Timer Reload Reg Ch0-Low rldr0h equ 0fh ;Timer Reload Reg Ch0-High tcr equ 10h ;Timer Control Reg tmdr1l equ 14h ;Timer Data Reg Ch1-Low tmdr1h equ 15h ;Timer Data Reg Ch1-High rldr1l equ 16h ;Timer Reload Reg Ch1-Low rldr1h equ 17h ;Timer Reload Reg Ch1-High frc equ 18h ;Free-Running Counter ifdef Z80S180 ccr equ 1fh ;CPU Control Reg endif ;DMA Registers sar0l equ 20h ;DMA Source Addr Reg Ch0-Low sar0h equ 21h ;DMA Source Addr Reg Ch0-High sar0b equ 22h ;DMA Source Addr Reg Ch0-B dar0l equ 23h ;DMA Destn Addr Reg Ch0-Low dar0h equ 24h ;DMA Destn Addr Reg Ch0-High dar0b equ 25h ;DMA Destn Addr Reg Ch0-B bcr0l equ 26h ;DMA Byte Count Reg Ch0-Low bcr0h equ 27h ;DMA Byte Count Reg Ch0-High mar1l equ 28h ;DMA Memory Addr Reg Ch1-Low mar1h equ 29h ;DMA Memory Addr Reg Ch1-High mar1b equ 2ah ;DMA Memory Addr Reg Ch1-B iar1l equ 2bh ;DMA I/O Addr Reg Ch1-Low iar1h equ 2ch ;DMA I/O Addr Reg Ch1-High bcr1l equ 2eh ;DMA Byte Count Reg Ch1-Low bcr1h equ 2fh ;DMA Byte Count Reg Ch1-High dstat equ 30h ;DMA Status Reg dmode equ 31h ;DMA Mode Reg dcntl equ 32h ;DMA/WAIT Control Reg ;System Control Registers il equ 33h ;INT Vector Low Reg itc equ 34h ;INT/TRAP Control Reg rcr equ 36h ;Refresh Control Reg cbr equ 38h ;MMU Common Base Reg bbr equ 39h ;MMU Bank Base Reg cbar equ 3ah ;MMU Common/Bank Area Reg omcr equ 3eh ;Operation Mode Control Reg icr equ 3fh ;I/O Control Reg ifdef Z80181 ;Features unique to Z80181 ;Integral PIO device p1ddr equ 0e0h ;Data Direction Reg 1 p1dp equ 0e1h ;Port 1 Data p2ddr equ 0e2h ;Data Direction Reg 2 p2dp equ 0e3h ;Port 2 Data ;Integral CTC device ctc0 equ 0e4h ;CTC Channel 0 ctc1 equ 0e5h ;CTC Channel 1 ctc2 equ 0e6h ;CTC Channel 2 ctc3 equ 0e7h ;CTC Channel 3 scccr equ 0e8h ;SCC Control Reg sccdr equ 0e9h ;SCC Data Reg ;Chip-select output pins ramubr equ 0eah ;RAM Upper Boundary ramlbr equ 0ebh ;RAM Lower Boundary rombr equ 0ech ;ROM Boundary scr equ 0edh ;System Control Reg endif ifdef Z80182 ;Features unique to Z80182 ccr equ 1fh ;CPU control reg. intype equ 0dfh ;Interrupt edge/pin mux reg. wsgcs equ 0d8h ;Wait-State Generator CS enh182 equ 0d9h ;Z80182 Enhancements Reg pinmux equ 0dfh ;Interrupt Edge/Pin Mux Reg ramubr equ 0e6h ;RAM End Boundary ramlbr equ 0e7h ;RAM Start Boundary rombr equ 0e8h ;ROM Boundary fifoctl equ 0e9h ;FIFO Control Reg rtotc equ 0eah ;RX Time-Out Time Const ttotc equ 0ebh ;TX Time-Out Time Const fcr equ 0ech ;FIFO Register scr equ 0efh ;System Pin Control rbr equ 0f0h ;MIMIC RX Buffer Reg thr equ 0f0h ;MIMIC TX Holding Reg ier equ 0f1h ;Interrupt Enable Reg lcr equ 0f3h ;Line Control Reg mcr equ 0f4h ;Modem Control Reg lsr equ 0f5h ;Line Status Reg msr equ 0f6h ;Modem Status Reg mscr equ 0f7h ;MIMIC Scratch Reg dlatl equ 0f8h ;Divisor latch LS dlatm equ 0f9h ;Divisor latch MS ttcr equ 0fah ;TX Time Constant rtcr equ 0fbh ;RX Time Constant ivec equ 0fch ;MIMIC Interrupt Vector mimie equ 0fdh ;MIMIC Interrupt Enable Reg iusip equ 0feh ;MIMIC Interrupt Under-Service Reg mmcr equ 0ffh ;MIMIC Master Control Reg ;Z80182 PIO Registers ddra equ 0edh ;Data Direction Reg A dra equ 0eeh ;Port A Data ddrb equ 0e4h ;Data Direction Reg B drb equ 0e5h ;Port B Data ddrc equ 0ddh ;Data Direction Reg C drc equ 0deh ;Port C data ;ESCC Registers sccacnt equ 0e0h ;ESCC Control Channel A sccad equ 0e1h ;ESCC Data Channel A sccbcnt equ 0e2h ;ESCC Control Channel B sccbd equ 0e3h ;ESCC Data Channel B endif ;[E]SCC Internal Register Definitions RR0 equ 00h RR1 equ 01h RR2 equ 02h RR3 equ 03h RR6 equ 06h RR7 equ 07h RR10 equ 0ah RR12 equ 0ch RR13 equ 0dh RR15 equ 0fh WR0 equ 00h WR1 equ 01h WR2 equ 02h WR3 equ 03h WR4 equ 04h WR5 equ 05h WR6 equ 06h WR7 equ 07h WR9 equ 09h WR10 equ 0ah WR11 equ 0bh WR12 equ 0ch WR13 equ 0dh WR14 equ 0eh WR15 equ 0fh ;==== Define the additional Z-180 instructions ===== ;Machine registers (internal use only) ?b equ 0 ?c equ 1 ?d equ 2 ?e equ 3 ?h equ 4 ?l equ 5 ?a equ 7 ??bc equ 0 ??de equ 1 ??hl equ 2 ??sp equ 3 slp macro db 0edh db 76h endm mlt macro ?r db 0edh db 4ch+(??&?r AND 3) SHL 4 endm in0 macro ?r, ?p db 0edh db 0+(?&?r AND 7) SHL 3 db ?p endm out0 macro ?p, ?r db 0edh db 1+(?&?r AND 7) SHL 3 db ?p endm otim macro db 0edh db 83h endm otimr macro db 0edh db 93h endm otdm macro db 0edh db 8bh endm otdmr macro db 0edh db 9bh endm tstio macro ?p db 0edh db 74h db ?p endm tst macro ?r db 0edh ifidn ,<(hl)> db 34h else ifdef ?&?r db 4+(?&?r AND 7) SHL 3 else db 64h db ?r endif endif endm .list  macro db 0edh db 9bh endm tstio macro ?p db 0edh db 74h db ?p endm tst macro ?r db 0edh ifidn ,<(hl)> db 34h else ifdef ?&?r db 4+(?&?r AND 7) SHL 3 else db 64h db ?r endif endif endm .liåååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååå page 90 title Basic diskette handler .comment $ ;=======================================================================; ; ; ; B A S I C D I S K - D R I V E R O U T I N E S ; ; ; ; Non-interrupt driven support routines for the SMC diskette chip. ; ; ; ;=======================================================================; ;=======================================================================; ; ; ; D-X Designs Pty. Ltd. Perth, Western Australia ; ; Project: 112 May, 1996 ; ; ; ; Copyright (C) 1996 David R. Brooks ; ; ; ; This program is free software; you can redistribute it and/or ; ; modify it under the terms of the GNU General Public License ; ; as published by the Free Software Foundation; either version 2 ; ; of the License, or (at your option) any later version. ; ; ; ; This program is distributed in the hope that it will be useful, ; ; but WITHOUT ANY WARRANTY; without even the implied warranty of ; ; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ; ; GNU General Public License for more details. ; ; ; ; You should have received a copy of the GNU General Public License ; ; along with this program; if not, write to the Free Software ; ; Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. ; ; ; ;=======================================================================; This code is designed to work without interrupts (compatible with the ROM bootstrap code). Consequently, timing functions are done by polling and/or delay loops. The DMA is used for data transfer, and is polled for completion (check that the byte counter has decremented to zero). Call: A - OPCODE: 0 - Reset disk system: all drives uncalibrated 1 - Turn motors off (leave drives calibrated) 2 - Read sector/s 3 - Write sector/s 4 - Verify sector/s 5 - Format track 6 - Translate logical address to physical B - No. of sectors to read/write C - Track No. (even tracks are Side 0, odd tracks are Side 1) D - Drive No. (0..3) E - Sector No. HL - Ptr. to data buffer (logical address) IX - Ptr. to Drive Parameter Block (DPB) Return: If successful: CY = 0 A undefined HL advanced past data block If errors: CY = 1 A status (see below) HL unchanged In either case: DE -> Result vector (7 bytes) IX, IY unchanged BC trashed $ Z80182 equ 0 include Z180.INC include DPARM.INC include FDC.INC incformat equ 0 ;Define this to include the FORMAT cmnd. .sall dseg ;====================================================================== ; L O C A L D A T A ;Return-error status values (in A, if CY=1) calerr equ 1 ;Error in a recalibration function ioerr equ 2 ;Error posted by Result Phase: see (HL) badsect equ 3 ;Sector/Length will overrun track lostdat equ 4 ;DMA did not transfer full block timeout equ 5 ;Interrupt timed out badcmd equ 6 ;Invalid function code sekerr equ 7 ;Seek error calibd: ds 1 ;Drives "Calibrated" flags mask: ds 1 ;Bit-mask of current drive restab: ds 7 ;Buffer for result-phase data rtcnt: ds 1 ;IO command retry count (after RESTAB) switch: ds 3 ;Builds a JP instruction tries equ 3 ;No. of retries on IO errors blksze: ds 2 ;Save block size cseg ;====================================================================== ; F . D . C . C O M M A N D C O D E S cmd_recal equ 7 ;Recalibrate cmd_sense equ 8 ;Sense Interrupt cmd_seek equ 0fh ;Seek to track cmd_read equ 46h ;Read (MFM, implied seek) cmd_write equ 45h ;Write, ditto cmd_verify equ 56h ;Verify, ditto cmd_format equ 4dh ;Format a track ; D . M . A . C O M M A N D S dma_incmd equ 0cdh ;IO => MEM dma_outcmd equ 0f1h ;MEM => IO dma_run equ 63h ;Kick off Channel-0 ;====================================================================== ; U T I L I T Y S U B R O U T I N E S waitint: ;Wait for interrupt (but polled) push bc push de ld bc,0 ;Inner timeout counters ld d,20 ;Coarse timeout setting w1: in0 a,(drc) ;Get interrupt lines bit 6,a jr z,w2 ;Go if interrupt set dec c jr nz,w1 djnz w1 ;65k loops dec d jr nz,w1 ;Coarse outer loop scf jr w3 ;Exit: timed out w2: xor a ;Exit: OK w3: pop de pop bc ret ;-------------------------------- testresult: ;Check results of I/O operations ; IY -> test-block for status: ; see "launch" for details call waitint ;Wait for completion ld a,timeout jr c,exit ;Failed (CY posted to caller) ;Get 7 result bytes after read/write push bc push de ld de,restab ;Point to Result Table ld b,7 ;No. of expected bytes lc3: call getbyte ld (de),a inc de ;Post it djnz lc3 pop de pop bc ld hl,restab ;Pointer to results block push hl ld a,(hl) and 0f8h ;Kill variable bits (just errors) cp (iy+tst0) ;Check to expected value jr nz,bad inc hl ld a,(hl) cp (iy+tst1) ;Check to expected value jr nz,bad inc hl ld a,(hl) sub 0 ;No "funny" errors (ever!) jr nz,bad in0 l,(bcr0l) in0 a,(bcr0h) or l ;Check that all was transferred pop hl ld a,lostdat jr nz,bad ;Should have counted back to zero xor a ;It all succeeded! jr exit ;OK: return CY=0 (A=0) bad1: ld a,badsect ;Bad sector specification scf jr exit bad: ld a,ioerr ;Error post: see block at (HL) pop hl scf exit: ret ;CY = error ;-------------------------------- sendbyte: ;Send A to Cmnd/data port push af scb1: in0 a,(_MSR) ;Check FDC status bit 7,a ;Wait till ready jr z,scb1 pop af ;Recover the cmnd. byte out0 (_DATA),a ret ;-------------------------------- getbyte: ;Read Cmnd/data port to A in0 a,(_MSR) bit 7,a ;Ready? jr z,getbyte in0 a,(_DATA) ;Get it ret ;-------------------------------- sendcmdstrg: ;Send string of commands from HL push bc ;1st. byte is count ld b,(hl) ;Save count scs1: inc hl ld a,(hl) ;Get cmnd. byte call sendbyte ;Send it djnz scs1 ;Repeat pop bc ret ;-------------------------------- uncal: ;Force a recalibrate on this drive push hl ld hl,calibd ;First force a recalibrate ld a,(mask) cpl and (hl) ;Turn of the "calibrated" bit ld (hl),a pop hl ret ;-------------------------------- dmainput: ;Set up DMA buffers for input call absaddr ;Get physical addr. for DMA out0 (dar0l),l out0 (dar0h),h out0 (dar0b),a ;Destination pointers ld a,_DMA out0 (sar0l),a ;Source: FDC's DMA port xor a out0 (sar0h),a out0 (sar0b),a ;Controlled by /DREQ0 ret ;-------------------------------- dmaoutput: ;Set up DMA buffers for output call absaddr ;Get physical addr. for DMA out0 (sar0l),l out0 (sar0h),h out0 (sar0b),a ;Source pointers ld a,_DMA out0 (dar0l),a ;Destn.: FDC's DMA port xor a out0 (dar0h),a out0 (dar0b),a ;Controlled by /DREQ0 ret ;-------------------------------- ;Offsets for inline arguments opcode equ 0 ;Command to FDC tst0 equ 1 ;Match Status 0 tst1 equ 2 ; " " 1 skip equ 3 ;No. of bytes to skip at return launch: ;Initiate a read or write command ex (sp),iy ;Save IY, point at argts. ld a,e ;Find final sector for transfer add a,b dec a ;Last sector to do dec a ;1 under final cp (ix+EOT) ;This MUST be < true final jr nc,bad1 inc a ;True final sector ld h,a ;Save it ld a,(iy+opcode) call sendbyte ;Command code ld a,d ;Drive bit 0,c ;Odd track (ie Side 1)? jr z,lc1 set 2,a lc1: call sendbyte ;Drive & head ld a,c srl a ;Cylinder call sendbyte ld a,c and 1 call sendbyte ;Head ld a,e call sendbyte ;Sector ld a,(ix+SECSZE) call sendbyte ;Sector length (encoded) ld a,h call sendbyte ;Final sector no. ld a,(ix+GPL) call sendbyte ;Gap length ld a,dma_run ;Activate DMA Ch-0 out0 (dstat),a ld a,0ffh ;Data transfer length (default) call sendbyte ;Final byte: FDC & DMA running call testresult ;Find out what happened push bc push af ld bc,skip add iy,bc ;Jump past the inline params. pop af pop bc ex (sp),iy ;Recover IY, post link ret ;-------------------------------- transze: ;Determine buffer size (DMA count set) push hl push de push bc ld hl,64 ld b,(ix+SECSZE) ;Size N, => 128*2^N inc b tz1: add hl,hl djnz tz1 ld d,h ld e,l ;Sector size in DE ld hl,0 pop bc ;No. of sectors in B push bc tz2: add hl,de ;Form total in HL djnz tz2 out0 (bcr0l),l ;Set DMA counter out0 (bcr0h),h ld (blksze),hl ;Save block size pop bc pop de ;Restore regs. pop hl ret ;-------------------------------- endseek: ;Finish of a seek/recalibrate function call waitint ;Wait for it ld a,timeout ret c ;Timed out ld a,cmd_sense ;"Sense Interrupt" at the end call sendbyte call getbyte ld b,a ;ST0 in B call getbyte ;PCN in A push bc ;Verify correct cylinder srl c cp c ;Yes? pop bc ld a,sekerr scf ret nz ;Quit if unequal ld a,b ;Get back ST0 and 0e0h cp 20h ;Look for success ret z ld a,calerr scf ret ;CY=1 if it failed ;-------------------------------- doron equ 0ch ;Basic state: no drives, no reset, DMA setup: ;Prepare for a Read or Write operation push bc ;Save them... push hl ld b,d ;Drive no. inc b ld a,08h su1: add a,a djnz su1 ;Shift drive bit as reqd. ld (mask),a ;Save drive indicator bit ld b,a ;Local copy in0 a,(_DOR) ld c,a and 0fch ;Kill select bits or d ;Select reqd. drive or doron ;No reset, DMA out0 (_DOR),a ;Selected ld a,c and b ;Is this drive running? jr nz,su2 in0 a,(_DOR) or b ;Start it up out0 (_DOR),a ; Wait for motor to run-up. NB this delay assumes: ; 1. 16MHz CPU clock ; 2. 2 wait states per memory access ; 3. Z-80 instruction cycle-counts ld a,(ix+MTRON) ;Start delay add a,a ;Scale for inner loop ld bc,0 ;Prime for inner loop mo1: djnz mo1 ;17*256 = 4352 clocks dec c ; 6 jr nz,mo1 ; 17 ; ---- ; 4375 clocks ; x 256 ; ------- ; 1,120,000 clocks ; or, 1/16 second dec a jr nz,mo1 ;Full delay su2: ;Send the SPECIFY command (all from DPB) ld a,(ix+DRATE) out0 (_CCR),a ;Data rate as reqd. ld a,03h ;"Specify" call sendbyte ld a,(ix+SPEC_1) call sendbyte ld a,(ix+SPEC_2) res 0,a ;Be sure DMA is activated call sendbyte ld hl,calibd ld a,(mask) and (hl) ;Is this drive calibrated? jr nz,su3 ;Done if so ld a,cmd_recal call sendbyte ;Send the "recal" command ld a,d call sendbyte ;Drive no. call endseek ;Finish the operation jr c,su5 ;Jump if error ld a,(mask) or (hl) ld (hl),a ;Flag it calibrated, now su3: xor a ;Success... su5: and a ;Set the Z bit pop hl pop bc ret ;Done: Z set if OK ;====================================================================== ; C O M M A N D D E S P A T C H E R global diskop diskop: cp maxcmd jr c,do1 ld a,badcmd scf ret ;Illegal command do1: call entry ;Enter the slave routine push af ;Save exit status call c,reset ;If errors, reset the FDC pop af ret c ;If error, take exit code xor a ;If OK, return zero ret ;Back to caller entry: push hl ;Save it ld hl,dtab add a,a ;Scale opcode by 2 add a,l ld l,a ;Access the jumptable jr nc,do2 inc h ;Propagate carry do2: ld a,(hl) ;Look into the table inc hl ld h,(hl) ld l,a ex (sp),hl ;Recover HL: routine ptr. on stack ret ;Switch to routine dtab: ;Pointers to function routines dw reset dw motors dw xread ;I/O functions: call wrappers dw xwrite dw xverf dw xform dw absaddr maxcmd equ ($-dtab)/2 ;No. of valid commands ;====================================================================== ; I / O C O M M A N D W R A P P E R F U N C T I O N ; The READ, WRITE, VERIFY and FORMAT commands are essentially identical. ; The despatcher calls a stub, which sets up a common wrapper to ; run the required sub-function, and to implement re-tries in the ; event of data errors. ; Wrapper stubs. The common tail is called with the user's HL stacked, ; and HL pointing to the required sub-function. jpopc equ 0c3h ;A "JP" opcode xread: push hl ld hl,read ;Sub-function pointer jr comtail xwrite: push hl ld hl,write jr comtail xverf: push hl ld hl,verify jr comtail xform: push hl ld hl,format comtail: ;Common tail of the "wrapper" function ld (switch+1),hl ;Target for the despatcher pop hl ;Caller's value push af ld a,jpopc ld (switch),a ;Complete the "JP" instruction push hl ld hl,0 ld (blksze),hl ;Default value pop hl ld a,tries again: ld (rtcnt),a ;Retry counter pop af push hl call switch ;To the sub-function pop hl ;Save HL (no others changed) jr nc,ok ;Exit: no error cp ioerr ;Was it an IO error? jr z,more cp sekerr ;Or a seek error jr nz,fatal ;No: other errors are fatal more: push af ;Seek or IO errors: retry call uncal ;Reset the "calibrated" bit ld a,(rtcnt) dec a ;Count attempts jr nz,again ;More to go pop af ;Exhausted: get the error code fatal: scf ;Hard errors ld de,restab ;Pass the result pointer ret ok: ld de,(blksze) add hl,de ;Success: index HL past block ld de,restab ;Return DE -> status block ret ;------------------------------- fails: ;Common stub for sub-functions to exit with error scf ret ;====================================================================== ; R E S E T T H E D I S K E T T E S Y S T E M reset: push hl xor a ld (calibd),a ;All drives uncalibrated out0 (_DOR),a ;Force reset ld a,doron out0 (_DOR),a ;All drives off (DMA asserted) ld hl,configtab call sendcmdstrg ;"Configure" xor a ;Post OK pop hl ret configtab: db ecft-$-1 ;Length db 13h ;"Configure" db 00h ;Required db 71h ;No FIFO in use db 43 ;Write precomp point ecft equ $ ;====================================================================== ; T U R N O F F A L L D R I V E - M O T O R S ; This command is really only needed until interrups are supported, ; since it is then possible to automatically turn off a drive which has ; not been accessed for some time. ; This command is used by the elementary BIOS keyboard routine: the ; drives are turned off if the system has waited for keyboard input ; for too long - a simple method! motors: in0 a,(_DOR) and 0fh ;Drop motor lines: keep selection out0 (_DOR),a xor a ;"Success" ret ;====================================================================== ; R E A D O N E O R M O R E S E C T O R S read: call setup ;Drive selected & ready jp nz,fails call dmainput ;Set up DMA pointers for input call transze ;Get total buffer size ld a,dma_incmd out0 (dmode),a ;DMA set up: IO => MEM call launch ;Go fire it off db cmd_read ;Command code db 40h ;Expected ST0 db 80h ;Expected ST1 ret ;CY=fault: HL -> result phase ;====================================================================== ; W R I T E O N E O R M O R E S E C T O R S write: call setup ;Drive selected & ready jp nz,fails call dmaoutput ;Set up DMA pointers for output call transze ;Get total buffer size ld a,dma_outcmd out0 (dmode),a ;DMA set up: MEM => IO call launch ;Go fire it off db cmd_write ;Command code db 40h ;Expected ST0 db 80h ;Expected ST1 ret ;CY=fault: HL -> result phase ;====================================================================== ; V E R I F Y S E C T O R S - N O T R A N S F E R verify: call setup ;Drive selected & ready jp nz,fails call launch ;Go fire it off db cmd_verify ;Command code db 0 ;Expected ST0 db 0 ;Expected ST1 ret ;CY=fault: HL -> result phase ;====================================================================== ; F O R M A T A T R A C K O F T H E D I S K E T T E format: ifdef incformat ;Do we include FORMAT ? call setup ;Drive running, & calibrated jp nz,fails ld a,cmd_seek ;Seek to the required track call sendbyte ;We cannot use "implied seeks" here ld a,d bit 0,c jr z,fm1 set 2,a ;A = drive & head bits fm1: call sendbyte ld a,c srl a ;Cylinder no. call sendbyte call endseek ;Wait for seek to complete ret c ;Failed call dmaoutput ;DMA pointers for output push hl ld l,(ix+EOT) ;No. of sectors ld h,0 add hl,hl add hl,hl ;4 bytes/sector out0 (bcr0l),l out0 (bcr0h),h ;Set up DMA counter ld (blksze),hl pop hl ld a,dma_outcmd out0 (dmode),a ;DMA armed to output ld a,cmd_format ;Now initiate the FDC call sendbyte ld a,d bit 0,c jr z,fm2 set 2,a ;Side select fm2: call sendbyte ;Drive & side ld a,(ix+SECSZE) call sendbyte ;Sector size ld a,(ix+EOT) call sendbyte ;Final sector no. ld a,(ix+GAPFMT) call sendbyte ;Gap-3 length ld a,dma_run out0 (dstat),a ;Kick off the DMA ld a,(ix+DATFMT) call sendbyte ;Last byte: FDC running push iy ld iy,fmtres ;Expected results call testresult ;Wait for it... pop iy ret ;A and CY show result fmtres: db 0 ;Filler db 0 ;ST-0 db 0 ;ST-1 else jp fails ;No FORMAT command endif ;====================================================================== ; C O N V E R T L O G I C A L T O P H Y S I C A L A D D R E S S ; This utility converts a logical address (in HL) to a 20-bit physical ; address (in AHL). Other registers are unchanged. Absolute addresses ; are used by the Z182 DMA. ; The routine accesses the memory-mapping hardware registers, to obtain ; the current translations. ;NB This code assumes that CA1 > BA > CA0 absaddr: ;Converts HL to AHL push hl ld a,h ;First, see which logical bank and 0f0h ld h,a ;Save 4kB page in0 a,(cbar) and 0f0h ;CA1 logical base ld l,a ld a,h sub l ;Form Addr - Base jr c,not1 ;If CY: Addr < Base, so don't use in0 a,(cbr) ;It is CA1 - take base jr mod not1: in0 a,(cbar) add a,a add a,a add a,a add a,a ;BA logical base in A[7:4] ld l,a ld a,h sub l ;Form Addr - Base ld a,0 jr c,mod ;Not BA, must be CA0 in0 a,(bbr) ;Else, it is BA mod: pop hl ;Now do the adjustment push bc ;Save it push hl ;Save HL again ld c,h ld b,0 ;BC = HL >> 8 ld l,a ld h,b ;HL = physical base add hl,hl add hl,hl add hl,hl add hl,hl ;HL = physical base << 4 add hl,bc ;Top address in HL ld a,h and 0fh ;Bits 19:16 in A ld b,l ;Save bits 15:8 pop hl ld h,b ;Full address in AHL pop bc ;Restore BC and a ;CY=0 (ie no errors) ret ;Done end d hl,hl add hl,hl add hl,hl add hl,hl ;HL = physical base << 4 add hl,bc ;Top address in HL ld a,h and 0fh ;Bits 19:16 in A ld b,l ;Save bits 15:8 pop hl ld h,b ;Full address in AHL pop bc ;Restore BC and a ;CY=0 (ie no erroåååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååå;Standard drive-parameter block ; Format is same as MS-DOS BIOS SPEC_1 equ 0 ;"Specify" byte 1 SPEC_2 equ 1 ;"Specify" byte 2 MTROFF equ 2 ;Wait before stop motor SECSZE equ 3 ;Bytes/sector (must be > 0) EOT equ 4 ;Final sector no. GPL equ 5 ;Gap length DTL equ 6 ;Data transfer length GAPFMT equ 7 ;Gap-3 length: Format DATFMT equ 8 ;Data fill: Format SETTLE equ 9 ;Head-settle time (mS) MTRON equ 10 ;Motor-start (* 1/8 sec.) MAXCYL equ 11 ;Max. cylinder no. DRATE equ 12 ;Data rate  EOT equ 4 ;Final sector no. GPL equ 5 ;Gap length DTL equ 6 ;Data transfer length GAPFMT equ 7 ;Gap-3 length: Format DATFMT equ 8 ;Data fill: Format SETTLE equ 9 ;Head-settle åååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååå; Standard drive-type identifiers ntypes equ 5 ;No. of defined types D5_360 equ 0 ;5", 360kB D5_120 equ 1 ;5", 1.2MB D3_720 equ 2 ;3", 720kB D3_144 equ 3 ;3", 1.44MB D3_288 equ 4 ;3", 2.88MB ROMHOOK INCpBIOS HEX,qrsBIOS MAC€tuvwxyz{BIOS MAC5|}~BIOS SUB€BIOSTOP MAC�DPARM INC‚DRVTYPE INCåååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååå; Port definitions for the FDC37C665/6 combo chips ; Prefix a "_" as some names clash with Z180 names ; Diskette controller _DOR equ 92h ;Digital Output _MSR equ 94h ;Main Status _DSR equ 94h ;Data-rate Select _DATA equ 95h ;Data & commands I/O _DIR equ 97h ;Digital Input _CCR equ 97h ;Confign. Control _DMA equ 0a0h ;Diskette DMA address ; Serial port ;RD/WR _RBR equ 98h ;R Receiver buffer _THR equ 98h ;W Transmit holding reg. _IER equ 99h ;RW Interrupt-enable reg. _IIR equ 9ah ;R Interrupt ident. reg. _FCR equ 9ah ;W FIFO control reg. _LCR equ 9bh ;RW Line control reg. _MCR equ 9ch ;RW Modem control reg. _LSR equ 9dh ;RW Line status reg. _MMSR equ 9eh ;RW Modem status reg. (name clash w. FDC) _SCR equ 9fh ;N/A Scratch reg. (not avail. in XT) _DDL equ 98h ;RW Divisor LSB | with DLAB _DLM equ 99h ;RW Divisor MSB | set high 9ah ;R Interrupt ident. reg. _FCR equ 9ah ;W FIFO control reg. _LCR equ 9bh ;RW Line control reg. _MCR equ 9ch ;RW Modem control reg. _LSR equ 9dh ;RW Line status reg. _MMSR equ 9eh ;RW Modem status reg. (name clash w. FDC) _SCR equ 9fh ;N/A Scratch reg. (not avail. in XT) _DDL ååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååascicr equ 0dh ;ASCII characters ascilf equ 0ah ascibs equ 08h asciht equ 09h asciesc equ 1bh space equ ' ' ascdel equ 7fh åååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååå.comment $ R O M - M O N I T O R E X T E R N A L H O O K S Definitions of code-hooks for external entry to the ROM. These are intended for use by OS boot-sectors, etc. They MUST NOT be used by BIOS and similar code, since the ROM will be disabled. The symbolic names are those used in the ROM code for these routines. $ diskop equ 8 ;JP to diskette handler dpb3 equ diskop+3 ;Ptr. to 3" D.P.B. dpb5 equ dpb3+2 ;Ptr. to 5" D.P.B. getchr equ 10h ;Read console to A (or 0) putchr equ 18h ;Output A on console putmsg equ 20h ;Output ASCIIZ (HL) on console break equ 38h ;ROM breakpoint trap ;----------------------------------------------------------------------- ill be disabled. The symbolic names are those used in the ROM code for these routines. $ diskop equ 8 ;JP to diskette handler dpb3 equ diskop+3 ;Ptr. to 3" D.P.B. dpb5 equ dpb3+2 ;Ptr. to 5" D.P.B. getchr equ 10h ;Read console to A åååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååå; Macros to provide "subroutines" without a stack xcall macro link,tgt local next ld link,next jp tgt next equ $ endm xretn macro link jp (link) endm åååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååå page 90 title Cold-Start Functions ;===============================================================; ; ; ; C O L D - S T A R T F U N C T I O N S ; ; ; ;===============================================================; ;=======================================================================; ; ; ; D-X Designs Pty. Ltd. Perth, Western Australia ; ; Project: 112 May, 1996 ; ; ; ; Copyright (C) 1996, 1997 David R. Brooks ; ; ; ; This program is free software; you can redistribute it and/or ; ; modify it under the terms of the GNU General Public License ; ; as published by the Free Software Foundation; either version 2 ; ; of the License, or (at your option) any later version. ; ; ; ; This program is distributed in the hope that it will be useful, ; ; but WITHOUT ANY WARRANTY; without even the implied warranty of ; ; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ; ; GNU General Public License for more details. ; ; ; ; You should have received a copy of the GNU General Public License ; ; along with this program; if not, write to the Free Software ; ; Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. ; ; ; ;=======================================================================; ; Basic hardware initialisations for the Z80182 CP/M board. ; Determine hardware configuration, and make optimal hardware ; setups. Link with the standard D-X Designs debugger. ;----------------------------------------------------------------------- ; R E V I S I O N H I S T O R Y ; See DEBUG.MAC for version numbers ; 20-05-96 Initial issue ; 07-07-96 Display version number ; 22-08-96 Date changed to agree with fix to DEBUG ; 06-02-97 Report 1MB RAM size correctly ; Add IO waits for 24.576MHz ; 08-03-97 Correct wait-state contols: multiple speeds & phantom ROM ;---------------------------------------------------------------------- ;lanalyse equ 0 ;Define to setup the CPU for a ; logic analyser (extra outputs) Z80182 equ 0 ;Define the CPU variant in use .sall include Z180.INC ;Standard definitions include ASCII.INC include FDC.INC include MACROS.INC extrn rst38 extrn debug extrn memsetup ;Code to locate RAM chips extrn diskop ;DIskette handler extrn dpb3i, dpb5i ;Diskette parameter blocks ;Debugger routines used here... extrn putmsg ;Display ASCIIZ string at HL extrn decout ;Display HL in decimal extrn puta ;Convert A to hex. at [DE] ;------------------------------------------------------------------ ; H O O K S F O R B O O T - S E C T O R S , E T C . aseg ;Service functions, accessed by RSTs org 0 jp begin ;Cold-start entry today: db 97H, 03H, 08H ;Date code: YYMMDD (see also "isdate") org 08h jp diskop ;Hook to disk routine for boot-loader dw dpb3i ;Pointers to standard DPB's dw dpb5i org 10h jp getchr ;Get keyboard to A (or Z) org 18h jp putchr ;Send A to display org 20h jp putmsg ;Display ASCIIZ string ;------------------------------------------------------------------ org 38h jp rst38 ;Trap for debugger ;------------------------------------------------------------------ dseg global ivpage ivpage: ds 40h ;Interrupt vectors (start of dseg load) ;------------------------------------------------------------------ cseg ;Signature in the ROM code (see also "today") isdate: db 'ROM-code built: ' db '08 Mar. 1997',0 db 'D-X Designs Pty Ltd, Perth Australia',0 ;================================================================== ; CTC INTERRUPT-SOURCE ROUTINES (for the Debugger) ; ; The name is a misnomer. These routines are usually supported by ; a Z80-CTC device, however the Z182 does not have one. They are ; therefore supported by Channel-0 of the Programmable Reload Timer ;================================================================== global getvect global armctc global stopctc getvect: ;Return addr. of CTC interrupt vector ld a,i ld h,a ;MSB - Interrupt page in0 a,(il) add a,VPRT0 ;Offset for timer ld l,a ;HL -> Vector locn. ld a,h or l ;Z set if none. (May corrupt A) ret ;Return CTC interrupt vector armctc: ;Trigger an interrupt ASAP di ld hl,1 ;A very short time out0 (rldr0h),h out0 (rldr0l),l ;Reload reg. out0 (tmdr0h),h out0 (tmdr0l),l ;Down counter in0 a,(tcr) or 11h ;Set timer & interrupt out0 (tcr),a ;Trigger the timer ret ;Return with ints. disabled stopctc: ;Acknowledge & cancel interrupt ;To stop the timer safely, do these EXACTLY ; as given!! in0 a,(tcr) ;Read status first and 0a2h ;Kill Ch-0, don't touch Ch-1 out0 (tcr),a ;Stop it running nop in0 a,(tcr) ;Acknowledge the interrupt in0 l,(tmdr0l) ;Must read these, to clear ints. in0 h,(tmdr0h) ; (they are discarded) ei ret ;Don't use RETI for internals ctcsetup: ;Basic CTC interrupt initialisation ret ;Nothing needed for timer ;================================================================== ; BASIC INITIALISATIONS ;================================================================== global hwmsg hwmsg: db 'Special P112 version: interrupts supported',ascicr,0 begin: ld hl,inztab ;Basic setups xcall ix,ioiz2 ld hl,itab ;Set up the Z182 serial port ld b,(hl) iz1: inc hl ;Can't use OTIR: high addr. bits! ld a,(hl) out0 (sccacnt),a ;Send it djnz iz1 xcall iy,memsetup ;Set up the RAM, define stack ld a,high ivpage ld i,a ;Set interrupt page-base im 2 ;Interrupt hardware operating mode ld hl,0ffffh ;Clear out RAM first xor a clp: ld (hl),a dec hl bit 7,h jr nz,clp ;Down to 8000H ld sp,0ffffh ;Put stack at the top call clockspd db 0 ;Setup clock, no output yet call ctcsetup ;Setup interrupt for debugger ld hl,nline call putmsg ;Blank line at the start call smcsetup ;Initialise the SMC chip xor a ;Be sure timer is stopped out0 (tcr),a ld hl,isdate call putmsg ;ROM date code ld hl,sepr call putmsg call clockspd ;Report system-clock speed db 1 call tellmem ;Report available RAM jp debug ;To the internal debugger nline: db ascicr,0 sepr: db ' ',0 ;=========================================================== ; Routine to output a block of initialisation data. Table is ; Port, then Data. A port-value of 0 terminates. ;Pass block addr. in HL (port, data) ;Advances HL to end of table ioinz: push af ;Save regs. push bc push ix ld ix,iiz2 jr ioiz2 ;Run the "inner shell" iiz2: pop ix pop bc ;Get them back pop af ret ioiz2: ;This inner segment can be called without use if the stack, ; by passing a "link" in IX. Used at the very start of ; things, before the stack is set up ;This version corrupts AF, BC ld a,0ffh ilp: ld b,0 ;MS address bits ld c,(hl) ;Output port tst c ;Zero will halt jr z,xt ;Found end marker inc hl ;Else, point to data outi ;Sent, alters B jr ilp xt: jp (ix) ;"Return" ;================================================================== ; PRIMARY I/O PORT ROUTINES ;================================================================== global getchr ;Input 1 char. to A global putchr ;Output 1 char. from A putchr: ;Output A on ESCC port push af outax: in0 a,(sccacnt) bit 2,a ;Port ready? jr z,outax ;Loop till it is pop af out0 (sccad),a ;Send char. ret getchr: ;Get char. from ESCC to A (Z if none) in0 a,(sccacnt) and 01h ;Take only RX-ready ret z ;If none, exit with Z (& A=0) in0 a,(sccad) ;Else, pull the char. ret ;================================================================== ; SMC CHIP SETUP ROUTINE ;================================================================== ; NB This code is written for the FDC37C665 series parts. ; Although the hardware can run other parts, this code will ; need altering. .radix 16 cfcntl equ 90 ;Configuration control port cfdata equ 91 ;Configuration data port ;Confign. registers: see SMC data-sheet for details CR0 equ 0 ;Power-save controls CR1 equ 1 ;Serial/parallel port addresses CR2 equ 2 ;UART setups CR3 equ 3 ;FDC setups CR4 equ 4 ;Parallel port setups CR5 equ 5 ;FDC/IDE setups CR6 equ 6 ;Floppy drive types CR7 equ 7 ;Boot floppy drive, Media ID polarity CR8 equ 8 ;ADRx lower address bits CR9 equ 9 ;ADRx upper address bits CRA equ 0a ;ECP FIFO threshold CRB equ 0b ;Reserved CRC equ 0c ;Reserved CRD equ 0d ;Part sub-type: "65" or "66" CRE equ 0e ;Chip revision: "GT"=02, "IR"=82 CRF equ 0f ;Reads as zero config macro ?port, ?data db cfcntl, ?port db cfdata, ?data endm entercfg: ;Enter Configuration Mode db cfcntl, 55 ;Special sequence to enter mode db cfcntl, 55 ;NB different for the '666 series db 0 exitcfg: ;Exit Configuration Mode db cfcntl, 0aa db 0 cfg665: ;Config. for FDC37C665GT, -IR cfg666: ;Ditto FDC37C666xx config CR0, 38 ;IDE disabled, FDC enabled config CR1, 85 ;Basic bi-di printer port config CR2, 1c ;UART 1 at primary addr., UART 2 off config CR3, 78 ;Diskette: normal XT mode config CR4, 00 ;No ECP/EPP parallel port modes config CR5, 24 ;Swap drive 0,1 lines db 0 smcsetup: ;Configure the SMC multi-IO chip ld hl,entercfg call ioinz ;Put it into Config. mode ld a,CRF call getone ;CRF must = 0 and a jr nz,badchip ld a,CRD call getone ld ix,cfg665 cp 65 ;Must be '665 or '666 jr z,check1 ld ix,cfg666 cp 66 jr nz,badchip check1: ld b,a ;Saved chip ID ld a,CRE call getone ld c,a ;Save subtype res 7,a cp 2 ;Must be correct jr nz,badchip ;Found a good chip: say so push bc ld hl,chipm1 call putmsg pop bc ld hl,chipm5 ld a,b cp 66 jr nz,cf2 ld hl,chipm6 cf2: push bc call putmsg pop bc ld hl,chipm2 bit 7,c jr z,cf3 ld hl,chipm3 cf3: call putmsg ld hl,chipm4 call putmsg push ix pop hl call ioinz ;Do the configuration jr cfdone badchip: ld hl,chipm9 call putmsg ;Unrecognised chip cfdone: ld hl,exitcfg ;Exit config. mode call ioinz ret ;Done chipm1: db ascicr,'SMC IO chip identified (FDC37C66',0 chipm2: db 'GT)',0 chipm3: db 'IR)',0 chipm4: db ': configuring',ascicr,0 chipm5: db '5',0 chipm6: db '6',0 chipm9: db ascicr,'Unrecognised IO chip: not configured',ascicr,0 getone: ;Read config. register given in A out0 (cfcntl),a ;Point to the reg. in0 a,(cfdata) ;Get value ret ;================================================================== hexa: ;Output A in hexadecimal push de push hl ;Save regs. ld hl,0 push hl push hl ;Local space: 4 bytes add hl,sp ;SP -> HL ld e,l ld d,h ;Copy in DE call puta ;A-> hex. on stack dec de xor a ld (de),a ;Terminator call putmsg ;Display it (from HL) pop hl pop hl ;Discard temp. space pop hl ;Restore saved regs. pop de ret ;================================================================== ;Measure the system-clock speed. ; Measurement is done by setting the 2ary serial port to ; 1200bps, and outputting a 10-bit character (actually NUL). ; This interval equates to a frequency of 1200/10 = 120Hz. ;This period is measured using the Z180 system timer, which ; counts CLK/20. The final value will then be ; SYSCLK / (20 * 120). This will be a 65k complement, as the ; timer counts down. The measurement will be subject to some ; error, but near enough to identify the standard crystals: ; 12.288MHz, 16.0MHz, 18.432MHz, and 24.576MHz. ; ; The estimated speed is reported on the monitor, and the ; Timer-1 reload register is set up to yield a "tick" rate ; of 25Hz. The "tick" is NOT actually initiated. clockspd: in0 a,(_LSR) ;First, be sure it's empty bit 6,a jr z,clockspd ld hl,tminz ;Ready to run it call ioinz ;Kick off SIO & timer clkw: in0 a,(_LSR) ;Now wait till it's gone bit 6,a jr z,clkw in0 l,(tmdr1l) ;Get residual timer into HL in0 h,(tmdr1h) xor a ;Then kill the timer (at startup, out0 (tcr),a ; we know it's not shared) in0 a,(_RBR) ;Clear the looped char. inc h ;Round HL in top 7 bits res 0,h ;Further rounding ld b,tcnt ;No. of table items ld a,h ld hl,trtab ld de,ltab tr1: cp (hl) ;Matched? jr z,tr2 add hl,de ;No: next djnz tr1 ld hl,nomat ;No match... call putmsg ld hl,oddone-1 ;Offset for INC below tr2: inc hl ;Point at the timer value ld a,(hl) out0 (rldr1l),a inc hl ld a,(hl) out0 (rldr1h),a ;Set-up the timer inc hl ld a,WR12 out0 (sccacnt),a ld a,(hl) out0 (sccacnt),a inc hl ld a,WR13 out0 (sccacnt),a ld a,(hl) out0 (sccacnt),a ;Set a correct baud-rate inc hl in0 a,(scr) ;Is the ROM phantomed? bit 3,a ld a,(hl) ;Value for phantom inc hl jr nz,nph ld a,(hl) ;Value if not phantomed nph: out0 (dcntl),a ;Define memory & IO waits inc hl ld a,(hl) inc hl ld h,(hl) ld l,a ;Msg. pointer in hl or h ;Zero if none ret z pop de ld a,(de) ;In-line flag inc de push de ;Replace link and a ;If zero, no messages ret z push hl ;Else, output reports ld hl,xtms1 call putmsg pop hl call putmsg ;The observed frequency ld hl,xtms2 call putmsg ret ;Then done xtms1: db 'CPU clock: ',0 xtms2: db 'MHz',ascicr,0 .radix 10 trtab: db 0ech ;Translation table for results dw 24576 ;Timer value dw 38 ;Baud-rate value (9600bps) db 20h ;Wait states: ROM phantomed db 20h ; ditto: physical ROM dw ms12 ;Ptr. to message ltab equ $-trtab db 0e6h dw 32000 dw 50 db 20h db 20h dw ms16 db 0e2h dw 36864 dw 58 db 60h db 0a0h dw ms18 db 0d8h dw 49152 dw 78 db 70h db 0f0h dw ms24 tcnt equ ($-trtab)/ltab ;No. of entries oddone: dw 34000 ;Default timer for odd crystals dw 50 db 70h ;Use the slowest values db 0f0h dw 0 ;No message here .radix 16 ms12: db '12.288',0 ms16: db '16.0',0 ms18: db '18.432',0 ms24: db '24.576',0 nomat: db 'Non-standard CPU clock crystal: timer will' db ' be inaccurate',ascicr,0 tminz: db _LCR, 80 ;DLAB=1 db _DDL, 60 ;96D, divisor for 1200bps db _DLM, 0 db _LCR, 03 ;DLAB=0, 8 bits, no parity db _MCR, 10 ;Loopback, so nothing is output db tmdr1l, 0 db tmdr1h, 0 ;Timer-1: preset to zero db rldr1l, 0 db rldr1h, 0 db tcr, 02 ;Kick off the timer db _THR, 0 ;Send the byte db 0 ;Stop flag ;================================================================== tellmem: ;Report amount of RAM available in0 a,(ramubr) ;Upper bound add a,1 ;To 1st invalid page (set CY) rra ;Scale & keep CY in0 l,(ramlbr) ;Lower bound srl l ;Scale similarly sub l ;Available RAM / 8kB ld l,a ld h,8 mlt hl ;HL = size * 1kB push hl ld hl,rams1 ;Now output report call putmsg pop hl call decout ld hl,rams2 call putmsg in0 a,(ramlbr) call hexa ;Lower bound ld hl,rams3 call putmsg in0 a,(ramubr) call hexa ld hl,rams4 call putmsg in0 a,(scr) bit 3,a ;ROM shadowed? ld hl,rams5 call nz,putmsg ;Say so ld hl,nline call putmsg ret rams1: db 'RAM available: ',0 rams2: db 'kB. From ',0 rams3: db '000 to ',0 rams4: db 'FFF',0 rams5: db ', ROM shadowed into 1st 32kB',0 ;================================================================== .radix 16 ;Initialisation tables inztab: db rcr, 00 ;No refresh (all static) db omcr, 00 ;Timings as Z80 db il, 00 ;Local interrupts vector base ; db wsgcs, 9b ;CS waits don't work?? db dcntl, 70 ;Wait states: mem 1 (for ROM) ; IO 4 (for SMC) db bbr, 00 db cbr, 0fc ;Wrap CA1 over BA, at 08000 db cbar, 0c8 ;Memory mapping: ;Common 0: 0000-7FFF: 00000-07FFF ;Bank: 8000-BFFF: 08000-0BFFF ;Common 1: C000-FFFF: 08000-0BFFF db ramlbr, 08 ;RAM starts above ROM db ramubr, 0ff ;RAM to the top, for now db rombr, 07 ;ROM in 1st 32kB db intype, 5c ;INT1,2 level: MRD/WR, IOCS db ccr, 80 ;Full clock speed (16MHz) ifdef lanalyse db scr, 70 ;Logic analyser support else db scr, 60 ;No unnecessary outputs endif ; db itc, 39 ;Block SMC interrupts, yet db dra, 0a0 ;Initial values: Vpp off db ddra, 41 ;PA6 & 0 are in, others out db 0 ;End mark .radix 10 itab: ;ESCC serial channel db itabend-$-1 ;Length of table db WR4, 01000100b ;x16, 1 stop bit, no parity db WR1, 00000100b ;Parity is special RX condition db WR3, 11000000b ;RX 8 bits/char db WR5, 01100000b ;TX 8 bits/char db WR9, 00000001b ;Status affects int. vector db WR11, 01010110b ;RX & TX <- BRG, RTxC <- BRG db WR12, 50 ;Baud rate divisor LSB: 9600bps db WR13, 0 ;Ditto, MSB db WR14, 01100010b ;BRG source (internal) DPLL off db WR14, 00000011b ;BRG enabled db WR1, 00000100b ;Enable ints. here, if reqd. db WR15, 00000000b ;No "advanced" features db WR0, 00010000b ;Reset pending external ints. db WR0, 00010000b ;Repeat, to be sure of it db WR3, 11000001b ;RX enabled db WR5, 01101010b ;TX enabled, RTS active itabend equ $ end  ;Skip display/set until matched push ix push iy ;Display/change this register call uplvl ;Save environment while displaying rg5a: ld de,conbuf ;Here to re-display on error push ix pop hl ld a,c ld bc,3 ldir ;Register name + space ld c,a ;Restore C bit wrdreg,c ;1 or 2-byte? jr z,oneb ld l,(iy) ld h,(iy+1) call puthl ;2-byte jr rg5 oneb: ld a,(iy) call puta ;1-byte rg5: call outbuf ;Output current value ld hl,conbuf push hl ld (hl),space ;Be sure there's a space at start inc hl push bc ;Save flags in C ld b,szbuf-1 call get ;Reply line pop bc pop hl call getch ;Test reply jr z,rg6 ;Null: next reg. cp 'Q' jr nz,rg7 call dnlvl ;"Q" - Quit pop iy pop ix ;Balance stack xor a ret ;Done rg7: call getn2 ;Form new value in DE cp ascicr ;Must be valid jr z,rg8 ld hl,mbdn call pcr jr rg5a rg8: push de pop ix ;Save result call dnlvl pop iy ex (sp),ix ;Restore IX pop hl ;New value in HL, other regs. restored ld (iy),l bit wrdreg,c jr z,rg4 ld (iy+1),h ;MSB page 90 title Z-80 Resident Debugger subttl DEBUG data space ;=======================================================================; ; ; ; D-X Designs Pty. Ltd. Perth, Western Australia ; ; Project: 112 May, 1996 ; ; ; ; Copyright (C) 1996, 1997 David R. Brooks ; ; ; ; This program is free software; you can redistribute it and/or ; ; modify it under the terms of the GNU General Public License ; ; as published by the Free Software Foundation; either version 2 ; ; of the License, or (at your option) any later version. ; ; ; ; This program is distributed in the hope that it will be useful, ; ; but WITHOUT ANY WARRANTY; without even the implied warranty of ; ; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ; ; GNU General Public License for more details. ; ; ; ; You should have received a copy of the GNU General Public License ; ; along with this program; if not, write to the Free Software ; ; Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. ; ; ; ;=======================================================================; .Comment $ Skeleton ROM-resident debugger. Adapted from ancient code (1978) D-X Designs Pty Ltd December 1995 D. R. Brooks Revision history: V1.00 Dec. 1995 Initial version V1.02 Mar. 1996 Added hooks to I/O functions Added display of current instruction V1.03 Apr. 1996 Added IN, OUT & BOOT Commands V1.04 May 1996 Special extensible version for P112 V1.05 Aug. 1996 Fixed bug in DECOUT routine V1.06 Feb. 1997 Fixed size report for 1MB RAM Extra IO wait state at 24.576MHz This is the generic core of the Z80/Z180 debug module. All hardware dependent functions have been exported. These functions are called by the following External declarations. $ cseg ;Standard sign-on message & version bgnmg1: db ascicr db 'Z80 Series ROM-Resident Debugger V1.06: ' db 'D-X Designs Pty Ltd 1997',ascicr,0 endlin: db 'Type "?" for help',ascicr,ascicr,0 dseg .z80 ;Generic CPU: any Z80 derivative global debug ;Primary entry point global rst38 ;Entry from RST-38 instruction extrn getvect ;Get int. vector addr., or zero extrn armctc ;Trigger an interrupt extrn stopctc ;Deactivate it, & EI extrn getchr ;Get 1 char. to A, no editing extrn putchr ;Output 1 char. from A extrn hwmsg ;Hardware-dependent sign-on message extrn excom ;Hook for extension commands: ;Call with HL -> input buffer, or 0 for help ;Returns CY if unsuccessful ;Basic IO functions: exported for plug-in modules (V1.02) global get ;Input line to HL, until B chars. or CR global putmsg ;Output ASCIIZ string global decout ;Decimal output function global puta ;A converted to hex. at [DE] global getnum ;Get next number from input dseg dbdat: ds 64 ;DEBUG stack stack equ $ ;User-environment register-save area SP_: ds 2 PC_: ds 2 IY_: ds 2 IX_: ds 2 HL?_: ds 2 DE?_: ds 2 BC?_: ds 2 AF?_: ds 2 HL_: ds 2 DE_: ds 2 BC_: ds 2 AF_: ds 2 regend equ $-1 ;Final byte of saved regs. spva: ds 2 ;Saved debug-level SP bpadr: ds 2 ;Breakpoint address inst: ds 1 ;Instr. replaced by breakpoint bpcnt: ds 1 ;Count breaks before trapping nxcnt: ds 1 ;Count NEXT operations before halting eiadr: ds 2 ;Addr. of extra EI instr. eiopc: ds 1 ;Opcode replaced by EI instr. inptr: ds 2 ;Input-buffer ptr. hexlin: ds 2 ;Line-count of hex. input file errlin: ds 2 ;Line-number of last error seen (or 0) ;Input-queue controls qsbit equ 6 ;Queue-size mask bit qiptr equ 0 ;Offset of input ptr. qoptr equ 1 ;Offset of output ptr. qbuff equ 2 ;Offset of buffer qspace: ds qbuff + (1 shl qsbit) ;Queue space conbuf: ds 81 ;Standard console I/O buffer szbuf equ $-conbuf sysflg: ds 1 ;DEBUG status flag ;Bits in sysflg: atbrk equ 0 ;RST-38 was the set breakpoint ;Intel hex-format errors: ifhex equ 5 ;Bad hex. digit ifadr equ 6 ;Address out of range ifsum equ 7 ;Bad sumcheck montop equ $ ;End of monitor's RAM org dbdat+256 ;Force to a page, for int. vectors subttl Basic IO Functions page cseg ;====== BASIC CHARACTER I/O FUNCTIONS ======================== .Comment $ The fundamental functions are external, as they are hardware dependent. The design enables the CP/M calls 02 and 06 to serve, in a test environment. These external calls (getchr/putchr) should preserve registers. $ include ASCII.INC ;Control chars. ;Queue-driver routines. Input is buffered to obviate ; overflow problems when loading hex. files into RAM toque: ;Push char. to input queue push ix push bc ld ix,qspace ld b,a ;Save the char. ld a,(ix+qiptr) inc a ;Check there is room res qsbit,a ;Increment modulo-N cp (ix+qoptr) jr z,qout ;Jump if no room ld a,b ld c,(ix+qiptr) ld b,0 inc (ix+qiptr) ;QIPTR++ (Modulo-N) res qsbit,(ix+qiptr) add ix,bc ;Point into buffer ld (ix+qbuff),a ;Save char. qout: pop bc pop ix ret fmque: ;Pull char. from queue push ix push bc ld ix,qspace ld a,(ix+qiptr) ;Queue empty? sub (ix+qoptr) ; ie QIPTR == QOPTR jr z,qout ;If so, return zero ld c,(ix+qoptr) ld b,0 inc (ix+qoptr) ;QOPTR++ (Modulo-N) res qsbit,(ix+qoptr) add ix,bc ;Point into buffer ld a,(ix+qbuff) ;Pull the char. and a jr qout ;-------------------------------------------------------------- inpoll: ;Poll input for char., & queue it call getchr ;Next from input stream (if any) and a call nz,toque ;If any, push it to queue ret get: ;Input to (HL), until B=0 or CR ld c,0 ;Column count gt1: call inpoll ;Put anything new on queue call fmque ;Pull from tail jr z,gt1 ;Wait for something cp ascibs jr nz,gt2 ld a,c ;Backspace: =NOP at 1st. col. and a jr z,gt1 ld a,ascibs call putchr ld a,space call putchr ;Destructive BS: BS-SP-BS ld a,ascibs call putchr dec c ;Back-up pointers: col. count dec hl ; buffer ptr. inc b ; counter jr gt1 gt2: cp asciht jr nz,gt3 gt2b: ld a,space call putchr ld (hl),a ;TAB - fill out spaces inc hl inc c djnz gt2a ret ;Done if buffer full gt2a: ld a,c and 7 ;Tab-out to 8th column jr nz,gt2b jr gt1 gt3: cp ascicr jr z,gt4 ;CR - the only other legal control cp space jr c,gt1 ;Ignore the others cp ascdel jr nc,gt1 cp 'a' ;Force uppercase jr c,gt4 sub 'a'-'A' gt4: call putchri ;Echo the transformed char. ld (hl),a ;Accept it inc hl inc c dec b ;Count up buffer ret z cp ascicr ret z ;Stop at CR jr gt1 ;Else, go for more ;---------------------------------------------------------- pcr: ld a,(hl) ;Output until CR call putchri ;Sent 1 (preserves A) inc hl cp ascicr ;Until CR ret z jr pcr ;---------------------------------------------------------- putmsg: ld a,(hl) ;Output ASCIIZ string inc hl and a ret z ;Back at the end call putchri ;Send 1 jr putmsg ;---------------------------------------------------------- putdis: ld a,(hl) ;Output B chars. from HL call putchri ;Sent 1 inc hl djnz putdis ret ;---------------------------------------------------------- putchri: ;Output 1 char. & add LF to CR call putchr cp ascicr ret nz ld a,ascilf ;Add the LF call putchr ld a,ascicr ;Don't alter A ret subttl General Utilities page ;Register save/restore Functions ;Up 1 level (std. saves) uplvl: ex (sp),hl push af push bc push de jp (hl) ;"Return" ;Down 1 level (std. restore) dnlvl: pop hl pop de pop bc pop af ex (sp),hl ret ;---------------------------------------------------------------- .Comment $ Routine to format 16 bytes for display. It is suitable for re-entrant use. On entry, HL holds addr of 1st byte for display, DE points at output buffer. All main registers are destroyed. A CR is placed after the last char. generated. $ bytesln equ 16 ;No. of bytes displayed per line txtcol equ 54 ;Locn. on line for text display txtbgn equ '>' ;Opening "quote" for text txtend equ '<' ;Closing ditto disply: push ix push hl push de pop ix ld bc,txtcol add ix,bc ;IX -> char. display area on line ld (ix-1),txtbgn page 90 title Drive Hardware Parameters ;===============================================================; ; ; ; D R I V E H A R D W A R E P A R A M E T E R S ; ; ; ;===============================================================; ;=======================================================================; ; ; ; D-X Designs Pty. Ltd. Perth, Western Australia ; ; Project: 112 May, 1996 ; ; ; ; Copyright (C) 1996 David R. Brooks ; ; ; ; This program is free software; you can redistribute it and/or ; ; modify it under the terms of the GNU General Public License ; ; as published by the Free Software Foundation; either version 2 ; ; of the License, or (at your option) any later version. ; ; ; ; This program is distributed in the hope that it will be useful, ; ; but WITHOUT ANY WARRANTY; without even the implied warranty of ; ; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ; ; GNU General Public License for more details. ; ; ; ; You should have received a copy of the GNU General Public License ; ; along with this program; if not, write to the Free Software ; ; Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. ; ; ; ;=======================================================================; ;Standard drive parameters: globally available global dpb3i, dpb5i dpb3i: ;Drive parameters for 3" disks db 0dfh ;SRT=3mS, HUT=240mS db 02h ;HLT=4mS db 25h ;5 secs. (25 index pulses) db 02h ;512 bytes/sector db 18 ;Sectors/track db 1bh ;Gap length db 0ffh ;DTL (not used) db 6ch ;Gap-3 length: Format db 0e5h ;Data fill: Format (CP/M) db 15 ;Head-settle time (mS) db 8 ;Motor-on delay * 1/8 sec. db 79 ;Highest cylinder no. db 00 ;data rate (500kb/s) dpb5i: ;Drive parameters for 5" disks db 0dfh ;SRT=3mS, HUT=240mS db 02h ;HLT=4mS db 25h ;5 secs. (25 index pulses) db 02h ;512 bytes/sector db 09 ;Sectors/track db 2ah ;Gap length db 0ffh ;DTL (not used) db 50h ;Gap-3 length: Format db 0e5h ;Data fill: Format (CP/M) db 0fh ;Head-settle time (mS) db 8 ;Motor-on delay * 1/8 sec. db 39 ;Highest cylinder no. db 02 ;data rate (250kb/s) end  ;512 bytes/sector db 09 ;Sectors/track db 2ah ;Gap length db 0ffh ;DTL (not used) db 50h ;Gap-3 length: Format db 0e5h ;Data fill: Format (CP/M) db 0fh åååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååå pop hl call puthl ;Post address ld b,bytesln disp_1: ld a,(hl) call puta ;Display in hex. ld a,(hl) cp space ;Non-printing? jr c,disp_2 cp ascdel ;DEL does not print jr c,disp_3 disp_2: ld a,'.' ;Non-printing substitute disp_3: ld (ix),a inc hl inc ix djnz disp_1 ;Do the whole line ld (ix),txtend ld (ix+1),ascicr ;End of line pop ix ret ;---------------------------------------------------------------- ;Get to start of next blank-delimited field crt: cp ascicr ;Not space, try CR ret z inc hl ;Not CR either: skip it getch: ld a,(hl) ;Or accept it cp space jr nz,crt plblk: inc hl ;Strip off blanks ld a,(hl) cp space jr z,plblk cp ascicr ret ;Back: Z indicates CR ;---------------------------------------------------------------- getlin: ;Input a line to conbuf ld hl,conbuf ld b,szbuf-1 ld (inptr),hl ;Initialise pointer push hl ld (hl),space ;Ensure a space at start, for getch inc hl call get pop hl ;Ptr. to start of conbuf call getch ;Return 1st. char. to user ret ;---------------------------------------------------------------- dspac: ex de,hl ;Post a space at (DE) ld (hl),space inc hl ex de,hl ret ;------ Hexadecimal <-> Binary Conversions ---------------------- getnum: ;Convert chars at (HL) to hex. no. in (DE) ;Destroys A, DE. Advances HL past no. call getch getn2: ld de,0 ex de,hl push bc ;Preserve it ld b,0 ;Flag: nothing seen yet push hl add hl,sp ;HL points at zero-ed workspace (on stack) dlp: call gethex ;Convert 1 char. to hex. jr c,notdig set 7,b ;Flag: something was seen rld ;Roll digit into number inc hl rld dec hl jr dlp notdig: dec de ld a,(de) ;Get back terminal char. pop hl ;Scrap workspace rl b ;B[7] -> CY (set if something seen) pop bc ;Recovered BC ex de,hl ;Exit: result in DE, ptr. in HL ret ;Terminal char. in A ;-------------------------------------------------------------- gethex: call inpoll ld a,(de) ;Convert byte [DE] to hex. inc de sub '0' ;Return CY if bad ret c cp 10 jr c,dig ;Digit 0-9 sub 7 ;Block special chars. ret c cp 16 ccf ret c dig: and a ;Good: CY=0 ret ;---------------------------------------------------------------- getbyte: ;Convert 2 chars. to byte in A push bc ;Return CY if error call gethex ;1 byte jr c,bad add a,a add a,a ;Shift left 4 places add a,a add a,a ld b,a ;Save it call gethex ;2nd. byte jr c,bad or b ;OK: form byte & CY=0 bad: pop bc ret ;---------------------------------------------------------------- getsum: ;Get a byte, & keep sumcheck in C call getbyte ;Source ptr. in DE push af add a,c ;Sumcheck ld c,a pop af ret ;Back: CY=1 if error ;---------------------------------------------------------------- puthl: ld a,h ;Convert HL to 4 hex. chars. from (DE) call puta dec de ld a,l puta: push af ;Convert A to 2 hex. chars. at (DE) rra rra rra rra call nibble ;Bits 4-7 pop af call nibble ;Bits 0-3 ld a,space ld (de),a ;Blank after inc de ret ;---------------------------------------------------------------- nibble: ;Output A[3:0] as hex. char. or 0f0h ;Top bits =1, flags H, N =0 daa add a,0a0h adc a,40h ;Convert to ASCII ld (de),a inc de ret ;---------------------------------------------------------------- tenpwr: dw 10000 dw 1000 dw 100 dw 10 decout: ;Output HL in decimal - direct output push ix push de push bc ld ix,tenpwr ld b,4 ld c,'0' ;Leading-zero flag dc2: ld e,(ix) inc ix ;Power of 10 in DE ld d,(ix) inc ix ld a,'0'-1 and a ;CY=0 dc1: inc a sbc hl,de ;Trial subtraction jr nc,dc1 add hl,de ;Restore cp c ;(Leading) zero? jr z,dc3 call putchr ;No, display ld c,-1 ;Clear LZ flag dc3: djnz dc2 ld a,l ;Get the last bit add a,'0' call putchr pop de pop bc pop ix ret ;--------------------------------------------------------- ; Check the given address points into User Area userarea: push de ;Save the address push hl bit 7,d ;Can't be in ROM jr z,uaerr and a ;Dummy for now jr uaexit uaerr: scf ;Not allowed: set flag uaexit: pop hl pop de ret subttl DEBUG mainline page debug: ;Primary entry point ld hl,dbdat ;Clear out workspace ld b,montop-dbdat xor a clp: ld (hl),a inc hl djnz clp ld sp,stack ;Initialise SP ld hl,bgnmg1 call putmsg ;Sign-on message ld hl,hwmsg call putmsg ;Indicate hardware variant ld hl,endlin call putmsg ;Final CR dbglin: ;Get & process next user command ld sp,stack ;Forced reset ld hl,prompt call putmsg ;Prompt first call getlin ;Input response jr z,dbglin ;Skip null line inc hl ld (inptr),hl ;Points after the command-code ld hl,comlis ld bc,ncoms dbcomd: cpi ;Match command letter to table ld e,(hl) inc hl ld d,(hl) ;Routine address in DE inc hl jr z,comok call intelerr ;Report any outstanding errors jp pe,dbcomd ld hl,(inptr) ;Try for external commands dec hl ;Point HL at command code call excom jr nc,endcom ;Done if OK (else flag error) invcom: ld a,badcom cmderr: ld hl,emtab ;List of error messages ld e,a ;Offset ld d,0 add hl,de call pcr ;Output the message (CR ends it) endcom: jr dbglin comok: ld hl,endcom ;Push return-link for command processor push hl push de ;Push address of processing routine ld hl,(inptr) ;Point to 2nd. char. of command ret ;Go to command routine ;---------------------------------------------------------------- prompt: db '=',0 ;Standard DEBUG prompt comlis: db ':' ;Table of DEBUG commands dw hexformat ;This cmnd. must be first db 'B' dw break db 'D' ;Key letter dw display ;Routine pointer db 'G' dw goget db 'I' dw inport db 'N' dw next db 'O' dw outport db 'R' dw regs db '?' dw showhelp ncoms equ ($-comlis)/3 ;No. of table entries ;DEBUG error messages emtab: badcom equ $-emtab db 'Invalid command code',ascicr badnum equ $-emtab mbdn: db 'Invalid hexadecimal digit',ascicr badreg equ $-emtab db 'Invalid register name',ascicr invbrk equ $-emtab db 'Cannot set breakpoint in this area',ascicr runrom equ $-emtab db 'Cannot single-step in this area',ascicr nocnge equ $-emtab xadr: db 'Cannot edit memory in this area',ascicr noints equ $-emtab db 'Function requires interrupt hardware',ascicr badchk equ $-emtab xchk: db 'Bad checksum',ascicr noport equ $-emtab db 'Required argument missing',ascicr subttl Read Intel-hex. Format Data page imsg: db 'Errors in Intel-hex file: last bad line: ',0 igap: db ' ',0 emask equ (1 shl ifhex) + (1 shl ifadr) + (1 shl ifsum) intelerr: ;Log errors & reset indicators call uplvl ;Save everything ld ix,sysflg ld a,emask and (ix) ;Any errors? jr z,noer ld hl,imsg call putmsg ;Message stub ld hl,(errlin) call decout ;Line No. in decimal ld hl,igap call putmsg bit ifhex,(ix) ld hl,mbdn call nz,pcr ;Bad hex. digit res ifhex,(ix) bit ifadr,(ix) ld hl,xadr call nz,pcr ;Bad address res ifadr,(ix) bit ifsum,(ix) ld hl,xchk call nz,pcr ;Bad checksum res ifsum,(ix) noer: ld ix,0 ld (hexlin),ix ;Reset hex-file line counter ld (errlin),ix ;Reset error-line ptr. call dnlvl ;Restore caller's regs. ret hexformat: ;Read a line of Intel-hex. format ex de,hl ;Buffer ptr. in DE ld ix,sysflg ld hl,(hexlin) inc hl ;Bump line counter ld (hexlin),hl ld c,0 ;Preset the checksum call getsum jr c,badhex ld b,a ;Data counter call getsum jr c,badhex ld h,a ;Address call getsum jr c,badhex ld l,a call getsum jr c,badhex cp 0 ;Record type jr z,nbt ;Data cp 1 ;If the end, call z,intelerr ; ,report any outstanding errors ret nbt: and a ;Data: CY=0 push hl push de ld de,dbdat ;Check address in range sbc hl,de pop de pop hl jr nc,badadr call getsum ;Data byte jr c,badhex ld (hl),a ;Place data inc hl djnz nbt ;All data bytes call getsum jr c,badhex ;Sumcheck ld a,c and a ret z ;OK: done set ifsum,(ix) ;Bad sumcheck jr ifend badhex: set ifhex,(ix) ;Bad hex. digit jr ifend badadr: set ifadr,(ix) ;Bad address ifend: ld hl,(hexlin) ld (errlin),hl ;Last failed line ret ;Delay errors till end of file subttl Help Command (list commands) page hlpmsg: db ascicr db ' C O M M A N D H E L P',ascicr db ascicr db 'Separate all fields by one or more blanks',ascicr db ascicr db 'Commands Available:',ascicr db ': Input line of Intel hex-format data',ascicr db '? Display this help',ascicr db 'B [addr [count]] Set/clear breakpoint',ascicr db 'D addr [length] Display/change memory',ascicr db 'G [addr] Go run program (from addr)',ascicr db 'I port Input & display byte from port',ascicr db 'N [count] Run (next N) instructions',ascicr db 'O port data Output data byte at port',ascicr db 'R [register name] Display/change user registers' endhlp: db ascicr, 0 showhelp: ld hl,hlpmsg call putmsg ;Just display the message ld hl,0 :20000000C3E8009703080000C327098E049B0400C372010000000000C36501000000000010 :20002000C3D20B000000000000000000000000000000000000000000C385140000000000C4 :20004000524F4D2D636F6465206275696C743A203038204D61722E203139393700442D58B7 :200060002044657369676E7320507479204C74642C205065727468204175737472616C693E :200080006100ED5767ED3833C6046F7CB5C9F3210100ED210FED290EED210DED290CED3811 :2000A00010F611ED3910C9ED3810E6A2ED391000ED3810ED280CED200DFBC9C953706563AF :2000C00069616C20503131322076657273696F6E3A20696E7465727275707473207375708E :2000E000706F727465640D00214E04DD21F200C35501216D0446237EED39E010F9FD21043F :2001000001C3A8043EFEED47ED5E21FFFFAF772BCB7C20FA31FFFFCD900200CDBB0021416B :2001200001CDD20BCD9D01AFED3910214000CDD20B214301CDD20BCD900201CDBF03C31CDC :200140000D0D00202000F5C5DDE5DD2150011805DDE1C1F1C93EFF06004EED0C280523ED5D :20016000A318F4DDE9F5ED38E0CB5728F9F1ED39E1C9ED38E0E601C8ED38E1C990559055BF :200180000090AA0090009138900191859002911C90039178900491009005912400217C013D :2001A000CD46013E0FCD7102A720553E0DCD7102DD218401FE652808DD218401FE6620409A :2001C000473E0ECD71024FCBBFFE022033C5210D02CDD20BC121460278FE662003214802ED :2001E000C5CDD20BC1212F02CB792803213302CDD20B213702CDD20BDDE5E1CD4601180635 :20020000214A02CDD20B218101CD4601C90D534D4320494F2063686970206964656E74693E :2002200066696564202846444333374336360047542900495229003A20636F6E666967752B :2002400072696E670D00350036000D556E7265636F676E6973656420494F20636869703ACD :20026000206E6F7420636F6E666967757265640D00ED3990ED3891C9D5E5210000E5E539A7 :200280005D54CDB80C1BAF12CDD20BE1E1E1D1C9ED389DCB7728F921A803CD4601ED389D92 :2002A000CB7728F9ED2814ED2015AFED3910ED389824CB8406047C212803110900BE280C9D :2002C0001910FA216E03CDD20B214B03237EED3916237EED3917233E0CED39E07EED39E09E :2002E000233E0DED39E07EED39E023ED38EFCB5F7E2320017EED3932237E23666FB4C8D127 :200300001A13D5A7C8E5211703CDD20BE1CDD20B212303CDD20BC943505520636C6F636B49 :200320003A20004D487A0D00EC0060260020205403E6007D320020205B03E200903A0060FF :20034000A06003D800C04E0070F06703D084320070F0000031322E3238380031362E30000C :2003600031382E3433320032342E353736004E6F6E2D7374616E64617264204350552063E3 :200380006C6F636B206372797374616C3A2074696D65722077696C6C20626520696E61639D :2003A0006375726174650D009B80986099009B039C1014001500160017001002980000EDC9 :2003C00038E6C6011FED28E7CB3D956F2608ED6CE5210B04CDD20BE1CDDB0C211B04CDD257 :2003E0000BED38E7CD7802212504CDD20BED38E6CD7802212D04CDD20BED38EFCB5F2131CD :2004000004C4D20B214101CDD20BC952414D20617661696C61626C653A20006B422E204625 :20042000726F6D200030303020746F2000464646002C20524F4D20736861646F7765642000 :20044000696E746F203173742033326B420036003E0033003270390038FC3AC8E708E6FFEC :20046000E807DF5C1F80EF60EEA0ED4100200444010403C0056009010B560C320D000E62ED :200480000E0301040F000010001003C1056ADF022502121BFF6CE50F084F00DF02250209E8 :2004A0002AFF50E50F082702AFED39E73EFFED39E61100003EF0DD21BD04C3480520021E4B :2004C000F03E08DD21CA04C34805200216087AB32001767AA720017BD608ED3939082100E3 :2004E00082F9EB21450501B700EDB0210000010080AF86EDA1EAF204CD0082ED11E7ED1957 :20050000E6ED38E7A72017ED38EFCB5F20100640ED38E680ED39E6ED38E780ED39E70E0019 :20052000ED00E7ED38E690FE0830020E087891ED08EFCB592802C608ED3938ED39393EC832 :20054000ED393AFDE9C31F82D9472100C0D60CED39383E5577BE20032F77BE78D9DDE9004A :20056000082080FFF5FDE5ED38EFCBDFED39EFFD211A82FD7E00FD23FEFF200176DD213F04 :2005800082C3038220EDFDE1575FD60CED39382100C036553E08835F3816DD215C82C3032C :2005A00082200D36007AD60CED39387EFE5528E41DED38EFCB9FED39EFDDE17AA720387B5D :2005C00092FE3F3832DDE5D50100802100001600ED18EFCB9BED19EF7ECBDBED19EF778232 :2005E00057EDA1EA8E82DDE1F1DDE5BA2808ED38EFCB9FED39EFD108ED3939C9C3FF05C3A3 :2006000002067CB5200C218106CD2000210000C34F077EFE53C24F07CD5F0C7BFE043012C8 :20062000F5CD5F0CF1577BA7280AFE032806FE05280A37C91E03DD210B0018061E00DD2129 :200640000D00DD4E00DD4601C5DDE1D521008006010E001E013E02CFD121FA06381921009E :2006600080010002AF86EDA1EA6506211507A72006CC0080213207CD20003E01CD0800A787 :20068000C953205B64726976655D205B747970655D2020426F6F742073797374656D206693 :2006A000726F6D2064726976650D2020202020202020202020202020202020203C647269EA :2006C00076653E203D20302E2E330D2020202020202020202020202020202020203C74794F :2006E00070653E20203D20223322206F7220223522202873697A65290D004572726F7220D6 :2007000072656164696E6720626F6F7420736563746F720D00426F6F7420736563746F722A :20072000206661696C65642073756D636865636B0D004572726F722066726F6D20626F6F76 :20074000742D736563746F7220636F64650D007CB5C837C9C5D50100001614ED38DECB779D :20076000280B0D20F610F41520F1371801AFD1C1C9CD54073E053841C5D51142FE0607CDF6 :20078000C707121310F9D1C12142FEE57EE6F8FDBE012021237EFDBE02201A237ED60020FD :2007A00014ED2826ED3827B5E13E042008AF18093E033718043E02E137C9F5ED3894CB7F21 :2007C00028F9F1ED3995C9ED3894CB7F28F9ED3895C9C546237ECDBA0710F9C1C9E52140C9 :2007E000FE3A41FE2FA677E1C9CD860AED2923ED2124ED39253EA0ED3920AFED3921ED3939 :2008000022C9CD860AED2920ED2121ED39223EA0ED3923AFED3924ED3925C9FDE37B803D97 :200820003DDDBE04308A3C67FD7E00CDBA077ACB412802CBD7CDBA0779CB3FCDBA0779E626 :2008400001CDBA077BCDBA07DD7E03CDBA077CCDBA07DD7E05CDBA073E63ED39303EFFCD1B :20086000BA07CD7107C5F5010300FD09F1C1FDE3C9E5D5C5214000DD4603042910FD545D62 :20088000210000C1C51910FDED2926ED2127224DFEC1D1E1C9CD54073E05D83E08CDBA075A :2008A000CDC70747CDC707C5CB39B9C13E0737C078E6E0FE20C83E0137C9C5E542043E08A3 :2008C0008710FD3241FE47ED38924FE6FCB2F60CED399279A02016ED3892B0ED3992DD7EAF :2008E0000A8701000010FE0D20FB3D20F8DD7E0CED39973E03CDBA07DD7E00CDBA07DD7EA4 :2009000001CB87CDBA072140FE3A41FEA620133E07CDBA077ACDBA07CD950838063A41FE49 :20092000B677AFA7E1C1C9FE0738043E0637C9CD3A09F5DCB009F1D8AFC9E5214A09878504 :200940006F3001247E23666FE3C9B009CB0958095E0964096A09860AE521D5091810E521DA :20096000ED09180AE521050A1804E521120A224BFEE1F53EC3324AFEE5210000224DFEE1FC :200980003E033249FEF1E5CD4AFEE13018FE022804FE07200BF5CDDD073A49FE3D20E3F1D5 :2009A000371142FEC9ED5B4DFE191142FEC937C9E5AF3240FEED39923E0CED399221C60972 :2009C000CDD207AFE1C9041300712BED3892E60FED3992AFC9CDBA08C2AE09CDE907CD7186 :2009E000083ECDED3931CD1B08464080C9CDBA08C2AE09CD0208CD71083EF1ED3931CD1B3B :200A000008454080C9CDBA08C2AE09CD1B08560000C9CDBA08C2AE093E0FCDBA077ACB4180 :200A20002802CBD7CDBA0779CB3FCDBA07CD9508D8CD0208E5DD6E0426002929ED2926ED5D :200A40002127224DFEE13EF1ED39313E4DCDBA077ACB412802CBD7CDBA07DD7E03CDBA0795 :200A6000DD7E04CDBA07DD7E07CDBA073E63ED3930DD7E08CDBA07FDE5FD21830ACD7107DF :200A8000FDE1C9000000E57CE6F067ED383AE6F06F7C953805ED38381811ED383A878787A5 :200AA000876F7C953E003803ED3839E1C5E54C06006F6029292929097CE60F45E160C1A7A0 :200AC000C90D5A38302053657269657320524F4D2D5265736964656E74204465627567670C :200AE00065722056312E30363A20442D582044657369676E7320507479204C7464202031C2 :200B00003939370D005479706520223F2220666F722068656C700D0D00DDE5C5DD21B7FE56 :200B200047DD7E003CCBB7DDBE01281278DD4E000600DD3400DDCB00B6DD09DD7702C1DD8D :200B4000E1C9DDE5C5DD21B7FEDD7E00DD960128EDDD4E010600DD3401DDCB01B6DD09DD67 :200B60007E02A718D9CD7201A7C4190BC90E00CD650BCD420B28F8FE08201879A728F03E8C :200B800008CD65013E20CD65013E08CD65010D2B0418DCFE0920123E20CD650177230C1060 :200BA00001C979E60720F018C6FE0D280EFE2038BEFE7F30BAFE613802D620CDE30B772377 :200BC0000C05C8FE0DC818A77ECDE30B23FE0DC818F67E23A7C8CDE30B18F77ECDE30B2337 :200BE00010F9C9CD6501FE0DC03E0ACD65013E0DC9E3F5C5D5E9E1D1C1F1E3C9DDE5E5D5AF :200C0000DDE1013600DD09DD36FF3EE1CDB20C06107ECDB80C7EFE203804FE7F38023E2E1D :200C2000DD770023DD2310E9DD36003CDD36010DDDE1C9FE0DC8237EFE2020F7237EFE20E5 :200C400028FAFE0DC921F9FE065022B1FEE5362023CD6D0BE1CD370CC9EB362023EBC9CD1D :200C6000370C110000EBC50600E539CD820C380ACBF8ED6F23ED6F2B18F11B1AE1CB10C12B :200C8000EBC9CD650B1A13D630D8FE0A3807D607D8FE103FD8A7C9C5CD820C380B878787CF :200CA0008747CD820C3801B0C1C9CD970CF5814FF1C97CCDB80C1B7DF51F1F1F1FCDC90CF1 :200CC000F1CDC90C3E201213C9F6F027C6A0CE401213C91027E80364000A00DDE5D5C5DDFD :200CE00021D30C06040E30DD5E00DD23DD5600DD233E2FA73CED5230FB19B92805CD650152 :200D00000EFF10E37DC630CD6501D1C1DDE1C9D5E5CB7A2803A7180137E1D1C9214FFE0604 :200D2000FCAF772310FC318FFE21C10ACDD20B21BC00CDD20B21050BCDD20B318FFE21814C :200D40000DCDD20BCD450C28F22322B1FE21830D010900EDA15E235623281DCDC00EEA5350 :200D60000D2AB1FE2BCDFC05300C3E00219E0D5F160019CDC80B18C321760DE5D52AB1FE0E :200D8000C93D003A1A0F429C1344371347C314497B114EF2144F9A1152AF113F6811496EA9 :200DA00076616C696420636F6D6D616E6420636F64650D496E76616C69642068657861646B :200DC0006563696D616C2064696769740D496E76616C6964207265676973746572206E612F :200DE0006D650D43616E6E6F742073657420627265616B706F696E7420696E207468697327 :200E000020617265610D43616E6E6F742073696E676C652D7374657020696E20746869734F :200E200020617265610D43616E6E6F742065646974206D656D6F727920696E20746869733B :200E400020617265610D46756E6374696F6E20726571756972657320696E7465727275705D :200E6000742068617264776172650D42616420636865636B73756D0D5265717569726564BB :200E800020617267756D656E74206D697373696E670D4572726F727320696E20496E746584 :200EA0006C2D6865782066696C653A206C61737420626164206C696E653A200020202000BD :200EC000CDF10BDD214AFF3EE0DDA600283C21920ECDD20B2AB5FECDDB0C21BC0ECDD20B6C :200EE000DDCB006E21B30DC4C80BDDCB00AEDDCB007621260EC4C80BDDCB00B6DDCB007E80 :200F0000216B0EC4C80BDDCB00BEDD210000DD22B3FEDD22B5FECDF60BC9EBDD214AFF2AE7 :200F2000B3FE2322B3FE0E00CDAA0C383F47CDAA0C383967CDAA0C38336FCDAA0C382DFE1D :200F4000002806FE01CCC00EC9A7E5D5114FFEED52D1E1301DCDAA0C3812772310EBCDAA2B :200F60000C380979A7C8DDCB00FE180ADDCB00EE1804DDCB00F62AB3FE22B5FEC90D20205E :200F80002043204F204D204D2041204E2044202020482045204C20500D0D53657061726113 :200FA000746520616C6C206669656C6473206279206F6E65206F72206D6F726520626C61E8 :200FC0006E6B730D0D436F6D6D616E647320417661696C61626C653A0D3A203C496E74656B :200FE0006C206865782E3E20202020496E707574206C696E65206F6620496E74656C2068C3 :2010000065782D666F726D617420646174610D3F2020202020202020202020202020202037 :2010200020446973706C617920746869732068656C700D42205B61646472205B636F756E84 :20104000745D5D20205365742F636C65617220627265616B706F696E740D44206164647265 :20106000205B6C656E6774685D202020446973706C61792F6368616E6765206D656D6F720B :20108000790D47205B616464725D20202020202020202020476F2072756E2070726F67725B :2010A000616D202866726F6D2061646472290D4920706F72742020202020202020202020E7 :2010C00020496E707574202620646973706C617920627974652066726F6D20706F72740DEA :2010E0004E205B636F756E745D20202020202020202052756E20286E657874204E29206925 :201100006E737472756374696F6E730D4F20706F72742064617461202020202020204F7564 :20112000747075742064617461206279746520617420706F72740D52205B72656769737412 :201140006572206E616D655D20446973706C61792F6368616E6765207573657220726567D2 :201160006973746572730D00217D0FCDD20B210000CDFC05216611CDD20BC9CD5F0CD5C1A9 :20118000ED7821F9FE060636202310FBEBCDB80C3E0D1221F9FECDC80BC9CD5F0C3EDAD2C6 :2011A0006C0DD5CD5F0CC13EDAD26C0DED59C921F9FECD370CFE52C2C412CD370CCAC412B6 :2011C00056235E3E0DBB20021E20010014DD218012FD21A6FE78FE053004CBC9FD2BDD6EB5 :2011E00001DD6600A7ED522002CBC1CB41CA6112DDE5FDE5CDF10B11F9FEDDE5E179010339 :2012000000EDB04FCB49280BFD6E00FD6601CDB20C1806FD7E00CDB80CCD291321F9FEE511 :20122000362023C50650CD6D0BC1E1CD370C2847FE512009CDF60BFDE1DDE1AFC9CD620C1F :20124000FE0D280821B30DCDC80B18ABD5DDE1CDF60BFDE1DDE3E1FD7500CB492803FD740D :2012600001FD2BDD23DD23DD231009AFCB41C03E2FC36C0DC3D511CDF60BFDE1DDE118E1FC :201280004120204620204220204320204420204520204820204C20204127204627204227A7 :2012A000204327204427204527204827204C27204958204959205043205350203C496E73EC :2012C00074722E3E21801211F9FE013000EDB03E04CD590C0E03EDB0CD590C3D20F321BCB2 :2012E00012010800EDB03E0D1221F9FECDC80B11F9FEDD21A6FE0610DD7E00CDB80CDD2B6D :2013000010F60604DD6600DD6EFFCDB20CDD2BDD2B10F1DD2A91FE0603DD7E00DD23CDB815 :201320000C10F63E0D1213121321F9FEEBA7ED52EB43CDDB0BAFC9CD5F0CD5CD5F0C7AB352 :201340002828D521000039ED6F23ED6FC179E6F0280104E111F9FEC5CDFC0BE521F9FECDAA :20136000C80BE1C110EEC91213D5D1D5CD0F0D3E88DA6C0DE111F9FEE5CDFC0B21F9FE06CF :2013800008CDDB0BCD450CD128DEFE51C8D5CD620CFE0D7BD128D03E15C36C0D2AA9FE7C4B :2013A000B5280A3AABFE7721000022A9FE2AB1FECD5F0C7AB3C8CD0F0D3E45DA6C0DD5CD9B :2013C0005F0C7AB33E012809CD82003EA8CA6C0D7B32ACFEE17E32ABFE36FF22A9FEC9ED48 :2013E0005B91FECD0F0D3E68DA6C0DEBED4BA9FEA7ED422009214AFFCBC63AABFE022A91BD :20140000FE2B7E32B0FE36FB2291FE22AEFECD8200115D14732372CD8E00ED73A7FE319398 :20142000FEFDE1DDE1E1D1C1F108D9E1D1C1F1ED7B8FFEE52A91FEE3C9FD2293FEFDE1DDBF :201440002295FEDDE1DD2291FEED738FFEF331A7FEF5C5D5E508D9F5C5D5E5FDE9CD39140C :20146000ED7BA7FECDA7002AAEFE3AB0FE77214AFFCB46CB86C82AA9FE36FFC942726561D9 :201480006B20617420CD3914318FFEFB2A91FE2BED5BA9FEEBA7ED5221ACFE2007ED539192 :2014A000FE35204111F9FE3601217C14010900EDB02A91FECDB20CEB360D21F9FECDC80BD7 :2014C000C3760D2AB1FECD5F0C7AB32004ED5B91FE2AA9FEA7ED522011CD82003EA8CA6C3A :2014E0000DED5391FECDDF131804ED5391FEF3C31A14CD82003EA8CA6C0D2AB1FECD5F0CF9 :171500007AB37B20023E0132ADFECDDF13CDAF1121ADFE3520F4C9C4 :00000001FF 9140C :20146000ED7BA7FECDA7002AAEFE3AB0FE77214AFFCB46CB86C82AA9FE36FFC942726561D9 :201480006B20617420CD3914318FFEFB2A91FE2BED5BA9FEEBA7ED5221ACFE2007ED539192 :2014A000FE35204111F9FE3601217C14010900EDB02A91FECDB20CEB360D21F9FECDC80BD7 :2014C000C3760D2ABååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååm80 startup,startup=startup m80 memsetup,memsetup=memsetup m80 debug,debug=debug m80 sysboot,sysboot=sysboot m80 diskop,diskop=diskop m80 drivparm,drivparm=drivparm l80 /P:40,/D:fe00,startup,drivparm,memsetup,sysboot,diskop,debug,rom/n:p/y/x/e DRIVPARMMACMEMSETUPMACa   ROM HEXe  ROM SUBåååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååå call excom ;Show any additional stuff ld hl,endhlp call putmsg ;One extra line at end ret subttl In & Out Commands page ; Read & write 1 byte from the IO space. ; Port addresses are full 16 bits inport: ;Read & display port contents call getnum ;Port to read (even zero!) push de pop bc ;16-bit port in BC in a,(c) ;Read to A ld hl,conbuf ld b,6 ip1: ld (hl),' ' inc hl djnz ip1 ex de,hl ;Ptr. in DE call puta ld a,ascicr ld (de),a ;Terminator ld hl,conbuf ;Start of buffer call pcr ;Display ret outport: ;Write data to port call getnum ld a,noport jp nc,cmderr ;Must give a port push de ;Port address call getnum ;Data in E pop bc ;Port in BC ld a,noport jp nc,cmderr out (c),e ;That's all... ret subttl Register Display/Set Command page ; This block is rather awful spaghetti: being original legacy code ; from 1978! "If it ain't broke, don't fix it." ;Bit-flags in Reg. C usereg equ 0 ;Accept this reg. for processing wrdreg equ 1 ;This is a 16-bit reg. regs: ld hl,conbuf call getch ;Command type? cp 'R' jp nz,disall call getch ;Z is set if end of line jp z,disall ;If not 'R' + suffix, display all ; else display & set selectively ld d,(hl) ;1st. char. of reg-name inc hl ld e,(hl) ld a,ascicr cp e ;No 2nd char? jr nz,rg1 ld e,space ;No, use space ; ;Now set-up for scan rg1: ld bc,nregs shl 8 ;Count & flags, 0-Display, 1/2-Byte ld ix,mhdr ;Text ptr. ld iy,regend ;Store ptr. rg2: ld a,b ;Entry to process next register cp 5 ;2-byte registers? jr nc,rg2a set wrdreg,c ;Yes dec iy ;Step twice rg2a: ld l,(ix+1) ld h,(ix) ;Reg-name (NB byte order!) and a sbc hl,de ;As input? jr nz,rg3 set usereg,c ;Flag: use regs from here rg3: bit usereg,c ;Bit stays set on subsequent passes jp z,rg4 ;Skip display/set until matched push ix push iy ;Display/change this register call uplvl ;Save environment while displaying rg5a: ld de,conbuf ;Here to re-display on error push ix pop hl ld a,c ld bc,3 ldir ;Register name + space ld c,a ;Restore C bit wrdreg,c ;1 or 2-byte? jr z,oneb ld l,(iy) ld h,(iy+1) call puthl ;2-byte jr rg5 oneb: ld a,(iy) call puta ;1-byte rg5: call outbuf ;Output current value ld hl,conbuf push hl ld (hl),space ;Be sure there's a space at start inc hl push bc ;Save flags in C ld b,szbuf-1 call get ;Reply line pop bc pop hl call getch ;Test reply jr z,rg6 ;Null: next reg. cp 'Q' jr nz,rg7 call dnlvl ;"Q" - Quit pop iy pop ix ;Balance stack xor a ret ;Done rg7: call getn2 ;Form new value in DE cp ascicr ;Must be valid jr z,rg8 ld hl,mbdn call pcr jr rg5a rg8: push de pop ix ;Save result call dnlvl pop iy ex (sp),ix ;Restore IX pop hl ;New value in HL, other regs. restored ld (iy),l bit wrdreg,c jr z,rg4 ld (iy+1),h ;MSB if 2-byte rg4: ;Now, wind-up pointers dec iy inc ix inc ix inc ix ;Next register name djnz rg2b ;To a "JP", as rg2 is too far away xor a bit usereg,c ;Did we process a register? ret nz ;OK if match succeeded ld a,badreg jp cmderr ;Or error rg2b: jp rg2 rg6: call dnlvl ;Skip this register pop iy pop ix jr rg4 ;Then do next ;---------------------------------------------------------------- mhdr: db "A F B C D E H L A' F' B' C' D' E' H' L' " szmhdr equ $-mhdr db "IX IY PC SP " ;MUST follow immediately after mhdr htail: db "" lht equ $-htail nregs equ 20 ;Total no. of registers disall: ;Display all registers ld hl,mhdr ld de,conbuf ;First, build header ld bc,szmhdr ldir ;Names of 1-byte regs. ld a,4 ;Count of 2-byte regs. ds1: call dspac ld c,3 ldir ;2-byte reg. name call dspac ; & 2 extra spaces dec a jr nz,ds1 ld hl,htail ld bc,lht ldir ;Final part of legend ld a,ascicr ld (de),a ;End of Line-1 ld hl,conbuf call pcr ;Output 1st. line ld de,conbuf ;Restart output buffer ld ix,regend ;Do 1-byte values ld b,szmhdr/3 ds2: ld a,(ix) call puta dec ix djnz ds2 ld b,4 ;& 2-byte values ds3: ld h,(ix) ld l,(ix-1) call puthl dec ix dec ix djnz ds3 ld ix,(PC_) ;Display part of instr. ld b,3 ds4: ld a,(ix) inc ix call puta djnz ds4 ld a,ascicr ld (de),a ;Final CR inc de ld (de),a ;Double-line after inc de outbuf: ld hl,conbuf ;Output message: don't alter C ex de,hl and a sbc hl,de ex de,hl ;Addr. in HL ld b,e ;Length in B call putdis xor a ret ;Return, successful subttl Display/Set Memory Command page display: ;Display memory command call getnum ;Get starting address push de ;Save it call getnum ;Get length (if any) ld a,d or e ;If zero, display/test 1 only jr z,dp1 push de ld hl,0 add hl,sp ;HL points at DE on stack rld ;Roll-up LSB, don't care bits in 0-3 inc hl rld ;Rolled up 4 bits, so that pop bc ; [DE]/16 now in B, modulo-4095 ld a,c ;LS 4 original bits in C[4-7] and 0f0h ; ie remainder modulo-16 jr z,dp5 ;If non-zero, round up no. of lines inc b dp5: pop hl ;Start addr in HL, no. of lines in B dp2: ld de,conbuf push bc call disply ;Format 1 line for output push hl ;Save address ld hl,conbuf call pcr ;Send line pop hl pop bc djnz dp2 ;All lines ret ;Then done dp3: ld (de),a ;Place data dp4: inc de ;Next locn. push de dp1: pop de push de ;Copy addr.into DE call userarea ;OK to edit this area? ld a,nocnge jp c,cmderr ;No... pop hl ;Display/update 1 byte ld de,conbuf push hl call disply ;Build address & data ld hl,conbuf ld b,8 call putdis ;Send data & await reply call getlin ;Get any reply pop de ;Save address in DE jr z,dp4 ;Null - display next cp 'Q' ret z ;Quit push de call getn2 ;Get substitute value cp ascicr ;Which must end with CR ld a,e ;Substitute byte pop de ;Balance the stack jr z,dp3 ld a,badnum jp cmderr ;Error in reply subttl Set Breakpoint Command page .8080 ;Op-codes allowed as data only in 8080 mode ;Instructions placed by code brkins equ rst 7 ;Note the 8080 notation here: = RST 38H einst equ ei .z80 ;Normal assembly mode break: ;Set-Break command ld hl,(bpadr) ;Addr. of any existing breakpoint ld a,h or l ;Any set? jr z,bk1 ld a,(inst) ;Re-instate any displaced instr. ld (hl),a ld hl,0 ld (bpadr),hl ;Now, no breakpoint set bk1: ld hl,(inptr) call getnum ;Get new break address ld a,d or e ret z ;If zero, no new break call userarea ;Else, may not be in privileged area ld a,invbrk jp c,cmderr push de ;Save BP address call getnum ;Breakpoint count, or zero, in DE ld a,d or e ld a,1 ;Default jr z,onebk call getvect ;To use a count, we need interrupts ld a,noints ; If Z, no interrupts available jp z,cmderr ;So this command fails ld a,e onebk: ld (bpcnt),a ;Set the count pop hl ;BP addr. in HL ld a,(hl) ld (inst),a ;Save the displaced instr. ld (hl),brkins ;Set new breakpoint ld (bpadr),hl ret subttl User/Debug Environment Transfers page .Comment $ USER ENVIRONMENT The following code administers transfer from DEBUG to User Environment, which implies reloading all the user's register values. A utility routine will reload these registers, execute a single (user) instruction, then escape (via a CTC interrupt), and switch back to the DEBUG environment. Repeated calls to this routine will hence step through the user's program. An alternate entry point will restore the user-environment, without arming the CTC interrupt, and hence allows the user to run free. Breakpoints transfer from the user to this package, which switches to the DEBUG environment, and displays appropriate messages. Two types of breakpoint exist, viz. 1. An executed 0FFH (RST 38H) instruction, which is the type set by the BREAK command in DEBUG. 2. Single-stepping over instructions, which is done by setting a CTC channel to interrupt after the user instruction. This function requires suitable external hardware & CTC drivers. $ run1: ;Entry to run 1 instruction, & regain control ld de,(PC_) call userarea ;Check we're not in privileged area ld a,runrom jp c,cmderr ex de,hl ;User-PC in HL ld bc,(bpadr) ;Running from the set breakpoint? and a sbc hl,bc jr nz,claims ld hl,sysflg set atbrk,(hl) ;Note the fact, for later ld a,(inst) ld (bc),a ;Replace the real instr. claims: ld hl,(PC_) dec hl ;Locn. before the live instr. ld a,(hl) ld (eiopc),a ;Save that byte ld (hl),einst ;Replace it with EI ld (PC_),hl ;This is the locn. we shall run from ld (eiadr),hl ;It is also the locn. of the EI call getvect ;Vector address ld de,rentry ld (hl),e ;Set up vector inc hl ld (hl),d call armctc ;Set up for 1 interrupt after runfree: ;Entry to run the user, without regaining control ld (spva),sp ;Save DEBUG-level SP ld sp,IY_ pop iy ;Get back user registers pop ix pop hl pop de pop bc pop af ;Alternate regs. ex af,af' exx pop hl pop de pop bc pop af ;Main registers ld sp,(SP_) ;User's SP push hl ld hl,(PC_) ;User's PC ex (sp),hl ;Now on user's stack ret ;Despatch to user: INTERRUPTS DISABLED ;--------------------------------------------------------------------- dbgenv: ;Routine to switch to DEBUG environment ;Enter with return-link on (user) stack, ; & user-link below it ld (IY_),iy pop iy ;Link into dbgenv in IY ld (IX_),ix pop ix ;User link in IX ld (PC_),ix ld (SP_),sp di ;Don't interrupt: SP is invalid ld sp,AF_+2 push af ;Save main registers push bc push de push hl ex af,af' ;Save alternate registers exx push af push bc push de push hl jp (iy) ;Exit via 1st-level link ;------------------------------------------------------------------ rentry: ;CTC will interrupt to here, 1 instr. later call dbgenv ;Switch back to DEBUG environment ld sp,(spva) ;SP for call into run1 call stopctc ;Cancel the interrupt ld hl,(eiadr) ld a,(eiopc) ld (hl),a ;Restore the instr. displaced by EI ld hl,sysflg bit atbrk,(hl) ;Test & reset the at-breakpoint flag res atbrk,(hl) ret z ;If not at breakpoint, all done ld hl,(bpadr) ld (hl),brkins ;Re-instate the break-instruction also ret ;---------------------------------------------------------------- bkms: db "Break at " lbkms equ $-bkms rst38: ;RST 38H despatches here call dbgenv ;To DEBUG environment ld sp,stack ;Initialise DEBUG stack ei ld hl,(PC_) ;From the real breakpoint? dec hl ld de,(bpadr) ex de,hl and a sbc hl,de ld hl,bpcnt jr nz,bkmsg ld (PC_),de ;Yes, back up dec (hl) ;Count occurrences jr nz,runagn bkmsg: ld de,conbuf ;Display message ld (hl),1 ;Default counter in case a repeat ld hl,bkms ld bc,lbkms ldir ld hl,(PC_) ;Locn. of breakpoint call puthl ;Build the message ex de,hl ld (hl),ascicr ld hl,conbuf call pcr jp endcom ;Go & input a command subttl GO Command (run program) page goget: ld hl,(inptr) call getnum ;Get address (if any) ld a,d or e ;If zero, use current PC jr nz,gg2 ld de,(PC_) ;DE = address to run from gg2: ld hl,(bpadr) ;Run from live breakpoint? and a sbc hl,de jr nz,newpt call getvect ;Yes: this requires hardware support ld a,noints jp z,cmderr ; and we don't have it ld (PC_),de ;OK to run runagn: call run1 ;Run once, then replace breakpoint jr runs newpt: ld (PC_),de ;Set new PC runs: di jp runfree ; and run it subttl NEXT Command page next: call getvect ;This command requires hardware support ld a,noints jp z,cmderr ; and we don't have it ld hl,(inptr) call getnum ;Get count (if any) ld a,d or e ld a,e jr nz,nx1 ld a,1 ;Default =1 nx1: ld (nxcnt),a ;Set count onerun: call run1 ;Run a single instruction call regs ;Display registers, if provided ld hl,nxcnt dec (hl) ;Count steps jr nz,onerun ret ;End of count: next command end  ld a,d or e ld a,e jr nz,nx1 ld a,1 ;Default =1 nx1: ld (nxcnt),a ;Set count onerun: call run1 ;Run a single instruction call regs ;Display registers, if provided ld hl,nxcnt dec (hl) ;Count steps jr nz in0 a,(scr) bit 3,a ;ROM shadowed? ld hl,rams5 call nz,putmsg ;Say so ld hl,nline call putmsg ret rams1: db 'RAM available: ',0 rams2: db 'kB. From ',0 rams3: db '000 to ',0 rams4: db 'FFF',0 rams5: db 'ROM shadowed into 1st 32kB',0 ;================================================================== .radix 16 ;Initialisation tables inztab: db rcr, 00 ;No refresh (all static) db omcr, 00 ;Timings as Z80 db il, 00 ;Local interrupts vector base ; db wsgcs, 9b ;CS waits don't work?? db dcntl, 60 ;Wait states: mem 1 (for ROM) ; IO 2 (for SMC) db bbr, 00 db cbr, 0fc ;Wrap CA1 over BA, at 08000 db cbar, 0c8 ;Memory mapping: page 90 ;===============================================================; ; ; ; M E M O R Y - C H I P L O C A T I O N F U N C T I O N ; ; ; ;===============================================================; ;=======================================================================; ; ; ; D-X Designs Pty. Ltd. Perth, Western Australia ; ; Project: 112 May, 1996 ; ; ; ; Copyright (C) 1996 David R. Brooks ; ; ; ; This program is free software; you can redistribute it and/or ; ; modify it under the terms of the GNU General Public License ; ; as published by the Free Software Foundation; either version 2 ; ; of the License, or (at your option) any later version. ; ; ; ; This program is distributed in the hope that it will be useful, ; ; but WITHOUT ANY WARRANTY; without even the implied warranty of ; ; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ; ; GNU General Public License for more details. ; ; ; ; You should have received a copy of the GNU General Public License ; ; along with this program; if not, write to the Free Software ; ; Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. ; ; ; ;=======================================================================; .comment $ Determine memory size page 90 title Command Extensions ;===============================================================; ; ; ; D E B U G - C O M M A N D E X T E N S I O N S ; ; ; ;===============================================================; ;=======================================================================; ; ; ; D-X Designs Pty. Ltd. Perth, Western Australia ; ; Project: 112 May, 1996 ; ; ; ; Copyright (C) 1996 David R. Brooks ; ; ; ; This program is free software; you can redistribute it and/or ; ; modify it under the terms of the GNU General Public License ; ; as published by the Free Software Foundation; either version 2 ; ; of the License, or (at your option) any later version. ; ; ; ; This program is distributed in the hope that it will be useful, ; ; but WITHOUT ANY WARRANTY; without even the implied warranty of ; ; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ; ; GNU General Public License for more details. ; ; ; ; You should have received a copy of the GNU General Public License ; ; along with this program; if not, write to the Free Software ; ; Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. ; ; ; ;=======================================================================; .comment $ Skeleton for DEBUG extension functions These will typically include system bootstrap, and (eventually) Flash-ROM programming functions. On entry, HL is a "function" code: If non-zero, it points at the command key-letter in the input line. Subfunctions should identify their letter, and branch forward if no match. Finally, return with CY set if error. If HL=0, each sub-function should display its help message before passing control to its successor. The last should clear CY and return. $ .radix 10 .z80 cseg include ASCII.INC include DRVTYPE.INC include ROMHOOK.INC extrn getnum ;Numerical input, from ROM global excom ;Hook from debugger excom: jp flash ;Try the flash commands ;-------------------------------------------------- ; FLASH-ROM PROGRAMMING (not yet implemented) ; Functions: 1. Move ROM code to high RAM ; 2. Burn ROM from RAM data flash: ;Nothing defined, yet jp sysboot ;Try for OS bootstrap ;-------------------------------------------------- ; SYSTEM BOOTSTRAP FUNCTION .comment $ When this command is executed, the memory is set up thus: 0000-7FFF ROM 8000-FFFF RAM This means we cannot load the boot sector at low RAM, so we load it at 8000H. It will then (typically) load CP/M at high RAM, before killing the ROM and jumping to the BIOS start-point. As a safety feature, the boot-sector is sumchecked. Once it is successfully read, the checksum is verified, to be sure it really is boot code, before jumping to it. $ bootad equ 8000h ;Boot-load point sysboot: ld a,h or l ;HL null? jr nz,tboot ld hl,bthelp call putmsg ;Yes: display the help ld hl,0 jp next ;To successor tboot: ld a,(hl) cp 'S' ;Was it a boot command? jp nz,next ;No: leave it to the next ;This command is for me... call getnum ;Try for drive ld a,e cp 4 ;If present, must be valid jr nc,no push af ;Save drive call getnum pop af ld d,a ;Drive in D, type in E ld a,e and a ;No type given? jr z,use3 ;Default? cp 3 ;Or specifically 3" ? jr z,use3 cp 5 jr z,use5 ;Else, only 5" no: scf ;Invalid... ret use3: ld e,D3_144 ;Drive: 3", 1.44MB ld ix,dpb3 jr use use5: ld e,D5_360 ;Drive: 5", 360kB ld ix,dpb5 ; jr use use: ;Load it: IX => DPB ptr. ld c,(ix) ld b,(ix+1) ;BC -> DPB proper push bc pop ix ;IX set up push de ;Save drive & type ld hl,bootad ;HL => read buffer ld b,1 ;No. of sectors ld c,0 ;Track ld e,1 ;1st. sector ld a,2 ;"Read" rst diskop ;Do the read (IX unchanged) pop de ;Get the drive ld hl,btfail ;Error pointer jr c,failbt ;Go if errors ld hl,bootad ;Sumcheck the boot sector ld bc,200h ;Length loaded xor a slp: add a,(hl) ;Run the check cpi ;HL++, BC--, set P/V jp pe,slp ;All ld hl,smfail and a ;Sumcheck to zero? jr nz,failbt call z,bootad ;Yes: go run it ;NB IX -> DPB ; DE = Boot Drive & Type ; Stack is valid ld hl,secfl ;If it returns: it's an error failbt: call putmsg ;Display error message ld a,1 call diskop ;Drive motor/s off and a ;No msgs. from DEBUG ret bthelp: db 'S [drive] [type] Boot system from drive', ascicr db ' = 0..3', ascicr db ' = "3" or "5" (size)', ascicr, 0 btfail: db 'Error reading boot sector', ascicr, 0 smfail: db 'Boot sector failed sumcheck', ascicr, 0 secfl: db 'Error from boot-sector code', ascicr, 0 ;--------------------------------------------------- next: ;Next function (actually the end) ld a,h ;Finish: just a HELP ? or l ret z ;If so, return success scf ;Else: fail (no-one took it) ret end ng boot sector', ascicr, 0 smfail: db 'Boot sector failed sumcheck', ascicr, 0 secfl: db 'Error from boot-sector code', ascicr, 0 ;--------------------------------------------------- next: ;Next function (actually the end) ld a,h ;Finish: jusåååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååå page 90 ; Real-time clock drivers - DS1202 part ;===============================================================; ; ; ; D S 1 2 0 2 C L O C K - C H I P D R I V E R ; ; ; ;===============================================================; ;=======================================================================; ; ; ; D-X Designs Pty. Ltd. Perth, Western Australia ; ; Project: 112 May, 1996 ; ; ; ; Copyright (C) 1996 David R. Brooks ; ; ; ; This program is free software; you can redistribute it and/or ; ; modify it under the terms of the GNU General Public License ; ; as published by the Free Software Foundation; either version 2 ; ; of the License, or (at your option) any later version. ; ; ; ; This program is distributed in the hope that it will be useful, ; ; but WITHOUT ANY WARRANTY; without even the implied warranty of ; ; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ; ; GNU General Public License for more details. ; ; ; ; You should have received a copy of the GNU General Public License ; ; along with this program; if not, write to the Free Software ; ; Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. ; ; ; ;=======================================================================; .sall Z80182 equ 0 ;Define the CPU variant in use include Z180.INC ;Standard definitions extrn suparm, sutime ;Standard RTC fields global NVRAM ;Despatcher extrn getspd ;Baud-rate finder ; Command codes: ; 10 - Read time/date to RAM ; 11 - Write " " to chip ; 12 - Read setup params. to RAM ; 13 - Write " " to chip ; 14 - Get ROM date code, YYMMDD to AHL ; 15 - Get setup params. address in HL ; 16 - Get date/time address in HL ; 17 - Get baud-rate divisors in HL, DE NVRAM: ;Common entry point and 0fh ;Commands jr z,NVRDate ;Read clock dec a jr z,NVWDate ;Write clock dec a jr z,NVRSetup ;Read RAM dec a jr z,NVWSetup ;Write RAM dec a jr z,datecd ;ROM date-stamp dec a jr z,gsu ;Addr. of setup params. dec a jr z,gsc ;Addr. of clock vector dec a jp z,getspd ;Get baud factors scf ret ;Undefined op-code datecd: ;Get date-code from ROM ld hl,(4) ;MM in L, DD in H ld a,h ld h,l ld l,a ;Swap: MM in H, DD in L ld a,(3) ;YY in A and a ;CY=0 ret gsu: ;Get setup params. addr. ld hl,suparm and a ret gsc: ;Get clock address in HL ld hl,sutime and a ret ;--------------------------------------------------------- ; R . T . C . C H I P S E R V I C E S NVRDate: ;Read date from RTC to RAM ld a,0bfh ld b,8 ;Length of time/date block ld hl,sutime lr1: push af call RTC_open pop af call RTC_write_byte ;Burst read command lr2: call RTC_read_byte ;Read one ld (hl),a inc hl djnz lr2 call RTC_close and a ;CY=0 ret NVRSetup: ;Read the Setup parameters from RTC to RAM ld a,0ffh ld b,18h ;Length of setup block ld hl,suparm jr lr1 NVWDate: ;Write time/date from RAM to RTC ld hl,sutime res 7,(hl) ;Clock-halt off ld b,8 ld c,0beh lw1: call RTC_open ld a,8eh call RTC_write_byte ;Write-protect off ld a,0 call RTC_write_byte call RTC_close ;Must clear-down call RTC_open ;Before starting new op. ld a,c ;Write clock/setup call RTC_write_byte lw2: ld a,(hl) call RTC_write_byte inc hl djnz lw2 call RTC_close and a ;CY=0 ret NVWSetup: ;Write the Setup params. to chip ld hl,suparm ld b,18h ;Length of setup block ld c,0feh jr lw1 ;Bits in Parallel Port A rtcrst equ 2 ;Reset: active low rtcclk equ 1 ;Clock rtcdat equ 0 ;Data - bidirectional RTC_open: ;Activate the RTC: call before operations in0 a,(ddra) set rtcdat,a ;data line IN out0 (ddra),a in0 a,(dra) res rtcclk,a out0 (dra),a ;Clock must be LO at start set rtcrst,a out0 (dra),a ;Then RST\ HI ret ;-------------------------------- RTC_close: ;Deactivate RTC after access in0 a,(ddra) set rtcdat,a ;Data line IN out0 (ddra),a in0 a,(dra) set rtcclk,a out0 (dra),a ;CLK HI res rtcrst,a out0 (dra),a ;RST\ LO ret ;-------------------------------- RTC_read_byte: ;Get next byte to A push bc ld b,8 ;Bit counter lr: in0 a,(dra) res rtcclk,a out0 (dra),a ;Clock falls nop ;Data setup time in0 a,(dra) ;Get data rrca rr c ;Data => C[7] rlca set rtcclk,a out0 (dra),a ;Clock rises djnz lr ld a,c ;Data byte pop bc ret ;-------------------------------- RTC_write_byte: ;Send A to the RTC push bc ld c,a ld b,8 in0 a,(ddra) res rtcdat,a ;Data line OUT out0 (ddra),a lw: in0 a,(dra) res rtcclk,a out0 (dra),a ;Clock falls srl a rrc c rla ;Data => A[0] out0 (dra),a set rtcclk,a out0 (dra),a ;Clock rises djnz lw in0 a,(ddra) set rtcdat,a out0 (ddra),a ;Data IN pop bc ret end tcdat,a ;Data line OUT out0 (ddra),a lw: in0 a,(dra) res rtcclk,a out0 (dra),a ;Clock falls srl a rrc c rla ;Data => A[0] out0 ; Port definitions for the FDC37C665/6 combo chips ; Prefix a "_" as some names clash with Z180 names ; Diskette controller _DOR equ 92h ;Digital Output _MSR equ 94h ;Main Status _DSR equ 94h ;Data-rate Select _DATA equ 95h ;Data & commands I/O _DIR equ 97h ;Digital Input _CCR equ 97h ;Confign. Control _DMA equ 0a0h ;Diskette DMA address ; Serial port ;RD/WR _RBR equ 98h ;R Receiver buffer _THR equ 98h ;W Transmit holding reg. _IER equ 99h ;RW Interrupt-enable reg. _IIR equ 9ah ;R Interrupt ident. reg. _FCR equ 9ah ;W FIFO control reg. _LCR equ 9bh ;RW Line control reg. _MCR equ 9ch ;RW Modem control reg. _LSR equ 9dh ;RW Line status reg. _MMSR equ 9eh ;RW Modem status reg. (name clash w. FDC) _SCR equ 9fh ;N/A Scratch reg. (not avail. in XT) _DDL equ 98h ;RW Divisor LSB | with DLAB _DLM equ 99h ;RW Divisor MSB | set high 9ah ;R Interrupt ident. reg. _FCR equ 9ah ;W FIFO control reg. _LCR equ 9bh ;RW Line control reg. _MCR equ 9ch ;RW Modem control reg. _LSR equ 9dh ;RW Line status reg. _MMSR equ 9eh ;RW Modem status reg. (name clash w. FDC) _SCR equ 9fh ;N/A Scratch reg. (not avail. in XT) _DDL !2@%KQ(3$/SML,$^()"1*`9'KQ(3$/S=Z=WA(>#_.?D&(*]W(Q#\W>G=X47- MB@6V=]WIW>'1?9,X]SQ/0\V*!5]!K[/+(S`&MG%X(0``1#E.Y0DC7B-6&-S=X>MH)@!$.>VP M(2``.?G=Z=WA(2``.5XC5F@F`$0Y[;`A(@`8Y]WAZW@O;R;_.?EP(T@&`.OM ML-WIM^U2&=@^D,-U'[?M4K?M0C`#"1G)/I$8[K?M4NL3ZD`&\!@!^!$``,G5 MZ[?M4NOA&.NW[5(A`0#(*\G-J`L8]@D8 M\,T\!R$!`-`KR@D8[\T\!R$` M`,C8(\G-.xlist .z80 ; Macros to define the Z-180 extended instructions. ; ; D-X Designs Pty. Ltd. 4/12/95 D. R. Brooks ; ; WARNING! These instructions are NOT supported by ; Z80MU. However the IO instructions are ; necessary to ensure correct access to ; the internal machine registers, which ; fully decode all 16 address bits. ; ; Adapted from Zilog (file 182macro.lib) ; Enhanced to provide conditional definition for the ; following chips (define the appropriate symbol) ; Z80180 Default ; Z80S180 ; Z80181 ; Z80182 ; First, check only one CPU is defined ifdef Z80180 ?test equ 0 ;These will throw a "Multiple endif ; Definition" error if 2 CPU's ifdef Z80S180 ; are defined ?test equ 1 endif ifdef Z80181 ?test equ 2 endif ifdef Z80182 ?test equ 3 endif ;========== Z180 Internal Interrupt Vectors ======== ; The following vectors are offsets from the value ; loaded in IL, the Interrupt Vector Low register. VINT1 equ 0 ;External INT-1 pin VINT2 equ 2 ;External INT-2 pin VPRT0 equ 4 ;Timer 0 VPRT1 equ 6 ;Timer 1 VDMA0 equ 8 ;DMA Ch-0 VDMA1 equ 0ah ;DMA Ch-1 VCSIO equ 0ch ;Clocked serial I/O VASC0 equ 0eh ;Asynch. comms. Ch-0 VASC1 equ 10h ;Asynch. comms. Ch-1 ;========== Z180 System Control Registers ========== ;NB These registers may be relocated to multiples of ; 40H, by setting the IO Control Register (ICR = 3FH) ; The addresses below are valid with ICR=0 (else they ; are offsets from the ICR base value). ;ASCI Registers cntla0 equ 00h ;ASCI Control Reg A Ch0 cntla1 equ 01h ;ASCI Control Reg A Ch1 cntlb0 equ 02h ;ASCI Control Reg B Ch0 cntlb1 equ 03h ;ASCI Control Reg B Ch1 stat0 equ 04h ;ASCI Status Reg Ch0 stat1 equ 05h ;ASCI Status Reg Ch1 tdr0 equ 06h ;ASCI TX Data Reg Ch0 tdr1 equ 07h ;ASCI TX Data Reg Ch1 rdr0 equ 08h ;ASCI RX Data Reg Ch0 rdr1 equ 09h ;ASCI RX Data Reg Ch1 brk0 equ 12h ;Break Control Reg Ch0 brk1 equ 13h ;Break Control reg Ch1 ;CSI/O Registers cntr equ 0ah ;CSI/O Control Reg trdr equ 0bh ;CSI/O TX/RX Data Reg ;Timer Registers tmdr0l equ 0ch ;Timer Data Reg Ch0-Low tmdr0h equ 0dh ;Timer Data Reg Ch0-High rldr0l equ 0eh ;Timer Reload Reg Ch0-Low rldr0h equ 0fh ;Timer Reload Reg Ch0-High tcr equ 10h ;Timer Control Reg tmdr1l equ 14h ;Timer Data Reg Ch1-Low tmdr1h equ 15h ;Timer Data Reg Ch1-High rldr1l equ 16h ;Timer Reload Reg Ch1-Low rldr1h equ 17h ;Timer Reload Reg Ch1-High frc equ 18h ;Free-Running Counter ifdef Z80S180 ccr equ 1fh ;CPU Control Reg endif ;DMA Registers sar0l equ 20h ;DMA Source Addr Reg Ch0-Low sar0h equ 21h ;DMA Source Addr Reg Ch0-High sar0b equ 22h ;DMA Source Addr Reg Ch0-B dar0l equ 23h ;DMA Destn Addr Reg Ch0-Low dar0h equ 24h ;DMA Destn Addr Reg Ch0-High dar0b equ 25h ;DMA Destn Addr Reg Ch0-B bcr0l equ 26h ;DMA Byte Count Reg Ch0-Low bcr0h equ 27h ;DMA Byte Count Reg Ch0-High mar1l equ 28h ;DMA Memory Addr Reg Ch1-Low mar1h equ 29h ;DMA Memory Addr Reg Ch1-High mar1b equ 2ah ;DMA Memory Addr Reg Ch1-B iar1l equ 2bh ;DMA I/O Addr Reg Ch1-Low iar1h equ 2ch ;DMA I/O Addr Reg Ch1-High bcr1l equ 2eh ;DMA Byte Count Reg Ch1-Low bcr1h equ 2fh ;DMA Byte Count Reg Ch1-High dstat equ 30h ;DMA Status Reg dmode equ 31h ;DMA Mode Reg dcntl equ 32h ;DMA/WAIT Control Reg ;System Control Registers il equ 33h ;INT Vector Low Reg itc equ 34h ;INT/TRAP Control Reg rcr equ 36h ;Refresh Control Reg cbr equ 38h ;MMU Common Base Reg bbr equ 39h ;MMU Bank Base Reg cbar equ 3ah ;MMU Common/Bank Area Reg omcr equ 3eh ;Operation Mode Control Reg icr equ 3fh ;I/O Control Reg ifdef Z80181 ;Features unique to Z80181 ;Integral PIO device p1ddr equ 0e0h ;Data Direction Reg 1 p1dp equ 0e1h ;Port 1 Data p2ddr equ 0e2h ;Data Direction Reg 2 p2dp equ 0e3h ;Port 2 Data ;Integral CTC device ctc0 equ 0e4h ;CTC Channel 0 ctc1 equ 0e5h ;CTC Channel 1 ctc2 equ 0e6h ;CTC Channel 2 ctc3 equ 0e7h ;CTC Channel 3 scccr equ 0e8h ;SCC Control Reg sccdr equ 0e9h ;SCC Data Reg ;Chip-select output pins ramubr equ 0eah ;RAM Upper Boundary ramlbr equ 0ebh ;RAM Lower Boundary rombr equ 0ech ;ROM Boundary scr equ 0edh ;System Control Reg endif ifdef Z80182 ;Features unique to Z80182 ccr equ 1fh ;CPU control reg. intype equ 0dfh ;Interrupt edge/pin mux reg. wsgcs equ 0d8h ;Wait-State Generator CS enh182 equ 0d9h ;Z80182 Enhancements Reg pinmux equ 0dfh ;Interrupt Edge/Pin Mux Reg ramubr equ 0e6h ;RAM End Boundary ramlbr equ 0e7h ;RAM Start Boundary rombr equ 0e8h ;ROM Boundary fifoctl equ 0e9h ;FIFO Control Reg rtotc equ 0eah ;RX Time-Out Time Const ttotc equ 0ebh ;TX Time-Out Time Const fcr equ 0ech ;FIFO Register scr equ 0efh ;System Pin Control rbr equ 0f0h ;MIMIC RX Buffer Reg thr equ 0f0h ;MIMIC TX Holding Reg ier equ 0f1h ;Interrupt Enable Reg lcr equ 0f3h ;Line Control Reg mcr equ 0f4h ;Modem Control Reg lsr equ 0f5h ;Line Status Reg msr equ 0f6h ;Modem Status Reg mscr equ 0f7h ;MIMIC Scratch Reg dlatl equ 0f8h ;Divisor latch LS dlatm equ 0f9h ;Divisor latch MS ttcr equ 0fah ;TX Time Constant rtcr equ 0fbh ;RX Time Constant ivec equ 0fch ;MIMIC Interrupt Vector mimie equ 0fdh ;MIMIC Interrupt Enable Reg iusip equ 0feh ;MIMIC Interrupt Under-Service Reg mmcr equ 0ffh ;MIMIC Master Control Reg ;Z80182 PIO Registers ddra equ 0edh ;Data Direction Reg A dra equ 0eeh ;Port A Data ddrb equ 0e4h ;Data Direction Reg B drb equ 0e5h ;Port B Data ddrc equ 0ddh ;Data Direction Reg C drc equ 0deh ;Port C data ;ESCC Registers sccacnt equ 0e0h ;ESCC Control Channel A sccad equ 0e1h ;ESCC Data Channel A sccbcnt equ 0e2h ;ESCC Control Channel B sccbd equ 0e3h ;ESCC Data Channel B endif ;[E]SCC Internal Register Definitions RR0 equ 00h RR1 equ 01h RR2 equ 02h RR3 equ 03h RR6 equ 06h RR7 equ 07h RR10 equ 0ah RR12 equ 0ch RR13 equ 0dh RR15 equ 0fh WR0 equ 00h WR1 equ 01h WR2 equ 02h WR3 equ 03h WR4 equ 04h WR5 equ 05h WR6 equ 06h WR7 equ 07h WR9 equ 09h WR10 equ 0ah WR11 equ 0bh WR12 equ 0ch WR13 equ 0dh WR14 equ 0eh WR15 equ 0fh ;==== Define the additional Z-180 instructions ===== ;Machine registers (internal use only) ?b equ 0 ?c equ 1 ?d equ 2 ?e equ 3 ?h equ 4 ?l equ 5 ?a equ 7 ??bc equ 0 ??de equ 1 ??hl equ 2 ??sp equ 3 slp macro db 0edh db 76h endm mlt macro ?r db 0edh db 4ch+(??&?r AND 3) SHL 4 endm in0 macro ?r, ?p db 0edh db 0+(?&?r AND 7) SHL 3 db ?p endm out0 macro ?p, ?r db 0edh db 1+(?&?r AND 7) SHL 3 db ?p endm otim macro db 0edh db 83h endm otimr macro db 0edh db 93h endm otdm macro db 0edh db 8bh endm otdmr macro db 0edh db 9bh endm tstio macro ?p db 0edh db 74h db ?p endm tst macro ?r db 0edh ifidn ,<(hl)> db 34h else ifdef ?&?r db 4+(?&?r AND 7) SHL 3 else db 64h db ?r endif endif endm .list  macro db 0edh db 9bh endm tstio macro ?p db 0edh db 74h db ?p endm tst macro ?r db 0edh ifidn ,<(hl)> db 34h else ifdef ?&?r db 4+(?&?r AND 7) SHL 3 else db 64h db ?r endif endif endm .liX&RT7*!2#-4A8A+@#-\AC-8A\^!>TYX#YH M[3G@R7-!P@& M>"&3X\VR!2J/X^4A`0#1&2*/XR&``.4JC^/1&2*1X\/7("&3X\T*!TYX#YJ[3G@P\4?0U(@=&\@96YDS9`9 MS6(?(9/CY?@ABCDåCCPLUS PRN€EFGHIJKLåCCPLUS PRN€MNOPRSTUåCCPLUS PRNVWåTEST HEX'XYZåTEST SYM[åDISKOPQ PRN€XYZ[\]^_åDISKOPQ RELbåDISKOPQ PRN€`acdefghåDISKOPQ PRN€ijklmnop ; For M80 Z80.LIB must be available and must rename source 'CCPLUS'. ; ; 2.2 86/10/27. Search suppression for DOS+ use. Added KILL command ; to abort submit/job operations. CCP+ knows how executed. cbf ; 2.1 86/10/11 Fixed so "-b:xyz name" executes name in b:xyz.lbr ; (with CCPXTEND mounted). Was aborting. Added non-wheel drive ; access checks. Commands suppressed under wheel now search for ; transients, and transient execution is non-suppressable. Now a ; du consisting of ":" alone specifies default. Fixed REN. cbf ; 2.0 86/10/2 Preliminary beta test release. Complete rewrite of 1.7 ; 0000' cseg 0016 ccpver equ 22; UPDATE with each revision FFFF true equ -1 0000 false equ not true 0000 debug equ false; true allows linking to existing code 000D cr equ 0dh 000A lf equ 0ah 0009 tab equ 09h 001A eof equ 01ah ; D O S + system documentation 86/12/07 by C.B. Falconer DOS+ is a complete replacement system for CPM2.2 (Copyright Digital Research). DOS+ provides many CPM3 features, and several unique capabilities. It also supplies many ZCPR features, without requiring any extra memory assignments. DOS+ operates on Z80 CPUs only. DOS+, CCP+, DDTZ, INITDIR, FDATE, MOVDOS+, SETFLAGS, XJOB, TIME and their associated documentation are Copyright (c) 1986 by: C.B. Falconer, 680 Hartford Tpk, Hamden CT 06517, Tel (203) 281-1438. all rights reserved. They may be freely copied and distributed provided no charges are made, and that they are not included with other items for sale. For commercial per- mission contact C.B. Falconer. Contributions are solicited. All contributions of $20 or over will receive notices of available updates and/or revisions. $50 or over is considered registration, and major revisions (on Kaypro 4 or IBMPC format disks, as desired) will be made for 1 year, with source code. ------------------------------ This file is the header of DOSPLUS.DOC in DOSPLS25.LBR (or .ARC) object distribution file. That file contains the ready-to-run object code and further documentation. I have added the source (and object) of SYSGEN, for those who had problems with initial loads. Since virtually no-one has contributed any funds for this development, and it has been almost 6 months since the last, I have decided to release the source to the public domain for non-profit use. I still retain all commer- cial rights. Contributions remain welcome, however. The contents have been repackaged in an ARC file, and the embedded file names altered (to eliminate the "+" character, which gives MSDOS fits). cbf 88/01/13 begin 644 ROM.COM MP\D?S:M#;W!Y5^S0`"X?$]R!CS MS24"#0H`R<75Y=WE_>7U;R8`Y7-HP!]&-GE(08"&`3E(0`"(C@"X>/UQ=5^(['A^/CX^/%`=($P3T@]"L8Z,W0`=@JS@$8W_7%U>4A MJ`'-6@(AH@'-T`$JN@'40@+AT<'QR?7%U>4AM`$8Z?7%U>4AK@$8X/4ZO`*W M*!#%U>4],KP"(<@!S5H"X='!\4A MO`$8V_7%U>7E$?``(8L!`1``[;#1.IX!3SJ<`8+5S0`#T3J?`4\ZG0&#S0`# M(?``S=`!*J`!S4("X='!\4ZX0"W*!]Y_@T@&M7%S:``?+4H M#\T2`OX3(`C-$@+^`\K%'\'1*@$`&>DBVP#5>#+A`'FW*`L^PS(X`"$_'R(Y M`"')`Q&@``$8`.VP(>$#$;@``1(`[;#A`0,`[;`^?S+:`*_#(!;#.@/#1`/# M70/#4P/#6`/#3@/#70/#1`,#```#`0`!`@`"`P`#!``#!0`._Q@,#@#M6]L` M$QK^("CZ(64`!@/-?00:S80$_D$X$OY1,`Y'$QK^.B`&>-9`$Q@"&Z\A7`!W M(PP-*`P:_AH@!P8+S7D$&!`&",U6!!K^+B`&$P8#S58$(6@`!A@V`",0^\D: M#`TH!/XJ*!G^+B@:_B$X%OY]*!+^*B@.S80$=R,3$-_)$SX_&`(^('(U8C3B-&XL:3P8`+V\F_SGYZP/ML-WIT1I/!@`O;R;_.?GK`^VPZ=WAZR'@_SGYZ\4$ M!2@%KQ(3$/SML,$^()"1*`9'KQ(3$/S=Z=WA(>#_.?D&(*]W(Q#\W>G=X47- MB@6V=]WIW>'1?9,X]SQ/0\V*!5]!K[/+(S`&MG%X(0``1#E.Y0DC7B-6&-S=X>MH)@!$.>VP M(2``.?G=Z=WA(2``.5XC5F@F`$0Y[;`A(@`8Y]WAZW@O;R;_.?EP(T@&`.OM ML-WIM^U2&=@^D,-U'[?M4K?M0C`#"1G)/I$8[K?M4NL3ZD`&\!@!^!$``,G5 MZ[?M4NOA&.NW[5(A`0#(*\G-J`L8]@D8 M\,T\!R$!`-`KR@D8[\T\!R$` M`,C8(\G-J`L8],UZ"1COS3P'(0$`V"O)S:@+&/7->@D8\%1=2T+K(0``>K<^ M$"`#4SX(*>LIZS`!"3T@]LE\JO7-2@?KS4H'ZT1-KV=O/A'M:NU",`()-S_+ M$\L2/2#PZ_'P&$CES5P'RSS+'='KS=X&Z\MZR!@US2L'R"D0_MZMR`(>_X0,`-'M\FO9V_)ZWRJ?/I(![K`?;O)%\G+?,A\+V=]+V\C MR7WF`6\F`,GM2],`[5O1`,75>$%*4QX`'\L8RQG+&LL;X1GKX>U*1$TAZ6(9 M(M$`ZR$9-NU*(M,`1$W)!@`1$"?-K`<1Z`/-K`<19`#-K`<>"LVL!WT8#:\\ M[5(P^QD$/2`"!'E?28`(SE.@3@<=^LA``!$[4(Y^>OE`^VPZ^$K&T\#[;CK(_G=Z3X0PW'-I@17XG=X>'E?28`(SGY;R8`W>G=X2$``%0Y7DLCY1E>0R/E&>7] MX='A>9`X$#Q/Q=7E&KXH#.'1P2,-(/(A```8#B,3$.S1X<$A```YZ^U2_?G= MZ=WAS:8$3^'-IPE?X7Z3.!L,#2@7D3@2]7Z1=P8`4!E470GQ/$_ML!@"'7/= MZ=WAS:<)3]'M4^8`(0``.1KUAC@#N#@!>!+Q5UZ1."\\;WJ#.`2X?3@(>),X M)I$X(SRW*!_%U2KF`%\=%@!"&0G1U>50&>OA3^VXT<$8!7H\*!E/>)$\NS@! M>[LA`0`Y3^VP(0``5#E>$QGYW>G=X>$MPC`(;"8`W>DA`@!4 M.5X3&7XV`2-WR2$$`%0Y7DLCY1E>0R/E&>7]X='AK[@H!+D@"'BYX=']^=7I M&KX@]B,3!0T8YWRW(`-]M\`^$<-W'\W6"=`^`<-U'\U*"ACUS74/S6`*&.W9 M?;?9/@(HZ,V^"AC@V-Q@@ MS8\+/_4H$#@!V'9W>'+N+!'+"W,.PL(R7VWR-F5V3_-%@OEY>7=.=DN!=D^"`C-CPLX M`\UU"S_+%0@](`S==07=*]DMV2@./@C-3PLPWPC-=0NW&.'-3PLX!,V/"S_A MT<'+>"`%S5`+&)HL()/9Y<5XR_C9J.:`]7=(0``R>'8KV]'3U=?9\FWRQC+&MF*V5=YV8G93WC9B-E'R7S9E-EG>]F;V5]ZV9K95WG9F=E/>-F8 MV4?)>-FXV]F[V"@&S;P+ MR#_)?=F]V<"WR,./"WW6@=H["SS^*-#9Q=7E",T["P@WS40+/2#YV7S9I-EG M>]FCV5]ZV:+95WG9H=E/>-F@V4?#1`K9Q=7EV#X#PG4?S74/?<:`RR_&@&_6%/79Q=7ES;X*S=8)+<75Y"@#S=8)V2W9S:@+]3@#S4H*V2W9S:@+.`79+,U*"GW^;#@[V0&J*A&JJB%_ MJLU@"MWEW2'0##X%S?T.W>'-=0_-8`K-8`K%U>79S74/+2W9+\X=`W0``W0>HB(B(@(?JNJJJJJ M+"T^!,IU'\MXPG4?V7=(54-/@;-_0[=X2S9S6L/+=G-U@GQQ=7E;R8`,`$ES=$/V2S-8`K9 MX='!S=8)??YGVCL+R7V*G=B)'7WIHHLN.GV.XSB.8WY)DB1)$G[-S,S,3'^K MJJJJ*MG-:P_9M\MX]4LS9D/Y'Q,`KUV'+3\C+^,E_Y\_,$U1_]O2B,`E_ M:L&1"@:`M9Z*;T2`@BPZS1.`:L&1"@:!``````"`(:+:#TE]Z**++KI]CN,X MCF-^29(D29)^S7US74/S6`*\7--P_-U@G9X='!V79X='!R-G-3P\H`LOX+-D6!R@!%)(P`:_^"3@"/@D\5]79_2%= M`-WES;@0W>'13WH\RWL@$('R.!#]-@``&`O^##@"/@O5S4T1T2@%S;`0&`?-IA`-\EP0>K!\?'Q_F#\8P_7<`_2-XY@]'Q=7ERR7-4`O+ M)/M2D1-X')_>7A7Q8`&7XV`/XU MV!WZ:1$K?CQW_CK8-@`8\38Q(S8`#,G9`0``VL1V-G+X-TCW7X`_BLH!OXM(`3+Z-TCS0,2/]A/W2/-`Q(P"MTC5WF'AX&' M@D_+:"@$>>U$3]G9><:`_EK8_J8_V,7=Y7G-#1+=X=G!V8#*`CUS8`2\3T@ M^/&W\F`*V<.^"H$``````(X```!`')L``""\/J@`$*74:+8$O\D;#L.LQ>MX M+=#-SAO"4][Y>#D_`>LKJ*W%'?C)>\Z70'VWR,OXQ=5\S4,+S4,+A&?C[5KK MX>/M2D1-X3`&S40++#?(?<8#;\NXR0X!&`(.`,T,$QJ^(`@C$Q#X>>X!3R%` M`#GY:28`W>D.`1@"#@#-#!,-(`'K#@`:MKX@XB,3$/<.`1C:S0P3&K9W(Q,0 M^>OYW>G-#!,:+Z9W(Q,0^!COS0P3&J9W(Q,0^1CC_>'=X2$``#GK(2``13G] MZ=WA(2$`.7ZW*`.O&`8K1LV*!:8A(@`Y^2$``"@!(]WI/J\RY@#]X2K;``80 MS;(%KQ+A(N(`_>5\MSXBRB`6.N8`MR@-S883(`@JX@`V`"-WRLA7``!)`#ML,D&!B&V$\7E!@/M6]L`$QK^("CZ&LV$!)8H"N'! M$00`&1#CM\DC$Q#KP<$:_CK`?LE#3TX`5%)-`4M"1`),4U0#0558!%534@4^ MKS+F`,WN%,TD%BKB`"-^_@8@'LZY@"W`0\!*`K5#A/-!0#1`1;QQ41'``9ZR%<``$, M`.VPX1$,`!GEZPX7S04`T3S*KA4A7``!)`#ML,D^`<,@%CZO,N8`S1<6P"K? M`'RU/B$@ZRKB`!$,`!D17``!)`#ML!%<``X/S04`/"C/(?T5$8```1H`[;`1 M``$ZY@"W(`3M6P$!,0`!PX$`_]4.<%`!%<``X4S04`T2&``!GKMRCI&&8B MX@#-PA;(/B`RV0#).MD`M\CQR=WAW>7E(;HHU'X4(\WH`1C,%?IX%BO-)0(((`@`'2B]&.\V&LGE*N(`(W[^!N') MS<(6R,U;%_X:R,75Y2KB`"-^MR`.*MT`?OX:*&@C(MT`&&(](!7-$@+U_B`X M!S5L7_B`H%OX)*!+^#2@4_AHH$'7-(R,CY7[&+5\6`!EQX33P-@`.%7AM^U2ZY,X"B@(1SX@S9(8$/E#!`7(?LV2&",8]\'1 MV>'1P=G%W2K;`-7-]`\8Q\'1Q+<@'7FW^C(:Q=4.(OQR2+B`,V?&L@8Z`XB*N(`R];+7LC+ MGA@(*N(`RU;(RY;EQ1$P`!GK#AK-!0#!X1$,`!GKS04`M\G!T>U3X@#%Y%R*W/)/I'#(!;5V>'9(0``5%T^$"GK M[6KKV2G9,`0),`$3/2#OR4BX@!^Y@/*\QMXL2A,Q=4.<% M`"KB`!$,`!GK.N<`3\T%`-'!MR@0;SKG`/XB($-]/2@$_@,@/\75*N(`$2T` M&4XC1@-P*W$1V_\9<2-PT<$A@``9ZPL8L"KB`!$)`!E&*TXK*RM6*U[KM^U" MT.MQ(W#)/ID8!C[P&`(^!,,@%L'1[5/B`,7ES5(;T;?M4MH?&RKB``$(``ES M(W(!)``)>+$@&BKB``$, M``D&`(Q#[[5OB``X/S04`/"A(*N(``2$`">U+Y`!Q(W`C(^OM2^8`Q=4. M<%`.U;X@`.(+$@U2KB``$D M``GIW2KB`#[PPW^;\7R'M`"+K`-TJ[0#=;@+=9@-] MM"A([5(P#]UN`-UF`>7=(NL`W>$8XR`*W5X`W58!W>48&TU$W6X`W68!W>7= M&=UU`-UT`=UQ`MUP`]WET2KK`',C7A&2+-`"KR``$$``G= MY<$)VC4=[4O/`.U"`0``(0``VO`-^(V9O$Q,3>^;\7^LB\@`J M[0#EW>&W[5(P4MUN`-UF`>6W[5(P!-WA&/#AU?WA[4OR`/UQ`OUP`_UU`/UT M`=US`-UR`=WEX=U.`MU&`\W$'2@)W5X`W58!U=WAW>7AW4X"W48#W5X`W58! M&!LJ[0#M4^T`U=WAW74`W70![4OR`-UQ`MUP`^L)M^U2P-7]X2K-`+?M4B@; M_7X`W7<`_7X!W77A(LT`!@0V`",0^\G-"QXJ M]@#)S0L>*O@`R2$``"+V`"+X`-TJ[0#=3@+=1@-YL"@>*O8`"2+V`"KX`+?M M0C`$[4/X`-UN`-UF`>7=X1C8*L\``?O_">U;S0"W[5+8ZRKV`!DB]@`J^`"W M[5+0[5/X`,GM6\T`H>(N(` MX2+D`.$,#2`%S?88&`/-0!DJY`#I/J\RZ@`BY@`AZAXBX@#A(N0`X2+H`"%< M``8>S;(%KQ(JZ``ZZ@"W(`7-[A<8`\T2&"'9`'XV`+=G;R@(W>7A$5P`[5+K M*N8`'!X7BQ*`MS"WBQ*`5471/ML-WI1$W=X='A MM^U2&3#P"PGK">L#[;C=Z='!U2UA)DAV0!^-@!O M)@#)S:``?+7(S:,`??X#P-WAS24"7D,-"E5S97(@8G)E86L`&#$ZV0"WR-WA M]'-)0(-"E)U;BUT:6UE`,TE`B!E7A[5O5`+?M4A$5`!DBUP#-C03-)0(-"E!R;V=R86T@86)O0O$9WB`0``S;($PZ'A?3*)X_WE M*HGC)@`1,``!"@"W[5*W[4+2&"`JB>,F`.4A,`#1Z[?M4B**X\-T(!D)$4$` M`08`M^U2M^U"TD,@*HGC)@#E(4$`T>NW[5+E(0H`T1DBBN/#="`9"1%A``$& M`+?M4K?M0M)N("J)XR8`Y2%A`-'KM^U2Y2$*`-$9(HKCPW0@(?__(HKC*HKC MR?WAX2*"X_WE(4'DY2J"X]$9;B8`YN,J?./E*GKCT7RR9WVS;^4A`(#1?*)G?:-OY2$``-'-80;+1'A?3)J MX_WE(0``?3)KXR$``.4A_W_1S34&>K/*12/5(F#C*FKC)@#+1R(JNN3E*F#CT1EN)@!],E_C*E_C)@#E(?\`T MXR$!`.4A"@#1S34&>K/*WB+5(F+C*F+C(]$;P\PB(0``Y2'``.7-.`!],E[C M(0$`Y2$&`-'--09ZL\H*(]4B8N,J8N,CT1O#^"(J8./E(?__Y(RI@XR/1&\-.(B$` M`.4A``#ES3@`?3)>XR$!`'TR:^/#9B/APULCX<,\(RIKXR8`R2$``'TR7>,A M``!],ECC(0``Y2'_?]'--09ZL\JS(]4B5N,J6.,F`.4J5N/E(?__YK/*GR35(E3C(0``Y2$@`.7-.`!],ECC M(0``Y2$@`.7-.`!],ECC(3(`S4("(0``Y2'_?]'--09ZL\I])-4B5N,J5N/E M(:``Y/#HB0J5.,CT1O#XR/#JB3APY\DX<.6)"I=XR8` MR?WAX2)0X_WE*E#CY2$`@-%\HF=]HV_E(0``T/)PW,AD>/-G1E][@%ORT7* MTR8AD>/-.!8A0>0&>,TN&,U?&,UB'R%!Y.4A`0#1&6XF`.4A.@#1S6$&RT7* MPB7-,"4A``!],D'C(0(`(D+C(0$`Y2$"`.7->"#E(04`T1G1S34&>K/*%2;5 M(D3C*D'C)@#E*D+CY"#E(0@`T"`B1.,J1./E(0``T"#KX7,J1N/E(0$`T1DB1N,J0N/E(0(`T1DB0N,J1./E(0$`T>NW[5(B M1./#@B;#@R7-4A;-@1D24')O9W)A;6UI;F<@9G)O;3H@S6(?*H_CY'!X?,^R.TY.GF@ M_O\@!6XF`!@!<3[`[3DZ^_WI_>'A(A7C_>4B.0`^PS(X`,DJ%^/)(?\`?3() MXRJ/X^4JC>/1S34&>K/*C"?5(@KC*@GC)@#E*@KCY2'__^7-.`#1?*)G?:-O M?3()XRH*XR/1&\->)RH)XR8`Y2'_`-'-3@9],A#C*A#C)@#)(0``Y2$=`-'- M-09ZL\K9)]4B&>,A&^/E*AGCT1GE(1DGY2H9X]$9;B8`Z^%S*AGC(]$;PZXG M(1OCY(JNN3E*OGB MT1GE(?\`Z^%S*OGB(]$;PU`HS2TES5(6S8$9'4-H96-K:6YG(&5X:7-T:6YG M(%)/32!C;VYT96YTS9`9S6(?S5(6S9`9S6(?S4PGRT7*,2G-4A;-@1DX5&AI M2!B;&%N:R!2 M3TT@87)E82[-D!G-8A_-4A;-@1DE17AI2!I;G1E6]U7-T96T@:6YO<&5R86)L92[-D!G-8A\A`0!] M,HSCS5(6S9`9S6(?S5(6S8$9-$%R92!Y;W4@04)33TQ55$5,62!355)%('EO M=2!W86YT('1O(&-O;G1I;G5E("A9+TXI.B#-8A\A_N+-*Q8&"LTN&,U?&,UB M'R'^XN4A`0#1&6XF`,TH'^4A60#1S6$&RT7*G"K-Q1_-4A;-@1DJ0V]M;65N M8VEN9R!P(A`0`B[^(A(`!],NSB(8``Y2KOXM$9(NWB*NWB;B8`Y2$``-'-80;+1+E(0$` MT1DB\>(J[>)N)@!],NSB*N_BY2$!`-$9(N_B(8``Y2KOXM$9(NWBPPTM*O'B M(O?B*O?BR?WAX2+)XOWE(0``(J'B(0$`(I_B(2``?3*CXLT=!0`&("&DXLVR M!2&``.4JG^+1&2*=XBJ=XFXF`.4A``#1S6$&RT7*+RXJH^(F`.4A(`#1S4X& MY2J=XFXF`.4A(`#1S6$&T7VC;\M%R@HN*J'BY2$!`-$9(J'B*J'BY2K)XM'- M3@;+1+# MLRW#CBXJG>)N)@#E(0``T)N)@#E(2``T7-!P@&("&DXLVR!2J?XN4A`0#1&2*?XB&``.4JG^+1 M&2*=XL,R+B&DXLT*!08@($AR^+-"@7]Y7-T96TM4D]-(')E<')O9W)A;6UE"X@9FEL92!N86UE/LV0&"%!Y,VR!2$N`&4N`>4A0>3-"@7-?`CE(0``T"%!Y,VR!2&1X^4A0>3-"@7-/!/-8A\A MD>/-SQ/-8A_-4A;-@1D?4F5A9&EN9R`F('9E6EN9R!D871A(&9I;&4Z M("%!Y,T*!2$``,UQ&3- 1"@7-'04$+DA%6,T'"`9X(4$` ` end Í� ?áÑÁËx ÍP š, —7•8Æ€8Æ€8oÝãÙåÅxËøÙ¨æ€õËøÝåÝ!ÉáØ¯oGOW_gÉ·ËËËËËÉ·ËËËËËÉ|Ù„Ùg{Ù‹Ù_zÙŠÙWyÙ‰ÙOxÙˆÙGÉ|Ù”Ùg{Ù›Ù_zÙšÙWyÙ™ÙOxÙ˜ÙGÉxÙ¸ÙÀyÙ¹ÙÀzÙºÙÀ{Ù»ÙÀ|Ù¼ÙÉÙxÙ¨ò² xÉËx(ͼ È?É}Ù½ÙÀ·ÈÃ� }Ö�Ú; <þ(ÐÙÅÕåÍ; 7ÍD = ùÙ|Ù¤Ùg{Ù£Ù_zÙ¢ÙWyÙ¡ÙOxÙ ÙGÃD ÙÅÕåÙÍuÙÍÆ ÙÍJ ë}·ÈËx>ÂuÍu}Æ€Ë/Æ€oÖõÙÅÕå; ÍÖ -ÅÕåÍJ }áÑÁÙáÑÁã¼ã0ãñÙÉÙÍW-ÍJ ÙÍW,Ù}þlØÅ˸ͨ Á8 ; Íý Í` Ëx(ÍÖ Ù-Ùͨ õ8ÍJ Ù-Ùͨ 8Ù,ÍJ }þl8;Ùª*ªª!ªÍ` ÝåÝ!Ð >ÍýÝáÍuÍ` Í` ÅÕåÙÍu--Ù-ÍÖ ÙáÑÁÙÍJ ,,ñ,-ÈØxî€GÉgª?+2×n¶*ï8t Ð Ðzˆˆˆˆ~«ªªªª,->ÊuËxÂuÙÍaÙ}.�•õ; ÙÍOÙÍJ ÅÕåÙ,ÍÖ ÙáÑÁ; ÝåÝ!U >ÍýÝá,ÙÍk-ÙÍÖ ñÅÕåo&0%ÍÑÙ,Í` ÙáÑÁÍÖ }þgÚ; É}Š�؉}颋.:}Žã8Žc~I’$I~ÍÌÌÌL«ªªª*ÙÍkÙ·Ëxõ˸; }þˆ0GÅÕå,Í™åË<Ë}áõÍÑ,-(-ÙñáÑÁõÍJ ÝåÝ!Ù >ÍÝáñ0 õÙÍaÙÍ` ñ…o8 ñÈÙÍOþ á>Ãum.`1pF,þåt6|‰„!wS<ÿÃ.zÒ}[•|%¸FXc~üïýu€Ò÷r1}·ÈÝåÙÍOÙ¯Ëx(<˸õͨ 8Ù; ñËÿõÙÏŽé!~JÙͨ 0Í÷OÝ!—>ÙÝÍ<Ùͨ 8 = ìÙ ÝÙÙÍ7ËøÍÖ ÅÕåÍ<Í` ÙÍOÍÖ ÙáÑÁ; ÝåÍ÷ÝáÙÍ7ÍÖ ñ0 õÙÍW-ÍJ ñÝáËOÈËøÉçÏÌTöô¢0 jÁ‘ €µžŠoD€‚,:Í€jÁ‘ �€!¢ÚI}袋.º}Žã8Žc~I’$I’~ÍÌÌÌL«ªªªªÝ!Ó>ÅÕåõÍuÍ` ñÍÙáÑÁÃ` õÙÍ7õÙÅÕåÍ7ÍÖ ÙáÑÁÙÍ` ñ= éÙÍOÃÖ ÝÝnÝfÝ^ÝVÝNÝFÉ!�DLT\ÉI¢Ú!‚!É53ó!�úÉr1÷!€ÒÉÅÕåÙáÑÁÉÍ\!€> Ëx Ë#ËËË-= ðo˸ÉËxÙÍO(Ëø-ÍÖ ·Ë}(ËxËø>�½8(ÍC ,óÍC `iÈÃM!É>’Ãu|µÊ; Ë|ÍJ>�Ë| )=Ë|(úDMboÀ˸Éͦë8þ8ͦÙËxÙ(’0¯þ 8> ÕÍMÑËx(>-ͲË{(aËy(Ͱͦ ò\z·(>.Ͳ (Ͱ ÷ú~ͦ÷Ë{È>EͲ>+Ë|(|íDg>-Ͳ|/Ö 0ûÆ:ÝpÝ# ý~ý#· ý+>0ÝwÝ#Éýå,-  ý60ý#ø¯ÃJÅ˸}ÙÖ€oŸgMÍÄ|þÙ <ýwíDÍ }þ�0Í€ý5Ëø>„•.e cold-boot code dirbf: ds 128 ;directory buffer all00: ds (noab/8)+1 ;Allocation vectors all01: ds (noab/8)+1 ; enough for 3" drives chk00: ds (node)/4 ;Directory check areas chk01: ds (node)/4 ; enough for 3" drives ; curdph: ds 2 ;Ptr. to selected DPH mapptr: ds 2 ;Ptr. to current mappin strategy dmaadr: ds 2 ;user "dma" addr. readop: ds 1 ;1 if read operation wrtype: ds 1 ;write operation type erflag: ds 1 ;error reporting / retry counter rsflag: ds 1 ;read sector flag unacnt: ds 1 ;unalloc. record count ; sekhst: ds 1 ;seek shr secshf hstact: ds 1 ;host active flag hstwrt: ds 1 ;host written flag ; ; following "triads" are order-sensitive sekdsk: ds 1 ;seek disk no. sektrk: ds 1 ;seek track no. seksec: ds 1 ;seek sector no. ; hstdsk: ds 1 ;host disk no. hsttrk: ds 1 ;host track no. hstsec: ds 1 ;host sector no. ; unadsk: ds 1 ;last unalloc. disk unatrk: ds 1 ;last unalloc. track unasec: ds 1 ;last unalloc. sector endlocaldata equ $ ;-------------------------------------------------------------- ; Cold-boot code, overlayed by local workspace above org localdata ; B O O T S T R A P F U N C T I O N S ; On entry, DE = boot drive & type ; boot: xor a ;cold start ld (iobyte),a ld a,d ld (cdisk),a ;Start from the boot disk ld (bootdv),a ;Save boot-drive number ld hl,overloads ;Cold-boot entry no longer used, so ld (wboote-2),hl ; "overload" it for extensions cÃÉÍ«Copyright (C) 1984 BORLAND Inc‚AM-102 120/Apple CP/MP[1;1k~·7È#õå~Íáñ=ÈóÍ% ÉÅÕåÝåýåõo&åͦñýáÝááÑÁÉoåͦÉþ€Ü�Ô©æîÅÕåÝåýåÍ£}Ùå!å!"8áãõÅÕ~#·(åÍáôÑÁñãÉ}´È:$‡‡‡ããããÅÒÁ= ô+èÍÐØ*ÎßõÅÕå!¨ÍZ!¢ÍÐ*ºÔBáÑÁñÉõÅÕå!´éõÅÕå!®àõ:¼·(ÅÕå=2¼!ÈÍZáÑÁñÉõ:¼· ÷ÅÕå<2¼!ÂåõÅÕå!¼ÛõÅÕååð!‹í°Ñ:žO:œ‚ÕÍÑ:ŸO:�ƒÍ!ðÍÐ* ÍBáÑÁñÉ!ð ë!›45(É!.+/ –0ü†õyþ0(ñíÉ d!kÃZ!{ÃZ͈æ͈o&Éô  áÁå:á·(yþ ÕÅÍ |µ(Íþ ÍþÊÅÁÑ*é"ÛÕx2áy·( >Ã28!?"9!É í°!á¸í°áí°>2گà Ã:ÃDÃ]ÃSÃXÃNÃ]ÃDÿ í[Ûþ (ú!eÍ}Í„þA8þQ0Gþ: xÖ@¯!\w# ( þ  ÍyÍVþ. ÍV!h6#ûÉ (þ*(þ.(þ!8þ}(þ*(Í„w#ßÉ>?> w#üÉþaØþ{ÐÖ É|Í’}õÍ›ñæÆ�'Î@'Ãè¯7Ë|À|·}È>ÿÉ"ÍíCß"í6#ûëÑùü "Ïë"ÕÍ�Í©éå*Ï·íB"Ïí[Í·íRëáÚ5í°É*Ïí°"ÏÙÉ^#V#Õ^#V#N#FáÉÝáëO/o&ÿ9ùëí°ÝéÑO/o&ÿ9ùëí°éÝáë!àÿ9ùëÅ(¯üí°Á> �‘(G¯üÝéÝá!àÿ9ù ¯w#üÝéÝáEÍŠ¶wÝéÝáÑ}“8÷�Ãu·íR·íB0 É>‘î·íRëê@ðøÉÕë·íRëáë·íR!È+Éͨ õÍz ð·íR!À+Éͨ õÍz ðÍ<!Ð+Éͨ õÍz ðÍ<!ÈØ+Éͨ ôÍz ïÍ<!ÈØ#Éͨ ôÍz ïÍ<!Ø+Éͨ õÍz ðT]KBë!z·> S>)ë)ë0 = öÉ|ªõÍJëÍJëDM¯go>íjíB0 7?ËË= ðëñðHåÍ\Ë<ËÑëÍÞëËzÈ5Í+È)ýÉÍ+ÈË<ËúÉëz· {þ0G·É¯goÉë|ª|úHºÀ}»ÉÉË|È|/g}/o#É}æo&ÉíKÓí[ÑÅÕxAJSËËËËáëáíJDM!éb"Ñë!6íJ"ÓDMÉ'ͬèͬdͬ ͬ} ¯<íR0û= ÈÆ0ÝwÝ#ÉÝ~Ö$O! Ý#Ý~Í„Ö08)þ 8 !Öþ 8þ0T])Ø)Ø T]Ø)Ø_ØËy·È|‡ÉÝááå}&#9N�8wë!DíB9ùëåí°ëá+Oí¸ë#ùÝé>ÃwÝáͦWáͧ _áå}“8(º8J`9{‚T]=o`9yí¸ë ¯ÃwÍÖ Ð>ÃuÍJ õÍuÍ` íÙ}·Ù>(è; àÙËxÙÂQ Ù}·ÙÈÙÅÕåÙ}· Ù˸TÅËø¯ÙËø}Ù•(0íD=ÙÍC ,= ù(Ùñæ€ Í[ 0%ÍD ·, 7 Í� ?õ(8ÙÍu Ëx ÍO - öÍ; ñ8˸·ÙáÑÁÙÉÙËxÙÂÝ ÍX ÍÝ Ø,-Èxî€GÉÙ}·ÙÊ; }·ÈÙ…ÙÍ ÅÕåÝ9Í; Ù.Ù>Ý#ÝnË0Í[ ÍD = ñÙ-Ù åÝnûËx ÍP ,-(-ñññ·ñÙÁáÙÝá˸°G,-Ì; É}·ÈÙ•Ù?Í åååÝ9Ù.Ù>Í� 8Íu ?Ë= ÝuÝ+Ù-Ù(>ÍO 0ßÍu ·áÍO 8Í� ?áÑÁËx ÍP š, —7•8Æ€8Æ€8oÝãÙåÅxËøÙ¨æ€õËøÝåÝ!ÉáØ¯oGOW_gÉ·ËËËËËÉ·ËËËËËÉ|Ù„Ùg{Ù‹Ù_zÙŠÙWyÙ‰ÙOxÙˆÙGÉ|Ù”Ùg{Ù›Ù_zÙšÙWyÙ™ÙOxÙ˜ÙGÉxÙ¸ÙÀyÙ¹ÙÀzÙºÙÀ{Ù»ÙÀ|Ù¼ÙÉÙxÙ¨ò² xÉËx(ͼ È?É}Ù½ÙÀ·ÈÃ� }Ö�Ú; <þ(ÐÙÅÕåÍ; 7ÍD = ùÙ|Ù¤Ùg{Ù£Ù_zÙ¢ÙWyÙ¡ÙOxÙ ÙGÃD ÙÅÕåÙÍuÙÍÆ ÙÍJ ë}·ÈËx>ÂuÍu}Æ€Ë/Æ€oÖõÙÅÕå; ÍÖ -ÅÕåÍJ }áÑÁÙáÑÁã¼ã0ãñÙÉÙÍW-ÍJ ÙÍW,Ù}þlØÅ˸ͨ Á8 ; Íý Í` Ëx(ÍÖ Ù-Ùͨ õ8ÍJ Ù-Ùͨ 8Ù,ÍJ }þl8;Ùª*ªª!ªÍ` ÝåÝ!Ð >ÍýÝáÍuÍ` Í` ÅÕåÙÍu--Ù-ÍÖ ÙáÑÁÙÍJ ,,ñ,-ÈØxî€GÉgª?+2×n¶*ï8t Ð Ðzˆˆˆˆ~«ªªªª,->ÊuËxÂuÙÍaÙ}.�•õ; ÙÍOÙÍJ ÅÕåÙ,ÍÖ ÙáÑÁ; ÝåÝ!U >ÍýÝá,ÙÍk-ÙÍÖ ñÅÕåo&0%ÍÑÙ,Í` ÙáÑÁÍÖ }þgÚ; É}Š�؉}颋.:}Žã8Žc~I’$I~ÍÌÌÌL«ªªª*ÙÍkÙ·Ëxõ˸; }þˆ0GÅÕå,Í™åË<Ë}áõÍÑ,-(-ÙñáÑÁõÍJ ÝåÝ!Ù >ÍÝáñ0 õÙÍaÙÍ` ñ…o8 ñÈÙÍOþ á>Ãum.`1pF,þåt6|‰„!wS<ÿÃ.zÒ}[•|%¸FXc~üïýu€Ò÷r1}·ÈÝåÙÍOÙ¯Ëx(<˸õͨ 8Ù; ñËÿõÙÏŽé!~JÙͨ 0Í÷OÝ!—>ÙÝÍ<Ùͨ 8 = ìÙ ÝÙÙÍ7ËøÍÖ ÅÕåÍ<Í` ÙÍOÍÖ ÙáÑÁ; ÝåÍ÷ÝáÙÍ7ÍÖ ñ0 õÙÍW-ÍJ ñÝáËOÈËøÉçÏÌTöô¢0 jÁ‘ €µžŠoD€‚,:Í€jÁ‘ �€!¢ÚI}袋.º}Žã8Žc~I’$I’~ÍÌÌÌL«ªªªªÝ!Ó>ÅÕåõÍuÍ` ñÍÙáÑÁÃ` õÙÍ7õÙÅÕåÍ7ÍÖ ÙáÑÁÙÍ` ñ= éÙÍOÃÖ ÝÝnÝfÝ^ÝVÝNÝFÉ!�DLT\ÉI¢Ú!‚!É53ó!�úÉr1÷!€ÒÉÅÕåÙáÑÁÉÍ\!€> Ëx Ë#ËËË-= ðo˸ÉËxÙÍO(Ëø-ÍÖ ·Ë}(ËxËø>�½8(ÍC ,óÍC `iÈÃM!É>’Ãu|µÊ; Ë|ÍJ>�Ë| )=Ë|(úDMboÀ˸Éͦë8þ8ͦÙËxÙ(’0¯þ 8> ÕÍMÑËx(>-ͲË{(aËy(Ͱͦ ò\z·(>.Ͳ (Ͱ ÷ú~ͦ÷Ë{È>EͲ>+Ë|(|íDg>-Ͳ|/Ö 0ûÆ:ÝpÝ# ý~ý#· ý+>0ÝwÝ#Éýå,-  ý60ý#ø¯ÃJÅ˸}ÙÖ€oŸgMÍÄ|þÙ <ýwíDÍ }þ�0Í€ý5Ëø>„•.(ÍC Ë= øý~õ> xæÆ0ýwý#xæGÅÕåË%ÍP Ë%ÍP ëãÑãíZëáãíJDMáË%ÍP = ÈñÁýáÉýåá_~6þ5Øúi+~¨¥Ôh¶¿ÉìÅëx-ÐÍÎÂSÞùx9?ë+¨­ÅøÉ{Η@}·ÈËøÅÕ|ÍC ÍC „gãíZëáãíJDMá0ÍD ,7È}Æo˸ÉÍ ¾ #øyîO!@9ùi&ÝéÍ  ë¶¾ â#÷ÚÍ ¶w#ùëùÝéÍ /¦w#øïÍ ¦w#ùãýáÝá!9ë! E9ýéÝá!!9~·(¯+FÍŠ¦!"9ù!(#Ýé>¯2æýá*ÛͲ¯á"âýå|·>"Ê :æ·( ͆ *â6#wÉÍ÷*â6#6 ë!\$í°É!¶Ååí[Ûþ (úÍ„–( áÁã·É#ëÁÁþ:À~ÉCONTRMKBDLSTAUXUSR>¯2æÍîÍ$*â#~þ ͶÍ$*â:æ·> >w###6ÀÃÖþ þ #6++pÉ>¯2æíSäÍ-Í$Ͷ:Ù·À*â6###ww#w$w#wÖÿ:æ· åÍôá##N#F*ä·íBÈ>�à å¯w#w#í[äs#ráÃó>¯2æÍSÍ$ͶÍ$*â6å ë#Íá-¯Nw#FwÖÿq#p#6€#w#w#wÉÍß*â ë:æ·( ÕÍÑñÅÍÁ<Àxà *â6#ûÉ"â#~+þ 2ËN(>Í’:Ù· *âË^ îËFÈ*âå ëÍá< >ÿ2Ù6É"â~æÈÍŸ*â-¯w#wÕÿw#ÍóÍŸÀ"â~æÈ·ÍÀ ëÍ<À@ýá*ÛͲ¯áýåÍÀåÍ÷áåë!\ í°á åëÍÑ<Ê®!\$í°É>à >¯2æÍÀ*ß|µ>! ë*â \$í°\Í<(Ï!ý€í°:æ· í[1Ã�ÿÕÍ\ÍÑ!€ë·(éf"âÍÂÈ> 2ÙÉ:Ù·ÈñÉÝáÝåå!ÊÍ<áÉÝáÝå"âËF( #~þÀ#6Ãe>Îå!ÊÍ[áÉ"âËNÀ>ë!Ú~þ€8>O6*Û"ÝÍwþ (=þ(&þ("þ(þ :á·(ßÃNþ 8Øyº(Ô~#ÍèÌúx+Í% (½ï6Éå*â#~þáÉÍÂÈÍ[þÈÅÕå*â#~· *Ý~þ(h#"Ýb= Íõþ 8Íèþ ÌáñJ= ÍB== ͯ}8= ͵}/Í­ !*â###å~Æ-_~áþ(4òQ6*âËÖ>™2Ù>*â##wáÑÁÉ:Ù·>Àå*â##~áÉå*â#~þÿ(EÍÌÍ[þ ( þ (þ (þ ÍÖè!]Í[þ (þ (þ (þ(w#(ÍÖãÍÂÌÖ6áÉÝ!]Ý~·Èþ-ÀÝ#É8Ý~·È>7à ëÍ Í[ÃÖÍÖÉ>¯OÅÍkÁͼÈÅåÍÁÑÁÍÎØÌMës #rëÉÍkͼÈÅåÍpÙáÁÍÎØÙÌX ÙáåÍÌÍ[þ ÍÖôÍ[þ (þ( #w(ÍÖêÍÂÌÖáqÉ*â#~þÊáÍ[þ (þÈÍÖñÍ ÍÖþ ÀÃÖ*â##~þÈ6ÉÅÕåÍœáÑÁÉOÍ$*â#~þ(08áÅå·Ê¦=ʦ==Ê©=ʬò+ËÞ###å~Æ-_qá4ð6Í¡È>ðà *æ:è¾È4^qÉ}Ã’ÁÑÅÝ*ÛË|(ÍMëëË|( ÍMÝ6-Ý#ÕÍ�áͦí[ÛÝåá·íRë“8 (G> Í’ùCÈ~Í’#÷ÁÑÙáÑÁÙÅÝ*ÛÕÍôÇÁÑÅͦËC!h Ç!lÀTRUEFALSEͦ!9^#Í(ÑùÕÉá~#·(G~Í’#ùé> Í’> Ã’ "âËF!ÈÍ[¸(þÀ#ÉåÍRë·íRá0Íô*â4À#4É>™Ã åÍR·íR *â4 #4(áÍóÒ>òÜ>¯2çÍ$ë*âËV(/Ë–:ç·(#~+· x· y·ú2ÅÕ!͵ÑÁ( =(þ X:ç·(R*â:ç·(ËÞ###~Æ-Õ_ÑÖ-ÍŒí âX<òN=<ÍŒ*â###æw ÅÕåÍŸáÑÁ Õ*Ñ4 #4x±ÂüëÉ>™>ðà õ:ç·(ëñÉ"âÍŸÈè"*âËÖË^ÈËž*âËVÈË–åÅ0ëÍÁá ëÍ·ÉÁÑíSâÅåÍRÑ·íR8A*â N#F#s#rÍ$ 0}æ)ëíjëS\*â###w* N#Fë·íB ÈÕåÍŸÑár+sÉ>‘à ÕÙáÙ!T]>)ëíjëÙ)Ù0 0= ïÉÍU·íR!À#ÉÍUëÉ*â^#V#ÕN#F#^#VáÉ>">!2çDMÝáÑáÝå"â~æÊóx±(LÅÕÍ*â ë:çOÍÑÁ·(o:çþ" C}=(þ ?ÅÕ*â-N#Fp+qÛÿq#pÑÁ!€ë °*â F+N+++V+^ë·íBÐëq#pÉ>™>ð>à ÁÑíSâÅåÍRÑ·íRÚ*â s#r$ s#rÉ"äíSæëá"â! N#Fë·íB(^x± *â 6#ûí[âÍ<(H*â! íKäq#p##ëíKæÅÕÍí[â!Í· *â! 4 #4Ñ!€ëÁ x± Õ*â$ éÝ*â>ðÃw"òëáã"ô{æü_!í"ëÝ*íÝnÝf}´(HíR0ÝnÝfåÝ"ëÝáã Ý^ÝVÝåMDÝnÝfÝåÝÝuÝtÝqÝpÝåÑ*ës#rÑ*ôs#rÉÝåá"Í*ò ÝåÁ Ú5íKÏíB!Úð>ÿÃuëáã~#fo{æü_ë"ò*íåÝá·íR0RÝnÝfå·íR0ÝáðáÕýáíKòýqýpýuýtÝsÝrÝåáÝNÝFÍÄ( Ý^ÝVÕÝáÝåáÝNÝFÝ^ÝV*ííSíÕÝáÝuÝtíKòÝqÝpë ·íRÀÕýá*Í·íR(ý~Ýwý~Ýwýnýf ÝuÝt¯ÉÝåá"Í6#ûÉÍ *öÉÍ *øÉ!"ö"øÝ*íÝNÝFy°(*ö "ö*ø·íB0íCøÝnÝfåÝáØ*Ïûÿ í[Í·íRØë*ö"ö*ø·íRÐíSøÉí[Ís#rÉ^#VíSÍÉ>¯O"æ¯w2Ùx2è!ê"âá"äá ÍöÍ@*äé>¯2ê"æ!ê"âá"äá"è!\Ͳ¯*è:ê· ÍîÍ!Ù~6·go(Ýåá\íRë*æs#r¯ÿí_2ÔÉëÝáÁáx±( s x±(T]í°ÝéDMÝáÑá·íR0ð ë ëí¸ÝéÑÁÕ-a%ÃÆ}Í„oÉ*é!Ù~6o&ÉÍ |µÈÍ£}þÀÝáÍ%^C User break1:Ù·ÈÝáõÍ% I/OÝáÍ% Run-timeÍ% error Í’Í%, PC=Ýåáí[Õ·íR"×Í�Í% Program aborted*ßé1!Àä¸ÿÍ�!K"‡ãͲÃ� ýáá"Œãýå*»ä&}îoËEÊ ÍR!ÍòÍb!}2»ä>í9à>jí9àÍx*ŒãͲ!åÑÍ.o&}2‡ã*‡ã&å! ÑÍaËEÊs *‡ã&å! ÑÍaËEÊs *ŒãÍ *‡ã&e.åÍx*ŒãͲ*‡ã&å! ÑÍNËEÊ& >í9à>hí9àÉÍRÍ�1File Download Receiver: D-X Designs Pty Ltd, 1996Í�Íb!}2»ä!"ŽãÍx!’ãͲ!€å*ŽãÑ"�ã*�ãn&å!ÑÍaËEÊ"! äå!’ãÍ Í<Íb! äÍÎÍbÍRÍ�Ready to receive !’ãÍ !ÍqÍ� type ESC/CR to endÍ�Íb!’ãåÍç!’ãå!Ñn&å!ÑÍaËEÊ5"!’ãå!Ñn&å! ÑÍaËEÊ+"! äÍ[!’ãÍ !ÍqÍ�Íb!’ãåÍçÃá!! äÍîÍb>í9à>jí9àÃÅCR to endÍ�Íb!’ãåÍç!’ãå!Ñn&å!ÑÍaËEʰs!’ãå! sum -r/size 4560/8576 entire input file er different DOS+ "users". Think of those users as MS-DOS subdirectories. I have not included source files that are generally available on the Internet: only for code I myself wrote or altered. In general, the code is suitable for processing with M80/L80, and Turbo Pascal. Generally, each "user" repesents a separate project. Each user therefore includes (unless it's a trivial matter) a .SUB file to assemble & link it. The more complex projects also include a README.TXT file. The DOS+ and CCP+ modules are by C B Falconer (see his notices in !!READ.ME and the source files). I have made minor changes to assemble with M80 (documented in the files), but have not changed the "sense" of the code. The disk layout is: User 0, "system" files (accessible from any user): 1. PPIP.COM A shareware replacement for CP/M's PIP 2. UUENCODE.COM and UUDECODE.COM The standard binary/ASCII converters 3. FORMAT.COM Formats 3" and 5" disks for the P112 system 4. USER.COM Change user numbers under DOS+. Same as CP/M (ie "USER n"), but 0 <= n <= 9. 5. RECEIVE.COM Receives and files ASCII text. Enter "RECEIVE ", and enter ESC/CR to quit. Because these are "system" files, they will not show up on a DIR listing. User 0, non-system files (visible on DIR): 1. README.TXT This file 2. HARDWARE.TXT Explanations of how the hardware works, detailed pin-outs of connectors, etc. 3. LICENSE.TXT The GNU General Public License User all drivetype ;Set up drive & type xor a call diskop ;Reset the (newly loaded) disk driver ld hl,auxinz call setup ;Port setups: aux. port ld a,8 ;Set up parallel (printer) port out0 (cport),a ;INIT\ low ld bc,0010h iz1: djnz iz1 dec c ;Long pause jr nz,iz1 ld a,0ch out0 (cport),a ;INIT\ high in0 a,(sport) ;Not sure why the PC reads twice, in0 a,(sport) ; if in doubt, do the same :-) xor a ld (46h),a ;For DOS+, no path ld hl,DATECODE ;Sign-on message call putmsg jp gocpm ;To common boot-code ;---------------------------------- setup: ;Output a block to ports ld a,0ffh ilp: ld b,0 ;MS address bits ld c,(hl) ;Output port tst c ;Zero will halt (A & C) ret z inc hl ;Else, point to data outi ;Sent, alters B jr ilp auxinz: ;Setup table for aux. port db _LCR, 80h ;Select divisor db _DDL, 0ch ;9600 bps db _DLM, 0 ;Divisor MSB db _LCR, 03h ;8 bits, 1 stop, no parity db _IER, 0 ;No interrupts db _MCR, 03h ;DTR, RTS active db 0 ;End ;---------------------------------------------------------- DATECODE: db ascicr,ascilf,'BIOS built 08-Mar-1997' db ascicr,ascilf,0 org endlocaldata end isor MSB db _LCR, 03h ;8 bits, 1 stop, no parity db _IER, 0 ;No interrupts db, & make setups Memory chips may be fitted in several combinations. The only rule is that if 2 RAMs are used, both must be of the same size. The code will attempt to "phantom" the ROM into low RAM. This requires: 1. RAM is available at physical address 00000 2. Not less than 256kB of RAM are fitted The setup follows this decision table: Chips fitted Address responses RAM valid at RAM Bounds U2 U3 A19 A18 A17 A16 A15 F0000 08000 Low High -------------------------------------------------------------------- -- -- x x x x x N N No RAM: Halt 32kB -- x x x x 0 Y N 00 07 -- 32kB x x x x 1 N Y 08 0F 32kB 32kB x x x x - Y Y 00 0F 128kB -- x x 0 - - N Y 00 1F -- 128kB x x 1 - - Y N 20 3F 128kB 128kB x x - - - Y Y 00 3F 512kB -- 0 - - - - N Y 00 7F -- 512kB 1 - - - - Y N 80 FF 512kB 512kB - - - - - Y Y 00 FF ROM (32kB) 0 0 0 0 0 (selected by ROMBR decoder) where "x" = address-bit not decoded (addresses will wrap) and "-" = a fully decoded address bit. The test starts by marking all addresses as valid-RAM (the ROM will override in its area). Then test for RAM at 2 addresses (see above): F0000 and 08000. This indicates if any RAM is present at all (!), and whether it extends down to address 00000. The detailed test is then copied into RAM (since we now know the address of at least 1 block), and executed there, with the ROM disabled. The lowest and highest valid RAM addresses are determined, and set up in the CPU's hardware decoder. Finally, if RAM extends over at least 00000-7FFFF, the ROM is copied to low RAM, and "phantom-ed" there, to speed up processing (since RAM is faster). As this routine starts, there is no memory set up, so no stack. Map registers affected:- Register Locn Start value Exit value CBAR 3A C8 88 BBR 39 00 Point into RAM as found CBR 38 00 ditto RAMLBR E7 00 Low RAM bound RAMUBR E6 FF High RAM bound SCR EF 60 (typ.) Bit-3 set if ROM shadowed Finally, the RAM will be relocated up the 1MB space, if 1. Physical RAM base = 00000, and 2. The ROM is NOT shadowed. This renders accessible the 32kB of RAM that was previously hidden under the ROM, increasing total capacity. Call this routine using the XCALL IY,MEMSETUP macro, since no stack is available at the time of the call (this routine will define one). The final setup will (assuming 64kB or more RAM) put the 3 areas thus: CA0 Logical 0000-7FFF ROM BA Logical 8000-BFFF RAM: base+(8000-BFFF) CA1 Logical C000-FFFF RAM: base+(C000-FFFF) This setup is "MP/M ready", in that it is only necessary to change CBAR from C8 (the value set by MEMSETUP), to C0, in order to replace the ROM (or its phantom equivalent) by user RAM space. To select different user areas, just change BBR to point to another 48kB "page", anywhere in RAM above the 64kB base-user area. So BBR = CBR, or >= CBR+10H. ----------------------------------------------------------------------- R E V I S I O N H I S T O R Y 17-05-96 Initial version 07-07-96 Correct handling of phantom-ROM setups 08-03-97 Don't speed-up CPU for phantoms (leave to clock-test later) $ Z80182 equ 0 include Z180.INC include MACROS.INC .radix 16 .sall cseg global memsetup reloc macro reg ;Adjust CPU reg.: incr. in B in0 a,(reg) add a,b out0 (reg),a endm relocn equ 40 ;RAM relocation factor (* 4kB) memsetup: xor a out0 (ramlbr),a ld a,-1 out0 (ramubr),a ;Be sure RAM is valid everywhere ld de,0 ld a,0F0 xcall ix,xismem ;See if this is RAM jr nz,mx1 ld e,0F0 ;Yes... mx1: ld a,8 xcall ix,xismem jr nz,mx2 ld d,8 mx2: ld a,d or e ;One must have worked jr nz,mx3 halt ;No RAM in the system! mx3: ld a,d and a ;Is D valid jr nz,mx4 ld a,e ;Then E is mx4: sub 8 ;Adjust for bank base =8000 out0 (bbr),a ;Bank: 8000 logical -> 08000/F0000 ex af,af' ;Save BBR for later ld hl,memrtn ;Clear of the bottom, in new space ld sp,hl ;Define a stack ex de,hl ld hl,xmbase ld bc,memrsze ldir ;Copy slave routine into RAM ld hl,0 ld bc,8000 ;Compute ROM checksum xor a mx5: add a,(hl) cpi ;HL++, BC--, set P/V jp pe,mx5 call memrtn ;Go run it (checksum in A) ; Now assign the RAM bounds as determined by the call. ;They must not be set earlier, as this may (temporarily) ;render the RAM inaccessible (the ROM overlays). If this ;happens while we are executing from RAM: disaster! out0 (ramlbr),d out0 (ramubr),e ;Physical RAM extent in0 a,(ramlbr) and a ;RAM present from zero? jr nz,mx6 ;No relocn. otherwise in0 a,(scr) bit 3,a ;Nor if ROM is shadowed jr nz,mx6 ld b,relocn ;OK: relocate the RAM reloprogram ROM_burner; { ;=======================================================================; ; ; ; D-X Designs Pty. Ltd. Perth, Western Australia ; ; Project: 112 May, 1996 ; ; ; ; Copyright (C) 1996 David R. Brooks ; ; ; ; This program is free software; you can redistribute it and/or ; ; modify it under the terms of the GNU General Public License ; ; as published by the Free Software Foundation; either version 2 ; ; of the License, or (at your option) any later version. ; ; ; ; This program is distributed in the hope that it will be useful, ; ; but WITHOUT ANY WARRANTY; without even the implied warranty of ; ; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ; ; GNU General Public License for more details. ; ; ; ; You should have received a copy of the GNU General Public License ; ; along with this program; if not, write to the Free Software ; ; Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. ; ; ; ;=======================================================================; This program will read an Intel hex-format file, and program the system ROM at U4. IF YOU MIS-PROGRAM THIS PART, YOUR SYSTEM MAY BECOME UNUSABLE! The program operates by momentarily re-enabling the ROM, baking an access, and disabling ROM again. The ROM code must therefore lie above 8000H, so as no to be itself overlaid by the ROM. In Turbo-Pascal, the only way to guarantee this is to copy the code onto the Stack, and run there. Program for use with Intel 28F256A Flash ROMs ONLY. --------------------------------------------------- } type cblock = array[0..29] of byte; rombuf = array[0..32767] of byte; rbp = ^rombuf; var rbptr : rbp; buff : string[120]; {Input-line buffer} inf : text; {The data file} lobound, hibound : integer; {Programming span} neederase : boolean; {ROM must be erased} {=========== I/O HELPER FUNCTIONS ===================} function hexdig(x :char) :integer; {ASCII -> hex.} begin case x of '0'..'9' : hexdig:= ord(x) - ord('0'); 'A'..'F' : hexdig:= ord(x) - ord('A') +10; 'a'..'f' : hexdig:= ord(x) - ord('a') +10; else hexdig:= -1; end end; function hexbyte(ptr :integer) :byte; {ASCII to byte} var a , b :integer; begin a:=hexdig(buff[ptr]); b:=hexdig(buff[ptr+1]); if ((a or b) and $8000) <> 0 then begin writeln('Bad hex. value in line:'); writeln(buff); writeln('Aborting'); halt; end else hexbyte:= (a*16 + b) and $FF; end; procedure hexout(x :integer); {Output X in hex.} {NB the 8-bit version of Turbo is not properly recursive. The classical recursive radix converter does not work...} const xchr : string[16] = '0123456789ABCDEF'; begin write(xchr[(x div $1000)+1]); x:= x mod $1000; write(xchr[(x div $100)+1]); x:= x mod $100; write(xchr[(x div $10)+1]); x:= x mod $10; write(xchr[x+1]); end; {=============== PROGRAMMING SWITCH ===================} procedure vppon; {Turn on 12V programming voltage} begin inline ($F3); {DI} inline ($ED); inline ($38); inline ($EE); {IN0 A,(EE)} inline ($CB); inline ($AF); {RES 5,A} inline ($ED); inline ($39); inline ($EE); {OUT0 (EE),A} inline ($FB); {EI} delay(100); {Pause for Vpp to build up} end; procedure vppoff; {Turn off programming voltage} begin inline ($F3); {DI} inline ($ED); inline ($38); inline ($EE); {IN0 A,(EE)} inline ($CB); inline ($EF); {SET 5,A} inline ($ED); inline ($39); inline ($EE); {OUT0 (EE),A} inline ($FB); {EI} end; {========== INTEL PROGRAMMING ALGORITHMS ===================} function rom(addr, outval :integer) :byte; external $38; function QuickPulse (zero :boolean) :boolean; {Programming function: does every thing necessary. ZERO, if true, forces it to program $00, else data from buffer. Data bytes of $FF are skipped: this is the erased value} var plscnt, {Retry count} wait, {For time delays} ptr : integer; {Address pointer} idata, data : byte; label OK, QUIT; begin QuickPulse:= false; for ptr:= 0 to 32767 do begin if zero then idata:= 0 else idata:= rbptr^[ptr]; if idata <> $FF then begin for plscnt:= 0 to 25 do begin data:= ROM(0,$40); {"Setup program"} data:= ROM(ptr,idata); {Program data} for wait:= 1 to 10 do ; {Pause 10uS nominal} data:= ROM(0,$C0); {"Program Verify"} for wait:= 1 to 6 do ; {Pause 6uS nominal} data:= ROM(ptr,-1); {Read data} if data = idata then goto OK; end; goto QUIT; {Retries exhausted: exit FALSE} end; OK: end; data:= ROM(0, 0); {Normal read mode} QuickPulse:= true; {Successful} QUIT: end; {End of QuickPulse} function QuickErase :boolean; {Erase algorithm} var data : byte; ptr, plscnt, wait : integer; label NEXT, QUIT; begin QuickErase:= false; data:= 0; for ptr:= 0 to 32767 do data:= data or ROM(ptr,-1); if data<>0 then begin {Must start all zeros} if not QuickPulse(true) then goto QUIT; end; for plscnt:= 0 to 1000 do begin data:= ROM(0,$20); {Erase setup} data:= ROM(0,$20); {Erase command} delay(50); {10mS at 16MHz} for ptr:= 0 to 32767 do begin data:= ROM(ptr,$A0); {Erase verify} for wait:= 1 to 6 do ; {Pause 6uS} data:= ROM(ptr, -1); {Read back} if data<>$FF then goto NEXT; end; data:= ROM(0,0); {All OK: set to READ} QuickErase:= true; goto QUIT; NEXT: end; {Next retry attempt} QUIT: end; {End of QuickErase} {================ DATA-FILE MANAGEMENT =====================} procedure limits(addr :integer); {Set up address limits} begin if (addr and $8000) <> 0 then begin writeln('Address out of range: > 8000H'); halt; end; if lobound > addr then lobound:= addr; if hibound < addr then hibound:= addr; end; procedure checkfile; {Test the data file} var addr, ctr, ptr : integer; sum : byte; procedure fatal; begin writeln('Bad format in data line: aborting'); writeln(buff); halt; end; begin lobound:= $7FFF; hibound:= 0; while not eof(inf) do begin readln(inf,buff); if buff[1] <> ':' then fatal; sum := 0; ptr:= 2; for ctr:= 1 to hexbyte(2)+5 do begin sum := sum + hexbyte(ptr); ptr:= ptr+2; end; if sum <> 0 then fatal; addr:= (hexbyte(4) shl 8) + hexbyte(6); if hexbyte(8) = 0 then begin limits(addr); limits(addr+hexbyte(2)); ptr:= 10; ctr:= hexbyte(2); while ctr > 0 do begin rbptr^[addr]:= hexbyte(ptr); addr:= addr+1; ptr:= ptr+2; ctr:= ctr-1; end end end; write('Programming from: '); hexout(lobound); write(' to: '); hexout(hibound); writeln; end; {================= PROGRAMMING FUNCTIONS PROPER ==============} procedure doit; {Must put in here, so variables are stacked} {Routine which MUST be executed in high memory: moved up} const romhook : cblock = ( $FD, $E1, {POP IY} $C1, {POP BC} $E1, {POP HL} $F3, {DI} $3E, $C8, {LD A,C8 - ROM on} $ED, $39, $3A, {OUT0 (3A),A} $79, {LD A,C} $A0, {AND B} $FE, $FF, {CP FF} $20, $05, {JP NZ,POKE} $6E, {LD L,(HL)} $26, $00, {LD H,0} $18, $01, {JR EXIT} {POKE:} $71, {LD (HL),C} {EXIT:} $3E, $C0, {LD A,C0 - ROM off} $ED, $39, $3A, {OUT0 (3A),A} $FB, {EI} $FD, $E9 ); {JP (IY)} var romfunc : cblock; ct : integer; function fixhook(var code :cblock) :integer; {Sets up jump vector} begin inline ($22); inline ($39); inline ($00); {LD (39),HL} inline ($3E); inline ($C3); {LD A,C3} inline ($32); inline ($38); inline ($00); {LD (38),A} inline ($C9); {RET} end; {Returns relocation addr. as integer} function checkrom : boolean; {ROM blank in this area?} var adr : integer; test : byte; begin test:= $ff; for adr:= lobound to hibound do test:= test and rom(adr, -1); checkrom:= test = $ff; end; var ibf : string[10]; scrap, mfr, part : byte; temp : integer; begin {Code -> high memory} for ct:= 0 to 29 do romfunc[ct]:= romhook[ct]; temp:= fixhook(romfunc); {Set up 38H as despatcher} { writeln('Hook addr '); hexout((temp shr 8) and 255); hexout(temp and 255); writeln; } if (temp and $8000) = 0 then begin writeln('Unable to relocate code above 8000H: aborting'); halt; end; new(rbptr); {Allocate buffer for new data} for temp:= 0 to 32767 do rbptr^[temp]:= $ff; {Clear it} checkfile; {Read & check data file} writeln('Checking existing ROM content'); writeln; if checkrom then begin writeln('This data will be written to a currently blank ROM area.'); writeln('Existing ROM data will not be erased.'); neederase:= false; end else begin writeln('WARNING! WARNING! WARNING!'); writeln; writeln('The System ROM is about to be erased and re-programmed.'); writeln('Any interruption of this process, or use of invalid data,'); writeln(' will render your system inoperable.'); neederase:= true; end; writeln; write('Are you ABSOLUTELY SURE you want to continue (Y/N): '); readln(ibf); if upcase(ibf[1]) <> 'Y' then halt; writeln('Commencing programming - DO NOT INTERRUPT!'); writeln; vppon; writeln('Vpp generator enabled'); scrap := rom(0, $90); {Command: read part ID} mfr := rom(0, -1); part := rom(1, -1); scrap := rom(0, 0); {Normal read mode} if ((mfr = $89) and (part = $B9)) then begin writeln('Intel 28F256A part identified'); end else writeln('Incorrect ROM part: cannot program'); if neederase then begin writeln('Erasing ROM...'); if not QuickErase then begin writeln('ROM faulty: could not erase'); halt; end else writeln('ROM erased successfully'); end; writeln('Programming ROM...'); if not QuickPulse(false) then begin writeln('ROM faulty: could not program'); halt; end else writeln('ROM programmed successfully'); vppoff; writeln('Vpp generator disabled'); { dispose(rbptr); } end; {End of DOIT} {============== MAINLINE & HELPERS =================} const cmtail = $80; type argt = string[32]; function paramcount : integer; var ct, ctr : integer; cmd : ^char; last : char; begin ct := 0; ctr := 1; last := ' '; cmd := ptr(cmtail+ctr); while ord(cmd^) <> 0 do begin if ((last = ' ') and (cmd^ <> ' ')) then ct:= ct+1; last := cmd^; ctr := ctr+1; cmd := ptr(cmtail+ctr); end; paramcount := ct; end; function paramstr(i : integer) : argt; var local : argt; last : char; ct, ctr : integer; cmd : ^char; label got, exit; begin ct := 0; ctr:= 1; last := ' '; local := ''; cmd:= ptr(cmtail+ctr); while ord(cmd^) <> 0 do begin if ((last = ' ') and (cmd^ <> ' ')) then begin ct:= ct+1; if ct = i then goto got; end; last := cmd^; ctr:= ctr+1; cmd:= ptr(cmtail+ctr); end; goto exit; got: while ((ord(cmd^) <> 0) and (cmd^ <> ' ')) do begin local := local + cmd^; ctr:= ctr+1; cmd:= ptr(cmtail+ctr); end; exit: paramstr:= local; end; begin writeln('P112 System-ROM reprogrammer'); writeln('For Intel 28F256A parts ONLY!'); writeln; if paramcount <> 1 then begin writeln('Usage: ROM '); halt; end; buff := paramstr(1); if pos('.',buff) = 0 then buff:= buff + '.HEX'; assign(inf,buff); reset(inf); {Ready to read data file} writeln('Reading & verifying data file: ',buff); doit; {Inner routine: make sure everything's stacked} close(inf); end. ONLY!'); writeln; if paramcount <> 1 then begin writeln('Usage: ROM '); halt; end;ÃÉÍ«Copyright (C) 1984 BORLAND Inc‚AM-102 120/Apple CP/MP[1;1k~·7È#õå~Íáñ=ÈóÍ% ÉÅÕåÝåýåõo&åͦñýáÝááÑÁÉoåͦÉþ€Ü�Ô©æîÅÕåÝåýåÍ£}Ùå!å!"8áãõÅÕ~#·(åÍáôÑÁñãÉ}´È:$‡‡‡ããããÅÒÁ= ô+èÍÐØ*ÎßõÅÕå!¨ÍZ!¢ÍÐ*ºÔBáÑÁñÉõÅÕå!´éõÅÕå!®àõ:¼·(ÅÕå=2¼!ÈÍZáÑÁñÉõ:¼· ÷ÅÕå<2¼!ÂåõÅÕå!¼ÛõÅÕååð!‹í°Ñ:žO:œ‚ÕÍÑ:ŸO:�ƒÍ!ðÍÐ* ÍBáÑÁñÉ!ð ë!›45(É!.+/ –0ü†õyþ0(ñíÉ d!kÃZ!{ÃZ͈æ͈o&Éô  áÁå:á·(yþ ÕÅÍ |µ(Íþ ÍþÊÅÁÑ*é"ÛÕx2áy·( >Ã28!?"9!É í°!á¸í°áí°>2گà Ã:ÃDÃ]ÃSÃXÃNÃ]ÃDÿ í[Ûþ (ú!eÍ}Í„þA8þQ0Gþ: xÖ@¯!\w# ( þ  ÍyÍVþ. ÍV!h6#ûÉ (þ*(þ.(þ!8þ}(þ*(Í„w#ßÉ>?> w#üÉþaØþ{ÐÖ É|Í’}õÍ›ñæÆ�'Î@'Ãè¯7Ë|À|·}È>ÿÉ"ÍíCß"í6#ûëÑùü "Ïë"ÕÍ�Í©éå*Ï·íB"Ïí[Í·íRëáÚ5í°É*Ïí°"ÏÙÉ^#V#Õ^#V#N#FáÉÝáëO/o&ÿ9ùëí°ÝéÑO/o&ÿ9ùëí°éÝáë!àÿ9ùëÅ(¯üí°Á> �‘(G¯üÝéÝá!àÿ9ù ¯w#üÝéÝáEÍŠ¶wÝéÝáÑ}“8÷�Ãu·íR·íB0 É>‘î·íRëê@ðøÉÕë·íRëáë·íR!È+Éͨ õÍz ð·íR!À+Éͨ õÍz ðÍ<!Ð+Éͨ õÍz ðÍ<!ÈØ+Éͨ ôÍz ïÍ<!ÈØ#Éͨ ôÍz ïÍ<!Ø+Éͨ õÍz ðT]KBë!z·> S>)ë)ë0 = öÉ|ªõÍJëÍJëDM¯go>íjíB0 7?ËË= ðëñðHåÍ\Ë<ËÑëÍÞëËzÈ5Í+È)ýÉÍ+ÈË<ËúÉëz· {þ0G·É¯goÉë|ª|úHºÀ}»ÉÉË|È|/g}/o#É}æo&ÉíKÓí[ÑÅÕxAJSËËËËáëáíJDM!éb"Ñë!6íJ"ÓDMÉ'ͬèͬdͬ ͬ} ¯<íR0û= ÈÆ0ÝwÝ#ÉÝ~Ö$O! Ý#Ý~Í„Ö08)þ 8 !Öþ 8þ0T])Ø)Ø T]Ø)Ø_ØËy·È|‡ÉÝááå}&#9N�8wë!DíB9ùëåí°ëá+Oí¸ë#ùÝé>ÃwÝáͦWáͧ _áå}“8(º8J`9{‚T]=o`9yí¸ë ¯ÃwÍÖ Ð>ÃuÍJ õÍuÍ` íÙ}·Ù>(è; àÙËxÙÂQ Ù}·ÙÈÙÅÕåÙ}· Ù˸TÅËø¯ÙËø}Ù•(0íD=ÙÍC ,= ù(Ùñæ€ Í[ 0%ÍD ·, 7 Í� ?õ(8ÙÍu Ëx ÍO - öÍ; ñ8˸·ÙáÑÁÙÉÙËxÙÂÝ ÍX ÍÝ Ø,-Èxî€GÉÙ}·ÙÊ; }·ÈÙ…ÙÍ ÅÕåÝ9Í; Ù.Ù>Ý#ÝnË0Í[ ÍD = ñÙ-Ù åÝnûËx ÍP ,-(-ñññ·ñÙÁáÙÝá˸°G,-Ì; É}·ÈÙ•Ù?Í åååÝ9Ù.Ù>Í� 8Íu ?Ë= ÝuÝ+Ù-Ù(>ÍO 0ßÍu ·áÍO 8Í� ?áÑÁËx ÍP š, —7•8Æ€8Æ€8oÝãÙåÅxËøÙ¨æ€õËøÝåÝ!ÉáØ¯oGOW_gÉ·ËËËËËÉ·ËËËËËÉ|Ù„Ùg{Ù‹Ù_zÙŠÙWyÙ‰ÙOxÙˆÙGÉ|Ù”Ùg{Ù›Ù_zÙšÙWyÙ™ÙOxÙ˜ÙGÉxÙ¸ÙÀyÙ¹ÙÀzÙºÙÀ{Ù»ÙÀ|Ù¼ÙÉÙxÙ¨ò² xÉËx(ͼ È?É}Ù½ÙÀ·ÈÃ� }Ö�Ú; <þ(ÐÙÅÕåÍ; 7ÍD = ùÙ|Ù¤Ùg{Ù£Ù_zÙ¢ÙWyÙ¡ÙOxÙ ÙGÃD ÙÅÕåÙÍuÙÍÆ ÙÍJ ë}·ÈËx>ÂuÍu}Æ€Ë/Æ€oÖõÙÅÕå; ÍÖ -ÅÕåÍJ }áÑÁÙáÑÁã¼ã0ãñÙÉÙÍW-ÍJ ÙÍW,Ù}þlØÅ˸ͨ Á8 ; Íý Í` Ëx(ÍÖ Ù-Ùͨ õ8ÍJ Ù-Ùͨ 8Ù,ÍJ }þl8;Ùª*ªª!ªÍ` ÝåÝ!Ð >ÍýÝáÍuÍ` Í` ÅÕåÙÍu--Ù-ÍÖ ÙáÑÁÙÍJ ,,ñ,-ÈØxî€GÉgª?+2×n¶*ï8t Ð Ðzˆˆˆˆ~«ªªªª,->ÊuËxÂuÙÍaÙ}.�•õ; ÙÍOÙÍJ ÅÕåÙ,ÍÖ ÙáÑÁ; ÝåÝ!U >ÍýÝá,ÙÍk-ÙÍÖ ñÅÕåo&0%ÍÑÙ,Í` ÙáÑÁÍÖ }þgÚ; É}Š�؉}颋.:}Žã8Žc~I’$I~ÍÌÌÌL«ªªª*ÙÍkÙ·Ëxõ˸; }þˆ0GÅÕå,Í™åË<Ë}áõÍÑ,-(-ÙñáÑÁõÍJ ÝåÝ!Ù >ÍÝáñ0 õÙÍaÙÍ` ñ…o8 ñÈÙÍOþ á>Ãum.`1pF,þåt6|‰„!wS<ÿÃ.zÒ}[•|%¸FXc~üïýu€Ò÷r1}·ÈÝåÙÍOÙ¯Ëx(<˸õͨ 8Ù; ñËÿõÙÏŽé!~JÙͨ 0Í÷OÝ!—>ÙÝÍ<Ùͨ 8 = ìÙ ÝÙÙÍ7ËøÍÖ ÅÕåÍ<Í` ÙÍOÍÖ ÙáÑÁ; ÝåÍ÷ÝáÙÍ7ÍÖ ñ0 õÙÍW-ÍJ ñÝáËOÈËøÉçÏÌTöô¢0 jÁ‘ €µžŠoD€‚,:Í€jÁ‘ �€!¢ÚI}袋.º}Žã8Žc~I’$I’~ÍÌÌÌL«ªªªªÝ!Ó>ÅÕåõÍuÍ` ñÍÙáÑÁÃ` õÙÍ7õÙÅÕåÍ7ÍÖ ÙáÑÁÙÍ` ñ= éÙÍOÃÖ ÝÝnÝfÝ^ÝVÝNÝFÉ!�DLT\ÉI¢Ú!‚!É53ó!�úÉr1÷!€ÒÉÅÕåÙáÑÁÉÍ\!€> Ëx Ë#ËËË-= ðo˸ÉËxÙÍO(Ëø-ÍÖ ·Ë}(ËxËø>�½8(ÍC ,óÍC `iÈÃM!É>’Ãu|µÊ; Ë|ÍJ>�Ë| )=Ë|(úDMboÀ˸Éͦë8þ8ͦÙËxÙ(’0¯þ 8> ÕÍMÑËx(>-ͲË{(aËy(Ͱͦ ò\z·(>.Ͳ (Ͱ ÷ú~ͦ÷Ë{È>EͲ>+Ë|(|íDg>-Ͳ|/Ö 0ûÆ:ÝpÝ# ý~ý#· ý+>0ÝwÝ#Éýå,-  ý60ý#ø¯ÃJÅ˸}ÙÖ€oŸgMÍÄ|þÙ <ýwíDÍ }þ�0Í€ý5Ëø>„•.(ÍC Ë= øý~õ> xæÆ0ýwý#xæGÅÕåË%ÍP Ë%ÍP ëãÑãíZëáãíJDMáË%ÍP = ÈñÁýáÉýåá_~6þ5Øúi+~¨¥Ôh¶¿ÉìÅëx-ÐÍÎÂSÞùx9?ë+¨­ÅøÉ{Η@}·ÈËøÅÕ|ÍC ÍC „gãíZëáãíJDMá0ÍD ,7È}Æo˸ÉÍ ¾ #øyîO!@9ùi&ÝéÍ  ë¶¾ â#÷ÚÍ ¶w#ùëùÝéÍ /¦w#øïÍ ¦w#ùãýáÝá!9ë! E9ýéÝá!!9~·(¯+FÍŠ¦!"9ù!(#Ýé>¯2æýá*ÛͲ¯á"âýå|·>"Ê :æ·( ͆ *â6#wÉÍ÷*â6#6 ë!\$í°É!¶Ååí[Ûþ (úÍ„–( áÁã·É#ëÁÁþ:À~ÉCONTRMKBDLSTAUXUSR>¯2æÍîÍ$*â#~þ ͶÍ$*â:æ·> >w###6ÀÃÖþ þ #6++pÉ>¯2æíSäÍ-Í$Ͷ:Ù·À*â6###ww#w$w#wÖÿ:æ· åÍôá##N#F*ä·íBÈ>�à å¯w#w#í[äs#ráÃó>¯2æÍSÍ$ͶÍ$*â6å ë#Íá-¯Nw#FwÖÿq#p#6€#w#w#wÉÍß*â ë:æ·( ÕÍÑñÅÍÁ<Àxà *â6#ûÉ"â#~+þ 2ËN(>Í’:Ù· *âË^ îËFÈ*âå ëÍá< >ÿ2Ù6É"â~æÈÍŸ*â-¯w#wÕÿw#ÍóÍŸÀ"â~æÈ·ÍÀ ëÍ<À@ýá*ÛͲ¯áýåÍÀåÍ÷áåë!\ í°á åëÍÑ<Ê®!\$í°É>à >¯2æÍÀ*ß|µ>! ë*â \$í°\Í<(Ï!ý€í°:æ· í[1Ã�ÿÕÍ\ÍÑ!€ë·(éf"âÍÂÈ> 2ÙÉ:Ù·ÈñÉÝáÝåå!ÊÍ<áÉÝáÝå"âËF( #~þÀ#6Ãe>Îå!ÊÍ[áÉ"âËNÀ>ë!Ú~þ€8>O6*Û"ÝÍwþ (=þ(&þ("þ(þ :á·(ßÃNþ 8Øyº(Ô~#ÍèÌúx+Í% (½ï6Éå*â#~þáÉÍÂÈÍ[þÈÅÕå*â#~· *Ý~þ(h#"Ýb= Íõþ 8Íèþ ÌáñJ= ÍB== ͯ}8= ͵}/Í­ !*â###å~Æ-_~áþ(4òQ6*âËÖ>™2Ù>*â##wáÑÁÉ:Ù·>Àå*â##~áÉå*â#~þÿ(EÍÌÍ[þ ( þ (þ (þ ÍÖè!]Í[þ (þ (þ (þ(w#(ÍÖãÍÂÌÖ6áÉÝ!]Ý~·Èþ-ÀÝ#É8Ý~·È>7à ëÍ Í[ÃÖÍÖÉ>¯OÅÍkÁͼÈÅåÍÁÑÁÍÎØÌMës #rëÉÍkͼÈÅåÍpÙáÁÍÎØÙÌX ÙáåÍÌÍ[þ ÍÖôÍ[þ (þ( #w(ÍÖêÍÂÌÖáqÉ*â#~þÊáÍ[þ (þÈÍÖñÍ ÍÖþ ÀÃÖ*â##~þÈ6ÉÅÕåÍœáÑÁÉOÍ$*â#~þ(08áÅå·Ê¦=ʦ==Ê©=ʬò+ËÞ###å~Æ-_qá4ð6Í¡È>ðà *æ:è¾È4^qÉ}Ã’ÁÑÅÝ*ÛË|(ÍMëëË|( ÍMÝ6-Ý#ÕÍ�áͦí[ÛÝåá·íRë“8 (G> Í’ùCÈ~Í’#÷ÁÑÙáÑÁÙÅÝ*ÛÕÍôÇÁÑÅͦËC!h Ç!lÀTRUEFALSEͦ!9^#Í(ÑùÕÉá~#·(G~Í’#ùé> Í’> Ã’ "âËF!ÈÍ[¸(þÀ#ÉåÍRë·íRá0Íô*â4À#4É>™Ã åÍR·íR *â4 #4(áÍóÒ>òÜ>¯2çÍ$ë*âËV(/Ë–:ç·(#~+· x· y·ú2ÅÕ!͵ÑÁ( =(þ X:ç·(R*â:ç·(ËÞ###~Æ-Õ_ÑÖ-ÍŒí âX<òN=<ÍŒ*â###æw ÅÕåÍŸáÑÁ Õ*Ñ4 #4x±ÂüëÉ>™>ðà õ:ç·(ëñÉ"âÍŸÈè"*âËÖË^ÈËž*âËVÈË–åÅ0ëÍÁá ëÍ·ÉÁÑíSâÅåÍRÑ·íR8A*â N#F#s#rÍ$ 0}æ)ëíjëS\*â###w* N#Fë·íB ÈÕåÍŸÑár+sÉ>‘à ÕÙáÙ!T]>)ëíjëÙ)Ù0 0= ïÉÍU·íR!À#ÉÍUëÉ*â^#V#ÕN#F#^#VáÉ>">!2çDMÝáÑáÝå"â~æÊóx±(LÅÕÍ*â ë:çOÍÑÁ·(o:çþ" C}=(þ ?ÅÕ*â-N#Fp+qÛÿq#pÑÁ!€ë °*â F+N+++V+^ë·íBÐëq#pÉ>™>ð>à ÁÑíSâÅåÍRÑ·íRÚ*â s#r$ s#rÉ"äíSæëá"â! N#Fë·íB(^x± *â 6#ûí[âÍ<(H*â! íKäq#p##ëíKæÅÕÍí[â!Í· *â! 4 #4Ñ!€ëÁ x± Õ*â$ éÝ*â>ðÃw"òëáã"ô{æü_!í"ëÝ*íÝnÝf}´(HíR0ÝnÝfåÝ"ëÝáã Ý^ÝVÝåMDÝnÝfÝåÝÝuÝtÝqÝpÝåÑ*ës#rÑ*ôs#rÉÝåá"Í*ò ÝåÁ Ú5íKÏíB!Úð>ÿÃuëáã~#fo{æü_ë"ò*íåÝá·íR0RÝnÝfå·íR0ÝáðáÕýáíKòýqýpýuýtÝsÝrÝåáÝNÝFÍÄ( Ý^ÝVÕÝáÝåáÝNÝFÝ^ÝV*ííSíÕÝáÝuÝtíKòÝqÝpë ·íRÀÕýá*Í·íR(ý~Ýwý~Ýwýnýf ÝuÝt¯ÉÝåá"Í6#ûÉÍ *öÉÍ *øÉ!"ö"øÝ*íÝNÝFy°(*ö "ö*ø·íB0íCøÝnÝfåÝáØ*Ïûÿ í[Í·íRØë*ö"ö*ø·íRÐíSøÉí[Ís#rÉ^#VíSÍÉ>¯O"æ¯w2Ùx2è!ê"âá"äá ÍöÍ@*äé>¯2ê"æ!ê"âá"äá"è!\Ͳ¯*è:ê· ÍîÍ!Ù~6·go(Ýåá\íRë*æs#r¯ÿí_2ÔÉëÝáÁáx±( s x±(T]í°ÝéDMÝáÑá·íR0ð ë ëí¸ÝéÑÁÕ-a%ÃÆ}Í„oÉ*é!Ù~6o&ÉÍ |µÈÍ£}þÀÝáÍ%^C User break1:Ù·ÈÝáõÍ% I/OÝáÍ% Run-timeÍ% error Í’Í%, PC=Ýåáí[Õ·íR"×Í�Í% Program aborted*ßé1!Àä¸ÿÍ�!ä/�âͲç.ýáá}2‰ãýå*‰ã&0 ·íR·íBÒ *‰ã&å!0Ñë·íR"ŠãÃt  A·íR·íBÒC *‰ã&å!AÑë·íRå! Ñ"ŠãÃt  a·íR·íBÒn *‰ã&å!aÑë·íRå! Ñ"ŠãÃt !ÿÿ"Šã*ŠãÉýáá"‚ãýå!Aäå*‚ãÑn&åÍç"|ã!Aäå*‚ãå!ÑÑn&åÍç"zã*|ãå*zãÑ|²g}³oå!€Ñ|¢g}£oå!ÑÍaËEÊ&!ÍRÍ�Bad hex. value in line:Í�Íb!AäÍ ÍR!ÍqÍ�ÍbÍRÍ�AbortingÍ�ÍbÍÅÃF!*|ãå!ÑÍÄå*zãÑå!ÿÑ|¢g}£o}2„ã*„ã&ÉÃ`!0123456789ABCDEFýáá"xãýå!O!å*xãå!ÑÍÞå!ÑÑn&ÍRÍòÍb*xãå!ÑÍ"xã!O!å*xãå!ÑÍÞå!ÑÑn&ÍRÍòÍb*xãå!ÑÍ"xã!O!å*xãå!ÑÍÞå!ÑÑn&ÍRÍòÍb*xãå!ÑÍ"xã!O!å*xãå!ÑÑn&ÍRÍòÍbÉóí8î˯í9îû!dÍBÉóí8îËïí9îûÉýáá}2jãýå!}2kã!å!ÿÑÍ5z³ÊE#Õ"`ã*jã&ËEÊk"!}2_ãÃ{"*ºäå*`ãÑn&}2_ã*_ã&å!ÿÑÍaËEÊ<#!å!ÑÍ5z³Ê9#Õ"dã!å!@åÍ8}2^ã*`ãå*_ã&åÍ8}2^ã!å! ÑÍ5z³ÊÞ"Õ"bã*bã#ÑÃÌ"!å!ÀåÍ8}2^ã!å!ÑÍ5z³Ê #Õ"bã*bã#ÑÃø"*`ãå!ÿÿåÍ8}2^ã*^ã&å*_ã&ÑÍNËEÊ0#Ãb#*dã#ÑØ"Ã^#*`ã#ÑÃN"!å!åÍ8}2^ã!}2kãÃf#áÃ[#áÃ<#*kã&É!}2]ã!}2Xã!å!ÿÑÍ5z³Ê³#Õ"Vã*Xã&å*Vãå!ÿÿåÍ8Ñ|²g}³o}2Xã*Vã#ÑÃ…#*Xã&å!ÑÍaËEÊØ#!åÍ3"}îoËEÊØ#ß$!å!èÑÍ5z³ÊŸ$Õ"Tã!å! åÍ8}2Xã!å! åÍ8}2Xã!2ÍB!å!ÿÑÍ5z³Ê}$Õ"Vã*Vãå! åÍ8}2Xã!å!ÑÍ5z³ÊP$Õ"Rã*Rã#ÑÃ>$*Vãå!ÿÿåÍ8}2Xã*Xã&å!ÿÑÍaËEÊt$æ$*Vã#ÑÃ$!å!åÍ8}2Xã!}2]ãâ$*Tã#ÑÃã#ê$áß$áÖ$*]ã&Éýáá"Pãýå*Pãå!€Ñ|¢g}£oå!ÑÍaËEÊ%ÍRÍ�Address out of range: > 8000HÍ�ÍbÍÅ*�ãå*PãÑÍ›ËEÊ%*Pã"�ã*�ãå*PãÑͯËEÊ,%*Pã"�ãÉÃw%ÍRÍ�!Bad format in data line: abortingÍ�Íb!AäÍ ÍR!ÍqÍ�ÍbÍÅÉ!ÿ"�ã!"�ã!‘ãÍ�}îoËEÊÓ&!‘ãÍ8!AäxÍ.Í_Íb!Aäå!Ñn&å!:ÑÍaËEÊÂ%Í0%!}2Aã!"Bã!å!åÍx å!ÑÑÍ5z³Ê&Õ"Dã*Aã&å*BãåÍx Ñ}2Aã*Bãå!Ñ"Bã*Dã#ÑÃä%*Aã&å!ÑÍaËEÊ*&Í0%!åÍx å!ÑÍå!åÍx Ñ"Fã!åÍx å!ÑÍNËEÊÐ&*FãåͰ$*Fãå!åÍx ÑåͰ$! "Bã!åÍx "Dã*Dãå!ÑÍ›ËEÊÐ&*ºäå*FãÑå*BãåÍx ëás*Fãå!Ñ"Fã*Bãå!Ñ"Bã*Dãå!Ñë·íR"DãÂ&Ã%ÍRÍ�Programming from: Íb*�ãåÍL!ÍRÍ� to: Íb*�ãåÍL!ÍRÍ�ÍbÉã'ýáÁáó>Èí9:y þÿ n&q>Àí9:ûýéýáá"ãýå"9>Ã28É*ãÉ!ÿ}2 ã*�ãå*�ãÑÍ5z³ÊŒ'Õ" ã* ã&å* ãå!ÿÿåÍ8Ñ|¢g}£o}2 ã* ã#ÑÃ^'* ã&å!ÿÑÍN}2ã*ã&É!å!ÑÍ5z³ÊÙ'Õ"ã!ãå*ãÑå!'å*ãÑn&ëás*ã#Ñî'!ãåÍ7'"ùâ*ùâå!€Ñ|¢g}£oå!ÑÍNËEÊ;(ÍRÍ�-Unable to relocate code above 8000H: abortingÍ�ÍbÍÅ!ºäå!€Í¥!å!ÿÑÍ5z³Êr(Õ"ùâ*ºäå*ùâÑå!ÿëás*ùâ#ÑÃP(Í-%ÍRÍ�Checking existing ROM contentÍ�ÍbÍRÍ�ÍbÍL'ËEÊ1)ÍRÍ�8This data will be written to a currently blank ROM area.Í�ÍbÍRÍ�%Existing ROM data will not be erased.Í�Íb!}2ŒãÃ%*ÍRÍ�WARNING! WARNING! WARNING!Í�ÍbÍRÍ�ÍbÍRÍ�7The System ROM is about to be erased and re-programmed.Í�ÍbÍRÍ�9Any interruption of this process, or use of invalid data,Í�ÍbÍRÍ�$ will render your system inoperable.Í�Íb!}2ŒãÍRÍ�ÍbÍRÍ�4Are you ABSOLUTELY SURE you want to continue (Y/N): Íb!þâÍ+ Í.Í_Íb!þâå!Ñn&Í(å!YÑÍaËEÊœ*ÍÅÍRÍ�*Commencing programming - DO NOT INTERRUPT!Í�ÍbÍRÍ�ÍbÍ"ÍRÍ�Vpp generator enabledÍ�Íb!å!�åÍ8}2ýâ!å!ÿÿåÍ8}2üâ!å!ÿÿåÍ8}2ûâ!å!åÍ8}2ýâ*üâ&å!‰ÑÍNå*ûâ&å!¹ÑÍNÑ}£oËEÊŽ+ÍRÍ�Intel 28F256A part identifiedÍ�Íbý+ÍRÍ�"Incorrect ROM part: cannot programÍ�Íb*Œã&ËEÊ@,ÍRÍ�Erasing ROM...Í�ÍbÍl#}îoËEÊ,ÍRÍ�ROM faulty: could not eraseÍ�ÍbÍÅÃ@,ÍRÍ�ROM erased successfullyÍ�ÍbÍRÍ�Programming ROM...Í�Íb!åÍ3"}îoËEÊŸ,ÍRÍ�ROM faulty: could not programÍ�ÍbÍÅÃÇ,ÍRÍ�ROM programmed successfullyÍ�ÍbÍ("ÍRÍ�Vpp generator disabledÍ�ÍbÉ!"ñâ!"ïâ! }2ìâ!€å*ïâÑ"íâ*íân&å!ÑÍaËEÊv-*ìâ&å! ÑÍNå*íân&å! ÑÍaÑ}£oËEÊQ-*ñâå!Ñ"ñâ*íân&}2ìâ*ïâå!Ñ"ïâ!€å*ïâÑ"íâà -*ñâ"÷â*÷âÉýáá"Éâýå!"¡â!"Ÿâ! }2£âÍ !¤âͲ!€å*ŸâÑ"�â*�ân&å!ÑÍaËEÊ/.*£â&å! ÑÍNå*�ân&å! ÑÍaÑ}£oËEÊ .*¡âå!Ñ"¡â*¡âå*ÉâÑÍNËEÊ .Ã2.*�ân&}2£â*Ÿâå!Ñ"Ÿâ!€å*ŸâÑ"�âó-ÃŽ.*�ân&å!ÑÍaå*�ân&å! ÑÍaÑ}£oËEÊŽ.!¤âÍ *�ân&e.åÍ !¤âͲ*Ÿâå!Ñ"Ÿâ!€å*ŸâÑ"�âÃ2.!¤âÍ  !ËâͲýá!ËâÍ ýåÉÍRÍ�P112 System-ROM reprogrammerÍ�ÍbÍRÍ�For Intel 28F256A parts ONLY!Í�ÍbÍRÍ�ÍbÍî,å!ÑÍaËEÊ?/ÍRÍ�Usage: ROM Í�ÍbÍÅ!åÍ€-x!AäͲ!.e.å!AäÍ Í|å!ÑÍNËEÊ„/!AäÍ Í.HEXÍx!AäͲ!‘ãå!AäÍ Í<Íb!‘ãÍÏÍbÍRÍ�Reading & verifying data file: !AäÍ !ÍqÍ�ÍbÍ'!‘ãÍîÍbÃÅNËEÊN!AäÍ Í.HEXÍx!ANËEÊ .Ã2.*�ân&}2£â*Ÿâå!Ñ"Ÿâ!€å*ŸâÑ"�âó-ÃŽ.*�ân&å!ÑÍaå*�ân&å! ÑÍaÑ}£oËEÊŽ.!¤âÍ *�ân&e.åÍ !¤âͲ*Ÿâå!Ñ"Ÿâ!€å*ŸâÑ"�âÃ2.!¤âÍ  !ËâͲýá!ËâÍ ýåÉÍRÍ�P112 System-ROM reprogrammerÍ�ÍbÍRÍ�For Intel 28F256A parts ONLY!Í�ÍbÍRÍ�c ramubr reloc ramlbr ; Now, set the base of CA1 for the RAM. If 64kB or more, set up logical ;addr. 0000 -> CA1. If only 32kB, set logical 8000 -> CA1, since ROM ;cannot run otherwise. BA is set similarly. mx6: ld c,0 ;Adjustment in0 b,(ramlbr) in0 a,(ramubr) sub b ;RAM range available cp 8 ;More than 32kB? jr nc,mx7 ld c,8 mx7: ld a,b ;ie RAMLBR sub c ;Adjust base if only 32kB in0 c,(scr) ;Is the ROM shadowed to 1st 32kB of RAM? bit 3,c jr z,mx8 add a,8 ;If so, locate user RAM above it mx8: out0 (cbr),a ;CA1 base value out0 (bbr),a ;Bank Area ditto ld a,0C8h ;0000-7FFF = CA0: ROM out0 (cbar),a ;8000-BFFF = BA: RAM ;C000-FFFF = CA1: RAM xretn iy ;Back (called without stack) ;----------------------------------------------------------- xmbase equ $ ;Base of moving code xismem equ $+3 ;Addr. of ISMEM, locally .phase 8200 memrtn: jp mstart ;Hook the main routine ismem: exx ld b,a ;Save A (without stack) ld hl,0C000 sub 0c ;Adjust for CB1 base out0 (cbr),a ld a,55 ld (hl),a ;Write to "RAM" cp (hl) ;Correct? jr nz,ism1 cpl ld (hl),a ;Try a new pattern cp (hl) ism1: ld a,b ;Recover A, leave F exx xretn ix mbase: db 00, 08, 20, 80 ,-1 ;Putative base addresses mstart: push af ;Save ROM checksum push iy ;Save IY (incoming "link") in0 a,(scr) set 3,a out0 (scr),a ;ROM turned off ld iy,mbase ms2: ld a,(iy) inc iy cp -1 jr nz,ms1 halt ;Unable to locate RAM base ;Scan memory, looking for an address "wrap-around", as ; we hit the un-decoded high address bits. ms1: xcall ix,ismem jr nz,ms2 ;Physical base pop iy ;Restore IY (main "link") ld d,a ;Make 2 copies: fixed base ld e,a ; moving ptr. sub 0C ;Offset adjust out0 (cbr),a ld hl,0C000 ;Base of CA1 ld (hl),55 ;Test pattern at base ms4: ld a,8 add a,e ;Next 32kB block ld e,a jr c,ms3 ;Oflo from top of 1MB xcall ix,ismem ;Is there RAM here? jr nz,ms3 ;Out if not, else... ld (hl),0 ;Try to overwrite the base ld a,d sub 0C ;To fixed base out0 (cbr),a ld a,(hl) cp 55 ;Signature still there? jr z,ms4 ;Yes: repeat ms3: dec e ;E points at last good block in0 a,(scr) res 3,a out0 (scr),a ;ROM active again pop ix ;Balance stack in case we jump to MS6 ld a,d and a ;RAM from 00000 (underlays ROM)? jr nz,ms6 ;No: can't shadow ROM ld a,e sub d ;Amount of RAM present cp 3f jr c,ms6 ;Don't shadow if < 256kB of RAM push ix ;Put AF back on stack: this branch ;Copy the ROM into RAM, and finally disable it push de ;Save RAM bounds ld bc,8000 ;Length of ROM block ld hl,0 ;Start address ld d,0 ;Sumcheck for later in0 e,(scr) ms5: res 3,e out0 (scr),e ;ROM active ld a,(hl) ;Get 1 byte set 3,e out0 (scr),e ;RAM on, now ld (hl),a ;Copy out add a,d ld d,a ;Accumulate checksum cpi ;HL++, BC--, set P/V bit jp pe,ms5 ;Loop until BC=0 pop ix ;Save DE (stacked above it) pop af ;Original ROM checksum push ix ;Put DE back cp d ;Match? jr z,ms6a in0 a,(scr) res 3,a ;No: we must have the original ROM out0 (scr),a ms6a: pop de ;Return RAM bounds in DE ms6: ex af,af' ;Get the original BBR out0 (bbr),a ;Be sure we're in the original stack! ret memrsze equ $-memrtn ;Length to move into RAM .dephase ;Normal addressing, now end  push ix ;Put DE back cp d ;Match? jr z,ms6a in0 a,(scr) 76 halt ;No RAM in the system! 002B' 7A mx3: ld a,d 002C' A7 and a ;Is D valid 002D' 20 01 jr nz,mx4 002F' 7B ld a,e ;Then E is 0030' D6 08 mx4: sub 8 ;Adjust for bank base =8000 + out0 (bbr),a ;Bank: 8000 logical -> 08000/F0000 0035' 08 ex af,af' ;Save BBR for later 0036' 21 8200 ld hl,memrtn ;Clear of the bottom, in new space 0039' F9 ld sp,hl ;Define a stack 003A' EB ex de,hl 003B' 21 00A9' ld hl,xmbase 003E' 01 00B3 ld bc,memrsze MACRO-80 3.44 09-Dec-81 PAGE 1-2 0041' ED B0 Welcome to the D-X Designs P112 8-bit CPU board! David R. Brooks, daveb@iinet.net.au Disk Build: 3 June 1996, and updates If you are reading this, you have got your board running! This file contains general notes on various topics. Copyrights & copylefts ---------------------- The intellectual property in this project falls into 3 groups: 1. The hardware design and the PCB artwork. I retain copyright on these, including commercial rights. 2. Software written by me, and supplied herewith. This is supplied under the terms of the GNU General Public License (see LICENSE.TXT on this disk). Source files so covered are identified by a header block at the start. Minor "include" files have not been marked individually, and follow the source files which include them. 3. Shareware components downloaded from the Net, and included herewith. These components are: 1. CCP+ and DOS+, by C B Falconer, and placed in the public domain. See the file !!READ.ME in the group USER.2 on this disk 2. PPIP by David Jewett 3. UUEN/DECODE by Ross Alford, adapted by me These are included FREE OF CHARGE in this distribution. What does this software do? --------------------------- There's a shareware equivalent of CP/M, with some basic utilities to help get things going. One caution: if you attempt to read from a non-existent file, CP/M will report an error to the program: DOS+ kills you! Specifically, it posts an error message like: DOS+ Error F: No Drive Fn: 15 File: This precludes use of the standard Turbo-Pascal trick of making a test read to see if a file exists. In the present case, I have had to patch this test out of UUENCODE & UUDECODE to make them work with DOS+. If they decode to an existing file, that file will be over- written, WITH NO WARNING! What are the capabilities of this BIOS? --------------------------------------- The present BIOS is very primitive: it supports the console, reader/ punch and printer, as basic devices. Both serial devices are set up as 9600bps, 8 bits, no parity, 1 stop bit. The IOBYTE is not implemented. The parallel port has been tested on a H-P LaserJet 4L. Support is provided for 2 disk drives only, both 3". Either can be redefined as 5", by calling the "overload" BIOS functions. (See the BIOS source code for this). Enhanced ROM and BIOS code (by Hal Bower) is available for download from my Web page. What's on this disk, & where is it? ----------------------------------- To keep things in order, I have filed everything under different DOS+ "users". Think of those users as MS-DOS subdirectories. I have not included source files that are generally available on the Internet: only for code I myself wrote or altered. In general, the code is suitable for processing with M80/L80, and Turbo Pascal. Generally, each "user" repesents a separate project. Each user therefore includes (unless it's a trivial matter) a .SUB file to assemble & link it. The more complex projects also include a README.TXT file. The DOS+ and CCP+ modules are by C B Falconer (see his notices in !!READ.ME and the source files). I have made minor changes to assemble with M80 (documented in the files), but have not changed the "sense" of the code. The disk layout is: User 0, "system" files (accessible from any user): 1. PPIP.COM A shareware replacement for CP/M's PIP 2. UUENCODE.COM and UUDECODE.COM The standard binary/ASCII converters 3. FORMAT.COM Formats 3" and 5" disks for the P112 system 4. USER.COM Change user numbers under DOS+. Same as CP/M (ie "USER n"), but 0 <= n <= 9. 5. RECEIVE.COM Receives and files ASCII text. Enter "RECEIVE ", and enter ESC/CR to quit. Because these are "system" files, they will not show up on a DIR listing. User 0, non-system files (visible on DIR): 1. README.TXT This file 2. HARDWARE.TXT Explanations of how the hardware works, detailed pin-outs of connectors, etc. 3. LICENSE.TXT The GNU General Public License User 1, Miscellaneous utilities: 1. USER.MAC Switch users under DOS+ 2. RECEIVE.PAS Download ASCII files 3. UUENCODE.PAS Binary -> ASCII (modified) 4. UUDECODE.PAS ASCII -> Binary (modified) 5. ROM.PAS In-system ROM reprogrammer 6. ROM.COM Executable of ROM.PAS User 2, DOS+ 1. BIOSHOOK.MAC Define BIOS entry locns. 2. DOS.LIB Standard definitions 3. DOSPLUS.MAC Main code, altered for M80 4. DOSPLUS.HEX Object file 5. Z80.LIB Z80 opcodes as macros 6. DOSPLUS.SUB Batch file to build it 7. !!READ.ME C B Falconer's notices User 3, BIOS 1. ASCII.INC Standard characters 2. BIOS.HEX Object file 3. BIOS.MAC Main source file 4. BIOS.SUB Batch file to build it 5. BIOSTOP.MAC End-of-code markers 6. DISKOPQ.MAC Shortened version of DISKOP (see below) 7. DPARM.INC Define hardware parameters 8. DRVTYPE.INC Define known drive types 9. FDC.INC Disk-controller IO ports 10. LOADBIOS.MAC Utility to "jumpstart" BIOS onto the disk 11. README.TXT Documentation 12. ROMHOOK.INC Defines ROM-resident services 13. Z180.INC Z80182 features User 4, Boot Sector 1. ASCII.INC Standard characters 2. BOOTSEC.HEX Object file 3. BOOTSEC.MAC Source 4. BOOTSEC.SUB Batch file 5. DPARM.INC Hardware parameters 6. DRVTYPE.INC Drive types 7. README.TXT Documentation 8. ROMHOOK.INC ROM services 9. Z180.INC Z80182 features User 5, CCP+ 1. CCPLUS.HEX Object file 2. CCPLUS.MAC Source 3. Z80.LIB Z80 features 4. CCPLUS.SUB Batch file to build it User 6, FORMAT 1. ASCII.INC Standard characters 2. DISKOP.MAC Relocatable of DISKOP (see ROM) 3. DPARM.INC Hardware parameters 4. FORMAT.HEX Object file 5. FORMAT.MAC Source code 6. FORMAT.SUB Batch file 7. Z180.INC Z80182 features 8. FDC.INC Port addresses for SMC chip User 7, ROM Code 1. ASCII.INC Standard characters 2. DEBUG.MAC ROM-resident debugger 3. DISKOP.MAC Diskette subsystem 4. DPARM.INC Hardware parameters 5. DRIVPARM.MAC Standard hardware setups 6. DRVTYPE.INC Standard drive types 7. FDC.INC Port addresses for SMC chip 8. MACROS.INC Macro library 9. MEMSETUP.MAC RAM chip detector 10. ROM.HEX Object file 11. ROM.SUB Batch file 12. ROMHOOK.INC Define ROM services 13. STARTUP.MAC Cold-start functions 14. SYSBOOT.MAC Boot operating system 15. Z180.INC Z80182 features User 8, Odds & Ends 1. RTC.MAC Demonstration of the RTC chip 2. DISKCOPY.MAC Source for a diskette duplicator program 3. DISKCOPY.COM Executable ditto 4. DISKCOMP.MAC Source to check 2 disks are identical 5. DISKCOMP.COM Executable ditto ========================================================== Bootstrapping code into a new system ------------------------------------ Of course, you don't have to: I've done it already. But for those who are interested, here's how it was done. I bootstrapped most of the system using the hex-download feature of the ROM monitor. Having assembled a program to a .HEX file, the "send ASCII" feature of my terminal program will copy that file to the ROM, which "understands" Intel hex. notation, and loads the code in RAM. Normal Debugger functions then run that code. Remember that the full ROM services (including the full version of the diskette driver) are accessible - see ROMHOOK.INC for details. This is how most of the ROM itself was checked out: the debugger was the first piece in, and everything else built on that. Each module was first loaded into RAM and tested there, before being included in the next cut of the ROM. The development ROMs were not programmed on this board: with a suitable programmer already avail- able, I could cut that corner. With the ROM up and running, the kernel of the present FORMAT program was run via the debugger, to build the first formatted disks. The system tracks were written by downloading BIOS into RAM, and entering a short scrap of code: RST 08H ;Call to DISKOP RST 38H ;Break to Debugger With the registers manually set up, executing this will trigger a call to the DISKOP service, which can do anything necessary on the disk drive. In this case, manually writing BIOS, etc. at the proper sectors. The boot-loader and BIOS programs now include short stubs, which assemble the necessary instructions automatically. A debug jump to these stubs will copy the code to the disk. To install DOS+ and CCP+ on a disk, download DOSPLUS.HEX and CCPLUS.HEX into RAM (the debugger will read them directly). They now occupy the correct locations of E000..F600. Now manually set the main registers as follows: A 03 ;"Write" command B 0B ;No. of sectors to write C 00 ;Track no. D 00 ;Drive no. E 02 ;Starting at sector HL E000 ;Start of the code load IX 044F ;Address in ROM of the 3" hardware table PC 8000 ;Point to the RST 08 / RST 38 code and type G . The code stub above will call the disk subsystem, which will write DOS+ and CCP+ in the proper locations on Drive 0. Remember that, for CP/M (and DOS+), unused disk sectors must be filled with E5, not the F6 used by MS-DOS. The FORMAT program supplied does this automatically. At this point, DOS+ should come up. Here I "cheated", by incuding drivers for that old 5", 360kB format. I had an old CP/M system using those disks, and could pull loads of code straight off it. As the system now stands, the key tools are RECEIVE and UUDECODE. RECEIVE will accept and store ASCII text, which of course includes UUENCODEd binaries. The UUDECODE program will restore the binary. A word of warning: MS-DOS records the length of a file, to the last byte, while CP/M only works to the nearest 128 bytes. So don't expect to UUENCODE a file on your PC, download it, decode and re-encode it, and upload it again to the PC, and have the two files compare. Chances are, they will be different lengths. Because RECEIVE has no handshaking ability, you will probably need to set a delay in your sending program at the end of each line, to enable DOS+ to write to the disk. I have found 2 seconds per line reliable (but very slow!). The 3" diskettes are readable (at the BIOS level) on a PC, so the option exists to write a file-transfer utility to use those disks directly (I haven't done so yet). Making new disks ---------------- The FORMAT program will take standard 3" diskettes (whether or not MS-DOS formatted) and re-format them for this system. Once formatted, they are immediately ready for use, with the system tracks installed. The DISKCOPY program requires a formatted target disk (ie it does not format while copying). Although it will copy to a MS-DOS formatted diskette, the result will run very slowly, as the sector interlace will be wrong. BASIC MEMORY LAYOUT ------------------- Here's the memory layout, once DOS+ has loaded: 0000-00FF DOS+ data areas 0100-DFFF User area (TPA) E000-E7FF CCP+ E800-F5FF DOS+ F600-FFFF BIOS ed target disk (ie it does not format while copying). Although it will copy to a MS-DOS formatted diskette, the result will ru page 90 title Disk-Compare Utility: P112 subttl 2-June-1996 DRB ;===============================================================; ; ; ; D I S K - C O M P A R E U T I L I T Y - P 1 1 2 ; ; ; ; ; ;===============================================================; ;=======================================================================; ; ; ; D-X Designs Pty. Ltd. Perth, Western Australia ; ; Project: 112 May, 1996 ; ; ; ; Copyright (C) 1996 David R. Brooks ; ; ; ; This program is free software; you can redistribute it and/or ; ; modify it under the terms of the GNU General Public License ; ; as published by the Free Software Foundation; either version 2 ; ; of the License, or (at your option) any later version. ; ; ; ; This program is distributed in the hope that it will be useful, ; ; but WITHOUT ANY WARRANTY; without even the implied warranty of ; ; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ; ; GNU General Public License for more details. ; ; ; ; You should have received a copy of the GNU General Public License ; ; along with this program; if not, write to the Free Software ; ; Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. ; ; ; ;=======================================================================; .COMMENT $ This program runs under DOS+, but uses ROM functions. It is relocated to high memory to run. $ Z80182 equ $ include Z180.INC include DPARM.INC include ROMHOOK.INC include ASCII.INC aseg org 100h jp begin runat equ 8000h begin: ld hl,reloc ld de,runat ld bc,size ldir ;Copy it up jp start ;Then run it sdv equ 5ch tdv equ 6ch ;Drive nos. from CCP+ exit equ 0 bios equ 1 ;Points to BIOS+3 bdos equ 5 ;------------------------------- reloc equ $ .phase runat ;Moved code testdv: ;Validate drive, passed in A and a scf ret z ;Zero from CCP+ if invalid dec a ;ROM is based-zero ld d,a ;Drive ld c,2 ;Call code ld e,-1 ;get type ld hl,(bios) dec hl dec hl dec hl ;Point at "overload" entry call jphl ret ;Back: CY, E, IX jphl: jp (hl) ;------------------------------- spars: ;Set up parameters for drive function ; Pass drive no. in A (as from CCP+) ld ix,(hwp) ld e,1 ;Start at Sector 1 dec a ;Drives based zero ld d,a ld a,(ctrack) ld c,a ld b,(ix+EOT) ;No. of sectors ret ;------------------------------- dodv: ;Basic drive function push de push af ld a,0c8h out0 (cbar),a ;ROM on pop af rst diskop ;ROM to do it push af ld a,0c0h out0 (cbar),a ;ROM off pop af pop de ret nc ;Back if OK push af push de ld de,fatal ld c,9 call bdos ;Error message pop af ;D => A add a,'A' ld e,a ld c,2 call bdos ld de,fatal3 ld c,9 call bdos pop af ;Get error code add a,'0' ld e,a ld c,2 call bdos ld de,fatal2 jp exms ;Quit fatal: db 'Fatal error on Drive $' fatal2: db ': Exiting',ascicr,ascilf,'$' fatal3: db ': Code $' ;------------------------------- tksize: ;Get track length for this drive push bc ld b,(ix+SECSZE) ;L= 128*2^B inc b ;Scale by 2 ld hl,80H ts1: add hl,hl djnz ts1 ;Secsize*2 (all in H) ld l,(ix+EOT) ;No. of sectors mlt hl ;Track *2 in L (/100) ld h,l ld l,0 ;Track*2 in HL srl h rr l ;Correct length in HL pop bc ret ;------------------------------- tenpwr: dw 10000 dw 1000 dw 100 dw 10 decaout: ;Output A in decimal push hl ld l,a ld h,0 call decout pop hl ret decout: ;Output HL in decimal - direct output push ix push de push bc ld ix,tenpwr ld b,4 dc2: ld e,(ix) inc ix ;Power of 10 in DE ld d,(ix) inc ix ld a,'0'-1 and a ;CY=0 dc1: inc a sbc hl,de ;Trial subtraction jr nc,dc1 add hl,de ;Restore cp '0' ;Kill leading zeros call nz,puta djnz dc2 ld a,l ;Get the last bit add a,'0' call puta pop de pop bc pop ix ret puta: ;Output A to screen push bc push de push hl ld e,a ld c,2 call bdos pop hl pop de pop bc ret ;------------------------------- start: ld sp,lstak ;Stack in safe area ld a,(sdv) ;Source drive ld hl,tdv cp (hl) ;Drives must be different ld de,samedv jr z,fail call testdv ;Check source ld de,baddv jr c,fail ld (hwp),ix ;Save hardware ptr. ld a,(tdv) call testdv ;Check target ld de,baddv jr c,fail push ix pop hl ld bc,(hwp) ;Must be same h'ware type sbc hl,bc ld de,mixed jp z,ok fail: ld c,9 ;Report command errors call bdos ld de,usage exms: ld c,9 ;Final message call bdos ld de,sysbak call dskchg ;Be sure the right disk is in ld c,0 ;Finally, force a recalibrate ld hl,(bios) ; on BIOS dec hl dec hl dec hl ;Point at "overload" entry call jphl jp exit sysbak: db 'Replace system disk if necessary, & hit Return$' usage: db 'Usage: DISKCOMP ',ascicr,ascilf db 'Source & target may not be the same drive,',ascicr,ascilf db ' but must be the same type',ascicr,ascilf,ascicr,ascilf db ' eg DISKCOMP A: B:',ascicr,ascilf,ascicr,ascilf,'$' mixed: db 'Drives must be the same type',ascicr,ascilf,'$' samedv: db 'Cannot compare on same drive',ascicr,ascilf,'$' baddv: db 'Absent or invalid drive spec.',ascicr,ascilf,'$' prompt: db 'Load disks & hit Return$' newline: db ascilf,'$' dskchg: ;Request reload disks ld c,9 call bdos ;Output prompt ld hl,xbuff ld (hl),80 ;Buffer length ex de,hl ld c,0ah call bdos ;Wait for reply ld de,newline ld c,9 call bdos ;Final linefeed ret ok: ld c,0dh ;BDOS: disks are changing! call bdos ld de,prompt ;User: change disks call dskchg ld a,(sdv) call spars ld a,0 ;Using ROM driver call dodv ;Must recalibrate first xor a ;Start at track 0 ld (ctrack),a nrd: ld a,(sdv) call spars ld hl,xbuff ld a,2 call dodv ;Read 1 track from 1st drive ld a,(tdv) call spars ld hl,ybuff ld a,2 call dodv ;Read 1 track from 2nd drive ; jp xx call tksize ;Compare them... push hl pop bc ;Length in BC ld hl,xbuff ld de,ybuff cp1: ld a,(de) inc de cpi jr nz,differs jp pe,cp1 ;Test all ld hl,ctrack inc (hl) ;Next track ld a,(hl) srl a ;Cylinder cp (ix+MAXCYL) jr c,nrd jr z,nrd ;More xx: ld de,suxes jp exms ;Done differs: ;Errors! ld de,flms1 ld c,9 call bdos ;Report it ld a,(ctrack) srl a call decaout ;Cylinder no. ld de,flms2 ld c,9 call bdos ld a,(ctrack) and 1 ;Side call decaout ld de,sx2 jp exms ;Quit suxes: db 'Identical!' sx2: db ascicr,ascilf,'$' ;MUST follow "suxes" flms1: db 'Different data on Cyl. $' flms2: db ' Side $' size equ $-runat hwp: ds 2 ctrack: ds 1 ds 256 ;Stack space lstak equ $ xbuff equ $ ;Track buffer ybuff equ xbuff+(18*512) ;2nd ditto .dephase end  call decaout ld de,sx2 jp exms ;Quit suxes: db 'Identical!' sx2: db ascicr,ascilf,'$' ;MUST follow "suxes" flms1: db 'Different data on Cyl. $' flms2: db ' Side $' size equ $-runat hwp: ds 2 ctrack: ds 1 ds 256 ;Stack space lstak equ M```````````````````````````````````````````````````````````` M```````````````````````````````````````````````````````````` ;```````````````````````````````````` ` end sum -r/size 36591/1617 section (from "begin" to "end") sum -r/size 33998/1152 entire input file `` M```````````````````````````````````````````````````````````` M````````````````````````````````````````````````````````````Ã!€Tí°Ãs€§7È=Wÿ*+++Í€ÉéÝ*T‚!Wƒ=W:V‚OÝFÉÕõ>Èí9:ñÏõ>Àí9:ñÑÐÕ Q€ÍñÆA_Íg€Ã°€Fatal error on Drive $: Exiting $1Wƒ:\!l¾��(&Í€°�8Ý"T‚:lÍ€°�8ÝåáíKT‚íBq�Ê‚ Íí€ Í¾€Íê�ÃReplace system disk if necessary, & hit Return$Usage: DISKCOPY Source & target may not be the same drive, but must be the same type eg DISKCOPY A: B: $Drives must be the same type $Cannot copy to the same drive $Absent or invalid drive spec. $Load disks & hit Return$ $ Í!Wƒ6Pë Íè� ÍÉ ÍÐ�Íê�¯2V‚:\Í€>Í'€:lÍ€>Í'€:lÍ€>Í'€!V‚4~Ë?ݾ 8Ó(ÑG‚ð€Completed! $ $Drives must be the same type $Cannot copy to the same drive $Absent or invalid drive spec. $Load disks & hit Return$ $ Í regend equ $-1 ;Final byte of saved regs. 0058" spva: ds 2 ;Saved debug-level SP 005A" bpadr: ds 2 ;Breakpoint address 005C" inst: ds 1 ;Instr. replaced by breakpoint 005D" bpcnt: ds 1 ;Count breaks before trapping 005E" nxcnt: ds 1 ;Count NEXT operations before halting 005F" eiadr: ds 2 ;Addr. of extra EI instr. 0061" eiopc: ds 1 ;Opcode replaced by EI instr. 0062" inptr: ds 2 ;Input-buffer ptr. 0064" hexlin: ds 2 Ã!€:í°Ãð€§7È=Wÿ*+++Í€ÉéÝ*:ƒ=W:<ƒOÝFÉÕõ>Èí9:ñÏõ>Àí9:ñÑÐõÕ`€ ÍñÆA_Í‚€ ÍñÆ0_Ív€Ã-�Fatal error on Drive $: Exiting $: Code $ÅÝF!€)ýÝníle.Ë<ËÁÉ'èd åo&Í´€áÉÝåÕÅÝ!£€Ý^Ý#ÝVÝ#>/§<íR0ûþ0Äã€æ}Æ0Íã€ÑÁÝáÉÅÕå_ÍáÑÁÉ1=„:\!l¾‚(&Í€7‚8Ý":ƒ:lÍ€7‚8ÝåáíK:ƒíBù�ÊŠ‚ Íu� ÍF�Íq‚*+++Í€ÃReplace system disk if necessary, & hit Return$Usage: DISKCOMP Source & target may not be the same drive, but must be the same type eg DISKCOMP A: B: $Drives must be the same type $Cannot compare on same drive $Absent or invalid drive spec. $Load disks & hit Return$ $ Í!=„6Pë Ío‚ ÍÉ ÍW‚Íq‚:\Í€>Í$€¯2<ƒ:\Í€!=„>Í$€:lÍ€!=¨>Í$€ÍŠ€åÁ!=„=¨í¡ êË‚!<ƒ4~Ë?ݾ 8Ä(ƒÃ-�ƒ Í:<ƒË?Í«€3ƒ Í:<ƒæÍ«€ƒÃ-�Identical! $Different data on Cyl. $ Side $ 0005 ifhex equ 5 ;Bad hex. digit 0006 ifadr equ 6 ;Address out of range 0007 ifsum equ 7 ;Bad sumcheck 00FC" montop equ $ ;End of monitor's RAM org dbdat+256 ;Force to a page, for int. vectors subttl Basic IO Functions page Z-80 Resident Debugger MACRO-80 3.44 09-Dec-81 PAGE 1-2 Basic IO Functions 0100" cseg ;====== BASIC CHARACTER I/O FUNCTIONS ======================== .Comment $ The fundamental functions are external, as they are hardware dependent. The design enables the CP/M calls 02 and 06 to serve, in a test environment. These external calls (getchr/putchr) should preserve registers. $ C include ASCII.INC ;Control chars. 000D C ascicr equ 0dh ;ASCII characters 000A C ascilf equ 0ah 0008 C ascibs equ 08h 0009 C asciht equ 09h 001B C asciesc equ 1bh 0020 C space equ ' ' 007F C ascdel equ 7fh C ;Queue-driver routines. Input is buffered to obviate ; overflow problems when loading hex. files into RAM 0058' toque: ;Push char. to input queue 0058' DD E5 push ix 005A' C5 push bc 005B' DD 21 0068" ld ix,qspace 005F' 47 ld b,a ;Save the char. 0060' DD 7E 00 ld a,(ix+qiptr) 0063' 3C inc a ;Check there is room 0064' CB B7 res qsbit,a ;Increment modulo-N 0066' DD BE 01 cp (ix+qoptr) 0069' 28 12 jr z,qout ;Jump if no room 006B' 78 ld a,b 006C' DD 4E 00 ld c,(ix+qiptr) 006F' 06 00 ld b,0 0071' DD 34 00 …‹N TDT%TxIMPÌâGET�”UTÑàdDT4õUHAUQGETNUM”ÍTB¥ ÒÐà` )™NF“)Ì@R'“E¥#)ÌÒd2›Ž‚!”Äu3™Ì§!Xb. B ´° "Nf“9¸æ ("aÐÈ  G#‘°4T<œ ¢üD 3ÎBA”Øpƒ@à p¹\„.D—#K’%É@äÀ rp¹@\¤.T—+K–%Ë@åÀ rè¹x\¾.a—1K™%ÌÀæ€ uP»ì]ø.–¬7\¬Vè‡4Û§àñ–·n¯€"€‘áºN€ Ñ ºË-› –éÜÁn¸Y-×+º!Í Ó𺖊­Òp n�-ÖXlÝ·OÀ%8a²ÍìJ°É¶�›`@‡ð @<©Åð!š„ Û‚>3n04V 7À‘H| fܰ¸Œ²O.`8�àc?�¢€sø@8_?�ãÓøÂ85„ ÚDwƒ¬‡ð5�SŸ™´ˆFþ²cð�NÈfÒ ÃÜüͤ@"0ƒå’Í» àk| fÒ0ð5’ãz±Z®— E‚ñq²[®W+Uºá�€ ÐKtlÿ8Y·Ä ?3o¸ ùü ÇñÀ|.n�À6èŒ én�€ÆèØ n¸Y/àk F~qùü >ŸÀÖH‡UŠ,ÄålÛXáf×`K¬l ºÙ,ÚìlP0Ê9fÜÀ)–øv›ÄnÓx¬0ñ †œ,°ƒÖÉfÚ@ÐM¬0l?�C€;XØí…;%ŠÍ¸ #€Z‡C‘Ù·pX0Y,Û¬õ@“Þ,“ã6û€†Ï¯Pø|>fЀ'‹6„„ ›%ìð±” âH&É Ý3 n¹Z¬V膉€�Òðº#n•€ Ñø^§;JCØeü0bR°ƒ˜úÆ3iÐE‚Ýp²Z®VYèPS†#w E’!Àgâ¼î#?9C@´DB3hˆ†¢3hˆÇ mØ6ˆ€³l ¡ä#f  ½‚@Õ xFVЬÛôê± B¬Ä+f€`ø!»Eð°2Í à!††Ø9Z¢¬ÄÉ€UP…u‚•Ä �BI6Ô�K‰÷P¥zA‡öˆ’n;M†“ €Æo6›L&ã €Æo2A¤“qØÂl4™ƒ)àÂd2˜Í&Ó °@d4™Í'@i$Üv0› &AÈÊg4œÎ†S�€Üa6™A¤3 ¸Üo:fS €Är2˜Mgy¤ÜtM¡ ÒsNFS4†a7�çAÌÒn3› ¢Ó™ÐÊpM¡ ÒsNFS4†a7�çA”Èi: ¦Si¼äyM¡ ÒsNFS4Œu7Ά“y¸@r2œN¦“‘”æ 4›Ž†S‘Èêp: ‘�îa9A¤# �@c4Lf³™ÔÚ )N'SIÈÊdNFs©´Ên: ¦“™ÌÒn3ƒH§#‘¼äsMÂI¸èe6 MSÀ€Ìi6GBa„ætŒ&A°Òn2Ž„€@fÓè‡}€œ Õ0P<ÜÀ6mf`mß`6mn²Àá íbPpë,®n²Àa `bPpë,¶n²Àá ¥bPpë,¾nˆ@è‹27DY˜›M@Y.¶è‡}€ ³ ŒE™ÀméÈìÛÒ8™Ù·¤p37³oHàZþ Ïà 2ý²TîV¨G;JMÀ:ͽ #€‘ÜFu³oHàyS²¬°ø0 n²ÀàÀºË=…Y�E™€ Ñ€@CÄÑ4@A„A€@HDÁ@ )™N‘„èeM†Á˜Òe6bä@o7Dó�€Úo9D#a„Ük9ƒA¤3y´Úa7b ØÂi6LFÃ(è: &ã¡”Ø 4Oáð€@ MÇ©Ð@l4›Œ¢y˜@I7 ¦Á Êx™�ç#i„è 2N†hü@ €@ €@D4œÎà ä@t4NbA”Øp�„³ �ÈrÌfó©¸è].ˆ3)Ð^c6L'!ˆäe0šÎóI¸è " &C!È@[6MÆs¡ º †“™ÀØa<‹Ìfƒ ¸ÎeL¦ÓyÈò #ˆ f!�ä]€@ æñÈênFó9ÈÂm Ç#y´@a2B�i$@p7œŽ‚€@ €@I7§A˜@d4œÎà ä@b<� ¢1ÈÞm ç# 4œ -˜ÍçSqк €@ )MÂA¸Êx: ‘¤Üs:ަ3¡¤Þn9ƒIâ�¼ät 'C€@ yÔèp:�C Р1N†Q„è 8ÎG@iH@[9Læ“™ÐÊrŒ&Ó)t@D4œÎà ä^ inc (ix+qiptr) ;QIPTR++ (Modulo-N) 0074' DD CB 00 B6 res qsbit,(ix+qiptr) 0078' DD 09 add ix,bc ;Point into buffer 007A' DD 77 02 ld (ix+qbuff),a ;Save char. 007D' C1 qout: pop bc 007E' DD E1 pop ix 0080' C9 ret 0081' fmque: ;Pull char. from queue 0081' DD E5 push ix 0083' C5 push bc 0084' DD 21 0068" ld ix,qspace 0088' DD 7E 00 ld a,(ix+qiptr) ;Queue empty? 008B' DD 96 01 sub (ix+qoptr) ; ie QIPTR == QOPTR 008E' 28 ED jr z,qout ;If so, return zero 0090' DD 4E 01 ld c,(ix+qoptr) 0093' 06 00 ld b,0 0095' DD 34 01 inc (ix+qoptr) ;QOPTR++ (Modulo-N) 0098' DD CB 01 B6 res qsbit,(ix+qoptr) 009C' DD 09 add ix,bc ;Point into buffer 009E' DD 7E 02 ld a,(ix+qbuff) ;Pull the char. 00A1' A7 and a 00A2' 18 D9 jr qout ;-------------------------------------------------------------- 00A4' inpoll: ;Poll input for char., & queue it 00A4' CD 0000* call getchr ;Next from input stream (if any) 00A7' A7 and a 00A8' C4 0058' call nz,toque ;If any, push it to queue 00AB' C9 ret 00AC' get: ;Input to (HL), until B=0 or CR 00AC' 0E 00 ld c,0 ;Column count 00AE' CD 00A4' gt1: call inpoll ;Put anything new on queue 00B1' CD 0081' call fmque ;Pull from tail 00B4' 28 F8 jr z,gt1 ;Wait for something 00B6' FE 08 cp ascibs 00B8' 20 18 jr nz,gt2 00BA' 79 ld a,c ;Backspace: =NOP at 1st. col. 00BB' A7 and a 00BC' 28 F0 jr z,gt1 00BE' 3E 08 ld a,ascibs 00C0' CD 0000* call putchr 00C3' 3E 20 ld a,space 00C5' CD 0000* call putchr ;Destructive BS: BS-SP-BS 00C8' 3E 08 ld a,ascibs 00CA' CD 0000* call putchr Z-80 Resident Debugger MACRO-80 3.44 09-Dec-81 PAGE 1-3 Basic IO Functions 00CD' 0D dec c ;Back-up pointers: col. count 00CE' 2B dec hl ; buffer ptr. 00CF' 04 inc b ; counter 00D0' 18 DC jr gt1 00D2' FE 09 gt2: cp asciht 00D4' 20 12 jr nz,gt3 00D6' 3E 20 gt2b: ld a,space 00D8' CD 0000* call putchr 00DB' 77 ld (hl),a ;TAB - fill out spaces 00DC' 23 inc hl 00DD' 0C inc c 00DE' 10 01 djnz gt2a 00E0' C9 ret ;Done if buffer full 00E1' 79 gt2a: ld a,c 00E2' E6 07 and 7 ;Tab-out to 8th column 00E4' 20 F0 jr nz,gt2b 00E6' 18 C6 jr gt1 00E8' FE 0D gt3: cp ascicr 00EA' 28 0E jr z,gt4 ;CR - the only other legal control 00EC' FE 20 cp space 00EE' 38 BE jr c,gt1 ;Ignore the others 00F0' FE 7F cp ascdel 00F2' 30 BA jr nc,gt1 00F4' FE 61 cp 'a' ;Force uppercase 00F6' 38 02 jr c,gt4 00F8' D6 20 sub 'a'-'A' 00FA' CD 0122' gt4: call putchri ;Echo the transformed char. 00FD' 77 ld (hl),a ;Accept it 00FE' 23 inc hl 00FF' 0C inc c 0100' 05 dec b ;Count up buffer 0101' C8 ret z 0102' FE 0D cp ascicr 0104' C8ÀÍÜ·]Óö($€°ázäÈ ×£°@Íœ½’Ò·Á›Ý«ÝÚíêíúí¯“ó¨Òýºd˜ô˜²TNËÐ33#¬ýäðìã97÷lÑÁÂ76DÿB AUDIO ¿ATTENU®ÑZº'öcãš™“€°¤;pMËÐffLÝ\Ý×972oÓ2Zâ78¸~ݲ³ ×ãܰ{;žÈ 33s÷Íä'921I°2â1Ûò"ñï INDzðRIAqL<¤m·¿ázª€°w®Gm‹à\�6°Ýâ#äàìöþCURïRENT[°ANSËCEi±X’Ü}³š™Æ…±…‹³~íaØ88é1øüà3ÂÂIDEÿO SYNC S EÑĵgÇí×íçí÷ä9M[ô.¢,SM ýÓÂÅ] ö`ãÂ7À€°�@ ° ×yíNý8�76TFÂõ.¢äÔMÿPLIFIERVßDCCB:s±ë˜ ôsCûv–-«€€€ª€€€€ J„p€5�€€S~R0999U9999U9 9 9 9U 9 999Õ999TR0…………U Ñ€ Ñ€ Ù€ Ù€U Ù€ Ù€ ــUــــKbÉ Qò€Í ÍU Í Í Í ÍUÍÍÍÍSRl`ùù�� � �&½v­587SZ�1Y’/¡toðd�Gv�Í̲2òy °…?$4À¹“?ÑGКÞ�š™Ý¥€°fff °š™y1~Ž577T8377Z”û 2  ( 8 H X h x ˆ ˜ �¨ ¸ Èû ã!1?J3 A>Côr=CW>M0M0M0UM0M0M0M0U M0 M0 M0 M0U M0000U0a0�0�0©�1�0�0�0ª�0�0 �0 �0 ª�0 ]0 ]0]0T]1Å0Å0Å0Å0UÅ0 Å0 Å0 Å0U Å0 Å0‘0‘0¥‘0‘0@0IA@@-P÷PÙQPïp×@ ª@ ñ0 ñ0 ñ0ºñ0Ó1‚ÿq<þð# R%]Æ0^``"@îPN@O 8T`3@ X@Å X@ ÿApApCS /¿@PP P• PPûA­S«Æ@ Æ@ Æ@ ÊÆ@÷@÷@ ¥®@²A®@ž@*ž@ž@ž@ šAÊAª�@�@�@ �@ ^¶A* Î@Î@® PPúž@ž@ ‰@‰@lACAQPÕPPQ‚Wã@ã@ã@Uk`k`k`(Q©kQP8P8P8PÉ~†@HPHP • iP�`�a�`š�`�`8™`qP¦ `K0}P}P ¦¶P”0G`k`’k`™QpùaG@®KC ÊPÊPª‰P‰P‰P‰P™¶�`ÎPá\pÖPRÖPÖQ*@*@*@¥¬`¬a*`*`ª*`*`*`*` ª*` *` *` s` ês`s`sc ©­\p3`3`‘Pª‘P‘P _` _` ªK` K` K`K`¯ýc`0Pºì`ìc �`ª�` aP aP aPTaQWpyPyPyPC²’€öQöQè`è`Uè`è`è`è`U è` è` è` è`U è`°`°`°`u°`*c  aP)¥Q¥P¥P¥P W *p*p *pU *p p p p�pJ§ðåp K�p�q�p�pK2§ð3Ž€Op”`5”`”`L­ wpU gpgpgpgp®  €€ *?p ?p?q1Dp”p¿·ZP‰º�‹+B?pª?p?p?p?p *?p ?p ÁqhpÑpS º#pÙp2p2pó Ã@épªúôóZûö—/©(�p € € €¦ €)½Åñ©´wÓ5Wc· ¿W/MUTEô×j"„ÄPÚ/ñ¡ßŒ½ö�597N8ÀB0 .NG._½ð½Í¶À12Å12!Ç1ý2».^GFFE\ÌÚ³{*€²ë àçff¶YÍiÍ594Æ4Í,Ía²ÍÂÍÒÍ@âÀ¢ìÁ¬øÂº.Ç®iHá¾mâ…ªÐÍsÌLæ;Ý588 %À´ÐBúÍ À`þÓ…ëu¹2ò�sà®G“ÝÀ£Ý³Ñ}þчÄ�ÍG.Ý\£Ì33©Ú33ksàÃõ4ûÝ í4r¶Ö7ÀݼING[¶Ñ¸Tá)\Zá¸C5aíqí�á¢T«g5A-º¥ä._uܰRíÌíÜí‚à33ˆå3#.3üåbð».pÛ¶íÆí?ý|æä�à)æ†Àý½_£ÆhôsK¾ûv¢Ee€je€e€e€+Côr=C>ªI0I0I0I0ªI0I0I0 I0 ªI0 I0 I0 90ª90909090*a0�0�0�1�0U�0�0�0�0U �0 �0 �0 ]0• ]0]0]1Å0ªÅ0Å0Å0Å0 ªÅ0 Å0 Å0 Å0 ªÅ0‘0‘0‘04‘0Dpö`Añ0)ñ0-P+@9Pïp[×@ á0 á0U á0 á0á0Ó1ׂõq<Ø#¿ R]Æ0^ä``"@îPN@ ©8T`3@ P P xÿApApC /òªPP P PrPûA­S¾@U ¾@ ¾@ ¾@÷@¹÷@Ù@²@T²A²@²@š@š@Eš@ šAÊAÊ@…@Õ…@ …@ ¶A* ò{€ €ì0‚U P Pš@š@_‰@‰@¡lACAQC@C@úC@Q‚ªã@ã@ã@k`*k`k`(Qk*8P58P8P~"HP¹HP°P iPR�`�a�`�`�`Ó8ËPqPœ`KÔ·P}P}P ¶P”T·PC`k`k`™QÒpùaG@KC UÊPÊP‰P‰P5‰P‰P¶@`ÎPSá4`ÖPÖPÖQª*@*@*@¨`T¨ao`o`o`o`Uo`o` o` o`U o` o` o`o`=sc ­ãP3`U3`‘P‘P‘PU _` _` K` K`õ K`K`ýUc`0Pì`ìcW �`�` aP• aP aPaQ[pjyPyPyP²&�¨öQöQè`è`è`ªè`è`è` è` ªè` è` è` è`ª°`°`°`°`.*c  aP¥Q¥På¥P¥P5p ª*p*p *p *p ªp p ppqJä@ápzp½pi�q½p½p2ä@©3%POp”`”`¦”`Lºwp gpÊgpgpgp«p S/€€p ½p ½pe?q1… ”p· €ÕZ�‰óP‹+BUCpCpCpCpUCp Cp Cp Áq™hY Ñp ºe Ùpš2p2p ép׈ôóQûöœO8 çe € €U € € € €Uœ œ œ œ Uœ œ œ œ Uœ œ œ œ • œ œ Y�m�¥«ä@¬%Pi€m�¸TÐ0u€u€u€u€Uu€u€ u€ u€U u€ u€ u€u€¥¡�'`­€­€¦­€óP½€½€J½€½� p`ррUррррUÑ€ Ñ€ Ñ€ Ñ€U Ñ€ рррS8óP � � �U � � � �U � � � �U � � � �»(ð…»ƒ�4‰†¤÷Ó–90ãz‘ †Àúàç‘ÆÓñ[ ÑyÒîÛ¤pM(ð= r�ÒÜZ�¬ý984¬øà‘¡¢^³SUPPLÿY SYSTEM¹ZÒtR¸ö} ;׫%Ðö(„¿�†¤ôަ4«D¡¶ÆÖÐw³­$­­óö;§0TÍ9§¤-9úä`¨ +'9VY£ÁÖev­†­Ô–­¦¥8¯¥8Š”8V–] 1ùÀ[Ϧu­d‡ázì­›µ8« 5t¯¥O1�œ +5ͨîæÓ¸(ðö(´Ž%ÐHáŠR½ý­ª¡1ÌF³¡10¸­È¡10sV\¡–Ø£Ãõ�}wš™I%Ð…µ½b½ª CuµC÷ヽ“°Ü —æÓ®G‘}ÃõEHç¢ÍŽ;Â1@Ç15MÍ÷°5û³áØqÍ �͑͡Â’«Ã2²Í÷°á2ÆÍ ÍæÍ+Í937áEîãlÒIÍŽµ\JIIHÌÍÜÍRÝ ¨mѥüwÒ¥ÀIC2Y·Í\LKKJ˜Ý¨Ý¸ÝÈÝ ’ÝÓËóÝ-×aˆòá;zd}¤p¯°çí]Ý36ZØÓ à�½¾‘²WEDDCÖ^®ˆò= �ò·¯°¸s�íŽí935­ù5O£‡¼TBAA@]9×ö( á¢ÃÚ�•~íïíA©àZôä{ÝŽµZkÛìQˆî}ö(<¯°\�ßíMýApÕ1zÝyý  ïôôs¯ÞFØ ;Ø »ÿŠEÿÿ†=Àcÿ&é ƒÿ^=$ÿ$À2‰ ߟ*Ù!ƒvÿîFï�ë/œNN8o4�_ûÈ8n’« n n n¯ò~~ïDŠ«’’ ’ ê’ ’ ’ uZܲ©° ×¹�¿ ×[A,Êã®ëG!}ÞÚÍ̬^=òš™™?È›Õ9308Núì’÷�ô�ÿGAIN OP ÿAMPT@??>Ý8ÆçázÄ}®G�‰¯°33S¡òâ u ?ÔõHXiã_š™ù?y ÀÚç¸¥Ý K08AãNSã�¸ì“REC/ISIOrW¡¥‘«ÿ`)ô<1ò¯°Í;ÌÌ=ò®G¡¡±\úË !$a€a€Ma€ƒ%P4 4 U4 4 4 4 Õ4 4 4 PW \ \ \ U\ \ \! Ã@*x x x x «€«épépépJépépíqép ép� ”!‚ ³!þqCªØ#þqBä#þqAªð#þq@ü#þq?J3þq>Côr=CW>909090U90909090U )0 )0 )0 )0U )0)0)0)0U)0a0�0�0©�1�0�0�0ª�0�0 �0 �0 ª�0 ]0 ]0]0T]1Å0Å0Å0Å0UÅ0 Å0 Å0 Å0U Å0 Å0‘0‘0¥‘0‘0.€zP¤v€Ñ2@-P÷Pl9Pïp×@ @U @ Ó0 Ó0Ó0]Ó1‚þq<À#ÿ R]’Æ0^``"@îPN@§ 8T`3@ ÿ@ âÿ@ ÿApApC ©/¡ ÿ@ÿ@ ÿ@ Êÿ@ÿ@ûA­SU¾@ ¾@ ¾@ ¾@å÷@÷@Ù@R®@²A®@ž@ž@ž@ž@ šAÊAÊ@U…@…@ …@ ¶A/* Î@Î@PW P Pž@}ž@‰@…‰@lACAQl@êl@l@Q‚«ã@ã@ã@ªk`k`k`(QkÔ± 8P8P8P~ä†@HPHP°P JŒ`Œ`�aŒ`Œ`MŒ`85 qPœ`SK³@}P}P ¶PS”³@G`k`k`I™Qù`ùaG@KCW ÊPÊP‰PÕ‰P‰P‰P¶L�`ÎPá) ÖPÖP©ÖQ*@*@*@R¬`¬ao`o`o`Uo`o`o` o`U o` o` o` o`õo`sc ­T) 3`3`‘P‘PU‘P _` _` K`Õ K` K`K`ýWc`0Pì`]ìc Œ`|`U |` |` |`aQª[pyPyPyP¡²r€öQöQè`è`ªè`è`è`è` ªè` è` è` è` ªè`°`°`°`º°`*c  |`”¥Q¥P¥P¥P5p« *p*p *p ª*p p p pÆpJnPápzp¥�p�q�p�p¥2nP35 Op”`š”`”`L60wp *gpgpgpgp«pO /€€p ?p• ?p?q1.€”pU·€B0‰�‹+BW?p?p?pU?p?p ?p ?pe ÁqhJ€Ñp ºV€ªÙp2p2p ¬ Þ¬ "ôó Ÿ&øGƒÿ^%Ûÿ þ%™ôÿ“&kîÿÉ�{Fÿui"_ÿþ‘L.÷ x" 0ðWB€B€B€U3`3`3` 3`U 3` 3` 3` 3`U3`‘P‘PCa_‚/B€B€UB€B€B€B€U B€ B€ B€ B€M B€³@³€³€U³€³€³€ ³€M ³€š) Ó€‘0õ‘0‘1 üç€" .xS y] ø€ ø€ ø€}ø€` �U � � � �U � � � �M �am@8�8�Õ8�8�@‘‚O-(öC€U�U�5U�U�÷0…�…�Z…�…�à&0bÔ0©R1P¡� ô€ ô€ªô€ô€ô€ô€ªø€ø€ø€ø€Jø€ø€‘ø€ Í‘);`å�å�å�" W,ÎP™�™�Mø€]P    S _<@     U     U  � � �U � � � �]B¡‚+õñ:À#O*3åpk  k U k  k  k k Uk k k k Sæ× = •A÷p&ÿ®G»AR¸Û‚AÉHAûÝpÔ×£Š÷]Pý¤p-RƒÁ9€ŠÍšÃ¨Á´ÁäÁäÍôÍÝÝ$Ý4ÝDÝTÝdÝt݄ݔݤݴÝÄÝÔÝäÝôÝíí$í4íDíTídítí„í”í¤í´íÄíÔíäíôíýý$ý4ýDýTýdýtý„ý”ý¤ý´ýÄýÔýäù<€/$ ) 0¼¿Pð0Uð0ð0 ð0 ð0U ð0 ð0 ð0ð0íð0}QR#ja@e@e@{IPª¦@¦@¦@¦@ª¦@¦@¦@¦@ ª¦@ ¦@ ¦@ ¦@ *¦@¦@ÒA|×@æ@Uæ@æ@æ@æ@u‘@‘C"&�©���gpRgpwqgpgpgpUgpgpgp gp¥ gp sq¦@¦@ª¦@æ@æ@æ@ªæ@æ@æ@æ@ªæ@æ@ æ@ æ@ ¦æ@ á×@‡P‡Pj‡P‡P‡Pâ·2O!>‚,0¨P¨PSƒð ´P´P´PU´P´P´P´P5´P ´P PæðÜPU ÜP ÜPÜPÜPMÜP «0øPøPUøP øP øP øPU øP øPøPøPUøPøPépép¥épíqépépªépépép ép –épiû@jÿ@\`ª\`\`\`\`ª\`\`\` \` ª\` \` \` \`ê\`\`da‚ ªõqCb#õqBb#ˆõqã€�õq¼€�*õq?b#õq>b#ôr==b#>{U0ù`Uù`ù`ù`ù`Uù` ù` ù` ù`U ù` ù`ù`ù`5ù`ù`|ð 9pU9p9p9p9pU9p9p9p 9pU 9p 9p 9p 9pE9pEqxÁxÀxÀUxÀxÀ xÀ xÀU xÀ xÀ xÀxÀ•xÀxÀxÀc ¢U0uÀ¹r�À~0j$P¯@âÀ ±pU ±p ±p ±p ±pµ±p½rèôó?%ÿHÿ[¢á`ÿÇR%™ÿô“&�ÿȆí¿xK>À9Û¿0M‚8 «›š©ªpÌžp侊pø#¾$´—0Y€Y€ [~25¿Gn€¦n€HPz€z€ªz€z€z€z€ªz€z€ z€ z€ ªz€ z€ z€z€ªz€z€z€z€©IPƀƀƀúÆ€Î�‚4%¥EÈ0FPç€ç€ªç€ç€ç€ç€ªç€ç€ ç€ ç€ ªç€ ç€ ç€ç€ªç€ç€ç€ç€ªç€n€n€n€ªn€n€n€n€ªn€n€ n€ n€ ªn€ n€ n€n€~?‘‚3 .=Àš|� |� ñ0ˆ�Zˆ�ˆ�ñ0Ds€ªœ�œ�œ�〪ã€ã€ã€ã€ªã€ã€ã€〠ªã€ 〠〠〠ªã€ã€ã€ã€ú〴‘‚2/ © ~@ý� ý�ý�ªý�ý�ý�ý�úý�ý� ª% % % % ª% % % %  ª%  %  %  %  ª% % % % ª% % % % ªˆ�ˆ�ˆ�ˆ�ªˆ�ˆ�ˆ�ˆ�ªˆ� ˆ� ˆ� ˆ� ªˆ� ˆ�ˆ��¡¯‚1-@@ TA@ @ @ @U@@@@5@@ & ò Uò ò ò ò Uò ò ò  ò U ò  ò  ò  ò Uò ò ò ò Uò ò ò ý�Uý�ý�ý�ý�Uý�ý�ý�ý�õ ý� N±‚0(U@À@À@À@ÀS­ð ‡°‡°‡°U‡°‡°‡°‡°U‡° ‡° ‡° ‡°U ‡° ‡°›±®0šÃ°ðOÂÀϰ©PÎÀ×°×°×°ª×°×°×°×°ª×° ×° ×° ×° ê×° ×°×°P;�K�[�k�{�‹�›�«�»�Ë�Û�ë�û� ��+�;�K�[�k�{�‹�›�«�»�Ë�Û�ë�û� ­­+­;­K­[­k­{­‹­›­«­»­Ë­Û­ë­û­ ½½+½;½K½[½k½{½‹½›½«½€»½Ë½Û½ë½û½ Ç¿pÞýôsÛõLb Gb ³RÿàŸ^ÿ)à7þß½¤w€ÿ\#âÉÿœwFŒž&G ¤„ <š< +À…ÎpL©›ÎpT T T½ òFÑü 8”zpqq(Æq‚@Zxz0…&E e 0•¥špËšpá‰ÀžRž)ß@ªªªn&D’:†pÖÇ0 ™È0*·2C++(0‡0’šàK¬(0·,0ììM } .…ÀËË•ËËË&Bk ÜÜ Ì@Pj! ! !Î,Pª1111õé(P ·2A)šTPTTTTUTTZÍ$Pªrrrrªrr r r ªr r rr*rrŽ/`²S ®Û@ººº5ºº¯ÿ@ÒUÒÒÒÒÕÒÒÚ‚@K#ÀU#À#À #ÀRURRR !U!!!!Õ!rr‚/? L 0©$0–Õ}/À… ”TU@\ \ \ \ y\ 60> f$0jy èè%A@ª‰ ‰ ‰ ‰ j‰ \ \ •A@òžž60=^7º ‘$0Â!ªH H #À #Àª?Àžž ž êž ž ±#< ÂÜ Ü¾q15@ ª?À ?À ?ÀI0ÀX X X ªX X X X ªX X  X  X  ªX  X  X X šX X cMÀM°ªM°µ€µ€µ€ªµ€µ€µ€µ€ªµ€µ€ µ€ µ€ Re±w¾P‰°‰°‰°U‰° ‰° ‰° ‰°U ‰° ‰°‰°‰°U‰°‰°‰°‰°“x®Pɰɰ@H§ …`Ú°Ú° *Ú° Ú° Ú° æ±3a`@ dCMM$M4MDMTMdMtM„M”M¤M´MÄMÔMäMôM]]$]4]D]T]d]t]„]”]¤]´]Ä]Ô]ä]ô]mm$m4mDmTmdmtm„m”m¤m´mÄmÔmämôm}}$}4}D}T}d}t}„}”}¤}´}Ä}¼Ô}äyðôs¿šrR€Lþ€¦ ÐÿG²¦$šÿ$‡þi]ÿ!Q! 7TþÀVJª---- ª- - - - Z--_ÐÀd²�40ð]] r~€m5 mm Ið}µ}}ÃeÂU«+YYY*YYY¢}U}}} }U } } } }©‰}}}¦} óàêêª���� š� � †ØÀªÙ€JÙ€Åá�ŽÐ. .¥..ÀTõqKä€ÀSörJR$ jÀ À Àª��¥óN€ô÷0ss–s 'ïÐMóЇ ©ßØÀ���ª��ــ*ـــÝ�Ù€Uــ Ù€ Ù€Õ Ù€ Ù€ Ù€.äŽÀß|¡?ÃQ!ªÀÀÀÀ JÀ !-ò€ U    U  ßßUßßßßUßßß ßU ß ß ß ß©@!�Ð�Ð ?ÃP§ |B€} } š} } }€‘ f € hÐÀ� &†Àò¥ ¥ ÀO& M¨ªñÀ¶ ¶ ¶ ª} } } } J} �!�€â â Õâ â â T®Ðú ú ú ú Uú ú ú ú U ú ú ú ú U ú ú ú ú Mú ®ÐB08!Ÿ‚NT¡T jT T T Úðšg0g0 Aqàs0J„àÝñÒIðƒ0ƒ0Õƒ0ƒ0ƒ01W ›0 ›0 ›0• ›0 ›0›0ÀM«;qÀqÀqÀšqÀqÀ¦MÀoªooo o ªo o o oªR�R�R�R�²R�R�m0@ª@@@@ª@@@ @ ª@ @ @ @ª@@@@ª@@@T ªT T T T ªT T  T  T  AQaq�‘¡±ÁÑáñ--!-1-A-Q-a-q-�-‘-¡-±-Á-Ñ-á-ñ-==!=1=A=Q=a=q=�=‘=¡=±=Á=Ñ=á=ñ=MM€!M1MAMQMaMqM�FU T  T T ¹qê¼`¼`éq"òôóCõòõñ¨Mßo €pTÛP€€€€U€€€€U € € € �©¯`E€E€E€ªE€ E€ E€ E€ ªE€ E€E€E€i*’€u€u€+Òðª�€�€�€�€J�€��AMÀ�€�€•�€�€ ¥��ª� � � � ª� ���J��)‘..©>...ª... . .> �� �0�<…–A–M¦M¶MÆMÖMæMöM]]&]6]F]V]f]v]†]–]¦]¶]Æ]Ö]æ]ö]mm&m6mFmVmfmvm†m–m¦m¶mÆmÖmæmöm}}&}6}F}V}f}v}†}–}¦}¶}Æ}Ö}æwžîÀL'òÎð­Àª­À­Ào�o�Jo�o�رÕðÕð© æáÕð Õð Õð ªÕðÕðÕðÕð*ÕðÕðÕðÕði°« À À Àª À À À Àª À À À À ª À À ÀÑŸ‚K;ZÛÐNЪNÐ NÐ NÐ NÐ ªNÐ NÐNÐNЪNÐNÐNÐNЦNÐ[ÒðŠÐŠÐªŠÐŠÐŠÐŠÐªŠÐŠÐ ŠÐ ŠÐ ªŠÐ ŠÐ ŠÐªÑ\T4ðÆÐ ÆÐ ÆÐ ÆÐUÆÐÆÐÆÐÖÑ¥]Òð*÷àîÐîЪîÐîÐîÐîЪîÐ îÐ îÐ îÐ ªîÐ îÐîÐîЪîÐîÐîÐòѯ‚J,S°S±?L}àGà@óàOàOàUOàOàOàp ¥ç‘™9 oàoàªoàoàoàoà ªoà oà oà oà ªoàoàoàoàšoàoàšæ€³àª³à³à³à³àª³à³à³à ³à ª³à ³à ³à ³à~»á‚I4>eðªGàGàGàGàªGàGàGàGàªGà Gà Gà Gà ªGà GàGàGà¦Gàc#<ð<ð©d¨�HðHðHðªHðHðHðHðªHð Hð Hð TñwTö€xðxðxðxðU xð xð xð xðU xðxðxðxðÕxðxðxðx俀¸ð¸ð'H ©ûÉðÉð Éð *Éð Éð ÕñZ åð½ åðäôs¿·•J“@Hþ“@ÓþIXÿ·»dÿ¡Báÿ„#Åfÿ 8áÉÿ 3‘¤ÿûm]ÿM=-ÿ ýíÝÿͼ¯Ÿÿ„gK.ÿùÞÂÿ¦‰cÿUqq˜ÿ^K8%ÿÿìÛŠd°WÿÀ3þp¨�þrPŸrogID”þqcÿcXd÷k±ff$ÿBö( Bx¿\�àA,”×ÿ£€@è ×sþÒ�Âu?Rý”APT20M_45BNRç\¶ÿÃõ¨?{ÿn?dìQ8?ÞË…ë‘?�U __U ¥ÂTŠMQ�a�q���‘�¡�±�Á�Ñ�á�ñ�­­!­1­A­Q­a­q­�­‘­¡­±­Á­Ñ­á­ñ­½½!½1½A½Q½a½q½�½‘½¡½±½Á½Ñ½á½ñ½ÍÍ!Í1ÍAÍQÍaÍqÍ�͑͡ͱÍÁÍÑÍáÍñÍÝÝ!Ý1ÝAÝQÝaÝqÝ�ݑݡݱÝÁÝÑÝáÝñÝíí!í1íAíQíaíqí�í‘í¡í±íÁíÑíáíñíýý!ý1ýAýQýaýqý€�ý‘ý¡ý±ýÁýÑýáüWö"ôóQ¡LJK gQpx´ € €U € € € €U € € € €U € € € €Õ € € €yT¨U€U€U€U€UU€U€U€U€U U€ U€ U€ U€U U€U€U€U€UU€U€U€U€MU€z¨­€­€U­€­€­€­€U­€­€ ­€ ­€U ­€ ­€ ­€­€U­€­€­€­€Õ­€­€­€{T¨����U����U � � � �U ����y�<]ß3îS� …<\¯§d�S�™à'p�ÌÊ@x�\x�=[p�p�û?£P”†”Ä™� �‘ÎÌ¥� ©èØ­�­�­�Ê­�­�­�=ZS ú7Î� Î�Αi ÓPÞ�Þ�:Õ0æê� Hå0ò�(§eQpþ�þ‘ÿ‚YN Ôö‘Ð0x�x� [RêðÊØ' ' ' Õ' ' ' ËT¨C C C C UC C C C õ C  K¡‚XSø|t t t Õt t t $T5p� � � � -� %H`ͤ¥�Í¥��¬`¸ žT´`À À À À ýÈ¡‚WšT–�Ý Ý  Ý  Ý U Ý  Ý  Ý Ý UÝ � � � U� � �  � U �  �  �  � U� ¥�¥�¯?‚V%J+F°UF°F°F° F°U F° F° F° F°5F° dÏPv°5 v°v° rÏP†°U †°†°::š:: Ã-p¦°ª¦°¦° p p Jp º±zª ưư%ưư+-U::::• : : :9 ª::::š:: €03Àª3À¦°¦°¦°ª¦° ¦° ¦° ™� ª™�™�™�™�š××áи  *¸  ¸ ¸ ¸ AQaq�‘¡±ÁÑáñ--!-1-A-Q-a-q-�-‘-¡-±-Á-Ñ-á-ñ-==!=1=A=Q=a=q=�=‘=¡=±=Á=Ñ=á=ñ=MM!M1MAMÀQMaMqM�M‘M¡Cû0 ôs ùÏëT“ÀR“À'ÿ'ºÍÁ%`ÿÛ^ùÿ$ö#ÿ#°Ã·!VÿÑTC‚ž=ks$à9 <9=j{àJUJJ J JU J J JJUJJJÆÐÕÆÐÆÐÆÐ ¢ì­ÀŽœÚ�Mš ŸžÐ¢ ¢U ¢ ¢¢¢y¢=i ˜Ð`ªÇ Ç Ç Ç ªÇ ÇÇǪÀ À À  À  ªÀ  À  À  À ªÀ À À À ªÀ À ¢¢T¾¢¢¢¢u¢¾h [�Ëð¡ ˜þ€T™TñÀ\\\\Í\0¬`t1T´`|||„ª¸p¸p¸p¸pʸpÀsgör“Ãf:Sge�¹¹¹U¹æÐæÐæÐS«S°Ù Ù ÙU Ù Ù ÙÙUÙ°à°à°à•°à°à¸á°à T !O`O` O` O`U O` O` O`O`UO`O`O`O`UO`¼à¼àÀá4íñ¼à¼à-=pi Mi .ñÀu u Uu u þ�þ�Uþ�þ�þ�£Oe¼Ï�T TUTTTT%Tª!öÑXÔ@Î UÎ Î Î Î ¥ Î!ZÓ ê ê Jê ê ê ŠÀdþq=P“Ãc5~áÀ0U0000500ñÀ30U30303030U303030 30U 30 30 30 30U30303030U30303030S€ñÀ‹0‹0‹0U‹0‹0‹0‹0U‹0 ‹0 ‹0 ‹0U ‹0 ‹0‹0‹0U‹0‹0‹0‹05‹0‹0�Æ’3589 [°ÿ0UÌÀÌÀÌÀš• °à °á§Íà@ª@@@@¦@ Ð;@ ;@;@;@D T d t „ ” ¤ ´ Ä Ô ä ô $4DTdt„”¤´ÄÔäô--$-4-D-T-d-t-„-”-¤-´-Ä-Ô-ä-ô-==$=4=D=T=d=t=„=”=¤=´=Ä=Ô= Ð%ÀôóùEõòõñ›6*��I‘|ñÀ€U€€€€U€€€ €U € € € €U€€€€U€€€€S}ñÀm€m€m€Um€m€m€m€Um€ m€ m€ m€U m€ m€m€m€Um€m€m€m€Um€pppUppppUpp p p• p p å�ô` ªô` ô` ô`ô`ªô`ô`ô`ô`IÿC-ADJUSTÿABLE REGÿSBAA@92ÿ0?dß)\·@<�@d�ÂE@,o°ÿÃõ(?è{õŽT�H�u?Öþo°LM7131·BCNi–2Y�HÿIGH SPEEÿD OP AMP«ZF‡�;3‘f8’¸»%@�ffæ6�)§\¯?M�]“ád–0ìp“Ñ�2N�DIFÿFERENTIAÿL COMPARŸATOR\.–›“Í»Ìl@�\�"F�R#¸þ°�À�Ð�H3¤Û�të�1“U8’…ëQ@�‡×£F�îÀ­\”Õ†d•09p’œ¡A¢‹“Kî^¬R¸–@� ×SF�®G!L�Œ­œ 9¡øñ¡§­b¨ö($AïázäF�×£°\Ñ­á­09Aô£Aû­ê1“Yœ”‘°š™IÍA«‘A'½7»67ë5T˜³1B¡POWûERŠ”O@??>u83‘`8’ ×C°wìQu°q=Ò&½\œ6365q�ó²A¢æ€�PV.–¿³Í̈î°{>u°ff\{½ä½364÷³4þ½Ü;´…ë)°ö(�ìF�ff¶Ô½DÍ3‹62÷³2^Ín;´öë(ÔÅ¢“F�ázd\”ͤÍ361÷³1¾Í†ÎÍ?aàÍðÍÝÔM¬qÔ{’SM#Ð-…™WîÌÃõ@°ffRu²ÏTÝ\”Üì¶2ÓŒÖÐÝBUH¡ÕÇ›“f»fŒ°HáBβ4ÍdÝ313÷²6ààÜñ/©¹÷—¿³mC]…@%Cdl éµÝz\”瓵29N6˜ä~A¢MOTIONR ¿NTROLLôØfäÀ‡oâ=uí…í•ä¡8�ãüà¦í¶íe²{;Z° ×u°Øíz"çדµ182I÷±\[òA¢CURK¡ ’‘ïBACK�‘[DCçCB:3‘&ó\�ú.@�R¸®ŽÂ†;ý%í181^ôÂðhýxý˜�¯¬ôsAûv£/;ã0ã1ã0Uã0ã0ã0íqªã0 ã0 ã0 ã0 ªã0 ã0ã0ã0ªã0ã0ã0ã0šã0ã0‚gP]¦] –¹`iiªiiii©—gP………ª…………ª… … … … ª… ………ª…………ª……^P^Pª^P^P^P^Pª^P^P^P ^P º^P ^P8CTA¢VßOLTAG(’ +Ï18VW‚ö?Ó�Â×õ? ¬6�\�]‚|¢¤p}¨üöd•815C�°bá5#3CS812�fÆp2„¿³š»™@�= ×6�¸¥¤ q?  ( 8 H X h x€ �˜ ¨ ¸ È Ø è ø q}'}7}G}W}g}w}‡}€—}§}·}Ç}×}çvN@bªþqOºSaþqMºS`',  `@@°K;@KA;@;@U;@;@(@(@¥ (@ 4AØ` Ø` ªØ` Ø`Ø`Ø`úØ`Ø`Yª\@\@\@\@ª\@\@\@\@ ª\@ \@ \@ \@ ª\@\@\@\@*\@��qsO]ßàP¹@ VPžPP\§ÄPÊ@¾¹@àÖ@/ÌÞ@Þ@PP×[Ö@Ö@?ÿ”†”¨0ÿ@ Qΰ0 P ©èµ`PPPÊPPPPPZS úôP4P 4P4Q¯  DPDPï:PP Hû XP(ô§a§`§cYN÷ \Q¦ZÞ@Þ@ [8`ʵ`ª�P�P�P�Pš�P�PËÛ ©Pª©P©P©P©Pª©P©P©P ©P ~±Q‚Xøç@ªÚPÚPÚPÚPšÚPÚP$H`öPªöPöPöPöP¥%P`Í× P Pï�`ž«&`&`&`ú&`.a‚W©šü@C`C` C` ªC` C` C` C`ªC`C`öPöPªöPöPöPöP ªöP öP öP öP ªöPöP P P=à2V%JÏ@¬`U¬`¬`¬` ¬`U ¬` ¬` ¬` ¬`í¬`_Å`dÕ Ü` Ü`Ü` rÔÝ`ì` ì`ì` Ô˜`ü`ü`ü` ÃÔ”` p p p /Wpp q©z%p,p,p,p\,p U+Ø`Ø`UØ`Ø`Ø`Ø`©Qqü`ü`ü`ªü` ü` ü` ü` Tqü`ü`ü`ü`õü`ü` U™p™p p pU p p p pU ÿ@ ÿ@ÿ@ÿ@Õÿ@£`£`áT´0` ` ``½`R ôóEþûöŸ5m¿ª €¾ €«€ª€€€€¦€ ®5P5€ 5€ª5€5€5€5€¦5€fÛ U€U€ªU€U€U€U€ªU€U€ U€ U€ ªU€ U€ U€U€ªU€U€U€U€©gÛ ¡€¡€¡€ª¡€¡€¡€¡€ª¡€ ¡€ ¡€ ¡€ ª¡€ppp©0'`á€á€á€ªá€á€á€á€ªá€ ဠဠဠjဠá€á€05 g$��(�8�H�X�Ðh�´‰Ä� f¯‘:©gË@¹�¹�¹�¦¹�h5�Í�Í�*4�4� 4� L‘4�U 4� 4�4�<‘¯ý�ý�ªý�ý�ý� ý� R ¡@|`     U       U    M AšpQ Q ÕQ Q Q -4 @i i .Û u Uu u u  lPUlPlPlPlP=lSe¼5PU Uª¡&/`ªX@X@X@X@JX@X@ Ρ°@°@U°@°@°@ °CdýñPï3= =0=@=P=`=p=€=�= =°=À=Ð=à=ð=MM M0M@MPM`MpM€M�M M°MÀMÐMàMðM]] ]0]@]P]`]p]€]�] ]°]À]Ð]à]ð]mm m0m@mPm`mpm€m�m m°mÀmÐmàmðm}} }0}@}P}`}p}€}�} }°}À}¼Ð}à}B ôs ¿öÆNï°Jþï°O¶Mäÿ>ùÔÿÃ$öÿ#Iæ~ÿ¾gÀÏver\ýsÿG:\EXCEL¾A.EXE5°V·Q 3IÿnprocHanûdl1 Ole¿2.dll3°WðV†Û ýrProg»ID3ebaTRúñõ™>bÿX>dyé&ý>³Tã%>¸ ¯øSã=³Z[BïC550â2NTÿRANSISTORH>==<7‹ëÿU±cñR¸þÞù®G±@±ˆ@ž i ˜ú€&à ª&à &à &à &à Ú:ãhB ÁÀð4à00™Û \U\\\\5��1'à|U||„x3àª�����‘ýqQï³¶�Æ�Ö�æ�ö�­­&­6­F­V­f­v­†­–­¦­¶­Æ­Ö­æ­ö­½½&½6½F½V½f½v½†½–½¦½¶½Æ½Ö½æ½ö½ÍÍ&Í6ÍFÍVÍfÍvÍ†Í–Í¦Í¶ÍÆÍÖÍæÍöÍÝÝ&Ý6ÝFÝVÝfÝvÝ†Ý–Ý¦Ý¶ÝÆÝÖÝæÝöÝíí&í6íFíVífíví†í–í¦í¶íÆíÖíæíöíýý&ý6ýFýVýfývý†ý–ý¦ý¶ýÆýÖý^æ÷²ôóB¡MRï0 @ € €U € € € €U € € € €U € € € €5 € €¡Œ0M€UM€M€M€M€UM€M€M€ M€U M€ M€ M€ M€UM€M€M€M€MM€¢Œ0™€™€U™€™€™€™€U™€™€ ™€ ™€U ™€ ™€ ™€™€Õ™€™€™€£TŒ0á€á€á€á€Uá€á€á€á€Õ ဠဠ‘« � ��¯!�!�~!‘‚t6,ø@ª6�6� 6� 6� ª6� 6� 6�6�ª6�6�6�6�š6�6�-‚Pr�ªr�r�r�r�ªr�r�r� r� šr� r�CóP¢�¦¢�È 0®�®�ª®� ®� ®� ®� ª®� ®�®�®�ª®�®�®�®�¦®�ÉŒ0î�î�ªî�î�î�î�~ö‘‚s& 1IPª    ª    }P ©ùEP7 7 7 ª7 7 7 7 ¦7 ú‚P[ [ *[ PPo¡pUpp p pU á€'''5''™'`£ ž0r ‡×@}Pª}P}P}P}P ê}P }P }PM�êÜ Ü à¡‚q—…ʆ9PØ *ؠؠؠؠ žå1p Ò±`…P ªÁ@ Á@ Ø  Ø  ÊØ  Ø  `0o Ó 5P?° ?°RRð@j±`ؠؠ.±v`•7²n O°UO° ° °  °•Ô Ø ý¡tÜt0m ñ šÏ@�°�°|±Ø¡Ø õØ µ±‚l MŸ`5PÚP ÚPUýýýýåýý0k)szï° ï° ó±?°M ?°'d`ÀÀÓ�X`ý ý§T˜`ÀÀÀÀUÀÀ (@ (@Õ (@(@A‚Oj{�TÀTÀUTÀ TÀ TÀ TÀU TÀ TÀTÀTÀõTÀTÀ|ÕˆÀˆÀˆÀ ¢L[˜ÀœÕÀÀS Ÿ0¬À ¬À ¬ÀU ¬À¬À¬À¬ÀV! '' '© '& ' 'J''&`*+ª;&`&`&`ª&`&`&`¬ÀR¬ÀÈÁ¬À¬À¬À¬À¬ÀÈÃIYiy‰™©¹ÉÙéù --)-9-I-Y-i-y-‰-™-©-¹-É-Ù-é-ù- ==)=9=I=Y=i=y=‰=™=©=¹=É=Ù:¯¶ôstPëWï0Nï0Óªÿ}P'ÿÁ$GŠÿQ‹ÿ¥TH"¯ÿ6Á”o_N-T`[±BO‚üØÐDDUDDD nÑ?‚�MóPeÓZß@m Á@šì@yš;b€ Re&WÐŽŽŽUŽŽŽyýy‚%Tü@·· · ·U · · ··U····UŽŽŽŽUŽŽŽŽUŽ Ž Ž ŽÕ Ž Žó‚«~6 ; ;ª;;;;¦;\]@PPªPPPPªPP P P ªP P PPjPPP]]@<˜ ð}%QP¥U¥¥ ¥ ¥• á€á€‹¡á€šá€ဤ–ðÕªÕÕ��¦�›'`ññªñññ°@J;;;;;U;;;;å ; ;ˆÀSžï3{Að@J ¦J é`oà oà *oàoàZ!0¾pn 5n n y+`~ U~ ~ ~ ‚!Ÿ‚z V!V ªV V V V ¨§!òQÚPÚPÚPJÚP7 ?¡ZÐ šÐU šÐ šÐ šÐ šÐ©¦Ñ~ ~ ~ ª~ ~ ~ ’#y§€‰À00Z00÷ðø‰Àš(0(0ÿð°40 jXP XPXPåç@ªH0H0H0H0¢H0T1CášÐšÐêšÐšÐ’#x©&×@�0�0�0¦�0 /IP•0•0ª•0•07 7 ª7 7 7 7 *7  7  7  ¹1ZЩÓ!ZÐ ZÐ ZÐ ÊZÐ ZÐZÐ ðwU40404040S ìÅ`@ @ @U@@@@U@@ •0 •0µ •0 •0 Ü,RvK r� ž‘r�r�•r� ¡äc�_@šH0H0ÝÊpo@!iÐiÐiÐ&iК¤ÀB b!B =b#�‚†�° U° ° ° ° U° ° ° ° U ° ° ° ° U° ° ¶�¾‘ªgÀgÀgÀoÁ¯‚œ# Q� Q�TÁ±Q�Q�Q�Q�¥° À!   ª        š  �«�Q0ªQ0Q0Q0 Q0 ªQ0 Q0 Q0 Q0ªQ0Q0Q0Q0©�~�‰0‰0‘1¯‚›¯ ¯ š¯ ¯ Ž~�®0ª®0®0®0®0ª®0®0®0 ®0 ª®0 ®0 ®0 ®0ª®0®0®0®0ª®0Q0Q0Q0¾A‚š  J  M1  ©A" " " ª" " "  "  ª"  "  "  " *" " " [A« U« ¯ ¯  ¯ U ¯  ¯  ¯  ¯ �Ç£™',�<�L‘TQ�P‘Q�Q�Q�‰U‘Q” U�e�Ü@Tu�…” T° T° T°UT°T°T°‰””�¤�´�Ä�Ô�ä�ô�­­$­4­D­T­d­t­„­”­¤­´­Ä­Ô­ä­ô­½½$½4½D½T½d½t½„½”½¤½´½Ä½Ô½ä½ô½ÍðÍ$Í4ÍDÊÐ&þôó ÃUúXÖeÿ<÷Ê…ÿ`7Æ¡ÿ„k2!ÿä˪•ÿxS ÿÈ»®¡ÿ”`M:ÿ&ÿìÿØÄ±žïŠvëÐP9ÿ&öä¿Ð¼©‹€‚ïn[—€5"û£€e2.dlûl3‹�†Ñ_9‰À‹�¿…ÿcÐþÐy÷•dÔ‚CÝiÔ‚ÍÌÜ€Ãõ�ðâ€\�Êè�ø„éþ”C1046CNý8í‡2YIC-+5V TO -�ÿCONVERTEÿR_HGGF<2ï0?f²‚š™É @ÓÀ¨Ê€ÐÐ�à�²ð€4ô†\‘2N�V¿OLTAGE—\îœ)\cÄ€�Â=MAË�"A:�J“Öè„Ç136󃾔j’RAßIL-TOÒ’ OÿP-AMP\FEwED; —ìQ,Ä€wš™ ™�= ï9�I”ê·–03”&¢j’ÿADJ DC/DéCv˜ç–j²‚…ë%îÄ€\� ™��Âíô­I”æ·•281CûN*�  OBSOÿLETE OFF÷ER ¼�180A÷CN �¡*2N.¿`_^^]: ‘`ÃõDÄ€ö($Ι�×£ Ÿ�{­28ç0CNò¥j’DRI~�/RECIE�_VDCCB»¢g²‚wq=jÄ€ ×7™�§¤p%Õ­I”ðƒ¦6ø÷¤V±’TRIPLÿE,CURREN¿T FBK ã�]º¶h²‚\�^ù’9Ι�335½¯�25ñ9ø£½±³UAL ^n¶/BACx²^¶½b²‚33 B/PÄg ‚ŒÀÿ°œ¤À]�ÌÂà ÀÀUÀÀÀ À© Á À À Àö ÀÈÌÂÂ+ñÀU À À À Ày À/PÁ .ð•áКáй àÀ®eÃÀvÀzÀºB eÿzÀ ªzÀÀÀÀºÀeþ B ªB B B b#»«— — — ª— — — — ª— — — — Ê— — — /Pºå— ÑÓ¹ ¯—(Ð(К(ÐvÀ�½<Ð)™!ÀDÐöÁÁNPÐùPÐ/P¸y«ææiÑ—. · <Ð zÑDЕDÐDÐDÐ/P¶«DÐDÐDЪDÐ DÐ DÐ DÐ ®ŽÓµ qÐqЦqИÍÈÐÈЪÈÐÈÐÈÐÈЪÈÐÈÐ ÈÐ ÈÐ ªÈÐ ÈÐÈÐÈЪÈÐÈÐÈÐDÐ’DÐŽÑDІÑXÓ´« zÀzÀ qÐ ªqÐ qÐqÐqÐúqÐ ÐÑ‚³ £V‹0ÙqÐqЪqÐqÐqÐ qÓ²« zÀ zÀ zÀJzÀ{á–Á�à�à•qÐqÐIá@À ª@À @À @À@ñ« aÐaÐaЩzbÐÌàÌàVà Ê�à �à�à/P°¥1á•ÁñàñàJ�à�àäá�à�àU�à�à�à�àÕ �à �àä㯠o ö0À@ÐU ñà ñà ñàñà¹ñà/P® Zà)”ÉñàñàRññàUñàñàñàñà] Ró­ @Ð@ÐU _ð _ð_ð_ðU_ð_ðgñÀ ÂO§ à™@¹ð ¹ðU ¹ð ¹ð¹ð¹ðU¹ð¹ð00é10éñšþôsÝ[ü€�»’mÿ0ÿ²eÿHóÒ©ÿx#¾�ÿ`&áÿ¸“V%ÿØ‹nÿøÏžIÿ䳆a÷/Pç°4ÁWW± Àcµcc² Âæ« W W W ªW W WWêWWc‚å§ ¯½©©J©W_WWÕWWÁ‚Oä ‘JÚ ÚUÚÚÚÚS’ºöööMö®À ©U©©©©U © © © ©ù ©/Pã ]¨`Ñà   ª     ª     ª   ©ô6©6â ­T}” ” ” ”U””””ù{G‚á Tö””””U””” Í?‚à ¬°àîUîîîî]åß Zà ZàU Zà ZàZàZàUZàZàÚÚUÚÚÚÚUÚÚÚ Úå Ú î/PÞïd ¿ î ž[#Ý«h� ª� � � � ª� � � îRî[!îîîÕîî[#ÜS ªÀÎ Î Î UÎ Î Î Î U� � � � U� � � � å � � /PÛ ©Éàp CCªÎ Î Î Î ÊÎ Î Î /PÚS©lL0 L0 L0U L0 L0L0L0UL0L0L0Î uÎ C3ÙL0UL0L0L0L0ÕL0L0 ‘1‚OØ ¨À®0 ®0U ®0®0®0®0å®0®0/P× ©§´à×0×0×0ª×0×0®0®0TÎ1®0®0®0Q¥V cb cªkc c c c c o  � Ÿ ¯ ¿ Ï ß ï ÿ /?O_o�Ÿ¯¿Ïßïÿ--/-?-O-_-o--�-Ÿ-¯-¿-Ï-ß-ï-ÿ-==/=?=O=_=o==�=Ÿ=€¯=¿=Ï=ß=ï=ÿ5ˆpêˆpˆp û1t ¾ôõ'í\Zþ§Š} ÿ«Fèÿ.Äÿ‡rY@ÿ'¾¡”ÿ#Â]ÿÿ–EÿÛž‰pï[Fù°÷ &iÐ »¤àU€U€ù°/ö\Áà5ÐU€õU€]ƒõ ºÔ ÀU€U€]ƒôU€€ € €U € €€€U€€€U€uU€]ƒóÐ@ÕÐ@Ð@ Ð@¹T=Àá€á€á€€¥€�€€ú€�‚ò ÿ  5©·ù@� � � ê� �°óñ jÐ@ Ð@ Ð@¸!ÀªG�á€á€á€ªá€á€á€á€ªá€ဠဠဠêဠဠW‘‚ð«� ��ª����ª�G�G�G�ªG�G�G�G�ªG�G� G� G� ªG� G� G�G�úG�´‘‚ï �Ý�ØA.‘��K€î§¶W@    ª      ª    ª���°ðž°óí ´ÀS  jS  S S µ”@ªg g g g  ªg  g  g  g  ªg g g g ªg g   ú «¡‚쩳À¸ ¸ ¸ ªS S S S ªS S S S ªS  S S S JS S Ô¡g g õg o¡‚ëUM@M@¸ ¸ U¸ ¸ ¸ ¸ U¸ ¸ ¸  ¸ U ¸  ¸  ¸  ¸ ¥¸ E±°ð °ð ª°ð °ð°ð°ðê°ð°ð°óêºM@MCéÐ@ ªM@ M@ M@ M@]Å ÂècIAªcccc’c§±M@MAM@ªM@M@M@M@RM@ ܱ   ñ¯£ JK€øû÷À1µ U€]ƒ÷P‰ Y�i�y�‰�™�©�¹�É�Ù�é�ù� ��)�9�I�Y�i�y�‰�™�©�¹�É�Ù�é�ù� ­­)­9­I­Y­i­y­‰­™­©­¹­É­Ù­é­ù­ ½½)½9½I½Y½i½y½‰½™½©½¹½É½xÙ½é½ù»`ôs+é]€ý[€“zIÿ8ú¥pC2 €ÿ¿†yXÿÿ¢mPÿ+B!Ìÿ—jY4ÿæ­ ÿ&É”ÿwfVƒ ÿTÀzïpHÀƒ \\``þ`\@]f \\U\\ \ \U \ \ \–ú� � rû¿ Œ šÇ Çþ�ÓªÓ Ó Ó Ó ªÓ ÓÓÓªÓÓ\\ô\\\ƒ _ q  õ™U0000U0 0 0 0U 0 000—š·ð»ð‚«Q€Q€Q€ŠQ€0`0VÇÈW@–V _Ö££ó9¯U··· ·Õ · Û ?> ËG`£©§¯¯ ¯ñ—eQ€VzÔú`   ϬPÀø ¸~”›§“w@! ! Z! ! ¾”@¿@¾B!ƒ> ºB F# > ª> > > > ª> > > > <> V ½ù@� U � � � � )„!> > d!н Óÿ&À¼TOðÆ Æ Æ Æ UÆ Æ Æ � ©¡!� � � ª� � � � ú� î!‚þJSÀ Æ Ú!� � y>!„"‚ý hý hßà—Æ Æ K€ü' \v  K€÷û Q€[Uj0j0Æ Æ ©L1Æ Æ Æ ¢L3ú¶ * * z)ÀFÃù T,ÑÐ@* * * U* * * * U* * * * U * * * * QŸ1Ì1! ! ! U )À)ÀFÃøVÕ[ Ó Ó ù@5@Ç›j z Š š ª º Ê Ú ê ú *:JZjzŠšªºÊÚêú --*-:-J-Z-j-z-Š-š-ª-º-Ê-Ú-ê-ú- ==*=:=J=Z=j=z=Š=š=ª=º=Ê=Ú=ê=ú= Jï^!ôó I¯`\·ÿB ćÿv)اŸI .âÿm4ï²ÿ¡TÒÿIt[|þ@0úQ€Q€ ýÃ>B4 9¥ j�Q&Àr€ r€ù[ïP~€Î¾†€ŠŽ€šŽ€ Ž€Ác𞀦ž€Â–pª€ª€ªª€ª€ª€ª€ªª€ª€ ª€ ª€ ªª€ ª€ ª€ª€Jª€ª€æ�oPoP5oPoPÉ–p�U����U��� �U � � � ‘?ƒ!Æ`?�U=@=@=@=@•oPoPsQoPªoPoPoPoP*��‘Ê `ƒ�5 ƒ� ƒ�Ë¢p“�U“�“�“�“�U “� “� “� “�å “�“�@ ªµPµPހހ¦Ž€‹O@Ü�Ü�êÜ� ƒ� �‘ƒ«õ@˜@˜@&˜@ˆP   ¡ PU P=P=P¬@¥¼AOð-  - Ê- - - @S yk€J  J J S{üÀ?� ?�C‘ª?�?�?�?�*?�=@=@=A=@]=C J  J ¹J @ 6À iVŒ@¬ ¬ WBPª¸ ¸ ¸ ¸ ª‹@‹@‹@‹@ {?A ì&ÀJå  å¡]é�ñ  ñ MÜ�¯p‹@‹@‘ZA±úPúQúP®úS ¬ ¬ ª¬ ¬  ¬  ¬ ª¬ ¬ ‹@Ü êܠܠܣªõ@õ@˜@˜@R˜@œA˜@ ˜@ ˜@S{ö@      Í  ‰þ�›°¹ÔO@£°£° £°ÄT_ð³°³°³°³°å”ð”ñ”òƒUöPöPöPöP©à±- ¬P¬PT¬Q¬P¬P¬P1A*¬P¬P ¬P ¬SM.Hd�t�„�”�¤�´�Ä�Ô�ä�ô���$�4�D�T�d�t�„�”�¤�´�Ä�Ô�ä�ô�­­$­4­D­T­d­t­„­”­¤­´­Ä­Ô­ä­ô­½½$½4½D½T½d½t½„½”½¤½´½Ä½àÔ½ä½ô½ÍÄ€Åôs`õrõq� (T2P    M )_P!!U!!!!U!! ! !U ! ! !!U!!!!M!*_PqqUqqqqUqq q qU q q q‘¯‰ ­ ­ ª­ ­­­ú­­ŠªÑÑÑѪÑÑÑÑ ªÑ Ñ Ñ Ñ ªÑÑÑÑšÑыҪª  ª   ª¦ŒÒiiªiiiiÒiPmàˆˆ'>p@À³‘PœùœÀ û­ ©&„@¹¹¹ª¹”””ª”””ÕŸƒ ×màî é1.Pöö%« ¹¹ª¹¹¹¹ª¹¹¹ ¹ J¹ ¹ ½hÐhÐ5hÐhÐÌ–pN UN N N V!ÿƒ+Ík :uàs LR^€MXÀ ˆˆ•ˆˆ�ˆ©qÖŸ Ÿ sÀªsÀsÀsÀsÀªsÀsÀsÀsÀ êsÀ sÀ ³!ƒ« 5@ 5@ Ð RÐ 7áXÐXÐXÐUXÐXÐhÐhÐ]”ÓQ€1ªœðœðœðœðªœð œð œð œð ªœð œðœðœðªœðœðœðœðRÐCá×À×À×À•XÐXÐdÑXЪXÐXÐXÐÅÓ•(P�ÀÀ`�Ra€a�a€a€a€Ua€a€a€ a€U a€ a€ a€ a€Ua€a€a€a€Ua€ˆðˆðˆðUˆðˆðˆðˆðUˆðˆð ˆð ˆðU ˆð ˆð ˆðA:ÍJÍZÍjÍz͚͊ͪͺÍÊÍÚÍêÍúÍ ÝÝ*Ý:ÝJÝZÝjÝz݊ݚݪݺÝÊÝÚÝêÝúÝ íí*í:íJíZíjízíŠíšíªíºíÊíÚíêíúí ýý*ý:ýJýZýjýzýŠýšýªýðºýÊýÚýêóJþôóÓaú`K?'–ÿE”CÿàÇzÿQ(*ÿÙ(×®ÿ™t[ÿå¼›‚qT'ÀO;õÛ`J€J€�J€a.ÀZ€À:-÷‰pk€ÀO9� g€ k€ã Šp„€À8ªg€g€ k€ k€ òk€k�ˆƒ7 '· ²€>˜ R·¾€ t§0vt| G€oƒ6 ²�•=| Z³€9~`ç€ *ç€ ç€ç€ç€ÀW5²€²€²€¥²€¶�²€²€©<(` � � �j߀ ߀ ߀ sq`Ö<�uP@yºPƒO4.÷PQ� ç€íç€zI’3 ©›� Q�Q�H�ja�a�a� ß²b/2®z}v“�y“�À1 w@@ª¤� ¤� ¤���ª����“�›“0§àßPÍ�Í� ‹‰³·¶Ù�ªç€†�†�†�ª†� †� †�†�j†�†�†�à²bÏ/+œP@ �Tu`& & & & U &  &  & & 5& & žu`R UR R R R UR  R  R  R U R  R R R µR R Ÿ@@T3 –  –  – – U– – – – M– Î¾ ¾ ®À.     ª      ª & & & ª&  &  & & RR ±’  q_ƒ-)qq5qq+r0°U0°0°0°0°U0°0°0° 0°U 0° 0° 0° 0°¥D±Od@l°l° ªl° l° l° l° ªl°l°l°l°¦l°Pypœ°œ°ªœ°œ°œ°œ°ꜰœ° ¤±ƒ,òöñ^À+,¥LipÕ°¦ÓPݰݰµݰݰÇApÇŠ�š�ª�º�Ê�Ú�ê�ú� ��*�:�J�Z�j�z�Š�š�ª�º�Ê�Ú�ê�ú� ­­*­:­J­Z­j­z­Š­š­ª­º­Ê­Ú­ê­ú­ ½½*½:½J½Z½j½z½€Š½š½ª½º½Ê½Ú½êºKÊÓPË×PiðiðUiðiðiðiðUið ið iðÖÀ¥ŠÐŽÑŠÐŠÐªŠÐŠÐŠÐŠÐªŠÐ „€ „€ „€©cÞpÅðÅð Åð ªÅð Åð Åð ÅðêÅðÅðÅðÒý$ôs ”dõ_8ð]8ð[Úÿ¡,¯nÿ=$ãÆÿ¹”àzÿEìÿñRG9ÿ+ þÿïàÑÂÿ³¤•†ÿêwi[ÿKßÒ4ÿ óÝÿDZš„ÿlU>(ÿù¼ïß3µ÷P­ÿ esÿ‡ÛqXÄ@(™Ÿ»Š£Êapfÿ_hdÿ)\§@2{ýX¯š™(Bÿ®Bß®GB23ð…ߘBúY¯ ß×£0?2Á?d�Âõ>ô²¿®Ç>èèhú½¤®33ÿA= ÿ@d¿ÍÌÔ@,²šÿ™y@è{Ž?jÁoÁw͇Á·Á·ÍÇÍ×ÍçÍ÷ÍÝÝ'Ý7ÝGÝWÝgÝw݇ݗݧݷÝÇÝ×ÝçÝ÷Ýíí'í7íGíWígíwí‡í—í§í·íÇí×íçí÷íýý'ý7ýGýWýgýwý‡ý—ý§ý·ýpÇý×ýçöP*ù0Õ!@j’A:š@ åþ¢@P¯%ùÁµÂ$§¹0¼@³@ Ö³@ ä×`w²b#SFO PPP¥PåAW`W`ªW`W` W` W` êW` W` cc"™Î3ÀP†`"P<"P—P! P“ 3PU 3P 3P 3P3P¿' À­0³ä¢`SPSP—P odPâ©&£ pPpPpPªpPKPKPKPªKPKPKPŒQŸƒ ×m`¥P i1a0­P­P%³ ª¹PpPpPpPªpPpPpPpPªpPpP pP pP JpP tQË`õPõPMõPÌÆp``Õ`` aƒ+"`³:u`*`L7ÀMT±6`3P3P3På3PGQ3PqkV`V`ÁÆpªb`b`b`b`ªb`b`b`b` êb` b` jaƒ§ P—` é@ šé@ é@Êæð«`ª«`«`«`õPòõPõPù`0§Ðaœpœpªœpœpœp œp ªœp œp œp œpªœpœpœpœpªœpœpé@é@©É‘p p p«`ª«`«`«`«`ê«`«`4qƒ«(Ð`Ð`Ð`e 3À•papÃÆpªipipipipªipipipip ªip ip ip ip ªipipipipšipipÄÆpµpªµpµpµpµpªµpµpµp µp ªµp µp µp µpîÁqðôóÏàbÌ0çÿÖ¥PÿÞ�T+ÿñ¬ƒÿ2¥¬ÿWå”ÿ[2øÿ³Š9¬ßWm`a€JS@…ÀM€M€ M€M M€¯ a€a€S¿ m€m€m€Um€m€m€m€Um€ m€ m€ u�_ƒI"a€a€Ya€sa€a€Ua€a€ a€a€ea�÷³ ΀ø¿ jÖ€OPOPÛµ0ªæ€æ€ æ€ æ€ ¦æ€1Àþ€þ€¯¶ � � ¾ �¼�ò��÷°H ½T�0/� /�/�/�S ¿�0C� C�C�UC�C�W‘0›@ª_�_�þ€þ€ñ l�s�÷°E ’Òâ0?`„�„�&$�Àé�Ap˜�˜�÷°/D s ²0­�• ­�¸¸˜� ª˜� ˜� ˜� ˜� ª˜�˜�˜�˜�® “C ¨À ¨À ¦¨À ¯©Àú�¦�_ƒBB7ÀK±ª   gÃA§ .¼ ( (  š�� ��hê< ò<  – ÷°@ “ÔÒQ Q Q ”Tú0a a a Ý05Ý0Ý07À2Àž÷°?¤@} ª} } } }  ª}  }  }  }  ª} } } } ª} } :À:À~Ρƒ> b¨ªÛ Û Û Û ©fÖ0Š Õ0} ú} ÿ¡ƒ=ªa a  a  Õ0 JÕ0Õ0÷¡– H¡ª– – – – ú– H£< º« M°¾ ¾ ª¾ ¾ ¾ ¾ ª¾ ¾ ¾ ¾ ª¾ ¾ ¾ ¾ ²¾ ‰±´À9‚B;§ õl�¢°¢°¦¢°aEp²°²° ª²° ²° ²±Ž‚B:ËÀ Á>Ã9SkÀ À Q@] Ã8Ó°Ó° Û³J"L�\�l�|�¾Œ�˜C�”‘þ€o‘ãl�rÀ¦rÀ÷Á~À~À ~À ~À ~Àœ�¬�¼�Ì�Ü�ì�ü� ��,�<�L�\�l�|�Œ�œ�¬�¼�Ì�Ü�ì�ü� ­­,­<­L­\­l­|­Œ­œ­¬­¼­Ì­Ü­ì­ü­ ½½,½<½L½\½l½|½Œ½œ½¬½¼½x̽ܽì¸0ôs^`ÜcÌ0aÌ0ÿo a¸ÿ?Òyþ�‡"yÐÿWê‘LùÇ1*RíçóePF÷«NNNªNNN N fNe±j /U0\z*QÀÀÍÀA±“OT±››››3 ¹¯LP÷À¥ ÷À ÷Á~ÀÇù—ÏÏ*P¿òÀ²ä)0ì!0T¯ øøø·U····U····ª· · · · æ·}wZaƒO§N˜àM M ªM M MMªMMMMJM›£¯¯•¯¯ ¿~À j~À ~À~Àø *©ÏÏ××WN)ôôôUôôôôe­PµQ­P§ ªîîîîªîøøøªøøø ø ªø ø ø ø4OPOP ¹›@ÐS½eÐF F F UF ©©©}b!ƒM)ÀU À À ÀÀ¥ÁÞP‡ ‡ ª‡ ‡ ‡ ‡ ª‡ £ £ £ ª£ £ îîªîîîîªîîî î *î î î Ë!ø%ø !^ÁpƒÀ©u© f#L¥PU¥P¥P¥P@U@@@~�0j80 > > ö¦*H0~À~ÀŽÁ©U © © ©©u©f#K#s!ª•€ •€•€•€ª•€•€•€•€ª£ £ £ £ *£ £ £!oq0½0U½0½000U0000U00~À’ÃCRA Q a qzUzzzz*y z ~Ÿ>à&À &À &À ûÓ„ ” ¤ ´ Ä Ô ä ô $4DTdt„”¤´ÄÔäô--$-4-D-T-d-t-„-”-¤-´-Ä-Ô-ä-ô-==$=4=D=T=d=t=„=”= ¤=´=Ä=Ô=ä=~ÀÔ¯A‘P‘P‘Pû>ôóïÍëdbƒEtïÿ‡Ix¿ó6*G€X§. ý¨@,€ ,€ ª,€,€,€,€¦,€þeÐL€L€ªL€L€L€ L€ ªL€ L€ L€L€JL€`�ÿ¤@€€ €€U €€ €€€€€€¥€€€€oà@Š�àþ°gÀ´‚ÀðU ¤€ ¤€ ¤€ ¤€U ¤€¤€¤€¤€ý¬�ƒW ÎR_à¾@í€í€í€ýí€ÇÈT@ p p p pU p p p pS„�ð)�)�)�M)�…`=�=�U=�=�=�=�U=�=� =� E‘?ƒV3 6ËÐn�Un�n�n�n�_7†�†�U†�†�†�†�U†�†� †� †�U †� †� †�†�U†�†�†�†�S8‡�Ò�Ò�Ò�UÒ�Ò�Ò�Ò�U Ò� Ò� Ò� Ò�U Ò�Ò�Ò�Ò�UÒ�’ð’ð’ñª’ð’ð’ð’ðº’ð’óU1þ0 ªþ0 þ0 þ0 þ0 šþ0þ0‚Ð[ J[ [ c¡ppUp p p põzz0U� � � � U� � � � U �  �  �  � U � � � � U� ÎPÎPÎPUÎPÎPÎPÎP¥ÎPÊQôAå ÒT—�Òs °J °ØAÚ`°·@SúšP(°(°(°U(°(°(°(°U(°(°(°(°SûšPX°X°X°UX°X°X°`±_ƒS zz‘�±aŸAø¤@‘° ª‘° ‘° ‘°‘°ª‘°‘°·@·@ ª·@ ·@ ·@ ·@ *·@·@·@µ±(°U (° (° (° (°D±t³÷=MM'M7MGMWMgMwM‡M—M§M·MÇM×Eã�ó���#�3�C�S�c�s�ƒ�“�£�³�Ã�Ó�ã�ó�­­#­3­C­S­c­s­ƒ­“­£­³­Ã­Ó­ã­ó­½½#½3½C½S½c½s½ƒ½“½£½³½°Ã½Ó½ã½ïpÔ"ôs¿lLe€cþ€>Alÿïò-0ÿ[ÞQ4ïßw%�^*þ°þ°*å@6{gÂ]"ì ÀªGGÈÀ$P©ñ@[[[ª[[[[ª[ [ [ [ ª[ [[[ª[[[6ª6666ª6666 ~¯ƒ\mVÐªÔ Ô Ô Ô ªÔ ÔÔÔšÔÔnðj 4ЪjÐjÐjÐjЪjÐjÐjÐjÐ*jÐ jÐ jÐ ÒÑ?ƒ[4Û‡pQßÜY ÑTFPaaaaMazVÐy yU y y y yUyyyyS{𥥥ե¥¥ TŠPÁÁÁÁMÁšPÙÙUÙÙÙÙUÙÙ Ù ÙU Ù Ù ÙÙÕÙÙáƒOZ> ^>P& & U & & & & µ& & _ZPjR)PkðR R R UR R R R UR R R R U R R R R 5R R lðš Uš š š š Uš š š š U š š š š Uš š š š UÔÔÔÔUÔÔÔ5ëЪþ þ þ þ Êþ þ þ iÀY0S çDà#0 #0 #0U#0#0#0#05#0#0 ëDàK0U K0 K0K0K0UK0K0K0G•Gs1ðÀ{0ª{0{0{0{0–{0ñp0;ˆÀ›0ª›0›0›0›0ª›0›0 ›0 ›0 ¢›0 «1uaa Ja a a&�>+�¨;�K�[…@@R`„ d�t„x„€€€€€€K[k{‹›«»ËÛëû --+-;-K-[-k-{-‹-›-«-»-Ë-Û-ë-û- ==+=;=K=[=k={=‹=›=«=»=Ë=Û=ë=@û= MM+M;MKM€€U€€€€€€€€€€���Ÿ�¯�Àùp°±�Á�Ñ�¶qîôó ¿.gdþƒö¥ôÿWјÿg.=ÿÓš9÷{iÀf :ÚÀ*{à{à3� ÕÀ?€“¨G�²>ÐO€ªO€O€O€O€ªO€ O€ O€ O€ JO€ w�×퀀žiÀe ä’p�€ª�€�€�€�€šûàûàö#P°€ êTð Tð pód ™4ðàÉ€ i¼àÑ€jррр7Æå€½*Ðí€iÀc 37ÑÀú€ Žw@�U� å€ å€ å€eå€é�倾JÐ\&�iÀbå€å€Uå€å€ å€ å€U°€°€°€°€¥°€´�°€ °€ ʰ€ °€ °€iÀa3ÑÀ|�+À„�5¬`¬`;å€Åå€G‘"‘倘xNЬ�iÀ`&8+Àd¹‘BÀRÁBÀ¸ªÍ�Í�Í�Í� ªÍ� Í� Í� Í� ªÍ�Í�Í�Í�ªÍ�”�”�”�ª”�”�”�”�ª”�”� ”� ”� ª”� ”� ”�”�Ò”� ¡¬�°“_+©ñðððiÓ+Àf f .ÕÀRr :Á>> >U > > > >U>>>>S¨ª ª ª Uª ª ª ª Uª  ª  ª  ª U ª  ª ª ª Uª ª Í�Í�¥Í�ú¡%) ª6 6 6 6R6656>©>>>>> N ^ n ~ Ž ž ® ¾ Î Þ î þ Š�š�ª�º�Ê�Ú�ê�ú� ��*�:�J�Z�j�z�Š�š�ª�º�Ê�Ú�ê�ú� ­­*­:­J­Z­j­z­Š­š­ª­º­Ê­Ú­ê­ú­ ½½*½:½J½Z½j½z½Š½š½ª½º½Ê½Ú½ê½ú½ Í à)9Êð¬Àôs ¯Ôj€h€GÿÚ¡XËÿ6ɤƒÿ>!ŒÿÿjýØÿ·rUD÷r)€“ ‘»>®)€’>¨`e@ZÐ_Pi"p?ƒ‘º?ìá© ¹`ppp–p¹`GÑ`W *W W�^Ð_P¹_P)€� „šˆˆjp¹ú¹½ƒ� ¥m`WœàÒÒVÒX]`˜�` ZÐ?ƒŒÎ?óU óóóϨpš ç;ªÎΪÎÎÎΚÎΆ àC&C©™`OO)€O‹$ͨp``U ` ` ` `U ````¥`„óó¦ó6•`  j    ½•`ª¸¸¸À¾ôõàÌ Ì U Ø Ø ØØ¹Ø)€Š"`ª````R€5œà   U      U C CCCJ¸ÌA![P[PU[P¶@¶@ ¶@U ¶@ ¶@ ºAÚˆ€êm m m!ƒ‰§ ÖÕ`‚ ‚ ª‚ ‚ ‚ ‚ ª3€3€ºÀºÀ¥\Šp¼Žp² ² q~àÀ¾ )€ˆ Uêêê ºÀU ºÀ ºÀ ºÀ® M® ]pó ó ®)€‡óóªóó ó ó *ó óË!š Ow@80J8081-9ðH0H0eH0H0ûp\0ãpÄpd0)€†-4œóI¡`}0ÓJ�`…0…0QL<€‘0 3Ø ™0 ™0U ™0 ™0¥1,5ðª±0±0±0±0ªH0H0H0H0ªH0H0H0H0*H0 H0 H0 Í15¥9>=> ­F V f v † – ¦ ¶ Æ Ö æ ö &6FVfv†–¦¶ÆÖæö--&-6-F-V-f-v-†-–-¦-¶-Æ-Ö-æ-ö-==&=6=F=V=f=v=†=–=¦=P¶=Æ=Ö=æ; p ¥qêz`z`z` 2«ÕpÕp¹ðê¹ð¹ðáq°¾ôóGeþ‹Á\ÿ3î¥,ÿ³Þy,ÿßb èÿ“&Ù ÿGn�žÀzEóÐ=€¥M“À�o`I€]Àú]À]À$¦]€%Mðe€e€ªe€e€e€e€e×¢ðØzð…€ ¹,B§y á]€'@ª'@'@ '@ '@ ¦'@º-À¶€¶€v¶€»,BxI€UI€I€ I€ I€¥ I€ ß�]€ ]€ ª]€]€]€]€ ª¶€ ¶€ ¶€¶€<¶€Àw@=@�U=€=€E€M�*I€ß�1rÀ#Að@�U@�]€]€]€•]€]€š�]€*]€]€ ]€ û��€å�€…€Àv*E€<�@�D‘�ÀU�ÀºÀºÀ…€5 …€ …€ÙŸ€µ�_ù½�½�U½�½� ½� ½�®Àu @� @�ª…€ …€<À<À ®Õ“t@�@�ª@�@�@� @� J@� @�€‘…€€‘ª<À<À<À<À ¦<Àø9À½�½�¼Õ‘Õ“s ùP?T`öÐöÐöÐeÀ•eÀqÁ"Aðx h¡â‘@�@�ÀB`Z� �  Û–ðŸ1Àj      ½Êpª° °  ½� ½�ê½�½�Õ“r™’_`Õ  Ôo`n`ªn`x x x ªx  x  x  x  *x  x x  ±œ ; 4,Bq×�<�S !ØÀ*° *° *°U *°*°*°*°U*°*°x x x x ±œ ÀOpRNÐI€öÐU öÐ öÐh¡ e𪇰‡° ‡° ‡° ª‡° ‡°‡°‡°ª*°*°*°*°ª*°*°*°*°~³±ƒo4FNЪ԰–À–À–ÀTM�úФP¤P¤PÕ¤P ¤P <�4!pÀÀMðÀUÀÀÀÀUÀÀÀ ÀU À À À ÀUÀÀÀÀUÀÀ‡°‡°U‡°‡°‡°‡°U ‡°‡°‡°‡°¥�±÷9ð'@'@ö'@ }¿Ânï2 `ð`­À !U@µÀU Ð Ð Ð ÐU Ý ÀÀÀUÀÀ À ÀU À À ÀÀ%ÀÙÁ� �¡° Õ °  ° Õ“m“:Ô@"Ð&Ñ­À L±Á­Àbp:Ð :Ð5 :Ð :Ðk`NÐUNÐNÐNÐNÐUNÐNÐNÐ NÐU NÐ NÐ NÐ NÐ%NÐrÑp  p äÐol ¿’ðˆÐ—ŸÐŸÐlÐU¯Ð¯Ð¯Ð¯ÐU¯Ð¯Ð¯Ð 0pÕ 0p0p4sk+õíà%k`/ÿÐìÐU°° ° °U °U€áj·@*›Ð›Ð›Ð›Ð•àOj >@›Ð›ÐS ³Ž@ƀƀƀëÔÐo�bi¦X =ðVàVàªVàÀÀÀTýÁ¥�¥�›Ð ›ÐUµ�µ�5à 5àÕ 5à 5à 5à5”Êð¢à¢à¢àæàhWü$Pe~@Ñ=@ª¿à Và VàVàR›Ð›Ñµ�µ�µ�U 9`9`9`9`•9`œ f±f³g«X Õ ¶@ª¶@¶@¶@Và*VàVàVàÏáVàUVà Và Và @ñJµ� µ� ãáµ�9`U9`9` 9` 9`Õ 9` 9`f³fU "Ðn`n`…ñ© Z€‘ðVà™ñ²Tuð¡ð¡ð¡ð¡ðU¡ð¡ð¡ð ¡ðU ¡ð ¡ð ¡ð Íñj�€�€�€ QÒp¯9 åð åð÷šôs 4× f€g€Çÿž],$ÿ[†Õ4ÿZð†ÿ²MèOÿöÂJ4ÿòÜÿưæšÿ„nXB÷,B`êÔÿ¿©“}ÿiS>(ÿüPÍÿóÁ>ß/ øàÿOle2.dll=3õpW†À`~õrProgID”Þõqeh]b@Yþ„Ð…›@÷¸Z®R¸\¾À{˜A2ÄŒ÷AdeÀ´BÝõp–BdõppBý, `Ãõ.BèßHáÚ?è–ð�Âïu?¢”MC6ÿ8HC705C8ûCS 2YIC-ÿMCU 8K OÿTP[NMML?ï20?Ø33;:áçÍÌí ý " Po$4j>NÌ^ FNÔ‰SM~�`POON@žw(á33ç§ff·Ç¦Ï1w1F1à11DG þð8-BIT CÿMOS CPU`ßLKKJ>ž\�ÝDáö(ç ×#çA"-2-B!EG(°!ã2NX-h-ÁázRîá)\ç×£!-›-«#0²(0À-Ð-þØffæAq/=œAdU0Š‹-=ÂM#0{‚2*22;[JïIIH=9ìQ8îáq=ç�Âõ_=o=A"A1†6é0’=œ¢:¢{,¸4s@…§'^`*@*@ ”*A¶@¶@ £a¶@ ª¶@ ¶@ ¶@epªepepepepRU€á}p}p}pU}p}p}p }p• }p }p ŽAz` TÍq¯Ð ¯Ð ¯Ð ·ÑªIàIàIàáp\áp&P„+epepÓ*u�Ó@Ó@+T ß@ß@ß@ß@Uß@ß@ß@ß@U ß@ ß@ ß@ ß@U ß@ß@ß@ß@Uß@}p}p’AT¯ÑIàIàIàIàUIà Ià Ià IॠIà KQÕp Õp ŠÕp Ýq3£àoP»Pƒ«4epàà©)̰ˆPˆPˆPªˆPˆPˆP ˆP ªˆP ˆPˆPˆPªÓ@Ó@Ó@Ó@ªÓ@Ó@Ó@Ó@ªÓ@ Ó@ Ó@ Ó@ ŠÓ@ Ó@èQÍq0p ª0p 0p 0pÕpªÕpÕpoPoPªoPoPoP oP ªoP oP oPoPÊoPoPaÂC‚1U ðepUa'�Àª]` ]` ]` ]` ª]`]`]`]`j]`]`]`( Ê�`�`�`aª�`�`�` �` ª�` �` �` �`ª�`�`�`�`ª�`ˆPˆP ˆP ªˆPˆPˆPÝa{T§€Ñp ÑpÑpÑpUoPoP oPsS÷€¸àƒ~ UI€I€I€I€S�à2p2pe€Õe€>qÓÜÒ}•p à„Qજ œ áp áp ªápápápápê¢à¢à®ã| šµÀ µÀ\F€e€ªáp áp ápáp.ÂC{ Ô° l¡ qªe€ e€ e€ e€ �ÕqœÁ²�˜À­‘° ÷J$ôó ×ãmk7ÿ®Uü³ÿN  �ÿJзÿžQˆÿÿ¦MŸÿZñà›¿bQF��Êö²ÀCÐK€�€OÉ #p°X€X€UX€X€X€X€ÍX€ JÜ€x€SìÀ€€T“ÒÈ ¬©ÁG€ û ðå°Lp°¡€"á°©€ €€U €€ €€ €€€€Å€�3±PÉ€�Æ‹v–ðwk@Ú€�Å« Ö€ Ö€ Ö€*Ö€Ö€÷�} `ÿ€S~¿@���U����U� � � �U � ���ý‘ƒÄ {LdPP�|£àX�X�UX�X�X� X�U X� X� X� X�•X�X�X�A€Ã«P�P�P�ªP�P�P� P� ªP� P�P�P�ªP�P�X�X�Th‘ÿ€ ÿ€ ÿ€ ÿ€U ÿ€ ÿ€ÿ€ÿ€^A€ÂÃÎÀ2w@ªþ�þ�þ�þ� ªþ� þ�X�ÿ€Rÿ€ñ‘ÿ€ÿ€ÿ€õÿ€ñ“Á{4?€C C  B–€O Sƒ¸àx€x€x€S ŒdPg  g g Õg g g �T¿@ƒ ƒ ƒ ‹¡?ƒÀ ]CМ U œ ‘ð‘ð‘ðU‘ð‘ð‘ðÞ�ªÚ€Ú€Ú€Ú€ªÚ€Ú€ Ú€ Ú€ êÚ€ Ú€ Þƒ¿!©m#°õ  õ  õ  ªõ  õ õ õ jõ õ õ np°ª!°!°!°!°© ñ°5°5°5° *5° 5° 5° 5±Ö€5Ö€Ö€x}Pa°Ua°a°a°a°žA€¾1<_Ð~°ª~°~°~° ~° *~° ~° ~° бú�U ú� ú� 5°5°U5°5°5°‘ðU‘ð ‘ð ‘ð ‘ð¥‘ðʱþ� þ� *þ�þ�þ�¡þ�̓U�e�u�…�•�¥�µ�Å�Õ�å�õ���%�5�E�U�e�u�…�•�¥�µ�Å�Õ�å�õ�­­%­5­E­U­e­u­…­•­¥­µ­Å­Õ­å­õ­½½%½5½E½U½e½u½…½•½¥½ µ½Å½Õ½å½õ¹xÀT|ÁxÀxÀxÀxÀUxÀxÀ xÀ xÀU xÀ xÀ xÀxÀuxÀ¹ñnôs§Lïp�f€ãÿBПÿ²Ýçÿªu<ÿºm( ÿ¾©d'ÿ±L·÷¨A€®…×BB†WNNNUNNNN5N N ¿øpv5 v vq2ð†5††Ä7p–Á½ÞKr­0€÷«;5³³KIÀ¿ÿL„UËËËËU†††‰Àó/è@U³³³³ôÛ˃ª_¡õ 8U 1 1 à àK …6®›ÀIIžA€©¾Z–Z÷" IÀjÖjH€5à%ò@pDpæpQ/zŽŽA€g¨ zza�<§A€§ ÁûдU ´´´´5´´ÂOÔ5ÔÔ à&ä-ä æ?€fÐôþA€¦ R ª    ¾kQƒ¥äRäìä ä ä- äáCeÆ0ô5 E Eü•pN ç ~ìÀKr¤ ©P¬c c c ¦c QOw w ©tsð> > > ª> > > > º> ó£c ªc c c c ªc c c c *c c Ø!‡K: •: : > A€¢« ZN N ¦N .P 0 0ª 0 0 0 0öï(—¡ ýLNÀ20 2:0 :0« A6CÐDàI,ÈR0«ØäÌŠ_ƒ  J0J0•N0N0N1N0ªN0N0 0 0 º 0b3Ÿ:0ª:0:0 :0je6(ÈF0X? ©YÌ 0 0 0< 0A€ž3ØÝ05 Ý0 V tpí0¹í0A€›4>€Z>€ >€«g;@¦@ lC@@ @ š@ @•ƒ*@ú*@*@–ª:@:@:@:@ª:@:@:@:@ ª:@ :@ :@ :@ ª:@:@:@:@¦:@—;@‚@‚@ª‚@‚@‚@‚@ª‚@‚@ ‚@ ‚@ ª‚@ ‚@ ‚@‚@Š‚@¦A˜êpÆ@A€š§4ªK @ @* @ @ @ A @)ãA¤à¤à¸áñ`Õñ`ñ`ñ`|T;@PPPPUPPPPU P P P PU PPPP5PP};@_PU_P_P_P_PU_P_P_P _P• _P _P wQÆ@ºÆ@ Æ@1@�™—:õKöO¬Pj¬P¬P¬P:´ªÀPÀPÀPÀPªÀPÀPÀPÀP ªÀP ÀP ÀP ÀP zÀPÈQÙüPUüPüPüPüPU üP üP üP üPU üPüPüPüPõüPüPÚU<`<`<`<`U<`<`<`<`U <` <` <` <`U <`<`<`<`Õ<`<`<`ÛžŸ˜ Œ¨Pš¨P¨PøNÀ¥`*¥`¥`¥`“1Ô3O—ŸOÆ`Æ`'iÛpp¾`Ú`MÚ` Ò`æ` æ`Uæ`æ`æ`æ`Õæ`JpJs–S �sð[pÒ`Ò`UÒ`Ö` Ö` Ö`žA€•'»k8p š8p 8p½àHpTÈ1Ö`Ö`Ö` Ö`S ×ê0dpdpdpÕdpdpdpØT=`€p€p€p€pU€p€p€p€pU €p €p €p €pU €p€p€p€pU€püPüPüP®A€”8p8p ™þ˜ KàrðÖ`÷žôóQ×ij¿ÿ~Y,Ÿÿ*ý˜_ÿñзÿžQ^ÿ½ üïÿâÕÈ»ÿ®¡”‡ÿzm`SÿF9,ÿøëÿÞÑÄ·ÿª��ƒÿvi\OÿB5(ÿôçÿÚÍÀ³ÿ¦™ŒÿreXKÿ>1$ÿ ýðãÿÖÉXÿáz´?šÿ™™?d�Âuû?èrð@?úýd®€ìQ‚Bÿ= ~B ß\�wBK{wqB2²€jB^Í‚ÿ®Gá@ffwž@dK`@ô? ÿáz4@èÍ̵\ �¾‚a? ÿMJE13007þ"•2NTRANSÿISTOR,POÿWERTDCCB¿:20ÿjÍ‚H»áJù€š™ÿ€×w£Ð?‘…ë‘ �ö™5*ˆ” DISÿC OFFER ¿BUV46 ˆ•*ÿ2N.`_^^]öI‘?ZÍ‚\�6AýÑ€Ad¤p¹µ’h�u?d”8Ï02STê’2�ER¿P@??>9J‘\¸Í‚"Á�ffæÿ€Ã;õÐ’Àk�”?423SEMD¢öš} ?’RA@@?I’ÝaÍ‚ffÁ�33ÝÓÿ€¤p•’×£up/¬_?¥035ï‘ü¢¡öšDARLINÿGTONWBAA]@i¨š™!w¢ã]’ ’®G�‹­›§î’ر®­¾­ÿ_Í‚{Ý Á�…ëÁÿ€®GE‰ä¤‰ì­”&�1b³ô½´U ¡823Ýÿ¸“q=Âù€×£uˆ?²A’…/ ÷®GaÛ�J295Á5Á³ö�¤Š°.µÃõÝ Á�{Æÿ€ö(aŒ’û±­»š¥25f±ðÁn½~·À½rTàGÀGÀ…À…À¥ …À ¢Á‰À‰Àª‰ÀððñõTYp{À {À {À {À^ùÀ¼VÀ‹È*{À{À‹Ã»—@vð¦ép ðÁÑb÷ºsÉàì±Ñ½ÀÕ½À½À ½Ã¹UÆÀÆÀµÀ ½ÀU ½À ½À½À àŽ>иòѩѩЦ©Ð a•ÐÐЪÐÐÐÐJ½À½À½Á½À½À=½Ã· UoUÐ#Æ—±Áép±Á@S10qÐqÐÅÐu•ñ⟶HpU–– – –U –@@@0¶ðqЛ€�PÂðqÐUqÐqÐ qÐ qÐU qÐ qÐ qÐqÐåqÐqÐEൠªHp]ð]ð–J––]Ñ]ÐÊÀyÊÀEà´Œ” j–––ÅÑàª0à0à0à]ÐR]ÐáÊÀÊÀÊÀUÊÀÊÀÊÀ ÊÀU ÊÀ ÊÀ ÊÀ ÊÀ¥ÊÀá²ÐqÐzqÐêÓ³" p¬ª•àƒ ƒ àJ àHp]ñ–0àU0à 0à 0à 0àU 0à 0à0à0àU0à0à²Ð²ÐU²Ð²Ð²Ð²ÐU ²Ð ²Ð ²Ð ²ÐU ²Ð²Ð²Ð²Ñ?ƒ² ÀKË© –0à0à0àÔ<á²Ð²Ðó±S˜ ÀPÀPðQ*Hp‰ð ‰ð ‰ðAÀO°´ô@tðtðUOð Hp sÀ sÀi ˆñž žåA`ªœðœðœð ñ¯ƒ¯ïïªïïï ï ªï ï ï ïJïï%1ïÁñ— ôs@õrõqk¦€M”P ª ª    ©N;@555ª5555ª5 5 5 5 ª5 555š55O;@}Ê}}}o€©S”P• • • ª• • ••j•••T;@ªÁÁÁÁªÁÁÁÁ ªÁ Á Á Á ªÁÁÁÁŽÉ Xeà AÀÙg¬`ðT§Ðª    ª     ª    ª    ©U®ÀdddddŸ3@|AÀOØæp‰‰5‰‰£Ð�‹Tà«-àª~µƒ× àšÎÎcO Ú ZÚ  ?,pQ["—Ö  z Õ Wiઠ   ª    z Ó¾ÀªA A A A!¯ƒÒ||©ÛÀb b b ºM!+¾ÂÑ áp fáp DÂà‡ JÐñKþ “ AÀÐêLl0  ëÁP¨ ¨ U¨ ¨ ¨ ¨ Õ¨ ¨ ¨ ö’K0SYàÔ Ô AÀϨր Ð ÚÚýêÆÎ 3õ þ þ 4Í 05­P0 é”P000AÀÍ«þ þ þ ªþ þ þ þ i:¦`K0K0ÇÀÕ4-à5-à4ëÒÌS®»@l0l0l0åÚ`Ú`AÀË)£Ð‰0‰0‘1‡ U‡ ‡ ‡ ‡ U‡ | | |Õ | |€Ê 5Ð Ð ŸÐÖ0U b b b b Ub b b A =Q#É #£Ð@U@@@@U@@ � � ÕÔ Ô $ƒOÈ ïÁñPû•Àe-à£ÐP@"ÇÀªX@ Ô Ô Ô *Ô Ô /A3rÐx@®AÀÆ[ÀkÀ\kÀAÀÅ [À [À¥ [À_Á[À¦A}L-Ю@~9ж@¶@U¶@¶@¶@¶@U¶@¶@ ¶@ ¶@U ¶@ ¶@ ¶@¶@õ¶@¾AƒÄ3 {ôÀÿ@|EÐPUPPPPU P P P PU PPPP®AÀÃÿ@ÿ@ªÿ@ÿ@ÿ@ÿ@ ªÿ@ ÿ@ ÿ@ÿ@ªÿ@ÿ@ÿ@PRPQ®@ ®@ ®@U ®@ ®@ ®@®@9®@AÀÂÑ�ЩÎÁ�Ð�Ð�Ð T¹Á�ÐP®@®@© Q®@®@®@:®@ SÁ Ñ ÐÍ Ð B€ þPƒ¤± � �!� Ð ªÐ ÐÐКÐÐ�9Ð2`ê2`2`:aƒÀ« åp åp åpTkñgðgðgðgð¥gð�AkÀkÀªkÀkÀkÀkÀ ªkÀ kÀ kÀ kÀ ž�C¿!m¾à¤` ª¤` ¤` ¤` ¤`ª¤`¤`¤`¤`¦¤`n£ÐÐ`Ð`šÐ`Ð` Uàä`ªä`ä` ä` ä` Rä` äa[À[À[ÀUsÀsÀsÀwÁòsÀsÀAÀ¾1 U> > > > U> > >  > U >  >  >  > U> > > > SL† † † U† † † † U†  †  †  † U †  † † † U† †   U   Ö¡?ƒÝ1 †iàë U ë  ë ë ë 5ë ë ‡®À °U ° ° ° °U ° ° ° °U ° ° /±¼•ðª?° ?° ?°?°ª?°?°?°?°¦?°½™ðg°g°ªg°g°g°g°ªg°g° g° g° ªg° g° g°g°êg°{±ÀïÜ ª ° ° ° °R °½‘©�©�©�õ©�бƒÛ'STðå°å°å°3© õ°Va ©,!   ª    ÒÁ|§Ð)À)À…T`À5À5À5À5ÀUë ë ë ë Uë ë ë ë Eë  ó¡±©�©�]ܳÚddUd d d dU d ddd©xdý°ý°ªý°ý°ý°ý°ªý°ý°ý° ý° ªý° ý° ý° ý° ý°ý°ÖÁ +;K[k{‹›«»ËÛëû --+-;-K-[-k-{-‹-›-«-»-Ë-Û-ë-û- ==+=;=K=[=k={=‹=›=«=»=Ë=Û=ë=û3ðpùpõq ?p€þ�¯:Ý�ÿ'¶E„ÿ?ÍXÿû®EÔÿc¢]DßîáÐùSÖ:: :y :Ðø2ø0ªSSSS’2ñy®�kJJ†´Î{{Ûú1ç‹Ð÷/ª”ДДР”Ð ª”Ð ”Ð ”Ð ”ÐʔДДєÐ{Tl`ÈÈÈÈÕÈÈÈTÏ èèèèUèèèèU è è è èU èèèèeèèþ:5…€…€Þh°DõDLƒöUùàùàùàùà¥eºVpm m ©±· yyyªyy �€ �€ ª�€ �€ �€�€ª�€�€�€�€ÉÜh°¹¹ÐõS›sàÊ Ê ÊU Ê ÊH@H@UH@H@H@HAIzŰàˆ    M  •›  yS²Û œ�œ�_‘z¹Áôèsàª; ; ; ; ª; Ò€Ò€Ò€¦Ò€�|°c c ªc c c c ªc c c c c c ‘h°— ÐWó; ; ; iI�I€ I€‡¿ *¼ ¼ œ�_‘È!©ÒÞÐÔ Ô …€º…€‰ƒòʪÊÊÊH@ ZH@ H@2™Ð3Q@š00 ®�0 ª0   j ‹‹~|°\A0ÐñSõà©õáõàõàùà*ùàùàýáé˜àr0Sî¨àz0z0z0Uz0 z0 z0 Ž1©%±`š0 š0š0ªš0š0š0š0]&µÒðÒ€Ò€©_!Ò€Ò€Ò€ ªH@ŒÐŒÐŒÐ iC`ë0 ë0¼Q@ª÷0÷0 ú ú <úÐïúË€@¥H@òŒÐŒÐ ŒÐM ] m } � � ­ ½ Í Ý í ý -=M]m}��­½ÍÝíý ----=-M-]-m-}-�-�-­-½-Í-Ý-í-ý- ==-===M=]=m=}=�=�=­=À½=Í=Ý=í=ý=ïðfþôó ònúmÏFõï˜/]øû—Ójÿÿ”+ÅÜÿДƒrÿaP?.ÿôýÿêÙÈåÿ¸©ÖÇÿmš‹|ÿ1^O@ÿõ"ÿ曌×ÿ}ȹªÿ»®¡”ÿ‡zm`ÿSF9,÷PP@ÿ0 ÿðàÐÀÿ° �€ÿffÿ…ëµA®ÿ—AdHárAýôÙà\�Â?ˆß+‡–>èŰ�Âïu?íÙàMSM6389RSç†ÿ2YIC-VOIÿCE DATA ÿREGISTERÿ\FEED;2‡0?i¶�Æ�Ö�æ…Jšï…JøƒSMý� ‘_º–k’…{$��;ÂQ*�(0�@�~ê€8GSV1K¶™þ_›RECORD ÿICaLKKJ>Ì$�ö(ªN*�…ë‘™�©”ºâ†ÿ2X42BRSAö!©2Nû€CMOSÿ RTC WIT?H XTALå—“_ìQB,�ì*�Ç33Ù­­$£GS1Kï‚�¤-— _•>¥¿_QPPO@—×{£$�ffþ@+‘Ú@p­€­2'¢õ§9¨ÿEAL TIMEÿ CLOCK_H�GGF<‘µƒÉ£RC¸ *�ϡ٭ª“¹ðª ½�Á’bµ©ª²\æ–dî’Há&$�)\ Î*�R¸îA½Q½58332î‚dz2N½±uZ–m’š™–c ï= {B+‘HBôYMM Åp Åp% Åp ŒÑœpœqœpUœpœpœpÿ`Uÿ`ÿ`ÿ`ÿ`©`ÁM@M@M@ÊM@M@ M@ÐîU````IŽa-a ð¥À¥ÀS ­ÐOPOPOP_ œ ÁÀ ÁÀUÁÀÁÀÁÀÁÀ}ÁÀ�áÀ®Ðí Éð ÉðªÉðÍpÍpÍpjÍpÍp Íp  àªÐÐÐÐÉj¿@&Ð&Ð�€ªž`ž`ž`äPúäPqƒì ª5@ 5@ 5@’`š’`’`U­ÐkÐRoÑa�@M@ M@M@UM@M@M@ÜP)Až` ž` ž`·ÐWë|p|p|p•|p |p Œqï`Rï`ÄÑž`ž` qTåÁáÀáÀáÀáÀU ````U`Ê`Ê`ÊaªÊ`Ê`Ê`Êcê+õàõà@q�à• =` =` 5aÀšÀÉðPPMà TQá’` ’` ’` ’`ÕOPOPOP»T§@uàuà}ák BWé\p\p\p¥`q•ðžàÅp4ÅqœpœpH§@eáš’`’`ÀPP&Ð ©hÂÀÎà ÎàÎàñÓ+P—Pðè h4Ðëàëàip÷à}÷à6ðU ð ð ð ðU ðÎàÎàÎà“iâÀ+ð+ðUðç«!Nð ëà ëà ªëàëàëàëàª÷à÷àXñ|¯@5WhðhðhðUhðhð hð hðU hð hð hðhðUhðhðhððUððððõð¬ñƒæ I¢ážà²áPÁG¿@ªÕð…à…àÎà zÎà Îàxôs‘k‰€þ�Ÿ•4ÿ£‘„ÿ?ÞUÔÿsâ]Ðÿ;Ø„§$8›@11š119ÚpE¦E x|ÐQQªQQQM@PQA„ÁxÁôPôP ôPU ôP ôP ôP ôP¥ôP®ay`y`ªy`y`y`y` êy` y` }cÿ" ªKP KP KP KP ªKPKPKPKP4•Á±À±ÀFŸ@ò£ R›`ñððTñY@Y@Y@Q¬Y@ä@""R&3¯`222é2—Pâãþ ª±À±À±À±ÀªMàÜPÜPÜP©îæðs s s ªs sssjsssïâÀªŸŸŸŸªŸŸŸŸ ŠŸ Ÿ «q`/@ý§# 5ËØ Ø ªØØØØjØØØ6TÐÉ96@!<=p=`2�@øð ˜û@ • $!gÎÀ0 ª0 0 0 Îà¤ÚáÎàíñÎàÎàúÎàL!ƒüª]@]@ ]@ ]@ *]@ ]@ ]@eA]@•]@]@¦až`¤£Ñž`ža``ª``22®âãû¢@kКkÐkÐ ‡�@Ú *Ú Ú Ú WQOPU OPOPOPOP©½Á&Ð &Ð &Ð*&Ð&Ð&Ð Aíq*ÜPÜPÜPoÜPõ ÜP Cú!7Ô:@K0K0K08TEp[0[0[0`¥™ÁÐs0s0 ¦s0 `‹@ƒ0 ƒ0 ªƒ0ƒ0ƒ0ƒ0ªƒ0ƒ0wÐwЪwÐwÐwÐwÐ ª` ` ` £Sù«Y@Y@Y@ªY@Y@ Y@ Y@ *Y@ Y@ pø1y`Uy`y`y`y`S’'P@@¶`Õ¶`¶`¶aƒWøWÐWÐWÐUWÐWÐ8p €ÀI mPUA‘ ‘ %…!Ûpp5P÷/¢@¢@À Ð à ð  0@P`p€� °ÀÐàð-- -0-@-P-`-p-€-�- -°-À-Ð-à-ð-== =0=@=P=`=p=€=�= =°=À=Ð=àà=ð=MM LŠÅôó¦õòõñ lTŒ@ € € € €U € € € €Smp-€-€-€U-€-€-€-€SnpM€M€M€UM€M€M€M€UM€ M€ M€ M€U M€ M€M€M€UM€M€M€M€Sop�€�€�€S ƒTЭ€ ­€­€U­€­€­€­€S„p̀̀̀Ù̀̀̀UÍ€ Í€ Í€ Í€U Í€ ̀̀̀Ù̀̀̀S…p���U����_ b=�=�5=�=�c-pQ�UQ�Q�Q�Q�UQ�Q�Q� Q�U Q� Q� Q� Q�UQ�Q�Q�Q�5Q�Q�d-p¡�Õ¡�¡�¡�§Ôvàµ�µ�µ�AÔÜ@Å�Å�Å�BTä@Õ�Õ�Õ�Õ�UÕ�Õ�Õ�Õ�U Õ� Õ� Õ� Õ�U Õ�Õ�Õ�Õ�ÕÕ�Õ�Õ�CTä@% % % % U% % % % U %  %  %  % U % 1¡VÑÐ¥Î�¦e ¦ä@m m ªm m m m R}¡«CÐ� � � I � á@ìn�£  £ K"rà7¥ð³ ³ •³ :a4ÆÀÇ ÊÇ Ç Ç +-ÍP=n€®v�è U1à1à1àÀiÁÕP¯  …Šª ° ° ° °ª ° ° °R`ŠR`Ra“à8°+¿' F E° ªE° E° E°E°ªE°E°E°E°TÙñÕðÕðÕðÕð©y±ë@ë@ë@ªë@ë@ ë@ ë@ ªë@ ë@ ë@ë@jë@ë@ë@ä@ª½°½°½° f` ÔbaPPââ„'0 @ P ` p € � ¡½� ­ Ñp Ñp ½ ŽMžM®M¾MÎMÞMîMþM]].]>]N]^]n]~]Ž]ž]®]¾]Î]Þ]î]þ]mm.m>mNm^mnm~mŽmžm®m¾mÎmÞmîmþm}}.}>}N}^}n}~}Ž}ž}®}¾}Î}Þ}WÀ÷8ôs(×芀‰€ô'ÿè'Ü'Ð'Ä'ÿ¸'¬' '”'ÿˆ'|'³§&ÿ›&�&ƒ&òÿæ%é(·#ÿ«#Ÿ#“#‡#ÿ{#²¦"š"ÿŽ"‚"ñå!ßè_!Ú #!Ó”^€UU¦^AðŠ e eU eeee}e‹…U… … … …U … ………Õ………ŒT´ ¹¹¹¹Õ¹¹Á„W"> U U UM U¿j€î îSUj�úú úU ú ú ú ú¥aaa  ".ReйSÀ...U... .U . . . .U....M.º9°rrUrrrrUrr r rU r r rrUrrrrS»9°¾¾¾u¾Æ„!þqyˆ€Ú  # Â!ð¥‚�‡rïïªïïï煮´    ª    ª ª   > O ǰ¿Ï [ *[ [ [ [ Ú Uþq‡Þþq†ÞUþq…Þþq„ÞO1 †¦Ð¨ ¨ Õ¨ ¨ ¨ ‡TðÀ À À À UÀ À À!¥!ðªà à à à ªà à à à ¦à yÞÐ0 0ª0000j000z´ ª00000000©ð%°D0D0D0¥ñ_à-mÐX0X0¢X0X0Ú ôrƒÞªþq‚Þþq�Þªþq€ÞþqÞªþq~Þþq}ÞZþq|Þz€{ÞUþqyÞþqxÞUþqwÞþqvÞÕ þquÞ Ù¡#/¢T ed t }ª……………„… • ¥ µ Å ÉW W W!ÂA[ o#Û ë û +;K[k{‹›«»ËÛëû --+-;-K-[-k-{-‹-›-«-»-Ë-Û-ë-û- ==+=;=K=[=k={=‹=›=«=ð»=Ë=Û=ë1¦øôó™�ûs—. ©sú€ € €9� *9� 9� 9� 9‘9�•9�9�-‘¡�ª¡�¡�¡� ¡� ª¡� ¡� ¡� ¡�ª¡�¡�¡�¡�J¡�±‘e-ðu€u€5u€u€ ©Að‰€U ‰€ ‰€ ‰€‰€Õ‰€‰€‰€ªT¶�­€a a a ¥a  ½�m  m  Jm  m  Í��  � U �  � � � U� � � �¡©¬äÀ���ª����ª� � � � ª� ���j���­äÀªQ�Q�Q�Q�ªQ�Q�Q�Q� ªQ� Q� Q� Q� ªQ�Q�Q�Q�¦Q�®äÀ™�™�ª™�™�™�™�š™�™�mаÿMX7228KNþÅ•2NIC-8-ÿBIT DACPÿDCCB:20û?ZÑÀìQ3ÿB×£Bd¿{øA,°)ÿ\ Bè�ÂuS?èÀ ¡ÒÀ—6Ë”è$ Õ�å•[î’ÃõSîö�®0ü�ázéB­£ÑÀ”574cAJÌ�{£/¢125¢oADCQä•ÿdî’ÿHáØA= wµAdL šAúðô £ ©ât¥36AJùHÔ¥/¢RMS TÿO DC CONVERTERZä–�Â'ö�� Žü��Â﷭ǭסD¸8µä­ô­0?fî’=ÿ fBö(EB \�,B½ú£ÍÀ”28F40?00PC12œ¸� þ/¢4MB MEMÿORY\ONNMu?é‘kî’®Ge« w…?± $½ú¤Ê—µ7L512ïQC15Ç-15î/¢SM-ÀK CÿMOS PROM¿aMLLK>f·á»z|« R¸R± ×££4å½õ½ÂD ÈDTÃ#ÇE-Á\2Æjî’w)\Bö�= "ü�Èp½+´Ëý·¡±DC;20ÓÈ-20·¶�ÇÝ`Ǽ{Z« …ë�5±  ×PÍ`Í7OL256 ÆBÒ_ÇèBÐ&Í6Âiî’R¸vî« �ÂM± ÍÌ0 Ý0Ý@ÒuÆ­ÒÅ^×’ÂÝ_˜ÌÍ̸« {�š± {„‹ÝÆÍ7CL1Ù ÄãÅ1ôÍtÉ´ßÕ„« ¤pQJÂY ôÝ›Ý7CÂ9ßÂæå2YÍýÂLKK¹J6Âг\�j«  ;×;± �Â^íní€~ä§²~ä´µ˜íkÝ­ ‹î« q=^± ®G1ÈíØí~âD„è�À‘à0¡8ˆÌÕ×vÓ¤pƒÒWá)\'3ýCýSôïç�Áx¶³ný2Ææ!ôsùÁ‘þr¥Jùú²€ '¦ Yz� ™� J™� µ‘Ïr�- -U - - --Õ---ÐTš�UUUUUUUUUU U U U UU UUUUMUÑš���U����U�� � �U � � ��Õ���ÒÔ’�½�½�½�WõõõUõõõõUõ õ õ õU õ õõõÕõõõTöAAAAUAAAAU A A A AU AAAA5AAö�U����U��� �U � � � �U����SöÕÕÕUÕÕÕÕUÕ Õ Õ ÕU Õ ÕÕÕ5ÕÕö U    U    U     U    Söe e e Ue e e e Ue e e e U e e e e Õe e e Tö± ± ± ± U± ± ± ± M± öÙ Ù UÙ Ù Ù Ù UÙ Ù Ù Ù U Ù Ù Ù Ù UÙ Ù Ù Ù Sö%0%0%0U%0%0%0%0U%0 %0 %0 %0U %0 %0%0%05%0%0öm0Um0m0m0m0Um0m0m0 m0U m0 m0 m0 m0Um0m0m0m0Söµ0µ0µ0Uµ0µ0µ0µ0Uµ0 µ0 µ0 µ0U µ0 µ0µ0µ0Õµ0µ0µ0Tö@@@@ua ÔJs°áz(y°§�Â\­�ºNž°0o2070FD-7’æý2½¶WGFFE;ºé‘cî’×£s°f/fàA @ÀÀ­9M†IA15NF®@VÖ½¶YŸIHHG<é‘Cö¯(ìA‡ÐÄ„@¤óp�ŠMšMF010;65 T-65“å1áÜeMuC{Öá@×£¤„@ÍÌŽíMýM Qƒ20NCPrP]ÌIbvî’ff}Aף΄@= ³N]^] Q®EÓR|þå%WXHGGF—Xw ×s°33y°Gázä±]Á]ÑR2tVP7`/¢èZÏFmH¤äáB�¾„@®£m#mF?001BXT®E—añ-›aâY òFLASƒHcǶ`mpm€m�hBàœjq­m½mG£{´î« š™‘± ¤pytâm+´ÓÀ•543¡àns‰©à�˜¦F¤…×ÊÒ¡–ò�O}_}54á2Ë’Êr|}ä–õôórûö¤:K €€È€ € €U € € € €õ € €ÉU1€1€1€1€U1€1€1€1€U 1€ 1€ 1€ 1€U 1€1€1€1€Õ1€1€1€Êô2€�€�€ä_å‘€‘€U‘€‘€‘€‘€U‘€‘€ ‘€ ‘€U ‘€ ‘€ ‘€‘€U‘€‘€‘€‘€M‘€æ’€á€á€Uá€á€á€á€Uá€ဠဠá€U ဠဠá€á€Uá€á€á€á€Sç’€-�-�-�U-�-�-�-�U-� -� -� -�U -� -�-�-�Õ-�-�-�èT’€y�y�y�y�Uy�y�y�y�U y� y� y� y�U y�y�y�y�Õy�y�y�éT’€É�É�É�É�UÉ�É�É�É�U É� É� É� É�U É�É�É�É�5É�É�ê’€ U    U     U        U    M ë’€a a Ua a a a S .&} } } U} } } } S/ö� � � U� � � � U�  �  �  � U �  � � � U� � � � ó0öí  ¯U õ  õ  õ  õ Uõ õ õ õ }õ °°U°°°°U°°° °U ° ° ° °U°°°°M°±°i°i°Ui°i°i°i°Ui°i° i° i°U i° i° i°i°Ui°i°i°i°S²°µ°µ°µ°Uµ°µ°µ°µ°Uµ° µ° µ° µ°U µ° µ°µ°µ°Õµ°µ°µ°³T°ÀÀÀÀUÀÀÀÀU À À À ÀU ÀÀÀÀ5ÀÀ´°MÀUMÀMÀMÀMÀUMÀMÀMÀ MÀU MÀ MÀ MÀ MÀUMÀMÀMÀMÀMMÀµ°™À™ÀU™À™À™À™ÀU™À™À ™À ™ÀU ™À ™À ™À™ÀU™À™À™À™ÀS¶°åÀåÀåÀUåÀåÀåÀåÀUåÀ åÀ åÀ åÀU åÀ åÀåÀåÀÕåÀåÀåÀ·T°1Ð1Ð1Ð1ÐU1Ð1Ð1Ð1ÐU 1Ð 1Ð 1Ð 1ÐU 1Ð1Ð1Ð1Ð51Ð1и°}ÐU}Ð}Ð}Ð}ÐU}Ð}Ð}Ð }ÐU }Ð }Ð }Ð }ÐU}Ð}Ð}Ð}Ð�}й°ÉЃS6üÞr òCPU[FEcEDpBóV€B€@�Ô-ð{¸ª}ºtµþAC80C188X¡L8`!å|P“å8×Ú_ßKJJI=ƒ÷Ãõ]÷Ðáz̤r±íÌí#ã12+çüç8 tAíQãjvB¸%÷З…ëýýÒÜlíºt·bè6'çøà4è16©êÝ`·ì= ÷ÐR¸ÒIp×£¶Õíåíõã ’åñžçýNæ\vD î÷Ð{ìIp…ëÙJ€ª) ) ) ) ª) ) ) )  ª)  )  )  )  ª) ) ) ) j) ) ) ?J€ªy y y y ªy y y y  ªy  y  y  y  ªy y y y jy y y @J€ªÉ É É É ªÉ É É É  ªÉ  É  É  É  ªÉ É É É jÉ É É AJ€ª°°°°ª°°°° ª° ° ° ° ª°°°°j°°°BJ€ªi°i°i°i°ªi°i°i°i° ªi° i° i° i° ªi°i°i°i°ji°i°i°CJ€ª¹°¹°¹°¹°ª¹°¹°¹°¹° ª¹° ¹° ¹° ¹° ª¹°¹°¹°¹°j¹°¹°¹°DJ€ª À À À Àª À À À À ª À À À À j À À ÀXø@©Yü@MÀMÀMÀªMÀMÀMÀMÀ¥cj¤nqÀqÀªqÀqÀ qÀ qÀ ªqÀ qÀ qÀqÀjqÀqÀqÀ¥^ª©À©À©À©Àª©À©À©À©À ª©À ©À ©À ©À ª©À©À©À©À¦©À¦^ñÀñÀªñÀñÀñÀñÀªñÀñÀ ñÀ ñÀ ªñÀ ñÀ ñÀñÀjñÀñÀñÀ§^ª9Ð9Ð9Ð9Ъ9Ð9Ð9Ð9Ð ª9Ð 9Ð 9Ð 9Ð ª9Ð9Ð9Ð9Щ¨^}Ð}Ð}Ъ}Ð}Ð}Ð}Ъ}Ð }Ð }Ð }Ð ª}Ð }Ð}Ð}Ц}Щ^ÁÐÁЪÁÐÁÐÁÐÁЪÁÐÁÐ ÁÐ ÁÐ ªÁÐ ÁÐ ÁÐÁКÁÐÁЪ^àªààààªààà à ªà à à àªàààà©«^MàMàMàªMàMàMàMàªMà Mà Mà Mà ªMà MàMàMàšMàMà¬^•કà•à•à•કà•à•à •à ª•à •à •à •àª•à•à•à•à©­^ÝàÝàÝàªÝàÝàÝàÝàªÝà Ýà Ýà Ýà ªÝà ÝàÝàÝà¦Ýà®^!ð!ðª!ð!ð!ð!ðª!ð!ð !ð !ð ª!ð !ð !ð!ðj!ð!ð!ð¯^ªiðiðiðiðªiðiðiðið ªið ið ið ið ªiðiðiðið‚ÛB,p`)\Ä=ûîÖ2C12Êñ2YCÿALIBRATIÿON CHARGÿEN<;;:6200ôsý7ûv�6¾R @¿P`  À À™EÁ ÀEJ€%ª%%%%ª%%% % ª% % % %ª%%%%š%%FJ€uªuuuuªuuu u ªu u u uªuuuušuuGJ€ÅªÅÅÅŪÅÅÅ Å ªÅ ŠŠŪÅÅÅÅšÅÅHJ€ªª  ª   ªšIJ€eªeeeeªeee e ªe e e eªeeeešeeJJ€µªµµµµªµµµ µ ªµ µ µ µªµµµµšµµKJ€ ª    ª    ª    ª    š  LJ€U ªU U U U ªU U U U ªU U U U ªU U U U šU U MJ€¥ ª¥ ¥ ¥ ¥ ª¥ ¥ ¥ ¥ ª¥ ¥ ¥ ¥ ª¥ ¥ ¥ ¥ 𥠥 NJ€õ ªõ õ õ õ ªõ õ õ õ ªõ õ õ õ ªõ õ õ õ šõ õ OJ€E0ªE0E0E0E0ªE0E0E0 E0 ªE0 E0 E0 E0ªE0E0E0E0jE0E0E0PJ€ª™0™0™0™0ª™0™0™0MÀ ¦MÀ§J@Á0 Á0 ªÁ0 Á0 Á0Á0ªÁ0Á0Á0Á0©¨ü@í0í0í0ªí0í0í0í0ªí0 í0 í0 í0 ªí0 í0í0í0jí0í0í0©ü@ª9@9@9@9@ª9@9@9@9@ ª9@ 9@ 9@ 9@ ª9@9@9@9@š9@9@ªü@…@ª…@…@…@…@ª…@…@…@ …@ ª…@ …@ …@ …@ª…@…@…@…@¦…@«ü@Ñ@Ñ@òÑ@Ñ@±ðAdï ×ë@®ñö(ì?@è\�Êö@¾óûìÆòE5090ýN T2NIC-AÿDDRESSABÿLE RELAYÿ DRIVER]ÿBAA@923ÿÿaÃÿõTB= Bd\�øA®ñÿ×£øAè¸iÕ]P¾óàV81RüvPRFSK MO·DEM)PCE2QW7VdA]YR®ñRQ^]nVøS×P€\TRANSMITTERZ7Výc¢RR¸A_…Ã@dò@¬îBw ׫ö@Há’üMÆ P44R;`RPR¿OGRAMM%RE[NCŠPRY7VZ¢RÿìQ¸?q=7Š?dKPW?®ñza_è®G»öÖT�4558PœbRDÿUAL OP AwMPP˜\R¸>`w×£è@ázÌîBî²ýu?OSDP7·06Bôd2NðRIÿSTOR,MOSÿFET TO-2»20ûU0?gdFî`{ è@ÍÌÔx×mçm÷`A2N*asÿ DISC OFÿFER 7073÷14 at*];:ƒ:9!reÊm>}N|5Âúc5}tp^e0?¯ž%ôó�üõ_¥Mµ0 µ0U µ0 µ0 µ0 µ0Uµ0µ0µ0µ0Õµ0µ0µ0QTš€=€=€=€=€U=€=€=€=€U =€ =€ =€ =€U =€=€=€=€U=€=€=€=€SR>€‘€‘€‘€U‘€‘€‘€‘€U‘€ ‘€ ‘€ ‘€U ‘€ ‘€‘€‘€U‘€‘€‘€‘€M‘€S>€å€å€Uå€å€å€å€Uå€å€ å€ å€• ‘øV€¿†ð� ª� � � � ª����j���ÀjðªM�M�M�M�ªM�M�M�M� ªM� M� M� M� ªM�M�M�M�ªM�M�M�M�iÁjð¡�¡� –ðª­� ­�­�­�¥ÆfðÇjðÅ�Å�ªÅ�Å�Å�Å�ªÅ�Å� Å� Å� ªÅ� Å� Å�Å�JÅ�Å�å‘ïð ïðU ïð ïð ïðïðUïðïðïðïð}ïð9 é9 ê@s`¸U.îBff6"b*(f”e�5539Qn¡RHÿIGH FREQ¥UW`Y±dûWbibfïf¶@D¬\�‚T»ð¸ùÜf§7q£7SùSµ`'PAND HWOLD´aXv_ib?�„6��(�8�H…€�Œ�œ�¬�¼�@Ì�Ü�ì�ü� •°ß±®öñx Þ±öñwªì³öñvì³ öñuªì³ öñtì³ öñsÜì³ì°qì³_=À =Á™Ù@IÀivðQÀªQÀQÀQÀQÀ ªQÀ QÀ QÀ QÀ ÒuÁjžð}À}ÀkÔjð‰À‰À‘Á„/ 9Çð:¢À}¢À®ÀU®À}À}À}Àþ°  ¾ËÀ)ÓÀªÓÀÓÀÓÀÓÀ¦ÓÀ˜Æ@ïÀïÀ©™Ò@ûÀûÀûÀªûÀûÀûÀûÀ ñ®¶@а$(Y¥pÌÀ¿3�7�4·À0Ð0ÐÀÐÀDÐUDÐDÐPÑ–@ªXÐXÐXÐXÐ êXÐ XÐ XÐ’«xÐxÐxЪxÐxÐ xÐ xÐ ªxÐ xÐ xÐxÐ*xÐxÐxÐxа_JËÏ•Ó×ÛÊÐÒL‘ÐÕÐÜ�ÐÝÐÝÐMÝÐ Ý‘ÐíÐ íй íа žÀúžÀá;ì×à à"R)Ð7A°"à"à"àK†²@4šð6à6àå6à6à°­<=CðGð¿ê_à¦_àú\àkà=À¦à …²@{à {àª{à{à{à{àª{à2à2à2àÏ“§à°'S FÎÐ´à ´à ´àU ´à´à´à´àu´à´àGÇUËÏÓ×Réà–@ôàôàôàUôà ôà ôà ôàU ôà ôàôàôàUôàôàXÐXÐÉtÑhчª@<ðÛä}ÐDðDð°'©85ÐUðUðUð¦Uð9ÐÀiðið ©xÁàuðuðuðšuðuðyÝà�ðš�ð�ð•¢@�ð ª�ð �ð �ð �ð Z�ð�ð2ŽÀ‘µÐªÁðÁðÁðÁðªÁðÁð Áð Áð êÁð Áð Õñ°$øôsoáýs™2 ª°° °°°°°°ª°°°°°°°°©TA°)))ª))))ª) ) ) ) ª) )))ª))))©UA°yyyªyyyyªy y y y ªy yyyªyyyy©VA°ÉÉɪÉÉÉÉªÉ É É É ªÉ ÉÉɪÉÉÉÉ©WA°ªª    ª ª©XA°iiiªiiiiªi i i i ªi iiiªiiii©YA°¹¹¹ª¹¹¹¹ª¹ ¹ ¹ ¹ ª¹ ¹¹¹ª¹¹¹¹©ZA°   ª    ª ª   ª    ©[A°Y Y Y ªY Y Y Y ªY Y Y Y ªY Y Y Y ªY Y Y Y ©\A°© © © ª© © © © ª© © © © ª© © © © ª© © © © ©]A°ù ù ù ªù ù ù ù ªù ù ù ù ªù ù ù ù ªù ù ù ù ©^A°I0I0I0ªI0I0I0I0ªI0 I0 I0 I0 ªI0 I0I0I0ªI0I0I0I0©_A°™0™0™0ª™0™0™0™0ª™0 ™0 ™0 ™0 ª™0 ™0™0™0ª™0™0™0™0©`A°é0é0é0ªé0é0é0é0ªé0 é0 é0 é0 ªé0 é0é0é0ªé0é0é0é0©aA°9@9@9@ª9@9@9@9@ª9@ 9@ 9@ 9@ ª9@ 9@9@9@ª9@9@9@9@©bA°‰@‰@‰@ª‰@‰@‰@‰@ª‰@ ‰@ ‰@ ‰@ ª‰@ ‰@‰@‰@ª‰@‰@‰@‰@©cA°Ù@Ù@Ù@ªÙ@Ù@Ù@Ù@ªÙ@ Ù@ Ù@ Ù@ ªÙ@ Ù@Ù@Ù@ªÙ@Ù@Ù@QÎTrÀ)P )P)P)PU)P)P)P)PM)PÏŠÀQPQPUQPQPQPQP•QP]QÐVÀuPªuPuPuP uP ªuP uP uP uPªuPuPuPuPªuPuPuPuP©ÑŠÀ½P½P½Pª½P½P½P½Pª½P ½P ½P ½P ª½P ½P½P½Pª½P½P½P½PʽP½QÒŽÀ`ÓL^À`Õ»À%`%`Õ%`%`%`ÖTŠÀ=`=`=`=`U=`=`=`=`U =` =` =` =`U =`=`=`=`U=`=`=`=`M=`׊À•`•`U•`•`•`•`U•`•` •` •`U •` •` •`•`U•`•`•`•`Õ•`•`•`ØTŠÀí`í`í`í`Uí`í`í`í`U í` í` í` í`U í`í`í`í`Uí`í`í`í`Mí`ÙŠÀEpEpUEpEpEpEpUEpEp Ep EpU Ep Ep EpEpUEpEpEpEpÕEpEpEpÚTŠÀ�p�p�p�pU�p�p�p�pU �p �p �p �pU �p�p�p�pU�p�p�p¹qwBôñlüõ¿›8QP ªQP QP QP QP ªQPQPQPQPªQPQPQPQP*uPuPuP¹Q`¥`a``ª`` ` ` ª` ` ``ª````ª````ª````ª`` ` ` ª` ` ``T!a````5``ÔŠÀí€Uí€í€í€í€Uí€í€í€ í€U í€ í€ í€ í€Uí€í€í€í€Uí€í€í€í€U%`%`%`%`U%`%`%`%`U%` %` %` %`U %` %`%`5a¦�pÛŠÀ‰�‰�ª‰�‰�‰�‰�ª‰�‰� ‰� ‰� þ‰�T SERIAÿL EEPROM¿[DCCB:û¡eβף˜¦ K¡dw33#N¢š™\¢õ\¦Ìf£M24Cç02N¥y¢2K-ãBI¸�È–ÿ£¤p”ÿB áz|B¦â�_Bç�ãåþ•3g2DDh¤¢DU# ÿTRANSCEIïVERUö¬R¸ ¾? …ëëA  »9AL­\­2CQǤ¢ÏQUAD­�©�ÂÝA {¾¤ ‡q=–ª­º­Ê n£Ctu­ä­X–¢ ×·ý w×£ž¤ š™y ½à½Ê Ç£¢>¸N@?×?>8‘¡Z–¢ý�E ÍÌtBd§)\XK­ö”Þþ”1ç608ݳ¢OCTÿO ISOLAT×ORP¢¶^–¢…ëýq¤ 33GAdç®#h½Ð½601\7Ã4·BUSò¶Tü¼w𙱤 ÍÌ ÀçR¸ŠÍ*Í600P•ÃÕ§MÍ¥³d¬´¤ œBÐà�¸¥æ�ö”Ýþþ“JM4200DöóÅ2Y6°ANALÿOGUE MULÿTIPLIERZ:È–c–¢ázäÚ�ב¥dÚÀ�ÖÍö”âîÆ1ã51úÂ[ÑÒV/Fÿ, F/V CO½Nç TERYÈ–or&ÔÀ²qÁš™‰xÍúö”Îþ“H29EE{01AÀ03CFºÖå-ÃÐ-ÆÐÒSM-ÿ1MB 5V MÿEM.eTSSRÝA„×®G›E ¤påxº²SÀ½­Ý8SFŸ04015ÅÔ,ã-ä2àÖÙ4ãÝ!×ÓîE fæ´º°Hážô íö” þ“FX78à1à˜ãAà¢ßÐ500ÿ0 GATE FÿPGAYEDDC®1¨ö(XÊÂÀ Ó×û:Ýö”àþ“E6øžàûã¢MIXERÿ FM IF S?YSTEMU¢¶%Ów®G™Ú�HáJà�ç\�2Þíîí12Axò^ð¢VHF ò¿/OSCILö²YvŒ¤3ÿÑ“…둤 —ö(TÂ�Òù‘èÏfff¨ðNü04ø_òÀñ¢LOW PëOWü[Œ¦ŒÝôqQûx6_‚  U SdÚ@%%%U%%%%U% % % %U % %%%Õ%%%eTÚ@qqqqUqqqqU q q q qU qqqqUqqqqSfÚ@ÅÅÅUÅÅÅÅUÅ Å é ²�ªñ ñ ññªññññ¯zªª    * QÃРŸ7C256L£5ÿ6K CMOS ~Â’^LKKJ>‘¡Õg7¤ylÂ,À¸I�Ýö”Êþ•SN2àè¬\Ñ]q�Âoáf¦Øâ“�ŸS10Qµ#¢âÑfº×h–¢ff¼¤ {;„À…ëIöö”=ɧ128Q÷Àz)†+#28dB-ËÁV!{J]-m-}#µç$’-¢-J-Z-Ò-â'NO4ú-\ =—¡ìѸꀺ°'= F{íö”˧/à &·4¢Qál1Ap=z†=–=¦=¶3NDÊ:8-ífÃk’E Lº°33ý= Mµ2´(†D2KÑ\ql¬´D£/º°\�dMtMµ0½2&$* OBô°EθàOFFðQ00115F1 *P©b¢±ui¬´E ‹…·—Ò�-=-µ01ƒ0V»6YS©å0&Ñ_®q ×,XBðÀHá¸6]F]VR‚&ÁT+-0Ô˜ †“VÍÌž]®]¾T\X'-à]‰]™]m jà$E�c;mKm˜ ®á®G�Àffrmm}mVRNÅXùa¢m²jîÑ“q=úÚ�R¸®Žà�{†=ýö� 8Š ¤8£8­Ä�ÌâÔ8Ú�óà�ázd;}K}À ÿà¾tÊ3n}~zë˜ôóÀûö˜1§€Õà € €¾ €�€ª€€€€ª€€€ € ª€ € € €ª€€€€ª€€€ ª    TÅ Å ÅÅUÅÅÅÅ5ÅÅgÆ­€U­€­€­€­€U­€­€­€ ­€U ­€ ­€ ­€ ­€U­€­€­€­€Õ­€­€­€hTÆ����U����U � � � �U ����U����SiÆU�U�U�UU�U�U�U�UU� U� U� U�U U� U�U�U�UU�U�U�U�MU�jÆ©�©�U©�©�©�©�U©�©� ©� ©�U ©� ©� ©�©�U©�©�©�©�5©�©�kÆý�Uý�ý�ý�ý�Uý�ý�ý� ý�U ý� ý� ý� ý�Uý�ý�ý�ý�Õý�ý�ý�lTÆQ Q Q Q UQ Q Q Q U Q  Q  Q  Q U Q Q Q Q UQ Q Q Q SmÆ¥ ¥ ¥ U¥ ¥ ¥ ¥ U¥  ¥  ¥  ¥ U ¥  ¥ ¥ ¥ U¥ ¥ ¥ ¥ M¥ nÆù ù c93C²„+��(�8�H�X�h�x‰­,­<¥dL¡°»±þñ| -°¯„zȰ{ȳªþñyȳþñxȳªþñwȳþñvȳ ªþñuȳ þñtȳ rþñsȳȰqȳ=À½ =ÁÙ IÀ«ic�g�k�*o�s�w�{�ò*QÀ QÀ uÁjþ}ÀM}Àk‰À‰Àý‘Á„ 9ÒÌÀ:%°¢À¢ÀW®À®À}Àå}À}À° ï ËÀ)«ÓÀÓÀÓÀêÓÀÓÀÓÀ˜ëïÀïÀ™«ûÀûÀûÀªûÀûÀûÀûÀ Ï® а$ß(ÓÀ ¿W0Ð0Ð0ÐM0ÐÀÐÀDÐDЕDÐPÑ ÐXЪXÐXÐXÐ XÐ šXÐ XÐ’xЪxÐxÐxÐxÐ ªxÐ xÐ xÐ xÐ ªxÐxÐxÐxÐòxÐxаJW½Ð½Ð½Ð• ½Ð ÉÑÒ6ÕЩÜ&ÝÐÝÐÝÐ )Ý6íÐ íÐ íаW žÀžÀá½; ìà –à")Ð7Æ"àZ"à"à†Ð4ú*6à6à6à6à°¯<%°=®|\`Wàê_àM_àú\àkà=ÀMà …Ð{à {àU{à{à{à{àU{à2à2à2àŸ“§à°§' FÎÐ´à ´à ª´à ´à´à´àê´à´à´àG«ÜàÜàÜàJÜàèá ÐôàôàUôàôà ôà ôàU ôà ôà ôàôàUôàôàôàXÐ%XÐtÑhчmÐ<ð“Û"DðDð°§'85ÐUðUðšUðUð9ÐÀið¦ið xÁàuðuðjuðuðuðyÝàj�ð�ð�ð•eЪ�ð �ð �ð �ð j�ð �ð�ð2ŽÀ©‘ÁðÁðÁðªÁðÁðÁð Áð ªÁð Áð Áð ÕñëXôsÑûv—.§ ?U°  ª    ¦ @%°))ª))))ª)) ) ) ª) ) ))ª))))¦)A%°yyªyyyyªyy y y ªy y yyªyyyy¦yB%°ÉɪÉÉÉɪÉÉ É É ªÉ É ÉɪÉÉÉɦÉC%°ªª   ª  ª¦D%°iiªiiiiªii i i ªi i iiªiiii¦iE%°¹¹ª¹¹¹¹ª¹¹ ¹ ¹ ª¹ ¹ ¹¹ª¹¹¹¹¦¹F%°  ª    R !(åàù ù ù Uù ù ù  ù U ù  ù  ù  ù ¥ù ±ù ù jù ù ù o#àªu u u u ªu u u u ªu u u u ªu u u u ªu u u u ©p#àÉ É É ªÉ É É É ªÉ É É É ªÉ É É É ªÉ É É É ©q#à000ª0000ª0 0 0 0 t0¯u¢­3SC8ÆP}1Z4-12N8ÔrîrCPUrPHZX¯EDDCër`ÀbRë8ªXB�÷0š™yÔÊB£ B©{àCQ8Ï0C24¼4 rINÿTERFACE ÿADAPTORVßBAA@9±@ÿdîÀbffc¾@áz@î^@ÍÌ&ÊB®Gt§=·70Â304A rÿDATA LINÿK CONTROÿLLERZCBBÕAå2f"T@È`®� g`¸í }°tÉúâDCP64Q25Ì€HjS648@v\KÏJJI=QNCÍÌÝDÈ`ázg`R¸öcMsMƒD^PèF–M¦M®Áaš™IÈbg`ö#(ÔmÙMƒC1ŠG8eÜ]¬Kff6È`…EbÜÉM?]ƒBN”@à²Yc[rR¶fNC33;.È`ìQÎbæ•]¥] µTûagÊ]ÚYi‹3¸u¨ÈbuÎ` ×O/] mƒ@32BùA~j rû32jY_NMMLÝ?Hg¸«U`{zÃ@×£Tamqm�dà`Pçj˜m¨mQ@ìQšîU`×£`Ã@{>ÊmÚmƒ@16†hVt0bs16}¯iR¸œU`w¤peÃ@HáB3}ÀC}Stñf¿tj}zzë‚ôóTûö�:¿ X €ª € € € €¯Y!€!€ª!€!€ !€ !€ ª!€ !€ !€!€ª!€!€!€!€¦!€Z\àa€a€ªa€a€a€a€ªa€a€ a€ a€ ªa€ a€ a€a€ªa€a€a€a€¦a€[\à±€±€ª±€±€±€ 0ª0000š00r#à倪å€å€å€å€ªå€å€å€ å€ ªå€ å€ å€ å€ªå€å€å€å€êå€å€)‘Ç59�9�ÈŠÀE�•E�E�E�,BUÿAL MICROÿPOWER OP_ AMP[á5?ê3wìQ8U`ff�RýĤr%?'¯ã¥Û>«uÖU2O¿P213FP®”2ýYY”,PRECI¯SIONk�-o�Zºs–^OB{U`)/\Ï@dY@—‘�¬t Ô©•0G´‘ 0ba�PT@??>8x—w®GU`…ë-r‰Öõ�¡�0¤¥\’L§OW f™Ö—gë4† @]`Cï�§uX­ §Ÿ177GSÔ¤0bSM-ULTRA×PÈ—o�]s–e£­³­Ã­€Ó¤´�=²0bê­l� ³{»‚U`q=>Ã@3ç3 A½/½7FZР´I½Y½w’XOBö(ÝTU`= Ã@\�)⽬t×Ï¥1@²À^0bQUAD´N5¦pà“½é½«07D´�ø_Á0bˆ¡OFFSE¹T-­³D¸¥4À=; wï�33S@ÍPÍÇ7DN»Ã0bÆ™ER£ATÌ�^�o�\5¦aîOB®G¡4Àö(lÎï�ÍÌ,žÍ®Í7CdÚ #Ñ1ã¤nÍPW5¦îŠ3¸U4À)\žï�= ×?ÝÝCPÛÀƒÒiÍóà2…2à“w…›4À\�b_Ò�'Ýu݅ЊÝs̓É»…Ã4À…£ï� ³×‹ÅÝÕÝ7CÀÂCèÆÍÖÍ5¦SOB)\gîU`Ãõ(Ã@®÷#í¬tÛXÅ5æÒ©à0bêóI5¦cOB¤pµ 4Àò‘š2‰í¬tã©“H?N3040Uùå0bÿHALL EFFÿECT SWITCHYDCCB…2îÇã®G™4Àq=zrÖâIÜíìí303ÿä@að ýýÆäÙá~áHï�8€à?ýOý302ÿäÄðXlý|ýïpNôs™ûv?œ9¿ò 5  À UU U    Msæ€UUUUUUUUUU U UU U U UUUUUUU5UUt怩U©©©©U©©© ©U © © © ©U©©©©Õ©©©uTæ€ýýýýUýýýýU ý ý ý ýU ýýýýUýýýýSvæ€QQQUQQQQUQ Q Q QU Q QQQUQQQQMQw急¥U¥¥¥¥U¥¥ ¥ ¥U ¥ ¥ ¥¥U¥¥¥¥5¥¥xæ€ùUùùùùUùùù ù_ - ! ! U ! ! ! ! õ! ! .UE E E E UE E E E Q E ߨ¹½V5¦]OBGHáª4ÀÙáöQ6¢ýB¬3?²Å!Lím’S¾ìwázL#VHáÚ¦,„!  ( €8 H Xxˆ˜0ì—1� 10„ª�~¤3�}¤3Z�|¤3z¤0{¤3U�y¤3�x¤3U�w¤3�v¤3U �u¤3 �t¤3å �s¤3¤0qþ¤3z=@ =AÙ I@SiR�Q@Q@Q@UQ@Q@ Q@ Q@Õ Q@ Q@ uAjk}@}@kF�ê‰@‰@‘A„— 9R:)0¢@¾¢@®@*®@}@}@}@0  Ë@_)Ó@Ó@UÓ@Ó@Ó@Ó@_˜ï@ï@_™û@û@Uû@û@û@û@}û@ ® Pþ0$(¾Ó@ ¿0Pj0P0P0PÀÐ@ªDPDPDPPQT PXPXPXPXPÕ XP XP XP’WxPxPxPUxPxP xP xPU xP xP xPxPUxPxPxPxPþ0Jª½P½P½P ½P 2ÉQÒ‘PÕPÜ�PÝP5ÝPÝP Ý‘PíPå íP íP0 ªž@ž@a;A0ì´~€` `")P7Ôæ€"`"`"`†RP4v@6`6`6`y6`0<)0e=I0®†€W`ê¶€š_`_`ú²€k`š=@` …P{` ª{`{`{`{`ª{`{`2`2`>2`“§`0O' FÎP´` ´`U ´` ´`´`´`Õ´`´`´`GWÜ`Ü`Ü`•Ü`èa Pô`ªô`ô`ô` ô` ªô` ô` ô` ô`ªô`ô`ô`ô`JXPXPtQhQ‡mP&°&ÐpС¼�Ì��%Ãõ¨øÀœàþÀáz4±­Á­Æ"p0±­ß,‘#ö(ìøÀwÍ̬þÀ¤p}½–!½7F3²F9½I½Z®Ô²33É}â’ý"VŒ6�ø¼49Æ"ê²ÍPª§Ñ9…Ág,Ä~D �;Â9ý ìQ˽۽ð²“DÂÚ¥óÑPOWE+R û¸]ÆeÍ!Íð1ÍAÄî²¥MICR­O\ÍP[Æ_ï"Í»ÌèD …ë©ý ¸3yŒÍœÍ71í²Ñ^ÏòFASTaÉUÆÝdï"ìQÜD ÍÌ% ƒâkñÍÝ7­ÃpѾîÖNOISEaÉZ¸2܆àD R¸´ý áóz„PÝ`Ý70FYðÑÔ{Ý‹Ý7×… B•– Èë“´ÝÄÝ6Pì³8áö·œ¹-öÚbï$•äDÒ¦†Âtí`¤ØÎãµ4FZ™ãÏòJFETLêÎÁX2¬® €Â�ý �ÂÕn½Œí3Àí²þà¥ç~¦Œ­gãHáÝžD  ×gý …ë )|íîí2�â_ð¥íµí®7×q= åÂÉh°ös(”Þí(í21Hî±ðÁñö·XÇóÝ~úôscûvŸ>©£-0   ª    ª ª    j   ¤)0ºUU#�«aa a ªa a a aªaaam&TX`• • • •U••••5••'l`ÁS V„`ÉÉÉ5ÉÉWü@áUááááUááá áU á á á á¥õ»…P ª    ªj¼¨`ªUUUUªUUUU T]u€u€u€u€•u€u€-nñóQßDCCB:sÇ{u²¨Ò�ý ×_?ýú`¤Õ¾$A603AøX�ÝÒCURREÿNT FEEDBÇACKΠ;Ó33…3ò7Øâ!¾OüÝ12áE —¼DInñöÑê h�¤�D …cÒý"6#-`¤ÙÖ41o31PA¤&2Yø´},nð-INPU—ªYá^ø;sÁfï"¸» à ×Õ0’¦<‡-—-404Kâ2äCíè§\ ÜÚ™©î¥ R¸Žh°HáZ ¡ý¬A31²t2—½,ÜîÜÃìQ¸¥ ®—Nh°pU=e=2v3PÔ1€=,ÝA4«3ò�ۧXï-`¤ÖÌ66ã50×24A¶"DUALñ-PWÞñYâi,wffD ¤pýh²yµ´=ÿ-2604áð—CÒEBa"UDIO¸fÄÐ'r#¸1D¦\�âwM‡M2¨%ÿC¦JTÃ-ÃLá*’›ë‡MïM21112gS¦G¸ä׺Mr#Ãõ àìËQ¾†Â”G]W]2107›CÐR¦Gä=Ð'ÃwR¸^¥ ö(âÁd)\½C}S}ÆhPAMÁup}€|ëôóHûö 9«ÁÁÁªÁÁÁÁ *Á Á Á ÅÁMÁTÂ=€=€U=€=€=€=€U=€=€ =€ =€U =€ =€ =€=€U=€=€=€=€M=€UÂ�€�€Õ�€�€�€ xW ¥€ ¥€ ¥€U¥€¥€¥€¥€Õ¥€¥€¥€yWрррUррррUÑ€ Ñ€ Ñ€áUááááSXâ���å��>@8F0ÿ01BX-T15Ý0Ò1MB†£FLÿASH`ONNMu?sÁjý¤äAd°w¾A LУAô×—Ñ"X¬Í«’)–T 12(š26�F�V�f�v�)–B4�)—ù‘¡�±�Á�Ñ�á�ñ—‘™c¡ ­ªý^Ëcð¾B q{½˜ àš™~B>­º3{�“135Ä¡2ÿNMODULE,ÿ THYRISTÿOR BRIDGET<;;:6sÇw¨› ff† àç{`§­¿R„��(�8…„…��d �°s±öñ‚ W„öñ�€³öñU€€³öñ€³öñU~€³öñ}€³öñ­|€³z€°{€³ªöñy€³öñx€³ªöñw€³öñv€³ ªöñu€³ öñt€³ röñs€³€°q€³=Àå =ÁÙIÀi«QÀQÀQÀªQÀQÀ QÀ QÀ êQÀ QÀ uÁjõ}À}ÀkÕ‰À‰À‘Á„/ 9°0:V¢À}¢À®ÀU®À}À}À}Àþ°  ¾ËÀ)ÓÀªÓÀÓÀÓÀÓÀ¦ÓÀ˜ÖïÀïÀ©™âûÀûÀûÀªûÀûÀûÀûÀ ñ®Ð°$(÷ÓÀ ¿U0Ð0Ð0Ð0ÐSÀÐÀDÐDÐDÐ¥PÑòXÐXЪXÐXÐ XÐ XÐ ¦XÐ’bxÐxЪxÐxÐxÐ xÐ ªxÐ xÐ xÐ xЪxÐxÐxÐxÐüxаJU½Ð½Ð½Ð ½Ðe ÉÑÒ*ÕÐÜjjÝÐÝÐÝÐ Ý*ÊíÐ íÐ íаU žÀžÀá;iìjà à")Щ7Ò€"à"à"ॆ4vÀ6à6àò6à6à°<ÊV=&®–Wàê4B€_à_àúÂkà5=Àà …{àU {à{à{à{àU{à{à2à2à�2à“V§à°§' FÎÐ´à ´à ª´à ´à´à´àê´à´à´àG«ÜàÜàÜàJÜàèáòôàôàUôàôà ôà ôàU ôà ôà ôàôàUôàôàôàXÐ%XÐtÑhч<ð“ÛfDðDð°§'85ÐUðUðšUðUð9ÐÀið¦ið xÁàuðuðjuðuðuðyÝàj�ð�ð�ð•þª�ð �ð �ð �ð j�ð �ð�ð2ŽÀ©‘^ÁðÁðÁðªÁðÁðÁð Áð ªÁð Áð Áð ÕñëFôs~ûxA©’^   ª ª   ª    ©“PàIIIªIIIU­T iiiiU i i i iU iiii5ii®Pà¥U¥¥¥¥U¥¥µz怪ÉÉÉ É ªÉ É É ÉªÉÉÉÉšÉÉ{Ò€ªª  ª   ªš|Ò€UªUUUUªUUU U ªU U U UJUUi��U� � � �U � ���U��ÁÁ¿À¦ÍŠÀÕÕªÕÕÕÕ*ÕÕ Õ Õƒ‘ÿ4C125615‹PC$- !ÞR Kþ}£SRAM\KJWJI=ì¡cjd°kB%“©R|=­¿TÃ�“ 7162 $16 $ý1")YIHHG<î4'š¸› �B“Îã )\u½·«40û5WÍ"2NCONTROLLEDߤý å0TIFIER¿Y>==<74'Û.—›¡=q£P×£)I°-À-2Ñ!2Ö-æ-:ö%`)¢{â1 £Î7 R¸–M-M­F51220(’—3ÞR—0ÿK MEMORYVHGGF–"a=q=À�=‘6ú”÷3§=·=š™Ýù1 {Ð7 ìQ²Ö=æ=ö2‘“WCMGÝb)¢ffÎ1 Há�ž7 …‰6MFMF Aš4·D'qCXJIIH3"�M‘M¡M±G`ú”TÉMÙG8#q=0¡wR¸º7 ÃõœøM�]S‘“·A r¥0XYº/&_Â4JBû æ¤!Â=j]F02û07(“20-70æ«b2 { qCUGFwFE;½7q=^±P®G9·R½]Í]ÝQ�ú•èP(VôVV’&’£ö»(ì1 ®µ7 ¤óp�Z],mF010;65™d-65íRz¡ªqCTþVläD±P×;£Î7 = ³|mŒmüœaš0*** OBÿSOLETE OâÿPR�pšc�‘C *ÿ*2N.ba``_–"¨SËmÛmëmqû”phru¦÷T¸< ×±Pw33¤ ázäF}àV}u£dr©Wmúõ ôólûö¨CSÊV € € €U € € € €U € € € €U € €UUMU}Ò€M€M€UM€M€M€M€UM€M€ M€ M€U M€ M€ M€M€UM€M€M€M€5M€M€~Ò€¡€U¡€¡€¡€¡€U¡€¡€¡€ ¡€U ¡€ ¡€ ¡€ ¡€U¡€¡€¡€¡€Õ¡€¡€¡€T#àõ€õ€õ€õ€Uõ€õ€õ€õ€U õ€ õ€ õ€ õ€U õ€õ€õ€õ€Õõ€õ€õ€€T#àE�E�E�E�5E�E� ¦ða�Ua�a�a�a�-a�§eÐ-fÀ��U �� �� �� ��Õ������.TZÀ¥�¥�¥� ¥�÷A51hAPERIÿPHERAL IÿNTERFACE¿YBAA@9I—îA ÍÌ|G �Âi]A´qR¸Þ­|ºU£Ÿ82542£º’TÿIMER/COU°��(�8…à�è�ø�•°’¡ÿñ-Áž°1 †.¨ ª¨ ¨ ¨ ¨ ©‡PàÀ À À ªÀ À À À¡¥T§Àà à à à Uà à à  à M à  yz€° °U°°°°U°°°ÉUÉÉÉõ©ðôÀD°D°D°Iñ5ð��¡‘����Q��ƒ°ôòƒŒ³ÿñU‚˜³ÿñ�¤³ÿñU€°³ÿñ¼³öòªÈ³ÿñ}Ô³ÿñ|VŸ£zŸ {Ÿ£ÿñUyŸ£ÿñxŸ£ÿñUwŸ£ÿñvŸ£ ÿñUuŸ£ ÿñtŸ£ ÿñ¹sŸ£Ÿ qŸ£«sàsà =ÁÙTiÐIÀaÀQÀQÀUQÀQÀQÀ QÀU QÀ QÀ QÀ uÁjÂÀÂÀÂÀkþê‰À‰À‘Á„› à:Pà¢À¦¢ÀUЮÀ®ÀÊ…À…À…À"ÐS -ÐËÀëÀëÀUëÀ,Ð,Ð,ÐM,И%ðïÀïÀUÐÐÐÐUÐÐÐÐã ®ðзÐ$©(AÐçÀ @Ð0Ъ0Ð0Ð0ÐTÐ*DÐDÐDÐPÑtÐUtÐtÐtÐ8ñJ4ð 4ð 4ñ´Ð´ÐU´Ð´Ð´Ð´ÐU ´Ð ´Ð ´Ð ´ÐU ´Ð´ÐxÐxÐåxÐxÐüЪÍÐÑÐÁÐÁÐ ÊÁÐ ÉÑÒÞðÕÐÜÔÎðÝÐÝÐÝÐ Ý”ÞðíÐ íÐ íÐIà« žÀžÀá;^ìà àMwà7F�"à"àU"à›à Fà 6à•6à6à6à®àW<£À=z®”p¾Wàê_à¦_àú\àkàAÀªà “à “à “àªƒàƒàƒàƒàªƒà2à2à2às“KMò' ØàU Øà Øà Øà ØàUØà´à´à´àU´àðàðààà•ààààèá$ðª$ð$ð$ð$ð ª$ð $ð $ð $ð ªðððð*ðpÐpÐtÑhÑ™‡¦ð<ðÛÊðDð\Dð) 'eðUðÕUðUðUð9TÐÀiðið …ð uðUuðuðuðuðSyÝà�ð�ð�ðU¹ð¹ð ¹ð ¹ðU �ð �ð �ð�ðS2ÚÑðÁðÁð•ÁðÁðíñÁð ªÁð Áð Áð Áð ÒÕñ+ õruûv�< å U  U    SæÐÀ11çÔÀª====ª=== = ¦=KÑàee©LÝàqqqªqqqqªq q q q ªq qqqªqqqqT‰E�E� E� E�¥ E� ]‘E�E�ªE�E�E�E�¦E��F�ùùªùùùùªùù ù ù ªù ù ùùªùùùù¦ù‚F�IIªIIIIªII I I ªI I IIªIIIIfIƒF�™¥Ъ¡¡¡¡ª¡ ¡ ¡ ¡ ª¡ ¡¡¡Ò¡¡¶s¥ ¤7C748EBPNè¾gB8-BIT$#C×PU[ÚFg9#8�¾ 0= ?Bdl`')Bó�¶s¤ã5îQ#|íR+ OTP]¸6îþ#ìQ_ 0ÍÌÎ* 330-@-C5!4S&¹"a-u Y¸6#wq=F 0q=* ç)\çò�§-C52xS&2þMCU-u*íeƒ#Ѽ‹ �Â{Ž* ìQ\—- =2FCFA~8+=;0'i"B_3ó C&@º* �B£a=q=0R'è3tÈ-q$_¨<®G׋ w…�* = {Æ=€Ö=0¹'QCù= M§T)K\Cî"‘-¯z£H'á1‡4º@bM UDCWCB:AQ[ƒ$‹ w)\íì�®Íú-à¨M¸@µCÅM Q@?W?>8Ù‘fhd¤æ�;ázë‘HáZ÷M]Ÿ49H2N}pUËPDpRD!pwP\:W9988Rb„DFP—ìQDLR*R]b]4ó8HÕS”9PU-1ýKt! PROMXÜ4VL3\�fFP�@ì�áz$¸]­C‡55A¡:bº�Ê–[ÜÙF‚#= ‡FPÃõޱQff&m*m· PŽ>c4-2×r " ¥NŸTROLYÙF1s{ûFP¤pÍ@d¦%@³@€m¶s» ¥BÇ715ñt×rBUÿS EXTENDÿERUFEED;ºÙ‘aÞ’áz‹ ÃKõðybÎmµt¼ ¥ã91ˆ0`q×rGPI¿B TALK# L;ISpERW4V‚#×Há‹"ôì�™ºA}Q}74¿r”2MïULTI÷PTOC÷OL ¼dLERYß>==<7Ù‘ëpôórûö™0 [ †dàª1111ª11 1 1 ª1 1 11Š115�™ª™™™™ª™ ™ ™ ™ ª™ ™™™ª™™™™¦™„F�™€™€ª™€™€™€™€ª™€™€ ™€ ™€ ª™€ ™€ ™€™€ª™€™€™€™€š™€™€…F�퀪í€í€í€í€ªí€í€í€ í€ ªí€ í€ í€ í€ªí€í€í€í€jí€í€퀆x ªA�A�A�A�ªA�A�A�A� ªA� A� A� A� ªA�A�A�A�ªA�A�A�A�©‡x •�•�•�ª•�•�•�•�ª•� •� •� •� T•‘ÕÕG~B`„D×ß@ó@·Ü` ×½›âbÃõ(@«{ŸþãAL20L8BgCNS¨ÉrOCtp5  V’ �� (�8�H�8‘’ z¡þñU†Ÿ£þñ…t³þñ\-Ák°1 ¸ ¨ U¨ ¨ ¨ ¨ ©Ü¡Ü Ü Ü *À À À À¡ð Uà à à à Uà à à  à U à  ,° ,° ,°U,°,°,°°U°°°@°U0°0°0°0°SðôÀD°D°D°Sñ Ðh°X°X°EX°X°ƒ°ôòƒŒ³Va‚˜³þñ�¤³Uþñ€°³þñ¼³Uþñ~ȳþñ}Ô³µþñ|‡£z‡ {ª‡£þñy‡£þñxª‡£þñw‡£þñvR‡£ öò‡£ þñt‡£å þñs‡£‡ q®‡£sàsà R=ÁÙ¶IÀaÀQÀUQÀQÀQÀQÀU QÀ QÀ QÀ QÀ© uÁÂÀÂÀÂÀ¯k‰À‰À¾‘Á„  ài:Á ¢À¢ÀFª®À®À…À…À<…À"Ð -ÐËÀUçÀçÀ×À×ÀÕ×À×À×À˜TÖïÀïÀ ÐûÀUûÀûÀûÀûÀ5ûÀûÀ ®ÆО·Ð$(à×À ª@Ð0Ð0Ð0Ъ0ÐTÐDÐDÐRDÐPÑpÐpÐpÐ¥tÐ8ñ4ð 4ð T4ñ´Ð´Ð´Ð´ÐU´Ð´Ð ´Ð ´ÐU ´Ð ´Ð ´Ð´ÐUxÐxÐxÐxЮüÐÍÐÑЪÁÐÁÐ ÁÐ ÉÑÒLîÐÕÐÜIðÝÐÝÐMÝÐ ÝÖÐíÐ íй íÐIà žÀêžÀá;õ ìÕà àwà7TÆ�"à"à"àŸàU Fà 6à6à6ày6à®à<Á ½=ý ® Wà¯ê_à_à©ú\àkàAÀà ª—à —à —à—ઃàƒàƒàƒàê2à2à2à“s§àOð' ÔàU Ôà Ôà Ôà ÔàUÄàÄàÄàÄàUÄàìàðààà•ààààèáðªðððð ªð ð ð ð ªðððð*ðpÐpÐtÑhÑ™‡º<ðÛ}ÐDð\Dð- 'eðUðÕUðUðUð9T:iðið ‰ð ‰ðUuðuðuðuðSyr�ð�ð�ðU¹ð¹ð ¹ð ¹ðU �ð �ð �ð�ðS2ŽÀÑðÁðÁð•ÁðÁðíñÁð ªÁð Áð Áð Áð ®ÕñîôsOûvœŸ3s­  j   tÁ š“ý ) š) )öIÐ9š99ˆ†�I¦I‰Æ�UUªUUUUªUU U U ªU U UUªUUUU©ŠÆ�¡¡¡ª¡¡¡¡R¥0’ÀÅÅÅUÅÅŠŵ Šž†À¿TŠÀññññõññ /U    U    õ  099  + ; LT px„ ” ¤ ´ º-  Ý# ÂÅ W Á�Á�Á�UÁ�Á�Á�Á�UIIIIUIIIIUI I I IU I IIIÅI2O 6ð¯Ï [ [ Š[ [ [ -¡þq‡‡£�­‘­¡­±­Á­Ñ­á­ñ­½½!½1½A½Q½a½q½�½‘½¡½±½Á½Ñ½á½ñ½ÍÍ!Í1ÍAÍQÍaÍqÍ�͑͡ͱÍÁÍÑÍáÍñÍÝÝ!Ý1ÝAÝQÝaÝqÝ�ݑݡݱÝÁÝÑÝáÝñÝíí!í1íAíQíaíqí�í‘í¡í±íÁíÑíáíñíýý!ý1ýAýQýaýqý�ý‘ý¡ý±ýÁýÑýáüï($ôóÿ¯Ér‡ p‡ _ÿ¾Y Çÿ2Õ¨Gÿ;$/$#$ÿ$ $ÿ#¹Eÿé üïÿâÕÈ»ÿ®¡”‡ÿzm`SÿF9,ÿøëÿÞÑÄ·ÿª��ƒÿvi\OÿB5$ÿ ýðãÿÖɼ¯ï¢• {nÿaTG:ÿ- ùìße×’wHá’ß�= Wå�w�Âë’{óœýq£BYR164ý5Û…2NDIODÿE, SCHOTÿTKY 16A ÿ45V[DCCB­:Ò�ÿd×”ß�ö»(<å�\�ë’�ÇÂõ?Ç�¡á"$S ”0F� F� F�Ó¿ù V� V�UWb�b� b�U b� b� b� b�3¦bp‚� VªpŠ‘•.n@¹µPº�Pš�ªš�š� š� š� ªš� š�š�š�©»µPÂ�Â�‘„!Ñ‘ýñˆ‡#äô--$-4-D-T-d-t-„-”-¤-´-Ä-Ô-ä-ô-==$=4=D=T=d=t=„=”=¤=´=Ä=Ô=ä=ô=MM$M4MDMTMdMtM„M”M¤M´MÄMÔMäMôM]]$]4]D]T]d]t]„]”]¤]´]Ä]Ô]ä]ô]mm$m4mDmTmdmtm„m”m¤m´mÄmÔmämôm}}$}4}D}T}d}t}€„}”}¤}´}Ä}Ô}ä{luôs ûpÍ�‡ þ�+BÙlÿ3Ѹÿ—rYÿÿ›&�&ƒÿ&òæ%é(ÿSj”ÿ[*ùàÿ¿š�\ßEXCEá�3S1ù R R R5RRAbÀjžá�2Œ\àŠ�Å€Ðý Ѓá�1Ë wµ ‰Å Š�¡ÔüÀœœœN^i²0\àw�©ü²ð½½½¼½á�/¸­ ¹èIЬ¬¬. ª½½ƒƒL‡ƒ kÖÐ å  á�) ï) *—Xc�’( 0 ª0 0 0 0=yµÒ( où QUë�ë�00U00HHµHHzµÒ'« ¨  ¨  °¡ÀLµ –šàž žU ž ž ž žõž‚‘æ–Âç-Ð'½àŠ�¯0ÖÖ*ÖÖÖ Öá�O& ‘0 ÷ ÷U ÷ ÷÷÷U÷÷÷0¥0DO O ªW W W W ª[ [ [ [ ö[ Ðp¢%9`R<�a\àd d d Ud d d d +fw�…<��  Œ UŒ Œ Œ Œ UŒ Œ Œ Œ U Œ Œ Œ Œ UŒ Œ Œ Œ MŒ �  Ø Ø UØ Ø Ø Ø UØ Ø Ø Ø U Ø Ø Ø Ø UØ Ø Ø ÷U÷÷÷÷U÷÷÷(1_„$4F�F�MF�Œ, U0 U0U U0 U0 U0U0UU0U0U0U0S�  �0�0�0U�0�0�0�0U�0 �0 �0 �0U �0 �0�0�0U�0�0�0�0SŽ  Ñ0Ñ0Ñ0ÕÑ0Ñ0Ñ0Ž]á�4 R R RR^QL)Q ajnjjjji y ‰ ™ © ¹ É Ù é ù )9IYiy‰™©¹ÉÙéù --)-9-I-Y-i-y-‰-™-©-¹-É-Ù-é-ù- ==)=9=I=Y=i=y=€‰=™=©=¹=É=Ù=é3U©p ©p ©p ©pU ©p ©p©p©pu©pÅqô$ôó1DõòÁ”Éà €Õ € € €•4ÎЀ €üÀ)€S =rÀ1€ 1€1€-1€‘†À’ŠÀI€UI€I€I€I€UI€I€I€ I€¥ Q�“Y°u€u€ªu€u€u€ u€ ju€ u€ u€»ŽÀª�€�€�€�€ R¥�X µ€ µ€ µ€ËTT U`É€ =Õ 7€ ;€ ?€ õрр> Ué€é€é€é€Ué€é€é�Cî€j � � �·IÐú�‘„C ™š°*� ƒì�2� © ®ð:� :�:�Ê:�:�:�á�B5 P P �l c�5c�c�‚`s�Us�s�s�s�Us�s�s� {‘_„A :�:�U:�c�c�c�U c� c� c�c�yc�á�@çý šÑ� Ñ�ýQÐc�žÈ“? ôˆ î�ªî�î�î�î�ªî� î� ¡Q`€ä»P  r > Êh@ î� +¡�HÌE°7 IüÀ?  ðTrÀG  G G G nr = h@ºEÐ*d  G G l¡ u £< „@• „@‰¡òzÀ º £; [@ª[@„@„@„@ J„@ „@ º¡   õ   £:éLbðß CŒàç ç å •  • k°9©M‚À°°°š°„@½±Ð°¯¾ ° Êc�c�ȑȓ8U ° °„@°ù °k°7³G¹a¡[� :�3º¢ðn°?»Àv°Mv°@ŠÀ‚°‚°•‚°‚°‚±G TW¡G G G G ÕG G  W£6µ? ?  »)ðÅŠÀϰϱÃ!°Û°û°5ÂVPß³ò=MM"M2MBMRMbMrM‚M’M¢M²MÂMÒMâMòM]]"]2]B]R]b]r]‚]’]¢]²]Â]Ò]â]ò]mm"m2mBmRmbmrm‚m’m¢m²mÂmÒmâmòm}}"}2}B}R}b}r}‚}À’}¢}²}Â}Ò}â}Ø êôsVûvŠ€ºhl°"€ ù¹�ª   ¦ûà11ª1111 J1 9þ¹�UUóÿ àa Õ i ii,þ€y :ê€;Þ€…_< é€ é€U é€ é€ é€ é€Ué€é€é€é€K?Ö€BÚ€½½U½½ � �Õ � � ��LÞ€å¨î€ííUííííU í ííí•ù©ò€½ö€!ª!!! !š!!¾ö€A ªA A A AY¿ò€YªÞ€»æ€©¼ê€iiiýÝò€„J»7‚@ SAꀒ’ åK¦æ€§î€¦¦U¦ ¦ ¦eU e e e eU eeeeUiiiu¢mÞö€öIÀI�‹<€IÀH: ¹€ e‚†‚ ñ¹�ª# # # # j# # # òàªC C C C ªC C C C ©‡ú€yyy ªy y y y ªyyyyjyööë£ £ £ £ ª£ £ £ £ ª£ £ £ £ ª£ £ £ £ &£ ìê€ë ë IÀWG8€€ EÑRÐÑÐÐ÷Ñ©ÔÀ000š005F°40ª40404040ª404040 40 ª40 40 40 40*404040p11€S>²€€0€0E€UE€ E€E€E€•E€”1¹°¨0š¨0¨0ºv€¸0¥ù°úF°Ä0Ä0 Êŀŀ É€IÀF8S´€á0á0á0Sµ€ñ0 ñ0ñ0Uñ0ñ0ñ0ñ0K¶0·ú0@@5@@¸§ÐÅ€5Å€ É€ î¹�9@U 9@ 9@ 9@9@U9@9@9@9@M9@ïàe@e@KðàDÞ€u@u@SEê€�@�@�@U�@�@�@�@•�@ �AÕ@ª©@©@yyD§˜ÀÆ@ Æ@ ªÆ@ Æ@ Æ@Æ@ªÆ@   Ò ¡   ¶WPPPP��(�8�H�X�h�x�ˆ�˜�¨�¸�È�Ø�è�ø�­­(­8­H­X­h­x­ˆ­˜­¨­¸­È­Ø­è­ø­½½(½8½H½X½h½x½ˆ½˜½¨½¸½È½¼Ø½è´Ôôó?И‘ÿóÎeLÿ êµ”ÿk2ùÜÿ«f5Ðÿ-Ö üÿïâÕÈÿ»®¡”ÿ‡zmPÿE9.$÷ ;ÀóæÿÙ˽¯ÿ¡“…wÿgWG7ÿ'üÿéqa±ÿ¡‘�QÿßÔáÑÿÄ´¤ñÿÁ”‰ÿtf\Qÿ=)ÿ¢•ˆ{dÿ\�úõeº€Wº‚wCÿ�Âõ?dß…Ë?ôaà×£÷°ekº‚HáZAý¾€2Ad®÷#A,Ý‚ A'¿ã¥Û>èbàÂïu?¬Ê�PICÿ16C55XTS9O’IÀK! U    Õ ‚ ‚ ÀTÅp’’’’U’’ ’ a‘Ñ||Œœ¬¼ÌÜìü --,-<-L-\-l-|-Œ-œ-¬-¼-Ì-Ü-ì-ü- ==,=<=L=\=l=|=Œ=œ=¬=¼=Ì=Ü=ì=ü= MM,M20ÿÿmšÿ™‡Aq=^ÿAd…KA,ÿ®;A¿'ã¥Û>è‚�ßÂu?®°PÿIC16C620ï20SO+¶-20?/SO2YIܣ㩿cPOON?õ¡lîú¢\�‚°š™Uî° ×C²Ãõ4½&½P8ºPG¶â­òªwáz4°)\°÷)\²š™ù@l„½'º046¹04D½îT½0ÿiú¢�Â-î°{°\�B{´ðï½ÿ½£¸À9 Â꺻_ð¦dú¢Ãõ"ÿBÍÌBd߸B±ö(ë B]Ë­“¹1JWÎÚÅ/JW‹ÍŰZIïHHG0O1Q�ê6SM1QŒ6SL/ªL`L` L` L` šL` L`a`p0*`0`0`0l1B UB V V €1*Z Z Z Œ10U0 °0  0  0U  0 0ô`Ü0U Ü0 Ü0 Ü0 Ü0U Ü0Ì0Ì0Ì0UÌ0Ì0ü0ü0©ü1ä0ä0ä0>ì1„K*CQ?PU?P?P?P?PÕ €KP KP À¤i0õ�IAõ�õ�ªõ�õ� õ� 1ACTäPM@M@ Ò@Ò@UÒ@Ò@Ö@Ö@QùêAÖ@ Ö@ Ö@• Ö@=¡ª`�@Jî@P"QPQ\ép-PJKPKQªååõ�õ�Tá‘Ú Y@…@…@U…@…@ …@ uAªP P P P ªP •@•@•@ª•@"P�@�@H¥A�AËPËP&`Iöñ]‹/3H: @ A¨�¶A¶@ oP oP ªoP oP SPSPªSPSPƒPsPªsPsPsPsP ªsP sP sP ªépépép ép ªép ép ép épªépépépépªÙ Ù ``ª````ª`` ` ` ª` ` ``ªÓPÓPÓPÓPÉìÐP`` pG8S”p,` H`H`U. . . . UX0X0X0X0UX0X0t`d`Ud`d`d`d`Ud`d`d` d`U d` d` d` d`Ud`d`d` a¥=y`>}`°`°`JÔ`Ô` ÔaÄ`Ä`•Ä`Äa¹•0Ø`ªØ`Ø` 0 0©ùW ´0´0´0 Êapap ep F8S´:ppppU=p =p =p=pU!p!p!p!pS¶ä UpEpEpõEpEp¸U pp p ‘pU ‘p ‘p ‘p ‘pU‘p‘pipip5ipipï•p-•pðÑ0DÀP¥p¥¥pÕqÕpÕpªÕpÕpÕp±p*±p±p ±qÕÔPÙpUÙpÙpÇPÇPϼôó•0ëëš/0�/06ÿI=%¼ÿHÜsÿ§=ÚrÿØ9ÕÿñåÿÙÍÁ²ÿžŠvbÿN:&ÿþêÖÂÿ®š†rÿ^J6"ÿúæcHandler'±þþóOle2.ïdll3öðWñ†�0þòProgkIDr‡bTbaTo3{ÝD@PßÖ¥pó)¤¨ÀºãffÎ@m`àw@â±O@6óO@è×£0å€rãë€SffªHÂõŽu²s²…cA® T   ª,` ,` ,`f!ST¹04� 4� 4� 4�é 4� SK‘. RT"@U� U� U�@U@@@ @U @@@¶@•¶@¶@OQ¶@ R¶@ %A¶@™‘�`¥[�`ø¡0v v ªv v v v ªv ©©©ª©©©©ª©} } Á *Á  Á  Á  Á !öñ�/3-+-;-K-[-k-{-‹-›-«-»-Ë-Û-ë-û- ==+=;=K=[=k={=‹=›=«=»=Ë=Û=ë=û= MM+M;MKM[MkM{M‹M›M«M»MËMÛMëMûM ]]+];]K][]k]{]‹]›]«]»]Ë]Û]ë]û] mm+m;mKm[mkm{m‹m›m«m»mËmÛmëmûm }}+};}K}[}k}{}‹}›}«}»}Ë}Û}^ër4ôsn¡†M‘/°Ì0°  Kåji' µ “Hд=à11 ? ÇÒE°Ó¹°E EãTÎ�Q … … …U … ……𡦅¤Ðy y ªy y yyªyyyy©ÐÐ¥¥¥ *¥¥©¦ÀÁM ÁœÐÍÍ5ÍÍÐÐáUááááUááá áU á á ááSÐÐÓ- °)).2¨Ðy¬Ð9œÐÐAK«¬Ð°°ÐM MUMMMMSÀ Ði i iÕ iiiØTœÐ……… …U … … … …U…………sÙÐйìù°ZÂÂûñ°ü¹°jÒ ÒÒýù°šââ{œÐîªîî î î2öʰР˘Ð ¥   cx�˜®/³b¡ðSÐRSÐSÐ  ax�—/³õ_x�–/³^ø”Eàv Ì°̰  \§; ³*ðu u RðñðððU ð ð ð=ñª!ð!ð!ð!ðª!ð!ð !ð !ð ª!ð!ð!ðAðªAðAðAðAðªEðEðEðEð ªEðEðEðEð–À6W 7° 0ª 0 0 ° ° ° °¼°-1D�U•ð•ð¡ð¡ðU¡ð¡ð¡ð¡ð­¡ð èÛ¢[x�•ª/³Zx�”/³Yx�“®/³X©�©�¦©�4S –0 0ª 0 0 0-0ª-0-0-0-0*-0-0 º1R€ÐÎ0UÎ0 Î0 Î0 Î0ê  Wx�Ž/³V$ ©Ͱ÷0÷0÷0Òÿ1PhÐ @ @QTÎ�@@@@U@@@@U @ @ @ @U @@@@U@@Î0Î0QgAH‘D�D�D�uD�H“U�© ‘���š��%ì ¨@&¨@ O@д@ ´A,àU ,à: : : U:  : : : 5: : Éa°ì@Uì@ì@ìA °`P�&�6�F’äÛ¢R�b�r�‚�’�¢�²�Â�Ò�â�ò�­­"­2­B­R­b­r­‚­’­¢­²­Â­Ò­â­ò­½½"½2½B½R½b½r½‚½’½¢½²½Â½xÒ½â½òºN ôóýH¡†«XÔRÚpäI� € € €U € € € €U € € € €U € € € €U € € € €Så¿P]€]€]€U]€]€]€]€U]€ ]€ ]€ ]€U ]€ ]€]€]€U]€]€]€]€M]€æ¿P±€±€U±€±€±€±€U±€±€ ±€ ±€U ±€ ±€ ±€±€U±€±€±€±€U±€±€µ�çI�ª � � � �ê � � �11-ÿ20J2YIC-ÿSM-256K ÿMICRO SUÿPPORT_GFÿFE;20?iÿÃõØûAÿp¢Ad=ï ›A,ö(àÿA'ã¥Û>è~sP�Âu?¹ÿPSD3111 5J„“-Š�.�>�N—ÿ®G BR¸�Ìa�{Äg�w�3E0‰•0’�¢�I–gS’÷{#Ä� BÒb‘ïÐ�à”à“Q8o3C94V¤2N ÿTWISTED ÿPAIR TRAÿNSCEIVER¿]BAA@9N�ÿÝeS’\�ô[�HáÎa�®G³9¢‡ÀA­æQ¨2A½¥d¢ETHßERNETu©[D¯CCB:‡¡^S’»„Ä�¤p_3 ÷®AB:¡\�5B©­R¤023Ä¡%±Í£ÿNCODER/DUE7²T‚¦ZŒ¤ž[�×®cš¢19¢ ×õI ¼Ò“M762×8HP€µ1e¡8-ÿBIT DACPÖç¥?[Œ¤ Ä�áz�êa� ׫c½à”ÓÆ{µ54…³Ý²�²12º–µQŸ¼š™Ä�…;ëÅa�33‘½½Í½w545à´5FPd¢ï½ÿ½ÆÍ"Í×µÁ3à´•À꽟¶N³ìQÝ”[�ázXa�Há sÍs½5„´îÂd¢•½ºO�fS’ÍÌ,ÂÂüÍ@›¡¹@ÏÍßÍ24òñÄ4CÄÓMULTIPLYINGš±Ý\°Ì\�zÄ�ÍÌP3 33)²-Ýx¸226†²®ÐSÚ›ºN³w)\[�¸Ua�'ìQ,ÎÍžÝ2IÔàܹÝÉÝö(¼[�Ãõœa�…ë}èÝøÝà¥G äGퟶcS’¸ë-6âa�ÍÌÄô(Ýà”Õ{´1012øeá»ãd¢COMPE÷NSAm¡OP AçMPYŸ¶ð£ff":W²×"и½œíà”ýž“LUS16Lç87N÷d¢OCTûALp LTHGGëF=~N9X?>>=7N‘Õ\ëär¤ò5a�Ñ9¢~=¤4™245ú=5RŒ ONTROÿLLERRA@@S?8‡¡‡å½W²�a�w¸‡9¢áz|ã=ʧ3³3 e¡MEÿMORY I/Oÿ, TIMER ÍA@YY½5Ф�Â]9[�ÍÌmÂë°òO33Ó@@M¨2àH·Dd¢_R2"Z6ÿd3—áz4[’P"3šƒ™É¢M²G·BÄMÔE1¬4 ¼6ÿdºÄP[’B<â9¢Tñ]³E0~R>=4PERIPÔ 8ðúi-3!Z@??>ê€BX%¤„[�ìQ\Na�×£<9­Å-0»C´åQƒ+N’ýff¹R8ªòÅ]Õ]0³!„*¹K½6‹£póFsð°ò"mu?Þ§QS338\ �c¼û10uâBUS SWITCHZ=cmsm–ƒm83•c3DîaE[XC( GE±dXÿV®Óff6”¢Ú"Ðfsf¶×mçm245•a|Yq¼QUICK²c ­`J�R\}+};}K}à”b¿qd}t}•óÀõ%ôóXûö™:_² € €} €³€U€€€€U€€€ €Õ € € € ¹WM€QQUQQQQU Q Q QQUQQQQ]Qè ; ?Q CV€‘€‘€‘€U‘€‘€ ‘€ ‘€U ‘€ ‘€‘€‘€U‘€‘€‘€‘€5‘€‘€é’€å€Uå€å€ å€ å€U å€å€å€å€Uå€å€å€å€Sê’€���U�� � �U � � ��U����õ��ë  PRECISN0_ REFYÿVa#B¯ ×ó@Rñ±"Ð\»�‚°ò)\ŸØœó>§EF01Ci�´’^d¢+10Vh›WwœwìQð‰�®GÑ"Ð'®¯•�¥�051£¸À�Ð�Ô¸ÉUPöË(žP"~bû�u?ýî§CV420KùPt¥ÉãURRENT LOÚàj�á¢oÝïR¸Þ?ÝÑ¥?d¦Ý^?X­³Öo¤4Ç558{ Ü¢ŠRDUô8ðÚãP[7„[��(�8�H‰ˆ� �r°Zh±ÿñ” g±õYÿñ“u³X×аа4÷–°6Õž°ž°ž°¼W®°®°®°U®°®°®° º±©R¾Î°ΰ ΰ Rΰ ΰ°WÿñŽu³OV$ ÷°÷°•÷°ÿ±P À¦ ÀQ:ÀÀªÀÀÀÀªÀÀ À À ªÀ À ÀÀªÀÀÀÀ*ΰΰgÁS®oÀUoÀoÀoÀoÁÿ„UˆUŒÀŒÀŒÀŒÀ5ŒÀŒÀ%&°¨ÀM¨À O>°´À ´Áù”B°ÀÀȪÈÀÈÀÈÀ ÈÀªÈÀÈÀÈÀÈÀ¯ÉìÀìÀŠìÀìÁ«°Ð°TK ŒÀ �ÁÀÀ ÀÀM ÀÀºÃ°oÀ oÀU oÀ oÀ oÀ oÀ{äf²S. RB°jFÐ FÐ FкÑT&°VÐVÐ VÐ VÐ5VÐVл°vÐUvÐvÐ vÐ vЕ vÐ vЊÑа}[ðø þª¦Ð ¦Ð¦Ð¦Ðš¦Ð¦Ð?–€ÂЪÂÐÂÐÂÐÂКÂÐÂн–€âЩÁ>êÐ êÐ êÐ ÔêаRÿñ�u³Q0Õ ŒÀ ŒÀ ŒÀÚß’~°Õ#à ÈÀ ÈÀ QR›°’Ÿ°7à7à7àM7à“�°!Ð!Ð)!Ñ!Ð !Ð !ѦÐM ¦Ð Joà oàÕoàoàoà,–€‡à9’€:š€“àU“à“à“à“àU“à “à ¯áÃà =�f²P "J€ÔàS•&°ÜàÜàÜàÕÜàÜà Üà�QTЫ°!Ð �à�à•�à�à�à°Oªÿñ�u³MÿñŒu³L¿/5ð ª5ð 5ð 5ð 5ð¥éÀ íÀQðQðRQð]ñ3à3à 7ॠ7à qñKàKàÒKà}ñøàøà »T£Ð‘ð ‘ð ‘ð‘ðKúðÚ©ð ©ðU ©ð ©ð ©ð©ðU©ð©ð©ð©ðS:ÕðÕðÕðÕÕðÕðÕðë²"ôs‰ûv A—·&°¸*° Ê M€ Q±ž° ‘L`à%çdÀ-‰5��ê†ASëdÀIIIUIIIIUI I IIUIIIISìdÀ‰‰‰U‰ ‰ ‰ ‰U ‰‰‰‰U‰‰‰‰SídÀÉÉÉUÉÉÉ ÉU É ÉÉÉÕÉÉÉî4dÀñòÓòZø4ò%% ztà1U1111S{’€IIIUI I I IMI~ëÐm m5 mmÉ’€�U����U��� �U � � � �U����M�Ê’€ÍÍUÍÍÍÍ¥ÑÌš€ííJííñå€å€Uå€å€å€ å€) é����ÐpÿFET[JIIHu=û!j#BÍÌŒê�÷q=*™pR¸@^pQ…ëñ?¨{JÍ#ÿFD10P03LëSMn(2@ANSëISW0,,# DPçAK`3&€“33‹îê�ff&™pÍÌ .Q"{îY,Ki+n&ü„-/ WFEED;ºHQ]#B¤p�ê�Ã;õX™p®G!ö�¯t�ò­•50Z93ŠR5â)¬S§QA”Háž.UP ×g[R)W­,=§43G¸‘™11‹Q2é.J=8§_#Bš™�îê�\�2™páz =‰=25>1ú0ŠR©=gEFU[6Âc ×®!w…ëA™p×£Ú=Îê=25DVCŠRSMtMs�X[<@K¢� `¤pÍ9MIM1³92›2»B2YEV�OLTApÔ‘Ÿ¦`2ö(D!0CÎ`›M«Mã12>1PŠR1.2U6¬ÒU[õñ•�³Zõñ”î³uYõñ“î³XšÐ5šÐšÐ4Dà–°U!!!!U-°-°-°ʱ*-°-°-° º±Þ°Uΰΰ ΰ ΰ© ΰ†ÀWõñŽãV«$ À÷°÷°J÷°ÿ±Pú À ÀU[À[À[À[ÀU[À[À[À[ÀU[À [À [À [ÀU [À [ÀKÀKÀUKÀKÀKÀΰEΰgÁƒÁ9Ð9ÐÕ9Ð9ÐoÁ„—U¤ÀѤÀªàààài%Ýà¨À¨À O‡ÐR´À ´ÁÐ ÐèÀUèÀèÀèÀ èÀU+à+à+à+à©üÁìÀìÀìÀâìÁýàÐ@ÐT Rà �ÁÄÀ ÄÀ ÄÀ©cá9Ð 9Ð )Ð j)Ð )Ð )ÐäûÒOS. R¹ÀFÐ FÐU FÐrÐrÐrÐUrÐ VÐ VÐVÐUVІÐvÐvÐUvÐ vÐ vÐ vÐe vЊÑް[Xà©øjðkà kà kàªkàkàkàkàªÞÐÞÐÞÐÞЪÂÐÂÐÂÐÂЩ½êâÐúÐêÐ JêÐ êÐ êÐÎàRõñ]� óQ0 Ð Ðý ÐÚ’]Ià#à ÐÀU ÐÀ iðuðuðUuðuðuðyð•càcà!ÑSà RSà !ѾР¾Ð ƒàU ƒà oàoàoàMoàê‡àðU³à³à³à³àU³à£à£à £à¥ ¯á<ª·à ·àÙ=nÃà �òPS "gÐÔàìàÜàUÜàÜàÜàÜàU Üà‰ðSàSàU ð�à�à�à©�à Oõñ�W£MºõñŒW£L/E€ªE€ E€ E€ E€ ¦E€éÀaðQðJQðQð]ñ3à3à• Gà Gà qñKàJKàKà}ñøàøàU ¡ð )° )° )°M)°ú›Ðl  l U l  l  l  l Ul l l l Ul íðíðíðUÝðÝðÝðÝð¯ˆôslûv›J€ÄÀÑÄÀÄÀE3 )�7¡%€%€I¥¡Ñ á¡Ñ Ñ UÑ Ñ  Ñ Ñ ¥Ñ ;¡; í¡¸TÐa a a aUaG G ±dA�jÑ]°�‘�°j••øàž`àª-° y€ y€ y€ ªy€y€y€y€ªy€y€y€y€ª}€}€}€}€ª}€}€}€}€ ª}€ }€ }€ }€ ª}€}€}€}€J}€ëº!!Sìv€-�€ �€M �€îtÀAAUA A° á€ပ•�•�¥‘•� ªÍ Í Í ÍªÍÍÍͪÍͽ�½�ª½�½�½� ½� ’½� Å‘=Ðúõp1èOq=:Q"Î!Oi$P45ë’Öö�ª†E�¸™p¤p]K µP@|¸!è¤pÅ1MÏß!5$2Yæü&w3ÿg2…{m0w33s0…û"tt!Ê!ØÅFP3Ü èÛ—"ä ÷# TO_-220]øf2w×£†m0�Â!s0ÏHáA¸ùAèO�Âõ?†-–"5û%Täµ'\ÞFc‘t� "Ñ-3Dß-',3ê‘LEøa7 =ôYHGGFÕ<¡e%DC™p®[Ç?÷AÀ?E3Àì ×Í̬R=FˆP10ø;!Ç2u:LOGICr±$[ ¨’q33£™pʘ1dm #" Aè’@…-Å0Ø,BE-ôb#wR¸þ™p×£˜ŸpwR¸~")\¿'HáZ$-*C5Ë2ŒBäÔ=ä6]Y&É#…ãî™pìQˆŸpázdÌ"ÏAè˜1MP1A53òBu==RI®™p33SeB."5Qç!yMðAf1UVšMªM_&ך™™ÆB8Ÿpš™9"ÂìQF]VSÀ�B¿Sg]w],0b#…ë©™pq=jŸp ]@°]Ç5&cÎ]Þ] kWBwÃõH™p…ëñ¡0wÍÌ̧2ff¿ffæµ=$bì�i2�eü5mä6aJIIH=\Œq#ff†™r!Ÿpranm~m˜ :"øcÿMU-êôR‘_B0Ÿp…ëzdj¿×£ªAçm÷`N1ÃSZr mEm,0¸’3`Ò ö(¤"ˆô9}âDKÏL1N2°Ê1¿s}µ$39í50_ÿzôó!~õò™:i�Àª € € € € ª € € € €ª € € € €©jà=€=€=€ª=€=€=€=€ª=€ =€ =€ =€ ª=€ =€=€=€j=€=€=€kઉ€‰€‰€‰€J‰€��{Ð¥€¥€U ¥€ ¥€ ¥€ ¥€U ¥€¥€¥€¥€5¥€¥€< ¥U¥¥¥¥U¥¥¥ ¥ª¥ ¥ ¥ ¥ª¥¥¥¥¦¥Ÿ.°%�%�L)‘¢Ð¶�9�9�U 9� 9� 9� 9�U 9�9�9�9�59�9� ßÐm�Um�m�m�m�Um�m�m� m�U m� m� m� m�Um�m�m�m�Ym�“�¹�¹�U¹�¹�¹�¹�U ¹� ¹� ¹� ¹�U ¹�¹�¹�¹�e¹�¹�—�ý�Uý�ý�ý�ý�Uý�ý�ý� ý�U ý� ý� ý�ý�•ý�ý�ý�›�UA A A A UA A A A U A  A  A  A U A A A A eA A Ÿ�� U� � � � U� � �  � U �  �  �  � U� � � � Y� £�٠٠U٠٠٠٠U٠٠ Ù  Ù U Ù  Ù  ٠٠U٠٠٠٠V§�%°%°%°U%°%°%°%°U%° %° %° %°U %° %°%°%°•%°%°%°«�Uq°q°q°q°Uq°q°q°q°U q° q° q° q°U q°q°q°q°q°q°¯�×ðš½°U½°½°½°½°U½°½° ½° ½°U ½° ½° ½°½°U½°½°½°½°V³� À À ÀU À À À ÀU À À À ÀU À À À%Á« _À_ÀKÀjKÀKÀKÀR¿Ð¢cÀgÁƒÁ)Ð)Ðê)Ð)ÐoÁ„UKÐÑÐÐÕÐÐÐ%4[ШÀ¨À O²€´À© ´ÁÐ ÐèÀªèÀèÀèÀ èÀª+à+à+à+àTüÁìÀìÀìÀìÁq2�Ð@ÐT �À) �Á  cáªÀ À À À ÊÀ ÀµýÐS.S R¶€FÐ FÐ FÐUrÐrÐrÐrÐ¥ ‰ ‰‰‰ª†ÐvÐvÐvÐ ªvÐ vÐ vÐ vÐJŠÑ"Ð["Ð5� ¾ÐU ¾Ð ¾ÐkàkàUkàkàÚÐÚÐUÚÐÊÐÊÐÊÐ5ÊÐÊнšâÐUúÐêÐ êÐ êЩ êÐÎàRõñ� óQ«0 �À �À �À¿Ú’Ià«#à ÐÀ ÐÀ ªiðGàuðuðªuðuðyðüàRüà!Ñüà üà !Ѫ¾Ð ¾Ð ƒà ƒà ªoàoàoàoਗ਼‡àð£àª“à“à“à“ઓà“à “à ¯á<42À·à ·à=¨àÃà{ �òP "OЪÔàìàÜàÜàªÜàÜàÜà ÜડSàSà ð*�à�à�à�à/ðUOõñ�ãMõñŒãWL/Eð5ð 5ðÕ 5ð 5ð 5ðTéÀaðQðQðQð©]ñ3à3à Gà RGà qñKàKàKà©}ñ¡¡ ¡ð ª‘ð ‘ð ‘ð‘ð©ú"ÐÑð Ñð Ñð ªÑð Ñð ÑðÑð*©ð©ð©ð©ðc�¨¿°ÞÕðÕðÕðºÕðáñHôs ¿õÇžà‘þà?3'''Þÿ &Pÿ–õ#ºÿXö–4ÿÖ¿ØüÿïâÕÈÿ»®¡”ÿ‡zm`ÿSF9,ÿøÿëÞÑÄÿ·ª��¿ƒv 6�óÿæÙ˽ÿ¯¡“…ÿwgWÿG7'ÿüÐäÿGé=ÿqa±¡÷‘É! Õxý ¡0D‹l>èÿTã%>¸ Ý^WBq=„Ò Há�Ø ázGrÃAè¯R¸Þì&oÏU¿RG3060ø2ÿNDIODE,UýLÏp-FASTTòçvbYc†Àh ëW1 1 1U 1 MðQðQð“76�QQ†Àg¸\‚ãeÍÀŸ„d* ’€z™³Î€‚ ´Æ€Š–Š ¶â@¸Ú€šªš ššš™!F² ë2кiì|ÀÂÂûtÀ©ühàÒ ÒÒiý|Àââ{ÓЪîîî î ÊîöÊ6À Ë”ÏÐ   †ÀczF1˜ãbð`ÀIñdÀ7 7 †ÀaF1Õ—ã_F1–ã^Gøk°`À©ð©ð®†À\; ‚‚ª‚ŠŠŠJŠŠ ’Š ŠSµwС ¡ ¡ U¡ ¡ ¡ ¡ U ¡ ¡ ¡ ¡ U––––M–·åàå å Uå å å å -å ¹Æ 6"�Q¥QYQ‘ðj‘ð‘ð‘ð¼&�|-1Àï90U3 3 3 3 Õ3 3 3 èª>Ò[õq•ãZõq”êãYõq“ãXjšÐšÐšÐ4�ª–0 0 0 0ª 0-0-0-0ª-0-0-0-0 Tº1kÀkÀkÀ kÀ¥ kÀ kÀ†ÀWõqŽžãV$ LÀ÷0*÷0÷0ÿ1PXÀ @U @KÀKÀKÀUKÀKÀKÀKÀUKÀKÀ KÀ KÀ KÀ KÀJÍZÍjÍz͚͊ͪͺÍÊÍÚÍêÍúÍ ÝÝ*Ý:ÝJÝZÝjÝz݊ݚݪݺÝÊÝÚÝêÝúÝ íí*í:íJíZíjízíŠíšíªíºíÊíÚíêíúí ýý*ý:ýJýZýjýzý€ŠýšýªýºýÊýÚýêó—¾ôóŠõòõñš¦` Ì×  € €j € € �ä;P×!€!€åW1€1€1€U1€1€1€1€ShŠ€Q€Q€Q€UQ€Q€Q€Q€UQ€ Q€ Q€ Q€U Q€ Q€a�i�@ª¡€‘€ ‘€ ‘€ ª‘€ ‘€ ‘€‘€¦Ô`#Ú€µ€µ€ ©áOPÁ€Á€Á€šÁ€Á€Í6Ù€ ªÙ€ Ù€ Ù€ Ù€ªÙ€Ù€Ù€Ù€¦Ù€Î$`�� ©f>p� � � ª����ö�gF£ª9�9�9� 9� ¦9�Ðl@Q�Q�ªQ�Q�Q�Q�ªQ� Q� Q� Q� ªQ� Q�Q�Q�ªQ�Q�Q�Q�©Ñd@������ª��������ª�� �� �� �� ª�� ������J��Á‘Ò.På� å�U å�å�å�å�iñ‘‹`‹` (2Àª        æ  >Qp” ªÐ@ Ð@¢P¢P¦¢PãPD D *D D D¡>P\ U\ \ \ l¡¥À Àx x ªx x  x  x RŒ¡>À˜ ˜ ˜ Í˜ À¬ ©RÏPÀ p¸ úSmõñ=’ck& Ç0Õ U Õ  Õ  Õ  Ù¡¦Q ´jpñ  ñ  ªñ ñ ñ ñ jñ ñ ñ µ·0©¾Ë0°°° ª° ° ° ° ª°°°°j°¢P@¡PW]±ã|@>R×j‘€‘€l4¥@'`'` Ù@†°e†°†°Ž Õ UÕ Õ Õ Õ UÕ Õ Q Q“ ‘np¾° d!@éUp@ΰα„i§>g™@Q€Q€JQ€Q€i�z°z°SmR€ÿ°ÿ°Mp5MpMp ½pÀUÀÀÀÀUÀ°°M±R°1±Õp Õp ÕpUÕpk@k@k@•[ÁÓ`@Ôl@e°Re°e±e°e°e°U e° e° e° e°U e°e°e°e°Õe°e°e°ä¬d@³À'pE™ ŽÔ pÃÀÃÀÃÀ—&>Rh$0@QP)SÁÕpÕpÝqk@Uk@k@ k@ k@•k@(Ñ ™ 8Щ­ @Ð@Ð@Ð *¿À ¿À ¿À ¿Á¿À¿À¿À`p€� °ÀÐàð-- -0-@-P-`-p-€-�- -°-À-Ð-à-ð-== =0=@=P=`=p=€=�=à =°=À=Ð=à2äõ#ôsPûv—.UT p t t Ut t t t Ut  t  t  t U t t t t U x  x  x¡.¨`RU U´  ´  ´ U ´  ´ ´ ´ Õ´ ´ ´ ªT×P‰‰ ‰ ‰U‰‰‰‰M‰«y ±±U±±±±U±¸  ¸  ¸ •¸ êPúQêP*êPêPáÙ>PùUùùùùUù ù ù ùU ù ùùùUùùùùÚy A* : J Z j z Š š ª º Êì úkÐnú0ËU )€ )€Ô`Ô`©Øaµ€Ð@Ð@Ð@/a0­@­P­`­p­€­�­ ­°­À­Ð­à­ð­½½ ½0½@½P½`½p½€½�½ ½°½À½Ð½à½ð½ÍÍ Í0Í@ÍPÍ`ÍpÍ€Í�͠ͰÍÀÍÐÍàÍðÍÝÝ Ý0Ý@ÝPÝ`ÝpÝ€Ý�ݠݰÝÀÝÐÝàÝðÝíí í0í@íPí`ípí€í�í í°íÀíÐíàíðíýý ý0ý@ýPý`ýpý€€ý�ý ý°ýÀýÐýàý×ÜôódûöšW4   SÌv €€€% € ! !fè0‘€U‘€‘€z0z0Mz0…b€Ñ€Ñ€©Õ�Ñ€ Ñ€ Ñ€ ¾Ñ€m€¦m€�y€Ù€¦Ù€Öp‰€ ‰€ ª‰€å�å�å�ªå�å�å�g@*g@g@g@‡Ap U p p p � U� � DQuIPªå€å€å€ å€ ªå€ å€ å€ å€ªå€å€å€) ©™ ���™šy )� ­™ 1�j1�1�1�®y fE�°ÒM�¿U ªU�U� U� U� ªU� U� U�U�*U�U�U�¼!¸ •¸ ¸ ÝkPp6™‘ ì@¾}P§�U§�§�§� ¯‘ª�p�p �p �p RÑæðÓ� Ó� Ó�U ´ § § § kPoþñœÌ#--!-1-A-Q-a-q-�-‘-¡-±-Á-Ñ-á-ñ-==!=1=A=Q=a=q=�=‘=¡=±=Á=Ñ=á=ñ=MM!M1MAMQMaMqM�M‘M¡M±MÁMÑMáMñM]]!]1]A]Q]a]q]�]‘]¡]±]Á]Ñ]á]ñ]mm!m1mAmQmamqm�m‘m¡m±mÁmÑmámñm}}!}1}A}Q}a}q}�}‘}¡}ð±}Á}Ñ}á| þôsæ² úÌ šÌ Ÿ“'‡ÿ'{'Šuiÿ&]&H<&�ÿ‡{%æÿ¢Dî¨ÿ›ÜäÿØÉºÈ¿­Ÿ�³àÏÿéà�{ÿm_QCÿlH5'ÿx`<ÿT0$ÿ  ýëÿÙǵ£ÿ‘m[ÿI7%ÿïÝËÿ½º¬²ÿ§œ¢gÿ=éYÿ/K!ß÷�b’ ¿¸™AW’ ¿{î?Ëd¾ËŽ?èV¼ÿÆB×£ÑÿBd…k·Bô¾â33#@è¢ÐýAü�Âu?õîâSC32YCÿALIBRATION CHARkÐ/r¢Ð¦Ð2U2222U       S]–ðZZZUZZ Z Z• Z Z fñ  $ñ kÐq�ýq�Ì£ �°�À�Ð�à�ð�­­ ­0­@­P­`­p­€­�­ ­°­À­Ð­à­ð­½½ ½0½@½P½`½p½€½�½ ½°½À½Ð½à½ð½ÍÍ Í0Í@ÍPÍ`ÍpÍ€Í�͠ͰÍÀÍÐÍàÍðÍÝÝ Ý0Ý@ÝPÝ`ÝpÝ€Ý�ݠݰÝÀÝÐÝàÝðÝíí í0í@íPí`ípí€í�í í°íÀíÐíàíðíýý ý0ý@ýPý`ýpý€ý�ý ýð°ýÀýÐýàýÊ ¨ôó\bõòžÌ  z€!�å €5 € €Ëø0%€5 %€ %€Øè05€¥5€!  ª ¡P ¡P ¡PTèaµPµP‰€‰€U ‰€ ‰€ •�“¶p¦}€Ñp`¥€¥€ª¥€k@k@k@¦k@ó€@¥€ ¥€ j¥€ ¥€ ¥€÷f0ª½€½€½€ ½€ ª½€ ½€ ½€ ½€ª½€½€½€½€Òå�~�õ€õ€”y ��‘»@)“^�� ‘«b�!‘™¸f�)�ÇIP1�ª1�1� 1� 1� *1� 1� M‘È™ U�­U�Ñu Ò*�ÔT‰ i� i�i�u‘IÞ¡ }�Ù*€„� „�U „� „� „�„�•„�ˆ‘ ÂP¨� ª¨� ¨�¨�¨�š¨�¨� ÇÂPÈ�»›pÐ�ªÐ�Ð� Ð� Ð� ªÐ� Ð� Ð�Ð�TБÓÓÓÓMÓt`  Õ  Ê0Txt`, kPw8 e•�ª9 9 9 9¡±T²PM M M M S²¦Pa a a Ua a a a Ua  a  a  a • a  }¡ÞP™  ª™  ™  ™  ™ š™ Ê0 F&�¹  ª¹  ¹  ¹ ¹ j¹ ¹ ¹ Gy ªÝ Ý Ý Ý ªÝ Ý Ý Ý  jÝ  Ý  Ý  ±YPò ° °kPv*fTs0°°°ß0Uß0ß0ß0ß0Uß0ß0ß0ß0U ß0 ß0 ß0 ß0• ß0:± ñ@j°¦j°–pv°v°ªa0a0a0Ð�*Ð�Ð�–±­ ž°©¢±}�}�}�*}� }� }� }�kPuuoQ›Ì#s waªw`w`w`w`ªw` Î0 Î0 Î0Î0Ö3r)-=M¨]m}ñ ñ Òñ ñ …†¶Ô®p|À|À|À·Tæ ÓÓÓÓ¡­ H!’¢²ÂÒâò--"-2-B-R-b-r-‚-’-¢-²-Â-Ò-â-ò-=="=2=B=R=b=r=‚=’=¢=²=Â=Ò=â=ò=MM"M2MBMRMbMrM‚M’M¢M²M<ÂMÒAüôsú€Ïè¢æÐ�ÿ–ùí%(ÿ%Ç»$ÿw¹Wÿõ“0ÔÿŸLüïÿâÑÄ·ÿ¦™Œ{ÿnaTGÿ:- ÿùìßÿÒŸ«ýž„wjÿ]PC6ÿ)ÿõèÛÎ÷Á´Ÿš�ÿ€sfYÿL?2%ÿ þñÿä×ʽçZ_¬Ð°f_f6@dUß\ßÿ33‹@®GÿQ@dR¸.@Ý, q= ûHáÛÚ?ë G3÷524öN2NIÿC-PWM COÿNTROLLER÷RA@kPyˆRð‰ð###¥#3„�„�©Hý`C C C ªC CC˜à Ò˜à ˜àkPxj0*„�„�„�?„�”�¤�´�Ä�Ô�ä�ô�­­$­4­D­T­d­t­„­”­¤­´­Ä­Ô­ä­ô­½½$½4½D½T½d½t½„½”½¤½´½Ä½Ô½ä½ô½ÍÍ$Í4ÍDÍTÍdÍẗ͔́ͤʹÍÄÍÔÍäÍôÍÝÝ$Ý4ÝDÝTÝdÝt݄ݔݤݴÝÄÝÔÝäÝôÝíí$í4íDíTídítí„í”í¤í´íÄíÔíäíôíýý$ý4ýDýTýdýtý„ýÀ”ý¤ý´ýÄýÔýäùK&&ôó™õòáQ æP_– € €U € € € €U € € € €U € € € €_—E€E€UE€E€E€E€UE€E€ E€ E€U E€ E€ E€E€ÕE€E€E€˜TF€�€�€�€�€U�€�€�€�€U �€ �€ �€ �€U �€�€�€�€M�€™F€Õ€Õ€UÕ€Õ€Õ€Õ€UÕ€Õ€ Õ€ Õ€U Õ€ Õ€ Õ€Õ€ÕÕ€Õ€Õ€š”F€���‰U����U � � � �U ����M�›F€e�e�Ue�e�e�e�Ue�e� e� e�U e� e� e�e�Õe�e�e�œTF€­�­�­�­�U­�­�­�­�U ­� ­� ­� ­�U ­�­�­�­�M­��F€õ�õ�Uõ�õ�õ�õ�Uõ�õ� õ� õ�U õ� õ� õ�õ�Õõ�õ�õ�žÒ2€ƒ0A A T�0M M M M ÕM M M õ4ºpm m ö†py Uy y y y Uy y  y  y ¥ }¡ÂÇP¥ ¥ ¦¥ ÈÇPµ µ ªµ µ µ  µ  ªµ  µ  µ µ 2ѡӣPå âƒPí žÝP|0 ŸÕ`ú ¥òÊpóÎp°°ª°°°°R±ô! &°&° &°U &°&°&°m Um m m  m U m  m  m y U y  y y y Õy y y ÷TÎp‚°‚°‚°‚°M¥ Ç·Pš°š°Uš°š°µ µ yµ ÝP{ sñª¿°ä`0 0 ª0 0 0 Û±“”£Pã° ã±”¯Pï°©²ÃP÷°÷°÷±/„zCOœaª˜`ú  ú Ð¦Ð�0,À,Àª,À,À,À,Àª,À,À ,À ,À J,À ,À 8Á0 0 U÷°÷°÷°Ãy7.>N^R˜`Á˜` _¨•j0j0r1j0 ©ÂÉñÀ ñÀ ñÀªñÀñÀñÀñÀ©ÃâÀÐÐÐJб ±!± ± Uí@í@í@í@Q9Ñ0!0  0 03q�‘¡±ÁÑáñ--!-1-A-Q-a-q-�-‘-¡-±-Á-Ñ-á-ñ-==!=1=A=Q=a=q=�=‘=¡=±=Á=¨Ñ=á=ñ=¾@ôs?ð°æP�ÿÏÃ'1ÿl‹ÿªGíŠÿ&Â\öÿäÖùÿPk•†ÿÑŹDÿí‰8}ÿqe[Gÿ3 ÷ÿãÏ»§ÿ�úå»ÿ¦‘Гÿ~rh\ÿL<,ÿ üìÜÿÎÀ²¤ÿ–‡{vÿ‚Zh¬ÿŸqg[ÿN@2ï ö]Å ׫ÿ@ š™™@2îë•@dáP®G‰ß@ô\´¸ÿ¥AÃõœA÷ f´q=¢Bÿ R¸mB2ÿHáNB,ÿ…›@è…õƒÄu?€=ÝP�H-ð�ÀZÝP€"2ú ú Uú ú  ú  ú Mú BÇPHHUHHH HU H H H Xª÷° ÷° ÷° ÷° ª÷° ÷°÷°÷°š÷°÷°³“Pœªœœœœªœœœ œ ªœ œ œ œªœœœœ©´“Pääìë„áQŸæS}< ¥·dà¸hà °ª°°°°ª&°&°&°&°ª&°&° &° &° J&°&°%!m m Um m m  m m l­|­Œ­œ­¬­¼­Ì­Ü­ì­ü­ ½½,½<½L½\½l½|½Œ½œ½¬½¼½Ì½Ü½ì½ü½ ÍÍ,Í<ÍLÍ\ÍlÍ|͌ͬ͜ͼÍÌÍÜÍìÍüÍ ÝÝ,Ý<ÝLÝ\ÝlÝ|݌ݜݬݼÝÌÝÜÝìÝüÝ íí,í<íLí\ílí|íŒíœí¬í¼íÌíÜíìíüí ýý,ý<ýLý\ýlý|ýŒýœý¬ý¼ýXÌýÜýìóòôóS çij¼pÿ''÷&ë&ßÿ&Ó&Ç&»&¯ÿ&£&—&‹&úÿYM%×ÿ"## ÿ#þ"mÌÀÿ!{JuXóá!`!`£ T­pN€ N€ N€N€{ #r¢4 Ú ¦k€ $—0s€s€–s€'³0,² ‡€ª‡€‡€ ‡€ ‡€ j‡€‡€‡€-ä`j«€«€«€pê –»€ v¶ xê Ç€ªÇ€Ç€Ç€Ç€ey¶ €ê ã€ Ž§0¦ï0¤ê ó€ ó€šó€ó€Ò¶ � J ‘ÛÚ ÜÍí í 5í í ãî +�å+�+�!`¡ SøÑ€pô=p;³PVL�ʳP1üÇPÆ\�âNPd�!` ­T� ‰pw×PDTæ }� }�}�ãaª»€»€ »€ »€ ²¿�„Í¥�‹rŸzöñ¯¼sž'!pšÂ�Â�5pÎ�™w0`Ö� <ŸPÞ�©fapæ�æ�æ�šæ�æ� ijPþ�©É«P  \� \� R\� `‘\�N€N€UN€N€^�—ð`ª6  6  6  6 ¥£Ä`Æ«0š0š0<š0!`�# ü·c U c  c  c c Íc p Ôp‡ ‡ Â� TƒP— — — — U— Î�Î�Î�UÎ�Î�Î�Ö�UÖ�Ö�D�D�UD�D�D�D�]Û¡„œöñ®¼sU›öñ­¼sšöñ¬¼sU™öñ«¼s˜öñª¼sU—öñ©¼s–öñ¨¼sU•öñ§¼s”öñ¦¼sU“öñ¥¼s’öñ¤¼sõ‘öñ¡¼s�8÷Tt Õ@Õ@Õ@ÙA¾Õ@”œ°ªœ°œ°œ°œ°ªœ°œ°œ° œ° ªœ° œ° œ° œ°ªœ°œ°œ°œ°Úœ°œ°•�°•e�u�…�•�¥�µ�Å�Õ�å�õ���%�5�E�U�e�u�…�•�¥�µ�Å�Õ�å�õ�­­%­5­E­U­e­u­…­•­¥­µ­Å­Õ­å­õ­½½%½5½E½U½e½u½…½•½¥½µ½Å½Õ½Våºì°ì°ì°Uì°ì°ì°ì°U ì° ì° ì° ì°U ì°ì°ì°ì°Õì°ì°ì°–Ô*ðÉðÉðÉð â× Ùð ÙðÕì‰påðÖËPÈòôswõrõq˜2Sž.ð   U    U U    M ŸÊðMMUMMMMUMM M MU M M MMÕMMM TÊð••••U••••U • • • •U ••••M•¡ÊðÝÝUÝÝÝÝUÝÝ Ý Ý¥ õ¢Ê@   ª    ª    ©£Êð999ª9999ª9 9 9 9 ª9 999z9u]�_^‰‰U‰‰‰‰U‰‰ ‰ ‰U ‰ ‰ ‰‰Õ‰‰‰_ÔŠÑÑÑÿè…ƒ@ýèL`�Âu?aýõpSM3160þø2NTRANSÿISTOR, PÿOWERQ@??>820?[äP¤pñA& wÍAd& µA,ôÇ…›éæö59èS#-*b""®GAz*"0 ®Ç@7-úG#àóL6601÷CDP®#/C/DÿP3NIC-IFÿ/AF CIRCÿUITXHGGFu;!e""R¸z* w\�*0 ¸õ‘-Ž¡-440´#0½'HÿIGH LEVEÿL MIXER[ºÕ&g""š™%* šÿ™á@dq=¢Œó-=274x0½"2öÃ!CO` OLLEÿD PRE-AM»P]:<¸1* ;×óR0ff¶X=F$�ð©$563Þ0½'3ÿ00MHZ LOÿW NOISE ¾�1FEED:!]:ß$"* ×£àR0Éàt¿=F$ì©$490µ!æE@/B†5a"MITÿTERSEDDCu9!Z""33#* wìQèR0�­&Mö6M86HB86/NIA†5™4PAiBf""×…ëL2ÉR0R¸é–ƒMF$ç>E43AîHB43/®FZERÿO VOLTAGÿE SWITCHõ\Fi""\�Bß{´0 R¸†6-h<164bQ„7¿MODULAh /›DEyTR_Õ&!#Í{Ìb7PázB!A¹êC]S]612fT1-2½'RFAQÕ&|#wáz¨* ö(˜0 §= ‰¬]F$�óKóRC0$d2NSNÿUBBER NEÿTWORK,SIÿNGLEXBAAõ@iBhD3WCþs@DC2{”0éCmG#€dKT9ß2B16E†g2Nú" yRE THYÕRf"^Õ!<ÄG�‚=]`×c+c`@im”ym‰b2�f2™`¢c,¾©f 95A\³lì»*]`¸Þc`Hã!Ñmám‰a08DpTw}}TcÅ2]`wfæc`öè7}G}T57Œe¾sšmªm¿0?úôóz¾ûöš6ð ªÍÀ Ý ÝݪÝÝÝ ª    J 5¤ÊðE€E€UE€E€E€E€UE€E€ E€ E€U E€ E€ E€E€UE€E€E€E€S¥Ê𑀑€‘€U‘€‘€‘€‘€U‘€ ‘€ ‘€ ‘€U ‘€ ‘€‘€‘€U‘€‘€‘€‘€S¦Êðá€á€áÀUáÀáÀáÀáÀ%áÀ áÁáÀ þÁáÀU áÀáÀáÀáÀ5áÀáÀËÞÀ-�SZš5�5�5�U5� 5� 5� 5�U 5� 5�5�5�Õ5�Q‘÷Úô«q�q�q�ªq�q� q� q� ªq� q� q�q�ªq�q�q�q�¯õ±�±�ª±�±�±�±�ª±�±� ±� ±� ª±� ±� ±�±�ü±�õN75155mDó•2YÄ SMXCÿCEIVERUD×CCB Bc˜T\@ºxA( Bà?úþð…Ÿë�Aè:£G#åÄóô’43`T£‰2QUÿAD LINE «RE£Y¦a˜R={ ') ö(ü?Œ!i§5­Ï4äM¨0Pµ¥Þ‰2DUALk£DRê¡W¦\˜R)\3J³20#@™­G#æM§C16Y£°TG£R¬§ffÆ) ÚAdN0I(ù­¨­°5´5a£Ê§Üq­�¥…ëÑ) = ŸR0¸UU½e½°ÀX¤Ú°Å­Õ¬£µK1ázüR0ìQ¨¸½È½°Å3´3ä½ô½ £`)­Íi¼0c ˜ÅFÍrÕ¢YAÙ(@nÀ—\�²²ÅzÍŠÍ5‡107žÄÿÁ‚½’´[Ü¿ÆTc)\á* …¡¿0 âÁÞÍG#RóW¯60N1 *iÑ ÿOBSOLETEo OFF9`STaÓ} iÑ^<;;: @×3ÿjA´Â* …ëÝ‘0 ®GiBÒö(©T= A)OóPbÐ0ç618Ç×_*MOSÿFET TO-2·20`³eÿ_˜R»®™* fff0 ì;Q8BÒ…'²ÝÂÕ40P061åÛÝëк¦ÿ¼cÍÌD³2‹" BÒpáí-ædÐ�åäAíë×\Uæ|#ÍÌ,N Æ®G¹ÝMÏ4ÛÂÕO11GPöä‰2S�0þÚpAND HOLiDAJgdfÀ]`ÿ=ŠÞB q½Ó¾BÚíÐ3ÜóOSã24ÐÐZò‰2120!WÕpêÒÐs�0ZKf¼cW33ÁûRž‹"…mzÏ4Óó5872[A|¾ó¢DIGITMÀÿAUDIO DAŸC/FILºæïpœõôs€ûv�7_xá€á€Uá€á€á€á€U ဠဠဠá€U á€á€á€á€5á€ဧâ€MUMMMMUMMM MU M M M MUMMMMMM¨â€™™U™™™™U™™ ™ ™U ™ ™ ™™U™™™™S©â€åååUååååUå å å åU å ååå5ååªâ€-U----U--- -U - - - -¥=¯>€iiªi i i i ªi iiijiii°â€ª¡¡¡¡ª¡¡¡¡ ª¡ ¡ ¡ ¡ ª¡¡¡¡š¡¡±â€íªíííí>íIPHERMÀUÃùZ¿Æ £= ×?:� ¡’ ôýTÝÍE­5189Y£W b­’½Ý$&-6-F-V žÄº!b-¸ÝSd‰)= W˜!„” , P`éù0“V1ýq«¥ ÿ"’ýq¤c3‘ºýq¡c3�8 €©“ˆ0ˆ0ˆ0¦ˆ0”“0œ0ªœ0œ0œ0œ0ªœ0œ0 œ0 œ0 ªœ0 œ0 œ0œ0ªœ0œ0œ0œ0¦œ0•â€ì0ì0ªì0ì0ì0ì0ªì0ì0 ì0 ì0 ªì0 ì0 ì0ì0ªì0ì0ì0ì0¦ì0–â€<@<@¦<@ âJ�L@ L@ÙÕº�X@Öº�„ÿ…Q¶þn�„„ úkv@v@ü¡ð‹Ùî0ò0í@m@¯U–@–@ü–@0ƒ :Õ«@«@«@ñôw@»@ »@s O‹@mC‚ ÇA&Ç@ˆ‡@†@ Ë@0�Hà@ßSù@ñüŸ@P ´= 1€2Ÿ6�PUPP P PMPB P2P2PU2P2P2P 2PU 2P 2P 2P BQ©²GP^P ^P ^P ª^P ^P^P^Pú^P^P³ ª†P†P†P†Pª†P†P†P†P ª†P †P †P †P ª†P†P†P†P*†P P P Q SõýqŸc3}< ·¸óP_ óûPûPõûPûPôU````U` ` ` `•`aõP;`ª;`;`;` ;`ª;`;`;`;`©öPc`c`c`ªc`c`c`c` *c` c` ga P�`5�`�`È PŸ`UŸ`Ÿ`Ÿ`Ÿ`U Ÿ` Ÿ` Ÿ` Ÿ`•Ÿ`»aÓSPÏ`qâ;P×`0|0 PM Pò `ûPûPUûPûPûPûP¥ûPøa``ª` ` ``ª`;`;`;`ª;` ;` ;` ;` ª;`c` c` c`ªc`c`c`c`¦c`÷`lplpjlplp�`ÇwPª„p„p„p„pÊŸ`Ÿ`Ÿ`0{Ó sâ�©pù@TT›@µpµp µp µp¥ Åq“SPÍp Íq”TWPÙp^P^P^P½^PLôóoþûö™8ø«---©«â€€€€ª€€€€ª€ € € € ª€ €€€š€€¬â€a€ªa€a€a€a€ªa€a€a€ a€ ªa€ a€ a€ a€ªa€a€a€a€©­â€©€©€©€ª©€©€©€©€ª©€ ©€ ©€ ©€ ª©€ ©€©€©€š©€©€®=@ñ€ªñ€ñ€ñ€ñ€ªñ€ñ€ñ€ ñ€ ªñ€ ñ€ ñ€ ñ€ªñ€ñ€ñ€ñ€ªiiiiTm;0;0 ;0 ;0U ;0 ;0 ;0;0U;0;0;0;0S²=@}�}�}�U}�}�}�}�U}� }� }� }�U }� }�}�}�Õ}�}�AtÀ×£Ùâ�Âe�àà�æ=òM£R12Dè’óÿM-1.2V P¾Ö ISIONp F¿V>==<7'R÷¸FB­± BdçÃõÌŸòÐ�u?â~°£P8680BH£ß/B/DGóELßECTAB ðDIÇVIDÜ$…òÿÓR¸ænÀš™™tÀ àË�ú ´éC¤720AP<­¤&²PROTb ¡¿ARRAYU�ô3®]äš™6ÒÃtÀqÓ=‚ͨ$ßm¶LBŸC176P ¸ò’BçUS ¢âs#\JIwIH='ìQ€nÀdÎÁ¥Ñï­íÍ5CV%v²1È-Ø-gA½Q½a½ q¶¼#Û³Ç-”´]öÕç$P«½»½Ë½v°8zµ8ƒ³¥CèÐ ð·#^œ¼ »×ÛÀ)\§é Rã¸^!ͨ-u°4068z´¬Áò’TRI ñ+¸ÚÇi'óžÐ�àé {–‰Í1Í5ALS193J Ø„½”´_7¶¥³áÍñÍÝBÒ2Y"zÔë¼#]7¶ºÚ¥)à¸ýÓâ©€YÝÿ­Ò´áÔ"½2»]ºé$GÀ®é ÍÓÌ̘-™ÄèM&47A3²Gợxò#Sçö®ãHáj}Â/Å�£…ë&í6íFà2Jä2@Ríbíí%í’íEá1Jäé1¯í¿éa¬Ò®—î„ ázdÅ�ìQÀÝ™Äï>ç6EÃ^ñºÄ¾ÂðISTORÊ£WÜz&¥³HáJ„ …Å’Ðàíðí]ð¦äÀð6ò’DU PEÀÀ )½]z&vôs‚~ûvœ6¶ý0ª    ª ª    ¦ ·=@AAªAAAAªAA A eÜW m m mUmmmm}mÝ‘U‘‘‘‘U‘‘‘ ‘U ‘ ‘ ‘ ‘U‘‘‘‘M‘Þ’ÝÝUÝÝÝÝUÝÝ Ý ÝU Ý Ý ÝÝUÝÝÝ©åQ@) ) )ª))))¦)æj@MMªMMMMªMM M M ªM M MMªMMMM©çj@™™™ª™™™™J™ µünÁ ÁU Á Á ÁÁÕÁÁÁýTj@ééééUééééA éÉ�Ñ­šÃÌM#ÿT24C04B1\5&ò’4K UÂSÖð–ÒðEEÀ MjÇ Åî„ HáÚ’ ¸Åù?-)-C02AMl=$£!2Yô“2KS,ÒÆjl-|-Œ-œ&<% 1Pò’¹'UÂ[#`ÒÆdÌäÿC .äB?0¸ž¼Bé-šÃ=0%30S1¦àp5?2NTHYRtóq0ÿA 1200VZºœ¶cÌäãB Œ ¾ŽL0ÍL�R=b=r00X°Ô5�= 6”0Yb,÷ö(Tã = AŸd\�â-MûS?M2220P6EË÷MATCHEDûÓrtò^ö Ã×£,ã —ázüºÒ¹M)M2ƒ21óÓALANC½@_È[ËL�Âã ß 7ò G]W] PðÊT]&YÝbB®G!ã 33�ëÅ�áz´¬]¼]2Ç135 S,`Ë÷AUÿDIO OP AMPXö«Ó�] mmc13ÏTŽ`ÙSOWi ÈuñÆ¢Gc\öÛÃázÝ�ã R¸R@ffé+­Û”ð1F018ñT=Bób±"VOLTÿAGE CONTOROLL½@J`_œ¶î«Ó)\gã Ãõ(Ž@®÷lmâmòaPðYtò’}s\CBB¹A#ò=3q= ã š;™ÉÅ� ד;}K}Šò`7÷d7º£Acÿ�-þJ`LIFIERZÖçøÌôóƒûöš71Á�³B €U € € € €U € € € €U € € € €U € € € €S´BU€U€U€UU€U€U€U€UU€ U€ U€ U€U U€ U€U€U€5U€U€µB�€U�€�€�€�€U�€�€�€ �€U �€ �€ �€ �€U�€�€�€�€U   !ªA A AAªAAAA©¸B���ª����ª� � � � ª� ���j���¹Bªa�a�a�a�ªa�a�a�a� ªa� a� a� a� ªa�a�a�a�ša�a�ºB­�ª­�­�­�­�ª­�­�­� ­� ª­� ­� ­� ­�ª­�­�­�­�©»Bõ�õ�õ�êõ�õ�õ� ÷ß MCU¸!OTP`MLLK>w ]ÿÛÃÍ̈/rL5r�/Òbö($‘Àwi§þ0$62T10M6ÇHWD[©ë²¶ 8-çBIT¢ _LKcKJ$¢Ó#/£ÍÌ7¡ã ×=­M­]¢B6Se¦B6/Í ë²{§­~’©Ã„— …È�$‰ °–2±ûñ¨ U1±•ûñ§?³”ûñU¦?³“ûñ¥?³’ûñÕ¤?³‘ûñ¡?³�8?÷“2ˆ°Õˆ°ˆ°ˆ°”TBœ°œ°œ°œ°Uœ°œ°œ°œ°U œ° œ° œ° œ°U œ°œ°œ°œ°Õœ°œ°œ°•TBì°ì°ì°ì°Uì°ì°ì°ì°U ì° ì° ì° ì°U ì°ì°ì°ì°Õì°ì°ì°–ÔB<À<À<À âôÆLÀ LÀÕíXÀÖYÀ„…×Qê¶V„„ úvÀmvÀü© Ùî°ñò°|`mÀU•–À–À–À °ƒ¿ :«Àš«À«ÀñwÀ»À ~»À O‹ÀÎm ÇÁÇÀˆä‡À†À ËÀ °�ïHàÀS›ùÀñŸÀÐë c€ 1±€2©ŸúÐÐÐ jÐ ÐÐB Ъ2Ð2Ð2Ð2Ъ2Ð 2Ð 2Ð 2Ð J2Ð BѲGÐ^Ð ^ÐU ^Ð ^Ð ^Ð^ÐÕ^Ð^Ð^гE € °ІÐ†ÐU†Ð†Ð†Ð†ÐU †Ð †Ð †Ð †ÐU †Ð†Ð†Ð†ÐU†Ð Ð Ð Ñê ÓûñŸ?³}< ë·+�/� ¯óûÐûÐúûÐûÐôªààààªà à à àJàáõÐ;à;àU;à;à ;à;àÕ;à;à;àöTÐcàcàcàcàUcàcàcà cà• cà gá Ð�àš�à�àÈ ÐŸàªŸàŸàŸàŸà ªŸà Ÿà Ÿà ŸàÊŸà»áÓSÐÏàâ¸;Ð×à °|0 Ð ¦Ðò àûÐûЪûÐûÐûÐûÐRûÐøáàààU à àààU;à;à;à;àU ;à ;à ;à ;àUcà cà càcàUcàcàcàcàS÷àlðlðlð5lð�àÇwЄðU„ð„ð„ðŸàåŸàŸà °{ ¯s ©ðùÀ©T›Àµðµð µð Jµð Åñ“SÐÍð Íñ©”WÐÙð^Ð^Ðz^Ð^Ð’ ôs}oûv”*õ�•õ� õ� ¡õ� ªõ� õ�õ�õ�jõ�õ�õ�¼æ€ª9999ª9999 ª9 9 9 9 ¦9ÍÊqqšqqÎÞ…ª…………ª……… … ª… ………j………ÏÞªÉÉÉÉjÉÉÉÛšééÜÊõªõõõõªõõõ ”TÆ   UM•êEEUEEEEUEE E EU E E EEUEEEES–ê‘‘‘U‘‘‘‘õ‘ ‘õ¹¹õëeDÇa‚Ì`ìQ`®Òb®GQ¯¬¨0$9ÿ040KITUKúò-ø/UK2Núø-ò STARÿTER PACKÕ`‰¡=ø Wcázá®Æbΰ­W¦65B#M6\'s¥è +-3„¡¹\45(¤×£¾`bŽîÌ`ÍÌtÒbázd@G-W*Ë Ã&Ý«{(_‡&îWcìQžÝ@�ÂmîÌ`)\KÒb{>­-W(0c&11p-€-½cÿ-¢qš™==&:Ê%à—1Ö-æ-& lC¤p«B: ßŸ"Ðt4ÃÝV§45Qe#ÿ1s«CMOS CPƒ¢ ^uÿl�t2-B-º¬25d e¤gAÙ¢qx¡}¤ 4í¢bó¦È36MFMVMfBd¥sBp¡|IŒC^ó¬¢M²MÂMf@˧;QÙ­é ŒCò­ ]]*]:RÀ×GIPp¥T]§0CÃõ]˜•p¤pe}RDÒb)\7‹]]Ha kFa wM‡MÓ]ã]ó]m×FaäM0mø§JmZmjm`=XÖ­Â]ªmºmÊmÚm~h³]\}?h= ¡#rqn0wR¸N2Ãõ@7}€V¨hH»qm›b죒G×ôó}ûöšO2ù…°99Õ999½Tæ€!€!€!€!€U!€!€!€!€U !€ !€ !€ !€U !€!€!€!€M!€¾æ€i€i€Ui€i€i€i€Ui€i€ i€ i€U i€ i€ i€i€Õi€i€i€¿T怱€±€±€±€U±€±€±€±€U ±€ ±€ ±€ ±€U ±€±€±€±€M±€À=Àù€ù€Uù€ù€ù€ù€Uù€ù€ ù€ ù€U ù€ ù€ ù€ù€Õù€ù€ù€ÁR°ËÒE�E�E�UE�E� E� E�U E� E� E�E�ÕE�E�E�ÌTÊ��������U��������U �� �� �� ��U ��������U��}}}U}}}}U}} } }õ } }z$@d¦« Ü?„]æJV¤DÏ17N0e #£2NÿTRANSIST÷OR,@FET ÿD-PAK[DC·CB:ø ?g`2¯`@d0(þ� c×ã­­$¡5L†¦´1­A¦]'E?e`2 »×S] )\þ�ázÔi­y­‰¢†¥˜­A­îQ¦¸E] �ÂÎþ�ÃõÈЭà­12�& Ž¢V²ý§E£­³«H»á:] ÍÌ þ�Háº5½E½U²Rµý­ ½:Q¨@)¶®GÁœ½¬½ÀU±�£"Âɽt½¸¦33Ý3] = þ�33³ÍÍ!ÂÅ0ÍÙ½Q ÜÈ3YÃ×£û²@ôiÍæÌí3C66ÃB1êÆÏr `BSEŸRIAL ´3&F?úù%] HáÚ?dò%°ÅhÍÝÍ3C56AMòÃWÑÏuàp Ú\²¬&Ù ×Ã5ÝEÝUÑñÄ ½ÑeràpF´3[²¦È3ê2±ŸÐ¡/Ð×£�t›ÝåËåÇ46CYÔ"â?51mÜ^‡%º¤ñÝ€íí!áñÄŠâer9í[ÜJænSff] ff!æ/Ðþ½uíêÂ0#æïâ’?52½ÐÓÛ`Jæ¸ÅÓî\àÍ̬/К™™�ÍíÝííâñÂ6XóÊÓ5ñ6ÑÝIç*# WCí/ ½B—°a‡B|8ýæT40ZC( Ì¾õe|16 rU6?ׯôsbûzxW U  A‘ªA�A�A�A�ªA�A�A� A� ªA� A� A� A�ªA�A�A�A�jA�A�A�Âú€ªuuuuªuuuu ªu u u u ªuuuuªuuuu©Ãú€ÉÉɪÉÉÉÉªÉ É É É JÙ_:“Ž==•=5÷:™ø’ ûj% ª% % %%ª%%%%©ü’MMMªMMMY WmmmÕ m m mÿî¾ STWÛ80‹  *œ^<§;;:O¢Såšh0¸;in0Háƒ]¯ôRíH75&¢Þ•Í>¥ÁTO-3Pâ·»£w�»h0= �n0ç®;¿Ï6N1C00A%ìüQ _`2wö( h0®Gñþ�'×£ ÍÍ4-6àô è¨#Q-¥ÀU,¸Ã.h0Ãõ’n2C$-™-ó60E 2„™^ýq« 0˜ýqUª3—ýq©3–ýqU¨3•ýq§3”ýqU¦3“ýq¥3’ýqÕ¤3‘ýq¡3�8K÷ €“2�ˆ0ˆ05ˆ0ˆ0”ú€œ0Uœ0œ0œ0œ0Uœ0œ0œ0 œ0U œ0 œ0 œ0 œ0Uœ0œ0œ0œ05œ0œ0•ú€ì0Uì0ì0ì0ì0Uì0ì0ì0 ì0U ì0 ì0 ì0 ì0Uì0ì0ì0ì05ì0ì0–ú€<@5<@<@ â&L@} L@ÕX@ûÖY@„…õQ¶„„ _úv@v@kü›pÙ"•ò0|¯ðm@U–@å–@–@0ƒ ¯:«@«@¦«@ñw@»@ »@åO‹@mC‚ LÇAÇ@ˆ"†@ Ë@þ0�H¾à@Sù@ùñŸ@P {´ 1€2Ÿ^ªPPP P šPPB P2Pª2P2P2P2P ª2P 2P 2P 2P RBQ²GP^P ^P ^PU ^P ^P^P^Põ^P^P³ U†P†P†P†PU†P†P†P†PU †P †P †P †PU †P†P†P†PU†P P P Qê SýqŸ3}< ÿ·¸¾óP óûPêûPûPûPô«```ª`` ` ` *``aõP;`U;`;`;` ;`U;`;`;`;`SöPc`c`c`Uc`c`c`c`U c` c` ga Pj�`�`�`È PªŸ`Ÿ`Ÿ`Ÿ`ªŸ` Ÿ` Ÿ` Ÿ` *Ÿ`Ÿ`»aÓSPÏ`ãâ;P×`0|0 šP Pò `ûPªûPûPûPûPJûPûPøa``U` ` ``U`;`;`;`U;` ;` ;` ;`U ;`c` c` c`Uc`c`c`c`Mc`÷`lplpÕlplp�`ÇTwP„p„p„p„p•Ÿ`Ÿ`Ÿ`0{¿ s ©p¦ù@T›@µpµp *µp µp Åq“SPÍp¥ Íq”WPÙp^Pê^P^P^PÐñôó-2üòœ9U ÉÉÉÉUÉÉÉÉSÄú€)€)€)€U)€)€)€)€U)€ )€ )€ )€U )€ )€)€)€U)€)€)€)€M)€Åú€}€}€U}€}€}€}€U}€}€ }€ }€U }€ }€ }€}€U}€}€}€}€5}€}€Æú€Ñ€UррррUррр Ñ€U Ñ€ Ñ€ Ñ€ Ñ€UррррÕрррÇT=@%�%�%�%�U%�%�%�%�U %� %� %� %�U %�%�%�%�U%�%�%�%�SÈ=@y�y�y�Uy�y�y�y�Uy� y� y� y�• y� y�¥‘m Rm…mmmõmm UÕ�Õ�Õ�Õ�UÕ�Õ�Õ�Õ�U Õ� Õ� á‘ý]@ª   ‰ª‰‰‰�Ê��� @B��vA¢îq �U � � ��¹�‡ÒÍÌ„\ÂGNÊ ¸‰-¯ôOè¤P2N8H —¢¶-a#ÿ220YBAA@Õ9´ác$�ÁÀ®�Wƒ R¸x­ˆ­2‹N6›£6¢­²­×�;ÂEõ¶®Ç7ýë­A2à]³½a$¹ \Ê-1·Yá?½O½ª#ók½Ô¶'k‡Ô�ÁÀš™¥Yƒ"Û­¯ôM�¦1†h°LF½ (ÆÑ½¥ÁIÿSOL.aJIIëH=´ág‡Ò×£pîÁÀ¸5ƒ 33óऽÍ)Ã&Æ<ÊLOG—IC ^#]âÖ_û®ghÀ)\/ƒ £…ëtÍ„Í)Á5™Å5¸¢Í²Íç×ÍÌ|hÀ;@ƒ ®G ÍëÍA2 1™ÂcÒ<Í{·^âÖSãR¸~6ÝFÝŒª 3paÓqÝá½\Æ0l¢�ƒ )\¯ÛÍRÝ1Àà™Á/ã ÝÝ\Æ33Ý#hÀázôÇà ×£íí/áÿ–ã>íNíº*Ða`Â\�2 f;fâ \�²ªÝ¯ôS×V82úã×Ýa&¿W@??>8§»…g �Â-â = çÝíííVÕÐ[ôýta&·d`Âq=ª —€×â*è-ø-9 ™¢Àòiú·äd#Z ¶×,ôs‡ûv›4Ky�Uy�y�y�y�My�É=@%%U%%%%U%% % %U % % %%U%%%%5%%Ê=@yUyyyyUyyy yU y y y yUyyyy5yyË=@ÉUÉÉÉÉUÉÉÉ ÉU É É É ÉUÉÉÉÉ5ÉÉÌ=@UU U    ¥A#PU UªUUUU¦Uj@uuªuuuuªuu u u ªu u uuªuuuuÙPÑ�üþ�þ« Í ÍͪÍÍÍͪ! ! ! ! ª! ! ! ! ª!  !  !  !  ! -¢$ 4 D T d t „ ˜¨°ü �,<L0›ö!ûq­ª3šûq¬'3™ûq«J33˜ûqª?3úr©K3U–ûq¨W3•ûq§c3U”ûq¦o3“ûq¥{3U’ûq¤æS‘ûq¡æSO�8÷Ä@˜0ˆ0Uˆ0ˆ0ˆ0ä0Uä0ä0ä0ä0Uä0ä0ä0ä0U ä0 ä0 ä0 ä0U ä0ä0Ô0Ô0UÔ0Ô0Ô08@U8@8@8@8@U8@8@8@8@U 8@ 8@ 8@ 8@U 8@8@8@ì0Õì0ì0ì0–Ôí0<@<@<@ â4šL@ L@ÕÞ�X@ûÖÞ�„…yQvÏC„ ú¼@šv@v@ü£ðä@i•Ì@Š@Ï@U²pÊ–@–@–@ö ƒ _:«@«@M«@ñw@»@ »@éØAè@mC‚ TÇAÇ@õ@†@ Ë@þö �Hjà@±p±pñºpæP“PÚS€2ª.P.P.Pä` ªä` ä`ä`VP*VPVPVPZQVPU FP FP FP FP© BQíp íp íp ªíp íp ípípªípípípÊPªÊPÊPÊPÊPªÊPÊPÊPÊP ªÊP ÊP ÊP ÊP ªÊP†P†P†P*†P P P Q SõûqŸ3}< ·¸óPU pppp¥p7a(p(pª(p(p(p (p *(p (p(pa[`U[`[`[`[`U K`K`K`K`•K`hp‹ahpªhphphphp*hp hp hp ga€pU€p€p€pÇ`UÇ`Ç`Ç`Ç`•Ç` Ç` Ëa»` *»`»`»aÓÀ`Ï`ãâ¨`×`ö |0 šP Pòb pRp q pø`ø`¥ø`øa(p(pª(p ` ``ª`K`K`K`ªK` K` K` K` ªK`hp hp hpªhpc`c`c`ªc`|plplpªlplp�`”pª„p„p„p„pÊ»`»`»`ö {S s¶�©pù@ÉpUÉp¹p ¹p ¹p¥ Åq“À`Íp Íq”TWPÙp‚P‚P‚P½‚PÌôóA~ûö�> áN ¦ €'H € € ª€ € € €ª€€€€©(™p=€=€=€ª=€=€=€=€¦=€—¿Pa€a€ša€a€˜™pu€ªu€u€u€u€ªu€u€u€ u€ ªu€ u€ u€ u€ju€u€u€™™pª¹€¹€¹€¹€ª¹€¹€¹€¹€ ¦¹€ ¢WPá€á€já€á€ဣ™pÊù€„p�q»`ODÿE SCHOTTÿKY 30A 3ÿ5V^HGGF< )Öö Ÿ"��(�8�€H�X…d�t‰„�”‰ö ž~¸‘'Â�}Â�Î�ßwÖ� <÷ Þ�fUæ�æ�æ�æ�}æ� Ä þ�‡Éa ÿ�ÉÉ jÉ ÉÉ™pª" " " "  ªa€ a€ a€ a€ ša€ù€ÆËP„pr„p„pö �# ‚@U ‚@ ‚@ ‚@ ‚@u‚@‚@·O€ ‡ ‡ MÂ� È@— — U— — — Î�UÎ�Î�Î�Î�UÎ�Ö�Ö�Ö�Sx‡@Ó Ó Ó ÕÓ Ó Û¡„œûñ®3ý- ==-===M=]=m=}=�=�=­=½=Í=Ý=í=ý= MM-M=MMM]MmM}M�M�M­M½MÍMÝMíMýM ]]-]=]M]]]m]}]�]�]­]½]Í]Ý]í]ý] mm-m=mMm]mmm}m�m�m­m½mÍmÝmímým }}-}=}M}]}m}}}�}�}­} ½}Í}Ý}‚Ðé°ôs ¿sG£°¢þ°³îùíÿ% ûâµÿ€sñŒÿ+Ífÿþu"Îÿ†ÙpÃÿZ­D/ÿí—ÿ×�Ákÿ«U•€ÿjT>?ÿ()ÿüæÞÈÿýÐçºÿѤ³�ÿ‡»Ž¥ÿx�brÿ\FyLÿc6M ÿ17ÿ !ô ÿR¸jAÿ)\ÿ@dTN+�a+‘÷p�¶ÿpAd�Â÷]A,ƒÀ…ëMAõè$ @á�Âu?»ÃÈHM^¿…ïëa@ÕU@dß{>@Ú®G½QáìQ8@èmþñSTTA806yD*ö ¡ øx ~Ó ô ;ÿ�¦LÊÿ�qÉâ¡âúÀdö  VT öwÊDÀàj} }}G¬à©p£Ð‘ ‘ ‘ f‘ „WÐ¥‹ÒŸýq¯³¿�Ï�ß�ï�ÿ�­­/­?­O­_­o­­�­Ÿ­¯­¿­Ï­ß­ï­ÿ­½½/½?½O½_½o½½�½Ÿ½¯½¿½Ï½ß½ï½ÿ½ÍÍ/Í?ÍOÍ_ÍoÍÍ�ͯ͟ͿÍÏÍßÍïÍÿÍÝÝ/Ý?ÝOÝ_ÝoÝÝ�ݟݯݿÝÏÝßÝïÝÿÝíí/í?íOí_íoíí�íŸí¯í¿íÏíßíïíÿíýý/ý?ýOý_ýoý€ý�ýŸý¯ý¿ýÏýßýJ„` ôóFõòõñ°0K.ðP�ôP €5�U5�5�5‘WPj%€%€%€ $¼`ª5€ 5€ 5€5€©%™pI€I€=�¦=�,¤`]€]€ª]€ ]€ ]€]€¦]€ -«P}€ }€ j}€ }€}€x¨`©¤¬`™€™€ ™€ ª™€ ™€ ™€™€š™€™€¥™pÁ€¦Á€ Ò¬`×`×` ª×` ×` ×`×`©ã™pé€é€é€ªé€ é€ é€ é€ ªé€ é€é€é€Jé€ñ�ä3P!�!�U!�!�!� !�U !� !� !�!�îú ¨ Þe›ïp À`^� –^�¹§Pº»Pn�Ún�n�»R§ ß,ÞÔ7  qpj�Uj�j�j�j�©j‘j� j� j� ªj� j�j�j�ªj�n�n�n�ªn�n�n�n�ªn�n� n� n� ún� Û‘„¦ /ž !oÃP U•€ •€ •€ •€• •€ •€•€ú ¥÷ùx › òÞî _S–ÃPU U B ©F!B B B iš§Pu  u ¬™pª� � � � ª� � � �  ª�  �  �  ‰¡„0”þº0¯ýÊ Ê ¥…§P†WPÚ Ú ªÚ  U  U  U  jU  U U ­3Pʰ°°ú £7U " " " " U" " 2!#¨`¦‘€P;°;°TÖ¡Ö  Ú  Ú  Ú S•™p[°[°[°•[°[° _±U JU U þ¡u u Õu u u  «TÀ`›° ›°›°›°%›°Ÿ±� ¡¡°U ° ° ±¯¨`ªÏ°ϰϰ ϰ Zϰ ϰÛËPÝRW¢4 %€%€ 5€U5€5€5€U€U]€]€]€y�ª]€ ]€ ]€]€R]€‘�}€}€}€•‘¡v3P•€T•�•€•€•€•€Óy3P;°;° ŽT‘pÙp™€™€ ™€U™€™€Í€Í€™ ˜Áë°ÜWP×`ª×`×`×`é€ é€é€ñ�;K[k{‹›«»ËÛëû --+-;-K-[-k-{-‹-›-«-»-Ë-Û-ë-û- ==+=;=K=[=k={=‹=›=«=»=Ë=Û=ë=û= MM+M;MKM[E¯ôsHûv£¦�à éýÐ  *     àM à(\Ð--U - - - -U ----™Q`à šPÐA  šA A ­àq©®‡@yyyªyyyyªyyyy¦y¯‡@­­ª­­­­ j‹Ð ‹Ð‹ÐõË © pÙÙÙªÙÙÙ Ù ªÙ Ù Ù Ù2ý9P`^�À`[°ÕU ú¡á§P*K°Ú Ú S±xÀS›™p???MÍ€Ô3P¤À¤À© ¤À‡à¶�±�㵫¾ ¾ ¾ I§P¯ÐC±;° ;°S�PK°K°[°•[°[° _±Í€ ¢Ï` Ïaå�!� I“´÷J�@KªÑÑ  Q  )çR  }€DÁ}€Õ}€}€_³ S ó Ð  U    “ô# ՛Їಫ" Í ÍͪÍÍ € €ª €kÐkÐkÐ2kЋ‘kÐZU@s!•¤ÐœÐò Ðƒ ªƒ ƒ ƒ ƒ ªƒ ƒ  ª    ú «!„± Ÿà ÷R Ì L£!* û¤ÐÜ Ü S¢£Pè è è ¹ è ‡à° © «P0 0 0 ª0000©¡™p%0 %0 %0B%0ø!ø#EÐsÐsÑ’s áƒ!ŸWPZ0Ê000‡à®U  V�V� Ì UÌ Z0 Z0U Z0 Z0Z0Z0¥Z0j100ê00j3­ ¢ÑÑ[!Z0Z0JZ0Z0£1%0%0U%0%0%0%0U%0 %0 %0 %0U%0%0è è Õè è ø#¬1ÕÕÀÑÑ ÍÔ€ÐåÀ���� œT»PI@I@I@I@S�™p]@]@]@U]@]@]@]@U]@ ]@ ]@ ]@U ]@ ]@]@]@M]@ž™p¡@¡@U¡@¡@¡@¡@U¡@¡@ ¡@ ¡@U ¡@ ¡@ ¡@¡@U¡@¡@Z0£1\Z0‡àªáÀÈ »ÿ3"©åÀ Q¤Ð Qþ@!�I‘!�1�A�Q�a�q���‘�¡�±�Á�Ñ�á�ñ�­­!­1­A­Q­a­q­�­‘­¡­±­Á­Ñ­á­ñ­½½!½1½A½Q½a½q½�½‘½ ¡½±½Á½Ñ½á½>ðþôó 7 µü�àÂEÿ�Zÿ7´ÿJå€?Å ûö4�€D�T�d�t�„�”�þóbÿaû®h¯‚�‹Aÿ×£hAdÿ®GA,{ÿî?è…ËzÒ€º€u?ÄÌ€ÿIDT7201ßLA35Jç‰2YÿIC-512X9w Ce¯‚fff¾€÷\�2Ä€ffAþ‡à·Óª'�'� € €J€€%qÐ9p2Ð+bbr‚’¢²ÂÒâò--"-2-B-R-b-r-‚-’-¢-²-Â-Ò-â-ò-=="=2=B=R=b=r=‚=’=¢=²=Â=Ò=â=ò=MM"M2MBMRMbMrM‚M’M¢M²MÂMÒMâMòM]]"]2]B]R]b]r]‚]’]¢]²]Â]Ò]â]ò]mm"m2mBmRmbmrm‚m’m¢m²mÂmÒmâmòm}}"}2}B}R}b}r}‚}À’}¢}²}Â}Ò}â{«¤ôsM¢†³k�©ÒÐ   ª    ¥(|à)ÒÐ--j---/|à©0ÒÐIIIªIII I ªIIII©1ÒÐyyyªyyyyªy y y y ªy yyyÒ}3î�½½CR|àDÒÐÍÍÍUÍÍÍàU à à à àU àà5ð5ðS”¦ð  ?U???„àª) épWW? ' ®@àB B¯×ð?NÕ N N Nßxh fJн, <;ªss …Ð …Ъ…ЅЅЅЦ…Ð-Ò�›à¯ö§§ªÌ Ì Ì Ì T»{ { {  { • {  {  {¡{ JÛ ÅàþÉàïïUïïïïÕï ï ï¤(�  Jм§�²žk“»; Þð\Ð ©úÐ< < < U+|à,Þðjî�kò�ZX 5ðr|àsÒЪh h h h ªh h h h jh h h w|à”á9ð 9ð  !YðšSàsப𸠪¸ ¸ åpåpšåpåp°ÒÐØ ªØ Ø Ø Ø ©Îªðð ð ð ª     iáâÐ00çHÒWº54 \Ð\ÐÕ\Ѐ�€�TÚð=0L L õ‘¥6Úð}ÞðU0 U0 ©ða0a09ðª9ð9ð”�”�T”‘”�”�”�”�U YðYðYðYð%Yð ‘SàSásài‘ñ%%ªò�*Å0Å0°�°‘°�U °�   �   Þðñ0Jй«4 \Ð=0 š=0=0 ÒÐ@JL L!vÖð"@ a0™ i1O�£þ�6@ª6@Å0 °�õ3¸«Kà{ ‘Ъ‘ББÐÈà ©|„àÅðÅðÅð¢åpÍñà!´�´�ª´�´�´�‹AÔFHÒ· &�6�F‘ K‘ªK”O�O�I𤜑IðS‘S˜QñŽH|à%%Á1%°�£@ í1£e�u�…�•�¥�µ�Å�Õ�å�õ�­­%­5­E­U­e­u­…­•­¥­µ­Å­Õ­å­õ­½½%½5½E½U½e½u½…½•½¥½µ½Å½Õ½å½põ½ÍÍ»Pb ôó Ö·4Pþ—FÔÿ›Ý ÿG;%¶]ÿázÿÞBðÏverã�¥ƒÿG:\EXCEL¾Aƒ.EXE5§€V·Q� 3ƒIÿnprocHanûdl1‰Ole¿2.dll3§€WðV€†�´¥‚Prog»ID3‡ebaT€ïR ’{d¾ ’Há˜A–€ŽïA2] ’Àd¿DìQ¾¼ƒ×û£,�R¸Î@dî耞@ú–€×£°¿?踥ú€ï�Âc½‚33‹¿@q=:ì€3ß3#@,IѾ{:–€;*�U*�*�*�2‘êss sé«N�N�N�=ñ”€òb�mm}��­½ÍÝíý ----=-M-]-m-}-�-�-­-½-Í-Ý-í-ý- ==-===M=]=m=}=�=�=­=½=Í=Ý=í=ý= MM-M=MMM]MmM}M�M�M­M½MÍMÝMíMýM ]]-]=]M]]]m]}]�]�]­]½]Í]Ý]í]ý] mm-m=mMm]mmm}m�m�m­m½mÍmÝmímým }}-}=}M}]}m}}}�}�}­}½}Í}Ý}®±á #ôsA4†µ¾4Ðß ª   š  à )ª)))) IºàAMÑX X U X  X  X X MX l?ÀiiUiiiýQíaÐ aÐ aÐU aÐaÐaÐaÐUaÐÐÐÐÕÐÐÐ ŒTóàÅ ÅÐÐUÐÐÐÐUÐÐÐ -© -- -yÐ^yÐ*  _PMQ ((M   88ß„Ä#@ð –W ) ))5))á e•e À A± ÀJ À ÀÁH H ©@¡ÀÀÀ¦À 7û॥š¥¥8Ù ¹ ªoÀ.À.À.À Ô.À �Ö�´4ÓÂ8Uà à à àU à àààUààà¦ÐզЦЦР;TEð" " " " U" " 8àHàÕHàHàHà ÔžàR R R T¦àb b b b Ub b b 둪ë�ë�ë�ë�ªë�ë�ë�ë� Jë� ë� ¢!oÀ ¹°Ù´¡¹° Û²Á!U¦Ð ¦Ð ¦Ð !J¦Ð ¦Ð<ñ¦Ð¦ÐSß’à§� §� §�•§�§�Lñ•à R 1…à0DàDà©בkÀ kÀ kÀªkÀkÀkÀkÀêkÀkÀó‘„ÀK$ ï ï!ï ï U ï ï ï ï Uï ï ‘à1ª0000ª0000 Rˆ1ÔäÐ¥à¥à¥à•ûÐûÐûÑûЪûÐkÀ kÀ kÀê88@¿?ª*�*�*� *� ª*� *� *� *�T:‘s�s�s�s�• s� s�AN�ªN� N� N� N�¾N�íb� úb� b�  êQ@ Q@ Q@ §'e@e@še@e@( y@ªy@y@y@y@ ©®Z@‘@‘@‘@ J—�›� ¢ÑSÀSÀU SÀ SÀï ï Uï ï ï ï %ªÐ ªÑªÐ÷Ð ‘‘%�5�E™N�^˜¯õ e@ ‘@ |�A‘@¯FPU FP FP FP FPï ÁAn�~�Ž�ž�®�¾�Î�Þ�î�þ�­­.­>­N­^­n­~­Ž­ž­®­¾­Î­Þ­î­þ­½½.½>½N½^½n½~½Ž½ž½à®½¾½Î½Þ½î·Zý%ôóôÒù¼4Ð'6*ÿ&uôì�ÿ1Ômÿ°Uü¢ÿIïÉÿÊ1±ÃÿýëÙÿÇ¢Õ•ÿêˆ|nÿaRD5ÿ& ýÿëÙǵÿ§™Š|ÿn`RCÿ4ftÿ ¥™‚þ§ÐŽö3øöð¬PýòProgIùD”ƒöñgb¾ÏƒÀ?da’�ÿÂyA ¸“›B �©Aó�ý€@ÿ2ázjBèZ’q=*�öð�Ï…«?�Ä€½@_èÍ̬ü€¾€¯u?|²�TePÅg V@�)% $/CCScsƒ“£³ÃÓãó--#-3-C-S-c-s-ƒ-“-£-³-Ã-Ó-ã-ó-==#=3=C=S=c=s=ƒ=“=£=³=Ã=Ó=ã=ó=MM#M3MCMSMcMsMƒM“M£M³MÃMÓMãMóM]]#]3]C]S]c]s]ƒ]“]£]³]Ã]Ó]ã]ó]mm#m3mCmSmcmsmƒm“m£m³mÃmÓmãmóm}}#}3}C}S}c}s}€ƒ}“}£}³}Ã}Ó}ãzW$ôsA¡†·#àß Õ ×R6Ø:SÙj�%%%ËÚZ�Ž�ðLñàAÑàIIUIIIIUI I IIK .Š3¡ày yUyyyyS4Ñà•••³ 5³ ¥uÑàvÔ» MðMðMðƒ4» ÁÁ£áàÍUÍÍÍ ÍSû ååѳ šÂ  åÎ�ý ªý ý%5ª555 5 Ò5 555ÛRb�Üf�999U9999U9 9 9 95 9 9ÝàqSÞf�yyðS/©à‰‰ y*Là Là Là�MðÓ~³ ÁåÐT•àñøàýýå ý ýeÐÏ ¥ù#ÐxGЩÀ ©À fI�°¨°ñšöö )¡à ª    š  *Ñà" iŽíàípíp ß¡à<6 eÐÎ ›7Ð�ÐËŸ¢Àwk ´°5TÙ°a�a�a� a�U a� a�@à@àU@à@à @à @à™�‘­‹áà“ Éœ¡à› › eÐÍ#3 s�Þ�ì ´ M ´ o²ðÀ ÁS„ºðÌ Ì Ì UÌ Ì Ì Ì 5 Ì Ì “» ô 5ô ô ”Ñà0U0000U000 0U 0 1—òÌê�U»#ãËê�º#ãÊê�Õ¹#ãÉê�¶#ãÈÓg1�m0m0²T½ }�   ¥ �10¶ð‘0 ‘0 š‘0 ‘02áàyšyy Gºð­2éÆÑàÍð×íà å øàeÐÇ ªà° à° à° à³Æ'öƒ ó0ó1à°Mà³Å�'�0�U4”8”àà±à°à³F�V�f�v�†�–�¦�¶�Æ�Ö�æ�ö�­­&­6­F­V­f­v­†­–­¦­¶­Æ­Ö­æ­ö­½½&½6½F½V½f½v½†½–½¦½¶½Æ½Ö½æ½ö½ÍÍ&Í6ÍFÍVÍfÍv͆Íà–Í¦Í¶ÍÆÍÖËõ%ôóR¡†¡BU��� �Sßå`€€€U € € € �©¶ð9€ 9€ 9€ ª9€9€¥0¥0 ªPà PàPàPà–Pàl²ðm¶ðq€ ªq€ q€ q€ q€ ªq€q€q€q€©n²ð™€™€ ™€ ª™€ ™€ ™€ ™€j™€™€™€‚†ðªÅ€Å€ Å€ Å€ ªÅ€ Å€ Å€Á¤È!Á±ÁÁJÁ È!Œºð��U����5���Ñà)�U)�)�)�)�MÍðÓÑàE�E�÷×?ô'К™™?èÍ̬@è�п�Âu?_'пTIP137n“2ÿNTRANSISÿTOR,DARLÿINGTONU@ÿ??>820ÿÿ_ö(ÿ @ázÔ?ßdÍÌŒQ’ö(‰¼Y�i—6Í“z�Š�?›�«�»�l”5,£Ù�é�îù”ìQ8 ®G!›@d @­ ­3Á2‹£8­H­š� ¨R¸ žv­i—1꣗­§­ù�Ç­×­k•0I³ö­½´w�ÂE °q= h g¸Å,½<½12s’¹2y�d½0ÿb²…ÿëñ?×£°î  fffQ’= — “½£·Ò�ôº Á·XßBAA@:·ÍÌ< ° ×h s¡ë½àû½ ÁÍÀ½³¨= 7¸ °ÿðh = ·Q’…#ë‘TÍ£·1¢27­„͸¶¥£À °ffh ³ÀQ�»Í12�¢2p–­ãÍÓ½ã¹×£�Ý@£·ï †ÓÍ%Ít·5 °wR¸þ  �µiÝày݉Ò�Ý?ݳ¨¤p-î °33ó  {®Ž Ò…‹ÓÝ£·N²2èT½íçM °)\îh ÍÌÌ Ò ×£2íi–1s’1³½bí¶¥w ×C °Ãõh  ×䜑í¡ç1¢q1ÓÍÁí¶¥R¸. ²ô$íòí£å�¢*Ðý"ý®³Há*}âï  q;=ª ÒÃõˆOý¡çòN²1Ríý0ÿk”ôsCûzþ^p– €—PÓI@ª � � � ª����*€¥0¥0¥1¥0Um€m€ m€ m€U m€ m€ m€m€Um€m€m€q€Uq€q€q€q€¥q€}™€™€’™€Á�™€�À ªÅ€Å€Å€Å€Rý€Å�� �) Ñ)� )� =‘)�¥)‘» 0ññ*ñ µA�Ñ16 ­6 <7´¡ZöÄ0î °�Âõ  )\¯| Ò ¡è\�â®ð:·óci•31CLÏú?POWERP¯¦wR¸ °®ÇAò�Ž Ò“d7GB¨¦XhKð+ °×;£ð  …«¦ø”¢JA#²ÂX²Ã»õÈ]Ð�•  Ë;¡E Ò¸…ëGüL -ERN>==º?= 'Üâè²ä²¦=-M-30Q0èWÁ: °ö(Üî  ¤p� ÒÑ"{H�-­'"0 -Í*\ÏK²:ƒâ,n¢F1ø+Åd­'51¡i1=ER½R.Á923'$3ó3³]ÐLñd+‡6 Ò®‡®ð±þ-D´ ²"1u=u-Ð) °wÍÌì  Ãõ¨¥=†µ=29Q@Ì=Î-" ¶QÁ¬ÃqMG !w@t=(=±l °¸;Uh \�2n¢®A `K`629k2ÑA€M„9êÓåë²²h ¤pmPn¢ûÁ¯ýj•6�¢6oýÔÞýt·Ý}â§h R¸Y^ ]]16ï¢6óÝ\E]µR¸n¥B5h (!ám]}]5N²5Îý¤]®µ33‹@ÂSfR,l]Û]14s’4±ím¸µÐ °{¦h ®³G‰*m:m14Ò’4tÍbm¶¥m Ñ|±’mCf1¢4ýÁmmámñmCf¢�¢45] }5Çğ¨Îh q=ŠG}W}14bï¢4”]}îñT ôó}Jûö¦L Õ ‘W€€€U€€ € -�ïÒâ«A€A€ A€ *A€ A€ A€MI5I I G6�±M±‹�y€y€U�� )� 9‘i›ª•€ •€ ¸Þ€ª¡€¡€¡€¡€¦¡€¹*�¹€ñRññ   U    U    Õ   àT*�����U����å � �4ATDC»CB2À3ÿ^�B)«\Ÿã"lF±ʪõñ¹L³Éõñ¶L³È¿gm°Vm°²!°ª)Ê*�°�° �±0Α°U ‘° ‘° ‘°I©3ª©°©° m€™uªƆ€©×~€  ÜöŸ„Ç Þ° òÞ° Þ°°Æö—ó°ó±Þ°žê³Å  ° Àÿ)*šÀÀPn°$Àš$À$ÀQÀ4À>4Àê±Þ°ýê³Ä#e? – à*]ÀÕ]À]À]ÀáWqÀqÀ }°U }°}°}°}°M}°†€•À•ÀS æ¡À¡À¡ÀS 7æ±À±À±ÀͱÀ8†€ÅÀ |RªÊÑÀÑÀ ÑÀê°Ãõñ´L³Â8©�-°òÀ òÀ òÀ ªòÀ òÀòÀòÀêòÀòÀòÀž«ÐÐÐ ¯; .Ð.Ъ.Ð.Ð.Ð.н<3ÐNКNÐNÐ ô°^Ðú^Ð^Ð  ªnÐnÐnÐnÐjnÐnÐnÐ ô°ªŽÐŽÐŽÐŽÐªŽÐŽÐŽÐŽÐ ÊŽÐ ŽÐ ®ÑÍÀ š”æÂÐÂÐ °Á«!Ð Ð Ð T*ÑÐ ÐÐÐ-ÐßVÀöZÀÿÐÕ ÿÐÿÐÿÐ÷W à á·Ð¦à'à'à ©ýkÐ3à 3à3àª3à3à3à3àö3àþ„À$¥ ûÐ ûÑûÐ ûÐ ªûÐûÐûÐûÐûÐûÐàGÐ#áàUààààUààà ”á¥ÔSÐûWиà¸à©üô°ÄàÄàÄàªÄà3à 3à 3àêÞ°Þ°곿?¯;õàõà ªõà õà õà õà úõàõà<ªððð ð zðñé5ðU 5ð 5ð 5ð5ð?íòBðQðM Qð  ]ð ]ð9 ]ðè°'!ÀqðÕqðqðqð(TÀ…ð…ð…ð…ðM…ð ®°�ð�ð­�ð ,#Ð-2€K^%°É¹ð ¹ðU ¹ðûÐûÐûÐÕûÐûÐûÐ_´àáð áðõ›Ðû#ôsýÕëÂL°·L°ÿjÿáüð$_ÿý­ÿPò�/ÿÌlóÿ üïâÿÕÈ»®ÿ¡”‡zÿm`SFÿ9,ÿøëÞÿÑÄ·ªÿ��ƒvÿi\OBÿ5(ÿôçÚÿÍÀ³¦ÿ™ŒrÿeXK>ÿ1$ ÿýðãֿɼd�Ab¾�B®GKB™ A;B2ç6BdþpF0Bô×£"BµuýÑ696894ï2YT`�Bff^‰"È?d[Û$\¥’ñ(C0�ý"Ãõ(?þ°Ñ,Ô¦% Õ^À--¾-Ù=š==ÚrÀMªMM M M jMMMÛAÀ©ÜrÀuuuªuuuuªu u u u šu uÝ>­iÞrÀµµ �I/Ö°Å ©°°ÏÐÿ ùx«µð µð UÀ™à´àñ†öªö �° �° �° ª�°�°�°�°f�°*�" Ž~€©Þΰ. � Í�ÿ„Î › –­ðŸ#ÐwOиà©5:€]À]À]À ª]À ]À ]À�Àª�À�À�À �À R�À™Á¹°y€y€“ œž°› › °Íg# sr°Þ�)°ª´ ´ q€q€ ¥ƒ �„Ö°Ì Ì ªÌ Ì Ì Ì jÌ Ì Ì “v€jô ô ô ”�ª0000ª0000 ª0 0 1—Ö²Ìþq»L³F½V½f½v½†½–½¦½¶½Æ½Ö½æ½ö½ÍÍ&Í6ÍFÍVÍfÍvÍ†Í–Í¦Í¶ÍÆÍÖÍæÍöÍÝÝ&Ý6ÝFÝVÝfÝvÝ†Ý–Ý¦Ý¶ÝÆÝÖÝæÝöÝíí&í6íFíVífíví†í–í¦í¶íÆíÖíæíöíýý&ý6ýFýVýfývý†ýÀ–ý¦ý¶ýÆýÖýæ÷KDôó@õòöñ¼L0EMe©uuU­­­ÁM ÁÒ@1€1€U 1€ 1€ 1€ 1€U 1€1€1€1€M1€�a€a€Ua€a€a€a€U a€ a€ a€ a€Ua€a€a€a€S��€�€�€U�€�€�@�@Õ�@�@�@ .Ôž0É€ ɀɀK”�Ù€“ —!“ ©¤�í€í€í€Õ°¾@ÁÂ@–0©LÂ0 � � �ª � � �‘[’Ö0�¦04041› ª› › › › Ú› › µÖ2Ú4S4¦0`�`�`�U`� `� `� `�M `�bº@„�„�ScÂ0������U������”‘ieš@°�°�jÂ0ª¼�¼�¼�¼�Uqš0�²@‘Â0Äò€¦Ü�ÐÒ@ä�ä� ªä� ä� ä� ä� ªä�ä�ä�ä�šä�ä�ÑÂ0   Ôª0( °7Ù/ C +°P5K U@Ø=°I Sª0Q Q Q U Q  Q  Q  Q U Q Q Q Á©-�ÁÁÙ€šÙ€ �’ª0™ ª™ ™  ™  ™ ™Ì¾@± Í–0¹  š¹  ¹ ÎÖ0É ªÉ É  É  É ªÉ  (  ,£ØzöñÁL3×:º@¦" M¾@ ° °™NÖ@° Oš0° ¦° Q¶@*°*°©WÖ06°6°6°J6°>±Zª0N°N°-N° \¶@^º@b°3_ò€��d¶@r°³fò€z°g–0iRª0wÒ@аа а5 а а‰ª0¢°U¢° /�Ô�Ô�UÔ�Ø�Ø�Ø�UØ�Ø�Ø� Ø�e ¾±¥ª0Þ°ÕÖ2UÖöñÀL3Õöñ¿L3uÔöñ¾L3Ó2 %e % )%×å`ªI I I I ªI ===ª== = = ª= = ==ª=MM M JMU–0À ÀU ÀÀÀÀUÀ1€Y�}¾@*È Ì ì!› ·ÀM ·À £š0ÃÀ ÃÀ“´Â@W� Ü�70Òöñ¸L3Ñ;$4D€Tdt„”¤´TÅÄ ¼� ¼� Ì‘L Ñ§À~²0È ½01ð‘ ¡Õ0åÖ@ÈÐ ÈÐ ÈÐÔäô--$-4-D-T-d-t-„-”-¤-´-Ä-Ô-ä-ô-==$=4=D=T=d=t=„=À”=¤=´=Ä=Ô=ä6ëþ ôsDûv @«ÝÐÝÐÝÐT FàFàFà9 U­p µpNà .PÍ JP ÎV@=ZW``IJ/aWPÓ[P´`´`KÖsP9иð °U ° ° ° °M°Tš@� �U ����Q�/‘®°®°®°U®° ®° ®° ®°© ®±®°Ô�Ô� TÔ‘Ô� Ø� Ø� Ø�UØ�Ø�Ø�¾±J™  ™  ™¡÷àG‘þ( IC-SM-QÿUAD CMOSÿ UART\HGÿGF<20?hÿázÀûA;�AdÃÿõ@A,šÿ™™?è…ËþS�Âu?»ýMTL16Cß550ANh2Nü# WITH _FIFO^-\7wö(L?¸EÏázÌ@L\C4ã50qÕ|RFE×ED;2a7š™Ý�?\�VE…ÑKÃÓFØFNS2Y#W-c7ÿq=@ffÿæ?d®GÁ?ô- #Ùc084CÏNSGS�$|BIïFET OP ÿAMPYEDDCÆ1ÿ[7øpd …ëç@dî±p"¤p}èx-ˆ)—-T­$QBA‡A@9W'Ä-Ô-ä-4CCDK4@%9Y6î¾#�Âd \�âNj �•.=$؈&G2CP®4þ-8`7Ÿ¤pý?*2k!¡À‘=¡=±0ö" @ž(DU+AL­$V5ÿ[#‚=q!{nô=©8Q2m@p@%"Bf=v9ìQd w)\Ïj ff†LM\M81³3Ð@¼=8¾#wÃõèà0)\¯j ×£�¯M¿MÏ@ö"+PLÚM7ÿ^›M` Šp-@]Ï@Q2†P@%:YT<a-f]?<7‘&ãQž-®-×3=í=Ô]ô#íVa=,G= m0mÝVQ1¦a|^=tŒKžŒ·P33S€`Gö( ³‹mØZAHdø pQgcRDCCB!:Ó7=Mêmv\7²3eq|Mfh×=ç=P}`uIbxM$M» Âôó}Lûö˜2 #ÀU8Ð 8Ð 8Ð 8ÐÉ`Ѱ±°4Ùð-€-€%™ð9€• 9€ 9€ ±%à¦%à+ÅðU€É�H4¡ð��U€m€SV­ðu€u€N°U^°^°b° j°Õ j° j°j°`T©ð¡€¡€¡€¡€U ¡€ ¡€ ¡€°�U°�z°z±hðR†°†±†°†°Ð�Kr àˆ¥ð퀢°© ª±¢° ¢°™ ª÷à÷à÷àÃÀªå  æ° æ° æ°ªæ°æ°æ°ÈЙ]I³R¸Þ,÷c7705B³1Y”@"ÿPOWER SUÿPPLY MON_ITOR]ñlŸ×R¸^·R&€`ÍÌ8èc?�O›ACP”"À”ã-A|n�~‘bKJWJI>º!g¯Tj·Pw×£0€`q=êÃR¦�¶�_”Ä�Õ�y�3þ�­­Â‘Q0“¤@%A§M¥!^ƒ�“�v­†­2Ęþ¡Ó�ã�ó�j¬È]ñ­_“þ¡½L­\­@½P½ôª™£Ñ±è£­³­2eŸ…ëQî·P¤p€`ázÔô¯½ùdõR•50L0Ç5CL_‘7Å|VOÿLTAGE REÿG+5V[JIIëH=2bŸ®÷î·Pö(¼€`…{t³ùdéc497 rü›ÃJÊCONVERÏTERX'vú…ÝK·PHá*€`×£é|ÍŒÍ9‘ MOTØûÄ|z°WMµÁTR¿OLLERWµ%?î3³�ÂE·P¸%€`= ×ÍîÍþÁØ{-S‹CHEDˆ°©D´ÂÔ]hfdÕb=» ·™p…‹½P“Ód?Ýùdó”Å31óCZÃÔ|ADJUÿSTABLE SoHUNTVÁ.ZhfègÃæa@Ô½PÍÌŒÀ¦Ý¶ÝÆÐ´0)âw³RE¿CISIONà×X@hfÖyªq íí1<¨‹ãÑÝáÖ['vfXä�™pQdlÀGlí|íÆÐ Q0ðâ±ežíVÁ\hf¼ãwff·PÍÌÌËâ9§Ñíáí31AÈÔYðä™íá×\'v633³î™p®‡½Pj\€7ýGýWñôãÛ±ýíߨ^^'vd ôsMûv?›5 Õ€ €U € €%€-€U9€9€9€9€3&a€N 9U9 9 9 9SRQQ�€Õ�€�€�€[TŠ€mm�€�€©��‘€‘€‘€*‘€ ‘€ ‘€•¡€Õ ¡€Á€É€g” �Ñ€Ù€ á�Ù€šå€é€ vF€Í šÍÍw2€Ýªí€ù€ù€ù€*ù€ ù€ù�.�M�Š€  U     � ¥B€1�ôß­^ÚR”C27LÐmBX@*cWñ¤puQ" ×ÓÜ­I279õ!¹Qgp¸ÀÌ}` ÍÌÜ€`Hsá’šª277³1p#pwÑÄÈ®¯þÒ%„ØÂ0û -2Fc{#Ç8,‘ÓM-]-m-¦cÜ#ü±jpZD„Ö;  ( 8 HT` p € �   ° À Ð à äð 0Õñ1�¿ êð1Ô�¾þ3Ó2 ©Ô€@ @ @¾ €Ø'@j'@'@'@Ù €ª;@;@;@;@ ª;@ ;@ ;@ ;@ j;@;@;@Ú0ªk@ k@ k@k@©:€@ @ @ª@@@@YŠ€Ÿ@}�™„Š€¯@ ›>€·@ ª·@ � � �U´�µB€Äï2Ò�]¸þ3Ñ;@AT 1 0 0 0;@U;@;@;@k@¥k@{Ak@ k@ ªk@ k@k@k@ª €€€€ª€€€€J€€ �€ €5 € €ÝPtPÓÞP|P|PÒŠ€/΀ŒPŒP 3Rþ€j>€œP œP Qf§@~B€«@ÃÚ€™ÐF€�ÜÚ€5�Ê5� 5� 5�0Ïÿ ùxßK åP eÿÔOñ €ùPùPS )þ€` ` `U````µQ€Q€ Žî€ÞŒŸ01` ßþ€9`0Îÿ › ,ÿŸwû50©à(@^`^` ^` š^` ^`j€v`ªv`v` v` v`–v`u �‹2€–` Éœþ€ž` ž`0Í#ß sáP�×·` ·`oTÞ€Ã` «@¯@¯@U¯@¯@¯@¯@•¯@ ¯@ ³A¯@ª � � � �©”Š€pppªppppªp p p q—ªï2Ì�»þ3Ë�ºªþ3Ê�¹þ3É�¶þþ3ÈgZpppp²À`Ú€ª``` „q0T®€”p ”p ”p ”pS22€˜P˜P˜PÓ Gj€’`¸PÆ*Š€Ò.�×î€ÛŸ0ÐpyÄP0Ç €êáp áp ápÖõôóKûöš7• 001'@ª'@ '@ '@'@ ¦0KÚ€-€-€ª-€ -€ -€ -€ ª-€ -€-€-€ª-€-€-€-€©LÚ€i€i€i€ ªi€ i€ i€i€*  ‘΀•€U•€���U���¡�L‘ � ̈@ŀŀ5ŀŀÍg0Ù€UــــUــ Ù€ Ù€UــــMÙ€Îg0��U�� � �u �ƒŽ¤pE”O®A¾-À³Ù%¤ÿE2682IDWð^—h-"uYHGGéF%ÒÉÅÓŽ N”…ëUA�¿´ÕY–?301INEÁ—hè|³u†–\öÒÃõLîŽ= ”)\Ït½-¿´ÒQ752~#ü%£dò8-BIT ¯DACR¾¦[Xä}Р{>Ö ]á­À³ïQ556½�¢dò~pTIMERQçö^M­]­m­}¥^Ü¢hr˜¢TçöL£= 'ÒÀwš™ùfàÃõ¨¼­ ¿´îy§5":²Ž­ž¬ ½½+½;°à£—°é­ù©ÕZ#ô˜’ð¶ ìQé ­'ÄÑy¦49Iô>²ô±15§ADCPçöWãÃõ(ÒÀ]áp½:¨ùáQ393"MÂüG·-#OMPARA×TOR²ç`öÒq=)jÒÀº!d‚Àê-Í=Í¡3}$²Â‰(jÆVtÌöS(<+ðûÑdúм’Í¢Í372PÃÑ((ÊÍ(òÖ*À†Â€õ*Ó½݇370´ÅtÑÂÄÌX|õÕåÍUÝeÝÕÖѸdÌ•×Wã ד†Â`ζ �ÂRÝÄÝ33 ¼6âG·Ä̲çca´°!w…ƒ¶ R¸.íÍ-27M~%�á‰-€“Ü|§£\�‚+ð ×C¶ \�{í‹í›àÓþãG·uT|fã®- ßíïí7L~%^ñªíºìf(ý8ýHýXö^ç!izpý\|DôsùÃÃþ0ý¼þ0ëzn'ÿb'V'J'¹ÿPçöê$ÿ$$ù#?ÆÜûv4 D T d t „ ” ýs=оæ2k¨¤‘îŽq=R”Há^¤’33»@ëÉQÿMS27C128/20JLè-ñ4¢úîK’#EPROM¿aONNM?Ájî>Ò¸“ޏUŽ”q=Ë Û ë1á5ó\`NMûML…ëžB6ÚàkBÙáB7Í£=Ëã0401òÃ9-Æ4¢4MBvuh Ôºù�ìQŠ0y260Ú4ƒ`J   0Ù+![/ F`+K`žÌ ªN`íP'@'@©0Q Q Q ªQ Q Q Q ªQ Q Q ˆP*ˆPˆPˆPe�E�ª…€©€©€©€J©€ ©€ ±�ррUÙ€ Ù€ Ù€ Ý�ª���� ª� ��ÀPQÔƒ`é 0ØöqÁþ3××:0)`MT¨@ 0 0J0J0Ó O‡`0 0 Q4�*0*0WS060U606060>1ªb0b0N0N0 ©\�v0v0–0¥c`d�r0¦0ª¦0ª0 ¶0Ò0ªÒ0Ò0 Ò0 Ò0 ªÒ0â0â0â0 ª‰€‘€‘€‘€ª•€•€•€•€ª•€•€ •€ ¾1¥¬O0Þ0ÕØBÖöqÀª CÕöq¿ãCÔöq¾®ãCÓ2 ì@ ì@ TðAì@€M M UM M M g@Ug@g@g@g@U g@ g@ g@ PU PPPPUP P PQª›@ ›@ ›@ ›@ª@@@@©‰PŸ@¬P´PJï`ïa›j ·@ ·@Ó £‡`Ã@ Ã@´ªž€µn ÄÕRÒöq¸.CsÑ;@A €U € € €;@U;@;@;@{@¥{@{A{@ {@ ª{@ {@{@{@ª)€\P\P\Pª\P\PLPLPªLPLP LP LP jLP LP LPÝ5P¦tPÞ€|P|P¦} /30ŒPŒP ¦°p jj œP œPL Q§@~n Ë`ÀpÓЇ`å Øpå”W0ÈP ÈP ÈP@`Ï¿ ù³`»KG€ E {ç ñN ªùPùP Œp Œp ªŒp ŒpŒpŒpªŒpŒp00 eŽ 0Þ01` ßð`Ü9`©`Î 5 ,ü: A wûO5@@r`r`U^` ^` ^` ^`UŠ`Š`z`z`U z` z`z`¼p3‹Ÿ0–` œð`ž`y ž`:pÍ# sup¾áP�·` ¦·`oS0Ã` «@ªï`ï`ï`ï`ªï`ß`ß` ß` T³Aß`½€½€½€U½€ppp•pp3qpªpp p p ªq—)"Ìöq»[s˪öqºgsÊöq¹ù#Éúöq¶ù#Ègkpppp²À`©O0!`!`!` T„q¤p”p ”p ”pM ”p2Ÿ0˜P˜PM˜P G¾€’`¸P«Æ @Ò�× 0Ûä0ÐpÄP Ç ©P@áp áp ápwâôó 6ïpõÊÂ'ÿFq�ÿrf#Ýð¿ä!ó6 âž ã. Ó\@,€2U!#W08€ 6b @€U @€ @€@€@€5@€@€7 @`€U`€`€`€`€Õ ^0 ^0^0p¬ @„€ sO0z 0|T¾€§@§@§@¬Qª®0®0®0·@1·™PÌqÌpØÆ Ä€•Ä€Ä�ÚÐ`Ô€²Ô€Ô�#€;ô@šô@ô@Ö8@#@ª#@#@#@#@ 2M I!|P 5b �Õ �@€@€RTŸ0-�-�-�-�U6060 b0 n0¥ n0 n1n0n0©eS0a�œPœP ©yj q� q�q�ªq�q�§@ «@ F«@ŠO0–aÞ0Ï@•¸€×@×A¼Pʱ‘ÖÐ`Ý¿0½�ᔀ@Å� Å� Å� áºöñÄù#à: ÝP¾åPà õ€–8P @'€@0 J00&1b1v™PZŠ0q�€W0�€@j&  &  & ˆO0T6¡•� •� •� •�U •�•�•�–`U–`–` -` -`S šj n  Ã@Ã@5Ã@Þ0¬® † U† Ï@Ï@ Ï@¥ Ï@ ’¡×@×@ªÄp Äp ÄpÅ� ªÅ� Å�Å�ѓ߫!@ tP €p©"¿0ß ß ß ªß ß ß 8€ª8€ 8€8€8€I$W0@€ T�œPœPÓk @#°#°qR»0r @3°3°3°S¶O0C°C°¸€] ¥‘„Þöñ½ù#WÝ)ñPô@QRõ€ +A8PtPtPUtPtPtPŒ±iW0˜° ˜°S0ª¤°¤° ¤° ¤° ª¤° ¤° ¤°¤°*¤°¤°ı.® Ô°¥Ô°ŒQ°P°Pš°P°P @ô°‰‚Ð`ü°šaÞ0 ܧù\@0Q ©%¿0ÀÀÀJÀ 0 )a00S+€@AÀÔ°¨pU¨p¨p´p´pÓ8® aÀj0`RŒ@bn ª0pÓ@. Û7@Ó¡@U@ô@ô@ô@©ôAõ€õ€ò‘á´,@²À ²ÀøP”Æ aÀaÀeÁaÀªaÀaÀaÀ aÀ ªaÀ aÀ aÀ aÀRêÁCn úÀúÀúÀMúÀ D»0• • U• • • • •• Ñ[Ð`®0R7p7qž`ž`ž`Už`ž`ž` ž`]}ÃÚ4  ¥  % (ªqÀqÀqÀn0*n0n0n0]‘n0%n0›Ña�e‘a�UœPœPœPœP©¤Q/° º0¾0R×@©‘¼P¼P¼P© ¼Q¼P ¼P ¼P ª¼P¼P¼P¼Pª¼P¼På å ÀQå é í#2-B-R-b-r-‚-’-¢-²-Â-Ò-â-ò-=="=2=B=R=b=r=‚=’=¢=²=Â=¼Ò=â4€!ôsE>¢ž;wA8PU8P8P ðÁTŒáÂÀÂÀ”àðIñ)ð )ñ5ð5ðµ5ð=� T¦ðUTVðUUU ]©V€@i i i REñYVð}}}¥ } …2Ð 2Ð *2Ðeð€�] @©Uqðqð yð yðUyðyða�a�M�ðtÂð’`’`¥’`¡ñ6 6 J6 6 +áìàìàiìáìà ìàÓø` ! 1 A Q a q � ‘ ¡ ± Å à‘à�ð�­­ ­0­@­P­`­p­€­�­ ­°­À­Ð­à­ð­½½ ½0½@½P½`½p½€½�½ ½°½À½Ð½à½ð½ÍÍ Í0Í@ÍPÍ`ÍpÍ€Í�͠ͰÍÀÍÐÍàÍðÍÝÝ Ý0Ý@ÝPÝ`ÝpÝ€Ý�ݠݰÝÀÝÐÝàÝðÝíí í0í@íPí`ípí€í�í í°íÀíÐíàíðíýý ý0ý@ýPý`ýpý€ý�ý ý°ýÀýÐý^àý~#ôýÃÝ�Uêêh0h0Už@� ²@¥ ²@)���*��%‘Xe`E€• E€ E€©2PT¥µ µµµUµip a� a�%a�·Q�p…q‘p•‘p‘p™�‰�©¦[ ¥€¥€¥€ª¥€¥€¥€ ¥€ ª¥€ ¥€ ¥€¥�¦¥� ÂÜPــ4­‘® ® å¦pñ€Õñ€ñ€ñ€æTe`� � ��©�‘p 6 6 ©¸Æp(�(�(�¦(�ÅÍ`<�<�ª<�<�<�<� ª<� <� <� <� ª<�<�<�<�Š<�® í�® 6`ðªÿñÉÝ“ïÿñÈÝ“îk8ïðïð—@*­�Ž@òòòIt1ò Á‘€ €e € Ñ‘ p e`©7i`é� é� é�T=E€E€E€E�ªUp Up2P2Pª2P2Pipip*ip ip ip 5¡q@U±p±p±puALN!@ °N€ì` #a©Òpð`Ê )â[ u u u 6`ÿí#wô7úp– ÕPP PGTµ` ep Íx¦pªô0ô0ô0ô0’" ­qy@ ôaíð¥×N€àq`æ  æ ªæ æ æ æ JÊ Ê Ê!±çõbì"w<`S Éï#° #°#°_  3°ß U U@ U@ U@0•0#0S±ÕªÕ‘p¡€¡€ª¡€ü06 ñ�Lp° ±N€‡°’ 5 ’ ® ä`ñ€ê6`ëÿñÇ_3ê7_ô âQ`ñu0ªú–  U@)pª)p)p)p)p©P[ à°à°à°ªà°à°à°à°ªà° à° à° à° ªà° à°à°à°Jà°5p9q5p5pU5p5p5p5p•5p 1qSu`�p’�pÑÙhÜP`ÀT`Á�pÏPÏP ÏPK p[ ­N€® ® ¹íð6`é*¸°–¸°(VpHp=pj=pE€E€ ae`*�p �p �p Ñ�pU�p30 30 30U 30 30ÝÁsÜPªéÀéÀéÀéÀªÕÕÕÕjÕ Õ S0Ã^pÊÐ Ð Ñ® ÏÔZp-Ð-Ð�£è*_[|`ˆa©Æp000 ©&ÜP^Ð^Ðà0ªà0 à0 à0 à0 jà0à0=€9VpªŠÐŠÐŠÐ ŠÐ *ŠÐ ŠÐ šÑ™N€ªÐUC0C0C0S0©S1S0S0Ù€ªÐÐÐÐüÑå�„ç, Ó¤§@ q!p÷Ð^Ъ^Ðþ A@ A@ ªA@ A@¡À¡Àª¡À¡À¡À 'áITe`3à 3à )p©iAqp up »P ¨}�F!ªÐ ªÐ€ÀP–!å�d‘® ® m¡šð`ð`Ö^p‹à æâ Øý0Ÿ³æªH`#°– – R0û!00¼áª‰p‰p `À `À ª`À `À`À�p*�p �p �pÇQ U    U }@}@}@¹C06`å0Ž@ T×!× × × ÷Ð%ß ß!à0‚ÑjѪY@ Y@|À|Àª|À/0/0/0ª/0/0/0/0J/0/0 ×Q/0 /0% /0 eñº  ‘^ U ^ ^ ^ °U°°}@ñªC0C0 C0 C0¢C0Ñ�Ù€6`äÿñÆ^_0�ôsIûv?¡>ÞU` Uå�å�å�å�•å�å�å‘å� ªå� å�å�÷Ъ÷Ð÷Ð÷Ð÷Ъ÷Ð÷Ð÷Ð÷Ð *÷Ð ÷Ð ÷Ð 9ñ÷ЩAß ß ß Rß ;±ß ß ß I �0 ZÑ00U0000©10     º  k±w±ñ}@U }@ }@ }@ }@U}@C0C0 C0E C0 C1ÑS0 S0¥ S0 ¾Ñ‹à‹àþ!�Âu?ëû÷pUC384û4N92NIC-ÿPWM CONTÿROLLERSBÿAA@920ÿÿh{ÿ¦@…ëq@Ýdi>@,5×£ÿ0@è)\O?©è,<A?AFAÿDVANCED ~L^DCCB:`Ý]eš™ymö(Ýü“à‘SOWER FpýP8Z fcœ1@w{‚7@33_=BìQPzíŠèœùá�í 9Yð-Ò=éí4_Cað‘]WÃ=Ó=Ný^òœ¿ðxMM%ó:#ôs=Hûx7 ò€ 5  J€57b€)�)Eò€Y�m€Zm€ m€ \ú]r€ªMMMMYe>€ay>€z怪m m m­€2­€©�¸æ€�³ Ñ–€• ÓÞ€ÔLú¡Õb€��U � � ��M�Úb€ÉÉU É É É ÉU ÉÉÉÉMÉÛJ€ùùUùùùùUùù ÜJ€ÿå V\@??ë>8†E£@Å?2ºH°¾f0= ·«ò{Ó®«ðb™mo“F5÷404e2NDIºØ@,ðST-¾`OþöPY 3A 40é0(6ð¼<)\¯:f2««ò¸¥P`e3Ë2qz 3ŒûA@,áz„î ß ÔßÖã€U! ! ! )!)×. 9 9 9! © æ€) ) ) –)M‚€^b€e ©‰ž€m m m ô­€ í€!#w¿ô €™¶€– D>€ž –ž Gž€Nî€I –ax†€š€¾ š¾ ¾ €Â€m ©“r¡©� ©àò€æ æ æ jæ æ æ áJ€ª001ç~"ìÿ"w›¿ É #0 ú#0#0  –30"r2î€?0 j?0E€E€k^€TS1…€…€�€¥€µ¥€¥€‚‚€ˆLb€w0��0 Õ€e Õ�´æ€�0Æ�ÑäÞ€% ë�Ç ý!ê7ô? âñ. €5– ?0Oš€Ì0ÕÌ0Ì0Ì0PTJ€à0à0à0à0Uà0à0à0à0U à0 à0 à0 à0U à0à0à0à0SQJ€$@$@$@U$@$@$@$@µ$@ $@S’€fÔ–€P@P@P@hT–€`@`Aib€j>€Zp@ p@ pJ€­î€Ê—0 —0© é*µ¸0¸0(^€H2�W¶€¥@XJ€­@S aæ€P@ P@ P@i XAl@l@r怪Ñ@ Ñ@ Ñ@ Ñ@RÝAs–€é@é@é@Ué@…€…€…€U…€…€ …€ ‰SÃ>€P P Q¦—0Ïb€-P-Pýâ~"è*[U^€‚€#†€šRPRP &–€^Pª^P € € € ª € € € €R5�9^€ŠPŠPŠPU ŠP ŠP ŠP šQ™™î€ªP¶ž€²Pª²P‰‰‰¦‰ÂÞ€PPŠPPQဠç¿, Ó ©!�÷P^P^P¥'r+î€ ` ` ª `¡@¡@¡@J¡@¡@ 'aa€ a€Õ a€® Ø0_Tr€G` �€ a aU­€ ªP ªP€@•�0 æQÅ’€—0ª—0¡¡¡2 �é��Ør€Ÿ3æŸ#0U– – RPRPS$€¼`¼agr€ªÈ` `@ `@ `@ ª`@`@l@l@ jl@ l@p@vr€ªø`ø`ø`ø`¦ø` µš€ppܲP å0 ÝT2 )p )p )p ÷PU;0;0 €‚QRjQ3æ€Qp|@|@M|@qJ€epepUepepepepUepep ep ep• ep ep eqº ¦w0 ‹ò€¥p ¥pª¥p000Rpq²P²P ²PU ²P²P‰ÎPê ä�Æ«0fõôóDûö›> ! Úÿ¹0€5€ €^€!€K*€.†€-€-€U-€ a a a U a a ® ® ¥Ø0CaØ0Ø0¦Ø0 [ò€m€ m€Jm€IIIIUIIe!bNpª™€ ™€ ™€ ™€ *™€l@ äa~Np�U ��}!�rª�0‘‘‘ªÎP o` o` o`ªo`o`o`o`ªo`s` ©%:%%„ð��(�8�H�X…d…t�„�ÀЧ„ï�‘È«3î�8 --,-<-L-\%ª­@­@­@­@ ©Zr  m€m€Rm€m€d%e e … e 5¡™€l-|!¥¥r°�@• •IÒ€`�a 09P9P9P9S‡-—-§-·-Ç-×-ç-÷-=='=7=G=W=g=w=‡=—=§=·=Ç=×=ç=÷=MM'M7MGMWMgMwM‡M—M§M·MÇM×MçM÷M]]']7]G]W]g]w]‡]—]§]·]Ç]×]ç]÷]mm'm7mGmWmgmwm‡m—m§m·mÇm×mçm÷m}}'}7}G}W}g}w}‡}—}à§}·}Ç}×}çvÒýôsŸ{õÏ«°Ã«°ô'/ÿ®ùLŸÿ™8Òoÿ ªDáÿzêmÅïraþýsG:\EX÷CELA.EXE½5öpVQ ý3Inproc¿Handle2ÿOle2.dlKl3öpWV†^¿ProgID3hþ42ìQ¸=ô÷%T4®Ç>š™™>dÀý>¯š™>¸ ¿…ë‘>è]4ÿÍÌl@\ï�"@d>þ?,îaÃõ(¶{ŽvH�gÛ…ãã×Háªé{��ñ•Ñ�Õ‘%�À$ª^Ð^Ð^Ð^ÐR^ÐfÑ^Ð^Ð ^Е ^Ð ^Ð H�Àª<�<�<� <�ªààààNá„ðƒöqÉ«³–�¦�¶�Æ�Ö�æ�ö�­­&­6­F­V­f­v­†­–­¦­¶­Æ­Ö­æ­ö­½½&½6½F½V½f½v½†½–½¦½¶½Æ½Ö½æ½ö½ÍÍ&Í6ÍFÍVÍfÍvÍ†Í–Í¦Í¶ÍÆÍÖÍæÍöÍÝÝ&Ý6ÝFÝVÝfÝvÝ†Ý–Ý¦Ý¶ÝÆÝÖÝæÝöÝíí&í6íFíVífíví†í–í¦í¶íÆíÖíæíöíýý&ý6ýFýVýfývý†ýÀ–ý¦ý¶ýÆýÖýæùp þôó ñÐü«0ô'è'ûÿï&ã&:iÿ ç#úÿî"â"9hÿŸ>aþ��ü;¦4€<«<€<€¯íH€H€¯ôT€T€ ¾T€ 2d€þd€=>«t€t€ t€ºt€t€ MŽ‘û+1H€H€P�H€UH€H€ H€ H€Õ H€ H€ H€ 7Á€0É€MÉ€q€p€p€Up€p€p€p€Up€ Œ€ Œ€ Œ�¯B��ª��� � ª� � � �ª����¦�C’A�A�êA�A�I‘„úm3+€^�bu€ªf�f�f�f�ªf�f�f�f� ªf� f� f� f� ªf�f�f�f�2~‘ci€®�ÓÒ€¶�U ¶� ¶� ¶� ¶�U ¶�¶�¶�¶�M¶�Ôu€â�â�Uâ�â�â�â�Uâ�â� â� â‘©µF�   ê  ¡„÷3) À1’ Fž@7 57 7  Jê@G UG G G O¡ZL@L@T…@V–pªk k k k ª¥@µ@µ@µ@ªµ@= = = ª= = = = TU!-P -P -P -PU-P-P-P5QW„ö9Ϋ3õ9]Í«3ô:¡@¡@©ð¡ùùùšL@g  U�@° ª° °°°ª°k k k Tw¡¥@ ­@­@­@M­@Y¹`P°P°UP°P° K`ž@d$`p° p°UÈ` È` È` È`UÈ`È``@`@U`@l@Ñ@ÕAJP P QPP¥ýAzrpİİVU Ђ"ó9Ì«35ò9Å«3ñ=+.� 3�C�S�c�s�ƒ‰_ “mÀmÀmÀ”Çp��À�À�À��Ÿ�¯�¿�Ï�ß�ï�ÿ���/�?�O�_�o����Ÿ�¯�¿�Ï�ß�ï�ÿ�­­/­?­O­_­o­­�­Ÿ­¯­¿­Ï­ß­ï­ÿ­½½/½?½O½_½o½½�½Ÿ½¯½¿½¼Ï½ß½n"ôsJ~4™.lÇÀš  ժɪÉÉÉÉš)p)p -@5š†P†PL„`EšEùR`0Uªhàhàðlà ª¥@ ¥@ ¥@­@*­@ ­@­@Iñ!©]Np‘ ‘ ‘ ª‘‘% % JG`mðµuðuð©yñuðÅ@Å@¤ØaÑ@áAU U šU U ¦ž@ñJ-P-P5Q-P-P™1QÞ æ¹` ª ú0cp=ê?èß= §@èzÀ�Âïu?¢0UPÿD75P008CýUK2NIC-4ÿ-BIT CMOÿS MCU-OTÿP_JIIH=2ÿ0?dÿö(·F10ã84�"ã"ÉCLOÿCK GENERÿATOR/DRIÿVER_FEEDÝ;©')\7‹{‘¤p—m-â Ï59C1½L2-1y0al8259Ñ__KJJI}fçÝ5‹ff‘…)ûÂ->ºC95ç$·0¬ñ#e45 �&\ 6kˆ='=78ïC9ï ^0*þ$@ DISC Oþ@ R TMP82?C54P2 $A$@Ÿa?>>=}H#f»f6‹ö(‘\ƒ�ú=¤=CF_7TÿIMER/COUÂ�![Ü=ì=gMwM05µ1P71[=51Ñ7av=†=ÌMÜMìAçFþMÓ=w0?lƒáz–‹w¸�‘ázdÊM~Ò-70116HMÜ/B¸U8C8>Db@¹?G@D'ìQˆ)RfŽ‘®G›]«]»RCm8$f-8a16gÿPU 8MHZ[jÝ[I$¢‹š™”QÓš]=ѳW02è�"�a9c0gADC¹Q¤&†SìQ `byN‘š™Ulm>ÃFÿ43256BCZ85Läh-ï`aé`ýKkSRAMbQïPPO@±G¸¥Ž`f33_Çm×mçe7Ù0ñi[p2Y}Ma¯POONrgƒ=» ï‹33Ç‘)“\Ÿ3}>ÈKv~ 0Ç0C7½¾v9cMX÷1 Dp-70N¿S]LKKJíR×ôóKûö›ÿCÒ8Jžð9JE8à8àU õà õàõàõàSI†ð1€1€1€5HàHàN­àUU U U UU¥U ñ ð ð* ð ð ð dá)ñ*ðlà€à=ñ=ñŠQðQðQñiñiðTµ�à�à�à ˆáIcÍàÁ€ÉuðuðU uð uð}ð}ðU }ð}ðÕÕM ÕyÒù€ù€ÕÅðÅðÅð ÃT²ð� ÕðUVN66AFD4”}1ÔANSIS0ý,mFET TOÿ-220ZBAA«@9©!]ƒ‹PÌî¶ š™™õ¸u@úS!¸^<ˆ<]HFVN4) L˜”Ý2C�ETS]”3ÿîf“×£ ¶ )\o®õ@{”.< û׉�N2410�MVN1ø‘¦“ßá7��(�8�H�X�h�x†���Œ´�Ä…Ü�ì�•ëáëíûí ýý+ý;ýKý[ýký{ý‹ý›ý«ý»ýËýÛý<ëò�Àñ=×.õ°3 %­°ý°&�°ÀUÀÀÀÀUÀÀ À ÀU À !Á(6*y°j9À9À 9À+y°ªIÀIÀIÀIÀ eOnQ­°aÀ\ÒÒiÀiÁ©© w2nˆ­°�À¸y°‰ÀÕ‰À‰À‰ÀÅT�°�À�À�À�ÀU�À�À �À �ÀU �À �À �À�ÀÕ�À�À�ÀƤÝÀÝÀYÐðÿñÉêÜãïÿñÈÜãî8šïðïðЯÔ%%*%% % "Ñõ°© ù±õ° 2ѱ° R­à7nJÐ JÐ JÐUü L°L°L°UL° h° h°�¥���©J©© yÁ© –Ѧ”à‰™°¢Ð¢Ð¦¢ÐŠÚ°á°­°Ñ¬±°¾ÐÒÍàÓÔJÍàá‘àâÖÐÖÐùÖÐ*àí#w¿ô0à™ê÷ÐD•°ÿÐ ¦ÿÐG™°O  iÀ •e6xÒ…ààšàà€�°¢Ði“nÎÐ×­°©à±°Gà GàGàªGàGàGàÒЊÒÐÒÐcá-Óàì÷"w› ¯É „à „à¾„à  ”à¥"n2­° à  à6y°¬àkRÀ´áÀ°5À°}À}üÐÈàMÈà‚y°�À�À3�ÖÀàà ±­°èàÓ´ò€ðàÝÀ䪲åä¢ëÿñÇáóê7ô â"©ñ'ÐóÐ÷Ð  àª]À]À]À]À¦]ÀPAðAðªAðAðAðAðªAðAð Að Að ªAð Að AðAðªAðAðaÀaÀRaÀeÁaÀaÀaÀUaÀaÀ aÀ°U ÍÍÍÍ•ÕÕÁñ °ij•°Ñð Ñð p©­­°ÝÀ ÝÀ×VôsDûvœW?   U    • ô ô ô¡7 ª7 7 G G ªG G G G ªG  G  G  G  TEO  _ °°U°° ° ­ñT¡P° P°P°P°UP°h°l°l°Ul°l°« « U« « « « • «  «  ¹|°*|° |°|°œ±Û¡ªù€ù€ù€İšÔ°!�Ö×Ð Ò))a’aƒš™µm`b=‘Aç‘£…K30Ý“ CÏ"XK22P0POu AbVe1NVpW]–Ug’ßìQ˜? Bd£¨Æ95Ž‘J0Ÿ402MF°¦�H«YRI’K]•ÿ~`»åP‡Z$�“;“ÁÊ›«…2³A$¾Î‰sH»áQ q=W Ã�õØAô p$p:¹þu"WD37C65/PL00Z$Ca!rÈ)@ pš&]V²cš™ñ�1 ˜P7 R¸OBø>-FYZ 3C93Bøa$Ä&lrSCSI BUSz(bçv�-Ÿ-Œ¯-¿'JMË'51Ù#M¥AÝ,Lñ' Q”pÓî‡À�Í̬é?= CvU#10Gþ?C OBSOLEûTE-D64672ý6>D2N.\[Z×ZY6Ï`g’®ÝLJ33³�\��¢|233“„=U#0û8Gÿ12NBRIÿDGE RECT÷IFI1@1.5Aÿ 800VV<;;;:È8áz´‡r�î�{Ž|2q=Š”ê=ú46@6MF6Ü M�…‹�5^�z|2u“XJMú44’@4fMF4€Mi�f»f†‡ k�˜;nR|2×£0ªMú4%2@2ÆMF2àMi�w\�‚‡‘í\�w+G|2‹l' ] ú41@1&]FÀpBXú~b/]î�‘í<|2Ñ" j]ú405@áP‡]Eÿ50VW>==Ã… å4U4444÷æ$ …+ ¯=UU¯?aaªaaaaªaa a a ªa a aaêaaa }© 7 ±U±±±±¥½;ÂÍÍ©<’€ÙÙÙ¬Ùe€ÙÙúÙ á…ªUU U U úU Âÿ7" ¢*M*3š66M6=šFFãd�à±.(éñ=__§boošoošƒjƒƒƒbª———— ™2†«‘ ³ÿΚ¿¿µúË ªË Ë Ë ËªËËËÓ¶äØó ó.©û'« «J>4¢  Õ  Õ   “÷ 4  _v@ @ å@ @ ."ª    T0! } � õ� � ÇÕ‘ ‘ ‘ ÈW Ù Ù ÙU ÙÙÙ[Þª½ ½ ½ ½ ½ ½ ·ÞÙ  —ÿ * 2*Rî! žö 66Õ666Ô¨ Ç¿ ¿ ¿¯!&0&0 ª&0 &0 &0 &0 š&0&0C¶û„Wþ6 6 6¥ 6 c1F F ª4 4 4 J0ÚJ0J0 bÞ"ýU†€YY]ÿ>òª¨0¨0ÙÙ©=’€¼0¼0¼0ª¼0¼0¼0¼0©³ºÜ0Ü0Ü0é´’€ì0ì0u+@ @ P!P"Ÿ„ü ;m@é< Ð@@í+%@%@PO _ o  � Ÿ ¯ ¿ Ï ß ï ÿ /?O_o�Ÿ¯¿Ïßïÿ--/-?-O-_-o--�-Ÿ-¯-¿-Ï-ß-ï-ÿ-==/=?=O=_=o==�=Ÿ=¯=¿=Ï=xß=ï=ÿ9¨ôõ_ŒdÒÐÿ‡þ¹hÿã~ŒÿËBý¬ÿ'ÂEÐ÷;. $ŠTŽp1€1€1€1€U 1€ 1€÷`÷`}÷`  PU P P P PU  P  P  P  P¥  P Q P Pê P P PÏ«�€�€�€ª�€�€�€�€¾¥�… LšLLç&@Ò€ªÒ€Ò€Ò€Ò€J‘qúA ò€ò€M" Óg@Y€ Y€U Y€ Y€ Y€Y€µY€Y€QÃ@rô6`*�*‘… UPPPPUPP P S‘ªò€ ò€ ò€ ò€Rg‘2�o�o�o�õo�o�3U‡�‡�‡�¢`M¢`\¿@Ÿ�Ÿ�õŸ�§‘… U 1€ 1€ L LU LLLL©Ä‘�pî€ò€Rò€"¡" " " U÷`*�*�*�Å¡�#Р. £·*@LLLªLLLL RL Ì‘%@�p�pM�pQPO‘Gk@ª]  ì� ÷` � ª½p &� *� *� ª*� *� *�*�ê*�*�2“¦î€ 4Z€r`r`*r`r`r` ¶¡½p© ¡%` %` %` ª%` %`%`   z  £®=R�p¢¡î€ ¢¡g„�©O¿@ ° °¾`–¾`á¿@âÃ@#° �Ž+°. pDTÓ@8°8°8° 8°U 8° 8° 8° 8°U8°8°\±N£@ªh°h°h°#°ê#°#°#°U›ˆ°VÐ�°ª�°�°�°+° ª+° +° +° +°¦£3 C Ì‘ 4ƒ@á°á° ‘à/p /p /p lq/q/pU/p/p/p/pU8°8°8°8° `±°°4MDMTMdMtEÀ�Ð�à�ð��� �0�@�P�`�p�€��� �°�À�Ð�à�ð�­­ ­0­@­P­`­p­€­�­ ­°­À­Ð­à­ð­½½ ½0½@½P½`½p½€½�½ ½°½À½Ð½à½ð½Íͼ Í0Á‚ôs ¿þÒÓ€Ñþ€cú}0ÿßzÍ„ÿGþ ¼ÿkYÿÓŠYDóï?ð4ÀB´ƒ@::R©ÐŸ…  ³ÀO j: ::CGÀj`;Ð;Ð>£@\Dð4ÀOOMOacÀŒ Œ©ŽA;Ð;Ð;Ð R;Ð /Ñ!`!`ssqÞpîÃFUŽ@Ž@Ž@©ð¥©ðÙ¼QàT¼ÑÝpÝpÝpëãÏþP`LgÀ’`Ž@;ÐE;Ð )á ¨Qw`T!aÇàçàçàëã—*p©ˆ:: : 2: Wc_QPU•‹˜P RŽ@ ’AŽ@;Ð"ª!` !` !` !` J!`!`»v`sUsßàß༼¼å¼4À§ccc ªw wwwjww ¨Ð�KÀª p p½p½pªss¼¼ ª¼ ¼ ¼ ¼ žófd`a ¦àPÏ@m m ªm m m m ªm m m m Rm •!ÝpÝpÝpž4ÀQ’p² ª² ² ² ² ¦² ¶ŠðÎ Î RÙÐÙÑÙÐÙÐÙÐéâ!ÏáúãB©IPÿ ÿ ÿ Jÿ ÿ I�Î �q ó&@PËa´Ñ !Y€UY€Y€Ž@�€¥�€ 1á¢` ¢` ª¢` ¢` ¢`¢`r¢`®akÓÿ Uÿ ÿ ÿ ÿ ©|1ŽÀŽÀŽÀ JŽÀ%@#1#0#0U#0#0 �€ K1ª�€ �€ �€�€j�€�€½ƒ &0‡z Š š ª º Ê Ú ê ú *:JZjzŠšªºÊÚêú --*-:-J-Z-j-z-Š-š-ª-º-Ê-Ú-ê-ú- ==*=:=J=Z=j=z=Š=š=ª=º=Ê=Ú=6�F�V�f�v�†�–�¦�¶‡õ1à1à|þôó $ôÔúÒÏRÍÿtç¶‘ÿtÿºYÿ$Ëråÿ´�rýÿ¸WF’ž3#+c`<€ ý\c`…"Rnp*yÐQ€ Q€ Q€UQ€Q€Q€D€S ¯uÐq€ q€q€ÓÒŠð�€�€ÓL�À�€ vŸà•€ •€å •€ •€4À!©yÐD€ D€ D€ÒD€y��€�€ë¤êð΀¥�•€•€ê•€•€¥ƒ *M€M€Q€a�D€5D€D€—@�U � � � �U����}�¯;�¥?‘œdÐG�G�ÒG�K‘•€¥ƒSY‡@œPœPÇàuÌÐÐÓ˜PU˜Pg¢@QàåÌÐÐÑÐÓ ¬F Щð©ðoÂßàs–�ªÂ�Â�Â�Ê‘O…"SO OMO 4oÀë� ë�U ë�ë�ë�ë@I�Që@ A¢@¢@U¢@Â�Â�Â�5Â�Â�t–�3 U3 3 3 3 U3 3 3 3 ue@ÐÓü1JOO ç‘O p¡ªë@ ë@g Pª0@3 3  3  ª3  3  3  3 ê3 3 ;¡…« OOO© GÀÍ Í Í ©Q‡@FFF ë@PŒ¡IAŽAP©Œ¡Â�Â�Â�ªÂ� Â� Â� Â�ªe@ e@ e@ e@ je@ e@c9 Q_FEë@|QªCPÇàÇàÇà ªÇà Çà Çà Çà RÇà®AÇàÇàÇàUÇàáPáPáPIž±e@ae@c€L \ l ð=MA6� *;…D€D€ ‘D€™ D€C�ÃÀG�ìTP¥ƒJ�Z�j�z�Š�š�ª�º�Ê�Ú�ê�ú� ��*�:�J�Z�j�z�Š�š�ª�º�Ê�Ú�ê�ú� ­­*­:­J­Z­j­z­Š­š­ª­º­Ê­Ú­ê­ú­ ½½*½:½J½Z½j½z½Š½Àš½ª½º½Ê½Ú½ê±ûÎôs@ëÕ€Ó€›*ÿTƒßµ@…¿ÿN%x§ÿBÙdCÝÀ¿ð,ÙðÑTŽp== = ={škb+S @ZZZÓ…Pвpªjjj=ª====ÔM—À—À—ÀwWžžžUžžžžµžžxì²*«jjjªjjjjªj j j j *j jûÝj@žU ž ž ž žU žžžžý¦…)¦Œ™P8 ÂpÓ=Ъ=Ð=Ð=Ð=Ъ=Ð =Ð =Ð =Ð ª=Ð =Ð=Ð=Ðj=Ð=Ð=а>ÐÆˆ›™ð�¿ð(3S ¹xÀ���5��“ÕеU µ µ µ µU µµµµMµ”˜ÐááUááááU á á á áU áááá5áᕘÐ% U% % % % U% % % % U % % % % Õ% % -!…O'*®ŒÀsÀsÀUsÀsÀsÀsÀUsÀsÀsÀ sÀ© wÁÀ ˜P ˜P j˜P˜P˜P 4@ª¶ ¶ ¶ ¶ š¶ ¶ f@Ò ªÒ Ò Ò ˆªˆˆˆˆªˆˆ ˆ ˆ êˆ ˆ æ!…&§ ˜bp00 R0 ž!À ÀÀyÀ¿ð%øÉ@ªD0 D0 D0�©º�ÀX0X0X0T`1‡À‡À‡À‡ÀSI…P|0|0|0ÓJÐàŒ0Œ0�Rkàg“@œ0 BÀ BÀ}µ…$�p¥³a P½0½0 ©Ø4PÉ0É0É0jÉ0É0É0Ù>Ъå0å0å0å0ªå0BÀBÀµ µµ¬3Í'ÆT d t „ ” ¤ ´ Ä Ô ä ô $4DTdt„”¤´ÄÔäô--$-4-D-T-d-t-„-”-¤-´-Ä-Ô-ä-ô-==$=4=D=T=d=t=„=”=¤=´=Ä=Ô=xä=ô=MìôóÐ×ýÔ£bÿÀ“Zéÿ¤oN%ÿÃŽEÿ¯ŽeÿDÎ…sLõñ¿ð; íÐUíÐ6@6@ 6@Õ 6@6@6@T4Uðb€b€tJÐn�?…:2øð{€Sô�Àƒ€ƒ€ƒ€µƒ€ƒ€]ðT‹àíÐb€-Ñk‰ðÉuéÀ³€³€¿ð9 3 KîÐÄ€køàÌ€Ù̀``S–˜Ðä€ä€ì�ÿ…8¢}ù€ý�-ƒ€ õQp‘kà�M�3�ðQIÐéMÑä€ðƒ7Zƒ€ƒ€ êÐAîÐêQä€ ðƒ6 ¥:)pµÀÄ€ Ä€ªÄ€ä€ä€ ä€ nðƒ5 _�»ÉÀJˆ��ÝqBÀ ðƒO4 ™%p¥� ¥�U ¥� ¥�¥�xpUxpBÀBÀ„qœBÀ¿ð3 B‘B�©¿$ðâ�â�â�ªâ� â�â�â�©À˜Ð   ú  ¡…2™kà6@lšp' ª' ' ' ' *' ' 3¡Òg@K UK K K  K U K  K  K  _¡ªâ� â� â� â�òâ�â�¿ð1 LRêÐ�}ð”  ”  ” U”  ÐÀ ÐÀ ÐÀU ÐÀ ÐÀÐÀÐÀ®¿ð0 ĀĀªÄ€� � � Š�” ¤¡” ¿ð/£‘M==ª=K K K šK lP†{@°ª°°°&±¯….lPlPTpQlPlPlPlPUlPlP lP lPU lP lP c±… Àªs° s°s°s°Ês°s°s°¿ð-U = = =±)¾2àâ�â�‡¡â‘ªs°s°s°s° šs° �³,8 H QQ;A�Q�a‰n€m�}�����­�½�Í�Ý�í�ý� ��-�=�M�]�m�}�����­�½�Í�Ý�í�ý� ­­-­=­M­]­m­}­�­�­­­½­Í­Ý­í­ý­ ½½-½=½M½]½m½}½�½�½­½½½Hͽݽí¸QPQUQhð hð hðU hð hð hðhðÕhðhðhð‹†ôsTõr8��©Ô¼@   ª ª    š  ÕW@AªAAAAªAAA A ªA A A AªAAAA¦AÖW@��ª����ª�� � � ª� � ��ª����©×W@ÙÙÙªÙÙÙÙªÙ Ù Ù Ù ªÙ ÙÙÙjÙÙÙØW@ª%%%%ª%%%% ª% % -øS@šcÀ™ðvðb\b0@B~`~`E~` Žawb bU b b b bUbbbbUbb¢@¢@õ¢@¢CAöT[`ÌÌÌÐ¥Ð^�6@6@ ©ušàð ð ð¨fÅñáÀ áÀ õ³@«2À2À2Àª2À2À 2À 2À ª2À 2À 2À2Àª2À2À2ÀðRðüðððUððe!wŠÐªu u u u Êu u u 0@?©ÐÐÐcÀ©UÖÀª ª ª ªkÀkÀkÀŒÀ *ŒÀ ŒÀ Ê!±ã`Ö ž0@> `Àã jã ã ã ÖÀTì6@ 6@ 6@~`U~`kÀkÀkÀuu ‘#= hpU hp hphphp©hqb€oÀoÀ ªoÀ oÀ oÀ oÀ ToÁu u u u SxÚpt0t0õ³W<Ì Ì ÌÕ Ì Ì Ì¤;@¡13äÐcÀcÀ’cÀÁÁ5dÀÁ0¦Á0 Rƒ`Í0Í0ªÍ0Í0Í0Í0*6@oÀoÀoÀø½ÍÍ(Í8ÍHÍXÍhÍx͈ͨ͘͸ÍÈÍØÍèÍøÍÝÝ(Ý8ÝHÝXÝhÝx݈ݘݨݸÝÈÝØÝèÝøÝíí(í8íHíXíhíxíˆí˜í¨í¸íÈíØíèíøíýý(ý8ýHýXýhýxý€ˆý˜ý¨ý¸ýÈýØýèõw(ôóXïpõÚÕ‹.ÿåœÎÿu@æÿ¥p;ÿÙÈ‹ÿÑ G;"ÿÞ¥`T!ÿ#ê‘XyVÂ@5@[ tðPeÞ2¤§PV€í§Pš^€^€îÏPj€*j€j€j€j€5@ZN€Su‚PV€V€V€U V€ V€ V€ V€© ›�^€ ^€ ^€ ª^€ ^€^€^€ê^€^€~ƒY _xfŽ0¶× jè€ è€ è€¢ÃP*ø€ø€ø€ø�j€�~ƒX D�ePyGMP‡�Ý)�ÕR€R€R€ù*õ€úÛ"WØ5@OV ë*=�=�5=�=�é+@j�Uj�j�j�j�Uj�j� j� j�»ê3BU ‡€iÙŸ�Ÿ�Ú&ª«�«�«�«�«�«� öí€Ç�5@WT % %%U%%%%UŸ�Ÿ�Ÿ�Ÿ�UŸ�Ÿ�Ÿ�Ÿ�UŸ� Ÿ� Ÿ� Ÿ�Õ Ÿ� Ÿ�ø‘…õSÖM“RŽTèP= = = = U= = = = U =  =  = = 5= = �èPy S ôí€j�j�n‘¿…Q säPv|ìPš � = ¥ = ¦¡j�j�ºj��£P�€ª�€š   J  סè€è€Uè€è€è€è€õè€ ç¡…OSºzP ° ° °S Óªp° ° °U °°°°U°°Ç�Ç�©Ë‘Ç�Ç�Ç� ©ê4`\° \° \°&\°ñÏPp°p°5@WN ` ` `U ` `°°U°°°°Õ°°�±…OK Wš0¾°¾°n5@J ä€ÒMP*ßPßP ×±`@ã°Õððü…ÏI ŽQ`ü° fT« ÀÀÀÀ¥À‘!l0l0®‘#H ª ª Rü° 9Á�P �PEÁªo@o@å@å@ \å@5@G ;@_@•_@_@rÁc@ TXQ�P �P�P�P]‘SFã°›ÁªÁ0Á0 Á0 Á0 šÁ0™pD'@»À¦»Àa`@Ñ@ Ñ@ <Ñ@5@E îEPÜÀ¥ÜÀ«ÁÀ À ªÀ �P �PjD« ;@ ©0 ðªððbbôj·ÃC 5Tá€6Ð6Ð6Ð6С0c@Yiy‰™©¹ÉÙéù --)-9-I-Y-i-y-‰-™-©-¹-É-Ù-é-ù- ==)=9=I=Y=i=y=‰=À™=©=¹=É=Ù=é<ËöôsJõröqªWV‡€ ‡€ ‡€S`«�«� «�© Ñ«� «� «�ª«�«�«�«�¦«�Û&IIªIIIIªII I I ªI I IIªIIII©Ü&•••ª••••ª• • • • ª• •••ª•••)�ª)�)�)�)�ª)�)�)�)� ª)� )� )� )� ª)�)�)�)�"á×`)E�  ØP‘P�`�p�€��� �°�À�Ð�à�ð�­­ ­0­@­P­`­p­€­�­ ­°­À­Ð­à­ð­½½ ½0½@½P½`½p½€½�½ ½°½À½Ð½à½ð½ÍÍ Í0Í@ÍPÍ`ÍpÍ€Í�͠ͰÍÀÍÐÍàÍðÍÝÝ Ý0Ý@ÝPÝ`ÝpÝ€Ý�ݠݰÝÀÝÐÝàÝðÝíí í0í@íPí`ípí€í�í í°íÀíÐíàíðíýý ý0ý@ýPý`ýpý€ý�ý ýð°ýÀýÐýàýêþôó Œ\ÛúM�ÚM�"Ùÿ´{b1ÿ¯îÕÿŒ æ­ÿ”c:áÿ ¾IïöÁePu •z�ÚÌ@§¤€G€ šG€ G€¨u0W€ªW€W€ W€ W€ ªW€W€W€W€šW€W€©ù€‡€ª‡€‡€‡€‡€ª‡€‡€‡€ ��_…tI÷óúðUúðúðúð¸�©äØ Ð€ЀЀJЀà�µø è€è€y è€ePsQ»`ùR¿`� ´< �ePr/PF �U����U� � � �U � ���U��ý€ý€Uý€ý€ý€ý€¥ý€ý�ý€ ý€ ªý€ ý€ ý€ ý€ªý€ý€ý€ý€ª����ª����ª � � � � ž “qW;P×�ªÐ€ЀЀ �ª � �è€è€Ôô�è€è€è€ÄLð� Åg  õ ¡…p U è€ è€ è€ è€¥è€ ¡è€耞3l qÂpY  ªY Y Y Y ¦Y r9pu u þ}¡…kƒ+Š  y ã‘ËOj g p£ £ U£ £ £ £ Sh¹€¿ ¿ ¿ ë ¥@€ãJi ™%ŠpÜ ‰“`ä ªä Ó p0x3h§ˆ‹ °– š– Ó ¢x€°š°° îi0%°j%°%°%°ïˆ€ò9°9°ePg�TJ J°J°J°J°UJ° J° J° J°U J° J°J°Z±ªÓ  Ó  Ó  Ó  Ó ±Ó †±%°ePOfâ¦0§°§°U§°§° §° §°U §° §° §°§°U§°§°§°§°EÓ ð¡Ó¡Ó Ó ÕÓ Ó Ó £Tˆ€ÀÀÀÀÕ À À Á…×eŠ Š T@0À››J°¥§°³±’ ’ ª’ ’ ’ ’ª’’’’ ëmptÀ®�¾�Î�Þ�î�þ���.�>�N�^�n�~�Ž�ž�®�¾�Î�Þ�î�þ�­­.­>­N­^­n­~­Ž­ž­®­¾­Î­Þ­î­þ­½½.½>½N½^½n½~½Ž½ž½®½¾½Î½Þ½ðî½þ½ÍÁÂ#þôs 2Ùê4 ×4 � €Ñ|ÿºMÐÿ¯2™Cÿí™Eñÿ�IõùÿïâÕÈÿ»®¡”ÿ‡zm`ÿSF9,ÿøÿëÞÑÄÿ·ª��ÿƒvi\ÿOB5(ÿôûçºÍÀ³ÿ¦™ŒÿreXKÿ>1$ÿ ýðãÿÖɼ¯ÿ¢•ˆ{ÿnaTGÿ:fYýÂÐp@2=÷ WeÇÍLÿ¥BÍÌ”BýTÇ\�â?ÿìQ¸?d¤p÷}?èÐ )\O?߈VMú�Âßu?[õpZTïX9512NTÿRANSISTOÿRJ@??>82w0ÿå×£ðî7R¸¾ô¶óù869k#3Ý38…ëñîÃõÝÈô×£�ú…ëñqV§]X857¸¿w‡HáÚî×㣰ô û®GNV7‰A°À3#ÜË3= ×îÍ̬ð-¼j -3P“£U-i4p4vº†VÇ33³îá»z”ô+‡Vúª»ñ2VÙ¬-TŸX792A4Ç)LßBAA@9Ù'áz´î…ë‘ôO!ûwÃõ(V®G!=J1030=,202=B=R= 4892¿0s=Ѓ3åA!?!Œô“aDú©1§= 558CÇ""Í2ÍBÍRÍbÍrÇtÀUtÀtÀtÀtÀ5tÀtÀ  L€˜@’ePdp€á@á®Ð©@ª©@©@uðDAŸ…c™“ÀÆ@ªÆ@Æ@Æ@Æ@–�à¯øp Pæ@ ©ÃÂpî@ î@î@ªî@î@î@©@ª©@ ©@ ©@ ©@ ¦©@ë¶Ð"P"P"P"Pì²ð6PePOb6@CPCPÕ CP CP CP eÔ p[P[P[P˜´õpÆ@Æ@¤õpÝzP{P RË`tÇ`‹P ‹P ‹PU‹P©@©@©@ž¾Pam«`Cà_½ßÎðà²ðªÀPÀPÀPÀPŠ©@©@§QÔQl@ªl@l@l@l@úl@èQ…`ªÀPÀPÀPÀP ªÀP ÀP ÀP ÀP ªÀPÀPÀPÀP¢ÀP%bà=`=`š=`=`áæÐQ`ªQ`Q`Q`Q`~Ya…_ w pªr`r`r`r`fr`x‡ÀŠ`W·à*’`’`’aX¦@—P©›Q=`=`=`<¶aic^š‹ÀÇ`UÇ`Ç`Ç`Ç`UÇ`Ç` Ç` Ç`U Ç`Ç`Ç`Ç`5Ç`Ç`›Ë@<@;õÃÂ]ÚAÆ@UÆ@ïa«và„›`¦CàÞ«À4p4pª4p4p 4p 4p ª4p 4p 4p4pª4p4p4p8qê” €pppp pp9€\k (p (p¬@€ª�p¼P¼P¼Pª¼P¼P¼P¼Pª¼P¼P ¼P ¼P ª¼P ¼P ¼P¼Pª¼P¼P¼P¼PÊ�q¤”€í €épûPôó ÝóÜ[âÿ½”òÿ…,ï¦ÿ�HnÿI «~ÿ¸{2ÿ Ô›rßQÓÃ|ÀƒSdÇ@G€G€}áÙÆŽpW€vPâ‚ Ó&V`h€h€ ôÔàt€ t€t€§xyp„€|À� T‡Àš‘€[P “ç@�€–�€¯ÿ@ÚP­€ )ªæðµ€ µ€µ€|ÀÏ€ Võð©ÐŠ,Ë@Ò€¡àú]@Þ€UÞ€Þ€µ€µ€u µ€ ÁƒÊ€MÊ€OEð � ‘Êt€t€t€|À~M ‚À cç@,�,�U ­€ ­€Þ€Þ€SûuÀH�H�H�UH�H�H�H�}P‘…}­€U­€­€­€ ­€% }‘#QÐ`àê�Þ€UÞ€ Þ€ Þ€ Þ€®|À|Ž`Ž`šŽ`Ž`y‡À¾�ª¾�¾�¾�¾�¦¾�Ç×@Ú� Ú�™È×@æ�e»Àî� Êî� î� î�|À{U¾�¾� ¾� ¾�U ¾� ¾� ¾�¾�U¾�¾�¾�¾�Sz‡À7 7 7 S‰z�G  G  G • G î�þ‘î�zî�þ“z &‹Àj­€­€­€ ‘YÐ*„ „ „ „¡¢Á¿…y£Ç@°TË@¥ ¥ ¥ ¥ M ¥ ØDའ½ U½ ½  ­€­€¥}‘1ðÝ žÀšžÀ žÀ dàñ ªñ ñ ñ ñ zî�þ“x LÇ@•]×@të@õið"° *"°"°"°"°|ÀWw‚À©Ð©ÐM©Ð Ìë@O° O°»ÛPâv‚Àª‚À‚À°°J° žÀ í¡žÀ å¡*"° "° �±©âð˜°U ˜° ˜°˜°˜°U˜°˜°˜°µ€¥µ€Á�µ€µ€ºµ€Áƒu( 7 T�‘„€ „€ „€ „€u„€„€§‹�›�«�»�Ë�Û�ë�û� ��+�;�K�[�k�{�‹�›�«�»�Ë�Û�ë�û� ­­+­;­K­[­k­{­‹­›­«­»­Ë­Û­ë­û­ ½½+½;½K½[½k½{½‹½€›½«½»½Ë½Û½ë½û±5„€„€¨Òð}ðU}ð}ð}ð}ðU}ð}ð}ð }ðU }ð }ð }ð }ðU}ð}ð}ð}ðU}ð ð ð ðU ð ð ð ðÕ ð ð ÕñÚ]ôs EŸÝ€ýÛ€×®•ÿxG.Ý8ÇÆE‚ÿ潤‡ÿV=ìGÿÖÕTL»®"@� ÜtP¯…ŽAAªAA A A JA VˆPj jU j jj~U~~~~©:Q6P6P6Pª6P6P6P ª½´gж ¶—‰‚�S?AAAAVOàÛÛÛUÛÛÛÛUÛ Û Û ÛU Û ÛÛÛ•Ûÿ# ª# ###j###|PªGGGG ©±[ [ [ ª[[[[š[[²|Pƒªƒƒƒƒ*ƒƒ“ÔŸ`§M§Ëû@³³å³³<Œ• @Ô ªÔÔÔÔšÔÔ Óô©N@ƒÀƒÀƒÀZƒÀƒÀ íi@–%ðª  ÂÂô‹( Lè¢` �E E U E E E E UE E [[U[[[[¥[i!§§R§€Và• • • 5  Öup­ U ­ ­ ­ ­ U ­ ­ ­ ­ í­ ׉‚Š©6àâ â â ªâ â â â jâ â â !ÌЪ0000Æ0§À&0<‡ÕƒÀƒÀƒÀPx9@?0<† a\PªL0S€ S€ S€T·ÑQðQð Qð Qð»Œ`‚… ¿à¦â@-ž …0 …0 Ü…0<„¿à v”¸0NÐ …0l�B€ F�V‰h€ª3e�u�…� ÍÍ)ÉD T d t „ ” ¤ ´ Ä Ô ä ô $4DTdt„”¤´ÄÔäô--$-4-D-T-d-t-„-”-¤-´-Ä-Ô-ä-ô-==$=4=D=T=d=t=„=”=¤=´=Ä=Ô=ä=ô8ï>ôó N¯"áÜ—ÿV°÷ÿ’!è‹ûNÜ›bÿõ<×fÿ-ГF{Õ;™ o„Ъ<€ <€ <€ <€TD�NÐ NÐNÐNЕNÐX�ó±Àl€l€l€ôæÀ|€</˜1?À2¬Ð�€M�€ 6SÐÁP ÁQ*ÁP ÁQçîÀí^à±€Û AЃÆq—•AÈAݬÐ΀¦Î€òSÐÚ€ Ú€ jÚ€ Ú€ Ú€6Õ@fò€’Ý@ú€˜é@*åP íP±€±�¹�\`<– ÁPÁPS‘mP+�p±€¥±�~kÀ?� ³@ xaÊaÊc• :ˆÐª\� \�ÁPÁPªÁPÁPÁPÁP©œÖP€�€�€� ©þå@ƒÀƒÀ‡@ª‡@±€±€±€T‘³@³@³@³@{˜ý2”å@ªÍ�Í� Í� €�R€� ‘íPíPíPU ‡@‡@‡@ý‘o¹§@KµÀª   ½€ ½€ ½€ ê½€½€½ƒ“-©‡Õ@2 2 2 ©›aPB B B ªB €�€�€�R€�á‘€�€�€�¥€� Œ‘€� €� R€�Va6`6`6`U6`6`6`6`U6` –¡žÝ@¹á@ª¶ |€|€ ¾ ºΠ&  L½ÀÚ Ú <Ï’maPë  „Tñ@ó  ó  ó  ó Mó …ÖP °2 Í �¯mP°°TuP#°¶ ˜PíPUíPíPíP7±êΠ½€½ƒ‘ f<€ DÖPë —é@R/±¨ÌÐl°|€ ‡@¥ ‡@ x±?�Êc�k½P½P2ÖPJ™°ë ï¡ë  롪+�+�pp>pxŰ<Õ@AA*TÑ@Þ°Þ°Þ°Þ°UÞ°Þ°Þ° Þ°•ú€ú€þ�ú€©•Ù@¶  p p Rp ¹±³@½€½ƒ8Cƒ�“�£�³�Ã�Ó�ã�ó���#�3�C�S�c�s�ƒ�“�£�³�Ã�Ó�ã�ó�­­#­3­C­S­c­s­ƒ­“­£­³­Ã­Ó­ã­ó­½½#½3½C½S½c½s½ƒ½“½£½³½Ã½Ó½ã½àó½ÍÍ#Í/À– bôsHõrõq�Vì`ª ª ©Wp---ª----ª- - - - ª- ---ª----©Xp}}}ª}}}}ª} } } } ª} }}}Ò¹ÌtÐÁÁÍT`ÍÍÍÍUÍÍÍÍU Í Í Í ÍU ÍÍÍÍ¥ ÐtÐyÑ`!�:QÖPª++++©RuP???š?? lñ@W ªW W WWªWWWWRkõ@ƒƒƒSöyðo@ƒAzyÀªŸŸŸŸªŸŸ Ÿ Ÿ ªŸ Ÿ ŸŸªŸŸŸŸ¾Ÿ{ç¦ç „ÝÐóójóóó…è< 5@œÕ@ U  ÞàÞà•ÞàÞàâáÞàªÞà Þà Þà Þà ªÞà ÞàÞàÞà*ÞàÍPÉ ªÉ É ÉɪÉÉÉÉI?–`ññ’Ð’Ѫ’Ð’Ð’Ð’Ð*’Ð’Ð ’Ð C S¼ðÁðÍÝÝ Ý0Ý@ÝPÝ`ÝpÝ€Ý�ݠݰÝÀÝÐÝàÝðÝíí í0í@íPí`ípí€í�í í°íÀíÐíàíðíýý ý0ý@ýPý`ýpý€ý�ý ý°ý@ÀýÐýàýJÍZÍjÊ k0U k0 k0k0k0¥k0pÁm` m` Zm` m`óUpup™!yp¬@‚áP´@ª´@´@äPäPxäQíqäS�:QUpªÝ@Ý@Ý@Ý@©Rß`ñ@ñ@ñ@ªñ@ñ@ J0 J0 ªJ0 J0 J0J0TN1J0J0J0Q¯õ5P5P–5Pöyp©PIP©zåPQPQPQPªQPQPQP QP ªQP QP QP QPªQPQPQPQPšQPQP{@™Pª™P áÀáÀáÀjáÀáÀáÀ…@œ½PçPœtÁk0ªk0k0Þ`Þ`JÞ`Þ`âaÞ`Þ`U Þ` Þ` Þ` Þ`U Þ`Þ`Þ`Þ`õîQ2ypKÚ` ` †žb›$S ú* 3` 3` 3`Í 3` �@G` Tß`O`Z€Z€‡0¥ ‡0 ‡1‡0 ‡0 ª‡0‡0‡0‡0j‡0‡0‡0(p*�`�`“a[0Ÿ`5Ÿ`Ÿ`'JP¯`Õ ¯` ¯` *cšÓÒpÈ` È` `TÆpa a a a Ua a a a ¥ a Øa�`�`ª�`�`�` �` ª�` �` �` �`ª�`�`�`�`z$qE[2™+ o* ªEp Ep Ep EpRMqÇ6 ]p]p]p•]paqóx`upjupupupôâpª‰p‰p‰p ‰p ¾‰pM¡p¥ºAÒ­p ­pª­p­p­p­pš­p­pBòÑp¦Ñp˜À0ÝpÈ@ºÈ@ÐA ôó¿Z6ßíÀÝþíÀOÒ=ÔÿçZš:ÿà†,Òÿm ¥BÿèAì™ÿ†t$ÿeVùêÿE04ÿ õàËÿ¶¨œÚÿÊrA–ÿŒŸÃÿÒ´"ÿŽ~pÿ¹_Nwÿ<-cNÿbê�sÿM0ÿ§Ç·Öÿ6Làúÿúaÿff B šÿ™BìQý[«‚…ã@ÿ×£˜@d®G¿‰@ôfZ«‚oaCdèÁ?d¯€ÿAèX9ÿt?ˆoC?žî��Âu?/0éÀ7ÿ81344T00 19wÁ |ňɠżÁäÁäÍN^n~Žž®¾ÎÞîþ--.->-N-^-n-~-Ž-ž-®-¾-Î-Þ-î-þ-==.=>=N=^=n=~=Ž=ž=®=¾=Î=Þ=î=þ=MM.M>MNM^MnM~MŽMžM®M¾MÎMÞMîMþM]].]>]N]^]n]~]Ž]ž]®]¾]Î]Þ]î]þ]mm.m>mNm^mnm~mŽmžm®m¾mÎmÞmîmþm}}.}>}N}^}n}~}Ž}ž}`®}¾}Î}Þ}îq�¯§EãÐÖ Ö òÖ  Ö >�® ù”C�k°k°áà ©§±À```ùúFÐp N ªx x xxÊxxx>�­&S çÐ���U � � � �õ ��ïUÅÅÅÅUÅ Å Å ÅU Å ÅÅÅUÅÅÅÅ_ð  U    U    _…¬ ÝÀ ÝÀ¥áÁÓ*ÐFF¥Ô�ÀS°VVª‡°‡°‡°‡°z‡°rOz_€‚‚U‚‚‚ `�5 `� `�¿µÀ¦n>�« 7�)/°¦· 2÷п ¿ R¿D+°ÅÅŪ¦¦¦¦ª¦ ¦ ¦ ¦ º¦ ªª 7� ª7�7�7�7�™(пAëÐϪFFFFª¯à¯à¯à¯à~@!…©#†3°ªY Y Y Y šY Y ˆÐu ™í} î … ª… … … … ª… … … … ª… … … … ª… … … … ¢©!÷Þ©ñ©ð ©ð <©ð>�¨0 æ. ê U ê ê ê ê Uê ê ê ê 5] ]  l'à0U 0 0 00U0000•0.1ÌöJ0ªJ0J0J0J0©Í b0b0b0úb0b0ñ¯ò~0~0ª~0~0~0~0ª~0~0 ~0 †1¯…§ WàWà©/°·0·0·0&¿i*ÐË0Þ¡”Àå”À”À>�¦$ ªWà Wà Wà Wà*WàWàWàÃ1·0 ·0 — § · Ç × ç ÷ '7GWgw‡—§·Ç×ç÷--'-7-G-W-g-w-‡-—-§-·-Ç-×-ç-÷-=='=7=G=W=g=w=‡=—=§=·=Ç=×=Pç=÷=F0p 0p 0pU 0p0p0p0p50p0p/°­pU­p­p Dp DpUDpDpDp öPU öP öP öPöP•öPöPöPo@þôó³èúG�å±ÿœƒ^Mÿ4' éÿ {ZÙÿˆkZEÿæÕÿ¤k&ÿijž…ÿ`O6)ÿ ë¢}ÿ\ÛŠmÿ\Gÿèצ�þ>�†\T[`w€w€w€w€�w€Þœ°�€q€§ Â”àœ€œ€ YóW@¨€UÒðରùŽÀ¸€† }®Á€†¨€ë]ø`·[a†Í »  ». ] +ô/°ê€w�†-]ðçÐö+à´€»│ ÿ€ ¦œ€ u��Ñ€úÑ€´€‡ ®Äƒ�€�€ ö�€ß”‚¯t]À�€I“¬�-¸pô‹ð“ðÂð>“‚…ÿ\N €�-€� hUÀzYÀ��« Š" <÷ÐqS°rR”àÄ[°¨�¨�¬�ª¨€¨€¨€Í�‰^[bþ I. g* ª˜�™P™P™PZÝÀÝÀ  P´àšõ��òS@  ª       ª    J ¨€Í�Õ€�©‘��‘_…ý ö†Pý��\X �à -ÐÁ6ÐÀ� {mpSÀxÐê«>À SÀ SÀê®ÀÐGãé i‹ƒÐ}À}À�PÆùÀÈQБÁdà~x<Ð�ÀxÐè qЪ‘À‘À‘À‘Àr‘À ºÁhãçªÁªªÀªÀªÀªÀ*ªÀªÀçÁx—ÐïÀU ŽÐ ŽÐŽÐŽÐUŽÐŽÐ¯ðÛ žxÐæ ñã0ÐUò—à�` õ ,0ª0Ð 0Ð0Ð0К0Ð0Ð;—`LÐ *LÐ LÐ LÐ LÐxÐOå$@iÐiÑê–Ðy1ƒiâä RïÀ óÁïÀ ïÀæ0U0Ð 0Ð 0Ð 0Ð¥ @Ñ‹0dðdð \ðJàã" ïÀ}ÀYHÑ0ÐY@]@ª×Ð×Ð×Ð×Ъ×Ð×Ð×Ð×Ð j×Ð ×Ð ×Ð ‰@ªààààšààÆ0#àª#à#à#à#àª#à#à#à +ᯅâ #à #à ª#à #à#à#àÚ#à#àŽâá- ªÀ w$@ $@ÓОÙàà ì¯ðvpà¿Íòß>À• �À hÁñD0×Ð ¾ßÑ…Þ>À É|àÀ¯ð ¯àúàÝK»¾p¶¿ ÙàÙàžúàÜ Šƒêàªêà ¯à ¯à¯àº¯àÌãÛ êà Ôúá×Ð×ÑÀÍòÚU ¯à×Ð×Кà�óØ!â\âsð× _ ² ¥ «‚ Ñ®–Ö _ _ R1f¾poâ âMâ ³  ä_…Õ ŒŒU c k ² ”Jâ‚ < |#ÔâwåÉ!ò¶¥ ôsCõrõq倥<P>³À  ª    ª ª    ª    ©?PYYYªYYYYšY YGÈ`�j���HPª••••ª•••• ª• • • • ª••••R•’ÉÝÝÝUÝÝÝÝU Ý Ý Ý Ýùõ¦0 u]Ò¿ ™@€ôy@-À†"ɲÂ@993!3m7PÀô¢0A7 R~¾0c¹3ñTa@x33J9p4«`5H@õ-À 0ŒÒ’À"ÀªªSTY@xxU    é k-À0 ªxxxëÞ¤‘p-ÀÿÀ 0§Â80  é\³ ÓÐ…â†K p�àó–05 5 � ˆïà¶3— Úp‹– áâ†W5 5 E ž3r¯`ª ª-À ®0 x x ªxx-À0gsÎp ßÉ𼺠3 °P±T0@ -À½ 5† 5 R5 è!ûûº u-Àß# ¶!JÓÐÓÐ1¶lÀ¥lÀlÁlÀlÀ ÌlÀ3 5 3M �ÀQMpJ0 t¯†}À}Àâ[1ÊÐt 3 ¥®÷p¯$@ÀÀ¥‰p[Ð  ]ôB xxUxxlÀlÀ©11”0 ”0 ”0 ª”0 ”0”0”0º”0”3 xêx x |  ¥‘zП`û0 û0ªû0û09A Ë ×! ³T]@(@(@(@(@Só-ð<@<@<@•”0”0”1”3K  �1  ¥ Aûû©ŽHà�@�@�@¾�A†  ’ !5 =1­1àTù �@�@)À05 t’à3¯ ¡zлzÐçÒ÷p+Apè@aA†7�À�`tÁv²@â¿" ý@U   „!Ô€!²@-À 0•ûû ô!¾#Ëx0û¾#¥=1¸½ð”0”0xÕ1ûò°ÿ\Ü`š~P~P hè` Ð* Ð –Ñ<pq�àt!*ü°ü°ü°=15 U5 5 ËA‰Íâ/þ IzÐg¤àyÐS(pÛPÛPJ0UJ0 ª„0 „0}ò ÿPU ÿP ÿP ÿP ÿPUÿPÿPÿPÿPÿP5 ËA’átÀ©tÁtÀtÀtÃý öøÀýÜ`V`ý°§ -p™ÀÆÃüÓ¦¦¦ÓÔ£Ð}` žP ‹®Hâû ¦ ¦ ªª999 ª9 9 99R9¢a”0)À-ÀuÀÃúV UV V V V u V uSù ºÐºÐºÐqÎa5×øV V ò°÷«%ÀÿPÿPrÿPÿPò°ö%Àõ‰a…õU %À %À%À%Áª%Àû -ÀÃôS:qÿPÿPa®tÃó²  <!52…òÓA’à½ÓB…ñÇ ªÇ %À %À^k…ð %ÀI•Î-À5ÀïÜ ôóý¯Åéè×ÿš1ð“ÿ2&&‘XÿâÅ�ÿW&ýôÿ¯Ž}hÿSBÔÿî‘tÿcF-ÿçªAÿ£B6"¡ÿh+òÕ¿ w63;« � � � *…ýŠþK0Vê…€;Ñ¿": ‰•SgOž€ž€ž€Už€ž€ž€ å Ñ  Ñ 39 YLôÀÓP‘ù°h«€ñ±½ðÛ€38 *Jö+KkS ð€ð€eô�°ïà� 3š š��îuÀ‘o†7 �ý°©L )�ž€ž€©÷&À���ª���“6› � UÀb�¦b��ù°Ó€Ó€JÓ€v‘Ÿ`Û€Û€=߃5$üŠ}€U}€}€}€}€U}€}€}€}€U }€ }€ }€ }€U }€}€}€§‘ª�€�€�€�€š)�)�d ÷�j���4øÐª     �€ �€ *�€�ƒ4æ3Ï2 ã£Ð8 äTIÐ@  ™À ™À ™ÀU ™À00I!T10000U0 0 0 0Õ 0 0I#1• (Ð (Ñ[IС ª¡  ¡  }` }`ª8  8 @ @ ª@ @  ™ÀH¡RTàÙ  Ù  ٠٠¹Ù 30``©.Š@ @  R ªR R RRRR_RR } †/``Uú ú ú C±R8 <¡8 8  8 U 8 R ±Q% ªk°k°k°k°ªk°Ù Ù Ù ê٠٠ í£. ©³zР°  °  °)Lþ@°° šAí¡ªÙ Ù Ù Ù ží£- 2·Àݰêݰݰ3= ©íðó°ó°�¦�„)À À \À3< è€è€Åè€è� Á…€XJs�Ys�ÀÓ; l�|��€Œ��€Òù yÀ�� �°�À�Ð�à�ð��� �0�@�P�`�p�€��� �°�À�Ð�à�ð�­­ ­0­@­P­`­p­€­�­ ­°­À­Ð­à­ð­½½ ½0½@½P½`½p½€½�½ ½°½ÐÀ½Ð½àºˆ0ˆ0^¤� åðåðûà ôs!¿¶çàãþàë¦}dÿOGñÿлž}ÿl[:Y(�8�.ЂW šMMƒuYªYYYYªYYY Y ªY Y Y YªYYY�„ÔÔ ¡ ¡¡T‚@±±±±ý±€ õ2y0†Ò|WÐÚ•ÚMMȧ�uóóªóóóóªóóóóJMMêMMUMM M êOôøpHH PaHÝXÝhÝx݈ݘݨݸÝÈÝØÝèÝøÝíí(í8íHíXíhíxíˆí˜í¨í¸íÈíØíèíøíýý(ý8ýHýXýhýxýˆý˜ýÀ¨ý¸ýÈýØýèõ@,PPAc1&Q>�b†+xöpy`Õ�`�`C*“ A\0<@T!–p úépr†)t€0�`C(#@©QPP�`®C'#@#@)eº �@&0&0Å@O&qƒPP¨A.›C% P›A›C—$y`yay`”ãQÛPÛPãQ71¹LPê@»A@ò@h`yda¯r†# šaR¢PrA‰`åpåpMåp€ÀépÖb¯†"¢`¢`¼¢`[P!mQ t�À&0@S 1é~ PbPÌr†�‰`T] wPg€W3Ó4÷ 5×ÒåpÝqép /S©qaž`ž`ž`ªd wPwPåpJåp åp åqåp åpé Ìqép/S *wPwPwPêQhp¥épþQÒ` /SK–p šqHA\Šñ� #`g€ pRÐó#04`4``óˆñÀ�# ìáÀï`¶ÐÂÊ4`4`D`g€Pž` vAAKpuép /S wPU wP wPwPép]/S’p ¹@ã ß ¹`g€ ¦¸p±RÀ` ` ê`ép PC J4` 4`çahphpÕ¹`épPC )µa#`#`qd!ªžpžpžpžp:žp žr† 4`g€/ Ç0 QD0Ip} ‰r†‹ê°ŠZpZqʹpPg€ — ®öp¯ê°MP¾MPí0Ú``ô Ò UwPwPwPwP• p p0q“p ª“p “p “p “pª“p“p“p“s «wPwP wP îêQ@ ôó$ÏÜì/ Ó÷¶… +ÿ±dGÿ ðßÒÿŰ›‚ÿiP÷ªÿu$DÿíÜÏÿ­˜ÿfMô§¿rjŽ€ÀW»Á0"V ¨0–_€öVëzÀt€ªt€t€t€t€êt€t€|�†UgŸŒ@�€ 0 ª¥€¥€¥€¥€ª¥€¥€ ¥€ ¥€ ª¥€ ¥€ ¥€¥€âÉ�vgp€€ÀTª�€�€�€�€ ª�€ �€ �€ �€ ª�€�€�€�€*�€¥€©�§­0&�U&� Ý€ Ý€ Ý€ž€ÀSpƒC�ÊC�C� C�€ÀR³WI\�¸ê°ÆºñÀê~ÂQC�Òu‘ô–l� ”ƒPµC�C�úªçž ÒO%2У�v£�&ÐÂNÝ€]S“M C� S“WL C� C�–�^€ÀI6wÖ{êç�<ÀH— ï÷ s <ÇÀ€ÀG  sÇÀUÇÀËÀËÀÏÁêËÀ ®À ²ÃF•ó×@÷= SQ ÃÀr  €ÀE ZpU ZpZpZpü�Uü�ü�ü�ü�•ü�ü�g¡aÀ ªØÀ ØÀ ØÀØÀ®ó“DZpZpªZpZpZp Zp šZp ZpîA@Ä JÄ ¡`Ô  Ô Uç�ç�ç�ç‘?†C {õ Õ ÃÀÃÀÃÀ—ÒV˜‡ N£B S Ȱ °ЩjjeÀeÀªeÀeÀç�ç�^N£A þŒ@&è* jç� è¡Ã7@ »À ’c|°àÀàÀªÁ¡ ÕÀÀÃ? ØÀ ØÀN¡N¡À]Ã> 8À8À© è¡ÇÀªÀªÀ Êó° ó° ÷±##= ¥â°æ±â°ÐªÐ@À @À @À ­„Z�¨0¨0J_€_€_€^�_€Õ_€ _€ _€ ËLQBÀ¡�€JÀJÀÕJÀ JÀt€ì~Âe�u�…�•�¥�µ�Å�Õ�å�õ���%�5�E�U�e�u�…�•�¥�µ�Å�Õ�å�õ�­­%­5­E­U­e­u­…­•­¥­µ­Å­Õ­å­õ­½½%½5½E½U½e½u½…½•½¥½µ½Å½¼Õ½åµ¨ôsE˜õrõq�ÄŒ@ ª ª    ¦ Åk@55¾5lEjEEEm|`ªYYYYªYYYY ªY Y Y Y ªYYYYšYYn|`¥ª¥¥¥¥ª¥¥¥ ¥ ª¥ ¥ ¥ ¥ª¥¥¥¥¦¥o|`ññÊñùr@+Ô0 JÀJÀ™Bè ) `&ê& õ0 ý3fjˆPˆP <@ ˜¸”.& & &Àe§fpÀdd–dÂCÀuÒ x–x™èà(ðˆÚˆ ˆ÷åÂd ÕxàÀàÀ,TPˆ˜˜ �Ðõ �Ð �Óc ‰*Þ0éà÷ ×@ÚK‘€p’|`ææUææææUææ æ æé ò� ¾bb JˆPˆ”Œb/ª3    º #a<@etáÀ²Fàæ'ˆpÚˆõ0_åÂ` U<@X àÀ©©š`‰ ²Ð²ÐʲРd d À_ ¥)Ð)Ñ ²Ð *õ0 õ0 õ0l!õ0]ý3^­­©­­­­ ¾×!†] „PªˆPˆPˆPˆP’CàÓ`0 0À\«²Ð²Ðd Rd )10 0 3§[ ¶!²Ð ²Ð ª²Ð²Ðd d ªd d -1Z¾bZ§³èàw0w0ªkÐ n0n0n0®n3Y d d ªd kÐ kÐ kРă1kÐkÑkÐÀXU À_€\ \ Uw0w0w0w0I{1²Ð²Ñd d Ud d d ù1JÀJÀÍ$Í4ÍDÍTÍdÍẗ͔́ͤʹÍÄÍÔÍäÍôÍÝÝ$Ý4ÝDÝTÝdÝt݄ݔݤݴÝÄÝÔÝäÝôÝíí$í4íDíTídítí„í”í¤í´íÄíÔíäíôíýý$ý4ýDýTýdýtý„ý”ý¤ý´ýÄýÔýVäûP ôóIûöéS�yP €ââUâ â âi,!`ª5€5€5€5€ª5€5€5€5€ ª5€ 5€ 5€ 5€ ª5€5€5€5€j5€5€5€-!`ª…€…€…€…€ª…€…€…€…€ ª…€ …€ …€ …€ ª…€…€…€…€¦…€.!`̀̀ªÍ€Í€Í€Í€ªÍ€Í€ Í€ Í€ ªÍ€ Í€ ̀̀ªÍ€Í€Í€Í€¦Í€/!`��¤�7@¬;@/� /� ª/� /�/�/�R/�„„„„U „ „ „ „U „„„„U„„‰ ‰ U‰ ‰ ‰ ‰ 5‰ ‰ +OP²!Z  ‹ÚPí˜BOn58ÚPÄ�Ä�UÄ�Ä�Ä�Ä�UÄ�Ä� Ä� Ä�U Ä� Ä� Ä�Ä�UÄ�Ä�Ä�Ä�S9ÚP   5  :ÚP( U( ( ( ( U( ( (  ( U (  (  (  ( U2p p p!ªp p p p ªp p p w@ *w@ —Cmþñê@Ol5±>© © U© © © © U ©  ©  ©  © U © © © © M© ²6é é Ué é é é Ué é  é  é • é  õ¡Ã'@°ª°°° ° ª° ° ° °ª°°°°ª°   *   ]±à@{ ¢˜Bk®É@R ³‘5sÚP¢°U¢°¢°¢°¢°©¢±±o†j t*pêÓ°\ y³i Êúp%±r2p|w´Êpø°ø° � *T@À ÀÀÀUÀÀÀÀMÇ( 0À0ÀU0À0À0À  Õ  #hU   U&&&&UÀÀÀÀUÀÀÀÀ•À À Á ª  J@J@žCgÇÉ@B@ªGGGGªG -=M]m}��­½ÍÝíý ----=-M-]-m-}-�-�-­-½-Í-Ý-í-ý- ==-===M=]=m=}=�=�=­=½=àÍ=Ý=í=ý= Dàýôsg-ùî  �¯‚]ÿ,Þ½ÿ�_: ÿ´‡J%ÿÐgƒ2?ßver³ÐýtÿG:\EXCûELA.EXE5ÞýpVQ þ3InprocHïandl1 Oÿle2.dll3ÒýpWV†^PrïogID3eÿT®‡ßŽCd®\�ÿú@^gìQS®ÿ “?dÿÁÊá>ôÝ$ûÆb®R¸þ?aþ®ÀßD�ÛÂõØ_®¸ýÅØB`E?è¿�Â?¸ d@€Ï0 õ^° õž@o$ª«Ð/ª////©«p@GGGª/�/�/�/�TK‘/�/�/�/�.�>�^�n‘v•ž‘¾‘¾�Î�Þ�î�þ�­­.­>­N­^­n­~­Ž­ž­®­¾­Î­Þ­î­þ­½½.½>½N½^½n½~½Ž½ž½®½¾½Î½Þ½î½þ½ÍÍ.Í>ÍNÍ^ÍnÍ~͎ͮ͞;ÍÎÍÞÍîÍþÍÝÝ.Ý>ÝNÝ^ÝnÝ~ݎݞݮݾÝÎÝÞÝîÝþÝíí.í>íNí^íní~íŽíží®í¾íÎíÞíîíþíýý.ý>ýNý^ýný~ýŽýžý®ý¾ýØÎýÞýîñê ôóŸÍïçÿ¶'!ÿ{BÉŒÿCÒ�@ÿ+Åÿˆ?ΙH†}H)OgZ0>€>€->€l0oëPR€U R€ R€R€R€5R€R€p¸�r€Ur€r€r€%‘_†~ @P @P Š` á`UaÒA8`?“0;p‘Qõ[lpê¼’}H¤b£RZ0̀̀ªÌ€Ì€Ì€Ì€*̀̀ Ø�Åú ô€Uô€ô€ô€ ô€• ô€¯€¯�¯€©ùI`��·€ ®½C|Ä€>€–>€·�tÛPE�𝀝€ÅiPU� ªU� U� U� U� ÊU�U�U�){Õ G G G ÆTDŠ�R€R€R€¥R€ ’‘@ †€ º†€†ƒzô€ªô€ô€ô€Š�jŠ� Š�Š�Œ¼`ªÛ�Û�Û�Û� ªÛ� Û� Û� Û� ªÛ�Û�Û�Û�ªÛ�@@@ª@@ y0 y3y« ô€ ô€ ô€ªÆ@Æ@@@ª†€ †€ †€ †€ú” ”#x$!km m "Z0¦y  #0�  �  Ê�  ‰¡]>0• °TEP� � � © EŠ�בޑŠ�Š�UŠ�Š� Š� Š�U Š�Š�Û�û‘ª@@@@:†€†ƒv†1y0½ y3u$S;¨R£©Z0°°°U°°°°U° ° ° °U ° °°°U°°//¥31ÿ$ ýÿðãÖÉÿ¼¯¢¿šaeå3÷3—Bø…Ë?ôþ³P×£°?2áïzjBè¿P�Âuû?`» š™™ÿ>2= W>dæë>Þø'²·�ï=Þg³PÿBZX8€B  ÂÁÈÀ3Ò3ÝCÝSÝcÝs݃ݓݣݳÝÃÝÓÝãÝóÝíí#í3íCíSícísíƒí“í£í³íÃíÓíãíóíýý#ý3ýCýSýcýsýƒý“ý£ý³ýÃý˜Óý߽ﳊd0ö0ªö0ö0 g0 g0 *g0 g0¥pÈ0W@Op ²P0#@#@U#@#@#@¥p©¥q¥p¥p¥p™´h0O@5ç@W@W@W@HV`gAÈ0» öRo7g0Tk1g0g0g0g0U††††S¬d0¤@¤@¤@U¤@¤@¤@¤@U¤@ ¤@ ¤@ ¤@U ¤@ ¤@¤@¤@Q´A`Q`P`P`PU `P `P `P `PU `P`P`P`PU`P`Pe`e`Ue`e`e`e`5e`e`+M ŽaZŽ` Ž` ‹ÃPí÷ROn58ÃP]P]PU]P]P]P]PU]P]P ]P ]PU ]P ]P ]P]PU]P]P]P]PS9ÃP©P©P©P5©P©P: ÁPUÁPÁPÁPÁPUÁPÁPÁP ÁPU ÁP ÁP ÁP ÁPUª`L`L`LaªL`L`L`L`ªL`L` L` )À ª)À d#möqê«3l«5­ ­ ­ ª­ ­ ­ ­ ª­ ­ ­ ­ ª­ ­ ­ ­ R­ 7A#@#@#@U#@#@#@#@U#@ #@ #@ #@¥ ŽaÃ,0¶`¶`ª¶`¶` ¶` ¶` ª¶` ¶` ¶`¶`ª¶`¶`¶`¶`©Äd0ò`ò`ò`*ò`ò`öavõ@+#k®† 1LQÀUÀÀÀÀSs ;p;p;p;p;p;qÈ1A^Cj ¦p`@êlp«À+#i ªÌÀ¾ar®pu¶pwÔºp‘p‘p # *Tf¡p ¡p¡p¡pU¡p¡p¡p¡pMÈ0ǸÀÉpÉpÕÉpÉpÉp  Ôæðápápápûò&ôó ëóñÏÿɈOÿÁ�–ÿ�@+ÿÔÿÎ�TÿÆ•›ëR ÀP�À� ©ç*`H€H€H€¯èX€X€úX€X€éªl€l€ l€ l€ Êl€ l€ l€�ÀŒ3åêð‘€æY€™€U™€™€™€™€U™€™€™€ ™€U ™€ ™€ ™€ ™€U™€™€™€™€UH€H€H€l€õ¿À¿Ã‹"¥Tm€þ€þ€ þ€ þ€Õ þ€ þ€ þ€¦TÍ0����U � � � �U ����M�§Y€V�V�UV�V�V�V�UV� ‘€l€l€=ˆƒŠ -qpÌ0UÌ0Ì0Ì0þ€•þ€þ€‘þ€~§‘†‰h0*¼�¼�¼�È‘hpUhphphpW@5W@p ±Pì�Õ ì� ` `Æx¾p �Àˆt)Pj       (œ0J !¡br) ) ¥) ¿Á¿À¿Ã‡K �p #!   • ø‘e&À¶€0' J' Ì0n¡-À-ÃW† 0 00U000g@Mg@£æp£ £ •£ £ TQTS…WÀª Á80³õ@ªÌ  Ì   š  )þPè ªè è è è úè ð¡†„.ªÐÀÐÀÐÀ ¥0 *¥0¥0¥1ud0)°U)°)°)°)°U)°)°)° )°U )° )° )° )°U)°)°)°)°Svd0q°q°q°Uq°q°q°q°Uq° q° q° q°¥ }± À¥°¥°ꥰ¥° µ±èy ½°�Àƒ o00ªÊ° ¥0¥°¥°ª�p³À³À ³À Ñ-ÂDQE�Ào�lB�H€UH€H€H€H€•H€ H€ H€G… JL„P„T�d„l€l€k�{�‹�›�«�»�Ë�Û�ë�û� ��+�;�K�[�k�{�‹�›�«�»�Ë�Û�ë�û� ­­+­;­K­[­k­{­‹­›­«­»­Ë­Û­ë­û­ ½½+½;½K½[½k½{½‹½›½«½»½x˽۽ë·èôsñQõrõq�hõ  iUUU   ‰ •!P"ý@APQ ªQQQQšQQB!Pqªqqqy TÒp‰‰‰‰}‰Ê¡U¡¡¡¡U¡¡¡ ¡õ ¡ ¡ÝSÞ¢ÕÕÕUÕÕÕÕUÕ Õ Õ ÕU Õ ÕÕÕ5ÕÕߢUU •  ñæpLjLLLòpÀ¸`x@ ó«3Æ«� � � ª� � …!?ÄaL0•bd0��M�‰ß`­ö0Mö0 7æ ½`©d```ê``dÅ3©<0ê ê ê ªê êêêjêêê d0ª    ª    ª    ª    ¦m %š ^ ^ ¦^ &d0n n ªúðúðúðúðªúðúð • •ª½½½ ½ ½ ½ ½ü ò`^®«3ÃÉð­*­­­±­U­ ­ ­ ­¥ ß!ý<0÷ ÷ R÷ û! ð  ðçеçÐÿ° 1úPõTþP#0#0#0#0Õ#0#0+1†Oˆd0H0H0UH0H0H0H0UH0H0 H0 H0Õ H0p‘p î¸&`€0¢0Á ò0ªò0ò0ò0ò0Jò0ï!¡à©0 „3WÀò0ò0 ò0U ò0 ò0 ò0 Î1ªs@¸ð¸ðÞ1ð”pÀæ0 æ0 æ0@¿§ ï«àû0æ0Ræ0ò1æ0æ0æ0Uæ0æ0 æ0 ò3W¾ û0 û0 û0•û0û08Aæ0®ò3½û0û0ªû0û0û0 û0 <û0WP¼ ‡è v@- v@çÀÓEÒð–à–à ÷WûÀûÀpåpp€Ð— R˜ðpñU`ppÑÑÑ{PS–Õ˜ð˜ð˜ðwTI0MÐMÐMÐMÐUMÐéðéðéðM{PçuÐuÐUuÐuиðqàuqà¶ã• éð éð éðáñJ�]àU qà qàqàqà=uã” m¶ÏÐõMÐMÐ -UßÐßÐßÐßÐUU`U`0Õ³W“ ©0©0©1¢x0§aãѽ°½°Ù‹q°(àŒ³"’ U©©ÅpÅpUÅp©0½°(àÕ(à00¡:80Å@2‘£¡Z UÙp©0©0©0U©0©0½°(á’éðx±0Õ±Õ³�S& ñð ð ÛÁR÷Q°w`ÇàÇàÇàUÇàÇàÇàÇàUÇà Çà Çà ÇàU Çà ÇàÇàÇàUÇàÇàÇàÇà©1000ª0000¦0 ¡ @;ð ;ð<;ð¿ð� 3�PðUPð v` v` v`éű;ðGóŽ©¥Myðyðyð©¦ø€‰ð‰ð‰ð ©å$@™ð™ð™ð©èÖ©ð©ð©ð ª©ð ©ð ©ð ©ð ª©ð©ð©ð©ðš©ð©ðéø€áðzáðáðÄ!ôsùVõröq =R 6!À À ÀU À ÀÀÀUÀÀÀ^ U^ ^ ^ ^ U^ ^ ^ ^ U ^ ^ ^ ^ ¥ ^ ]‘ z LŽ!z Á€……¥…40••b•¡)à©5ª±±±±ª±±±± ª± ± ± ± ª±±±±š±±6Âýªýýýýªýýý ý ªý ý ý ýªýýýý’ýÁ½²!½ú½½R¸ A,|½�`è\�kÿ�Âu?ºþ½�CP82C5ý4€2NIC-CÿMOS TIMEÿR/COUNTEÿRWBAA@923ÿ]|ÿB{ÐAdìQ²cÁl¹¦q�0A5á-ý5ŽUARTSG¯FFE;«d°{ûJ¸�ÂBdÏHáæc!è×…×Ò¼{37ùA>%ŽDMA CÿONTROLLERZDCCB:«ýe°…ëñ@ÿš™É@dÍÌ»¬@d�Âk×ë£Ò¨{OP8å7‚N¢&Ž8-B÷IT “MCU-ÿOTP[FEEDö 0?p#š™Au˜@Ø ®G¹…-•-¥ 1©% 0´-Ä-Ô$wR¸.Þ …ë¾Gš™ùê-ú-¥ 0©%Ør0=)=?f° ×Ý­Þ Há�¾áz¹xcT=u?»�$MÎ 017PÑ6ŽLOW POWERˆ3rþ\Ì& #ÍÌšÞ w®w¾®G-´=Ô¹Ì716Ù3<@ŽÿBAUD RAT¿E GENEQ@OÜe&Eš™Þ ×£�à ö(¤O=Ôá~{MP05GP›Dû2Y�HIGH-sSPÍ [ MPAZC®¦0?c°@Þ ö;( ¾¤pÍ~MŽM§01C¡BP1�PÿRECISIONª¸HYÄFiD²Þ š;™y¾…?MÔýð{LC440AãJPbV©D²@D VÿOLT FBK OP-AMP_Ì&u` $Þ ¸µ § ׋âMÔÕ]V3øgUÏR©B100MHuZˆTVü<®çÞ —{¢ÜByE]ÔÖÆ]V28hT/b©BDU'AL,€VŒPZÌ&0SWff¤rBd¾0m¾]4261e”a©Bè1ŸNOISEWŒZg^mnm~m*c51eýa¡dõ-ªb,yPGAINrOa]Ì&ÍC ×rB�¸ �Â�®]ÔÛÆ]V07hTcr©BPR·OG rBU R!Y�\3}C}V]0ýeÆròÝS1ä]Ð"\ôóCûöþ ‹á«ÐeàU eà eà eà eàUeàeàeàeàMeà¢ð€5€5€U5€5€5€5€U5€5€ 5€ 5€U 5€ 5€ 5€5€Õ5€5€5€£Tð€}€}€}€}€U}€}€}€}€U }€ }€ ¥€ ¥€U ¥€¥€¥€¥€M¥€¤ð€Å€Å€UŀŀŀŀUÅ€ Å€ Å€ Å€U Å€ ŀŀŀÕŀŀŀ¥\1ÐiàÝ; B&Ö�fà8T±€H'0éJà/��a�Ç �0…<�L�\�ë�­Æo‘ó ó ªó ó ó ó  ªuºÀºÀ=àª=à=à=àãÀ¦ãÀŠÐе� ¹°RIòæðÅ�Å�Å�UÅ�Å�Å�É‘_†Å3À ÀU À À À ÀUÀÀÀÀ©Á   ª    R   U   ¥ ›¡mmšmm&NÐn ªn }}}J}}}ºÀ ¾ÁT¹±¹°¹° ¹° ¹°Õ ¹° ÎÃÄÿñò ~Jà†ÃoRЪãÀãÀãÀãÀ”±‘ãÀãÀ ãÁãÀ JãÀ ß¡ý“À÷  ÷ • ÷  û¡èÀ °Ê7ðñt&t°õTy°#°#°#°#°Õ#°#°+±†OˆNÐH°H°UH°H°H°H°UH°H° H° H°µ H°àwìàîx¾ð€°Ø°Á SRЪ�°�°�°�°¢�°ï¡áŠà „³À«�°�° �° ª�° �° �° αöTfà‰Ð‰ÐÞ±ð¶ðÊæ° æ° æ°ÑÀ¿ SïŽÐû°æ°æ°©ò±æ°æ°æ°ªæ°æ° æ° ò³¾« û° û° û°Jû°û°8Áæ°ò³W½û°û°û°Uû°û° û° û°žÑÀ¼ ‡—ÀvÀ övÀ<ôÀ…º†Àmû vÀª°°°°¾ŸÁ†º vÀªvÀvÀvÀvÀ©aüÐÈÀ ÈÀ ÈÀú‰ÐØÁ†¹ªÈÀÈÀ ÈÀ‰Ðz‰ÐÜø O¿°ªÐ Ð Ð Ð ªÐÐÐÐfµ�¢NÐ*Ð ³ ð߆·ÐPJ:à§>à¨àGÐGÐUGÐGÐGÐGÐMGÐ ¾Ï°gÐ#°5 #°Ö°÷üÐ{Ю˜Ð¶ CÐ 2ÑbTQ��Ð�Ð�Ð�Ðãô €¤ÐÉеÙNNà±Ðd:á��Ð ùö€ÅÐà´k±Ð±Ð¿JàšÚÐ|°›èàæÐ.?³³ ÃáÇæ€#°U #° #° #°#°e#°oÑÓ²Ãàžl௠3ê€,à j,à ,à,àUjâO® °� Ià Ià3.:Uà:V¤ÐդФШӭ µdðdð^ú€óTþ€‚à‚à‚à¤Ðå¤Ð¨Ñ¨Ó¬ ©tüà§à§à§àª§à§àdðdð*~à~à~à~àJðO« ¦’�Üà7ð57ð7ð²ððàUðàðà]à]à®Jðª ÜàCÐRˆÑ2î€ð ððµðð`m’©§z¿°ð ðª1ð1ð1ð1ó¨ ^ð�-ñðS_�kð1ð1ð©1ñ1ð 1ð Üç(¥àn�ð�ñ³»°zàU zàððñÊkðkðkð:�¦ Ó cðÅð ÅðsL¹À�ð ¢�*Ð*ÐåCЈÑSÑ<þôs½÷ú¾ ñ¾ ÏšeÿDæ±ÿ€S6.ÿÜ»’ÿE ï¾ÿ¡€_:Ÿ ãð9 ª9 9 99j999äž�ª]]]]ª]]]] j] ] q 0 E4 8 �� �U � ���Õ���!WÁÁÁUÁÁÁÁUÁ Á Á ÁU Á ÁÁÁÕÁÁÁ"T    U    Õ    "ž:�È ÖD ¦D %¦PPBPP:‘:‘õqó¾£v�†�–�¦�¶�Æ�Ö�æ�ö�­­&­6­F­V­f­v­†­–­¦­¶­Æ­Ö­æ­ö­½½&½6½F½V½f½v½†½–½¦½¶½Æ½Ö½æ½ö½ÍÍ&Í6ÍFÍVÍfÍvÍ†Í–Í¦Í¶ÍÆÍÖÍæÍöÍÝÝ&Ý6ÝFÝVÝfÝvÝ†Ý–Ý¦Ý¶ÝÆÝÖÝæÝöÝíí&í6íFíVífíví†í–í¦í¶íÆíÖíæíöíýý&ý6ýFýVýfývý†ý–ý¦ý¶ýÆýÖýæ÷ç¢óòƒ@¿ù�@ƒôãÐûÃÞaTGÿ:+ÿòáÍ»ÿ§“‚qÿaTD4ÿ&òÿæÒ¯ÿ‘…xkÿ_RA6ÿ'õÿæ×ɺÿ­¡Ž{ÿiWF5ÿ'ôÿáѾ°ÿŸ�sÿfYJ6ÿ"õàÿ̹§˜û„¾`_K<ÿ-ùïíÙ’rggÿfu\]^]VçYÍ‚äP%ý̓ravrmïfwfÀ…\Y[�ZÌ…Â×�ç‡Zï^_ZXÌ…l�šYVÌ…˜*�Þ™\]X\Ì… Þy U�ç‡X^ZWõ†ç™��˜]T ÞPZV_Ê€VX]V[YSÆ�}Ê�VWYRÆ�ÿYhX]bÿsx]Yfw{ïoQÆ� Yÿ^X^{ijPþÆ� Y][XVßYYYO £\^X[YY[N¤ÿV\YYVWMþÆ’Y[_VvVÿVXWVXL¾Æ�YZ\F V¿[X\^H KÞ £ZXWVS JÞ8£Y^\gB Wß[VYI £YZ^B VVHÆ� u ßWVsWF ^õGÆ�u VZZ»W^B vF8£Xw_\s{¤XEÆ�ݽ XZkÃ¥fýDÆ�YW^Yÿ}X[ooÿ{iw[VoýC¦£WWV\^×dX]Þ B8£V[û_}{¢WV[Aê´VÁ¢]F Z@þ ¢XvdWY^Y÷l?Æ�Xp¿YZY_>F³_Í^1 =Ú’™�ZYë<Æ� d°\[–±¢;7³]Ž (°Ý:l³\V]$ VW÷Z9ý’X[bsßgWV8¦¢X[WVW[`f�¡ý7Æ� XZmbW\a s6«³÷Z^² ^X[÷l5¾´VW\êl¡4Í¢XÒ ]Yÿ[YVXXXù3�³¬ [\Y2þ�³X[[[Wý1l³XV`hWßX_d0"ÄV×YWG¡/”¢XWý\­¡Zl].úDÄVLÂXu]-F«³V^]ÀŽ x±,hÄ#Y] /°� +`³à�÷\*F²WvvYo[[) ¢WlŽ¡º4 (ý’W_[B ^Û'§Ã_XÍ�[X{&ÄÄV]WYÖ�ñ%”¢ØÀÚÀVXY7V$l²W^‚±-À÷V#§Ã]Y[ßo["§Ã\iXda!Æ�éЧ° ôÃ[\X¾Õ�\_^šÃ[¿XWW_Ú’Wî—°VšÃZ_]ú¢ XÕ[V\~LÓZ[jZÆ�é\Ð\Àm[ÁmXggWvD¡µ°¦¢¶ÜÀX] Y™°®¾²WX]# ;ÐþÆ’WXV\XuXÿXYlaaa~LÓWdgXL¢ÿWWZ[\VÿX] gfdZõ¯ÓW°°_YW£¶Ã°mѶÃVvbXXo¯Ó_V\ZWXºÑ!ä{XZ`ÐX^šÃ¤þÀâ�!äîÁ\3° ÐôÃ]ÀŸ 2± ôÃZo^V]V½À Æ’ßV_Y^þÀXvt° €äXV…°VYXV ”¢*Ì�Z¢àYIá€ä­ œí�tÁ^l²;àX –°)°Îä eࢠý¨ã\^ZY\ Ëuj–ÀL¢XàYYÿbWVYl`wVïVk ¢V[^VW]V]F²ÉV…ÀHÐ'ó°à^]Ô� (òY;âÿ¾ ~îÀYY~bC Ûþ¾ /ðWYÿX`sv`¿lvYý¾ üeðŽ o^YüÞyóVZWÖàXñû¾ ª•°�djvböé�e G±vX[}ïZh°ðmûdowÐ \]V ÷W·l²bd]Zÿ`b[ZWfVºÚ˜f°ñôqû\…œ5Sá»0 U  Sâž)))U))) )M ]®MM5MMƒ@aÕaaa#TçPu u u uU uuuuMu$w`��U����U�� � �U � � ��i%¼`ÙÙ pp© $0éééªéééé úé éͯΪª   ª  ª©Ïaaašaa7hpy©8$0���ª����ª� � � � ª� ���š��9$0ɪÉÉÉɪÉÉÉ É ªÉ É É ÉªÉÉÉÉ©:$0   ª    ª    ª    š  ;$0Y ªY Y Y Y êY Y i!·U} } } } U } } } } U} } } } _¸± ± U± ± ± ± U± ± ± ± U ± ± ± ± Õ± ± ± ¹T² ù ù ù ù Uù ù ù ù ý ù 33GB,ÿÍÌAèÿ)\ÿ@è�Âu?£&0D8751HA3ÿ1NIC-8-BÿIT HMOS ÿCPUQ@??>ÿ820?_ý=1ÀAš™ÿ“Ad ×AL%=5<49F1Ÿ02N7þ]0-2K EPR×OMUa6hk2{ݲs0= ‰y0š™ym=�=48H*Aÿ OBSOLETÿE OFFER ëUPœ4 A2N.^]\\[e2Kàm0wÃõÌs0Háªy0èÕ1ß=53µ<4088øcBM8³15MHZO_>==<7f1\k2ÿ3³˜C×ãÿ‚C ìQtC$GM53­÷paC7¼B¨2Þ|A CO-»0CE_SSORR�FZk8w{ y0ö(€FMÊVD·^F6RM216ºsJPÝL)\_s0ö;(4y0{"ûMVDýè<3469ADJürT¨2QUAD DÿRIVERPBAÿA@923ÿ[êk4�s2my04zUTôì0\�Bí5ýÉ<327128Aá2ÌU¨2ÏP¸4QDC×CB:f1k‹C3£vs0)\x1q=„¯]úVDž<2CYPALÿC16L825WùC'k¨2OCTALó CY1)`aPOOëN@f1ak2R¸pÿB×£HBdâ6@+$4m!e7C3S441c”b-?bYO0þNbEPLDWKJWJI=f1döTßs0ºØ2Ÿ m…m•cõPœhP¨hOTP ê´`Z¸fgk2ÍÌýîi`€Óo`�Bµxumæm•`225Jœd52¤`J¨cSMMctý]¸lq½}C/RxSC5q5ŸDA}ŠQ|HaxHmu­gw÷Êôó <×ø™ðô™ð¿ÿ’MÌÀ&ÿï~r%õ< ÎKN€Õ€€€ÏEcg^5€5€U5€5€5€5€U 5€ 5€ 5€ 5€U 5€5€5€5€Õ5€5€5€ÐT6€…€…€…€…€U…€…€…€…€U …€ …€ …€ …€U …€…€…€…€Õ…€…€…€ÑJV š¡Ö݀݀}Ý€Èí€Uí€í€í€ í€õ í€ í�)ª � � � � Þ �28FP¨8DACRFEED;!ww¸‡i`®GEo`§š™$=eTÓ<3AC8222FPr–þ©bDUAL,12Q ¯2Y13�]7–]k2·ázR.q"o`×ó£U�e�8212EHz“1�‘ÝS.•S7–íi�s=4i`\�†Ó !†š   6Ò% t%  Ò0¡ŽZ: : "Þ>ªªJ J J J  ªJ  J  J  J •3n 0ÉŠ v  ªv  v  v  v ªv v v v Rv v  Ñþñö™ð® Ð;!!ª!!!!š))ˆV× i‰6€ß ß Œfªë ë ë ë ª���Ù ª    –  n Ì.'°ª'° '° '° '° ª'° '°'°'°ª'°'°'°ªª ª    ª®c±†Ïþñð®£ËWOàЮàÐv.¢/Ê 1> aB ɰUɰɰɰɰ5ɰɰbZ é°5é° é°ÅR ù°Mù°ÆZ ÀÀUÀÀÀÀuÀÀ[/¡OÉ-N÷ð´°´°U´°´°´°´°•´°BÁ¿2VÀæVÀ ±ÂbÀb¿pnÀ¯qvÀvÀªvÀvÀvÀvÀªvÀvÀ vÀ vÀ ªvÀ vÀ vÀvÀjvÀvÀvÀrò€¦¾Àsþ€ÆÀ ÆÀ ªÆÀ ÆÀ ÆÀÚÁö~b †ÈjªëÀëÀëÀ ëÀ šëÀ ëÀ %f€ÐjÐÐÐŒ�VŰøV ùr ñ�ª+Ð +Ð +Ð +Ð ª+Ð +Ð+Ð+Ðj+Ð+Ð+Ðò�Ô[РÇþñ󮣯S#À tÐtÐtеtÐtÐ ?àÐaL"�Ðb*˜Ð˜Ð͘ЉÀ ¨ÐŠLîð°Ð 7«À¸Ð[Щ_Ñ[Ð[Ð[Ðê[Ð[Ð_ÓÅ3©BåÐ åÐ åÐ ªåÐ åÐåÐåÐjåÐåÐåÐ *ªààààªàààà ªà à à à ªàààà¥!À %Ä YàYà¦Yà&*iàià©Q.uàuàuàªuàuà �Ð �Ъ¸Ð¸Ð¸Ð ¸Ð J¸Ð ¸Ð ¸Ð Äþñ=ò®£ÃoÌ ¨ÐU¨Ð¨Ð¨Ð¬Ñª¨Ð¨Ð ¨Ð ¨Ð J¨Ð ÚáýBòà òà• òà öá^€ðšbÀbÀt�Ű©õZ ðððªððð&ñŸ†Âˆ*CðªCðCðCðCðªCðCðCð Cð jCð Cð¸°wÂñî8Ð{ð Á STÌ ˆðˆðˆðˆð•ˆðêᡵФð ®óÀˆðˆð ªˆð ˆð ˆð ˆð LÉñâÀè0ÕðÙñ©ð�áð áð áð÷xôsÄí†=1÷® “‚ÿv'…y&ÿsÚ‰\ÿ#½dÿ;záÌ—ÄÒâŽ1j111ãÖªEEEEªEEEE ªE E E E ªEEEEšEEäÖ‘ª‘‘‘‘R‘É{À­­­U­­­­U ­ ­ ­ ­U ­­­­5­­ÊwÀõUõõõõõõõÀ¦ª  ª   ª©Ç’NNNªNNNb(Tö€nn n nK YV êZ ††U††††U†† † †ÿ ê“© ý†ÞE²Že’Æ p.¢Ý«%˜Ð˜Ð˜Ðª˜Ð˜Ð ˜Ð ˜Ð Rã1f÷ ÷ ÷UÂÂ!Y^j   n¦ª# # # # ª# # # # j# # # à °©ÄðW W W ~_!†Ü/D‚ªp p p ªÂ ªÂ    ¦ÂL¦¨ ¨ ª¨ ¨ ¨ ¨ J¨ ¨ °!Î ÎU Î ÎÎÎ5ÎÎ ”î€#°S 4¯ø ø ø Uø ø ø ø Õø W W Çx£$0 Û ñV€Ê10 11òZ€=0qŒ’E0 þ€ø  Ú«101010R51�j0 j0 j0Uj0j0j0j0Uj0M0M0M0©1ø ø ø žQ3Ù ôFà³0¥öĠƀ¿0Ã1(Rb€b¾€  F QÛ1! S S  Ø1Dðø1F •F ø Q1Q3×§ `ôÀ@ @ H!Aç1!d¦1@1@Õ1@ 1@ 1@Ì^£¢Ö h¾€*‚Ò5A£^@ ^@Q×j@j@ Ë.£¢Õ R@RAR@Ë„6€5–�@:Tb—@ —@ —@ —@U —@ —@—@—@—@£AưÃ@ OÔ%a¾�Ï0Ï0UÏ0Ï0Ï0Ï0UÏ0Ï0Ï0 Ï0¥ Ï0 ìAß ß  ªß �@�@�@*�@) ) -¡) 5) ) P› 8PU v@ v@v@v@Uv@v@v@I@­ICÓ$©) T) $¡ )  )  ) e %¨4Q) 7’ª¡P¡P¡P¡PJ¡PÔ! ¯½P ½PU ½P½P½P½PU° °#°n Un n n Q37­G­W­g­w­‡­—­§­·­Ç­×­ç­÷­½½'½7½G½W½g½w½‡½—½§½·½Ç½×½ç½÷½ÍÍ'Âï$ôñüÿòõñ\o4¬s` € 9�ðc­ÐvZ¡ð‡Hó™KÀº±Ðª)€VÀVÀVÀ©ÀSÀ=€=€=€j=€ =€ =€ ÁFàiÖ„`]€]€ àˆ`•ä­Ð¾�-º€u€U5¨`HÐKÐQš€•f€s P…ù@«ažR¾�¶¨`Õ€Õ€Õ€UÕ€Õ€Õ€ Õ€Y Õ€¸ø¬`ùý@Uûºn?–G[™N¦Æ sÿP€p•~’�`�[bÀZbÀbÀ¶ÿP¹¦¥Ã–Ùš��e"§À1‡À¡äˆ¿À•˜¿Àµ‡À¹¿À=�V=�»ƒÀ¼·À½wÀõ¾ÃÀØ«Àö]�b�{ 3�Ÿr�eÓr�ôn�}� 2ý#«M+ð•Ü`Áä`Ȫ'ðɯÛØ`ó#ðô²3`ý7ð­� ]P’k@gaO`†S`Å�¦Å�›k@Ñ�Ñ� ZÑ� Ñ�^ÑÐdÑÐUq\Ð}HÐÔÍÐ4pªù�ù� ù�ù�jù�ù�ù� pª    ª       ª    5¡LHpM ×6ÓVs×XVÒ…ØZÒUsÒ ûÁoÔsÒ)W®ÓYÔsÒÂÔÓ¥sÒY®Ó¡ÔsÒVª®ÒvÔ¼ØvYÔ ” êÓ sÒ ä6Ó RsÒ^þÓ¡Ô sÒjúÁU_Ô sÖ_5Ôoç’YÔ�èÓ�è6Óôoç¡Ô©ÕgWYY—YWpoÑK½ÕÑâYò×áÜâ…ÁgX[\éi“ÑÜâöáYWWêýáÜâ úÀgYZ‹]a×áðãó×álÜâ+ó[W€Üâ)>ô×áÜâ[PóêâÕ ÜâYbøðçY[•[ýá Üâ †ô×á dó˜ø 8óò[\!ò© '÷ûã8óÿ�ÁHÿSGFFE82¿0ÿôs.?” ûr`mbÿ'Ì¢xNÿ$úЦÿ|R(þÿÔª€Vÿ,Ø®ÿ„Z0ÿܲˆ^ÿ4 à¶ÿŒb8ÿäº�fÿ<è¾úûðdravrÿmfwfrggÿfu\Z\]X›\d%dh ¿\_]VY[1b„ q]^ž¢xÑ�® ¾\Y[Z¢ó¬ o ^_ZX΢YV¢5�,q ¤ Þy UeX^ZWõñ%€€�]ZV_æ¢ IÖ ¸V[]¢8Ó�IÓü +V¡¯Ü¨ŽZW^õ”Q-a*]y-�WÃZY™'•�¦-�VZÍ\õ âÒdV_;_^¡ ãù- 8/^_^Wö|P-2;¥[sK=1mdvXVVŠàIç |@me]XZ{VZIšÆFßdjvbgb}÷X]búà]V{bò;U‚~smovo^Xb[YXuv畾mfmwW¿W^V`bp;T ùi~ðmsjbW]¿bZXX[kr³¢}gio!a7msWad1<}gÿ`oX^gVWV7Ps´a=ÀîQm}*Sug[pmábes–wpf`ufvwÕeK_`Þeç`ûsù¯T ôõtüúúÖ¬‚ÿX.Úÿ°†\2ÿÞ´Šÿ`6 âÿ¸Žd:ÿæ¼’ÿh>êÿÀ–lBÿîÄšÿpFò�ÈžûpîU›ka‡xzZsš3~›k]OXW\^ï1˜Wž–ŒWZ__Çy>LnWÀ�V[j6Í[ÆG2ê�VÜ`ª‡ÕìW–ŒoV][\Óˆ Oà�ž¡e\[YYK!•`¶�¡e PЀª‡BÂW¾›kZ][W\ýˆ y¢ˆ�¡eW_YYºFOÜ�ì–[„p˧9Ô4�ì–V\\\t#$ÁX:­[G?Qc0­j¨“X\ñÍS„¨�im#oYê t "TŒˆ�i`d]XX\l˦ç}~dvws;[p%½öhoo[\\vŠ,½¾djugsZ¶Uó@V½yh]]^Zf¡Â]�¹Y]ºGsk¤-yh\]Wè7c‘ª½ä»GþÆM ä»Võ'ÍãºÞPIs ë"=yhY^\ð³¶ø-ŒÊVW˹¾€½yi[X^Çó4|ÍàË]õñúÍàÊÍV' bn]yiWY¦n' ˜]^Û\I �wÝxjAÐåGü¢Ý²Ú]FfG¸ì]yh— ZA6 Üþ½éïI ˜*í6¸@W[¡~Ô½ZëEZË síxi0Vs³ÌÝ®ê[_A60/¨ÒíâáÓòíØërHý­ê]YV³‡ÐÍ’ ^X}†3&Jí’ W\ÅÇ« ê©ü[A6Ãðýôsfï õýípû„�‰ÿuaM9ÿ%ýéÿÕÁ²£ÿ”€qbÿN:&ÿþêÖÂÿ®Ÿ��rcTE'€ÿ'ðÿÜÈ´ ÷Œx1€Q=ÿ)íÿÙųŸÿ‹wcOÿ?/ÿÿïßÏÿ¿¯Ÿ�ÿo_OÿF:.ÿõëÿßÔòÿ¡‘�qÿ_O?/ßÿûðVÿ ^ÿÿÿ VVZWÿXY[W k}ßXXjí ÷Wü WXÞì WWì VX»,Wì þàV[VVVïX ŸíY[‹[[ìe(ÔnH ì àX[Ì¢�Ë�  ‘ZW}[Ê�| ä¡_\[X  ’X.’ÿVV÷Þ’ ³ÎWX_oæYZ ¦�þaðYW]\\� ÿ÷�83‰ÎÒØ"ŸWh /îpà÷*î^_W¯\V]€>(\3L$ñ X8‰ˆ^()l(W!\(ƒpõ\&W† \±=#£#[¬*ɬ'õ—!¬$\Y[Ÿ^W[L$ã#X»ì*Vì)V÷^ì&Y^YØé8ßPL ÿV_Z\]_o\XXu0ù>2þh0^^V\_ï[øQ3]^_ÿ]VYZ[_úŠ f8WZ\Z÷ Ôy9V^ZèÕx0OÝP\_†¨0 Œ5¨1iÐD0ù ²9¹àYWÛ!f3Z[‚1Y^ß^R=3\]OXYVlÀœ0 Œ4hõ4eëÕJVZt0uJ[ãV@™.GõDiYéÐ_t0P4XCãàï]P4Z]W.«0\Y\ê0 D€C×X_\Â0�JWX–ª0�H[¬@Ð01µI…@‚@ �H5@¥VtA�H„p^¾@ù@ ZX^ß\V_ "YÿYZZY ì¤SQXë0#WXè Þ2XVY#WW_wZ PYY PX¯[^#TX_0_€¾T„R‹P?1²P5^İWu@vy3¢SŒ´ðM@Ó°WUq¼0uÃZZè0_ÃX[¼_M@¯XöP©0ïZwìXY__EXÂ0¯X/pš2ÃXwZW\s@\¯PþQW[X]]CíPh© ^`?1WP†@[Zax0RbÌP[ÏY¤PdTaW;£‘hVŸ`?1iVùAdX`0÷Q3ŸV]^^“ÑM@ ˆDÉ`¸àXˆ`ßÖjW _ó0 ÖjµakPÃTÖtZ_u@{W]2t0 wé@WW%B:x™WÐA0 ÂgXqYÒ_1 bx$�YU0 þÂ` aW X?g`~ £¦ÇÏý–g \_y§â¦Ç·­Y»_Y˨] ïð”]ôót +°þýüðàÐÿÀ°¥™ÿŽƒvkÿ`SH6ÿ$öýåij¢ý‘)o^Mÿ<+ ÷øç;Å´ÿ£’…tÿfXJ<ÿ. ÿÿóå×Éÿ»­Ÿ‘ÿƒugWÿG7'ÿ÷êÝÿÐö©ÿ™‰yiÿYI9)ÿ ùéÿÙɹ©ÿ™‰yiÿYI9)ÿ ùéÿÙɹ©ÿ™‰yiÿYI9)Ï ÛN{iu[ßWWo^k7m"ü‚]I šL`Ý6™Z&šXQ&š×0&˜\"�VšwZ VšY Všh[V™Ö0 &˜[7p¸¦šë0¦š]¦š\»¦š[¦šZ;¦šY¦š ê&˜Z²�&ª^Þ&ª]5'©\ÝVªZVªY]VªWV¨Y²�Ý –ª^ –ª]q –ªÃ0–ªZ –ªP9–ªIV¨XÂ�ºÇ]º ºZº)V¨V2¡VºI VºL`4W¹P†°ñü�_pïü�³ £·Ã £·ÜÃ0£·[ £·Z™£°ù�WÎPŸ° i¨íê±Wï± ¾õµÛXW½Ð ôµV^ËW^X ÇAÐ\uÆ\©`Y Å©VW LP À ú€;XZ ÛVÄî°Ã bÇ81bÆü°$~Ç# ~Ç0~Çx!p¨ÈÕbÅ‘àVÄÇbbÀÏÊÁûÔA@Õ Y!a]—P …ÉÆÄkÁÄÆyÁÚ$ÅŇÁ ×# ×0 ×H EØÆ@Бù_æP¢Pv `þð_V`bêµ�]Ìa_Xøãȱ†ÒÒÁ †ÑVZ‰^ÏÀ�×W‹ð[²ÙVí\I ›´Ö[Y^§|d0‚Ó[Y`Z¸Æ@ÃP‚ÓZX]¿0å öÚW‡pöÙV_\S öÕôaYê�Õš`ð_J@¡Õ`ñ[†yPšÕÔ`ð4`#petÕÔ™0WÓ0¢Ô¾NÁ\V|Ÿ]Üé@ÀX ¡ÕVZ×\VX®Ð �ÕVYN»`^W=î]¥¦è±æ À_0� pã1Ñ8 �æ?Ñ[ð#°�ÐÏêàHúN]Ö V[_\|S d0öX­Ñd0ìÄÐÐ-—²V[s¿ v Ã[†s�&Oóœ`@õ‘± ³hOó$ ÃZøÚ@XðÏZ^^ÅšqóZa0Ìß]X{ì ]Wü ’œàì ˆÀì ½ ÞL%ôs|Öì€ÿ€ýŠ ý�‚i\OÿB5(ÿôçßÚÍÀ3€¦ÿ™ŒrÿeXK>ÿ1$ ßýðãM€Éÿ¼¯¢•ÿˆ{naTG:-e€ÿùìÿßÒŵÿ¨›‹{ÿk[L=ÿ.öõé“€·™€›�ÿqcUýG§€,ÿ÷êÝÐ÷ö¹€œ�ÿ‚ucQÿ@/ ÿðßÎÿ¾­œ�ý†ß€l_RßD1$ë€~Y[W^9 ÄW—P'˜²yÒÐïÁ¾pVsfvưc VÂ0 ~ä]@ÿ0ª¤³§0V œL `V Y&q LÛè ð âÂÍZ¤ÁÔ¡ôÁYYc]\°�ãç0]]˜@ç|\àù�Y]ZÛ^[PÀ›\\íY„1\ãWY[b¼Ñ^{àÌwa\Xó�ü�àãÁYZWHFbÒWY÷`¬0ñ°ä‘Ò* Wvà[!ÀwÍ pË^\èÀ ¡Ó" Y[‹YWŒÐ \à£0ý@Yÿ^v`lZ”Ù A$\I# Ù ™±XŽê@ ac&ƒ�o%Zvi`&}&[‰''Y‰'œ` }&2ð̰&–!c$õÀ QË%Žð ×'ã ×&Èò° B!¬à [VbýoÐppu`jmç sÒ2<2ã`%à UÃ-1Ô°„48PÐÓ57VP5c1“ UÃ/0_ám7]ØéPm6Ÿ »m5[]Z-p1ÿ]_^`s>J!\ªð§4•\¯6 ¹0b$R%&0Ú3 < 1P:Gp\ý€J‹qFqÍ[@ GîਠF­Ð2ðI EY4Ah9@ù‚ß V3ÐàÃâ$NC¤ÀXIÀÀXG´p°¥ÀX@™²Å×$V&Ýà× ù‚XQ@í “á‰D½á•F¹ð�•FÙñ•F›`•F™ð!%çFœ`óFzÀóF^À…óFW“ óFOÑóEWB„0 4W˜P4V»@ 4VBZ` [W{À4VˆÀ4VB·‚W¿à4VzÀ4VBê©WS°4V#P4VÒ¹°ÐWºð$¤µ__ãêW PêV^]gXgPÐêVZ` +gAÀ+g£�êV<ðƒ43ŰüÀêVŒ` ?¤µY`°$¹`I†f6à “g‡p“gÓ “gÔ°8“gá°“gX“gx“g—À†fW_ûgw^ûg]ûg\ûgšðûgM £¶WYIwC�IwS�PIwóÐä´ý�_"� ˜u_2��zY�z„˜^2±½zC°½zY{� #ôó÷u ýð ýþèÝÌßÁ®›…ÿtcRA÷0%% ÿçÑ»¥ÿ�ycTÿD4'ý QîßÐÿÁ²£”ÿ…vgXýIo+ ÿþïàÑÿ²§œÿ‘…zo]QE9•ß#›çÿØÉº«ýœ§~odÿXE3ÿ þïàÿѳ¤ÿ•†whÿYJ;,ÿÿðÿáÒôÿ¥–‡{ocQ?£0ß ªÐl÷h@XYY�Y3Ð îÁþ€Vï^~bp ìõñXƒ! uj\* I”\$’p,–I[$‘ß0 ,�ãÀX@O ðR”P Iá X" \�û�.0«!gÓv•›@ƒ™,ƒ–^\»@¡—«!¡—X¿Ð¿™ÍP¡—¢�‘ƒ–•“ Òí–ZÈ©ñì—«! û—�Tû—É‘û—Wéð7¨Zðàû–\\ U©HU§¡ U§#¡ U§’É‘ U§A¡ ¨ðàJû–[¡¾§#¡¾§²É‘¾§N@ë©X‹û�x’Y °4uÇ  ‘ìá`Clf¡01 ‘?ÐXI!av÷  S’¤ÀïNòn°ÀÇ„”[$@/ ^µZ–Ák¶&#Az¸¤Àz·u±9k¶èðV�ª´Ru±§·‘¶·X3Е¶¶X‘ã·Þ±@¶¶0BÐ�T± \°ŽÂ^\°S‘·à« n]“V– 2Æ]ã2À‘g`\f{lºð Â<Ål Ü&ÅiàÃZ�Å`pÅXPÅà0ï! \´V\"f±¶´¶Àu±¾Æe²�ÍÈ…ÍÇu²¾Æƒ²I ûÇ… ×ÈÁúÇ’„úÇ‘¾Æ°² ÖÓóÐT×ÈÁTבIT×Þ± T×g1 Ö’ì² Ÿ×Þ± Ÿ×g1 $ Ö ÂÌ×g1 Ð4Xb@à‰52ðÒy øÕ]_¥P øÐ àöö1ÃâXX_@é�,¬'ä¿à1àû�ð(áq1àpàXV_þÅÐYZ ïcbàSçôÐbàYfêx  bà fèD°^à fá’êsábà©’ê‰ábàbà(Tâs@Ûà¥ÀAÛàçß»àü€þ…3|ØðSpo vwWYòWóPÞŒ_^\_ó Y¡š$ðd0æP.ö[¯\YZ_y @÷X¥Zx PöŠ X 0 Pð ^ †ÀÍQ3²W_lðI!\pC ‹ôZ"—ð P N Yˆð òX_ ƒ[[l Þ`ö YX¯5vY½  ¤ôstÿþ€íÞϼÿ­ž�€þ€h^K<ÿ+ ÿúáȳÿŸ�{kû[9€-ïøçWÅ´þO€’�p_ÿN=,ÿ ûêÛÿÊ·¤˜ëŒ‹j� òÿãÔŶÿ§˜‰zÿk\M>ï/ ·óÿäÕÆ·ÿ¨™Š{ÿl]N?ÿ1# ÿüïâÕÿÈ»®¡û”߀zm`¿SF9£0 ÿëY`\ Ç öè _cÇ €Nùgp p +p3î @ˆN°"Àgý@]"óP�3¡ ]ŒÑ›+p¨* ¨ À›"À� φÀÏ�  u1 Îö\ )0YV½[%ð ó$\O]_  û€YO@Í\à Ô„’2!Z]|#À;'YY^;'�Xœ`ÕZ( ;'WO[_w(À†)¸;À;&õ�^¤'Z( ¤'YY) ¤'�!;&| pà'c!‡â%â�!þ)É@;&[\^�ƒ ƒ“"1Ì!+7�!¨:9Ö0;&Z½! +6ZBc! g9$Pg7œ‘ +6%YS1 +5xÀtà,%Þ«1]ò³8\qÁ99p²9Y²9Øý@Á7ðÐý9\ ý9[ý9¶ðý9Àa ý9KPÁ0Sà�@_[YsA°ZE¥À•°Â°€¾2Ãb@XP2À �YΦÐZW\ÛàPÊ€“Gßáºp¤@ZAë±Fða¯ ."_@WÏs+QâÎCo^g[AãÝDPãˆ�Yá« fãýD3¡î$ XÿQZh` Z˜PI Z¥P ZÌPXò¡X'°®ðYÿR$nYga¡Zd� ¡ZàÉ ¡ZlpPû�vj?djmoóèRå`îR ó ±ipd7pÞà`#P†°óg¬ÝácçgVg<`$á_ZZ^°ì`Ð2ãO`±ù`’_ZYR`l~Z:pif°¾uaü€]÷_\^=±X[¥®ð�c¥ò›a Š®ð�b[Ra²›`C ¸d¶Èb ®ðÚ ðXpd AþR’\^cÐébJò`S‘[nÀHþgã[VYVZß_ *éb[»pð ’ZË^_<µ êaZpS‘YZõÐ\”�0«t”Yd³¶´Y’‚³ |xçÀ |wmÑ v–ZX’Z �¤û„±±|vlÒ –YñY’ �Žôõ  –°õðóÿæÙÌ¿ÿ²¥˜‹ÿ~o`QÿD5&ÿùêÔÿɺ«œÿ‘�qXï?&?ôÿÞÏÀ±¿¢‘wUPÿA2#ÿöçØÿɺ«œÿ�~o`ÿQB3$ÿ÷èÿÙÊ»¬ÿ�ŽpÿaRC1ÿ"õÿãÓÁ¬ÿ¢”†wÿhYJ;ÿ,ÿÿðáÒÿ´¥–ÙxÿiZOBÿ5( ÿoX`dWWz)xá\ð^+ð`\ð( �—å@–A\Ü0"—YÀ T°Z�Áe-„’Zæáp� }rPM’ÉÁV˜çÀV–[Q‘¡t˜g±t˜çÀV–Z#V\¤°¡˜R�¡˜Á±¡˜çÀV–üѰk³ã’‰[³°ì˜ZN°ì˜R�ì˜ Áì˜çÀì–½P`Ð7¨R� 7¨ªÑ7¨–qk°„íÐø0WàÅ€óá^àñwöðúà ðYwôð£`Y¨`\ dloZd YÜ0J"±za ^TÁW[ XcY^ç SahcÆ ¤ðò,²2°/!]_VV&+� ‚<#é¡[ýñ¨zÁ�ò§r0°±¡­ jØ`vXÀâ¥[_�!sƒò¤8±^?¶8D 0N¹^ñ¥V±>àN·q1{¹ÿ`l·€1 N·�!¨¹8 l·1?¶­ ‹l¶­ œÀä·v± ä·Ì!Éàä·q1l¶é"µHðà™>Ç·Ð/Ç€1°>ÇR/Ç^ l¶[’v± >Æ42 ˜ÇWÁ�§ÉT@˜Çž1 ÅÈöà $>Æa2ãÇ1>ÆÉà8s0l¶ÉàXÙ¯PLl¶›1.ׄÁñ úØðY6 VtWV^ãòZÎ`PÒ ]V×ábÎ`ZA&°VÒ â¤\YèáX�Õ Y]`ž×,bžÖp€�žÐ÷[ÀðÙb¥ g ~Ô‘À\¥ ³áÕ+àfîÐôÎ`áZûw{QР¸`¦ÐXVÐZÃg1Îc¦ÐYÐtYÜh,æVVÐXÃg ä*�6ác À¤è Oá РVðYYHpx-#Y½PrÌ0,$�â[˜éçY �áXf— öYBWlÐbB# ]€Óà/!WC!0"h$W3áT@;$W0T0©õæ¿ÂõæZÁ.+4WYYv± +0ö%`[.çä·p@,$Eò;ðMùÒ° 4ôxïÐ>ðöZ\ OZZ  zU Y]Ÿ÷'@¬÷ZŸ÷àÀ§^ }p ôsy¿ €þ„Úζû§€‰zkÿ\M>/¿ +€îÿâÓÁ¯û 9€‚sdÿUJ=0ÿ# ûÿìÝοÿ°¡’ƒÿteVGÿ8,ÿÿðáÒÿô©šï‹|y€bUÿH;.!ÿûìÿÝο°ÿœ�~oÿ`QB3ÿ$÷ÿèÙÊ»þ³€“„ufÿVA2ÿ ûê×ÿȼ§šÿ�„ymûcã€;' `ZP…@þK`[V mw a–IÐ Ža[°@—@`½z�à ÿ[_ZZY[V�×p<*p8 <<’ Zw™ |@Zkv·âíZ â=“_[�qRpqù�9°9�f¢¡bZšð£¥ÐI rZ%^*ДJ‘^šPDa­ªrZ]‚afšb$~Óv°_\p�ù¸Bv°³[^% E@šÆWWX\_\ãá´’BÿZD@ÔõRZ¹]å�` –\¤“`Ÿ©K`Zn� m]*Йã¢Z\©�"`. V#bBb&sB™. ¸`Z[MâYÔ\ÏpÎ`J‘Z_V[pEÉB``é €êð¨'*·)¯0¨'1`¨&’À’ðä'”±D©%�+ð707²±6±À_Ó 7б5YXÖqì”é0WÇqM8Ù� M7#¡M6P¹Ðs þ�`ZYha`aÿr{is)¦ #YWü°°F©#YåW8¬6’À_¨$Ýà)ÒÊ6PZP¨ ù�f1¢¸[]@”ë3°·EÓàõ0¸DnG[GZ; GYGÐGžP@ 2°À% b$°qxqxFG2 . ?‘p­ G”XXÞ"¬4X±X•p0¨$XW)ÂB°EWïàÀÎFÀ"ÎF�°À0¿F 2 ûG*Á ¸¨ ]ƒ0g¶X¤{ îÀ¿F(Ò¿EƒÀž�b$XÒÐp RW¨,bRWMQRVZ\Q "W^šÑWMQWÍá•RVY\Q »WÌàI»W,a»WMQ»Wx¿. SX !2òZW\WZ ”�` `fK@ �?‘W\G”ÞâÒ ¬4Þà’”±QgI±Qfí"¨$)ð”± ~g Ò¨ ± ßZWX]\Cqu)У¢`W¦d™$µ`*ÁTf1ap:b+ÐHG�Òbpas¦Rms«ZW^“V”W|“$ x$  v¹’+x$¡+x3¡ v¢Xx]QXxŠÙ� vX_¢ v^¢ Ì p]V_ÈÐòdV^‡[¯v¼�¯u�$Û`ùƒ_†à–^¶ð�Ïþ ôóc ëÒ¾ÿª–‡xÿiZK<¿-ó`ñþ/ĵ¦—ÿˆyj[ÿL>1$ûMýðãÿÖɼ¯ÿ¢•ˆ{¿naTg:ÿ- ÿõæ×È﹪Š~ÿi]N?ÿ0îþ›Í½­�ü¥ µ �Žÿn]L=û.ÓòÿãÔŶþᘉzkÿ\M>/ÿ T82ÿ5AE-2322ãYSJ�ñ1`\Iã¶‘[îa —Ztð™ —  —Žp  —б —¿ ”U°ß± ÓŠâm‘“Âv—ÀÂ$v—б v–Þ²£—Á+Ôw•\ß± v–± ˆ²ЗÀÁЗ)Òv–XRÁý—ÀÁv•Z)ÀJÀ¦Xv±v��Ð(ÀUVßWPÀ:§V70ÇøéÉ‘J \Z— Áw“\ÒвÀàv”s GÒ{¦W°X$Ч±ÁЧuÁ{¦"¡gÒ¸¦µÐƧ_XXYƧWK@9ƦÊ�X 󧔡é ó§„áó§W[Yƒ Ʀ’À4`/·ß¡´/·î¡Æ¥Z^С:{¥ZƒÀY Æ û\YKQ[²&|³V ÐÐp³‹¶ýç®â�°_Xõ[�ðó‹³[ZVÃ\\n а<¡EÒ[[ß^ÍÑ[[ÿ_Y__V\_`udŽÌÒZá¶Zë²�ò»Xë²aÀ‘ ñ²À~“3Yp¹Ð5.ÅÍáç>\ ^ Så– ]ž©tjPIз«³W\sðïY¯xÅVWŽÃpô’ðß¡ ,ÄžÂ"P¦ÇÆÀ¢ÉÄÇî¡,À�à[WsYÉÆ[W… ÝDÂ3ñ[V?\]Z$ˆй\ذ ×X Ö[Ç\'×û` ÖZ]CA×à Ö¨ð ÖrÊ@ Õì vÕÅ\0ƒÖ¸p‚×Y½�Ö[_‚Ö[w]©×Y¶×§W �ÖJЂÖZW[ �ÕZóЂÕZƒÀ÷ÖY1ÐæÏðµ�Ð üYéðÝ+w“VXYø`1ÂÃB 4¡ÖçâNá’'ÁWç…¡Wæp�X#æã{ᔡ„çСI„ç'Á„粡±èK@uç…¡ „æ¬� `$Þ甡 ÞçСÞç'ÁIÞç*± øK@ „æBü¢8÷”¢8÷*±Vø’K@„æG²„åÑ]�™é“ð†ö\דð —ù[£—ñ—ùXГð Ä“ðÒVW¡‚ÕB Þ�Ðòôsq_€€ÿñâÓÄÿµ¦—ˆÿyj[Lÿ=.ÿòãÔÿŶ§˜ÿ‰zk\ýM?€/ ÿóäÕÿÆ·¨™ýŠ]€l]Nÿ?0!ÿôåÖßǸ©}€‹ÿ|m^O@1"�€ÿõæØÉŸº«œ��­†ÖÿǸ©šÿ‹|kYÿG0ûë×€½¦�ÿxn^Nþë€.?ßèìQ¸ê�Âu?Ï«²pWX_�ຳºUÒ _],—ÀW_+&é+pVœpýa[w;�dppT=`½ Îg�$s6Á |u “qÒ6Á ªu“V^k][tØ][sI؈-u“öŸ`[bQ‘XY\oG '¯b: ‘À_A!1 F <¡M% F ‘“_[e°U�øj&ã1ìx'S‘÷j%X\^HÜ�–'4¡–'…¡– ê7!_#@bÀt •SXã_4ÃJÀ’[E_С–$ë 'Á ó&B~â 7 ²7С 7H'Âó&çâ>7”¡>7W²ó&è�ßÀk7€æ$¥[±‰7î¡ó&Z*9±ó%Z„¢ – .á)^_à  !å$WPà‹P½ Ô7Y] â9\{ â9[ #ã8À ÐIY°I$ÐIW!Iû`HÊ@ZIN`îZI]ZI\ZI["[H(à¥IY¥IÒ ¥Iã`¥Iè‚p¥HF  ðI^ àðIî0ðIý0ðI[ðIZðIÝpðIx ÀðIÐðI©P¥H˜`äâ”W’À6à•W]V]+ •W’³W‘I³W&‘³W5‘ ³W’D‘ ³WS‘ ³Wb‘ ä —Ý1â5B¡]À+i �+i·ð¥EB¡Z�Xi„ÀXi�àÓ5B¢¡…iUp…hË`£i^»£i] £i\» £i[ £iZ £i;°£i)À£iGÀt…hF *y^*ypKÐ*y£ð*y[*y‡Z*yá +hdP8“yÜ�“yV+h‘PI —ŸQ —®Q �ïÂôóp ¯êÿÔ¾¨’ÿ|fP:ÿ$÷ÿèØÈ¸û¨5‹~qÿdUF7ÿ* ýÿîßÐÁÿ²£”…ÿvgXIÿ:+ ÿþïàÑÿ³¤•ÿ†whYÿJ;,ÿôåÿÙÊ»¬¿�‘€¡cÿSD5&ÿùäÿØÉº«ÿœ�~oÿ`Q@/ÿ üë¿ÚÉ·Õ™ÿ‡taSÿ@- ÿ�hÿ\�.Aqó=Ò7 ÉðX\ u!jFPY€6!ÉðW’1 ¼kÀðÀ\^Y^�dŸY]g –_Àu?dX[g„À.àÛ\^>áíÃ\]Ý^#”o ”]^Î6”o„Àù�]\ÿXV[Vbos9Òz’-ÿ úéØÿǶ¥”ÿƒraPÿ?. ÿûêÙÈÿ·¦•‚ÿvj^RÿF:."ÿ þòýæÍ€Ê¾±¤˜�jÝ‚ÿ/¸¬^ó€fffA–�^�þ¾£íîñ•‘öe°ê¼Y[W^ᇵ‘"¶Uì-h]{„ó$B¶W(WÈ ]o|[› ‹°@‘dQ‘ˆÊ ¯ ïB±]®P_®š�ãQ²] 0¹ ·ÊZÓX{Ó]^ ë"8Pðì±@Ó\J &H @%Þ0Ó @ ÓB¡@?&=Ó(PW&õ[f‘][Vfýo¾àVvdɬ·’u \_õ�ZíPà„&¹ À@> …$X[\Ÿ\|e”’ª"ZÛ^_ePÔ„%W_Ÿ__\m³Ì#W†z° Ø(0ÀP”&W¦ñäú)± ¤'W«]ZsPù)X”0Ð8 �áà=9Y`À äO9 P×(„°|ü¤�É%X\Z_‹”„%V@Ô “'V ­`{°¤'­0Ž0×'V1^ü€)`Æ8W[:0Å9W3À£8ÇÐ���7©�ú � Å8\Y\Y9´8àX Å8: ,$Ð HZ_@ 7aƒ@!²u ŽÓÜP %ëP‡FƒP·…"oVY£±*‹²“][ ¡�8ÔÀ ‘  …!YàVXàí@9À“3ÒAâ�°Ü@ºY_™ À�®p‡êQ ý‘A’]XWsvï‰ VsôPˆX†°vñD&P{zrß| RW]?b{ˆ–âKQV;QSUZ:Pg’PüPr!WXsmvÿzV ‚ü ‘ à^vmvò=°kÔÙP ŠUSW\SP…!«Sm÷vTVuh\Ò9@çÆVI@ ÓX^‘ ÓP4QõWNP?RzEPóR¢ñS×]XúUe\±`b< ˆ¹\˰ÅÐ (9e[B`çX H`r!s|÷bXü Y8‡S_b-àYkgcd! k`…!„awbk`º?o|VZöБ^£bg|fp�‘Œ³A·c ‘’b¸aX�Zo °i�!ÏiWXo °iŒÑ‘nb ZZ\Âൠs\Z0õVµ Dÿxmwu`vrÿpjbbmf`ÿpfu 8ýD#òú€w`þB\kvïÓ¢dmaþHð s Wo{3�”“wu…pA¡&ws…pùƒ\®‘)¡Bt”^fà�ØÁ–ZÁràT·v­’_!�dý ôófçõêÚɳ£�ÿaK5÷ ÷ÆÏ»ß§“5WÿC/÷óÝK±›ß…q]Y€9ÿ,÷øëiν¬›Šyw€ÿWF5$ÿõäÿÓ± ÿ�~m\ÿK:)ÿöåÔßò¡•pÿn]L;*÷ÍÿÕij¢ÿ‘€o^M<+å€Ýøûp… @óXXž5[V“2Ú…ZCå‹t�å‹; UæŠ\ú@—YZX `)›w])›\)›'[)› T*š¡ ~›X~˜c°° ›¤  ›[  ›\0 ›‡Y  ›U`~˜ ðZ«Ä~˜Á°l («€M°(«(«Òà~–hAZ:�`†mªW}ªÀ�Ž«W}ªP°«?à°«‚}¥à‚@9@ˆä©YÞPôªà‘»ò�®»W ô¨Yå@¹ã¨Ý�‡9¸ZªSZ¸XD± ã¨X2šAã¨*Q �¹šA‰ �¹f± ã¦,Pâð9 Z¶É²XѸʰ€öÐâ»àZ°àé %� #íå¤Þá/àZ¶íá’%�"È’Zµ�Zc__kô¥íàY_ ]UËWUÈXaÁ�wËWDÇÐ ]¿�™Ê# Z°ˆàJÀ ñ"� 3’ò0Š ÀÎÂvB` ØÇVØÅ¿W_o 7ÃWŸWYo ÿÆ‘à ¤òÆ%� À¾ÁWÃÄ |ËÀ4P^V[bhðÿk_`a Fˆ8ÖŠñEÑ JضñEÑ JÐð<Ðñ4õSóxҜۀôŠØ4õ H'óxÒâ÷ˆØH÷Sðî9ÓXu^”Ð^aa7KÕXuH0îÒÕôÜ]ðÐôØ[\ZíÓ ôØZ]íÓ 0ìZá0êXlEÑJÖ¯XuY_íÓ ôØXKXZâ €êeã lèëW[�ã ôØWVZRîÒ¼ìá¼êYfâQ¨éIðEÑ rÖW]ð¢¸õˆÖñ`õ "øY¥Y¸õ"øŠ÷ ´ÖWµø "øÌ÷ Áð¾ÁMÒð‚ ËÀó]]Y�œîð²ðó\~] _Vw ñ9b̼ð9¶"ö^ëÖ]ôseåýp €ý€ïÞÍÿ¼«š‰ÿxgVEÿ4#ÿðßÎÁý´'€–…tÿcRA0ß9€ãÿÓĵ¦ÿ—ˆxhÿXH8(÷U€èØ÷È·_€ ”ývi€8 ùíÙÅ}€ÿ�ŠvbÿN;'ßÿë×™€¯ÿ›‡s_ÿK7#÷ýéµ€Á­ÿ™…q]ÿI5! ]ùûð̬@4P_ª`zd`_ù] >KÒ*Ø^àæYwáÛ=çW\Þ[A æóŽ"XÞçZ 6óZ"W„@öPß�`€æöPó®ð†p€rÝè†ñ¢pÂX†9@‰P¦ØYXß.PxçYX0p@'¥H�$(\?'·@ L(áÆp$(Y�$(Ži\L'[ $'WW#j�°(á 5`œ(­`œ(XjD°(iœ(©ñE L 0vP!×L'/q’€$'¤;8C#Y# (8·@fa;8áÉO8õ;8÷#X9 ;8iXL r@%^kqpp¾Á^C!ga¹lÈóí3Wö0øØ€P߀Z|Wÿowufs?lwv Dº@ÄM!@%E;Â2MB%@ A<ÂQCG%@~Ý1\^v0ž…Bh/.b‡@é™@×�\ÓÀXZZÈ›°#p¾Á[‰` @kÈó¼Cçö4¼C0ÀÕI/[ZÕH\ìaÅH\› ZpYz‘%ZáY–P&Y¯0ÅH[^YÕH[^¢pö0Ã`÷^[Y,Ð^ ~ýwT]XX^ ΄V[Z]E`“WWVç_ „V _ „P¸B QÕEÈR­ tö0§A[£[~�оÁZÃÄ ËÀœA°áâ¥Cl0¿p6�ãÌgÀð hpVó ·óaY_\\×@gWv°)Á@fi W] ù¡óÏ0�^[ }¤yc @™�Âo[аÿÄX%oÔÀ ¡eàÁÅx V"¢ Xæ…Ze£ ÌgËV\Ñ}¦æbVƒ…æ‡Þ  åˆÞ \{¸À{P{"Pp{ÀåˆÀ] e{€`e{Ze{ó0e{p% e{­ å‹]å‹÷\å€Dþôó`ê úìØÄÿ³¢‘€ÿo^M<ÿ+ üÿêÙÈ·ÿ¦•„sÿbQ@,ûCðÜÈ¿´ ŒUdÿP>,ÿòÞÍÿ¼¥‘}ÿiUA-þ{ñÝÉÿµ¡�yûg9�C1ÿ ùåÑÿ½©–‚ÿnZF2ÿ öâÿκ¦’ÿ~jXFÿ:&þüûpõðÈC�Âÿõ?d…Ë?ýôÕVZXYXÿÐâÀùèÞ†› c¼7Òñˆ@ìí…•Wâ�_¬  ë€Ý0_ VYœ¡"01j`À¡ë€6–í ÕÀúì„YX\Z]^�Pƒ“”_“ù€�Pk—Wï_\]"‘L�š^X€`“�¬¡§›!�^øX–Å”@Ïœ¢‘ã�¬ ë…‡�b‘‚"‘§˜b“îP­¬ 3«É’Ϙv“¸À[­¬ AÏ�+1†‘�¢‘ ϘŒ��’�€—¡¡¢‘�ª­ÜQ¾«!’–« ’$Ï�6’XGa@‘E•±2Q’W�ý¤VVaÀ×0û»§ 0»–B¼…À0°Ú‚X`—¹”n³y’z·¦K¨”–´¢‘§•ª¶§ ¶»!�AÀÏ•NÒ¶WÞ¼¢‘ ò½‚P Í#‘Þ¸¡¢ç€¢¸µ¢Y­ ¶¸MÃï°VË…\=Á.ËÿЀ`Ï�øj³NAH`Z_Xûv@b_VWW[VXZ| ªÉ1Wô�ºÀÚ‚WÅÀd�æ·`üì„ÓÄ\]\#fµçÅ·`ßÀ6’èkA«P2PóÛYNÜXÐÚ‚V›Â[ Á”EÕ˜ ³ÈRÛ¤ eÝY¯Vô>ÛV¼P”�Ý�P¡ÝXÙp=ÜVßWYsÌÃ_ÈíÀ§ò °;çåÐ\UYDñØ[ýÔñØåZéÔñЬÁ_WWZVV¶óÌ3ã@>é pq„b3ãûPö¥Bœ3â•ñìrèÏð9‚éÕpaç¶Hž`‚éJá ‚é[á ‚àˆ"ð # —`Ýà â·pwräm0«P]±1áRüã @ ú\] úZãúÅÐ5 øXñ6Løñ)\ú%ð\ú[ð\úYð\úÅÐ \ðÕ}À�Pæ‘‹°æ/#^½b ôs]¿ß € þ€îÝÌ»ÿ¯£—‹ÿt]I5ÿ! ùå¿Ñ½©/€�ÿmYE3ÿ!íÿÙű�ÿ‚nZFÿ2ïÿÛdzŸÿ‹wcOÿ;'ÿÿë×ïÿ›‡s_ÿK7#ÿûçÓ¿ÿ«—ƒoÿ[G3ÿ ÷ãÏÿ»§“ÿkWC/¿óûðû@2ùpìkQkéXEÑYÎ1û=ÔW^[[žÀÝ€ û“çbPUüõ ^ÇÀô ^ÙÐ+úõZì ô;�—;D+0¢Àî ô‹ü€p‹‰ªY 0 XÇ‘)à ôÛÚÐ$Ûä+ ÐìI ä4,H-*ÙÐ 0WÜô{#H(Є,˜-ÙÐ p)’Œ„) Ô,$À,+ p)ì„)I$<<+0´�À`²]¯àe_ Qk”{1X^�3!²Ð‹6£À Qˆ8{ Ò‚2°9¨4ˆ5\.PYWÇqtÌÃß5º`qì7V]Xå3TL`qHZ D(L"`qH§0æ2ÝÔWE*`qdE[›À]å0ÜP“ryLap ŒLÅÀ¡ MaqŒIžÀX!P ‘@òÓÏFaÐ ÜM¥p òð@àJ–°Vs`b‡lQÔãGbpðLW2ÌP 3]aÐ` …+VÞêÀ_Ð*ÎþRvs[p0â!þRn0Tp_AdÈ%ØqÀÓ*`å+^^»÷,]÷,\{å+]]-t9 x?Vds (…0â2 8aÀ± ‡§pÐ ‘uû pÍXš@(qìVV›YDÀ9øº°\ë û\Wß^‘$[_æú°z)%÷€ ÚZ$Y¯0ØD&Z'À¾Q'V}ó6%YïV{ m(z ùŒÈ1d#w}îŠ({˜)z î˜)u˜)rŽ˜)h˜ ú‘!awl˜)a˜ îb%u m(r Žm(hm Œ%ï îm(a m&X_^ûQ&X\{¶‰&X\£ �f8u;e9ht0æ#tn0ï e9at0ÎZ5u ‰ Z5hq e871¿8a¿75Yü`˜(%XYêðø7Zù°ø6W^Þ@yD%îä€í#G]î0HY 0FV[X¯JùÂXøUa÷^_V{ ¨ë„\^XYäÐç ðkD°À£Ü=¢J YW�Qœ(œBå�¦J]¶PL¦J? ›§I�ÙJ’�ÙJ*�ÙJ;�ðÙF‡àGBYV^Yå .Z]�à.Z\YI .ZSÀ .ZAð.ZOYY.ZÀÙ@í Ý�X^Þ€_Vw7 i ”W\Ÿ@Dp‘ •¿R}`ê…¿QV@ÙZ\W<@ÚYÁp•ÈYVPð ÙZô0 $ÙZDp ÙV@W¡QÈVŒHaó ÅøFb:Q �aj]QajAð aj�PÄajÀa`mBp w@¹c^-@•EÀ @ú°ÔaeØaV­páj\[{ájZ[ájY[ájA¶fDÀ)wEá€Z¡AÙEKq’å�TzÄ@Tz? „Tz�Tz2ñTz*� šUy;�ºxJ` À ™º¡A ?‘dôót®ûð ðÿàÐÀ°ÿ “ƒtÿeUE6û&!õæþ)ƶ«œïŒ5dTÿD5&ÿ÷æÎÿ±£“ï†k ÀH1ÿóÝÿȲ�‡ÿ|Z8*ÿìֿ̽±�—ÿ‰~qdÿWJ=0þ¡ ýðïãÖ­¼¯ÿ¢•ˆ{ÿnaTGþÁ- ÿùìßÒþ5p¸«ž‘ÿ„wj]ÿPC3$çòë÷ÄcÃP’6À+ø…Ö°�Œ!WÿXgpmô�Vü¾ùƒW__•Wß_]*>–[J—YJ—øPJ–@ J–• ~—<`J–\_ ˜—oИ—ôJ–[]¿—ú°¿—ÇY¿—@J–Z_;ó—]ó—@Ðó—TÀó—Qð)>•Y_;4§]4§ÅÀT4¦f@ 4¥V9� h§w] h§[ h§ðoPh§ÅPh¦^_©§]©§ï`©§À ©§õ04 Þ+A çk£O]_h¦•·¼+зY(¶W*¶¡�7·–7·W[*¶WêðÆirg°º!W_S0'õxµ@ „°í¢¿]e”´\Þ°’„àO÷û�7»û}|gÿo÷}W\ù°,…Ç´WаöP<`Ù°”ݶбX4Á Ù°¨QV{YVbmÿ ý+${ rgïyûzZ]ïVVxg°@Vxv½s.ÁoYV|‘@ ÃÖ'IJ2ƲoXËV|!p GÀkz÷(ųw{vvÏZu]o`øPÊìÛ³|Â]oÔP\»ËvÇYuYƒÃ vŠÉYY˜ÁYŠÀ®wÆXuXƒÃ ŠÉXŠØÀ^�ŠÀÛÐzÃW"ƒÃ ŠÉä°è²ŠÀñ²–ÓVoþ³ŸÀ!ÖVÉu–À„ ŠÀÞpd¿1ûoÿ szb gs ÿz| ]|VX÷¯kCVmfwïjmŸì ŒÐ"lë\`Qð¹ødm s ab‘ë£_VbmŒÐû;`W¨ÐhuvªÐ@ç "¸SÂÓfv‰ÓÚ«ÐÓÐÂÃÐb¥mªÑÓÐÞ_Åà§z-4_…à^>ª,äó'è_°@†ÁÈ­4ä!Aæ’WZó1àk_.~ÄcV^o` ¯Ðþk^ )ºŒ"]’ �k À �ú ’³è"Œ"[R’ �*Z0 8D""øj"ÓåZ’iê£@‘QèYvj?VYfÇŠ$JñèÖPRö’ 2õY¥ t©X…V‰X_ _© �ø" Y\GM¾ù£@Íø\ép½Íð:#ôs�¿€þ€óæÙÌÿ¿²¥˜ÿ‹~qaÿQA1$ÿôçÿÚÍÀ³ÿ¦™ŒÿreZMï@3C€ ÿÿïâÕÿÈ»®¡ÿ”‡zmÿ`SF9ÿ,ÿøëÞÑÿÄ·ªš¿Šzjs€Mÿ@5(û{€ôéÜÿг¥ÿ•‡ykÿ]OA3¯%Ÿ€û£‚Óÿƹ¬Ÿÿ’…zjïZJ¿€*ÿóåÿ×ɹ¬ÿŸ’…xÿk^N>ÿ.806Õ9;X.À^# K”I\à # ÊZ# ú�XZ¶`s1“XZÆÀ XX X<`X…@X � Œ�°Xn±Øp?‰ |ð!žó0Vfk°¹VÏZfÄNðÅòÅXOðàWfàà©^P|ðX[VE^à!(&&J((7(F G)Ý`7 ©o|ð>NWZXk°u#ܲa'W&W_C™'bp&:@k´ÖÄP|ð€ôXV‰ð�ð© ð€ð¹~°bT�‘ù3ï ƒpÚé%¦DZ@ë#\æPUI5[¥p6[J ¥ ö&[?qö&Ym�UÛé%Y‡� 6Vü�y „´(�YX „°>{ijwÝÄX\€°Z@¼±W@ë=0ß…´xu]úh°âãWvz´tÀú‚_Ý`¡zãWç]lä­�W /â5  î7³`î7– „î6= î0n²§°á5Z9� -G›°là#’à³äNBNA&¡gIS!gHFKW%ZM°-FZ°¤Gxð�¤G2Ð-F`-Fü��-ÙFG�åGT�åF!pŽÿGYÿG`åFXr &W &WŒ &WoP&WÅPåF¢ gWÀ gWï`@gWÚ gWç åF �¨W °¨W°¨WÇÀ,HE)“0•Y9�ÜPïTK @ùWÖ±úVbùV¿  g�[ì°!f ÜPn²ÇÀÞ©ù„3° ùUX¡�È_gÐà_f[iàyg^yg¡@ygÊðyg"pygpàyg$ ygX£äàþ°×p�°gEéaY^añiá—Eé`ág’"ñg.x&„>ywNà–ü�Âkw^´lvˆ�kw\q kwŒ kwZ kwp¼�–Ý1Æw[Æw÷Y�Z%þôósúðåÉÿ­‘uiÿ^SD6ÿ' ýÿðßνÿ¬›ŠyÿhWF8ÿ*ÿôãÒ°ÿ¢—Œ�ÿrcTEÿ5& ÿüîàÒþ�¶§˜‰þ‹laWAÿ+óÿå×É»ÿ­Ÿ‘ƒÿmWL@ÿ0"ÿûïßÏïÄ·Ï™‹ÿ}o^Mÿ<. ÿûíßÑÿñž�û|ýZI8û-1ß7IJII‘\YÎï� ú2’¨ðXÛŠã\VŠ1 Ù•zãu`ÔÓ\ýsÀ\` H~'˜[`ÿ'˜ßZ`øH™Y`{GšX`Xš¯W`X�)–V�C�÷Â,�W½V:à`@w³\‹]0„´·�œ`Þ¾—X\4\å\Z°0(“[^Y]ä úê–Xô‘•ù˜Wô‘ù�³“[Ö&°£H•[ãR‚ù—W±°U0ù—Úà¿°µù¥Y*0ä¿•Yä j§N`j ¼±Êð¯0ŒÐ ŒÐn±‚`;Ïs#[^\Êð0dœ¢„@[bã¶agzà(%�œ¢+0 È €ðÀ1?[Yo2l³Ð`Q È¡�¡§0 Bðè ìߢŠP´w³[WVŸ b ³é¤È acMÐ%�ߢÉ𑽤ØÐà€ðƱ[}0Wï[ oZ¦°l^F¶WWZS³Z°²_@4w°-à~¶^% U0�´ ¡šš¶YÃ`Ø·¯°Yº0¶¶ìaj¤Ë°Ý1j ¾¡Ñ[WY+à÷ýF³WW\7W\S³mŸÓV Âê³ñ¶àô�S´nÆ ]ÃÀ£17`Ù�§p0¯3Z]‘ �áSî¡¢à#ãn²ÀvÈ @N‡ÇX vÀ\ÂV‘Y �\Â_ä j¤¸ÀŠP 4ÆÁ‘À¿ÇÉð• ¿Æ^h` ¿Æ}ÍÆ\_X 0È£1Ô¡«0¯04áY\—YZ 6�áY7\V_@°O3Ö˜ñ¥A×[gqA×Z@° ØAЃÑPÎoÔX³ ‰™ã"P]·Yò«Â �ÖÑYV^;[¤P 9ôà¯Ð• ¯Ð ¯Ð³Ñ¡ÔZuˆ ¿×VXÖ�ٯВÒ_6`&¹¿2èÐ eÅY]~0t3àIP=ö$Y\Zðš´$àÖ�U0 ÒB`ô‘‘ ù”:ᢠDè¢ DçYVn0@&“:àãQ�Z@xêë0\ zåE Z @xçE¢™çU¡0wç²U£\ ƒñYc@ üûÐ5ÒW]^i+`üÕWb0ùààä”JPêçYõàùç80(ùà£1xð«0¯0© 0P„Ô3!|ðÀ1Xº@ïÃZò_Vÿdfhwjs{v·ðcýêsóYzð~õ[Z•[nø[zðšýŽø ~ð© P%OD ÷fôst×€‚áÿÖËÀ²ß§•�€gÿYH7&ÿöåÿÔõ§™‹~s5€ÿ[N?0ÿ ûíÿßÓòÿ¡�‚qÿ`OA3ÿ#óÿãÓóÿ£–ˆ|ÿn`RD÷6(ƒ€ þÿðâÕÆÿºªšŒÿ~pbSý<½÷àÿɽ°¦ÿšŽu\ÿC/ÿúëÜÍÿ¾¯ ‘ƒugXá€:+üð}3¹vbW[o4�y¸õVo üÇ`\^å ü‘v`ËXXçPo½uj`W¡Ë& “ub1 m°†Û“L’ý`T¯ béP…þwÃua^XYl·_€\^‰Ö�[\‰�Z]r‰�`l�®ë`lÉVÔü�£1uçý ooujpÿhvs`ppfïu  Œ“oi]ßZ]o\Y[`ÕG #0"  ýõ szb gÿs w ]|VV�Ð\2+lA$ I-åkA$b À1mfwï }#bwɇ £1m™PSclYß`W¹|#kvÔ {dpåP[VVj?v|θ'ì°ªÅ$Í-aÇ"ä-`>ô�Vçý-çQ�û(V][ 2É Üû ‘bwtÁ \Ei1bwg!àO4ÛatçQ q³at&xðk7ŠPk0%Ñ`oÀ’AMXCŽ2Ò0i—0À1_Ã` § “Û_Y´bþÿƒ_WóasÍP¿“__]D\Ðj¤_ñÀ¶pÚ”_à�XzP3ò0P $ù7¤Pù6ZÑ ù6½Qkpq³_á Ý6#X_dP?Gð?G›pùj ª2WcÌú5ãð.ðšA^sãhvI °Ð‡A]YW®éÐÀ‘FV›Aº FXÖ0^°G^ò›A°Gw°^¿`±F¸ÀSðàGèÑàGšBàGªBà@³‘ÊAºMÐLP3^\¾P4¾�(‘^ð•ûú“CQ’¢MX¢MP#S[�p bŸVV_ �³‘]K]ëÐ.ð{d]p2†g\{°†fY_AÀè”D©`ò“ ù”·a¢Áh"¢ ¤©`z° ÚP³d�ã wäød§ ™äøaE¢IwÅã wU£ \¤è+qð ÚT]̰X”ŒÐß¡]q@ u@!]þX\ ¡‘uqa0MP ’”0%�³’a •]Ó̤­ ¸u[Ù¤ ’ZYiqh½$Ò\ZWX›A Þà@~#ôór_ ÷òä Ǹý¤‡ykÿ\MC5ß'ü+Ñÿ½¢‡rÿ]G2ÿ÷æÿÕij¥ÿ—‰{jßYH7gÿôçÚ̾™�}ÿhTF8ÿ*ÿòäÖÈÿ·¦•„ýs¥TF8÷*­ÿèÿÝξ®ÿž�…wÿlaRGÿ8( ûëÜË¿@´§›�ÛÿvgYKÿ=/!ÿš™§«A³�D ZÐqq²D¡Ð ˜X@˜Ç\˜¤0˜ZÁ˜ƒ �êªÐßÿ\òWVÍfƒ ˆ"¬1Ẩ2¬0…à|–XnÞâ¬0Ð1@s“lP8|�X`ˆ@oú’ea;[Z̰ 2wÂ}a�gpm]€¯“ðE¬=ð+á²þ�«`éñÕ±bî•2pÉ�°’0à@ó6IÁ‘  b¶ÁvÓ‘®”Z è�êÌ’YÒ’ 4¥YÎ¥X‘ õ�VW?auV˜²¢j + d¥Vm¡r %ÐH$0û€À—3‘¢\À+Lœ§ZÀ« Ì’ 7Àq±¯“[P ¹ ßWVZ_e°] [duU± ’ŽWò!¦^ðË·²ò _-@1C²\ ¸KÀ ¸GZ ¸—° ¶\ܰà³ò ETMSU²OâI`¸Ýb`·’ãDã$ˆ²µâ“·?sãcò Fåp”¼°t` ¶âû�Ѹ9PѸ\ àѸ@ѸtàѸYѸXѸ¡°1@ ò Â cMPDÆràBa wà GÂdDàèW‘ˆ c� ö€ Xþÿmjwamx¿fgr`o›Àuÿ___`dÞP2W^\P� .¶³]_\` ¹Àf‘_XW¨„Bd PªÐÔÆ°âÒ7W]± âVÀ`ýZ�[mx»þÄ]XXÔœл‘X\21Ràœù&Ô`W_]y1ÀÒ;Õ\2GÚ R`FÐñÂù€py¶³oÐ2ÐÀvתÐïİðÂ0RGÔçÐA�R`WŒ¢Ø°ùòb�ÐVrPFÕÊÓ[ÓÖôH½Pö¬Ãdjmo ö€ïÄ "}|gç]o}j ø°,yãåðo}V^Z�Ÿ+#æ+àWÅ\Ùð4à"ä!}V²AJç&!}\œ°õ4àŒàxgY[zY[w{mîYâîväW\z'W\ƒäoá�à!Ïw{vv ¤âÈ-¬æXX£ã¾à¹!Åã' ¼0ÐÀ¾à"á±á&!¤â¾à7áðäààÎÑ ¾àñws0E`O4ðò@Eêw^vz\uzZu]oüÕzüo GgõÉàtð ð¸2tð!vb^j X|XVg‰F«vbCò bRò ôüoñüYYoéü}ñ üný"ôspúõ€€êÛÿ̽®Ÿÿ��rcßTE6#€ÿ úëÜÿ;¯ ÿ•Š}lÿ[J9(ÿëÝ÷Ì»K€�wÿfN4÷óe€Á¨ß—†wq€YK?/}€ÿýìÛÏÿµ¨›ÿ�€te÷VG™€)ßù£€ÚýÌ©€°¢ŠybTF½€ÿ+úÿäÓ²ÿ¤šŽ‚ÿwk`Nÿ<*oúès‘dg[�¼ÚP…pW`ba W¿Xf üõXœœ°þ ˆj  $0 ü°‘__3~r’_^] ø£v„� b}“_ YVÎpX{W‘_[ uü£^\¨q‹¤ï^[WXá Hºú“^Ý _X>°9~GÓ^Y\^ÏÐyÀ7àW^]tq_Y vbg¿Ðn2ú×\×VW gffáàçõ�]Z¨qùr s‘]YvmbÕÃ]Yx� ú“K]X¨qr "W¨q•3%V¨qr Ø¡]Û\ÊVXöd[ðr@ì »‘V X^XXÀS#KÀÞÊ_ už` ì "XPòQë3•!‚À�&W*Q5“4$ ¹'¿pÑ ¹ i"aVFàþV #\l Pˆç$jÀp]ró%Zþ%i­Püò Ì‘\[_ {bçí£1ud½%8hp%8a<Õ�%8`o%0é"Ï[^%0Ž¡\[ÁZà „¯°‘ç0(-e’\X°% ‹2‘W©�'—4^]`•6]°¿Ð% é"‚Àï�RW¿\_WY-@ …l²Ó\n ºt Ù6[×]\àÐÙ5_é[à áÐkÞrW[YÇ]_¡¯D]R@¯s‘[õ�‘·[XVƒ Dí£[½WšðXé¼£[—WYZg`UF¦ XÓU@»‘[ ZêÐÀ Ù4[Ý VW´xÙ0ˆC^\ƒ!o_`X[-ðk–Fò@X£@ç Y`¡•GÊ@@¾E„FYâŽ@X¿ÐÙ0z![X]Wr ½Bd‘�w$ø@çWZ‹À¾Avp5ÀwBWZLÀ£@ûY[+Ðgg V UWYË[½A^P¹À(PX[§¡Gµ=UX�@] ð§!8Ò(PµQ\ ï |X @rPç¡|PvB‡\\ü@p @«T[Î&@[ @;BZŽð �×¢3Q3PZ— ovç¡þ3PYßV #óCW�X_WæP@¿°€ç«Stq‚Áæ d@qVý'f�±¨ 7gž±ìp7dZ_äàVXa÷�d“Z[Ws×À¹rW­ÐÞT£^q)@£ZRÐ^0ÀÓ×�e_AœgYYWXœgXs œgv@ÉiXÉh4!Áœf^—aÖ÷f_A}wYYYwRÓa#xP�v]—a¥ AwZÃ!AwX¼ $AwÓa nxP� vX 'YŒwqŒwiqIŒwÓa¹xP�p^ÔZ[\LÀ]^!§Zì ‰0ôó@_ö^ÿòäÖ»ÿ°–}dÿL4ÿùêÛÏß²£5‡ÿyk]OA3 Gÿ÷ìáÖÿƶ¦–÷†vWVFÿ6&ÿöæÖÆß¶¦–kvÿfVF6ÿ&öß“‰6½ˆÿäxi]ÿL@1ÿ%|pÿ d`ûeì�ÀdDÿffÎ@d3¿3»@úd³‚®ÿG‰@áz$¾Á€R¸þ?úõð×ÿ£°?踥þç€�Âu?Oý¶€IRF53÷0IRüƒ2NTRÿANSISTORÿ,HEXFET ÿTO-220ZBÿAA@:20?îʃÃõ(Ó€¤pýÎ-�Ãõ¨ß�ï�52ç0ST`“ šMOS¸�*‘²ƒq=Ó‚ôŽ-�ÍÌÌC�S�c‘LùXh�x�[CBBAß;23ÿʃR¸Ý†Ó€×£ Á€Háú§’…ëñ¯�£¸�a2”Ñœ�'“ÿh³ƒ»@Ó€\�Á€®{GÁ§’{@«ÍM[˜FI�¥7ªISOLATED {“ß^DCCB�˜ÍÌ]ŒÓ€ìQ(Ù‚Ç€pãÊpãÊc ãÊV{ ãÉV_ #Ú5@#Ú]#Ú¿Ð#Úw[#ÚZ#ÚY#Ú·`#Úqà#Ú0#`ãÀPÆP QN(@! ÎÕ‰pÎÕC@9ÏÔ1àÁdÏÔúPïÐwà¨V_îË du§BvW� �$X_�$'à]÷V .ç[\ž.çZ_ .ç¶`*.æ^„0fçZ€À.æ¿Y\_ z3Wulj\Å0ó¢—áòáó!Wshv÷úb3W\wù “âYVsvmó w`ËådmœwdÐ+y"uPgþ%ásWoW[`GøeSøêÃ@ ýžñX`!ýñWÇ`9ð˜A@û\`çùRýJñV`±jð$QøêVð 9ðé⨠ñàáWƒ Ó0x£@2`vgÀ˜”ð?Ð q&#Êñ]ãÑøäÑðVýôsrõ€€ðà÷ÐÀ€ �ÿ€ueUÿE5%ÿõåÕßŵ¥-€€ÿp`P@ÿ0 ÿðàÐÀÿ° �€ßp`P›€0ÿ ðÿàÐÀ°ÿ �€pÿ`P;+ÿ ûëÿÛË»«ÿ›‹{kÿ[K;+ÿ ûëÿÛË»«ÿ›�ƒwÿk]F5ÿ*ÿöèÚÏÿ¿´¤™ÿ‰xgVÿE4#ÓÙ‚\bbaYlój`ñV__f{ÿ ^iÿ ßW[f !Ym› ÿ V^ÔàÿÞ*Xb TV_çi j`¢Y^X›V`P ¹Ez)�`y]†š üˆ0‰[Îì0¸!YY¿aur—4#Y¥XÐÕ!Y4@ÓîåPÐÒ�#YWÐÕI"Õ‰4`<ˆ0i!Y\^¹@àÀ<;PR!Y^^0a† ßov\ïTYãX_ À� é!Xd^{ò$Xd\ùðžZ$Zqe$à Ù! ãú@_~à:èô´�!¨9™)\Þ¨*[;™)ZqÈ*ç0È*WÈ*§VÈ)ÿ°:^»:]:\˜)ÆPH:êpH:wYH:X H:œàH:V ˜)�À ލ:^ ¨:Üð¨:\;¨:[¨:)@ ¨:Ôp¨:`¨:Wµ˜ IÈ)xP˜)/Ш)º?Ð]J] ]J\» ]J[ ]JZäíÐNIYàNIXî]JW]JVø¨ ÆÒ°À[4¬æ²\‘#7ô´Q:¨ Z\ ZpШ%R€Ð=Z�Ð=Z·`=Z`°Ð=Z#`=Yÿ°8ŽYÜa �Z]�Z\Ý�Z[ �ZZÁ �Zzp�ZìÐ�ZW¡ �Zž�Y�À-j^»-j]-j\K-jZµ�P-jY-jä`-jîà Yè¤ñ Y/Ð Âj^ îÂj] Âj\ ÂjÅ ÂjÕ Âj¶pÂjå Âjõ Âj0 PÆÒµ ù@¤æ¶ P ãɨ }z\ }z´ Uë²Ä­zwY­zXó¹zô ó°#ôógìþôèÜÏÿÁª“|þN7  ÿòÛİÿ£–‰|ÿocWIÿ:+ ÿôëÛÿƳž‹¿vaN-û£úéÞÿÓĵªþ±�„fPï:$Åøâÿ̶ ŒþÛdP<(ÿ츓B àÿ\XuXXYl_¿`a GÛ†Wÿ^Zl^aaU îˆ[úƒ™Xúƒ-™VZç‚ í‰5�Òü�)šæƒ =šXlíaý�×Û…aXXÕXç‚í€Ý‚W`ÿZ]Wk`wVV_kï�˜V›”-£˜YYš•¹š°•-£˜XXš•åš°•‘£˜p�›”ªš•Ôª°•£�Ý‚VWÿuVV[{bÿum`aljÏw €äY¡yžÄÒ߀ ’áÿXV[gpmû~¤[tºŠ£Z‘¢Š£Y‘¢ ± €¢º@ˆ €¢Ê@˜ˆ ñ+^]� EØ¥\¾Ð Ðç§ZM¨9àø¨á¢ç§Vò¢ ʸ^� ¸à¡ ª¸\�¸[�¬¸±ç Ú¢ZÿZXf xlc OÈ+{²ós£Ð¤ñ}¥Ú@ˆ Ý�VbÿvpgZVoiß~º¹YXªÈ±Í»XDzÍ»W²Ç²Ͱ–²V¤0 Hˆ ²àÁW˰‰¤V–ðöº@£Vñ/ ˆ <ðXVZß_WWWàZï\p ãXVR>ÑÑódÀZ?ÐlȺPlÈÊPlÈÚPlÈêPlÈøúPÑð»± | W[û^ wf\ù‚²ÇÄufdùÜú@ÄÇhuffpãÕÀÃÈÐ{pñÕÀÜ�ÕmxfýýÌm`blìèÀØÅZVâ ÙˆÂÆFÐ Ó ýÈYÑ5Ò,NÐØÅXZâÂN؃Ъ4ÓxÙYâ ‹ÙYâ3Ô NÐyà X[½iê€-Ý€7Ä’âxs�îà/± àw• âÓÿvjdjmo]£¢Wv`â åµã âÓuoêÒìðÐÊsh〠쾽ãshgDäk¿v±âdµt¤ð ¯ädtéðîiç[içZÎiçYiàÜ€WdÿpVV][V`]¿v| 5"dyp? i°bW­àwϳë`X­àÈí`Ââßíïà‚Yöé�aÂâ ý‚Øã$ýØà^q;ýïãÄRýóöè§áîäÎÄ�øëç—ðÊàfoÏ ê^ã¶ðx¼ðæà FËóAgJPiàØó%@iàûpþôskþú€€ìØÄÿ°œˆtÿ`L8$ÿúäÎÿ¸¢Œvÿ`J4ÿ öâÎÿº¦’~ÿjVB.ÿùêûÞ:ðÀ³¤ÿ—Š}sÿ_N=,þ�ïâÔÇÿº­Ÿ’ÿ…{ncïQ?•€ ï÷å¡€Á¯ÿ£˜ˆ|ÿpe[Jÿ3"÷ÿêßÐÅÿ¸«œ�ÿ„ugWÿI9._þî.#Ðÿ�‚EC ¾ÊÒ][YXT qÀÉÓòeÀ^ûKX_öû€¡]š@ý¬üY[ Y W À”³-•06)UZ0 6Z2 6üóÐôAÞcÚ¢³\÷År£\èqe\j»ùqÁ[mfw·šb%@4¢[z`ÝâÒtr/ Á ÝpµzP½›VVos/#"X[NÀûVô0lþè^\V[ oý`ÎÐ[pkæ×£[éÉ@G~³áX[WW\?!…oXÂJ çºàñ9Üe[q€¡ßZs1¢³Z\GX} `" P }¤}Zz`¹¢ ðU"f � `"Wv¯b ”"W4�] _Z`“ž*å0®,O ¸®,ZP®,W®)Vâ©! ö,Š@ö,[ ö,Yö,3® U"§W � ÁZ"Á \� eZ˜Y=r³št53à—8Y"² ¡°u2M! Œ0�3Òô0§6™@Œ4Xx«u]_pâ€3XØàé²t¡XPò¾íXWY^| }¯ÉÓXYWZ#ÀÇ ùØ¢ÿ3©@ / FA! G� ©@AG4A_@Ü�X‰ðŽ/ÀZ[ `@eX¯ ÂW­̲mB`ºpwEVo¯f3ŠW?Àv÷ jDVsvaê‚@Š£p‹à[ ‰#®G9P ¼@t¢"+¼Š£]«¢— Âe\�@‘@܃bh˜‘"t‘y–üC8‘í†üAEVRXÄ‘8‘/ZF(SFWð‘8‘XD¡8‘WX¡8‘XŠ2¡dý€ X2¡t‘T§\8‘“ZV¡R §Z%VRã\8‘WP�“­[aPZ~œ“£–[ô‰Pe!gbZ]YUlœ“7jXEd 7hKYYDfëdiZe yh ä�ˆd7h„‘œ“ 7h4‘’œ“»jDe »jZe ¤£�Ü…^å€ü�˜\Jù€]ý€z s˜KZ]s9zæƒ íˆ´Xa8‘íˆYYsH˜na8‘ uz†“íˆÄ`û‚ ˜¼q qê²yYs’ y�âýôóxõðâÿÖÆ»«ÿ›‹{kÿ[K;+ý ðàÿÐÀ° ÿ�€pcÿVF7(}5ûìÝ;ß¿°¡Aƒ÷teGG8})M üíUÿÓ·ªž“†ymgßQD8m ÿóáÿϽ«™ÿ‡wg[ýM�3'ÿôâÔÿƸªžÿ‘…whÿ\M>0ÿ#úÿíàÓÆÿ¹®¢•ÿˆyma÷P?Õu?÷MõðIRFI9530GIRƒ°ÿY[X^VXî»0 Oè¢Y[ÁY@ ñÜ“RCà,—/ÀNñÜt YZ[ï_SO“Y\\§Â�@^‘VöÀ} ¬½òYÖ0¯ÀwCø{‘g@Ü3YX]]ë÷~¢YN ‹w’q@\ ‚”q@8@®³—X³•`¯�®Í—Z�”Wy ùré2®0VY\X^÷økBYV\\ŸYK¥}°J�8  ²¡°i‘�¤È— .¢ª£— Q‘VYG_›�.¢¹£± Ð ¢°3¡³YÝ ý§“VW\]Ø L¢àn¤[¦hÀrmÂVhÀ]¥¨\ü¥ Ÿ Y_Y]\Ç^WÜà Ò¢\V/_WV_€@   ¡Äè €A ô¤i 9§ °Q‘ÿ� 0¶)0°³X¾0,¸‡W¶]@°ö‘ÿW^[_x<£�W¶^x£�Ò¢/W]W^² t»p°‘ t¶"Àn²±Ó¡V×\Zn²ª¶W%Y^²¼»p°°ØÁÿz [V{axßmaWüw[Û[oñ aCugès¨A3ÌC¢  ¥tWá\ãX?guXVià9›gucÀ>Ç(�ÖáóXg:ÀiãXg‚GÁfÆ–1ià¡•Ý3f©@À›^ÿv^Y ]ý›Álu`oýs6Ðgru~ë^^UP^_y”À^[]W¡ ³ âÑÀ\\¼ÀæÚÇZ] ÚÇYY^+ÚÇXÿ� ÚÇì »Ù^ ÚÆ[’äÁ4×óÁ4×Ñ>4×XX_ aÙJ4×WV� Ø!Ð ÚÆ Z¨ �Ù½À ã£Ñ%YQ �×kÑ�׉ÑiÙØ!ÐÚÆY\ÇÁJ»ÖY§ÑçkÑçò Ñ»Ðî^[WXkWÔHØ]v  y ¤ÀFãZY ¤À’î_b0A4ãß WnŸ @nåXYxᥠ}å^Û | må^±^ü 8@�æZ\xá ¨�æñ0yà�æXÇâª�æWÝç^ö�æ|°÷màÐ&×]\]xá}å]\¹\ömå]\[ö 8÷Zö8÷Õ ¢ 8÷õ8öWX˜â(ö#@r| (ö²±Z }àn] &\\"|0?Öò¹ðE •e¢¹ð†[° &[ÐCòû÷†ôst×€€íÿÚÇ´¡ýŽ€hUHß:,%€ÿòãÔÅÿ¶§˜‰ÿzk\Mÿ>.ßþîÞO€¾ÿ®žŽ~ÿn^N>ÿ.þ}îo€Î¾®w€ÿŽ~n^ÿN>.ÿþîÞÿÎij§ß›�ƒŸ€l`TE5«€×ñ¼˹€§ÿ—‡vfÿVL?2ÿ% ÿôèÔÃ_·¦—ç€z6 ÿbSD5ÿ& 38EñЦ�eòW0œAóV_]Wö‹�MÛÂZV^_Õ\‹�Z'�\s ;(X 1¸@1Q�ZVYÌ0QþJ¢ZVXYC4ô¢aXe ˆvPÓj®B{:�„^˜@gP\;Ài ü�*vumjdç¡G ´a`vEl!ÀÁR!Ð j@žØ] 5Q2*3®€2b0Yu#Àv’Nþp & À '÷p &WuØ ýIÀí ê1Zp_�ðù2I  °òO S ³\][W_Vw ñT$ƒ\[¡°WÀt&V@€!Íe#Y[öà(�µ!ⱚ!'�~" ¥ Õ ØAVAˆ0‹ôBYvýb[ Y^|XZgç‰ÂÐ#WX|_XVgÞ  �ÿoojpvxmÿ`wfdujpÿhvs`ppfïu  ?ÂYhXZ[v 1õ’¼0—ào®BY=hÆ0[o20Q‘¿_s\rO“_Qso0M0ž‘_¡ÀtN4b£0 d6•ðd4^Yذ2—@ŸJ£]VoY u•"Y]E•Ñ,�c@ä0C#Y\ï]\Zз¸½8¸0Ë:\Ë:[w¹Ì9Zû:wYû:Xû:‡Wû:Ìðû9lÐxKJUðKJ]¸LIÇ\{J7°{JZq{J¡À{JX {J\o {JV {IWšÐ8ëJ@ÐëJ]ëJ×�îëJ[ëJZîëJYëJX8ëJ@àëJV{I/átË9¡  ›Z] ›Z.›Z[ ›Zð ›ZÇY›ZÊ�›ZW�›Zð�Ë0i‘ãÀá¹-ÛÂ1cW :gX2×@:gè :fÐgXggò`:fLÐX,†h”fNÓÐX£g€a”fWDa:fú�Àð:fnXßiœ:` ¡×ðf(�Ëþe) w†@Ê v‡A'px‘[âÈ‘ �� ™ÙàPÀDz?!� ™·1h}Zé{|‡@Ž}[ ¡}( {|'P Ç}¥ð�ïöôózêýðâÆÿ¨ŒmQÿ3& ÿþïáÓþ+©œ��ÿreXKþ=1$ ÿýðãÖÿɼ¯£ÿ•‚rdÿVH:,þa °¢”†ÿyl_QÿB5&ÿùêÛú‹À�¦™ŒÿreXÿK>1$ÿ ýðÿãÖɼÿ¯¢•ˆÿ{n`RÿE8+¿öÍÚÿÍÀ³¦ÿ•‡ykÿVJ>2~ç�R£[jÈ@uþ‚a$pq0•=•!Ð�’%�ç[+–s`}óZvbV^‘ð—a`u ›¦¢¦ÐZÎ? rZ•cd~g•Y^[ñþÖP\h``1•¢a�ö”•¡  —è0 — �[’Ÿ°âúàÈ—Ì Õ˜Z– ”Y]‰áýgÂÖ0ZmÐþ—^ þ—êþ—×\þ•[ ÷ 2ÄÐZZ±pf”‰pѬt�ô’V\åÐéÿ”V\Uðh§x@èi¦2p‚§˜@‚§¨@‚§¡À‚§È@‚§ Ø@‚§è@‚¦ŠÐ ݧ@ÐݧPݧ(Pݧ8PݧHPݧXPݧhPݧ@àݧˆP ‚¦ ç`¶È0l·¸0àl·è0l·�l·Z ”l°B¢VFB 2³²ù l°XvbYVßd ÑʵW[wd ×¹`×·õVâ°õ¸Wd^×µbfXLD#Xapsâ…ÿX[Y||m9ãþb5Âm>À%¿[YvâMÆo;YÇmYÀAÂ¥X&‘‚�vÃZ° èf”ˆÀ÷0 t”XXYò?à ‚�F!XWs`Ÿx\al°®Æ[÷a»ÉZa½æ¼ÈYaÛÉX÷aÛÉWa,ÛÀAÂWs·À ×ÇÀI ××À ×çÀ ×Ò÷À ×Ð ÛÄW[ÿpbufd’üVreÒam`bloÐ[‘W¥Ðp»°ÜRö� -ùWYÇ0áÿ“£Ðœ©×p$©Öl0Ãב`àÄÖ…0tÝÖ÷@ê×^ê×ÄpÝÖ3� ç¥ðç�0çXçd`ç®0\ÝÐWXV9Á sÄÎfám YÄfàvÝ|ço|çm¹YÀbâV^[@…ÒJ0»°µãZð‘ f”ì�'° t�¦ãW’9Ánåäàm-À}äV�Wvùç/0ùçmëYÀómXþ'ògWvVX÷\Y��å($ý4ññ°>ðBý4ñãYð²>ý0õX`Qyð#ýŒóñ°yý0õW`•ýÃö®ñ½³ðÒôs|¿€þ€ôæØËÿ¾±¤–ÿˆ|pdÿXL?2¿% €ñÿä×ʽÿ°£–‰ÿ|obUÿH;.!ÿúíÿàÓÆ¹ÿ¬Ÿ’…ÿxk_Sÿ@-ïôák€»¨ÿ•‚o\ÿI6#ûý‹€×ı¿ž‹xŸ€SÿF9,ÿøëÿÞÑÄ·ÿª��ƒÿvi\OÿB5(½Æ�ôçÛˆ™ÿŒreïXKñ€1$÷õp¸¥?û_2‘ v”“ y08™ÐX U`êZ`0EXÝuFW_V_^˜Py¨Py¸PyÈPyØPyèPyøPy`y`y(`_6`qû¦Ðû]û‡\ûˆP_d qt=&ª�I']I'�žpI'±pI'Zn0=&YÀz0=&?pI'F`I%V`¯bêMÃ_±¡f²%¿ eÌ&…0Ø'§VØ&æ ò'^»ò'] ò'\ƒ ò'àò'(àØ ¾µ"VVW\ §@]ûpÓ__Ï�‹CrX7” e=Bàx=WW‹;X'° ž=€™Ð±=`Ä=Í`‹;¹àÁê=‡ ý=5àMXÝ#MW‹6^ëV^_2IMY�ŠJLÄ�oMØ@‚K¬1Ä\K¿1•M�»MW‰ ‚Kø1\Kì’áMY]�]F`‚@þ�ë^v°r“^vZ³LP–‘^YÃQ_Pl@Up[T¯`rVÌÐ WøPW`W`ÐW(`rVàÀW]ÝÀW\ÀW[árVAíp÷TVæeX_7`g^îg]g\gñ@gY@gOg\Nfivgvvf‚�gÐ��g�vd]ù qD¸fUPÄgYÄgXÄg³ÐÄg�ÐÄeõ^`w^Cèv u[œ ;æ ’\m 0”\m\# Ev‡ EulàEuqiÙà�[‘\^ZÃp]Àä\^Y¿ ‚�6–‘\YR ˜p€0žw#0žwÙàžpxr ^Y )ÆwŒ Ópþƒ¼O0�–ôó†¿2úó ÙÌ¿ÿ²¥˜‹ï~qWJÿ=0#ÿ üïâÿÕÈ»®ÿ¡”‡zÿm`SFÿ9,ÿøëÞÿÑÄ·ªÿ��ƒvÿi\OBÿ5(ûyçÚÍÿÀ³¦™ÿŒreÿXK>1¿$ “ðÿãÖɼÿ¯¢•ˆÿ{naTÿG:- ÿùìÿßÒŸÿ«ž‘„ÿwj]PÿC6)ÿõèÿÛÎÁ´ÿ§š�€ÿsfYLß?2$ÐÿìQ�@¤­p]V ~]¶�,—™ ,—b0,—³ €,—À ,—’@,—Ú ,•\` ‡—ô ‡—°‡—°‡—°‡—(°‡—5°‡—B°À‡—O°‡—9 ‡–‚} ¦S §` §m §z §‡ §” §¡ §® N§V¦ ‹§w^‹§]‹§Ü½à‹§[‹§YÝ‹§X‹§W=‹§V|ˆ•E ¶™À ·b0 ·¨Àx ·à¶X_ A·w^ A·] A·w\A·[A·wYA·XA· ç0A·€p¶óж·^»¶·]¶·\w{·¶[ê·wZê·Yê·ÜË@ê·W ê·Vé ê¶}À 8Ç^ î8Ç]8Ç\8ÇÁ`8ÇUP8ÇÛ`8Çè`(8dzÐêµ[¶­Ç¥@Ä­Çl@z®Æ¯àÔÇW�ÔÇVÔÆ îûÇ^ ûÇ] îûÇ\ ûÇ[ îûÇZûÇYàûÇ3@ûÇ›0ûÇVtÔÆE }×^}×w]}×\}×[y~ÖO0¾×P¾×@¾×1°¾×à¾Öû  ÿ×X°ÿ×e°ÿ×r°ÿ×ܰÿ×Zÿ×Yÿ×Xÿ×F@¾Ö°xuæÒ��çß��ç€ì��çù��ç9 �æJ°wÃæ  Ïç- Ïç: Ïçz Ïç‡ Ïç” Ïç¡ Ïç ® Ïçˆ Ïæ¿°D÷¢ D÷¯ D÷¼ D÷É D÷Ö D÷ã D÷ð D÷ý  °8fp]NpÞp ôs€_€��%�5�E�U�e�u�…�ü•�¥Š¡“…ÿwgYLÿ>1ÿ÷éÛÍÿÀ³œ…ßnW@ë€ßöõ€ÚÿÍÀ³¤÷—ˆ¹Àn_ÿRC7*ÿìÑ«Bï3W�AÏþ-[VV`gó BQ^:÷ YXviç ñ¿"6ò-2X[; ?ˆP¡[s`?OV;´?¿°uW\;Ž„\„À„V# ?xpŠ ®0Ä`îÊY ÕX HÄcNÀ ?5� ?¼øÀ³ ÿ| _{ijwÿfWY`²}'am`bl'"í-'WW!%` \D*9$` D(V!$�\`r*9#… - oáeS¦ ‘@¹ePÊW—àyzÈÁ!WyÉ&ò ÀÖ(ù� ¾¤!VZ_XAÀêîô&+VX¿±0061¯vXdŠPwru—a\!†12— …-5YfpF0 ~/3X[Vg90Ä.4ÀF7ÃF4bf Y1°D�5Þ ï:3›_]1` ƒ-•>` N©7V ©6™`Ã7w^Ã7]Ã7w\Ã7[Ã7ZÃ7Ö Ã7ã Ã7Hð Ã7ý ‚-•” EGÀfpEGÝðEGNpEG[q EGÂpEGY EGX EGþPEG `EF °ÇG%`ÇG2`ÇG?`ÇGL`ÇGY`ÇGf`ÇGs`��ÈFª /W�`/Và€IW§`IW´`IW IW[» IWZ IWY»IWXIWW»IWV/VZw_ËW^ËWw]ËW\ËW÷[ËWZ€ŽÌVYgŽpgWãgÄfY_Ý Mg^ Mg]Ý Mg\ Mg[MgZMgŒ°Mg€™°Mg¦°Mg€pfËà@ÏgͰÏgÚ°Ïgç°Ðfô°wÀwÀwÀw (Àw5Àv¿° QwOÀQw\ÀQwiÀQwvÀQwƒÀ€Qw�ÀQw�ÀQwªÀQwVÓvAÀÓw^½,�¦ ôó{¿ þôåÖÇ¿¸©š|ÿm\K:ÿ- ÿÿôåÔÅÿ¶§˜‰þAk\M@ÿ1"ÿõæÙÌ¿½®Ÿe�ÿrcTEÿ3!ÿøìÔ¿ÿ®¢–Šÿ}oU9ÿ+ÿõæ×Êÿ»¬��ÿ�rcVûI¿3$þÉ€÷èÙÊÿ»¬ •ÿŠ{pcÿVI</ÿ"ûÿîáÔÇÿº­ “¿†ylûEÿ8+oSISXW̰sÍò�] —\ —·À —ÄÀ —ÑÀÌ –ÞÀL—ëÀL— L–AÀ s—ûs—Ðs—,Ðs—9Ðs—FÐs—SÐs—À`Ðs—mÐs—zÐL•V_‡Ðõ—ïPõ—üPõ— `õ—ZËö–ÑÀ6§ª 6¦À "²±ü3ú‘Vs/$ "À ]¤ À ] 'WXwj£wXWZcà 8›§GW ¨©À0¨§YcàÝÆ©WÆ©V¨§Xcà󩦰󩳰¨ z¢'ð‚¥©ðã�‚"�¬òã�·ÀC°k¢V¢¢¨¥X±©ð_¹V‡78µÄÀP·Ð¡À}°�¶ª ™¹FP}·Y“«Q¶ý¡™· ± pÓ¹üÐ}°z¢VnÊW\÷@ ¼ÖDÀ"à Èuð ÀÃÿV[oZb`ÿhfdpxwv¿OÂXÿVWhurooÿfwljw <- Ê{ rgÖÐ2êbÁg•Ð&uvWÊ&j~`rxÄñj˜`�Àõ!Vdm ÿs ab "Œpbp}q _ °Ãê²S`JÀüÐI„Äad`Â�Åa,ÐåÆFЛÅ`a>·Áa Q5pÒ~oaÖäøÐ Ð3^\[F/`9©£9в¡AÙ¿àA×”²¨¤fÒª nÙFPn×βŒÙïÐŒÙüШ Í^Üðg@ÊaLM§pÑ¡AÕÛÑá âÙð â×ý¢é¿`ée AÐ \Ap³3Ô} ¤¡™´Aâ´ IéÀ0IçТgéá géð Içý¢”é¿`”ée °}°žÂ÷Ö‘Í3ÔZYXŠ0N $úÀ�¤VYdŠ�ÃAYø¶!Òàûæµ!Òà:XEP …�Ãq  XKÀ õq ð�´ @8øÂ·@Òå¼�[°Iå@bñMÐiù\Ði÷”²6ˆøª –ùFP–÷β´ù‹0´ùÐÖÀ–ð'ø°0»ôsië÷p!ú€€óæÙÿÌ¿²¥û˜€~qdÿWJ=0ÿìÖû¾3€�ycþ?€7  ôþYȲœ†ÿpZD.ÿìÖþ…ª”~hÿR<&ÿúäθÿ¢Œ€uÿj\N@îÁ#¯„ÚËþ¹€«›�ÿqbTEÿ6' ¿úëÜë¾ë¯å€‘PsfÿYK=/ÿ!ùÊûðÀÊ\{0@`þ[vfa&ýV1[[^X^XÎHw ""À ö,2[[û�Yz°}@ ^ “ƒ,! 8^ZVq KiZèq SîxZW_Mö”i£gW PoÊ�Vo^YÄ �X&pI �y «Ê� o�íP�@É— Éy–o\\@ö¦ªo[!oÆPw· Y©£ZÐwc 2 ½!9"2&?Y][w A&±YA&ü A&V+P±2 ö� YZ UZ‰&X“!ˆ'W“!92&ðw˜ }$z°� ¸(Zw˜ »%YwÇ(ä¸(Ò• z'×�¸(Wwã8á A$YX{ßij ¦9YW"D1I0`¡¾` Z2èò�h �¡XÌ0vüp�[\Zspûlð�oݾ{5Y{iwˆ3^�7Xzm�4�7ßWamxˆ3ܪ�6VNÀpˆ3Ñ6[×^rÞ5ç7]éu9À‰2ç7\aJÞ5 ç7[Æ0‡4 Ñ6%Z¯8 ?GÅ8 ?GÛ8• Ñ6Yñ8�GHT�G3HÑ6Xƒ8ÃG’™8ÃG¯8ÃGÅ8ðÃGÛ8µ{4W_}cfm´41Wñ8Û2V’H]WH]W3H®]UZ_[G ŸWY¬4HŸV^Wš7 ŸV]¢©X ŸVÄ0›6]P£R[_Æ1f¦DŸVð0*Ý6$g]ÿ-ùøûñé\Vsuiï Ùè\Vmíoð ç„fw+ó„fû€ò€ÿ°ÿ\VbrsµM ò\9ÐWZ$㨜 ‘0ð\]�+›\ñp-˜Žp �¾Nš[ ^�¯À\ÿV\lmVZ{{aZq�Ü�¿YVV_XËÀ× ß†”í _îðz™—X^Ò×� ­—]¥‘yÚ«˜V¤’d¾˜V\V¥‘Nä™[¥‘öšÅZ¥‘�Ó—Ÿ�W•öšX¥‘ö�\ø>¡å€ÄÀ\VZ_ÿ\X\ duZÿ\s ’=Ü� 1’@Ÿva - “@iWa }¥Yx¡‹§²‡  } ö\3ßV_lD²\ŸZZV· ‘s\]9P. ñ©¢ZÀVàÕ¦VߣÕ“€à^��!µ…“ü ðߢ °Ø¢oYWV³ RÖ¤î!²^)º\Ž)ºY)¶î ³ ÝQZ¹^Yº\iºYiºÐÐ)°þÐ\X\bX[<@@³±²#CT»°¬µ`µ²»¸`ÒD ηZ´³ »·ý°OCó¸ÂÙ³Èë´…½µW^Gb[Í1=˶±=É¥`J c˶±=ÈX’IÉ˶±‰ÉoÃä¯Ë¶±»°‘W®Ïpy×ÅWð)·Ðz Ð{ÿaxmaWþswXdPý«±[ooofwujb"X3¿mmhÒlÿ\_[a`p}r# _Ðû€ò€ß__»¾’[_cXð� ÃÐPYÚ:ŽpjÝ[ }Ðh ¿[_ \b^ý[JÀxiY`jpvA~bD¡Ò¥Ø ±Ð|1¡ÐZ¦×Y±Ð�ÔX[¦×ß×EW¥Ø±×Ë0¦×ÉÕïXZ]¦ÐVX]`+àÔ-á¥Ñ�Vt `;à(åþ0áWY`*V&æXX1âZdàRç\2ð1ã`~èsá?W^`hàôÁî,àWxg�á` hà>äã4àNà;çË0ŽGä`;àé, W¯ ãò]i0“Qûãéðð*ñ\ÿ^^Z_VZZ÷ÓöY]VZ¯ âó\"�YŸ\[Áô;ñXŸ]\ä4÷È�|ûDõ[Y_]Zú^0Uõ[X_^Vo]Wwø]Xéð­wø\XÔwøWY^]Uð@ð÷ ½óZн½óY‰ôXÿV[Y\_^ÞUð‚ôso_þ#€!€ÿõãÑ¿ÿ­œ‹zÿiXG6ÿ%òÿáп®÷�Œ3€jYÿH7*ÿ÷Þÿ˸¬ŸýŽK€iZKÿ<( ÿõá͹ÿ¥’|eÿXK>/ß y€äÿÕÆ·¨ß™Š{‰€]ÿC)õßÜ̼¡€œÿ‘�wfÿVF6) þñ¹€ÿÕÆ·«ÿž‘…yÿm]PBÿ4' wþõpÀ@dbk\i лàOç‚gu^V帣 guÀ Üq‘KguÛq!K òá ª¡gm\Vev¹�p0\gÉZÀ ZÜpä$Ûq~K ~]rá ~îbwt8•¤V ~$b¥sm ÂÜp ~_�Z/ð Rà°Nþ˜“^\\W¿ X (Òò\¿^[ ç‚^ŸX Y ª¡^ßá/ð{%(, 3*øj03 ‘^_]YëV¸ð9f£^õ4‰"\ð^WZWHC£]¦°HÖ£3\WD°ép ¨£�#ú–°š'[WXÒ©(Zá¡© Ü€[^whX‘ Xs"°¾¦àxÍ-cXVeàâ-Ù"W[§àˆü- 3ø =Ù!èÐ`ããÀî@Z]_OƒL7 „Z6UXÏpY7W Y6¥\c1 †7r1 †7Wœ¹‘¤9W Y6÷@X; Y6ZZ]ÃpY6¿WYY_h6WÃW[, ï8>¡h6VYjsðY6VD@Y0þý[WZXK®ì[VZ– L9F\ó8@`\[WÿWZW] o\?^s8‚BXBkYt o_ i@⇑[ö  ’‘´xóÁ…D‹A]³“M÷\¦MV[$ºM/ðÎMU°’M¹� ö@E¡Z, M •A\ଠXW a§àe îÿYYV]X 1¯Z30P¯° 8W†@ë 8WZ4P føÅ fQ-Q^WWöá  kUZVYòz{PýX^_tÓ^�]Xk z݆’XXZ’�ZEZ�Ð=¾“ˆà¯U ¸PþÌ!X^[[X÷Y f1Ys |{PE¡W{2p£×W`_Âq\#W` up2ÿU0ð gDPT `‘W3‘V•ñbòt*d³ 5kZ5f™[£ðj O,“^d[{hkY¿ii2–Њj` ±“¢d÷W ¬iW^^hi+`Îk0 ÎjÒ„ðÎjI�{[={ZNz§ðØŠg¯ 9v­d]Y]YóYŠe]=!ŸYXoidõ WÝ!00{w\Òà00¬±$sE1š{ø šz1‰¾{ø 00çR2íïð– ôóp¯ $"ñÿåÙÇ´û¡vaRÿC5'ÿùëÝÿÏÁ²¤ÿ•†whÿZK=.ÿ ôÿÝÈ´�¿ˆt_Y6ÿ"îÛÿŰ™„ÿo[J9ÿ(ôÿãÒÁ°ÿŸ�€tÿeVK?ÿ0$ ÿúîßÓÿĸ©�ÿŽ‚sgÿXL=1ÿ"ûÿìàÑÅÿ¶ª›Œÿ�sdUûFÛ"ÿ�Âu?Ñû^í]Y[Ål¿0}òõ€Ú0\]ÏbÒõ€XY>H�_m –‹Ð]_i ñ„ÇWuÃðþ€6•o[“B˜ú€þ€$]›W_8ÃÇòf�{ÂZ2]W^Xû°Ÿ¥PÄ ‰Pn�Œ]Ž‘y•H 9@—–‰Py•ôௗ•[¡Jy•Z¬’ —•À y•!Y ðÍ—•fÐ ô–­0œl ¦\ ô–‘’ ®¦Z y•X*!E —•Xð€E¦¢T¦W\ E¦[8T¦N�E¦‘’T¦T`E¦¬’�T¦2`y•}q:—•W§\̦„¢Û¦[̦‘’Û¦{ ̦¬’Û¦ðy�q‘9ÁVp¾ò�V[V] p†z“VX_PàÀˆ�š‘VÎíÀ9’Ñ… Q0öðx°œ°]Ù"v@æ‰s]OpÕ! ™Ñ޳½—²�¶ZW(®P°0®¸YQ ®¸—²a ®¸ÁPÎ0®·V_Q±�°‘ù±^Nð5ò¸^’À�¶®0ÂQ&È—²�”B}|ŸgZ]o}³ tð+wLÅVo}�0‡Y\LjàTÀsPa\ÀUAxÃhÁX[yÐQ \ÇàTÀ\íÀ\À�lA¤ÃhÂs0 \Àû|Û^|Kà[Yø ˜¦€C|ZÑÂ1ÛÀúïz+"xgW\óxvÚ ’ÀXV|Yö pÖ”Bw{vvœRÀV È^ÂÓVeokÂ#ÐÕYYÓ© #Ø0Po€Â8ØXEXÓ #Ø{Á€Â#аUA|Ô0ЗÂÉ9×WDYÐWÁ #اÁ¬Â ŠÕà¼Ô0ÒO@#ÐîvzY?uYoH4’çÐ?XuXoðÐ$ÿvh\^o W åRÀ àäÒà?°3XålÐæÅ�go æ¬Ð8çv’À åb\u à[IeåZuàsæÒêÒsàâbCФsæùÒ‘æ3á‘æWO[o¼ç?°‘åU`áså`$â ææ‚^â sàMüâ`á‘äu‹j`¡P !ðð� îð* 0øP¡ö_ÁovS0og`V [… Ç$ÓUð¬Ð[ðZ\  ÔkBjònñÍ\ü�xðûový[RÀ\Y[] 1d �’ó¬ÑZ[x xð&�qoi—ñœñxð]mfw ÈóÏbwÒðîa[Pîq|ôssûp×%€#‚âÿÓĵžÿ�~o^÷M@€*ÿä×ÿ̱¦ÿ›‰|ißWD4E„åÿÖı¡ÿ”‡zmÿ`SF9ÿ,üÿðäØÌý¿g€¡‹uÿ_TF:ÿ/$ÿþíÜËÿº©˜‡ýv�€TC2ÿ!ÿôÿãÒÁ²ÿ¡”‡zÿiYH7ÿ&ùÿêÛ̽ý¬Ñ€Šyh}WÝ€5$å€7YT`U!^XopL “ Wž²õT`‡`ºU0"]"Y;"X"ƒ0uVVY° ‡xïWa ˆ_ äˆM0^�:� i¸K2°Ð W¹Xr]° ¹ÛpYº[Z]]°Zç[]°‰õÒõòC_cˆAcaˆ%)‚ Ð5 q *$^°$(Xòcaˆ.@^XZYÏY4�Rm!Xat'ÇÐt òZX®0ò  5 ­Y[{bB¡ð˜$0Pbpq U ¶#~ ¿&:ðƒ  P^¥ 3ñX� ÎŠ@…ô#ZÁý+å�¿%ô *�^ ;Ë@ý(*�ß@A:wPq ¿%é0«�[ˆ\é0*�_c6Vm1àÀ…;Å¿%®ð[V]OZ L%b­4\~ 85%¶°@_ ¸7Ó1Ü?�¸6XV_¥†â$‰Pì p°^bPx°ä!îu� )C[ ôì œP^ ° FþñQ^WY{ij3eåR9@ ì µÀý^‚ bZ]Zl`ÿwVVk™ˆNF_pZDbH¬PpEïlC’N `XÕ��F¨»¢�@j!VÍñÒó^mV†`šR^V—`ÅÅF^×�ÆD¹`AÞcCWaÃÀ`nø° b^ÌAC lu#PB  VYd îWZ WY ÐWj° Vu� MW^ÝMW] T_?Z\ÍvU>0ä�PI!-`Üpž¹R^Y[Pq™Q ›µ‘^©QR`XÓxp­p]a·.ßò^`!g{ÒXXdÒWÕW/�ÒPó€ooÿjpvxm`wÿfdujphÿvs`ppfu«  }³d1Ð`̰[ÊÁ]b ÇÄ¿aV\__Á”ÿ@4aa ÇHÀj ]»__ @d’^÷Y`a·!a\9p’ý`Îp’p7 ’\?Pz Po²\¹Bå]ÆàVpla[__¶pqðÁ][Ò¡ÿovwaW[ ÿWXvw[_V^OÅd\ {”c[[ ž` Çb`pÑ`¼bt“drÕ�Ñ`laZvf–¥'ÿƒZóBÝÑ9�"]¸~`‘À„`[ñƒ\4a êD³Y[*�S`äkp’a ¦`’ñˆÁ€pÜÐWV �vdb\^°‹pò…{œ¬`B–[w$@±xv"“ «ÄRõ‚>�ÏxM�½ÏpŒ&ôóy¿&$þïÞͼÿ«š†{ÿn`RDÿ7( ÿûìÝÎÿ¿°¡’ÿƒteVÿG8)ÿöçÿØÉº©ÿ›�|kþ[UI:/ÿ$ üÿðåÙÎï­w’†ÿwi]QÿE9-!ÿ ýñÿàÒŸÿ«ž�€ûsŸXK:ÿ(õÿäÒŸÿ©š‹|ÿm^O@ÿ2$ÿñâÓÄÿµ¦šˆÿvdR@ÿ.�Âu?÷õðßL7924$�_VsV]—±„,Áä•_0š� ;0.š†¡š¥°Q›º� Q›Õ��š��ƒÀ!ëD²�æ0é ý]r™“PÀP¢™‰°¢—Xž� À™@ͰÀ™IТ� “ºRVÞÐ;Šïš[ÿ�àÙ_»Qÿ r¢ Y¿Via -ßò_{_à_1ò83£ <©Z<©.`<¦Y7¡j¨q0x©€ü`x©cx j 3 _0H< ¨£û� ²§q0 < y�Pò_X^ý°¨#A< Ô£]Û£ â¥WU[Û£ ó¦YÛ£< Ò ‘J± ¢â¥VYú£²£^vZd#íð;³ìP íð6A7u`ÝP†ÅbX²� …H"Y°˜@gƒ`°U´­Qm°j!dëa^ëÀeŒµZ`½˜¶X`˜¶W‡` ˜°6A¹°×À ü˜°ò_^^am`_bl ºC_@÷uà´ZlêÆC__ðöµ\\ñÆ ÐöµZ^‰TÅÃðeÅÎ`&Ä^j_‘Bë³^,ðA#òlEÀŽ‘ô1ò^]‰ðÎ0Æ)BkÀ@sÀgÂè�¨AsÅ=0sÀî&Ð^]Ø WZ× bsŽàtˆ’^\f_�³C À°Ä:™@»Å[ÆÅ,ð)»Åó°ÆÀ @²Âà}!VÀüÃÿ°»ÅY`ÆÀ¾Â@õÁ³ÁWZù #æ²Â_0»ÅòðÕpÆÀò[[]YÄ^� 0;r^Ó– ÜiÐ6A[Z[ª —|ÓYƒÑˆÐ[ÒÀ3ç\ ¸0­ZWW�Wž�„�C®ÒS`… ·Øæ@ÅÕ¢0ž�¶ÕÜчXãÙt¶Ð AZDB ì ­¶ ¬‘ ÅÔâ¶%éVé%çÙ‘CéW(Cér�%çWH@pés`pé %å�0­‘¶Ô¤â¶~žè@à»çMâÊé^àÊér�»çzâ÷és`÷é »àÚj"be 2 ¢^Xí`¥P 1øZ Ž1øY 1ðj"u°91ðä"_äPýZe þƒðò× M1ü0òÚ O\]¿%÷Z.Àñ ©ûj°©ùX_Wé;�Îýôsuõ'€%€îÜÿʸ¦”ÿ‚p^Lñ:!�1�A‚ ÿüîÞÏÿÀ±¢“ÿ„ufWH9*m€ÿýîßÐÿÁ²£”ÿ…vgXÿI:+ß þÑÿ³¤•‡xiZ±€ÿ<-ÿñâÓÿĵ¦˜ÿ‰zk\ÿM>/ ÿóäÿÕÆ·¨ÿ™Š{lÿ]N?0Ï!üð–’]W‚¬’5âö½�ÿœ’¹m�BX Wë ÿ\ùYCX ;Ô;&œ’kK«’ hÅ ÿ[ù]KP�I@ ¤Æ0¤‹ ¤X  ÑYÑ"àÑ1à¤æ0/Àwå1Â@).`)JP'Û I)=PI) Û�I)ê�w¢ZÙ‘ wZž¤›!¢)‡X¢)Ùð¢'ÛÏ)YÀÐ(@Ï)JТ&Ò"“&œ’9Xœ]€ 7W7ÛG9YjH8æ@…%]Y¬‘ •“Yž ‚9 Àÿ£”Š1„  9ü` 9Â@‚9.`‚9JP‚7zÛ ë9\þ¡6uXP IYë9 .ðë9��‚6" EI\s 6 [ F fÐrI=PEIê�EGS!]ŸI\ rGXp ½IJð½I|àŸIs`ŸIÄšà‚5Xžˆ� W\á EQÌp&YZ&YàР5Q¢ YwÐSW ÛqY À&WA�YìqY"àqY1à 0$`wRÇAi @¢Xœ SVB"éYÃÀ&VlBiZi°éY¿éWBS!Ci`@gÇA¢•KafÐpi½ CiÙð 5¥áOY^””¥ã¬i F ¬i*�¬gÊ‘ ÙiÛ�8Ùiê�ÙiV ¬` “ï^YY¶Á·²uX4 M� x¥]/[\XTÑ‹:y¡ðC?—UqM‘?š\q�© o{åÀ ?š[_� J?šYåÀ ›q�›Òlà› Ð �»(ôókûR@(ú&ñÞËþ ¥’lÿYF3 ÿ úçÔÿŶ«™ÿˆxiZÿH9'ÿøæÕûÃOŸ�þI[L:(ÿõæÿÕñ ÿ��o`þ‰€@1 úÿëÙʹþ£€œ�pÿaRC4ÿ%øÿéÚ˼ÿ­ž�€ÿqbSDÿòþ߀ÐÁ°žï�~á<-Þ÷€ û“H00702H–‘èð>á÷6’X][/][Vo¯±Ó¢þ�›\Y�«=£þ�[ ¢°�ú…4p� ˜¡°É �•Y¯°)˜Y]µ[� ˜Y%�DJ˜®° )˜kà� �J •Xw‘J˜»° )˜„Ú��ÎQµ’ɰÊ ˜Ww‘ �á°_Xæ£Ð07Òö�[|ü•2A† Õ   ‡) ) ë‚›!�Z{8 AL@¦{BzP¦A^¥LS@¥-c ^¥zàä`¹@¥“¡Xš©W“š§b!‹§q!¸©wЋ§VVXð÷€è¦€Vô©eô¦ŠC‹¦¦â !¹‚ !·b!?¹ƒ?¹ ’^ ˆ!°ð ·þ¡Az¹B@÷€o²a" 0¾ ’VW\U�|K”®°%�·°ú‚®°7YW%�{¸·‡�‰ظ¹�ذ¾Àž°«     ª       | ÁôW_Z^š�y “%Á±²-À!Å%� >ÈF�-Àq%Áѳ >ȇ�-ÀÒ‘%ÁÚ‘ý -ÈW\`n\ÆY^5’zŸÇ„ Ð�°À0ùÀ²±ˆØ´¥Á%�ذ¡Å4“X°ÀÖÅF� gŸÇZ5’-°ÈYWf‘ÙhÃ$Óȇ�âÈ–“°È¢ð’�ÂȨ’Óȹ�FâÈW\’°ÈÈ“ žÙÒ5’ ÂȘÂŒÙXÚÔ°ÓÅ^W(Á}.Äíб³ôÐèÕ±ôÐ_ áfÓ·´ìÑF�Æ´ìÑ Ñ´&èã±&è¹�·°€Â$^áÛ�ôؘÂ5èÞÓq·°ù±ð ¨ ÃŒï }@_­cý¡}@ú¬`"ÁX^VW=�p NÃëp¤Ôì×p Ôì³pÔìYðŸ ý= ÔìX\î3ý[FýZîYýVÔìW\œå�û[’ý¾àMx€üÆp¸üV_¸ðxó$@Â#ôsWnÿ�@)€'‚ÿâÓĵw¦—Àwh€ÿJ;,ýQ`ðáÒ߯·¨-€Šÿzm`Sÿ@.ÿõåÒÂÿ¯œŒyÿgTB/ÿ ùç÷ÔÁg€ž‹ÿ{hVF3 ý}‚ÿǸ¦”÷…s�‚@/ÿ úèÿÖǶ¤w’ƒ¯€_PÅÿ- ûêÙÏÃ×ß«œ�Ë€oÿaSE7) ÿà�ÿM13700ANþo±[VV\ ¹rÜSó[ úZƒútú‹`úZÍ`ü±]†#9W_û@YV]íˆA£Z^¥a žV“Z]e k[e• kYekó‘Z†Žð «aPœ¤Zî›�64Ý ’Y`aÖpVa¯ ÈWÑ×o±Y_\ì‘Ôï¨Äö»ÃÐÉþ“f÷4“Ðë�ý’F� ö ÓL)Ò² $=(‡�ö–“)ÓH+ %¨’ =(¹�ö—Ó+(©ÓÕ)fÓ£(˜ÂÃ)ßÒ&2‘�!D+&2•+ @#D’ -8’ ÓN9Ò² ?8‡� „-8SÓ�9#?8¹�$-8—Ó´9É’´95’‘£&葚À ´9ßÒ ¼+ ÄáY]Xl¨Äü�F»Ãü�Ò‘Bì‘@ü�ù;B" IíÃÏ”0BH! I ÓªÕãC‚Ò²hIDÑ�FSÓ$‹IeÓCI¨’ 3I¹�HÉG—Ó I©Ó Z5’‹@FFÍÓöJCCF[Vl©Ó/!EV_E#®iEoPF� FoP" Ó yPŒWÒ²yY‡�IœYSÓ yY¹�œY’—Ó‰Y©ÓfY»Ó ˆyPWU—ÃâZßÓü�æXTfPCb[avo �OdX^£0õ5CZU`[e¶A£YÀ gnxf: †fçpt`íð˜dâ�a íðó‘¼À bv¤ãYV€`Y†e Çaµ Îi=ÎgWÊ`ܤeôaWûiVáûfçpˆ yW y¢pwöa Fyi°Fy‡Víð ’Î’°aã×ëƒ: ]Á8õ¤ŒqL ô¥ŒqX�¢yV¢vX ]s Æë†ZÀy÷X÷€êþôóy *ú(òäÕÿȹª›ÿŒ}naÿRC4%ÿøéÿÚ˼­ÿž�€qûb?G6*ÿúÿîÝÑ¿ÿ­¡–ˆÿzk]OÿA4&þcûíßÓÿƹ¬Ÿÿˆyj[ÿC*úÿÚÍÀ³ÿ‘„tdÿTG7'ï ŸêÚÿͽ­�ï�€¯bSÿD5&ÿ úîáÿÖÊ¿³û¨Ë�…yÿncXMûBÙ, ¿Z15AAú€2ýNó�fV_W[ƒò‘fVÙ` �Îù°dV^‰ ”\S…”[ „”YÀÐî”X :•Vº:“a �gò‘aWV\vÁ ]“\ fg”[v0g”Zv s”Ûpf•Xv\ s”Ó f•Wv¡ s”â g`C`Eavå g”gck`YÐÚð ¦Ï’ÿ`WdZuê^³ãwuWjhð¤dT ¡Ÿà§`hð"¨jŸà¦V¡lA§2ŸàO§,¡ k_§ŸàYm o±wt ñgdßp[VYu¡ð ×Ì4C‘¡m\°š©W^c š Ca‘¡š§�X•¡K~ÃΡ¥¡„ש¶  × ½¤-°×¥Z"“£𥠰¥¡¹¶ ™º¥ °·Ñ¢ „·á¢ Q¹¶¡÷¥I°õ× œ°oojÿpvxm`wfdÿujphvsÿ`ppfu  íBbfWÇð H䢳gñ ­¶ �Òóܰþjboÿ`vwfubdurosmx’�oÕ˳`m×°ÿp`wvrxuÿbfdju‹Ö/Â_Œð@à÷àl÷1À^W\ÿgxvfb`uûujœ°šÂ[!Â'Å0ÀqÁ©À?W^_ _]OÂG^WÉðWÀLÃ^!Âirmdœ°0À6Ca\Xs` ¹®³“ÀY™Çêp™Ç �™À~›\Wo2}£·\WÊ`¸ÍÆX}ÜÆ‰ÀèÈÇhèÀ<ÑáÁal;èÈaèÀ�ÂöâÀÚÇW}¾èÇWu=×h+×WÐ<Ø�pÎ<ØVÚÀ›á\WÓÌÀ›[§½²Ò[]WŸÑ[Sh@�ÓV¤Ôh@l‘ҊЬ¥[[KåÊÐ @ÍÓ^îÊÖ] ÊÖ\ ÊÖhÊÖ·°ÊÖRpÊÖÚ`MÊÐ!�Ô{ð4àúYá[aXŽBçWOé½pOçW"Kàmé�méV1àPå@pX›èË�©é§V©çwáÇéW;ÇéV ©åÇa'XOåÖcùpt÷wá!ùW !ùÇV OàCarP]‘ ú÷ã£â ö1r jùª°j÷wáˆù‹ÐˆùwVN÷W[õ—\Vó� úx xú!�úPôs‚+€Õ)€ñ ‚Æ€¬ÿŸ��rÿcTF8ÿ*ÿñâØÌ÷½¬5€‘ÿm[I7ÿ%òÿåØË¾ÿ±¤—Šÿ}oaSÿE7)ÿ ÿñã÷ÕÇ{€«�ÿ��seÿWI;-ÿõÿçÙ˽ÿ¯¡“…ÿwi[N÷A4§€ ÿóæÙÿÌ¿²¥ߘ‹}¿€eÿYMA4ÿ)ÿüñæÚÿÏĹ®ÿ£˜‹~ÿqdWJÿ@4(.�v_X£Àmg’ =¡ �¿vø`¤þ¡²s`x\aylÏ’=[aDoZaDYaM $EÐDqÐD�%s@…M …ZI …g …Ð …RqÐ D�s‘“Us �$“sy�/“Es6�:�ÊÙ`ÓPø`Þ[ :“sW�:�þÑ�r{ rgýyËÒp_W\ÜÇ4 Z:$^X©ÐF&YF&[àD¾ p\X]]Ã0Ñ9p ¦ Dp[âe!…'—à…&W_ãk &Û¬']r¬%]Z¡Æ'W¬%v à'Z ¬%ÅZ � ú'Ìpú'\ ú'j¡û&y¡û&‹Ð¬ þm![Y^^a$H7@H7ZH7g}H6]_a€7ŠR0€7]�p€7MIj�6Z¸7g¸7Rи7€p¸6\Š0I ð7R0 ð7@ ð7’M ð7Z ð7gTð7qи6[Š0RG¦0RGMRG|1RGRÐRG€p¸6ZŠ0™¦GR0i§F¦0$ÂG@ÂGZÂGgIÂGÐ ÂGqÐ ÂF%YŠ0 WR0 W¦0I W@WMWògÂ@ˆ"V\VµjTZ�PwW\»wW[wWZ»wWYwUZ_Z^hxTW¼p½ÅVZ_ÒW^ÄÔÐÅPÅP  °V]Ïhs ÅUVñ zÅPg\ ÅP) g›PÅP gÛp¥ÅPg£ÀÅPHgyáÅPgÚ`ÅP9ÅTZ@[f� 7o|_Êðf� Àÿo|Y\]V]PÄàf� Ÿ`X¥af“ÿoiasp~/oi-¡ßlz _ x v,è’Õ`WVÙaÞ` ÿl`a^Vf‹cô`\ø` f�Ñ�ô`¯[f üfZø` ªüfXø` üfWø` èªc9rø`AtW\w¦ÏàÚÀSsVZq]…rlWXYr_uXhrnp quàz� �À q�ê $�œrÀ\$�ÒaVZXZq_tCVZ¨°¿ðÚÀœrY6 ¹³uåqWÚÀwÚôófæw`õ,*óæÙÀ£’Ä`ýb7(ÿýìÛÿʹ«ŽÿqcVÿH5  ÿøåжýœ[xfQý=iíÙŰœ�€ÿs^N?ÿ0!ÿñáÐÁײ££\­<ÿ*ôÿâо¬ÿšˆvcP=,áÿ÷äÖÃÿ°��|ÿiVC0ß øûp÷ XPÀ Z b?h Z ù›ÑØ‚ÑYÞ�§ å€ׂ]¼aÀçð°ù‡Z•W‘ � ûƒsP?¤ ¦ –Uð­_‘¯1™Y‘XC� ”ÎP,� 0�ú ”Z(�£ Äi—§Px� ”é XŠ‘i—<àx�i—Ö6  x�°˜ZY Š—Ð x�0�ùׂÝ�9Qü®±Ø€Vds ù2Àù‘Xub`¿VXX X<à ùGšaù‘WWf`_` „ùƒVÙðŒ2 ¨Ð€ø„2 þ€VÎP=¬–á= Ö‚Êñ’›àd¥[W£`�i“­Ñz£\�¢ßv§U[�¢™¨Z�¢™¨¥X�¢ ™§;”u¦Y"¤ ™¦Ùp�¢ 󨤣I 󨶣 ó¨È£™ þ ’YVbmH8h¡I°>³X1�ík![³0d¸ô€d° ú×€ïà svsZJÀ…µìòQž…´[ÈIÁ…´ZÓ®°¡Y _#Vw"Py�Á±\¤ Á±2�³Êñ~Ñ£Y[W“µ\ñÈ ïàs�´Â`ÉwYÉX�°(ѲÁÚ`�°Á±¶’‹Yfp`ã€îPOÉX»[`õ€OÅVwZ^\À ðwʃ\Y' ‰ÀNÆ�ÀJp`#‰ÇÁƒÂuǼª˜ÁÆÌ[\ÀÆÌY’qÀÆÌpÁÝ\À>ÆÌW\``Ç4ÓÒ­Á `ÀÖ�0VWÜ ‰UÕûà`Ñ©e×0 eÐÿX | ZZ_ïufd«Áowßu΋Øamxf«ÁžÑ£ÐNÀ�ÑÿW_}fmmr�{Ù+¢ÃÔ°ÑaÒÐÀÓ^0ÉÕ; ’¤ëÔßÒúÐèÕXÉÕ ÈÒÖáßÒ ÒÐ � z\Vuwe�qÎ:âiCà8âX^ßVu üe² zðËpÌ`Cà“° ]VVóuv"p^àX¿Xxg[Vz9�wÿ{mXuXoV[ösÑî‘XlYß`W ¹¾²\n)0[ZðT¨çåX³à·è‘S:¸çXù° V¸æz0öÄáY‘XWXÅÝ ðB šxmâðC°W£@ñ¤ô¨ ¨<²çð_7À\ ð6õW Aö[ðý ðXvïsmjw¯Ógr`}ooðuX__u ûd¡{`}ÿs`bl¹ÿX’Tà™ð™ð™ð™ð“WƒèåW‘ã˜à:vvY%^tPR""Ìð]–pÓöï[[Óð>ýôstõ-€+€ôåÿÒ¿®ŸÿŽ‚sgÿXH5"ÿôãý×)€»®¡ÿ”‡wdXI=.=€ÿúï÷ÜÉG€«�÷�„M€lJÿ* êÊýª}€qc×UH‹.q€ÿýîãÊý¾Ÿ£”ˆÿym^SÿG8,ÿöçýÛÁÁ±£õ—£€|aRÿE6&ÿöéÿÛÍòÿ¡�nÿ]R?1ÿ&R¸Þÿ?š™™?d¨Æk?,ú�ƒYZ9‘²à&° �ç‘Yú “YW{ijW´øƒY8’[6²¬8°]¢Yr�Z Z 1f�N¿p[…YVlÎp[’�Y£Žý[û =<³X_ {vç~“Áv{ùÈ÷‘X^_|ë¾»['–æ’Z ð�ô>ðð� ð?VXVsJô:Þ Jö²d`Í º ßy!…p^\ºa°t ³W\ZJpsÅÀ�C# ÄmâE hp�N&Û°Z%oЃ¡äN%ÎPZ ‘W[Í[W Ž‚²— WVÏZm ž ç‘W[C# B"C0• N%"s�Z%P• N%†�-Z%X\I!Z Q"ª”�ï&[I!þ&[ï&c"þ&�Z (±"8À¹%Wø"þ%º‘ Z%W2 Z6¶ f6H"! Z6�°f6c" Z6–`ùîñ…riubW‚¦ ±" ð�B"‹V^…ÑçæƒI¢�¢Hu¤Áõ3u 5"qÀ£kQA™À FXÄ' FW]À@“"W’qÀBG\À@B"#VqÁ^H>@‰À ’{ rgyJ´ÿ{ gzý×�z\^VxgÞ¦�Vo|u @oX»[|s�Ö™DZ¹]¢GÀ@oXX²A†·FYY¢Gà@ÏA_ ð·F £F oXV|"!0·FJp£EsµÑÐ@‚!0·@`ðS¢G@Qo;YV²A× "uà÷®O#Via“ýLàqP ’^&_‘u}V!0ŠPç’ß^ùƒ]]_^9 •«Q“‘C•«P”n° Ø£P\R; Á#V\ç]óP ’\\‡ZÿXLðóP“±V&G#ÆfTV N c Â#*f°N ú‚\–”ÜUc0 ð� ÷’[ãW_I0CK ^Ýõ‚fZŽgYŽ`b}#*`„d¨ Ž`\RŒ N ¢Êp$¢‘* bÁ#N$€Ð QeZ¬V •q“)x”ÜUZ©�eБ bÜ#ðe†�¤6e÷#ðe”�ÐeX’"¤ áe-3ovÞ †N ÷¤T8ñ¸�Œ @=¥´t‘= bS3 ðezb0N "ôópÿ.ý,íâ×ÿÌ»ª™ÿˆwfUÿD3  ÿõâÖÿǸ©šÿ‰xgUÿC1 ÿûêàÍß»©–[sÿaP>+ÿõâÿ÷‡uuP>ÿ,óßâÑÀ�ž�€qb›ÿD5&ý)Ðê×Éÿº«œ�÷~o¿C4ÿ%ûwìݼп°Ûÿ’ƒxlÿaTH<ÿ2!ÿŸHá‚@ú€òn `ÿhY_db Ó´£ó�Wø�aþˆX¿_dÔ²^×sO#]Ïð²Å+“\4P5�÷‘][Ÿd fò9  ÈN�,’s� 5�ç‘\ow 2º#\^Y’Pç Z%òv“WUf€–]ð•]WðpS°�™£à•Z^\(À;h¼˜WÊ—XñYÊ� !\Z `®‘³K\Zy’ Ê–ˆ’§eZŠ‘g¦w §1YKñ§Ø°! !Ìû�7Ài¼•Pî\©Y\©W\¥YX`HÀ!¥‘¡Ãð˜§ÒXñ�Q¢X' §ö-\XLPYlaaga YPs’W[:¡•WÂàÃðÊ•n0,¡Œæ§¸p!¥‹ ðȕݠð "¶V Y¡!¥9±tÐ@¶YJñÊ•óà7À ^¹† ^·Å‘y�ï�\\Wˆ#0\’±ªœ·T ­¸w ¾»>𭸙) à»* œ° Á�².Ñà\u&�?ë3Äl P@Ê^ Ð+ÀÇ¢ô3ÄZà+ÊZu]MÊZläPPË]ºÐÑ(·S{ÅZà+ÊYu|ùÊYlY ™ËqYºÐ=Êà@u+Ê6ŽàÊXlj°âËÏXu=ÊË0u}+ÊWu[ À쎳4Ó ÊWl[s +À@Øl +Û�[uÀ@Ç‹ uÓ+ÛZàNÛVls=Ê Pu+Àγ\ . ï�[g5pð_xp‹ì2ÞÓ;1 èÛb0 úÜj°èÛ:Š` ìZ ì� ìèÐÚÒ`a‹ VaçQVæAPaqþƒ[àó1avà†B![^pª°Ê”ŽàVrÆ� –æX°Y¥ç*‰‘è”[M` 3ð‘[ÀAP q š 5ÏC[.ñr‡Ãï¡.ð q ¶Tï¡à2Ø0¶P˜ÚÒ“°f/!÷ˆHœ´'ñª1÷TB÷Tÿ°døwuû• dø:™—ûXœ°?Z[q»óò C5»óù0Ïð]5õ] q ¶Pþôsv /ú€-‚ÞÏÀÿ´¨œ�ÿ‚tcRÿA0ÿöêÞÿÒÆº®ï¢–5‚k_ÿSG;/ÿ# ÿòâÒÃÿ³¤—Šï}pW€VHû9]€þc€çÙÊ»ÿ­Ÿ‘‚ÿtfXJÿ=0"ïò�€ÒÂÿ²¢’‚ûr‘€RB4ÿ*óÿáϼª¿˜…s³€N¿<*¿€õÿãÒÀ®ÿœ‰weÿR@. �@,ë2™Wö0ìÄAø pÀ!C H0‚À ¦PL3LÀ Bø Ð �Xl B&ÑJRWÀ 8Ñ›0¶ð ï€�›'Àé‰\ÐâXœRÂl‰9À^›^l vWKÁé‰Ð›I ;+‘щР›Br ;+&Ò‰LÀ ›’¶Ð;+ÈÑRBV†Ë@`Óýâ0³0¹þÎÒ³0çDAWû W‰‘µ öû[G¡Z ãŽ09W ?6ä0 ` ÜóPR7W _5YY_:1 o:.°o6A±à¥(04X¢p¤` Ÿ5W\X:1ä°9ò ¿5‹V^92Ï:K Ï6W…]:1ï:Àà¿0$1žá)C’„BþŠDwXdPýRBvoZ]oûH8EYYo¾EFXXoEFW¿VoGbvÿjdjmo¶O£vh@AW8Dhú\AŒFW[o ´Œ@rBh,Q¨E`ºxB ~E`\^¥@IŠ8D`\A Ô@ºC±BüÔ@\Qobv7þ*“mbwþbfwvW\v38CRP TŸV^vWŠ`|PQ‘fw S·bwt¿ñ…‚cb ka]иcdP?àjWÀˆ°jW©�jPQRðZX÷ Y`2VbV_`YXipCܧP«Q¢T[bV«QÑ¡U[ªRÏP~³S[VX_  PœQ‘äÐ ŠðSñ[ªÅc_>ñª6“_£pé©d}`f^îf]f\ Îf[ `D‘_WËY]½pî‚_`Xw¿rrm é�c_åW˰e`bV_q e,á�f] �f\�fÁð�fêà�fÇ��f�få��f p` hbµµ1|stY œ´$q€ò xÚ²x¢òÉ xü²œ°Q¡_?[\\ �"2gqòë` opžq^__}d^_^‰v]Ïà€s p`Õq#^^Ûà.°\¤^JÀÿ� ¼vï¢ \ Ç¡Y0Ùåííòºôólðêõð0.îÛÿɶ¤’ÿ€n\I¿7%é�îÿÜÊ·¥ÿ“�n\ÿJ8%ÿÿèÝÑÿÀ¯£’ÿ‡wl`¿PC6oÿúïäÿÖȽ±ÿ¦“ˆ}ÿm^S>ÿ)ÿéÿÔ¿ª•û€«gU>ÿ- ñÿ×É»¯ï¡“ÇymÿZH6#ÿÿîÜÿ˹¦”ÿ‚p^Kÿ9'3ðù{ÇD@�È‘ ï€à‡¦Á²Ç$›ËÀïŠÜšïÁIšÑ K›Ðoœ'lš8Ñ‘vÂDÖ š[Ñ  ï€»˜8 ¦›ÐìœlCïŠ#¦›LÀÉ›’¶Ð«î!ï€ÆàWë[[À¦[¥ZÜf $1[Z@ Tbrx Y@ €¦Xàù € ]¡ZZ\ü`$1ZX{ij«•©¤V±¡¶ Öº¢_áð\µ0WX½çP"ƧZòѩޠÂZ`hY_db ÓwâÚþ¢W±a ¸X_dÔü¢IYw0ØàU°ñ;ø|2°÷1_m«Ðòv`aBWYZ±¡ß–X±VÿYW[wp^YßX}o³YEx¶ ‚¶¥0yµ‚¶×VXyµ ¬·WÕ\z´ ‚°°³VZz°}± ¬·µ°z´• ì¸Wøµ‚¶V0VZz´ÇX["Å‚°ÜW±êP‰‰áWX7^hWËà³ïRQÀ _°ÞCÂ\ãâWX0:ÐuÀ1”ð Án°!0ukÃ<`fÀ]¡UÁ“«[ÃT`uÀ$1WZ\p`CÛWY¾ÁU³WY“uÄàfÀðàWWW`vr«ÄÏWd3,0ÿÞMÂV`VXÀðƒŒAË`Î^R+ठ …›$ÕYßà0ÐÒ@PõgÀ „bWV\wgõúRSÐ#ÐÒª#Ð MÐÒì`ø#ÐPÒkÑ ¹AnÄâí Ü0�Ö+p ŒÐi�ÖrðŒÐ@~r`í @¾ÐÒßàb-²6Æp[_7· “ûâý?ru^X0ïÙï\^ÿÜ[\©0ú^ ^ª ^`ó*^ª„R\— \*Þ\% ó*Äp|] R[u\ 3[laÐ[\~�ó*ë[\¢� RZu]+ Zê�éó*ü‚ RYu_Ó ‘[ûl_S!‘û_2 œ?x0u Iû4�¤£ûF‘ Rð ÷Ú ôsj÷W 1€/‚Ü €ÿ·¥“|ÿeTC2ÿ$úåл¦’*ÀýhCB6(ÿ ùçÿÔ°Ÿÿ�|jWÿE3!ÿüêØÆ_³¡�w€j�ßF4#—ÿöëàÕÿÈ»®¡ÿ“…wißZLC³%ý¹õäÓÿ± �ý~³€\K:÷)ÕöåÿÔò¡ÿ�n]ÿL;*ÿ÷d\�c2Aöº‘× YCЊ¼êå \*õ œP‰éå ~°[qT` Qœfb.»`9W`•J^GÐ ²P]¼¼`l\[J[¢gPD rPÐlYg[l|À 2T`l»`ë)ÿQ• lVhôyJ9VŠô› ÃÀ�÷Ñô½ô|À¨õA` ÒW"Y(6Ñž*\¬0Þž*[Y �)VZ‰Yt`Ÿ)YŠ ž*` lu XxB àRýX´°Y_h .ô R2V¼P/®èª`³_‹±{ZpBW_Wh¼ cZÀ<2 ± G0~<2V\Yd6f¶°d6˰ G0êÁö`y Ž7o Ž7ÈpŽ7°‹ G0W±Ð@ 3ZÓ^] 2Ã4”°Ø5¹pØ0»‘^µ ´õ1²Iÿ9&±+°à�^væcE“(DŽàF4JB à 3@ò�LE1 3J’ ñjK ðEJê� $WJCò3J‘³K"�IEJ3‘ WJE’3J’X‘üKk�EJ|‘DüK��E@ZG ’3J"³‘3@ñ3Á”W[×�¡i[  W[ú��\lDZ¢ W[¡Ô\'lÁ[U¡ 3@ƒÁj0@ �£]°¢¢[£í]H` t ³]_ªÛÐW†pÜn³]йM{ƒ³]l1z´Ug«V[øµU`ndZ%{³jh÷¶ jh ÆI UfÈ ½g5Ç ½g€…Ðε½gÙ ¤µU`u¡\"¾¢ m°»“´ ´&q¦²b1xA+´\ßY[_Y8¶ôMTuYZâq;³B´$äƒ{áš�᚟áIïŠdB š ñšzñôóbå 2ý0ïÞÍÿ¼«š‰ÿxgVEÿ4#ÿðßν¬›Šy/ÿWF5$ÿñàßϾ­& ‹ÿziXGÿ6%ÿòáп®�Œ{iÿYH7&ÿóâÿÑÀ¯žÿ�|kVÿA, ßùáÉ¥™�qYAµÿùáÉÿ±™�iwQAÓüûpÿ®G‰@ô�\UpXV*`Ù€[~† [][Tq^؆WY^å�·ê…Èrp× :´ìÐÕƒX\Ôwq:´ ìÐ èYûVZ£Ñ(þ2‘XY]VZ\3�u@˜WL–aV—tpK”½ ¼dÀHr–c”½ †—wp\L“®50E ˜[¬–¨¶šK”50¶šY¬– жšX¬–¶šc”50¶– �Ú–G†–7¡#¥X†�1’v £Ñ>•–ÑL‘e ©�°·”vª²ÀÁ±‡­¡¥0†­~¢X¶­~¢ÇÐΠçpO�Îê0%éÁì ZWï ¥0“VW^þ±¡¢¦¼/” ²W°,·°¢°.º&°%°°ç[�x#WJ$`²Šiºg!diºx!Vj¹ð 1j¸’!­ºŠ­º›$­ºÐ­º½­ºÎ†­µX]˜ÇПÂX0ÐÒÂÆÐöåÁò¡ôNÂ\ÇÐWÊ ÀÑ÷ IǰWÊYWS WÊ1À ô[Ú€ñ[¡q µÁX^ ÈÒµÁDÐyÅ´ÁV^HEÐßÊàßʹÀßÊõZ�p$àÉY^$#ÚÊÀ#ØÂ½È/™ÎÈ@Âì­ÇQÂdxÚdÀxÚ ÀFØ’ÿ¡xÚ—ÀxÚ1À¬È‡ %ÎȘ R`õøÒ'W ßÈï é "ëdÐê[�`ïÙtÁIê "ê°êãa"êú‘õZ†!‡ÀÒ�³áBÁªéò¡ÌêdÀ„Ìê À »éƒâÌê—À$Ìê1Àõ Ÿ;ñ"1ÀÒ;ñ¾0 ô;ð’ò¡ eúdÀ eú À$eú°eú—Àeú1ÀIeøéÒ TøúÒõï ôspÿ¯3€1†Áÿµ©�’ÿ†{nPÿ2øÛÿÐÁ²£ÿ’ƒtgÿXI:'ÿîÛÿȵ¢�û|S€VD1ÿ øåûÒg€¬™†¿s`Nw€ ÿ øçÖÿÅ´£–û‰�€qdWÿJ=0#ÿ üïÿâÕÈ»ÿ®¡–‡ÿyk]Oþ«€3% ÿûíßѿõ§¹€‹ÿ}oaSÿE7)ÿ ÿ33 ï^1[[FR0¿W2ò0ÐúXƒ ¾ûW¥0±0}Z_\2/^Z 2]à02ï\V 2[_= 2Z] 2½)2‰ 2Wcà2ùVS0Y_Yx¾…Ѿ]V¾¼ýÁ¾[\¾Z�Z½¿{a'X§V'<`'V|Õ0&X_V J'O^_ J'v°  \`˜°Â$`¡Î2ÝX uù¢ZY¿Z²�#Xξ0R�%+ ¸Þ�$Y›%W_'Zµ%Þ1 Ï&äE Ï&\c Ï&ü€ Ï&zí° Ï&YYÏ&FYFW'NH6�\@ C]‡Y V]vÀi[§A |]Y �]k�¢]†Ðti[¨±È]Z Û]@0î]ã�m&°iP Ö€{X\à�Ï)c�[²áz7fÔðùE`ú¡XYup· )cV\OaHEe.àâ E`é¡X8u±Apw!êðV„ ‹=)bW_W^%±Edð¦`@a¯…"W\ï£aVvÿXWWpWoW÷iWÔ`[` óxÊmÚdX` ¼åmØfW` p<}s\` }wÏV` pú¡V`¿ss3…"V_qÖ�fá`c¾c�tttÀI@Œt;�–vË @PŒtÛЮpé¡V˜5 ¡4DÁq½2�`ÎvÏ1Ô0¯tôócÉ€ë42òäÿÖȺ¬ÿž�ƒvÿVE8+ÿ ÿèÿѺ£�ûx5VE/ÿ óÿéÝÐÂÿ³¤—Š¿}pcSIÿ</"ÿûîáÿÔǺ­ï “iyjû\o@3&ÿ ëÑ·ÿ�ƒiOÿ5çÿͳ™¿eK1½ýÿãɯ•û{×G-¯óûpeìËöïY³À/àCàûØ‚&°à€>@YvÿfujfvXßñò�fvûa[@oog[Vpg‰šUY— ›X— 4�~“`gs—Dˆ —™@@— ‚›"B˜™Oà—¶›˜ Ð�^–ti˜“à—‘ ¶›(•d�«B˜J—` ›R«(˜R«¦B˜ˆ‡­_•h—`’s›R©ŽšÔ«B˜D ©ÂšR©Â—d�º©’Üš"»ø˜<»(˜¤"»,¨<»B˜ ¦aÕv-» ò�W_ßoo|_oõ€mgÿgxvjphÿws é¾ÀxgW\z7pwŸ{mXXocÀ¹Ðîý�"vZd {PÄXd Ànïuj`f Ëû$4Àö ;Ç* ;À*aÌ4Àß0;À‘!u\Ÿ^\ ÃmÀZ§ tÆfPÃtÄZï]\sÅZ][€Å[A §ÇŸP�ÅSYY sÅY�€Å†-@ÛÇ0�Å-` €Åy! דpןê�ÅW €ÅW[[; 6×Z6ןpž)ÖV\6Ö×P îj×Zj×Yô�À*ai(Àa¼ À”Ö`O.Ãd�jmfoþж#¶Ññ½Ðvq¶Ð Fžv"_ ¥ÌÀà^—_W]¹`½`ãÒ]µ[zaïÕV^êÑÝ(c^VZkbûäÑ[YWßZX[Z·à VŠEã^˜5¡49á½2ÈÜtJâÏ1Ô0ù1^Ÿ]W\W0aþ!o[içY^xá›·gä\V×�D ©>fåI[F D^JA^F$DÅàY²ãòB;@‘!]Zgp÷ –©#]Yo|ó a`>A]Y X·Z]]õà]Ã\v•Á ¶#\Z\ŒP|%ðFñ\ ^] µq÷îÚ±X[zgÿ]VVxgX[x÷vsZMðoXV|öz ÖÃ[oow¯eó .÷Íü\YFÀú\WÇ]‹÷ Aú__{ú^]úz£Àú\Yúy[«`ú^ôsW`Øõp5€3†ý¼€œŒ|ÿl\L<÷,%€üìÿÜ̼¬ÿœ„tdÿL<1'ýA€ñçÛ}Ï�жž‡W€ÿYB1 ÿýçÖ÷¶žÓ t_ßJ5 ‹€ö÷áÌ‘€¢�ÿxcN9ÿ$úåÿ릑ÿ|gR=ÿ(þéßÔ¿ª»€€ÿkVA,_íûðÖ€f…`]YC!àB Ç gVÚ KÑ ð úYÐï W[X êWéð.W[V' D×P HAImQCQ —ª,Q¬W± X\ß_W_V>òÐöØ\ZËðVWY·°íXV.à ݯ(Y_ÔP]{ ìY[W%1e )X¯ðÓ` ?,núW?,YXü)ß`”@–@)Š!Ý`Ó,x .P“,W]ªü½-Wü)VfËð\_ @ç,Y_ø 9ç,æÐY=Ž!Uç,W 1 ;=YÀÕP=Wø (ZVœ…ð�A 4|;ãÁ4�=ðÁ¤=YY+¹=’ÍA Î=HAã=Q ’ø;[40PfLQ J"LZ�A7MéQLM²Q"G[@VÖÀWç øàÉWaïwboZÀw`bŸi Ú²’Hgov^YéÐsg•ñ£@‚`‘CžA£@à‘B²¸G£@ñ�XVñ^"ððÆBÂuËsR"NâpVèq eãPˆnàÍtä|à2Yˆä{Ç1TX\VWâæÉ¾ãPWõÐâäXá§àŽB|QáåXky ¾àW`YWY^ °6`vp`08À.²SV‡^ ¼Vˆ@¼P“`YgWàÐÆAV8àÎåþßUµpVŸ]“~áõRVä|P£!`×QVìàÐÀ`Y /àª� Ö€YWò uù�B0cWXZ?[\9`,g,êðQfV]4a9fja’Fgaj·ptbfò \Ï E›hMм›hM0©j+©jº ¹gäPà@ЩgÀpgÐùj[Fúiõ0ùjýzý€ùjÇW©eÑÞŽYz[Yzn`YzX³Yz·pD’VZ…0F`¯tåÀ9`Õ‚×_^WÅPRá‡Zá PÕ…{ à€ýôócàU64ë Áÿ—‚mXÿC.ÿïÚŰÿ›†q\ÿG2ÿóÞ˸¥’lWwF3] úcÿÔÁ®›ÿˆubOÿ<)ÿõçÙËÿ½¯¡”ÿ~hR@ÿ. øÿæÕĶÿ¨šŒ~ÿpbYFÿ5%ÿóâÒÂÿ²¢’‚ÿhXH8_(øûp�A·ZV2a\*àV¥V×À™`ЇZÛ†ÈåŠF`Ý„™cÓ�[]B5` ¹c”< %˜Z5`wÚ7˜W E�èk�’àZ•Z 6—Y_5`äF–y�,@ð—W[%qã�™VpŸ—V\5`¯šûП�¾Æ@ZbW^ùÐV÷ 2RZ\[ÔO‘U=á–WèQµ’ç� `8Àà�£ aVᔆ@ü’E &£å ¢  �Ñ€)`Æqº�W¦FpQ¥ÄP]¨\]¨B�]¨M0]¨Œ0]¦É1ÅBª iQ\ Ò@‰Ê1`S°ÇX5Ãk€t°ÈÂÆZ^Y±pM]n`'ÖË»à&èÌ`ˆPúÍ ÛÛÀ Ý€”3Ýí°FÝ< ÛhçË(²lÝ0’ÝŒ0¥Ý/àø ÐÈ  \\^V_ã‚ÖÑWð_œàܸà_ àÜê_+ íX½àÜSW_ 4í[½Ií¥VÜÐ ^í>ñ‚\ù^L ˆí\^YÆ�í\^zðÁÚÐ$ÇíâÁ²íõÁñíÒdÜíÑýWð0ý’Ÿ1ý´1ZýÉ1 ÊEýYÚP„ý”°$™ý.ÑoýAÑ®ýÞ1½ ØðŽ$ôsy¿7€5þ€ðàÐÀÿ° �€ÿpfO8ÿ! ùèÿ×ɾ±ÿ¤—Š}ÿpcWHÿ9,ÿðÛÐûÅ=€©ŸŒÿyfS@¿-j°ô¿èÜÑW€±ÿ¤•†zÿj^NBû6g€îïã×s„£–ÿŠznbÿVI7+ÿùÿëßÓÇÿ»¯£—ÿ‹siÿ]QE9ï-!©€üû﯀λ©û–»€o]Jÿ6#ÿõ(@{Ö Zû^èP^Wlçº5¢Vl¡`]~`pX[l80�ó l7Tæ»$eVu� \Xlú€J D\#±oئP¸PŒ¤RZ]…_ø@ް³Põ@80v•Þ]ø@éöÀèõìBP%Z_%ÚPu$BÑ2%‘Wú€2%üP2 ×PZ™]Ñ ê\_Ý�2$\Êíà l%\LÀl%[^‹ l%Z¿ l%Ê0„l%K l%ªÁl%´°Æ2$[_802 ÆpZ[ÿ^v`a!þÚ$obr4Î#®àÌ%][_`Í$‰\ýPÌ%[# 2 [[ ~PZu‹°ü@ÒË[ZаéZ@)tÍ$µ0O5Xö`õþ‘[XYhuf} ¬±RZDâõ< o[sêZ_à0TõÛ!Zà"æ$Zî"Íô$Z]rÀ$ZZh@õ!`ZK0 uR+ZZ7QYøeZ^Z\Èq”°êp”Ü3p[_]_v ô'uYs¦r1%`bh]c$P:G X'v]`­.È uA[ VàÞâBƒ!%Œ Û ƒ ŒAŒ%b0L©'åp» ¸)Y ©&W…\Ò Ö)ÅPŒ '"Zæì@Bú ]^½6\\6[HŠp6Ì06ÙP6OX_6Ùà6úŒ05Y__Éj6=P¡bo0^]Sv6+@ƒ6] pÞv6\[ƒ6\Y{v6[W v6¼Yqv6Y^ Þ7V÷ „5X\ v0€"Y¯ Œ%R@o@aFß PPô%YWÊpôv6”v5X_\½LF^ZLF]Ï\[’BlAXiLF¥ LF[_v0žMEZ]LF@`bLFX"pLFÄPÿ2$3XV0ƒ5XVŠpÛGʲƒ0Î@!VXßW_W]q;vüF[WYüàõ0Éu\¥ "P'"W_7YÎEW^CVy]`CV\^ CVï[\ CVZZ= CVYX „W?0æƒ5WX CVW_=CVV]Î@û¿VVit2$Vú0ÎEV^_@ÞWf0ƒ0€"”@±Œ%$Õ@±f,Bô%kóÑP¸V _\? _X{ gÓ8evuÐùV^

–2¥1>–) >– 3>– v—ù >�'!]]ovë –3]c01|‹Ò¥�YVs`øG™®”ç`¸“¿—*¶•¿–WÉ•¿�¢“b±¿– ¸“˜ù•¢ä@¬–F¸“§Xó¬�¤W0.­•][¸“¿�­Ï\Z �h¢X¡p¥Ë@ �y\~ Œˆ�¤˜� ¢tˆ\�à~d/˜¼¤WÄ£¥ †Í¦V_Å¢Î0Í ¸[ßgpWWUAŒxõ©•º^^»GZ°yú£Wä@á 7¼ °ž![Z\¿p`‘¬[ßY´k³Xét°û[ÁP td9³~ ˆ’´ ˜Z`¢ˆl² µ€! 00‡!»~#00"Ù¶(¤ `ÙµX†"÷·Í’÷¶ñ²Ùµ ±$Ç¢ä$Æ,BÙ°­ZW™ÊµcºÚ´c¤kÆ,BkÀyZ~ Œˆ�Ä ˜�À¢¬¿´Ú0x€³YYPh‹°ËÂ0‹´YZ ˆçÄ ˜çÀ¢Ùˆž!YYd±Ø•rÐd`oÓX{Sij��/ÔW7Ñ <ЭYË@ÈÀMÒ'ÈÀyËX\ˆgÔ È˜gТ˜'!XYöð CXWhWFÚ0ZÙÒÀ rÕ’� ‚Õ ª§PÈÀ¸XÎ CdöÔÃúT`dÑ]W\Zü[ ×à[][fêW˜0�0Ç r$XP+p_ÿQÿÀ XsFæEW° TàyhÖˆzÔ˜ŠÖªW�µùüc±ivmjÿdfv{jwbidsdwi°€!WÒ³ßÉæà’׿"ñ²×àyèÆˆúĉ˜ Ö˜¸ÐmËdi0§šc0ôŠ:ø`6ð:ðËâRò"Ð]óÐ"×å+AYÀ×à­>pµ­20µûr± ­Wµhî�öWV¥Ç÷ ø ×$ôslM0õ;€9€òäÙÌÀ²€ý—€q^Kÿ6' ÿýïáÔÿÅ·¨šÿ‹}n_ÿPA2#ÿøêÿÛη¢ß�yW]€ÿ ôßÊ÷¶­q€‹zÿiXG6ÿ%òÿáп®ÿ�Œ{jýY©7&õ©€â­€¸¤÷�z»€PEw6'Å€ ùÙÿÝÐöÿ©œ�‚ÿuhWF÷5$é€ÍÌÿl@\�"@ÿdR¸þ?,¾¸\V]YY¾Qó ›âõV_aN¶õJQ10¨‡W"Š@"ç0¤"' \c0x ~%"\ô±0YÀcY]ÞbY\|Z¡|MPbÁP £\; £Z £ñ Øb€ hV«pr)|aÝW«pæÚ«X§‘ öűpöãðÚ1öV^Ú0Y æu \ è0c÷@Òó®àF‘VF�d3p@$YF‘G!R%¦ÀZ�ÀM!g(œï°a"lüA‚#Wý;@g'V‡ Á`«pR%ø °!C 3P‘ òÿZ^WXZ\ Ãô¢Õ%�pà+ŽP®à+Wà)W@ Ž;[ ;I@;WÓà%·ÐX+p)í^2VLPh:‚ 9h:Í0j8XÀÉh:QÐh:S0ìxi4ý -@Z Äá$JÖ1Vb@ ß:l  ß:�[" ›5ç2€Qß:’ ß8XW½@Hb0¾@}Å5HV^Y4I_V\YgJZ@PÔgJ*Ðß0óû¡üB}|gZ]ûo}–0W +Ü rªBVo}+p\ ·GYYÃC—@·GÀ ¯@^°ð ·GV°¯@‚ñÁ ·@áýCÃA¦Ñl·@¾p[zÂxg ÷xvsÂoYV|. Ö$Sñ-WLR—oX[?QDP¦Aw¿{vvYYo±B!ÉUãmQëAðBzXQbRzPá–TVoSùzPÔQwXw÷PúRvhZu]oW1“ÏPÓP=>”vhXX.ÐåVŸWVo×PËRbu\^o Vf2àQgqPgîQ}gW[ofK\u `fÑR`jÚRbàQfYu*`i jf)afXuïPi jfîQfWuH`q `•‘¹`o jfÚGaje`uÊ`IÞ1“uj`^å°#"ìe\ô°øgëÐø`ͱÌñ`;Àø`Zqov~÷og`\Y]ÔqÇ‚r)pÐo\Y$à; dµóoi]îP2sïÕ'q szÿb gs z| Ý]‹q \#Ómfßw 2’ks±g@Qø`•‘gup–ødguqø`‘g2p’uq"ªó€p+…sbŒrÆpÔtz>ÀÆp ôó| <ý:ïÞÍÿ¼«š�€sgZß5&%âÿÕÈ»®¡”‡zf ÿ`SF;÷.!GúÿíàÓÆÿº«œŒÿ~p`Pÿ@0 ÿðàÐÿÀ° �ÿ€p`PÿF/ÿõæÇ½±¥™Š�ÿocWKÿ?3'ÿ÷ëÿßÓÇ»ÿ¯£—‹ÿsg[ßOB5µÿõæÿØÉ»­ÿŸ‘ƒvÿfV@*ÿ M7818C{TL”2XÐÀß‹�W¿aZ^W X�h°—�ð%”ü-�évWXoY[Ïi�D•;PXiwŒù’\owp£Hùbi�qp•a_^V`~–\ˆ�U ~–Zˆ� ~–Xˆ�Ù p�Úoa;À`U ~–Wˆ� ¶—Vˆ�ùp�X_xwhû ²V_w\mCÀ²õ‘0ý•ZU0|/Òõ�WWmü�ôò“°ð"¥^ov; –®r\_]@ï�0?£S@H¥@±U¥u@Ž`¦X`¦ `¥Z÷^ H¥Z] î�¦\�¦[�¦ �¦�ð�¦šð�¦±ð��¦œpH¥x `¥… àü¦î ü¦ @ü¦Y Àü¦ˆàü¦0`¥B0vIþ“™ð`¥°ð` þÚ_V^svmóÀ÷o±dmô¬²ë°sç]\^bAÑ;òCÄó@MÉP !]Ê MÉA@}ÊP–MÄ\[FÃ�Ê´@çÉŸÇP �É4pð¤¾ÈA@�ÉS0 ½ÅZ‚Fà �ÅÒó@ýÉP  L Ù4pñþÈA@ Ùø™Á½Às‘\Wo[÷^Ó[]{ißj³E’[Wÿo`Y^ièÉREqr± w´X^håWôa³Q³ŽÐBµe’Xj€cXJwÀ×\�ÁÖZAà"ÁÖW“ ÁÕ¬ô×Ý €ô×í0ô×´@o5!B05¥VXïà=À¶Òáæf‘?ÿ o0ðÔZæxgçWðgç Ðgç0Z欛ç\›çZ›ç©0Zå;á=Às‘À°N!ÜæfÑkÐPâáÜå_ œp�=À¹‘Q. =À�\žÁX YZ(Áý“ØØ(Áépæ´ÓVußvf®=£Vl÷\@äV`v~ça¼RfñzNm÷smðò^ ÅVް"�ðèðYó§ø[[õxºûS@À¾òZwïpý!ôs{õ=€;€ñâÿÖÇ»¯ÿ£—‹ÿjUH;." '€ÿìÜ;ߤ‹v?€Rý=G€ ûÿðãÕÊÿ½¯¢•ÿˆ{naTG:-m€ÿùáÔǺ­}€ÿ“†ylÿ_RE8ÿ+ÿ÷êÝÐÿö©œÿ�‚uh[NA4¯€ÿ óÿæÙÌ¿ÿ²¦šŽÿ�ui]ýNÕ€6*ÿøâÌÿ¶ Štÿ^TA1!?èF�O^\[+ÀAN°*Áœp[YÔ1Õ9r^³ð'� ÷ µ¬±]}ûò’fvaZ]ÿYoogZYpg¯öMXX #“MÚ0XaQ@*X w`Ua¬’m£�¹— üws�]`V[_hó-�þ^hû¯zq]__XÇ '$P#&Vy # ¹�]_\_r±9†³A X #%†0� V&V# f�]_[o|K$’t #%Ô #%4°¶n$^]D  b“r]¿^[]_¬&\H¥à¬&¶ð¬&…@¬&’@°¬&ê°¬& àÕa­$Z7 6^^‹6]É@6ý0¤6t  6@P 6Yä±°6XHp6W[é 6¥ð5Y_]{‰6^[‰6iÀ‰6¼Ð‰6ñ‰6RŒ ‰6°‰6XêðL‰6X°`Š54ðþ5ßX_Z F^X“ F� F°° $ FGp F°  F(±¤ FP Fép FVW^þ5W+ �Fzô`�F]^�FO\\�F\ þ0ý‘BZ[YxfÿhoovwaCO¼RÔA0à�FYа½_ŽEX_VW§]VްUVï__ 'V^]E 'V]°'V¯Ð 'VÒ€  'VŽp'VY^[T]Zw { ^q!\vfa! ý¶rÓ•ð’][1sî*áͰ…rk]ZsÒªTZWw ‘{ ºQ°ÂPŠð]mY<[ =@êVUZôQ ùXWôQ ùP>>!XWZ``êÀ³Ðþ&p]W]VW\drlWV@æ@þ·W\^$á3’Wÿ[_]_djlåd:a æ@-b[_\*5`j9b æ@QcØ@Ùf†�Z`ufKpPì`qSaZV„eamx¸Qðæ@>!WYZr±Èw³±b‚° w°F�]W7W|h:a;ˆòÏbW`!Q²Ï`ê𑹫S—m�Â#—¹ö`sXödV[il)°¢s\Ó1‘ù´Ò.q+0›dcðXgVW_¾°  CtùX“ð¢ñW_fk8"VP+K#¶èñ$#VWQ o=ntXn‘t¥ð�œv0Àœp>!Añ4ð ÑÂ�uñдvV¢p èÃpÒtA Ãprýôó}õ><ïÜÿ˺«œÿ’„vhÿZL>0ÿóÿåÖɺÿ¬ž�‚ÿtfX?ÿ0!ÿôåÖÇÿ¸©š‹ÿ|m^Oÿ@1"ÿöçØýÉw«œ�ÿ~o`SÿF5( ýîß›ÿ´¥–‡÷zm³@SFÿ9,ÿøëÞÿÑÄ·¨ÿšŒ~qÿdWJ=ÿ0# ÿüëáÊÿ¾²¦šŽ‚vjñÿRF:.ÿ"Uÿ�O0Y°Äý’O0˜à–ˆÙà•°'–¿à'–Y'–0à'–ÚÀü“i0€×Ðc–hÐc–u c•X°tc•¤à “–\ c•³ `ûðÂ^Zö±\Òû¶À­°^© pì‰ñ`@V’ðoE)r‡@+ Mã‡AаIq÷•°@¦½@¦’\ ¦� ¦ü@ $¦ P ¦P ¦Ž°™  `Ð^X½ÐpØ "q Uá �z¥YW¨�‡ Ñ‘M°MáØ�ì‘5W!¤W_£Ñ±¦’µ ±¦Â ±¦¶ð¤±¦Ü ±¦@°±¦X`ð±¦ö!±¦ àp²¤%^7 &¶0&¶*0I&¶70&¶D0&¶âð&°Ö°é°Y_&÷ þv·×Ðý„¸@Ž’¹Y’°)³^0 Êt·^° ’· 8̹y0̹Z̹ªÀ$°¶k0 &¶x0 &°Û‘„Àâ“锢РÐ&µ]º’0 tµ]_X°’µUÁ²à\É•ð\ÉË@\Él�p\Æ^\°ü™Èw\§É[ §É@à§É*ЧÀCß0@Ʋ)Ð@ÆIà&° MÆZWÁ §ÆШ�ÙíÀÙZÙ'`§Æ:}²ZÙ\ZÙÐ ØZÙ¿à§Å\_DZû—Ø\¥Ùõà¥Ù80.¥ÙY ¥×[ÑáÙ¨�áÙíÀáÙHÐáÙ'`¥Ðì{`P|Œ` amílâ“§l£W_æ¤àoz£LáW†Sæ\^ó�y¤hàD0JoæY;�‡¤„àXfÐ΋èZ•¤ü Åù>Àê“VoowñÂPw±3ð`bW)*`n¡VMâSäÙá'W àæjáîçb@Yàæ‚¡‡ ‡¤%V¡â÷éð÷‰@5öWú0hl£WVUöV@c÷Æ!@PÏ“8!„³`9V²b�ò‘ ™˜ðÛ‘bÀ<Ù2Úb[Z<>&/\[@A»ô×W^@Aû” ôssë?€=€ôè¾ €Ï÷€Ÿÿ“‡{oÿcWK?ÿ3'ÿùæ×þ/€·¥“�ÿo]K9ÿ-ÿóäÕËÿ¼¦�„ÿwfUDÿ4#ÿçͳ™ÿeK?ÿ.ÿóçÙÍÿÁµ¤޾¡€fR:¯€ÿõéÝþ»‚­”cëIÑ€1Õ€þãëÞÑÄÿ·ª��ûƒï€i\OÿB5(ÿK@,nq _^\o@ª÷’Pô=û‰@ û[+ I £@ °@ [\<HÐ�!$ü@ PP©#PûZ0Pd—=P—JP©˜’WP¾dP¾Q0$¾~P¾> _@µa‘ºcøÅ`J ŸP_ÿ]]`mo—6’_]U@W"$ ènð* ”`_S`Y[ÿxolafWW}w�"!éV �B"vH#WqP -`V VYWB"�gf P {`r!X}^B!$afXXÕ`‘P º�r!WA%U@ @P ñ=pÝàBp!!\ü@[èr_\ PÊ&gVÊ ![_¥Q÷–ä#^v`aï!ò$obr¿æ![{\ZA!` xîSONÐA1VÙ@­o` `ùÀ'062[_24 P B4{^V1zvS7{]]1af P LP`E1\Zs3} P 6!![X p uÊðM`Д34 ¢6Ìp.yr_[QVW°º0!Zê"ð †!!Z_¤ð* É2ø"Jþ$Z2 0É2\!ñ Û�š`XYW.Ëp EXjðó�›ÿ "Y^�p6$Y[^UPVOpjðF¿p#9KbpJDRIÓ[^qJDRIZ4¼qJDRIYæqJDµRF�BV\IEºIYèðæñ­@•ðR@ AgY]Â�z CŸWX[WX'BDV‡\X[à@ü @Ì`_JcP_A,@R[ãB—W1X]B1X\øR,@ñVZup‘�P!!£q McOpïXww>¡W`C‘|3„Týa�P“PÈõKB-@Qsô@X\f³à}ÄVZd ÒWÏXbàP‘svúû 4u³iXde`�`Ëac_a}ðúðSf÷P3 þ�b\Z`X[_ s ‘'iV4`Õ 8iW3a8eW]*Td\f\0dnjEa©niVb8eVAel8`n¡^Y1 ÒRʼ`[ù!þ Ìñ]\ؾ�Ž �=²"^\Ÿ^dpqPébW�o|qPÑ‘³À+¡Ð’Á‘r¸ c•] ÑÀ vàÀc• ²à;sw[DvZDv¥p•\±phvÌp•á Ý€vZ €vYÝ €vX €vWù �ì‘ZZud£”¨�–ö°–À�ïÀôó…0¯@>óÿæÙÌ¿ÿ²¥˜‹¿~qd!Jÿ=0#ÿ üïâÿÕÈ»®ÿ¡”‡zÿm`SFþG,ÿøëÞÑÿÄ·ª�þ]ƒvi\ÿOB5(ÿÿóÿçÛÏÃÿ·«Ÿ’û‰ypaVÿF:,¯ ‰ä�Êÿ»¬��ÿ‚seXÿJ=/#ÿûíÿßÒŸÿ«ž•‹êµp·V¹<.¿!ÅÃÿ¶¨š�ÿreXÿK=0�¿?è{Ž�·�Âì�pYð�û³l¢pYV[[Çi*� ’2� 8—ž°8—­°8–Wº°*”žP]` 8”s‘½ l—\` l—[Ç` z—íÀl—Z`Ãz—¤àz•¸ }’{”Z^Zl•?Y\_`z•í�sl• `z•V ¦Wï�¦Vh�²{”Wƒ 6¤-°ðC¥]W·06 w°?o|YX]q°6 Ž! oma}`¤ ˜ oÿm-ßXmþ²¢laÁs6£‘ ˜§\Ý ˜§Z ˜§XÁ 6 Hàž¡¬‘Ì¥a^ÏVu˜¥â *Ú¦\ä è¦\ƒ@l£(à „ÐÚ¦Zä è¦á•Ú¦Xä è¦”ð±Û¥Wä R°` X²ä R¸µðR°ë£`´oW\wWêà ±™ò\�°”@W™µX“²)¨¶¢²™°� Cð»{ÒRlVZ= W»™´VZW”±ƵYzÒ´Á?Pü™°$PfWVd[îä zGádrrm}£ðƒ"d`£ðñ'À$P-ÀVabú¼  ÐXbu[ïw_¡am\ÝYð˪Ral\(ÐY]Àªàú ÷ „¡`*µýv` c_S__¢Ð*$_Ü0˜ÆÀÀИÆÏИÆÞИÆX� ˜Æ˜Æ,* õ_w_WáAýÛ_X£à®ü_X&Qð­ ÕéðÕ°ðC"Öh¡"Öü� "ÖO[] "Ö­ "Ö’ð "Ö¶0 "ÖT"ÖCðÕV—Ö’…ð—Ö8—Ö@p$—Ö”p—Ö_—Öl™—ÖÒ ¬˜Õ†TÿÖ“ÿÔ^ÏÁæz…ð æ]_ æ’º æˆp æép "æY¥°æ”ðæ® YåˆàŽæ^»Ð"Žæ]ÈÐŽæXpŽæ¬p©ŽæáŽæYüЫ�åX àéæW­ÀéæyP}éå]_] öBp ö4qö|p öï[V öZ^EöY0ÀöÐö¢Ðö‚Aéå\¸À$’ö+Ð’öh ’öEÐI’öRÐû­ ûzlÐûØôs�*A€ý?‚áÔÇÿº­ “ÿ†yl_ÿRE8+ÿúíÿàÓÁ´ÿ§š�€ÿreXKÿ9'ÿûîáÔÿǺ­ ÿ“†ylÿ_RE8ÿ+÷êÝÐ…€ÿ¶©œ�ÿ‚uh[ÿN</"ÿûîáÔǺÊÐÿ “†xÿj]PCÿ6)ÿõèÛÿÎÁ´§ÿš�€sÿeSF9ý-ë€óÿå×ȹ߫�Ž�pÿbTF8ÿ*AMP^FEÿED;20?c» vbZùS Â]RÐ %M\†Rÿ"V4@;QBWO` vbY¼àw�%`º�} lY^lO _¹"�-àó˜`XZWXçl]®Wlu OaÊàl OW`W](p ]`QÐð‘‘O ÀØVY]`÷l àVY\l³O! p_îÐ<˜"W^ ˜ ‘…]Z‘ &'µP&&? ?5=ã"F!áV5`@'Nð&$\^ZW_m%]=m%Å\|p‡'Ñ@m%[ZÔ>m%Z±à®'Z+¸n$Y”ÀÈ'Ðð¤È&¤àÈ&pàÈ&X—^È%X”qÈ%W™0 6&� #70#7Œ–°È%V_w È -‘\ëV]Ÿ�W7Y`½J6[_s7XCJ61Ø””0]Ñ`¶€Âp[PÈ$[v¼à´7Z´7ü5@´5]]W·Šµ4[¸pè7ü@è5ZpFpqG}pGÑ@% è0FÑp F#ÀA HGWàF•±è5Y0oGXoGðoG¨®ÐoFͰè5X÷Àêè5W¬À½GYN½GX½Gò0¶¾Fhÿ0ñF<àñEV^•N W] VXp%WwX %WW %W¼" VY^ ñDZu_0 fWXfW ã`fWò fV2 šW»ÐlfUŒð§4ZZòàIfUPAÎVö°ÛWüá@ÛWWµS`iRYL gJ©ð`gÿP`ifbP eWXE@@EgÝ`-‘è°v� eø mg$ÀmgêpduY‰á”g[”g ÕÐ`”gÔ@”eÀð³ÍfyдÛfV³çf2 ç`,çe2ñç`w#à.wW vX'ðv QA?w¹pvƒ� Yw­�îYwZYwY(Yw‚ðçe[á�šv[�çeZIà´váÑÁwJž *�´våà*�ï8%ôóu¯B@ñïãÕ ¹«ÿ��‚uÿh[NAÿ4' ÿÿòåØÿ˾²¤ÿ–ˆykÿ]OB4ÿ& þÿñä×Êû½[–hÿQ:#ÿ õâûÏš‹}®“€bS™€9�€ÿ÷èþ©‚³¥˜‹ÿ~qfZÿK@4%ÿ ýñÿåÖÊ»ÿ¯¤�|ÿhT@,ÿðÜþñ´ ŒxÿdP<(ß@dõð¨@¿,¤p’ÿYVV\sV÷V]÷ æ�›}P�ܱ)�Žð»¥˜W[»  ‡Sœy@e�–qy�þQ,��Žð†¢›X»¡¡œ%Xö°É�? Ý�F0©ñ�ŽðµœWà ¡œW»  -­‰qA­È IU­F0i­ŽðQ�=’ ʰ�…[„`@m¡¡¢°z°Æ ±­¢ · «¢FpŽða ·¥vaÒ¦«`R ÀþÈ¡X|`|i@¨ Õ£~à˜Â�ûÐìÂJ ±[x± ·¥;p· ¤”¢@9^Á�W² $·¥ÿà-µ—P´€Á� " g`µÕÐk·ÐâÐk·ïÐk° ‘Y¾ö°í–²X?]ZVV\ �àÃCá±—±ÀË0àx¹·Ø0ƹXßǸtZä°‘s™¿YV X[zеý”± z\Vuwçe ÑÂi~ÅWWu ÕüÁž+ÂiV¸²,ÁZâ"À ÀÂ…Ðu½\4ÃuvwZ~P® ÂbsX/áü9² ¾G uvfxÄXäÀƒÀ xÀa°[}‚ðç4œÁ“@£ÀŸ ÿ[ooa{šÀYW^ˆpíu‘U¾Æ\^^²ÊÁ ÏÀ™ÁVV¸À¬k°ö°d[ž¡«WY†@.±XžÁ~£ÀX||sðÝZ �W^90>”¡±ÔYÖ'Ö0Wó]Ðà V@ÖW[KÖ UÙYKÖÉUÙJ×UÐòx`×hV^Zñ9l±Xvl_ZW»ÌÒ®°ÑV·Õ^< J·Õ[UP ÑÖ/ ·ÐþlZX_m Š·ÕZt° ù×dàëÕXEX‰Pè~à·ÕXQ@ÕæV›ðëÕWY’ƒ`Jç=·Ð`l]W0mJæW–PÙuç£PºKåV[Xì ‘à vk”‘à­ÑkY‰0«ç/p«å†à Åç= Åæ" ã“áå:0‘äkW^¯Xm «åW· �÷}pö@ö|Pö£P;÷h°;÷¾p;÷¬Ë0«äd^tÀ‘ädíXnà%dWZø Š÷£1˜ø9àŠ÷¬@�˜»ñ$ÐÂø @¦dÝWƒlA»\#ôs]ÒõpCú€A€ìØÄÿ°œˆtÿ`L8$ÿøèÿÝζÿªž’†ÿznbWïLAM &ÿîâÉÿ½²™�ÿt[B6ÿøìÿßÒŸþƒŒsbÿVJ2¿ÿ뙀¼ÿž€bEÿ' îÒÿµ—z]þÑ€"èÊÿ­�rUþ"úæÜûð‘[_}7¦ ˆœ¢“ÆY Ó %�hç 9‘ûÃVÐ|°�ë’�ÿZY\u^ÿ{ {ufvjÿvwrupö'^u3q•FVO _(Zku]3BZ]O­_Z]l }YkuY3BYYO­_YYÄ}XkuX3BXl:, -)XO_*àO]}Wu[3B©¦&3 ¿)l3 j¢)[O_W[‘- ¢)!=B6€À3]_VuZŠ O8×VuX:, BVuiWnB )W^6òöÀô¢“Í3am`b‡lØ0«¡ÑhÑÖþ�£Yw`P;ÿ1bm?°˜°`¢¶ HY°D)@þ2Z;M7$„p>;i9Y<M7èp’>;¡9=<¡9Y<üM0ס\Z{ijs˜\bû0^¢%\%�E@`E.°QÂàø�7ö -ãWÑõwPl¢[W^þ `V`huffŸp_SFWÁ``oae1i@”àoE>_@ufdi@ø�y[z�Wñ þ™EWÁ¿°¨JIp ¨@N¡ˆ`Õ V  V  V ‹žŽ£Z\˜ ×¡Z?[ojmáE,Pü˜ ø�ZVbmf}`f0 0P'‰S³% -à§±wZ\˜q�„¢î@À (32YVýg×°s]wWß{Xt^â`y3N]^QW\Jðf]þZRVX{W`Yƒ]“Ttá` ]°VX`½PN¡=°UV V  V  !1½3“#Xb�¤X*rpÎFâWMÀ `m¡mXnP[X•QW|¸QIÞÓkY�P^À2mN~Q HmX`VºP8.hú�%e Aafƒf~Q �moe ©`øRÊÀ `a¡WIðMð…¡0Å dW­  `½ÐWWÿ[svXYw?aYV‘Ž£ð äeY äeÖðïe{Vls Z{aÚÐg�ÏcÕp¹C‚�±FvãàFpÜbp BP `,“'5“ –D'‘–'’�h ”ß ‘<—\^ý“­O—\^$‘)—\õ^5“�æþôótFúDæÌ²ÿ¦š~cûH!êÿÏ´¨›ÿ�sgÿ[OC7ï+?õÿæØÌÀÿ´¨›Žÿ�tgXÿI:+ÿ þðâÿÔÆ½°ÿ£–‰yûhkH9+ûU ÷ëÿßÔȼ¿¬œŒ�lÿ\L@2ß&ˆÀóÿæÙÌ¿»²›˜‹Ÿqþ¡UF;/ÿ# ÿÿñãÕ¿ÿ¬•jûU¹+�Âu?ßï€ÿLTC1483÷CN8½ÐXXZk>»õf -¼Ñ ˜8}qœs°f-�‘É B�(‘�„@XXÿYV]guwLú�ö;²[*ñW“˜‰Â\@`ÁEB|ÁYç·R£èÐVQŒëÂ\@0�À�7 ªÑ’Wmf ó ¹À˜ñÁÈóÐÁÆñW¤@Ñ€2RisrYßl\0ìÈZúÉXúÉeàúÆ?VYl_'ÙrÐ'Ù×àúÀGAd}Ð¥àæPæXÒV\žÀbÖ[ÝbÖZ{×Yi{Йdö@ FWdgZ•Õg`‚ ­Ö� {Р!`ÉÀÇw1SÌГ�!xÔØé�Ó׿ÁÓЙ¿__\ÅC_ï_[ æZ€ æ×à æZà æ« å^o[¶‡#_[p`ÂãZàÖðÂà !_Xþ1[•ö3_Wþ1zà~GA_Za « \™�  é[ç ®' \£æW­ëÝHÄâx*G41¨áV]®êG™°é 10Zªí:ˆ½ä"ðÇìG=òx*Hòå"ðýí õè@ ¢OZW ®ÌZÔ;ߪóï¹øÏ ½øbôsh¿üG€Eþ€ëÖÁ¬ÿ—‚mXÿC8+ÿõëÿÚɾ³ÿ£•‰}ÿraPEû:7€þÿêÖ®ÿš†r^ÿJ6"ÿúæÒ¾ûªs€‚nZÿF2 ÿöâÕÃÿ±Ÿ�{ÿiWE3ÿ!ýëþ³€ÏÀ¶§þ½€‰zk\ïM>Í€ÿñâÓÿİœˆÿt`L8ÿ$ü\÷{A,ø�p@èÿ{Ž?è��_\s ’ÊÁ kåë X/@æþ �Àý ;P %ÆA9Aq ±€O0@MÔ°u;PI ‰¤@ 96¡_³AX� ³ÌÀÀó Àß±ÞèÀÞâ À Á²²&0S V_>  35%®p+'ð ƒ+'0Â+'?Â+'Z*> +'Y> +'Áá+'Ù+ 0X^k2Á]# 3¤#ç]õP•pX\_šP÷†ÊÈ**°Ø*B ê,°ÀØ*p oFÈC #].1$\VA K]ù7]> Is\Aq‡]„Ð\BMq ¯]à±Ã]ù×]¢>  o@+¡~‘(Ó\U&!&Ä\# ¼ ~+¡[bŽ)cça2` Á[`a}W?ÀaŠ?fÎ aN`*b`ù2`ï‘[^^蟠mcšÀìÑ“[_á_ÐÐ&À+¡�ð!/\)£Z^œ`P“bX@œ` ÁZ%ÀйfVÀ À¦!0sŽwÃY]^›0^ ï‘YüË‚dYV\a! •à6¡t�¼± ¼ T¡X[os ])£AXCp�À“ÜFêp.•NðFfE|’Z}‚(‘–¤V*�E|Q’$™}(‘œ?r Ã}(‘½ �®&ôó_¿ØHFþìØÄ°ÿœˆt`ûL$üÿèÔÀ¬ÿ˜„p\ÿH4  ÿøäмÿ¨”€l¿XD0_€ ûög€Îº¦ÿ’~jVïB.ƒ€òÿÞʶ¢þ1`zfR>ÿ*îïÚƹ€žŠÿvbWGï7'Ñ€øÿèÙǪÿ™�€sÿiI6#¿þëûp ñAœ�t�rVVv‡Á›‘Ë‚¼`Ó�؆r�уØ€É ñ‚ã�7vë‡WW# Ô€­ ؆WWã„Ø€ÞÉ€W_áð|ÿXVozjp}ßmw`sBpéÎ¥"w¸T¡v¿XdPS¢pçpvg…ðí“mfwï Âlu¿`os`l�€ýŠ’fsuroÿs`blgru»~r`FÈ"l'd`P�“�—�6¡F.ÔgÃ.ÒZ Õ�(É–BÐÕ™˜`õ™ÐªD@ôšÐ ôšßРı‚�{ÐìÎ Ú5ƒÞP­Y‚d­X�w­ù‹­6!Ÿ¬ ³­!Ç­5Û­ì±ï­E!Ÿ¬–Qc¬p½…?½À™S½­g½1ÁŸ¥\}žÙ4[¥4C–·Z9m‘¼Y·½W@ƒ�̽ÂÐß½¸!£¼X’]Í„Ð˼ $/ÍW@ó¼HWÍE I £¼–Q˼p“Í’R0ó¼¦A»Íù �ÏÍ'!£°É!_×0  œó¶Ø5[£¶Ø7 ÝR11Ýd1EÝøYÝ6!ÜÁ�Ýv1m܇2©ÝùmÜ–Q ÑÝš1åÝ ¬1ùݾ1 íù!íT!£¶ÈE[ Iíq DPç†qí™…í­™íc!]ìÁ Áí3Q­ì÷"éí€ 1ýí Qýr!]ì–Q­ì2Mý.1aý@1uýçQ‰ý�!£¶ò r¢9¼†¢9ì ôse¿éI€Gþ€íÚÇ´ÿ§šŽƒÿyj^RûF€%ÿÿìÙÆ³ÿ �zgÿTB4%ï9€éÚûË?€­ž‹ÿxeR?ÿ,óÿà̸¤ÿ�|hT?@,k�{†ÿòÞÿʶ�‰ÿuaM9ÿ% ÷ÿåÓÁ¯ÿ�‹ygÿUC1÷ ûûð6@d·33#‘WV•5ó¿’ÝX0.éiYų0Ç" > ¢Â¸À/ ¤C…BbÐ"¤Àè]Y¾g1 ú]¡ f÷!Š¿0Š1éf’AŠW²¦Aú YWµ#}#ãbYVvfaÄ�v4BYVL0VVXÒ"X-¨@W'-pP:,÷!&,VA:,ŽÂ&, ¢Â& Š-?Á£-SÁðv-ï±: @`YV^\ý]°V]ó ñ â"]\Y\ÆqObû"š Vq0"ÇH¤<¸À£,=ÌÀ?=ßÁS<øáIg=W@S<–Q+<€Í£=s¡�=‡¡Ë=›  $S0‘V¹ð$³ S6º÷ MAÑMUÑ-MiÑAL¤ÒUM†ALôÒ}M á‘M á¥MÍÑS0È�V8p°²B–p¥ÎKkqàLVpàLOWfàJir\‚VpàJ–Pêp?\•p$?\Ap?\Vpà@ùßVZVZ] 4�Wt ›VYY´0šW—YYYÅ€�U�Ù©Wô€ ÇWW[Ä ©Wž2šW:²ôYØ ©P¾…`YVYWTÀRÍ#XÒ�u€»¤#cX\í V=` ¥Bf[í =`UTgZí =`Tg_Y] =`zhª¤À =`TgX  R=` h` =` hTí!=`TgW =`)Ùh`=`Ùh¤À¥=`Ag1=``Aeïܰ/`}�YVàã5t1 ?vWH?pŽRþ Y�YÀù©Š`É€ _ ª•5r ö` {p!?\YWˆv6ð¬”pȃ[Zã„¡vZ%ZЄ´xã„´x”½”pŽôóc®ûð JHîÿÜʸ¦¿”‚pLÿ:(ÿÿíâ×Çÿ²�ˆsÿ^L:(îAîIƲþQŠvbNÿ:&þÿêÖ®ÿš†reÿVE7&ÿîÚÿƲžŠÿvbN:ÿ&þêÿÖȺ¬ÿž�…nÿ]RB2ÿ#öÿçØÂ±þ»‰uaMÿ9%ýþÏ?,�Â/5@è!Y"DçÚò܈BÐê�UÑþ�iÑœ¤Ò&�†œôÒN� áÀb�áv�ÍÑ�â!YZÿaw`biïv¢”^YXWsgXàÀ¯�ù7YZW•QÒÈSÌ’H# Ô—³QÔ—ÑQÔ—‚\ñ©È°Ô�7 ³P;\\K`Y!§ ç�rrÃP ª “X§” ¯�N¤^÷YW]¾�W]`1 ¯�B¢ó‹#b ó`ae°~¥obró ~¤þ 3Ö#bX_†¡ ‹¤X_r”¡™ !X_i­·Az²É¨È°×­6!yì­K ÿ­£¡¼*Âë¬>Â;½ Û±'½ï±c½ ¼¢Â묲!‹½SÁ³½gÁǽøÁ°ÐAXX_\¾Pxp OK£XÅW§” ¯�Åf¡ ü¯�ª¢V^aýtÄ`hW_d_bbøXþÕ$W !$W_ 1o`Ð� :$fÇG sÍï]X ‡Í]W}›ÌXXX›Ì’àÑÃÍmà ×ÍAÐ ëÍöÿꩈݮ%8°'Ýç¡;ÝñVPÝØ°cÜHOÜ ñcÜàÑOÜš²³ÝtŸÝ‹1ÛÝc1cÐVÙ[}‚Vã` † ãV\ˆå]áÔ'ë#à ÚZk á¥)P-MìQ`ì_R�uísRŠí:R`à"¡Wœ' 5` Œ@£ psÆã>@ÏàÙ áù�QBããó Bìê6±ürðü†ðìê\ñ9üY 9ü˜ÀB$ü1Ò¡è ù��ü˜ÀDúü1Xlq¥û`è úI‘¥úWV^ Þúþôsf_÷K€I€ßñåÖ €¾ÿ²£˜‰ÿzk\Mÿ>/ ÿóäÕýÆ+€žŠv÷bN7€&ÿþêÖÂÿ®š†rÿ^J6"ÿúæÛÿȵ¢�ÿ|iVCÿ0 ÷ÿåÖǸÿ©š‹ßti^…€>ÿ- ùßèÜÌ•€¦ÿ‘}hTÿ?+ÿíÙİÿ›‡r^ÿI5  ÿ÷WeÿÍL¥BÍïÌ”B Mâ^\gÎ7Ew &$ë{{æ Wwù r#Ð 6°w"ú6±6VYw Kà_ô tòˆ’�#Ðë ç WŸVvw"A œ _Pwï`$-o -6�,-ôI A-J�U-j-²#Ðë á^[8¢vgu/¤®$ ? Ú6q^ pêK£]Z;|WRð×&&R#ñãí#Qæ(rRI :Pæ "¡]I`R¿áÄà.4[¿á Ä䎫À&M3¤ V4\ç]V06q\\XÇ öÈS* ¤QHÆ“2œÐˆ6àQ‡7Ò¾Á–7Xñ´9XÙ–0UÁ\[8a¡PÖ`AdÙ0Kapä7J^ap ä7qap) ä7„aà0 Hœ°¥à0 ä7ªaà0 CH`à0CHraà0)ä7ãa à0|H`¥ à0|Hœ° à0|HL` à0A`d2œ°ÌV0Ù�\XhÁУ®�ÕLR çMz!ûM#ÐI­[6±\5‘7]J�\þ_]Åñs]B6�‡]_±#\Ö±#V߇Ã]6� ×]×ñë]#Ñÿ\6± mûÁ'mÑ„ÿ\þOmçÁcm6� $wmJ�‹m#Ð#P{26°Ð� –5»a˜ÀÂgü‘! Ñiû€Âgþ ïiç€ ïi7�–5„àÐ�yà�@wü’:yè wþXyà8°XyL°–0d2WÈV0{2KÃRÀÌ![ZöpÀR¡sX^ P«uÀá«pÈ‘[Kç ¾Ì!Z^] ÃtZzKç ôóeòLýJì×Âß°žŒhßVD2%ßüêØ1^ÿJ6"÷úæñ�¾ªÿ–‚nZÿF2 ÿöâκÿ¦’~jÿVB.ÿòÞÊÿ¶§—‡ÿnXB0ÿÿêàÿÑÀ´§ÿ›�~rÿdYMAÿ5)ÿðäÕÊý»¿ �€ÿp]N>ÿ.÷ò2õð…˜BÛúéà Ç‘ZXJ„à›�MÆ’å�Yê€9ÐLà �" å€( sA¹#Ô!“NÁ‹Õ’ZJÄ$ìô0ã€W^KÁ[z~j² � ¢Zh \\@+”d’NÀ;3Í�( î�m•7¤;�B Í�ïáá‚WXh?ozuŸž”İ䨕KÃJ�Ì ZV^VJá×�8¡~ý± Nð�H‘ä‘61 Äàà”[û³ÁÀÔ’—Áð�£WÝ"¦V"¥\[ϧŸ’#à‰ý¡ZV[~jb/ÅÓ“ZÜ0F à’JÁW’ ]�I¢3l3;ZVpTÁŽ ƒX`p‰¥¬À” ÀZEV:ÅCó LÂJ�}ï }4æÿuiX\|X^÷[|WØÐèæÛ¢W]å ã¢_[ëì ð¬WVÇ]ì áó \|¿W]|_ì îð£ZXâ£^œ/½å ] ·9¶\ŸY[ ì ·ásÿbamxfK/¶â_ø°Ä!;“IYŒ±M@¹ ü|ÝF|ܳª·Zð·½kñ˽©¡ß¼ñó½çQÍ×ñÍ#Ñß¼þCÍ#aWÍ€ûÁkÍÑͯaß¶ÜG§Íp ªËœÐÏÍÿÑ$ãÌñ»Ìƒ÷ÍëÑ$ݯ` ãÌþ»ÌFñ�[Ý¿1GÝÎ1ƒÝ¯` ãÆÌW§ ®Û$ð¿Ý5ñ$Óݯ`çÜñûÝYñíkñ#í©¡§ ÕþýçÜFñcíçQwí°×ñ‹ía§%\iyô 9‚óºåYÅì Åì3ÅêZûì…ûì®ûì¤ ÁÆéþÅê'"Uü@R Uü PUü PCög½åD F"ç p"¼Óá¯ðVôsu¿M€Kî€ñä €Ê»ÿ¬�ŽÿpaTFÿ7* ÿýîßÒÿŸ«˜ÿˆxiVïF47€ÿðÞÏ¿ÿ¯Ÿ�}ÿk[K:¿(U€æÿÔ² ûŽa€n[PÿE9*ÿ ýïáÿÓÆ·¨ÿ™Š{l¿]N?ƒ€!ÿôåÿ×ȹªþ•€Œ}n_ûP£€2#ÿöçܿ;¯¹„uÿdSB3ÿ$§ÍÌ”â�—p]ép)<“—p[ép0Ä@WF‘°¡[`ýa0VaŠH1ß <@:@~ ‘[_'’[30\†@+”téqÞ;”[W X@0Ž0Ÿ ŽVx’LÊp ž“g m~â�Z^_Y[±à,¿£“\^ì`Ï@@ç`½bòpò×p )ˆÔàòDq .)ðòW[vðL(úa[)Âà[)HP òs`Aˆ'nQòY_\v �<“­!Zvµ T¡­ ªR0 µ'W± Ò([§vÒ(M  µ%XŽì[ò1¨pÎ>6Z][9¿` 7¤p;9Ý`7’!1Y9 p7W[``w9Âàw8ú`•9 ð0—¡îA�_ Ä%XZ—WÀ7Y,°À7W×` µ%VJAÂ èrù6 G²èq ù0Ô‘Y_)0ô¤ÊØ0m5B])phL’äsW’ ]”YYý“�}”bA.ÑWß’b@["è“ð�~E£ ^D•[ÿ‘¤Y…¡ˆ ²E£ ŸEuÿ‘¨kEu.Ñ{EX ¥DÓG©B¯E3’¡ °¡Q[¡ ŸE#�ÿ‘kE#�.Ñ{EÈÀÌC)8W©B¤XŒ²¡ô”�Qÿ‘}”�Q,òÈ{@�T©B}�â‚^W›\æàÁ|Så–ˆ�DÒQÌC ŸDÒQÿ‘ ˆœUå�.Ñ{DÒP…D $ÝW¤ïW©B}�M‘ÉX—rW’]�â‚[^£Y¸ÀËP’[f�[€Ú�+•maF‘CeB’W’ ü]�—¡XW__ �›d^¥gX°¥gg\ð�âƒ^\�5 î†^\à Ûgé�I Ûgø� Ûg‘ î€Þ›c\\Ìf[_ æa �Ç!+pÙ� ¥f[Ûp –ù+ î†±øÐ]w’é�]wø�]w‘]w‘î†J`¤Àð�›cïW_ ¥fW^�Äw] —ÖaÞî€`ôó€_-NLÿêÛ̼ߪ—Šrÿe[PBÿ4& ýü+áÔÈÿ½³© ÿ–‹~oÿbUH;ÿ,ÿöéÜÍý¾S ‘‚ßsfY_@, iõåmÃq§˜ÿ��vjÿ^RG<ÿ1"ýü‹âÕÈÿ¼°¤˜ÿŒreÿQ=)ÿíÙÅÿ±�’†ýz¿cXKÿ>1$ÿ ýðã÷ÖÉ×´©ÿž‘„w÷laåE7ÿ-EED;2¿0?bhðÃÏõ@AÏ¡iîýÆ![^Wv`aï!&”obrç 3”QA5Ÿ‘[Î ˆ Q’@<ˆ — [\]W¨Ð£°Þg“V_ q—]y £°Q‘\ZY”ñ\ª ˆ ‘\4žZ“[~$�g‘[oow¸“?]]^ ±´2É�jD@ Е[®`Þ•ï\]ê—\˜ê—£ ê—Z±€ì•Ykê•Y��ùÄ”ÃY\8 ®’Zp!žP’Z~$�‹ [Z]ˆðú]¤êpg¦ú@猓Z[ a½¥±[ZVvÅÆA‘à²�¨ð@ž­£À²¬ÑÆ­åáÚ­÷Წ®2@½ñ½-ñ*½™ñ�Ä“3 XЈ·“3 b`_·+ lê�^¡YX·”{³vÍp“†µ\‘¶`¼Ð‘¶0Б°g‘X]îÝ·µ”зôÀ·'V °Q‘XPY”•Xêp Š ôµrØät) 3O“WbW2Ê[æ0)ŧ^¼P^¡W  J…´W' KÅ‚0…°d!¿°q\£jÒt ÃH@nÀÁWQA-ê³n<Ž1[V7bK @¥Â:Q¡Å’J °Ç[ÁÀ—Â`³ŸÀ^¡V^{�¡ìO“‡� ÁÕ[V\}\èr f Ñ, ÓôaÐЗ‡\ Ð'‘[à* Ÿ@g‘[à4àÐIÔZpÕDNAØ`}ófÑq o×Rq o×£q o×VYqoÖ�PøÐ«×^wqoÐIÒ*ÞSÕYÇPÖ×°à€З P Ò0qH(ÔåpYq¯üÕVµÒàJIÒXÇPSÕqSÕVßBçˆðÕ¦Ð<tGÔ¦ÑðÕÆnÀè‘ÿ$��ì¹ ‘W 4˜â}S àeuz3h¢KZu±°µà¶1`*Û·’Z`tÎàÇ!`³wÜæùY@éä_\`mo¯ÆùãZñªõYñõXñJõWñðe_,ÜÀ™á_¶“Z^mY  /¶²Z^%±‘ _ðe=pÀ¶1]R­¡ _ðKA]PGV`2~A]c@ˆvuÂð~vžô�\^WÞÑgV»õÓ  ÈðY÷ÜÀ[±p^:°·ïp ôsl¿ü O€Mþ€ìØÄ°ÿœˆt`ÿR@6*ÿ øäïѾ7€”}ÿhT>)ûŒ�ì×Ãû®»Pu`Jÿ5  úÿèÖÅ·ÿ­ž�€¿qbV‘€8ÿ+ÿ÷èÙÊÿ»¬�Žþ±€paRCÿ4%ÿøéÚËÿ¼­ž�ÿ€qbS¿D5&߀ÿùêÛÌ¿½®ŸÝ�¿rcT�6ÿ' üü÷pAX743CýPg�\V\YX› ~ä\Vœ�˜QNP!üØ`Yòá2û°u°M3à@AË0A@Af!nþèAºÀ‡ T�Y X›Ï ›W]Jp¹—\¹Z¼`¹XW] ¹ZÐõâš°Söe0)Z€)̰'e"@)80@)X[ &V_Лv \|)HÀ|)b`¨|)Yà|'^ 0¸)Z#¸)wP|'Zm‘A"î Vpæ' 0 9°0¨9Pô'Y 0 m'Y¢¯0 ?9¬@m'WÐ]9!pO^8[1`^8 ({9;°{7VШ9 ¨9[ŠP©8¦°Õ9²°LQ�ü ûÐìZ.@yöC^[ G�CÐöI0Jp›I0X‡^›^ ´ð5Ðå@Íb´ðG!Ê`WAV"p_G†1mI mI;°�Úåà$“\ –Ò F•¡Á\0P[ô`‘À¶áõAÆPú°À¢5ÅC¿£ XÖEï ÏCüç@�¡}|gZ]o÷}V\m�+�ýEVo}9°Ã ,&VXXRu°"PÚð(TQñ"WÜÀPÐð  PQVQË@¨�ê"P�zÜÁVxg¿Y[xvs�RooX[|Zj@ÖRÿw{vvZu]o†XBÉ‹£¢R¨PQ p°PžVPM°\ °XkYY©SÄXYYÑT- °XXX©SÄX,Q‚1R °P:QdÑPñ°XWV©SÄXWQ\RA °PeQ\dÑPsRÄT÷ov] `g`\Yæo  Ç‚fL`g`VÆ_’Ô†ñ‡`ï°o\îS� d…ò[oiÜŸa¥b ÕûBoi[¦RZÓÑ`Ác´a ý( ågLbJpÑ`^¡mfw]¢¿`v`)¡â[ç`úÀÆ@[__>ÐÑVoo ÷p'‘®6ó—ûB_’¢X˜¢R°P{Ôða}[ñu|Õ¡‰}€ñ�}µu|%±ñÅ}i!R°r þôóuPúNñâÓþ ·ª�’ÿƒo[Gÿ7'ÿ÷ç×Çÿ·§—‡ÿwgWGÿ7+ÿøíßûÑA´¥–ÿ‰{m_ïQBŸà&ÿ ûïÐÿÀ°¡’ÿ†{m_ÿQC5'ÿ ýïÿáÓÅ·¿©›�±€qÿcUG9ÿ+ÿóåϼÿ©–ƒpÿ]J7$ÿþëÙûÌ퀰¢”ï†{û€]Nÿ?0!ÿ³€B 33î“@ù^X[?YYZÌpÒ‘¿XX[͘Z —^Á,™[ ,˜Ñ1J™Z �ö1o y–�§A\Y^ZÒ@«ou”]}� �•VV3¡ n�•Xذ �—R4 ��ì\i} Cÿ[__¢ÆpÐ¥¦BÍ�A¡ £Ï¦Ù–‰à ²ç�ë——Pç�&ë—Y]&Ðç�¨i°¥ç�ë—uQç�,Ø—�ç�J¨ Àeç�Ø—™°ç�)p¨Làç� p¨i°¥ç� p¨ ÀÔ� lØ�Úð\[É@ww—q¥V0À Ã@Û’Zi6�”[Y4pà§sðEà¦^‰áü§óàü§ Áà¦øP&·�±à¦F©À�”°óàP·*×àP¶Wóàl·×à•P¶VÍ` ˆ·‰à ´ˆ·—P PµXXÍ` Höµ´åàÀ·‰àÀ·’óàÀ·�ÀÀ¶Á Iø·Í`ø·åàø·‰àø·—PÆ�û´óàI>Ç×à>Ç�ÀÆ�äö1‰à ûÐFAZl\÷ ¢PCZ\pgµ �ð§÷ZWˆÂ øŽÀö1}�“1 s� ÂÀ�‚�s�þ�AZUÈÀÈÀÈÀÈÀYÈÀFAY^y 0‚“Y\{ij ðJ‘Y‡Ã ŽÀëÂZñÁ]ó\YYñÁÕUXñÁöÅXˆÂ Õ%WñÁÕ—’�”X0’§�Z×™�¹”h ¼Æ�‘Xwuw×à š„×� ’Ùj@’Ðv‘ŒŠÐv° rÙ“ŠÐñ  ¾ØÄ ¾Ðö1ñ ­ÄXçY s�¬ð\W\©^ZÃ0ÝÃWrÑKã["@J å“`à¾óÒY`u\^ð™&æP4èäP¹4è `~5æ[Gu\lE@5æ¦Plõ0Îuç]Vl´@5æYuSYlœ@•çY�à 4çëXu`à´èXWlèû@Åè�à 4çWuV”ðäè[Ðàôé�à JäèVÐà ù�à4à ü@ÿVqàAµ ’vr:ö’ÔqHý¤0\ð‘WÿVWXat}õ3^‹C“\]®p E\Ía—ö\G]öÐ0 ¹ñY ÀùZ0ÀùWÐÞ.ôsw_Q€Oˆÿ°œˆt÷eV€8)ÿ üíÿÞÏÀ±ÿ¢“„uýf;€H9*ÿ ýóÿäÕǸÿªœŽ€ÿreVLÿ>0 ÿóäÕÿÆ·¨šýŠ}€l]Nÿ?0"ÿôåÖ÷Ǹ›€š‹ÿ|m^Oß?/!±€ÿñâÓÄÿµ¦š‹ÿ|m^Oÿ@4%ÿùêÛÿ̽®Ÿÿ��rcÿVH:,¿@dö€Ë@,�]SÁìÐA±‘Y!Bt’],H v°,Ù’]e0ʰ…'Z— '¼�Š�Y:žÐõqò]Y_úÐ>`›¶RV_= _^Drp_Z‹À_IP_’[_¤0_ý]B¦ ·º4PÈJ!×øÈYZ~Wb§Å÷ÂûW'‘ H_ð@F� _F@]X° ëPB' ÷ÐÄ _P5!¦ <'Ã<'YLZ)Z<'á!%dÀËQ’]4�.°H_4�¢'Ôq¢%hð@J1¢%X "µÐ&’E‘Þ(0Þ Æ@]üÍ@W@z~a �|‚’Ÿ`~jb öÀüóП`k~~d·a2V_%3p,0þçP<°.#fçPXXkK7W[zèZ8­qK5Z÷ÐY x9§x7Ò –9JPx7’�!x7x7á8Ò8d‘á9YK0/2eY%3,0VXþ$P‚1 “#AÒI,G�!,G,GBáYH¼ñ�/2X%3 EWþEûÐG!¨K5�A® Ë-DW ,E!.¡ÂG'‘ÂGE‘éàHâïIZÔ³@/2W%3 EXÍZ|ÀIÂà¡ 2ßì ¿Â}{4Áów[[o"°» D\owʰ ¬©Àv‘owƒ± _Ua_^V` mV\wPU mVZwP mVXwPq©ÁqRƒ°`mVUWwP¥WVwP¥Tÿ_am`df;‹¿Â_àP’[[F!ÎëXÔùW¢ÃiŸ •[’$ùW�!&g'‘ùWI&gE‘ùWábhâqhñ�iÖp•à`:G ­iY­gÃ� ËiY­g ‘ÐéiYð­g‘ yZ ­g6‘ %yÄÀ%xâa Cy`�7ñ^Y=÷y€czc‘u}û1‰}DðÑpô�F!—Z][ÇÁxù —d!½�*"ôóv¿ RP¾µ¦—yÿj[L=ÿ.¿òãÔ”@·ÿ£˜�‚ûs9[L=ÿ.ÿõæ×Èÿ¸¬ ‘ÿ‚vk_ÿSF;.þgúìÿÝÎÁ´ÿ¥–‡xÿiZK;ÿ)õÿèÜÏÅû´k ’�p¿_N=Bÿ ùè×ûƹ¤“‚ïq`Ç>-ÿ úéÿØÇ¶¥ï”ƒåaRûFí@èÏ×£ô€ö^X�]ñÁ–¿ÁyeŠð5Pÿ�V]0é '$ ^´ µð)”WÐ3�\�^VVÛ\X!à’àY^²0ó°®ðVP™\_›ª`_›z_›À}1`˜V__ _™V_^£›ýУ›[0¤šê ç›}`Øç›kç˜WZL DH¦ §¶,ªÀÄ©AXÂ�M«Ó�M«ä�ÃNª€ê €«}`€«k€ªŸ�ìM©ö Ä«\Ä«[Ä«2`Ä«±0TĪ? +©Yˆ<©íY®±ìƨY^ L»\ L»9 L»€"pL»Þ0L»¶L°ÀÀ]ça9PF__iïg Ë"#__gó ɰ¿²^vgw àþ"_YnÀ?XxpOCé±¶Ùñ Œã¶[\î² SNÆí³ô·[Ùñ¹Àþ^_X¯1!„”#?À˜rGÅ^AÀÏ0 VÇTBGÅÕ  tÇë1…GÅ\AÀ½ðGÀF^Û[`¡£ÅW¡®À;® |  GÅZðY�OpGÀ^VifogÁÖ³^VãÀ+³Ö³]ݱ â°$!]]iì]]Wi ®ÄÆÑ®ÀÝÐÐÔ- ÷ÂZÞ° ÕZv{ÕYi çÀð+ÒÏ0ôÀÒXv â°þ]Xi"çÀrÓõ "cÕVv žÕViXÕ � VôÀ' \@ÃK4$¼ÐU1Ä×kñK0Ë\_Ñ®Äéѻđ0˜qÅÔÆ Ó© ç¬! å\}¤*çë1 à+Ñ\m�7¢Ã\[yÓ�¸ÒŒ ´aHä[ Žqãaãzå¿Pzå\— à(àC[€0Á 'þZxk4µä‘1 Áç[\”ðÁç¯1 ÁçF1 Áç¬"Áç¥Wƒ0 ø©`ÁåY’»â*÷‘1*÷¯1$*÷�! *÷¬!*÷ñAuøÝ1uøû1ÁåXxÔÔ¢÷\Y° [\H® Ò �! ¯|%ôstûpëS€Q€òèïÞЀŸ†ÿpfZMÿA4(ÿùîÿáׯµï¤“9€q`ÿO>-ÿ úéØÿǶ¥”ÿƒraPû?k€ ûÿêÙÈ·ÿ¦•„sÿbQ@3û“€üñãÿØÊ¹¨ÿ—†udÿZI8"ÿ ëÚÿϼ±¦ÿ™‹}pþÇ€SC6*ÿðûä×€ÌÀ´þÝ€—Š|qÿeSG9ÿ+pµ}ú‚pú‚�Âgÿwm\^^‚œ’V ÏÐŽV $ ÷ zþ!gwYY¶³`bH0˜6v¿i_{*Ñgß`|®ÚÂfw m_ã�@UPoÒ @l¦ @­ŠË!„@$ bpTP(’§^Ë¡\# ®XÉ¡Y^0buÕi_ñVÞ@-Qb× ·S*DRa`}LpuWTQ�aVW›` Š `ÛhX±P—TQ`hÅŒà # 0)!VVÉoÎP#&Y¢P0&X[ ;!#&W¿P# 0c!�…Qj#r1 �UP_Û_ViP9{â_^ïd æYÒ_]^¿ö| \u|rXŸ�¥•"nËð²P‘_\¬‘_WVw0| ¿[\Xww—qVæf ½#—àLÚÚ#[á"ZV‹À`¡î Û"µ ã Y3”î Ê![Ï%Ø Ê!Z"Ï%Ø �ô�5PÊ!+YZÐ$64Xà lpGwb5¬‘n164EWj5„5Y1n1„5.{5Žz"V›0ô <'�–!V^µÐº2/VÅ5˜àù È2`êpµÐÛ!´!7 ¶ú#dû44 @‰!_| »š,¢_XêÐW¢Z €£3DÌ0>IVÊOJ\[ OJZ^³OJZ Â?E^ 7Að“J&ñ“IV€ðôµJËð µJZY DµJð “HÒ Í0.E¤T‘ Zm@ Z[’ Y~@=ZY°®=V\Yž‘_YVR pZ#� pZ[I°$pZH° pZ‰Ð =U´!åWJ� “EÍSVtÖZ;� ç[VÖYCV^%Ð kJ  j\<�È+kê jZúÐMkVé jJ�okV1Á×UF�»à+£—d’¥ ¢jZ`€  ‘}ï4¾±^v_XdP_^9µÐÞb[µÐ ‘º;@3x^][Ű.®Ã^]ZŰçÀ*‘ß]ZgçÃ^]õWŰuWg*!uVŰuV=ÐçÀÎ ‘]û`Û ^\Çv|X©ÀcqŸPýwasW\ ep½Visü_sd*ftdnqŒp�s}p,”pƒrd|H°Œpÿ�\!’'� ‘˜àû` ‘§[û`ÿ‚^‘^ �„ ôópöð×TRéÿÖIJš„n_Pÿ2#ÿüñæÛÿÐź­ý 7†ylÿ_PC6ý)E ÿòÿàμª˜†tb]ÿ>,ÿöäÒÀÿ®œŠzÿjZJ:ÿ* ú÷êÚ�ºªšŠzj›ÿJ:2ÿöÙÿ˲¡ý�·jWDÿ1 øÿåÒ¿³ÿ›Œ€sÿfPC6_) ¡àdõð?pB,¿ Ž9ɲò�Wù†J ¥ôÀÕ²¿ V_Ñ�˜¢Á‘&°Ÿ$–Ô@ùùÚ ‘Y] YZo Y\ ' Ô¯ÁÄ‘| =�V”Ô@øŒûƒÀð9Á‘JW¿/ñ�7\XYš`WŒ Ô cdS�‘ßÐN« ZV ZX_^r mz :®“Y\¶�U[º‘¿˜]Ë“¿˜U\Ë“¿˜[Ë“¿˜WZXº‘ ¿˜Y£Õ ¿˜X£ ¿–ZZUW¸“ D¨V¸“ D§«Y_¸“¿� ñ€ïbW^XŒ@2Þ~¤\[[Z‰¡>!ö°“¡»¡`îH°ÝßrZ z¯@uÿ\Zÿ]xgYZzYÿ[w{mZu]oÝr9 îÑZ¿VooaM±Zc\çà5@l`Wû�{`}¹­’ÿbruf] ûVDÀ çZ¼°÷°x`]ž{`WkR*·h;7ºf7ºƒ î7º`7¹Vk»—x¹h‡ºbó‡µ ÀVXtó ª¨µ· Xb p·º- ·¶‚‘k׺wh׺f׺‡b׺Z ×¹ƒ°·³w|ZÃÁë ‡³=ÀD¾0 07ÆÒ  WÇpô€@·°CwgYß±+`sEð™xÊhTð‰Æ$‘„Á›Ë—À‰ÆI"…ÀRÂÈ—ÀÑÆ· ’ƒÂãË—À ãËN HÑÆ¯@ƒÂ Û—À ÛrN ÑÆÒ V`uŠÐ$OÛ…ÀOÛ—ÀOÛNÑÅÑ![Ò‡°šØ…ÀI ©Û—À ©ÛN ‡°þóÐva\`˜$"åÐŒàìÐàòÑŠ:" ìÖZ 0ìÖI €ìÖCÁìÖAìÐcà6áúŒàìÔ`W[ûæa‘Ys`x\ŸaÍ[ä�àÞfæZafæYa{fæXafæÑWï fàasbàÌ$¨ãoà²ä|à²ä‰àI²ä–à²ä£à²à¶7pWËð’êâlY`W ¹ñolW\wóQ °>â\ðÒ W õX óA± õó.ôø óQ =öð¯@ÓP.ðÛ hXb]ÿobXXZw¿{p]úYêkòqð_ôbsxw]ZfkñqðtC�óp!РùÍW"TÀ‘`ð`\ÿsuVW[f¥qð_ñ�óY—ño÷qð�"®ôsv ýpU€Sþ€ôèÜÐþ €¸¬ ”ÿˆzl^þ€B4&ÿ ÿôéÿÞÓĵÿ•uUKÿ=0%ÿ ðÞÿ̺¨–ÿ…saO¿=+g€õÿâϼ©ÿ–„qcÿXK>1ÿ#ùÿëÝÏ¿ÿ¯Ÿ�ÿo_TGÿ<1"ÿóåÛÿÐÀ° þµ€€p`QÿF6&ÿöæÖÿ˹®£ÿ”~mbÿTA.$ÿ )\ßB{‘_VŸv_þÃÌqOÀ�`­“^_ÿ\\o[Vbmxk�ª! au.ü» [@`všèŸ! l`›ð¢V]]•{0o�PßÙ!0\~cYo[]_[Á0©k]�­�cþ½!ZV\_³è‘�@› ”[YwXl]m@ ’ÊÎÀ9 £\—�}A iÅå0 Ó^X°PÙ ã¯@ãVXçZÓ/°Z ä)õ€ Ó“WüO\¤³ �¢¡[X̉N(å0ÓT í$m(þm(!m'"©]'-"3$[ðõ�[ �DZ�[j0T¾q×!Zï^ à&YYïUZYÿ{~~dgpm{ BZ �§í [P ›Y§]›‘YëÀó;ê191j ¡¢YËÓS2å1\7íl8þl8¨"\7’"œ9õ€ÓDX;\X\�ù¾6Ž`Ê7W\Ø8‹ Ê7 h0ô8Z;�õ7ÐÊ0þ‘XY[Z½œ$“%@Y+FUàØ+@ ãPÎË4XŸ[ ö€þp€î þ¨W}Y\ua�_j cxDâQ d„Kâ0–Mö€©LQ¼MZ怽Ll`©@€¡xA¥p~A©@tEp�B „[â0 \:Ð[Ë@ Ž<\Z<\ÈpõHhj~A Xh�Be„ZBâ0•\ÎÀƒ[Ë@¹\‡Z¹\¦Ð©@ Wßz û‚WZ�Zà²qÀ��ÝñSV 44W ¿Yh‹CWË X“° *`WÕq@ñ�zÇÀxgÝò€o|uÇÀoY;[|O�×DdÓ0\NfÓ0oX[¸qbf ð@Nfð@za\�b`|’—fwWVœ>á§aub¬a±` £° ŽFCVa Ëeg ËeÈPì›DV]Ó  „‡ïb‘�‚Ðy�„t\�x>0wâ0AúË36q‰0=wh0KxçZÊ4RqXèÊ0ð‚pù…YW»Ê‚uV�uWÇ_ ù†KPù†]Ýù†\ù†[qù†©0ù†Yù€ïBôóiêêé€XTìØþ°œŒ€ÿthYMÿA5%ÿòã×ÿǰ™‚ÿk]ODÿ7)ÿôçÙÿÊ»­Ÿÿ‘ƒugïYKc1$ÿúåÓÿÁ³¡’ÿƒteZÿG:,ÿðÜÈÿ´ ŒxïdP¥(ÿìØÄÿµ¡�yÿeQ=)ÿíÙÿű�‰ÿuaM9?%ùûp|�3WW- nQŠ‘¤@;uD�XX$`‰pß sê†WÛ\^ð¦œVý œZ]Ye1(œ¼À:�]W·PO�ðœ;0·°y›Ið¬v�•pV›X^‘©Ì‹›~ðNœAÀpbœõ€ÉPï�V²œSW[¼ÀŠœWÄ Æœ:ÝANœWVY“PS­Hº bœ ñz­ëP� Ú‚ñ æ€’Zï�X"H’Æ•¹¤é‘ Ŭa¡!Ù­AŪ“ ¼5‘! b•¶9Q*½WpP>½�“@²• ´Á‘ ¼Õ‘ $Q¼é‘ �½þ�Q¼9¡I ¼ÝAµ½b  ݽ’d@ñ½*ðb�DWoVmm; g61äÀê 'ÀWV_?Wo^^Z}q¸…WÎ *`Ú� �ça{|TÃVV[10ã&cÇÿ0pÉYDpÀ©WiÀYÁï>Äæ‘aÀ‘Áw]{VsÐðiºÒÁª³ÃmºÂÀÀÛ€~5ð\WV]=03ÓÌü0çÉUðËY‰ çÀü{ ßrg y‚s{ 'gÐDuDÐW¾,ÕÙP+@-Ó A­FÔmiÓ1TÕgºÓ1FÔiguV‹ÎrÕ\Hp~×y „~×=0fà¥awÐ�Q¨ØëPfàsÔ‰!fâuÑ’VÔֈРÔÖy $ÔÖ=0 ÆÖ�Q çëPÑ ÔÖÿ§âZ©`]ÓfsvÅqsÔCàË@Jàýdpi”phÀ`éSÏZæKW[eæ oédç oè—V][få oàÆdÿm s ab ý‘‚sdjmFqÂVbstmR¨Ô×àfØ 1àÆ`W½ã·"‘V_bYoY^\Z k*Æ_Ò Vg ¸ýQå_¡pƒ@%ó^ê.ö]ޤb_W\àOðK /õÏ!/õZ N.öY ƒ@ Wz0r ƒ@òV\”pÍ3A4ÿ‚�óX]-{p�öY“ðºð*4@±úV¿ò±ù©ñz4@�ð&ôsYõ)W€úÚ € �xÿeXK>ÿ/öÿåÑ¿«ï—†=eXÿH8*ÿ öêÖÿƳ•‰¿|ocd°Eÿ:+ ÿùêÛÍ¿¾±¥u€ÿm[J9ÿ+ø¿åÕÂ�€£ÿ”ƒwjÿ]N:&¿ùäµ½¿«œˆ¯€cÿO@1"ÿýù?ÿd�Âu?è¾@?údD€ÿìQ‚B= ~B \�w÷ýùqB2áz÷jB^Í®Gá@ffž@dýpß`@ôë4@_èÍÌ\ ¾ûaMJE1ï3007"2NTÿRANSISTOÿR,POWERTÿDCCB:20»ÿjÍHáJùš{™ÿ×£Ð?g…ë‘ 5*ˆÿ DISC OFÿFER BUV4û6 ˆ*2N.`/_^^]I?š Ïß\�6AÑAŸd¤pµhu×?dS€R€ÿYhX]bsxÿ]Yfw{oûQ€ Y^X¿^{ijP€ ßY][X:0Y}O#\^X[Yö`íN$V\­�WMþ€Y[_Vvú÷¦L€YZ\ÞïA[X\•1K2#Zï0W J<# ðÕg’[b I#YZÔð€ëPH€ y WV»sK¡^G€Üy šÀZW^ð€v½F<#X_\s$XëE€Á XZkîÇ%fD€YïW^Y}XAooÿ{iw[VoõCª#WZÀ\^dXõ]â B<#V[_}®H¤[A4VÅ"]úÜB@"XvdWYß^Yl?€ÿXpYZY_>¶J3_^5 =€ÿX^ZZY<º€ h0\[µ"e;;3]dàcà:p3§\V]( Üq9"X×[bs,á8ª"X[^À[`f“!7€ÿ XZmbW\ßa s6¯3Z^ý¶ ^X[l%5Â4Äpp!4Ñ"pÿX]Y[YVòé‘3¡3° [\Y½2¡3X[[Ű1úp3XfàhWX_dC0&Daà£@d@/˜"ü8p±!Zl].øHDiÀR@Xu]-æ¯3V^•ÁhÁV,FlDY]ƒ ó`ëP+d3úÃr*J2WvvY[7[)"Wl’!À]("W_[[Â'«CÓ_X¸ð& &ÈDV]ÅW˜ñ%˜"Ü@Þ@V5X•p$p2W^†11@÷V#«C]Y[ßo["«C\iXda!€©P` øC[op[¿Y\_^žC[‹XW¡pd2zà`®žCZ_]Tà\U[úUpPSZ[jZ¥€`P`@m_AmŸXgWv塹0Ùª"à@Xa YºÝpÂ2WX]' ²?P<"à\Xv`Y¿laaaPSWŸdgXP"· ÿ[\VX] g_fdZ³SW´0C_‰qºC0qQºCÿVvbXXo¾³SV\ZWX¾Q2%dXq� žCPRép%dòA\Ù° øCèiÀ# M¡ øCZ^·V]VÁ@ <"Vo_Y^PXx0ƒ „dÛÀ{p“ðlÐ T˜"�ðZ|pYMa„d8šÀñhÁ^p2?`Xš0 pÒdƒ �á×^¬c\AÀ\ ËujÅpP"\`YYýbè l`wVVk»"V[^¸pV—]J2V{à¡pL+s´`^]Ã0,rY?bãÿ 5Áò@„�~b¶¼ þRp pWÿYX`sv`lvYýRpù ipdào^YMü}sVZ¿�ÒAûRp÷%¢tdjvÿbrggfumoY_Yp¢uûú�xravrïmfwf¯t\_]|9 ¼tj&ôóm¹æý¶æîàÓÿȼ±¥š�ƒcÿL@2$ÿþÜËÿ¼¬œŒÿ�vk`ÿQD, ÿóÚ̾¯ GÿŠ{`Rÿ@/õÿÙ½¡…ÿuhWFÿ5$ÿñàϾÿ­œ‹~ÿqdWJÿ=0#ÿ üïâÿÕÈ»®ÿ¡”‡oÿW?'ÿõÜοÿ±¢’‚ÿrbRB2"üæà bmV_ÿ\`fo’ñˆgÿ†º0û€©š'Б•Xù‚®/šg/–Wù‚ROšgÂà•Vù‚ oš×g /� ó�[W?`f®Ká”’Obž�’“V™‘Õ ž–V¨� ž�¿blv`zX�`ÿ[lhuffmÏãè Î’W^UÕ™â�Í�\@FÕ™âý•ì�Ö˜§E\Õ™§e@×—¤ZL¬â�Í�n þ Áîu¦v°�§à�¦[_ƒ ›§À›§N°›§V{�¦Z_�¦ïY]ܧ\îܧ[ܧZ¾Ü§X ºÞ¥Wã ·±à¶X_ñ 7·Bp�¦X\ =÷R¶[íR¶QÐúk° Í�V\a|Z]Zl…z¸rF0‰¸× lšºrF0‰¸MÀl¼ºê…°‰µ[�±Xl{„ß¹Wlï¸N@lÊü°ï¸�qÐ#Éë°"Êü° ôï°w kcàbˆþñbjwhvv¾q ¼fÀs‡hvwñ #p…pU@mŸjp šs̓Á]…l‰Á ŽÍ‚Á À‰Á ¬ªÍ‚ÁWV¤Â ÆÀüÊÍÁÐlmrhÈâÍòÆŠÀÆÀ{°jfýwðidýš bjWslÿ~oWhÿ} ‘jwr_`ïCÔXXÿvbuf{v×gfb‘‘j{hà@ 3àîDÐd wÕa üwÐ’�ivsvidÏobÑá’Ñbi!dù�œÐ¡�¢Ñ ü€«ØçmœÐÌ�ijsïo`vw³pbros`bwuвîÍÐm`ay`]ÉâØ°ñÐzÐi`ïY €e1biXŸYwõfqáWÿ[`WYZ]`X70NVÂà;Ð÷‘‘gsWVÝ «0 ŒyÑgmvðMOãY Xå ² Xå¿ Xàò€gVQHá! Mà|ác Gâ‰ä7 bGâ Mà’�#Ðdm«0ûÞq1bfmZÿ\]X X‹÷­àl`fÿmfbwurpjÿbwrrmoÿrdxmf¸þ«!bffX|_W—v]~iðÆÀîä[·\vYùá™@Òf>˜0\s�Ÿ’òçdðàf]WßW+/òY]f|�¤yÑ?ðEðý­àX{v[ÿ[|W\[ÿwaWl\^ßu ®/òX['o Eôg°|õ`à«/òWxð EôWç[Eð0ñV_o‹ EôVÙ Eðw f>r@`Éò‚qç`Íð0Ðdurÿolrd`l· —ïp´ ôsy¿YæUþæõÝŶÿ¬�’„ÿyjZOÿC7(ÿ ûéÛÿÌÀ³¦ÿ™|o_¿O?*G€ÿëÛË»ÿ«›‹z¯pa_€Hc€%ÿ ÿñÿãØÌÀÿµ¤“‚¿sdUw€;ÿ* þÿðäÙÍÿ»¬�ŽÿpaR¿C4%Ÿ€ÿøéÚË¿¼­¢³€ˆÿzl^SÿH=2$ÿøé¿ÝÏÀÉ‚“ÿ„ufWÿI;,ÿMP76 õÇ`ZUQÑ” X8  µAò  ÿ/`ss<¬Ñ-[t�Ñ-u[¹ Ds6¾GY]vDYï]sbX[vûDX[sªbW‹DWš¶6VpÜдqñZÿX\rp³î \Z_J`Ð. \Z^åWa»(\YuÜÐ[²#XvÜÐÊ}ÎW!"¿[bŽ,#a;5%`5 +ë[_Å$[__µÿÐM7[^ !| Í[\pY%E[Å -"°EÝ[íXå[ZÕ]Ì!©&\ªP¸'¤! ©&ìP~ Ö'CA¹ ©&=`X ©&Y%_D@ 7à!7@“7`q©&ÿ@X+?7ZD@?7¤!©?7`q©&WÂ!ä{7³!{7¤!ÏüJ@/ Y{wZoŸ_\àv$.P™.6$•`�w#ð` üÆ0+Z_pvwõÊá1[[]óVÎñð2Z|âø0 ï2u@=@•GVIÐ@"!Zè„ðÊþZ)1Y8¨06Cf0YBFUPgYQG¢`¨0þ AYhao arO{áCv@lzB•€GazB €@"!Yï_ ÆËY^`óÖ°BZ`àÖ¥B'°­@+Xz`dY )×Ai0ðÞHoÀÞ@ÍX\`©¹DF!ÖÔA·¡Ë�ZX.`X·!RW P ÝR%Âqt0Ä`Ÿ[Y}@W>@œNPQVP A5\@Ià¶zálP ®P¥!˜ð�}R@µ RˆUXè`¤0˜WYƒQ5˜WWƒQ™™Vì`d‡0ÈPkQ¢0\g`�]¨`iÚ[Ð í][Z@im`P(Ì `{RW#Q`üà‰T;WW•p`ÈUDa�W`ÈPî1sP^ûÈPZWoÿoi`mgiÿfjhiwafÝ~ 8í1Wk?ZWhÁñ‹`?YZh ù,q‹`ŸVXh“`ÍWõ_µ@ÖW^Z¿ph|Lù2WË^XÃaÈ`«0W]ÿ[XoZ[]\7EW\„p>@C âéhñ ÷eHPV@1M�‘ rýp°a&³!®c0p" mWazQWYVPºqtYX_rP«z)BWÌ@ ÐCWž áV ÂNávq‘ ­@ZrspPW�Y3ºc×0q:p§qVu ‰‹V q‰°µ}︉°?qéP ïðdýôóiðõZXñâÿÓĵ¦÷—ˆ[Lÿ=.ÿ÷íßÑõ§7ÿ‹vaLÿ7+ÿûïãu×M¿¸`¥—UkWCaÿóßÿË·£�ÿ{gS?ÿ+ïÿÛdzŸÿ‹wcOÿ;"ÿðÜÈ´ÿ ŒxmÿXC.ÿñâÖÿÁ¬—‚ÿmXE:)ðfÐÿ�Âu?ZYþ VXV[X\îAÄà‹ZÅÃhRY@pnÀÊÑ ’ýnÀ�" €PÇsÿá,�+0VZVÊ¡ôÚQ8�³PµV‰\` pF›V?[]VMÙRK•iWð†à'p›[Wk�!o–æ‚>�3°E–æ‚™W¿ –�óÌ�Pwç?áÈ‘ozuý4“¤ %°[A‘ªF”’Q%`² êP5EòœYË  1­p™ ­×0 0­u0AE *’-02�à�Wºpàé°Ë°g¬%y¬ À‡°Ž­oÀy¬-ÀÈp¶­ˆZ0É­y Ò’s¹mДs -QYÿWs`dvWï|WX|wðoÛŠó‚V_n¥Yy%°+»Xn=½gWP¼¶°<¼’œ¡d½;PP¼Ø° <¼Ä¡´½¤Q ½UPµ^n¡X6² ð½’u  ͉ Ìs± $,ÍP@Í;P̯± hÍ>@ |Í,1�Í0Ê5´¸Íu mÍÍ�°�àÌs²ÌÌœ¡ôÍ;Pà̯²ÌÌòDÝ¥!àÀÆ‘V– ànÔµàxÐv+YVV1èù2ÌŠÐ#`’ÐoÒY[áyÔY±°¬ÖKP¬Öx0¬ÖñxÕª‘¬Õ;P xÕóaôÖñ ôÖnpôÖ|pxÐH‘ßZ c*çýQI9íaNé#e `2+`ì�êpzäÌ1‡çêp‡æð¢æŽ’� üñµâƒð䔿à†àQ^}T #]]7ÕZæ13D]À!_ Á 6ðÒ ß âp Ôã ý _9ùa°9÷xp  0í°$f÷%ñ f÷añ f÷#¡ Ânp¢÷Z �¢÷Ýr¢÷# ñÞ ôs]_á[€Y€ÿìØÃ®ÿš†r^J6! )€ÿâ͸£ߎyd?:÷%K€æÑÿ¼§’}ÿhS>)ÝiêÕs«ÿ–�lW_B-…€î“įš…¡ÿ[F9,ÿíØÿ}{Å]N?Ïß »‚Ó÷¾©Å„[F1öûðÿ®—AdHárAô\�H‘"OqZÒP@ñÐ ×Ô'ÝF“¢P]ÑQÝG7ª1ø² !õ’ ã!Üã =»à3ÐQ",ÐRÝÐRµÀ ’ 3 ‘Ü™ã�òÒ‘]Œ @tàOrÕÆqÎþ®bY\W^c€%róÆ ù)`ù‡Ñ[›mm#�g¡b àáà Ò‘‚Pü4˜›"2!ï`;'q$;'U¡ ;'q ;'áÉ; ÑYÒP� Y]C]_uP¤�'®qYœ,e\— °-ðÅ,Öj¡ Å&©�Y¦ä‘E”ö%X„0ùE�"!Xv`a÷!3obr ôX@)à‹Ð.L°M5:Yý UpŠI=W»àL^=ñ]8X @ïa ¤Ž5pÃ0„œ<â œ<,à|pœ9X«[D" œ9Wç _ÆéP ”p“÷7tà ´4÷6^Ö Lñ<^ªk� /M^¿� DM]2Ö YM*  nMèQ ƒM\A�Z”ŸGJáT­M !˜M[Ö ×M¦$ðìM^á]Y”Ö!ð=Yk�+]›Ñ @\YA bˆ8aRë!Rj]_Æq]^— ”]’*A ©]?A¾]TA*Ó]^A�è][†qÂI/V_]”‘ kŽà2†p'mªà �œ9¬‡aoð¥mV— lºm=��l]X¿�UÏl[…q�l[;�“�`à†Wü A�yÇòˆ/qZ^ñ‰$/q´Ð7}Y0K{?�÷]s}[\ ñ€63æ‚ `Ëae�5¤urÖ °pà‹]ñ�ï\\Ùp.ý ôógûõ\ZëÙÿį�ˆÿsaL7%ûä#w¿±'•‡+wk]/A33÷ 7òÝÿȳž‰ÿtdQ@ÿ1 õßãιW�ý“[ ýÿíÝͽÿ­��}ÿqeZG<*0ÿâп­ÿ›‰weÿSB/ öãЩÿ¬šˆvÿdRA)ÿû?ºýÌMSM82?C51ARSÝ€*�î›ðÆåâZX\¿2÷�VÓs%ðq T" ª� «á� ì€W¿}Y\{_êpe± 4”ÿ!†@šWÇ\Qœv Q›V^?›xÀ‡œ·`?˜ ua:‘ Q�á�±•ÿ!齜_�Ð�X t½œƒ� ö�Z ­¨uàQ�1•p:‘Q˜p&K’‡Aª_�R¬ÍÐtR«ƒ�v¬Zv¬Tƒ /¨h:‘R¨hK’ ½«_� ϬÀ½«ƒ�ó¬Zó¬ R ~ë�W_ ]¿“ÿ[~`~bgpm +³ýÐ4°þðZWXs/½T³Ws^° þ2‘V~l~dWÖl¶kv°z¸Ujv°z¸iv°z¸Uhv°z¸gv°z¸Ufv°z¸dv°z¸­bv°Õ{·av°Êz¸`v°ú°ÑZW‰Ê`¢  ÅÜ /Ç DËÜ _Æ»à<2‘ †Ñ `?V\s‹“Ò�Á[sŠ:âÙ¡#4¬ÅÜ»ÀB‘PÂÅêð»Ç âËV;0'WÐÇxÄ»ÀƒÁ~�Ðö/“ß\[[Z ö¿’4Ðá9ѵ½l²[Y\nàÕóZÉðHá3â‘ Nãg×Iá vÝ^á ˜‹Ù,á“Aj¡ÜIáÔµÝ^á ÊÐì€ U3#sè0Zª êÖ Yá�÷×X ÷×½öØT¦PöÖX .èYô�/çX- /çE.èúPöÖ_WV[tèZÎ�€uçO°tèð tèêðöЦÒdp�1¡`nâ늼æWÆç¶ôÕ]Ù(ÀêéÜ�õ½ýçP+3+ô=ÄH@õ„0»ÃÔDºð+9÷jñÜN÷ò`÷Üà+œû¹ÐÃзö¨œøóæãû˜ ôsuë]€[‚ÖÁû¬€Ž‚vÿi\J8ÿ&ÿêÿÕô¢û“-€|qbÿSH1¿ýéE€Éÿµ¡”…ÿxcN9ï*öÀôÿçÚʽÿ°£”…ÿvk^SÿG;/#ÿ ÿóÿçÛÏÃÿ¸¬ •ÿˆ{naûT‘€:.#þ—€îØÂÿ«�zgÿTA.ÿõèÛÿÎÁ¶©ÿ–‰|oÿbUH;ÿ.!TOR,MOð7[WX Ð(!!ûö RW_^U^û€Q]9àž(\X(©@ò(Z1°(Y] ž(X[ ( ø(À�VYu`¬2jÁ(ë€ç . "a`_[ (V^ »U@S€°[^ƒÐŽY –åV[Ž õUXŽõWŽõ‰«0�.&p�è.&q�õV\ÕX�–ùVzßZ]xg o|uZ]oXV|r÷×¼á[Vw{?vvZu]oqýßËœ%YuãYo§à¸À¯)XuX ¾ `¡¯ &pž#WÔ!YÛ¯)WV§"\ù¯ ¦Va�œ*Ð~!`0øVí_·°V_^:9àPV_]?46JU@46[1°46Zf46Ys46X€402ï[!4Z`±‹Ð2op›4Yï‹3Ww½™5Wk¼6_4^Ô6]Ô6º Ô6• ŽÔ6ZÔ6ì Ô6XÔ6]ðÔ6á`¥5}À‘�¯‘À‡ð9*²va ò�0 ~!®Â -ôeE$±rDYW]¿o _]]] �E\=0ƒ’(3¤@™ðª@m°[_YW[^Œ@�Ejôa ªEX_� bÐÛ@¸áE0ªEW]P­0ª@fAÕÐ[Œ@�@Š TVŒ@�@CPS\D(ÀqÑÊÓ,W†Ñ;]bÚÑÊГB.0Uä|0Œ@ �E|0‘ÁÝ""À4`SÀ¡`µžÜ#V\µ`œRŠ¢VY¬V¢Pø*ÂŒù�T3aVbulK¢VV¬RåQ¢PNâÐ[ ÖP½àZØìCIÒâ cIÑÊã`~ë�bh0eAZ+ñ!rCFa§¢r@ë�NÁpÂõ‚Pþ€ZU±]:йPc]ðàb§‘8oÇ`°Ã�`dƒdãá�gìÃ�`ÚÁ\èÂZóAM=bÓ\YÑÏd×eKX^Ìg×`B‘\"ÅCnÄpŠ`LÑw$ãàLÑwºd€À·Z[]@1JtVö ð_³ZZj÷ëesYoopCaZkCOd‚p$±C.éâµp‘qÏd×d)YšQÎe®uW>qÏdéÃv¢x×`ªýôóx õ^\óçÿÙ˽°ÿ£–‰|ÿn`RBÿ7) ÿþïàÑÿ³¤•ÿ†whYJ;,- ÿÿðáÒÿô¥–ý‡Sl`O÷>-] ýÿîßÐÁý²ogXIÿ:+  ÿõéÝÿе¨ß›Ž…Ÿlÿ]N?0ÿ!ôÿåÖǸÿ©šŒ~÷pbÁF:w&ÉùêÏýÌÓ­™…q]I5ë IODE,Þ Ï\V\|´á¦âƒ�×R˜}À•[“oa“A$œs §Ü"(–X~06œXX%@Jœ•¡I6œ™ár�àJ�Ì,°(�^°f@\VwZ\^à}»”kZ]àÈ–YYà9È–iÐYÈ–ÜàYõ—V¬1È�ý‚íW‘Xà�C^_²\VVpûàŒÁ¹\óP @é5¦XÓA§~à O¨YO¨XO¨+ A œ¼’ÚâOˆ§$Є–¨# –¨±Ñ–¨|adÈdB�¢v Ò§#À*–§Ve`á¨]ÒᨒJ0á¨Ká¨$Ð câ§# á¨LQ;¸3q;°ƒÀÐA˜À`0èÐ{ rg y¯ÛmuJ0gmu¡¡f–µ±Ð¢°�Àް ¾¢¢¶q¢°ømJ0 $ʵ$Рʵ±Ð ʵ:Й ¢°†__¾PìÀoço ÷ð¦_]s3dC£ó bÇÞ±YÆF±;³ÂrÑ@'ÈMÑ'ÈÆQ'Çë¡rÈ’e`rÈ °rÈJ0$6Ç'±®È$ЮȰ¡Ð®ÈÆÑ®È:Ð 6Ä^_½_gÐ~ñ[ÿ\}Y\ua|ŸmŠ/ÑÕv»ÛoÛmÓÐø\u Õ3Â�YÐfA>q±Ð#PS>q|`tØv!$t× ±’ØK’ØaP#Z7ÙÑ#  Ò£˜ÒÒ¹°ÎØ|`ÎÔ[^ÛXXÐ HsC[]][oljüÖ­ZàiüÖYà¦çXo–1üÖW3àVæ\_3àFç^3à• Fç]3à å¼£€EÄ„ñèÑ‚èa‚ç ± $ èJ0  èK èaPI è#  è¹° èø¾a;°~±Z Yhù r°²±Z XVh# r°¦°¡Æ¤r‹t` op²±ð�_[YAôXIð3XNõ5 [ð~±/p7ðMðlô v÷3�i÷0?i÷ÓP[õ]#Áªöú^A ªöY][ œ[ðøYô0Þhôs[_á_€]€ßìØÄ€œ÷ˆt€L8ÿ$üèÿÔÀ¬˜ÿ„p]Iÿ5! ùÿåѽ©ÿ•�mYÿE1 ÿõá͹ÿ¥‘}iÿUA-×ñ—€É�€¡ÿ�yeQÿ=)ýÿéÕÁ­ÿ™…q]I5! Û€ßåѽוÿ�mYE1 õûðÿÀœDÿ�Âõ?d×…Ë?ý‚_+•ZùàÑ Y cä X­à÷ W�à ³Pâ YYì ' 5«�F¦¡0B[ «oXª=0nX³@–XH10â Y‘ m‘ Òâ« ææÁâ W^Y›ZW^U@nWE[ò�¦7-‹P6-[ÓP$^-µ�-‚�•‘I š- �®-T@Â-”_Aàþ�^¡ÐX›W i s”ò"XK^¹°n 4\2 ) =e`*<[±*<&Ý„;oaf=I z=³@ Ž= °¢<’U *ª` m+�䂃Vp‘�¬Ñö€* ]Vwd PF“vÝ¡®t±]{°¾±‘bh0(£_ZL� P“\]L� P�þ6¡]^v`a ù!NòŽ�obrU —”X‘‘ –•XŸ‘•¤•WŸ‘¤�é‘[�\ZZ§ðûÐ*¡[*/ 3  á’- Ÿ°ûŽë’Z^f~¿~b؉¢Z=Z`Ð_~ ¥U�Ï_} ¥ÀW‘ ü’ñ”ù�MaYÿ[k~~dgpmúë’M  d ¤Y¡k'¤Y ¡§x¦}3 x¦ @§ðx¦"Àšp¥§˜ñ' Š\¢Zb£  Æ¤ó’–ù”X\ò“ù�±X�¡@'¤Xž¡¶"ÀÔãäXˤÓ¤XYoYXoå£UWb£0µVb£P·‚ó’ 㥶ÂCàEÀsµZª|° €¸Y|°€¸X*|° €¸W|° EÀ Ðû\WÓ_\ ˆ1LbÇ´OÁ‰Ó»éðåÒ¼W3`Ò¼V^ Í— ÍQÀÒ°ÐÆ²¥pͱå°Ãµpß²tUËéðgÌXUËÀ‹Ìú`‹Ì÷àå°GÅUhͱUÈhß²ÒËBéð äÌøÐÒËÀ Üà§PÜËÐå°ì‘W_«fae Ó¤W¢d  ¤W ¡¿ ' í!‹WVó+ 4tÓ‡3 ZŒ×ÿ ™Ý«à­Ü€a ÁÝö ÕÝ1­Ü¼aCVþÝÇ0ýݦð %íbl°J$tÓÛm†Ù‚?TdTçZ`uíjP@Tç;ЂTåU­Ú’gÅí+ð±ì¹�aì¹R‰ì€a�ìõ��ì�BÙìm!Mì�!@aì b‰ìb�ýò@=ýàƒ¡AÒñ‘ò€Wôä äan¢!þôs^ß aú€_€ðȬÿšˆveÿTC2 ÿýìÛÿÊ·¤’ÿ€nF6ÿ Þ®›ÿˆubOÿ<.#ÿöѹ«ÿŸ�€eÿJ0 ÿðâÒÂÿ²§Œ€ÿth\KÿA5)ï‘€çÛÿÑ¿«—ÿƒo[Gÿ3 ÷ÿãÏ»§¿“kË€Cÿ/óúûð2õpÃõAèûqå^W\sÍw²D¬oÒZáà épA€â XD° ‚ÒnãºC@6‹0Dž1X‘Q ã@6QBXeBXÉA¨€ÞA¼òAÐQäl° €ZM0&Ú� ,‘Q ,„rH-™q ,èr$p-ò@„-°  ‚Pð{^W¾àXl]\к@°ÐÁQ’^VZ`iБo^VXWý¡ Nô¢ðÚ#ÿ ã Ë"Ww½ŸÉ$Wlþ&k3þ&†p‰Ê#å�± é�Á!m°‹FÁ^O\[[Ø�P¶E“?{ ^a#2O0ï]IV5\èa6Âpa0å€xgWÿ\zW\w{mïZ]oV² îÕ’_Z`üA²]]ìð�W‘bZ¢]]Z [¸±¯5³ 1¢¯0.‹�]\W‘‘ –�ù�ý[ó�spr~Wÿ XZz`bÏ]á1‰°ï<å€Z^_½[è0V~ Yî1dßbmC]\ç1@^D@|1?~ç3 X WWVñ1¹ö0:B[_ZBC[òIEö0¢1ZYXåZ<°@°× ]ZW—vfvy�ë€�BooöÑ2ZW‡AÙ Œ@pÐ]Zº°s—~f]D@G‘Y?Zo o�°Ë@U Ë@ Ë@Ë@Ë@ùË@‘YZ¾Ë@pó@Êó@ó@ó@ù1YY `Ñ ûåCŸ0Ò1‹YV‡A Œ@M`?@V/[ufW‘Õ`,TUZ4T� yK÷2°Wb †°Ý}° ~B__i_�.À\J2_\Õñµ0•2_Ó ðR_¯W]{i:ðÅÐ2_‰V|Ð9P9¼PÔ³¨ \Þ°¢0_VVvC}Cß^w[[o¢P >äB^bh·°Ò0ÿ^_^{ijúаÁ]{wZßoW_ZY¸ßêÄ\˱г^_X*˱ HÅW˱ аË!í_*0;ª‘Z^^Õ[Á dÄ^Ð +>ó#^Y`ŠÀsªP HÄ^^ ¤ÅVr˱а×!]^sÁW•Â]xÂÏÅåYÁÏÅPÀjÏÅ^ÀjÏźÀ!À{” Â\\ŠÀö¢0^[VÒbœÊò&Ôa0ÐÁ[\ç`Ÿ3^[])Ó0Õ®SÒa0Õ\)Ñd» kÚa 0Õ[tÓ ‹Ú @Õ¹PË!å[*0 .0Ï[r÷jop.ÀW^S€À"³ ®É#Z*0@äÒL@4À-°´`YÎAÓ½ Æ•2^é๠àÁ!YÈ$X Œ@Á!Y È ¯"cfƒ‡nb=æ• Iëæ` [ìZ Ià,P=å·íVIà;1¾fCˆ¦ê¶ê�`¶à„:åsØì¬0¶è*r NüëXüêæ`ûˆë@Øèns @üE ¶å]"âd¶àÏ ?SI‰ý0 C!0¥XV"k!÷"ôsr× c€a‚×ÿñŸ�ÿ{iWHÿ=.ÿòäÕ}Ç)€ªœŽ/€ÿo^M<ÿ+ øÿçÙÇ´ÿ¨”‚sß_NB]€úèÙm€ÿ´ Ž�÷r^€A/õ ‡€ý‹€åØõË“€±—‚Šy÷hW£€5$ÿñàýϹ€­œ‹ÿziXJÿ<,ýÛ€èÛÎÿÁ´§šÿ�€sfÿVI</ÿ"=èþð@ ×£=iý �WX[\ yøû‘úZZ P:` pE^V] ù»`vÑØWù_¬0W^_Þ`]]`\[{`[Y`ŸZW÷aD $¡Ó ¡äp¡§±´¡FWL×TV™_jà¡V^’ ò]¤Oðò\>pÕVtÓ0åž�~P×°в."ðË1аÆ�]°\VX]¿fvÈG&VVQ!ÉW%[O#V&T‘PQ!g&ZO#V&´óÐQ!g&YZP" ÖV&YZa"g&X\ZP" V&X\a"Í'RO# Þ'`#g&W×#‘ V& °Q!7µ# $"7Æ#"7O#U8a"õV ùßVuŸmfNÑ‘P_gt÷1‘P^W¯Àh˜@¡3ƒp«5]_¾ ‚¸6^é°˜@º�þ0‘ØáÑ‘P² Â8á‘PXÿW X[mpg«ØW#V|ð`÷1 ²ü0 C÷2áì3W/\ XV÷1ü0Õ2®äp[þ4YC ¸ü0 ‘AB av÷1…ÙEY)B@‰2© +BDY&DKG&@RXC_@ÿ3WC KF”ª@WD_FWˆBFWE C²Gß@XC¡E‹V_C KEQWDF_EV_âB@Õ2VOqˆF#` C VDPWDê V]÷1 EV] CWXjRLWyPXC_@Š2S]?p’ó°%�^x¹ ê5©TÛ ê0,!õV?"E$V[Z][Wl�;DòÜRVf åX[WYi{öZXmöYöhPj\b¢j[’Pj’ÀjXøPåPÉRYV}óôÇTu`{óî|gu‰hhx‰`Bu`al{h÷a¥fW]WxÇ è8#©Pà `m§dVV³°&DN¥±VîhÁðîh&%%ïgÚ°p–1µ 7@2àcXÐmg dq ‘[Y�†ƒp|CKp%�Qq–VvZ[OshwNthVvÜPrVvV]OsqVp ”NpW^� ¦îеw_ð+�Äpê ™\’À�öþóôz dúbóæÖÿƹ­£ÿ–†vkÿ[K9'ÿñßÿÍ»©—ÿ…saOû=?õÿãÖɽﰣQ‡qÿcT)û àóæÛïÐÁkª�ÿ‡q[Nû@{¿ñâÕ‰½ÿ°£–‰ÿ|obUÿH;.!ÿúíþ§Óƹ¬ÿŸ’…xÿk^QDÿ7*ÿöéÜÿϵ¨ÿ›Ž�tÿgZM@{3ü` ø»][Î0 ]…[…ð{@ ”b°–\'^ –þ –  ––%C”’2–?•Õ°I{–i{–v{–2ƒ{–�|•�I¼–Áð¼–Ó ¼–RÄ ¼–6À ¼•YîI ý–û ý– ý–R ý–³°ý–Z3¤ý–œ ý–é ý–WÇYý–}2”X_È„¦à¦­ð¢€¥\¢à¦¦GЦ¦Z÷\¦¦YZ $¦¦Õ𠦦ڰ ¦¦š0U ¦¥WWà ¶^µ0r¶],ð¶\]C€ž´[[¶Ú0ž¶YW¶%4¶ÒжV\áÐw¶´ë`•V\”Vñ\L°{@,!] ff’EÀ#×Ñv‘ ‚0ø\£ZZ„{@A\4ÀßXgG"\X·[omZBâà´Vbè³ï°–1 ÌF#×\W\è³ïµWXòè³ï°,![s{v_o Ù[ Õ {@?Â¥0V½__ðbIÍV*òP ^Ì[XÂ^À>Â%V{à{@z1[ ‡3]ZWÀACZ_ Í£ •2˰uŒÃ� !<ÃÆ �A~“ZV\_àÆqZHÐàÀ±ÂVYZ¹ÀÙ½À¤ÂXüIôy2  ‚0ŽU%Ð%Ð%Ð%Е%Ð%Ð%ÐAYÿvjVYfÇ૳Hѵ°PÐH!Y_Zû^‹²  ¬pÐøYXàúÄY„ü¹À ÔˆÐ^�àÄY&ZàÀÕ1YZÀMdvÓøa�ÕdÐàÀ¶í1Y_^@p y Es×ÔZd âÛ¥Y\@ ãÚáPê]ï_ië]`}âÚ]Zh<ëïWaâÚ\[iÑ béépâÚ[\÷k „ë[mÞ„ëZa„ëYd{„ëVl âÚóZ_’PÞë^iòÞë]àÞë\`žÞë[bâÐFXÿY_aml+±:ô[BòHð–1õXÜ`³DXW\ß{iwHõW[¨mò�Xq±—ÄX3†0Õ1W^#ðcðVø[X›0ùDZÞ¨¿`åFY¼óåXR� )� BpZôsnzae€c„ÿÙÌ¿²ÿ¥˜‹~ÿqdWJÿ=0#ÿ üïåÿØÊºªÿšŠzjÿZJ:*ÿ úêÿÚʺªÿšŠzjÿZJ:*ÿ úïßä×Ìm€¶÷¦–u€xiÿZK<-ÿÿèÚÿÌ´Ÿ‹ÿvdP<ÿ'ìÿØÄ¯šÿ‡uaMÿ9%øÿá̸¢ÿŒv`J;,�píô+"vt²0 .8#uj`° ﯠ ïù` ïAöd±É´0ïaÁovÿ]\u^og`Vî‘È9Zu]êDZ1°MYuYºZMXuXZ]ÇNWu[Z�ˆNA–Z�Çq–VêDM;VuZRY�ÑX… �«Vu¯ ¥[A\›Y[ve%WV[" j`$mpp7@8:'ƒå0\j`ÓÑŠ W[#j`¤Qi!V‚#& ¼ôÚ\"j`Š&ñ\" :'!\"å :%iVGÕ Ç%X" Ù e"i®³Ù ¼i×ßÿ)¨!÷@Ù'»" "Ù&W#I!í&Dk!I!ÿ&¥$I!=7”336�ÿ%g�$I!úÙ ; szb ÿgs l]|VZ. «³itÃÁïpÀ1SpïÑdppvÈ``‹±Ï×6SXX:på3ì8WÙQÂå3ì0bA1ŸðGÝðüг1z¡})GX[W8G‰XZÑ8GWRA)Gm@á 8@;ñå1ðPx™…Fø0“@-q_ÊÍÐ"Yó_€°®E[ÓÄ_ZY7�ϰ¦BÀÆ�ÓÀ¦BÓ�ÓÀ;ñ^Xw]]¯ éG:6�÷JW÷JSp�÷Iùa÷IX°7Z'pRøG\Á!÷H\¸� gZW gZgYn¡—Z4ë`÷HY¸X3ùÇWS _ >ÙVW^^ çYéñ çXRÀ již�9çW” [7jPx7jSp7iWWgjwp7i�À‡jú`7hêéçPä^²°Xl¸°ü�^p*c€¶ëAÅd]]ª@Í ”]^âéf][HàÐêe¦° éfR@ éf éfY^ÜàêeÐ éfWZðêe–ðMJ“\µ@^v“À^v£]XÊà_u¯ ^v[DÍÐ^vZv^vC`•%\_ð¹vs`¹v3½–_Y �÷jôót × fdòÿÝɵ¡ÿŒxbNÿ.ïÿÚÆ¸¦÷”‡?mbýTE=0ÿøìÿàÒŸ߫ž‘_mÿaRC7+ üqÿâÕʹÿ¨—†uÿdSB1ÿ&ÿøçÖÉý¼‚𦛑ý…Ÿg[OÿC6)ÿøì÷àÔL»®ÿ¢†RCß5&Ãÿ÷ëßÓÿÇ»—p÷_Sΰ1%ÿ 2= ÿW>dš™>ùè­Ð=°a¤ê¬ÑWµá•Yañ�á°�X{ijŸwf‚ Â�Vam`bl/�>ý‚Xa£”\àË L� L�Õ`W[R°�ðh� h� h�U h� h� h�h�þ¦@WYuŒT"Ðh�h�h�h�1„‘h�ý�Y_�L”ßY]a´•\a“´•�´•¶àI¢µ”�ä•H� ä�>‡’Xšª“\àA ä�Ò°Ê𘰠@?ðŒ¡–ð,B(¢è1üþ¤BWXu ‡T2ÐK K K K UK  K  K  K Õ K h�C¡lßu`os;�gïru~óPG†’Xb4pÅc•   ž›¦W\ ¸°’¢^8�ä”q`÷¤¼�ÙÁ¥�@ p·ÒWX_Zsb¤Xc` %¶¤Xpå ³Ýð>å¥V[^®À´(K ®À’¢ p™�¤Ú°� <¶„P<°¡PÀ¡" W´:¡? 3³<°Ž`‘X0 ‡‘Œð=ò…“W]“µ`0°“°ž¡o@êðÓ«µXÝ ’o@�ÀcÂð²É´qÔòp¯°–ñð‹²[“µpup“µ¤P“µX“°fƲWV°`�@0“Š%ÁW‚Q/ËÝp/ÉZ‚R@QË@pÐ2Æ*Á –/ÈV^�@ „É’Q ä„ÉnÁ /À‹²WÜ©µÉðÛ·´VVw_ÏÇX ÏÀ¾Æ²VYZYŒÐ #‡ÒÑœÃô úÀý�UW8°<´WD°Ö[ÐT´Ì°¡c´Ì°:¡™r´Ì° <°ž¡VÛ|lp‹ÐWVû`a2Aoawr_YÓ[Ô]`ýÏÄV]ZZ„ò‘ÑÃp‹×—ð‹Ö3p·Ú$¢V[(�g•’4 <´úÐ1ZÕY[X HðÐÒc`ÙÕ$<°üw m@_XZVY_®$³ ðP}™ÔW^[ÏÀ�`‘<Ð0 %¡ Lp b>…“ \2æ£Þ0�Z0[æÂ`gæXÀ¢gàýÁ @�À:¡TûÃ* ^8£“àþ€Ú•`ßÀÐó§}|ígÚ}VÎq,»ºà°o}m@N0Çà ¶äÃ}V�°?àÈæç0„¿àraÇà:÷ãÓá\ê°Çà<ðzZ]ÿVVxg[Vx{vs#ñoX[|úÑ=ÖÚ#w{vv“!ÎqgÔ9BóVoß OXWOð>õYF BÎqOð¼ló\ðVaðeø¨!ëáŽù†ñ¥±ˆeøÃêâyøúáÿâèOðäç1 Õ0¬ýôslòÕg€e€ô €Æÿ¼ª”~ÿhR<&ÿúèÖÿIJŸ�ÿ{iUA÷-?€ñÜÿDz�ˆs^I4a€ õàË{ÿ¡Œwb÷N:�€ÿéÜÏÂ÷µ¨—€Ž�ýtŸ€ZM@ÿ3& ßÿòå¯Ëÿ¾±¤—ÿŠ}pcÿVI</ÿ"ûÿîâÖÊÿ¾¯ ‘ÿ…ymYÿA6"îÀÀ%¡vaWãXwU àòåV[wüQ Ú"Wv`dx/X[`ù±”'"ø<Ї‘bh'þ¢2W`adaX¿^aW[ =¦¦W`9 ©ý�_°�L”_ª½  ä”_¼�¤^¡×@�@c´�à_àì�}@r´]w^š¬# ·Wà<´³]wÁ@ZÔ]wàˆ·Þc�è´Pè[ư 8êb £P9¨%CA%ZÀ@)&^Y)&]€@)&ó@I )&° )&Kà )&Šcà )&X¶0)&ƒ`4)&ØÀ%Y_…°«&’³`«&ãP«&û $«&ÕЫ&¡Ð«&S`•%Yà6�°^6V\%Xã@ñ -6óQ-6]\ -6\Z -6á±-6à-6}à-6ù±-6ÏVY%xô¢63à¢6]YB¢6\DP `‘…0 K •K K é1��ü��¡\ljwXgïK÷6Wg)@þ\¡VA@@“ JEÛpVàÐ@,FϰV}5B'@ÊàˆADGA@@RI!BZOLY6AIPJ{^B‘dKœ@@£L!B POKÆ@7AOKs^BdK$ð@@âL!B ]³BŠOKh^BdKDP@@6\0 @`]RŽK`^B¡dK˜PŠAOK`!BD´]6AŽ@>G4C 'FDXB!B'FÀ 3D k*!B'FX1F .k!BÙ'@ýÁ\50[&60 ûÃ]dZ÷Àhk¢�àh` á]`^ñÀVŽqP#Xe–`7`+ÈifYad¬²j3phg»aà Ã`ð\`@8¡àŽ çm˜`Ê ýg‰[î`õdh`{q’)wY�â÷b?} rŠ)wXògýgutqÃeºb,°h``‘Là‹\iÒ[oÐ# uÑV†zÐ hÓºqrÔÅq èÊpý‚È��Rý ôó{õhfòä_Öŵ›g�ÿ{m[Iÿ>- ÷ÿó!Ѻߡ”‰-kÿ[K;+ÿ ûëÝͽ­Cÿ�}ncÿSC3#ÿ÷éÿÞÓÆ¹ÿ¬Ÿ�„ÿufWJÿ<0$ÿ ÿòåÿÜ˺©ÿ˜‡vdÿRD8*ÿöÿèÚÎÂÿ¶ªž’ÿ†zn_ÿSG:-ý!µ ýñÿåÙÍÁ_µ©�ÉÏÿ[I7%CMOS ýÀçYX: �_9°û–^œ…0œZœŸ0œRpМ«à�«�YJáËI€”ØÊ‹”� Š•"að ¢–â°Š•Wx0º–ÜŒ º–]º–\qº–òº–Zº–'Y–•„° –�ž ÿYVv`a"|œ¢…ðbr ¶¢((0‹ðþ£Y+±þ W°HF »`ï°“oá ³Î!@_@¥}àoh¥[¦Ð¦M t¥Â�£¦] £¦G[  ÂЈ@Z°÷ ˆÉ¤Y[ZÉÕ§’�Õ ¦£XÉ¥ž0 Ç¥à^9 Õ¥à] ñ¥åÀé@  ³W? wÚ’_ð[5@=V“WZWJ°ŠñÜQ°Æ°YX±°__öïP e¶\_Xd{tºWht¸¿[_\i –ºZ÷b –ºXk œt°¨àY¯à Xœ0_ Ó¶Cß·gXß°��X\¥p“ú´o Š“ À]s–“ À\–�ÞÂÐX\[ �ÌÜ/Â7À3ÐX[Ú^° ýFÃXX-_,ÐÁEÄW–`íàØbÀü±Û1 acÅV\Ö,Ð HâX#ð_ß´#ðÜ À�ÄØ™Çèd ÀRàXv`jÎÂÃVËÀ,ÁYYF"¡ !2²ÜÀ/¡4 þÙÂX`mo—÷ ÚÁVf~¿~d gØaã Ô\À Ðu 9ÚÓ'Ód ÚáÀÈ0ÐÃÁo  [ GÁWaÿm`blƒ6ÒW])Ó ÙÓqÓwdzÚa zÕå\)Ó0Ô¡ÓdΪÚa0Ð,ÁW[¿{ij §{Ô[r)ÓªÕàÒdèÚWaªÕZ)ÓêGdêêpªÕY)Ó¹zÕ@âdHêa#zÐÍÒúÂÐÃÁÒ§ [ Õ±VÓÑy—…á`ç¿u|BÆp Ês”âñÂt §çb½y ÊpÃÁ)0:ârÇXVZÐípãâYaÓ ípf°X9°\�\V‹d²þãZ°• øZñ ðØâWã [ Y`7`V\[ZYˆÀ‘7÷XBòá Hð,ÁlÀè `ì8óóaV2 îÒ+ d Q0bö2X �\d o ˆðÃÁ \2ÒÏ`‡Àö«�“úâXZ^ô½p“° ʲXîÒ° óïZ^wûíXZwÞûôôsv_ i€g€ÿîÜʸÿ¦”‚p÷^L€0"÷ '€òçÿÝÏÁ³÷¥—5‚m_ÿQ@6*ÿüðÿäØÈ¾ÿ°¢”†ÿxj\Nÿ@2$ÿùÞÃÿ¸« ”߇wg�€Gÿ7'ÿ÷ç×Çÿ¹«��ÿ�s`M÷:/­€ ùÿéÙɹÿ©›�ÿqcXAÿ+ ùÿçÕñÿŸ’†zÿocWLÿ<, ¿�Âu?ìÒ[ïWX_ø¡�Zû^º` W‰Ì Rð ÃÀ[Vïi trÂ[V_ïv %âr[VZçvP<Y½UEXvPVv&¡‡`è°W ŠXa[ò`]=ñB«�xib’0@™ ž¬‡`™rŸZ—@ž<òN°ž±à™žð̰¹0Ò°¶pZpYÿWwVZZX[� j0Ùéa WX #!@ “$W$î ZV Ñ  Ø~ÂÁZbh&È¢•Z#ð\ä`s*ÂV!Z^^'Y¦p^'5É^'ù ^ ÐZYåX)Ó zÓœ$d pÓœ$éà¦%\VNÂôhð™!X¯ãÏÌØ%Ôqæ �`ZXþrÓgpmŸŠø(d1 0H!„0 H 5ã1':2':ea1 0S!XY‰â-•Ö¢ZX‚"^$u0ù |73ÀŠ8ÿ�Š8˜d –$ßÕا#ïÕ$¦$ÿÕÄ5äÔ5 ä�ô:aÔ5@äîJdJatÔ5ž$DJd DJçazРZWWß}dú²ZV%lÄ ¢:“1DwA?V]ud�@�B—Z D…AÓ@ h¤pa »A[¬ì²C”ï»CWÂE Ë@̰Z×Ò±[‰òY]îpòN2³]Xå_XÐŒ* Q^]½ W][ W\DϰW[`°WÒÀW’Ñ`W%ÀWþ�ôWõ°VW_\=�W^ZP¬põYÛ�d£òY\[ ›[ ã`R“ð‹ ÆTYϰÑUÑ ÐÑP®Qç�µP�[\uøP[üP\X   †“[X!�ÑTmCéTó�µP�‘Zvð[ÑP )2³Z†`Y‘ÒòDbú LhX‰ÀLfòàhhXXð0ig­Lf9 ’h  ’h ’h«�L`®Qì@µPjÃÀY˜CYXßÁäÀâb/¡ 4 ×ao 9Düb^DÊ¡X©‘_È£qAÀw« ^“îvðãí@³@rpðX ’—W �®ð]{•À8o| po|]o|­@o|Y o|­›®ñÞ�0 ôóxÕýðjhðÿäÔÄ´ý¤‰yiYI9._ þ'Û-ÿø¬ ÿ”ˆ|qÿf[OC÷8+G úèÖIJYÿ’‚rb÷RBi"ÿòâÒÿ²¢’ÿ}hS>ÿ)ÿêßÕÆº›œß�~o¥QÿB3#ÿûìÝÿο°¡ÿ’†znÿbVJ>ÿ2&ÿöêßßÏ¿¯Û�ÿ|p`Pÿ@0 ÿ�•?è>Ð\V_b…ÒÄ3ò‘`±" šbhîÒ\V^‘bHÑP0”’ -—'’Ä0ž��\V]vJ  2\ïVZl4¡Ê“Y“-•„’b •X“-•¤’µ°B •VF”Ä0<L P JG_{G^H ‰>`æ’Y`°ï•o û–\û–dû–.°¤û–p(ð”· ï•WpšPC¦é°7¦X7¥’è°ï•õ°7 GÀ[w]^W]ÁW�¥µ^ˆÀŽ¥[[™`;V�¤ZYW^ÁŽ¥åZ\¬¥¸ Ö˜\ÒС±à Ù G\¯Yvã”\ß�0ü²¡pŽ µÊlÁޤ[¹ðH`óÈÚ£'°qa/·ÄqíŒ0µ• ðP´¨™\·ñ!ŠN¶Ñ@™z·<ð\·ã¡z°GZX‚¡Ñ@JlÁŽàýD`_$\pðÒÀ†ĶVV "Ѳ×¹.0Ѳ ×¹K@"Ѳ ×·г ÈͶI Èâ¶ @Éøµ@ɲ Å×°üYY˲cﳆÁâ°�É x1�Ɇ1�Ç¿È$ɿȚÁßÉ5îDàÈÿÅ$Ø’šÁÙ5Ù $× OØ$ OØšÁ oÙ5 oÙÿÀ�EY”ž¦Ð¨±×"ºÂ¦ÐÌ ±×Þ‰ ±×ð ž‚æbªìc[ób ùc[#0k;FXZ %ð“X„ð <à(âð0à(âwZ SåY 0å²p<å pØ“X:åP �æY�æ‹ €�à(â¹`0å5q�åð@¼æ‡0¥åÈ@0åß�PàŠR¥å[ 0à‚W]_ú+ ¢^’[W\v9 \Äà|ûô³g‘  Ã6÷2 3ÃVø4I9}P&õ§Ä ·Ä ‘÷YÓ¡øjÒ¡ø4 òo i�ü‹ÑÞ º ôs_k€i€ÿôØÌ¼}°€™�{€WE3!%€÷÷-€×Çÿ·«žŽÿ~n^RÿD7, ÷S€îàÿÓÇ»¯ÿ£—‡wÿgWK?ÿ3' úêÚÎy€ÿ¶ªž�÷ƒwƒ€\NÿA1%ý�€óæÚÿξ²§÷›��‚cWK;+ «€ÿöçØÿʽ® ÷•‰%ðpaÿRC4%ÿôáÿÖù®ÿ¤•†wÿh\QDÿ7* OP AMP‚ §Pç � ]XéZ [_i_]ÍP tt+]Zß�³³]ù°ñ!‘ PXã¡d)!$skÐP®P][àIDA÷� I”s` j’g]XV‘Z2¦â…]kpI³Upº”ÃÑ`1ÃXW"U³\³úf±'ñ!I'„±'“±'¢¢±\°” ° I-‡Òò]VÙði� [VX)`ùé¢]jqó‰r| q^b1]VX`Ö ¦X[©`Ó e â\Û|Y`Ra2\vÝ{8°S´²\vQVðpPÅ&YÏ!Ô)€ì@Å º"Ü s`· ­!sò²!Å �@\fw÷’bYYXcZfy�Å 3WY#1i· `‘^™P n1â>0X D6¿°D0È!ÿ^^_ufd úD0 `3huffpÓ D5ð ëã\^VEP§3^�`'‚B…\n¡ ‚ ‘tÀбCaE4Õ¡‚ `‘]›ÀùD0­!\\`_s Óé¢Ù1OÆ#Í\üC -êRÐ Ï”ñ@�[Û1 à4 @ùì0‘[Zf|wßu`\ZÍ_Ü0@;`2CYzc;@`‘5@ì4ÿZ^Whu}Q"ð’[@Ô°mÔ3ZÛ1ý ;E\`XzäIEè0ì0ŽCZ D4Z7P£F�`£F© 4D0‘Z.ô’7òÍC’»À×GÉÂçHÚÁ46ð1BXÜ0—Òò QVX9TFP,V- ÇE7Ô6óJS»ÀITWÉÂdXÚÁ6ðLB�p£EVà �Vä@ �V°�VÜ`pDY6A È;DÇPE@IDÇP4ì0ÃR^Ü0–SîPSPÃR]Ü0ôUñ]”@P1Y] “3ÂSÛ1 ÍU…B ÛUè0N}“ó´È`ØC&Ä[gÉÂkhŠÂJTYQôUPP$Nb7Ô[eGÔ´gÉÂIÄhÚÁ6ðÈ!YºÑ‚Zp;€¢ê`ÍЭáeCYhÑÑp@2ÿ$ ÿôæÚÐÿÁ²¢’ÿ‚rbRÿB2"ÿòâÒÿ²¢’ÿ‚rbRÿB2">8?20?]R€1ý^°~iddyÒ�’“bd™ïad™`d}˜h~k OšgdO™K� Ó —Õg[�˜gÈ�Ñž€˜id™K�ª˜f[� ˜fk�¤Ï™;�¿™K�˜dª[�˜dk�Ÿ˜dQl¶pÿ™«�˜b[�«)—bk� Ÿ˜aª[� ˜ak�˜`B[�ª¶pŸ�¾ ^ÊÓ4åb¥¡I"® ”s^Yöpé¢^X[(À{)�!^XZ]¾±)YŽ"Ù \¾°á A­^¬àlÈ2^“± hÓ ò¢½P:¸"^V[h‘0á Ê¡VDà(eBM^Ü +µqà 7¶w] 7¶[ 7¶‡Y 7¶5P+µ¸às¶]s¶#ðs¶ä@+µVY£¶¼À+°¢¡Pp!Õ"Á±I!ùʰï°^`WWýÎÐ[XbxýUTâ]bh'õ_]Ô#ÀI!©ÀL^çàU]4Π`L[aí«"5àÏ_Z ûÕÌ  ”HæÐ Hæ\@Hæ[÷]HæZ[žHæYYHæÛà$Hæ½ðHæŒPûг¾·àXaVYY;!·¾w#ZZvi$Z¥ZX0ûÕkAéæ]g^éæÐ  êåy[ @öZXö’Rðö?° ö‡° 4ö§0 õY_Ý0^öO^] ^ö[Ð^öB«@^ö�1^öuÐ^öJÞÀ^öXà ^öWÔ@¨^ö¤QõX@0ð÷"ôsmþ× m€k€ðÿàÐÀ°ÿ �€pß`P@%€ ÷-€êØÿȸ¥•ÿ…rbOÿ?/ ÿüìÙÉý¹a€–†sÿcS@0ÿ  ýíÿÚʺ§÷—‡…gWÿG7'ÿ÷ç×ÿÄ´¤‘�q^N»€ÿ. øèÕŵӂÿo_Lÿ<, ÿùæÜÍý¾ížŽ~n^N>TÐÿþ'ÿã¥Û>è+�‘Z生”òK�û ¢�“ü�IÐ +  «�ûJ¡Z¡+j¢’z¡+Š¡š¡+¢¡Z!Ó®¤²Á½½¤Z©Â^ÿY^~l~kgpmŸ)2Ù¬�9Ž”Ûb�Ö­kß çkk�Zök ÔÔjߥ(jk‘öj *9(ißæi¡HÖZ�á(j‘öEh 9(Š�áæBš‘öÖÊ�á("Ú‘å(  áæ¡•öd 9 6lGb9(J á ærZ¡R3b(¤j á(z¡öa" 9(Š á æš¡Un8` •YïÏå7$!+ë1W!Iô8Š! ô8j‘H’š‘ ô8Ú‘ô8¡$ô8Z¡ ô8z¡ô8š¡) ô0ÖXÜ %œB8¶pöœBb 9%œ@’$§H$!·H4!$ÇHD$ §HW!·Hg!I ÇHw$§HŠ! ·HMi ö•Gš$§H&j‘�¸G½!ÇHÍ$) §Hš‘ ·Hg\QÇHRð$§HÚ‘·Hfz1$ÇH4 §H¡ ·H61‘ ;5aG0ÇHV4D§HZ¡ å%œ@‰4 §H’z¡·H¬1 ÇH¼4$§Hš¡·Hß19 p¯^YW vÁ •À#]ÇeV][Òa ×`”Ê¡ÛñǤYqõfVc Ó •Þ˜ªñŸ˜l«�˜l’�=yK�˜ I ˜$!my«� ]y2K� ˜D ˜W!É­y«�˜w ôO¨Š!Ÿ�èþôó| nÒl   °ðÿàÐÀ°ÿ �€pÿ`PD9ÿ-! ßýñåIÍÿÁµ©�ÿ‘…ymÿaUI=ß1%aÿõéÜÏÿµ¨›ߎ�tuZýM{"÷õæ‡È¹ÿªŸ“„ÿufWHÿ9*ÿ÷ç×ÿÇ·§—ÿ‡wgWÿG8)ÿ üîßÿÐÁ²£ß”…yÑ`ÿRD6(ÿ%?ÜâÖ _Y·à‘j⢠‘÷ЗàD—à—Ÿ±–YDàkið¢_W°  ²ë_XÀ #Ã_XV©° M¼²x‘ÑI �—*á �—«áŸ˜HyÁ�—2Ñ�—Ëá��¼ ‘y�V]�—VïV\é™[é™Z 陿`é™°,��R _WîƒS:¤Oa Õp¢:¢kP © T¨Š! D¨iP  JT¨dP  T¨i1 D¨¥bP T¨†D¨aRP  T¨�A D¨`P ùT i‘W\v ¼#À^‘WW f”WjÀr”Wz“ ¸Ë²$±Ñ &·*á &·«áI D¸Œ‘R'¶2Ñ&·RËá b°i‘Vü ´FLÁt’°|‘ Ž0¤š´Ñ ¦·*á ¦·[!X~�Ðàǵ¬à ĸÀ‘b´ž°2Ñ Ó·Ëá úb° �gXVÿVV[Wg{ßöÂW[É^ã�Ã$À¾À_¿XW\B;Æ[»GÇZGÇYwA;ÆXnÇWWnÅWCÀˆÇw[ˆÇZˆÇY ˆÇæ`ˆÇ°nÀþìa^^a¢êØÃ\Q ¤ãÄYa½îÅXaîÅW÷aîÅVa~îÄ]_a£ÔzÞÀ*Õ]a*ÕRêÀ*Õ7à *ÕZ‘ $*ÕöÀ *ÕÐ*ÕÐ *ÕЊ֜ðÓìa\êÀâÄ\7á®ÕbÐI ®ÕЮÕÐâÄ%[&ÐÞÕÞÀÞÕ>ЙÞÕêÀ¡ßÔ7à\åϰ‰]‘^�g:ëb,‘(s�òrñ+8q$ûHqmé™pûhr$$! +ˆq �é™p!û¨rW! +ÈqIûØqŠ!+iIpùbêpù÷Éù™p +š $­! ]ù™p ûÍ S?A+g‰pÉ�ù™p+ð ôOA +ªþôsoú€m€òäÖÿȺ¬žþ€‚tfWÿH9*ÿ ýîßþ+€Á²£”ÿˆ{k[ÿK;+ÿ ûëÛÿË»«›ÿ�o_ÿSC3 ÿñåûÙ}€¸¬ ÿ”†xk¿^QD‘€*ÿöÿéÜÏÂÿµ¨›Žÿ�tgZÿM@3&ÿ ÿòÿåØË¾ï±¤É€Š}ïpdÑ€K?ÿ3'ëþ߀Þã€Çµÿ§œ‘†ÿxj\Nÿ@2)k’Ûì`bϰᑚ �aY_ sØ!²X-8ŸÐ-y�W-°wXWW-ê^�a sYîsW-`WXup[JÇa.šWXÅÀ¢ï` “bWW¿ s€6¢_XC2*pD¤_]ÔÛæÂ`–<°g |÷pi‘_V_&w^&]&w\ &[÷p¾þVZg &YûD$^\]]—}_$\QÀj&[WYj&Z…À|k%‰Y.à‘&X ‘&CÀ°‘&¡‘%b Å&^÷\ Å&]Z žÅ&\X Å&�ÞÅ&Z_Å&Y]“Å&b�Å&jÀøÅ&o‘%Z_[’G6^†G6]‘G6\ïV{H5[^å{6Z’À{6YZ={6XX{6Þ°é {6 {5Y_XË É6^��É6]_{ É6\]É6ï[[É6ZYEÉ6YTÉ6ϰÉ6OW^É6ô�{5ßX_VKF^^ó{0 ‘^VZ**YfEYo@ s@i‘®z@eõ£^ñ` ®�FW�@a!õ�@ �\[Vÿ_^]fZ _?\eh’Œ!Ãõ£\Y†Ò@ý@'_[W5aÓR SäD(ZpƒPi‘[n�°áB„péDñERºpD¤Zå_ÔMài‘Z[vS °3RY}£T¤ŒSQ¯¡ [1TTP�a hlPCRn� LTY[=£9D¤�SbT¤�Q*xq ˜XkŽ`¨Xèq•˜XiŽ`¨Xa¤˜X'a¨XŸ¡˜Xb’Ž`¨X¿¡ ˜X�a$¨Xß¡˜XÀaT =ÁåYÇ‘�i‘YXvk r”Yz“N‚“$ˆ`°±�gš‘�g©‘I®h0 �gÇ‘�gÒÖ‘�gä‘ êi\Ý êi[ êiZêi8êi‘�”ñb#°|�` “[\Z–_[[XawZî°ÞawY_ awX]“ awžÀ aw… Þ—_] —^[{—]Y—y\ŸÐ�l$ôóWlþ* pnÿïÞͽ}­�~uÞpÿ^UI=ÿ4 ú÷ëÜ/¹¡ÿ�yeQÿ>*÷ùêO̽åž[`e�u‚ÝÑïŹwœ’ÿ}hS>ÿ)ÿêÿÕÀ«–ú¥l¯€B-¿ þó¿€Úÿͳ¤ï–ƒÏ]J¿7$áñÿä×Ê·û¤ñ~kXûEÿ% ßþ¢ÿ€Pÿ80312N*ß\VYWb�¯Èiað‚É�ˆk!ð�W_S–å��ï‚L¦âQ \Q$•aRH2˜o QEš?’2˜$xðQ kš?’2˜ß ’Q‘š?’2�î‚VúT@•V^_$Ä–f Ä–s •¥ãbQ2••â?’[ÿ—’P”þ˜c”¨v”$þ˜‰”¨œ”]ª?’õ   ï� _[Ï`°ˆ¡^¯[~ ‘ ï�¿ ) °Ìï€)0 ê;Á´ WX‡\ø„vÀA ø€þï€W]`³Ô±¢žÀº¤W �¡°ùƒò r`ø ï¢ç_WWž°Õ`M¶VZ/Áyp¹‰X5±¹­²f·^Xò�²Z·’¶n¸%¶ƒ¹;µTƒ¹Pµ nµX¸ ¸’%¶ ×¹;µ ×¹Pµ $·c·È¶È%¶I@É;µ@ÉPµn°ž£¡WÜ©`uÿvfvmg ÕüŽÃË !©`w0câ×Á©`„0õÕ£ßV[\¾ÆZ¾ÆY¾Å<Á²Å£p ¾Å60 úÆÓ0úÆèà0¾Å Ö^�OOÑ#Ѫ°¾À²¡Èa÷�Á vbrÿwbiw`sfÿ X[oo|\\Ÿo.OÝ_ÐW¥_dÔlÝ|ÓXdÔ0‹Ð”¡f°šbʬթa#3’£f°¸a¹×ÇaI¹×ÖaÈ×åa¹Ðø"‘ã`·@[\`ߘèWVÇ`àäµaZ§`ç5âY'à•™?ëX¹Rí'àê>ìWàà\ÿY}|gXXV×Vo}ó€X‘+ı@“ãWp�àÑ*þ‚A\Voo½h«ÒWWÏ0㤒¢Ïâ¢à _þ!‘bruf]÷ V± ¿\ *�Ð[ûz\‹`xgY[÷xvs ñoXX|ö{ÁÖw2þ7Ñ[rsr\“¿,ó 6ðoïì !lY`ßW¹ug:lpòg„`ÿfWVd[lß z oôX[ÏVu zðnõWlC zð°ð‘ó‡ðšúçl zø±àu nºûlzód[«Ý´Þôsy_q€o€ÿóæÙÌÿ¿²¥•ß…xk€QÿD7*ÿóãÿÓö©ÿœ‘~kÿXE2ý E€æÓÀÿ­š‡tÿaSG;ÿ/ÿÿïßÏ¿ÿ¯Ÿ”€lbVJ}€ÿ3( ÿúçÛÏ÷÷‹€Ÿ“ÿ‡{qcÿO;'ÿ ÿòåÿØË¾°ÿ¢”†xÿj\M?ÿ1#ßõæØÅ€¼ÿ®¡”…ÿwi[Mÿ=-ÿST MSM82~î�_W_Y �þ†¡_W\]^ ùéòA[Zfv×hZ%i� å„£•p³çI( èWY# ”¡]WÆàHtHQê‚sŽŠZž� ªHZ•pVZ( duZ|HÑÀª&*V4:V*� HV•pVôaÅdV±qr?po©HŠ`YÁpK&WÝpX%]__Ïpf&w0‰e'ÆÀ�( W&[UVU`ë‚V0«&’)0«&£p«&pÒ'ZÒ'@Ò'÷àà« L#HÒHá^_ ¿X VWW ¢à[È5W ¶0 âÑ(:WV71(0†¡š`ÐP£¡Ð÷pסCÕ 6Ô\£pt6Zqt6 t6X t6§W t5"p °6Y°6b 6Ð"‘Îà‹` ÑÖ5å`á0öApL±¢[] *¯¤[ º  E#p Eb ¯ ×¡°qh4[Â1 8Eb ÷p£¡[™÷páZ^10?p ‚è!�)3`Gö m@²¡Zà¤pº ŒÁSPö± `+“BÑœGc± ¬Hf° œEʳÌH’—AÜIéðÌG¶BJœEWÅCœ@סZpUh4Z"p(U p 5a Z™¡@P"’E^(– ¥VRW¢aXBP” tZ‹“aXv” šZW¢aXœ” ÀZ?“¥e](–æZW¢ZçW’P”æX/¤ hv”$æXU¤æXœ”Xj £¼ `²¡Y[ º¤Y«YY»À‰”Yˆ0„–f1p–`ŒÁ4à–Bˆn°³féðœD4à¶BäÐhÇAœ@î‚X_\û–eX^Z¢ýf]êðýf} ýf[÷_ýfZ]ôýf…`•XXY Kvô Kv>Ñ�³bÒäDÐeT ðeW^ä –]é°–\^) –‹ –Z@–OYX–àø€ïäôów¯ rpìÿÝÏÁ³þ\N@2û$*@ôäÿÔĵ§ÿ™‹}mÿ]PC4ÿ& üÿìÜÍ¿ÿ±£•…ÿuh\Mÿ?2$î PùìmÒÂÿ²¢’…ÿxk^QÿD7*¿ö�Øïɺ™œ�ÿ~o`SÿF5%ÿþóãÌÿµž‡wÿk`UJþÍ4% ïúéÛȸÿ¨˜ˆxÿfTC2ÿ!zpAÿdR¸RAè û\P]Z[WÏ] Ì{ñ‘Z].õàX—X’ ª•W’� ‘YÿZZVZ X� AœW �ŒÀW®èð_VgÀËf–^Bp‘u—�RÀu–Wo’I•—’•—�’u�’%Ðp��Å—‘P�Å—Î�‘X u�½¡{gß gyÈ£{ ñr–À uw[[oUX¿° cv¶p£CÁvÿà,¥@,¥Up'P#£Ýp, ×¡v°,¥Æ%0(N , ©àVd½pýÒV`±àGIv¦šà‚¥‹¨ ±áƒ mr¢­„£ ‹ ŒÁÿdm s abk‘CÓabp)v¢;`WÙ zuvÛ mq# "ò¢&¹Ü ±°�ñ¡bmÛ¡¤°œÁ`W°5´X_^toÎgi›P³XZŠ»È]¸i\·Vrv°\¶"i‰¸OWi‰·u±§¸Z£°\¶V^v°r]g¡°oÔ·Z}ù©Á__v Ü›õ³sŽ__ç],  Ã^[½Æ]YÆ\÷WÆ[VêÆZJ°¢ÅY\IXÆ~pXÆéðXÀþ\Z^XdYAd‚Çä0‡ÀV‹À�ŸÊX\VêÀ¡Ä\’`ÌÆépÌÆˆ0 ÌÀ‚Ãë¹:QæI\"!dÂì` ÌÀÔ"` Ó�Ð} Hõ²ß[d añc_[*ù` óÅ[ë:eÔ4j;zÐ÷0Õ>@8µ dáÐ] žØUpráÐ} â#P}ÒrÕä/P%‚Õ/PWªHZ!dZ'! ŽèYr à} æ�Y]7ŽY]s³« YZ$ÈrÕI�%‚ÕI�WUHYÀdYÎ †èYrŽà})âpXI �Źâ@_ðÁèH¢ÑêÍ`�ÅX#•rÕX3: ðW+HXQdp] -ø rpß±ª�XŠŽX—¨›ôãë*Xû$ö !ö!Vmp']-ö5! IöC"­4_XE7(0çðôs°õs€q€ïÜ÷ɶW �}ÿjWG4ÿ!ûëÿÚʺ¤ÿ•†whÿYJ;,ÿ!÷ÿêÝÐÄÿ·ª��߃via‚>ÿ/ ÿóèÙÊÿ½°£™ÿŽpdÿXL@4( ú—°÷ÚÊ�€ªšÿŠzjZÿJ@0 ÿðàÖôª¿€ÿ’†znÿbNC1ÿóÝÿ˹¤šÿ�…ymÿ[I7%ßV�XX …¡\&Vuø;À³âC‘`p\_ž�_ßzNhÕ$[6hñ$k0¨ð`ÚŽ[W`“ü1mq¸@a0 [`1Ws/�ÿghsz[VXÿZV`b3TC’˜iŸ¦ŸU¦•™ë`f´:“ÒpXÂç5âÙ41ÐiØà©ÒòÙàý0W_o»Æ)2W_\bB]Ý ö0Áj1W_†Î Pu2U @[&Y[&­`[&L [&Pà[ Š.p;  W]W·[[[0óÖ1WÜÛ49qK‰\㌲ÁpV1V Ñ¢Ó!4ÐÉÀÝ'¦Ðí``Ý' àopÝ'¡ Ý'ÇXX\ÇðÝ ŠZ[¶Þ#Y^Ö# Ý$$>0ç" G7÷" G72IG72G7'2G5MYÖ#˜6ç"§7’÷"§72§72\§7'2£"Y�!^ŒÀ° ú5o ° R!XW [$X31!F¬À!FœÀ!FuàO"EÉÀQ@Þ¤!XVZ¬ òCdBX l@3! wÔ‰X70ÔŒ`��XœpeVÒWWÏ0°¢£A¼Àª@ú¤!WË�]_ \î^CWVyð $bëa†@ºBß�‚�‘¸ø3¿AnpïG4ЕïG[  X` ÌïG àïG µR‘CVÈ!¦—bW®P[VUZ@*cVZbÀ¥dUVÃ@}U#Y\8ðŠV }U ðW¤Y¢WmfÊLRV™@ à V½ ÊVV^ ×WZwFØVYñPîh‘VVÄPZ C'2"éñ}¤!VèC1IPdùA=)fQ7gQ 5GgYAFh˜ž¡7g5Q ·)fDQü7`ÍVb`amÿfo`ssfuQ‡h’_ÀWq� u•ô_Àp‘ Å•_^]Wâ²ae•,Àp‘Îú²"†ÀX]bmçuu�ëg[hu÷pûjXufdû ûiYVu`·f¨ÀðÀ�ëc—Y^WôcDzr¤Dz.rDzrDw]’Ot�zr�z.rèûf™qrÅ•^][z’ �B ôós týràÑÂÿ³¤•†ÿwfUFÿ7(ß÷èÙ'»ÿª™Š{ßl]L9ßÿîGÎß¿°ŸS�ÿrdTFÿ7(ÿùêÛÌÿ¾¯¢•ÿˆyi[ÿM=-ÿ ÿñáÿÑõ¥ÿ–‡wiÿ[K=.}­ôäµÿȹ©›ÿ�o_ýQË5%ÿøèÚÿ̼¬›}ŠãhW>íÿ 62ANDS7751î�2öž0tá�•\R`úü��~  �’`  ü+�õm}Z]WÏlzÈbJ”Vl[U˜XXQ�U˜NªPlwšQ�U��Ð '0 `Žð‚óŸ‘W2þ®ó¯“ ÓŸ‘QVzPМ”V�ñ rÐþ[Vo`oJ༒[VgFÐJãë‘*£’©•[²“¹•¡sÇ• [ ÀD÷”Ñ�Õ•¦Ð�ñ rÓ‰XŸ£’ ‚ð¼’«à\ƒÇ•«àX >¥ à\£Õ• à�ñ å•Yµ\ï‘ ô•Y\þ� ‚µ¦Z_QróÉ¢W¢l¥YåZÉ Ç•é [@>¥ŽàãÀÕ•Žà�ñ ¦¦X[oWì¶¥XVo*°œ’'𔡢l¥XÈ!Ç•5ð\£ Õ•5ð�ñ å•XKZo&° Jàw´g&°A ¥¨ð²H¶Â‘V¶RБ d¶Þ“\¥WA³¥ l¥WÈ"Ç•W_± HÕ•ô°�ñζڣ©•%W³ζ¢“޶‘ ì¶Ð‘ ú¶Þ“Yö uoJà“@lÂó*°xÃY\ôuÆ `ƒµVV[\çs¹•Ø [ ü=àiÃZ__=ºÇYZlC¿ÁJ5Ñ×Åõ ­ Éø2ŒìÂŒÑãF“îÀý ÌBÑ [Vvo§º”,Ñ à´ª”,Ðs°¨4×s�àæ”,Ь õÆŠÒ~$ØYY ´Ô0F¡X¡ÂÑ$ÖÑÐàõÆñÒõt¡Žð‘®ðÍÕý )áA$ÖRàŸàõÆrâûØ"ˆÐ ŒÖ顎ðÛÖ±±ªá$ÖùàFð$õÆòYèˆÐŒÖP±‚ŽðÛÖ^±p±QñIYçðÁ hçÿÁ ·è’ˆÐ†ç²“—çüT¨ç $ÖWcá õÆ%Wrá øˆÐŒÖæ±"ŽðÇ�Eõý²áI÷gA $÷á sø"ˆÐŒÐvõ÷ðÁI $÷ÿÁ ¯øˆÐB÷z²“Ç�€ôs^5° u€s€ÿçεœÿƒjQ8ÿ$ ößÿÒŸ«ÿž‘†zÿnbSCÿ. ù÷äÔO€¯šߊueŠ @ÿ+ ûÕëm€Ëq€±u•ÿ†whY_J;,‡€‹€ÿðãÖÉÿ¼¯¢•ˆvdR§ÿ1"ßõæ×µ€½ÿ®Ÿ��ÿrcTEÿ6' ÷úìÕοÿ°¡’ƒÿteVG÷8)Ö0ÿR16452ND÷IOD¼�YVWv?`a!»‘ôobr\Žô`f¤ ô_5^ÆQÊ\^š@%³[\Žð%Z]´@˘DÊð%Y_�@RYI_�°aYB@RXNÙ%>°%W^'X¬w@¬³@ù%ñV{ijÓ–¢"0^ ãH¡òí/ö>ö†Mä(tàöz $2(Š#'˜P(¨A#'¶±€p&w@n(¨n(³@ö~@DQcY d(c»!ùA“>Å&QÓ'Q €Ucè"ÜAâ(Ó1Ó'5Q ¨‚c»!DQÓ /�hßa]\Vp� ËÅ/9WáP?PÀo@ÎfbpªÚeãjVÚeã`þ/‘ha`ar{[i¨À)-˜[p]\$“ '|X$“‰>{ —È@Z}>’špzW —Š}<”¢zV3t~0 +›Lt~0½ +�¶ôót®ûðvtòÿçÚÍ¿ÿ°¥–Šÿm[Iÿ=1!ÿñÞËÿ¼­œ�ÿ|m^Oÿ@/ ÿñâÏÿ¼­ž�ÿ~m^OþQ/ ÿñâÓÄÿµ¢�€ÿq`QBÿ1"ûõë°ÕƷ聯�yjÿ[H5&¿÷¡¹ÿ¨™Šyÿj[L=ÿ.ÿÿîßÐÁÿ¬—Š|¿oaUÙ9«+ßCñoìáã|‘Bô€¸ð }8ý‡ÎP ˜Y ˜™0ð ˜óü€ mfwûýƒ_pi X,›�vÂY_W‘\�ñU\V’ \”\W‘\�~PY\\Vf`³À¬¶p-` †“X�˜´™�\ýÀ¯—Yï[³¯—X]GÊÑÒ“Â�¯—&ù ‚¯—âÀ Û˜V¢!ì˜Uá½–wÒ*¨È�5Ì–[Ö‘ɶ#O¢[û�Þ“Q %Âì–å[ö‘û–•Ð]Û–•ÐÜ¡w¨³á½–ÄÒ µ¨×�W Þ“Í aÂì–äÐ]Û–äÐC±ñä©ð½–Y]vukQеosÑ)3Ð%µs.³QдBá óN²/ñ·ZÈ�-Ì–YZ×�W¦~°G[f¦~°Ù±ì–Î1à[û–Bà]Û–BàÁ ¤¸oñ½–’bâW¶qâ â¸È� ‚Ì–XT`àÜ•À瑜ì–�à[û– à]#Û– àç‘ /È«ñŠâ·[°"¶vÀ.³V5¶X[@´H¶Xá ñ·ðÁ±ÈÉñâ·Ö‘9 W¦ØÀ[f¦ØÀ�瑯³Æ÷�>Ç¡$MÇ£ þȨн–-ò‰ <Ø×� Ó¦TÐç‘ì–mð]Û–mðç‘� kÙW<×wÁ¨"¶£Ð.³5¶W™Å$H¶|òÌ–‹ò<×±I Z×�³k×½±z×z̳ éW=Ö’ÁáÞ׸‘<×Ö‘ $Z×å“Zè z×£ik×%¡<æV_°Ñ"¶²à.³ 5¶V_â@´"°»@¯áV[\gsì–�‘½�ÜÞ’Ü`dwpðÞàâ[W|hî` [; Z^êð&PbÀ`° *ð00˰çà[V¿[hÛ8öX®BðuHøWBð`Oܬ"”a&\bà,pwà*ðP\uoOë¬"ò ÝXé" òýƒWpUkX� \”WW‘ºõ¿Z]} qtbYñWêÐñX`mo·¢îq¼ôsl¿ú w€uþ‚äÖȺÿ¬ž‹xÿeR?,ÿóàÿͺ§™ÿ‹}oaÿSE7)ÿ ÿñÿÜȵ ÿŒwaMÿ8"ùÿÖ¶–vÿVH:,ÿôþ�€ØÊ¼®ÿ ‹ueÿWI>.ÿ"øÿéÚ˼¿­ž�lÀqÿbSD5ÿ&ùÿêÛ̽ÿ®Ÿ��ÿrcTE¿6'Púÿ,…ëçA'̰ZWÏZ R¶"íYñ ö Y�öX_^ÇVР#\#Í0#ó##|Y�#^_}w^}\} Ð}Z}®À}ô™0#Y‰@^ X€ç õø�õÎPõY£õ\ õ[î@)\@)ZWA(Ym)��m' PYŒ(L š)[ ®š)[õYòÇ)YÇ)ÄðõR`ŽÍ `�óÍ ‰@\{ô%W`ßðx»@ݰöáZŠmòòݲcPëVX\_÷ˆ76W\ÜD01[]o2c÷ò€}|gZÿ]Vo}WX[X�\ ,>Rh1Ýa}N=�Y x0ñ�|2¡ ~ýƒ”1p@›8@0›8°›6ÉÀ Å8Š0Å8XÅ8E°›6‘Ýý8Z ý8YAý8óPý8ŸÀ›0ò€ýz¬`Vxg\Y÷xvsKAoYV| Z¾PÖECl0NFkA„[A` cE,qOE,qo+X[~AcEX%ÐOE®«AoXX~Ac@pGA§PMGËBoY[^@çm c@‡‘w{vŸvZu]o1p9ÐÊqìCó@‘PKÀc3SËVoq3 û@éEYuUYôCûHY2P\ÛðÁX,pRêÐ%XXu-XôCÉüGXqPIQUdYXPVN0û@Ô%±íAWôCyXWV"ôC%XÝa‡2û@ñ�s•2›4åQÛÐ ”åQ ��úXc°úVÎ1hHà@hÄðhý°úV‘ìVâ‘Nhy NhX pNhÌÀ �%±owHÀÆ•2•lî°§mXA›0—jvPÍkÎ1ºk:Ü1ómXàm2°$Ík‘ºk‘?}½ÀŽR}X,}ŒÀ›4oÒ•2 –¤1™xX!™x9àü†Î1 –Ü1ÝÑxX �ûÐ&ôóx ëxvñâÿÓĵ¦ÿ—ˆyjÿ[L=.ÿòÿãÕÆ·û¨/Š{lÿ]N?0ÿ!ôÿåÖ³¿¤•†ShÿYJ;,û]ÿðáÿÒô¥þe‡xiZ?K<-qðÿöèÚÌï¾³G°”†ÿyk\Mþ�/!þ™âк¨ÿ–ˆzmÿcWK?ÿ3'ÿ÷ëÞÿÏ´§ÿ›�|iÿVC0ÿP2NIC-8-BITëß_Æ$±Z]ÿbW^ZW_W¶��< –\^’ˆ˜_P‘ ˜ï‘ ª˜X)“ V™V’ ,�÷!]`¤`yò‚�øÛPˆ�½ðZ\{ij·—73\pÂñ ºóZ\Âñºðêäðöœ‘C°“[pjs³ ¡�÷![[JÀ÷•Ú“Z´0¬Ù”5 ð•Y\ü–;Àü–Opü–î°ü–êpü–—Ðü–ŸV«¥`Ð�÷í –’Z~jb·˜73Z^æàù +0j¢XrbÙ +09ðZZªÀVVÝY�=…¥X^"�¢• e0‰ WVÀ� Hæà P•¦WŒ �¡§¨ÄŽ¢·¢• ‘˜0Å\ýA W �P ùàË�,3XS�ßóZX?Wrr+0êD¤ñ_@ ¬ðµ(  +¹h @+¸�° ¬óZW©’I ¯”Áòºð[²_p¡Ù +0ò¡W]ø ^WV ö @Þö®ôsiÕîïpy€w€ßß¾›|€;ÿ÷ض•uT1G€ÿ÷éÛÍ¿±£W€ÿ‡yk]OB6+g€ÿóåÿ×É»­ÿŸ‘ƒu÷gYƒ€=/ÿ!÷ÿéÛÍ¿±£•‡¡‚ÿ]OA3ÿ% ûÿíßÑÃÿµ§™‹ÿ}oaSÿE, õÿàν¬ÿ�Žp÷aRï€4'ßþûðË?£ô0õP{°XDÀ‚ù1á]aš-1[}°¹ßRªÀs?vf í–‘ '¤ý²ªÀVL@‘ð¡#l@ ð1\}°~0[XV·O2^0N}°R1� # ]Œ@¾ðd°&YW�°KU›]:આ 'Ì@¡vþçB[Vb`amÿfofwfu k\R¡[€@^Ž0ªí í í í *íííí�û[ _@³ôß� W2Ð _Y}a•0o <ÿW]Wu263"Z~•2†Y³G!Y…O'p°\(À¤\&aN&Ü1x(XCx(ù°\&:qN&Mq¾(÷P°(`°(` \$}•2 ö()àö(Ì ö(ø@ö&a .8ÛP.8‡X.87Pö&:q €f8–pf8¤pf8²pf8W„Y³|¡c¬8) ¬8Ê`ƒ­7vPÖ6îb¬6rò8pä8)pÖ6:r¬6Mr*Hbp*HupHˆpÖ4å{þ"¬4iAY@pHS�pH%ÐpFašHYšHf�šHaPpF::qÒHZÒHÐÀÒH�°ÒHʬ0±u\W3å“u�#PJ—‘sqÖ4åS Ta tX'ðtXâ >)î òä+€Èºÿ¬›‡sÿ_K?3¿' C„ÿ³£“O€yûkS€QC7ÿ'þ]€çÛÏÿ³£“ñ0]ÿM:*ÿôäÑÿ¦–‹vÿaTG:ÿ- ÿùìßÒÿŸ«žÿ‘„wjÿ]PC6ï)«€õÿèÛÎÁÿ´‰zjÿ\P%ÿjßÃõ ]Y¿Vv&ä]Ú!°'R]Xó aLÿÝÀ €þÕ�äk�55ôVwd/ P4!]ràÉð› Lò]VnÀd¡c‘}¶aá7¢U]éY€ å  ‘õZ^Â0:­¢§›P®V½®]_È^{È]9É—\ï\ó ®\äÁ°®[êð'^ î']'\(''@®Yzð8X&ƒ ïeàq'Q@d'á0d&yð˜''@˜'·0˜'qPÞd&W_Ì'\Ì'ZÌ'³@Ì'‡W Ì'é°d&� î7^ 7\ Î7[d | ]Ö™�\·À]¡àk”z¢T7\¡àc0P\ßbh'RÂ\^ÿ]~m~d«×Y‘\- 5J55=55U 5 5 5|0ÿ]^k~~dgŸpm„3Å3bS “0Á4gÉ4Ñ7^ë0b Úâ6fÉ4¹Ñ7@b á7`‚É4Ñ71@@“4: ¥^g�_k�Y@Y@*Y@Y@Y@Y@ÿ�ÿ\\VwbfûíZ¢\[_~?f`d[ââ†B§bkdh�‘G`œ@ø�@&PÜ€^ªà²DG ¼FÀ ¼FY|¼@ÿ@\[]VªðYhDà„A\_ê@î@Þ³B\\¼E\XÓ¼@ƒBZÇ2̰E�«áDØÀ_)6 3S\:P6 'SW\0V[:P>VZ:PLVð 0P†1¦ bR“0ƒTA�W¦1A“0× \Û©I”±[G±Ä]ø ØPúãAYÝg .žîUXbúP³AXV]ÀR½CX$ÀeZ�dW`I°é¢/\W[alÀd;r:lWLmø I `màt`ôà\¶À\“À °râBW`PB*ðgïC a­°§fY£`Q µh5°§fW£`ÑhwX §dV__£`Á íhƒÀ§`¿�xB¤N |0U:c3ws1ùc0tAY[YX÷k c[ffw÷ [_o³ Æ”2  b� ªb� b� b� b�¤Ô¡b�uqÛ…ZÀ`còèˆZä€�yY_ €­z: ­z…°�yþáy ×t ôóoöð õ|zÝÊÿ·§”„ÿtaQAÿ1%ÿúîÞËÿ¸¨•‚ýr7O<)ÿúîÿâÒ¿¯÷œŒUiVÿ;( ÿöáÌ·ÿž…lSÿF9,ÿøëýÞ‹¼§—}„“gXI›ÿ+ þÿïäÕÆÿ·¨�ŽpaRÁÿ4%ÿøíÞÏÿÀ±¥–ÿ‡xiZÿK<-ö(ì­�ÿ�^Yƒ`^$0É ý’ó‚!üˆið üˆ#0=ü…V_^X^�)—U\¸@)—[™0)—úÝ)—YY^ª)—X4�)—W¸@Üü€ô^X{Xp+2þ‚VÛ@Éð ãh¤‘¥X ­˜ ­—WÒ· ­�ð^|P4¸yâQ©_­•YËZ\ø€ô—õ@4ô—Ðô—Y_Ò!¨j¹pô—XÑâ@§iðN§W[Êðô—[a!l¨èÑÚ•ê`>æ”õƒIN¥“¤¨ið¤¨ò#0 N Ý’W$®”1“ N¥@“ ë§Q‘i ë§Ý ë§Y_¹@T¸p�ë§XÞ6¸’4�ë§�‘N L^oV[\ð ‹À1c^ÕÁ‘`ÌÀµòë^¶°pÐÕ’>Á^j7ÙñÙbš·[Ñ[Щ°¤mËÁgº¯mÑIÀ³V‘_“àØ¶Äض|©�Ùµº°Ø´gËÁšË´gà±J Äú±T&ƺ°&Àõ_R ÿ~Wor XZ×Vz`p]AÄWYÁVKÃ�`TÁ½BÃVZªJÂvPÅrÆXcÂvBiÅYÀQ1÷@[0X‘a__ ¦ÄX[1•q[ºÉ\•qs¹Æ�`ºR00¹ÀêðÎÁ0]^YCBÌ1 ÜUÓX Ö Ðõþ¹°VspV~ ý~PÀ`bdbem¿2]oàÈ5„2DIÔ@Öâ2IÑEV×*!B f×bÉ4VדÐ�¡À @FÔ1EV×DB |fÐôZ][ï.ÒÓZÛÕ[Ñ@®ÑZ[Ç6Ñ3ùÔ†Ð8á3ùÑë5õÕEAVÔ0ãÌÐç1E<ç*DBåYÇ6VÐräë5<åŠâ@ÐfÔðEI ‚ç1E •çDB°PâÒÒW€�d Þã]bN4Zë¶`øÄGZ ôš�ž�ŠZYT�S$ñšRT.÷ªRäY­ç VÔ UóÞ0fÐdôDB fÔY!XL×äˆóÌÐa­Óˆð"ë5Ñ0§÷ÓŸôÓˆðð¶Ö”÷iã¤ð`þôst}ú€{€ñâÓÿĵ¦—ÿˆyj[ÿL=.ÿøêÿ×ɽ³ÿ§™ˆwÿfUC9ÿ* ýþE€ßÑĶÿŸŽ}l¿[J9[€ÿõäÓÿ±¥—ÿ‰{naûTq€8*ÿöéÿÝÓȽÿ±¦›�ÿ…zo`ÿP@2ÿíÚÇï´¡­€{hÿTA.¿ûÀá¿Õɽˀ�ÿ‰u`Jÿ3�ÿÂu?ëß\uYovÕÐog÷`VZP@ ÔV÷XX -V\Y¸� �`œç@Ç•²ú[†B\Y9!�@³PúiäW] ³Ps[[û\WÐiXZv÷ üxW\vÙŠ³@pW¹pÜ b¤^ ª]ã!«Pª[üªã@mu\WaWïe•1mp÷ z1mbw‹\rgHaèt°fÿv[__^^o`æ\`¬Ò!^XYKx` 0(Ca 0Ñ ³P \ÀxaßWXo&Z_ëV^;"&Y_YñV( Úph'][^m%b\`{, 0&O�b#¡(` !«#ÿsWYYXWviFH` Þ¿2Í&ép Ú îCÀf`WAWbm`‘a``Ä Ÿï$ø¾Pè`0Wr`|ó0ã@b{tVµZ÷Pëòas2t¯ F/6W90 ü=0t@agjgffÞ0vz1O =0è_2i g3`î°Ðòt2\ð}4ZV¤}4'p}0¡`Ó±$}4€°}4ÊÀ}0M@v,  �Ÿ_Z_ë@%7̲_Ñ }Pç rÜ0òôÀã0Í1YVv[&×3XZ©‘îïB{_X°À[ é E•W#° G^× G]g\ @Ù1W\á°- ã4W\Ð@ NF°ñ ã0 A½P]] åæiF\¹�vG[[) v@Í1Vš� ž�‹`×_VVš°WÀ œè‰b¤D¾ ¯K]î¯K\ ¯K[ ¯JÔP �ôJ#ÀXO�ö¿ Y\ ~ÝYZ7[YA7[‡ 7[�07Y]`÷D"_V Z÷] Z”`wpmß BV?vdfíä3ªQÓp¦S]#°åPrp§Rí°#À4ÍV]Ô°ÛW\æQ¸æ’ÒQW3ùXÔ°·úV{°sÛPÃ1V Ðý ñ€sdWX¿]dv8R^‘`í°ÀÀäÐf‰bHeYw ‘Ðr�¸enÁ%Ä`ÄgØ Ä`£aèÎ@Ðf±[ðX½*Ÿ“Y]VZ¸�IÊý„¦“ w·‘x’Ç� wÕ‘ uí“$Hwþ‘ü… £fw¡ fw+¡„x¦fwI¡I ¢x¾  fwg¡Hw’v¡ÏxØ  pЮôóeæïð~|þòãÕÈÿ»® “ÿŠ{ePÿ:%úÿè×ðÿ›‡p`¿P@-GïöãQ¾¬ÿ™‡tbÿQ?.ÿ ùèÖÿų¢�ÿm\Jÿ6#úÿäѼ©û•Ö`n[Hþ¯ øâÿλ¨’þ¯€jWI;ÿ- üÿëÜ;ﭜáwdïQ?Ý€ ;÷ûp, @åPm  X ðàI2`؆`` ä‹W&�öŒ×XöŒ ä‰W ×Ðä€Í0—W_‡>œ[vÓ,›�>œWvSä€Ö‚ÕQ\�@ñô'QåPÔRYZ 2š� ž“aŠÌ‘Ÿ’&˜Pº—!aº��”[XXôQU›–X+Òü°T…±åP±Xwü˜W  ù ×€0Vu1ü 1 XVwu~(¥WZku( üA‘›°YZV^Ÿ`€–°I§\ŸY`W G©[×`W H¨YõW{ l¬X`-m«W`BÀd­¨ï\`¬WXò{ W ¾ªV`øl¥•�£°]` Äù¬{  ¥µC`Iù¬h  ù¬¤  ù¬"· å¥cµË n½õ 1 ù¦50P£ xX¤ž´"f¢©°™¹{ ©°"³$Ç´/²Ñ¼Ž£¾¼¤  ¾¼· ©°q³Äõ ù ©°ç�vfujfvX ñŸAÿ]X^bX?[o ?æ�OæB ZÀLÄ`T•>[Æ`eÃ}ÀLÃ\¢Sà ZƘÀf lÆ\¢vÃ}Æ»ÀfÂ�ÆZ¢SÃZÆÞÀf lÆZBvà }ÆÐfÃ�ÆYSÃQZÆ$ÐfÂlÆYvÃ5 }ÆY˜Ä@ôÑTÕ"fÂaÐRÕvÃZÀdÕZ‡ÄZÆXVSÆ֢щÙØvë؇ÂT ZÆWXSÆÖìÑÏÃ$ãØvÃõ؇ÄZÀý�ÿmfzfmZçPû’3äYð=ê =à#{WûZ|0[pxwö‡çdwv\ÿWVphuf}Ïlõázåam¿`bl¢"w/vZ\€äˆàwâä¥â–ã�à¡@wvYB€äˆà3`Êâ–ã�à&‹âW^p`€ä ˆà÷,íæ–ã£èåZ-@€äüæó–ãö<¡€ä‘üæFó–ãðP0w7[[oõ‘ îpxàï2Ø1vzWnVÀHÜvoª@ÖÀÀG‚òhÿ�WœôYYƒÐ¨õ)¨ð�ñh•ò¨ðP0£v`ô‘ÍÐÂô`•òÞ¨ðJ$ôsu_€}€ßõæ× €¹ÿª›�€ÿqbUFÿ7'÷÷ç)€È¹ýª/€Œ}mÿ^N?/ÿ ñÿâÒôÿ¥–„rÿ`N<*ÿôáÿϽ«™ÿ‡ubPÿ>.ßþîÞÎpÀÿ´§›Ž÷wj‰€L=ÿ3$ÿùêÛÌÿ½®Ÿ�ß�rf£†ÿòåÿ×É»®ÿ¡”‡yÿj[L>ÿ0"Aš™™×€íx±0ÑŽñ]ViKguy0„0�0‚`®‘EW„0}0<‚`H¢¶�}0±0}0$y0t„0t�0I t‚` fC ¨’‚` ¨¶� t±0²Hgž°ép {»“f*ç îdç î¡?buub_€&w^(](\ ®‘!Û ~øbss­E$*ç îaçîü ¢èq}%Œ@Qx�&XR«@›'èq›$_c‘ º”À Ä‘ È'Ó‘ üº�¡_oV]ƒ ç'ð@ô ¼"î Y§[ 8ï@ ô ޽!�:PaHº”PÄ‘97Ó‘º�Zw^R¡ æa]ð ¿�o0òo0o0w\]bfÏð U"‚0,ˆ0w[V„0ˆ4›0sˆ0#1[*0ྡçpÀ0ÿ@` þþü’Z_V[[ïmÍ8Y (Û:ëÛ8V×0 û:ó€°û:k Û0ç�Zçp¶è+GVX7BôÛ0A‘ZòQ^WWO^l,EXA[^@UbJZ^@bJX^@ bGZmC+F¡A�A©ªJ“AOGYZD HbGØ@oA áJ�A áJ"“A bG5@oAªG5@�AZ“AbGG@oA‘ªGG@�A_Z“AhÛ0®‘XÐmê|ïoY\VXêz“Vbèq¡U]0VÀ«Ü3¤·Q¦Ñ¿P³S[ºQ¥ªÀU[€ÓÏVZºQâ¿VZ&ÓÏV°o¨ÞVU°VÀÏVXºQRÞVXÊÓÏVWºQÞV%WTÂÏU23º”q`RC1ygÓ‘º”X23I —gC1 —gÓ‘º�fý‘W^÷PºÐ § £ÓW^5`ºÐ Ôe]]Îb äfØPôÁäfÞ±ÒÀ OÆc\¹P—ñp®‘CœQ ¡TCé¡PwKWY$ ( 'rXŒR’TRœQ 3uœP!,¡PøWVa�`Pt23‘º”�pC1—wÓ‘‰»”ZŒR’TÃ�œQ! ¡TÃ�x"¡P×�˜Ý�xð ôóz_€~ÿóçÛÏÿö¨šý�sfZÿL>0"ÿøêÿÜÎÀ²¤š‹|;ÿ`UB.ÿ ûëÿàÌ»©ÿ™‰ua}MaiÿåÙʺÿªšŠzÿj_O?ÿ/ÿÿïßÓÇÿ»±¦’ÿ‚rbRÿB2"ßòç­Ï÷¿¯µ�ÿodYNÿC8)ÿ üíÞÿÓȽ²ÿ§˜‰zßk\Mç/ÿ CE AqD®�ïàÚqL:Ä“E0Pr‘R` —R2”]21z ”A’tð:—‘I—ƒb:—&‘áI—’b�åpW\_O–“q@ ”w]ª•Zª•(0pª�‘\B“ ”Ò’˜”Ò�‘ Ú—Ò"é—â&‘ Ú—á"””[]½ª”[\0¥[»0¥Z0¥Wcª�0à•ð\¥!ÓÛ.âb¢V  En§]¥|©¦ l©¡YE0l¦ŸB0U!WZwgw¾£ÏpgÈ —‘Z\w ¢]£ZYZf¢#}£æ¡—¡ï©'é難 |¤ZYV"f¢l¤&±w¡ ¸‡¡I ?¹¦ /¹'?¹â¨  l —‘ 0HÔª”ò¨ ‹°#0WY|*0¿¡XzgȤ%XÄ ´µÐ È _¡X[ž` ï¤Ó²¦ ©ܹ¨ ܶWf¢ �ü¸:² ɦ  É'D ɨ ï —‘0\¤�Xd¤Üm£^Áw¡H|¤nˆ wÉX gÉz'wÉYWl þ¡±Xv»í‰2WW\C « ïW�u‹ÓÆ¡ráǰræ ¿¡V°°ÂÀÒРùÈ /ÐWV^odÿ_zYaf±)@ÑÓ`%Ð)к0þÐk[V~tf_²;Ô]CוNÕ[C×NÐ_¡V7Yv}GÐ )ÐyÖR%Ð )ÐÒY Õ)ÕTžÑ5Ñ:ÕYC×Nо—‘VXt]£VEWÓ †ÕàÑ%Ð –ÕEW Õ)Õá5Ñ:ÕEWC×NÐR@!áWFÑ‚ÔÐÍÕ[pØÐw¿0sd =’X²þ áÄh² içá!áÀ¡±ø‹ÂÀWWYXºLp!’âV}³ wˆ¡æY­è�X‡®ç­PÉæXª©à­æX·à×èX³ÉæhЭæWº©àøYøXÃø0pÉàø{ VÐzvx $Vó`ö'`ö¤xQ ‡÷Ó!`ö‚ý ø;±°õ �°õk±°õ¤`õaÞ^!ôsx_ �€€ÿñâÓÄÿµ¦—ˆÿ}rg\ÿQB4'÷ T óçýÔ5€¯��ÿ}iYIß;-M€úÿæÛʹÿ¨˜ˆxÿhXH8ÿ(ýÿòèÞ»ÿ«œ�~ÿo`QBÿ3$ ÿüíÞÏýÀ›€¢“„ÿyncYÿK=/!ÿóéÿÚ˼°ÿ ‘‚sÿeWI;ÿ-ÿõçÙËÿ¶¡Œ}ÿn_PBÿ4& ›F0YX™P(|ˆòý[_XßX^]XWö³À"XY$/�YÕ°—¡ýp@ȱL�àLþ 4þÜ2YX{ijwÆ…00É Š|bm¿f`uŠþŽam`blã ºдúW^Y%_ªà¿^A ÆQ]Ë@ÆiðÆ]^ÀðW_Pþx ¥þ]ÕÐÆ\}(&V[_Æ[[\úE%[x !R @�pèñ yc$@'Âo(¨ #{ßÕ)п á [Ë“7±èñ«%—¢¸(¨¡¸ Ü¡°¨  *-AYÿvfujfvX÷ ñ®âXbwV-]ÊЮô%\,à7¯[5aû!L7 0­6080ž¡°X_ à —�Xo^_ª“X^P.[5] Ë“X�@6r6^ƒá€7ºp“€7€7ä‘I5r6‘¼7 ¡¼7‘X6‘¼7³! ¼7èq ¼0I1] à t1pÀ‚{1 €4p‰  G™1 $ G Gä‘ G‘I G ¡ Gä1 G¸èò€0|X\C¼€0I1[à ¯„·@·@Ê·@·@»Aö Z¹à I1YP4WÏZŸ•’7üê@›AVisl]VRœ�1ÅbûB[PXî 0Y[Ž%ZY%Z6ð%XXº@ UZ[ UZY; UZX %P,ÐÞûAb[VbPV—VY[¢P ¦XX²Qù¦PS1Vb\µ<ÑXAÙÔ*ÒXDUÒ�ÑçPÖRjØçPþõ!V[^mýá3V[[o}fXv`DøB~Ô†Ó‘–W«Y_� R˜^�ªC—W�C—V�J–Vm‘�—>‘�—²‘�—‹‘½”aÿw\Z\p xüRÒ‘[]Zp ¾Üšd”Þ—Y÷dü˜ZWp} ܘZWdü—ÅYç‘ Ü�,Ð2¤`d¯ü>§YI ˆM§�I M Ï”,�ps Ü—,�dü—Î<�p©ø�“Þp¨Vdo§WX‘\ù�¿©‹ M PàZÿ^smi ÐÎá¥g ì ÷�^^›_Žq“±Z‘_@ ¹¸ð ¹ƒÀ Ê ·W³! °¡°Z^÷éNâZ]wmÚPí£]w¢PþÒZ]as,¶HòZ]à ¹ÎÒZ-\ï :ÑZpÀ~p®q P’¶Zr ¢¸¯" ¢°?¡—±å°ÀŸp¢¸`á½p¢°â¡\,®A`´[u¢Pm°ú/Z[oX¢Pm°ˆ±î1P‹ÃX ©‘³[˜¶¢´.Á­³H€)Æs9Èâ³é´]Z‚e†³ZÀíô§RZZf \\pßo š‰ÄVK^^”À ˜Àp±ZÜð‘‡À¬Âæ@‡ÀrÂÒ!ÅÃÄWÀÎÇ@ôÎÀ÷�Z�KìùÀÁW]˜0SnTòZV\Ñ\‡²ê·áÉÉRZÅàÈ’ßÕ¨ÐÒÛp.ÐÁdW_ ÐLÔÅà5 Ð[ÔVÙa³!‹ çXÕV$!WÖ`…‰×Zp ÐL±h@¾à Ž´Ð¾´Ð�ÀÐòÀÐÀБWZW¿Vk�Ÿ"_¶b0§ªÂY_5°Ó¦?|pXÜð3p#úÑ�àèeáçC°Ã èƒáçz0�>è\!>èïÑ2?çið@kèÃ!kèvñkèÒ kè’Üð>èäÀàS0Y®2{^� xŽŸû]´ÐU ´Ð ´Ð ´Ð ´Ð• ´Ð´Ð´ÐÙ!\³ à VðY[wÁ±–TòPPÞNábYM[= 0ôvÂ#ðö@ZXÕpY °þþÂYZWhfû ¹#ZVZYªZÀý’YïÅ ŽZò–ŠñYv`a÷ áòYYobÏr ÎpšñªôXžñ£ôX«ñ H°ðÈá @ÐàúW”ÐÞJôu ׃€�€ðÿàÑÀ¯ÿž�|kÿZI8'ÿõãßÕǹ3€�ÿ��seÿVH9*ÿ ýïÿàÐÀ°ÿ �€qÿbSD5ÿ&ùÿêÛ̽߭ž�}€teVG8Þ@ÿ þïßÐÁ±™€ÿ•…ueÿUG9+ÿóÿå×ȹÿª›Œ~ýoÅ€QB3ÿ$÷ÿèÙ˽ÿ®Ÿ��ÿrdUGÿ9* ÿaR¸’‘iü€›¡±“YWp\{ |ÁXp¯'ÏVp4üX^ú&X]p$By¢nè�½nVsnYO^pQ  4åX> Bppp•°Ç]{ Õè�$Õ!óè�ó© ó  Õ[[ �/(8¡/( /( ÔÕ)Wè� ÆY_HÕ¥ˆ(0Õ%X{ ¦(k' Õ 4W> Ò(dS Ý"rÿV¦4%Vè�ü'0ü'>½4g^\vO�õèb,1^‘ “g^Z«Yv‘¢C6WM1–R6X]M1b7\2¬R0)2]Z0045]">‘B5Ö�M1R0‘¡gæ�ª‘®7ÿ�R5[æK3¡¯5[0b¨40ß5�Ü6X|‘,Ü0)2Y^0045l’!B0±26 00ë56 "�Ü5ý€00 4Gÿ‚ FX00F’B0 C‚Ç‘%EK‘Ü0E2X‡[]`/‘Ü5,�00 $ë5,“ ªG‹1 ¹G>‘i ªGÇ‘Ü5W_ÿ�©õG|‘õF^]‘JõF].‘"W‹1 ë5(팑õF\]‘OW©’hšE ¥AmWW`00� 40€VÈ‘B58ð¥AH�V£@00�V£C%E�V ?A}EL’ÍV\’ ¤êWA@Vl’ ÍVXŠ´A@VX.’ÜV|‘JÍVW‘ ÜVÇ‘}E%VA45™’`f‹1Énf>‘`fjAô¬oe‘ŸaeV00ä¦fÇ‘´`“±`bwÖz4Á•w˜2À…>£bå‘È‘òiÿ�ògY]]Ay>ByHÿ‚òg,“ Gy>‘ Gy‚Ç‘ òg ^‘zyõ1Jzx[ qzxl’ò`$“˜2–ó3–. ÷ûêÕȸÿ¨˜ˆxÿhXH8ÿ) üodÍÌüw^y•· wßøˆè�L™l ÎT’ð€\£À§ºS“,‘]>$5˜×‘E™>5—æ’“¹f˜u˜!$u˜¡•™> u�?¡6ð€Z[¥»¶˜ÁIÆ™t!ך Ƙ¨6ð§ù™WQ�5—Z¿! µ˜V_ï5�.¦2ß<©’ÀMª±‘$<©W! oª0 oªÎ!85�“±2¢Z\`Y <©J`‘<©X1<©W[iÖªQ�¢©WV"€Æ�û¨MƘTÀk5—Yµ_ u—Y_> =¸][ M¹M¹¢=¸\ã¡}¹"u—X%_„ �¹[�¸•�¸[„ ͹[d�¸xí¹u ¸î¸’Î  É> È¥ ȳ Çý@µMÉ+!$MÉ> MÈß }Éu I }ÉMÈY¡­É"­Éu ­Éj­ÉÎ Q­ÉA‘MÈ[¦ Ùï]s ÙZsÑø€Ö=ÙWs+=ØZ[=؃!½mÙ^s }Úds %—  s mÙïXd �ØX\sÓ =ذ! ÍÚdñ½ÙX!ÍÙYd*�ØW0=ØV„!éPã¡ø€)8±k&^Q‘�Kçù±k&Bo’$’„ç ‘ “èÂX(“£ ²'Z0q4´ä6 s Áà$Ò刱 ßéQ�ßé> ßèW!ù¢!ùÎ =/úd Þ&•y �Ó‘Áณ¬¤ßè`‘$ßèÑ¡€ù>±çᢠ ùQ�8²ÀøI±xY±ðôso…€ýƒ†Å·©ÿ›Œ~o÷`Q‚$ÿ÷çØÿɺ¬�ÿŽpbÿTF8*÷G€òäÿÖȺ¬ýžU€‚tfÿXJ<.ÿ!ñâÔŶ0PÿŒwfUD3"‡€ÿïÞͼÿ«š‰xÿgWF5ÿ$ñÿàϾ­ÿœ‹ziÿXI:+ÿ þïÿàÐÀ°ÿ �i\ÿ-þõpRHRP860Þë][¥PWÿVXY\ cë÷Waûø ¯¿ � )ª))))¾)‚EþøVV W ½V E ªE EEEÆEƒFy(�[�[ß@]ac&’ƒ\÷g �Y^WWï_` �^f} �V^l�ü쀣VW_krÍ^O0ÍV^kGrì]É0ÍX^\KðÍ (Vkk %\^çYh])&X`á�¸� ¿�X^hïG(]l½V*\aV*[÷fV*ZižV*YmV&pZ&§ ƒF%´!X÷0¼(î aÍ*Zf½Í*Xg Í*W¼ŠÍ*Vg Í)Xï_h ":^iq ¼ €*2]":y\"@":[g":¯Zk¼&X¦Ywl‡7]_WKð½˜:Vh˜9V3Wi{»9Vm™7?^_^mE&å1š í:[ksÝ9Zy`oˆ6\\^\šÐ½„!I[h 1I]¯Vd1I[É Ú1@ "VVŽ0X\XX ˜fG½WqAWXyKWòˆBy@ÐWZWYáfgΫ@Kð�|?á©@X]k²FN7Àd�gBWm@7|||éAy@¥ ÿ[vfujfvXñ‡€ø þJZ|WVZ»L?â|[PîXYXX ¨X!VXPSXY;SXX V°»}XY}XX« T{#R§XY»§XX§XW'K¨U\Q§VjQÝíXXíXWIßV†Q §VQ%hwY%hX%hçWßPì�rm\ËVWZ`!ùƒdbVélhOP{iV ìl`@ámz ‘ü&ú‚mzo�êÐý¨g áʶgZKð¶`(‘mz€5¡ºÐ¶fp"�äh!�Däh à¶`œc¸Ñ §`È×cǰ¹Ð¶f÷°dÉ/x!�¶f—Àd9§fÇÀd§`œc¥W!� \w˜ÑkvV™Ð ˆw!� ˆw¹Ñˆw¢O@§dð€XÁø‡^âÉÐÏyÑ`%�0]ôópøõð†ý„íÚÇÿ´¡•jÿ`PF<ÿ.ÿòãÖ÷©›�9ÿqcUGÿ9+÷óOÕÆÿ¸ªœŽÿ€rdVÿH:,ÿóÞÉÿ´ŸŠtÿ^H2ÿðÛů™ƒuŸÿYC-ÿþïßÿÐÀ±¡ÿ’‚seýWÁ;-!ÿÿôáÿÕǹ«ÿ��…vÿk\M>ÿ/ Ùøa1¦ ‘\_~óV_ãñ‡w^þ‰]þ‰ïZ áÿˆY ¸+™v@+”]lv„@ó jKM‘W t¤BM@”aýç‚ï]�R\\VÝXRd~”W wYŠ˜XŠ˜÷WŠ”[sw`×b X�¸‘lbs X�÷\Y[ýWY] @‚Y“Yv@½2W"\X`al@V_a[î•WOøÛ ý�Å‘X[sëµ~’W0 _;£[[^–P(¥¿Z^[Z 6§Zç^ (¥'À^ü( ò�V]^[o§ «~f¢Xk ¥¬ÿƒVø@k  o¦[Ry¢o c£Zj¡ o¦UZy¢¦Yj¡ o¦UYy¢ž¦Xj¡o¦UXy¢ž¦Wj¡ o¦ÕWy¢o é€_ßZ]V ZG°^^Ÿuó½R ø0°‘!°\u p}“M±3 T¸`T°Ê3´[%·0·z¶h¹†½*°a0·Z$%µÊÀ˜6³Y%²Ã±éȰ3´X%·ÇÌß½ÐMq¶ç¶h©󽬲ÇW%·$5Í@² Kͬ² À˳7WW\&´º zÅU[ƒÅ ŒÈZƒÅ ŒÈUYƒÅ ŒÈXƒÅ ŒÈ%WƒÅ º 3²]>ǽðl ÀÄAw$Q“¢@ÒøPØ`ØÜP’Õ\QÖjQQØL`QØH`CÖQÖ”Q‰Ø‡X{ØZ`CÐÐsÿmV]iYݵ×XÂÙWû‹’[itVZÏ[Ò)¢æÑY[“îÕÒCÔáYã èv@ èWt æ\Q4èY 4è ‹@4è±� æQ lè7�8lè @lèWCÐÅ�ÿ[ffw N ^ZZÝ�á�¶L^V$ êÿ‚[ÿ]sm[bv y0ÃÓ×âg àæUYêàîçXÛàßçåXêàîàÄA]sYòÛàßà]3�\ 3ð€[éZk‘BPb[T3ôv@EEE•EEIE òE rñøuv+e ^á�÷EY ¤÷ ´øD·¡ø†Pá�ï>ôssÿê÷p‡€…€òäÿÖÈ»®þ€”‡zhû\€D8,ÿõæÚÎÿ¶¨šÿŒ~ndÿXL<0ÿ ò¿æÖÇQ€¦ÿ“�o\ÿJ;*ÿòáÐÿ¿®�Œÿ{m_QÿC5'ÿ ýïáûÓ‡€·©›ÿ�qbûX@`@4(ÿíÿØÈ¸«ÿˆeB2ÿ"ÿõëÿßÏ¿¯ÿŸ�ƒxÿi^J?û4߀ÿÑîÐ_XWVp[{ùõA_WoV>À~æ@ ÿkZkl�Wl’ †Y’ž î#`�]V\i !ø±Q,ïVYZ]!VÏPoð;kð;O+ýúGPîr ^vuÔÀzbóÉ®’ib –œV[˜ ¬¨ üœÅ�^^]s¹´s’ˆÀ3Ú]ïí Ú\_†÷÷U÷÷÷÷þ�[kVY\hto@%XZ 1 ÛêP„°: M: …øF F QF Û•� F F U F F F F ©R$ @ : : ª: : : : ü: P^W{ij·³ŽWs!sã$¬ ) sÕ?zB^X®@š•Ç#YÎ(Ú ›!Vò !¥ ò"[bzîÐÏVZÛp  2ïYs5Xså5W² 5VsÑ ÛwÃÒ]_¾2PVoíR]Û_Yl@^6W^QWêm6x�z8Z€ž{7Xìm6@ ¤8Z`¤7è�À8‡`À8,–`¤5XW P ê8¤Pê7x� HÄðH²Pê7º9ð0H[0HVƒê7h1¤0ï�1_¾”A] ‹jI\ƒ yKË0yK‡`yEV=_ûÀW[¬ItAA½KÄð½KPP¬IV†@+y@¬FVÇA¤PäY…ay@R2YW?]_ ¨ý.RÌ×03P Êf ;W\^G`IP:X¼0 \YŽò0_ IY@XPDn[¼0 IP+SzR 7Pä¨U¼0¤0�]]sÿVW[h`>½Ä‘]]fm\0 zÅS[l‘\äs’ý]�*éXcðì$][±PÕb][YŸ0] ïPÖQ%ZÚp ÆQYFñ5 +åcXú€ Š�+ÿ!úÿëÕÆ·ÿ¥—‰}ÿqeYNïB3… ÿþà°ÿžŒzhÿVD2ÿ ýîÿâÖʾÿ³¨�’ÿˆjL:ÿ(óÿåÒÇ»ÿ«›‹ÿtj\H<)üpõÞÐÊàZV~ÿ~dgpm B±#Êà\Ðûøü¨gð�ò‚Xø�tý� r�ó�Ã`þ.‘VWvXVoViX.pÚ ó�_·`ó*4ñÊà1Š’X°Å¥á'0K0ѧ¦!'0f ¼0 a}’÷€4ˆ—Vƒ‘àˆ�o’:AÚ d’[‘ë¢ñ'0— �L‘XêQ’W� Ö’[\YÛWVl° á—XX^Zdz@j@å“™ðçhò˜Xg½«Wiò�ˆÖ’Fñg0Û`D¢§ß;­¡�ZO¤ W Z‘ÎÐl�‘Wø ¥_ßf30òÀ•¥Ç\• ,‘­1s@Fa°¡¡0·¦xз¥X“0óÅXÔ¡X`gÄÍà¢ê 8‚¢Ë0•¥W• ò�ßWXZWçZióò”´X`Ä·¬1Y©1¹§@k= 1¹W_^fZ Vºú5  Uº^]lÞy»Wm Uº]^Çm9¤E­˜W¤¶»l¥Þv£w0&l� 2b“A`• Þ¡V^\å¡Û ,‘ ÀëÛ¤VÊáX±íÔQ?0¿à^û´[û «¤VZx á*“’;ÀUÃX ^Å× 9Ó“D�Íqía`zÄÜpí`ã‘Î`[XÐrv@:´Ñ?0V_-qi?Ôa©ÂW-qÖ÷À=^ãñ_]W¹áwàÝ¡\[ãñtepuq^²\ð!@ìÁ’áôÇ1àôÀZ�Jðýõ±á^bruf_] V„`aÆ!ÿ^W X{ÿf|grudý "xiuXXVÅv*0ÎnÒFнÁ4ÿ]w S�`Ñ*0 ñ` ñ`) ñ`ÆàmXÒ^Ð$]m¬à #l@W ¼ÅáhXÒ^ÐÞãÐbo[X3P–¾hÒb  `Ñ`× *�_³ È"ÏÓ¨ ÙЧà_dí`¡àH#__û¢f_^¤^q_zR!ªF F F F òF a!ð^XVÿXX\Y ½4äV]ªDè\PâDè[PâªDèZPâDèYPâ ”Dàs^×Ð�kð©àª©à©à©à ©à *©à ©à ©à ©áðªË@©à©à©à¦©à�øèàèà´èàìÑ\@à¬q\ÓþPþ[¨‘U0:pò"[@¡€€¡U0)2õkP,V@Ù‡3óu`~°b_XÏ[sØïZ ¦ ä×  VX7WZXX úkôŒð:§ “öW^Zà¢ù§]¢øéð¢÷]¡\è°ûï `û÷°ôsx× ‰€‡€íÿÚÇ´¡_Ž{p€X!€ý1'€ õâÿϼ©–ƒp]Q;€9-"A€ÿýïãØÿÍ·«ÿ ”ˆuÿfWH9ÿ* ýÿðãÖÇõ¶s€”w€ymý\�€@2%ÿ÷ÿéÚÍ¿ÿ±£˜…ÿrg\N;+ ©€ýï­€Õɽÿ±¥™ŒÿrcU>*É€ÿõæÙÉÿ¿±¡‘ÿ�n^Nÿ>,?èAø�ÍXò ý°^åoi0]QYo[°U0ûp!W\n+Y]ÿ²�b’�X �  ò€XÿX[k^V~afÏ Dà.X[æD��`ZV\–×1†ÄQ^8@D¼~L�XWY[ˆâÚY‘XkPß-V_¢D~êÀL`Xv`hÞ¥ÂXV[x§ÀÚÒÃâ,�g0g3à á»¶ { \Œðo bj þWVxiVÿ][`+^WvpÏ!ÒàÀ`•@è°ò¶q^WuljÚð 0Þ H!fN° 0êÀW`g2Sa#cAl%VV@ñl ,�s°^’ë¢s°;@¿0Âs°¥pž&wYž&Xž b!_xPÂ'L0’ ÞE!^Y_2�ýÒD"]ä Ð`ü·W]‡V[X·@öp‰’þ!V�v0�3W`|ˆ�ò€W\Vj!”9ºà,10¦ÐW�� W­ð õöÑN0[ÀB X+1�258\Wb1 DàL1¦ ŠÝ#x0ÔÁÝ#V[Ýž5¦¹ž0b!VVx Ô\ "ÒÀ^\±PUJ’ðÊÁ‚ÑW�êÀV{ rïg ym“{ g÷zv£záþ’Ñ^Vwlóühq @ju·>ŸVvtVZI@P ˆ"E¦Ð-GYº@P ¡sûhu•@[ì¤0ÌёÐ{‘jÑÂvgTµ“�ÑKBÿb[|] ljwS „D[ŒB’Fë[XŒB V`v¦2xm"V__”‘ÑÐÄFÕÀÐE[-pìÞÀÎa˵QïDþ ÚùF[zPY[½ ùD^YX\ ` ®&UWW[#ð 5WX„Ï5WWAaù@ò�ÇÀrò!”;0,‘]^^©ê@xRYúp[–£]çY%rzPXs3²Iñ�Q%p�R ò°¯U߯TÒ0˜T\³V`%ðë"V\Q’LI3¥0¿�ç1[ÖPO‰÷TñP 2ò¥^(A¿�,‘Zu`Õµë£Z­ð&fYQ*“ZZó >`ò�Jlú„r3Pakú„‘]g20ü‚;0Mdiªú„]gdú„ƒga*ú„]g`ú„ƒgù…‡¡7’â°?“OñIäkE� ´�ådVíeögsE� ´�Mb»°¨j5â`L‘ZQ’W”Zú´E@¿”ö€Te‘ ]dö€ge{wze ${w�e{w e {w³eé {wÆe r0øuôóq)Š݈ôè Ãÿº®¢–ÿ‰yncÿSC3ÿýߤÿ†i[MÿC, ÿùìßÑÿõ§™÷‹€Yk`ÿQF7(ÿ ûìÿÝο°ÿ¡“„uÿdQ?0ÿ! ÿÞε߆|l¥Lÿ< ýñýã·È»®ÿŸ‘ƒuÿgZM9ÿ, ÿýñåÖýÌßµ£™ÿ‡|g^ÿI4 ÿ×£ÑBdû…kL@]VZ_žð\õÂõ€Xö/ðÇ!]VVbþ2 gZoi~(ýp.ЖV‘!›î`j�ýpó€ÜPþ.Ð\d|YYZ¾Y‘\\ü–¢\¿bh(\-`ÑÁ]æP ê x îÒ0av’]YœqÀÈÀ“ÿ˜Ðý²õÂ\\~jb{•v¢\[¬�~Þ \Z] vvc@m�SÂ\Zî� Ÿ"«\Z-° Þ”YÚ� äê•-° Þ�‰‘YÚ¬”X´‘–b\WÒ´‘  \?¡[[,¶°[ v`"\4ñÀÀÓ=¤› ÓyÀ@¡Zh÷ ¾C"[igu�Úñ-Ch¡7@p§[ ˆP#h¡Z!_#h Úð $›¦7@ ›¦[ p¦Z!u p¤b s P þÀ[\Vp²<Ÿ"¦0p7¢9ð§ ]éà°°ª°°°°*°° ° °.[op@·04 2/²½Á“3:¶pÂI¹Ë XI°ù¡Ì *ø¢WPÀªs° ° ° °ª°°°°å^åàê¶àf V`mÏo—ò2§pñ ö ý°™2àqÒ�ù¡p¯hÀTñàž°ž°ž°ž°™Þ±f ÜPÐZoa m"Z^ª±É #ÀZßÀIÐÁS…ñÃãÁÀZ[W  §ž0^2ÄÂÒž0L@2Ãt!e.´ÂZZZÜâeÂñX8Ãâ¡ZXl[e`¦ÐýÃPVWýÐ92Ù”Ã^“ò“ÄpçP¬É³ ¬Æ\VV(Á žÅ Ðp¬Æé`_ý¬ÆWVXYÈÞòüÃYpÖÔÀ\¡ ÙZpÞðZŒ0}ážÃWXhz@àŽÀ6ÒP>Ðú±WYVNÓYp dLZõ@ù mЃÁVVzd{WayÔDA I0D‰Ô𠔨p”×V°ØZq°;¢Lpàϼ£²ÒÑ]Î\ZÏ\[Yp@n@�µ 2Z[B²ñ ÿÑ@ WÕ²,"Y2"§z<"ÿ3'?ø»õpw�ó^^ŽÐ4!\ÏG øl�^])[ £²^³’& Õ�ž§°p<ý‚ HÿE@Ò�ÿXÀ�<Ò“`Y t°RsÒ�èXn@nAôE�Àö [ñ�À­oV^c�Àˆ†ñ�À†@ e�À´ñ�ÀÎô°J†Zcïñ�À6ý¾!6E1A¶±y L@^^_U@ŸV^±RÂ@#WªG K)VG K&[¡]V m)ÔÁK$þêW]] ’‘)[  +z° *[] Â+W@Â+0 *Y]õ+õ+W *·Á(;`(;·W '\eL\:epl6W[f0Xð};xÍ@l0,°]gbYS@Zz°gò]d§4 ¯4¥b§4¯0‘^´‘ V£]]´‘ Ü5_ÁP£Šwòï0ÌPö7^Ó ö0$‘]f1[w`LÁ”GXE)%@l�]ò`��W K]ZÀ²qÀ$‘ZI‘%DZA0F %@ò�YþiPW\_WUGZŠ@ŽIVŠ@- ŽHV^Š@ °IšA Ž@¢1Y^©1œ@�ÕD[ÀW �€BéAU\à òIZà òH&;Q YþA YQÑòF¨1¾¡HWW\DqXYZ.qXYqXX�}ðó`‹YdQ‹YuQJXVWQS¾XcRÏY’uQÏYq¾X–R$idQiuQŽE�uX«AŽDX^W)ñ:uÐ� â]X\1°ò`©Fe_`Xña ghWÀxiZqxiña”;€ifV„aŽ@Æ�][XY8ÂXdYJÑ€ÃÂ`]ÁbÀÕ�]WVfÒ�¢1mðÅ[�ÑâDmðª0\�òD»@üAÚyû�y�ÑxPôHyû�9u.R\•F!G {s÷€rŽD$ö� r˜yû�˜y�щ˜xSru÷�!qÞ�nôõú׌ŠéÿÒ»¤’ÿ{iZK÷.ë°íÜÿɸ¥”ÿ�p]L÷9(AñàýÍK±¤—ߊzjWJÿ:* ÿûëÛÊÿ»ªšŠyjYIy÷(ÿöÿéÜÓÆÿ¯£•‡ßyj[—=ÿ.ÿòáÐÇÿº­¤–ÿˆudVÿA,ÿíØÃ¯ÿ›Œ�sÿeVJ:ý*Û úèÿHáÚ?è u_¹Ð_¨á? 18ì„ó÷ŠZ÷‰G Q÷†pU°÷€ë‚]g&°ë�âÁC`ùzFAì€Wamx÷_T“V}fmk `�d’†Ð8F’R°^Àp(  ‘Ý[ì[^«à˜X�°Œ˜¨°œ� šZ«à°œY[�àÅ�”Œâ°œX«‘ ï�À‘  °œÒÀð­À‘ œ�¼ë€õì M  ÝqVYWPP™NçÑbpYXö¹@\w?âxiuÁãÎ;â{ D±QÞð±x²Âwtö]ÁÓÍÒwtV^xF°Ð ñ°w�ˆrÏvX^X`à5° Cn;"vX[Ƥ AžÂÿuav[\Xl[ Jà¥Z]ê  î¨oWlî¦XXê é ¸°î¦WXYWl *·V5° 9¸’ê 9¸°î ƒÀu·aY\5°_g´Xå]5°fµHl üî ²°sg`Wý4±òooujpÿhvs`ppf¯u Ý2m‹¢}4µ¢m-Á­h}¢ÏÝ2h‹¢Α£gš [ÐfwïÁfW\7d[ú fûÑü³ÏVuÊ'°z¨SÁ ÄÀÈZ!À%ÈYÂ%Àùµ±À(Å®þ�uÈX2ÀwÊl%ȼðJÐWÈŠ°fÈW‚ÁsÆWB2ÀÈÊë ·É1ÁèËø °%ÀÏÐ__VWY7 ÍXb_[>�œÐÇ ü!òÐ�pv|ç <ÕärÉ€8ÙÕð:×XðW×!Ò ¸'Ð Ñ.ÐXwÔY¿`moÅ{r_åXŒÑ‘п`_Wo´äàUP2÷2_WŒÑä‘ÐéÐ_( "ÐVWv27àX�BÀÖÍнÒe[ÃÖÍÕæÔÞÕdñàÅÔÍÕ äÞÕÉY ÆÓ ÍÕ.ä’ÞÕXÕÆÓ ÍÕRäIJæÃÖ ]æÖÔÞÕeWSæ ÍÕšä’æ2/æ ¥æBäY“åÃÖ)¥æÖÔÍÐЀ’/lV¼ñ\ñu�wßýVZô‡Þ¾a ä`ÿÐþ€à¢(!!âGðèL�ð døèWl¡óWÈH{ðkôyhö¦ øY‘÷Õ ø‘÷•[ðø‘÷ %¼hñø’ôsu¿�€‹þ€ðàпÿ®�Œ{ïjY€?5ÿûìÝÿο°¡ÿ’ƒte¿VG2½Pî9€ùë=€ÑÆÿ¸©‹|ÿm^O@ÿ1& ÿÿôéÚÿ˼«�ÿ�€rgÿ]RH:ÿ/$ ÿûìÝÎÿ¿°›†ÿq\G8ÿ-"ÿ÷èÙÊÿ»¬�ŽÿpaRÿC4(ÿ ýíÜÿ;°¢ÿ”†whûYÕ€;,¿u?ÕõðfÿìQïB�³�WWÛ_Wþ`[@ ñ¹à¡ /ðW°¨L�z@s)VH 7ò0 7\UP7AAü7U�WV]ufd×`a’WÑX'iuZ’�h’ù�{YVÏ|Š9ñ°vѺT ±XÉðYo‚€ù�Ï`ºU‘vtVZG0§ í`§ RF‘gX�úá|8“fò°q ö² #{E’Ud#0$b#0$Ea#0$@M‘ 0$bpVÊ  rr"TQ”{(¼° { p!J t�éD“›ñ° {$›ñ ·(Ê¡·(eQü{ ê�][YXoö™Pp’]Y¿[“õ$Xù;Aé O�57@�0F‘!Д! 7³‘\g_[ð(56gX\OP»56eW?6I7Z\)I7ñZI0F‘ ²ñ`qž7ca¬8 ¬8Ê ¬8þQ¬8¼°Q¬0œ!·ñ³í°oõ#¿[^šC]ÃEp@U‘[Zr[‘`�œ![@Üq‘ À›"Z} ?DY]ê�»VYoa|#YQ\°ã0 bBY[‘`” YXi‘ `�Ìi �’!aô°z“”Pv! ¬4°AȘQ¸H¼°¬0q‘X] …3Xeðá@U‘µX/B`”XYi‘ n”XZ áE4á@F‘rñ"`¬4rñ©Ð -X ‘7$RÊ  -X1` ˆ-X01¬0"T’*ú`ðF‘( ùâ|DW[|�q‘Ð@™Rp¸,!R�¶RX'DWÉ – ¨CWkàØUò@À†`æUI @³‘ __´Y1 q¥ eè F ý—T"Ð ¬4$/PCh¼°{$/‘ˆ�7d¯¡CgPag§2Žh·1ŽhÆ1ŽhÕ1DŽhPŽha{ tdD„Võòíl/õ8ðìœ!ÿÐ'9“`g“ íCz�›AV‹]]‡ð^tÐIw]\@W{\ WvÉð´p÷ ‹zxVY[� Š{W ŠzÝ@ èŠpê† ÷‰X^ÝÍzZ÷€ûžôóq «ŽŒë Òÿȹª›þ}n_PÿA6)ÿôæÿ×ȹªÿ›Œrþ7XK8%®AüîIÌO¤»�UhT],¿òmÂÿ´ ’ÿkXNAÿ4)ÿúÜÄÿ´¤”„ÿtdTDÿ4$ ÿûñäÚÿ˼­žÿ”…{mÿYE1¿ õá׻ﮡ߇zïjZé:*øpÿ=¢B Rÿ_YXZYYœ õ‚X, ´±õ‚økàý€ÝYXYW_ÍZŸ ‡Û‘]^ÚŸð '—ZXÝ@t9•ßP^ '—ßPg[ '�ó�WZ—pA ”n�ü ý„n�XA @h–³àý„ÐüPý€ Ÿ‘ïXY^÷€g ï ô€]YWXYQÀ©0<»–'WYþ�Ê�Εi I AÊ�â™Æ”â—%Wí• ©Æ”ªÛ“½â—V[_ð’ dÎ�vYT0o1�›!ßXb b&2X]{Xx0À j¢úºpds£\^_\VZ }�¥[– š§UZ– š§Y– š Îk¡\‹ ó€X[åXdp 'Ðk¡[Ö‹¤Z^{¢ �¤Zù‹ ÝXY\]V?^Z H’³Ï\^Ís³[X{¹ZZ!¹‚ÙpAºp!¶ÂÐép  aºW !¶æÐŸð �ºZK �¹V@íp±ÿYbds aÿv{jwbiý‘yRXX_[`ÿam`blwrÿpfub`uw×8@BXè@ŠÊ2Xä ò° XW�~|_@Ô¡½àlg Ê RÀ ÅV^lÀ$Ã[A�ûàk¡Gà@l r ZÿW_`usX Ë#¼‘X:0OÃ`XS XÀHÂXNÃv�ÐXÀvÆP˜ �[ $wÂhÀ Å¥�´°ÿW`X`aX^ßdW[ ¾Àɦ²²µÆa¿ÀÖÀ¼ÇÀ«�W`W`ºÀa…XiÀ.ŽÂåÁ¹ÃP ¿óËÃÀÝÒAÜåaQU¼ð1ÙW^E AÝWÛ UÝÃÀ iݺP }ÝÔP‘ÝÒA¥Ý²­°¹Ðv_]˜ Ö�_\¦ FsW\÷WpîÐXÏ1ûÐHÀW[û`anVoas³\'áãY^ â[çÛ� á%àó€…p[…þ‚>á°NEçYEç 0„Fæ %lààñ{`¬3â"!0pcâ¨`—èF@!—è]±—è` p`v’ƒC�‘C�;áYæ@ávFãöàZüçYüçBÀüà÷ ŽàP‰s¢qñMa —ä5ñ=÷A Lø{`I Lø!0Lø¨`Lø’VPLøPLø`ˆp`œ ¡ÐEÀv¬S$³S\bÁ b [,°-c½† ôsp«øõp�€�€óÿæÙÌÀﵨ€Ž�ÿo]G4ÿ öÞÿƱœ‡¿yk[C€9ÿ'þç¿ÔÀ²U€–ÿ‹€ujï\N_€5*ïe€öè¿ÛÎÁm€©¿•�vu€\ÿQD7!ÿ óÙÏÿ¾¬šˆûv—€R@.û£€øæÔÿ± �û~»€\K:ÿ,ÿñãÓÄÿ¶¦—†ÿxgWHþ߀) øúª‘[gàZX_\Y‡b º�{¢²ýk`[0ÌýXØp^D��íBýGò]e¬[VZ{¢µZZYØp_*i é(Zka 5W$×qSp'úY{£¥Y *Yka T5z£ X £¨'ÀüP5W{¢W £‡Â ÛÓäka‘5*©Â Fs à_F})$]Sp '¾;&\\WI)Z"†pI&gàk)U!ék)f!I%YZ>e b ç×pÿ[WW]Zd’¯'Z @*Àº�Ä([÷fÓ*][iõÓ'YT Yh÷+XkÓ'ç@ѰÓ;« :X\k°@:[m/°8R ÷f9[_Zhu:^_`09ÍàÇfº�¡#k`WZÇiº�ú0¨` ^÷é _\ÿoforu}dÿ arrl ,ÿ_Zdp/á`\°WP%àã6ña*ð3 %àä4Wì2ò1ý 8ãZ^v`a÷!&Cobr· VAZ^‹�ï¾6Z]\]_uàkþ@B]ú€�@Bõ\ž°4ŽÂZ[mZï}XdÀA¡pL)p‚@AA[ÄÀ¼þ‚Z[Y[Þ@Þ 'A�Z³¡‡Ò¢�P9²%CO�^È@ï@ZáPVP ²¦RÛAÑäãG`ã@'AX`mÏo §çR¨ }†ó²ZXY I@R¢ÐI@ØAp„ñãDp@“ñ;W¢ñã@AA�°TRºP "T¡Ð"TVÄÀ‰&äC†ÃÛÓpäÑä‘Vã@qAVvÏsY\ƒà°ÿüGÁ³TV^^uøX@ã1ÈT\\ur�vwX@ÄXâP!X@AÛVåRX@«�&ÚW k=° X@‘ÿmb\\a sWÓ:dZBbH`¨]¡P`D`XeVaaÜH`ÛðY_^°�[Ù]‚ð)pÉvc]y]ª±[YeŠlÝV�Ð 9³±Y^„¶PI %à¶fCñ2 %ད]µXÁSédÎR‘ ÔSýeâU ëSx‘þSwåR cwIJ{=°X@ó�[b‘9 ”upYý„upX{w“@ý€ê°Ç��Hÿ±§ T�ö:%BYhP[ ”hPUÀÆwW —ùàý€ïfôó{¯�ŽîÿÜʽ°ÿ£–‰|ÿqfYNÿ9.#ÿ óèÿÝÒ·ÿ¬¡–‹ÿ~lZHÿ=+ÿõãÑ¿ÿ­›‰wÿf[PEÿ7(ÿûìàÔÿȼ°¤ÿ˜Œ€rÿcWK=ÿ1&ÿôåֿǸ©“‹ÿ|oaTÿE6'ÿ úëÜïÏÀ­¢“ÿ„ufWÿG7'ÿùêÛÿ̽²§ÿ•‹€iÿR;&×SbÚñ]ÌP[]<³1 �º›³¡Ù�ã0\bè; I$)—×h?™G?�ê°¿\bh&‚¢\_`2ç\0 Ù[K0á ?B\]n°‘dB\]iÀŸ�ú“\\upä«–ÆaV¹•Y^ÆaÈ–Xc¡É×—Æa×—nãþ\[^V\WO_ 9b ¢[�±d¨hQ¨« ¶­‘[\ÛA¹”[ZÁ“S¥Z[ÆaS¥ГS¥×  ƒ£à’ €¦ï’�§¬ '@N‰±Züà­‘Z²“Õ ¹”ZГ�¤ZX%[´‘ Ø¥ˆ£ç¦ØÖç¥W_´‘ Ø¥W\â´‘ #·Æb¼¤Y[bïd —Àò\YY�pJ°FâT±*0§]¬’YY^´‘ ¹”%Yß“xµï£‡·Þb@�¤Ž°"¥µÙàxµ�çàHñ´·Gñ¼¤R­—|r\W,A1C\UW9A>C\   Ÿ”²¡Ð Ÿ�°p\W¯a0vO³WV!a Ãîøà¸:ÄWôDÀ­‘WÌà\V]sÎÒ\V_äÑïàIÓZ] ŠR¥Ð{Žå[�ä<ðŽåY¤áŽå€²ÀƒåU@Žå_ ŽànáYuYJ°\³[YXJ°1 N°5ÑPÈ>ÓPõXõbðüÛðk YXv`l—X/ÐË�ãí@ lðnáW\’@:>Ó2.ÐSupPIò?VX_ó%Boñ[ v÷5`v÷Pv÷àÀv÷F vðè]Vk£ Ó$ìà Éû[÷l Ó †þôsjò‘ú€�€ëÖÁÿª”~iÿT>(ÿüæÐ¹ÿ£�xcÿM7! þQ€ßʵ¡ëŒ_€bY9%ÿ ýðïäÖy€¹ªû›ƒ€}n_ÿPA5)ÿùÿíáÕÉÿ½±¥™ÿ��uiï]Q³€9-ï!»€ýðÿã×Ë¿ÿ´�†oÿ]OA(û߀ãÍ·ÿ¡”‡zÿmWA+ïÿûð€B —33'@^lbJõA^àÀZ dl¯Ztd ép ìYª÷ìX÷ìW*÷ ìV÷ìâFà� ˆÐ]û@ gB~@tF ˆÐïWõGXì+°™¤"X¤8› ¤.NXìãù@ÿ \uXZdW`ý üV(§�ì4Ø@!И0&› Œ< ² ^¼PÄ R‘f5*‘]/œó)’b"B×h ?“y#Hm“]t�ý Ó]__Y ­² À¸&Ýp¸ '@U]+B1C]8B>@¦¯!^^MÀ¸$^ùÀ ¤ö%Üp ö%Ä@¸$\z_@6X¬5$¸@5\ð25\Å@25[…p5uÀb6“@5¥Àz6·z6U@5š`q 25*!ª6W 25P Â6*PÂ6‹25¯`Aæ6¡æ6“@25V`@À F· FU@20L@]\Œ�@7P )Ê¢4BÉÀ €=HßA=HíA=HûA=D[ECyHEQyHSQyHû@™=@Ø@]Z“`8P†/"]Z Å�Ã@¯!Y_XsÀGò]R‘ PÓ!õ² Ý$ˆÀ¸AŠSmÀ°P‚`bÿvpg^oi~g ubU[V!Q©&PXZ!Q&[ZZ5R &[YX!Q &[UX5R ;[W!Q &[KW\!Q¢\5R&Pœï�WV\Ä`|`Wçv�Ï]s :â\ZÙPvø]ÙP÷sâ\XWZçv $m4`s\–ÕRW^ÞP PmåôPâ[5`\vs zmŠ`s(“þVfVvmYv5 âXXØV »¾móQIÓlc émbÓl3c }JbÓ`SeÈ`’^c A}uaÓkˆd „k} bÓ`©eLqµbs³Vv“W\�L®}3`Ã}E!Ó`ïŠôóu¯’�òþ•°Õǹ«ÿžŠvb¿N:&þÿêÖ®ÿŸ��rþ+UG9ÿÿôäÔÿÄ´¤”ÿ„v\Bÿ-øÿêÝÐÀÿµ¨œ�ÿƒvj^¿SE7mÿûðäÿÙÌÁ´þ¥€œ‘„tÿgZOBÿ7)ÿóàÍÿº­¡•ÿŠ[NCþ×€ýíÝÿÒǼ°ÿ¥š�~ÿqbUFÿ9*ç!À1 ,üQÂ~@ooasY-[’û…Z’Y •�û…Y’Y •;�û…X’Y •W�û…W’ •s�û€¢�øÁûšyâ_\z�.­"_\K‘��•’]»©•\©•ZS©•· ’�©• Àp ’� �•’ °’�y–‘ëðƒ  U    } „ Ñ ò�‘©”[\·Lwò_[‘¨��ø‘ÿ  ª    *      _¡ó€ßZz +ž“Zu'z‚¥� �� ‘ÕZ‘��{¡Z¹_‹ð° ‡¨¦^Š�°9@º¨²¡9@˜º§°Ñº Š‘Yï^/ô¤Yýn<£YWXzø‚ Q°°`vd’”W@ yÀ ‘X\�= ê”X\û€2²å[� ”g z|‚ ?²[ �K êGµZ�<µZ êGµY�<µY ŠGµX�<µ×0GµWÂ�<µúÀû€ò�XV‡sÝ@?²”@‡”WWz ‚¤WŠ  a´_W_ ê%£W™�á ��±Ø@á€ÆÀp$Èð $À벡ठÄ~  �”± š¤WŸX[zóµï° ÚcÅW °™¶Â_Wª]°cÅV�þ¤V×^’� ¦Á]x®•!  “V\0ó ËëBÃÁZÇ•²V½B ½À¥Â\ó; )P_VZûWXÇ X\V[sBfböÉXÛW^WÐØÒpÅ`ÿVZC©EÐ2ÖWÓPW@ÑRÐÐÚÂY¾A½À\°ÂUÓ…r×Vñ�!�Ùñ�Ù† �×a‘5à´ÕŒÑÁÙð,^ówÐ’�¦Áî ßVlr… \ë¤ßíÚVûÒW í¢»ÞØÃs`9@ü À)â^|wd]�="_\=áBàØþ�µp=á ‘QäX[R=á _æYâ_åWhâÉ}æYâ_àP_×VZX5A©À =P2&ÿ@èìQ8ÿ`WZY` ù;ŠÁVl'=!gý¹!$÷f 7bžÅ!aàž‘$`û< Y_`¾+Y[` YŸZa t ¾Xl®tX÷b OYXa}[YX` ©kÍ ƒ,Xo ¾X^agXï]l £X]b› OX]ç[X/]`Þ[L+ÝX{_ÔZdïéÔYh+õ8XÞÃ{ò?$Vp%R' ö37X?� †&b %Wø>%cW_o¾[W_l £Wï_g7W_fãÚ&; OW_bË>$Wæ¶%\b{þ%\`¶%¿[o Ó$4b{¶%Zo .5ÏZfþ%: Š.5YXþ%ú º!XW ^g÷f·$Wf½õÿ$WaVŸsi\rѧ0ao[m[`Ý P°6UXº0¾0 Â5Vº0ëMÏ7WÚ1LS ã6Ú1ß0 ¦1^Vore Q§0­ðÂ_ ÒD­ðÜ0EZ^âc@Ñ24@V``ŸbR;ÐVvAÐ8ÓÎÐAÐAéo¼°Ù 1ÈC_`["¹1¾0kÔÉ1¾4~ѪÚ1w×Wº0†Õ^d®@àyP‰Ò\VÀø1àyP_Zb ÎO_Z`¨@æC_ZW É\_gV‘ð ‹^0 ôÕ’{ ôÕc èÐA^\gm‡ä\ †3å Ð>à 'ãXÔ°2à@P*àÉÀÙ >à[á]_Ø OR ]“‹\Ê £­\Ö þ8\â ¦7\_üPO\olg[á\_›°P S\^Äg\0 ~åoWp[\Wd`Þ¢åWlèÔ\W��÷æYÀ®åW› >$\UWP(,[ªà b$õ[o3õ^l¾£[^dO[jæ[[Ïàí@ô ?õQg~1­ðÂA ÇDšñXåÐÇ@òå3ôZþ>$Z\a{YlèÔõZ<À > â%þôsq•ú€“€ë×Èÿ¹ªœ�ÿ~o`QÿB4$ïö3€ÖÆÿ¶¦–†ÿvgWGîO€'W€öæÿÖÆ¶¥ÿ•„tdüq€n#ÿóäÕÅ}´ƒ�€p‹ÿN=+ÿøçÕÿ÷­¡ÿ•‰zjßYI9·÷èØÇÿºª›Œ}o[Gßß+ Û€ìÿÞÏÀ±ÿ¢�‚tÿdTD4ÿSj÷æÂ]X]W[¥?QèôÜ0ýòW\ÿXXZ\VY îãPšb\du ^ëAÜ $g°»0P1ÈÀË01VëAÜ£[\d;bXëAÙoó0\d*a‡wÜ ~0ƒKho’[�bzïuú®Vu)¼db¶2ÌÇäÙ$[8ð¹1q„éÉ1÷Ñ0íê2l÷dXW–°jÀä$uPjÀú []u×VYhÂ`|p?^5$sVWw@$H ²Ñ [—À­ð¹B[_Yws[VŒ@»ÈB¾p!X[dy$W/X \[ x¯2Ž"?[vwKRŽ!ŸZVh— ‹$YR² § š$Y¢! §'µX“ Å'XJÐ ¸§ Ñ0Ž!W\² êô(Vï!Å'WX·v Å$V\ # D&7Ï"ô$-03 &7º 2§$V[ÿA<P�0Z^][LÀOÒKZ^Ô° ‚5½ÀµÀz0Yñ@y1@syPó0YhweÀ¤ ¡0Vñ2¶3W½1ðÂ0=@¶1 hp9X‡ÒÚ4d å0×2ßkl[W#ðв3k¹5 Â5AÎ2 Ô5kÝ4å52B›ÀTå0³2f¹1Vó @úè2fÝ0XuÑ ^FÔÀZpm@³2`¹5 ¨Â5…AÎ2 Ô5`Ý4œå5©Bd å06±h"vCÂ0ÅEæ Â0è1obw]xAÏ^Cœç@Ý`}]D÷C{ƒZj@@×1÷Ch\¥�ZhUkéC‘ðE2@ QAWR è UYR-P aZh º UiùB]U`"éCðE©@ûA £W RA ÃZÈ U»R-PÃZô��]DaÜ2}Wàæ3 c På4 cu¸j>P$j`ÂDaåkNb $e2B}cj{cjù�e2CÃ$e©Bä�£j{£jh£j!àTeijph`îæfdeiXu[î`zd`þÑ¡aVX^~òfVXZ} /yܶ /yh/wWX} \y<�\yŒ !woV\/wV[¡ À—y¹—y�`ú¡`wÒñ— ?™\¥ ?�ûôóSÇ ë–”òäÿÖÇ´ ÿ�†wiï\O5)ï%ùíÿÒ·œ�ÿfK0¿úßÄe€ŽÿsX="þ}€ìѶ›þueJ/ïùÞ‹¨�ÿ‚whJÿ+ íÐﳘ·`DþJð öàËû¶ÓŽxbÿM8#?øâ×ûpìïRB‰ÐavfÿWYsxbtý Áav\‡÷¸€ar\wÿWVvmZsv*/ÀœÐŒYà�å€�÷aaVØ€X^XWMvဠ�üŒà�š—XWZ ‘ %�à�H�Ò‚’V{0 ‘O�Å^à��ú “W^’ ’{œà�™3�\ ‘£�à�å…ƒ’Ü�¢ ‘e™ñ‚ ‘�úÿ‚V–vaX^uEs `žúœà€ ¥ùšTG“  X¡�ý–T\”  V¡ ý•.‡“vaW¢j¬%¢b~£M©¯”| Zv¡¡ £ª”£¶£ � n¦Ú”| Ü€¡Ú­@£¢ð¥ ù­ó‘Ⱥà€ï¦ �ñaX¾N1W …Æ‚Wß_ ôf³X¹ o°m¡V[º0]~†�YXvpy©›k£�»s�±•½\X\޳°½À²ª²½˽ZW_޳ˆæ½ö²ª²Íö°�´ (Í,ª²7ÍXÚ€Ž³Ñ RÍbª²mÍX‹V^޳ ˆÍ˜Âª²^£ÍVV]޳ ¾ÍDΪ²ÙÍÎÀô ôÍDÒª²×wˆ¹å€$-ݨ´EÝÀ· `ÝÛ·I{Ýö· –ÝDZݒ,Ç ÌÝGÇçÝbÇ $í}Çí˜Ç 8í³ÇISíÎÇníéljí’פí×Ðy0`~W]ÔÜäo[ÓçãZ]j@}cÛãZ\zþåß[fbÛãV\ß`Èÿ`VëYXHðÉ#ôX[`S/ö�ð/õWðñ"ðdOðVW`ù"ðñ_V\VVîk°¹œ1^|û²2^W`Y[V| 6!ÿ^VZ^\d|ZèÅ›òà‘öX\ç\òàñ^VY?^]d|òàdžôvXýÆôo÷XÑ÷gXÞýÖ ôsn_þ —€•€ðáÓÀץ•„V€.ÿòÞ˹¦”5€ÿo\J9ý'=€ñÞÿ˸¥“ÿ€n\Jÿ7$ÿÿìÚÇ´ÿ¡�|iÿWD1Ý e€çÔi€²¢”†x™ÿ\N@2÷&y€ÿòÿåÖÆ¶ý§�€‰zkÿ\M>/ÿ óÿä×È»ÿ®¡”‡ÿzmcSÿC3$ÿ þ�Âug?J±€y0b]Eñ»‰$ñbZ^_a”ÙùòºµòbZÙV¹0­°3bY4èAÜ@ ðCbYIQÜ@‘ 0«QÜ@ ð@vðbv@îùXZYà`VXZ+ðgY8ðywZ` �’c �+ð �`ð XXW¬1 úW^]^Ïz"÷bW]ú@WóýÓZVVXtàÝ@Jk"bW\ú@ç\à![y<¨"#ZZeò.#Y)X÷�ÿWá�ÿÚ@Ñ0&Ú@ìg)Ȱþé…)a°þþ#W\V`uX³¦"[_­"½¹W[^[Y@ ýØÅY^YMð[Ù ’°ß&\Zå×Ó%\Ü ù&XZ) Ò îW+pæà$pÿbV^[`fT"3Z)0-5]61«»<5X)0 -5\%\)0W6(1W661ÕW6Y)0³$V[Å^­"à ×0•0]`Ef®!Ÿ6`0®!à ~¤ðbVY^ubÁŸoAÇ2X?u[ Ô0Ä5ìc á1pç6\u^¶Î2nÕ6\^à2 Öæ7\^ò3ù7[uµ\Î2 G[\à2 Öæ7[\ò3ù7ZuŽËÁ Gùàá1 èæ7 à2ù7Yu_RÎ2 @¤FYÎ2 GkY_à2æ7Y_ò3­Ô7YYà2ÙHYªò3æ7XtD´GX:Ì4 GXl]‰Bù0":VXÔBIX‡CX™D‘Ô7F á1Xñ4êæ7WD ´GWu[ÒÎ2 ¸YÍ3 GWušÎ2 ÞXl^ùBIWW#l[hRiURù0¢2$øQá1hC¥X)DMÔ7W[ó3¥X[ò3I\hß3¥Xñ4\hbD¥XVò3 Ô0ÇpÇ1—Vu\C @Îf[UWÎ2ßiZuCßiYÀCßiÊÂ�PzÍ3-´GVuìc @Œpÿa{W[l3�W²]qVuãex‡l dp·�kropFdwXl ’x`p‚wåXnqdpYtWl”gfuW~p‚wÂa½dpL"ôóu¿˜–þóÜÐÄÿ¬ŒlLÿ, ðËûÁ1€¦•„ÿsf[Mÿ?0"ÿøæØÿʺ¬žÿ�|k^ÿPE:/þW ýïÿàÑõ¿§™Šinÿ`QB3ï(uþðûâ{Ƹ­ÿšŒ~pÿbTF;ÿ-ÿøêÜÎÿÀ²¤–ÿˆ}oaÿSE7)ÿ üíÿßÑõ¿§˜‰Ïkÿ\N@2þÛëAû,Xñd]Z[kOpØÄòû€Zÿ€Õ –Yÿ€ •Y]ªÿ€ –\ÿ€ –ZÏ`t �X°d]×XZ^ÿ€I—Y`èŒ�I–'’I–X^lTö�v—\��•W‘Í”–Xk½p¢˜pU”–W¬�¾˜p0þJ”WWXapXÚ�€ðÄ‘W`å�Ú—¥V��Ú�ø‚VS‘ ´¦(‘ ¤\_ ‘ ”$§E� $¦YE‘@¨dû$¥^VkwùÚ�g°d\]Ë·&£\q’$¥[Z¢¬�ƒ¨‘�ƒ¦XE�Jƒ¦Vÿ€$¥R’$¥î'�tɦ\ki'ÖÊ¥‘å m¢WYu¥Xþ�奫XWc� ¶Vc� ®ó¥Xu¥VI¡ êå¥V¶¡ å¤[_[P<¡O¶D’O¶Xc�O¶ŸVliy·á yó¡ó¤[_ u¤W[^^Ó Oµ^Ò¡Q³¸¸ ³¶\Ó ϸgp³¶X±Õ´µ‘Wá¡ù¶�±ù°�²^Ó u L‘[C0ldÃù°#Åÿ�/Éd¥ ùµ]’ùµ[S‘ t[Æ(‘ /Å[Y_ÿ€- ùµZ_á †ÆS‘­ùµY^X ¢Æ]ºá /ÅY\`á .¾Éd¢ÆZ‘±ùµ«X\X êÆZX ÅW u �²äÐÔßZ^¸Ô[]ÕZ u¤Z"²ÙæàúdZ¿‰ý¡1dZVY]\� éZØ»áiÙæ`@iÐø�XZ\ïk}3dXYÒS‘æàì‘XÖÑlw[™ÕVZ•зÖÅX•Ð æà×0ËÑ[WXgs¿v£�W^\^�™ÔìÐ\T*�óÖ[ýÐ çWƒÀ\æàL‘W\] ‘óÕ¿Ò,æÎÑæàm¡Üüu úw daû¡2uX[xVŸ^mhæàcæ\zmàqæXxWXmà•‚éVmàæàSoê‘`Rgl`þïfw`mbrsÿrm}ofuvÿiffw GWÕàÕà¼äÕÃí Õàáíuÿurd\ooeÕàþíóX[ð) ý)øVð 9ý ÷EW4ñ YýiøTñÕàýïbjubxjÿw jaoYW _X fíbE!ÑܲõU ½ðïa`/vjbv§ö ±ðúõ_ù0þôsr ™ú€—€ñâÓþ €µ¦—ˆ¿yj[€=ÿ.ÿñâÓÁÿ°¡’ƒÿteVEÿ4& ÿúëÜÍÿ¾¯ ‘ÿƒufWÿI;-ÿõçÿÙ˽¯ÿ ‘‚uûaw€D/ÿýíÝÿлªšÿ�gZÿM@3"þ¥€ÿîÝÌ¿»ª™¹€uÿbO=0ûË€ÿêÙÿɽª›¿Œ€lã€Mÿ<, ß8@èqpÂuÏ?Mõpì‘hX,ò���Üê“hÌÐÉ  [ÑfmäÌÐ#± L‘f_vËrmœ0ZúA`W�_] IÎ`@W`XpS$дð@ õÿ@Åà‘ I>|l^]IÄ0c’jpâÐyºì‘b6Âs )b+Y]R IÊc±$ÐNÑÍ ¶YE]‘ Y!¡jŽïsyÖÑ0WYVbj� š0ÿV[bbkWU <&VF% O(WH#9 Æ40^bbU�u(UZ�!u'Y€"—(Xm ‚�u'W]�!u'KV_�!Ê(€" ü-"Ò Zmb{o¡Ê(÷ »�Ê(Y 1ýÛLÓbZXù8áò&0W\ ˜/5X :7_ :0üœð31VVsÿjbrmrhýpø�[2 ýp04UÐ]·aX[C׈[ÑŽ1S ׎1cŒìŽ1 ¶Ž0‚ˆIÑ1’YÑ1¡Ì$Ñ1y[Ñ`W" 4 ×AcìA# ¶@‘YEA²¡$EAy_‹\_€‘ 0rD�‘~~F^\at 0Vø�^Z(‘ œF\c�© œFþ� œFZc� 4œF¶¡ œEY[u±âF“W`@œEXq’œEW%]c� Vb‘ V±‰ V#±~D0³A°DV"è°œD]_QÉÚcU¶¡pPL’^]ÒÕ‘~W¶¡~V\^H±~Vý‚ ~V’ ºW¥Z�� ºW¡ ~U]’>R çV\RpU}¢¤f6‘pP[Ñ]r°d©j�‘!gV,b~U[K^X��CgÕ‘Cf%]�Áag€‘ag6‘“Ùbfþ�Ž`$c]¹�C0Ž`ÖѤa9Àƒ1 Žf\�ÁŽfŽÀ�Ïg¥BÏg[ÅQŽ`ì’õ` ÏgMa x‚ÁÏgÕ‘ Žf¡Ò9wq’9w ‘I9wî¡9w¶¡Žfb’„xº‘„w[mè°¢x��I•ÿÀÖ‘Àwî¢ôÀwÕ‘�ž%þôógüšú˜ðáÒÿ²¢’ÿ‚rfWÿG7'ÿ úêÛÿ̽®¢ÿ–†znÿaSC5ÿ' ýÿæØÊ½úSŸWvgXþa>2'ÿ üðÕïÅ·yŒ€ÿth\Pî…8+‰éÿÓ½¨“ÿ~iT?ÿ)ýèïÔÀ·”zÿfR<(½‘p´�߀eÿP;&ÿüAèìQêìO÷SÚmsX½X@YdfVú ó‡ÙïƒVYbdúù�þŒaVZVÝþ‹`aV60†þÿ‰XdgY^[ þŠXd½ÐwÐþŠó�êM‘ þ€ í€mfpÿlf}vfwÿofwujbç_sÊáÐàÆT~�Ž•]—–¡�"¥œ«jo˜�jæà^—– ²¡�#Ê�Ú•WV—– è¡�\§–^Uñ#ý¥˜] YX!«ñ ) ©4ñõ ) W© \Z[Xð°*«[9¢ù¡�„«W\Z?¬Zð±«Yðq� ì�Ȧ ^Ç�ª*«Y9¢—¬Y§¢¬? ,©X4ñÕ¬W"¼¡ ) /º|¡¡�/ºÒTñ A½å¡V½ ZW €½ ; ê¬UW§¢—¬W&²� ü»à§–V[V oWX][¡�¶´ðmkC0–;2mí`uÑõ{2m`Z*vÐ ÅXTÐ Àõ±ør�BP'`lkV8ç0þ°4ÃY=Ä�÷N²òlYV[gYVźðõWÄòw0íÚà5ÀXaufÿdam`blç tËñÀX[Zv‚Çå>ÒlWV‚ÀC¤ÀªÐªÀ†Ã¤Àý¨Â`vvruwûfdèàmrxuvs¤À´ðjsX:нáòisl~«`D.>ÒhgX­Á ²ÃüÀ2†Ã ¤À*ÐhgL ÝÃhY[^ ‹ÓnåÀ ×ágvå°¿XVµ8ÔZZ@ÑEÖYYAÐ EжïgoO1HŒÒg}bÀdßrÓÎb�d~ЪÐgWÿ\_X[[¦åÓgV£Ð®ð´êÂfs|\[ºm2ÿfm\__W)'qÒ½ÐZú€¾€ºÓÿVYX<é _¸Ôîõ`[ êÖX_Z[ÓÕZ_C0 ÅÕ‹Z]ú€âÐ ãÍÐñæÐü(áY]``æW\«`ÅЭÑÏm da‘à2ÂfZß\|bnfWÏ_Y+ÐüzgÛbYMbÞowW�YѲò‰àL î7Òdv]Ó s<ƒàžå^sªè& }ªè\sÝ Ê¢áVÂ×à=o\¥\³Açç#QçåZù^µR×äoXY^mú¦@ ÷Xmku $úÑ@çåÞA×àp¿iX[·h¤Œp×äfð\–oöV_÷iòJ÷]÷yòçäŸhZWYaé ¿õXkXW?`oõXW½×à°$ôsb¿ß›€™þ€ëÖÁ¬û—€mXCÿ.ïÿÚŰ›þ7€q\G2ÿóޯɴW€Š[`ÿNB6*ÿëÿÖÁ¬—þ}mXC.ÿïÞÿͼ«™ÿ‡taOÿ=/!¿úë±ÎÿÁ´¦›ÿ�‚xgÿYC,û¿€ïÚÅÿ°œ‡rÿ]H3ï ôûð=®ì€oX]1 ^B0V?sbß‘Òádgàá, ÒVXZW[ñƒà ÒDMЃàÏMІѧb Ú X$A JÛ _ñQ r�Û W,I �²ðƒà>x oX\mv² ¶ Hƒà- âhå܃àþ oX[gX{:$`X ä�À A^0vb`mf ù!#($™ o0oXj "ÀáýÞVV[VuÞ\àÐm%G#W_[PT ºÐo60[#Y㈠r"N X4T !WÒ o ¤#ÐPÑo r@§ V��L“%Ã!ˆ ¾$m é Ê', Ê'if݈%V“$V[QW]ÁT 2Z,ÁT þðw|jb`¿vfò,5Xê53<0.1ubvŸvjZW(ÐN7iúY4 <5iuuY?ZYY €î{4î]0NÞdvª‘3 ˜7W[2˜6i’‘3 º7³3 ˜0ì�wÎñ€\^W@c�ˆ¾Ý7Z]Ydd8‘ \þ„ø3Xaaù�Kt6�$�JWddM‘Mñ8XXþ1$�HJÖð`ë2ñ8ô†oI’ •„L"’H3– $®JJ”„J_”ñ0±`Èâ1J�b‘ñ0õ±wWÏ[>ÂPZ VY Và VGW PðBr–ñ4ìøæ0XoùB”¾OVZ]Zpg“»“cYYlf#‘Bw[d7�vÀwZZTbZ—WlgÁMXÁQfu[c� Ë[dgZ!À• à\fÁbXõ@p¥wÁMXasÛQ ´lïR kogÁ Ö jWdÂbXW[ oQ$‘sk…PQÀwXô�Ò"’�j÷DsiVYÙpùCÇklfN ÈÇjA`ÁMXH�ogJÛQ {lCcñklb‘bTð�ç6þˆü6$=˜FZz(Doz=DI þˆPF®z÷D®zzgDþ€BôónûœýšÀ«–ÿ�lWB÷-ðÜÿÈ·¥“ý‚+`K6ÿ"ùåÙÍÁµW€ßˆrea€NýDg€  ú÷çÔYµ£ÿ‘~l`ÿNA3%ÿ øåÿ×ȸ¦ÿ‘n\ýI£€1$ÿòãÓÿÅ·¬œÿŒ|l\÷L<§ÿöêÞÿÒÆº®ÿ �…yÿmaUGÿ;+ Ýûõð@Aè`òs[ÿ\V^x` ©41âî‚\ô€ øˆZ*ô€ øˆYô€ø€õ°sZXY ¥qÒäY�¥ÑT +‘XV^a„âH�… N–ž ðN–z N�ÐsWa÷5ê‚W[[o¿VY[”"sÿWY{i �V&ÂsW„ N”WPã`¨•‰P³•V_Ý¿–Y¿–X�¿–WN�7‘V[]VlÐàG"s“:iÀý˜Wý�ë�¿Y^_^X é½£WY_]„ ý#ØâsV\^]y[¤�)¥VZ\V'лèJ©\Y¦YçVY\6 Y¦X]W:]0yª\Y Пrs^éÀ§Àr×rZW¿qð¸Òrr?Y]bv² ë€ýr†Ðb_[û@½!rWYVaïpW À£pwjÛr| ÁãnÂpa¿X_eøpÿ`m}vw`dÿ`swru uþÿ²pYsurû—¦ÁpYmja'W°h pŒà°þQ1wbZxl]�l€p ï=°X‹xXD±I°ß=°WµxD±I·WVf² üI°Ïvw\X`sÿsmvw W|[àðvufgV ïwáØâov_¤àÊð ¥°¾!v?Ð/~wqÒoLÐÊðù ¥°Q1s`mXXCzWo¥°Ùµ`Fù ¥°€!sZ ©þG#sVZgs Ô¥°ÃXÀÆWgg|¥°!oYë�û0"ÿÿíÛßÉ·¥5vÿgWG7ÿ'êÿÝÐĹÿ­¢–Šÿ~rf[ÿSE:#ý aôâÓÿ±£“ƒsbV}ÿ?1&ÿ þïãÿÕ»­¢ÿ—…veÿWE6%ÿôåÿÖǸ©š‹|m³ÿO@1ÿñÜÇÿ²ž‰tÿ_J5 ÿ \�â?èÿ�Âu?òöág[X_ÿbVYYXls $±ý†XXY �i �‘ "›W[‘©7�‘ LœV‘Ôa�‘"�ü…aWÛ[[‘¤ú‡aW·WVZ �¥ –V5¾à]‘%–¾‘Š“É�¸—� ‘ÒÉšWO@ �ô›XX䯒É� ü�óÐ^V' ' ¦ë  -¨®¡ÑdA#£ªÀK¨XV'L§0i¨@@•i§V) -§Úq$–¨ÂЇ¨ªÀ‡¨e I‡¨0 ‡¨@@ i þŽ‘V~VWf___|__Þ±ÿaY \g`~磖 ±vv ±›£ WX ±#¤EA(²´#°°X ±|³J°´#³X*´°5°i±ú´#°aWußmü†²^sÇ ²;0F¡÷ˆ°ZYiÿZZWhW|»];PŸ›³Z\gm‡¯ÑÄDZvp†L¢È°7 `Qаų7¡аƲWZܰü´À Ü°ž‡±Ws¨°�±Wå F¡¨°‡±Vvó£Ñ1ÀXX ¼£Á<ÁÃÐCÀ°�ÐUPW u öt@ÔTÄ `ÆojÀuA pÊa `À�± ³³Œ–À´šža•À;µˆ¯Àß±*´r³ÆÁ´|¯ÀcÁb_V e ßˆ° “°à‘n�VðÐÔ‡ü¬ ÿÃMÐYŸVY]Ї°ßosµì²dûv/PPÏaå@mP~uo\¯Ò~u @… SÕX£@_Ö“ SÕWàS@wÖîÀSÐKÑ\^û"TÓ\WW¼šÐKÑ[^šÔ[²¢ÐšÐè~VÚq “�¿Ô0 ÊÐX|ÿ|jvsbWWÿWviffw¿IðÐòðÐðЕ |WV_sYPÿÓ\YPîu@{o[­�zpS 3¿bâY à $èUX à $èW à$àîî {oY`zqKdBZà`zcæÎOpzcà—{hÿ_ [op`w7<�1{hä0‹ã«;“åVŠä¤åWU^Šä¶æ\Šä¶æµ[Šä’åWYŠä\’à„âWV Œâ’àþ P{\]YV[»àR{Z^.Qlð• {X–ÐŽ‚bÌ1ðÐ ôƒ‘W E÷VSø@ÀSø÷Àzóz>A`0 R�zNq`‹ðEvú9  ñ“ þu@zvW`bsV°®Ð€î ÆðVb¡d€€ñuô÷ Ùïp»Xôs]ÒõpŸú€�€ëÖÁþ€˜„oZÿF2 ÿõà˶ÿ¡�yfÿS@-ÿôáÓÿÅ·¦•¿�mYc€1ÿ õáûÍm¥‘}¾yUA-‹€»ñ‰Éµ‘�ûy£€Q=)ÿíÙûÅ«�‰uÿaM9%ÿýéÕÿ®š†ïr^á€6"?úæûðŽ‘ÿ]fZYfrWX†ÿ¡ßÂ!Ä�ÿ¡þÓa_XfWW]¶ÿ¡“èVXÞ[¢ÿ¡°þÌ`ß]VfV[ÍÝ„$7á7Ìf7[[Çõ =Œ“Èz( ÿ¡ ‡óv,šñxV\ÿ¡¯&/ZWiaÓÊ�Ý@½ÖÞ êÌ >Ó[~_^kZ`ÑÝ'f][ "àÔ'($:&Wú¦ ä®$|\\û¥b'VJû¥b&Xô• :%J’"W• ž*» ²+YY–ž&V\%&%ïu[Vkü¤Ö®#sYZû¥:%skYXû¥%sYú¦½:%p^Yiü¤Ýt4p^XI5 …ÖS5\ZI5R6\WªI5R6Wp6R5oëZ\I5 [oXÁ]56¶9Pp�2¶6WYZû¥¶6V_û¥ò75^û¥¶5lVÀ2I0{¶5i[Wkª$=5iZ[k1À½è&%J@Þû[iYu_©%%iWZME%5f ª$¶5Ûš«# %b^l")A (¶5•7[g´CVâF[XME5`7@*ND VZV&%òÑjE#• %`VˆB[ž1 Vù ö7±[W{ws€Ðœð…X[òý€l"7¡´�§T¿ ²Vl`ó´�²X[\V;kYÂ�kŸ�ÑWî­�káYW\^rðPôZ kôZËYYðPôZ k-ôZW[ðP@kïQ£ñ£ÿƒ`r‘Ÿ�ii"‘Ÿ™À‘‘´—paÒ0“£k„“£j[X%Xš‘zj£ zj'`" � Žjzà‘´�ig£ zjM`3‘Žj ‘Q£j ‘3{Vš‘éq|¯‘ ŽjV\^‚‘ "›UtÉ—¸s‘ æ"›YYlr"�‚ýôóeí õ žìØÿİœˆÿt`L8ÿ$üèÿÔÀ¬˜÷„u-WHÿ9* ÿþïã×ÿȹ©šÿŒ~jVÿB.ÿòÞʶÿ¢ŽzfÿR>*ÿîÚÆÿ²žŠzßndU�, úê‹ÿÈ·¦•߃q_™;÷+Ï€õãÝØ§¬™­{ßkYGã€#÷ÿûp@è\ç�ÖAî�5°[]X÷YZv\ào�ý܇X[_o«°îˆXú€ ìŠXOWoþ‹è€þ‰Î¸ðoì‰vÁ ,ì€cÀ[]xÄ`À‡°[WX–±Þ‰PV[Y Ò±ˆt—z�롆�á�y‘W´‘“d¡ ™—V]¥–˜†�k‘Að ^ÿƒÇ`{ÿV_\\;Ü3²Ö–[âœZâœYâ�[‘ד_] µÒ˜\kðû xÑ™[]\>(ª[][L¬Ù°âL¬X8 ”R@¥Xü( …§Y^öΕ©]: –¨Z=¤ªXZ¤ §÷X¤ªW^ ŒµªÀ÷Ø©=Ф¥Vÿaj`}ú: Þ€sX[Y¹X¹°º´Äe±ZÿsWufdïêF°oüQ°Ó°ZluYüQ°cÀZdhufÏfp Q°ÂZ[ûW^çÀZZ][o &ˆ}µÛ` �‹»Î~po ‹ºzà\oK ‹¹a±`ð‹´ÿW[^^o]ZÃ]]×àÃpÞ·¬°^wK ï¹mÚ`ë° ï¹k^Z]\ìÐÛ¹#ÁÁ[ûà+ËÕ°�à+ËWVÒë°SÍ'ÀÛ¹f[Jé² ï¹dè°'À�ËÂ�Ëý²Û¹ÃÁë°‘�Êàÿ°ßÍë° h�Ê„°ë°ÛXXÿ°‘ ï¹—±ë°/ÛaÂÂï¹aLÀSÑ‹°§PZVlXZ ¦³RqѼPypE°Y{ZÅÑóY’�ÒVVvq–ЊÓ~pV¦ØÒ‚�–Ð^°Y’ð“kÆÓ'ðÐЊÑvv½Ó2ˆÓkXwð·³Sk_`¹úЊÑg_…ð1 câ âlàçõÑ™æ�Ò 6ç‚� Dæ¯Ò SèçÑDàÂö(‰û 8:$ŒàX&¬™åª8 À3]¾8Ò8Õæç0jð–š"Hi_Æõ –‡i_¥û-ñV%\Í9ö_GÓrBàaúÌÓ›AD ‰û͉úÓÍé ÅùâÓNýôs^ãõ¡€Ÿ€îÜÿʸ¦”ß‚p^€=ÿ.î÷ØÂ'€–€ÿjT>(ÿüæÐý¼I€“}gÿQ;%ÿùãÍ·ÿ¡‹u_ÿI;'ÿÿë×Ãÿ¯›�ƒÿq]K9ÿ%íÿÛɵ£ÿ‘m[ÿI7%ÿïÝËÿ¹¨–„ÿr`N=+õûð÷˜AõpŽA2ö² Ý€\]i\{\w >Ü�ÌÖEñâ XÊâZÛ“ xâ…P[|&§ î M­ âZ_ÿâa7ZZwâ*‹ŸZY|ƒ$$ƒGƒîÊöàËâ`:À?Dï&�%ð$&$)$ $)GI $)îZ*$&õ[iâ\ZXZ=`!àVngb–#=W�ðdW¢ “$ŸYh|W^² ¶'Xª›# ¢'X­!V² j¶'WÁ# ¶&W^›#Q ¢& 0R�^² 7%]Á#7š$7¬!’ 27À$¢ ^°\ë[sÈÀµq5h }´£#[pWVh®4³ä·2Ž0V]“5]ã�4oW^“5œ5ô@“5œ5iV[h"zTœ5Dðã5œ5Ö@"ã5°5vPã5°0nЋ\VÈRpœ‘¹à[ögqVê@ ”Z8EVAG•ME^@HU LF^VHLF]@H© ŽGVHLF\@HºGVHLF[@HèEzVHLFZ[|CE©WVHLFY@HT>WVH LFW@HjWâVH L@v‘T@Wd_V`Z–�yÐz°œSÉP¨¤Q�€8C^UIbE^€�BÙ@÷BÓ[ UÓV—I"ÿWX_XÿWÝX+kŽUÓVÙBáTWkDEÓVR‚áTƒkpEÓV1RáTˆÓV]RáTÓV‰RáT,ÛkDDb@ b@E°w[]vb�h h�ra‘huÖ�d�yh�Ý„\v[V ‘Bþ‡\÷€T‘KzS‘ þ‡¥[Ds oyR’ þ‰]rFqþ‰=°oþ‰ZErþ‰Z]ú€ ì‰îŸÐoþ€ þóôZߢҠ Só)ÿÿêÕ÷À«+�lÿWC.ïÚÅ3�ÿ›†q^÷K8MÿôèÓ¾ÿ©”jÿU@+÷ìm­ý˜wnYD/ð‰ÿƱœ‡ÿr]H3ÿ ôßÿʵ ‹ÿvaL7w! ¿ßTÏÿìQ@2¿{î?d]›‘^íX°ÀkôÐXp�WžMBÒƒ�V­WÝ��ãŠXÛƒÔâ‹Ú„ø€Ð�Z_ÿZhW\^Yßlp&™Z]Z4‘9›YY4‘9›WWVZ5�9™`1�¿XooyšZè`X°�›Y5°o�›XX4‘x›Ô°‰�­�›W[4‘x›WU[ˆ‘ áœV4‘öœ@A ˆ°�–5°„‘s‘ 5­,I’J«Z]s‘ _­^’J«YYs‘‰­Ç’J«‹XXs‘³­ñ’J«Wa[s’Ý­¢ò¬V[5�I ½s‘½4‘¢ L'“ë�Y\€°°›%•ÖO²Z]V± [»YYZV± [»XXV±[» W[V±š¼ñ€u�[º 1•œÅ¼XB±Ä»G”Ù»›‘lÄ»\”Ù»°‘‡lĻŔٻڑlÃÄ»ï”Ù»¡l� lÌr“�Ì£«Íé± ø[°ÇÐdÐ[ fÎ×ÄZ áÀÓ^XÿWWZu`Zãø€™PóÁWfsbéÁÿÍY ÝwX %ÝW8ÝtP$“]ã`^vB¢Wk^ÝYoÐÙ³èd×ЈÛZ—@k œsÛm¡k²ÝƒÑÔ�Ýé± ˆÛYGPk9 sÛ—¡kí4‘Ù°¥ ÷×XG ˆÛÜÀRoÐsÛeà ˆÛWï@çksÛë¡k$ƒí4‘níé±­ì 'k˜ìQ­ì°çk˜ìr�kTý4‘ ˆÙ[ÍÄÙ°}bÐVXr·#ß]~YWw¼1®%~X_Vó]öVUZVó o÷YVó %´�0Vó“öV^VóŠâ] %¿ñîôÉú~ ~þôsfì£ú€¡€êÔ¾û¨?ð�~lÿZF6"ÿóæþ%€È¼°¢ÿ”ˆ|pûe1€K?2ÿ%ñÒÿµ˜pSÿ6* þU€á˸ªÿž’†yÿl_G9þi€úÿëË¿³¿§›�y€wÿfTB0ÿ$ öÿÑ­‰eÿ@úÖÿ´¨œ�ÿ„xk_ÿRF9-ÿ ùöûð¥Å€ázjÿaaZV[aó S€Ýêþr1`|W\ëäþ0òYçãÜöX`9 ó{\X®0{[\{¿[\7zŸ__{3F}?]V{LPQ?OZ[@MGÐñ}P}W_ú ôwwfu}ÿirmdfuZÿ|bvp`s¼©´�}¥V­``· ÃÇX|d·ç÷¶Õà -XØ{jÿufmf`dv# Ã=&¸ R-°ùWü®w`hv-†#¶�' --†#C+ñš 9@Ébi`u¿hfuñwo^[ w^"Ðî6W w[Zÿv¼3 4b+0 ^/7`+0 3®$0 +0 S5Z÷_ 5Z^ Žp6]p6<p6Y»p6Xp6Wë ôvlfÿwgruhs®ipibK põ ëƒq`žpVZ¯ òv�0œ jÐ{3jЙqzà +@`wuxX¥PUDÖp�&@Abrdfsujp©í!�vuZYvO ëNEb YGÇ` Y@óS@øsF©0ç4uW^üY@Apviff÷ ç˜Q`p^ÿVo\ _Yç ;å"¬CWW ·_[–`Ÿ§DZ/XoZ³A ¸@'�ÞÔAWo[ÇC e¼âF¯@_ _XÊ@üö@óoY[:ªñoÝÀPômÿmfpdsm`ÿvwlf}\oo�%]*5S[aó $td|ZZ; XX X‹  p\ pêð$Y80”ÕÀ”á®Çap£Ð${_ 81Ô;àÔb@îcà-ì%z\� Û0>!`vo !�> \v`&5�…&[t°?'sÐ?'` &80 f'6�f'—� [w_…�&êðD�%0¥&¨p$wG!½&81Ê'`ip¾%÷tä'càëå&`þ&XO� 7™à 7/ þ '!FC‘'B80/A@0~Jpdg[^]W¤`ö`ÅãAdat[÷VV-pVsgW~Z_4°þ Nx3[�5«° þ jU`dnà$]Zo!ªþ$]aA �4\nà ˆ¾6Òð¾6V}@¿4àîâ6^â6]ľ5@°¾5^±F^ÝF]F\£êE0 BD[PÐB@i0Å›-bdZ*]ÀBDZ‹ sF~0¸sFŠ0sFZ sFYû BDYpm­RbdX¬1 ZDXʹ1 ÈFW°�ÕG`•ÈEYM°BDÑ8üF@üF[üFѸüFêpüFVüEVïYéEUX(PV)`PTW  hUz ÝtV^tV]qtV~ÀtV[ tV mtVCðhUéð PP'!Ylo»@ô×U@ÐBãVklÞðWgkðWdgóðP<‘}^_-PSb}» PP‘?}]Ws&f¨pž2fVs&fO ZPP2d|Yi�igwaig`r¤k|W{ ¦�‘eªŒ  ¦�¡d{» êà”{G` ¾fVž¾e\_ ¾e«@€âfÑâfêpâfAPà”sz4±žuY�S“ÿoV\V\ý,t[V[ ß},tZVZ FvuYLPFtfV^ð8tfV]2ñ8p‘ÞzðZE½òb_ŸXZiÈÐ’\ÂN�E–€±‰‘©sa{§s,–„‘ � à�<“‰PR•�{Þ ú ôó€_¦¤ýó ÙÌÀÿ´¨œŽ{mZL!ÿ,öÿäÒÀ®ÿœŠxfÿ\OB7ý+M ûéÿ×ų¡ÿ•‰}qÿeYMAÿ5)ÿøìàÿÔȼ¯ÿ£–Š}ÿqeYLý@�$ ÿþðãÖÿʾ²¦ÿ™��ußi]QÁ9ÿ-! ÿýæØÊÿ¼®¢–ÿŠ}ncVJ>3íÿúÿïßÑÃÿª’„xÿl`O?ÿ0R, P÷OWEIðjmYVÿam`blæý¡jmXVufåd С#‘amxEfèÀHñ2“‘�þ��jgvöÝO”uY–jyY�¶�j[\]šÀßÝu’Z[¿Whuf}l1oN}�ƒ–’i0Ÿo_s”ˆ�‘ �t‘%“,”D•l�MÀi{­�âÞ’uvGÀáVÂigf'ðÞç”dvò”[ggfç”ö éXòíiFÀ ŽõÂiYvWvò”X   .ß iXW + ß‘ÏXW +  °i—gfã�ç�ß hm}αñ•¢h}œ Ýw¦Yw¦Xkð²¢h?s9r”¡ Oq©¤Z«Pª`âà+r½¢5pÅ …ðhZVÿW]WXZ×^zd)°VhBg}�_V› í¢¹ Þö¥[X¶W]¶Vö¤|•ð�&¶[ &µ«° N>¶V &µŸ@ V¶V &µX#`ö¤ q¹› ™°g{Wí°ôzµÑðö¤w_XýÕógv\VÖö¤vXAPS‡³vWŸ]{¼¦rɱs³ÕðvÀguʰ`·»Ñ³u_ àØë°í¡ò°ë¶Xs#¾`î³ë@› ®ÀªÁ XPö¤uò V†´uW4pø´t¹ µ«´tº�ï÷£tÏXY^À‰±sWúÀ«´__^ ýU‡³__Zv ET÷£_.±�À†Â\ŒÀE�Å\Ç`�ÅPp ƒÀªí¡^``^Ä^Þ`ôÍÅÛpjÄ[[Vf÷¿÷£Z_Z•^ÄZ``þÅÞ` ÞþÅ[_ Ö^é þÅfÀ .ÖX Ž.ÖW.Öƒ°^ÄYR{@^Õ‡p^ÄXÐqvÖmpjÄX[\Þå^ÀŽ×'ðîkŽÕZH ®ÐQ®ÐµÔð®ÐÄ×Ê'ð ®ÐÄÖ: R®Ð è×'ð ®Ð ®Ðæí¡W_#` æ^¬®Ð>ðgW'@T¼Bgm0z hѳm0p z<àá3P1ÿgV]ZdVZ]mZûPUçYYaàµeåX\àXXaàzeåW\âYl ‰ëoXl ‰éXX—ài ­ë©à ‰éW[©à•ÑêVaàãë—à äãë©àeàIðfb~2pW\t =³rÉfŸp;1Wð' f[û]^v°Î.=òYVX©“°“Móhå�Hôy�Y©“^[ôžpñSZñ¡– ãd|§°•õö0N¡ö]ÄÓ_Ëp¹öÊp¹ö]ø¹ö—н$„ôsd¿í §€¥þ€ñÜDzÿ�ƒnVÿA)÷ûß5°˜€ú9€QI$úÿåо¬ÿ–„n\ÿF4 ÿöäϺ¯¥‘ƒ€i—Dÿ3"ÿôâÔÆ¿µ£“«€qï\JÃ&ÿóáÏÿ½«™‡ûu×€QF;ï0%ïÿóäÕÇ¿¹«��þ mcYIÿ:'ÿíf2A2ÿÃõ(AdWÿamoZWsý\n0vsw àYIñà`^ç îwW[Wé/ðçYW`#ðé.È!XP'/�mbß]mfpV�9Kám/°ÆH¡PPœ­PPZ P' mÿY[ ^Æ(9rtCÀÅ}[^0}ÜûÀŠYŠXñ Š*uW\Ü|ÅZÑXÑAP|I7ÐPCдPœ0mÐPFQ¢mÜ%]0%#°PQ0ÿmVYupXuÑ\ìA"XG% ¤TTâV"WJ" b%Wk!õ`L b$&d\Y—ZX 4qóÐpÞ ¿d\\Y] dPê˜)\¥!˜'YZZ:(Á¼,W˜ *ÎÃ"Y¼)’ [òð+% ï,'p<)Pêï,W€b1mVÿ[VX_XVÏWt*ð/�l\7oo'‘sfâd2R“n0a1Zf4n4ì‡1“ròlYsßmxvol/`SþÖQlY[g`~[¤+rlX»2Á0~q1X[vm¼1G›¤2Ö1Û2á0¾a1WswvbLPÛø\AkYbAˆþ=“oaxvwujÏs3ò@r`ÍuÚP KPá¶ÝjoKPV L@hß}qDEVZäÛQA VEh0wf|K[ °jMº�V@øL0p@å]h} «shóДG\ŸD §I[ŸD§@Vàp@ª�û] ©`rþÕE\ h`vlf�wñ™"éEÍÊãI[ðEùIË[‘ãId@òCùIaAÕãIYðEùIY ¯WYãIXðEÊùIXêã@ÔFW Ò›°ã@•CZÆG T¨EÆPZŸDÒYYŸDyÒV^@_ W_QAy ’F^@^ W^QAñ V@‚‘b\ X\7Wh}6`iQêQA V@Bifoÿj ugj ¶Q(g½P}QA&iî-QmxhŸ@ µþW-QQA Si-Qcf� miZ XdAQA&iaA•d �`VfaAcf mi}Q•d �i}QQA�&iX X�Pbˆi¥QQASi¥Qcf Pm`ÿV·QQAiVù QA[€”D6à³EÒV6àRÈEÒP ’Y&’<�ïpô󯨦íÿÙν°ÿ£•‰}ÿj\RDÿ6*ÿúîäÿÙÍÁµÿªŸ�‚ÿrbVFÿ6+ÿìÜË¿»œ{AaÿTG:-ÿ ùÿïáÒÅ¿¸«žW„ÿwj]PÿC6,ÿøëÿÞÑĸÿ¬ž’†ÿzncVÿI=/!þƒûíÞÿʶ¢“ÿ„xl`ïTH�.!ÿúäÿÚμ­ÿ¡”†uÿcTE7ÿ*ÍÌ÷\@t�vYXgßWb)0âvYÍVáÀ4¿’�VwÇv$�^ *‘sp÷m2—mmmI$�Vàv•Ð�Qy*ë¢V�V w ù w  ‘XXVdsó$�‘W]Vs3 w£‡‘ w 5‘÷W\d P®R’WX^Z”b”W�V] w Làî� üSàðvsbvv-X¢§@§@‘òÛ2Á0ê’W[dçuö”: Œ ö”Vƒ°Á“X0k�¥æµP z u}Yüw°w£uZil{uC£gkM¥yf¹@M¥XoM ¬!À@ÀV!0š“uº·PX†4DAtÿZVWY}o`%W¿°Ç�’¤Wš¢"°U£§V®¥š“tqóspGPt’s|\[Ÿuwº¬²à¡w$As{^ÍÐûE0âs{ZWpó ô Ý¡{YZßg�¶a±°ë¡° ô¥XïWu ô¤zWWgg°'àsh†ðmPN¢sh/P Q\´¹Ðg¶]g¶[óg°Ý¡hZ÷[[µZj™¶X§�ö¢hPág°´´°0¾·W8¾·´ g¶W[°Làj£Ag°g´ff°uO=âs=@Z g°ìô±k0ö¢Ystwg ÄYpsM°¾0Åmpg0Ålïog0Åkmg{WÆlg 0ÅŸhvg qÆmÀ ^qÆkg 0Åf`À½ ˜Æhg0ÅdÒÀ À-ðsðawY ´]Xß@ù 9ðLàr|¡®$Ârv^2¼çÆW£óÇ6ðóÅ]Ž@ Î ×V óÅ#ðѽ(Öû4Õ[2 µ„BGÑW,pOÖ—�NÐþàÀrlvrp}ÿoforu}ßd`w`mÑïxlÒwfÿosfu`wxu÷fvAjphg e8�ÑvbQ¸@Ô��Ñjb” x@«Ô~Ñ ;!î„Ñ÷Šð›¿,ÕN¢rÕr§QÊçÃpð[ö;ñraCã˜"er: íp9p|ÆAbWÑø©Ò)áW1b ºŒðp²Ð>�2ps;â†ðb Rç®°b @ÿpbwa Ë*PãbÅP �ˆ° «odËÀ°�ã^ûßvN¢oZ!0 \¤äàXЮæ—�®à�áY[© —àIoËÀc’o?XX{ sé¢I@ßZóéäW] óæV óäWãà} çäWW{ çà&<ðoW¶PðàÞ})ðV¢ 1ðÔáüàÛàqÿzW[afJþïwbwu`¿df6¢m¿w^W ¼é¢m¿uox‘JóuâQòWð@ˆðXXs¼¢–ñW�ðþÔ�mr{wruObið!rÝðCô‘¡àùè îés"Ð" îîýôsx õ©€§€òàÿÐij¢ÿ‘ƒufÿWK>1ÿ$ ýÿðãÖÉÿ¼¯¢–ÿŠ~qdÿN9%ÿúäκÿ¤�yeÿYM@3ÿ& ÿÿíàÓÆÿº®¢–ÿŠ}pcÿVI=1ÿ% þÿòæÚÌÿ¾°¢”ÿ…ueOý?¹€ÿÿïßÏÂÿ± �~ÿm\NAÿ3ÿõçÚÌÿ¿±¤–ÿ‰{n`ýSý€/!ÿ�Â@\û�â*wZmiŸmre}Ùæ@wZqvwo}b]à¿ âÿwYvos˜@89bïrdAb ü[5jor ¬@pMjV¬[‹ hX:r3@¥¥2W[À žpI ¬~¹‹Çr™[XW\&-2Woq @'!#' W [Ô�_wW[XÑðuýà9K&<Ðu Z(ÆPWu Z&WS# |(Ë\[V |(Ú@u±Z 1"cÑŒ©Òw'WY_d!í ¾&cÑ•Ì&^Æ"Ü(cÑJÌ&]Æ"ü(cÑÌ&å\Æ"8cÑòœàVYX(, ,2¿"v‹[¿"‹[p i3ýYps“_²‡1ln �7kÏlPÂ2‡1hk“«7a «0e‘|Ï\W<0Ê2[_“Ó5Ÿ <0‘{ó\^¦�ë6]`Þë6\` Ó4z\gZ Ez@È3¿w^X5õ“wõ]@ ë4w]Z`{ CFX` CFïV`CE\[`÷ì�“v_^}Ó4v^Z6@zB\  ƒE&A›FÈ ë4¿vX_]³G\;³G[³Eã �A>õ“á@ˆ°ÎÚGWè ÝCX_sÇ� T[WT¸�6Dv ¡Ž”u—@é:U³ ££vuZ»_èpX[€>ùXRaur{pâ`R fPÀPlSmxfz`RfYm`bl`R)fPURY[WfU¯P/huffuS»XqW‘|UÙQˆUÑY�V§UX[W=}T`‡V‘fU.bžU&`‘uEWô0vðTc@vó®W`\*DuÀÖ*Ds_ðÀ¹õ“sZ:&@TsY]là�eõY³ œfW_t©fØÀ¶g\ÃgüP6DsX__îêg]êg\Nêg[ êfžàœecW]üà�D2p 6@¾5‘pWhid8 a@r¢JsM�Sp ‘Kp ¸PÎbxmSpÔ‘lßVYVYY—�éh€uPà �y^_ à¬�pe‘h ˆ°ÒÊÒv/aXVlèq ípS‘ÌÄqœR #à ‘\Zz‘b�ô$ôólÿªý¨ñáÔÿƹ«���o]ÿ9'ÿôåÔÃß²¡�=nÿ]L:(ßõMÒÿÁ¯ŸŽÿ}kZHÿ6%ýòu€Ï¾¬÷šˆ…€fUÿD3"ßÿîÝ™»ÿª™ˆxýg³€E4"ßïÅ€Íÿ¼«›Š÷yjÇH:ý+Ï ûìÿÝн«ÿ›Œ}mÿ]N?0ÿÿdÿ)\éA,ßš™™?è¿!}]�_e"÷Í#ó€v"pü€L!ó€C1uü€Ž{\_Ò—<Ñ Ä—ñ ü„$�ž VY J˜Òð –^Ñ© j—<ÑJ–^T’èü€¬�#�YS"lpü€Zðž’’lü€Cv\Pè Ä�_WmW Ê–WÔ‘ù è v[ZXfúÀ‘¡wvZYX?ffYV\Ȱè•Þþ‘ ˆÌ“ZXõ\Õ� ¦WXaY  ù“WV¥'§/Vf ¤jj1 îI$aXZd!a¸ ”m¡Áàaü„a«W\‚¢w¥W%2aƒ˜¦c"Ãð©«þ öJ™¥Vq¡{àx¤Vå"wvÜ«aܦ€‘¢äàË ›‘°,סÜܦ€¢d ˤ`Z0…"yà2¸± 2¸q¢9 Ë ¿!`ZV‚£2¶¥V<³u¸N²†»`Óu¸q¢¨»`¡u¸Áàh`2µX³‘´â±Õ£Û¸q¢©õÜ·‚¢Æ[M³¤ Èq¢ È‚¢ ÆW%\=² SÈq¢ Àﳄ± =² uÉ_³uƱ²b{Å  ° uÅ ¤{«È³³«È‚¢Y«Æ°³«ÆXµÃ!Û• ¼Æc"vû°#Û&§Àô×´¢GÐ&ØØ GÛ?ÀGØMÃGÐh² Ó¢ÑXÖ�²§À GÖ¥Ó“ œØÕ£ ®Øq¢”®Ø‚¢GÕV‚‘Ø äó×M³XÕä£w{ ë1Ð裣è’£ŠŒÕVnÁwÄðåõµÌZ$rå}èÁàwŽëbŽë?À}æåZ±w ð“_VVÝWæ` aš’\p¿VWhWg›†Ë“\Ve@§ðóàäâV/W\hZîá ùíâ•÷V ó &ùíâÖöV[ ó J÷W`ròóà[Y{¹ps�3uñY |ø”5p|ôZ¦@Ÿñé U¦÷b 4b4w fs3Õó{Ø ôu_«€©€ýð €ÖǸÿ©šŽ~ýr¸XE7ÿ)ÿöêÝÐÿµ©�ÿ‘„xd÷VH=€,ÿñâÕÿÈ»©—ÿ…saOÿ>- ÿøçÖÄÿ² Ž|ÿjXG5Ý#}€Ëÿº¨–„ÿr`N=ÿ,öÿåÓÁ¯ÿžŒ{iÿXF5#ÿïÞÿÍ»ª˜ÿ†hUDÿ&?è{øu?÷ç€ïTL7�xm`…YÆsßp­�õØsïçó`vv÷ruw`brmrxuvòÅt ÕvßpÅpûÍsxl^[\TS!õ0ÈtZ~…žòl[^Yd ¥°ît[^X´‘`À¨š]±Ç°º|\Vi û ’Ñ:Á2 Üg@Ü«åµ�”°þ¥°Ü¡¶°þ³’t ÜPc!t@þ²ÜZ U¨Z±ºZÃEy&[2• þZ|<áà®,`úi%ÔÒ+@Ò ±&E�PÀÒ @µ"µ‘aÀÒ'æ ;M@ô'[[`²;9‚¢ ;92_<¥°;9 "ƒ<ǰÒ'Z££ô'�H… ¸9G2Ò',#Ü;RÏ ù¯&=$þ6Z¸$�L` þ0k#Z’÷ G:Ä G� WI_³þ6Y^´{G¦$I�IG2{G}4F„º@èÃK[`±I}2„±I "4EÓ F0Yð•9 UE1v[kðÜPvWVXF0hmë1ÿ!úÿìßÑÃÿ¶¨šˆÿzm`TÿH:-MOÿS OP AMP÷TFEÀ�zuXúhp¶é’zYX_Xö±p4gb~_Y‡ 7”F A�«Q~_W·M–ƱA�aa�I\OpZ—\ûðA�g—y[`‡˜d[–ç[£�j”Wsq°˜?£—W °—ïVs Ù˜d Σ—V £�8“Vù £�nq~^V`Ïgj£• >¥^V¡£•“]]… ¥]‘J¥Z›<¦Ymöðb¦`÷=¥Xmp{§‚{ L£X{¦ÏWm { j’]W²  { ¢]W¢ ²¡§`®¡K¤WÝp › •¦V´ð7“\3Woðø¤V `O“![ìÁ·v {¥ZV�}ð8*´è±{¥Y[]õðC¶ï[ÿrc~YZÇ\\·­�\·Zñ\·¢p\¶Y^ Ž�·Z �·Ëp\¶XçY \°8’YX½ \¶WXĶW£\¶!\µXá $ö¶X°ĵ1�ö¶ª •\µWá \°j’WcX`k ÄµÙ°þ7Å¢·¡PÀ,Ã1± PÀ(PÀGÃâ  PÀ^ÆPÝ �ÇZ �ÇY�ÇX�Çÿ PÆuVP�ÇVpÆ|ËppÄ}^_^Äç}\_ˆ ^Ä|_^wb×`pÄî ÐýÔ^^™(ÐÒ^]@`4Ö\Çs(Ö²P(ÖZq(ÖÖ�(ÖV 4ÕõZÆ` (ÕZ^ î‹Ö] ‹ÖWô(ÕÊp(Ô{Z_Ý»Ö^»ÕY\[4Ô{Ww »ÕOWYßÖ‘ ìÖgXßÖV�ücez °à«QzZ ÐQàÒQ1à` ½d>á*æ]”*æz`© åe° 7åXÐz‹ åXÿ�äØà• *äwá æV�4”åxÀäv[ÚÀ*äåv†ÑàvvYV_WY\WZÚÀŸò.åâW_Z³°ñànq_vW^VWñÀñà”ò òYq�ñàÕâW‰Zˆ ÆåW^ ÒåçÑä=öV�Ü4óW>Wôs[XcõÃÐqoö¢poöV cõïY] “ö[ lÜ«QsY—Àˆ¶S‹sX¤À¸÷J�¸ð~óasrblZ`ÿdxu`af`oo›ïp($ôs]u  ­€«€ÿóæÑ¼÷¨›€pÿcVI<ÿ/"ÿûïßÏ¿¯ �=€ßo^NG€0ÿ# þÿñä×Êÿ½°£–ÿ‰|obÿSD5&öæ�€ÿ²¢’}iT@™€ß þ£€âÿÔµ¨ÿ˜ˆxiÿYI9*ÿ úéÿØÇ¶¥ÿ”ƒre¿XK>è�þ��ñàϾÿ®ž�ƒÿwk[Kÿ;* ÿ�Âu?Þnp}{]^ÿ!³ 3ü]sJWÎàù]É(#8þ�B’}{[f°X­�XP€°X:à^W# X–ù[W‹ØÁ \X X_f «# ¼þ� ‹0IÞ#îþ�‹åVÿX«P}z_ï\f'd&[b8'?°8'lЫz]´`(Ò#p*þ�p%[ZYz•p%ZXÆ p%IY¬  ´)# Å*`þ‘p ù€àF1 ç(VY0ç(Yþ�p nzX^%Pç&$&8#696©Aç&1e8Cu9l!Õ$X' •7d1•0Í0í [[œ$•0†*�}zP�ðÁ7íà  Á7³±Á7�á•0úwYVsjR  •0ù@A2•0 AB•0þT`}wX\Wsj•z2•01HBˆ-FA:CAF_CBV EW\BFYBa�GÎ@5ù5WXE#D·@BÂ@‚C¥WBÓG©BÓEV%^BóHk! Â@wVY1 W·V�ìàÿ�1Wk! Â@!!hG^Vkp%òUQf"pê]T]XP\U\VoÜCpwVk\Td]ïYhOTdYYwo�Wk�Wü!ðOT^ZXZyUrbÊPW^ÑW§XÑP[[bЫ“ZZ“ÐOTYŸ__sf=ÐtfJÐÂDY[_"hEÓD.�çpA�H-bï IRKi½AA�–ùXZð#mh1\A�XYYªA meCd œhªA œh;Rœh¸JRA“¢`^M“|VV›ð¾GâîaÜÐîõg[õgZîõgYõfX]})w\'+u¯Y DuWò`®‰9áVqX¿p·_uWò¿plp�{[VïZ |vX üˆp0@{ZVW^ßXZz`4àU4CA›vV¤qVªyÜ@²¤q©p~qY^„p ܈tÚpX ˆp»8ôólýè ®ú¬ðáҿ± ~ÿqdWJÿ=-÷,ÑÁÿ³¥—‰ÿ{m_QßC5&G}ìQ­™e€ßq]Iiÿ óÝÇý±‰€�€oÿ^N=-}‹ûëÚ©€ß¹©™�hýX½€8(ßøè³·ÿ¦–…sÿbRB2ÿ"òÿâÒ²ÿ¢’‚rÿaP@/ÿýu?÷ÉM°TMS2ý7 ~z^[b?]z[ ¢ð„g[ û€í†\zå`x ›²Àû‰\^ ™s[zÜÐ=›Wû‰Ò`û‰ŸÐû‰Y_ €™Mp�š˜�™2p ¯š§°¯š’p¯šÿ�t�™ÚP ïš\ïšÇ[ïš&pïšXÁïšÚÀ��í‚>À[X�`v��²0U Wå Y£O¤Pb_r[��”y£Wr©í^)� „¨^X‘¤ u¦ö�¤©�t¤©9�ÕªX ¤©Š` õªW~�„¨ŸÐ NºY ¤©‹�5º�\G6¹&p5º ´©X]ÚÀ¤©2p†ºpuºB�à†ºàuºT‡¹0m ذu¦ ðعÚPéèº&àùº\ „èºÎà ùº¨ðèºç0 tèº�à ùºXèºÐ1ùº ذî€oX÷] ~½@V \Yßa ñ ÍWaû ´Í [_aý ÊÍ []aÖàÍ [N öÍ [ò°À Ð0@~o `7V\X­Ä%$ÛÆÀI6ÜÛÁ JÝòÀ ^ÝÄÑ6ÜZÑ6ÐD@~i up©ÃïA Ð�ÒV£ÕÂàU¯Ý šÀÄÝ Îð} ÙÝ VW ÐÊþ�h–Ä\P:à~bÛ[[ ¡ Â2~V̘@ÿ`¬$ä9P=Š1æV_ >èvà½P?ç[½?çZ>èxphåÜ@\�0åfæ Zåö>à–ù|\”ذÄ1|?WVhs÷Pù `#è³Òâذ_^3íçSðä`2 Ø³òCذ!!{&!œ-ôd7öA îD÷aD÷` Æ(_X¿#²1{^ 7@¶ƒðj" �ùÙª(^” õ^èT¿÷#¯öVRïlôsp¯ ¯€­€ï¿ÞÏÀ€¢ÿ’‚p`ÿP@0 û'€ðàÏÿ¾­œ‹ÿziXGÿ7'ÿùêÙÊÿ»¬�ŽÿpaRÿC4%ÿøèØÿȸ¨˜ÿˆxhXÿH8(ÿøèØÿȸ¨˜þ�€wfVFÿ6&ÿóâÒÁÿ° �~ÿm\L;ÿ* ûÿìÜ̼ÿ¬��}ÿm]M=ÿ.¿33s?,ä€6á|^àYÓ âtõ¡ þW ¸~ þ�|^Z}¢,‘:ëÐ:bI‘ Z°:Zz"°Ð:ñƒ|�;YzI_ @šY@;X†E¹Z?@‹ Ùà± Ù~ :í�|]_"|£  &Ÿ¡)ö�9 *0"[ )‘¡ I+êp)I‘ k+W“9)°)…N�+Y9){�)â¤Ï+l�Ï+Y°Ï+‚09)‹� 9\;#:Y#:à@#0 &ÄS;…p#9»� u:Z u:êpu:ˆjÀ#9ÚPµ:R°µ:[ãµ:¼ µ:Xµ:�àµ:Œ@#5à~¢%HŸ¡ó 'Fö�"à(E‘�UJXUHI‘NuJWUH… •J§Y UH¤ µJ\ µJ2°"àñ½A¶ÐåI‹ÀåH»�YZ�Y@YÙàåHÚPæ?Y[°AWYpû€BV± lYWlYøz`lU)á_•:›TW±P”©WêÐù·Pí�{VZs[Ëz^ÝÀ?©SÍR^‰×X%p×Pþ�ÍQX²ÓP ×Xë�>öWW*ZÐ õXW°À ×Pí‚;_V|£ ž6gŸ¡I Eiö� Ei‘ gk§X EiI‘‰kW“Ei¤EiÄE`þ‚Äb“°ŸÎipÝjè´°ÝiJPýj\Íi zr@zÁÐz�ÖÐE`c¢<`V¨#Íe^×\X0û†\!Wq1lTñ€ð¡�x°‰�x1°��’u/0HO¥ò�~¡ ™Ÿ¡ û€ï&ôóo¯°®ñÿâÓĵÿ¦—‡xÿiZJ:ÿ* úÿêÛ˻﫛3{kÿ[J:*¿ úGÚþKºªšŠÿziYH¿8'eöÿæÕŵÿ¤”ƒsÿcSC2ÿ"òÿâÒ±ÿŸŽ}oÿbP@5ÿ( ûÿêÙÈ·ÿ¦•„sÿbQ@/ÿ üëÿÚɸ¥¿’nÙLÿ;/#u?çíÿU217BBUÿ2 bVYZ[ûu`þ€…­÷�Wws0”d`”ÝÀ�ö�ÿX]^VVp`dçÎ[P,—b î9›a9–\``ÿufdÚý_•huffpýl™bmf`uüK€n—`oafuél�+“[2‘p¹!ª–o¶›m» ¶›i ¶›g; ¶›f ¶”ô°aap`jhàž¨iÍ:“¤g-«Að-«Nð-«[ðX-«hð-§``䑧h ‚«g ¸‚« ‚«d ‚«bã‚« Ђ«`Þ- b ràôù,ð°Y oü° °osµýG°bgm[[Vdd }ðÿb]`XV|XYV`3±}©àu$à¿bxW~¢�§ž)‘a~}_�°5€§³q²#"{°`qq²4 u {¹4! {°Û±“³HÀ¯¹\u`¿º†`¯¹™ !ߺ¨`¯¹Ë ÿº¼ F{¹Y_¢�¯¹00ÊÀî 0Êÿ 0Ê0{¹X]Ou°¸�0�ÀÞsÇZu�ÊZ�Ê% ‘ÊV›°�Êxð>‘ÉW^u �ÉÁ0¡ ôÊy ãÊš°ôÊ[{ãÊYuôÊä¼ ãÊX¢�ôÊXŽôÊWôÊùà�ÆW2C"—Ù˰˜Ø©pé·ÙË ÇÚYt·Ù/0çÚY çÚxð·Ù‘1·ÙÑ·Ðm³0ẚ° 'ê['êXƒ'êÚð·Ôõ5$xè#!xè4!xèE¨êX·ÐñÛ° xèeýÚççèB…÷êäÐçè¤úA\Ö�ù²@ý/0 GùAY  Hø¬ðçèÄý‚�À„ùÖ„ù›p„ùV;ý ^ý MÀîý [ýÆýôslú õ±€¯„ÑÀÿ¯ž�|ýk€I8'ÿ÷ÿçׯµÿ¤˜Œ€ßth\=€8ÿ&óâÑÀ°S€ÿ„nXBÿ,êÿÔ¾´§ßš‹w€hÿ[NA4ÿ' øÿçÖÅ´÷ªž“€tZÿI;*ÿýìÛÿǶ �ÿ{gVE÷2!Àùèÿׯµ¤ÿ“‚q`ÿO>-ÿ úÂu?Öêé‚Lö€W®�zt`Ÿvh›¢í`÷køZ]V`­wÿ�� \^[YswV‘ +×`+`6fS¹,XÕWVW¢Šº¦’—Yo[YztE‘‡´waÄ`ÄÝ·V Wg‘L}èhupú˜¶W³�ôn‘#Ví !K'mhpÏg¹£9$fY¢é`aò2 tW) !2&V|aÿ�ßN€%a;ml,"ƒ~%aæðòš çh}&<  C&V`‡ (ö � Ë%]¯! 0° WY…$� �0B`‘ë$ª‡"� _°WIXf*°½£/1pëC ,1YfþíoYbjÛXàI7X[ÊU3W\1 a0þ!XX¯V_pXÄÐ’W_XV] 0,1çÄ)’£PVzf…g9“§5 ²;h« ²7g½2 Ô;hà Ô;`9�°WV[\}„Ð Do2@^FgWFd´P${° CaÄÐ;F`‡P{°Ü ° @‘’WVŸ[s¸aD°S ç@’Ð/0gÓý CWZ†ÎˆFV”@š1Vù¡0�!XWX\ý¨0V]VëÙ­I]fp[[•ÁK\fpZ¥àÁK[^fpY[ÁFVµ@Úí¹[X[ÝÀPØZWXè·@ŽÀ/[Vfp^[I/Z¸E[[ÏD[[òûD /P0°V_WW¥zÿ�¢£Qu‡ gs °Xf ¾[·d ¾Wlag‘êàY`Ô�ñ[kx @°£PVlag‘A£ g-"%jÃ!£ ~‘^{W]“c^h¨`UeD@˜“S\j…àUd\]`yeòD@U`ö�\XVimdÛQÜ:“\Všb·g¢gbbÊQÜ¢` Q[\r@o# Ý.²Ò@Íc Ô`‘­[°’“Zu`JUdZ]`üeD@‘dïZ^Vg¾i¡Ï:“t%uYrxs9”=tt 6{ïsç7zpîi{mi{kÌiwW©££tbá­{l­p{@VY^ì¤P°€ÑwYÞÞpRôóo_û²°ÿïÞͼÿª™ˆzÿiXG6ÿ%ñ÷àÎ/§™ÿ‹ziXÿG5$ÿïÞÍÿ»¬ •ÿˆ|laÿVJ?3ÿ) ûÿêÙȶÿ¥“‚qÿ_SB0ÿ úèÿ×Ƕ¦ÿ—†udÿTC2"ÿðßÿξ­œÿŒsfYG6$½ÿõÝÅÿ¬–‹€ÿtj^RÿD6 û+?ôê[ZVEî�Èsõ^ì€V|Y ýZaslXVŸV/^±®�V¿V[û%–Z³1�0[V° ;`A”m K�š0í[½ðóA’oYï› ±Z]_‡ ôn”Dðx�� ZXYYZ`Wâæ‚`J ‘‰�W[\îŽ�YZ]Ž�V^Å� �”¥•³@à²�ª‘®Á 3‡j pUc‡Ñ0î–a U`œp‘-� T?±��Zÿ_g|XZdÃÛ@¡¡G° GÉ¥G´4 °Y[Ýp°bH¥mqS  �0W X™ù#�þ YVo^?Xxi ¯³2£UV… ‰¨„¡ ‰ ¶|¤[\… pЦ[µ\•¡‰§[¶¡ «§Z]… »§§¡Êí¨è¡» |¤YYZ… »§YY•¡ ¸U±·X„¡»§¤‚0…  Q¸ ² ‰§XN¥¢ozA¡W… Y„°|¤W[…  ‰§Tí… ·W•¡»§„r@… » `Ê´•¡ Õ·Vƒ¢‰ ê¶ç¢Iù¹²ù¹K²‰§ Vޱ‰ 00,P½Ž&bY`Y¤˜#£RÁ-£Fë"dÅ`£oÀOÄ>¤oÉWùX"`€ÉWW[`uoÃX“ VVpÜPs6ù»ÅaÆË—`ÆÄ]ˆˆ g› ¢cX]ªˆ hà ¢`0/0ªpÞž™1X[a“@ fÏíWA@ ü,Ð#Òh¬.ÒÐÎn’XTàüNÕ¨@ ÍÉ ÒgAl@ @XVŸY}}@/ÑVGYeÐlÒG� W“n¼ð\$�¡‰XÃ�¤#£®Ñ-£ µÄÁÔ` €ÃÀÔA¡I ËÙžÁ Üٯ oÿW^]VirÊQÜ¢``W^\âhf»¢cW^[âj£4å™`â 4åWä 4åª`à±°¢`+1]ÐV 60{â©`˜qð†å)‘60 �W-[h­.#ã[Bc! £$Å Ú œùÕã ÙÐÞà¾â"Bc Íå»sÞå»P û] pûBàölEû'aÞà+1[w :ÍåWðaÞå}ò¢!pïåˆBc ÍåVr=ôø¼hÞåà±ó@ ºû"`øNý ôsv õ³€±‚пÿ®¢–Šýv_ N:&ÿþòæÿÔò ß–…t5€^ÿP=/#ÿøêÿÜÐĹÿ­��}ÿkYH7ÿ&õßâϺq€›ÿ’€rdÿVH:,ÿöÿêÞÒÆÿº®¢’ÿ‚rbRýB�‚òÿâÒ²ÿ¢•‡zÿm_QD¿7*a0ÿòãÕÇ×¹ª…ðŽÑ€rÿdVH9ý+߀­@,…Ë@+0ÿ`YX\Xf£ *1Ð ZÎ zAVfPˆ0&Ð5W=CWfCÐ} CZVw m€H�mSà&uËQCY:w¦o¦1àÜ—A fCX]÷f5V_\f;&V_ZÀa&< @fÀ^\ 'ŠÐ 'XC!ˆ0@Šð^Ð`>()Ð1&[w_Z'Z >&ßZ\o 1&Z\ó @þ `XlpÿZVx] Šò‘'g”0Ÿ)a] 6Ÿ'YW› ‹À(« 9Ÿ'K°]ß)« )ß)» Ÿ%d˜!P•|23« 7É P$/9Û!”08 0O7)À'[_9« _9 0ñ O0c@°ÐVüš@’`ÿÀ›5§@J›4W½@³5]�³5’3г5�›4F ù›0)V]ZWbxSà@æ2\Vï5—[[[ú0 >$þ@^7fFY_¿'HÌ1àFXZÜEVvŸdZã2’WBX“_@``*¢¯Âz4 þ£A¾APŒ@[Þ£ ZxgÐz× ¹”D]¥ g«ZZ£@§@–B\*žE ¼F[³E¼F�FE §@–B¾°ŸD§@P‹A¤0a�°P_ WiÃã2Y²À$ZY`!$P`S¯ÂFX£w3{¡^^\ß±XhžRpTpzZ¸@zPL`^ZY^`¢>-Ò^Wha“]àçhUc]àa¼U`&�^V\ZvP{ËTY_XƒÐfÙU^[ïpØV]XýpýÑq^VX^]|œˆpþ3^VW·ðÉUVšÅ‘ ×UVXvQ-ÐÅ *fWáPn�o‘]^ï_ ²LcV}÷Äû�]V[Y `gÒ˜®rgeåÀr`„Z�»0a� Â‘¤È#£Â‘-£jP¢h`‘jP�d­ÄjPç`\?[swµ�2Ù`ßh´÷A\[ýpõ�___|__o äídV]öe]ÿeoW^öe võVv ÿefV\h×VXXúa ÿeaVuXFuÿe`VWFu‘ÿ`Öaé‘ î“rPh; ƒva ë�°ðgÅð °Þã¡uf% ÞàŸsÅã ‘@ zV WÍãîî…aù€´]ôówýð´ý²òãÕÿŵ¥™ÿ�}m]ÿM<+ÿõéÿÙɼ¯ý£/ƒk_ÿSB0ýCïßÏÿ÷«¡÷•‰WpcÿVE5*ÿ üò÷äÙkŸÿ«œ†pýc{I7)ÿ ûîßáÔÇ“°_¡‘��C¥÷!«ÓÃÿ³¤”„ÿtcSC2!ÑÿáÐÀ°ÿ ‘�qÿaQA1ÿ!Âu?m]øUF| dÒP[abokRþ‘ZabpÂ]˜o—Y‘¹—8�o—X*‘ —W‘ ^š„°Ø�‡°‘Vadà Ê•V‘ ——�o[•W_‘�& ³’8“ɾ—X“Î��“‹W]‰��–è��œ–÷‘o­�À”](�k�Η]’ Î�°” \‘_®–: I §%\h’0§¢þ—’SÁr§é‘ß—Y�¡$î—8’�§H’­�â”%W‰�î—h’ �§x’eÀ§Vj‘�§V\‰����À”°ú‘Η±o› À¦V]™‘�¦VBX’?º 0·Ê¡�–¤h°�?·x’ À¤XÄ_ÐÐ Ði@ ýwÑd WVÛ±vÒd ñ°4´· õ¨´VVÐγobwvvwP(ßbw xW†Pzuê´oò± Š‘!bwdmwÀÊhò ÃÀOÀ Áßx[hdðzݲv2`ÿݲÿsujk9®EÅhPÀß°l/W^ò°÷ °0+à_ÂieÊsÀë±ïdW[ UÐŒ.ݲaVV\@ü7ßÀøj@¥ÀÐbY#ž RbX¼À/ÐbEWëÐ?yâ§à“Á ˜ÀµÁW¼ÀÁmÁà0£ _©ÐøÀ’0b…Qú´Âü4ÐÆÃawYu¾ "avv^lÀ³å5â(ÑWX-Ñü2ÐxÐamzY[WžEÓ[Ó0PÕŸZZ_PÐ’0a¿[XX&œ2a_[W]vÔY~ЩvЋ@aô°î¾Ra¿Ya týÂaßXa¤ÕWaó¤Ð%ÑW[Z]wß¾ÔWZY\ÈÐÌÐÿw`m}vwg}Ö°lh/ÇÂk`v‡PPDÂ`v…Qù ÐpAud|w› sä°¡nCà{;j~àÝrá¯hfpj#kÒ`]oLÐ:BãXðPúLàmmfuÿdjvsm`}îÇ0 ñ¾A`amfujaarš�¥P7Â`¶ÐÙpؾR`›`Wì @ "W@W\k„ã_V rðH 3¿\mvWW~úðâ”{R¼àdÀâÆà’1\hv_@Ùãœ`_DU[ [güæÒË 2áZ·"{YCÏ ô 0%ðÏ$_YmvV_ÂàÆäYmdDòJõ·",àœ:õ2dÏ ’1Y*ÞàâäYêà_@=ò 1fð– 3™ðY0œ`°¢÷tó¢ðÿYY#@\ )YV\ú0 õ_Ì À%®ôspüñPµ€³þ€ðàÑÁû±¥P’‚sÿcSC3ÿ$öÿåÕÄ´ÿ¥•…vÿfVG7ÿ'øÿéÙɺþU€šŠzjÿ[K;,ÿ üíÿÝͽ®¿ž�€ƒ€`ÿPA0 ¿ð—€Ñ¯Â±¡ŠB¯€"ûµ„Ò±ÿ �~mÿ]M<+ÿ øçÿׯµ¤ï“‚ç€`Pÿ@/ ¿ü<@2¿’]¿Z`bY]ZK�ÌIë j½¾“ðY{�ú Yf ‘ðåX  Ë{R3f X^úXºpdM=PZ[½ (€û0MZö€M@µ -XV ¼ Wµ\M@ W\ À€Y  öŽ å[]L‹°ö[]@@-WöÕ =WM@ÔY^§o öËñåW¨IoÖV1@öVª?@-Vg =V:�¿*fÔ²&’ö¿)M@ß)9r¿)V+�:fß%wVY�4“i]jÁ;0?4Z]“ÛÈà”[ZÊ¡ `Ž”g1K±_0q3Y^y²š~6Xˆ2Ǿ”–2o|~•[g�û0n62–“ ž0b3W^‰‘n6€×0¹‘ž0à4³í7¢Äí7{£ÆŸ5z¡«0$°5É¢Ý7h’@q3µV8’MEV_·’ ”@�“_Ø1n0pDZ@Ë¡n5„AK±mG›¡‹GR8’]GH’–^·’…mF^i²‹Fã@‘Å •òAM –£ ù@�“]i1‹F"P¹‘ùF1Q½ ~–]ˆ‘(W—’y€¸YXì –\_x‰�`n0À“€Q AV\_,±Š~–\ ±‹F°P‘Ä •¿Q\°§Wˆ‘�–ßP¨YAÆW§’ ~–[›¡€�–`iAÆVah gX’‰�gÙ’$gY² „gi1gx3$gx’gˆ‘gaSÆPÀ“ªa*«0–Z�R¶Ëa �~–Z_ AÆPæd"é‘ �–‹ }¡Ãóf ±‰ w:¢pÅd’�0wWC0wY²ãgˆ‘ Pw—“0w§’~–Yù¡0vX·’žwˆ3v%Xé‘ �—ø’žw¢½�Ôôói¿í¶´þïÞͼÿ«šŠzÿjZI8ï'%ôãÿÒÀ®œ¿Šxg;Dÿ2 üÿêØÆ´ÿ¢�~lÿZH7&ÿðÞÿ̺¨–ÿ„r_Mÿ<+ ÿùéÙÉÿ¹¨—†¿ueT­„ÿðßÎÿ½­œ‹ÿziWDþÏ€ üêÿÙÈ·¦ÿ–†udïSBï€ »þûp]ìi7bwWг 〺! ”£ò„êðëŠöI üŠëŠ9 üŠHIëŠ0 üŠÐ²./ib^\G ç@4â€Rõƒ�Ý…[õ“š*“™Z˜àµš0qƒ�'Àà‚ZY[˜à¡×™„@0éš[äû›9û›˜àæráï”Z\`:1 ì—²Ò‘1 Ý…Y_0JV©]% gªö gª" 1 v•8 V¨z‰ ª©Œ »ª�‘š¨XÒ˜àÝ©0V¨W_”‘ý©\�ºö$º˜àý©$!š¨E!5ý©Yš åc¹g ©sº9s¹XHs°U¶0¦¸º! ¶¹Bö ¶¹¦¡¶¹0 s¶7`bw~‘ÍûÀŠy ¿ wŸ’ÉXÀÚ“ÿ°\Z� À”4£CÃfdPÀ;Èž’ Àbɬ _ËqË)©_ÊÁ‘qÊZ $§ËÐ_ÉôqÉ!ïÌW É8ÉHA:ÉXÚpqÉi5Ú(5ÚŒúnÙ,0„kÛö}Û:ɲ }Ù°*³ÚõÅÚI ³Úà ûÛ qÉ�ðÚ0ûÛ˜à ÉE! PúNàêð³ÚY« eë’g êËñ³Ú™! $ÅÚª!ɺ! Té‘I¿êö Ðê¿ê29 Ðê‰ ¾Àé0‰ÐêÐ%ð0~‘€úJ÷êð-êÂWø kÃú}‡ú‘Á˜úHgчùÁ‘˜ùÆÁ ï²"ôseé¯W€µ‚Ýÿ˹§•ÿƒq_Mÿ;)ûõ'€Ñ¿­ÿ›‰weÿSA/ÿ ùè×ÿñŸ�ÿ{iWEÿ3!ýÿëÙǵÿ£’�oÿ]K9'ÿñßû̃€¦“€ÿmZG4þ•€ûèÖïIJ³Ž|ÿjXF4¿"þ¹ˆ•ÿƒraQÿ?. úåéýp�Âu?þ4¡s\^ib\^�w  /ÝW^`ÐéÝÚ ‰ ýù[b[WfX; W éÚ‘>ZfZé¥p9bpùW^[wk0ÖNVXZ ,d`ÿw`vi|||#wˆSá‚~‘ü‰Á• ë‰^Û ë‰Ž‘ü‰öÑ ë€¹=¡¬ Ù¶;Åã€\^g –¨Ø—öþ`µì]0Jý]o� )ž’ýB} 3+ ¡E+-à 3*’Á‘E*ÆÁ {+0©•Ž*o�3*Y÷Ð 4¥w…1_�ýØ*TPëØ'¯P�`è*¯P„Pû,”ÙÁû+[sàÕ*¢";[UÑG;¬!;ØÁ©G;ø¡;Xo� Í÷ü*W]Ï`)Y_‚ýÀ±)Ø0ˆ@Ì;o�Ì:]È0cI�ÑÞ:~ K¢±&K£ÁÌ:\‹ÐH ݆�±ü‰0Ñ뀖îX_È0)SÒI´‘I•¡±)eÒ´J‘[©áÆJB1´JÇ¡ ÆJŠÒüK‘[¯ÑüKò±@[/!´J„âÆJ–á ´J*è¡ÆJXÇÀ ´@ÚŠ˜PVÀ ù—CÇÀ¤ë‰´1�IÑÒ ´IW]È ±)`tàø[mÁ� kÑ!øZ± jiA$@k^°Rk÷Ð@k-àI@kÇÀøZM± j[È0¬kÇÁ´@݇…¡$ü‰`áæZn± jráIøZ„á{ �{BÈ0{¡{1ÐæZ%XÀ‚{È ü€—y °Ð‚{Ú1¦{-à ë‰WzÇÀë€È ôó^ü&¸ýVðåÖÿ­˜‹ÿwcXDÿ0#ÿüîÜÌÿÀ³£“ß…tg5Bÿ1 ü}í¹ð¼¬œKÿtgXÿJ:+ß ûì_Íÿ¼ªš…ÿxfQCÿ5)ÿöéÚÊÿµ ’„o[I7�ÿúëÿØÊ»«ÿ�ƒsbßSD3«ÿ,ÿ\�;Bè= ·§@èÒ´Ç€ÿUPD78P01÷4CWâˆ2NICÿ-8-BIT CÿMOS MCU-ÿOTP_JIIHÿ=20ÿiÿ33�AÿHá†Ad÷…{AÆ�q=ê?ú΋¢Ý†5P008“CUK˜ø‚4þ�—?Ýd’ö(<"�Ãõ�(�ff.�Ò»~݆225G00´•ï-001ù�LCDÿ CONTROLÿLERZIHHGU<~‘b’´³üìG[abp²~ b`YXý1ñ±ü« Yswpï`a°£W[VÿYztp`d¯þ bVY^_ßWWY®1¢a~·|^[K°­¢aÿ~z^[b^z÷X¬ñ’a}{^VWVV«ÿa{Y^Xûªaxmÿasrblfwÿdxu`af`÷o©`£w}]_¿^VVu¨@£wÿZmiwm§þ¢av\ZgWbû¦amoÿZWs][Vvs÷w¥@£jmYVßufd¤p£d|ß\\b£·£b^¿[]a{¢¯aa[K ¡ÿa^X]XXÿkXXVXpWû  a\]÷i]ZðX|Ÿþ$³[]XYZvZºñ±žaYpZÿYi`X[|__ë�L°X[Xû_6 YYl½œ¢`zuPPÝ›q³s\V& šþ\²`oX]bWX{^& db™�³ßmsXX`˜P`aõXl ˜ñ’`dhXWX`lp—1¢ÿ`d][XWkpû–p¢`b_VV÷W•·³a{Wîk u”q³]X]ßgX“�³Y`w_WmWBðw}’²`WZ-àý‘¢__]\Za÷s�"Ã^V__úy �\²_]YVk[]j Wi Ž$²÷_[Wy°X_\[÷l�p¢_YXZïY[Œ>ÃWW¯_[[°`l ‹Üñ’ݰ\_Vy°Š~$²^^^VZÀ¯W\‰¢^ã_×V\¥Àˆ²^Xß_XX‡Å¢^VÿYZ`~~dgïpm†1¢]_XÝW`_…¢]\svaVZ„Å¢ï][W\i¡[Yç\ƒÙÊd‚ Ö@p�ñ’<Ñ2@ïsb€èÃYXY_\W^ÙÃWžÀu[l ~p¢]Vxk¡¥}XÐl |¢\»v`& o{1¢\o^YYZKÀzñ’¹\<ÐÏÁby‰Ó[{^VÀWXx™Ô{VY²ÀX_wÿ\Z_WaÿmvgW[ooam`blì±çovzÓy0ZWw[ulÓYo°ótéÔimosþ\XYYV«VÞ° 0LÀår¢\°KÀ\fvûqãW^][¿[W]pH²\ÿV_X W ^WëV l op¢\VYöŽpn¢[d[u»pW%àXm¢[ÿ_YZ\Wlþñ’[^ZV~f¯~dk€äYˆàibŒàjp¢’ð^Ài²][Eàvh€ã[kàë_V“Àg$²[YXýgÐVWWfþrãWvaXZwýe­ãW[\ad®rãVvtk¡c ãVÎãÀYbôŽp^­aH²[VÀX£Ðß\Y``H²Z^¯W\s/°˜P-_aÒZ]¥À^1óEàµ|JÁñ]Põ\¾YóWVY\p¢Zô¿à¥À[\²ZZYW¾¡ÀWZZ[OÀZD…ó±ÑW‡àMÀß°Y1óûYXÐàXV[Xï\\X1¢ZX]ÝZgWUEóWX÷VT1óV_VYö¸ð]g0ˆýôsr ó Æ íÞÝÐ €´¦‚}ÿpaQBÿ4'ÿôæØËß½¯¡3€†ÿxi[Mÿ>0"ÿøêÜÿÏÁ´§ÿ™Œ~qÿ`N<*ÿóáÿÏ¿¯žÿŽ|l\ÿL<,ÿ øçÕ÷ñ�€Ž|ÿjYG9ÿ+óå×É«€ÿ¨šŠ{ÿm]OAÿ/üÿíÞ̺ÿ¨šŠxÿcP>,ß2Ô�ANÿSISTmoßX_ZVwj VÏ S Ç øbw+[  K XYpõAW[mjçbYXZ A\~‰°½ A[weW¥~••o�R 3 šb‡wËG@Ë@Wå` ËŠW`Q Ëhý^ *ú üX\w ä.'‘ ËzW]pÏ^üS ~ËW]o^J&eVT"ü€ ‡'_ZpË•(<7p‡'Yp¶(Û0=Qˆ&XpÒ(G@Ò'Wpî(ç@Ò'ïVp Ò%^]^‡s 78!Ò [}_T `dk Ò © 86¥Ð47Z?3¸W:K46^^w@2PF6„1s{7]†3ž:úž:YY¨�7¨0¥Ðž8v@2ÉPæ9÷0z[]í]·` JX ´ HA1 G\w‰° €9I'IJ:÷6/0Î2 ä9HA1 ÷0I3][wªA1 G[AœJX+iG[¼Ht3•¼Ho@2àJ!O“@Æ@Ï1iGa4‘PW)ZÏ1PPŽDa0¥ÐP÷ŸZ^k PŠZ5V8 ^UY_ˆ@kUÿY^|aj`SXŸ ^UXZC0¶kUWY�P•TWïWikUVW`wikTW_]À é×WÜ ×VXWw[×U^_À f…^ø h7pPÎWÎ.1gf”@NeY0H`.cDwpHe[_\�üH`aQW[^i êef[gP €hi ÎHeZ_\žPœhoi sefQœf[^e îÅhoÅhi¸H`ö¤ðm`i�H`öd¥Ðse�QVHeY_ø VeYfÐðÁ H`z6r`p•M0u\1Nps[çiNpÚRXbm§l]u©QjvVÒÏ` …w#Ð …w[p“ …wÀ …wø þNuX^\ûÁñcW]lv¿wffmNpwzôójí÷ðõºí�Wí�ðàýÑ ³¤•ÿ†whYÿJ;,ÿöèÿׯµ¤ÿ”ƒraÿTG:.ÿ ûåÿØË¾¯ÿ ‘ƒuÿgYK=ÿ0#õúqÈw–}ÿpcSCÿ3#ÿóâÒÂÿ²¢’†ÿylaKÿ6! öÿá̶¡ߌwcÃ:ÿ&þéÿÕÁ­—ÿ‚mWBÿ-í¿bmuB°WÿWWv[Vllç�°ß‰VulÏ �R߇XlšaÀ�lVup�[Zë€ïŒX[‘ /œ%W*‘Z�ê�/�ò‰®í±l /�Þ�W WŽÀv[*‘{œš‘�¯œë€®�Ý‚¶•’‘®›’ë�+�$ÿœ?‘Ö›S“›i’I®›~’Ö›““Â� Ù–æ�j’֙慮�ò‚$–¦‘ ެ’ ¹­*‘I έ?‘£¬S“ ެ’i’ ½ê�£¬““j®�Þ€lx@`PïbmjsòÀrì[µt\Àbmi¯YY° Þ€gßX^V}w#0óª�¶u‹°�¸h‹° ª�¸b‹° �¸`‹° ú�° Þ€f`uh¿mxf hˆÁbÿmbZZV`ks§xå±Yê²Vð¶X^ë±Ç\ë±ÕÇ[ë±ð¶V]’ë±0Ç*Âð°\±aŸZXY´WÀW‹Y°TÁ àŠ°ÿvsbWX[�lÆš°xLjƒÈª°xǃȺ°xÇHƒÈʰxǃÀSÂYYÀõY° ëÃW ZY]ÅüÀY´`ïÁ] ×W Y° Þ€7^VãÁû,ÖË@t8×@8Ô[[E@ËúUÖZÈb×X]ã8Ð÷ÁwÑ[Xý~ÕWX`os¯õÔÒgœÐþ\±[VZ\wÌèòÐ[³€­ÕZé¸Ðò�[$ñVV`ÿ¿0·öÂ×ð—Ñ9œÔïÒgœÐÝ�ÿYXZ^xshÿu`df^–u²XZÑ0ó•Q àWÏ\`«Ô�p`{®5åZ`Aà®Ò±WoZ[ðx쀅UPäYXã_æXXãW„�²WàpV[à©�àQâgWä_ågh䢿y䢿¢�Záñ_à-ÑúP]\ »L׿[ ãèZó ãà\±W^[[G=Z³ðÈ<õÃ>pVZW _àõyY(øWW(õ$2ð$ð Fø3ðFøBð9FöHàW sø3ð©søBðFöW#ñ $ ø3ð øBð_à‚±_V_]`f˜Ñ’€³xÔó¨ÐÝð4ôsaã »€ý¹€ëÖÁÿ­™…qß]I>!€ÿõãÑÿÀ¬œ�ÿxcN9÷$MâÌÿ¶¡‹xÿeQ>+ýmÛÄ­ÿŸ‘…vÿdR@+ßÿè�€¼÷¦š™}k\F0«÷êÒµ¤•ÿ‰|fZÿNB6*ÿ úêÚȸ�Ë€}iáD4(Õ€÷öûð?dqÿ=Š?ôb÷o\_YPVsbßaþѱo\÷^Y_ÚÑ*úå^ÚÐZ+�±éÿku±é„Û[\î,YgïÝlÁo\XûsvŒp`b XZ·db 'Ðx?WÕXP VAsgvXù°L´NÀäsgŠXX[×ô ªÞ÷ÿ§h &�²o[YP°µÚçh ׿Z__¾íYöÁoÜè°NÐ št²oY¿__3#]ç_ô"Y\]/&ZY3ñüôò€oYX}[zz£�~/àw g²žY gb="X‡g= ! àïÚô!W\\ Z]…[b#i ”'®b#úi •#|]uZ]ßZlW\z¤!ñè“%É B l)ÀwШ'É ›Pç#¿*WVå[Ï$× V"W\b_hZ]Xkè"i ˆ 6Mð,3 i …"OÐV�w ö¶P2ÝþãXfWZv\Ïsãâ“0_Í1X[JPS$XW¤É&e 34š4Yç#ª8ä!c"¿0”!š2û!Ð#×$š2©ðç Ò!!× Ý€´P'8i E‹XX+4i ¸ÛpÙ`kÐ$àO/HYW`D ?JµP`ƒ#W^"÷–W\Wñ1-Ðk`w[ó õäâpuVG A“"0²9Õ4¡CXX·4 ¿0Â!¡Cäø1Ð#× ¸V\f=`Û]v {0ÓêçDXî@ òKW[v£ òHs1î@\\Çv {0��1WWvÓ \P\Xv³{0V!V[²"Y~è" ¿0AQµ0b#© ¿4¢DXç# £YYY�ØÀ}°¤X#@ÈS#€H¥WMð¢3 å[ÇTŽV'1VkÉRhN c-hXXdhzà’cPjd¿0 !VwXvdBÐäÌ�as0‰`ARXmâISsà‰`æVXf`ëAÀ‰`ãBµbX_ý°Æ¾jW[-À¾g#Rs‰òEq4WMÀâkÞ`<{0åhXs{0Q±xa¡?Ràƒ®‚*‘ï€9yÑ’J{’$^}+�J{i’†|‘!ï€Ý†¦q‘®y…¥é/œ6¢ /�äý#ôór õ¼ºïÝÿͼ±¤ÿ—Š}o^MB7ÿøéÛýÍ'³¦–ÿˆzkYÿI;-ÿ üíÝÿÏÁ²£ÿ”ˆ|pÿdXL?ß1  Uä_ÕǺ[žqpÿ‚seWÿI;, ÿ ýñåÕŵwÿ”…vjÿ^L:(ÿþñäÿÕɽ¥ÿ–†tWÿG9% ÿõâϼÿ¬œŒxõd¹<¿ 10ÿ13CN82NIb=.p­s3ðÐÈsšðVÝBйœ‘sWy\8�¦’oŒ›’Ü•i�o)œVlço)™~roäQ›K’Â�rs^]^Xbp 𳪒W…� ‰˜V…� üð°Órpzfuv{f À«™ŽrÀ ŠóB¯•5 ñ × ¬˜j@Gö�å™äÑö�ùö�? rppfb¿wruljä7}€ArowfvÒ0û{’os`bw¾YÀU*¡aÿjbifblÿXoosuraŸfvǶJ§[�²ro“�Wº`Q ð° y¡Ww0 ð°þ rmrxukfÿwvfujfvïX ˆâr\{V И¬¢Z² ¶ Þ†¡Y^_WPЀ.Z²p}]ÎÑFèÂסçXÞ ;°p}Wÿ]gYrswW\@QÆñ©°¸ñ¡ZÕÊ‘¸Y!²•¶W!²9°v°p¿|Z^ L´Yç[ W° p{W7W`zA je·�ðTr°±w°X!²9°þf±Y\Y\|óÈ™³ZzÞ¢¹Yz¢¹XzÓ ¢°z šF$#z\4ðÞµlÐÞ°V.poz`@Î#z…aâÞµW»ðÞ° !vbWú"+ÒosV[hçsƒ +ÃWbsû6ÅZl]yCKÀ][pRÀ !žYÁVuRƱPÅoÇX«p`ÆF`lù RÀl!sWoa šÇÒàRƨp`ÆãÐuÂÉÀpRÀ”!ÿrvmrhjbžX£2U"çÆbŸmjs÷Àær_XfV,Xº`‰`ú�ArÝÐd¨Øk"„@åÐl™_²À|3lΠEÖZwxFÕY]Ö‡X]Ö¿ EÐ !d7\Z[3ð  #ˆÑö�‘Ô[]]Z�b C¦Ð�0 �бÕXŸÐ¦Ð ð`ŸÖÌ s ®Ð ÍÓZÔÒ ¸ðÒP0w]$d[Y©ÑU®ÖY�0 ¼ÖYÆÐÊÖYÔÒùÖ?àâý æV][b ª®ÖVð ¼ÖV�0 ,�ÐÍÒZ_ÔÒ l!ÿa]X\Iø•åÇРä`VXbó«)ôà`f ºæ`ºà !ÏáÄàÙ ºà@_VFXå o_ÜzXüŠù±^\oó[1òD 1Ræ^Ôðÿ:ô]ë·Z~D]] \1l!]Y^Ž -kö¼³ wö]ZwöVd, /ô]<@KõXWUó%]…@¸ûC_v{0æØ¶0Lïp¼ôsT«Äïp½€»€áÿп®�ÿŒ{jYûH!€&ÿóæÙÉÿ¾®ž�ÿ~paPÿA2(ÿôèÿÜÐĸﬠW€ƒwÿj]PCÿ3"âï¢}€bBÿ"âÃÿ£ƒcDÿ$äÄÿ¤„dDÿ$äÄ滑߀D$Ïäûð÷�ÿbuW X{vÿY|_[ÿwaXl\^ÎÎÀ´ Ä[l2!ðÒ â\u2 ò ~ÂZo] ä"NÀñ !]uÁYo 1�çY‘�l_yQÁYÒž‚_uq�Y§u-ÁX-@±A*ðQ-A)NÀÑ Ž�*X‘-A)m Œ1-A)Xu&àÒ-ÂWÏo^q-:[e0=6=9l^±-`:`°Àp=`:§ �04=c7 �=9Í ñ-ß:ƒpñ9[usàM I±ÀM$9í /M_JlDàpMä8kÀoMŸJo¤P=ŸJl÷ÐÐKlá oÇ\ Ï@°`ÕA``?vmgwŠbSÏbd PÔ uV?VX^þ-Ò6P¹Vm0=W] =W[ó =P­ t|W_÷ $;òs{V`·g\Xð _:Òsujk8ƒTÇd�V·à�Va]�V`�Tss𣉾U¿ ÉU\rЈÎÖUWáP) smÞ&ÐiIÂslõ~® DÒsduj¯zf�þ€_g*ÂÄPb^�á„¢%a[_Cà.`sQÖ5a[`MÐ.h[`ƒ6Ã4bZЃ @eVòIaƒ£%aY]`�‰“s]_•À" [��c^Y•bÑ ¾ý�\^út¢s¿[WVY[ €à4þ-ÒsYYYX9uÇdÖ@ 0Ýò�ÿZ W[W^ âgXWþ ñi@p[ñhV^ÀyU[FPyY`Pñf�YêcRHwýaLWyq Xwryy¥\ÀWx/ryyZŸV\QzxAqðyp³0�¶�sjpûfY oordßxmf�ûÜôó<› ë¾¼àÀÿ €`@ÿ áÁÿ¡�bBÿ"ãÃÿ¤…fFÿ'çÈÿ©‰iJþ‰€ íήÿŽoO0ÿðѳû”ÀU5¿ö×·µ xÿX9úïÛ»ûpÞÑ/Ķ;€›ÒLÄkÀ Ï=˜Š—Àѳ<ÄއÀѪ�Ú‡kÀ sÐÊ�äWç€ �Ì0Ñ6™«A¨�UšÝÀÈ�˜Ë0ç�•™¤��˜‡Zí&�Ô˜\À�Mó™kÀe�ª]À<…�Ô˜Yl¤�R©¨«AÄ�˜‡Yía L…­Æã�‘¨_䀭ΩkÀ"­íªˆÀB­‘¨A� a­-¹¡�­‘¨"] Ý­l¹kÀý­‹º¿À½‘¨–À <½Ë¹ù¡\½˜‡XlZ`¡­ Èëpû½ Çþ�{½GÉÍÀA›½fÊì@1= ÈZÌ0ˆ¾­ È‹@VÍÅÉ«@vÍäÊl»½ ÈÄ€A Ú½$Ù—±7͘‡Wí9SÝcÙYrÝcÙ‡W ‘Ð6Ýã6Ä€ˆÝcØA� 3ÝàÙ«@°ÝcØ[ áôÍêä€ÐÝDcØ] ïÝ_é«@ícØ‘/ížê¡�OícØ"Ë0níÞé«@ŽícØ‚õ±®íú^ E�ÁYL 1ÆP'OýÃ^m  ÏM}ù­ Mý}ùí Ñ-ýÁ l0­ðû¾ôs;ªë¿€½€áÂÿ¢ƒdDÿ$åÆÿ§‡gGÿ'çÇÿ§‡gHÿ(èÉþ;†* êÊÿªŠjJÿ* êÊÿªŠjJû*‰pêʪÿŠjJ*¿ êÊûðÿ€� zU „„„„÷zÐóZ{X¿[|\^™€wa[êÎõ  ƒ¸ È ä€· §Z�u]× M÷ mG¡�7>§Yu_W‡çY—‡o_q¯FÀÐYׇlÔw*ô-‡_u·G*^ 7-‡YuW-‡*9°w-§X—-Ç*ÆP×-Ç)iðø-È(3·-':ÞP8=È(S�÷-g:×°7=Ç)k@ àw=§:B�—=§Wu^ó·=ç:[€ø=è9ÞP@Ñã Mð1yMç9o^=pfJy`vMfJX–@Œ:MiG –Mç9éðW=åJ[õMåJ`˜P¹MèG]ç9^u ÷=dZ0Ð×=ç9[u t]¤ZÅ€”]ç9Éð ´]ç9¤�ô]jo÷bäZ‚�Ô\PCj>¡ÔVÖñ(–€*ÂØGumðÑ후_"�1µÍ¤héàÒýÄhRX° ‘ݘ‡^〠­ý€y‘Íý!z0ÐÎ혇]"P³maxÐPíí€yX° òm˜ˆ©ñp}˜‰×°öíòHôó<¡×À¾àÿÀ €`ÿ@ àÿÀ €[ÿ;ûÛÿ»›{[ÿ;ûÛÿ»›{[ÿ;ûÛÿ»›{[ÿ;þáÿ£…gÿH) íÿв•vÿW9ýwßÀûplZ1ÿ<ÐÅ+×ó Ñs^`|ZXª’¶­Ïu—�µ³1®Ŷ�ò! ¬Í�݆B©ð ­€í�ß„Éðê�˜4À­�˜ áD�T™ÑÀrÌ€g�hÓoÌ�Ä’—P c�…�²•�’—°P&�ê˜Ëàc�pꘊá­&©lŸ�’—X°ø�d¨Jð5­d¨8 ñ�­ ©l‚�ž�„ó¢³ r ²­fÕ@ Lr­û© °gV¥…V o4÷§+r  T]Xº×°ÕM§\�a  h½˜ºÔ0ˆ½§[ á  ¨½Øº0ÐȽ§ZqÁ `è½ÊÑPͧY_a@(ÍXÊQ`HÍXȨ�hÍP˜Êq`ˆÍ§X#Á¨ÍŽØÊlÈÍØÈ,q@èÍÚÉ€ݧŽb(ÝXÚ�HÝXØ*âhݘÚQ ˆÝXØ©â¨ÝØÚË ÈÝXظª¢èÝêlà ü,í«~furrOioVM§^ó m}éiðH½}é©ðÔ]}éÉñ(íÝêÏ`튧\ó0�íùr@ˆ­íùéðÍíùpPàíí}úŒpmý§ u\É-ý§ o´MðûÊ ôsUÏ ëÁ€¿€âÄÿ¦‡hJÿ,ðÑÿ²”vXû:#€ðÝÿÊ·ŸŒÿyfS@ÿ-ôïáÎ9€¨•ÿ‚o\Iÿ6#ýÿê×ıÿž‹xeÿR?,ÿóàÍÿº§”�ïn[a€5"ÿüéÖÿ𞌿TA.u€ÏõâûðõpRBÿ\�BdcýÒq\WXXÿkw°j¿WÉÏV[É« ²ãZÉõ Y&ɱãÈâ Ûõâ VÉ ¯« U U U ªUUUUrUaÒqVW^³µz ´ÐV^X‹ É°È �Û³TžMé\ƒ°K\^)È �K\^ÛüMék[\ °[\in)È�[\Ûi[)MéZ]- °Z]Í)È-�Z]Ûº)M­éY_ °Yµ_�Y_Ȥ?9Û 9M8Yª ,8Y?8Y’Èž9Û x9MªéXÅ$ °XØ$J�Xë$ý9Û ×9"Mõß0¨ê8»Iý8Ç\IÛ ×8ªô6GW$�W-$¨IÛ é‚ÐB#j•H[°W[• ¨H[ÈYÛJÎH[M•H¨ôH’» ¨HÇfYÛ,ÎHôõôHíI¤Y¤YÈÎHR9ÝY4 õ‹rÑsvØ}Hñ  ½D „(ñ ½7gið Ú�7g‰ðcmshEàT î­€veäÁ¯­¯iÅÀT­ž†ZÏu] Emígl] �míg]Šð})x ðŸm)x$ѾmeyÐÝmžž‡lY 7}žˆuÃûmžˆªðtpû ôóP¾ëÂÀíÚûÇò ¡‰vÿcP=*ÿñÞÿ˸¥’ÿlYFÿ3  ú¿çÔÁË€›ÿˆubOþ…€)ðÿÝʽ�ÿ}^?ÿÿàÁ£ÿ„fF&ÿèÉ©ÿ‰jK,ÿ ìÍ®ÿŽnO0ÿøëïÞÎûpÇºï­ ÑðXVYÿXvmgþ}®…sba»€½¯„¼Í„X÷[؆W\úØ€¯‚V ü ca[|WX:ý¢Wfó �–‰ñ�-™ ðÎôD�¶d<�^�n—Ð[�?�”"q <�«˜Qp{�Ê™€dÑÙ�éšEЛ�—¬q ˆº�)¨Ëp'`;­K¦lù�H©¤Ñv­†ª…Э—XÉà 8­Æ¨éà9W­å©l–­å©€äѽ#ºÅÐ[�Òr;½lŸWo¶­c¸lÇ[Õ V½„¶<Õ­c¸[uô­¾¹l3½¾¹$áì½üº�àq½c¸dРͽ<Él# Í<ÉdÐjÍzÊøEà[�Î�W\XV‘Ø€¿§ õº„ÍÝÉ^4Ïó$Ï% õ%,%�<Ù½4ÙÐ4Ïe% $õx%‹%›ÙD$ÏÄ%õ×%ê%!çÙ{DÏ#5õ65 I53éÇD èƒ4I è–4 3è©4éH&TÏô5 E¸éH…T¥è¨õSE ¸èBÇÞééTσõ’$ -$*ùÛ,ÏìDõõÿDI TvùÛÏ Ò©õ»û&&ôsQÉëÀÁ€ôåÿÖɹ©ÿ˜yX7þ€÷Öµ•ÿuV6ûô?€´”sÿR2òÿѰ�pÿP/îïÎÂe¥™ÿ‡ucQþq- ÷ÿåÓÁ¯ÿ�‹ygÿUC1ÿ ûé×ÿų¡�ÿ}kYGï5#™€ÿíûÛûðe`oU®f|�^é& ·z½âɶÉMÚ#5¸@í¼þÏÈ\5ìHõìƒ4þ–4X.$"¼4FT$ÚE ÈE ³$ ÂÄ þSEèì$²ûÄ!Ö4Ú4õ þŸE ȲET(^40(q4$0'ìD B'ÿDT'T�®(½4Š(Ð40'ÂÄ $B'TDT'èÄ8DŒ0'¯T¹-7BDB'VUDT'ÕTb8{DÚõ�Ænpþ€õ�� zþ€ –1VZ[ ÀO €”3ú€þ€*�ÁX’ �\c”G Ͻ=Í7›`Û0‰ß=n™ û= Kœ`ÐÜ=Ì7q[”DMГ@]MmJl[�Mëš �M­K)À~MÌ7¬q Û=ïIËp “p]i©MZ’  ?]O[Rpˆ=MË8С}M‘Yð  @¡]±Zêp¾M±Z’  á] ñ[œ`ßMË8‹± ÿ@wqD*m¦´Á]3iɰ ] rjé°`]rj’ ¢m²kêpÿM3i¿abmôj³ #`Æm|Ê m4{X�#`FdÉ[P}m°#`¡1X[ËXV©2¯0®‚ZYÅV¶�»…žpÆ� ÷Y̓žpØ€ ¯�¥Y©2¯0ÆrX©2þ¯4XWv�öïðüôómø×ÄÂîÿÜʸ¦ÿ”‚p^ÿL:(ÿòàÎÿ¼ª��ÿ|gXF4$-Õä/Ä1¤3„ÿuWF6ÿ& þÿðáÒÃÿ²£“ƒvgH;Iÿ úêÿÚǵ ÿ�€p`ÿP@0 ÿïàÿÒ͍ÿšŒ~pÿZE0ÿïâÕÿÈ»©œ߉yi—Jÿ<.ø[õðþ­ÀvvVYX»zç…Wò†VïWQÓrvu\ÿVZ`ñû ‘X\fý—W[:<“1�Vf7�™pïvuW[�a \�I—`F–V’ù7�ºÀvmsjmßrw svï€~ç‚mrbl ‰�¾¹vl{jl„À ïo0«ÂvhfŸp^‹óƒ¯�]{µ—\ж–×[Ï�é€gtÿW]V|XYVìÞ›Öå‘ò�à‘d\k]ÿ‘Vî�ë ¥G[^£Ù�¨X¥¹ ß’dWWç“\ò.  ‘fXZXß[ h’dXEZ«16^£r g y§ùWÏpy¤a[\Vk¯;—¤VŸ ý�l£aZ[[ký£¥W^X %ù “a„ÀŸ  ± ¡0ÿv`^VVowg~± I‘`\å¡whí¥[\ø¡)£ ´[ø¡ ·÷¢½ í¥ZW_ù  t-·÷¢ í¥Y\8±½ µY[^ù  ží¥XZ[9± µXØö¤£  ¡`Wõ¢|~cVZ ± ™‘`W…²òé ± y‘`os>�Z\#`I‘}^É pW\ž0¾Ê³ZVpWZIÀ ¾˜’^VbX^2ð\» ç¼X ž3v_[\\WbÒ± ’3vXZfÞ·rä"ÀB� (ÀNÀvXYÿ[ahamblÿhuf}af·~fmêp;’XËWXÒ±ž0è�W^ÍvC�íH’jÀXßZz ¤qÈVz“€À‘W§|À ø€Àß¡—ÁYVzfù pÀ‘V[VWYa[â “�°ºÁµÀÄÄœà»ÀÎÀ‘�ZX¢Å°߯ �ëÆVg mû°2vž°v§r.yÀ[W\±� ×´ŠÀ‹_`±� ÄFð¨Âå€ÀfÐMr|WX»pIÅrr·vvî€8§sp¯^\ X’qÀqÂußp\Z X·0R”‚ת1‘Õ[ŠÐ«0d¡Ù·0¡Øª1Q‚ÔµZŠÓ�ÕZY‹ÒTÑÖËsÑÕYêÓ貪1ÑйpYÐW’ª1 !é‹Ò ÑÐÆqiÙYÕÀ Ì ¡ubþ«  \V]V`–`ðð�âbŒÐ_ã¹ià�u``¡rw<ó‚‚àbdŠà¹^î$>6^üä €™æ*óÈ^$4ÍèåU Ú\:$þ\Hô©ø\ó È\nô´'øåÚ[]cªþ[Ò ]÷\Q¤oøcoøÆã È[%\‡¥øåÚQÕþZUôþûÈôsuëŀÀóâûÑàЯž�þ€vfTIÿ>2ÿíÚÇÿ´¡�zÿocSCÿ3(þ?€øìÜÌÿ¼¬¡•ÿŠ~qeÿYL@3úY€]€ÿòåÿØË¾±ÿ¤—Š}¿sbUu€<¿0$}€ÿôèÞÒÿÅ»¯¢ÿ–‰xgÿWG7'ÿûïÿãÓ¿¬ÿ™�waÿK5 ÿóàͶÿŸˆqZ¿F1Ý€?[bxZÐÿ\vbsavX¿\`j ¡xü+ÐþwXV`©ÒUâ[W�4×"v//ÓõŒÐZ¿yI'Y` ŠJX^ü’GX'y�wÿ~~fXVb{W¿sg ¼V/Yt{jÉ Íß�ÿw~Yf[Vb¯{WÉ àZ¦ìíÝ’æYìè (Äî (WV`Zî (V[E% N)ÅYE% ‰0æ| ½XfWV~ǽÍXfV[Æ XÍ6Ÿ#``Ú Íö™pw|/ÀdYt÷h|"oaXGBÒ$ �Ü Ô!nÐè%WÜ ã[á¿g ]V^dápiàÃ!ª¡^à¿W’î4Z$:Y>$:X¾ 14âÀ$0W1©°VZföÁ¸qw^ZXæ¸à}|"}02*w4V0ƒ5Vï€�0Ýz1 Œæ‚w]e\0ƒ4¹0¨4ç] ²0}!\g^�Õ×4Ò0á5fw^í6]á5ïd^F]Þá5b^F])á0y1\º1ƒ08BåX0ƒ4I@Æ�0\©3À²4[fæõ0Ô6Cq@]êwEd @„G]¨„GÔ°wEb%@ «G]» «G\ wEaa^ ÒGê0ÒG`ÀæwE``0ÐùG](ùGİwE^0ƒ4'P+�4[~1-UçÀù\AnAVogHó‚XP0-U¤0`@äë!ÍÐ^P}!Y]o¯¥ê"Y�@¤ö%3Yà m™gTi¯›T`îŽpx¹ZoT©P}!XÝ0 á4Xé0“øæTõ0åU@žåU[oŽTg Ê™TX¡T©T'ci]0faXW¥PÙT%W`ŽT3�™P½ÿWYVW_v[lŽZP Œ®"ndapo³ z`jgX[Š` –ŽjWoZP¡kuaä¡k‰a zj`qo ¼z`�wWW] 0 þáswWVxéIpV>qoa»m`’� §|"Vñ_[P™Pë!V_Þ+uW'˜âwÿgoWZZxlòY@Â"ê\`i3Y`Áwb­À(ÀLë ip(Àß¡w䣟{<|sõ£{מݣw%³{9œu5³{­w•s9œue³{± è„÷Yò€úþôóhêÆúÄéÒÁÿ°ŸŽ}¿n_K!ÿùéٿɹ­1�ÿm]Mÿ=1%ÿ ýòæÿ×ȹª¿��ƒ]_ÿM;)ÿ ýïÛÿǰ›†ÿp[K;ÿ.ÿóæÔ¿ÿª•€kÿVA-ÿðÝÊ﷢ˀlÿYF3 ÿ øãºÿªšŠzûjçJ:*¿ úûp=I�~YV`Òð‹PYðG’Ý�YYã€ç‡[XXã€(î¢~Ääð~ W’ ‘�·~ —WV#� |–à€YoïèƒÖYYC�G—XX‚C� -`:”1�[PG”WÉ[ �� ”~�WV¢� ‡–p�C�G�$ÿb}sufvvÿsurhu`oÿ`amfmrhÿjbd`w`arrlü ¡ÿ}s`mbW\mo^X[{wp Ò’ÿafuwrpfÿgrxu ç~¶±}]bYZZÐòá�å�ý™sbz ¨XÐkb ¬ïib ¦W__;W¡ 5L¡_X^`Z¡Y žy0}YWXå ДX_]b[WXÀVá�Y }«  Y ý‘� /X[\]Š¡ ¤¬ ‘ ¤§b ±¢ ʬ  .�§VWV‡¤ð­Ÿ¡™Y¤na i ±à;ýÒ’V][Z7bu|YQÛUâ4³õY;´C´W[«];´X¹[;´TX¹OµX·V9¶—¹òOµC°ê°|}WW½bB [m£|=wЧßÁÙ±ÏVvà°Ö´Vùà°sÀ|v^z?sps�ÒŸpsp ÀÖ±r¿WWZ.2|wo^uÂw*ÆòÁ8ÀÓ�|l[^ï\Zbsbàmm¡Y ãNÁùVUļ�£NÁX[]`UÂsÍW„ÀY õNÁâpV•Ã-`Y£|Z^/\d|X 0hÀ#Ж·È\\ÄÀ#Ðã±Z^Vd[kÝ"ÊÇ WV°â²È![ñêÀım0V V[®=pØW=pK1òVùÓÔD/Ó#Ñ(Õ)°Ó:ÕdTÒ#Ñ(ÐÖ±VW`A(ÀsÔÞÐ}Ö2p(À~Hà|Z^oD�\¦àšÒYX¢Ð¦ÕXZ¢Ð¦ÕŸ°¢Ðù¦à} {_\s·Cê!{^ÙÀB~Ñ"{ZVsßÐ’à{ ’�ÖÑXòæÐßÐ âZsåòÐöÔ“°“0áa’:çq’�šà$à>@’zb'’`á†a’ý)Ò`áq‘hàTlàÖÑWæÐäWÛÐ�êÐùÑŽ“ÖP:äž�Z‹]XD�ü肼ᡒˆläž’ÂàÆà‘âàLêÐ\ {Wt %µ.°ýöâV^ Ysw`jur @ø¥Xø ðõãVüæð.°šÐ ñü  šþ™Ñz^^V[fvú8Ð V1zV[f0WKU2pò)°¯WJ|öd ÐWÃŒ÷a ÑŒ÷`Vq\6ÑŒðõ\\oÿEY/ uù ïœôsy¯Ç€Å€ðÿàÐö者€�sïfY€=0ÿ"ûÿïãÕÇþ)€«�’€þ3€ZG4!ûC€ëÙÇÿµ¦—ˆÿyj[Lÿ=.ÿòåÙÿο«žû‘q€xjZÿJ>2&û€öëÿÞÒÆºÿ®˜Š}ÿrfZHÿ;)þ›€÷çÙÌÿÀ³§—ÿ‹{iWÿE4%ÿòáÐþ30®�Œ{êÅ€[É€9Í€ÿ?dƒÀJ?¿èdXda0 i6â1V@i™Ð¿dX_Z^=póV0XZgVŸWvs êÐ)X0êÐQÀ0b U1ÖMZV07^YZ@ hX^0 yR@ y`hW‚•¬\0¬/JhV‚߯7]. H]b¡Œ0å�Þ" ^[ ‡ñ1ýCpdX\bZuËuuu¡v05#V[Kh{u¢˜Bq7 `M%õV Z][ËovóÀiÑ!m"ø k"[povXÐ"‰"háqm É gI„1¥" ¾£"X[d­ ž½#WV  k"XNq!X”%` ÀÉ"#ÐP  {"Ð 5J ZsP 05!Y:#æòÀÁ0abp·HW#Y`54(0Xfðm qL1—i S0éð û‰¢"VZW_ÇÞÈ"q05PÝý_ÀdWmjoþýÀz[Vi~[ ®"Wdµ MW–ð §5´ž2 ¹#W^Vñýò`2W\bàJy"WN1S3é0ie�„ð4` 3u °0EVßYï DXá Fø°@k WWW7V[ YÀšQ@X]^sw3]B]w0äÛ1@Î1V[szEîEfm‹@^vB[‹@‹@q‹@‘�\WX  Ì_3àà ‹@ž1VVx%À~Ḛš9VR MáC. îDO WR_3 Up ýE�“ UöC 9VRÌ U´WVÆdWVQ Uç„VòoRW5 VWg__]Y©ñØ0¥V—òS>)ѧS[®R´Xõ[—ò´U__XF®R E"ðS—òüP½îTVXVêA3VhWZa !jXai !jb !iV^a‰!`íS\` bßÒdëoEµÇ"_V[f`%À�Œb\’`Üêp˜dWZX·@‹üx2¬`WXdÊžµfWf´`ëlj¦Ð®T2\Ï\Cÿ"â`[ñè`£ ”0^ è`É úaß@u¤0ôdY[ý` t$p9t1qV ôdÜ w^Fw\t´Ü Ð ôdW\ý`Bnw\ôÐsupÐ ß@TqrüanuVä`£w(Ðè`Ú�Zo‘[yàç†Ä�#�”ýÐ?@~½�Lôóx¿ÈÆþöéÛÌÿ¿´¥“ÿ‚n]Iï?1%öûæ1ñŸÿ‡yk[ÿL=.ÿòãÿÔŶ§þg ‰znbÿVJ>2ÿ&ÿóÿÝÑŹÿ­¡•‰ÿ}qeYÿMA5)ÿ úïûà™Ç»¯¿£•‰¥qÿdXB+ÿ þîÿÞξ®ÿ�Œ€nÿ\J?2û#×ûïÿâÕÈ»úã¡çwbMÿ8)ÿÍÌ9B_ffž@d�¦C\XupwñüP “Z!ÓD± �V”0Vhwuf”@ â'•kX[1•:”W^.˜© O—D—O•\.˜ ü:�£ \W[om÷Ÿ�”hay‘—r”�al ¨”kV_—�›”V_±�= µ–ah¨�Þv`[¤qÑd[^^Za¤Ý’Ç[[Wšðõ�[Y7ws[© »ïB¡BÁ! ë‘"° pX`22Ï!@5 [VL#ý�­V#[V^ aC¢ÚI§ZB£8®"[V¿[` Þ([ÿ[ vZW[zÇ�8¢�1ôŠ k Z«`W\XpS%�ž¥Y§ «©ïWp«¨XVp뫤a£ WZpGö Rá£[Ðïì¤WW]Ðú©Iðú ½Ÿ ^ojv†ðz7 X‡ñ«†2²ßWV` W)°X¹/°Z^`å�ª(é’K°@Eµ_ðþ#kZ^€  Z^œ   É Z^ÛA¿3ˆ±vµ@vµ q þb0Z]báþ„²\_`dkô! î¡[°\pÈú ·±·@ã05 ZWibd¢�1;'ZWc¢r�0ù°H±V\[š° ÅZ¦° Å@Æ5pÆPóÀÆÜ@Å[‚05SÅðšð^Æ1 ÄYY„vÆÃ@bT2|ÀCpŽÅX'Z šÆ(@‰›Å#КƇЎÀ2±V€šã¦w³VWs°ÊÆZ.˜(:�ãÃ5pŽÀ²ÅE¡$ŽÅÐ ŽÅÎ@²Å@�+Ö¼0+Öxð+Öû aD죂¤Š jÓ•¢ vÓ›Y]P ’ð_ÎòPn RšÓ^Õ£Ö^žÑ ²Ù^] ²Ù]£Ö]žÑ] ßÙ^ £Ö\žÑqýÙPpýÙ] £Öžq[ þ¤Õ`[c9àk!`àYgý�Ù ‚³NãXçXgó 0`Xz{ÿ[mX`Wo?tˆà5!Ö{æŒéWâ Äžê‚áˆà)·åsj"{á‚âˆàÚãóÓàob[ei‹�@À²øãðrõåg•@øgðÑa�‹@k{þ!lXWod1Óà)=õ Óà9÷%WDòJúý� Óà5!d=òDòòä‡ó Óàìb1ð)3gm—X òäg!µð ÓàÉ!ÀòÓà¯óbQÜÓà/ñg¬ðûvôsvëɀǀëÖÿǸ©”ÿpbUÿH3&ÿ ôçÿÖÅ´£ÿ’�p^ÿO?0 ûG€íÜËÿ»«›‹ÿ{jYHÿ7*ÿòæ×ÿɼ®�ÿ�~p_ÿQ@3%ÿöçÿÙ˼­ÿž�ƒvÿj]P9ÿ" ýïÿßÏÁ²ÿ¤•‡wÿhXH8ÿ( ÿÿóçÜÑÿŹ«�ÿ‘…xkÿ^PA2ÿ#?Š_”!`õ�[ãÕ0^]b?[Wgaͳ%`! É %Õ0! ì£ % K[Wiû KZ_i ü! ß�^[sw¼Š`uh´Ç"^[Y^bwæ�r�Í]”¥Ý’�[™ õ“�ZO€a1^W]@Á“pC°‹P'præÐà\sà ð ‘#!�^e`Zbü”Ðk ]�[VZVÞòüP#X¥^Þñ%'’%$YøÀ ’”Ó]X|\V¿oz–"Xÿ|ZXVo`)—r[ Wp t X"z\Vdbd šw"z÷À/°…#Z2Œ!‘&#°/°g"IzD�� I ¿#WÆ"1 I ”#Õ I …#eWŒ!d ˆ0]X °|O =²W{±Þÿ"YV`\4 |ˆ7:°5 &0m0ÿ [w|=7V&0ìß�C1 =6W|•=5gp/°w"deoNÀ&0X"do·!“}Œ62Aš7Ì@©&0€3bNÀ t%db–À‚%dæpCpÆ7¢pt g"º�`� �d | ÷2û2 ‘% A=5º�&0C1Ð2ü1F1Ð-F#°‚ü1F·"-F¤0ü1DF¤1-FÌ@ü1F*³1=5`F00w"[`[� •ƒ$`Æ"±Ä@Z2M°mV$`EYŒ!Ä@¬C–À0D¬Cl00ÇCó"îFèy1ß@BW "\l!`'S\^/R%U«[X/R5VZ.Sp!`!¸p>±ÃiU±X�sÀxVV^q ˆYcшWï`°xPA€¦ÑŠ£¾R•¢vÓ\|÷Y_a®À�C êPž àRô±êQÖòV îV^äPXþVa hô±—Äf( êPp`àPXbXXv{hàÀV| \_Õ ` ’Ôú²bc`Wá ßñ5S\_¹Ð*ybgZhbFS…`W\^a�Ñ ¡h`�Ñ) ¤dZ½b FP‘‘Ë[V±�¨”Û`h) ¨�/ \˜°É‘‘ÛY]—� œ“Y]r±�¨” ph ¨�ª(’\C˜Ž”X–‘›”X[Ø�¨�cp;pE\±� ¨� ’#% T(’õÉ :•Z)x:�$ ’.#•>#¥v"UluXöÈ :•X)x½:�Ìôóu¿ÊÈþñåÙÍÿÁ´§™ÿˆzi[ÿJ9,ÿ ýîàïÒÃ/¥—¿Š|n9Cÿ6* ÿúèÝÆÿº©œ�ÿ€seWþ[& ÷ýðx�ÔÅÿ³§•ƒÿwi[Hÿ;/ÿìÛʹÿ«���ÿp_N=ÿ,ÿõæ×Èÿº¬œŒÿ|lWD÷5&Ç ûÿîßÐÂÿ²¢•‡veTCëÿ0560R282ÿ01Y20MTRû H�`wWXhö?пäâ`wV^² ‘�| `wÚÐ?\]Y yB%�·]Yÿ`0–ZbèÐ\¾Ð0–¼p\WëÐ’0–W)�_� 0�…°`/v[z] Ñ ¢z‘ïYüIâ`sgÿW[vz\J�—s›�Ÿ�w‘snàzÞ`R“pYV ¤°wÁ¿“X[ ÆÀYÌ�…‘pXŽ�Hw‘â�¹� è–¸‘ ½•×XV èÀÌ•W[� Œ±¦  œ Ì�wà`ckl˜�ÿ°§ f½"ÿ`b^XZ^gs U ZG¤XO¡Z§XP Õi§Wt¡i¦VZåYP i w‘b]WïZs™§Xsù i ‘b]V]k·s µ¥\\¿¡ þµ¥YWXis Ä™¥˜�wˆÐæ¤x𠸢¨�wd ð§ö† ³!’bWXY?Xmbk i ´XVmbp*·@ðsz*¶­À6±­L·V\6±™¥Võ^Þ n·fsrn·bú Š¸s*µ»V^#±p¦·VE^6±=ºµ5²=Í�`XºÐÐaÿXYVz`bKÛ¼WqÐî°ò°~"‘]]]\XèÀw [0Á`\]Eàý·ƒ“\YVi Ü(À4¡[WXhðWFèÀž°“<ÁuPÝ~2ÿ`Y_Wd{3èÂÛ (À�àÿ`X[vok^¿lþrÅsb{ÂÀÁê°pÄ÷W\sË`iw|ëù—r`˜�rmgç aWù ÷2ýÂõ!’˜�ªÂ£ ²ÀÁø¢VÀ )öÿR¸Às¼ÁÁÆ>ЫÏÆsÙÀÝÆsçp5ÐcÔg ê÷ÆsÑ ÖsaQÐ'ÓQ VÀ5Ð'ÒZ\ (À0­Ð3Ze`è°Zz�!ò°>¤ð`WY ÅQÀ„9�´PÀ4¡ÜÔå!üÀ’�__bwujÏ`mêP¯ð__ba êPuá åÒùQ å ` þS_\"]# d#Bàm# t#Bà’}! [å™" Ì á\"E1š0^â…2š3Šá’·!’ç¤1’ç³1$„æÁ1[åÎ2‚#ÅႳ1Íç”Qñ3Šàú3 ˆCþâû2d zâ(AH-CŠà6DöUD‘#&=ó &ötD Hö¤1I &ö“D Hö³1=3 _\±A”öÐ1Ì áŸ[_\²´ð[ã ºö�ºöXܘõ[5Pû’ ôuËú€É€éɵÿ¦—‰vÿdRF:ÿ. ú¿ëÞÑ1€³ÿ£”nÿaRE8þG€ üíÿÞͼ¯ÿ “†xÿj\M>ÿ4' ÿÿñáÑÿÁ±¡’ÿ�sfWÿJ<*þ�€òßÐÁÿ²¢”†ÿrbM>ÿ/  ûÿéÚÎÂÿ¯�‘�ÿthZMÿ?1#ÿùíÜÿʽ®¡ÿ”†xiÿXG:+¿°’bËY]ØÁÝÃöêÃög÷ÃöÑÓ5Ð örÓ $Óö VÀ‘ 5Óö>ÒÁÃ\‘ÏÃ\ÙÀþiМmÓ\gƒÒ „'’ÐÐsÀ\ªÄÔEQ  VÀ§ÓbYöõ`/VV|mÖ‡°QòVÒ°�»ÿý³ ö^PQ ]~tXWYQ &ÆD° 3!E^%W�a HX �ƒò6r[ Aõ’�bÿWbbY``÷ÓGWY`»q °ÞÓûPçÓ�%æNPÃÝ0aŠ ²#`Š Z�¿Vh}-Lbaÿzjdfrvw ßXØ#X[ÿvY\Zhwè²À4 î!só"|ö²Ãaxð grTŸ�4s04wá±ø|`ò°#pavw_VïZVg`â W é<ò2@0\â Zï,S3XZ|ígI2e¹2avg¿gaW>°’aes{2�0R1sgð R›�4Ĕ̓aӔ耡3£1£aofïoru}â Y›�ü"klð =£|D Ù!gm`viI2÷5ü"ffsu»roI2ÔØ"d/jrdfâ" è v1�bð wð£/Bý£/A± 7Gv °nv1^X\ä Ÿ²ÉaÃÈ� À1\WÏY v{°ÀE¢a[?u[dZ]Z* �I$�žHWéñ®JZ8 �D¾2°\W`VÃa¯Z[VÉ�›öa�YV_±p@ïCZæö@[eÂò@Y¸ì@:A' aì@†ðAU 1ð ¼Á9G32Ra5Ðv12R ÏÃ1Qú:PZUgamÓ]RêÃ�1Q]Ð:WÑÓ“RÓ1QÓ $Ó1QçP"VÀ 5Ó1P_:V_'aIVMÑÏÀÙ!„ÒQ«Ã²ÀìTÙÁeVsÒoPsViÐ%gg“FÛVÑ œV’Ð\–ÓÑQVÀ5Ðþ=1X[XzWÿX{`} |¦rra[| �`|R1ˆaZz �iñYHà�`LRZ\[_³Ö/QXYPžÖtSW_¶ñ÷3W^]VZ�cqÂaÜÕ§WçÓíeWõ`ÈDC°âa ç` QWV£°¹u ïp QYïX Ø×#YV×X_kÁè#`zD˜�ó#ú#Wq5 cÖWpYYœ0v“â`xŽñÁr 3Šq&1 üŸ�b0`w`mjp_lfuaà5S þ¦rbrpzwuÿufgjbÿwfbialsùµÒ½tfuw¯pÚXà îñôór_ ÌÊÿòãÓÃÿ²¨šŒreWß<,!üÿîáÔÇÿº­ž‘ÿƒufSÿG:- ÿöæÿÚδÿ¥–‰|ÿobUHÿ:,ÿÿòäÓÿƸ¥™ÿŠ{lXÿD0ýó�Ë·£ÿ�{cO;'þ«õÔ±±µ‰uÿaL9'ÿÿñÞÿÐÀ°¤ÿ–Š~qÿdVF:ÿ, þõð`@�Â-@…�f_ØÁÁÀÀæú�§Óú€g÷Àw�ú€Ñ Г¸ ¸ÐÍÐú€VÀ –ISf__ÝÃI’êÃI�ÙÀ÷À’iÐI •vÐ •ƒÒ'•R’Ð 3•Q VÀ5Ð:G fuC_À‘ð<Á9àVÀ4 f[V[ÿaZ]WlWlëê\âf·a]´VÀb0fpVfr ~í\Ópëî“YV]ÿfZ]X~Ylë (¸fÜÕZœ#¥W" œ =0 ÿV]vmXXWkò  Þ�ï’XV[gÿWVY~Xl $N¥O fT°û‘  ï’V  ø‘ v§X£Ú�w¨±fV_=Y²À¡V_À²Àþ<¡V_WVvmZ]Vkü�Þ�ħ3°bÑ¡N¤È¡!pWlü�!Ö¦B¡P I¡ ë¦W ” ¡^  ë¥^Ó�T°lŠ^ ë¥]¶ F ú¡‚Þ�@²  n m¢ v¤W±Õ’  <¶´Ú‘Pž ¶ø‘^ ë¥\™´BÚ�hµ¬°Õ’^ ë¥ÈÒ�m¢Ú�ž Ä¢ZV [Ì£Ú�ë¥è°G²^ Aõ½Ü± É÷¡^ ÍBÚ�ë¥÷ Õ’L° Þdx[V1¨2_Á&13dÄ4x®0'Ð¥À` èÒ½dÄ‘]WãÑž’ñdaÀËÀ êëÁpçÉ"«Á �Ë‘IS«ÀMѳÆiФÀÆŸÐ ÞAÑÄXD0W# #^ð'! Ö5!é ÖP! :#dW^u^6 6ÖXBÕíY>ÐPÖXê\ÕV>Ði×Xt\Ðxr3¤‰ÑrÁ0óuh i÷©ÛssY »$ss à»ÖЊ &q!sg÷›0 0ÖÕes›0 0sV;p3 RùÐXZÊÀæ<¬ æWYç­àüàHoW\ Mž"kl÷ë3ò0¸¯pô�‚öfVª0±tö÷ Œ7CvâDCváNA n~çs~äaW;pî ©äq´æ<á´æ¿V^ð ò`ò©Ò¯Ðq!^YXX­ �êæWôá].êåW^ è à ôçð70ùà$Pb^ñŠ 7uCY] b][`ðŠ5\‰`õUò¥W¡À_õMñõ[sf`wPtÿ[huf}Oì*ó à‹6aWÛXvMpƒäÓY`=·@[ B±ù³pHÀð` eRQ ^�ïÆôsx ¯Í€Ë€óÿå×É»ÿ­¡“‡ïzi€E/ï ‡ÀñæÿÛ´¦ï“�=€i]ÿJ7# ÿüîâÖÿʼ®¡ÿ’„ufÿWJ;-ûq€ôåïÖÇ}€ªœÿŽ€rdÿVH:,ÿôÿæØÊ¼ÿ® ’ƒÿteVGÿ8% ÿûíÞÐþ±€´¦˜Šÿ~pbTûG¿€+ ÿûìÝÎÿ¿°¡’¿ƒteÝ€G»8å€ oÙpjÿhfmfbw joaoYW%AfR±ÿjhdfzjbfâ \À][]O[W\D0W5Z>CˆaCpœ a/áY4Ó±V<às™…r”V�ï`WVhP ¿V®V^¶ »\¶U»Z¶»X¶Y»�is60@î=0ios ÀVhuffmã boibug¼ð ¿H"Œ!º@òR ¼ñ—|‚2 iv 4~D$gm:$UÈ1;øb¼ðA%^ Ài CJRh†@ŸdkÜâ‹ Xª� “&W� “$[%Zœ!¯&ª!“ \Àßh[Y^`� Ö°$Y[� Ú%X_¯bkè&^ò Êè&\ò Ú Î�h[ëVbá{i 8ü‚b0_`d} ÈÚ (5ò 46Ô }© C8ò 46]>1j46\>1Ú$ZZã!6Z�!6œ"6ª"5W_00·8È ·6•^Ö!¸5]ä!á6Y¢00ï80á6X00 R Hk>à¸5W00 'HWk á5VÎ1 CFu^00QHkCF’ã!CFŽ!CFª!Èá4ó@ò á0Î!YV#^a«!¥G/1´Hò •¥FY>1+Pˆ!Xk]Wò áEWXò!H+SõA¯AïF0A W*ò ýFW¯A á@vP/hXVa½ÀHž=PZ1R ýEVW/1 SX¬l1áEVVò SVVlz27TW[@P º’ßgw__pëb�U^ä`©P�gu×à; ̸U\ ÃV¸tÃPžQm©Ðd¯Ð¾\Àgb_Vðø©P›°W\VWÿvvW[Xhozï.î‘gX¾šð[ziö`jÙÍ‘bXZ`[ $hWX`å$`ºQŸWVoá@ºQVï^oVe\oIá@¡z¥ \scs´tamu vsfx�rã ¡Ó™`�rùø€Îpwrubï`amff oké5’w ºÊcçWÓ`\Àfsg¥_îÑ“p6‘ož`KºD“m•Pb›Púø€l#ðZ\^\\\g{Ytý[p]YZ\[rpp¡kl_KäéSà5tsLã™þ ¢d xlarï{ Ë5"fb_bzà~à‘np~àÖ‘b_•á tvs#³�t¯à©‡›v#àûÝ›uXZ^9Λu—�D”ÙòiQ•®ÁíòÐôóW`Ù÷ðÎÌßéØÅ•ÿ~dJ1ÿí×ÿÁ¬•~ÿhR;$÷øKͶ}Ÿ_€s^EeÿüæÐÿ»£�|÷hQ‡$ öàɲ�_�~q¡€U©ß9-!©€ôåÖµ¿ÿ‘ƒn^ÿF.ÿõçÚ}ÍÍ€±¤—Õ€ÿ|obUÿE5%_ôçûp�ÿmhWZWZýŽ5"mbYo÷¯‘mbX7\}—à÷ ¡çƒŸvudñ€ä†j™dëð˜hd±À“`ÿ]V^ {i+1$•Z-‘ 2�×�×Yk L ÞC”\VwuO—sO�îÉ�YZVÝ€êÖ‚XJ‘ O”X_\wu„—sO�ü\ÀE Y`uW³wy“¦�­”WjJ‘ O”Wµ‘½P"/mWW[��i”Û‘÷sÇ• Yp»¼„Òmv©Ðsç gþ•‘ s ì  mÚÀljÿwbrupfuï ö¬fpwÏuf O�ä�i`pdmf O�þÄ lwZ Y[ÿV\^]Z\qè'"' ¨ð¬\£[Ztd¢[_˜p þ\ÀlX^Z]Yëgpúvlÿs`mwrhþ­ brpzfuv?jrpx&© ¿Y[ôĤbvrgw 9¼¯vV^w· »v«VZë¡ ð¦Xë¡ º÷j¨ÐŒÁÂjås à@à¨ÀjsW?Z_] úB",² ðÐ4¸4`4¸©òôÒjÏrdfvëpWrjp¿Z^Z^bsÉÀemm·a^—p pa>‚´WWs�°ù{muq�XZVz!ß~ F¡·WWb­µ ¶° p¥°YWª°"®´¶¶Ö²­µã¹Â·ͶòàÙ¶¶¶­µÉ'É·¶°`jmùf§°«±`bëÌAâ[ÁXX/`eÀê‘WÅsÁcÂiÀmÿfoWVhj/`dyÀ¶° –Ä ÁBeÀ|Àв°Åc½Ëd±eÀ|À“ÅVW�ÇgG±a[ÀfpšÀB«·¶°“ØÂÙ¶¶°ˆÔ™Á·¨Å¨²®´¶ÍµYoª¸aÕi²Á¸vТ²Y`iÙŒÙ@ØvЫÂXiÑXÕvÕ€ÂÒ­¶ÏØÂ¸ÏÖ•Ò®´ HŒÕã­µ é· vÕ³WoàÂÓ ¾ÄWéŒÕ]ãñ¶kéȺÕVo Á8äUå¡âƒÖ®è*· ®æ`¢èUࢲÀâãÖðé@ØUàÒVVH±Å ÄUà"ú­µ7ü·ðæâê Uà“Âsô’­µ ‚ú· UàlÁhûjw­ jbvýk´hjbifbålрⷳý[W ¼#° Äôsp¿ÿÏ€Íþ€ôçÛÎÿµ©œÿ�ƒwjÿU>'ÿùëÝÎÿ¿©“†ÿyj[NÿA4&¿ þð5€ÔÿƸª›ÿŒ~o`ÿRD6(ï I€íßÿÑõ¦ÿ”‚p\ïH5]€þÿë×ïÿ��}m¿]M=y€ÿ ýíÛÿË»©™ÿ‰xgV¿D2!™€ÿûîÛͽ¬û›­€yhWûF¹€#ÿÿ š™™þq`o]ZmvW\Y`p›pa¾òo^Wâúþô€ò[^p{"]p3ço %\p}"[pš#ÑZÀ wù�wWpà wä€ò„—˜«_`UY_APwY:/Ûo Ê@p½ÛXo X¥\úw"'[úå™#X•C+o ŠUX@p C ­¦²ºWk`WXú "v)VcºÄ`-04APv(V×–Û(/ê*oÝ&s= ê)[o 9„™ ê)Æ] 8ù� ¤ê)@pê)´ j:osJ0ï`mv‘0Ïoôb�3[]§\`{‡0œ;Z«1œ;Ya¬0œ0lÀ¢4ëZW¬0 Ø9Y]Z*¬0 ë;Y¬0 œ0%Tô1 Ø9X B œ9—XZ[«1 5K¾2èœ0�6÷]IVZa_`oJâàœ0¨@òK_V¤!•”bò^b•¢F]b°G„d°Gù�¢@–CZ]ú©ÚG,!¢FZsLÚG£!”£EçVUX´ VW@ 1W²b P–CW\„”ê PT[´ ¢Fµ „MWQÚFN#kW´ Võ!¥W@{§UsÉ¥W„¥Wù�“$¦V@pëW´ ëP°o[|mùbýo`Vx¾þÖ�oX]|w]·®’oX[*`.eÅY*`.`–A÷VVõX�JgWZ•#bWa`ibVò``аoVW^ÿd`w`arrlå m Öβ†jZýÓ”Bmw Z]VŸV h®dÌpV³ »`É�uXGP‘Ô€Íb΂ Ô€¢°mÿosX\X[Vÿhuffm «ãèeZñh ýgX$Ðôeyòg ý`^ äì`xý`×�o\_ŸfJ±]qóI"b]p^fîdv^pvWf;keuWdpZrí[ypjet[^½¢vVfdu[WVpuZ`pduïZ_pp<ý!ôór õÐÎïÞÿÍ»ª™õˆeE4ÿ#ðÿÞÍ»ªÿ™‡vf÷UEA$÷ôMоý¬W‰xfÿVF5$ÿòàÿϾ­œÿ‹{jZÿJ:* öãБÿ¶©œ�ÿ‚sdUßF9+¥þýð­Æ·¤ÿ”†vhßZL@Á$ÿ ýïÿåØË¾ÿ´¥”†ýwÙ]PCÿ7* ïí€ÿdsfYwD‘sd[Ä û`"bsdW^tû ”bYw9ý€°sbW¸`&°~‘`[Vk ”K`W/ �õ�^†p½À”Bs^[]£! “ W•�Ad�×�s^Ô@zd�n°y�¾¬°ZVd•Yˆ{@É@d�N‘‘@Xrs^çðdegbsQ`�VV/b¾�´�|¸�¤‘Yu’X[ °U�'‘ g?q¢ð� WÏ ,U�‘W\´�¸�v‘W[Ã`U�¢þ�WVê“r!± &³_pur[ã`:Ý’î?¢X G¥V[Ç[G ­[¢YG] U¨ °c¨Xo ¹ G Û0psr‰¢^Ÿg[;⢗¤ù¤ EppgsrXÿ\Ygm`hSG ¶¤W¾¦G¤åg]¢¤¤ä¡Z]¡¤ f¡ä¡n¡ݨY;ݨXG a°pabV[¤£÷os\_À`Úý5´YVW`ÊB¶XL±B¶>Ð`¹B°$ao_Yêpšp´Xépþ‚‚±]C‰µ>L�—¶[£�ð—¶Â�‰°Û1iXYZÿZWuV\»:¿»Zкpò˱а%^Wmv-_>!Ÿ«_v1v("«AÊF@ 8^QÉj&0U^ù˜«]1hÀ%‘070xËl@jU]ù xÈ\]gP À®ÆƒQÀï¼0F¬0_V¼0tž# Ð0…ðÀ­¥xÈY)_V1ðÈYÁØçhÈY@hÀï÷3�ßÈ÷00ðÀV× A4eÚçPvÙ\^-!™ÚäA�¬Û'0ßÀœ×>!‘½Ð6Ö º!¢ 8YañÙÄ UXU^çP áØX@ º¢$æ]×2éb Bé[ºæ ½ØX[]��H½ÐfççP†ê¦téËZ[¬0!éƒQœ$©éù1ºê„Ëà½çRçP îêgP îéX Ñ@ûÁ0 8òº,Qºªï_„ÁîèWÑ$dú¦dùsÁ†úìÁTþ Õ!"\b ºúÒs ºúìÀþû¶ ôsv ëрπõêÿßÑõÿ¦–‡zÿl^OBÿ5%ÿûïßÑÿ´¥•þ1€xj[Mÿ@3%ÿñÝÈû°M€‡t^ûIY€ óÿß̶¡ÿ�ybNÿ;)ÿûðåÛÿÑŲŸÿ“†xjÿ\N@2ÿ$øÿäÖǹÿ«¡–Š¿~rfµ€NÿB6*ÿ÷êÿÝÏÁ³ÿ¦˜Š|ïpbÝ‚5# ’1�|$`o!_ #aŽo!^" o![ }¸±¥@"�®WV"V} `o!çÝ£B) W\d;"W\bû€xa��ù¡s“oïYd br aÚ�”W “çV ��`WaÜXr) Sa“W^ã`)tb!XÚ�_Ô`ÃÚb€ ­°#&ZÝ#&Y#&Xq#&Ÿp#&V#%ÏV_in#Yñ iõ€² áÚ£‘vc`h$V\ÆaaáËbT0i° 8¦ –@t0X\b`à ÄR`b` ¦ Ÿ0t0W[û^`ÿ�]`Ôü”B×!VZbüXbt0V_XaÝKbuvY! Nh7¸`6VÔ` §÷’®%2V-4u 2 œ4B1V I6(1d;661-0$`uhñ‘· Ë augb` ëÌÚ1u7�V \V]80ðî€�1,à ]V^T0Ÿ0ƒ1Þ p±£‘t_ï aÀ2\ ÔÈ0õ€tO Ò3s|YºÞ3wY‘Ý“q öÆaôDqssl_ÿ}fmmr{Ÿl’_ABu‹fd@@” Bhuf}@@Ô .E‹fp@@é`Bdëfb2E ;Haurõ{JAfIm`bl²@@CY]„F³“˜a@X[ G£@+C¬@!C£@>C¬@B3D£@CÕCIB£@I§EZHàIqEÌI�amxfŠA Z†DŠ£FW­H (FTP!C ˆ;FTP3DŽF}SIB�@øCTPZHˆYqE$tY.T µZ†D F-U9@‘o_[mp|°rÀW]\aw–Ð4�°f ””¨ÐŸ—\XdÀ%"°—WdÁ¿˜V¹Ñ¿�Ö(“W[ìÀß™oéߘ à ý™o ß—ñ ß—WØñ*¨ìÀ© *¨ýÀß—V?ÐH¿�†!`ÿ€ù[‘• $[ ‘ i¢^Ãq¤n`Hp–§^� –§ˆ –§Í°ÿ€%Y‹\_#À¿�ͤtÀߔߡ–Àا‚ñõ¨ÜÀªØ¦^ àئ\íÐ$ئìÒ!.¶ð;°¢‘_YZb^]›�Iºú�I¸\›� iº ;µëZ^>à ‰¸o ĉ·#À ¥¸TÀ;µWVŸ[aùbDzsÞñ® Xܰ|ø@DZ[[}[q »Zoa0.뵞ô²XXYvKÅVÝ\ó³Z]VÓ` ]-ÌX]W,Á 1ÍXXX,ÁIÍä°,Á aͯ ,Á yÀ¦@ àVó°g~~ ~)`yÀì‘!ßpŽ1vXfÿmXdb[zÏ&Ó"¸ÅXZ÷zÄÌWXz!ÄÀ¢‘¸À¾ÂÄÀ‘‘¤óÂÓÁüÉçÁüÅ\Š<ÐY¿ ;°%Ó`R¿ ;°!ÖX¿ AÛTò /ÙX<ÑAÙW¿ ]uÛoAÖbnÐÒ›�I´žÑW›� 1 AðDqhG@p•ã$#XذŽ ÐÓYs iïÂVWW­1Á¸ÐèÔò°¤ÀõÖV_B­1¸Ðÿ áªa ¸ÐžÐÒ o˜ ùXŸ gw˜ ‘!X³˜ »ÑW^ÁØøÍз!€ZX |Ÿ0aäXZ mç¦ïП0ù\«` ÒõÔWQ°µñ ˜êo! ¸ÐaâQ°b  ¸é¾°œ¸Ð%Z^_aðÖèo¸æ¢âòéò ÖçÂb ø°¸Ðù^]»,÷\äW/X\]Ça›â–NóZ«`âYb0aâXYYùÖІ÷Xms îy÷X WöYW*«` YG "Êð» ]YiwP ôshìïpõӀрíáÝÒ €µ§€‹}m^M„ úê-„ÿ®¡’†ß{pa?€Dÿ6, ÿòãÙÿ½¡—€gM3i€ÿå̲˜ÿ~dJ1ÿýäËÿ²™~gÿ[OE6ÿ' ÿóæÙÌÿ¿²¥”ÿƒueUÿE5%ÿçÛȼ¬œŒáÿlWB,Ÿìÿ°¤BwëbZû0XÓÀ`bdŸb SAßVFèï f ÿïˆÜnðè ï nðþ ä/ ï…`wbWÿZZfl`QU[YdiXc]iWZwe‰²diö€w`8pëŽ1w“2^VÙ_¤À²3w`pp~÷­X|z`uWXZ Éð_zÑÖ # í¬«`Ô\M`aP&s"&&‚%’B(d¹ B › w\&Ð7u�‘w[ãþ#VýÂv � v0wwZ[�`»”"ëY_�`Ÿ$X\Yºð04bwX[Æ >¹%Z_^ Æ'b0¤Æ&5ð Æ&Æ ¹%Y:Ï ú'\¹ K`_wWX^l p ä4k!p ªÁ}«3’{8pÙÔwÏbsÙÐR@vvO]WVdÁ0XjàϤX2!ÀY[ W_0Wo¬@]ÁÀð•vDZió°aAÁÀ Ñ †=YÁš1 Ÿ=XXEV™2 ¸=‰Áš1 ÀŠ4#ÇÇaê=@ÂÇbˆÑ8SÅ MXÂÇaˆ7MÀý3QMˆÂÇakF!ÄxYÀžÀ¬`k0ˆJ(ÀCÑ6!ÉcñyÀ¢K‚EÒMÀ~DŸMaF ìMpÂÇb]{Fk0¼H �ÂpÇa k0W2\TÀ¥~ý°ÀªÁvi@Ë÷€u3 ò°\fÿZ]Xoz`X fv/�Uý`›PYÁr¢TªPªÁu<0þ(‘sYar{»)$2vsWÙRÔßP‘‘sQñ ÌPà¹Ì¢õRß"vgPÙЪÁE ÙÐÍ¡ÿhdfw[ ¢b)bZ1`(‘*a:éð ?iX 1`i¡¿bX>_cWó h`ö�a]\ ò¨Ã̰ÐQÙБU_‘ ”_ ‘ ‹ Þ¢‘_\Y_<Ñ$D5“¯`^+Ѹ`«d]<ÒŠÇg\<ÑÇf—�+Ð|¸`‘bVVs �Ìö�þ` �Í¡^_EXS ¸`t7°w?�¸`‘‘^0tð¬�.¸d^^bFqŸ”Rp²Er4�r^Yb „jw“°jw¡jvFq h4”›qË� ju\Z?�ý ¢uWWfvd÷ “WWì �´Á^V ÐVoïbh 4� ýôótÕÔÒé »ÿ®›ˆ|ÿpcWKÿ9+ ÿùìÛÎ÷¿°5ƒtÿeQB3ÿ$ïÿÝË¿²ÿ¥˜‹~ÿoaRDÿ6*ÿ÷éÜÿÏ´¦ÿ™Œr¿eWCuÿ úæÒÿÁ­œ�ÿ}kYGþ�%ðÿßν¬ÿ›�qûd­H;.ÿ!øÿëÜÏÂÿµ¨›Žÿ�t`Mÿ>.ÿX9t?ˆoC?è\ÿ|V_]Y udê@æÒ“h¬�ŽPþ†ñ ùŽP0|V^^_¿ Z ·züžÀó°W`ZY0ªPÇÀ@–{0ªP• »zvüš¢zívn•VZ^{{–XZn”;u[‡à”—•0¢—[ ¢—7�¢�0>›‘Y] ¢•+0; Ø—[ Ø—<`êÉ•XÒ’Ø—YꢕW«�§[®§ZÉ•WÒ’ð§êð¢�e zs[¿WZ `£XVsð l¥Wu¡ l îÿÀzsV£P\Y� –Š¥# • Ì™¦ª�Yïફgƒ•𥒢/à™¦’¢gãÌ 2ÐÒ¢Z^ gÐ ™ðª.`°‹£p£¢`Й¦£¢g=  ²¶= û¡ ÊF¸Xú¢ 4¸c±[ù Ì d‘lvo÷Š¢lsbÇobj¦‰°P‘gs}rÕ£jw:г†¡µ®°�´³ª°J¿¼gª°®°ñ¡g¦™ ê´æ¤™ =‘Â’ù£ù·,´™ �³V!=³…�Ì a¡gª�Ÿpl d‘KÁ |´KÀ.`Ð_Çyà_Åà‘yÇ[ADÅwàOГÇpyǧY_Å#¡¼Ç[ƒDÅ= ¥ÐÖÇpÌ¢”ëÁ¢�ÐÐza�b[°Ó®ð—NÕW Ða¡af œ0°&Òt Ð ™ Ì‘8ÑYi ™ &Ò‚ 0È?Õ‚ JÐ ™ d‘`aO[o °nÓXÓàÜÐ{Ôg …ÖWo»’×g Ô`ù[1°´]VVw]ÿ[VaW IºÖZVÅÑÊÐ=‘¿ÑDÈ0ÅÑ ÜØ—PÅÑ ÊÐfÌ‘W\Sà’�ôäÿYVVYKÞçX<2zV}V¿ÐY JO‘ïxfwâsmßxv ñ2xb/f][]�À»âXàS\V—aaæZká aæçX[Xï�aæW[WÔC°ŽçVw�aæV[ÏV[aà•!~læ™à u²Áà_Çaml00º#Ïá ØÈàjðÎáY]Óâv@2Òìãn çæ0Ôáøç*ŠàæçWóÈଭzD0ôÉzj�ÔDð•!z5Q ÎswwÓXl×Év ]]·uf|ä íäx÷" í•!o__ß[jV1wbÿm[\VoozŒ²ð› FnR®øÕÐ`‹¿ýÀ fÖðwò&ôsqýpõÕ€Ó€ëÖÿÁ¬��ÿ}m]Mÿ=- ÿýíÝÍÿ½­��ÿ}m]Mÿ=-ÿöçØÿɺ«›ÿ�}m^ÿP@1!ÿðæÿÖų¢ý�}€m\Jÿ?4'ÿñàÿν«šýˆ›€rg\ÿP@1"ÿïÞÿÉ´ŸŠÿu`RFÿ9- ÿóå×ÿÉ»­ ÿŒuePÿA3%ÿéßêñ ïfYb0PöüÑQúkbZsÛv÷hg? SžfZ d*þùb³Qy ê}  ùau[lh 2nQûfY£PuYoZd3hJ ^�O�g¿hpWy®ù_u^�4!_mÏ xc!Ÿ  î¨\¨Y¾¨[WaŽg8ÙÐyUXwTp4@•îd÷ý�V›Xaä°Ã>0"© "W %Wïa{2afXvÿw}sf#þ?Xso]^X`ovmWb6PV>¬S jà`l[#b&Z¯X\`m[#b%gV"{Z]!Œ&k"š#QŒ&€"š#b C ílèVoo`k>Í$bX[o}ÙÐb$ß'é šß'f^�bþXf|]dW§5/1Y0€0U1]0Š0 X\_iY_`ÿfXZX 10K3œ0T4"ñ÷a3Q0új0 C V^odjzYaf ÖïQšz4`ƒ0×ËÑz0Y"~5 ‡5 1“1‡0x2_Wodzj‚1 ‡5äÃ0’2‡0WvòG"M á1`b``ß`f†tafWã^]†`=3@`ø0�—Pmv ˜ViafWI�T3WP0yT0x0WX[v4¡˜0Î =C“1˜3W"|7 ‡3`C“1»3dP~5lE²5}EÕ1�2ˆ nCÕ5 ‡0UKPkê’2˜0^AþþvñfWvs`uÿflf} ˆþ1ÁfVWaf`ïdXVf0tžÕAVWÝ@Ußsl~oW^ÿþ\Vivfi/�RZà60çJ3Rd3I RçðV|P=PPQRR9ZUZ&S-P<@QèÐVbKPQKW^&S-P!QW¹ðÏbv=PÓP~[Œ³àf0 7â­R™à ¶Y ¶XV  ÔY�À¶V«`VP0 ¶P«Pû îÈb|WWW_F‘ðSd�ij'�g^‘ç;hR�Ji'�Jg]‘•g]‘zi'�ªg\‘Jg\‘ôªi'�JeV_Y }m;îÏd�¡Úi�ÀÌeXÕa ¤úi�úi�ÚgW’Õa*y�*y�JÚgVÕa Zy� Zy¢� Ú`.‘¦ám@Iø>‘p{i as¿[^ ¾›wuµd§s ®yhp§s ®®xru§s ®p÷¨ ôómú×ÖÔñÿâκ©ÿ–ƒqa÷QA`� ÿöãÕÇÿ¸©š‹ý|5^O@1"EÿèÙʹÿ¨—‡w÷eR].ÿ üèÓýÃo£’‚ýoyK:,ÿúßïäÙ�Ãÿ¸¬ ”ÿ†vi[ÿ?$ñÿÔ·©™ÿ‹{l\ÿM='÷ÞÑÆÑÿ°¥š�ý„ÙgN5ÿ  úÚøN ã€x0\bs`{h[DŸ{µ\D{­PY@ð ƒ?ÿ†G|à �Ì뀑 b{ûèÐVÅtÐ %™HáVòtÐýø\_bVß\a+™R\_ÞEaJJ2\^öYÐGs’]] 8|•§ |•X|•Šx|•‰ |”\_|�î�\VW; þ$‘[iX}Zb`ïdjpÏñb•Ï›WèÐà�zÏ’}ZsFâ2à� y¦jbý@ß‘ý í[fk`XÏiaù€e�[bÿvuWs||+£A¡lk|I ª=£tD¡I¦tS¢üI W�[bkuXs ù€L¢kt5¡y ù€{¤tX ù€y>¡jXVs•ð! ƒðN§ªÞ‘�²¡¼¢ý§§lܓեðý¡å¥÷“Ñâ¨úж¡Z„ð û×>¡Ö�VØí£&±N ïEÁf[—`|6aDŽN²©V°-¡`2¤ –¤Y‹| PV° y°u»�¶t�¶bÓV°L0Z@ðd½§²[V°´Z\лµV°´YÅà�ѵ.а´qð °´Ù@ |°°ø|wXW6ðdP°ZÝ ÇWWðöÝ"Yz� bZYv§�ÿ"-Âa3Áx8Àà@-Àdv]V2ÂÉIÊC 8ÀUzõ]C 8ÄvVXX�_^]Z€ÄB…ÀVW^_YüÀxîv&0æwàý§ÂaZù y@vuvYVì°ã°š|ÇÅ¢ÐÁšÇÀX¬Á5üî"¦Àmv[bZvã Àê€þÃaZv¹Wð ×XV|* b×ÑLÁ"ÓÒµØW'Ò 3¡ÅhCvY`Ñ ÀgÖ¼À'Ä�v6ËÁ;0ùÅ7*l•Ú¼ÀêÅbw#À)ºÔu#À¾ÐÏmX¨ÜÑWù¨ºÔdWX~ÆÖ`wY\é÷W èW\®éW çu àN<éW <è)àZéWW çd àxéˆû xè)à–éêÕÖ["*øÀØÓóÁøÀLÁÝpÐÀiZ[QCþJÃkouZoZ…w^V° Ñêä^ V°|êàRÁòãàùätÕ ñc³Ykl� ÓuYÎàîgjbZÏ k@öBÀ Nð ÑEð�ÑJðNðLÁzeòWUÀp ±ÞBJvõað ƒð*Ág6á~v|�óbZQs0 �ª÷aµò �ŽzvYа%Ð{{ 6ôsfæ×€ÝÕ€ïà±@Çÿ¸¬ •ÿ‰{m^ÿI:)ÿ úïÞýË+€¥’ÿlYF3ÿ  úçÿÔÁ®›ÿ�„q^ÿK8%ÿìÙÆk€ÿ “€mÿZG)ÿãÀ�ÿaC6(ÿ øç÷Öű£“߃sc-Cÿ4%ÿôãÖÅÿ·©˜‡ÿ|n]J_;*ç÷ûðóÎ å bW[?goÂÍ!Ù÷gäV\oOoÁö àgge�bXÕ Åg¸0é@Ò.1fv‡s7Ö?E7W�=7L0÷× ­ÿ"b�P^sGsrs‚Ðå{p€Ûþ²bW9"ù˜—¢œ@vv, fvdÝÀ‘æœÃwXb]ž6�o ɆØg áñ á+×uY )g (¢ñá00ÖWÜN0*g0)ñ0(uV`*g`)"ñáÝ�+òŒ�*ñÈâÿÃ+gƒÃ*$à ™Á0a£¤Ó­3”²ù%`ÐŦ@ßÞxVVýa9±VvvhÿaxvY][—µ27Y�P@8ZãN9ŸQ@8XêN043`3PZYý{B0amY]/X|[^ƒ�Š=@2bŸ:­;>0›=Ð=.½=]N7`Y3á1ŽE3\N0:Р_Žbpwvh›�Ñâ:EvjC@GIVABF[JâUAm@ÆÞQ _^6E[\[\BAGG¤—AUA IyCmGZôÏ@BAGGYXYX’BAÙKUAÙIfCèmGZ1UA mGXZXEZBAGG/QUA%YfC K[UA m@„°61ç¿}’k�¾þŽCVvXh`\^¿Va`$‰XY¿YWd`›YX?XWb`›Y‘pJ—P›Wd“P¼QÔY‹Z]¼QÔY§P—PØÔYºP—P#ÕXWVVÝP›W`¹PX½P¥ g`+a—P fWéz“PTa YiWVYJ½P YgkòPAai”?`—PYgb¹Pza ˆ¥ix`—P `Ö-`VÿXWWbLžkVX t3!VÉWÔ`ÌÜ`^iís·°suZ[ÿivfiY �ÈåØárpe�auw[YYБÿa]^lVvwÿ`uwfu_þÇÒ`v}mjpl·j\`d:°d·ýU’`d#@d³hp„°`[�3Ñs‘|p ‚pyq&#@ �txQ ‚pe�o^[[‘*Z¢×^[Z®r´pf]x4d‘?]aYWWÍp>*À\g`a.� ÒV°�@ôóköðõØÖßÏÿ¿¯Ÿ�ÿ€qbQÿ@/ ÿôâÑÿÀ¯œŽÿ€ui^÷P??%ÿ ýñåÿ×É·¥ÿ“�o]ÿJ7$ýþcŽ|jÿXF4"ÿþíÛÿʹ§–÷„sƒP>ÿ- ùèׯµ™ÿ‘€n\ÿK:)ý¯ÒÁ°ÿŸŽ}lÿZH6$ÿÿÿÿ„VRìÞƒ Ðbf‡`xW[XfM.Òó„-`³ úpð„bx‹`dünð˜YYYxÊÿ‡b �YÖ@ÿ…bawW`x?`=3ÿfaX{xZu]§ >Z™¯�j™YR:ð {šã°j™X‚ I �špj™ qj™qVù±j�ð‚aX`d‘Gvj—ë�w�á™Î©�vó™ºP �«ÒÀó™+1á™Ð }sá™Ü�vj–Wz�9àY�ä“v¢W � ~©º�lÀY–v +1 ¢§kx¢³«¼�³©T’@m§ß¡À~§ß¡W ³©&,`æ©+1÷©Ë�Wv ¢§fx¢~§$G±W =¹"¡N¹œ¢ =¹±N¹+0X ¢§Ný‘X¦»Í<¦ ¢}Ȱ©¶²~§îB¢}ȵ`WiMpí’¥÷âÄ]i I É¢!Ê�¡ É+0v EËž¡Ég¢¡żPÁXÜ8b·gWi”Pks0`©äâ“Âv�›Á È§P›Á ³ÊšÂ Àð�”ÁºP�ks Èº�›Á– ÈW[ÀÂþʚ¨ÿÈVÀÂþÉcpBal$ÐÜÅV^DÐJÙU]WÑJÙ\WÑJÙ?[Vbb JÙjðWb JÙX�Ñ $Ðþ^__] W)QÃâ¼ÐZÀÐÄÐtQ¿_Z^PÓÕ];ÒÖZÞÐ^^«p XöÖXÀЕöÖWÀÐ ÞÔ}q”}PÖZR[3âý iYb ÈêsRY‰p}TY[é}P^Y‘1u^—YVviÃ@ ¡Ãþž[warsXó…�ãbsþœèsp`sT4u�áp¹áÃ�á”á·ÓÝ0 �Y{à+[bätòåàþégä%ZÛúà -ûï$þç ! Oøà ^ù �ä3!ÚÜ|ùà�ŒúM |øk!¬ùàмú} ä äûÄ!ôsaàëÙ€×€îÜÿʸ¦”ÿ‚p^L¿:(%€ïÿÜɶ£ÿ�}jWÿD1 ûøM€Ò¿«ÿ˜„q^ÿK8&ÿðÞÌÿº¨–ƒÿp]J7ï$ƒ€ëØÿŲŸŒÿyfS@þ›€ôáÿ먕ï‚o³€I6ÿ#ýêÿ×ıžÿ‹xeRÿ?,ûóûð5î9ldZ60Xod§x dÔWÛˆàòQÛóºPÛ¤óØíàYelþ?"@RØ?ëekþ‘‹?`Ûží ¤‹ØÄí eh’þ ê© ýí¤êØ #*íeg†óPlaÌàI(?`W!D\*V"I(,`W!‚*JV"ed�W!¨*&V"!©'g$¨(z$IÎ(�$ô*V"Î'$ŠaW!:V" 8g$I @:V" 8�$ f:ÚV" Î$ix–ÁWhŸa[ ÁŽÃ“1[u\™2Ÿ8Z]Yš1•²:Xš1 ²:™2ˆŸ8§Pš1Ÿ8±`š1$þ:Ò2 þ:™2Ÿ8 Ðúš17IVZha_“JJ¿2 JJ™2¤Ÿ0ð�i-ÑÒ2 ƒDhÿbWba\u^uãÎ ˜Fe�uv§GaaÐu¹JõVÇ@§FVla^uXuÝIº�Hp´ÝIÅBÝGka˜�uÎ$fzb`í‘P!ÝŽÃ,R‡�4P8Yœ¡ »à8Y7±Hp8P)Si‹`u1S 8W{Q3Q TqZDS …ZYFQ…ZËXX4P…Y-Áuá …Y7±:à…YVuWr4PøZvÀu 8W…f0T�Ä%bP‰À$iWSijS1g¯aRlQjijS1g`,ÿöäþÀÀ®œŠþ·WE3!ïýûp]ÿ·†^ð�viWbµð\Ú@ùõÃ߀`|Z][èì@êˆãƒê†Vk|Žä‚�–² æ€.˜bXXæ€ê€¹ÑÛvXFá ®ÎvV¿^bfdv'°ý ÃtaWi^XXkg1g–´�ps�w˜[\r‘Øw˜²°s�0x—Y_ªr‘­™Yr‘­˜XZ§’Ñ™XYs�w˜´©s�­˜Wrr‘ ª©^ð‘w˜Wƒ’ ª©[ð‘+©[r‘ ¤©ï’+©q’ ©Vòð‘w�tQsvWXïW[ 'á:>ù¢sv[ èàÒ ü« òásaV[WVÏ¿¥3àÌ̧tàÌ .±rv÷jzsÕp` +üx“ñ bs\^Yf ü«ø ü©½0ì`àü© @Sàü©h@aöü¦X{°Va9-W¸Ã°fh¹¾Àçdh¹Ô°b\h¹ ÐbžºVš°5h·ha³,øª0'f¹t²Â¹†²ÉÔ¹˜²Ô¹Õ`a%Ô·f°š° .É–8³Ð.Éü`a .ÉWp×d Ô·`±f9vɳ dvÉÕpbvÉ©›°vÉWp 4ÐÔ¶Wz±}Ðü¦ÙÀn³ a âÉYY °9âÉ @dâÉh@tkÐâÇk±dÐÇ�k“Áb<٦œ<Ù©a*Ùh@fûÔµW\X[VV\‰†ÔÉXÅ@‘Ñ–ÐÕÑos_X/Ïgn‘V `ÆŠã»Ñ—0"ÂÑÇØª0ÂÑÇØ½0ë~zaÀ¨îÙX~g˜°ëÂÑÇîÙÁÒ hÇØ¸�ÂÑ&èY_ÁÒU 9éY âLéYÁÒQ ÇØÜ�ÂÑ&èX2ãÑ ÇÐÒáŒâXúÐ +Y‡çX âèg"'`˜éÀÓ ÇØ6 ªÂÑ&èWÓÓöé[* â ù[ÁÒöéÜãé ùÀÓöéVZ~Ïzb èh@~zHð{ú âŽûÂÑhú"ÁÒÇÕÕ–à½à\ôsk«îõpÛ€Ù€îÿÜʸ¦ÿ”‚p^ÿL:(ÿ óæØ¿Ë´§+€Šÿ{naSïE77€ÿóâÑÀ¿¯ž‰K€_ÿK7%ÿíÙÅï±�eŒÿêѸ«ÿ “ˆ}ÿk\O@ÿ1$ÿùëÞÎþ™€®Ÿ�ÿp`QBÿ4"þÿìÚÆ´ÿ¢�~lÿZH6$¿îì�fƒzim�`ì@1`ÞW4ÙAíf¡BÛ³B�v`Þ íÑð1H=�1G×BX æB$\_‚à>(WYõ M&|Ö WåÆm'V]ç | 2#|X¯_^l'Ww!ê|'W‡!«)ZXõ| 3"zY\> $!voR°>&hYaøÌ%Yhi Œ&g[ñ > òÎ#gû0>&bWX_+Œ&a 16FAà>&p0€@> Û€dv^¿_WVVWJ l÷\1Y Îk4X u0Î dvÛWW˜�÷l3Wí €5V^ª�öý\0ugdVíZc1X[%0ÌE§8Xc0¦ ¹1¾=ÉVŽÐ¹1×0ƒ1p|¿oàò5móý0[1pY]kÿ\ooÄ�x’Fp Kg” IYBA@L†�@K<@@Üš CW[AÃÐwM¼�ŠM<@žEWX×i]ƒC²MgoÆM<@ ž@ BºABLB îL‚ îK<@ ÚI’‚D $]*@8]<@úž@\0jYdjpÿz`][Vzg|¿ÂdR]ÕXlVvP \0bX/[bYV@ž@ŽXhL œZ<@œXW[@!¾[t�¾Z<@¾Y—Q=ñ[gÂòY<@ù`G‘{r^VO &eI 2g�[\ 2`Î Fb NgZ 2`À¡+`óYW 2gX[¾hgXXZNgXë2`(aWkÿaXZ`bVVÎ�`ÀPc‚@ê2eW€aNeWVK¡eVªg’и`þÀ¡vsZVVdãJ?"ý`L�dìpÛ„z}�`u vê‡z}Å u 'xõ€#p 9yæž'x+�¢ø€'x=�ø€ ê‡f´åæ€ê‡d|{r¦ –Wb2pø€ê‡bFõƒ '¦wÓæ€·xõd>’ê€ ®ôórý÷ðÜÚþ ‹�seÿWI;,ÿ þïÿàÑÇ»ÿ­Ÿ��ÿteVHÿ;- ÿøêÝÿÐÁ´¦ÿ™Œ~oÿbUH4ÿ  úèÿÖ®šÿ�}p`ÿN<,ÿöäÒÿÀ®œŠÿxfYLÿ?2%ÿ þñßÿÍ»©—ÿ…saOÿ=+ÿõãÑ¿ÿ­ Ž|ÿj]K9ÿ' ýýF‘lka h÷E’li`ï wøˆh-~3’ipWp²`º ‘¶x’•È &›ç ¸&�Î ‘Z &—Y“ W›:!W›!J—È î&•V^_C‘\U©›–^¥“¬–]¶‘õY@š¿šWo&Ж[]É‘º ›ã–B’¯W²ã–Zÿ“ºš–[…’W§XVÿ“±ã–W“§¤F¡È N«çš–ZD¤‘"�<¦{¢È „«"ç„§¶‘"�¨«æ Á¨«ç< M’±0 ½®ß¥Y_ë§^»ë§]ë§\ãë§F0ë§ZÎë§Y릖�ÈÎ'“oVXì� Ð½»TºVVeºVÏ][w»a°º$xº�`›»\ ›»ó`5›·\1“¬T¶0”‘ã·¡’¡«T¶s”`ÀP Y°  *@ÉTµ´Î0§R)É\*@h)ÀÁpXr±:ñ2„SÂàÀOÅ¥ b°]ÇWú(еhoW\f‚½EvC�Èë@›Í<@ C�ÃLB ÃÌ!PÃË<@I ¯É‚DùÍ*@ Ýr<@@Î hmdù0¹ý3;ÑmBÔX·! ¼1!UÐ\V?sd½#!UÐ[Vm \ÐRÓa°É yÖð�\ÐnÑW[e\uÐyÔšÑ\Ô¯W[Z[gСÖZ'[¡Öð�“Õè0gm¡Õè0×Ö‘ZUåÖç åÖð�<“Õ±0m»¢Ô桹(àí€g{•‘ q�?";àï�X Cçæ'ð CàÎ gv\ös°®øbgsZZËWo»0mibtâab³}à8áo|Ï0{cë‚gjmw–�ßúžãïG9àb}/0"g\^a[1§% ÀåûÑÍçXÚ¯ÍçV_V$ !íüð±bQmvw~w^uzgo^çßuß fÿml`lZWÿXszb Xog tò xu - Yw,<ä$Hßh_å+ßýzZZ#V^ç0 x#B‹ñ{䈓„º¤®4°Žˆ“÷ÿ<÷[�ý@H-÷5-'˜Hy@üZµ0r]ë +ßfbwÿurvfpvjwjzfurmžÐó&m"†"bxuf½| ƒ$jÿbj`pvhxßjdfzà rûÁzÒm]d XÏXl1Ô ý*¿âm]]\Wbïp'Îâm]\¶ï"&ö$[Vð!®5XVXñ 5Wµ^1"6VZñ Ü0¤`m[V”à}f¿mmr{hu0ùgG2{ijwfãW0n!G2ru`×phf¹`B7ia/amxfR1W0 @ÌF3Œ1W0é!Z[¥^;1 4®0Yñ ¾¶7Wbv Å9p[ ¶5Z[À1ã7ªð!ã6Zð!ã6YUVñ ã6Xð!¶5‹Y_A¶5¢�ñ ®4XYWALEX#^\ñ![GAÍãa@%]eAyGAÍàÑ!äçpX`Wbâ�AX ¤F[õ ±G©�±G5�¤F9Z»�ØGYØG/`t¤Fô ÿG^¤@r^CY,2yEWXVÐ0ñ (Y³0yEV__b'w FV+2 FVB© FV@RFVVPQJ‚W^QP‚WÀ1‚W’1‚Wð!ÍàÞ!Wú°„K’mW\V]¿ÑQYV|ìPL7~0hìTufd~0ÞìT*v4kic3~0n!äìT¡2~0ÐRWüØPÀmV^ovö�`Å]hWZtliáP|jZ5ÐJ_b\ecœix`œiºáP¼jZ5Óm·{jI@jì�mfz`mé`âÞ! é`ŠÀlZ ïY[Vý W\û èç"lXVZ¿]YËÝl§X[ uͰ p&î€W\ tæ¡ p«à�lU@xðÞ Vp3Qs 0 xðM�>mp[b/Rbmp³gpí‚xi�Üø…“phø…sfº�§xhø…r:°qÃxhø…ò€¹w¶àyðèôóc¿é ÞÜþêßÓ½ÿ ƒeG®# ï-€°7rþ?€9* ÿýîâÔÿÇ»® ¿Ž|j]Hÿ7&¿ôäÔs´¿¤’€bÿT=0ÿéÑ´ÿž‡p_ÿN=,ÿ úëÜþ³‚­Ÿ‘�ûq¿€QC5û'ÁýèÛûÎÇ´§š¿�€eÏJþá€(øþûpÝïÞ_Ðsv—[wWî„~â܃XèÖPkÂÜ� ‰P;‡ ø„çðò°–Wc[ TÀZ`–X •áÉ&™r±�·àsvï�zsurÿofu`vfuÿgru~^^×Ftrsæð^÷Ùo•]Øî{–\‡—[¸‡—Ù`‡—Y‡—X; ‡—W ‡�>pÿsi v ufgî“ W×”o r«ss“ê–aô— Lê�nÐshD ü@ߥeZ\  "¦T@ " Þ÷�gWYYc0é¡?§ aN¨ruhûN¨amlôN ¡fZ°W 8öŒrsfTÀi©9€£‰Piš ½ gsdvý`0‘å„ßV^^] Æð2ª¼¥\Å ɧ[Å ªÉ§ZÅ ɧXÅ 5É ɧW&ÙàÉ þ�rvXfsYYßWa ,³W^ÿVZwaVvû,¶ss`v•;¸pG±;°C0pÿwWkdX^ýmݰX^ †J_²ve°ai³ÆA t°êÞpd�ba�smx×vWcpdÿrgmjpfÿwfuojp`ÿwrué=a°bmrv¨!d‘]v�ñÀ½t ñ€”Ö½e�YƒÀî°`±bºe¼VzÒpb ƒÀ $Œ `±`|·o± t°nÐÿoxXZ ` -ÖQroxÔP ØPÆÀŸopX[b“À—À½Æ\ÊgomÌg#lcaÂhÁ‘É{À]¡Êg‘ÈY ÐéÁÉ{ÀÑÊg (l`�aÂWhÁ ñÊ{À] Ûg ñÉViÀé $Ú{À5Ûg”l`^ÅWgÂWÛ{ÀiÜgl`DÁˆQ~ð{f¿ÑomV[ó «ÿQÂ^ð�ŽÙRo^Õ `YŒro5p67°Ù©ÓX }põ#ÿoW\]VW_óó¨2áÓ]<=Ý×[ZRáÓ|uðùÙW�{j ñ‚!-é‹xuŒñ-人+cìv `ˆPñí�á¤ñcê¡_êï+ãéa'+Áç;svE(ý&ñZ& 4ýX)( H$÷ópý ) HÞd-át' +SpmxÇ@÷Ý"wWѶÜ„èñó@ ôsI@ ßú€Ý€íÛÊ¿¸§•€qÿ_M<(ÿôãÿÒÀ±¢ÿ“„vhþ%€D2 ÿüêØÆÿ´¢�~ïlZG‚$ÿþëÞÌÿº¨–„ÿr`N<ÿ- õ¿êßÔ•¾ï°¡›nû^}€>.û ­ëÚÌþ�‚œŽ}nÿXB3ÿÿðáÿÒù¯û¥µ€�†|ÿrhYHï<2ÀÿŸµêSpwxX` #±¡õú‘ØPòî��kJ‘wv9 ‡�s ‡�òËrp P<²/XY }gÑ�5é ;Ñ�¹5r m»li;d‡�Þ swb}pbwa`‡�îé v|XüÀgˆmÀ³ÌÁ¿ŠÐ¿WºiÀÝg¿{=Ã�X ë«ò"7VXú@z`pp þVY &lP&[�0&W[& E Ê#$W �vx:1�Z a¡p#Ol&X¢{(¨"p{ m%X a{(X+¨(W a {(‰ î¨&X] A� >ç(W Y ÷ Z0ÿvvV^bfdÝvÄ� R^avo~Jp[dz]b~!3`zø3Ôs &1+5Y$3¸²Q1íƒ:ª¡vßgXdvI`Zù 1bkuXßia ŸúÒva_uYZYWu°}"}^–ÐXƒÏQvYd È­3—a¶4W`Á5b;Á5a¶0« ûur) gbvdvúõ0Êå4Xí3 õ0"@umisp4�Å GYYj`þã3hW\ZXXŸ \Em2/F[;;LX;I/�'\_L©`D`Ki0JƒFVWD•IkB§L§Xƒ@p�u2�mïauXVÿ]ZusX[VhO µÚD² s2�§hëJåBëGWòãD ë@�uWhr�[î2ûã3+Pì4Š5WYí3ù4+PD&YVV]í45TV7 í3ý ù3ti}s\àVÊ\•Uû�U¡ZV¶ ¡W[šS¡Å[‘ÅZÀQ¡WZâšSû[‘ûZV][§É j¶ 1kYçV1` to¿b^ OVgZ#c`p[bYÅ�qhXZ qhq�ig üc`’Qmv^bC‘c`�³f¿j*��­hZ¹b¿hìaSój��c`Ú€ÿxbrs^]^¿VX²s„° ýƒ�«¡0rù’ K;v/”å€Ow®R:u3dm�ÿ�LqwZ@Ò¶ Lp’d“ˆ^uœrÿ�•œp´¢¤¥x�s� 0s6Wo ïðàôóWcæ)pàÞÿôèÚËÿ¹©™‡ÿuh[Hÿ5$ÿñàμߪ˜†3ð`ÿL9&ÿïÜÊ÷¸¤M}jÿWD1"ÿõãÿÑ¿®�ÿŒyfTÿ=$ëÿе™~ÿbG+ÿôäÔÁÿ®�‹s]K9+·ÿöêÿÜÎÀ°ÿ£–ƒq÷_MÙp)÷óûpQSï “p�}p[öð€Ÿ\Â}pZ[oV\iÀ Çá‹§g ò‹�À ò‰Y:í� œg ›�Àò‰Wí�Lœ¼ò€” 0R”‘ò€Ö‚YÈðž„•Y.`��A o|{WøB ãž2ÿ|wX\[9=�¢³’Y»˜È@À»�ò³�ô Œ  À|s]_  õå“\ZqLð•” ð�°‘sœPÈ;  ¦²q ð�« |rÿYbXVoi~o ¯(¦W\3¡ñ 8 Ž°>¤Y^Zâ3¡ 8 ñ°>£ZY¯W^W^3¡8©Xò3¡8 °|mZWÿYY{ij’þìB|mWZXruhdsl?q’Ê¡¡W¦¤®  ‘mW›Y\–¡î2Ç¢aÏmlÑ Fà|g¿v iu\¤0sÿg W¿kå¦Z…]ñ¨ý ä§ °ñ¨ˆýªmàò§ºÌáò§6ýªXXñ¨j¹x°"ñ¨ýªœPò§†°¥¸"𩆺ò§ý )à”Þ¸ñ¨ý ¡�ï ÿam`blujÿaarpó¡� �bW_×\\Vr¢ 8£{p4�@fÃp“{p­PKÁ­ÀSÍøò€� YÃÌÁ�yËgyʽÀ�¿DÂ[Áü¬ËÝÀî¾Ìg¬ÄY[·VY^‹‘ èä’{lò@@¡�Ñzwø�/` 0úÒzg0 Ñù Ð 0zpwusEbšS¿!Ø,a1ÜzQ` 1ÜV^ 1׳__¾P¦ð›rz5pàp[KÄ Ë~Ý7�БÐo0ƒÔÉ¥ÜgQ‘Ð!Ò­ÓVî€ÉÝè€�¥ÚçïÜg tÜÚ¸Âíg‘Ú¥WM 9í» ¥Ôo¿vbV\\aè[mâaèZmâJaèXmâ¡SgâWmâ©ìg¡P� gàQYcѶ@ÍæX×ãÍæ‰W¾PÌ` ¿òçÚà nûX 1Ôol)aVná ¡P%ú�¡PÎ@�zo`Wêð¿KôZ{¬ÃzadbKÄ9 ©äiõg ¡P �ÄhòÉ †úI�©ä`m¿ obvX[š0}Hx^V{Š0‰ ¢wx&°ð` ¿X]4 Wµ]£pïpôsp¿á€ßþ€íÙűÿž‹xfÿTB.ÿøèؿȸ¨1€ˆÿxhXHÿ8(ÿýìßÒûÅI€§–‰ÿ|l[NÿA4'ÿ ÿóäÿÕÀ«–¿�l`q€Hÿ<-ÿøèÕÿ¿ª•ÿpdXIÿ4 õÿà˶¨ÿšŒ€t¿iZGŸ€)ÿ ÿóÿçÛÏÃÿ·«Ÿ“ÿ}hS=ÿ2¿ éþé gY_^í�+ùÓ�õø^Xd þîÀ Zs ¶‰gY-Ñö g¿YYZ\[=Ð\]"d\ƒhp5jwZ5jY5jêN0‚6do*ÐXWá%e}bIpuiW_Ý•j^•j[í udfiùá^ð5dÌcò1¼’}sbs¿ur–q}¿puhavXmó¡È’Òùhm�{tÁpã‚ûb‘ñ/|6à/{ uÁps’ûb¸Âe}˜ÀDx|�ò€ögFãž}Òëв}�p•]X¯W`V¡ò€÷Êôóu×âàìÿØÄ¸¬ÿ‘v[Aÿ7+ÿûïãÿ×ËÁ¶ÿ«—ƒoßZE1= _÷äÕIµMõ˜Q{U]Oÿ@1#ÿøéÚÿ˾±¤ÿ—Š}pßcVI}/×"…ûà áýÍ�¯¡�ÿ„yh[ßM=-ŸÿÿñáÑÿ󣕅ugW¹ÿ ûíßÝͼўÿ�€rbÿRD4$¯ ÈH"`w~pbÚ ¢ñ‘äúƒÿÀúû�W\Y£™^ � f“˜ƒÀ!˜†° 1˜.Ð�ø„Wr�!�p–X—ÇW �KPû�V°Ð�›˜•�“—a\Y� –ÑXã�4“Ã�   n•a‘m–ñ�j è�ʽ”[J‘Ê— XQè�Ý”& §ZJ‘!Ê—> ÉP&§Z¹§ÍY0Ê—l X½&§YX§Xr¤‘Ê—š X&§AXâ0�¨J’ ¨Z‘°¨'V§’Ê—+’I &§;�ì¨J‘ü¨:Z‘ ¸Vè�‘|bxw¦„R`vw`ssvI@· ø!`v^ ©èg´­q° ù€luzÿlbWW`Wýëæag`]arï{’ù`[XoV`u•À3’Y–²œ°ù€È À~ÕÐZ\y’D@¢P“RPð@Û¶zA0 Û¶Z` Û¶/Y` Û¶XÐÛ¶ÑW ÐÛ¶ÐÛµZ_Di06Æ^&@6Æ×°6Æ’@6Æñ°6Æþ°$6Æ À6ÆÀ6Æ%À“’7ÅЫÀø�Wî³³¬÷‚V^XF§± ·¹Ãÿ@§±ÖÆåV§±ÖÀ4‘bfºK‘]õÇXØWãÐJ ð0^Vhæ¹ñ#ÔgÀ-Ь $Ó-×\)ÐøJÙtÀ<×\Vå¾.ÖY\h-×Y @<×Y<�vÐû$Ñ�`h -Ð¥×@-×ò�a-Ð][vf÷oV[Ps­þ}²][foXZzßd`sä×WXòðÒäÐ-]VYŸ]Vas îÑg˜ý¼±]VWVW;[OB$ä’M 2ê¤4 2཰\ûXo}`XZhlXµ V _æWXjâ pékV[jâ V#[f‚`K$šâdÅ£àœà´Ç�a#[³!ÌáB[óVX×�ÄæWËÈÅåsÐÜåW èæWéÜå®PöY ðöß Üà±àZ_ïÝ(ð][\ÿ_[spr~W¾ä]2óYqV:ôw; lJó÷Z[_SñV~ [êäc÷^SðWi~K Xäcð÷ZÊàs ŒŸðW Œö½°ZWdã|l_³ pã·óWX¿ò ÖÅùV[¿ò V ûê ôsjúëã€á€ñãÿÓõ¥ï”†€fYÿJ;-ï ÿ%€ßÒÿô¦–ÿ†wk_ÿSB#ÿéзŸÿ†mU=ÿ% öÝÿĬ��ÿydP@ÿ0 ÿðÛÆ±ÿŸ�|jþ™F,øûÞ³€¾²¦þ­Ž‚vjÿ^RC7ÿ( ÿòãÔÅû¹Ñ’…yþÙWG;-ÿ!ú_RÜÜûRbY]vógúBíswjù óï@bX[vwcóêó X[ü Î@óûýbäpimWf ÓcJQ:f‰°f‘ D:@DêW®@(W `yYàCxóeW" ŸóüJ xYamlýDö‚bWYY{iú%íÂruh Äм Ði7P̽´oZ~09·n"!QÈ EX! &�&W!� &W "bw\ K&Z K&ðÓÀK& àK%X^1�?0¶ ˆ%Ê!ˆ$Á`ñ ‡ Å0¥ YVv×Ww &@œ’axææ@íð1ðawdÿdYVvmsœx1}1 ýÍ-[ô Hå(PÙ( ÿ-õ& å þ°au\XWdžgà259ðàÂE;V<�E0KP90WWRc2iP63W=4E6äƒ2ðàE0\@auXvƒ0va?1s ž=_WXs ³=V0± E0\P¤1iA0 Ñ6bã3ðà í9V[+í8dˆ1Hðá‘ú�²C @-@½°a¿uWWWbdqPZÇliP¡2EDWXÏbliP@IV\÷lÝ4m`gY¿ZX\³aïg[ i� ¤{ df\×%$âå �L]ò±Mö%•å �C[ 4á�å œDíE]òúM[ô8WÖ Ú'd,[[ô)BP´DY : ÊGdTj[ôWW¤IüËFD–V]òÊG–T[ôå …�Abì@Ú àRÝ$¢å ÚS4S4Zå ’öUþW[ôå l1]ÿX[ grjms1å3bZ@d-\¯0 a[ðŽ |³û�r[ —’Ä’ !—Ô’1—ä� �ø„÷¢|—,‘—\“—¢ !— ¢T1—0 º–b>¢ !—RN¢1—^ ¡gZ&±ê|—Z�—Z $—l¢!—|¢ 1—Œ A©—š¡A !—ª¢ 1—’º —È¢’x!¡ ТxsÐm—m¡!�û*ôódôëäâóçÿ×Ç·§ÿ—‡whþNA6*ÿúÿíàÕÉÿ¾²§›ÿ…oYCÿ-ëÿÕ¿°¡ÿ�yeQþU)í¿Ùűc‰ÿuaM9ÿ%ýéÿÕÁ­™ÿ…q]Iÿ5! ùûå³€½©–ÿƒp]Iï5!±úçþ¹Á¯�‹þÇgVC0‹ï€ôõðÑ�gBbßp]ZZsãà`x±uÝ»²ç„W\ð�ÉöŠï‚ �®!p]ÿY]wwVW]i¬å•XY(�V,�ø0�G7‘k`xt³ 426’aV òÔÊU™Z¡ð Tš„@ FTšX\âÀŠ›¡ðT�v3”Vb„‘vf�œ±——�v ®š©�vë ®–W'’ZiÉ0�äƒW뀳Àxr³õ†¡XZ ¡œª‘r"«¢äõ€ “V'�õiü®–S¡VX[i<0–f£Xi]«X¡¹T�äƒV]s`�`xXט¨¡Íà–ª!Y T0õ†Ÿ¡X�ñàÒ«¤¢Òª‘›0ú«¤¢Í Ò¨kVcÐ  œ#¹£¡r6º£ 8f�%·Ë¡r6ºß¡'r r»¢ 6º/£Q š»X³6¸a.´ º’C³º£ºk³$º³Ë¢º/¤´:Ë¢6·[t.²oã –kÁ£¡o œvÊ¡ovÊË¡osvÊß¡o²Ëâp ^·lÀ‘oºvÈh’o vÇZ’�ÅÚ—ÃÚ«Ã H^· пÃÚÓÃÚ*çÃ6·ZùÅ �µÖQ V`›0Ÿ�ØWù �Ð àbp]^ý[A±h tÛ|®ÙWZ¼Ò{jÃ×Z¸ÖØÛY\¼ÒS@­×ãÐXÑÓëÊÐÔØØW¡¡¼Ðs¹0ëÐÒsØÖXóY[8@»Ñf#µ®Óeâ\^lâüràêbY`ÇwŒâÆïbX`”åñàŸåW`”åýàŸà�b�®s§‘ùÚàê`^~ {­–â`^óà~`W[~óàTêâ§  ô_  ó^—á_v_üÝ #õs²[V?[ {i@`IóåYPñ@`7ZWY�\ËîföéJt÷[Ë„øéÐJgôZˤøé¤÷¶Ê’AbbYBðÜîwóû¸ôscäëå€ã€ìØÿİœˆÿt`L8ÿ$ýé¾1€Á­™=€qÿ^O;'ÿÿëØÿȸ¨˜ÿˆubOû<_€ðÿÝÊ·¤ÿ˜‹{kÿ[O=+ÿõëÿÞн±ÿ¡„sfÿXB/ÿðÙÃÿ°›‰qÿZD1û ÕPíÕÀÿ®š‰sÿfWF4/"ÙïûðÔƒÚ—àf•@Ü•âfö“ Ü®Ñdvaÿ_vW`fpwX¿ WûV‘dÿrhV[obvdV•úÿZÿYobdvdhF�X,öµdm×0buÝå¿"diYÇ '¥ éfïójøKú5fð÷v\ä€|rmX÷ v}6ðøv¡0¡ä’p vœ@dba/Y]skýà0ýd¹pgvo`½PÿâdbVVÙ`×%ÿbË€­þB’v® ý¥vÈê%"¸ væ@da aŽ òýÅN"ÎCW § ýO"÷­DO"’$f"o1$ôf"¸ G$`aW¢R(^$Í"Îý`DÏ!÷­ü"’$Dü!¥1$#2¸ vþ–`d\ZXWugªUL1S0þ6[[hgu[ZÞ×ød5vÿfuzjbfoÿ`px`m øø.Bf0j0WWÙz âdMðÑ "þeàigZ|||ï ÏG2XVZÏ^uS4Ä1ºS0®1 ¶WhV] é0‰ ô7 ô7+ Èô7= ¡1W[VPqfòwÌô¤ôôOAñ XHVuhw¡Ïâv{zÍpëûŠâv\0·J”]g¢\að0–]È¡¿]h`>¥IXµ[³@¤JV_³@˜·Hi°²A?ÞIÄBH¤H¥°ÅAðJ×BðG¾¸‘]bg)ZX³[bÇ@)ZW[8P)ZV_8Pð@gñ0Qß`V] uZ\Ý uZ[ uZZ‘uZCpðF\'’ @ú–\,´0–¦áQC±[ ìZk±. ìZ±úkæRAT�‘Ó/°ÊàÁ–['’êl ^¶[ë€[VvQp—°õ†gaZlb rjkYZma rjX\ma© šklbrjW¨bÔÂklbJ¦Z'’^i+–¦Zh¶ ð@w’³ —�¶%z/£ �9{”³%x ÅxÅ�u{D³uz/£�{¢ ˜w�b‘ Cö‰±u{õ€:ôótæýäõêßÿÔɾ³ÿ¨�’‡ÿpZC,ÿÿôçÿÜÒȾÿ²¤–ˆ÷zl/PBÿ4& ÿüîàÒ÷ĶCšŒß~k]MA3% ] ÿíßÑÃÿµ§™Œÿ�seWÿI;-÷uçÙýË}¯¢•ÿˆ{naÿTE5%ÿõåÿÛÐźÿ¯¤•†ÿwmXCÿ9+õÿÔ³“w\8÷ðU÷ð÷ð÷ð ÷ðý ÷ðgjmÿfi`pd\ÿa`vw`uÿdbxw¯— ›X� �ý’mf±ó)�“°­ ˜WVY—d�f ˜^›™ •?mgurx���"[•  �°’X˜d�L”/gm`w´™âœX˜ùd�H0hZWVfö§ >Ú1hZëQ¯h[VZ~9 XWZ g1¬ÛWW °((¢Y™0 GgvåÐãà ©µGòj Zâá s¦YåYãà s Ôgm[ïM“£ZŽœ¥Yœ¥×œ¤ZçXœ Û0fwùçgðfvYWWKW][ �2Ø£\ú¢â©Y. â©\0â¤mÿ Vb][û^¶XX#]F²ð"°VËfjò ò D±bvßw{VO¶uU[µmW°Nµmd°9[µÏÐ šyBˆ°ò‘P�°H0fa\VkYV^0žµX[É0�«·×ષ\ªµ\ðVÓÔ·´°â¸VÓ©Õ¶\ªµZ[Z¦°þµZ[´°È'VÇ\Æ¥±! DÇ�¡DÇ\ þ°Ô¿`{ÓC²`ŸwbsyÀŸ±`r²²þ´�ÁV”ÇBð¢È§°”Ç\ ”Åê²ÌÈ ÀÌÇ=±èÈ[°dÌÇ\”Å"¨×Ù ×ð.Ø3À ×\Y Ö³± Ð Ö}¢X×ð yØÉÀX×jÁ ÕY³±€¥ÖѰ£×ð!¿Øäà£×�PÛØcÐ®ÛØV ÕXâá çð§çAÀ!ç�PA/è%À/èß° ÕW7Ñ !åaàp gç�Què„Ððuè3À!à¡0f`oSyÀË¡_åÊ¢\ûàµä] Ü[‚@»ÝC²[VmA ðÊä[°ÔàJ fYW_ÿ[[XZVz`bïéþòçzdb *­îéWWüã öZ"öéö9ôòð3ø&'õþò€ÕX¯ Ôà€wòÅ õúõ ÀôWw_ õ]  õÇ\  õ‘À õZ õY õsÜï<ôsJ´êû€ç€å€ØºÿŸ�Y=û '€Þšû~/A$ÿÞÀ³¦û™_€rfÿZ;ïâÅ€Šl¾k1ö�€¼ïŸƒ‡J-û½€Ù½¡¿„hIÛ€ ïïÑ〕ƒÿqcTEÿ6( ûýÉàÑÂÆûð �0�H0mÿW^ \ßÀ�¥aTZ²àlUYî ½žzU[^†UX[Y“Wº †P…º ‘{�jphW™úI� “wiuffvtx`uf´™!d�Î]ÞQX˜d�t ‘Û]Ï mW™€—¯–²™ d—¯� d�#&Oi\˜>—I�nj²X˜ Á—ucWX›ˆËms‘™ .gög[•^d—lpjgjI�¼ŠdA“grur�|Ûa ‘vslÉððI�°T’��vorr‹wi’â—xu[•d�qy�€x‡g�;š½I�xôóp¿ èæþòä×Êÿ»¬ž�ÿ€qcVÿI;-ÿúï¾Í¼«�ÿ�mT;ÿ" ðÜûÎ)² �ÿƒugWÿH9*ÿ úëÜÿ;¯�ÿn\Jÿ9'ÿðÞÌÀÿµ©—…ÿxm_QûCµ€' ÿýïáÓþÅ€·¦–‡êÑ€hÕ€IÙ€*ÿ ûìÚÿȶ¥”þ}raP?ï.�Éëé€é€ÊÏÊa�P\÷W\ ˜±Ì îü�X_�[ º ˜Y‘[ –Wj‘ –Y“ ä>—ª&’,–Y6“ N–WJ%“ ,–W6”�—’y ,�û�ZV[%‘õX’À`o{X“ZW�ƒP•¤’»”Yòlœ°g owbÍw§à*ã¢ß“ggsè�Ü–gè—Olsg.ðÚ–l§àé ©ô� ©g Zè—k¡ ¯Ú–k§àÑ U H¦ô�U©gý d§f|bm ûv ‘ovX ÿsmxhþž±oow`_Xó6ݪ¡ZXš²¦]° ¼Á¦º.Ψ]Φ\§ð3€îì¦^ê¨]~Φ[_Y4·Têð²¦Z°"¶Z,°}²¦Y^b² þqÀobuR^w±obW[a ä_ÿoajogZYMY €tµ¾�^ [NTRoXGàr°l]±á ˜²W[K‘Þs³w|W}±`­ „´uµ ˶g[vjޱ SPϲ·bivò ˵o›doû³ ‚ʺ ¼À–¡fiZé² ¼–°¼²fiWbü² Ëµ?Ã.„°)Âd/ÄÈ–°^Äà –°9 mx¿lfzjf{VrvÿbrsfofwfÏuT°„À_õ œÉ\œÉ[œÉ|’ðœÈ]\ÞhÐ: Ä\Ðà¸éÇœðý÷ÈZWa ß=žÆY_ Ù®ØV÷ÈWGà”çÀ¤x�Ðd¡Ð¥¢m�x7àd bÐ×àm?xVWmbÐêÁßv^VW©P3~_mrrdh`ö_Ðé£mdX\ßYS¡ÖW£ ‘ݦÐ�P »Ð¶¥f|è°a`é²ü„°ÌÓaX^V] VªP ªqòÐàÕ«\ZêÔòÐ öØZjéÕòÐ öØX\êÔÕòÐ òÐ¥`vïis`bVqo`wΗÁsËÒHäX[Ï\l Zà¢àm`ßVW qÓ\Vö±� u ’mZVp[Vupu&ÃŽ�å`˜æÃГáÝ�ªê`˜æaXË[{”àºàwðmXú‹ —uòmXiçàsÑœ�õ êõä·ÀêŽÂ�^ øÉð øXÓÿåå6÷\êY¯Xðºq ^ù��^ùX ÜEX寓ðº™ù§[¯õâXæšÿåX«ÝŒõ×êê^æ¯Ê]ôsaÛ÷pé€ýç€îÜÈý²€�|iÿXG6&ÿñàßϽ¬7€ˆ÷wf?€B0ÿöåÿÔº£‹ÿs[C,ÿþçÏÿ·�‚kT=& …€×¾£ˆ—€ÿT9ÿðâȼ­¡“…¹€ÿj]QCÿ7+ÿøíá÷ÔÇÑ€¤’ÿ�p_SÿA3%ÇïûðËÑ×Pvwu}Ìp[ÐñÊ UYÐÜ WÐÜöuf\Ði ÿ¼¥¢ d ý ÒuåfjÒ au`o¶Õ[|µ°Voâu[abf ‘ÿuXXigXXZFÀjMW\UW©Ð ]VitÀ]~û€ssXX[› O` ø¶’…W�ã› àƒ³°vob�[vr°bP©�´jr°JPskmbƒPå[²s^ª°û8¦¡s]arï{·HRs\VïmKóâsZ^Ï[{ÚÑZXZQÐöÏY\ª°·®²KsY  èYí•óX  ·X¿_z�K%[ð¦0W è½�^z¦d&XZÌ@d&Wãà”W ÑW „°Ü�s¥W7#óÿå~’!V^g dbú°þ{ a aÄú1#VQ_Ùƒö0^|Ã"Vz¿`bÃß*W‹W[ï!ô �pã"oBÀ+ Ï <‰ É" Ï ¤Dàã"iÀ 76&8hÀ+Z=67&8¿$85IA8Á*«=85&8%dÀ+ Ý=67Ï à%¤Â#î"L4Ha¢é'ô(LA4 8aBÀ+ Ï ¸!vF76 Ï �á$`|vy!î"¨ô §H6ô(`±G $ÔL4 ÔJê& \4½ ¼HWvYë%$0]4 H[²FH[ê&E�T4ô ¸ PåþVrsvjrpU' ’rS]rd)ÒUvgz ]à ½p™@YV_�àV?Vav«óÐü€ï_X\V‘\ ©ás²cZ‘ iXr‘ ij�\ `. ‘\WXc,”Za°&�·À£”ZaXV‘JuhW�bdhMbuf‹VacN”±`cˆ ”Ãaob �­dd$Þh’cÍhMb �ë�§pZ\‘ôÀ$-“Z¸Õc2Ð ”ZV\®“8#u(ÿôÞÄÿª”~dïJ4c€íÿ×½¤•ÿ†whYþ{€;,ÿÿðáҿô¥ssÿdUF7û(£€ ûìÿÝο°þ‰’ƒsdÿTE6&»Ç€ÿð§ÕÿÆ·ªžþ±†xfTÿD1"þÃô¸°¨ ˜�Ü�¿zVXdW\ÐþÒxvfljwuç &èÂöƒfû¼Ú’wvoWsΉÐòñ±‘\w xu‘�ë�$’‘q�¦�‘VYXùWóB—XM’S�þwgam[VÛ½%"w^j”u”X–Ä��Äh°y�V¦à�‘^V?VW\ds�‘K][­’s”GLz‘[¬�Xd³”—YWV‘�v‘WóÀ/î”Æpø� �v¤\'¢ £p   ¦“°#§_¡§n¢� 2©g §�¢Ü“ ¢XZ`@ÐÆH$¤x Ð¨xðŽ©jÙÅ€¥Yz¡õÏ’T²¢Ð¦Y˜¡Ê©”л¦Xz¡è¨Ð‚¦X˜¡¹€·ª°»¦WRz¡$¸Ð¦W˜¡yB¹Ùô çvwW’`pUöÝ uvw?ÐvmKsi¸u°¡px£#$q£™±Ð ¡¸³ñ�°¹0°¡¶µ¢ θÐ „θxðì¹С¶ñ¢ $ ÈÐ Èxð(Éâ¡¶-² FÈŠ¡FÈ™¡dÉúÙ#q£lxlºSpâB2vb• z¿\^sgªpON·!—ÇV¡Åá ªÀ¢p°ÈºÀ e,É—Å[\ÖÀÚÀ”ÈkZ]¡ÅªËZ]ºÆ‘ ÄËÐÕÁ ÚÀ­ÈYYsg WÖÀ-ªËYYºÆ ÄË_ÐRÕÁÚÀÇÈX0Ó7Û´^�HÕªËXXºÆ hÄË¿ÐÕÁ7ÛW[GÖ-ªËW[ºÆÄË àÂÕÁÚÀc±èÕÀÑ ˆ�ÛÿÕÁáܺÀIÔûÜÔÁ£ÃªÀ0vèºÆ! ªÀà �éÕÁ ÚÀ¡ÿ_^Vwr½ÿóâvXp  a�ÍåmØå¬�ûu!vV_WWÏ] úòøâ[Ý øXøWÙðÝuvÁðnì,ó¹`,óZÙcAôˆ�þ,óWIVðD0ufW4¼C=u‘ð\Yd×�/p¿bl |ø`Dì ‹ó’ûÿ‹ó’ûsVX)`�ñ ‘ôÎá Ü$þôsw ëú€é€ñå×ÿɲ›„ÿoYE1ÿ ûêÿÝÌ»ªÿ˜„pbþ5€D5$ÿõåÕÿòž“ÿ†yl_ÿRB3'þO€ úëÞÿÎÁ±¡ÿ’…sc¿SF9i€ÿøëÿÞÑĵÿ¨š�ÿrcVAï3&‹€ÿÿïã×Èÿ¸©œ€¿l_R§€*ÿøÿëÝÐÃÿ¶©œ�ÿ„yncÿXMB7ÿ, ×�qh³âh{ÆZû1p ÿhV\Z¡ZZ$ž°$yYÛ`$X^ EGZ E­°$WP`ÎfX$š�~w?_[Y‘µ‚×W‰^…]è—'ð£]…”ê²W‰�g‘~w\S^_Ì ‰\…½%\-�åep ‰ ë~wep ÿpa\÷ '2|surÿhu`oojphÿo`px`m{ QÙâ|rZ[Û`=‡Ìâ|rYX`?$Þ%!XÜÁ|oÿfmvfbofdér>@Y  jpwÿurdxbwruå})%Y 5!__Xßv Šò�|_~0Ðhf‰‘|^Xvxsfü€Ê–$]ž# ¥ v�|X?^[ …Æ$­°øÐ ¨!ÀÐb`dsùY ß&arW÷È!·à4"g@“ ¥ 2Vsfãü h�0dxf³Y c°|V`)~‰$VZ[]? ü™!J0[ vE5[_0#1J0ŸZv ø3s1Y z0o3W\“ `5–mÒQ5WZ2•7[k•5YÌ MD4Yéð¾6\°Ø7Ày%}Ä0[__5•YL0ÿ6ZN°¾6YgW ò6�°…@#ÎK�W•0¨!VY�Vouf“ 0CFdø\0 0D�|VX_\ as[^ _5ŸX\]•0S2X?Vvjoì$a"JB PE–A\@ 0F2åWÌ Ë0CBW^V? al`4Ã@[EWZ‰AŽE‹WZJB PEïA\@ ¢®FZ pË@Ç!VðPYªQ3ÓpVV(à-Ý#wY_ÔÀz/P6š�{\�1q2EQ| pLUWWYYWfˆp€AS` sPÖ-ð{[j =ÛÂz{ÿvsbWX[gŸ$_…ÂR‘RC[4ÀŸPD�¥SXšQáŸP�‘P«P^ã„ÃYa`ÒZZ˜ÒPh�ÈSÒP¢SX}vZ` j?Y`‡ò�bqo°ÒP%fZ1i¯YƒóUXÎP�ÒPŽS–Q c ]m`ÒP³Sfb<` O`¢Sfb^—kÿ`—k»0O`Èš�‘PÞPd�dY) O`ÅQsè„ ð€ŽQ÷ddgËQY][`“°Tÿ`Xåp �¸ŸPûdpð^]`ÎPqd%w[ÒPÇÀþaWh`i°-q ÒPc°Lr„garÒP¨àbv*t „q}?sˆ}Uq ðòTb]Y¾pf’z©SqŸPv�ÊpXŸP¶ä�b–QŸP÷ôól÷Wìêð ÿÚÏĹÿ®£–‡ÿoZ?+ÿýéÜÿϵ¨wœ�/x]5ÿI?4ÿ ýòÿæÛÏÄÿ¹­¢–ÿ‹shÿ\QE:."cÿìÖ¾§‘{fQ}ÿ ðßß‰ÿwfTCÿ2!þÿëØÆ±ÿ�‡s`ÿN<+ß ùäÓºÿ¦’w]ÿC)÷ÿravrmfÿhXzpX^ÿ]s[W Xã_dË�’ðç‰Z] �_÷‚¬Àš^×Z^ù€�] ¯]XZù€0�]S \8àù€J�›_[Z[ù€ J�ýè€uXvpFC“º^a„˜Ž° “�•ƒ˜Yo² “›^’r“�Á˜Upb “�4ü…‘z‘T Që“à*“ö˜D“ªŽ°Þ”b@ ¤Yá‘)¨ß“š) ƒ’Wv쀢‘ "`‚“W‰– "`ª“i£¶“`«^“"`Ô““£à’¹ "`,£Wfð’ �ö�P¤½ *’ ŪD’ ¤Åª^’ ö�é“Wð’Jö–W)“ ¸D’º"ޱÝ*¥(°5¢) µ"^’ö�Dµß“A°ù‘gmW�À`‘±+¢$}²D’‡¹^’‡°é‘D}°�² ‡°y´C“»¸Ò^’ ‡°ç�f)pZsßoxv]“ I@¨“äµm¤ö°‘ä´iê°+svD’ ö°Ê]“‘ ö°Ô‘ä±XÁ‚±Ù3,áCÈ[V@0ê€ø¶IÂD“SÀkÈÀz‘ õ§àƒÉ8ÔÀ)ʼnÃC“ ”Àù²GÄ^“SÀ½ è€Z[ WÕ0txóáÞÀÐv¾ÞÀWp2`1úÁpó1QÞÀVf -ÞÓYXwð'6ñ Ñ3'ÐÑX_ã�'Ô/X_ 2ÕY >Õ—Y 2ÕWa°2ÔWY^|�'ÔW^ðPnÓ‰Z-°xÕZ[`„Ô#Ð@xÕVPƒÐ{Ò=@2ÔV‡P©'Ô ƒÔVQТÈÕY>`ÔÔhÐÈÕW·ƒ%W_ÏP(}Ó‘W_ZZìà/^ _ïP÷+ñà2“3ý!àçÀ/áœZ`6ä]çÀg�W¯\Y^ Oá_â\¿ _XŸÑ!h—W[wÏPFÓqjà^Wv ÓWu1}åXoÐøÀ�à `}•åW\` •äV4¡¯åXp ¯å_WVvÐ Íâû^p ¥ç¦ÛÁÜã–æàæçàçëæî0•æàýàðÙäZÊáá æàêç6*æàæà ýàýàü(Ýà¸ðâà æàêàÙäN¸ð;ñýà÷¦ÿæà²âV0™0fñ((Ò 0A›õ ›õ­›ôVB8¼õ„0¼õX ›ðüóuu² T ®ôsgç÷pí€ëþ€æÍ³¦ÿ›�…yÿmbWLÿA6+ÿéÞҿIJ 5€€ÿp`P@ÿ0%ÿøíÕÿ¼£Žy¿eO9q€ ÿõÜëƒ€jYÿI8'ÿëÖÄ¿²¡•›€~ÿsh\Q¿F;0§€ÿöæÚÿÍ·£Œ¿u_EÁ€ÿïÜÄþÙ�x`Iÿ1çkg�\åpWWð€oxvv£´û•‡\afÐè°í°z‘12'Âõ D’3¤³áòÞû  ?å£Mî´ eç€<ûåz‘ï×=D‡D’ ïP) ïþP \`ZYZs¿£”’ÏÒ£Üå£ÜÐø£Ü�ÏXÓvÅwï-¤³úiÂ%aÿÜòS'D’ b-¤³Ü!!)“ùïO'Z[z,‘L øÀ\_SpÅð„ÒË\\pÐé�\[ßvbXXsÛp' RÕ(W¤Ðä&VÞ!ã ¾*Ð\[oÖã\{[`àV½(Ò¿\[W*‘ò\ñ[}P à1Z]^35Y)Ò\"ñÉ Ð1YZ`34X^÷ \"â\X]± àÊ!‡@Ó\òÑáÐù�[~X`ð“A³”3D“Ÿ9^“A°FÔ�[}pè°³eHª�É7D’Ø=^’eé�É0³e‘1 AD’)H^’Dz°µ!³ ‡¼²á}ñ5Sß$wäÍrsâÐàÀ‚ÜBO! @"!þ€y$µç6SÄí¼4 ™Ñd"žÖ¨ÔùâÂCùÛCI¨Ðßb¨pY% fS@0ö_>üwfP5!b@Dß–oû´r‚ý"ä2$Û �öÝ z´rïôsxï€ýí€ïÚÈÿ¸©š‹ÿ|k[Kÿ;+ ÿûìÝÎÿ¾ª–‡ÿwhYJÿ:+ ÿÿñãÕǹ­¡ÍÐÿ‰}qeÿYMA5ÿ)ÿùíáÓÿÅ·«Ÿÿ“‡s`÷M9u0ÿîÚdzÿŸ�{jÿWE4 ÷ ù‘€ØÊÿ»¬�‘ÿƒvhZÿK>1$ÿ ýïÿáÖËÀÿµªŸ”ÿˆ|pdÿXLA5ß'X`j¾ë€VVZWÌ€mÿ`bVW`Wa÷ì²bm_ a¿ {oÉ!mŸZ_Z�e°m¿XY®É!jrcÑ�<\E!ZÅ FâQFWv°FùV�°2gWo;ƒlŒ îŒhŒdîŒaŒ`û³agWx\ÏXm²bÔWXó ܽ f|_X_VäìZ@pûàøY][Ž'Y'ç%XòdÐ 0fp dë`wZвbf^ZVYY J$Kpý$^W^h I#VVÒa Ê ÿf]ma ^:"[V^[Kp÷\�#pZ™&W‘ “÷J!Yx cpÖ¹¹%5påA‘dÿvpYV]hu�f}0¡�Ù$aN l 0Ö#XÝ%‘ æ&1ó# æ Ì€d¿v]V V»`Sö¡1'4YÖ€20ˆÖ":4Ö€20$7Êõ>39W[z2:KÐÓ20é!ov WWÿmhXYV¼üç#“4fdXZ*ú$o™pWß# 5¼2²ó# 0·4V_ß#ˆÇ7å0ó#Û5•3Ô€‘!4 B,‘ 5•1%zô" Iß# Gå5É &Gø6  0óPbwßZ^W:bwOYX€E°0€Eö@XÆ"bWoÏZZ ܪBXɲGøÜóPaxM^Ø0ÙÐDl  [rîÔ@hæFdîÚFaæF`ÂæE\÷ V¨ ÚE\h V,À.V‡ ÚEB°q RVq@RVk RV÷h æEZdîRVaRV` Üæ@4‘sb^@Øq"¬Qyp ǧVV\ã´X…p´XX ÎÂXW´PÝ�sb¯ V “²bÌP iX `ì�bÏV[ f] V 7hÌPFi‰@'fO`Z3` fY[@thÖÌPÚ@ƒiX‹Ú@'fŒ`3` fX~a»hÌPb`Ìg"ù(eH�3`èh°G‰“ÿb³ zw\zZzwXzWpÌ�s3`ˆT²¬P Ð^ Ûƒpr�`xy±0xyX30)d Ðeqüæ@™Ðao]XzWfvéPõ¦so¶¡å�NõpdX2Ï‚ÝÁ{Ú€”ôóWpüïððîÿÞÏÀ±ÿ �~oß^M<ÿ þíßÿÑ͍ÿ›Ž€rÿdSB1ÿ óÿâÑÀ¯ßž�€[`O@0"kßòàuÁ÷¯ž†yÿlWE1ßð“Ãÿ­˜†wÿbL7# úé¯ÿǸ§™߈xgÁJ÷9'Ë÷ÿç×ɹÿ©ž“‡yiYMïÿ3&¿ü9)TÐuÛ^^Up* U±uYÿX^Wi)`öˆ �íû‚�Šuýƒ�ì�‘ ì.•ó(ýhuW/X^^Y� �I—Øu° ”M’ .”W ïX��smXw ¾�”W‹�þ*`s_V`giißa˜’^[7``l¢�S§R¬““¶�™‘]ž�±‘jÄ–VΓJ§“\V¯“Iå—¡‘ ¦”lÀ°’‹RàÒsÓ`Ÿ‘¢�¼¦� ÀsXX`¯“0 ™‘A�/¡ô�í}sgÀi ƒ(£µV̔ĔW^¯“� )¡ ÀŸ“¦�¹‘W [gÖ@¶�x¢£P¼¦�V°sWZV�¡ä�x¢lÀÎ’”¥? Î’™Ũþ’Ц¤KÐ`çiç írXYÏXoS°ù¤gÙS°é op™0V_‚Cæ 2À°±®1ii æ ±à*³!@­3Y$µ°pkò$æ †°U´æ 50U²™0ºó$´o]_maav]C`�<±Œ°Á‹ap”²�Çà‹°Y­\¤²vh•±š¶YÈqð½²–°�'±]\b^^`mg{t0C�Ö ãµí±�\Àã²WXXè°ê±–°�±ä°Àë±Ð �èv±%ÃqÝ·X[\äÀ•±EíoZ]¿Z{¯[ÄY÷{fÆX{üfÀ`ÐoYfÞ"2oWXÙÀs‡{32‘Á± —ÁΜÌpœÀ\ÁWVò|ÀfÀ50mrzfÿmjpfu ývYrmm]Vw_›sbPpæÂ)ðÀâÂ[èÄ ðÅÑó ðÀ*`mfaVWf]a y‹"À#Ð~àÁà-Ð4Ò`X¨ <Ú -×V´ 8^Ùà^Ùa<× ‘[—P‹ÚrP‹ÚIД‹Ú<ÔdfÑ(Ñ9í¦¢ÕÓdàÙµð`àÙb àÐÒÖ—ÑxÐØ’¨Ñ êIÐ ê¼àÐdY \6ìhÆ"Wá}_çY[žgÂmdX `{çZ; _åX Xõ`•èGV{çéP•çWNP¾è`_àb×Õ-Ôîáâdëéb ëéÀ<Ôáâ—Ñäó’rP)úIÐ)úXà0Ñ XVðz=ÓcòHÑkú<Ô (Ñ!àÔ µžùbŸø� rP�ùHÑÞ-Ð%ôsvŸ ñ�€òÿâÒ·ÿ§™‰yÿnbPBÿ4& ÿùèÚÅÿ³¤—‰ÿyi\Kÿ=-þG€õçØÈÿ¶©œ�ÿ~j[Jÿ<(ïñâm€Ä°ÿœ�€qÿ]PC/ÿÿðÿáÓÅ·ÿ©›�ûq•€QD5ÿ' õïßÉ©€ªšÿ‹~shÿQ:#¿ ôÂÊÿ½°¤˜ÿŒpdÿXL@4ÿ( _ÿRD1ýi—0W"ç 4ÏAýkYùûhY ¸$`!W !gºq�!:W Ed×W! übh?WuXgÁbólûb\9’ÛAbZ…"@©!o`�Wû�`WjìÅ‘¢W¾ >žXZgæ@o_V\gæBi»°Ÿ]rn"`gçÕ”`ü×Ų°iÎ Í 0aV_Ý`Ð0,Vb¢Ð'-‘°Ð> ÿios µÕW"_—°ÂÁÁi¾P�s [_>  \`¤@ÇÏWY]cp®à¦ü¹ Œ!\[ 'í#1}ZÇÀ`bdg` õ€<°}ZÀ0ÿp }fm[V_o ^¸"Y¾*•Ì$X¾*Ì §@} «A…à²Cþ!K° 8éP|²@ýP{v]Wî°ÙÇp�{v`í§X2{^�àX oïvãy!hzX7ob¢`o‡¢U1Èà^8L°^8p^7qŽˆ8]ˆ8�`ˆ8[;ˆ8Z^0R3¿`pWW Î7g*öP Î7fÙ0 ^6õ0Ó ^0=@xNÀ|\·ZYˆ@ ¿yrxú ]öPÆy,@�wgb ß 9bû5Bm =@c@›w_~`V^Æ È s_üQPDfP2pPC÷m@3A^^_Up£tLBð€2`»°og ÝŠD~`WV–C ^D]^N R`�@´Fg[ÀFgBݲ[w]~`Y\ªD¡²Dô~`K°ÞD\W]Y÷XsG0éULB[¹A_–Cò@þ©Pw[]^_`ùP[pwZWXYZ°"õƒv{*3 ÇpìKQ£@saÔpöw÷XSvp`Ï1d³qQN s°�»vvÀ¢ÁÂvËvWƒ –P¸pvu×_\Às Çsvuÿ\ZVwf ý³jrvu[WXW¶éP2îQvu>PXcÔPŒQÛQÔVßV[vïXXñÔPÈRO`za 0ÔP¸Ra|�Ø!d“ÔP[pvL�Às .13vpB� s°¸Q¿o[svx¸`"…XcZ_aEpf`×Qd`N úPõ€ŒQ}aHT—db„Qõ€¦QaÚ«V µTaXÐtbø-@Ã`×QaW^Xçùv¢Í`XzvEsÃpÇpØeÁrÇp ×QtQÀs°×Q\ “01Æ+c pK°ù" q’ÐP!wË@!p¦Q[¿wXZ[dî° ý]†hvZow÷ f‚‘vZiy[p¸QZ_^W±!!õ€irð€±!õ€×QXw|_ Op¾¸QXw[dÐP ¨Op^qIÐftW~tövtWZ6qWtþ—’uffp[^�]áÕRï��Þõ€ #ôóbÕàïðòðôÿèÓ¿ªÿ–ƒt`ÿM:(÷ã-Ƴ Ž{h=ÿPC7+ÿ÷ÿêÝÑÅÿ¹§–†ÿnV>&ÿöÞÆÿ®–Š~ÿrfZEÿ3"ßîÛ¼•–ÿƒpfRÿ=) ÿ÷äÕÆÿ·¨™„ÿt\F-÷þN0˵ÿ�‚gU:#öûpÿiY¿duimFÐb{ dûÐîчº¨ÀX  b〠уgن〠“»°ªó„ã€Ñ�bÙ€zrÜ‚ô€3�>q¸,’î =‘G)’bNÕ€^moï…O’3(“[•‘Ì =‘ o�æ�[“ÅiÙ† o�Ð�[�g^"نㄩ“—'”[�ã`^Ä ”=‘kŒ•Ú�0–ë�‘×’Jø— ë�¦ß˜ ë� ¥”`ø˜°-@7¥ß™I ÞÇYb`tP\wý‚]ZÙ€º.�\È H_YéWr 9q›y"YW]Í[ç1C#1‹ \W†�¡n–¤¬¡Á³¥[ñYç17€ @iYV|ÿX[aur{pOöÓ¨^²ä ÜûÿbsÓ£|mÚ ufªð÷L@^¶sjpliPý‚Ì ´Ôrä ¸am¯xfä Õ¡ûöÒ¢Xbva„Ù€ö� T�`¶ç÷€Hp·=¡ö� ƒ¹|³ T�ýa±jzru}ÿi`pdmfÿgruoml{ :q³_Wpà ËmrœÀIÎÁͳ{i…jÁPÛ°Çβ±)HÜ·8³ý° Ì´M²Éý¸ð£ý°þ€X\ÿ`m`uos¿mxhZ†Xn%@XZ™¬EWÑ_ÄY É%lÄ™ wÀæ€XYÿ[XV_YV{VŒÁÓ…ɵX’Å›Ê]W’ÅQÒœÉÇp“ÄËË[’ÅUËÊYñÆËÊWñÆ•ÛZ’Å Û‘Æ ¤ÛÁÆ ËÀð±XåpV¿ju PÂX/fZVX~Ñ ƒÐÞ±ûXfPVaiui ƒÐJÁX™#TÃX`p²Ö´²ÐoX»XöMÌÕY#×ÐJÁÿ ²Ð`eXdlöÒ yeX˜ ²ÔVðåY±°âfñ°çÒ„0½=åV_³XŠØ V7´ ä£[ãÝ£ �ä Þ±oãN± hêñ¢ hå ±V²?³¦å$²Á ä  [0 ¬°Wb´ï£·½ ȳW[]ç€ä£õãÝ£_€D‘ôN±$úñ¢õ¨ç?³@õò$²ä `YYWbQ¹ðSÀòáX¨çMô„wô$²ä þ€võ8³$ƒûÃõ˜úð£ÀðûÉp@pNû¤ôs[Û ëó€ñ€èÐÿº£Ž}ÿnXB-û!€íØÂÿ­˜ƒnÿZF2ÿñÜÆï°›S€q\ÿF0ÿòÝÈ´ÿ ŒwbÿM8$ÿúæÒ¾ïª•‡€r`¿P>+“€ïíÙ�€¯•ÿ†lU?ÿ5*ÿýêÑ·ÿ †mS¿8+Å€ïôçûð?1û#¯€ üïšû^V0GÀo^ÿ Y||KÞÖX|á]fŸwaq `]{fue°z6˜"w]fbÀSØÒô°)‘]buaù{X@Þ™hd)0@ ]bÁÝp˜ Bm“`d~ ©@XX ž‘x‘!y˜ �CaöHZ`pZud|’ ôƒ ïÓ¡‰]Aò³*³Ýð£H°ñÞÒ ×ÐX ]àÐû�a"\[~”GÀV°\¯`…4¢ pÿwfvwmf`_dv u¢[,êÞ™@[a|bpÌ|“ôƒ g‡¢_ |?ap L[#{# �ˆ"˜ �Ô E[ ¸³¹%$²*³$¹%8³Æ+M²Ú+ð£i°Ô Zϸÿ¤Q3æ³öqd 2ø²+88³!+0À2M²+8ð£é+0þ�}y§vÑ>Q‡8ùP—=[oó † š:Yo¦«=Yi Àƒ2|swgd…”�df½wŽ£b0©Krm‘…µbrpÞšpuM¢da×|ZZq vabŽÝw…ë�ü…bàda^p +{—aí £ "�²$!½…É ûda{�`lj_XßV] JÕ`|kX\q v`bZ Phà…h!�•`j"£‡ �²•!½ý…\^aXWp�s-û´!Ûð9¾&Ðs ¾ ˜Ý\Ùðs ¾&Z[ïvs ê'Vusû Ü&XWs &Ü&V_÷À7Yо î@!\Z]ãÐ^bsêbÀ¾ 64X[^²A1F;ÀF9YªS2F9XS2¾%ZÎcðs¾ µ\ZÿW^V~s\ø¾ °§3uWs^Ã,³;cÄ0Á"Ya×!Ö7Z[Ê å8Ø!$Ö71 Ö71 Ä0±"&@Y}0!I|0!IR0Ä0ß"Y×!Ö6’2QF1Ö6+B$|H=@|H0Ä0µÿZ^][ovWgi"¢¯@[V´@ÇXº@,ÁA°æ�¬C¨ÐÆAhÌEXG[æ�ÎC£›dZð^`ž0Ä4Yÿ\ZVXu_+Za!P6ÓP;Z]tÐ_¶Àö?WZ\^W^» 7T¤OSPúÃNPWÓA‘aØ’oR}�xPsÀd¿ X –#¢|ýoY@d\zš¦"£|ožQ£VVòœS £Pô�|VV[ªžQÅWWžQÕX`ÊŸPÅTwù€‹� HHSûS™à i  gÒP úÃ÷€]Äà š5gW}�×ÂJcVsSf:0W A�~8cY]\V�8c{�n�ÒTe½PŽ��gF: �`ô„@PW ÎB–Z[\ Q—Z[óVZ› ¾hVYœÉ�ÐgXíh,’!Ôîg¡ wY@Àä˜<‘íg7pV$=x\‘˜l‘]yù`�mzW˜¡ ª=x[m� =xZm�¬˜×° wXÁò™Y~àŸ�þ þôómöâô  %° ÿ�€p`ÿP@0 ÿðàûÐp�° �ÿ€p`Pÿ@0 þgÀðàÐÀÿ° �€ÿpaRCî� ÚÐ�¸§ÿ–…tcÿRA/ÿ úéØÿǶ¥”î·ra½.ÿ ûêÒÿ²š‡¿taNñ(ï×zkÿ\M>/÷ I0fdv[g[ZV^�ÒH1êõ…`þ€œV\Gl–à#‘(—W ”;œ$�™=–AÐR‘aœ$�(�ó‚û_rswa`¡� �‘^_é` Ÿš~à�Š”1‘•“þ€ù�$ f][W`¤@#À=âÝ’WóÀmè˜V[bÀžâ‰fl`á“è• ó’´¨¢è•XXá“ I8>§ó’ N¨¢ N¦KWfâ’ p¨¢ p§%bâ’’¨ó’’¨¢™p§ÒŨ¢¾N¤ZXXb^Y@w QE±fY\Í &â’ù¨ó’ ¹¢¡ °Ú‘QМ _+°õlÄ4²WX;°ô@·kV[;°P·`Z©�“ a¸9² a¸J² ¤a¸[² P°ã°fz/ÛrÁfB1²°âiÀfK�²°yvsp±WÕС€É´iW©`�Ö¹q�Ö¶œYéÀ×µ`và±.ÈWÆ—pZ Ø@$Ƭ�0ÈÂéa4@Èú`NÀöpW†«�gÀP`mÇl?WXY ~ɺ`�ÇiWM mǧÀª`p­Ê·@mǸ°Y�Çh¸°Šp�Ç`hÁîÉgW ýÇ„ñmÇ>`Y ýÇ>`šp-Ø…[ÿ=ÚP`=Ù«� 0]Úº`-Ø„@}Úÿ€°ýÇÈ`KÀ�Ç[\M €mÇ·ÐÀ½ÚÀ­Ø–ð•½Ø[Ò°íÙ‰À¤ÝÙ™ÀÝÙM êY;êW­Øv0CMêK�MéM mê`*Ðmêšp�ÇÒBžè‰Z_`­éY¯0ýÇÇàXC½ê\ ­é` ­èÆÈÑþéªà ÷Y_r$� mÇ'ð[ -úY -ún`-úA`-ø&;0øla}ú`øˆqøZéa-øÈq-øY©a�Ç×ð·@�Àïòôsnû¯÷€õ€íÿÚÇ´¡ÿŽ~n^ÿM=-ÿ ûêÙÿȸ¨—ÿ†vfVÿF6&ÿõäÔÿÄ´¤“ÿ‚rbRÿB2"ïñi€Ï¿ÿ¯Ÿ�ÿo_O?ÿ/þÿíÝͽÿ­��}ÿm]M=û-£€ ýíÿÝͽ­ÿ��}mÿ]M=-ï Å€ëÛÿË»«›ï‹{å€[KþÙ€+ ûÿ.?þ¢‘gZV^WawçË “ïs-Åù]^ôøWs]ôU]\U[ô [ UYô Y Xôüš0Ró  Vô VÚ‘ï\_xô øû—@œµ s(CÄ'\¤øD :(ÒãJ(ó:'[_tz(ƒø” ö z(’£š(³ z(ó$š(z(ãš(ó-:'Z_ôø0H—@ 838C 8RE!8U"à 7ZÉj8“j8£Ê�‹9@j8 j8ãdš8ó j0ûY]u1“ÉÛ8“ë0ëYªsj7Yój7X‚1š7&@y@H$,H#H3,HCÉHc,HsÂ"GZd,Hu1œ@û+XZsë7Xt05ÌÎJw0ü7Xƒ,H“ œH³œHÃ,Hµ2PœHã,Hó œGW…!ͼGW_ Rë7W_Rü7W š7›Põ$_X3¡XCoXrI €Xå2 ‘XE!¡X’S_Xc¡Xs$_Xƒ¡X÷2Á`W£I¡X³S`rUW!Aš0vhEShó¡X*shVE! ÞG¿a,0ë7V_#×iE2J×h]! SgÑb xB£š7$pç sgV�bI xó*x xóS`òƒ_X“ºp(–µ^‘�p(—\Dú�)ð —«q#‘ ´x¤3�¯q Ç{#‘�÷ÂôõõøöðàÿÐÀ° ÿ�€p`ÿP@0 ÿðàÿÐÀ° ÿ�€p`ÿP@0 ÿðàÿÐÀ° ÿ�€p`ÿP@0 ßðeÐÿÀ°›†ÿq\G2ÿóÞÿλ£–ÿ‰|oaSE7*�ÿøëý৺§”ÿ�odTÿD4$ÿôäÔÿÄ´¤”ÿ„tdTÿD4$ýÝ �hÿ\�.A¾ëgauX$@ó' ’÷�W[XZw&™XšOW%˜Ÿ ™ú»� ˜ZWZû³S˜X ÀžS—VZ˜ü�—ó À1—³0°‘˜Èñý”`X[sa\vjð. ÓW[wÌ‘yÑ–‚ jaÑ–Æ@jõñ—ë�0Ñ–¬°Rý�§ ¢!¨Yý�-Ñ•V^Û’Ñ�µ°g__ )ú¡ûg^'àza`b`·N�rg[gÐ\ÿWVVo¡ªo§Yz£�¨Xz£Þ�¥\]]]z£_ʨ¦XŒ¤º T¡Y[ï§±gX[?W^*S¢ùàûÙ£W^V_‰\ ó¢YIÑý¦ù þý£f{\Vdú²° ±XVWf� $¸d $µ{ dû$´wbsgf¯Ü§²u¨Á¼Ñ�_´[-j¶X»v·Wv°î©°ofXtps`ßp`m}vÅÂþ}rmofwbmŸjsvW0ëmÿmfujpfï/¬±V[¶(ð]8âfͽX'aá½yÀõ½*À« ÍX‰àÍXX�‘4Í,°IÍW}�“ …_Íý€^ÍÑó`úgÐzd=Èù]Y^z¹@­ÈU]¹À­ÈW¹À­Æ [^c Þ@àÇUÝÇ%[C ýÈE! íÇЕýÈs ÝÇ„0åíÇ’„2 =Øó MØ"ÝÇY7B}ØíÇ—ÐÈhp}Øu1}سÇ$ÞÆFBíÇVBÍØCIÍØSÍØ³ÍØBóÝØ°bÍØãÝØ’ó Í×iR ]è$íÇ«R ]èC]èE!I}èS]ès]è§A}è¸Ò]è%r}è³CÆ^çVr}è øBãø6ñ% ÷V#�Mø¥2 önÀ¶1 öV_§Aø‡ð @}øƒ©�ø“}÷^SĽøs½øÈÒûôuùùâ€÷��%€ñâþ+€¾¬žŠÿvbUGï:-A€ÿùïßÏÿ¿¯Ÿ�ÿo_Oÿ?/ÿÿïßÏÿ¿¯�‹ÿygUCÿ1 ûÿé×ųþ€ �}kYÿG5$ÿòßÎÿ½¬›‹ÿ{k\Mÿ>. ÿüìÜÌÿ¼¬œŠÿyiYI¿9)å€ù¿/ûmßo`biŠp¼¾b’mbsk´ Ó ’üiªf d ªbaZ`ùmŸ ÿW[z`bèý^¡jsr{fu·olݰtªj}sÐqjv/Ò’‚�[“w ™|`•D©” ™åñý� ÉEWý� ™ ß`ý�© ɤ éVõª™X¢™ {pOXY^b®P+'X6 å:)aɰš[^W3\l-¡X'Xk=¡X'ÕVs!éYš‘_Õ ˆ)^• Ñ�‹&Ù°+ª)\• Ñ�~p¬Ž!,°iv• Ñ“j_WW]WkT ª$-WÚ°ZY• ï&Õ!*• 9V• Ñ�zþnsW sY÷ ^¡hupbÿbX[ _»Z6:^ F<]ƒ F<±pF<0F�ç€]»�Äq“öƒWIP™½�é’±æ�\¢rs;w²ø!�1‘03 �ã„*‘ ˜¼�‚.–8˜k—P˜¼‘š ˜Y,˜÷¡�I“ LP˜«�P˜/a �ä–-’K‘ ˜û”2’a¸�ã—N P—Z]ü€ 0¨ � ?©?¨’‹±?¨‘fã„Y³_[S?§Y^‹ þð‡Y]\Xpé¡§‹ Ÿ¨\^Wcð€R`ŤVK‘³ø÷֤ϩ[ܣ㩋 ¿©iqÏ©„0K‘ã©Ü‘Ÿ¨fà;L¹][°Ò¥d´!K‘ 㨴 [¹šñ° [¸ZWyPk¸Z0 0K’㨺° Ÿ¹¦[¸Y_ �¨Y«°Tã¹ pk¸Y»´ ã¨&Àã¹R[¸;`«�¨WÙpϨW0�ÀË’ã¨rÀϨ/`’Ý¢ ã¨/aŸ¨‘~ð‡X_\[¾ÆÁ^__ ÏÊ^{ÏÉ^[ÏÉ/[[ÏÉXÝ�ÏÉ*RÏÈ]ûÀ/٠ЕÏÈ\ûÀOÙ ÐHVÒÐoÙRoØ[ÛÀ�ÚìÀ�Ù±�Ùœ‘oØUð�€Ñ×+ÑoØÆu°ïÙ+¡o×W^Zü€P—W^¹p è]ï°[·ç ÷0?é+Ñj?è[ûÀ¯§W[ü€Ó`èÚ` êW©oé` èZü€¯é©p ¿êÌ ¿êð è&¹°ïé©pÿêjpÿêÝ�è¸a/úüÐç‘ Z §‘ ê`_øα _ø2Á ú f3omþýP¿-!ì[dm‹Ñ1²õhbJ¿öbºñ¿ðédñ·½ïpÖôyûú€ù‚àÐÀÿ° �€ÿp`P@ÿ0 ÿðàÐÀÿ° �€ÿp`P@û1A€õÿæ×ȹÿª›Œ|ÿl\L<ÿ+¿öêÖm€®ÿ›‡taÿNB.ÿ ÷åÑÿ¾«˜†ÿsaO>ÿ- ÷ÿäϼ©ÿ”�p_ÿTI5!ÿ úçÔ¿Á¯�Ë€pÿ_O@1o!Ù‚_Ü þã€r`XZ_^bÚpÙ5bæ/a #ßr`W^]aÀ ’þZÆ |ðرò[øu@þ!Y_]X‘þ)àì ir¿`V^\[w Ð þþipbs þrÀ|Y[|V]ÿ\ vwdïý$1p[^b\[�u" 2#2~gz…ŠX[\sÐ�ŠÏ ¢–]�®X]bZV_\h p]ÁVWhÙpÔð9PŠR`ÇWVXZóih;ÑúW`hRÐ-ß Ša&ß¡ 8"¹pA ‹ o\X^]ø�Ìð‰"ÂR$Z¸ ] Ï R![WuX§ð]Ûð r'õgW"n'WX^m sŒ‘–,U0�' !� ¡–*amsg0] R`¾×&gs^ ]&\rV Yé@ø'Z`s p ;Úp ;å0] [03@£ Šp<<üÐn&E1g&1ñ<6¦Þ ^0o%|3Ùp…=퀘;ó!� ˜0ç#´4L‘˜0?1[ûWZ*Ð`~] |Ò7íPbv\ ä:Åaà0 ˜4Ù0ë€av¢} ¾4(pj‘`A²˜0P šòšp"Y>)�]_^iüÀ˜4ªBC]IANI^[B\¾4BB\]aIANIë\ZIAtI[\i¥`J@tIÜ pJ@¯LlJ@/0CRÂ;@þ9 owLþèQosbaûþ6aobmjßsUÑaoa`wê@ PO!R’öAû@ã�sé@[‘?¥w¹òíð-c úÿéØÇ¶ÿ¤“‚qß`R@ß ø쉵ÿ§�w_ÿSH4"ÿüéÕÿ¯��ÿ~dL<ÿ+ ùÿéÚË»ÿªšŠzÿjYI9ÿ)öÿVZXYX\ö{vbÞ@VuZ]M¡ñé…í�ôõ€S�vÇq\u^÷-—^u}.—Zu]˜Z]u&�ø‚>’oVu&˜YuÚp¾˜YYu&˜Xùu•0˜XXuÖF˜XXS�&˜Wu°zp�³ð®” ¸™l{ ¨™[u¨™rS�F˜ÈpuF˜òï‚ � §XX Ô˜‘ �ç€`ÿam`blW|÷W_|†Šõ=«XL ooû‰zvYX^fÿvvVWižýðAvWXbiçÅm¢Èp uW[¿°�¢!�—¡ À�§1�—¡A¯ ýµ£R�—¡ ¯¨Db�—¡¯¨’�—¡¯¨d³�—¡¯ �¥Wl—¢ˆÂ¨¡—¡ ¯ 9 w ÷Œ1Av[`ï;;¢urómmG e¡|[oó€½ÀP±s`dvDX²d£Q g¹b¥d°öóu|ÍPwpÐ]И°dÉÐ|gW;^Xrð_¨±Òg¾°2@uѯõzuqÀ{ijwf Úyë²B¢[÷µV]ï´ È*à Æ[Ä÷°—±©àm` k ¢ð‘Pÿ]u\v ¹.RSÅs ^ÊZ9vÔ�pÊs ^Àè±PTÁ5`H!^ÈsYÁ£ËQsU�¤É|ÀÅËs¦�ê_ÇkYÁçËsçÊ|À ÛP^Àñ@�QºZ`žbsdmèÐW�\ ÿ>Ñ@Zs HÐ.Ñd_ à«aZÓ^aÐeÕ]2aÐ8Ð[Ò\là×T¼ðÕ[aÐÕZaÐUÕYˆÐ ÕXˆÐI 8Ðós—paÐeмÐÑ÷i©ö‚sË_!Tû@2@s]¿\a}ëÒYßwrY÷@ç¼R©WVpX{à eÐæ¸q eÐ;Ñ©à "vPèJR?â¸qIàìÑÅWåà9 5`“ô-ÒõBû@mâh÷ Ú²salÃ�à³ð“àR šèh�à;ÑR•à™�å† 2%ËâX ÓåW`ßæó0ßæ!Yˆàåà@Óà/Ðòþ*Rrwlpjg_fw wÀÿr{xþämfv`{ÿbxwwjphif`dY^g '9ýI÷Xx±XýPGøŽ³yý‰ùVg šðÞãaa}XÈq î½zr`\_ßwq[ ãYðïb ôsr ¯ ý€û€îÿÜ̼ªÿ™ˆve¿TC2€ÿòâÒÿÁ±��ÿt[C+ÿ ûëÿÛË»«¿›‹{Y„;ï+e€ûëÿÛË»¬ÿœŒ|lÿ\L<,î�€ ü‡€×Çû·�€šŽ~ÿn^N>ÿ.ÿúîÞÎÿ½¬ ”ÿˆxhXÿH=2%ë¹€ý½°ä×þÁ€¾¬ “ÿ‡yk_¿SG4Õ€ÿ V\_VŸZ ûüý}Øz2G0Ì!30B}\�Vs 9 y ±}[YZÿ1vY!Š XZ‚04v  @ZŠþþ@{w _W]ûôÎÒ{YVhvß` )1AzZ¿Va qðAz$8`&Pu8a�?0»zYAÐV[fÓ@ @XƒÞ@ø@�ÞA�DƒFÀaÑPu¨aÄGX[aàPÒM �þþ@w|m{m÷1øbY[v/mÿ~¢w+ Ðü 9 wai»Õ!"^à@bJRwZS €� ²ò;!4Pç| E'˜`Y üE%BÐVV] Âí1AwX’ aäw#ÿà5 x"V^ñ5 û Gavuxïdìš)jd¡ª 8! "· »)açdª x!WXgHÝà0Bá féàè%dõàäè$üP � 8!V^WΘ`Xu 3V\rP!7Þ@Z7`Èp– 5í1íP �.bÂQ0X%0& K6^!|ÙE C±ulq@~¢ulX\‡0Þ ‘o}w˜a¿¬9Òš1b\} ½cv«ov�3 ¤5v­3e�`�cº1X^M s¾µ6ã0Zé:XISß4°Ð IüP‰é9TÐ)JÊ`JV“ IíPé9ðàYJêpYJÁ0ySvosÕY(aé5sQð_Z•4°Bêp¨Jš`ô¨I1 ¨IYZ¸IYXèJ2 ¨Iõ1¸I%  Zª`¨ITÐqHZÜàHZV¨I"ðxZ& é5k�0M U¤5i�3 ¤5h�3)¸W®2Ù5g­0ypU Ù5d�3 ¤5d­3•´5`¡S¤0<¡lÑfh`ò¡¡ VˆÐU:£lfN! ¸p)ab Â0`b¡¸ O W±êp0`€¡lW û]¤±viwvÿwujsV^„r±¨aQ Å¡OÑ JØq Db‡‘ F•Цa^S�&•‡1‘ ´¿iB�®hYYS�„¿h’‘&�»’‡Ã� $¿hñ‘ ®h¢F•ë�’‘õ‰1‘AzB� Hõ€æ†Q’õ‰‚‘uz“� cy¢’ •ë�Ã�á©z–àcyFÀu ôÉz¡ õ€Dþôóz þúüíÚÆÿ±�ƒtÿcRE3¿!÷'Íÿ³¦™�¯€q˜ P7/ÿ$üÿñäØÌÿ¿²¥˜þM~pcUÿH:-"ï_îáÿÔǺ­ÿ “ˆzÿm_QFÿ;ÿóèÝÐÿö©œû��_PAÿ2#ÿöçØËᆵ­‘‚ÿsdWJÿ</"ÿùìßÿÏÁ²£ÿ—‹sÿgZM?ÿ1$ßV_Y^§`Xÿjb_YY`ç­ba ‘X`çœð �VWY÷b—XbØ�’`!®;–X5G��^[UP�ŽW“Y`–Å@`–W£`–V@� �]ÏXV`‘°�™gy�!‘]WY`ð ªG� ²”< G”\íW��“[[^¯`’“[,fûÙ”Z_\bc ”“û�¸�¿õ•VH°¾õ”^(�®”ø#  ¡”Z^Vbû ‘õ”]_b \D “‘Z]^š‘Q©gQ¦]š’o©«�êQ¦\š‘�©gÞD¦[bD¦ZbsQ¦Å�oÅ©¯g�R¥Xš‘®ã©gã¦Wš‘N¹g 㦙’ ¹×g ã¥[x¢ ¬Î>¸g L°¿‘Z[\buY�- _³`ff±L°÷’UV´ ¥VÁ  ‰¶R � ‰¶6� ‰¶WA Ô‰¶@   �Y^ïI̲XY³xF!Ú°XWe²ˆk´ç°u³�زÕ@šþoajbWh`\÷^sd[a]dv?fkf !Àï_K)Ä]qàÎÑÀá�fL° AÃ[¸�|´Ë“°LÆåV¸� L°+ÂY©ù,ÑÀX6�¤WÐè°FPŽÅ@ �ÅW]ç` æ�ªÃ\`é´Æ ´ÆZ`I´Æ(�§Æ6�§ÆÒ¹°§Æ@ Ê´WWS 3À]ÂVM LÅkV_¸�ZÅV^)�”'ÖGÁ5Ö]& 'Ö]t ¡|´V ° ¯lÕùV °xÕ\_` L…Öâ�°†Õ°ÀŸÖ2½ÀŸÐW‘V\ó¹ÖˆUPxÕbÁ ã Í±u@<3À¼ÒY\xÐìÓçY xп‘VYVpe°B uÄa øö~pÐX` VXa&à¬& ÔVXŽÐxÐ oÑW` BáÎ3À“‘—VW_š‘ xÐRæg«xÕWâ�õÕV˜0ÀxÕJІæ�úxÐ�hmÿrV[`mûaq –þ�o`vwfuoW__åPâ¼áÿaobroovÿmjpl =Ù`Ôá`wÝâb·`amñ�'?áaÿbopVZV^i¢ePSýëÐó`¬àVÿXhvgTö�j`¡Àt ØþBqjYoY|aíf(‘/m±XoåXIóPð“�WoòJòPð£à``}v«ãbofå0¹ ºàùo[_T1aÉo}! ŽóQa`oå}  ùa[Wê*a®ñ!\X\EZÇöÿ}  ï€!ôsjíê÷pÿ€ý€ñâÿÒ³¤ÿ—‹rþ€Q>,ÿöåÖ¿Æ·¨+€ŠÿzjYHû5;€ñÿáо­ÿšˆvdÿR@.ÿ øçÑÿ¿®œŠÿxfTBÿ1 ýÿëÙǵÿ£‘mÿ[J9(ÿôãÿÒÀ­œÿ‰xfTÿB1 ÿûéØÆïµ¤ÕƒrÿaP9*®ç ýûð^¿�dÿV^^{`}÷Q¾‘dVZuZå êXXåé ê‘w‚°=½’’wbXZHúWZW\ÿbmW^\^Ù n±o]í�jsßd 7 ?[jys�ÐNa` N<¿‘Ubp NN ßjsf€ZXZ‘‹N@á‡ÿX^`jsjþ€XZjsmþ³W^djkjUÖbãÖaãÕÖ`ã€W]Vã6×]"/)*¿/(\"/ !%ÕYI / ÚX`UoÑ e(WÑ v(ÕW‚# /(W¿m­ e'V_Z¿(^¢À/'eÐIe&WÝ]‹he$m^J b[:l8¥W1&:l/$mý^ŒÐdovt–H:b~í`5[:V0Jl9bg1~;z0l8Ï^`bds l7[Xs`bJl7Y^bÁ1½ Æ;kd Æ9aòå1 l02]\]YÒ1ü:lü7\]²1l5&@[v1t/Kl/I`bvœÐ(SK31/HY;BwKlYH240GV;B©¬@!EV22¬@¾Jl ¬G[·AK¬G§ZXfÓ2÷HWR .¬GXWd1 ­¬GWX'R?Ya*B?X&Sc[OA¬@y!‡m]WïÐÀ0å¾FW—Y\bÒ¬F£Qo¯ZZšX[•Q8¬@¿‘ÄSpíð�TÕX¥RÞWW)@m‰ïX¥RÞW"ÐÒ xÇòcúQY h’úR h¥R íðÑRX]Y0f WiaŽÌíð“‘fsY�ºPó¾yf]Z ò‡hW •hÍІ`¿‘«b¯X|†h[À`9m²~arvþ�†`,@áÙbda‚`•`æh:‘`õlWõkÍÐ!•`y! u¿`õkÎ`‘ •e `Î` †` dXZW/V’¿`_VêÓ_vŒ�›3òb_Z×À- �”_Zì¢Ù�”vØ«�Ù�¿‘_Z °fos �²wg ‘vâ™’ Ïyjà��}ôó`æ>÷þçεœƒjÿ8íÿÔ»¢‰ÿpZD.ýEìÖÀת”U€hY<ÿ&þëߨƳw€Žÿ~XM2ÿ ÿóÿçÚÍÀÿ³¦šŽ_�th‘N©€÷5)™ùßíâ×¹€–ÿpaRC4%Õ€ýø»Û;ÿ¯ �~]lï€H2ÕøûpÿŽo`R¿A0@àpîÅàsufÅà.ù¼áÙ�g`bfÿjbv÷û ×€vwuxoÿfpwwu`}gruV]4÷f`pဠ8ýþ�suraf_lYo™ v>â÷pv(“w\½7šl*H›kCG”'÷¯¾‘p�o`a k‡b÷p`X/s8|xb“‘X^sœ•WYW`sœ�Ôé�±�W§� º—]sL�¬•W\[Ö—Z¶�é Ö—µ‘ Ö—Vls[«–V\ §ß[lx!©sU§X §W, =N¨isœ�)ÿpirxvfÿ`vvfoa}ç¾æár«m}ç¿öðœ ú›¤ Y?À¬  ²¬  ¬ opo~tÐ }R˲o|X Ä¥§WÄ »¡wtÐ~Ú¤_`W“äbÿo hs^^_[Ïro€Àõ¢abÿY_V][ol€Àopmtpmr»mdp m½dn Ÿ0´V÷\;´YVVgç 1êÒN±�3òmn »@;´C°:à;°–oplXî ò opiíg€p›ÒigZFšðÍ<²™°€p“¶ÒñР¶†ð“¶V^# °Š²ñÐÔµ†ðûšêÒigW^Ý ³haw1a–΢áh{yõ±ãXµºà ÁbwËYóºàxÀg`Xÿ €!jfÿf{jufjpÿhufhxm`÷wjr;�W\wi¿fdw~’fÿdWXgfb· g7‘dwÇ Z?mY[kœ�y ®�ÂXm`ˆÁ�ÈWò™Ã³�ÀWYZvæšÀN�ÃWYXOv`[[·�ÅÈVÑà ³ÅWYY¿Áh�N²"�dV yð[V³á\¯ JÿË`ÑKÙZ Ô Ú6Ð#Ò-)ÚYZ Ó ÚbÐZ#ÒÚX\ Ó �Ý’#Ò—Û Ô­Ý#ÒJÚW�ÔÙÝ#ÒïÛ&cÔeìÓÓ¬ ’ßÕR ÔïÛ!Ô ÐÔ5i ÑpÐg× )Њ`êlnävê6ÐmåD�í†åvêbÐmåÁí"†å vêŽÐmåóí†åI ûkç%ý†å vê$æÐmåWý†å pûÏç“fŠü†å¢ûkçôpû„ç )Ðø ~ôsz ýðûÿ€òâÒÿ²¢’ÿ…wfUïC1€ ûÿéÜÏÂÿµ¨›�¿‚tg'€Mÿ@3&ÿóâÑÿŹ­¡ÿ•‰}rÿfUH;ÿ,ïôåK€Ë¾ÿ±£”†ÿyl_Rÿ<- ÿûìÞÌÿº­Ÿ�ÿreWÿI<*ÿòäÿÖ͍ÿšŒ}nû`›€D6(ÿ þðÿâÔǺÿ¨›‰zÿk]PBÿ4&WØt�Ù ]°L½�ug_[WV <»’¾ XYV WOZV ! ®bpug^hp ^ZVv“yaêPmxÀ’YgjI=^°==Y ðÔˆ^°=XX»§V]q\ÑXÄZ ÏÇY ÏêðÏ[Vw_ù]ùÜݰùZùY!ùï¡ÐS XU bc gU r;ÂåZD°gP%Z‡(Y‡(„°g@®U y ÁY* ‡&Y Ñ(ÀÐîÑ(ZÑ(YPÑ( ð±&žy y d´#½ y& ‡&NG ‘²% )5_\ZY y%\S§ a5^° y Ll6âÀz6_6–½y _6Uy y%[Sz0È[Ó0r)5Ó0ey Ë6•1{4D@¼ :À ˆ1Ï2Xq± @ë3½@@)F7° ?G,)EY+ YF£1@³� ^°@[V TωAk)EV¹P9>Kb~¹P«E~¸Fò«@[b[\Xua–”²Ø@+é«EA ÒEX\VîÝ@ ÙýFsx÷ ÐýFal |P®BW\V P¤+S€p P�Pu¹p\×VVv3|²u_¿}{+Æ¡uÏ_|_PVR{f÷*kTvuÞjUudjUhp»ŽVdjUa÷xjT[V[÷öDRYX{X»mV]°ÀUWºÉRÏVzrfÊQ $àWÈSàWÙS ÏP@?XW[[ «D` ¡` f9 fè° :g× ‚ fWÀ«@[`TÖ«DW^[PjTW^G| _PrcrPˆf’~P ˆfŠP ˆf–P N¯gdˆf®P _PJÖ€sr—}�Ùam) ÿYVl`m4T×cïciö`újhö`ýújd`{$} zmÓDQþîaVZVd{ü0pEuXVa{ü0p½�s`ZVVi·f”²s`ªÀ÷ ‚±qs]^w?W[bw«@‚uUX‹p�wVŠq�tÍYu`lWݯzXi¯yºPº”zbÎÀoÙïðdôó^PÿòãÕÆÿ¸ªœŽÿ€rdVÿH9&ÿúìÞýÐ-´¦˜‰zk\?ÿ?+ ßþïàOÁÿ±¢“„ÿtdTDÿ4$ÿöèÙÊÿ¼® �ÿ}j\Nÿ@2ÿÿñáÓÿŵ§™ÿ‰{l]ÿM?/!ÿ÷éÿÛ̾°ÿ¢”…vÿgXK>ÿ0#ÿúìßÑÿĵ¤•ÿ‡xiZÿK:+× 0°W[haÍbS” S�YVxˆS’X �,EQ’ldÌpÉÚ3’¯g% –X� —XT V™å`G�Ô�Q°G–Z‘È%)”ZQ�4�‘�…”²Q‘‘�@~ZѰB~~Z\p¾�x´”Rо—ZvÏÞ³@pAÍ–Z©õ�Á“Yñ�õ–YWZ¦Xñ� õ–/XZ õ–WÚõ�.[x_W½ E¨• E§V4 c¨A š¥xš��¦^¡¤�¦m¡�§A E¥u*l¢¥uO¡ȧšALȦm¡@å¦A ò¥«sh>P¶f>PXò nÀ°b\bÏV$± ·[bgs_X+ ò M´*¦¶Z\BÀ¶Z&²ì‡%~± h·[XIv·D²†·>Ph·*+¶Y&²†¶×°ηD²gï¶u g àµ>Pò é¶aA¶X\Z{-ÈV?.ÆR>PIÇIÀIÀȳ=Pu  Æ=Q ¢IÀ IÆ*IÆV7À ¤›Çº� IÀ[m]¢ÈR0ºÄ|¡R0mX’ÕÆ^¡ R0²l‹\i»±jÅùÀRÁJÖZûÂØÁØÒRÁØ=QÖXdR»±QØRÁ·Åj³@çhqÖº²“Ü‚ÕRÁ’³j_Nq>´¦ÐXªÐq®ÐtÓRh¾×r©Ñ¾ÖU h Ü×r©Ñ ¾Öt0h ¾ÖÎÓ0h ç©Ñh¾Ñ®ÐdP�¾ÕKd_ÞÁ:çO¡Iè’ÂÀ:çí¡gèü T,抡,æY20,æ Xü =¢çÂ@¯æO¡!½çßÁ¯æí¡ Ùçü - ¯åah20 ¯à²„‘c ‡%‘…0¯à �"ñ   �@�Ð.ñ•¯å_3¡C÷ü „Cö‚1_÷ž_÷°�{øá _÷ÂÀð1)óBz0ÎA³÷Ò`‘Â÷20£:=#ôssµ€ý€ñâÓÿ³¤•†ufW‚ÿ*õÿåÕŵÿ¥•…uÿeUG9ÿ,ÿ÷éÛÍÿ¿° �ý‚]€fYK÷>1g€ýõo€Û;ÿ°¢–ƒßo[G‡€ßóã“€Ãÿ¹ª›Žÿ‚whYÿL>1ÿðÚÍÿ¿²£•ÿ†whZÿM@3ÿþòàÎÿ¼ªœŽÿqXJÿ<.ÿ×É kÿVWYbgû`’w|[VV¿ ^ Ÿÿ\ó 2wsiY6§X . )ÓW < )[V¿up`wJpsÿ`bl(:  eÂÁW[VX{W3ù Ù`wX^VÏXVWA1˜Y[‘˜WZ¤»uYÄÀUQwXXÙÐ�’©`O¾W  ïg…mõ ´ ñ3 œ #$Y -%ÊQ ýuu’w {vW_w vþ s|$#  \ 2d'@ý ivgk•d%iëÀX .# ßbbl‚%bbœcá-$ a` U ÿjvsmvjXÿVYX^Vmk¯D É&WÓ& VÝ*W\Ö# Ý Ë"–ç XZÖ# Ý U0vsvlÊÃò¼$0Ï w 2ræ™Ñ|’?0WXkÇs Ý I2=P`s³ Ý bPvoÿ�c5ávà À!1ÿiX^ÏþH2dWZW\s¹U4�2hÝ ¾Ë `)±vß_VVWz4  �-²5V|P` À8»1ùÀ0 1\WbX[ÿ\`iXVp¹ 4ç8kõ=Wù[—P MW[k"Ý ä32ð14M@ùHL/AC æ`JÝ r1Z_[÷ævVWXÏXxp@’Es!p@I1–AQ0�GçÑ´p@!1Vè ÈD?XW` w€ÿ@‡wuzëQFÀÏPý�v›gYÏ@5ðý�oYmT°†ðú*Rmý‘‘ ÈCP  V4  „�CPWã‘5ðS«à 8UxO¡SWEáSVí¡¹p@±momvðXãP€TžY]ùK³mo[ÐAPª;Rm|¡ÕÄmÅâ„8UÓâÈVâÖW«à¤U®ñòV6`Ì”mâèñ fÂÁ¾”mY]jÛp&eXÒ ¾�¾±lw_WËp ÞBiV\ Bf]W¥ Ëp bi^` Bf[U\Ma BfZLbBfUXŒbBei[c²f"{c²f›`^`¾�ý`¯uhwjÂ@g^`»äeV\[ïa\8�*’si[2’8•ær ¢•qg ]O ”siZ~� 5vC°x•B±b� �È sC°3‘vC°g• DwZ� •Šqvƒ ‘yApbvɰ�‘L&v¸qÀw‘¢–z‹r�Z%ôó†+ýòäÖÿȺ¬žß�‚tXÿI:,ßó)×ÿÉ»­Ÿ÷‘ƒ7gYÿK=/!ÿøæÚÿÐÄ·ªÿ�‘…yÿmbWLÿA6+ ÿüðÿä×Ê¿ÿ´©ž“÷‡{dYÿNA4'ÿ ôÿçÛÍ¿ÿ²¥™�ÿ�ui]QF;0s�ÿ÷ÿëßÒÅÿ¸¯¢—ÿ‹~qe÷XLÅ4(ÿúÿîâÖÄÿ²£—…ÿsaO=ÿ+{ij ÿ• ka|WrÿxwsmV_³û™”mv&� ®*œ] *šs·”N›J�*–V4‘· j*��_¥ŽôAÿka^^Vf|mó��‘]XV ÿ{i vw1�˜¤�‘ª“ ±�‡‘[­_Êr†’X@ÍuЕW¨0k`ïm 5Ä’`Z^•}‘àó”uŸàþ”Y/}= ¥u­àþ“òš"qÐ’S°ib~…’_W^i9 ÿk^X^[d��‡�K  °ÂðH¢åZN ��a£Vs¹R¥U°f0kö˜Q!!k][[ÿ^g Ǧ“ ñ�H \¦P}÷ F¢\[V['}²¦ ² ‡�ë\YÌ0Ï“[X\[ 2G¡Þ 1p×O†¡[ã�Eðe1ö Èàü¤V^îµ] µ[ îµY µV ´ü ‡�ZRà-£Zu]…ðJ¶WJµ”ÛJ´Z¼0ý“t°XÄVà{³Y…ñ䣌°Wbû’´XXX}™Âò¤±W}ð¬µWbµ± ÂðA±—@ ^£Tΰ›° ÔµW›° ȳÏYY[[ƒàQkY?WZ\} - ý³z»  ÆZ} ÆŠ¨° ÆW¯ - ‡ Y*ÂÀ ü£Y&�FÅÝ0~>³XZZWä ž_ÂY]ȳnÀ\£Âð‡ â‘ü£XïVWü£W]]–Åß`–Å÷°ü H ÝW ðg ä£W\V[2phÃÀÐÑÅ0`¹ý“ãÀYÑÄX0`!…’Â@p ЙÁ·–Ä› Õ_°d2�кà.Ô°9ÕO`–�;ÓW OЇ�Vå^XÀ� ]ÓXîfÖWfÔ\Xaó œ H V\V\Ðpä£�ÐÍÀ—ÖZg[hÃVZ@Âðìê�‰PšÐ’VWWÏ]+’Ï@V^·`V^ûQðk÷id@V|ûvGkghÿW|VYW[o}oy�o\®±ï]W¼0Õþâ\Z[_mRäYwð H!Ä/â^`8è?`8ä[X£\ä�ýWâWÅ Tåjà©P cçeÀ~äZ_XYbä Z^•á 8ä¡áƒ°šè)W€`�ä\•ášåÌàÍ0Äç› ¨åèàä�ÄàöñZ[‡àb_�äXâšåðŠPýó*›° üåXòÄå>ðì”ðbäYW à�T÷] ôZñ}ÀoøÇ[oø”oøXÝ oøW ôXZv•á a¶÷WÃ÷W^8äØñ¯`Ãðïfôshíé¾Ð€€îÜÿʸ§–ÿ…wiRÿ=/"þÐ�ïÝ˹ÿ¦“„rÿR4ûéS€¾µ¨ÿ›�qÿdVH:ÿ,ÿùéÙÉ﹫‡€‘~ûk“€OE6þ›€ ýïÿÜɵ¢ÿ�|hUïB/© ôþÑ€ÔÆ­�ÿ”‰vaÿWA+ÿÿéӽ六�yeÿN8%¿í Ãƒ¿lW^`Ð7VV[¤ðÍ,�߉\åé íÝ÷V¢ö° ÿ * íÞ]ý]O[ZYat=Y1`D)ðÀ�5N6@*Y»V|`®álνÀ_hÂk]ñä (A@]WVoX[[[Ûðl&ª…Z�”X�–ªWY‰À¤4ÖºªVZ �I-¤-ºª½‚5 0lßWY`b^þ X|Þí`‰V`¿bhY^|X­Ð²c g!5àSž lª²ðü±1lëÖõÒlÞûÝoál`awG°õÐy 1÷Vá1lojû\aVlpf�ëÎ']0Û"¸á ÝÒ"V|9±sø)A1¯ø%EY4 7&11 /;†í 0UH6îA . 7W[2 i;1‰i;P1U7™2îA Œi93œ÷&À1P1É0¶ Úðá~âá3ƒ°Öê5[XÀ~ãzbf\0ýâ A¡IG\Q@ê�zw°ÃL4B—à<@�xsßjwfu9±eñKE‘ÀduØ 1]Gï@x¦¢ufÛYcÐ'€CXg\‹@¯°ufLby‹@èÐuWYuÆ ßv�¨HsÕ¶Fs°BÆJsY¶@‡ s|%°9iÂ?s|Y` ñ@¯°ÿsoWY_`{ÌÿE^` Wï]` W\`½ W[` WZ‡` PH QšPËÞ VX`^WW`{^WV`^PTQ`dÙÀ·Ã·p­�«ˆ�¢sp,‘rÿl`ujpr¶§é÷ÑloÁ°XpZV\Y^ÂQOî¿SãÀZÉRÛZ[ÛQÖVXV-]âS\mêQÖVÆUÝZÏQW ÖPÿkjX[aamÿljplb`ÿuwujdhfßü%aVbbrmrxu/jó?`�i][Vÿsouljw ûk’‘iYY\sÏju q`[@iYßX[o`hI`pý €dXX`uf?orwf q`�ÿfdfbwWæË�<õa«fYX©¸k} ¸` ª`Wÿ|dbXZzû1ÝhWXzzícbx@|}avs u”ÂbÚÐ|p|¯°¯`ggvZÐý qdujzfurswZÐý.xgm`viç˜9â0pjvbãZÐr4`dÌZÐß`a|!�÷`Y*�uw&�ƒ{°*•Er3• ¥|¢ ¥zs&�ñÉ|{*�~#®ôómöïðþíÚÆ²ÿžŠvbÿN:&¿þêá)µÿ£‘kÿVA,þ;íØÎÃÿ¹¬ž“ï‰}MeXÿD7" ¿ûçÓ�€¬ÿ™†s`¯M:›€¡€î꧀ȉ}¹‚G:ÿ- ÿòä×Êÿºª –ÿ†xn_ûOë€1"þõ€õæØÊÿ¼® ’ÿƒugY»K�/ ÑçöÖ�¶ asbaÑG µ!é‚êðñˆ$ˆÀñ€ ç„$°ñ†¾ÀÓ—°*˜\�*˜à*˜ Ð*˜_°FŠ•\‘p�æƒ4Ñ8—±�˜\ �˜màÀ�˜Ñ°�˜Áàp–ÚÐ[ý p”dW ^lu¯ ¿ä•\í�«‘ä•[í�§Zªí� ñ—Yí� ñ—X¢í� ñ�� è‘W7¡ ½Àò“Y[]nÐ9F3AQ  â|àç€ÿXVufdçü‹"k am`bls ^¡Ñ°e ^¡Áàe þ� `]_mWX`g~p�š¤V[£ %p�›¢êà·¦‘^“`]^wêàѧ”åÁ§¥^ £í§±¢¢·¥^Ñ ¶Þ�·Âl`X\[]FÀº(`í!X`b^õá{±lÞÐ['ýT^Z\_V{W÷P_Îî^\±YYY*Ðj°dÝ\±Vt°ç° |»YV³q|ºX_×p¢»*üÁ¢»WÞ�‚´kW^*Ð |ºW^×pQ î½Ë]*ÐÌB×p'Í´À|¸b°\*Ð¥MË[øáMËW×pMÊ S°†ËY‘j°Uÿ]VsYZi___|__ ãW²Ó]VP·Å ÀÅ`V•Ww`Z»ÁÀÀð\ëW¸À|!ÌÎP!\`œP•àVz?`b üÈ4Ð’ Ñ к \Ö`T[[~^ d0»ÁÛå˜ÑlYÜÀ\Û�K²Y[Pàò� TÔ �^Öc^ÐG Yø@N y YVv ¼c „ Y c!/þ%ÒX^^[W ™ê=AžÐ€ÓAérE"–àN#XW\'`WVà Ò ¦ÐÈ×*Ô ÚÕXÎØïÚÔíÚÔV_ÎÑZW[’ ÑêÒÔêÔ°¦ÐUx@[ géÂXß Ywo`dAi)GAqåW¤áÛ€éò×p~à(XXYNÎØ¤éÔ¸à΄ X ™ÐU^7X^]¥À[Űí.ÚëZëíÁ ÿç%\âåýûà'ýð•ÿæWáæOýûà$cýðw÷öúÀŽû'ZŸýðúÀÝ ¸S°äZ íwVôspüýpõ€€òäýÖ €µ¤’ÿ€n\Jý8€ðÿÞдÿ¦™‹}ÿoaSEÿ7) ÿñáÓC€ÿŸ��r÷cTU€6)ÿ÷ÞÅÿ¼® �ÿqcUßG=(u€ ÿúîÞÒÿô¥—ÿ‚m^Oý?}% ÷þñ™„¼«ÿš‡q]ÿL9(ÿñÞËÿº¬™ŒßmXÓ€>ÿ1$ü¯UpXÐÿ^rurW[s XYâïVuV&�é ýº px@` sÜÜ�` åV3’ÿ%Ò1]¼8Q oo[YÕ°V�Vaz¢pñ€m°oÿjV\XV]zŠ�Ï%Òo][`…2FÒoî ‡ yf oÿX^b\Z`sJ.@ ñƒoÜ�uyÿ lmfsvZ�`dR÷"­|£Ý¸Yvw²QHâ"Ñ|£ÞªYm¢g[õ,`(¢²ÞÎÃóXb²¸X0?#ax²!¸7°P&|£ ¸T R}¢¸ªWm¢'åW"  ß0mXs�ù@~q® d1m*FÒmVyáðmVV^^Ñ'’³09AÖ!]´pë&ZäS°Ñ&Z€pÑ&Y\Å ë&XúÑ ? lXþcàXpbî‘jwsœ°WñCAA1Ü�_ BþÒjw^YW\ïV[V¥�‰È\7ði2o0ß0jw±0W Z0?2¶Qî€ã‘”7[С9Wó*L±˜0Y øù>¡˜0XYVoïJÁ4X ûþÍ4WW[ocÛ0^ m`žW²ÿidXvvW —f|ü€k+qBuC{ BgÐ@^ im�»ªó�huZ&àóq…2:@YXZYBGùpCDYKA©^Gù^EXYAU^@zFXù ^EåW–A^@ŽÐh þ•Ðlg\Vßhuf}œàV ar|—´BWX[¼KËDWÓMÉäF»LË@f}?gra�6QP¯\jpmé >¡f¿zm`ubxŸPuþL2fdZ]Xb}÷¯ò’fdXX¢KQPU;°LP_VV¥YLPnWKQPPÿldfzufÇms~ ”èñ!ýŽUamplW;|WžR[ë æ€DuPn¡s£uP|£s þæ�x^V\hyqãR[hìWïYh ìWXh9 ìUA�h göPI g` g`ìU%ZçQNgöPNg`ÉNg`ìPax?YXXWqãPÜ�µ`$R™bê ¡h‘ÐΡhX¡`m°avßX]da²!ðôK"ÑaVÖ`ZsVºÜ >¢u^æðoÇ k²÷`¹@VoŸlv uqÐaßlwv vZ«W_qvZûav§`%x svY×\_Dq [x[^"DqvvrppªZ÷`XAr‘vWšrãpôcPg èpæ„&� ñˆ^ îñˆ\ ñ€ný"ôójôõìØßı¥ým7%ÿîÜÊÿ¸¥’ÿm[H6ÿ%îÿÜʸ¥ý“Uo\Jÿ8&ÿïÝÊ·¤—Š}udXMBÿþóèýÝ‹³–€÷ti™R=ÿ(ßöèÙ¯­ÿž�‚mÿ\N<*ÿ ùæÕij¦ÑÿyfS@ÿ-ôÿN<*|‰E° W[ W Ï­ˆç‡Yô‹Vð€�ÂÐ�üH0ô„X\ X^ E\‘ @˜ù�‘@—¤ë€M’ô€|2\{8|VY]ðÁ Œ‘sГ�ª|ÿwXY_\af÷ ì©{]Xmƒ± l¨·”(0á Â�‰·”% dš  Â� xpýÀs ªý‘€$s m°xlÿ[W\fWlS Ñ §V%  Ñ þh xjw[`Y· ¡g|!°vAøípHa^\f|vu`Α™wlpç¦5Bu¢Z�} ?0u¢F° ‹¨• N}¨X‹¨ù ·©V}¨$À} ‹1¢²°ïz‹11°îñ¦\Óý ƒÐwuþp2vlY Y[wY^_` èÒóvlN� ²]^Xq*°UÐüV@~ƒÐvX`�L³áWFpV°B±Ð|u`!vò ]V™Rú•¦Plu}ïswrpU ma ÿ{rulmjhiÞ>P§‡»wrÿxhiwrubïi©�Òuo^w¾À´Zʵœ0ʵXʰ/0u?_\VVsu÷ÀípÞ�Pu^h[aàwú%šQ)šý²\ÍÀƒÐsu] o0Äð:ÀUÐsuù :ÀKÀ�YWEÆÔàQÆW'Y QÆZÐ wÇ@œ:À‰sX_eõ\Ï^Zõ‚—ÆZ]û¤ÌYYY|â—Ä\u^¤ÀžÍÈl^ ÍÈ^÷u ¤Ê\^Vu«ÜÊZ6ÀÛl÷]îÊZ]u­ ¤ÊZ]ÐÜÊYáu�\Û�ÑîÊYYuk ¤ÊYýÜÊ¥XAÀ¥ÛÓàîÊXoXu ¤ÊXXÐÕÜÊW÷°îÛl[³#æîÛ[çu¤ÊgPu„îÛÐHìÛP 8èV*Ð ¤ÆV®ÅÊÀ‚é"ÆÀÊÆˆá Ñ ¥ëEÐ ¥êiÑ ’êŸÓ¥ê²ÑIîëÅÐîë×Ð ’ê|èÓ¥êWurÊÀœã@òl7ûÐ Ô’êyâ’êV”@,ÊÀÂ0p\ ‰Hïö�`ý ö[Î ¤±ý³ÀÅýÆÀý÷#ôsr× €€íÿÚÇ´¡ÿŽ{nbÿQC5'ÿ ýïÿáÓÅ·ß©›�/€qÿcUG9ß+=€òÿãÔĵÿ¨›Ž}ÿqaL<ÿ+ ýÿîÜÍÀý³c€•…vÿgVE8_+ y€ì€ÿο°¡’ƒrb�€@0 7ÿïÝË»ÿ«›‹{ÿpdSBÿ1 þÿíׯµÿ¤“‚q`O>,Õ€Ÿ Gÿz0\_Xu mæ [èÐkf{e\¨úgPV½dômV]upVÅfv@²‘0E0Vg×W <[3˜è¡RE^^_VÇVp`• ʰrb] €`€Y3• <X3 ³Eu<<W]]yÏk½�ájñëƒ`ëdÎÝÜa+`]%\^aœ ÿmV|i‡» °V gÀ] ÿm_Y{hŸ}{ø´qm#f¯h{ x&]r" Jˆ(ft ˜)„ x üøn Zvubàg`¸, Px&Á hv-Ü(m} ÷J¡ñ$Ÿvudü ï&j÷d 9hd\ü »!^W_ v„ #ùy#41s!?8£!é?0ÿ![63bú?0 c3h}bJp7f{08l0p5"‘#x  4£!¬8„ ݬ5\aø 1Ð20Ø ü Í50=ë8id Ù0Í5ê)0 Ù0c1[\Xç ’ñ¡d0Y\W%@b2YÂ"®�x Ž5Ha¬5:@l0DTG÷!x$jA1cH’0cH)0x BXüœ‘%DZZXW%@s1YÒ3-4ÁA0� aë4ÁA0LÛH@öÜG)0ù@,k!óVø ü$RFà 4R0 )Y–@ü )Y ü T å`=�»"U 9@ßjdw DWYnAã|U@ˆVœAˆP4s1ÀZø ¶òa§S"1 ±P¥U0ÁX)0ý ÁVWW_½à<¡m[WŒÐ£_~¡óRépüX[w4ýWZ htÀhX hJdoYWZà ReÒZÀ^hø° QfX^^gÏ� zh?`üTÞW`W_ zdX\ú÷QüTW]_^Ë Àg^ÜpÀe\N.@ ÞeÁðzd$ã`Z` øgZÀ øg¶@E øgW[ÀøgfPz`ü£�вZ^z ûžA±} bb»�ñ¢|bV– #pö…J�î‚ô‡rs§Y {{(‘ {xWBíƒ ¡}Øà´{‘Ç}¼ùPô€ìôóo§ü @îÿÜʸ¦ÿ”ƒr^ÿL=/ÿ ÷æÕÿij¢‘ÿ€o^Mûÿ. Y?éT []…� ½�\ñP @]`-B…� À�lÑ H?!lÑ ’� +*®ÓXIÑ ÒБ+àmÐ ö[Q\ À%@öZ,pê`°™ep`öYa°×ίbº` [W×Z‹£[µÀÓ�Ó¬�ãZu"gõ póïyôpð�wZ_] I $’…�&’�&Ÿ�T&¬�%\Ÿ�L&øå ñPZ_ZWa÷zf&Vz[GH r1z"µ ‚ ~aPZ_XV‚ þi!^WXbzÖ�%V[§ �$]WÅV§ ‚ 00¿ }/fmmrØðÿ+òÍ! Û²Ù ìÎ O“ Ù À�~Í!amxf è'P„¤Ù ¼"³" ‘$\¸‚ É© |`QYÕ^  ‚ C0]^D‘Ñ$Í“Q4È‘ 5£$Q4ÙÃr:Ø“ `8Ù³ir8éµx£YZgño[lXsÚAÂ2îú°W g=’ ¿ÈM2Ú4Ø“ æ0aPX_�^p‚ �@l7z E] /@43cX_`‚ F@X_ãæâ¾â2EiT=K~н>HmÏà=IÅmààpK°pKbápKÃÐ=@ BYpfs‘#º@a!E7X,D^XzðWá9 ãÞEbéK9\à A^V\9'Ç¢?X]XoÇ#PR·6ïëb¯ \¼`zc¤Rø`þ1V§^^�€ BVÂ! DØ`K@‚ ÌQVú°Xdh`b“ÑfPSÓVVuPpÉa,$Б_[¬� ¶PŽ¡µ_Ù ‰”_YÒРܧ¤ð€b ^3±cÔ³Qr]3± ü‡b %\3± ü€ì„bô�4°¹ nyàv nyZr3±ny3ðvü‰•^÷� \w`gpø€Þü€†ôó}_  ÿõåÙÍ÷Áµ˜‡ÿykZLÿ>2&õ %ò)²¤ÿ”„vjÿ^PB4ÿ& üÿîàÒÆÿ¸¬ ’÷ƒtYVGÿ8) ÿýïáÓÿÅ·ª�ÿ�}m]ÿM@2!ßö‹Ö߯¶¦“�ÿ�ui[ÿJ9+÷§ÞÐÿ´¦˜Š|n`¿A4'Éÿóå×ÿʼ® ÿ‘‚seÿWG8ÿvm÷`osáÐV{wÿigruoj¿pjgmrr �­„!`aòP�üý¿‘`_dV__Ï]^ m``^›dp™ –E–ž ìR�(‘]lpZ ½ŠJ¢`]dYj‘z`•d¾`Z•E“Ÿ\dlWgÐE“ZlfWx ‹7RΡ’a ©�¼ `Zgd{aöМ”d`¥�åĘfåÐ "`YdCuZ�Ðá–OPí—VoОá“XdwZ³Ð¦Xà §<0R�j `Xÿ\ZWuXWûE“X[ps÷ì`WlpZO�©”T Y~ð[§aNi¨V[§ž[§*p[¥dV¡R”¨ ’e ¯§`¯§ž~`“_Y{f}Æð»ø !_YZ¶àº뤠@ºp_Wû·¯^XZ]÷'^W_fßh{Oqò^W?\avud Ê@&¹Íb3° 7R,±jdó&°±W\V÷ &X³[V bµZW n¶O�b°z¥À^«±NÒ±€Œ°0±¾@H°–·ð“ºa+“¸bŸ°£¸C±Ñ“°‰³R°ã¶hd³“°”Ð]_.±v"3°£°Æ2±&°dÁR°&°¥À]_ޱ‘ “³3Àœ³£³@ÄbC :Ê´�:ÈαJÈ"C± ã³3ÀR°ŠÆù°Ù “°"ÂXZ§ J^g"]_W^§ ²Æ¢´!²Æ¦"²ÅV»ÁäÜÆ´! ²À… ]^v’¬Â øÆºÂ ×´! ¤צ! øÆ³"øÅo’¬ÂCÖÈÂRצ!ôCÖ³"²Ä^_YbÏr³¯…Ñ  °�ÓŽ ³…ÐV‰ÐP�Ök°¥Õ¬ÂÕXÂ!IÕºÂÛÖ´!ÛÖr¦!f#ýÒså äÂæ\§!æ´"/è¨Øp �Ñ[»Ð™ÔZú»Ð¥ÔZZ pjó=p=ÁYZ sláãrè`{`�à"Ádº@‰Ð�Ôº@™ÔºÓA¥ÔX_W‰ÐNŸæW·æ®ÑŸæ4‚ ¥ÔW¿â²ŽÓòà£b°îã®ÑùæVûb³]VXaÝ f#\_Y€1ñ9ð1 ?ò6=9÷Y`9÷; IG÷T9÷Fp9ðØ… ‹òH �‹\[ú^° Kã\XW_= ®õVY ºö`| \VZ vlâÔ�àÉ\Âð�àûöôsiýë € €óãÿÖÉ·¥ÿ”‚p_¿M;*'€ÿõçÙÆÿ³ Ž{ÿk\K:û)M€öåÿÔò¡ÿ�n]ÿL;*ÿ÷æÕÿij¢‘¿€o^�€<ÿ+ øûç�€Å´£û’©€p]Kþ³€þàÓÿƹ¬Ÿï�~»ZH¿6$á€ðÿàбúï€�ßpdXÿI6#ÿýèÚÍÿÀ³¦•¿‡ykÃ0dŸoWZ[ À`@ÓÛÂ1ðWô]VŸ YjÁ2W'i÷ý… ÿdh`W\» (bdX]w°1|—†�V¿h!·dVXuÂbßz][^@õTé"q\@|Z@•|Y@|i b·vfp¡Æû!bÿsWVY{ij3í¤²Ãam0Í?XruhÍÊ ÿbpXW\VV¿Yo ÈïW×o ÿ[ø[o“+û + xÿ5@9`YV G*ŸV]]ÿnoÿ[ZZYWi`�ýÀr#±@ý @b¿g[^Z $sbëgYk�™&VZÕ™%W• ™$dZÿvmóþÄ!hu`sijÿbvordxmïfva³PùýÑ"bi`u`bSwf�à'ë Ñ"ÿ`ssmjb`wÿjrpprwfßveïavuauVFp3(6ÅZ2280Ã0,2WXò2280nXlV_WVx]‰lÞd3g]n8VWRj0o�`4\h2n7^š0a]n4We5I ²:{0 ²:®0 ²7’š3å:{0å:®0¤å8Š2 J®0 ²5dÿ^VWWx[ y”/¢@Dp[ KJ,Ð1KF\[EB mJ{0©mJ®0KF[DC¤ JX@ J{0KFZ’DCÓJ{0ÓJ®0’KFY½`G@Z{0i“Y®0(VX[RI9ZX@9Z{0 9Z$6A(VWJ`G@ }ZX@I }Z{0 }Z®0}W’SÁZX@ÁZ{0¤ÁZ®0(Vf0rG@$iVQj{0j®0û’a’b^[]¿Y�¿7[XV§X`ƒpûa_‰0`fwvÏw Á"neuk÷�ijapb}�k`xj {`d£iw`{`G�a_š0*y šÇeVžðÔ`1 ÿaY^Y[`a�w˜|cédœ`dój®aó`åcXZíb# —ôe rœ`óf q*®auWëdóeTs’œ`]z®aLv tD]v1u(u‰r®a(pzº�aO X ’š"мqðÃp7‘wÖZb¶Á�ç¹’oss  Û8ïðÒôó{_ ÿíÚ̾ÿ¯¡“†÷ylOBÿ2!ÿöéÜϵ¨›1�tgY9ÿ>/ ÿõæ×ÿÉ»­Ÿÿ‘ƒugÿYK=1ý%] ùéÿÛʹ¬_Ÿ��q`uÿ?1"ýêÜÊÿ¼ªœŽÿ€nZLÿ:, ÿùëÝÐÿ´§šÿ�reÿXK>1ÿúíÿßÑõ¨š�ÉÿaTG9ÿ,ý¹‘gY[WpwK •o •Z]p �G�‘ïap •WWiû ”X[\i¹ �c�gWYV�pÓN˜�&”XÝX�  �’XR� z�o“V� z”×\[ À†ˆ“W_YVa ¢–V¬�½¢“fz^YU Íç¿–X[¾Àš"fd[[b$Ü•çaç�íf`wýiû b`vf¯<ø‘dþ’aÓmfœð éö¢f_åX¯ ¶s$¡Yñ™,¦_°8¥WYZû y¤V^^ÎR§Y R Á‘_V?][d{£à,G0+¤]Xžð‡¥Ýa» –^f\^r`Ù ó`¤¢]_« �–,£\]5ð (p¤¢W¥Y« 8 Í£X«  8 )°Ð raw` 8 ð¤ì¥Tð 8 –°fÜaïuXʤZXV±_Ç óc±^`²¬Ø¤.²8 ³]DÁ`²{cM³²9·Š5ð9·\Ÿð9·CðÈ'·!p±¯¤ž²J'·Y2³©·bð©·’pð ©·Y0 ©·žð :¯¤Y‰0b �`ûÀ‚ÁVâ¡�`ÂD@‚ð•$Æžð,À÷‘XC@˜d1(pÁAÃ(s@Á¾ÀgrMÅ\U_ÁnÆ[Á+¤?X[[X R¤“ÀçW R é¡XWXÎe±w¡ ©Èo¡¤‚�žð ,À ±„QÛ[pÑ0—ØÄV_‘Yò1æÉâÀ æÀ�ÐfW][,À Ó´àxÖÎà,ÄWZZV7pê*ÖV4Ð *ÕY[]'bÄTp\¡pTׂã�½ IÔ�ñTמðVTÖYXlpÀGÕX–Г”›Ö À¨×4Д¨ÐÁWÍðz�`Ä×W*ÏÐ Ä×VÏÐ ¨ÐÝ‘åWf! R ÇÒVV æÂðc7ãXN éW àÝ‘V‚¡Q,Ät « 8æZ« ),À.â]pðTæY0-ñÔV\³°¡ qãJbð {å[Æ¡Tå[…° •æCðˆæ³±ˆæbðI ˆæpðˆæY0 ˆæ:žð¡¤VY]¹¡ÖÄVY°w`·ÄóTð!¡ ò qw`{å pë þåXÁ±wLTåDðT儱{åâ²±föÓ±¡£do^?[vm¢†ðíVŠðJbdoZ«XXŠðŽõY‰ñD«ö—ñŽðí îÐôW–ýôss߸ €îÿáÏÁ´ÿ§•ƒw÷i\€=.ý %€þðâÿÔÈ»°ÿ¡’‚rÿbRC4%öQ€ÿÖ˾³ÿ¨™Œÿsi[O÷C5m‚ ïáÒ¯�€ÿ~pbTÿF8*ÿòäÖȧ›¥€}g©€K<#³€÷òÚ½€ª’ÿ�paTßD7*Õ€ ÿýñäÔÿǺ® �‚rdñ€ýFõ€+ÿ|� ]iM ’4=�þVb#�þ„`m1� >�WÑ`K�þÀoïÀ|oŽ"ÙïÀ" «CXKQXTM_WKQW"i _ Ðo¶à_~ôVZZm§¯Wm_Yhagm QªYXÊ ²›Xâ0_XVË ¾ÑXVm_Wõ^Ë ÑW^mM §W]÷&\Ë= &\m_L`3mWÝàA  KLBT =Y:X]&ËPúi! ] mloßp`w½psÿ`bl )º�"b‡,ˆ™$a[ml‹(�°#[‡,«c˜#[·,ß –ƒ Y|‡,÷'¸+œß L`lY`Ëpã �m+3V[dÀÝp¸¹p>0ƒ� .ù"X}`‡,‡X3samÙ ‹(ËѧlWZ£ÀT0Œ1V÷V] p{h] YXufd ö RkxY Î…°z·5³°x¤Ä6Ó°Ã7(ÀÑ5Xj¾1Ã5XÌ1qî6ˆÓ±û7]ሒó1(Àª EW¾1 Ã5WÌ1$3GÓ° AG(À @~`ÿjpf`ujb½¶ð÷oAdÿvwurovxÿsufofor¿dxmf(àþ�Druofuÿhrwrrmö“EÆâjpbõ[C1¾Ä2jpWXõsp+ÈòjmmjÿsxwXZz_žo@dœAýÑjZ\Z {ÎüCYW P~Diw\]Z"»1ˆ’ifpËq Ý»Ri\Y$`ß¾2TVÞ$RZý]› mlP à]2RXZ’�ÄHP¹pi& w�lVW[óÿ1÷ýé•€ÍÀ³ÿœ…nWÿ@)ÿöèÚÿÍÀ³¤ÿ—ˆ{nÿ_RC7ÿ*ìÑ«B3W['àóÏ¡�V`gó Q‘^:\91‘YXvØpñmQÎ5“ò*1‘X[Ò;� ?–Ö�[—X©?�O”V;�?–W·_u–W\;�„—\„—5 „—B ú?� ˆ“ Z D•É‘  ô`Kosq� ò@\ àÙ ú W_ ° ]Ÿ gsø“2à[ÿXu]df{þl|YV éXe@Õñlýp†Ð^rurïYY lÿasb^V\n£W^2àV¢ýø’ka|rrxwmsV]C¢ÕkŸ0§P juhabZVÑ0þC¢jug_[XVsÿ– pzb¡Ð›þõ@h iûW‰`V\gçWý‡ b_Zî°güiï}\XX�àms]÷VûivbÜû°®1uú ÿir`XZ_^÷Yùü£mosí^u ø µ`döÉP÷ü£gauîgPZöü£fgZV^Xasõ×£ÿfdv[\VVõ`M ôü£dvsíYxÐóü£bsm×XXH�òi^X{ñÿiYdusú®1ËÐz`bð~³WWpWï¡¢ohu^^¸ î× hx0CÀXaûí½³aiXvfîgPzìh÷\b]sxïvvzŸ0dbýëhXzpX^ë°[W@ ö°åêü¢hà÷ uu­éÈ¢gzæ°d�èþ×¢guffvw}mf^Vçê¢ýg5 \X[ X÷Zæ¡¢gmWß^ _å#ûgj?Ài`pdÿ\a`vw`ÿudbxwôo»@ägfúP0ãgbpÿ]ZZsVX\`¯xuâ�ÀYõ] ðá$Ã`~pbõX°à™ÃZWooý^ |l_ßþ×¢f}p]XW`ÝêàVÞ²fwßxW]ÝÝÃsvOV^bR°'àÜ¿fmvw2Ð^wuzg•ð[Û¡¢ÿflka wýÚê¢ffziaWÞ±PVsÙ3ÓbvÿiWbdXX\uûØÝÃbldZbÿXXWodx×îEÔfvWó0XXhûÖ½²fbX[bW[ooÕ|Óÿ\g`aYb×bÔÈ¢f˜ÐvXïV{Ódÿ|V__Xru as[^Òÿdwbm[O\Vooò°ëáÑ×¢ÿdv^VbYXVëo`вdvWïXYÏŽÂdsg÷Yν²do]ZÿmvW\ZpÍ~ìÓmoZ_ÌÂÓÿjhfmfbw wjao ÀZË­Âÿdf_vrmÊÒ¡¢d³Á@àÉÂÓ`wÿ`brpzfuwfu`ÈÈ¢ßd_XW\éÀÇè­ÓÞ ÒÑhª0fmýÆdXg}Åü¢b~YVbU w~ÄÂÒbxZ)`ÿ\vbsawXºìàíÂbvv `ýÂê¢bu^Z]YkwÁ²buXWvÀ×¢£buqàóÐ×â¿þíá ^{X|ZÿX[waXlYYl¾õòZð[|\û^ ò[l[o×\½òX{¿vY|_ ð>ò\^l¼öCö½Löl^»:ósïYVZŽ jpÓfsˆA”Dº½²boÓ\_š±Ù๭Òbmùu®àv[VulûW—ãmV_]`ÕfÓ ¶Ëãdˆ@l¿rd`lµ˜ód¿]ZibwW40÷¦ ôsu × g€d€ëÿÙǵŸÿ‰s]Fÿ/îÙÄ©•+€ÿcP8 ÿ ÷êÝßÒÅ·WŠÿ~rfZ÷NBi(ýqöçÖÿǶ¥™ß�o�VÿJ>2%ÿöèÿØË¿²ÿ£”ˆ|ÿpdRFÿ:.!ý ‘€ñä×ùÌÏ€š�šŠzÿmZO?ÿ3$ÿøíâÿ×È´ ÿ•ŠuÿjWD1ï ý€E8Û+í ð \bß[\XbWŠ® üÞ@ð ZomWwlË\x|`Y¡d]�V‡ÝAð¡ ¨9*55 ý Zº�� l^ l]+ p\Q �* ‘Nòá IX©� lw[lZlÜ, lXlWñlSPbW¯Ó ýV?^ažYr¡¿øX-$Wó8 YX]÷d «0ôîI0vax°aþ®Pvawư^©Ð )†ÄQl#Z©Ð w # ½a§Ð ·0vkam²R #a[uPY¡%DP­mak°ûÍ‘vaZ|[ï[û¬QvaY¥|BÀÑ Š!Y¾Ð¹ÃQã!\ê&ZCê&¨Pê Ô"[¿P=ê&WÂë$uP‘¹ á"DP¹ üaßXfXXuÙ²tÈûAD0¾Ð'4à 8]6Ò�]6X '0¸1$5ÿèÛ̸ý«C‹}oÿYL?2ÿ%ÿïÿßϾ±ÿŸ’„vÿi\J=ÿ/!ôæÙ̉ÿ “†t÷bP¿€- ÿþïâÿÕõ§ß™Œ½`ÿM@3!×ÿÑÝ뀼ÿ©™‰xÿfSF9ÿ, &¾Æ1W[[^Xã�oÿYZb~ Z |â‘�^p‘î—o–\p½–Yi�<þ‚8[^a �8û��©°[tP�­ þ‚Vw_’� ôi•ÖvšXY^A•Vm`~_’–�Jh”l_’–�y”l�‘eºšX³T•V`o“Q ©—ä�Ö ì›XV”Y_� –� §wo§k–�U £`�–�¦ï^wÚ•Y^lëvwˆáM§lÞ¦]w:¦]v÷s†§m~�X•§o¢ ]£]Âd¤¢ |¤T§iõ¢  }£dXwY ¢ h’Y\¢“ ë©ö&ð ¦\~ jë§o² °¦\a¢“©+º±+¸o_’¬Â¦£à¢ a·i»a·d¦Zêk°¢ �·o]W޶i¬¶Y�0P¬¶¬°=£WD ¬°4î£n” Ó¶VXÇPÓµ?X_d~ Ç�å Ça�¬µX[p³*Æà¬°î7Ço7Çk ÆZD cÈÕp*ÆÂ°Y¬°V’XYd¤Ç*.Vf”Xn”«Ày’@³ÁÆ‘¼Ê×�¼ÇÄ’ ÜÊh~0«Àý‚W  «À9 ¼ÁüÇdüÆ�q×#�×iüÆV‚ «À«À«À~=¢W]os\×Rž jØ­ UT”W¹¦Ð†ÐIÔT†ÐJÓizâd¤†Ðߢ­Ñi N˜×i ¹×æ¡ †ÐÞ_Ô`w ˜ÖWs òב˜Ñò×#�òטÕV_ieæ�ÃTsæ¶°à=¢V^êD¡àŒèo�ŒèÅÐŒç/� Œç4à Þæ]p æ\iS æ|°Œæ[·à!Œæ.’ŒæÜ±ø}°°ŒæNâàß¡X`²ðfï�<¢X__AWƒ àV‘Zðn”àTC‘hóW¤’StúX¶‘ü†ðGò_^Zbw-™öZW¤ð†ðdóm‘_è‘·ú^ø¡·ú¤‘½ †ð¨ôsw¿€þ€óáÔÅÿ¶¨š�ÿ€naT¿F9,!€¿øë+€Ïÿ±¤“ÿ‚sdUÿF8*ÿòäÿÖȺ¬ÿŸ’…sÿeWJ=ÿ0"ÿøãιÿ¥‘}hÿT@1"ÿùêÛÿ;°¢û”Ÿ€xj\ÿL<,ë ¯€ð³€ÔÆÿ¸ªœŽï€sÅ€RDÿ6( ÿüéÜÎÿÀ²¤–þ߀|n`RÿB3$ÿW\Vmfw¯\ Wß¡]·^WX¤ð`Ý£]'^V^¤ñ[³ñöy‘]]b bs \=¡][_; ?(í0ÔàM]W ý�?]ZWk iûàFMWf)ЃW‘°SÀ‘=�?X[WªiX<�»YWõÖi_^0WYWaW÷ÖBWVW(i-%V_W#(ÅÐä#'·à ÷C‘\_`ÿXbXVvv}3’Å!R ][áÐ$—\Y\3À m'@À $m'ü°m'ϰ—(#�jm&Xϰm&WY5à~m%X_p\Ï&å^Ù ÷ß¡\W^_Xjpë'Wö }÷\W]Waö c^ 9­ 6ZZ1•)7X10=¡[U\dI6\W I6ªÄ I5[`1 s8o s6Ä �8* 0þß¡[VbjoY=I4Z^\V#�«4½Z7wgÈ5[ê´20¾1ZYZ÷ahZX!p}sÑB’é`WoY²È5Û°�È5ßPWù0¨ÑZVZWdÿj~`dk~-LWX]œàH1F@PAU@0DV8A¤‘jLZ¼PjL± UGtBWVø¡¦J@ˆèò»M± U@ߢLó ”Sðý‚_nà U@=¢_zH!W_~U@$÷Ci V… *W=�‚VZÅDXÓVË \ `W­ nPt÷Cü°WoPJSW/�™W3À ™W*… ™VV  ÃWw!äÃWÓà Pߢ^^pïW™U^^\WwU^ààüV¥]`gi íV\spP�3iY3iWW3goøPP6h’^[³[phPBˆ€` cj°€gj`Q@$‘f… ‘f° €`ðS?Vp^ ‘fÓá„‘e ! ågîàåfÓàê‘e[ À wid v�€`=¢[b·àñ vÑ v^sˆNwá€`Nw©°•[ˆá@�6s•á‡x–P@�Öߢ[]•á£vXZydb0zvVw S•K[Vd¤ – À @�ï‚ôólþ¯ñÿâÓ±ÿ �~mÿ\K:)ÿ÷èÿÙʹ¨ÿ—†ueúAEE& ÿüíÞÍÿ½­��ÿ}l\Mÿ>/ ÿÿïàÑÿ³¤•ÿ…ubPÿA/ þ�çÕñÿŸ�{nÿbVJ-ë¯æµ€Á®ÿšˆtaÿM;'ÿñáÒÿð¡’ïƒtéL?ÿ2% ¿þ Ý€võðÀ@Ðms¢sd’ñ�oø…B?Á—ªàø…á —§o ø€0@s ðV§jo[çó9œY¥� Xø€ß ?�[\0 a—_Zjwa—Y0 a—õ!ø€vðg‘šÒ[’a—š°™o‘ø€¿À£’`àΚo[�—VbwCî›6\‘c:•[V@¶Ãü ] sW|XZ ÿWufd·ü;’/£bmf`uñ:  ‘/£amxfû:ª`oafuo¶*¤WX3£!u =£~¡G£u Q£$~¡[¢‡ªn£ u î ÿsWdWXWVaþ7 –mrýlÈpWVVÿs`blË]Õ£X][Þ©ë ]סW][ߨë ýסVWa amôå ß¨ ë mp^[ðš9³^}`=™D´]WO°v°ÿpVW[` –õŽÂh–�Vusbßb¿j³]ZÿVVsmgbÙÙ{µÐ`tiˆ°¾~{´\_WXusˆ°yzµ¦°Wsua‰°Îž¶ZVX†°r ĶWsmh« Ô¸…°ïhuÔ¶Y^XÞ˜°uù·WtEiâ° È—°ô° À^¼Ñg_VbW(£÷og\³0p[VàvñDÄà  $ ¿Ágà 8Á bÈÙ‘é  ¼ÑfË [v÷x„ÆXvj‘ÇV�À‘ÅV[ŒÁ“w°ÇœÀ¾ÇªÁd¾ÀïÁdó Ñ0 bÄb]\\Vl‘ raéb 2‚Äb\\…XW Ùà ×!N+ÙoìÅõÀ`0}üÅ\Z_Xa�IÖZ^Zö!jØõ!µIÖVô"b‹Ö\uÑšØõ!šÐ\Ó>ðfGÀšÐÒ[\VI Ë×R1 ËÖ—2 šÐÞHá_\Ú Á†k^YàášÐ ãiQÜøÑçdšÔ]_«or*2çW*tBè ºÔ]_mc° /pbèXBsëë�bç$ð/p•ë&0a¯P ·ç ·æ)·à2—^vZ! ·àeâ^«m^~â ôç\~â tôçlã ûo ûˆ€ø~âIû° Iûi#ôçG /p|ømãî�ûo�ûi®·å^XZààÀöWÒLâó– ôs ú€€óæÙÿǵª•ÿ†whVÿI<0$ÿ üïÿàѳ洛3€whÿYJ;,ÿÿðÿáÒôÿ¥“�nÿ[H6$ûe€ìÙÇÿ¼±¥˜ÿŠ~kXÿE2 ÿôèÜÿÐĸ¬ÿ “‡xÿmaRFÿ:.!ÿúíàþ¥€Êº¥’ÿ}k\Lþµ€, üÿìÜ̼ÿ®¢•ˆÿ|obQÿ@0 ýÉ@lW }õ2wà _bmsÇeÏ’R0^9 `0^ r`žZb~X£@-WçX lwV]ŸY` ›\²UWç` \:°wV[÷]\[\`ùC°RY^`žiY]\°wžî@V`\úvÿw]]Vil× ½«\²kmÏ0«JÀX[Æ] óËõ°ÙhíÙv[r@gs÷ :ûX\V¿dr1í!v›saÀ¹r`vÉhÀµ ¬b]WX_à^!b[^ààþÑpvbWVW[fB àX@va ÿ[\ {ijwf� Ÿ‘p%5¡˜ m(&² ¬`¾1$ ­_ŸVr¹"K° ü ÷@v]YY^ý Ov]XYXé Ú&: Ú&WV}Ú%W\\Ú%ŸV\V :°vÛ\V}`4VW %2[KÀ ú![pl}I53^ÀÂ$KÀ?4UYG3N4Y#0Í$]Y£243Y^À 1ï!™6_À™5*#0™4WK°½50å ½5ZÍ@½5Y[‰½5­0  ‚!C VûW 0Y {ªû9Y@ KW@ – DV^F 2KAd2K-A @:°uvøP7JQuoæÀì€ÛRöAu_ƒ°þC³u\aZeý¹!uZZ ¼ÐŸDU@©@Ñpu”0X`‡wXX°C° �ºDbªÁAÆKaÂ@ÆK`"Â@C°·GçA ÿJúA ÿGW¿C ÆG-PÓBI 5[çA 5[úA#Z’çA#ZúAC°ðPu_XlVYW¦@Š’ÂŽ˜SX¡YW0¡XVw^¿Y]¿Yw\¿Y[¡U}dl0Y•ýV¢q i¢0 fX#aî(iY fWYXðLFi2PFhW\ di¦@di­PdiW0FhÊQÀ iÚP ià iøP“~‡BXVaXž@þzAWgvaW]dâuWZå`ž@–ˆAVYš@÷`:°t]^$ r[$ 9pDptWW$ Ÿ@Ê+sV$ p+¡wÿ`d`swruKy bsÑ–Ð JXtW–Ðdw÷Á þm s`vwlÿf}[ooýŒŸBs^\±Þv£ZlV_Í {YS¡P¥t\­s¡Pæî‚_[�àOsY\É[wÐÓwoœ@îñ|®ôórýApþñáÑÂÿ³£�{ÿjZF6ÿ' ùÿçØÉ¹ÿ©š‹|¿m\LC+ÿ ûìÿÝ̼¬ÿ�Œ|lûXa8(ÿ÷çØÿȹªšÿ†vfVÿG7'ÿ÷çØÿɺ«›ÿ‹�seÿWL?1ÿ% ÿÿîáÓÅþ` ©›Ž�¯n^É=Íÿ ùèØÿÈ·¦”ï„sé/Ïý� bW{Z^§�^jbWY^Z9Áû€íƒÐ@�( ˜7 ›kU —^' —Yз^ –W]�^» û†WZ_Ð8û€[ w’^izÑ –—V\Y“˜Z’¶û†V[ž�µ˜W�bv“—Ï�~Õ˜Vbv^æšj“—Z'i §òk’ 1Àw`[ËVsõ°gY"0£ v…sXP™ "0 à 5 �9 ž Q¤E¢ K R_XVZ[³t¡é@4O°ž]¼A›� Òe–§¥›[V_Y`f²¦X¼  \[Ÿ¡ \0U0`fuX \½¶¡ ó�Z^Vmd œËZ]ÿ¡°lZ[ß_÷�Y^…^° °R%�Þ0qp0±àf�©À¥‘›æÀ’ R·¥¾ì¤XY¥\' {³Vž’H*¤F�ïá ˜¶4Ò ˜¶U[|‘ ˜¶Yïá ˆµ;XX|�^Ô·QÔ·ž“Ô¶WÔ¶Z&ˆµW_ž’˜µtÄ0àà$Æ^W`Ñ�ÑCʇÐCÇV^ÁhW (Â]óÐ^Kp§ksÀ'Ã]Z’LsÀ7Ã]Vàá—ÆY‘- ‡ÆYZ^Á ¦ÇÀ‘ µÇY^Á ‡ÆÝ°ò  —ÆíÁsÀ„‘ëÀžõ�[äÇõ‚äÇ¢‡ÆÏà ÁsƆñ´ÀK‡ÅV_YÖH�ò sÀ0rÑK —ÅqÑoY j×èò™×Bèð[7 zÖèðK™Ðt�Ôèñ ÊÙo ™× Êðó ¹×ÊðK Ê×Êñ½ èÙs[øÙsf!™×Y#á¹×CàK™Ê×CàÊ×õ€©Ê×ïáÊÖ]|‘Ê™Ö]’–çfLˆæsжçÊñ¶àˆÒVÓ¶à™äž’ ª¶çXÕÐ ¶çWÕÐ ¶ç¡Á ææ[k“¶àvÂÿVYZab~W)­PææX’¶à0èí°Ÿ’3öWÞ±[7VhüXê0ææõW'¶æWZdvc ø’á�÷Ydó�ɾøds~íírŒ&ôss¯€€ïÿÞξ®ÿŸŒyfÿT?,þ#€øåÐÀÿ²¤—ˆûz7€`TGÿ7( ÿüîàÒïİQ€ŠwÿcT@1ÿ"ÿïÿàÐÀ°ÿ¡˜Œzûhy€H<0ÿ% ÿÿóäÙÇÿµ ŒxÿdP=+ÿ þñÿãÕǵ煮¹€€r¿dWJÀ-ÿ õÿêÚʺÿªšŠÿtcRDÿ4$ÿvd o¾;Àvu{Yü@Q/ôK  ó“Z%àYh@ þóhvlð&gï�b0H“Y]vÐPóÐÈÃ!ô¦@xºôYWKvw sw +X€ —’1 —` ‚òy±¼‚’ÇdkPwdVää wæ¼@ ^~“QoWXX® §ëS T `ó V[#[“  ðVu ä ú-!›`7$ü @úþ4 ^Wgo{÷ºS"\_a`÷a_$[^f|üapm%Vf|~þ_$Z_f|wü_ dos µø£qœ T WoZo3g@}P´$`Y±Ã'XP´ þð[ZXb)à*qã Xç ë 4ûW Wþ¶A~ptZlXZdbî7‹WX00ü0 1/xv[0 0vÀ¤052 =;$2 =6Xº[6=5ZVY41\î04„q~pXd‚3K2�0 2VX4‘5ª1$20¡@~µ\”< b~\¬¡füI ²~YXs{7â3Vsì0|ˆ@ò0ha”ù3^PðsKÇ3XB@�sí3XX�ì4K KeVF$1[Ò�w\sPwP|þA~UWVvwP¾ì`|Wd\xЗ½³Ug]¿VXÒ»PÍWÉPÍWa]ó¿P `{v`Z?VWfÃÎBýPåYafƒ fü`þ€zvVXX åsõ ¾î)c ¼®rzb\�ð8Ýbz5bKMeX[yðM`Þì`zb^5°(%“azã@1�07a×X[fàì²xf·vX[ø€H“dWò›`Ÿ`þ€xaY]?WhlP…px]V _V ž°? X]ƒeRÃdÝdÍaª ‘xZ~Pd ZVå`ÚFpxb` wñ`t!Ò`èaýaðbå`ÕaWþ`Qò`Ò`ÀaóÖQ wò`öcwuÿ]ZvY^VZu· \£uXJs}whSy]V\bp•Sy\`rSp-¡b[\_sákü„\&�$0Á›uZ²Ðó�«y�‘›pí…î²Ëxž’Þ��Îôóo_ûÿôèÜÐÿĵ¦—ÿ‹{k`÷UJ3(ÿ÷ÿç×Ç·ý§/‡wgÿVE4&ÿõäÿÕɽ±÷¥™S{lß]N?]ÿ ûé×÷ųo�}ÿkYG5ï#Ä0Ýÿ˹§•ÿƒq_Mÿ;)ÿóáϽÿ«™‡vßcQ?Ãÿ ÷åÓÿÁ¯�‹ÿygUCÿ1 ûßN?0¥ XVï___ï�[ó¤!î„ZV\»û‹[úŠYrö€úŠÀ1›ãàúˆ^P¶Ð@W–T G\ ˜q‘%à U˜€à\ x™€àЊš¥\>� œša‘Šš[’>� œšõ�Šš‘ꜚY>�¬[ÊŠ˜\`’ Š˜ÔA[E Š�ì„ý ‘Š�hòî‚¢ —^_–’“ !u©»‘†ª‘$†ª=‘†¨¹“ ¼ªß‘© ¼ª¡ †¨YY°\“ò©r’ò©–’ºß‘º’ºo¢º$=’Š—^6P>�p¹r’Ip¹Þ’”º‘ ”º"¡ c¦ž°=‘ Š–­Àõ>`ú†ä²¼‘ú€f£,Ñ`öí¸Ê à‘í·V[ós"É€àV4Ê&Ø04ÊUa4Êì`34Êæ°4ÊÊ +"ÈZ. É@‰²ÊSÁ –»ÁUa$ÖÊwÁÖʉÁÖÊ›ÁQ �4î€VM ú€Þýobf`Ü0†U.Ô`6Ñ;Ôa4Ó©JÖDÒJÕ`5ÒÔhÖDÒ;Ðó_[ßX€ˆÔWÑl‰ÒÞžÕVlÔXü’Ðý^VXgus7 Cd¢W]÷c`‘ØÓüØÑQ]‚@óÙ 1]9?]G]caP(âUa2é\§€õÓs¹óÕ_dès"s—{âpà„åŸs ”épà „å¿sHÇ»âpàÄèáÔétpáÇÕѦ˜"íWÍ0Ø·Ó\Va— Kb\p ô[vm¦Ç1%ð‡�l[Zc8ô07õ÷Àô ðZ™À^aW)›r]ó\dð›p‰ÑåY>ðlýY[X?g__ <Ó‹ò‡^ “ùÎ0“ð{óW¤ “ÓYs½ö>`½õÔP‘ÕöWïp(þôsiíê€€î €Ê¸þ€”�o]ÿK9'ÿñßÍÿ»©�‘ÿ…yk`ÿO>3(ÿïÿÝ˹§ÿ•ƒq_ÿM;)ÿóáÏÿ½«™‡ÿucQ?ÿ- ÷ÿåÓÁ¯ÿ�‹ygÿUC1ÿ ûé×ÿų¡�ÿ}kYGÿ5#ÿÿíÛÉ·ÿ¥“�oÿ]K9'¿ ýûð ëûX> sXÇZljÐå@f3 ímå@ öS¡ÛX[$ÑX¾ dœ£1\W÷rÈVA½dð° /ÐX]\Z`2¡° Ým±ZG¡u¸Yî�° Í± m±‘° »±œ³‘••¹W í]"ŽÐ„óϰ’•µÝ°² ²xóÛ±ÕµY…Xp±x𘲠À ²€xði²7�ý¡Å7� ²�xð©²8‘ 0Éı ¬xð!Ñ]W+Á !ÅWe\ı hójÀX^p± AʼnÁ ²xð¢™Ã’‘xðù]›Ðfd]²¾Ð7óÇÀÍÄ\ç\ `í\V`gÙòéÀïÀäí'ñ,ðõ�Z[ÝWÐ]Wy ÙÎÙZ\ÛY[jÐÛX=ÑØÚ«WYÐV×V9Õ TjÛPÒ ~ÜZÐ jÛ’dÒ¦ÜÑVÐñQY$êÒÿÐ2ãÔÔYÁ ã¤ÔÒÚÑ àÑÕä ù dà[aY^hvl/ ðÐÔgñ�?à)ßÖLà]Tð0é0ßÐù`f`õ�<Ð"ÖVÔdä(ÒqëdáqëPÐ�VÐdäWY­ìh�qçtÑkâ×Òê(Я åë<ÒIåëPÒ ü¡Ñåë’dÒ 5üÑ åàÝYWvY]ðÕ(eñæmøsið}ùæ5ðÕXfóžøæ ­õâhñ êÀöæé Íøˆñêêýôslû õ€€ëÖýÀ�‰vÿcO;(ÿïÝÿɵ¡�ÿyl]M÷=-;` ùÿçÛÏ»ÿ§“oÿbWK?÷3%W€ ÿÿñâÓÂÿ®š†rÿ^J6)ÿþîÿàÒÆ¸ÿ©›�€ÿn\PDÿ8*÷ò矀Ƴÿ¨œ‘‚ÿq`O=+õ·€ÿÑÀ®œߊxgÅ€Cÿ1 ûÿœ�…y÷nc]ZibÿX__aWuY®—bîZ[õú µZõúY^õÕ­]õ0XWBõ0ñPîN0ÔÁPõe\9�u• e[< ‰ ZTW¬fZ*• eYô Ð*äÐ<Ðß�uªeXqeVôŠTV*¾?%àM(��t¾i°]Yž Q9¸ÁkÀÙ `i`\w'`^Ì!b� • qp\^þmWuo `dóžàÒ¦#fzo÷ Äw±\Wiam`blÈðÂ\Vz +ô�÷[o[Dp^`s]»VmP ã'gasÚÐÐó [`[_ï0ö�� 3m@á�0i`Å[²q %6Úð%6Yù 0i0[]sVZwh{WÍà7K3¤‘`T0XÁ [0ã [ÛW\ÊÀ� 2Z[sWaŠð 4Z[V„0¹ó i°[W^w pï C 2WYZŸsb ¹Š"«1ù³0¨3Xmw–¿5XZÉ0³0x°[V]Z]fvsnP|–²á0YZvs  üë0 1VWgusù ¥0(1^m8¥0p1ñ�m¥0õ€§Z^~�0Dps*�”ë0&CV-F 7G¿P[ª1B KJX1B 7Ew’@G sGUF ‡JlCþë3Z]^[abb?{mÑh±” W wr¼àæÁDZÉBùÏ@[`ZV^voÏhÔÂÂäA5ÓßDZçAOûÂþA«øEXçAUXçvø@i`YvsßdK.Rssçj8P`Ysos8Pp0Y`V`·�w±Y\Ì$$Ô õ€YIÕ0ñVÓrU’Wò€WÛæ ”[óâ HVÐ/QúRÂ9S‘aÈPæ™ahwÚÐ÷ Y [VprhkÝQáQ)æP×R`ÝUæPi±/hZ_0æPx±]bÜSÏ^óbîR2ÎàÐ+dc*`i±/akayð:`p0eXVR\Põ�^g0�VBö�7Clgl3 zeb'\Zb��uaŽjsczd]b^pc‘ë0©²–``²³ë0£�²ÅaIÜj¾¢ÜfݰX³@ò€vѤò†ì±ú£(zëƒyèc Pz$³(z€å¤c{Ë’Š|à‘c{ÅaHk–æ€3uÃyø¥ò€ïPôõú ëïÝÿ˹¥’ÿlYFÿ3  ûÿé×ųî)�}/[PÿA2#ïö?ÝÒÿǼ±¥ÿ™Ž‚vÿjTI<ÿ,!ÿ÷àDZÿ¥˜‹~ÿqcWK¿8-}ðÿ×¾°Ÿÿ�{hWÿF5)ÿóãÒÿĵŸ‰ÿzeP9ÿ&íÿÚÁ¯¤îápdÓG7ÿ& ú;¿üñÎ@i°÷`l^Í vè]h±`l]ð‚ö€ngÀ`l\Í ö€ö˜°`lç!vZ[¡ö€x°“öÀ•Zb‘ö…Äðò€çŠ"÷`krQƒþë€jpv`d`¿swrugm�vÿfujfvY sw–‘c™uERŸ`h\• ©°`ëbv� lÈ� ÷ ‘ijpfÿu}i`pda?rrl eçR´�ýXÅðXVkb ,ó Ê—W[Ö� Ú–y ’æ“ í—Ñ•ªç’úó  ‘mjplþo’~^^Güî¡,¥b`amfû'>¥broovn.¢ = b`aïƒÑQ�ö m V ÀiNiAsó#|¢W‚¦-–3`aþƒQ�‘¥a ’Q�‘a•�Q�'‘Æ¢öÀ ±¥<’ ÈQ�j¢J“ Q�±‘\VÿXpZ[Z\Xÿ] W o` mÂÂ`[öÀô“ÿ[V\^oi~¯ ö$¶\.± Š3¸Z.± 3°Ê‘)±XwVoi/° ÷ž’J)±W>²3°k¶X.±ù3°²V\ ϰh°‘[Ví =àøþ£ZVYÊ´\³ °±‘YVZ´[³ °‘Ô°ò=à«°y¡XV\vгZ°Ä´ò°´Z‚³°”‘z!ïðÊ‘W¯ufdÍ#Q”W_[ÁÃ>ÀV`ÁÀ–‘W_¦±«°p0`žzÀ^Œn2dÁX'‹lÅ”°xÇãPxÀ;Âið ÁÀy¡ àõ´EY°Ä´ à´Y³±°)¡ àVb³_*°´WE0 ™°ê�>*áZZ÷ƒ÷ÂÇX ÿÀ”‘”°:þÎò`V[ db puÀÿÀaÁ Ñ(Sâ�`E0¥x¢+àdê³^°´\_wÚXÕ^cÕñZ…0cÐ� _vmû¦íB_[swóµ9RŒÐh´®ER^[[q  ÒW[àªÓ”°™°·Ò4@º™°¸Ñ± b]]ZVg-0Á€ÖÓl`ª-0ãÖZÞÑãÔ[»]WKàHä\­] á™å\ áÊæ[ áà�![\C©ÐW·@öTµ]0\^* ú[_•|é§|éi"I |ècã ²éq|è%ZNÖéi"ú£ nîZ[Xi"¯ûè¥W* úN øVI_3ù]*úèV‚©YùóãYùX€úâ 9óëÀ7" ðëY]<úYcãi¨÷¢qúW#0÷Úôshê×€€èÿд˜‰ÿzk\OÿB5"ÿüÛº›~pbR7€ÿ$øßκ°Q€ÿƒraQÿA0ÿÿïßÎý¾Éðž�ÿo_O>ß.‡€î÷ÞÎ�€®žÿŽ}l\ÿK;+ÿ úéÙÿÈ·§—ÿ‡wgWÿF5%ÿóâÒÿ²¢’ýç[J:ß* Ý€êûXV'‘|^^Yb?v` t &’Þ¯s` çXâ ´÷ ó ç\Wâ ÊVâç‘|^‰X—pãçÊ‘>s¦ç`7!HWºTç]]_òª]ò[™ªŸ\òZñf÷s8]Y^`RòÏ‚YÏõVÚÏXW_bÏph àRf ÏV_m"**àV™ D'[2T)ªóD'Vòà\á_n O „'wf8Ïœ ¢�f¤*ˉ„'~"¤'úãTÖ*Ür…%^~"ø&%\¹7ñ 7~"‰ ø §#Z¿!°ø&Y’‰ 86Ø Y7B3Fø&VZo"{7ñø%¡Z�!i›7›6^™»7^"Ë9«»7²áë9óqœ5]…2 Gñ @:cðû EXY^ "ôó^Vð÷ðà À° Žz^ÿ8*ÿøâ×Ìÿ©ž†ÿncXMÿC+ÿýóãËÿ³¨�’÷ˆ}Gh]ÿRG=1ÿ%ûÿðåÑÄÿ·ª��ÿƒviXÿI3)ÿ ÿðâÿÔÄ´¥ÿ–‰|nÿbVJ>ÿ2&õÝͽ©¡vfVE­ÿôäÕÿĵ¦–ÿ‡vdTßC3"‡`¸Þÿ?š™™?dߨÆk?:bWþð\abséÁ¡’Y ‘ÿÒ¡‘VZažp �”¬*� �ý!—Y,�˜ �Ÿ�&’Wx ’0˜Vâ ‘ �j �Z_VŸsÈ"”}�dï{ þu–YYsçv£¢z‘WWsó¢�“V__aú��t–V^^pSuèÈ’X,� –—V]\,�á˜Ü‘^0–VZ^x,�á—%Z+‘¨L‘“�´”P¶pp‘�Ô”XÜ‘“�jÔ”W+‘2§V] ¡S§Vì‘“�T“HÐÒ]’ �•ðb…° Vµl�x±Àõ"“XwXWÆÐ4¬¨Ð"Àº Àpœ VÙ`wmÿXZVz`bóÍRУbrosâÙ¥â Í¦î¢WXzÏdbâ �°bV¿W_ `´[;¶Y µ9àÝ 7¶Z 7¶YÙ ° °awpXw [`Áau]K`‘Ñ�l³;`Ñ�óÀaÿuY\Vumʃ¶Z�± Ñ“‰°VZú�Ñ ¡µX[Z[bçw Ñ�^±uW\ ;` Á·Y±ÐƒµÀްIÁ¶Jaì·;`ì·ÒÙ°Ñ�ÍÐaŸ�]¾ ÁaoX_gwð`q~�3Ѓ´jWWœqç çJá<Áam`Obl EÀl±i×°;i´iW[ù`cÆÉZÑÐcÆY&ÐcÆXV{cÆW\ —Ç'V cƻРi°™ ýa=°^ sb _¿[ ¼Ña¿`iÚÔÂ^{ ¿áÁÿWbZX[\`u]�Ä^èÀâÕÁ]��èÀZÐa]Xß\HÔX¹ÐÁ]Ô\÷{ 4Õv¾ÓÃ\o +Ó\{Ô[{ _Õ‡hèÀÁïÐÔZw{ÕvJÔÏZoUÐÀpaZÿ`p`w[V5`lôðp¢Õ¸pö­×)!’aZWYÿb v{-îÂZÔY{�êÕhèÀ£ÑYF¨Üo¹ÓàÂÚÐÐÞÁY¾ÓX{{ÔXoUЮ=âhäX¨Ü‘˹ÓbàÂÚÐÐ=â[ÓJÐÏPaPp÷Z[Zr0 W o"äáÓ'Ð:äW¿�ÔñW èÀ#ÁWXZ^ ¡ãX«à¯à™áp äåV¨ã ¯à¼âW3]²ô°]WêÀ ÷8ù`ðÁW:àl±ì¢ · »…²WW[\å£rÿ|surdrpßhmfzaYÏP©RRøùj²Qòf³{ðÚ_Z˜Ñ““ñw�öéT­÷§òçZâÍù¼ýç"ôso¿ù€þ‚ßξ­ÿ��}mÿ]M=,þ!€ ûêÚÿɸ¢‘ÿ€o^L¿;*C€÷ÿçÔÆµû¤S€„ugÿYK?3ÿ&ÿôçÜÌÿ¾¯ ‘ÿ‚sdUïF7‹‚ù¿ëÜÎ3б¿£‘{¥€cÿUI5#ÿ ìÜï˺½€›ŠïyiÇ€C1ÿ ùæÿѽ©“ÿˆxhX¿M8$‡`ù¯ÿHÍ¡_ë¬|â Kb^V{l  �W«àø˜¢VB«àëÀ¥¡~ÕÀb]oŠ«£o]^wW¼±yÒ“ÊLX½°U] w1U=QÐbãPyÿ^ib]WWf_?bgpXU™¡ü‡] ^bvxà—q�ª(�gp¡ª‡ŒWÏ ªÓVÏ ÓdáPªT‘$� *`­�• Ó`á 0+ôüª#‘\^aZ^^gsª‘\^¡_uYvf)ss 1ª^°†VX>�f$g[VX•QSÀ¢˜%UY¡" §'X¡"§ x#‘l�Õ¡ ‚üÐ!î¡rvjwfÑ Ù =œÐ€ZX]iËrX[¦ ˆT‘1 4¤¢óŒ²3@ ÷ Š"¡úÀª=Y¤`€îl°bY[Ù°§N‚YZi“sÄ¢ª HT‘o1w3ª ‹!YÃ0çpˆ$—0\p1ªw‘op^`®�ž6kZ] �w­5X\­�©É0“3Xž�É6WßW_sØ6VYê›0 É0 Ø5Y\WWp FZ� É5YW]L0 $IS $H:’ BIp$H­�Ý`Ip$FV]ñ0~Hb �I©0F%V\@É0#‘Y² l�£º =Là[4X�[ð¨ÖDºÀ>áEY]_áEJ±ùá@=Woa\3W\ÑpE±å°÷ ‹ÒbW[_s ,P‹!W[[Í‘¬¢�;RZ_¨0FV^Zñ0¢–^_·0TWbb ¢�T“� [f’ Å ±–[»�’¡—_^R ‘�IS[b FVFAQ ¢‘¢�#”^^¡ 2¦ÝQ�A�çU’Õ —^n’ —]XåxÀ ƒ�hd ¨„¦ b�õW\œR (—] � \hX ‘w°BMfW ‘j°Mfn’\0+—[œR¥h­R #p"•[[àQ0—Ñ`=‘JÇhW,� ×h‰bA—Z]À0ð• œbÈfB«’ÔWé�c :y\H`ŽJzpJzÞ�:y[(úÀ:yž�‘WY <Ð* —YÜ‘ 0—Y‰bâ@ª•XœR —W¼�½ �ôóy¿ þóæÙÏÿµ¨›ÿŽ�tgûZ- ÿóãÓÿƶ¦™ÿ‰yl\ïOBÉ &ÿõêÝÿ˽¯¡ÿ“�q_¿OD5_ÿ ýðáÿÒ͍ÿ™Š|nï`S6!ÿ øäÐÿõ¦•ï„u�RDÿ8+ÿøëÝÿе¨þµ�re¿XK>Á"ÿþìÚÿË»«›ÿŒ}m`ÿSF6' XWu0ßZZXu3�dfÿ[WXW^W÷v‘dfX^]wEC‘ûdd ‘\WþâBddVWX!‰4–· @–8ð@�&‘½b ‘ZW”aä �Ð3�m–W ùW[“q‘WYWH3�‹–„��&‘` ‘z8ð”`W[X“ÀÙ ˆ�‡ d_,Àfovw¨ÉšWoÙšgÕ�뜧oÙ�‘_¢�zïW K0òd_Vå_f°œj²$¡W .+§V+¦^°E§w^ E§] + ä^°K¡[°l§Zb]E§Y+¦\\о+¦Y_›m¥YßYb ¦£¦Yy ½ ²¤Xb ½§ÇX ½ °$ X+ ¢t0u“+ è¡ù\A¡å¤\^[꽤\ƒ¡ ¶Zþʤ\ZXWuaª£R7°Ð‘Õ�©Ú“ÄF´áàP°‘Þà`HÑ@P°B²Y-ÀÔ‘q¹2ø‘b¶‹±P°o¡7W_XÜÐ\)p¦´c°°ÁÀ¨±o ³W ¾¶gȵ ѽ�Xg å°ëÀ¨±`o{ vjuòYú¹/drxawðÀ&‘~Ã@W Z÷ ^1z¬ÁWÂ9ÀŒ1ü@À‹!xZl]÷ �OÅ]uŽ[Èl [À¯1bÁVwuwÉl[ÆßXlX•ÇXu;£Èl wÆÂ�wu¿Él[ÀÖ^1xPÝÇl[ÆW‚À÷Ȥ wÆîs0uÙl ¸[À=ë Gw‹]^_U!CÓd�XwUCÐoÈL×¢YÑU‹!w[XI‘!\Ã‡ÑÆ@Ž×8ðœØVŽÐOÒÂ�GWY´Ñ<Ð^1w—ÑQ<Ð4Òâ ÷xÃwe�òâ0Ui!v\[ÿ]WYÒ¾óÙXfŠ"s _^<À�ðäÅA{ó¯biW\’ \0å[çV<àHiWZVuYV]0åYZàIæYXTáfé<À <æá IæÉÀUàI“é<À <æÃ�IæKW\TáÀé<À <æ‘WŸ ÀçSâíé<À (àçÔÐIæVÊâ ù<Ài<æ>0<ädv<�à —¤`KóƒàTöV^瀢gñ\¸n÷Pn÷X Tõsªjðnõs>0¢÷Zënðêaý¤âC`X[[ <ÊÔ Z 0ã¡{àðºôs^IÐ!€€ÿñâÓÇÿ»­Ÿ’ÿ„wj]ÿQD8'ÿøÿëÞÑÄÿ¸¬˜„ÿjW>+ÿïÜÿÆ­”|ÿpcWJÿ>1ÿõéÛͼ«›!Ðÿ€reYÿNA4'ÿ üëÿÛ;°ÿ¡“…wÿl\L<ÿ, üÿìßÒÅÿ¸ª ’ÿ…tcRÿA0ÿýíÝÒÿô¥–ÿ‡xi[ÿOC4%¿\Hfÿ]XZ`mu3 ž,¢û ¯0 ûWl± àðö°àðº90f¡ ¤1Zã <‹ 6Yb× £VfÝ V\[_l±¥®fgt^l± .ƒg t]¡øö°t4Ðf[f}MÊ"f[]VbK±9P°Íoq³Ð:{³ êo êø‘� +o êGµ n.+oêXXI³ÁP+çÀP°ˆÐbñ Ù�KˆÐ`f <Ù�¿ðf[ÊK—Z][‰ tYß[^b¥&]b‹¥&\"°¥&v °tøb0Ñ‘Ù*gÃÙ&Y!Ñ@ù*gÑÙ&ˆ m°:g±<Ü#Ð’9:gc<ÂràF˜#ÛX]Y $X]²ˆ! r6Ð� £flÎð` «s4[[R) �0‘3Y`�6QQ�0øÛ@bû¡�0íÛ@I°ü «5Ï�E1à?°ì6V0?°W_Yç`½£ @X`½FW`FV÷`¿W[Hd03»á < BV® A?°KY@n1EV» Å _F]Š1?°øWVEXÒ2 ?³ŽAâ3 ˜F¢á4�4³�R�3d|afY#�ºè¡w<À%’vì+À*áØGBdo_¢q3Ñø@®û²o÷[W^ƒ�`YV~ñv:P}`öAY]o™þ@õBY]�4“o“X[õ0+UX97UWR@P+UB@ þ@�ÿmvZX\[mßzmfd„ðÚ÷mSVZ\\VvWÛ‚WX�YšP½ž[fm�PöžZ É\iz$�P¶SXrUÅP ÉVøUS lëP�VX¤P²uXg5d �P^mRW\XdtY�PLÀ±^h qmëP�PÎè¡m_v °,Sm_ym/°4“mX[vÖ R²fm°²dWº` Ëgym#°ÿCk_ÆðJè¡k3PðeLPðerB@Æð‘iv{ÏCµÖDgEà›£gÛY]°àÍ'sY\ƒ>p4sEá1vFp „JvLP1po¡kpÃ�JvW^ >ptsDáI ŒwIÀ >uLP1pä(rˆp>p‘gW\hv /ÂsåVÉr Ït ‘XZ½ ˆ�Ú ôór«ý÷ð" óÿãÒÁ²û¡�raÿRA2!ÿòáÿÒÁ²¡ÿ’�rcÿTE6'ÿ÷èÿÛÎÁ´ÿ¥–…tïeT"�4%ûgôæ×ÿÈ·¨—ÿ…saOþƒ2#ÿïÝÌ»»¬³pŒ{¡[þ¥;)ÿóáÏÀÿ±¢“‚ÿq`O@ÿ/ ÿòãÕÈﺨ߉{®ë€_Që5õ€? ýVKø æ'P�Iñ�gêø‡\â°¡—gÄ—@P"˜�—Zo{ø‡Zgø‡ïYoZ˜gÀø€ø µ�½ Ê�f^¤û¡àð†–gû¡àðKgÐRàó­�Ô ©§–m1 !^^ §¨•ÃA ß�Ó“z°bìàðí]_þovs3 V¢ Vÿ–g   ©�¦´0¡‰<©(¡¦k±  $^©(¡ ¦€©s�„ ¦ò2ž©Ÿ°V†‘]û^^Ò0kZ[ ˆ�¿¨ŠÐ ΦÓÈ¢©¢áªŠÐò¥]Å¥¤»ŠÐò ÿ’]E¤ <0²<+¶(¡9¹�H¶g¥9¶g¡Äði¸(¡y¹s�H¶  I¨¹(¡<¿¢\Å¥Qò¥Ò³ŠÐ(µ\¤Q¥ö±(¡V\¡ÉV0VK\‰1,t¿¢[_Ƥò¥DÊÐNÆÅ¥Î¥hÊÐY�ÿ’[\£ í”F‹Ã ß�‡Æ(¡ •É'g •Æ—2”ËÀ’R„Ƥ•Æ¢t¤Æ%¤òÉg¤Æ’E¤•ÆB²!Ù(¡€2Ù0¤Æ"ǰaÙ(¡Ô@ZnƒÙg�D]Z^ç¡×g ¡Ö'PRDÂЀ9µZ—0qVÝÑ€VJøZ‘C  ÿ’Z¡D-Ž4]Yn�æs�#æŒ2é¹ #æª)æ¹åYÞÑk¡æÞÒn锲és�næ¤æ¢®é •ÅVÖâ¤ÅYE¤ò DãB²(µöá(¡ÿéHV0ög¤ÿ悲.ùB(¡ ?ùžö±´ ÿæ‚ nù(¢ù9 (µXDn  ¤Å¶ñ(¡ß�èøŒ^`½ ¤ôsb®ûp!#€!€òÿäÕÆºÿ¯¤™Žûƒ€_K;ÿ%þäÿ×ǵ§ÿ™‹}oïaS=€7)ÿ ÿñÿãÓ±ÿ¥—ˆyÿj[L=ÿ.ÿòãÔÂÿ°žŒzÿcUE;ÿ&üçÿÒ½­�ÿŽyiZÿMB7,ÿ! ÿð㽘ÿsM(¿Ý¸“Ù€Hû#逮G‰@¿ô\zp÷]W\Ù[WWÿ[][ÿ!oguW Xÿ{Y[|WVÿW[VssoßwaWl•puŸ ¬ î þ Yñuç0!YlG¯í #  ŽjWXu¸@�‘XÇlZµM@u9 €ÚWWuÆ@ñž-WlÊ%-WEW  ðJ-[!->p-WVl:-•-Σpu` y�gfÝX� ’õÑgd—YV^Êq Ïp\0gíb¤�«ï#W¾ø$`[Hî#`wZ 5Y 5Ô¦@5W©0Ò"^b¿bpy Ò‘g/\bp–pG0à!äN1£qG0 Pg\Yÿ\Y`am`­bÇÿI2ZO3 PV4‚1£rV4YáXî@ý f4YXoWmßbd`wp%°¦¬4[]µ3�¿6$6ðs4{0­2W³5�Ý¿5WX_µ3rWû¿4XVXVêr5{0A ¶-ß"WX£3 G0í€WgWVB1 G0FBÉVÉ!r5{0†�g÷vo•pX«iGVtAyHVNàX ‹IsB ‹IåYtA y@J1v�Z{p�ÃE•qvÐEuô�||3êæ@Zb0îGW^[—{þG\S0 XYØ 0 W–@ *X\[Ó *X–p *XZV{*XYV*Xòmp PEAm`aøë°Ð@œ`fxW]§ „”Të°žP üžPÿ‘wfru\ö¤qAõÒw`mvfwJú‚{wWêÅÒUïW_ÞX] ŽÞX\ ÞX0ÞXY ÞX70ÞXcPÞUCP²TPtrrF`ZZÝ èä�rTaY70\gV[éNfÙQ@fWV]{xgV\N`~†‘v`sZYIa÷ÀõÒvVXX› s²�¾x’»a_ ¼¦aÅSÿm`osa`vf~h1×`àairmdf ë`†‘ÿoru}jbv÷uþ¸0`arrl û�õÒo`ssvÿ_ZKþî€hjvwujsÿ_VaÂãi€Îÿ©„^9ÿð˦ý�›€6ëÿÆ {Uÿ0 çÂÿ�xR-ßâ½ûp`ÿN7  ýø‹ÖÅ´?£–‰ˆ-ý ËZl÷P®†-–�lYó ª�º�Z]ua` ­-⌠­Ð�„�1… ÷�-œ |�O�Yl_ Ï�>u�Yl\ Š�š�•YË€ ¯�³�y›9¯�ä�Y_uö ù�ž ­_lª--­Yå_ e�R­Y\u(0C­y­\ h­�­¥Y1�­Ã­Y{H³­è­{ ­½Y¦ )B­3½YË!þ­X½åX¦€ø�~½XlZó“½£½XlX‘Ô�ȽƸ½í½Xòð€ #½ÍX]l) H½6ÍX‘n½[ÍãXZ}&Í�ÍXZl³ KͦÍXZ ”`-ËÍX¡ –ÍñÍXÆ »ÍÝ× áÍ;ÝRë ÝaÝX¦ +Ýà†Ý¥0Š QÝ«ÝWl^SÍÑÝW«�æÝ>öÝWl[ íí¥WË€0í@íWÙ° qÍeíWl0zàà½ÔÜ3zí¯íW^Í vÝÆÓíW^%p›ÝøíW^R ÁÝýW‰ èíCýW\õ� ýhýÜ °Œ3ý�ýW[�Xý³ýWï[l}ðtýôs2”õ%€#€Úµß�jE€úýÕYŠe@ÿõЪÿ„_:ÿïÊ£|wV0u€â¼ƒ€ÿoH"üÿÕ®ˆbÿ;îÈ¡zT.e€÷àºûðîáÿÔǺ­ÿ “†yïj\€ôZ{]XÖð\^ý[áãà ¤~ö‹ ›(Ш#"« • MÑ¥Î Þ -ðlª¨ Sñ § +wò Í Qœóqô wœñlDžÂòAÅçò gÀëÂð/ñŽ-!!lS©Ü9-W;�Û_-o õ�-…-o ±(-`«-»!? O-Ò-WÐu-ù- 0êð›-= 0rÐ Â-E=U1E°é-l=WWb�=“=£0d@5=¹=£0rÐ \=ß=ï1HÀƒ=MZ@e ©=-M=@‡lÏ=SM=@rÐ €ö=yM‰A¸À@Ëý˜Š_B›à}ðºMÊK¥0ô�JìM_ñ1 Ãí]^Ù°‰ÜM7]^ 1]\]^€W2'Pt]„]L L]§]]R,à½]Í]]Äðq]Jò]]#! ']m\âЉUí=m\váRmbm\Räàm‡m\ï -mJ¬m\МmÒm\qÒ”Âm÷m[«�wm}[R›à2}B}[‰ çmJg}[‰ }Œ}[¥0©|}²}["Q¢p÷^ôõ�Õ&$Û Šÿd>óÿÌ¥Yÿ2 å¿ÿ˜qK%ÿþ×±‹ÿf@ôÿͦ€Zÿ3 æÀÿ™rL&ÿÿزŒÿgAõ÷Χûp‰t)_FMZô�@“M��éq¦•�¥�_�˜ÐµŒË�„’ §ã�ó�ª‘ ��Î’ .�¥t8�ü†# .�d�¢�@|�ŽŒ�l”�¯�a£€»�Õ�a¡ ðâ�ü�‡¢€CM#­‡ Å�I­¬£ì�o­¡zð­–­÷ NÐ9­½­Í ²_­ã­Í ?A@†­ ½±êð­­0½½!Ó­W½g°L iM}½g°rÐ ½£½³±Ì0G½Ê½?Xl]y�ñ½ŽÀZÍÍÀXcT�=ÍÀ-ÍcÍX]% m½ˆÍ˜À æ “½®Í˜Àrк½ÔÍpäÁf@á½ûÍXZ ðžÍ"Ý2ÐÀàÄÍHÝ2ОpqëÍnÝ~ÑlÝ•ÝX 0 8ݼÝÌÐ @^ÝâÝÌОp…ÝíPá‘€¬Ý/í’Q ÒÝ€Vífà´@øÝ|ífàžp€�M¢í²áÂ�FàVÍoCÈðoíN`xÍý%ð\+ý;ý%ðÇ[Qýaý%ðX‹wðwý‡ý%ðWcàãíµýàïôuˆ ë'€%€Ú³ÿŒf@ïôÍë�€Zÿ3 æÀÿštM&ÿÚ³ŒÞ5�4 I‚š÷tMS€Úÿ´ŽhCøÒ­ûðÿõçÙï˽¥t^{W^[|Ôp»Ÿ6C&£v �ª *Èvˆ¤ �¾!'À Ð A�+› ö 葚 Aˆ¿ @ŠB å e±B  ¥ý;+×A’ऴâ¥0 Ÿ�×û@l ù­ý Sí#- Qö ˆýJ-FRÇq-kR€í—-kP߀-½-�Sˆ:-ã-¶SFí =ÜR‡-1=b­-W=` Ó-}=&c ú-£=&a�°ˆ!=Ê=LbG=ñ=qb@MM–b€/M?M^ª “=cM»c º=‰M»aÁÀá=°MábSM×Má`D°yMýMs  M#]q[ЈÇMJ],r¢ýq]Qr‡]—]vríM½]vpÞ°]ã]›s :] m›qõÐa]0mÁrÓ]WmÁpÐù]}mæs m£mæq�à,GmÊmZÀ­]ñmÎpY }}ZšÀmm=}Mp©Ð“mc}Mpépºm‰}™q ámð°}Ž€‚йàŽ$þôó3�(ú&´�jÿDùÔÿ®ˆc>ÿòͨÿ‚\7ÿîɤÿZ5ìÿÆ {V¿0 åKOÿ*Þ¹ÿ”pK&¿ÛµûpÜ¿ÑÁ±3€•†zj3„ˆ Ý�¡‡�—…‚¡(ˆ£�³�ܲ,1ŒÁ )ï�ÿ�)À �#�NÁe 8�<�›8�Dm�™Á0‘�¿ÁU¶�åÂÈ�Û� Óî�­"3Ѧ�'­YÑË�L­Òñ�q­¦Ó­—­ÍÑ<­½­óÑa­â­â�‡­½@ã­­-½5Q @Ò­S½\R÷­x½³â½à�½ÚãC°`�ˆ o-i½ê½'ð�� ÍLñ‘"Í2ÍrñGÍWÍW")plÍ|͘ñ‘Í¡Í"Ãñ]�ÆÍéð¶ÍëÍ¥WO@ h½ÝWu@ �½4ÝW›A³½YÝiÐ(üÀC½ÝWÏP $ݥݥWõP IÝÊÝWa@{ïÝÿП€•ÝíWi0) ºÝ;íW�0 ßÝ`íWµ1í…í•à0 Ê«íWép PíÑíWYÐ uíöíWY6!›íý+ðêðÁíAýW©!æígý%Wó  ýŒýWõ"1ýð±ýÁðô WðH&¾ôuŽ)€'î€Ûµ ‚E‰‚õÿЫ†`ÿ:ðÊþ3ˆêÄŸzÿT. 仿O‚N)W‚¸ÿ“nI$¿þسûðwÿX;K€Æ«ý­ h1 Çð~ Ž Ð ¢�° ´2�oÝÕ Û3+íû A8¡ð$X6F"NA  ktA Å �šBë µÁCÛèA€-Q¥&-4R� ËK-[Sñq-‚Qˆ[—-¨Q¬-¼-ÎQˆ-á-ôQ;-=b @a-+=Ac‡-Q=haö-Dw=Ža=œ=´b A= Á=Ûcg=ç=qÿÍ M"(q"M2MNqŒ=WM"tq±=|Mšr ×=¡M�Ásý=ÇMèqlMíMZRð‘M]Z,ñ ·Mà7]GPÂÝM]]Yl_SGMƒ]YCÀ˜]B¨]Y)qÛÍÍ]ð ½]Æò]Y_Pp]mY_@°'];mY_œqM]`mPp`¢s]†mY¶Ð+mJ¬mYÛÐPmÑmYá�vmömp8 œm}YRépÁmB}Yðæm g}Y,ñ }Œ}œp0è2}²},ñ|ð2ý ôóYÑu*( úÿŠeR?ß-!ã÷Ѿ%™‡ÿtaO=ÿ*óÿàÍ»©ÿ–ƒq_ÿN<*ÿôâÑÿÀ®œ‰ÿvdR?ÿ,õßâо{˜ý†QcQ?ÿ- öÿãÑ¿¬ÿšˆubÿP>+ßôãûpڿ˼® ÌqZþÜQWA“ Â…Ë�ЀÁ…_ÍuË� ?âˆÛ‚C×å…Ví‚ @¬™Û‚Dâ‡\킊óˆ\Û‚˜àË� ¨˜b0Ë�+˜Y킌óˆÚƒB—RðË�$+˜“óˆ$“™˜®°Ð԰Ë�+—Xu•]&’>÷˜Xp’¨l:¢ á‡XlZ’,©ª¢ ЇXÛ‚ ,¨]Zí‚ó‡X]Û‚™—�X²@8’—� ÿƒö˜Zªí‚s¨ZÛ‚…¨Zª“˜¨Z$“ö˜Xí‚s¨Z£…¨c°Ë‚ƒc¸““�ù•“$s¨$“…¨Û”˜¨î”�?·Wu[§’§WR£ Ó„Wí‚­¸oË‚+—Àî‚á‡BÀ8’$ṕ²á¹Ê‚á¹¢%á¹Wp’ЇW¦“á¸^¸³ó‡DÐ'¢™—iÑ&’ —�Ñ€¢‰¸6“^ÈH“I pÈZ”ƒÈm”‰¸[í‚›¸Ñ_�pÈ–à@§’ƒÈ¼àË‚‰¸€“›¸’Úƒ pȶ”ƒÈ¤”$‰¸³›¸Z£ pÈ$´IƒÈ7´ ‰¸·³›¸EÃpÈÒ0J’ƒÈø0’�‰¸%´›¸$“pÈÛ”@ó€/çþÃ�Ë}Ž _Í )Ñ-bí_ˆ0 W}‡í¥_­0 |}¬í_Ò1�`ÄíÔíyp-�íØü^RWwíý^xð œíJBý^�ð Áígý^Âñq¢}Œýœðl ý¾²ý]l[2ðûvótcè ë+€)€îÜÿʸ¥’ÿ€n[Hÿ6$ÿîÛȶÿ¤‘~lÿZH6$ÿþëÙÿÇ´¡�ÿ}kYGÿ5"ýÿëÙÇ´ÿ¡�}kÿYF3!ÿýëØÿų¡Žÿ{iWDÿ1 úÿçÕòÿ Ž|kÿXE3!ÿûé×ÿų �ÿ{iVCÿ1 ûúûðÒ�€²¥—¥’[ÖB§’Pâ„[$’Q”’NéÊ‚úìƒ M þÃO”|Ä ú3ð“耓 GÔ€0¶”U€|ÿƒè$¤$úH¤²l£ }¤I 0�¥C¢¥ ³ ÖZ£èIµûB7´0Ó‚ÿ°É²è’Ù´úý´{)¢ ú[%´Ã{(Wà hÄI0zÅC�Å0$l%ëÃÂ(ýÃÔ(ÔIç("Ôú(³Â(Z£Ô($´k7£@ú(·”Â(n”Ô(Û”{8z�´ú%Z_u5Â�§r๒™�Û5·³ó‡¼à\¢—ááñ’Ѐ#GÛƒ+—^£ §-ð&’ü7Rð€¢ó‡wðî‚—œñ ’3GÂñ'¢+—]”³ P§èðp’ü7]ëÃó‡]ý×])53GP¬´Ã+—\uÛ² §\R£ 4XÚ³ü7\I£)XXWÃó‡\Í$—\{Ä—˜PþÃ"X³I|XZ£ŽX$´¡X"7´ +�‘UÛ”�Á„«[uí² §[ì³Jü7[4Ã5h6“ ó‡U[³Ã—[Z”—(u`’Ó+—[·³ YhEákhå~hä+—Zª£§Z%£á‡ZPÿhÏó‡Z~£—�ßÀS—ßÛh€“ $#x’“5x¶” HxÈ”Õ+˜uô§YuH÷xóáˆì³Ѐï$ôójìêõð,*íÛÿÉ·¤‘ïm5"ÿþìÙÿƳ¡�ÿ}oaTÿF9,¿ø?×ÿ¾­”ÿhL1ÿ üíáÿÑÄ·£úe~iXE2þqéÓ½®ÿ›�„yÿncXCû2� ùèû×—³£“ÿƒqYCÿ-þëûس²¡�ÿ„xl_ÿSG:-¾Åùûpïojg„¯½Û„XYæ€îꃮç…W\õæ€ “VVÞæ†WVæ†V\ó…ï€ÿ€ö‚�}ÿ…WZ[ó…Ò#�@•0�e–Yù ÿ€S jfwXÿZ X^³þ’burvwujŸs(2”‘uÿf|wYWûÑ¡™dXXî²�WÅœWWõÅ�’“surbÿfvrujbv÷’“ÿmjpfX^Vv¿fu·¬sï`u§lmÿfsvufdß Q4ªam`blF v ”�¿fmd ayð÷ ’‘[^sZ¿Xp z r¥VßWfs €©ap« €¨Vœ € üt¢€°YYaoó€ ‘’[VY_ß[bpÄ¥X_[VXawÕ§•Yࢀ ꥻ£wc€ ¢’î¡Wá¡-Õ§W[á¡÷§Ðê´€ Ý€`[÷ HG³Z«ÝG³Y PµX�[µW[°ö�]î®�¨¡’WV\ÿZwVX`bÿf oiÿv W__Zû¡illX`ÿYXapbjópG¬½axøÀ°³ °°W\okÿ^b[ þêigsordºå±ê·asXå±øê°>ÀÃbXxê°sÀð±W Zaå±}Äd`_vâ±V¾à4É\AÀEÈÅs>à EÀÁ_Ä\y EÀÙ±d`X[OÅ |ÉvÁAÀ EÀÜ€8Àïv¤ÇsüEÀs i^^ZXXí=�y õ�i^\ïVhœ³ZXV[] À§YxwÀç°¿ÃWòñÄ ùÀú hvmXÿZV\hvwdX5 Ö½ZÒmfdy�zÐ ÕWX^w,ÖYÐ=Ý/ðÐþ ÑmvW_X\ZÎ2Ó ³í‘rÑX^.‘°mzX2Ó �Ð[ ö‡Ö �×VVYXÅ`�Ö �г ±Ùü�ÐÜ€hdVVW{ ž¥Âgw[ ù°|P°èÒZ Z[°¾èÒY YòÕXï X ÿÕW Wû ÿÔvY[V÷ ¢‘gvXVŸWp¨'ä¹ ý 3åWYWdüAà6áu_X`{#¼_¢ÛbDú'tE$†D0˜E C«E‘èØU úPT$ú'tT†T0˜UI C«UÆçâUúH-eú'Qdcd 0’ueCˆeè÷d$ú't-t 0?u½ú ôss¿  -€+þ€óæÔÄﵡ‚o_ÿO>,ÿðâÒÿĵª�þ-€�seW¿I;-=€þA€÷éÛÍÿ¿²¥™ûŒO€qcUÿH;."ÿøéÿÚÍÀ³ÿ¦œ’‚ÿs]RGÿ0óÿçÝҹ‡€q]ÿJ7#ÿüé߯ÿ¹©š‹û~©€dUHÿ9,ïøµ€ÜÏÿî™…ïp[Ë€3ÿ Ÿ‘ƒ¿vfV[ l¿ZWw[\p� û| í‘lZVYpÿZ[Z\Y\ ·W o[ ²¡lûYs†ÀXZzd�b•ײ&—° X4ú &YVC H+WWW 4j,ÇHJ}V†j†~ö€lYgo Ÿ�¾Ü€lYYW^²@�±Â] vy ÙÒÂç[É¿ZîåYåX1CÙ…°åV_²PÊKV\ÔØ0� &'[Ô5'Ð'X°'¤c°&'X1!&'WÔ˜És �#[WÙ`&W¤Yp‚Òlf [ z $Üé!lXs* 4Ù)—°‘4Ý#V ü)jŒé'}8×&}—°h70ÿ$‘79WXCIJ9j70H°lÔ�÷c¡lXV\vZ  —0JZ ˆ2V ìÍ#àú²WgdsŸ��lWWA¢©è¢æ0Xš4Y(¦4õ0Y XÐVô1Vb_¿4#� ËÀ3ViП�“1¯VVVd^| ž°k{W\VÅñs fCV`|Ï kv¦Í"Ïkm‰@Ü€kfå[Ô�–BY]WÓ F/à FZVScAfJ [°¨ÇEÝ Ò@ÇEW°_{åI]{Ï«k^F@TZï€8P–A[Wà^TY]Y^Ã�‘’;Q I�BXZé�CWY#BP8RàÑ TÞAk TX‚P �½ôŒPáÐ TW[^móBT:°X[ œP¯UZºWátºWg ÖXYTßWZ^ ¬UWVÁYð€ºU`Ð gX_;h^ g�a6h/À€ ¯RVVÔ‘¤Rg RgZ nhZc € ¢RQ@E³^X` ±bBIQúñ@ÚCRjwZ[mÏa¿Â·`VXÅX»`¿`´cÈ` ýFÂjpj|Wo[ sƒ{�±üã`¶`f Xó pú¡pjaÿmffswrpfïç`¢pjïwfvw ü’ p`m`uo÷‰r¢p[Y¿o|ZGq£pT­pGqLuYEsLp¸r;àEq^ LuXÎEq\Lp³¡pWX[†rÆLpób–q‡W Luvrn�lthÿiw}orpr'  ½߀]ÓPæ†z/àæ€!ôó@§.},öåÏßpÿ�pP0ÿñÓ´÷•v;9ÿþà£ÿ…gJ+ÿ îбÿ“uW:ý�ãÆ¨ÿ‹mP3ßýៀ¥ÿ‡iJ+ÿ íαõ”óXÍ€þ÷áÄûpREÿ8+ï÷úvZÿXXxg ßWV™Pzï_—„WV6¡‡ZV­€`²�¥ˆõ±€˜ƒV\^Z¡Œë‰Z]¾Œ΀” �¦‡ë‰X ˆÈ‚è'™Q™«‚ ±‡VW¢¾Œ·‹š«‚ ±€ï…V�΀¾�¥ˆ- »šYY¡Œ »šQ�³Úšo� ë‰VÒ��V­£Šë…YYÿvs`bfußXXW^VDqo ì„XÅ�÷‰´Ð� +;Ѷ °¡‡æ‚CŒÐ¥žŠ’ê Ò£Vc¨\Y`�…Ï„XôŒÆ±ˆ!¸È™±û²¤œÈ¢ Π#¶©"±Z¹©È¢ x¹%©"±Z¹%©È¢ Χ‹šB±Z°#¶c¨È¢ x¹CW[¼Z¹3ÉÈ¢ Πˆ]¶»ª±Z¹Çš±�Z°Ý’ˆÍÇ£bÊ„½™úŸÉ¡½bÊ¿½ŒÛÊܽx¹b©ÖÁHÛÀeÇÍbÊ3ÍÛÅ[WVœ¬WV¬ °¥5Vb¹Xâ¤m[´·ÒD¥ÄÕÍÚ%¥ÄÕÍÐ`—‚·Òc¤ÄÑÖÁ g°ÙÕÄÕÍÐÝ’·ÒnÆå!&àGè¼ÙÖÁcëÚÙ€U²cëøÙ�²&êb¥å�cë3é˲&àHçQíIýìqíýì�íýì&¯ífdêÍí}ðùòìí}ð“1mr\ßZ X[O�[÷<-ql\^_WVWpg Cl%PÞÔ0&ôsu_/€-€ÿãÆ­œÿˆucOÿ<*ÿõâпÿ³§›ˆÿo`QAÿ1"ÿÿíÜͽÿ­��}ÿmaUI=1%9€ÿõæ×ÿȹ©™ÿ‰yi^ÿOA4)÷ K€öéÿÜÑÄ·߬¡–S€|ÿnaRDÿ9+ÿñßÔÿÄ´¤™ýŠï`l]Nÿ>.ÿÿðàÐ_Á²£u€…óÿF7'ÿ®þ™ o]Zb_XXŸp¨˜!úWŸZp§xÌúVpßV^p3\pÓ3$^[Wp$]OrzrYp$¥Z?ŸYR‹ ½› $YlÝ/¦XZ­ XZ/ (XoWp W\$W/û'>$J(J(/J%gaßY¾‡1o\ßZc[^ÉXû }pB— W]sZ` ¡'\]a( ´¡ ‰![l@qoO[]ivÜðÆ0¡%—]bXr!¡ ã0o—[Z[›î'¤î'' î'/Á%Z3‘ ñ"Y\ª¡ –'[Yè"¡ –@oŽšPY † ñ"€" P† B2Q@‚ †$ZàðÀy4Y‘ ‰!`�Ž5X‘ Q1YŸVZ[¤6¶PìŽ42`~ároX[¶Ú b¥3X[‚ ì†$PRä4Xî0ñ!è ‚ i4è �!©†$k@É4WÞ1D[4# i4ua‚ EçVÉ0r@mw{ovafiPEXCkuw`B fEhp`BÕ vFf`B fEamò`B f@Ê@mwZv?bsf£r¬@¿imsµEX’¯BÄF¾Bµ@Pm�lN`íäD[Pì¸ïE–0îFVúEV—_îEV3`VZ»VYVX;VW ú@YA­g^DFgCgnDJfDg~DzV�CzUúžDjT]^][bÏv[ãð©A[^ÿ WYVÀþÔñm[V Wu?fdSqÏS?amxfÚPà`>àU`blÚPYAÉZÚðµQ?3`]\Ïbvãðc\WúµQfXZbsWSºT5`W±@ >f«W^±@ ãðZ@Xý^™Ðiffwg7ffd'p íScaujaarPu`åA¿X]V‰d\ÈÓ0”eép”`ÌQX["ÒTÚT³bæRìTÄd*úQÏeVâVÚP‘pÄèfúQ ÚPñ èc ŠÚTWÐV ìTsæR ˆõd0uq uêbÕQ$)uêgê…Y{oö€çˆÂ›ö€Õðê„  »Nšo ,�ç†Xš]ö‰XZ[� ™([�«O›Z�b›±b›÷=™WY?N«œo,™> Ï›Ÿoј žÏšZo Ïš÷Ϋo,�÷ibE^O •«" E«º¬Ð« —\^^�Ѭ—r �ª—[^m_0x –[]‚‘y¨¦ œŠ ž§’­ªZ›¾©ZW�y Šä§V�ó¨ö ¹�œ¾¨±o º f¹YWA¡¹XY­ yŠ ù…ZV\\�a ¹k° ¹V\!N„¼o rº!1 „º¥Z— º»O̼o“ rº!º»1  jrºX÷ЍY_›Á¾¨Ç^‘y¨Ç©$8É‘IÊ›ZÀ8¥ç †ÁÍpg¨I�ƒ‘¤y¨I’ZÀ²Æ[— NÀËo¯É1 ZÀù…[�`��ÉÿÀÚZÈ€“g ²Æ"Ú±±*Ú!ÙXW­ X^Üî�*ØW]nÀÈ ª 0“Û&°‚Ù\n“Ù#\[:�µÚÆÚ ! µÚK‘ÆÚ'  ëí°f‚Ù[]«“Ù[] $,ê=ê' }ÈU �ÈW ‚ÙY— E¨›àv �깑¡êË�I�ê ¡ê9�‚Ù)XO¡éXnûð  g¨WY² ,ù°g $8¥>�Èì‘Mùò�D]ù Š Pö ]ù9��ù¤°�öýOIñÍùyÀï” ôsu¯ 1€/€íÿÛɶ¤ÿ‘l[ÿJ?0!ÿúíÿÙı¡ÿ”‡xkÿ\O@4¿' �0ñÿäÕǹÿ«��~ÿo_QDÿ6( ÿýíàÑþg€³£–†ïyls€OBÿ5(ÿõéÝÿ϶ªÿ��ƒvïj\‘€2ÿøÙº›ÿ�€sfÿYL=0÷#؃ðäÿØÌ¿²ÿ£”…výcË€=*X_^\¯pߪs]¯[XZ`­ Á#sí]+@òîQs\[ÿVW\[V÷´Z_Vª#*^!*]¢4*„0Y!» ³d[ rXv4 �[ rnQ0s\Y›øüì£Ó0÷äAs\Xw_ ¹^¹òVP *¼[`wûw­[^^^»üê]ö]W\öV�`¹#WX¹fU0óVht N3sZ[^r+@Á­@ W F'÷V F&WW þF$Y]Wb‰ùð!s! ^ Ñ÷q!}Z/]VVsÞrXäp§`_z�Š&Xè "—,§(CA—,§ ÓpsYVZ]ÝsJ�&å(XÜt�&§ é$Wò,§ }!¥�¿dZG=6YóI0¼W_Vý$WZ][ œöj0Z p6œ` žp6[_ öZ2Y] ÚïB�0œ£0þf2YZv¨<|"¶0mv¼0š3wY £6X£6çW£0¿2VWi×vˆ [1û/eV^XVkì)�9$VVŸ0 íÞEZ A#FWûÓ VVX[ç çhA@W\ GudmDnYG_Y˜KEXTA�YGXî@ÿÿ\VVid zr�!_Ù¡HçY ˆ Ö@rwsÿfumaî¡rw_É@\\QÓ@^VVÉ@Í@ÄÁBãCÚ@ pðBh¡Í@üE×@U[Q îXa ÍDp^mïgC rrpWåV:P>PÝAdfm^ol]ñB6RQZpT^W‡0ìkPOR^ V½½2rbYVgP)"ï2�QXß0iJ2žRœë0¦XV¦P`pýhÊÀog‹†¡p_Ñ ô€ÃS¥�VÍa,@ýÓRåQÔíPp¯p ÞTW\ÇVZa;`íT akþŠapYà eÎ+QZ eP8íPbæQX eõQIe´T` e´eãXV»@ÞP8¡mzxlg –Ðbÿogab`VY`ÿ\z[¹ý¢gWXz[fg ÷a·i±`þ¢oaX[X Áˆ àaÚç`fo^ñ^‘PJ° o^\w ÀöcVb_¹�íðup�íðql0‘ p–ñ�,™°ÑH,�ù†¦£ ™¸¢ ö‰É£ñ�oxyÁñ�\wí¢ lzZïÀ ¶{¶±ö‹z‚‘ö€ÀôóWoúïð20ÿðáÑÃ÷¯ ‚sÿdTD4ÿ$ôwäÔ+´¤1ÿ„whXÿH8)ÿ ýïßÿÐÁ²¢ÿ“„te÷VGc%ÿ üêÝÿ˾±¤ÿ’…xiÿYJ<.ý�ðàýÑ™µ¥•߆wi©Oÿ>- ÿúéØÇÿ¶¥—ˆÿz`D(ßäူÿ–Š~kÿ]OA2ý$ïúI<¾´`uvW\wÐ!uW7³aÚí†l÷� 9ï2us›\W& @r‘VÏ_~�”V].˜p@.–…R�¿ugZYYõƒ ý@¤2u][\» m”Xw�þë€[ ZXVaÿ[xg ZZVz¿`bk…’Zª‹“Z’—�”Y‹“Yr’— ��"0uXV‹“+XV’—�”XÚ”’—á ��‘ `µ2ªÓ’WŠ”W‘˜Ñ”W*Ù”Wá˜�”W¤’—} ¤[\Xv­0Èdm¢Æ0 u j£[Wçmu ° uYÿV\XYV«y”§W}£©V_XZx¤¦W¿¢Q£§Ï & £¥X›¤‘ť¡ ø©À¡ $ø§Ï£º& Å ¢ÿt][WÔšîRtI°} täÑ E°I°f}\YŸZlsw�g³VŸV`sw�ÿ}ÿ[Zb[\_ý\JC|d[hgpø»@>P¢|VXsy >Pf{wZXP3xC¶±]là‘CÞŲVu ͺl;·Xlq`í¸Xl8)°Î¶² u ¾°}!”¶°(àÈl°¿¶W²é°Í·‘¾´v¯uafÓ0EÒRsviWV~:#?v`_YrÇ€�õrÀrÆ\YôrÆs�rÆZY T«Ç€� rÀ rÆW,@^ÊÇYrÀ ÊÇÈ�@rÆŒrÀYÂW›ufV@R,Ñ Ña¿m`blÔuwWV_ÂeÀf×�?Zu]ǰ³;ÑzXPCØ]uCÐhÿYÒÙ° C×Yup@žqØYua×b‘� C×Xu€�ŸØø°ŸØXua×ÃCм}!×�WuÜØl C×W[ʰøØÙ°aéÀa×ó� a×?VuZ]5é¢Pëư³r¡ omû ÿ­h[Vwù dàÿb[X[uŸrk ÛBwâVßYk‚èXk{�éWk�éÏVk �ç‰`k9‘ç§ÐkÁé­à©Áé½à �çW|á TøŒá‘çWœáù’­àù½à �àfb—[V_~°ÔXð^ª~°`÷]~°`÷\º~°`õWVZ~°ürÀÉ`sba}wÿfbu`gwÝü/’saW Ñè-KBaWÓ¾ðf/]\ZW9 ÿZ[amp9 ïØôs\Ñê÷p3€1€ìØþ €®š†qï\H€ ÿöâÏ»ÿ§“€kÿVB.ÿðÜÈÿ´ŸŠvÿbM8$ûi€çÒ¾ëªy�XDÿ0òïÞÊ•€ ŒÿxdP<ÿ)ïÿÛȵ¡þ¹zgS?ÿ,ñ¿ÞË·Ý�ÿ}iUBÿ/ ÷ëäûð[‘vX[<2ÀÇ HZrÄ©Y ’Ñ X÷� Ñ W f’ÑopÄ÷� Ñ ^æö‚F ’IÈžñ"d”GC ’KªÒ\ö‚/\ ’ªB\õƒ V\ “ªj[ö‚/[ ’ªB[õƒV[ “ªjYö‚/Y ’TBc”VY “jUXö‚/X ’BhÀ*VX “JÒ%Wö‚/Bà@xVAÀ‹¢)õƒ/KVoxMñ) ’ Bô„V ”¢ Eï�M^ð8R9`#ü€h8 ’ �ê†@:#e0t�9d:R8\l^‹ªe9\(y9\; �9\N¢9ÿ0²·9£[l­ Ûe9[v ªy9[‰ �9[œ¢9e@#·9¹°÷‚e9\Ð ’y9Ȱí�9kÑÆ¢98ç±O"·9Yl_u"e9kY_ö‚ y9Y_ ’-�9Y_õƒ¢91P�<�ìG# Z%#¤%Zc”:ZL$OYX‚�C e9÷° ’µZ¤C ªy9X¸C�9XÌD ¢9ýPØ¡Z`#ÝZs#IñZ†$jš$�¨Áï‚2·9WÄ3 $e9É ”kñ e0pgH¹C”j(y9:�9’MüŠbOYÃ$ãj×÷jêüŠþI!z`#ãjs#÷j†$üŠš$ !z64ãj¼M$�8%ôó_¿ß 42þíÚȵÿ¢�|iÿVD1ÿ øåÒÿ¾ª—„ÿp\I6ÿ"ûèÿÔÀ­šïˆuGO<û)e€ðÝÿÊ·£�»|}€UA…€ïó�€Í¹þ—€’mZÿG4!ÿûèÕÂﯜ»€taÿN:&þÇ€íÚÇ´ÿ¡ŽzfÿS@,ïòûp¯¤¿�|hÁ["Bφv/QD Q5ç‚…Tјt#j%[®#ò‰ ™Ô$‰™è$j>ÐÄREÔ|™Þ Ž™o‘BL¤¢™Þ´™�C߈Z’ÝÚ™¤C/·D $˜ËE˜àE {™#I©%#©8$V´l œ" jYu÷B –Ž˜Yu+B œªÞ’œªV;"œ©o÷C´˜Y%o+BèªÁ’ èªÏ¢© è©öC߈Y*CD4ºÁ’B %#4¹B S/U˜1UVBFU ‰©>D¹‰’¹’œ¦¹° ‰©# $¹%#’¹8$¦¹™TI ‰©O ¹›#’¹R54¦¹I4jX‡“Ž˜XuZx·Ê_2I·ÊÏ¢·É­“ ´˜ XoÄ Ú¶cÚ²iÙ�CÑXlÄÂIOÚ_2 s#OÙ’¤C /éT˜ýU”Ve¤ÉZžšÙZT²­ÙZO ÁÙZ›#�¤É(dšÙ”t­Ù¨t ÁÙš$¤É9$šÙM$­ÙRˆÄ ÁÙI4juÅ2•Ž˜W¨£ÒêËLÒêÁ’DÀé_2 úB ð ú“ ùoÅ2•´˜Wô£VúË�Vúç“Vú_2VúH´� 2VùÄ3Ñ ¼õ£Ñ\#ôs`¿ë5€3þ„Ç´¡�ÿyeR?ÿ+ñÿÞ˸¥ÿ’kWÿD1 ÿøäнÿª—„qÿ]I6#¿ýêY€ÐûÃ]€¬ž‰¿xcN`&ÿþêÖÿ®™…ÿp[F1ÿ õÜÿÈ´ ‹ûv›€L8,ÿ ôØÿÍ·¦ÿ•‚oaÿK5ûüûð}VVWWVZ ˆCÿYV[ ovoÿ\XZXauvç  á�Þhvz×l é Ü[^«YXå éWÿ^XXW`YV¯kv Za[~v"u2õé ÜmdY ßWcëloÿvW`XafY*‚à^WioÛÿfoZW[z`b�ë„àŽú“†Zî¦X¯Wê¯Üd… \pÿoxZ[ZZ_YÞÊîÇWW•XÑZÛáÿb¯WW_WåéþÜ`sp(>"[VYéC »vYc`W`iüo�0vYWV\`¿X^XWæÄÝ;-sN+XßWZv c-WZÇsN ("A"W^¥J �-_ ¡+Zßv\v µ-\sWN É-[Þâ-Xvö-XsûN*WVvmY÷v=mYskÃO&XD&ÅI=¢_ ]0�$R1Xs!$];†#r:š#›=_ ‘¡'¥1Ã"¯;×"ôÃ=ò ×=[s$ë=0ÿ=0N'¥1’,3]:@4 N ÛYbmW_X]'Ð}P"XY[W€@ÿXZWØúPWÊp[~¦VW &"^i Ú ~©@]Vm-±DßW\i°Cuw?W\`ª]Ò‚Õ_*óŽ˜_®óMëH؃ ߈ ¨Òu Wgc˜_Ñt˜AP‘ã’´˜^ôŽ˜^›ôýH^ªµc ߈^(c#X^ `ØV[a`Ð(!uW\wYl‰ò÷8¯Âop\[Ï^^”°ì^X/b^Z`˜�(!&ªÑ[_D å˜�ànöY^ñü¨™ñdáéYˆõé|¢â`ë ÌóhÃ@lµv2  ïpÞôy7º€5€óå €Æÿ¸ª�ˆÿuaO;ÿ)ÿõåÕÈÿ¹¨™ˆÿ~t_Kÿ6"úÿæÓ¾©ÿ”€lXÿE0ÿóß˶ÿ£˜‰xÿgYNCÿ4%¾}€ôåÖ‡€¸¿©šŒ‘€oÿaTF8ÿ' þÿîáÔÇÿº­ “ÿ†yl\ÿE. ÿùéÙÅÿ±¢“ÿpaRC¿5'ã€Y}X[oo3 ï}ZVŒ`Xdb?õïž°äÍ�ýQ}Z�\ù5ø‚� X"~�Z^ù0Z� 0XZùN¢� "( TXŸ°Z’0÷€ Ôl žV WV.ù6ÿ}¶PW'hÈÖh@ÈÌ ÖîXjKZpV÷ÖHþv) Öû|j˜ Wpp{ó²A|gVW†°Û`["_Vw�ÀÔtÂl [o  t%ZYƒ €'ù°€'±°€&Yw_§'\°îª$ZÁ'Yü°L!_VXWu'YÁ&°°€&›À¹€ ~�|^^`àf£°h@ 0V|¢³Ÿ Â3%5\õ^ÿ�€$^\]`S°63\ÿ�%0º2\ÖÐf36Zªÿ�%5XW2¿3]ÿ[ZYkp„Ì|’�1Xl÷€–6Y]¶’0ƒ—5X^’0®´5XX^¡0Ã7\z¡0´4[]Z`’0¹ ´0œ@|[\Îò3[û0§@|[ëZ]ûã3Y\`Ïki á5AdÝ ð5Y û5Xû‹ý²|[Wf|'aF@1[˜2¹%0WHo\4[%W2°ó1Zí°F@–Ú@|YXÐf= ° |°ÍÐ|X^gZÀ›sbá  ´09P|×X]m[@t²@[• ¸JdÆB´0¦B]Ñm­AÙ@|À¸GX[/\tb,È@õJÙC‘àGÂÆB´0“AXy]KàÄ@_V¸FD;S³AEZÙ@APY]zb àFbZV_R‡X�„VìBAP„–]³A“8QÿBAP ��HTÿB³A ÓZfS Dç]b ÓWÁ?R«WTc³Akd@Q#kòzS�E |X ;/cbWk`1D¼ 3\4|a0eDIV²!0†fe2%0~\!VW\` %0þ»�{iYuafïYFØÂ{iWBËcÒ`~�Ø`ÌbâdÒÚdÒ`î€{À=Ýlb{W k`3 zmX [VÒÁ# RD²t(Ó (ptDZpÒÁ (wnp(Ó (p‘pqÀ"r(pÍÐhuò(Ó(p¦ zdjmöh0êù�z\VWïds“z[]ËW]Š vb«qXYW]§s¥Z®q ³p¨rY®q ì³p�qWZì° Öïðæôónöð Õ86é Àß©—…^×G5%øìßÔÇ/ß«Ÿ’7jÿVB.ÿùìà÷ÕÂï°¡ŒßzhWÿ`4ß#_è÷ÜÈeª�ÿ�ƒvh×ZOu7yÿïÝËÿ¹§•ƒÿq_M;ÿ)ôÿâо¬ÿšˆvdÿRD6(ÿ þïÿàѳÿ¥–‡wÿhYJ;Ï,m�ÓjÿU@+ÿ p]ZgXZ%[±0£•ÑòƒZÀ0ü€Õ ñƒVÞ0¢ý…W_Zø€ü†W]ø€(˜ú� (—\\p ÔF˜� ü€ J”Y`÷p (—[^p½ t˜]p –W|B‘—Y_p(—õY�¯˜Xp¢(—Xø€g•V«�Š –V� �� $ù—Q� ù—� ù—É�éù—�� p\vX[wVZA’‰PÁD¦Yq�Q«É�²Q«WÙ�Q©XX� $‡«_  ‡«É�‡«ƒ �Q©ß°Þ0Ï«`‘Q  Ó§Yϫɑϫƒ ‘Q¤þ@I¤(»_ I)ºÉ�L»ƒ  L¹’“¢p»_ p»É� $p»ƒ  L¹Û¢(¹í¢I¸»_ ¸»É� ¸»zƒ  L´^g|]HÐÊÈ@ –0C °¹[q)ÁW0ÀìC ,À ’ ’[VuÍX8À0HÅ¿úUÀKÁZVu©*Z!LÀYlÐpÆVà}ÇmpÀ'ÀƒÁ³pÀB ZZÆ ò–0§À}�^k^ÿZ]]w&J&ÁYžÁpÀ?ÀY<Ð÷ teÁXxfsÊ Îvapª@[@W[ øP–0B ª@ÊP`ùÁ ü–0ðÃVXV]V# þÆÑùÁ×"°úúÀ3Ù\[”!×NÐXÜÀUÚ õ–0ÓVWa|«wùÁyÜaùÁØ$ÃyI`‹ÕðpXßVYxvö3É>ÁbѯЦÑ\ïz ,dÂXXïZz ÙÕWXzó ÙиÀW]`WûZf‚Ð|__ÛáõÒ[|�0__Ý_áÝ ãlVk]fàbàâä×fXWþÕ/å`\Ö9àWVáå`[%[NååûØàfÀbÿ VQ@—Ã…ápÀþ�V[[sZoót#�âYo”¦àfÀVMÀo£0Ö ö°ôq VX ø¾àÌà'ÀsY~· ÛãW~ýðþA¡]_V^W\íÜÀf‘B}Zp·dXVgB}CZjÏ0ðîÿð„#+4ù ðÉZ¡iVýî!zù˜tùh„ð%&‘ñ)–ø»X§ò „öôâWý @øýbýôsv  õ9€7€ñâÿÓÅ·¨™Š{m€ÿO@1#ßü#€ÝýË+‚˜…r_O<)=€ÿ ûëÛË»«›O€ÿ|l\Lÿ<- ÿøåÖÇÿ¸«ž‘ß�q_y€?ÿ/ÿÿïßÐÀ±¡‘�“€ÿaQB2ÿ"óÿäÔĵÿ©›��seUE·€ÿ*ÿúîâÕÿ˽¯£ÿ•‰{m`QD7¢Ào ‚Ð[8Àu fÀa-Ò f‘[`{0f|”ÀŽt!ö w[X~óf")XVxñf ð€7uk3ì‹qC M�Ó`wÛ I`"&1p`uNÐkM'Àn[ Zo]HvF‰ Zä�úÀhÕfbh b» 8qÂ`]WQ�ý01Â`Yos=#Ðo "Ð�Þçgsóoq ósóg çüAÛÀu[oÂ1 *"°Ã3)jP\B ]XosãÛÎU%gÛY ”çU"g[!`%‚ g“n%û#$bÐuưàÄ3#©"° ¸#`ÀÁ ¥$s.  ±'søÁ'ê pÑ$çpÛ!Œ 2Í!‰1e’2ZQÁ02WbÚ"571°Å3#pE39ÀUÀA7V^8%Z°N8*1~:ÊÐUÀ25°à ±$¥2ÉÑN0AV] â4Ä2° ^4Ó3pÜ:ÐPÜ8ÛÁ‰ N4žâW°p I8À PÜ5$BÝÀ,HY8ÀUÀB BDVÕàÈÀÿõæýÚ/¿°¤ÿš�„oÿZE0ÿñÜÇÿ²§–‹ÿ€uj_ÿTI?4ÿ  õÞõÔm°Û�•†vgZMÿ2& ÿþñäÖÿÇ·¨›ÿ�‚ui\NA7£ÿ øãÎÿ¹¥‘ƒÿvh\OÿA5(ÿ÷êÿÜÐõÿ©œ�ƒyk_Réÿ8+!ó¥ 'Àb]g|Ï$”‘ú€dmçW�»b]û‡ŒBb\o|ac �÷��”K\o ‘ �’g!�I %•ü€1•’”×\ ”[ ‘p&“w�ûð@“[os‰àP}–w ýp‘[9’ }�¤s’G‘}•ü€¢•gßsWa°–sW#}�Ì“ ‘}�‘”²À”Z ‘}”  ‰”Z‘‘ ¦Ÿ ¢”åZ9’ °”ªÀa$ ¥ü€.¥Ñ’<¦à�áU¦:’}�¸ÀbZd7ks|ô èℤäîÐnð ’ |ÐbZ_¯ ^V²  ŸÀ ûߨ¥]Y]XU^¶¡ »§\±¦»§¿Z_W[X¶¡¦»§WX±¡¶¡ ú¨Wrµ» ‘Z ”Yo|}!a">4±idÕqÂ4±2º�Û&“5°V°1³¥uêÀcµ’�V¶s{b¶dzV°|AޱoYzçÈ ›³ �##›³i‘z#ޱ � °”�°i+ bµg7°çá´Wv;µgD±Iµ’G‘Vµü€Þ¶k°Ho°û³Ò‘Þ¶à�Þ¶*‘° •µgž²¤µ\Á �´µ\Áifùµ ‘U ѵgÚ° V°2±¾Ê X]\^±[#» 1²ÐÁ Œà‘§Y � ÁX†¢mDññ ’ ÎÊŸ£ ’¤$ÒÃ}ó ùÊŸ£’ ÅÐåbô@ �‘X¼�$ÑW_6Õ^»6Õ]6Õ\»6Õ[6ÕZ»6ÕY� þ:ÑXYf|wu`ïR8ÓXè�©¡WðV¯¤xÛ¡×[V±¡x•´ÙZÁÔ ÉÚ¬Ôh´Ù§À®Ò ´ÙX[ÂÓ© êÁÔ ´ÙWÚ¢x“ 2êÁÔ2ê¬Ô à 8Óm ‹@9ÒVÁ‹@‘ �‹@÷�oï{–³aaåW.!�&“¤àÞžä`aYVä Ž“ã`a²Ðºä) o; Çæ`�àý¹s¸ð þaÿ[W^ho[VßfXz±°xÊýíVñðyaa¿XXBóXŒ$`øwô?÷%òÐOð.òna7ðkòVCYVø/€uý$óð®�ó[ôrñˆOð¨ý òOðì`2ñð7ðÚñ”a7ðì þôsq=ú€<€èнÿ­�‹yÿi]QFÿ:+ÿøêÜî'€¾±-€”ƒÿsaQ@ö;€"œàòâÿÑÁ°¢¿“„vS€^þ“ÐE8+ÿôåûÖi€¸©–ÿƒp]J¿7$…€ëÿØÅ²ŸÿŒyfS¿@-§€ÿûò«€Óĵÿ¦–†t¿bSDÁ€&¿ùÍ€Ûÿ̽®ŸþÛ€�rcTÿE6&¿qÛVH:,˜°ÿo`Z^W[vy B øXv B#®ûV^VXÍZÿ 302)d£ Ò")2X§d A2VZ=2WXÿ}§d}›dû}V_vt¹Èd 2 V[ÿæ>æ!)\æÃ"(;22(d 2O@ÿo_[ivVXp¦tÐ�§bU#W\!¼a _Ybv(qŠs(V)pa øz \*)p “'[)p “'(q• s'ZÓQ “'Ž! \a �oZ^=a þ›`oZXX`d™ß%ô a Õ@o·X]b tXj0F;W[\`<ô@:¥p(1@<ô@7XË[\2f;(1Œ¤z;ô@Œ:M2Œ8WuV'2Œ7WX^2I Å;(1 Ø<ô@ Œ7 VZ¾3 þ<(Ñþ:M2]þ8WVz(17J@3JK(2]L<17Jp1yŒ0øXZbVdpÉ–H„P–H8p‹$—G‘pÃH®pÃ@ï!ÏXYXd¶áGbtƒ ïH>Ã@â!öAý TW\V^ @WΰW4@Ã@÷€m)¡9I°BSoðBRÏgbI°›`lW·VWm“�—±kÆò VV÷ ÃCwPW[/WdáCk‚à)0© ûà†ÐkóƒpkýÊQkZVxW?{ ŸRµSŸfX SÄUù ¾T3À\ba`hÏŽ‘RæR”ðPâSbéSðV`ùðP±QXVxW§{ÇПRXÆU LÏT4d ÏP©`k?ñµ\¨R®TW[·SȾTgcËPÏTwd ü¾P�jwd\`÷ È“dZ` Äžf0 ž`†Ð±aVoÅY0ž`ï ¾b`•ÉfWš`×gÓ`üž`$Ðjw\,�õcZþ`˜°j-wÁb xXù�þ`ì÷€q þeX„'u^Ð >v °þ`j¿vb`p hõ°dþObisWYVVvžgahx¦ÐùxpijXXs¿l~XD‹tWåW”r šp 0ij×WW”po‰ðÿ>ñiX_ffA@@ðž|ðbgÃ@Àr^Kvg@(0ÏrÃ@ïŽôóEû×Y9óÿåÙÌÂÿ¸¥’ÿpaRCÿ6( ÿûæÑ¼ÿ§’}hÿSF9+ýEÿñãÿÕÆ¸ªÿœŽ€rÿeWI;ÿ-ÿõæÙÌÿ¿²¥˜ÿ‹}n_ÿQC5&ÿ ûÖÿȺ¬žÿ�…n]ÿRB2#ýÉ€öçØÿ±�‰ÿuaM9ÿ%ýéÿ?,�Â5ÿ@èYYYÿ_sVVW[?VZ 瀠ۉ÷Yê�VXTþ�.PœXú€&�*�œWæ€ N�ú€Ib��v�.P�ý Ú�Zaw`biv¢”7^YX´pgX{ ¯�ý ¢’WZ]Z9Òµ±Ê”YÔ—¤�ûÔ—XXZDÔ—]‘©€ÐÔ� ¢’o\\\upY!§æ÷à�•ÑÛ€Y « “X§” ¯�ÞN¤^YW]¾�W]0µ`¯�B¢ßð‹î Û€ÛVvÏà ‚~¥ob�r ~¤à€Í 3­¢X_†¡ ‹¤Xå_”¡™ Ù�X_ià†zŬ€Ð×­�ƒyì­Žàÿ­÷á¼XH ¡ë¬5‘;½�'½’.Pc½÷à ¼]‘$ë¬q‘‹½�³½.Pyǽï f[[Y¿@ ‰í"î²L ö°WÀî²ï`s ÉpÞö·Xs"Èp]"ÈdÇXÀÝLÉpö¶XW§pö°“Àf8ÂÎxÇdxÆtÀˆ&yÄX_Ï@ŸÆ]€ ŸÆÝ@ŸÆtÀ ŸÀ¤Ì ŸÀë²Â\âÇ|P� âÅW^VÜ þÆ]ZÐâÅV_ÐÖ¥^tÀ(×ÐÖZº¿@ŸÄZ\]é Š®÷³Z[[¡@âÃdÿv__[\=ÜÊbsÒY{×ZY {ÖZY$p—×÷àù {Рàdv]VV¶0>|ÔV\ƒàþÂÔs]V\aämÔ×Ð[ÐàŸÃdjmÿXoùúÐïÓWo­H’bòÐÃà àpÑgÊÒû‡íÓYZ_l÷0îÒXZYmó3à_á~wa ü"°ià frBæWNàOàkUæ§` ^aãÛÐ kçZîaã`èY\Ý_OàZ”ê[^ªŽâjèX‹åjèW¤Éâ{àà PbQp[?V{ij�Pï ÿbmpfgsáè¡þã`õofo¸ûPðâ bmfGPüðøbk_glÏz%B6óiµ?õ\9ò$Oøió?ð 0bfWV7VwZ‘ Aoö—vVZ{ð ûU`uADà_&àî¨ñ^&ãb]o�|a ]ðBP¿ñy]ðüá]odmذÔ]ð¼ògÂð ]ðûþôskø ë:€;€òäÿÖÉ·ªÿœŽ�oÿbUH;ÿ.!ÿúíßÏÿÁ³¦—ÿŠ{m^ÿQB5'ÿòÿâÓóÿ£”„vÿh[M?ÿ1#ûþm€Ñ¼§’þ}€hT?*ÿëÖÿÁ°ŸŽÿ}iVCÿ1 øÿåÒ¾«û˜�€q^Lÿ9&ÿïÞͼÿ® ’{ûdÁ€6ÿøBÍÌß”B g|[]^âqÃ@éýzËÐ\[[wX·`[VGp›÷ Xú X`WV]ç/\¡(\Š:[þ #Y¼#ï gw o{àùbò…m }�aŽa� Pgv^V`VWW›�[ª«\Z³ºmZ²©»X\³ùÜ 0guX[iÿZu][Y‚+`ñ]uü )WXuXü*X!Q R óW!)+WV! O'X"õ 'ù[Wdt'l" …)‹]u€!… a$¢ V¢¥"…( €!¿)lªÌ" ¿)X¥"«(XeX¸#… <$W¥" 9l€! …(W €!‰0:*2 «(j!€!”… ¬s±X�ºsDÂw0{5Ów0{5¤äw0ºCàg‡PuWWbXXYw/P+à°;X¿0Ã;…�ú¿0Ã8VWbZ]UW¿0í=V¿0KD0¿0KjP¿0Ã0Pa!‡P"Bý1Ã6V¸1&û3ßVJ¼3UKÑ3IMý1jKæ3jH¤"BÓ1 ¾K:CjHÒE j@‚k‡}Ë ››QaéV– Xaä›–S�P”`g`V�V[º‚"°uÏ{ÄñR[Ro�cPè\Q"±h€ qgÿZfa[zóõsRˆQXZz}�XWXz�T«Y[zS�TX‰SH�TÇQ›QÏX«Q�PþKQXbXa vÇògX6æþT¨à�`ë±sBR HSfo^^VÞ1òûfb»Ðma<#c6a1c: :`>`ë±Raê>`2bdop:`>eophettð:`>d\W[uÀTípë±\Ü eVÁùípYpf[_XpŸWZ_ÔÃ`dG^_Ð{Â#ÑÚe]iÐçf\ÃÀçfÂÀ çf›À wíÀçfЕ Úe\µÀ 5vò°dÚehÑOvý`_ÐÝ\wdÌe[\ÒiÐ{wÐOv[s«xÅ[œaö°N¤wdö·¨Àö·ºµÀ ö¸s ö°wôósüPù>ìØÄÿ°�ŠwÿdQ@/ÿñÿâÓĵþ7ˆyj[ÿL=.ïQãÔÿŶ§˜ÿ‰zk\þg>/ ÿóäÕÿÆ·ª›ûŒ}n_PÿA2#ÿöçØÿɺ«œÿ�~o`ÿQB2"ÿðàÿÏ¿®žÿ�}l\ÿK;*ÿ ùèØÿÇ·¨™ûŠÏl]SÿD7*¿MòsÿWX\÷©ƒQô‚WK�8 bsíWø€ðRrusn� %’lX:`SLb*�Y,‘>`~¨ðr[ãƒQ_o}dWXñ¥ðNM–XY˜QPY– V[ñw™š0w˜QP¹¥ðèo|vS‘xÏŒ«ª”vr÷w¥˜Xxª´™XÁ�ŘV°�Ê´˜VÀ‘Å–€‘x‘ ´–€‘Á�©Ñ� $©á‘¨ñ‘ ¨¢yÅ•R’x�µ”$R’Á� j©Ñ�z©á‘I j¨ñ‘z¨¢ j¦’£z¦ ¤ Í©Ñ�ôݩᑠͨVvVI¹°�´�M‘z½’çxZ“6±Xv™>· >µ ¢I\¸I°\·W±>´SsVðàh°vŠ·Yw°®˜´iXZ9² ¨¸dƒ ¶¸I±Å¹íÀ¶·V�_Y°ã¹ûÀã¸g±Éds ¶µ7³m!ÇOdn/ÇI°.È’ŽÀ=Çí± .ÇëÁ$[È:° jÈ¿p=ÀKPD%À¯Ðùલd³ .ÅN€‘d=Ås³ ³ÈÒß°³Çí± àÉdqàÈ:±þÉd.Ä¿hbW[ooÊ`¦Öggº`,Óg¯³ Y”AÑHÁI×W± IÕ7³#2K“nÑI°v×W±IvÕd³ ”ØI° ”×*W± vÔf¯³¶´ÈÒ@”ÀY”ÈÑ�ÑÐØß°ß×È�ÒÐ×ÁÐÕ7³ <è/Ã"áI°*éo œ˜´1âd *çW±NWéo HçÁ *åzd³„éor…èHTàÐÕs³„èDà¢èèß±„çW±Þéo¢çÁ *à·‘�’9²˜°À÷I±ùW²˜°ðobX]b\ZtXDP§Ž @úG`QûW*DPQúpLñwü}PqQða DòYXa^òi�ürñ�øW\ªóéÅürñQðVýôs" u?€=€óå €ßɺ¬€’ý„€i^PÿB4(ý !€ôåÖÿǹ«žÿ�€qbÿTH9*ÿ ýîŸßÐÁM�]€3ÿ)ÿôåÖËÿÀ±¢“ÿ„ukaÿRC4'ÿ þðÿàÎÁ´ÿ§›�ƒÿugZLÿ@4(ÿ÷ëÿÞÐÁ´ÿ§šŒ¿reX¿€=ÿ- ýÿíÞѺÿ¬ •‰ÿ|m^Oÿ@1"OYZ\°®ð„Pÿ|ZVWY YÓ‹/ÂWÞÕ VVX_ ZÝ.WG�KV @-KP|ôj R@ bzu`o? –z!�”Qðy[DPHPPzïWW[g@íÿpxmrp\ÿ\urd[\î'ÐEJQxVsßYoÀý‚xV¥ZÅ qSÑVe�Å(Û‡ðêYãú@lúH`0ÿAwgBRÝHSwbrU�¶9#a]rÑAG%j3 R%°_'xR -!f miR%ßYVj R%XZÈIÀ”&u R „PwaÌBPƒ Bz$ŸÀv•R$`*a/`ÿPwrM!R Û#jä$:g!ð&oR$�"Iä$�!ä$œ!!5’u y$¶# R$Å"¾y#vhY[ È`œï‚Z2mb0ÿPvd\`Èr3ïZ`|5X`ñ|0KPŽ0V` J”5Wx0 ¡6�0|0í X0b^¶0pZ°‘ QðtPÁ0VVÆ`é QðW1b4iÝIþBvaX[0 ®™vaWô1 HSv7`{ê D0ê|„P AV[\�S'BXZ0H ‘�PC�v-@1PB<@X@$AY\ˆ@60!Di@+A‘ 0DxA;@ €H � ä€HQP �P…vYXóX@°AX[ÈbDë°lAcPÆDVZG^0DÙA;@áHød‘�Ps1XXh ’¹DVXD!�¸D)W�bDWËC¹`.TfÜAÆ,V:A1K’$@RU�IX �!DAQB©@* .RÅ TQÃ,T„Å ©@ ê#RÕ bDV‹][lA :TµP:A‰Â¯VIA !DÄQ©@ ÛU”ÝAêX;@…TñQHU‘êX �h©@* vyu`ªP‰\a/t^Vb;@ Qðk`ìGa¶` Ocsm\¾¢X J`cYµ^‘ meXZ‘ üm`Ý`sdXZ[£/+"‘aU�˜hVÓ˜`ÿ�bucýÒsJ`haÃeW]¶haãÙ"s]ø€qÓjç` �·ð‚Rfc �Ža\haü€â‘Z‘ü€ñ�Ywa¿u "#va{ /uba`huðȹBCpÃð#svb NîcXubJ°/tXEr�KtXb×ðÄc„ba³dptr^ø€ !eZ’Ÿria§vWwb§pÔgrhbŸûcW’sÖîcWVø€ �»`ôóWÇ÷ð@ú>ñâÕÿÈ»®¡ÿ”v[@ÿ% ïØÿÁª“|ÿeK4ûþSÀ¡‚ÿcD&ÿêÌ®�ÿv\B"¿åÆ¥ŒÿqV; ÿïâ×Éÿ»­Ÿ•ûƒÕbR@».á úË€×ïÆ¹ïŸ’¿…wjÝ€Nþÿ!õïçÙûpe ÿrfuVZu¿fgm4Wqr{fsÕ0V Ëì1èË€q�¡À*rfoÿXoavföܼ1ç�VYë°`óg®Aç�ìüÜç€rY[lbç»Ì”bü�É�oYYióGã„5�[`º�1”ºK•XwX-“duxë°÷‘Ard\^?WZ¢t•Ï`€–1aŒ—apŒ—êð� ÷rbæpiZlß]øµ˜]lçù—pÈ—Vu9Ä�Ø™lÕ�¶–ßXlXÄ™XX·lç™XXã� ¬lÕ��¹“m@]?ªlÄ™Wõ�¹ç™Å lÕ�Þ·�_¡c1r`ök“ UÇ‚`_[ ¨�QÝ2Ÿ W£¡¨¥Vò£¡Qð�`Z]iQðl}M1¤ÀùÓ ® orXÿviffw¯Gõ õ ªõ õ õ õ 4઴V'ÐF½´!Z&Ò(½8³#±C½³EY&Ñ^½n³#±y°m}½X&Ðs !”½¤³#°­² ³½³\C଱Y y°à§V³^«²çPy°ªâ¤[hgì¤y°y°¥ y°É´]#±$/ͶIÍT¶ñº<Ä$ޱ­²}Í¥º›Íĺ¹Í㲪³*×Íã²É³pÀ@¾ô¶ì£^| ‹|Y©@ ¾Õ¶Ô[¥V'Ö1Ý#ÐZE×”PÝ#ÐYE×oÝ#ÐXE['ÖŽÝžÑE×­Ý–#ÐW\'Ö ÌÝÜÑXB'Ö ¾Æ>Ã>± í‚Bà ¾fƳ¹ ÂÕD"í\>±!í\B#±ií\Ä€í<³—íZW³®íY¹¾$|¶ŒËÜí¨·÷íÇ·‘RàßëëÆ-ý×pRàôµÞ·IãY 'ÁÌÜ€„óW_»Ž÷V ŽöV7_ ŽõV_|�i¦¼ðYé ^( Ö^V û ôs} ëA€?€ð߿ο±€“û„€hXIÿ:+ÿÿïÛÌÿ½®Ÿ�ÿ�rdUþHÀ8-"ÿ ÿðáÿÒÆº­ÿ¤—Šx¿k^QA€7ÿ) ÿÿòäÖÈ¿º¬žM€ƒþO€hZL>ÿ1#ÿúíàÒÿĶ©›ÿŽ�tfÿXJ<.þg€ùìïßÒ@¸«ÿž‘„wÿhYK<û-…€ ýíþÎðг£û”™€vgXÿI:+�°°N i@É€sÿ`\[Vs“üPaY]`s¾YlsXª"6V2V­\2’UZ#ªcY#cX#üc�s`ZWYWss` PZVZ2ù c Y]hsU ¯X¸ cX• �XkÚ™VêWW2êV"-cW]¸&š�¯WX_3&X:!&WW`60cþM�s_]gså‘e%f`q%Vhv£~'~q$^“!q$# v ¥'¬¥&ºm q$[_^–pØýÎ$Ya×|þ Ñ ^mÐs’ÿs[V[dMÇ‚sZ_Æq 3†!± 8ç 5]W¹ô)6“!77g}ò 5\$"q$ZZg~«a5Y¹a5X:j0 5XWiQa5V21�4V†!£8ˆo£7O0£0g!·v»Í7s Í4XRÔ!æ X2 £4ˆû0È!F[Çç6â Dô621 F$2E^v1EGFXA1ç5­!cGTE]A}FWj0I}F“!™Gj0EëZ_Ÿ1�DXVh·~ÃEWYm  Ã@ê2“"ÃE¹2ÃD"! ¯ úH¬úGj0 ßDWE\û ÿ 'R21 ßDçV]d×>WpP>VmqXW3Ã@XWWp>U[nPÃ@ñ�s’oZXYï^ <ç"oY[ï^ô6armuóox¡0ã‚ipYVŸZVxÃ@ÂTYªÊPÎWXÊPßCgÿpgwacÊ‘g—ð KrþP^% d ÀeZ\`ǃÍwë‚õna*`m~G|__û 8d^ðÜõ29cHCg^^{Bh^\niÜèÐniZ niV%Bh[òÀ_h[߀B`}7dWV\ WÄ`‘ B`‘ÏcVÿ Cfv3dW°RfdZ°Cek^V÷` Bf\Yí°­BfZVp'yW\ °ÝeWX[÷` ûdŸv~|Z\A°Vt`fh`BdjqYW’°bdwYw°ÝcjqW[Á�òcxW÷ ru\YhWò൑ipYXsY³`Wï°¼uXVÆr èŽv| ·pQ`r] ôólôïðBý@òä×ÿʽ° }’ufWÿ;- ÿðÓíÿš‰xgÿVE2ÿãÁž{o`Rgÿóÿå×ɳÿœˆznÿbVI<ý0‘ùéÿÛÍ¿±ÿ£–‰€ÿiQ:"ÿþîâÖÿËÀ±¢ÿ–Š€kÿXD0ÿ öäÕÿɾ®Ÿÿ��q`ýUù=/ÿ ÿô†ÿ{sXZ¯‡“Ps¶ÀßMo´‘sWÿ^Zam`bl§+¼qÿ�X“z � þ€[Yam< »Dè sWZÄ`{ò ,“W[6�ºä€W–  ï ü‚Zÿ}fmmr{ó ÷@¡R‘{ijwçf^�‘Zuïfd ^–huf¯fp ^� Q’aŸmxf ^–“ „^�E‘YèÐ-‘ó@s hÐñ»‘gsöPóÚé�Ç’b~dj¯`mÑ�Æ“`ûubÝ’ÛþÆ“[VV[Vßz`ÙÒ–Z®È°`  Æ“Wwo` zàz§¯VYVÝ’ã—V |    ù”O¢Ý’uÑ�º‘t+“?W\` {x¥³ ùdßñ7PWYvvXgý�“– b`t ˜ž E‘¤ñD’±ð|M�-‘V[{ ¶”ŸVX{ a‘V_V X[X¤Pœ °.ߢ M� M‘M�U M�M�M�M�ýþ€YX z ¿vzai/�§À³v± ¯ijWW`³XE[º'µF°2¸ >°Øï€©pö€DPVVß^_xµ]qƒ°�æPWppCœ,À”´` “±WW_^V˜`So’VÕ Ïd` ¬µŠ`ÙÛ£À°V%‘ÿr}vw¿fua`wî°}ÿbi`uhfuç ó"x`X]²‚ñÂé`Àé x`×VÅV ÀTŽ*ÆV6À Âè`-SÂzmÁ+‘TÀÏW\[À wu²-b3`üPvx$ܱM�ð #àrv_jY[zP¡lä l»�ÁåW“ÀY—Á кrvd f¾¶Ævw ¶ÅWÅ[ÀÀ¶ÀØÂ[ws àÆÞ°fÒÆjêÁ ¶ÀyÀbjX�ÿvbrsfb`v/`mó"v]Vè€ûƒo‘ruw`bßv}±·Âum;]¤ðEÐ[][Z´R÷ujr›°‹þ5Ðh`pjvfuýsÐjfvY`[WXlu` ç®jÝzÔX[\ª„Ó‹Ð�ךØo�a…Ò}°ÝzÔWêÈÔÐÐÔØdfzûfmÐu'þå�ruXZvshÿfVWxl½”÷€áXæà¾puÛXVã2äW^*;ä Cå\;ä Cåä³ Cå'ä äWä:äà à£ÀswrÿfmfbwurpÝjaP›’wj/vwujä0uç²¶àÿuWVphîìà[|Ñá !ˆÁíÑäçaÝà³âª0V?VY¾üè› < ð wWVW40¬²ßrsj^Vs  "m*óYXÄ`ÓÀRÿsjWX\Zd»ÒEøb Sù`ç!7ô£ðbàSðtõ�Sð“a^\ÿ\w[[#Öf"a]¶°1Ta\ú¦`Ù$a\X[A·÷@ÀÙ #"(ôò^ .®ôsqúõpC€Aþ€ôçÕÃÿ±Ÿ�{ÿo`SGþ!€/# ÿôèÜÿ릑ÿ|jYH¿6%ì îÿÝÌ»­¿ŸŠuM€Kÿ6! ÷ÿâÔÆ±ÿ¡‘ˆpÿ^G5)ÿûîþ›Å¸«ž¿�…|­ZûN“€'ïñàÃijÿ¡�|jÿ]P?.þÝ ûëÛÿË»«›û‹á€fZNïA5ý ïú,‘\V[oXñ7’\V²Àk”’QsdÀ ºúPl Àä€[l[�ao¡O[f À-�[ù£óy°#“*“[äÕ Ó�$ú]þø‘[ Ywo`{XX _Û_’ÿ[h\Xm^Xo CjZWs­xX]sˆY*sxW’¨‚­xV\sÈZòsxý€[_Voiosf|ð�êu\ñ ùfihõ• ùYñ '# Üùy°Zvf2ðÉ?$Ùà ÀÔ�Zb{W\¡sbÿ¸æ�] ¤ÐW[e LÿZ#W\E°e |$É^¡¢  ý€Z^òO¥  �Z^v"Í�Ñ�´#Ì‘Ñ�£"¢Ú•Ñ“· í•Í&Z¥¢  l!^&§„6;¦Ñ�  2d¥Ñ�-�ZÊ¡ ÿ>2× u ÿ?1s`à¿urmmv_�4î�§ñD‘YkÌ Þ�Yh`:°õþžñsY^^Vvw�5g˜5v}à¥7g˜0z€1\Ò`Y˜²"7Y\v"ðÍ0Ž1…\È1Û7©pÍ0a�YœQ¡°D ’û1j-hAE¨Qs¬Àé`½QX"Y\Y³‘'³(B2¸ >°%Ej’.B'°°YP¡1¹Îm³Yö€a�XugV^ú±áƒCÛÁ÷Uø‘Xu VÿWY b ow oh ™Ÿ²Xu‡@'sŽ@¶D[oPžDÿf VX\ X ‹gv¯@³@ÒD¨CzV¯@‰åIWÝC äJ/ gs¯@äHã  vo ùG V]UäGÔ`0T3€T:VVMXX/Uù@6¶Abg†1÷7ñ‘Rî°3ü�X^gD�н‘ ÿ«V×a ¹ZÀ |#®P¤ÐÔp÷àÛZR×ai#áTÖQ¹V†–°]´ðÛVa×a¨g"ðÄ`5i‹ ˆ#gP`ÖQÿ¡A`V_Wa|w×a¬°TlkÀ~la×a“múÖQ¶“X]^W©"@ÀaZ²‘I<2XåX´ ó³P^Àáf› áf´ðóä�W_ï :¿bW\YÓ ádH‘ uY\{ uXZ .>½�xmÂ�¢½�?ijvMpÀaVr`"CXZcù hkwWZ]êzvurtzvgd`Jú \ wtr žw›bbtr(w²ç€|çvì€ÀaZv;ì�*"ôóÀ¯ DBèÿÜÐĹÿ«˜Š|ÿi[M?û1#ýÿçÕ¯ÿ–ˆtcÿSE7(ÿ þðÿÚÍ¿°ÿ¤•…xÿgXI;ÿ0# ¿ûíágÄÿµ¦˜Šÿ}reVÿD2 ÿþíÛÉÿ·¤’€ÿm[P<ÿ*óÿßÌ»­ÿ¢˜‹~ÿoaVIÿ3& ÿÿðâÔÿɺ¬�ÿ‘†udÿSB1ÿ @è§×£ô€Ô�`VÀmÿ^abpv—”}"“`‘ �P�`šbÀu‘ ™�• ˜Z;‘ —’É Q™;‘ �®�`dèšð �ê`öÀ�ÝÄ‘`b`Bjͳ!`bd µ uŠŒ’`’“™�v‘Å` ýmš“^Vz g• Á–gË� Á��‘\ÿWZ vv 1þ»²`ZZ{sg …·“Zð �ï’# çf ƒ y°`Y[Ñ{Üðú�V0`ob^vÿ`^[^[¬ �¡X] ú”Xw\¤XVZ ù ƒ �‘W^[W Ÿ^ ‰¢ª!ƒ hÁp¢|ðx `¯Wß¹¢`ð-Ä~2_\Ç"Í#  BÖ$Í l   ç ê"Q'3  –!š"  #ˆ  a!ý 3   6 Dñ¦6 Þ# ²ª#   äÏ£07Í _\ïtY!^]bÿ][Vsasp1 �l Nµgg� “TNµÒ°m¹fU±Z¹efg²»Ò°–n¶«Z_‹²¶¸^‹²¨¶°ëN°[Ó³Ú·Z*‹² Ú·X‹² ¶¶Á’h± ÈÓ³ Èõ³ (¶°Ppà±Wi°¶°1æI¶°^][ç^¸ñM°Z^ió¶°´ ^\Xv?àš’^\W€Áù…ÀFÁXb[[`0ÅCÄšÀa ¶°kï^Xa]v p~RÄX_W`¶°~ê^X]ZwÄÞäQi•ÛÅ[`§[èÀÄÂ[ „öÆÊÀ ×%pèÀbÁXx‚ÀjÀzÁW[[i3ð¼èÀFÁVb^^žÀ ä6ÖL èÀݱVbY2ÃöÄ[ÑèÀ´Á~[ÐWaiW6Öæ{ÑèÀÑÁV^^»6Õ^[`2ЬèĤÒeÕ]‰ð ë»U1^î`iÿWWoi~µ¬ÕYÐÐöÃ]ÿmgd ®|OqñÑV\d øÐö´ ]d”PZ4úÒdà�`à áÿ]^rgš<š’*áhr2àkk]XÖ$ Í#]Xç%¥ '3]À16 ¿#]eXÇ"aåÔ¨  ‘ 3{à 6 œæ6 ÈÞ#µâª#  V0]VÿY]Vas WXzdb—õ\ �v~2\dV_ZsˆõãaüâôÇ€öâ[Ù Y€\À2òWöZ�ÀöYÉ0:ø—Pð¸l ðÈ0m[é` töÈ1 iøX VøuWbóiøW ðš\ k<2â0^+óWS ½öØPòó\­pÕöVðî|%ôsdé¯ E€C€ïïÛÍ€ ŒÿwbN:ÿ&þêûÓ £Žxþ;€M5ïñØQ€¨’ÿ{dM@ÿ1 ôïàÓu€¶ªÿš�ƒwÿk_S?ÿ4*ÿûñçÿØËÁ²ÿ¢–ŠþG°iXI>ÿ+òþ¯‚¹¦–‡ÿxiXJÿ* úÿçÚ¾£ÿ‡mQ7ÿéØÿÌÀ´¥ÿsb ` wÿ ^xg l XþÈ�`bªÙ[ã ð Zã ªð Yã ð(ªü ð Xã >XjK ðÚWVã +?WK ð@ obdrf k!ÿbfmjwf¿sury�Bb‘„�Û`q�é–P è÷µQ÷Úa`ÿmoi`pdÿmrwjrpX[Vomƒš’ÿa}u]Z[ñš’= ýÀ[bw±E Pp= W\A ™W&VA e)¥`e Èø0k"Ðñe 0auÿb^VVauR_� 2™%`¢ ¦'¥Z±$¦'J^¡!TÌ+´!¦'X±$¦&‹\ž$7Ã!¡! ü¦ u0am]s~âamY]W] Ðe H!=2X=�e .2oY¾§òamаa5—P60@am¬pÎw6Z60†!dYÏ[Z^ £ðe$dYËZ[›0 e ˆ a[óa0Þ0aZufïdéùÒaZa?m`blÅ0±1çZ a0±1Y `Þ43Ða0z1#qGò}a/pba æ·’@ °2 a4î‹0hΡa oýb«p~jpX÷ 9y2^Z[ó²òaÖÀLFä—PLE\àLE[|ùL@v‘wv p~è`wYxlX!kó€’wnÐ ‹›¢®�@ dzb@Œ’wž´PVjð¡wn‚P -B`w¡‘óv ’@®@rþþ€u`mmfmÿmjplvf/ujfvå0wNrçAÞð@R ’sfÿuurmmüÞ“ ¢‘™�¡Â`\ 7þ�ÿbfXZzWViX[kb e ê=UXFP~JPsbQ\taSe #¡XUÏi]sb3 Q\iW.LPZe ƒYaR� Z¬]/`¿R.XVz^wTÞ]ÖQKe âW»V möÖT˜€VW\z^¢`T:`l`@etKR $:kd PkŽS :` d$…b¼U �mÖT :`=T²e§Q:`ÐAAdyS×m’MPëkbÿmMPJ|VdP'}MPPkaSPf[Racëf[RÔ W¢zzXˆqÒ:`�}dP¤m`voI@ôÙc[RcM•XV9�� �ï„ ôócè¯ FDäÿǬ�v¿]B'0ñ»Ö%Ÿ…+eÿZJ?4ï'5÷ç¿×ƵU€“ÿ‚raPÿ?. ÿüìÛÊÿ¹¨—†»vƒ€TC‰€ÿ úèÕÿñŸ�û{�WE3ÿ"ðÿàп®ÿ�Œ{j¿YH7É€ÿòáÐþ½¬šˆvþå€RA0ï úûp³›Œ€sý€þ¾°ibwXZ[wÏϑۅZw{ç‹VwçŠXWwç€2�Û„¿Ws ¶˜Vgs .�؆W]〭ç‰W]õ€Qš\¦õ€Îdš�uš[O]w‡›õ€‡›’�u� –W_‘½›sû ?šY_w Ô½š*� .™W�Í4¾™;� .™V^„�©ŸV^s$ªõ€ô5ªþà$ªYsò$ªX¨�5ªXs$ª�5ª;�WéÜ�›^\�Ý¿¦L‘¤Í©õ€Í  •[^‘ ½Þî©Ywþ©Zr�þ Ø…Z[Y1 ½ ¼s²@—Ze[:‘Dº»À D¹kY[*� D¹V_õ€¡ ¹Üð–�Œº[ °Äž»† þ ×�³Z\O`w Œº‘ ŒºåX� ºÄðsÈD°ü¹u D° •Y_Z °þ¨Y_�0É’^‘AÊ °þ À¥Yª† í¨X ±þ¨X%[í�„Éâ�•Êq‘$sÉ-±sÉ‘ͨ‘“ÜÚÈ�éÀ •W%_�í¨K’ Ùp‘I Ú� Ù”‘ =Ú’� ͨɑùÉ쑤 Ù-±€Ú†  ÙXã�¢Ú °_ÙÑéÈ0¡IÔÙõ€ ÔÙ†  ÔÙ`õ±éÀÊ'P$p°-1Þà H#âX`ú_0éW\[[VÏdpE $áW\ó ,à×VW uÿ`jmv oÁ5.RXá�eàÙizÿ v {gZ]ÿpgWlz³r@zë[ˆàSs’zçV„ä¨íËZƒåŒàuêXX¢„äŒíîã¢âÃíXµXºåýXïå ¨øà¯P’çW„ä ÞíW"ºåøísó¢â/ýÕ@B„ä}ðä@Ÿý¡ã™ðžA| a ¸âå\çYzdü`>�ý"ôsiïõG€E€îÜÿ˺©˜ý‡€dR@ÿ-óÿàϽ«ÿ™‡udÿSB6*ÿóõæ9€È=€¢‹ÿqVD-ñ×Y€ÿ½¬Ÿ’ÿ„tdUÿG5#ÿõåÖÿÇ´¢�ÿ�o`NÿA4)ÿþïáÿÔǵ¡ß�}k¡€Eÿ3!ûÿèÕ²ÿ¢’†zÿbK4ÿï¹®ý£=Pb{WkaÿXZlba[VX ”>4^Yw gÔ`M7u^u \8XfžÑà}<˜ Î űB0]]b?s g~M7ù¡´9sÎ À¡»2BѰÒ:™ð´8¬°Gà°õ6ÀGà>4]Vh0[sI®0[GàþÑ!fmjwf\.0ß!d[WÚ‘ Gà~À¡dYYWXb<�ÊQHW]@ 4DóÀVoÏ ¨âXàmû ÿ€Cavw\û<“afi]å0;0�Bb[[fµ#±@`·@uáÿa^rbYWaiÿYW\s VÜÂPQDa^]× V÷_4"a^Vb…\P WI1GàRõA[ \û@\{Ø@øGàß R[X RÔ`DõA Y_c±Gà«á8RÐA€ûAQÛPGàÇCLXØBöXYWÓB{s\ùGàűaZs`ÿd]W5‘SY˜RY1@¢P^ß!aX[žP µU�W>ð[ ¢P�BVÕ]5òÂ#aª°tî@ß!`xA`!àœðS0`!àj_¿X\ } cW÷^ eV^ T` •xR¡ ùÈwü1Ù½™ A·@˜\^.°éÀ؆½3tk€ÁtjR±˜k @iZ— ).�ŵw…³ éÀÐh«±àl±éÀ5!ÔdϲÉàk‘ti*ÂÛ$.yù¡?{¬°?p –ª�ѽ™Y— .™Y’ tzR°.š•�F½™X]S°?™~ÂçŠz�Áç€BôóuHýFʸ¦ÿ”‚p^ßL:(÷ÿèÓ¾©ÿ”†|mÿ^O>0ÿ!÷ÿéÛÍ¿ý¯û Œ|lÿYJ@1ý$Y÷èÿÜÑ´ÿ¦˜Š~ÿrfZNÿB6*ÿüñÿæÛÐÅÿ·«œ�ÿ‚vgYÿJ;,ÿÿéÓÿ½§‘{ÿeOB5ÿ)ÿ÷ßǯÿ ‘„wÿeWJ=ÿ/"'VY�· jÐùP»·¶!jWYøP •’”Xþ€ �Ñ jWW[`f ”¶Î± ”VZþ€ ,�‘VY%‘ �f�ÿjYX j vzab�· Ð0±0g’A"õÞ!iûagpV Ê€•Z‰� ��RiX÷_mfÀW[V—YbÒ°œR¢�f|¦“¬ Ybg ´•s^v•�©•g ´�Æ· hvl’Œ@0hußWàæ’oZ¿]h÷þ”V_h óihã û ¥W\p\ %¤h  &£o_]`ä ^Gðã!>¤t H ZW[¢N  R¦¬ H Yb¢ ¶R¦WZs¢Y]N  ÎR¥V^^s¢† zé ”§ˆ¢W¨�zX”¦* ¶¡YYN À¬—VV\N R ß hÿ`XV]s` T´�ï¤\÷ û§[î0iû§í1û§Ylž0Jû§X3°´�Ñ hã "^`û¥3°´�jg|r¡ 2gu^[\䓸u±Á@û£gsmo ÇYXe²�°d˜°Ñ gY 0A¾g°m^M³´]wL³´\ȵp1@ȵÁ@½µYȵ‡XȵÁPȰr±b¿`W;hg´ó  Pe²][5Gœb)ÀV /Å(à Ùc0ÄÀ 2$Ã\_ïVútg[X¯]0ÃZ(à ûÔ¦²ZVdX[ï h¦²X[ î c‡ÆX P“È “ÀŒ±X~à …Àjµ±Xp¢ÃW^1@øwÀŒ±Œ {ijù ¶RÛÁufd}¡åÆruhäÇŸamläÀr±WŸWibÉÀØÂW¿Y`fkÀnÍÁ ŠåÃV^'ÒûÃgVVYY÷ W[åðøüÆÑLÑV sbÉùZØUÐiÐIÓWWŽQÔï[ÔYàUЭ  fw=@W0ýý”Âfw][][o®ÓX[�ÀýºÕW[W[~ÈÖWYZ×Ö²�À äÖ§�ºÕVŸ[V[ºÐß f_pmjhiµp�†ÂÿfpVW^]»ˆí!fpà^ßZV éCBfii`­°™�j¶RfgDã• Kä`Dã Kà0Ðf˜7ÐÑ dv¹ ¿·wàoZ�^ÿm`WXvr”Î „æ]Žä–ç mTó ’à«éZ¸äÜ#ddYî80 0Øã§�ø¾ 0²daYZÿ__[V_²°Øá`Ýã 0 ëàûVY¨ñoE.õW[zA'ù!ò©'ô§Ð[ ó K÷VZ ó KöV\ ó o÷ªUô o÷Z óo÷Y2ó¥ùEòo÷½P4ñé ÉùEò'ð´ý ôshõ õI€G€òäÿÖȺ¬÷ž�€tfÿXJ<. ö%€÷ÚÌ)€°£ÿ–‰}qÿbSD5ÿ&ù}êG€Ì½®O€ÿ’…yfõV[€,a€íÿÙİ›ÿ†t`Kÿ9&ÿÿêÖ®ÿš†t`L8$³€ÿìØÄ°÷œˆòàaNÿ:&ûÿæÓ¿ªÿ–�oZÿE0 ÿõøéÝÏÀ±¢„à¿jbW\b\¬ VËZ ðŸ]2è kŸ{  4!èÇZ vË ÷åWåV  r¨2ñ’à ÷ W.WXA÷ zž0nUƒñQ°x÷Øè[^`Ë+/÷? Æ²UÓºž [¯]|wj“ *iÅvB  Ã3!sY ú[]  ^Ö]|wB*Xm!Æpu+ub“ u+Kms“ u+â)U\n#;)\—"Ù**H"N)\Å*‚#I;«";â)­[n#�O([ Ha0P7‚#s;—"s;’«" s;H" s;â ¤a0ÖZ !’às9Z¤— ’àa0ÃZ«"dJH"´�Q&Z`´�Ú7õ¼á´�ï7õˆÆp&J×:m "!ÐsM6"ì:‚#ˆKub‚"!�Kæ#ˆK« ’à€J*´�PèdÐa¿ djmv6ðeŒrYPëPvÿl o`px`m/ [Ñjx�!°úêPØábjbbrwrla]P9 bËjaÀ#Àø�_WZ\ ¹“yPÐPHP¸PxQW&‘ŒWVN‘JŒVY–Q ªW¥QŒV«X_&�ÈW^&�ªÈW]&�ÈW\&�TÈW%‘ÈWZ&�ÈWUY&�ÈWX&�ÈW&–Q¸ÉV¥QO`iQ¿^^^À_e]ój`ø�^VY`§¦weààƒfVï^ tâjZ\"aO` c,a«f;aÉ«f–Q «e1@fI Õf,a Õf;a Õf”´R«eZa v,a¤ v;a v–Q«eY’aEv,aEv;aTEv–Q«dYr}v*,a”Y1r™v–Q ™uMrµv´bµvÂbxµvÐb�dôócóJ}HêÕ¿ÿ—�lVßA+ ëÿÖÁ¬šÿ†s`Mÿ;'ýÿèÒ¿­ÿ˜ƒr_ÿL;&ÿýêÕÀÿ«–€lXC/!…ÿöåÙýÊ™‚Ÿ”‡]w¥€W<­€±€ÿþïàÐÿÁ²¤–ÿ‹€thÿYJ>/ÿ ùÿêÛͲÿ—|aK÷6ï€óEÿ:)ýðõð�Âu?ýZåm`vw¿lf}YoêðŒqQ戓° õ�žPÐ\ �ãŠXâñ€ �ëæ‡W ^× �ä�jpÿs`sfuuÿrmm]V{g &P�`‘[^] 2&ÿ ûíÜÿ;¯¥þA€‰weSÿA/ÿ÷èÙÿÊ»¬�ÿŽp_¿RE:e€$ïððñâïÓÄu€¨›¿Ž�t�€ZÿM@3&ÿ üíþ‘€Óƹ¬ÿ�Žr¿eXK©€1¿"³€ìÿÝÎÁ´ÿ¥˜‹~ÿqdUHû;c°]ÝVäð[Vp ogï\Lu²oduŸ~Р¢}ßfmÑ }¹|{ïiw5{î5z5xî5w5v¾ufd5uwÏ t®¾sxus�mv 5#@»r�up5%Юpû»ojp Ž5o®@P®l» ®k ®j» ®i »hïu}huvƒ{) 5À®gã®ãP®d®®b»añ >aml ½�Æï# 5Q°®`Ý®_®^=®]Î ñ°îG7[G7ZîG7YG7X NG7W G0V)0Ý G7V •5YV ª  Á*À3 ý À6V W[ .À5W[ ç  À0û"jž2 G0G0–iPo`3 rP_ß] ÂC[� EY@_ Vf`sR8Aê0?@þÕ°o^_W^ Vò°?@]\X^mi«à£ _C[ZgAM lG[g‚ÐlGYh@© lFfB™GZ†@®lEXX\†@·GZhþ�ÆH†@l@ÊpïXu@CXYV2.`î€õCþ@�ÐÿoWWWZ[Z­V�ð• XWP JWXS.Z)Q VKV_SRZ)QP^WVWXÑ@äDÛWâ� ˜ü3W» A ¢mz`Àa7žžU[\0«XÏV`«PÕ°mx}vuÀ^]pl@þ½‘vW[Yp¼lCàR`pÚVVO[p0ÀúTVòü0À¡o^\ ÀšÿBmr@ `À mmo3àX[aPb-c±[4`Q;eZYEb†;eYX�@;`¡jåaZ@—™²q`Wlw`½‘fW àx †bV^­0x é‘‚2ƒ¡3B¥au ¬`¡dz„0¹fW ¾¢÷mbbé€^ZI<.ÿñßáÒ〤ÿŽzl_ÿQC1!ßÿî¿€Ðÿ¿®›Šÿ}hS>ÿ1 MOŸZ[W P aW›YXAR aVÉ_PÎ`Ï3BÝŽ­rvV\×0\`ÿos \Y‡Y--p †AYMùU!VW[f×½NAvoÍbx@‰Uq}oÿsajbÕy0À‚ ˆž€‘ ¬F`‚ˆ!‹Wrá@UÊRÔ€üˆ(‘xgXufÏdRBròamŸ`blüïW*öüW$ü/¡½v_Pd J1#rwrÍ` 83B�àH@Û„burq`jñw`šÐ^àjwfvÿwsvj8³àk(áv { (‘/rg\)Q þ@ì�ÿrX\u^ ῬR§"Ž¡°)l‘À’$¸!1�Î*ü Á¾±&Zu] °'ZB»�ý)"�Î'œÂ:|:°î'YuY °'"‘Î >5P�J8_‘Î'm’w:x°Y7�’°'’«‘—8ù�¦8  tÎ'¢Ó:lY7Wu[° A"û1°'a¡Î E€�$ó8Ì HÛ  Î'é¢�KJ€ ó81‘HA� KHf±° ŒG Î O"ŸhaÛ•Pußo–N"jVßX[Klbugµ_ÜðkÿBugU ¤ÙEg`Ù@O!gèñ|Ù@ÌPub W]Ñppœ`À@ÐAÙðÏÿCï` XZ_V¼À@¹A] 3XÂux`6Pì�YVXséðçó9ÁFP]]N"Y YqÐ/­òbF0 6PÐAFaô8Â&wP}PtR =ÐgPO!XE`gT��6PÞRQWY «UXý@TWVzZ]Zg¼ÁC}P¬(‘ãam€ hSW7‰lâuV© S  Y4þPxÁ DþPD íî$VWD0_UÂ$fXù 2gW¬ Ý Ai[ AiX­ 2f^Ž�’—^T±1ø‡^ù�—^ %—^¡5—´`Ü dE—«! ’—a øËg’Ž —É!%—Ø"T5—è" E—[

§XX k©W«M§WcÐ>§WâpÐ ˜©Õ�˜©Yò˜©X_À™¨W»ÊN¥i9¡>¦û Zò©Yò©k`ò©hÚPò§u¡·XX, ¸=¹³P=¹X =¹W“ò§¢¡·±¡rˆ¹Z!à‰¸Y ˆ¹¨Pˆ¹Wò '¢ž ¼T� àwV^w0à i×íÂó°v™ò$ –@‘V^  $¤VÐ :û°�{ip ,Ñ^þÐ|—A|_YX|^d0àÛþïv|u`o^8tðÛWÂW\oXÐý–VÀZ^IÃÛ!xqX£¡ †ÄY£–‰ÁWWI°vAR£ÃXÓ�È¢°�Äw[¿Zf÷ŸÂu�Y\z#p×À!uÝÉ@•}!vr3WV8@öÌQù U àvrXfxö @ rWxl-ЯðvnÀÀ@öÁÜdà\àjpw<àX[<ívh¥Àf°»ž­ÃdY[ÿÀwydYW:`¿Vk£ {×W�[kŠÖHa—ÐlŠÐÆÐvbéð ­Ãýbö ba 檺ÕXÃÐÇ×WÃÐ ´ÇÐSÁbT•¢"voagV^¢°öÖÍ]¢°öÖ› œçsÐ üØÃüÐZ”é±1çYé° 1àSÁ`Ò$TõÐ!_Vñ/}®Ò^_z lå?^z+y]î; ø!Ò[{ofst~R›àì ¶·òv[žás¤äaü90¯ãZ\W` 9¡.Óÿ€` Óàý­Zâlh¨P?¤ãYov3PRvYÔÀ]Ó>’vYd¶� ðîõâdõXWf¯�ôãW>P~ ódb?Y`bEðýÝX²ÐXlaH �áãYð„@_ñ dð¦áXWfôXñ ðn‹XY‰ ^Vë�‹éhRvv°»à!{_jp}ÚBvP¼,°àòvWXWhà\là!XVzePÆó·VVhBðCïphýôsnöõO€M€ôèÿÜÐĹõ­€•€}nbVJ9%€ÿõäÿÓ± ÿ�~m\ÿQF;,÷O€ýòÿçÜÑÆÿ»°¥šÿ�„yn÷cXg€B7ÿ,! þ†PãÖǸ©�‘�€ÿufWHÿ=/!ÿîÕ¶œÿƒjU?ÿ(úáÿʳšƒlU>'Õ€ÿ÷àɲÿ™‚kR÷;$óö~'Àxpbi[gàÿurxpds#&Áé ^ò[!ûZ[ðúÕZïúçY]ÕúY"JYZðoBXL‘oÍðòo®Y ZXU_ð†XKoEX )’ò )R« )ï oWðU †WKp)\ðIp){‡)’p)Ò«p)ïp) XâöÀv#vtx`uf@¨�25€$Š&W:jØt8W\U [6Wè+ W:WÙ Â<"6•‰:W—8 ð°xÿos_m�îbxmvA@—ð¬R"@9ÀARxXZ[KuYWÐÙ6G�PDG%m@@SH�P D@@�7xW_¦`–rRwA‡EzPŠ@8AW\ZljwDD©W}p¡@¥E[®BÉØrD“¡ D@W�xÿZa`ZW^÷€’w W÷ ôÚ’vZ™(îCL`Ø%£=`Üû°ûB\Tsb÷Œã³s^îU]U\îU[ To_q PUQ�PU]PU÷\Tm^8|U�p|U\T`Ý�U]�U\ETiP¾U PÖ¿TÜPÔU[ÔTg^ãêU>`êU\ ¼ÔPð±gWZ`*ðF| £ýÐ`f`ÞÛ‘f_ ÔTf^; 3e] ÔPW‘¿f[sVWdÏࣅKd°�Ua ZgVºeb ZfVW[UaJ|gV‡b�hTbZe}Xœ�hZ`¯j"Ïà¯fæñ¼`ÑjÏá–¯fVYºbójÏà –ógW[»azÏà Z`‘ddQ�ÔP:snPðCvyPÔP ¡dW]VÏ\`yБbb÷_Ctbb^Ívv]ƒlt\�vv[ÔTŠplvurðõ“aaPfCtaa P ”aaPxÕvçP �ˆôóXÐPÝNéÒ‡°¤ÿ�v^Nÿ6%ÿòáÐÃÿ­Ÿ‘ƒÿugN3ÿþäÊÿ¯”z`}GuõÙy€ÿ¦ŒqVÿ; øêÜÅ®)@ý€«K.ÿí×Á߬—‚ÁWÿA+ÿÿêÕÀªÿœŽ€jÿXJ<+÷ ÐõêýÝûpÓÅ·»©@�|VVÐýírB{]]\[ v)b{[pŸþâã{[—pâ€�{WY�^í�â€ð°{¢ ;`×€ð�§`ýU’zw`plfí}rð –âzuYî£Ð5 bzuWî2‘4sÁzoYï[V[„Ðõ¶ Òzoª WÞÐ\®O�%*“jsaû?*“dXY[XsE�~’WY[, |E�Z‘bw`s0Àÿ_YY}hØì<Â�š­�YY{;Â�YYuPX“žž˜h}ì�ü�uû­YYau9­( m×�( ·×/¬XV©�`Y °ši ù°p­V{8P¦…­Vu"ÀZ­Vþ�¤®­¾ uCPÅ­V* $Ú­ê mNPš­VÄÐð ý›’viffwoZ[|æðV|•`O H¥1!¶Y-¶?sl[ 8°š“Ourd¬!R±8°'À]´"slаm»e! ±mºW{³šÀ›»’³g[8°,‘`Y’‘•‰”`ƒ’×µ‘’ üE�Œ0z_Yhu·roo'°sl1Áß™�^Yå]ü½ð Á]YoºÍ Ä]Y`2Í –(ÅWVMÍ Àö±\eZhÍð Bz\‚ÍkÖzÃ[û½ Àí°ÁW\LÍššÇÅV1ÍâÀÁ[aVÐÍ�PÿÅÍâÀª–Á[#ݬÄZ;ÝÅyÄZ�ͦPÃY]�ݱP‚ÔÏÍVÇPzÃY@šÍ¼P¸ÔUÝÒPzÃXoÝŒÝPÃXY´ÍzPåW*í“ÄX*í¬À,‘WVs_)”à[áýPbèMPbèY °bèê@)�Z‘WVc�bÿ`oZ|vsûEFòzVV`W#)�‘/°WO�[À†½êZ_ˆ@ÏêpÎëZËÎëY”@ÏêWõ)�çvi{ÿjuf`d`s{wrí ¹ çvfw.%ò*ê_—8]•(ú¥]e'zù\*dú\e'ú Ü(Þú¢!ôsv_ Q€O€ÿóæÙÉÿ¼¯œ‰yiYC€ÿ& öÿéÜÏÂÿµ¨›‹ÿ{n[Lÿ=.ÿôåÖÿǸ©œÿ�€qbÿSD5&ÿùêÿÛÉ·¥ÿ��rcÿTG:*ÿ ýðÿãÖɺÿ«œ�~ÿocQ>ÿ-ö÷äÒ}€´©ÿ›�„uÿfZH6o$»pæÐÐ÷ȹ—€›Œÿ}n_PÿC6(ÿ ¬Zÿ^W tW^dhpÿ@Nþf°uý[è�>%¯Wu0 ý[Ûmg?>V`wg[’@`N^P_\çPjÔ°jwYjX jœÍ@j[^5°joVZ[]ÀéaâÉZûÀÓ-@~s{¯aG‘~ÉàV· XoÑïX~örrX)Êà ‚ïÚ` #¡€°%)Êá# �@}sÝ@ Ë97A}a$`ºb} dh,A}ObsS J!b¹àû<B}WZV2£øRŽ – À�×r^Wn@ò¾â|]ÿVVl [VhG ŒG‘´%» ¿)eXº!¿)Úa ¿ éç(» ¿$YWZ;~hÊ!3’6�2÷"3.±3L"170�@×|X^I½6B|Vÿ^XX vïP>a4­àk7Wg0z9Wsk7Vg0 ˜9gs k0À‚^WÍ@Ø® ¹3i� íÄ6YãÀÄ6‡@Ý7WðÝ7ÐÝ0ø!V]^Yÿ W[ \Yãñ=ñ A÷^yïrB @]]ÿp*Dà'@_2]] 7ð·�CD[^g1ñ¦BE[]£1_G\g0è_@°� @Zu0 ][rio– Â!„DbÊà’G„0Š@¤KRÊà– DCZ¢1 _FnÑ@s _FY_g0IæI•0ðçFZAæG¥^v0æGiA "YsSæGxAW\v1ªW[g0æG[v0Ì_@*CYZ@}VYéæGf1 –Ys$æG„1W“1W¢1‰æG±1_@` @Xå_ÞP‘õSsÔþPDCXZA is giA*iíPþPBw\_[D¼¸3e\u– B\]wPŸb½jg@¥î(D\!'E\Ûà ò•g\´0‰eY\Áò°f£p¼g—à'E[__]$C[Qf!'@BVAx`Ùc­^Ç€#ød^i@f3 ˆep ˆ`Z�ü q±0b WXWYÇX # t:qˆöf @@ ˆ`IvÆ€ €ˆ`æcq`DP@yyÆ€4#v…�[e[[�[`ÊBZÛQf¥0(DZXù_x0(DWWXÜPÀ„_Ê€ûìôóq ëRPòäÿÕÆ·¨ÿ™Š{lÿ]N?0ÿ!îþ+Á´¦˜ïŠ|;`QÿB3$ÿ÷èÙÿʽ®Ÿÿ��r`¿N<0pÿ ûîàÿõ§™ÿˆwgWîƒ7'‰÷ÿç×Ç·ÿ§—‡wÿgS@.û­õâοº§”¿tÿdTD4þËôäÿÔÄ´¤ÿ”„tdûTé3#ï‘áiUÿA tdu`oXZVw p|@Þõ„pm šl]šk� –ïhgšhšgšn šu`þ“buaWXVwïl}‚™k8‘šò ‘šg ‘™�Ý Ášk Ášh] Ášg‘“a÷ƒïl {©k îªhªgt©�AªkAªwhAªg ý sW\psZÿl]o`ŒVƒ¨]l� ” ˜§›Vu� ‹¨«¢¡.”©XlX� » Ò§µX¢¡§©XXÉ¢Z”  …¥Wo�  º*¢¡â©WÉ¢§©ï Ÿli`” ó€`ʈ�VŒ‘‘“Z´k�dºhd¹�k„ºhÞd¹ml´ºk]´ºh“`¥Ýäºkäºhäºg£ê³�$Êk$Êà $Êçg  3�Y`bÿwVX\X VeɲpuÀüjÁW'âˆÅÅ`”ÇÌ0u”ÀhÂYV†ð½|ºÂvifGð½�‡ÂX[{l,yþ$ÓÂÏÏÅ:9ÛÇWèÀÞÂUv, ÛÅv9 ÛÀ=ÑÁsz °÷X[mÕÁ{vyÛÀ,Øuw;Û¢ ÛÀ@/Ðw6Ѥ_ØIÐ_Ø}ÙfS_ØÛÅm%ЩbÓg6Ñ_ÖgÒHÑ ÆØ ÕÙf©ÆØ_Õd5ÒIýçIÐ è é'fèàÐÂd6Ñ MçIÑMç[Ñièh pMç MãW^Õ 0ãÁ èÙáÑ¡çgW èÀ °W^1Ö� 0ÌèáÛë+á=^gÓ ÿèIзÓò�ùføDöÀÒLPòIÐÿæ:ÞÒhùfYõ ãIõã •ø ¤ù'f •ø  ñ¤IТ "ôsk«îõpS€Q€ðÿàÐÀ°ÿšŒ~qÿcWH;¿-)€Õï¼£7€qX¿?1#G€ïóßQ€µ ÿ‹wcOÿ;'úïæÒs€¶«ÿ ’„vÿhZL>ÿ0"¿øíâ‘€Âÿ­�’sï\E¥€ÿðàÐÀÿ° �€ÿp`P0ÿ&þÉ€åÖǸÿ©šŠzÿjZJ:ÿ*  {þûð uXŠ�Æ82ð}!ઠ9Ý äuXV†0v®ùa ûûe÷auW_Y_Î*!®yaX_¤!MP)K1'[:827W_VºÀÐPTXK1'WPëý ^W]^_¯Õ‰[‘ª–X‘–W‘––V\‘îªÃV‘–\co8ÐèÀúWZÃÐ>WZa � õX\ZûbrÃÀ~s¾' ms`vÔ@L¾8WYZV_:0 ®7WYYG" M&X*G" M&VG" M%ù€’H! }&V#}&f#T}&v#M%WF#½&Rf#½&v#ëè90èpô!`91 ƒ¨ï'ÿ0ü$ 9]ú&ª9\ú&9[ú&ú0 Z{Xÿ[|\^[ÿwa[lXoß]ùVYè’ðÞhPZW[ßzŽ@t~î1 Xo£0{i¡P@�2å¥6P@ot|oð~Æ3à’ðÏ5M@Ï0‰À|iaß{Y] å7XZ« å6mï0 GWw[HXå5%`î1+Gý0+G@I+F AUGý0UGr@‘�tEX‘�ÞÇ1ha Ï4h`ó Ï0ÞÀzul�mü—¨A  uïú©¡v]ZÿgbwY]Z`wßtüÁLsk ûÔJYÎAç@¹ÓKõ@s çIXZ S ZZ[ÎA(]’ã@ <[ÍBP]ã@ø›2T4Tç@{\'`dx\ÍB�\áB÷ÔHWWY_âAÌ[]ÎAù ç@‰ÀvYY^Z_s¤ öUYE` e4PuPgþP`ïtti  WVÿWVZ`ZVß K.gVY_YVY?b EfÿX^V]]¾V`X^ ^gZ>PfXZ ^gOg•XA` EfWh`RdWês`©g\´g\y©g�`XXºaòŒ`E`„ ss`WÿlX{w VX9 �£úgW � ‰À{sfà [ i�qtmb«A¿@bÐ.pÒ¹B¿@ Ði8°K‘ˆÁiì0@£Cô@ý0å3gaX{¿ij§msWêtqypô€xW[~~WVYÅ /—wÿЙº��­zk ­zh» ­zg 0�ûöóôoýëTRóäÿÕű¢ÿ’~p]ÿN>.ÿúæÖÿƶ¦–ÿ‡yk[ÿK;+ÿíÞÏÿÀ±¢’ÿ‚vjZÿJ:*ÿ ûìÝÿο°¡þeƒteVûJq2&ÿöäÒÿÀ®œŠÿxiZKÿ<* ¿úêÕ�«ÿ–�lWÿB2"ÿòâÒÿ²¢”ÿ„tdWïH9Ñ ¿ýŽ�Ó€gjŠZäÙ!c‰GZVVh`ê ù†Yô�ýù†XgVY—Z’4š0)“  çzš0óZWßYb)b‘uYÓ\]2é!ˆ(Y\­Yó"a•Xj“úa� U�[[ {\w 1‹2YX^ÿ€by!ö8•�Z“ò ”¥]˜“¯–Z“¯•\˜‘[Ï–Z”¯•˜’@n�¯•ºÀ|’¯•y”¦Îø“ñœ0”�bÿW_[gupmÖØ`“1§X<¤ ­1¦^]<¤D¨^UZ<¤Y¨]e¥ƒ©mW<¤ Z§\\<¤-­¨[_<¤D T‘l]Z‘¯”W]G!(4/ Ú¢\ð£÷§'1ë/  U�Vg\»]VÌ ZùƒY¦ñ„b*´“8¶[’ô�8¶’8°²ˆºÀT0Š@:Üájµ 0Yw¹Ø‰º\pE ‰ºXq‰º„± w¹%V–± Ѻ¨± Ѻr±éw°î_ï œí§�îÄóLÄY�+ÅóÀþŠX\\\VgOéEÇ8ðèSÈwdaÉb aÉwaaÉ`aÅäŸNÀRÅ¥Áfî�Éd�Éb î�Éa �É`paÀÞ¤ÀÕ gRÀ¸úǃðÚd÷Êb» ÷Êa ÷Ê`óaÀî[{{û¦ì[vbdcÐÞYY�è÷£7XY\ù" / FÁÚe  —XY¤­ &“• ^¨Ò¬*®Õ\™Ñ­ÖYÆÒ¼ÐXð £ó"VfÙ!0Û݃Vbé!ñÐÞø!2 ÐÔø#j å^ø" T(ç² å]1ã/ 8„�Nà¦À å¯á]â™pfàFÁ_àÕ Hfà â‡Ôåÿ¤“ç²åð�Ù!³ç[“/ ù á/°\VWhuŸf} ÀAØã[ßä  ä/±m‘å¥$åã÷[’‡!ðòñ fåCñ¦/§Kö\ô]ð\>ôe YðYð`ó¸AôÀk÷Æpk÷.ÉYð]ð‚ôQÓžøvñžøé!]ðóBðnù ïp ôsWjí÷pU€S€ñãÈ­€ÿw\A&ÿ ðÕºÿŸ„iNÿ3#ÿõåÕŵ¥•†U€ÿfVF6ÿ&ö÷áÐm€¨˜ÿˆxhXÿH?/ ßó‹€ÕÿÆ·¨šÿ�qdÿWI;.ïÑàâÿÓĵ¦ÿœ‹€uÿgXI;ÿ,ÿÿïßÏ¿ÿ¯Ÿ‘}ÿo[K>ß0  ã€íý`YZ[W UbZ ¨(`ûP^åu êÞ[V6 Ÿbla“q`]…Zå ê„�Åq'@£†ò¼`bàêWû^X_ بÕá¼`�“`ñá['ÄI\ÀµY(À…>"__i`hß[d™‹2_WìG Ûñq�WV\V¡¬Z¶¬`ï°m‘¬Û²¡úÞv[’0�Ò^w~ñÂ1aÀ„�#aÃ!2˜Á 'gðç&Šñ}'Y\` 'ÏY\6 ‚0^[øò°��‚0]o{�b q �1>’š0u\DЊ0í€ÿ\[b[XsXS¥D™!Wž ¢&¿XXsY±)Xó`´%kXÄÏ'¬!`�0™ WVr�!Ï&÷ Yý)ت°`G�\[« b 2`ä@(55P%P5cYXMP5º (5«XX20^6V20¬5÷ (5Vg1nÏ$Y_]æ`w°:˜2]“X¤6h`È(@¤6ž2¤6Ì`XÁ¤6P°Ÿ ¤6åa\¤6�X¤6XŸ1§9ï"ä`Xq ï$� e%S‘[â™p ¯“;CHáEE»ä EEô EE*#ô EEW¼ã¯�ÝÐør°òà…WV`WC^– 9@!/’5�d¯E>’5�T�Z]±>m‘‡ß@ÑBÅ[¬äD6BéA˜‘YŸäF¶ >äDZÕóEZVZÖ)ðÏD7ZVY.Q#�’9RÆ>°U;PÛñ ©àTWPBPí�jSðˆÏDMQDá²äD–в'ÂäDXñà«‘UŒC²X¢ äDᛑUåÓ P ØPî°5ÀôC Ö¾âóD¬QNQPî€Z>A[(`(a(a�S"h'a1fZ;jX.i`�•\kl^‘ ˜\^%’­+˜\^8’>˜\E^K“+�¢˜8’f˜×[l\‘ ˜[\Z%’+˜[\8’>˜‹[\K“³˜  8’®f˜Zl]‘ ˜Zµ]%’+˜Z]8’ˆ>˜ØP%’³˜ØP8’®f˜Yl_‘˜YSlY&’œ©_%’+˜kY_8’>˜Y_K“Q³˜à 8’ ‰©Y%’U©Y8’Õ©YK“Ué©Y_“ f˜X4£H+M¸’^¹G£+˜EXZ£R˜Aà%’ ³˜¤Aà8’ K¹$“„¹X‘da’—¹J” «¹^” š>� ”Wo®’f˜W:r“˜Wl[û’2Ê‚’�ÆÏ£2É…“A!kÉÁ“R˜¨ð%’ ³˜”¨ð8’ É[£}É[T"£�É[K“ ¤É[_“IÉ$“}É7“�ÉJ” ¤É^”Éâ¤}Éö¤�Éê�˜¡¤Éþ�ˆ‘f˜çVuV„¢}Ävxÿsufvvru÷ [‹!ao´+e aÎÐ ¿ýaåac ÝИ@a^wp`wQ)îÔWamlQ ä[ôÛÉæ êàÕÑZZï†-aZW­WÄ�RLña‰ðXÇZ+àÑsðV\gLbãvàÉ5Ð~åWfP~ãñàˆ+ïÑ#@õÓwäH#@ ãU àœâXè`C+cá…gðŒýÞv|GíÁ`oýAXVßfàóâoßh‹!`oŠQàü_øØ\.^V[]ãüñ\&è\e `[Zû ¯ë^W\ bçrêkò_ÜcSiô^ƒú\ƒú[ƒúààƒú8Û ê.Y[^ú Óöï\\ê¬]ôs^Õ÷pW€ýU€íÙÅÿ² �{ÿgS@-ÿòßÿË·¤‘ÿ}iVCÿ8(ù÷íÔM€½®ÿ¢–„i÷WJ[€.ÿýæÎÀÿ²¤–ˆýzq€\N@÷(}€àÕÿ¿©“}gQ;%•€ÿúäθÿ¢Œv`÷J4³ ó}ÝÙ€±›…ÉÿYC-·ëûð¾á€[ï[}W/°VWTÅ�lÑ bÙV°Ñ]ï '`Ó ~`Ó ]ÐØ �°ÑU î ZÐFZæU î WÐFWæî *Àç=ÀUʈxpƒ¸­Ê^¦ÐS *æ´[ªÐ!*[æ´Y*Ð!*Yæ´Ï©!*åî Vû V×Ñ+BpŠ"ö¨²&Ñ*=!)VS¤»*D%(:Z%»*X*Ð (:Xæ»*Ï (:åîÕÐÈÐÐ÷ÆVhuýfŸ2 ar|o¼Ñ3amBàòÛ6 å0˜@b[YÿZXVvproabtÏ3¿{ijwfÛ6ý–óRbZ[[^sï ¥ /CY_Wçp ;@vPbZX¿X]hp IFVßV`p ;EW_ï[p gGZp½gGVpgF[ï\p‘GXp•gFY›@;@Ð1ZªÕ<þ4ZKDZ²L-@è1YJ|ë-@ á€XZo_fX[lSPÜÅ1jà„UábXŸXWW;@ÁX�VoWX&R»€"abwX]M§Â_W\oXY&R²PnôàbWYÝðò…Sâjà�PLAÜà~VWï±Ä2WXûPòâbWW\Ù �Pè1WWL—ž„TV^ �PÐ1WÅV [ qPA’ ZXår F@Å1V]»µPacYõP“æ€q‘Wq –9a˜�Wñ‰Îª’WVl‘&œDh3¡W CiY¡Wƒñ‰l¢{`¤l‘œ~i§¡W Ci±Wƒñ‰.²APòl‘\~ii±WCiX7�Wñ‰ð²§P@|‘~`Ãæ�ofa~i=ÁGWñ€kw‘CiÖÁW ñŠêÁep²|Ò‘zzÿ‚ ñ€ûR ôóTÑëXVêÔÿ¾¨“}þQ;%ÿùãθÿ¢Œv`ÿJ4 ÿóÝDZÿ›…oYÿC-ÿëÕ¿©û“o€gQ;ÿ%ùãÿÍ·¡‹ÿwaK5ÿ  ôÞïȲ¡€‡qÿ[F0ÿïÙÃû­ÙP�kUÿ?)ýûçûpöïèړ¶kªÅX`6 cÙÄ`@jUÕŠ€ÔˆWlK_\ž$Yš(šQ^ü,›õ$ š]Âi X› š\_U¤„›Ø „›õ$š[ÂÆ›�ùוšZü«îTòššYüH«²îòšîX™X’ü‰«‰«(J‰ªWÂË«ØË«Bî ‰ õ—(‰ªVü! "»Ø"»õ$ ‰ š±Ø“­‰©_l” ^yº( Žº\–ꈯ°T¬™_•Ø _«U™^û ޹^ô%© Ê=Ø ^S¤üºw5>Ê�5™]*Á޹]–Ê%•Ø ].%€Êi´ÂÊ™\l’”¢Ž¹\þ–Ûõ$Ú_ŒL5Ø \_b5ÚD% $\ÚZ%Úw5 \Ú�5U™[Á޹[?¦ Ž°ù•ÖàÚ% Ø [*.%î [i !êI7êœ% !êåî Š`—޹Z€¦öZæZ=Ø �`ž$�êp%Iæê†%�êœ%æê*åî YûØ` ž$ööjú=Ø SI Túp%Ø †% îïôôuÐëY€W‚Õ¿û©„R<&?úä!�1€ÿòÜÆÿ°š„nÿXB,êÔ¾S†÷S=süÿæÐº¤ÿŽxbLÿ6! õßɳ�…„ÿE/ÿíØÂ¬ÿ–€jTÿ>(üýæûð ùéýÙ¹©›nÛYlV(Zï›Y_ô%`Ô w5 UVÔ^íé ^p%™ÿ ¢Æ_,i¤ÿ &ÖA~Öÿ [¤aöA[¢öÿ Z�Å Aùº!4AZ%T¯œ%ÿ Yô%AUYw5ÿ X£Å A…XåÅÿ ��g”AWT±¶ÿ VÕ AVµi  *SÕêˆYVݵMê‰l_@%ÓX8–� Óõ•0�´ø*{• Jø*\:” 9;´ø*[F´ø*ZÕ{;+¤Iø*U¥§;>Ôø*%X”Ó;´ø*:´˜XD¶¨�gµÁÕ*I_£Å –AX_åÅê‰Æ Å‹@¥ÄjI4Æ€JpåIꉢÆjIäÆê‰U\ ÅjI\µZRÝå Zݵ ê‰['Õ•jI[Õ [Z•ÕJÔ‰ZÕjI±æ³Z*SÕ ê‰ZiÕ�Z õI ßZõÔ‰`öjI*&ޏX¡öꉷöI!j«ÕcjÁÕÔ‰�D0\äMi F»j±µ ê‰PÌ¥jݵçjoµI Ô‰ý–öØvMi%WÕê‰æ )zý$jz÷… ÔŠd?y÷…Õ MiVÕê€û0 ôõË ZúXÔ¾¨þQ;%ÿùãÍ·ÿ¡‹u_ÿI3ÿñÛůÿ™ƒmWÿA+ÿÿéÓ½§ÿ‘{eOÿ9# ÷ÿá˵Ÿÿ‰s]Hÿ2ðþ·€Ä¯™ƒÿmWA+ÿÿéÓÿ½§‘{ÿeO9#¿ ÷áûpûÿìÝοk°×…]`vWÔ,н \ω^]5䊢§•䊈6äŠY9ªäŠW˜$äŠV9šä‰_¼ai™¹Å Ή^&V~™^RVΉ&Ö ~™~Ö Î‰©W~™ÕWªÎ‰Y£Å~™YåÅ ªÎ‰WÕ~™WSÕ2ΉV8é\VN΀Bµ[ªVäˆ�l$±ªe\Ed±ªˆ5[²©©Y³eóªX³äóªWœ´󠟦ìVé[_¬5öΈ[]…µJ¹]’±µ`¹<ÖJ¹ªÖ¤`¹©VJ¹ÕV`¹Y*k%J¹Y�%`¹²0T�”J¹X õ`¹W­% J¹WÙ%Έ©PƵ¨ó¨»‘~Ê]e ª~Ê\9 ~Ê[³ä J~ÊZEd ~ÊÊ5 ~ÊUXEd~ÊWEd~Ê•VEd~É_—&éZ)_Ã&ÿZŒF ZÙ·FUpÙ]d ZÙ]ã•¡pÙ�ó„ZÙ\úEPpÙþ  ”ZÙ[ õpÙ( ДZÙZöpÙ& ZÙ…f pÙÞ0K”ZÙUXö pÙWDeZÙUWö pÙVDeZÙ5Vö ÿ l_Zåó¨—Yl^´ú05Tú•ú[‘ú%Z½5¸$¦Ó É6U•úX9•úWl$å•úVƵÓºý ôs_åå[€Y�†úäÿθ¢Œÿv`J4ÿòÜÿưš„ÿnXB,ÿêÔÿ¾¨’|ÿdK3ÿëÔ¼ÿ­¢’ƒÿthZMÿ?1#û±íÜÊÿÀ±¢“¿�se‰€Iÿ;-ÿõæÙûÊ—€°¢•þ�€hU8ÿåʽÿ® •‰ÿ|pufÿmWZVp`wÿWVVs`bÿl=æÖamçáoÕVÜ íù õ Öh`v`ÿgf]V^ YòCñà UÖÿgmr{amrÿblW][ooëlÿ[V~ ¦ ý lZYhs |�…X[~ �×d � lW_õX™�WX~ý·VX`s~�V^is⪘âXìþbwv (sþjÞâWì¥7&: D(sD'ÞõD Öfmoÿ`vwfu¢ý¹VYVVXZï2‚&WX½�(V[� ÿudo †þp!div{|ÿafYí ± bWÐZ[`¿ ™± _¿Yd1Ü"\ÏVdæ º!Y_|,°âoÝÜ"Y]d2‘ÿdXZVZ^ü· 1W[V\Vý5XV\^ü· …dWWZdÙæ 1V[30û…Ü"VXd,æ ºdÂ#É ºwbzZ·psD ý •0d|lWdX^f«0¿bo ¿r2b^%0YV š0Á0_{ijwfý!ÿ ar|—ë×0^±9| û§«2]Vhuûf}·6 ¼HÜ31·6 ð0Ä1]É;+–Ù3\à<ð4'@"ú; ð0#B±<Ø0ƒE­_½¦]¬G_ÌÆJJYò„JäõIjl¶~˜_‚¶X€Hæ×IæíIÌðo´R×IY víIVù•×IUV¥íH^ŠÆ䈧^l\³e‡ZZ7tR‡ZX7u‡ZV¿¤‡Y*|Ö~˜^’ÖqY�Ç„õY\ÆqYËÀ�”õYUZã•qYX6u õYUXã•qYV²e õYVÞeΈ]ŠÇäˆl°"v” ä€Bu¨Ö Ñj¢õ ÑjW7t Ñi|×~˜A]’×»iï€Ý„>y\‹•­œ¨][B´>y[’Wµ»iXæ>ynæê»iWDe~�²ýôókø õ\ZãÈß·§šXÿF3 ùèØÈ#ÿ¨˜ˆxÿhVD0ÿ ýêÿÚȸ¦ý–?tbRÿ@3&ÿ ÿòåÕñ¢U÷�r©�Q?ÿ0 ýÿîÞ̾ÿ®Ÿ��ÿqbRBÿ0 ÿñáÒÃÿ²£”„ßugX›:ÿ+ þÿðàÏÂõ´³�·gTÿA/ ÿøRB2ï"Ì hYWÿ\xX[o £®p!ëƒþ" ö€¾é€XWY `”½E÷ƒW]_aïƒ Pö€E"”þ" .–Z‘�[0D “H–0È�W˜þ"�1’\VÿX^ [\vgŸ“„‘[ š!ø��’‚� Yo3„§’¯�è�ßWX^W 0 ì¯�‚0hÔ ` xï‘gs^ís© ©¸gs]¿WVmfë–VßpV\ú™Y]ë•\Vs ë•u[¢'©[ë•=Z m¨�K¢§[T H£[¡xT ‚0h£Ymb¥ÝY! \ �©[á T Ì ‡¡N¡f 6b¥Xpô� °¦k¢y q¥Ç¡[mb¥«W[æ‘q¥Wk¡m“í©Ú í¦¸£ T q ²±`ö�í¦!¡·m/·pWÚ ^b¤mWpX» q¤}h ¡[f§ì“Ne²Ynµ/£nµRj£n°t¡då‘v—0˜n°à‘¢² n° ±d•]¹¡f§° ›µÁ³• n´dM£ n°¢¡dËW\©£¹µò±[m2§°›µÃÛµÂ+û¹YÁ É} ‘ê¶ç¡§°Æç¢ê¶\¡§° Æ\¡Q ·FtÄ�þ³&µžÆD8²§°�Ã8³ �»g^¨!ýÔÅZ»ßÇYßÇX{ßÇWüàÆ÷VÔYofvœ~ ¸"gWv¢[Á™s¢4Ô?Ð0×Y<{Á?ÚYPÕ ¢ˆ:Á?Ö £OÖ/¢ò€ˆqÐBÓ/£qÖj¢§°@¥Ö”´qÐE»Ô8 qÐŒ¢¡ÞÕ qÖ‰¢§°?Ö‰£?Ð �⩢DZDûØ©£ qÖÇ¢§° ¥ÖúÇ£¥ÕlZ_W[‡] ?ÕmâË uèVí_$ »‡èXî•êV•é^^=…é^\?ÐíÒ» Y{÷Dv¿srpvfˆ g èé%0 ùà˜ �ÿæÑØÒø³ñ�’÷ 3ð úÖsúfofpwÿwxafgrÿuojpjm›`o3 ºïL÷Yý Îðdujmmù À…sl~Xw D�1fm`µ0Ÿ^VÀëÒšóWn ð¿ X[Ñí½ñ1 û"ôseäë]€[€íÛïʸ €”‚ÿq`SEÿ8*ÿóäÔÿƶ§–ï†w/€ZHÿ/ÿæ¿Î¶�I€kþO€9 îþa€¼¤ŒsÿZJ:*ûîpìØÃþ…€š†ynÿdYNAÿ/ öÿãÔÅ´ÿ¢�~lÿ\M;)ÿòß¿Óȶɀ‘ÿ€o^MÿC9(oõûðnÌ ßmw{vÃ"¬Ê"×uwÃ"âhUpÃ"ófÃ"â‹amÃ"â° ƒð;ò(i0ÔÕgÙâgê$Lü\\y\ �mdVY ÍbŲªo"•”£’0mÉ� ÐÝ mò.ñ Ð1�l{wY'xWˆ��uúâÒQXó€ßq lÔ òúî òr_]WX%0ló""2 ö$ b2li[\µ ¡B€2lX1 XŸobÏ)#P!WνðlY*y0.($W\Y $}(R B$ ( Ô•$Að( þ=!V_lWXb9 Y µ&` Y Ïv¹!WY5 a Ð-ç` ã)4!a .ö-`Y$V0"x!Ù: ²�lx0û ·kh` mí¶k^h î (‰kŒ0F4\ž Q0²�kÿZ[vlÿü‘l0 _o?^bg½�y3Åg€3‡0ê`y1X[Ò~5›:“4‡4WW|3\ƒ0¼Æ8“0Ô1AÙ0ž1Ì0¥3Ô1í:òå4Ù0Ð�jbfW\]ZõÎ’ÞDW ó(H[|ë 7@@[^ûd b�VfdY?]jaÀHMX@ÕX\@`@dEY\2VFyMqD¿aH½ð"VF`IµEtA`IñRWEÛMpE©GVRC¯vZW\@ ]`^Qua&YXXI?]6U&YçB`S]q]`v9R©@ö”AYWPY\rf¯u\Zß £[V…`³T ©DªR�±VH£Y�²U ì\ÊU Ó\òÉV ©@ù€ixXÿW][`wû›£‘ius^\X80ë“M`YVQ`Uf΀àVë�Ð�iu „°› ë�Ôy`^aÏbbUe‹b ÊsfY}b ë�JbdZÚQ` sedZ› v™ UeÉbë�²�i2Žò”ð†ahuma�`Ù ë�Ãih70ý±’wXWl #ø£’p*0 p r%Wpu4" %t6°Ü Àƒch_V×\Ñ��Pw���”\Xî_•_0’[_ r8•�è�[^bM“ǧø‚›t� \p;šp&�O‘h§tò8•Èp„r^ bxxæA�Èpèôóv ^Ý\îÜ ¨ÿ˜‰}oÿaP@4ÿ(ñßÞ̹1”ÿ‚q_Nÿ<*÷óáG¿­ß›‰wO_ÿSA-ßòæ[Èß¹ª›a}ÿn_REÿ8, ÿ úëÜÿɸ«žÿ‘„wjÿ]PC6ÿ#ýìßßÎÁ—¨ÿ›Ž�tÿcRE8ÿ+ÿ÷êÞÑÄ·ª�¹ÿ„wj]ÿPD7*`Ré€í6Dz�pW\Ë[uô ±‘�Xuü0 ”[l^Ø>–Zב31�“^uÎ •3Zu0•VuW ”ßZl]=•Zl¼nÐ1•Zlq–]yui e•Yud–ª`� •Ym�=•Yzz�1•Yl¾–’“�±– �±–`�ª •Xm� =•X-� N §W ¦“�þ–ÎS�Îä X›Z ÐøãE¢XòK¡P £WuÔ? ’W � =•Wlw[ {§Y1•’p{¦F�n¦�V?¥WZZ£a¥W �‰»¦H¤P ÏߢWk[K¡ê¨VC H¢àýªJ¢̦`�n¥UVm�=•V„ =·Hú =¶“�0¶� 0¶’� 0¶`� ~·"pÛþ ’ovXX[ýsãod|lWVŸdX^ ²Ïo~UÀwudWXúpû/çYvLêõYZààÕXashGàV]Lç‹áZà5�êY�á.•é|á-�çka�ãLçÕá’Zà Ëê³âÞê|á ØÉ°Á_a«MÓVWÇW !ð—ð'ðVf?vp¬ÃÃ4òŸb`s=ðJ`oVV^f !ðÚQó]Xð "ôV[Ü PMÃwbìÐìóÀ0ñvñXŒ†ôsŽó•ð¦ýÀ&ë­¦öe·øwé ·÷‡ ·ðªýôs…+ õ_€]€óæwÙ̉P²¥€ÿ‹~qdÿWJ=0ÿ% þÿòåØËÿ¾±¤˜ÿ‹~reÿXL?2ý%?€ þñÿä×ʽÿ°£—Šý}S€XE4ÿ# ýÿðÝÌ¿ÿ²¥˜‹ÿ~qdWÿJ=0#ýƒ€üïâÿÕÈ»¯ÿ¢•ˆ}ÿpdWJ÷=0£€ ÿüïâÕÿɼ¯¢ÿ•ˆ{nÿaTG:ÿ- ÿúíàÓÿƹ¬Ÿÿ’…xk÷^Qé€8+Ö70æîp‘YlŸZ^Õ2“‘% À1ã°ô1ÛÀ1V_^XWÔ2_S°³Ùs�Ñ2^TÇ‘^Õ Œ]-�U]S�Œ\„ Y ‘Ð2[m�U [“�ÚZ �Q (†� ZF�YÚE Y�IÚ¡:¡ÚßWl\W\|Ö ÚVl_V! u&_-°h&j ýÚXl_ZrXl^n�r4‘° S©&#@©&\»�xÏ'IÀ©&[[©&ïZ_ ö'Y Þ©&Y] 7X½ ©&X\ *7WÓ©&fÀ¶&W‰©&rðrù°¢ e©%_-X_S�• œ%^m�$–0‚5^“� �6‡±œ%R®‚5» œ%\m�Õ‚5\! $”X\R“� Ü6j œ%[„ Uö5[Öœ%Zq !ö5y’7F‹ *F ‘$œ%¹‘ö5"!kF“�É^F�œ%Ö $ö5 ¡ŸFd ÚB¡�XG¥%ì¢ÀAXNö£$”Dj œ%"ƒ¡ $�¹"p ö5¶¡‰¹EÃ¥Ý@SH¤HÝ@ÍBò§2X´Ý@Œ8`KTZ ÀÝE+±J ”XE± ÷E!p ö5Òl±wV`� •l_8[pr±PW·V² ñÄWÇ@·V]^‘ÓßV¦ ëV\4@øW[#øW’ðëV[IÐgPUÐëP4’„ ëVZ 8Eg 09fZ ëV0A kgØð9f’ ëVXðŽ‘gZ‘g ëVWw^¸g[¸gwY9fWëV<�áëg[ÒìfÚ@¨pm1.pu_W J$•_! *vd  •¥_j  •—1$•^�S°3St“�Qv�J •] �$•®’vBF�…v‹1 –q $•:ÈÆwXÆv‹ ½ �l$ôóƒ¿ `^ø  %# ÿüïâÕÿÈ»®¡ÿ”‡zmÿ`SF9ÿ,ÿøëÞÑÿÄ·ª�ÿ�„wjÿ]PC6ÿ*ÿöéÜÏÿµ¨›ÿŽ�tgÿZM@3ÿ& ÿÿòåÙÌÿ¿²¥˜ÿ‹reÿXK>1ÿ$ ý?ðãÖÏ ß ÿéÖÿñ¤—ÿ†{peÿN7 W_ÿus[W_þþÀZvbVWS ¥ð•s�s�¯Y $˜k”X§¥ðm0s À“òT’ã°]”ÛÀü]�¼@sWW\W XZV 3sWV Y „•¿a|¾eÒs¶®ðWVçòë¢rÿpdruf|{íXÝpÒ²›WúÃ�´�mms`ÿsfuvw`pïdom¼0Î2_l]´P¤_l [Ü`¦Yè`¦a¥…]W ˜³- @qt_U[• 4¥[Õ A¥VR4¥Y˜ A¥¢p!4¥Š"t^±!½Ö�¥\\œ¦Z§[œ¦¡°œ¦V¨ÜÀœ¥Yq4¤^sqª�¥\W Ý¥\d ª�¥ZF°Ý¥ZÖ ¬�¥ð Ý¥XÖ ª�¥VW Ý¥Vd àt�pÙ œ¤/ ^Dœ (]Aa_¶ À _¶RfÀ _µYq4¤]sqU Rµ\ŽpŸµ\¨p±po²ÏÀÚS´[’¾0Rµ"!Òµ/!$RµòAÒµ QtÁp8þœ¤´°W Æ`é Æÿ  ÆYZ% ÆWr Å_¾!Ò´«\_¨pÅ^3pJnÅ^˜ ÅÈnÅ’ÕÅ2AnÅLAÅ,nÅY¼űP³ nÅ�Œ\UV¯ nÅV¼Œ ([q œ¤âp�#ÖR`#Öÿ #ÖYUž#ÖXY#Ö�ð¾%[_l Ò´[ _¦QŒ[/¢}Õ<¢ŠÕ*Ûq }Õ\Ž@ŠÕ2A)}ÕLAŠÕYW!}Õ¦8åÖd ŠÕXRZ@ŠÕæa}ÕW˜ � ŒZu²!12@_K3æ]`3æ\Ì 3æ  3æZgP3æ:I3æ¿� 3æ‘ð 3æªÆ@ 3å_q Ò´ZA_éq&å—2µåsq &å*s±µå]Ö &åAÀ+µå\¼ &åI¡ÉµåV¡&åˆàZZŽ@&åç²7õXô²&å107õXŽ@Y&å˜`7õWŽ@U&åVÜp7õVŽA&Œl_'01^Øð1RË 1`1[Ú Þ%Þôsk_ña€_€ßèÞÈ€ wŽ{€QB%€}$)€úêñÐÿʶ¦–ÿ†vaMß=(k0ðwÝÍ_­¢eߌ�vk[×I:u€wù}è}Í»°…ÿš�„yýh‘F5$ÿñàϾ­œµ€ßzhY¿€=ÿ3(×úì;׀š÷…sßK6ÿ! ÷â_κ¦ÿ~ÿYE0ÿñʼ¿uviX¤PxÿgY[z ¸«á Xïó Wß\z· Vzk âXëE[. [PäW>A Í@LêA ú5Wé\Yz$kîk2t §.tv‘Øîä¤ùÏ- äÓ) Ig[Yý}t`b þP#Z[}V[Vtßg –õgZûZ~tkgVY[¯»t$Y|"béV}ᇠR!YY`ñ_��` �vb`]ÿVWzaaË_hœ¬-¼ hu â`rp—àGÛ&è`ç Ý"ª–à`…Àö'W0|0m0v^s ]�M1]�Ü!\á"9ç$11Wç Ÿ!ß\YigwÖ -üHM0{ijwfoå»Av\ÁE!Sm2R x5PÄB9 ‰6ÂB[ š8R} x5VWW}[ŒP×о7WŒPÏŠÎ3[ÁEx4å1R$ï5‘5HRFÂD©"HRx4Z àW"È1Þ4KBÙ1Þ01õYÊ0µrvYk»´rDh|Ed»|Ea|E`³|@IYX^53ä÷"¯Aa!�U0˜iB¶ðs“vYÄ0OBÈÞ4ÜBÙ1Þ0áY'lov0ª’°�1ò§` ]�ø!XYXjpw4ž"‹XVO2 U4.P_4èºD¤PO2ÊDWk½|DWh cUd» cUa cU`» cU\TWÿVWvvWû<œVoiW„ªV/SU0[ÁQ_4üg0ø!VVX `mOj 13ÿCXª’‘ °�ðWS °�áuÿ{zWV[slZX«R8`/�pY4`¡hdð:`cbg¤:`-av2b®Ð delŽ`\sfCa`(p„iì0s`=asw`ÑZ#`:Ðcds2d ̸eCb ÇfWb�Ç`Ü £�Žas`êaaçWWÀõgV]ù s`o°uvs» a"szlÐW`l/ž!×svuª’°“sgÿxYW WXoiß~&’bX½�ða]s“0 @rXuY0hp¡‘Xr¿s]v {{YçYhp; sbWþZs\saml ^Ÿys\v5’ hpn#0s^¥€•®ü`Zvu’R�÷äôós× b`ìÿØÄ°œÿˆs^Iÿ5! ùwåØ)¾²-ßšŽ‚3kÿ`V@)ÿùãýÓ]€µ¦˜Š|n`o€A2"{€ÿóäÕÆý·‰€™Š{ßm\N™€2ÿ"íßÔǺ� ÿ“†ylÿ_RE8ÿ+ÿðâÓŶ¥”„µÿdSC4÷$ñ€÷èßÚÏÀù€¡÷‘��]Jÿ<.!ßC2ç€ýz‡�|fVXVóž…’ú€W]Ž—V�Ü ú€Vú6À ”]YVuVãº@³�/‘bubmjsMir/‘`fC“J�j0/‘îC“€÷!|XV�X[hf…Àðø {KiY7s °��’W7s! °�Ÿ ”�R ž”–”ý SzvgÂÕÛ!xÐp\þ€« Øž!Í‘tÕ–YVRÑ�ä˜ý€Õ•hL°GVÕ�ø  ])@WV¦[ [V¡Õ�j0 í‘Ïbb¦í’ª A§XL¡` £Ü@ý€-`¦W[K¢�¨k¢ù` Ø’d\\Vvc ` Ê’«¡ £§¥X®  ²§ý€ q¥d¤¡0®  £§¡²¦Z’Ñ�ü§ý€` .°xÛf_à�Ÿ’xf©^à‘%µ]à�%µ\ªà�%µ[à�%µZªà�%µYà�%µXù[= %µW^[D€¶Ñ�“†°ƒ š¶ª�šµV§ �þË�aafuwrÿubivo`mßm »ým`Ÿuhf Ú°Ü woo[V]¨ $õ²—j^}¡×RÁVæp0Àö±g^Vu^ÿ�OÈ’wg[ü�Ã×.Æ‘;Àj0wgNAp`i3 ÄW¼±ù-ÀŸ wfXZV?Z^ÜjÆP“ÛxÇ—à†È`V†Ädj� ¤ÅWqÂI³ÈP³È` †ÀþÁdvsu`}÷2�"wb^[ßY^aq£wb/]XZX™@ÿÉ€P££wb[{°þ€;À®óÂZ[[¤@ÿÅ ·YWIàõô³b¿ XZMÖWï\[ØY@[Ø´`[Ø- MÐkÁaÊÑ †ÄšÑ—à ¢Ø` ¦àÄ`gB!á�ò rwÿ]^\X[uw¤•°–PwÀÓÕZÜÖüwÀpw]YZý.Ã]YZwñàÅ àWXwÿuXufgCàÓÒZp"çà~#0wWQ1wãaa2wñaXàpÿvwZl¶þeâirWñ¾qã]gËrvMikàʈäà{å:›pŸæX{àÜ!ÇiXâA“àßàvieWWЇà5Z]v‘kÛãîæì¢Dæì2ô.DÛàÿ?ô6ýZ- "÷]> k$çw‰üî‰ü¢‰‰ü2Ïó.Þðôsy_c€a€ÿóæÙÌ÷¿² �‹wÿdQ>+ý€þñäÿ×Ë¿­÷œ�1€uhÿ[NA4ÿ"þñÿåØÊ¼ÿ®¡•€÷k]Y€B5ý a€öé÷àÓk€º®ÿ¢‘€oÿ^M<+ÿ ûíÿàÒ²¦›‹|™€ÿ^N=2ÿ% ü÷îீȾÿ´ª ’ÿ|n^Oÿ?' ÿûåÓÁÿ°¢”†ÿxj_RÿE8+û`V\fv¿vX[|Z3P¦©�i aê [�Ð *ª Z�Ð 2Za±]^1vXXÒp5Á6-PlXIÐ*‘\Ò|° eHÑe[[Ÿ`g fZ gë� mX/[zdn %V1¢ÛXZ©&¯WXj©®¡a×{bý@bG+1”¢¨ ® ¡¹ TöË ® "aÀ5 "h� 5»A"?b_Vw , #v5! ,'`[à˜, ëS!, Õ}vÛ ‡oso�‰"0N^Q·�"�@¶˜#Àš@¡$¥@¡ O•±€- W[ß‘LZ—WZl±eÓ Y’‰°Û&` é'|° ˜eÃ!þ!5~aŒL»ÀÀ  ‘0}fmmr{ pÈ/ ‘0`3 pÐ"uïfd;6huf�fp pù‘0aómxð°;6am`b§lp¸!W‰ =1p�0–P–áÁ�0ï vZWöà Ž`¡5pÀ3ð¯0Ð!Vln±™4Æ1Û$läÚ7Ö0e-1V]_zp``aIÂîû6`Hl``�dÖJ )Ka» )K` )Ggo5A\Kš@\K¥@)@~–1VY_ �Dæ �ôq Q\8§@Ð2äP]Á#–WÀ@‚ ·P‰ ä¼°à� À@ZV^[Ûo Òp‹åCWVÏoi Õ�ôDaiË Õ�çA– hpp °q®ÙAQ+ ãD]Ç235R#e5P` eQ ] °V®[R-°Vù®–0V\\o©ñ@ÙA\naÍ#VU[ã"JT[_ ©WjÖ0=T[&pe¾…Q[VoŽTY¦¡@À@±V’ð_/w`V[ÏPqðVùZxàý[XWÄ´Bü€VŸÐÀC'aYÝ .gX .gW9.dç ZUgò`îUgXUgW|À@  [V ¹AGWþR“`‘eš`à–0Ñ`´à÷ð¯cWü÷ð÷€~`uw÷EÆdhpNÑgfÑ`2p}•PN�Á2íf­ÐúhòTàú`:‘mWZXþ30dsl?ÚuW#t>,uY[TD0&q+vY"u>p”ÕàWr|#t>w5u ŠdwWou>p÷ƒG �–a–|° –&0 ¤–Ö0 –0 �÷B ôóu × dbãÿ×ĺ°ÿ¤•‰zÿpf\PÿG6" ÿöéÜÐÿÅ·«žÿ‘‡}sýe=QG=ÿ% üðçÖ¿°Wÿ‡wgZÿJ4*ÿûïãÿÚɸ¦ÿ•ƒraÿP?/ÿ ýìÜÿË»¬ž÷Ž}£O>ÿ.ÿõçÙÐÿŨ—÷ŒÉ]Lÿ;)ïÛȵáÿ�|iV÷C0õ DSÿ75162AN2n±^]b Wg‚À§¬ °ÿ„`Sº �ý…Zp‚À êšX+‘–\[ZD)�&0C˜ÀQ‘V›_`ZZ–[s’¹\tÀ|—WgbP’”Õ�’–aP’¢›w‘ºä�¦–Zg&0J¢™`P’ Ü›w‘ È™e`Õ“ Q ü�XlúÍXà垦(§ØP‚À9¨i Ïà9¨ð› y�( ^VWWßuLN]sß{aŸ]V%[·4¯0‡¡Œ ©2y¯0|¡s†Àþ–0]os3½�!]OòB\¯Vd{`†ðÎ"\›WF! ‘3Ú aY â¦`-�â Zÿ[V[^` ù|–¢²VVo`± °/ ±\9Ð ˆ ·T°° °ù±WOV` °ÿ¢W±cy ´S°²xZ¶ \Y±j°²r°&±yY°N´Z`j°J?²WE²Y°²V°b° Yµ°±±z©¶K\Y° ¸·t³É· ÙPY@¸·G°¸·YëW[°¨·X[‡`ɰ»´ßаָ·WXÁ=ÈXú(À,Ä[fWÍÜp U¯eÁdWå[kÁ pÀbÄb^¹YJÐpÇbYVŽÁ ‚ÅWhÁ× ¥ÇŒÀ09pÀ‚ [ �0–0·Z|[0ûÒÂvßpv M¨BZaïpa èÅaaÕ èÀÔÀW¡°Wÿsjpa`vfÏê�! ` b}ÔZV^^ ×ùÐ/ ZvfuÇj`m‡ðÒa<Ðsjx| GÐ:ÒobvùPQ TÕÚz!èZ§A‚SN�ÝpGÐùZý•öZÊ®Ñÿo`jpvbiÿ`uhfu ýŸZfoxmf%@ ÃЂ +`ÃЖ0ÇY|^'0ÜÀ Yv¹a »Aî!YvbW4À ’ð6@•úÖ`ê úÐ� Y/o ´˜"Y…04äwk4äh4àÞZYdX„0vî5ãd4äað4ä°4àY^V Ï\²3„áY»±�BYY  /^\"YYW à ¤àÆOYX… WàÑVo‡j ½�áñP@I¼Œãp`HÓYq YÞ  æâÚyèË�Y{uF0­ÎÒ1BYÊÖ\#ð‚ Y ÐÃXãÁùèÀ� XoqKòupSôhSð,ùïÀsbH°ÊéÂmñS èÀjòapòvõ:üÀ IôaSô°¼Sð �X]bVF°XVkmÒ ?ò¥] à ¤à/!]¬á¨ P¤à} ÷€ôsoýôYP€c€îÜÿÉ·¥’~ti^!€ÿE:/ ÿðÛ߯±œ=€r÷]H¼  ÿôãнÿ±¤“†ÿ{n_RÿA,ÿøëßÿÒñŸÿ�}kYÿG;)ÿóäÕ÷Æ·�‚‰tÿh[N?ÿ0#úëÜͽ÷±£Ã‚€oÿaTG8ÿ*óÿßÍ»ªÿ™„o]ÿK;'ÿýR16452½NP`bY  ½sƒ0W‰R†W\]bµu48bQ°ïms ¨p ø8¯ZVs ²ÌVf08`W5°wà pÏP†àÊðpYó8^ `^^V?{uà>!!¿vvmUâ`?\X]p �7$çd �!\WZO`p �‰\•Ð×Vzdè`¤”2`[®rð™·!`ùP í �B`[G°Ñü"5°VvÒà6"�`9°y (![YËo|@�H&#ÀbrŸpÚ¼#³#&º$YW…à `ò5#ß!gï=²Þ ]_ã }ç&]_ðè%¦Âp ÀžÒÞ Zþ!Ê7^ã 0ê#Z]k;5Vrðš²¢ðN0)Ày íYV[f×Z]Zg@wð¾&c6WVÀq1 v0!ÄÈ0š ž |!Üp:ô4³#º$X\WX†í@3º2°@Â9Zó Â0;X\VZ ^ udà;¯pfà9Zí1DK@Â0p!ZÁ� &ã2[^Ì0ÿ1à5ýƒ_pi X*æA¤S�W‘\�ñ�\V’ ª\”\W‘\�m‘\ÇVf`˜ ºðæÐ ª†“X�˜™� m‘´è0)0€¯—Yba~u|fVÃÀ}`�uvi à»xgE°z_÷us«À_uaÿWZvuVWû^ΓpYl[]û]¤W\_uý\ umwuÿamafYý[uh[^ï bx poZþufmX[ÑV* ùóYÿub[[}]Wÿl[VW½Xc¨YlV_r£WÔc¨ Pur£Vc¨WYëYlr£U3£bV«Xi�l9pTΓ`¿Y[\\S OuZV{À•�RΓXXovQß tduÞAwgûP tW^¿duwOÎ’sÝ|õÐ_Nÿsxpbi[[ÿoourxpdûMswaoa[L²svpohbKÛ¢su6QouYJE³og—P÷VIsmÿ`vwlf}?ZooHc¢OÐ×W\b �é0vrûGE³jYYW`·fF!¢sdpXôé�B E©³b]ZiÿbwX[_wDú¿° `| aý ”`pg l \õY˜ÑC s`¿mXVu^`äÀB~9³\V\VA9³¿XZv@²r¯s`\[gp?÷¢r½f÷bhW>Û¢pé|'Гá=Î’psWßV\:Û’po½b·ðW\at1<þï’piX^vgV÷ZVüYbgû;²pf[[YïZs9?Ãb]gï|a8p_aWX70Ã]Õpu\ð6"²o}Z Òã‘ ß@à5Î’ozõWàA4c¢ovo\ÿX|ZXahvßWlv33¢ou¾åð[l\u 2ÊçÈWóÃ1Û’ìÀW\Õwé�lõÁ0÷¢os_][Z[aÈ/çÃýo²Y]Z{où.!Ó7Ðb_XYpÛ-F¢ol±ÐXmXç� �Á ×z,XÐ[]+ÄÃjgY0*çïgu[”`uõÁ)P!¢�ÐÐ óÃ( ŒÑÿW ^{W^ÿ[|Y[W{[V>°[l]wÐù'­Ý½ÝYVu&â!ÖÝÁÙk°l%þ÷×Z{X[|·\^ÂÓsoÈÒZ�Yu$Ò×'í7äWwl#÷×X{¿Ð÷|WV1çWl[ÅWóÐ"Ò×rí‚ãW[÷l!²of_VßV^g ÄÃf]ßX^`Û¢od7f[W$PÄÃMÐúšÀ!ÓbWZ[Wß_ad!Ó`|ÿ^^Zbs`~ï’o`mV\´Àß[\ ]ä üé²7ÒYXaWuåp²o·ðÁ W^¿V|gW!ÓX}YFÀsY]›Ó¾‘°___V[#p®9²oWYø€é²mýwðà^Ybp^íÛ¢mwp_b~ûÎ’msY\[wo‡óo]^zP÷w–óoYZdï~¸ "¡moXµ_°¥ 3¢mÿoWW]lvwffm –ó‚ÐPÐï¼ôsF ·gõpeÊ�òÿÙȸ¬ÿ–‚obÿM;)ÿ øçÓÿ¿«“‚ÿt_O*ÿòÿáÕðÿ¤�‚rï^NK€&ÿ þÙ´¿‘…uc€Gÿ4'ÿöëÔ½ÿª—€rÿeVH<þ� îÿøéÚÿ˼­žÿ�€qbÿSD5&ÿùêÿÛ̽®ÿŸ��rÿcTE6ÿ' úÿ,…ëçA'±�ÌÀZWrÝ0R&!ìY ö üY�öX_^qVE0#\#[#Ý0##|Y�#^_}Ç^}p}[Ý}Z}Y±}1�#Y^ ÝXç] õ[qõÕ õYõWXõ[@)÷\@)ZWŽA(Ym)��m'YˆYŒ(ü@š)[ š)W[õYòÇ)wYÇ)XõÞE�ZVX©Û¢~w¾žàZ]`¨÷¢~ÿaXa}XYX][§9²~]‰á¦3¿X]]_¥²~ÿW[mWXW¤þÛ¢}`g Xuf—d£Î’|˜Àî@¢ú²|N XVs¡Ž"²{tzPà? é�[ßZZ\ 3¢{iï[V^ñ°[SŸ„4Ñ[�3žm3ýb•ÐXV\\^Þ”ÐX�ª;W\Ôн0œ“Â{Œ°›Né²{XX·0‘2šã4ê[°_‘2™Û¢zw_XV^[h˜Î’ÿzm|YX—z3¢zrWZ`Yæ ý–ï’zZXX[ZSapðP Y?0•c¢¿zXYV^Xj±]í`á ”÷¢xws¯\XZZgp“9²xëv[æ ’Ê�xßmWV\Wã�`{h] YVR¢R´³‘ÒÒƒAWÐ^ŒA;W\‘AzjrI�´³í�¡FV]¬J}fm×mr{´³�²x`]]\bp޲ww~èpW�9²ëw|QŒùCviWßVjp‹Ê�WwujÆ “JŠ÷¢ïwtX[8pXz݉ےwse0| gbWY^ˆ;SýmSÀmZbd‡þÎ’wm smoí†p²wl“aoWffW\`…Skjm×p„3¢wdx@~¶0YVo`ƒ!¢»wdT`][«Q‚~Sb^_W�é²ÿw`sYYZoVïY[€�S_Xs'WWdð ×pSk@gd~S{a}Î’×v{_‘|ÒÒvxÿphsu`dj`m^[b™ ±ã�ç�â°{÷¢v§wsvFp®ðzp²vÿwgf\Z WX p`wy²ÿvwZ\p m½xé²vuY[CPVï_^wï’vsxýmWbYXooaïmlvÛ’vs_o[ [ ÞCu˜d§Y^WWbM1t˜dWûX]¡`bmf`uósoc£Àmv[_úPÐrÔf`mv^\·pq cowÆ ýp3¢voXZomÿWd]Vxloî!¢vmWFp b odsnsll�ð]\™ÀfmLcl(Á×oX`ŠSl ciµY0�ksguïÀ^�X†àj˜cýÐ\«v¸0l ic¢vûg_µ�Z[`p¿{Wmih9²v¿dv_~g–ZÌ”ÍÀY•}0(–Y. Þ(–WY”^V¿`orÝ vûd[�±W%Rcad~0>�k�`‘ŸW ° m“)@pó„�|’VíI{’¹�„�œqZ‡ w¿ª”W´�þ‘XYvwš]m’XYs±pÍ•W[df’l“WXWZå�é–Wå�•é–Vå�é�‘Wµ_É�Í”W_Ö‘xÍ�¢)@ã>aÿb|mVVZdpïÓcab|YÝVG Ñ^‘b|>ã�pbÐl’_£«Y§`d h§`Gph \¤T¡Y¦¥VT¡Y N¢Vq¡–Y¥VWc¡h¥Ç¡íY¤wd=ðb õù’bîÀV|yí£(@þ=¢÷v^µÀYï<£yp²°O` °]@ýwjÐli~ý¨=b+±²¶X²ú°¹puf{mrÖ˜@dðfÓrrûg±�Lo^ºgfk·—X|°"„½l±^kooo¹|±¢½’³WZ[¹µ= ̰öN¡rX« ©þšabp\^\^WbWpZV„�ªÂX À`ÃÍX§^)ÍÙà=Ç\«Wb6ÃQÉa6ê=Ç[\Å=ÇZ\ÃZ¯¯ '²o-±uò2´:°¸ql xl»a¨`ÑM¢j{`}vfù£iVX[®]’gbd[ˆàG°½äÇ'VñÀÁb À¿q2Á¡ÀÙ`ZÓ ÕIX Ð!Ä(Ý9À<ØÒHÅ ¡ÀN¡b�¢Sù[¢kÑdXwétÔ«¢rÕV[h¢}Ð�ÐgÒ¹¢�×d_dZx‚Ôg0Ïu sL£ÃÒ üËМpbaW{3¶{‘ßÐåÐN¡ÕaÓÒ Ëйp_I ¡ÀpbåpƒÀhÁU ëgÀ êbÁI .ë)á.ë#Ñé%`;âgë)á¡Àáh:À¡Àî¡]6¡ ÃÿÓw]�ä\¡Àþ\¡[W] {ià 1ˆñ½à)@ˆ™ŽÈè\Öà¸qÎâ[B 0 ¤à>¡Îâ0ÖàÌùæÿ`¥r ôW€ßÀÖàù&ÀÖàÁôVŸ^vÖàá[ã�ä¹ÐäYY]ÿbi`uwvgôÛÒiðuðþ>¡YXidgwh¯ 1dóXköÄuõ0uðá°® š·vZÀºø ÑÝËû`ºðƒ®ôs á‚q¤qðÿáÐÁ´ï¦—€xjÿ]N=.ÿ ýðÿâÒòÿ£–ˆyÿjZL=ÿ, üþK€Ü̼¬ÿœŒ|o¿bUHa€.ÿ ðÿáÔÆ·ÿ¨˜Š{ÿj[K:ÿ* úÿêÛÌÀÿ³¤–†ÿxl_QÿC4'ÿ ûìÜÿͼ«žÿ�reÿXK8%ÿ÷èÿÜ˺ªÿšŠzjÿZJ:-� 】x@~ïÃ’vY]÷~X[~W¨q µ‰³-W 7³ $GC7C³ gCI7S³ ‡C°,r`-WV²§C)°œqs¡p _‘7s^\å k�¨qßs^ZY\- Ø|òÂêV\Yk�Ú÷["°$qdsó[`u0)PWö]%W^"% ª‘sû s $E% E%" ö�wmdf^@÷©gWVX`l?�™…“�!‹ }$W×oiíÐ<™(`lçW© _‘f|_vpw£§r¤Á ¯r É ½"vÃ"¸É ö�à" ¡Ê$v’Ò#è'ý€ö ‘fö¡ ¢»$_vrm2Ê�¥é$)1!034Å !04V �œq0ƒ�33Ö’!0Ì"_as+0þ°06|0ö $$3¯r L6ý€�\3Gs �_‘Š�v±p‘ �¼4Ö‘ �¨qdvB´ð8dY²�ç6S³mÙ4Fð°ç4Q ]G2É ªAš3’É$bÄ! Ù$?C!ö *B¯rHHý€é ö ö�b @w ˆs4~A+1 00KB�B‘!4~AÅ è$«B”~A¹4~@Ö‘!!0*B0@}2•GŒ1a…G¯s>4RÁG÷s”bX[\ó”kÐW a¬ÂD !ÂDV€�BOVX" OPBB´E* 7bï4yVS³I™YC ‰VCyVôFðC7a|X[¢Ä!'DàQ¯r É$adò Ä!Ù$cWD¤a¯r hý€ wDaŽâPw s4@a+1 Œ•DNc!4@aÅ Ìè$mb”@aˆ¹4@`Ö‘ÝD—a}2DWgŒ1ö$—a°q>4vÆbƒgs �ˆ¨r` Ä!'Dña¯r ’É$`!Ä!Ù$s‘ WDq¯rxý€ 4`dv z ö„�@‘ s4^q+1•Dls‘!4^qÅ >4‹r—¡ð¹4ú�êAÝDú�}2uwŒ1ö$ú‚Ë`½!0šôóm¿øjhþôæ×Çÿ¹«��ÿ‚seWûI/!ÿùëÞÿÑŵ¨ÿ•‚ugÿWI<*ÿ ýðÿàÐÁ¶ÿ« ‘‚ÿrT6ÿöçÎJy†tÿcRA0ÿáÏÿ½«ž‘ï„w¡^Pÿ=*ÿöèÛÎÿÁ´§šþ¿zfS@ÿ.öÿäÒ¿¬ºßˆé€fPë$ÿøVWWÿ bvg_ï\\Z wXmiìè„oYX[fó„ëüƒk\Zî€Zò€{W÷€è³›õ‚—YXZ*•=™Wò…�Ì‹gZÞÀñÀðo�Zªàà KQ%v˜Y‚‘¨‡� {“W�’™šV*‚‘‡™W‚‘‡–ßá&‚‘ZÒ˜“’ã�œ“Lñ�’[ö™¹’ ôÔ–Ë’õ•WXVo€”á/¨““@ À3¤À¸”@ªË“@ ö)àV]s=À}¤\‡§w[‡§Z‡§T‡§X ‡§?P=Àþo gZXZzó Ým"Û WXz¹ ã œ‘XVY7¥T@¤ø£X‚‘¶W7¥Iº²@ Ø¡XÝ¢• ã¤Xë¢ ã èÐguWð°ÂÖÂgWW´s/j±Xq·wWq·V q°.x‘WV]• ™¸““øª¹Ë“ª°vfuÿzjbfo`pÿgdXY[igÿ\[|||ïÏÒ½Y[gËZé± î°ªfuÿjfv^fÇ PÉÅ0ËbÝ Ëa Ë`± ÀðÃZoÀ¸aÌœ`aÌbaÌa»aÌ`ÀþÅX WVgjÿmwfuŒ×ÁÄóÃðsVý�À`m�@ÿxwjrpy§÷ÄÚ°vÏÀÿb`amf üï´Ñmjplo§`bÔw$ÝjËao7Ö AÐæÁs^¥]îôeÐ[þØ rÕ!#çÑfsä0M�Ó• ˜ÕLP˜ÐþrÒXXZX ùð‚ò´ÒYX`~½ÔpwjpfmíÐü�öfp\YXSü¯ÓàXJðêÕëX[ôÑêÔoWV?Zwb¾™²â—swW àààÑ[ó[[6`Õ£f[Z]r·  æÁZY[ÎàçXä9áV^Y?sbKßÒÏàßW !fÿ[W^o ufú Pôš’fZWVòzä‚àö~[`oor)|m°¿dZvË|ß\VÌe²d|UZºà5T|p‘5Pzo!|ŠàVÍÌäeYºàËå�ØååY$áæàóVhXOwõ®àð´µâq� ØåW[ðÖõW[®àD÷`X“²àØ|$àð¨ðÁâ$áØåV?ñªõVMñŠöWðȲà›ô®àð*z_>$àzfñÖ»óãÄðo!#áVÕZ3vÑûîôseéëk€i€êÔÿ¾±¤‹ÿrdTFÿ9*ÿþñãÔþ3€¶§˜ˆÿz^OAÿ2"÷ÿèÚ̾ÿ°¢”…ÿvk_Kÿ7$ýÿéÖïÿ›ˆuaÿM:'ÿïÜÊÿ¸¥’ÿkWD1û¯öãÐÿ½ª—ƒÿkXD0ï ÓäÑû¾Ý–ƒpû]é6"ûüûðÛÎÁû´œ‘uW\vÿ[u\[§lš“Ý\uå ¨ê �låªU¢ðVf÷© «ê×Zu]åé ZlRE#:]÷ ü ‹Z] >à÷è#>à 7Yu_:åé YuYY¾µl¹ ]YlÌ jä_÷ü Y_ -Y_#) R ®Y÷ *­Y *Yª]XD é X£uXó—*W „*lR¥! „*jü X}X�üù)@!­E)XX÷ã*Xª@!ö*X :X:1E)Wu^¹!é GWu[ø;¥! é�x‘s4 ¥:oò!7Wµlz1 ]Wl�1„Ü;¥!#¨7"Ü:^š÷ü W^f"WE^2 9F@@!l:I['J[2:J[2•NJ[1 l:+2$'J>2:JQ3NJe3 l:+#'J?##½ð÷• NJV1 l‘s¿bY ³[²mçu XP `gi]ÿ[Vz�²eS\~�ºÐ1×¢i\YZæù>³ˆQn°Þ�WW_�X^�X\ �Xô�P6uSX^kÐ }pÒÛQê|QrPvRW^ßZt\0YpW][ £â¶ùQ]h}PŽsUWå[}P`„SWY\G ÒùQ|Q`zöSVý[W`Ž„R[[Wà �PbZÏ^[s©�rUZ^¦Ü …flR…fXWs�Pˆc(`WwrUYlRrP<„R�g¾–âÖbãÞ`-pÇ`V_æÀrPl‘iX\Su�fRXlRrUXW]g rPìábp ÐeXV\‡lrPbø¡"p ž3wYV rP¾ÀgbYp`w½ðÿs`bl »)auamllx \xp}¡b_±ðŸcâÿg`[[aÿ]ý…_\]•û‡Dµsõ‚û‡ïƒ!’û€ït ôó_ç¯ljìÿØÅ²ŸïŒxQ>ÿ+ùÿìØÄ±ÿž‹wcþ–À=)ÿïÛÇ´ÿ¡�|iÿVD1ÿ ùæÓïÀ¬u€…rÿ^J7$ÿþëدŲ�€Š•€dþ›€<)ÿðÝÊ·ÿ¤�|iïVC­ õÿâϼ©þ½‚n[H«5ÉûûpÞ«€Àï±¥½‡x{iX[^Q0[ ;:܃lã�=ëÜ€7\u^ã�Yê‘Õo ’ü‰l ’<šýˆ^â‚:6™ö‚$5�×…\G@ã� èˆf�Âö‚üˆâ÷‚H˜[o*�’ƒ™l�’5˜õ¤’–™\ö‚ [˜ã� èˆ/ã�üˆC ’VH˜Zo¢ ©l¢¡5˜i+¢©]ö‚ ˆ[˜�ã�舣ã�€üˆ·¢˜ÊŒ¢¤©oªž¢‘©o±¢‘©l¢ž¢è€à§±¢ð©_â‚H˜ ã‚[˜)!÷‚¨èˆ=!ã�‘©Yâ‚ ¹Yö‚ )¹} ’=¹Yõƒüˆ� L²˜£ ¨0’²¹)£ Ÿ¹o¿² Ÿ¹<£ð¨É +¢þ¹O£ H˜ï ñ’[˜1¢èˆ¨1·’Ÿ¹Xâ‚ $ÉX’ö‚7Éà„KÉô„üˆx0·’˜‹0>¢ÀÊ¿²CX¦4µÂ¢H˜W“• ­ÉoÍ ڿ² Dü€éÆox¢­É.“ð¨è0V’VÚ¿² è€éÆc£$VÙA“ øÉT“[˜FAL²èˆZAë¢5˜n@j’øÉ[}“´Ù•@0’ÈÙ©@’$ÜÙkà øÉ~ôÙà„‰ÈÙô„ÜÙv¤øÉV=Ò>yé‹£´Ù1P>¢àÈÙEP+¢5�áauXYŸXÎÛäÃP æà¨5´�º]^¤"Jü ^Ê"ú+2 ú>2 ß�-1#ó�7�A!é -�F]@�¹!ü S�lf‘ò!#xz‘“7`ôsjõ m€ýk€íÚÇÿ´¡”‡ÿzj[Oÿ@4%ÿ õéÿÝÑźÿ­Ÿ�ƒÿubTEý77€ ûÿé×ųÿ�ŒyfÿSF3 ÿ úçÕÿ´§™‹wdP°àÿ(îÿÚȶ¤ÿ’kYÿG5#ÿÿìÙÆ÷´¢—€}jÿWD2 ÿûèÕ¯�‹Ó€ÿeR?,õ½Ë€_�‰uÿi?�ÿxg\Yzç &§1èW\z÷ 'ö Vz´åëY[ò(JX(?²õåZ]ì ˆõm €en' ,¤:‘¤Â eYYìõð:‘ð +èñ',9#:Ñ 9#XX"ìõr":r"Ò�+eXDs!',»#: j&ä¼"î`iWZ$,W[ìõD2' ,7:$24;õ=@ª1Vì eWb6ˆ6b1' "6b1:H46b1£;X6¥Vb6 l7¾5We5,[2Vê"'Gm'Gð¢'Gr"',VEô%D6,þ„PhvgZ\[÷± zBaY[vçm«pá`haXÏVv«p‰BXV¿VdfÅAhþ'`s[Voi~§÷ôâµCZ½A+ö±GZ¼BÂ@²F«YX½AçIXÎBVçIW\½AÔIWôB±Ô@—A¶AçD[ïYWsi»C®$BWàCSYóCSPî`ÂFR^õBSP®pFRZw_W[ôB­ÄBDGQSSP£V¼B²XSÄYôBÄYáCyWÕbÎB P|@Y_ï “zBY[ZÏYp†Dakц@ˆ``Xãp¾$fXZsAhp° Ahçd†@ÿ`hXaßbØCqhXÿ^W XZV ýcX^ Yo1Œ`—A“aŒ`aÏX]`sb\V'”³dˆ` ²e[på ²eX\p²eWWá|`åc‰`²eVV}²dW]V`þ5aW\VWVW§ Usº`uX’r !uö`¾`5aVåZr !p`g}uÙ ¼àEpX“rvwß_|+ŸsuZ*âàæåZïàæàÿ…(ð÷‚˜^ä³üˆ$ðL²5˜7ðë¢H˜JðÅ¢5�úý€ôóoënlóâÿÒ²¢ÿ’ƒq`ÿP>-"ï)æ×ÿȹª›ÿŒ}n_ÿPA2#ÿöçÿÝʧ�ÿm\Jÿ9'ÿ÷åÔÇÿµ£‘ÿn\J8þ�òßûÊ�©š„ÿtdWJÿ:- þ¡òåØÊÿ¼¯¡Žÿ„ocMÿA6!ÿ ýñÜÿÍø«ÿ¡Œ�n¿YD/Õý÷]VV YZï[X X¤`vlý`¼àoWkfWY¿` kôˆiò“•poXff[W\�l™`“¹™•jlÿ_[oo WßXo ;¨bl\ßfîô‚\½Ze”bm n�ær‘y�—@l[o¿fvsp’[fy�‘‘bðy�5`ÿlZY[Vb]wTô‚Z^ƒ—ù n�s`lY^[÷Üà“[Y½Ûë”WX ö–W“ ê�õ�Yi�„–žn”Xfy�á‘X[Xö��P4 �™¹Þ”ð€òÊ“X:�™Ž”Xy�^‘/W_oo†” n�{@÷lW]Ÿ�t|š’pYÚ�£¿\VX`©¥[Ÿ_^`ê�Ÿ¢[ï_VŦ^_áÒ§Æ�© Õ¤Y”ö�º£^³  ö�~¢[kX]`p[Á ÝÆ¥øöa°`lWY]\¿wbs áÆ¤YïV^µYV]{'µX\\{º`‘ 7°Tµ2± 7°=¡W—X]ƒ— n�½‘WŸWWXWYhrl?WVX\°:À/lW\„¦n�õ�äh‘„–n�^‘V[[¿fWV\~` !ÖÍ´ZYÖ±]Û° ¾àµWfZ][Ú±|ò°*±[X[p+ÃÄXÃÀøÿk[]^Vam`¿bl+'ÄVÍ[0Ã*8Äý�wu`pv `î!²OÀVTÄIÆV\TÃêlÇYTÃIÅV]\²0à [À“ÃX]0Ø7À—@¨Â7À^ÂVÿXYhuf}ê¢ÇY0ÄÖ\ÄVW^ÚÌ¢ÆW^0ÃÕÜhrêÁ]7ÅVW±XÔIÀÄÃV_ÌÂJ¢ÆVÿÄ&×ËÃÖõVÜÄÁÃjrXÿb`ud÷pÐoZ þ©@X{jufî²ÀpÐms`dl\Yû€ûo|¤Òviffw Ž\’šÔ©@‰`ü·Ð‘�jh¶þ4aj__[\d}¯ÖÕ[ßкã×YßÐ •ÖÕXšßÐ æZ^îÑç]¦ßДæíÑ.æY�_îÑU?åÞÒLåZ«YZ*áT\æVßÐV.åZWtáyæVíÑy.å4pdk 2cÜ�à‚àk ¦ä]\?\Wbk µçtáéÄèÀà¦äZZ[JÎâ»ÕÓZÁ�ßÐ ñæÒ‚âñà`jÒ`€îmÓX[dÑ`xló ê& ôfxuA+ð` ð+P'ð +ðŠoÑW"õ +ôTó8ñ |+ð5`ia\V`)q±–}bvñyò—€ôZ¢ˆó�õ©@zñ�ô_[]¤Ð�¯÷ú€Â �ð^ï!\u^ ïõÞ—@iYVY àöïpJ$ôsdç×o€m€ëÿÖÁ®™ÿ„oZEÿ0ñÿÜDz�ÿˆs^Iÿ4 õà˶¡YÿwdO:ÿ%ûæ÷Ѽs’}ÿhS>)ÿ ùëÿÝÏÀ± ��s“€ÿUI=%ÿ øáÑ÷²«”†ÿwhYJÿ;-ñáÐÍ€ÿ³£’ƒýtÍVG7'÷ûðå×É»*±ßli_XW* ³™ )²ÛV^¬@äZÒÞôïäX]&ß²ï$½‘¯ld^WŠp4XÓ4@° 4Z\þ� a@° $ï :ʹ` NŸXr:W\FÞ $˜@°$®›‘ijX~pSÂÂlÿf{dujzfuoS)²dw‰‘ �Õ@° �½‘d^XÙjãôêjà‘¡dpX$$@°]4d[W‹ý¤0 @°7&Š ýY’1"U(@°½"Xå[þ�%À^2$dCp‹ sÖ"ò@° Ÿ ½‘biX^"@°$¶!‹$€Ðlaa^VbY©@ Ý`V½õ�Õ"~`0Vm[a½Ò"ÀÙ(jàý#ÀòÙ(jàá‘a]\w–,4[60½‘a]÷ îI1¬��‘¡wðþ�$†ñ^ã0é`Yéjà2Y…2WýaX\É"ž8º! $„0þ�†CÂ1o!Ê8Xã†@*±›@^m[W`æ7Zñ1 æ7åXñ1 †@õ‚Zu]ˆ'�Ü`�1•B>”ô+I••Z]Xo�WfmZA’[�XGbólY’jJ`kY[¯zxjGWý€kåY&AUGž@ikX¥]�©J#D ”JbçgXW-‘”J`gW�\�@iVF;‘áCL+FPWkö@� UG$“,‘'Z)” [”SsbfQjEXuX'�" S1•lR>”•lQŠ•ŽVX_A�@�TdV¬Qb¢C¸Z`·@J�@¸WW<�¢CyVëPWk­`ÏA£W³A$C‰ jqT âYß@+’6j>�øAýEÝ`'�·C ÷WR+’uiþ�LR£W1W—YŠ@c@�@!jE�°ý€xC—˜QR±SÞjmdÉjbc%Éj`$@�@ýERp€'�À�2a1•:r*p¹AGyPâB —³ADdqz")” QUdr^RÉgUg2w&‘c Gw;“,‘½1� ôóg¿ï pnþîÝÌ»ûªˆvdÿSB1 ¿þí!Ëﺩ'ŠwÿhXJ<ÿ*ôÿäÔ¿ªÿ•€kVÿA,ÿíØÃ®ÿ™„oZÿE0ÿõà˶ÿ¡ŒwbÿM8#¿ûéÛ©€¹ÿ©˜ˆ|Ïpd�º�5ý%Á€ûçÿÒ¾¯ ÿ‘‚sdÿUF;+ÿïÿ üíÞíÓ(ÀmWk b ßds´±mW?Xz Ç—²ô�Çiû€*°ô�bmî÷€F ˜ië%p‘m   ·~¼‘mWVuV\Œ yÈï9’[WB˜yZN°B˜YYB˜ú¹B˜W[Çî˜V�˜V[q��¦°9�XW ˆ�u$PZ¡±”Ü ug@¿�®“Wµ�•0Û°© ¿�ñ‚V÷€ û…V*�•V“• ¢çi(�S mV_ß_Æ$£]]ïH$£[[y. +‘VZ .¥º¹Q¦W :¥WgZ.  ‘\!“á(�‚ÖŠfü½*±w[absXÖœðó‡£[0"f}½wV^VZ¡¡y¦ ü¡ubZZŒðÜî€(Àlsb§ðXnÒ ˆSRsbÉð#~Ѣ蠺±s3C– ².qfæ#²Wi ³˜¶sD-q e&¶ž@zshX ²:ºkkX¾rè%·³C ±dºbhWÒÄa :·Qh÷Bg.�¸Wzf ²޹Q" ± %·1S ±°ë¢ŒYS– :µ�S ³4⵫Rz3°µÀTRI² õ¶az‡³2ÊD` ± Çb÷B\Ê C`t²2Çc ±£µ’e" ± Ç1Q ³µ¼b—bmZ-q :µÑbzr³ÅÇs«ÂÚÇìRI²)£µdrzƳÙ`¢ˆ² ÅÇ{s ±CÚb±³ÚÇâsêÂ×Q ³‰ ÅǺǵ—�¶\°×p^]Š Là–ÄÒ[V1" LàÙ¡oÿ][haW\YdS½ä×XïÐóÕë[VýÔóÕZVhõdÿÒs$oXXZü@)åW^Wg þ–¤oWWWu~uã ½7Lá`uI ½TQoÉðëÔdëÒá½-1mq f�w_XìÐá™ç §éï§æ[]¡âÉê äÌæ/ ëæZ ãü곡üéï• ëæXäã /ùï ¸äÙ¡6ðWY ¢á  �Tø<ñ�2ôV²â Š/÷VÃâ ëæ™£àT—ú —÷YÞ¹ùºïQöWV\²âÞä^!ôsi_øq€o‚ÿâÖǸÿ©šŽ‚ÿo[H5ÿ!ûçÿÔÁ­šÿˆucQÿ>,ÿõãоÿ¬™‡uÿbPC5ÿ( üÿðäÕÄÿ²¡’†wzik€NBo€ÿ ýîÿâÖÈ·ÿ¨”…vßbSE‰€ëÝÑ•€ÿŸ�‚rÿ_L7!ÿ øâÏÿ»§—Š}hS9Ë€ÿøçÿÙ˶¡ïŒ}³oXZ­Y0wSQoi`mÿWwl\xl»Yôd]V øË øW^sï¸ é sxÛvi.mm‹zdb:Á‘,6ËXZ;@99ý²oW]_Wvl\'0ò �îpVZ‰� þN­‘oW\ûýt— WX[NÿZzê¾ÀYVz`bò zGë•×Ëå”CÖXáåÒW‹W[Üù# !Üå¿W[Ù’9(W H å‡VÿY\[ \Y ûílVY[]áo b"i0;þ(m}dVVZ`Ï [` Ü‘i1íü!mvË�viuÿfdam`bl÷é;£vZ·nÊ¡mu\¿¾à€oÿ`dvZ[Z\ÿW_gs`o`ßÌ"oXß^Zg Uãmmz” W‹PÉà€ÿjdfv{jwÿbiojpj`ÿwxufdsb/r ~Ë#hÒ"G¾5’`^VroÀp©B7µàO0O7VZK0O5Z^J1r9JµàO0r7m1O0m`WßsbaúM°Ì"`W[oSO0%¡^÷€ û€PÆ3%�û€6‘^“�ÎÞ6i(�ß�\\4ÚÐè‚ Ö£m\Ñ çƒ% EXÊÐè‚ î€%¡\÷€ Ï4\¡Û4}¢'z�§1[¸�è‚U /D[÷€ Ï4[õ1ÚÛ4[!“$†¢mZ¯_V aé� DZ_^\ p`é�§ã_mZZY «Bî€þ6‘ZY[Vb]KT/£Z‘Ï4Z�¡ÊÛ4Z“ê4ðBiùŽ@Í!Y\Vswgxé“QPÊ R[QU*PüPß�Y[ ^ _Vh Æ�qvCTW^KPÇ?XSWY‘bX\IR OX¥\[StZoQ bX[*IROX[[S«ZoQU bXZIROXZ[SQOPåWoQ bXYIROX\ð]Qh\ðpPUbXXIROXX[SAhm`pP QVWS!OP®‘Žd\R‡koQI‡iíS šiÿTÁk’oQ‡i[c šimdTûkoQ‡iVIR ši$ËÐ]Q5{oQ bP%¡iY¡Ï4Y�ÆÜ3ÿX]^V v íIC“X]ÊÐv ¨–uP’p ¥v[‘qH–p%¡ö�Ï4‘‡pô߃Eî€Ò$þôóvrºpíÚ ºÿ­ “†ÿyl_PÿB4&ÿ ýïáÿÓÅ·©ÿ›�€qÿeVG8ÿ" öàÿÊ´¦›ÿƒvi\ïOBW ÿÿóåÙÿͽ­�ÿ�ƒufÿWF6&ÿöæþ‡Æ¸ªšÿŒ|iVÿH:*ÿ ùæÙÿÌ¿­›ÿ�oaÿQ>+ÿòáûÔ~@º¨–ÿ‰|o]ÿK>1$¿$¡o¿wW *>Roÿv_ufZwuXæ+ ìl�Wùâé’�sW áž•iW �’\Ò•�;•Y ’íª”\�•\'� ª+•\4� 8•Z•¨J•‹�U“\•Z�ª•Z'� +•Z4�|�ˆ ovYuf ’¡\�’Ö� “•Y*�+•Y'� þ–4�Y�õvY@–è£D£U“û ‡¡dÊ‘s�¡W�šA¤sI¡†O¦'�¨+�Q¤4� 8•X• ¨J•� U“\•X�Š+•X'�¹¦h¡¥X"‹–\�Ö¦U“\�A¢äÛ I¡N¥Û W–\¥XZf¢l¥°W«z¥XÉ‘ ¥W"�¦æ¥K±U“ù¥K°¸g¢N¥K°W\¥W…Xf¢l¥�°… z¥W*Ρ \¥VG£N ¶´"f¢l ¶³³ö ³UÓ¶YH¢öYf¢IÓ¶r³ö�³l þÑ‘s\VpV\Wï^µÃBosZçVsVÕ DÇpWVóDÀsWWhh:PDÀö�sû€5*â;orÚ ^DÀ‡år8@‡mW_—Vuw@ó`#¡ÁbÒ¦ÀªÀö�ik HŽ¿"oiYÕ ÆÀiN’`\ÆÅ<0ÆÀšèiuÐÆÀGÁgém® tà©xdX[ŸVŸ ÔõÀ,Õ¬0"ÖXlp"ÖõÀ ÕV]¨PIÖÐÉ IÖî Щ o`ßuwX\Ðhÿuffmã{tÑX €_`WVvm;PÑÿ_\_\]`pÿmWmi ë]£Õ\Z[®Õ ·×¯YX[f¯Ô ·Ô\ÕZÀÐZ®Õ ã×YXUZÚÕ ùÙW®Õ·ÐþGÁ[^]X`pýDÄ[^\Z`s³ÂC+àZW?à6/Co[@À³2Xà×]`ñl[W3\`-ð}Ã[W†@>ðP{åð@Oð{åX„à zæUW„à zæV„àzå V_„àÀæâ0ÈðÁå…]„àÀæN@ëðnäVQ[‰ Àæ‘áÀæY„àÉÀæŸáÀæ­á²–_äVVhá=ðèY¶`wYW€¤/@Oó[î�fôXr wzðЀöî €ö�š÷V wõ$Ë)ÏõZûÏñn‡ïpJôsmús€ýq€óæÙÿ̸£Šÿvi\OÿC7+ÿöèÿÚ̾°÷¤™9€�vÿh\PEÿ9-!ÿß¿¢÷…w[€[Mÿ?1"ÿöçØÉ»¬ž{€ÿ�sdVÿH9+ý�€äÒÀÿ¯ž‹yÿgTA-ÿóàßν¬»€‡ýuÀN<)õÏ‚ßݸ¤ÿ‘}jWýDë€ úÿ�rdU~�p]Z`mvîÆ1॑íÐZü¾í\[Xpwg¦ ÂѳVa1à[^?,ùG]\@ù—Þ]d{ []UZ@jZy~ßYbpjYbZz~\_0àù ¿[ZWpWZåWz âVpU WYô ßXí WYó jG!zý )Y]Yp ŠN+Y]! Ñ�A$Xvg¤Š)dˆ)ÃX]Ž™ ê”ðpQW”ðz X+Qjì!z à+Z´©ó+Ÿ à+V0à®WW\Y@ù Wõ[· T:Y^p­A:Y^ˆ)Wª ™)Vt0»)VÒ,­:Œ ¿-ÿ üíïÜÍ1®žÿŽ~n^ÿN>,ÿ øè×ïÆ´U‘€ÿo^L;ÿ* øÿæÕijû¡y~lZþƒ6%ÿñàξï®��€{jûY¥€7&ÿòáÏþ·€®�Œ|ÿl[K;þ¿ôãÒÿÁ±¡�ïnå€M=ÿ, ùÿ8) Oüd‹#N_• cŸš%ï� žøˆìš!�A ìƒí'Ú,–Z· ˜ø‡Z\ªx@ ˜Z Q ˜Y…_p lš(Q*˜s1°J�‘–b1J˜Y]·  l™]x@¿ší@w°˜bp �êE \^0à1:�õ—[A�ó™, ‘– Pž™ó�®™R(©í—�˜nQi é…X_Á@  |§í@• Š©^ P:˜¶! �i õ•zð0à Š©o!j(¨X²@ ¼©[_@�¨X[]P1Š©[¢ P:�·íŠ©Z&x@œ6¹í@Fº PI$¹ì Fº F¹B6! F°¯¦—±i¨X ­¼¨W_ô$¸WZx‘F¸W_íF°J¾¶^Ú޹ˑʆS°›¼¸� Ü#É\ºü¡¨W\\0à ¤5Ê, #Àж\S° d5Ê0Á5ÊàkÉ%[t0͹a1 Ê²@kHÈ[,š¡É PÓÀ£ÇQåÀ-•ìA-y¨WZt0 åÉA±‰ åÀ¾¶YÉ¢åÉs1�KÚ6QKÚ²@KÚ• ª9ÙXTÁÓÉXà™߸ R³Ú• ³Ð Ö‡AJ»¹W/á ÕÙß@»¹¡VÉ¢³Ð ç¡ÕØV‚Á@‹@.æüA;éx@„;éS° ;éy‘;é• ¤;éí;éß@ÅFgÛ^\�pË­å]Z§dºà‹#gý}Ê»æY^dÚà ÌäG ¡ééÛ!Úè¦ Aéç@°^!ùõá ù•V„!÷‰%gÀ Üéç™Ád ^ø[] Úà-“gr0ˆ0€øUX¤@ÚçVåà øRÅà ø¦  øV¥@èéæð>Aùð]ôsmó÷pu€ýs‚Þͼߩ–ƒˆÿ ûêÚÿʹ©™ÿŠ{l\÷L/ €ÿóáϽ߬œ‹�€i÷UG—€'ÿøéÚË»«›«„ÿ\L:'ÿÿïÿßϹ¤ÿŽxbHÿ4óýmsWX] [ÿ am`blïŽäWX¿ }fmmr+0�÷ø{ijwÏfC¦rúufd�øßhuffp ™´ D!b?mf`u5/aur{q D‘r�?mxf‘|îç ü,‘æ[`¿uX¼¾ZªÆ ÌWÆ ÌVÒÆ Ì`sðд`ÿVÏpNá"sÿlpjgfw¿jsád!s¿irwaü' ¿Z^hWg9(dE 9%oYXvE àZ'òT!' )@sXZvi%� T!]9%Wrd!i%WWVT!y#r`ŸVX` `»!mêÀ Vù%È(W þÖ$jbw^ç 7,‘ë#XZ¡ô*`ô)Âp:Zó ô @raXV¿Vof(B}ÿYYYmaÏ R0i2[mÿabW]\s · ,“[bú°@h0HŽ2p2  h9­À x8ÂBRh0Y3åðذkIª;`Pª:c1h0þ)B[Z]YsÞà8Xsà8Ws+à7\­À Hú0ýh6Z[Yas©¨@.EX7@;HW"7@¨@ã3r2;Fú³ jJd [H$ÑŠIhlð[H`P jG]^7@·H\7@ÇJ¬ðÇI‘`Ý0[GË‘÷HS°$·Hõá÷Hh�÷H`Q͵\F[[H@CYdéCXS°CXVs• CWWë  XWà $XS° Xh� CPmD‹WV »W%ãCUZMvÁ¦¬å˜’êP$-“Ú“ ùWQ² i†± ùW£0z�)hC¡ )hXS°êWFáYhÝ‘Yh&�ùVmvÙ²ÕØ‘U³Ø^œÑÕØ^ÁÕØº‘J˜ñ@% ž˜Ë‘I×iȱ ×i0Á J˜5\”A÷ˆ\^a+zÊÑÐ +y]Š‘¨\Z\pw ÷€ dtS[—±pzW~qpz(³p¼�+yX­À©zS°‰÷ŠWà÷Š4¡÷€÷0ôó]Ô×vtìÿ×­�ÿ�€s^ßJ5 !øÿãͺ§ÿ“kYÿC.ÿìÒ¾¨ÿ‘}iTý?]€ìÿׯ™ׄqyJy€"÷ ÷‰Ëµÿ›‡qZÿF2÷óç©ÍÀÿ³žŠu}`³€2 ½€ÿáκ¦÷’…Ók^ÿQA+·êûpôY‹^WY‘ĉtˆ{È…Š ‘ô†¡(¦ —·¼YšÀÇßÀ2’V`÷ ½?”Y[`ÉK–G�K•­Ð¤e–G�K�ãY.mNsÞ�˜í ô ‚”[“�!®’t³ݼ˜í�î„XBþ  ’é“!”¾”, 5å—DˆOú˜^ !ú˜tˆ5ú˜Š‘‚”œ¤÷›í¼A’WT�¬K•ÅPK•VT�ôº¦G�üX\V¹Ì”X[Zˆ— À“�㨵Î�㥱–߈”“³t“”³íˆôç¡ÿ Nµ!Nµ0 8NµD O�º×„Nµt{NµŠ ‘Õ¶¡¦ë·· ¼"²é¨‰3µþ¨§”À±–ˆ»”>Ât Δ>Âí(á�ã¢P²&exö NÄ, b¤�Ä^‘ M¤�Ät¯ËŠˆw¤àÅ¡÷”õÆ·,¼”_Vˆ— õ¤Ô'”ôÕ±–´HÓ[¤ˆ“”HÓíôÐÿ ˆ †Ô!†Ô0È5†ÔD OÇÙ@e†ÔŒ”{†ÔŠ ‘D 塦#æ· ¼þ*!W\[XVYß`bf¨“W\ˆ—jÕ`♤§”_à±–»”‡âî¤Î”‡â'”á”D_àÿ÷”Áä ¤DÁä0 b¤Áä^ M¤DÁätAÕÂãŠw¤¤)õ¡Ðëí ¤WŸZW`K”3``SK�¿_ÆÌE^Æà¤ç‰– ,Õ ¢óÄAÕèVÕè¼ÒÄ“�>ôs\¿áw€uþ‚Ö¿«—ÿ‚m\LÿA6ÿñÜÄ®ÿ–€iTÿ<&úÿãη¢þQ…xdOÿ:% ùÿäκ§ÿ”€lXïK5� ôÿÞÊ´�ÿ‰tgWõœ*€ÿñÜDzÿ™†q[ÿG4!ÿúæØÆ±�ˆs±€_E2ÝôûðÿeB2"ÿÿõëß-Ï!_[Ä–ΔÕBµAÐÄ�Õë˜÷”Dû£ ¤û¡¤dû-§ 8¤9M¤ ûeäb¤ûp£w¤|¢‘�x² Fä^ÿ\^V a dh3h070s]ô|Ph0‚‘\験”Ú´(AÐ!Ú[ï”°þ"däΔ"Ú“§”Ú@ë� ”  Ä�;#î•÷”DO$£ ¤O$¡¤dO$-§8¤�)M¤DO$eãb¤O$p£w¤TÐ%‘�×VÌ�ý@’[YX`–K”[Yið 6G�.zô[XY8’ >�'2´¨ 9‘ $5WX8’ > 5V^` K�‘D[0œ—§”h1Ø•G´Dh1ë˜ ^´‘5£ t´$‘5¡¡&H$®Cî•÷”ÂD£ ¤ÂD¡ ¤ÂD-§8¤YM¤ÂD,´ˆb¤ÂDp£w¤CU‘l÷�A‘ZV0¾ 3KZViðrP1‘ZÏ Ú9‘a4Y|rØà‘I²–R#— °’S\Bs×°§SÄP#—»VZéÐVðP•¨°Ä‚#|Y¼>¶¤PfÈ »VYs×ÐVJ` ØfX[sØ)fva;èfqÙ©)f7ë »VWéPÐVÒ`Uø›gXs×±gðÿ`¨°õ!YwÃT%sê€.p1’sjVVVõà.p¬p?pΠ"Dq .p•‰– õ¤atjħ•ɀŕ“•ŒrYôˆG´È…ï” ^´È…£ èt´È…¡÷�Ô]"ôóYÎïðxývØÄ·›xZ<ÿâ¢ÿ‚xeRÿ?-ýýå;¶ŸˆqN+OôèÞUÿ¾®¢–ÿ‰xgVÿE4#ÿðÝÅÿ¯˜ƒkÿU>)ÿûäϸÿ£Œw`ÿK& ÿèÙÊÿ»¬œŒÿ~o_G/ÿçûpo�’"¡xmê’ÿX[ZooamF� :+bÂ…Ë…Ô€,J±Â„W_̓Ô€¾ˆ¯WX]̓Ô‹W[\̓9œX̓é4�}ñw-0gfb¿ g P‘X½\:0óÇvÝv¨¡ 8|òvfÿoY[Vh†,%3€�V]…�‰�_‘¯vfVW…�™—Vï[h¨˜WhᷙĠ‰�,auf`ÿdviffwmÿrwxv ›{Ù‘°^’6ø gs· `¢¢À ôUà  < rwrÿpsffm`aÿmfvrmdfÿuufvjvwoƒO¢mwè á¥S?¢¨¤P;£()M¦å&C"d¦›I¤T—¢ÜXd¦YXòW¥¦Å h¤Pa±mw:ºM ,aï£Èd¦eÉ¥¦ Ûè¦qÚþ¦7ìd¦®é¥¦RûB·ÌòªdX·¢ðؾh¤PNÁmaµpYía !*Krm__}CpZ|ß¹\—ðî»Wî¶Zç°ïW^ Ë] îË\ Ë[ îËZ ËYôî° ¡mRp ®û Àl~X ûD…ÂiXVû|òh^\ZV¿bpò�Ça×p«É`ìÐñðï’¥�÷�†Ág Zs€ÙÂYáÆwXáÆWáÀü—áOÐbifblfu. Ñý`Ðojpj`ÿwxufX[ÿ^rio‡~Ý*פÀ7Ð,;Ð�Ñd{¥ §@aÓ"‚ª`ðaÓ®ª §@,ad{³uo4 ¥SªÐÛ©‘`ð¦Ó»ÒÖ7ëÄê×¼º³ñÐC�ZbOm;Ó!ãX'á­,êW\(à?ëXr(à,àð‘a÷�õ„à`,Ðauxvÿigru]Vÿ^au\XW™ ËÀríulP‡àYÏZ_ �íâYV}W‡àXY\ËÀ­³áppEÐW�ÿrsfpfpdŽÇ0 ÑéÌ€àéªíëYÞëíëWÞëŠíëVÞëíà>ÑÖä {Z°1{wiàâVæàíà³ábEо€áfvbxwÐrÚÞ0QwÃ`WÀþ Œev ç¸ói´4$ôÕ$ °þôsfí yú€w€èи€bMÿ6  öÿáÌ·­ÿŸ��sÿdUG=ÿ+ ÿûò1€ØË¿ÿ²¥˜‹ÿ~ocPÿ=*ûñK€Ë¸¥ÿ’l]ÿJ7$¿þëØm€²ÿŸŒyfÿS@-ïô±°Î»ÿ°¡Ž‚ïq^�€8%ÿñáÿͺ§”ÿ�n[Kÿ7#ÿíõïæÙ uY[þ=0V\[aulwg�Jràïü'0àV_^#�Œèï"çüͰÿuYV[f\^Zow`ëJ7XX[V ½üNëWVhnbZ]kZlW�XXŽ‘�y�nV ã^éÂëpIBÅ_�ä„ áþNWVuZvç �˲#shï\s *fZ÷s )kf\'v8,  òä!F!  †ÀuX[Ÿd· Jv`dµÀê ñ‚# Üõ u ÃÒuX'W[fŒVn¯!‹YYU»(ŸVF»(WVU»'‹Y�«¼õ)X� 8Y¥Y2:2 8X%X2@:2 8ì ’�f:2 f:2 Š6Wp5 »&¨12  ²:`3»%¯¬3»Ù5W"þ%5ó0%4[ò1’K4þ8q4þ6 Y²é Ž%?B HW‰[ô124`A84H[`A^4lH„4’J|yClG`Z]WkW•¸JVÆAë4¿AYµYÅB¸HYYØB–ÞHXXÅBZØB–ÞHWVÅB*ZØB |ë0r!WXd{ üô¬ði rÂÞ¢uVXXv�µ4mTÑ� xUW\Õ0…V Zk…VY~xPr! Á÷NmR\{X÷1lS\uYã ÅWŒàÅVsY ÅU[uöÀìWÐÅPšàt… w là‘•fub`ð‘}ó÷�n‘|[Vd_pÐ^’|>@>`BhÇÀB`7bYa#Be¬ð>`nhÇÀ™`e…aB`ð‘{ó÷�Ìaxmo —_[̓Ô€§e\ºË… ¹hZ^̓ J¹hYC• ¹h↠Ԁ(Æq«a—ì†[pʆ¹f,pú… vCq+•É O{D”Ô€áxmŠB‘^;à,à׈¯f$Ô‹ÄfÔ‹ÙfÔ‹îf½Ô€øôóv¿zxþïÚÎÂÿ²¦™‰ÿ}maQÿD7'ÿ÷ç×ûÇ#ª�‘ÿ…zmXÿJ8&ÿðÞÌÿº«ž•ÿ„s^Mÿ<+þaßÔɾÿ³¦˜Šÿ{peZÿPE9,ûyêÝÿÒÀ¯�û‹‰iZMÿ>/ ÿõèÙÿ̽­žï�€§bSÿD0ÿüîßÿÐÀ°¥þ¿ƒsbR¿A0Í^×]VZæ°Z?Àý…ÁwXow éfÞ²°bLàoW÷¹ ˜aWv—V^‘¸ {‘¤4“*�?�1•Z‘j?˜Z*�O˜X`�‰ pš*� ?�  °÷A“YVvWOXs ?•¥�V!!´?�ú�w5P[VÏPÞý¿”V[Y_ øÌ�7`Ò‘YV)U,aw ÀªâÂw Áù¸P  vxW û̱vwd`ßw`arr(°û�†Æ �ºôv…o^0V5 ½“7¡ ý@¦WZYsôO¨©�O¨Ws>O§Y[s|¨x ñ?“7 Àwsœ@¦-Às?�yÀvím¬ñÿÍ’vjÛ^_ ÀRwÂvh?[wÑlRÛ¡ðL â 4¡Ü mXwqï©" ï©i墨x  ¹iâ§iûï¦XmWwYâ �¡abnÔubV\°YanÓf¶Xp´… x·`ôf°à°\°W*nÓ f¶W”´ f°¡ÏaX  ¼¡_ZÏ`X{ pv\ÿ[V^WVv`¯gmvïðž²\ÿZ^^vpgùí°¼¡[hmdG ï6aÁXP ÀžÄX6ÖÂÁ‘&À¡w ÀÎÀv÷[2ÄX\ ;IÃZ RÅV@ÜRÀ4¡W^[.p óM Âì oÓ`yÆ)àaã£f-mÒ e¢&ð Åwb Åa ÅøÈ@ Ài±\[\\ç² ÿ¢ÓÀà±ç²IÞÀŸ±ô±ù± ÞÀøÝøÁÖÀpgrvØG@òÇ Ò òÇZZªù± òÆYüÃÖY’ ×:×"Ó:×3ÓºÞÀ *ÿ²uÿvV[Vfósd³PP0ø"ÿm[ov_X'©ØdµÐ«Ó¨×m³Ò¹ØmªÅÒËØf³Ò¹ØfªÅÒËØd³Ò¹ØdrÅÒËÐ7`ujZdPoR¦auh>@ÿ XVYV`w×í¹SgI }Ξ#`mÏô’Mu«ðrå´PràºnQ_À@´yS_Ý[j`³_Z—Y`õP—à§ãXª®â´æW®â´æV*®â´åY­ãxPçã’½ãôæÍãôæÝã ŠxT_sQ¤à'ó�PJ¤åXÝã¤àr!_ü€ ¨ §âWà ñ—àQóV¥ I\ôZ®â —å:§Q jöYvöÍãá jö+�¨ r!\sWÓÅPÝ_Ç Æôð ïšþôsmû {ú€y€òáÐÿôªšÿ†r^Jÿ6"ýÿìØÄ±þ5€‰uaMÿ9%ýÿéÕÁ±ÿ �~mÿ\H7&ÿóâÿÒ²¡ÿ‘…xkÿ_QC5ÿ' ÿÿòåÙËû½™€¡’„ÿwj]Nþ§‚ñÿáѲÿ¡’‚sÿcUG8ÿ(ùÿé×Ŷÿ§˜ˆyÿfP;%ÿû»îõp ^§`wgfëZ^–rpVàá,¦aîYXóýp®îX[Zó ýXµVóW_2 �ýqîó ýÀ‘f·_Vp¤ ¥âw_f[Yp`”Ð u®i[Vp™ …ZÛ[p”Ð RÍ“fY?^p\Vui°©\žd p²P0üu‚ pV\[�"ÜXp^‚£x¯W^Vpcà õ\X š uW[" £+d^ m5@ Ý’,"Èü05&â4 xd[ápQà`4 ("Zp`J™ P%Zp\ `%â~4 ‘† YVm¢\ P%–!\ `%X[p`®»Q$X¼,L�¾%W]ámPa$˜Ö"(PÏ([mNPß([”é0Ï%XØ" Þ&1é 9ù 9[ܾ nPwbŸO^¹Rw`vjV@åÿ²Î]1X d0Þ‘`vfj[äh„x1å�0t5ÁàŽ6`¯s[q6`èPPª8#Àd0‘`CÀ 0ÞZ3Yp Ò6XVs 0É3XŽ5ålz1q5@YNHXF¥1"HÇY"HöPÆ5l[+Ò5lÛ0XFè0Å ì5lƒð0x``ì™@©� À“_\bõV(’¾$_Yb\µ\K�ŸG[\;�ä¯IK�¾ ‘BYbZ’ÏJK�ÏG˜@;�ýÏEVwZV~b×\WY RºUfPœÀ$P  P>`ljw x¶`$Ts\Xu`Pà ü “ÿ\Xw\[ao\“ IVcQaOÀkXVfQ |ZxP $PxaP?Z[t\ 5TaPÿX[o\ v{d«®\i¾P®YaR»SÖ\ÑQ®XVºTIþ\ÑQþYâT&l*ÑQ®WW¹UNlÑQ‘�QfâTvlÑQ �VUa `ÑQ vh1eé ±lÑQ ”\Xf^dPgW ÙhVåa vfgW¼SûlÑRŠûhVt#|ùRvf\¥|@Uvf>WvfXÖUvv\ÿgj§ Èê“M ¤ð¢wÿ[^WW]ÝÖ¢w[V ¯í’[gpz`boþ¿tWWÈr{ý ÂwZ\p�À½ “Ànôù|úzëÖÆÿ»¬ž�ÿ€o`QÿC5%» #ãÊ+™û�1iP8ÿ õãÿÙÌ¿­ÿœŒ|lÿ]M=-ÿ ýïëá_Ãc¢“ÿƒteTïE6w ïøéƒÊºÿ¨š‹|ÿm^O=ÿ, úÿìÞÏ¿ÿ¯Ÿ�}ÿm\K;ï+Á÷åÿÓ±ŸÿŽ~m[ûKÙ+ þßèHáÚ?èë xsó°VboǾCïƒÐ]~ú…YVbwŽ@® —g—X‘À—2�û°�µï€VZ?[bsj �s‘®O•¿•YR�oCø€]“t‘�k�ÈK“„’V� Z–•“œk�~˜oø€�•YòT’ H–ÆpZ[wz«¯–X…“ ä›oKÀ–WQ‘à� k–W[Z[&Ж!¡:À诖!¡� 8«o®ø†W[Y$  (¨YJ9À Œ–Wí‘à�§€R�HÐ(§R�ÓPŒ¨u¡¬k�is^r3s�]Y k�΢»Y¯•ŽpV\“pŒ•Êï¢Vð¼¥ï¢Êç©[“pø©z \»¾ ¸[<µ[p`_dàúçR±ñ‘ Ë Nµ® i¸ŸÊË¥[ð<°K’[[ÄØ!“p <°ë‚�³ äK¶à §¶"±m ,<µh#Q[”Z!£°I Ö·!Ö¶ÿÈ"0<µ~ñiµ~*®åµYî´#Ç!#Æ\á§µiÁù ™#ÆIÁpÆ43í½°”YXàmèŸÀ&Ãà°É[HŸÀ΢ï ÎÇ® °ÅíXž± êÉ[ ,ŸÀK’XWŸ´ ŸÀë‚&ÓÙù Öÿ'mêÆÿÕ RÙ!YÙù YÖVi"Ù Ë ‘!rs\0uöìÐ ´rsvÿbuf{ví-L2roýѶX3³Ðxœ ¹Ðšqr›ÓŸopXb=P!ðGüæÕ×WHýìlrZZ·W[ ×q E�>×øÓXÿ×g+æWé%à÷ÔKV[é%àÉ1lÞУYãø`£âÉ ÿÒÔÆq!à åVäXZBâ à÷ÒŽçã žç”Gä–ä à»ìã l àM1jX¹qÿL2çiz^¶ÐÎÄizWšÞÐÔi_𣰳Úóñõ^Zð`$i]óÂ>õš#Ž$i\Ñ£° H—pPóÒ Möÿ 4$iZpV° >õˆÀè0e 4 ûá¶Ðfó$ € 4 ë_à Õ ý\ýû’ôsK¼ë}€{€ðáÿÒô¥ÿ–‹{lÿaVK8û(#€÷çÿׯ·¥ï–‡3€eUÿE6'ûùC€Ê»¬ÿ��}kÿYG5ÿðʤ»Zy€¤ÿ~X3ïéÅ­}X¿2 çÇ€žÿxR.ûâûð†q\ÿG8-"ÿ!vxphÿsu`dj`mÿ^[bXVÿXXVxg\�Y‰ Z¬ ¼ YÏ[zÏ ß Wÿ\z Y”ù ½WÇõ +V"Æ?OïeÛ`|Z]Ç œG �ŸÆXñq¯¿›gà[ÏÔü +Qùמ¦ ÔˆŽ½Ç j-z,ψŽ-z, E-ÊÔæ-Ïû- =ùD0:Æ-U=Îk=¤{=Ö-08…% 0»=0²-vÇ ÿ=LÏ =vÊ GMWM E=|JÆ‘=¡MηMÇM…‘@i�ÄpÒ6ŒeK�xaFñ©pÙÀ»üI’(S\V^ Ü4V³Z 4U\[És°Õ XV³^i 4Pâq{8ò Á½£K{^E² ŠUFó ŠUR„óŠU¡óŠPÚPÿxadujmmÿvvfwWïvsfb.0 ÑQÌVÖR\ÜV4}£rwv[V\›`¬�ba^aŠTwåabŠPŠqwaY?VV\s2fòà">`2fƒ `ŠPK‘=wU°WXwzð#e`^WXdtg’a�ec\<`oa–e`[~a�]‘wa`;b¤°”ºd Äf�X­`_ Ôgÿ1$ þ_€ðãÖÉÿ¼¯¥–û‰gqdWÿJ;-ÿúíÿàÓÆ¼ÿ¯¢˜‹þum_REþ¥+ÿóâÑÀÿ¯£—ŠþƒpcVIÿ</"ÿ üíÝÿÍÀ³¦ÿ—Š}n»_“E8•!ÿú·¯Ð{_ ñ À®Ñí�Wâ`õ†¥ðþô…VW`²¾ÈÑ{_Ü­Ò{×^\V© ôºÒ{^Ÿ[Z` �5“YÇ` �¿ ‘P_`Sf�pM•[V‘[�~(’V[[ë3”¦–�w�O“YV‘òj–Y Àw–X[w–W[w� ‘P—ZYÐaH[¢À“[çs Ê�O“Y[ß_]Ü—^¹é�‘^%”]¿^^`´õƒ]Ÿ]_`¥G‘ }±¤ZX`)¥ßY[`j”]Y’;�C¦H�C¦2 )¶7¥�j¦V�j ~Yà{]X^ �އ£]�ê Š [`fuXœ¦UZ¦£œ¦Y¦£œ¦UX¦£œ¦W¦£?”\YZ3øâ°÷¡ðþ¥r‘ê3“\’‘¶œ�¶©�ä¶¶� °Š°{[ZßWbœ¤[Z]V¦¡Y?”[Â�ëâq±—Ðx°‘tÐ%”Z× ÅõƒíZè  ”ZŽ%”Y^¥Px´º°Z£À·» Àµ]€ �°õƒY\€¡ç°‘Yó%�O±X^\`Ÿf’Ä¥ ™ ƶ  ÀO‘Xk^WV‘ ?”X[¼°y9۰x´>ÀÝ x°ÂÿVWhs X’¶Ð%”W]2 ç°ÞO‘W\[VÞÐKñ’ÃÐ%”V]]`û)¤V]\`©©Æ? ©Å\hÀHŠPÆÃH�ÃÆ�©ÅZ;‘ç´VZH‘÷Æ¥±T÷Æ€  ÷ÅY  ©ÅRK¡ ÖH�÷ÅW²Àûµ ÃVWZ`|ÃEÖf¡ �Ð{ýb/P\Vd ïÏiuhfÿsurwfbwóruyp>âxsfu¾ŠÐordfôPjŸlàá›Ýù®×ÖPuzjvrým@ bþÊÔdxos`ÿubijofdf¿ve'qxÿs`mxaf`¿ur‹þÙ^�[hà%Qä]'h"å*Vbc:ã’@RFæOUFå`V ôjæsU ÐÃxsX`b îgç!§=ží®ä÷IoF¥!eêíúêðÁíã€d#eAýóçíT-ÉWý�ýï}ýÁ-f1½¢ð† ôsq«þïp€}€óÿå×ʽÿ°£–‰ÿ|obUÿE5%ÿõåÕïÈ»‚“†ÿxW9+û)€óåÿ×É»­ûŸ3€„wiÿVH;-ÿ ñÿáÑÁ±ÿ¡‘�sîa€VHg‚ ÿ÷éÔÿ¿ª•€ÿkVA,ÿíØÿóŸ‹ÿ~qeTÿC2!ïÿîÁ€Ì½ÿ®�Œ{ÿjYH7ÿ& þÿ_[W w>ü€VoklÀî¯dklÀïVßa ñµ`wV¿_W^vr`—à;Ýa$Z :$].6H@ W\.Ü%qt ty›`bAfyý Ž ^``_»„qwVZ£ûYZVud?``gDXÀžAa`X×Ár gÀÏ%â!ìp2ìÀÀìVg`¼p4ì«@gÆÎ1*  üA VVW_ÝñÑÂ~X[BP WÜ3’d!Y k ïv}v^­`glm]VlÀ{#`0ÿVgl|^[œlÀ5`}W]LÀH±þ÷| V][ÿZbu|[Vo¯Û²'Y½$ 4Å$—ðV»&ÜÛ(Ñ%-Ú%Xº'ï% 1ªÑ% Ú%W 0]½$”ï%61[½$C9¼%T.9Ñ% .9X½$ .7’ä'—9Ñ% —9Ž5üÅ P|YVhdXçwõ‚Ü0dpó Ðÿ²ê1dZ¬ä0Ù1W[ß1 ä4WE[í0 ñ4@û0 F¯`pF`à0$ÿ6ì1ñ0�P|«@ß1•ÿ5Vì1 ñ0£ |ßV]_Z žðìªoFYyA~GXyA–~F^\yAžGxB¤žGˆBžG˜B žGVêyA~E\§@vmsïRCõBdþ@Lç1õAþ@Ù1VB ä4VA ñ4/Pû0ñ ä0(p P[V aÿu`vv¹ªSWß1 (UWí0 ê5UWú1 ä3{{X¿Xu_N²m�]À  �T€ JšV[� ) �R[¾Á-šUY[€ ¶UxДI�ÒVY¥À àW²À DàW2 j ãT�àWò€ ç°áÐ{jwbÿiufdsxïviw¡Ð`lf¿ ~*eaïm`bl5faufÏ`l D`O±`këV[û@®ÿ£`[[üØŒT`ZVViçRucä‘`ucòÿÿ£ê³ÀJ¤_ÍQ ½‘_ÿÀR¨¡RÐÅcXÌbÒf(1Àº¡ÒfVÌbÒeX "f±j sÛcvëc‰vûcRÐê‚—±$µe¤±Ov€ µe/@3BuZÐvvH�‘vvavvV[ ô‡^;ô‡]ô€O±òî€\W°Äw[bîô‡Z ô€fýôódãõ€~ôèÿÛÏĸߨ˜Œlÿ_O?3ÿ&öåÙË3ÿ«‘w]ÿC)ùßÅ©�]ÿ[OC)ÿûçÜÿ̼¬œÿŒ|l\ÿL<,ÿðàÿÕ¼£ŠÿqW=" îÒ¹³ÿ†iN3}»€úëÜÍß¼¬œÕ|ÿl\L<ÿ, ýóûpuf wßXY^vu‡!ðYÖƒWW/pñ_Á>Õ�dbu à€ô…ö×�“ XY]Wç 7»‘Õ€YVŸvY]à€–XWZ)˜s%�9™j5�)•X"“ïZ˜R5� i˜D‘ i•W"“I‰™5�‰˜D‘©™r5�›àžXY•`ßV Ë•XYÇVØ�ã�µà^f?``hôჵà«[a Êï^ouzVÛàsR` < ¢¿vgp`w¨ú §`+¬‡þ ¢}fmmr{¨ ¶—Ð[¢2`ê¨s Z£pw5l¡V£�t¦,«ßoZ£hu—ffpf© s #£¯amxff©s§a m™¢k¥c!¥ä R`¨) ¿ �¢o®­  -µ®»=u£m+¬Ib_¶»°v¢j+¬Uwµjÿ¬w° ¡ßVA‘W]òØ„)“Ó³Z[èÿƒÓ°ú� í¸s  �в!‘fàݵ!‘¦pÈsfài“/æp‘9Åa‘fà Iɦp $IÈ4Áiɦp9Å‘‘’fà‰É¦p‰È4ÁÈ›à¬Æ¦p›àű\o÷pœW[\YÿVWýoIÖÃ[_ÞÂ…äÀèÀ�¡h0+¬‘dE³Ñ»Ð ZßZd OS"WXÏ]d<ÐîXWEXõùOÐù@ÑV« D´kÐ+¬Q ¿¤ƒÑ½*´XÝ# °µÕ» ÌÖ±½¥ °êÓ¨ÌÔW{zJ@V[x¶àgupm“çÍZ"êÒ�£áX[*#éJèW"êJè B$èJàбç²Ý´^ŸâYY í´Wù‚ù à€ W^aÖ<ÔW^€p<Ð ØÞÇäY{ ãæsÝãælãæk•ãàçâgA`ãægããà›â!ÂZœ¨åAÂZi�òXFŒpUÃaQñ5ó 9Ää`ñGñi�ÉâWb <Лâ¡ÂZ P©äÁÂ%@¹ÀÉâ űÀp3 q=ÓkP <ÐñVWauнõ—a<ÔV²Q<Ð÷†ôs]Ú×�€‚Ú÷À¦€{rÿ[B)ÿõÛÁ§ÿ‹pT;!ëÔI€ÿ±�‰uÿkaXM_=.[€oâÔŹg€ÿŸ’…xÿk]OAÿ4'ÿüðåÌÿ³š�gÿM3þÿäȯ–ÿybI0ý©€ÞзŸ’zk½„ÿ+!õíûðÍ¥¡”ÿw_XsWWïdXXí€Jôz Ì`ÓXZVé ÚÓ€^ß“|üç�ñVvumjÞEС üs`8]ZmvWY¿YaWšoAwï\VYéz qβ/nàz 9þž[moprw9œ[b»ÐçrXgÐ[aÿZW[W\Z ¯v vzØŽl!w>KQ`\i �¾¸ |X[oo¿"ûŠu¡[X\V7V^™€IÒs`v Á¡¿[Vvvm[+¬Ì £Ñm]™½çds‘\ÿ¢Uàp³  §VEv+¬�³#!»°  [lÜ  Y U _­�7¡s£l!}«ƒ',«¿£l!É­ Œ£l!å¡ éÛ£×#» *³Ð%!�}„¹^° 5@, 6¤-´:8»^³[Vf½H¿ q4»6%˜½ 7ò»°Å°[VVûa’[^gçQ"o�~Z{ÀBçh @ðZ^[ŸVs¢œa@XÏ_a!@ô€Z]ÞÌP\ë/G[áé„W\õŠä�ìš®@õ†[oV£Y[Éð(™ð€ô‡Zº2’ ô…W[]!’ˆ•Rp2’8•s’ð€$Z—þƒkš�kš®@­'•W[S“ Z–Vd�� k–Ú‘8Aâ—u“‘|–ü‘ð€Ñ—þƒ¤óš�óš®@À–V’1“Ñ—S“ ô…œ XwW^Xrp n¤òt _ê@{«^_ î�¬^�¬]€�¬¯@�¬y��¬À�¬Y»�¬W �¬VË{«]¾P/¼^ïÊ`kfßZ]\lVkГìU´ë€l3�ø°íÄgµ·ðl�Ãàfµd\S^[_°u°yµd\²š‡± Œ¶Z]—°t± Ÿ¶YYª´Œ¶o²a±‰ Ø»‡±Œ¶Rp˜³ðy°ÝÁƒ²VWuþ·Vq´ Ÿ¶.š±¥yµb•³b° fµb´»²š±KÆYY—´ˆKÆ/�r³KÆAÃb° fµa»²‡±ªÆz‡±ÑªÆ�š±yµaWE[—´ªÆ.‡±ö̦b°ë÷ǽ´yµ`W\^Z˜³fµ`³Ã¢b°ÕJÐ:ÔBÖY‰Y:Ðt±/Ö�ÂÑHUÖ%Ò‡±f°~¡kô³òb°f°»à`bm úÂá€Þ2`aVWw ð³ñ`[oÏ�eÏÓgò€ÙÓZoh ôäÔàÐÔÙÓYo äØÔ(ðØÐ›à_lsÜÄ�ò}¡_`ûv[ÒXZÒi!éÖ1æWvÓéCç)ä1ås[d%[+â gëÖ 1àáþ”@vwXñ U±‘ãhÔ£@›àŽäUs–á ›çs¦ä®æDµp—à ›æµp§ãÑçÒ¸â áçÈå®åW\"•â›åñ§ã÷¸â© '÷ÈåöZ•âH'öfð§ã]÷¸â m÷rÈå›à"áXs]_å Ú¦øQáÚÊ]åèÇöÐ-à Ú¦uôsyQ°ƒ€ý�€ïÞÍÿ¼«š‰ÿxgVEÿ4#ÿðßν¬›Šy3€ÿWJ=*ßC„ÕÿǶ¤”ÿ„xl`ÿTH<0¿$ òàÿâÓÅ·ÿ«Ÿ“‡ÿym_SÿG;,!ÿ ýñÿåÙͽÿ­��}ÿm]M=ÿ- ýÿíáÕÊÿº®¢–ÿ‰seQÿ=)ÿíØÌÀÿ²¤˜Œÿ€tdTÿD4(ÿž’†ûz@b^ (®irb]_Š�) Wó<b]\\ÿVbs`Ä þ#WX\bsm[Ã2V]<Ab;A ÉÐ* U\ \ å\ÉÐÀb[s?f`wO’K`§}Ÿ [*[•HVV`dò0PAePßb[[usØ0Xf�~a Úz@è ^ÚZzpZú («X]ç 'b %ä*(!%A”YZ]`Ç•{WZ@P`vkm3PãA@f!Wè` °T@ƒ&Xàƒ&Âm$Ø0`bsfAÐЉ À§B«bZZü $Z^YV["b@#¯âà#— ê*€ ê&1Pæ  : 9T@*:X*:jê%—ZX_,Aa0^r,j7K`j7.;`j7X,j7EW,:PÅ"ÉÐuYÆ6W Æ5úÉÐmX_Y æX_Gðö6WÈ º!ð€ µ@bXÝY¤0fº4XVYê5F14F‚‘¾Pvw%ÂÒbÅW‘ÕV@&T[D‹ mW0@€F@à€FWmiBTByZ@§DowZ@þAV[ab~o©:PÃBZÉBÏF`*ÊA º4V0@ms » ùFW ma?vreÂÒP<_PVgdU%@î5Vd5Vbî5Va 5V` ü5P$asX^vZÏXp º0tTmXò}P º0~ asW^ÿv`VYVp �º0怗R�R º0”a`^XVoº0ªÐÐaÔÐØÓaêÐÄÍTà ØÐy þÀWZïžåUXý�ñUV]…NÿU\ `V±w§´2b°f°y `vpÜÌñR0`XVU°õ„\^þƒô…LcŠ •Lbg� fgR£8•bAUg„R �wjðáwjg�.'•\Z^S¢ô…\°:ÿ‚ÝkV •åbg�ÿgR£8•rð€ Ýg£czŸñÿgS“‘ô…Î°î‚ ez�Žv{V •mrg�ˆ'•zÀS¢8•±rð€¤ew£c ˜wS“ô€׿!ôóxQ° õ„‚ôäÿÔÄ´£ÿ—‹pÿaUI<ÿ.w÷ë'ÓÇ+÷¯œ1zmÿ^QE9ÿ.!ÿøêÝÏÿ´§™Œ{jY_ÿ7&ÿõèÛÐÝÄu©œ}k÷]J‰þ¡ðâÓÄÿµ¢”‚ÿtcUFÿ7(ÿôâÑ¿ý±Ã“…wÿk_SGÿ<*ÿ÷çÕÅÿ¶¥•ƒ]sëUCñ#÷ûõðST24Cú�dŸÀ][`Ï�)‘’\VAo—0�@’ � �¸~ '“º@`!˜Y�ÀVtIŠÅb`q–À7¡GAô+¢®@` ñ‹ÂW„ÐÁ –ÀËÃûa–ÀA~wÝ^øQF¥Qb{ûY[z‘h ÁªóÃXúÄ ÖZ:‘h«ÖXÓÖWrûÃÖ9’hÕ«W^ÓWÖ\ÓûÂx"{WW÷¯“zY]VÏa+bŒÒ 8”ЉÒm a”Õm¡- ¡ÕW[«Ð ”ÕÄЫ ¼ÖV�Ð ÊÖVô}ð¡ÔvÕðf Þt—ÂøÐYüÐîx"æá º!s~»Ó²Âbs^}ð-¶A¢bsßPÒÉÂb?sWXz>àAs~g à&àAâòUá>à$sYo²Uá>à¦ðbsþ’WBr 2àžà}åk‘ 2àÌ”~â 2às)>à p0AòM¢ºàPG0ÀæjÀäoò0…oþ0äæƒÐAoYWV[p1woW]½�p Ã_bm bu±PRã¥m�Ñ †Ð d0 mb0 mAPëÀOåPõÁ1]ðª a0 m`u J_ôÁ_Õ ºÉB1_ZV¤0ds¡÷+d¡õWYa…2Áöšð–11ê ^âý%ôshûõ…€ƒ€îÜÿ˹ª™ÿ‡xiWÿH6$ÿñàÏÿ¾­��ý}?€]J8ÿ(óÿãÓÁ®ß��}e€ZÿI9*ÿöéÜÿÏÀ®›ÿ‹xeUÿB/ ßúê×_ ´ÿ¡‘lýY­€6$ÿþîÛÈýµÃ�€nÿ[I6$ÿÿïÝÿͺªš‡ueSï€ÿ0 ûý‚éýS3‘v[V\\�M�a“ï �°ú’±<’~ YE½‘ý\�¤ë�’0®�@W£\��"£0[&+‘ |ˆø° — %[( —\�—ë$úÀ ‘—®�Êné§"£ÊZ^†‘} !=’@Z×\Y�#)\Y}’6*õ 0ÐnP6)Ò|’#)Z8¹ð¡¢)YW[‘µ*’* m)\� ¢){“Dë*<’# &�’ m)"®�¢)„à�#)–à’�F:<’9n0W+‘x ˆ0<’‰ Ž9)Ž0�6\�„Ž9{“ ´9^Ž9ÿ“ 0Ž0ë�õ zû*’1 @ 9•yH)I I\�I{“/I" 3/@F®�Iÿ“‘/@ý6n @$‘v7YgWø°€ñR³@¢.à7c³@…àÉFZ%VvÀü!¤wÁÿldob\×VdÌ p^òdf½wb$ãÂdÿdW]ZXw|r c’\ZW^]�Ð @’.Qï‘ DbZ[_+‘‚ NR)WPJV\�`•OQ®�Ñ•‚RŽ�WVY\F.$˜1”£Qô ®P JS¤P˜áÀYø° ®PžV’)ÀY\�®Y�’$ÀY®�®YnàY"£ ÀUW^�¿�úQb’ �ZiM�Zi\�@Zi$Áú““aM�šjhŽ‘šf=ÐYŽ� ™½f »“ÍgSÀ& Í`c“…WQRÍ`3“0P|’U—w]|’x\p$“ˆ2®U=q›35x"M�®P8u\�xÐ4�p“>Ð ‘5x®�$xÍ“ †x¢¦y#¢Ñv�|’�ûôóu놄íßÿо®žÿ�{k[ÿJ7% ÿùëÜ;+¯ ‘3kïYG;,ÿûïÿÔÆ·©ÿšŒ�rÿ_L0 ÿûïâÿÕǹ«ÿ �ƒwÿk_SCÿ4% ÿöáÌ·þ‰‹}oaïSE¯€)ÿ ÿñãÿÕǹ«ÿ���sÿeWH9ÿ* ýÿîÖɼÿ¯¢”†ÿyl_RÿE8+ÿVvmþ7 jmXY%þÉÂjmW__ Ýÿ†^ —]Ý —\ —[Í —Z{•Y½ —Xÿ†Wcf�g �^^�ð=!t–]W��“ßW] �–\œ—Yœ—ƒÐœ�¹ö€ÌðmXXÞÐ~ÿX[bpwÈœ�¢É�XV\ê°Û™d«Û–Wå‘ù™d» Û•gXYæ� L§S0 §ô‘ Û�¶v‘bXB D¨d«D¦[\ D¦ZBæ�n¨®ðD¦!¡D¦uXæ�˜¨d˜§zé°´¨dÇE¥ÑWæ‘Цå‘Þ¨d½Þ§WdÐ¥WX\p ¸# ¶uW° $¸o $¸Wd¶V°N¸woN¸dРUö€aË•`Ö‘x¹Vu^Ô“Рö@~²oW\u\Ô‘¤»Ô‘Àµ°¤ºmœ²–μWVµ°&PÀÀj¿`\,Ý’`YXo\V�2àÅß@=ÈY[Àý~ ÁWo[V2ãF ÁÀCÂ’ÀLÆàLÅ¥�dÆ®ÀÀôÀÿi}ujvwrußv ÷¿Áivßg ³u‘ivÇ]ib½Pã@›Ãbi9hu�§Åa`wäÀ½B$žÀ`ÀÂÆxÀã@)àÿis]bT¾Å‘ioY\Wéavÿh]Vhü&PÅÁh_WXýŽäBifv`xuÿxvZþÑuo`msuÿjpwfuur?mmv=Šâ#Ðïwv&Ðmù· ?Óm`uhfóLÐNàifs¿mxh+ŽÃdŸ| ôšÂXOZc RÑWxÀ[ž½ÒiY�Ò‡ÔD�БÑ–Ô 0ƒÐ‡Ðþ{°gbX^_\ÿb V^Z]?«ØÐ)à=gñ°Á‘= ö¸`C«âgX ¶êÒ„àw`õÐâÖqùõÐßÑVZ^ [ÂMáfv}ðu 3fBÐZZÉÐTÀ7å6éW_[ðGëåXjðx`.Ðojpþ'ÐarrwmîÂfs[¹ðu¹éýâ„ãp�éa{�äow^^­ðÑS±â<ÀºèWbç#t’±àZ^ZãØàý±àWX^Ï^bP Ðfmÿfsirpfmùjð*áfu qµ6âiTñ\>ð³3 óWVñÜ$ð“ðf`[ p÷&Sf`Y]¿W^dsHø]ÒTð &P7á`‘ÐVw pW &P:òpñòuñ HõV°WbWÕ ‹øV—ð höVZ!Wtð„Ð&P(áW�ÐÌ 1&PÛáÄò&P zT#ó@Ö ôs]sûp‡€…€ÿôæØÊÿ¼¯¢•ýˆ€naOB5#!€ÿüïâÕÿÈ»®¡ÿ”‡zm_`SE;€+?€ÿ÷ëÿÞÑĸý«•Б„wÿj]PCÿ6)ÿøìÝÿο°¢÷“…w€i[ÿM?1#÷‰€æÚÿθ£ÿŽyfQÿ<'ýÿèÓ¾©ÿ”jUÿ@+ÿì×­ÿ˜ƒnYßD/ï€ß`b]V`ö@l`¿Z]VoWbÃð¦ð@mõAø`~XuXoXfàfonÿXXoWfkY[zFbkYXy O`kX]%pW'~ 19ÀWzgXW-F¤Kkh ¯)…‹Wb* Ù,pV<iš !*-)WzFüÅkü FòÀºlYRW*’W*b½9 _"`hX"–'�lZ 1³"£ "€À)¦+W'¹*¨ ê*fü«)þ’,:û–' f½1‘0D4ûhÀ'L#FVWH1"ü1ƒ1FøÐ¿lX âBÂv2À@ÄÞ0»5ß@©@À3ÁvåðoÅ@0@À9PÙ3”@@Àv‘ÿssYXb Ì E£û13PGÔà HP0F—‘,H/�,H<�,HwX,HW,HçV@Þ‘sm]u_†PEm]]ÀJ€G\§aËžGvP¬HB§à»Ig`¬@õ�sÅà½ÙEZ_åF^; åF] ¬@‘sZþ1 W3P VA#W|P0 UY\b=W<.=V[bWW $=VÜP=V§`=Vþ0!‹W~ ÙEHÁÊ>UÔà�±WÇ@±Wg`±P¨SW{±VVbäWø—`±P÷2YV[[Ý ØVV ±UX_Çb gÊ`þUX_ú`±UW\X�@g4ð@fÅà@fÓÐîgg\gg[ŽggXggŒ�ggV÷ÉAeY]¸µgmÀµg[µgX»µgW µgV{ µfX] w/\ µ` wCàxwJ`wWµ`!w°Ðµf˜�[w‹``[w˜`[wÀµdmY¿�ûÿ„YV\,œpv’YVú€Øã¯rX·x~�·xÀØàxõƒ„Ðþ€L"ôó_äˆý†ëÖÁÿ¬—‚mÿXC.ÿïÚÅÿ°›†qÿ\G2÷óWÉ´ÿŸŠu`}Kq! ÷g€ÿ͸£ŽydO:ƒ€÷û¡Ñ¼W§’•€h›€>¡€Ý§€óä­€Æÿ·¦“‚ÿo`QAÿ1"ÿôâÒÀÿ°ž�‚ÿr`P>ÿ0"ýöûp7)ÿ üíßþ7àm}vW[ëo}áPõ2m|�[߀ ö‚Aé�o%gFp4Â÷‚f~��Læ„ü€ä† � ñ€þÔ‚|[bWsWÏf J1Â1”fSR5âé�a6“=—NW�fM�æƒXü€U–X � +–X5”¡ =–”‘\�M–XW” ´�—i’M–WuF“ TÏ™i’ o–W‘3ô–Z �ñ†WV߀ ñ€ˆ@“„0ü€�!¦ �––WVü€>¨ � ñ€V0¢5”=�æ0b¥GfM�_¥W”o¨vi’S”{[o—ðI•¬ az�³¦Y®¡•¤¦Y½¡¤ CÀlÝv—` ‡ sZûu]<dWWzxÇiPelYíXý h¹`lXÍ[ý  g¶¤hXrü¡ ·¹kX\±¬·ÎhWP±@ºbhWYý +º% ü¡+· !c³ ·7#ü¡Ñ ·L!�³¾ºbds``<±+µYuY÷¦EµYÀgO²µ(Â}ü¡ è¶Y5²y² ÇJ³ü¡ý·_³z±‘<Êæü¡'ÊŒ´'Çž³z± ý·L#vµD9ú£µc:²ºÆy¹²+µ¢žÄäǹßÂHÏÇÎü¡ÚsÄùÊ€3ÒùÇ"#"ÂÏǯÇvµWVí0`mY&± +µ_!‘ü¢Œ×a#±‘µ‰%ü¡¶Ú¡´¡×Ê! à Ë×ß#"ÂŒ×D¹y² ê 0ü¡êTÿü¡õÙWù¤¡× ]3¹²Ë×L!ú£µ˜3Šú£´`ô¢K0kÈ1ô£F ²fm"º"Üê°A z"U5³€ÜçJ²Rj 0ú¿äúbø#‰ ú%$‘U ˆÇæ�²ø#™ù9!ÔHÜçȳÔ Ãú 4ï0ôsu¯ ‰€‡€ó»ä €Èº €žÿ��seÿWI;-ÿðÿáÒĶÿ¨™‹}ÿo_O@þ1€ ÿñÿãÕǹÿ«˜‹~ÿm^P?ÿ. üÿðåÚÏÿ¿¯Ÿ�¿o__€?ÿ0!ÿöèØÈþ©¬ �~ÿn^N=ÿ,ÿòâÒÀÿ° Ž~ÿm[I:¿%¡€äÿÖÆ¶¦ÿ—ˆyjÿ[L=.ÿ�Âuo?Mõp @‘ÿbX]mXbsçÐ ?’dø ô�_bpª]Z&N9d  WWd W uwd \[X&­ XV W[ZWjp ®æ�bWZ³Vª$ÃVÌayu¼Ð0@óÿlvuXZVzu`•P5í¢ma!ä{@ ! ô�]^YŸblb Ô�]_^VWX1!6(KV[1! r¡]˜@›[&Ï ˜@[Åak 9"s `b1s¡1k(† �*TÊ{'X†# k'·! î¿*d {%[Vm^S ms k ã"·rá¢m]Õ@ Û²q¢\VYÐußXœq¢[[]Z1Y6Y#3÷�?’Z_{{­VáA–=5VF1k€=4sU2�òƒ�Z_]`Ÿk æ�Z-_Ck ‰1?1¿^\Ÿ�4ZS™0>2\D3 [5E\T3k0¨3d3 k0œ}2@~z5@sCk n2@í ã8Wdñ7`ß0IWdk$YC4[4T3@U2Å4Yc4 LE’­4ÑCÙW`“ÐàÀ àÀþ7ÒŸZYs1ÕÂkùdyÀ1ÕZ]sXZSXzÞ¢ÚW°Ð|ÑNÑVWg]p1Ôd8Á¾U0WÖÙXß\Éð±oYï þ~ÂXZ^ÿbalYXg]SàÀoé°]Ã@±ß³á°À%ç[’Û°%çڱ߰ÿ oëYAÀ&l3xz[ƒYVxÐþaâ÷iàÊmæZwáþÆvWÎä`Ñ’á\ûãms[XWMZ�ðªætP·àzÆlç� ö\"ûfXÆ jd{ø™à×ãè°jpf„™àþ]>à­a™äò@\DùT÷[b$ùrÎöZ_j�õY_%Y QöB`÷ öåY]éÀ~øåQöYÜöåX]oPMr­ø[r­÷mCÍú¼)@™à°$ôsZ¿Ø ‹€‰ú€ì €µ™}ûc€6'þ%€ùèÛÐÿƶ¦–¿†vf=€Fÿ:/%ÿ ýåÍîQ€�…_U=û%k÷áËûµ{‰s[ÿC+ýû净µž‡ÿpX@(ÿøáÊÿ²�ˆsû^Ç4 ÿóÜÅ®þÝ€iYMÿ?/ïýêûðr]oH3± 9 ÿtXmX[zŸdb%5²ËXµZÒ × WXÒ ×ËÑ×–Ë’ã öׯs·vuÎA•þ!sks ãÐM‡’sj^ŸVWp ™ <�sÿj_[Y^ÿoZjvYEH²\X[em^fj F…Xeovv„W_“- ›W\e²×Gj › \]bEY– ÷©"÷ŠzY­„$+i ´6-–÷WY.$HK(k#i u-–›åZ\z<àVVîh åX[VV'^]xh ·-Ç!jæ¡$À!­ ¤ð –å+ßЕ ý-õ"‡ Î è'Wó$vS -;#6 Î&YÅ Ä!¬]:¨!Út=31å&f1:2Zi-6 «2 4�º= 4å Y”­!À!\hÎ&ó8jCå&­!:2BK 1û2-69Iœ å !°¼\Ö[Woû2œ›cMjvIc\"­ „�LiŒJ©"œB ¢JÅBi¸MBíŸ&WX`\Z‹o[–úKlA PvS]“ úKZ{R$RúKc[­ „D]]húKz$Rr[$¨lR¢]"Tº] Tù›0`sfWWdµjyÀ­nâsdòS|ùPñ°s_ )ùÒòÐ `û°s\`ù`=\VfûÙHZX{VVU^"àO4es=bCd/YY{{Nb—|¢Ya¶=bœGYYLcJseX\cce;dƒfbLcs` aë°Qbòê° `X sWWXöÝ7‘sW}ÿfmmr{÷ýHW{ijwçfæ`/WuïfdæfhufÏfpæ`íQW¿amxfæfa?m`blæ`l�ïs \vÝd`vßvfoampLG7tÿ`Dx PpЩ�9r rDxjxau r{yyPp Œsp"Dx†y-qDxPpã‚ô­ ë…ô€B¾ôõÚŒŠþðàѾû« ‡vdÿQ?-ë ×%·¨¿™Šw1WÿD5$ÿúíÚþE¼­ž�ÿƒveTÿI>'ÿüíØÃÿ®˜„iÿP8ÿìÕ¼¡þwnT;ÿìѶþ‹…lT9î—î¹€»¢ïŠq©>$ï ôûpöêÿÞÒÆº<¡SpujW`>t =@ÀCR‘Í„ïbÚƒAá€YÍ„[qÛ‚ှʇru`phò„xဠ̈́hup Þ`‚Úƒ ဢ 1–€�Û‚ˆáŠ‘sÛ‚Fš­rÛ‚¨^›ÉrÛ‚˜VÓŠÚáˆVí‰B©™zj/rmfwÚƒÛ�ý…%V—Ûš™Û�.•EV7›F˜1¡U• Û�DÅ—k˜ Û�D§„— Y«š�— &¦VÅ Ô‰D£«è™r¦¬¢–£«B™Û�mp©¥8š Y¦D´U•Û–¬¢k˜(»R„—A¼�—£¨[Ò‹A)·ìŠ©°ýƒ²±"–©°‘¶7›©°Ü¥Q™ ©ºf©ôº¨ ˘¨’Ù¶¬¢îˆÛ�Üpujb`udPßZxAuiþÞÐv W[YV¿`wºùuhX_Z XV”Ã×í�ÅW¦Æ ËÍ�ÄWW‘ÁÐwû –&âu`}VVÎwÐ 3Ñ�vjovwru'P÷ã‚û`bõÀir5r �^@Ðü‚ÊpfudfwfÑï®au`Zï ò-ÓYü6ÐØ`u`WXxp®ÏáCÔWKÓ#ÊaGÐià 6Ð=?u\[Z°ÀÝÁ³Z^äÀ>ÐS~×X;‹ÙW‹ÐDÑÿZVXXZVz� eÒwà°`\½ÙuXYY¯ÑZ¿[W½eÒWÝ\åÀñÜÓZ['VçÐ/uäÀiàû _Ûà sbaæ7hCÒ âY ZggëRäàxÊÑ âô XàŽæX"àæ?áÔ"à4æW>â"éWÝ"åobu à ܸâŒãY •éXñ•àâŽáW ^ݳëZ³ëXñ•àìÁºäW\Ž•éW•à4âŽàÿ][Vo`-ýèæ]V`+.øZ'ñ,ð öôf0ðùY[`ã,ð¶åQ0`Ü,ùЀ`ótX{v`ÍÜÙœŽóãÝ™úö!˜ðŽð”ð ˜ð´Žð¦ñÍõ[`¸òÞ˜ðŒôsgÕôýp�€‹€æ÷ʲ€�hÿP5ÿëÒº¡ÿ†oV<ÿ# ò×ÿÀ¦•ˆÿxk^QÿD7(ÿ ûîáßÔÈ»k€¡ÿ”†xkÿZI?.ÿ"ûÿîØÂ¬ÿ–€j\N@4!�€öæÖÆ“€ÿ©›�€ÿsfUDÿ:."ÿ þñäÿÖɲ˜ÿ~fXJÿ<.ý·€ødÃõ$A,Êawvb_‡Ðáãã]VyÐîvb\ÿV]~sD.ü[V\ /ova[^ÐõÒ®!W)Y$¾7W¡!v÷aXXù0|W_ooo|W[t�Š‘.YZ[`X‹‘k‹WX}…µYY‹|\cY=¡…ä`Þ­ u_V[XjpÔ ã_�`ç”dÒ×]s“)a×4qÒv^ZV„ì[^Y°`kùX`Ð\%_Ðõ avÛýdÖbv\^XYV…b`Ñ4#>@=!®Ñ\X]$`¼ß\%W_ð`&(ð` [[\bpÑ }#[„ ÑÀ ðë&þYz� ÍѦ%í[ÍÓ´%Y_YZÍÃ'Y_Íà .Y]X„ à 6pûvYy[ XoûsÊqrg[<ÉÑ÷$—°(�ûíYV[ \°Àæ"VXYÒ`b{#ô40Ñ` ;7Wv ü;0y@vY^[ÿbYgupm'ºwB]3ad5Å€JY4]a8ƒ9y6m6Ë[]b7¯9y6¹†»ÒvYö0x@â¸À`· »ßX^\ Êõ5](ðõ0îXXç[ °À4!XW»|?áh)"Xo w3"W_$Di,@9B^$DgâåW Aõ0W[Z&Ñ` ŒfFS0 ;0[Bß[Y`õ4WZ*åÀ �EX#`ëžC’_ðëkÑ÷äV³YXj ÞVYñ0äÎF(ðÞíPvVWÇY`Œ�` ëFg÷FXòAYX@`$8äÀqðõ4VV_²@1Vz_ð1VZ`1VâÊ@ õ0þãÀ`uÜ3@õ3uwW#`ò‚Öbuñ¬PP,ðʃ\F²œ Dû…œQ– ­P.“œQ8š ­P䃜Qk˜! ­PI“èR…– ß[�—!­Pʃ8ðÓŠßV2a"V2a–ÄV2a8šCjk˜øV—b…–‰Žk�—)f�PÓŠá†áaîˆú†áa§+–Dáa8šøV+sU•òj"k˜ F–^r…– U{�— F—Vÿš­P³¨r8šÑ)f¨r“x­Pû˜ôókõ뎌òäÿÖǸ«ÿž‘„wïj]C6ÿ( üÿíÞÏÀ¿±¢“#yÿj[NB¿5(-ýÿîâÖÊÿ¾²§œÿ‘†q[ÿ;ýÜÿº™wSÿ3ñÏÿ¯ŽkLÿ* éÜÿϵªÿž”‰ÿti_TÿI>3(ÿûìÿÔȼ°ë¤¿ŒÁpcÿRA1%ï Ñõt«_Ç5sÐ|ÎÐs ž"2è€Xî†ïWœï„XW= •WW �þ |X�ô«ðDÐ$“Øñ .™¹ñ«ðä$�”ð!«ð÷Ð$�Øñ]–¹ñù«ðå�W[X Úî„WÖÐ �†”ZW“ ‘•ö€…•� ¼‘”Õ@ŸC¡{ÿjp`|i^WëV\jÄ#â{ffðÂÐU@éÀtÀ{` xÿlar{ab÷‡Ü2{WWXï_u"2zmXï{ |,Òz_]s!0¢\ ¤ß\\c,¤[ý6¤[^æž)!z[ L ¡Zw\V¥VL¤*ÿêÒº¢ÿ–‰vcßP=WþÿïàÐÁÿ³¥—‹ÿmO6#ÿùãÐÿ´§›ÿ�veZ÷ODŸ(ÿìØÄÿ°œˆtß`L8· ÿüëÛÐ÷źɤ–ÿ…zodÿF4"ýþçÚÈ´ÿ •ˆyÿl^PBÿ/!ÿ÷ a[]ÿXYZvY xÿ`]Z^bs¹ÕÒñéƒpò†]ªü€ ò†Wî€ ˜p× ò€ ò…YY*ü€ ò…X8‘ò„I ¯sbò€O‘VíŒ gÛ�x`XTÆàü€Y”Wa‘ f�ÿx_zmý®x]VlVYßf___b ãþŽ”`VWfVZXî âÜ€x\]ï~YWw™�|[@·”X_À“Ç•ÿi\ZwZY]|w?Ú˜V\XÓPªëšXù�ë•`â•ô© ¢ ë�x[ÿ_Virrdÿs aWW_¾; pv’b¡xí[7àR¤Yè\¥×à\  7 Y[½u°Àz ô AxÓZa× À0wƒ’Z^÷\\£Z^Y!œ¥Þpœ¤Çàò€”¡âzð+‘‡ m�agøx°ò€u ZW_`j·t|V¢ð<Ú£]êá¤é Ü¡[zÿ[Vi~sl~íoô ÿ�‘ZV|“V_˜‘ µ�´^ºµ%µsV\µ.%µoWVµ%µ•˜ý%µf\[fVWõV %µaZ]f×VVW  ‰¶XY¢€µ %µQ�€µ±¶WT»° źW¯’ Ù»²ƒ² ±¶ª‘VZ µ�Û¡Vॠ頔¡å m½£Y]¢pb3Â?\^ í3›ÐýØ£Y[VuXZz ƒ ý Æàâº°ç€ÆàXaaëò€gÀYxd÷ ¯£1xXW]²„ÀÑò™ÀWa‹àþ¡ÄVV^a`²íðgÀYÁi`}¢úƒ ÁÄdWdXiJ] ƒ ÔÈ]ÂæÍÂ~¡ƒ ÀÄÝÀͰz] ƒ xà_º0s`m"1=¡‘…1oxW\VÐmg=¢rF§Q ?ÑYXV=¦\Y[ZVM iQ ‹ÀW¤!—!z}ÐWC°‰†Öw\’ØZ’Јi�ŠÒ² ’ÐË ´Óï]ˆ¯×W^鮨F½ØW^sÍÐî×XÍÐý'ÐVXZgxKmmJÜQ ÀÀW×¢ôÃÓ0å~¡=éW]ÂPë~¡ƒ M¨0.žP~€a Wþa|Z~V\V¿a`WWVw¿ð«ð‘çYœç§ç`´lð�æ¿èWVœçø§à²0±à~[VVf·uW\Ö°¢ñåV•[ûäöwŸàüãöuYúå +÷µÀüãI ðgAq gua$._ l.†I “.º Ç.d  ÝqÑø¼¼ Nôsw¿'!‘€�þ‚âÒ²ÿ¢’ƒuïj]€E:ÿ/$ÿÿñäÖÿǵ§˜ÿ†xi[ÿL>/!ÿöçÿØÉ¹ªÿ›Œ|lÿZI8)þ} üìÝÿÓÅ·©îg€�‚k€h[ÿNA4'ï {€óæÿÙÌ¿²ÿ¥‹sÿg[PEÿ:/ÿ þóèïÝÑ�€¹­þ€p�€qeÿZNB6ÿ*ïüØ¿€‘mŸK'Ü�ß‘\Æ£>È‘ùã”ûxmâà]W^`ÿ{hW\ YV{ijwfâào &(ufMÐ3 8¾'aur{p1²8^nmx0\ZŽ`bl1¡ßZ]X\"] ÛYZ¸ =ÂlvvDÀëZ ôÖ‹Àlv˜ ÿW\3 ÿ¬q žna!ÇX #&p#&Vù# ìXV ¾UaxlWV[ßpÞh‘ht[Wg°ûÚ `"pY[VYçxm&g xÊ|'X‡ m ‹Àh^/dwš%b‘ š%ßawÙ›$`wó¾ …�hZdÝÊ%bÊ%aÝÊ%`Ê$Xd» ö%b ö%`ô(�¾ Ê$Wd î5b5aî5`¾$V\d»H6bH6a#H60¾ b q÷jdhË0rppfÛbw¿0éAxgË[ZD`¾ •4]½Ÿ7\Ø 6Z»¹7Y¹7Xã¹7Ê`¹7V ܹ4õ0] ú7\Ý ú7[ ú7Zú7¤ ú7Þpú7°¹0²ç€g�°Óà _„áxfum}Í‘AÿxfrswrŒo@fAasWÐo@ç€f»^Xšàu“ÒfYWo`pˆD›YW(¤G7`¿Ìx¢ Ë*`!d5` ü¹0Ë dpX_^Xm{¹0ÍBáA0TéHD0éGWh0éF[^[`×Ù¢ÿdbWbbYuòÝ Ós¢+Tmbô6P¸�d6`[\dbò¨0%PË bp^[îª�s YU[^ZWå@%Pa oSó yWUY0 yWXD0 iW¿WV`g yWVÒç ¶XD0¶XV`ûyTbY_WX0r�%Pç€êPV\¡@òWïYpòU^[ZGpyTa @fßZ[pfZ[2 @+g`Ö:f&aV`.d `V`¸�kb`porwVg¦}` egîP sgX²~c Vg¬` efXr5` V`\�bY\ `Õee\ÌaVe[Xò&aV`…�b\û=Âb[ufpu�u pÔa¿W[ uW+ 2uV;p uD tpç�g«`sVc/`_\Yí�V`Ë Vvq]`î€w\Šqýt]^W[blWbŸwXªqŸv‹V^ªqÈ£Åq©rÖò…]\ü€ò€ý óô6™õ’�Û¸ÿ–sO.ÿ çàý~A9ôÿÑ­ŠhE!þÚy÷”pq€,ÿëȦƒÿa=ùÿÕ±ŽjýE³€Ü·ß“pLó÷à»ûp­}˜G€nYDµßð;W[øÖÿ±�lHÿ%ôæÿØÉºªÿ›‹{lÿ]M=.ÿíÿÝ;®ÿž�‚tÿfO3%ÿúéÿÛÍĶÿ¡“€mÿZD/ ÿþëÛÿ˸¨™ÿ‡ucQÿA3  ßúçÔûpÿxvY][aÿxuvVÿ^YusX[VhïKÂ[[Zß]us[VЀ µ­Ö„X^Ì„ç…V«ZZÌ„ ú‡WÌ„ þç€ xswVYÿbaç þ$�d^]Z_idî€ 2‘]^sÿVWZb{Üþ?•[sVV^bxûP–XX[hïVWbœVúP� f“WVb üP�1’]WV^Zbã P�Ä€›’[_bßWV •˜[[§b ¸™¡�¥™Wz²’¸™WbP–ÿVWW\b^ý†–VVXbúP�2‘ZYX[\ÿab~]VmúP� ©^[mõ¥•Z��VVb]÷VG¦WZ\ZF²’Û[¦& ²’m þ#‘dZVibüm ¢X]bXVVÏWdW¾€€¤^X{V\j t$�ê@�"‘o��]`ý€£o\[VX`ë m  Ì¡X\Z«aW-  m Ì¡WïWZ Ȥ~Y¿vz f0‘oÿw[VdwzY °÷¢u[° °ýÌðwu`af`ûo'°pvojwÿwfué}$¸v}vwf9Àü<°#�mvZVVd·¨²mv™ dï©é¡mvVÏWma°‰�mpX^XY` m ü1�‚±VZm{‹¹`pm ´¥°+‹¸Y—°º¹§°Y«¸‡°m «¸ïW`«¶V\^ùaþ·[aÚžþ·ZaÀ޳V:¥²*Êdǵ±= JÈYm *ÈÕ± hÊd YɈ°*È%X§°JÈÒ JÈù°éÀV±b[² R¤ÇÃi² ÓÀr±bw±°!‹= tòÒ¯=còñÍÑùòûÇ"óF5ÝþÄ›iòÑ:B:XòjÒ=£bÝÔÖå%åÝ÷=ì`àÆÝBKí#Ý ˜s˜VZwv ¶s/VXZZ$„Õ5„äôUä" *uäA 4*•4'Bb T*³4'‚ t*¨Ñä›V¡ ”)sÓ”'À²)s¹äÙ wh\Ýp¯ UÒ(sÞ Tâ&p á'0€ò'"¤Àá'2¤Àò þÔ"W^]vpzdOfxá 96sC4ò&A¨°á&Q¨°^7bpo7rŽ0^7‚po7’°0ò ûD=02á Ç6î Ä7ÀpÔ7Ïñ0ò ðÄ€ê2j0D0žÌGV2 @#�whÿXZsh]š1@dbh_`²0AŸ`b\!’0@Xª4@8FXBAGFXªQ@ UFV4@8FVVBAHEVQ@ UEËW^4@U@;BW^BBA�E‹pÕ�«F\4@­8EW\BAÈF\’Q@ «F3A¹FAB$ÈFPA «F^A¹FlBIÈF{A «F‰A¹F—B ÈF¦AU@Ç2܉Ô5ìW …T$’W¢W"Ä5,$±á B< ]vD2 DEêQsïS’VAÒV’Qgbgr$g‚g’á ;B‚œ# ò kf· hgÀ wgÏ á A�Œbý @1 @§fa@ê ÿwXuX ù¦bÏ`W[hßv!ÊeW•ÕesÞeçeü`©Õ`ËbpÑ` Õep²Þeçe(ptWEgÑ` ÕdFpßdçdVSq?ufÑ`LuefÞe^u€p?uEdÑ`Lu� àc^uæ� Õ`#�vbmfW0‘_vbWVvq Ñpì¸�á€Á€Fýôódòõ–”ðà}Õ ½¥™ÿ}thVßJ>2#ÿ ýðâWÔÇ1©5‰9ÿVB.ÿðâÿÔÆ¹«ÿ���q÷cTa+ÿõèßßÐöwŒÿwbM8#öÞ“±œ‡rŸßH3©îÿÖ¾¦Žÿv^F/ÿêÕýÀÕ–~fÿN6ÿòêÝÐÿĸ¬ ÿ“†zXÿYV^X`WXVw[`Zp�Ò3 ªä‡Yï‚õ€ã‚]g]`ßÐ�ZVÒ`«y ›[“ #–\óWá “W º¹=›3’W S�YêL“k�ã‚[]ûa\‘W{Z…˜X‘“z™˜`��Žð�²¯˜¥�ð�C±>°ˆ’�’c”˜�$Úœ“‘îœÏ”­‘“y˜�“[Zd 7Vg¿­�“ZX£�ì€F‘h�#–T¤…Y\£c­E’ {©`$¾À[¤“­s¤«­‹¤Y#�Ú“ZVF‘Z£�¡èݪU¡§¡ò¬E�¢í¡ò †“ä `ꤤ º´ º´ ¶Y�c”˜–h´¾¢tºÏ”)‰½“‘3¦X�’é¥�k–¼´BµË½Wµƒ–WE\Ž–­–Áý”ÉĹ‘“‘ÇU ä‘aW3 :Í� OÌ¥‘S ­–Z¡ZD£ yÌ¿aWWV ­�^ã€X~`Yöð¥Å×Wïð §ÁVo_`Za ïð〷 פÂW^«ÁÐïðØÄÔ�ïðÙÁomþê�\wXYwÙ…‘õÅWVþÁx½ñÆV^V[þÁ ”Ø#ÑmþÁ ÐÀÀW{^V¸ÀVóÄqÖFÔPÐ ÙÀ][ÞøÀV`PÔ[\?Wb[6VAsÐU[wÑ|ÕYwÑ|ÕEXwÑ|ÐØÁ„Ò|ÕNIÐ^nÕXÒÁÖm`[`Ò¾ÖÑXVaÝÚ`sÝÐÒÕX°À¤àÕiÑÝÐòÁZ÷ȈÐå#ÕÔ6å;Ò \ÐaÑYVs÷ÒïpŠSÑY×Ò äoáèÑÎvê`°ÀkåX©vèiѰÃWªÀX häXIÐU@PÔÈáüÎp´äW\VÈ}ÓVIÐ,à°ÀDÑñá?W[òãpïáß^ ô\ÝöZöX‘ö•�ð îâá\òéÐ PÐ óVÁÎÁh�ÕÀSÐÙ°X[âMÐf+Aoð‚ÐVûx ñXV_÷3 �x}aÿxwwbrppÿfbwruéþ‡ñxz\Y\3¿¬óŸÀ ³K€®ðZo ü_ÑýÞéî ú} ôué —€}•€êÛË‚ÿ�u]E÷-+€åÍÿµ�…nÿW@)ÿûíÞÐÿÀ²¢’ÿ‚s_Kÿ<-ÿòâÒÿµ¨Ÿÿ‘{fQ÷A1…€ýô�ÙÎÃÿ¸­¢—ÿŒ�vkÿ`SF<ÿ0$ÿñáÉÿ±™�i÷Q9]p ñÿÙÁ©‘ÿyaI1ÿé–Š}nc�ñZrð›Á€ÀaYX�V I$’ÜРaçYXñ`î Vb?_\^ G8,àV6ãZ^@à^V Œfå \Z ÀNæ~ ð/ –¼ëÆZŽ –a¹±¹~'Y-Xá�Àp&-6"V˜>+.0#HW-# n-"¢PV-N$†+ ²—#† aÐZXpàZ"éÐ ^ÓÔ"øÑ PÐÀÀ”Ô"ŸÀÝÐÚð`œêàÏÀZÕÀ ðY?v}u ôò0×W 01 ,0¦ÀY_Êá°Ã91øñ`°À0Y_]ûþO3Z ½€O3>Ðc5pc5Þpc4^Ü�ð„5\c4]_{X4\Zc4y\Ipc4[]c0>SÐYY~`]Ë @4ÀÍ0°ÐÔ7hp°ÀòÀYYr÷ÈÐÉ2o`WÛ €hãBë ïpaÐé×# È^Ó$BøÑÝІ�YE[÷È ÓDC#ÕÐèâ€YG;ÒDZW?[z RÎÁ>ÐÕÃX]~`(ð°Äœ@xÎpðaÐX][sï€!`ýðÞÒµ@×#ÝÓÅDg` ýÓÅC ÏH‚‘á ßHIpî#ÅBŸÀ ìÝÐRWiï€AÅVY¡p)PòÀX\D÷ÂÓÓ>TüÃAÓKX[1S)P²A[`à"ºA¿DÖÑÙ! ÏD†S|PßD†R�XcâŸXgXTãßD�ZÜ0V°ÀÚ’W’<¡]¼°E¢­�ëYWRD£ÿ]œÃkW��JžÁib#cG Dk;b'ñK¥è¡/“�£k•zeÒs¤Šm‹¤¢gX bJðÌ‘WÀprgÄcº�"ÍaÒm{�Ía#•±�dÐâa6Á{‘ì¢@}Ì‘!Á2}Àí¡ J}út wV{WX=X|bZé“ñwCÀŒr’pâAoáüP^Ód°r‘á T«ãPÐòâ‰]£õ€„þôóeä˜ú–èиÿ ˆpXÿ@(øÿàȰ˜ÿ€hP8¿$3ë¿ÛËÂW€•þ]‚]PC3ÿ# öîo€ÛÏu€¹§ÿ•ƒq_þ�€;) ÿüìàÔïǺ� “ÿ†yl_ÿRE8+ÿÿëÿ×ï›ÿ‡s_Kÿ7#ûÿçÓ¿«ÿ—ƒo[ÿG3 û÷ûpA2zx‘1�ðV?9R®×ƒV[dß�ä„V·[zÑ¡Z]H UñúŒÐ �]XaT!�Úà4œˆp œXÿÀ\�X¾àH�4œä� œmb¬�VßÀ˜�3ðÔ�^q4–%i– ü��­0�I$­D�8¬W‘ L­’ÿÀ`­€�t­$8¬§‘ œ­W` °­Ð� Ä­3ðØ­?ñ4�0Ý`Ð�}51`�[Î`Œ42°3ð<µQ°Ë'µ­À„%·¾à‹&¶ ÀLµW‘ ) 3´k‘f¶WÈPµuXð€·\ 2µ%XW`f¶3ðš·Ìа0ÜÀ¡àïÀijÚàCû^_ò°movr42^»â –ãï±|°¹ðFð]_V‰pv?VVuëDò ÆẖàÆXÀ :Ìh:Ì;@ÆtYp pÌh p̨ú@À,0]ðQ‡ò]Ÿ ^u2°³Ãi/ I51\dzð(SÐÎÁP î3\ Ô)â™ÐaÐ\\páá¡cñ—°0aÐ[eÑ^"éÐÐÕºA>@©Ð [\¼Ñ ´ã6Ñv0î3µ[SYXã[W—TÖã[#è hC[BZJCàëPˆØRâCàÐdð­ ÓysÐ` Ù³yÓíÓÎÒºAu0ÓZœ@] ´ãøîÑ0øãZYVo`±]Ì@Ù°ñ0ZXvØ CàÙZqd _~!2G=í5äJVíwmíXçç`…í•âåP@�ë3äá€Uë3á—âÍí­äUëÂb!"†(ô�‘úã-ý.$EýF]ý^ ~ƒô¿ð�ýŽ/p–³ôÊà½ýîæW ~pýôskôõ™€—€íÚÿÇ´¡ŽÿtiUHÿ;.! ÿûìßÒÿ»¤—‰ÿ{m`Mÿ:'ÿîâϼ©–ƒpE€ÿRF:.ýQ€úìÞÿÐĸ¬ÿ “†{ÿl]O7÷,s€äÌÿ´¥”ƒÿraP?ÿ. ûÿêÙÈ·ÿ¦•„pÿ\N<*ÿôâÿÒö¤ÿ‘kXÿH4%ÿô.!û60m`afmï 9Ám_YÿZjdWXz×oðõ}d͈@paRXñ0vuùŒÑ 'Ô€'h" !QûDøˆ@HdåXQ60lW]î‚ ð!j{WV_0Úß"¶ïP7ÙÂjuÞ±zÀßvÇÑaéáå°óaÞámv,aÙáù°jd`o÷ ®ð1jbfÿZafpbiS°ÀL$YT% °Àõ ´^{`dsub/×s"\)p|"ý‚&XdsgbvO Q•%{# ‚$z$ ²¶% p}!E Æ&V®$Æ%¬% Æ$iZ `|" ù%W[{#Iù%¬%6Ï$Æ$$°à{#=55=5™`’|"_6­$_6Ï$ôÆ ³X+às`Ûñtaj3g_bvmŽ sbˆ§0¬"¯6¹7Ï!¯7×&‹bjf3¯6é7Ã;té0°hH°ztaûguf1Y[W`}·X[äP /BgÿbYXlsÝí Qgb``hùJD+°ZVVtf°°g†`y—AgYY×Pf³y@P9f°Ä°d`wÅÐîÜ�AÏ‘JñbuÏZpJ@¨BXpóJ@ù°bo_Wú¬Á½=Bbo^_Yß[ M¿CWW¿[XNqQbÿl^XZVz[  Âb\É^$PßVdùFZ`Î;ðc¦CÍa бÂb•±óβ-Pp@óò±-P úGbŸpVW^kYÏ_V PMSV\¯YVd\äP ]XX×\d[�à ]XW^µdcAƒYZdQ$–ZR]Xð„ P¨ABã‘¥@MQ�ÑT]T.�ÑV[bó�îZÞ‚5îYY~aîUþ@"Ü„P*f cP°ÛaoÍbø±ao¶»² Õ«raj9²üf°kcXWYÍ23²aÿ°��šÑŠ`ÿWY[^ [Vapb˜’kwX[£a—†dò|°Z`‡cV_ XZ`ËpÒa] êð#[c—`WV` 2°Øð`ÿu`gm`of?jhpjwrÀé³ÿ`ta}2qu¹ÀwhwrÕÐ1^"pVz0Wb[ 6²émGÐVpZqÿgj|jphvbuf{v VpºÔ�Xî€\VlŸpG@}rØ�{TŽx’ŽT¡zR¡y¢SôÇzRŽpîºôóvô° š˜þóæÔÆÿ¸ªœ�ÿ‚uh[ÿM?1#ÿùëÿ×ï�ÿ‹x\Kÿ</!ÿûäÍÿ¶¢Žwÿ`I5!ÿ÷éÿξ°¢ÿ—ˆyjÿ[L=.ÿòÿãÔŶÿ§˜‰zÿk\M>ÿ/ ÿïàÓÆ¿»±£«‡ÿyk]OÿA3%¿ üï¿Öÿʾ³¦ï™ŒËre¿[NAÓ'ÿ !¿�Â@°wí_ˆ±šÉÂwW_ÐãA—¾°•VÐ�µptB'‘… .—W.�j©Àwe`Ý1ÒwV,àó.”Y�Z´ª`”W[�_•W\ l–Ëy–W/°l�@ær�$@�@vxZù{‚`¦BvxY{=·•X{·�°[vwQ ¸tBv'‘»¿cvvwùà ýé<"vv_Z[_÷¾=Bvv^X¢lPËC  ÆA¥Z‚€áç@ù’XP°¥YµX�à¥X_¬ ÙCP¢ZX¨�`X¨ÇXX¨âàX¦X^øµÐÙ@©Àvg ³ÂWrv½±$@Ò‘–q©m�B¹¡Wç�ávßWdjë þGu]___^^ô¨08�±uY]Ë^oʰeâõ¡\o÷^þ§[o\}þ§Zo] þ§ßYo_ +¹Y½ +¸Yoþ§Xº'° X¹X X¸XWoþ§W °…¹w[…¹X…¸O[o…¸E þ¤KX[ø¢з±з’±з&±з5±$ É"àdѶb±*ÉÒÀt*Ç�±HÉ[HÉ'X HÈE þ @­u�`¼[bt;ðWïkÞ¾BtXVufd ö�úÀ£Àam`bl ö�ý¡Â`vvruwÿfdbrmrx¯uv ö“t•qk»�ÃsaÙŸibêÂŽ`òÈP�@þ$sZ b`a /X\zd�08^"ÔÄûÐ"ЛÐÐ[`6ÒZ]Òè8ÛÓ©6Ý/Ó"ÔXØI7|Ù/Ó�Ð9ÑX>Û‘MÔªÖÓ£Ý/Ó,�Ð�@sWb  ¥CîÐ𯰥@çÁâP^oÈäÄ0`̰�Àärvfá` prp¤Ã¡ö�t /á´Ãö�Ì-ãÄÍö�ß rhÿ\WVhufï}£ÐrhYë\qãxåXYòqãxà$rhW\×XXqãœæXëW^qãœæVWåZqãxà> p^^ß`gd�Ãp\Õ\áá½Cp30XmûôäXZWVmsõðmõÕV ñ ôäW ðo9,õRPo J@äåp ðsP�Iöo žH÷g5NbNðl÷o HölfTôäã‰õ\ ñ‰õâ½Cox¸êðh`lñ¹òXäP h`nä|[s`5ÕôïYXàðôý$ôsuõ›€™€ñâÿÕÈ»¬ÿ�ŽrÿdUF+ý)€ûðßÿÕÅ»«ÿ¡”„zÿj`PAÿ2# ÿõéÝÿÌ»ªžÿ“ƒvjÿ^RF:ÿ." ÿþòæÚßɸ§o€‡ÿucQAÿ5% ÿþíÜÊÿ¸¦•ƒÿq`O=ÿ, ÷æÖÅ´³€’‚q`¿€ÿ=+÷åÔÄ×€ÿ¢‘�pý_ç€<*ÿw}]_\ ß{XWXPu?[hs ù¥Y÷YÿjVÿXu°¯g<Z*LXL ?5LlFiWI�h�qlÅ�]L÷X]Jÿ;Z#ÒZÿ ;wÒ¤À¬t‚pWu^&LWuö°f='hI^ qW5^'lG"- �WlX" �(h… �(W›Pr$» ²�'^ÞÒW^ÿ R<'[#ä'[ÿ <'wä'"$ <'5$M'¡V»u€æ%3 V«u\G"^&VW#Ô^ s5ZF“8YY@¼“8§àŒ!‚8h ‚8ê½" ^ øVWfwÓì5d÷0ÿ {W__|N€`)p @` @g[@î0W^€`÷3B]XdjƒscÀ@÷4DÊQ r>KZ7°PL] Dã]W7AÖ`tJ]x@ zDX]”K—[”JWmP"DY[� ð ÉCÃAÓEÕ`ƒ'ì2å@GPÓDE¡Ì÷E%à)ìC.Q\$¸‘QZr@UW@ìCÇW\\`@4T  AATrÀTŒbP[RŸWw {¬ÁhRø„p£@…Á{WVh·$BV]°'ø9á…P ðVm`g÷Ç™YfÈ©Z`ÎéÑ…P��û ’ìCVVf\÷3H`d÷0„Q¿@w0AV`gœ`ß_`g^Ýi]h]_ï _‚QV^h ‹P �ÀñP‘TøP@a\E` ‹P MdW\WdZE` ‹Pñâv`–p ^RObZ© XcXE` ‹QTMdýÀXcWE` ‹P�MdW²`î0V+V[E`‹P�À@aT Ìe‹ÁÓ@ûPÙ�`~¾À}XV d Ñp¿ u`ow ! z¯HÿiX xìpР|[mà`YSta8pY[1VbuêÁ\‚ÂMXèàåUχlÚ�‡è>χ›PÛ€æö�ï‚êà‹r Û€ߌ, Û€õŒƒ¡Û€ œY“#œÙ ‘ˆßŒ°Û€õŒ„±Û€ œ¦±Û€#œü°y‘ߌD?ÀÛ€õŒÍQÛ€ œLÑÛ€éà‹“ߌ“ õŒ¦¡Û� œañ�21«VÀ`-¡ä}AÏ€ïV^V[½Òh £/£ªÙ @.·¬l² ¶ Ìƒ¿¤›PÚ0à­§°h0·ª&á³ #ɺPÀç0È"¼Û¢@!°ã¨HâÚ0K½³Ê"º¯áh¶«Ñáç0Ë«Ë[\Û¡ö«ââh ¶½² »$a‰°!»Kñô06»2Q³°a»Wbɰp!Íܳw»Ãñh¶«ÀÔñ_À!»åñô0Ë«Y_ZÛ¡ ö«Y_ð¢¡ÍB²bÌoð³°6»YH�žÀa»Y€ñ °÷ÍÇÃ!»Xñ²¶«za5Ð#ÜÂUË«X ö«X0ÃIwݲ8ÜÅ¢ 6»ˆQtÐa»™Rß°ÍÝ�Ó!°M¥§Woȱw»W²E¶«W�pà!»W°¢‘¶ üÙÛ¡7ì0² ŠË«WE² ö«00ơˠ�ëÛ¡"ì¡ptÐ6»í�‡àa»’ Ð6°ãë±â$7ìÅ¢ uìÚ¢ Šìï£I ì³"ìð¢ Ëì² àìq@öìaç0à!»™¡3ð6°lboWï é4b\û_ÎbW\Ûtïp8ôsS_߀�€ÿéÒ¼¦ÿ�xbLÿ7! õõß%‚ž+€qZÿD.ÿêÔ½¦�zcLK‚ý Q€ßɳÿœ…oYÿB+ÿÿèÑ»¥ÿŽwaKÿ6  ôÝÆ°š½€ßlV@ÃÿýæÐºÿ£Œv`ÿJ4÷ðÚûð…s¡bøˆo²-¡#›\Œ“Šß‹\¢“ 1 ³ ¸”çô ïƒ#›…±b‘õ€$W»’7›°-¡ß‹¯±Û€ ó IJ5‘ Ú²K‘!’æ“cü“ y¤„�)¤#›$a¡7ZqÀÛ�,6`K‘ß‹2QÛ€y ó WbX[ �EÂÿ‘,2“C,H“¤Y,^”p,u” #›YMo'"ëâ+07pÁ‘õ€¤£4x’ <†Àÿ‘ß‹šÁb‘ó ¯Â-¡ ›�ÅÂïá,\ N3ýbàÐVzt`vh¾ÎÁtzW\ 6²[?YY\ ÍÂú€}Vþ„XZ\ �ÿ{swZ ;à"“Y +�åÀÿswXYVamÛlK°sqл\”]Ww+�è°Ú W(� £Vvó+�ưsYû:ϱsXXW‘{Ý`βK¢uIpT§a°ï`[$�ÎÐ  árÿuu`b`d×f^‘oo‘«ý"‘odY ö}—¢`~È0¢¿o`ab «¥_<�À«¥YY« £¢çW   è°oZ\š¿ «¤WX3�ϤV÷_«¤VZ[Ý«£mpkõ€6>"‘mdh° ±ßdXh!´bmçh°è°mb`¢)° °Ð°?°W)° º!´`FÐyV´[Ã`¶¸�`°I±^ Ypo;²Î°o†°)ÀmWÿ_m`afmÑ`°±£À¤µ\©¤´ùÀ `° °»_i�P;�Ðï{lVZ bsf¿krl |Õ´XXÞ±bã±赈Àóµùè°)ÀlV]Z¯ [Voê ÇWZÀ !ÆZW !Àþ% k{\Va õ~‡²k�Pm ‰}kVV[Âé!Àôw�`xg\Yz^pÉßY[z�ËW\ïz]•ËVz(×ÑtÂVŒÄ�À½É*¢Á ºÇxÅ ÎÇìÂZ�Á§ÆYYyÄ �ÆTÒ�ÁÛX�À Û"¢ÁºÆ yÄÎÆ_ÓR�ÁjÜ¢Á V×Õ- �ÆXXyÄ ¦Û�ÁˆÃ¨Ù¢Á§ÆÕÓ¶ÀˆºÆÀ yÄÎÆûÓ>Ñ”òÜ¢Á §ÀöÕÙÅT.íµÁò×°Õ�À®âwWyÄ�ÆW’aÕ ~ë�Á~ë¢ÁˆºÆ�PyÄÎÆÀã�Á$Ëì>Ñ·ì¢Á óí¶À‘Cæ¡;Ôý¢Á ä0ýµÁ§À% iovîh°­\õZ®g÷Ygõ[\° ¢ib[i°\“”ðwZšöXšöçV +�H ibVW®ð£�Áõä £�ôõ^ztñRþôsp £ú€¡€éÓ¾ÿ©˜†rÿg\PDÿ8, ÿ ûîäÿ×ɽ°¿£—‹3€sÿ_QF1¿óC€Ëï·¤K€~lûXS€.ÿòÞ˸ÿ¥’~jÿUA-ÿòßÌï¹§…€…qÿ]J9&û�€øêÞÿÒÆº®ÿ¢–Š~ër·€Z»‚6ÿþòæ¿ÕǹӀ›ÿ�~paÿSD6'ÿ ?ïô ¡ðV|X[ G ÿ|XZbZZvw ß ús ý üW\v^ ¾W\sVõ^V^s•1Z@ê1X@Xs}1W`vˆwsXbW„{Þ§Vs´ý ªXV[b``öù°Ô^�|XV]Ï`õ ¡ØW`Ï( äX·^[Ã� H–¡|_W^] ø ÿ[|W XamîK�slÒ V]."±|WXç ë^&"V` /$WÛûéÔWW[`ó Äa±@ Z` ò;%YÜG%X`¤G%ç;%7 /$Vï_`G$V^`3›%Û�$O I ›%s ³%ç G vûVZÀg´~ß�Xop“Íñðê#t ´îbfmÿmsmxvó}pÀ4o`krè^ 0Å�P{ufdôY1+4"Ó70ù�}Û³ob_gVlè³}ï³oagä°^5Âk3áè°H ÀÜ�(}¶1zVX_þ€ÚÀ nÃwxvÇj™¨9�Á iº:>ÑDÌ;>âhÕ²¬2aÕ¹0Dõ9�ÁÌ0õ9>ÑLB¢Áò01àø3ÙÅG"ìÆF_Ó>ÑÌ6¯ÖI¹6ÂÖ K>ÑKˆ@òò6û×FûÓ�Á$FçóL¢ÁBF7ä"+ñ Ì0Z¢ÁËGbæ!Ì0{P¬0uåÌ6‡æIk[�Á k[+ñF’ÀçFÔç ¤\+ñD¤\¢ÁBF$ôyQ¹0$÷Z+ñ0V9øò0#�“ww£Ìów{�  Ëéô2uþ”‰ Ý ¢wsû `bd^lf �lfÉðìl`% wg�'}’cV_[�`~ca[V}‡F¢ÿwXWXZ} †hòw8àÀ Ä`> X‘-ÇžcW_g Û`Aa;WV9ÀñÒc”�®ÛcvxY¢1)a²vãw`q�£“pZÜ\“pY%vX»ß&uW+“vßsWó¡¢vmßWôø‘vj)\ Ü�Z ä“epäWb ``–°v^?Z\Yp`[Dâûtzý…XX\  �™r+Á’\° •Y)[þ…¶° �ø�þ�êþ„Z� �Ný ôó~õ¤¢òäÿÖÆµ¥ÿ•„sbÿQ@/ÿüëÛÿÀ¶ Šÿ€vj^ýRC:."ÿ þòÿæÚÎÂÿ¶ªž’ÿ†znbÿVJ>2ý&aöýêgÒÆ«ÿŸ“‡}ÿoaSEÿ7) ÿÿñãÚÿŰ¢”ÿ†xjXÿF4'ÿ ôæÿÖǸ«ÿž‘„wÿj\OAÿ5&ßóßËË®ÿ£–‰xýiËÐRF:ÿ."X¯|pa�1 r|Ípnq(“ÉJ”Xˆ�'• ”ø€r� o_x{øoW21!70Å\‘C3 70�m^xvvV�Þy”sðС|mß][+L’m]çV›�îmZ[7_YV_’t»Á«•êC3¸— Â’xfÓvDá«’°�hucffúðà�ûmW12Gõ{ ú‘C3 öl} 0r{”70Öl21 70ûl*î“ v“lÚ’ .¤C3í v“iwL@*|Û¡\ \]^d¦OWXd¦opd¥CZYó` pŽ£z  pÎfpmq úž§¦WW ´  fÇaju_“¸�ûfaÞ5 W¦Åa|föÛ¢N$"d`vo÷Íâ¢bukZÏ[{:±ÿ d Oaxû£Š’��î©�`soÉYiX�_ ì'°5 X*.± 3¹W.± 3°ûÿ`mkW^^½.X¶]Z Wµaöð°eµaXWY{ W´b`XWš`øe°ã�•°V\vsf·bVYcð/ž¶Z訴ó`e°%°GúX²_¹ðYváÐÖ²…ÞµWW°ì¸£ì·Ú°à ÇsÓǰÄYW§Y{s°ð3ÅX<À t@Ç:` ÄXZW<Àù Àñ^x7ª#¢[f!S#[r!Ê/#[~!ë [Vo|Y Z+/ï¢%[¢!ŒÄº!¿Åg ‰ €ÄÆ! ¿ÅÓ!/#Y?]Wi¯ðŘ ],«a|Y\£ S#Y\Yi®ðÃß\ViûÄ[^÷i+Ö`->Ó[]i+ÕÛ}CÕ\w þàîaÐo gÖiò+Õ\ÜÔ[[w½gÕ[o—ÖiÓ+ÕO ‹ÕZw{gÕZoÇÖH0P+Õ[ ‹ÕÐÔy[|Á‹ÕXwgÕïXoæix÷ÕßÁ‹ÕWwgÕïWo?æiÐ÷ÕÓ!ÐñYõǪeâYþ`Âp|GÀVopVdð`X¤ +AyìW‰à�àfá5Wæ` !YV-ppü³À X_Vu`pßhfv'2X^_ib\Zs¢� À\îßàX[\äá ÀËá^ááôÀÛâááE#� ö†ÀñùEdz  öóáô>ûH0�>ú™° öy0d#�]ûåW\b[ñ‚ù¢z ÛâŠñ™°Ô…õk#�[\…Z¾ÃõÝ KÀÑöXz¾ ´ôs^…¥€£€ÿóæÙÌ÷¿²€œŽÿ€o^PÿA2#ÿöâÒÿµ¢�ý}7€WE2ÿ ÷çÖǽW€ÿŸ“‡xÿiZK<ý-o€ùìßßÎÁ€–ÿ€mXCÿ0ôÿß̾žÿ~^? ÿ ÿðÿåÚÏÄÿ¹® •ÿŠzlaÿVI=1ý%Ý€øéÿÛÍÁ­ÿŸ‘ƒuÿgYMAÿ2&ýá1}`?g Xàô|ªàûf ZWYû X21ã{ Wû_}`^Vo¿or �HbªP T[N bd’P TpoÎ`~búˆT}_`½‰ z ZWÈ1êÊÔ}¯�\ô`æ!}_7Xg¢�+·a¿Þê� G!_X`_\pUডÛç]XpÐæZ_p{ô^påбX¿ º"¼p®&Wº¾_iY<4a}ˆðïIE"[_ùN IW\vbo²ŸðYÉá^"ib[pû…E!W\YJN#W/°Y#¬±\�+„E!V°  qÀž!vÒpЧ$Y ¦%wX ¦%W ¦$¿V^ ,!VÿV\`WY^É‹œ#®°Ý Õ"ZÝ ÷%X Ý ¿} } fd#Rsßgb`s*PVz¿`b M2v(1KA;,009<K9$Q<K9ýQ<¹,0ø�~bV_¡{›Î0|}\Vý‘>*Po^â‘¿1$¥ÃÇ1 Ì0¼1ZÁ3iC Ì4è0î’î2 Ì0H»�ç1¥Ã[Î`á4Yé7Ì4$@þ70GEÐÐ á4Xé7Ì0zà`Aþ4A\ p“Î2a@OGmDäýPÕ8Ì0�{`WÏ\Z¹0h�{]ûXm­Ào` lÞ¯Bx~b^Î`œôÎD@ÙFXZüÙ@»�xokoV\_VYW_d3 kº2wxko90YW^PÙPY�wuplxïâ WsN)VVZ`é°8WYCPÍ8WW`qÀVYsÙÞ°�ws©à '.’vwbÕàÞJq…Q³ŒP¼0vj;°o�`XYVT PmÀvøµ�ŒPY�vX[XŸZz ¤†q¹SYVzf í¡&ÉU ÃP×TW©ÃP>ƒQXZf ŒP�žúPVfŒP©�vÿWpW^s`YZ§_SaXbdc Pd)cfVcvDmb�2f–Mdeo…£S |fW^¢T PaîPgfŒP uw1У_bñÞ°²e^»`ôÞ°»�uÉ`\^Wb¿s ZV¿d^VY^`bKÀÞ°Y�Ùu¨Û` Þ³uXŽ d ód qï` –vV]ï` w‹ð-uW[ï`Þ°h�ýuŠð[[Xbk]KwZ[Vï`Þ³¯szsW”  Y"|ûsu×ðm |´É±À'â¢pvF‘T�’Zê ŸuX®°9˜£²qY¹wªàê¹uWó ÓwYÞ�À%ôóz_¦¤wñå ÍÁÿ¦š�„ÿvk`RD6&)ÿøêÜÎÿ½±¥–Š~rc=ÿK9'ÿñßÍ¿±£•YÿyhPC÷6(g ÿÿôéÛÐ÷ŹušŽÿ‚s_Kÿ8(÷úì‰ÒÄ׸¬��‘lÿZH6$ßí£Çÿ´¡Ž‚ÿvj^PÿA2"ÿ÷ëßÿÑõ§ß™‹€ÙiÿZK<.ï g�bd]¿ ~W[m,À£[X±“ Z”h?{Xa7× “ª%�)–t3‘8˜WWa)��X— #œ‘[�jà§O![�çZm�‘VmZq]£ ”‘V†—X|Q†– p†–WJ ɰ— 0 �Y‘V^ï]0W“V^\‡1Ù•°ä�,‘VÿZZVXbäùÅ }�Yvi~t¯dÔ¤W£ÙXÞ!¡^›p !0Q}�‡à›p Ô¡3¡í 0ï¯~Wæ~ hÑP []IW¥ß`W¥ï@W w~ß�^WM`Ïvb )P~¢[Y_\V\zŠ  Ž«"‰¡ ާ…àˆ¢ ´ª›¢)Ç«‰¡)P ¡81–®¢ãî¥Z% ‰¡Jÿ§W­£ÿ§÷¤ÿ¦EY÷¤í¦®À®¢ÿ¦¤™0®¢í¦™0Z‰¡ø)P�Ùð[df<}´Ûpd`)PY�VV\ ͒Ο°Z¥°€±V“X¥°�²­ n¿·V±¶Wá�Ž¥¶W¥°ð ®ðiÿ{]^a]X)� ®ðh{ÁÇEtÁ)�~  Ál‘ЪÁ)� ÃdÀËvfúp69ÆCÄû ûÞ"x^Y[bßof cW‘}w…gûuÀ¹  ŠsÂX'.I�á {ÆÏ F wwÀPFµÂT Fw'²ÅwX½ÅWFÿv_WXjpýÔ7"vX ssû ©>¡}ugs{QpT`T ÐuÐTž9 uZV{ #Öuü T}sYÿvmffzjphÿwrrm@üû�BÑsurphv£Ì0I‡[ó ©ßÒ‡Zþ tÖYjéptÓmmÓà‘ÕR}Ñ�Ö‹ÑtÐ ”Ðþip[Vu‚¡¼ÚÉ@ÌÖ]dÇÑþÌÔZVddX[uïpuðÜ`¾ðÖaaX[{þÐNì`ÌÐòfÝ`û>à·Ð>à(.VáDæPDäQ`ƒÁFSá`' _äŠà FzãÏ FŠÀ'bu æð)˜Ã°ã»»äpsbó ¬ÉÏâxÀ×è¹ ×àj ïbosanÐ] ©ÕQøãZ¶ øYrþ ð¾áomló 9×ä*ñZ1ø@ T×àF bwÀ²Ãb‘¾á'.PòX»XõWûjwÀžã�ð@ ƒã�ð(.¦ð“ö3 “ô:vÁ ûY öz).Ôôs‹8 §€ý¥€òäÖÿȺ¬žÿ�‚tfÿXJ</ÿ!ùÿéÝÍÁÿµ©›�wqC€UGI€ÿ+ÿùíáÕ÷ɽY€¥™ÿ��uiÿ]QE9ÿ-! ÿýñåÙÿÍÁµ©ÿ�‘…yÿmaUIÿ=1%ÿ õéÿÝÌÀ´w¨œ¥€„x©€w`T­€<0±€÷ µ€ôèÿÜÐĸÿ¬ ”ˆÿ|pdXÿL@4(ÿøÿìàÔÈÿ¼°¤˜ýŒé€th\PD8”¼A¶ÿ€ZiY�X]S¡"Í’X]ó Ñ€3éÀ1í\~ bL¢X\Z/^BJZÀaG\aí�IZ<ð�!bYa­� !Z_�©Y`µ^àµÀµvµZòaYg ñX‰ìVž� i %V ,%‰ AJXœp-%�W_9&Ú %Ww]Q&\Q&pÔà9&�Ð9&XQ&wWQ&V%ïV_¥&^ t-%ð ½&[ ½& š¥&X퀧$ð°$¿[_\hú%[£6¸@5\® 4Zª[} Y2[• ‹765VE�64­ BM6^T�N5"ÁN5\6ÀN506N5Љ6�Љ6ÇX ‰6�‰6Vÿp�¾3Z\W)4ZÒ^�Ö5) â6^»3ã5]ú6WÓú5• ú4Y_oVVY\f Ý+E[6FZ�6F206F 6EuÁgE0rF¸@rFYÝrFXrFVÙ*EÉ(¯E\I*Eq 54òâW’’¤PYØ ßEXë ßEW0‰°ßEÖ°ÞDX_y`V^6PU` Vá�Ví�DV©ÐáUœpVU^B bV^Í`cU]á`Tž�³öTö0 ä“UZñ`“URªVÉ�ªVƒ�ªVQV,pTA ÚV^IprÛU]ZpÛU\VP²�X7 5 sÑ~/XWm^¬� “`VÙ` &f[Ò0 &fP�’Bgž‘&fX‚�^g’¬�&f¹‘zgG ü �(W]Y ÃZªW¾PôßCW"a@®` Áp¤ (V¾P'¼c¤Êee ùú0 awWoïœôclX�o*>¢qü`tp°Wˆ fb�T“!a –^5 •ú.b –\^VJEv[^� Ev�‘ –Ò�‘ owž� –Y_’Ãð]švž� –ÉQôEv¹‘Ãw[WxÃwA�²"ôó�= ¨ý¦ôèÜßÐĸ ÿ”ˆ|pýdL@4ÿ(ÿøìàÔÿȼ°¤ÿ˜Œ€tÿh\PDÿ8, ÿüðäÿØÌÀ´ÿ¨œ�„ÿxl`TÿH:,ÿùíÿáÕɽÿ±¥™�ÿ�ui]ÿQE9-ÿ! ýÿñåÙÍÿÁµ©�ÿ‘…ocÿWK?3ÿ'ÿ÷ëßÓÿÇ»¯£ÿ—‰{mÿ_QC5÷'÷ùíÿÜÌÀ´ÿ¨œ�„ÿxl`UÿI=s\[b×[Wf#`Y�]Vß^u Ë2]V \u `d‘<� @Ë2ô ·ðRªô ÃðY•ÿà� e–Æ e–Ò e–ç@üÍ’k�X•–ÿ@•–ø²•� []V vl20W  ½‘C Ã’‰W£}Ðup@C’}Ñ M“ZVYu|@ç”Ræñ•Xuˆ@gÑ~Y[\Xi#ób¢ðŽ"¨["¨ ð"¥W ^Õ¡rR¢`Z¤ „°¥ i§ˆpv œ°›YY) ªŠ ^Û �¤X^¿PÊ ž¤ËP¨¦×P¨¥]ãPÀ¦ÀïPÀ¦ûPÀ¦`À¦[À¦®°À¦šÀ¦ê À¦𰨥%0É-µ·@8¶w]8¶\8°ý0²[wugouØ@z8¶xÀ8¶„À8¶£À8¶ 8¶ 8µï[_ ®¶^ 8µq Pǵ<ðÒ¶`µU©£WjP ‘£WºvP ö¶] ö¶\ö¶qЩð°Ð&ÆÀ�Ð&ƪ0&Æ1`&ÆVI &ÅÈ  bÆn0 cÅf öµø †ÆK@†Æ20†Æ †ÆÓ0†Æß0öµ%0�ÎÆ^©E�YPÅ!¢c PÂ0Ç bYù`& p[£s ×ü`»vbYk q\V^°zÃ�P·Ðö³�PhàMÖtàMÖ^pMÕ"%0 qÖ›à‰4^>a‰ÖÀ ‰Õ¶±¡Öð¡Ö]©‰Õ]‘^iÑÖŸ@$ÆÕ#`éÖˆpéÕ½ æÿ°æ ÀæÀàæ#Àæ’0æYæŠ æ– æ¢ éÕ) yæb0yæn0yæz0yæ0#zå0µæ“@µæŸ@Àµæ#`µæˆpµåA %PòåM°éÕe ñæ[. €òåI¡òåç@ñæ P1^âU0ÑÕ¹!Qö] žQöZŒ6Ô�0€uöŠ uö– uö¢ uô]_° $]_°±ö)°$±ö^pˆ¦ôjPÕõÈ ½1j&ôst¿©€§þ‚çÚÍÀÿ³¦™Œÿ}n[Hï5"-€þëÿÙÉ·¥ë“E€nK€N@¿2$Y€ö¾_€Ò¿¬a†ÿsaN;û(wðÝûÊ�‚¦œ�û‚›€h[NÿA4'þ­€üïâÕÿȹª›¿Ž�qÇ€UÿG9+û×€öéÚÿ˼­žÿ�‚tfïUE÷€%ÿõåÕÿŵ¥•¿…ue�Eÿ5%ë»�b¼�aXa;}X2°º’ø'Y)°îaÚ° 2³P2¿P2 ËP2×PU0‚ïP‚ûP‚`‚ù ‚°�‚°Á"iÁN*^)q òâµ0Ì�ø{^ZƒY[>РH!9áÀT'’0a(ž0a'Ú°.W F#Vø ‹(">@ a Ž%z@ ‹(9à‰ ‹(Yð"pøz€ÂЋ Ù$.àa Ù$§P�×&³Pý V#zeña&zÜ…‘8Z 8Y• a&vO B7Ú°\‹ õm_ZEàð&ùm>Ðã&mX-–Œ%lW±à ‹&‘0Z# —9Ÿ`ã&k×�µ7—Xã&hM0Ï7YCÏ7V�"Ž#f‘a!©&ÿ0Ppð&dRàG$^àð&bˆ .GXöp×%�`o@ˆ0KD²àUGSPàIFJÐoGVÐo@~V…@ ¶çÂ_æ°M“·^sh¤pÿq^¿dfor ª@þ¢@\fZVWXzvbä ¹I•sÆ@ Ê@ »B}^ªØA ÊFYÔE ïKlovf ÊFXWÕD­ ÊFV^Â@vÆ@”([ØAÝFV#pØAê(W\3T(WZV¥^6Qs[ØA(WYÒ~T™[ØAÝEbb¿sVV~fo*°êÁY`©PàÒU_WWå\ØAÊ@ ^\YÍ™à [¢ûR[ÁhI hRàhXahª�`àA[b÷À�^ÅAãÞCPcØA<[`ºAZ|_V~PÅAý[dZbZXV\CsfÇ@€gx��a €fÄ÷ÀŒb [`¼�†`XVS`að€fXœd meȾ`‘QŽ` €fÚpVg¢Ž`€f´�ŒbØfVJÁ@V�ayäcmd]V]ÀV\ÅBâ6zøØBHpŽ ^ X^s¿jp ]sWrdr jpÙ ]m[ª°» \×"]mZ¾ÀT†vià†uYÑð †u’'±­víà †uQÁâÇv[òІp-‘WVu{6�zôóz ª}¨ðàÐÿ° ��ÿrcTGÿ8) ÿýñâÓßĵ¤3‡ÿ{ocYÿOE9+ßGêÿÛʹ¥÷‘…q€hXI9* �€÷ñ‰€ÒÃß¶©›—‚sÿfZL>÷0#«€úíáÔÇ‘õ«¿€�™re×XH£*Ó€ ÷ýîÝ€ÏÀß° ‘½sýdÃF7(ÿ úêýÛ�½®žÿ�paÝP�/"ëWvß[VVulï�~{wZþ€ ÆØ!aw›`›@� vo�pº©PçËBvjprp`ÿYZ_d kfË‘vdÑ�±BwkrÎC“^*�Ž uwâÑ�b)°*�¼�uwV7[Vhh�æ^”t�Rh�|�o“Zv’|–µZg‘|–X[h� þ|”g\VWVaóŒ"¿‘V[a©È�o‘aþ€}‰ð Ô‹”Þ‘`‰ð |”`_γ `È”þ�YVÇ`¥pð &Ô¦¢¦X îU¥W B¥\¢U$¥\¢3¥\<¢ÉQ§L¡B o‘`XE[á’ ‹””¡ò‘ ÷•=WKðh jð²¢õ[â‘­§Z[hcH¤°0¸ ÀÉ“/]^mW&�|”ñ V^pPù¨\]Pù¨× a¹–P‹”±YY©Pt|�Ù u›pgE·ìòP|“szÐ�Zaí$£sz›`YaÙ$ Ù psA %ýÿÁp`XYZfwåöRp`W“±ý˜´Z[_bsù˜°€±Z[^a´·`˜°á°º±û´µZ_f ÞÚ¶^f ¦µX_¯f^ ô¶^þ° ¾´µX^d ô¶]ªþ°ô¶\þ°ô¶[Òþ°ε´µWZ÷~¦µV_bfÓε00˜´WVú“±˜³o\sl~³ÀDØ!oþ€ËÀýÀ~™ÁZslX–ÀŽ oYÔÀZòP˜°³ÃeVºÁÊ@o�oYcpZ‘Á °ÄX[�–ÀVÑÁX[×à íŪÀÒ’À–ÀŒ@oÌ0—h²ÂîP‘ÁíÄW\×ðÄp‘Á&Õf`‘ÁÕ&Õ�ÖÃm^› YÎP‹ÑkÑÿ~lÿ{orp[Vm šA§€ØX[�Ñù’ÐE luWW^k`01®§ÔV^°Óù ·ÐŽ fw vdña�pjpìÐftXhï 7ÊÒtXXeßÐãÐÚÑrß‘G«BøÐ½àþÖ.¤þÐ�f�°ßÐ òÔpòßÐ ãÐŒ@f_ êŠBfð<ä10<àÚÑfÐ Pä\Ð\æWVPäVdà<à¶E du@gVáà¹í>’†áWgVnL‘àŽ dXÂp¢1ÜO’(¨â^±äWªã Àè^9 ±àôàbt[— ãÐ^�btXWæà ãÓ�bpV[[¢Ê@ûáa/aZsÇ@C¢ ðHp}`ôêÐæà ãÐ~Ù!d_Z_óø~W"0©&Jð¿0€Pùó0o@Dö§@o@õ_VÆÀ"^ˆò/‰^Ï"\ß"‰ðN^"ÿP"ï4ôs~0»õp©€ñÿâÓĵÿ¦™‹}¿pbU€:ÿ,ÿ÷êÝÐÿö©œÿ�‚uhÿ[NA4ÿ' ÿóæÙÌÿ¿²¤—ÿŠ}pcûVe€</"ÿûíïßÑw„œ�ÿ‚uh[ÿNA3%ÿ ýðÿãÖɼÿªž’†ÿznbVÿJ6'ÿ úëܿ;¯Å„rÿcTE6¿' Û€ëÿÜ;¯ÿ ‘‚sÿdXD0ï+n�bo\)^£P00 ›@ÿ~zzwr{~`$ G‹sY(s01¡@zkwª JŒ"zvÂ@ßdzQ£âzs/ZZXZN ì\rfðKð{ o·ÀVg 95aÆÁg�Š Øo,  ë¬V\h”ÒÀ! ºèôØÒºpmWÍX¸ ‘aý`Éöh &æ@`É #'¦ &Â`Á A'Ä o�V#`z; P)`&ÃWg �p†�)H ö•�'¦ö’³É'ÄÉß"`+öW¥öóÉ6Òº aZÿ]auxvifßv 4G[WÏ[ ŸB=0VµC4Y‚p­óÒzŸY[V[5š@™ªFR`s4ä ™[4Â[0à@zÿVZWWo{d`öl ’|_[Yóº¬4Wê¾·4^\_Ã6[]Ð7y@Ð7�pÃ6ø=ñÃ0�w|]_Xh G  F^_/ ŠÃ5]Ö° .G`.GYZà/FWfà/Fqá/E=ð=.FW^|GÐÄ.FLð–GwÀE\_zj°°GXa°GöÄ�é±E^_aùÚ@¬2\^^tèFÖ°õG]õGÇYõG§�õGVI èF=ð èF…@ CWè´ÐèFLð ]WZ ]W*`]WF`ÚFVÄ‘]WWVèE[²0¬W­À¬WW¬Wˆ0¬V¦¢Ðè­UÄÐíWXƒíWŽàíWÊðíUZ²0!gkð!g§�!g3PæíUY^®àUfY] Uféð ogõàog_@ogqàUfYP£gPÀUfp½g“À½gW½g ÀíPBXW»ÁíUù`*�t{Ð*�ôdÈ@] wXuWhÀ3 u7õ\ZW·7õ¸aÙ¶7õWðµµä[^úÕ ´kõ[_X³JkõYd°²kõfñ±µäÎàV°Ÿõë ¯(µäæ°l`ð‘sýà§íšï’[YŸÐX#zü™ ÆðÚ ôs†2­¶°‡Ì� �0�@�P�ø`�p�€ƒÀ³¦ÿ™ŒrÿeXK>ÿ1$ ÿýðãÖ`«�»�Ë�Û�ë†õö���&�6�F�V�f�v�€†�–�¦�¶�Æ�Ö�æ•tâ–ºÐï^ïw]ï\ïpð ï_`ïY ïwX ïW ï'Vâ–Ì0q'K°q']q'e°q' @¸q'­@q'Yq'XÓq'À0"r&V æ&9 ó'ÿ@ó' Pîó'\ó'[ó'Z ó'ý ó' °îó'W ó'V tæ&@u7^u7w]u7\u7w[u7Zu7wYu7Xu7÷Wu7V!Ä{m ÷7ò@÷7\‰÷6­ÐGÖ G]ãG>0GX îGW GV t÷65 yG]yGw[yGYyGœX°yGW÷6KpÇG^ÇGŒ°ÇG™°ÞÇGZ ÈFYqW1pWWUu[·/WY /W \@/Wi@/V Ð cW^ cW�@cW�@cW­`¸cWº`cWXcWW;cWV/VºÐÝØW^ØW]ãÙV@ÿW[îÿWZÿWYîÿWX ÿWW NÿWV ÿVz Zg zPZg�@ÿV=0�gX»�gW�gVÿVòàµg°µg`ŵgÖ ÿVÕ êfw\ög[ögwZögXög§VöfJ° 7w\ 7wG 7wT 7wa 7wn öf5…wK°…wwZ…wY…w‡X…wÕPöf êöeYvö`ºôù®¶°¬¶°  ( 8 H X h x ˆ ˜ €¨ ¸ È Ø è ø ÿ Z ÿÿß mo"WXæIà +-&�\ î,—[ ,—Z Ð,—j,–Âð`—[ ,–Oz—³0z—r°Nz—W,–Ð@,•%Wƒ»—¼ *¼–`îÕ—YÕ—W$Õ–Þ Õ–Šà §i@8Õ–ca#§[ #§jÕ–0J§w�J§®PJ§èÄ@Õ–~0~§]Ž~§[~§Ò~§W')¼•@¿§ �¿§10¿¦v ¿¥ÐÁ ó§Ãðó§C�ó§Y� ó§Wó¦ Ð84·™04·[4·¶p4·ÈPó¦ºÐu·ë@u·¼ø@u·Y(v¶W©¶z ¶·0¶··[©´V_z Ý·Apݶê@ ÷·6�÷·ÀC�÷·P�÷·j÷·XÝ÷·W÷·Vݵ^ƒ_Ç¿`_ÇÀ• _ÇÝp_Çø@_ÇZã'`Ʀ°­ÇX8­Ç¼ ­ÇV­Æ ÐÝáÇ^áÇ]q áÇNpáÇ[ áÇÇZ áÇ$°áÇXqáÇwáÇV­ÆººÐc×^c×]ƒc×Ì`c×¢ c×Zcצ°&dÖÄÀ¾× ¼ ¾×ÞÀ¾Öz å×øÀå×Ðå×Npå×Ðå×,Ðå×$°å×FÐå×wå×`ÐD¾Öü gçzоÕ] P�攡ŽçÝpŽçø@ŽçP%�æPÂçPÂç,PÐÂç4pÂæ@ öç^q öçÃðöç\ öçÜ: öçZöçYöç˜`öç¥`öç²`Âæ‚'@x÷Þ@x÷ë@x÷\;x÷[,N@¹÷Y¹÷'p¹÷¼ù�,ôy¯€­��%�5�E�U�e�u�…�•�¥�µ�Å�Õ�ðå�õ�œÏp†®‘k<Y±±92-“&V,æ±9- 9: 9G ,(�é ,ò` z\z�@,©A¡·@¡Ä@N¡V,÷@Õ É ÕÖ Õ³°1-”]:hÀ '^ 'Ö  '\ 'P '] '[p 'e0 'r0 &êÀ~'Œ0~'™0~'¦0~'³0 &áP¿'Þ@ &'@!Ù'ïPÙ'Ò�0Ú&`766¨p7FP7èJ`6Ð@ A7^ îA7] A7[A7NðA7˜`A7¥`A7²` 5\‚À©7ß©7Ù`0©7¯ ©6Ð/Þ6 pê7Ððê6áPGB@G ê6Ià +Gi@+Gv@$ê6¤` ê6(�_GNð�_GOÀê6È ê6Žp“G\“Gß“GÙ`“G¯ “GÄÀ.”F¼ áF:·�îG^îG: îGFPîGSPîG`PáEsq áEZhÀ IW‡PIV­PcWOÀIVlÑIV̰ÝŠW[ŠWY�ŠWWIV¤` IV‡ -ÌVÒ�ØW`ØV pòW0`òW ØV�ð g °gC�g$°g1°ØVŽqZgK°ZgX°@Zge°Zgr°ØV·�›g Œ°›g™°›gÌà,-”YhÀÏg- Ïgã Ïg10ÄÏf¡ wÐwY• ÏeX²° *v, N7wV*vpàQw^Qw”PQwª@QwÀßQwÍ0Qw¯ QwX ,–z ¹w6,—ç°x,—ô°,� ôù°®  % 5 E U e u … • ¥ µ Å ðÕ å õ BZX5ÿ5C132NDI3OD"%ñ9-šñé,–À 9—V ,•\›p S—'pS—\@¤S–¡ S– ð‡—\S–Ã@¡—uðS–¢À»—”Ð,•[uÀNÕ—]Õ—ç08Ö–Üô0ü—Zü—Y�ü—Xü–êÀ 0§ ð0§ °0§'ð0§4ð0§Að0§Nð0§[ð0§hðÐ0§uðü–¥°²§X�²§Vü–ûÐÙ§ç07Ú¦ô0ó§@ó§Ôæàó¥Z¶À·Xq ·>0·V ¶‚êÀ N·„N·i@N·\»N·[N·Y;N·XN·˜`NN·V¶lÐ÷<ð ÷]6ĶÃð€ê·@ê·Ýðê·êðê·V ê¶@p +Ç]�+Ç'p+ÇX +ÇW`+ÇNpê¶ZqyÇhpyÇ”Pê¶:±à ÇZ Çìxê¶ÐAÇÇX5ÈÆ áÇVáÆ÷AûÇpPûÇ6�ûÇ\ ûÇ[ ûÇ]�ûÇ'páÅuY@p V×^V×ZV׫V׸V×ÀÅV×ÒVÖ¶Á±×Xñ±×ÈP±×V4$WÕÿàåÖ‹0ò׿à(ò×óàåÕXRP ç ð€çT ça çn çX»çWçVÓæ‡ �ç^Á�ç³0�çÒ��ç[Ý�çZ�çYC3‚æ¶pÜæÕ éç- éç: éçPéç]éçjéçX éç{ Üæ@qQ÷• Q÷¢ Q÷¯ Q÷¨¼ ÜæƒÜåV‡ àŸ÷ÈП÷ÈPŸ÷Và,Ùà,¶p,tôy±€¯��%�5�E�U�e�u�…�•�¥�€µ�Å�Õ�å�õ�œ‘7‹V5“E<H`]@GH`j,Að,\@,§V,â `^»`]`\`¡P`·À`ÈÐ�`ÈP`Ðð?-œ@îÕ^Õ]àÕ)�Õó`ÕZ ÕY ÕB@ÕO@JÕVÏp J&ÔPW'• W'¢ W'¯ W'¼ W'ZW'®PW'ÈÐW'<ÈPW'V>K%�@Ù'^Ù'âPÙ'Ç\Ù'üPÙ'ZÙ'PÙ'5@Ù'B@Ù'ˆO@Ù&"` [7mÐ[7]C[7ž�Ù&Ð�7À”P�7ª@�7·@Ù$Y_’æ0Ã6NÀÐ7Þ@=8Ñ6ë@ê7Vê6ZpÝG^G] G9ÐG]�G'pG€\ÀGW`GvÀê6áÐtê6îІGZ†G ¼ †GÉ ê6"`ºGã ºGç°<»F áG áG  áG- áG`áGP�áFºc` /W^ /W]» /W\/W[;/WZ/W™°/W¦°/W³°/WÀ°áF¤`ñ±Wã ±W]; ²Vù�ØW ØU^ NòWZòVF  g(@ g\ gp gwZ gY gdàòV̰ggwgg‚ðgg• gg¢ gg©ðggÈÐ0ggÅòVlÐ:óUµqÜgÃpÜgÐpÜfÜqw,Ð@w'ðw: Üf�� Üf‚ºP Dwi@DwvÀÜe]Ò/àkvA@xwY�xwXkvÜpŸwÍ0ŸwÌàŸwÙà,–È é,–ü ,�^ôù²°  % 5 E U e u … • ¥ Àµ Å Õ å õ W.ÿWEDDC:2×0ÿa.\vGê-\~0,—[@,—�@,—œp,–Þ`—Üß�`—\`—[;Fa–Y”—üД–ºP®—$0®—10®—P>°®—K°”•[à ”•¬Ñ ü–‚À §hðü–m #§„#§‘#§žà#§·À#§ÄÀ#§X#§WE$¦âЋ¦îј§óà˜§ð˜§ ð˜§ð˜§'ð˜§4ð˜§C˜§P˜§]‹¦i·w·„·‘·ž··À· ÄÀ·{ ·ˆ D¶âÐ�¶Þœ·óàœ·ðœ· ðœ·ðœ·'ðœ·4𜷀Cœ·Pœ·]�¶ºPÇwDŽǑǞǷÀÇÄÀÇ{ Lj !CÆâГÅ!á Çóà Çð Ç ð Çð Ç'ð Ç4ð ÇC ÇP Ç] ÆŠà"×w"ׄ"ב"מ"×»Ð"×n "×{ "׈ B#ÖâЗÖp`¤×óà¤×ð¤× ð¤×ð¤×'ð¤×4ð¤×C¤× P¤×]—ÖZð&çw&ç„&ç‘&çž&ç«@&çn &ç{ &爠A'æ• ›æ @¨çóà¨çð¨ç ð¨çð¨ç'ð¨ç4ð¨çC¨çP¨ç]›æ` *÷w*÷„*÷‘*÷ž*÷«*÷n *÷{ *÷ˆ ,”¡,¢ ,¯ ,À¼ ,É ,Ö ,+&&ôy³€±��%�5�E�U�e�u�…�•�€¥�µ�Å�Õ�å�õ�œ>ÿ2= W>dßš™>è<[Væ0 NG&i@,v@, @F™0F¦0Fp³0FÀ0FZFÚ0Fæ`MGó`®p8® qÈ^ È0`ÈB@ÈO@È)È6ÈC®�@0'™00' j0'w®Ð@d']Cd'„�d'ë@Le& ø@˜'P˜&À˜&Ñ‘€¿'>0¿'K0¿'ù�˜$Zu_` ó'Yó'wXó'Wó'§Vó&+Ð47^;47]47Í0î47[47ZK56Y‚6ÇÑ�7É �7Ö �7ã �7ð �7ý �7 °�7°‚6/á÷7~`÷7: ÷7G ÷7T ÷7€a ÷7n ÷7{ ÷7ÝpJNø6VlF yG`yG#`yG0`yG=`yGÀJ`yGW`yGd`yGW�yGVlF²°ûGjûGwûG„ûG‘xûGžûGXIô%‚4ÀVW¢ VW¯ VWX»VWV VU^ºuÀ —WX VU]J° ±W)±W°±V¿°ØW\ØW‚pØW'V±V4À ga ¨ g¿`VU\EÐ3g[wH4fXMg• Mf­Ñgg¯ gg¼ ggÉ gg³0ggã gg4pggèù�Mf/à Ïg]îÏg\Ïg[Ïg‚pÏg�pÏg]�Mf Á*w{ *w„�*wZ ,–Žp^w«^w¸�^wÅ,–‡ ,–ép ŸwìŸwð Ÿwý Ÿwç0xŸw°,�Žôù´²  % 5 E U e u … • ¥ µ Å ÐÕ å õ õðBZÿX85C5V6BL"R¡ U-_¡ ,— ,—),—6,—C,–9!m—]m—jm—wm—€„m—‘m—žm—«T@n–¸Õ—ÅÕ–#°ï—Üßï—] ï—\ ï—[ ï—ý ï— 0ï—0ï—$0ï—10Õ–¥°q§K0q§X0Õ–AÀa˜§ˆ Õ•éÁS³¥p~1¿§Œ0¿§X¿§œp¿¦<à ó§ ¿¦OÝ ·^ ·]Ý ·\ ·[Ý ·Z ·YÝ ·X ·W� ·V¿¦3ðî�·^�·]�R�¶\¶¶Ä�@÷ã Ã·œp¶¶z ê·ìê··@ê·Ä@ê·Ñ@ê·€Þ@ê·ë@ê·ø@¶¶z îRÇ^RÇ]îRÇ\RÇ[NRÇZRÇhpQSÆ�«­Çv@­ÆVƒ@ÇÇ];ÇÇ\ ÇÇ)�`ÇÇã ÇÇð ­ÅW_Ù`×^×âP×ïPî×[×ZN×YÖJ0p× { p׈ pו PqÖ¢ à¤×¯ ¤×‡P¤×W ¤ÖÂð Ø×ã Ø×ð ¤Öø� ÿ× 0ÿ×0ÿ×$0ÿ×10¤Öz¡@çK0@çX0À@çe0@瞤Ö`OŽ‚æ]ŽçŒ0ŽçW£Žç¼ ŽåVÐ 8ÂçâÐÂç] Âç- Âçý Âç 0Âç0Âç$0Âç10Âæ=17÷K07÷ƒÀ7÷‘7÷ž7÷SP,¥0Ý…÷[…÷Z…÷¼ ,ëÀ,)�,ð6�,C�, ôyµ€³��%�5�E�U�e�u�…�•�¥�µ�àÅ�Õ�å�õ�œu?g½“Y91C<[r#0ˆ "V,:=09^9ÞÀ9ëÀ9)�9Í09Ú0@9ç09ô0,p`,A@»e°»r°»°»Œ°,‚@ü¦°ü6r0"˜°#'P#'ÞÀ#'ëÀ#')�#'6�#'€C�#'P�#']�#&µp˜'p˜'üP˜'p˜''pî˜'W˜'V#&ø�ó'˜à�Àö$œð@ 7zP 7œp 6RP 47wW 47V 6:ÐÀ [7^ [7æ`[7ó`[7p[7üP[7p€[7'p[7ã [7ð 5ZÂÐÝ7`PFPà4]Ý÷7\÷7[÷7Z ÷7¡P÷7Ü®P÷7W ÷7Vé ÷6@ð_G^N_G]÷6Ý@†GwW†GV÷6:˜°­G^­G=`­G\X®F¡ÐáG‚páF¨pûG˜`ûG¥`ûG²`ûGÃpûGÐpûGÝpÐûGÕPáFø�cW^ÝcW]cW\cW[cW#`cW‡YcWá@cW)WdV6ØVœÀåWã åW¿àØVÐÀ gâÐ gæà g\ g:  g]�ŠØUYÐZgzPZg\;Zg[ZgìZgŒ°Zf@ð¨g�À¨gïYV©fXxÏg²àÏf]^égPég,Pég„ég‘égÝpégêpÏf\¸DwFÐ@DwSÐDw`ÐÏfJ°xw®PxwXxwØPxw6,—C,—P,—ÞÀ,—¼ëÀ,�¼ôù¶´  % 5 E U e u … • ¥ µ Å Õ xå õ C27RÓ3-‘<’^��dÊ-^Õ ,–ó°c:–À°F—®ÐF—$0F— `F–hÀ z— z—  z— - z—žF–ÐÀ»—v@€»—ƒ@»—~`»—‹`»—Z+F•]( §ð $ ¦@ð#§‹àb$¦˜à€=§®Ð=§$0=§ÈÐ=§VÓ =¦· ~§^Ý ~§] ~§[ ~§Z~§#à~§ˆ0à=¦MpÙ§iÀÙ§\;Ù§[Ù§hðÐÙ§~àÙ§‚ðaÚ¦W!4·ÄÀ4¶ N· `¤4¶˜° 4¶¾à 4µ\ºÐ ‚·^ ‚·]» ‚·\‚·[‚·Å‚·Ò‚·ß‚·ì‚·ù‚¶±aÇ ÇC�`Æ�ð+Çœð+Ç©ð+ÇY+Ç>0+ÇÀK0+Æ”¡yÇ¢ yÇ\Ý yÇ[yÇZ +ÆÏðºÇÒºÇߺÇìºÇù+Æ!ûÇÑ@pûÇÞ@- þÄZ"×¥à"×üP"×10"×{ "Ö, cו c×¢ c×�ÀàcתÀc×·Àc×Xîc×Wc×VÞ"ÖY_Ø×^ÁØ×)�Ø×,Ø×[ ÛÔ,Ðç¥àçæ`çw�æü MçÙàMç0`Mç=`M篠Mç¼ MçYMç»ÐMçÈÐMçÕÐæWâÐÏçïÐÏç)�Ïç,Ïçë@ÐÒä]�÷ $0÷n ö<` 7÷w7÷n 7÷êð7÷ˆ 7÷• ®7÷Võ[c`î’÷^’÷]’÷ý ’÷ °’÷°’÷ÈP^ÐŽ$ôy·€µ��%�5�E�U�e�u�…�•�¥�µ�Å�Õ�å�üõ�œ1C106Dÿ12NTHYRI<?ð1°jG?ð , 9æ`9w�,q±`#``0``=``¯ `¼ `¥à`»Ð,(�ÁÈ”PÈ ÈY�ÈœpÈÏ`,ü i&: #'P�#'0#'OÀ#'\À#'>0#'vÀ#'X0#&Øà ‹'r0‹'0‹'Œ0‹'™0‹'¦0‹'³0@‹'À0‹'¥`#&`7<à7]h6Þ@'7ë@'7]�'7j�'7n '7W '7°'4šðŒ°‚7=`‚7¯ ‚7¼ ‚7¥à‚7»Ð‚7ÈЂ7ÕЂ6ºÀê7]ê7[ãê7¿`ê7Ygë61°+G>°+GK°+F⇠RGó`RG] îRG\ RG[ îRGZ RGY îRGXRGW+F\ß�ÇGhpÇGupÇGwYÇGXÇG‡WÇGÏ`+FW°Ýf#V^/W]Ý/W[/WZÝ/WY /WXÝ /WW /WVé /VÂp —W^—W]—W[p—Whp—Wup—W˜`—Wý /VáÐ!ÿW0ÿWC�ef: &fVà3gÐp3gÝp3gêp&e^¥0 gg[ðgghðgguðgg‚ðgg�ðgf Àµg©ðµg¶ðµgý gfï ég)�ég àégà,–tpw9ÐwFÐww�,–B Qw‘�Qwpž�Qw«�QwZ QwYQwÉ QwÖ ,–âq°¹wð ¹w]x,—ïÐ,�H&ôù¸¶  % 5 E U e u … • ¥ µ Å ðÕ å õ 3082{CA‘2NIC"­Y3ðq-Y·�,—w�,–Ä� F—dàF—qàF—~àF—¯ F—«,•X¿±”—Ͱ”—Ú°”—ç°à”–ó1È—@È—\îÈ—[È—Z�pÉ–Y ¦¡ �§T  ¦â  ¦"à=§mP=§zP=§‡P=§”P ¦Và ~§®P~§»P~§ÈP~§Þ@~§ë@~§ø@~§€P~§P~§ ¦Øào¶- ·   ·G ·'ð ·4ð ·r0 ·° ¶ 0 h·™°h·¦°h·³°¸h·À°h·V µW›ð¶·Ðp¶·Ãð¶·Ð𸶷Ýð¶·Y¶·Xwn·¶WÇ6ƾ`+ÇJ`+ÇW`+ÇAð+Çq`+Ç~`+Ç‹`+ǘ`+Ç¥`+Dz`Æ[@­ÇÌ`­Ç¶ð­ÇÃð­Ç€Ðð­ÇÝð­ÇÀ­Ç)m®ÆB@×O@Ö9¡/×i@Ö+P I×]�I×j�I×Hw�Ö‡ ÖØàŠ×Ç^Š×Ñ@Š×\Š×[Š×ìŠ×€PŠ×PŠ× Ö01læ>0 çð ç>° çK° çX° çe° åV‹1Zç°Zç�pZçœpZç©pZ眶pZçVZæ¾`µçÒ�µç@µçì�µçù�ÞµçZk¶æY÷)�÷P÷]ö[@ 7÷]�7÷j�7÷w�7÷„�7÷«7÷¸7÷Å7÷²àö9 ¬÷Ò�¬÷À@¬÷ô°¬÷Àð+2 ôy¹€·��%�5�E�U�e�u�…�•�€¥�µ�Å�Õ�å�õ�œTÿ'G PWR D_RIVER<\ûP«xG\`,^;,],G N,V ,‡  mw^ m] mw\ m[m'Z,¡ »»Ð»ÈлÕлý ,0�ü]ü10wý>0#'- #'>°#'K°À#'X°#'e°#%Y@ q'w�q'„�q'³0q&Žñ¥'Í0q&ÝA¿'ë@¿'ø@@¿'ã ¿'Pq&+P7â°v6  7\7SP7]7X°6ÔPÝ [7Y [7X! [7‡Ð6`�7ž�@�7«��7Ú06I`Ã7ÝpÃ7\Ã7ô°Ã7¼ÀÃ7XuÄ6W;GVF“Ð+G[p+Gƒ@+G�@+G�@+Gª@+G·@+GÄ@+G³°FO� GÐp GÝp¸ Gç0 G[ GZ G t¡F@ûGP@ûG(@ûEZ¿°"W] "WO@"W\@"Wi@"Wv@"W¥`"W²`"VØ`ŠW»ÐŠWÈЊWÕÐîŠWYŠWXNŠWWŠW)s#U‚¶ÀòWCòWPòW\òVÿ` &gO@&gè\@òVâ  MgW NMgVòV“ÐòUYgð�g¸��gÅ��g‡W�gù�f9 îÂg^Âg]rÃf\ég1°égwZégYégwX égW éf:`  7wW 7w‡Ðéf‡ ^w¡Ð^w”P^wÒ^wÅ�^w²`^wùéf“йwÙ`¹wæ`,— ð®,�vóúº¸  % 5 E U e u … • ¥ µ Å Õ å õ þKJ>23ÿg <’­^Üð€G”^éðN,—X,—À-–(ÀS–RÐ`—P`—#`î`—[ `—Z `—r0`—0`—d``—q`ÂS–Z~`Õ—ÅÕ—]ÝÕ—\Õ—[Õ—)�Õ—6�Õ—C�Õ—À~-•OJ§10J§ >0J§]J¦· ~§e°J¦“Ð ˜§°˜§Œ°J¦q°¿§¦°¿§³0¿§˜`€¿§¥`¿§²`¿§ùJ¥]ºz ·\·[w}¶ZA·wYA·XA·‡WA·jA¶¾à ‚·„‚·‘‚·ž‚·«¸‚·¸‚·Y‚·X»‚·W‚·VA¶¶ÀÇ Ç Çó`|Æp8Ç p€8Çp8Ç'p8Ç4p8ÇV 8ÆØ` †Ç¼ †Ç\†Ç¦0†Ç³0†Ç ˜`†Ç¥`8ÆW0áÇù„8ÆÞ�ûÇÙ`ûÇ$0{üÆp"× p"×p"×'p@"×4p"׃À"Ö5 p×w^ p×]p×w\p×[p×wZp×Yp×wXp×Wp×'V"Öƒ"ÖÄzµ,! ç: çG € çT ça çn å\ z!ZçNpZæØà tçªÀ@tç¸tçÚ°ZæØ`¨çw]¨ç\¨ç[¨çÝð¨çêð¨çïXy©æWN÷Vö 0÷^÷9P÷O@÷\@÷i@÷v@÷zP÷‡PöÞ�’÷²à’÷¿à’÷Ìà’÷)�’÷ÕP’÷âP^ð$ôy»€¹��%�5�E�U�e�u�…�•�¥�µ�Å�Õ�å�¼õ�œ?ºõpC¿P82C55<] W¥0†G&K°,X°,e°,r°,°,ºS mW mV+ ,V+P ”™0”]”‹`”É ”Ö ”ã ”ð ”ý Æ”Vùp–‹°…&0#'$0#'10#'n 8#'K0#'Y #'w@#'„#'‘#& À ˜'™0˜'Ͱ˜'Ú°˜'ç°˜' ô°˜'À#&Ë`ó'Àxó'(Àó'\„ô&>°'7K°'7X°'7e°'7 r°'7°'6i� u7™°u7¦°u7³°u7À°u7Ͱu7Ú°u7ç°u7ã u7À'6Þ�÷7À÷7(À÷7\ƒø6à+G#à+G0à+G=à+GJà+G• t+FyÐ yG[ yGwZ yGYyGwWyGV+FºgpÇG^ÇG]»ÇG\ÇG[Ó+F°+D\_v�‚V^"W€a "Wn "W{ "V‚À Ä"VØ` cWdàcW\Ý cW[ cWZÝcWYcWX�cWW"Vi�ËWë@ËW)�ËWÝð"VÞ�½ÿW\�fZCgðfyÐ3g€a 3gOÀ3gr°ftp ¸ggNðggZ ggYC gg[pfÜp¨gpÖ ¨gÚ°¨gVf�V ÜgìÜg¶pe^ÄwC�v,!,–̰Ý*wX*wW ,– ÀQwq`Qwž�Qw«�Qw¸�QwÅ�QwÒ�,—ß�,—ì�,—ù�,—æ`x,— ,� ôù¼º  % 5 E U e u … • ¥ µ Å ðÕ å õ -80GÿP2YIC-32k-B"Z Ž-õZ ,—Y�à-–ApF—NpF—VF–yÐ m—mPm—dàm—‡Pm—”Pm—¡Pm—®Pm—p»Pm—ÈPm—VF–:Ð@ï—^ï—$°ï—1°ï—>°Œð–K°0§PC0§e°0¥YÀW¦AÀ d§upd§‚pd§�p@d§œpd§©pW¦yP²§ ®Ð²§»ÐW¦gðÙ§ìÙ§ùÙ§ Ù§ W¦Ðã‹¶,P'·]„'¶¶@A·j�'¶Ð@ [·mP[·dà[·‡P[·”P[·¡P[·®P[·»P[·ÈP([·ì�'µX�Ý· �Ý· Ý¶3pÇðŠ@Æ ðÇðÆ¡ 8Ç4ð8ÇAð8Çw8Ç„ÆBð Æ¥1ÆÐ“Çw^“Ç]“ÇwY“ÇX“Çð ÆyÐáÇ 0áÇ0áÇ(@‰âÆC�×Ap×ÀNp×j�ÖpaI×] I×\ I×�@I×p�@Iת@I×XI×GWI×Ù`ÖWÕP¾×^¾×ø@¾×Px¾×6�¾×Yˆ¿ÖwX çW çV æV[p3çq`€3ç`Ð3çmÐ3çƒÀ åWÀ�tç«tç¼ tçZ�tçÄÀtçì�tæ Âçø@Âç)�Âç6�t懠‡÷æà÷#à÷0àöü *÷SÐ*÷`Ð*÷w[ *÷Z *÷'Y ö(�x÷®Px÷»Px÷ÈPx÷ì�öêÀ¹÷ ¹÷ ¹÷  ð¯!ôy½€»��%�5�E�U�e�u�…�•�¥�µ�Å�Õ�å�õ�þœAdáz¶A,ÍÌô<Í\ª•-”]Pî,\,[î,Z,Y¤,à”- z^;z]zn ziÀzvÀzƒÀzz � Õª@Õ¡Ðz P@üÖ üã z~0#'€ #' p#'6�#' à“$&àd'#àd'0àd& @‹'\À‹'~`‹'ˆ ‹'�pd&êÀ Ì'‹àÌ'¼ îÌ'\Ì'[Ì'ã Ì'ð Ì'ý Ì' °0Ì'°d&Ð@’O6'p[7][79P[7FP[7SP[7«[7iÀ[7vÀ[7ƒÀ[6ÇÐ Ð7ã Ð7¼ Ð7ý Ð7 0Ð7ã Ð7'W[6Ià+G +G  +G- ‘,F4p_G@G _GNp_Gj�_E[æ°é “Fª  GX . GW “F]�À“F’Âp“Fü “F[@¸îGÖ îGYîGX»îGWîGV+_EZæ°°VW\VWw[VWZ VWª@VW·@VWÄ@VW¥`VV‚ƒ¾WªÀ¾W·À¾W\»¾W[¾WZ»¾WY¾WX»¾WW¾WV'�-•Zp@g‘¸@gž@g\ @g[» @gZ @gY» @gX @gW;@gV@fµpÂg)Âg6ÂgCÂgPÂg]ÂgjÂgà,–B *w0à,–9 Dw\ÀDw¯ Dw[ðDwhðDwÜuðDwXDwWÝDwV,—_Ý,—^,—]ñ,—âÐ,�& ôù¾¼  % 5 E U e u … • ¥ µ àÅ Õ å õ LCNÿ2NIC-8-B×IT "_̰ œJG”_ºÐ ,–ÇÐ9—ªÀ9—·À9—ïP9—üP9— `9—`9—#`9—0`9—=`›-•<à»—‘»—ž»—q`»—~`»—‹`»—˜`»—¥`»—²`»—¿`»•^æ°=§)=§6=§€C=§P=§]=¦À‹§WšŒ¦=`¥¦:NÀ²§Y¥¦�À¥¦¡!Ù§¯ Ù§[ðÙ§ hðÙ§uð¥¦êÀ·ªÀ··À¥¦lÐA·üPA·€„�A·‘�A·9P¥¦ÔÐt‚·r0™ƒ¶[œ·œÉ œ·Wœ¶<à ÷`Ð÷[ð÷hð÷uðꜵ]5Ç\Çø@ÇPÇPÇPNÇVƃ_Ç茰_Çr0˜`ÆZ¸†ÇÉ †ÇX†ÇW; †ÇV †ÆI`Ý ÇÇ^ ÇÇ]Ý ÇÇ\ÇÇ[ÇÇœðÇÇ©ðÇÇ¿à†Æ3ð/×Ðð/×ïÐ/×üÐÞ/×Y—0ÖX�p׃@p×�@pÖ, î—×^ —×] î—×\ —×[ N—×ZpÖ °å×Yå×Ðå×,ÐpÖÂñçFÐçB@çêðç‚\@–æi@Zçv@ZçXCZç�@ZæW0 Žç¯ Žç[ðŽçhðŽçuðŽç€œpŽç©pŽç¶pZæÙ0öçÐpöçÝpöçêpöçSРöçT öça ,]��@Q÷{ Q÷ˆ Qö̰x÷Ç^ x÷Ú°x÷\ x÷[ x÷ßx÷Àìx÷ù,G ,+rôy¿€½��%�5�E�U�e�u�…�•�€¥�µ�Å�Õ�å�õ�œÿDAC8228CFP<c°Å�£Gc°‘,ß�,q`,ù�,‹`, ,¥`,- ,: ,Õ ¡T ¡a ¡ó`¡p¡ p¡p¡n ¢¢{ &W0'• '‡P'ª@'·@')�'6� &B‘q'pP�q'üÐq'X %Wc`¥'ó`¥'p¥&:̰Ì']Ì'Nð¡Í&'pó'4pó'Apó%VEP7·À7ÄÀ6ÇP A7ÈÐA7ÕÐA7âÐîA7YA7WNA7V6I`œ7w^œ7]œ7w\œ7[œ7BNð �6=`ê6ép÷7w[÷7Z÷7wY ÷7W ÷7§V ê6#° EG^C EGÀê6, lGŒ0ê6ÿá†GÐp†GÝp†G€êp†GSІG`ІGmПt5Ñ�áG]áGÜÖ áG[ áGZ áGY áG)�áG,n áD]_F IWˆ IW]�IWj�IWw�IW„�IW‘�IWž�IW«�IV‚Áž¿V�ÀËW~àËWÀ°ËW§V ËVI` ÿW^; ÿW] ÿWÕÐÿWÐðÿWÝðÿWŒ0ÿW™0ËVË`ggÝpggêpgg SÐgg`ÐggmÐ�hfzеg‡Ðµf ÐÏg�ðÏgÚ°Ïg©ðÏg¶ðÏgÃðÏgÐðÏgÝðÏgŒ0Ïg™0µfÂpQw³0QwÀ0QwÍ0@QwÚ0Qwdà,–vŸw~à,—[,—: ,—ðG ,—T ,�” ôùÀ¾  % 5 E U e u … • ¥ µ àÅ Õ å õ …ûA,= ï@èU"Z›qª-Z¨q,—‡Ð,–#°F—ì�F—ù�F— F— F—„F— ‘F—ž,–—à®—T ®—a ®—Ò®—ß®—ì®—ù®—[𩯖hð§0¦�@0§�ð0§Ú°î0§W 0§V t¦Ì° q§^q§w]q§\q§w[q§Zq§wYq§Xq§wWq§V¥ Yéð¨ô¦™°·@€·@·@·(@·X ·a ·n ¶uÀ h·øÀh·Ýðh·Œ0h·™0¶¥1©·ª@©·ì�©·ðù�©· ©·X§Nª¶W÷¶Š`Ç$°Ç@Ç(@Ç5@ÇB@÷¶ Ð RÇÕÐRÇâÐRÇ0÷¶Zp†ÇÅ�†ÇÒ�†Çß�†Çì�†Çù�†ÇH †Çô°¦ô¥ªîÇë@îÇø@îÇPîÇPîÇpPîÇ,PîÇX îÇwW îÇVîÆS îÆ�@}×Å�}×w\}×[}×wZ}×Y}×÷X}×W¥Ð~Öô0åÖâ ò×ZÝò×Yò×XA ò×5@ò×OÀåÕX P @ç„@ç‘@çž@æJ0tçÅ�tçÒ�tçß�tçì�tçù�tçÕÐtçâÐ ¤-`Üç¿`ÜçÌ`NÜçVÜæp` ÷w^ ÷] ÷X0÷e0÷r0÷0÷wX÷WÜæå`…÷ª@…÷ì�…÷ù�8…÷ …÷X,@pñÓ÷ô0,À ôyÁ€¿��%�5�E�U�e�u�…�•�¥�µ�ÀÅ�Õ�å�õ�œ�?�Âu?Þ�< \d0±  à,à,#à,5@,OÀ,`Á mr°mi@m\Ým[mZÝmYmX�mW,}`xâÑ@âY°ãpô° 'À 'V &:å`0']0'10 &œÀ W'4ðW' pW'wY W'XW'wWW'V &N@²'�@²'ß�²'ì�@²'ù�²' ²'Ðð¯³& âÐ 7ô0 6·�'7ø@'7P'7P'7P'7,P'7SÐ'7`Ð'7mÐ 6�@Ýœ7^œ7]œ7¡Ðœ7”Pœ7¡Pœ7`®Pœ7ð  6z ®FG\G)E[Øà¡+G ð+F` EG\» EG[ EGZ EGˆ EG• EG¢ EG¯ +Fp`­G�ð­G~`­G‹`­G˜`­G¥`­GY­®F W  W- VØa/Wæ`/WT /Wp/W p/Wp/W=`/WŒ°/W™°/W¦°VZq±Wß�±Wì�±Wù�±W LV, ¬,E“ÐÿVûÑ g\ gÃp gÀÐp gÝp gêp gW] gV ÿUZü Ýtg^tg]Ýtg\tg[tgÚ0tgç0tgô0tg'WtgüP«-•}àÁögÐögÐögXöfNA*w'ð*wFÐ*w€SÐ*wŒ0*w™0öfðxw³0xwÀ0xw¡Ðxw®Ð8öf¨ñ¹wVöf�ÀÝÓw^,�+ØôùÂÀ  % 5 E U e u … • €¥ µ Å Õ å õ ??Aè�Â!�\<’¸P¸ ^‚À,— ,—  ,—- ,–�À`—G `—T `—`P`—{ `—zP`—‡P`—Œ°@`—™°`—¦°,–» â—w^â—]â—w\â—[â—)�·ã–P0§P0§P0§,P0¦00d§FPd§SPd§`Pd§{ d§zPd§‡Pd§Œ°d§™°d§¦°0¦†Ðæ§Ú0æ§ç0æ§ô0�æ§æ`æ§üP¶-• @4·Ð4·Ð4·K04·X04·e04·r04·04·Œ0(4·™04µ]}`¶·³0¶·À0¶·¡Ð¶·®Ð¶·»Ð@¶·Èж·Õж· µ·¶è- +Æ}à8Ç^8Ç] 8Ç\@8Çi@8ÇJà8ÇŒ08Ç™0+Æv Ç˜` Ç¥` Ç²` ÇÚ0 Çç0 Çô0 Çæ` Çïд·µð×: ×ÜG ×\ ×[ ×Z ×Jà×€Wà×dà×qàÖ8P—׋à—טà—×¥à—×À@—×À—×Ìà—×üP³·µºPÿ× pÿ×X°ÿ×CNÿ×V ÿÖÈ @çH`ÐÿÖ00 ÿÖ¿0 gçw\gçZgçwYgçXgçwWgçVÿÖº @Âç^Âç]{Âç\²Ãæw[öçZöçYöç'pöçT öçWV öå\}` D÷^ D÷qàD÷~àD÷w[D÷ZD÷wYD÷XD÷wWD÷VDö:ÿ`Æ÷^Æ÷@^,8%ôyÀÁ��%�5�E�U�e�u�…�•�¥�µ�Å�Õ�å�üõ�œHPBAA@Ÿ920?K0<_ V}`ÀG&ù�,À , ,  ,Z»¿-YmX;mWm=àtmÿ` ¡^ ¡w] ¡\ ¡‡[¡‹àm©À@ï®ÐïÍ0mæ0'wX'W'@m=±¾K& pW'X°€W'K0W'=`W'J`W$^u_Š` ˜'\ ˜'w[ ˜'Z˜'wY˜'X˜'wW˜'V˜&ºÿ`7^7];7\7ð½6 ðA7ðA7'pA74ðA6P u7W`u7d`u7q`A68P©7‹`©7·À©7ÄÀ©7²`©7¿`©7€Ì`©7Ù`©7æ`©7м™%ºP+G,Ð+G9Ð+GFÐ+GSÐ+G`Ð+GƒÀ+G€zÐ+G‡Ð+G”Ð+Fë�­G®Ð­G»Ð­GÈP­GÕPà­GÀ­GÀ­GW!»®FÐVm "W,Ѐ"W9Ð"WFÐ"WSÐ"WW V}à pW¼ pWÉ pWÖ pWã pWð pWý VS ËW0ËW$0xËW10ËW[ºÌVj gw g„ g‘ g=à eŸ Mg‘�Mg [pMghpMfÿ`�gÀ0�g·À�gÄÀ�gÑÀ�gý �g °�g°�gG Mf©À»¹÷f^w]»w\w[ãwˆ wX 8wmPwV vÐÝ kw^kw]kw\kwð kwý v Ð¹w0¹w$0x¹w10p\#ôùÄ  % 5 E U e u … • ¥ µ Å ðÕ å õ 267-1002NIC�Z"X_ÐÇ-XlÐ,—¥à,—²à,—¿à,–ºÌ0`—[`—Z{`—XÆa–p(À”–á¡—W¡—'V”–ë� È—ˆ È—• È—¢ È—¯ È—¼ È—É È—Ö È—ã ”–m Ý=§]=§\Á=§w�=§„�=§Y;Å>¦X‹§¸�‹§Å�‹¦ï  ²§Jಧ] ²§¯ ²§¼ ²§³°‹¦S ·Í°·Ú°·ç°·ô°·À·ø@·P·(ÀĶ5ÀuµW¿°‚·OÀ‚·\À‚·piÀ‚·vÀ‚·Z ‚·wY ‚·X‚·wW‚·V‚¶:AÀÇ^ÇT €Ça Çw�Ç„�ÇYwÃÆX_ÇwW_ÇV_Æ:©À†Ç^ †Çß�†Çì�†Çù�†Ç †Ç †Ç  †Ç- †Ç: _ÆtpÁ×Þ@×ë@×Z�×Yב�Â@ Öž�V×°VÖ Ðp×À™°p×\@p×i@p×Y p×q`p×~`p×ý VÖàØ×°Ø×$°Ø×ç0Ø×ô0Ø×@Ø×@Ø×@žØ×VÁƒµ¶@€Mça Mçn MçMç[; MçZ Mç®ÐMçq`Mç~`Mçý MæF Ïç°Ïç$°Ïç1°Ïç€>°ÏçK°Ïçø@Mæ» ®*÷^,W @D÷vÀD÷ƒÀDöS k÷�Àk÷ß�k÷ì�k÷ù�k÷ k÷ k÷  k÷- k÷¼: ,Zôu(/Å€Ã��%�5�E�U�e�u�…�•�þ¥ˆ®Ÿ�‚ÿtdUIÿ=1$ÿ ýðãÿÖɼ¯ÿ£•‡zÿm`SFÿ9,ÿøëÞÿÑÄ·ªÿ��ƒvÿi\OBÿ5(\ç@m/ZVбÎ:W0"P�"]�"º@IV"VÒA@c@ñÍq]Ý}\}[Ý}Z}Y }Np}mP}hp}S å‚på�påœpîå[åZîåYåXŽåWåó`}Xûgu® Ì Šk"W® t'~±t Dk!® t j"}!œ&HIaœ$ß ¶&�ð Ã'\ƒ@œ#Wdtü  Ý&º›ðê'[ê'Zãê',�#Wdg0 6X6St ½ á Wulj¥0Òt F4}!t#Vw$ 0 `Ëb6ø�o0E0¯Vuj`}!}4bëwtÓÑo4bwg(Ä‘o0"’YŠ` ©7É ©6+Ð Ã7»ÐÃ7ÈÐÃ7ý ©6Âp÷7°÷7$°÷71°÷7>°÷7K°÷7ø@x÷7P÷7WÊø6èJàlFûÐyGZîyGYyGXyGW yGÀ lFÑ�Ý ÇG^ ÇG] ÇGô ÇG0ÇG0ÇGÜ,ÇGXÇGW�ÇGVlFF xIWmIW]ÉJV\pWz0pW�@pW�@pWª@pW·@pWÀ pV»  ËWÞ@ËWë@ËWô ËW0ËW0ËW,ËW,P@ËW9PËWFPpVtðMg¼mMg]ÈNf\»tg[tgZ»tgYtgX» tgW tgV« teX Ïg^ Ïgô Ïg0Ïg0Ïg,Ïg,PÏg9PÏgFPtÏf¿0Dw]DwzP,–AÀkw�@kw�@kwª@kw·@kwÀ ,–�ÀÝ ¹wW ,—\Ý ,—[,�ûÞôõ2ÆÄ  % 5 E U àe u … • ¥¯¢ÿ•ˆ{nÿaTG:ÿ- ÿùìßÒÿŸ«žÿ‘„wjÿ]PC6ÿ)ÿõèÛÎÿÁ´§šÿ�€sfÿYL?2ÿ632N2NIC-DUAL ­Z­ Õ#ZMð ,—»Ð,—ç0,—ý ,– ±`—@`—$°`—1°`—>°`—K°`—X°`—e°`—r°Ôa–� Õ•Y‹±â—™°â—¦°â—³°â—Í0â—Ͱ¸â—Ú°â—Wâ—VÓâ– ÀW§^W§]W§ÐW§€,ÐW§9ÐW§FÐW§iÀÓX¦vÀ¿§ƒÀ¿¦�ÁÙ§�ÀÙ§ªÀÙ§·ÀÙ§ÄÀÙ§ÑÀÙ§ÞÀÙ§ëÀÙ§øÀÙ§и¿¦Ñ[·^[·]»[·\[·[{[·ZÒ\¶wY©·X©·‡W©·³ ©¶yÐ 8Ý·Í Ý·] Ý·Ýp¸Ý·êpÝ·ZÝ·YCÝ·X°©¶áÐEÇr°EǰEÇŒ°EÇ™°EǦ°ÑFƳ°“ÇÀ°“ÇͰ“dz “ÆÐ@ ÇÇÍ ÇÇÀÇÇÝpÇÇêpÇÇ(ÀÇÇ5ÀÇÇXÇÇ9ÇÇF“ÆRPI×NpI×[pI×~`ÐJÖ‹`}ט`}×¥`}ײ`}׿`}×Ì`}ÖâÔP Ë׿`Ë×]îË×\Ë×[îË×ZË×YË×30Ë×SË×`}Ötð MçzÏNæ‡gç”gç¡gç®gç»gçÈ@gçÕgçâgåþa ÏçwZÏçYÏçwXÏçWÏç§VÏæ²0÷^;÷]Ïæï QD÷q`"X °^÷‹`^÷˜`^÷¥`^÷²`^ö江÷Í Ÿ÷°Ÿ÷$°Ÿ÷ð1°Ÿ÷T "æ ôyÇ€Å��%�5�E�U�e�u�…�•�¥�µ�àÅ�Õ�å�õ�œED;ÿ20?d×q2\ÿ`Ý=\&pÜ- 9’µp9²°9ó°$9[À 9÷@ zÌ`9lÐ ”À”êp”€(À”ð” ð90 â9PâFP9[°î 'Z 'Y¡Û &¼ 0&ÝÀ=']»='\='[ =')�='6�0&RP ‹'æ`‹'ïЋ'üЋ' à‹'à‹'#à‹'30‹' ?0‹'N00&ÔP 7^wÚ6]'7w\'7['7wZ '7Y '7Ì`'6i� u7æ`u7ïÐu7üÐu7 àu7àu7#à€u70àu7=àu7Jà'5ZØ`÷7$0Ùø610G>0GK0GX0Ge0GÇX GÐpGVé F` yG^îyG]yG\îyG[yGZîyGYyGXNyGWyGCØ-•ÂpûG‹àûG˜àûG¥à@ûG¿`ûGÌ`ûFd° IWæ`IWïÐIWüÐIW àIWàIW#àIW0àIW=àIWHJàûFæ°ËW$0×ÌV10åW>0åWK0åWX0åWe0åW\@åWÐpåWv@åVNÀMg�@Mg�@Mgª@Mg·@MgÄ@MgÑ@MgÞ@�Mgë@MgCÖ-•ÐÀîÏg^Ïg]îÏg\ Ïg[ îÏgZ ÏgY NÏgX Ïf_Ð7ww]7w\7ww[7wZ7wwY7wX7wwW7wVÏfÔÐ,—G ,—T ,—a x,—n ,�bôùÈÆ  % 5 E U e u … • ¥ µ Å ðÕ å õ �Âuï?äõðDS86<‘W[ °ä-&�€• ,—¢ ,—¯ ,—¼ ã@-–É `—Ö `–d°z—ð z—ý z— °z—°z—$°z—1°z—>°z—K°z—X°`–æ°ü—r°ü—°@ü—Œ°ü—™°ü—¼ âý– É J§Ö J¦‚ÀJ¦ŠàÁ q§{ q§ˆ q§X J¥ŽA ¥§¯ ¥§¼ ¥§É ¥§Ö ¥§ì¥§ð @¥§ý ¥§ 0¥¦P·dàᶦ°4·³°4·À°4·Í°4·Ú°4¶�‘4¶æ° ‚·^ ‚·À‚·§V4¶hÀ¶·V4¶êÀ4¶â!4µÜÁê·ý ê· 0궆ÐéÇ6àÆW+ÆÔÐ8Çæ`8Çó`8ÇwW 8ÇV +ƺŠà yÇZ yÇY» yÇXyÇW£yÇͰ+ÅX¤`ÇÇXÇÇFÐÇÆØ`ÁîÇ`ÐîÇmÐîÇ\»ßïÆ["×Zã"×]"×X"×r°"Ö” c×¶ðc×€žc׫c׸"Ö"à¤×Ò¤×ߤ×ð"ÖVàØ×4ðØ× Ø× Ø×- ÞÙÖ: çj�çw�äV_Ð@@çiÀ@æP Zç¶ðZçžZç«àZç¸ZçÅZçYîZçXZçW(ZçëÀ@å^5Üçœp¸ÜæêAöçV,^B��÷uðö/`öB¾`7÷r°ö~0 Q÷¶ðQ÷žQ÷«Q÷¸Q÷ÅQ÷²àQ÷¿àQ÷ÌàQ÷pëÀ,ïÐ,],ï®&ôs…'/É€Ç��ð%�5�E�U†Ãµÿ§™‹}ÿm]M=ÿ-ÿöéÜÏÿµ¨›ÿŽ�tgÿZM@3ÿ& ÿÿòåØËÿ¾±¤—ÿŠ}pcÿVI</ÿ"ûÿîáÔÇÿº­ “ÿ†yl_ÿRE8+ÿ÷ÿêÝÐÃÿ¶©œ�ÿ‚uh[ÿNA4'Õ,�H/Yñ°ë:¿à!Ìà!ëÀ!” HÐHÐH\ê"01|>0|K0|X0|e0|\@@|i@|v@|~0ä�@ä�@äª@ä·@äÄ@äÑ@äÞ@äë@ä*ø@é"V@f'Ðpf'Ýpf'êpf'ˆ f'• f'¢ f&P Á'ApÁ'À°Á'[pÁ'hpÁ'upÁ' ‚pÁ'�pf&ƒ�)7^Ó)7ðè*6\P7PP7PP7,PP7wX P7W P7'V P6ÔP «7Ap«7À°«7[p«7hp«7up«7‚p«7�p«7œp«7©p P6V`ç.FâP:GïP:GüP:G `:G`:G#`t:FØ` ˆG\ ˆGw[ ˆGZˆG'V:F›pÉGù�:FµpãG ãG»P:@ý &PXWs`x\÷a Y[a¾ YZaæ XY÷a:YXa^:YWa:P S’PjW&PjW6P $jWFP jWVP jWfP :PÛQà¬@¾W¹@¾W ®Ð¾WͰ¾VQòW^;òW]òW6�@òWC�òWP�òW ðå¿UµqMgÃpMg} MgŠ Mg­MgºMgÇMgÔMfbú µg¡ÐMdW\ÿ`ÏgÖ Ïgã Ïg8Ïg€ëÀÏf"aw°ÏfàTÏf ,•\z DwwWDwV,–:Üð kw\ ,–â Ý …wY …wX …wW…wÆ@,—w_,—^,—÷],�þþôó†2ÊÈ  % 5 E UÿÄ·ª�ÿ�ƒviÿ\OB5ÿ(ÿôçÚÍÿÀ³¦™ÿŒreÿXK>1ÿ$ ýÿðãÖÉÿ¼¯¢•ÿˆ{naÿTG:-ÿ ùÿìßÒÅÿ¸«ž‘ÿ„wj]ÿPC6)ÿõÿèÛÎÁÿ´§š�ÿ€sfYÿL?2C-ÿCURRENT ¯F'BAY9  ò"Yõ0 ,—Ò�,–ÝÀF—ì�F—ù�,–‘@m— m—  m—- m—¼: m—Zñn–Y;»—X»—[p»—hp»–yÐ ï—°ï—\ ï—)�ï—6�ï—€C�ï—·Àï—Ͱ»–AÀàW§ `W§`W§\àW§üÐW§ àW§Y!ðX¦(À²¦ú¿§Z0à¿§g0¿§Jà¿§X (¿§vÀ²¥XÜð ·Ÿ@€ ·6� ·ªÀ ·Æ@ ¶^^N· N·ç°N·'W ¶cà‚·Ð‚· à‚·à#à¶· 0à¶·=à¶¶yÐÝ·] Ý·‚pÝ·ƒÀÝ·�ÀÝ·�ÀÝ·ªÀÝ··ÀÝ·ÄÀ¶¶`¡RÇ `RÇ`RLj @RÇüÐRÇ àRÇÅ�îSÆ€Ò�­Ç[p­Çhp­Æí îÔÇ^ ÔÇ] ÔÇŸ@ÔǬ@Ôǹ@ÔǮЀÔÇ»ÐÔÇÈÐÔÇÕЭÅWo V×ïÐV×üÐV× àV×Å�íWÖÒ�—×[p—×hp—Ö^ÞÀ¾×ëÀ¾×øÀ¾×Ÿ@¾×¬@¾×¹@¾×âP¾×9о×Fо×SЗÖcàÁ@çÝð@çêð@ç\=@ç[ì"š0!�çÚ°�æ´0›çup›ç ›ç ›ç)�›ç6�›çC�›çP�›ç]�›çj��æ6@÷ú@÷‘�÷pž�÷«�÷Z!º„@k÷Xk÷W»k÷V !_ã !°!] Ž!\ !Ì`!Z{!ì ôyË€É��%�5�E�U�e�u�…�•�¥�µ�Å�°Õ�å�õ�œõpEÿL7661CNE¬>2q ùI\í ,Ø ,å ,9Ð,FÐ,SÐ,[_ÑzmÐzðdàzqàz[ø{¸�»Å�»Ò�»ß�»ì�»ÇÑüëÀüøÀüŸ@ü¬@ü¹@üP�@ü]�üj�»Ê q'ú@q'&0q'@q'*@»v20÷³&^¿'Ap¿'Z¿'‚ð¿' �ð¿'œð¿&´0 7° 7Ãð 7Ðð 7Ì` 7êðî 7Y 7X@ 7p 7 p¿&6@�7Ü™°�7]�7\ƒö�6~àÃ7ã Ã7Y»Ã7XÃ7WC Ã7 °Ã6 p Ã6` GÐðGC�GP�€GïPÃ6`¡_Gêp_G\_G#`_G0`_G=`t_G¼ õ`FVºFºÝÀÇG^ºEZ—àáF¤à îGëÀîGøÀîG$°îGÈPîGC�îGP�îG]�îGj�áF&ñcW€„�cW‘�cWž�áF"`—Whðô˜VÒ�±Wß�±VB±`ËWœð±VMp åWÀ�påWœpåW©påWV±UY_Ð&gX°&gw]&g\&gw[&gZ&g`¢ &g4p&fÇÐó�fÜÉ ›g]›g\Ý›gZ›gYÝ ›gX ›gW! ›g)›fÏp wC¸wPw\w[»wZwY»wWwV›f» xwÉ ,–\]’wÖ ’wã ’wÌ`,—ù�,— ,— ^,�ôùÌÊ  % 5 E U e u … • ¥ µ Å Õ å ¼õ áÞA,Ϳ̔@è¤<’_êÁH“_÷Á,—$°,—Ð,—Ð,—,Ð,—9Ð ,—j,—w,•^_Ñ”—$q`”—Y,�•–X•–¯Wÿ-^ºÐÄÕ–ÇÐâ—Þ@â—]Ýâ—[ â—ZÝ â—Y â—X� â—W Õ–æ°J§PJ§OÀÕ–[Áq§iÀq§vÀq§q`q§¸�q§Å�q§Ò�þr¦Ä@̦ÐAÙ§Pù�Ù§ Ì¥]“Ð ¶îÐ ·À ·À ·(À ·5À ·BÀ ·n ¶z h·ˆ h·vÀh·ƒÀh·ð�Àh·�Àh·Yýi¶X÷‹àö» ÝÝ·^Ý·]I öð ö&ð Çw^ Ç] Ç\ÇX0Çe0Ç r0ÇwöµðyLJPàyÇ”PyǪ@yÇWåüµXÑ@ºÇ]ºÇ\ºÇ ºÇ  ºÇ- ºÇ: ºÇG ºÇ#`ºÆh@/×=`/×J`/×W`/×d`/×q`/׸�/×Å�ºÆ`û˜Öߤ×Pì¤×ù¤Õ\}` Ë×@ËÖ å×(Àå×5À¸å×BÀå×[å×Z»å×Yå×X»å×Wå×VÓËÖz gç^=gç]úhæÖ îŽç[ŽçZ$Žæ›ðŽæ¨ð Âç Âç6�ÂçC�Âç: ÂçG Âçj�Âç]ÂçjÂçvÀŽæÃÀD÷‘D÷žD÷ «D÷¸,­P…÷Ä@,h@Ÿ÷ù�Ÿ÷ Ÿ÷\ Ÿ÷ïPŸ÷ó`,¯VôyÍ€Ë��%�5�E�U�e�u�…�•�¥�µ�Å�Õ�å�õ�þœA\�^Ad= ?A,<›@Í0-“›@ã ,ç0,ô0,ÕÐ,À,Ëà m(Àm5ÀmK0mX0me0mr0m0mŒ0,ÃÀâhðâuðâÍ0ãã 'ç0'èô0&EÐ ='Y N='X &Ð@ d'w^ d']d'W\%VV`˜'ÜAp˜'Y˜'X!˜'hp˜&±`Ù'uðÙ'Í0Ú&Ú07ç07 ô07ÕÐ6gp 47@6æ° N7{ N7ˆ N7Ü• N7[N7ZN7¼ N7É N7hpN7Hup6÷@Ð7¥`Ñ6p²`ê7¿`ê7[ê7‡Z ê7T ê6 ð à+G `+G`+GWN+GVê6ÃÀlGJ`lG[lG[plG‡XlGupê6z ºG¥`»F©pÔG¶pÔGwYÔGX ÔG>0ÔGK0ÔFm!"W{ "Wˆ "W• "WŒ0"W™0"W€¼ "WÉ "WhpÔDàP^C—Wuð—W�ð˜TQ¾V(�ËW¿`ËWP¾T.`ÌàòW  òW- tòV  gZ gè,ÐòV}à@g]@g\@g�@@g[p@gª@òV›pŽguðŽgO[-• @µg6µgCµgPµgÕеgÀµfÁw(Àw5ÀwBÀw#àw0àw=àµf+еfz kw[ðkw€hðkwuðkw�ð,–® ¬w®Ð¬w»Ð¬wÈÐ,—Ìà^,�`ôùÎÌ  % 5 E U e u … • ¥ µ Å Õ å üõ 56K NVÿRAM MODU~"Z_]-ÅZ¡ ,—ë@,—Z,— °,—>0,—K0,–îÐ z—{ z—ˆ z—• z—Œ0z—™0z—¼ z—É $,–J0,–¥0ï—¼ $ï—É  -•B§Ú°N§V¦‚À=§À=§°=§$°=§1°=§>°=§K°=§X°=§e°¦ÃÀ²§°²§Œ°²§™°D¦m æ§~à¥Yà“ µJ0 ¶æ° ¶Ù0'·ô°'·À'· a '·n  ¶À ¶NA€u·\@u·i@ ¶uAœ·^»œ·]œ·\»œ·Yœ·Xà ¶†ÐpìµV µm ÇÕPÇÑÀÇÞÀÇëÀÇøÀÇÐÇÐÇÐÇ,ÐÅXûP†Æ·‘“Ç=à“ÇèJà†ÆpàºÇ[ŽºÇZºÇô°ºÇXw »ÆWûÇ'VûÆW0×G �×T ûÆp ûÆ‹° NI×V ûÆ�@ c×À ðc×ðc×'ðc×VéûÆtp¤×^î¤×]¤×\æ¤×[p¦ÕZÝ ¥ÖYò×X�ò×- ò×: òÖm ¸&çG &ç] &ç\ƒ &ç#`&ç0`&çY»&çX&çW£&ç¡ÐòÕWûP¨ç»Ð¨çÈШçÕШçâÐ ¨æÃÀêæç0öçô0öç@öç@öç]�öç>0öçK0öæÙ0 Q÷‘Q÷4pQ÷ApQ÷NpQ÷[pQ÷·ÀQ÷WQ÷ì�öæ‚ pÆ÷ý Æ÷ °,6ÀôyÏ€Í��%�5�E�U�e�u�…�•�¥�Àµ�Å�Õ�å�õ�œu?ýÜê0HA35k00<\¹ÑG&)�,Þ@,ë@,P�8,]�,X ,SÐÐ,`Ð,m ”^”]”¢ ”¯ ”Z”�@” ª@”Í0,°á ' °� &ý #' 0#&ƒ�='G ='T ='a ='n ='{ ='ˆ ='• ='i@#&ÃÀ²'³°²'À°²'Ͱ²'ÑÀ²'ÞÀ²'ô°²'â° %#±7^î7]7\ 7[ 75@7B@�7O@6@6p€�7W`�7d`�7�@�7Zƒ�7Ú°�7ç°�7V364@ø6üÐG°FÈ G(ÀG5ÀGBÀGOÀG\ÀG iÀGvÀFPF8PA“GW`“Gd`EVØàݺG[ºGZ�ºGù�ºG ºG »E¡ W- W: VÃÀ/W=à/WJà/WWà/W#`/W0`/W~à/W‹à/W¯ V00¤WÀ°¤WÀÍ0¤WÚ°¤Wç°¤WWHÀ`¦UÀ»E0°ÿWÀÿW(ÀÿWB@ÿWBÀÿWOÀÿW\ÀÿWiÀÿWvÀÿWèƒÀÿV p�g^�g]�gÄ@�gÑ@�gÞ@�gù��g �g ‚f°öfY$°w10w>0wK0wX0we0wr0wvÀwƒÀöf¥°xw¦0xw³0xwÀ0xw¬Í0öd[[·¹w[»¹wZ¹uZz¾à,�r ôùÐÎ  % 5 E U e u … • ¥ µ Å ðÕ å õ HD3¿6402B9�-*"Y,!-Y9!,—wY,—X,—wW ,—V ,–:F m—^ m—hðm—uðm—‚ðm—�ðm—ªÀm—·Àm—¶ðm—Ãð,–Õ Ýï—\ï—[»ð–Z§Y;§X¦+Ñ=§K°=§X°=§e0=§r0=§°=§Œ°=§™°¦0°¥§É ¥§Ö ¥§Í°¥§Ãð¦¿0æ§Ýpæ§üÐç¦ à ·à ·#à ¶ p4·=à4·Jà4·`P4·mP4·qà4·~à4·‹à@4·˜à4·¡Ð ¶�p¶·»Ð¶·Ãp¶·Õж·Ýp¶·Büз¶ àƺÐÇp5@ÇB@ÇX Æø EÇSÐEǑŎÁ lÇ«lǸlÇÅlÇÒlÇ©ðlǶðlÇÃðlÆBF ÔÇÝðÔÇêðÕÆw\ûÇ[ûÇwZûÇYûÇ€BÀûÇAðûÇNðûÆÕ îV×\ V×[îV×ZV×YîV×XV×VtûÆ=0±×\±×ðð ±× 0±×X@²ÖPò×0òÖZð ç10 ç>0 çK0 çAð çèNðòÖŠ` Zç^ îZç]Zç\îZç[ZçZîZçYZçXZçWZç òÖ p Üç)Ýæ6öçCöçPöç]öçjöçw@öç\ÀöçiÀöæ�p ^÷«^÷¸^÷Å^÷Ò^÷Àß^÷ì^÷ù^÷Wñ^÷ô0öæW_^,.ôyÑ€Ï��%�5�E�U�e�u�…�•�¥�µ�Å�Õ�å�üõ��HD64180R1P8HD<­\ü $G\ 0#-P9$°91°9#0`K°`X°``P`mP`zP`‡P`”P@`¦°`³°9® âÀͰâÃpâç°â[½âZ"ãY»0'X0'W;0'V0&Š`Ý d'^ d']Ý d'\ d'[q d'Œ0d'Yd'wXd'Wd'è®Ð0& pæ'^@æ'ù�æ' æ' !ç&À  '7- '7: '7W�'7V '6�p h7^ h7`Ðh7mÐh7zÐh7‡Ðh7”Ðh7¡Ðîh7Wh7Vt'6éðê7^ê7÷]ê7\ ë6)�G6�GC�GP� G]�Gj�FVw�lG„�lG‘�lGž�lG«�lGظ�EçpºG^ºG»ÐºGÈкF 1îG îG  ïF- W: WX0We0Vq1IW0IW`ÐIWmÐIWzÐIW‡ÐIW”ÐIW¡ÐIWÚ0VéðqVÂqËWZËWˆæ`ËWó`ÌV àÿUZuÀ gp g'p g]� f¾` @gn @g{  f p ggƒÀgg�Àgg�À@ggªÀgg©ð f‹0µg€ÈеgÐðµgÝð féðêf^ög ðögÐög,ÐögBÀögFÐögSÐöfu@ QwqàQwzÐQw‡ÐQw”ÐQw¡ÐQwÚ0(Qwç0öeYuÀ¹w@à¹w@¹w@,�*"ôùÒÐ  % 5 E U e u … • ¥ Àµ Å Õ å õ 0ÿÿe ¬·œ>d;“^]êð* -^» ,—ð,— ð,—Ð,—'p,—4p,—Ap,—Np,–cá”—hp”—~à”—‹à”—˜à”—¥à”—²à”—¿à”—Ìà”—Ùà,–åá§ð)¦ ð0§ð0§ 'ð0§e00¦˜0 d§[» d§Z d§Y» d§Xd§VÓ0¦éð²§^ݲ§]²§\²§[²§âP²§¼âв§X(³¦W¶©@'·Ð'·@O@'·\@'·i@µ]+ÐÝ h·X h·W� h·Vh¶(�^œ·]\œ·ZYœ·XWœ·V‰'iµiÇpÇ];Ç\Æ ÝEÇZ EÇYÝ EÇX EÇW� EÇV ÆÃ@î“Ç^“Ç]î“Ç\“Ç[“ÇÚ°“Çç°“Çô°“ÇÀ$“ÇÀ&iµp`×p×5À×BÀ×OÀ×\À×iÀ×vÀ׃À×�ÀÖgð—תÀ—×·À—×ÄÀ—×ÑÀ—×Ú°—×Ãð—× Ðð—×ÝðÖòa% æpçP�çG çT ç4ðçAðæ�@ gç• gç¢ gç¯ gç¼ gçÉ gçÖ å\"`ÂçÞ@Âçë@Âç[Âç)Âç6,_C÷P÷],^j7÷w7÷„7÷‘7÷ž7÷«7÷¸7÷wW7÷V,Ä@,Ñ@,Þ@,ë@,¼óà,|%ôyÓ€Ñ��%�5�E�U�e�u�…�•�¥�µ�Å�Õ�ðå�õ�œõpHI30�5085<UàZ3"Y"x~0ûð;]1:\S1°SpS€'pS4pSApSó0 ¡Œ0Su@ »~`»‹`»˜`»¥`»²`»Y»ïлüл´ àSVÂp0>&^»J']J'\ÓJ&(� q'^ q'qàq'~àq'‹àq'€˜àq'¥àq'²àJ&'ÀÙ'Ö Ù'ã Ù'ïÐÙ'üÐ(Ù' àJ&[ó`/(6p475À47BÀ47OÀ47\À47iÀ47vÀ47ƒÀ47�À46œÁ©7ªÀ©7·À©7ÄÀ©7ÑÀ©7Ú°©7ç°©7ô°x©7À©7V.>%p`+GT +Ga +Gn î+G[ +GZ +Gr°+G°+GŒ°+G™°+F Ð­G³°­GÀ°­GÑÀ­GÚ°­Gç°­Gô°­GHÀ­G(@->%ÇP"WT "Wa "WOÀ"W‘"WAp"WNp"VZq}Whp}W¸�}WÅ�}WÒ�}Wß�}WÀì�}Wù�}W "T\_ºépòW[òWZw,óVYgwXgWgèa f@ð Mg^ 8Mg¸Mg\ MgupMg‚pMg�pMgœpMg©pfæ°ÂgïÐÂgüÐÂg àf'À+÷fC�wHP�vÞ�vâ vºë 7w[ 7wZ» 7wY 7wX; 7wW7w¯  u^Âp’wÉ ’wͰ’vtð¹w)¹wô°¹w¼Àp„ ôùÔÒ  % 5 E U e u … • ¥ µ Å Õ øå õ BK-52ÿNIC-16K µF"Zð9-Z’3ð,–Mð9—P8:–]S—jS—wS—„S—‘S—žS—zPS–¥° ®—”P®—¡P®—®P®—p»P®—ÈP®—X®—'WS–4À§üPx§ `§Z7¦p ðJ§ðJ§VJ¦º00q§^q§]» q§\ q§[» q§Z q§Y J¦¿0̧ß̧wZ̧Y̧œ Ì§VJ¦8Ð@·üP· `· ð6¶§VN¶ Ð[·^;[·][·i@[·v@[·ƒ@[·�@N¶Iàq ¶·�ð¶·X¶·wW¶·VN¶âÄ÷·ý ÷·[î÷·Z÷·YÞ÷·X5ø¶WEÇn EÅY`!_ÇSÐ_Ç`Ð_ÇmÐ_ÇzÐ_Ægðé _Æ» ­ÇX­Çœð_ÆS ÔDz`_Æ=0îÇÙàîÇæàîÇóàJEÅXv�"× ð4#Õ¿0<×K0<×X0<×e0€<×r0<Ö˜±<ÖªŠ×^» Š×] Š×\;Š×[Š×𠀊×ý Š× Š× Š×VÓ<ÖÑ ç]= ç\3-&ð!3çn 3æ@ðM爠îMçY MçX îMçW MçV 3æÏð ›ç»Ð›çÈÐ3æâ ÂçÑ@Âç¶pÂçÃpàÂç)Âç6ÂçXNÂçW,00*÷wX*÷W*÷§V,¿0 ^÷]» ^÷\ ^÷[ ^÷À°^÷Ͱ^÷Ú°^÷ç°^÷ô°,øÀ,Ãp^,�"ôyÕ€Ó��%�5�E�U�e�u�…�•�¥�µ�Å�Õ�å�üõ�œQ²Ad=· �A`¤<]V9 @G]» ,ÕP,âP,ïP,6�,²0mp?n p‡Üp‡[‡Z‡qà‡~à‡‹à‡˜à‡4@ ïÖ ïã îï\ï[ïZïÌ`ï)�Àï0ï$0‡¶@>r&>0~'K0~'«~'¸~'qà~'~à~'‹à~&+P Ù'”PÙ'¡PÙ'®PÙ''V~&à7 À7 7 à~%ùPxN7#àN7Z=O6Yu7Aðu7Nðu6V`œ7hðœ7uðœ7‚ðœ7�ðœ7À°œ7Ͱœ7Ú°œ7ç°u6¤àGÞ@Gë@Gø@GPGPG P0ÈÔÇK0yÆ]X0I×^½I×]BJÖ\ƒp×™°pצ°p×Y»p×X p×WÓ pÖu@ ¾×^ ¾×¥à¾×²à¾×¿à¾×@pÖ5 çC ç>0 çK0pÖv@ç`Ð@çmÐAAæzÐgç™°gçNpgç [pgçhpgæ ¨ç[ gæ¾` Âçç0Âçô0Âç@Âç@ÂçÐðgæ²â gåPÐ÷\»÷[÷X“öRÐ,B�^÷• ^÷¸�^÷q`^÷~`^÷ß�^÷ì�^÷ì,u@Á Æ÷ý Æ÷ 0,+´ ôy×€Õ��%�5�E�U�e�u�…�•�€¥�µ�Å�Õ�å�õ�œC-1MB CM�WDRA"’Xæ1N-”Xó1,@,@, ðt,RÐ`^`w]`\`'[`r0Ma0஌0®™0®V®u@ âͰâÚ°âÜÌàâ[ âZÝâYâXÝâWâV ® d'9Pd'FPxd''pd'[Le&Z¥'Ap¥'Np¥' [p¥'hp¥&ÇP æ'‚p@æ'�pæ'œp¥&p7Ì`7Ù`7æ`7ó`7(9Ð¥&[À¥%WhÀ �w5`Ðu7ƒÀKv6�Àœ7 �Àœ7ªÀœ6EÐ œ6RÐ Ð7‚pÐ7�pÐ7œpÐ7Üë@Ð7ZÐ7YÝÐ7XÐ7W¡Ð7pœ6Ñ�RGYCRG{ RGˆ Jv5 †G¢ †G¯ †GÅ�†GÒ�†G»Ð†GÑÀ†F¡  áGëÀáG@áG: áG'V†F#°"W>°"W["W\@"Wi@x"WNð"WWI#V§V}V~°ŠW^ŠW¼ ŠWÉ ŠWÖ ŠWã ŠWð ŠWý ŠW °}VðÿWÃpÿW1°ÿW@>°ÿWFPÿW\@}UV‹0ÝMg]Mg\ãHNf4ptgZtgYtg³°tghptfÝÀ µg‚pµg µgÜ µgXµgW!µgPtfRÐtfJ°wBÀwOÀw\Àtf’~°tfð,–̰kw«�kw¸�kwÅ�kwÒ�8kwß�kwW kwÃð¸,—Ðð,—^,�WdôùØÖ  % 5 E U e u … • ¥ µ Å Õ å õ þ41/2 DI×GIT"[B� U -[ƒ ,— ,— ,—- ,—: ,—G ,—T ,—a ,–ë”—{ ”—ðˆ ”—• ”—[T•–«Õ—¸Õ—ÅÕ—ÒÕ—ßÕ–m §ù§ § § §- §: §G §T §a Õ–Ià˜§{ ˜§ˆ ˜§• $˜§~`S-•°Ù§¡PÙ§®PÙ§»PÙ§ÈPÙ§ÕP@Ù§ç°Ù§ïPÙ¦~°A·€CA·PA·]٦̰tÙ¦'À‚·Y‚·‡X‚·v@‚·ƒ@R -ZhÀ÷�@÷ª@÷®P÷»P÷ÈP÷ÕP÷âP÷ïP÷üPöÝÀ öyÐRÇàRÇ#àRÇ4pRÇApRÇNpöë= Ç^Q¡ÆmкÇzкLJкǔкÇÖ ºÇ¥àºÆm × ×w[ ×Y ×€ó`×p×PºÆIà c×°c×'ðºÅY3ñŠ×œAðŠ×ZŠ×¸P‹Öž×Ò¾×ß¾ÖZðI ¾Ö†P ¾Ö“P ÿ×,Ðÿ×)ÿ×6ÿ×Cÿ×Pÿ×]¾Ö~±Zç'ðZçÀ4ðZçAðZçNðZçW;O[æV¨æÜpݵç^µç]Ý µç[ µçZÝ µçY µçXÝ µçWµçV¨åX~0*÷,P*÷w]*÷\*÷w[*÷Z*÷wY*÷X,º4À’÷V,_»,^ ,]; ,\ ,,Ð^,ôyÙ€×��%�5�E�U�e�u�…�•�¥�µ�Å�Õ�å�üõ�œOLTAGE CONVER!“Î@ \Gg ,Ýð,,Ð,#à,0à,X°,e°,r°,`Ý”^”]Ý”\”[ ”¯ [•¼ âÉ âÜpüÃðüÐðüPÝðü,Ðâ]}` =']�='P='w�='„�='‘�=&NÀ‹'«�‹'¸�‹'Å�‹'Ò�ZŒ&ß�Ì'ì�Ì'ù�Ì' Ì' Ì&îÑ 7)� 76� 7C� 7æ` 7]� 7P 7w� 7„� 7‘�Ì&�‘�7¸�7ðÅ�7Ò�7ZY�6À°Ð6œ@Ý7ÞÀÝ7€ëÀÝ7¥`Ý7ÐÐ6ê@ 8GÝðGZ G9Ð@Gó`G'ðÐ6+PlG#`lG9PlGFPlGSPlG `PlGmPlGzPX>%“PÔGÚ°ÔGç°ÔGý ÔG  °ÔG°ÔFtp "W]» "W\ "W[;"WZ"W ptÔF, pW[pWÜŒ°pWXpWW•ÔE\¤`±Vò`�W¿VVËVB�ØW[ØWøÀØWÐËVÑ� ËV4Ag,Ðgè#àËVâ @g^Ž@g]@gzP@gZ;@gWËVàÝŽg^Žg]éŽgÑÀV�fZŽÂgYÂg@ÂgW ÂgüÐÂf+Qw9PwP�w]�wj�ww�@w„�w‘�ÂfÜpkwP«�kw¸�Âe[ Ð’wß�,–ºÑ¬wù�¬w ¬wð ,—  ,�. ôùÚØ  % 5 E U e u … • ¥ µ àÅ Õ å õ IC-ÿ1.2V REF×UJI<’_¡ c G”_“Ð ,—æà,—óà,—ð,— ð,—ð,—i@,–îЇ—Að‡—Nð‡—�@‡—ª@‡—·@‡—˜à‡—B¥àbˆ–²àï–©Àü—Ìàü—Ùàü—æàü—$°ü—€1°ü—>°ü—BÀï–Ðd§v@d§ƒ@d§�@d§�@d§™°d§¦°d§³°d§ÕP‰a-•/`Ù§@Ù§Y»Ù§X Ù§W; Ù§V Ù¦I`Ý '·^ '·]Ý'·\'·['·iÀ'·vÀ'·ƒÀ'· �À'·�À٦੷^w`ª¶]÷pâP÷ïP÷Z÷wY ÷X ÷wW ÷V öº� +Ç^+Ç]C+Ç„ötp_ÇNð_Ç�@_ǯ _Ç®Põõ^3ð Ç]_¡Æ¿`ºÇÌ`ºÇÙ`ºÇ@ºÇ@ºÆ¡ ûÇCûÇÀàûÇ#àûÇ\@ûÇW!ûÇmPºÆîÐV×dà€V×qàV×~àV׋àV×Z{V×Y^WÖÈP±×¥à±×²à±Ö¡Ø×pÌàØ×  Ø×\ Ø×[ Ø×B@Ø×O@Ø×€\@Ø×FÐØ×mP±Öm ZçmÐZçzÐZç‡ÐZç”ÐZç¡ÐZç®Ð][æÈPµçì�µçù�µæZ Üç)�Üç  Üç àÜçàÜçB@ÜçO@Üç\@ÜçFÐÜçmPµæI`^÷mÐ^÷zÐ^÷À‡Ð^÷”Ð^÷¡Ð^÷Yé,‹°¹÷W޹÷V, ,W˜ ôyÛ€Ù��%�5�E�U�e�u�…�•�¥�µ�Å�Õ�å�õ�œÿF<23ÿe?ÍÌ<3À  jG3À à,à,B@,O@,\@,FÐ,mP,” ‡mЇzÐà‡‡Ð‡”ЇY„‡ÈPiˆì�â#0¸ïø@ï[ïZ» ïY ïX» ïW ïV â˜0W'W`W'd`W'zPW'‡PW'”PW'€¯ W'¼ W'É W'Ú0h-m Ù'ë@Ù'ø@Ù'PÙ'PÙ'ÀÙ'ÀÙ'(ÀÙ&‹° A7w�A7i@Ù&—`h7ž�h7«�h7w\h7[h7‡Zh7Òh7ÈPg@i6ì�Ð7ù�Ð64Àê7)�ê7  ê7 àê7àê7#àê7j�ê7w�ê7„�Ð6tp_G0_GŒ0_G™0_G¦0_G³0_GÒ_GÈPAf`FìÇGù�ÇEV¶ÀáG 0áG0áG°áG$°áF� "W>°"WK°"WX°"W„áF_ÑcWmÐîcWYcWX�cW�ÀáF9 ¤W»Ðe@¥Vì¾Wù�¾Vm ØW)�ØW  ØW àØWàØW#àØW0àØW9ÐØWFÐØWH„¾Vï ¾Vò`¾V‚4Àtg‚ptg�ptg\{tg[duf©pµg¶pµgÃpµgÐpµgèÝpµf�p ög] €ögÐögÐög,ÐögY;ögXög\ÀÎögVµd¨À_kwzÐkw‡Ðkw”Ðkw ¡Ðkw®Ð,–êÀ¹wìà¹wù�,— ,�ªôùÜÚ  % 5 E U e u … • ¥ Àµ Å Õ å õ LKÿKJ>20?jT"YêÁq-Yv� ,—V ,–� îF—^ F—] îF—\F—[,–ø‡—ˆ ‡—• ‡—Ü¢ ‡—Z‡—Yé,–, Õ—Z�pÖ–Ù`ï—æ`ï–m  §p §6 §C §P §] §j §e0ï–òàq§ž�q§«�q§ƒÀq§pÅ�q§Ò�q§Xq§ïWor¦VtÙ¦gðæ§^æ§Ç]æ§0æ§ZÝ æ§Y æ§XÝ æ§W æ§V Ù¦²°[·‘�[·ž�[·«�[·ƒÀ[·Å�[·Ò�°[·É Ù¦4ÀnĶ^»з\з[»зZзY з$0зPжhÀ +Ç9P+ÇFP+ÇSP+ÇÇ[+Çd`+ÇV}еX_^†Çw]†Ç\†Çß�†Ç¿`m‡ÆÌ`ÇÆÐÔÇ ÔÇ 0ÔÇ6�ÔÇèC�ÇÆ_Ð ×\ ×[ ×Ap×Np@×[p×hpÇÆáÐÇÆcà}׋`}ט`}×¥`„}ײ`l~Ö¿`¾ÖMðË×Ùà¾Ögðå×óàå×ðå×6å×Cå×På×]å×X°¾Öd±Mç‘�Mçž�Mç«�Mç¸�MçÅ�Mç Ò�MçÉ MçÖ kNæã Âæ}`Ïçý Ïç °Ïçw\ Ïç[ ÏçwZ ÏçY ÏçK0ÏçX0Ïçe0ÂæhAQ÷0Q÷Œ0Q÷™0Q÷¦0Q÷@³0Q÷ÒQ÷ß,XÐA€¹÷ç0,ô0,@,WhôyÝ€Û��%�5�E�U�e�u�…�•�¥�µ�Å�Õ�å�õ�œßu?õõpIPï3R18<[Z_WyG[z ,]x-ç°Fô°FÀFÀFÀF10ÐF>0Fï  ¡^Ý¡]¡\Ý¡[¡Z¡‡P¡”P¡¡P¡gVFd°w$&ð 0'ý 0' 00'°0'$°0'1°0'>°0'K°0'X°0&}`¥'‘�¥'ž�à¥'«�¥'¸�¥'Yî¥'X¥'W$¥'ã v-h@7ý 7 °7ð7 ð7ð7'ð7B@7O@7\@ 5Ztpœ7v@œ7ƒ@œ7�@œ7�@œ7ª@œ7·@Þœ7Xu�6W�GVFépG  G pGpG'pG4pGFÐGSÐG`ÐGmÐFlP G�À G€�À GªÀ G FyÐtâFÞÀîGëÀîGøÀîG°îG$°îG1°îG>°îGèK°îF†ÐVW^VW]VWßVWìVWùVW VW VW ìîF(sÌV^ØWCØWÝpØVü¡ÿWøÀ€ÿW°ÿW$°ÿW1°ÿWW; ÿWV ØVd°ÁZgmPZgzPZg\ÝZg[ZgZZgð Zgý Zg 0ZgOVr�5æ°Ügw[ÜgZÜg§VÜf4À w^; w] w,иw9ÐwZwY»wXwW£wƒÀÜeYÜð€’w”Ð’w¡Ð’w®Ð’w[»,—Z,—Y{,�ˆôùÞÜ  % 5 E U e u … • ¥ µ Å ðÕ å õ ANSIÿSTOR, HEkXF<’]°€G”u]#°,—Y,—wX,—W,—§V,–d°m—^9o•]m—æ`Án–ó`¡—p¡—YÝ¡—X ¡—W! ¡—(À¡–̰ ï—BÀï—OÀï—\Àï—iÀï—vÀîï—Yï—Xîï—Wï—V$¡–4Àq§âP~r¦C‹§ç°‹§]‹§À‹§À€‹§À‹§‘‹§ž‹¥\Üð ó§¸ó§Åó§Òó§ßó§ìó§ùó§ Àó§ ó§ ó¦'@}v¶ÞÀ‚·ëÀ‚·øÀ‚·a ‚·n ‚·{ ‚·ˆ ‚·• ‚·Jà‚¶©@÷·dà÷·qà÷·~à÷·‹à÷·ð ÷· ý ÷· 0÷·Ìà|ô¥yÐ lÆ"`yÇjyÇÐÐyÇÐlÆVà ­Ç^Ý ­Ç] ­Ç\­Ç[­ÇC�­Ç€P�­Ç]�­Çj�lÆØà@"ׄ�"ב�"׿`{#Öó`V×pV×Å�V×Ò�V× ß�V×ì�VÖZð ¤× ¤× ¤×  ¤×- ¤×: €¤×G ¤×T ¤×a VÕ[º[@çZçYwzæX@ç‡W@ç p@æ©@ gç'pgç4pgçApgçNpgç[pgçhpgçupgç‚pgç�p@æê@éç©pé瀶péçÃpéçÐp,+P8*÷êp*÷X*÷�À*÷ªÀ,_P k÷ÄÀk÷ÀÑÀk÷ÞÀk÷ëÀk÷ZÝk÷Yk÷XÝk÷Wk÷V½,¶ôy߀Ý��%�5�E�U�e�u�…�•�¥�µ�Å�Õ�àå�õ�œ�‘ET ¯TO-2<_ø� ‡G_  ,O@,r0,0,Œ0,™0,áÑz: zG zT zÔa ,^N@»[=»Z†¼=àâJàâWàâ pâpá''p'4p'Ap'Np'[p'hp'up'‚p'�pâòá