@NotNull
  @Override
  public SuspendContextImpl pushSuspendContext(@MagicConstant(flagsFromClass = EventRequest.class) final int suspendPolicy, int nVotes) {
    SuspendContextImpl suspendContext = new SuspendContextImpl(myDebugProcess, suspendPolicy, nVotes, null, mySuspendContextNextId.incrementAndGet()) {
      @Override
      protected void resumeImpl() {
        LOG.debug("Start resuming...");
        switch (getSuspendPolicy()) {
          case EventRequest.SUSPEND_ALL -> {
            getVirtualMachine().resume();
            LOG.debug("VM resumed ");
          }
          case EventRequest.SUSPEND_EVENT_THREAD -> {
            myFrozenThreads.remove(getEventThread());
            getEventThread().resume();
            if (LOG.isDebugEnabled()) {
              LOG.debug("Thread resumed : " + getEventThread());
            }
          }
          case EventRequest.SUSPEND_NONE -> LOG.debug("None resumed");
        }
        if (LOG.isDebugEnabled()) {
          LOG.debug("Suspends = " + suspends);
        }
      }
    };
    pushContext(suspendContext);
    return suspendContext;
  }
@NotNull
  @Override
  public SuspendContextImpl pushSuspendContext(@MagicConstant(flagsFromClass = EventRequest.class) final int suspendPolicy, int nVotes)