anchor.diff:                                    _ -> VBuckets
                                 end),
                      last_seen=now(),
  +                   opcode_counts=dict:new(),
                      takeover=TakeOver},
  +    %% Trap exits so we can log
  +    process_flag(trap_exit, true),
       gen_server:enter_loop(?MODULE, [], State).
   
   
  -terminate(_Reason, _State) ->
  +terminate(_Reason, State) ->
  +    ?log_info("Opcode counts: ~p", [dict:to_list(State#state.opcode_counts)]),
       ok.
   
   
  
positive.code:                 vbuckets,
                  takeover :: boolean(),
                  takeover_msgs_seen = 0 :: non_neg_integer(),
                  last_seen}).
  
  %% external API
  
negative.code:     {Buffer, State}.
  
  
  %% @doc Append Data to the appropriate buffer, calling the given
  %% callback for each packet.
  -spec process_data(binary(), non_neg_integer(),
                     fun((binary(), #state{}) -> #state{}), #state{}) -> #state{}.
  process_data(Data, Elem, CB, State) ->
  