code: def tokenize(
      self,
      text_row: Optional[List[str]],
      token_row: Optional[List[List[str]]],
  ) -> List[List[Tuple[str, int, int]]]:
      per_sentence_tokens: List[List[Tuple[str, int, int]]] = []
  
      if text_row is not None:
          for text in text_row:
              per_sentence_tokens.append(self.tokenizer.tokenize(text))
      elif token_row is not None:
          for sentence_raw_tokens in token_row:
              sentence_tokens: List[Tuple[str, int, int]] = []
              for raw_token in sentence_raw_tokens:
                  sentence_tokens.extend(
                      self.tokenizer.tokenize(raw_token)
                  )
              per_sentence_tokens.append(sentence_tokens)
  
      return per_sentence_tokens
  
file_path: pytext/pytext/torchscript/tensorizer/bert.py
imports: from typing import List, Optional, Tuple
  import torch
  from pytext.torchscript.utils import pad_2d_mask
  from pytext.torchscript.vocab import ScriptVocabulary
  from pytorch.text.fb.utils.transform_utils import pad_2d
  from .tensorizer import ScriptTensorizer, VocabLookup
label_desc: Use image node_id 2 for calling the ScriptBERTTensorizerBase obj's underlying member method code with example usage: obj.tokenize(text_row, token_row) and returns: per_sentence_tokens