anchor.diff:                      {error, {EO,{KV,Reason}}}
               end
       end.
  +
  +check_and_save(OptsList, OptionDefinitions, InitialMap) ->
  +    final_preferred_algorithms(
  +      lists:foldl(fun(KV, Vals) ->
  +                          save(KV, OptionDefinitions, Vals)
  +                  end, InitialMap, OptsList)).
  +    
   
   cnf_key(server) -> server_options;
   cnf_key(client) -> client_options.
  
positive.code: 
          %% Enter the user's values into the map; unknown keys are
          %% treated as socket options
          final_preferred_algorithms(
            lists:foldl(fun(KV, Vals) ->
                                save(KV, OptionDefinitions, Vals)
                        end, InitialMap, OptsList2))
      catch
          error:{EO, KV, Reason} when EO == eoptions ; EO == eerl_env ->
              if
  
negative.code:     InternalOpts = maps:get(internal_options,Opts),
      Opts#{internal_options := maps:remove(Key, InternalOpts)}.
          
  
  %%%================================================================
  %%%
  %%% Replace 0 or more options in an options map
  %%%
  merge_options(Role, NewPropList, Opts0) when is_list(NewPropList),
                                               is_map(Opts0) ->
      check_and_save(NewPropList, default(Role), Opts0).
  
  %%%================================================================
  %%%
  