code: def testCapturesSubtype(self):
      self.assertTrue(
          self.type_a1_b1.is_supertype_of(self.type_a1_b1_c1)
      )
      self.assertFalse(
          self.type_a1_b1_c1.is_supertype_of(self.type_a1_b1)
      )
      self.assertFalse(
          self.type_a1_b1_c1.is_supertype_of(self.type_a2_b2_c2)
      )
      self.assertFalse(
          self.type_a1_b1_c1.is_supertype_of(self.type_a2_b2_c2)
      )
      self.assertFalse(self.type_d1.is_supertype_of(self.type_a1_b1))
  
imports: import collections
  import pickle
  import platform
  from absl.testing import parameterized
  from tensorflow.core.function import trace_type
  from tensorflow.core.function.polymorphism import function_type
  from tensorflow.core.function.polymorphism import function_type_pb2
  from tensorflow.core.function.trace_type import serialization
  from tensorflow.python.framework import func_graph
  from tensorflow.python.platform import test
  from tensorflow.python.types import trace
label_desc: Use image node_id 2 for calling the CapturesTest obj's underlying member method code with example usage: obj.testCapturesSubtype() without return types