anchor.diff:       DesiredBundleSize       :: non_neg_integer(),
        MsgsSinceBundleStart    :: non_neg_integer(),
        LastStatReport          :: stat_report(),
  -     TimeLastMsgSent         :: time_last_msg_sent(),
  +     TimeLastMsgSent         :: time_last_msg(),
  +     TimeLastMsgReceived     :: time_last_msg(),
        SentMsgCountSession     :: non_neg_integer(),
        ReceivedMsgCountSession :: non_neg_integer(),
        SessionCount            :: non_neg_integer(),
  -     LastMsgSent             :: comm:message() | none,
  -     LastMsgReceived         :: comm:message() | none
  +     LastMsgSent             :: [msg_or_tag()],
  +     LastMsgReceived         :: [msg_or_tag()]
       }.
   -type message() ::
       {send, DestPid::pid(), Message::comm:message(), Options::comm:send_options()} |
  
positive.code:         ok ->
              ?TRACE("~.0p Sent message ~.0p~n",
                     [pid_groups:my_pidname(), Message]),
              State2 = state_after_sending(State, Message),
              %% only close in case of no_keep_alive if the
              %% connection was solely initiated for this send
              case lists:member({no_keep_alive}, Options)
  
negative.code: -define(TRACE(X,Y), ok).
  -behaviour(gen_component).
  
  -define(NUM_KEEP_MSGS, 10).
  -define(KEEP_MSG_OR_TAG, tag).
  
  -compile({inline, [dest_ip/1, dest_port/1, local_listen_port/1, channel/1,
                     socket/1, set_socket/2,
                     started/1,
  