code: def getTokenOffsets(self, token_words):
      result_start = []
      result_end = []
      for sentence in token_words:
          sentence_string = ""
          sentence_start = []
          sentence_end = []
          for word in sentence:
              sentence_start.append(len(sentence_string))
              sentence_string = sentence_string.join([word, " "])
              sentence_end.append(len(sentence_string))
          result_start.append(sentence_start)
          result_end.append(sentence_end)
      return (
          constant_op.constant(result_start, dtype=dtypes.int64),
          constant_op.constant(result_end, dtype=dtypes.int64),
      )
  
imports: from __future__ import absolute_import
  from __future__ import division
  from __future__ import print_function
  from absl.testing import parameterized
  from tensorflow.python.framework import constant_op
  from tensorflow.python.framework import dtypes
  from tensorflow.python.framework import errors
  from tensorflow.python.framework import test_util
  from tensorflow.python.ops import string_ops
  from tensorflow.python.ops.ragged import ragged_factory_ops
  from tensorflow.python.ops.ragged import ragged_map_ops
  from tensorflow.python.ops.ragged import ragged_tensor
  from tensorflow.python.platform import test
  from tensorflow_text.python.ops import sentence_breaking_ops
label_desc: Use image node_id 2 for calling the SentenceFragmenterTestCasesV1 obj's underlying member method code with example usage: obj.getTokenOffsets(token_words) and returns: constant_op,  constant_op