0` 12 1 3 4 5 6 7 8 9 :; < := > ? @ A B C D E F G H I J K L MN O P Q :R ST U VW X Y Z [ \ ] m= m^_ 0` a b c d e :f g h i j k Sl mn op q Sr s :tu v :w Hxy mz S{ | S} S~   S H  x H   S S o   0  =     c e c e  0 S m S S Hk        S   S S   m m S m m  m m m m S  m S Hh  S : S : 1  S H    S  S  :  = 1   1 = ^ 0 0 m  dDictionary5Lorg/apache/derby/iapi/sql/dictionary/DataDictionary;numTablesInQueryInumOptimizablesassignedTableMap$Lorg/apache/derby/iapi/util/JBitSet;optimizableList3Lorg/apache/derby/iapi/sql/compile/OptimizableList; predicateList(Lorg/apache/derby/iapi/sql/compile/OptimizableList;Lorg/apache/derby/iapi/sql/compile/OptimizablePredicateList;Lorg/apache/derby/iapi/sql/dictionary/DataDictionary;ZZZI[Lorg/apache/derby/iapi/sql/compile/JoinStrategy;ILorg/apache/derby/iapi/sql/compile/RequiredRowOrdering;I)VCode ExceptionsprepForNextRound()VgetMaxMemoryPerTable()IgetNextPermutation()ZrewindJoinOrderendOfRoundCleanup recoverCostFromProposedJoinOrder(Z)DjoinOrderMeetsDependencies(I)ZpullOptimizableFromJoinOrderpushPredicatesV(Lorg/apache/derby/iapi/sql/compile/Optimizable;Lorg/apache/derby/iapi/util/JBitSet;)VgetNextDecoratedPermutationrememberBestCost4(Lorg/apache/derby/iapi/sql/compile/CostEstimate;I)VcostPermutationcostOptimizable(Lorg/apache/derby/iapi/sql/compile/Optimizable;Lorg/apache/derby/iapi/sql/dictionary/TableDescriptor;Lorg/apache/derby/iapi/sql/dictionary/ConglomerateDescriptor;Lorg/apache/derby/iapi/sql/compile/OptimizablePredicateList;Lorg/apache/derby/iapi/sql/compile/CostEstimate;)VruleBasedCostOptimizablecostBasedCostOptimizable considerCost(Lorg/apache/derby/iapi/sql/compile/Optimizable;Lorg/apache/derby/iapi/sql/compile/OptimizablePredicateList;Lorg/apache/derby/iapi/sql/compile/CostEstimate;Lorg/apache/derby/iapi/sql/compile/CostEstimate;)VgetDataDictionary7()Lorg/apache/derby/iapi/sql/dictionary/DataDictionary;modifyAccessPathsnewCostEstimate2()Lorg/apache/derby/iapi/sql/compile/CostEstimate;getOptimizedCost getFinalCost setOuterRows(D)VgetNumberOfJoinStrategiesgetJoinStrategy3(I)Lorg/apache/derby/iapi/sql/compile/JoinStrategy;D(Ljava/lang/String;)Lorg/apache/derby/iapi/sql/compile/JoinStrategy;uniqueJoinWithOuterTable?(Lorg/apache/derby/iapi/sql/compile/OptimizablePredicateList;)D isPushable;(Lorg/apache/derby/iapi/sql/compile/OptimizablePredicate;)ZestimateTotalCost (Lorg/apache/derby/iapi/sql/compile/OptimizablePredicateList;Lorg/apache/derby/iapi/sql/dictionary/ConglomerateDescriptor;Lorg/apache/derby/iapi/sql/compile/CostEstimate;Lorg/apache/derby/iapi/sql/compile/Optimizable;)Lorg/apache/derby/iapi/sql/compile/CostEstimate;getLevelgetNewCostEstimate9(DDD)Lorg/apache/derby/impl/sql/compile/CostEstimateImpl;trace(IIIDLjava/lang/Object;)VupdateBestPlanMaps(SLjava/lang/Object;)VaddScopedPredicatesToList4(Lorg/apache/derby/impl/sql/compile/PredicateList;)V 1org/apache/derby/impl/sql/compile/RowOrderingImpl )*    "org/apache/derby/iapi/util/JBitSet      +org/apache/derby/impl/sql/compile/Predicate  +,            42Y70   .org/apache/derby/iapi/sql/compile/CostEstimate      .               $%      9org/apache/derby/impl/sql/compile/BaseTableNumbersVisitor +org/apache/derby/impl/sql/compile/FromTable    % :org/apache/derby/iapi/sql/compile/OptimizablePredicateList      !"   #$  %& ' ( )* +,   - ./ 01 2 3 &' 45 67 87 9 :;< = >? @A #B C42Y69 DE FG HI2org/apache/derby/impl/sql/compile/CostEstimateImpl JK LMN OPQ RS T#U V !W   XYjava/util/HashMap Y Z[/org/apache/derby/impl/sql/compile/PredicateList \ ] ^_/org/apache/derby/impl/sql/compile/OptimizerImpljava/lang/Object+org/apache/derby/iapi/sql/compile/Optimizer-org/apache/derby/iapi/error/StandardException1org/apache/derby/iapi/sql/compile/OptimizableListverifyProperties8(Lorg/apache/derby/iapi/sql/dictionary/DataDictionary;)Vsize(I)VgetOptimizable2(I)Lorg/apache/derby/iapi/sql/compile/Optimizable;-org/apache/derby/iapi/sql/compile/OptimizablegetReferencedTableMap&()Lorg/apache/derby/iapi/util/JBitSet;or'(Lorg/apache/derby/iapi/util/JBitSet;)Vjava/lang/SystemcurrentTimeMillis()JgetOptPredicate;(I)Lorg/apache/derby/iapi/sql/compile/OptimizablePredicate;isScopedForPushinitAccessPaths0(Lorg/apache/derby/iapi/sql/compile/Optimizer;)VisUninitializedcompare3(Lorg/apache/derby/iapi/sql/compile/CostEstimate;)DgetBestAccessPath0()Lorg/apache/derby/iapi/sql/compile/AccessPath;,org/apache/derby/iapi/sql/compile/AccessPathgetCostEstimate-org/apache/derby/iapi/sql/compile/RowOrderingcopy2(Lorg/apache/derby/iapi/sql/compile/RowOrdering;)VlegalJoinOrder'(Lorg/apache/derby/iapi/util/JBitSet;)ZoptimizeJoinOrder newExceptionC(Ljava/lang/String;)Lorg/apache/derby/iapi/error/StandardException;singleScanRowCount()DsetCostEstimate3(Lorg/apache/derby/iapi/sql/compile/CostEstimate;)VstartOptimizing_(Lorg/apache/derby/iapi/sql/compile/Optimizer;Lorg/apache/derby/iapi/sql/compile/RowOrdering;)VpullOptPredicates?(Lorg/apache/derby/iapi/sql/compile/OptimizablePredicateList;)VupdateBestPlanMapsetCost(DDD)VclearAllgetBestSortAvoidancePathgetEstimatedCostrowCountconsiderSortAvoidancePathgetTableNumberremoveOptimizablexorgetReferencedMapsetTogetclearandgetFirstSetBit setTableMapacceptZ(Lorg/apache/derby/iapi/sql/compile/Visitor;)Lorg/apache/derby/iapi/sql/compile/Visitable;setpushOptPredicateremoveOptPredicatenextAccessPath(Lorg/apache/derby/iapi/sql/compile/Optimizer;Lorg/apache/derby/iapi/sql/compile/OptimizablePredicateList;Lorg/apache/derby/iapi/sql/compile/RowOrdering;)ZgetCurrentAccessPath5org/apache/derby/iapi/sql/compile/RequiredRowOrdering getSortNeeded estimateCostc(DLorg/apache/derby/iapi/sql/compile/RowOrdering;Lorg/apache/derby/iapi/sql/compile/CostEstimate;)V sortRequirede(Lorg/apache/derby/iapi/sql/compile/RowOrdering;Lorg/apache/derby/iapi/sql/compile/OptimizableList;)IrememberAsBest1(ILorg/apache/derby/iapi/sql/compile/Optimizer;)V sortNotNeeded sortNeededfeasibleJoinStrategyl(Lorg/apache/derby/iapi/sql/compile/OptimizablePredicateList;Lorg/apache/derby/iapi/sql/compile/Optimizer;)Z optimizeIt(Lorg/apache/derby/iapi/sql/compile/Optimizer;Lorg/apache/derby/iapi/sql/compile/OptimizablePredicateList;Lorg/apache/derby/iapi/sql/compile/CostEstimate;Lorg/apache/derby/iapi/sql/compile/RowOrdering;)Lorg/apache/derby/iapi/sql/compile/CostEstimate; getLockModeusefulo(Lorg/apache/derby/iapi/sql/compile/Optimizable;Lorg/apache/derby/iapi/sql/dictionary/ConglomerateDescriptor;)ZisCoveringIndex@(Lorg/apache/derby/iapi/sql/dictionary/ConglomerateDescriptor;)ZgetCoveringIndexScangetNonMatchingIndexScansetConglomerateDescriptor@(Lorg/apache/derby/iapi/sql/dictionary/ConglomerateDescriptor;)VsetNonMatchingIndexScan(Z)VsetCoveringIndexScan setLockModerememberJoinStrategyAsBest1(Lorg/apache/derby/iapi/sql/compile/AccessPath;)V;org/apache/derby/iapi/sql/dictionary/ConglomerateDescriptorisIndexgetConglomerateDescriptor?()Lorg/apache/derby/iapi/sql/dictionary/ConglomerateDescriptor; memoryUsageOK(DI)Z(Lorg/apache/derby/iapi/sql/compile/RowOrdering;Lorg/apache/derby/iapi/util/JBitSet;Lorg/apache/derby/iapi/sql/compile/OptimizableList;)IrememberSortAvoidancePathreOrder([I)VmodifyAccessPathU(Lorg/apache/derby/iapi/util/JBitSet;)Lorg/apache/derby/iapi/sql/compile/Optimizable;setOptimizable3(ILorg/apache/derby/iapi/sql/compile/Optimizable;)VgetTrulyTheBestAccessPath%org/apache/derby/iapi/util/StringUtilSQLToUpperCase&(Ljava/lang/String;)Ljava/lang/String;.org/apache/derby/iapi/sql/compile/JoinStrategygetName()Ljava/lang/String;java/lang/Stringequals(Ljava/lang/Object;)Z uniqueJoin6org/apache/derby/iapi/sql/compile/OptimizablePredicate hasSubquery7(Lorg/apache/derby/iapi/sql/compile/OptimizablePredicateList;Lorg/apache/derby/iapi/sql/dictionary/ConglomerateDescriptor;Lorg/apache/derby/iapi/sql/compile/CostEstimate;Lorg/apache/derby/iapi/sql/compile/Optimizer;Lorg/apache/derby/iapi/sql/compile/RowOrdering;)Lorg/apache/derby/iapi/sql/compile/CostEstimate;remove&(Ljava/lang/Object;)Ljava/lang/Object;put8(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;isScopedToSourceResultSetclearScanFlagsaddOptPredicate;(Lorg/apache/derby/iapi/sql/compile/OptimizablePredicate;)V!-$`T**Y*Y****** **    +- * *+**  *** *6  ** O ** **+*,*-***** * ** Y !"* Y !#6  *!+ $: *# %& *'(*)*** +*,*-x*)**    *,*@*.4*.d<$*/01 *, *,*'(*2*3* **4 *5*6**7*2L*C*<*'8**8*(e*+2*4*2 *5* 9n*:g*, *- *2R*E* ** <***.O** *;**2<* 9.** <** * <=**dPL*2E*"***.$=>O*Y`<**?3*4**d *5**d*)***)*;****.`>**.*@*3 *2 *>V***.6>*66*$:*"A~**O*O*`)*.6**O*O>%**Yd*)*;**$:z* **d**{66**. 6 G*E*B=*4 * 5*C*4 * 5DE*}*C@**F*4 * 5DE*4 * 5*3****d**:6*B*O*$=>: *GR*66*h6`6  * 11 6 01R*.6**.O*O6*Yd*; **Yd* *****O*|66*4*.*. 6*.*. 7**O*Yd**)*;***6*$=HI*4 * 5*$:*"%&**J**$*"K*6ui***.$L+*L*) +*M**O**Yd*N* N*"O."<**$*MmaI6*T((**.$P>QcI%(**.$=>QcI("*$M,*"A***.$L6**RI*S98**d.6*$=>:TIG9*U99 +=>:  . Q9  g9* 9 *V9***U99*(N*+W+P: 9 * *RI*S9*U9 A*$P>:TIG9* U >Qg9  * 9 *V9 *  (N*+XY**?+*L*) +*M**O*"+%Z  9 -*.> Y*!:::6d6  * /0: * [ \]6  ^, _  ` *#ab6} 1u*m Y*!:cYd:+ef6Og+ehW ig jWab6+ k* l  j ^***.$MJ,*m*n<,=>h,o>Z,=>,o>p,,M/,=>T,o>T ,,M,,M,=>:**UQcTGN,W;*4,P>:* * UQcTGN*4 * 5,W *5**d*4 *5*76*q**rq*s* R*Ro** R**qt*qQ9**R**qt6* * Ug*qQc*qT*SN1* R*R**U* R*SN**R**qt*RJ**U*qQc*qT*SN*4*5*5*:** < * 9**u*)*)*1*U*qQg99*)*SN*U,WL***v7*4 *5* * < * 9 ** u  *:*4!*5*5*5* +w* U*+** U+**,->***.O>***.$*x**y *z*4* *5*5nb* *L"***d.$=>L***.$M,**{,**+*|W:.+*{**+,-}*+,-~ ::+=:+o6 v+-j+-6  G*-+I- +o++-G*-+I-+o+H>-7*-+I-+o+:I*-+I--+o+ *-+:+oI+TTo**4 *5+=:>:pY-I+-+-+o+*****d.$W***"*+P:>:pl-I+-+-+o++**?"+,*{+o-I+-TTo**4 *5+=:>:-p-I+*****d.$Wl***"*S+P:>:-p&-I++**?**4 *5*:*4 *5E** Y*!L=*5*$N+-%&*-+K*-+ɱY* zn****L=*H**.$>L**Q+Qc+T+G*#**U'*SN** *2!C7M+N6*$-*2 *2M,"#r fI9*R9+F*d69**.$:  +9   +k9 oI($% +&' +,-**:()* Y')+, %**-.*N%****,W****]***Y***,N- * N6*-*.O**,-W8**1**,N-6-*-.O*d>*$,M/0+ +***YM*.d>(*/0M,1 *l+d>,+0M,,*,+ֱ