anchor.diff:  		Reason :: term().
   %% @doc Find offer by product id
   find_offer(OfferID) ->
  -	F = fun() ->
  -		case mnesia:read(offer, OfferID) of
  -			[Entry] ->
  -				Entry;
  -			[] ->
  -				throw(not_found)
  -		end
  -	end,
  +	F = fun() -> mnesia:read(offer, OfferID) end,
   	case mnesia:transaction(F) of
  -		{atomic, Offer} ->
  +		{atomic, [#offer{} = Offer]} ->
   			{ok, Offer};
  -		{aborted, {throw, not_found}} ->
  +		{atomic, []} ->
   			{error, not_found};
   		{aborted, Reason} ->
   			{error, Reason}
  
positive.code: 		Reason :: term().
  %% @doc Find pricing logic algorithm by id.
  find_pla(ID) ->
  	F = fun() ->
  		case mnesia:read(pla, ID) of
  			[Entry] ->
  				Entry;
  			[] ->
  				throw(not_found)
  		end
  	end,
  	case mnesia:transaction(F) of
  		{atomic, Pla} ->
  			{ok, Pla};
  		{aborted, {throw, not_found}} ->
  			{error, not_found};
  		{aborted, Reason} ->
  			{error, Reason}
  
negative.code: 	case mnesia:transaction(F) of
  		{atomic, []} ->
  			{error, not_found};
  		{atomic, [#product{} = Product]} ->
  			{ok, Product};
  		{aborted, Reason} ->
  			{error, Reason}
  