anchor.diff:  make_u_index_key(IndexName, IndexValue) ->
       <<IndexName/binary, ?UINDEX_SEP, IndexValue/binary>>.
   
  +%% TODO(borja): Handle non-binary data
  +make_root_index_key(IndexName) ->
  +    IndexName.
  +
   make_root_index_key(IndexName, IndexValue) ->
       <<IndexName/binary, ?INDEX_SEP, IndexValue/binary>>.
   
  
positive.code: 
  -spec index(binary(), binary(), binary(), txid()) -> ok.
  index(IndexName, IndexValue, RefKey, TxId) ->
      RootKey = make_root_index_key(IndexName, IndexValue),
      IndexKey = make_index_key(IndexName, IndexValue, RefKey),
      Updates = case claimed_index(RootKey, TxId) of
          false ->
              [{RootKey, ?CLAIMED}, {IndexKey, RefKey}];
  
          true ->
              [{IndexKey, RefKey}]
      end,
      update_indices(Updates, TxId).
  
  -spec read_index(binary(), binary(), txid()) -> {ok, list()} | {error, reason()}.
  read_index(IndexName, IndexValue, TxId) ->
  
negative.code: -export([u_index/4,
           read_u_index/3,
           index/4,
           read_index/2,
           read_index/3]).
  
  -spec u_index(binary(), binary(), binary(), txid()) -> ok.
  