public class com.oracle.truffle.tck.tests.TypeDescriptorTest
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: com.oracle.truffle.tck.tests.TypeDescriptorTest
  super_class: java.lang.Object
{
  private static final org.graalvm.polyglot.tck.TypeDescriptor[] PREDEFINED;
    descriptor: [Lorg/graalvm/polyglot/tck/TypeDescriptor;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=0, args_size=0
         0: .line 57
            bipush 12
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
         1: .line 58
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.ARRAY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            iconst_1
         2: .line 59
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.BOOLEAN:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            iconst_2
         3: .line 60
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.HOST_OBJECT:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            iconst_3
         4: .line 61
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.NATIVE_POINTER:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            iconst_4
         5: .line 62
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.NULL:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            iconst_5
         6: .line 63
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.NUMBER:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            bipush 6
         7: .line 64
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.OBJECT:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            bipush 7
         8: .line 65
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.STRING:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            bipush 8
         9: .line 66
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.EXECUTABLE:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            bipush 9
        10: .line 67
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.EXECUTABLE_ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            bipush 10
        11: .line 68
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.INSTANTIABLE:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            bipush 11
        12: .line 69
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.INSTANTIABLE_ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
        13: .line 57
            putstatic com.oracle.truffle.tck.tests.TypeDescriptorTest.PREDEFINED:[Lorg/graalvm/polyglot/tck/TypeDescriptor;
        14: .line 70
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.truffle.tck.tests.TypeDescriptorTest this
         0: .line 55
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // com.oracle.truffle.tck.tests.TypeDescriptorTest this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/tck/tests/TypeDescriptorTest;

  public void testCreate();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=2, args_size=1
        start local 0 // com.oracle.truffle.tck.tests.TypeDescriptorTest this
         0: .line 74
            iconst_2
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.STRING:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.array:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            iconst_1
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.NUMBER:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.array:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.union:([Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 1 /* t */
        start local 1 // org.graalvm.polyglot.tck.TypeDescriptor t
         1: iconst_2
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
         2: .line 76
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.STRING:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            iconst_1
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.NUMBER:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.union:([Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.array:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
         3: .line 77
            aload 1 /* t */
         4: .line 75
            invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
         5: .line 78
            iconst_3
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.NUMBER:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            iconst_1
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.STRING:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.array:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            iconst_2
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.NUMBER:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.array:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.union:([Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 1 /* t */
            iconst_2
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
         6: .line 80
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.NUMBER:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            iconst_1
            iconst_2
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.STRING:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            iconst_1
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.NUMBER:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.union:([Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.array:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.union:([Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
         7: .line 81
            aload 1 /* t */
         8: .line 79
            invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
         9: .line 82
            iconst_2
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.ARRAY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            iconst_1
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.NUMBER:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.array:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.union:([Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 1 /* t */
        10: .line 83
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.ARRAY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aload 1 /* t */
            invokestatic org.junit.Assert.assertEquals:(Ljava/lang/Object;Ljava/lang/Object;)V
        11: .line 84
            return
        end local 1 // org.graalvm.polyglot.tck.TypeDescriptor t
        end local 0 // com.oracle.truffle.tck.tests.TypeDescriptorTest this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   12     0  this  Lcom/oracle/truffle/tck/tests/TypeDescriptorTest;
            1   12     1     t  Lorg/graalvm/polyglot/tck/TypeDescriptor;
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void testPrimitive();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=9, args_size=1
        start local 0 // com.oracle.truffle.tck.tests.TypeDescriptorTest this
         0: .line 88
            getstatic com.oracle.truffle.tck.tests.TypeDescriptorTest.PREDEFINED:[Lorg/graalvm/polyglot/tck/TypeDescriptor;
            dup
            astore 4
            arraylength
            istore 3
            iconst_0
            istore 2
            goto 13
      StackMap locals: com.oracle.truffle.tck.tests.TypeDescriptorTest top int int org.graalvm.polyglot.tck.TypeDescriptor[]
      StackMap stack:
         1: aload 4
            iload 2
            aaload
            astore 1 /* td1 */
        start local 1 // org.graalvm.polyglot.tck.TypeDescriptor td1
         2: .line 89
            getstatic com.oracle.truffle.tck.tests.TypeDescriptorTest.PREDEFINED:[Lorg/graalvm/polyglot/tck/TypeDescriptor;
            dup
            astore 8
            arraylength
            istore 7
            iconst_0
            istore 6
            goto 11
      StackMap locals: com.oracle.truffle.tck.tests.TypeDescriptorTest org.graalvm.polyglot.tck.TypeDescriptor int int org.graalvm.polyglot.tck.TypeDescriptor[] top int int org.graalvm.polyglot.tck.TypeDescriptor[]
      StackMap stack:
         3: aload 8
            iload 6
            aaload
            astore 5 /* td2 */
        start local 5 // org.graalvm.polyglot.tck.TypeDescriptor td2
         4: .line 91
            aload 1 /* td1 */
            aload 5 /* td2 */
            if_acmpeq 8
         5: .line 92
            aload 1 /* td1 */
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.EXECUTABLE_ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            if_acmpne 6
            aload 5 /* td2 */
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.EXECUTABLE:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            if_acmpeq 8
         6: .line 93
      StackMap locals: com.oracle.truffle.tck.tests.TypeDescriptorTest org.graalvm.polyglot.tck.TypeDescriptor int int org.graalvm.polyglot.tck.TypeDescriptor[] org.graalvm.polyglot.tck.TypeDescriptor int int org.graalvm.polyglot.tck.TypeDescriptor[]
      StackMap stack:
            aload 1 /* td1 */
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.INSTANTIABLE_ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            if_acmpne 7
            aload 5 /* td2 */
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.INSTANTIABLE:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            if_acmpeq 8
         7: .line 94
      StackMap locals:
      StackMap stack:
            aload 1 /* td1 */
            aload 5 /* td2 */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            ifeq 8
            iconst_0
            goto 9
      StackMap locals:
      StackMap stack:
         8: iconst_1
         9: .line 90
      StackMap locals:
      StackMap stack: int
            invokestatic org.junit.Assert.assertTrue:(Z)V
        end local 5 // org.graalvm.polyglot.tck.TypeDescriptor td2
        10: .line 89
            iinc 6 1
      StackMap locals: com.oracle.truffle.tck.tests.TypeDescriptorTest org.graalvm.polyglot.tck.TypeDescriptor int int org.graalvm.polyglot.tck.TypeDescriptor[] top int int org.graalvm.polyglot.tck.TypeDescriptor[]
      StackMap stack:
        11: iload 6
            iload 7
            if_icmplt 3
        end local 1 // org.graalvm.polyglot.tck.TypeDescriptor td1
        12: .line 88
            iinc 2 1
      StackMap locals: com.oracle.truffle.tck.tests.TypeDescriptorTest top int int org.graalvm.polyglot.tck.TypeDescriptor[]
      StackMap stack:
        13: iload 2
            iload 3
            if_icmplt 1
        14: .line 97
            return
        end local 0 // com.oracle.truffle.tck.tests.TypeDescriptorTest this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   15     0  this  Lcom/oracle/truffle/tck/tests/TypeDescriptorTest;
            2   12     1   td1  Lorg/graalvm/polyglot/tck/TypeDescriptor;
            4   10     5   td2  Lorg/graalvm/polyglot/tck/TypeDescriptor;
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void testArray();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=8, args_size=1
        start local 0 // com.oracle.truffle.tck.tests.TypeDescriptorTest this
         0: .line 101
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.NUMBER:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.array:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 1 /* numArray */
        start local 1 // org.graalvm.polyglot.tck.TypeDescriptor numArray
         1: .line 102
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.STRING:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.array:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 2 /* strArray */
        start local 2 // org.graalvm.polyglot.tck.TypeDescriptor strArray
         2: .line 103
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.NUMBER:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.array:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.array:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 3 /* numArrayArray */
        start local 3 // org.graalvm.polyglot.tck.TypeDescriptor numArrayArray
         3: .line 105
            getstatic com.oracle.truffle.tck.tests.TypeDescriptorTest.PREDEFINED:[Lorg/graalvm/polyglot/tck/TypeDescriptor;
            dup
            astore 7
            arraylength
            istore 6
            iconst_0
            istore 5
            goto 9
      StackMap locals: com.oracle.truffle.tck.tests.TypeDescriptorTest org.graalvm.polyglot.tck.TypeDescriptor org.graalvm.polyglot.tck.TypeDescriptor org.graalvm.polyglot.tck.TypeDescriptor top int int org.graalvm.polyglot.tck.TypeDescriptor[]
      StackMap stack:
         4: aload 7
            iload 5
            aaload
            astore 4 /* td */
        start local 4 // org.graalvm.polyglot.tck.TypeDescriptor td
         5: .line 106
            aload 1 /* numArray */
            aload 4 /* td */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
         6: .line 107
            aload 2 /* strArray */
            aload 4 /* td */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
         7: .line 108
            aload 3 /* numArrayArray */
            aload 4 /* td */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        end local 4 // org.graalvm.polyglot.tck.TypeDescriptor td
         8: .line 105
            iinc 5 1
      StackMap locals:
      StackMap stack:
         9: iload 5
            iload 6
            if_icmplt 4
        10: .line 111
            getstatic com.oracle.truffle.tck.tests.TypeDescriptorTest.PREDEFINED:[Lorg/graalvm/polyglot/tck/TypeDescriptor;
            dup
            astore 7
            arraylength
            istore 6
            iconst_0
            istore 5
            goto 22
      StackMap locals:
      StackMap stack:
        11: aload 7
            iload 5
            aaload
            astore 4 /* td */
        start local 4 // org.graalvm.polyglot.tck.TypeDescriptor td
        12: .line 112
            aload 4 /* td */
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.ARRAY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            if_acmpeq 13
            aload 4 /* td */
            aload 1 /* numArray */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            ifeq 13
            iconst_1
            goto 14
      StackMap locals: com.oracle.truffle.tck.tests.TypeDescriptorTest org.graalvm.polyglot.tck.TypeDescriptor org.graalvm.polyglot.tck.TypeDescriptor org.graalvm.polyglot.tck.TypeDescriptor org.graalvm.polyglot.tck.TypeDescriptor int int org.graalvm.polyglot.tck.TypeDescriptor[]
      StackMap stack:
        13: iconst_0
      StackMap locals:
      StackMap stack: int
        14: invokestatic org.junit.Assert.assertFalse:(Z)V
        15: .line 113
            aload 4 /* td */
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.ARRAY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            if_acmpeq 16
            aload 4 /* td */
            aload 2 /* strArray */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            ifeq 16
            iconst_1
            goto 17
      StackMap locals:
      StackMap stack:
        16: iconst_0
      StackMap locals:
      StackMap stack: int
        17: invokestatic org.junit.Assert.assertFalse:(Z)V
        18: .line 114
            aload 4 /* td */
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.ARRAY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            if_acmpeq 19
            aload 4 /* td */
            aload 3 /* numArrayArray */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            ifeq 19
            iconst_1
            goto 20
      StackMap locals:
      StackMap stack:
        19: iconst_0
      StackMap locals:
      StackMap stack: int
        20: invokestatic org.junit.Assert.assertFalse:(Z)V
        end local 4 // org.graalvm.polyglot.tck.TypeDescriptor td
        21: .line 111
            iinc 5 1
      StackMap locals: com.oracle.truffle.tck.tests.TypeDescriptorTest org.graalvm.polyglot.tck.TypeDescriptor org.graalvm.polyglot.tck.TypeDescriptor org.graalvm.polyglot.tck.TypeDescriptor top int int org.graalvm.polyglot.tck.TypeDescriptor[]
      StackMap stack:
        22: iload 5
            iload 6
            if_icmplt 11
        23: .line 116
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.ARRAY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aload 1 /* numArray */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        24: .line 117
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.ARRAY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aload 2 /* strArray */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        25: .line 118
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.ARRAY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aload 3 /* numArrayArray */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        26: .line 120
            aload 1 /* numArray */
            aload 2 /* strArray */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        27: .line 121
            aload 1 /* numArray */
            aload 3 /* numArrayArray */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        28: .line 122
            aload 2 /* strArray */
            aload 1 /* numArray */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        29: .line 123
            aload 2 /* strArray */
            aload 3 /* numArrayArray */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        30: .line 124
            aload 3 /* numArrayArray */
            aload 1 /* numArray */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        31: .line 125
            aload 3 /* numArrayArray */
            aload 2 /* strArray */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        32: .line 126
            aload 1 /* numArray */
            aload 1 /* numArray */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        33: .line 127
            aload 2 /* strArray */
            aload 2 /* strArray */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        34: .line 128
            aload 3 /* numArrayArray */
            aload 3 /* numArrayArray */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        35: .line 130
            iconst_2
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
        36: .line 131
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.OBJECT:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            iconst_1
        37: .line 132
            aload 1 /* numArray */
            aastore
        38: .line 130
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.union:([Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 4 /* objOrArrayNum */
        start local 4 // org.graalvm.polyglot.tck.TypeDescriptor objOrArrayNum
        39: .line 133
            aload 1 /* numArray */
            aload 4 /* objOrArrayNum */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        40: .line 134
            aload 4 /* objOrArrayNum */
            aload 1 /* numArray */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        41: .line 135
            return
        end local 4 // org.graalvm.polyglot.tck.TypeDescriptor objOrArrayNum
        end local 3 // org.graalvm.polyglot.tck.TypeDescriptor numArrayArray
        end local 2 // org.graalvm.polyglot.tck.TypeDescriptor strArray
        end local 1 // org.graalvm.polyglot.tck.TypeDescriptor numArray
        end local 0 // com.oracle.truffle.tck.tests.TypeDescriptorTest this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   42     0           this  Lcom/oracle/truffle/tck/tests/TypeDescriptorTest;
            1   42     1       numArray  Lorg/graalvm/polyglot/tck/TypeDescriptor;
            2   42     2       strArray  Lorg/graalvm/polyglot/tck/TypeDescriptor;
            3   42     3  numArrayArray  Lorg/graalvm/polyglot/tck/TypeDescriptor;
            5    8     4             td  Lorg/graalvm/polyglot/tck/TypeDescriptor;
           12   21     4             td  Lorg/graalvm/polyglot/tck/TypeDescriptor;
           39   42     4  objOrArrayNum  Lorg/graalvm/polyglot/tck/TypeDescriptor;
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void testUnion();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=12, args_size=1
        start local 0 // com.oracle.truffle.tck.tests.TypeDescriptorTest this
         0: .line 139
            iconst_2
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.NUMBER:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            iconst_1
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.BOOLEAN:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.union:([Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 1 /* numOrBool */
        start local 1 // org.graalvm.polyglot.tck.TypeDescriptor numOrBool
         1: .line 140
            iconst_2
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
            aload 1 /* numOrBool */
            aastore
            dup
            iconst_1
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.STRING:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.union:([Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 2 /* numOrBoolOrStr */
        start local 2 // org.graalvm.polyglot.tck.TypeDescriptor numOrBoolOrStr
         2: .line 141
            getstatic com.oracle.truffle.tck.tests.TypeDescriptorTest.PREDEFINED:[Lorg/graalvm/polyglot/tck/TypeDescriptor;
            dup
            astore 6
            arraylength
            istore 5
            iconst_0
            istore 4
            goto 11
      StackMap locals: com.oracle.truffle.tck.tests.TypeDescriptorTest org.graalvm.polyglot.tck.TypeDescriptor org.graalvm.polyglot.tck.TypeDescriptor top int int org.graalvm.polyglot.tck.TypeDescriptor[]
      StackMap stack:
         3: aload 6
            iload 4
            aaload
            astore 3 /* td */
        start local 3 // org.graalvm.polyglot.tck.TypeDescriptor td
         4: .line 142
            aload 3 /* td */
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.NUMBER:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            if_acmpeq 5
            aload 3 /* td */
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.BOOLEAN:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            if_acmpeq 5
            aload 3 /* td */
            aload 1 /* numOrBool */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            ifeq 5
            iconst_1
            goto 6
      StackMap locals: com.oracle.truffle.tck.tests.TypeDescriptorTest org.graalvm.polyglot.tck.TypeDescriptor org.graalvm.polyglot.tck.TypeDescriptor org.graalvm.polyglot.tck.TypeDescriptor int int org.graalvm.polyglot.tck.TypeDescriptor[]
      StackMap stack:
         5: iconst_0
      StackMap locals:
      StackMap stack: int
         6: invokestatic org.junit.Assert.assertFalse:(Z)V
         7: .line 143
            aload 3 /* td */
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.NUMBER:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            if_acmpeq 8
            aload 3 /* td */
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.BOOLEAN:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            if_acmpeq 8
            aload 1 /* numOrBool */
            aload 3 /* td */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            ifeq 8
            iconst_1
            goto 9
      StackMap locals:
      StackMap stack:
         8: iconst_0
      StackMap locals:
      StackMap stack: int
         9: invokestatic org.junit.Assert.assertFalse:(Z)V
        end local 3 // org.graalvm.polyglot.tck.TypeDescriptor td
        10: .line 141
            iinc 4 1
      StackMap locals: com.oracle.truffle.tck.tests.TypeDescriptorTest org.graalvm.polyglot.tck.TypeDescriptor org.graalvm.polyglot.tck.TypeDescriptor top int int org.graalvm.polyglot.tck.TypeDescriptor[]
      StackMap stack:
        11: iload 4
            iload 5
            if_icmplt 3
        12: .line 146
            aload 1 /* numOrBool */
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.BOOLEAN:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        13: .line 147
            aload 2 /* numOrBoolOrStr */
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.BOOLEAN:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        14: .line 148
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.BOOLEAN:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aload 1 /* numOrBool */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        15: .line 149
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.BOOLEAN:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aload 2 /* numOrBoolOrStr */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        16: .line 150
            aload 1 /* numOrBool */
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.NUMBER:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        17: .line 151
            aload 2 /* numOrBoolOrStr */
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.NUMBER:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        18: .line 152
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.NUMBER:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aload 1 /* numOrBool */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        19: .line 153
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.NUMBER:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aload 2 /* numOrBoolOrStr */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        20: .line 154
            aload 2 /* numOrBoolOrStr */
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.STRING:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        21: .line 155
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.STRING:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aload 2 /* numOrBoolOrStr */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        22: .line 157
            aload 2 /* numOrBoolOrStr */
            aload 1 /* numOrBool */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        23: .line 158
            aload 1 /* numOrBool */
            aload 2 /* numOrBoolOrStr */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        24: .line 160
            iconst_2
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
        25: .line 161
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.NUMBER:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.array:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            iconst_1
        26: .line 162
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.BOOLEAN:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
        27: .line 160
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.union:([Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 3 /* arrNumberOrBool */
        start local 3 // org.graalvm.polyglot.tck.TypeDescriptor arrNumberOrBool
        28: .line 163
            iconst_2
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
        29: .line 164
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.NUMBER:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.array:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            iconst_1
        30: .line 165
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.STRING:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
        31: .line 163
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.union:([Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 4 /* arrNumberOrString */
        start local 4 // org.graalvm.polyglot.tck.TypeDescriptor arrNumberOrString
        32: .line 166
            iconst_2
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
        33: .line 167
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.BOOLEAN:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.array:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            iconst_1
        34: .line 168
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.STRING:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
        35: .line 166
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.union:([Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 5 /* arrBoolOrString */
        start local 5 // org.graalvm.polyglot.tck.TypeDescriptor arrBoolOrString
        36: .line 169
            iconst_3
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
        37: .line 170
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.NUMBER:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.array:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            iconst_1
        38: .line 171
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.BOOLEAN:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            iconst_2
        39: .line 172
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.STRING:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
        40: .line 169
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.union:([Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 6 /* arrNumberOrBoolOrStr */
        start local 6 // org.graalvm.polyglot.tck.TypeDescriptor arrNumberOrBoolOrStr
        41: .line 173
            aload 3 /* arrNumberOrBool */
            aload 4 /* arrNumberOrString */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        42: .line 174
            aload 3 /* arrNumberOrBool */
            aload 5 /* arrBoolOrString */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        43: .line 175
            aload 6 /* arrNumberOrBoolOrStr */
            aload 4 /* arrNumberOrString */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        44: .line 177
            aload 1 /* numOrBool */
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.array:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 7 /* arrNumBool */
        start local 7 // org.graalvm.polyglot.tck.TypeDescriptor arrNumBool
        45: .line 178
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.NUMBER:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.array:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 8 /* arrNum */
        start local 8 // org.graalvm.polyglot.tck.TypeDescriptor arrNum
        46: .line 179
            iconst_2
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
            aload 1 /* numOrBool */
            aastore
            dup
            iconst_1
            aload 7 /* arrNumBool */
            aastore
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.union:([Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 9 /* numOrBoolOrArrNumBool */
        start local 9 // org.graalvm.polyglot.tck.TypeDescriptor numOrBoolOrArrNumBool
        47: .line 180
            aload 9 /* numOrBoolOrArrNumBool */
            aload 8 /* arrNum */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        48: .line 181
            iconst_2
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.OBJECT:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            iconst_1
            aload 8 /* arrNum */
            aastore
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.union:([Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 10 /* objOrArrNum */
        start local 10 // org.graalvm.polyglot.tck.TypeDescriptor objOrArrNum
        49: .line 182
            iconst_2
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.BOOLEAN:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            iconst_1
            aload 8 /* arrNum */
            aastore
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.union:([Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 11 /* boolOrArrNum */
        start local 11 // org.graalvm.polyglot.tck.TypeDescriptor boolOrArrNum
        50: .line 183
            aload 9 /* numOrBoolOrArrNumBool */
            aload 10 /* objOrArrNum */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        51: .line 184
            aload 9 /* numOrBoolOrArrNumBool */
            aload 11 /* boolOrArrNum */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        52: .line 185
            return
        end local 11 // org.graalvm.polyglot.tck.TypeDescriptor boolOrArrNum
        end local 10 // org.graalvm.polyglot.tck.TypeDescriptor objOrArrNum
        end local 9 // org.graalvm.polyglot.tck.TypeDescriptor numOrBoolOrArrNumBool
        end local 8 // org.graalvm.polyglot.tck.TypeDescriptor arrNum
        end local 7 // org.graalvm.polyglot.tck.TypeDescriptor arrNumBool
        end local 6 // org.graalvm.polyglot.tck.TypeDescriptor arrNumberOrBoolOrStr
        end local 5 // org.graalvm.polyglot.tck.TypeDescriptor arrBoolOrString
        end local 4 // org.graalvm.polyglot.tck.TypeDescriptor arrNumberOrString
        end local 3 // org.graalvm.polyglot.tck.TypeDescriptor arrNumberOrBool
        end local 2 // org.graalvm.polyglot.tck.TypeDescriptor numOrBoolOrStr
        end local 1 // org.graalvm.polyglot.tck.TypeDescriptor numOrBool
        end local 0 // com.oracle.truffle.tck.tests.TypeDescriptorTest this
      LocalVariableTable:
        Start  End  Slot                   Name  Signature
            0   53     0                   this  Lcom/oracle/truffle/tck/tests/TypeDescriptorTest;
            1   53     1              numOrBool  Lorg/graalvm/polyglot/tck/TypeDescriptor;
            2   53     2         numOrBoolOrStr  Lorg/graalvm/polyglot/tck/TypeDescriptor;
            4   10     3                     td  Lorg/graalvm/polyglot/tck/TypeDescriptor;
           28   53     3        arrNumberOrBool  Lorg/graalvm/polyglot/tck/TypeDescriptor;
           32   53     4      arrNumberOrString  Lorg/graalvm/polyglot/tck/TypeDescriptor;
           36   53     5        arrBoolOrString  Lorg/graalvm/polyglot/tck/TypeDescriptor;
           41   53     6   arrNumberOrBoolOrStr  Lorg/graalvm/polyglot/tck/TypeDescriptor;
           45   53     7             arrNumBool  Lorg/graalvm/polyglot/tck/TypeDescriptor;
           46   53     8                 arrNum  Lorg/graalvm/polyglot/tck/TypeDescriptor;
           47   53     9  numOrBoolOrArrNumBool  Lorg/graalvm/polyglot/tck/TypeDescriptor;
           49   53    10            objOrArrNum  Lorg/graalvm/polyglot/tck/TypeDescriptor;
           50   53    11           boolOrArrNum  Lorg/graalvm/polyglot/tck/TypeDescriptor;
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void testExecutable();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=24, args_size=1
        start local 0 // com.oracle.truffle.tck.tests.TypeDescriptorTest this
         0: .line 189
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.EXECUTABLE:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 1 /* exeBottom */
        start local 1 // org.graalvm.polyglot.tck.TypeDescriptor exeBottom
         1: .line 190
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.EXECUTABLE_ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 2 /* exeTop */
        start local 2 // org.graalvm.polyglot.tck.TypeDescriptor exeTop
         2: .line 191
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            iconst_0
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.executable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;[Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 3 /* exeAnyNoArgs */
        start local 3 // org.graalvm.polyglot.tck.TypeDescriptor exeAnyNoArgs
         3: .line 192
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            iconst_1
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.STRING:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.executable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;[Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 4 /* exeAnyStr */
        start local 4 // org.graalvm.polyglot.tck.TypeDescriptor exeAnyStr
         4: .line 193
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            iconst_2
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.STRING:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            iconst_1
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.NUMBER:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.executable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;[Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 5 /* exeAnyStrNum */
        start local 5 // org.graalvm.polyglot.tck.TypeDescriptor exeAnyStrNum
         5: .line 194
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.STRING:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            iconst_0
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.executable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;[Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 6 /* exeStrNoArgs */
        start local 6 // org.graalvm.polyglot.tck.TypeDescriptor exeStrNoArgs
         6: .line 195
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.STRING:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            iconst_1
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.STRING:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.executable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;[Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 7 /* exeStrStr */
        start local 7 // org.graalvm.polyglot.tck.TypeDescriptor exeStrStr
         7: .line 196
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            iconst_2
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
            iconst_2
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.NUMBER:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            iconst_1
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.STRING:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.union:([Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            iconst_1
            iconst_2
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
         8: .line 197
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.NUMBER:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            iconst_1
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.OBJECT:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.union:([Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
         9: .line 196
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.executable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;[Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 8 /* exeAnyUnionUnion */
        start local 8 // org.graalvm.polyglot.tck.TypeDescriptor exeAnyUnionUnion
        10: .line 198
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 9 /* eds */
        start local 9 // java.util.List eds
        11: .line 199
            aload 9 /* eds */
            bipush 7
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
            aload 1 /* exeBottom */
            aastore
            dup
            iconst_1
            aload 3 /* exeAnyNoArgs */
            aastore
            dup
            iconst_2
            aload 4 /* exeAnyStr */
            aastore
            dup
            iconst_3
            aload 5 /* exeAnyStrNum */
            aastore
            dup
            iconst_4
            aload 6 /* exeStrNoArgs */
            aastore
            dup
            iconst_5
            aload 7 /* exeStrStr */
            aastore
            dup
            bipush 6
            aload 8 /* exeAnyUnionUnion */
            aastore
            invokestatic java.util.Collections.addAll:(Ljava/util/Collection;[Ljava/lang/Object;)Z
            pop
        12: .line 200
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 10 /* otherTypes */
        start local 10 // java.util.List otherTypes
        13: .line 201
            aload 10 /* otherTypes */
            getstatic com.oracle.truffle.tck.tests.TypeDescriptorTest.PREDEFINED:[Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokestatic java.util.Collections.addAll:(Ljava/util/Collection;[Ljava/lang/Object;)Z
            pop
        14: .line 202
            aload 10 /* otherTypes */
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.EXECUTABLE:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokeinterface java.util.List.remove:(Ljava/lang/Object;)Z
            pop
        15: .line 203
            aload 10 /* otherTypes */
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.EXECUTABLE_ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokeinterface java.util.List.remove:(Ljava/lang/Object;)Z
            pop
        16: .line 204
            aload 10 /* otherTypes */
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.BOOLEAN:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.array:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        17: .line 205
            aload 10 /* otherTypes */
            iconst_2
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.BOOLEAN:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            iconst_1
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.NUMBER:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.union:([Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        18: .line 206
            aload 10 /* otherTypes */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 12
            goto 25
      StackMap locals: com.oracle.truffle.tck.tests.TypeDescriptorTest org.graalvm.polyglot.tck.TypeDescriptor org.graalvm.polyglot.tck.TypeDescriptor org.graalvm.polyglot.tck.TypeDescriptor org.graalvm.polyglot.tck.TypeDescriptor org.graalvm.polyglot.tck.TypeDescriptor org.graalvm.polyglot.tck.TypeDescriptor org.graalvm.polyglot.tck.TypeDescriptor org.graalvm.polyglot.tck.TypeDescriptor java.util.List java.util.List top java.util.Iterator
      StackMap stack:
        19: aload 12
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.graalvm.polyglot.tck.TypeDescriptor
            astore 11 /* td */
        start local 11 // org.graalvm.polyglot.tck.TypeDescriptor td
        20: .line 207
            aload 9 /* eds */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 14
            goto 24
      StackMap locals: com.oracle.truffle.tck.tests.TypeDescriptorTest org.graalvm.polyglot.tck.TypeDescriptor org.graalvm.polyglot.tck.TypeDescriptor org.graalvm.polyglot.tck.TypeDescriptor org.graalvm.polyglot.tck.TypeDescriptor org.graalvm.polyglot.tck.TypeDescriptor org.graalvm.polyglot.tck.TypeDescriptor org.graalvm.polyglot.tck.TypeDescriptor org.graalvm.polyglot.tck.TypeDescriptor java.util.List java.util.List org.graalvm.polyglot.tck.TypeDescriptor java.util.Iterator top java.util.Iterator
      StackMap stack:
        21: aload 14
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.graalvm.polyglot.tck.TypeDescriptor
            astore 13 /* ed */
        start local 13 // org.graalvm.polyglot.tck.TypeDescriptor ed
        22: .line 208
            aload 13 /* ed */
            aload 11 /* td */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        23: .line 209
            aload 11 /* td */
            aload 13 /* ed */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        end local 13 // org.graalvm.polyglot.tck.TypeDescriptor ed
        24: .line 207
      StackMap locals:
      StackMap stack:
            aload 14
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 21
        end local 11 // org.graalvm.polyglot.tck.TypeDescriptor td
        25: .line 206
      StackMap locals: com.oracle.truffle.tck.tests.TypeDescriptorTest org.graalvm.polyglot.tck.TypeDescriptor org.graalvm.polyglot.tck.TypeDescriptor org.graalvm.polyglot.tck.TypeDescriptor org.graalvm.polyglot.tck.TypeDescriptor org.graalvm.polyglot.tck.TypeDescriptor org.graalvm.polyglot.tck.TypeDescriptor org.graalvm.polyglot.tck.TypeDescriptor org.graalvm.polyglot.tck.TypeDescriptor java.util.List java.util.List top java.util.Iterator
      StackMap stack:
            aload 12
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 19
        26: .line 212
            aload 2 /* exeTop */
            aload 2 /* exeTop */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        27: .line 213
            aload 2 /* exeTop */
            aload 1 /* exeBottom */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        28: .line 214
            aload 2 /* exeTop */
            aload 3 /* exeAnyNoArgs */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        29: .line 215
            aload 2 /* exeTop */
            aload 4 /* exeAnyStr */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        30: .line 216
            aload 2 /* exeTop */
            aload 5 /* exeAnyStrNum */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        31: .line 217
            aload 2 /* exeTop */
            aload 6 /* exeStrNoArgs */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        32: .line 218
            aload 2 /* exeTop */
            aload 7 /* exeStrStr */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        33: .line 219
            aload 2 /* exeTop */
            aload 8 /* exeAnyUnionUnion */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        34: .line 220
            aload 1 /* exeBottom */
            aload 2 /* exeTop */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        35: .line 221
            aload 1 /* exeBottom */
            aload 3 /* exeAnyNoArgs */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        36: .line 222
            aload 1 /* exeBottom */
            aload 4 /* exeAnyStr */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        37: .line 223
            aload 1 /* exeBottom */
            aload 5 /* exeAnyStrNum */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        38: .line 224
            aload 1 /* exeBottom */
            aload 6 /* exeStrNoArgs */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        39: .line 225
            aload 1 /* exeBottom */
            aload 7 /* exeStrStr */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        40: .line 226
            aload 1 /* exeBottom */
            aload 8 /* exeAnyUnionUnion */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        41: .line 227
            aload 3 /* exeAnyNoArgs */
            aload 2 /* exeTop */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        42: .line 228
            aload 3 /* exeAnyNoArgs */
            aload 1 /* exeBottom */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        43: .line 229
            aload 3 /* exeAnyNoArgs */
            aload 4 /* exeAnyStr */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        44: .line 230
            aload 3 /* exeAnyNoArgs */
            aload 5 /* exeAnyStrNum */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        45: .line 231
            aload 3 /* exeAnyNoArgs */
            aload 6 /* exeStrNoArgs */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        46: .line 232
            aload 3 /* exeAnyNoArgs */
            aload 7 /* exeStrStr */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        47: .line 233
            aload 3 /* exeAnyNoArgs */
            aload 8 /* exeAnyUnionUnion */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        48: .line 234
            aload 4 /* exeAnyStr */
            aload 2 /* exeTop */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        49: .line 235
            aload 4 /* exeAnyStr */
            aload 1 /* exeBottom */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        50: .line 236
            aload 4 /* exeAnyStr */
            aload 3 /* exeAnyNoArgs */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        51: .line 237
            aload 4 /* exeAnyStr */
            aload 5 /* exeAnyStrNum */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        52: .line 238
            aload 4 /* exeAnyStr */
            aload 6 /* exeStrNoArgs */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        53: .line 239
            aload 4 /* exeAnyStr */
            aload 7 /* exeStrStr */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        54: .line 240
            aload 4 /* exeAnyStr */
            aload 8 /* exeAnyUnionUnion */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        55: .line 241
            aload 5 /* exeAnyStrNum */
            aload 2 /* exeTop */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        56: .line 242
            aload 5 /* exeAnyStrNum */
            aload 1 /* exeBottom */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        57: .line 243
            aload 5 /* exeAnyStrNum */
            aload 3 /* exeAnyNoArgs */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        58: .line 244
            aload 5 /* exeAnyStrNum */
            aload 4 /* exeAnyStr */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        59: .line 245
            aload 5 /* exeAnyStrNum */
            aload 6 /* exeStrNoArgs */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        60: .line 246
            aload 5 /* exeAnyStrNum */
            aload 7 /* exeStrStr */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        61: .line 247
            aload 5 /* exeAnyStrNum */
            aload 8 /* exeAnyUnionUnion */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        62: .line 248
            aload 6 /* exeStrNoArgs */
            aload 2 /* exeTop */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        63: .line 249
            aload 6 /* exeStrNoArgs */
            aload 1 /* exeBottom */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        64: .line 250
            aload 6 /* exeStrNoArgs */
            aload 3 /* exeAnyNoArgs */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        65: .line 251
            aload 6 /* exeStrNoArgs */
            aload 4 /* exeAnyStr */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        66: .line 252
            aload 6 /* exeStrNoArgs */
            aload 5 /* exeAnyStrNum */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        67: .line 253
            aload 6 /* exeStrNoArgs */
            aload 7 /* exeStrStr */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        68: .line 254
            aload 6 /* exeStrNoArgs */
            aload 8 /* exeAnyUnionUnion */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        69: .line 255
            aload 7 /* exeStrStr */
            aload 2 /* exeTop */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        70: .line 256
            aload 7 /* exeStrStr */
            aload 1 /* exeBottom */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        71: .line 257
            aload 7 /* exeStrStr */
            aload 3 /* exeAnyNoArgs */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        72: .line 258
            aload 7 /* exeStrStr */
            aload 4 /* exeAnyStr */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        73: .line 259
            aload 7 /* exeStrStr */
            aload 5 /* exeAnyStrNum */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        74: .line 260
            aload 7 /* exeStrStr */
            aload 6 /* exeStrNoArgs */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        75: .line 261
            aload 7 /* exeStrStr */
            aload 8 /* exeAnyUnionUnion */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        76: .line 262
            aload 8 /* exeAnyUnionUnion */
            aload 2 /* exeTop */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        77: .line 263
            aload 8 /* exeAnyUnionUnion */
            aload 1 /* exeBottom */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        78: .line 264
            aload 8 /* exeAnyUnionUnion */
            aload 3 /* exeAnyNoArgs */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        79: .line 265
            aload 8 /* exeAnyUnionUnion */
            aload 4 /* exeAnyStr */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        80: .line 266
            aload 8 /* exeAnyUnionUnion */
            aload 5 /* exeAnyStrNum */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        81: .line 267
            aload 8 /* exeAnyUnionUnion */
            aload 6 /* exeStrNoArgs */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        82: .line 268
            aload 8 /* exeAnyUnionUnion */
            aload 7 /* exeStrStr */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        83: .line 270
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.EXECUTABLE:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.array:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 11 /* ae1 */
        start local 11 // org.graalvm.polyglot.tck.TypeDescriptor ae1
        84: .line 271
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            iconst_1
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.BOOLEAN:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.executable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;[Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.array:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 12 /* ae2 */
        start local 12 // org.graalvm.polyglot.tck.TypeDescriptor ae2
        85: .line 272
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.EXECUTABLE_ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.array:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 13 /* ae3 */
        start local 13 // org.graalvm.polyglot.tck.TypeDescriptor ae3
        86: .line 273
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.BOOLEAN:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.array:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 14 /* ab */
        start local 14 // org.graalvm.polyglot.tck.TypeDescriptor ab
        87: .line 274
            aload 11 /* ae1 */
            aload 12 /* ae2 */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        88: .line 275
            aload 11 /* ae1 */
            aload 13 /* ae3 */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        89: .line 276
            aload 11 /* ae1 */
            aload 14 /* ab */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        90: .line 277
            aload 12 /* ae2 */
            aload 11 /* ae1 */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        91: .line 278
            aload 12 /* ae2 */
            aload 13 /* ae3 */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        92: .line 279
            aload 12 /* ae2 */
            aload 14 /* ab */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        93: .line 280
            aload 13 /* ae3 */
            aload 11 /* ae1 */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        94: .line 281
            aload 13 /* ae3 */
            aload 12 /* ae2 */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        95: .line 282
            aload 13 /* ae3 */
            aload 14 /* ab */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        96: .line 284
            iconst_2
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.EXECUTABLE:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            iconst_1
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.OBJECT:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.union:([Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 15 /* ue1 */
        start local 15 // org.graalvm.polyglot.tck.TypeDescriptor ue1
        97: .line 285
            iconst_2
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            iconst_1
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.BOOLEAN:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.executable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;[Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            iconst_1
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.STRING:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.union:([Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 16 /* ue2 */
        start local 16 // org.graalvm.polyglot.tck.TypeDescriptor ue2
        98: .line 286
            iconst_3
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            iconst_1
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.BOOLEAN:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.executable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;[Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            iconst_1
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.STRING:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            iconst_2
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.OBJECT:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.union:([Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 17 /* ue3 */
        start local 17 // org.graalvm.polyglot.tck.TypeDescriptor ue3
        99: .line 287
            iconst_3
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.EXECUTABLE_ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            iconst_1
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.STRING:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            iconst_2
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.OBJECT:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.union:([Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 18 /* ue4 */
        start local 18 // org.graalvm.polyglot.tck.TypeDescriptor ue4
       100: .line 288
            iconst_2
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.BOOLEAN:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            iconst_1
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.NUMBER:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.union:([Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 19 /* up */
        start local 19 // org.graalvm.polyglot.tck.TypeDescriptor up
       101: .line 289
            aload 15 /* ue1 */
            aload 16 /* ue2 */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
       102: .line 290
            aload 15 /* ue1 */
            aload 17 /* ue3 */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
       103: .line 291
            aload 15 /* ue1 */
            aload 19 /* up */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
       104: .line 292
            aload 15 /* ue1 */
            aload 18 /* ue4 */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
       105: .line 293
            aload 16 /* ue2 */
            aload 15 /* ue1 */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
       106: .line 294
            aload 16 /* ue2 */
            aload 17 /* ue3 */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
       107: .line 295
            aload 16 /* ue2 */
            aload 19 /* up */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
       108: .line 296
            aload 16 /* ue2 */
            aload 18 /* ue4 */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
       109: .line 297
            aload 17 /* ue3 */
            aload 15 /* ue1 */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
       110: .line 298
            aload 17 /* ue3 */
            aload 16 /* ue2 */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
       111: .line 299
            aload 17 /* ue3 */
            aload 19 /* up */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
       112: .line 300
            aload 17 /* ue3 */
            aload 18 /* ue4 */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
       113: .line 301
            aload 18 /* ue4 */
            aload 15 /* ue1 */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
       114: .line 302
            aload 18 /* ue4 */
            aload 16 /* ue2 */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
       115: .line 303
            aload 18 /* ue4 */
            aload 17 /* ue3 */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
       116: .line 304
            aload 18 /* ue4 */
            aload 19 /* up */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
       117: .line 306
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            iconst_0
            iconst_1
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.executable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;Z[Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 20 /* exeStrictAnyAny */
        start local 20 // org.graalvm.polyglot.tck.TypeDescriptor exeStrictAnyAny
       118: .line 307
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            iconst_1
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.NUMBER:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.executable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;[Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 21 /* exeAnyNum */
        start local 21 // org.graalvm.polyglot.tck.TypeDescriptor exeAnyNum
       119: .line 308
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            iconst_2
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.NUMBER:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            iconst_1
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.NUMBER:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.executable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;[Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 22 /* exeAnyNumNum */
        start local 22 // org.graalvm.polyglot.tck.TypeDescriptor exeAnyNumNum
       120: .line 309
            aload 21 /* exeAnyNum */
            aload 20 /* exeStrictAnyAny */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
       121: .line 310
            aload 22 /* exeAnyNumNum */
            aload 20 /* exeStrictAnyAny */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
       122: .line 312
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            iconst_0
            iconst_0
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.executable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;Z[Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 23 /* exeStrictAny */
        start local 23 // org.graalvm.polyglot.tck.TypeDescriptor exeStrictAny
       123: .line 313
            aload 21 /* exeAnyNum */
            aload 23 /* exeStrictAny */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
       124: .line 314
            return
        end local 23 // org.graalvm.polyglot.tck.TypeDescriptor exeStrictAny
        end local 22 // org.graalvm.polyglot.tck.TypeDescriptor exeAnyNumNum
        end local 21 // org.graalvm.polyglot.tck.TypeDescriptor exeAnyNum
        end local 20 // org.graalvm.polyglot.tck.TypeDescriptor exeStrictAnyAny
        end local 19 // org.graalvm.polyglot.tck.TypeDescriptor up
        end local 18 // org.graalvm.polyglot.tck.TypeDescriptor ue4
        end local 17 // org.graalvm.polyglot.tck.TypeDescriptor ue3
        end local 16 // org.graalvm.polyglot.tck.TypeDescriptor ue2
        end local 15 // org.graalvm.polyglot.tck.TypeDescriptor ue1
        end local 14 // org.graalvm.polyglot.tck.TypeDescriptor ab
        end local 13 // org.graalvm.polyglot.tck.TypeDescriptor ae3
        end local 12 // org.graalvm.polyglot.tck.TypeDescriptor ae2
        end local 11 // org.graalvm.polyglot.tck.TypeDescriptor ae1
        end local 10 // java.util.List otherTypes
        end local 9 // java.util.List eds
        end local 8 // org.graalvm.polyglot.tck.TypeDescriptor exeAnyUnionUnion
        end local 7 // org.graalvm.polyglot.tck.TypeDescriptor exeStrStr
        end local 6 // org.graalvm.polyglot.tck.TypeDescriptor exeStrNoArgs
        end local 5 // org.graalvm.polyglot.tck.TypeDescriptor exeAnyStrNum
        end local 4 // org.graalvm.polyglot.tck.TypeDescriptor exeAnyStr
        end local 3 // org.graalvm.polyglot.tck.TypeDescriptor exeAnyNoArgs
        end local 2 // org.graalvm.polyglot.tck.TypeDescriptor exeTop
        end local 1 // org.graalvm.polyglot.tck.TypeDescriptor exeBottom
        end local 0 // com.oracle.truffle.tck.tests.TypeDescriptorTest this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0  125     0              this  Lcom/oracle/truffle/tck/tests/TypeDescriptorTest;
            1  125     1         exeBottom  Lorg/graalvm/polyglot/tck/TypeDescriptor;
            2  125     2            exeTop  Lorg/graalvm/polyglot/tck/TypeDescriptor;
            3  125     3      exeAnyNoArgs  Lorg/graalvm/polyglot/tck/TypeDescriptor;
            4  125     4         exeAnyStr  Lorg/graalvm/polyglot/tck/TypeDescriptor;
            5  125     5      exeAnyStrNum  Lorg/graalvm/polyglot/tck/TypeDescriptor;
            6  125     6      exeStrNoArgs  Lorg/graalvm/polyglot/tck/TypeDescriptor;
            7  125     7         exeStrStr  Lorg/graalvm/polyglot/tck/TypeDescriptor;
           10  125     8  exeAnyUnionUnion  Lorg/graalvm/polyglot/tck/TypeDescriptor;
           11  125     9               eds  Ljava/util/List<Lorg/graalvm/polyglot/tck/TypeDescriptor;>;
           13  125    10        otherTypes  Ljava/util/List<Lorg/graalvm/polyglot/tck/TypeDescriptor;>;
           20   25    11                td  Lorg/graalvm/polyglot/tck/TypeDescriptor;
           22   24    13                ed  Lorg/graalvm/polyglot/tck/TypeDescriptor;
           84  125    11               ae1  Lorg/graalvm/polyglot/tck/TypeDescriptor;
           85  125    12               ae2  Lorg/graalvm/polyglot/tck/TypeDescriptor;
           86  125    13               ae3  Lorg/graalvm/polyglot/tck/TypeDescriptor;
           87  125    14                ab  Lorg/graalvm/polyglot/tck/TypeDescriptor;
           97  125    15               ue1  Lorg/graalvm/polyglot/tck/TypeDescriptor;
           98  125    16               ue2  Lorg/graalvm/polyglot/tck/TypeDescriptor;
           99  125    17               ue3  Lorg/graalvm/polyglot/tck/TypeDescriptor;
          100  125    18               ue4  Lorg/graalvm/polyglot/tck/TypeDescriptor;
          101  125    19                up  Lorg/graalvm/polyglot/tck/TypeDescriptor;
          118  125    20   exeStrictAnyAny  Lorg/graalvm/polyglot/tck/TypeDescriptor;
          119  125    21         exeAnyNum  Lorg/graalvm/polyglot/tck/TypeDescriptor;
          120  125    22      exeAnyNumNum  Lorg/graalvm/polyglot/tck/TypeDescriptor;
          123  125    23      exeStrictAny  Lorg/graalvm/polyglot/tck/TypeDescriptor;
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void testInstantiable();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=9, locals=24, args_size=1
        start local 0 // com.oracle.truffle.tck.tests.TypeDescriptorTest this
         0: .line 318
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.INSTANTIABLE:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 1 /* instantiableBottom */
        start local 1 // org.graalvm.polyglot.tck.TypeDescriptor instantiableBottom
         1: .line 319
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.INSTANTIABLE_ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 2 /* instantiableTop */
        start local 2 // org.graalvm.polyglot.tck.TypeDescriptor instantiableTop
         2: .line 320
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            iconst_1
            iconst_0
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.instantiable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;Z[Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 3 /* instantiableAnyNoArgs */
        start local 3 // org.graalvm.polyglot.tck.TypeDescriptor instantiableAnyNoArgs
         3: .line 321
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            iconst_1
            iconst_1
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.STRING:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.instantiable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;Z[Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 4 /* instantiableAnyStr */
        start local 4 // org.graalvm.polyglot.tck.TypeDescriptor instantiableAnyStr
         4: .line 322
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            iconst_1
            iconst_2
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.STRING:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            iconst_1
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.NUMBER:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.instantiable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;Z[Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 5 /* instantiableAnyStrNum */
        start local 5 // org.graalvm.polyglot.tck.TypeDescriptor instantiableAnyStrNum
         5: .line 323
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.STRING:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            iconst_1
            iconst_0
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.instantiable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;Z[Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 6 /* instantiableStrNoArgs */
        start local 6 // org.graalvm.polyglot.tck.TypeDescriptor instantiableStrNoArgs
         6: .line 324
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.STRING:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            iconst_1
            iconst_1
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.STRING:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.instantiable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;Z[Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 7 /* instantiableStrStr */
        start local 7 // org.graalvm.polyglot.tck.TypeDescriptor instantiableStrStr
         7: .line 325
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            iconst_1
            iconst_2
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
            iconst_2
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.NUMBER:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            iconst_1
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.STRING:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.union:([Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            iconst_1
            iconst_2
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
         8: .line 326
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.NUMBER:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            iconst_1
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.OBJECT:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.union:([Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
         9: .line 325
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.instantiable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;Z[Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 8 /* instantiableAnyUnionUnion */
        start local 8 // org.graalvm.polyglot.tck.TypeDescriptor instantiableAnyUnionUnion
        10: .line 327
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 9 /* instantiables */
        start local 9 // java.util.List instantiables
        11: .line 328
            aload 9 /* instantiables */
            bipush 7
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
            aload 1 /* instantiableBottom */
            aastore
            dup
            iconst_1
            aload 3 /* instantiableAnyNoArgs */
            aastore
            dup
            iconst_2
            aload 4 /* instantiableAnyStr */
            aastore
            dup
            iconst_3
            aload 5 /* instantiableAnyStrNum */
            aastore
            dup
            iconst_4
            aload 6 /* instantiableStrNoArgs */
            aastore
            dup
            iconst_5
            aload 7 /* instantiableStrStr */
            aastore
            dup
            bipush 6
            aload 8 /* instantiableAnyUnionUnion */
            aastore
            invokestatic java.util.Collections.addAll:(Ljava/util/Collection;[Ljava/lang/Object;)Z
            pop
        12: .line 329
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 10 /* otherTypes */
        start local 10 // java.util.List otherTypes
        13: .line 330
            aload 10 /* otherTypes */
            getstatic com.oracle.truffle.tck.tests.TypeDescriptorTest.PREDEFINED:[Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokestatic java.util.Collections.addAll:(Ljava/util/Collection;[Ljava/lang/Object;)Z
            pop
        14: .line 331
            aload 10 /* otherTypes */
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.INSTANTIABLE:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokeinterface java.util.List.remove:(Ljava/lang/Object;)Z
            pop
        15: .line 332
            aload 10 /* otherTypes */
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.INSTANTIABLE_ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokeinterface java.util.List.remove:(Ljava/lang/Object;)Z
            pop
        16: .line 333
            aload 10 /* otherTypes */
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.BOOLEAN:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.array:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        17: .line 334
            aload 10 /* otherTypes */
            iconst_2
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.BOOLEAN:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            iconst_1
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.NUMBER:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.union:([Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        18: .line 335
            aload 10 /* otherTypes */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 12
            goto 25
      StackMap locals: com.oracle.truffle.tck.tests.TypeDescriptorTest org.graalvm.polyglot.tck.TypeDescriptor org.graalvm.polyglot.tck.TypeDescriptor org.graalvm.polyglot.tck.TypeDescriptor org.graalvm.polyglot.tck.TypeDescriptor org.graalvm.polyglot.tck.TypeDescriptor org.graalvm.polyglot.tck.TypeDescriptor org.graalvm.polyglot.tck.TypeDescriptor org.graalvm.polyglot.tck.TypeDescriptor java.util.List java.util.List top java.util.Iterator
      StackMap stack:
        19: aload 12
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.graalvm.polyglot.tck.TypeDescriptor
            astore 11 /* td */
        start local 11 // org.graalvm.polyglot.tck.TypeDescriptor td
        20: .line 336
            aload 9 /* instantiables */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 14
            goto 24
      StackMap locals: com.oracle.truffle.tck.tests.TypeDescriptorTest org.graalvm.polyglot.tck.TypeDescriptor org.graalvm.polyglot.tck.TypeDescriptor org.graalvm.polyglot.tck.TypeDescriptor org.graalvm.polyglot.tck.TypeDescriptor org.graalvm.polyglot.tck.TypeDescriptor org.graalvm.polyglot.tck.TypeDescriptor org.graalvm.polyglot.tck.TypeDescriptor org.graalvm.polyglot.tck.TypeDescriptor java.util.List java.util.List org.graalvm.polyglot.tck.TypeDescriptor java.util.Iterator top java.util.Iterator
      StackMap stack:
        21: aload 14
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.graalvm.polyglot.tck.TypeDescriptor
            astore 13 /* instantiable */
        start local 13 // org.graalvm.polyglot.tck.TypeDescriptor instantiable
        22: .line 337
            aload 13 /* instantiable */
            aload 11 /* td */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        23: .line 338
            aload 11 /* td */
            aload 13 /* instantiable */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        end local 13 // org.graalvm.polyglot.tck.TypeDescriptor instantiable
        24: .line 336
      StackMap locals:
      StackMap stack:
            aload 14
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 21
        end local 11 // org.graalvm.polyglot.tck.TypeDescriptor td
        25: .line 335
      StackMap locals: com.oracle.truffle.tck.tests.TypeDescriptorTest org.graalvm.polyglot.tck.TypeDescriptor org.graalvm.polyglot.tck.TypeDescriptor org.graalvm.polyglot.tck.TypeDescriptor org.graalvm.polyglot.tck.TypeDescriptor org.graalvm.polyglot.tck.TypeDescriptor org.graalvm.polyglot.tck.TypeDescriptor org.graalvm.polyglot.tck.TypeDescriptor org.graalvm.polyglot.tck.TypeDescriptor java.util.List java.util.List top java.util.Iterator
      StackMap stack:
            aload 12
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 19
        26: .line 341
            aload 2 /* instantiableTop */
            aload 2 /* instantiableTop */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        27: .line 342
            aload 2 /* instantiableTop */
            aload 1 /* instantiableBottom */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        28: .line 343
            aload 2 /* instantiableTop */
            aload 3 /* instantiableAnyNoArgs */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        29: .line 344
            aload 2 /* instantiableTop */
            aload 4 /* instantiableAnyStr */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        30: .line 345
            aload 2 /* instantiableTop */
            aload 5 /* instantiableAnyStrNum */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        31: .line 346
            aload 2 /* instantiableTop */
            aload 6 /* instantiableStrNoArgs */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        32: .line 347
            aload 2 /* instantiableTop */
            aload 7 /* instantiableStrStr */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        33: .line 348
            aload 2 /* instantiableTop */
            aload 8 /* instantiableAnyUnionUnion */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        34: .line 349
            aload 1 /* instantiableBottom */
            aload 2 /* instantiableTop */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        35: .line 350
            aload 1 /* instantiableBottom */
            aload 3 /* instantiableAnyNoArgs */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        36: .line 351
            aload 1 /* instantiableBottom */
            aload 4 /* instantiableAnyStr */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        37: .line 352
            aload 1 /* instantiableBottom */
            aload 5 /* instantiableAnyStrNum */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        38: .line 353
            aload 1 /* instantiableBottom */
            aload 6 /* instantiableStrNoArgs */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        39: .line 354
            aload 1 /* instantiableBottom */
            aload 7 /* instantiableStrStr */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        40: .line 355
            aload 1 /* instantiableBottom */
            aload 8 /* instantiableAnyUnionUnion */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        41: .line 356
            aload 3 /* instantiableAnyNoArgs */
            aload 2 /* instantiableTop */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        42: .line 357
            aload 3 /* instantiableAnyNoArgs */
            aload 1 /* instantiableBottom */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        43: .line 358
            aload 3 /* instantiableAnyNoArgs */
            aload 4 /* instantiableAnyStr */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        44: .line 359
            aload 3 /* instantiableAnyNoArgs */
            aload 5 /* instantiableAnyStrNum */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        45: .line 360
            aload 3 /* instantiableAnyNoArgs */
            aload 6 /* instantiableStrNoArgs */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        46: .line 361
            aload 3 /* instantiableAnyNoArgs */
            aload 7 /* instantiableStrStr */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        47: .line 362
            aload 3 /* instantiableAnyNoArgs */
            aload 8 /* instantiableAnyUnionUnion */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        48: .line 363
            aload 4 /* instantiableAnyStr */
            aload 2 /* instantiableTop */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        49: .line 364
            aload 4 /* instantiableAnyStr */
            aload 1 /* instantiableBottom */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        50: .line 365
            aload 4 /* instantiableAnyStr */
            aload 3 /* instantiableAnyNoArgs */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        51: .line 366
            aload 4 /* instantiableAnyStr */
            aload 5 /* instantiableAnyStrNum */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        52: .line 367
            aload 4 /* instantiableAnyStr */
            aload 6 /* instantiableStrNoArgs */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        53: .line 368
            aload 4 /* instantiableAnyStr */
            aload 7 /* instantiableStrStr */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        54: .line 369
            aload 4 /* instantiableAnyStr */
            aload 8 /* instantiableAnyUnionUnion */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        55: .line 370
            aload 5 /* instantiableAnyStrNum */
            aload 2 /* instantiableTop */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        56: .line 371
            aload 5 /* instantiableAnyStrNum */
            aload 1 /* instantiableBottom */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        57: .line 372
            aload 5 /* instantiableAnyStrNum */
            aload 3 /* instantiableAnyNoArgs */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        58: .line 373
            aload 5 /* instantiableAnyStrNum */
            aload 4 /* instantiableAnyStr */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        59: .line 374
            aload 5 /* instantiableAnyStrNum */
            aload 6 /* instantiableStrNoArgs */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        60: .line 375
            aload 5 /* instantiableAnyStrNum */
            aload 7 /* instantiableStrStr */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        61: .line 376
            aload 5 /* instantiableAnyStrNum */
            aload 8 /* instantiableAnyUnionUnion */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        62: .line 377
            aload 6 /* instantiableStrNoArgs */
            aload 2 /* instantiableTop */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        63: .line 378
            aload 6 /* instantiableStrNoArgs */
            aload 1 /* instantiableBottom */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        64: .line 379
            aload 6 /* instantiableStrNoArgs */
            aload 3 /* instantiableAnyNoArgs */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        65: .line 380
            aload 6 /* instantiableStrNoArgs */
            aload 4 /* instantiableAnyStr */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        66: .line 381
            aload 6 /* instantiableStrNoArgs */
            aload 5 /* instantiableAnyStrNum */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        67: .line 382
            aload 6 /* instantiableStrNoArgs */
            aload 7 /* instantiableStrStr */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        68: .line 383
            aload 6 /* instantiableStrNoArgs */
            aload 8 /* instantiableAnyUnionUnion */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        69: .line 384
            aload 7 /* instantiableStrStr */
            aload 2 /* instantiableTop */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        70: .line 385
            aload 7 /* instantiableStrStr */
            aload 1 /* instantiableBottom */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        71: .line 386
            aload 7 /* instantiableStrStr */
            aload 3 /* instantiableAnyNoArgs */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        72: .line 387
            aload 7 /* instantiableStrStr */
            aload 4 /* instantiableAnyStr */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        73: .line 388
            aload 7 /* instantiableStrStr */
            aload 5 /* instantiableAnyStrNum */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        74: .line 389
            aload 7 /* instantiableStrStr */
            aload 6 /* instantiableStrNoArgs */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        75: .line 390
            aload 7 /* instantiableStrStr */
            aload 8 /* instantiableAnyUnionUnion */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        76: .line 391
            aload 8 /* instantiableAnyUnionUnion */
            aload 2 /* instantiableTop */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        77: .line 392
            aload 8 /* instantiableAnyUnionUnion */
            aload 1 /* instantiableBottom */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        78: .line 393
            aload 8 /* instantiableAnyUnionUnion */
            aload 3 /* instantiableAnyNoArgs */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        79: .line 394
            aload 8 /* instantiableAnyUnionUnion */
            aload 4 /* instantiableAnyStr */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        80: .line 395
            aload 8 /* instantiableAnyUnionUnion */
            aload 5 /* instantiableAnyStrNum */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        81: .line 396
            aload 8 /* instantiableAnyUnionUnion */
            aload 6 /* instantiableStrNoArgs */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        82: .line 397
            aload 8 /* instantiableAnyUnionUnion */
            aload 7 /* instantiableStrStr */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        83: .line 399
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.INSTANTIABLE:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.array:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 11 /* arrInstantiableBottom */
        start local 11 // org.graalvm.polyglot.tck.TypeDescriptor arrInstantiableBottom
        84: .line 400
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            iconst_1
            iconst_1
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.BOOLEAN:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.instantiable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;Z[Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.array:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 12 /* arrInstantiableUnit */
        start local 12 // org.graalvm.polyglot.tck.TypeDescriptor arrInstantiableUnit
        85: .line 401
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.INSTANTIABLE_ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.array:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 13 /* arrInstantiableTop */
        start local 13 // org.graalvm.polyglot.tck.TypeDescriptor arrInstantiableTop
        86: .line 402
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.BOOLEAN:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.array:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 14 /* arrBoolean */
        start local 14 // org.graalvm.polyglot.tck.TypeDescriptor arrBoolean
        87: .line 403
            aload 11 /* arrInstantiableBottom */
            aload 12 /* arrInstantiableUnit */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        88: .line 404
            aload 11 /* arrInstantiableBottom */
            aload 13 /* arrInstantiableTop */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        89: .line 405
            aload 11 /* arrInstantiableBottom */
            aload 14 /* arrBoolean */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        90: .line 406
            aload 12 /* arrInstantiableUnit */
            aload 11 /* arrInstantiableBottom */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        91: .line 407
            aload 12 /* arrInstantiableUnit */
            aload 13 /* arrInstantiableTop */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        92: .line 408
            aload 12 /* arrInstantiableUnit */
            aload 14 /* arrBoolean */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        93: .line 409
            aload 13 /* arrInstantiableTop */
            aload 11 /* arrInstantiableBottom */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        94: .line 410
            aload 13 /* arrInstantiableTop */
            aload 12 /* arrInstantiableUnit */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        95: .line 411
            aload 13 /* arrInstantiableTop */
            aload 14 /* arrBoolean */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        96: .line 413
            iconst_2
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.INSTANTIABLE:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            iconst_1
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.OBJECT:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.union:([Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 15 /* uinstantiable1 */
        start local 15 // org.graalvm.polyglot.tck.TypeDescriptor uinstantiable1
        97: .line 414
            iconst_2
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            iconst_1
            iconst_1
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.BOOLEAN:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.instantiable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;Z[Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            iconst_1
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.STRING:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.union:([Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 16 /* uinstantiable2 */
        start local 16 // org.graalvm.polyglot.tck.TypeDescriptor uinstantiable2
        98: .line 415
            iconst_3
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            iconst_1
            iconst_1
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.BOOLEAN:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.instantiable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;Z[Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            iconst_1
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.STRING:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            iconst_2
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.OBJECT:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.union:([Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 17 /* uinstantiable3 */
        start local 17 // org.graalvm.polyglot.tck.TypeDescriptor uinstantiable3
        99: .line 416
            iconst_3
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.INSTANTIABLE_ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            iconst_1
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.STRING:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            iconst_2
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.OBJECT:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.union:([Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 18 /* uinstantiable4 */
        start local 18 // org.graalvm.polyglot.tck.TypeDescriptor uinstantiable4
       100: .line 417
            iconst_2
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.BOOLEAN:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            iconst_1
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.NUMBER:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.union:([Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 19 /* uprimitive */
        start local 19 // org.graalvm.polyglot.tck.TypeDescriptor uprimitive
       101: .line 418
            aload 15 /* uinstantiable1 */
            aload 16 /* uinstantiable2 */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
       102: .line 419
            aload 15 /* uinstantiable1 */
            aload 17 /* uinstantiable3 */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
       103: .line 420
            aload 15 /* uinstantiable1 */
            aload 19 /* uprimitive */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
       104: .line 421
            aload 15 /* uinstantiable1 */
            aload 18 /* uinstantiable4 */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
       105: .line 422
            aload 16 /* uinstantiable2 */
            aload 15 /* uinstantiable1 */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
       106: .line 423
            aload 16 /* uinstantiable2 */
            aload 17 /* uinstantiable3 */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
       107: .line 424
            aload 16 /* uinstantiable2 */
            aload 19 /* uprimitive */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
       108: .line 425
            aload 16 /* uinstantiable2 */
            aload 18 /* uinstantiable4 */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
       109: .line 426
            aload 17 /* uinstantiable3 */
            aload 15 /* uinstantiable1 */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
       110: .line 427
            aload 17 /* uinstantiable3 */
            aload 16 /* uinstantiable2 */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
       111: .line 428
            aload 17 /* uinstantiable3 */
            aload 19 /* uprimitive */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
       112: .line 429
            aload 17 /* uinstantiable3 */
            aload 18 /* uinstantiable4 */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
       113: .line 430
            aload 18 /* uinstantiable4 */
            aload 15 /* uinstantiable1 */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
       114: .line 431
            aload 18 /* uinstantiable4 */
            aload 16 /* uinstantiable2 */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
       115: .line 432
            aload 18 /* uinstantiable4 */
            aload 17 /* uinstantiable3 */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
       116: .line 433
            aload 18 /* uinstantiable4 */
            aload 19 /* uprimitive */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
       117: .line 435
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            iconst_0
            iconst_1
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.instantiable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;Z[Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 20 /* instantiableStrictAnyAny */
        start local 20 // org.graalvm.polyglot.tck.TypeDescriptor instantiableStrictAnyAny
       118: .line 436
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            iconst_1
            iconst_1
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.NUMBER:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.instantiable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;Z[Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 21 /* instantiableAnyNum */
        start local 21 // org.graalvm.polyglot.tck.TypeDescriptor instantiableAnyNum
       119: .line 437
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            iconst_1
            iconst_2
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.NUMBER:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            iconst_1
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.NUMBER:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.instantiable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;Z[Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 22 /* instantiableAnyNumNum */
        start local 22 // org.graalvm.polyglot.tck.TypeDescriptor instantiableAnyNumNum
       120: .line 438
            aload 21 /* instantiableAnyNum */
            aload 20 /* instantiableStrictAnyAny */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
       121: .line 439
            aload 22 /* instantiableAnyNumNum */
            aload 20 /* instantiableStrictAnyAny */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
       122: .line 440
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            iconst_0
            iconst_0
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.executable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;Z[Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 23 /* instantiableStrictAny */
        start local 23 // org.graalvm.polyglot.tck.TypeDescriptor instantiableStrictAny
       123: .line 441
            aload 21 /* instantiableAnyNum */
            aload 23 /* instantiableStrictAny */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
       124: .line 442
            return
        end local 23 // org.graalvm.polyglot.tck.TypeDescriptor instantiableStrictAny
        end local 22 // org.graalvm.polyglot.tck.TypeDescriptor instantiableAnyNumNum
        end local 21 // org.graalvm.polyglot.tck.TypeDescriptor instantiableAnyNum
        end local 20 // org.graalvm.polyglot.tck.TypeDescriptor instantiableStrictAnyAny
        end local 19 // org.graalvm.polyglot.tck.TypeDescriptor uprimitive
        end local 18 // org.graalvm.polyglot.tck.TypeDescriptor uinstantiable4
        end local 17 // org.graalvm.polyglot.tck.TypeDescriptor uinstantiable3
        end local 16 // org.graalvm.polyglot.tck.TypeDescriptor uinstantiable2
        end local 15 // org.graalvm.polyglot.tck.TypeDescriptor uinstantiable1
        end local 14 // org.graalvm.polyglot.tck.TypeDescriptor arrBoolean
        end local 13 // org.graalvm.polyglot.tck.TypeDescriptor arrInstantiableTop
        end local 12 // org.graalvm.polyglot.tck.TypeDescriptor arrInstantiableUnit
        end local 11 // org.graalvm.polyglot.tck.TypeDescriptor arrInstantiableBottom
        end local 10 // java.util.List otherTypes
        end local 9 // java.util.List instantiables
        end local 8 // org.graalvm.polyglot.tck.TypeDescriptor instantiableAnyUnionUnion
        end local 7 // org.graalvm.polyglot.tck.TypeDescriptor instantiableStrStr
        end local 6 // org.graalvm.polyglot.tck.TypeDescriptor instantiableStrNoArgs
        end local 5 // org.graalvm.polyglot.tck.TypeDescriptor instantiableAnyStrNum
        end local 4 // org.graalvm.polyglot.tck.TypeDescriptor instantiableAnyStr
        end local 3 // org.graalvm.polyglot.tck.TypeDescriptor instantiableAnyNoArgs
        end local 2 // org.graalvm.polyglot.tck.TypeDescriptor instantiableTop
        end local 1 // org.graalvm.polyglot.tck.TypeDescriptor instantiableBottom
        end local 0 // com.oracle.truffle.tck.tests.TypeDescriptorTest this
      LocalVariableTable:
        Start  End  Slot                       Name  Signature
            0  125     0                       this  Lcom/oracle/truffle/tck/tests/TypeDescriptorTest;
            1  125     1         instantiableBottom  Lorg/graalvm/polyglot/tck/TypeDescriptor;
            2  125     2            instantiableTop  Lorg/graalvm/polyglot/tck/TypeDescriptor;
            3  125     3      instantiableAnyNoArgs  Lorg/graalvm/polyglot/tck/TypeDescriptor;
            4  125     4         instantiableAnyStr  Lorg/graalvm/polyglot/tck/TypeDescriptor;
            5  125     5      instantiableAnyStrNum  Lorg/graalvm/polyglot/tck/TypeDescriptor;
            6  125     6      instantiableStrNoArgs  Lorg/graalvm/polyglot/tck/TypeDescriptor;
            7  125     7         instantiableStrStr  Lorg/graalvm/polyglot/tck/TypeDescriptor;
           10  125     8  instantiableAnyUnionUnion  Lorg/graalvm/polyglot/tck/TypeDescriptor;
           11  125     9              instantiables  Ljava/util/List<Lorg/graalvm/polyglot/tck/TypeDescriptor;>;
           13  125    10                 otherTypes  Ljava/util/List<Lorg/graalvm/polyglot/tck/TypeDescriptor;>;
           20   25    11                         td  Lorg/graalvm/polyglot/tck/TypeDescriptor;
           22   24    13               instantiable  Lorg/graalvm/polyglot/tck/TypeDescriptor;
           84  125    11      arrInstantiableBottom  Lorg/graalvm/polyglot/tck/TypeDescriptor;
           85  125    12        arrInstantiableUnit  Lorg/graalvm/polyglot/tck/TypeDescriptor;
           86  125    13         arrInstantiableTop  Lorg/graalvm/polyglot/tck/TypeDescriptor;
           87  125    14                 arrBoolean  Lorg/graalvm/polyglot/tck/TypeDescriptor;
           97  125    15             uinstantiable1  Lorg/graalvm/polyglot/tck/TypeDescriptor;
           98  125    16             uinstantiable2  Lorg/graalvm/polyglot/tck/TypeDescriptor;
           99  125    17             uinstantiable3  Lorg/graalvm/polyglot/tck/TypeDescriptor;
          100  125    18             uinstantiable4  Lorg/graalvm/polyglot/tck/TypeDescriptor;
          101  125    19                 uprimitive  Lorg/graalvm/polyglot/tck/TypeDescriptor;
          118  125    20   instantiableStrictAnyAny  Lorg/graalvm/polyglot/tck/TypeDescriptor;
          119  125    21         instantiableAnyNum  Lorg/graalvm/polyglot/tck/TypeDescriptor;
          120  125    22      instantiableAnyNumNum  Lorg/graalvm/polyglot/tck/TypeDescriptor;
          123  125    23      instantiableStrictAny  Lorg/graalvm/polyglot/tck/TypeDescriptor;
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void testAny();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=6, args_size=1
        start local 0 // com.oracle.truffle.tck.tests.TypeDescriptorTest this
         0: .line 446
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.ARRAY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.array:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
         1: .line 447
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.array:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.ARRAY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
         2: .line 448
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.EXECUTABLE:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
         3: .line 449
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.EXECUTABLE:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
         4: .line 450
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            iconst_0
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.executable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;[Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
         5: .line 451
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            iconst_0
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.executable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;[Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
         6: .line 452
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            iconst_2
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.STRING:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            iconst_1
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.NUMBER:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.executable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;[Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
         7: .line 453
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.EXECUTABLE:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            iconst_0
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.executable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;[Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
         8: .line 454
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            iconst_0
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.executable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;[Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.EXECUTABLE:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
         9: .line 455
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.INSTANTIABLE:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        10: .line 456
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.INSTANTIABLE:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        11: .line 457
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            iconst_1
            iconst_0
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.instantiable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;Z[Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        12: .line 458
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            iconst_1
            iconst_0
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.instantiable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;Z[Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        13: .line 459
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            iconst_1
            iconst_2
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.STRING:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            iconst_1
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.NUMBER:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.instantiable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;Z[Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        14: .line 460
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.INSTANTIABLE:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            iconst_1
            iconst_0
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.instantiable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;Z[Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        15: .line 461
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            iconst_1
            iconst_0
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.instantiable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;Z[Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.INSTANTIABLE:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        16: .line 463
            getstatic com.oracle.truffle.tck.tests.TypeDescriptorTest.PREDEFINED:[Lorg/graalvm/polyglot/tck/TypeDescriptor;
            dup
            astore 4
            arraylength
            istore 3
            iconst_0
            istore 2
            goto 21
      StackMap locals: com.oracle.truffle.tck.tests.TypeDescriptorTest top int int org.graalvm.polyglot.tck.TypeDescriptor[]
      StackMap stack:
        17: aload 4
            iload 2
            aaload
            astore 1 /* td */
        start local 1 // org.graalvm.polyglot.tck.TypeDescriptor td
        18: .line 464
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aload 1 /* td */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        19: .line 465
            aload 1 /* td */
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        end local 1 // org.graalvm.polyglot.tck.TypeDescriptor td
        20: .line 463
            iinc 2 1
      StackMap locals:
      StackMap stack:
        21: iload 2
            iload 3
            if_icmplt 17
        22: .line 467
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        23: .line 468
            getstatic com.oracle.truffle.tck.tests.TypeDescriptorTest.PREDEFINED:[Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.union:([Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 1 /* union */
        start local 1 // org.graalvm.polyglot.tck.TypeDescriptor union
        24: .line 469
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aload 1 /* union */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        25: .line 470
            aload 1 /* union */
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        26: .line 471
            iconst_2
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
            aload 1 /* union */
            aastore
            dup
            iconst_1
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.union:([Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 2 /* unionWithAny */
        start local 2 // org.graalvm.polyglot.tck.TypeDescriptor unionWithAny
        27: .line 472
            aload 2 /* unionWithAny */
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        28: .line 473
            getstatic com.oracle.truffle.tck.tests.TypeDescriptorTest.PREDEFINED:[Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.intersection:([Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 3 /* intersection */
        start local 3 // org.graalvm.polyglot.tck.TypeDescriptor intersection
        29: .line 474
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aload 3 /* intersection */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        30: .line 475
            aload 3 /* intersection */
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        31: .line 476
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.NUMBER:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.array:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 4 /* arrayNum */
        start local 4 // org.graalvm.polyglot.tck.TypeDescriptor arrayNum
        32: .line 477
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.array:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 5 /* arrayAny */
        start local 5 // org.graalvm.polyglot.tck.TypeDescriptor arrayAny
        33: .line 478
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aload 4 /* arrayNum */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        34: .line 479
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aload 5 /* arrayAny */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        35: .line 480
            aload 4 /* arrayNum */
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        36: .line 481
            aload 5 /* arrayAny */
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        37: .line 482
            aload 5 /* arrayAny */
            aload 4 /* arrayNum */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        38: .line 483
            aload 4 /* arrayNum */
            aload 5 /* arrayAny */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        39: .line 484
            return
        end local 5 // org.graalvm.polyglot.tck.TypeDescriptor arrayAny
        end local 4 // org.graalvm.polyglot.tck.TypeDescriptor arrayNum
        end local 3 // org.graalvm.polyglot.tck.TypeDescriptor intersection
        end local 2 // org.graalvm.polyglot.tck.TypeDescriptor unionWithAny
        end local 1 // org.graalvm.polyglot.tck.TypeDescriptor union
        end local 0 // com.oracle.truffle.tck.tests.TypeDescriptorTest this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   40     0          this  Lcom/oracle/truffle/tck/tests/TypeDescriptorTest;
           18   20     1            td  Lorg/graalvm/polyglot/tck/TypeDescriptor;
           24   40     1         union  Lorg/graalvm/polyglot/tck/TypeDescriptor;
           27   40     2  unionWithAny  Lorg/graalvm/polyglot/tck/TypeDescriptor;
           29   40     3  intersection  Lorg/graalvm/polyglot/tck/TypeDescriptor;
           32   40     4      arrayNum  Lorg/graalvm/polyglot/tck/TypeDescriptor;
           33   40     5      arrayAny  Lorg/graalvm/polyglot/tck/TypeDescriptor;
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void testIntersection();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=14, args_size=1
        start local 0 // com.oracle.truffle.tck.tests.TypeDescriptorTest this
         0: .line 488
            iconst_2
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.STRING:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            iconst_1
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.OBJECT:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.intersection:([Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 1 /* strAndObj */
        start local 1 // org.graalvm.polyglot.tck.TypeDescriptor strAndObj
         1: .line 489
            iconst_2
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.STRING:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            iconst_1
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.NUMBER:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.intersection:([Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 2 /* strAndNum */
        start local 2 // org.graalvm.polyglot.tck.TypeDescriptor strAndNum
         2: .line 490
            iconst_2
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
            aload 1 /* strAndObj */
            aastore
            dup
            iconst_1
            aload 2 /* strAndNum */
            aastore
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.intersection:([Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 3 /* strAndNumAndObj */
        start local 3 // org.graalvm.polyglot.tck.TypeDescriptor strAndNumAndObj
         3: .line 492
            aload 1 /* strAndObj */
            aload 1 /* strAndObj */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
         4: .line 493
            aload 1 /* strAndObj */
            aload 2 /* strAndNum */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
         5: .line 494
            aload 1 /* strAndObj */
            aload 3 /* strAndNumAndObj */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
         6: .line 495
            aload 2 /* strAndNum */
            aload 2 /* strAndNum */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
         7: .line 496
            aload 2 /* strAndNum */
            aload 1 /* strAndObj */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
         8: .line 497
            aload 2 /* strAndNum */
            aload 3 /* strAndNumAndObj */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
         9: .line 498
            aload 3 /* strAndNumAndObj */
            aload 3 /* strAndNumAndObj */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        10: .line 499
            aload 3 /* strAndNumAndObj */
            aload 2 /* strAndNum */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        11: .line 500
            aload 3 /* strAndNumAndObj */
            aload 1 /* strAndObj */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        12: .line 502
            getstatic com.oracle.truffle.tck.tests.TypeDescriptorTest.PREDEFINED:[Lorg/graalvm/polyglot/tck/TypeDescriptor;
            dup
            astore 7
            arraylength
            istore 6
            iconst_0
            istore 5
            goto 18
      StackMap locals: com.oracle.truffle.tck.tests.TypeDescriptorTest org.graalvm.polyglot.tck.TypeDescriptor org.graalvm.polyglot.tck.TypeDescriptor org.graalvm.polyglot.tck.TypeDescriptor top int int org.graalvm.polyglot.tck.TypeDescriptor[]
      StackMap stack:
        13: aload 7
            iload 5
            aaload
            astore 4 /* predefined */
        start local 4 // org.graalvm.polyglot.tck.TypeDescriptor predefined
        14: .line 503
            aload 2 /* strAndNum */
            aload 4 /* predefined */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        15: .line 504
            aload 1 /* strAndObj */
            aload 4 /* predefined */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        16: .line 505
            aload 3 /* strAndNumAndObj */
            aload 4 /* predefined */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        end local 4 // org.graalvm.polyglot.tck.TypeDescriptor predefined
        17: .line 502
            iinc 5 1
      StackMap locals:
      StackMap stack:
        18: iload 5
            iload 6
            if_icmplt 13
        19: .line 507
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.ARRAY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aload 2 /* strAndNum */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        20: .line 508
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.ARRAY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aload 1 /* strAndObj */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        21: .line 509
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.ARRAY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aload 3 /* strAndNumAndObj */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        22: .line 510
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.BOOLEAN:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aload 2 /* strAndNum */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        23: .line 511
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.BOOLEAN:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aload 1 /* strAndObj */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        24: .line 512
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.BOOLEAN:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aload 3 /* strAndNumAndObj */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        25: .line 513
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.HOST_OBJECT:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aload 2 /* strAndNum */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        26: .line 514
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.HOST_OBJECT:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aload 1 /* strAndObj */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        27: .line 515
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.HOST_OBJECT:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aload 3 /* strAndNumAndObj */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        28: .line 516
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.NATIVE_POINTER:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aload 2 /* strAndNum */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        29: .line 517
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.NATIVE_POINTER:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aload 1 /* strAndObj */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        30: .line 518
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.NATIVE_POINTER:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aload 3 /* strAndNumAndObj */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        31: .line 519
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.NULL:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aload 2 /* strAndNum */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        32: .line 520
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.NULL:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aload 1 /* strAndObj */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        33: .line 521
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.NULL:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aload 3 /* strAndNumAndObj */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        34: .line 522
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.NUMBER:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aload 2 /* strAndNum */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        35: .line 523
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.NUMBER:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aload 1 /* strAndObj */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        36: .line 524
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.NUMBER:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aload 3 /* strAndNumAndObj */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        37: .line 525
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.OBJECT:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aload 2 /* strAndNum */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        38: .line 526
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.OBJECT:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aload 1 /* strAndObj */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        39: .line 527
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.OBJECT:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aload 3 /* strAndNumAndObj */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        40: .line 528
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.STRING:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aload 2 /* strAndNum */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        41: .line 529
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.STRING:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aload 1 /* strAndObj */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        42: .line 530
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.STRING:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aload 3 /* strAndNumAndObj */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        43: .line 532
            iconst_2
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.BOOLEAN:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            iconst_1
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.NUMBER:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.union:([Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 4 /* boolOrNum */
        start local 4 // org.graalvm.polyglot.tck.TypeDescriptor boolOrNum
        44: .line 533
            iconst_2
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.STRING:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            iconst_1
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.NUMBER:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.union:([Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 5 /* strOrNum */
        start local 5 // org.graalvm.polyglot.tck.TypeDescriptor strOrNum
        45: .line 534
            aload 2 /* strAndNum */
            aload 4 /* boolOrNum */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        46: .line 535
            aload 2 /* strAndNum */
            aload 5 /* strOrNum */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        47: .line 536
            aload 4 /* boolOrNum */
            aload 2 /* strAndNum */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        48: .line 537
            aload 5 /* strOrNum */
            aload 2 /* strAndNum */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        49: .line 539
            iconst_2
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
            aload 4 /* boolOrNum */
            aastore
            dup
            iconst_1
            aload 5 /* strOrNum */
            aastore
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.intersection:([Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 6 /* product */
        start local 6 // org.graalvm.polyglot.tck.TypeDescriptor product
        50: .line 541
            aload 6 /* product */
            iconst_4
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
        51: .line 542
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.NUMBER:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            iconst_1
            iconst_2
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
        52: .line 543
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.BOOLEAN:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            iconst_1
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.NUMBER:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.intersection:([Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            iconst_2
            iconst_2
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
        53: .line 544
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.BOOLEAN:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            iconst_1
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.STRING:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.intersection:([Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            iconst_3
            iconst_2
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
        54: .line 545
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.NUMBER:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            iconst_1
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.STRING:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.intersection:([Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
        55: .line 541
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.union:([Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.equals:(Ljava/lang/Object;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        56: .line 546
            aload 6 /* product */
            aload 2 /* strAndNum */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        57: .line 547
            aload 6 /* product */
            aload 1 /* strAndObj */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        58: .line 548
            aload 6 /* product */
            aload 3 /* strAndNumAndObj */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        59: .line 549
            aload 2 /* strAndNum */
            aload 6 /* product */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        60: .line 550
            aload 1 /* strAndObj */
            aload 6 /* product */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        61: .line 551
            aload 3 /* strAndNumAndObj */
            aload 6 /* product */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        62: .line 553
            iconst_2
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
        63: .line 554
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.NUMBER:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            iconst_1
        64: .line 555
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.NUMBER:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.array:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
        65: .line 553
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.intersection:([Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 7 /* numAndArrNum */
        start local 7 // org.graalvm.polyglot.tck.TypeDescriptor numAndArrNum
        66: .line 556
            aload 7 /* numAndArrNum */
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.NUMBER:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        67: .line 557
            aload 7 /* numAndArrNum */
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.NUMBER:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.array:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        68: .line 558
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.NUMBER:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aload 7 /* numAndArrNum */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        69: .line 559
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.NUMBER:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.array:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aload 7 /* numAndArrNum */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        70: .line 560
            iconst_2
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.NUMBER:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.array:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            iconst_1
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.OBJECT:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.union:([Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aload 7 /* numAndArrNum */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        71: .line 562
            iconst_2
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
        72: .line 563
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.ARRAY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            iconst_1
        73: .line 564
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.NUMBER:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.array:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
        74: .line 562
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.intersection:([Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 8 /* arrAndArrNum */
        start local 8 // org.graalvm.polyglot.tck.TypeDescriptor arrAndArrNum
        75: .line 565
            aload 8 /* arrAndArrNum */
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.ARRAY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        76: .line 566
            aload 8 /* arrAndArrNum */
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.NUMBER:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.array:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        77: .line 567
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.ARRAY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aload 8 /* arrAndArrNum */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        78: .line 568
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.NUMBER:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.array:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aload 8 /* arrAndArrNum */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        79: .line 569
            iconst_2
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.NUMBER:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            iconst_1
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.STRING:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.intersection:([Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 9 /* numAndStr */
        start local 9 // org.graalvm.polyglot.tck.TypeDescriptor numAndStr
        80: .line 570
            iconst_3
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.NUMBER:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            iconst_1
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.STRING:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            iconst_2
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.BOOLEAN:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.intersection:([Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 10 /* numAndStrAndBool */
        start local 10 // org.graalvm.polyglot.tck.TypeDescriptor numAndStrAndBool
        81: .line 571
            iconst_3
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.NUMBER:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            iconst_1
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.STRING:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            iconst_2
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.OBJECT:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.intersection:([Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 11 /* numAndStrAndObj */
        start local 11 // org.graalvm.polyglot.tck.TypeDescriptor numAndStrAndObj
        82: .line 572
            aload 9 /* numAndStr */
            iconst_2
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
            aload 10 /* numAndStrAndBool */
            aastore
            dup
            iconst_1
            aload 11 /* numAndStrAndObj */
            aastore
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.union:([Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        83: .line 574
            iconst_2
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
        84: .line 575
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.HOST_OBJECT:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            iconst_0
            iconst_0
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.instantiable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;Z[Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            iconst_1
        85: .line 576
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.HOST_OBJECT:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
        86: .line 574
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.intersection:([Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 12 /* instantiableAndHostObject */
        start local 12 // org.graalvm.polyglot.tck.TypeDescriptor instantiableAndHostObject
        87: .line 577
            iconst_3
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
            iconst_2
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
        88: .line 578
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.HOST_OBJECT:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            iconst_1
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.OBJECT:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.intersection:([Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            iconst_0
            iconst_0
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.instantiable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;Z[Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            iconst_1
        89: .line 579
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.HOST_OBJECT:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            iconst_2
        90: .line 580
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.OBJECT:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
        91: .line 577
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.intersection:([Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 13 /* instantiableAndHostObjectAndObject */
        start local 13 // org.graalvm.polyglot.tck.TypeDescriptor instantiableAndHostObjectAndObject
        92: .line 581
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.INSTANTIABLE_ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aload 12 /* instantiableAndHostObject */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        93: .line 582
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.INSTANTIABLE_ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aload 13 /* instantiableAndHostObjectAndObject */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        94: .line 583
            aload 12 /* instantiableAndHostObject */
            aload 13 /* instantiableAndHostObjectAndObject */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        95: .line 584
            aload 13 /* instantiableAndHostObjectAndObject */
            aload 12 /* instantiableAndHostObject */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        96: .line 585
            return
        end local 13 // org.graalvm.polyglot.tck.TypeDescriptor instantiableAndHostObjectAndObject
        end local 12 // org.graalvm.polyglot.tck.TypeDescriptor instantiableAndHostObject
        end local 11 // org.graalvm.polyglot.tck.TypeDescriptor numAndStrAndObj
        end local 10 // org.graalvm.polyglot.tck.TypeDescriptor numAndStrAndBool
        end local 9 // org.graalvm.polyglot.tck.TypeDescriptor numAndStr
        end local 8 // org.graalvm.polyglot.tck.TypeDescriptor arrAndArrNum
        end local 7 // org.graalvm.polyglot.tck.TypeDescriptor numAndArrNum
        end local 6 // org.graalvm.polyglot.tck.TypeDescriptor product
        end local 5 // org.graalvm.polyglot.tck.TypeDescriptor strOrNum
        end local 4 // org.graalvm.polyglot.tck.TypeDescriptor boolOrNum
        end local 3 // org.graalvm.polyglot.tck.TypeDescriptor strAndNumAndObj
        end local 2 // org.graalvm.polyglot.tck.TypeDescriptor strAndNum
        end local 1 // org.graalvm.polyglot.tck.TypeDescriptor strAndObj
        end local 0 // com.oracle.truffle.tck.tests.TypeDescriptorTest this
      LocalVariableTable:
        Start  End  Slot                                Name  Signature
            0   97     0                                this  Lcom/oracle/truffle/tck/tests/TypeDescriptorTest;
            1   97     1                           strAndObj  Lorg/graalvm/polyglot/tck/TypeDescriptor;
            2   97     2                           strAndNum  Lorg/graalvm/polyglot/tck/TypeDescriptor;
            3   97     3                     strAndNumAndObj  Lorg/graalvm/polyglot/tck/TypeDescriptor;
           14   17     4                          predefined  Lorg/graalvm/polyglot/tck/TypeDescriptor;
           44   97     4                           boolOrNum  Lorg/graalvm/polyglot/tck/TypeDescriptor;
           45   97     5                            strOrNum  Lorg/graalvm/polyglot/tck/TypeDescriptor;
           50   97     6                             product  Lorg/graalvm/polyglot/tck/TypeDescriptor;
           66   97     7                        numAndArrNum  Lorg/graalvm/polyglot/tck/TypeDescriptor;
           75   97     8                        arrAndArrNum  Lorg/graalvm/polyglot/tck/TypeDescriptor;
           80   97     9                           numAndStr  Lorg/graalvm/polyglot/tck/TypeDescriptor;
           81   97    10                    numAndStrAndBool  Lorg/graalvm/polyglot/tck/TypeDescriptor;
           82   97    11                     numAndStrAndObj  Lorg/graalvm/polyglot/tck/TypeDescriptor;
           87   97    12           instantiableAndHostObject  Lorg/graalvm/polyglot/tck/TypeDescriptor;
           92   97    13  instantiableAndHostObjectAndObject  Lorg/graalvm/polyglot/tck/TypeDescriptor;
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void testUnionBothExecutables();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=1
        start local 0 // com.oracle.truffle.tck.tests.TypeDescriptorTest this
         0: .line 589
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.EXECUTABLE_ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.EXECUTABLE:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
         1: .line 590
            iconst_2
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.OBJECT:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            iconst_1
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.EXECUTABLE_ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.union:([Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 1 /* objOrExecUp */
        start local 1 // org.graalvm.polyglot.tck.TypeDescriptor objOrExecUp
         2: .line 591
            iconst_2
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.OBJECT:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            iconst_1
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.EXECUTABLE:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.union:([Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 2 /* objOrExecLow */
        start local 2 // org.graalvm.polyglot.tck.TypeDescriptor objOrExecLow
         3: .line 592
            aload 1 /* objOrExecUp */
            aload 2 /* objOrExecLow */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
         4: .line 593
            iconst_3
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.OBJECT:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            iconst_1
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.EXECUTABLE_ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            iconst_2
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.EXECUTABLE:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.union:([Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 3 /* objOrExecUpOrExecLow */
        start local 3 // org.graalvm.polyglot.tck.TypeDescriptor objOrExecUpOrExecLow
         5: .line 594
            aload 1 /* objOrExecUp */
            aload 3 /* objOrExecUpOrExecLow */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
         6: .line 595
            return
        end local 3 // org.graalvm.polyglot.tck.TypeDescriptor objOrExecUpOrExecLow
        end local 2 // org.graalvm.polyglot.tck.TypeDescriptor objOrExecLow
        end local 1 // org.graalvm.polyglot.tck.TypeDescriptor objOrExecUp
        end local 0 // com.oracle.truffle.tck.tests.TypeDescriptorTest this
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0    7     0                  this  Lcom/oracle/truffle/tck/tests/TypeDescriptorTest;
            2    7     1           objOrExecUp  Lorg/graalvm/polyglot/tck/TypeDescriptor;
            3    7     2          objOrExecLow  Lorg/graalvm/polyglot/tck/TypeDescriptor;
            5    7     3  objOrExecUpOrExecLow  Lorg/graalvm/polyglot/tck/TypeDescriptor;
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void testInstantiablesWithExecutables();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=3, args_size=1
        start local 0 // com.oracle.truffle.tck.tests.TypeDescriptorTest this
         0: .line 599
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.EXECUTABLE_ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.INSTANTIABLE:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
         1: .line 600
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.EXECUTABLE_ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.INSTANTIABLE_ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
         2: .line 601
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.EXECUTABLE:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.INSTANTIABLE:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
         3: .line 602
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.EXECUTABLE:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.INSTANTIABLE_ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
         4: .line 603
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.INSTANTIABLE_ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.EXECUTABLE:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
         5: .line 604
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.INSTANTIABLE_ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.EXECUTABLE_ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
         6: .line 605
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.INSTANTIABLE:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.EXECUTABLE:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
         7: .line 606
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.INSTANTIABLE:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.EXECUTABLE_ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
         8: .line 607
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.OBJECT:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            iconst_1
            iconst_1
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.STRING:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.executable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;Z[Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 1 /* executable */
        start local 1 // org.graalvm.polyglot.tck.TypeDescriptor executable
         9: .line 608
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.OBJECT:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            iconst_1
            iconst_1
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.STRING:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.instantiable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;Z[Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            astore 2 /* instantiable */
        start local 2 // org.graalvm.polyglot.tck.TypeDescriptor instantiable
        10: .line 609
            aload 1 /* executable */
            aload 2 /* instantiable */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        11: .line 610
            aload 2 /* instantiable */
            aload 1 /* executable */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        12: .line 611
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.EXECUTABLE_ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aload 2 /* instantiable */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        13: .line 612
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.INSTANTIABLE_ANY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aload 1 /* executable */
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertFalse:(Z)V
        14: .line 613
            return
        end local 2 // org.graalvm.polyglot.tck.TypeDescriptor instantiable
        end local 1 // org.graalvm.polyglot.tck.TypeDescriptor executable
        end local 0 // com.oracle.truffle.tck.tests.TypeDescriptorTest this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   15     0          this  Lcom/oracle/truffle/tck/tests/TypeDescriptorTest;
            9   15     1    executable  Lorg/graalvm/polyglot/tck/TypeDescriptor;
           10   15     2  instantiable  Lorg/graalvm/polyglot/tck/TypeDescriptor;
    RuntimeVisibleAnnotations: 
      org.junit.Test()

  public void testForValue();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=1
        start local 0 // com.oracle.truffle.tck.tests.TypeDescriptorTest this
         0: .line 617
            aconst_null
            astore 1
            aconst_null
            astore 2
         1: iconst_0
            anewarray java.lang.String
            invokestatic org.graalvm.polyglot.Context.newBuilder:([Ljava/lang/String;)Lorg/graalvm/polyglot/Context$Builder;
            iconst_1
            invokevirtual org.graalvm.polyglot.Context$Builder.allowAllAccess:(Z)Lorg/graalvm/polyglot/Context$Builder;
            invokevirtual org.graalvm.polyglot.Context$Builder.build:()Lorg/graalvm/polyglot/Context;
            astore 3 /* ctx */
        start local 3 // org.graalvm.polyglot.Context ctx
         2: .line 618
            aload 3 /* ctx */
            iconst_1
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            invokevirtual org.graalvm.polyglot.Context.asValue:(Ljava/lang/Object;)Lorg/graalvm/polyglot/Value;
            astore 4 /* v */
        start local 4 // org.graalvm.polyglot.Value v
         3: .line 619
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.NUMBER:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aload 4 /* v */
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.forValue:(Lorg/graalvm/polyglot/Value;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
         4: .line 620
            aload 3 /* ctx */
            iconst_1
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            invokevirtual org.graalvm.polyglot.Context.asValue:(Ljava/lang/Object;)Lorg/graalvm/polyglot/Value;
            astore 4 /* v */
         5: .line 621
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.BOOLEAN:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aload 4 /* v */
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.forValue:(Lorg/graalvm/polyglot/Value;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
         6: .line 622
            aload 3 /* ctx */
            ldc "a"
            invokevirtual org.graalvm.polyglot.Context.asValue:(Ljava/lang/Object;)Lorg/graalvm/polyglot/Value;
            astore 4 /* v */
         7: .line 623
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.STRING:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aload 4 /* v */
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.forValue:(Lorg/graalvm/polyglot/Value;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
         8: .line 624
            aload 3 /* ctx */
            aconst_null
            invokevirtual org.graalvm.polyglot.Context.asValue:(Ljava/lang/Object;)Lorg/graalvm/polyglot/Value;
            astore 4 /* v */
         9: .line 625
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.NULL:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aload 4 /* v */
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.forValue:(Lorg/graalvm/polyglot/Value;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        10: .line 626
            aload 3 /* ctx */
            ldc "key"
            ldc "value"
            invokestatic java.util.Collections.singletonMap:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/util/Map;
            invokestatic org.graalvm.polyglot.proxy.ProxyObject.fromMap:(Ljava/util/Map;)Lorg/graalvm/polyglot/proxy/ProxyObject;
            invokevirtual org.graalvm.polyglot.Context.asValue:(Ljava/lang/Object;)Lorg/graalvm/polyglot/Value;
            astore 4 /* v */
        11: .line 627
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.OBJECT:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aload 4 /* v */
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.forValue:(Lorg/graalvm/polyglot/Value;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        12: .line 628
            aload 3 /* ctx */
            new com.oracle.truffle.tck.tests.TypeDescriptorTest$1
            dup
            aload 0 /* this */
            invokespecial com.oracle.truffle.tck.tests.TypeDescriptorTest$1.<init>:(Lcom/oracle/truffle/tck/tests/TypeDescriptorTest;)V
            invokevirtual org.graalvm.polyglot.Context.asValue:(Ljava/lang/Object;)Lorg/graalvm/polyglot/Value;
            astore 4 /* v */
        13: .line 634
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.EXECUTABLE:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aload 4 /* v */
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.forValue:(Lorg/graalvm/polyglot/Value;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        14: .line 635
            aload 3 /* ctx */
            ldc Ljava/lang/Object;
            invokevirtual org.graalvm.polyglot.Context.asValue:(Ljava/lang/Object;)Lorg/graalvm/polyglot/Value;
            astore 4 /* v */
        15: .line 636
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.INSTANTIABLE:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aload 4 /* v */
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.forValue:(Lorg/graalvm/polyglot/Value;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        16: .line 637
            aload 3 /* ctx */
            new java.lang.Object
            dup
            invokespecial java.lang.Object.<init>:()V
            invokevirtual org.graalvm.polyglot.Context.asValue:(Ljava/lang/Object;)Lorg/graalvm/polyglot/Value;
            astore 4 /* v */
        17: .line 638
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.HOST_OBJECT:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aload 4 /* v */
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.forValue:(Lorg/graalvm/polyglot/Value;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        18: .line 639
            aload 3 /* ctx */
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            iconst_1
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            invokestatic org.graalvm.polyglot.proxy.ProxyArray.fromArray:([Ljava/lang/Object;)Lorg/graalvm/polyglot/proxy/ProxyArray;
            invokevirtual org.graalvm.polyglot.Context.asValue:(Ljava/lang/Object;)Lorg/graalvm/polyglot/Value;
            astore 4 /* v */
        19: .line 640
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.NUMBER:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.array:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aload 4 /* v */
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.forValue:(Lorg/graalvm/polyglot/Value;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        20: .line 641
            aload 3 /* ctx */
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            iconst_1
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            aastore
            invokestatic org.graalvm.polyglot.proxy.ProxyArray.fromArray:([Ljava/lang/Object;)Lorg/graalvm/polyglot/proxy/ProxyArray;
            invokevirtual org.graalvm.polyglot.Context.asValue:(Ljava/lang/Object;)Lorg/graalvm/polyglot/Value;
            astore 4 /* v */
        21: .line 642
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.BOOLEAN:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.array:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aload 4 /* v */
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.forValue:(Lorg/graalvm/polyglot/Value;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        22: .line 643
            aload 3 /* ctx */
            iconst_3
            anewarray java.lang.Object
            dup
            iconst_0
            iconst_1
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_1
            iconst_1
            invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
            aastore
            dup
            iconst_2
            ldc "value"
            aastore
            invokestatic org.graalvm.polyglot.proxy.ProxyArray.fromArray:([Ljava/lang/Object;)Lorg/graalvm/polyglot/proxy/ProxyArray;
            invokevirtual org.graalvm.polyglot.Context.asValue:(Ljava/lang/Object;)Lorg/graalvm/polyglot/Value;
            astore 4 /* v */
        23: .line 644
            iconst_3
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.NUMBER:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            iconst_1
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.BOOLEAN:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            iconst_2
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.STRING:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.union:([Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.array:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aload 4 /* v */
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.forValue:(Lorg/graalvm/polyglot/Value;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
            invokestatic org.junit.Assert.assertTrue:(Z)V
        24: .line 645
            aload 3 /* ctx */
            iconst_0
            anewarray java.lang.Object
            invokestatic org.graalvm.polyglot.proxy.ProxyArray.fromArray:([Ljava/lang/Object;)Lorg/graalvm/polyglot/proxy/ProxyArray;
            invokevirtual org.graalvm.polyglot.Context.asValue:(Ljava/lang/Object;)Lorg/graalvm/polyglot/Value;
            astore 4 /* v */
        25: .line 646
            bipush 10
            anewarray org.graalvm.polyglot.tck.TypeDescriptor
            dup
            iconst_0
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.NULL:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            iconst_1
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.BOOLEAN:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            iconst_2
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.NUMBER:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            iconst_3
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.STRING:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            iconst_4
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.HOST_OBJECT:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            iconst_5
        26: .line 647
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.NATIVE_POINTER:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            bipush 6
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.OBJECT:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            bipush 7
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.ARRAY:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            bipush 8
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.EXECUTABLE:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
            dup
            bipush 9
            getstatic org.graalvm.polyglot.tck.TypeDescriptor.INSTANTIABLE:Lorg/graalvm/polyglot/tck/TypeDescriptor;
            aastore
        27: .line 646
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.intersection:([Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.array:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
        28: .line 648
            aload 4 /* v */
            invokestatic org.graalvm.polyglot.tck.TypeDescriptor.forValue:(Lorg/graalvm/polyglot/Value;)Lorg/graalvm/polyglot/tck/TypeDescriptor;
        29: .line 647
            invokevirtual org.graalvm.polyglot.tck.TypeDescriptor.isAssignable:(Lorg/graalvm/polyglot/tck/TypeDescriptor;)Z
        30: .line 646
            invokestatic org.junit.Assert.assertTrue:(Z)V
        end local 4 // org.graalvm.polyglot.Value v
        31: .line 649
            aload 3 /* ctx */
            ifnull 37
            aload 3 /* ctx */
            invokevirtual org.graalvm.polyglot.Context.close:()V
            goto 37
      StackMap locals: com.oracle.truffle.tck.tests.TypeDescriptorTest java.lang.Throwable java.lang.Throwable org.graalvm.polyglot.Context
      StackMap stack: java.lang.Throwable
        32: astore 1
            aload 3 /* ctx */
            ifnull 33
            aload 3 /* ctx */
            invokevirtual org.graalvm.polyglot.Context.close:()V
        end local 3 // org.graalvm.polyglot.Context ctx
      StackMap locals:
      StackMap stack:
        33: aload 1
            athrow
      StackMap locals:
      StackMap stack: java.lang.Throwable
        34: astore 2
            aload 1
            ifnonnull 35
            aload 2
            astore 1
            goto 36
      StackMap locals:
      StackMap stack:
        35: aload 1
            aload 2
            if_acmpeq 36
            aload 1
            aload 2
            invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
      StackMap locals:
      StackMap stack:
        36: aload 1
            athrow
        37: .line 650
      StackMap locals:
      StackMap stack:
            return
        end local 0 // com.oracle.truffle.tck.tests.TypeDescriptorTest this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   38     0  this  Lcom/oracle/truffle/tck/tests/TypeDescriptorTest;
            2   33     3   ctx  Lorg/graalvm/polyglot/Context;
            3   31     4     v  Lorg/graalvm/polyglot/Value;
      Exception table:
        from    to  target  type
           2    31      32  any
           1    34      34  any
    RuntimeVisibleAnnotations: 
      org.junit.Test()
}
SourceFile: "TypeDescriptorTest.java"
NestMembers:
  com.oracle.truffle.tck.tests.TypeDescriptorTest$1
InnerClasses:
  com.oracle.truffle.tck.tests.TypeDescriptorTest$1
  public final Builder = org.graalvm.polyglot.Context$Builder of org.graalvm.polyglot.Context