anchor.diff:  %% @private
   as_event(F) ->
       Self = self(),
  -    spawn(fun() ->
  -                  Result = F(),
  -                  gen_fsm:send_event(Self, Result)
  -          end),
  +    spawn_link(fun() ->
  +                       Result = F(),
  +                       gen_fsm:send_event(Self, Result)
  +               end),
       ok.
   
   %% @private
  
positive.code:             lager:debug("Moving to key exchange"),
              {next_state, key_exchange, State, 0};
          _ ->
              next_state_with_timeout(update_trees, State#state{built=Built})
      end.
  
  %% @doc Now that locks have been acquired and both hashtrees have been updated,
  
negative.code: 
      update_request(LocalTree, LocalVN, IndexN),
      update_request(RemoteTree, RemoteVN, IndexN),
      {next_state, update_trees, State};
  
  update_trees({not_responsible, VNodeIdx, IndexN}, State) ->
      lager:debug("VNode ~p does not cover preflist ~p", [VNodeIdx, IndexN]),
      send_exchange_status({not_responsible, VNodeIdx, IndexN}, State),
  