@Override
  public void computeStackFrames(int firstFrameIndex, XStackFrameContainer container) {
    try {
      if (myDebuggerSession.getCurrentState() == Debugger.State.SUSPENDED) {
        Debugger.Frame frame = myTopFrame.getFrame();
        final List<XStackFrame> frames = new ArrayList<>();
        frames.add(myTopFrame);
        while (frame != null) {
          frame = frame.getPrevious();
          if (frame != null) {
            frames.add(new XsltStackFrame(frame, myDebuggerSession));
          }
        }
        if (firstFrameIndex <= frames.size()) {
          container.addStackFrames(frames.subList(firstFrameIndex, frames.size()), true);
        } else {
          container.addStackFrames(Collections.emptyList(), true);
        }
      }
    } catch (VMPausedException e) {
      container.errorOccurred(XsltDebuggerBundle.message("dialog.message.target.vm.not.responding"));
    }
  }
@Override
  public void computeStackFrames(int firstFrameIndex, XStackFrameContainer container)