anchor.diff:  
   -spec replace_fields(Json::json(), [{Field::field(),Value::json_input_value()}]) -> json_output_value().
   replace_fields(Json, FieldsAndValues) ->
  -    Fun = fun({Attr, Value}, Acc) -> replace_field(Acc, Attr, Value) end,
  -    lists:foldl(Fun, Json, FieldsAndValues).
  +    Fun = fun({Attr, Value}, Acc) -> replace_field_internal(Acc, parse_attr(Attr), parse_value(Value)) end,
  +    format_output(lists:foldl(Fun, parse_json(Json), FieldsAndValues)).
   
   %% @doc
   %% Removes the field 'Query' from a JSON object
  
positive.code: 
  -spec rm_fields(Json::json(), [Field::field()]) -> json_output_value().
  rm_fields(Json, Fields) ->
      Fun = fun(Attr, Acc) -> rm_field(Acc, Attr) end,
      lists:foldl(Fun, Json, Fields).
  
  %% @doc
  %% Sets a json attribute 'Attr' to 'Value'. This function is only for creating 
  
negative.code: %% ====================================================================
  -export([add_value/3,
  	 add_values/2,
  	 convert_undefined/1,
  	 decode/1, 
  	 encode/1, 
  	 field_value_exists/3, 
  