public class org.apache.commons.math3.analysis.interpolation.BicubicSplineInterpolator implements org.apache.commons.math3.analysis.interpolation.BivariateGridInterpolator
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.apache.commons.math3.analysis.interpolation.BicubicSplineInterpolator
  super_class: java.lang.Object
{
  private final boolean initializeDerivatives;
    descriptor: Z
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.apache.commons.math3.analysis.interpolation.BicubicSplineInterpolator this
         0: .line 47
            aload 0 /* this */
            iconst_0
            invokespecial org.apache.commons.math3.analysis.interpolation.BicubicSplineInterpolator.<init>:(Z)V
         1: .line 48
            return
        end local 0 // org.apache.commons.math3.analysis.interpolation.BicubicSplineInterpolator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/commons/math3/analysis/interpolation/BicubicSplineInterpolator;

  public void <init>(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.commons.math3.analysis.interpolation.BicubicSplineInterpolator this
        start local 1 // boolean initializeDerivatives
         0: .line 58
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 59
            aload 0 /* this */
            iload 1 /* initializeDerivatives */
            putfield org.apache.commons.math3.analysis.interpolation.BicubicSplineInterpolator.initializeDerivatives:Z
         2: .line 60
            return
        end local 1 // boolean initializeDerivatives
        end local 0 // org.apache.commons.math3.analysis.interpolation.BicubicSplineInterpolator this
      LocalVariableTable:
        Start  End  Slot                   Name  Signature
            0    3     0                   this  Lorg/apache/commons/math3/analysis/interpolation/BicubicSplineInterpolator;
            0    3     1  initializeDerivatives  Z
    MethodParameters:
                       Name  Flags
      initializeDerivatives  

  public org.apache.commons.math3.analysis.interpolation.BicubicSplineInterpolatingFunction interpolate(double[], double[], double[][]);
    descriptor: ([D[D[[D)Lorg/apache/commons/math3/analysis/interpolation/BicubicSplineInterpolatingFunction;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=10, locals=19, args_size=4
        start local 0 // org.apache.commons.math3.analysis.interpolation.BicubicSplineInterpolator this
        start local 1 // double[] xval
        start local 2 // double[] yval
        start local 3 // double[][] fval
         0: .line 70
            aload 1 /* xval */
            arraylength
            ifeq 1
            aload 2 /* yval */
            arraylength
            ifeq 1
            aload 3 /* fval */
            arraylength
            ifne 2
         1: .line 71
      StackMap locals:
      StackMap stack:
            new org.apache.commons.math3.exception.NoDataException
            dup
            invokespecial org.apache.commons.math3.exception.NoDataException.<init>:()V
            athrow
         2: .line 73
      StackMap locals:
      StackMap stack:
            aload 1 /* xval */
            arraylength
            aload 3 /* fval */
            arraylength
            if_icmpeq 4
         3: .line 74
            new org.apache.commons.math3.exception.DimensionMismatchException
            dup
            aload 1 /* xval */
            arraylength
            aload 3 /* fval */
            arraylength
            invokespecial org.apache.commons.math3.exception.DimensionMismatchException.<init>:(II)V
            athrow
         4: .line 77
      StackMap locals:
      StackMap stack:
            aload 1 /* xval */
            invokestatic org.apache.commons.math3.util.MathArrays.checkOrder:([D)V
         5: .line 78
            aload 2 /* yval */
            invokestatic org.apache.commons.math3.util.MathArrays.checkOrder:([D)V
         6: .line 80
            aload 1 /* xval */
            arraylength
            istore 4 /* xLen */
        start local 4 // int xLen
         7: .line 81
            aload 2 /* yval */
            arraylength
            istore 5 /* yLen */
        start local 5 // int yLen
         8: .line 87
            iload 5 /* yLen */
            iload 4 /* xLen */
            multianewarray [[D 2
            astore 6 /* fX */
        start local 6 // double[][] fX
         9: .line 88
            iconst_0
            istore 7 /* i */
        start local 7 // int i
        10: goto 19
        11: .line 89
      StackMap locals: org.apache.commons.math3.analysis.interpolation.BicubicSplineInterpolator double[] double[] double[][] int int double[][] int
      StackMap stack:
            aload 3 /* fval */
            iload 7 /* i */
            aaload
            arraylength
            iload 5 /* yLen */
            if_icmpeq 13
        12: .line 90
            new org.apache.commons.math3.exception.DimensionMismatchException
            dup
            aload 3 /* fval */
            iload 7 /* i */
            aaload
            arraylength
            iload 5 /* yLen */
            invokespecial org.apache.commons.math3.exception.DimensionMismatchException.<init>:(II)V
            athrow
        13: .line 93
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 8 /* j */
        start local 8 // int j
        14: goto 17
        15: .line 94
      StackMap locals: int
      StackMap stack:
            aload 6 /* fX */
            iload 8 /* j */
            aaload
            iload 7 /* i */
            aload 3 /* fval */
            iload 7 /* i */
            aaload
            iload 8 /* j */
            daload
            dastore
        16: .line 93
            iinc 8 /* j */ 1
      StackMap locals:
      StackMap stack:
        17: iload 8 /* j */
            iload 5 /* yLen */
            if_icmplt 15
        end local 8 // int j
        18: .line 88
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
        19: iload 7 /* i */
            iload 4 /* xLen */
            if_icmplt 11
        end local 7 // int i
        20: .line 98
            new org.apache.commons.math3.analysis.interpolation.SplineInterpolator
            dup
            invokespecial org.apache.commons.math3.analysis.interpolation.SplineInterpolator.<init>:()V
            astore 7 /* spInterpolator */
        start local 7 // org.apache.commons.math3.analysis.interpolation.SplineInterpolator spInterpolator
        21: .line 102
            iload 5 /* yLen */
            anewarray org.apache.commons.math3.analysis.polynomials.PolynomialSplineFunction
            astore 8 /* ySplineX */
        start local 8 // org.apache.commons.math3.analysis.polynomials.PolynomialSplineFunction[] ySplineX
        22: .line 103
            iconst_0
            istore 9 /* j */
        start local 9 // int j
        23: goto 26
        24: .line 104
      StackMap locals: org.apache.commons.math3.analysis.interpolation.BicubicSplineInterpolator double[] double[] double[][] int int double[][] org.apache.commons.math3.analysis.interpolation.SplineInterpolator org.apache.commons.math3.analysis.polynomials.PolynomialSplineFunction[] int
      StackMap stack:
            aload 8 /* ySplineX */
            iload 9 /* j */
            aload 7 /* spInterpolator */
            aload 1 /* xval */
            aload 6 /* fX */
            iload 9 /* j */
            aaload
            invokevirtual org.apache.commons.math3.analysis.interpolation.SplineInterpolator.interpolate:([D[D)Lorg/apache/commons/math3/analysis/polynomials/PolynomialSplineFunction;
            aastore
        25: .line 103
            iinc 9 /* j */ 1
      StackMap locals:
      StackMap stack:
        26: iload 9 /* j */
            iload 5 /* yLen */
            if_icmplt 24
        end local 9 // int j
        27: .line 109
            iload 4 /* xLen */
            anewarray org.apache.commons.math3.analysis.polynomials.PolynomialSplineFunction
            astore 9 /* xSplineY */
        start local 9 // org.apache.commons.math3.analysis.polynomials.PolynomialSplineFunction[] xSplineY
        28: .line 110
            iconst_0
            istore 10 /* i */
        start local 10 // int i
        29: goto 32
        30: .line 111
      StackMap locals: org.apache.commons.math3.analysis.interpolation.BicubicSplineInterpolator double[] double[] double[][] int int double[][] org.apache.commons.math3.analysis.interpolation.SplineInterpolator org.apache.commons.math3.analysis.polynomials.PolynomialSplineFunction[] org.apache.commons.math3.analysis.polynomials.PolynomialSplineFunction[] int
      StackMap stack:
            aload 9 /* xSplineY */
            iload 10 /* i */
            aload 7 /* spInterpolator */
            aload 2 /* yval */
            aload 3 /* fval */
            iload 10 /* i */
            aaload
            invokevirtual org.apache.commons.math3.analysis.interpolation.SplineInterpolator.interpolate:([D[D)Lorg/apache/commons/math3/analysis/polynomials/PolynomialSplineFunction;
            aastore
        31: .line 110
            iinc 10 /* i */ 1
      StackMap locals:
      StackMap stack:
        32: iload 10 /* i */
            iload 4 /* xLen */
            if_icmplt 30
        end local 10 // int i
        33: .line 115
            iload 4 /* xLen */
            iload 5 /* yLen */
            multianewarray [[D 2
            astore 10 /* dFdX */
        start local 10 // double[][] dFdX
        34: .line 116
            iconst_0
            istore 11 /* j */
        start local 11 // int j
        35: goto 43
        36: .line 117
      StackMap locals: org.apache.commons.math3.analysis.interpolation.BicubicSplineInterpolator double[] double[] double[][] int int double[][] org.apache.commons.math3.analysis.interpolation.SplineInterpolator org.apache.commons.math3.analysis.polynomials.PolynomialSplineFunction[] org.apache.commons.math3.analysis.polynomials.PolynomialSplineFunction[] double[][] int
      StackMap stack:
            aload 8 /* ySplineX */
            iload 11 /* j */
            aaload
            invokevirtual org.apache.commons.math3.analysis.polynomials.PolynomialSplineFunction.derivative:()Lorg/apache/commons/math3/analysis/UnivariateFunction;
            astore 12 /* f */
        start local 12 // org.apache.commons.math3.analysis.UnivariateFunction f
        37: .line 118
            iconst_0
            istore 13 /* i */
        start local 13 // int i
        38: goto 41
        39: .line 119
      StackMap locals: org.apache.commons.math3.analysis.UnivariateFunction int
      StackMap stack:
            aload 10 /* dFdX */
            iload 13 /* i */
            aaload
            iload 11 /* j */
            aload 12 /* f */
            aload 1 /* xval */
            iload 13 /* i */
            daload
            invokeinterface org.apache.commons.math3.analysis.UnivariateFunction.value:(D)D
            dastore
        40: .line 118
            iinc 13 /* i */ 1
      StackMap locals:
      StackMap stack:
        41: iload 13 /* i */
            iload 4 /* xLen */
            if_icmplt 39
        end local 13 // int i
        end local 12 // org.apache.commons.math3.analysis.UnivariateFunction f
        42: .line 116
            iinc 11 /* j */ 1
      StackMap locals:
      StackMap stack:
        43: iload 11 /* j */
            iload 5 /* yLen */
            if_icmplt 36
        end local 11 // int j
        44: .line 124
            iload 4 /* xLen */
            iload 5 /* yLen */
            multianewarray [[D 2
            astore 11 /* dFdY */
        start local 11 // double[][] dFdY
        45: .line 125
            iconst_0
            istore 12 /* i */
        start local 12 // int i
        46: goto 54
        47: .line 126
      StackMap locals: org.apache.commons.math3.analysis.interpolation.BicubicSplineInterpolator double[] double[] double[][] int int double[][] org.apache.commons.math3.analysis.interpolation.SplineInterpolator org.apache.commons.math3.analysis.polynomials.PolynomialSplineFunction[] org.apache.commons.math3.analysis.polynomials.PolynomialSplineFunction[] double[][] double[][] int
      StackMap stack:
            aload 9 /* xSplineY */
            iload 12 /* i */
            aaload
            invokevirtual org.apache.commons.math3.analysis.polynomials.PolynomialSplineFunction.derivative:()Lorg/apache/commons/math3/analysis/UnivariateFunction;
            astore 13 /* f */
        start local 13 // org.apache.commons.math3.analysis.UnivariateFunction f
        48: .line 127
            iconst_0
            istore 14 /* j */
        start local 14 // int j
        49: goto 52
        50: .line 128
      StackMap locals: org.apache.commons.math3.analysis.UnivariateFunction int
      StackMap stack:
            aload 11 /* dFdY */
            iload 12 /* i */
            aaload
            iload 14 /* j */
            aload 13 /* f */
            aload 2 /* yval */
            iload 14 /* j */
            daload
            invokeinterface org.apache.commons.math3.analysis.UnivariateFunction.value:(D)D
            dastore
        51: .line 127
            iinc 14 /* j */ 1
      StackMap locals:
      StackMap stack:
        52: iload 14 /* j */
            iload 5 /* yLen */
            if_icmplt 50
        end local 14 // int j
        end local 13 // org.apache.commons.math3.analysis.UnivariateFunction f
        53: .line 125
            iinc 12 /* i */ 1
      StackMap locals:
      StackMap stack:
        54: iload 12 /* i */
            iload 4 /* xLen */
            if_icmplt 47
        end local 12 // int i
        55: .line 133
            iload 4 /* xLen */
            iload 5 /* yLen */
            multianewarray [[D 2
            astore 12 /* d2FdXdY */
        start local 12 // double[][] d2FdXdY
        56: .line 134
            iconst_0
            istore 13 /* i */
        start local 13 // int i
        57: goto 71
        58: .line 135
      StackMap locals: org.apache.commons.math3.analysis.interpolation.BicubicSplineInterpolator double[] double[] double[][] int int double[][] org.apache.commons.math3.analysis.interpolation.SplineInterpolator org.apache.commons.math3.analysis.polynomials.PolynomialSplineFunction[] org.apache.commons.math3.analysis.polynomials.PolynomialSplineFunction[] double[][] double[][] double[][] int
      StackMap stack:
            aload 0 /* this */
            iload 13 /* i */
            iload 4 /* xLen */
            invokevirtual org.apache.commons.math3.analysis.interpolation.BicubicSplineInterpolator.nextIndex:(II)I
            istore 14 /* nI */
        start local 14 // int nI
        59: .line 136
            aload 0 /* this */
            iload 13 /* i */
            invokevirtual org.apache.commons.math3.analysis.interpolation.BicubicSplineInterpolator.previousIndex:(I)I
            istore 15 /* pI */
        start local 15 // int pI
        60: .line 137
            iconst_0
            istore 16 /* j */
        start local 16 // int j
        61: goto 69
        62: .line 138
      StackMap locals: int int int
      StackMap stack:
            aload 0 /* this */
            iload 16 /* j */
            iload 5 /* yLen */
            invokevirtual org.apache.commons.math3.analysis.interpolation.BicubicSplineInterpolator.nextIndex:(II)I
            istore 17 /* nJ */
        start local 17 // int nJ
        63: .line 139
            aload 0 /* this */
            iload 16 /* j */
            invokevirtual org.apache.commons.math3.analysis.interpolation.BicubicSplineInterpolator.previousIndex:(I)I
            istore 18 /* pJ */
        start local 18 // int pJ
        64: .line 140
            aload 12 /* d2FdXdY */
            iload 13 /* i */
            aaload
            iload 16 /* j */
            aload 3 /* fval */
            iload 14 /* nI */
            aaload
            iload 17 /* nJ */
            daload
            aload 3 /* fval */
            iload 14 /* nI */
            aaload
            iload 18 /* pJ */
            daload
            dsub
        65: .line 141
            aload 3 /* fval */
            iload 15 /* pI */
            aaload
            iload 17 /* nJ */
            daload
            dsub
            aload 3 /* fval */
            iload 15 /* pI */
            aaload
            iload 18 /* pJ */
            daload
            dadd
        66: .line 142
            aload 1 /* xval */
            iload 14 /* nI */
            daload
            aload 1 /* xval */
            iload 15 /* pI */
            daload
            dsub
            aload 2 /* yval */
            iload 17 /* nJ */
            daload
            aload 2 /* yval */
            iload 18 /* pJ */
            daload
            dsub
            dmul
            ddiv
        67: .line 140
            dastore
        end local 18 // int pJ
        end local 17 // int nJ
        68: .line 137
            iinc 16 /* j */ 1
      StackMap locals:
      StackMap stack:
        69: iload 16 /* j */
            iload 5 /* yLen */
            if_icmplt 62
        end local 16 // int j
        end local 15 // int pI
        end local 14 // int nI
        70: .line 134
            iinc 13 /* i */ 1
      StackMap locals:
      StackMap stack:
        71: iload 13 /* i */
            iload 4 /* xLen */
            if_icmplt 58
        end local 13 // int i
        72: .line 147
            new org.apache.commons.math3.analysis.interpolation.BicubicSplineInterpolatingFunction
            dup
            aload 1 /* xval */
            aload 2 /* yval */
            aload 3 /* fval */
        73: .line 148
            aload 10 /* dFdX */
            aload 11 /* dFdY */
            aload 12 /* d2FdXdY */
        74: .line 149
            aload 0 /* this */
            getfield org.apache.commons.math3.analysis.interpolation.BicubicSplineInterpolator.initializeDerivatives:Z
        75: .line 147
            invokespecial org.apache.commons.math3.analysis.interpolation.BicubicSplineInterpolatingFunction.<init>:([D[D[[D[[D[[D[[DZ)V
            areturn
        end local 12 // double[][] d2FdXdY
        end local 11 // double[][] dFdY
        end local 10 // double[][] dFdX
        end local 9 // org.apache.commons.math3.analysis.polynomials.PolynomialSplineFunction[] xSplineY
        end local 8 // org.apache.commons.math3.analysis.polynomials.PolynomialSplineFunction[] ySplineX
        end local 7 // org.apache.commons.math3.analysis.interpolation.SplineInterpolator spInterpolator
        end local 6 // double[][] fX
        end local 5 // int yLen
        end local 4 // int xLen
        end local 3 // double[][] fval
        end local 2 // double[] yval
        end local 1 // double[] xval
        end local 0 // org.apache.commons.math3.analysis.interpolation.BicubicSplineInterpolator this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   76     0            this  Lorg/apache/commons/math3/analysis/interpolation/BicubicSplineInterpolator;
            0   76     1            xval  [D
            0   76     2            yval  [D
            0   76     3            fval  [[D
            7   76     4            xLen  I
            8   76     5            yLen  I
            9   76     6              fX  [[D
           10   20     7               i  I
           14   18     8               j  I
           21   76     7  spInterpolator  Lorg/apache/commons/math3/analysis/interpolation/SplineInterpolator;
           22   76     8        ySplineX  [Lorg/apache/commons/math3/analysis/polynomials/PolynomialSplineFunction;
           23   27     9               j  I
           28   76     9        xSplineY  [Lorg/apache/commons/math3/analysis/polynomials/PolynomialSplineFunction;
           29   33    10               i  I
           34   76    10            dFdX  [[D
           35   44    11               j  I
           37   42    12               f  Lorg/apache/commons/math3/analysis/UnivariateFunction;
           38   42    13               i  I
           45   76    11            dFdY  [[D
           46   55    12               i  I
           48   53    13               f  Lorg/apache/commons/math3/analysis/UnivariateFunction;
           49   53    14               j  I
           56   76    12         d2FdXdY  [[D
           57   72    13               i  I
           59   70    14              nI  I
           60   70    15              pI  I
           61   70    16               j  I
           63   68    17              nJ  I
           64   68    18              pJ  I
    Exceptions:
      throws org.apache.commons.math3.exception.NoDataException, org.apache.commons.math3.exception.DimensionMismatchException, org.apache.commons.math3.exception.NonMonotonicSequenceException, org.apache.commons.math3.exception.NumberIsTooSmallException
    MethodParameters:
      Name  Flags
      xval  final
      yval  final
      fval  final

  private int nextIndex(int, int);
    descriptor: (II)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=4, args_size=3
        start local 0 // org.apache.commons.math3.analysis.interpolation.BicubicSplineInterpolator this
        start local 1 // int i
        start local 2 // int max
         0: .line 161
            iload 1 /* i */
            iconst_1
            iadd
            istore 3 /* index */
        start local 3 // int index
         1: .line 162
            iload 3 /* index */
            iload 2 /* max */
            if_icmpge 2
            iload 3 /* index */
            goto 3
      StackMap locals: int
      StackMap stack:
         2: iload 3 /* index */
            iconst_1
            isub
      StackMap locals:
      StackMap stack: int
         3: ireturn
        end local 3 // int index
        end local 2 // int max
        end local 1 // int i
        end local 0 // org.apache.commons.math3.analysis.interpolation.BicubicSplineInterpolator this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     0   this  Lorg/apache/commons/math3/analysis/interpolation/BicubicSplineInterpolator;
            0    4     1      i  I
            0    4     2    max  I
            1    4     3  index  I
    MethodParameters:
      Name  Flags
      i     
      max   

  private int previousIndex(int);
    descriptor: (I)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.apache.commons.math3.analysis.interpolation.BicubicSplineInterpolator this
        start local 1 // int i
         0: .line 173
            iload 1 /* i */
            iconst_1
            isub
            istore 2 /* index */
        start local 2 // int index
         1: .line 174
            iload 2 /* index */
            iflt 2
            iload 2 /* index */
            goto 3
      StackMap locals: int
      StackMap stack:
         2: iconst_0
      StackMap locals:
      StackMap stack: int
         3: ireturn
        end local 2 // int index
        end local 1 // int i
        end local 0 // org.apache.commons.math3.analysis.interpolation.BicubicSplineInterpolator this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    4     0   this  Lorg/apache/commons/math3/analysis/interpolation/BicubicSplineInterpolator;
            0    4     1      i  I
            1    4     2  index  I
    MethodParameters:
      Name  Flags
      i     

  public org.apache.commons.math3.analysis.BivariateFunction interpolate(double[], double[], double[][]);
    descriptor: ([D[D[[D)Lorg/apache/commons/math3/analysis/BivariateFunction;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=4, locals=4, args_size=4
         0: .line 1
            aload 0
            aload 1
            aload 2
            aload 3
            invokevirtual org.apache.commons.math3.analysis.interpolation.BicubicSplineInterpolator.interpolate:([D[D[[D)Lorg/apache/commons/math3/analysis/interpolation/BicubicSplineInterpolatingFunction;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Exceptions:
      throws org.apache.commons.math3.exception.NoDataException, org.apache.commons.math3.exception.DimensionMismatchException, org.apache.commons.math3.exception.NonMonotonicSequenceException, org.apache.commons.math3.exception.NumberIsTooSmallException
}
SourceFile: "BicubicSplineInterpolator.java"
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()