lib389-1.4.4.19~git59.136fc84-150300.3.27.1<>,4(clp9|BnKlg`J,Lzv3`_͈L"#e>zZ:!}xCP)ړaΗf8{ G">C+Csp&ث/lMkk<`}2lԝMS^YEm,L"( ˱b0N٩.ؐIX.7GE oq`,j`!'_xܟV}Vr4֕>wG;/T_{LP`"[MULPv7$@y]Q"Sا&ט>D}?}d   . d7 Mj       ~0dA(x8]9]:w]BbFGHIXpY|Z[\@]h^I.bRcSqdSeSfSlSuTv^8 w_txiysWz} }0}4}m}p}|}}Clib3891.4.4.19~git59.136fc84150300.3.27.1389 Directory Server administration tools and libraryPython library for interacting with and administering 389 Directory Server instances locally or remotely.clsheep26OSUSE Linux Enterprise 15SUSE LLC GPL-3.0-or-later AND MPL-2.0https://www.suse.com/Development/Languages/Pythonhttps://pagure.io/389-ds-baselinuxx86_64Cra jj'B'BDeDeggNN""55CCCCGGEEAA* * ,,llbb""LL _ _ 9?9?33oo//c:c:ss x xSS--''(((("l"l z z  eejj ))vvJIJI:5:5WW-) xWBǭ ;..Cmm)w)wmm""BB,X,X77C<C< =6z 69ss&t&t11"" PP)5)5   , ,0\+  (./  ;FK%V\  EE'' b bff 11 k7q *<  '0'0ff))  &O-;EHS  JA&__gg&&ggHE_b1 r>H[S62222zzvv AABB* * @ @bb> K* 7o3 #9b9b  ^^Cy. F5C ~~PP++(vb"X4U ]$.DH49+ .2 zx ""++OO  @ @ N N--$$ J JSS ,#,#    vvAA 8V/ DD&&@@77-- 00;2!2@66  TTZH4)N ) (  33"6 | g  A|/ T m SSpp \ \0 r)6n , N '$gD7c?LoLAAA큤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큤clclclclclclclclclck@clclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclck@ck@ck@ck@ck@ck@ck@ck@ck@ck@ck@clck@clclclclclck@clck@clclclclclclclclclclclclclclclclclclclclclclclclclclclclclck@ck@ck@ck@ck@ck@ck@ck@clck@clclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclck@ck@ck@ck@ck@ck@ck@ck@ck@ck@ck@ck@ck@ck@ck@ck@ck@ck@ck@ck@clck@clclclclclclclclclclclclclclclclclclclck@ck@ck@ck@ck@ck@ck@ck@clck@clclclclclclclclclclclclclclclclclclclclclck@ck@ck@ck@ck@ck@ck@ck@ck@clck@clclclck@clck@clclclclclclclclclclclclclck@ck@ck@ck@ck@ck@ck@ck@ck@ck@ck@ck@ck@ck@ck@clck@clclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclck@ck@ck@ck@ck@ck@ck@ck@ck@ck@ck@ck@ck@ck@ck@clck@clclclclclclclclclck@ck@ck@ck@ck@ck@ck@ck@clck@clclclclclclclck@clck@clclclclclclclck@ck@ck@ck@ck@ck@ck@ck@ck@ck@ck@ck@ck@ck@ck@ck@ck@ck@ck@ck@ck@ck@clck@clclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclck@ck@ck@ck@clck@clclclclclclclclclclclclclclclclclclclclclclclclclclclclclclclck@ck@ck@ck@ck@ck@ck@clck@clclclclclclclclclclclclclck@ck@ck@ck@ck@ck@ck@ck@ck@ck@ck@ck@ck@ck@clck@clclclclclclclck@ck@ck@ck@ck@ck@ck@ck@ck@ck@clck@clclclclclclclclclck@ck@ck@ck@ck@ck@ck@ck@ck@ck@ck@clck@clclclclclclclclclclclck@ck@ck@ck@ck@ck@ck@ck@ck@ck@ck@ck@ck@ck@ck@clclclclclcl({clcl({clclclcl7a169eaa37d66bd33c4bf0daf996783b78638374ed1828188f07572ab6184fa4a10f0b1923d011aeccc705f2ccb583ab55c80616c05a8e1dce09e4f16bcd4b940a279813f1841566d8c6d239fc6cbfa50df3bc41e835410e41d71fd79cb56ad501ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546bc367b85617f5361efe028f1512d60474b99dfe36befcc3dca785936aa29acf991ba384aa6b082ac458896500b19e07444bd9963db05422d7baf118d3e8d0f82726618f096b87f05089d0ff7ee988bf290fcb866000d92b86cc8a70bb8d2d76689d2d8047bbffd29d0ed243db2dfffc2e4c8997816b5003205d5e87af2352ead70322e1e0163f2136cb7b6a70c3d3840198f74bcf84ead53f49285c3800e86b367370ff6a97c8bf3da06a9638c41f8d0480af2a92af819bd01d97bfd0046701506046b825fb6e0308986919721b30764781458b27857c3814cebd347e3c1957b5f4a0ee000eb1f04f7d9d632ae8cf769e7fdbb4041763e6f223d89b335339fd919d06ad92b5a7c4359a56cd222c9e063005f9a737b58cb9103ce249dd528cad8e207d1e9a344bcd06fdc09a8fc2f074b7f9e80c6cbe1795888fa855d997f1a25a55f60526a9744214b9737f77cdc163d8fd5ffed339cd4ec49d98c5269be0238df5d61d7e31357a84c859cb7f3c3d0f7d447a0ef874648c4f7d6f9aaf1a2c509df5d61d7e31357a84c859cb7f3c3d0f7d447a0ef874648c4f7d6f9aaf1a2c509ddcc06635f0b8e0ef9e896de0ec0ac9467ef46086a542edc15a8a4540c88f3e995825474085de159a438320f76e58ecc4551e1f7aee1ca1ce4e336795e44b0a9bd201d1ad08381d12de0067ea0a9bc1d39a53b91ce9ef0edba25c4bc16e24d4f1a6cad7a26edd06098d4910d3e3ccb16449a50b63bf4acf0ce05200f316bb6e6950b996a08fa766c43f34c716dc175195022068942f781f8ec952555beff90e8ce36da8d7427f7d8551da3dfc863db7d5cd1d44f3fac8559618765023af0a857783f016c6bc03e0068572b748fafd35e127064054de94c58b51e98b1dde3f7223b197523595f623ff107f6856003a3ab72cf5d9aac81fb97d63e8843949338b6fae44c919aa34376c381864a2ad8d078487f9419539d3b54f02b8059f552908f214da5bf9db4beef9ca464647d595cba0b6e1d645199e70f7e3c7aca6fe23eb88a6e6cea0aaf156d5289c6b8f9b1fbd0d47eda35f0eeea980efdff81fc38dc87b9da0ef13de423575d126634fc9c9200e850ff154efd09d8fa9990dd8d37707e92cad9ac76f3b4955d16bd8a589dd405423db329e24987b7ce910836b61117da699a6da3ac448dcf29ee1bbb51b0bbeffc68b39edbf7969f30723b71579b20741c00f1a051d662b003a85dcfa5d4e0e71023c0b901469828f805d19dd9900a3c7b9c60304fb7238c850fdaf82cd76ab2fc4198e60ad07036a2d9e314477b0ab983c9368c78bad153f704c1ccd9fd0aba10712588dd1473fbd4e6279b2bfc00dd9afa4b5a8e6c41e691e5b8bdf09ce9c4009a16e799abea12e7cb8501c62a226f979beb1cf32fce541e4c4616c18b61efca7aefb4dbe5bd404d341281262ae039079beb1cf32fce541e4c4616c18b61efca7aefb4dbe5bd404d341281262ae0390eb5531368c3a884cd10f644860f796a01e7cd2fa831125b098e282645b13b512e5515a9318df3e6d348c85b1fa780a273ceb953c4f410d98d1bb5f2ae61d83d4aee374f1200007feb1bf781b5b42001a5a5bb0cc819df307d1e1e950c15c590d4a17e6386ee0f1a8ec4f05992486e4540fc8abaa4a3427a592eeedfa76e1188900de3113e7532d0b150189e42259b58ed732519c1f3d68aba53cfe481beb70bad4c9607b2655904a58998ff5c1559f571a120bba3be7da339b4931faf144c7edbad05997a1012dd66f8a326a0a9ca8da5f9ef0f1658bdf8a47ccb6b53bd83565b4be34ff159cc6244c23d01797f5c5a158f2f7459a95dd025799c34a124220425f61d8507958e750e61abef4f032d5d5061c4d5185930834d4ef17cadd7527e64e1ab2c5d0f3e6c5552db368c8f8e6057dcc090f0c1ca18ec404b653572a9428e529c29cef3b3e9adbab7b0e8215cbfa909bc98ce492acf23a1599863e15e4b3e529c29cef3b3e9adbab7b0e8215cbfa909bc98ce492acf23a1599863e15e4b36d90eba0c604cfbe9a6d688b7eed4d822b642bc0023ff579edc9ce8d2b6446b96d90eba0c604cfbe9a6d688b7eed4d822b642bc0023ff579edc9ce8d2b6446b922dc7d8167c9cd19f42468bb45dd868eaef7cbeb3bd8ae8f06cb1bd88fbe042ee9bce9fce32f79a51c3d528fca3fcd2dd860c194ff9f9831ec3419ce07ecd5774c024ac3bfa5796bafc0c27a04308604d03f9e11da3a58257c8b3cca2d4687faf47acd39cc9a69640c0e1ea3caa62033dde125eac62ff0a366b551a77627395fda0612569bfb8e23c793c8dcc4da015241cc745f927eef17669f863ed1c6f1f0f9018ea9633728258cad79ba29ae8e236d910ef152bc68f3b087b317772d309f866c4f5dae47ee38eaa207642df8a65f0e0b2c1d3fbecf52d8e1944ba91fee0b5f33c4c32365d799d8a84963b65661328e9ca7c21bd5bb2465073c781f6007170e06a1368cbb780734ff7d243ccbef27550438a2fad80ef718bc7444e92c74f055946f2c54626c32478bcdc2da0bee61c2802a4fe3d942dbdadaa0fbfa4ca8c1facc332d36566af4df61b9508680a4aa8490ee6f27fe06a091c0b45354992438cc258236a5cd6870bc6f82c11f772fcb0a877331961f88cc915a79bf2c2dec1d2f143ba00d6a2f692128e7240268bf65820fa833ca3c66e5fc86f5a73568ec6ec4f779b7c9c0e603b9d1c302da0a3415b75f32e4674221bbbc73759e582b60693243e0db713dc4ff0c8df8de102cc75e095185cf76282e9eb4b261285743ccf9c1420565600e2f2e5b6eaf605805e85c92eb29a8a758262f8b5adbc109a7a4fc857125f4becb7406d645d37800d8f46717bfb6949e196d8bc8b7140cb6e530278967afdfbf0ac8c8b39a18a1c980b374548315a58bcabcb5d1958cd14dbd67c1895a6023e55a3cd61d140aa60e5b6536d600ab1be4224263504c406ade79bab515cbb95d210b76a3ed3ee11565418dfa69e47ee4eae3aa4d447a89e130bc2a908e62542dc4a39612b30ff3b41eed15ac410d44b75059255a09c37338889aae57ae8463eeb94dd6dba234e721b8bf62278cdecc4064c1e45ba71522575bdb1f15890207eea565bb6b13f7714c0bb7f7cba175118d1d58e4f45c6756c3bc0ded70890207eea565bb6b13f7714c0bb7f7cba175118d1d58e4f45c6756c3bc0ded709618883dbdd23c73ba34682634dbe19d322059f8c80a12b497881ba7b687c99b83a9d783f5e45913701734cf5d0381beb1da53349cadc0396e4487e8144d786ea6e451befda45800fa7c1df896fd64abe114bf802661b8a005b06384aefea9d84fc87523ee1ee09c01012df038e1003104e361a15a2724bd2d31c836aff8ab0069e8c3fa0713036349998ae13e9ee8458e02e3013e0255886590725bd1f4aaae7a713d268b7e1f9c56c4fbad907b271edf25b2266901b904adb76a765ada9a8dead267050b48c321b063c807ba30a4cb25cafa727f824c4974a47ab29e3c01dbda79c647722df35936557c2a7600bfcc4e415c0cad768c3728ea9e1931050f0b775dfa9b741ffd8e4dae1444032aac892b3410d08ed13398808487cbb3c464c826261acb4e39913d16f7496a4f379235d6ede94a6719e8a24ad4c94be1f4ad9e26544ade30fc12b338b4320e2b866e550f4b98bb4ebc5cf76495c5c89c739b5a83810e846dc4f8f88a1a7073c243366dd7901d3cc5d83a2f870e45f23fefa894b2e60cdb30733734918863b43f4a44e276c072fd29c2b85112c40082c069e7fcb562691a38aca6e20bd4a5c7377bb367f33015b21348d495ca84d1715128cbc589a2539508bb43f0d36c14e1412465b479d55c54778f3c2f3d554e3315c27c0bb04b00078c411aaf5fdf6a5f90b8a9c743521cd431dd561c9b5f4d5cba843fa06a3b579c5bfdbb9c29348528dcc539cbcb80c58fa3b0069618997c4e8c55f1596a3b579c5bfdbb9c29348528dcc539cbcb80c58fa3b0069618997c4e8c55f159c09099675167f38569d55d16dccf290d195c4fc19e1cfb95eb8d00c3bcc30a48f79480b54bd61c24043a9632479c6945bf0435e1877fda90e8ef8367c22e75d69bc65d80a3ad6340b5ac202d32938461f175085eec1d8631efe832fbde6c4f7b9bc65d80a3ad6340b5ac202d32938461f175085eec1d8631efe832fbde6c4f7b0ebaf1f53687872c19bab8142f6ff05be3911798d8fd8d981a042d0bb32f9fe70635bb2ef0bcb4049ac7308292e86545c22897da3c444639e10c11526c30233895be294f8392cf43639f97c77895ad1b2f98d8897fc9e51c084c8a705f1d731b57af6ba66107dbf7a0ccb65d85daf1f2b902c7aee581486f36439430a0013580c39e14204598d2ecb92caf1c8847d525433febaa505931987b0c0156075a3a8a1289fc07890027edef3ad739278236fd92ac330fef3f23e3d048575d2832df1868da03f5493a7025d0dea4760233dfd970055cc7da77784a2387ae10ba897063ec8ce4b4b2463ad1c2bba12ac7764d717cef5aab07c43880a01dded39cbde425a0db627cb72068204585720f866b7ef846982887ba87773e014e3dee55a7859eb68deed84fb84dbc6b380bf81a5f2dc8f36300e6c270a5014dfaa94a53d8a5dd336bd2fdc97eaa682ade3f523be71cea640ff48fcf225685be480efd6e9882c3cbb3f94c5f329e68fd5d677c09a1c53d24c3f76d280a00e31295062717e16a84581a462b1aae4baa080a1d9a71003f258c88e4510e21d56b764cfe3b323a10295ff34a2e0399df258c1baa14667e60422bc093df4d315f68843e89bb7f625741e2d7934b41c066542760ad8509242c1e4341f8fa4a26949273c9c881dfb209593875b74bfea1606368ae7fd5e6c70c2cfb44ab62a7b7e3ead5df54f23578d8d5ccd30f9586cefeeb64abde55c2722997ba4952b67ff6e8ef878072b89f44d71707aeb75bdef82567a8e11595b37eb10c1888048c07b68c388d4f0fb60c6b7141dd8712a902a6d8c60ab673013b53b44f4a09f0630e76d949d0ff934446b5135d60bbd1d77c122d955b2a92697ed63ab40c26a7024d3b771c99c0f89065ba417a385be8fae23f3fade87363b1ebd4db3d71204cf0f10b79c22d5e1bfbab3b549c4b1d117b9f9a784dfad78d9e1e72cb5a1b4136df609e305f0c33c3da6c441f1cfdab9d81ac6467449eb18bb36dc8cf4567868d0f523cb788f9bca9bf87d9589a55988ed63c6a6ab3458c992f0c79e520fb1ffbaf1c5f4fa28c7f0b470c2433d7d2c85b094d5578bdac532be26a03a7720809ed1706f36cb82f2c8643fe78c4088b94879b6d7db33d51b7732c74f9cf3810a68bf05a04ca8472da00d19a78cd93b6e06191acf87041dab356700c04f7863348382ea4306fbc6d8fce6f355608c9818adf476de46ac1db0d85859144bd605074111a0de4ca0b00cbacb3e498b0888e4628f2becbb99593e876e0e5fcbb2f109651a2f53ab216b06829a69b191784936bc251dbc89a6e3f264fe10ddd01f6a046ad2d466e797408b94960a530060a442b2190a68f11da28af4998ad015fbfa69dd0e0c99d9d0b0c14c9a9edced0a7b6676095cc6a78f72bd927d0fe12fb311e7315536a4fc01e1f77a2518a710a44767fef3987f953f81574aff91a932db05e236b8368996795d3b4b879c79713fa919bc506eee9ec0e49c3fadaf4fac13ab806f5165ced0b780da439dea3272eb9fac7d5470dd8246ac801c6afc4a58cf7fb64f82b1d0b145e9a59200a3b8e5a79bdcc0b6377d2e93e9fd860718656e6b779af6e177ee798719bed10f9cfcb457ffa74af2fe6929657890e66d308e1a8363ecc6f8d2383f9025be775e96ffdc688c6a4e3caa3923edc9c2187a98b59ed90c88dad905d26100a7f5708389fa66e863f2774842257d2d7137eb75f5c9d793d08d97fb76f9f5be8d2782cb033c04e558034ab766a4f087dc35a99c027e103715af73cf9b4b55c0272d0d200c09de833cea11cfd3490a81953b062ca686eec5a87e8b73a601821e874fd3ab7e5ba1c366fdb1288dc4184d6e3167226838b1d1e1c6d93f252bd363bd1e38998c77867dd848d093ba3968b07d4ba927ef4a261114465f25d5bf6e922bf275d7bf2d4c0f57c02fccb17526fd8120356c00760569c69bffcb0665dc978eb9edca7edcf8fc140fee6f511e7c09df7b2fbe957a5e7e052fb9692a7182305b2a380a33d2c98823843e7fe11db8a5eb6becbca5be7e2d612c8cf92ced165352ad57a215f05db29240aada8c6d22f2ca821669ca35e7b682599bc78ed2c2aa63d6601eb394ab95cdb902de4e86b6b530413371dbe262e819c6fe8e08e19dd6246ad11e3385667689e4e41ab4ec19a36af7a4588e6bbeb21cc18d0d98dd2b41fa297940f5aeeac21baea0a9c97e0da437349514d4aadf808b419c88fbe0695b0a12199780e2b22d8fbb06769672d244328f4e942a5c9b5e7b43aa7799438f3a7461b2bdffcfe44cbced802d71f9dfe4ce60f866a12905741df87e9212365a198a9f18c21643455cf457a6df65f51faff781e58d1910b8dc163fd786669f2e08484faa731226cabdecc27c41cee046337c2456e117e8b6405c965191b43c901fd64ed60004e33d3e608aad7c0c288515e458127d94664a076f6c55b6cbe75dbbd583d151a167576daf5cf9449a56dc0e14683b4148b1faeefcbec324f9b83a5248f02a2a0970210f66825bd787435bc2723bf35d67bf94667302a92ff92726e2fbee64eb9f05f33364fc85bc074d3c9a64bcfc713f12047a0b3f77ea00e3c7ead5a72874ca2d6d1159daa7052a1a2d30d94db9b2f7487f5410865b1a1245ed695336bbd8c7144e9d5c81c37bd8384fab7bed34428b71600dab1a1931715646e53073c7b50941178d1955885b05ef9f0fb788920bd31a8a4766b570fed2ab3f8b44ca5967c796353c7ef6e8003a1f30db2fe73b6df2c525ee1678a8ff4c6f35bc6510484a04bc7915a5041b839f25e7f329ad7ea573728fae22f1ed8252c554fe11d9a1402dcaa3807765c886f924209fe6b88ec7391bcad85a8c0d16b1c58b52afcb4764f50a18592063eff4e106dd01ae2774cf1b8cbdd72551c359543c92c0132099d6796d484e3d8550e869f848df0185a73bb916e08f0a73323888d7f93f20afb6c9ea933d682b81ee28b8f6aee1fc5ec043b9a493723b79eb8fe351eeb78e71630a9a36fb4f035f87cdc564fb5ef76b6430dcad036c98c48bcb7678ee6c7b826182c9ea8f844e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855fbbb218bfe05917a45d9d4aec7b0bfb7bc044023f8d1779d5497e26353a0244dfbbb218bfe05917a45d9d4aec7b0bfb7bc044023f8d1779d5497e26353a0244d84bf326cc12967c11a3496c4c2115a49ef53a2c54aab8c37350e63f14f28aaefabde35cef9b0d581feb17d35eed8415dea3dc174ed6b6de9c8e13826d28959cce99ce8563ec41add888b2663848d67634b1e52c4f41cc0670ef6b8861a028a676765c559b004cf55f9ec7280ae3471bfcdf60a4d62b3b4141d34ae36e078933347b3e7ebe28fd9cbcff434b86cd033f13280367f4a2f799a99b0101054c1a48cc6a62156831425149ffa0f76dce0c05868ccd9c47103d28f93bd48ea588a878e14ad2c3ebb129b502de3f6ea6744b1e04a588aec26ea47f37ed9eee34443710a681b5916d99bafd148ddc2cac82ee084f9d7c92707fe8294af7be7853f33bf7b4c6b29e0a363576d95990fca43660cffb7f2c9f2c222d490012216267cb15a4819d48b65293df7f6d199b28aa347dc39cba7aace09cd77195665fd3dbda47222afab2436f33c777d70de7e600d2227522f69a659ff6c1befe655e429c6c392f8cd489e0217be7905b2cbccfa534f45ad0c54f671806311ef50879f118d317e7b09b3fa39fba7dcdeee4d385760cc5189ab58fb2b15a89a56031eace0ce5dd69b2831f881e4e02e5fa13e673b703eb1616df6e3a21cd26350925514eef0ab9dcb4fbb2cc346c3c37486fee1a06c476f667bb93d7a9f50e82160f67c1117d3fcd1d7957fdb36a217cf4df59f41bc67a143f7d17c7bbc1e5f64e77c5ab4deae31257aec56c9dc4b25c86a5f9be73be251275ea486dd16ee97bf10253961e4f344413d3dfceb93c8084c87d92ecf764548ce47ca7754b9e4000d0ae2a102e55163ab4cd11421bf41cc337bf61bd9386f31014d51177920168fc433649a457ae2d0be68da25f3c3a2aefc54fe7675b956857565a7b941a57123f4b2de16b49583b58b485a7d4c11ca0187673df649e6cebc191e348abf5e696dc2dcbaaaa4790f9807f7d855a4c6f0f9d21290402762049d46f6637f051f1088e6391c530bb5cdefaaf1e266a3569a7e261ab435a5b87ab72a1b580a327d981e13b5de8f6014770e8a989e3d0c3c0463537e3c43f787601bdd0919aea703a43b262f8b258f66cac5b358c975383ed3226b15476112000c969b7487cae13634c8c4363ebfc9ba42ef891890bebf59a090ceb4159e173968eadeaa878e1a2cba2f79de45710f667875db42b3c6553149224ba91700ce53c53639db86b361c32ec2713db91a5e3c64e487440dbdd610a5be5201d71da4c8c9c1ea07f796b85d87f0e0ccb96e883aedc1f054dbfc16ba648b5a26c581a599606e16f89726443eb14a9449da4061acdb7e7ad4cc9bd146885700dc7812d111e48468a8db76d16d190fa91bfab7fd76a868fd4d5372827f3ea12f5363f185d6c3697813559e6ac2b65b8bb9b6c1bdda81ceb9fcc8774d97b3a1494d06b7051bc6d9c07302274a4823ebe23731acc4ddd8f32dc5cff68bd5a2f5f7c4fd279354883251c5122ed25b6e76925ed2c4c6108e13737433b8bdc68779604fe0071fb9f90f24e8d0ef4fc636ed87ad5365f8dd91e8116fc1b8f40a30f49d890b25c6dfec23a5162d4846b499089ec6c80555e3db47c1b61eff439feaf507d5099a1f317c34b5e34c62d37472cdaab2d5a55b475cc0029bc44cde39d7cdc0c731f18349f19c0f99a7cf3e04a83dc96f1786e37b72fdd0cec2ed662afb0a27f8d57f651caedf16f381e8cd7626d67b33128054be0a95fa98cb3edf6acd6410285dda020dd1240afbcc905fd4781882fbf86cd287c0fef76df646aacf044957d2ad8ac721c51024a4597a7fe9580850a77c2bfb08a79b9f3c33a072de55f80b8055c8fcfcdbd0e16ff9698aa485dadb5e6d811786db2856ccafd8d05836feb7e90c14367fb691da48a71f34ca42eda4c1ec4e51cfa7e002bb0047f9c0ec2721906899451681c838c8963f2e9489205347b06abd0b0429b334c0fa5c123c388cae3f2a1b20f37cef7d3be09783a868d822f7232cb6ffb429dff90fd8624d01b306bb5b2d4649b4b1816456ecd19115438e7807e5351272df7734f7e2e82d40d97d217147ff4802ab41042121060348726e59ac4ce598c6de430c329f05c1d41e5160a7643d36e6955b4cf4842c8db45d6fbf80facefdc9171d2dbb2e2cdccc8ed5d16111e6cd3a27f1b0ba340f741d8ea309c767a184c36f32171f6aa29210f74a62c1680fe41f07927866dcf587595d7791f4be781346a421ff35ed961eea451d1d25ea9d6246d3df9219831970276c0e9c34622c97ac44e9964142a09cc42d9697a9da1edcb49141020f66a6e424c702dc3c49ec183cc504e5fcf87910f26611b468de8436e501eecf2d9f9c853d9fdcba83579a6fbe3a04e5fcf87910f26611b468de8436e501eecf2d9f9c853d9fdcba83579a6fbe3ad13c39a505f213c4b15155e85af8d457425f15a52a8b3a0625676b2b5d8027aee61cef03602230f3a8a2ca3ba2770a04892ccf992c680f50469331ef6a5aae3171b3c278841f863dd5899d94af42cb313f6d1f88cd23dc956ffc3390a26115f6d606a34565c1191d6828a0272c3410c688d940a7166a1fccb25b59efbad3c4a5505964ffb96bc0f7e4c1a24d18e20d574cbe2eb9773eff3aea28c61b60673cc86531a668ed03d8dfab8895cc4042eb3a22733cfe0773a5dc0b229f68a4ed07eda07924603d4892eea2458b2a79e34c09e31e6e38783f8c6a914a0160f376f3003639cb74b82c750483315b506868f339242eb7c8575e8a3f4909c7129e4f6fba06b4a6002b90b052965acbe712dc2c6dae156af0dced797df39a54485a4f0431d1ebfbaeafdd181fbe7d6216335a645a1fccad83274b69f8c219b53ffe219923e300baba4560aad128eb4f7e2e84b15b678fac86dc5589e2dcca5b47bfd9054ad88c178a96bf4253e34d47ef39e9297994e47383143e19551dafb43862f51ab268a9e4dcaec5d2e5d8c98b5de7967195c3bdcd84d3490911f5416430777aaddfcbee7602f2402c4275623162b7d5c37fa1654a5327b1493e6eaf401aa41cdbd6e07ccd8de5d014bf7df5b88c395d1e99aea69541c57ad83909203a68946d9faf478b00d7f740c49a44efe39c624f4f81d80a485939473ba4b997b2d2076c3e215409a543aadaf46a08c00fd60c21c509a77293707071456c72ceb5ee85760b458aa7fe08a9dbfdfc4d6e7860441b306ec68cd61c75bf70e042655e0382a393411b4538370fa653effe460e8c0935b40c95f2ce87af66e9be53c367b2d50a503adf838b45b595eba6dee3cb60d6d0ae74396dbd6bf3b84345f677acb1d348945c0d8b230dcd9984ec733b3b1c58e001f9753fe557e0e82e6c7ffd8d94affbc4f7df291b022fa10e453680f4658df4394a202804a280588b9649f9300c0b74f4e5c071f4160b22c67ef27118cde855933515511d87c5d8d8d97320895023c49a9bb448420d0b5df9f554f74d3e77de9023bf4d0a3a4a7da378a7a19b8a69f08756379d8a828a67c9372aec16fdbdbcfa50c4caa86c2458cddb86d6db9cd9ee6db1bb5d6bffb5f09637ed0a2dedd75200208b739994f137f7c08556494b03eaf8033daa1965bbdcde89229efc02602d83354f4a631c75deed5f4091c5b9c41a4b089d7bb3615f11e4b44abd3658158d9bc80a33667ae34e3ebd89b64c4df57f6f604444efa72ce46a8d71d00ad27180f39a8fcde07d7e8296c2c14f0790b165f6d4b8c9d70080b379ca3c0ccad8f42da8ee2b2a9c1c2029d036cb6b482156dbdc38c7ac7c0b550b799e6e4f926d56d8705c57287b6c3c8483fa88f16c994457c903bf0e98e5da231e8c6076d3a9108b675d90fea3760907d9df577d8652f970b4248a55af10ef9cf5a4a0e330a99402434bad14dbc2d930af8420b0ec3f3b99151480ae13f9080fd3cb2eb669f6d4fc9abf34f4eb23787e02ff59173818741b5c99c9bb43fb94b98324085f9aa63a86415964ba2f05ce40cc7daf3ab6ac0fa290ff27d825c081cbd92d851cbedfe98e87874df4ab47b958a31ac214040edca62b45351696b1a02ec890733ffac94a9dad8ec6758abfa4fc92f7da3c2e5d48f5aaf0f97c3720216a54ea9e4788c1fbdd10ff789b5cf30210f3d20c0cfe6cde1e8e8f4f24a644886635f10f1ab9f3e8f8371375827eb22d0aa0381ef2822536af000ddb52ab04b7d71d6bb3ff28a0186e91bc6be4916e1a661fb4588e1b31e2b18dd4eb9a5037331cab51d62ef52fff396a219bd3e99a4e922d584dd1b5758190569b73fa833e61072584b321703b942d1042c8c3001b511edf5a37501acaf3f07bebf333c982fddeb4c8b451f180150ec8fce5f1e501954318e7bff89777ff2a85c77933064567ba1af9b513c247d1da5350397670adb938188e404875b457f9fe4a6a02333cf113efecca80d69053113dd7e69999ed005e164340f06e42a2f1b42fc2d12ce20174df2f35bff6027ff751a48a225b01baeda8bdfd7038111973e0811c82e1383c4c84b2573173890be48c26568e1f87978dcf9fb512a06adf56aaea44aac186c783b95d4717ff11a2858981b7e67aa35cdf13a70e71e63aeae68c835143a3015c177d614877f1c8d603ad4bf693bb41d38c07a71e370182295dff610896f70c910ed74e56954435a961ac8d41a7dc8a133b70d129bf22ef2ac6572cdbba212df3b5d2abc82a1d46b4e0de047eaefb8289cc8d15418febdc6699659cb8f8f5d4decbc45b3b668fee02c6ae6ec95596259ea045d044f7a0bd94beba20d28a39fefc157588a5a90062c60197687b9a366b9ff455dfa3ae3f31cfd1e8f915f6246704f936dc415d842f820c8775e078c1bd5e01b8cf313987a9a3beb210657f21ed85713881feae69ee384a48c1c5a3df5ccd4d78834fadcd03b33dca80874ad93da24214d4b6a8127a34f88523d896787f3cfe6b09cfe310536dbd3aa12f3bfc8933a3fff2f5b9da269eebe5fe1ff18eea6a8e1eb9c151f44e9ae49ad79a046782dc41519b57b06824e0e0c550ba4a71e81e023f66376f59f1d781e8e5ef17e381846603689fd94e4ec879cb44f2181afcfc3ca74dde57ef444a712bd06f3f1320d86eb55aaf864ace1f9b95527ac02071c6be281732c274693b1e8b1f6f3f1320d86eb55aaf864ace1f9b95527ac02071c6be281732c274693b1e8b1f4f8ad7e32d7d30ca67dae9ba5a8319d2b312f30772d49af623ddd16037d8823e74b4ce256ebfc04fdc3858da392f4e914207e83726b6d3d52bad911401cf6ee020d758af4216939cef128d90099f730b11d70277de27c0899c51be31efd4d53760aad0a82142d18da3a6d49f3063cfd726b09014ff9621b1c6a2852d99e45b6396143672339481cfaaa9cbf98c4565d2e1e833e593b863993b66294045c898d324f03335332bac808d7951d22946b516adaffb5b9cd8079fa9e70b9752183af347e38618f9c7b88e23fa7ef73cc737af92c2210973a2267d4d64de3f98a81caf4994453ffa4ef33c74301a70c3042c40328f7449535306c7f1b7376216e260a7e0081f3680de9bf2431dc7f8c9c93e8b25e5938c86f87068429980cd277a3f80e0081f3680de9bf2431dc7f8c9c93e8b25e5938c86f87068429980cd277a3f801e5c2c9b8a320b69b61748f01e53f72cc73e41a3fe216239e716bf6d4abc75b1a64b8541db983099f28fbd5edff3165ebb668ccdf5542dedf9ee104daa39b493f59aaec430910b25b46d162ed2c53d5a3547379df487af4d0771c1053fe7e43b368f983a8c4088eb0900aab5f4d91764ce9ab9dfd67ddb7797bb4d012130694a44d2d3cf391cae7b65e9320f17030392316638d17fd6a97d73244aed7fd092e8cfe25a6e6587a81acbf46785ab19ed9933e80f9ade97e751cbf66bc451a082885ca246030360dc004c4e40a567c6e43ea641925be8f0858d961591efdeb73bd51e1325e4913a2193674715693d6c6a077e38c517b8907fc1a5df6ee946925bb99a13b079f7b6957ef01857a5e133999668f4514e1a5ba2028c69929cf222bbfe9af95ad6b86c23acd33ebccee2772a75b0b33fe8917e300772f58673f1db4d82f7e267127bbed43fecc939cdc75360e4880694740672fa11b91aa1d31257059281a1a98fb298f3ef0f598bed948a5a595ab0ab6b421fbd25f185655a84b9d51ec4112a747827149195929d17307c1d09cda575ae60cf4e5afad975bb0900a098971b1dd880999b861acc42697e3db9b2412d6c6ab717615312f548eb3b0197c0f765f04d5df0f77a0d6108daca67aaf3360de00622c4aa4039b86482c137296fe3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8550401b923b622d34bd3d1251bed002e54f4a2d4dd4b13e7969a78104f8b0593de0401b923b622d34bd3d1251bed002e54f4a2d4dd4b13e7969a78104f8b0593de0c9799dce6022070243146f3577f5852a240e575d19795444d0b66337637ef75673dce42ba28c189e20f0cbd55daf1c626da1c4eabe405f0c22393a699d0515a427fbf35e387c45b8615a59adad17287d5ab6cefe0821fb9ee1c74b133d9ab42df21ca42e52f395e6414d80bd9a5346ca39ff13aae0fc81b65d2411f031c5b0f60aac82597bf8272e2a97eef6a6dd82a427296843f35c7d41678a4ca9cf5526660aac82597bf8272e2a97eef6a6dd82a427296843f35c7d41678a4ca9cf55266f866e1f0d88d381b62866ef2ebf38dcb86fe1da9c665e7085448dd9042c00421ce7218a9719fd383cd3c0dd503786c98ca36204b5935b2bcb073b128f84c31fe765e3685f4f27000c0038ca94f4f2d3cf75b62d6a6415e9137e394edd467df67765e3685f4f27000c0038ca94f4f2d3cf75b62d6a6415e9137e394edd467df67d58a9e0009b70b488d50a6a132f460bc64bdd4dd596d2ac76669c5627560bbe71cb3b6b56000e50d43b073ae9f14a21e6691f8703d3af99b17845d3b59a651f52f83ce5988b9d483ab6ec3bd57e48d50c3b0963303b1a6edd830ca173aa12bcc2f83ce5988b9d483ab6ec3bd57e48d50c3b0963303b1a6edd830ca173aa12bcc381e7aa54d706eea61c2a6a1d191a55596b6f54c35bb93875abb0575db5db9f845d27119616eb602eed7a03e4fb2f04ed761e5e705e12655a5ddf6e442e73e150832b119cea25526df936dce5766c90b0d1aded71312378292b262b3e5636183596c2e7dccc2edd2d6618e0334e93dc4ce1071fb0e6bde7b6b05eaba15a767b826ac4c66d037bc2d32c50cee926f9b47178caf25c1011f105c3e1631ecc34c00a8c5adc76a93f099cbed853f9901233dd0eb861589e96179aa4a3a711888695cef8dda57249c2b8c40f2ef03a8782ab5a2490bb89eaedb428d8f1ff16c0aab7def8dda57249c2b8c40f2ef03a8782ab5a2490bb89eaedb428d8f1ff16c0aab7d8032d96faa16ea79b66a7cbe2723ee54bc112ef175d0f96b8f9e41f076fd0609465b0e7a96829e276ae54873d7ad85ae3ef96f5b65f963f1cc044fac66c8e9512ad87bddc4ecac0153693d49f951e1e09c874f9317e926262b89e7457b6f5edf05d4f072a430b0b05c5f4c5ae876a97da8bfb77095162c28f4a50a5ea9127e3869f8d7896e69a3597881289ca611e2f5dd85c812c13148335aeea0af7d52cd88fa39ef7cb20f87810900185c5a04997620f9ad21d0bd16017062aec5814f2d895f54e9cfa77c5ac0c1cdf31663fd0937b262d8cfffdcc690d9ca6cfb281ff8b0cef5ba01727cf08be652a850b1a7214b8fcb5ebe6154b6948036324c29ac2eccbe2be96eede05c6dd533b23257f8e42eb71c91607bc8ccc5e16e8cfbeb88ea0aae2442af330da52fb1ae77826edcc434fd4f7cffdd9abf40ff591fd84aca5f7c5e25d0e4041164f58f93a1da0beb251b5862f6ac3d75f37bd5feb35646e0db1dd54ca51906d7b5a4019366bfbf464c8701afb5ecc5ba5eed0cc57a073b17ecf5da8366d08d0530a24f26713b42d24efec23206e8a63d9b22b37aeb2971b7791235e5568db03edc684214ce4023044dd788c9275b09464fa96971f7f6e9ef03adac8a6f44f8321b673b8917c991230106140fb4378cd3a356da04cc5cd907392991367e398a4a1bf701eb385abba7df1826aff1f761d3bed1c73936e19fe2118ac5b8623cffb64414bd4f8f01081735f1cae9a059b1fe56fbc95ac3155225cda11590d4064c1fdf16d4e0c57e59ed028c1a288d3439655e412629eaf789cdcc317be36b71b4861ec9169e6b3ced443026124532b36317ee50ae290c09bb571a7a36f78e7cdb515837102da15d2a6e2afddb03c1dc19a04baddd53af6b1c068b4477042a3cdb26e43e4120a6aa755a3562ffb8193107d45af3147b2f989441b7f056a12c6f57bde70a207c34ddc54c5f381d4567d45db6bf2d730d4d9bf16fabd900434fb1c56c514b54ebf1e8d5dee694a91615636e0bda9ea3597e2a1a2f194c00434fb1c56c514b54ebf1e8d5dee694a91615636e0bda9ea3597e2a1a2f194c922993cb281f5548620289f62c86b1bd4b99dc342bf4d9ed4121454de80020e82bf8f1574f4b11a121c1b0ac4843618be29b823f7f5cb4ea284402fb52c48ec0e522c1bd390c0ba69c7a558acb95daad5c3802d042384995d09d41d3db76bdb605f1d1967e43e3c16339d8ff337c055411324dbba6eb8a48e72e1cb7e774547189a33b6ecfab58afc4553f68692b64ddbcb111b675a03b27270f1ba6900718cb90a046fa779ef1eeb20de153c1e9e5c04f756914ccbdac8f6e2f42b0001a51b2024ce70952d7f36f1f1155677632efd1f06979fa59a6294b51bbfb46de0e24f560b2f9900e8aca5c2fe9c21af2714e660494c573e123c5a9aa1dcbb4e4651c0ff452d9b598f2d6669136f2509697bd4594072a48679dbc5873c5e3a66d025566f8a75167e7b74cf5b16800df2d2928c82df69e94bbd1c72372a0afdef20263df67ad67e58ae9ec2dcc2ac3c5d41b4aa9cc59578e252ac5e79970b979445ed8264e7654993b555a7146afddfb9d7a9b0dae35b335a6079b77085128f96617bae06452bb8af34651b4b6a4da11e34b206da0f7cf99c0ec55a9b283692ccd408cb0782a3f05d63e397e2638539012beb624b3edac7a24f3f17c7eabb4b65dd1a549e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855880f1b65b3a5ef2c5bd019d727f27d37784ad7392c1ad1b2367176b2ce748b84880f1b65b3a5ef2c5bd019d727f27d37784ad7392c1ad1b2367176b2ce748b843d97781a8105ef385e12e70e20b91c0fae1f9621a5d6d9463333eea4d5e029098173d9c7b99be9a1863fcb8f240d80266b834539550fdd98787588884f9c6c144c83e6571c7eb8c26b9401cb1e0c6504399955c8c0fa1c33eb06dcc0256c3728427e10486b57193667221e1f513b1359d25ebf898d2ef2c1d7b84a8c37e1bd573e5cc1b9bac6ebbd8953041d41f74d9fc822867ca0799ac7ef7231d2584e8991e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b85591ab87211b782ec076cf09a8c732dc8126357772723c9820c7b07cdfe31db0e691ab87211b782ec076cf09a8c732dc8126357772723c9820c7b07cdfe31db0e67dfdb2ab485f98ab65a3781142bd82f2a41ceff0b0446503ddee71996516a644c5c9bbc36fdb894be00e0e17e8c0ffed37a531f99263e9f023edc33b1b0344312333e510ca85cf0bc0b0d5418cc23e95afe357c0630d2dcf2845d35e937e75132333e510ca85cf0bc0b0d5418cc23e95afe357c0630d2dcf2845d35e937e7513df1fa9456b35f2dd49e358ed7d5d16cd273f2f938e186b60dd6b2aea010afd7f850091d2599bdf12d19edeafdfc51f4810b02adec211a6ff5d046ba80b57157eb5d1a5643faf7b08ce0d51c1b855240550d5c4f667d674c6b3dee528c747bbc43c893818e6eb70420f5b7b499f16d223c871e7f6629dbacd172ca935f7ce58bfa3b6e334564d7600846d07742881ad9a8a98f99b1210f9e669766186e6235a149009c518d7606fc1cc64fa81f3ed2aefeb7a9a0a05352096b508fc7e22c5842282aa10f7f6c69d8c67332e79d2042d2e1857913a017b8a36ced2de15f8988d7f244b5e1f52b3c3888fafefa13e048021e6e46e9ed39d12227a27a705ee537827e01db00a7dbffcfd4b65e5a8865fa16c2eab092427f69d13b15b2c5816fbd7efd883c1ce41032db211503805f8a88e2a341ce83aeda42dd5f4fb81efa5b02484291dfb5b5780f59c79750ec1999b792098845d284ebe2d957291b39184a7436a10b90df44a783ba1ed2b918f662b12058032a25e672204c4b4575e88cc2b609530e2f39cd2f6926e93915f160769dff899b4bf557b4bec09fda963a2f61a82b0398160e51475b3a41c481c827cd239c3d944981e71e7071b47031ff800c98ea0107708dce48af3000aa611ee44a95b0bfb3799b115a12ad4b4a1e8b6a07e53121446e9dcfa0635d8cac67182da419e02a7d3da38d84c9224a51003bae3ac122f938cf97db96fccb6f2f1811fe981c5693e57a224be2b6df1424709078c1af4bd1c94d826536771441819aabe4feee0567a318c0d91ac7e211f66842ea7eff23b1dcf3df4fff42abc4315053dfea1f34d59fa2318e2272e7746f3ce306167928c3960f0a2122cd306273d3bd2dd58dfedf52284f3fa601ac8b3fcda18b116bad4a60686f2eebc44f475538497dc7fd6a6444a21997c29b2add943c4e099af504112016c56d3c804dc3022b1d65bd2fcef2fc3a2defb995eb54e0f09b25c746a9cba5f30f7831490ca4c259839816aa8e2aecb0de68cef57bafb2ec8f8597f6589cbabcd51012cbbd2967b89c304f6b2ed1c3db47673e710b1ead195fce1f8494fcbabcd51012cbbd2967b89c304f6b2ed1c3db47673e710b1ead195fce1f8494f8e21ab5615cabe0676d104a37233918451a1352f19339ad003553e4630869926c3d4f2798f51343b29c20c86c772d9305dcc01582252d8e86e39fd3c28aa5af325456c4b1bc942c69f37990b989a16f0f2862d29935fea4aa1c2e09cf55088ea7d1577a0cffba81e7e539494873d2e90ae9d50138be2fdafd5b0165f160121983678941ee261a9d24d22f560f1f9833255edf91d002ed7d16efc48a23a6c0133177c615c21a26b02f312962c3a281ecfaf44f94f9f7e938e256534b11d95b1737eded12df4e17b686b187d4896153edda5c407ce4a935b93b024cc28ecebc3c07defdba9d4af4ba4ac9a3aeafa41c307fc25ad13de50dab53568cf592db1c42074a6d5c7c5b84883ba435db729caa597c412e8eba40b868c837503d354de3b4c5c2d82b3b053934e6be9a003540bd1791de5e564e56f5ab75b10c84799184ecfacf72c14780990767d980a2caf29136e44dfaa414d0d88bafac7e086e65144a5acf72c14780990767d980a2caf29136e44dfaa414d0d88bafac7e086e65144a574f634148bae050281cd1a682fd8844b50801dd8a6e509ee888956c6904e4d0c705af9f3f2684d8d6259a72e37069dfd5011af8c17752fab50436b7ef457ffe1105c890f1570080d00b8c93c3f7019478b4aaa055aa1f41f27e996fc85c050aaf4cc7f02d52c8d45e79ac1cd3f677b96abbcaec7768597772149a326e576ca93ee8ff6a6052e161fc01b596f1d4fe9ad160c80141c82f2b5f9ab262874006288ad461ca390ba8cdb2cdf603b3dfd3853e9021104216bb8811008d067a3f12971e5376fa7422a22407b6684e80efae237a92d13768a557418dd532c4f028edab0c8f8f3373f073d8abf369b4acb7ed592a30adead16304126ec8cd9a8163d5945817f3b9ad327982954691841a7f9ce0b4ed4c54fa5741e92d61a476f0ccfa6dbe086599c72a1311a77f09e8d2ff7dc4aa57cc8103eb1363456e282e46979ce67bd68346a107fc69369e8fa15948fb90c315a7847275d47bfc7ecb82f0bbd7659844df594192d5eeb154b2f95a9432035e58c9b9fa2a70f7c1553c02f4771edbe5eed8fdb4148f75a83f017476e03ff01f04210f37e4204da744f1f549723fc605ea252ee4ee05837ab240873a6278cb7988cb4aa614511d0baba11463deee1ea57718a4011f9c4a7a12d48cd1477a5f0969ca2aa24faee9b5b22018c89deda58972ab5e7fb5725571c6924ca9efec7adac31ad0ced1f96e7243ceabdcaaf429a1bc4e0299579b5d5f4ba78aeae22318da235925fb3a2f6a6589dfe47136c13831bc4e0299579b5d5f4ba78aeae22318da235925fb3a2f6a6589dfe47136c1383c3801b52c4123e6b769f46aac43b21fa72ca718cf2d6dd5cca74b2a8e125ec780456c92c676885cd675efed7c8f653a7ae764b25f7fdb69aec216e2aaed3ddc766980dd10741ae6d28cf6b456970741c91a98876b355faa4717287566187bc272e18c5e9046b82186c9467ccd24c48080c3c02bb22a84f7806efc45240856a1d1036d361ab879b5c016c455fd78b3b3e95d68d558e9b69cad489f97daf23a853e81031503125913eb053a0c990e40a55377fee9f79ce35932ebf95b98749f5f8ee425d257607eb701a7369bc65a648e328dec35548c57adc9345d134985ddb405f7747d094f56b6afdd565a2dd86f00f60fb6793f2364ea7f3c7a3c46955be3e12986fd79055bc36a8344975b62e47cda936bc36c45af8d86803c146bd876c8171df2e913cc6cbe41160bf82151617fda45364f33d4e4c4d62236feff286868e7f1c6ae4f52d99c5d40de8a2e95a1e673453810bed789c6f360166fc7729685e7f1c6ae4f52d99c5d40de8a2e95a1e673453810bed789c6f360166fc7729685e762de8aa677275769464a1b42d3560c0283b28a3aa0408fcff6cd36d815b160671dd4c827179f2097a1833bef64be1b6bc8da39d57f3e444af6d197a74fce2c246f6113bdfaa6bcfac20161f3ab22f8f3993da6a5f8975c5cd5ab4178bca6c788186e8b8f56e947b807e058fc780cd7a01acda3c110a3570a1afa65d600222e28a873a5cfddac93e4ee9ed21c71e618c502482d36761978e8fb0565052f2c8a5b311630afc587c96d2889bd72e2b16c1f60673c934a8b2caeb1b3542332d7c9a95990d8ca3abf41998753dd2b650cb97599d3bfdf57ea39c8fc27675653f7c208805b8646e0e5afef77ff19ac0b0b41db1095019346ded498ea83a1bddc9d3f9a4e874dd17a383ad7c1d396d42f2c688dc0f211263eb97105e3a2badc4bc45680abcf5e5b7dda915cb7ac46a1e853c60de51d054ec8e654e7e1980d6b869097d39e2d08e523ae79a2c84c1d12adfd9c0cd7929a6f9c25bf913ae7450dfa58eaf39e2d08e523ae79a2c84c1d12adfd9c0cd7929a6f9c25bf913ae7450dfa58eaf9c11c2918d71fd0edf5f84fce51eb06101af09363371e865ebbb4010a92ea10fcfff1f8e6ac38183425e0bd12b73cfef20006d9026b2f8f73165bb3fd6802f4a9013f862b438fea21213670b5d58a580bedd748026bb55458fbd0b6c87c222ca8692031babe1d606d63a1168b134b111d606f5141548c5b5d8413491c47b8481bff6d6c7b01cf31c958205b7f5c397adbc92b54328ef99550d9afdcbe9899b4d293bc30f98cd403ca6270e3e13722c905707aad6c47f5abec5383719435d2a0a278650a67cc38d2e1df69135b7e12f7b0dee4f76ebd69592c806c67882853178b793021603758ebec0ca54282e22d8180a3907ac58745f85e969a8b0f27237358b82260f271c7c3805adf6daeec65ce2dffb985b612c9e0d6eb03742f9bf50df176afdb272e08cfb503fc77c5646d928389ed9eff86f59b43c89460bf8fdcfa69570ab6ee815251fe6008f1713e43326e3731acdfe7e6feefa8540f299a0d783ba852a5deb66db60fde74cb1c6c237e3bb357b90cfb7e659ae6d36474f769627a6271e93c6b140892639418b24a3af63fc02d0358cf09559cecc3b07fec00c72b58ff8b1ff5602c13915fdc2d3062deda0e7d1ac320fb7d5fac8bada53f06ba389372fde3ed7b4a0b4baa40564338f43c26101be19d8fe612d9e2d16962c7545804e7a8181336db0d8a49c330a531006dbb0d1f376589983c2a2e5380233819ca175c27706bb80595354ca47aa4ca9779eff6cd261153c42438f181abffbfc19da611557c91b19d0bd9060e2d59c506a67f9c47072654b3cda082660f35b248141c6e9d02b119140e0af548cc9bca9d36fac0f353709a1cde31a06a8d60fb0a5f5e8789bdc3f15e497d444fa7f02a75180e8bc484ddc024ae6f036ee357581856174269039ff6bf7c381043c60230a6fc36de9d2dcb133fdbae329990419f380f8cfe9d5c0b86b3a6eb001da56b05383555ab5e6177106e6ef8d99013a54da01f8cfe9d5c0b86b3a6eb001da56b05383555ab5e6177106e6ef8d99013a54da019e513201e561a4f2d861bc8ab420d07c001d4b311bb14780ec316ed8a11eb6ffe867b8214ffc81844298e35826576105be9ffff0f42fb83a2810f497a09f09e042e6035fab89abdfe9834c528932f3546ef4a634984d7eb04741bc75cb2d1b993a016c361d9a15cb4f368076668b912fed0e7aedcc2c7d4428209106e29ddadae10ae5a58432d8fae7812a0be50f24b93f809f94d2dfb821d085d235fd1dab3fe10ae5a58432d8fae7812a0be50f24b93f809f94d2dfb821d085d235fd1dab3f885ed3ae352eed914c1faadd5e25b7f09bb4688a526b566b31d57dd049ac1aea885ed3ae352eed914c1faadd5e25b7f09bb4688a526b566b31d57dd049ac1aea5f6af70001e88dbb8e5789a9e697d0c04cf0149ea2d2bc4a07e868cd298f74f5fbb82d9a8524ac2d5621a3a735fa57e554d21a710a0a57da457fbf4201dd4a170b3203fc89de0616649a93c53f2705939c458659b040358700956ebfde64c6213a02a6c76bc561485230b7e0ac5a19d531c9ac463e6ed9478fdc85877d7e8f41d1a4cccd8edebe8129cda7c69fb8b255853919b13b4fb26e6af1ec0c19f3a437df23663fbc3570dfcebb6dfc370288b9a5a8f9c164ca62a9527a7a96f3002eb2c5cba5906193fced250e4ac8af9161ac22d4dc0ed358084a6e5eb3cb51c725c150c0c386d18396eceb7490e30458baf593a39cf76c4fd5d89c69caaea174f8f1161f34d89555832d933b53722f32361c12243ff5fd62ce96b1983f2ab482bb58691a24704a75dd5b3197500074f6c9a5732e2b7d50ab352e291b2196e0db0a3799b458ae4bc946ad44b44125d305ce35414d87b4f3dced52497ad9e01567d3db424f7d9c0325afc9a9699fab9afd4accc3bed380bdf639f14b066cd75b53fe05e13646748744fb4e2aa2511d4eafa76ad96de773d624f8f63f1e7701796f992ea0a43f3383ec4e9a945c0a5720a4df5109acbd79c8e0bc1a2bddb65c8b4157c8377f29f304db467066166e410ebaa781a67c017f0f4e1aa530d7a38082cbe792e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8552d73b86048ae33dbc22966ca10c44bd4238686da0cb460dbc610b904de68b2692d73b86048ae33dbc22966ca10c44bd4238686da0cb460dbc610b904de68b2697aa04db9f38e971397c6fe53c11da5e2da0f5ab6c4a8449bd45ca8e0bd914feeebb9266cdec2e868350aaee6cb505bba3d34491ba6ed56ba56e1567f822660276124aec96e045f3cce46a9d4aaaa31f085f08c869d113ef4e614eb2176d43d79a85e4aeea1aab5259dd05154e22ff5ea68e0531c9f169eaa7c9e8d86c525cd45b841c1e24e16fdbc6bfb9d3acee77fe1e061b07a4b520eda4f0ec7d594a9919d2f17f3de388932c9d291bacad6e834328953b71489a60059020a483dd71aca5f0b5c2554252ce3e13b552b4fc1905f4a4fd1ad0ad5575ca53b53d1863dc3360d39c341254ffb34bd960af6d92d8ae6fcccf144ea696804c160a66113eff1e43555feda0de8569262bc92c35a0e2b80babda20442d504caf6f011de3abc840e3510eeea2d5f7e971664ed69d0e2046f831b28210af44f8a5e3a725223ad7d78631840ba892a5edee61f544f8ce551ac6c89477f69d0656951b492d7b5310899f82451e072fc3984d8b33cb29882302dbe729325f33b5ed65226046722601355968e74c04ab0755a9e1f33890a637ce73c831bb4c208dd89dd37d17126d35668eaf2035f61da6a6f015e1f1435c9d09d4460eea30d1caf81a4f0e2138a00953aea958b66b5c6f14ec577d8d30207059c0b4c055e4269142f47e2629e7b923ef70014da2c780c63689a3fdf85bd9737d39f4b71faa97e21d15bd18ad59e7f4226d28b084a9f378124b2b1a51563bf3c22444eb7ff33692017da28b2136ae56987ed5a19fdb460a5e1454eed0a4357f9fb13acb79d0c44849feeb295906b2a90d09433e22277ff92f4f247450d2cd38c3635be6da3b7799528c2aded873cbf17d7ad969269547ece0383450172a09fe13cdbbab9d690c8aabc55f4894d0ef766191fdddf13520d702247dbb83bfb055b539c94b184cee246b63557db512021739836314ccd73226e7544cef8736029d0740b531a2bc2b676172511fa93819aff0e5bcb8d9167824343f1acaa9114e563a7f895d5cbc543f5ae42132699419a695b5cf9e6465621d06d2366b36ef060608a13679fb8aca647ff1618a553c13f1a7a69e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855d775eb04dc9744670a3aea691cd0f2e69fbffd93fe1429bda1a1a31c38ac8919d775eb04dc9744670a3aea691cd0f2e69fbffd93fe1429bda1a1a31c38ac891944eef4a9bc74d032f05a3461d965aad543398d0add249a34fc7ab7944b64641551d56ddff4a9993345fd33d13ef014684b229877a75a2b5d57e7216bf10f2bfe53b6499404d184aae57350af640ad51446eec9c7f270c9e4ee20777a05bd5a7bbd3939925c57cb3ec39a1f487a698d351f94443ab2df1b6127450fa3ba5b48fa3456d52980f0abe2a4820bfc584b0143b5c3877ca2d8de1442b07f356e53d6339264c05d805a0fbfea38448c8f8876d56b6f049d427df8a1af6277784624f0a18e275ce269e36deab3eeeeb8806b0ba4cc1abc47be452b9618d740558402df54cc9756cea4c02eb33ec7aff5628ac1047e0d0f746369fdbbe11f21c15b7e74c372c4b829633c5d3d5fa394cff06ee476507581f5e15fc030e09d5f64c24494c935b7049ab605a1cc9344b5aba16ab1c14906e5632791d75685d1be818a5e76fc83e19d4c1c226bf58c46e6bb363d2db05b3f1fbcd81bf6a535fc4c8e47eabcd30d5fd62b8258a5425306c5f3af85ff3bd1175a4729ba829b083ab235813a8c53ea2120e0fbb7bdb4049722a82eb0458c236aa91a6ec05e7390e4e65bbbad0cf540c1969d2ad9514feb83c5529ce8624d18a2f63d0ead6ff73ace7bf9b5f5ea10e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855b7d39fe7eeefe6780e9c7bf21e8855434884b281014f909ad641bcc9ce32c303b7d39fe7eeefe6780e9c7bf21e8855434884b281014f909ad641bcc9ce32c3039aeb93bc8fe39dc6d62f1f5a9fd1b6d5d36848fb4a2ded60531b85ee14d45318828cbc063cad94384f26633a4d939443d62a8bfec321546726223892e6e015e7aea2a25d89cac22751016237731024b60646716da685d9c581a2d57cd91b80df2e1ecb8f1f715bc766b65237d1a6e0e1a10d1f2604ff779852c82d2d6ba3659f6a43e3e255a3733f2171a34b1f8464b3668f8265fbae037d8dac29022edfe3fd17e8c3afa4c468bb86029bd131021d236285fcd3db72f8ba0de836f23403b0814dcad68b961de522c1170495cb9576e61479cccda0b2ad64cac0c2c23af4d9b486499eb828641aa78baf48eb59f804927733b1d6bf9b137d2da312a701667238f77ccc90c29be61bba83296f4b396729c0c8cb1c0ad30561a164648344b20edc7218fe93a9296dcb4b20912181ba945a8bb3e92d2139d7b14dcfc1edf437bcfd39e5aaf8defd77f40d6f24843978dcd56c6aa4ab6dc159e8b6011100a4571d5764bc0c6dfdedd859848ae3c27fee85972e5490e446333ca3e1325c596bdd56a0422543c75971679594825fe628a61fd86ceef067f964cd079707fa53f1e6914a8b4d0eaf0ddaa922c0fe8a1f2623e2fcc8bd6c1faa739c13de96d5788880fa91fd8e796c8496b8528f2e3ff9701e85a7142f18509b33e00cf9a5164445169e871307f3882069b3b20fc654beef21a40d1f09bca1cc30dd4b91291c3a283b471c9ad10740d0868b8d9faa83fce666194c2cb071875aea37080845b85ebe120eb7e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8558505665d18e0acb879417a714638ac1f9004f3ac4645bb3060d9cc2cee3600268505665d18e0acb879417a714638ac1f9004f3ac4645bb3060d9cc2cee360026357f3568c841c1ef25fbe232cf038c04fa4edbbc8cd372a1fcd2e9e3c20d88d533dcd98987600a0cf333efd24f0c825b05465358caed433583562cef04ed29b098bb633dbfae9a93dbc9a73891e8d1e06c28454a2936b1eb5e6bf8278ba3739b17409729b0a95b6b17be49b8eeba97188f154bc60578d4ff627b3f391a8eb6fbde01b5dd18d1da0d65e446618dd810946ab31f6a009c0a45283d7c89fcd5635650f9de6aad287a906d402e9c216c435469c9f802c6342cb6a043a07463b116d1e1adf20156b368cf348d351d670a97380676a4703bf0121c5fb68ed5479d7f65aa16be7698c72e55f599d3d9ff776397d27952844cfa3175ae680d3a3728dd9a23ea9429ac3b4c58f277221f70e17a24e11a899eff257d1f87d6ee51634b61e8365bcc6ad9cbcf62e8801ef9c159f92e92baec6ab7374ba626ebbae9e5bbe93320c57c17c857ce6a29cd1decca6f8b3e9b909c7e61e592955b798f8832eeabcdfde410cb747aef6046adfb22f11186bdc2d087f6bf58e012c6304351156bb742d2c89bd47e632d8ec308d7faa180fae1ce736fb3d4bdc35924899824c4d1841597f8df5e744d1d1762d1f471641e5eaa9311a2a1025ee40327b197c1370312b3f6b04759ae8715fabe8b2ed8414ac5775c2a04d4cdb5ccfbb130d6153645eff31e6124f7b93585bfd5b339f30ac47abe29d1daba4ffda90622dd4c78715657c605e16cfc22a984a1213653c6d9262da9f715c335ee22637819accef7ec5aacaa1e4912d142cddb7d04405dc2af407c24fb65b26f82df343937f98692214eb0553a262e697d9a486cdc7dc77f141205f34f0d2155d25fd4d94e90d018b1add22e12d0ccd589b4c22460499177f21059b7e05b046a8efb7fbf63a29517ef0cfc85bf1d80bf652dc5936c6edebda30ba9efb6c1ba2d3e3dc1ab35d0b6c7d1e10da23633a31dfbe0affe77d442869007e190f09a968bc810759440dfabf68a320bf211a72e4d0c1156cfd0693e45064cc692e60e0813336416bd7a962ac85010a522ae3672712c3fbb0a55774b87bbec655c7b58ddd449332bfa203f7b8b5d04a0b4d50095969545b2afc2856977a6bceff10e497d4cbf1bb9123d5de0be7f1f83c457f61122c4698344986b68107c561bb1a178ba7f70f65662ea7a11de76a64e8b554854c1fb65de0f8afde58fdb25371ccfd5debddde476c84ccfe563e8bcd5fc1d43ab9105eb469740d31265d2459f73dbb734b2ba46f4db1e7cb1e53bfc8b690ae0485a5bd37a63e63603596417e4eb0e653334fa6c7f932ca3a0e85d4af227f10cdcd67d1b6900e11a02181006fee1ee763e7c2ca9d1b7f9d618891cac8cc8ed8b9aafbfa2a7fe82ee0c8ff469267b1543ef38cc55897bc80bafb12957467f4c149777fd47d94ea9cd6b695d521565714c1ee7d46922f58c3868da632aa796888d7731d1d5282081e52f5128f88d86061a8f5bd1ca019939b9e4174ac0da99rootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootroot389-ds-1.4.4.19~git59.136fc84-150300.3.27.1.src.rpmlib389lib389(x86-64)python3-lib389@@      /usr/bin/python3krb5-clientmozilla-nss-toolspython(abi)python3-argcompletepython3-argparse-manpagepython3-distropython3-ldappython3-pyasn1python3-pyasn1-modulespython3-python-dateutilpython3-sixrpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)rpmlib(TildeInVersions)3.63.03.0.4-14.6.0-14.0-15.2-14.10.0-14.14.3ck@c[@cRc1@c@b֜b@b@bEb9@aaaI@`:@`:@`n@`n@`c`*b@`@`x@_0@_#_~@_&_^^^^k@^J@^0"@^&]z@]R@]M`@]B@\[@[}P@[`O@Z@ZtRZqZqZp^@Zo ZiZ[F@Z&@ZZZ@ZZY+@YB@Yܶ@Y5Y@Y˒Y˒YYYY@YY)j@Y@YR@Y@X @X@XZnX0>W^@Ws@W#LW#LW@W@W@VՄ@VO @UU@Ua@U@U.RU+UTT@wbrown@suse.dewbrown@suse.dewbrown@suse.dewbrown@suse.dewbrown@suse.dewbrown@suse.dewilliam.brown@suse.comwbrown@suse.dewbrown@suse.dewbrown@suse.dewilliam.brown@suse.comwbrown@suse.dewbrown@suse.dewbrown@suse.dewbrown@suse.dewilliam.brown@suse.comwbrown@suse.dewbrown@suse.dewbrown@suse.dewbrown@suse.dewbrown@suse.dewbrown@suse.dewbrown@suse.dewilliam.brown@suse.comwilliam.brown@suse.comwilliam.brown@suse.comwilliam.brown@suse.comwilliam.brown@suse.comwilliam.brown@suse.com389-ds-maintainer@suse.de389-ds-maintainer@suse.de389-ds-maintainer@suse.de389-ds-maintainer@suse.de389-ds-maintainer@suse.dewilliam.brown@suse.comwilliam.brown@suse.com389-ds-maintainer@suse.de389-ds-maintainer@suse.devarkoly@suse.comvarkoly@suse.comdakechi@suse.comhguo@suse.commrueckert@suse.dehguo@suse.comdimstar@opensuse.orghguo@suse.comhguo@suse.comhguo@suse.commrueckert@suse.derbrown@suse.commrueckert@suse.demrueckert@suse.demrueckert@suse.demrueckert@suse.demrueckert@suse.dejengelh@inai.demrueckert@suse.demrueckert@suse.demrueckert@suse.demrueckert@suse.demrueckert@suse.demrueckert@suse.dekukuk@suse.demrueckert@suse.debwiedemann@suse.comhguo@suse.comhguo@suse.commrueckert@suse.demrueckert@suse.dejengelh@inai.demrueckert@suse.demrueckert@suse.demrueckert@suse.demrueckert@suse.deaj@ajaissle.demrueckert@suse.demrueckert@suse.demrueckert@suse.demrueckert@suse.demrueckert@suse.demrueckert@suse.demrueckert@suse.declaes.backstrom@opensuse.orgaj@ajaissle.dehguo@suse.comaj@ajaissle.deaj@ajaissle.deaj@ajaissle.dejengelh@inai.deaj@ajaissle.deaj@ajaissle.deaj@ajaissle.deaj@ajaissle.de- bsc#1205146 - failure to migrate from openldap if pwdPolicyChecker present - Update to version 1.4.4.19~git59.136fc84: * Issue 5512 - BUG - skip pwdPolicyChecker OC in migration (#5513)- bsc#1204748 - Resolve issue with checklist post migration when dds is present - Update to version 1.4.4.19~git58.9af9f92: * Issue 5495 - BUG - Minor fix to dds skip, inconsistent attrs caused errors (#5501)- bsc#1204493 - Improve reliability of migrations from openldap when dynamic directory services is configured. - Update to version 1.4.4.19~git57.25311ff: * Issue 5495 - RFE - skip dds during migration. (#5496) * Issue 5345 - BUG - openldap migration fails when ppolicy is active (#5347) * Issue 5491 - UI - Add rework and finish jpegPhoto functionality (#5492) * Issue 5368 - Retro Changelog trimming does not work (#5486) * Issue 5262 - high contention in find_entry_internal_dn on mixed load (#5264) * Issue 4324 - Revert recursive pthread mutex change (#5463) * Issue 5305 - OpenLDAP version autodetection doesn't work * Issue 5032 - Fix OpenLDAP version check (#5091) * Issue 5032 - OpenLDAP is not shipped with non-threaded version of libldap (#5033) (#5456) * Revert "Issue 5446 - Fix some covscan issues (#5451)"- bsc#1194119 - CVE-2021-45710 - tokio data race with memory corruption - Update to version 1.4.4.19~git48.d4c4ff1: * Revert "Issue 5446 - Fix some covscan issues (#5451)" * Issue 5446 - Fix some covscan issues (#5451) * Issue 5421 - CI - makes replication/acceptance_test.py::test_modify_entry more robust (#5422) * Issue 5418 - Sync_repl may crash while managing invalid cookie (#5420) * Issue 5399 - UI - LDAP Editor is not updated when we switch instances (#5400) * Issue 5221 - fix covscan (#5359) * Issue 4984 - BUG - pid file handling (#4986) * Issue 5353 - CLI - dsconf backend export breaks with multiple backends * Issue 5126 - Memory leak in slapi_ldap_get_lderrno (#5153) * Issue 5304: Need a compatibility option about sub suffix handling (#5310) * Issue 5302 - Release tarballs don't contain cockpit webapp- bsc#1202470 - CVE-2022-2850 - Resolve sync repl crash during invalid cookie handling - Update to version 1.4.4.19~git46.c900a28c8: * Issue 5421 - CI - makes replication/acceptance_test.py::test_modify_entry more robust (#5422) * Issue 5418 - Sync_repl may crash while managing invalid cookie (#5420) * Issue 5399 - UI - LDAP Editor is not updated when we switch instances (#5400) * Issue 5221 - fix covscan (#5359) * Issue 4984 - BUG - pid file handling (#4986) * Issue 5353 - CLI - dsconf backend export breaks with multiple backends * Issue 5126 - Memory leak in slapi_ldap_get_lderrno (#5153) * Issue 5304: Need a compatibility option about sub suffix handling (#5310) * Issue 5302 - Release tarballs don't contain cockpit webapp * Issue 5284 - Replication broken after password change (#5286)- bsc#1199908 - Improvements to openldap import with passwold policy present - Update to version 1.4.4.19~git43.8ba2ea21f: * Issue 5221 - fix covscan (#5359) * Issue 4984 - BUG - pid file handling (#4986) * Issue 5353 - CLI - dsconf backend export breaks with multiple backends * Issue 5126 - Memory leak in slapi_ldap_get_lderrno (#5153) * Issue 5304: Need a compatibility option about sub suffix handling (#5310) * Issue 5302 - Release tarballs don't contain cockpit webapp * Issue 5284 - Replication broken after password change (#5286) * Issue 5291 - Harden ReplicationManager.wait_for_replication (#5292) * Issue 5279 - dscontainer: TypeError: unsupported operand type(s) for /: 'str' and 'int' * Issue 5276 - CLI - improve task handling- Changelog fix - bsc#1195324 - CVE-2021-4091 - double free in psearch- bsc#1199889 - CVE-2022-1949 - full access control bypass with simple crafted query 0001-Fix-ACI-bypass-in-shortcut-filter-condition.patch - Update to version 1.4.4.19~git38.9951c1101: * Issue 5302 - Release tarballs don't contain cockpit webapp * Issue 5284 - Replication broken after password change (#5286) * Issue 5291 - Harden ReplicationManager.wait_for_replication (#5292) * Issue 5279 - dscontainer: TypeError: unsupported operand type(s) for /: 'str' and 'int' * Issue 5276 - CLI - improve task handling * Issue 5273 - CLI - add arg completer for instance name * Issue 4866 - CLI - when enabling replication set changelog trimming by default * Issue 5241 - UI - Add account locking missing functionality (#5251) * Issue 5098 - Fix cherry-pick error * Issue 5252 - During DEL, vlv search can erroneously return NULL candidate (#5256)- Resolve bsc#1197275 - CVE-2022-0918 - Crafted message may cause DoS - Update to version 1.4.4.19~git28.b12c72226: * Issue 5242- Craft message may crash the server (#5243) * Issue 5234 - UI - rename Users and Groups tab * Issue 5227 - UI - No way to move back to Get Started step (#5233) * Issue 5230 - Race condition in RHDS disk monitoring functions * Issue 4299 - UI - Add CoS funtionality (#5196) * Issue 5225 - UI - impossible to manually set entry cache * Issue 5186 - UI - Fix SASL Mapping regex test feature * Issue 5221 - User with expired password can still login with full privledges * Issue 5218 - double-free of the virtual attribute context in persistent search (#5219) * Issue 5193 - Incomplete ruv occasionally returned from ruv search (#5194)- Resolve bsc#1197345 - CVE-2022-0996 - Mishandling of password expiry - Update to version 1.4.4.19~git21.feb4a55d8: * Issue 5221 - User with expired password can still login with full privledges * Issue 5218 - double-free of the virtual attribute context in persistent search (#5219) * Issue 5193 - Incomplete ruv occasionally returned from ruv search (#5194) * Issue 5189 - memberOf plugin exclude subtree not cleaning up groups on modrdn * Issue 5188 - UI - LDAP editor - add entry and group types * Issue 5184 - memberOf does not work correctly with multiple include scopes * Issue 5186 - UI - Fix SASL Mapping regex validation and other minor improvements * Issue 5122 - dsconf instance backend suffix set doesn't accept backend name (#5178) * Issue 5160 - BUG - x- prefix in descr-oid can confuse oid parser (#5161) * Issue 5098 - Multiple issues around replication and CI test test_online_reinit_may_hang (#5109)- Resolve boo#1194068 by adding required schema- bsc#1194084 - resolve multiple index migration bug - Update to version 1.4.4.18~git5.a46217a05: * Issue 5092 - BUG - pin concread for el8.5 * Issue 5080 - BUG - multiple index types not handled in openldap migration (#5094) * Issue 5079 - BUG - multiple ways to specific primary (#5087) * Issue 4992 - BUG - slapd.socket container fix (#4993) * Issue 5037 - in OpenQA changelog trimming can crashes (#5070) * Bump version to 1.4.4.18 * Issue 4962 - Fix various UI bugs - Database and Backups (#5044) * Issue 5046 - BUG - update concread (#5047) * Issue 5043 - BUG - Result must be used compiler warning (#5045) * Issue 4165 - Don't apply RootDN access control restrictions to UNIX connections- Update to version 1.4.4.17~git0.5e1e392ae: * Bump version to 1.4.4.17 * Issue 4927 - rebase lib389 and cockpit in 1.4.4 * Issue 4908 - Updated several dsconf --help entries (typos, wrong descriptions, etc.) * Issue 4912 - Account Policy plugin does not set the config entry DN * Issue 4796 - Add support for nsslapd-state to CLI & UI * Issue 4894 - IPA failure in ipa user-del --preserve (#4907) * Issue 4169 - backport lib389 cert list fix * Issue 4912 - dsidm command crashing when account policy plugin is enabled * Issue 4910 - db reindex corrupts RUV tombstone nsuiqueid index * Issue 4869 - Fix retro cl trimming misuse of monotonic/realtime clocks- bsc#1188151 - Update to 1.4.4.16 patch release - bsc#1188455 - CVE-2021-3652 - fix crypt handling of locked accounts - Update to version 389dsbase1.4.4.16~git16.c1926dfc6: * Issue 4817 - BUG - locked crypt accounts on import may allow all passwords (#4819) * Issue 4656 - (2nd) Remove problematic language from UI/CLI/lib389 * Issue 4262 - Fix Index out of bound in fractional test (#4828) * Issue 4822 - Fix CI temporary password: fixture leftover breaks them (#4823) * Issue 4656 - remove problematic language from ds-replcheck * Issue 4803 - Improve DB Locks Monitoring Feature Descriptions * Issue 4803 - Improve DB Locks Monitoring Feature Descriptions (#4810) * Issue 4788 - CLI should support Temporary Password Rules attributes (#4793) * Issue 4506 - Improve SASL logging * Issue 4093 - Fix MEP test case * Issue 4747 - Remove unstable/unstatus tests (followup) (#4809) * Issue 4789 - Temporary password rules are not enforce with local password policy (#4790) * Issue 4797 - ACL IP ADDRESS evaluation may corrupt c_isreplication_session connection flags (#4799) * Issue 4447 - Crash when the Referential Integrity log is manually edited * Issue 4773 - Add CI test for DNA interval assignment * Issue 4750 - Fix compiler warning in retrocl (#4751)- Update to version 1.4.4.16~git0.3d31c6c71: * Bump version to 1.4.4.16 * Update npm packages * Issue 4719 - lib389 - fix dsconf passthrough auth bugs * Issue 4778 - RFE - Allow setting TOD for db compaction and add task * Issue 4764 - replicated operation sometime checks ACI (#4783) * Issue 4623 - RFE - Monitor the current DB locks (#4762) * Issue 4781 - There are some typos in man-pages * Issue 4773 - Enable interval feature of DNA plugin * Issue 3555 - Fix UI audit issue * Issue 4747 - Remove unstable/unstatus tests from PRCI (#4748)- bsc#1184476 - Add supportconfig utility for customer services to capture 389-ds support information.- Update to version 1.4.4.14~git0.37dc95673: * Bump version to 1.4.4.14 * Issue 4671 - UI - Fix browser crashes * Issue 4229 - Fix Rust linking * Issue 4658 - monitor - connection start date is incorrect * Issue 4656 - Make replication CLI backwards compatible with role name change * Issue 4656 - Remove problematic language from UI/CLI/lib389 * Issue 4459 - lib389 - Default paths should use dse.ldif if the server is down * Issue 4661 - RFE - allow importing openldap schemas (#4662) * Issue 4659 - restart after openldap migration to enable plugins (#4660) * Issue 4663 - CLI - unable to add objectclass/attribute without x-origin- bsc#1184142 - restart after openldap migration so that plugins can correctly perform data fix ups. - Update to version 1.4.4.14~git0.37dc95673: * Bump version to 1.4.4.14 * Issue 4671 - UI - Fix browser crashes * Issue 4229 - Fix Rust linking * Issue 4658 - monitor - connection start date is incorrect * Issue 4656 - Make replication CLI backwards compatible with role name change * Issue 4656 - Remove problematic language from UI/CLI/lib389 * Issue 4459 - lib389 - Default paths should use dse.ldif if the server is down * Issue 4661 - RFE - allow importing openldap schemas (#4662) * Issue 4659 - restart after openldap migration to enable plugins (#4660) * Issue 4663 - CLI - unable to add objectclass/attribute without x-origin- Update to version 389-ds-base-1.4.4.13~git0.6841d693f: * Bump version to 1.4.4.13 * Update dscontainer (#4564) * Issue 4591 - RFE - improve openldap_to_ds help and features (#4607) * Issue 4324 - Some architectures the cache line size file does not exist * Issue 4593 - RFE - Print help when nsSSLPersonalitySSL is not found (#4614) * Issue 4609 - CVE - info disclosure when authenticating * Bump version to 1.4.4.12 * Issue 4579 - libasan detects heap-use-after-free in URP test (#4584) * Issue 4563 - Failure on s390x: 'Fails to split RDN "o=pki-tomcat-CA" into components' (#4573) * Issue 4526 - sync_repl: when completing an operation in the pending list, it can select the wrong operation (#4553)- Update to version 1.4.4.12~git0.7b681e1da: * Bump version to 1.4.4.12 * Issue 4579 - libasan detects heap-use-after-free in URP test (#4584) * Issue 4563 - Failure on s390x: 'Fails to split RDN "o=pki-tomcat-CA" into components' (#4573) * Issue 4526 - sync_repl: when completing an operation in the pending list, it can select the wrong operation (#4553) * Issue 4396 - Minor memory leak in backend (#4558) (#4572) * Issue 4324 - Performance search rate: change entry cache monitor to recursive pthread mutex (#4569) * Issue 5442 - Search results are different between RHDS10 and RHDS11 * Bump version to 1.4.4.11 * Issue 4548 - CLI - dsconf needs better root DN access control plugin validation * Issue 4513 - Fix schema test and lib389 task module (#4514)- Upstream fix for bsc#1180847 - openldap_to_ds can fail if the backend has no overlays or indexes. - Remove patches now merged upstream. * 0001-Ticket-51260-fix-potential-syncrepl-data-corruption.patch * 0002-Ticket-51260-improve-tests-and-improve-readme-re-ref.patch * 0003-Ticket-4224-openldap-can-become-confused-with-entryu.patch * 0004-Issue-4410-RFE-ndn-cache-with-arc-in-rust.patch * 0005-Issue-4403-RFE-OpenLDAP-pw-hash-migration-tests-4408.patch * 0006-Issue-4446-RFE-openldap-password-hashers.patch * 0007-Issue-4464-RFE-clang-with-ds-asan-rust.patch * 0008-Issue-4229-RFE-Improve-rust-linking-and-build-perfor.patch - Update to version 1.4.4.10~git0.ebdf25251: * Bump version to 1.4.4.10 * Issue 4418 - fix cherry-pick error * Issue 4381 - RFE - LDAPI authentication DN rewritter * Issue 4539 - BUG - no such file if no overlays in openldap during migration (#4540) * Issue 4513 - CI Tests - fix test failures * Issue 4528 - Fix cn=monitor SCOPE_ONE search (#4529) * Issue 4535 - lib389 - healthcheck throws exception if backend is not replicated * Issue 4504 - insure that repl_monitor_test use ldapi (for RHEL) - fix merge issue (#4533) * Issue 4504 - Insure ldapi is enabled in repl_monitor_test.py (Needed on RHEL) (#4527) * Issue 4506 - BUG - Fix bounds on fd table population (#4520)- Lib389 is a hard requirement in 1.4.4, and perl has been completely removed. Reflect this in our spec file. - Add rebased patches for SUSE Feature Completion: jsc#SLE-11501 * 0001-Ticket-51260-fix-potential-syncrepl-data-corruption.patch * 0002-Ticket-51260-improve-tests-and-improve-readme-re-ref.patch * 0003-Ticket-4224-openldap-can-become-confused-with-entryu.patch * 0004-Issue-4410-RFE-ndn-cache-with-arc-in-rust.patch * 0005-Issue-4403-RFE-OpenLDAP-pw-hash-migration-tests-4408.patch * 0006-Issue-4446-RFE-openldap-password-hashers.patch * 0007-Issue-4464-RFE-clang-with-ds-asan-rust.patch * 0008-Issue-4229-RFE-Improve-rust-linking-and-build-perfor.patch - Update to version 1.4.4.9~git0.b09e60339: * Bump version to 1.4.4.9 * Issue 4105 - Remove python.six (fix regression) * Issue 4384 - Use MONOTONIC clock for all timing events and conditions * Issue 4243 - Fix test: SyncRepl plugin provides a wrong cookie (#4467) * Issue 4460 - BUG - lib389 should use system tls policy * Issue 3657 - Add options to dsctl for dsrc file * Issue 3986 - UI - Handle objectclasses that do not have X-ORIGIN set * Issue 4297 - 2nd fix for on ADD replication URP issue internal searches with filter containing unescaped chars (#4439) * Issue 4449 - dsconf replication monitor fails to retrieve database RUV - consumer (Unavailable) (#4451) * Issue 4105 - Remove python.six from lib389 (#4456)- Update to version 1.4.4.8~git0.bf454ad07: * Bump version to 1.4.4.8 * Issue 4415 - unable to query schema if there are extra parenthesis * Issue 4176 - CL trimming causes high CPU * Bump version to 1.4.4.7 * Issue 2526 - revert backend validation check * Issue 4262 - more perl removal cleanup * Issue 2526 - retrocl backend created out of order * Bump version to 1.4.4.6 * Issue 4262 - Remove legacy tools subpackage (final cleanup) * Issue 4262 - Remove legacy tools subpackage (restart instances after rpm install)- Update to version 1.4.4.4~git0.318a3ce0c: * Bump version to 1.4.4.4 * Ticket 51175 - resolve plugin name leaking * Issue 51187 - UI - stop importing Cockpit's PF css * Issue 51192 - Add option to reject internal unindexed searches * Issue 50840 - Fix test docstrings metadata-1 * Issue 50840 - Fix test docstrings metadata * Ticket 50980 - fix foo_filter_rewrite * Issue 51165 - add more logconv stats for the new access log keywords * Issue 50928 - Unable to create a suffix with countryName either via dscreate or the admin console * Issue 51188 - db2ldif crashes when LDIF file can't be accessed * Issue 50545 - Port remaining legacy tools to new python CLI * Issue 51165 - add new access log keywords for wtime and optime * Issue : 49761 - Fix CI test suite issues ( Port remaning acceptance test suit part 1) * Issue: 51070 - Port Import TET module to python3 part2 * Issue:51142 - Port manage Entry TET suit to python 3 part 1 * Issue: 50860 - Port Password Policy test cases from TET to python3 final * Issue 50696 - Fix Allowed and Denied Ciphers lists - WebUI * Issue 51169 - UI - attr uniqueness - selecting empty subtree crashes cockpit * Issue 49256 - log warning when thread number is very different from autotuned value * Issue 51157 - Reindex task may create abandoned index file * Issue 50873 - Fix issues with healthcheck tool * Issue:50860 - Port Password Policy test cases from TET to python3 part2 * Issue 51166 - Log an error when a search is fully unindexed * Ticket 50544 - OpenLDAP syncrepl compatability * Ticket 51161 - fix SLE15.2 install issps * Issue 49999 - rpm.mk build-cockpit should clean cockpit_dist first * Issue 51144 - dsctl fails with instance names that contain slapd- * Issue 51155 - Fix OID for sambaConfig objectclass * Ticket 51159 - dsidm ou delete fails * Issue 50984 - Memory leaks in disk monitoring * Ticket 51131 - improve mutex alloc in conntable * Issue 49761 - Fix CI tests * Ticket 49859 - A distinguished value can be missing in an entry * Issue 50791 - Healthcheck should look for notes=A/F in access log * Issue 51072 - Set the default minimum worker threads * Ticket 51140 - missing ifdef * Issue 50912 - pwdReset can be modified by a user * Issue 50781 - Make building cockpit plugin optional * Issue 51100 - Correct numSubordinates value for cn=monitor * Issue 51136 - dsctl and dsidm do not errors correctly when using JSON * Ticket 137 - fix compiler warning * Issue 50781 - Make building cockpit plugin optional * Issue 51132 - Winsync setting winSyncWindowsFilter not working as expected * Ticket 51034 - labeledURIObject * Issue 50545 - Port remaining legacy tools to new python CLI * Issue 50889 - Extract pem files into a private namespace * Ticket 137 - Implement EntryUUID plugin * Ticket 51072 - improve autotune defaults * Ticket 51115 - enable samba3.ldif by default * Issue 51118 - UI - improve modal validation when creating an instance * Issue 50746 - Add option to healthcheck to list all the lint reports * Bump version to 1.4.4.3 * Issue 50931 - RFE AD filter rewriter for ObjectCategory * Issue: 50860 - Port Password Policy test cases from TET to python3 part1 * Issue 51113 - Allow using uid for replication manager entry * Issue 51095 - abort operation if CSN can not be generated * Issue 51110 - Fix ASAN ODR warnings * Issue 49850 -ldbm_get_nonleaf_ids() painfully slow for databases with many non-leaf entries * Issue 51102 - RFE - ds-replcheck - make online timeout configurable * Issue 51076 - remove unnecessary slapi entry dups * Issue 51086 - Improve dscreate instance name validation * Issue:51070 - Port Import TET module to python3 part1 * Ticket 51037 - compiler warning * Ticket 50989 - ignore pid when it is ourself in protect_db * Ticket 51037 - RFE AD filter rewriter for ObjectSID * Issue 50499 - Fix some npm audit issues * Issue 51091 - healthcheck json report fails when mapping tree is deleted * Ticket 51079 - container pid start and stop issues * Revert "Issue 51017 - Implement dynamic ds/bz pytest markers" * Issue 49761 - Fix CI tests * Issue 50610 - Fix return code when it's nothing to free * Issue 50610 - memory leaks in dbscan and changelog encryption * Issue 51076 - prevent unnecessarily duplication of the target entry * Issue 50940 - Permissions of some shipped directories may change over time * Issue 50873 - Fix issues with healthcheck tool * Issue 51017 - Implement dynamic ds/bz pytest markers * Ticket 51082 - abort when a empty valueset is freed * Issue:CI test - automember_plugin (Long Duration test) * Issue 50201 - nsIndexIDListScanLimit accepts any value * Bump version to 1.4.4.2 * Issue 51078 - Add nsslapd-enable-upgrade-hash to the schema * Issue 51054 - Revise ACI target syntax checking * Ticket 51068 - deadlock when updating the schema * Issue 51042 - try to use both c_rehash and openssl rehash * Issue 51042 - switch from c_rehash to openssl rehash * Issue 50992 - Bump jemalloc version and enable profiling * Issue 51060 - unable to set sslVersionMin to TLS1.0 * Issue 51064 - Unable to install server where IPv6 is disabled * Issue 51051 - CLI fix consistency issues with confirmations * Issue 50655 - etime displayed has an order of magnitude 10 times smaller than it should be * Issue 49731 - undo db_home_dir under /dev/shm/dirsrv for now * Issue 51054 - AddressSanitizer: heap-buffer-overflow in ldap_utf8prev * Issue 49761 - Fix CI tests * Issue 51047 - React deprecating ComponentWillMount * Issue 50499 - fix npm audit issues * Issue 50545 - Port dbgen.pl to dsctl * Issue 51027 - Test passwordHistory is not rewritten on a fail attempt * Bump version to 1.4.4.1 * Ticket 51024 - syncrepl_entry callback does not contain attributes added by postoperation plugins * Ticket 50877 - task to run tests of csn generator * Issue 49731 - undo db_home_dir under /dev/shm/dirsrv for now * Issue: 48055 - CI test - automember_plugin(part3) * Ticket 51035 - Heavy StartTLS connection load can randomly fail with err=1 * Issue 51031 UI - transition between two instances needs improvement * Bump version to 1.4.4- Update to version 1.4.3.12~git0.9bc042902: * Bump version to 1.4.3.12 * Issue 51222 - It should not be allowed to delete Managed Entry manually * Issue 51129 - SSL alert: The value of sslVersionMax "TLS1.3" is higher than the supported version * Issue 51086 - Fix instance name length for interactive install * Issue 51136 - JSON Error output has redundant messages * Issue 51059 - If dbhome directory is set online backup fails * Issue 51000 - Separate the BDB backend monitors * Issue 49300 - entryUSN is duplicated after memberOf operation * Issue 50984 - Fix disk_mon_check_diskspace types- Remove patch that is now included in latest release: 0001-Ticket-51161-fix-SLE15.2-install-issps.patch - Resolve bsc#1174057 upstream stability and fix rollup. - Update to version 1.4.3.11~git0.82796f172: * Bump version to 1.4.3.11 * Issue 51192 - Add option to reject internal unindexed searches * Ticket 51159 - dsidm ou delete fails * Issue 51165 - add more logconv stats for the new access log keywords * Issue 51188 - db2ldif crashes when LDIF file can't be accessed * Issue 51165 - add new access log keywords for wtime and optime * Issue 50696 - Fix Allowed and Denied Ciphers lists - WebUI * Issue 51169 - UI - attr uniqueness - selecting empty subtree crashes cockpit * Issue 49256 - log warning when thread number is very different from autotuned value * Issue 51157 - Reindex task may create abandoned index file * Issue 51166 - Log an error when a search is fully unindexed * Ticket 51161 - fix SLE15.2 install issps * Issue 51144 - dsctl fails with instance names that contain slapd- * Issue 50984 - Memory leaks in disk monitoring * Issue 50201 - nsIndexIDListScanLimit accepts any value * Bump version to 1.4.3.10 * Ticket 49859 - A distinguished value can be missing in an entry * Issue 50791 - Healthcheck should look for notes=A/F in access log * Issue 51072 - Set the default minimum worker threads * Issue 50912 - pwdReset can be modified by a user * Issue 51100 - Correct numSubordinates value for cn=monitor * Issue 51136 - dsctl and dsidm do not errors correctly when using JSON * Issue 51132 - Winsync setting winSyncWindowsFilter not working as expected * Ticket 51072 - improve autotune defaults * Issue 50746 - Add option to healthcheck to list all the lint reports * Issue 51118 - UI - improve modal validation when creating an instance- Add 0001-Ticket-51161-fix-SLE15.2-install-issps.patch to resolve bsc#1172328 This corrects a failure to install on SUSE due to incorrect hostname generation, and a python 3 utf8 issue that is triggered by systemd.- Update to version 1.4.3.9~git0.3eb8617f6: * Bump version to 1.4.3.9 * Issue 50931 - RFE AD filter rewriter for ObjectCategory * Issue 51113 - Allow using uid for replication manager entry * Issue 51095 - abort operation if CSN can not be generated * Issue 51110 - Fix ASAN ODR warnings * Issue 51102 - RFE - ds-replcheck - make online timeout configurable * Issue 51076 - remove unnecessary slapi entry dups * Issue 51086 - Improve dscreate instance name validation * Ticket 50989 - ignore pid when it is ourself in protect_db * Issue 50499 - Fix some npm audit issues * Issue 51091 - healthcheck json report fails when mapping tree is deleted * Ticket 51079 - container pid start and stop issues * Issue 50610 - Fix return code when it's nothing to free * Ticket 51082 - abort when a empty valueset is freed * Issue 50610 - memory leaks in dbscan and changelog encryption * Issue 51076 - prevent unnecessarily duplication of the target entry * Bump version to 1.4.3.8 * Issue 51078 - Add nsslapd-enable-upgrade-hash to the schema * Issue 51054 - Revise ACI target syntax checking * Ticket 51068 - deadlock when updating the schema * Issue 51060 - unable to set sslVersionMin to TLS1.0 * Issue 51064 - Unable to install server where IPv6 is disabled * Issue 51051 - CLI fix consistency issues with confirmations * Issue 49731 - undo db_home_dir under /dev/shm/dirsrv for now * Issue 51054 - AddressSanitizer: heap-buffer-overflow in ldap_utf8prev * Issue 51047 - React deprecating ComponentWillMount * Issue 50499 - fix npm audit issues * Issue 50545 - Port dbgen.pl to dsctl * Bump version to 1.4.3.7 * Ticket 51024 - syncrepl_entry callback does not contain attributes added by postoperation plugins * Ticket 51035 - Heavy StartTLS connection load can randomly fail with err=1 * Issue 49731 - undo db_home_dir under /dev/shm/dirsrv for now * Issue 51031 UI - transition between two instances needs improvement * Bump version to 1.4.3.6 * Issue 50933 - 10rfc2307compat.ldif is not ready to set used by default * Ticket 50931 - RFE AD filter rewriter for ObjectCategory * Issue 51016 - Fix memory leaks in changelog5_init and perfctrs_init * Ticket 50980 - RFE extend usability for slapi_compute_add_search_rewriter and slapi_compute_add_evaluator * Ticket 51008 - dbhome in containers * Issue 50875 - Refactor passwordUserAttributes's and passwordBadWords's code * Ticket 51014 - slapi_pal.c possible static buffer overflow * Issue 50545 - remove dbmon "incr" option from arg parser * Issue 50545 - Port dbmon.sh to dsconf * Issue 51005 - AttributeUniqueness plugin's DN parameter should not have a default value * Issue 49731 - Fix additional issues with setting db home directory by default * Issue 50337 - Replace exec() with setattr() * Ticket 50905 - intermittent SSL hang with rhds * Issue 50952 - SSCA lacks basicConstraint:CA * Issue 50640 - Database links: get_monitor() takes 1 positional argument but 2 were given * Issue 50869 - Setting nsslapd-allowed-sasl-mechanisms truncates the value * Bump version to 1.4.3.5 * Issue 50994 - Fix latest UI bugs found by QE * Ticket 50933 - rfc2307compat.ldif * Issue 50337 - Replace exec() with setattr() * Issue 50984 - Memory leaks in disk monitoring * Issue 50984 - Memory leaks in disk monitoring * Issue 49731 - dscreate fails in silent mode because of db_home_dir * Issue 50975 - Revise UI branding with new minimized build * Issue 49437 - Fix memory leak with indirect COS * Issue 49731 - Do not add db_home_dir to template-dse.ldif * Issue 49731 - set and use db_home_directory by default * Ticket 50971 - fix BSD_SOURCE * -n option of dbverify does not work * Issue 50952- SSCA lacks basicConstraint:CA * Issue 50976 - Clean up Web UI source directory from unused files * Issue 50955 - Fix memory leaks in chaining plugin(part 2) * Issue 50966 - UI - Database indexes not using typeAhead correctly * Issue 50974 - UI - wrong title in "Delete Suffix" popup * Issue 50972 - Fix cockpit plugin build * Issue 49761 - Fix CI test suite issues * Issue 50971 - Support building on FreeBSD. * Issue 50960 - [RFE] Advance options in RHDS Disk Monitoring Framework * Issue 50800 - wildcards in rootdn-allow-ip attribute are not accepted * Issue 50963 - We should bundle *.min.js files of Console * Issue: 50860 - Port Password Policy test cases from TET to python3 Password grace limit section. * Issue: 50860 - Port Password Policy test cases from TET to python3 series of bugs Port final * Issue 50954 - buildnum.py - fix date formatting issue * Bump version to 1.4.3.4 * Issue 50954 - Port buildnum.pl to python(part 2) * Issue 50955 - Fix memory leaks in chaining plugin * Issue 50954 - Port buildnum.pl to python * Ticket 50947 - change 00core.ldif objectClasses for openldap migration * Ticket: 50755 - setting nsslapd-db-home-directory is overriding db_directory * Issue 50937 - Update CLI for new backend split configuration * Issue: 50860 - Port Password Policy test cases from TET to python3 pwp.sh * Ticket 50945 - givenname alias of gn from openldap * Ticket 50935 - systemd override in lib389 for dscontainer * Issue 50499 - Fix npm audit issues * Issue 49761 - Fix CI test suite issues * Ticket 50618 - clean compiler warning and log level * Ticket 50889 - fix compiler issues * Issue 50884 - Health check tool DSEldif check fails * Issue 50926 - Remove dual spinner and other UI fixes * Issue 50928 - Unable to create a suffix with countryName * Issue 50758 - Only Recommend bash-completion, not Require * Issue 50923 - Fix a test regression * Issue 50904 - Connect All React Components And Refactor the Main Navigation Tab Code * Issue 50920 - cl-dump exit code is 0 even if command fails with invalid arguments * Issue 50923 - Add test - dsctl fails to remove instances with dashes in the name * Issue 50919 - Backend delete fails using dsconf * Issue 50872 - dsconf can't create GSSAPI replication agreements * Issue 50912 - RFE - add password policy attribute pwdReset * Ticket 50914 - No error returned when adding an entry matching filters for a non existing automember group * Ticket 50889 - Extract pem files into a private namespace * Issue 50909 - nsDS5ReplicaId cant be set to the old value it had before * Issue: 50686 - Port fractional replication test cases from TET to python3 final * Issue 49845 - Remove pkgconfig check for libasan * Issue:50860 - Port Password Policy test cases from TET to python3 bug624080 * Issue:50860 - Port Password Policy test cases from TET to python3 series of bugs * Ticket 50786 - connection table freelist * Ticket 50618 - support cgroupv2 * Ticket 50900 - Fix cargo offline build * Ticket 50898 - ldclt core dumped when run with -e genldif option * Bump version to 1.4.3.3 * Issue 50855 - remove unused file from UI * Issue 50855 - UI: Port Server Tab to React * Issue 49845 - README does not contain complete information on building * Issue: 50686 - Port fractional replication test cases from TET to python3 part 1 * Ticket - 49623-cont cenotaph errors on modrdn operations * Issue 50882 - Fix healthcheck errors for instances that do not have TLS enabled * Issue 50886 - Typo in the replication debug message * Issue 50873 - Fix healthcheck and virtual attr check * Issue 50873 - Fix issues with healthcheck tool * Issue 50028 - Add a new CI test case * Issue 49946 - Add a new CI test case * Issue 50117 - Add a new CI test case * Ticket 50787 - fix implementation of attr unique * Ticket 50859 - support running only with ldaps socket * Issue 50823 - dsctl doesn't work with 'slapd-' in the instance name * Ticket 49624 cont - DB Deadlock on modrdn appears to corrupt database and entry cache * Issue 50867 - Fix minor buildsys issues * Issue 50737 - Allow building with rust online without vendoring * Ticket 50831 add cargo.lock to allow offline builds * Ticket 50694 - import PEM certs on startup * Ticket 50857 - Memory leak in ACI using IP subject * Issue 49761 - Fix CI test suite issues * Issue 50853 - Fix NULL pointer deref in config setting * Issue 50850 - Fix dsctl healthcheck for python36 * Issue 49990 - Need to enforce a hard maximum limit for file descriptors * Ticket 48707 - ldapssotoken for authentication * Bump version to 1.4.3.2 * Issue 49254 - Fix compiler failures and warnings * Ticket 50741-cont bdb_start - Detected Disorderly Shutdown * Issue 50836 - Port Schema UI tab to React * Issue 50842 - Decrease 389-console Cockpit component size * Ticket 50790 - Add result text when filter is invalid * Issue 50627 - Add ASAN logs to HTML report * Issue 50834 - Incorrectly setting the NSS default SSL version max * Issue 50829 - Disk monitoring rotated log cleanup causes heap-use-after-free * Ticket 50709 - (cont) Several memory leaks reported by Valgrind for 389-ds 1.3.9.1-10 * Ticket 50784 - performance testing scripts * Issue 50599 - Fix memory leak when removing db region files * Issue 49395 - Set the default TLS version min to TLS1.2 * Issue 50818 - dsconf pwdpolicy get error * Issue 50824 - dsctl remove fails with "name 'ensure_str' is not defined" * Issue 50599 - Remove db region files prior to db recovery * Issue 50812 - dscontainer executable should be placed under /usr/libexec/dirsrv/ * Issue 50816 - dsconf allows the root password to be set to nothing * Issue 50798 - incorrect bytes in format string(fix import issue) * Bump version to 1.4.3.1 * Ticket 50798 - incorrect bytes in format string * Issue 50545 - Add the new replication monitor functionality to UI * Issue 50806 - Fix minor issues in lib389 health checks * Issue: 50690 - Port Password Storage test cases from TET to python3 part 1 * Issue 49761 - Fix CI test suite issues * Issue 49761 - Fix CI test suite issues * Issue 50754 - Add Restore Change Log option to CLI * Issue: 48055 - CI test - automember_plugin(part2) * Ticket 50667 - dsctl -l did not respect PREFIX * Issue 50780 - More CLI fixes * Ticket 50649 - lib389 without defaults.inf * Issue 50780 - Fix UI issues * Ticket 50727 - correct mistaken options in filter validation patch * Issue 50779 - lib389 - conflict compare fails for DN's with spaces * Set branch version to 1.4.3.0- Remove 0001-Ticket-51014-slapi_pal.c-possible-static-buffer-over.patch as it is part of 1.4.2.14 - Update to version 1.4.2.14~git0.5ac5b02ce: * Bump version to 1.4.2.14 * Issue 51113 - Allow using uid for replication manager entry * Issue 51095 - abort operation if CSN can not be generated * Issue 51110 - Fix ASAN ODR warnings * Issue 51102 - RFE - ds-replcheck - make online timeout configurable * Issue 51076 - remove unnecessary slapi entry dups * Issue 51086 - Improve dscreate instance name validation * Ticket 50989 - ignore pid when it is ourself in protect_db * Issue 50499 - Fix some npm audit issues * Issue 51091 - healthcheck json report fails when mapping tree is deleted * Ticket 51079 - container pid start and stop issues * Issue 50610 - Fix return code when it's nothing to free * Ticket 51082 - abort when a empty valueset is freed * Issue 50610 - memory leaks in dbscan and changelog encryption * Issue 51076 - prevent unnecessarily duplication of the target entry * Issue 50940 - Permissions of some shipped directories may change over time * Bump version to 1.4.2.13 * Ticket 50787 - fix implementation of attr unique * Issue 51078 - Add nsslapd-enable-upgrade-hash to the schema * Ticket 51068 - deadlock when updating the schema * Issue 51060 - unable to set sslVersionMin to TLS1.0 * Issue 51064 - Unable to install server where IPv6 is disabled * Issue 51051 - CLI fix consistency issues with confirmations * Issue 51047 - React deprecating ComponentWillMount * Issue 50499 - fix npm audit issues * Ticket 51035 - Heavy StartTLS connection load can randomly fail with err=1 * Issue 51031 UI - transition between two instances needs improvement * Bump version to 1.4.2.12 * Issue 50337 - Replace exec() with setattr() * Issue 50545 - the check for the ds version for the backend config was broken * Issue 50875 - Refactor passwordUserAttributes's and passwordBadWords's code * Ticket 51014 - slapi_pal.c possible static buffer overflow * Issue 50545 - remove dbmon "incr" option from arg parser * Issue 50545 - Port dbmon.sh to dsconf * Ticket 50905 - intermittent SSL hang with rhds * Issue 50952 - SSCA lacks basicConstraint:CA * Issue 50640 - Database links: get_monitor() takes 1 positional argument but 2 were given * Issue 50869 - Setting nsslapd-allowed-sasl-mechanisms truncates the value- Patch rollup as described in bsc#1169364 - Add rust vendor.tar.gz as a source - rust is still an optional build and will be enabled in the future. - Update ns-slapd ownership to remove dirsrv as an owner as dirsrv will not exist in containers with systemd users. - Add 0001-Ticket-51014-slapi_pal.c-possible-static-buffer-over.patch to resolve a warning found in static analysis in OBS (upstream #51014) - Update to version 1.4.2.11~git0.aff1a2831: * Bump version to 1.4.2.11 * Issue 50994 - Fix latest UI bugs found by QE * Issue 50337 - Replace exec() with setattr() * Issue 50984 - Memory leaks in disk monitoring * Issue 50975 - Revise UI branding with new minimized build * Issue 49437 - Fix memory leak with indirect COS * Issue 50976 - Clean up Web UI source directory from unused files * Issue 50744 - -n option of dbverify does not work * Issue 50952- SSCA lacks basicConstraint:CA * Bump version to 1.4.2.10 * Issue 50966 - UI - Database indexes not using typeAhead correctly * Issue 50974 - UI - wrong title in "Delete Suffix" popup * Issue 50972 - Fix cockpit plugin build * Issue 50800 - wildcards in rootdn-allow-ip attribute are not accepted * Issue 50963 - We should bundle *.min.js files of Console * Bump version to 1.4.2.9 * Ticket: 50755 - setting nsslapd-db-home-directory is overriding db_directory * Issue 50937 - Update CLI for new backend split configuration * Issue 50499 - Fix npm audit issues * Issue 50884 - Health check tool DSEldif check fails * Issue 50926 - Remove dual spinner and other UI fixes * Issue 49845 - Remove pkgconfig check for libasan * Issue 50758 - Only Recommend bash-completion, not Require * Issue 50928 - Unable to create a suffix with countryName * Issue 50904 - Connect All React Components And Refactor the Main Navigation Tab Code * Issue 50919 - Backend delete fails using dsconf * Issue 50872 - dsconf can't create GSSAPI replication agreements * Ticket 50914 - No error returned when adding an entry matching filters for a non existing automember group * Issue 50909 - nsDS5ReplicaId cant be set to the old value it had before * Ticket 50618 - support cgroupv2 * Ticket 50898 - ldclt core dumped when run with -e genldif option- Update to version 1.4.2.8~git0.3aaa3e820: * Bump version to 1.4.2.8 * Issue 50855 - remove unused file from UI * Issue 50855 - UI: Port Server Tab to React * Issue 49845 - README does not contain complete information on building * Ticket - 49623-cont cenotaph errors on modrdn operations * Issue 50882 - Fix healthcheck errors for instances that do not have TLS enabled * Issue 50886 - Typo in the replication debug message * Issue 50873 - Fix healthcheck and virtual attr check * Issue 50873 - Fix issues with healthcheck tool * Ticket 50857 - Memory leak in ACI using IP subject * Issue 50823 - dsctl doesn't work with 'slapd-' in the instance name * Ticket 49624 cont - DB Deadlock on modrdn appears to corrupt database and entry cache * Issue 50850 - Fix dsctl healthcheck for python36 * Issue 49990 - Need to enforce a hard maximum limit for file descriptors- Update to version 1.4.2.7~git0.202953d28: * Bump version to 1.4.2.7 * Issue 49254 - Fix compiler failures and warnings * Ticket 50741-cont bdb_start - Detected Disorderly Shutdown * Issue 50836 - Port Schema UI tab to React * Issue 50842 - Decrease 389-console Cockpit component size * Ticket 50790 - Add result text when filter is invalid * Issue 50834 - Incorrectly setting the NSS default SSL version max * Issue 50829 - Disk monitoring rotated log cleanup causes heap-use-after-free * Ticket 50709 - (cont) Several memory leaks reported by Valgrind for 389-ds 1.3.9.1-10 * Issue 50599 - Fix memory leak when removing db region files * Issue 49395 - Set the default TLS version min to TLS1.2 * Issue 50818 - dsconf pwdpolicy get error * Issue 50824 - dsctl remove fails with "name 'ensure_str' is not defined" * Issue 50599 - Remove db region files prior to db recovery * Issue 50812 - dscontainer executable should be placed under /usr/libexec/dirsrv/ * Issue 50816 - dsconf allows the root password to be set to nothing * Issue 50798 - incorrect bytes in format string(fix import issue)- Update to version 1.4.2.6~git0.e84bbce3f: * Bump version to 1.4.2.6 * Ticket 50798 - incorrect bytes in format string * Issue 50545 - Add the new replication monitor functionality to UI * Issue 50806 - Fix minor issues in lib389 health checks * Issue 50754 - Add Restore Change Log option to CLI * Ticket 50727 - change syntax validate by default in 1.4.2 * Ticket 50667 - dsctl -l did not respect PREFIX * Issue 50780 - More CLI fixes * Issue 50780 - Fix UI issues * Ticket 50727 - correct mistaken options in filter validation patch * Issue 50779 - lib389 - conflict compare fails for DN's with spaces * Ticket #49761 - Fix CI test suite issues * Issue 50499 - Fix npm audit issues * Issue 50774 - Account.enroll_certificate() should not check for DS version * Issue 50771 - 1.4.2.5 doesn't compile due to error ModuleNotFoundError: No module named 'pkg_resources.extern' * Issue 50758 - Need to enable CLI arg completion * Ticket 50709: Several memory leaks reported by Valgrind for 389-ds 1.3.9.1-10 * Issue: 50690 - Port Password Storage test cases from TET to python3(create required types in password_plugins) * Issue: 48851 - Investigate and port TET matching rules filter tests(last test cases for match index) * Issue 50761 - Parametrized tests are missing ':parametrized' value * Bump version to 1.4.2.5 * Issue 50747 - Port readnsstate to dsctl * Issue 50758 - Enable CLI arg completion * Issue 50753 - Dumping the changelog to a file doesn't work * Ticket 50745: ns-slapd hangs during CleanAllRUV tests * Issue 50734 - lib389 creates non-SSCA cert DBs with misleading README.txt * Issue: 48851 - investigate and port TET matching rules filter tests(cert) * Issue: 50443 - Create a module in lib389 to Convert a byte sequence to a properly escaped for LDAP * Ticket 50664 - DS can fail to recover if an empty directory exists in db * Ticket 50736 - RetroCL trimming may crash at shutdown if trimming configuration is invalid * Ticket 50741 - bdb_start - Detected Disorderly Shutdown last time Directory Server was running * Issue 50572 - After running cl-dump dbdir/cldb/*ldif.done are not deleted * Issue 50701 - Fix type in lint report * Ticket 50729 - add support for gssapi tests on suse * Issue 50701 - Add additional healthchecks to dsconf * Issue 50711 - `dsconf security` lacks option for setting nsTLSAllowClientRenegotiation attribute * Issue 50439 - Update docker integration for Fedora * Issue: 48851 - Investigate and port TET matching rules filter tests(last test cases for match) * Issue 50499 - Fix npm audit issues * Issue 50722 - Test IDs are not unique * Issue 50712 - Version comparison doesn't work correctly on git builds * Issue 50499 - Fix npm audit issues * Issue 50706 - Missing lib389 dependency - packaging * Bump version to 1.4.2.4 * Issue 49761 - Fix CI test suite issues * Issue 50634 - Fix CLI error parsing for non-string values * Ticket 50659 AddressSanitizer: SEGV ... in bdb_pre_close * Issue 50716 - CVE-2019-14824 (BZ#1748199) - deref plugin displays restricted attributes * Issue 50644 - fix regression with creating sample entries * Issue 50699 - Add Disk Monitor to CLI and UI * Issue 50716 - CVE-2019-14824 (BZ#1748199) - deref plugin displays restricted attributes * Issue 50536 - After audit log file is rotated, DS version string is logged after each update * Issue #50712 - Version comparison doesn't work correctly on git builds * Issue 50706 - Missing lib389 dependency - packaging * Issue 49761 - Fix CI test suite issues * Issue #50683 - Makefile.am contains unused RPM-related targets * Issue 50696 - Fix various UI bugs * Update based on Marks feedback * Update to mark as skipif * Ticket 50641 - Update default aci to allows users to change their own password * Ticket 50007, 50648 - improve x509 handling. * Issue 50689 - Failed db restore task does not report an error * Issue 50199 - Disable perl by default * Ticket 50633 - Add cargo vendor support for offline builds * Issue 50499 - Fix npm audit issues * Bump version to 1.4.2.3 * Issue 50592 - Port Replication Tab to ReactJS * Issue 50680 - Remove branding from upstream spec file * Issue 50669 - Remove nunc-stans in favour of reworking current conn code (add.) * Issue: 48055 - CI test - automember_plugin(part1) * Issue 50677 - Map subtree searches with NULL base to default naming context * Issue 50669 - Fix RPM build * Ticket 50669 - remove nunc-stans * Ticket 49850 cont -fix crash in ldbm_non_leaf * Issue 50634 - Clean up CLI errors output - Fix wrong exception * Issue 50660 - Build failure on Fedora 31 * Issue 50634 - Clean up CLI errors output * Issue: 48851 - Investigate and port TET matching rules filter tests(match more test cases) * Ticket 50428 - Log the actual base DN when the search fails with "invalid attribute request" * Issue 49850 - ldbm_get_nonleaf_ids() slow for databases with many non-leaf entries * Issue 50655 - access log etime is not properly formatted * Issue 50653 - objectclass parsing fails to log error message text * Issue 50646 - Improve task handling during shutdowns * Add new test suite to test migration between RHDS versions * Ticket 50627 - Support platforms without pytest_html * Ticket 49476 - backend refactoring phase1, fix failing tests * Ticket 49476 - refactor ldbm backend to allow replacement of BDB * Ticket - 50349 - additional fix: filter schema check must handle subtypes * Issue: 48851 - investigate and port TET matching rules filter tests(indexing more test cases) * Issue 50638 - RecursionError: maximum recursion depth exceeded while calling a Python object * Ticket 50636 - Crash during sasl bind * Ticket 50632 - Add ensure attr state so that diffs are easier from 389-ds-portal * Ticket 50619 - extend commands to have more modify options * Issue 50499 - Fix npm audit issues * bump version to 1.4.2.2- Update to version 1.4.2.2~git0.d41ef935b: * Issue 50627 - Add ASAN logs to HTML report * Issue 50545 - Port repl-monitor.pl to lib389 CLI * Ticket 50622 - ds_selinux_enabled may crash on suse * Ticket 50595 - remove syslog.target requirement * Ticket 50617 - disable cargo lock * Issue 50620 - Fix regressions from 50506 (slapi_enry_attr_get_ref) * Issue 50615 - Log current test name to journald * Ticket: 50610 memory leak in dbscan * Bump version to 1.4.2.1 * Ticket 50581 - ns-slapd crashes during ldapi search * Issue 50604 - Fix UI validation * ticket 50510 - etime can contain invalid nanosecond value * Ticket 50593 Investigate URP handling on standalone instance * Issue 50506 - Fix regression for relication stripattrs * Issue 50580 - Perl can't be disabled in configure * Ticket 50584, 49212 - docker healthcheck and configuration * Issue 50546 - fix more UI issues(part 2) * Do not use comparision with "is" for empty value * Issue 50546 - fix more UI issues * Issue 50586 - lib389 - Fix DSEldif long line processing * Issue 50173 - Add the validate-syntax task to the dsconf schema * Issue 50546 - Fix various issues in UI * Bump version to 1.4.2.0 * Ticket 50576 - Same proc uid/gid maps to rootdn for ldapi sasl * Ticket 50567, 50568 - strict host check disable and display container version * Issue 50550 - DS installer debug messages leaking to ipa-server-install * Issue 50545 - Port fixup-memberuid and add the functionality to CLI and UI * Issue 50572 - After running cl-dump dbdir/cldb/*ldif.done are not deleted * Issue 50578 - Add SKIP_AUDIT_CI flag for Cockpit builds * Ticket 50349 - filter schema validation * Issue: 48055 - CI test-(Plugin configuration should throw proper error messages if not configured properly) * Issue 49324 - idl_new fix assert * Ticket 50564 - Fix rust libraries by default and improve docker * Issue 50206 - Refactor lock, unlock and status of dsidm account/role * Issue 49324 - idl_new report index name in error conditions * Issue 49761 - Fix CI test suite issues * Issue 50506 - Fix regression from slapi_entry_attr_get_ref refactor * Issue 50499 - Audit fix - Update npm 'eslint-utils' version * Issue 49624 - modrdn silently fails if DB deadlock occurs * fix for 50542 crashes in filter tests * Issue 49761 - Fix CI test suite issues * Ticket 50542 - Entry cache contention during base search * Issue 50462 - Fix CI tests * Ticket 50490 objects and memory leaks * Issue 50538 - Move CI test to individual file * Issue 50538 - cleanAllRUV task limit is not enforced for replicated tasks * Issue 50536 - Audit log heading written to log after every update * Issue 50525 - nsslapd-defaultnamingcontext does not change when the assigned suffix gets deleted * Issue 50534 - CLI change schema edit subcommand to replace * Issue 50506 - cont Fix invalid frees from pointer reference calls * Issue 50507 - Fix Cockpit UI styling for PF4 * Issue: 48851 - investigate and port TET matching rules filter tests(indexing final) * Issue: 48851 - Add more test cases to the match test suite(mode replace) * Issue 50530 - Directory Server not RFC 4511 compliant with requested attr "1.1" * Issue 50529 - LDAP server returning PWP controls in different sequence * Issue 50506 - Fix invalid frees from pointer reference calls. * Issue 50506 - Replace slapi_entry_attr_get_charptr() with slapi_entry_attr_get_ref() * Issue 50521 - Add regressions in CI tests * Ticket 50510 - etime can contain invalid nanosecond value * Issue 50488 - Create a monitor for disk space usagedisk-space-mon * Issue 50511 - lib389 PosixGroups type can not handle rdn properly * Issue 50508 - UI - fix local password policy form- Fix spec file discrepencies from SLE - Update to correct license issue in spec file - Update to simplify rust option selection - Update to version 1.4.1.6~git0.5ac5a8aad: * Bump version to 1.4.1.6 * Issue 50355 - SSL version min and max not correctly applied * Issue 50497 - Port cl-dump.pl tool to Python using lib389 * Issue: 48851 - investigate and port TET matching rules filter tests(Final) * correction to fix for #50417 * Issue 50425 - Add jemalloc LD_PRELOAD to systemd drop-in file * Issue 50425 - Add jemalloc LD_PRELOAD to systemd drop-in file * Issue 50325 - Add Security tab to UI * Ticket 49789 - By default, do not manage unhashed password * Ticket 49421 - Implement password hash upgrade on bind. * Ticket 49421 - on bind password upgrade proof of concept * Ticket 50493 - connection_is_free to trylock * Ticket 50459 - Correct issue with allocation state * Issue 50499 - Fix audit issues and remove jquery from the whitelist * Ticket 50459 - c_mutex to use pthread_mutex to allow ns sharing * Ticket 50484 - Add a release build dockerfile and dscontainer improvements * Issue 50486 - Update jemalloc to 5.2.0 - Update to version 1.4.1.5~git0.748334143: * Bump version to 1.4.1.5 * Issue 50431 - Fix regression from coverity fix * Issue 49239 - Add a new CI test case * Issue 49997 - Add a new CI test case * Issue 50177 - Add a new CI test case, also added fixes in lib389 * Issue 49761 - Fix CI test suite issues * Issue 50474 - Unify result codes for add and modify of repl5 config * Ticket 50472 - memory leak with encryption * Issue 50462 - Fix Root DN access control plugin CI tests * Issue 50462 - Fix CI tests * Ticket 50217 - Implement dsconf security section * Issue: 48851 - Add more test cases to the match test suite. * Issue 50378 - ACI's with IPv4 and IPv6 bind rules do not work for IPv6 clients * Ticket 50439 - fix waitpid issue when pid does not exist * Issue 50454 - Fix Cockpit UI branding * Issue: 48851 - investigate and port TET matching rules filter tests(index) * Issue 49232 - Truncate the message when buffer capacity is exceeded * Bump version to 1.4.1.4 * Ticket 49361 - Use IPv6 friendly network functions * Issue: 48851 - Investigate and port TET matching rules filter tests(bug772777) * Issue: 50446 - NameError: name 'ds_is_older' is not defined * Issue 49602 - Revise replication status messages * Ticket 50439 - Update docker integration to work out of source directory * Ticket 50037 - revert path changes as it breaks prefix/rpm builds * Issue 50431 - Fix regression from coverity fix * Issue 50370 - CleanAllRUV task crashing during server shutdown * Issue: 48851 - investigate and port TET matching rules filter tests(match) * Issue 50417 - Fix missing quote in some legacy tools * Ticket 50431 - Fix covscan warnings * Revert "Issue 49960 - Core schema contains strings instead of numer oids" * Issue 50426 - nsSSL3Ciphers is limited to 1024 characters * Issue 50052 - Fix rpm.mk according to audit-ci change * Issue 50365 - PIDFile= references path below legacy directory /var/run/ * Ticket 50428 - Log the actual base DN when the search fails with "invalid attribute request" * Ticket 50329 - (2nd) Possible Security Issue: DOS due to ioblocktimeout not applying to TLS * Ticket 50417 - Revise legacy tool scripts to work with new systemd changes * Issue: 48851 - Add more search filters to vfilter_simple test suite * Issue 49761 - Fix CI test suite issues * Issue 49875 - Move SystemD service config to a drop-in file * Ticket 50413 - ds-replcheck - Always display the Result Summary * Issue 50052 - Add package-lock.json and use "npm ci" * Issue: 48851 - investigate and port TET matching rules filter tests(vfilter simple) * Ticket 50355 - NSS can change the requested SSL min and max versions * Issue: 48851 - investigate and port TET matching rules filter tests(vfilter_ld) * Issue 50390 - Add Managed Entries Plug-in Config Entry schema * Ticket 49730 - Remove unused Mozilla ldapsdk variables - Update to version 1.4.1.3~git0.1f1119d4b: * Bump version to 1.4.1.3 * Issue 49761 - Fix CI test suite issues * Issue 50041 - Add the rest UI Plugin tabs - Part 2 * Ticket 50340 - 2nd try - structs for diabled plugins will not be freed * Issue 50403 - Instance creation fails on 1.3.9 using perl utils and latest lib389 * Ticket 50389 - ns-slapd craches while two threads are polling the same connection * Issue: 48851 - investigate and port TET matching rules filter tests(scanlimit) * Issue 50037 - lib389 fails to install in venv under non-root user * Issue: 50112 - Port ACI test suit from TET to python3(userattr) * Ticket 50393 - maxlogsperdir accepting negative values * Issue: 50112 - Port ACI test suit from TET to python3(roledn) * Issue 49960 - Core schema contains strings instead of numer oids * Ticket 50396 - Crash in PAM plugin when user does not exist * Issue 50387 - enable_tls() should label ports with ldap_port_t * Issue 50390 - Add Managed Entries Plug-in Config Entry schema * Ticket 50306 - Fix regression with maxbersize * Issue 50384 - Missing dependency: cracklib-dicts * Issue 49029 - [RFE] improve internal operations logging * Issue 49761 - Fix CI test suite issues * Issue - 50374 dsdim posixgroup create fails with ERROR * Ticket 50251 - clear text passwords visable in CLI verbose mode logging * Ticket 50378 - ACI's with IPv4 and IPv6 bind rules do not work for IPv6 clients * Issue:48851 - investigate and port TET matching rules filter tests * Issue 50220 - attr_encryption test suite failing * Ticket 50370 - CleanAllRUV task crashing during server shutdown * Ticket 50340 cont - structs for disabled plugins will not be freed * Fix missing import * Issue 50164 - Add test for dscreate to basic test suite * Ticket 50363 - ds-replcheck incorrectly reports error out of order multi-valued attributes * Issue 49730 - MozLDAP bindings have been unsupported for a while * Issue #50353 - Categorize tests by tiers * Issue 50303 - Add creation date to task data * Issue: 50358 - Create a Bitwise Plugin class in plugins.py * Remove the nss3 path prefix from the cert.h C preprocessor source file inclusion * Ticket 50329 - revert fix * Issue: 50112 - Port ACI test suit from TET to python3(keyaci) * Ticket 50344 - tidy rpm vs build systemd flag handling * Issue #50067 - Fix krb5 dependency in a specfile * Ticket 50340 - structs for diabled plugins will not be freed * Ticket 50327 - Add replication conflict support to UI * Ticket 50327 - Add replication conflict entry support to lib389/CLI * Ticket 50329 - improve connection default parameters * Issue: 50313 - Add a NestedRole type to lib389 * Issue:50112 - Port ACI test suit from TET to python3(Delete and Add) * Ticket 49390, 50019 - support cn=config compare operations * Issue 50041 - Add the rest UI Plugin tabs - Part 1 * Ticket 50329 - Possible Security Issue: DOS due to ioblocktimeout not applying to TLS * Ticket 49990 - Increase the default FD limits * Ticket 50306 - (cont typo) Move connection config inside struct * Ticket 50291 - Add monitor tab functionality to Cockpit UI * Fix cockpit console AppStream data * Ticket 50317 - fix ds-backtrace issue on latest gdb * Ticket 50305 - Revise CleanAllRUV task restart process * Fix typo from: Issue 49915 - Add regression test * Issue 50026 - Audit log does not capture the operation where nsslapd-lookthroughlimit is modified * Ticket 49899 - fix pin.txt and pwdfile permissions * Issue 49915 - Add regression test * Ticket 50303 - Add task creation date to task data * Ticket 50306 - Move connection config inside struct * Ticket 50240 - Improve task logging * Issue 50032 - Fix deprecation warnings in tests * Ticket 50310 - fix sasl header include * Ticket 49390 - improve compare and cn=config compare tests - fix permissions handling (boo#1120189) - Update to version 1.4.1.2~git0.9a126614a: * Removes sysconfig from RPM as we no longer create it to detect instance existance or settings. Older installs will still have their sysconfig parsed, but new installs should use systemd environment variables. * Bump version to 1.4.1.2 * Ticket 50308 - Revise memory leak fix * Ticket 50308 - Fix memory leaks for repeat binds and replication * Use PKG_CHECK_MODULES to detect the systemd library * Use PKG_CHECK_MODULES to detect the kerberos library * Use pkg-config from the host system to better support cross-compiling * Use PKG_CHECK_MODULES to detect the libsasl2 library * configure.ac: Add missing comma to an AC_ARG_ENABLE macro * configure.ac: Remove unpaired parentheses from two help strings * m4/doxygen.m4: Fix spelling of Doxygen in a message * Use PKG_CHECK_MODULES to detect the pcre library * Use PKG_CHECK_MODULES to detect the cmocka library * Use PKG_CHECK_MODULES to detect the nss library * Use PKG_CHECK_MODULES to detect the nspr library * Use PKG_CHECK_MODULES to detect the event library * Ticket 49873 - (cont 3rd) cleanup debug log * Ticket 49873 - (cont 2nd) Contention on virtual attribute lookup * Issue 50292 - Fix Plugin CLI and UI issues * Issue:50112 - Port ACI test suit from TET to python3(misc and syntax) * Ticket 50289 - Fix various database UI issues * Ticket 49463 After cleanALLruv, replication is looping on keep alive DEL * Ticket 50300 - Fix memory leak in automember plugin * Ticket 50265: the warning about skew time could last forever * Ticket 50260 - Invalid cache flushing improvements * Ticket 49561 - MEP plugin, upon direct op failure, will delete twice the same managed entry * Ticket 50077 - Do not automatically turn automember postop modifies on * Ticket 50282 - OPERATIONS ERROR when trying to delete a group with automember members * Ticket 49715 - extend account functionality * Ticket 49873: (cont) Contention on virtual attribute lookup * Ticket 50260 - backend txn plugins can corrupt entry cache * Ticket 50255 - Port password policy test to use DSLdapObject * Ticket 49667 - 49668 - remove old spec files * Issue 50276 - 389-ds-console is not built on RHEL8 if cockpit_dist is already present * Issue: 50112 - Port ACI test suit from TET to python3(Search) * Ticket 50259 - implement dn construction test * Ticket 50273 - reduce default replicaton agmt timeout * Ticket 50208 - lib389- Fix issue with list all instances * Issue: 50112 - Port ACI test suit from TET to python3(Global Group) * Issue 50041 - Add CLI functionality for special plugins * Issue 50263 - LDAPS port not listening after installation * Ticket 49575 - Indicate autosize value errors and corrective actions * Ticket 50137 - create should not check in non-stateful mode for exist * Ticket 49655 - remove doap file * Issue 50197 - Fix dscreate regression * Ticket 50234 - one level search returns not matching entry * Ticket 50257 - lib389 - password policy user vs subtree checks are broken * Issue: 50253 - Making an nsManagedRoleDefinition type in src/lib389/lib389/idm/nsrole.py * Issue 49029 - [RFE] improve internal operations logging * Ticket 50230 - improve ioerror msg when not root/dirsrv * Issue 50246 - Fix the regression in old control tools * Ticket 50197 - Container integration part 2 * Ticket 50197 - Container init tools * Ticket 50232 - export creates not importable ldif file * Ticket 50215 - UI - implement Database Tab in reachJS * Ticket 50243 - refint modrdn stress test * Ticket 50238 - Failed modrdn can corrupt entry cache * Ticket 50236 - memberOf should be more robust * Ticket 50213 - fix list instance issue * Issue: 50219 - Add generic filter to DSLdapObjects * Issue: 50227 - Making an cosClassicDefinition type in src/lib389/lib389/cos.py * Issue: 50112 - Port ACI test suit from TET to python3(modify) * Ticket 50224 - warnings on deprecated API usage * Issue:50112 - Port ACI test suit from TET to python3(valueaci) * Issue: 50112 Port ACI test suit from TET to python3(Aci Atter) * Ticket 50208 - make instances mark off based on dse.ldif not sysconfig * Issue: 50170 - composable object types for nsRole in lib389 * Ticket 50199 - disable perl by default * Issue:50211 - Making an actual Anonymous type in lib389/idm/account.py * Ticket 50155 - password history check has no way to just check the current password * Ticket 49873 - Contention on virtual attribute lookup * Ticket 50197 - Container integration improvements * Ticket 50195 - improve selinux error messages in interactive * Ticket 49658 - In replicated topology a single-valued attribute can diverge * Ticket 50111: Use pkg-config to detect icu * Ticket 50165 - Fix issues with dscreate * Ticket 50177 - import task should not be deleted too rapidely after import finishes to be able to query the status * Ticket 50140 - Use high ports in container installs * Ticket 50184 - Add cli tool parity to dsconf/dsctl * Ticket 50159 - sssd and config display - Remove a pair of %if..%endif guards that do not affect the build. - Updates to 389-ds.spec - Make lib389 a requirement of 389-ds installs - Disable shell script wrappers that have be replaced by dsctl/dsconf - Disable perl in spec file build. For replacement tools see: http://www.port389.org/docs/389ds/FAQ/legacy-command-changes.html - Remove patches that have been merged by upstream - Removed: 0001-init_fhs.patch - merged by upstream - Removed: 0002-use-python2-for-selinux-detection.patch - merged by upstream - Removed: drop-caps.patch - merged by upstream - Commented requires and recommendes in 389-ds.spec - cyrus-sasl-plain added as a requirement as it is the only plaintext or start TLS secure method for password auth (LDAPS is always secure) - cyrus-sasl-gssapi moved to recommends as it is not always required - cyrus-sasl-digestmd5 moved to recommends, as it is insecure and not always required - openldap2-client moved to recommends on lib389 as a supplement to ldap command line tools that we provide, but not necessary - python3-selinux and python3-policycoreutils moved to recommends as they are not required, and only give "nice to have" features during install of an instance - Update to version 1.4.1.1~git0.af9bb7206: * Bump version to 1.4.1.1 * Ticket 50151 - lib389 support cli add/replace/delete on objects * Issue 50041 - CLI and WebUI - Add memberOf plugin functionality * Bump version to 1.4.1.0 * Ticket 50125 - perl fix ups for tmpfiles * Ticket 50164 - Add test for dscreate * Fix for ticket 50059: If an object is nsds5replica, it must be cn=replica * Ticket 50169 - lib389 changed hardcoded systemctl path * Ticket 50165 - Fix dscreate issues * Issue 50152 - Replace os.getenv('HOME') with os.path.expanduser * Fix compiler warning in snmp main() * Ticket - Fix compiler warning in init.c * Ticket 49540 - FIx compiler warning in ldif2ldbm * Ticket 50169 - lib389 changed hardcoded systemctl path * Ticket 50165 - Fix dscreate issues * Issue 50152 - Replace os.getenv('HOME') with os.path.expanduser * Ticket 49540 - FIx compiler warning in ldif2ldbm * Ticket 50077 - Fix compiler warnings in automember rebuild task * Ticket 49972 - use-after-free in case of several parallel krb * authentication * Ticket 50161 - Fixed some descriptions in "dsconf backend --help" * Ticket 50153 - Increase default max logs * Ticket 50123 - with_tmpfiles_d is associated to systemd * Ticket 49984 - python installer add option to create suffix entry * Ticket 49984 - python installer add option to create suffix entry * Ticket 50077 - RFE - improve automember plugin to work with * modify ops * Ticket 50136 - Allow resetting passwords on the CLI * Ticket 49994 - Adjust dsconf backend usage * Ticket 50138 - db2bak.pl -P LDAPS does not work when * nsslapd-securePort is missing * Ticket 50122 - Fix incorrect path spec * Issue 50145 - Add a verbose option to the backup tools * Ticket 50056 - dsctl db2ldif throws an exception * Ticket 50078 - cannot add cenotaph in read only consumer * Ticket 50126 - Incorrect usage of sudo in test * Issue 50130 - Building RPMs on RHEL8 fails * Ticket 50134 - fixup-memberof.pl does not respect protocol requested * Issue 50122 - Selinux test for presence * Issue 50101 - Port fourwaymmr Test TET suit to python3 * Issue 50091 - shadowWarning is not generated if passwordWarning * is lower than 86400 seconds (1 day). * Ticket 50128 - NS Stress fails without ipv6 * Issue 49618 - Set nsslapd-cachememsize to custom value * Ticket 50117 - after certain failed import operation, impossible * to replay an import operation * Ticket 49999 - rpm.mk dist-bz2 should clean cockpit_dist first * Issue 48064 - Fix various issues in disk monitoring test suite * Issue 49938 - lib389 - Clean up CLI logging * Issue 49761 - Fix CI test suite issues * Ticket 50056 - Fix UI bugs (part 2) * Issue: 48064 - CI test - disk_monitoring * Ticket 50099 - extend error messages * Ticket 50099 - In FIPS mode, the server can select an unsupported * password storage scheme * Issue 50041 - Add basic plugin UI/CLI wrappers * Issue 50082 - Port state test suite * Ticket 49574 - remove index subsystem * Issue 49588 - Add py3 support for tickets : part-5 * Ticket 50095 - cleanup deprecated key.h includes - use lib389 on 15.0 and up. now that we do not hardrequire the python selinux bindings anymore- Update specfile to be inline with the OpenSUSE spec file * include future-configurations in the spec which are not active until 15.2 * lib389 (upstream requirement from 1.4.0) * rust (upstream requirement from 1.4.2) * removal of perl (upstream has not supported perl in any 1.4.x release) * resolve missing svrcore obsoletes statement and pkg configuration (bsc#1144797)- Update to version 1.4.0.26~git0.8a2d3de6f: * Bump version to 1.4.0.26 * Issue 50499 - Fix audit issues and remove jquery from the whitelist * Issue 50355 - SSL version min and max not correctly applied * Issue 50325 - Add Security tab to UI * Issue 50177 - Add a new CI test case, also added fixes in lib389 * Bump version to 1.4.0.25 * Issue 50431 - Fix regression from coverity fix * Bump version to 389-ds-base-1.4.0.24 * Fix cherry-pick error from last commit * Issue 50052 - Fix rpm.mk according to audit-ci change * Issue 50276 - 389-ds-console is not built on RHEL8 if cockpit_dist is already present * Issue 50041 - Add the rest UI Plugin tabs - Part 1 * Ticket 50217 - Implement dsconf security section * Issue 49602 - Revise replication status messages * Issue 50431 - Fix regression from coverity fix * Ticket 50431 - Fix covscan warnings * Issue 50426 - nsSSL3Ciphers is limited to 1024 characters * Ticket 50428 - Log the actual base DN when the search fails with "invalid attribute request" * Ticket 50329 - (2nd) Possible Security Issue: DOS due to ioblocktimeout not applying to TLS * Ticket 50413 - ds-replcheck - Always display the Result Summary * Ticket 50355 - NSS can change the requested SSL min and max versions * Bump version to 1.4.0.23 * Issue 50041 - Add the rest UI Plugin tabs - Part 2 * Ticket 50340 - 2nd try - structs for diabled plugins will not be freed * Ticket 50393 - maxlogsperdir accepting negative values * Ticket 50396 - Crash in PAM plugin when user does not exist * Issue 50390 - Add Managed Entries Plug-in Config Entry schema * Ticket 50251 - clear text passwords visable in CLI verbose mode logging * Ticket 50378 - ACI's with IPv4 and IPv6 bind rules do not work for IPv6 clients * Ticket 50370 - CleanAllRUV task crashing during server shutdown * Ticket 50340 cont - structs for disabled plugins will not be freed * Ticket 50363 - ds-replcheck incorrectly reports error out of order multi-valued attributes * Ticket 50329 - revert fix * Ticket 50340 - structs for diabled plugins will not be freed * Ticket 50327 - Add replication conflict support to UI * Ticket 50327 - Add replication conflict entry support to lib389/CLI * Ticket 50329 - Possible Security Issue: DOS due to ioblocktimeout not applying to TLS * Ticket 49990 - Increase the default FD limits * Ticket 50291 - Add monitor tab functionality to Cockpit UI * Fix cockpit console AppStream data * Ticket 50305 - Revise CleanAllRUV task restart process * Ticket 50303 - Add task creation date to task data * Ticket 50240 - Improve task logging- Update to version 1.4.0.22~git0.9d84a40dd: * Bump version to 1.4.0.22 which resolves: * (bsc#1120189) * (bsc#991201, CVE-2016-5416) * (bsc#1083689, CVE-2018-1054) * (bsc#1092187, CVE-2018-1089) * (bsc#1099465, CVE-2018-10871) * (bsc#1108674, CVE-2018-14638) * (bsc#1109609, CVE-2018-14648) * (bsc#1132385, CVE-2019-3883) * (bsc#1105606, CVE-2018-10935) * Ticket 50308 - Revise memory leak fix * Ticket 50308 - Fix memory leaks for repeat binds and replication * Ticket 49873 - (cont 3rd) cleanup debug log * Ticket 49873 - (cont 2nd) Contention on virtual attribute lookup * Issue 50292 - Fix Plugin CLI and UI issues * Ticket 50289 - Fix various database UI issues * Ticket 50300 - Fix memory leak in automember plugin * Ticket 50265: the warning about skew time could last forever * Ticket 50260 - Invalid cache flushing improvements * Remove obsolete patch 0001-init_fhs.patch * Remove obsolete patch 0002-use-python2-for-selinux-detection.patch * Remove obsolete patch 0003-fix-rm-non-existent-man-pages.patch * Remove obsolete patch simplify-lib389-setup-py.patch * Remove obsolete patch tw.patch * Remove obsolete patch 0006-under-network-load-ps-can-decrease-connection-refcnt.patch * Remove obsolete patch 0007-fix-remote-dos-via-search-filters-in-slapi_filter_sprintf.patch * Remove obsolete patch 0008-invalid-password-migration-causes-unauth-bind.patch * Remove obsolete patch 0009-ldapsearch-with-server-side-sort-crashes-the-server.patch * Remove obsolete patch 0010-Log-buffer-exceeded-emergency-logging-msg-is-not-thread-safe.patch- Introduce patch: 0010-Log-buffer-exceeded-emergency-logging-msg-is-not-thread-safe.patch to fix the issue "389-ds: Server crash through modify command with large DN" (bsc#1106699, CVE-2018-14624)- Introduce patch: 0009-ldapsearch-with-server-side-sort-crashes-the-server.patch to fix the issue that ldapsearch with server side sort allows users to cause a crash (bsc#1105606, CVE-2018-10935)- Introduce patches: * 0006-under-network-load-ps-can-decrease-connection-refcnt.patch to fix the race condition on reference counter (bsc#1096368, CVE-2018-10850) * 0007-fix-remote-dos-via-search-filters-in-slapi_filter_sprintf.patch (bsc#1076530, CVE-2017-15134) * 0008-invalid-password-migration-causes-unauth-bind.patch (bsc#1076530, CVE-2017-15135)- Explicitly generate dirsrv sysconfig file as it is necessary for SLES 15 (bsc#1081324).- switch lib389 to use the python3-ldap subpackage- For SLES 15 schedule, do not build lib389 programmable extension for now.- BuildRequire python3-ldap instead of python3-pyldap: pyldap is deprecated in favor of python-ldap.- Rename dependency package python-pyldap into python3-pyldap.- Correct name to dependency package "python-pyldap".- Introduce patch 0003-fix-rm-non-existent-man-pages.patch to remove a faulty rm statement from makefile.- add tw.patch to fix potential buffer overflow- Replace references to /var/adm/fillup-templates with new %_fillupdir macro (boo#1069468)- added simplify-lib389-setup-py.patch seems the python3 setuptools on leap 42.3 do not like this fancy syntax. kill it and always use the python 3 way.- update to 1.4.0.3 - Ticket 49457 - Fix spal_meminfo_get function prototype - Ticket 49455 - Add tests to monitor test suit. - Ticket 49448 - dynamic default pw scheme based on environment. - Ticket 49298 - fix complier warn - Ticket 49298 - Correct error codes with config restore. - Ticket 49454 - SSL Client Authentication breaks in FIPS mode - Ticket 49453 - passwd.py to use pwdhash defaults. - Ticket 49427 - whitespace in fedse.c - Ticket 49410 - opened connection can remain no longer poll, like hanging - Ticket 48118 - fix compiler warning for incorrect return type - Ticket 49451 - Add environment markers to lib389 dependencies - Ticket 49325 - Proof of concept rust tqueue in sds - Ticket 49443 - scope one searches in 1.3.7 give incorrect results - Ticket 48118 - At startup, changelog can be erronously rebuilt after a normal shutdown - Ticket 49412 - SIGSEV when setting invalid changelog config value - Ticket 49441 - Import crashes - oneline fix - Ticket 49377 - Incoming BER too large with TLS on plain port - Ticket 49441 - Import crashes with large indexed binary attributes - Ticket 49435 - Fix NS race condition on loaded test systems - Ticket 77 - lib389 - Refactor docstrings in rST format - part 2 - Ticket 17 - lib389 - dsremove support - Ticket 3 - lib389 - python 3 compat for paged results test - Ticket 3 - lib389 - Python 3 support for memberof plugin test suit - Ticket 3 - lib389 - config test - Ticket 3 - lib389 - python 3 support ds_logs tests - Ticket 3 - lib389 - python 3 support for betxn test- we actually need pyldap- lib389 is merged into this tarball now. move the subpackage here.- update to 1.4.0.2 - Ticket 48393 - fix copy and paste error - Ticket 49439 - cleanallruv is not logging information - Ticket 48393 - Improve replication config validation - Ticket lib389 3 - Python 3 support for ACL test suite - Ticket 103 - sysconfig not found - Ticket 49436 - double free in COS in some conditions - Ticket 48007 - CI test to test changelog trimming interval - Ticket 49424 - Resolve csiphash alignment issues - Ticket lib389 3 - Python 3 support for pwdPolicy_controls_test.py - Ticket 3 - python 3 support - filter test - Ticket 49434 - RPM build errors - Ticket 49432 - filter optimise crash - Ticket 49432 - Add complex fliter CI test - Ticket 48894 - harden valueset_array_to_sorted_quick valueset access - Ticket 49401 - Fix compiler incompatible-pointer-types warnings - Ticket 48681 - Use of uninitialized value in string ne at /usr/bin/logconv.pl - Ticket 49409 - Update lib389 requirements - Ticket 49401 - improve valueset sorted performance on delete - Ticket 49374 - server fails to start because maxdisksize is recognized incorrectly - Ticket 49408 - Server allows to set any nsds5replicaid in the existing replica entry - Ticket 49407 - status-dirsrv shows ellipsed lines - Ticket 48681 - Use of uninitialized value in string ne at /usr/bin/logconv.pl - Ticket 49386 - Memberof should be ignore MODRDN when the pre/post entry are identical - Ticket 48006 - Missing warning for invalid replica backoff configuration - Ticket 49064 - testcase hardening - Ticket 49064 - RFE allow to enable MemberOf plugin in dedicated consumer - Ticket lib389 3 - python 3 support - Ticket 49402 - Adding a database entry with the same database name that was deleted hangs server at shutdown - Ticket 48235 - remove memberof lock (cherry-pick error) - Ticket 49394 - build warning - Ticket 49381 - Refactor numerous suite docstrings - Part 2 - Ticket 49394 - slapi_pblock_get may leave unchanged the provided variable - Ticket 49403 - tidy ns logging - Ticket 49381 - Refactor filter test suite docstrings - Ticket 48235 - Remove memberOf global lock - Ticket 103 - Make sysconfig where it is expected to exist - Ticket 49400 - Add clang support to rpm builds - Ticket 49381 - Refactor ACL test suite docstrings - Ticket 49363 - Merge lib389 - Ticket 101 - BaseException.message has been deprecated in Python3 - Ticket 102 - referral support - Ticket 99 - Fix typo in create_topology - Ticket #98 - Fix dbscan output - Ticket #77 - Fix changelogdb param issue - Ticket #77 - Refactor docstrings in rST format - part 1 - Ticket 96 - Change binaries’ names - Ticket 77 - Add sphinx documentation - Ticket 43 - Add support for Referential Integrity plugin - Ticket 45 - Add support for Rootdn Access Control plugin - Ticket 46 - dsconf support for dynamic schema reload - Ticket 74 - Advice users to set referint-update-delay to 0 - Ticket 92 - display_attr() should return str not bytes in py3 - Ticket 93 - Fix test cases in ctl_dbtasks_test.py - Ticket 88 - python install and remove for tests - Ticket 85 - Remove legacy replication attribute - Ticket 91 - Fix replication topology - Ticket 89 - Fix inconsistency with serverid - Ticket 79 - Fix replica.py and add tests - Ticket 86 - add build dir to gitignore - Ticket 83 - Add an util for generating instance parameters - Ticket 87 - Update accesslog regec for HR etimes - Ticket 49 - Add support for whoami plugin - Ticket 48 - Add support for USN plugin - Ticket 78 - Add exists() method to DSLdapObject - Ticket 31 - Allow complete removal of some memberOf attrs - Ticket31 - Add memberOf fix-up task - Ticket 67 - Add ensure_int function - Ticket 59 - lib389 support for index management. - Ticket 67 - get attr by type - Ticket 70 - Improve repl tools - Ticket 50 - typo in db2* in dsctl - Ticket 31 - Add status command and SkipNested support for MemberOf - Ticket 31 - Add functional tests for MemberOf plugin - Ticket 66 - expand healthcheck for Directory Server - Ticket 69 - add specfile requires - Ticket 31 - Initial MemberOf plugin support - Ticket 50 - Add db2* tasks to dsctl - Ticket 65 - Add m2c2 topology - Ticket 63 - part 2, agreement test - Ticket 63 - lib389 python 3 fix - Ticket 62 - dirsrv offline log - Ticket 60 - add dsrc to dsconf and dsidm - Ticket 32 - Add TLS external bind support for testing - Ticket 27 - Fix get function in tests - Ticket 28 - userAccount for older versions without nsmemberof - Ticket 27 - Improve dseldif API - Ticket 30 - Add initial support for account lock and unlock. - Ticket 29 - fix incorrect format in tools - Ticket 28 - Change default objectClasses for users and groups - Ticket 1 - Fix missing dn / rdn on config. - Ticket 27 - Add a module for working with dse.ldif file - Ticket 1 - cn=config comparison - Ticket 21 - Missing serverid in dirsrv_test due to incorrect allocation - Ticket 26 - improve lib389 sasl support - Ticket 24 - Join paths using os.path.join instead of string concatenation - Ticket 25 - Fix RUV repr function - Ticket 23 - Use DirSrv.exists() instead of manually checking for instance’s existence - Ticket 1 - cn=config comparison - Ticket 22 - Specify a basedn parameter for IDM modules - Ticket 19 - missing readme.md in python3 - Ticket 20 - Use the DN_DM constant instead of hard coding its value - Ticket 19 - Missing file and improve make - Ticket 14 - Remane dsadm to dsctl - Ticket 16 - Reset InstScriptsEnabled argument during the init - Ticket 14 - Remane dsadm to dsctl - Ticket 13 - Add init function to create new domain entries - Ticket 15 - Improve instance configuration ability - Ticket 10 - Improve command line tool arguments - Ticket 9 - Convert readme to MD - Ticket 7 - Add pause and resume methods to topology fixtures - Ticket 49172 - Allow lib389 to read system schema and instance - Ticket 49172 - Allow lib389 to read system schema and instance - Ticket 6 - Bump lib389 version 1.0.4 - Ticket 5 - Fix container build on fedora - Ticket 4 - Cert detection breaks some tests - Ticket 49137 - Add sasl plain tests, lib389 support - Ticket 2 - pytest mark with version relies on root - Ticket 49126 - DIT management tool - Ticket 49101 - Python 2 generate example entries - Ticket 49103 - python 2 support for installer - Ticket 47747 - Add topology_i2 and topology_i3 - Ticket 49087 - lib389 resolve jenkins issues - Ticket 48413 - Improvements to lib389 for rest - Ticket 49083 - Support prefix for discovery of the defaults.inf file. - Ticket 49055 - Fix debugging mode issue - Ticket 49060 - Increase number of masters, hubs and consumers in topology - Ticket 47747 - Add more topology fixtures - Ticket 47840 - Add InstScriptsEnabled argument - Ticket 47747 - Add topology fixtures module - Ticket 48707 - Implement draft-wibrown-ldapssotoken-01 - Ticket 49022 - Lib389, py3 installer cannot create entries in backend - Ticket 49024 - Fix paths to the dbdir parent - Ticket 49024 - Fix db_dir paths - Ticket 49024 - Fix paths in tools module - Ticket 48961 - Fix lib389 minor issues shown by 48961 test - Ticket 49010 - Lib389 fails to start with systemctl changes - Ticket 49007 - lib389 fixes for paths to use online values - Ticket 49005 - Update lib389 to work in containers correctly. - Ticket 48991 - Fix lib389 spec for python2 and python3 - Ticket 48984 - Add lib389 paths module - Ticket 48951 - dsadm dsconfig status and plugin - Ticket 47957 - Update the replication “idle” status string - Ticket 48951 - dsadm and dsconf base files - Ticket 48952 - Restart command needs a sleep - Ticket 48949 - Fix ups for style and correctness - Ticket 48949 - added copying slapd-collations.conf - Ticket 48949 - change default file path generation - use os.path.join - Ticket 48949 - os.makedirs() exist_ok not python2 compatible, added try/except - Ticket 48949 - configparser fallback not python2 compatible - Ticket 48946 - openConnection should not fully popluate DirSrv object - Ticket 48832 - Add DirSrvTools.getLocalhost() function - Ticket 48382 - Fix serverCmd to get sbin dir properly - Bug 1347760 - Information disclosure via repeated use of LDAP ADD operation, etc. - Ticket 48937 - Cleanup valgrind wrapper script - Ticket 48923 - Fix additional issue with serverCmd - Ticket 48923 - serverCmd timeout not working as expected - Ticket 48917 - Attribute presence - Ticket 48911 - Plugin improvements for lib389 - Ticket 48911 - Improve plugin support based on new mapped objects - Ticket 48910 - Fixes for backend tests and lib389 reliability. - Ticket 48860 - Add replication tools - Ticket 48888 - Correction to create of dsldapobject - Ticket 48886 - Fix NSS SSL library in lib389 - Ticket 48885 - Fix spec file requires - Ticket 48884 - Bugfixes for mapped object and new connections - Ticket 48878 - better style for backend in backend_test.py - Ticket 48878 - pep8 fixes part 2 - Ticket 48878 - pep8 fixes and fix rpm to build - Ticket 48853 - Prerelease installer - Ticket 48820 - Begin to test compatability with py.test3, and the new orm - Ticket 48434 - Fix for negative tz offsets - Ticket 48857 - Remove python-krbV from lib389 - Ticket 48820 - Fix tests to ensure they work with the new object types - Ticket 48820 - Move Encryption and RSA to the new object types - Ticket 48820 - Proof of concept of orm style mapping of configs and objects - Ticket 48820 - Clitool rename - Ticket 48431 - lib389 integrate ldclt - Ticket 48434 - lib389 logging tools - Ticket 48796 - add function to remove logs - Ticket 48771 - lib389 - get ns-slapd version - Ticket 48830 - Convert lib389 to ip route tools - Ticket 48763 - backup should run regardless of existing backups. - Ticket 48434 - lib389 logging tools - Ticket 48798 - EL6 compat for lib389 tests for DH params - Ticket 48798 - lib389 add ability to create nss ca and certificate - Ticket 48433 - Aci linting tools - Ticket 48791 - format args in server tools - Ticket 48399 - Helper makefile is missing mkdir dist - Ticket 48399 - Helper makefile is missing mkdir dist - Ticket 48794 - lib389 build requires are on a single line - Ticket 48660 - Add function to convert binary values in an entry to base64 - Ticket 48764 - Fix mit krb password to be random. - Ticket 48765 - Change default ports for standalone topology - Ticket 48750 - Clean up logging to improve command experience - Ticket 48751 - Improve lib389 ldapi support - Ticket 48399 - Add helper makefile to lib389 to build and install - Ticket 48661 - Agreement test suite fails at the test_changes case - Ticket 48407 - Add test coverage module for lib389 repo - Ticket 48357 - clitools should standarise their args - Ticket 48560 - Make verbose handling consistent - Ticket 48419 - getadminport() should not a be a static method - Ticket 48408 - RFE escaped default suffix for tests - Ticket 48401 - Revert typecheck - Ticket 48401 - lib389 Entry hasAttr returs dict instead of false - Ticket 48390 - RFE Improvements to lib389 monitor features for rest389 - Ticket 48358 - Add new spec file - Ticket 48371 - weaker host check on localhost.localdomain - Ticket 58358 - Update spec file with pre-release versioning - Ticket 48358 - Make Fedora packaging changes to the spec file - Ticket 48358 - Prepare lib389 for Fedora Packaging - Ticket 48364 - Fix test failures - Ticket 48360 - Refactor the delete agreement function - Ticket 48361 - Expand 389ds monitoring capabilities - Ticket 48246 - Adding license/copyright to lib389 files - Ticket 48340 - Add basic monitor support to lib389 https://fedorahosted.org/389/ticket/48340 - Ticket 48353 - Add Replication REST support to lib389 - Ticket 47840 - Fix regression - Ticket 48343 - lib389 krb5 realm management https://fedorahosted.org/389/ticket/48343 - Ticket 47840 - fix lib389 to use sbin scripts https://fedorahosted.org/389/ticket/47840 - Ticket 48335 - Add SASL support to lib389 - Ticket 48329 - Fix case-senstive scyheam comparisions - Ticket 48303 - Fix lib389 broken tests - Ticket 48329 - add matching rule functions to schema module - Ticket 48324 - fix boolean capitalisation (one line) https://fedorahosted.org/389/ticket/48324 - Ticket 48321 - Improve is_a_dn check to prevent mistakes with lib389 auth https://fedorahosted.org/389/ticket/48321 - Ticket 48322 - Allow reindex function to reindex all attributes - Ticket 48319 - Fix ldap.LDAPError exception processing - Ticket 48318 - Do not delete a changelog while disabling a replication by suffix - Ticket 48308 - Add eq and ne to Entry to allow fast comparison https://fedorahosted.org/389/ticket/48308 - Ticket 48303 - Fix lib389 broken tests - backend_test - Ticket 48309 - Fix lib389 lib imports - Ticket 48303 - Fix lib389 broken tests - agreement_test - Ticket 48303 - Fix lib389 broken tests - aci_parse_test - Ticket 48301 - add tox support - Ticket 48204 - update lib389 for python3 - Ticket 48273 - Improve valgrind functions - Ticket 48271 - Fix for self.prefix being none when SER_DEPLOYED_DIR is none https://fedorahosted.org/389/ticket/48271 - Ticket 48259 - Add aci parsing utilities to lib389 - Ticket 48252 - (lib389) adding get_bin_dir and dbscan - Ticket 48247 - Change the default user to ‘dirsrv’ - Ticket 47848 - Add new function to create ldif files - Ticket 48239 - Fix for prefix allocation of un-initialised dirsrv objects - Ticket 48237 - Add lib389 helper to enable and disable logging services. - Ticket 48236 - Add get effective rights helper to lib389 - Ticket 48238 - Add objectclass and attribute type query mechanisms - Ticket 48029 - Add missing replication related functions - Ticket 48028 - add valgrind wrapper for ns-slapd - Ticket 48028 - lib389 - add valgrind functions - Ticket 48022 - lib389 - Add all the server tasks - Ticket 48023 - create function to test replication between servers - Ticket 48020 - lib389 - need to reset args_instance with every DirSrv init - Ticket 48000 - Repl agmts need more time to stop - Ticket 48004 - Fix various issues - Ticket 48000 - replica agreement pause/resume should have a short sleep - Ticket 47990 - Add check for “.removed” instances when doing an upgrade - Ticket 47990 - Add “upgrade” function to lib389 - Ticket 47691 - using lib389 with RPMs - Ticket 47848 - Add support for setuptools. - Ticket 47855 - Add function to clear tmp directory - Ticket 47851 - Need to retrieve tmp directory path - Ticket 47845 - add stripcsn option to tombstone fixup task - Ticket 47851 - Add function to retrieve dirsrvtests data directory - Ticket 47845 - Add backup/restore/fixup tombstone tasks to lib389 - Ticket 47819 - Add the new precise tombstone purging config attribute - Ticket 47695 - Add plugins/tasks/Index - Ticket 47648 - lib389 - add schema classes, methods - Ticket 47671 - CI lib389: allow to open a DirSrv without having to create the instance - Ticket 47600 - Replica/Agreement/Changelog not conform to the design - Ticket 47652 - replica add fails: MT.list return a list not an entry - Ticket 47635 - MT/Backend/Suffix to be conform with the design - Ticket 47625 - CI lib389: DirSrv not conform to the design - Ticket 47595 - fail to detect/reinit already existing instance/backup - Ticket 47590 - CI tests: add/split functions around replication - Ticket 47584 - CI tests: add backup/restore of an instance - Ticket 47578 - CI tests: removal of ‘sudo’ and absolute path in lib389 - Ticket 47568 - Rename DSAdmin class - Ticket 47566 - Initial import of DSadmin into 389-test repos- Use openSUSE rpm group classifications. - Remove removal of .a files that do not exist to begin with (because of --disable-static). - Remove double removal of .la files. - Do not suppress errors from useradd.- update to 1.4.0.1 - Ticket 49038 - remove legacy replication - change cleanup script precedence - Ticket 49392 - memavailable not available - Ticket 49235 - pbkdf2 by default - Ticket 49279 - remove dsktune - Ticket 49372 - filter optimisation improvements for common queries - Ticket 49320 - Activating already active role returns error 16 - Ticket 49389 - unable to retrieve specific cosAttribute when subtree password policy is configured - Ticket 49092 - Add CI test for schema-reload - Ticket 49388 - repl-monitor - matches null string many times in regex - Ticket 49387 - pbkdf2 settings were too aggressive - Ticket 49385 - Fix coverity warnings - Ticket 49305 - Need to wrap atomic calls - Ticket 48973 - Indexing a ExactIA5Match attribute with a IgnoreIA5Match matching rule triggers a warning - Ticket 49378 - server init fails - Ticket 49305 - Need to wrap atomic calls - Ticket 49180 - add CI test - Ticket 49180 - errors log filled with attrlist_replace - attr_replace- drop 389-ds-reproducible.patch: applied upstream- move upgrade and restart code to postun- make sure we stop before uninstall - build require gdb for directory ownership- sync requires with fedora spec file - build with tcmalloc - add missing requires for things like bind-utils, db-utils - add requires to the devel package - split out the snmp agent - upgrade all databases on update- update to 1.4.0.0 - Ticket 49327 - Add CI test for password expiration controls - Ticket 48085 - CI tests - replication ruvstore - Ticket 49381 - Refactor numerous suite docstrings - Ticket 48085 - CI tests - replication cl5 - Ticket 49379 - Allowed sasl mapping requires restart - Ticket 49327 - password expired control not sent during grace logins - Ticket 49380 - Add CI test - Ticket 83 - Fix create_test.py imports - Ticket 49381 - Add docstrings to ds_logs, gssapi_repl, betxn - Ticket 49380 - Crash when adding invalid replication agreement - Ticket 48081 - CI test - password - Ticket 49295 - Fix CI tests - Ticket 49295 - Fix CI test for account policy - Ticket 49373 - remove unused header file - changes from 1.3.7.4 - Ticket 49371 - Cleanup update script - Ticket 48831 - Autotune dncache with entry cache. - Ticket 49312 - pwdhash -D used default hash algo - Ticket 49043 - make replication conflicts transparent to clients - Ticket 49371 - Fix rpm build - Ticket 49371 - Template dse.ldif did not contain all needed plugins - Ticket 49295 - Fix CI Tests - Ticket 49050 - make objectclass ldapsubentry effective immediately - changes from 1.3.7.3 - Ticket 49354 - fix regression in total init due to mistake in range fetch - Ticket 49370 - local password policies should use the same defaults as the global policy - Ticket 48989 - Delete slow lib389 test - Ticket 49367 - missing braces in idsktune - Ticket 49364 - incorrect function declaration. - Ticket 49275 - fix tls auth regression - Ticket 49038 - Revise creation of cn=replication,cn=config - Ticket 49368 - Fix typo in log message - Ticket 48059 - Add docstrings to CLU tests - Ticket 47840 - Add docstrings to setup tests - Ticket 49348 - support perlless and wrapperless install- Remove unnecessary ldconfig calls- update to 1.3.7.2 - Ticket 49038 - Fix regression from legacy code cleanup - Ticket 49295 - Fix CI tests - Ticket 48067 - Add bugzilla tests for ds_logs - Ticket 49356 - mapping tree crash can occur during tot init - Ticket 49275 - fix compiler warns for gcc 7 - Ticket 49248 - Add a docstring to account locking test case - Ticket 49445 - remove dead code - Ticket 48081 - Add regression tests for pwpolicy - Ticket 48056 - Add docstrings to basic test suite - Ticket 49349 - global name ‘imap’ is not defined - Ticket 83 - lib389 - Fix tests and create_test.py - Ticket 48185 - Remove referint-logchanges attr from referint’s config - Ticket 48081 - Add regression tests for pwpolicy - Ticket 83 - lib389 - Replace topology agmt objects - Ticket 49331 - change autoscaling defaults - Ticket 49330 - Improve ndn cache performance. - Ticket 49347 - reproducable build numbers - Ticket 39344 - changelog ldif import fails - Ticket 49337 - Add regression tests for import tests - Ticket 49309 - syntax checking on referint’s delay attr - Ticket 49336 - SECURITY: Locked account provides different return code - Ticket 49332 - Event queue is not working - Ticket 49313 - Change the retrochangelog default cache size - Ticket 49329 - Descriptive error msg for USN cleanup task - Ticket 49328 - Cleanup source code - Ticket 49299 - Add normalized dn cache stats to dbmon.sh - Ticket 49290 - improve idl handling in complex searches - Ticket 49328 - Update clang-format config file - Ticket 49091 - remove usage of changelog semaphore - Ticket 49275 - shadow warnings for gcc7 - pass 1 - Ticket 49316 - fix missing not condition in clock cleanu - Ticket 49038 - Remove legacy replication - Ticket 49287 - v3 extend csnpl handling to multiple backends - Ticket 49310 - remove sds logging in debug builds - Ticket 49031 - Improve memberof with a cache of group parents - Ticket 49316 - Fix clock unsafety in DS - Ticket 48210 - Add IP addr and connid to monitor output - Ticket 49295 - Fix CI tests and compiler warnings - Ticket 49295 - Fix CI tests - Ticket 49305 - Improve atomic behaviours in 389-ds - Ticket 49298 - fix missing header - Ticket 49314 - Add untracked files to the .gitignore - Ticket 49303 - Fix error in CI test - Ticket 49302 - fix dirsrv importst due to lib389 change - Ticket 49303 - Add option to disable TLS client-initiated renegotiation - Ticket 49298 - force sync() on shutdown - Ticket 49306 - make -f rpm.mk rpms produces build without tcmalloc enabled - Ticket 49297 - improve search perf in bpt by removing a deref - Ticket 49284 - resolve crash in memberof when deleting attrs - Ticket 49290 - unindexed range searches don’t provide notes=U - Ticket 49301 - Add one logpipe test case - changes from 1.3.6.8 - Ticket 49356 - mapping tree crash can occur during tot init - changes from 1.3.6.7 - Ticket 49330 - Improve ndn cache performance - Ticket 49298 - fix missing header - Ticket 49298 - force sync() on shutdown - Ticket 49336 - SECURITY: Locked account provides different return code - Ticket 49334 - fix backup restore if changelog exists - Ticket 49313 - Change the retrochangelog default cache size - Fix error log format in add.c - Ticket 49287 - fix compiler warning for patch 49287 - Ticket 49287 - v3 extend csnpl handling to multiple backends - Ticket 49288 - RootDN Access wrong plugin path in template-dse.ldif.in - Ticket 49291 - slapi_search_internal_callback_pb may SIGSEV if related pblock has not operation set - Ticket 49008 - Fix MO plugin betxn test - Ticket 49227 - ldapsearch does not return the expected Error log level - Ticket 49028 - Add autotuning test suite - Ticket 49273 - bak2db doesn’t operate with dbversion - Ticket 49184 - adjust logging level in MO plugin - Ticket 49257 - only register modify callbacks - Ticket 49257 - Update CI script - Ticket 49008 - Adjust CI test for new memberOf behavior - Ticket 49273 - crash when DBVERSION is corrupt. - Ticket 49268 - master branch fails on big endian systems - Ticket 49241 - add symblic link location to db2bak.pl output - Ticket 49257 - Reject nsslapd-cachememsize & nsslapd-cachesize when nsslapd-cache-autosize is set - Ticket 48538 - Failed to delete old semaphore - Ticket 49231 - force EXTERNAL always - Ticket 49267 - autosize split of 0 results in dbcache of 0- Add 389-ds-reproducible.patch not use build date in build num to make build reproducible (boo#1047218)- Introduce acl as mandatory runtime dependency.- Rename patch 389-ds-base-1.3.2.11_init_fhs.patch -> 0001-init_fhs.patch - Fix faulty python module import with patch 0002-use-python2-for-selinux-detection.patch - Conduct a major clean-up of spec file to remove all outdated macros - Introduce extra schema files from OpenLDAP distribution with extra-schema.tgz and LICENSE.openldap- update to 1.3.6.6 - Ticket 49157 - fix error in ds-logpipe.py - Ticket 48864 - remove config.h from spal header. - Ticket 48681 - logconv.pl - Fix SASL Bind stats and rework report format - Ticket 49261 - Fix script usage and man pages - Ticket 49238 - AddressSanitizer: heap-use-after-free in libreplication - Ticket 48864 - Fix FreeIPA build - Ticket 49257 - Reject dbcachesize updates while auto cache sizing is enabled - Ticket 49249 - cos_cache is erroneously logging schema checking failure - Ticket 49258 - Allow nsslapd-cache-autosize to be modified while the server is running - Ticket 49247 - resolve build issues on debian - Ticket 49246 - ns-slapd crashes in role cache creation - Ticket 49157 - ds-logpipe.py crashes for non-existing users - Ticket 49241 - Update man page and usage for db2bak.pl - Ticket 49075 - Adjust logging severity levels - Ticket 47662 - db2index not properly evaluating arguments - Ticket 48989 - fix perf counters - changes from 1.3.6.5 - Ticket 49231 - fix sasl mech handling - Ticket 49233 - Fix crash in persistent search - Ticket 49230 - slapi_register_plugin creates config entry where it should not - Ticket 49135 - PBKDF2 should determine rounds at startup - Ticket 49236 - Fix CI Tests - Ticket 48310 - entry distribution should be case insensitive - Ticket 49224 - without –prefix, $prefixdir would be NONE in defaults. - drop 9563d299.patch: included upstream- added 9563d299.patch to fix building slapi-nis and freeipa- Do not suppress errors from user/group creation. Add some safety quoting here and there.- update to 1.3.6.4 - Ticket 49228 - Fix SSE4.2 detection. - Ticket 49229 - Correct issues in latest commits - Ticket 49226 - Memory leak in ldap-agent-bin - Ticket 49214 - Implement htree concept - Ticket 49119 - Cleanup configure.ac options and defines - Ticket 49097 - whitespace fixes for pblock change - Ticket 49097 - Pblock get/set cleanup - Ticket 49222 - Resolve various test issues on rawhide - Issue 48978 - Fix the emergency logging functions severity levels - Issue 49227 - ldapsearch for nsslapd-errorlog-level returns incorrect values - Ticket 49041 - nss won’t start if sql db type set - Ticket 49223 - Fix sds queue locking - Issue 49204 - Fix 32bit arch build failures - Issue 49204 - Need to update function declaration - Ticket 49204 - Fix lower bounds on import autosize + On small VM, autotune breaks the access of the suffixes - Issue 49221 - During an upgrade the provided localhost name is ignored - Issue 49220 - Remote crash via crafted LDAP messages (SECURITY FIX) - Ticket 49184 - Overflow in memberof - Ticket 48050 - Add account policy tests to plugins test suite - Ticket 49207 - Supply docker POC build for DS. - Issue 47662 - CLI args get removed - Issue 49210 - Fix regression when checking is password min age should be checked - Ticket 48864 - Add cgroup memory limit detection to 389-ds - Issue 48085 - Expand the repl acceptance test suite - Ticket 49209 - Hang due to omitted replica lock release - Ticket 48864 - Cleanup memory detection before we add cgroup support - Ticket 48864 - Cleanup up broken format macros and imports - Ticket 49153 - Remove vacuum lock on transaction cleanup - Ticket 49200 - provide minimal dse.ldif for python installer - Issue 49205 - Fix logconv.pl man page - Issue 49177 - Fix pkg-config file - Issue 49035 - dbmon.sh shows pages-in-use that exceeds the cache size - Ticket 48432 - Linux capabilities on ns-slapd - Ticket 49196 - Autotune generates crit messages - Ticket 49194 - Lower default ioblock timeout - Ticket 49193 - gcc7 warning fixes - Issue 49039 - password min age should be ignored if password needs to be reset - Ticket 48989 - Re-implement lock counter - Issue 49192 - Deleting suffix can hang server - Issue 49156 - Modify token :assert: to :expectedresults: - Ticket 48989 - missing return in counter - Ticket 48989 - Improve counter overflow fix - Ticket 49190 - Upgrade lfds to 7.1.1 - Ticket 49187 - Fix attribute definition - Ticket 49185 - Fix memleak in compute init- update to 1.3.6.3 This release contains security and bug fixes and a few enhancements. - Issue 49177 - rpm would not create valid pkgconfig files(pt2) - Issue 49186 - Fix NS to improve shutdown relability - Issue 49174 - nunc-stans can not use negative timeout - Issue 49076 - To debug DB_DEADLOCK condition, allow to reset DB_TXN_NOWAIT flag on txn_begin - Issue 49188 - retrocl can crash server at shutdown - Issue 47840 - Add setup_ds test suite - Fix srvcore version dependancy - Issue 48989 - Overflow in counters and monitor - Issue 49095 - targetattr wildcard evaluation is incorrectly case sensitive - Issue 49177 - rpm would not create valid pkgconfig files - Issue 49176 - Remove tcmalloc restriction from s390x - Issue 49157 - ds-logpipe.py crashes for non-existing users - Issue 49065 - dbmon.sh fails if you have nsslapd-require-secure-binds enabled - Issue 49095 - Fix double-free in _cl5NewDBFile() error path - Issue 49169 - Fix covscan errors(regression) - Issue 49172 - Fix test schema files - Issue 49171 - Nunc Stans incorrectly reports a timeout - Issue 49169 - Fix covscan errors - Issue 49164 - Change NS to acq-rel semantics for atomics - Issue 49154 - Nunc Stans stress should assert it has 95% success rate - Issue 49165 - pw_verify did not handle external auth - Issue 49062 - Reset agmt update staus and total init - Issue 49151 - Remove defunct selinux policy - add BR for autoconf, autotool, libtool as upstream doesn't ship a prebuilt configure anymore - import BR from nunc-stans as it is intree now: libtevent-devel libtalloc-devel libevent-devel - added BR for doxygen to build doxygen - enable auto-dn-suffix feature- fix build on factory: libsystemd-* libs got merged into libsystemd.- update to 1.3.5.15 - bz1358565 - Clear and unsalted password types are vulnerable to timing attack (SECURITY FIX) - Ticket 49016 - (un)register/migration/remove may fail if there is no suffix on ‘userRoot’ backend - Ticket 48328 - Add missing dependency - Ticket 49009 - args debug logging must be more restrictive - Ticket 49014 - ns-accountstatus.pl shows wrong status for accounts inactivated by Account policy plugin - Ticket 47703 - remove search limit for aci group evaluation - Ticket 48909 - Replication stops working in FIPS mode - changes in 1.3.5.14 - Ticket 48992 - Total init may fail if the pushed schema is rejected - Ticket 48832 - Fix CI test suite for password min age - Ticket 48983 - Configure and Makefile.in from new default paths work. - Ticket 48983 - Configure and Makefile.in from new default paths work. - Ticket 48983 - generate install path info from autotools scripts - Ticket 48944 - on a read only replica invalid state info can accumulate - Ticket 48766 - use a consumer maxcsn only as anchor if supplier is more advanced - Ticket 48921 - CI Replication stress tests have limits set too low - Ticket 48969 - nsslapd-auditfaillog always has an explicit path - Ticket 48957 - Update repl-monitor to handle new status messages - Ticket 48832 - Fix CI tests - Ticket 48975 - Disabling CLEAR password storage scheme will crash server when setting a password - Ticket 48369 - Add CI test suite - Ticket 48970 - Serverside sorting crashes the server - Ticket 48972 - remove old pwp code that adds/removes ACIs - Ticket 48957 - set proper update status to replication agreement in case of failure - Ticket 48950 - Add systemd warning to the LD_PRELOAD example in /etc/sysconfig/dirsrv - provide backend dir in suffix template - Ticket 48953 - Skip labelling and unlabelling ports during the test - Ticket 48967 - Add CI test and refactor test suite - Ticket 48967 - passwordMinAge attribute doesn’t limit the minimum age of the password - Fix jenkins warnings about unused vars - Ticket 48402 - v3 allow plugins to detect a restore or import - Ticket #48969 - nsslapd-auditfaillog always has an explicit path - Ticket 48964 - cleanAllRUV changelog purging incorrectly processes all backends - Ticket 48965 - Fix building rpms using rpm.mk - Ticket 48965 - Fix generation of the pre-release version - Bugzilla 1368956 - man page of ns-accountstatus.pl shows redundant entries for -p port option - Ticket 48960 - Crash in import_wait_for_space_in_fifo(). - Ticket 48832 - Fix more CI test failures - Ticket 48958 - Audit fail log doesn’t work if audit log disabled. - Ticket 48956 - ns-accountstatus.pl showing “activated” user even if it is inactivated - Ticket 48954 - replication fails because anchorcsn cannot be found - Ticket 48832 - Fix CI tests failures from jenkins server - Ticket 48950 - Change example in /etc/sysconfig/dirsrv to use tcmalloc- New upstream release 1.3.4.14- update to 1.3.5.13 - CVE-2016-4992 389-ds-base: Information disclosure via repeated use of LDAP ADD operation, etc. - Ticket 47538 - Fix repl-monitor color and lag times - Ticket 47538 - repl-monitor.pl legend not properly sorted - Ticket 47538 - repl-monitor.pl not displaying correct color code for lag time - Ticket 47664 - Move CI test to the pr suite and refactor - Ticket 47824 - Remove CI test from tickets and add logging - Ticket 47911 - split out snmp agent into a subpackage - Ticket 47976 - Add fixed CI test case - Ticket 47982 - Fix log hr timestamps when invalid value is set in cn=config - Ticket 48109 - substring index with nssubstrbegin: 1 is not being used with filters like (attr=x*) - Ticket 48144 - Add /usr/sbin/status-dirsrv script to get the status of the directory server instance. - Ticket 48191 - Move CI test to the pr suite and refactor - Ticket 48234 - “matching rules” in ACI’s “bind rules not fully evaluated - Ticket 48234 - CI test: test case for ticket 48234 - Ticket 48275 - search returns no entry when OR filter component contains non readable attribute - Ticket 48326 - Move CI test to config test suite and refactor - Ticket 48336 - Missing semanage dependency - Ticket 48336 - setup-ds should detect if port is already defined - Ticket 48346 - ldaputil code cleanup - Ticket 48346 - log too verbose when re-acquiring expired ticket - Ticket 48354 - Review of default ACI in the directory server - Ticket 48363 - CI test - add test suite - Ticket 48366 - proxyauth does not work bound as directory manager - Ticket 48404 - libslapd owned by libs and devel - Ticket 48449 - Import readNSState from richm’s repo - Ticket 48449 - Import readNSState.py from RichM’s repo - Ticket 48450 - Add prestart work around for systemd ask password - Ticket 48450 - Autotools components for ds_systemd_ask_password_acl - Ticket 48617 - Coverity fixes - Ticket 48636 - Fix config validation check - Ticket 48636 - Improve replication convergence - Ticket 48637 - DN cache is not always updated when ADD operation fails - Ticket 48743 - If a cipher is disabled do not attempt to look it up - Ticket 48745 - Matching Rule caseExactIA5Match indexes incorrectly values with upper cases - Ticket 48745 - Matching Rule caseExactIA5Match indexes incorrectly values with upper cases - Ticket 48747 - dirsrv service fails to start when nsslapd-listenhost is configured - Ticket 48752 - Page result search should return empty cookie if there is no returned entry - Ticket 48752 - Add CI test - Ticket 48754 - ldclt should support -H - Ticket 48755 - moving an entry could make the online init fail - Ticket 48755 - CI test: test case for ticket 48755 - Ticket 48766 - Replication changelog can incorrectly skip over updates - Ticket 48767 - flow control in replication also blocks receiving results - Ticket 48795 - Make various improvements to create_test.py - Ticket 48799 - Test cases for objectClass values being dropped. - Ticket 48815 - ns-accountstatus.pl - fix DN normalization - Ticket 48832 - Fix timing and localhost issues - Ticket 48832 - CI tests - Ticket 48833 - 389 showing inconsistent values for shadowMax and shadowWarning in 1.3.5.1 - Ticket 48834 - Fix jenkins: discared qualifier on auditlog.c - Ticket 48834 - Modifier’s name is not recorded in the audit log with modrdn and moddn operations - Ticket 48844 - Regression introduced in matching rules by DS 48746 - Ticket 48846 - 32 bit systems set low vmsize - Ticket 48846 - Older kernels do not expose memavailable - Ticket 48846 - Rlimit checks should detect RLIM_INFINITY - Ticket 48848 - modrdn deleteoldrdn can fail to find old attribute value, perhaps due to case folding - Ticket 48849 - Systemd introduced incompatible changes that breaks ds build - Ticket 48850 - Correct memory leaks in pwdhash-bin and ns-slapd - Ticket 48854 - Running db2index with no options breaks replication - Ticket 48855 - Add basic pwdPolicy tests - Ticket 48858 - Segfault changing nsslapd-rootpw - Ticket 48862 - At startup DES to AES password conversion causes timeout in start script - Ticket 48863 - remove check for vmsize from util_info_sys_pages - Ticket 48870 - Correct plugin execution order due to changes in exop - Ticket 48872 - Fix segfault and use after free in plugin shutdown - Ticket 48873 - Backend should accept the reduced cache allocation when issane == 1 - Ticket 48877 - Fixes for RPM spec with spectool - Ticket 48880 - adding pre/post extop ability - Ticket 48882 - server can hang in connection list processing - Ticket 48889 - ldclt - fix man page and usage info - Ticket 48891 - ns-slapd crashes during the shutdown after adding attribute with a matching rule - Ticket 48892 - Wrong result code display in audit-failure log - Ticket 48893 - cn=config should not have readable components to anonymous - Ticket 48895 - tests package should be noarch - Ticket 48898 - Crash during shutdown if nunc-stans is enabled - Ticket 48899 - Values of dbcachetries/dbcachehits in cn=monitor could overflow. - Ticket 48900 - Add connection perf stats to logconv.pl - Ticket 48902 - Strdup pwdstoragescheme name to prevent misbehaving plugins - Ticket 48904 - syncrepl search returning error 329; plugin sending a bad error code - Ticket 48905 - coverity defects - Ticket 48912 - ntUserNtPassword schema - Ticket 48914 - db2bak.pl task enters infinitive loop when bak fs is almost full - Ticket 48916 - DNA Threshold set to 0 causes SIGFPE - Ticket 48918 - Upgrade to 389-ds-base >= 1.3.5.5 doesn’t install 389-ds-base-snmp - Ticket 48919 - Compiler warnings while building 389-ds-base on RHEL7 - Ticket 48920 - Memory leak in pwdhash-bin - Ticket 48921 - Adding replication and reliability tests - Ticket 48922 - Fix crash when deleting backend while import is running - Ticket 48924 - Fixup tombstone task needs to set proper flag when updating tombstones - Ticket 48925 - slapd crash with SIGILL: Dsktune should detect lack of CMPXCHG16B - Ticket 48928 - log of page result cookie should log empty cookie with a different value than 0 - Ticket 48930 - Paged result search can hang the server - Ticket 48934 - remove-ds.pl deletes an instance even if wrong prefix was specified - Ticket 48935 - Update dirsrv.systemd file - Ticket 48936 - Duplicate collation entries - Ticket 48939 - nsslapd-workingdir is empty when ns-slapd is started by systemd - Ticket 48940 - DS logs have warning:ancestorid not indexed - Ticket 48943 - When fine-grained policy is applied, a sub-tree has a priority over a user while changing password - Ticket 48943 - Add CI Test for the password test suite- update to 1.3.5.4 - Ticket 48836 - replication session fails because of permission denied - Ticket 48837 - Replication: total init aborted - Ticket 48617 - Server ram checks work in isolation - Ticket 48220 - The “repl-monitor” web page does not display “year” in date. - Ticket 48829 - Add gssapi sasl replication bind test - Ticket 48497 - uncomment pytest from CI test - Ticket 48828 - db2ldif is not taking into account multiple suffixes or backends - Ticket 48818 - Fix case where return code is always -1 - Ticket 48826 - 52updateAESplugin.pl may fail on older versions of perl - Ticket 48825 - Configure make generate invalid makefile - changes from 1.3.5.3 - Ticket 47536 - Allow usage of OpenLDAP libraries that don’t use NSS for crypto - Ticket 47536 - CI test: added test cases for ticket 47536 - Ticket 47840 - default instance scripts if undefined. - Ticket 47888 - Add CI test - Ticket 47888 - DES to AES password conversion fails if a backend is empty - Ticket 47951 - Fix startpid from altering dev/null - Ticket 47968 - Disable journald logs by default - Ticket 47982 - HR Log timers, regression fix for subsystem logging - Ticket 48078 - CI test - paged_results - TET part - Ticket 48144 - Add /usr/sbin/status-dirsrv script to get the status of the directory server instance. - Ticket 48269 - ns-accountstatus status message improvement - Ticket 48342 - DNA: deadlock during DNA_EXTEND_EXOP_REQUEST_OID - Ticket 48342 - DNA Deadlock test cases - Ticket 48342 - Prevent transaction abort if a transaction has not begun - Ticket 48350 - Integrate ASAN into our rpm build process - Ticket 48374 - entry cache locks not released in error conditions - Ticket 48410 - 389-ds-base - Unable to remove / unregister a DS instance from admin server - Ticket 48447 - with-initddir should accept no - Ticket 48450 - Systemd password agent support - Ticket 48492 - heap corruption at schema replication. - Ticket 48597 - Deadlock when rebuilding the group of authorized replication managers - Ticket 48662 - db2index with no attribute args fail. - Ticket 48710 - auto-dn-suffix unrecognized option - Ticket 48769 - Fix white space in extendedop.c - Ticket 48769 - RFE: Be_txn extended operation plugin type - Ticket 48770 - Improve extended op plugin handling - Ticket 48775 - If nsSSL3 is on, even if SSL v3 is not really enabled, a confusing message is logged. - Ticket 48779 - Remove startpidfile check in start-dirsrv - Ticket 48781 - Vague error message: setup_ol_tls_conn - failed: unable to create new TLS context - Ticket 48782 - Make sure that when LDAP_OPT_X_TLS_NEWCTX is set, the value is set to zero. - Ticket 48783 - Fix ns-accountstatus.pl syntax error - Ticket 48784 - CI test: added test cases for ticket 48784 - Ticket 48784 - Make the SSL version set to the client library configurable. - Ticket 48798 - Enable DS to offer weaker DH params in NSS - Ticket 48799 - objectclass values could be dropped on the consumer - Ticket 48800 - Cleaning up error buffers - Ticket 48801 - ASAN errors during tests - Ticket 48802 - Compilation warnings from clang - Ticket 48808 - Add test case - Ticket 48808 - Paged results search returns the blank list of entries - Ticket 48813 - password history is not updated when an admin resets the password - Ticket 48815 - ns-accountstatus.sh does handle DN’s with single quotes - Ticket 48818 - In docker, no one can hear your process hang. - Ticket 48822 - (389-ds-base-1.3.5) Fixing coverity issues. - Ticket 48824 - Cleanup rpm.mk and 389 specfile - enable nunc-stans- should also define the username- fix building systemd stuff - create user and home directory for it- limit gcc_security to TW. it enables compiler options not supported on leap e.g.- enable more gcc security features - enable selinux - fix the systemd options to actually pass some variable and also set the tmpfiles path- update to 1.3.5.1 - Ticket 47982 - improve timestamp resolution in logs - Ticket 48759 - no plugin calls in tombstone purging - Ticket 48665 - Prevent sefault in ldbm_instance_modify_config_entry - Ticket 48757 - License tag does not match actual license of code - Ticket 48746 - Crash when indexing an attribute with a matching rule - Ticket 48497 - extended search without MR indexed attribute prevents later indexing with that MR - Ticket 48368 - Resolve the py.test conflicts with the create_test.py issue - Ticket 48748 - Fix memory_leaks test suite teardown failure - Ticket 48383 - import tasks with dynamic buffer sizes - Ticket 48420 - change severity of some messages related to "keep alive" entries - Ticket 48386 - Clean up dsktune code - Ticket 48537 - undefined reference to `abstraction_increment' - Ticket 48747 - dirsrv service fails to start when nsslapd-listenhost is configured - changes from 1.3.5.0 - Ticket 132 - Makefile.am must include header files and template scripts - Ticket 142 - [RFE] Default password syntax settings don't work with fine-grained policies - Ticket 548 - RFE: Allow AD password sync to update shadowLastChange - Ticket 47788 - Only check postop result if its a replication operation - Ticket 47840 - add configure option to disable instance specific scripts - Ticket 47968 - [RFE] Send logs to journald - Ticket 47977 - [RFE] Implement sd_notify mechanism - Ticket 48016 - search, matching rules and filter error "unsupported type 0xA9" - Ticket 48144 - Add /usr/sbin/status-dirsrv script to get the status of the directory server instance. - Ticket 48145 - RFE Add log file for rejected changes - Ticket 48147 - Unable to enable DS service for auto start - Ticket 48151 - Improve CleanAllRUV task logging - Ticket 48218 - cleanAllRUV - modify the existing "force" option to bypass the "replica online" checks - Ticket 48244 - No validation check for the value for nsslapd-db-locks. - Ticket 48257 - Fix coverity issues - 08/24/2015 - Ticket 48263 - allow plugins to detect tombstone operations - Ticket 48269 - RFE: need an easy way to detect locked accounts locked by inactivity. - Ticket 48270 - fail to index an attribute with a specific matching rule/48269 - Ticket 48280 - enable logging of internal ops in the audit log - Ticket 48285 - The dirsrv user/group should be created in rpm %pre, and ideally with fixed uid/gid - Ticket 48289 - 389-ds-base: ldclt-bin killed by SIGSEGV - Ticket 48290 - No man page entry for - option '-u' of dbgen.pl for adding group entries with uniquemembers - Ticket 48294 - Linked Attributes plug-in - won't update links after MODRDN operation - Ticket 48295 - Entry cache is not rolled back -- Linked Attributes plug-in - wrong behaviour when adding valid and broken links - Ticket 48311 - nunc-stans: Attempt to release connection that is not acquired - Ticket 48317 - SELinux port labeling retry attempts are excessive - Ticket 48326 - [RFE] it could be nice to have nsslapd-maxbersize default to bigger than 2Mb - Ticket 48350 - configure.ac add options for debbuging and security analysis / hardening. - Ticket 48351 - Fix buffer overflow error when reading url with len 0 - Ticket 48363 - Support for rfc3673 '+' to return operational attributes - Ticket 48369 - [RFE] response control for password age should be sent by default by RHDS - Ticket 48384 - Server startup should warn about values consuming too much ram - Ticket 48387 - ASAN invalid read in cos_cache.c - Ticket 48394 - lower password history minimum to 1 - Ticket 48395 - ASAN - Use after free in uiduniq 7bit.c - Ticket 48398 - Coverity defect 13352 - Resource leak in auditlog.c - Ticket 48400 - ldclt - segmentation fault error while binding - Ticket 48445 - keep alive entries can break replication - Ticket 48446 - logconv.pl displays negative operation speeds - Ticket 48566 - acl.c attrFilterArray maybe uninitialised. - Ticket 48662 - db2index with no attribute args fail.- Update to new upstream release 1.3.4.8 * Various bugs are fixed- Update to new upstream release 1.3.4.5 * Various bugs are fixed- Upgrade from 1.3.3.13 to 1.3.4.4 with accumulated bugfixes.- Update to new upstream release 1.3.3.13 - Removed 389-ds-1.3.3.11-CVE-2015-3230.patch (included upstream)- Update to new upstream release 1.3.3.11 - Added 389-ds-1.3.3.11-CVE-2015-3230.patch: nsSSL3Ciphers preference not enforced on server side [boo#934934] [CVE-2015-3230]- Update to new upstream release 1.3.3.10 * One important security bug was fixed: Bug 1216203 - CVE-2015-1854 389ds-base: access control bypass with modrdn- Simplify filelist- Move bin/ and sbin/ to /usr/lib/389-ds/bin resp. sbin/ - Removed conflict with atheme- Update to new upstream release 1.3.3.9 * Several bugs are fixed including 2 security bugs Bug 1199675 - CVE-2014-8112 CVE-2014-8105 389-ds-base: various flaws [fedora-all] Ticket 47431 - Duplicate values for the attribute nsslapd-pluginarg are not handled correctly Ticket 47451 - dynamic plugins - fix crash caused by invalid plugin config Ticket 47728 - compilation failed with ' incomplete struct/union/enum' if not set USE_POSIX_RWLOCKS Ticket 47742 - 64bit problem on big endian: auth method not supported Ticket 47801 - RHDS keeps on logging write_changelog_and_ruv: failed to update RUV for unknown Ticket 47828 - DNA scope: allow to exlude some subtrees Ticket 47836 - Do not return '0' as empty fallback value of nsds5replicalastupdatestart and nsds5replicalastupdatestart Ticket 47901 - After total init, nsds5replicaLastInitStatus can report an erroneous error status (like 'Referral') Ticket 47936 - Create a global lock to serialize write operations over several backends Ticket 47957 - Make ReplicaWaitForAsyncResults configurable Ticket 48001 - ns-activate.pl fails to activate account if it was disabled on AD Ticket 48003 - add template scripts Ticket 48003 - build "suite" framework Ticket 48005 - ns-slapd crash in shutdown phase Ticket 48021 - nsDS5ReplicaBindDNGroup checkinterval not working properly Ticket 48027 - revise the rootdn plugin configuration validation Ticket 48030 - spec file should run "systemctl stop" against each running instance instead of dirsrv.target Ticket 48048 - Fix coverity issues - 2015/2/24 Ticket 48048 - Fix coverity issues - 2015/3/1 Ticket 48109 - substring index with nssubstrbegin: 1 is not being used with filters like (attr=x*)- Conflicts with atheme -- /usr/sbin/dbverify- Update to new upstream release 1.3.3.5 * Several bugs are fixed.python-lib389python3-lib389sheep26 1668070076  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~1.4.4.19~git59.136fc84-150300.3.27.11.4.4.19~git59.136fc84-150300.3.27.11.4.4.19~git59.136fc84-150300.3.27.11.4.4.19~git59.136fc84-150300.3.27.11.4.4.19~git59.136fc84-150300.3.27.1    !!!!!!!!!!!! ""######""$$%%%%%%%%$$$&&''''''''''&&&&(((()*+,----dirsrvdscontainerlib389lib389-1.4.0.1-py3.6.egg-infoPKG-INFOSOURCES.txtdependency_links.txtrequires.txttop_level.txt__init__.py__pycache____init__.cpython-36.opt-1.pyc__init__.cpython-36.pyc_constants.cpython-36.opt-1.pyc_constants.cpython-36.pyc_controls.cpython-36.opt-1.pyc_controls.cpython-36.pyc_entry.cpython-36.opt-1.pyc_entry.cpython-36.pyc_ldifconn.cpython-36.opt-1.pyc_ldifconn.cpython-36.pyc_mapped_object.cpython-36.opt-1.pyc_mapped_object.cpython-36.pyc_mapped_object_lint.cpython-36.opt-1.pyc_mapped_object_lint.cpython-36.pyc_replication.cpython-36.opt-1.pyc_replication.cpython-36.pycaci.cpython-36.opt-1.pycaci.cpython-36.pycagreement.cpython-36.opt-1.pycagreement.cpython-36.pycbackend.cpython-36.opt-1.pycbackend.cpython-36.pycchaining.cpython-36.opt-1.pycchaining.cpython-36.pycconfig.cpython-36.opt-1.pycconfig.cpython-36.pycconflicts.cpython-36.opt-1.pycconflicts.cpython-36.pyccos.cpython-36.opt-1.pyccos.cpython-36.pycdbgen.cpython-36.opt-1.pycdbgen.cpython-36.pycdirsrv_log.cpython-36.opt-1.pycdirsrv_log.cpython-36.pycds_instance.cpython-36.opt-1.pycds_instance.cpython-36.pycdseldif.cpython-36.opt-1.pycdseldif.cpython-36.pycencrypted_attributes.cpython-36.opt-1.pycencrypted_attributes.cpython-36.pycexceptions.cpython-36.opt-1.pycexceptions.cpython-36.pycextended_operations.cpython-36.opt-1.pycextended_operations.cpython-36.pycextensibleobject.cpython-36.opt-1.pycextensibleobject.cpython-36.pycindex.cpython-36.opt-1.pycindex.cpython-36.pycldap_objs.cpython-36.opt-1.pycldap_objs.cpython-36.pycldapi.cpython-36.opt-1.pycldapi.cpython-36.pycldclt.cpython-36.opt-1.pycldclt.cpython-36.pyclint.cpython-36.opt-1.pyclint.cpython-36.pycmappingTree.cpython-36.opt-1.pycmappingTree.cpython-36.pycmit_krb5.cpython-36.opt-1.pycmit_krb5.cpython-36.pycmonitor.cpython-36.opt-1.pycmonitor.cpython-36.pycnss_ssl.cpython-36.opt-1.pycnss_ssl.cpython-36.pycpasswd.cpython-36.opt-1.pycpasswd.cpython-36.pycpassword_plugins.cpython-36.opt-1.pycpassword_plugins.cpython-36.pycpaths.cpython-36.opt-1.pycpaths.cpython-36.pycplugins.cpython-36.opt-1.pycplugins.cpython-36.pycproperties.cpython-36.opt-1.pycproperties.cpython-36.pycpwpolicy.cpython-36.opt-1.pycpwpolicy.cpython-36.pycreferral.cpython-36.opt-1.pycreferral.cpython-36.pycreplica.cpython-36.opt-1.pycreplica.cpython-36.pycrepltools.cpython-36.opt-1.pycrepltools.cpython-36.pycrewriters.cpython-36.opt-1.pycrewriters.cpython-36.pycrootdse.cpython-36.opt-1.pycrootdse.cpython-36.pycsasl.cpython-36.opt-1.pycsasl.cpython-36.pycsaslmap.cpython-36.opt-1.pycsaslmap.cpython-36.pycschema.cpython-36.opt-1.pycschema.cpython-36.pycsuffix.cpython-36.opt-1.pycsuffix.cpython-36.pyctasks.cpython-36.opt-1.pyctasks.cpython-36.pyctombstone.cpython-36.opt-1.pyctombstone.cpython-36.pyctools.cpython-36.opt-1.pyctools.cpython-36.pyctopologies.cpython-36.opt-1.pyctopologies.cpython-36.pycutils.cpython-36.opt-1.pycutils.cpython-36.pyc_constants.py_controls.py_entry.py_ldifconn.py_mapped_object.py_mapped_object_lint.py_replication.pyaci.pyagreement.pybackend.pychaining.pycli_base__init__.py__pycache____init__.cpython-36.opt-1.pyc__init__.cpython-36.pycdsrc.cpython-36.opt-1.pycdsrc.cpython-36.pycdsrc.pycli_conf__init__.py__pycache____init__.cpython-36.opt-1.pyc__init__.cpython-36.pycbackend.cpython-36.opt-1.pycbackend.cpython-36.pycbackup.cpython-36.opt-1.pycbackup.cpython-36.pycchaining.cpython-36.opt-1.pycchaining.cpython-36.pycconfig.cpython-36.opt-1.pycconfig.cpython-36.pycconflicts.cpython-36.opt-1.pycconflicts.cpython-36.pycdirectory_manager.cpython-36.opt-1.pycdirectory_manager.cpython-36.pycmonitor.cpython-36.opt-1.pycmonitor.cpython-36.pycplugin.cpython-36.opt-1.pycplugin.cpython-36.pycpwpolicy.cpython-36.opt-1.pycpwpolicy.cpython-36.pycreplication.cpython-36.opt-1.pycreplication.cpython-36.pycsaslmappings.cpython-36.opt-1.pycsaslmappings.cpython-36.pycschema.cpython-36.opt-1.pycschema.cpython-36.pycsecurity.cpython-36.opt-1.pycsecurity.cpython-36.pycbackend.pybackup.pychaining.pyconfig.pyconflicts.pydirectory_manager.pymonitor.pyplugin.pyplugins__init__.py__pycache____init__.cpython-36.opt-1.pyc__init__.cpython-36.pycaccountpolicy.cpython-36.opt-1.pycaccountpolicy.cpython-36.pycattruniq.cpython-36.opt-1.pycattruniq.cpython-36.pycautomember.cpython-36.opt-1.pycautomember.cpython-36.pyccontentsync.cpython-36.opt-1.pyccontentsync.cpython-36.pycdna.cpython-36.opt-1.pycdna.cpython-36.pycentryuuid.cpython-36.opt-1.pycentryuuid.cpython-36.pyclinkedattr.cpython-36.opt-1.pyclinkedattr.cpython-36.pycmanagedentries.cpython-36.opt-1.pycmanagedentries.cpython-36.pycmemberof.cpython-36.opt-1.pycmemberof.cpython-36.pycpassthroughauth.cpython-36.opt-1.pycpassthroughauth.cpython-36.pycposix_winsync.cpython-36.opt-1.pycposix_winsync.cpython-36.pycreferint.cpython-36.opt-1.pycreferint.cpython-36.pycretrochangelog.cpython-36.opt-1.pycretrochangelog.cpython-36.pycrootdn_ac.cpython-36.opt-1.pycrootdn_ac.cpython-36.pycusn.cpython-36.opt-1.pycusn.cpython-36.pycaccountpolicy.pyattruniq.pyautomember.pycontentsync.pydna.pyentryuuid.pylinkedattr.pymanagedentries.pymemberof.pypassthroughauth.pyposix_winsync.pyreferint.pyretrochangelog.pyrootdn_ac.pyusn.pypwpolicy.pyreplication.pysaslmappings.pyschema.pysecurity.pycli_ctl__init__.py__pycache____init__.cpython-36.opt-1.pyc__init__.cpython-36.pyccockpit.cpython-36.opt-1.pyccockpit.cpython-36.pycdbgen.cpython-36.opt-1.pycdbgen.cpython-36.pycdbtasks.cpython-36.opt-1.pycdbtasks.cpython-36.pycdsrc.cpython-36.opt-1.pycdsrc.cpython-36.pychealth.cpython-36.opt-1.pychealth.cpython-36.pycinstance.cpython-36.opt-1.pycinstance.cpython-36.pycnsstate.cpython-36.opt-1.pycnsstate.cpython-36.pyctls.cpython-36.opt-1.pyctls.cpython-36.pyccockpit.pydbgen.pydbtasks.pydsrc.pyhealth.pyinstance.pynsstate.pytls.pycli_idm__init__.py__pycache____init__.cpython-36.opt-1.pyc__init__.cpython-36.pycaccount.cpython-36.opt-1.pycaccount.cpython-36.pycclient_config.cpython-36.opt-1.pycclient_config.cpython-36.pycgroup.cpython-36.opt-1.pycgroup.cpython-36.pycinitialise.cpython-36.opt-1.pycinitialise.cpython-36.pycorganizationalunit.cpython-36.opt-1.pycorganizationalunit.cpython-36.pycposixgroup.cpython-36.opt-1.pycposixgroup.cpython-36.pycrole.cpython-36.opt-1.pycrole.cpython-36.pycservice.cpython-36.opt-1.pycservice.cpython-36.pycuser.cpython-36.opt-1.pycuser.cpython-36.pycaccount.pyclient_config.pygroup.pyinitialise.pyorganizationalunit.pyposixgroup.pyrole.pyservice.pyuser.pyclitools__init__.py__pycache____init__.cpython-36.opt-1.pyc__init__.cpython-36.pycconfig.pyconfigurations__init__.py__pycache____init__.cpython-36.opt-1.pyc__init__.cpython-36.pycconfig.cpython-36.opt-1.pycconfig.cpython-36.pycconfig_001003006.cpython-36.opt-1.pycconfig_001003006.cpython-36.pycconfig_001004000.cpython-36.opt-1.pycconfig_001004000.cpython-36.pycconfig_001004002.cpython-36.opt-1.pycconfig_001004002.cpython-36.pycsample.cpython-36.opt-1.pycsample.cpython-36.pycconfig.pyconfig_001003006.pyconfig_001004000.pyconfig_001004002.pysample.pyconflicts.pycos.pydbgen.pydirsrv_log.pyds_instance.pydseldif.pyencrypted_attributes.pyexceptions.pyextended_operations.pyextensibleobject.pyidm__init__.py__pycache____init__.cpython-36.opt-1.pyc__init__.cpython-36.pycaccount.cpython-36.opt-1.pycaccount.cpython-36.pyccountry.cpython-36.opt-1.pyccountry.cpython-36.pycdirectorymanager.cpython-36.opt-1.pycdirectorymanager.cpython-36.pycdomain.cpython-36.opt-1.pycdomain.cpython-36.pycgroup.cpython-36.opt-1.pycgroup.cpython-36.pycipadomain.cpython-36.opt-1.pycipadomain.cpython-36.pycnscontainer.cpython-36.opt-1.pycnscontainer.cpython-36.pycorganization.cpython-36.opt-1.pycorganization.cpython-36.pycorganizationalrole.cpython-36.opt-1.pycorganizationalrole.cpython-36.pycorganizationalunit.cpython-36.opt-1.pycorganizationalunit.cpython-36.pycposixgroup.cpython-36.opt-1.pycposixgroup.cpython-36.pycrole.cpython-36.opt-1.pycrole.cpython-36.pycservices.cpython-36.opt-1.pycservices.cpython-36.pycuser.cpython-36.opt-1.pycuser.cpython-36.pycaccount.pycountry.pydirectorymanager.pydomain.pygroup.pyipadomain.pynscontainer.pyorganization.pyorganizationalrole.pyorganizationalunit.pyposixgroup.pyrole.pyservices.pyuser.pyindex.pyinstance__init__.py__pycache____init__.cpython-36.opt-1.pyc__init__.cpython-36.pycoptions.cpython-36.opt-1.pycoptions.cpython-36.pycremove.cpython-36.opt-1.pycremove.cpython-36.pycsetup.cpython-36.opt-1.pycsetup.cpython-36.pycoptions.pyremove.pysetup.pyldap_objs.pyldapi.pyldclt.pylint.pymappingTree.pymigrate__init__.py__pycache____init__.cpython-36.opt-1.pyc__init__.cpython-36.pycldif.cpython-36.opt-1.pycldif.cpython-36.pycplan.cpython-36.opt-1.pycplan.cpython-36.pycldif.pyopenldap__init__.py__pycache____init__.cpython-36.opt-1.pyc__init__.cpython-36.pycconfig.cpython-36.opt-1.pycconfig.cpython-36.pycschema.cpython-36.opt-1.pycschema.cpython-36.pycconfig.pyschema.pyplan.pymit_krb5.pymonitor.pynss_ssl.pypasswd.pypassword_plugins.pypaths.pyplugins.pyproperties.pypwpolicy.pyreferral.pyreplica.pyrepltools.pyrewriters.pyrootdse.pysasl.pysaslmap.pyschema.pysuffix.pytasks.pytests__init__.py__pycache____init__.cpython-36.opt-1.pyc__init__.cpython-36.pycaci_parse_test.cpython-36.opt-1.pycaci_parse_test.cpython-36.pycaci_test.cpython-36.opt-1.pycaci_test.cpython-36.pycagreement_test.cpython-36.opt-1.pycagreement_test.cpython-36.pycbackend_test.cpython-36.opt-1.pycbackend_test.cpython-36.pycconfig.cpython-36.opt-1.pycconfig.cpython-36.pycconfig_test.cpython-36.opt-1.pycconfig_test.cpython-36.pycconftest.cpython-36.opt-1.pycconftest.cpython-36.pycdereference_test.cpython-36.opt-1.pycdereference_test.cpython-36.pycdirsrv_log_test.cpython-36.opt-1.pycdirsrv_log_test.cpython-36.pycdirsrv_test.cpython-36.opt-1.pycdirsrv_test.cpython-36.pycdseldif_test.cpython-36.opt-1.pycdseldif_test.cpython-36.pyceffective_rights_test.cpython-36.opt-1.pyceffective_rights_test.cpython-36.pycentry_test.cpython-36.opt-1.pycentry_test.cpython-36.pychealthcheck_test.cpython-36.opt-1.pychealthcheck_test.cpython-36.pycindex_test.cpython-36.opt-1.pycindex_test.cpython-36.pycldclt_test.cpython-36.opt-1.pycldclt_test.cpython-36.pycmapped_object_lint_test.cpython-36.opt-1.pycmapped_object_lint_test.cpython-36.pycmapped_object_test.cpython-36.opt-1.pycmapped_object_test.cpython-36.pycmappingtree_test.cpython-36.opt-1.pycmappingtree_test.cpython-36.pycnss_ssl_test.cpython-36.opt-1.pycnss_ssl_test.cpython-36.pycpaths_test.cpython-36.opt-1.pycpaths_test.cpython-36.pycplugin_test.cpython-36.opt-1.pycplugin_test.cpython-36.pycreferral_test.cpython-36.opt-1.pycreferral_test.cpython-36.pycreplica_test.cpython-36.opt-1.pycreplica_test.cpython-36.pycschema_test.cpython-36.opt-1.pycschema_test.cpython-36.pycsuffix_test.cpython-36.opt-1.pycsuffix_test.cpython-36.pyctest_module_proxy.cpython-36.opt-1.pyctest_module_proxy.cpython-36.pyctls_external_test.cpython-36.opt-1.pyctls_external_test.cpython-36.pycutils_test.cpython-36.opt-1.pycutils_test.cpython-36.pycaci_parse_test.pyaci_test.pyagreement_test.pybackend_test.pycli__init__.py__pycache____init__.cpython-36.opt-1.pyc__init__.cpython-36.pycadm_instance_test.cpython-36.opt-1.pycadm_instance_test.cpython-36.pycconf_backend_test.cpython-36.opt-1.pycconf_backend_test.cpython-36.pycconf_backup_test.cpython-36.opt-1.pycconf_backup_test.cpython-36.pycconf_chaining_test.cpython-36.opt-1.pycconf_chaining_test.cpython-36.pycconf_conflicts_test.cpython-36.opt-1.pycconf_conflicts_test.cpython-36.pycconf_directory_manager_test.cpython-36.opt-1.pycconf_directory_manager_test.cpython-36.pycconf_plugin_test.cpython-36.opt-1.pycconf_plugin_test.cpython-36.pycconf_pwpolicy_test.cpython-36.opt-1.pycconf_pwpolicy_test.cpython-36.pycconf_schema_test.cpython-36.opt-1.pycconf_schema_test.cpython-36.pycctl_dbtasks_test.cpython-36.opt-1.pycctl_dbtasks_test.cpython-36.pycdsrc_test.cpython-36.opt-1.pycdsrc_test.cpython-36.pycidm_group_test.cpython-36.opt-1.pycidm_group_test.cpython-36.pycidm_user_modify_test.cpython-36.opt-1.pycidm_user_modify_test.cpython-36.pycidm_user_test.cpython-36.opt-1.pycidm_user_test.cpython-36.pycadm_instance_test.pyconf_backend_test.pyconf_backup_test.pyconf_chaining_test.pyconf_conflicts_test.pyconf_directory_manager_test.pyconf_plugin_test.pyconf_plugins__init__.py__pycache____init__.cpython-36.opt-1.pyc__init__.cpython-36.pycautomember_test.cpython-36.opt-1.pycautomember_test.cpython-36.pycmemberof_test.cpython-36.opt-1.pycmemberof_test.cpython-36.pycreferint_test.cpython-36.opt-1.pycreferint_test.cpython-36.pycrootdn_ac_test.cpython-36.opt-1.pycrootdn_ac_test.cpython-36.pycusn_test.cpython-36.opt-1.pycusn_test.cpython-36.pycautomember_test.pymemberof_test.pyreferint_test.pyrootdn_ac_test.pyusn_test.pyconf_pwpolicy_test.pyconf_schema_test.pyctl_dbtasks_test.pydsrc_test.pyidm_group_test.pyidm_user_modify_test.pyidm_user_test.pyconfig.pyconfig_test.pyconfigurations__init__.py__pycache____init__.cpython-36.opt-1.pyc__init__.cpython-36.pycconfig_001003006_test.cpython-36.opt-1.pycconfig_001003006_test.cpython-36.pycconfig_001004000_test.cpython-36.opt-1.pycconfig_001004000_test.cpython-36.pycconfig_001003006_test.pyconfig_001004000_test.pyconftest.pydereference_test.pydirsrv_log_test.pydirsrv_test.pydseldif_test.pyeffective_rights_test.pyentry_test.pyhealthcheck_test.pyidm__init__.py__pycache____init__.cpython-36.opt-1.pyc__init__.cpython-36.pycaccount_test.cpython-36.opt-1.pycaccount_test.cpython-36.pycservices_test.cpython-36.opt-1.pycservices_test.cpython-36.pycuser_and_group_test.cpython-36.opt-1.pycuser_and_group_test.cpython-36.pycaccount_test.pyservices_test.pyuser_and_group_test.pyindex_test.pyldclt_test.pymapped_object_lint_test.pymapped_object_test.pymappingtree_test.pynss_ssl_test.pypaths_test.pyplugin_test.pyplugins__init__.py__pycache____init__.cpython-36.opt-1.pyc__init__.cpython-36.pycmemberof_test.cpython-36.opt-1.pycmemberof_test.cpython-36.pycreferint_test.cpython-36.opt-1.pycreferint_test.cpython-36.pycusn_test.cpython-36.opt-1.pycusn_test.cpython-36.pycutils.cpython-36.opt-1.pycutils.cpython-36.pycmemberof_test.pyreferint_test.pyusn_test.pyutils.pyreferral_test.pyreplica_test.pyschema_test.pysuffix_test.pytest_module_proxy.pytls_external_test.pyutils_test.pytombstone.pytools.pytopologies.pyutils.pydsconfdscreatedsctldsidmlib389README.mdlib389LICENSEdsconf.8.gzdscreate.8.gzdsctl.8.gzdsidm.8.gz/usr/lib//usr/lib/dirsrv//usr/lib/python3.6/site-packages//usr/lib/python3.6/site-packages/lib389-1.4.0.1-py3.6.egg-info//usr/lib/python3.6/site-packages/lib389//usr/lib/python3.6/site-packages/lib389/__pycache__//usr/lib/python3.6/site-packages/lib389/cli_base//usr/lib/python3.6/site-packages/lib389/cli_base/__pycache__//usr/lib/python3.6/site-packages/lib389/cli_conf//usr/lib/python3.6/site-packages/lib389/cli_conf/__pycache__//usr/lib/python3.6/site-packages/lib389/cli_conf/plugins//usr/lib/python3.6/site-packages/lib389/cli_conf/plugins/__pycache__//usr/lib/python3.6/site-packages/lib389/cli_ctl//usr/lib/python3.6/site-packages/lib389/cli_ctl/__pycache__//usr/lib/python3.6/site-packages/lib389/cli_idm//usr/lib/python3.6/site-packages/lib389/cli_idm/__pycache__//usr/lib/python3.6/site-packages/lib389/clitools//usr/lib/python3.6/site-packages/lib389/clitools/__pycache__//usr/lib/python3.6/site-packages/lib389/configurations//usr/lib/python3.6/site-packages/lib389/configurations/__pycache__//usr/lib/python3.6/site-packages/lib389/idm//usr/lib/python3.6/site-packages/lib389/idm/__pycache__//usr/lib/python3.6/site-packages/lib389/instance//usr/lib/python3.6/site-packages/lib389/instance/__pycache__//usr/lib/python3.6/site-packages/lib389/migrate//usr/lib/python3.6/site-packages/lib389/migrate/__pycache__//usr/lib/python3.6/site-packages/lib389/migrate/openldap//usr/lib/python3.6/site-packages/lib389/migrate/openldap/__pycache__//usr/lib/python3.6/site-packages/lib389/tests//usr/lib/python3.6/site-packages/lib389/tests/__pycache__//usr/lib/python3.6/site-packages/lib389/tests/cli//usr/lib/python3.6/site-packages/lib389/tests/cli/__pycache__//usr/lib/python3.6/site-packages/lib389/tests/cli/conf_plugins//usr/lib/python3.6/site-packages/lib389/tests/cli/conf_plugins/__pycache__//usr/lib/python3.6/site-packages/lib389/tests/configurations//usr/lib/python3.6/site-packages/lib389/tests/configurations/__pycache__//usr/lib/python3.6/site-packages/lib389/tests/idm//usr/lib/python3.6/site-packages/lib389/tests/idm/__pycache__//usr/lib/python3.6/site-packages/lib389/tests/plugins//usr/lib/python3.6/site-packages/lib389/tests/plugins/__pycache__//usr/sbin//usr/share/doc/packages//usr/share/doc/packages/lib389//usr/share/licenses//usr/share/licenses/lib389//usr/share/man/man8/-fmessage-length=0 -grecord-gcc-switches -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection -gobs://build.suse.de/SUSE:Maintenance:26146/SUSE_SLE-15-SP3_Update/43ad49172a15b2176f9f6e2a5de56302-389-ds.SUSE_SLE-15-SP3_Updatedrpmxz5x86_64-suse-linux directoryPython script, ASCII text executableASCII textpython 3.6 byte-compiledemptyPython script, UTF-8 Unicode text executablePython script, ASCII text executable, with very long linesAlgol 68 source, ASCII texttroff or preprocessor input, ASCII text (gzip compressed data, max compression, from Unix)  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRo($יW瀀openldap2-clientpython3-policycoreutilspython3-selinuxutf-839a026037eec1fcba74f18e42a43c5cec59ee01b997134e29e8c251883989490?7zXZ !t/w]"k%ְxTK4Tq.6!m24r#:]i^"=uaqGE{cᅩmZodgͷxZZɾtCI]Ȋ/=/xF_wX,|j}9jQ+dK 9| Mꋵds]c67jɩ}>Rႅ)R Cޅ/Uhhb[pzܬ9?MK%T':PD-vsZK.MPQ*5Ƕ*.-brn(#n}Q/u(c٫B0:%]3L\\՞Mu[% =O,ѥۿ|'|.¡prsvG9d g-փZsWXFt. vp6fɃ\Ff R?: !-${2 P@=W%87έ'8u+ޥ,u2vhw8X$ze qY΀8Q! h9ڤ 9%JG_ʎl8tx61 ɨu^ GɃrO؞4Іy{Sg,pIʴr]0VTdM8PEw[ =9ɹANM7Anf+m/362ٮYiR ~GEZYO#Avk%4u`wd@C_ێ E5?CE9<_kȉnؚ;jؚ&KXtBiTeis הQmWW #t`wL8Yp!*y ι”}@n׾F`Izs?E2s&!>[^5 MGۗJtΙȹ Bb!fT.ZQW5#` B؇;ҰDzRncӸxa B>*2QR5G DWD.[uz& ky7zCQ9w&Ckƫa{a|l) ћ*VBܳ+ ~ҵ=duD&UGdZ1f+PN!S ~baЎ􍚀#ťroOSǞV0~,|ov ?fKYiՎGI}u0Yиk1v%WcLN,Ѓ|U !s1^O8T ۦ3LHmrLG0T1=%> ' E`-χ3~~ y0+3S/>Uٕ 횄$vB.@"Ҧx68K"w:|R(D}H"RjoGl Cr^!ڍE)NVä9͐qP-ZĮVF!JH--W%BFL>O'(z*:ѯi#y Wxw89Ia{(I4R^i!4NG V׀ 1 tԓd cę?՗ e:@F菠Pߏb}̓07nLMx 厼GCy`cWJ zoI 3cf- =@ G͹ F:*J!EgXp9dVSy)wΑQP ?7M37nqZU]멫Q,^<E I@rg[gf#RY~Wȴ#U=9=1 4X_CIlmCV*5Aㆻ2cleA'c .q fTr\VL)6Q3"CYn"z2We#1se ]MgB0_-é1${eH&\l^bCQ sݍw's¨ޫ .5f[~ѹ͝pJv:ժٕvw0Lfc"usYQoxZ/YdGrlu10!+{Pz"+*hRȰr tk2wI IAZ\>8ㅘR^5l \7M]ѯ% 8J%gj2@Ku#w +oԺV>C0ʿGM$Qqk-50*=<׶՗ǤxIZp Rh`JҔឋSv| M~(mb> =&.ێZ@] SZP`]9\!(5BFr_ÅaQPHkD(:4Ug*+P^wPS*J8*v7WӪ;_m¸xɓ\ ]f}$Km?9D8kCA=S'^]Qe^Խwk61g2*ޢ`Gu!tF{^Tu h_?"̢LXZg`jn G](ֿu%0uۼDu@0{V"\ CzH^gI;a2a8442)^*UnHjܺܝ"N' |­9Ihـ=cj+O]I̦0\JujTn!3|$w UP}^&'X+F+N Ŝ'^|縋Niv^)ju&R+A&TW)h76'dx)|`ki|-*Rdi#5[ee`@XrL/u{ƦTJ+.%$CV&DvǖQ3Aޯ(,*?o5H}%J o'bTm]WRxozr&i#TPA"mNQ RMbw,&}wsK-\B&p!rB $9OsFu?9v-FkR.%.$Gu ݚ[MRZ5-c6&knPվ%l)fa@,y XG؈jHҺ#%%8cPHkL7*%]i/YO*}&߲'Н!]`Kt(b5 .;ҤZSKlTOYy~"ͨ}%)gC!G)Nͫ ~Ь;Xi= i<e =T$<+(Dc.zWc6@Bql'?ـaid.wAUz5-VNWJ 3~?M#Uj 淹Eޭ,h;K>"-Svj4GD<_dKpl=zeRc>w@$,IIa6|Kr ϼxLK^KV#mJ'#Φ_\_<{ y - \tZSjυh0Fk sZ,nBߝr[P/9'kA@xs|)΋\dUb6{/Qsfő1Sxw9$5j:l,~%h', 56nPHqTGj^'(Mp( W𢐱WͮD5`iuWďZa"b)=[<Ӟm6<$fo63_Z%VVϠ9E۴JR%ukٝiKdG,4+ZYSyB\K$4We/%BaU~{?3ÿ2oړDWq};5`)*alg.<ְv \]J'Z{Yjs͚خP^} {_󼃮0ʐ^ \Iإs;SeGGZ3ͷN1p0ӷF1tҔ"O$MVž! ,l] H$?+ăH*B(llғ.s*[]V8z]- f4ɩL0翤=5}Ə+Bi=OǚqL"ĬKx h=*PbdjDR`,Iz`n|* Sr|"oæl2u#G"7? FbC|bರюI:1*7gEYg"0r{+1Xx8o)9ZXjE2O^NY ,)&a92YnK&57k}>o6tAAi.4*$m'%l pdу?!KBo6vT`t7 8NOoVJkH>%Fm3H[ Bp{i?H?aun]\~CVӢVt31b|%B](UQJD Dg&fQ:hWXTСk I̾޼S/̲ق:-^l9<- a2X t iOeNFDl͐]NǦEQլԤudщ J|%UG$+R~MTȄ]pnO,u w̫ZJ[^Qw2:(α.3B)CH3؟Hr+\Bq&KunC.A?|vYi?9s?,n񍋢U}FBъpT ږ,,`G"Nz7DY&˭J@Ox~ί ﬉iI pfğe/3cziıh8~n ?l?PX/|%ouѰIQ/g?DZ>$x1J8 ל pu43Q`Qm`kyJd-h-7Bc70 qsTlW3޳$tӜb˖?;*h옫  f~My "4S&"O (!95C&<+*.b8qa( !1%E{|poF -&;rz-AjyxN9Og $=^]ɣW\Y0]dZg5cB4Drnf|2+4U:܀pnq0eء,vûA5.➑ ˔G^~1̖Q*rk ֈpէMxƺPeR<Y7P}6߳Va Lpo^tk$U'RHyk@B,UgWt67t|\, W RtfVxTcح_]+2Yr~s (Xy0XvLѫiKVf%j$wW]7FX(nԷIuj>eŇFT2f('ML 03 ː|cu驗JE;t.8ǏC/B/M*$GE͒~\V]ħ!-.[w0V繌r2!'x` 5&iN)ؗ(Y)k^FvS̞Kfu] wD~۲EP=MH!Cvga^~ ##E q &zH$?Q =9´&p!$G}rK6FD4iZoevfyfC 8n ?]McvQ lGQ)Ȏ/eN5Ϲ 0yOy?,RL72if˰1T?}Z¥ = #>%uϬ*fhIڠ0&5 `3lZr:1:|%V&@:Nt9%kj/s Γ"+|$P5g4КvH龑rXL,*z8"zRz鉊@M;I~ߖp%RU_<0 *u &4&@IFH\EOrk*Dp;ҫZJJ{ΤGep&Е`Ti"[yƆ"Ѣ>bn-0 |Vi@(,!Dl6v~~ezuvC*@7NӉh4WgQZ㠙LJ[5 #\w=MhRLqM_pL,ͦ8pA%FN ui,梛B!&SIb?fBMN :gO♆|N}Zs|yQGv~@n;5‹˒sBV3^ȏur*YQ&Yf)^:۪i=mvRQ 1<.F:܆`*΍Z \V;'gȮɧ*%(%тgjN_Q(寭lbu]QB! BQ25aǦ"&|ykw$CyM q Gt9y̭&/:]nD3) L5am)d%?Id '7fCbȯ4ێ"3nn%m a/'B{~#-鱷)M(st,6rWG$iy_x~;HEu|Vc_&@Prl6H`^+-OPN)˔E~=nܫF<=~ ǟ>Jvmݢ5?Q RnpA 5/d^p4  {aA=?"UО9Fh4~Âm\(܏Ldb-߶ YQ*4U@ cn)#'&/M0|(Q@>D,^O-zm$edY?6((2>=t1ZL4LAt͞5i7ğJ(:}em#fNdJEm7% Ө.bEcQn] ]S麂tIP ^ADђ+i;]tm BHXgwX;tȓbB>k>sY]mkqkJ%iC;zkkCU(&!ld@W2r]W |(C 3Q̷`u4ٺc. B]":2uk"(s޴᭷ H>\'Ep&Η_L=(}p9AzɁAq,A!)@YitѣG I"zf(&}T #:͛!Vӛ1:LA,ҥۋײ ׂ$NYH U1K)NEe>Z?M6ž[_iV`HoZ['_5";3ԉoS)1y>]c8WaQ2W>ʷ݇ 9Ga m0Mj&;02j`\Ϙ&ޥm!IJQyudܣ2YaU!todoD N߶ay/T߉>P~mtӰƯ X_ OVR|2r1K1D&(IDo܆بzz(󬙕8츹/^Qg<$;Vv(X"JCvJbtq 0x4[FNA4Fe 48W ,4Z"/./Qw,Dvnx;9&|L$ύ*4^zM\1'`t1eXxNo΋89g: ^|{lU߽(6%xMdC!9耉P̐e%fV24j>4CzZH皗`~ c~wD|vl8KB~T(`7\C:2ʀ ?P {E\W7d3cB`ixvpA# @; vDۼG&Nؖ^  c 30'o-Xa]US>SPdˤSiI#3KtSzPC8cM_Q Z^xgu&\%U,nCAҺXC9:# ,Zl*ަW*a,?EWMȪu:Ėwc`zlh=GA΂/C%)er#FSJ 7bE}z$M*" g9;-U¿(յ1-po;3O/l߆jISjA>Mnŷ"0kd SˡO?Ϝ|%r{_"H-`_wY]&'a9Q^fa7*ήINrOZקG@)>b1c-l+(n9Յuз(>Rʲ}.$ɔ:b-Q !oHY{rMp9!쒒 ) k ?XGH`_̝v3M! n @v AK#a`&FA"[Bk-ڄJN8mk@+N:L,{..rIoEzso!F>0\Gh3<1GS>a X'i_ $Xz3 ҰS˜&J` 1yw}F79raQo.#0N@=tQJѡ[pV2E kak"W> &KT:n񕠧\W;~,^Üe^C z6nT Oي/jb;Vfe--K7.=O=O-D)lD>|z%Se>. - P!"ٹc+4X/LcɠQ3x7Fl&MlUq0?߯Xc\ kP?dMs0oϿWAO=5fHzm#B;jX~z"\r W&\&:hs\,I>$ᅂF<aNd /R6ntÝoE״@0nSw -7t50SVn $HTHyUi+GU\Vxr&j6L$18#:2YNiNHQ̮_qF~XEQLKJ=~…a\[ ~~ 6GCX=[?t rml乚g~ .iniVd{Y,=| Kj%|Lꗙozy#j QdK-QE-K?YW4KԳd;hFiYY8W\7&ڡ8o~A4>q9刐!571ҭDo%!y|Р;3wk9[OVZSh Xl,9 C7B/IRݶ΢߶Ro]Y'*3qFqM>;#u3 XL@@h>IqL? EHb}&Ǵas.N-A9StQ}uV"6"d8XF'Grm;iz3G2.Zk|ILKF ^CM?!*f>f\)6,ꔒp6IRs|~mRkx%%Ո m[ʑVLigJ*Kze"Ye8~nBAMLV/אT(Uy" Lj0;3)uuRK DuY T +7hY&y> {sK3aճGP<[[Clb& k A>E/|q lj;(#bstڶ oj׋ ~o &yc$NHD 87ԡ{Vgq+RZ夒dht vSѯ“H)imn 4wؐ"؉ RYN)\:^4Fb  d0nJ);VR]Vwwն2 IڷuS3ŞVUhQ@c,Gqe=pbh] TsKuûw8,ѐ,-|{;TQńCJ#d12DOBx}POA{; 4LsWNNkxRC*ۅoxQ1ǖ3ht "`#: ,(pGGo{sc˩K;LAV y(|Ao6&2{0gH> ,U@+(Nl$s5?xN1f :)Vi7g/{!3AUmAF`*vad&" @]xQ; b^<@ YIwg[,e)%EHYRW%pVVgc][ζs,W-Ѷ&&E289D'qW׋+}S!jQNs_dŠ˳}b ^0~쫡8 83<>.7DZ7ԓ%Y(.`ij 8`bMն^VTv !h"; ׵{$wJ:U;fg/*J3>ˏ*x* iwN{l=DV-ul?JɡաrMѱ&|2J!04لNDZy͹Ir6 J{bV6v 7P0U K5Zp@zOq\\"D=_vuRC]HUS_ e:ijb,4Hl2-n8۔P<ܟ|t[֩Ϻe>ZHwE)hLbkjnS PCZƏ2|+H9+$HJOE@7NUtOc5F+4*enİ-)NѿgH›7odЀ pY4P Ipw;u;d5X:L|e\ut#v?B }V'c%NJ.7ξ @~d_5;~{ԋjc|hA:8$ ' 3_e$XnX;pHiSughoPDXs}"sV^A^B@"KS`.M!KlggJMQ7Fp/q9绁f_7[f_޼>(x: #ʽ nI ~D58Cȳ8/;*/Qz`fS\mKٶ:xlwl<\~D^,݆GlRsOwź7ahSnjX0 )gq؍VjDvIw1t:>v65^>/jCwekqqBwejY~!!_SA6JKŘYNiXh/H7!ǚoEz9aAXCj?c]r%yiϐϴ|pR dzH-:9N2vλU'wKEzV"Ki/d"˃voy" . ij%]}4;?Q7+Blދq<%Xuı9ϯ` -بu\8&7 ݰcXС,W!9,.wF`/IH(ΈH8N5q3b,@߳>M>R\ghEK*e}RS[u!vBv RӆO~A[JNhĐ9%o0}t- 82T\ ۋ-ͭwT0BU{jIՃ뎴> =q4+W91]~ct?O3D5+q!,-: pn"K Z+E&cNY}?b_F?\N *1M isӂ˦ZkUDxb4LIMb>$x Q=aܿ7V4/wI^-t.$rBQgش}^qt!d׮WC^[kF̕ڼzӉIJU4asGIԈ7^dn%\PԛA9fpG9L'Pq1_7< 'ɺp1E<~r<ǠԆPpLי ėA>V\V@Y&[Q7r)\)gZ} ! lEL^ٸ8bB j**:PpWN\ sgNGnM-MEcf֦Pl@07TO>AOE`͊vjm*FQ,,Cc[s՟Cm j\֍YPւHG 絪26Q_xΏQ97#o?ۤ%C6 JQ@_aV~tgظ =bzT7=!ҭ󴘐43$ȠY_rV2-X`iyLRXîxM,|+Rӧfq5n2^~o"ZGƽ'Ѧ9  8r\sF+7.}m Ȃ]ƴUTC ,WWp'ѷ4j̒#`?a3o@~冢rMGSm?ЃыO:uojߴ#&h 6tmgKd`C8dzoN5AYX\70CtJ:F Hfm8ޅik|\E͉/E` aźUva_,;ьudUD j?wz[8;SqٲiV{ow\2?i\ȇm;zR\y8+ݓT%diR$j\j!::Q+S3TZ%jK[|Vsgņ^xe$kf2Jqo5q*jO2ܦ)%FflHz.s rIюbwT:BDi`'I3-~ ̀$`v>_S7uB$ ɄB06+a*@bufje 5BygQې4eyh[bC,4DW9Z3yiKGg"5I(m#r̚qQDeKtU3dJ0|=,uBwb*34gSF9Fxh6/sǩ )hȉf&H^AAWf=ߏ و4, g'L5gܒU'-"2T`~rYB>9nZH> }(9f>+$pev1_os)I.wn}Wnd%|2.7@9)nCa`O:&D<M, A@phe?\gsN{+RwZ ŝa[= f s9e3;Z)ޓS{u]=Os1 b[eO"'3WH+]a*>&Q4F:d(yրf 36s{1^?V\O#~\s`\'#ؓj\8?F%8#vd#-I.@8 5دosL˅àkLBOGRr _{w70e+ 6K_2SdЎ~1IZ޶]؆C4Fax5Ã%>F2"[$p/2 ,2靈Cg2_sPcV`%T$ S8!%X- k闹 ¿l u7`UJ3}a 5<\a:xK@* aK=6_]ɌoI݂VtlV콧R)\8uA/, 瞷7 arZ7y.n^h/ ͚w[).z6[,M; nap70ʃ]$N|L9`R6݌V!i,$7"gP09V,|Q-Q',q!6]k6JnEs%6F)elBMiH"u`@!17ߞ\>h4Vdy/\|e1|8 ztּ{ˠ)m&kSq"4~d\@}f ֔Z&f\7]w97;wF!:[?W+ێt|F(rզQq{r,3@rՀ+C:zp)́?L*v_nlه::͙M떭`֒ŠE:|:4<ƮCv}n?kYC{h.֮5Y!=}(߁?J>4w|{/@pSoYZ򯡍4i'iVM`vU|<҃&8c`M`sqrH%=w}jUZt J|',Cfn \'z l,XS l zs*%5K򄴖@SK I,HT4?2o$sћތ0#P:f`9ec@F~ny"ikX2m uh롑/ijdEF;.E끏ƿ r5IK4L&O)Ɉ#(}]i3ԺHm9&_مS.[vn 0?x˘{ 2rtvGt_G߀CcUL=Qlg ҽ6h^0ŠVEo 9>&wL gCuijS'G5m)OxUN1 Mk )aZzx+~Ɖ[98k3)a+=+Qr,La^zWڱ Hгr$uoQ(j|olg,^-ל4q0[<F_BI̓V4ǣ|v1dTWB4)bA{p͎m0Lbyqg(R>"x`˟.ۧw e)ߙWpUj;)T.yoKZ.:J*X" R[֢ޙ`w!MC_mWI}9AØa< $Cg@kta亴f;>h_%Pnur=E泟V}.Ħ5[uMp?\27K*k,3ڒ6g5;E+P|#TK : P=7ıZB:+ԣGOyR_jO>AH0 VXP 4>W+l4YgylȮЈJ·\ʍUJ0rXis if4J~վ:{aX/P=4sHs% 8؆GeSQVSPrJS];`$|NZU ڛ"K7/e%F2^\d =}r5[0"qh{q=pwLijZX9Eisib<aB\ w 6Pӟ<6S 6,ye@$ 9A3H35NqCt.U"s9fc@K x[:GfΊPjIl!jei/a GWk4_!C 'wºj\ 2W!mLk]䄕xjʋ,Ts-ω,qe\r_}:@.Ԅ|@EyZA p#MŚMi*f6 (3؂o㏈:BPF Bgf! Y!~NmNGhgwD.WRJkOeT紞-dMB%òbirLs)a۶S.Ϙ<5 WcyOs4J:X{NZ7o?P YڰG` 35eq:Ȃ<[e49=8nkXPiz$ۗMv:sfL3񏕟7wƵM@*kpGvɌڲ#|c)-pN hc5|S\ :SM'Z&' L Q]rNw.ӛ'O~9i SD4$Vz L1[ܓ$3w7w%Ü9dZY-[oѝZ({I޼'hTل 8jU5wUZ(0֌'#3K/dWRLXkޒYTD0ٶ^"B_*M}U9z5<[ʌ$.RBֵqy鿽7jڑH"(8h33q^:dpʯ$D1h_Fqy_Jl%dݿ_PK ɺ O6%RַYӺvn'keG^y2VR@Qyb$QDn_#)("' EhA/=,w oHO.oN40 4 h49)b[G<ڢQ0ghZeͺR_CP[OJJbLE1G3mΒ݉2~=TYa1Jdٓd7a|s4|t 0H~ aM}X?w/'&`Fracc1x1zw `~gt2 \ǷĘOXP+VvJa:L8*SXCC8P+kypOF]"k#HS ɏW>$ITSy#SD:3嚶&˒z#Au 1%PQ6DŽ髰̷eAA J#bRXדDj}M(ACW,S KBsgGN!|2(Y"={Gٻld ;M:%U3%3POM(=?ZzwbNk޶jG&8yc}% =:>U)ilܟ4Amg v{D4G~XP09ZNQJRw(O|֙ ':XyQ_on_:E<[=K-(ʢ 9PyMS@*rn]̚AǟPRk\<ܭnm}?~co59 )N_j-X1JIJr_a-&` 3.$St1h;Uj."rA0­"" ,b>l*#͆[ef_y~`twjJlKw?a\lH>I$iಾEr **ϸmXz耪7.- GtQ&K/ɗ(@r,tc/MV\95;Bs=R>c_'`1;nL„'*3U\%=Pt= Y<0Ս. ܐPz_ҚmlZ2)=H%J%@۽0ZKtuu0 gXnף5RJI-?1LJiW|kqHN;ce+]m`TP|^3>j|J/o4Պ L`Uu+@ <8e.Gy ;{EߢraCƼ5a<5 jb|/h!2_W1e 3c]dIzU|gZktk\(1ZRzD9V[6Pռ}tG!bCSs P1mWd}X]~C @$N!0)P䞱[i`ʹ_Q޾F+hU_-j|ᛋȀ}\|6 %Sk(ZxrO-;Ea ]8\*✖r9+XBm}eUTgŧ0G Ȟ i5G/uMX"2idxqG|y (B`H7InBP]OEDl6IƁ]ÇLܠvL%*Nm.wk6;&s g~< LiԘR׏\#ؑ^"]7&k.g\D xՑt䅇ZLIkoG |wDAK yes:8U2ɤ"L4,۸'r"d:npv{8'=/t? gv̆ uib5-KBs#wۈLw:0 `C?UX`H U>Z7s]6 L¶C 4mmho|׺o_}xk7sY[ Wu>, A~%s>nK>}TT'`})[N%R6_er?}\A'B[krZG;tLE;(OE4={[mQ4ſ:ߟILCu`G8ND!yQܕ+3$0'k]b;l7c%o!\9-ҵ H:v'g;˛ 3 K*. [56p~w_(L;Cp¿@'ZL11xJ$-;rNF%^٧&M.XjTuKh(?WQkAU_,hpƎ'<0`^Xc$UHMW*]r >uXĒ[{ 〓ݰDܻ:DE ğ:e5o-@}m {*x DCz(Bl؈7Ƥ,y"/VBEgEa<> Fl%wէ}w #%}`RGiH$AIO6 gTǻb*=Gv _I{㨕jhBB)U|l+ 79"4`3Hh0R6:7Xv~: \(AEcUk $SO#H+fϫ#L!o>-l 7 !Chơɝ5nm$B‚Ixe \Ƚddȭai/xёY ![sr:қ1: Uod'#RvJZK>{'?TƱRF/LW.꭭'Ѯ,쵻Ϯu|qoq -Hb|@AI`}VemŃڗ9 n%ؿÿȁE~ص,/ + nVR%Z i)~mnVX<ƠB"'ټ FlPyKObrϕзaxH}5j88Vm$֜+#mwG;w d&j)T$:zfJ!O d߭s*0i0JݢzÀ?J -y7Җ9l̵]D5c |e%m +*Ϳbtxi]%6j h7}W-h32  -W1ᠺf B:Gâ6RH?aU[GCחkҤjPvJ\ѲIIucR/WfSF Й?Bt/Z\ N%EMѓ> M2 nɈ6NX6HLkwiU]LS0#'asJ ^ּci0!!8&ϸ&w{] Ҳ̿r1~ ngi_87b*8ǎD|Ω/n-QH YE}h3mw=lAeDK/F7>ԦyR86]Џ*R\(w}5<~N50Z'UKt[’:n:9#= / M*PH5#Y|;,<@bu08߇2Ȏ`6⣠ =D&L CndU ?<'5;6JrK]4aVL*dzX= J,9NM!f ۪!}6=T6AR:jW9 `]_||qJT1[C<58S,W;ql 4Xt'n`|r@b{]yTT1p8,wA1{I8M=߳5Z YM$>yyC8~ʺcfD ̷[霋tx'TCYI'[3ukf( \ @>ebfq̲vkZgVv( ,DLRՇFI#?ǨMfaؾ.kіϡB jRM( WkΙ 䨁N=\VcB3,f[TgF$m/٧qT}DGzڽhbctxĨս_:MլÛwMo\kt\}N`%iAt.BՔ=2̍~P0ܯ33_F{{U݀ f50)^ !rN).xl\I=h) (d3Sf!*Gs=Fc?U%^?gN5*.t́Kv=e`jbl 8׻%BՎvvs[ㅕAOo}AMjOT6c::$O_eoI4m*{˘nA$%I EϦh8Shq5B9== fE9]mcr}6; ˊ2O#qJe5B`NY3kGtc]{<9qNw"|f#j#&S9VK[ v(9Z^OMJ/4Y Kf"uWj#DV,]ڀO~J |T' VXf.Ƨm:7!*+s[vӎ uDH> <\56OmG4ش~03AM+z[UšiB Z$ޝw!U, t@|1Vf5J[mzndNLOG!93$nLxKBLe;? NvK F9/ytfd@e NY>VZSfL:[d \eb͓]U%wUI^n=6Jf,m|k3z4gqhϜkjGtdN +KߗL-h KM'E%xdձl,&SӑE?d!|2uXxLOܡP2 uNFw;OϹV2~ `j€W_[Pգ^ )c0~u,DBRvҾ2zFL˯m$[-ŠZ(UhL1ek}\>A$ _v%|M#ѹB,tu߹غk:vu+gb`w,XM8Ʀ1*b˵t ޘpb**_zvzk[gl/[ڎČ8lEE) ߧO#P^QT6, m죗&al 5 }OA"x䴊ȱSٴqy~|6Pm+Kj!#Qy KxT{z,Auۛ608{/ظ ? ݞrPk7,d-9ImWxfo? 0ogVL IvPfhbD$A  ͋ Xҁq)럍}~AɍyF۰7k2fm!JȲ1bvF9y7&='Pd"bAL/ I#2V Mn.JNI>[͉e/YQ3#Wu佟u լpNd|} Pi0 |HaWc*z]o2v/36®a.vsӣ{!WdZ:\MӘJM6I"|]tke  $5&h tuQTE:Qgd2^1,l]^'8N)+lB 'E2ĩ̱CUf3"Njey~\hWW>n%GskRe;t|G󂋣k}!Vņhusux͢P@ `3]%Q%Tɬ$)r^os3d+):;r^{: NeNܥ(F< K;wU?S h`D>`=wI¢џ2uE* *w ~>k)pCM)DEop1y'+ (EQWcOYZP P)C\qQrXDԩ1R(G$CvT|%r9 80IgYqo`'3gCڲ92ʏ1s$oA #ۈ[ RrsXSۮNؿ<ҴvGT@ˠ#6DSkBQԆi͊q~/ptȷ\]z`r%BP̅r I4j#7:I뫸/#`} {8LA;-0< vZ]h**gfs>G5^lbHhF炸/7?=h s)&0( ?c~`3B5UK~Ur^1"J}BWGùWSXMV8P+|Vݤ3R b[RfnR.Dzj|_*GC"y<wr".MR̫HR߿X䌣-czBiKoTL9 ;rkN*9R$*)?c|P&_լސV,k,!Xbye'21;~ ?="Yǣư:XG%ʌHBf: be? H Q*k-J/9"NLPx^e\?"3n/C08?:.T~/[/*ixwUpr'[HD3 [>%rCuD g|=7:|mN+2V/] 'HP&f珛Vg+%xxekaU53>E3LC(U'FO9%MAԵQ:xYpR\^Z`pT29*Ƴ$nh49жbiBo[y"zQ[Nq!NӹQˌ&,][6,>Z_P1áМ.b^[+Z QF'1'Ff?~z2csC s˴XSIΫ!AU)r]$;NR~6]cݷ3[%U3g(bOowm5)4Տ_M&~ {6 Npc:UƧ+qj߸ xO5\maQt\ WyoJW`^Ņ#QWX^Wk/@찈<--].5pǺ%HhCr|ǵ6wqp6  ktrd: u2u*r7R7oaj@2/,t[.a ^ `j6n #0B3>%ʼnTou4 WPHGR#@PjP9$AMg` wGMB%`Z=|]N o^pt D-'s;$6 C w\c?cq%(My "Zt4>Opq߸}ʟP'j'YNpwTдu O`B.M،~@Ba7O?/De10J[؊KT?n wru4%Ǭh 6#J7}Ttw)*MB[`є@AKOcT@dQrE| @\fX#UqTxYJtw,Վu,yRBUE.f'B9?s9w#jS\ߖt"'-%iܖl{^-b= _KCqD($-|1ӭZsVi>i]6.Ǐ&zSݞfEc'/I@M 2,DwI+㼍BKekz?T]?{_AwtNvt(ڕ&’4vPSpҪV9=i(ӗD^\n}l/Wp)`()N+(J6v= lYS,кˑ7:Z:`ųꉷ[Nt~k^%A.#P_E饖8O6z UckYvY23r{ЌyMe{N\k(BY%a&NakG a,dh Ċ s$JG%IF%}1} hϬ¶R2|g bkqp 'ġQqoe7# Kٓ銆=Zb, nFtkRȐ>Go|؜`\{k*na" Wx[&hKl.`u‹`NtLڥt}ѥp Y?F'C9 )XEnS::f 55"rwQ^O~Zys('[]9,jX&_⨜+w׋%g , ,Ex;݁kd:9TR4#u8$UG!6"'.crܑ (ڙ7|ݽg58ww#&{xS&IL! 8C )D>Ȫ gr: (_4Q1!lsAQ3F66}I>eFL`4rx~aGֶ+4-cw$ͪѰW~mgf$O|k0v=DT`߂AK/5.I2j0q 8\ rLT,{,Āaw+I@S>Òl@ɓo jv4Ӆ6S. D*.`K.&s E͞KB v&dN#ƑzExZD諽hc{B#5.@ +ep-Wp'ӆn þJyylI~gޤQNCp K bA҈9FwbQ.I%}!6w#*TF7vVce:"'' ^n2WLs^}r"O}^^]Na'vN2cMݹgS/DZ] hwdu"6,Pm0~]7u=`G~솭t$SqӐg#JTjl(8sbK]!bFm(7ĸ}FԗI'[fBs}"ߐ S.S73Nl_BaEeӵzٖe \&Pͥ- NZkLU5.QFq'HN_R+9^|Oc;xm krhE|1~#u:42Nj$+T:3 un@GH".Sђa =6邼ft.jrmA#-Ӎ"-Oˇ! ۙښi^~:Rmlq-XVGp~)fg/F0|GZ؅$"ÚS۬|?;2D`c1ZټZcy"*)vH"[o `.R tH%YG= Tcl] woHe쒷ZT5CA،R?)#σy%'&&-N17,HIѪagLN?|,&iE6و^pμ[ ;b ew7jH0ڠ)CN;mtQM,I^? ,,DYf^ߢ4XK(0b%300x!տ]rЫ-tC a0~ukA5+[: U.6?yv.d~zoC 3ŭG3~u*E55\L'/Q_`m xwL^l7s19aImO*ZyM]Q ìɛx% ; ux"/\CKx3͌]StK=#nNy06; 9PʭQ3z_;Mnr,3jIt of}cY=LI~<>,$ _F'E;ы?, tip\c՜':J$j w#a eP.\%slTME\៦i0"7使h1oRӈBuM=7`k"02/28#,k]Raŏ*Nbn"n͜\CjG1 ktҖ:*J%/~n/|Vp> X(1ꎎ2*B MKF܉O e!& +6"t^)(ŷ 6"Jg/>gPz(coVZd|,(en4>9EQjɘ#ivuif"uW'vMnO*^4hwkn %<⸡J2,"6ɕ $!<˲'eQPoD y4H+W nO 5©\Qe{ {WxNci%RQKNL]+whfZpX_{96( Wo<b 'ˌ떄L]9+=w8x.Uq8bg[$2h ^qKX!,\:Vz\+w!q`U(exPeno~(adC"iD{#:%&͔JW&A.p)p\F%l!KJ6Nyo&\~{^+0j{TJQDxh)!J0{ m">:ȯVje/4 3` Ot9 )jV-w.$7E)p8[zy+}}"g+ fKF"2nW`LNtrxbrvӇnq*£cx|-:[h<-cVT`V<ٚFirkB0mj2BX;C3 F _v7ȶMVli/f&P<|5Qa\SQ>p믺SF̪.EGwj.YA??! (f= ?*gvڸY|4~M>~5P)y9 #";B3Pz8X.,|␓L Gko} Q+Ĝ>z4\Ku9Q-:aVGt]>6Dj28kd(=đ;1M0=~8X;<KXb'KfP U:PlbS~j14*ZS_mm;9G+¾)~PSK-@TpXhOVFI=.Z\w!)bZ`ƶN?ō2$htܨM3s=5#F/lPџsG>NN@P @[hta]X!=M@h0 oicHaRѕF#L@ pU ,ɨ\Ң"=FDIw[7dPK%'$aFdiD $LFpҾ@BEK~j,-~P5;Fb8Eqb(qpPT,E{ޯ.؞-vzZ^ 6WgF#йGdXOvđtFJ;!X["\,v:9Z"<ۣO\ã!_.ppMӘ?>.Wv~&j#% ^"لO[_?sѦ "ރoj@A{JUxiH7Jt gm-vdSgH e)5)`÷ $:ÆJ,?QH+J-^74!/BQ/ NP" 5K?Q0 a)Td{%ZGp1/+W5R.ѯi6Zϊ_H㩒Rxk2~CIgzԥ}ȂTPmY]CySh8[*VζUXɗ+@r5o0T6ok?n3v}A{I߽)^7%cQH7s!xTlbc!e1A[̺ Mg =6#ǥĖGa"hKئ\Gۺq /e߳AJ;lW['aRadG\?&-~ ̬CNazRU"@fdMWԥF@uU==짆H=z.Խ#NdO#k0 KslR# 7#@Ua!\2hi~c/Np .0YfjGlhwrLqݕZAy+Hj+}]Nfvp!TPg։sn;:L(@uslnLj$gX sq٣c0$]FLq"`{+aHKh ^$!k*\sO V'eBKC2KE~~wmn\E PnE8-%m5p-d\Tx6؀)77wy W;AdKs톩t_2Ȝ6绋my5t&JCw.-<7r8=dI蟏AY 3ĎQh)"|tͱzg&ېSglZ{uB@PKlp{PQeREuc~&)* J R5* F/zagLvY>Ϝ_W- MR uB/Y-b ,uOUtزqz}Yi {aSKYzJ9zjw@Aoàh'OJ $B[LHh*5hsq/Q{&zC$qo0OIxYe]ބGI .*DG;V|ؓ8)%uOma< -n[ w}]Y9^30nX 9Ҏ1\Q-5eh(\w\|'ڸ@c%$-z6x܍)ݶ& e:VJLEIpu>)]̜BCJM\< )iVVP˅`U%\x.-9UjӋD*b &j aXjPͿWjze௺74K]jePmX2=mSբ,C4Ɉ~xCb}]xAg|L|Ch-[JM B1TL;/ZlŬ|d lEAP#%+O,QEzFNluIMB ^Ŭ3y`cbjtz@/ Bu{8\R"af&b{8<c p?+a5tC 2IF0y+|X)e0ds( $30ȫjE|=m .kF$/r*D,ԠbSЃ~}TWsbTi 4\1J4HҽK|S29F:k44 ~ץd!nfAKgniO,kQ搨<Ky qM';XR<3^HvnV4HTPO9`Mh,˳*X톩Jq~ds6h[l @uNsCG&1S@2K$X\Xǂl(5rwe`a;%RݔQ 0(MVo:lڠƌL0X<4+1&3-`h71:.q޸t fZtƘ|bu͊xwVkTHbV%"K!u@A:5"q+݃uK@HB]-F_^c1KiҸ Ps6 UrѤdc"~S#4r3!N(-OV_q[Oߗ~s*L~8kKf0ƯqIN ׌5Mw-6X]@G_-|'po䴔 aEd I>o9=ζTc'M`i gE1?e1 p ɦ >ϱ@7b&9#Z>5%Z#$Ý̳$ksI2K !<czs4x*:X3s>#\߅U JWk 6Wq,wBsk΢a 8~4n]2amx4XIa)kU[GTH ##\Y>9RP3 %#𻍥/8 iV+qbs/) B"4˟ߌ ,|QD6yd+Wꯇa\mdMレU(EhYNC%Ϫ!,jf%ZzXn?D*#,hùz֍ujO050e<)zt'ݯߐ)搽@^NP?YN:r'L$H(-ءz㊂@˩i߳OP ½\M6ġeA#_s u~8CSUBG*$_X2~/˭dELkV2a.c1*?.{lMpB@nkKB kcD`K.wQ[vh/ޥQn٨;^ٌG=B㺚R+Cϛg'kI hQ(P UÑJ*e=}ݴdT=Xo hJ"-vO,=yiI)@O#aDީ~l7T/ 1BdصWW8_:ϗxc.{ m#$5=eJ݉=ݖy; XTu;IY\m-nq@ęxĤA8q;^6MRoDn E<}}Ko'cܟ&db`2>B2}(4웈?VWrv%17#Z_&/;(Xf}ѥHjWcE/w^o|(iFy,aKl73.~ Z;o>R@QFL22z-6bNND8`G$ypQfׅA' $%lcbۣ< 1*')X* dإ54)[>^6҂d0ӗEߝϭAGqK`nL Vz|AwWNhra{hLg>H yboۨ{[4 m#j‹)D~*8?1ծυ}dOA3+{"pt oN)G/78 ;m!H9bpc!qbHόՋtYI @ iB H/]pPNY%s<*M!kJ3L=2=n_gzI1:m)G;VpF~s8ɜUh?σU8Dܒ>Y5)J9&F7ccblԅE>Luq^tjBn_ >2C]u#.uRD;0u9D$!Iw%Ď˻-w Ps@sLw[o 0=I6r{Tem!b )i8UWG\Tz˟a24i_J358@l^ɶjU;i> QHHo|(n3cg+".KWs',3Or4X{c:ۃ#Ld@G]*\ zN~DeoGt~cA|Lc "D4'Ů^kԂ-ܬ_:.:l:,K;($2n` h AXjSC7뚁_!$[ý34̲PUܦ_^Ds#H65-?@ DTN,G+Dm #1{I`ՅIR-ݖWvzs% +H%o?v`-r 㽟}b,M9 Zyebpk/{z$ +au»e:B䧃4è gO~IADGeVI%lgpŁO=dAAQQ3?MX Z8|dS:LP?yљ{a*i?cPE(>.6YяXI8!Rs+ Ah 0y^Ry爨PkۗA99_T8j|̬(`a+^(ZL[n|.+[\oj@T.,D{_C*œd9Lzם jNyWQi'Ei ('Z:qC3 e#|Q1% e2зdo+x]u}Ri+v.KTVcJ-}RU`:XIm am,jK0er3>«#(`| |rq1?D$ l%ԦcGF#{7߇6{pJ߻ J,owY[eY];ESuNi^:dj s/Y5x4Ӷ)<>=~v0:N_ZwWbajҮi]|<-iyx/䅽E74LHm=ؒ3,|vJ%SѢ@G^1% &~id,1-WhOlv+7m;5:[$!7rWYj)uzC]8:yra3>|t YbWz.2"Buq8wb7 ;EߩP׋ͮ{L(k7vz@1Dړ&x-[ޘi˦V]Þj*)s.5qȬo @j[ݯa*[B%h19h޴&E4K&щ ""a2՜%Jl͢쓲ag<6VDSa0aV'! y 翨?@\R։ʫ.s,_ N@O!^)U !-9,ƹa c\lzն-3u *h;?$ÜrÂYqguKEC+GjYB>Ϫfeld$̞g; Hfh,Rn\1< WɺDlJTRRܝd`/Wsy&%84:8a2QV0'g @ɏXp֚m𲧰7O[ ʭ; S\o v%B֎&rʗC@)B 2; Tp՝iDlbIn^[]\bg]Y,YSl C>C~ tIO?,/su?hi- U@=R2 עWfSV&ɉs2`ɣuD =rp KGS_H[Ww>yhtw$ L@־$hI*I )Ћlnz ߡ\ 4jfЍ2G\hVqIZ( .!ϴ/TʱU\Ɲ?a |}|+w2°ɒ\ׯpglI!n耓֩ޏrpS.Deү}9b­,)ƥW .1ba,\]jpVxRS聸Pawu Srd&>@`cZ3r_.)S0E ؐV̎&U/ſ+ s\:WX+5Ov Ic~..ꢽr:BB T̏C5 WPzUAԔh6\@ C F`B[~2Z\B9.4~L FJf q,3/%+pCLg43[o[Qvo)6`kmN&*&`%(#ج?iF|>:}?(!%:| d)vd4n$ ސ}W9,8`sz&Cgе"uͤGA"wifE'eqZRaN.4ݡ_ ``7Bb/z0o !1no3P,J5soj+ҭI2vG4 ӢT]4~i`FLP9rrvZHҊcfiy\6 2 P'z^ėJO7,r)1+ ڌe=J&gO}2$Z(а8bQA-Y8/vCvpS_m+yKN$:s"b|#?ʲqn7Az٦`bSCe%QcdE q JpUJ>Y_qPэX,YŧʿUWT9/|_ek& %$x-KAȚg4tSW3 46y/[6^zg<弼ή4O&Aoϴ:y.֋ = ";7<(\)}ٔͭC@ۗđJjƙTwWmy;5`m2wWb,);ц.[ƝBN^Y}F9!{1{)}k譂Oߚa ˮ R.bRdQ- NSm{ ?5Цğvh 2lgJFT}a</^I W)`蜔^3-!Ybd^4|/X\Zˮe1~Q|tU3~EPsX~>S'eWāGva*~rp_Uy}g/LQ?6?X!)R636J?X+7͗v`sW:dn> 3czD@]c$ľd39j̡{%Ic2$I* xAҢI$x,JM8fR|SecI C1O8뿽n5.V5ArXٻ[>Q6鯜ZhOB?AɎXH(W&Y %!$".GJB1QCmm(.6d,6G5Qʿ0 َjQiSОа V`s?v=HR٪ ab`i _EEɢP?LǪ]cNf[fT7;5Zp,_H_׃2FagqqgT*d#PW:+Zfiw_[`A>p Py8h U74T)9ԄI Fy]5:VyUX;V*Â%FL y9N[gK*Ôezvzȁct9_K^ x~2SbineDr;*TEZ@ܩ̟7x"szs +v&H\q GJwm~y_t7賌jWHH@ f[C&>!a";mooYjC%ZtM9,Շf?3l\-n4/"ҸQT}) 2rj!"l_ia{%=~g(֏Gj$Tsʢ9'wj&p3v癟r%F${ܑ7jS6!gpRθj\(ǻ́R?'KE4 c?F@/֝apMdd2[#!2=bT?n*:v_6:>:L@at:ե;h͙h Ya ڷgLG(,ƻ1'o;M]}&1*dACj7G#p? /dv o/og1"~.f ?Ь}PQP & Ly3H\x$:U7@dD ~Cz6A`Io{S1BaqqjT7JTZ"fm@R"z"@RT0<2d!Zy% b˥!ArDÓhRs|GoBwʇ}ρ {ѕv? ŷ!/~CYQ]p3kҾpN)f;Bb7S ErCB’@"p3f/j0[-BC^).QICtdږOe?6Qymi 7wabxxϧoj2-# &&%mt__x`CU>dRɧXD^Uxw:?x@/g@m  ѹb,WP7ɿ{"}Pe1~X% >J(7}̺ZHP}3H:j!#/[^Pv̡*jx%9B7<.ϻ  7hkGc>K 5_})|s4Mp.Jو^A@5Do7i =)|0I8a1w {,˅lĈIXR̡%1 М62!袚Bd(Wtۊ ˗N2+.a~\.ܨqeJd1NH"DbZ.gao"uVgOU[P=W6\AjfPa%); M+cRS5FΖiY.'~/5NU)FKdA4(7zxZ"5VlhΥ%*`5djf#ᴍ.3%/0lÂS/\Yءñ{{&.B#BiRAo86;gV^55-lNʣIlC+0+Y"c P,x}`B`fKX+1Ao)I5mSۅNoݕftGIS"%8i/ۅMw+8Jx<3Nu|T"v}D$H܍rK_)8x ybr++;cfZے/hJK.UIOn/T Ӓtdߔ̆ h'a` !K; 4 yb _n: rJPDjfL'mZ|aJ>}rF'J8}k `IG-?q/QҞceA#ogZqHZ0'#-el "Utg.fwlC2++(vQ%]lո:,:>]18=­y* QW>CC˧XHw|Ъex(-N~$# \|^6[nTѷG=-gj(8NUe51 90'ԗ_K_aeҿRUMBfѹ-w$8ωx 9?wΡj q^Ϗds|5 ,"NăBp#_Ά'b~d%&аn{M(R~%gu9 0HPUe)]tw.qq>Bk6x4!ߠl)Po[l2gV a qB~[peU"c;2:l]N{Zb:,5!C {׎ - ?wy")0"qn< Xt]V|*^ A+Nݹg d|Fڿ]oϋ vrG =O#S.%Q豲VV9/" bK"k|U^Xjss)nN%t6h߹gգٱ. du~oEzEz~|1d1IE"=J  +vs0Lgn'nfenZK_L+ wāī c̡fbAtu5Mo3B >=`f ra6X.a wM 9vWA$R#~t\ 7q&EL' Ai:< kR~m KCYe!՝E R,gRƋClmփpJeg U8sߴ_yA;κhi:(#b3ed#,_o&g3M{W8G W]ƨNK]~`%_Yp"S;q1a6)mAⰉVؕQBkOD'IE*MpBQCZ#T"8`9OZɧ|fQf&TC>V캚Ih6Pl5Z\ۄӹv[Ȝ5{bm{XaA7.KD:"~C`~ONc1N]c$]JHX 84i&㩄Smv oHsҩx7^:5XѮj$q]x7.h1q&1+驈Թ(VOYHJs05 4GU[t;QvMұx+Ɗ\4jA"f؈x] B$2 S4y Ea/ojj[rQMCSnM~аڪK*f';OUyvCc@7mR _F?D_6/tG)ojfD䔮r^{.o攦V]R#ϭylF8=(>$7^IY*mن>*aɆl_"^7eh*q} M*_l~P6 =cM LqGG8Vjj? 2קU8.)u| 8Ij ~R 't?/[0?HKr}܌1x;G#h_Hmݤ9yBQ۶ Xٓ0*ŔҴ(Jz 閮vѼJI{~g;lt{՘)9+z/F-2i&@5QKG53l3j. ػwgx5,p┺9MkkoE;mqJިedӰ%rLZvjD /!Yg}P +o_Wq5fsTQu?TtG8I g:%:ot9A͛ ^ͱBu|"(z8) z v^]zӞo*=4IゃFeHI߷t1Ryɏ,ǭu#ؔbjӧb-#֪%q1*?v`b$ȜJ3|lؓ*}~ o|usSvG瓡0v̗"1ikz&k6/TZePE~zHT2Q?35r@POʛA )c.CYF>N8Ks -o`Zq: ſn/~I"A~NYQ@ŕ<6tI6_]J1哱fFYL޿F?"6ѿ~[T |X`|o1K 23 Y2</65@V1Y?%P\bm`L'qفhF"0Hخ&'6녓5S:'ku뽆ҳ5oY+N(V%~f]vO;Sڝխ6d6UjsPabΦ Yk(U>k jח;Q.hWr@j c)95G}j„w8x,vAts&x;0iUdV)W`"d*)D-yî6wpef1{RgjNV?C,([h6N)1,t ]?EPJaA(פ1V? T m56ˠ3&,76D$OxQM pGylc~E EuiGxPqc 5l+g mMow7 R](%/+J`Ɔw3q򱋌@DDsʵ#$x\(jJ*C;Kojmrw-Qpr'p0O` b(8iul1\}o6(⵶ž'JQ k|J`\R!=t#ZAB_Rpr8)p^*E *pu,)lZ[|ĵR*%ž "[T1B R3 T7bg=h=ġkhgDQnKҕ9i3q(;hWԛ'M=:!Mh;;ȵuŮ- G f|JPI ayC(]!NȎm߬aFϹOi Q]푛 /eX>ȍi#׽I68Q-bwFEl>L2fq*|@'.J]&(ez,`%)$DBJ'0jȎJf{15Q5Ymkr XoL4FOMwcyl@[ oX!T)>]U/MɠYZ~=62yTk#l0D0e \ -B{vH.)jr,Fmf/AfM^EJlH]k61ְEZZ,`֏x5K.Ӑe?7nUCyY~"_^/+.,7o%W`y%ԁ/]@ɾZZ?l++s'Кykps+蜊Au\R7" ^+nŎA|L7d )S̤*V))+hRzA n؂:&CJiz!J;06 j=SgA&>ˣ"@*WZ7py|V^LPa3M'T#54]:?f5 b֮#+U`2UH\7j&hg%;bӐ)("My0b'iYOŏ[)%^]F[;\]rwB^[J nx-z`Cؓ0S1 UgW۱R/t_D!]d8 !+r= ė"/01$k7{W5|Ey{U](!аYuY ԕύN $W~+Foے7}1΀.^Jo}xv] P .,'nf'8Xv MLԤļ+:jyv4ydɷf<ЭH:㾹;[g4cj;n$ }m:SKcI=Z0Q폋 G9hyڊ%~@@=c٥ GKdzK=1:{ۭRn3'QWQ _3?<63tjr*2L*%ז|G(14İeB_zm6 7r^G=[.muBD瑆ØV-˲ŭ }ƝHmkY*(ReJbR蒈38A®NQcG'qʌH7"6 J$U3I`?.r4o&A)+ _Aq;2H~t h׎~̕&J7dE bC]$6 =i 0bN~7HH0 ^!n|!hmFO=]PN %P33l&j$#;Z_|ߋ3;`4boR#r̚@zoo*S?y3Xa풱qnM)lVPhnğq Sn 䝘ao*m{*9n񗤨cf yrTN;zIaT#ߙ8vb)~(?dJ{3փamO*}'pzp}7 &8qAnRQa :*fjA#ˎbr@,排ojw şl}Os Gi lOY ؜1܎xf ;@ݩaa'`pIKΙ G&JA2dwd~4,0M즢8µԞlLIB\sku2 U.^Ÿ[NM;M ą6c5xhGVaiH/fS[w6GmC_'xEb7}''?^6M(Y/̪&ԎG=ovǘĉu*YD%z8*X"Im?3I:6؍n[ƾ@v!n;{6A05CAA kh{vx/^ZJ;HL庨ҟ[%h9]A\7\k8;vr>ٻ_?KGḑ"GV4h FtJup) ͶRM#vt -97_ujLB8(O #<)*J윏_B'xgfZ;mM 1{p\*``?ZhY7 .^LCA0w>,W@+2"bYMTf[3XE"2$ēŷWUP-4˜ti0S_e׬ŘA q3Ol^w]!A_a鿊 ^Ĝ3-* 5Id"=ڤ'O2x<[.nwVr-"g[ y ǔP?I@gv}^SmZ%]*JKW/6KGubj{^0+* x<"M-ĭ#jTĢq*WȏMGI$" 懔R8ϝ!D|t g uX)C9$nhWQMoPWlM'sR7J5՝Խ0S.ix R>sG!GC0 `vs2>p۬ bptJmO2s;?z)ԟ~r@KF]F#6 i>R0S +M/Qx Ǚ c0Aur0![=$doW'aV藪R^T:.:xxNf%ǬRɨb]p6@;Bd78E[Vi_J5;` e;'@O"l硦#6EU }']eZ1&k''_7i  &4IqQL;r`"LyWHEuIfw<]3W/oS-N%{l~}c X\Uc11Ne0 v2N0F3>chd06TG-Gv#tQe"}&_ny\Qo>^u <'dH $ءG!I΅N};}*=.'HSTKI}l)XAVޔveĽ ̽33*Ɖ%Mj%6]' 2H64"mc!®tˡq+@^mj\9ٮZY֙ Ƕu bifyķm:"הư/T}rYcO? *=MÓFЄ08Xv~ܩNlQSb;`Y4_ jb™^$}(A[l 2Mp[E"=<[ MK Bϣt")nQ\s":BO'zD.`M}vhw͏v_ȷx0&a%!||?nz %8fN&S   dž=Z f(HTWT[h(͡]LDN1iZ[Y'?_SuXG] ̐ 321:Yy\4 {h}O@1)̾݌T]';>7G~/?֙^XUi{(vk͊.N)f3r)y)7E9 b e{!P=[?Azs ݵV8k tV4r7bo/aP6Wз]82X|YwkvZPaʬH5v8< 0΂Ҕx_Ԁ09s!.=R#z08: \@*$oX91x -w$-̄v\ XS> r֨`iq2 SBN׾WIeuk/釢zE؂%YAvˆ5ʵEy0Ieg8@(ϫApRFx.J0} ea ,Xg-TRr/lܵ4UijW Xo_ȌzS%aJޣo>&36ٔZ){I,}1,v_MM%pqOb$3% \bWGn>FNJ01R={JDzX,[WpuP2CpVd"y6Wg ܸ{]`WuB_3r׊X*.*k mj?\Z C1s?RhCGq52_U3ʕ U'ȃSOhA>Fa}ix=ozg6]6։սғw!=zXXx?A)@qUgShl>lyLbh5T<i}391rjX)V&lT'3b59q p*[14T8&w̎x3&Ja gR!odM( :o.mfc2] Q3Xr(i~lt=sK-x_j@k;O $cQ fFiCOF$erSyz`Z?$+Bo5P7a&= 9^hw"sUԦsց7lh(8UO+eHQ:-JiS+|`R R|zhΊ:7 dU Hw%>:~&b/ +j8 \1ħ X.=)f-@1)W !5"tmڷ^׃;N`"2qn_hp]Wu|TM?ZeTS( WԂ #)i T`J!̮ 7U[D:نB2 [fkV8L=SǵJ{qo9LI yE?wd*U.MSdizA* R%jH5,LΚ&7*F~uh $50n糍2OA qkP>WbjvH g%|Ŏ cdIQOT ֲT$t ˶dc;'Ke8[h+k ٕ")~Ìܑ+\i.z[ޓy6Ki(g*bgb^;o""sO51nGe Ow@M:H;#M6ateNo.qu_R[?qp/^V #Vjc\\xAa+(2lYw_I|:V9[-D Ly&j~ձ/ SvjEC 2S-(ЯUKA, R 7xgX1QgT-%}%&vRߩr3enɨc78 9sWSa(F7JE%ܖuJ_ $fǏp]JQX X JZ9-3~X/=w / cLwcdߤፕMkH X0Ե)}GJ >@-.-jG0.'Z䶇m-oz|3ju*Z' `В-?Aӹ*@p!8']ۂ+q(;xvmLpqg..AX.Q&=3˖gV%t]WwsV6ZcWs`: RGik_0fu73W\g1k* Z;ڌn;րi][NxhAqr.]V\<˓:79n;ur*iJr!Ώs0u0p 6BYe(wb?'BhҴb]px!חᳵFZ_ kBf,x_/_ r^x;?+Xu4==mrZk[`b_? $SIy7x?O{zp!8sRw.MoJPV ^RZuL3"{4\o Ħw 4vi!L%r CdTfSMF=;g/ΐI[93nb'w>-cPxK꺮[^QwTݻeg":lG`ekD_{?'bR80]ui0-v=ϕԀ| cwIPƶhy*!rE tIe7;ܦK5ܯр܈{y-[-`Ԡ\qCd)8{[~&WaO~!毉 q'K33\p?B:}+0'.W"0cST:Ër5u[ EImO+&sAt&,x| <3*e`ԳRM;,e{8]i3Q}/ ʂIl\}Npժp)( E;ivТbq3Q%k:iSXA恍Vw7S`%C\q+"CH".(&2MΠ]nA}mdzuNM\*1*t†N'7pVb]r/b1ꢟ42,zm Z6YCI׾\z@P (nuG5me*dLkiU}^!~rM9y{ dO] ɩu:N3;vzYxoa6ol$HvG9_4_CЏ%" :[E"e" uxwޤ=2Tb\/vm_Kngo1j( e:Vu_m.7jH`AAF{6gbz v9uRu+({%wؕ66ɋQbVYiʼnObA" )ր#qz'|{iR::إ|V0LK԰?wㄛ "(X7/4e\t`ꢎH)}E^6N ZWcn?h_u7L;6׏tOhg_V-:S7^37DhT@m([dnBA@aZVZXV3哙`,Y:d JO# =bSﳋ/eolfK=cTU_QkH"3M>Lz:w[PaG*2rp2m7 ŬlUaL ɿY q5@f&H쿰%SC*}_Ȥvfa&Smq}'2`u֡&EyTM%^sa9.<עUۯC<nrk$y*u3VHnA3el=!$@\;\,i~4'DxpLx^40ֻfsQQ젥[ԆdpPTAx{[7[l!Q`TৎbjC M0i?QSZKKr+GX 38'fp2(BGfַфT2.+0lgr] %g(b3%;٣,Ye:N^~r|nzUy+)6JOpnҳ߃6X3; zQ]Sy&euvb>pϽ#Al9a|g>PqqrՔ]zi@BfpvppP| P9 *x^54^ZNNzZdD!3<<`eW_^Ya\3l>cC-l`ޱk̦V CP11Z2H| + @sy~l\$R f BFJ)<'@t9*2,"SQx?m&q 7F܄Axȵj(s'5餌RxILqRXmR1 mj_.*^;%S~G'w)ҁ›2 诈膃[g<8o!~7zYnTJs$w%nXyIo!oljٛ"z>%&rynb !B2 iS*AHG/ѴVjl/~TDkxqK'49~˺h:2рܞxuuoSqϮNrWtbDwo87\TC1&e?rgѕz_yBgNtED@25dY JUiPw6RDgL\qy)O{V{p_͘__f@K\2`rFdozLJFO$&|4h"v.mW'@)pbyFzIs&Q"j:pS"G[e6xQx1bop(M;?btm8wD36jf>PuNXX~KLLeyGͅ1ohIFSQn> g9 DqxW ye=G&d5NK<0&4} EZGt./oٹ֒sIV)Q+UxNO ~=K1Ptf>?[M3)xL8Fi3ʸY% ɼfgˈ٨mO<*gPiht}y8ܘ.].e#3P Ђ+c z)s|4uT7S#_8 pnɝXғLݼ'W~M̒ PSO;&=lU_#~?R@{Q7%\䓐=dr_porPB;cn \QWGVl zz` @iFyZBlV9<Ϧ3{P M=qξpbw $QW$'9$V0Tjs,׃_L%*KgKXu0WUE11&?Yn0OڅrSI !uEܤEPV_Å0%O{תُPxI`0BEEIf6ocMpuS\6WI{Z٪qz-7r7)5% ZPV'=&A5@r /X?LaFfTrM+jvIN9ZqI7G`_fm!BRoɴ54njҹm͵t= .#i܆n}3@f=v$kLvFsg[d "x'30< ͉7`- HL~n#1g>[W`[ Ȼi @6:ipQʠ)ܣ-Vq+34"p1,X_ / ^Co[s241ǧ4'J)WLiӓ<4y~C 2Ȥmij3nKg2;8_4I[aO&_gcc S"NN8 ֟^i 3!k/6l>8)EmGUID7:Z\G 5{C5֑&d4<=lK)т[#an`\78CI 9?l!YIٲ5ԙ+tHa9"dK:KCPQ0b]H;n(Ycy1Ė;a+SS"/e``W߸* $ex51k>Ca Te.u6tS׏q^ib9gޕ4NWkN՟29/ٜY|i}.?˽.NV)l|UF"ZRaʦeWwctZAxBq 5^c]=rTvyr~1)%[A%X$6ZaFY"-hT*0`߯÷fp)w:8O2 "E%嘓JYJ Tr Cx0|rBrG~Wމ/\5ӎCS'd˼:=\HHBZmӈ*l-x]۳x<COnDB>|ˑ~c2V11DŽ<w#r8=:D=HC`)X^EyP9tg4L"IߨYŜ& \=ﮟv9r?Z8y1"B"zyQa c7R~M8XTn5 \Rk[rz;EXSkHc{[W ݸCWMӒH~e@Ģy'sֿiX8;f} "|s䧚'}Uh󂧕2롫P;g}PlOf| $&/Ž'g4(5 cJS 쎴}ZAUj*?^p݋* d~7PoDK^ 0HPYŴ P>fUۙ*忩9GS1к_vtXasI/RHep|YNOyZL#7أL MP4Fl:%IT8NiNayf[zEp۩ Bct McG9(Uţl%uR[v_>W2o%h1Hc (\|q`zAq^hOA0|MfmB䯗dB/;0j Xͱn(xv_XBDa8"(SLN97DK)rd(hG((-SJ]Fb>۩!:Sh𯁲\[APVg| o۳$~;DU'8Ї5á.iv[Y]L(^R`_[ϠU@^nǵ^؂v xu0XG /&P+~@(y; /&p(PZ/s=U͚` ߷qJ ̑x)cQէ|V!ev (hB4գ<`VX% o'?Xpω )A9܍`;/!Hgj{֌wi⵲:]Is*uy@Ÿʧ1 LՄGWU矦sTkiƌKtn}`T{pO:޾!*IRwỄdϤT/1:n}̗y&1%oۦ aWGZ(g3R Ė:ozՃoG.0d]uTnQ5a|JI0eN=AH6 ee7#*808S\&-K̞S'yraQQ:^H^=}p4YCqqrMCgҝ)AWaΔO;Ca(0ER:?tiVNG8M\ ?hLzPLe>_b: Aa1=nFa &M0? 蠋2D]$ZWON]"X܏7zd5<W2fI,~49 Fz=Z_zYtQMJCVc0Ah bz^/stìgM\y̳VmRb=I,~dW[p>XD$1!u %̻r'K,Bڎ1LHsncaԩªm:cXa--m׃H e/wEjX; BLjz=oc.M͍(CV}I33&5:؍RN;:SS3tFsqׇW!PR8Xg򳋋9u ~$(ЫG̔*ed9: ΁O"Y~jaFkWۃ~ Gh}cT]V& ҇oC>w9BSaA6Tv`;U}KVw :>ٕs,#\] =I?I$o}]GPӝ6Ǒ!W_|Ԁ&(%ZD2(ع]Y #yIҦjÌF&i¸5b&̿u),N^EP^ǎQr7fDp=o{ \aR gn R6Vwzԥ@MmmX뮗⡁m&I΍?{^E?Y*V. OA% )a5pŃ[_18\VuY47:ߚ˥w8t!!V_MӓΓbE Őr#Ud2/zǶs ?zσS<>XCB D\QYڥsdtWQ5I͸.CwRLQ>#eBxjpN6lB!S2F; T&^00PgJMoC1ztAQnXwY0-`{:@Zihz"M 4Nq*iYT9" >vIV]5| Wie,0GC?ّF8s4L06X02rTd_3\S4g}`UJ$_S HySq\ q qŔPiX>Y`$Sgg'ח[+wvEU˷=%lqvS|!@ˮ] &lE.aX`.N3TPPzh7bR)|IrgJOlze QWv@BvpBK*ܧZ4ރ _䳟v3'?oӣJ˹JŪ^ 4#`9;Ľq$3 AY>E f,#FzF58qU"~AI_*QQ4ѦL>up2-IGb;3L#ul}~Q $,YK E"mº:8-\iĩ9mnfzvZ4ud*^NS2UwDl`(p偸/Dbuٟ?|:Oq& b S~3Ơ 0CtLwF<$8`]} !wFi$f>uҭVQ80qb!dMOB %YZՄ<\!lQVɩKV@ȥRWWϲ8c:zi]I.XG[pR=Nh}&Na]k`flcRWn99`n8(BuӺ,YMHB?l9 HיCQ )&jӾn"^Işww$|t붣Y&>D1ZůDBݮ(!'씭gVss+caiR')ڽPaW* x/n8]̚ КǠiFS8"PK_˦o3p { gl}jh9O g]~ 0_NUPRĦ7Rq<-є'8A_k bErYф:W~+M]G3A>sP}^[j&ri/8 帧`<uMK1N9a-^l؟7Dܗb2,w">hu@r Xk-J^EazU ' <V:Zp+O2K9bijM˚OXLC%1@&iPQwpdQUmewg`>%B, k7 kS9mE:`) ųW/Gܱ ބ* i`Մc:l=->V"j2avX2a'p0 [z`8{W2eq=agNdhG_'4Q~k7Ro4=H腘z4; Po%ȡ*p'zޛR<:ͪg&nZ aӛ#b)?XmW>H)=kQg+2?˾>+L{#EWJKT+S4hͯ8rXDm3z@*]18pO8+)dWHzqɏ]u^%?b?TJqh<-6gG?E9A-ndRᱮy %$7g>xB8w(#^ypO&;}l?pKWdq 1F{nήx/.SH|p+ml7*)Sh_PfX$+[}ʁuKH~geu.!)`P`X,x&mYbJa,4~MK̐|<:x6dΤQ֝߼:/ɾ$Lܮ; Q,B|a:b31 00UM6rgUZ2jW *aLǔ*@@ b٫΋NB'܏uˆ涙t@!-~" alU.4r|[ikqvS-(hn 7kEص!wOP0EtTajtV`!<$ޙ5[r 25tYL\mXIߥ U-֫Y!_ڍU /LΘYJg̝DȲc *ZD_&ֺR;.ñヰ|C<>S3\Tz1C_Y! W@ s=:YYEbsPƼSL#Anl}YޫoCJh+}"+svx,M:bw(O2P)}cgD┃^?QoAYrd?I^O}"c9۳\5}{wl;4Hg*ǀ%"ik̋\p,saOCހQFK^MW<=lc314߭3H(K2E!n.Y 6䨼UD20 ~ r" c'8gwHq"kLϾavX$˧9weS@,[+H66Tł?~Xøo .b@4p5-q~hKtW\F[b@J,&`ݲ6O-ezq3 E6?%8?i>#КtKK /b*r-VU NGG08iLeJEj?cEa*)AЮ8Kiw;_6\_5:욞C!mr! Wҋ wtIğdv u nxӱiKgP"yIWwWG.P(!6F RK򫨔^ҀaSR,*|:d!M^P5_ϯRpwx}SUn 1#7Ag^rPO CL_rCx nD %ڐ0 s >%FqS=s5`8" Ȁ/{3ӛr1xs&IJ k7`:U@K ]w>7p+emءR*>]Q&@.I{gBدPp{N{$x $9.>!ʤ3ȋ0&h]tF\42şvY|X$ >R2J?& ^E-Ul1a{ؙz_l2*/)"l&j4F 8$!-B"<O4Ց? q9fx)5[7 ]7c˽yoR~ځ]H>5{TJ:|&i_:^Wd [O:3YM.ǝ%L#X˧',뽶}İ#m ?E{Oؓ:wG;ALPvzcGP^;TcEϹ4y R>>Pe$& o⟓ SYT99'((c//[e,kJj70;)my\-(,j/ViV>2=e O7aV[vj1p!C0oc5!rg&M%>c(aB//ʕi8ll ȼnDwGU58jn*[89'kwj6-aKZ5B)9ܭ : nu7]Zi7=WXssaCY( TVj!X} Mނ8{uְ[(:(ec[2&߮P]aguSsƾ ֆֲ>M;w"ww,RXFp/.kxCϯU \8krAqUvú{v ³U@^`5mlP8rIo琠*_Wኃ1 b0㎕9l/6D2'iIFH^pF뱴ݍ%#S(~=DՕ> 53 z78p3 pH!ߋPt89$'#vK_h10@[j:@ˀőc&/0vXRlv䊡4%[F:qsWܛ\ %N"/IH9FG_Z(ΛC_R!H*ݮp/\ JUrܜA-l# %峲F66iEx]qZ]"r{9v>npy,|ֶ8̚IQyiΠMMҤ2cU%}&s>DET'S4Zգ/ҫyqά2x7qTh j/[S:Tij0SLRLEEφW`iHA4|e 1H+HhF;9OB~i^3S=nrԷғE5`FO!5ZWt?^P))o_Kz@sJ}ʯF7q[] \X'\vu<^kwltYk_aP< >)uE{(qu EJ,2O/۪5#Gp&.1:*h.'"g}/+.?_9kaILUGKzE^i @RT$$Ex~w],, !`ެ e,-$jOϔԝ v1!t :_')e)K[vEjZ\m^^锰nswxa>lɅ9x3<."P)jfdV+3~yQAd (p7G\(<:GR َ\nè݃B#pVۍX1@ _MCۣɓL>'c%^,kJ/weVZO:`ӼgJVWI@"Ű˂" .d?+/eX־'xP>evzlF&0\OMcgbS3^WMez$^ HBQr٤|fiKm9kІzٞ][CwXEzˣ,!P#`,Ts^㴣Jt>eGy f.ar+Հ;Fe0G{8gPYiF,rGu\gE>?ŠW^N7]Nq6 Zm6=X8^dCDl""wE 7kbZR5R^AM Wjy uc t]Je Ku? g(Dġqw"XX¬sg=mk/^O; Q?3~Z9^!$MU1~; P%AWE(_/7IWĩŸ0s]sF =?&oɎ\9I}gN)(~]0.TIrc~&(!b O<ӜoGM&Np,OQHJ8=P/=W0g(蛲G0JObTUowܵAc 9p P)A#e 5xOjKieyVEϋ|Lzaբ~0>m$(ZR(w~̷޶6 [x(ar{d$hѶy06N,th qOnALHҕIBoٝa N;u-e(co&P6dnZeí[anl} d(6r7.~o])XJ }+W]fgFua1smYyO :5fDJͳl hCP"D4{tvw8M(y1u޽U{mt6*fX^Ч &#d4skfj(baD`ܧuYS,,tf#ȶJN;Hstgyy,Yq룻j;(fћʀ1j 3쏠pF*%ʡfKOMr)Z|:}rfz `pd8N%zQB]")j_L g_jsG=P4@[ͳoMKvdE凸IscYJ 1'©:39 8]- :Nؘ޿n53*73b V\ ҳ̇HW*`i;WCYOyIQ f83)`ܜi8N$fY610ꃕ(H=xI0ye]eN/%M}vsA8>w|>ĉRrՉ70{X+GחU9]1~L v<8f5r4a-CB,M*W^aEP'Ɛ ɣCL_рQ:*tDs0`FGh* Cfrrd%HsSeRsZ7?BPp5:=M[Ch].LC05_ɞgyaQ̏; 9i j0E{zg*ↀ@2дm;1VAyօpFa j8m5dY{ @lmC+ 僟> 떵-3,<#_Rl5 y}h1}D,58W8q{,Qbt20f#tD M|,;MYsd`=1p$rCV&5SEUoطM~>)l!Hƙ352Ezם>iC4cl$yǞeV<wȉJxc 5L?:`K2<^!>d~w'ˡq`KoU><\dG05C6;*Y+xW$[ABGY,ZQϭ$l7%*8Ѿr6<>$蠮fFD;?+ nl._=iF.Aa>q ޅCcGЫ JBR6@*ʟrHzMk(xzʛB6]pAw.# (+HQq[>O>2R ɹ8kDf5;7MmgTpF&t8jxZVH0tlԦx" 3K( p)w͇L)Ԋ}ʜu.b{|R, @ϬW,Equl;z njQw{ Md[|/K/"*=Y3"ڮF?Xf31lQniVźQ.K $n, ǎe@J-(85ZSNzJU{-NO3QU>25;LY{XEÈ4+aJa ,Grz@HD1n J6at wm)y bgPb3$B'g͙6E %v z p V^Ba׻,`h?C^E[^ 0i.Bd -0(g##ߑBI'D{:;jz53~y- ZeJ÷̭56ki7 +$bײ`zԗ( 5u#'5=!&epСk'b$)U=WHڶt0po?p'l4;eUPaS[gg yH ";%aS~a{N6Oy-F/cGa1K,=(/G~9auUSf y]#Gb{U?B0xNߪUSz_k6WT0uY&NMtP"{UcYauvUQmrRKSĔ,Jh^ϣj۾+y ,D+T3Ӡrɦ4)pnJkְn"`B#jBER;?iKt3(H Y H|ƸSGԎ @٠t($J\l{|q?:,aK ])"s)戟c'Vc*ҍEf 5ZgB{S0w 5`2B8m,ay]t_O8Aj/#YT!p&e g=<Zwk3]wfV 1O*$09~p ~G a}LqwU xVK.9DUGn7?$|boc^T=BWM&w9\Qf`/lDQD8в1ی}g9sy&ayr]&pQ,˝7ViEfPnpP0-ϑgݎTJwuTɓՒ߼\YF=) 0Xs<%Q! _>~3M+&xR85heIRwӔ*ntڋqiSNzP lPOГ%>%ni1ZW2ѓ..JdgVކs$/k:A.73--l/fz2K'>ujH@|g_Hmlsqt'^t%m~wlI >y_8 AB%_|w!s?g B~jj ]B XK ]>xeQ Jo= rجnI$xF?׵Sq Y7FW&s7YcQ7L~%ga>!%wE2o 'ߞXՏ8{5XHj.7c[뗆W_!n|VI~XբN|--H-T^,ϨܛL58(ܳV,O+D}L9DJ*~7jWz\ļbdocUv4v~$* ilq\h(8^t:1?'z[@g 5y`71h1ƂrZm4KB@% :#WzUνpeJ俜m?_$u-<~r?e`m.* +/q9~g (wg8&%1h~Tw5ׄ~0 %- g>cۘԎ*Sc_$v[D`@cI`^m$R&I6dĮD7jٛr%.!\}5`q[Jw,AdRc:N^Q'*pqp fJ'|p#e%onyԨjU%b1)ю9vxc9?ck7ެ=>`eF$~l i~BUDj3<#,C9UJ&xWv2 wAI9}_UwkUɂo%8xJx,sIV08 5NytZB2D(PP"|Ɛ8쎑Jk)cez^D{qe0J(4X ,CuGc6)NW~*ꍡ;7tw]-9HŰ'Sٲ}\VWssҗuv:&߮' ^#̽HHS{V2q"`U!15D5N4BTDG+%j6lWy9M4e>?=I)N+o+b#0Z:{Eiۢ ,ς{Oze;"jP>Vxmb;|Q1vγcl >pbp計Qjkxtld\&յ6_O39G%lUV 9e"s &i!ޤ@U\q&&dCkp>8^//lI]rT[M:;d:gfbXfK6@:Ip`(Ǒ`5z*1EDG%{JN.Ʈ㎼>7@ Hp\Ť)ve c>{.WB:~i4Õ7YmFMD]Ot h`Bg@%DH0XWjXi͇U-ԴdzDdZCqL.:~SAz?fi|&˿R-F̀ylzʓ{1~ejb53+m" ^wn WG݆pv+~O:i-)|nA~)d2FeāG&N9~چ63QIDb! [ar)h3o $n9(HlG0nE*\aϳu+#2IavbL:?/56?2k!ePy ~ɺ%^?Z/rB"9?/= D#0deK P'ˑoUz9 Gi#7ɖSw>r$NQKJƱ 2zp(b$."~G?s{CgL;4T phtאHP L@3XFr{ :Q?D\)]P%̶%x4)Vb>P2WA_^g3lH5iV_lTvY1&" }\e֭՚ϫ3|KC>D_F(X ;lkNڕ; w~,*șd`{Z&?n~ŇVD"L?\7ޔ +Elۮ'8b,lϑnA}{JY ;}:jEs$RoC cݛ`TA ފ ydۺYKRn@CDdcr+x\R)q:]8<"+Kcy D }󩐯[F!l,SFb-b>0heEE$`KCdhkKEO:L?'NMw]Pч}aKJ+z"EEA$kVDK=S݌B c[>L55ԟIg,;s_.v4IL~itRjpPyrbUB M|׎%N^N A"5TS먝KœI!ԖR[o ´7Y8Z䥫R[rKz ^fR4a3VdD߸cRyt:+?1|$Pn4h OcGEM6O;u,LּQ IFlܲ>7&f†EEI #j\ِ6Ls%{j%VF$k#MVT# ȣІjt_H&#}^=y0 հ5y@ vRu(R3GM#mcw'I~zU@`ctxT{s$[™9!:rO=ASk;8<91,ͬum9)M2@MiՊF˰<7ttuؓt2D1+prABi2 |&kikB %8Ӭ*UaQuV­ t*=)}= Y nJΜ+[b$>+h) u¬с1وnD) y],|-: 4߿ [e]x=ͤqXDP(ᙟ-Nէy)m-nӒ/E)Ff/Ž*gi|]p7h׆z FHSbre)6FAiIC W{(#,xbjŴlcbtE^֘j%`:(vu.&#(\M2"SA,X,.J;I|AԖqJ6FAmq.|KrVκ q4hmjS~E/*5^57bZS; e.ϏEI $3^C\f|7nNW51Ih&='X4uZ"l-WuBeCޤF"p>i_t;j?qN{aGx5ynTV[qf0~U |H'Y!vpaͳ(6.u BCsN+o _fi-4{x(n`^~H\/XۤG+}SM5*qui缇+*d\9;-v۪gU{H$w5Z%_L!gxC*u.Q_Y;Y[J =jo~YLcل|u>"t/9%l*!U` ;?#!]-a{˶RVڙ2fG^{Ӳx0D36nyrڧrx6 VXOe@7I_J 0>=186@J2T遳0~"T?{ ѩ/>Ÿ: qq%V?gzZ&|$:/|CPex٠J|( ?4) عL=lue&a Qy"UUcOq(9\)XO|/zg>mRƂBIwCz\@b,P>%OԽIC/@h^ {ER"P`#(-= =:i{/3q|eAEW5@#c$)4 \߂TL+)#Y"JkCFut=v{11|ۋvneFNxʞ=R\h^WLVF_ t[UW`NO?Ǡzz"$9*j5heݟHD'jd%>t/֎LUيYnLP yMv.EOɺr@He)b1V$@r6"ZS Eԋ21{>ݤږ F JEdW?TyǗUHaCIkui󡅗Ouq1N; #* )vs |&9[vWVU]@1[w|CLZZ"#+f:=L UhV;nU`C N"oIiTr WI[Uv=Q %-3[|&Sؽ?)Oʷp]'_!a>vGTǬt`ng;wLN B429碫L&#4fܤ̼ա\I7s_x] o][*=~>6ZF.Dš]#qS9-q[Z& ٧O8AnTkHe Vvk&|ۤr<F PW &ۯj̟} ]<ږR"ZeBx!v[]1#C=΂۬ŵRS[@W{QR!D"ּ`k+&T1GG ש!ɺk0V x4G>%(}n:|YBFzc;2xhErU]-Ҿ28LxqH7LJ 1hmԆ Qf$+vPORmNG4鶽Ȧ!v%ٍ[{ܲ=_~$!-7$䋝Yy^ȏ:D}M,Ik{v#6!oLUG|f$Eg2Ԧ[6,׬Ϧh `v[|PQP '5 GUE𖍬 ٦y{U@XFTݿC/Vwjþ;.YaD@/rb˝JA>}lNmXc_j=< N?~ߟv}O:JO}ɬ.T|[J(u= vM]C~  X-I I[A#$HSDNי: _.y~埗NtdGj7n|.f)LueKsn[ Bޱ"dv01M8hLWz6مl'+RQ/"FuhɔlJvzPMUޱ=ܐ}^*yu@PA}OM;%9јtp}n[Y ga4@:h 9#2){;+ 26!.F"ǎqeh/<$Nv>o +ְXD}v}Fw~J):ROߗ=Qv}vϠΦ Suu!D6Pn+$Dz/  XF!?tX},\M5񧮥18MحmH+/,^mGk&M\;/ַ؞K#&مfkIf?IUk WR ݳ7tWzŽB$Gy+ʲ\GClw)+[C0Cy{ .~1s 5`v~ݑ.kҢB)5Sm!k~aJC aoCvȭ+ebɻFgAJuIf,l"B&3dEh=k\i`#U-//vZǞ(o0mԅq^\7}\Hc(Qkw}g=<\ |`KT'ID7T{37bK:4#?Tн! ),I91k{ *iڻ!4r"D~OH֗ۀ-e[ɑ_(aNx$("8rjlpƗJyP.ez3@;M|?ȥnOmy~29g͕sF #[u SKd|6Pn*v0IűOg}K1ePĀD[CNmPL+}:1PKQn1>3@lv7Ux?v܍ +%%31h^'r2y{>+94!䱚bi"v^\$W^SmwhmI ?tn}үw'O@99p7p1N%7&[Rs(4A,u9~J{4xAk/E|rFOOOǴLqUl)eek13\+Q9h)L#4VB\6CTҡξR5Xn`;h8X){$+8t\q C!u'T OO-ma11ͨt˯ڼkm`iXLM p NvC؄.a)P2eV]x=+]UI =('U5_.H ^=K3E!s`ppZ!IZ0NֱeAD O.M–( $:`Tl &) MVs\7>0#^-ed?+d*?D>&\U\  I{!ucQReϩqrŸme*H*ftCQ7ǘ6U\<2]%5,_aAŠxF;4p~ΈGNneY_]U\=E5Q@FR?y,۾;9['82+F:1&GScO+ʽ?wRD!Jt>٤ږW `4 _ۗe}c|\6UNa/QvRyt:F՞*Y7vQILq?㴤ˍE"d1HF^>z A Bl 7h.nG ײ: ,YnX,`jBV`0!Y6_ 8e|@+N>xoH\1# ZCC^i!#JGH\Ndyvuv^(ʍDp.}\poۜ)TNR1%}Yx⸰D 媟Ck"cMP@ڲhK+9l+w殰Q)-{EVʰuj_Z'ڵK1FGS*=H$h|)-y@R0}  ?(ӏ|?u}i,ݳ3LR0S(4(4bT⩌5̺Q`1X@[> lcsP$2&&0c:Q>h]ӷ~ zí˒ DB-wg鷺sv.XKNZy\~e|Ӹ[ƦH̸4G9nsgQU?.nԥ4]%ls ^2%#vlTQs $SCc6be9,$%)D|^2]6HE7qߟB1'* AGNzV4Gk9{b en\ayVdZ3]1(TܪHζHR"S6 ">&~r@Xeq?c XޜߙNP[_&t R"\T$cKHT Uum}FOHLVTp!-LrۡP~~G8/Ǯc}k巂PlLR Vh,w_]JE%4~dTwZ +8yORqh6iauԦOxYL4_ \BrʜX%Q7$IN5IP)Bʕ< ,I️3?̹n4{@Ǿ+@QMO۴ӣf=WMQ[Ǵ+=ҽ Qw9(rboϐNZ?\UBC'evap/d= bR4.d贁ӈEe$vQPO{K*r=Ɔj(&($sL1[Ú5w:Zn)}o7rQ (z 'պۦwI$'!]"U(\ TC;3>c*1>`Pu0R*g '2p(7[&?h(#ޅ? 8r~Ecc忚'_kY(  MVc~= M 50]1n|M?$9ΧU40O$ DA(RP‹ok=_ ƶ%'$8/z`qhakه;3Э[v=C`Z.Tmpq} :$jлM9y;Q"(%~ChT!v);E/j|_+S&:ܰ|btdΖhuM1d ă* 9|͖ bJ,Q J8EhTY=TGHaP k!3Yw/形W/G;*ニRX)ދn+ɖ>C8vy;Mjɱ (JJ~ ? kh"MS󬎽슧Ø's "aZ~fg2. ρwpSJ/'v:^_J Oыĵm|Tg]iN_FaFY=Xv"1j,L;>0:>lc||)Ae=U^蕠.[at?0[QYIc`L:38vz 0mQ?+w SL*(?ܮw,olc겫K }2A?$tCINґ)(xN= $k_ZVXcfQBpC^P ?v tg;lO_m@FI(Κ Iyp0 Nt:1Yj_:XseR~ Bx_ 㳚 ZF3LdOkسD+X=eyƞ5̎ ͐Ư@dQo%}vY;B,jJhgZk%IUwc^a]AۑU! xA{z!tR. Yd hli9}Vd5 V}aP,%x`ݖs-)Y 5^'/Fna uF;;VmjW(!3-VQ icDv}<̝{w„UqC&K2C>Jh#}%qF2F:t"3Q˺eR}cD,&v`3ַ+ -Yɔ@anZ9%OTIlrU#샾V+?6,Y_p&ZEw8C).b -)U݇[8 Q\44@=g\w $7u=#J_B\wQ殯xA8I(ͤs6pTKn/eRe:m,ҳ4,TwAUgd{bJ Y +KS2}ynx@Ҧz4σ145cM2=ky\_ iaIT?o0`Kb63a|j2/ny:ns'k`fna̵bѶ̻V lShѳ+o8=BVvrJSȈ\d*(sy˜tfX֐<s*+D(; Ԫ9OTXsSb#G5zQE7}cKzɨ@ )O vHO)>_1MJ}㟭C)]1h%e//渗f2WX-ˎ?Q!T!|RN@Te֠ 3y1Rp$[}`|f m__{mXAd7;&H+ghȰϸa.%@U⿘.qxf:wa͌EWɜ{\GB6;9N1[G,nvJ$KaL?\!^01sŇ⌁hy Gz!q#)7ux*}BG-K&5ɛ%[!@=#_"5W햭)^ZˢE-U@wx)~agP+:ڞ~n;Yt%NMÜ 4 <[gJ;늮C4f1PGΎhվ7[zP{mxy;n5Ә2̤_M9juZmǶ"aWJ}Kz&OlDޮ%b+Z&!:bx| 7~>z8 w)|Ϙ@žjpJ7e{+ dΟp$ӱy&k E. )4#92Y4LArC۶J}]|:ߑoCoZE |YV7Ğwl,Ҝ\?o~[/S$OYc1$1AK/25Ɠ ׮ܝ# ]O_d h}cevj>NՂo0 4B[W}g=HfZJf2jR^E{<.,(pR]kty(VlF(̤:WYi@;!iqT<ox= "cb!㍡ ndd'{\^/QSv+OSFf A E },;8aFzni>c`T=43M9E‡MiyHzX~Gt[坙E/ȜԹލ ,6~W]GnAj 8my X>S͋(Yr4PէO-0lֱZJ!zB duYƤݫA"̩Ս7N̈5JN olʍ V!<%wL4JDš$8e3-2%_E> DmYd 5t x2[ʕc&JG'}vQMբt &7ꬖ9< B{ỶIvrf;0C+Rd6=YDM+Lz+2 MI Z6itf;kfiO&. ƮT+X*"a[S9>۸ٓ ևBS)LYEp@D6=M8vK a?vu=!!wuRCW;%Lu"TBoބ?WH/IZ3'y {Gx$8]&7@RJ=lnKv+>N2\5@oxqyB/VZpv[E O =SF.mD#5Ch Xd u{)PRYR>ށo_ekD+n~{Jolm 7i7P"{^svQJLpvSi,noGD[V;+jwo:vuXp67eqXV25nmmt_4Ws~Đ(j{Dqͻ /iij@k'+"1@(C&R)Aohp_2cʊHl7Du,zQT$K]! Pq-Mq*&chgyr կ,R0-~u{} ZEC"}R|xo$Q9l*3zZx,&2\!3X]?vA@Ͱ֒%_7('ݤ=nq aE;?l>`?*O(Ȧz_')wL| +q@L} _!l`˜J|"sG$ j|r ad"OdS ^jN (JiA)84Ei ihu PrÒtU*@`a G\:]h>36HrK]f1f17P"+xQo\NK ;4X{DZ1̗p]Lcփ pn=끗%|RyN {-eLkA<VrZX2R\J]1kp%d郼i!K[懸~Bg.y6/KWf^j'6' )ED+M' |ğ"Ao^4ނ,\V/\xvCQ1pmTE\:Mu$IVkPSb÷JaR^0W`5>쏳Cʴ+".#T^c(-UѠb 9oX| 0J .h9&3:Y_^_$=82W,{$a>+E!dUVg#5T'"c@utVF'~f1r}i/.ɷ~ebP@1z]tce|N'>&>yad:ϐJKkpd֒V)v^/rs%PUcp# RX۸/jj%e%H3 .!1*PjHxFy@Pݮ#tުK.LM#He;F vdۛMA1D (yάiiQ̗H$Bdq8ޡ1Co +Qdb~KN<@۳I34Anݨm!j 0jK4q*b~1{ZNi${ \}Ehw#iVn4"k,nݫ~xRnx ^H:sxK{2~rFm 7A's t/)paWN*<<9$LzUJfO[|+,=UE lU]P#*flNo4 dUC:#BP\fYgܭA 6KB{FF/3isߒb7µNdߕ@`vmkZLa$a9Q{zeڡ,^} k┓ndEضǴk|?vԉutS rÄP2i[0MB6#IH#&cJa;ƂW=jܵDM]`w:qS9擈;.ͽA#H &vmoz{3}BĸN`T`SI!8\PQ.$$!j֌GH@MNw `"1&NY ބ489x͓?DIs ;(_^ 4?UHmh\Fa!${ Ff-4[R-!lcXH/̟eAha1?B*y FW\  jҠg/j?>ΫP:5:4aכP=Δݛ %u&wU /P3#ale=QNa琹(XV8ֲfhXG}iE?t@ެ@D3dm.v(fB= h!qOt!{P+2\uɕwq_m&׭ܝ|Wc=b@g6ky ~f1I9?NU@Zb^ <ȲLRtU.>Ak>WZބ`ƺB46JeO>@ zJd?T+Yz+ێb)5q$ղg@jȎP Gܳ M!JQuP6fI]1 6}yÀ1%T#_Ȯ =JJHqFFd?{iؿg!eCrjIi0h)x5P~2]5KG8Ě&,$lVouf//ct_Ӽ̵} h'UeL2^ ȄAJ(9ߥy  Y_ٚ䯬wi&#Q5΅@ǤȐ;AJ|c\IvTpT\Q$J j `_ݞ^Q}=|FF /[Rp+çTkq4>N T"Ύ u_D=wKĺ5ff BfOjvi.kr,{F.nfȇ~nī#-rR8i;qJdf f64$ǜ"|A?^V_]Rٲ=a΃8Լ#oXl c!!{:,c(#`ѹHfyٷo|02+,:+r}w&렠y)nFuޘ: #_+bn~,#E 2F4U O¸+*K}+b9L4]+/*ry2/C u4c3\97dI+kچMMIO}%]&oȭLW H"DPʧi׌ yi-xn~'7uf܆?dLix(dw30RUHH*ѿMW71?Ҹ̼uX,ń䣹)Rtr}{Rmܐv_ 29㗦olӕ dM9m6wWlKދi6zKv5RGZ }rSE0VsK Zk8] 1xaәqx,aQ&jJ&$azWrIN;[2^]6֍5̘l2K "$/Sg')BOdo W%aZ*H,pN5o'ްokn˨msLb ak 7^†cj(ќ}_.KgA?/q>Txh* _ҮJ`5TP$GӢ*R<nGP>(\.Qb.)ĀfDvK0vƦ&+K̟7ufH& %pxT ]|*ww,Qcܟf`уrpɪ*Y"}ZV0M[@ 96%9)SqB oo؂;gp3ze h U4qu2 1B*&$GPO,kE᳦9˒Wi]IeԘ-b\ZeV7>d~-$AfϫfALP \сuW0>N $UFEha=a.bx*f gR}>*kiɖu<);#""g]WciD#(nٌ5CyػHAPGP!eKw3j?WM&z:nZ -w\m;:E)2~U\5;A,DQMR ՎPZ k4.b k&.|K v 9Xrd_9잓!V;sʉ a3mM-]`T\}I0-kKz$HUO6zHBs%Yk+Yb!Gp0wTVfP/y kr>j"d.nCRjwj\sqfI۞>%~ 9,ORҕR<طƂ:?N`,,wJl6=Ӵ6[0sOYp6uxfoؤ`'jPJht0ՀYf=g47 G^wJR.[W[pRf;#Xۺ+4 :Zq P`xIj3(iЂΫ sX88^%x @~Z(5P;ꐺ $jE#P :dA͠IUy(&$}FCT%>wmeyANtT9( ;xC㮚$gK2Mz+ qSYJwtǭKc'?(om1yf|6_OJUΰ8ţ^NIJ=Ɍ$?M bc$11e uw 55jyPΟ4uۃ`5p[1KTS!O`wL+6?SGeiE1(P<njLE3gwT{^w`~B?oׇ8 J.iV6v_تdHYnv5EIlߢ"}_z&jBġd?Q=VQKּ݃xc) `5 m}>orwcf64>(^^[ǹ"A\ \Yō*6[z;ئij'_$ؽBM66eՔҘSjDlgjl3' <psD9<{Aܶfw;Uc =5J֣Ǖ.RF~ >ѫp;g[ |B6=2ȃ6KxDq-ŮpKӔP`D .?/=Xܾ̀ūZ̷ J6_apfsiZԏթƜū<`zhDy>l;yv>1Z!k-MZ]Cd5%}._ BCy3HMm6$IH!8@s~FLjʆhߌ9J'q#Jp29AZ~)Rs Yv{Jszȍz.1TS2b99-@x턖P{ 46%9}V'$ˁHxbbn9UZ㩰OG*cL;B_m@ E |/*'7i'2-tTI7|Ɗ$kNu- W֦ T _*ΖBZ|ig]2?.?W6Jۉ1$T|"+Tlc4O@lRIK<ITM-T{ W'#VI~I; Og6}Y=JEi~LP&gϳ3 2"e2OHC{u]J:P3?(~%U 6HrA@@>+.#|Qch~EjtVMԩ(D'=|V,A/])KrGq8 ڲJmqVPo5Gs~%zP-Em^G̵0ZD a}<Pyz;\LHI_1 +}jrtL1"eH5L #2b4+&P a"ʫVh8C%x0L|ܪESS/RάEDŽeT\h=(j?*U#\%.ܞQZs#ᦞe-VL<-{.9{z.gi2X^|һi~z=\!T`HE7IMR/}NdtH(Gk[N|-se1Q6Gl Y ȌRwnz5E>cL-7l~M},t0!|]':wH=w^~PPCv*'݆*'WAU)A)o&'n0'{&腗ΏU.@qwr@=c1阔}i7?pa@ *4 Wt-6R_ms mldyX㛟 ,BÁuH"mDZvy\ ZUSˋ]6Jop 9xt-wW7"%z$>HSCz)呋K^Kv)~½9M( ![aR$b!|ZM'`k4ZeXqt”ѐLJf4l-(:M V~ sI$c pM#!p-Yd^] "rԙ̊^ng}tyL:ǖ ,Xl `inwW<׵%Ȅr$ |c$)f8vM^fH)&N4&wfDHkrz`D^acǤqˆ3-j83]B85+@Y3y WPouQ.۝lv"(,ԸD 6z*. tٹVvPP tV9'gWazThߴ?V\co'0<{؁n`Rt7#ե)[{U ?PxuGER6cqJBЃ3wTrou~ pxgo.2|lu~E 8zH*݃_$!L~ ry1r?IݎI{4zluy: Qu|#\va48|lH2ߜYhy3 A<=D) oɥy?#II G"k]d?v$ҿѝDGNiE1]Ȗs/cay j7Z뇔% 'XP]+ a,,-Cu暑OMIfaBab87bƫ:hO!]. O6"Ϟ1c̉э؉7Ӏ .֬'8ѾBr5Jڙ jhd>ݺuv߳j*.fQҦtk0FBP0|@ԬS#%;ٱKQàg)>:2IG#@JV_a+U*,Ym\Zi7L1g!wP}FˀSp!%ĝYbHc~("5{@6n)^^zb|>dr 'HXB oWST,E^x)~xO!sDeM:O _hU.Vј5ktV{v|W"3޼n. pmW5 HgS]P G~4x+#ۅe4hB%f-N %_܎]2YP&36 @OY\veգ8D]Mq7Iɕ7BzKw 脰>X:8tڤ/2g:Ws|Y:!Ix@C\TG&|SU.xu *ee+V7Pz|H 5DMȐФr@N{RET(hM]ݒeѦMy߮R _3_ K&LuA˺8WBYAZJ?нn_vqW""K9m|"^p2=09H-Yq٠t[NyFxa`|c5ճWi.%xl(2s|/*zXQkѝ(_ӝօ{3yPɌvImVjjzMMQO…u-]Mt+1/2XT@ا5{ʰxbа\+un;`JE;wYz^=.é5Qf׸fvޖ8g% \h$>xTJ|kk֚ijvɣf63|z; K0L $bljmX4k85`T+ +!JDumN (T!+[]xjžFp%$ȉ}T\PLjÄZDoŖ!>z΂S~rY V+˷W7&ditfIpKZse?UF8Ӥ\~]E.@oJ|軘a|Lze>:謡H<>֩t&;Dp(NưO$ ?`6{$Sj14s$]lf'؂_N%dL~7&nuNJۭ ǩ\c:FQ6H B#a=x9 atK$d/d._SƵ(à3p<ze/LuSA4vrj5#8[ݦG׽3`vDO,&v$k>ߨb2@gOFk'X҈Ia]I?tQ:7>_bƔfEw6Åǥ\4c~#+Ud G}!nfe1?}2᥃̑,4 E.Ւ,q2 ?{~W$ (6+ajG,*y=%mL%[R~v*~zL}HՆx1x*!A2 is UݴN*31 M0TP',J7#YF O{"36W6z-f 0(Բ\wZqC Swœrg*ܤ0uRs6l3NZB(>ߢIظ'U\A`$B;p|j$IPՑ@ #}Jt TNC;}Ki$fVGG0=lݱݼ99ʿ=*h9-QLyEbe /p{y5U:5^>HIvp{=Yv@o|}3jW߉(gȀD)A-,4CИDX&CKKq<%~q{j/;UV:m=l=C 8)4-{Aߚ^U$xT>4$F] |B[gw{-VHIKTb%du&安%z(h 5~S.Ei+aV(X&榻NCNo" K!.gvGJB;"ͪ6ǵFrx#~]z~sR"5\="F,I0TG2Tzu6)Z *3A V΋ :hƀQwLPf-\|tp Pa.4}J64EhQpf 0ǻԬ&;%˞ۗ‚F^$Qy+ e.hw[ fm@=اku`; Hmtc?]DY3N' l>|"4;r,7B? }~7's8&8qb(ͪC@ h|0;).=f p??4 ջC<$Z{ U94S%{rmw3~62JNw]ՖǐeZbHMﻍ :DFmMB#9*i 2gbw}sc'6̛At3t;fz6Ms8С¬幷WZ5X fY6n xrx_Rչ%Z }/9,# ^6enwiC2݋MaW,";Frr7nw;良ۯ==, K)m\M.L_v(v3Vz 8a1"qXf= <ݩkd'-@7QI-1r1Sy@&iS#9No_^&^ ,*nZ 5ԫxLXj KVL\@CwL2n\!yQn󓃻9(~&[O& KPzc6ҕb2 YaQf)CUoj M,/8=IF!l (ySz#I $v7;#݊wa3=gZnP.oۦ*$nTS*eʺSĐ/XO/T/ӯ`i"9QڥHǻSNAs \jpq8ώΠ蒏 l5Йdjcp\tvܐ 5joFtLkĆ; l)zPJo-H#>#.an@?PvO WPb,-@toF 0a@m5' cOKM4ON8(#vAJ*-g#Ûs6}asӋ__p7t^@:ĿG1ԏA6r{#ǭIa}>G )Mm)iP@MzrW^t̂(ůqJG:`|!/K|"r|ٯ-g{ܝBӭ׌ъC6Zij>~EWt$mIN8wa_dzaߨngO>hiAQzyϥ8꿆e<BToc1Tg,]uҙuTFV2a3n#4@uܲ.1"B4d詺TF΁5|:f{& ~&<@ц#52?R_f(ʈ*ҋ@qֽrÿJ]j4؞ v m]w]5mNXz Ifa0ӞL:~+BVT2^sG_z5|ĠS'wY{Y4\u֬a0ǽvA<]ݘƴbA^VV0S6j,>S7$o`B!أ<lwޝP)z d歛*}B=؄ HNJ~~yKD;c9isCZ?^՜ox`R 138f< %ZR/L8F򑀩xW"u.AÙXCݺ,1bHKGjKqJ9nD\޴ #rl?ca{@E}&4r}aſ.m'vƘWn[luAoLCޯ*Fd8MA,)?. Zצ*2 $3f8 )E؃@@D 3 ldwhe&T9]drnWVGȢ#έiYRU k/sK Bj,`HX"z(tH1k_pW>ɞg`>fͷc9*oYC3<Đi;M Osf/+V(;'.d-m*BV!U3ռv⍇)ïAC+! -j63rDk(Mk~=_w_z,L5լҫA [&<\eZzz[ݙ÷:.}7<+:T o^͙6ιӹh_Wh9MSik?ߖk_.<-Uй]tis lVLIۑ槈^,0@dt$z#Y2+'8NFMmAdwPX7XZC%g5!b .X1P4bWm{c&:fZ3t& %/ jtg3wx~ 訌DKnnh1*_NmqVZjU븶VБu$D\QuxeVsUL,NknI'#T1TdlLċ+3Qѹ;eFȆW~6[;[Sӻ\`/yY)lb>F3_5Z`P7=ܒޞE 5U`gX6ZܿXYi`S  %_ zx-ٓԵέt1!Fk,U8? @@5ŵxԅ_J8v\edJBUnDσ !' & Ko};?0"#3adzVB3!YM_Z 0QU(ЏsvE2l+?o{9W,¸S{H8hWrc1m:V袎%6J-F/}d`xӟw̸ԗd0 yr>5K-!&4s䃏 8O +Yo.< F|T4bl׬qe5~2!J Q9'-Wh;D2ot:m y"uXJ."azcMh# @y//5w|6k>\zTkRӟ/"C^58uQ݀)?bF!,5 uF!b|'B]U*IPYq.T:2s?770O9VH =DҵݕEoroi i%N-h9DFt3J7)T^, #N-ƙETR?:|i{G0\vɣ]LZRƷு7?N1bv*{H'.|υzD"t.8/1I/g5g'P6Il( 8J< XFL׃4[nelGD% :yV1eNf9v &-gz`A+Sv"vƌ .*4 lJhmcr.sQ惖5CSFf-jn9yB- I_Qۼu4-C'{Y )b~/,e#}J0Ǚt8g Y4zZoࢨ@:}qd?W]rh1X2 )`Kǎ@~[.dA`cŦvRr(8wKX! R!(jgquH4Yj)zS(H~ܿ<v"9C'<2ԾĝgW'H^U2UzVZ&nPT ZVlF<^4t$. E?OŎ jJ|n8_XbDl}r֮ KA( VlсfX5H*X"Z٤`ض/D"-;TP{9::=)^c*l} ԮqeWptz?!t{A`ّ$l޹\Fe\9|EIfKlV6kԪo HF[@i-|Jf q*Bu'?{gxZ;PN}pæ1CýOۀ])ZWKމaľobl@xR)/={Q ^ WVQ6hec[ y]g`hԱAW*LWL{4b[H^kNl‹[ sG9Hf &F*j:\g)unuM*TK{d_ %pQrW>?t#w8bټpNgqؙR­/-`ADl=^߈4E'Jf&kK2Mz - +c[l5mMJ(wζTE' eTcfYG҅ ti9za~@ʑa?-Ӑ"7KJO.e2zvmkg2T }t[zG`XFTdnj{Won wf^j;zލA_9ds5^N깯*` <_oF&oce Wۙ1cG`Y([i"`6?DzӔz@\7j)* 5qZ‡yكE.2zL'񃠚 Y6ܢV-x[aP}ZK" wff~;ohascDO~Ms v' *$<銗`79Mǂ ]xZ#Q-J] 6M"{c|ͥ|c{6-Sܴ*q+ʹSUK=c "0˫ۨf"s\>q8fŇC` gd&XL6v^Bp|nxN Д2q>#gNxZ:oPn/+T$+i kL-v FtAm)eA^h?FiR+wf"uCruF+iJ[ۮFl3^sz#.aF4cgC`(!a(.8ei*?ɫw~u%UގόB4iGqضqp(r1I* ЏSf* mXa]8teRrXl%QBn>V0mg*f[C?Ug+/u u[={b5^?*}Cc>uĢ*S'F7̴OM I}:ѮWr}7_h{γ2q1R6 ))E"/=A 'IYqCx)zZEƿ#'K^n$)-Lt fXAi(gtA=|vd3W?J6劶i|/&K9qvW& ۤ-M[FݮT2/ p4ֵ+xah/\NIĵ."lC4we^Go9[2 *`hlZ(d~Ao%^$,/DsH*tYWn>BQBl7NLC)L ,`^(:KvMf<@EDw>r݌G3Q@N5RmNy`IfwU:_MA 0IVӔXKu_Z6J9 NκWLOLj wcc6%uaPΗ3A76Z-#IoUdf6#&]Hq4h-rӦ<1$m!m!'ӯ9$abI:Y <1)ouYT~>B%]a,>C9J.k|tPEqbaFm)^wZ<'(Bj"zW.B)}&"sD7$]:@y`(0ILnBn$܅ #^3 YX5K+gq+> Q;J |yQ|vUB!lQ2娐.`+-ecOZ:|WhK J~򂂡둝\bXdeo Sbݮ^Zmus&TA!tfQBK5iu \|L#~#1X͕Kg`WgA`>c ݟbĹAC٠CpCDYNZ45U}zSяA'|,b/b==_Toj,O3({4c酽VI$f!dQ™ ]Uq/Vtq~QR/;u]KR& z my-o=McJbS-4^M Vi#M҈V,$2=hZ %(_άS8\40"^rHʨ.KPz@y K1gwȖh w"}a--߄ݱNCk Wy)hT*A$XO-ly8 渲m52AC&&eT+sWܩC;"ؓv˪rēpC $aRGc!a]  I1ԞXxNXkwG2!{BiH7c:GyO eOQoRq5\o5\{LS?gYPGM1Ct :_j$wCJВj dժ z¡[ TewiXI}@FjId ϓ&ȋ\8;gn()Xڦ%'ex: Gr!#c6#葻ڙNw {Ts¶@d t;;jq6+^m*,'t9ŭ=df<wI\Kp/ W$s aFᾬʍ7+GDmttuaMmJ!QW_X;9Rp^mT83ל`sʡ>]BpyuC3Ae-խi}|E!d0d -ee|W.&=[չBܨM-oqGvtUR|ǼG{;SJq}ne[|3bn7 T~V<{>_fL!hI^vA]60LL\ fE\<`P&A:ۦi[!p!'Kn[{ˉolxї@/8\ǀ'C[gM\Ե'!N\Q nzCkD弻<J Np~F1C c 'a`x O@\6l2z:Htth㱌ӍF+X~WbbNn30C&pW R,];&UT rJ[1(%pZ |J`6>pTNæAfXan Kl%[7 y9ͷ9}iᛍtDv'm>/TY#8[|2y9H-kCww7EؙG\ȣE0{Y6oλZ#yC8^;bB˱U қAwm_pЀ%ҁ}n4ssm |KRY҆A$Q:/U[:`X |d4 qQٜ[A 2#х%oUN:lPl}i#}KMThV- %C椭29-q APKAulFIVh& "؄{7N2R^( 'cr!VFax'i4w-NܞA)źGˆJcDtPN ~/yilA],fd I15&jRBCl~Zh{á1B 0&)|j$8i`qޥb O05lP)< WabgZ=om#?'"T(W8Sbtz3&5:F^<:/ LQ}wlZi? LN GLRD۾! D!3 nw2 s62w!ih YDrד>c K|^4QZLx ,0+r=)y} ,Zq5@+}vCcj&> Ԧ e1y#O=]7NXپ\yM}E#w=hf6Ŀ5'a]I +X.I_J,zierɘ<敗Iš 2UUE2ٙiS"r85+3_iI&[q?o9Yrn^ҵT.,~vP.C IS 55S/SCeCz.F mz-]L=&b}ɫցbLc0Y$S{){OT} cH0W'ke @ul֚r`p}2.#&wQM(}6="p2븞ETP'LOckeTSr_zdO2/,`| LmUE`ģ&Bi|41↟zу` k`8 |/8\?>\u`߭,PH!{Q&XTCn0d!=g(w$ VD]ʣR9܉vQUOޢ>-ũDpgen"iN#[?%<]nY$.+>l8 dj@̅1&^>Ѓ;O/Y~Yn>p$bd8]{ CO~$>hgftϻ^'M<*ڔkEf,q<;EiaIrOFњRUf|2hv4onMlH"QAQЎ R)\( (H !/㵫'Jte1m\Zys$)7h88( D^*QN O wH90P:nW,/ &4:ޑliӢ$SߌNlCĢ;9ơ[vvI]2{ ƠhK*$Jv {;.g[)O'"ي[r5OxeHcTRBRmv W#Pb\l e}(eESZN\J3.טOG$̍d DmE9[¯s^QPŜyǽHa2#ږ//maTB: FY J ذCLGpЮ%#,5zEM#IG@ˌH $4i{| VtWYf&%&{ᣙ4 ơ ꎼZhSS.AhSk3CF[詓1}HL|(b=YVQ#dO==& 1&o}) Wq=6f@ Ə1T螺{,SF!z)ů)?-'23U"`X2Tgg&K*[W5B*XOG`藪he?^, 57#m alc]4U7]3$ģvWbSc&Qg=xuyc눿L4(t;,2T3b;kronFֺ遖 fϥl ٽ%s l As4.; )p)˦#ǣ- 3ߕ|'3 8sCށFi#Z!I/bil¤1 Ψ-9Q/[t@=[4֑fjA P(@ \*mc\ v^/VMk} iu6ܻymɑ;nۨbLKEC\U3c#sv]kJOٜ͐FTB"􏱄A-6y2%eps[zI_zA)kauS= 搖r8]tqS•g#jX=y(JҀ3#-@=R 8^++hBJ_Ms!($sDi95w1EsK֎<K#?~wid)ta)Bxe Uܤ1dc]\Mj%UB͢V4ik񘀐dγI;jm#g hx^达NS4([l~1D馧${' F#ƙCl Pˬb_-M:~(YN鼈TrRfS6Y|:IJxN]UK2~6V׍}:c_9v ;9y!Cb)wZ ?k:|g0a@R~btENfXp5ی/x$̭Pga^ ϑXFgxױI۾dFSq[Pܯp}C;ndE)|3\pAuaI] h'sMz[@Kõ}.DyAPyrqfPŜ,brV"c`/= D(X8Tٲ0c}\Kb :c|>vdf𜐳cȆ-h k!SmǁS՚õQ(%&#pa牡 >/`|opkOR[J 7lL_:mpa8la12" ibhj8yی\9]sCJ >fZV*9-$hJWb-廓-6!>dR*|owyCmx L9L'#HBό45be xfPYk6 #\LK6?A:6dhEu&C߇ yָ*gPR$'jF0 vm7k uo#tG818hXLs&O]#̷Z; u w-Xd/c&+mBW4[*>Cԙ:#;C3h>=F$"hٔQڳhekJ!B!xj&ZU4b.=>9@@Mn+^=&<7Tƶ*La^Gnxۭv@GMoyp(ukpy-@G+JmmNX/`-i]l46׻˗5߸v0)δ{Ӂ5V>) vdxjYîhlM_1ϼӼ7tXSRj87+wt0g?qSu](y{=&$(tWi4lA-A=m*<!%bZЂRX.8Nl"wL[J"U-<,0t=z'_o bC8 cզ V̸JK RC>c{g ,@\KAYc +z[ +zoV:ºd<~{pdt)\׶Jr/kc"Pײp}-TNaE|rL'b:"inUc=eDGfIEh8TFaP9ցd d\3J-r&QPK%bYGmBF52Xؤy-scN\UVs+8ډ ΎZ(Zi^ẽijc[{VUȇ/d ؀wlASwzWHVvyTs+&%dp=DƝ47d+]9'%(Ϗ\!40=g`,%!{A'-̛-Ǻ72ӣDȣ4"n Z%PSI LNjo ?k{{(h`U^ s̃`#j)r~ԺNY:T-%휹qcB*sNDCo-^凯bwR*Y@d6ؿwmrcw'\};Ra޶ɬYczKN.u)NgהomAY.~vn}i?܃q ZZ_I^hbkuG<"Ϭ |/gޗ!%32jds0M9(eNHBb훺Gzܰlڠg/Ʒ tNCB?eDJ~SoA>=}du'E Qv=SH@-ÊɴC(Xmxw}P5< 4^=`fؐsp]xaZ6س3jCLqBh]"y x0i=ݷIԻ5l.3hv]uo~k|$D\d~zu nXMad@j~a9~B9m5q{J7VacT:JF!z53K:1Oa`jWqϩS0ܲoL|O&hD✏ v

F&ץ01;^q 0 m aJQ]?P\*_ d4A`8?`K1" R/%7]ʤED^lY@SSFjv_ę )Fyhx#6LΑ¤u/8=mqa~#hkJըW$Pؓiqx2ZឣKnp"죈BoJ[QRM7==C9V4R$PbǪyz-ȉ|Աr".]V3N ѰSgArBJRR'kFYYy7`uaX+e0@c8}ߵgӉƅ93siS-|McHJHQu4t WYvEQۉc9ecJvpO#ܒV;oǗ*%ٍR2;ofk{$XO! ^PIajJ֚fF]VWk>$Vpu#t yJA㧨oaͿBYc|4bnt:/[UKEot٥(-O+I0;`8 Ƴ 17sČi ,W!&951غEAR' #,17/m֣DTh(Fp^eٷHQ}Cvˏ-g%]n'"$'f%m|y"l=Ks{py]P<|/]. B\c^+7xЩaD:kIkcdMgs@''Ft Qrw0q % ˆ;hV~P oy{^ģ\=Mm:'saD2 B:Mm4 UF%]17JY'vA@<Ɯҩ[ԳsEӝ&eǧ-qR5Z3uAΙn ŋ.zZrhGn iZG;:hVquh1wӏƓf7X GvIse|qeڇ=.}|WFߕO! ϝ7GOk[ <- FCŁ'iěd4H?Y Gm-"8ĕ>?K^I(|9#ОrqAhet?wa&^M.慭o_1Iev-h?u>EO'c aaCݯxCmy~) hrTm~tµ_k /ETP߱B٧- Iek:̓b5$U3?mQۧd.akDŽ<@#LS6^(SH^y }m{Oƨ3L՝@* F.{sj؇ lrs+c8x8?=Z_ܦ?dSW31bIs#f2" ]0a vtRG"L/l΂@7!zªv.6nQE|" +BB2uB R00xj CoM f` ojaEZ܅I {L{8*so__Ζ6(gɰ:euU&O̚Y[] T oAWphd%? $=e%,z!ïC68LԹB DQֱzh%ӕBk@|Р,'x dؑa}?oR%,@Bc.Ę9rNsL&5<˾Qg0) ȓ&.?^+J3'?t㒮*HM@&X3˷Siutiw@.2gjmJ]_iz7l"ݣelxꁺz]26?˄Tś!sy@ ~eȸ)A=87d 7,3s4jb7:VTNz:UԚ="`t!PY`m^V._r 'xjw8}+P-,ҟ+|:qum[hpwD ?*_# .isU+~' rټUU:Y i}+1nJ{XI5 j(G?!kR/.|4pM mڮGh4Nlּhf+#]h`*o,s>yGʏT ")Z`YXV5Mp*Lj]X3+Cwۂd1rD(j| Dݨu?:KZKdΕ]&qzht`x?d>\ށ.3`XHXRs?w~>< P՗/s,XtČ٘sޞt|ugGX!XFr!Gv<'|qOEYkl8߷Մf MI \+k|akFJaL% զoţz:_3hs& vV!\AU]lֆ) C'|/f5D((I9N^V@WCve9Fv)79t-!/PW胤EV5Gntή[:EU9D8Ζi"|^u3P>ޛ$qu;p%3BY-BXpUWa3_"b')hcF,}Whu|مCNlC7GV\cp!ΟqpD`12R⹆#dY2Z$*/ o c,09TR0S %2MO}[ L/YȦX` "oxFoډ^]}|uD7/|ihD&L"zl[#X<~;$UltYuw_㹇`w,ȇn7))SO`M?kv91`QxQx`2 F@!b/s}- xcQ(:v;`7(vٓ7ŊmϛC#R\`l%g_c}Xy!Iqe ,OV }"4qY{-F{ !VH~$_š؟(y0)qr2 t11g5 9;a!jLefD4bc@w}g7߃pЁbnv.+9i^-i}aSopv T8ԇ(: 4jr;*$w@ Y) p܀5H-Z#׎pւgF;q폟1qK>.rYYyDP Z)/aCsҾ,eo<1!(+/u-qJE2o&H,kHei(wX|zaK/ ߯@|MXȑ1ۏj5f?,;ՇJ6*|̀c;wR')n8" eUt!Sz%kY .maפ W_V627_wF5iԬ2L"l$RT';p*(8„+;)9mS5흚õ|;r%TqNIYss3H(1_194dHzx@Le+/%^VWGc@ “t0kW(ۻIv} tu oh\DUE(DTYO(+_ N7M;4R0kF]gYgף잨މ?-ew?^`j+ mƅEWx{f-VŬ&- ?r;۴vN"-_$AIJ.W 8w{>Y2Si;W 蘧"U|+W",ɯd>; 74IM} -tE𒺹,~+PAVcUB=} Tiu[$f#6ŀjO; 28Oǫ \Vпޓ՝x҂#4 0:Wr<,|l|PI*DtD F q3KSSul0o~dS2Ro=pO+9]"ڦ3kA/+ʣ.@0 p$m*ؕ˩c3cϙUd7u,02qI'lodj^TYp,9Xq(bi  1#H[QrSwi K|X+#O~7;&INWޠ؃$Q껣$#'imkZ$䘋xiϳW jcU]ݸn)XoYo֋s =M]~>QpN7@FƚT!UKR*RкӄjiLaL}ـ% Y\SښPg ~[nY E{(zRks[GeY &i[⧜=$!+pKMG9*l1 `bƫL> ؄h ~ x0E'{j˗U@({3IַG 5g|t/0QI]M Z9 ]WcՀix. Q얖.:(7vo.:F|*aNC:5Y~r?ȖKOCl ]ȫ"rةxNgH-?/$cҗ)[IԬjô1B,i eV2A{rGv0GANP9S2Ai" kV:Se#0kv"ie%e< >cߥBE?ŝ̥! M8 tvQ"*<)Ps>ZǶM S{tb)oǺ>6kq뎈w;b /Yڋ Z^/a萭Uo{X(PA_AM%Ց;SM%3T뵉TĤu _4([kbPͱ1R(}6I;BdLsu&v7xu `]=.eE3`bZ7xܝ"E .h2>xbXc%Ltf+`1ywlBb6G^e݄,+yK߄,u +sl,}16 4ސl%N ג 9#f >E7p`}DDU$%25fתRs>0fFINI`uRCu_໌s "& 3NuPխLzV\m_a3]BM.qf[[hѹ'jslRnۋhe2+> 蹋P0E1 ouڞL#zN7i|w0TVN2HG7e)vJC_ Z`"N{:t_H brl#I%GQ+x޼_Fwi'LZn=`޻XS2RF,,O18vɒ R[H&Du.Uqa@&Gu]̻&8B񧼡y7HK-v^ % ;O[VE#^/qV‰5T.ǝ\:[P/I,,,LjQ/hA%]Zf*#T/BKnp)0(bT7*3ޢ 4z%i^F-WC_W7qcqBCz*wM+*+nOVHxGꫢ vIi!ƫs:oj%ֳ#pqF$]ۙo*)s?sPЁ +Tv: ;ױMtH։`*41!V>[N:c w4LxwR1/BRv6["oYUNr'QuJt2yJe?;k ^&}G{ &(b|Á}R}Uy1e0x4# "zZ]:~1֘@ .'#^xM'p3/x9}}OPn[b2GQWe1]0gᨵ.@ eP{ET"A-m>R(Ԉ Jk;|`bdϰ'*VF#]dH9wy=:l~:1ȍ 4T}-1T P^q9EşY"LJQ–s%n6wu`>ȫxF<3<Ϋeo M%4ő!^<-*B!>nD=_ q)«`MF5(HB3=!+ce-zM]^Ҵ쭹 $ӦQf/-F~,{2mYxiD7\$c^D`S+d QXtj[ƄEV'ͤ K Iz%Ցp9^3M,6[ nBJ\qjHmd#dgHrߔz$Fs Wߢ/:, Z#_]/$rh2͝9ezMiLo`.8[gنwwu%n7ē$3¿d%Vqf~RjnsKXrۼ$g8BJLE8Onjt]2{.AEi<$sMo 58: `B3yIh}\>'b/^Ag)1yPIJw G5&Rlf 1!;5"3fQ&73G.ϏPHiVIzY;F̳y(4 &_ݢ) t 5uXV[R)!Nzf dm!1-}o>NW|4viA.<ȉ";8Ul V:A{ʹBj3)Bw{ã ~QUAY*hJd./˫&1ܛlY$K%nڱ*|GiB3дUGx bOznWɁgVgk gT&NE!xid P􄥰aqX u5zUԺAO=L㷪S2Ũ;<*!v|Mn9,j~Vp:b0iwu*.zW" -^ :*6V}JL)хt_P5ܦq06@sR*huAij2X;QSJ{?Ai<~喉!jЂdp:cV_>aaZMD,*=i/}t^i _[Z uOɒ\)RЧǓΘS#2UKVߍttTb8@Q*Zb 35#$zECmdy"[X4ꡢzI5)Đ:IAEiTJ5O p89jLP1lRU{W"V|[}+v&ԶJڮ9FHq^tݐZHJlımlϣTlc1^4/K42; Qo??`/b+W6W? d)|x /9dMѵ=آb9Mjx3p\6H(^;k{*F ƃXOfȜ]5q{*v\E/w%Lo{Җss 1yuOu-u4]ffƢa%ma?L+T?t a&HesYeHL|ǟ]#Kj֭ _|c~G~[]]w#mX˸T+j5}vbh9l |l 7j ‹;_/zCx&T&|l {zŸXl)6Q׬2i+o짊_` +V8!iK{O$7Z|ESh Osă2smW++*ny;s0ق5`]Jm+G+8g-hi Ax (mc(%v H?N[z8=kXݛwܳϼV)eM\:O̖=9*Q|> d\UG(]t3ϝX 78lZQ #̀T5e+TR wRbrOF5Z~͢!-׻"I& M#d(`nk}."LVp?ϴSe(fV)`}IK]Hd8Ɗi&Wk,'QC+at%%ҚxSkEB揮w2is19a2klli0@R0 xF5'WjrAWX^HKNFG{ v-.jexQ41F_gVfSyȖUIj kj.#k;.E-9vBc4zq T81a)aa2Qbb3-r^\.t-*i;K8":]Ree#D;往w'WF,~JmQb/ HD}^~yy}_Ւrf1`#I: miGmgc\3\v׷wq4Ed5Xb}tV|Ս_f9{ z, Va 1~}=`ufp.ǩl8W_N[o&{Mձ?P yZ} Ad^BWٯ{h޴N@ G)ȝU ECC,|5H~~ȫPT.WLCo"hm$^^=V?'KXUZKYr̜:~l0#Dӭ\)|S>N*Bde8,?W1ڌ?奢Plc'?+eYL|7Pmuw5"ĺQhGv^8mLG4(c +=( 0ȶ֐ uUAqR unn8Yi;Q^q/bx#WjYcr_So-216)D{}-h* Sf'r#} @y\jJY59*aS+vvtD=*7 rdf!޼7Lr4gܴ8бb T]Du#}ɤ CAV L1Mfϼ$QFSz3 ~ȃu0XG)DƯ?9,J-ѭBY뫲Xp0EMaGZ2ti!ȾJzdS)=71WNmp \՜1Y >kjD.X(OK@: &Ƞ G [~Ƒ0 wj/im+H{4VجcEoT@4-LL9~!5PLv=Ktd]eʪ<͢(jVDjG Bzº ]|S̼MEޓ<6:j"s_=W hBIl< % o7G|yYq?َi6DJN_j&iB6;YCA1=A[xw=Sߡ+Ӫ:|B"-JX5dsG=*qm5D,3^ rę?UlSnERavqSf*kbChYwVߖJo `@Ճ 6וG|WP`ɉ,yxvݒSt,歷coЬS5NK>cz-Ш[.jd0~?e}M4m'LhzjCoڀdPVg mn/g|0B+0 DZ_V%qfϡIů|;`T4(J4eMb1o_˩/p’zo`k1OѮu0nKDde}z)#WthxVV8# pjX̼Xa.Ϝ`>Gs!y: ʯ~):ҕ&+l%QAOr+[1!+Xv6E 7N6\c_{%Z?3$d9WaA(k̻,R|LOypyQBd@JEG"&@n|\WIh/QJ6',y*h";LR 8VWriipUG í.f41g ' t>ܹe ^wǀEbQrs s-V|[l6[VV'Krnfv2{0P^mUtcFM'(F #8Kl_ ?C2/Jҿ/(ĠykOkc=(w6QHK-s)q])Ɏ BڹTF S;\3V5R#7ւ(Zz=7i_CC;/QW,ǎP\g)ݧN?A4wGne=2#,됵"wd+,O݋j9.H$h޶̱|՛ƽyT=+vo~*Yn2&P cG ,@뵀P;NvXTXLo<. (7MG@>UWDJUP~kŨ˅ˆ~Nse; ?dr;ܒTF ˳Uyr !,,9,dD]&NhÅOY (iUئZtᶼqc?ua~Ӷƫռl9RAݗ~ސhCo4 kv;@x>dMə˩ L1ġr(zSX򮣦Kǃn1^[P4@;!0) f*uDCr8?6-x=r|!+BP7Qi> :X 8HhSsQ婔fAM,?6$TY;Cܓ:9 uF $qƏ|5`,+כ 'J?GMߧaD &k=:BҖkwZg@+˒u2`(6e† | 5|ᢼ:y -bn!M]4emjro&k̔SHj45{վ:Lwe ;K0=>!H^ .j؀<WDǺe|2 cſz"E$ hG]9OJsɷc"=5ft)gÒHkS\1pL!a=HpD!zhi Kq5`Ĩ"J8Oɫ \&&y ~YPv}>nQI]LL$ƽ/ěd%Up*?4 Ao'1zV+#Yz5H̕ $Bɺ|W*aŠ=)9a'RKyEʟ|? ͌J'6$}pD .4!}셃eDO|cG0>-ɟ,.a龹6\^ 0;5W*8U IQjiP5uo|v,"h؂z6yw"&&hyI؎aU;7a"~_al"?Ŵvm^o7S,)4锔>z r hL7Qc@~8՗#ˑwc nb- o'ͯ6A1"iElcGbmh!m !uSIj@9kIs|]t-EH `Delsa'( ?}rnSg<|6MƘ'kÓqi,f8][JSιD2utTp\<U l2e{ ¹8ҝ b,vr/~26-ftBM_az,w&%J!LS)řz:Lښ m^Q40 Jɇb: A{(a&8ڃc"3YIN -2gvao>ξbf.=oQWۋt)E5].A86L"PU'^11{|Šui4 :&-fƭuQXPkL5뱫(1c5{@i{*9)` xUQH ; Ϊ[6O?G]c;J8aK0 Eϧ]$|4lQ]Hr yR(Ԭh>4xu. R99`mr#jg; rȧK6&N !>H467vc!cT^^"O`ު U]g~U}S{wJFxj{DfAch$0`VpNmK$vdz.bLQ_"y ,.Fɵ7cCß)͗dB6XΓfY}P23sPRT\ٔMX0#XAMM87vjJ O1$8.Zq%(hJ'٣?[o듳7^xxYbR R>Pb5 != ͥ}M$l>Mhq6{Dm̍]5`e[v;֣PD_q2,VXe0:a޹np͜d=0%y -;ԥZ;lWk6!Daa X>IcdUW-J6&.ٴ[4San~D e1cZފ8ZABZz@JuN*ԕ敶.v ϥ+O͘Iϣw0#{cbyཌT#S"ZC"CijK͹30#萻 \6kӳ%sxz5%冝 ǐZ+L6NUO,&Q5&-m@g85)Q~kJ/}n8j{My@~2 :\@ecBtY5,h-ȗUBIgCh.R^bDhRxRh,в5ĵHil þ[MciE.bFMh A9VB^ޣ/L~{pĐb*V j5v5  {)!CqEO$Q5qHQ8 6_گUGmGێ3Po}ǢԦ@}`]n}$C}zW󭨑 B&s_Sm^")uv~v"h33"/4] EYILnnZ`NM1I,lyg}4W(_,^gQ MBo +2N"QDt(\r#,)A':nPk UL{c>S -1p=Z^H/+D+X!e&,hW~̀WjU/*G71v[A$)gO쀈\~)Yzs)y-ů]mی ubąg"W=ŵexV#hwEƮHMC)$(]E*1㻺 _`/[3,Q T oXij"~@"40 9`+% jt "X+q1.Y] MA{ԝzv˕i>kc< [7˦5Îs5#'ybs@AЉPʹA-5S~KZކ䟒n 2$@'#{a9Vb"O4%D{sk}]/֤ N- ՟+zM~0ĹZD}|iIAx[:r|K ?J+oSb`-'V;ʆ-O;N#wpSCy XdSXԳDKE {UGE\G6PyZqXtCқp1nuf!h#c_hH7*ċ 8Vz\]%Ͻ츲iG Y0R ޟ|msGxڏy Xո&B#PhnU ɔ" +Jrإ H6'>.p!#b %`౎&%ƥ,1p1@Ve_“Xu! P)NldC)(63-zer]Ī]@r7N@wML Qa1fcKm#3&WE=ΌZO cy l#H]ڣ=jI2%5< 0o\H {5r(6BoQX]د` +S#*)*{z+ऄ^uFѱǻ/gd/<1u>kSN)`I1;~}szixd ]'%hꏍOP d3m+ݜZ񠴌&sT#ά/V{5ᄢ<)F넭h0Ic: ^i7+M0M *B@`K}d'p4)Pj'*,Z w&%2H>MFmSf`_,6V%3[0R3FKmf5|# g,U~c DKҥA>$pw'g?esB?%b>gkͫۅ =) R,PI~؀"&tvAVN}E5Cxs5Iȅ7rOlwє1f\nb9v^9C<= kv Y[!nZ5BgQ0cjkH@7 s0Tc(_^3P"Xs=o>w"s4aKN5r>``{⟸ 7Xq쇈W :R{l5Ϳ5zolxtQu;z[L-zt3;k`n;c *6*<2aW̷o ~]'S^.<ReSfs雁U*W!͊BX I3ɃE ADAR/Y%ɎfrM%6eԒ ti5D/@!A]׋uR'Df"iT[V х>YM 7fŤ3 jP\S# ܜ V]`k.~lVXJvXi\ Ef = }pؼ?'}Cϡȋ8mՃ;P 9ehԚ}ӏF)VCʞv$Puƪ:; I]{:2 +fF9Mݶ$.ýd²{c/SJ `ihSn[ܞ`kmաL.1򱗆T\D&R)QZ.%WUȃYdk*ށvd(TCZ<ޭie7T*X 1q^p @jRc'!N cl$?g1E!k 4\"恞?NwDXt] A49還PKxQrSOA0 ,t!z̅2r;Abńjymss Of&#\}j ('*N+x7]\x;X4s/C9K~,BtFKȟ*}pʸkvk=NkyoWQk媌KRd'7 |is AWB?7|)ݼ6a1ǢR7gHoXh}>d ˩ձ#wy#Cf"3zU-:|z$e^%H]?3-R _P);~&&=z@D6ƺ0-OJX+fyK%KYW2w\%lZ$L5͖ oF,ZBN%ap1̜K6rۺwutL=Ԡ{p[8/ @EO7KAL~ ԝmV^ҩ~Nz/WN sgMEz[fT$PO&ajޠ8ǥN3:uE+1%]T/5Ӵ`:N1Nʭ&L85#ɪsXU Y4|EYdУӯDc:IFL% rAeތ]ΟX l,3== R =mO 'ܦ~ ų3 MR4 {DF@>"*&!niOn:!!IR.O(U 8h~on|4:%u_ܠ*uǧd$@x-#CxDņ{5PՠEYTQ/"1Ѻ;>SeߋmdR.I$5Ġ,qB7Ӿ ]5xUq&-񙒊{,$8FOUE\X5e7W}:~oYDf.Ǒ+ #IQ0S`f< $Hp:&[zr*44`Jݫ!FKQZѡY_/C5rgx5v)VIv=Oߪ^Ar1 +I2=#?>8!JjI2*>VcĈHr MwCI(eib\gG>y᮴5%뱞G=.0eWf+7ZGm{v@y0_7S7U[:|9%`#2jyG'@s 1: v/,UaSY@xv9Ba̵zLB3kNbqXSl'͗8=ۘP41 :>2D5Y$,_%_sKI.4&x"RU.8inQZAyx/iy3lEhQAs8[ۋFn%ST ^+r+,eZC *AfCkihY"LIc q&ת4LΙjP!)'Hi܊ Dի% y.k%>t[T Rut81 3\4)m$+j3Nd}Ыm.h\0( BRJ&U,zcuX] 82NtbTtF=f9ULڋ.2%JL'vZT~ٓM$+b^Sqɂշb8М%pzZ{S}7lr}T2aԁOAA0: [\O#ו]dbtЅf-D6xX> eV:oHhجK8 |v\ OʚƸTw'-|`K N=6q"t19[yP)APr^N x_  I7<'ټߥt%ZM)Ws8rw'&P<&}ѷ G=J9O=x_8Aaf.ϟxtŔaYܖ%&V6jld !d7}Q0@ Hۗ, Q!*22-Mſ Pf6 9J4d}#"o5: 7>h?.x\H4XYhn͙r '!]^4L{Tl{ϫ='8M0?,zOp ,и&fu%si(NYוEbt(X4ͷP8*hac'KRt@b]g"U-qPP^}ma6H#/#ƌ&oZ !yJ0nkCSg8o2SE @nO4Zd.F閳 ˄tW'R6\q(CZj"+ORn"/{Mϝ 4+UQ' Sp0ak7?>f׊rUKHJN^*b }4G+黅k ca*iײ{hMV~B($' Fò%Q}"0^0(P}`hHwǵ:pj QgLþ ۅ?}>nAJќ%վN gх4İdq wG>[Pa<}.jAn\oa_)A ?7u0甶MMI&*zI35n2rogjc}콌xIV3K\*烴.|@0ٔ"\5ڢ$Cp+Κj/cv|.m} ?,вa"K ϔ OƥGT*.+@[xG{xJTP6ͷvsI[9\'z/ R4bCg"Kq%"{]>< M9hWwQYn7#ԋ|\w[܂\ jkBGi:3 s]Ueѱi`^jN9zpA wt ւ]9^>!Q{-v1k8E}{"5{A"{[\ rj#kǁ89#e;3:LR0FvQ(?h6 1r/oC"*\-'޿v:M zCU i6=lԷ}6=;N'AF3 u"a/xz©2LHr#ȳ&@2"r(.[ܟ2S^!\׹?kϳV _cb=ܒ-$rTH+^fOi||Ӱ mZh&E{f~\; P@r9 [Yqs+GTS*u4!'\tk eV]{; =$-mL]%Η~( #jd9 ih\b4=?ØE?7Wu֓hfkm2Itp[TXu'_- +pեUq_{LCFHvr4'ySl6/v~4J sPYbTt8>Z;E%FijZE)zxkkr(R]Y"A"*5{HR7ػV&),[S4BFa {hsj:RR.CFg:ǒ<AϸvѤɻp<q!T[FFR_Ճskn/W#ޠlmyNXhgZ*rp5Y %nE\n,i Z{r[A<;Л[=,4+rh8H_m|2Qu|V[hi)Ni28rXv̥Om຺ji=sLe9O: \gBX(a'5%l8Y,8 y2wI}s̲;k^4c'x9?+6;mC @T*Borty4U"e>GKp.si3rRb^u&ztEյзo>$OI琄@~v |N0,rv\R]!u8t䴕>F- =h@Pc29S6 |)ұj^pdTUk`f/+$tY`?;v@ܝ ^fq|#s[~ڟٕ=PI[=R#N_r;*0Xwb우[E{,:,X[z.2hH {atסƔgBᗍ ~2 ǷrQ/ qLu}~#ع?uuaoN4pPg@?ژwb0Tb6M. 8O9|b٬zS,[O?|-3cv|ټ`BcfpEC yo;>&ۛj@uw"O $ _oWLf7R H1nZP{;AKT=S$?`G#*ˬ A7lb7-4Vˤ(а~%#$f,gQ'9l,qV.@@Y-3Bn -mi'Hٌh >$\w{r;d[GnxH{jf:\"4zBL4 v-m@5[GEm%чxQ6>#>,tH'K&5_dC D8qbV s݁`@vt@ ѐXbq]5,.ϴ ?_rlOk? RYs7y6Ŗ!@V(#|@ U)4Qt3BS`S"'Guft~7C/>'G?"ʆ`ƴF53nz[UBN?K#/8&[PZO-gͣRZ1`/moF3.4FJGzDH()SQ~$;y!ͤGD\zp)#'c#ZKQIC޵J5i MDo}׮$n-W*&H쾙feJ ݸxizN9am+#<_;n|##nF­osF~=vL۳,)a d:\b_<nN u33Iu豱~m)b EKHܪبYъ/ݥ.Q@8}o/kK Vp}n_b魕s`u6] 7R o&ѥ펀`ĞXP<懲O3Wi5Գ9p' V!;o5?Mq|?/i"ZktmFO7=ztu{Ko@HD7TuF yci[I ޯWݶ^|~,/'/K{?%<}D*ܔܞ P˯5n$pt&* SC}gu*&]V^ XevrQ/ߔ ٶh&n%ir! JDizb\^v(>G73YCy˕>5A80CԞcrn 6o )-~k5Wɿa ȗ<]p]lj"qLPGi^YBuO^+,s:VtjKʇ4_j3G(N!,bAl`%?pǧ SܺXZ4,)Oac"Ei!09^S{q{sWhqk[ !Vc`A*Gq]T#4GpbAǐmۃD3\D媜:nZ4#yn e ͱrsỳj|yC~3]]pҶƆJ #Ubxo^JO6g%KUBaPVh5m,ɟtq208I#M; ʸNӆ%4 mMFZ-+SN{j\!. _ X``kpr3Y~y\[(`*yjzUNt;EA$Z&tNhw89sVFAy2Y/rKt_Z2Bٶ6гAo1WW$dʱ"UNfCAM4k=-Fc{WxlL3hRJIƻ>#I=K6| ]>E-0x08QJOֽx& qc<)+ڜl|X )Rl7sr#.R=*͖;V{pj<Yo ,夬&|aqԡk\]flWm<Dp.h;C'q;M&3,"6PNC` Z(%k,f$4 ԒT=N`Eh(pƥtQVߞL)kդ_T?~lӽ{ew.}F&?Yw$h,\a5F{< C֝zڴZԛBڽHq)+\35: ˱q@;޲ 9%뻃R{''"qyc{LJl1^VktЋd){W F^:@sG+Bu();sa<;BgtíH;^D˽Wʁ銬goL͍B;Г"r{W| 8ҩ{OGڭA[7nP(1Y*ES.,W6=Tg#(Ɂ,ub ڻ׏C>FHXSx; f~gS~Z6;CMYަ%r8Yq.ui<.hΊ6-$?bS'c gC1giJT@0Jq ZAuy\Ɵ^D(A62HA:̟{Äw"jdȅ2)H鞓w0Al{؎JzI(y{r e \FʉωWbm\y?\D_b̀un45.i4.(vMu}P9Zt0yb0{j^pY!%, H5>ճAK1=GD|p ;= :SEۗJyK;ѧk~$$/k5ao?ɢ߼o .=(| #U.BO._]SjX <0[6.C<e4={N7GMz?.Q,\!u*Ueg󤯷gw<>]?eV<i3Jq*[O|HV$8^I>hKhR;8W,0z*ɳ#y2 [V}yX֢ڜ5WTU[P܄𪝣yhT^{j1' \8+\L9x??/ŐYʮvL4(a9=Vfmt:౻\ 8Tg%e0ntWuSrnhB"2'a[Je?#a r{mV5Q냉Or6jf6=Dޒ JI(|K9C(7 x,o=5*/'**&GŖ LaLzR* ^6oIj;/i/]7)'E- CGplP9q 6xN4>a>Ygje{8/F$/C3Q/ Y=AjPђ4Ѓ9DZ_ksp,rQ`aEixB?l߸,ǽQFo֜( Wp3E#HVmO. y61*c_8N6Wenu1r"خ,a0>(zS*IU='zA(~X.&?{_-=~f- FPL8k^ ~BvC݆-eK wO7V$ POqI>&L F/b<.m9ch2 W()Ux ;Tuz8TJۊQh~zI#.1aumguv4o]ϽhZNNcakѹJJ„#A~WkʣXstgE2-fJ F*@ +',Q>UfvS'MZ@5hWϽM)S5h]ld}|&+\{qv;BԤ\%Zg&Fc-(Pk\Dɷ8FZd3o'TƠ:u7y@:\^oQXUj -=`}K}.__U7ߴtݐ \;9 oj?8-.mn2SxD!a:Ϋ.5/}*+Y\ms<وLZy?Vo҂{zwrf+nl8dNr.A jT(8PW[wr$;D 'Ǡ 8ܶ"P&T*5% /ϸQ/CDIbx@MmgT#Vsl ֫ԧ&=^YJđWN/9C2~: I~0p@~1xdMQ0xE{aBjvxxX(tYOG j\ ^ȋ&?/=E@%+%WTXP^/q*^c뜺 1,$=j #\`'5=`cv;Q"]˛iHaJ1Jv>~6JH/ܡ" ,~-.Xq|EO]5cd%zbU ,ua*\uG39CuXB|T'ccѪYI _UXIy 1$[fXif 4$ÝL?^GާH_h $7M9`,۾UMX^EOصS`퀘Q3M%fj=eq'd[c86~ # BE6Lkqy2~^5ׅ0^y 2BA$DM}ani6 66ƀ0|}9b-/XV#5Fj_RQޕG x(|00JB6 3fnvʭwrc'ʄ\<|o<"PO\7ǥoեسYA6!"Ιtd a3+ %G, RJTƏ.aqG ~M˵1ƍ waIb3Ӳ|֚doM%*,tm5R1'Ek]u ޴F`=oFfb<_8$>Q,gc7HrtjFAfpC~iudPdtCoʎȍjI@1bE5>Y##~J~ 1{(2֏\jJGܕIbژ[1$t[ mh̀*3@Y,yda#=6<)c |4CymS 2_$ @-H/'uiZLJR GƗ7Pг*!rm `L9]%c-㜂'sWK&GKn.ѨuiWUlݸMikI֌5fzIؾTt#Y +ȭ.ELm})Qlφ]™C$x Xɗ\n_dCzDشx_1e`ϼwbP-qʍ:jLË8z=3f;1S#|T3I7>.4GX ǓғT*bš!}W!8j1f0h}8167hv}R*"JcE :Bo/(KxIi,:YQ 6Vpm:sDaO+,EyK {cڞ'oZUSZ .62bYf*i)x"~FCOIkcl^WBղ6WF rP2ڪq,t X26 `9fɛzMM>Ywb ԕ!JC>UЍs~h+Ψ4ЗN8yst°$@* ٶlJbBҮަ_krmNRңi@^h(8<//yχL2@BNj@Kv نe'Ϻ{*E4)R?y|Fhh-œ>J(OZ!_ 1i+qmhH͆B7ԗD#˃?>ǀ0BH&c;KF0ę"hiyJۋ敲N׈ͷߤ]/z'zǹhAcuئD+k)ʺ=8PrT Ewlu0LPE `)K:qyl,HcDǹqlcTԜA3nnmU{ʩR},VW龆Cog ;?@~i9YCҶFFVhpgfete{  :(/B6݄A!p!n;f[fCN=*.^"6Q>6@3M%Z9 yUIfji3S@K5oȪ[Zj~/f5UcQ2n-lE"ᕪ8l`,k: }JB"ѕ-RAo߆efgmi^b>EZ2`ruK ]⦤%c"o Ӆ8q|,$M)STeљHzo4d,Yc ynKAu+[|̫i10'?GD6~6d JW`dQ0Q.bNh? IׄP}wh*SZ]R}kB \浶g+D 햍}bp:&CN`nP\,߃.LLѰK=\\].'(;ylj۪H$vkv򉚬2J(! u8SOW?In:+ [$o G|7a8y< Sqǣt\wFezx lw÷זx P%P$1>`&Wm? R2#y#*1 q㍀DסIÿO`x]nұ 5ZK1N@;^wYϹk \WBC=Y.|LyM> 2h@G|U<_mY)*`jv3"/Wzkzf-"zBk7,Zvm=hyZ"{lIOóHIV4?%E:3qQ|a|2ɖkZ:סL QFôЅE7j>b<1J|_+fg{-5f: *N,>l d_!6lA0#3&8ڇCɇD2zbr~FIOI28@.[EM\qߣN."RF*]SSm~;2)LJI4]v*0GH&t},d^.?v)LLk;H%!TxSȰ*I >Evch{;2vKy?Q} S֊) tF=yחc8pgjo cgAٿxl&ڦr/bT%\6OYj$6h4E,Az6xEX LUkvu~-jJYЏL Bs{ifLX% -lT _5{1)z$O(@q4/S~`o&7>fM[:n xYn `֩Y-NQƪPZT ~2S7}]t*տS#dʚ/oSabʔW7cƤUx8/뉌]џ_<*rK Alj|Guab ?i  -r]rucs(ru T*:ł4hwWWHJU=Qq`k@q 42Y*G'VW'0qZa AY|ң'S)oq<@M,DWeO0bIkntw c:q$p^jgm73rvm!v *8[c(lmw:8-J;+Gh%$l \+WUus2β uᐂl^{Y.qbűff$%|Fd =Sj'.ok BCSz0\{7m <%->R81q`OqqM7:qpnV5njt[usIP=(כx҃T}an J >k%Z} g$($D5Ēax=0 {mC$.I';+cRHq ΣPтԪIB]W# 3AatYkƧu Sr᳿bȡU< @K9ҳDv,XTUCqd1F83d&RTHk4fE"RtXx?lIqڰ [jkÔMVljP:xDŊVuz44b` Z_}<-oc$JՋ 9h]}N48':!PՅh9A;xɡBSLNf@Pksv,6.ǐ ۀFXisWL"]JwPpa 7~7rވ.piA%cV@C4[;3~!2# ɣ#BàШ[5TC5t c}pofS0ria|N7y܉ VҸfaCAN\ix ,R )/@U[BdJl." eJD6Wb1l*ԟ0P5'sS`)5@5VbۜڎcO>_|Dx$ii|[gX⟾L' :wDS&@,[Ly@GS)^'#T[r-Fnxn@$/ϣސCm>j\84Rm X=\C|bKj-U#?m 6TB9[hBij$N@u:#AɪTR|NJq,Aj\V^{fQG* m'g_Eu4V}CV :0.(&|gM*6G `x,-=o }Iro~%4pKNK.TGW rĤѯ@w.cUHIR0ɫ8yj<^ Nf QJYVa!:+|^SNRͤhSO[\qcNAg勞q!h<]LsOzrFT'r=pŦϱA u٣B]kPrPA9 uO>sp͝yP7sЙcKy¡TP&r`Ӕ1h*ߢʐl($ ޼jr,] KQ*61_0 *n[0{й8QbS8s5b)MYc0.w׮HGJMl?GoNgY0 wPS 0이\XB.-㚈tR\"$_'UmIƚb*:6zC"HH$(@`9Qo'=(R[%v+*kG K[㺱^jύ=| I^?GqJ6ܡ:KkL%Zp{2÷pUgc1-_:}>TYĽͰNj &=\eu|Zɣ(|NsC8A޿[(3ks'> ΰI_=vEJ\Ǐ(hbum WU@%悌JRM,u'ځ1]pв@mV@)ukoy@9Oxm=2Y"XL$*vΌ ==IЬ(,og7TЄF&%|(ؼ?r7/$4gݓނp4: ak0Cp^Jz4=Ȏ3U@E93Ex n_0QzNlzY|,*}Swu#HtqJ $e7̗X@1?ieBgo lJRS/J c`JAmeifoqM*+ \ ަՇ?],o7k&zwDѝ$o=!cɃ9_ksmxe}Z*vH{["2g'ج_F=aZJR{Si>ޤkCGwe 0EHx r#-&T?#TW* ^i|ZQߍ-H9pN |(ZמoTsyV7)ߟiqL"xFTҒ!)!!&Ynu e5F{ILMjL}z6X+5qf@e W(4e4C@,]݋5WN#~Bu1)z)p"oy2&]+DnyK;tN#96hywڥ ޯJY!o}c9:=83yxٚ{#E-'ƔڏAN,2BʅOŬMp2czѼWyg@q oZK펿dz(:vjNyB?n%c.\#}׵п(dYgsUȲpDGVcn uXhP?9RM 1o+V%o0,k@ 3/Y튅U>ҳ%"nOaͳ K]9֨RG.J>YfUvCl֞IotVXh ~/fWIZZ&EGǯL\-Og,9";хP2Ψ&`~z] (b:?O)Om?'8c}4$F.[³|Q gXUT(B;rFg'nZ㦑ܡRdNږ (_һuIKN)y!lsrZy3 :weUƟiw.m{# p[@G2GN~,$ 0 j&i7%B9•3ld]'QR#lC՛6?En$W+2wҧCFs;G TsF.vHRƧvPebbʿ܇]߂I( :'r|uv0yD8#2GPзDsMцZ Ɋ<]X5j@7͕"/oGH`ձ3 lo1k;h3sAX^ €{sAtm޶V~:n;;${}kzKw\ vU-N}E5rĪ@='ma|V7Zpò^/;e'`ó >4ji{Y!!u==&'ln-#ҘԵrP@Lhr*=,."6)5][8gso371/,Oc?fK-|~{=*ECyeޥP-W[xك 3,:Y(GM`Rk Avh4'Xw﹝~?bzֻLW sInoko78  &12 =ű,nLQu<3w²е250CKwf{ b.?-o 'Z?C[|YˍdD:&vY: 'VP2[QaH7V Dv2 oX kŏ8 ҷ3mSE65֊-v3A?{7QA.I)yQ `b:_|-8Tz깠C /PvwT),uϸIgw>|}r{xfaس^qIEpPh0Eؔ>Ku; }gqTR%|j=V80]܂3DG)VG&j]M' &Gzt.3 c7Vk= WuϝB޹j=%!.?c<ثt`I`1.( 0vY+ ʅ :/ f ը&*#d6xrHO9lY ПeOΡ@P=#N0$14F|ެ-N9Rk]< ЏW8`4w8/vlcQ1 IgJ#)z)up1A=N86}_F\r]BCϓGFlD̲)dOrQSk$O^.DBCx81'膕8iVd}o/ͤiP&txE}>}XrK^8 lp9Q0~"A`WEfZ+6)&w:b>s4șѓ5 haߋ/swdt]5-M 񤆩V\;RFWWJ۶FFDV8WzC,E,a0erFOqN֐+"­5G[VX*T֭^>SW}Mf h1r9}Sng# A va^#!tzfUGl9&/OY6^ ǡбRLj?v.~Xǔn eΌv㑋hj64Il af6ĔFQĒŃ~Xb ^;è,Z%0ޮ{4 S]Tu'<\Ev<ŻL$ j\g1"_ˣ` Y|Wf %ãQrXʜ":|FKglF"򠕡z-Xa:& <;j),yxjZ]{MEOU>G'ޙKZ1o|W~"ͣ=0du~VCz>;4qZԻ <]|-#9**?Z 6ŠF'Ċ{O㧵JQWiV0~6GhL #9;]}4Mq~gvE;qӣ=c"s8p56t$_F|L*#V~nD{bMS/_asu~uZi,F-O!p yE<:fYwems;NP? 4 ZI\W=euW[w^U(H'oX '-tx ҽ].xk^b"%:]9d1M&fLx(ɊM!z:U$'_-@,}ت|2Ԅ,d2@>Stf+y_.usE4?XVNԾi2 DK Rn+ZO"\XBg-)AZXA4!I|ػyR()mF@x>/QkfGKE\ fVշYV/pkd&Y̝*MgJï݆[)jjgQ>+zSHWF*>\^X_,WmQ!IؓBpk#1XVN~V3ECT;v6VQ>i&B5 ?>'iAc\涳F@8nKXw1͙ŶmF]B?=E%"D!>ώ˽I>~-2Y c RlThmO}=rO篿0T9WD3)6M*Z׷IPm[ODf?Ie,JW&u A)?G)vA:p6աϺҧ"q-.g NxMyNBSyRw^ eч_|9] J ؂ 7C.r^[BvXEnjLJ;GO rlì J,(3 L؜\JTixف%ax(:Bl7Ekrq;m|%2JZf"YMUY8| dhJ*q6*lN.q[(~[GtOuې,_"2Wݹxrѡ|Wzqt'l_Sřԡ'vCujUI킘FύDڤ-^.d^ۊЍf;~:ۛNH+?'W 1- ǿSh(<k6T^A%S2m<,>ft͙2dF4sg|hd Ph+>(᨞# s3BD-\xA_g2ֲ.κVy-ftȴ})ȶ&bw&=m{'Syh4[vk5^^2,;7Ziܕq BY#j=!!Y7ţVWO:h84><-^T3lȝi!Yj0`˽Yo.*G'yu#Sp#7#<)~ٍ*#*>iUśiir19vNkSHfI#yFPr/c28.I9 9>>L<]nҍbK3֫CHeRsm?i:oME6Ubߵ$ua 7D)_Wb`[ G|c(|7ۭ^ =۹ߌ[i"&[9u8%fח~qTwK`qFXjnv ' 9dYJ .i]5AǪܹ4l?q.mYh{lӰgL 7dWvAH(: 6)y dq>N^wȣD`8ßY(OEͼA@~FzD2ʠ?Y(:#Lh~?ZJ- m\Or9eRMZ+l*df& tnOOl[ӞOR kH8K̹ra$|g9Nz蟧F'eMhJ'`e tAKf]@ac&ex8ߑ/+߾S씍lWB:f&U~w1Y_]mj58X]W?)0%gZ1#` j ?LK2V,E#c'qY(d+.SbPUOk !qq4{!x7V݋&A斊 <oU-`-0ݷ2_C^J Uh&=,́5ۗ|?$\H=b#MHx $j:qDJhU@iH84 0~͎љ*.۪ |7%slzx +8.x3U8/A͞Cٽ8G謋 PjG-yS{ҫ$a6 Р~`Z@2xPV`|싊fNk]G{"NJVxFk& a)!)4fA^rUtu66H 7$WiLR3͂ssC? _Cq4^´>Q@6sP*:n[ZaQǻѧN=N.4ERocHHl3L h.ON)<!U[CXf9W eoRd[XŝNV9hvhOÚٕEQNH:~(R˲>D$v(?@u^J?Po.O-6h8' ТW]8 (,ŴBXh ܃a~1ކ8-[ǧuG ' (&\) )ü3Zyr[*_$4+ė&dfEB߉#>×hiP(AcFOeAquES h:S**> ߱~ތ{ m:+HKl6]Kh< 8UVk,}smsPBP aٓ&O5n$"){PZLޞF)TsĒ>XF 0\]_;ʜTmϗ* uvDqcBl!i3 sd9xݽ ĸ٢hw1ʸ;pX<35z1􊳊'l&~*:4,le_LHS&?Y"GWo[k6lɝ`ou>! ׭N)Q dD}❻q\5+f@?O"Q6&ivyl'޿U2ђ-Ɍi eo +jI!=B h,;")ʭ=SLxkPLXFk"5,߰T,Ekγ Hmo gwF5zh5?z\P! QmGA2 !EduzkI)tҧ]'_Rr;srJDS0C2" ;2ĢiRC-@%2g_.ϡĻ* _@ٞ@lตƿx6oפ9AJ8H{؄7 l0 U=B8g aM!+gp'a4q]1XUћ6ϊi\5J-4d y{^,PR#EXTvV[9boaGw2q#0@ǹF338"  8eAvXm~pS6#PU/elPѲv/[_cT{Enea"V_"πKf1nfk`rjI^{u%l6oɼiWTL&{5+\~sU;vDҲ65 %!ybzRs`KPHM?WW .Se~8 =lz#Y5Ul-D\&0&A|}RܦhK,|O9 6U҈;a2+Kl"@go8m)]_`P`W Xם'!a~WÄO$-31o]Af}ؤۘLyvwP 4:D dQi{jZxٞNh=q.!Sӄ/ ((][RQ{A ,蠚&%:y `VýM'63M^:ʞAV8*0W#O$,uG=aG$H2=8!iaQ0$E_lW|j\PA Hs VW^b_9pƟMSF`jF+H,y]񿔔c ʇ[keZfZ4*Y0'HF܆]훜A2c c XȵR >M%&!|޺P]ׯ<]ZsHhT7|0 kϩcZIFxk\.QijE{m^Z# -\u:('l1_FyhVcr$w+"6{Ӳm @=N=)GŠx_-cZ7Vlh!Xѳ=窿qL.}#yE@-t`'oy<ٯυK }N▿a❽ajaj]AeԠtsѳBtiH/sʐhR C;Q|}jS7+c_C"z+<*4W14VЫD~>Sf|5Qſ{hes\c5D1-n$+-6ݸc&2,0h猬ŏ׻?sd x&,Ufۯ3.!9s&akRәj$ z{ %D++-Cl."H7$- S5K'eg ~Zosdjo_kJu. .!Ic|: mBT&Vu>5P 00Bl5P 9mAw4~SIGۤ?3sR9D`ӥB>$߉OImUfN.h<@hE<>IĎgϻ#hމyZ(?[$=CBl_lĞf.(U{vbyJ޼ [9CЫ/gk,\y^ ،[Q.]0x0JLTNYF_gU 4f8%#>0mh<`k{t=]Bs,w[ʀ <6EMJ힋qٵ6fR ݑ@Ԟ*[zV7L"!N wlޝ~rh{VuwO_YK|ޣ.T5cʌL bxV>xx]PiUǐ B)r<6xI1馊#ߒ[2sVOHw e^m>G$ TptOg\+g*k)s/[a\F$csRl#YJKtwygЅ?zM!,☾Ih`N fXK/g칑6y:|>`]-ʑú9bЌ&{$Gs}A8*|cfoND&7 &ze! 9k?B7 'tj7rcbxZK]B+xk,՘ǪK$iS4?ӻBG?LkM'F%NGxI{(XTk%MSoRY9m3l«"A9y~=⡚5fMO܊5J%fuw4ק P[ P.}ڈ3پ2ѱU;P.wuo8$"[QfGȇ=~t .xyM:q0Nc3T &NlFjy7(R44ǽwq.mYw=9(GO59כ! vɻw])qHQJ&K:-Q0mBTzzo'-T~[7*^{ʑSjm?VI9 РK͚8K;g%4Og6v[lkWɷ&"=tBdnK3*ˑdhH񭰎<,P/tvYt\j 2? rcwo0Zw$g:>[uՔrZ9O~MW\s;R$$o/}~RhH Uea@ȭjz6Ssp(7R73(S]Ңc3.QGJ+LG;{ _ao*I]cO?m&ڌJ/7~h4hdM8fjKվ;"¹XH\ 2smS~0dF RXxP`p)_:nl8;[~nP$ oM4x0gՃ>P3qU/IU2ۏEfh5y5Th#X|0;JUNs ?PQ?bM6ɩ)M=W@y.#9H@h:to ݷ&q{h_Wl 2JThyp3A}HRmHLؠpy G[yM昌 ofYsWkCf"7xxW+oHsb,giM&EG|CYRPswn<${i,2?xI9  Yĺ2ǐp2:tG0\׼ܘ׼&=v:<; Xa* DOرKÛ5S*Hzn3D^DklC՟FV)rh#T%ߝ']V Gթ? { X4Sc+gmWܨWmlAɋKȬ8lqʽ/YmtNүu )v~\GoBcT:G18~ I8m$WymTIЎjVun7Ӟ-~A^5ޣx6wz+5l 8Ji4 AM5?sQ@:*uHDQN0÷/BHOϯkev'3g(Yt DӇ~HߕZR؁q?$>3~sY6Lؼ&wE/2_\\ֺiUn]+7b,F"iϗ/(H("*5Y:E&xY8spSt$7vOx;mgÚ̒8rD" u3zNqN(B'.0䑱| -/U3LLLKfTi<\TKUc*{h3y4 W.u}Uv@_ux8Z@0 –r4sjfi āNk%|0E$ȌeA' >((+'Z)Z2cǍXf/( #Dy2aᑵ/8#5ݯ}I:84TQ'<‹3:y >E8kuxC_mQ,;(by\á˄`tJ\}u(l7#_D#z9cU ymo9ž./*kT~p(j'~ <;F7Ԯ H 'yl}{P_:yG ͱj3}FNm׎ uޝw=PE2o(/uEe] 0JFK:Dႃ p kܣz2e/Vߟ-_Xe,88JPlAe\%A"ւlyIx;<cqy;SǐCFrلcՕ1ZU#=*RF'N8o5c` Gu:Ոڸ"nlRJfszɥ)&4߹*7M:˯h߄Ə-W&|OܾOؖM'Z/+OĒZXw >xb%Fg$[v=up#sS^zeNJy%yBd`"@`M~ 'F]*/֢_ujEj,g !~INeC (?`+VO?# h/g_=*/X+1A &%a(0_H֋$#7-J0Th')M^B݆\nA!Se{ @in|4%qY<͢~&%s ޥRA/? n]B_DfnǮ/ g;ab?xXz^+ٜ=w̐Kgw,]x{2t߆\K-S蘜{%-tO޴ XSxƐή=h3ӣX< ,z^^G3 h`86!K.C99"ͼle}HtN5oƯ|:L-f {sERNbPOKsr٩Qq3w"RES`+1.-ڀl٪VPjڣeZU '6$\QMUdIK$z"ŷiFɦn c{HsA:Tm%wbz6(j8s]%;4(MܓN Ͱ;5LhI2PlM}Z F\ -Oƪ#70d,M_W]xR_P|M!bi2_Tw $/<%_F?IhwC1(S7"g(I,]aaޅHC>;7lFoC(W`ROOl^ yrx%LHr6JP-'s_XKGȿ8+מt!9qa[ Prkll 5-dADGgXJ|52(a/lv&X|/1ch!V|/'{L^@FE^+o[wbPFK:1:eX9J`ٛ˞3{ (>4|׿YS = p9C01oQ3냺.X`,1%c;u9zɫÚ,gD>zOkR&iӨc#PoTֺsVv`\ w:b]dm1G|Iq8Cuwz v:VmmM" ^qTKy@U]ܚP˜o,,$%f)E/ʴ?Ձ ʖZ#ZN%f\H_  f/BHX y <'%ԖXﱖaM T3Y*wfNJ !7sgi;Fj1!(w?҉aGPֳ7/a7Jo-]%uk=|)j5x-L99I6<46PCu>/K_PX,k=b8_[U@b{VPt ?& 6f[*q5rt}gTa3b,e8ϛrzX (Zu>v3X@K ?ZXq釩cN͒F;ǝeMc:#N{ş\CGP~_Qj \ۧKT]cd'0 pZt%à.9:Io-Yq{5砜omv+TGx?Sa+Jqo1`{viY~qp.$-X+%vk08topZ|ݡcA f@ 'o0vA,ƬҝS%oh^I1#z"uE$9D$WxW4N5޽/ zC\'KASyeFVv䅄nDP&:f$ӦȆ ? 3ŌIqu1.MTH9yВgn]7rU5Jۡ08oAИ2l<@/ݵ"FZ&Kex ajv4*J.i[y) G4SP~ Vkd3KB*x'WKb; a&J 10~R=j1MX +gJ/ghΊ! T(aŜa{@qv?G4ˏAItIZrǟ~;0JzB.DO%*n{XjYldT ']b 洏yChn_4Izm'òUyTѨ앶Bb^oS OU?u=0!':RT *n5K(nx60sV*!Uozq'Ш IaWjĬZ9ᓌ?,7Ljzpz wgТDΟYAHXsUVzK.ek|x4s7XM\J6\Hf/h5 G"pt2wh s |8a$\?DxƔ~lG !!$V#1 mC5bC~j0%7j+S tPtr6f8EEOƫrZl!520* v YK sn}(guJIYi2J ;$Ĝ)X4rY]/; "~ 94MQ]iIwS74"_JAF鍯|) h!MDItΤ6o1 Jt ~d0,*M+Uj2r<-JnXf ~4H '{XuQ_U#HTHXTj7[B~jXB ܪ55d `D#䏯Ϳ2+R?Ѩ !涝" t_ 0"-:ؒ*uÅ߇g$C\<]y(j+Al;+ҙf7`@荮zs<<{1Y\{Ӓr_‘L‰d\ u~ShMD%dS. zf0?ɏ!7ح0dh)ƈ\ҮZgLup^{9vO â,BxfjkR_YKBUsj\Ιt.O5L t 'zu-{ EkLV#˕J!J~tpB4ZCB qyGeһ{RϽ78V)T\j-hj&IFOR#&wy5$(Jp Ě1l|*k}Ȣ۰dw@̥ 9 Lzo r.7'd$\Qzui֫1W1>ԓmH݀$]n=EO3 J|% <)3rt!lhӮ~4żÝ٩EUOlXrbMF-|CkY&f]gcP<@D ;23k7 UM<"it;gՍm1zQ̲QI9(9ko/C|-s"PP*W9E#Z￲0iIJwXl QX/)ژam2OTI9Rä@ߑ=b~'<£UdC~;( se8Kq`lI,E~"eOmO|n,c#K=OXL-YKi?l>~V3 >buq*_r8yaƜDL6Wf|Ʊ~+ȨNDWA^GUK 0FS9 w)vʭēȨH[]$#H0TJpڈ- x.6£ٺ* :t1څ;~-㺹i $-"Tƈ8_~l؎!ޒaRer%/PMͩ&')\Rљ@0姢eZbjv_8,rN4(Jme=7F)}Tw\6ҝh,AUM9$%y6roԕ@vh>v8+{ S^?W~e Z[  E%U@ƪ;%^~T}w #"IHy7B[o \ ~M1O9Vf4Yd@Ch)mNHcTル/]8`heEDY\l%;8r?0ﰈ{5Hݜ=aC 8 "cYp!*(jV`̇º4R@!ؼ7T$oq \6 OlJN gR/4,n7˞(uaIe4W;O$Kf]%\" {!F DzR>oڔXlN}TD3y5aP{*f-A<@]>&{eϻZfn'q| [3 ܱ~6s%yO4sޠIa eNyefYOY _©jeU fAW?βw%uڂ l*['xۉYFrPZ,87]e<A3RaXkS0Y3 ]r-]ID*0I|Fr~A|݉fUGqĨͺELۉ<^J0͸Z ŅŴǮ7:v)~V\(Z=; KLIt7HnlnYMl9Os厂&I>ض)\|zakXӥ 4F|r)IJ\Txf[n*NӪ~4r|MWj_ϔ0}')5,WbpqOМ*+QپOxCqH W/82{ҭh- 84SO΄W"_3|%6K</zFYReһѢgЁGMb-:'7t//ȥ%",\$̢p2kj 숇ǯ{`ߢAB&:i Wԟ%(RxBuD6M0E>BF;٢$bJm03pMiwkuɠ\ ^|T|Q_Ȃ: #?Nx~KhF-bwS5M!4/h2Ղ,m%:lt=60/ >YӨPʉSvaq_n*,dOe*T7)r_NNChR"y4e|`5{j߼f{x p G) t͌PZz?&S8Bopy]Ϳ O)H͵ʅCpEnG=!m'HfNO6ߜFfhnȆȻ9_B%(JPj.C5uA|FKU10JQ݃2} **4#hP꺶;~T{c=wN{>o^2?X[- 3;^Cjo,iE nX1佶c+joҍ2wN'DG,."*?GFEOF$3#+\H-GFw9R r[~b/^0` 8REx৹W숭 tq6 Ą'-z.Oz|XGcQUS)(ErնKԕ!ݱ߽U@cn q,[%lo(t/ӻޓZM>fo 54MWsXӤ .2/u &M/ 4GZGuGQ'7/.gMt`[ݓj2Ւk=˯H`mK֒OG 6{ FFP՜`0~Spbkk|uk[l) T}'Yw5dމ P3qHTaqHC55.l39m~[?W[8tLJ}y k6}y9Nvaj6Wk*u%c߂c3>O-~3pb9#UNpexgHBl^?!5נ"9ݥ )C+:QX[B帲\|ZeC܄G+n]}|{o[1 EX5kv$J-̓%IgCE4&܃}Ff@t b}MQ$0<˅ J<&"d8H]̛ Ւ:C7=C0~XiJgB&;kt*)|42":[W<3CE8$'Ywg-*&±=IF&RT  u)=hh)~s B_j~`fFC3_aTꞐd~ P#}k/IR,aGƅ*?a+j:b.l"Φo8- ~ENĖ IhJ|Qwjc3nԕɥ.BX[I~zY@cUtnA?G:2a,^F6 QNm D҃i[3y'ߤ$΃k6m#<]ÒIGp -4B¾I[DoЭTS>H7Gf8 7HoF&8J8#S԰EJ _qtV[Dt» yUT`AǨZ|tԾ^dn0]W4fhϠKj~@l JB.C7~X u.^A@sx6YHKuO%>H]RQ ~;,8z.z͚h,tj;#m𝥈[AI2+ <˾7ӽđ~e/H";y{xD2@3kЍA2|wB,W p]пxԖi?R0UPy뙌g ;c,"j=LN} _]{"!^yeХ{ȓU%X.l p& 6*x+ ac1*2-f0J5-ͤ"2$DnItr7ÉkmexLe*9pQKѥ./la_TuU0ε8Dxĵ AxCZb&crak밥 :QGة8<2 ]+Sv1:ؤ?`VqQPuDt'jK=ˍi>0piYR ($fp`ڕn75u'*/\o"6lqm% 9PslO=sѻdW3>P*G,C7?+?-'h&}+~QFBJo&\ΝMǬ\,ָe_ zTI n(pMjcnJCh…ÂN/WN0$ݭ',қyWPE5JNDxT6MOhC{l1xST\W02 N :@$/Z_7= t۾DlD'#Lx mrӻBOސmcKW*FW𱦔/隳Jvy~E|67FAѷ sP,³od hTǀ2+838V:; U~3\&D0EsMx)p1VS}udtDOO5I*7c6{GҞ'[<X)@-suN\K?Aso,5bc_݀xಿ.89*#'a #~M2wTjSA׺/A. 4<^fcz7BݪNا8_X58>̿7ijX%WyW.?c^ U?Tݫdˑzp$@9 [SՂ3ݨR1~8U~+~e[Bn}[3JNE-Bұ {8]ǎQwz^PNƵl2ZV "muk2H3_WB$To T-aV60sRfM #V)ܥ4cUS+cld1&ڥnq~fPcsj~zV[]n\MWs L!f{N|{Y1~\F`Bb\GΘKP_vn+h]*SC3]G#Wh? ^NhHG@PjO !8jX~ߜ`emius8W&EuEc9omLWSjh0V19a\KE*P.mfמKCś|,_^34_*jdT82"U*xi'gJ3K2rya}͑!43O: oF6XJHs% M},zIG3W~+VeF'\/1?78R3h@ hUB~:\;i.)4A tWgp$Ih36 /oCgf7?NEkfl+pYUoxoQpD/ϼ:5ⅈnp8C3$|w6 ۠KJ4"UL19:Ktib2YHؘF$袚H Te9zzmoG@T`(V]hqU>23T-/3 Rf,"u14Qqpo3( 4Oc{"֑rG[ '#LI(X.[#[mQۀ<4ņ uv}ۊ;]< bڒU8/ ^%/X[ 5M5G+&.̍+{25jG/0(ӟ\GYyUp|Q=Xx ZxPV^'/q'X|l}?t k+̩wgI,%]QT`k~s*+FnrFGU~rvi,+7LΤF+yAYwyqhncA 6)J~T_ⰎGxAORO!JK놲OVF$z(mtL$t' wnG^3s0>V,"&?5/W|SB6`p׻Vtt9˜ b'r\FY 9Y?}e:/Z̉]UlMWRђqcOբysx0gk44˸5'}GooJQ=\r9`T_Q.pW,X1.dWaD4>Ma RE.QN 7e8vnݤM2Vi2WTVd$Ī ig) -Hy ڄ ތx >/6i QQ$I2,a|A?yƢK"~;t24cP-NyEzYm$+4%vW ʬ->~6`\Ycd*7eV)]iC޲6GyXG]p]Y9;Bl6+ЂV:NJڣ096s!;_[:Oa1F㉟j5KWNXB9Pkxykx<0 6}kA`x hAj Żi؟@DY1a@So5@lJTiMJ_%#XāZY D>+&ً2cҝg3da1|D +V J¡R%*Z%D{%tyS.@#/dp Ml29;qntE6~3[(!i"o'Z(bzȥ [9n&ʥLh)c,695RDU\vl,rύ= ގ0ʩڌ5#QS>klC"FfL==xֺrZ֧Ąͅ9a1 =bM &,БDq5/m30VKS50vmǥ %>5h3:v5NTes~d*^*:Iڪwē=씡Dz&BF+ ʽ답Q|5DPBB(dCN<BvPIڥőC]STɯ(J-߷Ym43.:^T]?ڼC$cE,MۚfddchU.J!˲I"|yf#nZЬJ&䳢Lh1OcW#932w-| %%3HihRw`eJsJ;4Hw̲<\$(%N,%39tjx1V2 P ?_y񔮆^β ?T- (<{pݹK7|>f Yexml~{7gh2>{kc17iP+DnkNXCWG{N;d6#zD \"yq/+ U"Ϳ,-ELnha5K5OzUHQݞ 'co BV(UrJ(刭4M]c51l8[U&ch-m  sרcxH+M>w3s^p $7O C@8${˨{eGi3'Nn9Ɉ邨\JZqU@'dL82e>ղ#<ׇfѤ6lL\=W:Oq'edӫscH1XoR@dQ*%Ej:3˓lILJi- hp_pC,+ljMh9;3~ґ4&7BTˁ2F`M U9#Lw>-P+ԪΌ!8_~M T29]|OfEpiʁ1fjy!W.M湈 _e;.+mz0uSkpd#!@Ź<˅P>ºm-)`=0-G8?0K,=/iMn$Z= ,5I ACѼuw!{n}^_ǬT|Rj?Qnµ)EB&AĂΠ?˛TrbXp Y@Ѝ{4uPeMk+dbִn|~R|>Ԕ܆}nUIJFv YeWrҏ&4Ok{&&2..-F'K3Z:$M`@$HF P:T *>FauQ{.b(n@5K d&qvɐ9-t}eH])!|y` %4 :K1ٕSI6P;1)R)vٌVBy =ᄄ %]gh 8Y[GO J X&Ylj9? ͂!EAnb@^3u}:"~tbף!ӡ$+Fɉ]J k#6^0i- !CYۡ&֜]Gqg}` @99\E*y^i\1e5|Mt+LL7\sc1أ'\tce]ȖH&mr9VA:w$~*K*i,& %ce&=ϟHRe ku*0ZU=bd4h\]n񋟶_$p m)^B+xatceU|мDR]nR+Z»2e ֡Xu DuK~@^w?CJT/E*js44K8eL8B`Ot]㹑7w @Bǎ[%K-HŴq/6  VƨY\#"96ϴf=T]դ!,vb\="j_Bm]gᯓ޶)K=SӒureGZ9.!*RxCǎHZsa 3ؿwȑ9I1wdL!YUɮ j˗-D!Rl'3,?>EF.Yr^b&]rgOWKnGkcAk*nRC\pkvS_?p8gA1zU6e2ʹ d<YnQSY}Q։׿0_x+V%Y35>{u^(z<b,aOֺª> )Ѹ}5陖i r1,`hbGwڱ KHV^ $Y㵰Iҷm3K8 &?SgbD;B$op_$µZ8+ 6;>ұxJ7B=oVvP rG*ws( "xz -Lk"0|8#A&s "b$r*W @UT}b\ nnqTp9FRmWix# 2)#4d J $]:zdPr  WS˒bt8`"tHco1&#O* s35ْCajnr)R4-{t l8i+ۺڑUwA\_mFw/y dckŌ2t| \.euJXS |JZ?`k]Xe,`LLﴖѹ-sWtK L<*>2))ce9 Qe}F vmQѿ_PLcRVH7ٕȄrM&!x5h!u g{ U{8ips*G)Yqԃ i j]ُ u'daCAGY*Z`[ Μ~Fؤ[d=!ԁyI7JZ&ILN&FSħ`Ly@8״RWM]Vv'|9|3)aS˨woe2+_Y3 a'aRk+V>`GGcPĒvml-qfp,N:(1m(2Zl/2%5`QYYW5p2p3éDC^Alg9UKE,~Xy}|Ι  \EIUpnѯ֌WBcmY>⣽#|j_GC: OܪTbLZ{ׂDF氭vӦ .SECn"ښ>֯/fqA*^4fnv0P$S'36&΁FjW_nZ90MPDP(%A IVrJ#es٥㻜>Ղɢ?ͦnr$pE=xgIv55†⽞Μ4<5řgmHf 7c ߆1qfA'v*I4uоbm,<:rI0f'L`"듰TP+[>=ƙyCd'P"<Ԗg1 j#,0&$k^an5 s]yJfo4-DM܃ Z_&s\*$azM㪹/RyTK R8B !@d)m!G9 9b%C@Bz?ɩ>$&G0jׄFK1G44I_rς*2Tu#=%!ufC~xGm3g*fWNVl1ߟWt@$ql=yVf)&a5$^prMG!*'O<pI\i/)lꈽy|(hc yTNc0!걬=b/ 7[zd^b8W&]SQ#b0It}ǼNJHO>B_8uGjH"Ug}-0F[ cgSOw.9.p}SlmT*ݛC1mZ2]n.]u=ooR;!Ay8\ %Eҩy[˕0ᦰZ3 VlR+Sct̔+Tb=tU7_ {\qϡXBId{vLEȗ=܎pY=`5yhf&;籬~5mTOד>=a:wFVI;`1]ipvdT(oa :'p=qX;snH.B[WXxdd!!Oc,ZަFM6ϲ}V+V9kDXM^J:h+(s=k*v>]'SD:uhu5X]J'^$B̚ GKMZ@O=Zft4LjP& /eҗ!S Zut;Y,AGޒ? FDɅX9w:BωԺDXSE߀|֡冝&Zϟd%*zwU|k ` -( t) 'LeWJxw-bEJ 2cO3^MHXW=Ke[`<.:135fxNQ'ga`/~R\ V' 0'bIFʶ;MW=PzJ`uԣE:$kH1Մ:44Q&&R*?;\`]xEq.nLt!<`MD8l ʝI ~@3#DEerYԔNCU2qV tXT8{Q/2D-ABG:c/,xjß H yCk}i!˧'A6(d,YQEQY5qsi}P;lLYTa%#. 6zK\Ɨ( "X%{3WgZGnQ.=x_Qַޓمhގ |\;jsׇS鲧%BjIPDZdJZ/c!ugY1r*JJR-P|Ĩ)NAhbSoWA.Yb{⪎]l4J3_#J;&S+T0xz6*3:BR'3.n7CP֙w^D^Flmٟm[V x:o2'cubX0D>iew{cSQ o,-P;O>@l%8}k״IqV0-CPĥ~ݍNC# ю^Jn'43IH[~EYeNY2uNjE3=  o';=\0dj+2v/{ OLB(_/л}@}c'af dqY&Xլ2R$&WzbYْ\9.GF?fn,*_K' '|Z>- DI-Jv_TY ͅ4R\.qE!@mGO,Dq?^C;d,KClgjt`:i 4Gs?n Ra礹Ŕ.ҩ/d@_1FT2qorWvxQbl ?qSTmTja2%J1nv 2:!f4]pş;Ѵ7aDfmHN-_;b@[[e另!ܣ*,? SX%30(>l1P)1HkP"jXYq'X%ϬH3j%aP%2wp̯g.[A:g#:Mi <EFpwn@{hv !5 sicka73=(jΡ^0*yTYޟ H&F$_cs ݝ0(*-l.8UzABYԲF2jUֲ[)MD;{€H|f+e@ )vN~fH>oq+tusu 2w,U5oa|Kc~2p 4#JU{2crB'PuEWV!̐%8UñMYH.߃WoV9D`dNEKϫzh 4{ksI r᧦uң 0ycbK? ch=T Ne qGfr,SFaօNiY*o^p ~qh\.#׫ճ eN!'yOR[VG99M5ݹdIJE1@;*,.CxB҃lԝb wm`u~҈ zKJEWKCiJ#qgC6qJ 0ČW(F{;bε )gX֒;"zkaB%X[UhgV}ꈯJ\jF.jCٯibBy>Gxukfd-0qGw,w-iĎa̬.5 ^?饶Kyג%k /e.q;dE:#zXᎡ&Ɖz;|YXojk L >2Cځ7|{r7sZWi9F A{\|0jDp*N0C2a:#tJÂ[.t&|@-uE&`O e_O dq]D!GAouc=+LguRO#K;˽}4\]zI<+|y`*E :؊뚤a.VuЂP~z'#WPm gQ=`ABWH9jݎL*uW/(np`)><>;8Y f%(P"[oUT9f!(37%5P5Л9J٥Ӂ[0Hbdwov]$|/" M T"}TL vzKLbG!ע4`΍ybg֞7- |⃫7)Z9RF ͌L>^ ĈMI\L)OI[ts ( B@$>[:q1 OV_-ЦLFwI b4K%;jKI<@ʮ.Ho3."Dәk8A+*tȸ^r͂l>2ks.PBv o 8=hb Gf~GS}=vD|+ְ$}n5Ds㦻Uv^`r|q=WSoH|zz!x`'E4NoPܫe 5uS8rMFvvI4MaX}3%?UT"r˦mŅ`cR6_t%%Yp7a:<3<(hz#sAeK4ϛq;۔?b\{@]Ү}.6XD|*h# B?j5K@z$X##*N!ٳX_OQuwj2p\rgc{ I|ntZ'*\J-Л1A}Z'4H{Fl nXbV[\C&%W*%|d5AoFQ]}I5?u z0r:eޟ,yK  b#T@5kV 7[59x vnyH;D:MZKષ@ +Uj#,c NrZ(gUAx4@nTԻ5="gЩ1ܮ0d:ꗡ@1y 4#ħJԘL1.u=8b"+cnRl(jX *&ecR:$q8` Q(B#JjFUyRS wl{%/tձ|?Bt`6vɰcEP^3M٤M|LW=uU2b665 * jr..YT\@}վLc¶6Tp͉!m;aXi[='Ʉx|Z 2PzYSp:BoWONFG`BHړ_?K6/M.^a}`6[4S漁q\hoB=XK7JׂQ#Gt"rsB1!݅axcX5a:䥅AX]V|˨e^o HVca=Po__4$+YFRR\d[.ؓ s+ I[~0^<4䁙5, iH>Egיj2'}ƒ~?B"-߇y,x21r! PXJWLbV _- ^Nˊ;Bk[c UG7-ɰqrإĽy{!^-u^k(xJ',w|)3 BJ`*Zv4+}ȳÁ=CˁbjM;}sLGtKSy 5 gy"uNNFڕ|O*g F~EaatWO<ͷFED/Lj">[UHr 0/m[<>}Т; Z?lE#VLUY: !Yq`d:j]c$&0m6T$׈#mkYPd.yYjѧ"BƛP*)r <\jc*>=Uc.;9%9kݵK͹м+ۗh|N2E4/" {0 $ w9oH.N{;yRLVT(ti9w}59vIi]uZasI0wO^rtg ekM q*=}FYݧ:c/B:fEd6goJ^jn5.h*|ѧ_DEg޴sezkPUF\Axƥ)Jt/V; ȉ)V$kY'm>pFF4?%mR2Y8in@]^{ZU6uGQ6,m}-:},-Sg nhHJWRMBܢh!3Or>z` A0$$aS&AqY+B*qT${R|ęC5܅v5}/I?綂Yϔ;yF7:_~VNAOu: ʐKKlmXwb5і(^Uϭ"q6qtRt)y^l!կ(z Ƚ͈*KAR|Gw$e};)#cE\ƩjX7[W:m^,ȓwOyQSalTd_>KM&i7*fnz}"-Ôv>354]dvF{ Zsv[{(z7,<}s@ޖ 3Gu%;4W6K?8[s t\q:3o~v5pH |%W4b1 `h;ʗšiΞ!i) EGQz|oL{}Ek5yLЖ`|"nDž^rӖ |.TӯP%;*x >"`6JgiHdHo\7y8 Gᢑ(Q&jKJ{*$)w0rbBĢi)%wĮ  R]W+lEw5 &/.:C]ÉIJ35ࢂ|.n=܋{%ؘj;G$IIBe،^ڠc`a1g:jli9LGu |:ulYK,q0ٱW=kZzҽJ"lT()4IV[&. &`FsE}5%8!}+`zmG=$Hia &cd$kFC 466IJBٳzXxM9#cDCVNp) W< ?CF 5׳tj==Fg5d&pt+Wu;/d?|͓!xCQK/ä ojeV#H3*s gQI+o`{ѭ#?vwJؓ}בbIBCMFP;@bT^&YRzCo?>c+?:֍BoHZrL-@5t$oޥ9[53&d8O1b5\k^I| %g=-W]ݖ" "<toKT?bSe | ;MH%β1EԢ,sTyiT5l)Fram ?ׄYDǝIO>@L@#6\4ZBTi,Nj!#dI7mHt+D܎VGtm^\'R>hv8aZol?ɞ "8Өky;rغ4zϰl6{uxtkSh IS ~`E1ޛU99@i&7U #BR|h a@G`:x}l5 K1Aiq˽){E t: dzԜ߯X@v{x?嵑]k=)g+Fli_̯5TW5ot:s!v+X(u)VܳLZt`6ÆǂbCL˹($d}H{q=!x'̟iNk o%|%w7% P V]*pPͺ}gĐoρ@foEُ+2>(y~H@K ݁w!0Z ğ{YWeW6ChƮD%o2@z.xv9(q| D#("d< ޭ%*61F |! :n PTx&a+820,-|Cu*˾bNgj`8UxOO`snj)*V?'sVcyb}`Aww'8Be-qHP3#_vYS| 3瓪f `8Ao l3Rj'_pvn#= -GS [ (lKx{.]ska_fQcjV@?LPXZ4IuNu*c6ēvr3ХVT ش(Io2 Gt'Ȗ0 <3w K=b3olN! Bsk+VZlқ^/NFtZpdZ_M İf(ZE@d%W*>9m_7*%CՔqf_a[.d# CABvq|8W&`VsfP^BZL jCf>Ü$*=k8qc$u}b>ER8ޡ;F۶_|W)9 f݇;#=tJ˳ވ =PYH Osj~7Nxef04õ"?esؘFބ6t  aV}c9yݛH/tSi?θP@ڏuչHBoҪA' <w|J/O?a٨@x ر*0vF8pR/I?Q7SHMtw ,ܸN0lۑGl=&$`$]7U,-0BPEMMj# =tB5=*o8 pO=8/tY;<Tk}&1zyZ%'ㆲj SR߻jj,EgyNS}C@K QZ&hSmq\2q.2iأ ->,Q֪{ mSZ.Y 2 YZ