private static int filtered(@NotNull List<Usage> usages, @NotNull UsageViewImpl usageView) {
   int count = 0;
   for (Usage usage : usages) {
     if (!usageView.isVisible(usage)) count++;
   }
   return count;
 }
 private void addUsageNodes(
     @NotNull GroupNode root,
     @NotNull final UsageViewImpl usageView,
     @NotNull List<UsageNode> outNodes) {
   for (UsageNode node : root.getUsageNodes()) {
     Usage usage = node.getUsage();
     if (usageView.isVisible(usage)) {
       node.setParent(root);
       outNodes.add(node);
     }
   }
   for (GroupNode groupNode : root.getSubGroups()) {
     groupNode.setParent(root);
     addUsageNodes(groupNode, usageView, outNodes);
   }
 }