anchor.diff:  
   %% API
   -export([parse_scenario_settings/2,
  -         update_settings/1]).
  +         update_settings/1,
  +         get_default_configuration/1,
  +         get_current_configuration/0]).
   
   -include_lib("kernel/include/logger.hrl").
   -include("amoc_config.hrl").
   
  +-type module_configuration_map() :: #{name() => #{any() => any()}}.
   %% ------------------------------------------------------------------
   %% API
   %% ------------------------------------------------------------------
  
positive.code:     [spawn(fun() -> apply(Fn, [Name, Value]) end)
       || #module_parameter{name = Name, value = Value, update_fn = Fn} <- Config],
      ok.
  
negative.code:         UnexpectedReturnValue ->
              {error, invalid_return_value, UnexpectedReturnValue}
      end.
  
  -spec get_default_configuration(module()) -> {ok, module_configuration_map()} | error().
  get_default_configuration(Module) ->
      PipelineActions = [
          {fun get_configuration/1, []},
          {fun convert_to_config_map/1, []}],
      amoc_config_utils:pipeline(PipelineActions, {ok, Module}).
  
  -spec get_current_configuration() -> {ok, module_configuration_map()}.
  get_current_configuration() ->
      PipelineActions = [
          {fun get_existing_configuration/0, []},
          {fun convert_to_config_map/1, []}],
      amoc_config_utils:pipeline(PipelineActions, ok).
  
  %% ------------------------------------------------------------------
  %% Internal Function Definitions
  