Êþº¾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;[DŸmultiply,(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;bSqÝequals(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 yÊProGAL/geomNd/Vector jð {z {†| }~ €ProGAL/math/Matrix jk ju ™šjava/lang/ErrorDimensions dont match j€ �‚ƒ ñ„ �¢ ñ…ProGAL/geom3d/PointProGAL/geom3d/Vector j†2Can 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?ihsÿtüúújul�#*·*+¾µ**´ž +2¾§µ*+µ±m "n#qr#efs#ÿttÿttjvlòQ*·*ŵ»Y…·:6¢'6¢*´2¶R„§ÿè„§ÿÙ*µ*µ±m !"#F$K%P&nH%oh*phQqrQghQihQwh8xysÿtzüúú{|lV *´2)R±m ) *n* qr xh }h ~€�lG *´21¯m-n  qr ph oh‚ƒlµ<*´*´ÅL=*´¢&>*´¢+2*´21R„§ÿè„§ÿØ+°m1 23!4.342:7n*oh+ph<qr /„fsýü úú…†l/*´¬m:n qr‡†l/*´¬m;n qrˆ‰l�+» Y*´· M>*´¢,*´21¶ „§ÿè,°m@ A)Bn*}h+qr+xh „Šs ý‹úŒ‰l�+» Y*´· M>*´¢,*´21¶ „§ÿè,°mF G)Hn*xh+qr+}h „Šs ý‹ú�Žlˆ%>,¶ *´¸ ¢*´2,¶R„§ÿá±mLML$On*"}h%qr%xh%~Šs üú!�Žlˆ%>,¶ *´¸ ¢*´2,¶R„§ÿá±mRSR$Un*"xh%qr%}h%~Šs üú!�‘lèO»Ydd·:6d¢46d¢"´2*´`2`1R„§ÿÛ„§ÿʰmYZZL\nR(oh9phOqrO’hO“hO”hO•h?–rsýtü ú'ú—˜l»=6-´¢36-´¢!*´`2`-´21R„§ÿÜ„§ÿʱm` a6`<bn>'oh9ph=qr=’h=”h=grsüü ú&ú™šl´C*´*´ÅL=*´¢&>*´¢+2*´21R„§ÿè„§ÿØ»Y+·°mg hi4h:jn*oh+phCqr 6›fsýü úúœšl/*¶°mnn qr�žlç[*´+¶ Ÿ »Y·¿*´¼M>*´¢16*´¢,\1*´21+¶kcR„§ÿÞ„§ÿÍ+,¶+°m& stu&v2wHvNuTzY{n4)%}h6xh[qr[~Š?›Ÿsý ü ú$ú¡¢l= *+¶¶°mšn qr £¤¡¥l@ *+¶¶À°mžn qr £¦�¢lùY*´¼M>*´¢16*´¢,\1+¶*´21kcR„§ÿÞ„§ÿÍ>*´¢+,1¶„§ÿí+°m* ¥¦§¨3§9¦?ªI«QªW­n>%}h 6xhAxhYqrY£¤R„Ÿsý  ü ú$úüú¡§l³Î*´ R*´ J¼M>¢.6¢,\1+¶*´21kcR„§ÿá„§ÿÓ»Y,1,1,1·°*´Ÿ *´ `*´ X¼M>¢<6¢,\1+¶*´21kcR„§ÿá,\1*´21cR„§ÿÅ»Y,1,1,1·°»Y ·¿mJ´µ¶·$¸:·@¶FºW¼o½s¾z¿ƒÀ™¿ŸÁ­¾³ÃÄÅnR"oh0phC„Ÿ}"ohu>phsQ„ŸÎqrÎ~¨s+ ý üú!úúý  üú!úú©ªll*´*´ÅM>*´¢Q6*´¢?,2R6*´¢&,2\1*´21+´21kcR„§ÿׄ§ÿ¾„§ÿ­*,µ*°m& Ê ËÌ#Í*ÎYÌ_ËeÑjÒn>-,phE}hVxhlqrl«r _›fsýü üú+úú¡ªl7�*´+´Ÿ »Y!·¿»Y*´+´·M,´N6*´¢L6+´¢:6*´¢(-2\1*´21+´21kcR„§ÿÕ„§ÿħÿ±,°m2 × ØÙ%Ú*Û6ÜBÝNÞmÝsÜyÛánHE.ph9@}h-Rxh�qr�«r%\„r*W›fsþtü ü ú-úú¬ªl‚%*´+´Ÿ »Y!·¿*¶"M+¶"N,-·#°måçèén*%qr%­r ®r¯rs°ªlóµ»Y*´*´·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  ¶& ¶%¶%¶',°mbìíî1ï3òFó]ôtõŽö¢÷¹øÐùêüüý þÿ%2DWn€’³ n¶µqrµ­r¥±rFo²r]X³rtA´rŽ'µr¢¶r¹ü·rÐå¸r ê˹r ü¹ºr  «»r ž¼r %�½r2ƒ¾rDq¿rW^Àrsü3tÁªlÁN»Y*´*´·M>*´¢56*´¢#,*´21+´21c¶(„§ÿÚ„§ÿÉ,°mLn4)oh:phNqrN«r>„rsýtü ú(úªl—5=*´¢,>*´¢*´2\1+´21cR„§ÿâ„§ÿÒ*°m 3n* !oh1ph5qr5«rsüü ú úêlÁN»Y*´*´·M>*´¢56*´¢#,*´21+´21g¶(„§ÿÚ„§ÿÉ,°mLn4)oh:phNqrN«r>„rsýtü ú(úĪl—5=*´¢,>*´¢*´2\1+´21gR„§ÿâ„§ÿÒ*°m #3$n* !oh1ph5qr5«rsüü ú ú¡Ål½J»Y*´*´·N6*´¢/6*´¢-*´21'k¶(„§ÿà„§ÿÎ-°m)*H+n4#oh5phJqrJÆ:„rsýtü ú"ú©Ål“1>*´¢(6*´¢*´2\1'kR„§ÿç„§ÿÖ*°m 0/1n* oh-ph1qr1Æsüü úúÇÈlž©*´¡ *´¢2»Y»)Y·*+¶,*´¶-.¶,*´¶-/¶,¶0·¿»Y*´d*´d·N6*´d¢I6*´d¢5-*´¡ `§2¡ `§1¶(„§ÿÆ„§ÿ²-°mGH?JSKaL¡K§Nn>d=ohVQph©qr©xh©}hSV„rs{ .ýtü ÿ tttÿtttÿ ttt ÿttt ú úÉÊln2*´*´Ÿ »Y1·¿*´  *´21¯»2Y*·3¶4¯mST&Un 2qrsËÌlF*´*´ §¬mYn qrs@ÍšlU–*´*´¢I»Y*´*´·L+*¶'*´=*´¢">*´¢+´2R„§ÿì„§ÿܧF»Y*´*´·L+*¶'*´=*´¢">*´¢+´2R„§ÿì„§ÿÜ+°m2 _ `a"b/cHbQgahhiujŽi”lnH1oh''ph6–rwphm'oh–qra5–rs' ý'tü úúúýtü úúΚl5{*¶5L+´¸6=»Y·N-+¶'6+´¢&+´6¢-´2R„§ÿì„§ÿ×+´6¢#6¢-´2R„§ÿì„§ÿÝ-°mqr stuMvywnR0oh!,ph\ohS&ph{qrv–r nÏhdÐrs,ÿ!tttüúúüüúúÑšlB *¶7L+¶8°m |}n qr„rÒšlh¸*¶9š2»Y»)Y·*:¶,*´¶-.¶,*´¶-;¶,¶0·¿»Y*´*´h·L=*´¢1>*´¢+*¶<¶(„§ÿé+*´`¶(„§ÿÍ+¶=W=*´¢*>*´¢*+*´`¶<¶(„§ÿä„§ÿÔ*°m2 ‚ƒ6„H…R†n‡z…€‰…‹�Œ°‹¶Žn>T}hJ6xh‘}h‡/xh¸qrHpÓrs" 6ýtü úúüü úúÔšlH *¶7L+¶=W+°m”• –n qr„rÕšl" ý*´<*´=>6¢é¡*°6*´21¸>²?˜�„ ÿç6„ ÿÛ*°Ÿ#*´2:*´*´2S*´S*´2196*´2¾¢*´2\1oR„§ÿá6¢KŸ>*´2196*´2¾¢#*´2\1*´21kgR„§ÿÖ„§ÿµ„„§ÿ*°mvžŸ   ¡¢£ ¤3¥6¦<§@¨C©HªJ¯Q°Z±h²q¶|·¡¹ªº±¼¼½Ì¾æ½ì¹òÁõ¡ûÃnf ZÖŸ"}h¿-}h Õph|yÓìxhýqrø×h óØh ñÙhs+ ÿt ü)&ý ú!üú,øÚšl»Ù*´½ L+*¶@S*´¼M>*´¢V*¶@:+¶AS,d+d2+d2¶BR6¢&+2+2+2¶Bw,1o¶C¶DW„§ÿÚ„§ÿ¨,*´d+*´d2+*´d2¶BR>*´¢A,1—™+2,1¸E¶FW6*´¢*´2+2¶R„§ÿã„§ÿ½*°mJÌÍÎÏ!Ð(Ñ0ÒBÓnÏtÕ�Ö™סخۺÜËÛÑÖ×ßnRE)oh(FÛŠ[ph± xh‘FphÙqrÑÜÝÂÞŸs( þß ý+‹ù(úüüúúàál’3*´+´Ÿ¬=*´¢*´2+´2¸G𬄧ÿá¬mã äå+ä1æn "xh3qr3«rs  üúàâlS+Á™ *+À¶H¬¬m éênqrãäsåæl3 »IY*·J°mîn  qrçèl0*¶K°mñn qrçél~»)Y·*M>*´¢j,|¶LW6*´¢C,»)Y·*M¶,¶-N¶,¶0½OY*´21¸PS¸Q¶,W, ¶LW„§ÿº,|¶LW, ¶LW„§ÿ”,¶0°m. ôõö÷%øXù_÷eûlüsõyþn4Ioh oph~qr~êhvëìsý íüúHúîïl0*¶R±mn qrîðlD ²S*¶K¶T±m  n qr êhñšl³B»Y*´*´·L=*´¢)>*´¢+´2*´21R„§ÿå„§ÿÕ+°m  $ 4 @ n*}h.xhBqr2„rsýtü úú òól¬3»Y·L=¢#>¢+´2¸UR„§ÿë„§ÿÞ+°m %+1n*oh %ph3ôh )„rsý tüúú õólz"»Y·L=¢+´2R„§ÿï+°m  n  ph"ôh „rs ý tú ö÷lúd»VY·WN6¢-´X2*¶R„§ÿè6¢-´X2+¶R„§ÿè6¢-´X2,¶R„§ÿè-°m !&"D#b$nH ph)phGphdø¨dù¨dú¨\„ûsý üúüúüú ýþlM”»Y·:6¢´2*¶R„§ÿç6¢´2+¶R„§ÿç6¢´2,¶R„§ÿç6¢´2-¶R„§ÿç´2R°m' (*)I*h+‡,‘-n\ ph-phLphkph”ø¨”ù¨”ú¨”ÿ¨ ‰„rs!ýtúüúüúüú ÷lúd»VY·WN6¢-´X2*¶R„§ÿè6¢-´X2+¶R„§ÿè6¢-´X2,¶R„§ÿè-°m01&2D3b4nH ph)phGphdø¨dù¨dú¨\„ûsý üúüúüú l¬ ,¶YJ,¶Z9,¶[9&¸\9 &¸]9 »VY·W:  ´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: ;<=?&@;ASBkDƒEœF´HÌIäJýKnR~¨û õïé ã &Ú„r   l)^»Y+¾d`·:´:6+¾¢.6£2d*´+.21R„§ÿá„§ÿѧ:»^Y_·`¿°LO^m. {|~!*€@F~L…OƒQ„[†n\ $"oh2phQ   ^qr^x ^h^”hN–rG­fsþtü ú!úB Añl/*¶7°m n qrcab Id