private static void addUsageNodes(@NotNull GroupNode root, @NotNull List<? super UsageNode> outNodes) {
    for (UsageNode node : root.getUsageNodes()) {
      node.setParent(root);
      outNodes.add(node);
    }
    for (GroupNode groupNode : root.getSubGroups()) {
      groupNode.setParent(root);
      addUsageNodes(groupNode, outNodes);
    }
  }
private static void addUsageNodes(@NotNull GroupNode root, @NotNull List<? super UsageNode> outNodes)