File:  [LON-CAPA] / loncom / html / adm / dragmath / applet / classes / jep.jar
Revision 1.2: download - view: text, annotated - select for diffs
Tue Jun 24 09:34:09 2008 UTC (16 years ago) by foxr
Branches: MAIN
CVS tags: version_2_9_X, version_2_9_99_0, version_2_9_1, version_2_9_0, version_2_8_X, version_2_8_99_1, version_2_8_99_0, version_2_8_2, version_2_8_1, version_2_8_0, version_2_7_X, version_2_7_99_1, version_2_7_99_0, version_2_7_1, version_2_7_0, version_2_6_99_1, version_2_6_99_0, version_2_11_0_RC1, version_2_10_X, version_2_10_1, version_2_10_0_RC2, version_2_10_0_RC1, version_2_10_0, loncapaMITrelate_1, language_hyphenation_merge, language_hyphenation, bz6209-base, bz6209, bz5969, bz2851, PRINT_INCOMPLETE_base, PRINT_INCOMPLETE, HEAD, GCI_3, GCI_2, GCI_1, BZ5971-printing-apage, BZ5434-fox, BZ4492-merge, BZ4492-feature_horizontal_radioresponse
Sign applet .jar files with a self signed certificate that
has the LonCAPA name on it so that maybe people are more likely to trust
and accept the certificate.
   See the comments on loncom/html/adm/loncapa.keystore for instructions on
how to sign other applet jars with the same certificate so that once
one has been accepted with the 'always trust' option, other applets
so-signed will also be accepted without prompt.

PK*8META-INF/MANIFEST.MFYI\GŷJ6fya`3ïoʗNwCT*]p	N"|tBKpoo_ԩ.N797̩cI͝8?_dMO%pj9ߡw5{eQ
U
˽z:^ަX-ϯߟ?It2(C8Ozң*W'?Xjſy	`샳/2ԭZ.:{az[2'guG+2|aJ9/jW>Cttk:e\G	)\"&Yu\2T|hq~q%{}zgr*xPNC!C[)E^N^bhӎbQ9dE"^<@>[RU} 4H,_7OCpCsc^,WFԟC5n]:^Sl49G/.=A|tEQ6˝TŸ,-S=|,LkPI>sd])ZpU<֎m^Ƶ
EL}<Vu_
ȴ06j4掦Ft|8$g9L`|>H<mBAųϫ6[ol+;eʿ6/|6v=#i|Z餁mӍ?<4.lQ
[ƩOM.|=Q	^UuÈ3S"(- Vn{̫=E-q?Oښw3+=_C>=t=NtC:ۍ.jCjɝҠ],-'?.])vդ<.Gy+̇(miI)	-㼼lWwvQ؂rB2>»./ʙ7n G=%hyJ^`L=͸xvGj+>Eύ43ٓVe#MiІ3cч}\,v^O1t5:f1$Bpy
Ih";dv|;4f`A&nkS໎>S%[0aV8kcn]2RƁl%Iq,tm}X5<GEz5ܹBsZR'e<틊hi^EW˃WP2QN:P6eOq	]FO
lE^,,?C帡XQh&rgksVd=
֏(71Ft[+CP˶:'ͫRF|YHXqAM9la{+{@E	*/ļ%hE..;X%k0gQɑä07s_Y'KXhw.35A[6#5ς|oNw/a/qtEҩ`.(wnGڹgWݓ-MS+hـkVj"}<(2Dq{tХ=$&g@mrl(rNg1I72ߑïܕt!yYN_~$}(ԓv6rxjֈZwMaj.뫶mG*ԃr=gWX'DjؑjVС1}>)gA-xOZmTd;j[&7!!n@?Ýpc@ٸ>ޮp68+"WT]ofAfp
^BC#b6薧-(?])=D$Ūzi=kp>
>"ϻr-i`i/};(
EVW*y;"47}93z~[(sM3t_k*I~+g>P%2/N(mQ{]I-Lv%7:HW$ɼOYn0J;EiS;|L)o<D#YB[pbgn沓&>tg_#c!ո6@hljFxː?zBXrizBbrmMe}-);B.R|d'hC{/v?VI~5	QL&]a;v/bD<;xdZ[ғByX	pLq~ѓE"`~9hI'0pU5}Gn_Lq@qp*2{`dr8x.6{
Y;A'E5;DR!-gM0/^&r=GHÖGgfG4i6
[Ξd	iZ\.w^|/='|Qt8>8l6qh".҂Dt}H\{W!v#{7Q΁-ü5~Q4/2BEk]`;Z'PO}	K
!Edg*,'o ԖǓyaTyjoEX؟B׵(N_k<TiltMH85~C/ !.b?ω]pupP	i|y>Ƣ+-_hx)FSV
Z:t6_í~V$Sl
RB@W̤Dž&%lqu\Mk=@
IoqysXiOn#>^[/qiPl&bnTB*e\JIDx4
j"d׸ׁWțcK;
A)ȖDqXHQcnxlK9Ρ<\k;9ld
͕B)O<"#.S
,*U_3ݴϛ||+1Mm@vH<|ht%󼬶ichl5I_
kE(uxoPK[ PK*8META-INF/LONCAPA.SFYI?]Ԣ[V]d^03cll;ԭא&L)OÉa3KK'n*~=/>^~=/}/s((YVݫ"_@0Yw_fɏYm}ӢlCBj^H:-(gcݿ>9Nˮ<&
O?_6d(#C/O6.+aw.ICaRkL-D$?֪OY;]_F6*dySa.{hץ۸|KUY/V- ~NnN1vJ%lo[G?6عn[gYV8Fff|ަҴzW1w_yd!fjLVuᕙ/hCua7,M4gswW`P}j@5?O9}gߤ%<Б{4@Md[ֳB|P񊊾Hr6W>4z?0GB0Q$6sc|‚k6FUvj^Gݔ#\c:Ptz~>9(zUlm]]AX}d#cΘ[8TQ+Mfr+M
>(n*Uk*0vU?eq?
]ݘn5N;!6SP^hfC[)yicF;sf}*h3U׼ukI'u>c+!*2L&)?eםI:xCH>3W-)jʭo,٫R	&eiQj'Z|;xq\@Kʊ,C3r/ʨGe[~e3ح~I2bYI//tG&gjX8z )VA]Jh?+?zɺlg=]>b8){.w~/qDC{#KI^9bsK-plj4WARtjsoeO'G,8]*2o:^U}as2نǡ܌<zE! 
%7N2=?hz@FEd~r!Oo_Z׀D;hr\ѵۍ&OiS;xS!!L(!Hm/?=u+c8=$G猉Ie$GKֳ3!E**f
Y
5pxzFi?σe䨸jDbJQ=?I4OYbb'
0J`ux=Q}Kl#$Bs=ֶn@9GF4;xKskoAXr#HZ5yY6guC,Rª$LHXV~e/*z'mL_
2WOrwˆ|,izeiTH(Z;@x.Y#4=z@Tu-{iU
gWC/nus
;r,݆THVۨ@K,90B;XY>ujxu}`pۊ"eH'+HBv{/o@G^R2W6;r˺&5T#Q%fJ%ss7O:.R,|!ڝ虇vUcg "2*:=B֠l33ouQ}{Kpҫ+A6i
})x^_b/
}51>^iNT|*a]fsevz1-,yM~"Cs2,]`Te,>G'Cѯd6VJ,\M3d	o+uNp[;fe`@1%#ȵ>8b,IvCYC<v~?'Xw<Ąj3X`·0k&3߀c,fr~uop8MEGwjp<Wn̘"0N{\'Z5mxyKeμR
[=6뛒lnd4ȸfG惂R3V}#m	c۳N]_./^`sַIOXB%*1-0xnOp{{0qg8^mv/2P~*^?%c=vg5ʛ,$D8mI:)Ĩ̛:\5Qntfz}!!MŠq޲S;h`,Ln4|I
rτp55гaup!us'$ȑ9HˋmN:i=rPhnPqߩS/'.jR+F#M~t_.RbCvlÔ-_	U*>»LLӁmrб?,]?$1۬sUu~&^Ţh}k4
5#mĴP
K,qqח je|Iu'4HhL$ql[L7v	Ώ:3OJ՟w=#sø[WmgIxu[~Jz;2{GaO"s@0Mj9A: #@ݓGJxT9n̒F=7I>=3ڳ(h"e7(Jӹ`[
\%:2..()VSkIKm<aF3ldĸ)evr砢O9.=c:^ꢐՐIqxt({cEq%(vҫZ>3n<!hRGed?J_cǡWLwq[[9 {V4*i%܍/=\ZBpm?&OI-:kqwtdQZ~\
PKB PK*8META-INF/LONCAPA.DSA3hbƩiAKAK7#!'63+7B&"&< fbH	fJ`am&p3z8<%
>yřyJ
 a.aI<ĒTм̲Ԣ̒JCC}na
̲<4ĒԼTļ׼̼"| ->yΎ
fF&FQF@ScCv~ ց7##>QTH37Odޅᰜ}ö@LXߑ١9dM?%lϞt/X^yc?ß[LwG3GM4Vyvu%^`<$0=!_ȚI;n!^m{1f;wVNYի>ܶM遑}D?+dhl)VGCLxyNڈUuj<XNN{҉y)&}TŨb}f}+'th0|Iiq
ա)>{j1721mYu3Ee3ŷ7ٵc\6	ܬ1`puh5Xtfu^mGs[ptdٻ'ϧv16}{iզ'-NJNx	wXu:0x\wI,E$L"֜tΕooWx}20(;.לEHboծÝSj}u4~fLŃ:B\YXe_q{sMi`gQaV'[1>MJ_!
PK;_7PK
v7	META-INF/PK
v7org/PK
v7
org/nfunk/PK
v7org/nfunk/jep/PK
v7org/nfunk/jep/evaluation/PK
v7org/nfunk/jep/function/PK
v7org/nfunk/jep/type/PK
v7/org/nfunk/jep/ASTConstant.class0B

,

-	./01
23
4
5
6
789valueLjava/lang/Object;<init>(I)VCodeLineNumberTableLocalVariableTablethisLorg/nfunk/jep/ASTConstant;idI(Lorg/nfunk/jep/Parser;I)VpLorg/nfunk/jep/Parser;setValue(Ljava/lang/Object;)VvalgetValue()Ljava/lang/Object;	jjtAcceptC(Lorg/nfunk/jep/ParserVisitor;Ljava/lang/Object;)Ljava/lang/Object;visitorLorg/nfunk/jep/ParserVisitor;data
Exceptions:toString()Ljava/lang/String;
SourceFileASTConstant.java;<=java/lang/StringBuffer>
Constant: ?@ ?A()org/nfunk/jep/ASTConstantorg/nfunk/jep/SimpleNodeorg/nfunk/jep/ParseExceptionorg/nfunk/jep/ParserVisitorvisitA(Lorg/nfunk/jep/ASTConstant;Ljava/lang/Object;)Ljava/lang/Object;()Vappend,(Ljava/lang/String;)Ljava/lang/StringBuffer;,(Ljava/lang/Object;)Ljava/lang/StringBuffer;!
>*
I*+
 >*+
 /*!"G	+*,% 		#$	%&'()AY*	
)*+PK
v7vd==org/nfunk/jep/ASTFunNode.class0W
=	>
?@A	B	C
DE
DFG
	HI
	JK
	LMNpfmc,Lorg/nfunk/jep/function/PostfixMathCommandI;nameLjava/lang/String;opIDLorg/nfunk/jep/Operator;<init>(I)VCodeLineNumberTableLocalVariableTablethisLorg/nfunk/jep/ASTFunNode;idI(Lorg/nfunk/jep/Parser;I)VpLorg/nfunk/jep/Parser;	jjtAcceptC(Lorg/nfunk/jep/ParserVisitor;Ljava/lang/Object;)Ljava/lang/Object;visitorLorg/nfunk/jep/ParserVisitor;dataLjava/lang/Object;
ExceptionsOsetFunctionA(Ljava/lang/String;Lorg/nfunk/jep/function/PostfixMathCommandI;)Vname_inpfmc_insetOperator(Lorg/nfunk/jep/Operator;)VoptoString()Ljava/lang/String;getPFMC.()Lorg/nfunk/jep/function/PostfixMathCommandI;getNamegetOperator()Lorg/nfunk/jep/Operator;
isOperator()Z
SourceFileASTFunNode.java PQRS4563java/lang/StringBufferT
Function "UV"23org/nfunk/jep/ASTFunNodeorg/nfunk/jep/SimpleNodeorg/nfunk/jep/ParseExceptionorg/nfunk/jep/ParserVisitorvisit@(Lorg/nfunk/jep/ASTFunNode;Ljava/lang/Object;)Ljava/lang/Object;org/nfunk/jep/Operator()Vappend,(Ljava/lang/String;)Ljava/lang/StringBuffer;!
G**"
# R*+*)* !"#$G	+*,1 		%&	'()*+,Q*+*,9:
; -./0V*+*+*+BC
DE123F	Y
*
K45/*R63/*Y78/*`9:7
*g
;<PK
v7ȐBkkorg/nfunk/jep/ASTStart.class0&

 !<init>(I)VCodeLineNumberTableLocalVariableTablethisLorg/nfunk/jep/ASTStart;idI(Lorg/nfunk/jep/Parser;I)VpLorg/nfunk/jep/Parser;	jjtAcceptC(Lorg/nfunk/jep/ParserVisitor;Ljava/lang/Object;)Ljava/lang/Object;visitorLorg/nfunk/jep/ParserVisitor;dataLjava/lang/Object;
Exceptions"
SourceFile
ASTStart.java#$%org/nfunk/jep/ASTStartorg/nfunk/jep/SimpleNodeorg/nfunk/jep/ParseExceptionorg/nfunk/jep/ParserVisitorvisit>(Lorg/nfunk/jep/ASTStart;Ljava/lang/Object;)Ljava/lang/Object;!>*	


I*+	

 
G	+*,	
 			PK
v7T33org/nfunk/jep/ASTVarNode.class0H
1	
2
345
678
9:
;

7<
=>?varLorg/nfunk/jep/Variable;<init>(I)VCodeLineNumberTableLocalVariableTablethisLorg/nfunk/jep/ASTVarNode;idI(Lorg/nfunk/jep/Parser;I)VpLorg/nfunk/jep/Parser;	jjtAcceptC(Lorg/nfunk/jep/ParserVisitor;Ljava/lang/Object;)Ljava/lang/Object;visitorLorg/nfunk/jep/ParserVisitor;dataLjava/lang/Object;
Exceptions@setVar(Lorg/nfunk/jep/Variable;)VvariablegetVar()Lorg/nfunk/jep/Variable;getName()Ljava/lang/String;toStringtempLjava/lang/String;
SourceFileASTVarNode.javaABCD*+java/lang/StringBufferEVariable: "FG",+org/nfunk/jep/ASTVarNodeorg/nfunk/jep/SimpleNodeorg/nfunk/jep/ParseExceptionorg/nfunk/jep/ParserVisitorvisit@(Lorg/nfunk/jep/ASTVarNode;Ljava/lang/Object;)Ljava/lang/Object;org/nfunk/jep/Variable()Vappend,(Ljava/lang/String;)Ljava/lang/StringBuffer;!
G**
I*+
 G	+*,# 		 	!"#$%&:*+-'()/*.*+2*5,+VY	*
		L+
=?-./0PK
v7%ʧuorg/nfunk/jep/EvaluatorI.class0	
eval((Lorg/nfunk/jep/Node;)Ljava/lang/Object;
Exceptions
SourceFileEvaluatorI.javaorg/nfunk/jep/EvaluatorIjava/lang/Objectorg/nfunk/jep/ParseExceptionPK
v7/ 	s,,$org/nfunk/jep/EvaluatorVisitor.class0
-g	,h	,ij
g	,klm
n
opq
rs
tu
gv
w
-x
yz
{|
}~
}z

}
}

z

stackLjava/util/Stack;symTabLorg/nfunk/jep/SymbolTable;debugZ
ConstantValuetrapNullValues<init>()VCodeLineNumberTableLocalVariableTablethis Lorg/nfunk/jep/EvaluatorVisitor;(Lorg/nfunk/jep/SymbolTable;)VstgetValueC(Lorg/nfunk/jep/Node;Lorg/nfunk/jep/SymbolTable;)Ljava/lang/Object;topNodeLorg/nfunk/jep/Node;	symTab_in
Exceptionseval((Lorg/nfunk/jep/Node;)Ljava/lang/Object;nodevisit@(Lorg/nfunk/jep/SimpleNode;Ljava/lang/Object;)Ljava/lang/Object;Lorg/nfunk/jep/SimpleNode;dataLjava/lang/Object;>(Lorg/nfunk/jep/ASTStart;Ljava/lang/Object;)Ljava/lang/Object;Lorg/nfunk/jep/ASTStart;@(Lorg/nfunk/jep/ASTFunNode;Ljava/lang/Object;)Ljava/lang/Object;valLorg/nfunk/jep/ASTFunNode;pfmc,Lorg/nfunk/jep/function/PostfixMathCommandI;@(Lorg/nfunk/jep/ASTVarNode;Ljava/lang/Object;)Ljava/lang/Object;messageLjava/lang/String;Lorg/nfunk/jep/ASTVarNode;varLorg/nfunk/jep/Variable;tempA(Lorg/nfunk/jep/ASTConstant;Ljava/lang/Object;)Ljava/lang/Object;Lorg/nfunk/jep/ASTConstant;isTrapNullValues()ZsetTrapNullValues(Z)Vb
SourceFileEvaluatorVisitor.java9:8523java/util/Stack01org/nfunk/jep/ParseExceptiontopNode parameter is null9:Stack corruptedjava/lang/StringBufferNo visit method for (Start node encountered during evaluation"No function class associated with )org/nfunk/jep/function/SpecialEvaluationI*org/nfunk/jep/function/CallbackEvaluationICould not evaluate : .the variable was not found in the symbol tableBvariable not setorg/nfunk/jep/EvaluatorVisitorjava/lang/Objectorg/nfunk/jep/ParserVisitororg/nfunk/jep/EvaluatorI(Ljava/lang/String;)VremoveAllElementsorg/nfunk/jep/Node	jjtAcceptC(Lorg/nfunk/jep/ParserVisitor;Ljava/lang/Object;)Ljava/lang/Object;size()Ipop()Ljava/lang/Object;append,(Ljava/lang/String;)Ljava/lang/StringBuffer;getClass()Ljava/lang/Class;java/lang/ClassgetName()Ljava/lang/String;toStringorg/nfunk/jep/ASTFunNodegetPFMC.()Lorg/nfunk/jep/function/PostfixMathCommandI;evaluate(Lorg/nfunk/jep/Node;Ljava/lang/Object;Lorg/nfunk/jep/ParserVisitor;Ljava/util/Stack;Lorg/nfunk/jep/SymbolTable;)Ljava/lang/Object;B(Lorg/nfunk/jep/Node;Lorg/nfunk/jep/EvaluatorI;)Ljava/lang/Object;push&(Ljava/lang/Object;)Ljava/lang/Object;childrenAccept*org/nfunk/jep/function/PostfixMathCommandIgetNumberOfParametersjjtGetNumChildrensetCurNumberOfParameters(I)Vrun(Ljava/util/Stack;)Vorg/nfunk/jep/ASTVarNodegetVar()Lorg/nfunk/jep/Variable;org/nfunk/jep/Variableorg/nfunk/jep/ASTConstant!,-./01234567859:;T****Y<41	678=>?9@;^***+*Y<:1	<=>=>?A3BC;@+
Y	*,*
+*W*
Y
	*<"YZ_af#q.r8v= @>?@DE@F3GHI;I+*W*<
	=>?JEGKL;_!YY+	<= !>?!JM!NOGKP;H
Y	<= 
>?
JQ
NOGKR;++N-!YY+	--+,***--+*:*W+*,M- 
-+!"-*#,<B-4IP]gjq{=4]
SO>?JTNOUVGKW;#+$N-<Y%+&':YY(	-):*A<Y%+&':YY*	*W,<*
	&BHTq=H&XYqXY>?JZNO[\HQ]OGK^;P*++W,<
= >?J_NO`a;/*<=>?bc;>*<
'(=>?d5efPK
v7^!org/nfunk/jep/FunctionTable.class0.
	%
	&'(
)
	*
+,-serialVersionUIDJ
ConstantValueqcQ<init>()VCodeLineNumberTableLocalVariableTablethisLorg/nfunk/jep/FunctionTable;putR(Ljava/lang/String;Lorg/nfunk/jep/function/PostfixMathCommandI;)Ljava/lang/Object;sLjava/lang/String;pfmc,Lorg/nfunk/jep/function/PostfixMathCommandI;8(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;oLjava/lang/Object;pget@(Ljava/lang/String;)Lorg/nfunk/jep/function/PostfixMathCommandI;&(Ljava/lang/Object;)Ljava/lang/Object;
SourceFileFunctionTable.javajava/lang/String*org/nfunk/jep/function/PostfixMathCommandI " !org/nfunk/jep/FunctionTablejava/util/Hashtable!	

3*
E*+, K
*+,) 


 !=	*+1		 "=	*+<		#$PK
v7**org/nfunk/jep/JEP.class0
&	'	(	)	*	+,
&	-.

&	/
0
12
&	34
5
6	789:
;
<	=
>	?	@AB
 &
CD
#&EF
&&
#GHI
*&JK
-&LM
0&NO
3&PQ
6&RS
9&TU
<&VW
?&XY
B&Z[
E&\]
H&^_
K&`a
N&bc
Q&de
T&fg
W&hi
Z&jk
]&lm
`&no@	!TD-
cp
q@
Wir
lst
o&u
r&vw
u&x
y
z
{
|}
~
#z





&

;


l
l

&








debugZ
ConstantValuetraverseallowUndeclaredallowAssignmentimplicitMulsymTabLorg/nfunk/jep/SymbolTable;funTabLorg/nfunk/jep/FunctionTable;	errorListLjava/util/Vector;parserLorg/nfunk/jep/Parser;topNodeLorg/nfunk/jep/Node;ev Lorg/nfunk/jep/EvaluatorVisitor;
numberFactory"Lorg/nfunk/jep/type/NumberFactory;opSetLorg/nfunk/jep/OperatorSet;<init>()VCodeLineNumberTableLocalVariableTablethisLorg/nfunk/jep/JEP;((ZZZLorg/nfunk/jep/type/NumberFactory;)Vtraverse_inallowUndeclared_inimplicitMul_innumberFactory_in(Lorg/nfunk/jep/JEP;)Vj
initSymTab
initFunTabaddStandardFunctionsaddStandardConstants
addComplexaddFunctionA(Ljava/lang/String;Lorg/nfunk/jep/function/PostfixMathCommandI;)VfunctionNameLjava/lang/String;function,Lorg/nfunk/jep/function/PostfixMathCommandI;addConstant'(Ljava/lang/String;Ljava/lang/Object;)VnamevalueLjava/lang/Object;addVariable'(Ljava/lang/String;D)Ljava/lang/Double;DobjectLjava/lang/Double;2(Ljava/lang/String;DD)Lorg/nfunk/jep/type/Complex;reimLorg/nfunk/jep/type/Complex;removeVariable&(Ljava/lang/String;)Ljava/lang/Object;getVarValuesetVarValuevalgetVar,(Ljava/lang/String;)Lorg/nfunk/jep/Variable;removeFunctionsetTraverse(Z)VgetTraverse()ZsetImplicitMulgetImplicitMulsetAllowUndeclaredgetAllowUndeclaredsetAllowAssignmentgetAllowAssignmentparseExpression((Ljava/lang/String;)Lorg/nfunk/jep/Node;eLjava/lang/Throwable;Lorg/nfunk/jep/ParseException;vLorg/nfunk/jep/ParserVisitor;
expression_inreaderLjava/io/Reader;parse
expressionsrLjava/io/StringReader;node
Exceptionsevaluate((Lorg/nfunk/jep/Node;)Ljava/lang/Object;getValue()DcgetComplexValue()Lorg/nfunk/jep/type/Complex;getValueAsObject()Ljava/lang/Object;resultLjava/lang/RuntimeException;hasErrorgetErrorInfo()Ljava/lang/String;iIstr
getTopNode()Lorg/nfunk/jep/Node;getSymbolTable()Lorg/nfunk/jep/SymbolTable;getFunctionTable()Lorg/nfunk/jep/FunctionTable;getEvaluatorVisitor()Lorg/nfunk/jep/EvaluatorI;getNumberFactory$()Lorg/nfunk/jep/type/NumberFactory;getOperatorSet()Lorg/nfunk/jep/OperatorSet;	getParser()Lorg/nfunk/jep/Parser;
SourceFileJEP.java&org/nfunk/jep/type/DoubleNumberFactoryorg/nfunk/jep/OperatorSetjava/util/Vectororg/nfunk/jep/EvaluatorVisitororg/nfunk/jep/Parserjava/io/StringReaderorg/nfunk/jep/SymbolTableorg/nfunk/jep/VariableFactoryorg/nfunk/jep/FunctionTablesinorg/nfunk/jep/function/Sinecosorg/nfunk/jep/function/Cosinetanorg/nfunk/jep/function/Tangentasinorg/nfunk/jep/function/ArcSineacos org/nfunk/jep/function/ArcCosineatan!org/nfunk/jep/function/ArcTangentatan2"org/nfunk/jep/function/ArcTangent2sinhorg/nfunk/jep/function/SineHcoshorg/nfunk/jep/function/CosineHtanhorg/nfunk/jep/function/TanHasinhorg/nfunk/jep/function/ArcSineHacosh!org/nfunk/jep/function/ArcCosineHatanhorg/nfunk/jep/function/ArcTanHlog org/nfunk/jep/function/Logarithmln'org/nfunk/jep/function/NaturalLogarithmexporg/nfunk/jep/function/Exppoworg/nfunk/jep/function/Powersqrt!org/nfunk/jep/function/SquareRootabsorg/nfunk/jep/function/Absmodorg/nfunk/jep/function/Moduluspijava/lang/Doubleorg/nfunk/jep/type/Complexorg/nfunk/jep/function/Real org/nfunk/jep/function/Imaginaryargorg/nfunk/jep/function/Argcmod
java/lang/Throwableorg/nfunk/jep/ParseExceptionSyntax errororg/nfunk/jep/ParserDumpVisitor
java/lang/Numberjava/lang/StringBufferError during evaluation: java/lang/RuntimeException: 
org/nfunk/jep/JEPjava/lang/Object(Lorg/nfunk/jep/SymbolTable;)V(Ljava/lang/String;)V(Ljava/io/Reader;)V"(Lorg/nfunk/jep/VariableFactory;)VputR(Ljava/lang/String;Lorg/nfunk/jep/function/PostfixMathCommandI;)Ljava/lang/Object;(D)V>(Ljava/lang/String;Ljava/lang/Object;)Lorg/nfunk/jep/Variable;(DD)VmakeVarIfNeededremove&(Ljava/lang/Object;)Ljava/lang/Object;org/nfunk/jep/VariableremoveAllElementsparseStream9(Ljava/io/Reader;Lorg/nfunk/jep/JEP;)Lorg/nfunk/jep/Node;
getMessage
addElement(Ljava/lang/Object;)Vorg/nfunk/jep/Node	jjtAcceptC(Lorg/nfunk/jep/ParserVisitor;Ljava/lang/Object;)Ljava/lang/Object;C(Lorg/nfunk/jep/Node;Lorg/nfunk/jep/SymbolTable;)Ljava/lang/Object;doubleValueappend,(Ljava/lang/String;)Ljava/lang/StringBuffer;toStringgetClass()Ljava/lang/Class;java/lang/ClassgetNameisEmptysize()I	elementAt(I)Ljava/lang/Object;,(Ljava/lang/Object;)Ljava/lang/StringBuffer;!
)j*******Y	*
Y*
**Y*Y**YY:QR	STUVW(X3Y7Z;[F\U]ibjz******Y		*	*
Y*
**Y*Y**YY*WBop	qrstu+w1y<z@{D|O}^~ry4zzzzzb***+*+*+*+*+*+*+*+		*+*+*+:	!)19AIQYabbA*Y Y!"
:*#Y$
U*%&Y'(W*)*Y+(W*,-Y.(W*/0Y1(W*23Y4(W*56Y7(W*89Y:(W*;<Y=(W*>?Y@(W*ABYC(W*DEYF(W*GHYI(W*JKYL(W*MNYO(W*PQYR(W*STYU(W*VWYX(W*YZY[(W*\]Y^(W*_`Ya(WV"3DUfw!2CTU[)*bcYdfgW*hcYifgW()X*klYmgW*noYp(W*qrYs(W*tuYv(W*w]Y^(W$5FWXM*+,(W
	

 M*+,gW

 hcY(f:*+xW
 *
tlY(m:*+xW/014M*+,xW
=
> =	*+yJ		@*+z{TL
*+,|
b	c 


=	*+zl		=	*+}w		>*
/*>*
/*>*
/*>*
/*7Y+M*~**,****N*-*-**/*(YN*-W:**	),iuxF	),-29JSaiuxz>-&zi	/Y+M*~*,*N*Y*-	!-*//	&A
*+*$

B*L++l+lM,,+++&	13
578&9+;6<>? 	B=
0*L++l+l+lY+m"IK	LMNOP.R0+
h****LMM*Y,M*Y,,+		<*
c	fqhj:k<m=odpfr4=)hf:*|@*:L=*(Y+*L+
6<> 0
4@/*/*/*/*/*	 !/*"#/*$%PK
v7Du		"org/nfunk/jep/JJTParserState.class0i
BC
B	D	E	F	G	H
I
JK
L
MN
O
P
Q
RSTUV
W
XYZnodesLjava/util/Stack;marksspImknode_createdZ<init>()VCodeLineNumberTableLocalVariableTablethisLorg/nfunk/jep/JJTParserState;nodeCreated()ZresetrootNode()Lorg/nfunk/jep/Node;pushNode(Lorg/nfunk/jep/Node;)VnLorg/nfunk/jep/Node;popNodepeekNode	nodeArity()IclearNodeScope
openNodeScopecloseNodeScope(Lorg/nfunk/jep/Node;I)Vcnum(Lorg/nfunk/jep/Node;Z)Va	condition
SourceFileJJTParserState.java#$java/util/Stack !"[$\]org/nfunk/jep/Node^_`ajava/lang/Integerb6ca3.#de$f0g:h$/056org/nfunk/jep/JJTParserStatejava/lang/ObjectremoveAllElements	elementAt(I)Ljava/lang/Object;push&(Ljava/lang/Object;)Ljava/lang/Object;pop()Ljava/lang/Object;intValuepeek(I)VjjtOpenjjtSetParentjjtAddChildjjtClose  !"#$%c%**Y*Y**&$'%()*+%/*& '(),$%S*	*	**&&'()*'()-.%6*
&/'()/0%P*+W*Y`&4	56'()123.%`.*YdZ***
*
&;<#>'.()4.%5*&C'()56%4
**d&I'
()70%e%***W**
&NOQ$R'%()%1280%b"*Y*W**+&VWX!Y'"()"129:%A**
Yd=*N-++-+*+*&&	abcd%e0g6h;i@j'*;2A()A12A<9=%fN*>**
Yd>*:+++*+***
*&6
st	uv"w(x0y<{B|G}O`e'4(;2	C>f()f12f?"@APK
v7A|"org/nfunk/jep/JavaCharStream.class0
	-	-	-	-
	-
	

	-	-	-	-	-


-
-	-
-
-
-
-
-
.
-
-
 
 
-
-
-
-
'
)
)
)
staticFlagZ
ConstantValuebufposIbufsize	available
tokenBegininputStreamLjava/io/Reader;nextCharBuf[CbuffermaxNextCharIndnextCharIndinBuftabSizehexval(C)ICodeLineNumberTableLocalVariableTablecC
Exceptions
setTabSize(I)VthisLorg/nfunk/jep/JavaCharStream;i
getTabSize(I)I
ExpandBuff(Z)VtLjava/lang/Throwable;
wrapAround	newbufferFillBuff()VeLjava/io/IOException;ReadByte()C
BeginTokenAdjustBuffSizereadCharbackSlashCnt	getColumn()I
DeprecatedgetLinegetEndColumn
getEndLinegetBeginColumngetBeginLinebackupamount<init>(Ljava/io/Reader;III)Vdstream	startlinestartcolumn
buffersize(Ljava/io/Reader;II)V(Ljava/io/Reader;)VReInit-(Ljava/io/InputStream;Ljava/lang/String;III)VLjava/io/InputStream;encodingLjava/lang/String;(Ljava/io/InputStream;III)V,(Ljava/io/InputStream;Ljava/lang/String;II)V(Ljava/io/InputStream;II)V*(Ljava/io/InputStream;Ljava/lang/String;)V(Ljava/io/InputStream;)VGetImage()Ljava/lang/String;	GetSuffix(I)[ClenretDone
SourceFileJavaCharStream.javajava/io/IOExceptionjW@454<;7434java/lang/Throwablejava/lang/Error~j64=4>489:;WhJVW?4^[PQ]WZ[AB!Invalid escape character in inputjkrkjava/io/InputStreamReaderj|j{jsjxrsrxjava/lang/Stringjjava/lang/StringBuffer~org/nfunk/jep/JavaCharStreamjava/lang/Object$java/io/UnsupportedEncodingExceptionjava/lang/System	arraycopy*(Ljava/lang/Object;ILjava/lang/Object;II)V
getMessage(Ljava/lang/String;)Vjava/io/Readerread([CII)Iclose([CII)Vappend,(Ljava/lang/String;)Ljava/lang/StringBuffer;toString!-./0123454647489:;<;=4>4?4@4%ABC0f			

YDJ
 "&)
,
/258EFGHIJC:*DIEKLM4NOC9*DJEKLM4PQC,*`MI**,**d*,**d**,*Y**d`+**,**d*,*Y*dN
Y-**Y`Z
*}	D>NRT%U;W@YU]k^p`}fcehijE*RSKLT0U;VWCd*
**Z****dY<*Y*Y`M**Yd*,JKD2o
ps1v8w@zJ{K}L~S]bE -M4LXYdKLHZ[CR *Y`Z****4DE KLH\[CI*6*Yd*Y`Z******4***D&	#(0:?DEIKLH]WCc*
*%****
@*8*
***
"**
d***
D.%-8CRZbEcKL^[C"0*.*Yd*Y`Z****4*Y`Z*
****Y<[U\=*Y`Z*
****Y<[U\3u%~*YdZ
**d"*\N*\*Y<u**x*x*x*Y<UN
Y*d\uD##(2DH]_qu"$+.E4
XY
XY__40KLVFGH`aC,DEKLbcaC,DEKLbdaC,DEKLeaC,D#EKLfaC,D'EKLgaC,D+EKLhJCf&*Y`*YdZ*Y*`D0
12%3E&KL&i4jkC@*******+**Z
**D.7;	DEFG8#:.;6<?=E4@KL@l9@m4@n4@o4jpCW*+D
B
CE*KLl9m4n4jqCC*+D
G
HEKLl9rkCL*+*
***Z
*****ZZ**ZD"LNP!Q)R2TAUKVE4LKLLl9Lm4Ln4Lo4rpCW*+D
[
\E*KLl9m4n4rqCC*+D
`
aEKLl9jsC"*, Y+! Y+,"D
e!fE>"KL"lt"uv"m4"n4"o4HwjxCh* Y+!D
klE4KLltm4n4o4jyCc
*+,#D
qrE4
KL
lt
uv
m4
n4HwjzCW*+$D
w
xE*KLltm4n4j{CN*+,#D
|}E KLltuvHwj|CC*+$D

EKLltrsC"*, Y+! Y+,"D
!E>"KL"lt"uv"m4"n4"o4HwrxCg* Y+!D
E4KLltm4n4o4ryCc
*+,%D
E4
KL
lt
uv
m4
n4HwrzCW*+&D

E*KLltm4n4r{CN*+,%D
E KLltuvHwr|CC*+&D

EKLlt}~Ca**'Y****d`()Y*'Y****d(+'Y**`(+,D&EaKLCZM*`**d`,8***ddd,*dd*,*dd*`,D#AXE ZKLZ4V;WC=**D
EKLPK
v70m		org/nfunk/jep/Node.class0jjtOpen()VjjtClosejjtSetParent(Lorg/nfunk/jep/Node;)VjjtGetParent()Lorg/nfunk/jep/Node;jjtAddChild(Lorg/nfunk/jep/Node;I)VjjtGetChild(I)Lorg/nfunk/jep/Node;jjtGetNumChildren()I	jjtAcceptC(Lorg/nfunk/jep/ParserVisitor;Ljava/lang/Object;)Ljava/lang/Object;
Exceptions
SourceFile	Node.javaorg/nfunk/jep/Nodejava/lang/Objectorg/nfunk/jep/ParseException	

PK
v7@org/nfunk/jep/Operator.class03

&
&	'	(	)*
&+
,-
./0nameLjava/lang/String;symbolpfmc,Lorg/nfunk/jep/function/PostfixMathCommandI;<init>()VCodeLineNumberTableLocalVariableTablethisLorg/nfunk/jep/Operator;A(Ljava/lang/String;Lorg/nfunk/jep/function/PostfixMathCommandI;)VS(Ljava/lang/String;Ljava/lang/String;Lorg/nfunk/jep/function/PostfixMathCommandI;)V	getSymbol()Ljava/lang/String;getNamegetPFMC.()Lorg/nfunk/jep/function/PostfixMathCommandI;setPFMC/(Lorg/nfunk/jep/function/PostfixMathCommandI;)VtoString
SourceFile
Operator.javajava/lang/StringBufferOperator: "12"#org/nfunk/jep/Operatorjava/lang/Objectappend,(Ljava/lang/String;)Ljava/lang/StringBuffer;!
3*
^**+*,*+$%&' h**+*-*,0123*/*5/*7 /*8!":*+9#FY	*	
	;$%PK
v7Iorg/nfunk/jep/OperatorSet.class0
U

	T	T	T	T	T	T
	T	T
	T
	T
!	T
%
	T
*	T
.	T
2	T	T
9	T
=	T
A	T
E	T
I	T
M	T
T	

OP_GTLorg/nfunk/jep/Operator;OP_LTOP_EQOP_LEOP_GEOP_NEOP_ANDOP_OROP_NOTOP_ADDOP_SUBTRACT	OP_UMINUSOP_MULTIPLY	OP_DIVIDEOP_MOD
OP_UDIVIDEOP_POWER	OP_ASSIGNOP_DOTOP_CROSSOP_LIST
OP_ELEMENT<init>()VCodeLineNumberTableLocalVariableTablethisLorg/nfunk/jep/OperatorSet;getOperators()[Lorg/nfunk/jep/Operator;ops[Lorg/nfunk/jep/Operator;printOperatorsiIgetAdd()Lorg/nfunk/jep/Operator;getSubtract	getUMinusgetMultiply	getDividegetModgetPowergetEQgetNEgetGEgetGTgetLEgetLTgetAndgetOrgetNot	getAssigngetDotgetCrossgetList
getElement
SourceFileOperatorSet.javamnorg/nfunk/jep/Operator>"org/nfunk/jep/function/ComparativemmVW<XW==YW<=ZW>=[W!=\W&&org/nfunk/jep/function/Logical]W||^W!org/nfunk/jep/function/Not_W+org/nfunk/jep/function/Add`W-org/nfunk/jep/function/SubtractaWUMinusorg/nfunk/jep/function/UMinusmbW*org/nfunk/jep/function/MultiplycW/org/nfunk/jep/function/DividedW%org/nfunk/jep/function/ModuluseWUDivide^-1fW^org/nfunk/jep/function/PowergW=org/nfunk/jep/function/AssignhW.org/nfunk/jep/function/DotiW^^org/nfunk/jep/function/CrossjWLISTorg/nfunk/jep/function/ListkW[]org/nfunk/jep/function/ElelWtuorg/nfunk/jep/OperatorSetjava/lang/Object(I)VA(Ljava/lang/String;Lorg/nfunk/jep/function/PostfixMathCommandI;)VS(Ljava/lang/String;Ljava/lang/String;Lorg/nfunk/jep/function/PostfixMathCommandI;)Vjava/lang/SystemoutLjava/io/PrintStream;toString()Ljava/lang/String;java/io/PrintStreamprintln(Ljava/lang/String;)V!TUVWXWYWZW[W\W]W^W_W`WaWbWcWdWeWfWgWhWiWjWkWlWmnoI**YY*YY	*Y
Y*YY
*YY*YY*YY*YY*YY*YY*Y !Y"#*Y$ %Y&'(*Y)*Y+,*Y-.Y/0*Y12Y34*Y56'7*Y89Y:;*Y<=Y>?*Y@AYBC*YDEYFG*YHIYJK*YLMYNOpb;.C X!m"$%&()*,-&.:0J2^4r5678<qrstuoY*SY*	SY*SY*
SY*SY*SY*SY*SY*SY	*SY
*#SY*(SY*,SY
*0SY*4SY*;SY*?SY*CSY*GSY*KSY*OSL+p
@Fqrsvwxnon *PL=+Q+2RSpKL
MLNq yz rsvw{|o/*pPqrs}|o/*#pQqrs~|o/*(pRqrs|o/*,pSqrs|o/*0pTqrs|o/*4pUqrs|o/*;pVqrs|o/*pXqrs|o/*pYqrs|o/*pZqrs|o/*p[qrs|o/*
p\qrs|o/*	p]qrs|o/*p_qrs|o/*p`qrs|o/*paqrs|o/*?pbqrs|o/*Cpcqrs|o/*Gpdqrs|o/*Kpeqrs|o/*OpfqrsPK
v7q"org/nfunk/jep/ParseException.class0f
"ghi
jk	4l	4m	4n	4o	4p
"q
"rs

q

tu

vwxy	z{	z|	z}
4~	z

	z





serialVersionUIDJ
ConstantValueq`Lt%^specialConstructorZcurrentTokenLorg/nfunk/jep/Token;expectedTokenSequences[[I
tokenImage[Ljava/lang/String;eolLjava/lang/String;<init>.(Lorg/nfunk/jep/Token;[[I[Ljava/lang/String;)VCodeLineNumberTableLocalVariableTablethisLorg/nfunk/jep/ParseException;currentTokenValexpectedTokenSequencesVal
tokenImageVal()V(Ljava/lang/String;)Vmessage
getMessage()Ljava/lang/String;jIiexpectedmaxSizeretvaltokgetErrorInfoeLjava/lang/Exception;add_escapes&(Ljava/lang/String;)Ljava/lang/String;schCstrLjava/lang/StringBuffer;
SourceFileParseException.javaDOline.separator
BC:;<=>?@ADNQRjava/lang/StringBuffer R...    
Encountered "=TC]^
" at line T	, column T.Was expecting:Was expecting one of: at column java/lang/ExceptionUnexpected "" at column \b\t\n\f\r\"\'\\0000\uorg/nfunk/jep/ParseExceptionjava/lang/SystemgetProperty8(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;append,(Ljava/lang/String;)Ljava/lang/StringBuffer;toStringorg/nfunk/jep/Tokennextkindimage	beginLine(I)Ljava/lang/StringBuffer;beginColumnjava/lang/Stringlength()IcharAt(I)Cjava/lang/Integer(II)Ljava/lang/String;	substring(C)Ljava/lang/StringBuffer;!4"5678:;<=>?@ABCDEF&****+*,	*-
G!"#$ %%&H*&IJ&K=&L?&MADNFK***G345HIJDOFV*+**G89:HIJPCQRF**L=>*	*	2*	2=6*	2.
Y+*
*	2.2L*	2*	2d.
Y+L
Y+*LeN*:6g
Y-N
Y-*
2N+
Y-*N:
Y-**N
Y-*N*	&
Y-*N#
Y- *N
Y-+N-G~cdfghi'j/l>mclio|prhtuvwxyz|}$v*]xHR27STUTjUTIJVCWT%XCY=ZRFj|*2
Y*!*L*L=>*	*	2*	2=6*	2.
Y+*
*	2.2L*	2*	2d.
Y+L
Y+*Le#N*:6g
Y-N
Y-*
2N+
Y-*N:
Y-$*N-/0"Gr0169;FQYh	),GNTzH\	1[\\7ST=UTjUT|IJ9CVC;AWTXCY=]^F(
YM6+%+&	RU	_
is
}"'\,'W,(W,)W,*W,+W,,Wu,-Wk,.Wa+&Y> 	~H
Y/0:,
Y1%d%2W	,3W,Gjlovy#H>(_CV`aUT(IJ(bC XcdePK
v76Aorg/nfunk/jep/Parser$1.class0

SourceFileParser.java	Syntheticorg/nfunk/jep/Parser$1InnerClassesjava/lang/Objectorg/nfunk/jep/Parser 	
PK
v7tl??+org/nfunk/jep/Parser$LookaheadSuccess.class0

<init>()VCodeLineNumberTableLocalVariableTablethisLookaheadSuccessInnerClasses'Lorg/nfunk/jep/Parser$LookaheadSuccess;(Lorg/nfunk/jep/Parser$1;)Vx0Lorg/nfunk/jep/Parser$1;	Synthetic
SourceFileParser.java%org/nfunk/jep/Parser$LookaheadSuccessjava/lang/Errororg/nfunk/jep/Parser$1org/nfunk/jep/Parser0/*	

9*	

PK
v7(5wworg/nfunk/jep/Parser.class09





	
	
		
			










"	
	


		









7




7 
!
"
#
$
%
&
'
(
)
*
+
,
-
.
/
0
1
2
3
4	56
7
8
9
:
;
<
=
>
?
@
A
B
C
D	E	F
GH
I
J
K
L
M
NO
m
P
QH
QR
mS	T
QUVW
X
GYZ[
7\]
^
_Z`ab
cdefg

h
i
j
klmno	p	q	r	s
tu
v
w
x
y
z
{
|
}
~


































		
























	
	
0


	






	InnerClassesLookaheadSuccessjjtreeLorg/nfunk/jep/JJTParserState;jepLorg/nfunk/jep/JEP;symTabLorg/nfunk/jep/SymbolTable;opSetLorg/nfunk/jep/OperatorSet;initialTokenManagerStateItoken_source"Lorg/nfunk/jep/ParserTokenManager;jj_input_streamLorg/nfunk/jep/JavaCharStream;tokenLorg/nfunk/jep/Token;jj_nt
jj_scanpos
jj_lastposjj_lalookingAheadZjj_semLAjj_ls'Lorg/nfunk/jep/Parser$LookaheadSuccess;parseStream9(Ljava/io/Reader;Lorg/nfunk/jep/JEP;)Lorg/nfunk/jep/Node;CodeLineNumberTableLocalVariableTablenodeLorg/nfunk/jep/Node;eLorg/nfunk/jep/TokenMgrError;thisLorg/nfunk/jep/Parser;streamLjava/io/Reader;jep_in
Exceptionsrestart&(Ljava/io/Reader;Lorg/nfunk/jep/JEP;)V
continueParse()Lorg/nfunk/jep/Node;addToErrorList(Ljava/lang/String;)VerrorStrLjava/lang/String;setInitialTokenManagerState(I)Vstate
replaceEscape&(Ljava/lang/String;)Ljava/lang/String;metacCkinputStrlenpi	metacharscharsoutputLjava/lang/StringBuffer;Start()Lorg/nfunk/jep/ASTStart;jjte000Ljava/lang/Throwable;jjtn000Lorg/nfunk/jep/ASTStart;jjtc000
Expression()VAssignExpressionjjte001jjtn001Lorg/nfunk/jep/ASTFunNode;jjtc001RightExpressionOrExpression
AndExpressionEqualExpressionjjte002jjtn002jjtc002RelationalExpressionjjte003jjtn003jjtc003jjte004jjtn004jjtc004AdditiveExpressionMultiplicativeExpressionjjte005jjtn005jjtc005jjte006jjtn006jjtc006UnaryExpressionPowerExpressionUnaryExpressionNotPlusMinusidentStringListExpressionLValueArrayAccessVariableLorg/nfunk/jep/ASTVarNode;FunctionreqArgumentsArgumentList(ILjava/lang/String;)VfunctionNamecount
Identifier()Ljava/lang/String;tAnyConstanttempvalueLjava/lang/Object;Lorg/nfunk/jep/ASTConstant;RealConstant()Ljava/lang/Object;Ljava/lang/Exception;jj_2_1(I)Zlsxlajj_2_2jj_2_3jj_2_4jj_2_5jj_2_6jj_2_7jj_2_8jj_2_9jj_3R_40()Zjj_3R_37xspjj_3R_57jj_3R_49jj_3_8jj_3R_21jj_3R_48jj_3R_46jj_3R_18jj_3R_56jj_3R_52jj_3R_35jj_3R_34jj_3R_39jj_3R_10jj_3R_20jj_3_1jj_3R_16jj_3R_54jj_3R_15jj_3R_53jj_3R_51jj_3R_14jj_3R_36jj_3R_64jj_3R_25jj_3R_13jj_3R_33jj_3R_12jj_3R_47jj_3_9jj_3R_63jj_3R_43jj_3_7jj_3R_32jj_3R_27jj_3R_31jj_3_4jj_3_5jj_3R_30jj_3R_29jj_3R_44jj_3R_23jj_3R_28jj_3R_45jj_3R_22jj_3R_61jj_3R_38jj_3R_11jj_3R_60jj_3R_55jj_3R_42jj_3R_62jj_3R_17jj_3_2jj_3R_26jj_3R_59jj_3R_41jj_3_6jj_3_3jj_3R_24jj_3R_9jj_3R_19jj_3R_58jj_3R_50<init>(Ljava/io/InputStream;)VLjava/io/InputStream;*(Ljava/io/InputStream;Ljava/lang/String;)V&Ljava/io/UnsupportedEncodingException;encodingReInit(Ljava/io/Reader;)V%(Lorg/nfunk/jep/ParserTokenManager;)Vtmjj_consume_token(I)Lorg/nfunk/jep/Token;kindoldToken
jj_scan_tokengetNextToken()Lorg/nfunk/jep/Token;getTokenindexgenerateParseException ()Lorg/nfunk/jep/ParseException;errortokmessenable_tracingdisable_tracing
SourceFileParser.java!"A9:org/nfunk/jep/ParseExceptionNo expression entered&org/nfunk/jep/TokenMgrErrormtnrbf\"'	

\"'java/lang/StringBufferAmorg/nfunk/jep/ASTStart*wx@A	java/lang/Throwable$java/lang/RuntimeExceptionjava/lang/Error{xBA|xGAorg/nfunk/jep/ASTFunNodebA%Syntax Error (assignment not enabled)HAIAJANAUAVA	]A}x~x^A
2Syntax Error (implicit multiplication not enabled)
x_AoAxcA(fAdAaAxorg/nfunk/jep/ASTVarNodelm !Unrecognized symbol ""%&"#$%&'!!! Unrecognized function "hix(x
Function "" illegal number of arguments )" requires 
 parametersorg/nfunk/jep/ASTConstant,-*tu+,-./java/lang/Exception
Can't parse "
%org/nfunk/jep/Parser$LookaheadSuccessx
org/nfunk/jep/JJTParserState0org/nfunk/jep/JavaCharStream1$java/io/UnsupportedEncodingException2 org/nfunk/jep/ParserTokenManager3org/nfunk/jep/Token4135A66781Parse error at <unknown location>.  Encountered: org/nfunk/jep/Parserjava/lang/Object!org/nfunk/jep/ParserTreeConstantsorg/nfunk/jep/ParserConstantsorg/nfunk/jep/Parser$1org/nfunk/jep/NodejjtGetChild(I)Lorg/nfunk/jep/Node;
getMessageorg/nfunk/jep/JEPgetSymbolTable()Lorg/nfunk/jep/SymbolTable;getOperatorSet()Lorg/nfunk/jep/OperatorSet;	errorListLjava/util/Vector;java/util/Vector
addElement(Ljava/lang/Object;)VdefaultLexStatejava/lang/Stringlength()IindexOf(II)I	substring(II)Ljava/lang/String;append,(Ljava/lang/String;)Ljava/lang/StringBuffer;charAt(I)C(I)I(C)Ljava/lang/StringBuffer;(I)Ljava/lang/String;toString
openNodeScope(Lorg/nfunk/jep/Node;)VcloseNodeScope(Lorg/nfunk/jep/Node;Z)VclearNodeScopepopNode(Lorg/nfunk/jep/Node;I)VgetAllowAssignmentorg/nfunk/jep/OperatorSet	getAssign()Lorg/nfunk/jep/Operator;setOperator(Lorg/nfunk/jep/Operator;)VgetOrgetAndgetNEgetEQgetLTgetGTgetLEgetGEgetAddgetSubtractimplicitMulgetMultiplygetDotgetCross	getDividegetMod	getUMinusgetNotgetPowerfunTabLorg/nfunk/jep/FunctionTable;imageorg/nfunk/jep/FunctionTablecontainsKey(Ljava/lang/Object;)ZgetList
getElementorg/nfunk/jep/SymbolTablegetVar,(Ljava/lang/String;)Lorg/nfunk/jep/Variable;setVar(Lorg/nfunk/jep/Variable;)VallowUndeclaredmakeVarIfNeededget@(Ljava/lang/String;)Lorg/nfunk/jep/function/PostfixMathCommandI;*org/nfunk/jep/function/PostfixMathCommandIgetNumberOfParameterssetFunctionA(Ljava/lang/String;Lorg/nfunk/jep/function/PostfixMathCommandI;)VcheckNumberOfParameters(I)Ljava/lang/StringBuffer;setValuegetNumberFactory$()Lorg/nfunk/jep/type/NumberFactory; org/nfunk/jep/type/NumberFactorycreateNumber&(Ljava/lang/String;)Ljava/lang/Object;(Lorg/nfunk/jep/Parser$1;)V,(Ljava/io/InputStream;Ljava/lang/String;II)V(Ljava/lang/Throwable;)V!(Lorg/nfunk/jep/JavaCharStream;)Vnextreset(Ljava/io/Reader;II)V
tokenImage[Ljava/lang/String;!	

u2*+,**N-
Y-NY-	
$%
%&4&222 !"o!*+
*,**
**$&
'( ) !!!#$~ *L++LY+	
ABCEF   %&D*+
KL'()*J**VW
X+,-]
+=>::Y:+\Y6\+W`D+`66		\WW	W`>+ W!Jabdegi&j3l>oHrQsWx_yj|wf
H4./Q+0	1(23"s45(6(}789:xT"Y#L=*$+%*&e*'*()-#**W**W**WY+*$+,=+N*$+,-*()y*(),"**W**W**WY+*$+,=N*$+,-**WY+N*$+.=*$/W-0-0---1:*$+,n-}--nB}BDB,	@FIPSYajlnr}%,18=BH*6;<T	K=>I? @Ap.*23
*4 *5
*6**WY+	%-. BAf7Y8L=*$+%*9**W*'*$+:=*;
Y<+*=>X*$+:LN*$+.=*$/W-0-0---1:*$+:L\-L\f	"+-ALP\]ainv}*]6C<	DEF GA3*?

 HA{*@*()7Y8L=*$+%**W*@*$+:=+*A>X*$+:LN*$+.=*$/W-0-0---1:*$+:U5Vf-5Vfn"+-5<@IK V0Z1f!g"k#s$x&()+,.015*g6C<+DE-F IA{*B*()7Y8L=*$+%**W*B*$+:=+*C>X*$+:LN*$+.=*$/W-0-0---1:*$+:U5Vf-5Vfn8;>@"B+C-D5F<G@HIIKJVZZ[fKgLkMsNxPRSUVXZ[_*g6C<+DE-F JA*D*()Y*()A7Y8L=*$+%**W*D*$+:=+*E>*$+:wN*$+.=*$/W-0-0---1:*$+:7Y8N6*$-%**W*D*$-:6-*F>*$-::*$-.6*$/W0	0	1:*$-:**WY+_-_ -_ a_4be$i'k*mLoUpWq_sftjusvuwxyz{} "'/5=EKSY_frxH6C<UDEWF"=K<LEM NAO*G*()$!!$!!*()#I7Y8L=*$+%**W*G*$+:=+*H>s*$+:gN*$+.=*$/W-0-0---1:*$+:7Y8N6*$-%**W*G*$-:6-*I>*$-::*$-.6*$/W0	0	1:*$-:7Y8:6*$%**W*G*$:6*J>F*$:9:*$.6*$/W0	0	1:
*$:7Y8:6*$%**W*G*$:6*K>*$::	*$.6*$/W	0		0				1:

*$:
**WY+o-o0-o0qo-8\n-8\n`,/2\egovz$027?EMU[ciov	
",/8? C!M"P#\3a4n$p%u&~')+,./1349:=
6C<eDEgF2=K<LEM>O<PEQp>R<	,SE/T UA*L*()Y*()A7Y8L=*$+%**W*L*$+:=+*M>*$+:wN*$+.=*$/W-0-0---1:*$+:7Y8N6*$-%**W*L*$-:6-*N>*$-::*$-.6*$/W0	0	1:*$-:**WY+_-_ -_ a_4@C$G'I*KLMUNWO_QfRjSsTuUefVWXY[]^`acefklmopqrs t"u'v/w5y={E|K~SY_frxH6C<UDEWF"=K<LEM VA
*O*P*Q7Y8L=*$+%*R*$+:=*S
YT+*U>X*$+:LN*$+.=*$/W-0-0---1:*$+:V*()2%,22R7Y8L=*$+%**W*O*$+:=+*U>*$+:N*$+.=*$/W-0-0---1:*$+:7Y8N6*$-%* *W*O*$-:6-*V>[*$-:O:*$-.6*$/W0	0	1:*$-:7Y8:6*$%*%*W*O*$:6*W>*$::*$.6*$/W0	0	1:
*$:7Y8:6*$%*!*W*O*$:6*X>*$::	*$.6*$/W	0		0				1:

*$:
7Y8:	6
*$	%*"*W*O*$	:6
	*Y>
~*$	:q:
*$	.6
*$/W0	0	1:

*$	:**WY+'Ue-'Ue(-_(a_- DV- DV-686`-`.'+46JUYefjrw
()-5:BINUZ_eqz}
 '+58DIVX]flt|	
,- "$%"'*(0*6,=-J2T3W4`6g7k8u9x:JK;<=>@BCEFHJKPQUf6C<DEF)6K<LEM=O<zPE}QX>R<SET>W<	XEY>Z<T[E	W\
 ]Az*()U!/#**W*OF7Y8L=*$+%**W*O*$+:=+*Z>*$+:N*$+.=*$/W-0-0---1:*$+:7Y8N6*$-%*#*W*O*$-:6-*[>~*$-:r:*$-.6*$/W0	0	1:*$-:*\
*R**WY+Ijz-Ijz
-I
KI5X(Z/[3\6^?_A`IbPcTd]e_fjvnwzg{hijlnoqrtvw|}~
'/5=CIP\dkqyH{6C<?DEAF=K<LEMz ^Aj*]*()$7Y8L=*$+%*$*W*O*$+:=+*^>X*$+:LN*$+.=*$/W-0-0---1:*$+:/P`-/P`f%'/6:CEPT`aemrz*a6C<%DE'F _A^_L*())")")"*`*2a
*b*c)*c)*d*cef
*gg*()O,,&H(3*h-*(*W*'*)*W*i**WY+R,03<Cry`( aA}7Y8L=*$+%+*j>*&*W*'*()**W*'*'*WX*$+,LN*$+.=*$/W-0-0---1:*$+,_o-_oj	%)DGJQX_copt|

*p6;<	=E? bAF*2k
*b8*() *h**WY+""	#%0(4)7+=,E/F cAR*h*i7Y8L=*$+%*$+:=+*l>*$+:N*$+:-1AABA6
234568$9&:1<5=A<F=Q@ RADE?F dA_LmYnM>*$,%*oL*$,,>*
+p,*
+qr8*s,*
+tr*Yu+v!w^*$,,R:*$,.>*$/W0	0	1:*$,,u-unCDEFHI$J&K1L@NJOYQucydTUVWY[\^_acdg4;C<`(DeF fA<_M7Y8N6*$-%*oM*d,f'*d,xy<-,*d,xz*Y{,v!w*(*W*,|*)*Wa*$-,U:*$-.6*$/W0	0	1:*$-,-rjklmnpq,s=uPxlzs{y|}~>=C<g`(DEF hio>_:*}<*'*()**W*'>*d,x~sY,!:*wLGY,!:Y!:*wR036=AGL`~4gj(k'( lmG*()-#**L**L**WY++e" '*14:B 'n1nG oAYL=*$+%*()rXrXr"**N*$+,=-e-ed:*:++*:*$+,=+**WY+^*$+,R:*$+.=*$/W0	0	1:*$+,-!	<CLNaiorxHC/nap(xqr;;<	=s? tuz*()-	#**L*	*L**WY+*+eM%NM*Y+ev!w,BSV6
 ' *"1#4%:&B)S-V*W+Y,x/>'n1nSqrW!vzY!qr wxp"****Z*M456  y""z{xp"****Z*M:;<  y""z|xp"****Z*M@AB  y""z}xp"****Z*MFGH  y""z~xp"****Z*MLMN  y""zxp"****Z*MRST  y""zxp"****Z*MXYZ  y""zxp"****Z*M^_`  y""zxp"****Z*Mdef  y""z;
*
jk
`*L**+*pqrsuH**yz{H**9*
	9*
	H**4*L*)*+**+**+*&	$)24/F**	H**4*L*)*+**+**+*&	$)24/H**d *L**+* _**L**+	`*L**+*9*
	9*
	H*"*H**H*!*H**`*L**+*	

H*%*_**L**+	H**!"#}5*&**L**+*''(+,(.3/5H* *3459*
9	:H**>?@H**DEF_**L**+J	MNPO*L**+UVWd *L**+*	\]^_a 9*
e	fW!*(**)jklm!_**L**+q	tuw9*
{	|L*L*A*+*5*+*)*+**+**+*6
$)05<AJLG9*
	9*
	9*
	_**L**+	*L**+*~*+***c)*c)*d*cef**
*™)*+*Ù*+*ę*+*řB"Z_mry~9*ƙ
	H**Ǚ_*Ǚ*L*ș*+	H**əd**ʙ*(*˙*)	(*9*̙
	H**ə`*L*͙*+*Ι_*ə*L*ϙ*+	H*$*
\*Й*L*љ*+	H*ҙ*	U*ҙ**	 !"H**&'(9*ә
,	-9*
1	29*ԙ
6	79*ʙ
;	<`*L*ՙ*+*ABCDF9*֙
J	KH**OPQH*#*UVW?*+ױ
cdo**Yڵ$***Y۵*Y+,޵ߧ
N0Y-*Y*߷*Y***Z(%47*
e	_%fAgPh[inj*8	ooo(?*+
mnI*+,
N0Y-**߶*Y***Z(*$pq#r.sAtHu*	III(a**Yڵ$***Y۵*Y+*Y*߷*Y***Z(*
w	_%x3yBzM{`|aa;*+**߶*Y***Z(*$
 3:;;I**Yڵ$***Y۵*+*Y***Z(&		_%*5HIIo+*+*Y***Z(*$#*++W*M**(Z**((**(*Z(*)***(*,*""5@EMR WWR x~**E*Yd*****ZZ!***Z***)****ܿ&	:MXe|~~g5**(Z**((**(*Z(*05>*
**M>%,,M,*ZM,)6<*'4>>+n}7*L+)2+eMYY,! 7/(A+A+PK
v7.WFForg/nfunk/jep/Parser.jjt/***************************************************************

@header@
@date@
@copyright@
@license@

This file contains the grammar from which the parser is
generated. The parser generation tools being used are JavaCC
and its component JJTree. JJTree processes the .jjt file and
generates the .jj file. This file is then used be JavaCC to
generate the final java classes.

Knowledge of parser generation is definitely beneficial if you
are planning to make changes to this file. Although many parts
are self explanatory, it is helpful to know how the grammar is
handled by JJTree and JavaCC.

You can follow the structure of the grammar by starting in the
line which reads "ASTStart Start() #Start : {}". From there you
will be able to trace the same path the parser follows when
parsing an expression.

The concept of precedence is very important. Since this is a
recursive descent parser, it is easy to see which operators have
higher order of precedence. The following table outlines the
order incorporated in this grammar.

Order of precedence (from lowest to highest):

   ||               or  (logical)
   &&               and (logical)
   ==  !=           equal, not equal
   <   >   <=  >=   less, greater, less or equal, greater or equal
   +   -            addition, subtraction
   *   /   %        multiplication, division, modulus
   !   +   -        not, unary +/-
   ^                power

The order of precedence is greatly inspired by the operator
precedence of the C language. See "The C Programming Language"
Kernighan & Richie 2nd Ed p.53. Java also uses a very similar
precedence. Note that the '^' operator is used for bitwise 
exclusive OR in Java and C, but represents the power operator
in this grammar.

***************************************************************/



/***************************************************************
OPTIONS
***************************************************************/
options {
	JAVA_UNICODE_ESCAPE = true;
	MULTI = true;
	VISITOR = true;
	VISITOR_EXCEPTION = "ParseException";
	NODE_DEFAULT_VOID = true;
//	NODE_PACKAGE = "org.nfunk.jep.parser";
//	BUILD_NODE_FILES=false;
	STATIC = false;
//	DEBUG_TOKEN_MANAGER = true;
//	DEBUG_PARSER = true;
//	DEBUG_LOOKAHEAD = true;
}


/***************************************************************
PARSER BEGIN
***************************************************************/

PARSER_BEGIN(Parser)
package org.nfunk.jep;

import java.util.Vector;
import org.nfunk.jep.function.*;
import org.nfunk.jep.type.*;

public class Parser {
	private JEP     jep;
	private SymbolTable symTab;
	private OperatorSet opSet;
	private int initialTokenManagerState = DEFAULT;
	
	public Node parseStream(java.io.Reader stream, JEP jep_in)
							throws ParseException {
		restart(stream,jep_in);
		// Parse the expression, and return the 
		enable_tracing();
		try
		{
			Node node = Start();
			if (node == null) throw new ParseException("No expression entered");
			return node.jjtGetChild(0);
		}
		catch(TokenMgrError e) {
			throw new ParseException(e.getMessage());
		}
	}

	/** 
	 * Restart the parse with the given stream.
	 * @since 2.3.0 beta 1
	 */
	public void restart(java.io.Reader stream, JEP jep_in)
	{
		ReInit(stream);
   		//this.token_source.SwitchTo(initialTokenManagerState);
		jep = jep_in;
		symTab = jep.getSymbolTable();
		opSet = jep.getOperatorSet();
	}
	/**
	 * Continue parsing without re-initilising stream.
	 * Allows reentrance of parser so that strings like
	 * "x=1; y=2; z=3;" can be parsed.
	 * When a semi colon is encountered parsing finishes leaving the rest of the string unparsed.
	 * Parsing can be resumed from the current position by using this method.
	 * For example
	 * <pre>
	 * XJep j = new XJep();
	 * Parser parse = j.getParse();
	 * StringReader sr = new StringReader("x=1; y=2; z=3;");
	 * parse.restart(sr,j);
	 * Node node;
	 * try {
	 * while((node = j.continueParse())!=null) {
	 *    j.println(node);
	 * } }catch(ParseException e) {}
	 * </pre>
	 */
	public Node continueParse() throws ParseException
	{
		try
		{
			Node node = Start();
			if (node == null) return null;
			return node.jjtGetChild(0);
		}
		catch(TokenMgrError e) {
			throw new ParseException(e.getMessage());
		}
	}

	private void addToErrorList(String errorStr) {
		jep.errorList.addElement(errorStr);		
	}

	/**
	 * Sets the initial state that the token manager is in.
	 * Can be used to change how x.x is interpreted, either as a single
	 * identifier (DEFAULT) or as x <DOT> x (NO_DOT_IN_IDENTIFIERS)
	 * @param state the state to be in. Currently the only legal values are DEFAULT and NO_DOT_IN_IDENTIFIER
	 */
	public void setInitialTokenManagerState(int state)
	{
		initialTokenManagerState = state;
		token_source.defaultLexState = state;
	}
	/**
	 * Translate all escape sequences to characters. Inspired by Rob Millar's
	 * unescape() method in rcm.util.Str fron the Web Sphinx project.
	 *
	 * @param inputStr String containing escape characters.
	 * @return String with all escape sequences replaced.
	 */
	private String replaceEscape(String inputStr) {
		int len = inputStr.length();
		int p = 0;
		int i;
		String metachars = "tnrbf\\\"'";
		String chars = "\t\n\r\b\f\\\"'";
		
		StringBuffer output = new StringBuffer();
		
		while ((i = inputStr.indexOf('\\', p)) != -1) {
			output.append(inputStr.substring(p, i));
			
			if (i+1 == len) break;
			
			// find metacharacter
            char metac = inputStr.charAt(i+1);
            
            // find the index of the metac
            int k = metachars.indexOf(metac);
            if (k == -1) {
            	// didn't find the metachar, leave sequence as found.
            	// This code should be unreachable if the parser
            	// is functioning properly because strings containing
            	// unknown escape characters should not be accepted.
            	output.append('\\');
                output.append(metac);
            } else {
            	// its corresponding true char
                output.append(chars.charAt(k));   
            }

			// skip over both escape character & metacharacter
            p = i + 2;
		}

		// add the end of the input string to the output
        if (p < len)
            output.append(inputStr.substring(p));
            
        return output.toString();
	}
}

PARSER_END(Parser)

/***************************************************************
SKIP
***************************************************************/

<*> SKIP :
{
  " "
  | "\t"
  | "\n"
  | "\r"

  | <"//" (~["\n","\r"])* ("\n"|"\r"|"\r\n")>
  | <"/*" (~["*"])* "*" (~["/"] (~["*"])* "*")* "/">
}


/***************************************************************
TOKENS
***************************************************************/

<*> TOKEN : /* LITERALS */
{
	< INTEGER_LITERAL:
		<DECIMAL_LITERAL>
	>
|
	< #DECIMAL_LITERAL: ["0"-"9"] (["0"-"9"])* >
|
	< FLOATING_POINT_LITERAL:
		(["0"-"9"])+ "." (["0"-"9"])* (<EXPONENT>)?
		| "." (["0"-"9"])+ (<EXPONENT>)?
		| (["0"-"9"])+ <EXPONENT>
	>
|
	< #EXPONENT: ["e","E"] (["+","-"])? (["0"-"9"])+ >
|
	< STRING_LITERAL:
		"\""
		( (~["\"","\\","\n","\r"])
		| ("\\" ["n","t","b","r","f","\\","'","\""]	)
		)*
		"\""
	>
}

/* IDENTIFIERS 
	
	Letters before version 2.22
	< #LETTER: ["_","a"-"z","A"-"Z"] >

	In Ver 2.3.0.1 presence of . in an identifier is switchable.
	In the DEFAULT lexical state identifiers can contain a .
	In the NO_DOT_IN_IDENTIFIERS state identifiers cannot contain a .
	the state can be set by using
	Parser.setInitialTokenManagerState
*/

<DEFAULT> TOKEN:
{
	<INDENTIFIER1: <LETTER1>(<LETTER1>|<DIGIT1>|".")*>
	|
	< #LETTER1:
	[
		"\u0024",           // $
		"\u0041"-"\u005a",  // A - Z
		"\u005f",           // _
		"\u0061"-"\u007a",  // a - z
		"\u00c0"-"\u00d6",  // Upper case symbols of Latin-1 Supplement
		"\u00d8"-"\u00f6",  // Lower case symbols of Latin-1 Supplement
		"\u00f8"-"\u00ff",  // More lower case symbols of Latin-1 Supplement
		"\u0100"-"\u1fff",  // Many languages (including Greek)
		"\u3040"-"\u318f",  // Hiragana, Katakana, Bopomofo, Hangul Compatibility Jamo
		"\u3300"-"\u337f",  // CJK Compatibility
		"\u3400"-"\u3d2d",  // CJK Unified Ideographs Extension A
		"\u4e00"-"\u9fff",  // CJK Unified Ideographs
		"\uf900"-"\ufaff"   // CJK Compatibility Ideographs
	]
	>	
|
	< #DIGIT1: ["0"-"9"] >
}

<NO_DOT_IN_IDENTIFIERS> TOKEN:
{
	<INDENTIFIER2: <LETTER2>(<LETTER2>|<DIGIT2>)*>
	|
	< #LETTER2:
	[
		"\u0024",           // $
		"\u0041"-"\u005a",  // A - Z
		"\u005f",           // _
		"\u0061"-"\u007a",  // a - z
		"\u00c0"-"\u00d6",  // Upper case symbols of Latin-1 Supplement
		"\u00d8"-"\u00f6",  // Lower case symbols of Latin-1 Supplement
		"\u00f8"-"\u00ff",  // More lower case symbols of Latin-1 Supplement
		"\u0100"-"\u1fff",  // Many languages (including Greek)
		"\u3040"-"\u318f",  // Hiragana, Katakana, Bopomofo, Hangul Compatibility Jamo
		"\u3300"-"\u337f",  // CJK Compatibility
		"\u3400"-"\u3d2d",  // CJK Unified Ideographs Extension A
		"\u4e00"-"\u9fff",  // CJK Unified Ideographs
		"\uf900"-"\ufaff"   // CJK Compatibility Ideographs
	]
	>	
	|
	< #DIGIT2: ["0"-"9"] >
}

/* OPERATORS */
<*> TOKEN:
{
	< ASSIGN:"="  > // rjm
|	< SEMI:	";" >	// rjm
|	< COMMA: "," >	// rjm
|	< GT:   ">"  >
|	< LT:   "<"  >
|	< EQ:   "==" >
|	< LE:   "<=" >
|	< GE:   ">=" >
|	< NE:   "!=" >
|	< AND:  "&&" >
|	< OR:   "||" >
|	< PLUS: "+"  >
|	< MINUS:"-"  >
|	< MUL:  "*"  >
|	< DOT:  "."  >	// rjm
|	< DIV:  "/"  >
|	< MOD:  "%"  >
|	< NOT:  "!"  >
|	< POWER:"^"  >
|	< CROSS:"^^" > // rjm
|	< LSQ:	"["  >	// rjm
|	< RSQ:	"]"	 >	// rjm
|	< LRND:	"("  >	// rjm
|	< RRND:	")"	 >	// rjm
|	< COLON: ":" >	// rjm
}


/***************************************************************
GRAMMAR START
***************************************************************/

ASTStart Start() #Start :
{
}
{
	Expression() ( <EOF> | <SEMI> ) { return jjtThis; }
	|  ( <EOF> | <SEMI> )
	{
		// njf - The next line is commented out in 2.3.0 since
		//       two "No expression entered" errors are reported
		//       in EvaluatorVisitor and Console (one from here
		//       the other from ParseStream() )
		//       Decided to just return null, and handle the error
		//       in ParseStream.
		// addToErrorList("No expression entered");
		return null;
	}
}

// Expresions can be like
// x=3
// x=y=3 parsed as x=(y=3)

void Expression() : {}
{
	LOOKAHEAD(LValue() <ASSIGN>)		// need to prevent javacc warning with left recusion
	AssignExpression() // rjm changes from OrExpresion
	|
	RightExpression()
}

void AssignExpression() : {} // rjm addition
{
	
	( LValue() <ASSIGN> Expression()
		{
			if (!jep.getAllowAssignment()) throw new ParseException(
        	"Syntax Error (assignment not enabled)");
			
			jjtThis.setOperator(opSet.getAssign());
		}
	  )
	  #FunNode(2)
}

void RightExpression() :
{
}
{
	OrExpression()
}

void OrExpression() :
{
}
{
	AndExpression()
	(
	  ( <OR> AndExpression()
		{
			jjtThis.setOperator(opSet.getOr());
		}
	  ) #FunNode(2)
	)*
}


void AndExpression() :
{
}
{
	EqualExpression()
	(
	  ( <AND> EqualExpression()
		{
			jjtThis.setOperator(opSet.getAnd());
		}
	  ) #FunNode(2)
	)*
}



void EqualExpression() :
{
}
{
	RelationalExpression()
	(
	  ( <NE> RelationalExpression()
	    {
	    jjtThis.setOperator(opSet.getNE());
	    }
	  ) #FunNode(2)
	|
	  ( <EQ> RelationalExpression()
	    {
	      jjtThis.setOperator(opSet.getEQ());
	    }
	  ) #FunNode(2)
	)*
}



void RelationalExpression() :
{
}
{
  AdditiveExpression()
  (
    ( <LT> AdditiveExpression()
      {
	    jjtThis.setOperator(opSet.getLT());
      }
	) #FunNode(2)
	|
    ( <GT> AdditiveExpression()
      {
        jjtThis.setOperator(opSet.getGT());
      }
    ) #FunNode(2)
    |
    ( <LE> AdditiveExpression()
      {
	    jjtThis.setOperator(opSet.getLE());
      }
	) #FunNode(2)
	|
    ( <GE> AdditiveExpression()
      {
        jjtThis.setOperator(opSet.getGE());
      }
    ) #FunNode(2)
  )*
}


void AdditiveExpression() :
{
}
{
  MultiplicativeExpression()
  (
    ( <PLUS> MultiplicativeExpression()
      {
        jjtThis.setOperator(opSet.getAdd());
      }
    ) #FunNode(2)
    |
    ( <MINUS> MultiplicativeExpression()
      {
        jjtThis.setOperator(opSet.getSubtract());
      }
    ) #FunNode(2)
  )*
}


void MultiplicativeExpression() :
{
}
{
  UnaryExpression()
  (
    (       
      PowerExpression()
      {
        if (!jep.implicitMul) throw new ParseException(
        	"Syntax Error (implicit multiplication not enabled)");
        	
        jjtThis.setOperator(opSet.getMultiply());
      }
    ) #FunNode(2)
    |
    ( <MUL> UnaryExpression()
      {
        jjtThis.setOperator(opSet.getMultiply());
      }
    ) #FunNode(2)
    |
    ( <DOT> UnaryExpression()
      {
        jjtThis.setOperator(opSet.getDot());
      }
    ) #FunNode(2)
    |
    ( <CROSS> UnaryExpression()
      {
        jjtThis.setOperator(opSet.getCross());
      }
    ) #FunNode(2)
	|
    ( <DIV> UnaryExpression()
      {
        jjtThis.setOperator(opSet.getDivide());
      }
    ) #FunNode(2)
    |
    ( <MOD> UnaryExpression()
      {
        jjtThis.setOperator(opSet.getMod());
      }
    ) #FunNode(2)
  )*
}


void UnaryExpression() :
{
}
{
  ( <PLUS> UnaryExpression())
|
  ( <MINUS> UnaryExpression()
    {
	  jjtThis.setOperator(opSet.getUMinus());
    }
  ) #FunNode(1)
|
  ( <NOT> UnaryExpression()
    {
	  jjtThis.setOperator(opSet.getNot());
    }
  ) #FunNode(1)
|
  PowerExpression()
}


void PowerExpression() :
{
}
{
  UnaryExpressionNotPlusMinus()
  [
  ( <POWER> UnaryExpression()
    {
      jjtThis.setOperator(opSet.getPower());
    }
  ) #FunNode(2)
  ]
}


void UnaryExpressionNotPlusMinus() :
{
	String identString = "";
	int type;
}
{
	AnyConstant()
	|
	LOOKAHEAD(ArrayAccess())
	ArrayAccess()
	|
	LOOKAHEAD({ (getToken(1).kind == INDENTIFIER1 || getToken(1).kind == INDENTIFIER2) &&
				  jep.funTab.containsKey(getToken(1).image) })
	Function()
	|
	Variable()
	|
	<LRND> Expression() <RRND>
	|
//	LOOKAHEAD(<LSQ> Expression() <COLON>)
//	RangeExpression()
//	|
	ListExpression()
}

void ListExpression() #FunNode:
{
	jjtThis.setOperator(opSet.getList());
}
{
	<LSQ> Expression() ( <COMMA> Expression() )* <RSQ> 
}

/*
void RangeExpression()  #FunNode:
{
	jjtThis.setOperator(opSet.getRange());
}
{
	<LSQ> Expression() ( <COLON> Expression() )+ <RSQ>
}
*/

void LValue() :
{
}
{
	LOOKAHEAD(ArrayAccess())
	ArrayAccess()
	| 	Variable()
}

void ArrayAccess() : 
{
}
{
	Variable() ListExpression()
	{
     jjtThis.setOperator(opSet.getElement());
	} #FunNode(2)

}
void Variable() :
{
	String identString = "";
}
{
	(identString = Identifier()
	{
		if (symTab.containsKey(identString)) {
			jjtThis.setVar(symTab.getVar(identString));
		} else {
			if (jep.allowUndeclared) {
				jjtThis.setVar(symTab.makeVarIfNeeded(identString));
			} else {
				addToErrorList("Unrecognized symbol \"" + identString +"\"");
			}
		}
	}
	) #VarNode
}



void Function() :
{
	int reqArguments = 0;
	String identString = "";
}
{
	( identString = Identifier()
		{
			if (jep.funTab.containsKey(identString)) {
				//Set number of required arguments
				reqArguments =
					((PostfixMathCommandI)jep.funTab.get(identString)).getNumberOfParameters();
				jjtThis.setFunction(identString,
					(PostfixMathCommandI)jep.funTab.get(identString));
			} else {
				addToErrorList("!!! Unrecognized function \"" + identString +"\"");
			}
		}
		
		<LRND> ArgumentList(reqArguments, identString) <RRND>
		
	) #FunNode
}

void ArgumentList(int reqArguments, String functionName) :
{
	int count = 0;
	String errorStr = "";
}
{
	[
	Expression() { count++; }
	(
		<COMMA>
		Expression() { count++; }
	)*
	]
    {
    	if(reqArguments == -1) {
    		if(!((PostfixMathCommandI)jep.funTab.get(functionName)).checkNumberOfParameters(count))
    		{
				errorStr = "Function \"" + functionName +"\" illegal number of arguments " + count;
				addToErrorList(errorStr);
			}
    	}
    	else if (reqArguments != count) {
			errorStr = "Function \"" + functionName +"\" requires "
			           + reqArguments + " parameter";
			if (reqArguments!=1) errorStr += "s";
			addToErrorList(errorStr);
		}
    }
}



String Identifier() :
{
  Token t;
}
{
	( t = <INDENTIFIER1> |	t = <INDENTIFIER2> ) { return t.image; }
}


void AnyConstant() #Constant:
{
	Token t;
	Object value;
}
{
	t=<STRING_LITERAL> {
		// strip away double quotes at end of string
		String temp = (t.image).substring(1,t.image.length()-1);
		
		// replace escape characters
		temp = replaceEscape(temp);
		
		jjtThis.setValue(temp);
	}
	|
	value = RealConstant() {
		jjtThis.setValue(value);
//	}
//	|
//	value = Array() {
//		jjtThis.setValue(value);
	}
}

/*
Vector Array() :
{
	Object value;
	Vector result = new Vector();
}
{
	<LSQ>
	value = RealConstant()
	{
		result.addElement(value);
	}
	(
		<COMMA>
		value = RealConstant()
		{
			result.addElement(value);
		}
	)* 
	<RSQ>
	{
		return result;
	}
}
*/




Object RealConstant() :
{
  Token t;
  Object value;
}
{
	(t=<INTEGER_LITERAL>	|	t=<FLOATING_POINT_LITERAL>)
	{
		try {
			value = jep.getNumberFactory().createNumber(t.image);
		} catch (Exception e) {
			value = null;
			addToErrorList("Can't parse \"" + t.image + "\"");
		}
	
		return value;
	}
}
PK
v7~#org/nfunk/jep/ParserConstants.class0	.EOFI
ConstantValueINTEGER_LITERALDECIMAL_LITERALFLOATING_POINT_LITERAL	EXPONENT
STRING_LITERALINDENTIFIER1LETTER1
DIGIT1INDENTIFIER2LETTER2DIGIT2ASSIGNSEMICOMMAGTLTEQLEGENEANDORPLUSMINUSMULDOT DIV!MOD"NOT#POWER$CROSS%LSQ&RSQ'LRND(RRND)COLON*NO_DOT_IN_IDENTIFIERSDEFAULT
tokenImage[Ljava/lang/String;<clinit>()VCodeLineNumberTable
SourceFileParserConstants.javajava/lang/String<EOF>" ""\t""\n""\r"<token of kind 5><token of kind 6><INTEGER_LITERAL><DECIMAL_LITERAL><FLOATING_POINT_LITERAL>
<EXPONENT><STRING_LITERAL><INDENTIFIER1>	<LETTER1><DIGIT1><INDENTIFIER2>	<LETTER2><DIGIT2>"="";"","">""<""==""<="">=""!=""&&""||""+""-""*"".""/""%""!""^""^^""[""]""("")"":"org/nfunk/jep/ParserConstantsjava/lang/Object./(0123412561278129:12;<12=>12?@12AB12CD12EF12GH12IJ12KL12MN12OP12QR12ST12UV12WX12YZ12[\12]^12_`12ab12cd12ef12gh12ij12kl12mn12op12qr12st12uv12wx12yz12{|123}12~+YSYSYSYSYSYSYSY	SY
SY	SY
SY
SYSY
SYSYSYSYSYSYSYSYSYSYSYSYSYSYSYSYSY SY!SY "SY!#SY"$SY#%SY$&SY%'SY&(SY')SY(*SY)+SY*,S-/PK
v7{B

%org/nfunk/jep/ParserDumpVisitor.class0]
5	67
58
9
:	;<
=
>?
@A
BC
DC
EC
FC
GCHIJindentI<init>()VCodeLineNumberTableLocalVariableTablethis!Lorg/nfunk/jep/ParserDumpVisitor;indentString()Ljava/lang/String;isbLjava/lang/StringBuffer;visit@(Lorg/nfunk/jep/SimpleNode;Ljava/lang/Object;)Ljava/lang/Object;nodeLorg/nfunk/jep/SimpleNode;dataLjava/lang/Object;
ExceptionsK>(Lorg/nfunk/jep/ASTStart;Ljava/lang/Object;)Ljava/lang/Object;Lorg/nfunk/jep/ASTStart;@(Lorg/nfunk/jep/ASTFunNode;Ljava/lang/Object;)Ljava/lang/Object;Lorg/nfunk/jep/ASTFunNode;@(Lorg/nfunk/jep/ASTVarNode;Ljava/lang/Object;)Ljava/lang/Object;Lorg/nfunk/jep/ASTVarNode;A(Lorg/nfunk/jep/ASTConstant;Ljava/lang/Object;)Ljava/lang/Object;Lorg/nfunk/jep/ASTConstant;
SourceFileParserDumpVisitor.javajava/lang/StringBuffer  LMNOPQLR): acceptor not unimplemented in subclass?STUVWXYZ[\org/nfunk/jep/ParserDumpVisitorjava/lang/Objectorg/nfunk/jep/ParserVisitororg/nfunk/jep/ParseExceptionappend,(Ljava/lang/String;)Ljava/lang/StringBuffer;toStringjava/lang/SystemoutLjava/io/PrintStream;,(Ljava/lang/Object;)Ljava/lang/StringBuffer;java/io/PrintStreamprintln(Ljava/lang/String;)Vorg/nfunk/jep/SimpleNodechildrenAcceptC(Lorg/nfunk/jep/ParserVisitor;Ljava/lang/Object;)Ljava/lang/Object;org/nfunk/jep/ASTStartorg/nfunk/jep/ASTFunNodeorg/nfunk/jep/ASTVarNodeorg/nfunk/jep/ASTConstant!8
**

r$YL=*+W+ !"!$ 
 $!"#$=Y*	+
*Y`+*,
M*Yd,( **+1,;- ==%&='()*#+8Y*	+
*Y`+*,M*Yd,12%3,465 88%,8'()*#-8Y*	+
*Y`+*,M*Yd,9:%;,<6= 88%.8'()*#/8Y*	+
*Y`+*,M*Yd,AB%C,D6E 88%08'()*#18Y*	+
*Y`+*,M*Yd,IJ%K,L6M 88%28'()*34PK
v7?g[==&org/nfunk/jep/ParserTokenManager.class0	$
%
&	'	(	)
*+	,-
.
/
0 
1	2	3	4	5	6
7
8
9
:
;(@$  @D
<
=
>
?
@
A
B	C	D	E	F	G	H	I	J
K	LM	N	O
P
Q
RST
`KU
`V
`WX
`Y
_Z
[\	[]	^
*_	[`
*a
b
*c&
d
e	f	g
*h
*ij
_k?lmnopqrstuvwxyz{|}~	~	debugStreamLjava/io/PrintStream;	jjbitVec0[J	jjbitVec2	jjbitVec3	jjbitVec4	jjbitVec5	jjbitVec6	jjbitVec7	jjbitVec8jjnextStates[IjjstrLiteralImages[Ljava/lang/String;
lexStateNames
jjnewLexState	jjtoTokenjjtoSkipinput_streamLorg/nfunk/jep/JavaCharStream;jjrounds
jjstateSetcurCharCcurLexStateIdefaultLexState
jjnewStateCntjjroundjjmatchedPos
jjmatchedKindsetDebugStream(Ljava/io/PrintStream;)VCodeLineNumberTableLocalVariableTablethis"Lorg/nfunk/jep/ParserTokenManager;dsjjStopStringLiteralDfa_1(IJ)Iposactive0JjjStartNfa_1jjStopAtPos(II)IkindjjStartNfaWithStates_1(III)IeLjava/io/IOException;statejjMoveStringLiteralDfa0_1()IjjMoveStringLiteralDfa1_1(J)IjjCheckNAdd(I)VjjAddStates(II)VstartendjjCheckNAddTwoStatesstate1state2jjCheckNAddStatesjjMoveNfa_1lhiBytei1l1i2l2
startStatecurPosstartsAtijjStopStringLiteralDfa_0jjStartNfa_0jjStartNfaWithStates_0jjMoveStringLiteralDfa0_0jjMoveStringLiteralDfa1_0jjMoveNfa_0jjCanMove_0(IIIJJ)ZjjCanMove_1<init>!(Lorg/nfunk/jep/JavaCharStream;)Vstream"(Lorg/nfunk/jep/JavaCharStream;I)VlexStateReInitReInitRounds()VSwitchTojjFillToken()Lorg/nfunk/jep/Token;tLorg/nfunk/jep/Token;imLjava/lang/String;getNextTokenmatchedTokene1
error_lineerror_columnerror_afterEOFSeenZspecialToken<clinit>
SourceFileParserTokenManager.javajava/io/IOException		

org/nfunk/jep/TokenMgrErrorjava/lang/StringBuffer(Error: Ignoring invalid lexical state : . State unchanged.		java/lang/String=;,><==<=>=!=&&||+-*./%!^^^[]():NO_DOT_IN_IDENTIFIERSDEFAULT org/nfunk/jep/ParserTokenManagerjava/lang/Objectorg/nfunk/jep/ParserConstantsorg/nfunk/jep/JavaCharStreamreadChar()Cjava/lang/Systemoutappend,(Ljava/lang/String;)Ljava/lang/StringBuffer;(I)Ljava/lang/StringBuffer;toString()Ljava/lang/String;(Ljava/lang/String;I)Vorg/nfunk/jep/TokennewToken(I)Lorg/nfunk/jep/Token;GetImageimage
BeginTokenbackup
getEndLinegetEndColumn(ZIIILjava/lang/String;CI)V!:*+
1. 	 	

 *-/ 111L** ` T**	` 
! '**	**
	:`*`

%&
'()4''''
x*m!%&()*+,-./:
;<=+>9[G]O^W|e*#**"**(*)***** *!
**********&*'*$***n-013579;=?ACEGI!K'L/N5O=QCRKTSV[XaYi[q]xc**

N*W*&,=>^|	w*	*	*	*	/*	*%	**
VbfcdegHjRkZndolpvq~rstuxy|} 	i)* .*!*"*Y#Z`#O* *!O
())d*"*Y#Z`#$.O Q*%*%
 X*$.%	 Q*$.%*$`.%	86*$#6*"O&6*Y!`Z!&*'*@^
*y7*".?#:?\o?)=Qh}?aw??	***(*/*)~*	6*)^*/*	,J*$6*%-*"*
)*.*%*			6*(-	*%*			6*%*"*
)/	*
)1	}*
)r*"ib6[*$O6*%;3	-6*%*/*	,5	*)7	6*
6*
*"*Y#Z`#O***(9	*(}**t*
,i;	^*(S9	H*(=*/4-6&*	6*)*	6*%*	*(*.		6*(*			6*(-	z*%q*	c		6*%O*	D* !(9-	.*#%%*			6*#%*
*?~y7*".c!cccccccccccc!c,,cccccc7cccM=	6*%?	*,A	*
)*\y*"*Y#Z`#OdC	Y*
)N*,E*(:*(/?	$*,?	*,@*z6z6	
?~y7
*~z6
*?~y7
*".jj	

E6*%m	

F]*
,R	

FB*,9	

F)*(	

F*(&**	&6*#Y6$*Z#dY6**
:
	'+4<
 *3>GNR[dox&-
69@
DJMX[bflox !$%(),-01458*95<@=K@[AbDmEpFwG{HIKLMNOPRSVWXYZ[]^_`abdeh"i%j,k0l6m9oDpOsZtcwnxqyxz|{|DORY]cfq|$+4AL+6FQX_ejnq<Pt$4+-	4$
AL
1. 	 	
 *-/ 111L** G`H '**	**
	:`*`H


4''''
x*m!%&()*+,-./:
;<=+>9[G]O^W|e*#*I*"*I*(*)***** J*!
J*****I**I**I*&*'*$*I*I*Hn

!#!%'&/(5)=+C,K.S0[2a3i5q7xc**

N*GW*&,=>^|	w*	*	*	*	/*	*%	**K
V<@=>?AHDREZHdIlJvK~LMNORSVW\ 	86*$#6*"O&6*Y!`Z!&*'*@^
*y7*".?#:?\o?)=Qh}?aw??	***(*/*)~*	6*)^*/*	,J*$6*%-*"*
)*.*%*			6*(-	*%*			6*%*"*
)/	*
)1	}*
)r*"ib6[*$O6*%;L	-6*%*/*	,5	*)7	6*
6*
*"*Y#Z`#O***(9	*(}**t*
,i;	^*(S9	H*(=*/4-6&*	6*)*	6*%*	*(*.		6*(*			6*(-	z*%q*	c		6*%O*	D* !(9-	.*#%%*			6*#%*
*?~y7*".c!cccccccccccc!c,,cccccc7cccM=	6*%?	*,A	*
)*\y*"*Y#Z`#OdC	Y*
)N*,E*(:*(/?	$*,?	*,@*z6z6	
?~y7
*~z6
*?~y7
*".jj	

E6*%m	

F]*
,R	

FB*,9	

F)*(	

F*(&**	&6*#Y6$*Z#dY6**
:
ab	cdeh'i+j4l<orstu
xz{ |*~3>GNR[dox&-69@DJMX[bflox*5@K[bmpw{	"
%,069DOZcnqx| #%'*D.O/R0Y1]2c3f5q6|9:=>ABEFHILMOPSTX\$]+^4_A`Lcghijklnorsv+w6{F|QX_ejnq<Pt$4+-	4$
AL
7&N/	O/!	'3547777730F1Y3l=P/	Q/	R/	S/	T/	U/!	&	4GZm4	
{+*V*W*$
 *H
"*X*Y*+
"	 %*++	Q*+Z*[
 

`**Z#	**YX*+
*'
]*\!$<Yd<* ]O	Q*+^*[
 
p0$_Y`Yabcdecfg*X	*/00
|.*hL+*ij*2M+,
*
k,l+, .&o	
M6**
m:**nN-*Xe*
o*  p
*y	**
mݧ:*&*	*r6J*
o*  p
*y	**
mݧ:H*&*	*s6*&r*	`*
*	ddot*z/
*?~y	"*nNu*.*u*.X-u*.*u*.X*
v6*
w6:6*
W*
o::	6x
*
k:*
*
6*
ox
*
k:_Y*X*y
@nq

aqt
3
!@H`nv| !"$%&'*,-.01 2,3.7:8I<R=[>^?a@qJtAvByCDEFIKLMO
sv5	R[^a !JYzPY|PY|PY|POY	PY	PY|PY|PNY~PYPYPYPUY	PY	PY	PYPPY	PY|PY|PY|PQY|PY|PYPY	PRY|PY|PY	PY	PSYPY	PY	PY	PT
YOYOYOYOYOYOY OY!OY
OY	OY
OYOY	OY
OYOYOYOYOYOY"OY#O$+YxSYSYSYSYSYSYSYSYSY	SY
SYSYSY
SYSYSYSYSYSYSYSYSYSYSYSYSYSYSYSYSYSYSY SY!SY"SY#SY$SY%SY&SY'SY(SY)SY*SjYSYS+
YOYOYOYOYOYOYOYOYOY	OY
OYOYOY
OYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOYOY OY!OY"OY#OY$OY%OY&OY'OY(OY)OY*OuYPtYP:8VnUHY1="#PK
v7(t99'org/nfunk/jep/ParserTreeConstants.class0' !"#	$%&JJTSTARTI
ConstantValueJJTVOID
JJTFUNNODE
JJTVARNODEJJTCONSTANTjjtNodeName[Ljava/lang/String;<clinit>()VCodeLineNumberTable
SourceFileParserTreeConstants.javajava/lang/StringStartvoidFunNodeVarNodeConstant!org/nfunk/jep/ParserTreeConstantsjava/lang/Object	

9!YSYSYSYSYSPK
v7QXX!org/nfunk/jep/ParserVisitor.class0
visit@(Lorg/nfunk/jep/SimpleNode;Ljava/lang/Object;)Ljava/lang/Object;
Exceptions>(Lorg/nfunk/jep/ASTStart;Ljava/lang/Object;)Ljava/lang/Object;@(Lorg/nfunk/jep/ASTFunNode;Ljava/lang/Object;)Ljava/lang/Object;@(Lorg/nfunk/jep/ASTVarNode;Ljava/lang/Object;)Ljava/lang/Object;A(Lorg/nfunk/jep/ASTConstant;Ljava/lang/Object;)Ljava/lang/Object;
SourceFileParserVisitor.javaorg/nfunk/jep/ParserVisitorjava/lang/Objectorg/nfunk/jep/ParseException	
PK
v7|{org/nfunk/jep/SimpleNode.class0u
L	M
N	O	P	QR
STUVW	XYZ
L
[
\
\	S]
^
_`ab
cdparentLorg/nfunk/jep/Node;children[Lorg/nfunk/jep/Node;idIparserLorg/nfunk/jep/Parser;<init>(I)VCodeLineNumberTableLocalVariableTablethisLorg/nfunk/jep/SimpleNode;i(Lorg/nfunk/jep/Parser;I)VpjjtOpen()VjjtClosejjtSetParent(Lorg/nfunk/jep/Node;)VnjjtGetParent()Lorg/nfunk/jep/Node;jjtAddChild(Lorg/nfunk/jep/Node;I)VcjjtGetChild(I)Lorg/nfunk/jep/Node;jjtGetNumChildren()I	jjtAcceptC(Lorg/nfunk/jep/ParserVisitor;Ljava/lang/Object;)Ljava/lang/Object;visitorLorg/nfunk/jep/ParserVisitor;dataLjava/lang/Object;
ExceptionsechildrenAccepttoString()Ljava/lang/String;&(Ljava/lang/String;)Ljava/lang/String;prefixLjava/lang/String;dump(Ljava/lang/String;)VgetId
SourceFileSimpleNode.java + !org/nfunk/jep/Nodefghijk9:lmnjava/lang/StringBufferopBCqrBDstHorg/nfunk/jep/SimpleNode GHjava/lang/Objectorg/nfunk/jep/ParseExceptionjava/lang/System	arraycopy*(Ljava/lang/Object;ILjava/lang/Object;II)Vorg/nfunk/jep/ParserVisitorvisit@(Lorg/nfunk/jep/SimpleNode;Ljava/lang/Object;)Ljava/lang/Object;!org/nfunk/jep/ParserTreeConstantsjjtNodeName[Ljava/lang/String;append,(Ljava/lang/String;)Ljava/lang/StringBuffer;outLjava/io/PrintStream;java/io/PrintStreamprintln! !"F
**#	$
%&
' ("Q**+#
$ %&)'*+"+#!$%&,+"+#$$%&-.":*+#&$%&/01"/*#'$%&23"@**`'*`N*-**-*+S#"*+,-$.3/81?2$*$4@%&@/@'56";*2#5$%&'78";**#9$%&9:"G	+*,	#?$ 	%&	;<	=>?@A:"(*">**2+,
W,#EFG F&J$*	'(%&(;<(=>?@BC"3	*2#S$	%&BD"JY
+*#T$%&EFGH"I*+*9=*.*2N--Y
+ϱ#"[\^`'a+bB^Hf$*'/&4'I%&IEFI8"/*#l$%&JKPK
v7q,org/nfunk/jep/SymbolTable$StObservable.class0 	

this$0Lorg/nfunk/jep/SymbolTable;	Synthetic<init>(Lorg/nfunk/jep/SymbolTable;)VCodeLineNumberTableLocalVariableTablethisStObservableInnerClasses(Lorg/nfunk/jep/SymbolTable$StObservable;stSetChanged()VgetSymbolTable()Lorg/nfunk/jep/SymbolTable;
SourceFileSymbolTable.java	&org/nfunk/jep/SymbolTable$StObservablejava/util/Observable
setChangedorg/nfunk/jep/SymbolTable!	
>
*+*


$3*

/*

PK
v7u{bzorg/nfunk/jep/SymbolTable.class0
6{|
}	5~	5
5
6

5

{









5
6

5


5
5







/{
/
5
/
StObservableInnerClassesserialVersionUIDJ
ConstantValuevfLorg/nfunk/jep/VariableFactory;obeservable(Lorg/nfunk/jep/SymbolTable$StObservable;<init>"(Lorg/nfunk/jep/VariableFactory;)VCodeLineNumberTableLocalVariableTablethisLorg/nfunk/jep/SymbolTable;varFac()Vget&(Ljava/lang/Object;)Ljava/lang/Object;keyLjava/lang/Object;
DeprecatedgetValuevarLorg/nfunk/jep/Variable;getVar,(Ljava/lang/String;)Lorg/nfunk/jep/Variable;nameLjava/lang/String;put8(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;valsetVarValue'(Ljava/lang/String;Ljava/lang/Object;)VcreateVariable>(Ljava/lang/String;Ljava/lang/Object;)Lorg/nfunk/jep/Variable;addVariableaddConstantmakeVarIfNeededtoString()Ljava/lang/String;eLjava/util/Enumeration;sbLjava/lang/StringBuffer;clearValuesgetVariableFactory!()Lorg/nfunk/jep/VariableFactory;addObserver(Ljava/util/Observer;)VargLjava/util/Observer;countObservers()IdeleteObserverdeleteObservers
hasChanged()ZaddObserverToExistingVariablesenclearNonConstantstmpLjava/util/Vector;
SourceFileSymbolTable.javaBJ&org/nfunk/jep/SymbolTable$StObservableB@A>?PLKLorg/nfunk/jep/VariablePjava/lang/String`]java/lang/NullPointerExceptionjava/lang/StringBuffer	Variable  does not exist.abB\]J\Tjava/lang/IllegalStateException already exists.WX^]s1Attempt to change the value of constant variable s
jknopkqJrsjava/util/VectorJborg/nfunk/jep/SymbolTablejava/util/Hashtable(Lorg/nfunk/jep/SymbolTable;)V()Ljava/lang/Object;setValue(Ljava/lang/Object;)Zappend,(Ljava/lang/String;)Ljava/lang/StringBuffer;(Ljava/lang/String;)Vorg/nfunk/jep/VariableFactorystSetChangednotifyObservers(Ljava/lang/Object;)V
setValidValue(Z)V
setIsConstant
isConstantelements()Ljava/util/Enumeration;java/util/EnumerationhasMoreElementsnextElementaddcleargetName!569:;<>?@ABCDV**Y**+EJKLFGHI?BJDC**Y*ENNFGHKLD:*+ESFGHMNOPLDZ*+M,,	EZ	[\F GHMN	QRSTD=	*+EcF	GH	UVWXDH
*+
,EkF 
GH
MN
YNOZ[D4*+N-
-,W
YY+Eu	v
wxzF*4GH4UV4YN	+QR\]Do*+,N**--E
F*GHUVYN
QR\TDd*+M**,,E	F GHUV	QR^]DB*+N-#YY+*+,N*+-W--E	
-4;@F*BGHBUVBYN	9QR_]D^*+,N- -EF*GHUVYNQR`]DG*+N---!YY"+-,W-*+,N*+-W-E&		
/57>EF*GGHGUVGYN	>QR`TDl*+M,,*+#M*+,W,E	F GHUV	QRabD8YL*$M,% ,&N+-'W+(W+E )3F* QR
&cd8GH0efgJDk!*$L+%+&M,E F QRcd!GHhiD/*EFGH!jkDA	*+)E

F	GH	lm!noD2**EFGH!pkDA	*++E
F	GH	lm!qJD6*,E
FGH!rsD2*-EFGH!tkDu!*$M,%,&N-+.E$%& (F*QRud!GH!lmvJDZ/Y0L*$M,%,&N-!	+-1W*2+3M,%,&N*-4-WE&	+,- .0041B2L3Y5F> 
QR
#udL
QR9 udZGHRwxyz8
57PK
v7rorg/nfunk/jep/Token.class0"
	 
!kindI	beginLinebeginColumnendLine	endColumnimageLjava/lang/String;nextLorg/nfunk/jep/Token;specialToken<init>()VCodeLineNumberTableLocalVariableTablethistoString()Ljava/lang/String;newToken(I)Lorg/nfunk/jep/Token;ofKind
SourceFile
Token.java
org/nfunk/jep/Tokenjava/lang/Object!	

/*/*:BY
KMPK
v7Æ

!org/nfunk/jep/TokenMgrError.class0T
U
VW
VXY
Z[\]^_`ab
cd
ef
Vg
hi
jklmn
Vo
%pqrs
&t
&U
&u	%v
%w
%xyz
LEXICAL_ERRORI
ConstantValueSTATIC_LEXER_ERRORINVALID_LEXICAL_STATE
LOOP_DETECTED	errorCode
addEscapes&(Ljava/lang/String;)Ljava/lang/String;CodeLineNumberTableLocalVariableTablesLjava/lang/String;chCistrretvalLjava/lang/StringBuffer;LexicalError+(ZIIILjava/lang/String;C)Ljava/lang/String;EOFSeenZlexState	errorLineerrorColumn
errorAftercurChar
getMessage()Ljava/lang/String;thisLorg/nfunk/jep/TokenMgrError;<init>()V(Ljava/lang/String;I)Vmessagereason(ZIIILjava/lang/String;CI)V
SourceFileTokenMgrError.javajava/lang/StringBufferLM{|}~\b\t\n\f\r\"\'\\0000I\uLexical error at line 	, column .  Encountered: <EOF> "23 (), 	after : "HIL1(?@LNorg/nfunk/jep/TokenMgrErrorjava/lang/Errorjava/lang/Stringlength()IcharAt(I)Cappend,(Ljava/lang/String;)Ljava/lang/StringBuffer;java/lang/IntegertoString(II)Ljava/lang/String;	substring(C)Ljava/lang/StringBuffer;(I)Ljava/lang/StringBuffer;valueOf(C)Ljava/lang/String;(Ljava/lang/String;)V!%&'()*+(),-()./()01(234#YL>**	QT	^
hr
|"'\+W+W+W+	W+
W~+Wt+Wj+
W`*Y= 	~HY:+YdW	+W+5j)+,h/k1r2u4|578:;=>@ACDFGIJKM+R64(78V9:
;(#<8=>?@4nY1Y5b6>nABnC(nD(nE(nF8nG:HI4/*5s6JKLM43* 5
z{6JKLN4Q*+!*"5~
6 JKO8P(LQ4*#$5
6RJKABC(D(E(F8G:P(RSPK
v7[eorg/nfunk/jep/Variable.class0N
5	6	7	8	9
:
;
<
=>

5

?@

AB
CADEFnameLjava/lang/String;valueLjava/lang/Object;
isConstantZ
validValue<init>(Ljava/lang/String;)VCodeLineNumberTableLocalVariableTablethisLorg/nfunk/jep/Variable;'(Ljava/lang/String;Ljava/lang/Object;)VgetName()Ljava/lang/String;()Z
setIsConstant(Z)VbgetValue()Ljava/lang/Object;
hasValidValue
setValidValuevalsetValue(Ljava/lang/Object;)ZobjectsetValueRawtoString
SourceFile
Variable.javaG%1/HGIJjava/lang/StringBufferKL: null2$: M (Constant)org/nfunk/jep/Variablejava/util/Observable()V
setChangednotifyObservers(Ljava/lang/Object;)Vappend,(Ljava/lang/String;)Ljava/lang/StringBuffer;java/lang/Object!j****+**(	 )*+, !"|&****+*,*,2	 345%6 & !&&#$/*7 !%/*9 !&':*: !()*/*; !+%/*= !,'B**@ !-./U*+**+	P
QRS !01/U***+b	cde !02$s*
*
Y*
*)
Y**
Y**qr%s,tRvs !34PK
v7ntFJJ#org/nfunk/jep/VariableFactory.class0(
	 !
"
#$%defaultValueLjava/lang/Object;<init>()VCodeLineNumberTableLocalVariableTablethisLorg/nfunk/jep/VariableFactory;createVariable>(Ljava/lang/String;Ljava/lang/Object;)Lorg/nfunk/jep/Variable;nameLjava/lang/String;valuevarLorg/nfunk/jep/Variable;,(Ljava/lang/String;)Lorg/nfunk/jep/Variable;getDefaultValue()Ljava/lang/Object;setDefaultValue(Ljava/lang/Object;)V
SourceFileVariableFactory.java
	org/nfunk/jep/Variable
&
'org/nfunk/jep/VariableFactoryjava/lang/Object'(Ljava/lang/String;Ljava/lang/Object;)V(Ljava/lang/String;)V!	
8
**


XY+,N-


*	
Y*Y+*Y+
$%'/*
.>*+

67	PK
v7i-org/nfunk/jep/evaluation/CommandElement.class0@
8	9	:	;	<	=>?VARI
ConstantValueCONSTFUNCtypevarNameLjava/lang/String;pfmc,Lorg/nfunk/jep/function/PostfixMathCommandI;nParamvalueLjava/lang/Object;<init>()VCodeLineNumberTableLocalVariableTablethis)Lorg/nfunk/jep/evaluation/CommandElement;getPFMC.()Lorg/nfunk/jep/function/PostfixMathCommandI;getType()IgetValue()Ljava/lang/Object;
getVarName()Ljava/lang/String;getNumParamsetPFMC/(Lorg/nfunk/jep/function/PostfixMathCommandI;)VcommandIsetType(I)VisetValue(Ljava/lang/Object;)Vobject
setVarName(Ljava/lang/String;)VstringsetNumParam
SourceFileCommandElement.java

'org/nfunk/jep/evaluation/CommandElementjava/lang/Object!	





/* !/*"#/*!$%/*(&'/*/(#/*6)*>*+
=>+,->*
DE.
/0>*+
KL123>*+
RS45->*
YZ.
67PK
v7N22/org/nfunk/jep/evaluation/CommandEvaluator.class0c
34
3	5
6	7	8
9:
9;	<
9=>?>@
9A
BC
D
9E
FGH
I
JKL	nCommandsInParamcommand)Lorg/nfunk/jep/evaluation/CommandElement;stackLjava/util/Stack;pfmc,Lorg/nfunk/jep/function/PostfixMathCommandI;i<init>()VCodeLineNumberTableLocalVariableTablethis+Lorg/nfunk/jep/evaluation/CommandEvaluator;evaluateY([Lorg/nfunk/jep/evaluation/CommandElement;Lorg/nfunk/jep/SymbolTable;)Ljava/lang/Object;commands*[Lorg/nfunk/jep/evaluation/CommandElement;symTabLorg/nfunk/jep/SymbolTable;
Exceptions
SourceFileCommandEvaluator.java#$java/util/StackM$"NOPQR !SPTUVWXYZ[\]^]\_`Pjava/lang/Exception0CommandEvaluator.evaluate(): Stack size is not 1#ab_)org/nfunk/jep/evaluation/CommandEvaluatorjava/lang/ObjectremoveAllElements'org/nfunk/jep/evaluation/CommandElementgetType()IgetPFMC.()Lorg/nfunk/jep/function/PostfixMathCommandI;getNumParam*org/nfunk/jep/function/PostfixMathCommandIsetCurNumberOfParameters(I)Vrun(Ljava/util/Stack;)V
getVarName()Ljava/lang/String;org/nfunk/jep/SymbolTablegetValue&(Ljava/lang/Object;)Ljava/lang/Object;push()Ljava/lang/Object;size(Ljava/lang/String;)Vpop! !"#$%B**Y&'()*+%F+>****+*2*]G**	
*
**
*
(*,*W**W*Y`q*
Y*&F!#
&'(!*D-O1_3l4o89=QSTV'*(),-./012PK
v7ږ1org/nfunk/jep/evaluation/ExpressionCompiler.class0
AB
A	C
DEF
GH
IJKJL
MN
A
O
MP
Q
MR
S
T
UV
W
XY
Z[\]commandsLjava/util/Vector;<init>()VCodeLineNumberTableLocalVariableTablethis-Lorg/nfunk/jep/evaluation/ExpressionCompiler;compile@(Lorg/nfunk/jep/Node;)[Lorg/nfunk/jep/evaluation/CommandElement;nodeLorg/nfunk/jep/Node;temp*[Lorg/nfunk/jep/evaluation/CommandElement;enLjava/util/Enumeration;iI
Exceptions^visit@(Lorg/nfunk/jep/ASTFunNode;Ljava/lang/Object;)Ljava/lang/Object;Lorg/nfunk/jep/ASTFunNode;dataLjava/lang/Object;c)Lorg/nfunk/jep/evaluation/CommandElement;@(Lorg/nfunk/jep/ASTVarNode;Ljava/lang/Object;)Ljava/lang/Object;Lorg/nfunk/jep/ASTVarNode;A(Lorg/nfunk/jep/ASTConstant;Ljava/lang/Object;)Ljava/lang/Object;Lorg/nfunk/jep/ASTConstant;@(Lorg/nfunk/jep/SimpleNode;Ljava/lang/Object;)Ljava/lang/Object;Lorg/nfunk/jep/SimpleNode;>(Lorg/nfunk/jep/ASTStart;Ljava/lang/Object;)Ljava/lang/Object;Lorg/nfunk/jep/ASTStart;
SourceFileExpressionCompiler.javajava/util/Vector_`abcd'org/nfunk/jep/evaluation/CommandElementefghijklmbnopqrstduovwxyz{|}~kw+org/nfunk/jep/evaluation/ExpressionCompilerjava/lang/Objectorg/nfunk/jep/ParserVisitororg/nfunk/jep/ParseExceptionremoveAllElementsorg/nfunk/jep/Node	jjtAcceptC(Lorg/nfunk/jep/ParserVisitor;Ljava/lang/Object;)Ljava/lang/Object;size()Ielements()Ljava/util/Enumeration;java/util/EnumerationhasMoreElements()ZnextElement()Ljava/lang/Object;org/nfunk/jep/ASTFunNodechildrenAcceptsetType(I)VgetPFMC.()Lorg/nfunk/jep/function/PostfixMathCommandI;setPFMC/(Lorg/nfunk/jep/function/PostfixMathCommandI;)VjjtGetNumChildrensetNumParam
addElement(Ljava/lang/Object;)Vorg/nfunk/jep/ASTVarNodegetName()Ljava/lang/String;
setVarName(Ljava/lang/String;)Vorg/nfunk/jep/ASTConstantgetValuesetValue!B**Y !"#$%D*+*W*M*	N6-
,-S, "#&/ B"!4D"#D&')()#!*+&,-./01.+*,WY
N--+-+*-, &()*+$,,.!*."#.&2.3456./07wY
N--+*-, 23
457!*"#&8345609wY
N--+*-, ;<
=>@!*"#&:34560;@, D! "#&<340=@, H! "#&>34?@PK
v7JU%org/nfunk/jep/evaluation/package.html<body>
An experimental fast evaluator which "compiles" an expression into a set
of CommandElement objects rather than traversing the parse tree. These classes
are still experimental and are not used by default for evaluation.
</body>
PK
v7\'yy org/nfunk/jep/function/Abs.class0F
%	&
'
()
*
(+,-
.
/0
1
2345
678<init>()VCodeLineNumberTableLocalVariableTablethisLorg/nfunk/jep/function/Abs;run(Ljava/util/Stack;)VinStackLjava/util/Stack;paramLjava/lang/Object;
Exceptionsabs&(Ljava/lang/Object;)Ljava/lang/Object;
SourceFileAbs.java9:;<=>!"?"org/nfunk/jep/type/Complexjava/lang/Double!@Ajava/lang/NumberB@C!Dorg/nfunk/jep/ParseExceptionInvalid parameter typeEorg/nfunk/jep/function/Abs)org/nfunk/jep/function/PostfixMathCommandnumberOfParametersI
checkStackjava/util/Stackpop()Ljava/lang/Object;push()D(D)VdoubleValuejava/lang/Math(D)D(Ljava/lang/String;)V!<
**	
_*++M+*,W
 
 !"}9+Y+	
+Y+

Y$&(*/-99 #$PK
v7JRS org/nfunk/jep/function/Add.class0n
?	@
A
BC	D
E
BFG
HI
J
KLM
?
N
OPQ
RS

T
U
V
W
XYZ<init>()VCodeLineNumberTableLocalVariableTablethisLorg/nfunk/jep/function/Add;run(Ljava/util/Stack;)VparamLjava/lang/Object;stackLjava/util/Stack;sumiI
Exceptionsadd8(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;param1param28(Ljava/lang/Number;Ljava/lang/Number;)Ljava/lang/Double;d1Ljava/lang/Number;d2V(Lorg/nfunk/jep/type/Complex;Lorg/nfunk/jep/type/Complex;)Lorg/nfunk/jep/type/Complex;c1Lorg/nfunk/jep/type/Complex;c2L(Lorg/nfunk/jep/type/Complex;Ljava/lang/Number;)Lorg/nfunk/jep/type/Complex;cd
SourceFileAdd.java[,\%]^_`,./aborg/nfunk/jep/type/Complex.6java/lang/Number.:.2java/lang/Stringjava/lang/StringBuffercdeforg/nfunk/jep/ParseExceptionInvalid parameter typegjava/lang/Doublehijkilimorg/nfunk/jep/function/Add)org/nfunk/jep/function/PostfixMathCommandnumberOfParameters
checkStackjava/util/Stackpop()Ljava/lang/Object;curNumberOfParameterspush&(Ljava/lang/Object;)Ljava/lang/Object;append,(Ljava/lang/String;)Ljava/lang/StringBuffer;toString()Ljava/lang/String;(Ljava/lang/String;)VdoubleValue()D(D)Vreim(DD)V!<
** 	!
"#$%/*++M6*+N*-,M+,W &	"$
&
)+."0(3.5!4
&'/"#/()
%*'
"+,-./++,*+,	,
f*+,
+
+,*,+
,
7*+
,
+
#,
Y+
,
Y 6
DFGH"I/K6M=NJOQP^RlSV! "#0'1'-.2OY+,c Z! "#3454.6XY+,c+,c ^! "#7898.:SY+,c+ b! "#;8<4=>PK
v7M
&org/nfunk/jep/function/ArcCosine.class0G
%	&
'
()
*
(+,
-./
	0
12

345
678<init>()VCodeLineNumberTableLocalVariableTablethis"Lorg/nfunk/jep/function/ArcCosine;run(Ljava/util/Stack;)VinStackLjava/util/Stack;paramLjava/lang/Object;
Exceptionsacos&(Ljava/lang/Object;)Ljava/lang/Object;
SourceFileArcCosine.java9:;<=>!"?"org/nfunk/jep/type/Complex!@java/lang/Numberjava/lang/DoubleABC!DEorg/nfunk/jep/ParseExceptionInvalid parameter typeF org/nfunk/jep/function/ArcCosine)org/nfunk/jep/function/PostfixMathCommandnumberOfParametersI
checkStackjava/util/Stackpop()Ljava/lang/Object;push()Lorg/nfunk/jep/type/Complex;doubleValue()Djava/lang/Math(D)D(D)V(Ljava/lang/String;)V!<
**	
_*++M+*,W !
"# 
 !"v2+++	
Y+	
Y)+-/(222 #$PK
v7gg'org/nfunk/jep/function/ArcCosineH.class0S
,	-
.
/0
1
/23
45
	6
78
79:

;
<=>
?@A<init>()VCodeLineNumberTableLocalVariableTablethis#Lorg/nfunk/jep/function/ArcCosineH;run(Ljava/util/Stack;)VinStackLjava/util/Stack;paramLjava/lang/Object;
Exceptionsacosh&(Ljava/lang/Object;)Ljava/lang/Object;resDtempLorg/nfunk/jep/type/Complex;val
SourceFileArcCosineH.javaBCDEFG#$H$org/nfunk/jep/type/Complex#Ijava/lang/NumberJKLMNONjava/lang/DoublePQorg/nfunk/jep/ParseExceptionInvalid parameter typeR!org/nfunk/jep/function/ArcCosineH)org/nfunk/jep/function/PostfixMathCommandnumberOfParametersI
checkStackjava/util/Stackpop()Ljava/lang/Object;push()Lorg/nfunk/jep/type/Complex;doubleValue()Djava/lang/Mathsqrt(D)Dlog(D)V(DD)V(Ljava/lang/String;)V!<
**	
_*++M+*,W 
!" 
 !"#$^+++	A+	
I((((kgc9
YY+	
:Y*
(*,./$031=5N6T:43
%&N'(6)&^^ !"*+PK
v7ğkZ$org/nfunk/jep/function/ArcSine.class0G
%	&
'
()
*
(+,
-./
	0
12

345
678<init>()VCodeLineNumberTableLocalVariableTablethis Lorg/nfunk/jep/function/ArcSine;run(Ljava/util/Stack;)VinStackLjava/util/Stack;paramLjava/lang/Object;
Exceptionsasin&(Ljava/lang/Object;)Ljava/lang/Object;
SourceFileArcSine.java9:;<=>!"?"org/nfunk/jep/type/Complex!@java/lang/Numberjava/lang/DoubleABC!DEorg/nfunk/jep/ParseExceptionInvalid parameter typeForg/nfunk/jep/function/ArcSine)org/nfunk/jep/function/PostfixMathCommandnumberOfParametersI
checkStackjava/util/Stackpop()Ljava/lang/Object;push()Lorg/nfunk/jep/type/Complex;doubleValue()Djava/lang/Math(D)D(D)V(Ljava/lang/String;)V!<
**	
_*++M+*,W
 
 !"v2+++	
Y+	
Y$&(*(-22 #$PK
v7tZ%org/nfunk/jep/function/ArcSineH.class0N
)	*
+
,-
.
,/0
12
	3
45
467

89:
;<=<init>()VCodeLineNumberTableLocalVariableTablethis!Lorg/nfunk/jep/function/ArcSineH;run(Ljava/util/Stack;)VinStackLjava/util/Stack;paramLjava/lang/Object;
Exceptionsasinh&(Ljava/lang/Object;)Ljava/lang/Object;valDres
SourceFile
ArcSineH.java>?@ABC"#D#org/nfunk/jep/type/Complex"Ejava/lang/NumberFGHIJKJjava/lang/DoubleLorg/nfunk/jep/ParseExceptionInvalid parameter typeMorg/nfunk/jep/function/ArcSineH)org/nfunk/jep/function/PostfixMathCommandnumberOfParametersI
checkStackjava/util/Stackpop()Ljava/lang/Object;push()Lorg/nfunk/jep/type/Complex;doubleValue()Djava/lang/Mathsqrt(D)Dlog(D)V(Ljava/lang/String;)V!<
**	
_*++M+*,W 
!" 
 !"#A+++	$+	
I(((kcc9
YY(*,./-074*$%-
&%AA !'(PK
v7@7bb$org/nfunk/jep/function/ArcTanH.class0T
/	0
1
23
4
256
78
	9
:;@<
=
>?@
ABC<init>()VCodeLineNumberTableLocalVariableTablethis Lorg/nfunk/jep/function/ArcTanH;run(Ljava/util/Stack;)VinStackLjava/util/Stack;paramLjava/lang/Object;
Exceptionsatanh&(Ljava/lang/Object;)Ljava/lang/Object;resDtempLorg/nfunk/jep/type/Complex;val
SourceFileArcTanH.javaDEF GHI&'J'org/nfunk/jep/type/Complex&Kjava/lang/NumberLMNOPjava/lang/DoubleQRorg/nfunk/jep/ParseExceptionInvalid parameter typeSorg/nfunk/jep/function/ArcTanH)org/nfunk/jep/function/PostfixMathCommandnumberOfParametersI
checkStackjava/util/Stackpop()Ljava/lang/Object;push()Lorg/nfunk/jep/type/Complex;doubleValue()Djava/lang/Mathlog(D)D(D)V(DD)V(Ljava/lang/String;)V!<
**	
 _*++M+*,W 
!" !"
#$%&'a+++	D+	
I(#((c(go
o9YY(:Y*
(*,./,0<1F5Q6W:4<
()Q*+9,)aa#$%-.PK
v7-Г'org/nfunk/jep/function/ArcTangent.class0G
%	&
'
()
*
(+,
-./
	0
12

345
678<init>()VCodeLineNumberTableLocalVariableTablethis#Lorg/nfunk/jep/function/ArcTangent;run(Ljava/util/Stack;)VinStackLjava/util/Stack;paramLjava/lang/Object;
Exceptionsatan&(Ljava/lang/Object;)Ljava/lang/Object;
SourceFileArcTangent.java9:;<=>!"?"org/nfunk/jep/type/Complex!@java/lang/Numberjava/lang/DoubleABC!DEorg/nfunk/jep/ParseExceptionInvalid parameter typeF!org/nfunk/jep/function/ArcTangent)org/nfunk/jep/function/PostfixMathCommandnumberOfParametersI
checkStackjava/util/Stackpop()Ljava/lang/Object;push()Lorg/nfunk/jep/type/Complex;doubleValue()Djava/lang/Math(D)D(D)V(Ljava/lang/String;)V!<
**	
_*++M+*,W
 
 !"v2+++	
Y+	
Y#%')(,22 #$PK
v7sqCNN(org/nfunk/jep/function/ArcTangent2.class0D
$	%
&
'()
*+
,-
.
'/01
234<init>()VCodeLineNumberTableLocalVariableTablethis$Lorg/nfunk/jep/function/ArcTangent2;run(Ljava/util/Stack;)VyDxinStackLjava/util/Stack;param2Ljava/lang/Object;param1
Exceptions
SourceFileArcTangent2.java56789:java/lang/Number;<java/lang/Double=>?@ABorg/nfunk/jep/ParseExceptionInvalid parameter typeC"org/nfunk/jep/function/ArcTangent2)org/nfunk/jep/function/PostfixMathCommandnumberOfParametersI
checkStackjava/util/Stackpop()Ljava/lang/Object;doubleValue()Djava/lang/Mathatan2(DD)D(D)Vpush&(Ljava/lang/Object;)Ljava/lang/Object;(Ljava/lang/String;)V!<
**	
P*++M+N-2,+-9,9+Y	
W
Y
&	
 "$&%/&E)O*>&/PP
FA !"#PK
v7<- org/nfunk/jep/function/Arg.class0D
'	(
)
*+
,
*-./
0
12	345

678ONELjava/lang/Double;<init>()VCodeLineNumberTableLocalVariableTablethisLorg/nfunk/jep/function/Arg;run(Ljava/util/Stack;)VinStackLjava/util/Stack;paramLjava/lang/Object;
Exceptionsarg&(Ljava/lang/Object;)Ljava/lang/Number;<clinit>
SourceFileArg.java9:;<=>"#?@org/nfunk/jep/type/Complexjava/lang/Double"ABjava/lang/Numberorg/nfunk/jep/ParseExceptionInvalid parameter typeCorg/nfunk/jep/function/Arg)org/nfunk/jep/function/PostfixMathCommandnumberOfParametersI
checkStackjava/util/Stackpop()Ljava/lang/Object;push&(Ljava/lang/Object;)Ljava/lang/Object;()D(D)V(Ljava/lang/String;)V!<
**	
_*++M+*,W 
!" 
 !
"#o++Y+	
+
Y&')*!,++ !
$$Y
%&PK
v7#org/nfunk/jep/function/Assign.class0U
+	,-./0
1-2345
	6
789
:;<=>?@<init>()VCodeLineNumberTableLocalVariableTablethisLorg/nfunk/jep/function/Assign;evaluateB(Lorg/nfunk/jep/Node;Lorg/nfunk/jep/EvaluatorI;)Ljava/lang/Object;vnLorg/nfunk/jep/ASTVarNode;varLorg/nfunk/jep/Variable;nodeLorg/nfunk/jep/Node;pvLorg/nfunk/jep/EvaluatorI;rhsValLjava/lang/Object;lhsNode
Exceptions
SourceFileAssign.javaABCDEorg/nfunk/jep/ParseException*Assignment operator must have 2 operators.FGHIJKorg/nfunk/jep/ASTVarNodeLMNOPorg/nfunk/jep/ASTFunNodeQRorg/nfunk/jep/function/LValueIST8Assignment should have a variable or LValue for the lhs.org/nfunk/jep/function/Assign)org/nfunk/jep/function/PostfixMathCommand*org/nfunk/jep/function/CallbackEvaluationInumberOfParametersIorg/nfunk/jep/NodejjtGetNumChildren()I(Ljava/lang/String;)VjjtGetChild(I)Lorg/nfunk/jep/Node;org/nfunk/jep/EvaluatorIeval((Lorg/nfunk/jep/Node;)Ljava/lang/Object;getVar()Lorg/nfunk/jep/Variable;org/nfunk/jep/VariablesetValue(Ljava/lang/Object;)ZgetPFMC.()Lorg/nfunk/jep/function/PostfixMathCommandI;setC(Lorg/nfunk/jep/EvaluatorI;Lorg/nfunk/jep/Node;Ljava/lang/Object;)V!<
**	
+
Y,+N+:		:
:-W-'

,--Y6

""%+&3(:)A*H+J-`/t0v2H:A	 !"#$"^%&+U'"()*PK
v70org/nfunk/jep/function/CallbackEvaluationI.class0	
evaluateB(Lorg/nfunk/jep/Node;Lorg/nfunk/jep/EvaluatorI;)Ljava/lang/Object;
Exceptions
SourceFileCallbackEvaluationI.java*org/nfunk/jep/function/CallbackEvaluationIjava/lang/Objectorg/nfunk/jep/ParseExceptionPK
v7q

(org/nfunk/jep/function/Comparative.class0
,`	+a	+b>	+c
+d
ef
+g
+h
+i
+j
+k
+lm
n
eopqr
st
uv
`w
x
yz
{|}
~


(
yidI	toleranceDLT
ConstantValueGTLEGENEEQ<init>(I)VCodeLineNumberTableLocalVariableTablethis$Lorg/nfunk/jep/function/Comparative;id_inrun(Ljava/util/Stack;)VinStackLjava/util/Stack;param2Ljava/lang/Object;param1resZ
Exceptionslt'(Ljava/lang/Object;Ljava/lang/Object;)ZxygtlegeeqnegetTolerance()DsetTolerance(D)Vd
SourceFileComparative.java>-../0GPQTQUQVQXQWQjava/lang/Double>\org/nfunk/jep/type/Complexorg/nfunk/jep/ParseException!< not defined for complex numbers>java/lang/NumberZjava/lang/StringBuffer!< not defined for object of type  and !> not defined for complex numbers!> not defined for object of type "<= not defined for complex numbers"<= not defined for object of type ">= not defined for complex numbers">= not defined for object of type >java/lang/Boolean"org/nfunk/jep/function/Comparative)org/nfunk/jep/function/PostfixMathCommand()VnumberOfParameters
checkStackjava/util/Stackpop()Ljava/lang/Object;push&(Ljava/lang/Object;)Ljava/lang/Object;(Ljava/lang/String;)VdoubleValueappend,(Ljava/lang/String;)Ljava/lang/StringBuffer;java/lang/ObjectgetClass()Ljava/lang/Class;java/lang/ClassgetName()Ljava/lang/String;toStringequals (Lorg/nfunk/jep/type/Complex;D)Z(Ljava/lang/Number;)VbooleanValue()Z(Ljava/lang/Object;)Z!+,-./01.234.256.278.29:.2;<.2=
>?@Z****A12	345BCDE.FG@$*++M+N6*e&1<GR]*-,	67*-,
6,*-,6!*-,6*-,
6*-,6+YW+YWA:9;
<=><@GARB]ChDsE{GHIB4CDHI
JKLKMNOPQ@t+
,
Y+(,!+J,9)YY+,AMNO&Q.R7SDUB4.R07
S0tCDtLKtJKOTQ@t+
,
Y +(,!+J,9)YY!+,AZ[]&_.`7aDcB4.R07
S0tCDtLKtJKOUQ@t+
,
Y"+(,!+J,9)YY#+,Ahik&m.n7oDqB4.R07
S0tCDtLKtJKOVQ@t+
,
Y$+(,!+J,9)YY%+,Avwy&{.|7}DB4.R07
S0tCDtLKtJKOWQ@-+,+,*&+!,+Y,'*&,!+,Y+'*&+(,!+J,9)+(',( +()>,()6+0,()+J,()9)+(0,)+()J,9)+,*A^,CQhv~'Bp~R0
S0RNSNR0
S0R0
S0-CD-LK-JKOXQ@3M+",+,*&+),"+Y,'*&,)+",Y+'*&+(,!+J,9)+(',( +()>,()6+0,()+J,()9)+(0,)+()J,9)+,*A^&4Sa)2?BpR0
S0RNSNR0
S0)R02
S0MCDMLKMJKOYZ@/*A4BCD[\@>*'A
<=BCD]0^_PK
v7("#org/nfunk/jep/function/Cosine.class0G
%	&
'
()
*
(+,
-./
	0
12

345
678<init>()VCodeLineNumberTableLocalVariableTablethisLorg/nfunk/jep/function/Cosine;run(Ljava/util/Stack;)VinStackLjava/util/Stack;paramLjava/lang/Object;
Exceptionscos&(Ljava/lang/Object;)Ljava/lang/Object;
SourceFileCosine.java9:;<=>!"?"org/nfunk/jep/type/Complex!@java/lang/Numberjava/lang/DoubleABC!DEorg/nfunk/jep/ParseExceptionInvalid parameter typeForg/nfunk/jep/function/Cosine)org/nfunk/jep/function/PostfixMathCommandnumberOfParametersI
checkStackjava/util/Stackpop()Ljava/lang/Object;push()Lorg/nfunk/jep/type/Complex;doubleValue()Djava/lang/Math(D)D(D)V(Ljava/lang/String;)V!<
**	
_*++M+*,W
 
 !"v2+++	
Y+	
Y#%')(,22 #$PK
v7<$org/nfunk/jep/function/CosineH.class0L
)	*
+
,-
.
,/0
12
	34
56@
789
:;<<init>()VCodeLineNumberTableLocalVariableTablethis Lorg/nfunk/jep/function/CosineH;run(Ljava/util/Stack;)VinStackLjava/util/Stack;paramLjava/lang/Object;
Exceptionscosh&(Ljava/lang/Object;)Ljava/lang/Object;valueD
SourceFileCosineH.java=>?@AB#$C$org/nfunk/jep/type/Complex#Djava/lang/NumberEFjava/lang/DoubleGHIJorg/nfunk/jep/ParseExceptionInvalid parameter typeKorg/nfunk/jep/function/CosineH)org/nfunk/jep/function/PostfixMathCommandnumberOfParametersI
checkStackjava/util/Stackpop()Ljava/lang/Object;push()Lorg/nfunk/jep/type/Complex;doubleValue()Djava/lang/Mathexp(D)D(D)V(Ljava/lang/String;)V!<
**	
_*++M+*,W
 
 !"#$>+++	!+	
IY((wc
oY#%')*4- %&>> !"'(PK
v7}
%44"org/nfunk/jep/function/Cross.class0e
;	<
=
>?
@
>AB
CDE
	F
GH
I
J	K	L
M
N
O
PQ
;R
;STsub!Lorg/nfunk/jep/function/Subtract;mul!Lorg/nfunk/jep/function/Multiply;<init>()VCodeLineNumberTableLocalVariableTablethisLorg/nfunk/jep/function/Cross;run(Ljava/util/Stack;)VinStackLjava/util/Stack;param2Ljava/lang/Object;param1
Exceptionscross8(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;8(Ljava/util/Vector;Ljava/util/Vector;)Ljava/lang/Object;resLjava/util/Vector;lhsrhslenI<clinit>
SourceFile
Cross.java !U7V(WXY/0Z[java/util/Vector/1org/nfunk/jep/ParseException=Cross: Invalid parameter type, both arguments must be vectors \]^%Cross: both sides must be of length 3 _`_ab00cdorg/nfunk/jep/function/Subtractorg/nfunk/jep/function/Multiplyorg/nfunk/jep/function/Cross)org/nfunk/jep/function/PostfixMathCommandnumberOfParameters
checkStackjava/util/Stackpop()Ljava/lang/Object;push&(Ljava/lang/Object;)Ljava/lang/Object;(Ljava/lang/String;)Vsize()I(I)VsetSize	elementAt(I)Ljava/lang/Object;setElementAt(Ljava/lang/Object;I)V! !"<
**#	$
%&'("s*++M+N+*-,W#
 "$*%&)*
+,-,.	/0"k%+,*+,	Y
#(*,$ %%&%-,%+,.	/1"^+>,
	Y
Y:+,+,+,+,+,+,+,+,#.123!4&60768b;>AE$4023%&435367.	8!"1YY#

9:PK
v7@-org/nfunk/jep/function/DefiniteIntegral.class0(
		
	
 !"<init>()VCodeLineNumberTableLocalVariableTablethis)Lorg/nfunk/jep/function/DefiniteIntegral;run(Ljava/util/Stack;)VinStackLjava/util/Stack;
Exceptions
SourceFileDefiniteIntegral.java#$%&$org/nfunk/jep/ParseException
Empty list''org/nfunk/jep/function/DefiniteIntegral)org/nfunk/jep/function/PostfixMathCommand*org/nfunk/jep/function/PostfixMathCommandInumberOfParametersI
checkStackcurNumberOfParameters(Ljava/lang/String;)V!	

<
**
	

` *+**
Y  PK
v7W00(org/nfunk/jep/function/Determinant.class0
	<init>()VCodeLineNumberTableLocalVariableTablethis$Lorg/nfunk/jep/function/Determinant;run(Ljava/util/Stack;)VinStackLjava/util/Stack;
Exceptions
SourceFileDeterminant.java"org/nfunk/jep/function/Determinant)org/nfunk/jep/function/PostfixMathCommandorg/nfunk/jep/ParseExceptionnumberOfParametersI!<
**
		


5	
PK
v7`gl33)org/nfunk/jep/function/Differential.class0
	<init>()VCodeLineNumberTableLocalVariableTablethis%Lorg/nfunk/jep/function/Differential;run(Ljava/util/Stack;)VinStackLjava/util/Stack;
Exceptions
SourceFileDifferential.java#org/nfunk/jep/function/Differential)org/nfunk/jep/function/PostfixMathCommandorg/nfunk/jep/ParseExceptionnumberOfParametersI!<
**
		


5	
PK
v7h5p
p
#org/nfunk/jep/function/Divide.class0
!J	 K
 L
MN
 O
MPQ
 RS
 TU
 V
 W
 X
 Y
 Z
 [\]
^_
	`
a
b
c
d
e
J
f
g
hij<init>()VCodeLineNumberTableLocalVariableTablethisLorg/nfunk/jep/function/Divide;run(Ljava/util/Stack;)VinStackLjava/util/Stack;param2Ljava/lang/Object;param1
Exceptionsdiv8(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;8(Ljava/lang/Number;Ljava/lang/Number;)Ljava/lang/Double;d1Ljava/lang/Number;d2V(Lorg/nfunk/jep/type/Complex;Lorg/nfunk/jep/type/Complex;)Lorg/nfunk/jep/type/Complex;c1Lorg/nfunk/jep/type/Complex;c2L(Ljava/lang/Number;Lorg/nfunk/jep/type/Complex;)Lorg/nfunk/jep/type/Complex;dcL(Lorg/nfunk/jep/type/Complex;Ljava/lang/Number;)Lorg/nfunk/jep/type/Complex;8(Ljava/util/Vector;Ljava/lang/Number;)Ljava/util/Vector;iIvLjava/util/Vector;result8(Ljava/lang/Number;Ljava/util/Vector;)Ljava/util/Vector;B(Ljava/util/Vector;Lorg/nfunk/jep/type/Complex;)Ljava/util/Vector;B(Lorg/nfunk/jep/type/Complex;Ljava/util/Vector;)Ljava/util/Vector;
SourceFileDivide.java"#kAl*mno12pqorg/nfunk/jep/type/Complex17java/lang/Number1>java/util/Vector1G1;131E1F1?org/nfunk/jep/ParseExceptionInvalid parameter type"rjava/lang/Doublest"u1v"wxtytz{|}~org/nfunk/jep/function/Divide)org/nfunk/jep/function/PostfixMathCommandnumberOfParameters
checkStackjava/util/Stackpop()Ljava/lang/Object;push&(Ljava/lang/Object;)Ljava/lang/Object;(Ljava/lang/String;)VdoubleValue()D(D)V:(Lorg/nfunk/jep/type/Complex;)Lorg/nfunk/jep/type/Complex;(DD)Vreimsize()I	elementAt(I)Ljava/lang/Object;
addElement(Ljava/lang/Object;)V! !"#$<
**%	&
'()*$s*++M+N+*-,W%
&*'(+,
-./.012$I+?,*+,,	*+,	
,*+,+	?,*+	,
,	*+	,	,?*+	,++,*+,,	*+,	Y%R#%&'"(/)6*C,J.Q/^0e1r2y35789:=& '(/.-.013$OY+,o%C& '(456517$D+,%H& '(89:91;$_Y+N-,%
M
O&*'(<5=9
891>$XY+,o+,o%T& '(=9<51?$.YN6+-*+	,-%Y[\&[,^&4!@A.'(.BC.<5&DC1E$.YN6,-*+,	-%cef&e,h&4!@A.'(.<5.BC&DC1F$.YN6+-*+	,
-%mop&o,r&4!@A.'(.BC.=9&DC1G$.YN6,-*+,	
-%wyz&y,|&4!@A.'(.=9.BC&DCHIPK
v7@zz org/nfunk/jep/function/Dot.class0^
:	;
<
=>
?
=@A
BCD
	E
FGH	I
J
K	L
MN
:O
:PQaddLorg/nfunk/jep/function/Add;mul!Lorg/nfunk/jep/function/Multiply;<init>()VCodeLineNumberTableLocalVariableTablethisLorg/nfunk/jep/function/Dot;run(Ljava/util/Stack;)VinStackLjava/util/Stack;param2Ljava/lang/Object;param1
Exceptionsdot8(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;8(Ljava/util/Vector;Ljava/util/Vector;)Ljava/lang/Object;iIv1Ljava/util/Vector;v2lenres<clinit>
SourceFileDot.javaR1S&TUV-.WXjava/util/Vector-/org/nfunk/jep/ParseException;Dot: Invalid parameter type, both arguments must be vectorsYZ[*Dot: both sides of dot must be same lengthDot: empty vectors parsed\]..org/nfunk/jep/function/Addorg/nfunk/jep/function/Multiplyorg/nfunk/jep/function/Dot)org/nfunk/jep/function/PostfixMathCommandnumberOfParameters
checkStackjava/util/Stackpop()Ljava/lang/Object;push&(Ljava/lang/Object;)Ljava/lang/Object;(Ljava/lang/String;)Vsize()I	elementAt(I)Ljava/lang/Object;! <
**!	"
#$%& s*++M+N+*-,W!
 ""*#$'(
)*+*,	-. k%+,*+,	Y
!(*," %#$%+*%)*,	-/ i+,
	Y
+>
	Y+,:6%+,:!*
23456)8;9D;`9f>">>(01i#$i23i43O51;.6*,	7 1YY!

89PK
v7tT47
7
 org/nfunk/jep/function/Ele.class0
C	DEFGHI
J
KLMN

OP
QR
ST
UVW
X
Y
UZ
[
\]^
_
\`abc<init>()VCodeLineNumberTableLocalVariableTablethisLorg/nfunk/jep/function/Ele;setC(Lorg/nfunk/jep/EvaluatorI;Lorg/nfunk/jep/Node;Ljava/lang/Object;)VvecLjava/util/Vector;pvLorg/nfunk/jep/EvaluatorI;nodeLorg/nfunk/jep/Node;valueLjava/lang/Object;lhsNoderhsNodevnLorg/nfunk/jep/ASTVarNode;varLorg/nfunk/jep/Variable;rhsindexI	oldVarVal	newVarVal
Exceptionsrun(Ljava/util/Stack;)VvalsLjava/util/Stack;lhs
SourceFileEle.javad7efgorg/nfunk/jep/ASTVarNodeorg/nfunk/jep/ParseExceptionEle: lhs must be a variablehijklmjava/lang/Numbernojava/util/Vectorpo2Ele: only single dimension arrays supported in JEPqrEle: rhs must be a numberstr/Ele: the value of the variable must be a Vectorur%vwxy<z{r&Ele: lhs must be an instance of Vector|}~org/nfunk/jep/function/Ele)org/nfunk/jep/function/PostfixMathCommandorg/nfunk/jep/function/LValueInumberOfParametersorg/nfunk/jep/NodejjtGetChild(I)Lorg/nfunk/jep/Node;(Ljava/lang/String;)VgetVar()Lorg/nfunk/jep/Variable;org/nfunk/jep/EvaluatorIeval((Lorg/nfunk/jep/Node;)Ljava/lang/Object;intValue()IsizefirstElement()Ljava/lang/Object;org/nfunk/jep/VariablegetValueclone'(ILjava/lang/Object;)Ljava/lang/Object;setValue(Ljava/lang/Object;)Z
checkStackjava/util/Stackpop	elementAt(I)Ljava/lang/Object;push&(Ljava/lang/Object;)Ljava/lang/Object;! <
**!	"
#$%& ,:,:
Y::+,	:6	

d6	A/:



Y

d6	
Y:


Y
:	-WW!Z#	$%&$'+(2)A*D+L-[/c1j2}356789:;<"
j"'(
#$)*+,-.	/,0,+12234A5.D67	18.
9(:;< K*++M+N-
Y,
!,
6-d:+W,>,:

Y
6-d:+WY!F?@
AB D'F0G=HDIEKLMRNeOrPQRU"\	067==.R5'(r67=.#$>?
5.@.:ABPK
v7SS#org/nfunk/jep/function/Equals.class0
	<init>()VCodeLineNumberTableLocalVariableTablethisLorg/nfunk/jep/function/Equals;run(Ljava/util/Stack;)VinStackLjava/util/Stack;
Exceptions
SourceFileEquals.javaorg/nfunk/jep/function/Equals)org/nfunk/jep/function/PostfixMathCommand*org/nfunk/jep/function/PostfixMathCommandIorg/nfunk/jep/ParseExceptionnumberOfParametersI!<
**	
	


5	
PK
v7#gTKK org/nfunk/jep/function/Exp.class0Y
/	0
1
23
4
256
7
8
9:
9;
9<
=>?
@
ABC
DEF<init>()VCodeLineNumberTableLocalVariableTablethisLorg/nfunk/jep/function/Exp;run(Ljava/util/Stack;)VinStackLjava/util/Stack;paramLjava/lang/Object;
Exceptionsexp&(Ljava/lang/Object;)Ljava/lang/Object;zLorg/nfunk/jep/type/Complex;xDymod
SourceFileExp.javaGHIJKL%&M&org/nfunk/jep/type/ComplexNOPOQ%RSRTRUjava/lang/Numberjava/lang/DoubleVOWorg/nfunk/jep/ParseExceptionInvalid parameter typeXorg/nfunk/jep/function/Exp)org/nfunk/jep/function/PostfixMathCommandnumberOfParametersI
checkStackjava/util/Stackpop()Ljava/lang/Object;pushre()Dimjava/lang/Math(D)Dcossin(DD)VdoubleValue(D)V(Ljava/lang/String;)V!<
** !	"
_*++M+*,W'(
)*  !
"#$%&	X+1+M,J,	9)
9Ykk
+Y+
Y&	02345658<:N=>)'($)*+*,*XX"#$-.PK
v7)z,mm&org/nfunk/jep/function/Imaginary.class0?
#	$
%
&'
(
&)*+
,
-./0
123<init>()VCodeLineNumberTableLocalVariableTablethis"Lorg/nfunk/jep/function/Imaginary;run(Ljava/util/Stack;)VinStackLjava/util/Stack;paramLjava/lang/Object;
Exceptionsim&(Ljava/lang/Object;)Ljava/lang/Number;
SourceFileImaginary.java456789 :;org/nfunk/jep/type/Complexjava/lang/Double<=java/lang/Numberorg/nfunk/jep/ParseExceptionInvalid parameter type> org/nfunk/jep/function/Imaginary)org/nfunk/jep/function/PostfixMathCommandnumberOfParametersI
checkStackjava/util/Stackpop()Ljava/lang/Object;push&(Ljava/lang/Object;)Ljava/lang/Object;()D(D)V(Ljava/lang/String;)V!<
**	
_*++M+*,W
 
 t0+Y+	
+Y
Y
 !"&%00!"PK
v7%org/nfunk/jep/function/Integral.class0(
		
	
 !"<init>()VCodeLineNumberTableLocalVariableTablethis!Lorg/nfunk/jep/function/Integral;run(Ljava/util/Stack;)VinStackLjava/util/Stack;
Exceptions
SourceFile
Integral.java#$%&$org/nfunk/jep/ParseException
Empty list'org/nfunk/jep/function/Integral)org/nfunk/jep/function/PostfixMathCommand*org/nfunk/jep/function/PostfixMathCommandInumberOfParametersI
checkStackcurNumberOfParameters(Ljava/lang/String;)V!	

<
**
	

` *+**
Y  PK
v7*33)org/nfunk/jep/function/Intersection.class0
	<init>()VCodeLineNumberTableLocalVariableTablethis%Lorg/nfunk/jep/function/Intersection;run(Ljava/util/Stack;)VinStackLjava/util/Stack;
Exceptions
SourceFileIntersection.java#org/nfunk/jep/function/Intersection)org/nfunk/jep/function/PostfixMathCommandorg/nfunk/jep/ParseExceptionnumberOfParametersI!<
**
		


5	
PK
v72P$org/nfunk/jep/function/LValueI.class0	
setC(Lorg/nfunk/jep/EvaluatorI;Lorg/nfunk/jep/Node;Ljava/lang/Object;)V
Exceptions
SourceFileLValueI.javaorg/nfunk/jep/function/LValueIjava/lang/Objectorg/nfunk/jep/ParseExceptionPK
v7Ó::!org/nfunk/jep/function/List.class0A
$	%
&	'()
*+
,
-
./
0
.123<init>()VCodeLineNumberTableLocalVariableTablethisLorg/nfunk/jep/function/List;run(Ljava/util/Stack;)VparamLjava/lang/Object;iIinStackLjava/util/Stack;resLjava/util/Vector;
Exceptions
SourceFile	List.java456org/nfunk/jep/ParseException
Empty list7java/util/Vector898:;<=>?@org/nfunk/jep/function/List)org/nfunk/jep/function/PostfixMathCommandnumberOfParameters
checkStackcurNumberOfParameters(Ljava/lang/String;)V(I)VsetSizejava/util/Stackpop()Ljava/lang/Object;setElementAt(Ljava/lang/Object;I)Vpush&(Ljava/lang/Object;)Ljava/lang/Object;!<
**	
P*+*
YY*	M,*
*d>+:,+,
W. 
!"##+$6&<'C$I)O*4<2PP#- !"#PK
v7Kth55&org/nfunk/jep/function/Logarithm.class0^
5	6
7
89
:
8;<
=	>
?@
AB
CD	E

F
FGH
I@$
JKLLOG10DCLOG10Lorg/nfunk/jep/type/Complex;<init>()VCodeLineNumberTableLocalVariableTablethis"Lorg/nfunk/jep/function/Logarithm;run(Ljava/util/Stack;)VinStackLjava/util/Stack;paramLjava/lang/Object;
Exceptionslog&(Ljava/lang/Object;)Ljava/lang/Object;tempnum<clinit>
SourceFileLogarithm.java !MNO(PQR./S/org/nfunk/jep/type/Complex.TUVjava/lang/NumberWXjava/lang/DoubleY.Z [org/nfunk/jep/ParseExceptionInvalid parameter type \ ] org/nfunk/jep/function/Logarithm)org/nfunk/jep/function/PostfixMathCommandnumberOfParametersI
checkStackjava/util/Stackpop()Ljava/lang/Object;push()Lorg/nfunk/jep/type/Complex;div:(Lorg/nfunk/jep/type/Complex;)Lorg/nfunk/jep/type/Complex;doubleValue()Djava/lang/Math(D)D(D)V(Ljava/lang/String;)V(DD)V! !"<
**#	$
%&'("_*++M+*,W# !
"#$ %&)*
+,-./"k++	
+H+I(
Y(o((
YY(:	
Y#.)*,.$/*0:1@2K5U6a9$*U0$=1k%&k+,-2!"7Y	#
	34PK
v7R$org/nfunk/jep/function/Logical.class0e
5	6	7
8
9:;
<=
>?@
5A
B
CD
EF
G

HI
J
9KLMidIAND
ConstantValueOR<init>(I)VCodeLineNumberTableLocalVariableTablethis Lorg/nfunk/jep/function/Logical;id_inrun(Ljava/util/Stack;)VxDyrinStackLjava/util/Stack;param2Ljava/lang/Object;param1
Exceptions
SourceFileLogical.javaNOP(QRSjava/lang/NumberTUjava/lang/BooleanVWorg/nfunk/jep/ParseExceptionjava/lang/StringBuffer8Logical: require a number or Boolean value on lhs, have XYZ[\]^_`_ajava/lang/Doublebcdorg/nfunk/jep/function/Logical)org/nfunk/jep/function/PostfixMathCommand()VnumberOfParameters
checkStackjava/util/Stackpop()Ljava/lang/Object;doubleValue()DbooleanValue()Zappend,(Ljava/lang/String;)Ljava/lang/StringBuffer;java/lang/ObjectgetClass()Ljava/lang/Class;java/lang/ClassgetName()Ljava/lang/String;toString(Ljava/lang/String;)V(D)Vpush&(Ljava/lang/Object;)Ljava/lang/Object;! !O***"	#$%&'(!	*++M+N--9?--	9$
YY
-,,9?,,	9$
YY
-*K36
66+YW"V
 #$"%)&='^)e*q+x,-267:;=?@#p)*:)*n+*+*,,$%-.
/010,2
34PK
v7oC::$org/nfunk/jep/function/Modulus.class0?
$	
%

&
'()
*+
,
'-./

012<init>()VCodeLineNumberTableLocalVariableTablethis Lorg/nfunk/jep/function/Modulus;run(Ljava/util/Stack;)VdivisorDdividendresultinStackLjava/util/Stack;param2Ljava/lang/Object;param1
Exceptions
SourceFileModulus.java345678java/lang/Number9:java/lang/Double;<=org/nfunk/jep/ParseExceptionInvalid parameter type>org/nfunk/jep/function/Modulus)org/nfunk/jep/function/PostfixMathCommandnumberOfParametersI
checkStackjava/util/Stackpop()Ljava/lang/Object;doubleValue()D(D)Vpush&(Ljava/lang/Object;)Ljava/lang/Object;(Ljava/lang/String;)V!
<
**	

R*++M+N-4,-,9-9s9+Y	W

Y*

& /"6$G(Q*H&/6RR
HC !
"#PK
v7t++%org/nfunk/jep/function/Multiply.class0v
E	F
G
HI	J
K
HLM
NO
PQ
R
S
TUV
WX

Y
Z
[
\
E
]
^
_`a<init>()VCodeLineNumberTableLocalVariableTablethis!Lorg/nfunk/jep/function/Multiply;run(Ljava/util/Stack;)VparamLjava/lang/Object;stackLjava/util/Stack;productiI
Exceptionsmul8(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;param1param28(Ljava/lang/Number;Ljava/lang/Number;)Ljava/lang/Double;d1Ljava/lang/Number;d2V(Lorg/nfunk/jep/type/Complex;Lorg/nfunk/jep/type/Complex;)Lorg/nfunk/jep/type/Complex;c1Lorg/nfunk/jep/type/Complex;c2L(Lorg/nfunk/jep/type/Complex;Ljava/lang/Number;)Lorg/nfunk/jep/type/Complex;cd8(Ljava/util/Vector;Ljava/lang/Number;)Ljava/util/Vector;vLjava/util/Vector;resultB(Ljava/util/Vector;Lorg/nfunk/jep/type/Complex;)Ljava/util/Vector;
SourceFile
Multiply.javab-c&defg-/0hiorg/nfunk/jep/type/Complex/7java/lang/Number/;java/util/Vector/B/3/>org/nfunk/jep/ParseExceptionInvalid parameter typejjava/lang/Doubleklm/n/opqrstuorg/nfunk/jep/function/Multiply)org/nfunk/jep/function/PostfixMathCommandnumberOfParameters
checkStackjava/util/Stackpop()Ljava/lang/Object;curNumberOfParameterspush&(Ljava/lang/Object;)Ljava/lang/Object;(Ljava/lang/String;)VdoubleValue()D(D)V:(Lorg/nfunk/jep/type/Complex;)Lorg/nfunk/jep/type/Complex;(D)Lorg/nfunk/jep/type/Complex;size()I	elementAt(I)Ljava/lang/Object;
addElement(Ljava/lang/Object;)V! <
**!	"
#$%& /*++M6*+N*-,M+,W!&	

!%"'(*.,"4
'(/#$/)*
%+(
",-./0 I+?,*+,	,
*+,
,*,+
+
?,*,+
,
*+
,
,?*,+
++,*+,
,
*+,
Y!R2456"7/869C;J=Q>^?e@rAyBDFGHIL" #$1(2(./3 OY+,k!Q" #$4565/7 D+,!V" #$89:9/; G	+,![" 	#$	<9	=5/> .YN6+-*+
,-!`bc&b,e"4!,-.#$.?@.=5&A@/B .YN6+-*,+
-!jlm&l,o"4!,-.#$.?@.<9&A@CDPK
v7aRR-org/nfunk/jep/function/NaturalLogarithm.class0O
,	-
.
/0
1
/23
45
	67
89
:
:;<
=>?<init>()VCodeLineNumberTableLocalVariableTablethis)Lorg/nfunk/jep/function/NaturalLogarithm;run(Ljava/util/Stack;)VinStackLjava/util/Stack;paramLjava/lang/Object;
Exceptionsln&(Ljava/lang/Object;)Ljava/lang/Object;tempLorg/nfunk/jep/type/Complex;numD
SourceFileNaturalLogarithm.java@ABCDE$%F%org/nfunk/jep/type/ComplexGHjava/lang/NumberIJjava/lang/DoubleKGLMorg/nfunk/jep/ParseExceptionInvalid parameter typeN'org/nfunk/jep/function/NaturalLogarithm)org/nfunk/jep/function/PostfixMathCommandnumberOfParametersI
checkStackjava/util/Stackpop()Ljava/lang/Object;pushlog()Lorg/nfunk/jep/type/Complex;doubleValue()Djava/lang/Math(D)D(D)V(Ljava/lang/String;)V!<
**	
_*++M+*,W !
"#  
!"#$%[+++	>+	
I(Y(
((Y
Y(:Y.)+-01$20364A7K8Q<*K&'3()[[!"#*+PK
v7%'3== org/nfunk/jep/function/Not.class0A
#	$
%
&'(
)*
+
&,-

./0
123<init>()VCodeLineNumberTableLocalVariableTablethisLorg/nfunk/jep/function/Not;run(Ljava/util/Stack;)VrIinStackLjava/util/Stack;paramLjava/lang/Object;
Exceptions
SourceFileNot.java45678java/lang/Number9:java/lang/Double;<=java/lang/Boolean>?org/nfunk/jep/ParseExceptionInvalid parameter type@org/nfunk/jep/function/Not)org/nfunk/jep/function/PostfixMathCommandnumberOfParameters
checkStackjava/util/Stackpop()Ljava/lang/Object;doubleValue()D(D)Vpush&(Ljava/lang/Object;)Ljava/lang/Object;booleanValue()Z(Ljava/lang/String;)V!<
**	
g*++M,&,>+Y	W5,
$,
>+Y	W
Y
*

#4 ;"K#\&f'4#Kgg
] !"PK
v7q/org/nfunk/jep/function/PostfixMathCommand.class00
	%	&	'()
*+,-.numberOfParametersIcurNumberOfParameters<init>()VCodeLineNumberTableLocalVariableTablethis+Lorg/nfunk/jep/function/PostfixMathCommand;
checkStack(Ljava/util/Stack;)VinStackLjava/util/Stack;
ExceptionsgetNumberOfParameters()IsetCurNumberOfParameters(I)VncheckNumberOfParameters(I)Zruns
SourceFilePostfixMathCommand.java
org/nfunk/jep/ParseExceptionStack argument null/)run() method of PostfixMathCommand called)org/nfunk/jep/function/PostfixMathCommandjava/lang/Object*org/nfunk/jep/function/PostfixMathCommandI(Ljava/lang/String;)V!	

E***()	*+L+
Y235/*;>*
DE P**
O
P!>
YY

"#$PK
v7dee0org/nfunk/jep/function/PostfixMathCommandI.class0run(Ljava/util/Stack;)V
ExceptionsgetNumberOfParameters()IsetCurNumberOfParameters(I)VcheckNumberOfParameters(I)Z
SourceFilePostfixMathCommandI.java*org/nfunk/jep/function/PostfixMathCommandIjava/lang/Objectorg/nfunk/jep/ParseException	

PK
v73?'33"org/nfunk/jep/function/Power.class0{
H	I
J
KL
M
KNO
PQ
R
S
TUV

W
	X
	Y
Z
[\
]
^
_`
a
b
cde<init>()VCodeLineNumberTableLocalVariableTablethisLorg/nfunk/jep/function/Power;run(Ljava/util/Stack;)VinStackLjava/util/Stack;param2Ljava/lang/Object;param1
Exceptionspower8(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;8(Ljava/lang/Number;Ljava/lang/Number;)Ljava/lang/Object;cLorg/nfunk/jep/type/Complex;d1Ljava/lang/Number;exponentexponentIntIexponentDoubleDL(Lorg/nfunk/jep/type/Complex;Lorg/nfunk/jep/type/Complex;)Ljava/lang/Object;c1c2tempB(Lorg/nfunk/jep/type/Complex;Ljava/lang/Number;)Ljava/lang/Object;dB(Ljava/lang/Number;Lorg/nfunk/jep/type/Complex;)Ljava/lang/Object;base(DI)DresultbitMask	evenPowerxn
SourceFile
Power.javaf5g%hij,-klorg/nfunk/jep/type/Complex,8java/lang/Number,<,>,.org/nfunk/jep/ParseExceptionInvalid parameter typemnopqr,sjava/lang/Double,@tuvw,xyqzqorg/nfunk/jep/function/Power)org/nfunk/jep/function/PostfixMathCommandnumberOfParameters
checkStackjava/util/Stackpop()Ljava/lang/Object;push&(Ljava/lang/Object;)Ljava/lang/Object;(Ljava/lang/String;)V
shortValue()SdoubleValue()D(DD)V(D)Lorg/nfunk/jep/type/Complex;(D)Vjava/lang/Mathpow(DD)D:(Lorg/nfunk/jep/type/Complex;)Lorg/nfunk/jep/type/Complex;imre!<
** 	!
"#$%s*++M+N+*-,W !#
$&'!*"#&'
()*)+
,-h++,*+,,	?*+,	
+	+,*+	,,	*+	,	
Y .,-./"0/263=4J5Q6^9! h"#h*)h()+
,.{,>,9+#Y+:,/Y*+Y*+toY+, *
?@BE*F4K<NCPTShX!>*
/0{"#{12{32v45p67,8q+,N-Y-- _abd!*"#90:0;0,<t +,N-Y-- i	kln!* "# /0 =2	;0,>.Y+N-,:Y s
tvw+y!4."#.=2./0
!?0;0,@	38;BKVcrH''kH'''kkH'''k'kkH'''k'k'kkHx'''k'k'k'kkHi'''k'k'k'k'kkHX'''k'k'k'k'k'kkHE6'9~	'99|6!k9~
k9|6H' ^49<CLWds!HA7?B5<C7,A7"#D7E5FGPK
v7$$$org/nfunk/jep/function/Product.class0
	<init>()VCodeLineNumberTableLocalVariableTablethis Lorg/nfunk/jep/function/Product;run(Ljava/util/Stack;)VinStackLjava/util/Stack;
Exceptions
SourceFileProduct.javaorg/nfunk/jep/function/Product)org/nfunk/jep/function/PostfixMathCommandorg/nfunk/jep/ParseExceptionnumberOfParametersI!<
**
		


5	
PK
v7pe9ZZ!org/nfunk/jep/function/Real.class0?
#	$
%
&'
(
&)*+
,
-./0
123<init>()VCodeLineNumberTableLocalVariableTablethisLorg/nfunk/jep/function/Real;run(Ljava/util/Stack;)VinStackLjava/util/Stack;paramLjava/lang/Object;
Exceptionsre&(Ljava/lang/Object;)Ljava/lang/Number;
SourceFile	Real.java456789 :;org/nfunk/jep/type/Complexjava/lang/Double<=java/lang/Numberorg/nfunk/jep/ParseExceptionInvalid parameter type>org/nfunk/jep/function/Real)org/nfunk/jep/function/PostfixMathCommandnumberOfParametersI
checkStackjava/util/Stackpop()Ljava/lang/Object;push&(Ljava/lang/Object;)Ljava/lang/Object;()D(D)V(Ljava/lang/String;)V!<
**	
_*++M+*,W
 
 p,+Y+	
++Y
 !"#"%,,!"PK
v7{ku!org/nfunk/jep/function/Sine.class0G
%	&
'
()
*
(+,
-./
	0
12

345
678<init>()VCodeLineNumberTableLocalVariableTablethisLorg/nfunk/jep/function/Sine;run(Ljava/util/Stack;)VinStackLjava/util/Stack;paramLjava/lang/Object;
Exceptionssin&(Ljava/lang/Object;)Ljava/lang/Object;
SourceFile	Sine.java9:;<=>!"?"org/nfunk/jep/type/Complex!@java/lang/Numberjava/lang/DoubleABC!DEorg/nfunk/jep/ParseExceptionInvalid parameter typeForg/nfunk/jep/function/Sine)org/nfunk/jep/function/PostfixMathCommandnumberOfParametersI
checkStackjava/util/Stackpop()Ljava/lang/Object;push()Lorg/nfunk/jep/type/Complex;doubleValue()Djava/lang/Math(D)D(D)V(Ljava/lang/String;)V!<
**	
_*++M+*,W
 
 !"v2+++	
Y+	
Y$%'((+22 #$PK
v7
"org/nfunk/jep/function/SineH.class0L
)	*
+
,-
.
,/0
12
	34
56@
789
:;<<init>()VCodeLineNumberTableLocalVariableTablethisLorg/nfunk/jep/function/SineH;run(Ljava/util/Stack;)VinStackLjava/util/Stack;paramLjava/lang/Object;
Exceptionssinh&(Ljava/lang/Object;)Ljava/lang/Object;valueD
SourceFile
SineH.java=>?@AB#$C$org/nfunk/jep/type/Complex#Djava/lang/NumberEFjava/lang/DoubleGHIJorg/nfunk/jep/ParseExceptionInvalid parameter typeKorg/nfunk/jep/function/SineH)org/nfunk/jep/function/PostfixMathCommandnumberOfParametersI
checkStackjava/util/Stackpop()Ljava/lang/Object;push()Lorg/nfunk/jep/type/Complex;doubleValue()Djava/lang/Mathexp(D)D(D)V(Ljava/lang/String;)V!<
**	
_*++M+*,W
 
 !"#$>+++	!+	
IY((wg
oY#%')*4- %&>> !"'(PK
v7QZ#qq/org/nfunk/jep/function/SpecialEvaluationI.class0

evaluate(Lorg/nfunk/jep/Node;Ljava/lang/Object;Lorg/nfunk/jep/ParserVisitor;Ljava/util/Stack;Lorg/nfunk/jep/SymbolTable;)Ljava/lang/Object;
Exceptions
SourceFileSpecialEvaluationI.java
Deprecated)org/nfunk/jep/function/SpecialEvaluationIjava/lang/Objectorg/nfunk/jep/ParseException	PK
v7z~֨'org/nfunk/jep/function/SquareRoot.class0J
(	)
*
+,
-
+./
01
	2
34
56
378
9:;<init>()VCodeLineNumberTableLocalVariableTablethis#Lorg/nfunk/jep/function/SquareRoot;run(Ljava/util/Stack;)VinStackLjava/util/Stack;paramLjava/lang/Object;
Exceptionssqrt&(Ljava/lang/Object;)Ljava/lang/Object;valueD
SourceFileSquareRoot.java<=>?@A"#B#org/nfunk/jep/type/Complex"Cjava/lang/NumberDEFjava/lang/DoubleG"Horg/nfunk/jep/ParseExceptionInvalid parameter typeI!org/nfunk/jep/function/SquareRoot)org/nfunk/jep/function/PostfixMathCommandnumberOfParametersI
checkStackjava/util/Stackpop()Ljava/lang/Object;push()Lorg/nfunk/jep/type/Complex;doubleValue()D(D)Vjava/lang/Math(D)D(Ljava/lang/String;)V!<
**	
_*++M+*,W
 
 !"#F+++	)+	
I(Y(Y(
Y")*+,/$002<6 $%FF !&'PK
v7v!!#org/nfunk/jep/function/Subset.class0
	<init>()VCodeLineNumberTableLocalVariableTablethisLorg/nfunk/jep/function/Subset;run(Ljava/util/Stack;)VinStackLjava/util/Stack;
Exceptions
SourceFileSubset.javaorg/nfunk/jep/function/Subset)org/nfunk/jep/function/PostfixMathCommandorg/nfunk/jep/ParseExceptionnumberOfParametersI!<
**
		


5	
PK
v7׮!''%org/nfunk/jep/function/SubsetEq.class0
	<init>()VCodeLineNumberTableLocalVariableTablethis!Lorg/nfunk/jep/function/SubsetEq;run(Ljava/util/Stack;)VinStackLjava/util/Stack;
Exceptions
SourceFile
SubsetEq.javaorg/nfunk/jep/function/SubsetEq)org/nfunk/jep/function/PostfixMathCommandorg/nfunk/jep/ParseExceptionnumberOfParametersI!<
**
		


5	
PK
v7Ncc%org/nfunk/jep/function/Subtract.class0^
7	8
9
:;
<
:=>
?@
A
B
CDE

FG
	H
I
J
K
LMN<init>()VCodeLineNumberTableLocalVariableTablethis!Lorg/nfunk/jep/function/Subtract;run(Ljava/util/Stack;)VinStackLjava/util/Stack;param2Ljava/lang/Object;param1
Exceptionssub8(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;8(Ljava/lang/Number;Ljava/lang/Number;)Ljava/lang/Double;d1Ljava/lang/Number;d2V(Lorg/nfunk/jep/type/Complex;Lorg/nfunk/jep/type/Complex;)Lorg/nfunk/jep/type/Complex;c1Lorg/nfunk/jep/type/Complex;c2L(Lorg/nfunk/jep/type/Complex;Ljava/lang/Number;)Lorg/nfunk/jep/type/Complex;cdL(Ljava/lang/Number;Lorg/nfunk/jep/type/Complex;)Lorg/nfunk/jep/type/Complex;
SourceFile
Subtract.javaOPQ RST'(UVorg/nfunk/jep/type/Complex'-java/lang/Number'1'4')org/nfunk/jep/ParseExceptionInvalid parameter typeWjava/lang/DoubleXYZ[Y\Y]org/nfunk/jep/function/Subtract)org/nfunk/jep/function/PostfixMathCommandnumberOfParametersI
checkStackjava/util/Stackpop()Ljava/lang/Object;push&(Ljava/lang/Object;)Ljava/lang/Object;(Ljava/lang/String;)VdoubleValue()D(D)Vreim(DD)V!<
**	
 s*++M+N+*-,W
 *!"
#$%$&
'(h++,*+,,	?*+,	
+	+,*+	,,	*+	,	
Y.&(*,"./163=5J7Q9^< hh%$h#$&
')OY+,gB *+,+'-XY+,g+,gG ./0/'1SY+,g+L 2/3+'4TY+,g,wQ 3+2/56PK
v7C org/nfunk/jep/function/Sum.class0
	<init>()VCodeLineNumberTableLocalVariableTablethisLorg/nfunk/jep/function/Sum;run(Ljava/util/Stack;)VinStackLjava/util/Stack;
Exceptions
SourceFileSum.javaorg/nfunk/jep/function/Sum)org/nfunk/jep/function/PostfixMathCommandorg/nfunk/jep/ParseExceptionnumberOfParametersI!<
**
		


5	
PK
v7U:!org/nfunk/jep/function/TanH.class0P
*	+
,
-.
/
-01
23
	45
67@
Wi
68
9:;
<=><init>()VCodeLineNumberTableLocalVariableTablethisLorg/nfunk/jep/function/TanH;run(Ljava/util/Stack;)VinStackLjava/util/Stack;paramLjava/lang/Object;
Exceptionstanh&(Ljava/lang/Object;)Ljava/lang/Object;valueD
SourceFile	TanH.java?@ABCD$%E%org/nfunk/jep/type/Complex$Fjava/lang/NumberGHjava/lang/DoubleIJKLMNorg/nfunk/jep/ParseExceptionInvalid parameter typeOorg/nfunk/jep/function/TanH)org/nfunk/jep/function/PostfixMathCommandnumberOfParametersI
checkStackjava/util/Stackpop()Ljava/lang/Object;push()Lorg/nfunk/jep/type/Complex;doubleValue()Djava/lang/Mathexp(D)Dpow(DD)D(D)V(Ljava/lang/String;)V!<
**	
_*++M+*,W
  
!"#$%
K+++	.+	
IY((wg
(
(wcoY#%')*A, #&'KK!"#()PK
v7^7j$org/nfunk/jep/function/Tangent.class0G
%	&
'
()
*
(+,
-./
	0
12

345
678<init>()VCodeLineNumberTableLocalVariableTablethis Lorg/nfunk/jep/function/Tangent;run(Ljava/util/Stack;)VinStackLjava/util/Stack;paramLjava/lang/Object;
Exceptionstan&(Ljava/lang/Object;)Ljava/lang/Object;
SourceFileTangent.java9:;<=>!"?"org/nfunk/jep/type/Complex!@java/lang/Numberjava/lang/DoubleABC!DEorg/nfunk/jep/ParseExceptionInvalid parameter typeForg/nfunk/jep/function/Tangent)org/nfunk/jep/function/PostfixMathCommandnumberOfParametersI
checkStackjava/util/Stackpop()Ljava/lang/Object;push()Lorg/nfunk/jep/type/Complex;doubleValue()Djava/lang/Math(D)D(D)V(Ljava/lang/String;)V!<
**	
_*++M+*,W
 
 !"v2+++	
Y+	
Y#$%&((22 #$PK
v7qy"org/nfunk/jep/function/Trace.class0
	<init>()VCodeLineNumberTableLocalVariableTablethisLorg/nfunk/jep/function/Trace;run(Ljava/util/Stack;)VinStackLjava/util/Stack;
Exceptions
SourceFile
Trace.javaorg/nfunk/jep/function/Trace)org/nfunk/jep/function/PostfixMathCommandorg/nfunk/jep/ParseExceptionnumberOfParametersI!<
**
		


5	
PK
v7,ȟ||#org/nfunk/jep/function/UMinus.class0C
$	%
&
'(
)
'*+
,-.
	/

012

345<init>()VCodeLineNumberTableLocalVariableTablethisLorg/nfunk/jep/function/UMinus;run(Ljava/util/Stack;)VinStackLjava/util/Stack;paramLjava/lang/Object;
Exceptionsumin&(Ljava/lang/Object;)Ljava/lang/Object;
SourceFileUMinus.java6789:; !<!org/nfunk/jep/type/Complex=>java/lang/Numberjava/lang/Double?@Aorg/nfunk/jep/ParseExceptionInvalid parameter typeBorg/nfunk/jep/function/UMinus)org/nfunk/jep/function/PostfixMathCommandnumberOfParametersI
checkStackjava/util/Stackpop()Ljava/lang/Object;pushneg()Lorg/nfunk/jep/type/Complex;doubleValue()D(D)V(Ljava/lang/String;)V!<
**	
_*++M+*,W
 

 !t0+++	
Y+	w
Y !"&$00
"#PK
v7ԩ"org/nfunk/jep/function/Union.class0
	<init>()VCodeLineNumberTableLocalVariableTablethisLorg/nfunk/jep/function/Union;run(Ljava/util/Stack;)VinStackLjava/util/Stack;
Exceptions
SourceFile
Union.javaorg/nfunk/jep/function/Union)org/nfunk/jep/function/PostfixMathCommandorg/nfunk/jep/ParseExceptionnumberOfParametersI!<
**
		


5	
PK
v7;yy#org/nfunk/jep/function/package.html<body>
Provides function and operator classes. Each predefined function is contained
in this package as a class. Operators are also contained in classes such as
Add, Subtract, Multiply, or Comparative. Interfaces and supportive classes are:
<ul>
<li>PostfixMathCommand</li>
<li>PostfixMathCommandI</li>
<li>ComplexPFMC</li>
<li>SpecialEvaluationI</li>
</ul>
</body>
PK
v7Wuorg/nfunk/jep/package.html<body>
Provides the main parsing classes including JEP and Parser as well as related classes
such as node classes. This package also includes the EvaluatorVisitor used for
evaluation. The JEP class serves as the main interface with the parser.
</body>
PK
v7u-*6'6' org/nfunk/jep/type/Complex.class0
)		




















?@

serialVersionUIDJ
ConstantValue`̓<reDim<init>()VCodeLineNumberTableLocalVariableTablethisLorg/nfunk/jep/type/Complex;(D)Vre_in(Ljava/lang/Number;)VLjava/lang/Number;(Lorg/nfunk/jep/type/Complex;)Vz(DD)Vim_in()DsetsetResetImequals (Lorg/nfunk/jep/type/Complex;D)Zb	tolerancetemp1temp2(Ljava/lang/Object;)ZoLjava/lang/Object;chashCode()IresultIxlylxiyitoString()Ljava/lang/String;,(Ljava/text/NumberFormat;)Ljava/lang/String;formatLjava/text/NumberFormat;-(Ljava/text/NumberFormat;Z)Ljava/lang/String;flagZ
isInfinite()ZisNaNabstempabsReabsImabs2argneg()Lorg/nfunk/jep/type/Complex;mul(D)Lorg/nfunk/jep/type/Complex;add:(Lorg/nfunk/jep/type/Complex;)Lorg/nfunk/jep/type/Complex;subdivresReresImrdenpowercSin[ScCosxexponentscalarspecialCasefactortemp1Retemp1Imtemp2Retemp2ImconjlogsqrtwsinizReizImcostan	sinResult	cosResultasintempRetempImacosatansinhcoshtanhsinRescosResasinhacoshatanhpolarValueOfB(Ljava/lang/Number;Ljava/lang/Number;)Lorg/nfunk/jep/type/Complex;thetaradangdoubleValue
floatValue()FintValue	longValue()J
SourceFileComplex.java340121Borg/nfunk/jep/type/Complexjava/lang/StringBuffer(, )XY[ i)+ i`bc3@cBhBulpnjjava/lang/Objectjava/io/Serializablejava/lang/Numberjava/lang/DoubledoubleToLongBits(D)Jappend,(Ljava/lang/String;)Ljava/lang/StringBuffer;(D)Ljava/lang/StringBuffer;java/text/NumberFormat(D)Ljava/lang/String;(D)Zjava/lang/Math(D)Datan2(DD)Dpowexp!)*+,-.01212345E***678	9:7893:5O**'*6AB	CD789;13<5R**+*6KLMN789;=3>5U**+*+6STUV789?93@5Y**'*)6\]	^_7 89;1A10B5/*6e7892B5/*6l789C>5M*+*+6stu789?9C@5Q*'*)6{|
}7 89;1A1D:5>*'6
789;1E:5>*'6
789A1FG5.*+g9*+g9kkc((k674.89.H9.I1#J1K1FL5~8++M*,*,6	7 8898MN*O9PQ5:<*A*7   {6 {6%h`<%h`<6"(087>:897RS/T,&U,VS(WSXY5R(Y	
*
*

67(89XZ5d0Y	
+*

+*


670890[\X]5*+**Y+*

3Y	
+*

+*

Y+*

+*

6	6:j7 89[\^_`a5D*
*6789ba5D*
*6789cB5H*H*J')'))'o9'kck')o9)kck6&	$)6;74)
d1;
d1H89@e18f1gB5>**k**kc6789hB56**6789ij5<Y*w*w6789kl5HY*'k*'k6&789H1mn5NY*+c*+c6/789H9on5NY*+g*+g68789H9kn5b
.Y*+k*+kg*+k*+kc6?7.89.H9pn5<
++@++o9++kc9**kcoI**kgo9=++o9++kc9*k*coI*k*go9Y(6*
LMN+O;PORZShTxUX7f
;q1Lr12s1+$t189H9xq1r1Z:s1h,t1ul5
*'J66**	66**	66**	66j'k'kZ	YVYVYVYV:	YVYVYVYV:'kp6				`6	Y)	5k)	5k'*k9Y)k)k6:r	stx'y?zW|l7\	Bvw-xw#yS	89z1	{1|_}Sd1un5_+*+*I*9(+k+kg9(+k+kc9 9
Y
k
k6 0@G7H_89_z9E~1 ?10/1@1G{1
j5;Y**w6789j5=Y**6789j5z
**YL*I*9(&(o9(!kcckk9%(o9!kcckk9*Y*#koL&*w9Y*#koL+6:'07=Z`|7f
O9W1=s1O9'e10f1|D1``s189O9j5`*wH*J' 9

)k9
)k9'w 9

)wk9	
)wk9	g9g9Y!k%k6.#*4>EL7R`89Z1U1F~1#=14,1	>"1O{1
j5`*wH*J' 9

)k9
)k9'w 9

)wk9	
)wk9	c9c9Y!k!k6.#*4>EL7R`89Z1U1F~1#=14,1	>"1O{1
j5*wH*J' 9

)k9
)k9'w 9

)wk9	
)wk9	g9g9Y!k!k:*wH*J' 9

)k9
)k9'w 9

)wk9	
)wk9	c9c9Y!k!k:'6^#*4 >"E#L%a(g)l,r-{.123568:7f
8911~1#141	>1{1
ai99j5t**k**kggI**k**kcg9Y(L+(L+Y*wc+Y*c+I+9++(w+6.GH-J8K=MKNXP`QfSlTrV7*t898<R9^1-G1j5z**k**kggI**k**kcg9Y(L+(L+wI+9+*(c+*c+I+9++(w+66
_`-b8c=eCfIhSi^kfllnroxq7*z898BR9d1-M1j5VY*w*g:*H*cJY')':HJ!)k%'k6&	xz{ }09?IS7*V89=1 61BR9j5]* H'*kJ'*k9*w H'*wk9'*wk9	)gJ	g9Y!)k!k6&	&2>CJ7>]89U{1K~1@12+1>1	j5]* H'*kJ'*k9*w H'*wk9'*wk9	)cJ	c9Y!)k!k6&	&2>CJ7>]89U{1K~1@12+1>1	j5|
* H'*kJ'*k9*w H'*wk9'*wk9	)gJ	g9Y!)k!k:* H'*kJ'*k9*w H'*wk9'*wk9	)cJ	c9Y!)k!k:'6N&2>CJ^fp{7R89{1~1121>1	^f99j5
fY**k**kgc**k**kcL+(L+Y*c+Y*c+I+++(+6"05BOT_d7 f8906R9Td1j5
fY**k**kgg**k**kcL+(L+Y*c+Y*c+I+++(+6"05BOT_d7 f8906R9Td1j5VY*c*:*gH*wJY')':HJ!'k!)k6&	 09?IS7*V89<1 61CR9	5q!*I+9Y(k(k6'()7*!s=!=11B5/*6078950*67789Q50*6>78950*6E789PK
v75,org/nfunk/jep/type/DoubleNumberFactory.class0I
:;
<
=	>	?@A
<	B	C@DEFZEROLjava/lang/Double;ONETWOMINUSONE<init>()VCodeLineNumberTableLocalVariableTablethis(Lorg/nfunk/jep/type/DoubleNumberFactory;createNumber&(Ljava/lang/String;)Ljava/lang/Object;valueLjava/lang/String;(D)Ljava/lang/Object;D&(Ljava/lang/Number;)Ljava/lang/Object;Ljava/lang/Number;(Z)Ljava/lang/Object;Z(F)Ljava/lang/Object;F(I)Ljava/lang/Object;I(S)Ljava/lang/Object;S0(Lorg/nfunk/jep/type/Complex;)Ljava/lang/Object;Lorg/nfunk/jep/type/Complex;
ExceptionsgetMinusOne()Ljava/lang/Object;getOnegetTwogetZero<clinit>
SourceFileDoubleNumberFactory.javajava/lang/DoubleGHorg/nfunk/jep/ParseException+Cannot create a number from a Complex value&org/nfunk/jep/type/DoubleNumberFactoryjava/lang/Object org/nfunk/jep/type/NumberFactory(Ljava/lang/String;)V(D)V!				/* =	Y+		!"#=	Y'		!$%6+ !&'B	!!()>
Y#"

!*+>
Y#

!,->
Y$

!./>
Y	&

!0123.
(43.)53.*63.+7U1YYYY
#89PK
v7M&org/nfunk/jep/type/NumberFactory.class0createNumber&(Ljava/lang/String;)Ljava/lang/Object;
Exceptions(D)Ljava/lang/Object;(I)Ljava/lang/Object;(S)Ljava/lang/Object;(F)Ljava/lang/Object;(Z)Ljava/lang/Object;&(Ljava/lang/Number;)Ljava/lang/Object;0(Lorg/nfunk/jep/type/Complex;)Ljava/lang/Object;getZero()Ljava/lang/Object;getOnegetMinusOnegetTwo
SourceFileNumberFactory.java org/nfunk/jep/type/NumberFactoryjava/lang/Objectorg/nfunk/jep/ParseException	

PK
v7FForg/nfunk/jep/type/package.html<body>
Provides number factories and special type classes.
</body>
PK*8[ META-INF/MANIFEST.MFPK*8B META-INF/LONCAPA.SFPK*8;_7 META-INF/LONCAPA.DSAPK

v7	META-INF/PK

v7org/PK

v7
org/nfunk/PK

v7org/nfunk/jep/PK

v7:org/nfunk/jep/evaluation/PK

v7qorg/nfunk/jep/function/PK

v7org/nfunk/jep/type/PK

v7/org/nfunk/jep/ASTConstant.classPK

v7vd=="org/nfunk/jep/ASTFunNode.classPK

v7ȐBkk.+org/nfunk/jep/ASTStart.classPK

v7T33.org/nfunk/jep/ASTVarNode.classPK

v7%ʧuB5org/nfunk/jep/EvaluatorI.classPK

v7/ 	s,,$d6org/nfunk/jep/EvaluatorVisitor.classPK

v7^!Horg/nfunk/jep/FunctionTable.classPK

v7**Morg/nfunk/jep/JEP.classPK

v7Du		"worg/nfunk/jep/JJTParserState.classPK

v7A|"org/nfunk/jep/JavaCharStream.classPK

v70m		֞org/nfunk/jep/Node.classPK

v7@org/nfunk/jep/Operator.classPK

v7Iorg/nfunk/jep/OperatorSet.classPK

v7q"[org/nfunk/jep/ParseException.classPK

v76AOorg/nfunk/jep/Parser$1.classPK

v7tl??+Dorg/nfunk/jep/Parser$LookaheadSuccess.classPK

v7(5wworg/nfunk/jep/Parser.classPK

v7.WFFDorg/nfunk/jep/Parser.jjtPK

v7~#org/nfunk/jep/ParserConstants.classPK

v7{B

%Ԕorg/nfunk/jep/ParserDumpVisitor.classPK

v7?g[==&.org/nfunk/jep/ParserTokenManager.classPK

v7(t99'`org/nfunk/jep/ParserTreeConstants.classPK

v7QXX!org/nfunk/jep/ParserVisitor.classPK

v7|{uorg/nfunk/jep/SimpleNode.classPK

v7q,\org/nfunk/jep/SymbolTable$StObservable.classPK

v7u{bzorg/nfunk/jep/SymbolTable.classPK

v7rorg/nfunk/jep/Token.classPK

v7Æ

!borg/nfunk/jep/TokenMgrError.classPK

v7[eorg/nfunk/jep/Variable.classPK

v7ntFJJ#org/nfunk/jep/VariableFactory.classPK

v7i-org/nfunk/jep/evaluation/CommandElement.classPK

v7N22/%org/nfunk/jep/evaluation/CommandEvaluator.classPK

v7ږ1j-org/nfunk/jep/evaluation/ExpressionCompiler.classPK

v7JU%?9org/nfunk/jep/evaluation/package.htmlPK

v7\'yy q:org/nfunk/jep/function/Abs.classPK

v7JRS (?org/nfunk/jep/function/Add.classPK

v7M
&3Horg/nfunk/jep/function/ArcCosine.classPK

v7gg'Morg/nfunk/jep/function/ArcCosineH.classPK

v7ğkZ$Rorg/nfunk/jep/function/ArcSine.classPK

v7tZ%Worg/nfunk/jep/function/ArcSineH.classPK

v7@7bb$\org/nfunk/jep/function/ArcTanH.classPK

v7-Г'borg/nfunk/jep/function/ArcTangent.classPK

v7sqCNN(vgorg/nfunk/jep/function/ArcTangent2.classPK

v7<- 
lorg/nfunk/jep/function/Arg.classPK

v7#	qorg/nfunk/jep/function/Assign.classPK

v70
xorg/nfunk/jep/function/CallbackEvaluationI.classPK

v7q

(wyorg/nfunk/jep/function/Comparative.classPK

v7("#Njorg/nfunk/jep/function/Cosine.classPK

v7<$org/nfunk/jep/function/CosineH.classPK

v7}
%44"org/nfunk/jep/function/Cross.classPK

v7@-/org/nfunk/jep/function/DefiniteIntegral.classPK

v7W00(org/nfunk/jep/function/Determinant.classPK

v7`gl33)org/nfunk/jep/function/Differential.classPK

v7h5p
p
#qorg/nfunk/jep/function/Divide.classPK

v7@zz "org/nfunk/jep/function/Dot.classPK

v7tT47
7
 ڻorg/nfunk/jep/function/Ele.classPK

v7SS#Oorg/nfunk/jep/function/Equals.classPK

v7#gTKK org/nfunk/jep/function/Exp.classPK

v7)z,mm&lorg/nfunk/jep/function/Imaginary.classPK

v7%org/nfunk/jep/function/Integral.classPK

v7*33)Oorg/nfunk/jep/function/Intersection.classPK

v72P$org/nfunk/jep/function/LValueI.classPK

v7Ó::!org/nfunk/jep/function/List.classPK

v7Kth55&org/nfunk/jep/function/Logarithm.classPK

v7R$org/nfunk/jep/function/Logical.classPK

v7oC::$Jorg/nfunk/jep/function/Modulus.classPK

v7t++%org/nfunk/jep/function/Multiply.classPK

v7aRR-4org/nfunk/jep/function/NaturalLogarithm.classPK

v7%'3== org/nfunk/jep/function/Not.classPK

v7q/Lorg/nfunk/jep/function/PostfixMathCommand.classPK

v7dee0forg/nfunk/jep/function/PostfixMathCommandI.classPK

v73?'33"
org/nfunk/jep/function/Power.classPK

v7$$$org/nfunk/jep/function/Product.classPK

v7pe9ZZ!org/nfunk/jep/function/Real.classPK

v7{ku! org/nfunk/jep/function/Sine.classPK

v7
"`%org/nfunk/jep/function/SineH.classPK

v7QZ#qq/o*org/nfunk/jep/function/SpecialEvaluationI.classPK

v7z~֨'-,org/nfunk/jep/function/SquareRoot.classPK

v7v!!#V1org/nfunk/jep/function/Subset.classPK

v7׮!''%3org/nfunk/jep/function/SubsetEq.classPK

v7Ncc%"6org/nfunk/jep/function/Subtract.classPK

v7C >org/nfunk/jep/function/Sum.classPK

v7U:!Aorg/nfunk/jep/function/TanH.classPK

v7^7j$NForg/nfunk/jep/function/Tangent.classPK

v7qy"/Korg/nfunk/jep/function/Trace.classPK

v7,ȟ||#Morg/nfunk/jep/function/UMinus.classPK

v7ԩ"JRorg/nfunk/jep/function/Union.classPK

v7;yy#Torg/nfunk/jep/function/package.htmlPK

v7WubVorg/nfunk/jep/package.htmlPK

v7u-*6'6' Worg/nfunk/jep/type/Complex.classPK

v75,org/nfunk/jep/type/DoubleNumberFactory.classPK

v7M&porg/nfunk/jep/type/NumberFactory.classPK

v7FF^org/nfunk/jep/type/package.htmlPKgg 

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>