@Override
  public int textOffsetToFile(int textOffset, boolean leanForward) {
    int[] offsets = getTokenOffsets();
    int tokenIndex = findTokenIndex(textOffset, offsets, leanForward);
    return ((PsiToken) tokens.get(tokenIndex)).psiStart() + (textOffset - offsets[tokenIndex]);
  }
@Override
  public int textOffsetToFile(int textOffset, boolean leanForward)