anchor.diff:  	integer_to_list(TS) ++ "-" ++ integer_to_list(N).
   
   %% @hidden
  --spec sort_json_attributes(UnOrderAttributes) -> OrderedAtttibutes
  +-spec validated_operations(UnOrderAttributes) -> OrderedAtttibutes
   	when
   		UnOrderAttributes :: [{struct, [tuple()]}],
   		OrderedAtttibutes :: [tuple()].
   %% @doc Processes scrambled json attributes (with regard to
   %% https://tools.ietf.org/html/rfc6902#section-3) and return
   %% a list of key, value tuples.
  -sort_json_attributes(UAttr) ->
  +validated_operations(UAttr) ->
   	F = fun(F, [{struct, Op} | T],  Acc) ->
   			{_, "replace"} = lists:keyfind("op", 1, Op),
   			{_, P} = lists:keyfind("path", 1, Op),
  
positive.code: 			[P1] = string:tokens(P, "/"),
  			F(F, T, [{P1, V} | Acc]);
  		(_, [], Acc) ->
  			Acc
  	end,
  	F(F, UAttr, []).
  
  
negative.code: patch_subscriber2(Id, Etag, "application/json-patch+json", ReqBody,
  		CurrPassword, CurrAttr, Bal, Enabled) ->
  	try
  		{array, OpList} = mochijson:decode(ReqBody),
  		CurrentValues = [{"password", CurrPassword}, {"balance", Bal},
  				{"attributes", CurrAttr}, {"enabled", Enabled}],
  		ValidOpList = validated_operations(OpList),
  		{NPwd, NBal, NAttr, NEnabled} =
  				execute_json_patch_operations(ValidOpList, Id, CurrentValues),
  		patch_subscriber3(Id, Etag, NPwd, NAttr, NBal, NEnabled)
  	catch
  		_:_ ->
  			{error, 400}
  