anchor.diff:  on({send, DestPid, Message}, State) ->
       Socket = case socket(State) of
                    notconnected ->
  -                     log:log(info, "Connecting to ~p:~p", [dest_ip(State), dest_port(State)]),
  +                     log:log(info, "Connecting to ~.0p:~.0p", [dest_ip(State), dest_port(State)]),
                        new_connection(dest_ip(State),
                                       dest_port(State),
                                       local_listen_port(State));
  
positive.code:                             gen_tcp:send(Socket, YouAre),
                              Socket;
                          {error, Reason} ->
                              log:log(error,"[ CC ] reconnect to ~p because socket is ~p",
                                      [Address, Reason]),
                              gen_tcp:close(Socket),
                              new_connection(Address, Port, MyPort)
                      end;
                  {error, Reason} ->
                      log:log(error,"[ CC ] reconnect to ~p because socket is ~p",
                              [Address, Reason]),
                      gen_tcp:close(Socket),
                      new_connection(Address, Port, MyPort)
              end;
          {error, Reason} ->
              log:log(info,"[ CC ] couldn't connect to ~p:~p (~p)",
                      [Address, Port, Reason]),
              fail
      end.
  
negative.code:                 gen_tcp:close(Socket),
                  notconnected;
              {error, timeout} ->
                  log:log(error,"[ CC ] couldn't send to ~.0p:~.0p (~.0p). retrying.",
                          [Address, Port, timeout]),
                  send({Address, Port, Socket}, Pid, Message);
              {error, Reason} ->
                  log:log(error,"[ CC ] couldn't send to ~.0p:~.0p (~.0p). closing connection",
                          [Address, Port, Reason]),
                  gen_tcp:close(Socket),
                  notconnected
  