ååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååREAD ME 5TURBO COM€ TURBO COMp !"#$%&TURBO MSG ()TURBO OVR *+TINST COM€,-./0123456789:;TINST COMG<=>?@ABCDTINST DTA#EFGHITINST MSGJKLMLISTER PAS,NOPQRSCMDLIN PASTMC PAS3UVWXYZ[MC-MOD00INC\MC-MOD01INC]^MC-MOD02INC_`abMC-MOD03INC$cdefgppendix M of the TURBO PASCAL Reference Manual. Now, using your working copy, run TINST to install TURBO.COM for your terminal. Installation procedures are discussed in Chapter One and Appendix L. ******************************************* * * * Need help with TURBO? Please see * * Appendix N in your Reference Manual * * for answers to common questions. MC-MOD04INCFhijklmnopMC-MOD05INCXqrstuvwxyz{MC HLP%|}~€MCDEMO MCS]�‚ƒ„…†‡ˆ‰Š‹Œåååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååå * * * ******************************************* ------------------- Contents of the READ.ME File ---------------------------- 1. CORRECTIONS to the 3.0 Reference Manual [ All versions ] 2. OMMISSIONS from the 3.0 Reference Manual [ All versions ] 3. New FEATURES [ CP/M-80 ] 4. ADDITIONAL FILE LIST åååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååå [ CP/M-80 ] ------------------- CORRECTIONS ----------- Page 253 - MOV AL,[BP-1] ------------------------ The correct statement is: MOV AL,[BP+4] Page 293 - TURBO-BCD will compile and run any program ----------------------------------------------------- Well - almost. The Real functions Sin, Cos, ArcTan, Ln, Exp, and Sqrt and the pre-declared constant Pi are not availabååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååle in TURBOBCD. ------------------- OMISSIONS --------- User Written Error Handlers --------------------------- In Turbo Pascal 3.0 you may write your own error handler, which is called in case of an I/O or Run-time error. The procedure must have the following header: procedure Error(ErrNo, ErrAddr: Integer); The name of the procedure and its parameter Welcome to TURBO PASCAL Version 3.0! ------------------------------------ In spite of all efforts, some errors have found their way into the new TURBO 3.0 manual. This file contains all the necessary corrections and additions, and we apologize for any inconvenience this may cause you. Please make a working copy of your TURBO disk and store the ori- ginal in a safe place. For help making a backup copy, please refer to as are unim- portant, as long as it is a procedure with two value parameters of type Integer. The value passed in ErrNo is the error type and number. The most significant byte, i.e. "Hi(ErrNo)", contains the error type, and the least significant byte, i.e. "Lo(ErrNo)", contains the error number (see Appendix F or G in the Turbo Pascal Manual). The following error types are defined: 0 User Break (Ctrl-C). 1 I/OS-DOS) or OvrDrive (CP/M) standard proce- dures may be used to specify the drive and subdirectory in which overlay files reside. Please note that run-time error F0 indicates that your over- lay file is missing or is called recursively. (This error number is omitted from the Reference Manual but is included elsewhere in this file.) ------------------- TURBO PASCAL Version 3.0 error. 2 Run-time error. In case of a user interrupt (Ctrl-C), the low byte of "ErrNo" is always 1. "ErrAddr" contains the address (offset in Code Segment for 16 bit versions) of the error. To activate the error handler, assign its offset address to the standard variable "ErrorPtr", i.e. ErrorPtr:=Ofs(Error); { 16 bit } or ErrorPtr:=Addr(Error); { 8 bit } There are no limits to what an error handler may do. Typ CP/M-80 Additional File List In addition to the list of files mentioned in Chapter 1 of your TURBO Reference Manual, the following files are included on your TURBO disk: Sample programs --------------- LISTER PAS - simple program to list your Pascal source CMDLIN PAS - get parameters from the command line MC PAS - sample spreadsheet program - MAIN MODULE MC-MOD00 INC - sample spreadsheet program i- cally it will close all open files, output an error mes- sage, and call the Halt standard procedure to terminate the program. If an error handler returns, i.e. if it does not call Halt, or if an error occurs within an error handler, Turbo Pascal will itself output the error message and terminate the program. ------------------- NEW FEATURES OF CP/M-80 IMPLEMENTATION OF - INCLUDE MODULE 00 MC-MOD01 INC - sample spreadsheet program - INCLUDE MODULE 01 MC-MOD02 INC - sample spreadsheet program - INCLUDE MODULE 02 MC-MOD03 INC - sample spreadsheet program - INCLUDE MODULE 03 MC-MOD04 INC - sample spreadsheet program - INCLUDE MODULE 04 MC-MOD05 INC - sample spreadsheet program - INCLUDE MODULE 05 MC HLP - spreadsheet help file MCDEMO MCS - spreadsheet data file (not for use with TURBO-87) --------- TURBO 3.0 - AN OVERVIEW - ----------------------------------------- Inline ------ A constant identifier used in an INLINE statement does not always generate two bytes of code. Files ----- New FIB formats. Optional 4th parameter on Blockread/Write returns number of blocks actually read. SeekEoln function. SeekEof function. Misc. ----- Exit procedure - To exit the current block ------------------------------------------------------------ åååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååå OvrDrive procedure - To specify the drive on which to find overlays ParamCount function - Gives number of characters in the command buffer ParamStr function - Gives the string of characters in the command line Overlays -------- Overlay files are opened and closed every time they are accessed. Therefore, there is never a need to specifically close an overlay file. The Y compiler directive is no longer supported. Instead, the OvrPath (MÃã Í«Copyright (C) 1985 BORLAND IncƒBNo Terminal selectedP~·7È#õå~Íéáñ= ô·ÉÍ ÉoåͦÉþ€ÜlÔ…æîå!ïå!é"áãõÅÕ~#·(åÍÒáôÑÁñãÉ}´È:$‡‡‡ããããÅÒÁ= ô+èÍÐØ*ÎßõÅÕå!¨Í6!¢ÍÐ*ºÔáÑÁñÉõÅÕå!´éõÅÕå!®àõ:à·(ÅÕå¯2à!ÈÍ6áÑÁñÉõ:àþÿ(öÅÕå>ÿ2à!ÂãõÅÕå!¼ÚõÅÕååð!‹í°Ñ:žO:œ‚ÕÍÝÑ:ŸO:�ƒÍÝ!ðÍÐ* ÍáÑÁñÉ!ð ë!›45(É! +/ –0ü†õyþ0åååÝ9Ù.Ù>ÍÇ 8Í­ ?Ë= ÝuÝ+Ù-Ù(>͇ 0ßÍ­ ·á͇ 8ÍÇ ?áÑÁËx ͈ š, —7•8Æ€8Æ€8oÝãÙåÅxËøÙ¨æ€õËøÝåÝ!ÉáØ¯oGOW_gÉ·ËËËËËÉ·ËËËËËÉ|Ù„Ùg{Ù‹Ù_zÙŠÙWyÙ‰ÙOxÙˆÙGÉ|Ù”Ùg{Ù›Ù_zÙšÙWyÙ™ÙOxÙ˜ÙGÉxÙ¸ÙÀyÙ¹ÙÀzÙºÙÀ{Ù»ÙÀ|Ù¼ÙÉÙxÙ¨òê xÉËx(Íô È?É}Ù½ÙÀ·ÈÃÇ }Ö�Ús <þ(ÐÙÅÕåÍs 7Í| = ùÙ|Ù¤Ùg{Ù£Ù_zÙ¢ÙWyÙ¡ÙOxÙ ÙGÃ| ÙÅÕåÙÍ­ÙÍþ ÙÍ‚ ë}·ÈËx>Â( Í­}Æ€Ë/Æ€oÖõÙÅÕåÍö Í -ÅÕåÍ‚ }áÑÁÙáÑÁã¼ã0ãñÙÉÙÍ�-Í‚ ÙÍ�,Ù}þlØÅ˸Íà Á8 Íö Í5 ͘ Ëx(Í Ù-ÙÍà õ8Í‚ Ù-ÙÍà 8Ù,Í‚ }þl8;Ùª*ªª!ªÍ˜ ÝåÝ! >Í5ÝáÍ­͘ ͘ ÅÕåÙÍ­--Ù-Í ÙáÑÁÙÍ(ñíÉ d!kÃ6!{Ã6Í`æÍ`o&Éô  áÁå:Ý·(ÕÅÍ |µ(Íâþ ÍâþÊÕ ÁÑ*é"Òx2Ýy·( >Ã28!ü"9!¦ í°!¾¸ í°¯og2Ð"Ô"Ö>~2Ñ2àÉÃÃ!Ã:Ã0Ã5Ã+Ã:Ã!Á‚CÄÅÁÅÕåÝåýåõo&åͦñýáÝááÑÁÉÅÕåÝåýåÍ£}ëÿ í[Òþ (ú!eÍ|ͧþA8þQ0Gþ: xÖ@¯!\w# (̓ þ?(þ*( þ.( ÍxÍ_þ. Í_!h6#ûÉ (þ?( þ*( ̓( w#éÉ>?> w#üÉͧþ 8 åÅ!™í±ÁáÉ¿É .,;:=?*[]<>{}þaØþ{ÐÖ É|͵}õ;ñæÆ�'Î@'Ãʯ7Ë|À|·}È>ÿÉ2ØÅͰÁ*·íBÚ© ëÑùü "Ưog"Î2Ü>Ã2Ù!ß‚ ,,ñ,-ÈØxî€GÉgª?+2×n¶*ï8t Ð Ðzˆˆˆˆ~«ªªªª,->Ê( ËxÂ( ÙÍ™Ù}.�•õÍö Ù͇ÙÍ‚ ÅÕåÙ,Í ÙáÑÁÍö ÝåÝ!� >Í5Ýá,ÙÍ£-ÙÍ ñÅÕåo&0%Í Ù,͘ ÙáÑÁÍ }þgÚs É}Š�؉}颋.:}Žã8Žc~I’$I~ÍÌÌÌL«ªªª*ÙÍ£Ù·Ëxõ˸Íö }þˆ0GÅÕå,ÍÑåË<Ë}áõÍ ,-(-ÙñáÑÁõÍ‚ ÝåÝ!>ÍJÝáñ0 õÙÍ™Ù͘ ñ…o8 ñÈÙ͇Ãö á>Ã( m.`1pF,þåt6|‰„!wS<ÿÃ.zÒ}[•|%¸FXc~üïýu€Ò÷r1}·ÈÝåÙ͇Ù¯Ëx(<˸õÍà 8ÙÍö ñËÿõÙÏŽé!~JÙÍà 0Í/OÝ!Ï>ÙÝÍtÙÍà 8 = ìÙ ÝÙÙÍoËøÍ ÅÕåÍt͘ Ù͇Í ÙáÑÁÍö ÝåÍ/ÝáÙÍoÍ ñ0 õÙÍ�-Í‚ ñÝáËOÈËøÉçÏÌTöô¢0 jÁ‘ €µžŠoD€‚,:Í€ "Úë"Ìéå*Æ·íB"Æí[Ä·íRëáÚví°É*Æí°"ÆÙÉ^#V#Õ^#V#N#FáÉÝáëO/o&ÿ9ùëí°ÝéÑO/o&ÿ9ùëí°éÝáë!àÿ9ùëÅ(¯üí°Á> �‘(G¯üÝéÝá!àÿ9ù ¯w#üÝéÝáEÍ»¶wÝéÝáÑ}“8÷�Ã( ·íR·íB0 É>‘Ã( ·íRëêrðøÉÕë·íRëáë·íR!È+ÉÍà õͱ ð·íR!À+ÉÍà õͱ ðÍs!Ð+ÉÍà õͱ ðÍs!ÈØ+ÉÍà ôͱ ïÍs!ÈØ#ÉÍà ôͱ ïÍs!Ø+ÉÍà õͱ ðT]KBë!z·>jÁ‘ �€!¢ÚI}袋.º}Žã8Žc~I’$I’~ÍÌÌÌL«ªªªªÝ! >ÅÕåõÍ­͘ ñÍJÙáÑÁØ õÙÍoõÙÅÕåÍoÍ ÙáÑÁÙ͘ ñ= éÙ͇à ÝÝnÝfÝ^ÝVÝNÝFÉ!�DLT\ÉI¢Ú!‚!É53ó!�úÉr1÷!€ÒÉÅÕåÙáÑÁÉÍ“!€> Ëx Ë#ËËË-= ðo˸ÉËxÙ͇(Ëø-Í ·Ë}(ËxËø>�½8(Í{ ,óÍ{ `iÈÄ!É>’Ã( |µÊs Ë|Í�>�)=Ë|(úDMboÀ˸ÉÍÉë8þ8ÍÉÙËxÙ(’0¯þ 8> ÕÍ�ÑËx(>-ÍæË{(aËy(ÍäÍÚ ò�z·(>.Íæ (Íä ÷ú²ÍÚ÷Ë{È>EÍæ>+Ë|(|íDg>-Íæ|/Ö 0ûÆ:ÝpÝ# ý~ý#· ý+>0ÝwÝ#Éýå,-  ý60ý#ø¯Ã~ S>)ë)ë0 = öÉ|µÊ |ªõÍ�ëÍ�ëDM¯go>íjíB0 7?ËË= ðëñðHåÍ“Ë<ËÑëÍëËzÈ5ÍbÈ)ýÉÍbÈË<ËúÉëz· {þ0G·É¯goÉë|ª|úºÀ}»ÉÉË|È|/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áÍÞ _áå}“8(º8J`9{‚T]=o`9yí¸ë ¯„•.(Í{ Ë= øý~õ> xæÆ0ýwý#xæGÅÕåË%͈ Ë%͈ ëãÑãíZëáãíJDMáË%͈ = ÈñÁýáÉýåá_~6þ5Øú�+~¨¥Ôh¶¿ÉìÅëx-ÐÍÎÂSÞùx9?ë+¨­ÅøÉ{Η@}·ÈËøÅÕ|Í{ Í{ „gãíZëáãíJDMá0Í| ,7È}Æo˸ÉÍ@¾ #øyîO!@9ùi&Ýé~“8 (‘8õ~‘wPT] ñÃ* Í Ð>Ã( Í‚ õÍ­͘ íÙ}·Ù>Ê( Íö ßÙËxÙ‰ Ù}·ÙÈÙÅÕåÙ}· Ù˸TÅËø¯ÙËø}Ù•(0íD=ÙÍ{ ,= ù(Ùñæ€ Í“ 0%Í| ·, 7 ÍÇ ?õ(8ÙÍ­ Ëx ͇ - öÍs ñ8˸·ÙáÑÁÙÉÙËxÙ Í� Í Ø,-Èxî€GÉÙ}·ÙÊs }·ÈÙ…ÙÍN ÅÕåÝ9Ís Ù.Ù>Ý#ÝnË0Í“ Í| = ñÙ-Ù åÝnûËx ͈ ,-(-ñññ·ñÙÁáÙÝá˸°G,-Ìs É}·ÈÙ•Ù?ÍN Í@ ë¶¾ â#÷ÚÍ@¶w#ùëùÝéÍ@/¦w#øïÍ@¦w#ùãýáÝá!9ë! E9ýéÝá!!9~·(¯+FÍ»¦!"9ù!(#Ýé>¯2èýá*ÒÍã¯á"âýå|· >"2ÐÉ:è·( Í· *âwÉÍó*â6 ë!\$í°É!çÅåí[Òþ (úͧ–( áÁã·É#ëÁÁþ:À~ÉCONÁTRMÁKBD‚LSTCAUXÄUSRÅ>¯2èÍj:зÀ*âË®~æÀÍ1:зÀ*â:è·€€(@q##pÉÍ[*â ë:è·( ÕÍÑñÅÍÁ<Àx2ÐÉ*â6#ûÉ"â~æÀËv( >ÍÇÍ Ë~È*âå ëÍá< >ÿ2Ð6Éã"äãå!Â"âáÉã"äã"âË~À>2ÐÉã"äã"âËvÀ>2ÐÉ>¯ã"äãå!Â"âË®õÍéñ·(ÍâáÉ!Ñ~þ8>~O6~*Ò"ÔÝnÝf}´(HíR0ÝnÝfåÝ"øÝáã Ý^ÝVÝåMDÝnÝfÝåÝÝuÝtÝqÝpÝåÑ*øs#rÑ*òs#rÉÝåá"Ä*ð ÝåÁ ÚvíKÆíB!Ú1>ÿÃ( ëáã~#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#ûÉÍL*ôÉÍL*öÉ!"ô"öÝ*ÞÝNÝFy°(*ô "ô*ö·íB0íCöÝnÝfåÝáØ*Æûÿ í[Ä·íRØë*ô"ô*ö·íRÐíSöÉí[Äs#rÉ^#Vë"Ä"Þ6#ûÉ>¯O"è¯w2Ðx2ê*â"í!G"âá"äá Í'Íz*í"â*äé>¯2ì"è*â"Íâwþ(6þ(2þ(-þ()þ(6þ (8þ 0þ Ù:Ý·(ÓÝ*äà yº(È~#ÍÊÀúþ+Í (±ï(« 6Íâ6 #6 #"ÖÉ*â:з y~Ëo pæ .##~·ò˜åÍ»á(å.6á¯w4Æ._~þ =*â##55= *Ôí[Ö·íR8ÿÍë*Ô~#"Ô= Í£}== ͯ}͵}*âËî#w+É#~+É>Éå*â~æþ('Ílþ!0þ(Ë®ñ]ÅÕÍlÑÁþ!8Ë®ï¯áÉÝ!]Ý~·Èþ-ÀÝ#É8Ý~·È>2Ð7ÉåÍlË®áwÉ>¯OÅÍñÁÍ%ÈÅåÍøÑÁÍ7ØÌ„ës #rëÉÍñÍ%ÈÅåͤÙáÁÍ7ØÙÌ� ÙÃÒåëÅÕÍlÑÁþ ( þ(Ë® êáqÉÍlþ(Ë®þ ( þ ïÍlþ Ë®É*âO:зÀ~æ ##å~Æ._qá4ð(þ(áÅå=ʦ==Ê©=ʬò*èí!G"âá"äá"ê!\Íã¯*ê:ì· ÍOÍs!Ð~6·go(Ýåá\íRë*ès#r£Æí_2ËÉëÝáÁáx±( s x±(T]í°ÝéDMÝáÑáx±(ôíR0í ë ëí¸ÝéU(ÍžÝáO/o&ÿ9ùq#ë (í°Ýé!€>F¸0#( ~þ (þ #ï]( ~þ (þ (#ï}“(  Õi&TÉÑÁÕ-a%ã}ͧoÉ*é!Ð~6o&ÉÍ|µÈ:Ýõ¯2ÝÍ!ñ2Ý}þÀÝá:зÈÝá_Ýá_ÕÍ{ѯ2Ý*Î|µÝåáíKÌíB "η ÕÕåÍÙÑz· Í^C User break+= Í I/OÍ Run-timeÍ error {͵Í, PC=*ÎͰÍNot enough memoryÍ Program aborted :Ø·Êm'ÃáÑÑéÃ=!*ÁùÅü"*E!×zÍeÍ Í:ê¾È4^qÉ*â##~·È6Í»È>ð2ÐÉ}ÃÇÁÑÅÝ*ÒË|(Í„ëëË|( Í„Ý6-Ý#ÕÍÇáÍÉí[ÒÝåá·íRMë‘8( Gå> ÅÍÇÁ÷áAÈ~ÅåÍÇáÁ#óÁÑÙáÑÁÙÅÝ*ÒÕÍ(¾ÁÑÅÍÉËC!¢ ¿!¦¸TRUEFALSEÍÉ!9N#ÍZÑùÕÉá~#·( G~ÅåÍÇáÁ#õé> ÍÇ> ÃÇ   "âË~(ÕÍlÑ»(þ( þ!0 (Ë®è!É!É>¯2èíSæÍ{:зÀÍ1:зÀ*â6Ð##ww#w$w#wÖÿ:è· å¯Í á##N#F*æ·íBÈ>�2ÐÉå¯w#w#í[æs#rá>à "â~æÀÈͯ*â-¯w#wÔÿw##>Í ͯÂã"äã"â~æÀÀ>2ÐÉ:зÀåÍ[ë·íRá0¯Í *â4À#4É>™2ÐÉ:зÀåÍ[·íR> *â4 #4(>áÍ lÃ…Íæ :$Eõ:#E·Äƒ-Ín-Í*-Äå$:ÕD=(ñ2$EÃ"'Í-ùÃâÍ ùÉ*<ý "ØDÍ<2ÚDÍæ Í?Í)!ÍTURBO Pascal systemÍlÍ5!ÍVersion 3.01A Í5!ÍCP/M-80, Z80 Copyright (C) 1983,84,85 Í…ÍBORLAND Inc. Í)!Í Terminal: !SÍÐÍ Include error messagesÍ-2#Eă-Ín-ÍY"í{!"åÍû�оÍâͧÍâ!?$Q$ Í/$8éÍ: ÍéÍâ×zþÈþ ÀöÍ?ÍûÌogged drive: ÍÆAÍÊÍû�ŠŠ×ork file: Í1Íû�ŠÍain file: ÛDÍ×-Íû�ŠŠÅdit Ãompile Òun Óave eØecute Äir Ñuit compiler Ïptions Text: í[&E*Èá>ò2ÐÉ2éë*âËf(/˦:éËG(##~++· :éËO x· y·úDÅÕ!Í»ÑÁ Q*â:éËG(Ëî##~Æ.Õ_ÑÖ.Í›í âg<ò]=<Í›*â##æw ÅÕåͯáÑÁ Õ+Ñ4 #4x±ÂëÉ>™>ð2ÐÉõ:éËG(ëñÉ"âͯÈæ"*âËæËnÈË®*âåÅ0ëÍÁá ëÍ·ÉÁÑíSâÅåÍ[Ñ·íR8@*â N#F#s#rÍ- 0}æ)ëíjëS\*â##w+ N#Fë·íB ÈÕåͯÑár+sÉ>‘2ÐÉÕÙáÙ!T]>)ëíjëÙ)Ù0 0= ïÉÍ^·íR!À#ÉÍ^ëÉ*â^#V#ÕN#F#^#VáÉ>¯2èͱ:зÀÍ1:зÀ*â6Àå ë#Íá-¯Nw#FwÖÿq#p#6€#w#w#wÉ"â~æÀÈÂ>">!DM!ð"æÝáÑáÝåÅÍþÁ:зÀ*ðíBÈ:éþ!>™(>ð2ÐÉ>">!"æÝáÁÑáÝå2é(E+Í#í[(E**EÍFree: åÕ·íRÍ;.Í bytes (áͰ>-ÍÊáͰ>)ÍÊÃâ= Íûcompile -> É Ã5!!X#åÍ?:ÕDÍ@#ÍûÍemory Í@#ÍûÃom-file Í@#ÍûcÈn-file :ÕDþ(]ÍûÓtart address: *ÖDͰÍû (min !ã ͰÍû) Ånd address: *ØDͰÍû (max *ͰÍû) ÍûÆind run-time error Ñuit ¾ÍâͧÍâ!J$g$Í/$Øé¾(#ø7Éë^#VëÉLWMECRSXDQOMCHSEFQ­,¨$y$×*(v*& +r++X#'#'''/'M'z'u$áÃY"Í Main file nameÍ~-Í@">2ÜDÈÍ -ÛD!\$í°É!›%"}%Íà%Í Work file nameÍ@">2E Ín-Ã"Í -ÿD!\$í°!–%"}%!Ê%"\%Ín-ÿD*&E"BD"DD"â~æÀʱ*æ¯w#wx±(9ÅÕÍ*â ë:éOÍÑÁ· Õ*â-4 #4Ñ!€ë*æ4 #4 Ã*â-N#FÚÿq#püÿV+^ë·íBÐëq#pÉÁÑíSâÅåÍ[Ñ·íRÚ'*â s#r$ s#rÉÍMÀ ëÍ<À?ýá*ÒÍã¯áýåÍMÀåÍóáåë!\ í°á åëÍÑ<( !\$í°É>2ÐÉ>¯2èÍMÀ:Ø·>!(ë*â \$í°\Í<(Ï!4°í°:è· í[1ðÕÍ\ÍÑ!€ë·(é7"â~æÈ> 2ÐÉ"æíSèëá"âNs#Frë·íB(Zë#\:Ü í°¯üå\ÍÑ<(?*æ"}íKèÅÕÍ\!ÍÑÁ· !*}#"}!€ë x± Û\Í*â éÝ*â>ðÃ* ÍÉþÐ2ÜÉ"ðëáã"ò{æü_!Þ"øÝ*Þ"2D"6D":D"LDíK*EÍ%6 #"(EÉåÅÕÍ Loading Í×-\Í»&á$í°Ͳ&õWyÍGrñÁá<(.íCm{íKm{·íB ÒÒåͲ&á·ÀWy€þÿÈæþÈw#òÖÃÒÍ File not foundÃU.Í%2Í New File#å!èÍáÉ*(EÍ File too bigÉͳ%¯2EÃ"!e6B#6A#6KÉ>¯:aD·È·(,ÍWorkfile Í1Í not saved. Save¯2aDÍ-ÈÍ/-!ÿDå\$í°Í Saving \Í×-*(E+6ÍÔ%͸&ÍGr!]l¯2aD<2ÔDí°á\í°Ͳ&*&Eå͸&ÍGrá<(NåWyÕÍGrÑá€~#GÅåͲ&áÁ· >Wyx€þ ãxÖ€> Þ\ÃGr\Õ! 6T]í°ÑÉÍ Directory Í DiskÍ fullÍU.͸&Ͳ&:ÔD·ÈýËFõÌÍAñw#åÍyAá"4DÍÉ?Ü.ÍSBþ0þ Ð!dD6#wå!dDƒBÿÍ£/á· å!dDKCÍ£/á·7È=( !ÖC ^#V7ÉÍi/õÍSBý4#wñÌi/ÁÍBÍqBÀå!Í£!dD~õ#~͇/ñ= öáÉõÍÎ<ñþÐþ ÒÊõõ>^ÍÊñÆ@ÍÊñÉÿÅåáÁ·È ÅåN‘#0�Oõ–  # öñáÁ>ÿÈ>Éñ�Oë ëÎÍBÍqBÀ!VD~· s6ÿ!"XD¯2ZDÍ£Íô;ÍÁ<:hþ88 !*Í£Í1!ÍðALine !ÍðACol !:TD· ÍðAInsert ÍðAOverwrite :[D· ÍóAIndent:NDý†<*ZD½(2ZDõ!Í£ÍÁ<ño&>ÍÎ0í[XD*2DÍÄ;ʆ7͆7í[&E*2D·íRMDëy°(> í±âµ0ÌBÍqB ì! ÕÍ£ÍÁ<á>ÍÎ0*2D"XDÆ7õÍà0ñ€ÈG> ÍÊûÉ|µ>0(-'Í1èÍ1dÍ1 Í12aD!]l¯2ÔDí°ÍÔ%Ͳ&Ã">>>2ÕDÃ~-ÍStart addressÍ@"!ã ĸ-"ÖDÉÍEnd addressÍ@"*<ý ĸ-"ØDÉÍæ *Î|µ Ã"ÍEnter PCÍ@"È͸-"ÎÍâͶ'!"y>2yÍ SearchingÍ~-ï(Í*-Ì/-ÍY-!ÿD Í/-Í^-(ñÍá%!Ê%"\%!–%"}%ÛDÕÍ÷$>á2ÓD3y$í°¯2y*" y*(E6#"yÉͶ':ÕD=ʉ(=õ >C!OM>C!HN22y*ÖD"y*ØD" y3yÕÍ»&ÍGrÑÍGr<Ê9*ñ!(*y"yë*y7íR8&*y"ÕÍGr3yÍGrÑ!ã "·Â9*!€ëÒ>¯Í Compiling 3y·( Í --> Í×-Í~-ÍâÍ,E:yþÊ Í Compilation abortedÃ"Í lines :y·ÂO):yþ ÍY*Ínot fo¯íR8<ùÆ0þ0 ÈÃÊÿDÃ×-Í: ëåÝá#V6#ýˆÕåÍ/áÑýËÆ0^ :eDÍØ>åyþ 6Éþ Ý~º0ÓÝ4Jþ Ý~º(Ä~͇/#Ý4ðþ ͹1 û¯þ- ÍSBþ( þ(þ(þ –͹1‘_Ý~ݾ0ˆÝ4s~#͇/Ý~º8æÝVÙ1Ý~·ÈÝ5+~þ ÜÈ1ÍóAˆ ˆ>ÿ·É¯2`DÍß1Í2UÍæ=FindrDÃ1Íé=Replace with“DèÍé=Options´DÍ1:hg%.ã>ÿ2`DÍß1Íí1Í2Íi/ý6Í">Í>#í[4DÍsAt{·íRí[2D"jD!µDFý6(C#~þ08þ:0 Í4Ö0ƒ_0.+ͧþW ýËÆþU ýËÖþN ýËÎþG ýËÞþB ýËæ½{² íSlD*&E:_DËg(*(EË_ *jD"jDýËf í[(EÍÄ;Òb3ÍÐ;Úb3tD:sDGýËf(=ƒ_0ýËF(ÕåÍÝ3~áÑ8und Ã"·( *yã ·íRÄ #ÍCode: í[y*yå+Í#Ñ*yåÍ #Ñ* yÍData: Í#>ÿ2$EÉþúÒ9*þÈ0sGÍError &hÅÍ@.Á:#E·(f*€B~þ(^þ 8Ö0O‡‡�‡#†Ö0#¸( ~#þ ú#ßÍ: ~þ (7þ 0!í[€Bþ 0¾ þ (ÍÊõþ úãÍÊ#ÐÍY*Ífound¯2ÓD:y·(?>.ÍÊÍá%ÿD!y í°Íå$Í Error found in above include fileÍY-( ÿD!ÛD í°ÍU.* yÃÝ*ÍDisk or directory fullÍU.Ã"ÍRun-time error position É:$E·Ì(:ÕD=(;=ÀÍ+ÈÍY-!ÿD(!ÛD3y í°>C!OM2*i-&Í£*B"§ÍÆ38T(Íñ3 K6ýËF( åÍè3~á8ÍÆ386ýËfÌ¿;:`D·Ä4ýË^ ŠíKlD íClDx± ñEÕÍè3Ñ8ýËf(³°*jDÍè3ÒÁ2͸3Í‹3ýË^ÀÍæ=Search string not foundÃô>Í‘3Ã=í[(EÍÄ;8ëååÍ×;"2D·ëáíRt{"4DÍÉ?Í@áÉí[&EÍsA*(E+ÃsAþ08þ:ØþA8 þ[Øþa8þ{Ø·ÉýËf( Í¿;?ÉýËf(õÃÐ;þȾÈýËV( ÍÆ30®æßɾÉåkb)))ëáÉåÍqB(ýËN aÍ‹3Íx;ýËN UÍé=Replace (Ù/Î): ýnýfÍ£ÐÍBÍqB  y° ó!Í£ÐÍBÍqB  y° óÏÍSBÍØ>ͧþY(þ NýËƯ2$E:”DOáåÅ:sD‘Oõ0ýËf *jDñåÄú>ÑÁx±(!•Dí°ÍqBõÄ)Añ ÕÍ=ÍAÑýËf áëÉáÉýËFÀÍ">Í=*BDí[DDÍÄ;ÐÍ6Í=Íæ=Write block to filÃ"Íà%ÍÃÍ+È'Íà%\!>O!VRÍÿ-È€�!€åëÍͲ&Ñ·(ìÉÍ ProgramÍ@"Ê!>C!OMÍÿ-(ã!\Õå:ÚDõ!ïå!ôå!2Då!!åÃ�ÍDir maskÍ@"ÍïÍGrõõ:\·( á=_õÍGrñÆA2l,WyÍGrÕͲ&ÑO<(Ry‡‡‡‡‡O!ay Ë~ =ÿ!Wy  :h=ÿÖ0ûÍ:  #~æÍÊxþ> ÌÊï(> ÍÊÍâ¥Äâ( ÍNo file ÍâÍåÝáÝ~<æ2q{ÝnÝf"o{#Í¥,åÍë*o{Í„,`iÍ¥,ÍBytes Remaining On X: ëá·íRÍ@.>kÍÊñ_ÃGrÅøÿ Á|·ò—,,( ·ùÍœ,è·È0ûø:q{Ø)ûÍNew driveÍ@"þ : ͧÖAØþÐõ ÍGrñ2_ÃGrÍ (Y/N)? ÍâͧþY(þN òÍÊÖNÉeÍH5ÈÍ -Ͳ&<("Íé=Overwrite old \Í×-Íà,(½Ͳ&*DD~õå6Íï=*BDÍq&áñwÉÁDÍ1ÃDþÉÍæ=Read block from fileÍH5ÈÍ -Ͳ&< Íï=\Í.Íô>ËýˆÍ6*(Eí[*Eþ ·íRåDM*nD7Íú>Ñ!¿5å*nDå¯íRå!Ó5"\%Ã?%"DDë*nD"BD*m{·íRDM!í[nDÍÉ5û>Í6Ò=Íi6*nDí[BD"BD "DDë·Íú>*BDÍ‹3ÃD7Í6Ò=Íi6*nD"BD "DDÍ@Í=ÃD7ýËF(¯ÉÍ>#í[4DÕÍsAëÍ&>át{·íRí[2D"nDåí[BDÍÄ;í[DD8ÍÄ;0· *BD·íR"pDMDáÉÍú>íKpDy/Ox/Gí[nD*BDÅí°ÁÉýËFÀÍ">*BDÍ×;"2D*6Dí[BDÍÄ;8í[DDÍÄ;0*2D"6D*DDí[BD·íRÚ=MDëåÅõÍ@ñÁáÍú>*2D"BD"DDÍ=ÃD7!bDÍx7ÃD7*4D"HD*2D"DDýËNýËÎýËFýËÍà,õÍâñÉ>P!AS2e"fÍ:\·ÀÕÍGr<2\ÑÉ:E·ÉÍ*- ÍY- ͨ$ÿD!ÛD$í°>2ÓD:ÓD·ÈÍá%Ãå$:ÜD·ÉÿD!ÛD –À#ùÉ*&E6 #"(E¯2aD2ÓD¯2$EÉ*€B"&E\!>M!SGÍÿ-2#EÌU.(!%"}%!³%"\%\Í÷$*(E6#"&EÉ!ͧÖ0Øþ 8Öþ ØþÐ))))µoä·ÈÆ@þ@ÄÊ>:ÄÊ æþ ÄÊxþ>.ÌÊíÉÍ-!\Í0.À:ÚD¾wÄ0.À>¾wÄ0.À6ëÍ×-Í not found¯ÉÕåͲ&áÑ<ÉûÿÿÿÝåýååÕÍœáÍ'ýáÝáÉõÍ. Press Íâþ ùñÉå *(Er+síSó{¯2VD<2WD!ÀC"r{ý!NDÍ?Ñ*&EÍ‹3:dD=(!Í£:dD‡G> ÍÊûÍx;ÍÙ/Í/0.(Û!œ.zþ8 2aDæW¯2$EåÕ!9D=Dí¸ÉÍi/ý6ÍSB2aD!$E6*4Dñ{ÍÄ;0œ† A(>(*4D"FD*2D"BDýËFýËÆÚÍ">*BDË3Í">*DDË3&͉7!t{ýËÆÍü;ýˆÉÍ07Ã)AÍ">*(EË3!t{"4DÃÉ?Í>#ó{ÍÄ;8!ò{"4DÃÉ?ý6!TD~îwÉý6![Dòýfýnã*2DÍ“AØÍ">*2DÍ“A"2DýˆýËÆÍ@ýˆÃ=*2DͲAØåÍ">áÝ*LDí[&EÍÄ;ÈÍ">*2Dí[LDÍÄ;(ͲAñí[2D"2Dë:iÖ¸ ͲAå*2DͲAÍŸ7á›Í">*2Då*LD:iÖGÍ“AûõÍŸ7ñá8áí[LDÍÄ;0ØÍ“AÓ*LDí[2DÍÄ;ÈåÍ">áÁÍ">*LD:iÖGÍ“Aû®Í">:iÖOG*LDÍ“Aû"LDA*2DÍ“Aû"2DÍ@Í)AÃ=Í">:iÖGO*LDͲAû"LDA*2DͲAûÔ*LDí[&EÍÄ;(Í)AÍ">*&E"2D"LDÍ@Í=!t{"4DÃÉ?ýËF(Í�7ÃS7ýËƯ2$E> ÍÊÍú8͆7ýË FÀÍM:ØÔCÍAÚT:ÉÍ29*2DLDÍí<:i=Þ;í[r{·È¾(÷7Éõ:SDý¾ 02WDñÉý6 ÉëýËF( *FDÍÄ;8 "FDýËN( *HDÍÄ;8 "HDëÉåÿÿÍ.Aë!ò{·íR(MDkb#í°!ò{6 áÉÍÄ;ØëÉ͆7:h=ý–*4DGýËÆÍ#<ýˆÉÅë*(E+·íRDMëT]8 > í±â®A·ÁÉ7ëÁÉÅMD> ÍÐ;8 ÍÐ;(8¾ ö#ÁÉ`iÁÉåÍ.Aò{ë·íR+MDñ{kb+y°(Õí¸á6 áÉÍ£ÃûáãýËF(åÍÒ:%EÖ2%EÀ*>D"@DÉõÅÕåÍ BáÑÁñÉ*@DÍEBí[>DëíRëÈåÝåýåÍ ýáÝááÈÍâw"@DÉ#m{·ëíRëÀ!Y{ÉåÕí[>D*@D·íRë( ÍEB~">DÍâÑáÉåÕí[>D*@D·íRÑáÉõ{ DÿCÿÿABÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿåÍ=Í">áÍ“A"2D!t{"4DÍÉ?Í@Ã=Í29Í *2DÍ“AÍü;Ã=Í">:®·õÄcñÌAÍ>#í[4DÍsAt{·íRë*2Då7þÿÍú>á6 #6 É*4DÍä;Ø"4DÃÉ?*4DÍÊ;ÐñÍ">*:DÍ×;"2D*á"2DýˆÍ@Í=Í>*4DÍä;8ÙÍ A8öÍä;8Í A0ö#"4D*4DÃÉ?Í>í[4DÕ¯íR0<2q{á+ÍÊ;8+*2DÍ“AØÍ">*2DÍ“A"2DýˆÍ@Í=!t{"4DÍ A8ÒÃÉ?Í A0ËÍÊ;8 :q{· ÅÍ>#žÍ A8ê—*2DͲAÉÍM:Ø:SDõ*4D"JDýˆÍ">*2DåͲA"2DÍ=!ÔC"r{Íí9!ÀC"r{áñ2SD"2DÍ=ýËÆýËFÂ07*4Dí[JDíRØÈëÕÍÍA6 Ñ öÃ07*4Dåͧ?áåò{6 ÍÄ;(#öáÃyA!t{"4DÍÉ?Í´:Í">*2DååÍ“AÑ8 ·íRMDáÂ;ÉáÃ=Í&>*2DÍ“AÚ  ÿ              <>,[].*+-/$:=(){}^#' È8f9f9s9Ì9í9´7�7Â78~8T8S7\7/8A8ž8J77'7|9q7¹Îº´º$»U»Z»Z»7ä6Ž9Û6¶Ýµƒ¶UµÏ4î*Tº}7½Ó12-2á®t{t{t{Y{Y{ ã =++·Íú>:´·( ÍZ:i=Íž;Ã=ÍAÃ=Í>í[4DÍÄ;ë8Å~þ (8Í A8*ÍUAÍ A8%ö*2DͲAØÍ´7Í\7Ã$;*4D *4DÍä;8ã"4DÍUAÍÉ?ÃyAÍUA~þ (øðÍqB†7ÍŽ;0õÆ7ÍŽ;0ûÆ7:WD!i¾7Èý4 ý¾È&oõÍ£ñ*LDG( Í“A0øÍÎ<Íô;¯ÉÍü;¯É#í[(Eå·íRáÉ#ñ{ô+í[&Eí> ÍÐ;È8¾ ÷#É+t{Úþ À~Í¿;Ðö:h=GÃÛ<̓<Í¢<:NDG·(~Í¿;0åÍê;þ (Þñ:h=GýËF(̓<Í¢<åÍ>í[4DÍsAë#"hDëáÍÄ;0+̓<Í¢<í[hDÍÄ;(~Í¿;0¤Íê;þ (�Ím<ß~Í¿;0þ öŒþ 0Æ@õÍ{<ñÃÊ:à·(M>ýËFÈýËF @í[FDÍÄ;87í[HDÍÄ;8!,ýËFÀýËF !í[BDÍÄ;8í[DDÍÄ;(0 :à·ÈýËFÈÃl:à·ÀýËFÈÃ…È:¼·Âš> ÍÊùÉ:´· 2VD:i=o&Í£õ{õ{ísq{*(E#"ß{$$$$"á{* y"y¯go2‘{2’{2”{2¢{2 {2ã{2y2–{2Û{"Ý{"ï{Íqq+"Ty> 2“{>õ2�{>2Ç{*&E"×{"Ù{Ý!×yÝ6*yͤl**E+"w{T]´·íB"s{"u{"{{Í©k!´tí¸ÍÌE:y= ÍxlÍßlý"y¯ÃÅrÍwoÍXn u ÍtFÍýn ÍtFÍõn(øÍPoÍ*o>1!Ívk!×y:y·(€ÍlÍtk:�{Ë(Õ>Í~kýåÍyk!eÍhk>!Í~kýåÍyk>Í~kýåÍyk* yÍlk:yg.>Íyk!ÕÍhkÍ€FÍÞRÝ~þ.ͼr !Õ Ídkáí[yÍ$láÍ!láÑ: {_Ã$l*s{åÍimá"s{É:Ç{õ‡_ÍlåÍYkýååÍykÍ ÃÊ!Í£ÃZ*2DíSFDíSHDÝ!t{ý6~í[BDÍÄ; Ý"FDýËÆí[DDÍÄ; Ý"HDýËÎþ XÝ6 Ý#(eÍ¿;0Ëí[DDÍÄ;0å!ÿÿ"HDáí[BDÍÄ;0!ÿÿ"FD>�2QDÝ6 Ý#ø*4DÍÉ?ýËFýËÆÂ07:WD=ý¾ÐÃ07þ (²ÝwÝ# Í¿;0£Ã&=Íæ=Line too long - CR insertedÍô>!}ÍR9Ã=͆;Íï=ÃóAý6!Í£Íô;!Í£ÃÁ<> !ò{s{¾À+ÍÄ; øÉó{ÍÄ;ÐPYÃsAÍ>#MD*FDÍ>"FD*HDÍ>"HDi`#t{·íRå:QD•O0ÿ*2DÄú>ÁÝ*2D!t{A(%~í[FDÍÄ; Ý"BDí[HDÍÄ; Ý"DDÝw#Ý#ÝÝ+> ÝwÉ**E·íR8&þíBÐ åÍï=áÍà0ÍóA byte(s) leftÍô>ÉÍæ=ERROR: Out of spaceÍô>Ü.þÀÍæ=*** INTERRUPTEDÍô>Ü.Í BÃU.åÅ0zí[k!²{ ~Í~k#ù:y= Íxl¯2ã{Íßl*Ý{å*yå*°{åý"y!"°{!Üÿ9ùë!3y$í°:y= '!²{4y í°ë6#û3yÕÍGrÑÍGr<Ͷr\¯2Û{2Ü{*y"«{ÍÿÍ\mùͨmÍõn(ÚÃ*o*s{åÍWmÍimÍo 8ÍïixÍ\mxþ ÙåÕÅÑÍWmúþ !Wzy Í\m~# øëÍWmͨm'Í"o¯Í\mÍTm*s{åÍWmͨmÍ}Oáí[Z{r(EÕÕë·íRã·íBÒ»>]TÕÍ�>ÑÁáíS(ExÖ 8 GÅ í¸ÁÍBïy°(í¸Ááë*BDÍp?"BD*DDÍp?"DD*LDÍp?"LD*2DÍp?"2D*6DÍp?"6D*:DÍp?":DÉÍÄ;Ø·íBÉå åí[(Eë·íRMDáÑxÖ 8 GÅ í°ÁÍBïy°(í°íS(EŽåí[FDÍsAýËF("FDáýËNÈí[HDÍsA"HDÉt{:h=O·íR}ý–8¹8‘<ý†2ND:h==2RDÃD72RDÉý†2NDý6ÃD7ýËFÈ*LDí[&EÍsAë"LDí[2DÍÄ;ʼ@8Eí[2DÍÄ;( ͲAy·ÌBì"LDý6ýËÆx· :®·(:i=¹8 !Í£ õ Íc úñÈÃ)Aí[2DÍÄ;( Í“Ay·ÌBìx· @:i=_y“W81 ýËFÂå@“0':WD’8!(2WD*LDBÕÍ“AåÍí<áö"LDÑýsÉýqÉ*LD :iÖ_y“O0Í“A y° ø"LDÍ)AýËÆÃ@Í·@:WDo:i½}(=(2WD*LDÍ“A"+sÍXoÍIárÍ*oÍÃáÍvká­*¤{#ýåÑ·íRÂ!l+älÍgSÍXnuÈÍ2oò>ÿ2˜{:�{2ž{Ë_(>ÿ2 {Í~kÍÃÍvkëÃ!lýåÍgSÍXnVu(Í2oñÍ’^Í2kËEÊáÃykÍ6nͼr)ÍXR:W{· :\{þ 0ÍÃrÍ m:\{õÍ`oÍÊ^ÍQkñõ¸Í¼r,Í*Ívk:b{= Í2k&{Í~kÍ2kÑÃáÍyk###fu Í~áõÍwRñÉÍOÍ*oÍÿ ÍXnu ÍÔië¯Ááw+p+r+sÃ*oÁáå6+p+ýåÑ:™{·(ëðÿ ër+sá~·Í¶r+:™{·Í¼rLÍxnÑÍ*oë:�{*yËW(!"ƒ{*{{å*s{"{{åë~6+F+V+^+·(åë#Í!lá:—{·(%V+^+åëÍiR:\{2‡{*b{}2ˆ{ëÍl"‰{ëár+s+üÿüÿåx·(J~�OÅF+~2�{+V+^+åë"Z{ÍiR*s{ãÅÅÍWm~Í\mË~+(÷åÍ\mÍWmÍWmͨmáÁßÃ!lÍ�^2œ{¯2›{ÍjoÅÅ!›{Ë~(Í2kËf(Í2k ÍÌi:œ{¸Í¼r.ÍpkåÍXnbuá "åÍÌi:œ{¸Í¼r.Ñ·íR#ÍlkÍ2k·íR·íB>Ú Í2k·íR>Ê2›{ÍínÁ(:›{Í~kýåÍykÍ@oŽýåÑ(áÍ$l÷:›{ËŸÍ~kÁýåÅÍyk:›{õ:œ{õÍgSñ2œ{ñ2›{Íñn(ÕÍXnuÑ(6ÍYkÁáýåÅÕÍykÍ!lÍXnPuÑ(ÊU:˜{·Í¶rÍÃr)ÍgSÍXnu(Í2oñÁáÍ!lúÉÍ6nͼr(:”{¾Í¼rHëÍWm:•{Í\mÍYkýåÑÍWmÃyk:É{õ:Æ{!É{¾Í¶raÍag:\{þͼr!É{^4!Ì{:]{w*Ê{>"ÍvkÍõn(ËÍXnTuͼr ÍgSñ2É{ÉÍHo>>Í o>( ><Í o>(¯2¦{¯goGÅåÍïi xþ (AÍÃr!¦{~· 6>*Í o ýåá(Í6n ÍXR*X{Í6n( Í6nͼrJ++V+^ëÑÁ Íj>+Í o(¡>-Í o(™:¦Áã¯2�{Í4OáÁ¶AÅ*s{å*ƒ{å*‰{å:‡{õ:ˆ{õ:—{õ!”{4Í€Fñ2—{ñ2ˆ{ñ2‡{á"‰{á"ƒ{íS…{|µ(íR( ÍlkëÍtk! ÍhkáÁÊÕMÍ2kýáÅ#^#Vå++Ë~+(ûÍXR:W{· 7:\{þ8(@þ(9þ8(6þ 0/Í2káÑÁ)ÍUk*X{Ípk*b{ÍlkÍ2kí°¯2W{>2\{!"b{ÍUkÍýeáÁ™Í2kýåÍÞR!”{5:—{·(F*‰{:‡{þ GÍ2kýá>!Ívk!;ÍhkÍ2kýå"þ >!Ívk!-Íhk>*Ívk:ˆ{= Í2k&*ƒ{|µ('í[…{íR(:—{·( :‡{þ>ÙÄ~kÍlkëÍpk!#ÍdkÍ2kÉÍ*oÑá"s{"u{á"{{ëÉ*s{í[{{·íRÈ#^#V~þ(þ éå++Ë~+(û~·Í¼rIáØ*s{åÅ:‘{_ÍWmÍimÍ\mÍWmÍWmͨmÁÍõn(àáÉ*s{åÍ}OáÍwRÍXnDu> #:‘{·Í¼rKÍ6n ~2�{+V+^ëÍÔi"{>ÿ2�{ÉͪOͼr{þ(0 $% }Í~kÍyk>/Í oÊ}VÃPo+F+V+^+ÕV+^+Õ++V+^+ÕV+^+ÕʸWÍHoÅF+~+2W{V+^+HË~+(ûùAåëÍiRÅ:W{· *:\{þ8Íf^ÍFX:\{þ(*þ 8) $Í2kÅÕÍ mÍ+gÍ mÍagÍ?m:i{þħXÍ+mÍQkÁ(Í@o¯áÁ(Í@o‹ÍPoÑáz³(ÍtkëÍpkÑá>ÍÃvk:\{þ(þ8þ0ÍÃr6:½{ËO ËG(>ÿ*¾{"X{ÍmgÍQk>2W{Í`o:\{þÒYÍ mÍ+gÍ%mͧX:d{=(<(Í2kí[Í2k*e{ÍykÍ2kÑ*o{ÍlkÍ2kí°É:\{þ xþ - ! #þ xþ Í2ke.åþ xþ  !— Íhk:\{¸ þ y·È*^{¾ÈþÀ*‹{|µÈí[^{íRÈÍÃr,:\{þ(O¿þ 04ƒþ :ž{Ëo '€#þ0³þ0Ãþ0*`{|µ¿ *m{~þ ³!\{i{Ë0¾ #ôÉÍÃr$¯2�{:�{·À:\{þØþÐÍÃrCÍ—NåÅÍ"o¯2�{Í¿NÁ:�{·(x=ͼrKáÅå:�{!· *b{ë:‘{· :�{· Íl *{å"{áëá++Ë~(û+:�{w+r+s+í[Z{r+s+++Á¸ÉͪOÈÍXn$uͽOÈÍPÈÍèPÈÍ"QÈÍMQÈ͇QÈͧQÈÍòQÈÍÃr$Í6nÀV+^ë"Z{ÍiR¯ÉÍXn*uÀÍoÅÍRÁ*Z{å*`{í[^{·íR#|µÍ¶rbåÍõn(ßÅÍoÍjoÍ}OÁ*Z{"^{*b{ÑÅÍ|rͪrbÁ"b{á"`{>2\{ÅÍ6RÁÚÉÍXn6uÀ:š{õ:‘{õ!’{4~2‘{*{å*�{å!"{"�{¯2š{ÍmP*�{"b{á"�{á"{:‘{2]{ñ2‘{ñ2š{>2\{Ã6RÍÛPÈÍXn¼u(ÍO*{í[�{·íR8"�{Íñn(Ý8ͪOÄOÍjoÍÛPÈ*{åÍÌiÍõn(øÍ"oÍHo:š{õ>ÿ2š{ÍmPñ2š{á"{Íñn(Ñ:š{·ÂPoÍXnuÈÍÃr:š{·ÂoÍXnuÉÍXn3uÀÍjoÍR*`{í[^{|²Í¼r,üÿV+^+ÕV+^íSX{áÍiR¯2W{Í`oÍf^ÍFXÃýeÍîY!qþ !pÍ7Y4åÍQkÍ@oͲ^áÍPoÃhkÍîY!¦Í7YÍîY!”ç!ì!ëåÍîYáÍBYàZÍîYþͶr?!Öþ(!påÍQkÍ@oÍy^ÚÍîYþͼr@!¦Í!ÜY!âYåÍîY:\{þ *^{ÍSR*o{ÍpkáÍîY!èYÍPoÍËY :\{Ö‡_^#VëÃhkqÿp{j±ÍHoÍùYÈÍÃrÍ”g7À:\{þ8 þ0Ímg¯:\{ɯ=É>¯2£{Íýn(ͬZsÍùY8 þʺ[þͼrA!ªÍhkQÍmgͬZͬZÍag:\{þ8þ (þ 8ÍÃrBþ :b{=g.Íyk!�!sþ (!Eþ ( !O:b{= !NÍhkÍõn(µÍPo!¬:£{·Ähk:ž{ËGÈ! Ãhk!œ:ž{Ëw(!Í:£{·(!̯2£{Ãhk>¯2£{Íýn( !œÍhkô[ÍùY8! þÊ¿[þͼrA!»Íhkë[Íña!œÍhkFË=Ë=Ë=Ë;Ë;Ë;}<“o"b{*Z{"^{>2\{Ã6RÍ oÀÍWm*s{åÍœmͨmá"^{>2\{>ÿ2]{!"b{Ã6RÍXn/uÀÍXnBu Í}O:\{þ8þ0ÍÃrD*Z{"^{>!°>!02\{"b{Ã6RÍXn×ÍýnÀ!ÿÿåÍWmÍim:“{Í\mÑÕÍWmͨmáÍõn(áÍPoå!“{~4á2\{íS^{"`{z´!(#"b{Ã6RÍïiÀxõþ ͪr3åÍXnbuͼr ÍÌiÑñõ¸Í¼r,Íorͪr4ñ½ÍòQÈͧQÈͪOͼr:\{þ ÐÍÃrÍWm*s{"Z{!\{~Í\m#ùͨm¯Éi{~+2W{V+^+íSX{V+^ë\{Å~+úÁÉ"y{*s{íKy{·íB È#N#F ~þ í6å++~þ @+~·(;6+å^+V*s{íKw{·íB Ͷr*#N#F ~þ êåÕ++¾(ÑáÞË~+(òÁÁF+Náq+páÃ}R¯2•{2É{ÍYSý"¤{Ídk*s{í[u{·íR0I#N#F/!œÍhkÍ>j !xþ Ý~þ,(þ) !»ÍhkÍ@kë[ÍãaÍÊ^xþ8þ 8ÍÃrBþ Íín AÍ¿^Í*aÍín ÅÍy^Áxþ *Íín ÅÍQkÍy^Á!xþ .Ítkxþ ÍQk!ÿÿÍtkx!«þ(!zþ (!'þ ( !Œþ (!#ÍhkÍõnÊ[ÍPo!ÎÙZ!·!Ý"§{:£{·Í¼r#!¥Íhk*^{ÍSRÍõn ÍmÍagÍ%mͧX*§{ÍhkçÍPoàZ!ò¿!î»åÕÍîYþͼr%ÍQkÍ@oÍagÍQkÍ@oÍy^ÍõnÑá(ÕåÍQkÍag:\{þ :b{= ÍÃrÃgYÍHoÍ�\ÍQkÍ@oÍy^ÍQkÍ@oÍy^!ôÍPoÃhkÍHoͲ^Í@oÍ�\ÍQk:b{=g.åÍ@oÍy^áÍyk!! ÔÍag:\{þÈÍÃr"ÍHoÍ„^Í*aÍín ÅÍy^ÍQkÁxþ (-Íín ÅÍy^ÍQkÁ!xþ (.ÍtkÍQkxþ ( !ÿÿÍtkÍQkÍ@oÅÍ�\:b{=g.ÍykÁ!¿xþ (!¾>¯õÍHoÍy^ÍQkÍõn Íy^Í2kDMÍ2kÑ!ëÍPoÍhkñ ·ÀÍ2ko&É>¯õÍHoÍy^ÍQkÍõn Íy^Í2këÍ2kÁ!ÊÍHoÍ6n(Í6n ++V+^ëÍtkÍagÍPo ÉÍHoÍ6n V+^ëÍiR ýåÍagáͤl*b{ÐÍ·eÍ2kMíhÉÍ2k!9 ÉÍoÍy^ÃoÍHoÍy^ÃPoÍHoÍ„^õÍHoÍ�^íÍýn( !ÂÍtk>2\{ÉÍùYͼrõÍPoñÉJçJ:W{O*X{:\{þ Íg!$þ &:b{=g.Íyk!ã (ë>! (>*å*X{ÍvkáÃhkþ Í2kÙ!Ò ßÍUkéþ(':ž{ËO( *^{í[`{·íR(Ípkë·íR#Ílk!WÍhk Í2këáÍ2ks:b{=ÈÍ2k#rÉ*X{ :b{=>" Í2k}>2ÃvkÍ2kë*ÍykÌ:\{þ 0 þ(õÍmgñ!-þ ( !;þ(Íg!^Ãhk:½{· >**¾{Ívk:b{=ÀÍ2k&ÉÍmgÃc\ÍHoͲ^Í@oÍag:\{þ (þ :b{=> ÍÃrõÍQkÍ@oÍag:\{þ :b{= ÍÃrñ!õþ (·!ô²ÍHoÍy^!ÜåÍQkÍ@oÍy^á.!IÃhkÍHoÍy^!ÍÅ]Í@oÍy^ÍÅ]*^{ÍSR*o{Ítk!æÃBYÍÅ]Í@oÍy^ÍÅ]*^{ÍSR*o{Ítk!{ÃBY!¤!¬åÍË]áÎÍË]ÃQkÍHoÍag:\{þÈÍÃrÍHoÍy^!ÜÃBYÍHoÍagÍQkÍ@oÍag!eÃX]ÍHoÍagÍQkÍ@oÍy^ÍQkÍ@oÍ�^!OÓ]! !!?Ãhk!šø!…ó!lî!cé!ZäÃV!Õ ÃdkÍp^Í2kÁíiÉÍ`oÍy^Í2kùÉÍ mÍÊ^Í+mÉÍ·eÍ`oÍQkÍÊ^xþ ÈÍÃrÍÊ^xþ Èþ ÈÍÃrÍÊ^xþ ÈÍÃrÍÊ^xþ Ðþͼr !— ÃhkÍÊ^xþÈþ ͼr!Í2ke.åÉÍz_ÅÍ2\{!Ät"^{!"`{i"b{ÍDk>!*X{ÃvkÍigÈÍÃr)Í”gÀ:½{*¾{ËO ËG>!(>*ÍvkËG >ÍvkÍ2k¯ÉÍîg("Í6n .ÍXR:W{·>!(>*!½{p*X{"¾{Íh(ûÍi(öÍVi(ñÍ�i¯ÉÍXnÜxÀÍ·e> 2\{!"b{-"^{-"`{Ãåh:É{GøÅX!Ì{~OÍ6nÁ ìåx‡_*Ê{"¾{!½{6áÃ*i:\{þÀÍÂnÀÍmgÍQkÍf^*`{ÍSR:i{¸Í¼r,*k{|· }þ0!·()õÍ2k+ñ=ó< }þý8 õÍ2k#ñ< ö ÍjÍpkÍ2k:ž{ËO(*m{í[k{·íR#Ípk!MÍhk*^{ÍiR*b{|· }=(.= Í2k)$þ Í2k)]T):ž{Ëg Ípk!öÍhkÍìhÍ2kÑ:\{þ ÍõnÊ)hÍo>2½{¯É|· }=(ËE(ÍQkÍ2(##þ(##^#Vz³Í¶r/ë.xþ 0þͼr/!— Íhk ÅÍQkÍz_Ñxþͼr/y·(ºÍ¼r,!PÍhk É≎€Þœ¡“¯´¦ýÃȹ×ÜÍêïáÍ6`ÅÍðx þ ( þ ͼr/Í2k|²gÍ2k}³oÃ}_þ ( þ ͼr/Í2k|ªgÍ2k}«oÃ}_ÍË`ÅÍ 2\{!"b{+"^{-"`{>2½{¯ÉÍïiÈÍÃr)ÍÌixþ ÈÍÃrÍÌixþÈþ ͼr ÉÍjÕÍ>jÑ(ͼrÉÍ,jÈxþ Ùxî€GÙ¯É|/g}/o#¯ÉÿÝ~þ-(þ+ÀÃtoÈxþ (þ ÉÍÃrÍ{jÈÍ6nÀFx+þ 8V+^ë¯Éþ ÅF+N+V+^+~+ngÙÁÉNWzÅ (+~÷ÁÉÝ~þ'(þ^(þ# f!WzÝ~þ^($þ#(6þ' BÝ#Ý~·Í¶r7þ' Ý#Ý~þ' Úw# äÝ#Ý~ͧ·Í¶r7î@Ý#w# ¿Ý#ÅåÍø}áÁͪr8ëy= g:Wzo Ãwoþ$(3Íhr0¯=ÉÝåÑÿa:¡{_Í,j(xþ Í2k}/o|/g#Í2kxî€Gñ2¡{Éxþ 0þ( þÈþÈÍ2kÅÕÃQkzþ xþ ! Íhk þ xþ Í2ke.åxþ Í2kÙþ zþ !£ Íhkzþ (0#þ(þ 8 Í2káÑÁxþ ÍUk! Íhk Í2kÑxºÍ¼r,þ {¹È·ÈyK·ÈÍÃr,þÀ*‹{|µÈí[�{z³ÈíRÈÍÃr,Í^Õ}_Õ9`ÕÍ^Õ}_Õ9`ÕYÍ>j 5:¡{_Íj¯2¡{xþ ÙÅÕå1yÖOÍ~káÍykó ÉþÂtk!NÍhkÃ@kÍ6n ÍWëÍiR*^{"‹{:\{GÉÍ”g \:\{þ0þ(þ ͼf*^{"‹{:\{GþÀÍiR:\{OÉþͼr>Ímg*^{~þ ͼr>*`{~þ ͼr>*b{|·Í¼r>e.Íyk!9ÍhkÉÍÂn E!‚ÍhkÍÙnÈÅÍ�^xÁ O¹Í¼r,ÅÍXnbu!’ ÍQkÍ�^xÁŹͼr,!œÍhkÁÍõn(ËÃoÍýÍhr0ùͧþE(þ. þ.(þ)( ͤͪr9Ù ÆÍøͪr8 »ãÅF#~Í~k#ùÁãÉyÍ~k!Wz È~#Í~k÷>å)>á%>Ã!{Í~kz>Ã>Í >>>!Í~k}Í~k|ÅG:y· ýpý#·(åÕ=(ýåÑ*ηíRͶrÈÍäkÑáÁåÕýåÑ:y·(í[ß{= í[á{:y·(í[æ{*s{7íRͪrcýåÑ*y%%íRͪrbÑáÉ!Û{ËÎËF(ˆÅÍÛlÁ:Ü{_!Wyp<òlÍßl*Ty#"Ty¯2Ü{É*y·íRͪrb"yˆýåÑ:y=( ýååýáÍ]kýáÉÅÕå*ß{:ã{G(#^#Vã·íRã8###í+ëh&))DMT]+í¸#Ñs#r#Ñs#rÁ!ã{4À¯:ã{·ÈÅÕýåG*ß{Å^#V#åëͤláF#åÍäkáF#åÍäkáÁäáÑÁåýá:y=ÀÕÅí[y·íR}æ2Ü{)lægí[Ý{í[Ty·íR(åÍßlá"TyÁÑÉ! !Û{ËÆËNÈËŽ"ÅWyÍGrÁ3yÍGr·È=Èþn ÍÊ^ÃPoÍ#>+õÍÑeñÃ~kÍÀeÍ2k&ÉÍÀeÍ2kl&ÉÍÀeÍ2k}lgÉÍÀe!Œ Ãhk! öÍHoÍÊ^ÍPoxþ(Í ^ ÉÍÀe ÉÍÀe!"‹{ÉÍÑe !åÈÍHo!¤åͲ^ÍPoáñcÍHoͲ^Í@o!³çÍHoͲ^Í@oÍy^Í@oÍQkÍy^ÍPo!lÍhkÉÍHoͲ^Íõn Ͳ^!>ÍhkðÍPoâ!œÍÀe!~ÃhkÍýn!µ Íy^ÍPo!< Ãhk!òöÍÙe!÷eÍËY É!â!Ø!ÝåÍÙeþͼr#áÍhkà!VV!^^åÕÍÙeÑáþͶr?þ(®ë«!>¦!E¡ÈÍÃrúÙd{ÙW{á"Õ{!óÿ9ùë í°*Õ{åÙÉÙd{ÙW{á"Õ{!9 í°ùàÙd{ÙW{!9 í°ÙÉýåÑzÍ\m{å*s{w+"s{áékÝ~ÍSrͪr:ͲnÍšnÝ~þa8þ{0Ö Í\mÝ#Ý~Ídr0é*s{#ËþÃwoÝ~ÍSrͪr:Î*u{í[s{·íRëÍWm*s{"u{É*{{*w{"}{:À{¹(\y2À{*u{í[}{¯íR ¯2Á{=É#^#V~·(ç+~#¹ áÝåÑÅå++F+H˸þa8þ{0Ö ¸ Ëy(èÍdr8áÁ¸"Â{íSÄ{áÁ~2Á{*Â{í[Ä{:Á{¸ÉÍÂmÀ<ãN#^#V#ãëÍ_nÈ+Ë~#(û ~· ï=Éã^#V#ãëÝåÑ~ÍSr8 Í~nÀÍdr8·ÉÍ~nÀÕÝáÃwoÅF#H˸þa8þ{0Ö ¸ Ëy(è¯ÁÉ!õtN È #^#V#åëÍEná ïÍÃr5:‘{Oͽm:Á{·ÈÍÃr+>[Í oÈÝ~þ(ÀÝ~þ.ÀÝ#Ãto>]Í oÈÝ~þ.ÀÝ~þ)Àç>:>;>,>.>(SLINÅ9^DELLINÅ>^DELAÙk]BLOCKREAÄø[BLOCKWRITÅ\RANDOMIZÅe]MOVÅç]FILLCHAÒü]EXIÔC^HALÔI^PORÔO^STACKPTÒZ^FLUSÈ�YEXECUTÅ`YCHAIÎ[YSTÒœ\VAÌ]BDOÓ5eBIOÓeCHÒdORÄócCOPÙBdLENGTÈ#dPOÓ4dCONCAÔcdSUCöcPREĹcUPCASÅdTRUNàcROUNÄ¥cODÄãcABÓScSQÒBcSQRÔgcSIÎlcCOÓqcARCTAÎvcLÎ{cEXЀcINÔ…cFRAÊcRANDOÍŽdPARAMCOUNÔ~dPARAMSTÒƒdLÏÃcHÉÍcSWAÐØcPTÒ dIORESULÔ¦dEOÆ«dEOLÎÁdSEEKEOÆ·dSEEKEOLμdFILESIZÅÜdFILEPOÓÔdKEYPRESSEÄîcMEMAVAIÌödMAXAVAIÌûdPORÔ¡eSTACKPTÒ¬eADDÒXeSIZEOÆeBDOSHÌ5eBDOÓ6eBIOSHÌeBIOÓeMEÍ >)>=>^ݾÀÃtoÍÂnÈÍÃrÍÙnÈÍÃr ÍínÈÍÃrÍñnÈÍÃrÍñnÈ:˜{·(òÍÃr)ÍõnÈÍÃrÍýnÈÍÃrÍoÈÍÃrÍoÈÍÃrÍXnduÈÍÃrÍXnBuÈÍÃrÍq¯2˜{=2À{Ý~·(ïþ (ëþ (çþ((þ{( ¯ÉÝ~þ* ÷ÍqÅÝFÝ~þ$(!Íqxþ*Ý~ ¸ òÝ~þ) ëÍqþ} âÁ§ÅÕåÍqÍqÝ~ͧþI(MþR(GþA(AþU(;þX(5þV (/þB@()þC€(#þW(LþK(þD(þF(RþG(NþP(JÍÃr]áÑÁ€ÍqÝ~þ+( þ-(ͼr]6!�{~©°©wÍqÝ~þ,ÊÓoÎÍqÝ~Íhrͪr]Ö02Ç{ßÍqÝ~Íhr0õÕþ ÍqÝ~ô:y·Í¼r`ÝåÑÍ -ÕÝá\ÕÍGrá<ͶrZy$í°:y=( !Wy"ä{!×y>!*s{í[á{íSä{·íRË<Ë|·Í¶rc}æ€oå)|á"æ{"é{2è{2y!"ë{:�{2Ÿ{:Ç{dSEEKEOLÎÚdFILESIZÅúdFILEPOÓòdKEYPRESSEÄ dMEMAVAIÌeMAXAVAIÌePORÔ¿eSTACKPTÒÊeADDÒveSIZEOÆ�eBDOSHÌSeBDOÓTeBIOSHÌeBIOÓeMEÍÒx^FLUSÈ«YEXECUTÅ~YCHAIÎyYSTÒº\VAÌ"]BDOÓSeBIOÓeCHÒ%dORÄdCOPÙ`dLENGTÈAdPOÓRdCONCAÔ�dSUCÃÔcPREÄ×cUPCASÅ7dTRUNþcROUNÄÃcODÄdABÓqcSQÒ`cSQRÔ…cSIΊcCOÓ�cARCTAΔcLΙcEXОcINÔ£cFRAècRANDOͬdPARAMCOUNÔœdPARAMSTÒ¡dLÏácHÉëcSWAÐöcPTÒ+dIORESULÔÄdEOÆÉdEOLÎßdSEEKEOÆÕdSEEKEOLÎÚdFILESIZÅúdFILEPOÓòdKEYPRESSEÄ dMEMAVAIÌeMAXAVAIÌePORÔ¿eSTACKPTÒÊeADDÒveSIZEOÆ�eBDOSHÌSeBDOÓTeBIOSHÌeBIOÓeMEÍ2È{Ã*pÝ~Ý#·ÀÅÕå:¢{·Í¼r[*×{"Ù{*ë{"í{!×yåÝáåÅÍÕqÁáþ ( þ(þ (þ 8éäw#à2¢{Í`qÍqqÍ`q6áÑÁÉõå*ï{#"ï{}æ(áñÉõåÅÕÝåýå> ÍÊ:y·(>I> ÍÊ> ÍÊ*ï{Í@.Í ·(.Í *** Abort compilationÍà,ͼrÊ Í ÷ýáÝáÑÁáñÉ:y· *×{~þÈ#"×{É*é{í[æ{·íR80í[ä{:è{GÅÕÍGryÍGrÑÁ· !€ëå>íSæ{*ä{~#"é{þ ¯2y:Ÿ{2�{:È{2Ç{œ*ë{#"ë{ÉÝåýåÍýáÝáÉþAØþ[?Ðþ_ÈþaØþ{?ÉÍSrÐþ0Øþ:?É|ª|úzrºÀ}»ÉÉDM!>)Øë)ë0 Ø= ôÉBKë¯go>íjíB0 7?ËË= ðëÉã#ãÐã#ãØ ã#ãÀã#ãÈá+åá~Íqq2y·( Ýåá×yíRí[í{:y· í[&EíRí[Ù{" y:y= 3yÍGrí{q{ååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååÉ ¼tÒEGETNIÄtÒAHCÌtÌAER ÔtÎAELOOBÜtÔXETätÅTYB  ÅURT ÅSLAF ÿ ÔNIXAM ‚!¢ÚI ÉP ÜtÂÔUPTUO ÜtÂÔUPNI Üt¸ÎOC Üt¸ÍRT ÜtºÄBK Üt¼ÔSL Üt¾ØUA ÜtÀÒSU ätÑÎELFUB¼tÄÒTPPAEH¼tÆÒTPRUCER¼t¡ÒTPTSNOC¼t¤ÒTPNINOC¼t§ÒTPTUONOC¼tªÒTPTUOTSL¼t°ÒTPNIXUA¼t­ÒTPTUOXUA¼t¶ÒTPNIRSU¼t³ÒTPTUORSU¼tÚÒTPRORRE ÔtÝËAERBCÿ€ ÿ   °ÿ  ufu�u× are not allowed  can not be  constant  does not  expression  identifier  file  here Integer File Illegal  or Undefined  match  real String Textfile  out of range  variable  overflow  expected  type Invalid  pointer 01';' 02':' 03',' 04'(' 05')' 06'=' 07':=' 08'[' 09']' 10'.' 11'..' 12BEGIN 13DO 14END 15OF 17THEN 18TO DOWNTO 20Boolean 21  22  23  24  25  26  27  28Pointer 29Record 30SimpleuæuÿuvÿPROGRAÍENÄFORWARÄEXTERNAÌPACKEÄARRAÙFILÅSEÔRECORÄSTRINÇOÆABSOLUTÅTHEÎELSÅDÏUNTIÌNOÔNIÌ.®:½LABEÌCONSÔTYPÅVAÒBEGIÎOVERLAÙPROCEDURÅFUNCTIOÎBEGIÎYSIÆÑSWHILÅTREPEAÔ.TFOÒMTCASÅUGOTÏVWITÈ0VINLINÅzVTÏ#DOWNTÏ+ª¯ANÄDIÖMOÄSHÌSHÒ«­OÒXOÒ½<¾>½<½¾ ¼(IÎÿWRITELÎÉZWRITÅÊZREADLÎZREAÄZDELETÅH\INSERÔi\ASSIGÎ%YRESEÔ›YREWRITÅ YCLOSŽYERASÅSYRENAMÅHYSEEËnYGETMEÍv]NE×�]FREEMEÍ–]DISPOSÅ¡]MAR˶]RELEASÅ»]OVRDRIVÅÛ]CRTINIÔ^CRTEXIÔ^GOTOXÙO]CLRSCÒ$^CLREOÌ*^NORMVIDEÏ/^HIGHVIDEÏ/^LOWVIDEÏ4^IN 31Simple 32 33 34 35 36Type 37Untyped 40 label 41Unknown syntax error 42 in preceding definitions 43Duplicate label 44Type mismatch 45 46 and CASE selector 47Operand(s) operator 48 result 49  length 50 length 51 subrange base 52Lower bound > upper bound 53Reserved word 54 assignment 55 exceeds line 56Error in integer 57Error in 58 character in 60s 61 s ands 62Structureds 63s 64s and untypeds 65UntypedsÖ É &),HV]agqty€„�”¾ÊÑÔÚàçì Egmv"& ¢¤²´¶ÿÿÃá^#V#å{²È*ëN#Fë ër+sæÕ!€6#6Íq“(6 #þ( Í{“w#ò6x2€ÑÍq“(#Í’ÕQ“!\í°ÑÍq“(Í’a“!\í°\!Q“ í°É þÈþ ÀöþaØþ{ÐÖ É 66I/O 67 s must be parameters 68 componentss 69dering of fields 70Set base 71 GOTO 72Label not within current block 73 FORWARD procedure(s) 74INLINE error 75 use of ABSOLUTE 90 not found 91Unexpected end of source 97Too many nested WITH's 98Memory 99Compilerd WITH's 98Memory 99CompilerååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååÃâ Í«Copyright (C) 1985 BORLAND Inc¡BNo Terminal selectedP~·7È#õå~Íèáñ=ÈóÍ ÉoåͦÉþ€ÜkÔ„æîå!îå!è"áãõÅÕ~#·(åÍèáôÑÁñãÉ}´È:$‡‡‡ããããÅÒÁ= ô+èÍÐØ*ÎßõÅÕå!¨Í5!¢ÍÐ*ºÔáÑÁñÉõÅÕå!´éõÅÕå!®àõ:à·(ÅÕå¯2à!ÈÍ5áÑÁñÉõ:àþÿ(öÅÕå>ÿ2à!ÂãõÅÕå!¼ÚõÅÕååð!‹í°Ñ:žO:œ‚ÕÍÜÑ:ŸO:�ƒÍÜ!ðÍÐ* ÍáÑÁñÉ!ð ë!›45(É! +/ –0ü†õyþ0(Ã’!C"*ã í°*¹#s#r####g#s#rÍ7!}ð!í°*œÿù!åÃyþ 0&!¡ ~#fo„(:z· <2zå!fãéå!z6áÉÃ4!6"Š>2{ÍG:|·2{xÈÍ4Ã!”à� ÍÉ ^C$¹qqq�q1:à2_Í :ß_Íð:ÍÖ@Í. 'Í. !<Í. ž ÍÿÍþ õ ͶÍ7*á"ë!ã í°*o"!í[ìíKîí°ÃÒÕÍ<ÑÉ€!€ëÕÍðÍÑ·(é Í Í€ÃÍéþÀ:{·>È> 2|ÉTURBO COM TURBO.COM not found. Re-insert disk in drive X: and hit RETURN$ñíÉ d!kÃ5!{Ã5Í_æÍ_o&Éô  áÁå:Ý·(ÕÅÍ |µ(Íáþ ÍáþÊÔ ÁÑ*é"Òx2Ýy·( >Ã28!û"9!¥ í°!½¸ í°¯og2Ð"Ô"Ö>~2Ñ2àÉÃà Ã9Ã/Ã4Ã*Ã9à Á‚CÄÅÁÅÕåÝåýåõo&åͦñýáÝááÑÁÉÅÕåÝåýåÍ£}ëÿ í[Òþ (ú!eÍ{ͦþA8þQ0Gþ: xÖ@¯!\w# (Í‚ þ?(þ*( þ.( ÍwÍ^þ. Í^!h6#ûÉ (þ?( þ*( Í‚( w#éÉ>?> w#üÉͦþ 8 åÅ!˜í±ÁáÉ¿É .,;:=?*[]<>{}þaØþ{ÐÖ É|Í´}õͽñæÆ�'Î@'Ãɯ7Ë|À|·}È>ÿÉ2ØÅͯÁ*·íBÚ¨ ëÑùü "Ưog"Î2Ü>Ã2Ù!Þ Ãá"/‘á"ï‘á"ñ‘á"’ñÆ@2Бáó‘!í°Ñ1Íõ’Í2ã‘ ÿÍ2â‘*"ä‘*"r�íKñ‘·íBåë*ï‘í°áïý"ùë!�í°ÍÛ’ &),HV]agqty€„�”¾ÊÑÔÚàçì Egmv"& ¢¤²´¶ÿÿÃá^#V#å{²È*ëN#Fë ër+sæÕ!€6#6Íq“(6 #þ( Í{“w#ò6x2€ÑÍq“(#Í’ÕQ“!\í°ÑÍq“(Í’a“!\í°\!Q“ í°É þÈþ ÀöþaØþ{ÐÖ É"Úë"Ìéå*Æ·íB"Æí[Ä·íRëáÚuí°É*Æí°"ÆÙÉ^#V#Õ^#V#N#FáÉÝáëO/o&ÿ9ùëí°ÝéÑO/o&ÿ9ùëí°éÝáë!àÿ9ùëÅ(¯üí°Á> �‘(G¯üÝéÝá!àÿ9ù ¯w#üÝéÝáEͺ¶wÝéÝáÑ}“8÷�Ã' ·íR·íB0 É>‘Ã' ·íRëêqðøÉÕë·íRëáë·íR!È+ÉÍß õͰ ð·íR!À+ÉÍß õͰ ðÍr!Ð+ÉÍß õͰ ðÍr!ÈØ+ÉÍß ôͰ ïÍr!ÈØ#ÉÍß ôͰ ïÍr!Ø+ÉÍß õͰ ðT]KBë!z·> Á‘ �€!¢ÚI}袋.º}Žã8Žc~I’$I’~ÍÌÌÌL«ªªªªÝ! >ÅÕåõͬÍ— ñÍIÙáÑÁ× õÙÍnõÙÅÕåÍnÍ ÙáÑÁÙÍ— ñ= éÙ͆à ÝÝnÝfÝ^ÝVÝNÝFÉ!�DLT\ÉI¢Ú!‚!É53ó!�úÉr1÷!€ÒÉÅÕåÙáÑÁÉÍ’!€> Ëx Ë#ËËË-= ðo˸ÉËxÙ͆(Ëø-Í ·Ë}(ËxËø>�½8(Íz ,óÍz `iÈÃ!É>’Ã' |µÊr Ë|Í€>�)=Ë|(úDMboÀ˸ÉÍÈë8þ8ÍÈÙËxÙ(’0¯þ 8> ÕÍ€ÑËx(>-ÍåË{(aËy(ÍãÍÙ ò�z·(>.Íå (Íã ÷ú±ÍÙ÷Ë{È>EÍå>+Ë|(|íDg>-Íå|/Ö 0ûÆ:ÝpÝ# ý~ý#· ý+>0ÝwÝ#Éýå,-  ý60ý#ø¯Ã}ÅS>)ë)ë0 = öÉ|µÊ |ªõÍ€ëÍ€ëDM¯go>íjíB0 7?ËË= ðëñðHåÍ’Ë<ËÑëÍëËzÈ5ÍaÈ)ýÉÍaÈË<ËúÉëz· {þ0G·É¯goÉë|ª|ú~ºÀ}»ÉÉË|È|/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áÍÝ _áå}“8(º8J`9{‚T]=o`9yí¸ë ¯„•.(Íz Ë= øý~õ> xæÆ0ýwý#xæGÅÕåË%͇ Ë%͇ ëãÑãíZëáãíJDMáË%͇ = ÈñÁýáÉýåá_~6þ5Øúœ+~¨¥Ôh¶¿ÉìÅëx-ÐÍÎÂSÞùx9?ë+¨­ÅøÉ{Η@}·ÈËøÅÕ|Íz Íz „gãíZëáãíJDMá0Í{ ,7È}Æo˸ÉÍ?¾ #øyîO!@9ùi&Ýé“8 (‘8õ~‘wPT] ñÃ) Í Ð>Ã' Í� õͬÍ— íÙ}·Ù>Ê' Íõ ßÙËxÙˆ Ù}·ÙÈÙÅÕåÙ}· Ù˸TÅËø¯ÙËø}Ù•(0íD=ÙÍz ,= ù(Ùñæ€ Í’ 0%Í{ ·, 7 ÍÆ ?õ(8Ùͬ Ëx ͆ - öÍr ñ8˸·ÙáÑÁÙÉÙËxÙ Í� Í Ø,-Èxî€GÉÙ}·ÙÊr }·ÈÙ…ÙÍM ÅÕåÝ9Ír Ù.Ù>Ý#ÝnË0Í’ Í{ = ñÙ-Ù åÝnûËx ͇ ,-(-ñññ·ñÙÁáÙÝá˸°G,-Ìr É}·ÈÙ•Ù?ÍM åÍ? ë¶¾ â#÷ÚÍ?¶w#ùëùÝéÍ?/¦w#øïÍ?¦w#ùãýáÝá!9ë! E9ýéÝá!!9~·(¯+Fͺ¦!"9ù!(#Ýé>¯2èýá*ÒÍâ¯á"âýå|· >"2ÐÉ:è·( Ͷ *âwÉÍò*â6 ë!\$í°É!æÅåí[Òþ (úͦ–( áÁã·É#ëÁÁþ:À~ÉCONÁTRMÁKBD‚LSTCAUXÄUSRÅ>¯2èÍi:зÀ*âË®~æÀÍ0:зÀ*â:è·€€(@q##pÉÍZ*â ë:è·( ÕÍÑñÅÍÁ<Àx2ÐÉ*â6#ûÉ"â~æÀËv( >ÍÆÍ Ë~È*âå ëÍá< >ÿ2Ð6Éã"äãå!Â"âáÉã"äã"âË~À>2ÐÉã"äã"âËvÀ>2ÐÉ>¯ã"äãå!Â"âË®õÍèñ·(ÍááÉ!Ñ~þ8>~O6~*Ò"ÔÍååÝ9Ù.Ù>ÍÆ 8ͬ ?Ë= ÝuÝ+Ù-Ù(>͆ 0ßͬ ·á͆ 8ÍÆ ?áÑÁËx ͇ š, —7•8Æ€8Æ€8oÝãÙåÅxËøÙ¨æ€õËøÝåÝ!ÉáØ¯oGOW_gÉ·ËËËËËÉ·ËËËËËÉ|Ù„Ùg{Ù‹Ù_zÙŠÙWyÙ‰ÙOxÙˆÙGÉ|Ù”Ùg{Ù›Ù_zÙšÙWyÙ™ÙOxÙ˜ÙGÉxÙ¸ÙÀyÙ¹ÙÀzÙºÙÀ{Ù»ÙÀ|Ù¼ÙÉÙxÙ¨òé xÉËx(Íó È?É}Ù½ÙÀ·ÈÃÆ }Ö�Úr <þ(ÐÙÅÕåÍr 7Í{ = ùÙ|Ù¤Ùg{Ù£Ù_zÙ¢ÙWyÙ¡ÙOxÙ ÙGÃ{ ÙÅÕåÙͬÙÍý ÙÍ� ë}·ÈËx>Â' ͬ}Æ€Ë/Æ€oÖõÙÅÕåÍõ Í -ÅÕåÍ� }áÑÁÙáÑÁã¼ã0ãñÙÉÙÍŽ-Í� ÙÍŽ,Ù}þlØÅ˸Íß Á8 Íõ Í4 Í— Ëx(Í Ù-ÙÍß õ8Í� Ù-ÙÍß 8Ù,Í� }þl8;Ùª*ªª!ªÍ— ÝåÝ! >Í4ÝáͬÍ— Í— ÅÕåÙͬ--Ù-Í ÙáÑÁÙÍ�áwþ(6þ(2þ(-þ()þ(6þ (8þ 0þ Ù:Ý·(ÓÝ*äà yº(È~#ÍÉÀúý+Í (±ï(« 6Íá6 #6 #"ÖÉ*â:з y~Ëo pæ .##~·ò—åͺá(å.6á¯w4Æ._~þ =*â##55= *Ôí[Ö·íR8ÿÍê*Ô~#"Ô= Í£}== ͯ}͵}*âËî#w+É#~+É>Éå*â~æþ('Íkþ!0þ(Ë®ñ]ÅÕÍkÑÁþ!8Ë®ï¯áÉÝ!]Ý~·Èþ-ÀÝ#É8Ý~·È>2Ð7ÉåÍkË®áwÉ>¯OÅÍðÁÍ$ÈÅåÍ÷ÑÁÍ6Ø̃ës #rëÉÍðÍ$ÈÅåÍ£ÙáÁÍ6ØÙÌ� ÙÃÑåëÅÕÍkÑÁþ ( þ(Ë® êáqÉÍkþ(Ë®þ ( þ ïÍkþ Ë®É*âO:зÀ~æ ##å~Æ._qá4ð(þ(áÅå=ʦ==Ê©=ʬò*è ,,ñ,-ÈØxî€GÉgª?+2×n¶*ï8t Ð Ðzˆˆˆˆ~«ªªªª,->Ê' ËxÂ' Ù͘Ù}.�•õÍõ Ù͆ÙÍ� ÅÕåÙ,Í ÙáÑÁÍõ ÝåÝ!Œ >Í4Ýá,ÙÍ¢-ÙÍ ñÅÕåo&0%ÍÙ,Í— ÙáÑÁÍ }þgÚr É}Š�؉}颋.:}Žã8Žc~I’$I~ÍÌÌÌL«ªªª*ÙÍ¢Ù·Ëxõ˸Íõ }þˆ0GÅÕå,ÍÐåË<Ë}áõÍ,-(-ÙñáÑÁõÍ� ÝåÝ!>ÍIÝáñ0 õÙ͘ÙÍ— ñ…o8 ñÈÙ͆Ãõ á>Ã' m.`1pF,þåt6|‰„!wS<ÿÃ.zÒ}[•|%¸FXc~üïýu€Ò÷r1}·ÈÝåÙ͆Ù¯Ëx(<˸õÍß 8ÙÍõ ñËÿõÙÏŽé!~JÙÍß 0Í.OÝ!Î>ÙÝÍsÙÍß 8 = ìÙ ÝÙÙÍnËøÍ ÅÕåÍsÍ— Ù͆Í ÙáÑÁÍõ ÝåÍ.ÝáÙÍnÍ ñ0 õÙÍŽ-Í� ñÝáËOÈËøÉçÏÌTöô¢0 jÁ‘ €µžŠoD€‚,:Í€j:ê¾È4^qÉ*â##~·È6ͺÈ>ð2ÐÉ}ÃÆÁÑÅÝ*ÒË|(̓ëëË|( ̓Ý6-Ý#ÕÍÆáÍÈí[ÒÝåá·íRMë‘8( Gå> ÅÍÆÁ÷áAÈ~ÅåÍÆáÁ#óÁÑÙáÑÁÙÅÝ*ÒÕÍ'¾ÁÑÅÍÈËC!¡ ¿!¥¸TRUEFALSEÍÈ!9N#ÍYÑùÕÉá~#·( G~ÅåÍÆáÁ#õé> ÍÆ> ÃÆ   "âË~(ÕÍkÑ»(þ( þ!0 (Ë®è!É!É>¯2èíSæÍz:зÀÍ0:зÀ*â6Ð##ww#w$w#wÖÿ:è· å¯Í á##N#F*æ·íBÈ>�2ÐÉå¯w#w#í[æs#rá>à "â~æÀÈÍ®*â-¯w#wÔÿw##>Í Í®Ã�ã"äã"â~æÀÀ>2ÐÉ:зÀåÍZë·íRá0¯Í *â4À#4É>™2ÐÉ:зÀåÍZ·íR> *â4 #4(>áÍ COMÍ="| *| ÉÍD"z *z É!‚ÅÕåÍ !å!ÑÍVÍÙáÑÁÍú Ù!t ÍÑ!t Í,ÉÉýáá"r ýå*r éÉýáá"p ýå!å*p Í:Í£ÑÍfz³Ê�!Õ"n *p å*n Ñå*p å*n Ñn&Íäëás*n #ÑÃo!ÉýáP! ÍâýåÍñå!ÑÍËEʺ!Í›ÍÍÍ›ͺ*** FATAL ERROR: ! Í:!ͪÍÍÃÔ Éýáá" á" ýå* å* ÑÍàËEÊ"* " Ã"* " * Éýáá" á" ýå* å* ÑÍÌËEÊ?"* " ÃE"* " * Éýáá"  á" ýåÍ!ÅÕå*  ÍÙáÑÁÍÖËEÊ�"* å*  Íå!}2 Ãˆ"!}2 * &Éýáá"  ýå*  Í:Í£å!ÑÍÌå*  å!Ñn&å! ÑÍÑ}£oËEÊÖ"*  å!å!ÍóÖ"*  å*  Í:Í£Ñn&å! ÑÍËEÊ#*  å!Ñå*Èá>ò2ÐÉ2éë*âËf(/˦:éËG(##~++· :éËO x· y·úCÅÕ!ͺÑÁ Q*â:éËG(Ëî##~Æ.Õ_ÑÖ.Íší âf<ò\=<Íš*â##æw ÅÕåÍ®áÑÁ Õ+Ñ4 #4x±Â ëÉ>™>ð2ÐÉõ:éËG(ëñÉ"âÍ®Èæ"*âËæËnÈË®*âåÅ0ëÍÁá ëÍ·ÉÁÑíSâÅåÍZÑ·íR8@*â N#F#s#rÍ, 0}æ)ëíjëS\*â##w+ N#Fë·íB ÈÕåÍ®Ñár+sÉ>‘2ÐÉÕÙáÙ!T]>)ëíjëÙ)Ù0 0= ïÉÍ]·íR!À#ÉÍ]ëÉ*â^#V#ÕN#F#^#VáÉ>¯2èͰ:зÀÍ0:зÀ*â6Àå ë#Íá-¯Nw#FwÖÿq#p#6€#w#w#wÉ"â~æÀÈÃ�>">!DM!ð"æÝáÑáÝåÅÍýÁ:зÀ*ðíBÈ:éþ!>™(>ð2ÐÉ>">!"æÝáÁÑáÝå2é  å!Ñn&+ëásÃÖ"ÉÃ/+ýáá"6Ÿá"8Ÿýå!;Ÿå*6Ÿå*èŸÑÍõÍoÍ !;Ÿå*8Ÿå*èŸÍºÍ Éýáá"2Ÿá"4Ÿýå!;Ÿå*2Ÿå*èŸÑÍõÍoÍ !;Ÿå*4Ÿå*èŸÍ¾Í Éýáá"/Ÿýå*/Ÿå*êŸÑÍ"-Ÿ*-Ÿå!ÔŸå!)Ñ^#VëÑÍå*-Ÿå!ÔŸå!)Ñ^#VëÑÍÑ}³oå*-Ÿå!ÔŸå!)Ñ^#VëÑÍÑ}³o}21Ÿ*1Ÿ&Éýáá")Ÿá"+Ÿýå*+Ÿå*êŸÑÍ"'Ÿ!}2&Ÿ!ÔŸå*&Ÿ&)Ñ^#Vëå*'ŸÑÍ’ËEÊ8$*&Ÿ&å!Ñ}2&ŸÃ $!ÚŸå*&Ÿ&)Ñ^#Vëå*+Ÿå*êŸÑÍEå*øŸÑÍõÑë*)Ÿs#rÉýáá" Ÿá""Ÿá"$Ÿýå*$ŸåÍ|#}îoËEÊz%*$Ÿå*êŸÑÍ"Ÿ!}2Ÿ*"Ÿå*êŸÑÍ"Ÿ* Ÿå*êŸÑÍ"Ÿ!ÔŸå*Ÿ&)Ñ^#Vëå*ŸÑÍå!ÔŸå*Ÿ&)Ñ^#Vëå*ŸÑÍÑ}³oËEÊ%*Ÿ&å!Ñ}2Ÿ"â~æÀʰ*æ¯w#wx±(9ÅÕÍ*â ë:éOÍÑÁ· Õ*â-4 #4Ñ!€ë*æ4 #4 Ã*â-N#FÚÿq#püÿV+^ë·íBÐëq#pÉÁÑíSâÅåÍZÑ·íRÚ&*â s#r$ s#rÉÍLÀ ëÍ<À?ýá*ÒÍâ¯áýåÍLÀåÍòáåë!\ í°á åëÍÑ<( !\$í°É>2ÐÉ>¯2èÍLÀ:Ø·>!(ë*â \$í°\Í<(Ï!3°í°:è· í[1ðÕÍ\ÍÑ!€ë·(é7"â~æÈ> 2ÐÉ"æíSèëá"âNs#Frë·íB(Zë#\:Ü í°¯üå\ÍÑ<(?*æ"}íKèÅÕÍ\!ÍÑÁ· !*}#"}!€ë x± Û\Í*â éÝ*â>ðÃ) ÍÈþÐ2ÜÉ"ðëáã"ò{æü_!Þ"øÝ*ÞÝ÷$!ÑŸå*Ÿ&Ñn&ËEÊ;%!ÚŸå*Ÿ&)Ñ^#Vëå!ÔŸå*Ÿ&)Ñ^#VëåÍ#!ÚŸå*Ÿ&)Ñ^#Vëå*ŸåÍI#!ÔŸå*Ÿ&)Ñå*Ÿëás#r!ÑŸå*Ÿ&Ñå!ëásÉýáá"Ÿá"Ÿýå*Ÿå*êŸÑÍ"Ÿ!}2Ÿ!ÔŸå*Ÿ&)Ñ^#Vëå*ŸÑÍ’ËEÊË%*Ÿ&å!Ñ}2ŸÃœ%*Ÿå*êŸÑÍ"Ÿ!}2 Ÿ!ÔŸå* Ÿ&)Ñ^#Vëå*ŸÑÍ’ËEÊ&* Ÿ&å!Ñ}2 ŸÃà%*Ÿå*êŸÑÍE"Ÿ*Ÿå*êŸÑÍE"Ÿ!ÚŸå*Ÿ&)Ñ^#Vëå*Ÿå*øŸÑÍõÑ" Ÿ!ÚŸå* Ÿ&)Ñ^#Vëå*Ÿå*øŸÑÍõÑ" Ÿ* Ÿå*sŸå*øŸÍd* Ÿå* Ÿå*øŸÍd*sŸå* Ÿå*øŸÍd!ÑŸå*Ÿ&Ñå!ëás!ÑŸå* Ÿ&Ñå!ëásÉýáá"Ÿá"Ÿýå*Ÿå*ðŸå*øŸÍd*Ÿå*îŸå*øŸÍd*ôŸåÍG!*  &}2Ÿ*Ÿ&É*ìŸå!nÝf}´(HíR0ÝnÝfåÝ"øÝáã Ý^ÝVÝåMDÝnÝfÝåÝÝuÝtÝqÝpÝåÑ*øs#rÑ*òs#rÉÝåá"Ä*ð ÝåÁ ÚuíKÆíB!Ú0>ÿÃ' ëáã~#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#ûÉÍK*ôÉÍK*öÉ!"ô"öÝ*ÞÝNÝFy°(*ô "ô*ö·íB0íCöÝnÝfåÝáØ*Æûÿ í[Ä·íRØë*ô"ô*ö·íRÐíSöÉí[Äs#rÉ^#Vë"Ä"Þ6#ûÉ>¯O"è¯w2Ðx2ê*â"í!F"âá"äá Í&Íy*í"â*äé>¯2ì"è*â"íÑÍÌËEÊD'!©Ÿå!+)Ñå!ëás#r!�Ÿå!+)Ñå*ìŸå!Ñë·íRëás#r!"ŸÃJ'!"Ÿ*Ÿå!ÑÍÌËEÊ )!©Ÿå*Ÿ+)Ñ^#Vë"}Ÿ!�Ÿå*Ÿ+)Ñ^#Vë"{Ÿ*Ÿå!Ñë·íR"Ÿ*}Ÿ"yŸ*{Ÿ"wŸ*yŸå*wŸÑå!ÑÍ"Ÿ*Ÿå*yŸå*wŸåÍf$*Ÿå!mŸåÍè#*mŸå*uŸå*øŸÍd*yŸå*wŸå*ŸåÍf$*yŸå!qŸåÍè#*qŸå*uŸåͼ&ËEÊ((*yŸå!Ñ"yŸ*yŸå*wŸå*ŸåÍf$*yŸå!qŸåÍè#Ãï'*wŸå*yŸå*ŸåÍf$*wŸå!oŸåÍè#*uŸå*oŸåͼ&ËEÊ~(*wŸå!Ñë·íR"wŸ*wŸå*yŸå*ŸåÍf$*wŸå!oŸåÍè#ÃB(*yŸå*wŸÑ͸ËEÊÄ(*yŸå*wŸÑÍ’ËEÊ©(*yŸå*wŸåÍ{%*yŸå!Ñ"yŸ*wŸå!Ñë·íR"wŸ*yŸå*wŸÑÍÌËEÊÕ'*wŸå*}ŸÑë·íRå*{Ÿå*yŸÑë·íRÑÍàËEÊC)*yŸå*{ŸÑÍà!F"âá"äá"ê!\Íâ¯*ê:ì· ÍNÍr!Ð~6·go(Ýåá\íRë*ès#r£Æí_2ËÉëÝáÁáx±( s x±(T]í°ÝéDMÝáÑáx±(ôíR0í ë ëí¸ÝéU(Í�ÝáO/o&ÿ9ùq#ë (í°Ýé!€>F¸0#( ~þ (þ #ï]( ~þ (þ (#ï}“(  Õi&TÉÑÁÕ-a%â}ͦoÉ*é!Ð~6o&ÉÍ|µÈ:Ýõ¯2ÝÍ ñ2Ý}þÀÝá:зÈÝá_Ýá_ÕÍzѯ2Ý*Î|µÝåáíKÌíB "η ÕÕåÍÙÑz· Í^C User break+= Í I/OÍ Run-timeÍ error {Í´Í, PC=*ÎͯÍNot enough memoryÍ Program aborted :Ø·ÊŽ'ÃáÑÑé1!€ Íd!Ÿc$ˆ¡>ÍÔÃ,cËEÊ:)*Ÿå!Ñ"Ÿ!©Ÿå*Ÿ+)Ñå*yŸëás#r!�Ÿå*Ÿ+)Ñå*{Ÿëás#r*wŸ"{ŸÃ�)*}Ÿå*wŸÑÍàËEʇ)*Ÿå!Ñ"Ÿ!©Ÿå*Ÿ+)Ñå*}Ÿëás#r!�Ÿå*Ÿ+)Ñå*wŸëás#r*yŸ"}Ÿ*}Ÿå*{ŸÑÍ¥ËEÊ�'ÃJ'É*âŸå!ÑÍå*äŸå!ÑÍ¥Ñ}£oËEÊS**äŸå!ÑÍËEÊ*!;ŸåÍM $$$SOWRK.$$$Íp!;ŸÍoÍ !}2:Ÿ!å!åÍ#!å!åÍ#!ÚŸå!)Ñ^#Vëå!ÔŸå!)Ñ^#VëåÍ#!ÔŸå!)Ñå!ÔŸå!)Ñ^#Vëå!Ñëás#r*äŸå!ÑÍÌËEÊl*!"ŸÃr**äŸ"Ÿ!ÚŸå*Ÿ)Ñ^#Vëå*âŸå*øŸÑÍõÑ"þž*ðŸå*þžå*øŸÍd*ìŸå!Ñ"ìŸ*âŸå!Ñ"âŸ*âŸå*êŸÑÍËEÊÙ*!"âŸ*äŸå!Ñ"äŸÉ*kŸå*ìŸå!Ñë·íRå*êŸ}/o|/g#åÍf$*kŸå!üžáá"Ä�á"Æ�ýå*Æ�Íæ}îoËEÊQ3*Æ�Í©*Ä�ÿÍŽÍ«*Ä�Í:! e.å*Ä�Í:Ͳ#å!ÿÍkÿ*Ä�ÍâÉç3*¹œ#"¹œ*¹œå!€ÑÍËEÊ‘3*»œ#"»œ!"¹œ*Á�å*»œÍo*Á�å!9œå!;!9œå*¹œÑn&}25›*5›&Éýáá"½œá"¿œÿ!ÁœÍâá"Á�ýå!}28œ!ÿÿ"»œ!"¹œ!8›å!Ñå!Áœå!Ñn&ëás!å!8›Í:Í£ÑÍfz³Ê4Õ"6›!8›å*6›ÑåÍU3ëás*6›#ÑÃü3!8›Í:!ÁœÍ:Í�ËEÊ<4!}28œÃz4!8›å!å!Íó!8›å!Ñå!8›å!Ñn&#ëás!8›å!8›Í:Í£ÑåÍU3ëás*Á�ÍIå*8œ&Ñ}³oËEÊ4*8œ&}2Ã�*»œå!€ÑÍõå*¹œÑå!ÁœÍ:Í£Ñë·íRå!€ÑÍë*¿œs#r*¹œå!Ñå!ÁœÍ:Í£Ñë·íRå!€Ñå!€ÑÍEë*½œs#r*Ã�&Éýáá}24åÍè#*üžå*ðŸå*øŸÍd*kŸå!Ñ"kŸÉ*kŸå*ìŸÑÍ¥}2 Éýáá"îŸá"ðŸá"òŸá"ôŸá"öŸá"øŸáÑÁÙ!úŸÍÑýå!¡)" !Ú*" !+" !"àŸ!úŸÍ,ÅÕå*øŸÍÙáÑÁÍò ÅÕå*øŸÍÙáÑÁÍò Ù!úŸÍÑ!úŸÍ,ÅÕå!ÍÙáÑÁÍÿ ÅÕå!‚ÅÕå!ÿÍÙáÑÁÍú ÙáÑÁÍÖËEÊø+!ƒ@ÅÕå!ÿÍÙáÑÁÍú Ù!úŸÍÑ!úŸÍ,ÅÕå!€ÍÙáÑÁÍÿ ÍÞå!ÑÍ"èŸ*èŸå!ÑÍÌËEÊB,!å*èŸå!ÑÍÑÍõ"èŸ*èŸå!€ÑÍõ"æŸ*æŸå*øŸÑÍ"êŸ*êŸå!Ñ͸ËEÊw,!" ÃÚ-!ÚŸå!)Ñå*æŸåÍI"ËEÊ”,!"àŸ!ÚŸå!)Ñå*æŸåÍI"ËEÊ·,*àŸå!Ñ"àŸ!ÚŸå!)Ñå*æŸåÍI"ËEÊÚ,*àŸå!Ñ"àŸ!sŸå*øŸåÍI"ËEÊö,*àŸå!Ñ"àŸ!uŸå*øŸåÍIšýå*4š&å!€ÑÍE ·íR·íBÚR5  ·íR·íBÚR5  ·íR·íBÚR5 ·íR·íBÒx5ÍMCtrl-*4š&å!@Ñe.åÍ=!šÍâà 6  ·íR–5ÍM!šÍâà 6 ·íR³5ÍM!šÍâà 6·íRÂÑ5ÍM!šÍâà 6 ·íRÂñ5ÍM!šÍâà 6·íRÂ6ÍM!šÍâà 6*4š&e.å!šÍâ*4š&å!ÑÍÌËEÊM6!šÍ:ÍM(+128)Í=!šÍâ!šÍ:ÿ!5šÍâýá!5šÍ:ýåÉÃð8*šÍ:Í£å*šÑÍ¥ËEÊ•6!}2ø™Í›!Í"Í Ü6!}2ø™*ø™&ÉÃê6!ó™Í:!ñ™å!ï™Íô*ï™å!ÑÍå*ñ™å!ÑÍ¥Ñ}£oå*ñ™å!ÿÑ͸Ñ}£o}2î™*î™&É*ù™&e.å!ó™Íâ*ù™&"ËEÊ-*àŸå!Ñ"àŸ*àŸå!ÑÍ’ËEÊ+-!" ÃÚ-!" !}2:Ÿ!"ìŸ!"âŸ!"äŸ!ÔŸå!)Ñå!ëás#r!ÔŸå!)Ñå!ëás#r!ÔŸå!)Ñå!ëás#r*öŸåÍG!!ÑŸå!Ñå!ëás!ÑŸå!Ñå!ëás!ÑŸå!Ñå!ëásÍú&!"kŸ*òŸåÍG!*:Ÿ&ËEÊÚ-!;ŸÍ“*àŸå!ÑÍ¥ËEÊ.!uŸå*øŸÍz*àŸå!Ñë·íR"àŸ*àŸå!ÑÍ¥ËEÊ,.!sŸå*øŸÍz*àŸå!Ñë·íR"àŸ*àŸå!ÑÍ¥ËEÊ\.!ÚŸå!)Ñå*æŸÍz*àŸå!Ñë·íR"àŸ*àŸå!ÑÍ¥ËEÊŒ.!ÚŸå!)Ñå*æŸÍz*àŸå!Ñë·íR"àŸ*àŸå!ÑÍ¥ËEʼ.!ÚŸå!)Ñå*æŸÍz*àŸå!Ñë·íR"àŸ* É* åÍG!É* åÍG!É* åÍG!* &}2ûž*ûž&Éýáá"ùžýå*ùž"÷ž*÷ž0å!ÿÿëÍ›Í"Í !ºÍ©!ù™ÍDÍ !ó™Í:*ù™&e.åÍ=!ó™Íâ*ù™&åÍ�! Í‘! Í‘ÍOå!ó™Í:Í£å!ÑÍÑ}³oåÍ¥6}îoÑ}³oËEÊû6*ù™&åÍ�! Í‘! Í‘ÍOËEʨ7!ó™å!Ñå!ó™å!Ñn&+ëásÍ¥6ËEÊ8*šÍ:*ñ™e.åÍ=ÿ*šÍâ*ù™&å! ÑÍ’ËEÊý7*ù™&Í›Í"! Í"Í !ºÍ©!ù™ÍDÍ ÃV8Í›!Í"Í !ó™Í:Í£å!ÑÍvz³ÊG8Õ"ñ™Í›!Í"! Í"!Í"Í *ñ™+ÑÃ8!ºÍ©!ù™ÍDÍ Íi6å*ù™&åÍ�!$Í‘!0å!9Í›ÍO}îoÑ}³oËEÊê6É*ù™&å! ÑÍ’ËEÊï8Í›*ù™&åÍú4!ͪ! Í"Í *šÍ:*ù™&e.åÍ=ÿ*šÍâÍi6ËEÊÝ8! }2ù™Ãì8!ºÍ©!ù™ÍDÍ Ä8Éýá !ú™Íá"šáás#r*÷ž2å!ëásÉýáá}2òžá"óžá"õžýå*õž"ðž*óžå*ðž0^#VëÑÍ’ËEÊ40*ðž2n&ËEʉ/*ðžå*ðž0^#VëÍoÍ *ðžå*ðž3å!ͺÍ *ðž2å!ëás*óžå*ðžÍ]å!Ñë·íRÑÍÌËEÊ0*òž&ËEÊÈ/ÍMSeek read errorÍž!Ãò/*óžå*ðžÍ]ÑÍÌËEÊò/ÍMSeek write errorÍž!*ðžå*óžÍoÍ Ã$0*ðžå*óžÍoÍ *ðžå*ðž3å!;Í *ðž0å*óžëás#rÉýáá"îžýå*îž"ìž*ìž2n&ËEÊ|0*ìžå*ìž0^#VëÍoÍ *ìžå*ìž3å!ͺÍ *ìžÍ°Í Éýáá"ãžá}2åžá"æžá"èžá"êžýå*êžå*æžå!åÍ/!€å*åž&Ñë·íR"ßž*êž"áž*áž3å*åž&Ñå*èžå*ßžå*ãžåÍë!Íd*ßžå*ãžÑÍàËEÊL1*êžå*áž0"šýåÍMÿ*šÍâ!}2š!ºÍ©!ù™ÍDÍ *ù™&Íäå!ú™ Í]ÍOËEÊP9*ù™&Íä}2šÃ†9*ù™&ÍäåÍ�!0å!9Í›!$Í‘ÍOËEÊz9Í¢6Ã}9Í„8Í›ÍÍÍ *š&Éã:*m˜+"m˜*m˜å!ÑÍËEʸ9!"m˜Í›!*Í"Í !™åÍV!!o˜åÍV!!™Í:!o˜Í:Íî}2  É*왕ÍÍ *ì™ÍI}îoËEÊM:*ì™ÍUå! ÑÍEå!ÑÍËEÊ:Í›!<Í"Í *ì™Í¤!™Í¶Í *ì™ÍUå!Ñë·íRå*™™ÑÍ’ËEÊJ:ÍÀ.Ãæ9É*왕ÍÍ ÍÐ.}îoËEÊ¢:*ì™ÍUå! ÑÍEå!ÑÍËEÊ�:Í›!>Í"Í ÍÈ.*ì™Í¤!™ÍÜÍ ÃZ:Éýáá"™™P!›™Íâá"ì™ýå!›™Í:Í›!ͪ! Í"Í !"m˜Í!ÅÕå!ÍÙáÑÁÍò ÅÕå!•å!Ú9å!�9å!N:å!™å!^#Vëå!Ñå!åÍ/*áž3å*èžå*ßžÑå!€å*ãžå*ßžÑë·íRåÍë!Íd*ßžå!€Ñ"ßžÃç0Éýáá"Öžá}2Øžá"Ùžá"Ûžá"Ýžýå*Ýžå*Ùžå!åÍ/!€å*Øž&Ñë·íRå*ÖžåÍë!"Òž*Ýž"Ôž*Ûžå*Ôž3å*Øž&Ñå*ÒžÍd*Ôž2å!ëás*Òžå*ÖžÑÍàËEÊ/2*Ýžå*Ôž0^#Vëå!Ñå!åÍ/*Ûžå*ÒžÑå*Ôž3å!€å*Öžå*ÒžÑë·íRåÍë!Íd*Ôž2å!ëás*Òžå!€Ñ"Ҟü1Éýáá"Ìžá"Ξá"Оýå*ÐžÍæ}îoËEÊþ2*Оͩ!Ì�ÿÍŽÍ«!Ì�Í:Í£å!ÑÍÌËEÊû2!Ì�Í:!å! e.å!Ì�Í:! e.åÍ=Ͳ+Ík!Ê�å!È�Íô*È�å!ÑÍå*Ê�å*ΞÑÍÑ}£oËEÊû2!Ì�Í:! e.å!Ì�Í:! e.åÍ=Ͳ#å!ÿÍkÿ*ÌžÍâÃþ2Ã@2Éýo˜åÍ#å!ÑÍ’ËEÊh;Í›ÍÍÍ Í›ͺ9*** WARNING: Unable to sort Terminal names - Press RETURNÍÍÍ ÍËÍ Í›ÍÍÍ ÉÃmRýáá"ä�ýå*ä�å!Ñå!ëás!ºÍ©!á�ÍDÍ *á�&å! ÑÍ’ËEʶ<*á�&åÍ�! å!~Í›ÍOËEÊ<*á�&Í›Í"Í *ä�å!Ñå*ä�å!Ñn&#ëás*ä�å*ä�å!Ñn&Ñå*á�&ëásä<*á�&å!ÑÍå*á�&å!ÑÍÑ}³oå*ä�Í:Í£å!ÑÍÌÑ}£oËEÊ~<Í›!Í"! Í"!Í"Í *ä�å!Ñå*ä�å!Ñn&+ëásä<*á�&å!ÑÍå*¿—&Ñ}£oËEʤ!—å*¸�n&Ñn&Í›Í"! Í"!i•Í:!ͪ! Í"Í !ºÍ©!µ�ÍDÍ *—&å*µ�&å! ÑÍÑ}£oËEÊ—>!—å*¸�n&Ñn&}2µ�ã>*µ�&Íä}2µ�*µ�&åÍ�!—å!Ñn&Í‘!—å!Ñn&Í‘ÍOËEÊV>*µ�&Í›Í"ÍÍÍ *µ�&å!—å!Ñn&ÑÍë*¸�sÉýåÍ”=!}2—*—&}îoËEÊËG!ƒ“Í:Í›!ͪ! Í"Í *—&ËEÊeG*+�Í:Í›!ͪ! Í"!i•Í:!ͪ! Í"Í !+åÍ�@!•åÍu;!•Í:ÍMÍ }2-�!•Í:ÍMÍ å*—&Ñ}³oËEÊÈG!}2—!•Í:ÍMÍ ËEÊÈG!•Í:*+�Íâà G!å!È—Í]ÍOËEʘH!å!È—Í]ÍOËEÊH*+�}å*+�å!+åÍIBÕH*+�}n&å!ÑÍ}2—!—åÍù=*—&ËEÊsH*+�}å!ëás!î‘Í:Í›!ͪ! Í"Í *+�å!+åÍÜ@ÍÈ=ÕH*+�}å!ëás*+�åÍMÍÍÈ=ßH!åÍÐ=!å!È—Í]ÍOËEÊlI!å!È—Í]ÍOËEÊäH*+�~å*+�&å!+åÍIBÃiI*+�~n&å!ÑÍ}2—!—åÍùáá"­�á"¯�á"±�á"³�ýå!}2X�*—&ËEÊP?*³�^#VëÍ›å!Í&! Í"!i•Í:!ͪ! Í"Í *X�&}îoËEÊG@!Z�åÍu;*¾—&ËEÊr?ÃG@!Z�å*³�å!Y�å!X�åÍ:=*Y�&å*—&Ñ}£oËEÊ£?!}2X�ÃD@*Y�&ËEÊç?*­�ë*³�s#r*³�^#Vëå*±�å*¯�åÍ=ËEÊÙ?!}2X�Ãä?*±�å*¯�åÍÀ<ÃD@*X�&}îoËEÊ@!Ç”Í:Í›!ͪ!%”Í:!ͪÍ ÃD@*³�^#Vëå*±�å*¯�åÍ=}îoËEÊD@*±�å*¯�åÍÀ*L�ë*V�sÉýáá"J�ýå!å*J�ÑÍfz³Ê²@Õ"F�Í›!_Í"Í *F�#ÑÔ@!å*J�ÑÍfz³ÊÛ@Õ"F�Í›!Í"Í *F�#Ñý@Éýáá"B�á"D�ýå*—&ËEÊÌA!å*D�Í:Í£Ñ=*—&ËEÊGI*+�~å!ëás!î‘Í:Í›!ͪ! Í"Í *+�&å!+åÍÜ@ÍÈ=ÃiI*+�~å!ëás*+�&åÍMÍÍÈ=ÃsI!åÍÐ=!å!È—Í]ÍOËEÊËJͨ=*+�€å!+åÍÜ@*+�€Í:ÍMÍ�ËEÊJ!åÍÐ=*+�†åÍMÍ*+�ŒåÍMÍ*+�Jå!ëás*+�Iå!ëás*+�’å!ëás*+�Få!ëásÃÈJͨ=*+�†å!+åÍÜ@ͨ=*+�Œå!+åÍÜ@*+�’åÍù=ͨ=*+�Jå!å!ÿå!åÍH@ͨ=*+�Iå!å!ÿå!åÍH@*+�FåÍù=*+�Fn&}îoËEʵJͨ=*+�“å!å!å!åÍÿ>ÃÈJ*+�“å!ëás#rÍÈ=ÃÒJ!åÍÐ=!å!È—Í]ÍOËEÊ‚Kͨ=*+�Må!+åÍÜ@*+�MÍfz³Ê7AÕ"í�Í›*D�å*í�Ñn&åÍú4!ͪ! Í"Í *í�#ÑÃA*D�Í:Í£å!ÑÍÌËEÊ®AÍ›ͺ (Í !å*D�Í:Í£ÑÍfz³ÊœAÕ"í�Í›*D�å*í�Ñn&å!Í&! Í"Í *í�#ÑÃkAÍ›!Í"ͺ) Í Í›! Í"!i•Í:!ͪ! Í"Í !ï�å*B�åÍ�!-Í‘Íf6}2ì�!ï�Í:ÍMÍ�å*—&Ñ}£o}îoËEÊB!ï�Í:ÿ*D�ÍâÃHB*ì�&å!-ÑÍËEÊHBÍMÿ*D�Íâ!?’Í:Í›!ͪÍÍÍ Éýáá"æ�á"è�á"ê�ýå*—&ËEʇB*ê�n&å!ÑÍËEÊ€B!}2ã�ÇB!}2ã�!ã�åÍù=*ã�&}îoËEʶB!ë*ê�sÍMÿ*è�ÍâÍÈ=ÃqD*—&ËEÊäB*ê�n&å!ÑÍËEÊÝB!}2ã�ÃäB!}2ã�!ã�åÍù=!}2â�*—&ËEÊKC*ã�&Í:ÍMÍ ËEÊgK*+�SÍ:ÍMÍ�}2—!—åÍù=*—&}îoËEÊPKͨ=*+�Så!+åÍÜ@ÃdK*+�SåÍMÍÍÈ=ÃK*+�SåÍMÍ!åÍÐ=ÉK!åÍÐ=!å!È—Í]ÍOËEÊôKͨ=*+�uå!+åÍÜ@*+�uÍ:ÍMÍ ËEÊÝKͨ=*+�oå!+åÍÜ@ÃñK*+�oåÍMÍÍÈ=ÃûK!åÍÐ=!å!È—Í]ÍOËEÊ&Lͨ=*+�iå!+åÍÜ@Ã)LÍÈ=!å!È—Í]ÍOËEÊ”Lͨ=*+�[å!+åÍÜ@*+�[Í:ÍMÍ ËEÊ}Lͨ=*+�aå!+åÍÜ@ÑL*+�aåÍMÍÍÈ=ÛL!åÍÐ=! å!È—Í]ÍOËEÊçLͨ=*+�|å!å!å!åÍH@ͨ=*+�{å!å!å!åÍH@ÃîL!åÍÐ=!å!È—Í]ÍOå*å*ê�n&å!ÑÍ’Ñ}£oËEÊ#C!}2â�ÃKC*ã�&}îoå*ê�n&å!ÑÍÑ}£oËEÊKC!}2â�*ã�&ËEÊ`C!ë*ê�sÃhC!ë*ê�s*ê�n&å!ÑÍËEÊ·C*â�&ËEÊ‘CÍMÿ*è�Íâ!î‘Í:Í›!ͪ! Í"Í *è�å*æ�åÍÜ@ÃqD*â�&ËEÊÍCÍMÿ*è�Íâ!�‘Í:Í›!ͪ! Í"Í *—&å*è�Í:ÍMÍ Ñ}£oËEÊ+D*è�Í:Í›!ͪ! Í"!i•Í:!ͪ! Í"Í *æ�+åÍ�@!@�åÍu;Í›ÍÍÍ !@�Í:ÍMÍ å*—&}îoÑ}³oËEÊqD!@�Í:ÿ*è�ÍâÉýáá">�ýå*>�"<�*<�€Í:ÍMÍ�ËEʪD*<�6åÍMÍ÷E*<�Fn&ËEÊËD!e.å!8�ÍâÃìDÍM000!å*<�“^#VëÍk!8�Íâ*<�6å*<�€Í:!8+�€Í:ÍMÍ Ñ}£oËEÊ6Mͨ=*+�Kå!å!'å!åÍÿ>Ã9MÍÈ=!å!È—Í]ÍOå*+�MÍ:ÍMÍ Ñ}£oå!å!È—Í]ÍOå*+�uÍ:ÍMÍ Ñ}£oÑ}³oËEʬMͨ=*+�Yå!å!'å!åÍÿ>ÿM*+�Yå!ëás#rÍÈ=!å!È—Í]ÍOå*+�iÍ:ÍMÍ Ñ}£oå!å!È—Í]ÍOå*+�[Í:ÍMÍ Ñ}£oÑ}³oËEÊ2Nͨ=*+�gå!å!'å!åÍÿ>ÃEN*+�gå!ëás#rÍÈ=*-�&É!å!ÑÍfz³ÊqNÕ"'�Í›ÍÍÍ *'�#ÑÃVN!á’Í:Í›!ͪÍÍÍ Í›ÍÍÍ ÉíOÃäNýáá"hŽýå*�å*hŽÑ"�*�å*�ÑÍÌËEÊÃN!"�ÃÙN*�å!ÑÍàËEÊÙN*�"�ÍKN!}2mŽÉ!}2mŽ*�å!ÑÍÌËEʧOÍ›ÍÍY^#Vëëás#r*—Qå*Ä—iÍ:Í*—Wå*Ä—[Í:Í*—]å*Ä—aÍ:Í*—cå*Ä—g^#Vëëás#r*—&ËEÊÇR! —ÍzÍ *l˜&ÉTURBO.*¦‰å*¨‰Ñå!€ÑÍ"¤ˆ*¤ˆÉ*¦‰å*¨‰Ñå!€ÑÍE"¢ˆ*¢ˆÉ!¯‹ÍÿÍ Éýáá" ˆýåÍÇW!¯‹å* ˆå!¦ˆåÍ02!¦ˆÍ:Í›!ͪÍ É!¯‹å!¦ˆåÍÿ2!¦ˆÍ:Í›!ͪÍ Éýáá"žˆýå*žˆåÍÑWÍ›ÍÍÍ É!}2�ˆ!Íe.å!«e.åÍ=ÍMCopyÍ=P!�Íâ!‚WÍ:!ÿ Í:Í=!‚WÍâ!_Œå!‚WÍ:Íp!_ŒÍpÍñå!ÑÍ’ËEÊÀXÍMFile !‚WÍ:Í=ÍM not foundÍ=Íž!!_Œå!�Í:!�å!�åÍR3}îoËEÊYÍMYou cannot install !‚WÍ:Í=ÍMÍ !2“Í:Í›!ͪÍ !ºÍ©!jŽÍDÍ *jŽ&åÍ�!Í‘!Í‘!Í‘! Í‘ÍOËEÊO*jŽ&·íRÂfO!åÍ–NçO·íRÂzO!ÿÿåÍ–NçO·íR”O*¿—&}îo}2&�çO ·íR§OÍ›ÍÍÍ *mŽ&É!}2&�!å*~ å!ÑÍåÍ""�*~ å!å*�ÑÍõÑë·íRå!ÑÍÌËEÊòO*�#"�!¿ŽåÍ”=!¿Žå!Ñå!å!¿ŽÍ:Í£åÍë!ëás!nŽåÍ”=!nŽå!Ñå!å!nŽÍ:Í£åÍë!ëás! —Í]å!Ñ""�*"�å!ÑÍÌËEÊgR!"�*"�+å!å*�ÑÍõÑÍ#"�*"�+å*�ÑÍ#" �* �+å!ÑÍ#"�*�å*�ÑÍ’ËEÊÁP*�å* �ÑÍõ+"�* �"�ÃàP*"�+"�*"�å*�+å* �ÑÍõÑë·íR"�*�+å*�ÑÍ#"�!å*�+ÑÍfz³Ê[ with this programÍ=Íž!!¯‹åÍM TINST.MSGÍoÍ !¯‹ÍÿÍñå!ÑÍ’ËEÊ|YÍM Message file ÍM TINST.MSGÍ=ÍM not foundÍ=Íž!*�å! Ñ"�*�å*�å!€ÑÍÑ"�*�å!€ÑÍE"�!_ŒåÍæ.*�ˆ&ÉÃôYÍ›! Í"*›ˆ&å!Ñå!Í&!-Í"*šˆ&å!Ñå!Í&ÍÍÍ É!}2œˆ!å!,ÑÍfz³Ê[Õ}2›ˆ!ª‰å*›ˆ&))ÑÍ:!ÿe.åÍ ËEÊ[*›ˆ&#å!,ÑÍfz³Ê[Õ}2šˆ!ª‰å*šˆ&))Ñå!Ñn&å!ª‰å*›ˆ&))Ñå!Ñn&ÑÍËEÊ [!ª‰å*šˆ&))Ñå!Ñn&å!ª‰å*›ˆ&))Ñå!Ñn&ÑÍ’ËEÊÍZ!}2œˆ! åÍXÍþWͺYÃ'[à [!ª‰å*šˆ&))ÑÍ:!ª‰å*›ˆ&))ÑÍ:Í�ËEÊ [!}2œˆ! åRÕ"�!å*�+ÑÍfz³ÊIRÕ"�*�+å* �ÑÍõå*�å*�ÑÍõÑå*�Ñ"—*—å*�Ñ͸ËEÊ@RÍ›*—#å!Í&ͺ) Í *�å*�ÑÍ’å*�å*—Ñë·íRå!ÑÍ¥Ñ}³oËEʺQ! —å*—ÍÕÍ ! —ͤ!j–ͶÍ !j–Í:!ˆ‘ÍâÃøQ*�å*—Ñë·íR·íRÂàQ!¿ŽÍ:!ˆ‘ÍâÃøQ·íRÂøQ!nŽÍ:!ˆ‘Íâ!ˆ‘Í:Í›!ͪÍ *�å*�+ÑÍàËEÊ@RÍ›ÍM!å!ˆ‘Í:Í£Ñë·íRå!ÑͪÍ *�#ÑÃQÍ›ÍÍÍ *�#ÑÃüPÍ“N}îoËEÊ™P*&�&Éýáá"Æ—!È—ÍP!Ê—ÍâP!˜Íâýå!}2l˜! —å!˜Í:Íp! —•ÍÍñå!ÑÍ’ËEÊÇR! —•ÍÍ ÍÿE!}2¿—!}2¾—! —Í]å!ÑÍ}2¼—!ÿ"º—*¼—&ËEÊSÍÈ=à SÍÑWͺYÃ"[*šˆ&#ÑÃ=Z*›ˆ&#ÑÃZÃ,[ááÃ[ááÃ[*œˆ&Éýáá}2˜ˆýå!}2™ˆ!å*˜ˆ&Ñ"”ˆÍ›*˜ˆ&å!Ñå!Í&ͺ: Í *”ˆåÍÑWÍ›ͺ Í !ª‰å*˜ˆ&))Ñå!Ñn&å!ÿÑÍËEÊÅ[!ŽÍ:Í›!ͪÍ Í›! Í"Í Ã\!å!ª‰å*˜ˆ&))ÑÍ:Í£ÑÍfz³Ê\Õ"–ˆÍ›!ª‰å*˜ˆ&))Ñå*–ˆÑn&åÍú4!ͪ! Í"Í *–ˆ#ÑÃà[!=ŽÍ:Í›!ͪÍ !Cˆå!åÍ�!BÍ‘!QÍ‘!-Í‘Íf6B·íRÂc\!}2™ˆÃõ\Q·íRÂw\!}2™ˆÃõ\A·íR·íBÒ�\Ã0\Ãõ\ -·íRÂÊ\!ª‰å*˜ˆ&))Ñå!ÿe.åÍ!ŽÍ:Í›!ͪÍÍÍ Ãõ\!CˆÍ:ÍMÍ ËEÊõ\!ª‰å*˜ˆ&))Ñå!CˆÍ:Í*™ˆ&ÉÍ·Y}î!á’åÍ”=ÍKNÍ�N}îoËEÊ S!}2l˜ÃsW!}2—*¼—&ËEÊAS!"—!åÍÐ=ÃõSÍ›ÍÍÍ ͨ=!—å!å! —Í]å!Ñå!ÿÿåÍÿ>*¾—&ËEÊ}S!}2l˜ÃsW*—+"—*—å! —Í]ÑÍ}2¼—*—å! —Í]#ÑÍËEÊòSͨ=!—å!å! —Í]å!ÿÿåÍÿ>*¾—&ËEÊ×S!}2l˜ÃsW*—+"º—!}2½—!}2—ÃjUÃõSÍÈ=!}2¿—*¼—&ËEÊT!j–å͸EÍÈ=Ã6T! —å*—ÍÕÍ ! —ͤ!j–ͶÍ !—åÍù=*—&å*¼—&Ñ}³oËEÊiTÍ÷F}2½—!}2—!—åÍù=!j–åÍrDÃ~T!}2—!}2½—!åÍÐ=!}2—*—&ËEÊNU! å!È—Í]ÍOå! å!È—Í]ÍOÑ}³oËEÊGU*Æ—"À—Í›ÍÍÍ Í›ÍÍÍ ͨ=Í›ÍÍÍ Í›ÍÍÍ ! å!È—Í]ÍOËEÊUͨ=*ÀoËEÊ]!}2BˆÃ^!}2Bˆ!"¦‰! e.å!>ˆÍâ!_Œå!>ˆåÍ—WåͯWå!åÍM1*¦‰å!Ñ"¦‰!å!,ÑÍfz³Êâ]Õ}2Aˆ!ª‰å*Aˆ&))ÑÍ:Í£#}2@ˆ*¦‰å*@ˆ&Ñå!ÇÑÍÌËEʦ]!}2Bˆ! åÍXÃ^!_Œå!ª‰å*Aˆ&))ÑåÍ—WåͯWå*@ˆ&åÍM1*¦‰å*@ˆ&Ñ"¦‰*Aˆ&#ÑÃ[]!}2@ˆ!_Œå!@ˆåÍ—WåͯWå!åÍM1Ã^áÃ^*Bˆ&ÉÃ=^!_Œå!8ˆåÍ—WåͯWå!å͆0*¦‰#"¦‰*8ˆ&}29ˆ*9ˆ&É*�å!€ÑÍõå*�Ñå!Ñå!Ñ"¨‰!"¦‰!_Œå!¨‰åÍ—WåͯWå!å͆0!"¦‰*¨‰å!Ñë·íR"¨‰!å!,ÑÍfz³ÊS_Õ}2<ˆ!ª‰å*<ˆ&))Ñå!ÑåÍ^ëás!ª‰å*<ˆ&))Ñå!Ñn&å!ÑÍÌËEÊû^!ª‰å*<ˆ&))Ñå!Ñå!ëás!":—å!å!å!åÍH@ÃUÍÈ=! å!È—Í]ÍOËEÊAUͨ=*À—åÍù=ÃDUÍÈ=ÃNU!åÍÐ=! —å*—ÍÕÍ ! —ͤ!j–ÍÜÍ *½—&ËEÊ…U! —å!�’Í:*º—åÍŒ9*Æ—0"À—*À—"—!j–"Ä—*Ä—Í:*À—Íâ*À—å*Ä—{n&ëás*À—å*Ä—|n&ëás*Ä—Í:*—Íâ*—å*Ä—&Í:Í*— å*Ä—6Í:Í*—0å*Ä—Fn&ëás*—1å*Ä—In&ëás*—2å*Ä—Jn&ëás*—3å*Ä—Gn&ëás*—4å*Ä—Hn&ëás*—5å*Ä—K^#Vëëás#r*—7å*Ä—MÍ:Í*—=å*Ä—SÍ:Í*—Cå*Ä—oÍ:Í*—Iå*Ä—uÍ:Í*—Oå*Ä—ˆ*:ˆå!ª‰å*<ˆ&))Ñå!Ñn&Ñ͸ËEÊH_!ª‰å*<ˆ&))Ñå*:ˆÑåÍ^ëás*:ˆ#":ˆÃ_*<ˆ&#ÑÚ^ÉÃê_ýáá"4ˆá"6ˆýå!"2ˆ*2ˆå*6ˆÍ:Í£Ñ͸ËEÊé_*6ˆå*2ˆÑn&å!ÑÍËEÊß_*6ˆå*2ˆå!Íó*4ˆå!Ñå*4ˆå!Ñn&#ëás*4ˆå*4ˆÍ:Í£Ñå*6ˆå*2ˆÑn&ëás*2ˆ#"2ˆÃi_É!å!ÑÍfz³Ê`Õ"0ˆÍ›ÍÍÍ *0ˆ#ÑÃõ_ÍMP!^ŠÍâ!å!ÑÍfz³Êk`Õ"0ˆÍÇW!¯‹å*0ˆå!¯ŠåÍ02!¯Šå!^ŠåÍW_!¯ŠÍ:Í›!ͪÍÍÍ *0ˆ#ÑÃ'`Í›ÍÍÍ !åÍÑWÍ›! Í"Í É!ºÍ©!-ˆÍDÍ *-ˆ&Íä}2-ˆ*-ˆ&å! ÑÍàËEÊÄ`*-ˆ&å!@Ñ}2-ˆ*-ˆ&e.å!^ŠÍ:Ͳå!ÑÍ’ËEʈ`Í›ÍÍÍ *-ˆ&e.å!^ŠÍ:Ͳ".[;HHazeltine 1500~~~~~~~P~Hazeltine Esprit PKaypro with hilite0= /-C1B1 E RP=Kaypro, no hilitetinˆ*.ˆÉÃhaýáá"&ˆýå*&ˆ·íRÂ%a!"(ˆÃda(·íRÂ8a!"(ˆÃda0·íRÂKa!"(ˆÃda9·íRÂ^a!"(ˆÃda!"(ˆ*(ˆÉÍ›ÍÍÍ Í›ÍÍÍ Í›ÍÍÍ !}2,ˆ!å*,ˆ&Ñ"*ˆ**ˆåÍaå!ÑÍ’ËEÊÒaÍ›ÍÍÍ **ˆåÍaåÍÑWÍ›ÍÍÍ Í›ÍÍÍ *,ˆ&åÍ2[·íRÂña*,ˆ&#}2,ˆÃ?b·íRÂ-b*,ˆ&å!ÑÍÌËEÊb*,ˆ&+}2,ˆÃ!b!,}2,ˆÍ›ÍÍÍ Ã?b·íRÂ?b!,#}2,ˆ*,ˆ&å!,ÑÍÌËEÊŠaÍû\ËEÊhaÉ!_Œå!g�å*�å*�å!­å͆0ÍM TINST.DTAÍM TINST.MSGÍ�!Í‘!Í‘!Í‘!Í‘!Í‘!Í‘!Í‘! Í‘! Í‘!g�åÍr;ËEÊçb!_Œå!g�å*�å*�å!­åÍM1É!€åÍŽ"!P"~ !€Í:!~ å!=  E RP=Lear-Siegler ADM-20= )(TERP=Lear-Siegler ADM-31= *)(TERP=Liberty= )($ˆÍô*$ˆå!ÑÍ’å*~ å!ÑÍÑ}³oËEÊ+c!P"~ ÉÍèbÍ5XËEÊœcÍÇW!¯‹å! å!=ŽåÍ02!¯‹å!eå!ŽåÍ02Í ^ÍT_͈`·íRÂpcÍZbÔc·íR€cÍaÔc·íR”c!_ŒåÍ50Üc!ËEÊ[cÃÔ oËEÊ7v!P"~ ÉÍèbÍ5XËEÊ7vÍÇW!¯‹å! å!=ŽåÍ02!¯‹å!eå!ŽåÍ02Í ^ÍT_͈`·íRÂÍZbÃhc·íRÂÍaÃxc·íR”c!_ŒåÍ50Üc!ËEÊ[cÃÔ oËEÊ7v!P"~ ÉÍèbÍ5XËEÊ7vÍÇW!¯‹å! å!=ŽåÍ02!¯‹å!eå!ŽåÍ02Í ^ÍT_͈`·íRÂÍZbÃhc·íRÂÍaÃxcååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååTERP= Morrow MDT-20= )(TERP= Osborne 1)(= ()TERP=Otrona Attache`a= HU$U KLMP=Qume• ADDS 20/25/300PY  KPY ADDS 40/600PY  KMlPYADDS Viewpoint-1A0AY  KPYADM 3A== )(TERP= RC-855 (ITT)  „€PSoroc 120/Apple CP/M= *)(TP=Soroc new models= * P= Ampex D80= )(TER(=ANSI;1P[;HDEC Rainbow, 8 bitP)(TERP=SSM-UB300;002J1;17U0UKLMP;Tandberg TDV 2215PTeleray series 10Y  KLMPY Tel 21 Alternative 22 Character right 23 Word left 24 Word right 25 Line up 26 Line down 27 Scroll down 28 Scroll up 29 Page up 30 Page down 31 To left on line 32 To right on line 33 To top of page 34 To bottom of page 35 To top oetex 3000= )(T-ERP=Televideo 912/920/92= ()TERP=Texas InstrumentsP[;H Visual 200Yf file 36 To end of file 37 To begining of block 38 To end of block 39 To last cursor position 15 INSERT & DELETE: 40 Insert mode on/off 41 Insert line 42 Delete line 43 Delete to end of line 44 Delete right word 45 Delete character under cursor 46 Delete left character 47 Alternative 16 BLOCK COMMANDS: 48 Mark block b v34xLMPYWyse WY-100/200/300= *)(TERP=Zenith00Cur[, Morrow Y0 E(qEpKLMPYOrona ttach00CP[;H Visual 200Yegin 49 Mark block end 50 Mark single word 51 Hide/display block 52 Copy block 53 Move block 54 Delete block 55 Read block from disk 56 Write block to disk 17 MISC. EDITING COMMANDS: 57 End edit 58 Tab 59 Auto tab on/off 60 Restore line 61 Find 62åååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååå Find & replace 63 Repeat last find 64 Control character prefix 101 Nothing ^Q: Quit, ^R: Last page, ^C: Next page, : Select terminal: Wait Sorting Definitions Change to: (Y/N)? y n Text file name: Command: Numeric entry expected Legal range is , please re-enter: Choose one of the following terminals: None of the above ( Max. 20 Characters ) Delete a definition ( Max. 20 Characters ) Which terminal? (Enter no. or ^Q to exit)1 TURBO Pascal installation menu. 2 Choose installation item from the following: 3 4 [S]creen installation | [C]ommand installation | [Q]uit 5 6 Enter S, C, or Q: 10 Duplicate definition. Error occurred between question 11 Commands starting with the same letter must have the same length. Error occurred between question 12 The total maximum length of commands are execeeded 13 -> 14 CURSOR MOVEMENTS: 20 Character left : Delete terminal? (Enter no. or ^Q to exit): Do you want to modify this definition before installation? Terminal type: Send an initialization string to the terminal? Initializaion defined as a command string? (No = a file) Send a reset string to the terminal Reset defined as a command? (No = a file) CURSOR LEAD-IN command: CURSOR POSITIONING COMMAND to send between line and column: CURSOR POSITIONING COMMAND to send after both line and column: Column first OFFSET to add to LINam from DOS 1. Type LISTER and enter a file name to print when prompted. 2. Specify a commandline parameter: A> LISTER filename } Const PageWidth = 80; PrintLength = 55; PathLength = 65; FormFeed = #12; VerticalTabLength = 3; Type WorkString = String[126]; FileName = String[PathLength]; Var CurRow : integer; MainFileName: FileName; MainFile: text; search1, search2, search3, E: OFFSET to add to COLUMN: Binary address Number of ASCII digits (2 or 3): CLEAR SCREEN command: Does CLEAR SCREEN also HOME cursor HOME command: DELETE LINE command: INSERT LINE command: ERASE TO END OF LINE command: START HIGHLIGHTING command: END HIGHLIGHTING command: Number of rows (lines) on your screen: Number of columns on your screen: Delay after CURSOR ADDRESS (0-255 ms): Delay after CLEAR, DELETE and INSERT (0-255 ms): search4: string[5]; Procedure Initialize; begin CurRow := 0; clrscr; search1 := '{$'+'I'; { So LISTER can list itself! } search2 := '{$'+'i'; search3 := '(*$'+'I'; search4 := '(*$'+'i'; end {initialize}; Function Open(var fp:text; name: Filename): boolean; begin Assign(fp,Name); {$I-} reset(fp); {$I+} If IOresult <> 0 then begin Open := False; close(fp); end else Open := True; end { Open }; Delay after ERASE TO END OF LINE and HIGHLIGHT (0-255 ms): Is this definition correct? Hardware dependent information Operating frequency of your microprocessor in MHz (for delays): pendent information Operating frequency of your microprocessor in MHz (for delays): åååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååå Procedure OpenMain; begin If ParamCount = 0 then begin Write('Enter filename: '); readln(MainFileName); end else begin MainFileName := ParamStr(1); end; If Not Open(MainFile,MainFileName) Then begin Writeln('ERROR -- File not found: ',MainFileName); Halt; end; end {Open Main}; Procedure VerticalTab; var i: integer; begin for i := 1 to VerticalTabLength do writeln(lst); end {vertical tab}; Proprogram SourceLister; { SOURCE LISTER DEMONSTRATION PROGRAM Version 1.00A This is a simple program to list your TURBO PASCAL source programs. PSEUDO CODE 1. Find Pascal source file to be listed 2. Initialize program variables 3. Open main source file 4. Process the file a. Read a character into line buffer until linebuffer full or eoln; b. Search line buffer for include file. c. If line contains include file command: Tcedure ProcessLine(PrintStr: WorkString); begin CurRow := Succ(CurRow); if length(PrintStr) > PageWidth then CurRow := Succ(CurRow); if CurRow > PrintLength Then begin Write(lst,FormFeed); VerticalTab; CurRow := 1; end; Writeln(lst,PrintStr); end {Process line}; Procedure ProcessFile; var LineBuffer: WorkString; Function IncludeIn(VAR CurStr: WorkString): Boolean; Var ChkChar: char; column: integer; begin hen process include file and extract command from line buffer Else print out the line buffer. d. Repeat step 4.a thru 4.c until eof(main file); INSTRUCTIONS 1. Compile and run the program using the TURBO.COM compiler. 2. Two ways to print a file a. Run from TURBO in memory: 1. Type "R" and enter a file name to print when prompted. 2. Specify a run-time parameter from the compiler options menu. b. Run the progr ChkChar := '-'; column := pos(search1,CurStr); if column <> 0 then chkchar := CurStr[column+3] else begin column := Pos(search3,CurStr); if column <> 0 then chkchar := CurStr[column+4] else begin column := Pos(search2,CurStr); if column <> 0 then chkchar := CurStr[column+3] else begin column := Pos(search4,CurStr); if cååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååolumn <> 0 then chkchar := CurStr[column+4] end; end; end; if ChkChar in ['+','-'] then IncludeIn := False Else IncludeIn := True; end { IncludeIn }; Procedure ProcessIncludeFile(VAR IncStr: WorkString); var NameStart, NameEnd: integer; IncludeFile: text; IncludeFileName: Filename; Function Parse(IncStr: WorkString): WorkString; begin NameStart := pos('$I',IncStr)+2; program CommandLine; { COMMANDLINE PARAMETERS DEMONSTRATION PROGRAM Version 1.00A This program gets parameters from the command line: INSTRUCTIONS 1. Load the TURBO compiler and compile to a .COM file 2. Quit the TURBO compiler and execute the program with parameters. Try: cmdlin abc def cmdlin Greetings from Frank Borland! cmdlin NOTE: For information about these functions, please refer to your TURBO 3 while IncStr[NameStart] = ' ' do NameStart := Succ(NameStart); NameEnd := NameStart; while (not (IncStr[NameEnd] in [' ','}','*'])) AND ((NameEnd - NameStart) <= PathLength) do NameEnd := Succ(NameEnd); NameEnd := Pred(NameEnd); Parse := copy(IncStr,NameStart,(NameEnd-NameStart+1)); end {Parse}; begin {Process include file} IncludeFileName := Parse(IncStr); If not Open(IncludeFile,IncludeFi.0 Reference Manual. } var i : integer; begin for i := 1 to ParamCount do writeln(ParamSTR(i)); end. 0 Reference Manual. } var i : integer; begin for i := 1 to ParamCount do writeln(ParamSTR(i)); end. ååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååleName) then begin LineBuffer := 'ERROR -- Include file not found: ' + IncludeFileName; ProcessLine(LineBuffer); end Else begin while not eof(IncludeFile) do begin Readln(IncludeFile,LineBuffer); ProcessLine(LineBuffer); end; close(IncludeFile); end; end {Process include file}; begin {Process File} VerticalTab; Writeln('Printing . . . '); while not eof(mainfprogram MicroCalc; { MICROCALC DEMONSTRATION PROGRAM Version 1.00A This program is Copyrighted by Borland International, Inc. 1983, 1984, 1985 and is hereby donated to the public domain for non-commercial use only. Dot commands are for the program lister: LISTT.PAS (available with our TURBO TUTOR): .PA, .CP20, etc... INSTRUCTIONS 1. Compile this program using the TURBO.COM compiler. a. Use the O command from the main menu to select Options. b.ile) do begin Readln(MainFile,LineBuffer); if IncludeIn(LineBuffer) then ProcessIncludeFile(LineBuffer) else ProcessLine(LineBuffer); end; close(MainFile); write(lst,FormFeed); end {Process File}; BEGIN Initialize; OpenMain; ProcessFile; END. e}; BEGIN Initialize; OpenMain; ProcessFile; END.  Select the C option to generate a .COM file. c. Select the Q option to Quit the Options menu. d. Select the M option to specify the Main file e. Type "MC" and hit f. Type C to compile the program to disk g. Type R to run the program 2. Exit the program by typing: /Q } {$R-,U-,V-,X-,A+,C-} const FXMax: Char = 'G'; { Maximum number of columns } FYMax = 21; { Maximum number of lines nd} {.PA} {*********************************************************************} {* START OF MAIN PROGRAM PROCEDURES *} {*********************************************************************} { Procedure Commands is activated from the main loop in this program } { when the user type a semicolon. Commands then activates a procedure} { which will execute the command. These procedures are located in the} { above modules. } type Anystring = string[255]; ScreenIndex = 'A'..'G'; Attributes = (Constant,Formula,Txt,OverWritten,Locked,Calculated); { The spreadsheet is made out of Cells every Cell is defined as } { the following record: } CellRec = record CellStatus: set of Attributes; { Status of cell (see type def.) } Contents: String[70]; { Contains a formula or some text } Value: Real; { Last calculated c } { For easy reference the source code module number is shown in a } { comment on the right following the procedure call. } procedure Commands; begin GotoXY(1,24); HighVideo; Write('/ restore, Quit, Load, Save, Recalculate, Print, Format, AutoCalc, Help '); Read(Kbd,Ch); Ch:=UpCase(Ch); case Ch of { In module } 'Q': Halt; 'F': Format; { 04 } 'S': ell value } DEC,FW: 0..20; { Decimals and Cell Whith } end; Cells = array[ScreenIndex,1..FYMax] of CellRec; const XPOS: array[ScreenIndex] of integer = (3,14,25,36,47,58,68); var Screen: Cells; { Definition of the spread sheet } FX: ScreenIndex; { Culumn of current cell } FY: Integer; { Line of current cell } Ch: Char; { Last read character Save; { 03 } 'L': Load; { 03 } 'H': Help; { 03 } 'R': Recalculate; { 05 } 'A': Auto; { 00 } '/': Update; { 01 } 'C': Clear; { 01 } 'P': Print; } MCFile: file of CellRec; { File to store sheets in } AutoCalc: boolean; { Recalculate after each entry? } { The following include files contain procedures used in MicroCalc. } { In the following source code there is a reference after each } { procedure call indicating in which module the procedure is located.} { If you want a printer listing of the following modules then you } { must let the include directives start in column one and the { 03 } end; Grid; { 01 } GotoCell(FX,FY); { 02 } end; { Procedure Hello says hello and activates the help procedure if the } { user presses anything but Return } procedure Wellcome; procedure Center(S: AnyString); var I: integer; begin for I:=1 to (80-Length(S)) div 2 do Write(' '); writeln(n use } { the TLIST program to generate a listing. } {$I MC-MOD00.INC Miscelaneous procedures } {$I MC-MOD01.INC Initialization procedures } {$I MC-MOD02.INC Commands to move between fields } {$I MC-MOD03.INC Commands to Load,Save,Print } {$I MC-MOD04.INC Evaluating an expression in a cell } {$I MC-MOD05.INC Reading a cell definition and Format commaS); end; begin { procedure Wellcome } ClrScr; GotoXY(1,9); Center('Welcome to MicroCalc. A Turbo demonstation program'); Center('Copyright 1983 by Borland International Inc. '); Center('Press any key for help or to start'); GotoXY(40,12); Read(Kbd,Ch); if Ch<>^M then Help; end; {.PA} {*********************************************************************} {* THIS IS WHERE THE PROGRAM STARTS EXECUTING *} {**************************************begin repeat GotoXY(X,23); Blink:=not Blink; if Blink then HighVideo else LowVideo; Write(S); Delay(175); until KeyPressed; end; LowVideo; end; procedure Auto; begin AutoCalc:=not AutoCalc; if AutoCalc then Flash(65,'AutoCalc: ON ',false) else Flash(65,'AutoCalc: OFF',false); end; then Flash(65,'AutoCalc: ON ',false) else Flash(65,'AutoCalc: OFF',false); end; *******************************} begin Init; { 01 } Wellcome; ClrScr; Grid; { 01 } GotoCell(FX,FY); repeat Read(Kbd,Ch); case Ch of ^E: MoveUp; { 02 } ^X,^J: MoveDown; { 02 } ^D,^M,^F: MoveRight; { 02 } ^S,^A: MoveLeft; {.PA} {*******************************************************************} {* SOURCE CODE MODULE: MC-MOD01 *} {* PURPOSE: Display grid and initialize all cells *} {* in the spread sheet. *} {*******************************************************************} procedure Grid; var I: integer; Count: Char; begin HighVideo; For Count:='A' to FXMax do begin GotoXY(XPos[Count],1); { 02 } '/': Commands; ^[: GetCell(FX,FY); { 04 } else if Ch in [' '..'~'] then GetCell(FX,FY); { 04 } end; until true=false; { (program stops in procedure Commands) } end.  { 02 } ^D,^M,^F: MoveRight; { 02 } ^S,^A: MoveLeft; Write(Count); end; GotoXY(1,2); for I:=1 to FYMax do writeln(I:2); LowVideo; if AutoCalc then Flash(65,'AutoCalc: ON' ,false) else Flash(65,'AutoCalc: OFF',false); Flash(33,' Type / for Commands',false); end; procedure Init; var I: ScreenIndex; J: Integer; LastName: string[2]; begin for I:='A' to FXMAX do begin for J:=1 to FYMAX do begin with Screen[I,J] do begin CellStatus:=[Txt]; Contents:=''; Value:=0; åååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååå DEC:=2; { Default number of decimals } FW:=10; { Default field whith } end; end; end; AutoCalc:=True; FX:='A'; FY:=1; { First field in upper left corner } end; procedure Clear; begin HighVideo; GotoXY(1,24); ClrEol; Write('Clear this worksheet? (Y/N) '); repeat Read(Kbd,Ch) until Upcase(Ch) in ['Y','N']; Write(Upcase(Ch)); if UpCase(Ch)='Y' then begin ClrScr; Init; Grid; {.PA} {*******************************************************************} {* SOURCE CODE MODULE: MC-MOD00 *} {* PURPOSE: Micellaneous utilities an commands. *} {*******************************************************************} procedure Msg(S: AnyString); begin GotoXY(1,24); ClrEol; Write(S); end; procedure Flash(X: integer; S: AnyString; Blink: boolean); begin HighVideo; GotoXY(X,23); Write(S); if Blink then end; end; nd; end; ååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååFYMax then FY:=1; until (Screen[FX,FY].CellStatus*[OverWritten,Locked]=[]) or (FY=Start); if FY<>Start then GotoCell(FX,FY); end; {.CP20} procedure MoveUp; var Start: integer; begin LeaveCell(FX,FY); Start:=FY; repeat FY:=FY-1; if FY<1 then FY:=FYMax; until (Screen[FX,FY].CellStatus*[OverWritten,Locked]=[]) or (FY=Start); if FY<>Start then GotoCell(FX,FY); end; {.CP20} procedure MoveRight; var Start: ScreenIndex; begin LeaveCell(FX,FY); Start:=FX; r{.PA} {*******************************************************************} {* SOURCE CODE MODULE: MC-MOD02 *} {* PURPOSE: Display values in cells and move between *} {* cells in the spread sheet. *} {*******************************************************************} procedure FlashType; begin with Screen[FX,FY] do begin GotoXY(1,23); Write(FX,FY:2,' '); if Formula in CellStatus then writepeat FX:=Succ(FX); if FX>FXMax then begin FX:='A'; FY:=FY+1; if FY>FYMax then FY:=1; end; until (Screen[FX,FY].CellStatus*[OverWritten,Locked]=[]) or (FX=Start); if FX<>Start then GotoCell(FX,FY); end; {.CP20} procedure MoveLeft; var Start: ScreenIndex; begin LeaveCell(FX,FY); Start:=FX; repeat FX:=Pred(FX); if FX<'A' then begin FX:=FXMax; FY:=FY-1; if FY<1 then FY:=FYMax; end; until (Screen[FX,FY].e('Formula:') else if Constant in CellStatus then Write('Numeric ') else if Txt in CellStatus then Write('Text '); GotoXY(1,24); ClrEol; if Formula in CellStatus then Write(Contents); end; end; { The following procedures move between the Cells on the calc sheet.} { Each Cell has an associated record containing its X,Y coordinates } { and data. See the type definition for "Cell". } procedure GotoCell(GX: ScreenIndex; GY: integer); begin with ScreeCellStatus*[OverWritten,Locked]=[]) or (FX=Start); if FX<>Start then GotoCell(FX,FY); end; ellStatus*[OverWritten,Locked]=[]) or (FX=Start); if FX<>Start then GotoCell(FX,FY); end; CP20} procedure MoveLeft; var Start: ScreenIndex; begin LeaveCell(FX,FY); Start:=FX; repeat FX:=Pred(FX); if FX<'A' then begin FX:=FXMax; FY:=FY-1; if FY<1 then FY:=FYMax; end; until (Screen[FX,FY].n[GX,GY] do begin HighVideo; GotoXY(XPos[GX],GY+1); Write(' '); GotoXY(XPos[GX],GY+1); if Txt in CellStatus then Write(Contents) else begin if DEC>=0 then Write(Value:FW:DEC) else Write(Value:FW); end; FlashType; GotoXY(XPos[GX],GY+1); end; LowVideo; end; {.CP20} procedure LeaveCell(FX:ScreenIndex;FY: integer); begin with Screen[FX,FY] do begin GotoXY(XPos[FX],FY+1); LowVideo; if Txt in CellStatusåååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååå then Write(Contents) else begin if DEC>=0 then Write(Value:FW:DEC) else Write(Value:FW); end; end; end; {.CP20} procedure Update; var UFX: ScreenIndex; UFY: integer; begin ClrScr; Grid; for UFX:='A' to FXMax do for UFY:=1 to FYMax do if Screen[UFX,UFY].Contents<>'' then LeaveCell(UFX,UFY); GotoCell(FX,FY); end; {.CP20} procedure MoveDown; var Start: integer; begin LeaveCell(FX,FY); Start:=FY; repeat FY:=FY+1; if FY>{.PA} {*******************************************************************} {* SOURCE CODE MODULE: MC-MOD03 *} {* PURPOSE: Read, Save and Print a spread sheet. *} {* Display on-line manual. *} {*******************************************************************} type String3 = string[3]; var FileName: string[14]; Line: string[100]; function Exist(FileN: AnyString): boolean; var F: file; begi Line:=''; for I:='A' to FXmax do begin with Screen[I,J] do begin while (Length(Line)0 then Str(Value:FW:DEC,P) else Str(Value:FW,P); Line:=Line+P; end; end else Line:=Line+Contents; end; { With } end; { One line } For Count:=1 n {$I-} assign(F,FileN); reset(F); {$I+} if IOResult<>0 then Exist:=false else Exist:=true; end; procedure GetFileName(var Line: AnyString; FileType:String3); begin Line:=''; repeat Read(Kbd,Ch); if Upcase(Ch) in ['A'..'Z',^M] then begin write(Upcase(Ch)); Line:=Line+Ch; end; until (Ch=^M) or (length(Line)=8); if Ch=^M then Delete(Line,Length(Line),1); if Line<>'' then Line:=Line+'.'+FileType; end; {.CP20} procedure Save;to LeftMargin do Write(MCFile,' '); writeln(MCFile,Line); end; { End Column } Grid; Close(MCFile); LowVideo; GotoCell(FX,FY); end; {.PA} procedure Help; var H: text; HelpFileName: string[14]; Line: string[80]; I,J: integer; Bold: boolean; begin if Exist('MC.HLP') then begin Assign(H,'MC.HLP'); Reset(H); while not Eof(H) do begin Readln(H,Line); ClrScr; I:=1; Bold:=false; LowVideo; repeat For J:=1 to Length( var I: screenIndex; J: integer; begin HighVideo; Msg('Save: Enter filename '); GetFileName(Filename,'MCS'); if FileName<>'' then begin Assign(MCFile,FileName); Rewrite(MCFile); for I:='A' to FXmax do begin for J:=1 to FYmax do write(MCfile,Screen[I,J]); end; Grid; Close(MCFile); LowVideo; GotoCell(FX,FY); end; end; {.CP30} procedure Load; begin HighVideo; Msg('Load: Enter filename '); GetFileName(Filename,'MCLine) do begin if Line[J]=^B then begin Bold:=not Bold; if Bold then HighVideo else LowVideo; end else write(Line[J]); end; Writeln; I:=I+1; Readln(H,Line); until Eof(H) or (I>23) or (Copy(Line,1,3)='.PA'); GotoXY(26,24); HighVideo; write('<<< Please press any key to continue >>>'); LowVideo; read(Kbd,Ch); end; GotoXY(20,24); HighVideo; write('<<< Please pS'); if (Filename<>'') then if (not exist(FileName)) then repeat Msg('File not Found: Enter another filename '); GetFileName(Filename,'MCS'); until exist(FileName) or (FileName=''); if FileName<>'' then begin ClrScr; Msg('Please Wait. Loading definition...'); Assign(MCFile,FileName); Reset(MCFile); for FX:='A' to FXmax do for FY:=1 to FYmax do read(MCFile,Screen[FX,FY]); FX:='A'; FY:=1; LowVideo; UpDate; end; GotoCell(FX,FY); endress to start MicroCalc >>>'); LowVideo; Readln(Ch); UpDate; end else { Help file did not exist } begin Msg('To get help the file MC.HLP must be on your disk. Press '); repeat Read(kbd,Ch) until Ch=^M; GotoCell(FX,FY); end; end; toCell(FX,FY); end; end; ; {.PA} procedure Print; var I: screenIndex; J,Count, LeftMargin: Integer; P: string[20]; MCFile: Text; begin HighVideo; Msg('Print: Enter filename "P" for Printer> '); GetFileName(Filename,'LST'); Msg('Left margin > '); Read(LeftMargin); if FileName='P.LST' then FileName:='Printer'; Msg('Printing to: ' + FileName + '....'); Assign(MCFile,FileName); Rewrite(MCFile); For Count:=1 to 5 do Writeln(MCFile); for J:=1 to FYmax do begin ååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååQR','SIN','COS', 'ARCTAN','LN','LOG','EXP','FACT'); var E,EE,L: Integer; { intermidiate variables } Found:Boolean; F: Real; Sf:StandardFunction; OldEFY, { Current cell } EFY, SumFY, Start:Integer; OldEFX, EFX, SumFX:ScreenIndex; CellSum: Real; f{.PA} {*******************************************************************} {* SOURCE CODE MODULE: MC-MOD04 *} {* PURPOSE: Evaluate formulas. *} {* Recalculate spread sheet. *} {* *} {* NOTE: This module contains recursive procedures *} {* and is for computer scientists only. *} {*******unction Fact(I: Integer): Real; begin if I > 0 then begin Fact:=I*Fact(I-1); end else Fact:=1; end { Fact }; {.PA} begin { Function Factor } if Ch in Numbers then begin Start:=Pos; repeat NextCh until not (Ch in Numbers); if Ch='.' then repeat NextCh until not (Ch in Numbers); if Ch='E' then begin NextCh; ************************************************************} var Form: Boolean; {$A-} procedure Evaluate(var IsFormula: Boolean; { True if formula} var Formula: AnyString; { Fomula to evaluate} var Value: Real; { Result of formula } var ErrPos: Integer);{ Position of error } const Numbers: set of Char = ['0'..'9']; EofLine = ^M; var Pos: Integer; { Current position in formula } Ch: Char; { repeat NextCh until not (Ch in Numbers); end; Val(Copy(Formula,Start,Pos-Start),F,ErrPos); end else if Ch='(' then begin NextCh; F:=Expression; if Ch=')' then NextCh else ErrPos:=Pos; end else if Ch in ['A'..'G'] then { Maybe a cell reference } begin EFX:=Ch; NextCh; if Ch in Numbers then Current character being scanned } EXY: string[3]; { Intermidiate string for conversion } { Procedure NextCh returns the next character in the formula } { The variable Pos contains the position ann Ch the character } procedure NextCh; begin repeat Pos:=Pos+1; if Pos<=Length(Formula) then Ch:=Formula[Pos] else Ch:=eofline; until Ch<>' '; end { NextCh }; function Expression: Real; var E: Real; Oprbegin F:=0; EXY:=Ch; NextCh; if Ch in Numbers then begin EXY:=EXY+Ch; NextCh; end; Val(EXY,EFY,ErrPos); IsFormula:=true; if (Constant in Screen[EFX,EFY].CellStatus) and not (Calculated in Screen[EFX,EFY].CellStatus) then begin Evaluate(Form,screen[EFX,EFY].contents,f,ErrPos); : Char; function SimpleExpression: Real; var S: Real; Opr: Char; function Term: Real; var T: Real; function SignedFactor: Real; function Factor: Real; type StandardFunction = (fabs,fsqrt,fsqr,fsin,fcos, farctan,fln,flog,fexp,ffact); StandardFunctionList = array[StandardFunction] of string[6]; const StandardFunctionNames: StandardFunctionList =('ABS','SQRT','S Screen[EFX,EFY].CellStatus:=Screen[EFX,EFY].CellStatus+[Calculated] end else if not (Txt in Screen[EFX,EFY].CellStatus) then F:=Screen[EFX,EFY].Value; if Ch='>' then begin OldEFX:=EFX; OldEFY:=EFY; NextCh; EFX:=Ch; NextCh; if Ch in Numbers then begin EXY:=Ch; NextCh; Found:=true; end; end; if not Found then ErrPos:=Pos; end; Factor:=F; end { function Factor}; {.PA} begin { SignedFactor } if Ch='-' then begin NextCh; SignedFactor:=-Factor; end else SignedFactor:=Factor; end { SignedFactor }; begin { Term } T:=SignedFactor; while Ch='^' do begin NextCh; t:=exp(ln(t)*Sign if Ch in Numbers then begin EXY:=EXY+Ch; NextCh; end; val(EXY,EFY,ErrPos); Cellsum:=0; for SumFY:=OldEFY to EFY do begin for SumFX:=OldEFX to EFX do begin F:=0; if (Constant in Screen[SumFX,SumFY].CellStatus) and edFactor); end; Term:=t; end { Term }; begin { SimpleExpression } s:=term; while Ch in ['*','/'] do begin Opr:=Ch; NextCh; case Opr of '*': s:=s*term; '/': s:=s/term; end; end; SimpleExpression:=s; end { SimpleExpression }; begin { Expression } E:=SimpleExpression; while Ch in ['+','-'] do begin Opr:=Ch; NextCh; case Opr of '+': e:=e+SimpleExpr not (Calculated in Screen[SumFX,SumFY].CellStatus) then begin Evaluate(Form,Screen[SumFX,SumFY].contents,f,errPos); Screen[SumFX,SumFY].CellStatus:= Screen[SumFX,SumFY].CellStatus+[Calculated]; end else if not (Txt in Screen[SumFX,SumFY].CellStatus) then F:=ScrEEn[SumFX,SumFY].Value; Cellsum:=Cellsum+f; ession; '-': e:=e-SimpleExpression; end; end; Expression:=E; end { Expression }; begin { procedure Evaluate } if Formula[1]='.' then Formula:='0'+Formula; if Formula[1]='+' then delete(Formula,1,1); IsFormula:=false; Pos:=0; NextCh; Value:=Expression; if Ch=EofLine then ErrPos:=0 else ErrPos:=Pos; end { Evaluate }; {.PA} procedure Recalculate; var RFX: ScreenIndex; RFY:integer; OldValue: real; Err: integer; begin LowVideo; Goto f:=Cellsum; end; end; end; end; end; end else begin found:=false; for sf:=fabs to ffact do if not found then begin l:=Length(StandardFunctionNames[sf]); if copy(Formula,Pos,l)=StandardFunctionNames[sf] then begin Pos:=Pos+l-1; NextCh; F:XY(1,24); ClrEol; Write('Calculating..'); for RFY:=1 to FYMax do begin for RFX:='A' to FXMax do begin with Screen[RFX,RFY] do begin if (Formula in CellStatus) then begin CellStatus:=CellStatus+[Calculated]; OldValue:=Value; Evaluate(Form,Contents,Value,Err); if OldValue<>Value then begin GotoXY(XPos[RFX],RFY+1); if (DEC>=0) then Write(Value:FW:DEC) else Write(Value=Factor; case sf of fabs: f:=abs(f); fsqrt: f:=sqrt(f); fsqr: f:=sqr(f); fsin: f:=sin(f); fcos: f:=cos(f); farctan: f:=arctan(f); fln : f:=ln(f); flog: f:=ln(f)/ln(10); fexp: f:=exp(f); ffact: f:=fact(trunc(f)); end; :FW); end; end; end; end; end; GotoCell(FX,FY); end; FW); end; end; end; end; end; GotoCell(FX,FY); end; åååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååå GotoX; end; end; ^S,^H: begin { Move cursor left } X:=X-1; if X<1 then X:=1; GotoX; end; ^F: begin { Move cursor to end of line } X:=Length(S)+1; GotoX; end; ^A: begin { Move cursor to beginning of line } X:=1; GotoX; end; #127: begin { Delete left char } X:=X-1; if (Length(S)>0) a{.PA} {*******************************************************************} {* SOURCE CODE MODULE: MC-MOD05 *} {* PURPOSE: Read the contents of a cell and update *} {* associated cells. *} {*******************************************************************} { Procedure GetLine will let the user type and/or edit a string of } { maximum length "MAX". The string will start at cursor position: } { nd (X>0) then begin Delete(S,X,1); Write(copy(S,X,Length(S)-X+1),' '); GotoX; if X<1 then X:=1; end else X:=1; end; ^V: InsertOn:= not InsertOn; {.PA} else begin if Ch in OkChars then begin if InsertOn then begin insert(Ch,S,X); Write(copy(S,X,Length(S)-X+1),' '); end else begin ColNO,LineNO. If ErrPos <> 0 then the cursor will jump to position } { ErrPos in the string. If the last parameter is "True" then all } { characters entered will be translated to upper case. } { If the user at anytimes types then the string returned } { contain $FF to indicate that editing was aborted. } procedure GetLine(var S: AnyString; { String to edit } ColNO,LineNO, { Where start line } write(Ch); if X=length(S) then S:=S+Ch else S[X]:=Ch; end; if Length(S)+1<=MAX then X:=X+1 else OkChars:=[]; { Line too Long } GotoX; end else if Length(S)+1<=Max then OkChars:= [' '..'}']; { Line ok again } end; end; until CH=^M; end; {.PA} procedure GetCell(FX: ScreenIndex;FY: Integer); var S: AnyString; NewStat: Set of Attributes; ErrorPosition: Integ MAX, { Max length } ErrPos: integer; { Where to begin } UpperCase:Boolean); { True if auto Upcase } var X: integer; InsertOn: boolean; OkChars: set of Char; procedure GotoX; begin GotoXY(X+ColNo-1,LineNo); end; begin OkChars:=[' '..'}']; InsertOn:=true; X:=1; GotoX; Write(S); if Length(S)=1 then X:=2; if ErrPos<>0 then X:=ErrPos; GotoX; repeat er; I: ScreenIndex; Result: Real; Abort: Boolean; IsForm: Boolean; { Procedure ClearCells clears the current cell and its associated } { cells. An associated cell is a cell overwritten by data from the } { current cell. The data can be text in which case the cell has the } { attribute "OverWritten". If the data is a result from an expression} { and the field with is larger tahn 11 then the cell is "Locked" } procedure ClearCells; begin Read(Kbd,Ch); if UpperCase then Ch:=UpCase(Ch); case Ch of ^[: begin S:=chr($FF); { abort editing } Ch:=^M; end; ^D: begin { Move cursor right } X:=X+1; if (X>length(S)+1) or (X>MAX) then X:=X-1; GotoX; end; ^G: begin { Delete right char } if X<=Length(S) then begin Delete(S,X,1); Write(copy(S,X,Length(S)-X+1),' '); I:=FX; repeat with Screen[I,FY] do begin GotoXY(XPos[I],FY+1); write(' '); I:=Succ(I); end; until ([OverWritten,Locked]*Screen[I,FY].CellStatus=[]); { Cell is not OVerWritten not Locked } end; {.CP20} { The new type of the cell is flashed at the bottom of the screen } { Notice that a constant of type array is used to indicate the type } procedure FlashType; begin HighVideo; GotoXY(5,23); LowVideo; end; } procedure UpdateCells; var Flength: Integer; begin Screen[FX,FY].Contents:=S; if Txt in NewStat {Screen[FX,FY].CellStatus} then begin I:=FX; FLength:=Length(S); repeat I:=Succ(I); with Screen[I,FY] do begin FLength:=Flength-11; if (Flength>0) then begin CellStatus:=[Overwritten,Txt]; Contents:=''; end else begin {.CP20} { Procedure GetFormula repeats calling the procedure GetLine and } { Evaluate until the line read by GetLine contains a valid formula. } { Evaluate returns an error position in the string evaluated. If } { this position is non zero GetLine is called. If the user types } { ESC in GetLine to abort the editing then the string returned from } { Getline will contain $FF and te original value of the cell will } { be restored later. if OverWritten in CellStatus then begin CellStatus:=[Txt]; GotoCell(I,FY);LeaveCell(I,FY); end; end; end; until (I=FXMax) or (Screen[I,FY].Contents<>''); Screen[FX,FY].CellStatus:=[Txt]; end else { string changed to formula or constant } begin { Event number two } I:=FX; repeat with Screen[I,FY] do begin if OverWritten in CellStatus then begin } procedure GetFormula; begin FlashType; repeat GetLine(S,1,24,70,ErrorPosition,True); if S<>Chr($FF) then begin Evaluate(IsForm,S,Result,ErrorPosition); if ErrorPosition<>0 then Flash(15,'Error at cursor'+^G,false) else Flash(15,' ',false); end; until (ErrorPosition=0) or (S=Chr($FF)); if IsForm then NewStat:=NewStat+[Formula]; end; {.CP20} { Procedure GetText calls the procedure GetLine with CellStatus:=[Txt]; Contents:=''; end; I:=Succ(I); end; until not (OverWritten in Screen[I,FY].CellStatus); with Screen[FX,FY] do begin CellStatus:=[Constant]; if IsForm then CellStatus:=CellStatus+[Formula]; Value:=Result; end; end; end; {.PA} { Procedure GetCell finnaly starts here. This procedure uses all } { all the above local procedures. First it initializes the temporaly } { v the current } { cells X,Y position as parameters. This means that text entering } { takes place direcly at the cells posion on the screen. } procedure GetText; begin FlashType; with Screen[FX,FY] do GetLine(S,XPos[FX],FY+1,70,ErrorPosition,False); end; {.CP20} { Procedure EditCell loads a copy of the current cells contents in } { in the variable S before calling either GetText or GetFormula. In } { this way no changes are made to the current cell. ariable "S" with the last read character. It then depending on } { this character calls GetFormula, GetText, or EditCell. } begin { procedure GetCell } S:=Ch; ErrorPosition:=0; Abort:=false; NewStat:=[]; if Ch in ['0'..'9','+','-','.','(',')'] then begin NewStat:=[Constant]; if not (Formula in Screen[FX,FY].CellStatus) then begin GotoXY(11,24); ClrEol; ClearCells; GetFormula; end else begin Flash(15,'Edit formula Y/N?',true) } procedure EditCell; begin with Screen[FX,FY] do begin S:=Contents; if Txt in CellStatus then GetText else GetFormula; end; end; {.PA} { Procedure UpdateCells is a little more complicated. Basically it } { makes sure to tag and untag cells which has been overwritten or } { cleared from data from another cell. It also updates the current } { with the new type and the contents which still is in the temporaly } { variable "S". ; repeat read(Kbd,Ch) until UpCase(CH) in ['Y','N']; Flash(15,' ',false); if UpCase(Ch)='Y' then EditCell Else Abort:=true; end; end else begin if Ch=^[ then begin NewStat:=(Screen[FX,FY].CellStatus)*[Txt,Constant]; EditCell; end else begin if formula in Screen[FX,FY].CellStatus then begin Flash(15,'Edit formula Y/N?',true); repeat read(Kbd,Ch) until UpCase(CH) in ['Y','N']; Flash(15,' INTRODUCTION MicroCalc is a tiny spread sheet program a la VisiCalc. It is provided with the TURBO-Pascal system as an example program. Since MicroCalc is only a demonstation program it has its limita- tions (which you may have fun eliminating): * You cannot copy formulas from one cell to others. * You cannot insert and delete lines or columns. In spite of its limitations MicroCalc does provide some interest- ing features among which are: * 11 digits float ',false); if UpCase(Ch)='Y' then EditCell Else Abort:=true; end else begin NewStat:=[Txt]; ClearCells; GetText; end; end; end; if not Abort then begin if S<>Chr($FF) then UpDateCells; GotoCell(FX,FY); if AutoCalc and (Constant in Screen[FX,FY].CellStatus) then Recalculate; if Txt in NewStat then begin GotoXY(3,FY+1); Clreol; For I:='A' to FXMax do LeaveCell(I,FY); end; ing point reals (Thanks to TURBO Pascal!) * Full set of mathematical functions (SIN,COS,LN,EXP etc.) * Built in line editor for text and formula editing. * Text can be entered across cells. * Once entered a formula is protected from accidental erasure. .PA In addition to this MicroCalc offers all the usual features of a spread sheet program: * Load a spread sheet from the disk. * Save a spread sheet on the disk. * Automatic recalculation after each entry. (May be d end; Flash(15,' ',False); GotoCell(FX,FY); end; {.PA} { Procedure Format is used to } procedure Format; var J,FW,DEC, FromLine,ToLine: integer; Lock: Boolean; procedure GetInt(var I: integer; Max: Integer); var S: string[8]; Err: Integer; Ch: Char; begin S:=''; repeat repeat Read(Kbd,Ch) until Ch in ['0'..'9','-',^M]; if Ch<>^M then begin Write(Ch); S:=S+Ch; Val(S,I,Err); isabled). * Print the spread sheet on the printer. * Clear the current spread sheet. The spread sheet is an electronic piece of paper on which you can enter text, numbers and formulas and have MicroCalc do calcula- tions automatically. The next page shows the electronic spread sheet. .PA ---------------------------------------------------------------- A B C D .... 1 22.00 2 1.00 3 2.00 4 3.00 5 28.00 . . A 5 Formula: (A1+A2+end; until (I>=Max) or (Ch=^M); if I>Max then I:=Max; end; begin HighVideo; Msg('Format: Enter number of decimals (Max 11): '); GetInt(DEC,11); Msg('Enter Cell whith remember if larger than 10 next column will lock: '); GetInt(FW,20); Msg('From which line in column '+FX+': '); GetInt(FromLine,FYMax); Msg('To which line in column '+FX+': '); GetInt(ToLine,FYMax); if FW>10 then Lock:=true else Lock:=False; for J:=FromLine to ToLine do begin Screen[FX,JA3+A4+A5) ----------------------------------------------------------------- In the example the next last line shows that the active cell is cell A5 and that A5 contains a formula: (A1+A2+A3+A4) which means that the numbers in A1,A2,A3 and A4 should be added and placed in A5. The formula can be abbreviated to: (A1>A4) meaning: add all cells from A1 to A4. .PA You move the cursor around just like you do in the TURBO editor: (Up) ].DEC:=DEC; Screen[FX,J].FW:=FW; with Screen[Succ(FX),J] do begin if Lock then begin CellStatus:=CellStatus+[Locked,Txt]; Contents:=''; end else CellStatus:=CellStatus-[Locked]; end; end; NormVideo; UpDate; GotoCell(FX,FY); end; Video; UpDate; GotoCell(FX,FY); end;  Ctrl-E (Left) Ctrl-S Ctrl-G (Right) Ctrl-X (Down) A cell may contain a number, a formula or some text. The type of of the cell and its coordinates are shown in the bottom left corner of the screen: A 5 Formula: (Means that the current cell is A5 and that it contains a formula) A 1 Text (Cell A1 contains text) A 2 Numeric (Cell A2 contains a numbe try MicroCalc now you may use the /L command and load the file: CALCDEMO. åååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååår and no cell references) .PA Summary of MicroCalc Cells are denoted A1 through G21 giving a total of 147 cells. Summary of standard functions and operators: SIN, COS, ARCT, ABS, FACT, EXP, LN, +,-,/,* Futhermore the operator '>' can be used to denote a range of cells to add. Entering data To enter data in any field move the cursor to the cell and enter the data. MicroCalc automatically determines if the field is numeric or a a text field. When moving be“P To: B. Osss S: string[8]; Err: Integer; Ch: Char; b  From: O. P. Timisttÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ (B3)ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ kjhlkjfdsahfsdalkjhfksjhdafkjldshfalkjdsaf skajfsÿÿÿÿÿÿÿÿÿÿ 034909ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ D As you requested I have compiled a sales budget for our three majorÿ E products covering next yetween fields: ^S,^D,^E,^X move left right up and down. When editing a field ^S,^D moves left and right. ^A,^F moves to beginning/end of line. DEL,^G deletes left or right character. ESC makes it possible to regret changes and to edit an existing cell. .PA Summary of commands / will restore the screen Q will Quit MicroCalc L will Load a spread sheet from the disk. S will Save a spread sheet on the disk. R war by quaters. I have assumed an increase d > of 20% every quater for Super A and 10 pct for Super B and C.ÿÿÿÿ 1;r;r;r;r;r;r;ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ A Product 1. Quater 2. Quater 3. Quater 4. Quater Year Totalalÿ C -------------------------------------------------------ÿ  Super Adfskjdfskjlkjljlsafjfshdkljhfdsjfhkjfdkljfakljakjhkjlhfdsÿÿ  Super Bl{kjdl{kds{lkdjs{lksdjf{ldksfaj{lkdjsfl{kdjf{lkdjfill Recalculate P will Print the spread sheet. F makes it possible to change the output format for numbers. A switches Autocalc ON and OFF Note: to use scientific notation use the the F command and enter minus one -1 for the number of decimals. .PA EXAMPLES The following are examples of valid cell formulas: A1+(B2-C7) subtract cell C7 from B2 and add the result to cell A1 (A1>A23) the sum of cells: A1,A2,A3..A23 l{kdjf{lkjfd  Super Cÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ A -------------------------------------------------------ÿ  Year totalÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ B ===================================================== ÿÿ 22ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ B To simulate sales just change the numbers for the first quater. ÿÿ (A1>A19)ÿ(A1>B5) the sum of cells: A1..A5 and B1..B5 The formulas may be as complicated as you want:  SIN(A1)*COS(A2)/((1.2*A8)+LN(FACT(A8)+8.9E-3))+(C1>C5) To edit an existing formula or text simply move to the cell and press ESC, make your changes and press . If you make a mistake you may press ESC again, the old value of the cell will then be restored. To try MicroCalc now you may use the /L command and load the file: CALCDEMO. ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ kjdsflkdjsalkdjfsklj{fdlkjfsdflk{dfl{kjdfkljsdkljsfkljsflkjsdkljfsdlkj 3ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 2354ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ (C3+A3+C3)ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 22ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 33ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 23ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ # (B12*1.2)ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ†efff # (B13*1.1)ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ…efffJ # (B14*1.1)ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ…˜™™™A 435ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ # (C12>C14)ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 335ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ (A8)+A4ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 23ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 54ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 45dskdklfklfkldsalkdsfdklklfdlkfdÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ‡13332 34ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 43ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 34ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 43ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 43ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 2ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ !330fllkfdasklfkskfldÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ† !2330ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ…8 !22000ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ…0 45ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ # (B12>B14)ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ‡ 34ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 4ÿÿÿÿÿÿÿÿÿÿÿÿ 32ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 543ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 45ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 345ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 3254ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 3ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 435ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 34ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 34ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 34ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 23ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 325ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 400ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 23ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 23ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 4ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ # (C12*1.2)ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ†Eáz> # (C13*1.1)ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ…: ×£^ # (C14*1.1)ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 3332ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 11ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 33ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 35ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ (C3>C6)ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 32ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 23ÿÿÿÿÿÿÿÿÿÿ…Y�ÂõT 435ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ # (D12>D14)ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ‡×£ðK 34ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 43ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 34ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 34ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 32ÿÿÿÿÿÿÿÿÿÿ 54ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 543ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ (A1)ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 43ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 2ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ Year totalÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿój§± ©±k;ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 223ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 324ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 253ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 23ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 3454ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 234ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ2ÔCAFk¯±ÍUSLLEC )äµ±ØFMUS )ä¶±ØFE )ä·±ØF # (B12>E12) ójº±ÙFMUS ój¼±ÙFE ój¾±ÙFEDLO ïÝÀ±ÆSkÁ±Æˆ/Ý$1 # (B13>E13)jȱÌ ójʱÅEój̱ŽÝõ1ÓEMANNOITCNUFDRADNATS ‡ö~j|U # (B14>E14)½ÝÔSILNOITCNUFDRADNATS   ÔCAFF ÐXEF‡ X94L FÎLF ÎATCRAF ój1°ÈTGNELFäoäoMEÓLLECETAD # (F12>F14)LECTIDEäoäoœDÔXETTEGäoäo¯C ûj°ÈC ój°‰L�—þ@ ÿ€¶Þ°Ó ój°ØAMój °ÿÉ ÿÿÿÿÿÿÿÿÿÿÿÿÿÿ l|{dsfa{dsf{l|dsa{lds{lfd{lkfdÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 32ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 32ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 23ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 43ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ # (D12*1.2)ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ†¸t“ØAMójÉójÿój¯ÉF FääoäoOÒETNECâoâoOÅMOCLLEWâoâoôMÓDNAMMOC âoÌJÔAMROF!ÙFójØF)äãoãoçBÌLECTEG?ÅSACREPPU kÓOPRRE NLOCójÓFäÿâoâo³>ÅNILTEGâoâo=ÅTALUCLACERAÓOPRREó ÿÁLUMROFFäÿÁLUMROFSI kÿâoâoc1ÅTAULAVE k+²ÍROFâoâ âoâo�+ÔNIRPâoâoí)ÄAOLâoâo )ÅVAS-ÅPYTEL Fäÿâoâo(ÅMANELIFTEGÎELIFFä^µ kÈ'ÔSIXE eÿ€d # (D13*1.1)ÿÿÿÿÿÿÿÿÿýÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ…>‹lçt # (D14*1.1)ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ…F7‰Aj 435ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ # (E12>E14)ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ‡ü*‡Öi 3ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 43ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 34ÿÿÿÿÿÿÿÿÿÿÿÿ IL ÿ€îàĵÅMANELIF ÿ€ á³GNIRTSâoâoí& âoâo&ÔHGIREVOMâoâow%ÐUEVOMâoâoÜ$ÎWODEVO oâoG$ÅTADPU#ÙFójØF)äâoâoY#ÌLECEVAEL"ÙGójØG)ä ECOTOGâoâo !ÅPYTHSALFâoâox ÒAELCãoão­ÔI âoâo¼ÄIRGâoâoiÏTUA&ËNILB kÓFäØójâoâoÏÈSA âoâo£ÇSM k*¸ÃLACOTUA °ã0 �â+¸ÅLIFCM ûjÛ¸È ÙF )äÞ¸ØF ã߸ÎEERÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 43ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 32ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 23ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 32ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 543ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ 435ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿCS ä)jó èâ•ÓOPX -ðä)ã    ãÓLLEC P  <ãO×F <ãNÃED  V Gã¶mãÓTNETNOC ã¶ŠãÓUTATSLLEC 0ãÃER   ÄETALUCLAC  ÄEKCOL ÎETTIRWREVO ÔXT   ÔNATSNOC¶ãÓETUBIRTTA GA )äØEDNINEERCS ÿ TSYNA  ØAMYF ûj”ØAMXF ójÒEGETNIûjÒAHCkÌAER k kÔXETkÅTYB  ÅURT ÅSLAF ÿ ÔNIXAM ‚åååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååå!¢ÚI ÉP  O kÊÔUPNI k¸ÎOC k»ÍRT k¾ÄBK kÁÔSL kÄ kÇÒSU kÚÎELFUBójÍÒTPPAEHójÏÒTPRUCERój¡ÒTPTSN ÒTPNINOCój§ÒTPTUONOCójªÒTPTUOTSLój°ÒTPNIXUAój­ ój¶ÒTPNIRSUój³ÒTPTUORSU SYSLIST Í9æÆ0Ãßã.0¸8�,ùGy·} þ0( ÍßãxÉõ!ø^~þøŒæ ( Ë(|æñ!¸0o) h4GhG4GG GŽh4G@G GGG¯2©é2½éåÍ�é"Í�éÍÉìæ ãxÉõ!ø^~ååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååøŒæ ( Ë(|æñ!¸0o) h4GhG4GG GŽh4G@G GGG¯2©é2½éåÍ�é"Í�éÍÉìæ ãxÉõ!ø^~åååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååååå