anchor.diff:                      find(SubJson, Rest)
               end;
           Name when is_map(Json) ->
  -            case maps:get(Name, Json, undefined) of
  -                undefined ->
  +            case maps:find(Name, Json) of
  +                error ->
                       throw({error, ?ENOATTR});
  -                SubJson ->
  +                {ok, SubJson} ->
                       find(SubJson, Rest)
               end;
           _ ->
  
positive.code:                     setnth(Index, Json, insert(undefined, JsonToInsert, Rest))
              end;
          _ when is_map(Json) ->
              case maps:get(Name, Json, undefined) of
                  undefined ->
                      maps:put(Name, insert(undefined, JsonToInsert, Rest), Json);
                  SubJson ->
                      maps:put(Name, insert(SubJson, JsonToInsert, Rest), Json)
              end;
          _ ->
              throw({error, ?ENOATTR})
      end.
  
negative.code:             maps:put(Name, insert(undefined, JsonToInsert, Rest), #{})
      end;
  insert(Json, JsonToInsert, [Name | Rest]) ->
      IndexSize = get_index_size(Name),
      case Name of
          <<"[", Element:IndexSize/binary, "]">> when is_list(Json) ->
              Index = binary_to_integer(Element) + 1,
  