www.digitalmars.com         C & C++   DMDScript  

c++ - unexpected characters

reply Paul <wcount12 aol.com> writes:
Hello, I am writing a program to read in a csv text file.

The program works fine for over 1411 iterations then crashes.
Looking in the debugger, there appears to be additional characters
in the front of the expected input, I have no ideal where there
coming from, as they do not appear in the input file. (The file
starts with the date, see input example file attached)

Please find attached my program, and the relevent section of the
input file.  The following post, will include screens shots of
what im seeing in my debugger.

Kind regards

Paul
begin 644 PROCON.c
M+RH *BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ
M*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ
M*BHJ*BHJ* T*("` 4')O9W)A;2!T;R!C;VYV97)T(%!R;V9O<FT 8V]M;6$ 
M<V5P87)A=&5D(&]U='!U="!F:6QE+"!I;G1O(&)I;F%R>2!R96%D>2!F;W( 
M=&5S=&EN9R`R,"\P.2\P- T*("` *BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ
M*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ
M*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*B`J+PT*#0HC:6YC;'5D92`\<W1D
M:6\N:#X-"B-I;F-L=61E(#QS=&1L:6(N:#X-"B-I;F-L=61E(#QC;VYI;RYH
M/ T*(VEN8VQU9&4 /'-T<FEN9RYH/ T*(VEN8VQU9&4 (FAO<G-E<RYH( T*
M#0H ("` ("` ("` ("`O*BHJ*BH 3D]413H ($YE960 =&\ 9&5L971E(&AE
M861E<B]C;VQU;6X ;&EN92!O;B!F:7)S="!L:6YE(&]F(&-S=BYT>'0 9FEL
M92!B969O<F4 <G5N;FEN9R!P<F]G<F%M("HJ*BHJ+PT*:6YT('!T<E]C='([
M#0H-"FEN="!M86EN*"D-"GL-"B` ("!&24Q%("IF<%]I;BP-"B` ("` ("` 
M("IF<%]O=70[#0H-"B` ("!S=')U8W0 <')O9F]R;2!P<F]?9&%T83L-" T*
M("` (&-H87( <F%W7V1A=&%;,S4P72P-"B` ("` ("` ("` ("`J=&5M<%]P
M='(L#0H ("` ("` ("` ("` *G)A=U]P='([#0H-"B` ("!F<%]I;B` /2!O
M<&5N7V9I;&4H(F9E8C(P,#8M;6%R,C`P-RYT>'0B+")R="(I.PT*("` (&9P
M7V]U="`](&]P96Y?9FEL92 B<')O,2YB:6XB+")W8B(I.PT*#0H ("` 8VAA
M<B!D871E7W1I;65;,C%=("` ("` ("` ("` ("`](B([#0H ("` 8VAA<B!C
M;W5R<V5;,C5=("` ("` ("` ("` ("` ("`](B([#0H ("` 8VAA<B!C;W5R
M<V5?9&ER96-T:6]N6S-=("` ("` ("`](B([#0H ("` 8VAA<B!C;W5R<V5?
M8VAA<F%C=&5R:7-T:6-S6S(P72`](B([#0H ("` 8VAA<B!D:7-T86YC95LQ
M,5T ("` ("` ("` ("` ("`](B([#0H ("` 8VAA<B!P<FEZ95LY72` ("` 
M("` ("` ("` ("` ("`](B([#0H ("` 8VAA<B!R86-E7W1Y<&5;,3!=("` 
M("` ("` ("` ("`](B([#0H ("` 8VAA<B!R=6YN97)S6S-=("` ("` ("` 
M("` ("` ("`](B([#0H ("` 8VAA<B!R86-E7V-L87-S6S)=("` ("` ("` 
M("` ("`](B([#0H ("` 8VAA<B!N97=?8VQA<W-?;G5M6S)=("` ("` ("` 
M("`](B([#0H ("` 8VAA<B!M:6Y?86=E6S)=("` ("` ("` ("` ("` ("`]
M(B([#0H ("` 8VAA<B!M87A?86=E6S)=("` ("` ("` ("` ("` ("`](B([
M#0H ("` 8VAA<B!H86YD:6-A<%]L:6UI=%LS72` ("` ("` ("`](B([#0H 
M("` 8VAA<B!T<FEC87-T6SA=("` ("` ("` ("` ("` ("`](B([#0H ("` 
M8VAA<B!E>&%C=&%;.%T ("` ("` ("` ("` ("` ("`](B([#0H ("` 8VAA
M<B!C<V9;.%T ("` ("` ("` ("` ("` ("` ("`](B([#0H ("` 8VAA<B!G
M;VEN9ULR,%T ("` ("` ("` ("` ("` ("`](B([#0H ("` 8VAA<B!O9F9I
M8VEA;%]G;VEN9ULR,%T ("` ("` ("`](B([#0H ("` 8VAA<B!C;&%S<VEF
M:6-A=&EO;G-;,S!=("` ("` ("`](B([#0H ("` 8VAA<B!D871E6S$Q72` 
M("` ("` ("` ("` ("` ("`](B([#0H ("` 8VAA<B!R86-E7W1I;65;-ET 
M("` ("` ("` ("` ("`](B([#0H ("` 8VAA<B!R86-E8V%R9%]N=6U;-%T 
M("` ("` ("` ("`](B([#0H ("` 8VAA<B!D<F%W6S-=("` ("` ("` ("` 
M("` ("` ("`](B([#0H ("` 8VAA<B!F:6Y?<&]S(%LS72` ("` ("` ("` 
M("` ("`](B([#0H ("` 8VAA<B!H;W)S95LS,%T ("` ("` ("` ("` ("` 
M("`](B([#0H ("` 8VAA<B!H;W)S95]C;W5N=')Y6S$P72` ("` ("` ("`]
M(B([#0H ("` 8VAA<B!J;V-K97E;,C!=("` ("` ("` ("` ("` ("`](B([
M#0H ("` 8VAA<B!J;V-K97E?8VQA:6U;-%T ("` ("` ("` ("`](B([#0H 
M("` 8VAA<B!T<F%I;F5R6S,P72` ("` ("` ("` ("` ("`](B([#0H ("` 
M8VAA<B!T:7-S=65?<F%T:6YG6S1=("` ("` ("` ("`](B([#0H ("` 8VAA
M<B!O9&1S7W1E>'1;-ET ("` ("` ("` ("` ("`](B([#0H ("` 8VAA<B!O
M9&1S7W9A;'5E6S9=("` ("` ("` ("` ("`](B([#0H ("` 8VAA<B!A9V5;
M,UT ("` ("` ("` ("` ("` ("` ("`](B([#0H ("` 8VAA<B!W96EG:'1;
M-%T ("` ("` ("` ("` ("` ("`](B([#0H ("` 8VAA<B!P86-E7V%B8G)E
M=ELR72` ("` ("` ("` ("`](B([#0H ("` 8VAA<B!D<VQR6S5=("` ("` 
M("` ("` ("` ("` ("`](B([#0H ("` 8VAA<B!F879;,ET ("` ("` ("` 
M("` ("` ("` ("`](B([#0H ("` 8VAA<B!P86-E7W)A=&EN9ULU72` ("` 
M("` ("` ("`](B([#0H ("` 8VAA<B!O<ELS72` ("` ("` ("` ("` ("` 
M("` ("`](B([#0H ("` 8VAA<B!P<F]F;W)M7W-P965D7W)A=&EN9ULT72` 
M("`](B([#0H ("` 8VAA<B!D:7-T7W1O7VYE>'1;-5T ("` ("` ("` ("`]
M(B([#0H ("` 8VAA<B!D:7-T7W1O7W=I;FYE<ELU72` ("` ("` ("`](B([
M#0H ("` 8VAA<B!U<V5R7W)A=&EN9U\Q6S9=("` ("` ("` ("`](B([#0H 
M("` 8VAA<B!U<V5R7W)A=&EN9U\R6S9=("` ("` ("` ("`](B([#0H ("` 
M8VAA<B!U<V5R7W)A=&EN9U\S6S9=("` ("` ("` ("`](B([#0H ("` 8VAA
M<B!T:7-S=65?;V1D<U]T97AT6S9=("` ("` ("`](B([#0H ("` 8VAA<B!T
M:7-S=65?;V1D<U]V86QU95LT72` ("` ("`](B([#0H ("` 8VAA<B!P<F]F
M;W)M7V9O<FU?<F%T:6YG6S1=("` ("`](B([#0H ("` 8VAA<B!T:7-?<')F
M6S5=("` ("` ("` ("` ("` ("`](B([#0H ("` 8VAA<B!H:6=H97-T7W)A
M=&EN9ULS72` ("` ("` ("`](B([#0H ("` 8VAA<B!L=&]?<F%T:6YG6S-=
M("` ("` ("` ("` ("`](B([#0H ("` 8VAA<B!A=F5?<F%T:6YG7V%L;%LS
M72` ("` ("` ("`](B([#0H ("` 8VAA<B!A=F5?<F%T:6YG7W1H<F5E6S-=
M("` ("` ("`](B([#0H ("` 8VAA<B!M961I86Y?<F%T:6YG6S-=("` ("` 
M("` ("`](B([#0H ("` 8VAA<B!M961I86Y?<F%T:6YG7W1H<F5E6S-=("` 
M("`](B([#0H ("` 8VAA<B!S96-O;F1?:&EG:&5S=%]R871I;F=;,UT ("`]
M(B([#0H ("` 8VAA<B!V9'=;-5T ("` ("` ("` ("` ("` ("` ("`](B([
M#0H ("` 8VAA<B!H:6=H97-T7V-L87-S7W)A=&EN9ULS72` ("`](B([#0H 
M("` 8VAA<B!R86-E7V-L87-S7VQT;ULS72` ("` ("` ("`](B([#0H ("` 
M8VAA<B!N97=?8VQA<W-?;'1O6S-=("` ("` ("` ("`](B([#0H ("` 8VAA
M<B!D:7-T86YC95]L=&];,3%=("` ("` ("` ("`](B([#0H ("` 8VAA<B!V
M86QU95]L=&];.%T ("` ("` ("` ("` ("`](B([#0H ("` 8VAA<B!P;W5N
M9'-?;'1O6S1=("` ("` ("` ("` ("`](B([#0H ("` 8VAA<B!F:6YI<VAE
M9%]R86-E<U]S<ELW72` ("` ("`](B([#0H ("` 8VAA<B!R=6YS7V)E9F]R
M95LT72` ("` ("` ("` ("`](B([#0H ("` 8VAA<B!W;VY?8F5F;W)E6S1=
M("` ("` ("` ("` ("`](B([#0H ("` 8VAA<B!W;VY?<W)?8F5F;W)E6S==
M("` ("` ("` ("`](B([#0H ("` 8VAA<B!P<F]F:71?;&]S<R` 6S==("` 
M("` ("` ("`](B([#0H ("` 8VAA<B!P;&-?8F5F;W)E6S1=("` ("` ("` 
M("` ("`](B([#0H ("` 8VAA<B!P;&-?<W)?8F5F;W)E6S1=("` ("` ("` 
M("`](B([#0H-" T*("` ('=H:6QE*"!F9V5T<RAR87=?9&%T82PS-#DL9G!?
M:6XI("$]($Y53$PI#0H ("` >PT*#0H ("` ("` ("!R87=?<'1R(#T <F%W
M7V1A=&$[#0H-"B` ("` ("` ('!T<E]C='( /2`P.PT*#0H ("` ("` ("!T
M96UP7W!T<B`](&1A=&5?=&EM93L-"B` ("` ("` (&9I;&Q?=&5M<"AR87=?
M<'1R+'1E;7!?<'1R*3L-"B` ("` ("` ('1E;7!?<'1R(#T 8V]U<G-E.PT*
M("` ("` ("` 9FEL;%]T96UP*')A=U]P='(L=&5M<%]P='(I.PT*("` ("` 
M("` =&5M<%]P='( /2!C;W5R<V5?9&ER96-T:6]N.PT*("` ("` ("` 9FEL
M;%]T96UP*')A=U]P='(L=&5M<%]P='(I.PT*("` ("` ("` =&5M<%]P='( 
M/2!C;W5R<V5?8VAA<F%C=&5R:7-T:6-S.PT*("` ("` ("` 9FEL;%]T96UP
M*')A=U]P='(L=&5M<%]P='(I.PT*("` ("` ("` =&5M<%]P='( /2!D:7-T
M86YC93L-"B` ("` ("` (&9I;&Q?=&5M<"AR87=?<'1R+'1E;7!?<'1R*3L-
M"B` ("` ("` ('1E;7!?<'1R(#T <')I>F4[#0H ("` ("` ("!F:6QL7W1E
M;7`H<F%W7W!T<BQT96UP7W!T<BD[#0H ("` ("` ("!T96UP7W!T<B`](')A
M8V5?='EP93L-"B` ("` ("` (&9I;&Q?=&5M<"AR87=?<'1R+'1E;7!?<'1R
M*3L-"B` ("` ("` ('1E;7!?<'1R(#T <G5N;F5R<SL-"B` ("` ("` (&9I
M;&Q?=&5M<"AR87=?<'1R+'1E;7!?<'1R*3L-"B` ("` ("` ('1E;7!?<'1R
M(#T <F%C95]C;&%S<SL-"B` ("` ("` (&9I;&Q?=&5M<"AR87=?<'1R+'1E
M;7!?<'1R*3L-"B` ("` ("` ('1E;7!?<'1R(#T ;F5W7V-L87-S7VYU;3L-
M"B` ("` ("` (&9I;&Q?=&5M<"AR87=?<'1R+'1E;7!?<'1R*3L-"B` ("` 
M("` ('1E;7!?<'1R(#T ;6EN7V%G93L-"B` ("` ("` (&9I;&Q?=&5M<"AR
M87=?<'1R+'1E;7!?<'1R*3L-"B` ("` ("` ('1E;7!?<'1R(#T ;6%X7V%G
M93L-"B` ("` ("` (&9I;&Q?=&5M<"AR87=?<'1R+'1E;7!?<'1R*3L-"B` 
M("` ("` ('1E;7!?<'1R(#T :&%N9&EC87!?;&EM:70[#0H ("` ("` ("!F
M:6QL7W1E;7`H<F%W7W!T<BQT96UP7W!T<BD[#0H ("` ("` ("!T96UP7W!T
M<B`]('1R:6-A<W0[#0H ("` ("` ("!F:6QL7W1E;7`H<F%W7W!T<BQT96UP
M7W!T<BD[#0H ("` ("` ("!T96UP7W!T<B`](&5X86-T83L-"B` ("` ("` 
M(&9I;&Q?=&5M<"AR87=?<'1R+'1E;7!?<'1R*3L-"B` ("` ("` ('1E;7!?
M<'1R(#T 8W-F.PT*("` ("` ("` 9FEL;%]T96UP*')A=U]P='(L=&5M<%]P
M='(I.PT*("` ("` ("` =&5M<%]P='( /2!G;VEN9SL-"B` ("` ("` (&9I
M;&Q?=&5M<"AR87=?<'1R+'1E;7!?<'1R*3L-"B` ("` ("` ('1E;7!?<'1R
M(#T ;V9F:6-I86Q?9V]I;F<[#0H ("` ("` ("!F:6QL7W1E;7`H<F%W7W!T
M<BQT96UP7W!T<BD[#0H ("` ("` ("!T96UP7W!T<B`](&-L87-S:69I8V%T
M:6]N<SL-"B` ("` ("` (&9I;&Q?=&5M<"AR87=?<'1R+'1E;7!?<'1R*3L-
M"B` ("` ("` ('1E;7!?<'1R(#T 9&%T93L-"B` ("` ("` (&9I;&Q?=&5M
M<"AR87=?<'1R+'1E;7!?<'1R*3L-"B` ("` ("` ('1E;7!?<'1R(#T <F%C
M95]T:6UE.PT*("` ("` ("` 9FEL;%]T96UP*')A=U]P='(L=&5M<%]P='(I
M.PT*("` ("` ("` =&5M<%]P='( /2!R86-E8V%R9%]N=6T[#0H ("` ("` 
M("!F:6QL7W1E;7`H<F%W7W!T<BQT96UP7W!T<BD[#0H ("` ("` ("!T96UP
M7W!T<B`](&1R87<[#0H ("` ("` ("!F:6QL7W1E;7`H<F%W7W!T<BQT96UP
M7W!T<BD[#0H ("` ("` ("!T96UP7W!T<B`](&9I;E]P;W,[#0H ("` ("` 
M("!F:6QL7W1E;7`H<F%W7W!T<BQT96UP7W!T<BD[#0H ("` ("` ("!T96UP
M7W!T<B`](&AO<G-E.PT*("` ("` ("` 9FEL;%]T96UP*')A=U]P='(L=&5M
M<%]P='(I.PT*("` ("` ("` =&5M<%]P='( /2!H;W)S95]C;W5N=')Y.PT*
M("` ("` ("` 9FEL;%]T96UP*')A=U]P='(L=&5M<%]P='(I.PT*("` ("` 
M("` =&5M<%]P='( /2!J;V-K97D[#0H ("` ("` ("!F:6QL7W1E;7`H<F%W
M7W!T<BQT96UP7W!T<BD[#0H ("` ("` ("!T96UP7W!T<B`](&IO8VME>5]C
M;&%I;3L-"B` ("` ("` (&9I;&Q?=&5M<"AR87=?<'1R+'1E;7!?<'1R*3L-
M"B` ("` ("` ('1E;7!?<'1R(#T =')A:6YE<CL-"B` ("` ("` (&9I;&Q?
M=&5M<"AR87=?<'1R+'1E;7!?<'1R*3L-"B` ("` ("` ('1E;7!?<'1R(#T 
M=&ES<W5E7W)A=&EN9SL-"B` ("` ("` (&9I;&Q?=&5M<"AR87=?<'1R+'1E
M;7!?<'1R*3L-"B` ("` ("` ('1E;7!?<'1R(#T ;V1D<U]T97AT.PT*("` 
M("` ("` 9FEL;%]T96UP*')A=U]P='(L=&5M<%]P='(I.PT*("` ("` ("` 
M=&5M<%]P='( /2!O9&1S7W9A;'5E.PT*("` ("` ("` 9FEL;%]T96UP*')A
M=U]P='(L=&5M<%]P='(I.PT*("` ("` ("` =&5M<%]P='( /2!A9V4[#0H 
M("` ("` ("!F:6QL7W1E;7`H<F%W7W!T<BQT96UP7W!T<BD[#0H ("` ("` 
M("!T96UP7W!T<B`]('=E:6=H=#L-"B` ("` ("` (&9I;&Q?=&5M<"AR87=?
M<'1R+'1E;7!?<'1R*3L-"B` ("` ("` ('1E;7!?<'1R(#T <&%C95]A8F)R
M978[#0H ("` ("` ("!F:6QL7W1E;7`H<F%W7W!T<BQT96UP7W!T<BD[#0H 
M("` ("` ("!T96UP7W!T<B`](&1S;'([#0H ("` ("` ("!F:6QL7W1E;7`H
M<F%W7W!T<BQT96UP7W!T<BD[#0H ("` ("` ("!T96UP7W!T<B`](&9A=CL-
M"B` ("` ("` (&9I;&Q?=&5M<"AR87=?<'1R+'1E;7!?<'1R*3L-"B` ("` 
M("` ('1E;7!?<'1R(#T <&%C95]R871I;F<[#0H ("` ("` ("!F:6QL7W1E
M;7`H<F%W7W!T<BQT96UP7W!T<BD[#0H ("` ("` ("!T96UP7W!T<B`](&]R
M.PT*("` ("` ("` 9FEL;%]T96UP*')A=U]P='(L=&5M<%]P='(I.PT*("` 
M("` ("` =&5M<%]P='( /2!P<F]F;W)M7W-P965D7W)A=&EN9SL-"B` ("` 
M("` (&9I;&Q?=&5M<"AR87=?<'1R+'1E;7!?<'1R*3L-"B` ("` ("` ('1E
M;7!?<'1R(#T 9&ES=%]T;U]N97AT.PT*("` ("` ("` 9FEL;%]T96UP*')A
M=U]P='(L=&5M<%]P='(I.PT*("` ("` ("` =&5M<%]P='( /2!D:7-T7W1O
M7W=I;FYE<CL-"B` ("` ("` (&9I;&Q?=&5M<"AR87=?<'1R+'1E;7!?<'1R
M*3L-"B` ("` ("` ('1E;7!?<'1R(#T =7-E<E]R871I;F=?,3L ("` ("`O
M*B!U<V5R7W)A=&EN9R`Q("8 ,BP :V5P="!I;B!S;R!R96%D:6YG(&9R;VT 
M='AT(&9I;&4 :6X 8V]R<F5C="!O<F1E<B`J+PT*("` ("` ("` 9FEL;%]T
M96UP*')A=U]P='(L=&5M<%]P='(I.PT*("` ("` ("` =&5M<%]P='( /2!U
M<V5R7W)A=&EN9U\R.PT*("` ("` ("` 9FEL;%]T96UP*')A=U]P='(L=&5M
M<%]P='(I.PT*("` ("` ("` =&5M<%]P='( /2!U<V5R7W)A=&EN9U\S.PT*
M("` ("` ("` 9FEL;%]T96UP*')A=U]P='(L=&5M<%]P='(I.PT*("` ("` 
M("` =&5M<%]P='( /2!T:7-S=65?;V1D<U]T97AT.PT*("` ("` ("` 9FEL
M;%]T96UP*')A=U]P='(L=&5M<%]P='(I.PT*("` ("` ("` =&5M<%]P='( 
M/2!T:7-S=65?;V1D<U]V86QU93L-"B` ("` ("` (&9I;&Q?=&5M<"AR87=?
M<'1R+'1E;7!?<'1R*3L-"B` ("` ("` ('1E;7!?<'1R(#T <')O9F]R;5]F
M;W)M7W)A=&EN9SL-"B` ("` ("` (&9I;&Q?=&5M<"AR87=?<'1R+'1E;7!?
M<'1R*3L-"B` ("` ("` ('1E;7!?<'1R(#T =&ES7W!R9CL-"B` ("` ("` 
M(&9I;&Q?=&5M<"AR87=?<'1R+'1E;7!?<'1R*3L-"B` ("` ("` ('1E;7!?
M<'1R(#T :&EG:&5S=%]R871I;F<[#0H ("` ("` ("!F:6QL7W1E;7`H<F%W
M7W!T<BQT96UP7W!T<BD[#0H ("` ("` ("!T96UP7W!T<B`](&QT;U]R871I
M;F<[#0H ("` ("` ("!F:6QL7W1E;7`H<F%W7W!T<BQT96UP7W!T<BD[#0H 
M("` ("` ("!T96UP7W!T<B`](&%V95]R871I;F=?86QL.PT*("` ("` ("` 
M9FEL;%]T96UP*')A=U]P='(L=&5M<%]P='(I.PT*("` ("` ("` =&5M<%]P
M='( /2!A=F5?<F%T:6YG7W1H<F5E.PT*("` ("` ("` 9FEL;%]T96UP*')A
M=U]P='(L=&5M<%]P='(I.PT*("` ("` ("` =&5M<%]P='( /2!M961I86Y?
M<F%T:6YG.PT*("` ("` ("` 9FEL;%]T96UP*')A=U]P='(L=&5M<%]P='(I
M.PT*("` ("` ("` =&5M<%]P='( /2!M961I86Y?<F%T:6YG7W1H<F5E.PT*
M("` ("` ("` 9FEL;%]T96UP*')A=U]P='(L=&5M<%]P='(I.PT*("` ("` 
M("` =&5M<%]P='( /2!S96-O;F1?:&EG:&5S=%]R871I;F<[#0H ("` ("` 
M("!F:6QL7W1E;7`H<F%W7W!T<BQT96UP7W!T<BD[#0H ("` ("` ("!T96UP
M7W!T<B`]('9D=SL-"B` ("` ("` (&9I;&Q?=&5M<"AR87=?<'1R+'1E;7!?
M<'1R*3L-"B` ("` ("` ('1E;7!?<'1R(#T :&EG:&5S=%]C;&%S<U]R871I
M;F<[#0H ("` ("` ("!F:6QL7W1E;7`H<F%W7W!T<BQT96UP7W!T<BD[#0H 
M("` ("` ("!T96UP7W!T<B`](')A8V5?8VQA<W-?;'1O.PT*("` ("` ("` 
M9FEL;%]T96UP*')A=U]P='(L=&5M<%]P='(I.PT*("` ("` ("` =&5M<%]P
M='( /2!N97=?8VQA<W-?;'1O.PT*("` ("` ("` 9FEL;%]T96UP*')A=U]P
M='(L=&5M<%]P='(I.PT*("` ("` ("` =&5M<%]P='( /2!D:7-T86YC95]L
M=&\[#0H ("` ("` ("!F:6QL7W1E;7`H<F%W7W!T<BQT96UP7W!T<BD[#0H 
M("` ("` ("!T96UP7W!T<B`]('9A;'5E7VQT;SL-"B` ("` ("` (&9I;&Q?
M=&5M<"AR87=?<'1R+'1E;7!?<'1R*3L-"B` ("` ("` ('1E;7!?<'1R(#T 
M<&]U;F1S7VQT;SL-"B` ("` ("` (&9I;&Q?=&5M<"AR87=?<'1R+'1E;7!?
M<'1R*3L-"B` ("` ("` ('1E;7!?<'1R(#T 9FEN:7-H961?<F%C97-?<W([
M#0H ("` ("` ("!F:6QL7W1E;7`H<F%W7W!T<BQT96UP7W!T<BD[#0H ("` 
M("` ("!T96UP7W!T<B`](')U;G-?8F5F;W)E.PT*("` ("` ("` 9FEL;%]T
M96UP*')A=U]P='(L=&5M<%]P='(I.PT*("` ("` ("` =&5M<%]P='( /2!W
M;VY?8F5F;W)E.PT*("` ("` ("` 9FEL;%]T96UP*')A=U]P='(L=&5M<%]P
M='(I.PT*("` ("` ("` =&5M<%]P='( /2!W;VY?<W)?8F5F;W)E.PT*("` 
M("` ("` 9FEL;%]T96UP*')A=U]P='(L=&5M<%]P='(I.PT*("` ("` ("` 
M=&5M<%]P='( /2!P<F]F:71?;&]S<SL-"B` ("` ("` (&9I;&Q?=&5M<"AR
M87=?<'1R+'1E;7!?<'1R*3L-"B` ("` ("` ('1E;7!?<'1R(#T <&QC7V)E
M9F]R93L-"B` ("` ("` (&9I;&Q?=&5M<"AR87=?<'1R+'1E;7!?<'1R*3L-
M"B` +RH ("` ("` =&5M<%]P='( /2!P;&-?<W)?8F5F;W)E.PT*("` ("` 
M("` 9FEL;%]T96UP*')A=U]P='(L=&5M<%]P='(I.R`J+PT*#0H-" T*#0H 
M("` ("` ("`O*B!I;G-E<G0 ;&]N9W, :6YT;R!S=')U8W0 *B\-" T*("` 
M("` ("` <')O7V1A=&$N=F%L=65?;'1O(#T 871O;"AV86QU95]L=&\I.PT*
M#0H-" T*("` ("` ("` +RH :6YS97)T(&EN="=S(&EN=&\ <W1R=6-T("HO
M#0H-"B` ("` ("` ('!R;U]D871A+G)U;FYE<G, ("` ("` ("` ("` (#T 
M871O:2AR=6YN97)S*3L-"B` ("` ("` ('!R;U]D871A+FYE=U]C;&%S<U]N
M=6T ("` ("` (#T 871O:2AN97=?8VQA<W-?;G5M*3L-"B` ("` ("` ('!R
M;U]D871A+FUI;E]A9V4 ("` ("` ("` ("` (#T 871O:2AM:6Y?86=E*3L-
M"B` ("` ("` ('!R;U]D871A+FUA>%]A9V4 ("` ("` ("` ("` (#T 871O
M:2AM87A?86=E*3L-"B` ("` ("` ('!R;U]D871A+FAA;F1I8V%P7VQI;6ET
M("` ("` (#T 871O:2AH86YD:6-A<%]L:6UI="D[#0H ("` ("` ("!P<F]?
M9&%T82YR86-E8V%R9%]N=6T ("` ("` ("`](&%T;VDH<F%C96-A<F1?;G5M
M*3L-"B` ("` ("` ('!R;U]D871A+F1R87< ("` ("` ("` ("` ("` (#T 
M871O:2AD<F%W*3L-"B` ("` ("` ('!R;U]D871A+F9I;E]P;W, ("` ("` 
M("` ("` (#T 871O:2AF:6Y?<&]S*3L-"B` ("` ("` ('!R;U]D871A+FIO
M8VME>5]C;&%I;2` ("` ("` (#T 871O:2AJ;V-K97E?8VQA:6TI.PT*("` 
M("` ("` <')O7V1A=&$N=&ES<W5E7W)A=&EN9R` ("` ("` /2!A=&]I*'1I
M<W-U95]R871I;F<I.PT*("` ("` ("` <')O7V1A=&$N86=E("` ("` ("` 
M("` ("` ("` /2!A=&]I*&%G92D[#0H ("` ("` ("!P<F]?9&%T82YW96EG
M:'0 ("` ("` ("` ("` ("`](&%T;VDH=V5I9VAT*3L-"B` ("` ("` ('!R
M;U]D871A+F1S;'( ("` ("` ("` ("` ("` (#T 871O:2AD<VQR*3L-"B` 
M("` ("` ('!R;U]D871A+G!A8V5?<F%T:6YG("` ("` ("` (#T 871O:2AP
M86-E7W)A=&EN9RD[#0H ("` ("` ("!P<F]?9&%T82YO<B` ("` ("` ("` 
M("` ("` ("`](&%T;VDH;W(I.PT*("` ("` ("` <')O7V1A=&$N<')O9F]R
M;5]S<&5E9%]R871I;F< /2!A=&]I*'!R;V9O<FU?<W!E961?<F%T:6YG*3L-
M"B` ("` ("` ('!R;U]D871A+G5S97)?<F%T:6YG7S, ("` ("` (#T 871O
M:2AU<V5R7W)A=&EN9U\S*3L-"B` ("` ("` ('!R;U]D871A+G!R;V9O<FU?
M9F]R;5]R871I;F< (#T 871O:2AP<F]F;W)M7V9O<FU?<F%T:6YG*3L-"B` 
M("` ("` ('!R;U]D871A+G1I<U]P<F8 ("` ("` ("` ("` (#T 871O:2AT
M:7-?<')F*3L-"B` ("` ("` ('!R;U]D871A+FAI9VAE<W1?<F%T:6YG("` 
M("` (#T 871O:2AH:6=H97-T7W)A=&EN9RD[#0H ("` ("` ("!P<F]?9&%T
M82YL=&]?<F%T:6YG("` ("` ("` ("`](&%T;VDH;'1O7W)A=&EN9RD[#0H 
M("` ("` ("!P<F]?9&%T82YA=F5?<F%T:6YG7V%L;"` ("` ("`](&%T;VDH
M879E7W)A=&EN9U]A;&PI.PT*("` ("` ("` <')O7V1A=&$N879E7W)A=&EN
M9U]T:')E92` ("` /2!A=&]I*&%V95]R871I;F=?=&AR964I.PT*("` ("` 
M("` <')O7V1A=&$N;65D:6%N7W)A=&EN9R` ("` ("` /2!A=&]I*&UE9&EA
M;E]R871I;F<I.PT*("` ("` ("` <')O7V1A=&$N;65D:6%N7W)A=&EN9U]T
M:')E92` /2!A=&]I*&UE9&EA;E]R871I;F=?=&AR964I.PT*("` ("` ("` 
M<')O7V1A=&$N<V5C;VYD7VAI9VAE<W1?<F%T:6YG(#T 871O:2AS96-O;F1?
M:&EG:&5S=%]R871I;F<I.PT*("` ("` ("` <')O7V1A=&$N<&]U;F1S7VQT
M;R` ("` ("` ("` /2!A=&]I*'!O=6YD<U]L=&\I.PT*("` ("` ("` <')O
M7V1A=&$N<G5N<U]B969O<F4 ("` ("` ("` /2!A=&]I*')U;G-?8F5F;W)E
M*3L-"B` ("` ("` ('!R;U]D871A+G=O;E]B969O<F4 ("` ("` ("` (#T 
M871O:2AW;VY?8F5F;W)E*3L-"B` ("` ("` ('!R;U]D871A+G!L8U]B969O
M<F4 ("` ("` ("` (#T 871O:2AP;&-?8F5F;W)E*3L-"B` ("` ("` ('!R
M;U]D871A+F9A=B` ("` ("` ("` ("` ("` (#T 871O:2AF878I.PT*("` 
M("` ("` <')O7V1A=&$N<V]R=%]S<%]O<F1E<B` ("` ("` ("` ("` (#T 
M,#L-"B` ("` ("` ('!R;U]D871A+G-O<G1?=V5I9VAT("` ("` ("` ("` 
M("` ("`](#`[#0H ("` ("` ("!P<F]?9&%T82YS;W)T7V5Q7W)A=&EN9R` 
M("` ("` ("` ("` /2`P.PT*("` ("` ("` <')O7V1A=&$N<V]R=%]E<5]T
M:7-S=64 ("` ("` ("` ("` (#T ,#L-"B` ("` ("` ('!R;U]D871A+G-O
M<G1?<')O9F]R;5]S<&5E9%]R871I;F< ("`](#`[#0H ("` ("` ("!P<F]?
M9&%T82YS;W)T7W!R;V9O<FU?9F]R;5]R871I;F< ("` /2`P.PT*("` ("` 
M("` <')O7V1A=&$N<V]R=%]P<F]F;W)M7W1I<W-U92` ("` ("` (#T ,#L-
M"B` ("` ("` ('!R;U]D871A+G-O<G1?<')O9F]R;5]T:7-?<')F("` ("` 
M("`](#`[#0H ("` ("` ("!P<F]?9&%T82YS;W)T7W!R;V9O<FU?;65D:6%N
M("` ("` ("` /2`P.PT*("` ("` ("` <')O7V1A=&$N<V]R=%]P<F]F;W)M
M7VAI9VAE<W1?8VQA<W, (#T ,#L-"B` ("` ("` ('!R;U]D871A+G-O<G1?
M<')O9F]R;5]H:6=H97-T7W)A=&EN9R`](#`[#0H ("` ("` ("!P<F]?9&%T
M82YS;W)T7W!R;V9O<FU?879E7W)A=&EN9R` ("` /2`P.PT*("` ("` ("` 
M<')O7V1A=&$N<V]R=%]S96-O;F1?:&EG:&5S=%]R871I;F< (#T ,#L-"B` 
M("` ("` ('!R;U]D871A+G-O<G1?=F1W("` ("` ("` ("` ("` ("` ("`]
M(#`[#0H ("` ("` ("!P<F]?9&%T82YS;W)T7V1S;'( ("` ("` ("` ("` 
M("` ("` /2`P.PT*#0H-" T*#0H ("` ("` ("`O*B!I;G-E<G0 9FQO871S
M(&EN=&\ <W1R=6-T*B\-"B` ("` ("` ('!R;U]D871A+G!R:7IE("` ("` 
M("` ("` ("` (#T 871O9BAP<FEZ92D[#0H ("` ("` ("!P<F]?9&%T82YT
M<FEC87-T("` ("` ("` ("` ("`](&%T;V8H=')I8V%S="D[#0H ("` ("` 
M("!P<F]?9&%T82YE>&%C=&$ ("` ("` ("` ("` ("`](&%T;V8H97AA8W1A
M*3L-"B` ("` ("` ('!R;U]D871A+F-S9B` ("` ("` ("` ("` ("` (#T 
M871O9BAC<V8I.PT*("` ("` ("` <')O7V1A=&$N;V1D<U]V86QU92` ("` 
M("` ("` /2!A=&]F*&]D9'-?=F%L=64I.PT*("` ("` ("` <')O7V1A=&$N
M=&ES<W5E7V]D9'-?=F%L=64 ("` /2!A=&]F*'1I<W-U95]O9&1S7W9A;'5E
M*3L-"B` ("` ("` ('!R;U]D871A+F9I;FES:&5D7W)A8V5S7W-R("` (#T 
M871O9BAF:6YI<VAE9%]R86-E<U]S<BD[#0H ("` ("` ("!P<F]?9&%T82YW
M;VY?<W)?8F5F;W)E("` ("` ("`](&%T;V8H=V]N7W-R7V)E9F]R92D[#0H 
M("` ("` ("!P<F]?9&%T82YP;&-?<W)?8F5F;W)E("` ("` ("`](&%T;V8H
M<&QC7W-R7V)E9F]R92D[#0H ("` ("` ("!P<F]?9&%T82YE<5]R871I;F< 
M("` ("` ("` ("`]("TR,#`N,#`[#0H ("` ("` ("!P<F]?9&%T82YE<5]T
M:7-S=64 ("` ("` ("` ("`]("`R,#`N,#`[("` ("` ("` ("` ("` ("` 
M("` +RH ;F5E9', =&\ 8F4 <&]S=&EV92!F;W( <V]R:6YG("HO#0H ("` 
M("` ("!P<F]?9&%T82YV86QU95]L=&\ ("` ("` ("` ("`](&%T;V8H=F%L
M=65?;'1O*3L-"B` ("` ("` ('!R;U]D871A+G!R;V9I=%]L;W-S("` ("` 
M("` (#T 871O9BAP<F]F:71?;&]S<RD[#0H ("` ("` ("!P<F]?9&%T82YD
M:7-T7W1O7VYE>'0 ("` ("` ("`](&%T;V8H9&ES=%]T;U]N97AT*3L-"B` 
M("` ("` ('!R;U]D871A+F1I<W1?=&]?=VEN;F5R("` ("` (#T 871O9BAD
M:7-T7W1O7W=I;FYE<BD[#0H ("` ("` ("!P<F]?9&%T82YV9'< ("` ("` 
M("` ("` ("` ("`](&%T;V8H=F1W*3L-"B` ("` ("` ('!R;U]D871A+F-A
M;&-?,2` ("` ("` ("` ("` (#T ,#L-"B` ("` ("` ('!R;U]D871A+F-A
M;&-?,B` ("` ("` ("` ("` (#T ,#L-"B` ("` ("` ('!R;U]D871A+F-A
M;&-?,R` ("` ("` ("` ("` (#T ,#L-"B` ("` ("` ('!R;U]D871A+F-A
M;&-?-"` ("` ("` ("` ("` (#T ,#L-"B` ("` ("` ('!R;U]D871A+F-A
M;&-?-2` ("` ("` ("` ("` (#T ,#L-"B` ("` ("` ('!R;U]D871A+F-A
M;&-?-B` ("` ("` ("` ("` (#T ,#L-"B` ("` ("` ('!R;U]D871A+F-A
M;&-?-R` ("` ("` ("` ("` (#T ,#L-"B` ("` ("` ('!R;U]D871A+F-A
M;&-?."` ("` ("` ("` ("` (#T ,#L-"B` ("` ("` ('!R;U]D871A+F-A
M;&-?.2` ("` ("` ("` ("` (#T ,#L-"B` ("` ("` ('!R;U]D871A+F-A
M;&-?,3` ("` ("` ("` ("` (#T ,#L-" T*#0H-"B` ("` ("` ("\J(&EN
M<V5R="!C:&%R<R!I;G1O('-T<G5C="` *B\-"B` ("` ("` ('-T<F-P>2AP
M<F]?9&%T82YD871E7W1I;64L9&%T95]T:6UE*3L-"B` ("` ("` ('-T<F-P
M>2AP<F]?9&%T82YC;W5R<V4L8V]U<G-E*3L-"B` ("` ("` ('-T<F-P>2AP
M<F]?9&%T82YC;W5R<V5?9&ER96-T:6]N+&-O=7)S95]D:7)E8W1I;VXI.PT*
M("` ("` ("` <W1R8W!Y*'!R;U]D871A+F-O=7)S95]C:&%R86-T97)I<W1I
M8W,L8V]U<G-E7V-H87)A8W1E<FES=&EC<RD[#0H ("` ("` ("!S=')C<'DH
M<')O7V1A=&$N<F%C95]T>7!E+')A8V5?='EP92D[#0H ("` ("` ("!S=')C
M<'DH<')O7V1A=&$N<F%C95]C;&%S<RQR86-E7V-L87-S*3L-"B` ("` ("` 
M('-T<F-P>2AP<F]?9&%T82YG;VEN9RQG;VEN9RD[#0H ("` ("` ("!S=')C
M<'DH<')O7V1A=&$N;V9F:6-I86Q?9V]I;F<L;V9F:6-I86Q?9V]I;F<I.PT*
M("` ("` ("` <W1R8W!Y*'!R;U]D871A+F-L87-S:69I8V%T:6]N<RQC;&%S
M<VEF:6-A=&EO;G,I.PT*("` ("` ("` <W1R8W!Y*'!R;U]D871A+FAO<G-E
M+'-T<G5P<BAH;W)S92DI.PT*("` ("` ("` <W1R8W!Y*'!R;U]D871A+FAO
M<G-E7V-O=6YT<GDL:&]R<V5?8V]U;G1R>2D[#0H ("` ("` ("!S=')C<'DH
M<')O7V1A=&$N:F]C:V5Y+&IO8VME>2D[#0H ("` ("` ("!S=')C<'DH<')O
M7V1A=&$N=')A:6YE<BQT<F%I;F5R*3L-"B` ("` ("` ('-T<F-P>2AP<F]?
M9&%T82YO9&1S7W1E>'0L;V1D<U]T97AT*3L-"B` ("` ("` ('-T<F-P>2AP
M<F]?9&%T82YP86-E7V%B8G)E=BQP86-E7V%B8G)E=BD[#0H ("` ("` ("!S
M=')C<'DH<')O7V1A=&$N<F%C95]C;&%S<U]L=&\L<F%C95]C;&%S<U]L=&\I
M.PT*("` ("` ("` <W1R8W!Y*'!R;U]D871A+FYE=U]C;&%S<U]L=&\L;F5W
M7V-L87-S7VQT;RD[#0H ("` ("` ("!S=')C<'DH<')O7V1A=&$N=&ES<W5E
M7V]D9'-?=&5X="QT:7-S=65?;V1D<U]T97AT*3L-"B` ("` ("` ('-T<F-P
M>2AP<F]?9&%T82YH:6=H97-T7V-L87-S7W)A=&EN9RQH:6=H97-T7V-L87-S
M7W)A=&EN9RD[#0H ("` ("` ("!S=')C<'DH<')O7V1A=&$N9&ES=&%N8V4L
M9&ES=&%N8V4I.PT*("` ("` ("` <W1R8W!Y*'!R;U]D871A+F1I<W1A;F-E
M7VQT;RQD:7-T86YC95]L=&\I.PT*("` ("` ("` <W1R8W!Y*'!R;U]D871A
M+F1A=&4L9&%T92D[#0H ("` ("` ("!S=')C<'DH<')O7V1A=&$N<F%C95]T
M:6UE+')A8V5?=&EM92D[#0H-" T*("` ("` ("` :68H('!R;U]D871A+F1S
M;'( /3T ,"`I#0H ("` ("` ("` ("` ('!R;U]D871A+F1S;'( /2`U,#`P
M.PT*#0H-"B` ("` ("` (&EF*"!F=W)I=&4H)G!R;U]D871A+'-I>F5O9BAS
M=')U8W0 <')O9F]R;2DL,2QF<%]O=70I("$](#$I#0H ("` ("` ("![#0H 
M("` ("` ("` ("` ('!R:6YT9B B17)R;W( =W)I=&EN9R!T;R!R86-E<R!F
M:6QE+BXN+D5X:71I;F<B*3L-"B` ("` ("` ("` ("` 97AI=" Q*3L-"B` 
M("` ("` ('T-" T*("` ('TO*F5N9"!W:&EL92`J+PT*#0H ("` <')I;G1F
M*")0<F]G<F%M(%-U8V-E<W-F=6PB*3L-"B` ("!F8VQO<V4H9G!?:6XI.PT*
M("` (&9C;&]S92AF<%]O=70I.PT*("` (&=E=&-H*"D[#0H ("` <F5T=7)N
M(#`[#0H-"GTO*B!E;F0 ;6%I;B`J+PT*#0HO*BTM+2TM+2TM+2TM+2TM+2TM
M+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM
M+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM
M+2T-"B!&=6YC=&EO;CH 9FEL;%]T96UP#0H 4'5R<&]S92`Z(&-O<&EE<R!D
M871A(&9R;VT =&AE(&-S=B!F:6QE+"!I;G1O(&-H87)A8W1E<B!A<G)A>2!R
M96%D>2!F;W( 8V]N=F5R=&EN9R!I;G1O('-T<G5C='5R97, *&)I;F%R>2D-
M"B!2971U<FYS(#H ;F]T:&EN9PT*("TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM
M+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM
M+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TM+2TJ+PT*
M#0H =F]I9"!F:6QL7W1E;7`H8VAA<B`J<F%W7W!T<BP 8VAA<B`J=&5M<%]P
M='(I#0H >PT*("` ("` (')A=U]P='( *ST <'1R7V-T<CL-" T*("` ("` 
M('=H:6QE*"IR87=?<'1R("$]("<L)R`F)B`J<F%W7W!T<B`A/2`G7&XG*0T*
M("` ("` ('L-"B` ("` ("` ("` *G1E;7!?<'1R(#T *G)A=U]P='([#0H 
M("` ("` ("` ('1E;7!?<'1R*RL[#0H ("` ("` ("` (')A=U]P='(K*SL-
M"B` ("` ("` ("` <'1R7V-T<BLK.PT*("` ("` ('T-"B` ("` ("`J=&5M
M<%]P='( /2`G7#`G.PT*("` ("` (')A=U]P='(K*SL-"B` ("` ("!P=')?
)8W1R*RL[#0I]
`
end
begin 644 example input.txt
M,3(O,#(O,C`P-B`Q,SHT,#HP,"Q(97)E9F]R9"Q22"Q3:&%R<"`O(%5N9'5L
M871I;F<L,FT ,68L,S4W."Q(=7)D;&4L,3,L12PT+#0L+"PP+#<Y+C L-3DN
M,S$L4V]F="Q';V]D(%1O(%-O9G0L361N+4AD;&4L,3(O,#(O,C`P-BPQ,SHT
M,"PQ-BPP+#,L5VAI<W1L92!";&]W:6YG+$E212Q3=&5P:&5N($H 0W)A:6YE
M+#,L1"!-8T-A:6XL,3 L,38O,2PQ-BPT+#$T-2Q0+#0Q+"PV+#`L-C8L-2PV
M+C4L+"PL,3$O,2PQ,2PR,"PS."PV,BPV,2PV,2PV,2PV,2PV,2PV,2PL1"Q%
M+#0L,FTL,CDR-RPQ-#8L,3`P+#4L,"PP+"TU+#$L,C`-"C$R+S`R+S(P,#8 
M,30Z,#`Z,#`L17AE=&5R+%)(+%-T:69F("\ 56YD=6QA=&EN9RPR;2`V9B`Q
M,3!Y+#,Q,C,L2'5R9&QE+#$S+$4L-"PT+"PQ,#4L,3`V."XX,2PV-BXS+#,S
M+C$U+$AE879Y+$=O;V0 5&\ 4V]F="Q(8V%P+4%M82U(9&QE+#$R+S`R+S(P
M,#8L,30Z,#`L,2PP+# L0F%L;V\L1T(L37( 0B!-;V]R8W)O9G0L-RQ*($0 
M1G)O<W0L,C(L,3$O,2PQ,2PQ,"PQ-3DL2"PY."PL-"PQ,#0L-#<L,C0L-3$N
M-3DY.3DX-#<T,3(Q,2PL+"PQ-2\R+#<N-2PT,BPV-"PW,RPV,BPV-RPV-RPV
M-RPV-RPV,BPT-2XT-"Q$+$4L,"PS;2`Q9B`Q,3!Y+#0W,C`L,30W+#$P,"PS
M-"PT+#$Q+C<V+"TX+C8S+#$R+#,U+C(Y#0HQ,B\P,B\R,#`V(#$T.C`P.C`P
M+$5X971E<BQ22"Q3=&EF9B`O(%5N9'5L871I;F<L,FT -F8 ,3$P>2PS,3(S
M+$AU<F1L92PQ,RQ%+#0L-"PL,3`U+#$P-C N.#$L-C8N,RPS,RXQ-2Q(96%V
M>2Q';V]D(%1O(%-O9G0L2&-A<"U!;6$M2&1L92PQ,B\P,B\R,#`V+#$T.C`P
M+#(L,"PT+$)A:R!4;R!":6QL+$="+$UI<W, 3"!'87)D;F5R+#4L37)S(%, 
M1V%R9&YE<BPX+#$T+S$L,30L,3$L,38P+%`L-#$L+# L,3`S+#4X+#<L,3DL
M+"PL,C(O,2PR,BPQ,2PQ.2PT.2PT.2PQ-BPR-"PP+#`L,"PU,"XT-2Q%+$4L
M-"PR;2`S9BPT-34T+#$U-"PX,"XS-BPU-BPT+#<N,30L+3$Y+#$W+#,P+C,V
M#0HQ,B\P,B\R,#`V(#$T.C`P.C`P+$5X971E<BQ22"Q3=&EF9B`O(%5N9'5L
M871I;F<L,FT -F8 ,3$P>2PS,3(S+$AU<F1L92PQ,RQ%+#0L-"PL,3`U+#$P
M-C N.#$L-C8N,RPS,RXQ-2Q(96%V>2Q';V]D(%1O(%-O9G0L2&-A<"U!;6$M
M2&1L92PQ,B\P,B\R,#`V+#$T.C`P+#,L,"PY+$YO8FQE($-A;&QI;F<L1E(L
M37( 2B!3;F]W9&5N+#,L4B!*($AO9&=E<RPR,RPV+S$L-BPY+#$V,BQ(+#,T
M+#,L-"PQ,#,L-#0L-RPU."XU.3DY.3 T-S0Q,C$Q+"PL+#<O,2PW+#(P+#0S
M+#8R+#8R+#0W+#4U+#4V+#0U+#4Y+#,Q+C U+$4L12PT+#-M(#$Q,'DL,S4W
M."PQ-C8L.30N-#0L-C L-2PW+C,U+"TQ-RXX,RPR,"PR.2XT,0T*,3(O,#(O
M,C`P-B`Q-#HP,#HP,"Q%>&5T97(L4D L4W1I9F8 +R!5;F1U;&%T:6YG+#)M
M(#9F(#$Q,'DL,S$R,RQ(=7)D;&4L,3,L12PT+#0L+#$P-2PQ,#8X+C Q+#8V
M+C,L,S,N,34L2&5A=GDL1V]O9"!4;R!3;V9T+$AC87`M06UA+4AD;&4L,3(O
M,#(O,C`P-BPQ-#HP,"PT+#`L,C4T+%-P<FEN9R!*=6YI;W(L1E(L+#,L4"!*
M($AO8F)S+# L,3(O,2PQ,BPU+#$V,BQ0+#0Q+"PQ,"PQ,#,L,"PP+#`L+"PL
M,C(O,2PR,BPW+#$U+#8P+#4Q+#0W+#0W+#4Q+#4Q+#4Q+"Q$+$4L-"PR;2`S
M9BPR.3(W+#$U,BPQ,#`L-2PP+#`L+34L,"PP#0HQ,B\P,B\R,#`V(#$T.C`P
M.C`P+$5X971E<BQ22"Q3=&EF9B`O(%5N9'5L871I;F<L,FT -F8 ,3$P>2PS
M,3(S+$AU<F1L92PQ,RQ%+#0L-"PL,3`U+#$P-C N.#$L-C8N,RPS,RXQ-2Q(
M96%V>2Q';V]D(%1O(%-O9G0L2&-A<"U!;6$M2&1L92PQ,B\P,B\R,#`V+#$T
M.C`P+#4L,"PU+$%S<')A+$92+$UR($, 2'5G:&5S+#<L0R!*($1O=VXL,C`L
M,3$O,2PQ,2PV+#$U-RQ(+#$Y,2PL,BPQ,#(L-34L."PR-RPL+"PX+S$L."PR
M."PT."PV,"PV,"PU-2PU-RPU-BPU-RPU-RPS,RXS,BQ%+$4L,"PR;2`T9BPS
M,S,R+#$T-2PQ,#`L-"PQ+#(U+#`N-2PQ+#(U#0HQ,B\P,B\R,#`V(#$T.C`P
M.C`P+$5X971E<BQ22"Q3=&EF9B`O(%5N9'5L871I;F<L,FT -F8 ,3$P>2PS
M,3(S+$AU<F1L92PQ,RQ%+#0L-"PL,3`U+#$P-C N.#$L-C8N,RPS,RXQ-2Q(
M96%V>2Q';V]D(%1O(%-O9G0L2&-A<"U!;6$M2&1L92PQ,B\P,B\R,#`V+#$T
M.C`P+#8L,"PR+$%B<F%G86YT92Q)4D4L37( 4B!1=6EN;BPW+$T 0R!0:7!E
M+#,Q+#<O-"PQ+C<U+#4L,34W+%`L-S<L,2PT+#$P,BPV-"PT+#0L+"PL-2\Q
M+#4L,C0L-34L-CDL,"PS.2PT-BPS-RPS,2PU.2PR,"XQ-BQ$+$0L,"PR;2`U
M9BPX-S S+#$T."PX,RXS,RPW+#$L,30N,CDL,30L,RPT,BXX- T*,3(O,#(O
M,C`P-B`Q-#HP,#HP,"Q%>&5T97(L4D L4W1I9F8 +R!5;F1U;&%T:6YG+#)M
M(#9F(#$Q,'DL,S$R,RQ(=7)D;&4L,3,L12PT+#0L+#$P-2PQ,#8X+C Q+#8V
M+C,L,S,N,34L2&5A=GDL1V]O9"!4;R!3;V9T+$AC87`M06UA+4AD;&4L,3(O
M,#(O,C`P-BPQ-#HP,"PW+#`L,RQ%;"!(;VUB<F4 1&5L(%)I;RQ)4D4L37( 
M1"!%9'=A<F1S+#,L5B!'($=R965N=V%Y+#8L-3`O,2PU,"PY+#$V,2Q0+#<Q
M+"PR+#$P,BPV,2PX+#$R+"PL+#(X+S$L,C L,RPY+#,Y+#,Y+#,Y+#,Y+#,Y
M+#,Y+"PT.2XU.2Q%+$4L,"PS;2PT,34W+#$V-BPX,"PR-RPR+#<N-#$L+3$S
M+#$P+#,W+C`T#0HQ,B\P,B\R,#`V(#$T.C`P.C`P+$5X971E<BQ22"Q3=&EF
M9B`O(%5N9'5L871I;F<L,FT -F8 ,3$P>2PS,3(S+$AU<F1L92PQ,RQ%+#0L
M-"PL,3`U+#$P-C N.#$L-C8N,RPS,RXQ-2Q(96%V>2Q';V]D(%1O(%-O9G0L
M2&-A<"U!;6$M2&1L92PQ,B\P,B\R,#`V+#$T.C`P+# L,"PV+$1E<F4 3'EN
M+$="+$UR(%( 5V]O;&QA8V]T="PU+$UR<R!$($$ 2&%M97(L,3 L,3(O,2PQ
M,BPX+#$U."Q(+#0W+"PT+#$P,2PU-2PP+C4L,C<N-2PL+"PY+S$L.2PQ,RPS
M,2PV,2PV,2PT-RPU,RPT."PU.2PU.2PS-2XU-2Q$+$0L,"PS;2PV,#4Y+#$T
M-RPQ,#`L,C<L-"PQ-"XX,2PX,RXU+#(L-RXT,0T*,3(O,#(O,C`P-B`Q-#HP
M,#HP,"Q%>&5T97(L4D L4W1I9F8 +R!5;F1U;&%T:6YG+#)M(#9F(#$Q,'DL
M,S$R,RQ(=7)D;&4L,3,L12PT+#0L+#$P-2PQ,#8X+C Q+#8V+C,L,S,N,34L
M2&5A=GDL1V]O9"!4;R!3;V9T+$AC87`M06UA+4AD;&4L,3(O,#(O,C`P-BPQ
M-#HP,"PY+#`L,C4T+$%L=F$ 1VQE;BQ54T$L37( 4B!-8T-A<G1H>2PW+$( 
M2B!,;&5W96QL>6XL,3 L,S,O,2PS,RPY+#$U-2Q(+#(T+"PP+#$P,"PP+#`L
M,"PL+"PY+S$L.2PS-2PU,RPW,RPS-RPU,2PU-BPU."PU."PW,"PT-2XP-BQ$
M+$,L,RPR;2`Q9BPU,C`T+#$T."PX,"XY-2PS,RPU+#$U+C$U+"TY+C(L-"PQ
M,BXQ, T*,3(O,#(O,C`P-B`Q-#HP,#HP,"Q%>&5T97(L4D L4W1I9F8 +R!5
M;F1U;&%T:6YG+#)M(#9F(#$Q,'DL,S$R,RQ(=7)D;&4L,3,L12PT+#0L+#$P
M-2PQ,#8X+C Q+#8V+C,L,S,N,34L2&5A=GDL1V]O9"!4;R!3;V9T+$AC87`M
M06UA+4AD;&4L,3(O,#(O,C`P-BPQ-#HP,"PQ,"PP+#$L1&5S97)T(%1O;6UY
M+$="+$UR($X 5VEL;&EA;7,L,"Q%=F%N(%=I;&QI86US+#,L,3(O,2PQ,BPU
M+#$V,BQ0+# L+#0L,3`P+#8U+#`L,"PL+"PV-B\Q+#8V+#(S+#(V+#$T+#`L
M-RPQ-"PW+#<L,"PV-RXV.2Q&+$4L-"PR;2`T9B`Q,3!Y+#4R,#0L,34V+#4P
M+#DL,2PQ,2XQ,2PU."PR+#(R+C(R#0HQ,B\P,B\R,#`V(#$T.C`P.C`P+$5X
M971E<BQ22"Q3=&EF9B`O(%5N9'5L871I;F<L,FT -F8 ,3$P>2PS,3(S+$AU
M<F1L92PQ,RQ%+#0L-"PL,3`U+#$P-C N.#$L-C8N,RPS,RXQ-2Q(96%V>2Q'
M;V]D(%1O(%-O9G0L2&-A<"U!;6$M2&1L92PQ,B\P,B\R,#`V+#$T.C`P+#$Q
M+#`L,C4T+%-U<F9B;V%R9"Q)4D4L36ES<R!&87EE($)R86UL97DL-2Q0($$ 
M0FQO8VML97DL-BPR,"\Q+#(P+#4L,34W+$PL,C,L+#$R+#$P,"PP+#`L,"PL
M+"PR."\Q+#(X+#$P+#$V+#4X+#`L,C(L,S0L,3`L,3`L,3`L,C`N-SDL12Q'
M+#4L,VTL,C(W-RPQ-C`L-C8N-C<L-RPQ+#$T+C(Y+# L,"PP#0HQ,B\P,B\R
M,#`V(#$T.C`P.C`P+$5X971E<BQ22"Q3=&EF9B`O(%5N9'5L871I;F<L,FT 
M-F8 ,3$P>2PS,3(S+$AU<F1L92PQ,RQ%+#0L-"PL,3`U+#$P-C N.#$L-C8N
M,RPS,RXQ-2Q(96%V>2Q';V]D(%1O(%-O9G0L2&-A<"U!;6$M2&1L92PQ,B\P
M,B\R,#`V+#$T.C`P+#$R+#`L-RQ-:6-K>2!#;VQE+$E212Q-<B!((%-K96QT
M;VXL-RQ0($8 3FEC:&]L;',L,3$L."\Q+# L-BPQ-30L2"PT,2PL,BPY.2PU
M-2PP+C$P,#`P,#`P,30Y,#$Q-BPR-RXV,#`P,#`S.#$T-CDW+"PL+#$V+S$L
M,38L,3$L,C(L-3 L-#$L-#0L-#4L-#`L-#$L-#$L+$4L12PT+#)M(#9F(#$Q
M,'DL,S`X,RPQ-3DL,3`P+#0L,"PP+"TT+#$L,C4-"C$R+S`R+S(P,#8 ,30Z
M,#`Z,#`L17AE=&5R+%)(+%-T:69F("\ 56YD=6QA=&EN9RPR;2`V9B`Q,3!Y
M+#,Q,C,L2'5R9&QE+#$S+$4L-"PT+"PQ,#4L,3`V."XX,2PV-BXS+#,S+C$U
M+$AE879Y+$=O;V0 5&\ 4V]F="Q(8V%P+4%M82U(9&QE+#$R+S`R+S(P,#8L
M,30Z,#`L,3,L,"PQ,"Q#87!R:6-O<FXL1T(L37( 0R!(;VQM86XL-RQ-:7-S
M($P 1&%Y+#DL,3`P+S$L,3`P+# L,34P+$ L,S<U+"PR+#DU+#DL,3`P+#$U
M."XV,#`P,#8Q,#,U,38L+"PL,C`O,2PR,"PW+#$V+#0Y+#0Y+#0Y+#0Y+#0Y
M+#0Y+"PL1BQ&+#`L,VTL,C8W-"PQ-C,L,3`P+# L,"PP+"TX+#(L,C4-"C$R
M+S`R+S(P,#8 ,30Z,3`Z,#`L2&5R969O<F0L4D L4VAA<G` +R!5;F1U;&%T
M:6YG+#)M(#-F(#$Q,'DL-3 U-2Q(=7)D;&4L,3,L0RPS+#0L+"PP+#,L,BXP
M-BQ3;V9T+$=O;V0 5&\ 4V]F="Q.;W8M36%R92U(9&QE+#$R+S`R+S(P,#8L
M,30Z,3`L,2PP+#$L4V5N;W)I=&$ 4G5M8F%L:71A+$="+%( 5&AO<FYT;VXL
M,"Q!($MI;F<L,C$L,B\U+#`N-"PU+#$V,"Q0+#0X+#$L-"PP+#4W+#`L,"PL
M+"PR-R\Q,"PR+C<L-3,L-S0L-3$L-3$L,C8L-#`L,CDL,CDL,CDL-C N-C<L
M12Q%+#`L,FTL,S0T-BPQ-3<L-C8N-C<L-BPS+#4P+#0N-30L,BPS,RXS,PT*
M,3(O,#(O,C`P-B`Q-#HQ,#HP,"Q(97)E9F]R9"Q22"Q3:&%R<"`O(%5N9'5L
M871I;F<L,FT ,V8 ,3$P>2PU.#4U+$AU<F1L92PQ,RQ#+#,L-"PL+#`L,RPR
M+C`V+%-O9G0L1V]O9"!4;R!3;V9T+$YO=BU-87)E+4AD;&4L,3(O,#(O,C`P
M-BPQ-#HQ,"PR+#`L,C4P+$%N;W1H97( 4&5N;GDL1T(L2"!/;&EV97(L,"Q2
M($1I8VMI;BPP+#(P,"\Q+#(P,"PV+#$U-"Q(+#$S+"PP+#`L,"PP+#`L+"PL
M+#`L-"PT+"PL+"PL+"PL+$ L-BPR;2PR,#4U+#$T,BPL,2PP+#`L+3$L,"PP
M#0HQ,B\P,B\R,#`V(#$T.C$P.C`P+$AE<F5F;W)D+%)(+%-H87)P("\ 56YD
M=6QA=&EN9RPR;2`S9B`Q,3!Y+#4X-34L2'5R9&QE+#$S+$,L,RPT+"PL,"PS
M+#(N,#8L4V]F="Q';V]D(%1O(%-O9G0L3F]V+4UA<F4M2&1L92PQ,B\P,B\R
M,#`V+#$T.C$P+#,L,"PT+$)L86-K8G)I97)Y(%1H>6YE+$E212Q-($)R861B
M=7)N92PP+$  1"!$86QY+# L,C`O,2PR,"PW+#$U-"Q(+#0X+"PV+#`L-#8L
M.2PR."PL+"PQ-R\R+# N-2PQ+#DL+"PL+"PL+"PL2"PP+#)M(#$Q,'DL,C`T
M,2PQ-#8L+#(L,"PP+"TR+#$L-3`-"C$R+S`R+S(P,#8 ,30Z,3`Z,#`L2&5R
M969O<F0L4D L4VAA<G` +R!5;F1U;&%T:6YG+#)M(#-F(#$Q,'DL-3 U-2Q(
M=7)D;&4L,3,L0RPS+#0L+"PP+#,L,BXP-BQ3;V9T+$=O;V0 5&\ 4V]F="Q.
M;W8M36%R92U(9&QE+#$R+S`R+S(P,#8L,30Z,3`L-"PP+#(L0V]L;&EN92!$
M92!&;&5U<G,L1T(L2B!-($UA9W5I<F4L,"Q*($$ 0B!/;&0L,BPY+S(L-"XU
M+#8L,34T+%`L,C8L,RPT+#`L-34L-BPV+"PL+#0P+S$L-#`L,C8L,C L+"PL
M+"PL+#$W+C$S+"Q(+#8L,FT ,68 ,3$P>2PQ-S$S+#$U-BPL,RPQ+#,S+C,S
M+#`N-2PQ+#,S+C,S#0HQ,B\P,B\R,#`V(#$T.C$P.C`P+$AE<F5F;W)D+%)(
M+%-H87)P("\ 56YD=6QA=&EN9RPR;2`S9B`Q,3!Y+#4X-34L2'5R9&QE+#$S
M+$,L,RPT+"PL,"PS+#(N,#8L4V]F="Q';V]D(%1O(%-O9G0L3F]V+4UA<F4M
M2&1L92PQ,B\P,B\R,#`V+#$T.C$P+#4L,"PS+$-R97-S=V5L;"!7:6QL;W<L
M25)%+$P 4W1E<&AE;G,L-2Q7($L 1V]L9'-W;W)T:'DL,RPQ,#`O,2PQ,#`L
M-BPQ-#DL3"PQ,RPL-"PY,"PT.2PQ,RPQ.2PL+"PR-2\Q+#(U+#8L.2PT-BPS
M.2PR-BPS-2PR.2PS.2PS.2PL12Q%+#0L,FT -68L,SDP,RPQ-#`L-S4L-BPP
M+#`L+38L,"PP#0HQ,B\P,B\R,#`V(#$T.C$P.C`P+$AE<F5F;W)D+%)(+%-H
M87)P("\ 56YD=6QA=&EN9RPR;2`S9B`Q,3!Y+#4X-34L2'5R9&QE+#$S+$,L
M,RPT+"PL,"PS+#(N,#8L4V]F="Q';V]D(%1O(%-O9G0L3F]V+4UA<F4M2&1L
M92PQ,B\P,B\R,#`V+#$T.C$P+#<L,"PR-30L3&]O<V4 36]R86QS+$E212Q-
M($9O;&5Y+#`L36ES<R!%($, 3&%V96QL92PV+#(U+S$L,C4L-2PQ-30L2"PR
M,BPL,"PP+#`L,"PP+"PL+#$R+S$L,3(L,RPY+#0S+#0S+#,U+#,U+#,U+#,U
G+#(X+"Q%+$4L-"PR;2PS,# S+#$U,2PQ,#`L,RPP+#`L+3,L,"PP
`
end
Apr 09 2007
parent reply Derek Parnell <derek nomail.afraid.org> writes:
On Mon, 9 Apr 2007 12:10:09 +0000 (UTC), Paul wrote:

 Hello, I am writing a program to read in a csv text file.
Hi Paul, Sorry to butt in here, but I'm keen to promote the D programming language, as it is makes it easier to write safer programs. I've made a quick attempt to recode your program in D. Please have a look if you like ... http://www.users.bigpond.com/ddparnell/procon.d However, please ignore this post if you feel it is inappropriate. -- Derek (skype: derek.j.parnell) Melbourne, Australia "Justice for David Hicks!" 10/04/2007 5:37:30 PM
Apr 10 2007
parent Paul <wcount12 aol.com> writes:
Hi Derek, thanks for your input.  However ive never looked
at the D language, and at present its been a while since
ive programmed in 'C'.  As you can see im having a few
difficulites with it.

Ill keep to 'C' for the moment ;)

Thanks for your input.

Paul
Apr 10 2007