anchor.diff:  to_list(Name, [{message, M}],
           #irc_cmd{target=T, ctcp = undefined}) when Name == notice;
                                                      Name == privmsg ->
  -    lists:flatten([irc_commands:to_list(Name), nick(T), " ", M]);
  +    lists:flatten([irc_commands:to_list(Name), " ", nick(T), " :", M]);
   
   to_list(Name, Args, 
           #irc_cmd{target=T, ctcp = Ctcp}) when Name == notice;
  
positive.code: 
  ctcp_to_list(#ctcp_cmd{name=version, args=A}) ->
      Client = proplists:get_value(client, A, "erlirc"),
      Version = proplists:get_value(client, A, "0.0.1"),
      Environment = proplists:get_value(client, A, "erlang"),
      io_lib:format("VERSION ~s:~s:~s", [Client, Version, Environment]);
  ctcp_to_list(#ctcp_cmd{name=action, args=[{action, A}]}) ->
      "ACTION " ++ A;
  
negative.code: 
  parse_args(join, [$:|Chans], Cmd) ->
      Cmd#irc_cmd{args=[{channels, string:tokens(Chans, ",")}]};
  
  parse_args(notopic, Args, Cmd) ->
      Cmd;
  parse_args(topic, [$:|Topic], Cmd) ->
      Cmd#irc_cmd{args=[{topic, Topic}]};
  
  parse_args(namreply, Arg, Cmd) ->
      {NickChan, MemberStr} = irc_parser:split($:, Arg),
      {Nick, Chan} = irc_parser:split($=, NickChan),
      Members = string:tokens(MemberStr, " "),
      Cmd#irc_cmd{args=[{channel, Chan},
                        {members, Members}]};
  
  parse_args(endofnames, Arg, Cmd) ->
      {Chan, Message} = irc_parser:split($:, Arg),
      Cmd#irc_cmd{args=[{channel, Chan},
                        {message, Message}]};
  
  parse_args(Name, Args, Cmd) when Name == welcome;
                                   Name == yourhost;
  