anchor.diff:      #ho_acc{
               filter=Filter,
               module=Module,
  -            total=Total,
  +            total_objects=TotalObjects,
               item_queue=ItemQueue,
  +            item_queue_length=ItemQueueLength,
               item_queue_byte_size=ItemQueueByteSize
              } = Acc,
   
  
positive.code:             src_target={SrcPartition, TargetPartition},
              stats=Stats,
              tcp_mod=TcpMod,
              total=Total,
              total_bytes=TotalBytes
             } = Acc,
  
              NObjects = length(Items),
              ObjectList = term_to_binary(Items),
  
              M = <<?PT_MSG_BATCH:8, ObjectList/binary>>,
  
              NumBytes = byte_size(M),
  
  %%JFW: TODO: length of list in stats (new incr_objs()) or track #objs/make count a tuple
              Stats2 = incr_bytes(incr_objs(Stats), NumBytes),
  
              Stats3 = maybe_send_status({Module, SrcPartition, TargetPartition}, Stats2),
  
              case TcpMod:send(Sock, M) of
                  ok ->
                      Acc#ho_acc{ack=Ack+1, error=ok, stats=Stats3, 
                                 total=Total+NObjects,
                                 total_bytes=TotalBytes+NumBytes,
                                 item_queue=[],
                                 item_queue_byte_size=0};
                  {error, Reason} ->
                      Acc#ho_acc{error={error, Reason}, stats=Stats3}
  
negative.code:           src_target           :: {non_neg_integer(), non_neg_integer()},
            stats                :: #ho_stats{},
            tcp_mod              :: module(),
  
            total_objects        :: non_neg_integer(),
            total_bytes          :: non_neg_integer(),
  
            item_queue           :: [binary()],
            item_queue_length    :: non_neg_integer(),
            item_queue_byte_size :: non_neg_integer()
          }).
  
  