All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.groupbyinc.flux.index.engine.Engine.class Maven / Gradle / Ivy

There is a newer version: 198
Show newest version
????4?'com/groupbyinc/flux/index/engine/Enginejava/lang/Objectjava/io/CloseableEngine.java.com/groupbyinc/flux/index/engine/Engine$WarmerWarmer6com/groupbyinc/flux/index/engine/Engine$IndexCommitRefIndexCommitRef0com/groupbyinc/flux/index/engine/Engine$CommitIdCommitId1com/groupbyinc/flux/index/engine/Engine$GetResult	GetResult+com/groupbyinc/flux/index/engine/Engine$GetGet,com/groupbyinc/flux/index/engine/Engine$NoOpNoOp.com/groupbyinc/flux/index/engine/Engine$DeleteDelete-com/groupbyinc/flux/index/engine/Engine$IndexIndex1com/groupbyinc/flux/index/engine/Engine$Operation 	Operation0com/groupbyinc/flux/index/engine/Engine$Searcher#Searcher5com/groupbyinc/flux/index/engine/Engine$EventListener&
EventListener9com/groupbyinc/flux/index/engine/Engine$SyncedFlushResult)SyncedFlushResult2com/groupbyinc/flux/index/engine/Engine$NoOpResult,
NoOpResult4com/groupbyinc/flux/index/engine/Engine$DeleteResult/DeleteResult3com/groupbyinc/flux/index/engine/Engine$IndexResult2IndexResult.com/groupbyinc/flux/index/engine/Engine$Result5Result0com/groupbyinc/flux/index/engine/Engine$NoOpLock8NoOpLock5com/groupbyinc/flux/index/engine/Engine$IndexThrottle;
IndexThrottle)com/groupbyinc/flux/index/engine/Engine$1>Ncom/groupbyinc/flux/common/lucene/uid/VersionsAndSeqNoResolver$DocIdAndVersion@>com/groupbyinc/flux/common/lucene/uid/VersionsAndSeqNoResolverBDocIdAndVersion;com/groupbyinc/flux/common/collect/ImmutableOpenMap$BuilderE3com/groupbyinc/flux/common/collect/ImmutableOpenMapGBuilder:java/util/concurrent/locks/ReentrantReadWriteLock$ReadLockJ1java/util/concurrent/locks/ReentrantReadWriteLockLReadLock;java/util/concurrent/locks/ReentrantReadWriteLock$WriteLockO	WriteLock%java/lang/invoke/MethodHandles$LookupRjava/lang/invoke/MethodHandlesTLookupSYNC_COMMIT_IDLjava/lang/String;sync_idYHISTORY_UUID_KEYhistory_uuid\shardId)Lcom/groupbyinc/flux/index/shard/ShardId;allocationIdlogger!Lorg/apache/logging/log4j/Logger;engineConfig/Lcom/groupbyinc/flux/index/engine/EngineConfig;store'Lcom/groupbyinc/flux/index/store/Store;isClosed+Ljava/util/concurrent/atomic/AtomicBoolean;closedLatch%Ljava/util/concurrent/CountDownLatch;
eventListener7Lcom/groupbyinc/flux/index/engine/Engine$EventListener;failEngineLock*Ljava/util/concurrent/locks/ReentrantLock;rwl3Ljava/util/concurrent/locks/ReentrantReadWriteLock;readLock;Lcom/groupbyinc/flux/common/util/concurrent/ReleasableLock;	writeLockfailedEngine7Lcom/groupbyinc/flux/common/apache/lucene/util/SetOnce;NLcom/groupbyinc/flux/common/apache/lucene/util/SetOnce;lastWriteNanosJ$assertionsDisabledZ2(Lcom/groupbyinc/flux/index/engine/EngineConfig;)V()V{}
~)java/util/concurrent/atomic/AtomicBoolean?(Z)V{?
??gh	?#java/util/concurrent/CountDownLatch?(I)V{?
??ij	?(java/util/concurrent/locks/ReentrantLock?
?~mn	?
M~op	?9com/groupbyinc/flux/common/util/concurrent/ReleasableLock?>()Ljava/util/concurrent/locks/ReentrantReadWriteLock$ReadLock;q?
M?$(Ljava/util/concurrent/locks/Lock;)V{?
??qr	??()Ljava/util/concurrent/locks/ReentrantReadWriteLock$WriteLock;s?
M?sr	?5com/groupbyinc/flux/common/apache/lucene/util/SetOnce?
?~tu	?java/lang/System?nanoTime()J??
??wx	?-com/groupbyinc/flux/index/engine/EngineConfig?getStore)()Lcom/groupbyinc/flux/index/store/Store;??
??$Store must be provided to the engine?java/util/Objects?requireNonNull8(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;??
??cd	?
getShardId+()Lcom/groupbyinc/flux/index/shard/ShardId;??
??^_	?getAllocationId()Ljava/lang/String;??
??`X	?ef	?getIndexSettings+()Lcom/groupbyinc/flux/index/IndexSettings;??
??'com/groupbyinc/flux/index/IndexSettings?getSettings0()Lcom/groupbyinc/flux/common/settings/Settings;??
??java/lang/String?*com/groupbyinc/flux/common/logging/Loggers?	getLogger?(Ljava/lang/Class;Lcom/groupbyinc/flux/common/settings/Settings;Lcom/groupbyinc/flux/index/shard/ShardId;[Ljava/lang/String;)Lorg/apache/logging/log4j/Logger;??
??ab	?getEventListener9()Lcom/groupbyinc/flux/index/engine/Engine$EventListener;??
??kl	?this)Lcom/groupbyinc/flux/index/engine/Engine;guardedRamBytesUsed>(Lcom/groupbyinc/flux/common/apache/lucene/util/Accountable;)J9com/groupbyinc/flux/common/apache/lucene/util/Accountable?ramBytesUsed????a;Lcom/groupbyinc/flux/common/apache/lucene/util/Accountable;
segmentReader{(Lcom/groupbyinc/flux/common/apache/lucene/index/LeafReader;)Lcom/groupbyinc/flux/common/apache/lucene/index/SegmentReader;(Lcom/groupbyinc/flux/common/apache/lucene/index/LeafReader;)ZgetSegmentInfoD()Lcom/groupbyinc/flux/common/apache/lucene/index/SegmentCommitInfo;
?@com/groupbyinc/flux/common/apache/lucene/index/SegmentCommitInfo!infoAjava/util/ListCcontains(Ljava/lang/Object;)ZEFDGjava/lang/AssertionErrorIUnknown source K(Ljava/lang/Object;)V{M
JNequalsPF
?Qdiagnostics5Ljava/util/Map;Ljava/util/Map;newSearcher?(Ljava/lang/String;Lcom/groupbyinc/flux/common/apache/lucene/search/IndexSearcher;Lcom/groupbyinc/flux/common/apache/lucene/search/SearcherManager;)Lcom/groupbyinc/flux/index/engine/Engine$Searcher;/com/groupbyinc/flux/index/engine/EngineSearcherX?(Ljava/lang/String;Lcom/groupbyinc/flux/common/apache/lucene/search/IndexSearcher;Lcom/groupbyinc/flux/common/apache/lucene/search/SearcherManager;Lcom/groupbyinc/flux/index/store/Store;Lorg/apache/logging/log4j/Logger;)V{Z
Y[searcher?Lcom/groupbyinc/flux/common/apache/lucene/search/IndexSearcher;managerALcom/groupbyinc/flux/common/apache/lucene/search/SearcherManager;config1()Lcom/groupbyinc/flux/index/engine/EngineConfig;getLastCommittedSegmentInfos?()Lcom/groupbyinc/flux/common/apache/lucene/index/SegmentInfos;
getMergeStats.()Lcom/groupbyinc/flux/index/merge/MergeStats;*com/groupbyinc/flux/index/merge/MergeStatsg
h~getHistoryUUIDgetIndexThrottleTimeInMillisisThrottled()Zindexf(Lcom/groupbyinc/flux/index/engine/Engine$Index;)Lcom/groupbyinc/flux/index/engine/Engine$IndexResult;java/io/IOExceptionpdeleteh(Lcom/groupbyinc/flux/index/engine/Engine$Delete;)Lcom/groupbyinc/flux/index/engine/Engine$DeleteResult;noOpd(Lcom/groupbyinc/flux/index/engine/Engine$NoOp;)Lcom/groupbyinc/flux/index/engine/Engine$NoOpResult;	syncFlush?(Ljava/lang/String;Lcom/groupbyinc/flux/index/engine/Engine$CommitId;)Lcom/groupbyinc/flux/index/engine/Engine$SyncedFlushResult;0com/groupbyinc/flux/index/engine/EngineExceptionxgetFromSearcher(Lcom/groupbyinc/flux/index/engine/Engine$Get;Ljava/util/function/Function;)Lcom/groupbyinc/flux/index/engine/Engine$GetResult;java/lang/Exception|1java/util/function/Functionapply?2??>()Lcom/groupbyinc/flux/common/apache/lucene/index/IndexReader;?
$?uid7()Lcom/groupbyinc/flux/common/apache/lucene/index/Term;??
?loadDocIdAndVersion?(Lcom/groupbyinc/flux/common/apache/lucene/index/IndexReader;Lcom/groupbyinc/flux/common/apache/lucene/index/Term;)Lcom/groupbyinc/flux/common/lucene/uid/VersionsAndSeqNoResolver$DocIdAndVersion;??
C?+com/groupbyinc/flux/common/lease/Releasable?,com/groupbyinc/flux/common/lease/Releasables?closeWhileHandlingException1([Lcom/groupbyinc/flux/common/lease/Releasable;)V??
??Couldn't resolve version?f(Lcom/groupbyinc/flux/index/shard/ShardId;Ljava/lang/String;Ljava/lang/Throwable;[Ljava/lang/Object;)V{?
y?versionType)()Lcom/groupbyinc/flux/index/VersionType;??
?version?x	A???
?%com/groupbyinc/flux/index/VersionType?isVersionConflictForReads(JJ)Z??
??close??
???com/groupbyinc/flux/index/engine/VersionConflictEngineException?type??
?id??
?explainConflictForReads(JJ)Ljava/lang/String;??
??b(Lcom/groupbyinc/flux/index/shard/ShardId;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V{?
???(Lcom/groupbyinc/flux/index/engine/Engine$Searcher;Lcom/groupbyinc/flux/common/lucene/uid/VersionsAndSeqNoResolver$DocIdAndVersion;)V{?
?
NOT_EXISTS3Lcom/groupbyinc/flux/index/engine/Engine$GetResult;??	?docIdAndVersionPLcom/groupbyinc/flux/common/lucene/uid/VersionsAndSeqNoResolver$DocIdAndVersion;eLjava/lang/Exception;-Lcom/groupbyinc/flux/index/engine/Engine$Get;searcherFactorycLjava/util/function/Function;Ljava/util/function/Function;2Lcom/groupbyinc/flux/index/engine/Engine$Searcher;acquireSearcherF(Ljava/lang/String;)Lcom/groupbyinc/flux/index/engine/Engine$Searcher;Ecom/groupbyinc/flux/common/apache/lucene/store/AlreadyClosedException?%com/groupbyinc/flux/index/store/Store?incRef?}
??getSearcherManagerC()Lcom/groupbyinc/flux/common/apache/lucene/search/SearcherManager;??
??com/groupbyinc/flux/common/apache/lucene/search/SearcherManager?acquire()Ljava/lang/Object;??
??=com/groupbyinc/flux/common/apache/lucene/search/IndexSearcher?VW
?release?M
??decRef?}
??java/lang/Throwable?
ensureOpen?}
?"java/lang/invoke/LambdaMetafactory?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;??
????lambda$acquireSearcher$0&(Ljava/lang/String;)Ljava/lang/Object;??
??<(Ljava/lang/String;)Lorg/apache/logging/log4j/util/Supplier;1??org/apache/logging/log4j/Logger?error@(Lorg/apache/logging/log4j/util/Supplier;Ljava/lang/Throwable;)V#failed to acquire searcher, source retValexGLcom/groupbyinc/flux/common/apache/lucene/store/AlreadyClosedException;successgetTranslog/()Lcom/groupbyinc/flux/index/translog/Translog;1m
?
 engine is closed1?
?*(Ljava/lang/String;Ljava/lang/Throwable;)V{
?commitStats0()Lcom/groupbyinc/flux/index/engine/CommitStats;,com/groupbyinc/flux/index/engine/CommitStatscd
@(Lcom/groupbyinc/flux/common/apache/lucene/index/SegmentInfos;)V{
seqNoService:()Lcom/groupbyinc/flux/index/seqno/SequenceNumbersService;readLastCommittedSegmentInfos?(Lcom/groupbyinc/flux/common/apache/lucene/search/SearcherManager;Lcom/groupbyinc/flux/index/store/Store;)Lcom/groupbyinc/flux/common/apache/lucene/index/SegmentInfos;getIndexReader#?
?$>com/groupbyinc/flux/common/apache/lucene/index/DirectoryReader&getIndexCommit>()Lcom/groupbyinc/flux/common/apache/lucene/index/IndexCommit;()
'*(com/groupbyinc/flux/common/lucene/Lucene,readSegmentInfos{(Lcom/groupbyinc/flux/common/apache/lucene/index/IndexCommit;)Lcom/groupbyinc/flux/common/apache/lucene/index/SegmentInfos;./
-0readLastCommittedSegmentsInfo2d
?3
addSuppressed(Ljava/lang/Throwable;)V56
q7latestCommitLcom/groupbyinc/flux/common/apache/lucene/index/SegmentReader;BLcom/groupbyinc/flux/common/apache/lucene/index/LeafReaderContext;stats0Lcom/groupbyinc/flux/index/engine/SegmentsStats;includeSegmentFileSizes!java/nio/file/NoSuchFileException?java/io/FileNotFoundException?getUseCompoundFile?m
(?getCodec9()Lcom/groupbyinc/flux/common/apache/lucene/codecs/Codec;??
??5com/groupbyinc/flux/common/apache/lucene/codecs/Codec?compoundFormatB()Lcom/groupbyinc/flux/common/apache/lucene/codecs/CompoundFormat;??
??	directory<()Lcom/groupbyinc/flux/common/apache/lucene/store/Directory;??
??8com/groupbyinc/flux/common/apache/lucene/store/IOContext?READ:Lcom/groupbyinc/flux/common/apache/lucene/store/IOContext;??	??>com/groupbyinc/flux/common/apache/lucene/codecs/CompoundFormat?getCompoundReader?(Lcom/groupbyinc/flux/common/apache/lucene/store/Directory;Lcom/groupbyinc/flux/common/apache/lucene/index/SegmentInfo;Lcom/groupbyinc/flux/common/apache/lucene/store/IOContext;)Lcom/groupbyinc/flux/common/apache/lucene/store/Directory;??
??8com/groupbyinc/flux/common/apache/lucene/store/Directory?lambda$getSegmentFileSizes$1?(Lcom/groupbyinc/flux/common/apache/lucene/index/SegmentReader;Lcom/groupbyinc/flux/common/apache/lucene/index/SegmentCommitInfo;)Ljava/lang/Object;??
???(Lcom/groupbyinc/flux/common/apache/lucene/index/SegmentReader;Lcom/groupbyinc/flux/common/apache/lucene/index/SegmentCommitInfo;)Lorg/apache/logging/log4j/util/Supplier;1??warn??of7()Lcom/groupbyinc/flux/common/collect/ImmutableOpenMap;??
H?
J~listAll()[Ljava/lang/String;??
??lambda$getSegmentFileSizes$2N(Lcom/groupbyinc/flux/common/apache/lucene/store/Directory;)Ljava/lang/Object;??
??d(Lcom/groupbyinc/flux/common/apache/lucene/store/Directory;)Lorg/apache/logging/log4j/util/Supplier;1??files()Ljava/util/Collection;??
"?java/util/Collection?toArray(([Ljava/lang/Object;)[Ljava/lang/Object;????[Ljava/lang/String;?lambda$getSegmentFileSizes$3R(Lcom/groupbyinc/flux/common/apache/lucene/index/SegmentReader;)Ljava/lang/Object;??
??h(Lcom/groupbyinc/flux/common/apache/lucene/index/SegmentReader;)Lorg/apache/logging/log4j/util/Supplier;1??builder?()Lcom/groupbyinc/flux/common/collect/ImmutableOpenMap$Builder;??
H?=com/groupbyinc/flux/common/apache/lucene/index/IndexFileNames?getExtension&(Ljava/lang/String;)Ljava/lang/String;??
??
fileLength(Ljava/lang/String;)J
?lambda$getSegmentFileSizes$4`(Lcom/groupbyinc/flux/common/apache/lucene/store/Directory;Ljava/lang/String;)Ljava/lang/Object;
v(Lcom/groupbyinc/flux/common/apache/lucene/store/Directory;Ljava/lang/String;)Lorg/apache/logging/log4j/util/Supplier;1
lambda$getSegmentFileSizes$5

java/lang/LongvalueOf(J)Ljava/lang/Long;
put8(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
F
??lambda$getSegmentFileSizes$6?
?build"?
F#finalDirectory:Lcom/groupbyinc/flux/common/apache/lucene/store/Directory;	extensionlengthfilesegmentCommitInfoBLcom/groupbyinc/flux/common/apache/lucene/index/SegmentCommitInfo;useCompoundFilemapaLcom/groupbyinc/flux/common/collect/ImmutableOpenMap$Builder;=Lcom/groupbyinc/flux/common/collect/ImmutableOpenMap$Builder;addVersionMapMemoryInBytes0j
E1addIndexWriterMemoryInBytes3j
E4getIndexBufferRAMBytesUsedk(Lcom/groupbyinc/flux/common/apache/lucene/index/SegmentInfos;Z)[Lcom/groupbyinc/flux/index/engine/Segment;java/util/HashMap8
9~segments;name=X	(>containsKey@F0A(com/groupbyinc/flux/index/engine/SegmentC
DsearchFz	DG9com/groupbyinc/flux/common/apache/lucene/index/LeafReaderInumDocs()IKL
JMdocCountIOP	DQnumDeletedDocsSL
JTdelDocCountVP	DW
getVersion9()Lcom/groupbyinc/flux/common/apache/lucene/util/Version;YZ
([7Lcom/groupbyinc/flux/common/apache/lucene/util/Version;?]	D^java/lang/Boolean`(Z)Ljava/lang/Boolean;b
accompoundLjava/lang/Boolean;ef	DgsizeInBytesi?
"jix	Dl;com/groupbyinc/flux/common/apache/lucene/index/SegmentInfosnlambda$getSegmentInfo$7V(Lcom/groupbyinc/flux/common/apache/lucene/index/SegmentCommitInfo;)Ljava/lang/Object;pq
rsl(Lcom/groupbyinc/flux/common/apache/lucene/index/SegmentCommitInfo;)Lorg/apache/logging/log4j/util/Supplier;1uvtracexy
memoryInBytes{x	D|getIndexSort8()Lcom/groupbyinc/flux/common/apache/lucene/search/Sort;~
(?segmentSort6Lcom/groupbyinc/flux/common/apache/lucene/search/Sort;??	D?root?:com/groupbyinc/flux/common/apache/lucene/util/Accountables?namedAccountable?(Ljava/lang/String;Lcom/groupbyinc/flux/common/apache/lucene/util/Accountable;)Lcom/groupbyinc/flux/common/apache/lucene/util/Accountable;??
??ramTree??	D?0
oO	committed?z	D?maxDoc?L
(?getDelCount?L
"?lambda$getSegmentInfo$8?q
??vvalues??0?size?L??+[Lcom/groupbyinc/flux/index/engine/Segment;?,(Lcom/groupbyinc/flux/index/engine/Engine;)V{?
??sort,([Ljava/lang/Object;Ljava/util/Comparator;)V??
>?segment*Lcom/groupbyinc/flux/index/engine/Segment;infos=Lcom/groupbyinc/flux/common/apache/lucene/index/SegmentInfos;lastCommittedSegmentInfosverboseMLjava/util/Map;segmentsArr(Z)Ljava/util/List;
refreshNeeded	tryIncRef?m
??isSearcherCurrent?m
??!failed to access searcher manager??
failEngine*(Ljava/lang/String;Ljava/lang/Exception;)V??
?refresh%Lcom/groupbyinc/flux/common/Nullable;writeIndexingBuffer6(ZZ)Lcom/groupbyinc/flux/index/engine/Engine$CommitId;4()Lcom/groupbyinc/flux/index/engine/Engine$CommitId;trimTranslogrollTranslogGeneration
forceMerge(ZIZZZ)V??
?acquireIndexCommit;(Z)Lcom/groupbyinc/flux/index/engine/Engine$IndexCommitRef;tryLock?m
??lambda$failEngine$9??
??	?set?M
??engine failed on: [?closeNoLock:(Ljava/lang/String;Ljava/util/concurrent/CountDownLatch;)V??
?lambda$failEngine$10??
??
?isCorruptionException(Ljava/lang/Throwable;)Z??
-?failed engine (reason: [?])?$com/groupbyinc/flux/ExceptionsHelper?unwrapCorruption,(Ljava/lang/Throwable;)Ljava/io/IOException;??
??
qmarkStoreCorrupted(Ljava/io/IOException;)V??
??Couldn't mark store corrupted??onFailedEngine?'
}7failEngine threw exceptionlambda$failEngine$11?
	
?debug
innerreasonfailuremaybeFailEngine*(Ljava/lang/String;Ljava/lang/Exception;)Zcorrupt file (source: [
flushAndClose#flushAndClose now acquire writeLockx=()Lcom/groupbyinc/flux/common/util/concurrent/ReleasableLock;?
?$flushAndClose now acquired writeLockIflushing shard on close - this might take some time to sync files to disk!
#9?
%.engine already closed - skipping flushAndClose'
?
??awaitPendingClose+}
,lockclose now acquiring writeLock/close acquired writeLock1api3java/lang/InterruptedException5await7}
?8java/lang/Thread:
currentThread()Ljava/lang/Thread;<=
;>	interrupt@}
;A Ljava/lang/InterruptedException;onSettingsChangedgetLastWriteNanosactivateThrottlingdeactivateThrottling"restoreLocalCheckpointFromTranslog
fillSeqNoGaps(J)IrecoverFromTranslog+()Lcom/groupbyinc/flux/index/engine/Engine;isRecovering5org/apache/logging/log4j/message/ParameterizedMessageNUtried to fail engine but could not acquire lock - engine should be failed by now [{}]P'(Ljava/lang/String;Ljava/lang/Object;)V{R
OSfailed engine [{}]UAtried to fail engine but engine is already failed. ignoring. [{}]Wfailed to get size for [{}]Y4Error when closing compound reader on Directory [{}][/Error when trying to query fileLength [{}] [{}]]9(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V{_
O`4Tried to query fileLength but file is gone [{}] [{}]bDCouldn't list Directory from SegmentReader [{}] and SegmentInfo [{}]d,Couldn't list Compound Reader Directory [{}]fPError when opening compound reader for Directory [{}] and SegmentCommitInfo [{}]h%failed to acquire searcher, source {}jjava/lang/ClassmdesiredAssertionStatusom
np
ConstantValue	SignatureCodeLocalVariableTableLineNumberTable
StackMapTableLocalVariableTypeTable
Exceptions?(Lcom/groupbyinc/flux/index/engine/Engine$Get;Ljava/util/function/Function;)Lcom/groupbyinc/flux/index/engine/Engine$GetResult;?(Lcom/groupbyinc/flux/common/apache/lucene/index/SegmentReader;)Lcom/groupbyinc/flux/common/collect/ImmutableOpenMap;?(Z)Ljava/util/List;RuntimeVisibleAnnotations"RuntimeVisibleParameterAnnotationsBootstrapMethods
SourceFileInnerClasses!WXrZ[Xr]^_`XabcdefghijklmnopqrsrtusvDwxyzC{|t,?*?*??Y????*??Y????*??Y????*?MY????*??Y*????????*??Y*????????*??Y????*????+?????W*+??*+?ŵ?*+?˵?*+????*+?Ӷ?+???۸??*+???u????cdvN~ijl'm2nDoVpa|hr?w????????????????tH
*?	?*???u
??v???w??t?B*???*???*???*??L+?????Y?Y??*?????uBv????? ?wt?g*?? ?&?,L+.?4??M?6?A??Y8SY:SY?
????*???D?W?b?s?????????w"??$}?!A?Fyysz1{yysz??t	?=*?϶?*??N-????:*+-??:=:?	-???
*?϶??:?	-???N-?N*??*??+??-??yY*?ǻY??+??-????:?
*?϶??'??A?	1N??NN?	1Q}?NQ}	1????uR!?@_`7]^O	R9?????-X?
zvZ??	!#'
+15<?
ENOQRVf??wk?1???$$
??????????B}y??	??yy?}to4*????,??Y?Y?*?Ƕ??*???????u4??v
 3"w3t6?Y*???u??v& !"t=E*????M,?%?'?+N-?1:*,???N+?4:*,???:-?8?:*,???!q"(0q;!(;0=;u>9:2	;<"?<E=`Eef=]^v6
023=3!4"7(=-708298:;=w>?!???q????qq?
????yq>?tP
*??*A?CMN?EY?F:,???L?P:?U???X?Z:?]?:
?^?b?f?h?l?p?h?s?w?h?z?~?h?????h?????h???*??????x*??:,?-?,???:-???,???:N?:,?-?,???:	-	???,???????????????????u>Eh??;r?????]????zvVEFGH;IEJPK]LjMwN?O?P?R?T?V?W?X?Y?X?F?Ywp?%$?ER????$?EE?
?$??G??	$???
??t?kM+? N-?&??6?7*??????+??-?&????M? :*??+-?????հ+??M?6?,??JY?ֿ?',??:?M:,:*???????հ+? ???۹???:?:*??+?????հ??::?66		?q	2:

?:	7,
?7?8:,:*??
????:,:*??
???	?????W?	????%,?!,??:,:*???!???$?.1qeknq???q??????????qGKNqu?3?<k??s%&p?<?????<?%&??<
%&
?<?Z'X?W(x?a)X
S%&P?<k??k??i?&d*+[,z??????-/x??-.v?/]^_`b.g1c3dEfIiNl`oeqkwnrpsst?v?z?~?{?|?}????????????????????
?
?!?(?+?8?>?G?K?N?P?S?e?w??1??"qMqWq???
??"?F??"
??"?F???q[q	??Oqs{??tG+	?2+	?5?u????v??
?6?7t^&*??9Y?:N*}34>}+_34_>U__a_u>?
?<?<????X?v?!T
UWX+v2Y3]J`lb|h?j?m?k?l?o?p?b?h?jmkl&o4v;w>q?rHtUv\w_vny~{wc3K???}?}?jq
M??G?}?q?
I}?	}??}?~	?t}*,??$*?Y??+???,????u *??*-X*??v?&?(?w(????}t??*?????*???*???LM*?? ?*??"?$*?&W?N*??(?$*?)?:*?)?+?F,?+?*?;N,-???2+?*?+N-M-?:+?,?+?*?:,???+?*?*?-?8=@?,MTTVTeil? ]|? ]?????|??u A	?.r???vF*
+, -,/81=4@2A3M6Q7T6]8|,?8?:?;wL?@???F?N?F?D??????
?yq?}tJ?*????w*??0?$*???LM*??2?$*4*????+?F,?+?*?;N,-???2+?*?+N-M-?:+?,?+?*?:,???+?*?*?-??CF? 7V? 7[eil?V][u`.r???v*
?
@A B,C7DVA[D~F?GwA?F???F?D??????
?yq+}tk*???9?
L???B?
6u?C??vKN
LMOwJ6D}t+?u??v?E?t/*???u??v?F}G}H}yqIJyqKLyqMmt,?u??v?
?t6?OYQ*?T?uXvy
??t6?OYV*?T?uXvb
??t6?OYX*?T?uXvX
?qt<?OYZ*?&???T?u#+v?
pqt<?OYZ*?&???T?u#+v?
?t6?OY\*?T?u%&v?

tA
?OY^*+?a?u
%&
)Xv?
tA
?OYc*+?a?u
%&
)Xv?
??t:?OYe**? ?a?u??v|
??t6?OYg*?T?u%&vu
??tD?OYi*??+?a?u??*+vd
??t6?OYk*?T?u-Xvl}t4?q???6?v_w@z??????????????????	?????? ???t???????????????????	
	
							!"	$%	'(	*+@-.	01	34	67	9:<=?ACD	FHI	KMN	PMQ	SUV




© 2015 - 2024 Weber Informatics LLC | Privacy Policy