public final class jdk.internal.foreign.Utils
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: jdk.internal.foreign.Utils
  super_class: java.lang.Object
{
  private static final boolean SHOULD_ADAPT_HANDLES;
    descriptor: Z
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.lang.String foreignRestrictedAccess;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.lang.invoke.MethodHandle SEGMENT_FILTER;
    descriptor: Ljava/lang/invoke/MethodHandle;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  public static final java.lang.invoke.MethodHandle MH_bitsToBytesOrThrowForOffset;
    descriptor: Ljava/lang/invoke/MethodHandle;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final java.util.function.Supplier<java.lang.RuntimeException> bitsToBytesThrowOffset;
    descriptor: Ljava/util/function/Supplier;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    Signature: Ljava/util/function/Supplier<Ljava/lang/RuntimeException;>;

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=9, locals=1, args_size=0
         0: .line 50
            ldc "jdk.internal.foreign.SHOULD_ADAPT_HANDLES"
            ldc "true"
            invokestatic sun.security.action.GetPropertyAction.privilegedGetProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            invokestatic java.lang.Boolean.parseBoolean:(Ljava/lang/String;)Z
         1: .line 49
            putstatic jdk.internal.foreign.Utils.SHOULD_ADAPT_HANDLES:Z
         2: .line 52
            ldc "foreign.restricted"
            invokestatic jdk.internal.misc.VM.getSavedProperty:(Ljava/lang/String;)Ljava/lang/String;
            invokestatic java.util.Optional.ofNullable:(Ljava/lang/Object;)Ljava/util/Optional;
         3: .line 53
            ldc "deny"
            invokevirtual java.util.Optional.orElse:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
         4: .line 52
            putstatic jdk.internal.foreign.Utils.foreignRestrictedAccess:Ljava/lang/String;
         5: .line 59
            invokedynamic get()Ljava/util/function/Supplier;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  ()Ljava/lang/Object;
                  jdk/internal/foreign/Utils.lambda$0()Ljava/lang/RuntimeException; (6)
                  ()Ljava/lang/RuntimeException;
         6: .line 58
            putstatic jdk.internal.foreign.Utils.bitsToBytesThrowOffset:Ljava/util/function/Supplier;
         7: .line 63
            invokestatic java.lang.invoke.MethodHandles.lookup:()Ljava/lang/invoke/MethodHandles$Lookup;
            astore 0 /* lookup */
        start local 0 // java.lang.invoke.MethodHandles$Lookup lookup
         8: .line 64
            aload 0 /* lookup */
            ldc Ljdk/internal/foreign/Utils;
            ldc "filterSegment"
         9: .line 65
            ldc Ljdk/internal/access/foreign/MemorySegmentProxy;
            ldc Ljdk/incubator/foreign/MemorySegment;
            invokestatic java.lang.invoke.MethodType.methodType:(Ljava/lang/Class;Ljava/lang/Class;)Ljava/lang/invoke/MethodType;
        10: .line 64
            invokevirtual java.lang.invoke.MethodHandles$Lookup.findStatic:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
            putstatic jdk.internal.foreign.Utils.SEGMENT_FILTER:Ljava/lang/invoke/MethodHandle;
        11: .line 67
            aload 0 /* lookup */
            ldc Ljdk/internal/foreign/Utils;
            ldc "bitsToBytesOrThrow"
        12: .line 68
            getstatic java.lang.Long.TYPE:Ljava/lang/Class;
            getstatic java.lang.Long.TYPE:Ljava/lang/Class;
            iconst_1
            anewarray java.lang.Class
            dup
            iconst_0
            ldc Ljava/util/function/Supplier;
            aastore
            invokestatic java.lang.invoke.MethodType.methodType:(Ljava/lang/Class;Ljava/lang/Class;[Ljava/lang/Class;)Ljava/lang/invoke/MethodType;
        13: .line 67
            invokevirtual java.lang.invoke.MethodHandles$Lookup.findStatic:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/MethodHandle;
        14: .line 69
            iconst_1
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
        15: .line 70
            getstatic jdk.internal.foreign.Utils.bitsToBytesThrowOffset:Ljava/util/function/Supplier;
            aastore
        16: .line 66
            invokestatic java.lang.invoke.MethodHandles.insertArguments:(Ljava/lang/invoke/MethodHandle;I[Ljava/lang/Object;)Ljava/lang/invoke/MethodHandle;
            putstatic jdk.internal.foreign.Utils.MH_bitsToBytesOrThrowForOffset:Ljava/lang/invoke/MethodHandle;
        end local 0 // java.lang.invoke.MethodHandles$Lookup lookup
        17: .line 71
            goto 20
      StackMap locals:
      StackMap stack: java.lang.Throwable
        18: astore 0 /* ex */
        start local 0 // java.lang.Throwable ex
        19: .line 72
            new java.lang.ExceptionInInitializerError
            dup
            aload 0 /* ex */
            invokespecial java.lang.ExceptionInInitializerError.<init>:(Ljava/lang/Throwable;)V
            athrow
        end local 0 // java.lang.Throwable ex
        20: .line 74
      StackMap locals:
      StackMap stack:
            return
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            8   17     0  lookup  Ljava/lang/invoke/MethodHandles$Lookup;
           19   20     0      ex  Ljava/lang/Throwable;
      Exception table:
        from    to  target  type
           7    17      18  Class java.lang.Throwable

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.internal.foreign.Utils this
         0: .line 46
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // jdk.internal.foreign.Utils this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/internal/foreign/Utils;

  public static long alignUp(long, long);
    descriptor: (JJ)J
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // long n
        start local 2 // long alignment
         0: .line 77
            lload 0 /* n */
            lload 2 /* alignment */
            ladd
            lconst_1
            lsub
            lload 2 /* alignment */
            lneg
            land
            lreturn
        end local 2 // long alignment
        end local 0 // long n
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    1     0          n  J
            0    1     2  alignment  J
    MethodParameters:
           Name  Flags
      n          
      alignment  

  public static jdk.incubator.foreign.MemoryAddress alignUp(jdk.incubator.foreign.MemoryAddress, long);
    descriptor: (Ljdk/incubator/foreign/MemoryAddress;J)Ljdk/incubator/foreign/MemoryAddress;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=5, args_size=2
        start local 0 // jdk.incubator.foreign.MemoryAddress ma
        start local 1 // long alignment
         0: .line 81
            aload 0 /* ma */
            invokeinterface jdk.incubator.foreign.MemoryAddress.toRawLongValue:()J
            lstore 3 /* offset */
        start local 3 // long offset
         1: .line 82
            aload 0 /* ma */
            lload 3 /* offset */
            lload 1 /* alignment */
            invokestatic jdk.internal.foreign.Utils.alignUp:(JJ)J
            lload 3 /* offset */
            lsub
            invokeinterface jdk.incubator.foreign.MemoryAddress.addOffset:(J)Ljdk/incubator/foreign/MemoryAddress;
            areturn
        end local 3 // long offset
        end local 1 // long alignment
        end local 0 // jdk.incubator.foreign.MemoryAddress ma
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0         ma  Ljdk/incubator/foreign/MemoryAddress;
            0    2     1  alignment  J
            1    2     3     offset  J
    MethodParameters:
           Name  Flags
      ma         
      alignment  

  public static jdk.incubator.foreign.MemorySegment alignUp(jdk.incubator.foreign.MemorySegment, long);
    descriptor: (Ljdk/incubator/foreign/MemorySegment;J)Ljdk/incubator/foreign/MemorySegment;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=5, args_size=2
        start local 0 // jdk.incubator.foreign.MemorySegment ms
        start local 1 // long alignment
         0: .line 86
            aload 0 /* ms */
            invokeinterface jdk.incubator.foreign.MemorySegment.address:()Ljdk/incubator/foreign/MemoryAddress;
            invokeinterface jdk.incubator.foreign.MemoryAddress.toRawLongValue:()J
            lstore 3 /* offset */
        start local 3 // long offset
         1: .line 87
            aload 0 /* ms */
            lload 3 /* offset */
            lload 1 /* alignment */
            invokestatic jdk.internal.foreign.Utils.alignUp:(JJ)J
            lload 3 /* offset */
            lsub
            invokeinterface jdk.incubator.foreign.MemorySegment.asSlice:(J)Ljdk/incubator/foreign/MemorySegment;
            areturn
        end local 3 // long offset
        end local 1 // long alignment
        end local 0 // jdk.incubator.foreign.MemorySegment ms
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0         ms  Ljdk/incubator/foreign/MemorySegment;
            0    2     1  alignment  J
            1    2     3     offset  J
    MethodParameters:
           Name  Flags
      ms         
      alignment  

  public static long bitsToBytesOrThrow(long, java.util.function.Supplier<java.lang.RuntimeException>);
    descriptor: (JLjava/util/function/Supplier;)J
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // long bits
        start local 2 // java.util.function.Supplier exFactory
         0: .line 91
            lload 0 /* bits */
            ldc 8
            lrem
            lconst_0
            lcmp
            ifne 2
         1: .line 92
            lload 0 /* bits */
            ldc 8
            ldiv
            lreturn
         2: .line 94
      StackMap locals:
      StackMap stack:
            aload 2 /* exFactory */
            invokeinterface java.util.function.Supplier.get:()Ljava/lang/Object;
            checkcast java.lang.RuntimeException
            athrow
        end local 2 // java.util.function.Supplier exFactory
        end local 0 // long bits
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    3     0       bits  J
            0    3     2  exFactory  Ljava/util/function/Supplier<Ljava/lang/RuntimeException;>;
    Signature: (JLjava/util/function/Supplier<Ljava/lang/RuntimeException;>;)J
    MethodParameters:
           Name  Flags
      bits       
      exFactory  

  public static java.lang.invoke.VarHandle fixUpVarHandle(java.lang.invoke.VarHandle);
    descriptor: (Ljava/lang/invoke/VarHandle;)Ljava/lang/invoke/VarHandle;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=1, args_size=1
        start local 0 // java.lang.invoke.VarHandle handle
         0: .line 101
            getstatic jdk.internal.foreign.Utils.SHOULD_ADAPT_HANDLES:Z
            ifeq 2
         1: .line 102
            aload 0 /* handle */
            iconst_0
            iconst_1
            anewarray java.lang.invoke.MethodHandle
            dup
            iconst_0
            getstatic jdk.internal.foreign.Utils.SEGMENT_FILTER:Ljava/lang/invoke/MethodHandle;
            aastore
            invokestatic jdk.incubator.foreign.MemoryHandles.filterCoordinates:(Ljava/lang/invoke/VarHandle;I[Ljava/lang/invoke/MethodHandle;)Ljava/lang/invoke/VarHandle;
            goto 3
         2: .line 103
      StackMap locals:
      StackMap stack:
            aload 0 /* handle */
         3: .line 101
      StackMap locals:
      StackMap stack: java.lang.invoke.VarHandle
            areturn
        end local 0 // java.lang.invoke.VarHandle handle
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    4     0  handle  Ljava/lang/invoke/VarHandle;
    MethodParameters:
        Name  Flags
      handle  

  private static jdk.internal.access.foreign.MemorySegmentProxy filterSegment(jdk.incubator.foreign.MemorySegment);
    descriptor: (Ljdk/incubator/foreign/MemorySegment;)Ljdk/internal/access/foreign/MemorySegmentProxy;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.incubator.foreign.MemorySegment segment
         0: .line 107
            aload 0 /* segment */
            checkcast jdk.internal.foreign.AbstractMemorySegmentImpl
            areturn
        end local 0 // jdk.incubator.foreign.MemorySegment segment
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0  segment  Ljdk/incubator/foreign/MemorySegment;
    MethodParameters:
         Name  Flags
      segment  

  public static void checkRestrictedAccess(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=3, args_size=1
        start local 0 // java.lang.String method
         0: .line 111
            getstatic jdk.internal.foreign.Utils.foreignRestrictedAccess:Ljava/lang/String;
            dup
            astore 1
            invokevirtual java.lang.String.hashCode:()I
            lookupswitch { // 4
           -991722469: 1
              3079692: 2
              3641990: 3
             95458899: 4
              default: 11
          }
      StackMap locals: java.lang.String
      StackMap stack:
         1: aload 1
            ldc "permit"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 12
            goto 11
      StackMap locals:
      StackMap stack:
         2: aload 1
            ldc "deny"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 5
            goto 11
      StackMap locals:
      StackMap stack:
         3: aload 1
            ldc "warn"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 6
            goto 11
      StackMap locals:
      StackMap stack:
         4: aload 1
            ldc "debug"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 7
            goto 11
         5: .line 112
      StackMap locals:
      StackMap stack:
            getstatic jdk.internal.foreign.Utils.foreignRestrictedAccess:Ljava/lang/String;
            aload 0 /* method */
            invokestatic jdk.internal.foreign.Utils.throwIllegalAccessError:(Ljava/lang/String;Ljava/lang/String;)V
            goto 12
         6: .line 113
      StackMap locals:
      StackMap stack:
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "WARNING: Accessing restricted foreign method: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* method */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
            goto 12
         7: .line 115
      StackMap locals:
      StackMap stack:
            new java.lang.StringBuilder
            dup
            ldc "DEBUG: restricted foreign method: \" + method"
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            astore 2 /* sb */
        start local 2 // java.lang.StringBuilder sb
         8: .line 116
            invokestatic java.lang.StackWalker.getInstance:()Ljava/lang/StackWalker;
            aload 2 /* sb */
            invokedynamic accept(Ljava/lang/StringBuilder;)Ljava/util/function/Consumer;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)V
                  jdk/internal/foreign/Utils.lambda$1(Ljava/lang/StringBuilder;Ljava/lang/StackWalker$StackFrame;)V (6)
                  (Ljava/lang/StackWalker$StackFrame;)V
            invokevirtual java.lang.StackWalker.forEach:(Ljava/util/function/Consumer;)V
         9: .line 119
            getstatic java.lang.System.err:Ljava/io/PrintStream;
            aload 2 /* sb */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
        10: .line 120
            goto 12
        end local 2 // java.lang.StringBuilder sb
        11: .line 122
      StackMap locals:
      StackMap stack:
            getstatic jdk.internal.foreign.Utils.foreignRestrictedAccess:Ljava/lang/String;
            aload 0 /* method */
            invokestatic jdk.internal.foreign.Utils.throwIllegalAccessError:(Ljava/lang/String;Ljava/lang/String;)V
        12: .line 124
      StackMap locals:
      StackMap stack:
            return
        end local 0 // java.lang.String method
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   13     0  method  Ljava/lang/String;
            8   11     2      sb  Ljava/lang/StringBuilder;
    MethodParameters:
        Name  Flags
      method  

  private static void throwIllegalAccessError(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // java.lang.String value
        start local 1 // java.lang.String method
         0: .line 127
            new java.lang.IllegalAccessError
            dup
            new java.lang.StringBuilder
            dup
            ldc "Illegal access to restricted foreign method: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* method */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         1: .line 128
            ldc " ; system property 'foreign.restricted' is set to '"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* value */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "'"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         2: .line 127
            invokespecial java.lang.IllegalAccessError.<init>:(Ljava/lang/String;)V
            athrow
        end local 1 // java.lang.String method
        end local 0 // java.lang.String value
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0   value  Ljava/lang/String;
            0    3     1  method  Ljava/lang/String;
    MethodParameters:
        Name  Flags
      value   
      method  

  public static void checkPrimitiveCarrierCompat(java.lang.Class<?>, jdk.incubator.foreign.MemoryLayout);
    descriptor: (Ljava/lang/Class;Ljdk/incubator/foreign/MemoryLayout;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // java.lang.Class carrier
        start local 1 // jdk.incubator.foreign.MemoryLayout layout
         0: .line 132
            aload 1 /* layout */
            ldc Ljdk/incubator/foreign/ValueLayout;
            invokestatic jdk.internal.foreign.Utils.checkLayoutType:(Ljdk/incubator/foreign/MemoryLayout;Ljava/lang/Class;)V
         1: .line 133
            aload 0 /* carrier */
            invokestatic jdk.internal.foreign.Utils.isValidPrimitiveCarrier:(Ljava/lang/Class;)Z
            ifne 3
         2: .line 134
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Unsupported carrier: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* carrier */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 135
      StackMap locals:
      StackMap stack:
            aload 0 /* carrier */
            invokestatic sun.invoke.util.Wrapper.forPrimitiveType:(Ljava/lang/Class;)Lsun/invoke/util/Wrapper;
            invokevirtual sun.invoke.util.Wrapper.bitWidth:()I
            i2l
            aload 1 /* layout */
            invokeinterface jdk.incubator.foreign.MemoryLayout.bitSize:()J
            lcmp
            ifeq 5
         4: .line 136
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Carrier size mismatch: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* carrier */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            ldc " != "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 1 /* layout */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         5: .line 137
      StackMap locals:
      StackMap stack:
            return
        end local 1 // jdk.incubator.foreign.MemoryLayout layout
        end local 0 // java.lang.Class carrier
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    6     0  carrier  Ljava/lang/Class<*>;
            0    6     1   layout  Ljdk/incubator/foreign/MemoryLayout;
    Signature: (Ljava/lang/Class<*>;Ljdk/incubator/foreign/MemoryLayout;)V
    MethodParameters:
         Name  Flags
      carrier  
      layout   

  public static boolean isValidPrimitiveCarrier(java.lang.Class<?>);
    descriptor: (Ljava/lang/Class;)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.lang.Class carrier
         0: .line 140
            aload 0 /* carrier */
            getstatic java.lang.Byte.TYPE:Ljava/lang/Class;
            if_acmpeq 8
         1: .line 141
            aload 0 /* carrier */
            getstatic java.lang.Short.TYPE:Ljava/lang/Class;
            if_acmpeq 8
         2: .line 142
            aload 0 /* carrier */
            getstatic java.lang.Character.TYPE:Ljava/lang/Class;
            if_acmpeq 8
         3: .line 143
            aload 0 /* carrier */
            getstatic java.lang.Integer.TYPE:Ljava/lang/Class;
            if_acmpeq 8
         4: .line 144
            aload 0 /* carrier */
            getstatic java.lang.Long.TYPE:Ljava/lang/Class;
            if_acmpeq 8
         5: .line 145
            aload 0 /* carrier */
            getstatic java.lang.Float.TYPE:Ljava/lang/Class;
            if_acmpeq 8
         6: .line 146
            aload 0 /* carrier */
            getstatic java.lang.Double.TYPE:Ljava/lang/Class;
            if_acmpeq 8
         7: .line 140
            iconst_0
            ireturn
      StackMap locals:
      StackMap stack:
         8: iconst_1
            ireturn
        end local 0 // java.lang.Class carrier
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    9     0  carrier  Ljava/lang/Class<*>;
    Signature: (Ljava/lang/Class<*>;)Z
    MethodParameters:
         Name  Flags
      carrier  

  public static void checkLayoutType(jdk.incubator.foreign.MemoryLayout, java.lang.Class<? extends jdk.incubator.foreign.MemoryLayout>);
    descriptor: (Ljdk/incubator/foreign/MemoryLayout;Ljava/lang/Class;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // jdk.incubator.foreign.MemoryLayout layout
        start local 1 // java.lang.Class layoutType
         0: .line 150
            aload 1 /* layoutType */
            aload 0 /* layout */
            invokevirtual java.lang.Class.isInstance:(Ljava/lang/Object;)Z
            ifne 2
         1: .line 151
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Expected a "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* layoutType */
            invokevirtual java.lang.Class.getSimpleName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc ": "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* layout */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 152
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.Class layoutType
        end local 0 // jdk.incubator.foreign.MemoryLayout layout
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    3     0      layout  Ljdk/incubator/foreign/MemoryLayout;
            0    3     1  layoutType  Ljava/lang/Class<+Ljdk/incubator/foreign/MemoryLayout;>;
    Signature: (Ljdk/incubator/foreign/MemoryLayout;Ljava/lang/Class<+Ljdk/incubator/foreign/MemoryLayout;>;)V
    MethodParameters:
            Name  Flags
      layout      
      layoutType  

  private static java.lang.RuntimeException lambda$0();
    descriptor: ()Ljava/lang/RuntimeException;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=0, args_size=0
         0: .line 59
            new java.lang.UnsupportedOperationException
            dup
            ldc "Cannot compute byte offset; bit offset is not a multiple of 8"
            invokespecial java.lang.UnsupportedOperationException.<init>:(Ljava/lang/String;)V
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private static void lambda$1(java.lang.StringBuilder, java.lang.StackWalker$StackFrame);
    descriptor: (Ljava/lang/StringBuilder;Ljava/lang/StackWalker$StackFrame;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 1 // java.lang.StackWalker$StackFrame f
         0: .line 116
            aload 0
            invokestatic java.lang.System.lineSeparator:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         1: .line 117
            ldc "\tat "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         2: .line 118
            aload 1 /* f */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            return
        end local 1 // java.lang.StackWalker$StackFrame f
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     1     f  Ljava/lang/StackWalker$StackFrame;
}
SourceFile: "Utils.java"
InnerClasses:
  public abstract StackFrame = java.lang.StackWalker$StackFrame of java.lang.StackWalker
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles