anchor.diff:  
   on({l_on_cseq, merge_reply_step1, L2, ReplyTo,
       {qwrite_deny, _ReqId, Round, L1, {content_check_failed,
  -                                      {Reason, _Current, _Next}}}}, State) ->
  +                                      {Reason, Current, Next}}}}, State) ->
       % @todo if success update lease in State
       ?TRACE_ERROR("merge step1 failed~n~w~n~w~n~w~n~w:~w~n", [Reason, L1, L2, _ReqId, Round]),
       % retry?
       case Reason of
           lease_does_not_exist ->
               %% cannot happen
  -            comm:send_local(ReplyTo, {merge, fail, lease_does_not_exist, L1, L2}),
  +            comm:send_local(ReplyTo, {merge, fail, lease_does_not_exist, step1,
  +                                      L1, L2, Current, Next}),
               State;
           unexpected_id ->
               %% cannot happen
  -            comm:send_local(ReplyTo, {merge, fail, unexpected_id, L1, L2}),
  +            comm:send_local(ReplyTo, {merge, fail, unexpected_id, step1, L1, L2,
  +                                      Current, Next}),
               State;
           unexpected_owner ->
               %% give up, there was probably a concurrent merge
  -            comm:send_local(ReplyTo, {merge, fail, unexpected_owner, L1, L2}),
  +            comm:send_local(ReplyTo, {merge, fail, unexpected_owner, step1, L1, L2,
  +                                     Current, Next}),
               State;
           unexpected_aux ->
               %% give up, there was probably a concurrent merge
  -            comm:send_local(ReplyTo, {merge, fail, unexpected_aux, L1, L2}),
  +            comm:send_local(ReplyTo, {merge, fail, unexpected_aux, step1, L1, L2,
  +                                      Current, Next}),
               State;
           unexpected_range ->
               %% give up, there was probably a concurrent merge
  -            comm:send_local(ReplyTo, {merge, fail, unexpected_range, L1, L2}),
  +            comm:send_local(ReplyTo, {merge, fail, unexpected_range, step1, L1, L2,
  +                                     Current, Next}),
               State;
           unexpected_timeout ->
               %% retry
  
positive.code: 
  on({l_on_cseq, merge_reply_step2, L1, ReplyTo,
      {qwrite_deny, _ReqId, Round, L2,
       {content_check_failed, {Reason, _Current, _Next}}}}, State) ->
      % @todo if success update lease in State
      ?TRACE_ERROR("merge step2 failed~n~w~n~w~n~w~n~w~n~w~n", [Reason, L1, L2, _Current, _Next]),
      case Reason of
          lease_does_not_exist ->
              %% cannot happen
              comm:send_local(ReplyTo, {merge, fail, lease_does_not_exist, L1, L2}),
              State;
          unexpected_id ->
              %% cannot happen
              comm:send_local(ReplyTo, {merge, fail, unexpected_id, L1, L2}),
              State;
          unexpected_owner ->
              %% give up, there was probably a concurrent merge
              comm:send_local(ReplyTo, {merge, fail, unexpected_owner, L1, L2}),
              State;
          unexpected_aux ->
              %% give up, there was probably a concurrent merge
              comm:send_local(ReplyTo, {merge, fail, unexpected_aux, L1, L2}),
              State;
          unexpected_range ->
              %% give up, there was probably a concurrent merge
              comm:send_local(ReplyTo, {merge, fail, unexpected_range, L1, L2}),
              State;
          unexpected_timeout ->
              % retry
  
negative.code: on({l_on_cseq, post_recover_merge, Result}, State) ->
      case Result of
          {merge, success, L2, L1} ->
              log:log("recover(~p): the merge of ~p and ~p was a success", [self(), L2, L1]),
              %% check for more passive leases
              gen_component:post_op({l_on_cseq, wait_for_recover}, State);
          {merge, fail, Reason, Step, _L1, _L2, Current, Next} ->
              log:log("recover(~p): the merge failed in step ~p with ~p~nL1: ~p~nL2: ~p~nCurrent: ~p~nNext: ~p~n",
                      [self(), Step, Reason, _L1, _L2, Current, Next]),
              State
      end.
  
  