78com/dexels/navajo/parser/compiled/TestCompiledExpressionjava/lang/Objectinput#Lcom/dexels/navajo/document/Navajo;()VCode  LineNumberTableLocalVariableTablethis:Lcom/dexels/navajo/parser/compiled/TestCompiledExpression;setupRuntimeVisibleAnnotations"Lorg/junit/jupiter/api/BeforeEach;3com/dexels/navajo/server/impl/NavajoConfigComponent  (com/dexels/navajo/document/NavajoFactory  getInstance,()Lcom/dexels/navajo/document/NavajoFactory;   createNavajo%()Lcom/dexels/navajo/document/Navajo; ! # TestMessage % &' createMessage[(Lcom/dexels/navajo/document/Navajo;Ljava/lang/String;)Lcom/dexels/navajo/document/Message; )+*!com/dexels/navajo/document/Navajo ,- addMessageJ(Lcom/dexels/navajo/document/Message;)Lcom/dexels/navajo/document/Message;/ TestProperty1string3 TestValue5TestDescription7out 9 :;createProperty(Lcom/dexels/navajo/document/Navajo;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lcom/dexels/navajo/document/Property; =?>"com/dexels/navajo/document/Message @A addProperty((Lcom/dexels/navajo/document/Property;)VCTestArrayMessageMessageEarray G &Hm(Lcom/dexels/navajo/document/Navajo;Ljava/lang/String;Ljava/lang/String;)Lcom/dexels/navajo/document/Message;J array_elementLPropertyNPropPRinT __parms__VParamX SomeParamZProp2 =\ ]- addElement$Lcom/dexels/navajo/document/Message;element1element2paramsparseIntAddition Exceptionse0com/dexels/navajo/parser/compiled/ParseExceptiong7com/dexels/navajo/expression/api/TMLExpressionExceptionLorg/junit/jupiter/api/Test;jjava/util/ArrayList i m1+1 oqp1com/dexels/navajo/expression/impl/ExpressionCache r5()Lcom/dexels/navajo/expression/impl/ExpressionCache;t uvapply()Ljava/util/function/Function; ox yzparseu(Ljava/util/List;Ljava/lang/String;Ljava/util/function/Function;)Lcom/dexels/navajo/expression/api/ContextExpression;t }~java/util/List isEmpty()Z f %(Ljava/util/List;Ljava/lang/String;)V java/lang/Integer valueOf(I)Ljava/lang/Integer; 2com/dexels/navajo/expression/api/ContextExpression u&()Lcom/dexels/navajo/document/Operand; "com/dexels/navajo/document/Operand getValue()Ljava/lang/Object;  org/junit/jupiter/api/Assertions  assertEquals'(Ljava/lang/Object;Ljava/lang/Object;)V  isLiteral  assertTrue(Z)VproblemsLjava/util/List; expressionLjava/lang/String;ss4Lcom/dexels/navajo/expression/api/ContextExpression;ss2LocalVariableTypeTable$Ljava/util/List; StackMapTablejava/lang/String testParseTml[/TestMessage/TestProperty]java/io/StringReader (Ljava/lang/String;)V0com/dexels/navajo/parser/compiled/CompiledParser (Ljava/io/Reader;)V  Expression  getJJTree<()Lcom/dexels/navajo/parser/compiled/JJTCompiledParserState; 8com/dexels/navajo/parser/compiled/JJTCompiledParserState rootNode*()Lcom/dexels/navajo/parser/compiled/Node;  toString()Ljava/lang/String;tt &com/dexels/navajo/parser/compiled/Node interpretToLambda(Ljava/util/List;Ljava/lang/String;Ljava/util/function/Function;Ljava/util/function/Function;)Lcom/dexels/navajo/expression/api/ContextExpression; uI(Lcom/dexels/navajo/document/Navajo;)Lcom/dexels/navajo/document/Operand;  assertFalsesrLjava/io/StringReader;cp2Lcom/dexels/navajo/parser/compiled/CompiledParser;testParseTmlComplex1[TestArrayMessageMessage@Property=Prop2/Property]tt TopMessage )  getMessage8(Ljava/lang/String;)Lcom/dexels/navajo/document/Message; =+ u (Lcom/dexels/navajo/document/Navajo;Lcom/dexels/navajo/document/Message;Lcom/dexels/navajo/document/Message;Lcom/dexels/navajo/document/Selection;Lcom/dexels/navajo/script/api/MappableTreeNode;Lcom/dexels/navajo/script/api/Access;)Lcom/dexels/navajo/document/Operand;copy rootMessagevalueLjava/lang/Object;testParseTmlConditionalComplex Lorg/junit/jupiter/api/Disabled;`{request@.:!?[/NewMemberFunction/FromUnion]} AND {response@.:!?[/ExistingClubFunction/PersonId]}tttestParseExistsCheck,com/dexels/navajo/script/api/SystemExceptionB?[/TestMessage/TestProperty] AND [/TestMessage/TestProperty] != '' ,com/dexels/navajo/expression/impl/Expression evaluate(Ljava/lang/String;Lcom/dexels/navajo/document/Navajo;Lcom/dexels/navajo/script/api/MappableTreeNode;Lcom/dexels/navajo/document/Message;)Lcom/dexels/navajo/document/Operand; java/lang/Boolean (Z)Ljava/lang/Boolean;clauseotestNonExistantTML  [/Blib/Blob] execute(Lcom/dexels/navajo/parser/compiled/TestCompiledExpression;Ljava/lang/String;Lcom/dexels/navajo/parser/compiled/CompiledParser;)Lorg/junit/jupiter/api/function/Executable;   assertThrowsS(Ljava/lang/Class;Lorg/junit/jupiter/api/function/Executable;)Ljava/lang/Throwable;testParseExistsCheckNotExistingD?[/TestMessage/TestProperty2] AND [/TestMessage/TestProperty2] != ''testMultilineStringLiteral<'what is a haiku nothing but words, poetic? this is a haiku'   split'(Ljava/lang/String;)[Ljava/lang/String; " #(II)VlinesIparseExpressionLiteral(2FORALL( '/TestArrayMessageMessage', `?[Property]`) o* +(Ljava/lang/String;Lcom/dexels/navajo/document/Navajo;Lcom/dexels/navajo/document/Message;Lcom/dexels/navajo/document/Message;Lcom/dexels/navajo/document/Selection;Lcom/dexels/navajo/script/api/MappableTreeNode;Lcom/dexels/navajo/script/api/Access;)Lcom/dexels/navajo/document/Operand;parseExpressionWithParam. ?[/@Param]0 ?[/@Paramzz] 2 3 booleanValue5?[/@Param] AND [/@Param] != ''o2o3parsePerformanceTest :<;java/lang/System =>currentTimeMillis()J @ A[(Ljava/lang/String;Lcom/dexels/navajo/document/Navajo;)Lcom/dexels/navajo/document/Operand; :D EFerrLjava/io/PrintStream;Hjava/lang/StringBuilderJCompiled Parsing: G GM NOappend(J)Ljava/lang/StringBuilder; G RTSjava/io/PrintStream Uprintln oW X printStatsZ Compiled parsing after warm-up: \ ]^compileExpressionsZ`Interpreted Parsing: beforeJinow compiledTimetestNamedExpressionhaap=1+1 j kKeyValuem1com/dexels/navajo/parser/compiled/ASTKeyValueNode t t lr1com/dexels/navajo/expression/impl/NamedExpression }t uvsize()Ixaap qz {name qatn3Lcom/dexels/navajo/parser/compiled/ASTKeyValueNode;ne3Lcom/dexels/navajo/expression/impl/NamedExpression;testFunctionCallWithNamedParams5com/dexels/navajo/expression/compiled/AddTestFunction  3com/dexels/navajo/expression/api/FunctionDefinition  getClass()Ljava/lang/Class; java/lang/Class getNameblibblebblab  K(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V 7com/dexels/navajo/functions/util/FunctionFactoryFactory 4()Lcom/dexels/navajo/functions/util/FunctionFactory;addtest 0com/dexels/navajo/functions/util/FunctionFactory addExplicitFunctionDefinitionJ(Ljava/lang/String;Lcom/dexels/navajo/expression/api/FunctionDefinition;)Vaddtest(aap='blub',3+5,4),com/dexels/navajo/parser/compiled/SimpleNode t t monkey testFunction+Lcom/dexels/navajo/expression/api/Function;fd5Lcom/dexels/navajo/expression/api/FunctionDefinition;.Lcom/dexels/navajo/parser/compiled/SimpleNode;result$Lcom/dexels/navajo/document/Operand;testEmptyFunctionCall addtest() tttestMultiArgFunctionjava/lang/ExceptionSingleValueQuery SingleValueQuery( 'aap','noot' )tttestNestedNamedFunction descriptionMysteryFunctionBMysteryFunction(eep=MysteryFunction('blib','blob'), 'aap','noot' )tttestNestedNamedParams 1.1  1.0 > 1.0  1.0 >= 1.1  1.0 >= 1.0 testDoubleIntegerComparison 0.9 < 1  1.0 < 1  0.9 <= 1  1.0 <= 1  0.9 > 1  1.0 > 1  0.9 >= 1  1.0 >= 1 testIntegerDoubleComparison  1 < 1.1   1 < 1.0   1 <= 1.1  1 <= 1.0  1 > 1.1  1 > 1.0  1 >= 1.1  1 >= 1.0 testIntegerComparison 1 < 2  1 < 1  1 <= 2   1 <= 1 " 1 > 2 $ 1 > 1 & 1 >= 2 ( 1 >= 1 testStringComparison+ '010' < '020' - '010' < '010' / '010' <= '020' 1 '010' <= '010' 3 '010' > '020' 5 '010' > '010' 7 '010' >= '020' 9 '010' >= '010' testDateComparison<! TODAY < ( TODAY + 0#0#1#0#0#0 ) > TODAY < TODAY @" TODAY <= ( TODAY + 0#0#1#0#0#0 ) B TODAY <= TODAY D! TODAY > ( TODAY + 0#0#1#0#0#0 ) F TODAY > TODAY H" TODAY >= ( TODAY + 0#0#1#0#0#0 ) J TODAY >= TODAY lambda$0M(Ljava/lang/String;)Lcom/dexels/navajo/expression/api/FunctionClassification; NPO7com/dexels/navajo/expression/api/FunctionClassification QRDEFAULT9Lcom/dexels/navajo/expression/api/FunctionClassification;fnlambda$1lambda$2lambda$3((Ljava/lang/String;)Ljava/util/Optional; Y[Zjava/util/Optional \]empty()Ljava/util/Optional;lambda$4lambda$5lambda$6lambda$7lambda$8G(Ljava/lang/String;Lcom/dexels/navajo/parser/compiled/CompiledParser;)Vejava/lang/Throwablelambda$9 lambda$10 lambda$11 lambda$12 lambda$13 lambda$14 lambda$15 lambda$16 lambda$17 lambda$18 lambda$19 lambda$20 SourceFileTestCompiledExpression.javaBootstrapMethods vxw"java/lang/invoke/LambdaMetafactory yz metafactory(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;u&(Ljava/lang/Object;)Ljava/lang/Object;|  KL~L|  TLL|  ULL|  VWW|  ^LL|  _WW|  `LL|  aWW  bc|  fLL|  gWW|  hLL|  iWW|  jLL|  kWW|  lLL|  mWW|  nLL|  oWW|  pLL|  qWW InnerClasses%java/lang/invoke/MethodHandles$Lookupjava/lang/invoke/MethodHandlesLookup!0 /*  )  * * * "$(* .02468<* BDFL* +(W* BIFM,* K0MOQ8<* BIFN* S$:* U0WOQ8<* (W-* K0YOQ8<+,[W+-[W ~134%5.64765>8E9I8M:X;_<c;g=q>y=?@?ABCBDEFEGHI 4M&^g_^``^Ra^bcdfh *piYkLlMn+,swNn+,{w:+| fY+,-- >NO PQPRS#R(T1U;XKY\Ze[o\ 4ph eW(H h;}cdfh 2sLY+MY,N-iYk:-,ɺ:|fY+2* ر 6 ab cde"f/g9f@hJiUlhmrn >sp g^"Q@3 "QU}cdfh  LY+MY,N-iYk:-,ɺ:|fY+:$:(W* BW:Yر Jst uvw"x/y9x@zJ{U~]is \  "@l]OiC^ "U}cdf h ^LY+MY,N-iYk:-,ɺ:|fY+W 2  "/9@JU] >^[ RI"<@ "<U}cdfh 2LY+MY,N+* :-  $(1 42/ &$  cdh }% LY+MY,Nf*+- W  $ *%! cdfh 3LY+MY,N+* :-  %)2 43/ &% cdfh |$L+* M,>! # *$  $%&cdfh Nn'* )W  ,cdfh _n-* )L+n/* )M,1ظn4* )N-1 N +-034>HMPST^ *_I 4+6T 78cf h  ո9@>4* ?:B9B!e7CGYIKLPQnV9@64* ?:B9B!e7CGYYKLPQnV9@[64* ?:B9B!e7CGY_KLPQ f #(@FJP\gkp Habc%#db(ebMc%c% 7<fcdh lgLY+MY,N-i-l:iYk:+nopq:s!wy| 6     & /4>FQ\k Hlh _V&F}~/=F& /=cdh ] YLY+M,NY-:Y::iYk:-::   F *.8C H!U"^#c$m#r%{'( f  g.Y8OCDU2}^)r{  ^)cdh N YLY+M,NY-:Y:iYk:ɺ:: B-./. 0*2.384C5H6Q7`8j7q9z;< \ ~ f.X8NCCQ5qz   Q5ch qYLY+M,NY-:Y:iYk:ɺW :ABCB D*E.G8HCILJQK`LjKpM Hqi Q.C89C.L% L%ch qYLY+ȷM,NY-:Y:iYk:ɺW :RSTS U*W.Y8ZC[L\Q]`^j]p_ Hqi Q.C89C.L% L%ch DYLY+ȷM,NY-:Y:iYk:ɺ: Fdefe g&h'g*j.l8mCnLoQp`qjpqst Rz b.T8JC?L6q L6ch QL+ z {|  ch QL+    h -L+1L+1L+1L+1L+1L+1L+1L+1 F !.8EO\fs}  h -L+1L+1L+1L+1L+1L+1L+1L+1 F !.8EO\fs}  h -L+1 L+1 L+1L+1L+1L+1L+1L+1 F !.8EO\fs}  h -L+1L+1L+1L+1!L+1#L+1%L+1'L+1 F !.8EO\fs}  )h -*L+1,L+1.L+10L+12L+14L+16L+18L+1 F !.8EO\fs}  :h -;L+1=L+1?L+1AL+1CL+1EL+1GL+1IL+1 F !.8EO\fs}   KL .M Q S TL .M S S UL .M g S VW .X g { ^L .M y S _W .X y { `L .M  S aW .X  {bccd [+* N,-     fL .M  S gW .X  { hL .M $ S iW .X $ { jL .M 8 S kW .X 8 { lL .M L S mW .X L { nL .M ^ S oW .X ^ { pL .M q S qW .X q {rst{}{{{{{{{{{{{{{{{{{{{{