code: def read_sentences(fobj):
      sentence = []
  
      for line in fobj:
          if line == "\n":
              yield sentence
              sentence = []
              continue
  
          try:
              (
                  pos,
                  word,
                  lemma,
                  tag,
                  tag2,
                  morph,
                  head,
                  func,
                  proj_head,
                  proj_func,
              ) = line.split()
          except ValueError:  # Word may be unicode whitespace.
              (
                  pos,
                  word,
                  lemma,
                  tag,
                  tag2,
                  morph,
                  head,
                  func,
                  proj_head,
                  proj_func,
              ) = re.split(" *\t*", line.strip())
  
          word = escape_special_chars(word)
          lemma = escape_special_chars(lemma)
          morph = morph.replace("|", ",")
  
          if proj_head == "_":
              proj_head = head
              proj_func = func
  
          sentence.append(
              Word(
                  int(pos),
                  word,
                  lemma,
                  tag2,
                  morph,
                  int(head),
                  func,
                  int(proj_head),
                  proj_func,
              )
          )
  
imports: import sys
  import re
  from collections import namedtuple
label_desc: Use image node_id 2 for calling a global function with example usage: read_sentences(fobj) without return types