anchor.diff:  		#'diameter_cc_app_Requested-Service-Unit'{'CC-Total-Octets' = CCTotalOctets,
   					'CC-Output-Octets' = CCOOutputOctets, 'CC-Input-Octets' = CCInputOctets} when
   				CCTotalOctets =/= [], CCInputOctets =/= [], CCOOutputOctets =/= [] ->
  -			CCInputOctets + CCOOutputOctets;
  +			{octets, CCInputOctets + CCOOutputOctets};
   		_ ->
   			throw(unsupported_request_units)
   	end,
  
positive.code: 			{reply, Reply1, NewState0}
  	end;
  request1(?'DIAMETER_CC_APP_CC-REQUEST-TYPE_TERMINATION_REQUEST' = RequestType,
  		Request, SId, RequestNum, Subscriber, OHost, _DHost, ORealm,
  		_DRealm, State) ->
  	Balance = 0, % ??
  	F = fun() ->
  		case mnesia:read(subscriber, Subscriber, write) of
  
negative.code: 		#'diameter_cc_app_Requested-Service-Unit'{'CC-Total-Octets' = CCTotalOctets,
  					'CC-Output-Octets' = CCOOutputOctets, 'CC-Input-Octets' = CCInputOctets} when
  				CCTotalOctets =/= [], CCInputOctets =/= [], CCOOutputOctets =/= [] ->
  			{octets, CCInputOctets + CCOOutputOctets};
  		_ ->
  			throw(unsupported_request_units)
  	end,
  	USU =  case MSCC of
  		#'diameter_cc_app_Multiple-Services-Credit-Control'{'Used-Service-Unit' =
  				[UsedServiceUnit | _]} ->
  			UsedServiceUnit;
  		_ ->
  			throw(multiple_service_credit_control_avp_not_available)
  	end,
  	{UsedType, UsedUsage} = case USU of
  		#'diameter_cc_app_Used-Service-Unit'{'CC-Time' = UsedCCTime} when UsedCCTime =/= [] ->
  			{seconds, UsedCCTime};
  		#'diameter_cc_app_Used-Service-Unit'{'CC-Total-Octets' = UsedCCTotalOctets,
  					'CC-Output-Octets' = UsedCCOutputOctets, 'CC-Input-Octets' = UsedCCInputOctets}
  				when UsedCCTotalOctets =/= [], UsedCCInputOctets =/= [], UsedCCOutputOctets =/= [] ->
  			{octets, UsedCCInputOctets + UsedCCOutputOctets};
  		[] ->
  			throw(used_amount_not_available)
  	end,
  	Balance = 0, %% ??
  	try
  