@Override
  public String getValue(final String key) {
    // first check if the parameter is in "underscored" form
    if (key.startsWith(MODULE)
        || key.startsWith(MODULE_PROBABILITY)
        || key.startsWith(MODULE_DISABLE_AFTER_ITERATION)
        || key.startsWith(MODULE_EXE_PATH)
        || key.startsWith(MODULE_SUBPOPULATION)) {
      throw new IllegalArgumentException(
          "getting underscored parameter "
              + key
              + " is not allowed anymore. The supported way to get those parameters is via parameter sets.");
    }

    return delegate.getValue(key);
  }