anchor.diff:      packet := Packet} = D,
     ActionsR, Data) ->
       %%
  +    %% ?DBG([{owner, Owner},
  +    %% 	  {mode, Mode},
  +    %% 	  {header, Header}, {deliver, Deliver}, {packet, Packet}]), 
       DeliverData = deliver_data(Data, Mode, Header, Packet),
       case D of
           #{recv_from := From} ->
  
positive.code:     handle_connected(P, D, ActionsR).
  %%
  handle_connected(P, D, ActionsR) ->
      case D of
          #{active := false} ->
              {next_state, 'connected',
  
negative.code:             handle_recv_deliver(P, D#{buffer := <<>>}, ActionsR, Data)
      end.
  
  handle_recv_decode(P,
  		   #{packet         := line,
  		     line_delimiter := LineDelimiter,
  		     packet_size    := PacketSize} = D,
  		   ActionsR, Data) ->
      DecodeOpts = [{line_delimiter, LineDelimiter},
  		  {line_length,    PacketSize}],
      handle_recv_decode(P, D,
  		       ActionsR, Data, DecodeOpts);
  handle_recv_decode(P, D, ActionsR, Data) ->
      handle_recv_decode(P, D, ActionsR, Data, []).
  
  handle_recv_decode(P, #{packet_size := PacketSize} = D,
  		   ActionsR, Data, DecocdeOpts0) ->
      %% ?DBG([{packet_sz, PacketSize}, {decode_opts0, DecocdeOpts0}]),
      DecodeOpts = [{packet_size, PacketSize}|DecocdeOpts0], 
      case erlang:decode_packet(decode_packet(D), Data, DecodeOpts) of
          {ok, Decoded, Rest} ->
              %% is_list(Buffer) -> try to decode first
              %% is_binary(Buffer) -> get more data first
  