.y(Ljava/lang/Object;)Z L M F isElementZero   shiftLeft=(Lcom/phaos/math/FieldElement;I)Lcom/phaos/math/FieldElement; 8 5getCurve     064210519E59C80E70FA7E9AB72243049FEB8DEECC146B9B1 KTWO mc[(Lcom/phaos/math/EllipticCurve;Lcom/phaos/math/FieldElement;Lcom/phaos/math/FieldElement;)V  mh mj SourceFile  ;*(Ljava/lang/Object;ILjava/lang/Object;II)V ? |()Lcom/phaos/math/BigInt;2(Lcom/phaos/math/ECPoint;)Lcom/phaos/math/ECPoint; Exceptionssize  "p_192 f g  Q  8multiplyAndAddsignum 0:clone(II)I<(Lcom/phaos/math/FieldElement;)Lcom/phaos/math/FieldElement; Kjava/lang/Objectcurve } } G(Lcom/phaos/math/BigInt;Lcom/phaos/math/BigInt;)Lcom/phaos/math/BigInt;  {F(I)Z (%(I[B)V[[[Lcom/phaos/math/BigInt; K ONE OgetBgetA lcom/phaos/math/PrimeECPoint K t KCodetestBit #Zjava/lang/System K ` \ modInversecom/phaos/math/Fieldmaxg  K!y(Lcom/phaos/math/BigInt;Lcom/phaos/math/BigInt;[Lcom/phaos/math/BigInt;[Lcom/phaos/math/BigInt;I)[Lcom/phaos/math/BigInt;[[Lcom/phaos/math/BigInt;  K,  ()Ljava/lang/Object;0(Lcom/phaos/math/BigInt;)Lcom/phaos/math/BigInt;rpowtoBigInt Gcom/phaos/math/ECPoint Y*Lcom/phaos/math/BigInt;   shiftRightTHREE N0188da80eb03090f67cbf20eb43a18800f4ff0afd82ff1012 ]$x(Lcom/phaos/math/BigInt;Lcom/phaos/math/BigInt;Lcom/phaos/math/BigInt;Lcom/phaos/math/BigInt;I)[[Lcom/phaos/math/BigInt;createFieldElementLcom/phaos/math/FieldElement; getInstance  %()Lcom/phaos/math/ECPoint;f(Lcom/phaos/math/Field;Lcom/phaos/math/BigInt;Lcom/phaos/math/BigInt;[B)Lcom/phaos/math/EllipticCurve; )java/lang/Math t(Lcom/phaos/math/BigInt;Lcom/phaos/math/BigInt;[Lcom/phaos/math/BigInt;[Lcom/phaos/math/BigInt;[Lcom/phaos/math/BigInt;)[Lcom/phaos/math/BigInt; WC KR KS[Lcom/phaos/math/BigInt; a7 KT fromHexStringjava/lang/RuntimeException +t 6kcom/phaos/crypto/ECC  (I)Lcom/phaos/math/FieldElement; modPow  ()Z()V u()Isubtractmod multiply Itcom/phaos/math/ECException mR  arraycopy`(Lcom/phaos/math/BigInt;Lcom/phaos/math/ECPoint;Lcom/phaos/math/BigInt;)Lcom/phaos/math/ECPoint; Ecom/phaos/math/EllipticCurve(Lcom/phaos/math/BigInt;)V compareTocom/phaos/math/PrimeField (Lcom/phaos/math/BigInt;)I _l bitLengthcom/phaos/math/FieldElement  J 36(Lcom/phaos/math/BigInt;)Lcom/phaos/math/FieldElement; isPointZero  Ksqrt007192b95ffc8da78631011ed6b24cdd573f977a11e794811 y(Lcom/phaos/math/BigInt;Lcom/phaos/math/BigInt;Lcom/phaos/math/BigInt;Lcom/phaos/math/BigInt;I)[[[Lcom/phaos/math/BigInt; v equals K- wtcomputeWindowNAFtoStringcom/phaos/math/BigIntLcom/phaos/math/Field;yx()Lcom/phaos/math/FieldElement;  1()Ljava/lang/String;[Ilcom/phaos/utils/Utilskji Jh K<g(Ljava/lang/String;)V K=fed cba PrimeECPoint KAa(Lcom/phaos/math/BigInt;[Lcom/phaos/math/BigInt;[Lcom/phaos/math/BigInt;)[Lcom/phaos/math/BigInt; ~  m n o% getPointZero#The points are on different curves.FOUR ()Lcom/phaos/math/EllipticCurve;"The points are on different curves 81(Lcom/phaos/math/BigInt;)Lcom/phaos/math/ECPoint;add field ]D l #(Lcom/phaos/math/EllipticCurve;[B)V(Ljava/lang/String;)[B lnegate lcom/phaos/math/ECUtilsdoubling m< m=Lcom/phaos/math/EllipticCurve; K (I)Lcom/phaos/math/BigInt;(ILcom/phaos/math/BigInt;)[I !KmgF V , -6  :-,:v,-2S-2SSY,2S,2S,2S-2:-2:22*:*:2*:2*:2*:&**+-i::2.S2.S2*S*:*:2*:*S2.:2*S22*x2SV*+,- Vk_+ MS, ,M,+2*S,,2d*XS,+2,2*,2*S,+2,2*S, V}x6*qd`dl6`l6B:2S2S2Y,SY-SS: 6  N x6  !2 **+2 l2 iUS2 **+2 2 iUS : 6  2 26 d6   x6 ~t K 222S 222S S 222S 222S S6 '*+ 22 : *+ 22 : y2 * US2 * US : V3', -6  :,-:-,:,2-2S,2-2S222**SY2 -2 :=-2-2*S2.2x+x-2.**SF222-2.x*S-222-2*SV *&V*e+4 Y*++KY*e**Ű*[*e Y*SY*SY+SY+SM, *e^KY*e*[,2z*[,2zŰ'V*+, fVxl, ,2 NW- -N-,2S-,2S-, ,2S+x*6Yd6 -2 NC-2-2*:-2:-2x:*:.x:8-2/*X+*:-2-2*:.xx:--2-2.*S--2-2*S-2.-2*:-.*S-2*:--2-2.*S-VtpKYLYMYNYp*+:Yp*,-9Hp*,-ͱ4GJVL@+*e +ڶ *e @N-6--˰ V2&* *e^KY*e**˷Ű {Vv jdx6b:2,S2-Sd*+22d2S6&*+d2d22SVvj* *> *e^Y*SY*SL*[*e ++LKY*e*[+2z*[+2zŰV * + *e^+*+*[M*e N:*e41*H222*H2226,-i:++'``+N``+u``+``6,-H22:u+`+;``+b``+``+``6,-H22:+:b:2*S2*S,-22:,-22S,-22S,-22S:d6^,-i:.6,-dl2:)$,,-,Ptdl2P: *e^,U:KY*e*[2z*[2zŰ2V *e,4 Y*[:*e :B:,,S*e4<*22(*222s**S:+S-S:22d6  i:6  l  2[ 2 .6   2 dl2:0 +P 2 tdl2P: y *e^U:KY*e*[2z*[2zŰ' V0$+ M+M,,2*xS,