void (final DebuggerCommand command) { if (command instanceof SuspendContextCommand suspendContextCommand) { schedule(new SuspendContextCommandImpl((SuspendContextImpl)suspendContextCommand.getSuspendContext()) { @Override public void contextAction(@NotNull SuspendContextImpl suspendContext) { command.action(); } @Override protected void commandCancelled() { command.commandCancelled(); } }); } else { schedule(new DebuggerCommandImpl() { @Override protected void action() { command.action(); } @Override protected void commandCancelled() { command.commandCancelled(); } }); } }