anchor.diff:          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
  
positive.code:     [spawn(fun() -> apply(Fn, [Name, Value]) end)
       || #module_parameter{name = Name, value = Value, update_fn = Fn} <- Config],
      ok.
  
negative.code: 
  %% API
  -export([parse_scenario_settings/2,
           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
  %% ------------------------------------------------------------------
  