code: def test_spmd_with_map_outside_comp_l2norm(self):
      strategy, num_replicas = get_tpu_strategy(enable_spmd=True)
  
      def host_norm(x):
          return nn.l2_normalize(x)
  
      @def_function.function
      def fn(a):
          b = strategy.experimental_split_to_logical_devices(a, [2, 1])
          c = tpu_replication.experimental_map_outside_compilation(
              host_norm, b
          )
          d = strategy.experimental_split_to_logical_devices(c, [2, 1])
          return d
  
      arg = constant_op.constant([[0, 1], [2, 3]], dtype=dtypes.float32)
      result = strategy.run(fn, args=(arg,))
      expected = nn.l2_normalize(arg, axis=1) * num_replicas
      self.assertAllEqual(
          expected,
          self.evaluate(strategy.reduce("SUM", result, axis=None)),
      )
  
imports: import os
  from absl.testing import parameterized
  from tensorflow.python.checkpoint import checkpoint
  from tensorflow.python.checkpoint import checkpoint_management
  from tensorflow.python.compiler.xla.experimental import xla_sharding
  from tensorflow.python.distribute import distribute_lib
  from tensorflow.python.distribute import packed_distributed_variable
  from tensorflow.python.distribute import strategy_test_lib
  from tensorflow.python.distribute import tpu_replicated_variable
  from tensorflow.python.distribute import tpu_strategy
  from tensorflow.python.distribute import tpu_values
  from tensorflow.python.distribute.cluster_resolver import tpu_cluster_resolver
  from tensorflow.python.eager import def_function
  from tensorflow.python.eager import remote
  from tensorflow.python.eager import test
  from tensorflow.python.framework import config
  from tensorflow.python.framework import constant_op
  from tensorflow.python.framework import dtypes
  from tensorflow.python.framework import ops
  from tensorflow.python.framework import summary_test_util
  from tensorflow.python.module import module
  from tensorflow.python.ops import array_ops
  from tensorflow.python.ops import control_flow_ops
  from tensorflow.python.ops import math_ops
  from tensorflow.python.ops import nn
  from tensorflow.python.ops import random_ops
  from tensorflow.python.ops import summary_ops_v2
  from tensorflow.python.ops import variable_scope
  from tensorflow.python.ops import variables
  from tensorflow.python.platform import flags
  from tensorflow.python.tpu import device_assignment
  from tensorflow.python.tpu import tpu_replication
label_desc: Use image node_id 15 for calling the TPUStrategyModelParallelismTest obj's underlying member method code with example usage: obj.test_spmd_with_map_outside_comp_l2norm() and returns: nn, d