@Override
    protected void executeInLookup(final LookupImpl lookup, DataContext context, Caret caret) {
      if (!lookup.isCompletion()) {
        myOriginalHandler.execute(lookup.getEditor(), caret, context);
        return;
      }

      if (!lookup.performGuardedChange(() -> lookup.getEditor().getSelectionModel().removeSelection())) {
        return;
      }

      BackspaceHandler.truncatePrefix(context, lookup, myOriginalHandler, lookup.getLookupStart() - 1, caret);
    }
@Override
    protected void executeInLookup(final LookupImpl lookup, DataContext context, Caret caret)