public abstract class com.oracle.truffle.js.nodes.binary.JSLessThanNode extends com.oracle.truffle.js.nodes.binary.JSCompareNode
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: com.oracle.truffle.js.nodes.binary.JSLessThanNode
  super_class: com.oracle.truffle.js.nodes.binary.JSCompareNode
{
  protected void <init>(com.oracle.truffle.js.nodes.JavaScriptNode, com.oracle.truffle.js.nodes.JavaScriptNode);
    descriptor: (Lcom/oracle/truffle/js/nodes/JavaScriptNode;Lcom/oracle/truffle/js/nodes/JavaScriptNode;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.oracle.truffle.js.nodes.binary.JSLessThanNode this
        start local 1 // com.oracle.truffle.js.nodes.JavaScriptNode left
        start local 2 // com.oracle.truffle.js.nodes.JavaScriptNode right
         0: .line 61
            aload 0 /* this */
            aload 1 /* left */
            aload 2 /* right */
            invokespecial com.oracle.truffle.js.nodes.binary.JSCompareNode.<init>:(Lcom/oracle/truffle/js/nodes/JavaScriptNode;Lcom/oracle/truffle/js/nodes/JavaScriptNode;)V
         1: .line 62
            return
        end local 2 // com.oracle.truffle.js.nodes.JavaScriptNode right
        end local 1 // com.oracle.truffle.js.nodes.JavaScriptNode left
        end local 0 // com.oracle.truffle.js.nodes.binary.JSLessThanNode this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lcom/oracle/truffle/js/nodes/binary/JSLessThanNode;
            0    2     1   left  Lcom/oracle/truffle/js/nodes/JavaScriptNode;
            0    2     2  right  Lcom/oracle/truffle/js/nodes/JavaScriptNode;
    MethodParameters:
       Name  Flags
      left   
      right  

  public static com.oracle.truffle.js.nodes.binary.JSLessThanNode create(com.oracle.truffle.js.nodes.JavaScriptNode, com.oracle.truffle.js.nodes.JavaScriptNode);
    descriptor: (Lcom/oracle/truffle/js/nodes/JavaScriptNode;Lcom/oracle/truffle/js/nodes/JavaScriptNode;)Lcom/oracle/truffle/js/nodes/binary/JSLessThanNode;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=2
         0: .line 65
            new java.lang.Error
            dup
            ldc "Unresolved compilation problem: \n\tJSLessThanNodeGen cannot be resolved\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    MethodParameters:
       Name  Flags
      left   
      right  

  public static com.oracle.truffle.js.nodes.binary.JSLessThanNode create();
    descriptor: ()Lcom/oracle/truffle/js/nodes/binary/JSLessThanNode;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=0, args_size=0
         0: .line 69
            new java.lang.Error
            dup
            ldc "Unresolved compilation problem: \n\tJSLessThanNodeGen cannot be resolved\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public abstract boolean executeBoolean(java.lang.Object, java.lang.Object);
    descriptor: (Ljava/lang/Object;Ljava/lang/Object;)Z
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
      Name  Flags
      a     
      b     

  protected boolean doInt(int, int);
    descriptor: (II)Z
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // com.oracle.truffle.js.nodes.binary.JSLessThanNode this
        start local 1 // int a
        start local 2 // int b
         0: .line 76
            iload 1 /* a */
            iload 2 /* b */
            if_icmpge 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 2 // int b
        end local 1 // int a
        end local 0 // com.oracle.truffle.js.nodes.binary.JSLessThanNode this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/oracle/truffle/js/nodes/binary/JSLessThanNode;
            0    2     1     a  I
            0    2     2     b  I
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.dsl.Specialization()
    MethodParameters:
      Name  Flags
      a     
      b     

  protected boolean doSafeInteger(int, com.oracle.truffle.js.runtime.SafeInteger);
    descriptor: (ILcom/oracle/truffle/js/runtime/SafeInteger;)Z
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // com.oracle.truffle.js.nodes.binary.JSLessThanNode this
        start local 1 // int a
        start local 2 // com.oracle.truffle.js.runtime.SafeInteger b
         0: .line 81
            iload 1 /* a */
            i2l
            aload 2 /* b */
            invokevirtual com.oracle.truffle.js.runtime.SafeInteger.longValue:()J
            lcmp
            ifge 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 2 // com.oracle.truffle.js.runtime.SafeInteger b
        end local 1 // int a
        end local 0 // com.oracle.truffle.js.nodes.binary.JSLessThanNode this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/oracle/truffle/js/nodes/binary/JSLessThanNode;
            0    2     1     a  I
            0    2     2     b  Lcom/oracle/truffle/js/runtime/SafeInteger;
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.dsl.Specialization()
    MethodParameters:
      Name  Flags
      a     
      b     

  protected boolean doSafeInteger(com.oracle.truffle.js.runtime.SafeInteger, int);
    descriptor: (Lcom/oracle/truffle/js/runtime/SafeInteger;I)Z
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // com.oracle.truffle.js.nodes.binary.JSLessThanNode this
        start local 1 // com.oracle.truffle.js.runtime.SafeInteger a
        start local 2 // int b
         0: .line 86
            aload 1 /* a */
            invokevirtual com.oracle.truffle.js.runtime.SafeInteger.longValue:()J
            iload 2 /* b */
            i2l
            lcmp
            ifge 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 2 // int b
        end local 1 // com.oracle.truffle.js.runtime.SafeInteger a
        end local 0 // com.oracle.truffle.js.nodes.binary.JSLessThanNode this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/oracle/truffle/js/nodes/binary/JSLessThanNode;
            0    2     1     a  Lcom/oracle/truffle/js/runtime/SafeInteger;
            0    2     2     b  I
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.dsl.Specialization()
    MethodParameters:
      Name  Flags
      a     
      b     

  protected boolean doSafeInteger(com.oracle.truffle.js.runtime.SafeInteger, com.oracle.truffle.js.runtime.SafeInteger);
    descriptor: (Lcom/oracle/truffle/js/runtime/SafeInteger;Lcom/oracle/truffle/js/runtime/SafeInteger;)Z
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // com.oracle.truffle.js.nodes.binary.JSLessThanNode this
        start local 1 // com.oracle.truffle.js.runtime.SafeInteger a
        start local 2 // com.oracle.truffle.js.runtime.SafeInteger b
         0: .line 91
            aload 1 /* a */
            invokevirtual com.oracle.truffle.js.runtime.SafeInteger.longValue:()J
            aload 2 /* b */
            invokevirtual com.oracle.truffle.js.runtime.SafeInteger.longValue:()J
            lcmp
            ifge 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 2 // com.oracle.truffle.js.runtime.SafeInteger b
        end local 1 // com.oracle.truffle.js.runtime.SafeInteger a
        end local 0 // com.oracle.truffle.js.nodes.binary.JSLessThanNode this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/oracle/truffle/js/nodes/binary/JSLessThanNode;
            0    2     1     a  Lcom/oracle/truffle/js/runtime/SafeInteger;
            0    2     2     b  Lcom/oracle/truffle/js/runtime/SafeInteger;
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.dsl.Specialization()
    MethodParameters:
      Name  Flags
      a     
      b     

  protected boolean doDouble(double, double);
    descriptor: (DD)Z
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=5, args_size=3
        start local 0 // com.oracle.truffle.js.nodes.binary.JSLessThanNode this
        start local 1 // double a
        start local 3 // double b
         0: .line 96
            dload 1 /* a */
            dload 3 /* b */
            dcmpg
            ifge 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 3 // double b
        end local 1 // double a
        end local 0 // com.oracle.truffle.js.nodes.binary.JSLessThanNode this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/oracle/truffle/js/nodes/binary/JSLessThanNode;
            0    2     1     a  D
            0    2     3     b  D
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.dsl.Specialization()
    MethodParameters:
      Name  Flags
      a     
      b     

  protected boolean doString(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)Z
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // com.oracle.truffle.js.nodes.binary.JSLessThanNode this
        start local 1 // java.lang.String a
        start local 2 // java.lang.String b
         0: .line 101
            aload 1 /* a */
            aload 2 /* b */
            invokestatic com.oracle.truffle.js.runtime.Boundaries.stringCompareTo:(Ljava/lang/String;Ljava/lang/String;)I
            ifge 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 2 // java.lang.String b
        end local 1 // java.lang.String a
        end local 0 // com.oracle.truffle.js.nodes.binary.JSLessThanNode this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/oracle/truffle/js/nodes/binary/JSLessThanNode;
            0    2     1     a  Ljava/lang/String;
            0    2     2     b  Ljava/lang/String;
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.dsl.Specialization()
    MethodParameters:
      Name  Flags
      a     
      b     

  protected boolean doStringDouble(java.lang.String, double);
    descriptor: (Ljava/lang/String;D)Z
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=4, args_size=3
        start local 0 // com.oracle.truffle.js.nodes.binary.JSLessThanNode this
        start local 1 // java.lang.String a
        start local 2 // double b
         0: .line 106
            aload 0 /* this */
            aload 0 /* this */
            aload 1 /* a */
            invokevirtual com.oracle.truffle.js.nodes.binary.JSLessThanNode.stringToDouble:(Ljava/lang/String;)D
            dload 2 /* b */
            invokevirtual com.oracle.truffle.js.nodes.binary.JSLessThanNode.doDouble:(DD)Z
            ireturn
        end local 2 // double b
        end local 1 // java.lang.String a
        end local 0 // com.oracle.truffle.js.nodes.binary.JSLessThanNode this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/nodes/binary/JSLessThanNode;
            0    1     1     a  Ljava/lang/String;
            0    1     2     b  D
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.dsl.Specialization()
    MethodParameters:
      Name  Flags
      a     
      b     

  protected boolean doDoubleString(double, java.lang.String);
    descriptor: (DLjava/lang/String;)Z
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=4, args_size=3
        start local 0 // com.oracle.truffle.js.nodes.binary.JSLessThanNode this
        start local 1 // double a
        start local 3 // java.lang.String b
         0: .line 111
            aload 0 /* this */
            dload 1 /* a */
            aload 0 /* this */
            aload 3 /* b */
            invokevirtual com.oracle.truffle.js.nodes.binary.JSLessThanNode.stringToDouble:(Ljava/lang/String;)D
            invokevirtual com.oracle.truffle.js.nodes.binary.JSLessThanNode.doDouble:(DD)Z
            ireturn
        end local 3 // java.lang.String b
        end local 1 // double a
        end local 0 // com.oracle.truffle.js.nodes.binary.JSLessThanNode this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/nodes/binary/JSLessThanNode;
            0    1     1     a  D
            0    1     3     b  Ljava/lang/String;
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.dsl.Specialization()
    MethodParameters:
      Name  Flags
      a     
      b     

  protected boolean doStringBigInt(java.lang.String, com.oracle.truffle.js.runtime.BigInt);
    descriptor: (Ljava/lang/String;Lcom/oracle/truffle/js/runtime/BigInt;)Z
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // com.oracle.truffle.js.nodes.binary.JSLessThanNode this
        start local 1 // java.lang.String a
        start local 2 // com.oracle.truffle.js.runtime.BigInt b
         0: .line 116
            aload 1 /* a */
            invokestatic com.oracle.truffle.js.runtime.JSRuntime.stringToBigInt:(Ljava/lang/String;)Lcom/oracle/truffle/js/runtime/BigInt;
            astore 3 /* aBigInt */
        start local 3 // com.oracle.truffle.js.runtime.BigInt aBigInt
         1: .line 117
            aload 3 /* aBigInt */
            ifnonnull 2
            iconst_0
            goto 3
      StackMap locals: com.oracle.truffle.js.runtime.BigInt
      StackMap stack:
         2: aload 0 /* this */
            aload 3 /* aBigInt */
            aload 2 /* b */
            invokevirtual com.oracle.truffle.js.nodes.binary.JSLessThanNode.doBigInt:(Lcom/oracle/truffle/js/runtime/BigInt;Lcom/oracle/truffle/js/runtime/BigInt;)Z
      StackMap locals:
      StackMap stack: int
         3: ireturn
        end local 3 // com.oracle.truffle.js.runtime.BigInt aBigInt
        end local 2 // com.oracle.truffle.js.runtime.BigInt b
        end local 1 // java.lang.String a
        end local 0 // com.oracle.truffle.js.nodes.binary.JSLessThanNode this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lcom/oracle/truffle/js/nodes/binary/JSLessThanNode;
            0    4     1        a  Ljava/lang/String;
            0    4     2        b  Lcom/oracle/truffle/js/runtime/BigInt;
            1    4     3  aBigInt  Lcom/oracle/truffle/js/runtime/BigInt;
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.dsl.Specialization()
    MethodParameters:
      Name  Flags
      a     
      b     

  protected boolean doBigIntString(com.oracle.truffle.js.runtime.BigInt, java.lang.String);
    descriptor: (Lcom/oracle/truffle/js/runtime/BigInt;Ljava/lang/String;)Z
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // com.oracle.truffle.js.nodes.binary.JSLessThanNode this
        start local 1 // com.oracle.truffle.js.runtime.BigInt a
        start local 2 // java.lang.String b
         0: .line 122
            aload 2 /* b */
            invokestatic com.oracle.truffle.js.runtime.JSRuntime.stringToBigInt:(Ljava/lang/String;)Lcom/oracle/truffle/js/runtime/BigInt;
            astore 3 /* bBigInt */
        start local 3 // com.oracle.truffle.js.runtime.BigInt bBigInt
         1: .line 123
            aload 3 /* bBigInt */
            ifnonnull 2
            iconst_0
            goto 3
      StackMap locals: com.oracle.truffle.js.runtime.BigInt
      StackMap stack:
         2: aload 0 /* this */
            aload 1 /* a */
            aload 3 /* bBigInt */
            invokevirtual com.oracle.truffle.js.nodes.binary.JSLessThanNode.doBigInt:(Lcom/oracle/truffle/js/runtime/BigInt;Lcom/oracle/truffle/js/runtime/BigInt;)Z
      StackMap locals:
      StackMap stack: int
         3: ireturn
        end local 3 // com.oracle.truffle.js.runtime.BigInt bBigInt
        end local 2 // java.lang.String b
        end local 1 // com.oracle.truffle.js.runtime.BigInt a
        end local 0 // com.oracle.truffle.js.nodes.binary.JSLessThanNode this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lcom/oracle/truffle/js/nodes/binary/JSLessThanNode;
            0    4     1        a  Lcom/oracle/truffle/js/runtime/BigInt;
            0    4     2        b  Ljava/lang/String;
            1    4     3  bBigInt  Lcom/oracle/truffle/js/runtime/BigInt;
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.dsl.Specialization()
    MethodParameters:
      Name  Flags
      a     
      b     

  protected boolean doBigInt(com.oracle.truffle.js.runtime.BigInt, com.oracle.truffle.js.runtime.BigInt);
    descriptor: (Lcom/oracle/truffle/js/runtime/BigInt;Lcom/oracle/truffle/js/runtime/BigInt;)Z
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // com.oracle.truffle.js.nodes.binary.JSLessThanNode this
        start local 1 // com.oracle.truffle.js.runtime.BigInt a
        start local 2 // com.oracle.truffle.js.runtime.BigInt b
         0: .line 128
            aload 1 /* a */
            aload 2 /* b */
            invokevirtual com.oracle.truffle.js.runtime.BigInt.compareTo:(Lcom/oracle/truffle/js/runtime/BigInt;)I
            ifge 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 2 // com.oracle.truffle.js.runtime.BigInt b
        end local 1 // com.oracle.truffle.js.runtime.BigInt a
        end local 0 // com.oracle.truffle.js.nodes.binary.JSLessThanNode this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/oracle/truffle/js/nodes/binary/JSLessThanNode;
            0    2     1     a  Lcom/oracle/truffle/js/runtime/BigInt;
            0    2     2     b  Lcom/oracle/truffle/js/runtime/BigInt;
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.dsl.Specialization()
    MethodParameters:
      Name  Flags
      a     
      b     

  protected boolean doBigIntAndInt(com.oracle.truffle.js.runtime.BigInt, int);
    descriptor: (Lcom/oracle/truffle/js/runtime/BigInt;I)Z
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.oracle.truffle.js.nodes.binary.JSLessThanNode this
        start local 1 // com.oracle.truffle.js.runtime.BigInt a
        start local 2 // int b
         0: .line 133
            aload 1 /* a */
            iload 2 /* b */
            i2l
            invokestatic com.oracle.truffle.js.runtime.BigInt.valueOf:(J)Lcom/oracle/truffle/js/runtime/BigInt;
            invokevirtual com.oracle.truffle.js.runtime.BigInt.compareTo:(Lcom/oracle/truffle/js/runtime/BigInt;)I
            ifge 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 2 // int b
        end local 1 // com.oracle.truffle.js.runtime.BigInt a
        end local 0 // com.oracle.truffle.js.nodes.binary.JSLessThanNode this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/oracle/truffle/js/nodes/binary/JSLessThanNode;
            0    2     1     a  Lcom/oracle/truffle/js/runtime/BigInt;
            0    2     2     b  I
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.dsl.Specialization()
    MethodParameters:
      Name  Flags
      a     
      b     

  protected boolean doBigIntAndNumber(com.oracle.truffle.js.runtime.BigInt, double);
    descriptor: (Lcom/oracle/truffle/js/runtime/BigInt;D)Z
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // com.oracle.truffle.js.nodes.binary.JSLessThanNode this
        start local 1 // com.oracle.truffle.js.runtime.BigInt a
        start local 2 // double b
         0: .line 138
            dload 2 /* b */
            invokestatic java.lang.Double.isNaN:(D)Z
            ifeq 2
         1: .line 139
            iconst_0
            ireturn
         2: .line 141
      StackMap locals:
      StackMap stack:
            aload 1 /* a */
            dload 2 /* b */
            invokevirtual com.oracle.truffle.js.runtime.BigInt.compareValueTo:(D)I
            ifge 3
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         3: iconst_0
            ireturn
        end local 2 // double b
        end local 1 // com.oracle.truffle.js.runtime.BigInt a
        end local 0 // com.oracle.truffle.js.nodes.binary.JSLessThanNode this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lcom/oracle/truffle/js/nodes/binary/JSLessThanNode;
            0    4     1     a  Lcom/oracle/truffle/js/runtime/BigInt;
            0    4     2     b  D
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.dsl.Specialization()
    MethodParameters:
      Name  Flags
      a     
      b     

  protected boolean doIntAndBigInt(int, com.oracle.truffle.js.runtime.BigInt);
    descriptor: (ILcom/oracle/truffle/js/runtime/BigInt;)Z
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.oracle.truffle.js.nodes.binary.JSLessThanNode this
        start local 1 // int a
        start local 2 // com.oracle.truffle.js.runtime.BigInt b
         0: .line 146
            aload 2 /* b */
            iload 1 /* a */
            i2l
            invokestatic com.oracle.truffle.js.runtime.BigInt.valueOf:(J)Lcom/oracle/truffle/js/runtime/BigInt;
            invokevirtual com.oracle.truffle.js.runtime.BigInt.compareTo:(Lcom/oracle/truffle/js/runtime/BigInt;)I
            ifle 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 2 // com.oracle.truffle.js.runtime.BigInt b
        end local 1 // int a
        end local 0 // com.oracle.truffle.js.nodes.binary.JSLessThanNode this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/oracle/truffle/js/nodes/binary/JSLessThanNode;
            0    2     1     a  I
            0    2     2     b  Lcom/oracle/truffle/js/runtime/BigInt;
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.dsl.Specialization()
    MethodParameters:
      Name  Flags
      a     
      b     

  protected boolean doNumberAndBigInt(double, com.oracle.truffle.js.runtime.BigInt);
    descriptor: (DLcom/oracle/truffle/js/runtime/BigInt;)Z
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // com.oracle.truffle.js.nodes.binary.JSLessThanNode this
        start local 1 // double a
        start local 3 // com.oracle.truffle.js.runtime.BigInt b
         0: .line 151
            dload 1 /* a */
            invokestatic java.lang.Double.isNaN:(D)Z
            ifeq 2
         1: .line 152
            iconst_0
            ireturn
         2: .line 154
      StackMap locals:
      StackMap stack:
            aload 3 /* b */
            dload 1 /* a */
            invokevirtual com.oracle.truffle.js.runtime.BigInt.compareValueTo:(D)I
            ifle 3
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         3: iconst_0
            ireturn
        end local 3 // com.oracle.truffle.js.runtime.BigInt b
        end local 1 // double a
        end local 0 // com.oracle.truffle.js.nodes.binary.JSLessThanNode this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lcom/oracle/truffle/js/nodes/binary/JSLessThanNode;
            0    4     1     a  D
            0    4     3     b  Lcom/oracle/truffle/js/runtime/BigInt;
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.dsl.Specialization()
    MethodParameters:
      Name  Flags
      a     
      b     

  protected boolean doJavaNumber(java.lang.Object, java.lang.Object);
    descriptor: (Ljava/lang/Object;Ljava/lang/Object;)Z
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // com.oracle.truffle.js.nodes.binary.JSLessThanNode this
        start local 1 // java.lang.Object a
        start local 2 // java.lang.Object b
         0: .line 159
            aload 0 /* this */
            aload 1 /* a */
            checkcast java.lang.Number
            invokestatic com.oracle.truffle.js.runtime.JSRuntime.doubleValue:(Ljava/lang/Number;)D
            aload 2 /* b */
            checkcast java.lang.Number
            invokestatic com.oracle.truffle.js.runtime.JSRuntime.doubleValue:(Ljava/lang/Number;)D
            invokevirtual com.oracle.truffle.js.nodes.binary.JSLessThanNode.doDouble:(DD)Z
            ireturn
        end local 2 // java.lang.Object b
        end local 1 // java.lang.Object a
        end local 0 // com.oracle.truffle.js.nodes.binary.JSLessThanNode this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/nodes/binary/JSLessThanNode;
            0    1     1     a  Ljava/lang/Object;
            0    1     2     b  Ljava/lang/Object;
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.dsl.Specialization(guards = {"isJavaNumber(a)", "isJavaNumber(b)"})
    MethodParameters:
      Name  Flags
      a     
      b     

  protected boolean doGeneric(java.lang.Object, java.lang.Object, com.oracle.truffle.js.nodes.cast.JSToStringOrNumberNode, com.oracle.truffle.js.nodes.cast.JSToPrimitiveNode, com.oracle.truffle.js.nodes.cast.JSToStringOrNumberNode, com.oracle.truffle.js.nodes.cast.JSToPrimitiveNode, com.oracle.truffle.js.nodes.binary.JSLessThanNode);
    descriptor: (Ljava/lang/Object;Ljava/lang/Object;Lcom/oracle/truffle/js/nodes/cast/JSToStringOrNumberNode;Lcom/oracle/truffle/js/nodes/cast/JSToPrimitiveNode;Lcom/oracle/truffle/js/nodes/cast/JSToStringOrNumberNode;Lcom/oracle/truffle/js/nodes/cast/JSToPrimitiveNode;Lcom/oracle/truffle/js/nodes/binary/JSLessThanNode;)Z
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=8, args_size=8
        start local 0 // com.oracle.truffle.js.nodes.binary.JSLessThanNode this
        start local 1 // java.lang.Object a
        start local 2 // java.lang.Object b
        start local 3 // com.oracle.truffle.js.nodes.cast.JSToStringOrNumberNode toStringOrNumber1
        start local 4 // com.oracle.truffle.js.nodes.cast.JSToPrimitiveNode toPrimitive1
        start local 5 // com.oracle.truffle.js.nodes.cast.JSToStringOrNumberNode toStringOrNumber2
        start local 6 // com.oracle.truffle.js.nodes.cast.JSToPrimitiveNode toPrimitive2
        start local 7 // com.oracle.truffle.js.nodes.binary.JSLessThanNode lessThanNode
         0: .line 169
            aload 7 /* lessThanNode */
            aload 3 /* toStringOrNumber1 */
            aload 4 /* toPrimitive1 */
            aload 1 /* a */
            invokevirtual com.oracle.truffle.js.nodes.cast.JSToPrimitiveNode.execute:(Ljava/lang/Object;)Ljava/lang/Object;
            invokevirtual com.oracle.truffle.js.nodes.cast.JSToStringOrNumberNode.execute:(Ljava/lang/Object;)Ljava/lang/Object;
            aload 5 /* toStringOrNumber2 */
            aload 6 /* toPrimitive2 */
            aload 2 /* b */
            invokevirtual com.oracle.truffle.js.nodes.cast.JSToPrimitiveNode.execute:(Ljava/lang/Object;)Ljava/lang/Object;
            invokevirtual com.oracle.truffle.js.nodes.cast.JSToStringOrNumberNode.execute:(Ljava/lang/Object;)Ljava/lang/Object;
            invokevirtual com.oracle.truffle.js.nodes.binary.JSLessThanNode.executeBoolean:(Ljava/lang/Object;Ljava/lang/Object;)Z
            ireturn
        end local 7 // com.oracle.truffle.js.nodes.binary.JSLessThanNode lessThanNode
        end local 6 // com.oracle.truffle.js.nodes.cast.JSToPrimitiveNode toPrimitive2
        end local 5 // com.oracle.truffle.js.nodes.cast.JSToStringOrNumberNode toStringOrNumber2
        end local 4 // com.oracle.truffle.js.nodes.cast.JSToPrimitiveNode toPrimitive1
        end local 3 // com.oracle.truffle.js.nodes.cast.JSToStringOrNumberNode toStringOrNumber1
        end local 2 // java.lang.Object b
        end local 1 // java.lang.Object a
        end local 0 // com.oracle.truffle.js.nodes.binary.JSLessThanNode this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    1     0               this  Lcom/oracle/truffle/js/nodes/binary/JSLessThanNode;
            0    1     1                  a  Ljava/lang/Object;
            0    1     2                  b  Ljava/lang/Object;
            0    1     3  toStringOrNumber1  Lcom/oracle/truffle/js/nodes/cast/JSToStringOrNumberNode;
            0    1     4       toPrimitive1  Lcom/oracle/truffle/js/nodes/cast/JSToPrimitiveNode;
            0    1     5  toStringOrNumber2  Lcom/oracle/truffle/js/nodes/cast/JSToStringOrNumberNode;
            0    1     6       toPrimitive2  Lcom/oracle/truffle/js/nodes/cast/JSToPrimitiveNode;
            0    1     7       lessThanNode  Lcom/oracle/truffle/js/nodes/binary/JSLessThanNode;
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.dsl.Specialization(replaces = {"doInt", "doDouble", "doString", "doStringDouble", "doDoubleString", "doBigInt", "doBigIntAndNumber", "doNumberAndBigInt", "doJavaNumber"})
    RuntimeInvisibleParameterAnnotations: 
      0:
      1:
      2:
        com.oracle.truffle.api.dsl.Cached(value = "create()")
      3:
        com.oracle.truffle.api.dsl.Cached(value = "createHintNumber()")
      4:
        com.oracle.truffle.api.dsl.Cached(value = "create()")
      5:
        com.oracle.truffle.api.dsl.Cached(value = "createHintNumber()")
      6:
        com.oracle.truffle.api.dsl.Cached(value = "create()")
    MethodParameters:
                   Name  Flags
      a                  
      b                  
      toStringOrNumber1  
      toPrimitive1       
      toStringOrNumber2  
      toPrimitive2       
      lessThanNode       

  protected com.oracle.truffle.js.nodes.JavaScriptNode copyUninitialized(java.util.Set<java.lang.Class<? extends com.oracle.truffle.api.instrumentation.Tag>>);
    descriptor: (Ljava/util/Set;)Lcom/oracle/truffle/js/nodes/JavaScriptNode;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // com.oracle.truffle.js.nodes.binary.JSLessThanNode this
         0: .line 174
            new java.lang.Error
            dup
            ldc "Unresolved compilation problem: \n\tJSLessThanNodeGen cannot be resolved\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // com.oracle.truffle.js.nodes.binary.JSLessThanNode this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/truffle/js/nodes/binary/JSLessThanNode;
    Signature: (Ljava/util/Set<Ljava/lang/Class<+Lcom/oracle/truffle/api/instrumentation/Tag;>;>;)Lcom/oracle/truffle/js/nodes/JavaScriptNode;
    MethodParameters:
                  Name  Flags
      materializedTags  
}
SourceFile: "JSLessThanNode.java"
    RuntimeVisibleAnnotations: 
      com.oracle.truffle.api.nodes.NodeInfo(shortName = "<")