anchor.diff:  
   %%--------------------------------------------------------------------
   %% @doc
  -%% Insert sub-json to json tree
  +%% Insert sub-json to json tree under specified by filter path, e.g:
  +%%
  +%% insert(#{<<"a">> => #{<<"b">> => 1}}, <<"val">>, [<<"a">>, <<"c">>]) ->
  +%%      #{<<"a">> => #{<<"b">> => 1, <<"c">> => <<"val">>}}
  +%% insert(#{<<"a">> => [1, 2, <<"a">>}, 5, [<<"a">>, <<"[3]">>]) ->
  +%%      #{<<"a">> => [1, 2, <<"a">>, 5}
  +%%
   %% @end
   %%--------------------------------------------------------------------
   -spec insert(undefined | json_term(), JsonToInsert :: json_term(), filter()) ->
  
positive.code: %%%===================================================================
  
  
  %%--------------------------------------------------------------------
  %% @private
  %% @doc
  %% Set nth element of list
  %% @end
  %%--------------------------------------------------------------------
  -spec setnth(non_neg_integer(), list(), term()) -> list().
  setnth(1, [_ | Rest], New) -> [New | Rest];
  setnth(I, [E | Rest], New) -> [E | setnth(I - 1, Rest, New)].
  
  
  %% @private
  
negative.code: 
  %%--------------------------------------------------------------------
  %% @doc
  %% Find sub-json in json tree specified by filter, eg.g:
  %%
  %% find(#{<<"a">> => #{<<"b">> => 1}}, [<<"a">>, <<"b">>]) -> 1
  %% find(#{<<"a">> => [1, 2, <<"a">>}, [<<"a">>, <<"[2]">>]) -> <<"a">>
  %%
  %% @end
  %%--------------------------------------------------------------------
  -spec find(json_term(), filter()) -> json_term() | no_return().
  