private static @NotNull Map<String, List<String>> buildIdTree(@NotNull Map<String, HierarchicalConfigurable> idToConfigurable,
                                                                @NotNull List<String> idsInEpOrder) {
    Map<String, List<String>> tree = new HashMap<>();
    for (String id : idsInEpOrder) {
      HierarchicalConfigurable hierarchical = idToConfigurable.get(id);
      String parentId = hierarchical.getParentId();
      if (parentId != null) {
        HierarchicalConfigurable parent = idToConfigurable.get(parentId);
        if (parent == null) {
          LOG.warn("Can't find parent for " + parentId + " (" + hierarchical + ")");
          continue;
        }
        tree.computeIfAbsent(parentId, k -> new ArrayList<>(5)).add(id);
      }
    }
    return tree;
  }
private static @NotNull Map<String, List<String>> buildIdTree(@NotNull Map<String, HierarchicalConfigurable> idToConfigurable,
                                                                @NotNull List<String> idsInEpOrder)