public class org.apache.commons.math3.linear.QRDecomposition
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.apache.commons.math3.linear.QRDecomposition
  super_class: java.lang.Object
{
  private double[][] qrt;
    descriptor: [[D
    flags: (0x0002) ACC_PRIVATE

  private double[] rDiag;
    descriptor: [D
    flags: (0x0002) ACC_PRIVATE

  private org.apache.commons.math3.linear.RealMatrix cachedQ;
    descriptor: Lorg/apache/commons/math3/linear/RealMatrix;
    flags: (0x0002) ACC_PRIVATE

  private org.apache.commons.math3.linear.RealMatrix cachedQT;
    descriptor: Lorg/apache/commons/math3/linear/RealMatrix;
    flags: (0x0002) ACC_PRIVATE

  private org.apache.commons.math3.linear.RealMatrix cachedR;
    descriptor: Lorg/apache/commons/math3/linear/RealMatrix;
    flags: (0x0002) ACC_PRIVATE

  private org.apache.commons.math3.linear.RealMatrix cachedH;
    descriptor: Lorg/apache/commons/math3/linear/RealMatrix;
    flags: (0x0002) ACC_PRIVATE

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

  public void <init>(org.apache.commons.math3.linear.RealMatrix);
    descriptor: (Lorg/apache/commons/math3/linear/RealMatrix;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.apache.commons.math3.linear.QRDecomposition this
        start local 1 // org.apache.commons.math3.linear.RealMatrix matrix
         0: .line 80
            aload 0 /* this */
            aload 1 /* matrix */
            dconst_0
            invokespecial org.apache.commons.math3.linear.QRDecomposition.<init>:(Lorg/apache/commons/math3/linear/RealMatrix;D)V
         1: .line 81
            return
        end local 1 // org.apache.commons.math3.linear.RealMatrix matrix
        end local 0 // org.apache.commons.math3.linear.QRDecomposition this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lorg/apache/commons/math3/linear/QRDecomposition;
            0    2     1  matrix  Lorg/apache/commons/math3/linear/RealMatrix;
    MethodParameters:
        Name  Flags
      matrix  

  public void <init>(org.apache.commons.math3.linear.RealMatrix, double);
    descriptor: (Lorg/apache/commons/math3/linear/RealMatrix;D)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=6, args_size=3
        start local 0 // org.apache.commons.math3.linear.QRDecomposition this
        start local 1 // org.apache.commons.math3.linear.RealMatrix matrix
        start local 2 // double threshold
         0: .line 89
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 91
            aload 0 /* this */
            dload 2 /* threshold */
            putfield org.apache.commons.math3.linear.QRDecomposition.threshold:D
         2: .line 93
            aload 1 /* matrix */
            invokeinterface org.apache.commons.math3.linear.RealMatrix.getRowDimension:()I
            istore 4 /* m */
        start local 4 // int m
         3: .line 94
            aload 1 /* matrix */
            invokeinterface org.apache.commons.math3.linear.RealMatrix.getColumnDimension:()I
            istore 5 /* n */
        start local 5 // int n
         4: .line 95
            aload 0 /* this */
            aload 1 /* matrix */
            invokeinterface org.apache.commons.math3.linear.RealMatrix.transpose:()Lorg/apache/commons/math3/linear/RealMatrix;
            invokeinterface org.apache.commons.math3.linear.RealMatrix.getData:()[[D
            putfield org.apache.commons.math3.linear.QRDecomposition.qrt:[[D
         5: .line 96
            aload 0 /* this */
            iload 4 /* m */
            iload 5 /* n */
            invokestatic org.apache.commons.math3.util.FastMath.min:(II)I
            newarray 7
            putfield org.apache.commons.math3.linear.QRDecomposition.rDiag:[D
         6: .line 97
            aload 0 /* this */
            aconst_null
            putfield org.apache.commons.math3.linear.QRDecomposition.cachedQ:Lorg/apache/commons/math3/linear/RealMatrix;
         7: .line 98
            aload 0 /* this */
            aconst_null
            putfield org.apache.commons.math3.linear.QRDecomposition.cachedQT:Lorg/apache/commons/math3/linear/RealMatrix;
         8: .line 99
            aload 0 /* this */
            aconst_null
            putfield org.apache.commons.math3.linear.QRDecomposition.cachedR:Lorg/apache/commons/math3/linear/RealMatrix;
         9: .line 100
            aload 0 /* this */
            aconst_null
            putfield org.apache.commons.math3.linear.QRDecomposition.cachedH:Lorg/apache/commons/math3/linear/RealMatrix;
        10: .line 102
            aload 0 /* this */
            aload 0 /* this */
            getfield org.apache.commons.math3.linear.QRDecomposition.qrt:[[D
            invokevirtual org.apache.commons.math3.linear.QRDecomposition.decompose:([[D)V
        11: .line 104
            return
        end local 5 // int n
        end local 4 // int m
        end local 2 // double threshold
        end local 1 // org.apache.commons.math3.linear.RealMatrix matrix
        end local 0 // org.apache.commons.math3.linear.QRDecomposition this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   12     0       this  Lorg/apache/commons/math3/linear/QRDecomposition;
            0   12     1     matrix  Lorg/apache/commons/math3/linear/RealMatrix;
            0   12     2  threshold  D
            3   12     4          m  I
            4   12     5          n  I
    MethodParameters:
           Name  Flags
      matrix     
      threshold  

  protected void decompose(double[][]);
    descriptor: ([[D)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // org.apache.commons.math3.linear.QRDecomposition this
        start local 1 // double[][] matrix
         0: .line 111
            iconst_0
            istore 2 /* minor */
        start local 2 // int minor
         1: goto 4
         2: .line 112
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            iload 2 /* minor */
            aload 1 /* matrix */
            invokevirtual org.apache.commons.math3.linear.QRDecomposition.performHouseholderReflection:(I[[D)V
         3: .line 111
            iinc 2 /* minor */ 1
      StackMap locals:
      StackMap stack:
         4: iload 2 /* minor */
            aload 1 /* matrix */
            arraylength
            aload 1 /* matrix */
            iconst_0
            aaload
            arraylength
            invokestatic org.apache.commons.math3.util.FastMath.min:(II)I
            if_icmplt 2
        end local 2 // int minor
         5: .line 114
            return
        end local 1 // double[][] matrix
        end local 0 // org.apache.commons.math3.linear.QRDecomposition this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    6     0    this  Lorg/apache/commons/math3/linear/QRDecomposition;
            0    6     1  matrix  [[D
            1    5     2   minor  I
    MethodParameters:
        Name  Flags
      matrix  

  protected void performHouseholderReflection(int, double[][]);
    descriptor: (I[[D)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=8, locals=13, args_size=3
        start local 0 // org.apache.commons.math3.linear.QRDecomposition this
        start local 1 // int minor
        start local 2 // double[][] matrix
         0: .line 123
            aload 2 /* matrix */
            iload 1 /* minor */
            aaload
            astore 3 /* qrtMinor */
        start local 3 // double[] qrtMinor
         1: .line 132
            dconst_0
            dstore 4 /* xNormSqr */
        start local 4 // double xNormSqr
         2: .line 133
            iload 1 /* minor */
            istore 6 /* row */
        start local 6 // int row
         3: goto 7
         4: .line 134
      StackMap locals: double[] double int
      StackMap stack:
            aload 3 /* qrtMinor */
            iload 6 /* row */
            daload
            dstore 7 /* c */
        start local 7 // double c
         5: .line 135
            dload 4 /* xNormSqr */
            dload 7 /* c */
            dload 7 /* c */
            dmul
            dadd
            dstore 4 /* xNormSqr */
        end local 7 // double c
         6: .line 133
            iinc 6 /* row */ 1
      StackMap locals:
      StackMap stack:
         7: iload 6 /* row */
            aload 3 /* qrtMinor */
            arraylength
            if_icmplt 4
        end local 6 // int row
         8: .line 137
            aload 3 /* qrtMinor */
            iload 1 /* minor */
            daload
            dconst_0
            dcmpl
            ifle 9
            dload 4 /* xNormSqr */
            invokestatic org.apache.commons.math3.util.FastMath.sqrt:(D)D
            dneg
            goto 10
      StackMap locals:
      StackMap stack:
         9: dload 4 /* xNormSqr */
            invokestatic org.apache.commons.math3.util.FastMath.sqrt:(D)D
      StackMap locals:
      StackMap stack: double
        10: dstore 6 /* a */
        start local 6 // double a
        11: .line 138
            aload 0 /* this */
            getfield org.apache.commons.math3.linear.QRDecomposition.rDiag:[D
            iload 1 /* minor */
            dload 6 /* a */
            dastore
        12: .line 140
            dload 6 /* a */
            dconst_0
            dcmpl
            ifeq 31
        13: .line 150
            aload 3 /* qrtMinor */
            iload 1 /* minor */
            dup2
            daload
            dload 6 /* a */
            dsub
            dastore
        14: .line 164
            iload 1 /* minor */
            iconst_1
            iadd
            istore 8 /* col */
        start local 8 // int col
        15: goto 30
        16: .line 165
      StackMap locals: double int
      StackMap stack:
            aload 2 /* matrix */
            iload 8 /* col */
            aaload
            astore 9 /* qrtCol */
        start local 9 // double[] qrtCol
        17: .line 166
            dconst_0
            dstore 10 /* alpha */
        start local 10 // double alpha
        18: .line 167
            iload 1 /* minor */
            istore 12 /* row */
        start local 12 // int row
        19: goto 22
        20: .line 168
      StackMap locals: double[] double int
      StackMap stack:
            dload 10 /* alpha */
            aload 9 /* qrtCol */
            iload 12 /* row */
            daload
            aload 3 /* qrtMinor */
            iload 12 /* row */
            daload
            dmul
            dsub
            dstore 10 /* alpha */
        21: .line 167
            iinc 12 /* row */ 1
      StackMap locals:
      StackMap stack:
        22: iload 12 /* row */
            aload 9 /* qrtCol */
            arraylength
            if_icmplt 20
        end local 12 // int row
        23: .line 170
            dload 10 /* alpha */
            dload 6 /* a */
            aload 3 /* qrtMinor */
            iload 1 /* minor */
            daload
            dmul
            ddiv
            dstore 10 /* alpha */
        24: .line 173
            iload 1 /* minor */
            istore 12 /* row */
        start local 12 // int row
        25: goto 28
        26: .line 174
      StackMap locals:
      StackMap stack:
            aload 9 /* qrtCol */
            iload 12 /* row */
            dup2
            daload
            dload 10 /* alpha */
            aload 3 /* qrtMinor */
            iload 12 /* row */
            daload
            dmul
            dsub
            dastore
        27: .line 173
            iinc 12 /* row */ 1
      StackMap locals:
      StackMap stack:
        28: iload 12 /* row */
            aload 9 /* qrtCol */
            arraylength
            if_icmplt 26
        end local 12 // int row
        end local 10 // double alpha
        end local 9 // double[] qrtCol
        29: .line 164
            iinc 8 /* col */ 1
      StackMap locals:
      StackMap stack:
        30: iload 8 /* col */
            aload 2 /* matrix */
            arraylength
            if_icmplt 16
        end local 8 // int col
        31: .line 178
      StackMap locals:
      StackMap stack:
            return
        end local 6 // double a
        end local 4 // double xNormSqr
        end local 3 // double[] qrtMinor
        end local 2 // double[][] matrix
        end local 1 // int minor
        end local 0 // org.apache.commons.math3.linear.QRDecomposition this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   32     0      this  Lorg/apache/commons/math3/linear/QRDecomposition;
            0   32     1     minor  I
            0   32     2    matrix  [[D
            1   32     3  qrtMinor  [D
            2   32     4  xNormSqr  D
            3    8     6       row  I
            5    6     7         c  D
           11   32     6         a  D
           15   31     8       col  I
           17   29     9    qrtCol  [D
           18   29    10     alpha  D
           19   23    12       row  I
           25   29    12       row  I
    MethodParameters:
        Name  Flags
      minor   
      matrix  

  public org.apache.commons.math3.linear.RealMatrix getR();
    descriptor: ()Lorg/apache/commons/math3/linear/RealMatrix;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=6, args_size=1
        start local 0 // org.apache.commons.math3.linear.QRDecomposition this
         0: .line 188
            aload 0 /* this */
            getfield org.apache.commons.math3.linear.QRDecomposition.cachedR:Lorg/apache/commons/math3/linear/RealMatrix;
            ifnonnull 15
         1: .line 191
            aload 0 /* this */
            getfield org.apache.commons.math3.linear.QRDecomposition.qrt:[[D
            arraylength
            istore 1 /* n */
        start local 1 // int n
         2: .line 192
            aload 0 /* this */
            getfield org.apache.commons.math3.linear.QRDecomposition.qrt:[[D
            iconst_0
            aaload
            arraylength
            istore 2 /* m */
        start local 2 // int m
         3: .line 193
            iload 2 /* m */
            iload 1 /* n */
            multianewarray [[D 2
            astore 3 /* ra */
        start local 3 // double[][] ra
         4: .line 195
            iload 2 /* m */
            iload 1 /* n */
            invokestatic org.apache.commons.math3.util.FastMath.min:(II)I
            iconst_1
            isub
            istore 4 /* row */
        start local 4 // int row
         5: goto 13
         6: .line 196
      StackMap locals: org.apache.commons.math3.linear.QRDecomposition int int double[][] int
      StackMap stack:
            aload 3 /* ra */
            iload 4 /* row */
            aaload
            iload 4 /* row */
            aload 0 /* this */
            getfield org.apache.commons.math3.linear.QRDecomposition.rDiag:[D
            iload 4 /* row */
            daload
            dastore
         7: .line 197
            iload 4 /* row */
            iconst_1
            iadd
            istore 5 /* col */
        start local 5 // int col
         8: goto 11
         9: .line 198
      StackMap locals: int
      StackMap stack:
            aload 3 /* ra */
            iload 4 /* row */
            aaload
            iload 5 /* col */
            aload 0 /* this */
            getfield org.apache.commons.math3.linear.QRDecomposition.qrt:[[D
            iload 5 /* col */
            aaload
            iload 4 /* row */
            daload
            dastore
        10: .line 197
            iinc 5 /* col */ 1
      StackMap locals:
      StackMap stack:
        11: iload 5 /* col */
            iload 1 /* n */
            if_icmplt 9
        end local 5 // int col
        12: .line 195
            iinc 4 /* row */ -1
      StackMap locals:
      StackMap stack:
        13: iload 4 /* row */
            ifge 6
        end local 4 // int row
        14: .line 201
            aload 0 /* this */
            aload 3 /* ra */
            invokestatic org.apache.commons.math3.linear.MatrixUtils.createRealMatrix:([[D)Lorg/apache/commons/math3/linear/RealMatrix;
            putfield org.apache.commons.math3.linear.QRDecomposition.cachedR:Lorg/apache/commons/math3/linear/RealMatrix;
        end local 3 // double[][] ra
        end local 2 // int m
        end local 1 // int n
        15: .line 205
      StackMap locals: org.apache.commons.math3.linear.QRDecomposition
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.commons.math3.linear.QRDecomposition.cachedR:Lorg/apache/commons/math3/linear/RealMatrix;
            areturn
        end local 0 // org.apache.commons.math3.linear.QRDecomposition this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   16     0  this  Lorg/apache/commons/math3/linear/QRDecomposition;
            2   15     1     n  I
            3   15     2     m  I
            4   15     3    ra  [[D
            5   14     4   row  I
            8   12     5   col  I

  public org.apache.commons.math3.linear.RealMatrix getQ();
    descriptor: ()Lorg/apache/commons/math3/linear/RealMatrix;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.apache.commons.math3.linear.QRDecomposition this
         0: .line 214
            aload 0 /* this */
            getfield org.apache.commons.math3.linear.QRDecomposition.cachedQ:Lorg/apache/commons/math3/linear/RealMatrix;
            ifnonnull 2
         1: .line 215
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual org.apache.commons.math3.linear.QRDecomposition.getQT:()Lorg/apache/commons/math3/linear/RealMatrix;
            invokeinterface org.apache.commons.math3.linear.RealMatrix.transpose:()Lorg/apache/commons/math3/linear/RealMatrix;
            putfield org.apache.commons.math3.linear.QRDecomposition.cachedQ:Lorg/apache/commons/math3/linear/RealMatrix;
         2: .line 217
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.commons.math3.linear.QRDecomposition.cachedQ:Lorg/apache/commons/math3/linear/RealMatrix;
            areturn
        end local 0 // org.apache.commons.math3.linear.QRDecomposition this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/apache/commons/math3/linear/QRDecomposition;

  public org.apache.commons.math3.linear.RealMatrix getQT();
    descriptor: ()Lorg/apache/commons/math3/linear/RealMatrix;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=10, args_size=1
        start local 0 // org.apache.commons.math3.linear.QRDecomposition this
         0: .line 226
            aload 0 /* this */
            getfield org.apache.commons.math3.linear.QRDecomposition.cachedQT:Lorg/apache/commons/math3/linear/RealMatrix;
            ifnonnull 33
         1: .line 229
            aload 0 /* this */
            getfield org.apache.commons.math3.linear.QRDecomposition.qrt:[[D
            arraylength
            istore 1 /* n */
        start local 1 // int n
         2: .line 230
            aload 0 /* this */
            getfield org.apache.commons.math3.linear.QRDecomposition.qrt:[[D
            iconst_0
            aaload
            arraylength
            istore 2 /* m */
        start local 2 // int m
         3: .line 231
            iload 2 /* m */
            iload 2 /* m */
            multianewarray [[D 2
            astore 3 /* qta */
        start local 3 // double[][] qta
         4: .line 238
            iload 2 /* m */
            iconst_1
            isub
            istore 4 /* minor */
        start local 4 // int minor
         5: goto 8
         6: .line 239
      StackMap locals: org.apache.commons.math3.linear.QRDecomposition int int double[][] int
      StackMap stack:
            aload 3 /* qta */
            iload 4 /* minor */
            aaload
            iload 4 /* minor */
            dconst_1
            dastore
         7: .line 238
            iinc 4 /* minor */ -1
      StackMap locals:
      StackMap stack:
         8: iload 4 /* minor */
            iload 2 /* m */
            iload 1 /* n */
            invokestatic org.apache.commons.math3.util.FastMath.min:(II)I
            if_icmpge 6
        end local 4 // int minor
         9: .line 242
            iload 2 /* m */
            iload 1 /* n */
            invokestatic org.apache.commons.math3.util.FastMath.min:(II)I
            iconst_1
            isub
            istore 4 /* minor */
        start local 4 // int minor
        10: goto 31
        11: .line 243
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.commons.math3.linear.QRDecomposition.qrt:[[D
            iload 4 /* minor */
            aaload
            astore 5 /* qrtMinor */
        start local 5 // double[] qrtMinor
        12: .line 244
            aload 3 /* qta */
            iload 4 /* minor */
            aaload
            iload 4 /* minor */
            dconst_1
            dastore
        13: .line 245
            aload 5 /* qrtMinor */
            iload 4 /* minor */
            daload
            dconst_0
            dcmpl
            ifeq 30
        14: .line 246
            iload 4 /* minor */
            istore 6 /* col */
        start local 6 // int col
        15: goto 29
        16: .line 247
      StackMap locals: double[] int
      StackMap stack:
            dconst_0
            dstore 7 /* alpha */
        start local 7 // double alpha
        17: .line 248
            iload 4 /* minor */
            istore 9 /* row */
        start local 9 // int row
        18: goto 21
        19: .line 249
      StackMap locals: double int
      StackMap stack:
            dload 7 /* alpha */
            aload 3 /* qta */
            iload 6 /* col */
            aaload
            iload 9 /* row */
            daload
            aload 5 /* qrtMinor */
            iload 9 /* row */
            daload
            dmul
            dsub
            dstore 7 /* alpha */
        20: .line 248
            iinc 9 /* row */ 1
      StackMap locals:
      StackMap stack:
        21: iload 9 /* row */
            iload 2 /* m */
            if_icmplt 19
        end local 9 // int row
        22: .line 251
            dload 7 /* alpha */
            aload 0 /* this */
            getfield org.apache.commons.math3.linear.QRDecomposition.rDiag:[D
            iload 4 /* minor */
            daload
            aload 5 /* qrtMinor */
            iload 4 /* minor */
            daload
            dmul
            ddiv
            dstore 7 /* alpha */
        23: .line 253
            iload 4 /* minor */
            istore 9 /* row */
        start local 9 // int row
        24: goto 27
        25: .line 254
      StackMap locals:
      StackMap stack:
            aload 3 /* qta */
            iload 6 /* col */
            aaload
            iload 9 /* row */
            dup2
            daload
            dload 7 /* alpha */
            dneg
            aload 5 /* qrtMinor */
            iload 9 /* row */
            daload
            dmul
            dadd
            dastore
        26: .line 253
            iinc 9 /* row */ 1
      StackMap locals:
      StackMap stack:
        27: iload 9 /* row */
            iload 2 /* m */
            if_icmplt 25
        end local 9 // int row
        end local 7 // double alpha
        28: .line 246
            iinc 6 /* col */ 1
      StackMap locals:
      StackMap stack:
        29: iload 6 /* col */
            iload 2 /* m */
            if_icmplt 16
        end local 6 // int col
        end local 5 // double[] qrtMinor
        30: .line 242
      StackMap locals:
      StackMap stack:
            iinc 4 /* minor */ -1
      StackMap locals:
      StackMap stack:
        31: iload 4 /* minor */
            ifge 11
        end local 4 // int minor
        32: .line 259
            aload 0 /* this */
            aload 3 /* qta */
            invokestatic org.apache.commons.math3.linear.MatrixUtils.createRealMatrix:([[D)Lorg/apache/commons/math3/linear/RealMatrix;
            putfield org.apache.commons.math3.linear.QRDecomposition.cachedQT:Lorg/apache/commons/math3/linear/RealMatrix;
        end local 3 // double[][] qta
        end local 2 // int m
        end local 1 // int n
        33: .line 263
      StackMap locals: org.apache.commons.math3.linear.QRDecomposition
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.commons.math3.linear.QRDecomposition.cachedQT:Lorg/apache/commons/math3/linear/RealMatrix;
            areturn
        end local 0 // org.apache.commons.math3.linear.QRDecomposition this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   34     0      this  Lorg/apache/commons/math3/linear/QRDecomposition;
            2   33     1         n  I
            3   33     2         m  I
            4   33     3       qta  [[D
            5    9     4     minor  I
           10   32     4     minor  I
           12   30     5  qrtMinor  [D
           15   30     6       col  I
           17   28     7     alpha  D
           18   22     9       row  I
           24   28     9       row  I

  public org.apache.commons.math3.linear.RealMatrix getH();
    descriptor: ()Lorg/apache/commons/math3/linear/RealMatrix;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=6, args_size=1
        start local 0 // org.apache.commons.math3.linear.QRDecomposition this
         0: .line 274
            aload 0 /* this */
            getfield org.apache.commons.math3.linear.QRDecomposition.cachedH:Lorg/apache/commons/math3/linear/RealMatrix;
            ifnonnull 14
         1: .line 276
            aload 0 /* this */
            getfield org.apache.commons.math3.linear.QRDecomposition.qrt:[[D
            arraylength
            istore 1 /* n */
        start local 1 // int n
         2: .line 277
            aload 0 /* this */
            getfield org.apache.commons.math3.linear.QRDecomposition.qrt:[[D
            iconst_0
            aaload
            arraylength
            istore 2 /* m */
        start local 2 // int m
         3: .line 278
            iload 2 /* m */
            iload 1 /* n */
            multianewarray [[D 2
            astore 3 /* ha */
        start local 3 // double[][] ha
         4: .line 279
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         5: goto 12
         6: .line 280
      StackMap locals: org.apache.commons.math3.linear.QRDecomposition int int double[][] int
      StackMap stack:
            iconst_0
            istore 5 /* j */
        start local 5 // int j
         7: goto 10
         8: .line 281
      StackMap locals: int
      StackMap stack:
            aload 3 /* ha */
            iload 4 /* i */
            aaload
            iload 5 /* j */
            aload 0 /* this */
            getfield org.apache.commons.math3.linear.QRDecomposition.qrt:[[D
            iload 5 /* j */
            aaload
            iload 4 /* i */
            daload
            aload 0 /* this */
            getfield org.apache.commons.math3.linear.QRDecomposition.rDiag:[D
            iload 5 /* j */
            daload
            dneg
            ddiv
            dastore
         9: .line 280
            iinc 5 /* j */ 1
      StackMap locals:
      StackMap stack:
        10: iload 5 /* j */
            iload 4 /* i */
            iconst_1
            iadd
            iload 1 /* n */
            invokestatic org.apache.commons.math3.util.FastMath.min:(II)I
            if_icmplt 8
        end local 5 // int j
        11: .line 279
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        12: iload 4 /* i */
            iload 2 /* m */
            if_icmplt 6
        end local 4 // int i
        13: .line 284
            aload 0 /* this */
            aload 3 /* ha */
            invokestatic org.apache.commons.math3.linear.MatrixUtils.createRealMatrix:([[D)Lorg/apache/commons/math3/linear/RealMatrix;
            putfield org.apache.commons.math3.linear.QRDecomposition.cachedH:Lorg/apache/commons/math3/linear/RealMatrix;
        end local 3 // double[][] ha
        end local 2 // int m
        end local 1 // int n
        14: .line 288
      StackMap locals: org.apache.commons.math3.linear.QRDecomposition
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.commons.math3.linear.QRDecomposition.cachedH:Lorg/apache/commons/math3/linear/RealMatrix;
            areturn
        end local 0 // org.apache.commons.math3.linear.QRDecomposition this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   15     0  this  Lorg/apache/commons/math3/linear/QRDecomposition;
            2   14     1     n  I
            3   14     2     m  I
            4   14     3    ha  [[D
            5   13     4     i  I
            7   11     5     j  I

  public org.apache.commons.math3.linear.DecompositionSolver getSolver();
    descriptor: ()Lorg/apache/commons/math3/linear/DecompositionSolver;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=1, args_size=1
        start local 0 // org.apache.commons.math3.linear.QRDecomposition this
         0: .line 304
            new org.apache.commons.math3.linear.QRDecomposition$Solver
            dup
            aload 0 /* this */
            getfield org.apache.commons.math3.linear.QRDecomposition.qrt:[[D
            aload 0 /* this */
            getfield org.apache.commons.math3.linear.QRDecomposition.rDiag:[D
            aload 0 /* this */
            getfield org.apache.commons.math3.linear.QRDecomposition.threshold:D
            invokespecial org.apache.commons.math3.linear.QRDecomposition$Solver.<init>:([[D[DD)V
            areturn
        end local 0 // org.apache.commons.math3.linear.QRDecomposition this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/commons/math3/linear/QRDecomposition;
}
SourceFile: "QRDecomposition.java"
NestMembers:
  org.apache.commons.math3.linear.QRDecomposition$Solver
InnerClasses:
  private Solver = org.apache.commons.math3.linear.QRDecomposition$Solver of org.apache.commons.math3.linear.QRDecomposition