code: @SuppressWarnings("unchecked")
      private void bindUniqueSubConfigurations() {
          for (ConfigPath item : tree.getUniqueTypePaths()) {
              // bind only with annotation to avoid clashes with direct bindings
              toValue(
                      bind(Key.get(item.getDeclaredTypeWithGenerics(), Config.class)),
                      item.getValue());
          }
      }
docs: Bind unique sub configuration objects by type. Available for injection like
  {@code @Inject @Config MySubConf config}. Value may be null because if null values would be avoided,
  bindings will disappear.