code: def _helper_init_tensorarray(backend_fw, l_kwargs, fn=None):
      id_write, kwargs = l_kwargs
      with BackendHandler.update_backend(backend_fw) as ivy_backend:
          local_importer = ivy_backend.utils.dynamic_import
          tf_frontend = local_importer.import_module(
              "ivy.functional.frontends.tensorflow"
          )
          ta = tf_frontend.tensor.TensorArray(**kwargs)
          ta_gt = tf.TensorArray(**kwargs)
          if fn == "unstack":
              ta_gt = ta_gt.unstack(tf.constant(id_write))
              ta = ta.unstack(tf_frontend.constant(id_write))
          elif fn == "split":
              ta_gt = ta_gt.split(**id_write)
              ta = ta.split(**id_write)
          elif fn == "scatter":
              indices, value = [*zip(*id_write)]
              ta_gt = ta_gt.scatter(
                  indices, tf.cast(tf.stack(value), dtype=ta_gt.dtype)
              )
              value = tf_frontend.stack(
                  list(map(tf_frontend.constant, value))
              )
              ta = ta.scatter(
                  indices, tf_frontend.cast(value, ta.dtype)
              )
          else:
              for id, write in id_write:
                  ta_gt = ta_gt.write(id, tf.constant(write))
                  ta = ta.write(id, tf_frontend.constant(write))
      return ta_gt, ta
  
imports: from hypothesis import strategies, given
  import numpy
  import tensorflow
  import ivy_tests.test_ivy.helpers
  from ivy_tests.test_ivy.helpers import BackendHandler
label_desc: Use image node_id 1 for calling a global function with example usage: _helper_init_tensorarray(backend_fw, l_kwargs, fn) and returns: ta_gt,  ta