anchor.diff:      end;
   
   parse_opt(Syntax, Key, Val, #parse{opts=Opts}=Parse) when is_map(Syntax) ->
  -    case is_list(Val) orelse is_map(Val) of
  -        true ->
  +    if
  +        is_map(Val) ->
               Path2 = path_key(Key, Parse),
               case parse(Val, Syntax, Opts#{path=>Path2}) of
                   {ok, Parsed, NoOk2} ->
  
positive.code:                 {error, Error} ->
                      {error, Error}
              end;
          false ->
              {error, syntax}
      end;
  
  
negative.code:     log_level |
      {mfa, module(), atom(), [term()]} |
      {'__key', Key::atom()|binary()} |                   % Copies with different key
      {'__key', Key::atom()|binary(), syntax_opt()} |     % Changes key and checks syntax
      syntax() |                                      % Allow for nested objects
      list() |                                        % First matching option is used
      syntax_fun().
  