anchor.diff:              Spec, map),
   
       {ok, [{field13, [a, b, '3']}], []} = parse_config(#{field13 => [a, "b", 3]}, Spec),
  -    ok.
  -
  -
  -
  +
  +    {ok, [{field01, a}, {map1, #{m_field14:=1, m_field15:=b}}],[]} = 
  +        parse_config(#{field01=>a, field14=>1, field15=>b}, Spec),
  +
  +    {ok, #{field01:=a, map1:=#{m_field14:=1, m_field15:=b}}, #{}} = 
  +        parse_config([{field01, a}, {field14, 1}, {field15, b}], Spec, map),
  +
  +    {error, {invalid_key, field14}} = parse_config(#{field01=>a, field14=>a}, Spec),
  +    ok.
   
   
   parse_fun(field10, data, _Opts) ->
  
positive.code:                 false ->
                      throw({invalid_key, Index})
              end;
          KeySpec ->
              case do_parse_config(KeySpec, Val) of
                  {ok, Val1} ->
  
negative.code:                 field12_b => integer
              },
          field13 => {list, atom},
          field14 => {update, map, map1, m_field14, integer},
          field15 => {update, map, map1, m_field15, atom},
          fieldXX => invalid
      },
  
  