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

com.groupbyinc.flux.env.NodeEnvironment.class Maven / Gradle / Ivy

There is a newer version: 59
Show newest version
????3?'com/groupbyinc/flux/env/NodeEnvironment6com/groupbyinc/flux/common/component/AbstractComponentjava/io/CloseableNodeEnvironment.java9com/groupbyinc/flux/env/NodeEnvironment$InternalShardLockInternalShardLock0com/groupbyinc/flux/env/NodeEnvironment$NodePathNodePath)com/groupbyinc/flux/env/NodeEnvironment$1*com/groupbyinc/flux/monitor/fs/FsInfo$Path%com/groupbyinc/flux/monitor/fs/FsInfoPathEcom/groupbyinc/flux/common/google/common/collect/ImmutableSet$Builder=com/groupbyinc/flux/common/google/common/collect/ImmutableSetBuilder+com/groupbyinc/flux/monitor/jvm/JvmInfo$Mem'com/groupbyinc/flux/monitor/jvm/JvmInfoMem	nodePaths3[Lcom/groupbyinc/flux/env/NodeEnvironment$NodePath;sharedDataPathLjava/nio/file/Path;locks6[Lcom/groupbyinc/flux/common/apache/lucene/store/Lock;	addNodeIdZlocalNodeIdIclosed+Ljava/util/concurrent/atomic/AtomicBoolean;
shardLocksLjava/util/Map;uLjava/util/Map;ADD_NODE_ID_TO_CUSTOM_PATHLjava/lang/String;node.add_id_to_custom_path0)SETTING_ENABLE_LUCENE_SEGMENT_INFOS_TRACE&node.enable_lucene_segment_infos_trace3NODES_FOLDERnodes6INDICES_FOLDERindices9NODE_LOCK_FILENAME	node.lock<$assertionsDisabledV(Lcom/groupbyinc/flux/common/settings/Settings;Lcom/groupbyinc/flux/env/Environment;)Vjava/io/IOExceptionA*Lcom/groupbyinc/flux/common/inject/Inject;.Lcom/groupbyinc/flux/common/SuppressForbidden;reasonSystem.out.*Hcom/groupbyinc/flux/common/apache/lucene/store/LockObtainFailedExceptionGjava/lang/ThrowableI1(Lcom/groupbyinc/flux/common/settings/Settings;)V?K
L)java/util/concurrent/atomic/AtomicBooleanN(Z)V?P
OQ)*	Sjava/util/HashMapU()V?W
VX+,	Zjava/lang/Boolean\valueOf(Z)Ljava/lang/Boolean;^_
]`,com/groupbyinc/flux/common/settings/SettingsbgetAsBoolean:(Ljava/lang/String;Ljava/lang/Boolean;)Ljava/lang/Boolean;de
cfbooleanValue()Zhi
]j%&	l.com/groupbyinc/flux/cluster/node/DiscoveryNodennodeRequiresLocalStorage1(Lcom/groupbyinc/flux/common/settings/Settings;)Zpq
or 	t!"	v#$	x'(	z#com/groupbyinc/flux/env/Environment|dataWithClusterFiles()[Ljava/nio/file/Path;~
}?3com/groupbyinc/flux/common/apache/lucene/store/Lock?sharedDataFile()Ljava/nio/file/Path;??
}?node.max_local_storage_nodes?java/lang/Integer?(I)Ljava/lang/Integer;^?
??getAsInt:(Ljava/lang/String;Ljava/lang/Integer;)Ljava/lang/Integer;??
c?intValue()I??
?? $java/nio/file/Path?resolve((Ljava/lang/String;)Ljava/nio/file/Path;????toString(I)Ljava/lang/String;??
??%java/nio/file/attribute/FileAttribute?java/nio/file/Files?createDirectoriesR(Ljava/nio/file/Path;[Ljava/nio/file/attribute/FileAttribute;)Ljava/nio/file/Path;??
??Bcom/groupbyinc/flux/common/apache/lucene/store/NativeFSLockFactory?INSTANCEDLcom/groupbyinc/flux/common/apache/lucene/store/NativeFSLockFactory;??	??:com/groupbyinc/flux/common/apache/lucene/store/FSDirectory?open?(Ljava/nio/file/Path;Lcom/groupbyinc/flux/common/apache/lucene/store/LockFactory;)Lcom/groupbyinc/flux/common/apache/lucene/store/FSDirectory;??
??logger-Lcom/groupbyinc/flux/common/logging/ESLogger;??	?obtaining node lock on {} ...?java/lang/Object?toAbsolutePath????+com/groupbyinc/flux/common/logging/ESLogger?trace((Ljava/lang/String;[Ljava/lang/Object;)V????8com/groupbyinc/flux/common/apache/lucene/store/Directory?
obtainLockI(Ljava/lang/String;)Lcom/groupbyinc/flux/common/apache/lucene/store/Lock;??
??<(Ljava/nio/file/Path;Lcom/groupbyinc/flux/env/Environment;)V??
? failed to obtain node lock on {}?releaseAndNullLocks9([Lcom/groupbyinc/flux/common/apache/lucene/store/Lock;)V??
?close?W
??
addSuppressed(Ljava/lang/Throwable;)V??
J?=(Ljava/lang/String;Ljava/lang/Throwable;[Ljava/lang/Object;)V????java/lang/StringBuilder?
?Xfailed to obtain lock on ?append-(Ljava/lang/String;)Ljava/lang/StringBuilder;??
??-(Ljava/lang/Object;)Ljava/lang/StringBuilder;??
??()Ljava/lang/String;??
??*(Ljava/lang/String;Ljava/lang/Throwable;)V??
B?java/lang/IllegalStateException?AFailed to obtain node lock, is the following location writable?: ?java/util/Arrays?'([Ljava/lang/Object;)Ljava/lang/String;??
??
??isDebugEnabled?i??,using node location [{}], local_node_id [{}]debug??maybeLogPathDetailsW
maybeLogHeapDetailsW
	maybeWarnFileDescriptorsW
java/lang/SystemoutLjava/io/PrintStream;	;com/groupbyinc/flux/common/apache/lucene/index/SegmentInfos
setInfoStream(Ljava/io/PrintStream;)V
exJLcom/groupbyinc/flux/common/apache/lucene/store/LockObtainFailedException;	luceneDir:Lcom/groupbyinc/flux/common/apache/lucene/store/Directory;eLjava/io/IOException;dirdirIndexpossibleLockIdthis)Lcom/groupbyinc/flux/env/NodeEnvironment;settings.Lcom/groupbyinc/flux/common/settings/Settings;environment%Lcom/groupbyinc/flux/env/Environment;
lastExceptionmaxLocalStorageNodes5com/groupbyinc/flux/common/apache/lucene/util/IOUtils+closeWhileHandlingException([Ljava/io/Closeable;)V-.
,/inode data locations details:2(Ljava/lang/String;)V?4
?5(C)Ljava/lang/StringBuilder;?7
?8 -> :path<"	=spinsLjava/lang/Boolean;?@	AunknownCpossiblyEnoGjava/lang/StringI&com/groupbyinc/flux/monitor/fs/FsProbeK	getFSInfo`(Lcom/groupbyinc/flux/env/NodeEnvironment$NodePath;)Lcom/groupbyinc/flux/monitor/fs/FsInfo$Path;MN
LO, free_space [QgetFree1()Lcom/groupbyinc/flux/common/unit/ByteSizeValue;ST
U], usable_space [WgetAvailableYT
Z], total_space [\getTotal^T
_], spins? [a
], mount [cgetMounte?
f	], type [hgetTypej?
k
isInfoEnabledmi?n
Xjava/util/HashSetq
rX
java/util/Settcontains(Ljava/lang/Object;)Zvwuxaddzwu{getSpins()Ljava/lang/Boolean;}~
/(Lcom/groupbyinc/flux/monitor/fs/FsInfo$Path;)Vz?
?java/util/Locale?ROOTLjava/util/Locale;??	??husing [%d] data paths, mounts [%s], net usable_space [%s], net total_space [%s], spins? [%s], types [%s]?*(Ljava/util/Collection;)Ljava/lang/String;??
?formatK(Ljava/util/Locale;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;??
J?info????	spinsDescfsPath,Lcom/groupbyinc/flux/monitor/fs/FsInfo$Path;nodePath2Lcom/groupbyinc/flux/env/NodeEnvironment$NodePath;sbLjava/lang/StringBuilder;typemount	totFSPathallTypes#Ljava/util/Set;Ljava/util/Set;allSpins	allMountsjvmInfo+()Lcom/groupbyinc/flux/monitor/jvm/JvmInfo;??
?getMem/()Lcom/groupbyinc/flux/monitor/jvm/JvmInfo$Mem;??
?
getHeapMax?T
?useCompressedOops??
?8heap size [{}], compressed ordinary object pointers [{}]?)Lcom/groupbyinc/flux/monitor/jvm/JvmInfo;maxHeapSize/Lcom/groupbyinc/flux/common/unit/ByteSizeValue;0com/groupbyinc/flux/monitor/process/ProcessProbe?getInstance4()Lcom/groupbyinc/flux/monitor/process/ProcessProbe;??
??getMaxFileDescriptorCount()J??
??????????hmax file descriptors [{}] for elasticsearch process likely too low, consider increasing to at least [{}]?java/lang/Long?(J)Ljava/lang/Long;^?
??warn????maxFileDescriptorCountJfileDescriptorCountThresholdjava/util/Collection?iterator()Ljava/util/Iterator;????java/util/Iterator?hasNext?i??next()Ljava/lang/Object;????length??
??, ?itemitems*Ljava/util/Collection;Ljava/util/Collection;bdeleteShardDirectorySafeZ(Lcom/groupbyinc/flux/index/shard/ShardId;Lcom/groupbyinc/flux/common/settings/Settings;)V>&	?EMPTY?&	c?java/lang/AssertionError?
?XavailableShardPaths@(Lcom/groupbyinc/flux/index/shard/ShardId;)[Ljava/nio/file/Path;??
?(deleting shard {} directory, paths: [{}]?	shardLockN(Lcom/groupbyinc/flux/index/shard/ShardId;)Lcom/groupbyinc/flux/env/ShardLock;??
?deleteShardDirectoryUnderLockT(Lcom/groupbyinc/flux/env/ShardLock;Lcom/groupbyinc/flux/common/settings/Settings;)V?
!com/groupbyinc/flux/env/ShardLock
?'com/groupbyinc/flux/index/shard/ShardId[Ljava/nio/file/Path;lock#Lcom/groupbyinc/flux/env/ShardLock;shardId)Lcom/groupbyinc/flux/index/shard/ShardId;
indexSettingspathsacquireFSLockForPathsF(Lcom/groupbyinc/flux/common/settings/Settings;[Ljava/nio/file/Path;)V;[Lcom/groupbyinc/flux/common/apache/lucene/store/Directory;index@com/groupbyinc/flux/common/apache/lucene/store/SimpleFSDirectory2com/groupbyinc/flux/index/store/FsDirectoryServicebuildLockFactoryl(Lcom/groupbyinc/flux/common/settings/Settings;)Lcom/groupbyinc/flux/common/apache/lucene/store/LockFactory;
S(Ljava/nio/file/Path;Lcom/groupbyinc/flux/common/apache/lucene/store/LockFactory;)V?

write.lock!!unable to acquire write.lock for #
H5p
shardPathsdirs
getShardId+()Lcom/groupbyinc/flux/index/shard/ShardId;)*
+
isShardLocked,(Lcom/groupbyinc/flux/index/shard/ShardId;)Z-.
/shard 1 is not locked3(Ljava/lang/Object;)V?5
?6#acquiring locks for {}, paths: [{}]8
:rm([Ljava/nio/file/Path;)V<=
,>hasCustomDataPath@q
AresolveCustomLocationm(Lcom/groupbyinc/flux/common/settings/Settings;Lcom/groupbyinc/flux/index/shard/ShardId;)Ljava/nio/file/Path;CD
E(acquiring lock for {}, custom path: [{}]G'deleting custom shard {} directory [{}]I'deleted shard {} directory, paths: [{}]K-com/groupbyinc/flux/common/io/FileSystemUtilsMexists([Ljava/nio/file/Path;)ZOP
NQcustomLocationO(Lcom/groupbyinc/flux/index/shard/ShardId;J)Lcom/groupbyinc/flux/env/ShardLock;?T
UiddeleteIndexDirectorySafeS(Lcom/groupbyinc/flux/index/Index;JLcom/groupbyinc/flux/common/settings/Settings;)VlockAllForIndexb(Lcom/groupbyinc/flux/index/Index;Lcom/groupbyinc/flux/common/settings/Settings;J)Ljava/util/List;Z[
\deleteIndexDirectoryUnderLockR(Lcom/groupbyinc/flux/index/Index;Lcom/groupbyinc/flux/common/settings/Settings;)V^_
`(Ljava/lang/Iterable;)V-b
,ccom/groupbyinc/flux/index/Indexejava/util/Listg!Lcom/groupbyinc/flux/index/Index;
lockTimeoutMS5Ljava/util/List;Ljava/util/List;
indexPaths8(Lcom/groupbyinc/flux/index/Index;)[Ljava/nio/file/Path;mn
o,deleting index {} directory, paths({}): [{}]qnames?
ftV(Lcom/groupbyinc/flux/common/settings/Settings;Ljava/lang/String;)Ljava/nio/file/Path;Cv
w'deleting custom index {} directory [{}]yindex.number_of_shards{"java/lang/IllegalArgumentException}5settings must contain a non-null > 0 number of shards
~5&locking all shards for index {} - [{}]?java/util/ArrayList?(I)V??
??nanoTime??
?)com/groupbyinc/flux/common/unit/TimeValue?
nsecToMSec(J)J??
??java/lang/Math?max(JJ)J??
??%(Lcom/groupbyinc/flux/index/Index;I)V??
?h{&unable to lock all shards for index {}?
timeoutLeftMS	numShardsLjava/lang/Integer;allLockssuccessstartTimeNS.acquiring node shardlock on [{}], timeout [{}]?
java/util/Map?containsKey?w??get&(Ljava/lang/Object;)Ljava/lang/Object;????incWaitCount?W
	?U(Lcom/groupbyinc/flux/env/NodeEnvironment;Lcom/groupbyinc/flux/index/shard/ShardId;)V??
	?put8(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;????acquire(J)V??
	?
access$000>(Lcom/groupbyinc/flux/env/NodeEnvironment$InternalShardLock;)V??
	?(successfully acquired shardlock for [{}]??(Lcom/groupbyinc/flux/env/NodeEnvironment;Lcom/groupbyinc/flux/index/shard/ShardId;Lcom/groupbyinc/flux/env/NodeEnvironment$InternalShardLock;Lcom/groupbyinc/flux/index/shard/ShardId;)V??
?;Lcom/groupbyinc/flux/env/NodeEnvironment$InternalShardLock;acquiredlockedShards()Ljava/util/Set;builderI()Lcom/groupbyinc/flux/common/google/common/collect/ImmutableSet$Builder;??
?keySet????addAll](Ljava/lang/Iterable;)Lcom/groupbyinc/flux/common/google/common/collect/ImmutableSet$Builder;??
?buildA()Lcom/groupbyinc/flux/common/google/common/collect/ImmutableSet;??
?rLcom/groupbyinc/flux/common/google/common/collect/ImmutableSet$Builder;GLcom/groupbyinc/flux/common/google/common/collect/ImmutableSet$Builder;hasNodeFile
nodeDataPathsassertEnvIsLocked?i
?.node is not configured to store local location?
?55()[Lcom/groupbyinc/flux/env/NodeEnvironment$NodePath;indicesPath?"	??
??(Lcom/groupbyinc/flux/index/shard/ShardId;)Ljava/nio/file/Path;??
?shardLocationsfindAllIndices5com/groupbyinc/flux/common/google/common/collect/Sets?
newHashSet()Ljava/util/HashSet;??
??java/nio/file/LinkOption?isDirectory2(Ljava/nio/file/Path;[Ljava/nio/file/LinkOption;)Z??
??newDirectoryStream5(Ljava/nio/file/Path;)Ljava/nio/file/DirectoryStream;??
??java/nio/file/DirectoryStream???getFileName??????stream5Ljava/nio/file/DirectoryStream;Ljava/nio/file/DirectoryStream;indicesLocationfindAllShardIds2(Lcom/groupbyinc/flux/index/Index;)Ljava/util/Set;equalsw
J
findAllShardsForIndex%(Ljava/nio/file/Path;)Ljava/util/Set;
(Ljava/util/Collection;)Z?u	indexPathindexStreamlocationshardIds:Ljava/util/Set;	indexName8com/groupbyinc/flux/common/google/common/primitives/IntstryParse'(Ljava/lang/String;)Ljava/lang/Integer;
 (Ljava/lang/String;I)V?"
#	shardPathcurrentIndex
compareAndSet(ZZ)Z'(
O)releasing lock [{}]+
??failed to release lock [{}].5Lcom/groupbyinc/flux/common/apache/lucene/store/Lock;?i
O1ensureValid3W
?4lock assertion failed6???8ensureAtomicMoveSupported-java/nio/file/AtomicMoveNotSupportedException; is not a directory=
__es__.tmp?
createFileA?
?B__es__.finalDjava/nio/file/CopyOptionF java/nio/file/StandardCopyOptionHATOMIC_MOVE"Ljava/nio/file/StandardCopyOption;JK	ILmoveY(Ljava/nio/file/Path;Ljava/nio/file/Path;[Ljava/nio/file/CopyOption;)Ljava/nio/file/Path;NO
?PdeleteIfExists(Ljava/nio/file/Path;)ZRS
?T8atomic_move is not supported by the filesystem on path [V>] atomic_move is required for elasticsearch to work correctly.X/Ljava/nio/file/AtomicMoveNotSupportedException;srctargetgetSettings0()Lcom/groupbyinc/flux/common/settings/Settings;%&	_index.data_patha&(Ljava/lang/String;)Ljava/lang/String;?c
cdD(Lcom/groupbyinc/flux/common/settings/Settings;)Ljava/nio/file/Path;+no custom index.data_path setting availableg
customDataDirCf
j#()Lcom/groupbyinc/flux/index/Index;l
mW?
oshardStatePathToDataPath*(Ljava/nio/file/Path;)Ljava/nio/file/Path;getNameCounts??tgetName(I)Ljava/nio/file/Path;vw?xparseInt(Ljava/lang/String;)Iz{
?|	getParent~??count
access$100X(Lcom/groupbyinc/flux/env/NodeEnvironment;)Lcom/groupbyinc/flux/common/logging/ESLogger;x0
access$200:(Lcom/groupbyinc/flux/env/NodeEnvironment;)Ljava/util/Map;
access$300
access$400java/lang/Class?desiredAssertionStatus?i
??	Signature
ConstantValueCodeLocalVariableTableLineNumberTable
StackMapTable
ExceptionsRuntimeVisibleAnnotationsRuntimeInvisibleAnnotationsLocalVariableTypeTable>(Ljava/util/Collection;)Ljava/lang/String;?(Lcom/groupbyinc/flux/index/Index;Lcom/groupbyinc/flux/common/settings/Settings;J)Ljava/util/List;<()Ljava/util/Set;%()Ljava/util/Set;](Lcom/groupbyinc/flux/index/Index;)Ljava/util/Set;P(Ljava/nio/file/Path;)Ljava/util/Set;
SourceFileInnerClasses!
 !"#$%&'()*+,?-./?12/?45/?78/?:;/?=>&'?@?N~*+?M*?OY?R?T*?VY?Y?[*+1?a?g?k?m+?s?*?u*?w*?y*?{?,????N-???:*,???w6:+?2??????66?z6		,????],??	27??????:

????W
????::*?????Y
??S??	=??S-	?Y
,??S6?I:
*?????Y
??S?????!??٧:?ݧ?٧??U??٧H:

?ݧ<?٧4:

:
?:?!??٧:?ݧ????L:*?????Y
??S???BY??Y????
???????:?֧	?	???2??	????2?&??Y??Y?????,??????????*?{*?y*-?u*?????*????Y-SY??S?*?*?
*?
+4?a?g?k?	???	???H#(+JINQJ?eJ?nz?Jepn?<?B???B???D
???G?: "
?d!(	z~"(~#$~%&~'(R, Y%#$d'(g)w*(??8????-?4?9?>?C?H?I?R?Y?a?d?g?w?????????????????????????e?n??????????????????????????"?(?.?3???[?_?c?g?w?}????Ic}?0	c}??B?	?t
c}??B??JH?1c}??B??JHJ?QJGJHJ?c}??B??JJJ?c}??B?BB?H?	?)8!?B?C?DEsF
???~&<*?? *2??Y*2S?0*S?????#1(&#$??????%??
??	W?Z
?*???????Y3?6L*?uM,?>6??,2:+
?9;???>????W?B?D:??B?k?F:?H:?P:+R???V??X???[??]???`??b????d???g??i???l??]?9W???P*??+??????*???o??Y?pL?rY?sM?rY?sN?rY?s:*?u:?66??2:?P:		?g:

?y?`
?|W	?l:?,?|W	??:?-D?|W?"?k?-F?|W?
-H?|W+	?????x*???????Y*?u???SYSY+?[SY+?`SY-??SY,??S?????????U?/h?/p_?/wX??.??????]L?/r7?@9p??	@i?/
2w?????????
???????#$? ???
????????6???.?H?P?X?c?k?p?w??????????????????????????	

2
9@LV]bkrw??????"?$?&?'?(?)?"?+???"???5?J?d???:uuu??Fuuu?JJ?]	?uuu???F?BW??*??L+????M+??N*?????Y,SY-S????**#$&?????/?./01)2W??:????@”???>???!*?????Y??SY??S???? :#$3??&?(?*
5679:;)=0>4;9@?
??(
???????Y??L*??M,???%,???JN+??+??W+-??W???+??? "?/???7???????CD"E)F1H7I:J?????!J???????	???,????Y???*+??N*?????Y+SY-S??*+??::*,??U???H:?ݧ<??4::?:?!???:?ݧ???NSVJ=DjJ=Ds??Jjus?4:a
?#$?
?&??&	UVW3X=YDZjXsZ?[?]	?@c	JJGJHJ?c	JJJ?c	?B??u?+???M+???N6+??X+2??:-?Y*?? S,-2"??S?":?HY??Y??$?????%?????,?0-?0?:,?0-?0??5CFBkvvxv?HH$A&"\1(?&?'~#$x(?Befhj$l5oCsFpHqehkvowsxvv|w?y?1???6c	??B??JJ?B??????,????Y???+?,N??-*-?0?%??Y??Y??2??-??4???7?*-??:*??9??Y-SYS??,?;??,?B?V*,-?F:*??H??Y-SYS??,??YS?;*??J??Y-SYS????YS??*??L??Y-SYS?????R???Y?????>?KS"?#$?
?&?
Q??B???J?Q?j?p?u?|?????????????????4??	.?B-.?l*+	?V??M?
B? #$W
??	????KBXY??:??????Y???*+ ?]:*+?a?d?
:?d?? '//1/?4:#$:i:j?:& #l? #k??? ?'?,?/?9???fchJ	?B^_??w??,????Y???*+?pN*??r??Y+SY-???SY-S??-??,?B?3*,+?u?x:*??z??Y+SYS????YS????4Q%S"w#$wiw&\m?&	???;???F?Q?j?v??	?`	?BZ[?-?,|??:?????~Y????*?????Y+SYS????Y????:6??76

???2	!??e??e??7*?Y+
???V??W?
???6?B*?????Y+S???d?&:
?*?????Y+S???d
??Q??????f
o??T91(
?#$?i?%&?j?
???I??lL??&Q????I??k?N?
??"?;?I?L?Q?^?o????????????????????b??
?1	fc?h?8cJ?fc?hJ?fc?h?B?????;*+	?V??#$W
???B?T?	?*?????Y+SY ??S??*?[Y:?*?[+???*?[+???	:??6??	Y*+??:*?[+??W6ç:???+6 ??6????:????*?????Y+S???Y*++?Ű#hkkpk{??????f
???G?&U??e?&{%?&?#$?W
?j?sN??sN?&?R#0
?DJUbesx{??????!?"?f?J??	??J?	?	J?J?	?B????#*?[YL¸?M,*?[???Զ?+ðN+?-?!???##$????/012???J??'??/*?{??#$?k?i?I*?u?*?y????#$?o?@???S??*?ߚ??Y???*?u?
*?y???Y??*?u???L=+??+*?u2?>S????+?? 91(S#$7?"wx#y.{7|?}K|Q?
?
	???t3??*?ߚ??Y???*?u?
*?y???Y??*?u??3#$???#?.??
mn??F??*?ߚ??Y???*?u???M>*?u??,*?u2??+?u??S????,??* $1(F#$Fi(m????)?>?D??
?
	?#????>??*?ߚ??Y???*??M,???N6,??-,2+??S????-??4#1(>#$>
$  ????? ?*?6?<???
?	????z
*?u?
*?y???Y?⿲?*?ߚ??Y?????L*?uM,?>6??,2:??:????????::?:		???1	????:

?????+
???|W????]???N:		?ݧB??8:		:	?:?%???:?ݧ
?????4+????Jf??Jf?????J????>?"
c?P?	"I???#$2?9??c?2?9??F???.?2?I?P?\?f?????????????????
?u??1
u???J?4?SJIJHJ?u???JJJ?u???B??
??*??+???Y???*?u?
*?y???Y?⿲?*?ߚ??Y?????M+?uN*?u:?66??2:??:????????:	:
	?:???1????:-????,??W???	?]
?	??N:
?ݧB	??8::
?:
	?%
?	??:
?ݧ
	?
????2,????J???J???	J????R?"?	l?"e???*#$*iD??I?/??	D??N?? ?+?@?D?I?e?l?x???????????????"?(???
?fuJ??3fuJ???J?4?SJIJHJ?fuJ???JJJ?fuJ???B??
?ٻrY?sL*??????*??MN*??:,?:???M????:?????2???!:??Y???$:+?|W???,?S-?,??F:-?ݧ;,??2:N?:	,?!-?,??:
-
?ݧ	,?	?+????J??J?????J????Hw	W
b?E;%"'\&/??"??????>????'?E?Q?b?g?w????????????[?/?u?JJ??P?PJ
HJGJ?
?u?JJJ
??u?B???W??d*?T?*?Z*?y?S*?yL+?=>?D+2:*??,??YS???-?:*??/??YS???????'ADB? F'6
0d#$?&	??'?<?A?D?F?]?c??%???&??B???i??K*?T?2?B*?y?;*?yL+?=>?,+2:?5?:*??7???9??????%*-B? /%
0K#$?&	%*	-/ACI?%?????B??:W??
?*??L+M,?>6??,2:??2?>?????#??Y??Y???>??>???7??>@??:???CW?>E??:?GY?MS?QW?UW?UW?>:??Y??Y??W???>??Y??????:	?UW?UW	????8?v??<v??????>?(Z]u["v\\"????#$? ?BN]gv?#?$?%???#?$??'?B?
???@?H?????!A6B=CTE_H?? J
Cv?J*+?k,???? #$&/?UCD?W*+,?n?u?x,?p?????? #$&
?a	qr??^*?u




© 2015 - 2025 Weber Informatics LLC | Privacy Policy