anchor.diff:  		add_subscriber/6, add_subscriber/8,
   		find_subscriber/1, delete_subscriber/1, update_password/2,
   		update_attributes/2, update_attributes/5, get_subscribers/0,
  -		query_subscriber/1]).
  +		query_subscriber/9]).
   -export([add_user/3, list_users/0, get_user/1, delete_user/1,
   		query_users/3, update_user/3]).
   -export([add_product/1, find_product/1, get_products/0, delete_product/1,
  
positive.code: 	case mnesia:transaction(F, [F, start, []]) of
  		{aborted, Reason} ->
  			{error, Reason};
  		{atomic, Result} ->
  			{eof, Result}
  	end.
  
  -spec delete_subscriber(Identity) -> ok
  	when
  
negative.code: 			Result
  	end.
  
  -spec query_subscriber(Cont, Id, Password, Product, Cents,
  		TotalBalance, Seconds, Enabled, MultiSession) -> Result
  	when
  		Cont :: start | eof | any(),
  		Id :: undefined | string(),
  		Password :: undefined | string(),
  		Product :: undefined | string(),
  		Cents :: undefined | string(),
  		TotalBalance :: undefined | string(),
  		Seconds :: undefined | string(),
  		Enabled :: undefined | string(),
  		MultiSession :: undefined | string(),
  		Result :: {Cont, [#product{}]} | {error, Reason},
  		Reason :: term().
  %% @doc Query product inventories
  query_subscriber(start, Id, Password, Product, Cents,
  		TotalBalance, Seconds, Enabled, MultiSession) ->
  	MatchSpec = [{'_', [], ['$_']}],
  	F = fun(F, start, Acc) ->
  				F(F, mnesia:select(subscriber, MatchSpec,
  