anchor.diff:  			RoamingTable = roaming_table_prefix(Price),
   			rate3(Protocol, Service, Product, Buckets, Address,
   					Price, Flag, DebitAmounts, ReserveAmounts,
  -					State#state{roaming_tb_prefix = RoamingTable}, ChargingKey);
  +					State#state{roaming_tb_prefix = RoamingTable},
  +					ChargingKey, ServiceNetwork);
   		_ ->
   			throw(price_not_found)
   	end;
   rate2(Protocol, Service, Product, Buckets, Timestamp, Address, Direction,
   		#offer{specification = ProdSpec, price = Prices} = _Offer,
   		Flag, DebitAmounts, ReserveAmounts,
  -		State, ChargingKey)
  +		State, ChargingKey, ServiceNetwork)
   		when ProdSpec == "5"; ProdSpec == "9" ->
   	F = fun(#price{type = tariff, units = seconds}) ->
   				true;
  
positive.code: 									end,
  									case lists:all(F2, Buckets) of
  										true ->
  											State = #state{service_network = ServiceNetwork,
  													session_id = get_session_id(SessionAttributes)},
  											{rate1(Protocol, #service{name = ServiceId} = Service, Product, Buckets,
  													Timestamp, Address, Direction, Offer,
  													Flag, DebitAmounts, ReserveAmounts, ServiceType, State, ChargingKey), RedirectServerAddress};
  										false ->
  											{out_of_credit, RedirectServerAddress, SessionList, [], []}
  									end;
  
negative.code: rate3(Protocol, Service, Product, Buckets, Address,
  		#price{type = tariff, char_value_use = CharValueUse} = Price,
  		Flag, DebitAmounts, ReserveAmounts, #state{rated = Rated,
  		roaming_tb_prefix = RoamingTable} = State, ChargingKey, ServiceNetwork) ->
  	case lists:keyfind("destPrefixTariffTable", #char_value_use.name, CharValueUse) of
  		#char_value_use{values = [#char_value{value = TariffTable}]}
  				when RoamingTable == undefined ->
  