anchor.diff:      #{
           return => map|list,         % Default is list
           path => binary(),           % Returned in errors
  -        defaults => map() | list()
  +        defaults => map() | list(),
  +        mandatory => [atom()]
       }.
   
   
  
positive.code: parse_config([], OK, NoOK, _Syntax, Opts) ->
      OK2 = lists:reverse(OK),
      NoOK2 = lists:reverse(NoOK),
      case Opts of
          #{return:=map} ->
              {ok, maps:from_list(OK2), maps:from_list(NoOK)};
          _ ->
              {ok, OK2, NoOK2}
      end;
  
  parse_config([{Key, Val}|Rest], OK, NoOK, Syntax, Opts) ->
  
negative.code:             parse_config([], OK2, NoOK, Syntax, maps:remove(defaults, Opts));
          {ok, _, DefNoOK} ->
              lager:warning("Error parsing in defaults: ~p", [Defaults]),
              {error, {no_ok, DefNoOK}};
          {error, Error} ->
              lager:warning("Error parsing in defaults: ~p", [Defaults]),
              {error, Error}
  