anchor.diff:      end.
   
   %% For static transactions: bulk updates and bulk reads
  --spec update_objects(snapshot_time() | ignore , term(), [{bound_object(), op_name(), op_param()}]) ->
  +-spec update_objects(snapshot_time() | ignore , list(), [{bound_object(), op_name(), op_param()}| {bound_object(), {op_name(), op_param()}}]) ->
                               {ok, snapshot_time()} | {error, reason()}.
   update_objects(Clock, Properties, Updates) ->
       update_objects(Clock, Properties, Updates, false).
   
  --spec update_objects(snapshot_time() | ignore , term(), [{bound_object(), op_name(), op_param()}], boolean()) ->
  +-spec update_objects(snapshot_time() | ignore , list(), [{bound_object(), op_name(), op_param()}| {bound_object(), {op_name(), op_param()}}], boolean()) ->
       {ok, snapshot_time()} | {error, reason()}.
   update_objects(_Clock, _Properties, [], _StayAlive) ->
       {ok, vectorclock:new()};
  
positive.code: 
  %% @doc The following function is called by the static versions of read and update_objects
  %%      to execute a static transaction.
  -spec start_static_transaction(update_objects | read_objects, list(), boolean(), vectorclock()) -> {ok, vectorclock()} | {error, reason()}.
  start_static_transaction(TransactionKind, ListOfOperations, StayAlive, ClientCausalVC) ->
              TxPid = case StayAlive of
                  true ->
  
negative.code:                  end
      end.
  
  -spec update_objects([{bound_object(), op_name(), op_param()} | {bound_object(), {op_name(), op_param()}}], txid())
                      -> ok | {error, reason()}.
  update_objects(Updates, TxId) ->
      {_, _, CoordFsmPid} = TxId,
  