1 A=A+1:IFA=1THENLOAD"DE.CODE",8,1 2 KY=49235:L=49152:DIMH$(15):C(0)=1:C(1)=15:C(2)=12:C(3)=11 3 POKE53280,5:POKE53281,11:PRINT"[147] [207]NCE A DISK HAS BEEN FORMATTED BY THE" 4 PRINT" [195]OMMODORE 64 IT CONTAINS 35 TRACKS," 5 PRINT" EACH ONE HAVING BETWEEN 17 AND 21" 6 PRINT" SECTORS (OR BLOCKS). [193]LTOGETHER THERE" 7 PRINT" ARE 683 BLOCKS PER DISK, 664 OF WHICH" 8 PRINT" CAN BE USED FREELY BY YOU FOR STORING" 9 PRINT" WHATEVER[160]SORT OF DATA YOU WISH. [197]ACH" 10 PRINT" TIME A PROGRAM IS SAVED, THE DRIVE" 11 PRINT" NEEDS TO KNOW AS QUICKLY AS POSSIBLE" 12 PRINT" WHICH SECTORS ARE FREE, WITHOUT HAVING" 13 PRINT" TO SEARCH THROUGH THE ENTIRE DISK.":FORI=0TO15:READH$(I) 14 H$(I)=H$(I)+"[145][145][145]":NEXT:SYSKY:PRINT"[147] [201]T IS FOR THIS REASON THAT SECTOR ZERO" 15 PRINT" OF THE DIRECTORY TRACK IS HOME TO THE" 16 PRINT" MOST IMPORTANT BLOCK OF 140 BYTES" 17 PRINT" ANYWHERE ON THE DISK. [201]T IS THE [194]LOCK" 18 PRINT" [193]LLOCATION [205]AP AND IT KEEPS A RECORD" 19 PRINT" OF EXACTLY WHICH OF THE 664 SECTORS" 20 PRINT" ARE AVAILABLE FOR USE. [197]ACH TRACK ON" 21 PRINT" THE DISK IS REPRESENTED BY FOUR BYTES," 22 PRINT" THE [160]FIRST BEING THE TOTAL NUMBER OF" 23 PRINT" FREE SECTORS ON THAT TRACK, THE OTHERS" 24 PRINT" STORING THE INFORMATION FOR THE BREAK-" 25 PRINT" DOWN OF EXACTLY WHICH SECTORS ARE FREE" 26 SYSKY:PRINT"[147] [212]O DEMONSTRATE THE [194]LOCK [193]LLOCATION" 27 PRINT" [205]AP - [194][193][205] FOR SHORT - YOU SHOULD NOW" 28 PRINT" INSERT A DISK OF YOUR CHOICE. [212]HE DATA" 29 PRINT" FROM THE [194][193][205] ON THAT DISK WILL THEN" 30 PRINT" BE USED IN THE REST OF THIS DEMO." 31 PRINT" [201]T IS IMPORTANT THAT YOU DO NOT REMOVE" 32 PRINT" THAT DISK UNTIL THE DEMONSTRATION HAS":PRINT" FINISHED.":SYSKY 33 PRINT"[147][212]RACK 18, [211]ECTOR 0":PRINT"[155]";:OPEN15,8,15:OPEN8,8,8,"#" 34 PRINT#15,"U1 8 0 18 0":FORI=0TO7:FORK=0TO1:FORJ=1TO16 35 GET#8,A$:A=ASC(A$+CHR$(0)):H$="":FORM=1TO2:D=INT(A/16) 36 H$=MID$("0123456789[193][194][195][196][197][198]",1+A-D*16,1)+H$:A=D:NEXT 37 POKE199,ABS(ABS(I/2=INT(I/2))-ABS(J/2=INT(J/2))) 38 PRINTH$;:NEXT:PRINT:PRINT" ";:NEXTK,I 39 PRINT"[155][212]HE ABOVE DATA REPRESENTS THE 256" 40 PRINT" BYTES OF INFORMATION STORED AT THE" 41 PRINT" START OF THE DIRECTORY TRACK. [204]ET'S" 42 PRINT" WORK THROUGH IT, HIGHLIGHTING THE" 43 PRINT" IMPORTANT SECTIONS.":SYSKY:POKE2023,32:SYSL,720,960,11 44 SYSL,80,720,0:PRINT"[145][145][145][145][145][155] [212]HE FIRST TWO BYTES OF ANY SECTOR ARE" 45 PRINT" POINTERS AND TELL THE DRIVE WHICH" 46 PRINT" TRACK AND SECTOR SHOULD BE READ NEXT.":SYSL,81,85,1:SYSKY 47 SYSL,760,960,11:SYSL,81,85,0:PRINT"[145][145][145] [212]HIS BYTE IS VERY IMPORTANT. [217]OU 48 [153]" SHOULD NOT CHANGE IT BECAUSE IT TELLS 49 PRINT" THE DRIVE THAT [196][207][211]1 IS TO BE USED. [193]NY 50 [153]" ATTEMPT TO ALTER IT COULD LEAD TO A 51 PRINT" [196][207][211] [205]ISMATCH ERROR BEING GENERATED.":SYSL,85,87,1:SYSKY 52 SYSL,85,87,0:PRINT"[145][145][145][145][145] [212]HESE ARE THE 140 BYTES KNOWN AS THE" 53 PRINT" [194][193][205]. [201]T IS HARD TO BELIEVE THAT SUCH A 54 [153]" SMALL NUMBER OF BYTES COULD HOLD ALL " 55 [153]" THE INFORMATION REGARDING THE STATUS" 56 [153]" OF EACH OF THE 683 BLOCKS ON THE DISK.":[158]L,89,440,1:[158]KY 57 [158]L,89,440,0:[158]L,760,960,11 58 [153]"ONONONONON (null)HIS IS THE ATN(null)LENRIGHT$RIGHT$ REPRESENTATION OF" 59 [153]" THE DISK HEADER.":[158]L,440,480,1:[158]KY:[158]L,440,480,0 60 [153]"ONON (null)HE IDENTIFICATION CODE IS REPRESENTED 61 PRINT" BY THESE FIVE BYTES, AGAIN THE [193][211][195][201][201] 62 [153]" CODES ARE USED.":[158]L,485,495,1:[158]KY:[158]L,485,495,0 63 [153]"ONONON (null)HE NEXT STAGE OF THIS DEMONSTRATION " 64 [153]" DEALS WITH ONE TRACK ONLY. (null)SING THE 65 PRINT" CURSOR KEYS, PLEASE SELECT ANY TRACK 66 [153]" ON THE DISK TO BE ANALYSED. (null)RESS 67 PRINT" ANY OTHER KEY TO CONTINUE.":POKE2023,32:T=1 68 PRINT" [212]RACK: " 69 SYSL,81+INT(T/4)*40+(T AND3)*8,89+INT(T/4)*40+(T AND3)*8,1:POKE198,0 70 PRINT""TAB(7)T"[157] " 71 GETA$:IFA$=""THEN71 72 IFA$<>""ANDA$<>"[145]"ANDA$<>""ANDA$<>"[157]"THEN79 73 T1=T:IFA$=""THENT=T-4*(T<32):GOTO77 74 IFA$="[145]"THENT=T+4*(T>4):GOTO77 75 IFA$=""THENT=T-1*(T<35):GOTO77 76 IFA$="[157]"THENT=T+1*(T>1) 77 SYSL,81+INT(T1/4)*40+(T1AND3)*8,89+INT(T1/4)*40+(T1AND3)*8,0 78 GOTO69 79 PRINT"[147] [212]HE FOUR BYTES BELOW ARE THE [194][193][205]" 80 PRINT" REPRESENTATION OF TRACK"T"[157]:" 81 PRINT" ";:FORI=0TO3:PRINT#15,"B-P:8"T*4+I:GET#8,A$:B(I)=ASC(A$+CHR$(0)) 82 PRINTH$(INT(B(I)/16))H$((B(I)/16-INT(B(I)/16))*16);" [144]";:NEXT 83 PRINT:PRINT"[155] [210]EMEMBER, THE FIRST BYTE IN THE SET OF" 84 PRINT" FOUR IS A CHECKSUM AND IT TELLS THE" 85 PRINT" DRIVE HOW MANY FREE SECTORS THERE ARE." 86 PRINT" [201]F THERE IS A DISCREPANCY BETWEEN THIS" 87 PRINT" FIGURE AND THE NUMBER OF SECTORS FREE" 88 PRINT" ACCORDING TO THE OTHER THREE BYTES A" 89 PRINT" [196]IRECTORY [197]RROR WILL BE GENERATED." 90 PRINT" [198]OR NOW THOUGH, WE SHALL IGNORE IT.":SYSKY 91 FORI=0TO3:SYSL,170+I*40,200+I*40,1:NEXT 92 SYSL,360,960,11:PRINT"":FORI=1TO8 93 PRINT"":FORJ=1TO4:PRINT" "CHR$(20):NEXTJ,I 94 PRINT" [212]HESE THREE BYTES STORE ALL THE" 95 PRINT" NECESSARY INFORMATION ABOUT ALL THE" 96 PRINT" SECTORS IN THIS TRACK.":PRINT" [194]EFORE YOU SEE EXACTLY HOW THE INFO IS 97 [153]" INTERPRETED INTO SOMETHING WE CAN" 98 [153]" UNDERSTAND, IT IS BEST IF THE VALUES" 99 [153]" ARE CONVERTED INTO BINARY...":[158]KY:[158]L,240,960,11:[158]L,0,200,0 100 [153]"":[129]I[178]0[164]2:[153][163]I[172]9[170]1);:B$[178]"":B[178]B(I[170]1):[129]J[178]0[164]7:F[178]B[171][181](B[173]2)[172]2 101 B$[178]"1"[170]B$:[139]F[178]0[167]B$[178]"0"[170][202](B$,2) 102 B[178][181](B[173]2):[130]:B$(I)[178]B$:[153]B$" ";:[130]:[153] 103 [153]"LIST (null)ERHAPS NOW IT IS POSSIBLE TO SEE JUST" 104 [153]" HOW THE RECORDS ARE KEPT BUT THERE 105 PRINT" IS STILL ONE ALTERATION THAT NEEDS TO 106 [153]" BE MADE. (null)HE BITS SHOULD BE ARRANGED 107 PRINT" IN ASCENDING ORDER OF VALUE. [212]HUS WE 108 [153]" NEED TO CREATE A MIRROR IMAGE OF THE 109 PRINT" BITS IN EACH OF THE THREE BYTES...":SYSKY:SYSL,240,960,11 110 FORK=0TO2:A$=B$(K):B$="":FORI=0TO8:D$=RIGHT$(A$,1):C$=D$:A$=LEFT$(" "+A$,8) 111 FORJ=7-ITO0STEP-1:PRINTTAB(K*9+1)A$"[157]"D$"[157][157][157][157][157][157][157][157]"B$"[145][145][145]" 112 B2$(K)=LEFT$(B$,8) 113 B$=LEFT$(B$+" ",I+J)+C$+" ":D$=" ":NEXTJ,I 114 NEXT 115 FORI=0TO30:POKE1224+I,PEEK(1304+I):POKE1304+I,32:NEXT 116 PRINT"[155] [207][203]. [206]OW LET'S STRING TOGETHER ALL THE" 117 PRINT" DIGITS TO FORM ONE 24 DIGIT NUMBER. [215]E" 118 PRINT" CAN ALSO FORGET ABOUT THE HEXADECIMAL" 119 PRINT" REPRESENTATION OF THE BYTES.":B$=B2$(0)+B2$(1)+B2$(2):SYSKY 120 SYSL,0,40,11:SYSL,80,960,11 121 SYS49152,0,200,11:SYS49152,240,960,11:PRINT"";:FORI=1TO4 122 PRINT" [145][145]":PRINT" "B$"[145]":FORJ=1TO50:NEXTJ,I 123 PRINT"[155] [201]T MIGHT AS WELL BE REVEALED NOW THAT" 124 PRINT" THE COMPUTER LOOKS AT EACH BIT (DIGIT) 125 [153]" IN TURN AND EACH ONE REPRESENTS ONE" 126 [153]" SECTOR ON THE DISK. LEFT$OWEVER, YOU CHOSE" 127 [153]" TRACK"T"TO BE ANALYSED AND THIS HAS" 128 [153]" ONLY";:S[178]21:[139]T[177]17[167]S[178]19 129 [139]T[177]24[167]S[178]18 130 [139]T[177]30[167]S[178]17 131 [153]S"SECTORS AND SO WE NEED TO":[153]" REMOVE SOME EXCESS DIGITS...":[158]KY 132 [158]L,80,960,11:[129]K[178]1[164]24[171]S:[129]J[178]0[164]3:[151]55361[171]K,C(J):[129]M[178]1[164]50:[130]M,J,K 133 [153]"LIST (null)OW WE HAVE THE CORRECT NUMBER OF" 134 [153]" DIGITS TO REPRESENT THE SECTORS ON THE" 135 [153]" CHOSEN TRACK." 136 [153]" RIGHT$F RIGHT$ REPLACE ALL THE ZEROS WITH THE " 137 [153]" LETTER '(null)' AND ALL THE ONES WITH A" 138 [153]" FULL STOP THEN IT IS SIMPLE TO SEE" 139 [153]" WHICH SECTORS ARE FREE AND WHICH ARE" 140 [153]" USED.":[158]KY:[158]L,80,960,11:[129]I[178]1[164]S:C[178]46:[139][194](1064[170]I)[178]48[167]C[178]88 141 [129]J[178]0[164]3:[151]55336[170]I,C(J):[129]M[178]1[164]20:[130]M,J:[151]1064[170]I,C:[129]J[178]3[164]0[169][171]1 142 [151]55336[170]I,C(J):[129]Z[178]1[164]20:[130]Z,J,I 143 [153]"LIST (null)K. (null)OW YOU SEE THE BREAKDOWN OF THE" 144 [153]" SECTORS USED ON TRACK"T"CMD. (null)HIS HAS":[153]" BEEN OBTAINED FROM JUST THREE"; 145 [153]" BYTES.":[153]" VALMPTY SECTORS ARE DENOTED BY THE FULL" 146 [153]" STOPS - ORIGINALLY THE BITS THAT WERE 147 PRINT" SET TO ONE. [211]ECTOR 0 IS ON THE LEFT" 148 PRINT" AND SECTOR"S-1"ON THE RIGHT." 149 PRINT" [204]ET'S RECAP QUICKLY THE STEPS FOR" 150 PRINT" FINDING OUT WHICH SECTORS OF WHICH" 151 PRINT" BLOCKS ARE FREE...":SYSKY 152 PRINT"[147][206]OTE: [212]HIS METHOD IS FOR MANUALLY" 153 PRINT" CHECKING THE [194][193][205]. [201]F DOING IT" 154 PRINT" FROM [194][193][211][201][195] THEN SKIP THIS PAGE." 155 PRINT" 1. [215]RITE DOWN THE BINARY CONVERSION OF 156 [153]" THE THREE BYTES.":[153]"LIST 2. (null)RITE DOWN THE MIRROR IMAGES OF" 157 [153]" THESE BYTES.":[153]"LIST 3. (null)TRING THE THREE SETS OF NEW DIGITS" 158 [153]" TOGETHER TO FORM A 24 DIGIT NUMBER." 159 [153]"LIST 4. VALRASE EXCESS DIGITS - YOU ONLY NEED" 160 [153]" THE SECTORS THAT EXIST IN THAT" 161 [153]" TRACK TO BE REPRESENTED. LENHECK YOUR" 162 [153]" MANUAL IF YOU ARE UNSURE OF THE" 163 [153]" NUMBER OF SECTORS IN EACH TRACK." 164 [153]"LIST 5. (null)OW, EVERY DIGIT THAT IS A ONE" 165 [153]" REPRESENTS A ASC(null)VALVAL SECTOR AND EACH" 166 [153]" ZERO REPRESENTS A (null)(null)VALSTR$ SECTOR.":[158]KY 167 [153]"LOADLIST PEEKATN(null)RIGHT$LEN PROGRAM FOR READING THE PEEKATN(null):" 168 [153]" 10 (null)(null)VAL(null)15,8,15:(null)(null)VAL(null)8,8,8,"[199](34)"#"[199](34) 169 [153]" 20 (null)(null)RIGHT$(null)(null)#15,"[199](34)"(null)1 8 0 18 0"[199](34) 170 [153]" 30 RIGHT$(null)(null)(null)(null)"[199](34)"(null)LEFT$RIGHT$LENLEFT$CLOSE(null)(null)ATNLEN(null)"[199](34)";(null)(null) 171 PRINT" 40 [208][210][201][206][212]#15,"CHR$(34)"[194]-[208]:8"CHR$(34)"[212][210]*4+1 172 [153]" 50 ASC(null)(null) PEEK(null)=0(null)(null)2:CHR$VAL(null)#8,ATN$:":[153]" PEEK(PEEK(null))=ATN(null)LEN(ATN$+LENLEFT$(null)$(0)) 173 PRINT" 60 [206][197][216][212] [194][217]: [195][204][207][211][197]8:[195][204][207][211][197]15":PRINT" 70 [211]=20:[201][198] [212][210]>17 [212][200][197][206] [211]=18" 174 PRINT" 80 [201][198] [212][210]>24 [212][200][197][206] [211]=17":PRINT" 90 [201][198] [212][210]>30 [212][200][197][206] [211]=16":PRINT" 100 [211][210]=0: [196][201][205] [211][211]([211]) 175 [153]" 110 ASC(null)(null) PEEK(null)=0(null)(null)2:PEEK=PEEK(PEEK(null))":[153]" 120 ASC(null)(null) PEEKRIGHT$(null)=0(null)(null)7" 176 [153]" 130 (null)= RIGHT$(null)(null)(PEEK/2): (null)(null)=PEEK-((null)*2)":[153]" 140 RIGHT$ASC (null)(null)<=(null) (null)LEFT$VAL(null) (null)(null)((null)(null))=1-(null)(null)" 177 [153]" 150 PEEK=(null): (null)(null)=(null)(null)+1: (null)VAL(null)(null) PEEKRIGHT$(null),PEEK(null)" 178 [153]" (null)HE STATUS OF EACH SECTOR IS HELD IN" 179 [153]" AN ARRAY (null)(null)((null)) WHERE 0=ASC(null)VALVAL,1=(null)(null)VALSTR$." 180 [153]"LIST (null)HE ABOVE PROGRAM WILL REMAIN IN THE" 181 [153]" MEMORY WHEN THE DEMO HAS FINISHED.":[158]KY 182 [153]"LOADRIGHT$ SHALL NOW READ THE PEEKATN(null) OF THIS DISK" 183 [153]" USING A SIMILAR METHOD TO THE ABOVE" 184 [153]" PROGRAM. (null)O ENABLE IT TO FIT ON THE" 185 [153]" DISPLAY THE HORIZONTAL AXIS IS THE" 186 [153]" TRACKS AND THE VERTICAL IS THE SECTORS" 187 [153]" (null)SED SECTORS ARE DENOTED BY SQUARE" 188 [153]" BLOCKS ( WAIT).":[158]KY 189 [153]"LOADSYS 1 2 3":[153]" ";:[129]I[178]1[164]35 190 [153][201]([196](I),1);:[130]:[153]"DEF (null)>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 191 FORI=0TO20:PRINT"[158] "RIGHT$(STR$(I),1)"[150][179]" 192 IFI=10ORI=20THENPRINT"[145][158]"I 193 NEXT:PRINTTAB(34)"[144][145][145][145][145][142][166][166][166][166][166]":PRINTTAB(28)"[166][166][166][166][166][166][166][166][166][166][166]":FORI=1TO2 194 PRINT,," [166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166][166]":NEXT 195 FORT=1TO35:PRINT#15,"B-P:8"T*4+1:FORY=0TO2:GET#8,A$:B(Y)=ASC(A$+CHR$(0)) 196 NEXT:S=20:IFT>17THENS=18 197 IFT>24THENS=17 198 IFT>30THENS=16 199 POKE781,3:POKE782,3+T:POKE783,0:SYS65520 200 R=0:FORY=0TO2:B=B(Y):FORBT=0TO7:V=INT(B/2):SS=B-V*2 201 IFR>STHEN204 202 PRINT"[146][144][214][157][155]";:IFSS=0THENPRINT"[208][157]";:GOTO204 203 PRINT" [157]"; 204 B=V:R=R+1:NEXTBT,Y,T:CLOSE8:CLOSE15:SYSKY 205 PRINT"[147][146] [201]F YOU SHOULD EVER WISH TO CHANGE THE" 206 PRINT" [194][193][205] MANUALLY THEN FOLLOW THE SIMPLE" 207 PRINT" STEPS BELOW (YOU'LL HAVE TO WORK OUT A" 208 PRINT" PROGRAM FOR THIS ONE - [201] CAN'T PROVIDE" 209 PRINT" EVERYTHING FOR YOU, NOW CAN [201] ?)" 210 PRINT" [155]1. [210]EAD TRACK 18, SECTOR 0":PRINT" [155]2. [199]ET THE APPROPRIATE THREE BYTES 211 [153]" THAT REPRESENT THE DESIRED TRACK" 212 [153]"LIST 3. (null)O FIND WHICH OF THE THREE BYTES:" 213 [153]" PEEK=RIGHT$(null)(null)((null)ECTOR/8) LIST[(null)ANGE 0-2]" 214 [153]"LIST 4. (null)O FIND WHICH BIT OF BYTE PEEK:" 215 [153]" PEEK(null)=(null)ECTOR-RIGHT$(null)(null)((null)ECTOR/8)*8 LIST[0-7]" 216 [153]"LIST 5. (null)O MAKE THE SECTOR FREE:":[153]" PEEKYTE(null)ALUE=PEEKYTE(null)ALUE (null)(null) 2^PEEK(null) 217 PRINT" [212]O MAKE THE SECTOR USED:":PRINT" [194]YTE[214]ALUE=[194]YTE[214]ALUE [193][206][196] (255-2^[194][212]) 218 [158]KY:[153]"LOAD STR$EMONSTRATION OVER. (null)RESS ANY KEY TO" 219 [153]" RETURN TO PEEKATN(null)RIGHT$LEN WITH THE PROGRAM TO" 220 [153]" READ THE PEEKATN(null) IN MEMORY...":[158]KY:[153]"LOADPOKENEW" 221 [153]"10OPEN15,8,15:OPEN8,8,8,"[199](34)"#"[199](34)":PRINT#15,"; 222 [153][199](34)"U1 8 0 18 0"[199](34)":INPUT"[199](34)"WHICH TRACK"[199](34)";TR 223 PRINT"20 PRINT#15,"CHR$(34)"B-P:8"CHR$(34)"TR*4+1:FORBY=0TO2:GET#8,A$:"; 224 PRINT"B(BY)=ASC(A$+CHR$(0)):NEXT:CLOSE8":PRINT"30 CLOSE15:S=20:IFTR>17THENS=18 225 [153]"40 IFTR>24THENS=17":[153]"50 IFTR>30THENS=16" 226 [153]"60 SR=0:DIMSS(S):FORBY=0TO2:B=B(BY):FORBT=0TO7:V=INT(B/2):SS=B-(V*2) 227 PRINT"70 IFSR<=STHENSS(SR)=1-SS":PRINT"80 B=V:SR=SR+1:NEXTBT,BY" 228 PRINT"?"CHR$(34)"[147] [142]"CHR$(34)";";:FORI=0TO9:POKE631+I,13:NEXT:POKE198,10 229 DATA"[191][162][146][187][157][157][157][161][191][146][161][157][157][157][172][146] [161][157][157][157][188][162][146] ","[172][161] [157][157][157] [161] [157][157][157] [161] [157][157][157][188][162][146] " 230 DATA"[191][162][146][187][157][157][157] [162][190][157][157][157][191][146] [157][157][157][162][162][146][190]","[191][162][146][187][157][157][157] [162][190][157][157][157][187] [161][157][157][157][188][162][146] " 231 DATA" [190][146] [157][157][157][191][161][146] [157][157][157][162][187][146][190][157][157][157] [188] ","[172][162][146][190][157][157][157][162][162][146][187][157][157][157][187] [161][157][157][157][188][162][146] " 232 DATA"[172][162][146][190][157][157][157][188][146][162] [157][157][157][161] [161][157][157][157][188][162][146] ","[162][162][146][161][157][157][157] [191][146] [157][157][157] [161] [157][157][157] [190] " 233 DATA"[191][162][146][187][157][157][157][191][162][190][157][157][157][161] [161][157][157][157][188][162][146] ","[191][162][146][187][157][157][157][191][162][161][157][157][157][187] [161][157][157][157][188][162][146] " 234 DATA"[172][191] [157][157][157][188][146][162][161][157][157][157][161] [161][157][157][157][190] [190]","[172][162][146][187][157][157][157][188][146][162][190][157][157][157][161] [161][157][157][157][162][162][146] " 235 DATA"[191][162][146][187][157][157][157][161] [157][157][157][161] [187][157][157][157][188][162][146] ","[172][146][191] [157][157][157][161] [161][157][157][157][161][172][190][157][157][157][162][146][190] " 236 DATA"[172][162][146][190][157][157][157][188][146][187] [157][157][157][161] [157][157][157][162][162][146][190]","[172][162][146][190][157][157][157][188][146][187] [157][157][157][161] [157][157][157][190] "