anchor.diff:  sanitize_type(<<"int">>, V, _Options) -> sanitize_int(V);
   sanitize_type(<<"unsafe">>, V, _Options) -> V;
   sanitize_type(_, V, Options) when is_map(V) -> escape_props(V, Options);
  +sanitize_type(_, V, Options) when is_list(V) -> sanitize_list(V, Options);
   sanitize_type(_, V, _Options) -> escape_value(V).
   
   sanitize_list(L, Options) when is_list(L) ->
  
positive.code:     sanitize_list(V, Options);
  escape_props1(<<"is_", _/binary>>, V, _Options) ->
      z_convert:to_bool(V);
  escape_props1(_K, V, Options) when is_map(V) ->
      escape_props(V, Options);
  escape_props1(K, V, Options) ->
      Type = lists:last(binary:split(K, <<"_">>, [global])),
      sanitize_type(Type, V, Options).
  
negative.code: sanitize_type_check(<<"int">>, V, _Options) -> sanitize_int(V);
  sanitize_type_check(<<"unsafe">>, V, _Options) -> V;
  sanitize_type_check(_, V, Options) when is_map(V) -> escape_props_check(V, Options);
  sanitize_type_check(_, V, Options) when is_list(V) -> escape_props_check(V, Options);
  sanitize_type_check(_, V, _Options) -> escape_value_check(V).
  
  
  