anchor.diff:  new(Table, []) ->
   	Nodes = [node() | nodes()],
   	new(Table, [{disc_copies, Nodes}]);
  +new(Table, Options) when is_list(Table) ->
  +	new(list_to_existing_atom(Table), Options);
   new(Table, Options) when is_list(Options) ->
   	case mnesia:create_table(Table, Options ++
   			[{attributes, record_info(fields, gtt)},
  
positive.code: 
  -spec insert(Table, Number, Value) -> Result
  	when
  		Table :: atom(),
  		Number :: string(),
  		Value :: term(),
  		Result :: {ok, #gtt{}}.
  %% @doc Insert a table entry.
  %% 
  insert(Table, Number, Value) 
  		when is_atom(Table),
  		is_list(Number) ->
  	F = fun() -> insert(Table, Number, Value, []) end,
  	case mnesia:transaction(F) of
  		{atomic, {_NumWrites, Gtt}} ->
  
negative.code: 
  -spec delete(Table, Number) -> ok
  	when
  		Table :: atom() | string(),
  		Number :: string().
  %% @doc Delete a table entry.
  %% 
  delete(Table, Number) when is_list(Table) ->
  	delete(list_to_existing_atom(Table), Number);
  delete(Table, Number) when is_atom(Table), is_list(Number) ->
  	Fun = fun() -> mnesia:delete(Table, Number, write) end,
  	case mnesia:transaction(Fun) of
  