anchor.diff:          true ->
               %TODO: write some log about not adding the OIDC
               ok
  -    end.
  -
  +    end,
  +    ok = econfig:unregister_config(oidc), 
  +    parse_and_apply_oidc(Tail).
  +
  +
  +parse_and_apply_services([]) ->
  +    ok;
  +parse_and_apply_services([ConfigFile|Tail])  ->
  +    ok = econfig:register_config(service,[ConfigFile]),
  +    ServiceConfig = econfig:get_value(service,""),
  +    ConfigMap = maps:from_list(ServiceConfig), 
  +    tts_service:add(ConfigMap), 
  +    ok = econfig:unregister_config(service), 
  +    parse_and_apply_services(Tail).
   
       
   apply_settings(_Name,_Section,[]) ->
  
positive.code:     LPort = local_port(),
      LocalEndpoint = << LProt/binary, HostName/binary, LPort/binary, EpReturn/binary >>, 
      set_config(local_endpoint,LocalEndpoint),
      apply_oidc_settings(),
      ok.
  
  
  apply_oidc_settings() ->
      Settings = get_values(main,?OIDC_SECTION,?OIDC_SETTINGS),
      IsEmpty = fun(V,In) ->
                        case V of
                            <<>> -> true;
  
negative.code:                     {"CacheCheckInterval",cache_check_interval,seconds,300},
                      {"CacheMaxEntries",cache_max_entries,integer,50000},
                      {"ServiceConfigPath",service_config_path,directory,"./services"},
                      {"OidcConfigPath",oidc_config_path,directory,"./oidc"},
                      {"IDHScript",idh_script,file,"./idh.py"},
                      {"IDHMaxWorker",idh_max_worker,integer,5}
                  ]).
  
  
  
  apply_main_settings() ->
  