anchor.diff:          [T] ->
               TS = erl_types:t_to_string(T),
               case erl_types:t_is_opaque(T) of
  -                true  -> format("an opaque term of type ~s is expected", [TS]);
  -                false -> format("a structured term of type ~s is expected", [TS])
  +                true  -> fmt("~!Wan opaque term of type ~!!~s~!W is"
  +                                " expected", [TS]);
  +                false -> fmt("~!Wa structured term of type ~!!~s~!W is"
  +                                " expected", [TS])
               end;
  -        [_,_|_] -> "terms of different types are expected in these positions"
  +        [_,_|_] -> fmt("~!Wterms of different types are expected in these"
  +                          " positions", [])
       end.
   
   form_position_string(ArgNs) ->
  
positive.code: highlight([], _N, _C, Rest) ->
      Rest;
  
  highlight([N | Nr], N, C, [Arg | Rest]) ->
      [[C, Arg, ?R] | highlight(Nr, N+1, C, Rest)];
  
  highlight(Ns, N, C, [Arg | Rest]) ->
      [Arg | highlight(Ns, N + 1, C, Rest)].
  
  %% highlight([], _N, _C, Rest) ->
  %%     [[?NG, A, ?R] || A <- Rest];
  
  %% highlight([N | Nr], N, C, [Arg | Rest]) ->
  %%     [[?NR, Arg, ?R] | highlight(Nr, N+1, C, Rest)];
  
  %% highlight(Ns, N, C, [Arg | Rest]) ->
  %%     [[?NG, Arg, ?R] | highlight(Ns, N + 1, C, Rest)].
  
  seperate_args([$( | S]) ->
      seperate_args([], S, "", []).
  
  
  
  %% We strip this space since dialyzer is inconsistant in adding or not adding 
  %% it ....
  seperate_args([], [$,, $\s | R], Arg, Args) ->
      seperate_args([], R, [], [lists:reverse(Arg) | Args]);
  
negative.code: %%    colorize(Color, false, Msg).
  
  %% colorize(Color, false, Msg) when is_integer(Color) ->
  %%     lists:flatten(fmt("\033[~B;~Bm~s\033[0m", [0, Color, Msg]));
  %% colorize(Color, true, Msg) when is_integer(Color) ->
  %%     lists:flatten(fmt("\033[~B;~Bm~s\033[0m", [1, Color, Msg])).
  
  
  %%bw(M) ->
  