anchor.diff:                          B = Remote(key_hashes, Segment),
                           Delta = riak_ensemble_util:orddict_delta(lists:keysort(1, A),
                                                                    lists:keysort(1, B)),
  +			lager:debug("Exchange Final\nA=~p\nB=~p\nD=~p\n",
  +				    [A, B, Delta]),
                           Keys = [begin
                                       {_Id, Segment, Key} = decode(KBin),
                                       Type = key_diff_type(Diff),
  
positive.code:     HL1 = orddict:from_list(KeyHashes1),
      HL2 = orddict:from_list(KeyHashes2),
      Delta = orddict_delta(HL1, HL2),
      Keys = [begin
                  {Id, Segment, Key} = decode(KBin),
                  Type = key_diff_type(Diff),
  
negative.code:                    encode(Id, First, <<>>)
             end,
      IS2 = iterate(iterator_move(Itr, Seek), IS1),
      #itr_state{remaining_segments = LeftOver,
                 current_segment=LastSegment,
                 segment_acc=LastAcc,
                 final_acc=FA} = IS2,
  
      %% iterate completes without processing the last entries in the state.  Compute
      %% the final visited segment, and add calls to the F([]) for all of the segments
      %% that do not exist at the end of the file (due to deleting the last entry in the
      %% segment).
      Result = [{LeftSeg, F([])} || LeftSeg <- lists:reverse(LeftOver),
  				  LeftSeg =/= '*'] ++
  	[{LastSegment, F(LastAcc)} | FA],
      case Result of
          [{'*', _}] ->
              %% Handle wildcard select when all segments are empty
  