code: def get_answer_index(
      context, context_token, answer_start, answer_end
  ):
      """
      Get exact indices of the answer in the tokens of the passage,
      according to the start and end position of the answer.
  
      Args:
          context (str): the context passage
          context_token (list): list of tokens (str) in the context passage
          answer_start (int): the start position of the answer in the passage
          answer_end (int): the end position of the answer in the passage
  
      Returns:
          (int, int): start index and end index of answer
      """
      p_str = 0
      p_token = 0
      while p_str < len(context):
          if re.match("\s", context[p_str]):
              p_str += 1
              continue
          token = context_token[p_token]
          token_len = len(token)
          if context[p_str : p_str + token_len] != token:
              return (None, None)
          if p_str == answer_start:
              t_start = p_token
          p_str += token_len
          if p_str == answer_end:
              try:
                  return (t_start, p_token)
              except UnboundLocalError as e:
                  return (None, None)
          p_token += 1
      return (None, None)
  
imports: import re
  import json
  import spacy
  import msgpack
  import unicodedata
  import numpy
  import pandas
  import argparse
  import collections
  import multiprocessing
  from concurrent.futures import ProcessPoolExecutor
  import logging
label_desc: Use image node_id 7 for calling a global function with example usage: get_answer_index(context, context_token, answer_start, answer_end) and returns: None,  None, None,  None, t_start,  p_token, None,  None