anchor.diff:  reserved_unit4(_RSU, Acc) ->
   	Acc.
   
  --spec initial_service_rating(MSCC, ServiceContextId, ServiceInformation,
  -		Destination, Class) -> ServiceRating
  +-spec initial_service_rating_b(MSCC, ServiceContextId, ServiceInformation,
  +		Destination) -> ServiceRating
   	when
   		MSCC :: [#'3gpp_ro_Multiple-Services-Credit-Control'{}],
   		ServiceContextId :: string(),
   		ServiceInformation :: [tuple()],
   		Destination :: string() | undefined,
  -		Class :: a | b,
   		ServiceRating :: [{struct, [tuple()]}].
   %% Create list of service elements to be rated.
  -initial_service_rating(MSCC, ServiceContextId, ServiceInformation, undefined, Class) ->
  +initial_service_rating_b(MSCC, ServiceContextId, ServiceInformation, undefined) ->
   	SCID = {"serviceContextId", ServiceContextId},
  -	initial_service_rating(MSCC, SCID, ServiceInformation, undefined, Class, []);
  -initial_service_rating(MSCC, ServiceContextId, ServiceInformation, Destination, Class) ->
  +	initial_service_rating_b(MSCC, SCID, ServiceInformation, undefined, []);
  +initial_service_rating_b(MSCC, ServiceContextId, ServiceInformation, Destination) ->
   	SCID = {"serviceContextId", ServiceContextId},
   	Des = {"destinationId", {array, [{struct, [{"destinationIdType", "DN"},
   			{"destinationIdData", Destination}]}]}},
  -	initial_service_rating(MSCC, SCID, ServiceInformation, Des, Class, []).
  -%% @hidden
  -initial_service_rating([#'3gpp_ro_Multiple-Services-Credit-Control'{
  +	initial_service_rating_b(MSCC, SCID, ServiceInformation, Des, []).
  +%% @hidden
  +initial_service_rating_b([#'3gpp_ro_Multiple-Services-Credit-Control'{
   		'Requested-Service-Unit' = RSU, 'Service-Identifier' = SI,
  -		'Rating-Group' = RG} = _MSCC | T], SCID, SInfo, Des, Class, Acc) ->
  +		'Rating-Group' = RG} = _MSCC | T], SCID, SInfo, Des, Acc) ->
   	Acc1 = case SI of
   		[] ->
   			[];
  
positive.code: 		_ ->
  			[Des | Acc3]
  	end,
  	case Class of
  	a ->
  		initial_service_rating(T, SCID, SInfo, Des, Class, [{struct, [SCID | Acc4]}| Acc]);
  	b ->
  		case reserved_unit(RSU) of
  			[] ->
  				ServiceRating = {struct, [SCID, {"requestSubType", "RESERVE"} | Acc4]},
  				initial_service_rating(T, SCID, SInfo, Des, Class, [ServiceRating | Acc]);
  			ReservedUnits ->
  				ServiceRating = {struct, [SCID, {"requestedUnit", {struct, ReservedUnits}},
  						{"requestSubType", "RESERVE"} | Acc4]},
  				initial_service_rating(T, SCID, SInfo, Des, Class, [ServiceRating | Acc])
  		end
  	end;
  initial_service_rating([], _SCID, _SI, _Des, _Class, Acc) ->
  	Acc.
  
  -spec update_service_rating(MSCC, ServiceContextId,
  
negative.code: 		ServiceContextId :: binary(),
  		SessionId :: binary(),
  		MSCC :: [#'3gpp_ro_Multiple-Services-Credit-Control'{}],
  		Location :: [tuple()] | undefined,
  		Flag :: initial | interim | final,
  		Class :: a | b,
  		Destination :: string(),
  