class_docstr: This class is used to parse a Python file, it then divides them into a
  class structure of different scopes.
  
  :param pgen_grammar: The grammar object of pgen2. Loaded by load_grammar.
class_docstr_tok: ["This","class","is","used","to","parse","a","Python","file",",","it","then","divides","them","into","a","class","structure","of","different","scopes",".",":","param","pgen_grammar",":","The","grammar","object","of","pgen2",".","Loaded","by","load_grammar","."]
code: def _recovery_tokenize(self, tokens):
      for token in tokens:
          typ = token[0]
          if typ == DEDENT:
              # We need to count indents, because if we just omit any DEDENT,
              # we might omit them in the wrong place.
              o = self._omit_dedent_list
              if o and o[-1] == self._indent_counter:
                  o.pop()
                  self._indent_counter -= 1
                  continue
  
              self._indent_counter -= 1
          elif typ == INDENT:
              self._indent_counter += 1
          yield token
  
file_path: catboost/contrib/python/parso/py2/parso/python/parser.py
imports: from parso.python import tree
  from parso.python.token import PythonTokenTypes
  from parso.parser import BaseParser
label_desc: Use image node_id 7 for calling the Parser obj's underlying member method code with example usage: obj._recovery_tokenize(tokens) without return types