class Config implements Serializable, Comparable<Config<?>> {

    public OptionalValueParser getIfKeyAndValueDefined(Enum<?> key) {
        String value = getOrNone(key).map(String::trim).orElse("");

        return new OptionalValueParser(value, timeUnit, lengthUnit);
    }

    private  Config(
            Class<E> cls,
            ImmutableMap<E, ConfigValue> values,
            ImmutableMap<?, Config<?>> subConfig,
            String qualifier,
            TimeUnit timeUnit,
            LengthUnit lengthUnit);
      Config(
            Class<E> cls,
            ImmutableMap<E, ConfigValue> values,
            ImmutableMap<?, Config<?>> subConfig,
            String qualifier);

}