void (@NotNull PySmartStepIntoVariant variant) { String threadId = variant.getContext().getFrame().getThreadId(); String frameId = variant.getContext().getFrame().getFrameId(); if (isConnected()) { dropFrameCaches(); for (PyThreadInfo suspendedThread : mySuspendedThreads) { if (threadId.equals(suspendedThread.getId())) { PySmartStepIntoContext context = variant.getContext(); myDebugger.smartStepInto(threadId, frameId, variant.getFunctionName(), variant.getCallOrder(), context.getStartLine(), context.getEndLine()); break; } } } }