@Override
  public final AnAction @NotNull [] getChildren(@Nullable AnActionEvent e) {
    if (e == null) {
      return EMPTY_ARRAY;
    }

    if (myChildren == null) {
      myChildren = new CachedValueImpl<>(createChildrenProvider(e.getActionManager()));
    }
    return myChildren.getValue();
  }
@Override
  public final AnAction @NotNull [] getChildren(@Nullable AnActionEvent e)