anchor.diff:  	end,
   	case NewAttributes6 of
   		[] ->
  -			service_rating(T, Acc);
  +			service_rating_b(T, Acc);
   		NewAttributes6 when length(NewAttributes6) > 0 ->
  -			service_rating(T, [{struct, NewAttributes6} | Acc])
  -	end;
  -service_rating([], Acc) ->
  +			service_rating_b(T, [{struct, NewAttributes6} | Acc])
  +	end;
  +service_rating_b([], Acc) ->
  +	Acc.
  +
  +%% @hidden
  +service_rating_a([{_, Attributes} | T], Acc) ->
  +	NewAttributes1 = case lists:keyfind("serviceContextId", 1, Attributes) of
  +		false ->
  +			[];
  +		ServiceContextId ->
  +			[ServiceContextId]
  +	end,
  +	NewAttributes2 = case lists:keyfind("serviceId", 1, Attributes) of
  +		false ->
  +			NewAttributes1;
  +		ServiceId ->
  +			[ServiceId | NewAttributes1]
  +	end,
  +	NewAttributes3 = case lists:keyfind("ratingGroup", 1, Attributes) of
  +		false ->
  +			NewAttributes2;
  +		RatingGroup ->
  +			[RatingGroup | NewAttributes2]
  +	end,
  +	NewAttributes4 = case lists:keyfind("destinationId", 1, Attributes) of
  +		false ->
  +			NewAttributes3;
  +		DestinationId ->
  +			[DestinationId | NewAttributes3]
  +	end,
  +	case NewAttributes4 of
  +		[] ->
  +			service_rating_a(T, Acc);
  +		NewAttributes4 when length(NewAttributes4) > 0 ->
  +			service_rating_a(T, [{struct, [{"currentTariff", get_tariff()}
  +					| NewAttributes4]} | Acc])
  +	end;
  +service_rating_a([], Acc) ->
   	Acc.
   
   %% @hidden
  
positive.code: 	httpd_response:send_header(Info, StatusCode, Headers),
  	httpd_socket:deliver(SocketType, Socket, ResponseBody).
  
  
negative.code: 		true = length(ServiceRatingRequests) > 0,
  		TS = erlang:system_time(millisecond),
  		InvocationTimeStamp = ocs_log:iso8601(TS),
  		ServiceRatingResults = service_rating_b(ServiceRatingRequests, []),
  		SubscriptionId = lists:keyfind("subscriptionId", 1, NrfRequest),
  		Response = {struct,[{"invocationTimeStamp", InvocationTimeStamp},
  				{"invocationSequenceNumber", InvocationSequenceNumber},
  