tomcat6-javadoc-0:6.0.24-111.el6_9$>$OeZ}.67>8?d$ ( Z  ( # /0 F8  ݎX|(#8,x9 x:)xG]DHtLITXY\0]8^cb5d5e5f5l5t5uLvc wdx{Ctomcat6-javadoc6.0.24111.el6_9Javadoc generated documentation for Apache TomcatJavadoc generated documentation for Apache Tomcat.Yc1bl.rdu2.centos.orghCentOSASL 2.0CentOS BuildSystem Documentationhttp://tomcat.apache.org/linuxnoarchM L fB o#0@;=9a*< a11 $pC$D p+egi:4Y>I(GW;ei,E(Or1hSB[&\BL< gi`#~ViQ]FFNYQ0NGG%NNHN5NCu'{uK\hkrmz.c1 D9!hUbqtJWaZ)a>d M2hC=.LIkE5gJim -'l*,A@?L.)K 0LU1-:b(ŭxHa7 ,2369?F:633^ 75@Bb~86@/BP]q* 5%cCCU\!*<?84O(u"F&my( `)2ZLWevK%)6$HJ p!"?:$0ӣj]+uJlL|HbUA '5=#>38z$eV!%$?1*[O0}:Cc?0Ho;R=r`e"~'*/bT5BN"F"FJMfB0T)xY;yz@gFn-<KC<Z3* R20XeU9(1}80b-f# 5""$RN6PbF"?_#/,=TUX"c&!bd0vju%. >/&uN5u'.R,64]2Dl/D:,s+,MM.).2! 3G-O,'' F<4M;~.?H4DO69Sn6 .949$5972;H8)B(9MAR@:336O"]2?6H6$@&/,JQC3U&*/>H0mm>-x#U'(-&J=&ti8;4~#/*~`F]Xf(_?L2gl3-]1qO/. D'$c$ 5:,"OH((=2-6,82lQw KK&SvmFa:]%M"C+3;bpW?6<sMGrgwW"TBIkW?L~+uj# !t#A8b'D$0_7O}-#{t.(6(E:=6D;)K`.5'21^5$xSWBJ,XDg[b3ej!'D)) 5eW;O`.)*G]n)*v<yq!'dCYu%706#*|+*z#*2+D+3IuV8BV[VyMM0M,! M'321Yl:=0`,:xW.AXLLLVK[W_ 81-A8({, $Rz]BWBn@FFR7B@REBtBH(V2BCE^GBCIiBBhB}FEBEB=BwJBe$eFE|Zfg8WT9P;J5=r8u%9;} (~ج_T2 rA1,r6i'(&U0{3?4(.K_$hϣ2F62>5)'c%Au1g)&*FP-~7E65|'L$ "=_##$G=%t a [<+T9 %2B4!JǕՀ;6>B4 E'P%"6&\=J`[;NG'!((((H(~((W(m((~(G(C' N*L}8QeD0Md bT# jJdIE <v:(!q<t#'+X.)1A[NHjwlu1ZB:!'MeD-HfHXu%|74$GW|;:QA vQw"$\25qP8N| #5yc;J(8%6Y5 5Gt9#2<5?%Q<^/+?'4y-|''+80s&i)&h3H2U *# 5(a-N'3hi.6"186]MB9/6+BD $(&B/,sG)$?,B@:d2EU93Qo>eN_!Zaou[=C,x-9\72O0(b%xNRr'=4)  JCGCB3F$/@-zCBi.0 O1$(*E"4AGW9Nw !14>1GlR ?[G%k~Ƕ/K p)/G(i;So*9<=e^NdFD^]Y8%o/u${([>1^3fq1|O!DBj>Wn&N.+*.)*R 6n&<'e)(A)7\^9[1X-Fl>N^5FJ84;-!#BK/9<<EI;g)9ub' M %C7'p<C/. )*p@z:!6%C).:/<L$EpZ%C7-f6+a/:+4"6c;n:'{}5F&Ak"_6P4/NI62|*4\)6Ir|9j^e9E!A8"L"O*&"!XEBu.{hAxL 2 #)Q+A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY7bd0e147125bd9d2e9a4153b39f9b3d8c00a34c056238fe18e0a593836e2ba1d07dd49a060ab0966b85069bb9e45d10821380fbd9f418b96541540b07f0d3dadd9b496817fa398f2d631a2d28d808fe6c70dae9879b1be8c6d1e9420abdd2c849fe02e66aefb00599d820053ac0d0a256aee5965667a05f8d74d7cf33e6f13597ef265772a8eec90a1d3ad0a2575661723f8f7d3eba9ad43c3f2a9c3f34a5e21fd3f5272650ecbc30061528daed2c4ef286b15f4bdb68dd3c7eadd28a5ea295003140f650de8796735ede8a60456f79110c7370f824babddf2caa0f1442dc6c6ecc0994fda38a9f431e63878d9a51f37362f5851be46a4a53a021966cd86b97e801c7d809c543f5c16937a52fbd1231533f4b9dd2737434e77f36fdc1da66cb250510b6401dbd5187b94122bd6559e4f4e36e10dea1592e5cd6c224bef518047abea2fb074869a8bdc3ed2ec0326a7f5f84efed66056ac172acb6d571cda98a3596f4c27a3b1d674b9583dae1b0c937879b35231743dd5e4327c04b0db7b47dc13e1d3ec747f37b9d8455bf7d888608633bdfb7eb8bc04b463ea31b4bd451bed1304a2e72a5c059d12c269de453596e73152b972309b38dcf1a0d3303d77b7b6d4d98cd133bab9de473fd72d5e81154abc4fa596aaf400421ef7040c49e4f61d4e13f981f69a36658799df0f09cc9c67577725ea6d1cbfdc9e12b894a8bf7298e59a7b97f5cbbc3c17ac8a98989e98666938c8ec932cc4515a8e2d839bb6c60a88e0e22bbf6dd32eab2984570162d0720a07140d1933a56a1fd03ef104decc4a177e2307a01dcd38b47fb19962c140a51fe36aa8f4addf7dd4d0009f49c36ce405545cbcf1a391c1923ad47435b2b95a0db2c4b6a37352e5f1c828442673d27b0824c6910229201d60105515c402e4be58d30b2b43497f2652822f9b935ffcda645a426f3ed50a86793d0f6202a9f93165acb9bab37f4b61407d45eb9872af07822c82d5654fbb528a805daf6ebae4544a5e9f0171939002bc049e682238780191518370f552e7f775e8360bf8cd5242b6c8fecd9fb1b3caa031da982abc7e3fe1fec91ef0b8a86193a1dcdda7b83ec4b9635cccd677a82b8689107ce5145a1cdb6591d613a762a5851162c35856048daf02699bc4957181e5f2c24976b2ff57b591cb0121b1d41cfd62b7c1baf7c9a82aae382fe82ace582a8421c6e03fd95dc92ce6f8a1692f1807342f3214405ab66c1e32ee624f5eb83abcd6f5437532a7878aeb7851272836895bb367027d8104a0d79afbe5f7d8177fb9bbf94fabf6acc820a18be52d93a3bad735e83b7d0f2132ab585b57caa5386ebb6eda4b5c37dc591ad04502120835ebb98a304f0a2ed98e2aed4f41bc71f0c66953389f970dbc3ac97f49b06a3e591b87fa56ab5eba55febd3bd27ed21fee38d8aeef0cf4d94ab39dcf6d57ecc20376a6181871f683ef81efab48f807be30a277dffb47fb294b3b08ae9045eca422ecbfd9ed207a8c447f52a99127d1b978d85a7edf18099cea267ded1997fb39e73fbffa3224f20e3249dea266294d67c8a973906f7caef0b8876df3d7b71511b5ed9b957b55054045cb66613f2f9ee15a0f11b68896a02f903f7b1622dec6059fb8d76e93e8db84e59dc6b975d255bcdb965dbad361531d891133231c4624d8630f54d341435771647a0cbc1d7e3d93392a17807d6df1369fb7046ad04e992f5cb2866cc3fef568c955b52ee9b70a6d6bb2a36d9374f1e9b9b485a98cce82d111ae8d5c8cb7b6957c423215673fd5d77aaf2bab194c9b0865835853e208550b1dd3db9f737fae2d3d5bf041732c98958ccd5ecf1883a9f5c447789bb74419d82e36804b4ca9b7f82c58927fa1b2f257537900255e59c0d203605ceb0047a3ec8a41b73b99b4bcbd4a687fbbae3055fe82987c35da81e1ca58a1148891613a12cd8e2caae2dd741d93069d3030e583f2f4a85f0b56e4b415f165c88a297c999e2f6c27ec9baa161447c7fd1d312a48567e1263c2c3f566b0841d27dfd050d9a40a79d0c5572ac3d4d5474f007590e72c33bdb79b61f98d07c5d759c5bc73136e6a12ece4d75fb0cc44dc2ac2cfe2ce8160875e4866fceed044ac2f4df1dc63020e7cee690b675690aa269473d2787cd82e10c651d35b9a922bcad973c077248f536a6128abf6999e83c87957ce6e758f947b0ba9598347408833debef457b0fb6f69f36a4d37d12bf7d56988e1c0f0cbfa318030bad7dc60fecb7da29afb4b9b8fdc89b72147cdaa60ffae592b9bc409fdbe9efd755088fd05753050fad8c3e6ed971ee26898b5f0e0571e361a1f5a124505a5a11df77a9d7ee226f5d7fdb1a6452525fbecac71c355d394028479e21a930fc27a4a183a9037c846ef7beb1376d3948b07a66be893910f0db796c95fa4433039979afb6ecc771da5444177a50bae17cfac45122230e0f7b60de363d8b05799224c5d3da1ef874d301b4644faef76557b90e29badaae3c33158e7e52515e86462c309bc0369bdbfe7e710766bb25b030e3181ed6df380d6eb0544d7cf7734aff1bcd989780f6840e5e56a10defa1f81f8eeb5be4a9237b144e17bfc94e891a0ede866a196e3ec39cf5f05eaae5d2254247b9f92fb9481372c272f3b2f078a66f2b85982434a91769a3f8b2a3ba5a7f6e1a6cd975718ef02ffc4ff5e612faf2a59a6b2bc71b88365c234704c69905f10ba249895bf367b865b02b219f5f23f5de21d7beb45fdcbf30d29f0c0a034a68604e87fb7f6b07f124aa127a9cf23f56e1dedc6b79cb1d5a017e32a1dfa5b5c4071cdf1d5f7b544f3c19fb84933b548df3c7b27e47a314efa4dd951ed7bd9a355f72b829934fda484912fa8ead782e1035e98fdaf17e7cae8a7fb2174d242eb3d2f1ac84a7918d3195da9f89f11abd419b9218a447396e7abbfaa4933e4f7cedc6939c158a004bf101954b02d1012f5bd0cad4bfb51803d6df914c320f42801df28991481b094c1de1e27c11ed7b4cb984c2403747eb52925241a51495ad18af1bd09bea6177fabe1465e53e9fa70d8f73560b35183ad81d91d1b29a76c61d25a691400a2ed218f871ed2b6cc22a79e760f4d314d3fabb9902ca19bc2f3b4e604d17436460ded602b229fcbf15d319c9acc841e2821f1d84ed8e6d347d36934b3b4c935199cd31aa32e394df8d83f6383592e289b84dad418e2c779ef62c2c1527e0e7d03ad6f4badc81733fc0d255ab0f14c853dc7f535921a927a54e7417ce1210a488886f0a7e39cd44984a217e6d57aedabe125ab729b2c9b0bfbf1151e807d0c1dc12931978208c79bb9697680d9a8c5e5c33f52fa89d3320b76286f38d5c4fd8eb747cb23c375069a8757569e2626c57170fc63c69afd5661409406fca203c45a9494488c922ce04b0c69de0ac338e54092a5a3189d10b5422faa270105d1cb97e496acc615391f4c63c79e4899599d8a170b77cbb9a010b627cf4eaf6a40878bb4e924110f1e7cb16e51c11779b67ef2044f91bc3e94582f1019f54556ed520257ca9ed5d71abf38b552493da4db6d825605e0a75685dc558814f7e913ab3be9bfbad5fe5a0cdbab6e9f1616129469a4c28e9eeaa00d0f67c6f13f7cbcb04535cf053fcaf10ebbe16574758849d73b56c57080a21b614e03fe225d4b4603a1c0fdd46ab8ec32351efd9caa25860d29a61c23186218e7b305ef06c225099fd4beda0d8252c6c1d1c0661e612515a233b793901d570f46a5bdbb0e93d69583aec41d574609b488d97de810d9115aeefa0ec0c609560e6f57ecdcc46cbca9663b02f6201413b93bb9c5a27b67983874ab464a90e7663a74b1369dfd243cd8f529b7c5a1e9081f66e8697ac6628d49799346a7524a8888f9be3d6295e7404007fcaca077e21a5de2a017c60f48503bc2cea737bcc2d050dab7efe89b175afab1e9dcdbf2a06e35de7ec8fc67b9f974636b2209c123b6f63cfea174f715d3a0e433dfdcaec04f1cd2ec3a00057ad4778927f3d820890bfe8a45d586aa504c9d0ea3f512a6d49e4d38f6246e6ba967362ca901c83db585e65d6da5a640e8c349b8f7ef53f8c8606a32ec50a1da9190bf24b203ff371c62a1da81bb230db71fb7a92ffb1325fab0c87b778e35c33b13d7309d245912bb9faf38e3979ce4109fe6459e4a0e00623f54f4f011e0d4109d995ec814f6b133feebb412838672406411f20b0205cf192c909efcdb57f82e6df05c71114b7bca9a86f491dbea08ada30a627a36bf5e36f2b5d65a4b852fff9769049a5d55918e3ed66e8637e0a1376c3f12b4a16c1b0fdcba0f6375256514bc23c098646ad4fc7d89c99029050acb8e24f2c4d484fb88a6522a3ed737ceccb8f116f3844719f1321899e097a449eb35d49652d49cac42a1ebffc3dfc68f47224677bf0546e0d2a13fd2b39e57843f98692dd15ae95249ab3f460ae76aea63a3d319588bdc6a0b4c11e207c06024489cf585c9ccb829f544bed848af61eae102693dcb9eb82f334718fd106bbebd834a0126b1ac0354f21353a6b63ef2af881f1d169698ccaa3af80389d66d5e563e1aa5b55c7d961485c07f7e5471c672536e6d16a83f6de2a2065ae4abd6322c712f92de18043e31c8326b169a06f4a09d565e34ab1b62131155a64f247d4342d67003b01140ef053b13d7e932f4c1c203fdfd8ca6be71eb65c58543af27b02c717d4f6768a4a0684cec7e0306d449950e211abe88b0248713b78ea4965fc24f5edc3db7816179d2ebdac60c8a7c930c0efb5532bacd8f796503fbb8d95bf5b169aac141dbebc754c5fc8e5f983884c1de54c5d110daf40de720f9a57ade915b46f8e33db6412babcfdc91e306291bc8242d2088ad1e9f353bfa0495e76ddc3854c979073053ed46412198a8a2cdf28ad5b6a5a5b5e0b2deda69ed61a28ccc720b423d417e08cbadb4600fb24616e8071bf7458dad28d820f09e17e06497c230fa4d0c02d257c89a0f257e8f567c7d20446e0e92f7a8a162b75b2805ea76e17d41de8fecb090c2ed167d704afb8612c69ef4ea710608dd318804c8ca86af2a5a1ea05e0b8c7a27f88b9b8906348e4188dc94d2064077a1b977366069ec30d7620479cd90653f0b75f87b6e7e6b94009a194ca284740385db3dd19318d76db4cf3a9d5af24c7b4713b3de68a7deef27782c42f9b2fb85496c5d85c689f17a0835ea54c7c0d1807b69695ef9f42f61df4bb955b4dcc869b12b7c2efe546d6cea1a2d169867602bfb0c7c4fd911ae96bddfc35c0b8272e173eb5e666be91a8dc058eec518c9049dc443677e5db14c18a973c0ddf9762e2fee125b7cfea5cc5c843faa7d02d3a267d80f093013677dc8e4f8195fe9e13b7aeb9840bf2646780cc167dbf24188f6a5c4e95da3f02edc43bc1d8394c6725d157274b03ba8a618da4b65f60044a38a7104c99e603a5968841d329330a1b5eaf8f6fac121f3681b62cbaae361cf6a5719405532629e418cc0396dd0151fb6a5d46812d54345c9cdd739258ad09503ac228a7cb0d0bf6eac96ab453c88024f6afd660a6c7891eef6424f828a3c57aeb75c63178d5f670f7f30480e156297a4ca8ad34c635eaf70df6bf48a96e223ccee289993ad0f9f214340baa43817592383ad2817a95979b7264996c8c2f6bb8da1afdb11353f2983057e84ca1d12a35bbde5a80c3869744d9c0860a145d68cfa62fecf3c2c5f896e7d236869b79168f129b5617d201480a10b01493ad112403987c2c97b67c38464929152a4b6270208fde355c40544d2c7408e9d1216cdcec71aa90f659c2ac8164416d916382723577d9b1a3cc50c7181f41a3c584e4c3ac2bc811f5067da5bf82712d8db6a770f6f190a8c272f5cc393469ced7f4f8ff83b540ab4de441568c8fa51a7291cc9eea8b541a35bf25cb6396c30ac4a7c42e3292528a8c901c41955c26bf78910a84c7860ea82725cc60f7fd94f4fc46aedb52fb6ba65c343110d7f48cc9647d787e08270bcbec2301b97bbaba7d6d57b0163c023445e8c856ff8fd834ef75477151b280fb3abb7e383d5b783399aec70ec54ecce44a25afbec3e7e2c49136a5fe42789384e73175090095580ac41c5d91bdbac98fe0532438692cd9bc36f2dc4b21901f3fd32e22e5f8f9e5678cae0f8678bc1c1171e388f2fc32e4e698e5612580b0ed0121aef3d490647876cef84192e5bd8000450bf46e82d31c27676334c92229e02156f17a1eac945f66233fe9788d5ca738b0d91a1f48957925d3f6a630b547e575bcb1632207ab27d90a85c0f265d7882d68cc7b84e3e44a7c3d56501edc483f29f5d3d5bf8dbc062ebc9c8a8f60ea4d65c7a43d388a636026c5240f54a4b1a83342de6106bec7d736f6acb97820a493053e25d13a35a62aeb91305924412dd939acd6cbf4e1ecd78832f36cdf1bf230e48a2c69df2a8c109bba0358054d2e91be7f1bab4ef43fc1b53affa63ea5eeca1f75e76c7c6189b695942451b5604ea3692fae743b8435ad6e45e53894e3df09efc4505988b2f18ffe7baf639c6dd13bdfe960d875570ea2ced7e10bf7f9895aeeeb47eaf556c55d389faf5d2bffb924bdacb3eca0c140b89df8009df209504a88685dab8dcdd3a1ef8b6023e0b3cf0334534194c6d1ce948aa4c9a8ba86a087bd841d2186e2fc970ab686e92e474bdde3c9ed102b7e8d6da3bc3daad35dcb2b9f8919e4ec119dc4330e61cdfd162761340b1e18c789c42ff5d627bfea6e991208c2eeccafa58382223ccf46acef4aafd61db0f36f6c6ca0fb4f832b4e0ab82d29442a3584991cdd62e1e32a8a9a759441f6d8e50fb85d25e4bcc2c6ad16afb4b191216939db1db313cf0f1d7d3b7a4a8160fa6cd843970e4388b0c21abb9dfa32f43e48f6a3fe699f8b8fe966cfd5f678518a440e30e5a95e11a2ab64fd222b4bad333943ec821f130f9fd23ca7a589d73e244036f86fd824ad8699af36f9761949aa51cc0e7919b995c72719edde2ec95bc52df58097ab5c6c5f121478de39186daf1403a0b344f343b4a2aec618c301fb6fc54d42e486e0a0bba1c500563553be975c1831fbd2c67bc533b588b6d41ed4effc66353c62fd68c9cd573e367886f21edc95d752830bda850887a0861018424b8c38e06458d94fbbe46e388e6438af0103751b915031650708ddfd274e5fc642f83ba6457df7d12635705b7bba478d3117fd0363e36d103b51ad8af73a960c70a6fe6119e4890c86a7e6f8d187f6ba76018fc483b8157cc284ac3de9f3d467c8b279798c03a9d429a2cf4984a7490f1c537fe1d55d1936957e8a10a8d571f8453d1bf0d61496b588b857c100a8364ce093068737f6557d5ecfdd5869822998fa0217510fcc3f52a37904ff200ed191e582ceaead59a3971080473880b417e83a4f1c103478c50dc160ca278349adcd4ec90d54460b8321ba600dc9e0334dc490398ebd79f728d965d6729caae8220304bc65e3d25e9c5d901e97a5ace3d0e5bbe9a2901fddbe006b58d3c35e12272333df5be1a88f8793124471db9ddaeca597dbecb03a21580cb13bd7fc2f7da57aadcc0f8a18d77403aa958b2566cc6372aa0f6d52b3e1d026ee6ba2809b7a4d2709bf4acab19e89cd5ede7e024d6619c70b435d8ef3248b0d082b0aa984e5d603f8e1baf31838c4f793e94538c166b0ba92219f964d59893570a3e75e2055261d9f53d440f017b7f6457b8b679f0706a41ea6b01fe5ecc63d6eca51bca153804a190c130a1f496e438b15f3c7ce95224d4e64e41378295b783c9d4fbc385bf5ad9f1a2bac6923d062f81d64ec21341d17030a4f127d5708b3426b1cb549a2ad41a6ea2ff8b902d724cf029e0f56ed7a9c79f192a490fe237dd2afea5545d227ebb3e932e483c48d59b99c879abeff92db2c68df3b13f9b656dcf375a8bc9334e42f6b9f3a4c3876a9fd9953deac38f7dc25c88631156065999250209d28b231e37bd46720bf17fd2bd79fb703f8738aa9183863f83ddc3dd2f69ca2da122bae8e2734707cf60992d8c9243bc304e14820ac1f9fb2d839efac23f7f185b248f3296fea1230dce767c2cec74b18c42bcf81a54fd320681b7cb0e84e99e1407e81ac25f4f05dc4127fb9cb4b6bdda0b07f0098f4f6806a3385486114ada824a66700d620c040eea2d398bd8759f304c3057013745d1bcfc1c93a6b1b72f28278407589f08bc1e6a6a61575433d77a61526527d7dfa939756f3407c1834cdd170c07a92c31e92edf489d8d3945ad9de8a8b941d9ea394365877e1302f9a525bf16219907356300b1b68f3f8d00770dedb4cc1c97c9522f9b9951848d1047af715fe1b6f4306b014cac8f6d3e2c33af82900e5d8f0ad30e67eae5335923a267389749b6c31204fa852b07d49648f230f75af4dceaa1fe183d774fe347eb30e0beb02f93f64587c11bacbca86ebe1e984c57aaee6866af2b784530b92e2ff5b863133d69d3a6c5f702b84097b023a506fab97263715cc8ee35464d713c4004196587ba6bf35013a7b6f3f6753f7bfbdf72724b10a2655d3e6fa206df383b068e8b77a5c69a4050818cbf29e38da060311cc909749da7205afe2b68b4f910e3b58865d46d05e4bf64757f9e35e9b8a1747927d5af4f565f0732c8c63b178d265139ee183412c49804e535b6f1bc8114bb3acf721569180e1ee40c8472e95ebda6686fe782a2df0d46a6dfc294d44f127cce2699854a313cdd8d50d03d88290d858d7cd53dde8b9ebc8326f151733e539bcf611f870f2ed4a288c9fc3dc380bfdf79e55b65abdbed7dca3a4769bea17c77e4ebceedb0bd5d46bab1baf27888a722dba2f9e43a13e437ede5ba6817547057c00e768256fdc94d3a7eefeae131eb208b86041b4c5e3d0eaff2d0ad0707f6e466a5ac5782e2d353e726ca0a9c405f3d9402adae39724f8373f77efe11a1d10aed452c9d4a13bb9e643d884c9689ae292b654a1303d0e725c9419b15f468276cde8a55ed80e45c60ca22e1a2300bf42d92e3a526d1fa1a37e05441acd48991a168fbd9fb0d5ad8ad4eabda25f1619d61ddeacbdf765e50aee767da7291f0af990bb2e827e316147024f89ad51b2176c2427aa5833fdd1a577a65c369dbd12d186b0da7077eb5c263c658fa65b9e9b0bbc00f843e7af718182d3c9d34e6bfa0526a1c4c3fe9694ecd712595b87340955ce3a5c7a3ee3addaa01388a55a04aa4c99150926bb4518c007d2d85655b25427e44d129808db7b466e22aa2398bb1fe74d5494fb5615e7b13edaa7283a5a625c11ebe158324f438ddef809dd611e7ae9396aef604f374b96ce5e1fad20de304b1be6058cb3d3cdbc848296b1ad9d0105446f212d28aa51c8222a690dc6334c4fb118ce886ab54449fda214d082f11cf3d017b09cce1e23e3ab376b90011c5cc544783e3cf9f29615fe6caf2b2e8f86471b96b6013d668385620b296b9b7ef5ddab3dc085216a7a0b8d2cc6b4dd7e0f311da32dc52e9ec31a960c60a5c1e5331791b5f837187a10ad56e6975ab2ad559bb5f7e50b6b56c510a277ba5b4e5ab83ed488a155f41cca35a3895c825f318b14d627af559d469b05b7ba09553a623dae319c0940c0ed97369aa347ff07265977cd93bf33ca3e6cfe65aa4b6514f7faa0b2fb74b9d96d552d5057ebde910ad0988223e1f75de5b1d5aa85b8ad8afe625b09a9f2a60119d4229e7ca39e66becb9aa430d9e23cf4a5530a798680f8ef1ecf969329f8ec8a440d46aba9e941a447ff1bb495b56077072ff45fa3e5bfa897a62804042c14a6cdd3df337b8958cb5e3eac56e075433e2812b097b8b3e9a8e22eb6afc6e2db3fd5415430d2bcba445c320f3369cea13d8064351e672caffc4cff0236ff2f8f002847f2aa95c93e26ed30e3c72608af7070b303febf3f99d27ef8ca90fa0a74874561799948e454ffb186056a8d74b2c42b220e2e776323ad6940225fd234786f9c3ee5f7211cea47fba1347cf51be197f269bdd6aa3e6d42f514b8e410b4d0be0a1265bec8448e956f27a11cd89f0c88d366660125aad77b7d58cdd722942a5ba6cb40b33c8ebfc2b661f6cb8cab2bb561485c9076fc2d49922d3ee4cdc2411225f4729dd59ccdd09cff875cc7e2e0265e0d864ce9b6256e60d177d84af4e8f13a0f4def965b1d78b4875f3789c405cb3e2ebeede5bf1a3d463ce5ebd0b52e9404cae2bf9fcb111259b0a4605449193b70f198933e9f141ff56ed3e65fb565224f77563b972b55f932f5ccbfd0ab35606308d1500af1fb6cd12dc93bbd9dcd7cc80de4c6ad0e22c3d4815fee537676da7dceccb536fb6e02b4aedd5c2f6516b5e3ae1ad56276cbdeca4b32eb4bb870e36be5cc37754d730a039b5d973bbc10577fd49397d4e46d53110c1e8314e52280a4474d371d84fc4c3f21149764c6480e56461d928593c90b934ddf89416e44336ff5df26dbde848535f3257ffdb8fafb03b34a84aaa732d79f72e4c02fa64c8daac82bdf2e171c8fdef8813586b501b3f25cc8c27747ae1d15b1539e9f4418f39a2f2ce5fef0bedd3e4c460e72a31cdbd9c955ccbe6703f7bd9cd9f661920763d124496cc2a3f97921ecd9803d466ff1ed18ce43e65d75570fb70097e20c1f56376f1e2745ca8d92f2d181f1c1ce8b1e1cc0dc5388b2b8377be696ad0ca068f61f3b5f90deba38457832eb5d2642c78f1ee18443e627dc6141000c3ee2dfcbc53f4ce4970d8c0c01f6e78fc4b5080b49f39487497a1230e324985eb1df7f13f9564c6006f14a48e94d5e48b1fa3cb7c1cad7eb7967612c9119e37ae5b89fa2ae39f85ecb7dba1c2db0a03f13b28050429119dd03a29c3952e7305f0ad3975fc193c9a44b2606e430b8eb95ed1db5dba93d59b9f729b5d0614d5307a3ce6be6ea9b40cb15940eb4aa98bd7c116301c25df61af94033409783940ab6085c3888cc8efaed2e11a8fa17bd32ffec48c31bfdbf088688cacf902eed4d96953bab71573d662274eacb10728f7cfac149d4398e1a564ac1789ba745862027e1c8998ab770b1e03df7a963f48f6bd94c49069217bf665bfef7bff17b03e5c5599237af2720815b79a5301eea5ca013ae2419f39d53691eb5f197c9177b93786aedefc470b82facad0ac532dd06bd454528865f84fbfaf1c456e07d5163cdc64e16bbeb733b9337c345773985f75dbbba9e6114f80dca4bfce6314519acb07e9ea26231b70fb4eceb9e1a1e43449a70062648bc657e91e1ef049356b72841add9765faabe7357ead0a88bfdda59c441dc6f16ca4fbbc0bb835b251568bf3b5bcfc474c6bec4fa3bcfdb04f131e964d99f841a2589e3857d53455f1e8f7a35d5133c68f8761016bed418665e8666c047cd0158c9fbd9aff415286e0442cfe76d66899fe2f7872da34a5d91db0e17f12ae95ef300043fc5918d00c1d499d24e80c25aab2cc39e18f80f8375939c81ddb06b6353d89296a8b6b47ea1114786a22d9c5ee8fc6a22787ec7ca500378ffe279f2fef11bac7a7419b36f1980e1967902cff5e41ee735fb046ca4ccbfcd429481bf07a3cec6deda0c7f8198e2c21e85cde01f7b53c0b7a62f9a972d1a786d7a4789ab3e6a54e1eab35ae39bab5cd95d5fab42ea96d4b36b7a76950a9cf60d4f35b042060131a3e1606f4b6a19c1d3d9c8f0225fd5cfe0b66a86b95147e5ae1d225f11e468ecc4c0077c57c94a35b9fa9fc85fb55185e5240ce31cbbd3bb15b20dd70ba169dc345949c8807329bb6a9e1694fa9fbd9a1a174d37e3e26dede7f3ddd40999e35f02c5a8dd777798ff7bde6a048ec8a8664678f4244b6c188028cadf656af3b38a7121e7b5098f589e5a01f2d887aebf8b1839f073029190cd19f32189eba2d56fe679e4c93f93f449e8e28d57d8a3904654664829cb6e770939258303bb5973630654ce87659268f9d749d2c39a9addd6fabd48efced27f3439d345330cea0f5667aab8e0e684259727b4726eea2e74647138ea1a6cf69873265e7df28e63dd4518fb42e3213fb79848c74a90457f88f246046e06424a4fad9b10cd9f909c410ff321d7fe6e936f9c7ebc225213c61d1224bbcf766fb497479239b502200544936ec9c8deb3d73a17c748f05a217967ef2b3764240c8c70b38d15a935bbc0e0de9bc2d3d06a7161baae19a693e014ab1d61bf7d46256b82a8e0616df4c282423e642e9514b82a1604e517b04438b8c20528a34105629299672bdec05709bda2dba0deea1b962dc5810f47bf57afaeacadf0cd9817bb0bdd15b6f96e5b9bdf1d7a7e4540eac57221dd9afde8330cf7437ba8845ce2c9b26021f5eba9307dc808200bf557c8e7695214e126e57357d28179b0bb3a67235d8a9000e03005d71852e7219e291e03b80b1b47847800d92906d9eda2a3d95e0271abf842c7320ab8e4b6bc86a5b756b8b3587dae495637a2f4e389aa94a1950890b55eeba71640c10f6c33c3856fe62c30cfe903a0b356d3be41f3ff2336ebf4b11e231b4396d4c58d16e8971339ad93e5b15d83301e3b50082d3befc752d86ce04c8e103f251a978c8cbe6d6c65b6f20a95deaa1da7fa50152b3ebe138adfcec8560d130ff179e475ae49ba0bbf62638c3e2c7c2c5a4aa89ddb5a39c6afa9b2e69fafadd708350e2db5304c8f9fcedbf54fae620eff3f3af8415ea3e1bd35beb75a77c18f4b8477491737f116eb3ae8fa7c449f0fd56b861c305808d58e58466898c67ebf2d8d28cb981951e7629144ac47f9945031f3cc61506b0004d604906a71a107e0289358a40ace898fd00bbc63b312f8123ec1fbd7a9a3c3788a7361fda3f53f25d96b348d5a5ad8095a927f4339dcc23b80adda105e0fc4c9ffe094d0d15e86b38712df96b88ec70547fbb3e0439aa71702e706880ec324c86df5286adfcf26bcaf65bbc632563a2165ad90fc56c8a4749cbac7e887551df24503781a62518b491113b4b1608d7a72ae8c3649ceb5badd14144330be113765d659ee8cac579de35052696a04a673778870377e8350e7507a0cfb109e31ecc0589c470514141b3c26ca4396c08c24bbfc382332b83024754d77bd3963c04f1f76144549da0d1e6bb5d0c82d906708b7ec0829928d29f53ee9773841f941d45bf0a48e06f784f02499dad0293730bfe989b21db83abb17f126ca32535efed4553e863f8e1da25175ba6c35df4a9053ca70cffd41b77ae40a35164a41e19a41bec98719f38291612906a8b2d7b46fc4fed2be0676150a5c3b35002b3215994978c34ba866f7dce8d3ee7b2739f7cf7b37ae70b3728b3dc6202a88bf0ccb6213ddf5d7607dd3ae71d13cc536548b170f5498b6e4944afabcb666ce5f4de150e5e4fd1cb47469e4f53e5a966783ad96ba8c4860cc4279abdeb83338930bccdcb82a4b057855d67b06a17de8f9eb877bdd0d7a0ea146b9bd35bb1953c1cf6e58bd36a88daeeace9f0903671f68e6f0adfd60b94be9eddaedba263581a8cf5636a100ab75e0e3ecad582e696d9addfc692dbf23f5cc5fc099e4d00886dc2776646fbc287afc692783cb1410dc5a51d8fe29db46abd8d7b13be73cedcb3542a4d08e7a2bb277f7d61097332473109446a3d20a8c10e447b8ab7c2d4d4490f37c53536451dd34a9e47c220bf95448339de3cc0859cf4b66f58601823ad29137893f55b741fd1ec3b1f0f71b144947eab845da741eb1cbd004217e13bfe1136e657bf04f06be0667e0f62b16b159e5574107387aed42fe315c50559ba0fa4cacbd8cd635930b1f5d28d169923b80003bb262d3e92d5a231fa9546346e179ba71a880050ddacd942e2f5bd50d8ba7d2f3bca4ab8392258da05a629622ceef39da4ea3ce44030c3b358ac8a6433aa37551e006bf26c794b0ef713919801e5e1fe6f33f7a872be35243816840b77c6b20c2ae5030c215ae6bf3b67fe0782ef5754a4add72e6852491a9390a422c15faa853bece55c8f6a0fb56c8f3654a9aff8b5d4bb9d812112b3ef8e97874b674a776ae591c2b7ea1cc8772eb6b75cb422eae2619ab28b9054bd97c54a5d6ba5fedafb3f81594ece9503415c249f5e1bd148dcb681a66c3e7c10ed8a608f9fcea7ddab772f70cc796d0c85c7644bc1952c8fa20f0e2577d807d7a2eb142352c741a050231d97d80ce940a43275fe04184ce6f4722b31f393633bcdc4288db7fc560252886f2b4498306a2e6e0b3269af5fac022994460a6493b0487341858ed6f69c7f1c2fcda185951b43e752caa7f4466de129151212218b2ab75678873a2984e4720482e5506f6965771fe2b2522f0a9d2cdf547e2bad560561ad497828df0c51b38dab0ffe72b948c8a9afc81f7a341e992627699ebf46521972ed745c4c05e456cbac2b0f77365455ce8add33cdcda6c3666463e751987dea60dda832cd2e943765672d80d362022e954ca0774092f12f677a3b019bd6cf28fe2a41ce6f9fbf7d3eb2460f54eadaca2e9001a0b7f79a52acd535dcf48e7c13228fe0b2e53b3c9ce62e2441a736c6ac7e1f26151c72a4f9453efadb78e5fb7d12d36179da5b76b1eb1dcbdc13fb251a32a9caa817860105d6bbe2ae775850d5ba9e864ee9ce68844459f734adad69aa4f321a717ae328d56ed1edf44ddf9d4e2cda9910ec353680c745c0cc1cec90b2d161d43970665a2682472edfafac2abfada0b497be012426ced6c66593e572bc3b1be56d4c87ca56b932d26d3083a2cfc35b2bdb43e05ea57c6921047918055b4f0304528262ceece75dc05f0502091c78cbaf5381ad741d0ef79bbdb77b58e04d39411c75161bbd3fcdb4f36bef076f44b1822e8881ba1ef105b5a879b0b257f855bd4e1bca32d201077e496290856f62a616d98195f27e1f29f853d66517d17be7c2ac6eac06c36be86ac44e705969e574b3047747d319e4eb8ce48a56456b13b609ba75724eab87149f50842d2a032563d27939de7a02a4e5084f5c1df280cfb154b234e7a2551f7c8641475ac49afc3781202188357972989d5073d4962f9c42c9716ac95678d62014393ee70da1be0d1f4d4007d51020d67850b8355a3025a174996174b78af160e0ae8732f61ccb22e563bca0ff6be5ecd8f72cb228f90e2ed674283313837d05c7bb3ffb88feb6a102ec62ebb4988b73649dc11ef0dbc4c1904cff9213c31516da2e0c74c958c314c784355d093afaebe8c3c83173e2a25f035652e2fa293d36dd0721d62f0b3a275df96775ae5196f33079317becd892255d0a7480926a0ccfcd53f79fd69e291167cbf4789598321d20dd9e2a0386b423eb5bc97fffe4f74a3b33878c9380853397327f1920ef023881dcc57b52f46b1cd441240441f8815bbe9975a69e5d6a8a8b763859f185ccb2d9f99f2918f5327bf93aff1a4d5c097d61bf88c0c6f4c112a894cf1c787349c775bf5de35f26312910fac6361753959529419390331062c2ddf9c02b4c3c12b0c018bfd1f84e5bd3d2657684def06c28fcc590dcdf93a05d79d42c9c91963a8a1f063629c5acb82b081a3b06dc8d607d2820df33c6094a6093df1e6cce0249b22599f6e179e37061e65c3da42dac16ecdf983c2f85cc1b41afcba318434e4148ced754d439f94d18ac7c8aac96efa30a5bd0d6d719c65643eb404b25819dd2fe176e9b292a92f75aaded58bc13f2cd574ec5dcd64ea0884b8596551147ba5d431fd1ab2429dd2f74572cf9cc0e0a7c435c4061ff8d2869305b8f10efb6dadcf7b5bc23643cc1104c3b7745d47fa18f72c8c0311824634f5c07d8a01f480ceae9fca6637bdbe59daaa1c86f783722758f39b94bee864367c5431825f162ab7d0afef2c7410c4b2b90bf11a03696fe7d0fc023814db5d479dbec3297987a6c6da17f9464c453def9cb0ae2c9781436cb47fcc1b2fbc61432a920ec36dcc9785e7ccac2c767cdc8f78957f62eee3f18c43e9bc2eeb74a60689117c9acc48711aeb95e419780ee872be9e98bbe3eb663b8071e0ea231afbfe2dd458e8480a12bf17364cb68b207aedca1c8d1044ba42a428411382043bdc505c8dd7698b80609665eb1662fe039141e633cbe54986b8a8f6846119e816820c42c53eeb5f55bf87f26a8107576fbfc1d53126abd98dda13a480d118decf040af73ebe729ee15dbbed607dbec70cb8829be4acc4d271e6ec0d7a51368d5a3c4272fc86374ce7fd0ce56436e2d2689b95bf72b1e36207f61faa4f9d8b01e98625057479a9f78d29a0b4547d1071cdfb3fac36e48f83cbba3e9069a1325996472ae1f0d412d3f2f2967095f3453b44b6c5134650b2acb06b6ce16b9010d5a97d2ca26a6c91ab91c2f062ea490d3140638412f31ad15d26c79083ba055689e22a4680588c5d1d63a8cafec6cd5a73bb6f40719c5d11190528837c274261a91dbb88b2914d68be3cbeb4aeb6b16345baf327c97f5a0ba4ea1a13d2a74cec3244e10b619d6ed8db7b061f6ae5a32b38d0e85c7c413285590eb771b874a5dd3dbc09e42ae38f9d611e6aa499388789c446fef4011cba07a4fdcf78831823ea22ca6e47908ffd501e2330ece5b1d8e341aa4fe4ea5e330e48a3158390d35424f9737c27930a1a762d238d13bdd390c6df91ac2831c9d6c28b1d567942be2c14fe2c12a27809eff004fb9e889b7ee6ade36ad777e5dad14c693c2ba5e7cc44576b875dddfb06db9ccac71c7dee106041a9973d62d51f4f7b0098b5baf0c4633baea858efc2b083548d5297daec729c5c65fd6818703829a2bf547d547875f6990fa3eda09d6f3f3d23bbd7c062c524faf21c8f81ab4c40b0e80c6939887fea3513052419462253b1bbed8832df484f9bbd7d253ead8d7765fb9cbc410236d9d210075194279168197f4646cf5eb72051791f18c99a5f9a882788fd35835ada7caf24f29f2951d156bfd66fa0ae2272494fe5d5e9ccb66f166b48e11633b973bef782bf6e54ff31ee4b76edd5eedda5a179e3f80ab9f9ddfbe49242aff2198bd8299ad62a450b99c62ad86e4807c0fff6ac25f271a6db4064ea826b7a81dcfa4573aca56858b8ea6d54978eca9cef5c8f3dd90fb9c8cc42fa2804e05f7ce2569b838423f0c6ee9b54bb3625384641756e1e23afff01b53bdf0b95033219a57a1c7b2bb8ef03c5e1a57914f24d36efb144bdeee090c97c52e8cff9bb6722b603beb158597185176c12172f4c934ad280981c036618e4dac467e658d46eb1fd9fc87a23813958870b898044be2ef3f8d3dbd2a3684bc374b1e5742c6798529efcb92a7641b9c92e566a9cca5aeef6207ce22a35d41db79ea76601f5ee1dcaba2df8868d86264613f29723acc000522bd332b6dcf739272ab21348f42bc51f46b481c15cdc60f3a7f7bd3e741973b732c82b57cd411def85e5a85d8ab48c4dfe9b775f141cf3cdd5cc95b2821749cb3a83566243513b97afd0cd5253c669374dfcfa2fede1446e347b4d33144b65038ef8875346058522de085ddd5a04a83a09208f0674cc69a4141c1420f1bf318fca3902d6f42a0f83757faab030b1d01f8db692c194b4631270e25c00f98a18c9eade3f3f6f7e918213a4d7eb0bec6ac2d549fe0399cc12a1a2555d815a601865ed9d6f4cfa3c7a8197e559757fd10943b047449c698ac120fb2eab9611249abc1d8bf2239bb27742146280deb59a1427b9c93d287a818acfde5ba182031342d2061ef2a254b6fd4d18cb5d6d056a42f577f4de189aa4d3623d9cf5c88c69997dc8cae15f56da319456651247e9efda31c41f9453311b6eb7aa71867b590b1a38e94b82d801be1b0d18a6948f8c31c7b862e9ec7190dc8cc7089fce6a6467c3064c8e1bdd961cfb6df33782c9590c35328804791e81fe36709ec4800323eef4ffa9c8aeda32065087f2358d2731c802885930327a551a71d5861f837660f34447051d05d886cef254059b05e5353a8758e2882c6c96a3e5857311a10b61a458070e7dc925f4d63938b99b3f5ce16dc5659015d61b041e8bb1b3c7d68cdb48bbf99138ff5ced751b290903eb49faf98fae07a228822b10b187f2d11660d9ccbb854c43e73cf89480780be1e33ea32c80f690c3004937b79b1b5c2679fa38dc5e5984f6f3ce8a8a7c4d69a9e13754f6e019442b2f7645d0b3624d511657997cb69242b092c69cb85a66ded13164e6a43cd90247cd541861cde3f1a0d802e0ead41193622e616803625f0bc9f91ed3472495100c8d49203c353f51171b629417dc4feb4a899a4a44097693982eba0e0f09c5af4031b87cbc3bb7d070bfb3daa2c599be8a64afde7108df0b03dbeb4e13babe9d6c4c80e3901e27e81662072d515964fedd964681b29cea818e9a0366a73c37795a53e47b64cebf0ec17494253e50250c5193b4bd8076399a7283e16c3b2e9cf2a71bb8d49d4e1f90e6f7b55d4890b7d6ee21690742048539ee9c4aa39f0fa30118038800bd56fb6c41fffc87cdb842780910fca4328cb9cdd5b9efa3db67f447d47f7598625601cefa607ad34339e4c9fec61ac63d3d8ad590c0c17061a43e2ee6576f4ec3b76c715ef6f7dc1d517e3f12378621339af87b5c16e5cf9ee38b0c253aa630af9f3aa2bf0e76f4555f81aea94d9710aa7e41093597f8c64812951f2e94ab6a872d50672aa7c4667af03fd5d646556454203835665a180843cd3a39b71a5eadcbe7245fac4bb867f28467206f22a34e44d96538909c8bf97ded31d34d82bbf9a3c558cf3e880e54989043a920e58d1f9500718a56cc66a4d3d926069e0249627774b542c461aea45a4734d65a8265b9e2334ea66e4b1014fd598403af7b690b639fdda771ce03831cf705eef1fd4494a5e43628acfd7d905663c8cd1c1f27d880307effb051687a62a36ef0cef1aad63b75616356e0c3e5a65a73dfe8a1df111b55b0a666df813c78e1bc5d15e65390c3d07d88d636f59c960e181d31cc3d39ea090ea32b8b504ed0c72a8651ab1a9563a81643ab8cdbf37d3417d43599382e3591b4f81e1d7be80151d3a8a7bed1c8efc70b3479220b8fdae6186f6a63181a01db2e9b139e84017eb016e6bac8d722ffd47a22424c3c4afbcd49865accf2c187a408b8495fda8c2920fa49b2eb6232376409a650d90f600886fa061d1af8920377ee17f1c331aafec1d4221aeee0fa3d7da41c3831646060336ebb6938277c2b499a14c69cc6d9c63358efd2caa6d64a67e42255c84d30d7d6e3dff2cfe17de91880b104c8a3851317b6655f5f86a4084701eca3e6a30c6d24ad2b65b6cebac5fe46c5a7bc257e6480470240cc35803d24d42c8c875b44e9ea505b48d837b039e86347efb9d8a73b39380c62d1de5c44a5b1e977cdce8da0bdbf7144948572196e2f966c6845045980a98a925b56693a17dced87f26409a4569a0e41becb140adb6d8a1ed047640e9a0834a9abe02abbbd415be1b1e7223f0e795b9e746ea9b9f2662bd8b1595c41c4f44b2faa1c78309cd368369f8605f33061b91f61c2414f017e4d634b20027ea648b4257fd9120b79e0d20f708a6e641475ce27aec36f8b37adeb19b823f5be6fe9e4da64be6898a2a5ca4f3d219d8bbfdcd90015f1bf6eca67cdfd81ccf577586dbc0921bfaffe547d0f3f520736255e5f27b601beefb1544e822c40621049e277ba94d69d3a385e4afa804867f3949db1d843cc73a63e795f0881535fcc56d896f192120ce660ab5e81f886b9469813c65df5bd902a3e58058131f5a97a2b813bccc1bc9b43e4a0fec56ef579379440fd57527b251036be02343aeade6359417f3cbe7e8dc75e436f5eba8b35914566f3ac85f0362f17006b789afd91105bfa61d761a7983f9dab0c30e83652984a9b26b1b368ba97a5afcd3c0119741fd1ca621d13db40f62b97cee97aa7a30745840e2884a02e1f69d4f5a8c714a1b1cefd690ae73e55183babf88006cfef86cf43a4443d15ab5775d861b6f72da9bf7e8f35a914db0a8150d5f76ce900de81c6cde683d64a692d556840865c3833288147369e8e118df6e9cbb69eb06112bf4a3e6f42d487f322330a0007631d416966e67b747f60898814b7e5f492025d753b379dd6e57b0dea015c6f4bbcfd24f6e1f3159b9c8972a38347282f09565b2f7773c00498520ea10e6655201a62a491dbd0d568f58dd4a527c2f20ab821b274b97ede1b1c914885b84b12d803a958bdd1b5353fea8d3ff27e9826d92e8f4a4d334b0d2391747a2157972f556851f1e48f1a5790d36148b7eb37bc88701163cbaa2ffa96efca8811c1177b72548d265a2a95821ec3d096f1fc55ac459b5ee321029b111286d8edba78149e8f32b5da3809e465fc5c04ecd042b3fae27747832b5c822c8ecfbeea288ba47750d9800cd5ddbe1d4a7ec7639b672130aa8e5ca1e89af62071017d612806878c3d1f66d1c6d7d8ef73ad179188944999c09e8c7d05ed7650b2bc3a4927fd75c5db30b5430e8944b072dd66f3fee3dcc1e33475956f1b059f613192e442ac6478defd5f89a591b30e81fda0cb28bfe06ebb3c99d2d4a38ae1eac6de1217dca9ce188c4fc06dd8dd3eff1c20fbf0e1d41868d3e6947b29c0e7e248a42aff3186e08da8126d3d0ee5158fb03b0b65a3e4bc9794fc39e145850bf6214d549935ef0cc681d8258035c53b2974620e53cf776f95b5f3019f8277d4d60f88ad80471130fc9f0d71af76061a96929e013083af1c57b2c18418654f8b34e8e4b61159856ea44d8b9b98347537d58f297783b3aa9c42c3a44552f139f94ff3ef966d661a44950030cdcf319b60841204a304f4ad227186d6f4153d2b443535856741ade4f896a8725406d11ec7f6a7f2af604e6b2960cac5e238f29b8e8231d34fe7921fcd57fed11a3cc0d69857f443c107b16c59ad230464c69c3fed586a24ec33e8a3abeca69516cce2ad79ba602971c68bb7da4c4932b948add5aed9f023666f2172cf2fbeab24ee38a335b0333fe29059c6a4327007de5804bb38713fa8974258f5fd292234e11ed24f34f7b0a9c2b82f8515eb6c1778639a8a150783486748f55bde3d3c78264ac52c4f2af6679a27ba776f4639b008cf43ff08af3b45c93b88e8f96e9889bb8b260efcbafca2432358a77fd4a4f2c27231bfca5fdd56c8eeb7f1cf84998e9487cdb217f629c091601e8bb5dfc73ad2851721db7acc5543c619b9e68b8f561ed0747bd94c81e558a39e23090aa5847322876151775f97a0d9b22929ef81d57a529cf9536afdb205856d3e5c24ba8d802151695806e41fad3d7221b307390e0f67323ca4ccae9b1d7ca56d348b44729bef1326ba0d1be4d4859f972609b959bbee13b6c49a78244839c45abffa36b7a82007178ca619e789d7b4f777d6dac1168c70517da3b22b19a97812439401933cbfa933c363a9064caa84dbb8accfa45c6871525aa79ecde9e867bc7d96454760fb6962bc35537e66c4c3c9c921a4a3e5211d4fc844b65877f632bdae506c03e9ffd64da94b89aed1ae30374e68859ef7b12e78a479478fcfd07669806d772f9f39d9c7f26cc07b19e0ce8dcd30b4e4bcb0e93b99b7f75d7ba166a574d3a5502eb459ad97c97ed671a63c91784bfab96d054a13569749053aaa0b34dd9e001be46b7bd2480be5d276211362e4b228bb7dd70df550ad8aa05294f48d81f9c4b8399134e259ce9e026ee9be88941957faea1155d3eb03ef9d3e9a5b16a2d1a67aec7b1a31cfe9cf4f4c267cb6254d330621f13e628c372aa05eb67b628fcdd59b8c52daf9032284c3b1067a5285ba44f6945024107a8a63ea10cbe76870558b11382cd4f2f724185e224eb47dbcc86df961bdf25be0337f119a40bbca30ddde78f14ff7218d995676d78984283c3aa1eb5e8cf0c2cacdca77ce8bfbd88a84f81d4765ce2f40e2e91897cda30b1e7ab501cc13eb7827408f6453ce0c953806fc6f875fbd70882b92721948fa0d89b0aab3f55f0dbf0ad0fd780242fdadd0f04941d26b678533a0ab194bbc3aa510cddf4a66a162968b06978bc8eb60107a7f58039d1ac42baf5b11245c10d850da267c9e37fcf15b0db2ebd5b6514a621449575d9ea5b212a71384663684ffd00a936e931a22e2ae6599b618c86a9da029ad23278aea8802a27275a75ec131ee51664806119a9b5ceae05e0ff2b2934d0e489a9898d0d06764b014aa78a3709a9b3fd75882d23a6b49c0ba6713885bd374b92d73fca8079a3573d6676a77b0efb32e281d8a403f0080de5caaa1b57dfab4d85a54571913f4314b65e307eee025f3d87f27c20a5896b95c5494409b8928b8b0a00bc2b5d87abe914f961210b0fe7fc512813ad6e30ec0c6e85b9d6a08d6f867beebc215953f5a23a85b13fad118f6d3b0ff46e37c726da9c18092b9dc628bf4d542afdb7e8f2682787d6bb2d34180eda360cdd221bb785be1f5ed0370a3120c13efad6db5b439c0cbc527214796d032aeb225e8f1fefa4529d49e5c62e9b065928dad527568e8afe3742b7ad9cfb630ef767ae85b5415ac6310670e94206ecfd83b1c6912142f1fb006f7fca7d6b7934f25e5268c63a94e8efb2a30e8b3f10454df3b9359cfb4f68a755f1b54a47e7e2039411a3d682d287442145b2b5b27b4efa4dfc85bff1f146f5e20713a491aa84c8358b35b51862e624bb26957391232562e13a9df82453d0e7a34c40fb43f7fd7a4c1afd017bae5cf4663df362f4c0ba4ef59d588b3c7befcc47125374ddf4ecabbdc947c3c1283a35d5ac31226d583fcc70e320f719364f7e9d2c0a30aa4eb301b5754706061950b168c3bc513c28f262c4b615c29e981faba4c6fa821989553721e4f0d9e7d74328f5fc3e3c8d8634fd5afe9a309aef8123f6f050f85ee6daec73ca3d0bf4efc500905ad0c24245953c0c9135658e788077fe729dec90ab63f40f851f52753be4863bf47d19b0e15029af9b1dc0ed7dd0a46437bd0efc9c04d25e4ff48c86bcd4a116ab4b74dd3a54a260b8f42349988974746bfbe78de8661719f90b71671bb15313f063e7675357657da63f90ba6bf4bffc7d0f307a0998129591637fed0fd4f956c7e012cae42641962ff56775ddf103fed3acae3299f6fb6b0d1deb00580a853f9666d9ebe9b453c4e5f4bbed89850dbf3a8eefa61e09bf781268e75c733ab8f8951187a29038fcb77b51ba9bfd2e0da8b7272c408654d40b3bcb59c6ccc89f7c022157ac79de298a616a3e5e479c62a4e0a917e08b8fe1e682c2cbb139cb77db2a65a13688a8eea0abdaf10c84e5e985f38dd903fe4a6574ddc4dde1703b6779f03362bd1ff48e30754bb21ad214550ff329a5bb2acbe21a14ad60e6d3b40dd2997542a5c6751dc68b8ab1b6b1ce5636a43292286dd52ecd6c75e4b8477652fc1e39d879c3d50f3169cccbc74dc8f8ce6d476648edee41f77d601a7fa637f21c773fb3ed80a8f3182cb24c9b9ff535d6d775f975b0f74dfd89c7b5a1fdf90fc19da9d26573cf3f1762857f919b90af8f8c5e6920f7ea60952a5e49cad0546b9cc9c83a793bde3c04a879feb7479cb17d8f4eef17d077a287b007cc8341723bf0d5054997d42645e267352e34e979968e43f71662d1cf1df00b357cb0f24bb388d75d8013e8454ebab45d196f628d18a5add48784abf54f2651f1dfe3a20a7b8496797898eea63f2a841fb3a8a420053bc449287c6d1864d8329feac0b2fb650b79ed7f040c05449e0f989d0d813830f24802c20f4821f1911ea6afe94f5c6161b171eca070d94cdb3adf22f73ad3ae31677c94acef0a98904ea119ca922145038e54ef0428c065fd8b5e1cb060888ffba38c53a15047de9c85d550f39fd6e6e2811f4be69c375e79c2fc40066c9749ba31d0c74bc4e5c19d76790e03402e6779bc66308fb47f04af3472b21565a94851f15db41ddd92a7b09a077aeb345bbbb51f2e6f2cf1866c69e62e6a1bc8eca3ddf2c2e2fe25aa6d2408aa0f56a3de0304cedef7bddbc7c878134e2f6d330604819a0d8491ea4e9b45806f1ef82c56dd45856b7b7d90f76f38daab0a7b908f0c0d535c1b61a8fbaa09c6f72be0ab812497be5436213c24d2badbba36470e4ceeed0d694cb0b70a6138a16ebb382236707f389100a7bc56f708ac14e7eb3b70a11f79790d1529dc7119e5445665782305d01fd15b39a56e4efd345c41ccd77cf299d85f8fcca1fdf6e72d3ffc5a3e00215f974a698200fee44cd39c7befad7b2bcad93f179c37ec189acd942148c35246eaf2594c782e3743432fc2604733c97ac186a62a0ee8aa230916f6d60ce9e7f68afe05f397cd12d7781f469d68e2b8f57b5742661970675f24a6c9f191070809a00e908fd8a8cf6f6483a2b3246ed5d34c460c53a30b02a46b30bab9d0c14475a1917c16f734666b15c569e734a76460362f28015601682c7dd3bd0972e35a8d045919d7b5f16c77d87c7bcdb4981315d0d8a6bf9f6648ad1953ac01167f224e6058095a3262a77a19726a358d8357891d2f02a250bce09d61df639c6ed6230d42915dca0c2d34384f9152a136748a94e2aeb4577d735ff3a8a24abe4558bb547721f2673d4d2327ff2c83775e7b1f3346e3e1812d952898fc5a294c440c6bf2f0cdc1d8e016da2865ea58fc593018056aa2a2519cea3747e63b164671c0f9bb1f72de4171fbed5f9f79bd2d146ec0098025f9f1a2bb7a8edb8b490af9b07e5340a1779748fdc8003d7baa5d98203ab129fa468d2a12b9fd6d5b08f0e4cced3c0dc49e73261ef5e7e5e34da40c1540f67b4d3e682f0b482ebb17a422dbab397464403d6ff721883cf879c20896eb804b00b9285ca441a0b0132c068a6bdcbfa9f367d7236b9be8b42d5b01b6614b8772216606e9ea0a6684507c71d66e18e8fa6fb99d9aba5e14403ae6e80250185fbb7c77e69f548de795f12a30fab604c6f11b0dd55e4a6035af34833f75674d46d7131c460e82251490121ed68f2be7a9579d5ba587ba7a1ea95b3a68821e17aca0cd6ce60af606a90ce9c776707fe27ed6b2756494097f2f932671fee5a1ba45c17fc7c0c49d8794837e9802ddcdad439c6d56c7d9134b4bb1cd1c03af74fd8d19bd3b085e4b1e5592dfc300357cdc9a6dba798015b653f2bd5682d2d0239b9c96c139d3cebbd918ab20560d57f0def21de7610c756ecf710aa1ee761efc1820e5bf0cd791abdbf173fda6c93c16c85a04fc6a9e378e750d98cb140b6ef2979afaf6ae35157ba907a796748716c2b567df2889c67a7a5b5bd0bc1eb531fcec3a67e31202c45df003114d059cf8da4eadde59cd9e156d70707fd917f23a9f7fa4ce5a3087e397e0db26976d274bd7f60fdcdc609e96ad4b766a8dc4792114e606eddb940b95446fd2b101406ac7c0db31903319599bfd628bd924573e79eecc13670d8d7a8010f7a2ab3418c31316f30505a8637577341e8d0f5b8857cb00c92fe0de1a59d502879dd9a85ee231d836b40947bc83b3369e2603eb8699875da2050371cf9bf7c2ffd64985c8ee01bc623def4ae3c81c0d7fb03338c113c56652f6e4583fa5f573ef7b94662c28b9779883c214061f43372151242dc7e25bc823007402ca02aba68bc4b68180660ca718d37a5dce80864cf8bb6acd838e517f0d31900c96c35ef172e442b6af51347bf01fe8a8c88662423a4ac0f14bcb9ad426c7991d34fd179c2e0b4d95c2d3815a21e516941bb6a181602b59ceb6993f2843d23c3fc8316da914580985e03a386e4aee2831752e3c1ec4560708dc3eb8ce243227a62f36dd0fc0f2193ad69b1ceec7c74452ab9395848b0efad2816908fcc2e7b42b725bea2b896302cf79174af290eefe3759af0d21effab9123bd70622a494dcf1c594e3b29b0de66d247b7eda7c3f15bcebf42c398ea0a01a09b4817a39360050938eaf4d04bcbbaf53c8026ff576b4b9aee78e2414de9cdf34306e144ae7d85c1ac8f3ea42556e036794fbf2d33194478fe74287ad0d30df3d6243683d825fe3feb38b40ac220246aff3b35ca71177095b2620e63b6c9ca00e90d713f2da8be7593d6f6cba6ba80bce73b5789ebf0f1bc83de1f6b1595d5a2b12397cf01294ae2e27095648bca76908a48daa0e22f5691aed305ca4d1b1b2052cda6545239017d1e13df7f6343561c48f9b33be27ff6bb84e298ec9f6c54ee1a017e55fd643793ffb6c80ace3bee83744c4f432fc315e12cb76cd2bccb49fa69d47c167efb38f2ed7a475ab2b17cbdf3507756e06f917f0e68c0d465bb05588ff70bce0d549aa00bf353a4adeef837caff73560f9b7d30c9f7f6c65081a351c476e9570297697cd9fda344c46f416bc076e072a1ed4f3a8acc6d1ac8a3523551efd6e0275237d949a239bacc61f043e6808d1821340082909e2ab9c14254e47e19a48012f109511c1deb4cf0121107751b6dfb9e09d39dd29681ecbc0eff237f46f0eacf3862c7e54869ea31d2874045a23c2277318c96c4dbd466899a518d5ff0ac77bcbbf42b544093e3f74a8a7037446887bd96e6be6f20a5b549267e278d61a6f239d46cdb3d9a17371cac91c2315fc0e9ae8ceda053899edd1365f9c8f84c053be6160d34d225634ade32ffb3d5a963dd0440d080f72b1c679d579d97c2a401f96d614ed6e38f0e956dbd4dbca139bc96a920282c959cb29ff869d24520ccf2be5ef4f9ad5b53aa00caa4ca50eb8d979a91b843bf9eaad1bf619087a58dac5850b61d5441f38b30fd8db4d8baa042b14cbc30935f42ecf47d49acc5f7330bdb954e2e5a87cf2826dafc713fe26477808925804ca1b0fa16f3f42836c78f76cf77c8ac1068e7db5a8adc5d743be075c143aeb8c0a21ee88c8f4d705d2752f570e6952b5b47f8cfc4128fb4d7317894efca2fd5bf646bec2f0d6fd1e62605c306848a9043620e5dfd793eb58fc843ed2945458fbe0694e5397d47c80dc8b2096a9ce60e18660466a8a9ebe997603df61c44087db1b0e8cd22f33574d37ed527b808977aef08398fef356e0aca000beb9222e67213d130805ade861adb545c7aed23dad8d3578172838cd72ad29f41589e9b9e828a28955a41e58138a4fb07ccca509cc7c75130b1e30a67b82f601aeecea277a927d2a767c52dadef92355854d13bd2825a8bfee64be589f2fa4a6c29951a72e0f174e453ba45b998733f568dc8b52657ba2ed077a7c8638362e438d9bb1d9fe009968db80a588bc3df6645c3d0f4e420e38fbacd12db670ee19cfa86ccb61ee9a55c7287029bd0be07450e9085e6d4c4e9118bd49ea216699fc7b1c72ee153f0736df9c2552a8e0ffcf5d6c989c77b169642c6470fed939d01abbc0c1adef02986dbbd664fd84e63e6f73a77fd2c2238413d6ee01d54a16e46e75c7ee07f8fb37d0165d8e18825dff207dc8d31846df45786b3a3e25e24828536f912c20a12de6c1834060462f2052dafcb0ab252ad382dc4ec4d5b637f43cdf38229f4d0756e5edc2fbf34c24f51fdacfdd52e3a1d00360167a5505aa418d94585fcc00c80e90a2e77b5405e639979e49d75c0c60bbcbb3629b68f5ed5e97886337591c8f80e231ed13f87abb239dbc45a4f014c540e8a0742c3212c8f9619c28bc217be7bc11cdb05c04d46285f52164729e7d58a0eb89e5aeb68a103ec62567210684be5559d3753c143489911f8de6088fef109243f0c64904b9cd9bafc4b70eee66cd1f35f129bcba070c0a11d702ae239084615cc7e74f204b9c60e85d555ce1a32eded7f18e44610375761fac0730537018ebc97e2804aefe33374bc4dc8f3b8f5f075db6dc1316a562862e771d46dd83d7e8a3651f5d0e1d1e961fa3964e6e30dbf8d3c4e706befde2cae579a08888f0e8118bbb565e53fc26612df3f195e647aafafaf2992d2a98d598fa54e0f89ea798fdf98a371479296e9ce1ffab8db687ce8576e5c25f6107f13c5e0c38f1d6185c4fdb6b1f9dba2cc00ec4d24ab10183fb17867862b97315e86812bd76a94d68fe5cc6a59a25af3f5eb57c631b00247a77f58577bd5c29b6a46e05118b917ccecbe4ca09dc6f00621f62cd0300f24301b1109a53424dfa2b8a108f148419496acadec85995ad625f9b69b9154ed13749d54d7a021c751ad34bf057964e2c2b247c1226e3705058075ebf7f4e8bc10d57d56ebb0b9d715cb3552f0f7cc570007198e5238f35338471ba8d37ae293a662c78577f389ee878b56d3a15dc783b338cedeafc440889ffd81fbd55f8579f58963e57257b3208b234b3cbf3386d31a1fc944fe01eb9a8d80a01e3e30b89d29e6f1d9ef7797f7170c349fd02ca0c18bf0bd2141e41c165264003c250a6dd5ea45bba06ed8ba030685c99bfe9cd369d343ba62e8cb172321bd6ca004813d672f86ba341e95e302725fbd755271d6ae8152fb0c5c33b2443d36eab38e02fc0742ee27992da4308693e7cfc0f2f3b5f47492474eff193f9c46f3cf9a0ffff7b7b6c61b03b37f382084ca328f194a59bd802dcf2a308d3d81adde5504c7dc0064edb96964b60aebb047d69d6ee1efab0c94912bd8b50ed4a8bd5e3816e6c370e71a054c6b09e056910f1fdd0f3933d083e45dede96be75d9199573b042ae1712a5608a03f36bf514ce8997ae92a4edc72491a5d62b08d7148c0ac334381c662c8d2a2f81354a78b5031a00e4c256a0b67be0b34b92ec5488d2c7f5a120f7250cb63326b043e19d03f59246098c6650e94b41251f574d54a2c5ba29030a41d8ad66ec4548a895288fc306b5262c09d5bda9d39f3314c97ea952829714a6cc46a1a15b8c5f44cc46c57530802b52aa66e33b0a59ec0e4f0ad7330a170a686c77d4f84b1fc6b1bdf41b9299056b2efed35f87ec462d8a5d009e8b4b72326c94120794faec69a0b57acd24bc3bd0f27c006af401e1a866bd9ed7277ad1f8bcc59cf64eefa36805410124552dd87d48c7df7a250403bc2eadfb06fa0aa72dc893210ff8d937a5552960f52ffc101ee772c064f99f17e51200ec4c27e1a0fc695ef627375283ddaa83d46746e6b0a64f8a48973e63165a1b8fce065da572a8fa5b7c16b2a02829f456271bec22ca69ec04f00e93808b06885515d131cb0b7a4a6665a11320d348701bd9f41ebf0da6acb6487af86523d9788e473107fa0e8d810f453d43db508b1083b76fc895de013f4dbee1da10c960e3839b40d1c7d429747bd679d66c2a32e6c035f6c9abcd2b3b64efdddb3a3bf2076b7593d2793e42951289d0e7837cc62ecd708af65a32f1296e982da0be25bdec500ac40b90fe63f5d7a007818c31f764ba0316047a367922097ce559c41790b8bc7d40a83d8cbc58c20d41b1997f3637cd864254b8ea1b682603c82f8409b49ff7ad708dfeb9d2de4b7fad0c6c473342d9067eb53c1fb88a43acdc19d1e84268765bdded4fd72e642083c1cf4709ae3578a7397034a62194664144564d3d4c170d80fc36ab6dd61d73642b7b8414acdaf5fba1367bdd50419fb5418d26b07e3790c2af9a05cf57638bc94162686349142f042331e7614e8ca43740c5904fe58689c0f5b1e39172925878141ee3b63742e599fa267cb063051015aafe27dc5bbdb5ce75333abd63ccabf9c1368e3cf8d2620dc8c7c992c47e1386c3bbedc5d6457b04905b212eedee8da7440b7ece9a1b19e8dfc662beb6327cad49a7160cfc70115439f226cc960bcb5ce6c534f33661f7874f4567318daaac908f7a6522b75c7fecd48378ad3610fcf469f92c17b47e88a1f6b68c155a5b84a589b60638a685d988b240b6d7d5937462658acab75a5afd9a959a113724854f623a7dd16602d8ab72f9259d58329dace00c07f239db1c39b7a167b95999ef9ab64e2e248c510f9cb7013f168e7cc66596234dfa9390a0d6ac517d1acc88948a178cb5cd957cd23dc33011359cf52de0381c565a74f04b455f48ee71c9ff6e1cb657d5304fb54c03ef944e87aee4a205c04c4dfaa886fb2dc31c15fee340add41a6a2c6c63ad1eb85339eb21c217f43a01212da47012f83f1d70cde97b2bc46231e7e19ef5702789c14894373104cc2360a0faacad18dee55264aa1a5afdf306f24d7b6ade2c10a40b4c6a712d85e4f18bb232cc6c3b395944ff447c98a277b0e0b07d009934bc01d19c8ff81843c1e023fd350ad9bdee534debefdebb2f66ef0ef4ffa9fc5b3fb1ae1f293b646c82f105107e55160dc9efdecd029f4381b4377270ff6c7dcd3502e4e8cdebb80207a6f130761d1b10604c9d97dc54b34bd1f423079c90e33c36c61cd5160b00c8ed6e326eda250fb9f15d5138918af03970fa8cb0ec33082cc159bdbee1eabff66e04bdb3c3d59ea6f76956a9a770ec1fc632a83e379c28e5c4f20f4b2c18deff9e9436a54670fa7bf3da0bdeab853de7d1780e37d107b22b3761c3a0eba144e2f082f2ab21e0fc4e2dce98480e7a6012142ca28b3ef90395714341bf3027b26942aa1fc01401daaa63655e845fdb95744c53a09baf352a2344114c85f3f5835d003e65906c6efe51ce796abb18efc751047ea35953e0ded3b806b6b9f979fceb09663025ab80ed1bbbb9611fdf0ec175fbcbd478abbb9d2d70628221a1b8a1c46b119c32cfd17224bb64c1ddde4f88c7946a1275d60dc93f299ae8894c8603ca546a0c1bad588189024715a3e2748f6c917a5c73a4aa6a5b17c4a0158025d84a75d485c2416bbd7d67e99b152d7d4b030c0ae1660f640cdc248390d3e3d9bda62f5fd3ca14e65d4451cc2eedd07b5dca8f5561ce0b5940745d4a166ab2fc1fb71be3a9adf36fe0a847af1dc6d2d8a088facd98cc3a48668c97bcc1467877df7e40bbc4f3585f619c79440bf405b12133c1e66bbf18f1069c1c72f443c9d1ee276d8b79216c2d7e4887d3adf1e132e7e71a7dae0be6ca0c1e75a6cfeb599a186f8a4ce11b59ef85195c865643357efc4f2c81ac0630a9339a9d87a8e0b8aa21096df484fef11364ba26e2fd58c6f18e064f5eec684ccf766f59b1e996292ca1273e2c614c985373ef47955fd9847b6c1acc56fe99624f944325fa008b6c61e69024d1d8bf0f17917b932fe06a5687c0f1e04ceacc669eb69172950a56f90e90823f4f685b41a545bb9dff1b9e9f1956f0bdf3913f08db227a75c2e30c2d2534411ee739cd0c1442eebb535ec2c91acba0e2dd80c9615ab208bd719a24f225d2a052b6180266998b8ccbdc3af0b5e6b20843bacacff20365c4eb96db4ec62c5d1e8d847f054318ba770836bee83cc37c9fdb2250e240e823f45aa769a5f9c51e6cd660dfb3925aa32b04e8f50b623eeb9f503045c717fc179781db5c8e38292a99c21b277d9fde3585057f561c9042b70bc04f3e841a7081a8a87b0b99cba14abfc40384c4589f2a724e8f52c0a8f5c4e2cbf9afbedd095d133fac5b030609c23df772f881e6e70287f842c31fb813b2858051235b941f85093512e40d5778efc06f7c0fcfd260604ddcdad78f9840dc2f190e71cdef6ce045f4df03f2d9b871f8fa694568a1ddff355cec54ee6c4a416fe2943359a80fec3119360871ccedbfd5f730d04f38bd5ef847b51df21702d33d9a17d41ec6d0dc44391df9f9cdb76004f4eb79c5fd11f0d722f6723eb123e3ede817eba162087fb695c83b26b1cf1ca7858c672ba9810fedbabf6ec0b4eca79a5febd6f5de1cd9c0706ef69d71c7cfe7ad26445203954f6771c353ad53f2b68372dc16282e852218997bc218162b284e9a4564d48321a088166b8994b37923ed0c5a011228d9101cf3cbeeb040c1d0bd4924a1780977d2ac3fb5130e45a32f4adcbe8ac1628283aca8562dc151df613585e1f27d021a978e139f5a8306b9ebc28086ed38c31ae5210abefc5bb2c28709a1b8d7e84101620f64ba5af44bf16dfc46f713cb00bf53d88a9be0d57dbcf2713c601cda57e859e4ed4d45b57e8749eff2ffd0f031c71fd7e613e57f862267dba2d5a0807b01548b1d8e637222746f7ee9e1541d430845da1971871b2c6087c0a075bef85fee756adeb0e1ea1bf248ce8fb1a65e764d7ae8e3487184547dd0740de056cad52969644640a323cb0ffb9a6669a1d22d67bb6aa226443bc6fd73c434cddda27b9bdc288b17f11bd90fcec17f0493c5df83ac4d3220f66cb02cc952a1443d3105ca2180e61e46863d6f6bee2048adc0f6dd890faaf52a017368c63fb4491b85619e3d5d0c6b83de5422fa1720e4e6d6d98790f4490329537d4cbc6413b0f6322021944ab03dbf5bba901cebe0d2cde5e15a80995ab5005ea9614900c835faa8e51f8c13134dac5f2302e66c7f3cd1a7a77a53de9e5bd81dfa96fcc598823033d0f401fb1b74d8261b7f3fa3050ecfa96ddc5c19218e27607df94c706a25afcce3c9017e35d06482668c0170f22f702244e7c6716071bcfb48ed1126f0ccbb72291e976aa0b4356c562a125f4c92cc799bc5e407481ac825eef50147c6c2b4251106a206be68071513d74f97e3f7dae004c865a2677a9b15830c401682bef063dc84afc2b5f2c816b9fe9605fa08846cae16190983e76a1e3f33ee1dfaac7c6ae686bee66b93af43d3a003354ace131b1f50fdb80dc9ff8bc8c1ff033c467c12699608a1ebac5d9137d9a605353a24b7c5215543d1089b7c4ca435306a02894b7b2ffc750d8e9673dc8f4202cfbfcd4d03a8d822dce5098173fdfe45dd388b4703416b7c4df0abb8cbe424ba54652e993f96fdd386229fde3245c325f382bf84dd053f999655d235c944a9d0a039fc2b9914e38b7fda7258bb701813f68fb499f2af27a4cb2e81b2ddce514b54e5fb87843cd52582fca21566795efaa246c995591b9a0d83c3d4b936d90896dff0d920772c904498569b6d6d719e290d4e8e7a921918633fcab72d67c80ef4ff8173a3f244d3c8d9f1be10ee5e301c6d9e9f40c3e90500b51658d6c380c58d16718dae21cbee3d5366b1c9c28a43ae2a62a2f6dbdf9817d2d7e75f0ae275d6accd0061a28ca53f5ef7ab63376d6d76df81bdfb2562034658ebb236cd0a70a637e5fec4a41c04cb2ee20b45a6ffa9752cb2959914dc7a583a2ef4c696097b86ff3f2f9055a5f72c3b25f35a8134c6f8c13b20d712f6c7461ec12f8be5559018fe56d755b9a9efe637517ffe811002390a5e5790513337b54c36714605b4041cff48ee196e8f3e08fd024921173c63856665ebbe999227170048b05263a012be26d6ed11bc77e4791cdebdfdcd50682928c30aab9d708767db9ebd010790b315629b8ec8d35dd2440f9d3f66cef1d2f88ee1fb3c7e0893da006b5ca2ef594aeebcfc8faee6d83413d02c784c90fdd175caf64d3a7110290063fba3fb8546037aa6b29e63ed0252b2cf7c085bae66b1a29af7c91a85b046b4b3a7bcdf4b4a5652dab7aaa73fdfe746ab12f351c9e5346015f7a73f2b0c955898387eb3405a2ca501fb70c1e9ba0deb90f611585413128e059ca2e6bb8d42d736cb4661d80439e4d59dca6f27be0db143cb331826908c35557f7abc42dee21bab6165183b132a67a9e4e0c302aa4e50490a27ea11c70db4857d48fac7cc17f49a709838e1afd1d8138efbb4c04f71e83b552ba0579f50f52987b604122b4fd1db441fd48df82c3c6fcdb833066a8d5141c078f697b58b97612d6ee6021b3a44613761b744d849f058921f38458012f36f7b847fb4943d72d3cc85a73a87b8f06b4317cb62b6c8ca400728600bfb3707ff2e68c170529a59a452750a85eca250ab3ce9addee12bb86087bc561caa4db2076ed3dffd6de45c84c644c981f3103ab4a27278c2e53eb1333ab8c73a51ef482284dbdad38406b0a5fbff24d10c036c2a7726c86e622d12dd6a31c965d4116c157ce6f1c036cfdf0b8d6538835bd8c353b67858ff2ef8c71228e28cc9f39e7cb9bfc7c8ae998ae86aa6726354e21d6ddb66bd6de1794cb2e7002ebc3a59352bfdfdfe5a4950b37fbb5c66122daab8c611c1b646ae4c9bff92db3013cc7534585a67189714117c4d788d7ad4ab36b347beebc5ddb901f5d41956dab9399511bf6180d12b8710f290d83c035c56312da6d5695b498d4810b04d4f0cd3e0ffe272a48785f1f437935949618ce64d990073e815fdf3040da948f0b15602f0ca977adca24ad218595fa97f96bcdefef15e3499c43ef5db1fb00cf34e8bcb3579321e3a22ab740d9fee6d685fad0c56f1c62fee1fce42795a197f7e989b94654f0a1bfc47de5f49bb733fc86339d3e3e5f953c658b0efd634e35658d6582489e2e22174b10a29a7da353c933aa18d397ce481602f1f0d3f3e039b6e8e4bff39c9738dafefb0b4ffeced2198610227fde4adee0fd39ecf358753c803c8da5c70da9808e75ca89c38e8f484495ad49053a686a2f41a446d9ffd2c0a5663b423dd7d3f292157cf1a2eca3cf5b0e06b45793901708c15dd1960d579a7a5233bdbe632a80122b1c512c2a897643aa7a652c5c9288a639ca1d19e8eb1fa0820ce602836c70e3e4b4ec7c234d2652f8baf4ed6502416c3c809ab993d5bd15023fbbd439450ee9ed0a10363c1c46842ad7b45403a42534098950647fbf9f3af95968c0a9d07265d128f7a7857d1f4823bcc351fb97445a4cdfc73039b0b1f00ebe7c01ce9a23c0e752c84e50bacbf067e4e7de19a4616dd8e6147855e19003ecb4321a885ed8b0af2c066a20cff9a7f3ef132db0afb36eb4562ba75ff93e0f61a9b9d8aea6d82551c2848f2df050625fef05c4e04b1f4c8cd04eda4238b95cabb6149bea56c8787fbb8ba1c106b407af7556feb9f0e9a298b4c798b89bcf5baf75198f5943d7c88ecca8600709cd1bef68bbb26135472a4f22158c2e7df68efbf985104ccefb66c23245f1aed6079d3faa7059852b19375262c8affcad770566ce9fa40767b2e92b40819b6d33640063bbd44f11875f98b4949e2c696342da21fc67d69d7b632ea3cc1f07e81f71aaaad746dc5773223a65a7921bc348bb94a8b19f427650078343ebe405e23ad349cb9f8bcd29ccaec9a0c7b99d2b2201c412b56b1ddbc7abbb0a10f43cd1e1d8e525f64f6e7d2bfc63a76de2e2b7f3d1ef15326b4e42776ec828cb7e95f352d4cf44e32290ac5057976cd10a7e8277bafa0842f9f66e98d9380ec8a06c65bc5061e86d70ffe84d52942d8080529cfc0e43a5629976513197e2c82f47ceb43a6e38d4b6e645e9f749edcd11f61394a9b666a927eea572dbd2fe70ec726f0023e318b4bd6d879587da54c684edb82ce5d64dda46d4fd042e9da1f167c37acf3c5d84a337b013d2abed74ad686347475f52725405933735cf6ce24dae99ae262a3efcac0efc562ae324b623604d0a777bd175e286237b0453657fce76c4cd86fe815d84706587bd67da2148a253a964873a92285b3b92811d363f0bb1069fcfdfe97951142443dd4714aa90e9ba0b8aab88d2a027aa4d285ff357a31edf488bb1f69b19872050813bfa04af9842e0ec516417c3b11fb0d4915ebb8e64c45a308cf87adfe18f6e8b5b39102c372497f5104881c43bd1dd2628b50db089aa9f25925f0f2dd4c9503823116d64b842ea5f2f4ac2079a0acc5df0a139b64e4fe4608d91fac7c99eb9f144a77e56a93d6d6022dbcd8c34245079220b295a2335aa6c7b1cd6a060c7f320446df5800bac02a5281268c3c805e218abf48383e001e4d80025ca61f3501d924e76a925019d84e075b98a7172026ac9eb695dbef5d7d3c2af9bf9abeba7d24b9e27d29e5a593be967db4a096ab04b9e56574b179f9b0cc5694ff1cdcdc0a5a8e08395aecb5f873d29ad0376e246daa9af88a4566a165ae9364b31fbf086a83b7d5b261a3865fd978cead05cbf5125c137259c566cf49ae02d98ba76fbb297ebf702ab9c0ba37350a6aa4568943a4e4b52272e354ef89021981f01e05aed6ecaeaa7518125a6a72dc3cc25f8a5a6435bc377b4481613d9b4d2ff3ab693dd5ff7e7ae2d28705538f41eb4c7a3ce3bb16be5664ee08487eb98bd6cc4ed3c1566fe169e6b550188c91d91a418ed7a99832c3fffa0b79af7424861d637e91ddf39bfd3db33688787eb4cd834ee54533e48732af1bb0343ab7fc34bd0a9c9c289d4a934b9f8ba88e203a345cf0a1008dec67ed4c4e55ffc3cab0544fcc793778c8203df262f306be6e7879b632491a15c7758f5578a23921dc202119bbf9ac53522018c27222dafc092c8d57fd37cd31c8bc0f654635ced4a93be0e37302e13ead60358e3b1912e42a46fe37b8c7abc0360738df6ea810d855c0fca5393360035a6dc753a5b3bda6ecf7269a64b3dfa284d55bff467f6ffada581371e9f7cb12aba6ce4811b699ad7d4c8e39716400ca5b92b35b8dc4766c111a64ff5153d7e7b38bb752504b890ab88bb8bed443fd4f5c384a2f4684b919f4f0cbd49c5749d3dcfb5ec9ca82c312ccf25656555fdffd36830dcdbbf30f9658cf1bf8dae2199e38167dece3e77bedef74dab257435ec199ffc51a79ca0cc01cf7430d7655619593677c38031e7f4e56fbe45ef8050054a3bd7553a2ef9c73a45d853f4d203aea078f7ce174b1ceae26f1da8d56534ff0afb2d5e10dc2ffce21c737a11605f47f5ea0088d4004e5cf3811b81eb3e9cc6f6c3c143e89b5a9b54082caeea2fd18889d2fabba5e847c5679c0e2a5d2ff4820d3cab1711de867d35933c4b3353388d67a47eaae9c3b56d8cc50c9861d63bb419d9915abad4b54b42a61fb427ebfae39a96b442213a55ce6af2ac96186c2b697e215aadfb2a0ed0f631a8f85f34fb92f9eab51bb2d6a571052b92358f8693c3c5c224fb0dbcb8ca9ad7e3e8faa2101b54948b9747bdec85821744ba166113cca2c3cb66ab449e7f53a6326fa64b7393ffdda64832337300423b91fb248e31ddd7211a3a952fee82e087a561e41e4d876c427530e5bed3cb68c1a36f589f72b68566be98df7291231c2ebb94338762fc5bdf199ecdcc253a5d03d95c684695cded9bcd2131b0b096ecfd17102a8ab91531685f00537c9cb6fb4d95f2fc9262eb5eb1e0d30befcd1e979b804f7e11b311fac959882598c90bfac0d513a4c7481b54185274ee5f01bb650736d9520c79860f3467b13d567eb71ad8969295bd09c3f1bdeb6834490576d2a0f2865abb6b57022f1484ff7f3744cf2d0d833b6027ed70d6c30ff5c18942b07297b179e861c565d6fd4d0d3a153dfe0216280ca44f4a20f31dcaa637c8218f9445d4e9744fec2ef63be22b877f37a792fd7b4292eb2e3e591b3c9df3f3948e5f67cf3b7f59bdf6014b4ebecebbae860ab37d9133ec7806450402567f4c2acfb6f922c12bde9c33b540ee76b1617cf953ec97803fe947a972250f1f7607745691272a4a07995e1abcedb18d61c7d4abf46e6e361f512c8483a54e8614f32d98ae3778276699af952fad4bdafeeb9b670e5a81079a250c3e98b8432077144dcdfbaa6fe49737c70697f148693fb960c45142ce33268b1f92e1c5e7215f957ff5090881b06173f9f1ad2d26a66086959a8f336e174a3d01c025b63008736e172266efb6eb166d68814c4fcebba720d7cdbd17742676e6f05ed27b82199df36f2b09d2b199cc38c3fbbad9648feb80827ef87273869d9250a32f276a4e2c7bebe5f38d841dbeaa071c84bf37f067bf435937fb15a78d1a7d667b455b17881469b947d0580a18efd57e71e3de89a172267459d45dccac7aaac97b7e38808a256fd4f2a0b3361a008b4d4454b4cc229b01cf883cc7f7af714e9c7578b7cdeffc128e29d400bebab5b7c811123f4574bf73f150d4318f15a3ae67dd3d3b2010b96e3f715d31cf7ad90b64e213acf07bfa62436283135e74b32d6df7797538d00b009ab620af6144fdb5d1102654a2e937b9574e67df04634d22d0016228b7d93e5315935169378e4e217ef31d55faa1599018a72f743a44ff35df05105ffcb635f6a46b83d6d5aa74ae6dacac95192d126b81e5fd818e92c2f868df72382536dff61f25aad4d633b0772472a9e063c182f107d89c248b9a883779ac670a386f4d25e980739375ba26fc3637a41f3518cdc04af804b7279609c6ec4cf7a90df4c0fd4bb78d318ea1d4ac52ba438540751d71eee85b3c9679f545d117bcf4dbf74f72fda49f7a8ab32f1133fecb9d3cbd343045985f452f7101c28d8850b4f6c084b712f705264306081bccb7663622163acba27c9100e4c62c6c7631cc4e1851b60c6b22b915897e4cd43e42cc591d4b6a2c96325e2a493d89f6e4effeadaa8eb68959e3e64f5061c701070b97f9ca503a39f873838943f12c7653d6f065e4bc147c5480e776cb89de2f399be426100a4e303fd33bfa60f21d829709ed79939d7191c47629c69031d5cff35cae1fdcb2a3f263e0a321128d0a25467405aadf3f1b62983d108554edbf833b1de1a49bfda86d3942182bcc70afce80818c7b64a7ef0d6a6be1935220c2adae991548f3db03929b8a905e61a9adbfcf559644b87e333cdf3462b23ea615470a098d36425fd0b171de41bb2f055c684b7c7cd39af28f01e236e19777a9280c5a5fa0d54badc92c960cf83c598cf2ea91117d7b4ed0c8783c86ea87804ca1b6cb2cb36780f33f7fb47c37f8b6de80fbb3fde8834c484970db43947b58a695c7cb32bdcbbcb533acd86bcd1d79d09b195917b1a574033b184306c49c9ade77b34bd281763c789abf8840082b3606571e91df8050202ba6c722b9f8aa657ed384d1205c0131503cc22da41c6ea5b91aa06d71f65c0a9c3c8df1a43ec3b056d7504fe135c0f7fa30e22e45b09d5553dd3479403b834999a0a265cc5dd81a10d1dc8eeb20d35a3fc1891a2b5d71951b8e6ead6b0249a825ee8a09b8a803143575ae8833cbc5ac788665374bc2797698705e3dfbd2e5fd3cca367bcf576101f62aee032268a07e3f54eabcda3add08fa3286db61343c0a3daf8e8b148f8c8e81e0979927b9887fcbee50013bb241dddbb185d6ed0d775a4e6c8e3c1f7e611329e027ecbfe5a9e12ab2eb4a4c3b78cb576c3d70061266dbe76ae5a62bbda1c8a1c4e7d30485b6e69345938c535973bff1ac5a42de8a650ae53661df03d980cb5dcb75a2a88297568bb2f4679fc080c65d75421f8bc07a22770c26e6c5ff7fdd5fe0978a1124feb45c5c4e4af1faeb7448fe7508bbfad46dfb6bf40879ee9dfa0e6b4369c8f5d5b7d0dfbea504468c902c3b167f06a6854168c0992ea6db6f279b9e9ca1b3484e297bb98705c72cd80f0be350b36cf2d83f6f34fdc69396be11afdccf56b8edf5374e87e1e45f8d6053b7ef0b7ae44624fb1bd58d53e606c6b76b2c9fade5e24d8fb910049b033f3c3c5d707416160b9dc24e21c4b8821d819d092d7fb6d76bb4822f61162d2d2935b95f2b20af8b69b8b458b9c45cd3d97bb03403e5fec966aa2fce89c449a2bc5d28f004498723f8a58a964bc8493719f3ba53e59267fd8492094152b77a7e239639f2454473f7054fdde483ea1e43393a16efd5db1ccb2f7ce5767d4a9e0aa28af9c5aa97802132c12e8ae5fc5d44bc9265a0ebf18c1506f91c9ce2c4bc68ba8a2eb5364b63daa61ebc8608db5c12e58c42ff57f90aff9b320c9b91ec526b02a9937252102df790bbcad4d1660b284efd1cb7a4b4104516d64f94d5db60348fd6eaf6a368e1c921598d12cd9d72afefcaee60454b9f0e46c15cb43fccbdc54a068722aad2e58058eb2d46ee6583e4022fb89028be9e9de7e6874f542bedd2f3c57b490e389f50f11bb904878c4f0341c6dce77f8f272ed4561857ba3c6befd84df6fa287e9c7bb74db90009a4d38e14acd540aae60e91ad375356e7bef4cdc176eadcfcf0fdc22cdc22eadd9baddd2b7f79d3d92194218bfab22f3723d67ca21b05f85d2513027541d9277b5e6c734c007b95a88c069dfe8b81b8dcd99ca573ff9c8a748b5de16dfb44b68bdf818a38db221292b27efbe0e932c12dd153c91a808749b551373db4f743469046f339c0698abeb4507733bc54d49675de3c8c6d4b9250113053ba641eadd2cded79df45650264eb9dd440c667077798e2211d97d26248ac4b10a58c69a530959ced232bde23e55bd15b2bb0427883393137af3645f4ebe6ef47886bc5337330a37311365347d5dadc4ddc18d31940a9d71a7a5fbb12ac34d8f52fd0036f7875faeae5ebb642a7a666cfedf80aa0237441f8a81a843af7831a9570c3f8e3d92fc1d9a60f58020950fdf22dc44146f54e6e192205ff0d8193d8cab7f6f1e6e2abb1134a010b8a5182ff0fb52d57f60187312a7283529a0c3ec571ba44b323da12c07d5dceeb099a7e5cd2d1ae19341a2477558123d1d9b65383b6bbdeaf17e6283959e995482fc49e80d7cbbe92f5efcac8a5dfca08ba57eac7ef5f8e0fc0b47dcbe2f00a5b8db695b000cd9b531e9b7164461a0c01a0631630cb50af684adfdac8f14f8dc9f537a26edce8efdcb834d1de1203d967a81a70fefe470aa867f1b538aa611298a92e8105f27e724643dc1acc76e4300afaf63f3a99f71e65e331012a8c12ed3ba6b3fb7e3075dba4ff49bbccc8123822e1988d7bbd20718496d53ab83375685efac14505eb13ccb0aee36ba31c84c34b7e63241b625a979e6e6c9c34c914e24a0268918250a4596801551bef5b67f3662c4bf98a4e4c51171ae3cc5ba83c005d64f56f75a15205b2fb826192743c2223bdf6b658b878ac09549a5593f2616ca9b1ec1ebbaa0f962a727a6a368dac24be53174b82662ca5939c9f16189d5927ddb6dbff32979f2d687b25e8e6ca193e88a0310c6d2457d1da8df0bf7b67522f2a3363f6a09ea7d40afdd2b078a2ca367b75e10fce6aeb1d2d145ddbed7ac0b10d9aabf00f7d30b7fc8159faeaf9104f0ad5d981b3f77516097c74d92f150d354c011b50ee7d1c1b6b16364d013d9deb5de80827ea8090ea9846976ddac6c79c788caa623f5b4d009d0442277385a7398265bf9bcdbe88214b9fd5fc5667ec3f68aefeaf6087fc2f925a090a41b32c51338e02a6040b7c71933e439e0d97e6e196a21726adf99d79cb306f6b610c11b6457b178c396009ac0d80b1699da0673debe77e5f735ccfcc4fef03e8c68a2b34f52d3180b2aa189f968c17809d816026cab61c03e629d78d659b74fa515232cee39c45a06c5980dfd4b00ba8aac36547f73f4d0dc46633a71e9e3af8e254ef5edf1257555842ace253bf2d961c480d99276d9b17bd257860e8faad845ddbc8ed6082a8f40c8c80f00a0a102a316d6d6e6827c293d781be1e2816ab40084910692cd1a1f5ce729c063dc36724ecb6897aee70f06139b8c341eb4f7f0e2b9d29b97124f46c0151da5c1d766336ae116b54a58585c4ab1c18aeb0c883f18894db26e255a6f9d4e3bd071461f618dcdf94e5dcf01cef1efb603c56fc312159a7c1db881f8b47fc58e5c55a5563b6a4e49e803c27674cf55e2975ebfa2278669aac232d42b3395c6071bd470b43b69be8b051ceb6e7ee2ff0c6fd85c3359b30f57abf098c40b2ec663780d4b70ffcadbfc9b12361426957e6d56a2543175fda0192b7c930496723b2471a08cb5505033a0edf75aa2b944033e21d4123f935a4e7c89945a3417ff3641a81ec71e79eb2bc9bbd2be83e9bcbce4173445c08abe5e35f588fe9c5ac12ea0f91768c458cbc373afb9863c57a3a49cc80a81a269e5c04f89befdbc62458d2b86998530871cc1755e74983682bbe5c0ff21b6b0e0575787c62c978ab24455bf4168bba54760888f47d5f918e35929c9b5fcef78f68ba29f270b972a3db6ac81f0f7d641fa7770ac95d56ddbf8a758871a54578d7ddcda8473a04637b4f0647a2e32c6f40ea75749f4690c7c1349a1ea0a04c8aff01141004c7052528e218421b4350134b2a765d168efdf9ea3f86e2d1d8d793e0453c483214121c8369f6ea51077cf667b239bef658eccbe74311128bcb34697b9281c2f90485194900476ec7c66b5270dc9e9626546b8c5a6430bb29d3ebd511a26b008c40968310ba822b21f9b441784c75284e3e5422db80692ba597058088f551fa2be80485274f1d78ceae3582ce57420e7ea1ecdc31035d29e27fa0753178cfaa17efa77f6784679b70e073288f85cb5ac345c352bfe60f3f89c2faa12dee3dd9bb88d5414b9ee2facb83b888295f9e5e3dcbedcfb7473a5aabe6df7067bda2ee8d22ef2a35fe6438e38a906cb9153df23824875c997ff0eee3d0958da46d93cb7d90e2ff2ab04ed201e3317b2779097a6589fee546d9bca7542e8537d9852970c488c96c7db2559691dd5b2f5f4594d50e08e0e45e96fecb9a6a099378bb72d8de03646ebdcf10f48e6049123109aa0368212743621b002265179e41871a2b026f5200f03a650ba0664430e31a9147ac574d16875b8ff6585f6e3d8209e81509091ba99d49374f74a5cd34cea7f0c283507252f51a0970207ad3b0f0682d96991e39622b326b4cc21a9e2db153b9ccf6da13e25e2bffa48bb6f4bb27eeb3b08156e334aa7b93a7bfbe834a81a2e006109a14cc4b5033470cfd3c4fd4ca2e6d0e657b2f3b1734b37e3b96ae394b388c94883941e8e43ac2bc6d480547e8df84276120235303fd3db650998ee9fae6e343bcec5668fe74358d8d64caac8e40c3645e47e2e32c6d97face464e791c41bb1599690a879edfe6e954823b5c0bac5912a26cb32dcf540673a7945563dba2a1d546096bc7b2feefb91c5defc49fb879a8f14ae307936d5607c3a6394ddad17f5c3a0cb674adcaf886fe42e6ea49e1f892604b194bcdc112fec86282736225c7fb893f146c75799266b87b065dbf46a5b5634134cf6129b3a071d4e9ab26d8855c1319be434e617b029932e53af67034fcb740681f14195f204a039cc996c2965cf3d7996e64061e9d4f114f9c2f366d81df6ef349ef90f8189f58e7eb582a506c20cde5f59ee0510b4c3002cf8f3e37661387020a8899b6a89c85355ad9fe55c7651417123976463ff1b11e4352e0730968299847c34a1da884c0db084c4f3480f5797b6c7745953ec891c806bd53e03d19ceaf603ea2a9657dd0d8c6322cadaa400f7915f3bda63b66cf665f5a85808eb0fc6546ad00590d78305023ce7c89f060044cd5d2735d32d2000fac3d5399c7e7cea99ab2f59022264928cea0a99358aab85a417df132ab6e072291b1e4c870dcdd77d218382c99f1d8ef2b1f7d717e29b4711e5b3c92727415bdf1a078ee06121501b45f9db29da2ed182f10680ec5b804400e08b21328f80aac50cf2a035f37f1ce5fc263a134aa2180bc0c334db7671f6048335214b0d61ce5575a785a36b7bd9e5f3a70fe9dee21d471abe129707a699301c80a7e3e8d3963e0ccd1906f0e5f1d4bdfa169f77d3284880a5cc7bff4d0dd0290d67b5d1536af7f6bee067291551998dbdd1b86ba9b0404fb425d92d49e0b57de8828bfce172215a362108c7d74d54d1afed3418ad8a9f9c9136a884fb62694cc5bd9201b0477ebe48f46632cd7e457ee565c5b2726ac8aae8d670ad938ebac1ef1b22c63109253cbbbbe7769ddd4c8dd31b288d629ab86fd944c3e1cbdce162074f451f11760d92b5526f3c3d623ff401f157e8aae672a2d9130ebc8e685bbcad9d13797f6334576336a3c4bf630de788cf78364222fbf7a7ac5f9dc2bc40f9a6684cec7837c8e27340bfc0b8f3ab145ff05d29081b1b897d83110fb70b48080d607c8904cd7219416f1302977f9a9e9d9453ebf72f77eaa07d32ff849f454fba9fec2d6a0161c5ca013d8375fac3eb0e05f4e80321198b836fc39269cdf144c2bcab40693e21ec4b72e4504324d3b5b79c33383051c22b7a45e281e167c9f31c9a6792a35d2561ab14b99f5d085e0afb8f39417e6d5acea52e9b775b190406ea8aaa073d7a545fdcc0275cfa88eb86643498908c872543cef6d619758fa4494194f8fbca9fece75d3fab4ef1f2b3d8bed25a24f9ce1a6e933370db58f356ffa7569625262861fd802c9fb1ffc0086ae337e23866c39c62e3f415456283108771a620a872df1f8386e1065ecec7517cd7dcbd742ea74027027a31cb3c0171f682db7cca7ffcb56337a1d18b7b77266e80de28313ad7255e302f90bca98151aa50153893aee90447340ba56ef1a1e66f63948a07ccf9771d85de41f48bfba9c49c7af346c0b9df8dfb027094d9f0394f0ddc5544f2dcafb372cd437660b3319b4b4a0357f0d439eb267a4fcc5f48159918ec51b2bd50726c03d37c49e2b15d79cd2e99595c9d35e7d83e6fb8e40fd6599fc946513f8e9f82846b244841956066589786d73699313eecb50934520df509a9a137c634934c23437064f7a90cfcb235095ff785adaeb2270187b606ceeb560f009bc7a9618d8bfd0c4a3f4dd668b4ee6cf574bc410359f58cdf5c51a758179a9bbade8ecb21c04ab0e1ca047d1ef7ae40cfbefb64e5909085bc4951ca1ccbd7565f893ab3217d5dbda881a5228519800703e8919734f94d3450d769f0b9369feafa19a1a802883e85b6f7eea20c04c4c816d228290a324021f00d3e0cdd4ae7a71a8693b48ca9f44cc60758e2d8ba5daba1d328b2852ee1d69f3c30ca653ce38fcc56deb6e5273f20d7bfa9e67f752cec909808111cec0eeaed014c9abf4d1138a90f17d95cb88853630e8ccfcdb9e14a0fdd68634d6b4d0762b0c8e5dab1a40512b4df5e3f9dd5f99431455cfe75848f2e28977fc4f87f90ab01a9f58ee220aa82c56719b71640bab3001a292c4864fed64b436bd75aaa2676357cd2af9e3183a2df69b0b272e91efb42ae0f29c15ffe550b9d70bea4d254afe82e808918fabde7e49dcde97a2c71b93973ad0e5facadda6e5ab75bc8287f1cee1608c440d9be8e455dc10d650c9338e4bcb3ed71fe557139266d456203a7efd0cef795763fedca9eb9d172aea60d37a640a896d3d8cdfd88e76b45487804b5732d0ae872c0d26825c85fa41e0230431e159e9e6ca4593af9943b37def31bb03ee014b28dae64a563f632be7926a4ae6733c930adef1cc9aa15e6c75e90527c1158350ddb33791495215a2084b6f0c253ca7740985a44bc0bdfa4e7e90163ff3f7a6fc9de93eae8552c283ec157a5bb85d383d8c6e5090d8faa22dcc6217b12ade425a1b676be560835a0e005cc128bf50c7e1190897074f7890eaacbb7f44ccdaee55d73306b5618ba0913444033752435354ccfbfaf124a314ed28d9d9b481258acd22cface630db5a5f2b28cb8330058a59bec320055d9fd7e68e75c2aabb9d01ecb762b76a5ff80e5d2c6d4730f75201b263438d40b3ffdd961f0d4ea00e5679b9b5639e8cf3224e5e72e8c3ff13bdd217a53c8f2ab4f6953193b6db01747a345b17c089a8e4f3531ae0286b2b284dc517e2f20902d3adcd4274e51deb247f4946450efbfb95ce2957ec448a1974988f4aaa4254bf6659cf9111d1d81946475eceea7a909e562ee414dbae7beca0a022a2ad59b52141574d741a2ceefbffcc7b0308cfa7866c03ea028d807588c665d274e29f4151e7cb6aedfba788a2f01666485b4cbeda08a27987be7371ed2cda43d1dc58e70f33b181b87dfdec16db6bdd738e037d0578aee8394812017453adcf4f12304e5fba06b9338278770b449f8be2a2e308a3f04cb2b76a5b5b2a85314dc464f0f09ac987f2f013ccc4efe8b690d82a286a716fc8886737308bf7d1f9a2f41f5e7049fbb9d1f1c989c2b05d4588d22ce45d1030bba2f587ace847f172cad2e12cf13b0672fdb04b2f401d497729473ee75d6bbd5ca2c50a6533a7ebefd490830f37d24e18c5ca5b186dfff5fcaa9988e96acbf8dcffaed95de3df897ee13b5a54d927e86013cbc0b5d4e0818f94504ceb9edde24d0e0ae27540c774f4e564a3cc4ba58b6ef8f14f2818df31cecfbf4767b93b81758a64f9248182970f58a0164098a5322050be14d0b6f2ad865583ba3a2be1ed9f606d2f716d183a4d2e5f7a89ddb908145a66d05d71d7abfc1720cf690f6f15dd3945b9612754fb0f3b1f43b13b6274e11327b005ff2043cd5a6cf5b868376ff8123d6183a8e140a112366e3de276f73bb686318ce8332b483fb12ac0d21f207ce484d24da81f7b7c72507da25a3c6895cc8009e461e79678c1fc0a30b60e2fcc3ea8f3c6d69ed5d8e1f701f7b721433392da147e476c883d88a8f8514de6b6873f898586decde0da75f655eeee8eb4de316f50047d3ce5c361c95bdbfb096b342c874fc4c151bcd9ff2ee9c95ebfc291820a1ca0dfc981aa98eeb5a8501475f978a2243aa870ba4b39a0d16887b25e9c591dccbf7ebfd645aed4f381acbe470d24902cb8b786b0ad03c20cbed24120f5b6bbd3a678e83a2ba23463623826d3a65f20b1b9be1e91a106928d15097006dccc1fc4dfd6b4786e6612f1ff77a4903eeb0dfd8cf4f184c8ee3f8a9d51a74955d6344a180967caaad7e8cd9e94aa399015718d8eb6f5b01c2fee60d46632539111c2b29ec09d12d6dad03acfdea85fd9fccdcfc033c646479ae8e6f0550bdd55f5c5674b731cebe02b8acf36d56704165f73c7e84df8e81e2b8bcdb84a8cb94cdb4c68ba77895dc777fe876e4daa957e843d84bd10d51da325a5054310dd261fa4b0cc6cdebf8f86a94fcd2a731afe906675bee3b7223eba26c38944e74325c5c695bd6d086d32fa2bb2c80adf6684781ee4ace761553b34635f6d4a64b8996a2dfcf8875c8d58acfaa6eeb28a01809b7f4a7f39cba049604d0cfe06aeaeae15fee4bc1c2a3ddbe5e244ddbedc9d2e7d626aa12815166044be3327b760a5ecb3447aba5d1763fc56163dbc4ac4609e3ec85336b93b499a2a26ba034a2868e06484d7837e7a6a09889b715bfd2dcf3467be67b8548a074c3106f798151bc11a8c7b2320388ab14dd6559f0278dd22a7449e280bc52cb50e2740fa049d8db76d57c52aaee79daf003404129cffe0e82b0a74a15eb3813553f4198e851abc5bd8727cca239a9b7d4b2fd60683521f9e77014920f569401aae0d3ba926892de7dadfe395c064fa6b3d33e78ea949b92b97b2aee5a334244172056eebd60f51a9258f125752f51f3357133cc6f61b8c420b88605c3bf75b8f58f62bc77957742a85180fc85f0dc28fd4ac78d295cd19fd02bd68e3914743ba9562603b3ac0acf1856948800d6f2aca407feb9116fe995d5dac663f404df2a7fbbe7cd1831a1d522a1fce5c4e4e7955a56c41d47ad922655758672ef3de457757a1ce0490a5bbbd2497644a58e972df633bb63f06c8deca507597a179b758378632ced767ce0e7ed82339e67db5c692d692a9f31e6e6639fbcb8f51f147e4ed32716403a913d8f64212f9d2fc427d7b33a2e394d76ff8dfb9516f6a8202d3470be8941d6808ca170e5fdd744059043920a7684b4b0d46c00ceb58f7281535b0ac3145ce9e56f2dad6e7c3ab0088b508eda0359a162ebc6734c22e50ecf62a0e28e9cd916963606a623cb460e11013e39e2df4801fb9a02291a5a53d22cecbeee3e4400e18cf98567774c989195c0fc4a1945889e80decf9eff49b371d94bd59f669d8326bd4f30b08187068833feda0dc929223da0f80cf474d4b62310d9f49fadde680287c1e55c8ddfce17eb8c6cb2f4d893afe09a6e6d4162983ebb934293674de17d792592318a4c9303f00efc4d16e633b316bfbfc9439e51673c38924f8445422c420590c55a1248f8138bdfcf193858064c7845cee1a15cfe5c55d36a45b892b3ef8b41c61fd1bd2631750d29e6a85f54c175d1af1e5b364c1a4f7b375ef66fa82607ae6406fdfb1f887a30f70282834e58cff7fc1a101d2b55925465e20dcaeb173f52fff9e4e0e8ba6ffd70429665c3867885d262ca29b0cdf58f222408845d97197b84d4f92db9a5201996b6fb721c5ad0baace1d374370a834ea4c9fab0ea1c1f09afdebbfb01caa5848990edcc979135b1d72751d50ab7d86cf50f6fbe405620b9206b609cf16460cca3975815866fb839cd787b4f0dc48df023faddc8c4b859b8dece648a6e041f478bf4a0061b053fdef6f3b0b345e2311ad54ca2d5209922ee91233dfe57d02316979bdbdaae9bfb5be1310bc200398af7a95686c88712b5104867aacaa50c4d0593a72db7d2a7942c2ca2921a8d84aae7ac7824bd2b49e0db8434d8ffb6c3b9efb5a0202aedab31eccefcee473c9cbdf6d65aa933ea9e4984277eccda255157b161ba628b35ed4b864672050f5d48ff00a98f22743dc78a928b99a90652b178c958de73568d2e475d7e6f97af5315588800587d184ede6310436fee9e36ec12e2b54f46bb1334d1b259dcef2ed6fa5098323cc0c64b014c7ad2831b939ca7e744e1dc8308977b8f5c5ad8a4af4dbf1b65dbb45ee691b453c17ad1f3adfbd754e78e63b4e3ed565175674d58b0d214a0d5ccf4ba0a8961bba009f2d7e66a1e90445308a67c39a6170c9341cb9136ca20206ffd9eefd10e2af457a2e71b836212c04370d2165694a994113c950e309b21a79219caaeb5aa7fbb06d175ea61b87663d53ecb1fbc10936781d1a68f985eddd1591423cafa280badfbad7e2e785c3a874de905022a9c36a9d0e7685c87d638717cf762b2e19f86234aa9799a5c1d62d99dba50052cafefe64ad5af53347a6aa856686cd95e7ba2227f8cddf0baa055982fd81555e2cd5ea4ceec9f0e623f8c03dc1c8defcb2267fff1a4155ced3567c7d5345f97ca79efc6bf532fee895b4680fea37533f061168a3227acd9144746e62eed9d4b8427fb5e33f5dcc218cd76a60d5acffe821b4caea7b4013277ce3a86113fde0d693d341bdfc0b06d5925a4877d3ecb984d17afc572d0b5d21ff43d44957096be53a2390c7067e0d67bd74dc2c3fcbe3f46d547387fe1a4b0ac71fe1cd9d84e99b2276502000c2d54c30a3547a22c6ec0f7547edb8e8155ba55dbe5462b4981bde41a4412b3a0b01fdcc2b818624717554ce87522c1b0fd498476f3c28859dd2f129e53cc4535b14d002b9d4a5e141a7a200f4ab835c08e6755bf0dd485b2de0fd03367a1fd47bfea6d28b55be9187e21f47e9131d250784944e58348963d35e217dac6b226ba6852a46da0d56af268e43911cd8dd0fa5095bca731d6bf8ae2ce1573bafba4830b9191d8a1db97f46eb647e3213e0898a06cd98bafd5b38b3353b5ed98a516d73a4669177b026308b649a8373a5d1bd09dc3ec79cfa900cd8367bed47c28109d42d790e4b204131c8629f6807d258b42ac65a53b82f456862e9519c2c4989c83f00b7c36ffa15c8e3652c3559c8a273ea16cb404ed29f19cdd6c38e6cf3663b6ba537609438e587458cfacbf33ac9841c5a1ae072aa0f5a8e68062e1958b5abb558182a06a6af7febe349ec6563514b1ddf7264cdb9a80dd99a2a145b5833a8321d4f26d676f29e5cd7f0f6e4dfaae6f305324ab53cf8df22858c9988a724aa7be1d6ba989471155071bba6c8bdbe3f826c6985ce5976597aec04bde83f76419f9ab5c3a1124defa733c6e775237aff4ce83c59226dd5ea5d1f94d501b68f4e5bc271391c11aa19d0d1cd634c8b4c338c0154bb8af69cb147d8f14a9933fe4f53616dd968f5932f1dcec64dba96c4bae1c2bc7f532a789b3d93aba3b865f1b7b084d0a930a1bee3c1cc947c73d24854821554b8347861a18bfbbe389074ca795c751b56df159efb30ecc72b2eaa33afb11b6bca6d049ac4a6a4e12ecf38cf845756786da9472046f1e66967d09b45756c20ae6aa9ed1aae545c1110afadd17a288ba01f84626ffc83fd142e525b8a7a52089430bfbcb368b3243e32488f447b682332cd6e36e7178cc6b322ce49fcf4a3dae405a74d1b55bb5ea98edfe337da72c504e3b19854181cf08e0121bc4867c9596e99609126a62ac1829a6700d5254f64fc37691918144c94c17208a23c8c075c78690b6cd4e507cf802944beb300f95e6fd09aa6951e52b7f846d2e7e6d133f7d6e567369073883692a16f504a9846b9dbd43fca8050686c1ec5095ae339f9bab411d317632cf446fe16284ba93afc689d67d72a4479df54b2183ff4fd66b1d0448fd710196eb71d5feb3cf79985d0b43d0c8fc05b7562e218f0fe340665101534289b51f373fdf4ac48f2f1065395d3d39a7048b0ffa406830596e8615729f72cdeff2345a38d97e4445a844a8032b2e40891b6d61f7289f466b586015fabd4b04cc74820f2948a10a0dc82298134eac93961cc37bf4862030372bfad2fb932955fb7a2f478532f2d859078dd6d82d5554a5f2545a13e7f6dc6f9a1a9a60ba64c65b78ca6eb8874f9f29ad69e92d423fb81e683b27ab3803da8db1ffb66255b82896b46c5453ef218a243105f563ae39a9162a3ad04e0f6f1a70091e6e32d637bac958d56ff8f2c0174e0d7b6db7b11ce73161f33c388523325204f598d29189913181b1e65aa601ed1c1a97322cc668cfcdae368d17d19bb63d5cc1e73364a0b7542aa189791c454a2c947dfbe52799abab46546088d33a1f0238b4d2f14b52bdc8ff1be19bdd4885b6b6e5a1d6870ba9749880944a3dc48fc50d54731d1a519b3e7183accb16d7b2b85519a87b1201053a6b48a53be31a9a4d787e5f4eb0dae18ad709e6db2f621681a6ca2f7296d43dc76ab68cb54a279306c14257bee267989c0ed43c48fc4932640525c8756a21ea5e3bafd920cb44dd6249eb27ba2008d295b4357ad6bbf6aa4ff82f9ad25693845c22fda1358b8a96d266cc0d69263231d799c375c53e7bbdffe2cc43c62f7aaaf45e70a39bb185b35079d7426164e2fbf08d99c50a4762fd043054b68d22a386ac93573e9d4f7197ab54b19ebefbb180f81e4b16f1fd629be1db6bb8d594c0f53d283a212ffce5962da20e72943dde9856b1dbaabaab6786a0b94335e940b294974c414e36ebf3261d19d7c66066811f1c47e476e8197b0fb38ccf63def9cfc7988b92d1726bd2245fdcc3903d2921aad4acf45bd00f3210b301ee73dd3c65ff44f2226fa3b3fd4a16b066bdf9b2a5398b6380f5fc81399ac3d60af028388e25c8d6359b150fabcb3dbb8d1bf6bc07f6c4ec23fb665690ef0d33b1a6e5587dacbec09452ec515c19729fdf59ed82e4afa0478a85b6c5754d81c9d9738ececb16e3b943ad5fb294b660e10c4420b5cfd4df5e8f980b72efd18bbdd07c249e3fb41effd675703b5fd5fa5df13f82058287f88ddf2d80a73e4d29d88fee27a251f686961121b8f109a9be30899504858a8d443006356cda0c8f6ffa61da17041c61dd0bcc85b71daaaf4eb0d539a832f0fd186e07255b40d2375c7ff130e6243eef41cc496b527331f55216cc9f1502d00f708503934ff62569a5336d02a699431e06d959fba523f21be7d2fd309a14f461f4184ae1e9d337ed5eb09c959ab40bb18fe788fa7e8360a4095a8afe9d9b7b68132204b71ab8696a3196c3a4c6df94328ac30f15878ce9b7862038ae7d1c0309fb0b4f8701eb47ef1de464590d0040b2b6186c93476b7962ed9ba42f3662ca82c991172efa22145870233216eec5bc4d1c6d1e09f68656f37b891760a5514fb59fc90992fde4f0c6a73ee54d3ec5d0710e31520cf3b80ad07c50b5396ed980f18f971b155aa5f43a398d9a666a4ef4e645515066f57ebff99d7ddf427e94e525cb3c7a1602ba3d90e3eebc1d1fc52cbebd536bc07948cbfa9745711b31a705c7ab0083e53dbcd5d5f2249e3d88dd5f8790758082832abd98cd255bd99230154ad5493f88c27266281015aab348e2cfe31be0031881d4d4a0d787a5644d8724e30c46cb2aa8ad425f120222de551d919658013f823451955d0efbe2ce9388906ba2e8c4908523f051d161bc526ffa80ec2bd0dac7d561e7fca29fdc97b3055d39403a58d49309d7430406d396501388f026785c4d2276278428b28212a77ced2b1a47dd062568fdb688088e167d4a9c080ae7a3e0da4e0bf148c9731c25ccc7d86e3cb033ff8ac780ec6b80867f57bb36602b40ba9ea25129baaede882d828f0b6164701ad4ad28f0711d7cf20763f00f018a314a198e80a0991a66cfc21753d11d526e091cb513db0935d887cf15ecd1c285851a36bbec7f079a2827d80493d794501ca304e2b1ca29e3913cee7fc96d3f5f2d62cdc62801ceff05d8c42bf86e05fb045846677a8f739d5959474c834a12cb762272b0accd97abfb582c8fe283e9ab56f7ec5e793e4bda599df4b7bcbc0281f539fa5da2b8a084422dfc15e25cd3864c9ed2b35a687c7ee1c2941a4482f93e6ca29349bcb34f7ecac531cf4b6f3c705bf4ec3097f288b6fc976d537a2ea2576b8bead7044f46316c15a2e86f8f1170f0f78895b10b3fe7e69992362fd9dd1c6d7112db20fd8fa88714557efd3145aff9cb9ab3dd968caab9a2b1350e572f885d5ef936cb6e2b3e3bcc339791c64aca3e9b6b6f53c68c3665c62a9bf9157188bc183f609730ad45d7ef4bc07586604b5a6f5c4a5006d39d4da74758af4aae7a7e7d823c2fc8ebe2ddd1afb643711a9b4a870a3b1b10084e8ed6b130e0650cb63af5c2e738b2c9872f997317ae6e5463681d80041e38f50fb92d0ed8917e87bed742257808cd6010a219cec179df5c058905885f595ae81cd168634e65d50ddc3012292eff411b3540dc56193772021e9f45b865d643c5c4d24cc5fe5d4d06b7c328afd8be7fc4937b1a2c244fddb83d823f722596d21dd07cd65a7689245b22a6bd6953e67308732e1f4fef97d995a782aaf6f6c0f88e7c8a43d673673f19752503251e7ee8961ce4b11efc8e8f73ea2cbc19127d0349b4f0b36f36445cf59d8e89d980d510a0aba670f923ccc93b73ba80abcd1dbe6dc44da3802fc6351feb874f2c5eb0ca007c53569026fb5f0d77265f0233d6d31842301cd068e36c9d45fdc05ab59c3e7d3626e2b92984fd23e05ace7cccb479d922ddb226be742fe61aea59d643803fc6dca657dad43add5faa2736230f0ffc5563078af297101fef8b17b3452a5aac79f0957c0f24ac3f172f3a8ad39bec215a10c612df7a0b25af91560c0b2a24433a323a1a587ac0d1c3074482ec6309e9c49a85dd40a426c9ae7b7ff8c8f8d1a031208a3dad9172924bfb5ce9a2ad7d374f567a5d7eeeeb5c1e7d9a18de7334576d1881093e5e5ed2bb8458f980f88f53067ecb2ec5639b017cfe8aa98f8b89a962b8f3167b813141ca899b40f2d7e69b995ea87044eec8d79427023c5eae3487eb7f89bd0e4b9f5094d74042f237fc4990ba6acbcbe12fb2c539c9e0371c075e661dd32ed321f5c50c81bc9b576285e4e2d5d2cb933fb6bfc05f5cc30442451eb80fcd7e173cc8c609dc1e28fc72aeb8803af44f726178c89d97e7951426242e8493f7001203fdc2f8b057e4fce0ab849878232b499f21210c2610893934d4e866629328a27d4f9a93bd81d7d2c2e38748f2175c94dac6bebce537689baf50be91f8eebb1dbbf276cd2d6f3095109c6ed710bf077589e115357e480e69b3b219dc3967539c49f0f8b2afd72921596bcb0df9e76d09b94e2059d6f30b3e86062237922f643650864169d1e88bc90f8f5bd82d1bf439040545bdc6a2ab60e48b9654aac77ce69ce8d9b6f2714a977ed2d9107576a10946a73dca050014de5ac5f32de26ab08a8e39cb0297300e8a5fe15810c473a5e4857599ceab07aabdf96a31881b609fc5910ae5941392ae8c329002e8211872e0b5c426095260f94a294dae0744e40f674cfc0b806635624d56d2468c0fd3bbd4460a74c269be802dbcf03a7b50b7060ec3542b6ecc2d1deb3bc6eab82262f454632a3b47ab5e5c490f3d3922a19f55d8daf99dde93b32f3dca8f3657c2dd35b68edb3e3c61ee939110b12bc10e3c6cecca1ab666dc977ff2de237e6e19732333206047ac4707a92c6f0ceee7356bf5a3989dc8b3e2a4fb7a1a80b769d81802f36c7646b7317901f1615885b859829d603e71c1ef7239361c0c23cf1118486a5ef04924e011bb5a57eef2df1a7df77b4dbf72db9c591377f331fde5f36c3910e96f23130f120286968b8c64b55db66d9f966f1c4ba764e218f9e6fa9366a1adefb91a9c7443bcd746f4d27f24daf0e24a9f336c151932143b490b44a16d6f3ad3ddf8ba6f14c0b4271d427c1412fbb050fd678c5276f27d1d979e7a03a5d22cc52e7cf2d783262b799e469b8f9d59b3733e5f1b9907c47d0cfa914758812bb1cd90e3d28f9e2de51210ae3e1e5ea5bb1b7d0b5655ae4777cecc3f077b8e19d95400928136abb9b255f3a108aae9295f83a08864c268b2f742c8dfa4fe39d2d0ae51596e0ae1049a9e5132538316f67030f36eac392a50f4506452405d241801d701f32e6b08559d2c41ea67ac1f4c9a8227bb60ba23916cf6143edee97075eea8adb60ec0ca1d0ba9da93494ff699bba55d2a67de07a287534368b6102cf3a81e69010f31d05f47a380220dbda703860f13de394a9ca0115104e423b9a9e3fb68d75b270c1faab6d77926939931c153c62b4fabe7021f29476e3eb49aeace4d90fcb7082385e9d3e74601718e4916fae744c5d1950a2c413d3f3f89f7146323819bec161bfb8222dfea1cee3eaf1bb2d234e46828678e128ae05668656351fda2059f749dbd4047d70e74650ae1fff74d33b8bb911d160bfe966016b020227ab8e84f2fa26fef6f374de34e78ce6b452029c5579876f7b0b4560c076e5d898cc9a7be5ccb9c8fd9fd5e4e014c9f1089eb551e4eb57ee8766aaa458aa30031573edd0cd5b2d264fef5bfe23f68d5f7cb0191c0e8f39736f8c877805966ecff5e90e7fe7713bb4612ed055e4d82442af69951bfda8257e6abf3e104e9e68b9a52f4a52479467ca8fb0ff632709ca0552c2579ca234100d7bcfe4a71e43f749383760841ea9832e90ad21130e28d95b8cb1ef9ed47ff4c97d8ea5c789a5c87c1e9a4509eb18a4df536019aee40e068647cacb1f66edbbb8ace661e79bcb1cfee09e6245778291f0895ace03e3cfcbed3c527eeb24ec13c69a59bd217dfdc1967db8957c719836d3c0b22c6e797bf753d51054405811d15dafda1d7736b21f68215a44b9543a13272390e9c38eec5872e9364a5f4b458bb846c70195f1326b3734218e69c88075a6584425e2c785e1caf7431a628d9a81585d95a57b9ec1595f2d30def9972cf189d494abb454b606320020b89d56085150432a0cefaf14049934222819ddc51161105fca82bf900231feb7b24ee303022df61d1c0abe14a23d875c4ede5d575b5b17823c1971371a19a2d7d174d647d513bcd156e3230b103aee445d22178d360821486b8abb8b00f61785040469c8b6df878171340a075736d0023685802140c10dc4e5b41cdd86096a8ba811b3f7dd50c65e92009b824058ab072cdfb09da8b002dfa1e59988f392015fb73aace28c024bb64193018915ab4b5f8e568411504e04804b8b18a69769f53c7894bf8f07b6ba65a74859b60b216ec18d54e0a0e1700c268e53b20db9cd5ba26d27429fafc45574e5b4d6e54cbde25a911fbb7fa3b359974ed123898cd8eb34729980f260b3b68f229a3e7acf7e4958492deea58304c30eb123fdc6e1a6a57c920b814366fef83a575d9b2fa2ae448055cd1057f166ba5fe2983ed6cabc9ed2684d4ad63321ed013a73058cb695ffdf504476eab0e32508693a9475ddd4589ff063c4f4ede9c55267137503e9ae985c075a725c4917f16a54472891ebb3bf459cd33b6082f86ad7ca2fb36ad3acb26d9f772e3b4c7975e30d5ad33de8e968be37af68b49dcb692f7cb93db46bd4f74bcfd9b34be126502164404d6c3b2e0be3dc445bb7af688fd57d242616b7cf7004e5efb78dfe1184825bf65d1dc23125ae608eb0b3dd32ceaf93e112428d5105753bd3c09e580d3c2e1cd8b3395ba409dded26329e26137ce987dfdcb0e7266902c5d894f7bd84933da54ac50975babce1428cca215f17786e1292579117bc128a4e7c0e97dde849a239b118e8c7c54e6c6f176015a87a40f6707f3a08af1afe7b4edc695df3b09560e902e21b111c46fa88caa7b0f7ac41f5df5e5962665ca938cd00a53bb6e4826f2925de400ed02a23d58eca4594e2d0a9c69fe1b61b3b6fa7771b9b35bd267bbce967039406e5162f6965272d9581f458c97311bbad7681ddbc9bbb994225dbf696aa0b6d912c41cab6c6969e15f967210a6c11b50525eee5359b9201482270f3c6a65cbd6eb7c055d9c9e9329cdb7bdad761fcb2f4bf2ea9c2c3d3f5eaa0fb98ab3f56aec8009a4fcf0608a0139ef283d1ff357aa25e063c476c3356fbe04ffae00dfc5da2f1d5ea159e457665fa14d872757fba5646ffb6177959cff998d251f91cfa8cd61941bd7db2598a823b7b38c92e6513b8a865d152e0b52396b30999549476a05a934028e4d48758dc1138714a6293b56dc037cca5b86be54942c452fa240c18648a31ae2e316487f830e12d836b0d48ee6b5730b3a4a1143feb993da7f84e4178bb4901a1ce7b2ad49e63fdb898cb7d23cc0708399d1a007b3c7e06cdda45803776d05f79e536042d63e444b199545a84e503be5bd44118d2af625308874df77893f09fccfda601d66e365bdf7b9e0496d9c224cacef9932864d195e1d75d49929744f2d693199dd51f696aa91e6d9b1ea840989923454234a4e1f7223cd5e79fa218173b0e99b2a1830df93178d4775c4dd3f545d45c601d2e048cc3e272d4fd0c15a55cce1fab191cbcb3b6e79dbe25d950aa0af5b2b2f04d7d6e83fca5dabafae1730f597fa91985ddbab230d85b91cd6a8da3800289dee025a76204bfb4e52dda86c7e419e3249790c6612768b03e01dabf633e547d7d5ad2ce8bee4481aad09d287f56b47cc2266c045e667ca47811f0ace17472169dd9ed704dfb91540bdb81f4e1b667d1ac414f58bda42441990af67011045af6603bd3cfee94e79c94ebffd71b081736d1e6657a4cde9808c52e5d93f92dd551c21792d719077d87749ba6577a260bc77c8bedd2961bbcc370efe963c689038f4d4b9423c959addb8c318cb0a80d28be236a64342fb603839f0c1ebda1507643fda09224a699f3ed188b01d579b2621e1932424f0f991382d53e69e0b74be1eb56a7d30f340769a26a19687f56723c0420c14ec6ba40b60b78aad5163871b1febef04c7e7b49f42e43205aa4f77c5ef9509f44ee5ed2affe3218c332a1259f18fc7398c54c11009667e5c3c46600462b99b42bff426cb57fdf6092ac3f8c6c16a26eae4d0dde27b6d0b8cc6ea873e3b161df905489996ea9deaa40b1c06492da36875ca5f7299bea61999f7867608627ae7265f53d6e9ea1da975a01e1fe7410485ada5d2c173acb11a19876023ce72c300e9da830fc327ef2516a5ac52ad9f94b835d1e680f822177b620bb93429fc15583ea2d60cead126330a269944b4f4df474c15bdfd68315a0b43a05d63076e3ecc306d394c27003714a92f77cbb9f1c183a02831332a52c4fe41c6567927ac9f6a577368bf8b3f70fd6f7519c4937ab1b5bf8da9dd4c174a195c0d3d3ef9703665fda9639959b09cec26252cdbb78585b0a7f2845da26890dc0a7d84329bbc14a4ea8f4bcc518a69c3d0bd7a60fce789ca9bfc3f018bbe714228e2da9255acacda63f6e2d093b24bf65c8114acd8938890fa84750915b5e4f2670eba8e91da2d24c46e3d9e6e4af4bf5e868283d3cf80fec6abb8400f5a8fb8601b15079967fb6d1304a7f97b8871896de6b24950e5fed5574794e4af16472a0e651328385ae5461163f4f998d9a1f687a04e929b4a26d8b0aa9a6322ce11f5d9c3194563d4617ab013dcb7d95f2f5382a73bfae2fa36eb61d35d65295eff8e25077267a4c3050ca70f763357f524615ac2064e1b0ad4f7117907404e9566183371265eb6c4d9b90a9f3c11fe76ebc94e21c8cbf473e2419547e2daf6ffd1178ecac433531fbab9f9b8aa804ce2874d02e88c20bb1714d47875df795543de77c48026ba094e97c95cfd5e5c927a76362371f498f77d97b07fbe3110fd806a890cba82a6f7892290934dffb10cfcef357251d9528c7e96d741e09e6c216ee94a37c077612780e0b0da50d45d677e84ed2a8cdf1c2e97df9ed7e24d5d1b6972f836af9157fc886b5f3befac8306be3387c3b724248d45cd1e35b18111a76686d19d7b9c5e56ac9588b09763cb77db6e39824a7c86317fbe5fe1056a92c2d220b8d09e4bacfa61f01491fadaa4e5e741efb49c26945087bae17468b7bcfb2bd7045d672ac37def10ed0c986f9a03c95be280e0a286b01eeba68a66fa0aa262f439ea7f4ae800a4ad461285bb90fbbada9824a2c31218d1f4e0c82c97547efc08a58ab78ac2517e32ba0d0e335b8dc73ab1f2457b59c02ffb94279bef9a71f9bc7efe79dda1b5e0dd0de2474168040159ce9cda7ae586c6798964970e2c078eb65c0fc07890c3bba8d31a775036e4d0b95e560c9f564a9c68c6ac259ed301d4e099d6e9e3c09b6381054cf98dc88803b443ade7d96b051bf95b36ee5c84c9ee3787229ff1b0130a3f29a538d23cf1c755427da63befd66eda6cf1f54ac75d642051efafa58e7179503f9f48fd15490e41bad426218738287fefe781088e328df750eb1bb9139b184c04b291306f4d71ae032ad3c33ccf0214e8e8a59155ab510460bdb0fffd87064f9278e2f043e2aaaff984c5327b0a8f3c10488dae57e3133a58cab7b4e7c854f6956ddc4b9f558d5cd4ec45adc206adf31a38031d6242c0aefc6bd35ce8ef65af371bece12e2cc129b8e93d515beac9f090a83895593a61ed60f771cdeb2826fa73d196a5632092b5dd6e6be60758d6e92484dcbe3a3ad1100d3a99c475769b715845d2250a47d250323da52b8135409ec3b226c9ccef378986eb924b18078acd6e32bc2a3e20958bf9f4f10c18d5a09c4659a7650496c6879ae493fc6fc06379a32ccd2aac0adeb704169c47d92a4ea13cc9857087c0787ff1f02182803a93f91d30681ecf9f3e329c3ee6bb7901c54750a03a2672d296bd5b1ddf5150560885205dbc2f519004bc4b8ce78f5479b82aca0fb2d8e6f83c0cab1d0cd961c0252887129eac8829ff4d74fe5e81b61f80d261758fe21fad20f0d558ca543ee5065d7341e73b0335ca74e60588b6a1ae3ad01479e4d3f66e646293fca28883b820621175483a54009e990eb1c5a4fb4c8b79ed7c2c91509711321052a274b820bcb9071bf6884d542b79173b21bfc8c76f3b28e23190fe785f3854816e0a68298adf102952ffdf3e7e986c5ac3e94d4b9e6689fec3d5502ac4c31b2eb87ac4c236f283e21a3a0151e856bacedc277730687002066ec2ec2d3c72eece83a4cbdf4d7217f68e037dd96e5f2a1cf507241035b63185a8e653bc3ccd8d8c7657d5805b2d83ab1714b96f75d7e4f23fbe05e33effc83b934f432511975c18d54567703763a41d7700be3818738869df267b9f76c9fc344a86733b04a1807abaf33db1747e24116fd337a2eb1951ded42bc9d77a42c4650068d54eeb96a10ab47c521b896c8391efce804304d176fdfeb83e7a04b256a74bceb3a6a5640be081319c20ce830d030f2a7413d60841494ab5be9387fec226b509b1cce04e0a6692f2d4ba8b1b19e0c2f82cecfba7c41704fd5385bf38f5b4b35f197324bf96d9432ac011b048f691ca8348e0f693c8e2acfe01be13132db0a3365ad500619e77d2be596d6593fb62f69fce25ba7333efba33203e513426329a249b3e332ce89c512f364c8a22485fce9c54677681e531377829dce9c8d16538199cb5a85a3eaa5489f38c7440112fdd40752fbcd0c264946810bad4a1b42aced317f84d78a6c0af7c6edb45c20d66743f6402575597b3e01779f9d65147a615d879e0df5f9858db2ddd33a0cb24d6866e9f2d8c469f7417ab3ec78bb007efd2c2b6172037631304e611f4b88b72e670e7c6030d9496352ea12d2fcbb86b5b7ff8eed69e1ea9c3018d7ec41ff2106981ba678c8335a0151a7440270efd36953680ae6e270b1651b810b172a7ae338fa39eadd15fc50954bb9464703ee15ba3a8ecd70cea919f05146b7693397e39bbb4096505034107d9eb02c124677b775365818a2a459548bba814e997d9637412a2a064e61349645a1d368d5acf4e80aff23e5a12b0208bc7bbe18477cd5e24040157723c428592ee24e476845d2bbe85f63a0caf4b46c3da1b9674f3ba5ed06c61fc29a0c41d0b46d191a0beca7e8c6441848152528fc4c46234c49e7f1af4682d2d29842ea05c2b2dff909ed60387da03c15b07380f04faa9166ede50d87b92228a3f17e20d1c0bf7a6f32ae1499251b9afb3fa69fa150dbbe8a306f9bfb6d963461a731075c5d53e6331d31e2c1e38e5e42e5d410f581009819151926b3f1bc4f10dcdb68b8fe6adf983e21783e7178bda0330d03fd7f2818447221d1fda4e09232d397525253042dcdbaa867b24fce8d4dd48bf91994f560409b21ba420ebaa081b64a0a6059d065e5e232e7de99e35f4ee7441c74f6aa9f70f4056b502b386d21ee060fc49855c5f791ae3a6a0accbdea8383459c6fbaa83f03723dea1b735ac53c166715592548fb045389d541834fe749fc24d76ebb4a1f814c869ad4817561c921a54fb9ac3730fd049049f7032af0810aaee8ff6f1c464d700b5b2444d162cbe7e4d4523a439dc9ffcfac51d6f85c6a7f5737616c54c18e8e237566d3e88f69c688a85c1a7436f425393b3acc12d721801c9b10388d0968dfe50cb6d52d928c0fbb1554771ca782923630cf67815289297011359d8f1d6d76568c0b0fe4fc9e3ec78b562ce8f3d2b168ca201eaf4021ac7ace9cb1c232753c01743e149d879c76bc1b58cfd026758fc299106cfe0432489d7e919c9152fc1e381a57a5073c4dc7d1a7c0a27019788c2f4aac74e37f0f8871fb8784eac9cba9f94da298fe4ae0153f0b5eedfceacda40ac7d6bb6d40ff631ec05393afa6d2711b37716d205ddf4ec6d4f145cfd8a7e2f7ac99ddb161623cb3373312aba7584120928fb41a30f82ffe59e1f11d9a9737118f7b70681bf8e920979a990fec9a70bb6a0ea99d3249472d8035837eb71222d8ae1e314e1f83ae40ab3d4c9df69264e919770cc95321a26e6ff65349603e77ae44f4f5e3600dff83a2942bd084cc9f066fe4ffc950790732a405b309ed24e9891e456ebe8e05967d0f959d12869b749a09a5a254350ae47d63d83b9c2f26012304943cc12983ae4e5dc9da28e1427868d0433571ea86d45457af31834fb2ef3196fc0806da2f25126509de998d2017c11fc40f1c6bac1e1600964bd6c1b21c2a9253acf1e087b5f782796027ebce240319ce78b0b7357c38c42c565edce6557fc013fa2c4192436be0f214d694760effba711003dc620dcfc6aa7f67770476026fe603a49100a87ef115b1293ae00563e4294ecd449b3a54ac0cef4a07f00d03a5b63eb6a60fb66cce0c307666051eb0f49d37f0c4c929c29b11322485af5f09d6f642fb2a29aeab2c5747c8d6a81ef9f64a7a5173d79308dfa3bb1ff2c57a916f387e0567b4301d77422b775645b9327c170b245abcb0b1a9e3ccbac275825fcb27c411b096d14170b72f885b1e8472b5ce6da8feb57737c24ee35350c98577f87548a1e14457ea5e6b867199f73908200f80e2e94cae61bc27d456f100dc63fbce04ce1b9aa5836d71258e688e3d76f3e49d0f39551db7e1ab515a7805000a080f0095bc5c73c189636f6558fe2799121f527e339c2461d606d4e43b98ed339e70a2ba9c028c535227f70c2e6222c73b743189059d458c47fd98ab10ec3156b0a2df59dc013e2f3da9f2be9e1bd2d8a3d2c182fc5e5883b9d3709f0b3e09fa4edb36c8a16bad1d9f94f0766b143861bc48ebf192c0f185612833e4626adb1aab4d0db74ec8b52446e0801b3b06416117b2d907674449eec3973c41996e113d0197e4a173224b14ab0f42cac6bc16788bcdd265b24f5206b1ab242adae991f45abd8345a5e7ac43b290dda2fe332707c1eee38f70ae302e5858a3c5cc395ad117edb00010185b2a63583bc0c95710ee21167f7451db2a47635b642dded74fe518661a33f79a234f907358d21b64ccbc878a5160d40fe339b6fa961fee832646668205f906db59d3845a10272e0e24a51d177f922bb6e7bb000f498e5870c956c3213ce18297fbec4fb4702084aed73f1280c3286c38f02cdbd6a78f5e358cbcdc5be29a5a88700fd44568d99e458d27f6eec8e6848871656aa5b4e304e3f40edb991dc3a4c8ae181b839affde933331c1abe0e69b448b3727d8507dd9166cba67592b30d6228da587011db6c2a09e83b05df8ecf5234d26a641881898dfe1802a4936ddab419a6595eef66c4e171460ea7d43d89f3a0c0bd70889677dded50fc57rootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootroottomcat6-6.0.24-111.el6_9.src.rpmtomcat6-javadoc    rpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)3.0.4-14.6.0-14.0-15.2-14.8.0YY@YRHYBvY9<@X@XX@W:WW@V@VVwVwVn@Vn@Vii@VhV2 @UUUUUT@T@T@T@T@T@TfT&@T@TS/SS@S"@S @SB@R0[@R/ R(r@R%@RC@R6Q@Q@Q@Q@P@P @PPj@OOtNO_6OOdOKONNi@N[@M@MMVMVMVM'M@M>MM~@MwkMp@M] M] MQ0@Ls@LL*@Le3LYV@L;L,@L)@L!@K$@K$@K/KKK\K\K\K@K0J@JlE@IW@I2I5#@I5#@IHO@HO@Hf@HH}@H@HuG@GGG@G߮G]@G.@G@GD@GR@F@Coty Sutherland 0:6.0.24-111Coty Sutherland 0:6.0.24-110Coty Sutherland 0:6.0.24-109Coty Sutherland 0:6.0.24-106Tomas Hoger 0:6.0.24-105Coty Sutherland 0:6.0.24-105Coty Sutherland 0:6.0.24-100Coty Sutherland 0:6.0.24-98Coty Sutherland 0:6.0.24-97Coty Sutherland 0:6.0.24-96Coty Sutherland 0:6.0.24-95Coty Sutherland 0:6.0.24-92Coty Sutherland 0:6.0.24-91Coty Sutherland 0:6.0.24-91Coty Sutherland 0:6.0.24-91Coty Sutherland 0:6.0.24-91Coty Sutherland 0:6.0.24-91Coty Sutherland 0:6.0.24-91Coty Sutherland 0:6.0.24-91David Knox 0:6.0.24-90David Knox 0:6.0.24-89David Knox 0:6.0.24-88David Knox 0:6.0.24-87David Knox 0:6.0.24-86David Knox 0:6.0.24-85David Knox 0:6.0.24-84David Knox 0:6.0.24-83David Knox 0:6.0.24-82David Knox 0:6.0.24-81David Knox 0:6.0.24-80David Knox 0:6.0.24-79David Knox 0:6.0.24-69David Knox 0:6.0.24-68David Knox 0:6.0.24-67David Knox 0:6.0.24-66David Knox 0:6,0.24-65David Knox 0:6.0.24-64David Knox 0:6.0.24-63David Knox 0:6.0.24-62David Knox 0:6.0.24-61David Knox 0:6.0.24-60David Knox 0:6.0.24-59David Knox 0:6.0.24-58David Knox 0:6.0.24-54David Knox 0:6.0.24-53David Knox 0:6.0.24-52David Knox 0:6.0.24-51David Knox 0:6.0.24-50David Knox 0:6.0.24-49David Knox 0:6.0.24-48David Knox 0:6.0.24-47David Knox 0:6.0.24-46David Knox 0:6.0.24-45David Knox 0:6.0.24-44David Knox 0:6.0.24-43David Knox 0:6.0.24-42David Knox 0:6.0.24-41David Knox 0:6.0.24-39David Knox 0:6.0.24-38David Knox 0:6.0.24-37David Knox 0:6.0.24-36David Knox 0:6.0.24-35David Knox 0:6.0.24-34David Knox 0:6.0.24-33David Knox 0:6.0.24-32David Knox 0:6.0.24-31David Knox 0:6.0.24-30David Knox 0:6.0.24-29David Knox 0:6.0.24-28David Knox 0:6.0.24-27David Knox 0:6.0.24-26David Knox 0:6.0.24-25David Knox 0:6.0.24-23David Knox 0:6.0.24-21David Knox 0:6.0.24-20David Knox 0:6.0.24-19David Knox 0:6.0.24-18David Knox 0:6.0.24-17David Knox 0:6.0.24-16David Knox 0:6.0.24-15David Knox 0:6.0.24-14David Knox 0:6.0.24-13David Knox 0:6.0.24-12David Knox 0:6.0.24-11David Knox 0:6.0.24-10David Knox 0:6.0.24-9David Knox 0:6.0.24-8David Knox 0:6.0.24-7David Knox 0:6.0.24-6David Knox 0:6.0.24-5david knox 0:6.0.24-4David Knox 0:6.0.24-3David Knox 0:6.0.24-2Alexander Kurtakov 0:6.0.24-1Alexander Kurtakov 0:6.0.20-2Alexander Kurtakov 0:6.0.20-1Fedora Release Engineering - 0:6.0.18-10.2Alexander Kurtakov 0:6.0.18-9.2Fedora Release Engineering - 0:6.0.18-9.1David Walluck 0:6.0.18-8.1David Walluck 0:6.0.18-8David Walluck 0:6.0.18-7David Walluck 0:6.0.18-6David Walluck 0:6.0.18-5David Walluck 0:6.0.18-4David Walluck 0:6.0.18-3David Walluck 0:6.0.18-2David Walluck 0:6.0.18-1Tom "spot" Callaway - 0:6.0.16-1.8David Walluck 0:6.0.16-1jpp.7.fc9David Walluck 0:6.0.16-1jpp.6.fc9David Walluck 0:6.0.16-1jpp.6.fc9David Walluck 0:6.0.16-1jpp.5.fc9David Walluck 0:6.0.16-1jpp.4.fc9David Walluck 0:6.0.16-1jpp.3.fc9David Walluck 0:6.0.16-1jpp.2.fc9David Walluck 0:6.0.16-1jpp.1.fc9Jason Corley - 0:6.0.16-1jppJason Corley - 0:6.0.14-2jppJason Corley 0:6.0.14-1jpp- Resolves: rhbz#1498345 CVE-2017-12615 CVE-2017-12617 tomcat6: various flaws- Resolves: rhbz#1461292 CVE-2017-5664 tomcat6: tomcat: Security constrained bypass in error page mechanism- Resolves: rhbz#1461851 The tomcat6 build is incompatible with the ECJ update- Resolves: rhbz#1441478 CVE-2017-5647 tomcat6: tomcat: Incorrect handling of pipelined requests when send file was used- Sync with 6.8 - add CVE-2016-6816 follow-up patches and revert unreleased fixes. - Related: rhbz#1397484 CVE-2016-6816 Adding system property from asfbz-60594 to allow use of some un-encoded characters - Related: rhbz#1397484 CVE-2016-6816 Resolving a security regression (2017-6056) caused by CVE-2016-6816 - Reverts: rhbz#1415824 The tomcat6 build is incompatible with the ECJ update - Reverts: rhbz#1347778 The security manager doesn't work correctly- Related: rhbz#1415824 build. reverting ExcludeArch to fix composes- Resolves: rhbz#1413588 CVE-2016-8745 tomcat6: tomcat: information disclosure due to incorrect Processor sharing - Resolves: rhbz#1402665 CVE-2016-6816 tomcat6: tomcat: HTTP Request smuggling vulnerability due to permitting invalid character in HTTP requests - Resolves: rhbz#1415824 The tomcat6 build is incompatible with the ECJ update- Resolves: rhbz#1362211 CVE-2016-5388 Tomcat: CGI sets environmental variable based on user supplied Proxy request header - Resolves: rhbz#1368120 CVE-2016-6325 tomcat6: tomcat: tomcat writable config files allow privilege escalation- Resolves: rhbz#1367052 CVE-2015-5174 tomcat6: tomcat: URL Normalization issue - Resolves: rhbz#1367057 CVE-2016-0706 tomcat6: tomcat: directory disclosure - Resolves: rhbz#1367059 CVE-2016-0714 Security Manager bypass via persistence mechanisms - Resolves: rhbz#1367055 CVE-2015-5345 Directory disclosure- Resolves: rhbz#1327238 rpm -V tomcat6 fails due on /var/log/tomcat6/catalina.out - Resolves: rhbz#1347778 The security manager doesn't work correctly- Related: rhbz#1084426 Reverting to prevent Satellite installation issues mentioned in rhbz-1302761- Resolves: rhbz#1293290 CVE-2014-7810 tomcat6 security manager bypass via EL expressions- Resolves: rhbz#886653 Tomcat6 files should be owned by user / group tomcat- Resolves: rhbz#1155509 tomcat6 packages are arch dependent- Resolves: rhbz#1264559 Correct behaviour of ResourceBundleELResolver.- Resolves: rhbz#1268352 Resolving NIO connector memory leak.- Resolves: rhbz#1134600 Resolve STRICT_SERVLET_COMPLIANCE issues.- Resolves: rhbz#1072484 Resolve fix translation problem affecting IBM JDK.- Resolves: rhbz#1221877 Add support for disableURLRewriting.- Related: rhbz#1042811 left over test value in the conf- Resolves: rhbz#1042811 tomcat6 service restarts will cause a - duplicated command-line arguments- Related: rhbz#1022061 changed in init file. Remove test - in function stop for result after initial command to - stop.- Resolves: rhbz#1128396 NPE in chunked encoding. - Regenerated patches for 4322 and 0227- Resolves: rhbz#1068689 Add option to disable log rotation - in FileHandler- Resolves: CVE-2014-0227 Limited DoS in chunked transfer- Resolves: rhbz#1022061 Tomcat init script needs to be adjusted to kill tomcat - if stop is unsuccessful- Resolves: rhbz#1054817 Mark Tomcat Manager web.xml as - config in spec- Resolves: rhbz#1031327 Backport apache 50072 blank responses- Resolves: rhbz#1183252 Tomcat breaks in serving large files - greater than 1.7 mb and under high load and high threading- Related: CVE-2013-4590 - remove xml schema names javaee_5, - javaee_web_services_1_2, and javaee_web_services_1_2_client - from descriptor.DigesterFactory initialization. These - schema definitions are not relevant to 6.0.24 as the version - of their spec did not exist at the time. - Resolves: rhbz#1140855 - request parameter truncated- Related: rhbz#1140301 - have to bump the nvr to be greater - than 6.5.z- Resolves: rhbz#1140301 - reverse changes of 845786. - Rebuilding for compose.- Resolves: CVE-2013-4590 - Resolves: CVE-2014-0119- Related: CVE-2014-0075 incomplete- Related: CVE-2014-0050 - Related: CVE-2013-4322- Resolves: CVE-2014-0099 - Resolves: CVE-2014-0096 - Resolves: CVE-2014-0075- Resolves: CVE-2014-0050- Resolves: CVE-2013-4322 CVE-2013-4286. Branched from - rhel-6.5- Related: rhbz 915447 Introduced a space char in TOMCAT_GROUP- Related: rhbz 915447 Typo in conf and sysconf- Related: rhbz 915447 can't start with group other than tomcat - changes in init script. Added TOMCAT_GROUP to sysconfig and - tomcat6.conf. Also changed default to the group that user - tomcat belongs.- Related: CVE-2012-3439 Digest Authentication. Fixed typo - in the patch file.- Resolves: CVE-2012-3439 - Resolves: CVE-2012-4534 - Resolves: CVE-2012-3546 - Increment build number to exceed 6_4 build number. Demanded - by rpmdiff- Resolves: rhbz 845786 webapps-docs contained empty files. - Build will fail of architectures ppc s390x ppc64. Use - target rhel-6.5-noarch-candidate - Resolves: rhbz 915447 can't start with group other than tomcat - changes in init script - Resolves: rhbz 950647 Error in checkpidfile of init script - Resolves: rhbz 977685 Full implementation of juli and juli - adapters. Jars placed in new extras directory - Resolves: 960225 Status script does not return proper PID- Resolves: CVE-2013-2067 session fixation- Related: rhbz#955977 CVE-2013-1976- Related: rhbz#955977 CVE-2013-1976 Changed location of - TOMCAT_LOG to /var/log where only root can write to it. Touching - TOMCAT_LOG is no longer necessary- Resolves: rhbz#955977 CVE-2013-1976 Improper TOMCAT_LOG management in - init script- Related: rhbz 576540 - Javadoc is not being generated correctly by the build- Resolves: rhbz 576540 - regression init script in the - wrong place. Changed _initrddir definition herein to point to the - right place.- Resolves: rhbz 857066 apache bz 48843 ArrayIndexOutofBounds- Resolves: rhbz 847288 classloader deadlock compiler JSPs - Resolves: rhbz 785954 HTML filtering needed - Resolves: rhbz 798617 init gives incorrect status- Resolves: rhbz 757632 regression- Resolves: CVE-2012-0022 regression. Change made to patch.- Resolves: rhbz# 802396. Changes made to init script.- Resolves cve-2012-0022 (2011-4858) rhbz 783728- Resolves: rhbz 782400 - remove redhat-lsb dependency - Resolves: rhbz 726169 (783407) - Unable to compile class for JSP - Resolves: rhbz 783567 - tag attributes parsing throws exception- Resolves: rhbz 757632 - version arg results in CNFException - changes made to initscript.- resolves: rhbz 748813 NPE w/no data in chunked POST request - Not included in 6.2. Slated for 6.3- resolves: cve-2011-3190 rhbz 738504 - resolves: cve-2011-2204 rhbz 738504 - resolves: cve-2011-2526 rhbz 738504 - resolves: cve-2011-1184 rhbz 738504 - resolves: rhbz 698624 - revisited- resolves: rhbz 726169 - jsp1.1 regression exception - Not included in 6.2 slated for 6.3- resolves: rhbz 687968 - tomcat6 broken when LANG="fr_FR"- resolves: rhbz 701759 - hardcoded catalina.out - Not included in 6.2 slated for 6.3- resolves: rhbz 695284 - multiple instances logging fiasco- Resolves: rhbz 698624 - inet4address can't be cast to String- Resolves: rhbz 656403 - cve-2010-4172 jsp syntax error- Resolves: rhbz#697504 initscript logging location- Resolves: rhbz#656403, rhbz#675926, rhbz#676011 - CVE-2010-4172, CVE-2010-3718, CVE-2011-0013, CVE-2010-4476, - CVE-2011-0534- Resovles rhbz#695284 - wrapper logs to different locations - CVE-2010-4172, CVE-2011-0013, CVE-2010-3718 commented out - until needed.- naming-factory-dbcp missing fix in tomcat6.conf - Add Obsoletes for log4j- Add log4j to package lib. Corrected typo in log4 Provides - epock versus epoch- Installed permissions do not allow tomcat to start - incrementing NVR so yum won't get confused with the zstream- Resolves: rhbz 678671 - useradd sets shell to nologin - dangling symlink for log4j. Added it as R: and R(post)- Resolves: 678671 - tomcat user requires login shell- Resolves: rhbz#636997 Additionally created instances of tomcat - are broken- Resolves: CVE-2011-0534 rhbz# 675926- Resolves: rhbz# 661244 missing tomcat6-juli link - Fixed symlinks to commons-collections and log4j in libdir - Removed log4j package- Replacing commons-xxxx-tomcat5 with jakarta-commons-xxxx- Resolves: rhbz#636997 - Additionally created instances of tomcat are - broken- Resolves: rhbz#617501 CVE-2010-2227- Added 2227 patch- fixed servlet-api typo- Resolves: rhbz#584699. A respin was required to fix post and - postun for el. Updated EL-spec to 2.1 from 1.0. Tomcat6 uses - elspec 2.1- Resolves: rhbz#584699 initscript collected problems LSB - compliant. Not complete yet. Return values are correct and - usage function has been implemented.- Resolves: rhbz#606822 CVE-2010-1157- Resolves: rhbz#582037 Revert to Java 1.5. Also fixed Error - deploying web application.- Resolves: rhbz#584699 - and two other bugs along with - various spec flaws fixed.- Build and run using gcj 1.5. Spec refactored. JSP examples - are working.- Patched spec file to avoid sinjdoc issue- Adding patch for setPerformancePrefernces- increment build number- Removed prerun lib and post WEB-INF/lib. Moved build-jar-repos to - after the installs. Added Requires and BuildRequires for jakarta- - commons-{dbcp,pool,collections}-tomcat5 and ecj. Changed define macro to - global.- Revert: Revert JDK/Java Requires and BuildRequires to version 1.5 versus 1.6- Update to 6.0.24.- Drop file requires on /usr/share/java/ecj.jar.- Update to 6.0.20. Fixes CVE-2009-0033,CVE-2009-0580.- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild- Add OSGi manifest for servlet-api.- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild- build for Fedora- fix directory ownership- add Requires for update-alternatives- use lsb_release instead of lsb-release to get the distributor- fix initscript messages on Mandriva Linux - fix help message in initscript- redefine %_initrddir for FHS-compliance - make initscript LSB-complaint- fix status in initscript- remove initscripts and /sbin/service requirement - call initscript directly without using /sbin/service - require /sbin/chkconfig instead of chkconfig - remove chkconfig requirement from packages that don't require it- 6.0.18 - Resolves: CVE-2008-1232, CVE-2008-1947, CVE-2008-2370, CVE-2008-2938 - fix definition of java.security.policy with d%{name} start-security - don't pass $CATALINA_OPTS with d%{name} stop - redefine tempdir and workdir for tmpwatch workaround - change eclipse-ecj references to ecj- drop repotag- version jsp and servlet Provides with their spec versions - remove Obsoletes/Provides for servletapi6 package as it can co-exist - check for java-functions existence in wrapper script - move d%{name} to %{name} and create symlink for d%{name} - improve status function in initscript - change license to ASL 2.0 again as per Fedora guidelines- remove Requires: tomcat-native - put back original JPackage Group (except javadoc) and License tags - add Provides for jsp and servlet - use ant macro - build and install sample webapp - call /sbin/service to stop service on uninstall - remove references to $RPM_BUILD_DIR - use copy instead of move to fix short-circuit install build - remove prebuilt sample.war - remove Thumbs.db files - add Requires: java >= 0:1.6.0- remove Requires: tomcat-native - put back original JPackage Group (except javadoc) and License tags - add Provides for jsp and servlet - use ant macro - build and install sample webapp - call /sbin/service to stop service on uninstall - remove references to $RPM_BUILD_DIR - use copy instead of move to fix short-circuit install build - remove prebuilt sample.war - remove Thumbs.db files - add Requires: java >= 0:1.6.0- explicitly unset CLASSPATH - explicitly set OPT_JAR_LIST to include ant/ant-trax- remove BuildRequires: sed - remove specific references to icedtea- add digest and tool-wrapper scripts - Requires: tomcat-native- use %{_var} for appdir instead of /srv - use ${JAVACMD} for java executable in wrapper script - use built-in status function in initscript where possible - add missing require on procps for status function - fix java.library.path setting in %{_sysconfdir}/sysconfig/%{name} - add patch to document webapps in %{_sysconfdir}/%{name}/tomcat-users.xml - remove %{appdir}/ROOT/admin - move %{_bindir}/d%{name} to %{_sbindir}/d%{name}- use %{_initrddir} macro instead of %{_sysconfdir}/init.d (rhbz #153187) - fix java.library.path setting in %{name}.conf (rhbz #253605) - fix incorrect initscript output (rhbz #380921) - update initscript (rhbz #247077) - add logrotate support - fix strange-permission - fix %prep - replace /var with %{_var} - replace %{_localstatedir} with %{_var} - use %{logdir} where possible - call build-jar-repository with full path in scriptlets - remove file-based requires - build with icedtea and set as the default JAVA_HOME in %{name}.conf - fix non-standard-group - change ecj references to eclipse-ecj - change Apache Software License 2.0 to ASL 2.0 for rpmlint- update to 6.0.16- add /etc/tomcat6/Catalina/localhost (Alexander Kurtakov)- first JPackage release  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~0:6.0.24-111.el6_9       !!!!!!!!!!!!!"""""""""""############$$$$$$$$$%%%%%%#&&&&&&&&###'''''''(((((((((((()))))))))))))))))))))))))))))))))*********************************************************+++++++++++++,,,,,,,,,,,,,,,+-------------------------.............---+//////+++000000111111111111111100002222222222222222222222222222222222222222222222222203333334444444555555555555555555555555555555566666477777777777777774444888888888888888888884999994:::::::4;<<<=================<<<4>>>>4???????????????@AAAAA@BBBBBBBBBBBBBBBBBBBBBB@CCCCCCCCCCCCC@DDDDDDDD@EEEEEFFFFFFFGGGGGGFFFHHHHHHHHHHHHHHHHHHHHHIIIIIIIIIIIIIIJJJJJHKKKKHHHHLLLLLLLLLLLLLLLLLLLLLMMMMLLLNNOOOONPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPNNNNQQQQQQQRRRRRRRRRRRRRRRRRRRRRRRRQSSSSSSSSSSQTTTTTTTTQUUUUUUUUUUUUUUUUUUUUUUUUUUUUUQVVVVVVVVVVVWWWWWWWWWWWWWWWWWWWVXXXXXXXXXXVVVVYYYYQZZZZQ[[[[[[[[[[[[[[\\\\\\\\\\[[[Q]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]^^^^^^^^]]]QQQQ____Q`````Qaaaaaaaaabbbbtomcat6allclasses-frame.htmlallclasses-noframe.htmlconstant-values.htmldeprecated-list.htmlhelp-doc.htmlindex-all.htmlindex.htmlorgapacheAnnotationProcessor.htmlPeriodicEventListener.htmlcatalinaAuthenticator.htmlCluster.htmlCometEvent.EventSubType.htmlCometEvent.EventType.htmlCometEvent.htmlCometFilter.htmlCometFilterChain.htmlCometProcessor.htmlContained.htmlContainer.htmlContainerEvent.htmlContainerListener.htmlContainerServlet.htmlContext.htmlEngine.htmlExecutor.htmlGlobals.htmlGroup.htmlHost.htmlInstanceEvent.htmlInstanceListener.htmlLifecycle.htmlLifecycleEvent.htmlLifecycleException.htmlLifecycleListener.htmlLoader.htmlManager.htmlPipeline.htmlRealm.htmlRole.htmlServer.htmlServerFactory.htmlService.htmlSession.htmlSessionEvent.htmlSessionListener.htmlStore.htmlUser.htmlUserDatabase.htmlValve.htmlWrapper.htmlantAbstractCatalinaTask.htmlBaseRedirectorHelperTask.htmlDeployTask.htmlInstallTask.htmlJKStatusUpdateTask.htmlJMXGetTask.htmlJMXQueryTask.htmlJMXSetTask.htmlListTask.htmlReloadTask.htmlRemoveTask.htmlResourcesTask.htmlRolesTask.htmlServerinfoTask.htmlSessionsTask.htmlStartTask.htmlStopTask.htmlUndeployTask.htmlValidatorTask.htmljmxArg.htmlJMXAccessorCondition.htmlJMXAccessorCreateTask.htmlJMXAccessorEqualsCondition.htmlJMXAccessorGetTask.htmlJMXAccessorInvokeTask.htmlJMXAccessorQueryTask.htmlJMXAccessorSetTask.htmlJMXAccessorTask.htmlJMXAccessorUnregisterTask.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlauthenticatorAuthenticatorBase.htmlBasicAuthenticator.htmlConstants.htmlDigestAuthenticator.htmlFormAuthenticator.htmlNonLoginAuthenticator.htmlSSLAuthenticator.htmlSavedRequest.htmlSingleSignOn.htmlSingleSignOnEntry.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlconnectorClientAbortException.htmlCometEventImpl.htmlConnector.htmlConstants.htmlCoyoteAdapter.htmlCoyoteInputStream.htmlCoyoteOutputStream.htmlCoyotePrincipal.htmlCoyoteReader.htmlCoyoteWriter.htmlInputBuffer.htmlMapperListener.htmlOutputBuffer.htmlRequest.htmlRequestFacade.htmlResponse.htmlResponseFacade.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlcoreApplicationContext.htmlApplicationContextFacade.htmlApplicationFilterConfig.htmlApplicationFilterFactory.htmlAprLifecycleListener.htmlConstants.htmlContainerBase.ContainerBackgroundProcessor.htmlContainerBase.PrivilegedAddChild.htmlContainerBase.htmlDummyRequest.htmlDummyResponse.htmlJasperListener.htmlJreMemoryLeakPreventionListener.htmlNamingContextListener.htmlStandardContext.htmlStandardEngine.htmlStandardHost.htmlStandardPipeline.htmlStandardServer.htmlStandardService.htmlStandardThreadExecutor.htmlStandardWrapper.htmlStandardWrapperFacade.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmldeployApplicationParameter.htmlContextEjb.htmlContextEnvironment.htmlContextHandler.htmlContextLocalEjb.htmlContextResource.htmlContextResourceEnvRef.htmlContextResourceLink.htmlContextService.htmlContextTransaction.htmlErrorPage.htmlFilterDef.htmlFilterMap.htmlLoginConfig.htmlMessageDestination.htmlMessageDestinationRef.htmlNamingResources.htmlResourceBase.htmlSecurityCollection.htmlSecurityConstraint.htmlSecurityRoleRef.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlhaCatalinaCluster.htmlClusterDeployer.htmlClusterListener.htmlClusterManager.htmlClusterMessage.htmlClusterMessageBase.htmlClusterRuleSet.htmlClusterSession.htmlClusterValve.htmlConstants.htmlauthenticatorClusterSingleSignOn.htmlClusterSingleSignOnListener.htmlSingleSignOnMessage.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlcontextReplicatedContext.MultiEnumeration.htmlReplicatedContext.ReplApplContext.htmlReplicatedContext.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmldeployFarmWarDeployer.htmlFileChangeListener.htmlFileMessage.htmlFileMessageFactory.htmlUndeployMessage.htmlWarWatcher.WarFilter.htmlWarWatcher.WarInfo.htmlWarWatcher.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlsessionBackupManager.htmlClusterManagerBase.htmlClusterSessionListener.htmlConstants.htmlDeltaManager.htmlDeltaRequest.htmlDeltaSession.htmlJvmRouteBinderValve.htmlJvmRouteSessionIDBinderListener.htmlReplicatedSession.htmlSerializablePrincipal.htmlSessionIDMessage.htmlSessionMessage.htmlSessionMessageImpl.htmlSimpleTcpReplicationManager.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmltcpConstants.htmlReplicationValve.htmlSendMessageData.htmlSimpleTcpCluster.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlutilIDynamicProperty.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlloaderConstants.htmlJdbcLeakPrevention.htmlReloader.htmlResourceEntry.htmlStandardClassLoader.htmlStandardClassLoaderMBean.htmlVirtualWebappLoader.htmlWebappLoader.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlmanagerConstants.htmlHTMLManagerServlet.htmlJMXProxyServlet.htmlJspHelper.htmlManagerServlet.htmlStatusManagerServlet.htmlStatusTransformer.htmlhostConstants.htmlHTMLHostManagerServlet.htmlHostManagerServlet.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlutilBaseSessionComparator.htmlReverseComparator.htmlSessionUtils.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlmbeansClassNameMBean.htmlConnectorMBean.htmlConstants.htmlContextEnvironmentMBean.htmlContextResourceLinkMBean.htmlContextResourceMBean.htmlDefaultContextMBean.htmlGlobalResourcesLifecycleListener.htmlGroupMBean.htmlJmxRemoteLifecycleListener.RmiClientLocalhostSocketFactory.htmlJmxRemoteLifecycleListener.htmlMBeanFactory.htmlMBeanUtils.htmlMemoryUserDatabaseMBean.htmlNamingResourcesMBean.htmlRoleMBean.htmlServerLifecycleListener.htmlStandardContextMBean.htmlStandardEngineMBean.htmlStandardHostMBean.htmlStandardServerMBean.htmlStandardServiceMBean.htmlUserMBean.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlrealmCombinedRealm.htmlConstants.htmlDataSourceRealm.htmlGenericPrincipal.htmlJAASCallbackHandler.htmlJAASMemoryLoginModule.htmlJAASRealm.htmlJDBCRealm.htmlJNDIRealm.htmlLockOutRealm.LockRecord.htmlLockOutRealm.htmlMemoryRealm.htmlMemoryRuleSet.htmlRealmBase.AllRolesMode.htmlRealmBase.htmlUserDatabaseRealm.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlsecuritySecurityClassLoad.htmlSecurityConfig.htmlSecurityUtil.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlservletsCGIServlet.CGIEnvironment.htmlCGIServlet.CGIRunner.htmlCGIServlet.HTTPHeaderInputStream.htmlCGIServlet.htmlConstants.htmlDefaultServlet.Range.htmlDefaultServlet.htmlInvokerServlet.htmlWebdavServlet.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlsessionConstants.htmlFileStore.htmlJDBCStore.htmlManagerBase.SessionTiming.htmlManagerBase.htmlPersistentManager.htmlPersistentManagerBase.htmlStandardManager.htmlStandardSession.htmlStandardSessionFacade.htmlStoreBase.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlssiByteArrayServletOutputStream.htmlExpressionParseTree.htmlExpressionTokenizer.htmlResponseIncludeWrapper.htmlSSICommand.htmlSSIConditional.htmlSSIConfig.htmlSSIEcho.htmlSSIExec.htmlSSIExternalResolver.htmlSSIFilter.htmlSSIFlastmod.htmlSSIFsize.htmlSSIInclude.htmlSSIMediator.htmlSSIPrintenv.htmlSSIProcessor.htmlSSIServlet.htmlSSIServletExternalResolver.ServletContextAndPath.htmlSSIServletExternalResolver.htmlSSIServletRequestUtil.htmlSSISet.htmlSSIStopProcessingException.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlstartupBootstrap.htmlCatalina.CatalinaShutdownHook.htmlCatalina.htmlCatalinaProperties.htmlClassLoaderFactory.htmlClusterRuleSetFactory.DefaultClusterRuleSet.htmlClusterRuleSetFactory.htmlConnectorCreateRule.htmlConstants.htmlContextConfig.ContextErrorHandler.htmlContextConfig.htmlContextRuleSet.htmlCopyParentClassLoaderRule.htmlDigesterFactory.htmlEmbedded.htmlEngineConfig.htmlEngineRuleSet.htmlExpandWar.htmlHomesUserDatabase.htmlHostConfig.DeployedApplication.htmlHostConfig.htmlHostRuleSet.htmlLifecycleListenerRule.htmlNamingRuleSet.htmlPasswdUserDatabase.htmlRealmRuleSet.htmlSetAllPropertiesRule.htmlSetContextPropertiesRule.htmlSetNextNamingRule.htmlTldConfig.htmlTldRuleSet.htmlTool.htmlUserConfig.htmlUserDatabase.htmlWebAnnotationSet.htmlWebRuleSet.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmltribesByteMessage.htmlChannel.htmlChannelException.FaultyMember.htmlChannelException.htmlChannelInterceptor.InterceptorEvent.htmlChannelInterceptor.htmlChannelListener.htmlChannelMessage.htmlChannelReceiver.htmlChannelSender.htmlConstants.htmlErrorHandler.htmlHeartbeat.htmlManagedChannel.htmlMember.htmlMembershipListener.htmlMembershipService.htmlMessageListener.htmlRemoteProcessException.htmlUniqueId.htmlgroupAbsoluteOrder.AbsoluteComparator.htmlAbsoluteOrder.htmlChannelCoordinator.htmlChannelInterceptorBase.htmlGroupChannel.HeartbeatThread.htmlGroupChannel.InterceptorIterator.htmlGroupChannel.htmlInterceptorPayload.htmlResponse.htmlRpcCallback.htmlRpcChannel.RpcCollector.htmlRpcChannel.RpcCollectorKey.htmlRpcChannel.htmlRpcMessage.NoRpcChannelReply.htmlRpcMessage.htmlinterceptorsDomainFilterInterceptor.htmlFragmentationInterceptor.FragCollection.htmlFragmentationInterceptor.FragKey.htmlFragmentationInterceptor.htmlGzipInterceptor.htmlMessageDispatch15Interceptor.htmlMessageDispatchInterceptor.htmlNonBlockingCoordinator.CoordinationEvent.htmlNonBlockingCoordinator.CoordinationMessage.htmlNonBlockingCoordinator.htmlOrderInterceptor.Counter.htmlOrderInterceptor.MessageOrder.htmlOrderInterceptor.htmlSimpleCoordinator.htmlStaticMembershipInterceptor.htmlTcpFailureDetector.htmlTcpPingInterceptor.PingThread.htmlTcpPingInterceptor.htmlThroughputInterceptor.htmlTwoPhaseCommitInterceptor.MapEntry.htmlTwoPhaseCommitInterceptor.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlioBufferPool.BufferPoolAPI.htmlBufferPool.htmlChannelData.htmlDirectByteArrayOutputStream.htmlListenCallback.htmlObjectReader.htmlReplicationStream.htmlXByteBuffer.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlmembershipConstants.htmlMcastService.htmlMcastServiceImpl.ReceiverThread.htmlMcastServiceImpl.RecoveryThread.htmlMcastServiceImpl.SenderThread.htmlMcastServiceImpl.htmlMemberImpl.htmlMembership.MbrEntry.htmlMembership.htmlStaticMember.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmltipisAbstractReplicatedMap.MapEntry.htmlAbstractReplicatedMap.MapMessage.htmlAbstractReplicatedMap.MapOwner.htmlAbstractReplicatedMap.htmlLazyReplicatedMap.htmlReplicatedMap.htmlReplicatedMapEntry.htmlStreamable.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmltransportAbstractRxTask.htmlAbstractSender.htmlConstants.htmlDataSender.htmlMultiPointSender.htmlPooledSender.htmlReceiverBase.htmlReplicationTransmitter.htmlRxTaskPool.TaskCreator.htmlRxTaskPool.htmlSenderState.htmlbioBioReceiver.htmlBioReplicationTask.htmlBioSender.htmlMultipointBioSender.htmlPooledMultiSender.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlutilFastQueue.htmlLinkObject.htmlSingleRemoveSynchronizedAddLock.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlnioNioReceiver.htmlNioReplicationTask.htmlNioSender.htmlParallelNioSender.htmlPooledParallelSender.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlutilArrays.htmlLogs.htmlStringManager.htmlUUIDGenerator.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlusersAbstractGroup.htmlAbstractRole.htmlAbstractUser.htmlConstants.htmlMemoryGroup.htmlMemoryRole.htmlMemoryUser.htmlMemoryUserDatabase.htmlMemoryUserDatabaseFactory.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlutilBase64.htmlCharsetMapper.htmlCustomObjectInputStream.htmlDOMWriter.htmlDateTool.htmlDefaultAnnotationProcessor.htmlEnumerator.htmlExtension.htmlExtensionValidator.htmlFastDateFormat.htmlHexUtils.htmlIOTools.htmlInstanceSupport.htmlLifecycleSupport.htmlMD5Encoder.htmlMIME2Java.htmlManifestResource.htmlParameterMap.htmlQueue.htmlRequestUtil.htmlResourceSet.htmlSchemaResolver.htmlServerInfo.htmlStrftime.htmlStringManager.htmlStringParser.htmlTomcatCSS.htmlURL.htmlURLEncoder.htmlXMLWriter.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlvalvesAccessLogValve.AccessLogElement.htmlAccessLogValve.ByteSentElement.htmlAccessLogValve.CookieElement.htmlAccessLogValve.DateAndTimeElement.htmlAccessLogValve.ElapsedTimeElement.htmlAccessLogValve.HeaderElement.htmlAccessLogValve.HostElement.htmlAccessLogValve.HttpStatusCodeElement.htmlAccessLogValve.LocalAddrElement.htmlAccessLogValve.LocalPortElement.htmlAccessLogValve.LocalServerNameElement.htmlAccessLogValve.LogicalUserNameElement.htmlAccessLogValve.MethodElement.htmlAccessLogValve.ProtocolElement.htmlAccessLogValve.QueryElement.htmlAccessLogValve.RemoteAddrElement.htmlAccessLogValve.RequestAttributeElement.htmlAccessLogValve.RequestElement.htmlAccessLogValve.RequestURIElement.htmlAccessLogValve.ResponseHeaderElement.htmlAccessLogValve.SessionAttributeElement.htmlAccessLogValve.SessionIdElement.htmlAccessLogValve.StringElement.htmlAccessLogValve.ThreadNameElement.htmlAccessLogValve.UserElement.htmlAccessLogValve.htmlCometConnectionManagerValve.htmlConstants.AccessLog.htmlConstants.htmlErrorReportValve.htmlExtendedAccessLogValve.CookieElement.htmlExtendedAccessLogValve.DateElement.htmlExtendedAccessLogValve.PatternTokenizer.htmlExtendedAccessLogValve.RequestAttributeElement.htmlExtendedAccessLogValve.RequestHeaderElement.htmlExtendedAccessLogValve.RequestParameterElement.htmlExtendedAccessLogValve.ResponseAllHeaderElement.htmlExtendedAccessLogValve.ResponseHeaderElement.htmlExtendedAccessLogValve.ServletContextElement.htmlExtendedAccessLogValve.SessionAttributeElement.htmlExtendedAccessLogValve.TimeElement.htmlExtendedAccessLogValve.htmlFastCommonAccessLogValve.htmlJDBCAccessLogValve.htmlPersistentValve.htmlRemoteAddrValve.htmlRemoteHostValve.htmlRemoteIpValve.htmlRequestDumperValve.htmlRequestFilterValve.htmlSSLValve.htmlSemaphoreValve.htmlValveBase.htmlWebdavFixValve.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlcoyoteActionCode.htmlActionHook.htmlAdapter.htmlConstants.htmlInputBuffer.htmlOutputBuffer.htmlProcessor.htmlProtocolHandler.htmlRequest.htmlRequestGroupInfo.htmlRequestInfo.htmlResponse.htmlajpAjpAprProcessor.SocketInputBuffer.htmlAjpAprProcessor.SocketOutputBuffer.htmlAjpAprProcessor.htmlAjpAprProtocol.AjpConnectionHandler.htmlAjpAprProtocol.htmlAjpMessage.htmlAjpProcessor.SocketInputBuffer.htmlAjpProcessor.SocketOutputBuffer.htmlAjpProcessor.htmlAjpProtocol.AjpConnectionHandler.htmlAjpProtocol.htmlConstants.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlhttp11AbstractInputBuffer.htmlConstants.htmlHttp11AprProcessor.htmlHttp11AprProtocol.htmlHttp11NioProcessor.htmlHttp11NioProtocol.htmlHttp11Processor.htmlHttp11Protocol.Http11ConnectionHandler.htmlHttp11Protocol.htmlInputFilter.htmlInternalAprInputBuffer.SocketInputBuffer.htmlInternalAprInputBuffer.htmlInternalAprOutputBuffer.SocketOutputBuffer.htmlInternalAprOutputBuffer.htmlInternalInputBuffer.InputStreamInputBuffer.htmlInternalInputBuffer.htmlInternalNioInputBuffer.HeaderParseData.htmlInternalNioInputBuffer.SocketInputBuffer.htmlInternalNioInputBuffer.htmlInternalNioOutputBuffer.SocketOutputBuffer.htmlInternalNioOutputBuffer.htmlInternalOutputBuffer.OutputStreamOutputBuffer.htmlInternalOutputBuffer.htmlOutputFilter.htmlfiltersBufferedInputFilter.htmlChunkedInputFilter.htmlChunkedOutputFilter.htmlGzipOutputFilter.FakeOutputStream.htmlGzipOutputFilter.htmlIdentityInputFilter.htmlIdentityOutputFilter.htmlSavedRequestInputFilter.htmlVoidInputFilter.htmlVoidOutputFilter.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlmemoryMemoryProtocolHandler.ByteChunkInputBuffer.htmlMemoryProtocolHandler.ByteChunkOutputBuffer.htmlMemoryProtocolHandler.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlelExpressionFactoryImpl.htmlMethodExpressionImpl.htmlMethodExpressionLiteral.htmlValueExpressionImpl.htmlValueExpressionLiteral.htmllangELArithmetic.BigDecimalDelegate.htmlELArithmetic.BigIntegerDelegate.htmlELArithmetic.DoubleDelegate.htmlELArithmetic.LongDelegate.htmlELArithmetic.htmlELSupport.htmlEvaluationContext.htmlExpressionBuilder.htmlFunctionMapperFactory.htmlFunctionMapperImpl.Function.htmlFunctionMapperImpl.htmlVariableMapperFactory.htmlVariableMapperImpl.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlparserArithmeticNode.htmlAstAnd.htmlAstBracketSuffix.htmlAstChoice.htmlAstCompositeExpression.htmlAstDeferredExpression.htmlAstDiv.htmlAstDotSuffix.htmlAstDynamicExpression.htmlAstEmpty.htmlAstEqual.htmlAstFalse.htmlAstFloatingPoint.htmlAstFunction.htmlAstGreaterThan.htmlAstGreaterThanEqual.htmlAstIdentifier.htmlAstInteger.htmlAstLessThan.htmlAstLessThanEqual.htmlAstLiteralExpression.htmlAstMinus.htmlAstMod.htmlAstMult.htmlAstNegative.htmlAstNot.htmlAstNotEqual.htmlAstNull.htmlAstOr.htmlAstPlus.htmlAstString.htmlAstTrue.htmlAstValue.Target.htmlAstValue.htmlBooleanNode.htmlELParser.htmlELParserConstants.htmlELParserTokenManager.htmlELParserTreeConstants.htmlJJTELParserState.htmlNode.htmlNodeVisitor.htmlParseException.htmlSimpleCharStream.htmlSimpleNode.htmlToken.htmlTokenMgrError.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlutilConcurrentCache.htmlMessageFactory.htmlReflectionUtil.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmljasperConstants.htmlEmbeddedServletOptions.htmlJasperException.htmlJspC.htmlJspCompilationContext.htmlOptions.htmlcompilerAntCompiler.JasperAntLogger.htmlAntCompiler.SystemLogHandler.htmlAntCompiler.htmlAttributeParser.htmlBeanRepository.htmlCompiler.htmlELFunctionMapper.htmlELParser.htmlErrorDispatcher.htmlErrorHandler.htmlJDTCompiler.htmlJavacErrorDetail.htmlJspConfig.JspProperty.htmlJspConfig.htmlJspRuntimeContext.htmlJspUtil.ValidAttribute.htmlJspUtil.htmlLocalizer.htmlServletWriter.htmlSmapGenerator.htmlSmapStratum.LineInfo.htmlSmapStratum.htmlSmapUtil.htmlTagConstants.htmlTagPluginManager.htmlTextOptimizer.htmlTldLocationsCache.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmltagpluginTagPlugin.htmlTagPluginContext.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlelELContextImpl.htmlELContextWrapper.htmlELResolverImpl.htmlExpressionEvaluatorImpl.htmlExpressionImpl.htmlFunctionMapperImpl.htmlJspELException.htmlJspMethodExpression.htmlJspMethodNotFoundException.htmlJspPropertyNotFoundException.htmlJspPropertyNotWritableException.htmlJspValueExpression.htmlVariableResolverImpl.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlruntimeAnnotationHelper.htmlBodyContentImpl.htmlHttpJspBase.htmlJspApplicationContextImpl.htmlJspContextWrapper.htmlJspFactoryImpl.PageContextPool.htmlJspFactoryImpl.htmlJspFragmentHelper.htmlJspRuntimeLibrary.PrivilegedIntrospectHelper.htmlJspRuntimeLibrary.htmlJspSourceDependent.htmlJspWriterImpl.htmlPageContextImpl.htmlPerThreadTagHandlerPool.htmlProtectedFunctionMapper.htmlServletResponseWrapperInclude.htmlTagHandlerPool.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlsecuritySecurityClassLoad.htmlSecurityUtil.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlservletJasperLoader.htmlJspCServletContext.htmlJspServlet.htmlJspServletWrapper.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmltagpluginsjstlUtil.ImportResponseWrapper.htmlUtil.htmlcoreCatch.htmlChoose.htmlForEach.htmlForTokens.htmlIf.htmlImport.htmlOtherwise.htmlOut.htmlParam.htmlRedirect.htmlRemove.htmlSet.htmlUrl.htmlWhen.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlutilEnumerator.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlxmlparserASCIIReader.htmlEncodingMap.htmlParserUtils.htmlSymbolTable.Entry.htmlSymbolTable.htmlTreeNode.htmlUCSReader.htmlUTF8Reader.htmlXMLChar.htmlXMLEncodingDetector.htmlXMLString.htmlXMLStringBuffer.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmljkaprAprImpl.htmlTomcatStarter.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlcommonAjpConstants.htmlChannelJni.htmlChannelNioSocket.Poller.htmlChannelNioSocket.SocketConnection.htmlChannelNioSocket.SocketInputStream.htmlChannelNioSocket.SocketOutputStream.htmlChannelNioSocket.htmlChannelShm.htmlChannelSocket.htmlChannelUn.htmlHandlerDispatch.htmlHandlerRequest.htmlJkInputStream.htmlJkMX.htmlJniHandler.htmlMsgAjp.htmlShm.htmlShm14.htmlWorkerDummy.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlconfigApacheConfig.htmlBaseJkConfig.htmlGeneratorApache2.htmlGeneratorJk1.htmlGeneratorJk2.htmlIISConfig.htmlNSConfig.htmlWebXml2Jk.MappingGenerator.htmlWebXml2Jk.NullResolver.htmlWebXml2Jk.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlcoreJkChannel.htmlJkHandler.htmlMsg.htmlMsgContext.htmlWorkerEnv.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlserverJkCoyoteHandler.htmlJkMain.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmljuliClassLoaderLogManager.ClassLoaderLogInfo.htmlClassLoaderLogManager.LogNode.htmlClassLoaderLogManager.RootLogger.htmlClassLoaderLogManager.htmlFileHandler.htmlJdkLoggerFormatter.htmlloggingLog.htmlLogConfigurationException.htmlLogFactory.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlnamingConstants.htmlContextAccessController.htmlContextBindings.htmlEjbRef.htmlHandlerRef.htmlJndiPermission.htmlNameParserImpl.htmlNamingContext.htmlNamingContextBindingsEnumeration.htmlNamingContextEnumeration.htmlNamingEntry.htmlNamingService.htmlNamingServiceMBean.htmlResourceEnvRef.htmlResourceLinkRef.htmlResourceRef.htmlSelectorContext.htmlServiceRef.htmlStringManager.htmlTransactionRef.htmlfactoryBeanFactory.htmlConstants.htmlEjbFactory.htmlMailSessionFactory.htmlOpenEjbFactory.htmlResourceEnvFactory.htmlResourceFactory.htmlResourceLinkFactory.htmlSendMailFactory.htmlTransactionFactory.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlwebservicesServiceProxy.htmlServiceRefFactory.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmljavajavaURLContextFactory.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlresourcesBaseDirContext.htmlCacheEntry.htmlConstants.htmlDirContextURLConnection.htmlDirContextURLStreamHandler.htmlDirContextURLStreamHandlerFactory.htmlFileDirContext.FileResource.htmlFileDirContext.FileResourceAttributes.htmlFileDirContext.htmlImmutableNameNotFoundException.htmlJrePlatform.htmlProxyDirContext.htmlRecyclableNamingEnumeration.htmlResource.htmlResourceAttributes.htmlResourceCache.htmlVirtualDirContext.htmlWARDirContext.Entry.htmlWARDirContext.WARResource.htmlWARDirContext.htmljndiHandler.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmltomcatApr.htmlbuildutilTxt2Html.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmljniAddress.htmlBIOCallback.htmlDirectory.htmlError.htmlFile.htmlFileInfo.htmlGlobal.htmlLibrary.htmlLocal.htmlLock.htmlMmap.htmlMulticast.htmlOS.htmlPasswordCallback.htmlPoll.htmlPool.htmlPoolCallback.htmlProc.htmlProcErrorCallback.htmlProcattr.htmlRegistry.htmlSSL.htmlSSLContext.htmlSSLSocket.htmlShm.htmlSockaddr.htmlSocket.htmlStatus.htmlStdlib.htmlTime.htmlUser.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlutilDomUtil.NullResolver.htmlDomUtil.htmlIntrospectionUtils.AttributeHolder.htmlIntrospectionUtils.PropertySource.htmlIntrospectionUtils.htmlMutableInteger.htmlbufAscii.htmlB2CConverter.htmlBase64.htmlByteChunk.ByteInputChannel.htmlByteChunk.ByteOutputChannel.htmlByteChunk.htmlC2BConverter.htmlCharChunk.CharInputChannel.htmlCharChunk.CharOutputChannel.htmlCharChunk.htmlDateTool.htmlHexUtils.htmlMessageBytes.MessageBytesFactory.htmlMessageBytes.htmlStringCache.ByteEntry.htmlStringCache.CharEntry.htmlStringCache.htmlTimeStamp.htmlUDecoder.htmlUEncoder.htmlUTF8Decoder.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlcollectionsEmptyEnumeration.htmlLRUCache.htmlMultiMap.htmlMultiMapNamesEnumeration.htmlQueue.htmlSimpleHashtable.htmlSimplePool.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmldescriptorConstants.htmlDigesterFactory.htmlLocalResolver.htmlXmlErrorHandler.htmlXmlIdentifiers.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmldigesterAbstractObjectCreationFactory.htmlAbstractRulesImpl.htmlArrayStack.htmlCallMethodRule.htmlCallParamRule.htmlDigester.htmlFactoryCreateRule.htmlGenericParser.htmlNodeCreateRule.htmlObjectCreateRule.htmlObjectCreationFactory.htmlObjectParamRule.htmlParserFeatureSetterFactory.htmlPathCallParamRule.htmlRule.htmlRuleSet.htmlRuleSetBase.htmlRules.htmlRulesBase.htmlSetNextRule.htmlSetPropertiesRule.htmlSetPropertyRule.htmlSetRootRule.htmlSetTopRule.htmlWithDefaultsRulesWrapper.htmlXercesParser.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlhttpAcceptLanguage.htmlBaseRequest.htmlContentType.htmlCookies.htmlFastHttpDateFormat.htmlHttpMessages.htmlMimeHeaders.htmlMimeMap.htmlParameters.htmlServerCookie.htmlfileuploadDefaultFileItem.htmlDefaultFileItemFactory.htmlDeferredFileOutputStream.htmlDiskFileUpload.htmlFileItem.htmlFileItemFactory.htmlFileUpload.htmlFileUploadBase.InvalidContentTypeException.htmlFileUploadBase.SizeLimitExceededException.htmlFileUploadBase.UnknownSizeException.htmlFileUploadBase.htmlFileUploadException.htmlMultipartStream.IllegalBoundaryException.htmlMultipartStream.MalformedStreamException.htmlMultipartStream.htmlThresholdingOutputStream.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlmapperMapper.Context.htmlMapper.ContextList.htmlMapper.Host.htmlMapper.MapElement.htmlMapper.Wrapper.htmlMapper.htmlMappingData.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlparserHttpParser.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmllogSystemLogHandler.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlmodelerAttributeInfo.htmlBaseAttributeFilter.htmlBaseModelMBean.htmlBaseNotificationBroadcaster.htmlConstructorInfo.htmlFeatureInfo.htmlFixedNotificationFilter.htmlManagedBean.htmlNotificationInfo.htmlOperationInfo.htmlParameterInfo.htmlRegistry.htmlRegistryMBean.htmlmodulesMbeansDescriptorsDOMSource.htmlMbeansDescriptorsDigesterSource.htmlMbeansDescriptorsIntrospectionSource.htmlMbeansDescriptorsSerSource.htmlMbeansSource.htmlMbeansSourceMBean.htmlModelerSource.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlnetAprEndpoint.Acceptor.htmlAprEndpoint.Handler.SocketState.htmlAprEndpoint.Handler.htmlAprEndpoint.Poller.htmlAprEndpoint.Sendfile.htmlAprEndpoint.SendfileData.htmlAprEndpoint.SocketEventProcessor.htmlAprEndpoint.SocketProcessor.htmlAprEndpoint.SocketWithOptionsProcessor.htmlAprEndpoint.Worker.htmlAprEndpoint.WorkerStack.htmlAprEndpoint.htmlBaseEndpoint.htmlJIoEndpoint.Acceptor.htmlJIoEndpoint.Handler.htmlJIoEndpoint.SocketProcessor.htmlJIoEndpoint.Worker.htmlJIoEndpoint.WorkerStack.htmlJIoEndpoint.htmlNioBlockingSelector.BlockPoller.htmlNioBlockingSelector.KeyReference.htmlNioBlockingSelector.htmlNioChannel.htmlNioEndpoint.Acceptor.htmlNioEndpoint.Handler.SocketState.htmlNioEndpoint.Handler.htmlNioEndpoint.KeyAttachment.htmlNioEndpoint.NioBufferHandler.htmlNioEndpoint.Poller.htmlNioEndpoint.PollerEvent.htmlNioEndpoint.SendfileData.htmlNioEndpoint.SocketProcessor.htmlNioEndpoint.TaskQueue.htmlNioEndpoint.Worker.htmlNioEndpoint.WorkerStack.htmlNioEndpoint.htmlNioSelectorPool.htmlPoolTcpEndpoint.htmlSSLImplementation.htmlSSLSupport.CipherData.htmlSSLSupport.htmlSecureNioChannel.ApplicationBufferHandler.htmlSecureNioChannel.htmlSendfileKeepAliveState.htmlSendfileState.htmlServerSocketFactory.htmlSocketProperties.htmlSocketStatus.htmlTcpConnection.htmlTcpConnectionHandler.htmlURL.htmljsseJSSEFactory.htmlJSSEImplementation.htmlJSSEKeyManager.htmlJSSESocketFactory.htmlNioX509KeyManager.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlresStringManager.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlsecurityPrivilegedGetTccl.htmlPrivilegedSetTccl.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmlthreadsThreadPool.ControlRunnable.htmlThreadPool.MonitorRunnable.htmlThreadPool.ThreadPoolListener.htmlThreadPool.htmlThreadPoolRunnable.htmlThreadWithAttributes.htmlpackage-frame.htmlpackage-summary.htmlpackage-tree.htmloverview-frame.htmloverview-summary.htmloverview-tree.htmlpackage-listresourcesbackground.giftab.giftitlebar.giftitlebar_end.gifserialized-form.htmlstylesheet.css/usr/share/javadoc//usr/share/javadoc/tomcat6//usr/share/javadoc/tomcat6/org//usr/share/javadoc/tomcat6/org/apache//usr/share/javadoc/tomcat6/org/apache/catalina//usr/share/javadoc/tomcat6/org/apache/catalina/ant//usr/share/javadoc/tomcat6/org/apache/catalina/ant/jmx//usr/share/javadoc/tomcat6/org/apache/catalina/authenticator//usr/share/javadoc/tomcat6/org/apache/catalina/connector//usr/share/javadoc/tomcat6/org/apache/catalina/core//usr/share/javadoc/tomcat6/org/apache/catalina/deploy//usr/share/javadoc/tomcat6/org/apache/catalina/ha//usr/share/javadoc/tomcat6/org/apache/catalina/ha/authenticator//usr/share/javadoc/tomcat6/org/apache/catalina/ha/context//usr/share/javadoc/tomcat6/org/apache/catalina/ha/deploy//usr/share/javadoc/tomcat6/org/apache/catalina/ha/session//usr/share/javadoc/tomcat6/org/apache/catalina/ha/tcp//usr/share/javadoc/tomcat6/org/apache/catalina/ha/util//usr/share/javadoc/tomcat6/org/apache/catalina/loader//usr/share/javadoc/tomcat6/org/apache/catalina/manager//usr/share/javadoc/tomcat6/org/apache/catalina/manager/host//usr/share/javadoc/tomcat6/org/apache/catalina/manager/util//usr/share/javadoc/tomcat6/org/apache/catalina/mbeans//usr/share/javadoc/tomcat6/org/apache/catalina/realm//usr/share/javadoc/tomcat6/org/apache/catalina/security//usr/share/javadoc/tomcat6/org/apache/catalina/servlets//usr/share/javadoc/tomcat6/org/apache/catalina/session//usr/share/javadoc/tomcat6/org/apache/catalina/ssi//usr/share/javadoc/tomcat6/org/apache/catalina/startup//usr/share/javadoc/tomcat6/org/apache/catalina/tribes//usr/share/javadoc/tomcat6/org/apache/catalina/tribes/group//usr/share/javadoc/tomcat6/org/apache/catalina/tribes/group/interceptors//usr/share/javadoc/tomcat6/org/apache/catalina/tribes/io//usr/share/javadoc/tomcat6/org/apache/catalina/tribes/membership//usr/share/javadoc/tomcat6/org/apache/catalina/tribes/tipis//usr/share/javadoc/tomcat6/org/apache/catalina/tribes/transport//usr/share/javadoc/tomcat6/org/apache/catalina/tribes/transport/bio//usr/share/javadoc/tomcat6/org/apache/catalina/tribes/transport/bio/util//usr/share/javadoc/tomcat6/org/apache/catalina/tribes/transport/nio//usr/share/javadoc/tomcat6/org/apache/catalina/tribes/util//usr/share/javadoc/tomcat6/org/apache/catalina/users//usr/share/javadoc/tomcat6/org/apache/catalina/util//usr/share/javadoc/tomcat6/org/apache/catalina/valves//usr/share/javadoc/tomcat6/org/apache/coyote//usr/share/javadoc/tomcat6/org/apache/coyote/ajp//usr/share/javadoc/tomcat6/org/apache/coyote/http11//usr/share/javadoc/tomcat6/org/apache/coyote/http11/filters//usr/share/javadoc/tomcat6/org/apache/coyote/memory//usr/share/javadoc/tomcat6/org/apache/el//usr/share/javadoc/tomcat6/org/apache/el/lang//usr/share/javadoc/tomcat6/org/apache/el/parser//usr/share/javadoc/tomcat6/org/apache/el/util//usr/share/javadoc/tomcat6/org/apache/jasper//usr/share/javadoc/tomcat6/org/apache/jasper/compiler//usr/share/javadoc/tomcat6/org/apache/jasper/compiler/tagplugin//usr/share/javadoc/tomcat6/org/apache/jasper/el//usr/share/javadoc/tomcat6/org/apache/jasper/runtime//usr/share/javadoc/tomcat6/org/apache/jasper/security//usr/share/javadoc/tomcat6/org/apache/jasper/servlet//usr/share/javadoc/tomcat6/org/apache/jasper/tagplugins//usr/share/javadoc/tomcat6/org/apache/jasper/tagplugins/jstl//usr/share/javadoc/tomcat6/org/apache/jasper/tagplugins/jstl/core//usr/share/javadoc/tomcat6/org/apache/jasper/util//usr/share/javadoc/tomcat6/org/apache/jasper/xmlparser//usr/share/javadoc/tomcat6/org/apache/jk//usr/share/javadoc/tomcat6/org/apache/jk/apr//usr/share/javadoc/tomcat6/org/apache/jk/common//usr/share/javadoc/tomcat6/org/apache/jk/config//usr/share/javadoc/tomcat6/org/apache/jk/core//usr/share/javadoc/tomcat6/org/apache/jk/server//usr/share/javadoc/tomcat6/org/apache/juli//usr/share/javadoc/tomcat6/org/apache/juli/logging//usr/share/javadoc/tomcat6/org/apache/naming//usr/share/javadoc/tomcat6/org/apache/naming/factory//usr/share/javadoc/tomcat6/org/apache/naming/factory/webservices//usr/share/javadoc/tomcat6/org/apache/naming/java//usr/share/javadoc/tomcat6/org/apache/naming/resources//usr/share/javadoc/tomcat6/org/apache/naming/resources/jndi//usr/share/javadoc/tomcat6/org/apache/tomcat//usr/share/javadoc/tomcat6/org/apache/tomcat/buildutil//usr/share/javadoc/tomcat6/org/apache/tomcat/jni//usr/share/javadoc/tomcat6/org/apache/tomcat/util//usr/share/javadoc/tomcat6/org/apache/tomcat/util/buf//usr/share/javadoc/tomcat6/org/apache/tomcat/util/collections//usr/share/javadoc/tomcat6/org/apache/tomcat/util/descriptor//usr/share/javadoc/tomcat6/org/apache/tomcat/util/digester//usr/share/javadoc/tomcat6/org/apache/tomcat/util/http//usr/share/javadoc/tomcat6/org/apache/tomcat/util/http/fileupload//usr/share/javadoc/tomcat6/org/apache/tomcat/util/http/mapper//usr/share/javadoc/tomcat6/org/apache/tomcat/util/http/parser//usr/share/javadoc/tomcat6/org/apache/tomcat/util/log//usr/share/javadoc/tomcat6/org/apache/tomcat/util/modeler//usr/share/javadoc/tomcat6/org/apache/tomcat/util/modeler/modules//usr/share/javadoc/tomcat6/org/apache/tomcat/util/net//usr/share/javadoc/tomcat6/org/apache/tomcat/util/net/jsse//usr/share/javadoc/tomcat6/org/apache/tomcat/util/res//usr/share/javadoc/tomcat6/org/apache/tomcat/util/security//usr/share/javadoc/tomcat6/org/apache/tomcat/util/threads//usr/share/javadoc/tomcat6/resources/-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m32 -march=i686 -mtune=atom -fasynchronous-unwind-tablesdrpmxz2noarch-redhat-linux-gnuASCII textASCII text, with very long linesGIF image data, version 89a, 1700 x 40GIF image data, version 89a, 19 x 40GIF image data, version 89a, 3 x 30GIF image data, version 89a, 50 x 112HTML document textdirectory?7zXZ !PH6R`;N]"k%3EoUK]}/eywyѥ>ʕVUvClm?oG3$ufMhېY<XeK)gO"r Cj3j!WZa]Y)3{Ͽ{)4h%[ l˽*߀Lg7Km\K[S&E4P%e::EYg!S]|7%@BZ&3Nػt3jHy6(BVӥgفwʥ 1 ̠Bx֠Z`1绥̗az#YZp$v湩t g8bʩ)x`NX7'TyzedE%E<`;xa''muE& - m.(K.Lgڿime[SGtA׀RH^Iؐf~V t)=ÈA\ą \ޚ_}PgËu^7,uڨ-z_00agݛ{(O%"0x`N,Df[VOkScy{Y5Na11KRV_%/-p(X$'L1\#wc$U8u !z$I)08YrZ؋_:֠MQ+X7c$ 忂 Og[׎P*w>Au$8}N>1OIc F4[&Z,xRbG`C8kuTk:;-2rI{tIu e{_*.$9e $ѱNk7NajBW@]׺0Xvza|]AhȮ&7m.:q) +sb.Zr 02Z_HҢmPI!I c@qWU3֪$IRG?RimXSqZd7Cl'~(V46J; T?:Afnpp{󇞮u~A[,k+vSY)/A&meK@ݢUbp:ʓaM."|fn~|=8Yb^ Zm>KxagҐ4(.~+' ރ&+ Lz7,糷qC& y<ő<;7p<9=j WP nL~X (xAYe~榸:I2 # M|\FJ_Bn:o9tnr٘JX >!|qI~4ƶSgȲVWZeJ QF_tj:d4~v q9j*pX]>vdT1dm"IYgABo;ܓE/OiOX,aJ6LX7b+Mh ^H0:3YYC(P Łyg>@c(/ n֒ 'pfxf11(a#Fy؄Ѝ.53@zmY2UN ?GA>]LOaHRn.2m[dd[S}sK!ΖKDs3o'tXf)k_`v #4gamMOmKXzFڿyJL͠ zDP3Os6Kn\."gGQᤆ֔-| ,CN947NjHx#s0 :W.\9Tҧm3 2Y%*H0k*5f:%ˉwst`򦙍hQ&կĪ4VY48Uw#ӈ*Amf| `jm ‡ xYuܞ&1Hty.wS>Y8XW8&1&V#fC³m$MpG ) ;IТʨ䊪7 +al֧"i>ByJ-;J@f"!e ٮyp<'f3Liak~-`3+iPȮ;gL9}Py~Iܐb2俠_ ]):^H^CMȩ V[Ln I|o.18))hB|nӷ.(Yia_8ÁrgY9][R8\!,Y0uUA#?Lqn/bbxoS~{/3$?p^(py,aT}[ ӶK})FjNrE./$CZvVAh,\\ u$乛pMxD1oNTIҸ"r8#*ݩE9hu~Ix5Qڵ"nSsd 3{ߴ:^s1{F_xW/ىHR(>e(Cچzs,t I&xt{&@- @g̕u@UQ49]%4mr2ǺF@,|sݭ \;e߱@Jt3\3%?#eV̟oGo[r =qs1fŮ J8[|2I̓rw 'b,Či?yV3sSӎkZek,\3 - tc}BAS QcxpWzF\xjtCEŏd?SkL ˡ^Y4U\ 7z.[Z4/)L &CCW7 _zɏx/*f?f5ZSDNv# 6dL> ?pQ;3B#0ڠGgwws')5BU&djZ]wy,ޯZU'KS܀#jN~P{`)="AVˬdn, ۹8z 0f)W:" B%;}LV0R/>.G}]/xUo*$ ގ[B^K!ftOhαrEDp&p{%f0iI-PԂ?M7K.2+ycCF6wO-VFq+Q)<@]bKGz+Һ}2ɲQ rdyW9(L/EGΛ8o$GE\\lJodGD뀳X`l&ezNsx9s裔Ci쮪?_○?m@,,m.ݦzR*UiqC򖿎L@Q6=dG:EyzPA7(D|B`jmďIޥ&e5p4F[V%SNV?ho"Hl[D"/{)<_XG!e;8[Tu@[V``t`$OSy xdlY{'t-9#sȃ؁aori-fGˋ" AUz:Ix:'2tlP0 6V]=Xe5ѐSKnI6iyu?dև@[BF R2H|kZz# %*&~(T-Xi r̹ƛ#/%.LO6'r5 IgД!W2ؠOBv))P yQ@Smkgs js!_ ur;OU:=\B͔y[#^`ƔrFsAd3سېqnWZƢg\{VDIK37"iOcEW\ŏup/![AvzBcj7GWaUP>rDʮ1e`BdX$,z+%ɯ"R!.o_Y" U n #WG\MOV!4;,pQI^.ڐN5c:v2#ĒnB["sC |wPA?ApN|F,qlx> ) H@[~n=OC܌`ucպs5%/{n [wp#F4K&:&%/W<S@f.se|{ut(~vlf;NX8|)L(ʲnֶWT^ڬWAbzt cŒhb2O-ƽGD! Y}Nj>Nz!-xtC L\(SPMJlSz1 T==^nߍy#VACۑ Cn>]eÎ*a>P} K@T M3.T e`PִӚ+clWf7m*3"??Uۚ^QZ%zՑ#݅b_qsk#ҭZOb7DGIP!Ns?\rR&D"|6tJ9H/l#! A]C:+-JWhf: EG x:}^tƀ{XTQ*\ v jWb95QDK6Y\峯x):5fⶮ.+OA{o$tL ]-JujfMҵYM.\eмn!uwhMDe93Etx+WZ?vK!2:RPgl!VvǺ6cc/^&*=*jy++61Ύ۵Y7R!52s 'tk@!HQ|};WB+ҳۯ`VxEcoFӓom-1t8«ɡ#$כF-]$}ucs޶qV;1w__J*k+?}_*$jL'ycMf>deJߜM` ZAqc3:' lEafJl[cIHfGݼSG<OWU rQ|^;uT/̑u"%R$Y؃SU^\HPqDuπp *hES/=P3 H2sL6+8#1fٰ}8ksP66"L&i]ksNI .TP]ex~11%=-5/,s.1-Q II&I7}6X$wAݝ-Ev1=.1NZv=%ޢo!:/_{D-.ﳆdK)%.8ew4G-]VW'+DtlDy1n{{1Qz>K93tU4yG(rFq F剺7B:AA/rE1&z}XͳumҸߕ<=ڻ֥b61YFXʎM.[;Yj@Wkn!aBK4 [)i7r$3ky|N{|lU]Tڔg8oAE,y%G(w0U%}pUg[ܷӂoa2z|)_JA=(w[1tKex& (A~trL'̬Od䫪t-׹hp Z wїr"HrYn\s0'j6f&l~,LODf;Ym.:Z1Q {N[xes/Si:mS479dkP0 O4m-|}mgy> 215A5KcH*Y" O1rsYx~$U}lyIkZJ*L\ ӌ>sMѪT[wSt|bw Ѣe,zl0rT4AyYFz,>qRT;Usc.FÙa­`zޤqcl2t F978xp0半;ivs +D^;I[ȯͱa KԃJ$msC wc//lZhzJWkDa3n*e'5H[,yV=6Ql# DVIY.MOc tbNLdMţ@Ownkp7lߵՎjj:N"Ef2:Z19\6MJ$arhXY+e0hlzv'iq73V 4,~jПsklDVښYϨh+!=wQTyw[6{Σ^"'e"<{x>[ܧ Udb;fJ^1$9 ȂWѳE7&g-pÃ] joରyU'o3|gd@1O&Ay٣0 ι^@?GKakf0 37P*:$m$EUH`uQn%@cn9ɭcupNTR=mΣ͡jayL* 'y?8 rkAq-nK^رao@bӨ5jiJx:7kup|uhᇅ،SM 2>$%% tw6#FjO3ͮ+X]*|h`YVPPHYp҇8g`BZ~!ͿaXX>Vuoù(. !QHv z7ONM"h)\w 5&%WHZhEv:^q^/!녏WgoTVuO1L O:E@F);w$~'\;bkP2@l$qs}%}{R>nס,wWyS=x\JM'sHwj^L :=CxhёzGϜV 2TbxT. ,X[t_YᴘiV &!-j0Ks%YQ%T yqvhV k){\GUv7nTs9?Gbu5F]5 #S@^ )_np6w^_3=ʓNvKA,WPtH2# 2e\t^,qf ɝÙ/vfx-_hs1i_b8cnAbxP8i{ۀTVN@_~NPGHl ک=#~v9z&$,AN[3xhl8tFj/[rL-6ڷSJXmUM/;YA~P]KTwsD0wIV:4N;!{M3Y#)`_E!miv]tЦdRhP+ !,,X¤\K qɅɔﭶ({i 5g6B؄T84}ozy;]&tpG*&k[Kz%tFsV^ IjO$HZ{JyZtgVrBm࣎C d_/CnFփ*44`qW!v  Tiz !},ڶs{tGl;ߛjX=āL×$^9׫uBfJWKvG.:L^EԦ9GGBf43(78P؅6 Jwp& I3 Zۦ~w=k(Xԇ~R9i"Kv'!Gw 2:[ydEX;;ngxFNh}Nz 'ދr/CJf"rVF mLCcr肞wϙEKN_3}~JHa n`1'`6=uP?zw^Fc ]Pҏ7NܗsIYqi &YTO b7Mf1m'?ܦ_^6+s;+7?}[A5-L]]gϼM`=,~Wa,u֏,=flQ|< Ky(A%R*teg+˳7*? z{*ʨ,$1M{m`:u]C'=FMrZ3Ѵ/簊/6l?隘$E.75/=#viJ-Bú"'z)lXɊ¥]D<&6ee bWH@bRgǷ ;^dk͢۽t|gv2K0oy.){^͒J..-$Ki^v ˆl5Fcקo;vmA1ǐcVŏr,ۗN}--GveRzE!nLJ6[PUǍ(z*W)&Ǜ6.>&O}\cV=x訊^,,B(a,o@xJ:#ټH1s)AO]f7Qmt&D8YٞwM61ܔ/8(uP\&/F>ŸH肮;vQr~K0WپX@yǡyNA{#̼N :ذUTxrђDnQp;:y+YUu۴ kd˼qvkDKx{(~Ĭ6:%)Ds0[Ut:`#YpwT0gqUm5~r3*Ht53Kaˤҋ4Wj5dHTj"z=F6V&^J [CoW6}$pKq*: Jj_Yy( I06 *Y 2\WӶ<řE@-r5VZ:-uĠ\2`/"YC-r{bQmՉCt34޿X|5†~0@ːG&[1Y֠7c2`4}dxZ jWL }2\ČP%{m{*Ua{<kH/2 8OVP5|Ij$Be/-`C 82q8QxivI|K~o.[;(,=rҤKdM{\Bqt]RC.@.q1vb ͟KVLQ"ܘMz_3rJ1O7nгMs~~7!|3&Oꯊ7 8QQ7c2ѝIKsh59dG%O3lARtǟ, +U$F~/f0)ͰСnR/}X@s#?1%PJ<avQxA9@Do[vqLV xXp(ϵ> 4jHl@ܜ $oV&2$Ѭ: dy^N7A)߻"yoP9^xH/:nҭbC |4,+KwyJ=>/PȚN^¬ 5+r9e>Cџ6;4[+1^2 Җ]!Rͫٞ5Y} &vgbX;ڞk|}{65-L9%igs_S\zwwm6/> <˗lw`r#8B\ Yv#B2aqv$҃JdA"l*qɕp pY%wqvr YZ