anchor.diff:                                  LocalItem
                           end,
                 NewItem = tx_item_state:set_status(TmpItem, ok),
  -              _ = my_set_entry(NewItem, State),
  +              _ = my_set_entry(NewItem, NewState),
                 NewItem
             end || Entry <- ItemStates],
   
       %% initiate local paxos acceptors (with received paxos_ids)
       Learners = tx_state:get_learners(TxState),
  -    LAcceptor = state_get_lacceptor(State),
  +    LAcceptor = state_get_lacceptor(NewState),
       _ = [ [ acceptor:start_paxosid_local(LAcceptor, PaxId, Learners)
           || {PaxId, _RTlog, _TP}
                  <- tx_item_state:get_paxosids_rtlogs_tps(ItemState) ]
  
positive.code:     %%msg_delay:send_local(1 + InRole, self(), {tx_tm_rtm_propose_yourself, Tid}),
      %% after timeout take over and initiate new paxos round as proposer
      %% done in on({tx_tm_rtm_propose_yourself...}) handler
      State;
  
  % received by RTMs
  on({register_TP, {Tid, ItemId, PaxosID, TP}} = Msg, State) ->
  
negative.code:     %% lookup transaction id locally and merge with given TxState
      Tid = tx_state:get_tid(TxState),
      {LocalTxStatus, LocalTxEntry} = my_get_tx_entry(Tid, State),
      {TmpEntry, NewState} =
          case LocalTxStatus of
              new ->
                  TmpState = state_subscribe(State, tx_state:get_tm(TxState)),
                  {TxState, TmpState}; %% nothing known locally
              uninitialized ->
                  %% take over hold back from existing entry
                  %%io:format("initRTM takes over hold back queue for id ~p in ~p~n", [Tid, Role]),
                  HoldBackQ = tx_state:get_hold_back(LocalTxEntry),
                  {tx_state:set_hold_back(TxState, HoldBackQ), State};
              ok ->
                  log:log(error, "Duplicate init_RTM", []),
                  {LocalTxEntry, State}
          end,
      NewEntry = tx_state:set_status(TmpEntry, ok),
      _ = my_set_entry(NewEntry, NewState),
  
      %% lookup items locally and merge with given ItemStates
      NewItemStates =
          [ begin
                EntryId = tx_item_state:get_itemid(Entry),
                {LocalItemStatus, LocalItem} = my_get_item_entry(EntryId, NewState),
                TmpItem = case LocalItemStatus of
                              new -> Entry; %% nothing known locally
                              uninitialized ->
  