code: def testCustomNestTraceTypeSupertype(self):
      trace_components1 = (
          MockSupertypes2With3(2),
          MockSupertypes2With3(2),
      )
      t1 = custom_nest_trace_type.CustomNestTraceType(
          MaskedValuePair, (True,), trace_components1
      )
  
      trace_components2 = (
          MockSupertypes2With3(1),
          MockSupertypes2With3(1),
      )
      t2 = custom_nest_trace_type.CustomNestTraceType(
          MaskedValuePair, (True,), trace_components2
      )
  
      trace_components3 = (
          MockSupertypes2With3(3),
          MockSupertypes2With3(3),
      )
      t3 = custom_nest_trace_type.CustomNestTraceType(
          MaskedValuePair, (True,), trace_components3
      )
      self.assertEqual(t1.most_specific_common_supertype([t2]), t3)
  
      c_super_none = custom_nest_trace_type.CustomNestTraceType(
          MaskedValuePair, (True,), (None, None)
      )
      self.assertEqual(
          t2.most_specific_common_supertype([t3]), c_super_none
      )
      self.assertEqual(
          t3.most_specific_common_supertype([t1]), c_super_none
      )
  
imports: import dataclasses
  from typing import Any
  from tensorflow.core.function.trace_type import custom_nest_trace_type
  from tensorflow.core.function.trace_type import default_types
  from tensorflow.python.platform import test
  from tensorflow.python.types import trace
label_desc: Use image node_id 4 for calling the CustomNestTraceTypeTest obj's underlying member method code with example usage: obj.testCustomNestTraceTypeSupertype() without return types