SBIOSPAT0ASM BIOSPATDASM BIOSPATFASM z Z2SEC HEX**eqZ2STD HEXT-tZCPR2 DQC.77ZCPR2PATDQC1NAMEDIR CQR"; =================================================== ; ; ZCPR2 BIOS PATCH OVERLAY FOR THE KAYPRO 10 ; ; Version for the original CP/M release (called 0) ; ; John C. Smith Manlius, NY ; ; Version 2.0 December 4, 1983 ; ; =================================================== ; ; ; ORG 0CC68H ; New PUTSYS sign on msg DB 0DH,0AH,'PUTSYS ZCPR2 V1.0',0DH,0AH,'$' ; ORG 0EA4DH ; Add cold boot buffer CALL PATCH1 ; initialization ; ORG 0EA63H ; New sign on message DB 1AH,0DH,0AH,'KAYPRO 10 CP/M 2.2 & ZCPR2' DB 0DH,0AH,0 ; ORG 0EAFEH ; Delete CPM CCP DB 0,0,0 ; reset on warm boot ; ORG 0EB4AH ; Add GRAPHICS control CALL PATCH2 ; and test patch ; ; *** ZCPR2 INITIALIZATION *** ; ORG 0EBFAH ; Overwrite CPM CCP patch PATCH1: STA 0004H ; Initialize Drive/User byte CMA STA 003EH ; Set WHEEL BYTE STA 004FH ; and GRAPHICS BYTE LXI H,PATH ; LXI D,0040H ; Initialize External LXI B,7 ; search path DB 0EDH,0B0H ;LDIR LXI H,MULTCMD ; LXI D,0F500H ; Initialize Multicommand LXI B,12 ; buffer DB 0EDH,0B0H ;LDIR LXI H,NAMDIR ; LXI D,0F300H ; Initialize Named Directory LXI B,5 ; buffer DB 0EDH,0B0H ;LDIR RET ; PATCH2: LDA 004FH ; Get GRAPHICS BYTE ORA A ; Is it set? JNZ R1 ; If so, jump out MOV A,C ; If not, put char in A ANI 7FH ; ...mask out the eighth bit MOV C,A ; ...put it back in C R1: LDA 0003H ; ...then get the IOBYTE RET ; and continue CONOUT routine ; PATH: DB 1,'$',1,0,0 MULTCMD: DB 4,0F5H,0C8H,0,'STARTUP',0 NAMDIR: DB 50,0,0,0,0 END ; =================================================== ; ; ZCPR2 BIOS PATCH OVERLAY FOR THE KAYPRO 10 ; ; Version for CP/M 2.2D release ; ; John C. Smith Manlius, NY ; ; Version 2.0 December 4, 1983 ; ; ===================================================; ; ; ; ORG 0CC68H ; New PUTSYS sign on msg DB 0DH,0AH,'PUTSYS ZCPR2 V1.0',0DH,0AH,'$' ; ORG 0EAADH ; Add cold boot buffer CALL PATCH1 ; initialization ; ORG 0EAD6H ; New sign on message DB 1AH,0DH,0AH,'KAYPRO 10 CP/M 2.2D & ZCPR2' DB 0DH,0AH,0 ; ORG 0EB72H ; Delete CPM CCP DB 0,0,0 ; reset on warm boot ; ORG 0EBFDH ; Add GRAPHICS control CALL PATCH2 ; and test patch ; ; *** ZCPR2 INITIALIZATION *** ; ORG 0ECADH ; Overwrite CPM CCP patch PATCH1: STA 0004H ; Initialize Drive/User byte CMA STA 003EH ; Set WHEEL BYTE STA 004FH ; and GRAPHICS BYTE LXI H,PATH ; LXI D,0040H ; Initialize External LXI B,7 ; search path DB 0EDH,0B0H ;LDIR LXI H,MULTCMD ; LXI D,0F500H ; Initialize Multicommand LXI B,12 ; buffer DB 0EDH,0B0H ;LDIR LXI H,NAMDIR ; LXI D,0F300H ; Initialize Named Directory LXI B,5 ; buffer DB 0EDH,0B0H ;LDIR RET ; PATCH2: LDA 004FH ; Get GRAPHICS BYTE ORA A ; Is it set? JNZ R1 ; If so, jump out MOV A,C ; If not, put char in A ANI 7FH ; ...mask out the eighth bit MOV C,A ; ...put it back in C R1: LDA 0003H ; ...then get the IOBYTE RET ; and continue CONOUT routine ; PATH: DB 1,'$',1,0,0 MULTCMD: DB 4,0F5H,0C8H,0,'STARTUP',0 NAMDIR: DB 50,0,0,0,0 END ; =================================================== ; ; ZCPR2 BIOS PATCH OVERLAY FOR THE KAYPRO 10 ; ; Version for the CP/M 2.2F Release ; ; John C. Smith Manlius, NY ; ; Version 2.0 December 4, 1983 ; ; =================================================== ; ; ; ORG 0CC6AH ; New PUTSYS sign on msg DB 0DH,0AH,'PUTSYS ZCPR2 2.2F',0DH,0AH,'$' ; ORG 0EAADH ; Add cold boot buffer CALL PATCH1 ; initialization ; ORG 0EAD6H ; New sign on message DB 1AH,0DH,0AH,'KAYPRO 10 CP/M 2.2F & ZCPR2' DB 0DH,0AH,0 ; ORG 0EB72H ; Delete CPM CCP DB 0,0,0 ; reset on warm boot ; ORG 0EBFDH ; Add GRAPHICS control CALL PATCH2 ; and test patch ; ; *** ZCPR2 INITIALIZATION *** ; ORG 0ECBEH ; Overwrite CPM CCP patch PATCH1: STA 0004H ; Initialize Drive/User byte CMA STA 003EH ; Set WHEEL BYTE STA 004FH ; and GRAPHICS BYTE LXI H,PATH ; LXI D,0040H ; Initialize External LXI B,7 ; search path DB 0EDH,0B0H ;LDIR LXI H,MULTCMD ; LXI D,0F500H ; Initialize Multicommand LXI B,12 ; buffer DB 0EDH,0B0H ;LDIR LXI H,NAMDIR ; LXI D,0F300H ; Initialize Named Directory LXI B,5 ; buffer DB 0EDH,0B0H ;LDIR RET ; PATCH2: LDA 004FH ; Get GRAPHICS BYTE ORA A ; Is it set? JNZ R1 ; If so, jump out MOV A,C ; If not, put char in A ANI 7FH ; ...mask out the eighth bit MOV C,A ; ...put it back in C R1: LDA 0003H ; ...then get the IOBYTE RET ; and continue CONOUT routine ; PATH: DB 1,'$',1,0,1,0FH,0 MULTCMD: DB 4,0F5H,0C8H,0,'STARTUP',0 NAMDIR: DB 50,0,0,0,0 END :10D40000C376D4C376D4434F4D0124242420202056 :07D4100020205355420000EB :10D44B0016474F202001DA4552412005D95341564A :10D45B00452DD952454E20B3D947455420C0DA4704 :10D46B00524146B3DA4A554D50F9D931B1DBC57942 :10D47B001F1F1F1FE60F3284D7CD05D6CDCDD5325A :10D48B00A1D4C179E60F327FD7C4D2D5CD0AD6CD80 :10D49B00C6D51109D43E00B7C4ECD532A1D42A00AD :10D4AB00F57EFE032803B7203831B1DBCD55D53AD5 :10D4BB007FD7C641CD66D53A84D7FE0A3809D60A3E :10D4CB00F53E31CD66D5F1C630CD66D52104F522BA :10D4DB0000F53600E5CD26D6E17EFE3B28CBB728FE :10D4EB00C831B1DB7EFE3B2004232200F52274DA27 :10D4FB007ECD1BD67723B720F7CD99D72023111ECE :10D50B00D5D53E00B7C209DACD6DD8C209DA7E2374 :10D51B00666FE9CD7ED7CD99D73A2BD4FE20CAA919 :10D52B00D4CD55D52100007EFE213806CD66D523FE :10D53B0018F5CDAED5BFCD7ED7CDF4D5C3B4D4CDF4 :10D54B00ABD54E6F2046696CE5C93E0DCD66D53E19 :10D55B000A18080E01CD0500C31BD6D90E025FCDEC :10D56B000500D9C9F53E00B72806F1D90E0518EE0E :10D57B00F1F5CD66D5F1FE0AC0E5214BD43520126D :10D58B0036163E00FE50280AC5CD09EAC1FE03CA75 :10D59B001ED5E1C9112AD40E14C5CD0500C1B7C9DA :10D5AB00CD55D5E3CDB4D5E3C97E23B7C8F5E67F1A :10D5BB00CD66D5F1F818F20E1918091180000E1A64 :10D5CB0018020E0DC305005F0E0E18F8AF324AD4C9 :10D5DB00112AD40E0FCD05003CC90E1018F7112AD5 :10D5EB00D40E1118F00E1218EC21A1D47EB7C83648 :10D5FB00001109D40E1318CC3EFF5F0E2018C5CDB9 :10D60B0003D6E60F87878787217FD7B6320400C9F9 :10D61B00E67FFE61D8FE7BD0E65FC93AA1D4B7287E :10D62B00451109D4D5CDDED5D1283B3A18D43D329E :10D63B0029D4CDA2D5202F1103F521800001C800DC :10D64B00EDB02117D4360023351109D4CDE5D528FB :10D65B00153E24CD66D52104F5CDB4D5CD8CD6C0E1 :10D66B00CDF4D5C3B4D4CDF4D53EBECD66D50E0A1C :10D67B001102F5CD05002103F57E23CDD2D6360060 :10D68B00C9D9CD06EAB7C409EAFE13CC09EAD9FE1B :10D69B0003C91AB7C8FE21381BFE3DC8FE5FC8FE82 :10D6AB002EC8FE3AC8FE2CC8FE3BC8FE3CC8FE3E48 :10D6BB00C8FE3BC9AFC9ED5B00F51AB7C8FE3BC846 :10D6CB00CD9DD6C01318F3856FD024C9CD99D72122 :10D6DB0035D4060B7E2BFE20200410F81804FE48D0 :10D6EB002835212BD40100117EFE202822FE3A285A :10D6FB001E23D630FE0A3019577907381407381114 :10D70B0007380E81380B8138088238054F10D979CC :10D71B00C9C32CD5CD99D7212BD4110000060B7E74 :10D72B00FE20282DFE482829D63038E5FE0A38067B :10D73B00D607FE1030DB234F7A07070707E6F057B3 :10D74B007B070707075FE60FB2577BE6F0B15F1069 :10D75B00CEEB7DC921800081CDD2D67EC9AF322AD6 :10D76B00D43E00B720043A7FD73C3DCDD2D53E0006 :10D77B00C305D63E00CDD2D53E00C305D63A3E00FA :10D78B00B7C0C32CD5CD99D7F5CD68D7F1C9212A10 :10D79B00D4AF326DD777320ED53A84D7327AD7CD14 :10D7AB00C1D6ED5330D5060B2878D5CD9DD6FE418D :10D7BB003804FE513808FE30380AFE3A300613CDD5 :10D7CB009DD618F2D1FE3A2043320ED51AFE4138BF :10D7DB001ED640F53A3E00B72005F1FE031803F1C3 :10D7EB00FE04D22CD5326DD777131AFE3A281CE5DE :10D7FB00EBCDF0D6EBE1F53A3E00B72005F1FE0696 :10D80B001803F1FE20D22CD5327AD713AF323BD886 :10D81B000608CD3ED806031AFE2E200613CD3ED8A1 :10D82B001803CD5FD80604AFCD61D8ED5300F53E9C :10D83B0000B7C9CD9DD6281C23FE2A2007363FCD25 :10D84B0066D818077713FE3FCC66D810E6CD9DD669 :10D85B00C81318F93E20237710FCC9E5213BD834B7 :10D86B00E1C9214CD40E0779B7281B112BD4060420 :10D87B001ABE200A132310F81AFE202004C9231005 :10D88B00FD23230D20E50CC97832FBD81E00D5CD26 :10D89B00E9D52006CD4AD5AFD1C9CDECD8281ED1BC :10D8AB007B1CD5E6032005CD55D51808CDAED5206C :10D8BB00207C20A0060178CD5FD7CDD7D8CD8CD6D4 :10D8CB002805CDF0D520D3D13EFFB7C90608CDE34F :10D8DB00D83E2ECD66D506037E23CD66D50520F822 :10D8EB00C93D0F0F0FE6604F3E0ACD5FD7E680EEC6 :10D8FB0000C9060B363F2310FBC9CD88D7CD90D777 :10D90B000601CD93D8C8CDABD54F4B20746F2045B6 :10D91B0072617365BFCD5ED5FE59C0112AD4CDFFA0 :10D92B00D5C9CD88D7CDD7D66F2600E5CD82D90EF8 :10D93B0016CDE0D5E1283AAF324AD4CDC1D613FE8D :10D94B005328021B29ED5300F51100017CB5281853 :10D95B002BE521800019E5CDC9D5112AD40E15CDA3 :10D96B00A4D5D1E1200B18E4112AD4CDE5D53C2068 :10D97B0003CD74DBC3C6D5CD90D7C22CD5CDE9D59D :10D98B00112AD4C8D5CDABD54572617365A0212BB7 :10D99B00D4CDD7D83E3FCD66D5CD5ED5D1FE59C2BD :10D9AB0041D5D5CDFFD5D1C9CD88D7CD82D93A6D4B :10D9BB00D7F5212AD4113AD4011000EDB0CDC1D640 :10D9CB002826ED5300F5CD99D7201DF147216DD7B2 :10D9DB007EB72803B8201170AF322AD4112AD40E87 :10D9EB0017CDE0D5C0CD4AD5C32CD5C321D5CD8815 :10D9FB00D7CD1FD7184ACD88D721000118423A2B13 :10DA0B00D4FE2020203A0ED5B7C83A7AD7FE10D2D2 :10DA1B002CD53284D7CD68D73A6DD7B728043D3291 :10DA2B007FD7C30AD61133D41AFE20C22CD52106B8 :10DA3B00D4010300EDB0210001E53EFFCDCFDAE1CB :10DA4B0022A8DACD99D7216DD7E57E322AD4213A97 :10DA5B00D4CD9CD7E17E323AD4AF324AD4115C009C :10DA6B00212AD4012100EDB02104F57EB7280BFE4D :10DA7B003B2807FE2028032318F106001181007EA6 :10DA8B0012B7280BFE3B280504231318F2AF122202 :10DA9B0000F578328000CD55D5CDC6D5CD0001CD62 :10DAAB00C6D5CD7ED7C3A9D4CD88D73A4F002F3258 :10DABB004F00C321D5CD88D7CD1FD7E5CD99D7E161 :10DACB00C22CD5AF32EADA2255DB3E0132FBD8CD80 :10DADB0068D7CDE9D521400020657EB720303E00C8 :10DAEB00B7CA2CD5E5AF32EADA2A74DA2B36202204 :10DAFB0074DA2200F5210DDB112AD4010C00EDB0F4 :10DB0B00183700434D4452554E2020434F4DFE24B1 :10DB1B0020043A7FD73C326DD73E0132FBD8237EAF :10DB2B0023E5E67FFE2420033A84D7327AD72FE60B :10DB3B0080200332FBD8CD68D7CDE9D5E1289BE512 :10DB4B00CDECD8E12894CDD7D52100013ED3BC38FC :10DB5B0018E5EBCDC9D5112AD4CDA2D5E1200611FC :10DB6B0080001918E73DCA7ED7CDABD546756CEC56 :06DB7B00CD7ED7C3B4D437 :0000000000 :10D40000C367D4C367D4434F4D0124242420202074 :07D4100020205355420000EB :10D42A0016444952207CD84C49535436D954595041 :10D43A00453AD9474F202077DA4552412011D9532E :10D44A00415645ACD952454E202FDA474554203033 :10D45A00DB4752414626DB4A554D5072DA3100F617 :10D46A00C5791F1F1F1FE60F3275D7CDF6D5CDBE62 :10D47A00D53292D4C179E60F3270D7C4C3D5CDFB69 :10D48A00D5CDB7D51109D43E00B7C4DDD53292D473 :10D49A002A00F57EFE032803B720383100F6CD4670 :10D4AA00D53A70D7C641CD57D53A75D7FE0A38094D :10D4BA00D60AF53E31CD57D5F1C630CD57D5210420 :10D4CA00F52200F53600E5CD17D6E17EFE3B28CBE6 :10D4DA00B728C83100F67EFE3B2004232200F5223D :10D4EA00E7DA7ECD0CD67723B720F7CD82D7202373 :10D4FA00110FD5D53E00B7C27CDACD56D8C27CDA38 :10D50A007E23666FE9CD6FD7CD82D73AD1F2FE205E :10D51A00CA9AD4CD46D52100007EFE213806CD57C1 :10D52A00D52318F5CD9FD5BFCD6FD7CDE5D5C3A5EA :10D53A00D4CD9CD54E6F2046696CE5C93E0DCD57BA :10D54A00D53E0A18080E01CD0500C30CD6D90E0225 :10D55A005FCD0500D9C9F53E00B72806F1D90E05F9 :10D56A0018EEF1F5CD57D5F1FE0AC0E5212AD435DA :10D57A00201236163E00FE50280AC5CD09EAC1FE21 :10D58A0003CA0FD5E1C911D0F20E14C5CD0500C1E9 :10D59A00B7C9CD46D5E3CDA5D5E3C97E23B7C8F52E :10D5AA00E67FCD57D5F1F818F20E19180911800047 :10D5BA000E1A18020E0DC305005F0E0E18F8AF32D0 :10D5CA00F0F211D0F20E0FCD05003CC90E1018F77B :10D5DA0011D0F20E1118F00E1218EC2192D47EB767 :10D5EA00C836001109D40E1318CC3EFF5F0E20185E :10D5FA00C5CDF4D5E60F878787872170D7B6320461 :10D60A0000C9E67FFE61D8FE7BD0E65FC93A92D4B4 :10D61A00B728451109D4D5CDCFD5D1283B3A18D44E :10D62A003D3229D4CD93D5202F1103F52180000155 :10D63A00C800EDB02117D4360023351109D4CDD650 :10D64A00D528153E24CD57D52104F5CDA5D5CD7DB8 :10D65A00D6C0CDE5D5C3A5D4CDE5D53EBECD57D5EB :10D66A000E0A1102F5CD05002103F57E23CDC3D69E :10D67A003600C9D9CD06EAB7C409EAFE13CC09EACD :10D68A00D9FE03C91AB7C8FE21381BFE3DC8FE5F82 :10D69A00C8FE2EC8FE3AC8FE2CC8FE3BC8FE3CC8CF :10D6AA00FE3EC8FE3BC9AFC9ED5B00F51AB7C8FE1E :10D6BA003BC8CD8ED6C01318F3856FD024C9CD824E :10D6CA00D721DBF2060B7E2BFE20200410F818046B :10D6DA00FE48283521D1F20100117EFE202822FEC3 :10D6EA003A281E23D630FE0A30195779073814070C :10D6FA00381107380E81380B8138088238054F10E7 :10D70A00D979C9C31DD5CD82D721D1F2110000061E :10D71A000B7EFE20282DFE482829D63038E5FE0A41 :10D72A003806D607FE1030DB234F7A07070707E6CD :10D73A00F0577B070707075FE60FB2577BE6F0B1A2 :10D74A005F10CEEB7DC921800081CDC3D67EC9AFE3 :10D75A0032D0F23E00B720043A70D73C3DCDC3D553 :10D76A003E00C3F6D53E00CDC3D53E00C3F6D5CDA7 :10D77A0082D7F5CD59D7F1C921D0F2AF325ED7772A :10D78A0032FFD43A75D7326BD7CDB2D6ED5321D505 :10D79A00060B2878D5CD8ED6FE413804FE513808BE :10D7AA00FE30380AFE3A300613CD8ED618F2D1FE74 :10D7BA003A204332FFD41AFE41381ED640F53A3E8B :10D7CA0000B72005F1FE031803F1FE04D21DD5327D :10D7DA005ED777131AFE3A281CE5EBCDE1D6EBE1CA :10D7EA00F53A3E00B72005F1FE061803F1FE20D2F5 :10D7FA001DD5326BD713AF3224D80608CD27D806E9 :10D80A00031AFE2E200613CD27D81803CD48D806B2 :10D81A0004AFCD4AD8ED5300F53E00B7C9CD8ED638 :10D82A00281C23FE2A2007363FCD4FD81807771326 :10D83A00FE3FCC4FD810E6CD8ED6C81318F93E203D :10D84A00237710FCC9E52124D834E1C9212BD40E51 :10D85A000A79B7281B11D1F206041ABE200A13232B :10D86A0010F81AFE202004C92310FD23230D20E5F9 :10D87A000CC9CD79D721D1F27EFE20CC09D9CDB2FF :10D88A00D60680280C0601FE412805FE5320020513 :10D89A0013ED5300F5783207D91E00D5CDDAD5201D :10D8AA0006CD3BD5AFD1C9CDF8D8281ED17B1CD522 :10D8BA00E6032005CD46D51808CD9FD520207C202B :10D8CA00A0060178CD50D7CDE3D8CD7DD62805CD99 :10D8DA00E1D520D3D13EFFB7C90608CDEFD83E2EF9 :10D8EA00CD57D506037E23CD57D50520F8C93D0F60 :10D8FA000F0FE6604F3E0ACD50D7E680EE00C9060C :10D90A000B363F2310FBC9CD79D70601CD9FD8C866 :10D91A00CD9CD54F4B20746F204572617365BFCD86 :10D92A004FD5FE59C011D0F2CDF0D5C93EFF18012E :10D93A00AF3262D5CD79D7C21DD5CDB2D6327FD519 :10D94A00280113ED5300F5CDC8D5CA1DD5CD46D54E :10D95A003E17322AD401800079FE80380EE5C5CD03 :10D96A0090D5C1E120370E002180007EE67FFE1AA5 :10D97A00C8FE0D280EFE0A280AFE09280DCD60D51C :10D98A00041812CD60D50600180B3E20CD60D504D0 :10D99A0078E60720F50C23CD7DD6C818BB3DC8C351 :10D9AA001DD5CDC8D66F2600E5CDFED90E16CDD130 :10D9BA00D5E1283AAF32F0F2CDB2D613FE5328029F :10D9CA001B29ED5300F51100017CB528182BE52120 :10D9DA00800019E5CDBAD511D0F20E15CD95D5D165 :10D9EA00E1200B18E411D0F2CDD6D53C2003CDE1CD :10D9FA00DBC3B7D5CD79D7C21DD5CDDAD511D0F2D3 :10DA0A00C8D5CD9CD54572617365A021D1F2CDE30D :10DA1A00D83E3FCD57D5CD4FD5D1FE59C232D5D5F7 :10DA2A00CDF0D5D1C9CDFED93A5ED7F521D0F211C4 :10DA3A00E0F2011000EDB0CDB2D62826ED5300F584 :10DA4A00CD82D7201DF147215ED77EB72803B820A3 :10DA5A001170AF32D0F211D0F20E17CDD1D5C0CDA0 :10DA6A003BD5C31DD5C312D5CD10D7184721000108 :10DA7A0018423AD1F2FE2020203AFFD4B7C83A6BB6 :10DA8A00D7FE10D21DD53275D7CD59D73A5ED7B742 :10DA9A0028043D3270D7C3FBD511D9F21AFE20C231 :10DAAA001DD52106D4010300EDB0210001E53EFF9A :10DABA00CD3CDBE1221BDBCD82D7215ED7E57E326E :10DACA00D0F221E0F2CD85D7E17E32E0F2AF32F03A :10DADA00F2115C0021D0F2012100EDB02104F57EA3 :10DAEA00B7280BFE3B2807FE2028032318F106005F :10DAFA001181007E12B7280BFE3B28050423131858 :10DB0A00F2AF122200F578328000CD46D5CDB7D5D6 :10DB1A00CD0001CDB7D5CD6FD7C39AD43A4F002FD8 :10DB2A00324F00C312D5CD10D7E5CD82D7E1C21D41 :10DB3A00D5AF3257DB22C2DB3E013207D9CD59D7E6 :10DB4A00CDDAD521400020657EB720303E00B7CA25 :10DB5A001DD5E5AF3257DB2AE7DA2B362022E7DA82 :10DB6A002200F5217ADB11D0F2010C00EDB0183752 :10DB7A0000434D4452554E2020434F4DFE2420046D :10DB8A003A70D73C325ED73E013207D9237E23E56D :10DB9A00E67FFE2420033A75D7326BD72FE6802022 :10DBAA00033207D9CD59D7CDDAD5E1289BE5CDF88F :10DBBA00D8E12894CDC8D52100013ED3BC3818E558 :10DBCA00EBCDBAD511D0F2CD93D5E1200611800064 :10DBDA001918E73DCA6FD7CD9CD546756CECCD6F49 :04DBEA00D7C3A5D424 :0000000000 v™ZCPR2.DOCj   "!$#&%')(o*+,.-0/123456789:;<=>?@BACDFEGHIJLKNMOPQRTVSXUW[YZ^]_\`abcdhfegi mo v)6921hŢr&ׁÚoTjYz[y.Rk ʵat:ﯶަrq(SQD&7XFU.Rk9 /$GN β1>_9SL|"˛w~zECQ֟0E'2i)c)SN9!Կv{u 5ٲCY O@nޥ<,WDV[)TΫܤv{nkΝ9 /$[1BGy5W.WDV[^u|uz mx ao>s-&ȫ:r>F鯓B`[?+SvV3‡C9r՛!UsX|{SLϵA>)rBB=~XWNX~nno <>*PO+N ҁog_æ*Z}\鼢|V^-W~OaFd!E/ ɫӕf pP3l7fDRRN9!|XնۋP  %* [zޚv~8oG3ϡ:b^ <>jA +:0?5"dyEڷarSYH?>̷V\9|ִ+_C}te6ZY|?B"/o \..'97Va7[=sۛb}SLX1Bv{TQX%䃣4y=7W.Zn[j>6|MڄGiR鼢_qc`0Bw?:C"G 4zWxO^,ݧ`>ۋmXy\as7??Bsަu [ar<}/rugwkTcl g$*!|64stez(?ۋESN^Hk~dvvF(UN?z7J[?bsQ2n!_s iQ<z0o?|0[8BWCzs oh*/D&wߨW.5 }}sc!Ԭ{ y:E@Ρvz{'wWstYH?z.oAsy[߫Κ\<^97WXK:#twskӟC]v\3ڝBOWy}erYRN!w\zlMVdMPqyr 7loݏЏS0Vΰ@L=)&g{'~v)x`Bv?/2Yַ~QZ -h{suZ;CR܇ =YO _ S\޴cPWN2F¿:Qv{t>z).z_lٟ+"-:_9p xEΫOΏNjEf9?Wv~D?Z܆5ߨ_=ۛb}- xWC[()LNʗPa>,~9!-W@yө ϡ.v{T덪~oѺ,T+3ToN#j>4ŷ?z5w_ |VD&wV wT;?|TyY~֜i@jZ1#jYz=ƈpH]͕'rʥ\X1F\܆@oyvw[ϥ)[9Pu 5^EQO?}\K$emʉ`hF Ns2p͛C=LOaYO-}z;ʍOk(9E0?e[? O1E`ɇ+l?Wi=9uo7-9E00Ϲ:_9V֜fh5P u awseו3M_sW9SGˀ9M1GPW.u89y !<̯^D`_&d&.5lDuSh}y|9NSN>H>=u8%?Iz"I18Fk$w>T]>jm7M GƏS((©\yl$s\yX>>Z3iǘj?(7cqJI*-qPkKe8VS9ԽY9I$Eiah0LI+2,. r_4CKoX~l$s<:͕'Vq2I1F9ԽY9う&0$i5mccPkZf}:=N>i-WмHu~'C=ʻ5*? wZY-\_"Л]Qor{|} _**cKԤ=js)L;1&Cп7[rg>Os2puQCAŔ3zB]9OyЁah}:}Ts}]RW] OҢem>]#5!zQ鼼rCBg݄7[?#5/˻5|r:Q´ 8}k9iҜ7fW~r04Z/J CAbFw(- em8:=ŗ!OXݕp*|N߃"0ril2 [arB|l HTUB>$mhWGOg9"7ģ-B]߄lCyלE/}"d1E9nBi{E9M1>ݭUŰW5/ Ay{XSi%v{7\&5m*Z7ZO(c܆5m:d7N?8ƠVN9ݱۛb}Y)D镫u"_>uo?Ű@)sC\#B=jW!r auІ;?|EHu~;gh #A+7βzÎj^0_3)Os5vs]9!aw1FޑTOzhgoWNJ~!W /$ʍ.lŗ kx4j)f)rMcLڡߴ>rMcmu|kc$Ֆרci-WмHu~'C=ʻ5*? wZY-\_"Л]Qor{|} _**cKԤ=?A@BCDEFHGKIJLONMPSQRTUVYWZX[]^\f+FD8hpivwJwoeq*n C4R_gSK"~ֿnz>]d3R'٫`5n`򷵉ώ?üeyDxFЧH8m_J YaXXcf"y'Q׳Q%N*[?p4l֨4$nkUc:'b#ԠA֟z8C .S&1 .32=ҬfҠAY-.4\C \dzQ%NTyƓd@],K^IV\ <}0 ,t/q`u,OU=zaޒ=*ٟ߯E%m?j?EC.2eᰥefVYyB?z? t G+pޱ6D {TOyq\b'[/[瑎YA? r{IXG8'~q`y7|'y*_7hp}6B1 q4hdܶA2u=T]N~.wkvWwLA~.>_f%8 6|l{yi$qunN*vߵr_ŭ"ƽ+5]k_ΙkܻU\wq2~.iIbZ"̅}G+ n4\ߎ .2ݹk?f~.ÏVZ5pRu+ +\*CݠAN듭sf}u̲Ҙ6ӓ?Շk!fzefY:p),K^5p Ni[lVO?'#{e.8nҧ)N,ON^d#}o\A&*v?~-bmhZlN"+e$OgI>Cܒt7Y|) \/225}.&]1n .aa.kp 1湿W\Bؕ{*np +?p1  \Ǘ5NM*.pj2p-^op{ qqVljTM'[_p=z}z6Y)+~o@QLb-4*NY髓O?o)ϿA O۟`O'[^bΛn?oj.Oo,K^O;mOcfl}a ܐFo8Wq_!_d>TA6TqIӇ4'nP v㸮,[7̐N03̊0?KqafdۓM%,5F7 Xe7Fe|`1Lc?_Oƶ<=ij i tOv#l(6NvZ t/|I_<}}4efÞ,e2u5~ 4dOd}鉟=&y> Vo@TOfH^,Ņ.]&'Vok, k!15Tx>usatK{84pbi,՗'[WdPXjےi4pG-'*n4mܠ2nXŶGw]w+~ s1°UlKGYU>bWwsa}~cV NdܶA2u5pzn[]rP}VmWӂ8^>[鐌oaf v)PqN1_$Λj508.+Nu)d){#}8;H[7Q(jP^iןH8}AXA/R`cx)ZB OO~u?Y/IL q7heܶA2uǓ֥OZ"^%ܐFpNR r\v]ez9wF»܎="/c93VЌ#v+GtN'i]ip ^wlvت%ưGrg$tod|w4pEت%LtHE7+ˈTˈ_7~.c9ӆGнD]Fde,q8:;8kAFkp 5 Ny>i]ip Wv6$N-8_ $WNV_'poi\ WW#v+ k|+~ez̲4k+*󾻿%s11U5 .!8 u/SW%z߱U[Ka/Huc72XKt;vK] 8wlvD&Kq\BTeDTˈvTt .A/ܞ/:ٺ1_%,"f`;E|zop Qc]r Qb .#Je,q8:;8ؽ\ByjS^OZ2u5p\2~7".%Ԡ֟)X2uԨM|1JlId}ד"VٸMuO*qXyLoƨOuWdzt31LcOjDu[ϿTM;Hdq<U\ .wmpSe \ԼbWH%JK)u?Y/IL?@ABCDEFG r HIJKLMNOPQRSTUSVWXYZ[\]^_`abcdeQ-6u+ fghijklmnopqrsA^MLE2, X·9ݢQ ]0\K|bu_O7؅ 4 Us):w));ɯӟm>{R`},1&}Nci`B>:z̲.eK}m?2#C`t{ xѬGHz8}l6M:ag8XF_ˈ^-\BQ(uϐ]d~/10)SLrw` ~ p#X/yp=؇KF=: xԤ5-e=ԅMAo7IJk[(v ٵXH.1 HϊKlzMу=Ŧr EA/3I-č_-1saSKPnQ̶=뭺^=6tfY3dz,zKGK%B)%nv(X\6WYp BQ8zdz,z`QSb0%! _FYqD.T`n u ?,l,_A;gl,=]% 7B sV%ttrl6M:a`,s0,݃E4 Ep)}-֟mxoϤz ;lDWIƐ1:Ae`e,s͠`EDÖ&ثI!g6RKL-~E¦r EA/yDfXcC;LEXKzhƎ.;Sv3h#d^%nĹbz>nB9)]K!EF{]\f ԅMA" tJzbJZ ~()hQ0[lUBL'{\KQɸB6х+< rX脂E'&8WEfjKI9 fr{Q .)(z>nB9z-EE2ʠAp[bJ|b8WE 0"eP Lc5m")\6[ )*)P6)'|4T'~(M&~(OHzݶDŽTq=4W8W+åCٕfRu<~( b:.78HB )>Q"#Qp!1)X{U73,BB)}4XD"0|ʠXDWB [cǔt=1)B҃),Rb6/z> ,Q7"3\u.W+-#dXD=K`Qaszu2?: E*C=B ?qoy\ )>,RّR`?B lDl>A;8)QA'JW(cnqǝd ۶%2aO9qIϥ}u$9hR|9! cQo1KARH 86Ƙ9<ߵ#)H$}IHXXN.;RR9q#[HAv|׾&x-Pģ4CCB.Nͣ?45''T4cmPǣKAvW-!UBss8 ;Nx޶-!9 | -Uacn<ߵ 4cJAʗ)'s# 9r |KAԱG+1IWjƎRuq-lUsxWCi ˔Q _$za,KA.% ~(͟ ;~Hx޶-!/ MHxThQG^sc$䘐Soacxh M !7XGJAv-!Ջߤ+RJ+E%XDqg }ьb@30úR~> o ZCP i th