anchor.diff:  		Result :: [Rated].
   %% @doc Construct rated product usage.
   %% @hidden
  -rated(Debits, Rated) when map_size(Debits) =:= 0 ->
  +rated(Debits, Rated)
  +		when map_size(Debits) =:= 0, is_list(Rated) ->
   	Rated;
  +rated(Debits, Rated)
  +		when map_size(Debits) =:= 0 ->
  +	[Rated];
   rated(Debits, #rated{} = Rated) ->
   	rated(Debits, [Rated]);
   rated(Debits, [#rated{} = Rated | T]) ->
  
positive.code: 			throw(price_not_found)
  	end;
  rate2(Protocol, Service, Buckets, Timestamp, Address, Direction,
  		#offer{specification = ProdSpec, price = Prices} = Offer,
  		Flag, DebitAmounts, ReserveAmounts,
  		#state{charging_key = ChargingKey} = State)
  		when ProdSpec == "5"; ProdSpec == "9" ->
  
negative.code: 	case lists:keyfind("destPrefixTariffTable", #char_value_use.name, CharValueUse) of
  		#char_value_use{values = [#char_value{value = TariffTable}]} ->
  			Table = list_to_existing_atom(TariffTable),
  			Prefix = case Address of
  				Address when is_binary(Address) ->
  					binary_to_list(Address);
  				Address when is_list(Address) ->
  					Address
  			end,
  			case catch ocs_gtt:lookup_last(Table, Prefix) of
  				{_Description, Amount, _} when is_integer(Amount) ->
  					case Amount of
  						N when N >= 0 ->
  