anchor.diff:  update_objects(Clock, _Properties, Updates, StayAlive) ->
       Actor = actor, %% TODO: generate unique actors
       Operations = lists:map(
  -                   fun({{Key, Type, _Bucket}, Op, OpParam}) ->
  -                           {update, {Key, Type, {{Op,OpParam}, Actor}}}
  +                   fun({{Key, Type, Bucket}, Op, OpParam}) ->
  +                           {update, {{Key, Bucket}, Type, {{Op,OpParam}, Actor}}}
                      end,
                      Updates),
       SingleKey = case Operations of
  
positive.code: 
  read_objects(Clock, _Properties, Objects, StayAlive) ->
      Args = lists:map(
               fun({Key, Type, _Bucket}) ->
                       {read, {Key, Type}}
               end,
               Objects),
      SingleKey = case Args of
  
negative.code: read_objects(Objects, TxId) ->
      %%TODO: Transaction co-ordinator handles multiple reads
      %% Executes each read as in a interactive transaction
      Results = lists:map(fun({Key, Type, Bucket}) ->
                                  case clocksi_iread(TxId, {Key, Bucket}, Type) of
                                      {ok, Res} ->
                                          Res;
                                      {error, _Reason} ->
  