anchor.diff:  	   throw(badfile)
       end.
   
  -md5_and_convert([],MD5State,Count) ->
  +md5_and_convert([], MD5State, Count) ->
       {[],MD5State,Count,[]};
  -md5_and_convert([H|T],MD5State,Count) when is_binary(H) ->
  +md5_and_convert([H|T], MD5State, Count) when is_binary(H) ->
       case (catch binary_to_term(H)) of
   	{'EXIT', _} ->
   	    md5_and_convert(T,MD5State,Count);
  -	['$end_of_table',Dat] ->
  -	   {[],MD5State,Count,['$end_of_table',Dat]}; 
  +	['$end_of_table',_Dat] = L ->
  +	   {[],MD5State,Count,L};
   	Term ->
  -	    X = erlang:md5_update(MD5State,H),
  -	    {Rest,NewMD5,NewCount,NewLast} = md5_and_convert(T,X,Count+1),
  +	    X = erlang:md5_update(MD5State, H),
  +	    {Rest,NewMD5,NewCount,NewLast} = md5_and_convert(T, X, Count+1),
   	    {[Term | Rest],NewMD5,NewCount,NewLast}
       end.
  -scan_for_endinfo([],Count) ->
  +
  +scan_for_endinfo([], Count) ->
       {[],Count,[]};
  -scan_for_endinfo([['$end_of_table',Dat]],Count) ->
  +scan_for_endinfo([['$end_of_table',Dat]], Count) ->
       {['$end_of_table',Dat],Count,[]};
  -scan_for_endinfo([Term|T],Count) ->
  -    {NewLast,NCount,Rest} = scan_for_endinfo(T,Count+1),
  +scan_for_endinfo([Term|T], Count) ->
  +    {NewLast,NCount,Rest} = scan_for_endinfo(T, Count+1),
       {NewLast,NCount,[Term | Rest]}.
   
   load_table(ReadFun, State, Tab) ->
  
positive.code: 	{value, Val} = lists:keysearch(named_table, 1, FullHeader),
  	{value, Kp} = lists:keysearch(keypos, 1, FullHeader),
  	{value, Sz} = lists:keysearch(size, 1, FullHeader),
  	Ei = case lists:keysearch(extended_info, 1, FullHeader) of
  		 {value, Ei0} -> Ei0;
  		 _ -> {extended_info, []}
  	     end,
  	{ok, [N,Type,P,Val,Kp,Sz,Ei,{version,{Major,Minor}}]}
      catch
  
negative.code:     options([Option], Keys, []).
  
  options(Options, [Key | Keys], L) when is_list(Options) ->
      V = case lists:keyfind(Key, 1, Options) of
              {n_objects, default} ->
                  {ok, default_option(Key)};
              {n_objects, NObjs} when is_integer(NObjs), NObjs >= 1 ->
                  {ok, NObjs};
              {traverse, select} ->
                  {ok, select};
              {traverse, {select, _MS} = Select} ->
                  {ok, Select};
              {traverse, first_next} ->
                  {ok, first_next};
              {traverse, last_prev} ->
                  {ok, last_prev};
  	    {Key, _} ->
  		badarg;
  	    false ->
  		Default = default_option(Key),
  