public class com.oracle.graal.python.benchmarks.interop.PyEuler11 extends com.oracle.graal.python.benchmarks.interop.BenchRunner
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: com.oracle.graal.python.benchmarks.interop.PyEuler11
  super_class: com.oracle.graal.python.benchmarks.interop.BenchRunner
{
  public int arg1;
    descriptor: I
    flags: (0x0001) ACC_PUBLIC
    RuntimeVisibleAnnotations: 
      org.openjdk.jmh.annotations.Param(value = {"1000"})

  private org.graalvm.polyglot.Value sub_list1;
    descriptor: Lorg/graalvm/polyglot/Value;
    flags: (0x0002) ACC_PRIVATE

  private org.graalvm.polyglot.Value sub_list2;
    descriptor: Lorg/graalvm/polyglot/Value;
    flags: (0x0002) ACC_PRIVATE

  private org.graalvm.polyglot.Value sub_list3;
    descriptor: Lorg/graalvm/polyglot/Value;
    flags: (0x0002) ACC_PRIVATE

  private org.graalvm.polyglot.Value sub_list4;
    descriptor: Lorg/graalvm/polyglot/Value;
    flags: (0x0002) ACC_PRIVATE

  private org.graalvm.polyglot.Value NUMS;
    descriptor: Lorg/graalvm/polyglot/Value;
    flags: (0x0002) ACC_PRIVATE

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.oracle.graal.python.benchmarks.interop.PyEuler11 this
         0: .line 49
            aload 0 /* this */
            invokespecial com.oracle.graal.python.benchmarks.interop.BenchRunner.<init>:()V
            return
        end local 0 // com.oracle.graal.python.benchmarks.interop.PyEuler11 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/graal/python/benchmarks/interop/PyEuler11;

  public void setup();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // com.oracle.graal.python.benchmarks.interop.PyEuler11 this
         0: .line 61
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            ldc "### setup ..."
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
         1: .line 62
            aload 0 /* this */
            aload 0 /* this */
            getfield com.oracle.graal.python.benchmarks.interop.PyEuler11.context:Lorg/graalvm/polyglot/Context;
            ldc "python"
            ldc "def sub_list1(nums, row, col): return list(nums[i][col] for i in range(row, row+4))\nsub_list1"
            invokevirtual org.graalvm.polyglot.Context.eval:(Ljava/lang/String;Ljava/lang/CharSequence;)Lorg/graalvm/polyglot/Value;
            putfield com.oracle.graal.python.benchmarks.interop.PyEuler11.sub_list1:Lorg/graalvm/polyglot/Value;
         2: .line 63
            aload 0 /* this */
            aload 0 /* this */
            getfield com.oracle.graal.python.benchmarks.interop.PyEuler11.context:Lorg/graalvm/polyglot/Context;
            ldc "python"
            ldc "def sub_list2(nums, row, col): return list(nums[row][i] for i in range(col, col+4))\nsub_list2"
            invokevirtual org.graalvm.polyglot.Context.eval:(Ljava/lang/String;Ljava/lang/CharSequence;)Lorg/graalvm/polyglot/Value;
            putfield com.oracle.graal.python.benchmarks.interop.PyEuler11.sub_list2:Lorg/graalvm/polyglot/Value;
         3: .line 64
            aload 0 /* this */
            aload 0 /* this */
            getfield com.oracle.graal.python.benchmarks.interop.PyEuler11.context:Lorg/graalvm/polyglot/Context;
            ldc "python"
            ldc "def sub_list3(nums, row, col): return list(nums[row+i][col+i] for i in range(0, 4))\nsub_list3"
            invokevirtual org.graalvm.polyglot.Context.eval:(Ljava/lang/String;Ljava/lang/CharSequence;)Lorg/graalvm/polyglot/Value;
            putfield com.oracle.graal.python.benchmarks.interop.PyEuler11.sub_list3:Lorg/graalvm/polyglot/Value;
         4: .line 65
            aload 0 /* this */
            aload 0 /* this */
            getfield com.oracle.graal.python.benchmarks.interop.PyEuler11.context:Lorg/graalvm/polyglot/Context;
            ldc "python"
            ldc "def sub_list4(nums, row, col): return list(nums[row+i][col-i] for i in range(0, 4))\nsub_list4"
            invokevirtual org.graalvm.polyglot.Context.eval:(Ljava/lang/String;Ljava/lang/CharSequence;)Lorg/graalvm/polyglot/Value;
            putfield com.oracle.graal.python.benchmarks.interop.PyEuler11.sub_list4:Lorg/graalvm/polyglot/Value;
         5: .line 66
            aload 0 /* this */
            aload 0 /* this */
            getfield com.oracle.graal.python.benchmarks.interop.PyEuler11.context:Lorg/graalvm/polyglot/Context;
            ldc "python"
            ldc "[\n[ 8, 2,22,97,38,15, 0,40, 0,75, 4, 5, 7,78,52,12,50,77,91, 8,],\n[49,49,99,40,17,81,18,57,60,87,17,40,98,43,69,48, 4,56,62, 0,],\n[81,49,31,73,55,79,14,29,93,71,40,67,53,88,30, 3,49,13,36,65,],\n[52,70,95,23, 4,60,11,42,69,24,68,56, 1,32,56,71,37, 2,36,91,],\n[22,31,16,71,51,67,63,89,41,92,36,54,22,40,40,28,66,33,13,80,],\n[24,47,32,60,99, 3,45, 2,44,75,33,53,78,36,84,20,35,17,12,50,],\n[32,98,81,28,64,23,67,10,26,38,40,67,59,54,70,66,18,38,64,70,],\n[67,26,20,68, 2,62,12,20,95,63,94,39,63, 8,40,91,66,49,94,21,],\n[24,55,58, 5,66,73,99,26,97,17,78,78,96,83,14,88,34,89,63,72,],\n[21,36,23, 9,75, 0,76,44,20,45,35,14, 0,61,33,97,34,31,33,95,],\n[78,17,53,28,22,75,31,67,15,94, 3,80, 4,62,16,14, 9,53,56,92,],\n[16,39, 5,42,96,35,31,47,55,58,88,24, 0,17,54,24,36,29,85,57,],\n[86,56, 0,48,35,71,89, 7, 5,44,44,37,44,60,21,58,51,54,17,58,],\n[19,80,81,68, 5,94,47,69,28,73,92,13,86,52,17,77, 4,89,55,40,],\n[ 4,52, 8,83,97,35,99,16, 7,97,57,32,16,26,26,79,33,27,98,66,],\n[88,36,68,87,57,62,20,72, 3,46,33,67,46,55,12,32,63,93,53,69,],\n[ 4,42,16,73,38,25,39,11,24,94,72,18, 8,46,29,32,40,62,76,36,],\n[20,69,36,41,72,30,23,88,34,62,99,69,82,67,59,85,74, 4,36,16,],\n[20,73,35,29,78,31,90, 1,74,31,49,71,48,86,81,16,23,57, 5,54,],\n[ 1,70,54,71,83,51,54,69,16,92,33,48,61,43,52, 1,89,19,67,48,],\n]"
            invokevirtual org.graalvm.polyglot.Context.eval:(Ljava/lang/String;Ljava/lang/CharSequence;)Lorg/graalvm/polyglot/Value;
            putfield com.oracle.graal.python.benchmarks.interop.PyEuler11.NUMS:Lorg/graalvm/polyglot/Value;
         6: .line 88
            return
        end local 0 // com.oracle.graal.python.benchmarks.interop.PyEuler11 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lcom/oracle/graal/python/benchmarks/interop/PyEuler11;
    RuntimeVisibleAnnotations: 
      org.openjdk.jmh.annotations.Setup()

  public int euler11(org.openjdk.jmh.infra.Blackhole);
    descriptor: (Lorg/openjdk/jmh/infra/Blackhole;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // com.oracle.graal.python.benchmarks.interop.PyEuler11 this
        start local 1 // org.openjdk.jmh.infra.Blackhole bh
         0: .line 92
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         1: goto 4
         2: .line 93
      StackMap locals: int
      StackMap stack:
            aload 1 /* bh */
            aload 0 /* this */
            invokevirtual com.oracle.graal.python.benchmarks.interop.PyEuler11.solve:()I
            invokevirtual org.openjdk.jmh.infra.Blackhole.consume:(I)V
         3: .line 92
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         4: iload 2 /* i */
            aload 0 /* this */
            getfield com.oracle.graal.python.benchmarks.interop.PyEuler11.arg1:I
            if_icmplt 2
        end local 2 // int i
         5: .line 96
            aload 0 /* this */
            invokevirtual com.oracle.graal.python.benchmarks.interop.PyEuler11.solve:()I
            istore 2 /* max */
        start local 2 // int max
         6: .line 97
            getstatic java.lang.System.out:Ljava/io/PrintStream;
            new java.lang.StringBuilder
            dup
            ldc "max: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 2 /* max */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
         7: .line 98
            iload 2 /* max */
            ireturn
        end local 2 // int max
        end local 1 // org.openjdk.jmh.infra.Blackhole bh
        end local 0 // com.oracle.graal.python.benchmarks.interop.PyEuler11 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Lcom/oracle/graal/python/benchmarks/interop/PyEuler11;
            0    8     1    bh  Lorg/openjdk/jmh/infra/Blackhole;
            1    5     2     i  I
            6    8     2   max  I
    RuntimeVisibleAnnotations: 
      org.openjdk.jmh.annotations.Benchmark()
    MethodParameters:
      Name  Flags
      bh    

  private int solve();
    descriptor: ()I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=8, args_size=1
        start local 0 // com.oracle.graal.python.benchmarks.interop.PyEuler11 this
         0: .line 102
            ldc -2147483648
            istore 1 /* max */
        start local 1 // int max
         1: .line 103
            aload 0 /* this */
            getfield com.oracle.graal.python.benchmarks.interop.PyEuler11.NUMS:Lorg/graalvm/polyglot/Value;
            invokevirtual org.graalvm.polyglot.Value.getArraySize:()J
            lstore 2 /* size1 */
        start local 2 // long size1
         2: .line 104
            aload 0 /* this */
            getfield com.oracle.graal.python.benchmarks.interop.PyEuler11.NUMS:Lorg/graalvm/polyglot/Value;
            lconst_0
            invokevirtual org.graalvm.polyglot.Value.getArrayElement:(J)Lorg/graalvm/polyglot/Value;
            invokevirtual org.graalvm.polyglot.Value.getArraySize:()J
            lstore 4 /* size2 */
        start local 4 // long size2
         3: .line 105
            iconst_0
            istore 6 /* row */
        start local 6 // int row
         4: goto 18
         5: .line 106
      StackMap locals: com.oracle.graal.python.benchmarks.interop.PyEuler11 int long long int
      StackMap stack:
            iconst_0
            istore 7 /* col */
        start local 7 // int col
         6: goto 16
         7: .line 107
      StackMap locals: int
      StackMap stack:
            iload 6 /* row */
            iconst_4
            iadd
            i2l
            lload 2 /* size1 */
            lcmp
            ifgt 9
         8: .line 108
            iload 1 /* max */
            aload 0 /* this */
            aload 0 /* this */
            getfield com.oracle.graal.python.benchmarks.interop.PyEuler11.sub_list1:Lorg/graalvm/polyglot/Value;
            iload 6 /* row */
            iload 7 /* col */
            invokevirtual com.oracle.graal.python.benchmarks.interop.PyEuler11.call:(Lorg/graalvm/polyglot/Value;II)Lorg/graalvm/polyglot/Value;
            invokestatic com.oracle.graal.python.benchmarks.interop.PyEuler11.product:(Lorg/graalvm/polyglot/Value;)I
            invokestatic java.lang.Math.max:(II)I
            istore 1 /* max */
         9: .line 110
      StackMap locals:
      StackMap stack:
            iload 7 /* col */
            iconst_4
            iadd
            i2l
            lload 4 /* size2 */
            lcmp
            ifgt 11
        10: .line 111
            iload 1 /* max */
            aload 0 /* this */
            aload 0 /* this */
            getfield com.oracle.graal.python.benchmarks.interop.PyEuler11.sub_list2:Lorg/graalvm/polyglot/Value;
            iload 6 /* row */
            iload 7 /* col */
            invokevirtual com.oracle.graal.python.benchmarks.interop.PyEuler11.call:(Lorg/graalvm/polyglot/Value;II)Lorg/graalvm/polyglot/Value;
            invokestatic com.oracle.graal.python.benchmarks.interop.PyEuler11.product:(Lorg/graalvm/polyglot/Value;)I
            invokestatic java.lang.Math.max:(II)I
            istore 1 /* max */
        11: .line 113
      StackMap locals:
      StackMap stack:
            iload 6 /* row */
            iconst_4
            iadd
            i2l
            lload 2 /* size1 */
            lcmp
            ifgt 13
            iload 7 /* col */
            iconst_4
            iadd
            i2l
            lload 4 /* size2 */
            lcmp
            ifgt 13
        12: .line 114
            iload 1 /* max */
            aload 0 /* this */
            aload 0 /* this */
            getfield com.oracle.graal.python.benchmarks.interop.PyEuler11.sub_list3:Lorg/graalvm/polyglot/Value;
            iload 6 /* row */
            iload 7 /* col */
            invokevirtual com.oracle.graal.python.benchmarks.interop.PyEuler11.call:(Lorg/graalvm/polyglot/Value;II)Lorg/graalvm/polyglot/Value;
            invokestatic com.oracle.graal.python.benchmarks.interop.PyEuler11.product:(Lorg/graalvm/polyglot/Value;)I
            invokestatic java.lang.Math.max:(II)I
            istore 1 /* max */
        13: .line 116
      StackMap locals:
      StackMap stack:
            iload 6 /* row */
            iconst_4
            iadd
            i2l
            lload 2 /* size1 */
            lcmp
            ifgt 15
            iload 7 /* col */
            iconst_3
            if_icmplt 15
        14: .line 117
            iload 1 /* max */
            aload 0 /* this */
            aload 0 /* this */
            getfield com.oracle.graal.python.benchmarks.interop.PyEuler11.sub_list4:Lorg/graalvm/polyglot/Value;
            iload 6 /* row */
            iload 7 /* col */
            invokevirtual com.oracle.graal.python.benchmarks.interop.PyEuler11.call:(Lorg/graalvm/polyglot/Value;II)Lorg/graalvm/polyglot/Value;
            invokestatic com.oracle.graal.python.benchmarks.interop.PyEuler11.product:(Lorg/graalvm/polyglot/Value;)I
            invokestatic java.lang.Math.max:(II)I
            istore 1 /* max */
        15: .line 106
      StackMap locals:
      StackMap stack:
            iinc 7 /* col */ 1
      StackMap locals:
      StackMap stack:
        16: iload 7 /* col */
            i2l
            lload 4 /* size2 */
            lcmp
            iflt 7
        end local 7 // int col
        17: .line 105
            iinc 6 /* row */ 1
      StackMap locals:
      StackMap stack:
        18: iload 6 /* row */
            i2l
            lload 2 /* size1 */
            lcmp
            iflt 5
        end local 6 // int row
        19: .line 121
            iload 1 /* max */
            ireturn
        end local 4 // long size2
        end local 2 // long size1
        end local 1 // int max
        end local 0 // com.oracle.graal.python.benchmarks.interop.PyEuler11 this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   20     0   this  Lcom/oracle/graal/python/benchmarks/interop/PyEuler11;
            1   20     1    max  I
            2   20     2  size1  J
            3   20     4  size2  J
            4   19     6    row  I
            6   17     7    col  I

  private static int product(org.graalvm.polyglot.Value);
    descriptor: (Lorg/graalvm/polyglot/Value;)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=3, args_size=1
        start local 0 // org.graalvm.polyglot.Value seq
         0: .line 125
            iconst_1
            istore 1 /* n */
        start local 1 // int n
         1: .line 126
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         2: goto 5
         3: .line 127
      StackMap locals: int int
      StackMap stack:
            iload 1 /* n */
            aload 0 /* seq */
            iload 2 /* i */
            invokestatic com.oracle.graal.python.benchmarks.interop.PyEuler11.geti:(Lorg/graalvm/polyglot/Value;I)I
            imul
            istore 1 /* n */
         4: .line 126
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         5: iload 2 /* i */
            i2l
            aload 0 /* seq */
            invokevirtual org.graalvm.polyglot.Value.getArraySize:()J
            lcmp
            iflt 3
        end local 2 // int i
         6: .line 129
            iload 1 /* n */
            ireturn
        end local 1 // int n
        end local 0 // org.graalvm.polyglot.Value seq
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0   seq  Lorg/graalvm/polyglot/Value;
            1    7     1     n  I
            2    6     2     i  I
    MethodParameters:
      Name  Flags
      seq   

  private org.graalvm.polyglot.Value call(org.graalvm.polyglot.Value, int, int);
    descriptor: (Lorg/graalvm/polyglot/Value;II)Lorg/graalvm/polyglot/Value;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=4, args_size=4
        start local 0 // com.oracle.graal.python.benchmarks.interop.PyEuler11 this
        start local 1 // org.graalvm.polyglot.Value func
        start local 2 // int row
        start local 3 // int col
         0: .line 133
            aload 1 /* func */
            iconst_3
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            getfield com.oracle.graal.python.benchmarks.interop.PyEuler11.NUMS:Lorg/graalvm/polyglot/Value;
            aastore
            dup
            iconst_1
            aload 0 /* this */
            getfield com.oracle.graal.python.benchmarks.interop.PyEuler11.context:Lorg/graalvm/polyglot/Context;
            iload 2 /* row */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            invokevirtual org.graalvm.polyglot.Context.asValue:(Ljava/lang/Object;)Lorg/graalvm/polyglot/Value;
            aastore
            dup
            iconst_2
            aload 0 /* this */
            getfield com.oracle.graal.python.benchmarks.interop.PyEuler11.context:Lorg/graalvm/polyglot/Context;
            iload 3 /* col */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            invokevirtual org.graalvm.polyglot.Context.asValue:(Ljava/lang/Object;)Lorg/graalvm/polyglot/Value;
            aastore
            invokevirtual org.graalvm.polyglot.Value.execute:([Ljava/lang/Object;)Lorg/graalvm/polyglot/Value;
            areturn
        end local 3 // int col
        end local 2 // int row
        end local 1 // org.graalvm.polyglot.Value func
        end local 0 // com.oracle.graal.python.benchmarks.interop.PyEuler11 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/oracle/graal/python/benchmarks/interop/PyEuler11;
            0    1     1  func  Lorg/graalvm/polyglot/Value;
            0    1     2   row  I
            0    1     3   col  I
    MethodParameters:
      Name  Flags
      func  
      row   
      col   
}
SourceFile: "PyEuler11.java"