FIX COMxFIX DQC@$:BIOS SELECT DRIVE,BLOCK,CHECK FOR CONFLICTS,DIRECTORY,DISK PARAMETERS,ERASED FILE DIRECTORY,FINISHED,FIX BAD SPOTS,HELP,MARK BAD SPOT,RECOVER ERASED FILE,RESET DRIVE,SELECT DRIVE,TRACK AND SECTOR,TURN OFF DISPLAY OF BAD FILENAME,VERIFY,WHAT FILES,WHERE IS FILE@kZRH;>;AR?VK?Y@ZBL&[LWP ':!!='>2!P '><2Su':!!>U' Q2!:!!>6uwyPR':!!=M'>2!PR'>>2!u':!!:u' Q!=u'>_2!P:!2+>}24!:4!og"2+:+!ʮ'!+V"+:+}25!:5! 26!:5!!Z!6!'>(:5!!a27!:5!!z!7!'>(>}28!:8!ogͲ'29!:8!og'(!9!}2:!::!!02;!::!!9!;!R(>Ù(::!!A2Ù(::!!a2=!::!!f!=!ʖ(>Ù(>}2>!P2?!:?!! 2@!:?!! !@!(P2?!è(:?!!>!4 ):>!!_2A!:?!!:!A!)P!=)! c"B!! "D!>2y+>!U! >og"O!*O![D!~2F!!#5ʺ*:F!!02Y!:F!!9!Y!s):F!og0R}2F!):F!!A2Z!:F!!F!Z!ʸ)*B!8ʢ)!c:F!ogAR }2F!):F!!a [!:F!!f![!)*B!8)!c:F!ogaR }2F!:F!!.G**B! 82\!:y+!!\!)*!c>2y+>g!K! > g!G! í*:y+!t*!U!*B!/:F!*g!U! í*:F!g!Q! !Q!!G! !K!!K! !G!! ] Ͱ !G! *O!"O!0):y+!*!K!!U!m `!))[+ +!U!!))[+ !))[+}2]!:]!!a2^!:]!!z!^!@+:]!og R}:]!F+8 $!9;>+++O8:n3/ )+  +  +. V>O>,;p?p?p&,DEFINE BYTE INTEGER GOTO FUNCTIONEXTERNALGLOBAL LOCAL IF ENDIF ELSEIF FOR ENDFOR RETURN END TO BY ARRAY STRING WHILE ELSE LABEL DATA INCLUDE IDENT ENDWHILEENTRY IMPLICITFIELD LIST NOLIST REAL LONG CIF CELSEIF CELSE CENDIF UNTYPED NORST CTYPE h--/V3:O8///,;;;K<>:-?O>V>n34d>;u331?7>:i7)698D8f3^35???,@]>e@`A( !"2+:+!ʿ.!/"+*+[+ .>2K+À.!V3"+*+[+%.>2K+À.!^3"+*+[+@.>2K+À.!f3"+*+[+[.>2K+À.!O8"+*+[+y.!8BÀ.!c!"2+:+!52+!O8"+*+[+8!+ʴ.!'c:K+og8B*+"z+!_͙(9!+ !+*z+`R>og*z+[L+͙>og*z+[P+͙>og*z+[X+͙!+!))[+ :y+!?/>2K+ð/!+!/|!/5b/>2K+ð/!)[+2+!)[+2+!)[+ !+!+ʫ/>2K+ð/>2K+:K+og*z+[\+͙vS>2}+]>2}+]>2}+]>2K+!"2+:+!k1!O8"+*+[+0:h1!:"+*+[+,0:h1!n3"+*+[+a1GT*+"z+*z+[R+P0eT![ʚ0![͙(,E"+:K+og[D+~og[+͓"+!]͙(â0>og"+:}+!50*r+*z+`R*+̀J0*r+*z+`R*r+"r+!͈D>og*z+[L+͙:}+og*z+[N+͙>og*z+[P+͙>og*z+[T+͙:K+og*z+[\+͙*z+[R+PV1!?0S]1!?0ESh1!cô1:+!ʁ1! cô1:+!ʴ1!+[L+Pʭ1! cô1!c*+"z+*z+[R+PO2:K+!1*p+"p+ 2:K+!2+:K+!!+ 2*p+"p+*r+*z+`R>og*z+[P+͙:K+og[D+~og[r+"r+:K+og͈D2eT!=ʁ2!=͙(,*z+`R>og*z+[P+͙2:K+og[D+~2+eT!_2!_͙(:}+!ʹ2!"2*r+:+ogK:}+!52*r+*z+`R*r+:+_W"r+>og*z+[P+͙>og*z+[L+͙:}+og*z+[N+͙:K+og*z+[\+͙*z+[R+PN3!/SU3!/ES>2K+/>2K+/>2K+/!1cGT*+[R+Pʒ3!c>og*+[L+͙>og*+[N+͙>og*+[P+͙>og*+[\+͙*r+*+`R*r+"r+!͈D!u3SS*+"z+*z+[T+P 4!cT4*z+[R+P=4!0cT4*z+[N+PT4ͭX*z+[\+P}2K+:K+og[D+~2+![͙(,:+*E"+!]͙(!_͙(*z+"R*+/g!/gE"+*+:+ogKeT!,4!,͙(*+:+_W"+÷4vSGT*+"z+>og*z+[L+͙>og*z+[P+͙:}+og*z+[N+͙>og*z+[T+͙>og*z+[\+͙*z+[R+P6:}+!5t5*r+*z+`ReT!_ʶ5!_͙(eT!"5ʚ5! c͎P"+:}+!5ʳ5*+>I5eT!(5!(͙"+!)͙(5>og"+:}+!55*+I!4ES(6*r+*z+`R*r+"r+!iSGT*+"z+>o( FIX version 1.9 as of 4 Feb 82  *z+Breaking out of setmap.   2+!:͙(,C2+:+!(Running under CP/M version %h.%h !/5:+!=?og"+*+:+o"+*WParameters for drive %c: xSectors per track: %d-%d Number of tracks: %d Storage capacity: %dk Directory entries: %d Block shift factor: %d Block mask: %d "Block size: %d 8+Directory allocation blocks: %s (%hH) e!Operating system tracks: %d Extent mask: %d #Checked directory entries: %d BIOS SELECT DRIVE(drive,[track,sector]) Selects drive directly through the BIOS. The reason for having this function is so you can select a disk with a bad directory. If you use this routine to select the disk, all that will happen is the drive will get selected. CP/M will not know that you have selected a new drive, so don't be surprised if DIRECTORY doesn't give correct answers. [track,sector] is optional. If present, track sector will be read. Display of bad file names is automatically turned off by this command. Examples: BIO sel(B), b s(c,3,21), etc. JBLOCK(block number) Gives the file name in which the block occurs. Examples: block(15), bl(243, b(10, etc. gCHECK FOR CONFLICTS Scans the directory for files that overlap. Files are deemed to be overlapping when they have at least one block number in common. When a conflict is detected, the names of the two files that conflict and the block number at which they conflict are typed. Examples: check for conflicts(), c f c, c f(), etc. >DIRECTORY Gives a sorted directory listing of the currently selected drive. This routine will NOT work properly with disks that have more than 512 directory entries. DISK PARAMETERS Displays the disk parameters of the currently selected disk. For 1.4 systems, the following parameters are displayed: sectors/track, block shift factor, block mask, number of blocks, capacity of disk, number of directory entries, directory block allocation, and the number of tracks reserved for the operating system. For 2.2 systems, the extent mask and number of checked directory entries are also displayed. ERASED FILE DIRECTORY Same is DIRECTORY command, but the files displayed are files that have been erased. These files may be recovered using the RECOVER ERASED FILE command. #FINISHED Return to CP/M. tFIX BAD SPOTS([ALL]) Fix does two things: (1) Displays the track, sector, block and file (if any) that contains the bad spot and asks if it should attempt to fix it (by reading the sector, writing the sector, and reading it again). (2) Asks if the user wishes to place the bad block a bad spot file. IMPORTANT! The VERIFY command must be used before FIX is called. To get back to the main program without going through all the badspots, the user can hit the Escape key (ESC) followed by a carriage return when the computer asks 'Try to fix it?'. If you want to place all the badspots in a file without going through all the questions, call fix with the optional argument of ALL. FIX will then merrily place all the badspots in a file and return to the prompt. Examples: FIX BAD, fix, fix(all), f b(all), f b, etc. 0`HELP(command) Displays all commands or one command in detail. For instance, typing 'help' would give you a list of all the commands. Typing 'help(list)' would give you a brief description of what the command 'list' does. As with the rest of the commands, HELP can can be abbreviated (e.g. he, hel, he(di, h(fix), etc.) qMARK BAD SPOT(track,sector) Adds the block corresponding to track and sector in BADSPOT.!!! file. If bad spot file doesn't exist, one is created. This command is used when there is a known bad spot on the disk that for some reason the VERIFY command doesn't find. Examples: MARK BAD(45,6), mark(23,23), m b s(3,16, etc. "RECOVER ERASED FILE(filename) This function attempts to recover the erased file given by . A check is made to see if any of the erased file's blocks have been re-allocated. Re-allocation of a block means that a piece of the file has been destroyed. The file will be recovered anyway. Examples: RECOVER(D.COM), recov(fix.spl, recov(junk.???), etc. #PRESET DRIVE(drive) This function resets the disk system and selects drive . This enables you to change disks without having to reboot. A typical use for this routine would be if you were verifying a bunch of disks and fixing all the errors on them. Examples: reset drive(b), r d(p), reset(A, etc. $SELECT DRIVE(drive) This selects the disk drive to which all subsequent disk accesses will take place on this drive. The default drive is whichever drive is logged in when this program is run. Examples: s d(b), sel(c, s(a, etc. %TRACK AND SECTOR(track,sector) Displays the file name of the file containing the track and sector . Examples: t a s(12,23), t(76,5, t a(34,15, etc. & TURN OFF/ON DISPLAY OF BAD FILENAME(switch) This function is here so that you can control whether or not FIX will display the name of a bad file when it encounters a bad sector while doing either VERIFY or FIX BAD SPOTS. When the directory of the disk you're checking has a bad sector in it, you should turn the display off, otherwise, leave it on. is either 'off' or 'on' (upper or lower case). The default is ON. Examples: T O D(OFF), T O(off, t off/on(ON, t o(on, etc. (VERIFY(initial track,final track) This routine reads every track between the initial track and the final track. If neither the initial track nor the final track are specified, all the data from the directory track to the last track is verified. Unless explicitly asked for, VERIFY will not attempt to read the system tracks (tracks 0 and 1 usually). This is because track 0 is usually single density and if the rest of the disk is double density, FIX thinks that ALL the tracks are double density. The current track is always displayed on the screen. If an error is found, it displays the track, sector, and block in which the error occurred, and the file name (if any) in which the error exists. These are stored in an array that is later used by FIX BAD SPOTS. Hitting the Escape key (ESC) at any time will abort. Examples: ver(0,76), verify(45,55, v(34,34, v, verify, etc. g,WHAT FILES(track,track) This command displays the names of all the files that have data between the two tracks specified. Hitting the Escape key (ESC) at an time will abort. Examples: what f(10,11), w f(3,76, w files(5,5), etc. h-WHERE IS FILE(filename) Displays all the track, sector, and block numbers that occupies. For instance, if the file FOO.BAR occupies all of block 2, the following might appear: FOO.BAR: Track: 2, Sector: 20, Block: 2 FOO.BAR: Track: 2, Sector: 26, Block: 2 FOO.BAR: Track: 2, Sector: 6, Block: 2 FOO.BAR: Track: 2, Sector: 18, Block: 2 FOO.BAR: Track: 2, Sector: 24, Block: 2 FOO.BAR: Track: 2, Sector: 4, Block: 2 FOO.BAR: Track: 2, Sector: 10, Block: 2 Hitting the Escape key (ESC) at any time will abort. Examples: w i f(hi.ho), w i(d.com, w i(badspot.!!!, etc. /H<. "#$%&(e,f-!022Q"3-0*Put new diskette in drive %c:, type CRY0 R[7Qwi0Unable to select drive."~+*~+TU!c*~+0"Need argument of 'OFF' or 'ON'0OFF0OFR0ON0"Need argument of 'OFF' or 'ON'R!+U!+͙(1R!-#10### Error in directory: track %d sector %d og*R[\+a1*p+*R`R>og*R[P+͙1111????????.???+[L+͙>og*z+[P+͙111*z+[T+͙>og*z+1MP"R>og*R1????????.???+1+There is a conflict, but ah dunno whar.$2#File %s conflicts with file %s I2at block %d (%hh) b2 There n2are no conflicts.2is 1 conflict.2are %d conflicts. ʴ22Ré2)Block %d (%hH) is already allocated 2+Block %d (%hH) is already allocated to 31...Funny, I can't find who it's allocated to.G3))[+ !)[+2R!k3&Can't find %s as an erased file. tX!)[+3 Track:%3d R3' ### ERROR: Track: %d, Sector: %d3 Block: %d (%hH) 3Error not in a file4Occurs in file: %S X+4+More than %d bad blocks on this verify.X4> Use the FIX command to store the bad blocks just found.46To get the rest of the bad blocks, use the command4)VERIFY(%d,%d), then do another FIX. 4 No bad spots detected.5 %d bad block-5 detected.=5s detected. 6P5BADSPOT.!!!a5\\\ Out of directory space.5BADSPOT.!!!5BADSPOT.!!!5BADSPOT.!!!5BADSPOT.!!!5&No more directory space available.++5BADSPOT.!!!6&No more directory space available.z Z36Z0w#"( !E6ZͩY!Q6No errors found.g6BADSPOT.!!!x6Track: %d, Sector: %d, 6 Block: %d6 File: %S is BAD. 6 is BAD.6Try to fix it? 6Failed to fix. Try again? 7 Sector fixed.7Add to bad spot file? 47BADSPOT.!!!E7\\\ Out of directory space.f7Unable to close BADSPOT.!!!>  7"Track %d, sector %d (block %d)7 now in BADSPOT.!!! !"( *& >7MMz\*& ~02V^"8%s: Track:%d, Sector:%d, !8Block: %d (%hH) \UND<8%s: Track:%d, Sector:%d, [8Block: %d (%hH) ct8Block %d not in a file. 8%s contains block %d u`*r+8$No file at track %d, sector %d 8 %s is at track %d, sector %d8 (block %d) ͯ_IZ!" <[}Z$9&9fn* AP(897 ### Error. Start track greater than final track.q9, ### Error. No files on system tracks.9????????.???_9%s is on track: %d 9%s is on track: %d 9%s is on track: %d zY* :%s is on track: %d =*͛>2}>*E*Q"s*s"u!>* **{k*͛6:*F"*#"*H[-:*F"*[FRʹb[N:*"t!:*͗Ì:**)[ Ur:>\og"![~!D;*3[Fͩ* ͖_*͗!̈́c*͛!̈́c*͛*N! [~ogͩ"! [~og["@![~ogͩ"! [~og["B:5(!>(!d!*:R-!͟*3@Ϳ*B@x!@xV"D*:<>og"L<>og"L=*4"![~og"3![~og"<![~25![~26:6ogͩ"8![~og":![~ogͩ">![~og"B:5(!>(!d!*:R-!͟*3@Ϳ*B@x!@xV"D*:Ս"J!ʹb"F*F=*3R"H=*3"Hj:>og"!!K2|!! K"8>>og"*C*Ս*!Ϳ͊b-;*E?"/"1*/"3*:@ʖ>*1)[3)ã>*1[/~og"5"7"9*5";*:@>*9*7)[;U>*9*7[5s:|Aog*U!Ϳ*H*F*v!Ϳ*D*!Ϳ*8Ս[:ͩ*!Ϳ*<*!Ϳ:5og*!Ϳ:6og* !Ϳ*8* !Ϳ*=E!!*=*>G*>*=*6!Ϳ*B*c!Ϳ*N?:7og*!Ϳ*@*!Ϳ!?*/**=p*_2*0:*0og*+0!Ϳ*0x*W0͛:*0ogAR}2*0:*0ogE@!D@Y@"_0!! K*"_2|:|ogAR}2|:|og!K͊b-;>og"*"_2|:|ogAR}2|:|ogbog@*g0͗>2}-;>og"*{NA*"! *^"c0! *^"e0*e0*e0*c0!bH"0"0*0E>20>og"0*0#"0> og[0-A*0[0~! 9ʪA*0 ʓA:0!ʓA*0!.>20*0*0[0~ogA:0!A>20*0!.CA"0*0"20:0!a(20:0!z!0B:0og R}20:0"0"0*0-"0*0-"0*0{"0*0{"0*0[0NOB>*0{"0>20*0{"0:0og20*0N!0ʯB*0A20*0A20:0!0JʬB>20^B*0*0a*0*0a:0*{B*0͗*0* B20*0* B20:0og20:0og!0'C>2}MC*0* BogFC>2}MC*0͗*8*a"1*1)[ )" 1* 1[FRʹb" 1" 1* 1]C"1* 1[BR[3ͩ[1R"1>!5I21*1:1_WՍ"1>!5Iog[1ͩ[3Ս[B"1!:5_WX[1ͩ[3CrC"1*[<21:~!!1ʔE*CD*"*3R"1*[1@ʔD*">og"*ʹb**wb!KD***!1!Ϳ>*C ͩ[w"1>og"1>2~:~og2S1*1 !S1QE*1[1~!?KDE*1[1~2T1*1[1~2U1:T1!U1JDE>2~*1"1D*"![1~og2V1![1~og!V1ʑE>og"0D:~ogʼE>2~*RC}ÿE>"W1>og"!"*B">2~*W1(D"Y1*_1*1h>?! [_1w>2]1*gE*_1ͿE2^1:^1ogN21:]1!!1G*:ʦF:^1!og"[1*[1#"[1>og[[1-ʣF*[1[1~og[Y1ʠF>2]1oFG:^1!og"[1*[1#"[1>og[[1-G*[1)[1)[Y1F>2]1F:]1!G*_1(D2^1F:]1!+G>]G*:FG*1R"1RG*1R"1*g*1!A>"1"1*1Ս"1*1C}21>21>og"1*1#"1:1og[1-ʺG:1!y21ÔG*1[1~21:1!1!KG>G>"1"1*1Ս"1*1C}21>21>og"1*1#"1:1og[1-9H:1!y21H*1[1~!1*1[1w!"1*J*1!ͩ>og"1!!K*1*1h>?! [1w*1!K21:1ogNʦI:1!og"1*1*1h>N21*1[L!1ʕI*1*1h>"1*1*1`Gog}I*1E!2I*1͗*1E*1*1R!A*g*1*"2!Ϳ*1*1*G2!Ϳ*1"1ÈI*1*1G*1"1H*1!K21àH*`2͛*1I*l2͗I*1I*2͗I*1*2!Ϳ"2!!K"2*2"2*:J![2~ogͩ[8Ս"2![2~ogͩ[8CNYJ*2"2>og"2*2#"2*2[2-J*2![2[2~og`GogJ![2[2~og![2[2~og*2!ͿcJK![2~ogͩ[8Ս"2![2~ogͩ[8CNK*2"2>og"2*2#"2*2[2-K*2![2)[2)`GogʽK![2)[2)![2)[2)*2!Ϳ![2)[2)EogʶK*g͗ýK*3͗#K*E3*h>![E3w>?! [E3w*E3ͿEog"g3*g3L**i3!Ϳ*8*a*g3 ͩ"g3*w[g3I>*g3[ww*ʹb**w c*E3(Dog"g3*g3NʷL*g3 ͩ"g3*w[g3I>*g3[ww*ʹb**w c*E3(Dog"g3cL*8*a*{L*B"*DR"!M! *^"*{M*"!M! *^"*"3>og">23*3[23:3!!3ʎO*3*3!Ϳ*H[FR!*3!b"3*3N23:3!!3pOt!K+O*3*3*3!Ϳ*3*3͉C"3*3*3*3!Ϳ:}og N*3E!M*3͗ N*g* 4!Ϳ*SN*3*)[ U*3*)[U*3*)[ U*"N>23>og"3*3#"3*R[3-ʚN*3)[ )[3ʗN>23bN:3ogN*3*)[ U*3*)[U*3*)[ U*"*3]C[HN!"3(O*3]C"'4*H[FR*'4[FR*3!b"30O>23*mO!*)4!Ϳ*V4͗*4͗**3*4!ͿyM*3"3t!ʋO>234Mt*ʨO*4͗O**5!Ϳ*O*+5͗O*;5͗*Q*N5h*Q!Kog`P> og"L5*L5#"L5>og[L5-'P>*L5[QwP*Q!KogHP*_5͗H>![Qw>og"OûR>2N*Q*5h>! [Qw*Q!KogNP:N!72N*Q*5h:N!7! [Qw}P*Q*5h:N! [Qw*Q!K>og"O*:Q*O[s~!K25*O!5)Q*O"OP*O[s~!K25*O-!5Q:N!72N>og"O*Q*5h:N! [Qw> og"L5*L5#"L5>og[L5-ʨQ>*L5[QwÂQ*Q!KogQ*5͗H>![QwûR*O)[u)N25*O!5 R*O"OQ*O)[u)N25*O-!5ʻR:N!72N>og"O*Q*5h:N! [Qw> og"L5*L5#"L5>og[L5-ʍR>*L5[QwgR*Q!KogʮR*6͗H>![Qw>og"O>2N>2-6*"_!AS*{NR*"R>2N6S>2N6*S*O6͗>og")6*)6#")6*R[)6-MV*)6)[ )Eog}S>2/6*e6*g BogzSJVÂS>2/6*)6)[ )*)6)[)*v6!Ϳ*)6)[ )*6!Ϳ:/6ogS*g*6!ͿS*6͗:N6!T*6͛*C6E*C6x*C6_2.6:.6!!T:.6!YʨT*)6)[ )*)6)[)hb!206:|ogE@:|og!K:06!ʛT*6͛*C6E*C6x*C6_2.6åT*7͗JV!T*7͛*C6E*C6x*C6_2.6T>Y2.6:.6!YJV:-6!TO>2-6:/6ogU*16*gh*16!K*:![Qw>![Qw*Q!K*Q*27h> og"+6*+6#"+6>og[+6-U>*+6[QwU>og"O:N2N:N! [Qw*Q!Kog=V*C7͗H>![Qw%S:-6ogʡV:6og[Oͩ![Qs>![Qw*Q!KogʡV*d7͗! *^"7! *^"7*7*7͉C"7O*:V*7*O[ssV*7*O)[uU![Q~!6![Qw>![Qw*Q!K*7*7*7*7!Ϳ*7͗*7"s*s"u*7*h>2N:6og"7>27*7!KogN27:7!!7[Z>og"7![7~og"7*:Y*7[s~!K27*7!727:7!!7X**7!A*7[s~og"7*7C"7*7C"7>og"7*7[727*7@!727:7!!7Xt!lX>27*7*7**8!Ϳ*7*7*8!Ϳ*7]C"7*7"7*7rC"7*7*7͉C[7NX*F"7*7"7*7"7*7R"7.X*7"7W>Z*7)[u)N268*7!68278:7!!78>Z**7!A*7)[u)"7*7C"7*7C"7>og"7*7[7288*7@!88298:7!!981Zt!ʫY>27*7*7**:8!Ϳ*7*7*Y8!Ϳ*7]C"7*7"7*7rC"7*7*7͉C[7NZ*F"7*7"7*7"7*7R"7mY*7"7Y:N!72N:N! [7w|W*8*a! *^"p8*p8E!ʛZ*p8*r8!ͿîZ*p8*g*8!Ϳ! *^"8! *^"8*8*8͉C"8*8E!Z*8*8*8!Ϳ%[*8*8*g*8!Ϳ*8*8!Ϳ! *^"9! *^"9*9[9@W[*69͗*9[Bl[*o9͗*9[Bʔ[*<ՍrC*9͉C"9â[*F*9͉C"9*F*9͉C"9*9C[9N[*9R"9[*9"9!!K*$9*9h>?! [$9w*gE*$9!K29>2!9*:ʢ]:9ogN29:!9!!9ʟ]:9!og"9*9#"9>og[9-ʎ]*9[s~og[9-29*9[s~og[9!929:!9!!9ʋ]*sR""9*g*"9!A*9[s~ogC"9*9*g*9!Ϳ*9[s~ogC"9*9]C"9>!5Iog[9R"9*9rC"9*9*9͉C"9*9[s~29*9:9_WNz]*9*g*9!Ϳt!ʋ]>2!9g\*$9!K29#\_:9ogN29:!9!!9_:9!og"9*9#"9>og[9-_*9)[u)[9-29*9)[u)[9!929:!9!!9 _*uR""9*g*"9!A*9)[u)C"9*9*g*9!Ϳ*9)[u)C"9*9]C"9>!5Iog[9R"9*9rC"9*9*9͉C":*9)[u)":*:[:N^*9*g* :!Ϳt! _>2!9]*$9!K29â]0_:_%s C_%s L_ U_%c]_.d_ k_%s t_%s }_ _%c_.=" _""_*"_Ս"$_*"_C"&_>og",_*$_@ a>og"(_*(_#"(_*$_R[(_- a*._E!!*._*,_d*._*8_!Ϳ*(_ͩ"*_**_#"*_*(_ͩ[*_-|`*._E!!*._**_[ _~ogd*._*A_!Ϳ)`*J_͛*(_ͩ"*_**_#"*_*(_ͩ[*_-`**_[ _~27_:7_! (2R_:7_!!R_`:7_og*S_!Ϳ`*[_͛Ñ`*b_͗*,_",__*&_@ b*._E!!*._*,_d*._*i_!Ϳ*$_ͩ"*_**_#"*_*$_ͩ[&_[*_-ʣa*._E!!*._**_[ _~ogd*._*r_!ͿOa*{_͛*$_ͩ"*_**_#"*_*$_ͩ[&_[*_- b**_[ _~27_:7_! (2_:7_!!_b:7_og*_!Ϳb*_͛øa"0c"4cVc\cK0cʹb"2cDMYc_c *0c[4cR0 *0c#"0c!*2cVc\cYc_cbc_c"c | } >26c26cOSc^#VS7c:6c 0* n&[7c!hcSc| } >^#VS7c"9c\cVcYc_c*9c"9c\cVcYcbc*9c*;c0physical = %d d }c~2h~2h~2hnf"h>(>2hnf"h*~62h~72h2hn8&"hn5&"hBK80)xcz2_d{2`d"h!"h:_d2_d:`d2`d;d*h5d*h DM:`dg:_d]d*h)"h*h)Wd#"hd<)cdKB7B0 =nd|}/o|/g#͕d ͛d~˿ͧd~#(_ͯd~#OF#|̈́d  ad{0} (>- x( 8G͕dͧd y2csh1ͯd*ebe:h( =GĖee͈f{h!>2h"h!Re\>?2h͇cͯdA2f?????????????2h!"h\ͯd*h#"h`ƀo&"h͇hTgͯdyqh"hyqh *hSh8 xqh[hSh8x8 e x(x0}MܖeyD8yghxgh~w*h&[cTad{(#"h:c2h2h2h2h:h!h_!h0:h(͕d {ͽg:h!hw:h2hh0 x -h:h=2h >2h~2h#:h2h*h,&dChChChxGyOzW{_ #q#!!O gh~o&))) *h:c7#h?(7#́>>*9*7)[;:>*9???????????! w#w#w#wSXibk 6 fnV^RDM[Xi#~:+ ~_@## ~.( ( a8{0 #  (![Xi#~a8{0 # * i?*=hi!*=*>*>*=*6!x?*B*c!ͥ?*4;?:7og*!ʹ?*@*!?!?*/***_2*0:*0og*+0!?*0*W0*;:*0j j\\\ No such command4j\\\ Command underspecifiedogXj^jdjV@X>-;>uj?*^jjAR}2|:|gog+>@*j>2}-j"*ͽ?A*͖@! *"c0! *@"e0*e0*e0*c0"kkk0>og"0/k&3kAvailable commands:LkSk \k\\\ No such HELP command="_i"ai"ci}2ei*fiE*fi{k!*fia*fi:eiogͻu*fi{²kk:eiogS*j͛:j!(l*fi*ai m" j:Zi2j*fi-" j* j-l*_iE:j!(ʥl>2j!l*fiL2j!)Knl:j!(]l:j2j*_i:jog2l:jogR}2j!Kʗl*_i:jog2l!l*fiL2j* j)[ci)" j!l* jG*_i{—k*_i-[ j*fiam* jl*j͗m*2j͗*fi͗mçk"Rj"Tj>2hj>og"ij!"kj!m*Tj*bjn2Zi*Rj*\jͣn!m*\j*Vjn*Vj*bjn!Kʆm:hj!{m!*ij"kj>2hj*ij"ijHm*kj"mj!?S*mj-"oj*mj8"qj!*mja*oj*mjm*mj͛! S*oj*mja*qj*mjm*mj͛*sj͗"zj"|j>2~j*zj*jͣn!n*jV2j! 9nn>2~j*|j*jͣn!n*jV2j:j!jʚn!n*jV2j:j! KIn!n*jV2j! Kʗn}ncn>2~j:~j"j"j*j[jR"j*j[[if[j*j[[iͯ*j[]if[j*j[]iͯ"j"j"j*j{"j*j7o*jE!j[jf2o*j*j[[if"j*j"j*jR"j-ʵo*j"2j:j!(2j:j!,!j2j:j!)!j2j:j!/!jʨoúo*j"jJo> 2j*j[jR"j*j[j*j[[iͯ*j[j*j[]iͯ:j"j"j"j*j*jͣn>og"j*j#"j*j[j-og"'k!p*k*kn*'k"'kp:"k!@Sq*'kR"'k>og")k*)k#")k*'k[)k-Pq*)k)[j)"+k*+k)"+k*+k͗*Jk͗qr:"k!22Pk:"k!3!Pkr:"kog0R}2"k:"kogR[-k~2$k*'k:"k_WR:"k_WՍ")k>og"+k*+k#"+k*)kR[+k-r*jE>2#k!#k4:"kogR:#k_W-r:#kog[)kͩ[+k"%k*%k['kr:#k!K4r*Qk*jͷ*%k*j*ko*k{"%k:$kog[%k-ʏr*k*jͷ*%k"%k:$k_Wʌr*j! hrr>og"%k*%k#"%k:$kog[%k-r*k"2Yk*j:YkogÙrq*j͗øqr2s*j*kͣn*j*j m"'k*'k-&s*'k)[j)"'k*'k)"'k*'k͗Ús*'kAs*Zk͗*jÚs*'kʚs*j*kͣn!s*k*kn*k-"'k*k*kn!Kʗs*'k*ka*k͗XsIäs sʹII*2;II*1*2!nI"2!!">"2*2"2*:HJ![2~ogD[8G"2![2~og!J[8GHYJ*2"2>og"2Ot2*2[2%HJ*2![2[2~og`GogIJ![2[2~og![2[2~og*2!IcJK![2~og=J[8(J"2![2~ogJ[8DJt (2>og uvvvvvv,w>w xiw>wwWww x4xBxPxxxxPxy$yyyUzBu user string too long to edit[2kju line edit internal errorEogWKʶK*gIýK*3ͱK#K*E3*̓H>=}2u"u*u{@u*@u͗>>2s>2s*sE*u*sͷ*s8"u*MtE:uogN(v:uogSg2s:s!Mv:sog)[u)&~*Mt{-gv!Sv*Mt:sog:sogz:s!ʖv!(v*sL(v>!s2s(v!z*Mt{{2s:sog|(v!z!z!!|(v!z!z!3~(v!z!w!3~v:s!w><2sw>>2s:sogz>!s2s{(v!z!w!3~,w:s!KTw:sogSMv!z!(v!3~Ww!z!z!!|(v!z*Mt{{2s!w͎~:sog|w:sog|!z*Mt{{2s!w͎~*Mt:sog(v!z!w!3~w!+z(v*s͛*uE*Mt*uͷ:s*s-}2s!91x:sogR*saåv!z!Z|`z!z!Z|Îy*sE*u*sm>2s!(v*Mt{{2s:sog|gx:s!ʪx! S*s{*s͛*Mt{(v!z*sL!%z(v:s!y*s͛*Mt8"bu*Mt-"du*bu[duR"s*sR"s-y! zxÕx(vg2sMv!z*Mt{{2s:s! Ky:sog|$y:sog|!z*Mt{{2s:s! KryKy*Mt:sog(v!z!Z|*sR"s-ʴy*s"!%zÎy(v*Mt{"fu*s{[fu"u*u@z:s!Ky!S*uR"u*s8[uR*sm*Mt8"u*s*Mtͷ*sE*Mt*sͷ*u*Mtm*s8"u>2sgx!z!Z|*sR"s-ʇz!z!z!3~`z(v:s!Kʶz*s͛:uogNʶz:uogz(v!S(v*uE*Mt*uͷ>*hu͗>}2u:s!K{:u!{:u@2u!^S:uogS"u*u{"u>og"u*u#"u*u[u-^{*u"ogz9{*u-[uR"u*u*ua"u"u*u{ʜ{*u*u-"u*u8R"u*u*ua*u"2u*u*ua*u*um:u:s!K|:s!K|:sogS:s!K|:sogS}2u:s!KY|{! S{:u!Y|{! S{}2u"ug2s*s-"u:u!ʎ|!|*sL>og"s!|*sL!sJʷ|*s"sÖ|*u*sa*s}*u*sa*u}2u}2u"u"u*Mt{"u:u!X}>og"s*s#"s>og[s-P}*s[t~og[uRR"u*u@M}} }*u}>og"s *sR"s>og[s}*s[t~!Kʾ}*s[t~og[uRR"u*u@ʹ}}*ub}*uR"u- ~:u!~*Mt! ! z:s! ~!~*sL~!!~!}!3~}*u"u*u}2u"u"u!~*sLog"u*Mt{-j~*u*Mt*u:u!Kʈ~*uz*u"u:s!0(2u:s!9!u2u:s!A(!u2u:s!Z!u2u:s!a(!u2u:s!z!u~*uN#F#^#Vq#p#s#r!~o&z o&"~| !!"~{nfnfJDM!~fnR`iFNBDM!~ր2! ր!w! V^yHV^S_:! ! ~!~!!!0Z>2 ր2!ր!w! !~>2!!xd!!~!d_!~! ~x !~>!w:(<2: (#:( !~!!~>!~!~x!!~>ɯGOW_~>   >~x ~x >~x ~x > ͹ ʺ ǻ ~!~!~!~!~!~!~͒#= !~͒8= !~~ ~ ~ ~>GOW_yO#xG#{_#zW!~yO#xG#{_#zW!~yO#xG#{_#zW!~,PRINTF called with invalid format string"""*R(* *E*"*{"*fn"*R #**tu*R *͛**"%([o*+"> 2*"% [o*++"08p(,:0402*"08+:0'0:! ͒!w2*"G>2xa8 "D(+N('O('X('H(#C(BS(dU(xAʾ!͗> >>G:OH**: G6d1*: }2L*:oM* **ͷ*{"*>2|:(_Ս [: Gd*|CX:o [d: >2*N*:=I2*#"="*{"*V> *""}2*52:!-ʉ>-2 Î>+2 :!+2 :!-! ʴ*52:!02:!99!օ>og>2:!0(2:!9!2:!A(2:!F!!=::og[w:2*52ۅ:!HX>2*5ã:!Os>2*5ã:ogR[~!Dʣ! }2:ogR}2:ogR}2 >og" >2!4: !'*:og[~2:!99:ogAR }2:og0R}2* :_Wͩ:_W" : !-C* T]goR" * ""}2}2> 2'> 2)*E*2*:! !*ʟ>-2)*T]goR"ö*ʶ*!0*Np:!*}o|g}2&*|"7:!*}o|g}2&*|"7*:_WC}2&*:_WՍ":&! 9W:&Aog R}2&_:&02&*:&ogö:)!-ʇ*!-:ogN*{"+:og[+و>2(!(4:!('Ո*!*͂÷*{"-:og[-R}2>2(!(4:!('*:'og͂*{}2>2(!(4:!('c:!(og[~2&*:&og͂-""}2}2>02'b}2/"0*0ʨ:/ogSö*0:/og""*V^*fnV^էR(0DM" *V^* tuV^~rsa{ %[[[[fnV^R"ŊE>2ȊNJ :ȊO*Ŋ*ŊV^T]!Ɋfn_tu dÔ_"_i"ai"ci}2ei*fisa*fiRt[k!*fihZ*fi:eiog*fi)++++##)++++"_*_!ututq#p##q#p"*fnV^R>>2"*fnV^R8(DM*^# x y :  }2"*V^:wrsU]F#Nah1/!1/*]]!s*!*### >RT]goM#"R* } wT]^o&Ս}]To&|G(o>gz(_>W!9!T]&){ݖOzݞ#YW3333ȯo>g^o&Ս{]To&ՍbkFOxy'Ez(!{C%FOxy?Ez(!{C<n2Ž}2>22Îx|2}2Žz2{2Îgh>!!ŽOx!Gy!!!Žӎ:ŽG:nR(.n((0$R(%n8R3n8R%>n(8R(3nR s#r_z)O_|y_!){ozg??zO_X"y_!)X[zW{_>ݦw>ݦwg_vXFIX.DOC7  !"$#*%('&)+,-.0/21o4653ox н>:ly/&w[ klQ#aw磏-dnn-pemtpWcx6By{[zw540 <ٙᾟ^v޾`3c!BξèGb0Hm/f8ǰ s7W//<hhmtp˴o¦_W߿ ZQF ro(% 44n 2+y:q͖M/=7f(8d54#kO񚻢ဥPo dE^ :Ty!B*O=?_s#"^s