@Override
    public void removeChildren(@Nullable Predicate<? super Disposable> condition, @NotNull Consumer<? super ObjectNode> deletedNodeConsumer) {
      for (int i = myChildren.size() - 1; i >= 0; i--) {
        ObjectNode childNode = myChildren.get(i);
        Disposable object = childNode.getObject();
        if (condition == null || condition.test(object)) {
          myChildren.remove(i);
          deletedNodeConsumer.accept(childNode);
        }
      }
    }
@Override
    public void removeChildren(@Nullable Predicate<? super Disposable> condition, @NotNull Consumer<? super ObjectNode> deletedNodeConsumer)