4 ;  UUUUUU@ @@?UUUUUU            @  &  - ?  2 2 2      @  corners[LProGAL/geom3d/Point;W(LProGAL/geom3d/Point;LProGAL/geom3d/Point;LProGAL/geom3d/Point;LProGAL/geom3d/Point;)VCodeLineNumberTableLocalVariableTablethis#LProGAL/geom3d/volumes/Tetrahedron;p1LProGAL/geom3d/Point;p2p3p4([LProGAL/geom3d/Point;)VregularTetrahedron%()LProGAL/geom3d/volumes/Tetrahedron; getCorner(I)LProGAL/geom3d/Point;cI StackMapTable getCorners()[LProGAL/geom3d/Point; translate(LProGAL/geom3d/Vector;)VpvLProGAL/geom3d/Vector;J(LProGAL/geom3d/Point;)Vq(DDD)VxDyzblowUp(D)VtcentergetPoint getDimension()IsetPoint(ILProGAL/geom3d/Point;)Vpointoverlaps!(LProGAL/geom3d/volumes/Volume;)ZvolLProGAL/geom3d/volumes/Volume; getVolume()DabgetCommonTriangle=(LProGAL/geom3d/volumes/Tetrahedron;)LProGAL/geom3d/Triangle;jicommoncount getInradiusbXcsixVcXaaXbdenom circumRadiusO circumCenter()LProGAL/geom3d/Point; circumSphere ()LProGAL/geom3d/volumes/Sphere;incenter bXcLength cXaLength aXbLengthdLength getCenterisInside(LProGAL/geom3d/Point;)Zpl012LProGAL/geom3d/Plane;pl013pl023pl123isAcute()Zclone ()LProGAL/geom3d/volumes/Volume;toString()Ljava/lang/String;(I)Ljava/lang/String;dec toConsole()V(I)Vmain([Ljava/lang/String;)Vargs[Ljava/lang/String;p5tetr()Ljava/lang/Object; Exceptions SourceFileTetrahedron.java KProGAL/geom3d/Point IJ!ProGAL/geom3d/volumes/Tetrahedron Ki KL"java/lang/IllegalArgumentException j l m i ai o ag ProGAL/geom3d/Triangle K     ProGAL/geom3d/volumes/Sphere K ProGAL/geom3d/Plane Z[       Tetrahedron[%s,%s,%s,%s]java/lang/Object     insideoutside ProGAL/geom3d/SimplexProGAL/geom3d/volumes/Volume$java/lang/CloneNotSupportedExceptionjava/lang/Mathsqrt(D)DProGAL/geom3d/Vector translateThis scaleThisvectorTo-(LProGAL/geom3d/Point;)LProGAL/geom3d/Vector; crossThis.(LProGAL/geom3d/Vector;)LProGAL/geom3d/Vector;dot(LProGAL/geom3d/Vector;)DabsequalsB(LProGAL/geom3d/Point;LProGAL/geom3d/Point;LProGAL/geom3d/Point;)VcrosslengthaddThis multiplyThis(D)LProGAL/geom3d/Vector;add-(LProGAL/geom3d/Vector;)LProGAL/geom3d/Point;(LProGAL/geom3d/Point;D)V divideThisabove(LProGAL/geom3d/Point;)IbelowgetCosDihedralAngleW(LProGAL/geom3d/Point;LProGAL/geom3d/Point;LProGAL/geom3d/Point;LProGAL/geom3d/Point;)Djava/lang/Stringformat9(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;java/lang/SystemoutLjava/io/PrintStream;java/io/PrintStreamprintln(Ljava/lang/String;)V!;GHIJKLM****+S*,S*-S*SN !)O4*PQ*RS*TS*US*VSKWMR***+N OPQIJ XYM ^YYY  oY w o Y w o wN!"-#H$]!Z[MZ Y*2N )*OPQ\]^ _`M/*N/O PQabM/*M,>6 ,2:+++N 4.5O cS/PQ/de^  f"agM/*M,>6 ,2:+++N 7.8O cS/PQ/hS^  f"aiM ,*:66   2:  ') N :+;O4 cS ,PQ,jk,lk,mk^ fnoMF*N*-w-w-w*:662:'*-N>?@@AEBO*4cSFPQFpkAqS^&rsft[MZ Y*2N FGOPQ\]^ uvM,NKO PQwxMi Y*,SNOPQO PQ\]yS^ z{M6NUOPQ|}~MA*2*2L*2*2M*2*2N+,- !"#oNZ[ \0]O*APQ1e !e0\eMaM>6<6-*2+2%,*2S6ӄ&Y,2,2,2'N. cdefg-h:i=fCeImPnO>0] ?]aPQapQ\JZ]^ f)M y*2*2L*2*2M*2*2N,-(:+!"9-+ :+, :))c)c**)c9  oN& st u0v7wBxIyPzs{O\ yPQie Ye0I\e7BeB7kI0eP)esk M*2*2L*2*2M*2*2N,-(++!+:-+(,,!+*W+,(--!+*W +,- !ko+W)N" 0?RezO4PQpe `e0P\e?AeM*2*2L*2*2M*2*2N,-(++!+:-+(,,!+*W+,(--!+*W +,- !ko+W*2,N" 0?RezO4PQve fe0V\e?GeM*2*2L*2*2M*2*2N,-(++!+:-+(,,!+*W+,(--!+*W +,- !ko+W-Y*2,).N" 0?RezO4PQe re0b\e?SeMx*2*2L*2*2M*2*2N,-(:-+(:+,(:)9)9 )9 **)9 ++:, +*W- +*W c c c/W*2,N> 07>ELSZksOz PQe e0x\e7qe>jeEceL\kSUk ZNk k=k s5eMI*2*2L+*2*2*W+*2*2*W*2+0+,N$8OIPQ9deMI2Y*3*3*34M2Y*3*3*34N2Y*3*3*34:2Y*3*3*34:,+5 -+5+5 +5),+6$-+6+6+6N.F^O>PQcS.Fj^R^rs%@M*2*2*2*27*2*2*2*27*2*2*2*27g*2*2*2*27G*2*2*2*27'*2*2*2*27N8XxO PQ^@MV,Y*28*28*28*28NO ,PQM0*9NO PQMr>:;Y*2PQ>]M5 >*?@NO  PQM@ >*9@NO PQ ] MsYLYMY   NY A :Y :Y,+-:C>D@ >E@N" '9GUrOHs hRS]TS'LUS9:VSG,SUQ^jsssssrAM/*FNO PQ