anchor.diff:      end.
   
   %% @doc reads the value of a key
  -%% @spec read(key()) -> {failure, term()} | value()
  +%% @spec read(key()) -> value() | {fail, term()} 
  +-spec read(key()) -> value() | {fail, term()}.
   read(Key) ->
       case util:tc(transaction_api, quorum_read, [Key]) of
           {_Time, {fail, Reason}} ->
  
positive.code:     transaction_api:delete(Key, 2000).
  
  %% @doc atomic compare and swap
  %% @spec test_and_set(key(), value(), value()) -> {fail, Reason} | ok
  test_and_set(Key, OldValue, NewValue) ->
      TFun = fun(TransLog) ->
                     {Result, TransLog1} = transaction_api:read(Key, TransLog),
  
negative.code: 
  %% @doc writes the value of a key
  %% @spec write(key(), value()) -> ok | {fail, term()}
  -spec write(key(), value()) -> ok | {fail, term()}.
  write(Key, Value) ->
      case util:tc(transaction_api, single_write, [Key, Value]) of
          {_Time, commit} ->
  