anchor.diff:      end;
   scan_dot([$\n | Cs], _Stack, Toks, {Line, Col}, State, Errors, TabWidth,FileFormat) ->
       done(Cs, Errors, [{whitespace, {Line, Col+1}, '\n'}, {dot, {Line, Col}} | Toks], {Line + 1, 1}, State, TabWidth,FileFormat);
  +scan_dot([$\t | Cs], _Stack, Toks, {Line, Col}, State, Errors, TabWidth,FileFormat) ->
  +    done(Cs, Errors, [{whitespace, {Line, Col+1}, '\t'}, {dot, {Line, Col}} | Toks], {Line, Col+TabWidth}, State, TabWidth,FileFormat);
   scan_dot([C | Cs], _Stack, Toks, {Line, Col}, State, Errors, TabWidth,FileFormat)
     when C >= $\000, C =< $\s ->
       done(Cs, Errors, [{whitespace, {Line,Col+1}, '\s'}, {dot, {Line, Col}} | Toks],{Line, Col + 2}, State, TabWidth,FileFormat);
  
positive.code:     end;
  scan_string([$\n | Cs], Stack, Toks, {Line, _Col}, State,  Errors, TabWidth,FileFormat) ->
      scan_string(Cs, [$\n | Stack], Toks, {Line + 1, 1}, State, Errors, TabWidth,FileFormat);
  scan_string([$\\,$" | Cs], Stack, Toks, {Line, Col}, State,  Errors, TabWidth,FileFormat) ->
      case reverse(Stack) of 
  	[StartPos, $" |S] ->
  	    scan(Cs, [], [{string, StartPos, S++[$\\]} | Toks],{Line, Col+2}, State, Errors, TabWidth,FileFormat);
  	_ ->
  	    scan_string(Cs, [$", $\\| Stack], Toks, {Line, Col+2}, State, Errors, TabWidth,FileFormat)
      end;
  %% scan_string([$\\ | Cs], Stack, Toks, {Line, Col}, State,  Errors, TabWidth,FileFormat) ->
  %%        scan_string(Cs, [$\\| Stack], Toks, {Line, Col+1}, State, Errors, TabWidth,FileFormat);
  scan_string([C | Cs], Stack, Toks, {Line, Col}, State, Errors, TabWidth,FileFormat) 
     when C==$\t ->
      scan_string(Cs, [C | Stack], Toks, {Line, Col+TabWidth}, State,Errors, TabWidth,FileFormat);
  
negative.code: sub_scan_escape([O1 | Cs], [Fun | Stack], Toks,
  		{Line, Col}, State, Errors, TabWidth,FileFormat)
      when O1 >= $0, O1 =< $7 ->
      %%Val = O1 - $0,
      Fun([O1 | Cs], Stack, Toks, {Line, Col}, State,
  	Errors, TabWidth,FileFormat);
  %% \^X -> CTL-X
  sub_scan_escape([$^, C | Cs], [Fun | Stack], Toks,
  		{Line, Col}, State, Errors, TabWidth,FileFormat) ->
      %%Val = C band 31,
      Fun([C | Cs], Stack, Toks, {Line, Col}, State,
  	Errors, TabWidth,FileFormat);
  sub_scan_escape([$^] = Cs, Stack, Toks, {Line, Col},
  		State, Errors, TabWidth,FileFormat) ->
  