public class org.apache.commons.math3.analysis.interpolation.LoessInterpolator implements org.apache.commons.math3.analysis.interpolation.UnivariateInterpolator, java.io.Serializable
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.apache.commons.math3.analysis.interpolation.LoessInterpolator
  super_class: java.lang.Object
{
  public static final double DEFAULT_BANDWIDTH;
    descriptor: D
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 0.3

  public static final int DEFAULT_ROBUSTNESS_ITERS;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 2

  public static final double DEFAULT_ACCURACY;
    descriptor: D
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 1.0E-12

  private static final long serialVersionUID;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 5204927143605193821

  private final double bandwidth;
    descriptor: D
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final int robustnessIters;
    descriptor: I
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final double accuracy;
    descriptor: D
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // org.apache.commons.math3.analysis.interpolation.LoessInterpolator this
         0: .line 94
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 95
            aload 0 /* this */
            ldc 0.3
            putfield org.apache.commons.math3.analysis.interpolation.LoessInterpolator.bandwidth:D
         2: .line 96
            aload 0 /* this */
            iconst_2
            putfield org.apache.commons.math3.analysis.interpolation.LoessInterpolator.robustnessIters:I
         3: .line 97
            aload 0 /* this */
            ldc 1.0E-12
            putfield org.apache.commons.math3.analysis.interpolation.LoessInterpolator.accuracy:D
         4: .line 98
            return
        end local 0 // org.apache.commons.math3.analysis.interpolation.LoessInterpolator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lorg/apache/commons/math3/analysis/interpolation/LoessInterpolator;

  public void <init>(double, int);
    descriptor: (DI)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=4, args_size=3
        start local 0 // org.apache.commons.math3.analysis.interpolation.LoessInterpolator this
        start local 1 // double bandwidth
        start local 3 // int robustnessIters
         0: .line 123
            aload 0 /* this */
            dload 1 /* bandwidth */
            iload 3 /* robustnessIters */
            ldc 1.0E-12
            invokespecial org.apache.commons.math3.analysis.interpolation.LoessInterpolator.<init>:(DID)V
         1: .line 124
            return
        end local 3 // int robustnessIters
        end local 1 // double bandwidth
        end local 0 // org.apache.commons.math3.analysis.interpolation.LoessInterpolator this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    2     0             this  Lorg/apache/commons/math3/analysis/interpolation/LoessInterpolator;
            0    2     1        bandwidth  D
            0    2     3  robustnessIters  I
    MethodParameters:
                 Name  Flags
      bandwidth        
      robustnessIters  

  public void <init>(double, int, double);
    descriptor: (DID)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=6, args_size=4
        start local 0 // org.apache.commons.math3.analysis.interpolation.LoessInterpolator this
        start local 1 // double bandwidth
        start local 3 // int robustnessIters
        start local 4 // double accuracy
         0: .line 147
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 150
            dload 1 /* bandwidth */
            dconst_0
            dcmpg
            iflt 3
         2: .line 151
            dload 1 /* bandwidth */
            dconst_1
            dcmpl
            ifle 4
         3: .line 152
      StackMap locals: org.apache.commons.math3.analysis.interpolation.LoessInterpolator double int double
      StackMap stack:
            new org.apache.commons.math3.exception.OutOfRangeException
            dup
            getstatic org.apache.commons.math3.exception.util.LocalizedFormats.BANDWIDTH:Lorg/apache/commons/math3/exception/util/LocalizedFormats;
            dload 1 /* bandwidth */
            invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
            iconst_0
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            iconst_1
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            invokespecial org.apache.commons.math3.exception.OutOfRangeException.<init>:(Lorg/apache/commons/math3/exception/util/Localizable;Ljava/lang/Number;Ljava/lang/Number;Ljava/lang/Number;)V
            athrow
         4: .line 154
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dload 1 /* bandwidth */
            putfield org.apache.commons.math3.analysis.interpolation.LoessInterpolator.bandwidth:D
         5: .line 155
            iload 3 /* robustnessIters */
            ifge 7
         6: .line 156
            new org.apache.commons.math3.exception.NotPositiveException
            dup
            getstatic org.apache.commons.math3.exception.util.LocalizedFormats.ROBUSTNESS_ITERATIONS:Lorg/apache/commons/math3/exception/util/LocalizedFormats;
            iload 3 /* robustnessIters */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            invokespecial org.apache.commons.math3.exception.NotPositiveException.<init>:(Lorg/apache/commons/math3/exception/util/Localizable;Ljava/lang/Number;)V
            athrow
         7: .line 158
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 3 /* robustnessIters */
            putfield org.apache.commons.math3.analysis.interpolation.LoessInterpolator.robustnessIters:I
         8: .line 159
            aload 0 /* this */
            dload 4 /* accuracy */
            putfield org.apache.commons.math3.analysis.interpolation.LoessInterpolator.accuracy:D
         9: .line 160
            return
        end local 4 // double accuracy
        end local 3 // int robustnessIters
        end local 1 // double bandwidth
        end local 0 // org.apache.commons.math3.analysis.interpolation.LoessInterpolator this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   10     0             this  Lorg/apache/commons/math3/analysis/interpolation/LoessInterpolator;
            0   10     1        bandwidth  D
            0   10     3  robustnessIters  I
            0   10     4         accuracy  D
    Exceptions:
      throws org.apache.commons.math3.exception.OutOfRangeException, org.apache.commons.math3.exception.NotPositiveException
    MethodParameters:
                 Name  Flags
      bandwidth        
      robustnessIters  
      accuracy         

  public final org.apache.commons.math3.analysis.polynomials.PolynomialSplineFunction interpolate(double[], double[]);
    descriptor: ([D[D)Lorg/apache/commons/math3/analysis/polynomials/PolynomialSplineFunction;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // org.apache.commons.math3.analysis.interpolation.LoessInterpolator this
        start local 1 // double[] xval
        start local 2 // double[] yval
         0: .line 190
            new org.apache.commons.math3.analysis.interpolation.SplineInterpolator
            dup
            invokespecial org.apache.commons.math3.analysis.interpolation.SplineInterpolator.<init>:()V
            aload 1 /* xval */
            aload 0 /* this */
            aload 1 /* xval */
            aload 2 /* yval */
            invokevirtual org.apache.commons.math3.analysis.interpolation.LoessInterpolator.smooth:([D[D)[D
            invokevirtual org.apache.commons.math3.analysis.interpolation.SplineInterpolator.interpolate:([D[D)Lorg/apache/commons/math3/analysis/polynomials/PolynomialSplineFunction;
            areturn
        end local 2 // double[] yval
        end local 1 // double[] xval
        end local 0 // org.apache.commons.math3.analysis.interpolation.LoessInterpolator this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/commons/math3/analysis/interpolation/LoessInterpolator;
            0    1     1  xval  [D
            0    1     2  yval  [D
    Exceptions:
      throws org.apache.commons.math3.exception.NonMonotonicSequenceException, org.apache.commons.math3.exception.DimensionMismatchException, org.apache.commons.math3.exception.NoDataException, org.apache.commons.math3.exception.NotFiniteNumberException, org.apache.commons.math3.exception.NumberIsTooSmallException
    MethodParameters:
      Name  Flags
      xval  final
      yval  final

  public final double[] smooth(double[], double[], double[]);
    descriptor: ([D[D[D)[D
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=8, locals=42, args_size=4
        start local 0 // org.apache.commons.math3.analysis.interpolation.LoessInterpolator this
        start local 1 // double[] xval
        start local 2 // double[] yval
        start local 3 // double[] weights
         0: .line 220
            aload 1 /* xval */
            arraylength
            aload 2 /* yval */
            arraylength
            if_icmpeq 2
         1: .line 221
            new org.apache.commons.math3.exception.DimensionMismatchException
            dup
            aload 1 /* xval */
            arraylength
            aload 2 /* yval */
            arraylength
            invokespecial org.apache.commons.math3.exception.DimensionMismatchException.<init>:(II)V
            athrow
         2: .line 224
      StackMap locals:
      StackMap stack:
            aload 1 /* xval */
            arraylength
            istore 4 /* n */
        start local 4 // int n
         3: .line 226
            iload 4 /* n */
            ifne 5
         4: .line 227
            new org.apache.commons.math3.exception.NoDataException
            dup
            invokespecial org.apache.commons.math3.exception.NoDataException.<init>:()V
            athrow
         5: .line 230
      StackMap locals: int
      StackMap stack:
            aload 1 /* xval */
            invokestatic org.apache.commons.math3.analysis.interpolation.LoessInterpolator.checkAllFiniteReal:([D)V
         6: .line 231
            aload 2 /* yval */
            invokestatic org.apache.commons.math3.analysis.interpolation.LoessInterpolator.checkAllFiniteReal:([D)V
         7: .line 232
            aload 3 /* weights */
            invokestatic org.apache.commons.math3.analysis.interpolation.LoessInterpolator.checkAllFiniteReal:([D)V
         8: .line 234
            aload 1 /* xval */
            invokestatic org.apache.commons.math3.util.MathArrays.checkOrder:([D)V
         9: .line 236
            iload 4 /* n */
            iconst_1
            if_icmpne 11
        10: .line 237
            iconst_1
            newarray 7
            dup
            iconst_0
            aload 2 /* yval */
            iconst_0
            daload
            dastore
            areturn
        11: .line 240
      StackMap locals:
      StackMap stack:
            iload 4 /* n */
            iconst_2
            if_icmpne 13
        12: .line 241
            iconst_2
            newarray 7
            dup
            iconst_0
            aload 2 /* yval */
            iconst_0
            daload
            dastore
            dup
            iconst_1
            aload 2 /* yval */
            iconst_1
            daload
            dastore
            areturn
        13: .line 244
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.commons.math3.analysis.interpolation.LoessInterpolator.bandwidth:D
            iload 4 /* n */
            i2d
            dmul
            d2i
            istore 5 /* bandwidthInPoints */
        start local 5 // int bandwidthInPoints
        14: .line 246
            iload 5 /* bandwidthInPoints */
            iconst_2
            if_icmpge 18
        15: .line 247
            new org.apache.commons.math3.exception.NumberIsTooSmallException
            dup
            getstatic org.apache.commons.math3.exception.util.LocalizedFormats.BANDWIDTH:Lorg/apache/commons/math3/exception/util/LocalizedFormats;
        16: .line 248
            iload 5 /* bandwidthInPoints */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            iconst_2
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            iconst_1
        17: .line 247
            invokespecial org.apache.commons.math3.exception.NumberIsTooSmallException.<init>:(Lorg/apache/commons/math3/exception/util/Localizable;Ljava/lang/Number;Ljava/lang/Number;Z)V
            athrow
        18: .line 251
      StackMap locals: int
      StackMap stack:
            iload 4 /* n */
            newarray 7
            astore 6 /* res */
        start local 6 // double[] res
        19: .line 253
            iload 4 /* n */
            newarray 7
            astore 7 /* residuals */
        start local 7 // double[] residuals
        20: .line 254
            iload 4 /* n */
            newarray 7
            astore 8 /* sortedResiduals */
        start local 8 // double[] sortedResiduals
        21: .line 256
            iload 4 /* n */
            newarray 7
            astore 9 /* robustnessWeights */
        start local 9 // double[] robustnessWeights
        22: .line 261
            aload 9 /* robustnessWeights */
            dconst_1
            invokestatic java.util.Arrays.fill:([DD)V
        23: .line 263
            iconst_0
            istore 10 /* iter */
        start local 10 // int iter
        24: goto 90
        25: .line 264
      StackMap locals: org.apache.commons.math3.analysis.interpolation.LoessInterpolator double[] double[] double[] int int double[] double[] double[] double[] int
      StackMap stack:
            iconst_2
            newarray 10
            dup
            iconst_1
            iload 5 /* bandwidthInPoints */
            iconst_1
            isub
            iastore
            astore 11 /* bandwidthInterval */
        start local 11 // int[] bandwidthInterval
        26: .line 266
            iconst_0
            istore 12 /* i */
        start local 12 // int i
        27: goto 71
        28: .line 267
      StackMap locals: int[] int
      StackMap stack:
            aload 1 /* xval */
            iload 12 /* i */
            daload
            dstore 13 /* x */
        start local 13 // double x
        29: .line 271
            iload 12 /* i */
            ifle 31
        30: .line 272
            aload 1 /* xval */
            aload 3 /* weights */
            iload 12 /* i */
            aload 11 /* bandwidthInterval */
            invokestatic org.apache.commons.math3.analysis.interpolation.LoessInterpolator.updateBandwidthInterval:([D[DI[I)V
        31: .line 275
      StackMap locals: double
      StackMap stack:
            aload 11 /* bandwidthInterval */
            iconst_0
            iaload
            istore 15 /* ileft */
        start local 15 // int ileft
        32: .line 276
            aload 11 /* bandwidthInterval */
            iconst_1
            iaload
            istore 16 /* iright */
        start local 16 // int iright
        33: .line 281
            aload 1 /* xval */
            iload 12 /* i */
            daload
            aload 1 /* xval */
            iload 15 /* ileft */
            daload
            dsub
            aload 1 /* xval */
            iload 16 /* iright */
            daload
            aload 1 /* xval */
            iload 12 /* i */
            daload
            dsub
            dcmpl
            ifle 36
        34: .line 282
            iload 15 /* ileft */
            istore 17 /* edge */
        start local 17 // int edge
        35: .line 283
            goto 37
        end local 17 // int edge
        36: .line 284
      StackMap locals: int int
      StackMap stack:
            iload 16 /* iright */
            istore 17 /* edge */
        start local 17 // int edge
        37: .line 294
      StackMap locals: int
      StackMap stack:
            dconst_0
            dstore 18 /* sumWeights */
        start local 18 // double sumWeights
        38: .line 295
            dconst_0
            dstore 20 /* sumX */
        start local 20 // double sumX
        39: .line 296
            dconst_0
            dstore 22 /* sumXSquared */
        start local 22 // double sumXSquared
        40: .line 297
            dconst_0
            dstore 24 /* sumY */
        start local 24 // double sumY
        41: .line 298
            dconst_0
            dstore 26 /* sumXY */
        start local 26 // double sumXY
        42: .line 299
            dconst_1
            aload 1 /* xval */
            iload 17 /* edge */
            daload
            dload 13 /* x */
            dsub
            ddiv
            invokestatic org.apache.commons.math3.util.FastMath.abs:(D)D
            dstore 28 /* denom */
        start local 28 // double denom
        43: .line 300
            iload 15 /* ileft */
            istore 30 /* k */
        start local 30 // int k
        44: goto 58
        45: .line 301
      StackMap locals: org.apache.commons.math3.analysis.interpolation.LoessInterpolator double[] double[] double[] int int double[] double[] double[] double[] int int[] int double int int int double double double double double double int
      StackMap stack:
            aload 1 /* xval */
            iload 30 /* k */
            daload
            dstore 31 /* xk */
        start local 31 // double xk
        46: .line 302
            aload 2 /* yval */
            iload 30 /* k */
            daload
            dstore 33 /* yk */
        start local 33 // double yk
        47: .line 303
            iload 30 /* k */
            iload 12 /* i */
            if_icmpge 48
            dload 13 /* x */
            dload 31 /* xk */
            dsub
            goto 49
      StackMap locals: double double
      StackMap stack:
        48: dload 31 /* xk */
            dload 13 /* x */
            dsub
      StackMap locals:
      StackMap stack: double
        49: dstore 35 /* dist */
        start local 35 // double dist
        50: .line 304
            dload 35 /* dist */
            dload 28 /* denom */
            dmul
            invokestatic org.apache.commons.math3.analysis.interpolation.LoessInterpolator.tricube:(D)D
            aload 9 /* robustnessWeights */
            iload 30 /* k */
            daload
            dmul
            aload 3 /* weights */
            iload 30 /* k */
            daload
            dmul
            dstore 37 /* w */
        start local 37 // double w
        51: .line 305
            dload 31 /* xk */
            dload 37 /* w */
            dmul
            dstore 39 /* xkw */
        start local 39 // double xkw
        52: .line 306
            dload 18 /* sumWeights */
            dload 37 /* w */
            dadd
            dstore 18 /* sumWeights */
        53: .line 307
            dload 20 /* sumX */
            dload 39 /* xkw */
            dadd
            dstore 20 /* sumX */
        54: .line 308
            dload 22 /* sumXSquared */
            dload 31 /* xk */
            dload 39 /* xkw */
            dmul
            dadd
            dstore 22 /* sumXSquared */
        55: .line 309
            dload 24 /* sumY */
            dload 33 /* yk */
            dload 37 /* w */
            dmul
            dadd
            dstore 24 /* sumY */
        56: .line 310
            dload 26 /* sumXY */
            dload 33 /* yk */
            dload 39 /* xkw */
            dmul
            dadd
            dstore 26 /* sumXY */
        end local 39 // double xkw
        end local 37 // double w
        end local 35 // double dist
        end local 33 // double yk
        end local 31 // double xk
        57: .line 300
            iinc 30 /* k */ 1
      StackMap locals:
      StackMap stack:
        58: iload 30 /* k */
            iload 16 /* iright */
            if_icmple 45
        end local 30 // int k
        59: .line 313
            dload 20 /* sumX */
            dload 18 /* sumWeights */
            ddiv
            dstore 30 /* meanX */
        start local 30 // double meanX
        60: .line 314
            dload 24 /* sumY */
            dload 18 /* sumWeights */
            ddiv
            dstore 32 /* meanY */
        start local 32 // double meanY
        61: .line 315
            dload 26 /* sumXY */
            dload 18 /* sumWeights */
            ddiv
            dstore 34 /* meanXY */
        start local 34 // double meanXY
        62: .line 316
            dload 22 /* sumXSquared */
            dload 18 /* sumWeights */
            ddiv
            dstore 36 /* meanXSquared */
        start local 36 // double meanXSquared
        63: .line 319
            dload 36 /* meanXSquared */
            dload 30 /* meanX */
            dload 30 /* meanX */
            dmul
            dsub
            invokestatic org.apache.commons.math3.util.FastMath.abs:(D)D
            invokestatic org.apache.commons.math3.util.FastMath.sqrt:(D)D
            aload 0 /* this */
            getfield org.apache.commons.math3.analysis.interpolation.LoessInterpolator.accuracy:D
            dcmpg
            ifge 66
        64: .line 320
            dconst_0
            dstore 38 /* beta */
        start local 38 // double beta
        65: .line 321
            goto 67
        end local 38 // double beta
        66: .line 322
      StackMap locals: org.apache.commons.math3.analysis.interpolation.LoessInterpolator double[] double[] double[] int int double[] double[] double[] double[] int int[] int double int int int double double double double double double double double double double
      StackMap stack:
            dload 34 /* meanXY */
            dload 30 /* meanX */
            dload 32 /* meanY */
            dmul
            dsub
            dload 36 /* meanXSquared */
            dload 30 /* meanX */
            dload 30 /* meanX */
            dmul
            dsub
            ddiv
            dstore 38 /* beta */
        start local 38 // double beta
        67: .line 325
      StackMap locals: double
      StackMap stack:
            dload 32 /* meanY */
            dload 38 /* beta */
            dload 30 /* meanX */
            dmul
            dsub
            dstore 40 /* alpha */
        start local 40 // double alpha
        68: .line 327
            aload 6 /* res */
            iload 12 /* i */
            dload 38 /* beta */
            dload 13 /* x */
            dmul
            dload 40 /* alpha */
            dadd
            dastore
        69: .line 328
            aload 7 /* residuals */
            iload 12 /* i */
            aload 2 /* yval */
            iload 12 /* i */
            daload
            aload 6 /* res */
            iload 12 /* i */
            daload
            dsub
            invokestatic org.apache.commons.math3.util.FastMath.abs:(D)D
            dastore
        end local 40 // double alpha
        end local 38 // double beta
        end local 36 // double meanXSquared
        end local 34 // double meanXY
        end local 32 // double meanY
        end local 30 // double meanX
        end local 28 // double denom
        end local 26 // double sumXY
        end local 24 // double sumY
        end local 22 // double sumXSquared
        end local 20 // double sumX
        end local 18 // double sumWeights
        end local 17 // int edge
        end local 16 // int iright
        end local 15 // int ileft
        end local 13 // double x
        70: .line 266
            iinc 12 /* i */ 1
      StackMap locals: org.apache.commons.math3.analysis.interpolation.LoessInterpolator double[] double[] double[] int int double[] double[] double[] double[] int int[] int
      StackMap stack:
        71: iload 12 /* i */
            iload 4 /* n */
            if_icmplt 28
        end local 12 // int i
        72: .line 333
            iload 10 /* iter */
            aload 0 /* this */
            getfield org.apache.commons.math3.analysis.interpolation.LoessInterpolator.robustnessIters:I
            if_icmpne 74
        73: .line 334
            goto 91
        74: .line 342
      StackMap locals:
      StackMap stack:
            aload 7 /* residuals */
            iconst_0
            aload 8 /* sortedResiduals */
            iconst_0
            iload 4 /* n */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        75: .line 343
            aload 8 /* sortedResiduals */
            invokestatic java.util.Arrays.sort:([D)V
        76: .line 344
            aload 8 /* sortedResiduals */
            iload 4 /* n */
            iconst_2
            idiv
            daload
            dstore 12 /* medianResidual */
        start local 12 // double medianResidual
        77: .line 346
            dload 12 /* medianResidual */
            invokestatic org.apache.commons.math3.util.FastMath.abs:(D)D
            aload 0 /* this */
            getfield org.apache.commons.math3.analysis.interpolation.LoessInterpolator.accuracy:D
            dcmpg
            ifge 79
        78: .line 347
            goto 91
        79: .line 350
      StackMap locals: double
      StackMap stack:
            iconst_0
            istore 14 /* i */
        start local 14 // int i
        80: goto 88
        81: .line 351
      StackMap locals: int
      StackMap stack:
            aload 7 /* residuals */
            iload 14 /* i */
            daload
            ldc 6.0
            dload 12 /* medianResidual */
            dmul
            ddiv
            dstore 15 /* arg */
        start local 15 // double arg
        82: .line 352
            dload 15 /* arg */
            dconst_1
            dcmpl
            iflt 85
        83: .line 353
            aload 9 /* robustnessWeights */
            iload 14 /* i */
            dconst_0
            dastore
        84: .line 354
            goto 87
        85: .line 355
      StackMap locals: double
      StackMap stack:
            dconst_1
            dload 15 /* arg */
            dload 15 /* arg */
            dmul
            dsub
            dstore 17 /* w */
        start local 17 // double w
        86: .line 356
            aload 9 /* robustnessWeights */
            iload 14 /* i */
            dload 17 /* w */
            dload 17 /* w */
            dmul
            dastore
        end local 17 // double w
        end local 15 // double arg
        87: .line 350
      StackMap locals:
      StackMap stack:
            iinc 14 /* i */ 1
      StackMap locals:
      StackMap stack:
        88: iload 14 /* i */
            iload 4 /* n */
            if_icmplt 81
        end local 14 // int i
        end local 12 // double medianResidual
        end local 11 // int[] bandwidthInterval
        89: .line 263
            iinc 10 /* iter */ 1
      StackMap locals:
      StackMap stack:
        90: iload 10 /* iter */
            aload 0 /* this */
            getfield org.apache.commons.math3.analysis.interpolation.LoessInterpolator.robustnessIters:I
            if_icmple 25
        end local 10 // int iter
        91: .line 361
      StackMap locals:
      StackMap stack:
            aload 6 /* res */
            areturn
        end local 9 // double[] robustnessWeights
        end local 8 // double[] sortedResiduals
        end local 7 // double[] residuals
        end local 6 // double[] res
        end local 5 // int bandwidthInPoints
        end local 4 // int n
        end local 3 // double[] weights
        end local 2 // double[] yval
        end local 1 // double[] xval
        end local 0 // org.apache.commons.math3.analysis.interpolation.LoessInterpolator this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   92     0               this  Lorg/apache/commons/math3/analysis/interpolation/LoessInterpolator;
            0   92     1               xval  [D
            0   92     2               yval  [D
            0   92     3            weights  [D
            3   92     4                  n  I
           14   92     5  bandwidthInPoints  I
           19   92     6                res  [D
           20   92     7          residuals  [D
           21   92     8    sortedResiduals  [D
           22   92     9  robustnessWeights  [D
           24   91    10               iter  I
           26   89    11  bandwidthInterval  [I
           27   72    12                  i  I
           29   70    13                  x  D
           32   70    15              ileft  I
           33   70    16             iright  I
           35   36    17               edge  I
           37   70    17               edge  I
           38   70    18         sumWeights  D
           39   70    20               sumX  D
           40   70    22        sumXSquared  D
           41   70    24               sumY  D
           42   70    26              sumXY  D
           43   70    28              denom  D
           44   59    30                  k  I
           46   57    31                 xk  D
           47   57    33                 yk  D
           50   57    35               dist  D
           51   57    37                  w  D
           52   57    39                xkw  D
           60   70    30              meanX  D
           61   70    32              meanY  D
           62   70    34             meanXY  D
           63   70    36       meanXSquared  D
           65   66    38               beta  D
           67   70    38               beta  D
           68   70    40              alpha  D
           77   89    12     medianResidual  D
           80   89    14                  i  I
           82   87    15                arg  D
           86   87    17                  w  D
    Exceptions:
      throws org.apache.commons.math3.exception.NonMonotonicSequenceException, org.apache.commons.math3.exception.DimensionMismatchException, org.apache.commons.math3.exception.NoDataException, org.apache.commons.math3.exception.NotFiniteNumberException, org.apache.commons.math3.exception.NumberIsTooSmallException
    MethodParameters:
         Name  Flags
      xval     final
      yval     final
      weights  final

  public final double[] smooth(double[], double[]);
    descriptor: ([D[D)[D
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // org.apache.commons.math3.analysis.interpolation.LoessInterpolator this
        start local 1 // double[] xval
        start local 2 // double[] yval
         0: .line 387
            aload 1 /* xval */
            arraylength
            aload 2 /* yval */
            arraylength
            if_icmpeq 2
         1: .line 388
            new org.apache.commons.math3.exception.DimensionMismatchException
            dup
            aload 1 /* xval */
            arraylength
            aload 2 /* yval */
            arraylength
            invokespecial org.apache.commons.math3.exception.DimensionMismatchException.<init>:(II)V
            athrow
         2: .line 391
      StackMap locals:
      StackMap stack:
            aload 1 /* xval */
            arraylength
            newarray 7
            astore 3 /* unitWeights */
        start local 3 // double[] unitWeights
         3: .line 392
            aload 3 /* unitWeights */
            dconst_1
            invokestatic java.util.Arrays.fill:([DD)V
         4: .line 394
            aload 0 /* this */
            aload 1 /* xval */
            aload 2 /* yval */
            aload 3 /* unitWeights */
            invokevirtual org.apache.commons.math3.analysis.interpolation.LoessInterpolator.smooth:([D[D[D)[D
            areturn
        end local 3 // double[] unitWeights
        end local 2 // double[] yval
        end local 1 // double[] xval
        end local 0 // org.apache.commons.math3.analysis.interpolation.LoessInterpolator this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    5     0         this  Lorg/apache/commons/math3/analysis/interpolation/LoessInterpolator;
            0    5     1         xval  [D
            0    5     2         yval  [D
            3    5     3  unitWeights  [D
    Exceptions:
      throws org.apache.commons.math3.exception.NonMonotonicSequenceException, org.apache.commons.math3.exception.DimensionMismatchException, org.apache.commons.math3.exception.NoDataException, org.apache.commons.math3.exception.NotFiniteNumberException, org.apache.commons.math3.exception.NumberIsTooSmallException
    MethodParameters:
      Name  Flags
      xval  final
      yval  final

  private static void updateBandwidthInterval(double[], double[], int, int[]);
    descriptor: ([D[DI[I)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=6, locals=8, args_size=4
        start local 0 // double[] xval
        start local 1 // double[] weights
        start local 2 // int i
        start local 3 // int[] bandwidthInterval
         0: .line 415
            aload 3 /* bandwidthInterval */
            iconst_0
            iaload
            istore 4 /* left */
        start local 4 // int left
         1: .line 416
            aload 3 /* bandwidthInterval */
            iconst_1
            iaload
            istore 5 /* right */
        start local 5 // int right
         2: .line 420
            aload 1 /* weights */
            iload 5 /* right */
            invokestatic org.apache.commons.math3.analysis.interpolation.LoessInterpolator.nextNonzero:([DI)I
            istore 6 /* nextRight */
        start local 6 // int nextRight
         3: .line 421
            iload 6 /* nextRight */
            aload 0 /* xval */
            arraylength
            if_icmpge 7
            aload 0 /* xval */
            iload 6 /* nextRight */
            daload
            aload 0 /* xval */
            iload 2 /* i */
            daload
            dsub
            aload 0 /* xval */
            iload 2 /* i */
            daload
            aload 0 /* xval */
            iload 4 /* left */
            daload
            dsub
            dcmpg
            ifge 7
         4: .line 422
            aload 1 /* weights */
            aload 3 /* bandwidthInterval */
            iconst_0
            iaload
            invokestatic org.apache.commons.math3.analysis.interpolation.LoessInterpolator.nextNonzero:([DI)I
            istore 7 /* nextLeft */
        start local 7 // int nextLeft
         5: .line 423
            aload 3 /* bandwidthInterval */
            iconst_0
            iload 7 /* nextLeft */
            iastore
         6: .line 424
            aload 3 /* bandwidthInterval */
            iconst_1
            iload 6 /* nextRight */
            iastore
        end local 7 // int nextLeft
         7: .line 426
      StackMap locals: int int int
      StackMap stack:
            return
        end local 6 // int nextRight
        end local 5 // int right
        end local 4 // int left
        end local 3 // int[] bandwidthInterval
        end local 2 // int i
        end local 1 // double[] weights
        end local 0 // double[] xval
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    8     0               xval  [D
            0    8     1            weights  [D
            0    8     2                  i  I
            0    8     3  bandwidthInterval  [I
            1    8     4               left  I
            2    8     5              right  I
            3    8     6          nextRight  I
            5    7     7           nextLeft  I
    MethodParameters:
                   Name  Flags
      xval               final
      weights            final
      i                  final
      bandwidthInterval  final

  private static int nextNonzero(double[], int);
    descriptor: ([DI)I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // double[] weights
        start local 1 // int i
         0: .line 437
            iload 1 /* i */
            iconst_1
            iadd
            istore 2 /* j */
        start local 2 // int j
         1: .line 438
            goto 3
         2: .line 439
      StackMap locals: int
      StackMap stack:
            iinc 2 /* j */ 1
         3: .line 438
      StackMap locals:
      StackMap stack:
            iload 2 /* j */
            aload 0 /* weights */
            arraylength
            if_icmpge 4
            aload 0 /* weights */
            iload 2 /* j */
            daload
            dconst_0
            dcmpl
            ifeq 2
         4: .line 441
      StackMap locals:
      StackMap stack:
            iload 2 /* j */
            ireturn
        end local 2 // int j
        end local 1 // int i
        end local 0 // double[] weights
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0  weights  [D
            0    5     1        i  I
            1    5     2        j  I
    MethodParameters:
         Name  Flags
      weights  final
      i        final

  private static double tricube(double);
    descriptor: (D)D
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=6, locals=6, args_size=1
        start local 0 // double x
         0: .line 453
            dload 0 /* x */
            invokestatic org.apache.commons.math3.util.FastMath.abs:(D)D
            dstore 2 /* absX */
        start local 2 // double absX
         1: .line 454
            dload 2 /* absX */
            dconst_1
            dcmpl
            iflt 3
         2: .line 455
            dconst_0
            dreturn
         3: .line 457
      StackMap locals: double
      StackMap stack:
            dconst_1
            dload 2 /* absX */
            dload 2 /* absX */
            dmul
            dload 2 /* absX */
            dmul
            dsub
            dstore 4 /* tmp */
        start local 4 // double tmp
         4: .line 458
            dload 4 /* tmp */
            dload 4 /* tmp */
            dmul
            dload 4 /* tmp */
            dmul
            dreturn
        end local 4 // double tmp
        end local 2 // double absX
        end local 0 // double x
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0     x  D
            1    5     2  absX  D
            4    5     4   tmp  D
    MethodParameters:
      Name  Flags
      x     final

  private static void checkAllFiniteReal(double[]);
    descriptor: ([D)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // double[] values
         0: .line 469
            iconst_0
            istore 1 /* i */
        start local 1 // int i
         1: goto 4
         2: .line 470
      StackMap locals: int
      StackMap stack:
            aload 0 /* values */
            iload 1 /* i */
            daload
            invokestatic org.apache.commons.math3.util.MathUtils.checkFinite:(D)V
         3: .line 469
            iinc 1 /* i */ 1
      StackMap locals:
      StackMap stack:
         4: iload 1 /* i */
            aload 0 /* values */
            arraylength
            if_icmplt 2
        end local 1 // int i
         5: .line 472
            return
        end local 0 // double[] values
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    6     0  values  [D
            1    5     1       i  I
    MethodParameters:
        Name  Flags
      values  final

  public org.apache.commons.math3.analysis.UnivariateFunction interpolate(double[], double[]);
    descriptor: ([D[D)Lorg/apache/commons/math3/analysis/UnivariateFunction;
    flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
    Code:
      stack=3, locals=3, args_size=3
         0: .line 1
            aload 0
            aload 1
            aload 2
            invokevirtual org.apache.commons.math3.analysis.interpolation.LoessInterpolator.interpolate:([D[D)Lorg/apache/commons/math3/analysis/polynomials/PolynomialSplineFunction;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
    Exceptions:
      throws org.apache.commons.math3.exception.MathIllegalArgumentException, org.apache.commons.math3.exception.DimensionMismatchException
}
SourceFile: "LoessInterpolator.java"