4 Of          ! "# $ % &'( ) * +, - ./ +" + "0 123 4 5 6 7 8 9 :; )< )= )>?@ )ABC 2D 2E F GH I J KLM N O  P QR S T U V W  X Y Z[ \] ID ^ )_`ab cd ef g hi jk lmn V V o p q  r  stu ^)vImmutableMatrix InnerClassesEigenvalueDecompositioncoords[[DMIN(II)VCodeLineNumberTableLocalVariableTablejithisLProGAL/math/Matrix; StackMapTable#([[D)V(III)VseedrLjava/util/Random;set(IID)VcvDget(II)D getCoords()[[DretgetM()IgetNgetRow(I)LProGAL/geomNd/Vector;LProGAL/geomNd/Vector; getColumnsetRow(ILProGAL/geomNd/Vector;)V setColumn getSubmatrix(IIII)LProGAL/math/Matrix;i1i2j1j2X setSubmatrix(IILProGAL/math/Matrix;)V getTranspose()LProGAL/math/Matrix; newCoords transpose multiplyIn.(LProGAL/geomNd/Vector;)LProGAL/geomNd/Vector;[Dmultiply,(LProGAL/geomNd/Point;)LProGAL/geomNd/Point;pLProGAL/geomNd/Point;,(LProGAL/geom3d/Point;)LProGAL/geom3d/Point;LProGAL/geom3d/Point;.(LProGAL/geom3d/Vector;)LProGAL/geom3d/Vector;LProGAL/geom3d/Vector; multiplyThis*(LProGAL/math/Matrix;)LProGAL/math/Matrix;mmultiply_StrassenBextAextBmultiply_Strassen_regularCA11A12A21A22B11B12B21B22M1M2M3M4M5M6M7addaddThissubtract subtractThis(D)LProGAL/math/Matrix;scalarminor(II)LProGAL/math/Matrix; determinant()DisSquare()ZextendexpandextYinvert invertThistmpreduce reduceThistmpArrrowCountcolCountleadorthonormalizeThisaibs[LProGAL/geomNd/Vector;bSqequals(LProGAL/math/Matrix;)Z(Ljava/lang/Object;)ZoLjava/lang/Object;getEigenvalueDecomposition.()LProGAL/math/Matrix$EigenvalueDecomposition;toString()Ljava/lang/String;(I)Ljava/lang/String;decsbLjava/lang/StringBuilder;; toConsole()V(I)VclonecreateRandomMatrix(I)LProGAL/math/Matrix;ncreateIdentityMatrixcreateColumnMatrix[(LProGAL/geom3d/Vector;LProGAL/geom3d/Vector;LProGAL/geom3d/Vector;)LProGAL/math/Matrix3x3;v1v2v3LProGAL/math/Matrix3x3;ncreate4x4ColumnMatrixn(LProGAL/geom3d/Vector;LProGAL/geom3d/Vector;LProGAL/geom3d/Vector;LProGAL/geom3d/Vector;)LProGAL/math/Matrix;v4createRowMatrixcreateRotationMatrix-(DLProGAL/geom3d/Vector;)LProGAL/math/Matrix;angleuxuyuzcosAsinA getMatrix([III)LProGAL/math/Matrix;e*Ljava/lang/ArrayIndexOutOfBoundsException;[Ij0t()Ljava/lang/Object; Exceptionsw SourceFile Matrix.java j ef gh ihjava/util/Random jx yProGAL/geomNd/Vector j {z {| }~ ProGAL/math/Matrix jk ju java/lang/ErrorDimensions dont match j   ProGAL/geom3d/PointProGAL/geom3d/Vector j2Can only apply 3x3, 3x4 or 4x4 matrices to vectorsIncompatible matrix sizes {|java/lang/StringBuilder"The minor matrix is undefined for  x matrices +Determinant undefined for non-square matrixProGAL/math/LUDecomposition j    Cant invert non-square matrix ()         *ProGAL/math/Matrix$EigenvalueDecomposition % 9.fjava/lang/Object      ProGAL/math/Matrix3x3 ?    (java/lang/ArrayIndexOutOfBoundsExceptionSubmatrix indices"ProGAL/math/Matrix$ImmutableMatrix$java/lang/CloneNotSupportedException(J)V nextDouble(ID)V getDimensionsjava/lang/Mathmin(II)I(I)D(Ljava/lang/String;)V setCoords([D)VProGAL/geomNd/Point()LProGAL/geomNd/Point;()LProGAL/geom3d/Point;(DDD)Vappend-(Ljava/lang/String;)Ljava/lang/StringBuilder;(I)Ljava/lang/StringBuilder;(LProGAL/math/Matrix;)VdetProGAL/math/FunctionsroundUpToPowerOf2(I)Iabs(D)DProGAL/math/ConstantsEPSILON()LProGAL/geomNd/Vector;dot(LProGAL/geomNd/Vector;)D(D)LProGAL/geomNd/Vector;sqrt divideThisjava/util/Arrays([D[D)Z(C)Ljava/lang/StringBuilder;java/lang/DoublevalueOf(D)Ljava/lang/Double;java/lang/Stringformat9(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;java/lang/SystemoutLjava/io/PrintStream;java/io/PrintStreamprintProGAL/math/Randomization randBetween(DD)Dyzcossin!Oefghih9jkl?**>"6*2R**m49>n4oh$ph?qr?gh?ihstjul#**+** +2*+m "n#qr#efs#ttttjvlQ**Y:6'6*2R**m !"#F$K%P&nH%oh*phQqrQghQihQwh8xystz{|lV *2)Rm ) *n* qr xh }h ~lG *21m-n  qr ph ohl<**L=*&>*+2*21R+m1 23!4.342:7n*oh+ph<qr /fs l/*m:n qrl/*m;n qrl+ Y* M>*,*21 ,m@ A)Bn*}h+qr+xh s l+ Y* M>*,*21 ,mF G)Hn*xh+qr+}h s l%>, * *2,RmLML$On*"}h%qr%xh%~s !l%>, * *2,RmRSR$Un*"xh%qr%}h%~s !lOYdd:6d46d"2*`2`1RۄmYZZL\nR(oh9phOqrOhOhOhOh?rst 'l=6-36-!*`2`-21R܄ʱm` a6`<bn>'oh9ph=qr=h=h=grs &lC**L=*&>*+2*21RػY+mg hi4h:jn*oh+phCqr 6fs l/*mnn qrl[*+ Y*M>*16*,\1*21+kcRބ+,+m& stu&v2wHvNuTzY{n4)%}h6xh[qr[~?s $l= *+mn qr l@ *+mn qr lY*M>*16*,\1+*21kcRބ>*+,1+m* 39?IQWn>%}h 6xhAxhYqrYRs  $l*R*JM>.6,\1+*21kcRӻY,1,1,1* *`*XM><6,\1+*21kcR,\1*21cRŻY,1,1,1Y mJ$:@FWosznR"oh0phC}"ohu>phsQqr~s+ ! !ll**M>*Q6*?,2R6*&,2\1*21+21kcRׄ*,*m& #*Y_ejn>-,phE}hVxhlqrlr _fs +l7*+ Y!Y*+M,N6*L6+:6*(-2\1*21+21kcRՄÄ,m2 %*6BNmsynHE.ph9@}h-Rxhqrr%\r*Wfst  -l%*+ Y!*"M+"N,-#mn*%qr%r rrslY**M*,2*21+21kR,**l*l$N**l*l*$:**l**l$:**l**l*$:+*l*l$:+*l*l*$:+*l**l$: +*l**l*$: -% %#: %#: - &#:  &#:-% #:-&%#:&  %#:, %&%',*l %',*l %',*l*l  & %%',mb13F]t %2DWn nqrrrFor]XrtAr'rrrr r r  r r %r2rDqrW^rs3tlNY**M>*56*#,*21+21c(ڄ,mLn4)oh:phNqrNr>rst (l5=*,>**2\1+21cR*m 3n* !oh1ph5qr5rs  lNY**M>*56*#,*21+21g(ڄ,mLn4)oh:phNqrNr>rst (l5=*,>**2\1+21gR*m #3$n* !oh1ph5qr5rs  lJY**N6*/6*-*21'k(-m)*H+n4#oh5phJqrJ:rst "l1>*(6**2\1'kR*m 0/1n* oh-ph1qr1s l* *2Y)Y*+,*-.,*-/,0Y*d*dN6*dI6*d5-* `2 `1(Ƅ-mGH?JSKaLKNn>d=ohVQphqrxh}hSVrs{ .t  tttttt tttttt ln2** Y1* *212Y*34mST&Un 2qrslF**mYn qrs@lU**IY**L+*'*=*">*+2RܧFY**L+*'*=*">*+2R+m2 _ `a"b/cHbQgahhiujilnH1oh''ph6rwphm'ohqra5rs' 't t l5{*5L+6=YN-+'6+&+6-2R+6#6-2R-mqr stuMvywnR0oh!,ph\ohS&ph{qrvr nhdrs,!tttlB *7L+8m |}n qrrlh*92Y)Y*:,*-.,*-;,0Y**hL=*1>*+*<(+*`(+=W=**>**+*`<(*m2 6HRnzn>T}hJ6xh}h/xhqrHprs" 6t  lH *7L+=W+m n qrrl" *<*=>6*6*21>?6*#*2:**2S*S*2196*2*2\1oR6K>*2196*2#*2\1*21kgRք*mv   36<@CHJQZhq|nf Z"}h-}h ph|yxhqrh h hs+ t )& !,l* L+*@S*M>*V*@:+AS,d+d2+d2BR6&+2+2+2Bw,1oCDWڄ,*d+*d2+*d2BR>*A,1+2,1EFW6**2+2R*mJ!(0BntnRE)oh(F[ph xhFphqrs( +(l3*+=**2+2Gm +1n "xh3qr3rs  lS+ *+Hm nqrsl3 IY*Jmn  qrl0*Kmn qrl~)Y*M>*j,|LW6*C,)Y*M,-N,0OY*21PSQ,W, LW,|LW, LW,0m. %X_elsyn4Ioh oph~qr~hvs Hl0*Rmn qrlD S*KTm  n qr hlBY**L=*)>*+2*21R+m  $ 4 @ n*}h.xhBqr2rst  l3YL=#>+2UR+m %+1n*oh %ph3h )rs t lz"YL=+2R+m  n  ph"h rs  t ldVYWN6-X2*R6-X2+R6-X2,R-m !&"D#b$nH ph)phGphddd\s  lMY:62*R62+R62,R62-R2Rm' (*)I*h+,-n\ ph-phLphkph rs!t ldVYWN6-X2*R6-X2+R6-X2,R-m01&2D3b4nH ph)phGphddd\s  l ,YJ,Z9,[9&\9 &]9 VYW:  2))k ))kgkcR 2)k gk kcR 2)k gk kgR 2)k gk kgR 2k kgkcR 2k gk) kcR 2)k gk kcR 2k gk) kgR 2k kgkcR mB9: ;<=?&@;ASBkDEFHIJKnR~   &r   l)^Y+d`::6+.62d*+.21Rѧ:^Y_`LO^m. {|~!*@F~LOQ[n\ $"oh2phQ   ^qr^x ^h^hNrGfst !B Al/*7m n qrcab Id