anchor.diff:  	gen_server:start_link({local, ?MODULE}, ?MODULE, [], []).
   
   
  --spec lookup_user(Map :: map()) -> {ok, UserId :: term(), Info :: map()} | {error, Reason :: term}.
  +-spec lookup_user(Map :: map()) -> {ok, Info :: map()} | {error, Reason :: term}.
   lookup_user(Map) ->
       gen_server:call(?MODULE, {lookup_user, Map}).
   
  
positive.code:     #{ data := Data } = Config,
      case lists:keyfind({Iss, Sub},1,Data) of
          false -> {{error, not_found},State};
          E -> EntryMap = data_entry_to_result(E),
               {{ok, EntryMap}, State}
      end.
  
  data_entry_to_result({_, Uid, UidNumber, GidNumber, HomeDir}) ->
      {UidNumber, #{uid => Uid, 
              uidNumber => UidNumber, 
              gidNumber => GidNumber, 
              homeDirectory => HomeDir}}.
  
negative.code: convert_ldap_result({ok,#eldap_search_result{entries = []}}) ->
      {error, not_found};
  convert_ldap_result({ok,#eldap_search_result{entries =
                                               [#eldap_entry{ attributes=Attributes}]}}) ->
      ToAtom = fun(Key, Value, Map) ->
                       AKey = list_to_atom(Key),
                       maps:put(AKey,Value,Map)
               end,
      UserInfo = maps:fold(ToAtom,#{},maps:from_list(Attributes)),
      {ok, UserInfo};
  convert_ldap_result(_Result) ->
      {error, not_supported}.
  
  