cfengine-examples-3.7.1-4.1>t  DH`pX̘/=„:}v6##rDNxhnEw_TFusH#=Y^69uflv:? N-w6a COItJwgbfȕbtH'毧\Zᣓȥ1ގĥ[̺8n^=|a}:HXxO|2lnn87ԱVP$~5 l?M=č[`âSaf DЪƘ{nO44a7b03490730485fc1bc64ed39e16ff941200589X̘/=„rV=t=d֎~̦} !Qĭ~l8m:H 0_uͫ<T]wytz.g"-1QT\m}DT:%ۏXrr Eح0#s|xޑ$R[(hH 2H Lſy.{]DM7ؙ]2{gCw ÝX.?tyHc|ncǰ0bHu 'T.5g.(Ӯ6vNȳɞQY }գ! w>9?d  8`dlp Q,Q Q  pQ Q <Q =XQBQI1QOOQU(UTU`U(U8UK9VK:\TKF%G8QH|QIQXY\0Q]tQ^{bcHdefluQv w<Qx QzCcfengine-examples3.7.14.1CFEngine example promisesLots of examples promises for CFEngine.X̘lamb51 @openSUSE Leap 42.3openSUSEGPL-3.0http://bugs.opensuse.orgDocumentation/Otherhttp://www.cfengine.org/linuxx86_64@j Z M(tnj x mI- B  7 FI q7 XJ@[ XB sF[ "2$<) 4C 7Z; ;0 ]PlUu A Sm:Snvl= l    5Th[_6--65`t=f \ 7a   ?zN  O1 {]D[ t NN Q   9 & B ?N|04 +H^i_k mW]M}e ]q o$  1A큤X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘X̘a897dd028a0aac6131514537bd4d8389c8bbc879558fe0a3e6d2cdec4e1e6ba19e11196301bdf64b01f453ef9e0baa7487fedd8bc28643363a1c92caf6981d06bcf2705fe0955f192b69bc572ca3c898f1c7b0437cd117b5d1596e696af1e1f50791d53e0ee085c206e91be5b06de8c190747171d58660a66424e3ceb1d4e6d54e1338a27bd8e7a30fc138aadf4d3de2e96a6218a9c4d082166a97a40c4228b3982fce556ab6da6a847879d165066e0e9243b849f88cbabe7199a935ae66d90843c82cbdad5903bff8a053fe70b725764be3aed7acc725b8a7dfdcc7bb2e64772054623b2cdf2427799ee49cec8f760590873b0559a9178b64c8a67c30e0f2263058c1618130bd6591e4d6dbbe10370132e1a9bf40440a8810beeeed22080856242a93ae4d1b4d68b8c8321a47e63ed446c7e31aba45d5c470d9a5c50cbd86bd95e30224723acc6a777e4532b3ef50b4824ece2aaf1e92f3285c321d1eb94d98880309776acc5ca8be5af27764aca341da411b2fa34891b41d18ff19a53c8450ede50c27fd019fd11cf4a8bbf2545a47d47d7183e341615477f2e17d4cf58c850ce4f94e78b88696309ef125c25fe94dddceaab7dc93f53cbadaa0e28aa2092335da438fba88c457f2c8d88bcd1c73107f06d48ad893c05fbe8f92cf587281e625dbc5c208ee7eb1a7ceb2bfe96552a849c3945c79833b846244cb2784c5a5493256669719b0f314c493a44488cce0300e8119c522e48016bed42e50320a05542fc2ec401fffb3e84440810c29558c16c853cdbc44972053475ac2c92b0e8f1c1189bfed64fc7f17eeeedea4a7be9475383c0f0f85f15a23e1e9bf430f8f2237568d1a1f414b7e499ad3e765147326bb21dacb811db26e3a7bd1e834bf804cb0a09141fef06834c9c2c5b613e9043609e4dffe3773914409a045c9d5bb3ac12813bef01c8d7ac3277b211499f24053848df65706af004b9c50abdeb89b312e6787a0b529c4333f0d67b60082b9baa5314dab06e733fecc013e9e317e7930723e04cfab97439c5badeb670aeb09c3190aabb7adca2a33d867a6e034e90200fa494495accd800084b8bd6a5ea72ae9697fca4c2e335d8a23d34bfa1751a64ef150d76021398d11c01ec8f149bbe03c36ea9edaa24251508c61ff46c103be1f05e4b71a5263b4709e7c0bc05edd47635e2584579ed9450e5a9cfb3394d59ff17c61c7a7aee86f31f0c1c0fe67c2b60dc235516f5bfb50472c8c44acc35f3d63a438738c35103ae165cc843d44c63b1df2481f965abce5b007353fd3978da652fc94f6b8a538037ec637ee9e35be01cbf7d4452dcddb7346cbbfa7fa83ac733e3dbc1baa01d1e218ed29840d9f694fe7e7dad46d8feb327268dfd53eb1ad5e1f3eb4ba1a35a5a085abe1fe6371ac352a90e8ae60724088237ab88520d2b2efcecb1b62701dafbc3036fd69542899813967231b4969c91de363268e158bf8d5508fe3612daa0b7d173456e09467ae6d1fe023f2c5f446a9f55f788ccb98b8bf70b89f7fa50626649328a72dcdfa51f934a2b884554eff2dae0d0120a8a2fd567d0f3ac523c8f96a30624dd85a95d42e1e7b849c288938a21c5752af422babd8add7f6c0d3dc48feea3caed583447dc2d36521be91c55fd00027db08e516ca7ed1ab997946607bb9e1347d890ceef0cfd7dc201dae504ea72cc8d33da136f152873173c5824ac29aa7413fefb313d25839c685621ed3b1cdc7ba1eba993c16300f55c040feae81d74c8624595b84ba09b562043a809be107fddcbe2eca653930cc1406ade9f4233666976bd70fc325620568fc295faebeb4d5d974d6b506c73464c17836e7bc82c81cf7632ea9f3820bf2039d74a141faba32b1eaae34f5ad6acaa6caf76bf2904a4edd552a056244253b23356c554b8c30ad7b790c4f0e9466e6719d94d3a0a446cbed769a78d85ad3c3e880d867711202e102a3e6e26e473bbc51ab54140b283807f473b75dd0c5f6d5e46b84f202f762456cfa733dcd6dd3cc7798c97154cae7fd66fa5995f494a6e0e663badbbe9b8bc695c311a24668ced6205061e3b405c146471763e84013b3b58b7ee8e56bf4e7bbd82fda8e468ef34b71af94bcf7e62a3c9742c31175cb1ae560a250967c874fd2fc6cdd84c21c7dc54a2cb6390687c7ad8bbfc485d8e840001226bb113ac2d354829a41f47f85484334958b65845c2be074741801d9b1e328b6ccd73671c1df02bfc5993bad6f28a0fc19db758e99192b6927b843894517ee3ec122bdb4d9d13b64e93e05b9dacbdb57aa70773da1c5cbec5ebad84daf77a7649bf1103384afca539794d34a63703d2f222808a0ab2d49f1bb65ec1f05e48e01b89a833b3c43f212e93315a70d202af22cc91cf9264117bfbf110b4dcc942bd0cfd5eea2dd651287fa452db384a88fe2fe765238b2a63396089fac7fc0f2b05efbba6c0518ad37bf631c886d1bde0e0b68915baab0ea294ab87f7ffdb5d618e3b166f831a09b47c5687cf8ce619c19a7d851c30112ecb4290d885ae1d0c1a1df779f47a04373c386a238e863fc54dea6d0770a51fe92dde97b6f04aff5ebce99003daf5a4805c853906b903c372ddd496aa693269aee6efd626fd58a9d6dd3c7034c372a06e8e081ea3564ff3b66f882e485b16bca774691b70c819700ca922b03aeb02fccc29896209f382ea5ce2a90f0f36f4cad1130c7233bb4ecb5f5fda1cd2cbf25630221e3625f1a5ae93b6d068a5299e19f1bdd30ef60854a3efb67c9c629caf74ebf507d13b7858cea6dc30ab624dc379329ab56e45c39ce49d00b12d248cec390b5feff5033684805d601623957496b9727395479e3195a717072598d2f1d76e4c3ec155255863462ad57e0ef46a41955c2a5d70bd6729a15b0509dacc244c679f0902dc08fa69cb61f969f655482966a8ef5e78506f3108a65e24ecc1da68800f6d29f3fc842bc56ec5392ad1c22b7d1d26eabccba8cfa0eee0c575e1caa209a3f041483714c7bb7006f2d512999f200dabb62a6f89f9f3588068c00c8e9a36f777c8d9df7715e3d8c1e2b83f97e368dec080f31d310b1cd315b9d1ff02cf1314fec767505d0d82982b92a5786eb66a156ebd932abd469ee4a4289d7dbb8c2946c0b90284a0c93beb06d4412677a59d47a94de329812cf57db8b5109676fbd138ad3430c55ae181f168bfefb18e8ceb895840bd1514d926a2766f7701083e75118ac9856c1554215991d0fe84482497414355f6cbccef44141d9483a1efa42caa569b18c527687faa90c769694e0d5480ca8670495a7c879e200acc389a0356e9bec1202da7168f13dfede97178c345646fee04153f7c1663fce8ab6acb6e61d67b04be6d3ed62b60f579f781309218d251d1c49a93095ae744f1ce07bd3c2cdad603a839c9a44ac999c729d68f193c4143386249b08596955f5d17414cfdb9695fa945c2c363b45d9e2f1b8411b5a6920d2fe57e921ada08880273c3bf421c9ead00528bbee0cb4fabb523b8f1be2fdcf9a131423ed7430a718128cb80b79b8a8c5f2d2385475b8d0fa99634ec2d8b1f9ce06912245e1eabfaeab7734892c52b783a22ac57b6e67b39a97509dee28570266cf4366a32935f79145cdfdb4dd6e12b76e9bfe384daffc15c6745f1ef799dedbc45492716e6607f5995ace1b57e4f29a3c8c64bf8512a342b5416e1e5d76f4a92decb9dabd86067a8669925e2650c92fe3a052aed294c27ae558c6c9f477f7c6c3578061df42987333bb1eaf21d0e71443de3601b8871d3edfc5c67e37bec48d7661f4eb1879b1b2e765d4d6ed8527b0d547c7bc3dc4fbb538594949aca7155429a7a9b66b3b1841379ff44c9a4710c92198d85e879423f26328ef9eb14b821b9063be98aef99ead05e5057f185ac77f8769d52b04ecda3e869c667c3c2f0ff0dc227baac63b726fdaecfa5ac3f8fe1537a4090492efb7a8b3410a913ae0997ea3f1434b07f15a093a372dc0629ad621d901bf400e1bdd65196fdcd428eed4a1c8610cf01445d350bce34fd1cc76439d1d2bbc57e5223a38bc2428e807ec51379187f9824a8838349857a9c892ee90893e3ed47e255dc87a7f548dd9e0cb864894de5973a89e2348d78fcee2654f3e3ae168d7c8d2a70ce4042f34d60c4892323730e1587f70ec65271f29f3fdae93d1488c928b6146b84217196235b4adb158b82afb09efcc338cfa01561e9e72dc18ba4a6076a354605c0801ce7f39da043d5b2cea2de2c1335b62caa8f8538eb4a7cd478529fe906f1ec9267abb30ca6fd8608ae41678f1fa0c8b7af5f3e3d45e2aa8b3ba2ed74f36dd70c005c5cddc5bb503b7a26c40ee7b539e61f584988177949b38a51b20af5348fb8bc50a8ce5505ef959276e9fe59ced0e2f110830132e55bbdf2516971867499de1fc51d46af5220551c1591e89df11a6cf379aeb23b60aaa0d3e11685827831e6e4ca6ae477e181c0b414708c07b940107715833811764f4ff5bbc0a49ba38dd847e75c5eab5974ab44eb42c0a1ff646d0d9918239a4b6200ae0bbdc3a7238c39a1b6740a93fd837c0ad117572f40795339c7235ebd4789c28d7b04fc2c66ec99c90588e8ff11ab8acfca91de7a79c773142c384061feb3cc14c1d0097cdc692b9ffb795bc3ae79cbe254c0d6308ce812ebe00bf7d23d21346d35f0740add8978930495a52e8f6d64781f8180779d9e60ab2891f41c67718f7abc2090ff75de1a5e7be39abcbd0dac5f1e6f02ddcb8524c56ac243de8ff3462f542f4f58f911949c803f39af3989a75bed38c9b3d68f0dcd08ae186e33946a0a94f83111f8e936a85e0141e04774736f20790bd92b613fcdb407deb1255b576c935abcd77ed0a3d8a75b4954256e40e2e84aaed010415af59dcb6b3436ff0f719159c21f905d9e72ff45e5511edd969eb6294afc792fa892a9a4fde93ed849742de8f4e233543373e624bb018156157c276b9f31f53fc5d5f01a3e7ae510ef2569c43e04541d51233c9c94aec3629b3edd5f0151d318b5d2ffbffc26e2daf018b3cdedda5f9178da7295fd8bfa6b745b1f302df4f06244ca7295fd8bfa6b745b1f302df4f06244ca7295fd8bfa6b745b1f302df4f06244c866df11d335c1b3ad15d5782bb626e55ff6fd57ff98e41f00df2ba31dc949327f949fe95734d992f7276376b4905c6508cbb2681717f140307da892c6bac9e890c82b0b5ef0232cfdd17a3e0d8fa6d0e32cbb9b88ed68e344212bdda34701c1f55d59492a0080c92336fc46774ad6514dfc5b927073c8040ac95f3e16ce646e0d7ba2d3a45fbe9a389ad50e496e8ccc138e9c9e1e5693356cdcb6b81e74f839d23d49a7b687c3e64ab9cb76f9c0ff2d42489783e384cf5c84ac6ed97a322069104a715336906a5ae8f1875521f8ada789b4290b332dbd5bcd9bb64c97bb0eeee6d2ee162d6afa51f2690153d2d8b0681232ff6d796256a9b3dd77847de0e7e37128cdaf9f635836ae7d589fcd91d62054b0dd3477af29f10153904501b52b0d0eb8c9baa646deadcb237dd7fc6335565a2e04691f4e1db960176404ef1b46480a20c26201f94f3d4611375be814b9d5a11d97886ededfa163ef0c22a0b29aaf54e6276f8b04a4106234a7465d3e628d05d05d12e1e6d4e7313067397c5a5f9a0880875b4edb885c83ec2fd3f76630ff36e77ffb40cc779fc0c08549ed80d109ccc49feb819da67fd2c62514f428875bbe10a4595982024ae26de11cb2798d919bde3a381757a8754d847dbe1bcdb0b023cedf81a4552af5b58861c087e3cc46da0cd3d832de938806bd7872bc7ed0d4738a61c1f9810a047683d5aa47485b06ecca0ead8e58ee551c126ffadabeb9ef8a452ffddcf2f2e8ff1f5074b837c9aac385fe0580046875fc7dc241c9e0cbc7e3fc15ffb904f6b3512f833525b4196c0797de5081c6385fe526fd82b8e5865869cdd1a0421868f74c11d8b16fc058064c4ace7e87dedcc284ba7b7d807138a43a49a183e90666af43b09773e09cb6237558067afbe297a62dfef4e280c0f0642905e0a1becd22f3d276284ce28dd5d267ab2754c91238d82986d9e19019d83c04e1d7907ef8ea952af9cf0a33bd9a09678e23b34f58138435d96186ca602ff9b92eef5b8ecaf671ff05ee97a06dd7f3d414c1cfdb781162e41cc4c519159ceeae05a69e76b9dfb5edbfee0c61818f0a590f98560c2470a074d8e50db731de50189ea67f642c4304e2fa071fedd9fc50bf0838c8e1b7c7750824d4d818f5b90f23d766cf0caa48eea4ccaf47d98ef46fdfae3a6b2949772d1985a7a68a6267e7d021275a6c0fcd501a9c773b5e85168f825c25e0036b920ee699b7dca5560423ac41cb885aa1848844e592e1bbb0edabe7594dfd9bcc035bfc0b7fa6f08864d9194e12952b871abd024a697b3e967070632e87efc52129bff1ca1b60311332a07aad9c440cd1f95f8c139fca17c6771e8e3187e39f205b9f97485ba5b8576601583180a9c6072b3ccddb72ca521123b63b2e3d2c801553f316205723f6348202d30ed5ea6ff75c986e5f068a99bc09d8e767bdb643a54e04c2081b800aecdbaadee3d3d1afaa8f42d112abf7388051e215e7c5ecd8284e2e4b4fda04ff54556d751782f5f83c8c919730c6f701068bbf1b920dff83f727817c152b0fe29e1bcdd6b2f436745d44ec4cdd0188aec30b6e6fa8b528f1b2504c5e1434596db9267bbc4ee5714849d0c94e0aa081d6cc60c975ce24fa3853df70f99563db690f12d4cd66bb644dd75396d37b3a826e8eb36316a976420272dfd61e88db482fb35bef367edec488ef755a223364c6c156fb214e123a15f2f514f8e92205b7563c5fd53f1444e799639962912e59a785941df92d65f5ecf0a359b34ed4e58b34afe27334ea21c30432c7976f017d679194d1ee5a311c62fb2b586771410166d28d7ad4ddd95848f77498645c457753cc8d3c766f13dc17524ab70904498287f5b2beca44d2d6adbaa21066481d8672bf14126d3b9a37bfda78af0dac4f882e28105eb5b4e6bdd3548d32e88bd5031b512e26a34bbc13bb02eb77a4355eb9adb4ff5d17cbd52a6ad331f6423517712aa3e1140bfa328ebfd6f5f1cb6445242b16807b1051d926c5dc355ef9bbbdf6decf07a18e1bce59d3e01795b7489f4932c3fbe08e60bcbe5be576480020ca67997ed5a24827baa3d4fb75dd3ffb1d7f708f76ea6aee93f8b5bb8a61fd4c0c0fe4dc6856ae4bcc60c4e13c3362bf723e7418d65a67d8553f8ede1ca9acb05f942c25b636d539d13b7a798cc3f2cba706553201ec9dc3d7c692d79bb7dbddbc573bb58710b28b463b7a40eed0f1fb4d2cca1e7684441ff1a968f22eca922e0b53575b49324cdb7d9e150a7854d13038b4a2491dd90e67cb2ccda6ec9f5372fe20f458901078ef3dc5fce5ae98b53df997d8398fc85412deaaad7592b4eb42144d41e63b8a29be197e4c175a5c6a0189d9e55f78c3e14fa7b489e20c525f99768b40d83b6697dd52daf99de7aa0f92e59fdb81265be539dcbf28924b9b68cf00f80df9350a2085133973ea4e6c4f9ffdd6cb5992806a5rootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootcfengine-3.7.1-4.1.src.rpmcfengine-examplescfengine-examples(x86-64)   rpmlib(CompressedFileNames)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsLzma)3.0.4-14.0-14.4.6-14.11.2U@UUa@U@U hU hU hU@U@U@TgT@TT6xT&@S;@SES@SrScSG@SFS>S=M@S=M@S;S2@S2@S(5@S(5@S@RmR@RRSR@R @Q@Qޞ@Q@Q@Q@QxQm=@QkQGQ @PP@PPN@PPr@Pmz@OWMO;@O2cO1@O&@OO@ONT@N/N@NtN^"@N[@NTNA!@N?LrbK&(JJ I4kkaempf@suse.comkkaempf@suse.comkkaempf@suse.comtchvatal@suse.comtchvatal@suse.comtchvatal@suse.comtchvatal@suse.comtchvatal@suse.comtchvatal@suse.comkkaempf@suse.comdimstar@opensuse.orgkkaempf@suse.comkkaempf@suse.comkkaempf@suse.comkkaempf@suse.comkkaempf@suse.comkkaempf@suse.comkkaempf@suse.comkkaempf@suse.comkkaempf@suse.comkkaempf@suse.comkkaempf@suse.comkkaempf@suse.comkkaempf@suse.comkkaempf@suse.comkkaempf@suse.comkkaempf@suse.comkkaempf@suse.comkkaempf@suse.comaeszter@gwdg.dechris@computersalat.dekkaempf@suse.comkkaempf@suse.comkkaempf@suse.comkkaempf@suse.comkkaempf@suse.comkkaempf@suse.comkkaempf@suse.comkkaempf@suse.comkkaempf@suse.comkkaempf@suse.comkkaempf@suse.comkkaempf@suse.comkkaempf@suse.comkkaempf@suse.comkkaempf@suse.comkkaempf@suse.comcoolo@suse.comkkaempf@suse.comkkaempf@suse.comkkaempf@suse.comkkaempf@suse.comkkaempf@suse.comchris@computersalat.dechris@computersalat.dechris@computersalat.dechris@computersalat.dechris@computersalat.dechris@computersalat.dechris@computersalat.dechris@computersalat.dechris@computersalat.dechris@computersalat.decoolo@suse.comjengelh@medozas.dechris@computersalat.dechris@computersalat.dechris@computersalat.dechris@computersalat.dechris@computersalat.deanicka@suse.czanicka@suse.czanicka@suse.czanicka@suse.czanicka@suse.cz- Update to 3.7.1 (LTS release) - Fix daemons not restarting correctly on upgrade on AIX. (Redmine #7550) - Fix upgrade causing error message under systemd because of open ports. - Fix build with musl libc. (Redmine #7455) - Long promiser strings with multiple lines are now abbreviated in logs. (Redmine #3964) - Fixed a bug which could cause daemons to not to be killed correctly when upgrading or manually running "service cfengine3 stop". (Redmine #7193) - Package promise: Fix inability to install certain packages with numbers. - Fix package promise not removing dependant packages. (Redmine #7424) - Fix warning "Failed to parse csv file entry" with certain very long commands promises. (Redmine #7400) - Fix misaligned help output in cf-hub. (Redmine #7273) - Augmenting inputs from the augments_file (Redmine #7420) - Add support for failover to 3rd HA node located outside cluster. - Upgrade all dependencies for patch release. - Fix a bug which caused daemons not to be restarted on upgrade. (Redmine #7528)- Update to 3.7.0 See https://github.com/cfengine/core/blob/3.7.x/ChangeLog for full changelog New features: - New package promise implementation. The syntax is much simpler, to try it out, check out the syntax: packages: "mypackage" policy => "absent/present", [#] Optional, default taken from common control package_module => apt_get, [#] Optional, will only match exact version. May be [#] "latest". version => "32.0", [#] Optional. architecture => "x86_64"; - Full systemd support for all relevant platforms - New classes to determine whether certain features are enabled: * feature_yaml * feature_xml For the official CFEngine packages, these are always enabled, but packages from other sources may be built without the support. - New readdata() support for generic data input (CSV, YAML, JSON, or auto) - YAML support: new readyaml() function and in readdata() - CSV support: new readcsv() function and in readdata() - New string_mustache() function - New data_regextract() function - eval() can now be called with "class" as the "mode" argument, which will cause it to return true ("any") if the calculated result is non-zero, and false ("!any") if it is zero. - New list_ifelse() function - New mapjson() function as well as JSON support in maparray(). - filestat() function now supports "xattr" argument for extended attributes. - "ifvarclass" now has "if" as an alias, and "unless" as an inverse alias. - Ability to expand JSON variables directory in Mustache templates: Prefix the name with '%' for multiline expansion, '$' for compact expansion. - Ability to expand the iteration *key* in Mustache templates with @ - Canonical JSON output: JSON output has reliably sorted keys so the same data structure will produce the same JSON every time. - New "@if minimum_version(x.x)" syntax in order to hide future language improvements from versions that don't understand them. - compile time option (--with-statedir) to override the default state/ directory path. - Fix error messages/ handling in process signalling which no longer allowed any signals to fail silently - Also enable shortcut keyword for cf-serverd classic protocol, eg to simplify the bootstrap process for clients that have different sys.masterdir settings (Redmine #3697) - methods promises now accepts the bundle name in the promiser string, as long as it doesn't have any parameters. - In a services promise, if the service_method bundle is not specified, it defaults to the promiser string (canonified) with "service_" as a prefix. The bundle must be in the same namespace as the promise. - inline JSON in policy files: surrounding with parsejson() is now optional *when creating a new data container*. - New data_expand() function to interpolate variables in a data container. - Add configurable network bandwidth limit for all outgoing connections ("bwlimit" attribute in "body common control") . To enforce it in both directions, make sure the attribute is set on both sides of the connection. - Secure bootstrap has been facilitated by use of "cf-agent --boostrap HUB_ADDRESS --trust-server=no" - Implement new TLS-relevant options (Redmine #6883): - body common control: tls_min_version - body server control: allowtlsversion - body common control: tls_ciphers - body server control: allowciphers (preexisting) - Drop patches, both upstream 0001-Do-not-use-insecure-MD5-but-rather-SHA256.patch cfengine-fips.patch- Fix Fedora/RHEL builds- Partial fix for bnc#923417: * 0001-Do-not-use-insecure-MD5-but-rather-SHA256.patch- Enable tests, 1 fail so document it- Enable pam and disable silent rules for make- Proceed bit more with cleaning, the RH sections are failing to build for couple of years. Better readability without them so prune it out - Convert the in-spec build switches to %bcond - Provide rcbla links to systemd services- Add patch to use proper SSL exponent bnc#922571 * cfengine-fips.patch- Format with spec-cleaner, this is just reordering, no factical change here- Update to 3.6.5 Features: - Introduced "systemd" hard class. (Redmine #6995) - Added paths to dtrace, zfs and zpool on FreeBSD in masterfiles. Bug fixes: - Fixed build error on certain RHEL5 and SLES10 setups. (Redmine #6841) - Fixed a bug which caused dangling symlinks not to be removed. (Redmine #6582) - Fixed data_readstringarrayidx function not preserving the order of the array it's producing. (Redmine #6920) - Fixed a bug which sometimes caused CFEngine to kill the wrong daemon if both the host and a container inside the host were running CFEngine. (Redmine #6906) - Made sure the rm_rf_depth bundle also deletes the base directory. (Redmine #7009) - Fixed monitord reporting wrongly on open ports. (Redmine #6926) - Skip adding the class when its name is longer than 1024 characters. Fixed core dump when the name is too large. (Redmine #7013) - Fixed detection of stopped process on Solaris. (Redmine #6946) - Fixed infinite loop (Redmine #6992) plus a couple more minor bugs in edit_xml promises.- Remove install-info calls in post/postun: there is no info page being installed. - rop texlive BuildRequires (there is no info page, and even if, makeinfo would be sufficien).- Update to 3.6.4 Features: - Introduced users promises support on HP-UX platform. - Introduced process promises support on HP-UX platform. Bug fixes: - Fixed bug on FreeBSD which sometimes led to the wrong process being killed (Redmine #2330) - Fixed package version comparison sometimes failing with rpm package manager (Redmine #6807) - Fixed a bug in users promises which would sometimes set the wrong password hash if the user would also be unlocked at the same time. - Fixed a bug on AIX which would occationally kill the wrong process. - Improved error message for functions that require an absolute path. (Redmine #6877) - Fixed some spelling errors in examples. - Fixed error in out-of-tree builds when building cf-upgrade. - Fixed a bug which would make cf-agent exit with an error if it was built with a custom log directory, and that directory did not exist. - Fixed ordering of evaluating promises when depends_on is used. (Redmine #6484, Redmine #5462) - Skip non-empty directories silently when recursively deleting. (Redmine #6331) - Fix memory exhaustion with list larger than 4994 items. (Redmine # 6672) - Fix cf-execd segfault on IP address detection (Redmine #6905). - Fix hard class detection of RHEL6 ComputeNode (Redmine #3148).- Update to 3.6.3 New features: - support for HP-UX 11.23 and later - experimental support for Red Hat Enterprise Linux 7 Bug fixes: - fix getindices on multi-dimensional arrays (Redmine #6779) - fix mustache template method to run in dryrun mode (Redmine #6739) - set mailto and mailfrom settings for execd in def.cf (Redmine #6702) - fix conflation of multi-index entries in arrays (Redmine #6674) - fix promise locking when transfering using update.cf (Redmine #6623) - update JSON parser to return an error on truncation (Redmine #6608) - fix sys.hardware_addresses not expanded (Redmine #6603) - fix opening database txn /var/cfengine/cf_lastseen.lmdb: MDB_READERS_FULL when running cf-keys --show-hosts (Redmine #6602) - fix segfault (Null pointer dereference) when select_end in delete_lines never matches (Redmine #6589) - fix max_file_size => "0" not disabling or allowing any size (Redmine #6588) - fix ifvarclass, with iteration over list, failing when deleting files with time condition (Redmine #6577) - fix classes defined with "or" constraint are never set if any value doesn't evaluate to a scalar (Redmine #6569) - update "mailfrom" default in default policy (Redmine #6567) - fix logrotate ambiguity of filename (Redmine #6563) - fix parsing JSON files (Redmine #6549) - reduce write count activity to /var partition (Redmine #6523) - fix files delete attribute incorrectly triggering promise_kept (Redmine #6509) - update services bundle output related to chkconfig when run in inform mode. (Redmine #6492) - fix Solaris serverd tests (Redmine #6406) - fix broken bechaviour of merging arrays with readstringarray (Redmine #6369) - fix ifelapsed bug with bundle nesting (Redmine #6334) - fix handling cf_null in bundlesequence (Redmine #6119) - fix maparray reading whole input array when using subarray (Redmine #6033) - fix directories being randomly changed to files (Redmine #6027) - update defaults promise type to work with classes (Redmine #5748) - systemd integration in services promises (Redmine #5415) - fix touch attribute ignoring action = warn_only (Redmine #3172) - fix 4KB string limit in functions readfile, string_downcase, string_head, string_reverse, string_length, string_tail, string_upcase (Redmine #2912)- Update to 3.6.2 - don't regenerate software_packages.csv every time (Redmine #6441) - improve verbose message for package_list_command - fix missing log output on AIX (Redmine #6434) - assorted fixes to dirname() esp on Windows (Redmine #4716) - fix package manager detection - fix build issues on FreeBSD - allow copying of dead symbolic links (Redmine #6175) - preserve order in readstringarrayidx (Redmine #6466) - fix passing of unexpanded variable references to arrays (Redmine #5893) - use entries for new {admin,deny}_{ips,hostnames} constraints in the relevant legacy lists (Redmine #6542) - cope with ps's numeric fields overflowing to the right - interpret failing function calls in ifvarclass as class not set (Redmine #6327) - remove unexpanded lists when extending lists (Redmine #6541) - infer start-time of a process from elapsed when needed (Redmine #4094) - fix input range definition for laterthan() function (Redmine #6530) - don't add trailing delimiter when join()'ing lists ending with a null-value (Redmine #6552) - 9999999999 (ten 9s) or higher has been historically used as an upper bound in CFEngine code and policy but because of overflow on 32-bit platforms it caused problems with big numbers. Fixed in two ways: first change all existing policy uses to 999999999 (nine 9s instead of eleven 9s), second fix the C code to not wrap-around in case of overflow, but use the LONG_MAX value (Redmine #6531). - cf-serverd and other daemons no longer reload their configuration every minute if CFEngine is built with an inputs directory outside of the work directory (not the default). (Redmine #6551)- Update to 3.6.2-build5 pre-release- Update to 3.6.1 New features: - Introduced Solaris and AIX support into the 3.6 series, with many associated build and bug fixes. Changes: - Short-circuit evaluation of classes promises if class is already set (Redmine #5241) - fix to assume all non-specified return codes are failed in commands promises (Redmine #5986) - cf-serverd logs reconfiguration message to NOTICE (was INFO) so that it's always logged in syslog Bug fixes: - File monitoring has been completely rewritten (changes attribute in files promise), which eliminates many bugs, particularly regarding files that are deleted. Upgrading will keep all monitoring data, but downgrading again will reinitialize the DB, so all files will be reported as if they were new. (Redmine #2917) - $(this.promiser) expands in files promises for 'transformer', 'edit_template', 'copy_from.source', 'file_select.exec_program', 'classes' and 'action' bodies (Redmine #1554, #1496, #3530, #1563) - 'body changes' notifies about disappeared files in file monitoring (Redmine #2917) - Set not-kept classes when files or commands promise should be repaired, but is warn-only (Redmine #2359) - Fixed CFEngine template producing a zero-sized file (Redmine #6088) - Add 0-9 A-Z _ to allowed context of module protocol (Redmine #6063) - Extend ps command column width on Solaris and filter on zone rather than adding it to the ps output. - Fixed strftime() function on Solaris when called with certain specifiers. - Fixed users promise bug regarding password hashes in a NIS/NSS setup. - Fixed $(sys.uptime), $(sys.systime) and $(sys.sysday) in AIX. (Redmine #5148, #5206) - Fixed processes_select complaining about "Unacceptable model uncertainty examining processes" (Redmine #6337) - ps command for linux has been changed to cope with big rss values (Redmine #6337) - Address ps -axo shift on FreeBSD 10 and later (Redmine #5667) - methods and services promises respect action_policy => "warn" (Redmine #5924) - LMDB should no longer deadlock if an agent is killed on the hub while holding the DB lock. Note that the change only affects binary packages shipped by CFEngine, since the upstream LMDB project has not yet integrated the change. (Redmine #6013)- Decrease install size, drop mysql, postgresql, and libvirt adapters- Upgrade to 3.6.0 final Bugfixes - remove drop-revision.patch, included upstream- Upgrade to 3.6.0rc2 Bugfix release- Set sys.bindir to /usr/sbin, expect cf-* components there Add 0001-Set-sys.bindir-to-usr-sbin-expect-cf-components-ther.patch- Upgrade to 3.6.0rc Bugfix release Full ChangeLog at https://raw.githubusercontent.com/cfengine/core/3.6.x/ChangeLog- add 0001-Simplify-and-fix-parsing-of-etc-SuSE-release-fixes-i.patch * add 'suse' class for consistency with other vendor classes (fixes #5417) * distinction between "SUSE Linux Enterprise Server" (sles) and "... Desktop" (sled) * distinction between SUSE Linux Enterprise products (suse) and openSUSE (opensuse) * extract version from VERSION and PATCHLEVEL lines instead of first line of /etc/SuSE-release- merge cfengine-server with cfengine. A policy server only gets cfengine-masterfiles but is otherwise identical to a client.- install cfengine.SuSEfirewall2- install cfengine-masterfiles together with cfengine-server only. A cfengine client will get the masterfiles from the server.- clean up /var/cfengine/inputs cache on removal.- remove '.unknown' from reported version add drop-revision.patch- Fix all .service files, type is forking.- Update to 3.6.0b2 - performance has been significantly improved, with a 10-20% speed increase over 3.5 when using the default masterfiles - agents support the legacy protocol without TLS envelope This allows upgrading of an agent before the policy server. - several general improvements and bug fixes too numerous to list here. - remove cfengine-bootstrap.patch, included upstream - split masterfiles off as cfengine-masterfiles package- fix build for RHEL * MySQL connector: disabled * docs go into versioned directory- merge with my last (not committed changes) * bootstrap patch - fix changes file * update 3.0.4b2 -> 3.4.0b2 - fix docs install - fix build for SLE_11 (MySQL connector: disabled)- use lmdb instead of tokyocabinet - add primer.pdf- split off -examples sub-package- Upgrade to 3.6.0b1 - New promise type "users" for managing local user accounts. - TLS authentication and fully encrypted network protocol - New attributes in 'bundle server access_rules' - New variable type 'data' for handling of structured data - Tagging of classes and variables with meta data - Many new built-in variables - Many new functions - Replace tokyocabinet with lmdb database- Fix packaging - rename cfengine-devel to libpromises-devel - rename libpromises1 to libpromises3- Update to 3.5.3 - Improved security checks of symlink ownership. A symlink created by a user pointing to resources owned by a different user will no longer be followed. - Changed the way package versions are compared in package promises. (Redmine #3314) In previous versions the comparison was inconsistent. This has been fixed, but may also lead to behavior changes in certain cases. In CFEngine 3.5.3, the comparison works as follows: For instance: apache-2.2.31 ">=" "2.2.0" will result in the package being installed. Bug fixes: - fix cf-monitord crash due to incorrect array initialization (Redmine [#3180]) - fix cf-serverd stat()'ing the file tree every second (Redmine #3479) - correctly populate sys.hardware_addresses variable (Redmine #2936) - add support for Debian's GNU/kfreebsd to build system (Redmine #3500) - fix possible stack corruption in guest_environments promises (Redmine [#3552]) - work-around hostname trunctation in HP-UX's uname (Redmine #3517) - fix body copy purging of empty directories (Redmine #3429) - make discovery and loading of avahi libraries more robust - compile and packaging fixes for HP-UX, AIX and Solaris - fix fatal error in lsdir() when directory doesn't exist (Redmine [#3273]) - fix epoch calculation for stime inrange calculation (Redmine #2921)- Update to 3.5.2 Bug-fixes in the CFEngine Core: - fix delayed abortclasses checking (Redmine #2316, #3114, #3003) - fix maplist arguments bug (Redmine #3256) - fix segfaults in cf-pomises (Redmine #3173, 3194) - fix build on Solaris 10/SmartOS (Redmine #3097) - sanitize characters from /etc/issue in sys.flavor for Debian (Redmine #2988) - Fix segfault when dealing with files or data > 4K (Redmine #2912, 2698) - Don't truncate keys to 126 characters in getindices (Redmine #2626) - files created via log_* actions now have mode 600 (Redmine #1578) - fix wrong log message when a promise is ignored due to 'ifvarclass' not matching - fix lifetime of persistent classes (Redmine #3259) - fix segfault when process_select body had no process_result attribute - Default to AND'ed expression of all specified attributes (Redmine #3224) - include system message in output when acl promises fail - fix invocation of standard_services bundle and corresponding promise compliance (Redmine #2869) - run fdupes after install- Fix SLE 11 build Add remove-am_subst_notmake.patch- Update to 3.5.1 Core Changes: - the CFEngine Standard Library in masterfiles/libraries is now split into promise-type specific policy files, and lives in a version-specific directory. This should have no impact on current code, but allows more granular include of needed stdlib elements (Redmine #3044) - file changes are logged with log level Notice, not Error Bug fixes: - fix recursive copying of files (Redmine #2965) - respect classes in templates (Redmine ##2928) - fix timestamps on Windows (Redmine #2933) - fix non-root cf-agent flooding syslog (Redmine #2980) - fix email flood from cf-execd due to timestamps in agent output (Redmine #3011) - Preserve security context when editing or copying local files (Redmine #2728) - fix path for sys.crontab on redhat systems (Redmine #2553) - prevent incorrect "insert_lines promise uses the same select_line_matching anchor" warning (Redmine #2778) - Fix regression of setting VIPADDRESS to 127.0.0.1 (Redmine #3010) - Fix "changes" promise not receiving status when file is missing (Redmine #2820) - Fix symlinks being destroyed when editing them (Redmine #2363) - Fix missing "promise kept" status for the last line in a file (Redmine #2943)- explicitly enable postgres, pthreads, openssl, pcre, libvirt and libacl - add libacl-headers.patch to adapt to libacl-devel packaging- Update to 3.5.0 - Final See http://cfengine.com/docs/3.5/whats-new.html- Update to 3.5.0 - Release Candidate- add rpmlintrc file- Build with libvirt - run cf-key on first install- Update to 3.5.0 - Beta 1- Update to 3.5.0 - Alpha 2 New features: - new built-in functions: classesmatching, strftime, filestat, ifelse, maparray - cf-promises flag --parse-tree is replaced by --policy-output-format=, requiring the user to specify the output format (none, cf, json) - cf-promises allows partial check of policy (without body common control) without integrity check; - -full-check enforces integrity check - agent binaries support JSON input format (.json file as generated by cf-promises) - cf-key: new options --trust-key/-t and --print-digest/-p - Class "failsafe_fallback" is defined in failsafe.cf when main policy contains errors and failsafe is run because of this - add scope attribute for body classes (Redmine #2013) Changes: - action_policy => "warn" causes not_kept classes to be set on promise needing repair. - command line option version (-V) now prints a shorter parsable version without graphic - implicit execution of server and common bundles taking arguments is skipped in cf-serverd. - WARNING: option --policy-server removed, require option to - -bootstrap instead - process promises don't log if processes are out of range unless you run in verbose mode - reports promises are now allowed in any context (Redmine #2005) - cf-report has been removed - cf-execd: --once implies --no-fork Bugfixes: - ifvarclass checked from classes promises in common bundles - do not wait for splaytime when executing only once - disable xml editing functionality when libxml2 doesn't provide necessary APIs (Redmine #1937)- Update to 3.5.0 - Alpha 1 New Features: - Enable zeroconf-discovery of policy hubs for automatic bootstrapping if Avahi is present - Support for sys.cpus on more platforms than Linux & HPUX Changes: - Make parser output in GCC compatible format the only supported format (remove --gcc-brief-format flag) - Silence license warnings in Enterprise Free25 installations Bugfixes: - Allocate memory dynamically to avoid out-of-buffer or out-of-hash situations - fix edit_xml update of existing attributes (Redmine #2034) - use failsafe policy from compile-time specified workdir (Redmine #1991) - Update to 3.4.2 (Bugfix and Stability release) Bugfixes: - Fixes to policies in masterfiles (see masterfiles/Changelog for details) - Fixes for OpenBSD (GitHub #278) - Do not canonify values specified in abortbundleclasses/abortclasses (Redmine #1786) - Fix build issues on NetBSD, SLES 12.2 - Improve error message when libxml2 support is not compiled (Redmine #1799) - fix potential segmentation fault when trimming network socket data (GitHub #233) - fix potential segmentation fault when address-lookups in lastseen db failed (GitHub #233) - execute background promise serially when max_children was reached, rather than skipping them (GitHub #233) - fix segmentation fault in cf-promises when invoked with --reports (Redmine #1931) - fix compilation with Sun Studio 12 (Redmine #1901) - silence type-pun warning when building on HP-UX (GitHub #287)- remove suse_update_config- update to 3.4.1 final remove cfengine-3.4.0.patch, was accepted upstream 3.4.1 (Bugfix and Stability release) New feature/behavior: - cf-execd terminates agent processes that are not responsive for a configurable amount of time (see agent_expireafter in body executor control), defaulting to 1 week Bugfixes: - fix regression of classmatch() failing with hard classes (Redmine #1834) - create promise-defined and persistent classes in correct namespace (Redmine #1836) - several fixes to namespace support - fix several crash bugs caused by buffer overflow and race conditions in cf-serverd - regenerate time classes in cf-execd for each run (Redmine #1838) - edit_xml: fix select_xpath implementation and update documentation NOTE: code that uses select_xpath_region needs to be changed to select_xpath - edit_xml: make sure that text-modification functions don't overwrite child nodes - edit_xml: improve error logging- update to 3.4.0 final- fix systemd check (use systemd for openSUSE 12.1 too)- workaround for potential buffer overflow- honor filesystem hierachy standard (FHS): - build with --enable-fhs - honor documentation - install in /var/cfengine - support systemd where applicable - update to 3.4.0b2 New features: - XML editing capabilities. See the documentation for edit_xml body. Note the new dependency: libxml2. - Implement inheritance of local classes by bundles called using "usebundle". By default classes are not inherited. See the examples/unit_inherit.cf for an example. - Moved from Nova/Enterprise: - POSIX ACL support, - "outputs" promise type, - remote syslog support. - packages_default_arch_command hook in packages promises, to specify default architecture of the packages on the system. - packages_version_less_command / packages_version_equal_command hooks in packages promises, to specify external command for native package manager versions comparison - Running in Solaris zone is now detected and classes "zone" and "zone_" are created in this case. - VirtualBox support added to guest_environment promises. - guest_environment promises are supported under OS X. - The "depends_on" attribute is now active, for the partal ordering of promises. If a promise depends on another (referred by handle) it will only be considered if the depends_on list is either kept or repaired already. * * WARNING: When upgrading, make sure that any existing use of depends_on does not make some promises being unintentionally ignored. This can happen if you are currently refering to non-existant or never-run handles in depends_on attributes. - methods return values, initial implementation - New format for cf-key -s, includes timestamp of last connection Changed functionality: - cf-execd -F switch no longer implies 'run once'. New -O/--once option is added to achieve this behaviour. This makes cf-execd easier to run from systemd, launchd and other supervision systems.- add bootstrap patch * set correct "workdir"- update to 3.2.4 * Fixed failure in network transfer in case of misbehaving peer * A few tiny memory leaks on error paths fixed - fix post/-un for SLE_10 (install_info) - fix deps for SLE_10 * {libsoname} Req glibc - provide default *.cf files in inputs DIR otherwise init scripts will fail- fix pre/post scripts * RHEL/CentOS does not know "SuSE macros" :(- fix deps for CentOS/RHEL (cron) * Req vixie-cron- fix cron file- change workdir to /var/lib/cfengine/work * adapt init scripts * add new dirs o /var/lib/cfengine/{backup,failsafe,config} - add cron file as Source10- move "server" stuff to subpkg- fix init scripts * check for existing "promises.cf, failsafe.cf" - create symlinks for sbin_PROGRAMS- update to 3.2.3 * A few tiny memory leaks fixed * Improved performance of cf-serverd under heavy load with TokyoCabinet database * Full list of issues fixed is available on https://cfengine.com/bugtracker/changelog_page.php - fix License: GPLv2+ -> GPLv3- update to 3.2.1 * ATM no "uptodate" ChangeLog available :(- add libtool as buildrequire to make the spec file more reliable- Remove redundant tags/sections from specfile- lib pkging policy * new subpkg: libpromises1, devel * disable-static lib - rpmlint * incorrect-fsf-address * run-level 4, init scripts - subpkg doc * documentation * added cf3-Reference.pdf as {S:1}- update to 3.2.0 * New bootstrap method with single-command bootstrapping: - cf-agent --bootstrap --policy-server 123.456.789.123 - Associated policy template files are added, partially maintained by CFEngine - See for upgrade procedure * Bug fixes for file-editing, package versioning, and embedded database corruption (We recommend using TokyoCabinet instead of BerkeleyDB if building from source). * Improved upgrade path for Nova. * Patches for improved run-agent concurrency * Reorganization of documentation and community resources * 100% on regression test suite on 3 operating systems (Ubuntu, Debian, SuSE on x86-64 hardware) * Support for multiple release environments * package_policy update and addupdate now check if user-supplied version is larger than currently installed - updates only if so * Help text of cf-report -r corrected - a list of key hashes is required, not ip addresses. * New Emacs mode for CFEngine policy files (thanks to Ted Zlatanov!) - After beta 1: * Warnings are on edit_line changes can now give greater degree of information without spamming promise logs * Class expressions parser accepts '||' as an alias for '|' again. * Invalidation of package list cache on installation/removal of packages. - After beta 2: * New option cf-key -r to remove host key by IP or hostname. * Added detection of network interfaces which belong to BSD jails. * Improve robustness of multi-threaded code, in particular fix problems with spurious acces denials in server and losing of authentication rules after policy reload. * cf-promises accepts option -b matching cf-agent, which causes it to do not complain about missing bundlesequence. * New functions and(), not(), or() and concat() to ease use of ifvarclass() clause. * Full list of issues fixed is available on https://cfengine.com/bugtracker/changelog_page.php - some cleanup * ./configure .... -> %configure with default datadir * macro usage * use default install to docdir, add missing AUTHORS, LICENSE- fix init scripts o RH, CentOS: fix return of checkproc, start_daemon- update init scripts o complete rewrite, used skeleton.compat- update to 3.1.5 * New class parser, '||' is no longer allowed in expressions (use '|'). * Class setting in the promise types insert_lines, delete_lines, replace_patterns, field_edits, vars, classes is restored. * suspiciousnames implemented. * New function getvalues(). * New functions parse{read,int,string}array to match read{read,int,string}array. * Testsuite added to check for core functionality. * Syslog prefix is fixed to say 'cf3' instead of 'community'. - see ChangeLog file for more info - {name} macro - add BuildReq postgresql-devel (PostgreSQL connector) - remove Author from desc - no autoreconf - keep libs - build support for CentOS, RHEL- update to 3.05p1 * bugfixes- update to 3.02 * cfengine3 is a major rewrite, much simpler but with many new features - added new init scripts - remove all the patches- fixed resource leak (bnc#533579)- fixed memory leak (bnc#523789)- fix %preun script (bnc#487781)lamb51 1489803494  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQ3.7.1-4.13.7.1-4.1cfengine-examplesabort.cfaccessed_before.cfaccessedbefore.cfaccumulated_time.cfacl.cfacl_generic.cfacl_ntfs.cfacl_secret.cfactive_directory.cfactivedirectory_listusers.cfactivedirectory_showuser.cfago.cfapp_baseline.cfappgroups.cfarrays.cfbackreferences_files.cfbadpromise.cfbadtype.cfbsdflags.cfbundle_return_values.cfbundlesmatching.cfbundlestate.cfcanonify.cfcf2_integration.cfchange_detect.cfchangedbefore.cfchdir.cfclasses_global.cfclassesmatching.cfclassmatch.cfclassvar_convergence.cfcommands.cfcompare.cfcontainer_iteration.cfcontainer_key_iteration.cfcontrol_expand.cfcontrolclasses.cfcopy.cfcopy_classes.cfcopy_copbl.cfcopy_edit.cfcopydir_copbl.cfcopylinks.cfcountclassesmatching.cfcountlinesmatching.cfcreate_filedir.cfcreatedb.cfcustomize_by_named_list.cfdata_expand.cfdata_readstringarray.cfdata_regextract.cfdatastate.cfdefaults.cfdefaults2.cfdefaults3.cfdefinitions.cfdeletelines.cfdepends_on.cfdepends_on2.cfdifference.cfdirname.cfdisable.cfdisable_and_rotate_files.cfdiskfree.cfdollar.cfedit_column_files.cfedit_comment_lines.cfedit_deletenotmatch.cfedit_insert_fuzzylines.cfedit_insert_lines.cfedit_insert_lines_silly.cfedit_passwd_file.cfedit_passwd_file_basic.cfedit_replace_string.cfedit_sectioned_file.cfedit_setvar.cfedit_template.cfedit_triggerclass.cfedit_xml.cfensure_line_present_prepend_append.cfenv.cfepimenides.cfescape.cfeval.cfevery.cfexec_args.cfexec_in_sequence.cfexecd.cfexecresult.cfexpand.cffailedcommand.cffailsafe.cffile_change_detection.cffile_hash.cffile_owner_list_template.cffileexists.cffilenames.cffileperms.cffilesexist.cffilesexist2.cffilesize.cffilestat.cffilter.cffindfiles.cffix_names.cfformat.cfgetclassmetatags.cfgetenv.cfgetfields.cfgetgid.cfgetindices.cfgetindices_and_values.cfgetmacaddress.cfgetregistry.cfgetuid.cfgetusers.cfgetvalues.cfgetvariablemetatags.cfglobal_list_expansion.cfglobal_list_expansion_2.cfgrep.cfgroupexists.cfguest_environment_kvm.cfhash.cfhashcomment.cfhashmatch.cfhashuncomment.cfhelloworld.cfhost2ip.cfhostrange.cfhostsseen.cfhostswithclass.cfhub.cfid.cfinherit.cfinsert_users.cfintarray.cfintersection.cfinventory_cpu.cfip2host.cfiprange.cfirange.cfisdir.cfisexecutable.cfisgreaterthan.cfislessthan.cfislink.cfisnewerthan.cfisplain.cfisvariable.cfiteration.cfjoin.cfknowledge_driver.cfknowledge_txt.cflastnode.cfldap.cflength.cflinking.cfliteral_server.cflocate_files_and_compress.cflog_private.cfloops.cflsdir.cfmaparray.cfmapdata.cfmaplist.cfmax-min-mean-variance.cfmeasure_log.cfmeasurements.cfmenu.cfmergedata.cfmeta.cfmethod.cfmethod_polymorph.cfmethod_validate.cfmethod_var.cfmethod_var2.cfmodule_exec.cfmodule_exec_2.cfmonitord.cfmotd.cfmount_fs.cfmultipassvars.cfnamespace.cfnamespace1.cfnamespace2.cfnamespace3.cfnamespace_class1.cfnamespace_classes.cfnamespace_var_meta.cfnamespace_var_meta2.cfneighbourhood_watch.cfnone.cfnth.cfnull_config.cfoccurrences.cforchestrate_chain1.cforchestrate_chain2.cforchestrate_delay_trigger.cforchestrate_dominoes1.cforchestrate_dominoes2.cforchestrate_dragon.cforchestrate_dragon_load_balancer.cforchestrate_n_of_m.cforchestration_hostlist.cfordering.cfpackage_apt.cfpackage_bundles.cfpackage_freebsd.cfpackage_latest.cfpackage_msi_file.cfpackage_msi_version.cfpackage_rpm.cfpackage_solaris.cfpackage_windows_feature.cfpackage_yum.cfpackage_zypper.cfpackagesmatching.cfparallel_exec.cfparseintrealstringarray.cfparsestringarray.cfparsestringarrayidx.cfpathtype.cfpattern_and_edit.cfpeerleader.cfpeerleaders.cfpeers.cfpostfix.cfprocess_kill.cfprocess_matching.cfprocess_matching2.cfprocess_matching3.cfprocess_restart.cfprocess_restart_basic.cfprocess_signalling.cfproduct.cfpromise_knowledge.cfpromises.cfrandomint.cfreadcsv.cfreaddata.cfreadfile.cfreadintrealstringlist.cfreadlist.cfreadtcp.cfreg_multiline.cfregarray.cfregcmp.cfregex_win.cfregextract.cfregistry.cfregistry_cache.cfregistryvalue.cfregline.cfreglist.cfremoteclasses.cfremoteclasses2.cfremotescalar.cfremove_deadlinks.cfrename.cfrepairedcommand.cfreport_custom.cfreport_diffs.cfreport_state.cfreporting.cfreporttofile.cfresolveconf.cfreturnszero.cfreverse.cfroot_passwd.cfselect_class.cfselect_mode.cfselect_region.cfselect_size.cfselectservers.cfserver_callback.cfserver_copy_localhost.cfserver_copy_purge.cfserver_copy_remote.cfserver_flatcopy_localhost.cfservice_catalogue.cfservice_catalogue_separate.cfservice_disable.cfservice_start.cfservices_concept.cfservices_win.cfsetuidlog.cfsetvar.cfshuffle.cfsoftware_dist.cfsoftware_update_version_yum.cfsome.cfsort.cfsplitstring.cfsql_table_structure.cfstorage.cfstrcmp.cfstrftime.cfstring_downcase.cfstring_head.cfstring_length.cfstring_mustache.cfstring_reverse.cfstring_split.cfstring_tail.cfstring_upcase.cfstringarray.cfsublist.cfsum.cfswitchcase.cfsyslog.cfsyslog2.cftemplate.cftemplate2.cftest_environment.cftidy_all_files.cftranslatepath.cfunique.cfunpack_method_calls.cfupdate.cfuser_edit.cfuser_edit_method.cfuserexists.cfusers_type.cfvarclass.cfvarexpansion.cfvariablesmatching.cfvarnet.cfvars.cfwarnifline.cfwebserver.cfwin_dns_client.cfwin_emergency.cfwin_registry.cfwin_schedule.cfzenoss.cf/usr/share/doc/packages//usr/share/doc/packages/cfengine-examples/-fmessage-length=0 -grecord-gcc-switches -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables -gobs://build.opensuse.org/openSUSE:Leap:42.3/standard/86f46e4c34d8845fa665a9d7d1decec8-cfenginecpiolzma5x86_64-suse-linuxdirectoryASCII textHTML document, ASCII text=HN~A V%}C?p] crt:bLL' ͷ{Lqe|vKw K4?R k],=x qB]}ԻdG~{:2\!R^hOd*6pC8zij-H`tPӼm:q(elRiYT`M]ܲtJ^ڱawPn/ц~l$d\؅e@Oz\;T|È3tEfփhU}RݳL9koԞY-.a,Ew*jj;L)Ri·s9+Jϗjkz9@P8G#H~^ua8D}՜D`xS~ `f-pE9 uMs?Ga-‰W6'+z cEi_eOfWc:ȄJq-*u` )r;;ӖF9O*ye>,<4L\%,z?DQ_co љZ%@0aM_F~{K`ݸ0<2R;=sz"3 %!Zhe @K\k7jTۓ C:s/9.ۙ$XɨUvzq>f^P-Y%^bڢbj͇d{WZYSg\࠿1[ode+RXlKbL{װc!gS.y=2 r ܹB 1eV'6R̚tVG˜qot:H@d81FUg7U 2yp=V\[9ni] e凖Œ:'G#'j'2ObTdvbdje`T5C+ZUܖ)'70O쿪}+MPd?.$L#)VgX9t8ٜMozEB=܍ىj3JKC0p|OI !W*{6vr{4>"a$KR!?Lxykyg[,KjYޠn$N/)W|XnR#& gXD™RKgy(E=1mٯXl3ʔ?W8d.O!߼2_HMd5JƯ\=P]lO*к'@>&D$vl*9s,,y)im!DEU4N" y(&vxؔдDYyH;e#0~ ;>K僙0N{9$ȉu0#P}$t!FK y_@G159Ka"/۪H{ @eeE7*Dvb&,kcLGw ZrD..?-18B4=ǵ6 JôƮ?<Ԝ8^Ҏ,.(0ܑ}/yvPJ_q៽C]Rxv߉-awWtg05YhAҎusVl\|>. B9V5XBF}NY+k3<Ķa uG堯t,,U34@dm?N0K/7jMM}VַAWYaMNT_!A EGZE/OkKCCM XGm(ݎ)nY$lޝ hǿzdq5ֆom̬ΘLrR1Y63_7@=Aj_vi-L7+Hν>H]C@tQ^x"Jdӟ?3rb|:B! *+Q91rDKY(>ԴPJ2cTIDLC?DM@?|O'Jv.wS%L3JQ^'8Q+ g}Jdu丱]SwP9fnʄ!d5GʿzVAͰ~iӹV>G6݌FĒ` fp>BD FD_/%sR9#Է֬_kw7 ϭr呖0ehqC$]~R֬yCQ1|No ;4#G+̈zXR=:! ER|Zg[ KCa&z>S+-ڙ&9D KP<;rht ='WaG=bs>H_pp :*=z<wlV$Iudq2Ud %P12bf:f(u.`Ci2MU@AIX#s'"M4U `oXM4 ""4Og/ u-di3; ꠞvkሽwc&",-FI#WIcur蹶 54Ԯٮ'5'tZXSNk/L,fBɋLlUR`e(Y"t7 ׂ`n`F]:u>([' ܹtER#>#'夑=$9A!m] *QGUl]b)%zTsf9 '" IMz5>蠲vRWrt}nG"z_}F4d%|0!awY:f0 ( !K}ldz~Xٽv(ITwS'恁tQ$5S'Zsb.3Zƹ]@;00~sJ3( Br/қMVVIf+.bZ2XSr7&78=Ssngñk&p@մ t2=nU/͊"/c(6JA.䯕YPWhmOF<3LeDx.BkNJu+vt?NaG}KԻ5>`W#Sb3GNPŧbGZ]1e}._QP-6مJ2 %s_%7zIPKRqr2,JgqՆ;C_hb/!1%.vLEXxTZ#b 2Tf" f:&ҰE5˼5y)p.LG-c`jakġZvݬ5Xb; zNX`ˠ\5APG:f3&D)"17ChVW{{SY, hpW8BSϋLL95 {{<%LmAӸdҍX#Ro( z w-z 5 _ g)Ue~fۏcCwJB);' ikgF-)"eW΢UF6vr{O(Y=@x: oI*5Z-C324yDHW/e 1ˊvb{^D|3χ*Er :L-ܤϲ=[-axykb-/H4D,v͙l5{aFS;AAgFmnZwh5 /Gq3K^ٗ}Ѽvr ѶɚBN8>DZm!90ٿR OJ)Q]H92YP` hUafEܨK/dmrGT4SyвH Z{PڃEm7X5t'$Nr[+ yM:&hוrf>J^Lu0iW3ǭpP|O# B[4VP_,>q/o$+ɞ|v.\LU^{fa /7{2NV(?{NB,Q g@v_h8} OX[gO=`Βj)ݘgoE(^Fu:ZաiP>9o^a4|~AR6jz—~XX\)v+v=.3Z3NѾmQ_ 5~"z8K*A%vw");Z+(攁ʸ/N3}Ad``|Ȱ9$櫱^hB4/9bz11D&#|kKoYYSqBaz 9X yoؚf\TzyPN7Uvڇ%)Cy*){u#ojͪ!'-"%V|6JEDtUh 00f9#E=L[hzF:7U 3@=FONpǑඟwYcz&bVHCy>1@Rotb#5FүQk2{Bz#..C 9apפ aSb!.VjE-5:.^ཟ@FVa12]'8 0'$J Tx֎.n ͢'TfNðg=^ՠBD|'Dpr\g9ۚyY (/CW/Yy0,򳀖7 OjGqE sa*(LA#`񘲷= g'/\U{6xMg츻\^'r*OX7`3Y?%l9'vԖhM6ý/"}DŽv!( .=.'.^]T!pJSVم qh{epйHv">^a;!IvJOJ2A%EiPO(#-$X=X$3#{AIxJ%LS]}{2bTݠI(.\{jʬ"<K=Kd;|[|#@zkk+@D[tϜYU:4(T E'}bVv%U5L [;-B_f +pH6Y˃2]{Q%&I֖T_x/-|pH%EQ/p'`>S0V nMyx`T0??, ?$JI v݋B(iIVt]RAGHGPn9kJ[p!$qWqErn3(̋XRقSދ`!{o5SV2±oL2E;7ç&w3̞G7{ v Eul8 *5[_~'- > vIuhB=Jf~)ml c55䆓 Bk)Kc;_]D,{շNՄ vBX@ջ ]JHQRZ-'B$= . P1ZJtskxABr{/q&DD2mŠrae>s$R:-dp/)a`|aN2b)E  >_si nɫ:rX+/D%-؝8up2`J̓Zw򕺎kpspb24sJ.. tU9t?[[=tػЉTRzJ>Yڨ&!Tίu2J.V@$~c%1F$7n 9;[{2J|5 ȽEԤXTݜ,#4ɝb=ׂV=Lg%sg^PjzV#BL4;Z$ESk`|/{pߜ1xh]7}!ɔihΕ$&mdh]ŐЯ hK?]G-4)\M~hcNҒwVl-UDElzWk(FVqG3*ŮS%}iǟ:*7ѵZWR ^{~a[,!8=C'Z~i^{) xش.3rAWgЦIERd{Dϟ% ޥ !F\_d%;Dkp{c3s!@y:Œf^cwAv$j sH2w &B8XBq?0nhf9"@\r8pk1\{?u W?Yb/g}CjSp8Pq>1.oW'KG )lQ :sJQ :"eՄsGS\dޡkP|HJ.Պ;}b_YZb2|Cn~!#!ߠ/;Cͺ/9}~phO+3ݠEN{|Fܒi#XMJ[ (ugRB(~"ѻD]f Pl>9a}%9[4/8({- 2f$?h``/},;^dتęc:V.n[4&vR"qZlwEC˵pFt(N |^ڍdž7vZad!94j1)44sʲNT%ėABZ0Lzc9#<8\I6{4]Ŷ@9+Ju3@΅o a2 cA6* ǤzXem61} 5H.r=܁Ԍ4DFr]oESdGg3г1h`xP$ ™ ~Eʭ 뫽hE + uJ;c$%~qʫdD$#ӘL^Ҍ㱆0W!i(No} ׬/tPh?CL_?XDC #bH ׎ollׅA ^q%^S.Q"4t ,"wYt:P7W~2~x6˓hDP]tEs?*a2KJ&2T~ 6(  fl-\´, d\/ 1.90( Aa.ek W vvïQg.X<&B"܇DcՀ8Fj򭩲[$u*?k#_՗%ۤe'+5R0MQ#xȼ6eql55ҳ͡ep:G (Kf?`9sp`4uI-cv9%R%4Z_/K2i R6 U7n*A Dԗ΋T7 z\]0C_uЛ;QhɭLK Xfoݤ|$/7# Ek{ Up)XRC"ZS&,0@(V(prf>8WoC|b>l/ݛ:4#1,y#arP [Pe&'@QsӇ`-*IrI<(d[m}M#7<MAU~j&B~׈i?\[ mX֥P:(CK'+\&lrtN$yXM,gB"% ݿN",Eb_@I&],*;Λu96;q18TړX򚐖-s .@ 0p/6{Ȥ.w[L=Jq2`rhC^y,f['JhWozЌ% 7 _Ӭr;;胫MoKV9tW R8Vh \V$qQ){m@% |&(#")FjdVMݗ]S;ThLe:rulegnTv~\@0olyNʲn|`'`ƛvx?@E ʈ &ܞuX`yKS;BEnPrȪ X~z|p2U<$?:BNԦ nI~Dk27RŤ,DV0%# ШҌaN5U*kÞxlvO6K뇇=`n`ܤL++KXL?X!w 3|r.{4>T5Yͷ;[iڰϲ:9}nQnb"x\-'9V0 ~A8sG@#/dg'k MH>+o *z,Xb1xS#t!P7pۓХAwdaF9guz ֡K6X8RJX˴ebv# ` Z&2.m[:mÖQpW3<9G &$vF:azL͂ eK|hߦ".JA!$׻I5 ^^?2XPR5E.:t|+ñRe0V ٹXZ\![9!A-8+%nPLH O;OTȺ^*_C?,K #@ywlFCr_v*v2 kO|Ѕ=X9b\t8y5*+,y PnD } 9`mE\&zܼ&]/:!H ?cWMPZm`eƜ 1w;h+'܂=*? } iߗR@Fl>9b 3UMR4{d*~hLEjRt5bRk1q%CD"b` plLwfU[C#$(e^)T_C[0lh[lQÍ kRBRrS!^yON(2Rz.2ϫDed:PWU/X <\fAA w(~f~~oyGN@fF4kB$DG!ȏTLh>N[TꃳRL^th l׵86J/Lo(ݻQ垈{6#;# Ur'fx)V$[76ދk!+YO .$cLS2Pv<`xlf<\UpϺ#Ƙ,Z`ʛAO:TD re\j]t~{y:hLaPDi|r*DǮZkxk2Wfɓ@ts>=ܫ{.JQ6j35喽 Azx*0w_׍ UŦ,${F~6,h\AZ^0 yJ=@$R*[M-d'{e(6#$_9:='jUn{וO׉CĞm=ę12N}ZH\ '҃q\se*jC R'h,ʮG?{(]`똖monDTcx\+9h`5K"X:@=M`nLfCX-KvV7]Ind0.cbn["{Y!11*pBmq:쬧Mܷ*p\^՘(@> 7E4ЅL[:d[%z UËMِ\C;〃jLeС)5ɧtǙ3ܠm̰ba}&-`1I懄`bQ1Į,=.PD88J30??k$x^xbzcf!NlaU:]dmYTERԴGޡ~ >aEqʋ[R6P#*\*P2^o!b: .EeO]90W29;uݨw>O~.AG:OkajLCJzm($w(^VR2 >k \9/_$WdK@۰@XWAK: ̫{ᵳtHkr ϗTaQ1 ⬑ >PI\f #)ٛFe!ž6H|O9b 禷O^[mWZ|gyP^R˷6ݑlK3@L7bB점Nw #x_G FC ~XPMO>0(`Ե[נ[ŝv!«&/ * 2[ԕ d HEWs8W_ZYQd5mB} =X{~Nk"%XfG"r+?Ka,VEajx׍=!l:KI4zC_8DYX f7;+|^W GApuAr7N|pQ}m d Ŵ@RbԴ+ڌ% ZLPJiV YKh+lI-FvDh7O9wyvuKH/"&@37(]^j0Wp*Vfznvj*(ڃD$O8oa#ɾ7=-hne5W,vut,4Jh/U ͘1[u/E}Ro( XِpDӳ$BmJ]R{cV0b2jfKg]eUAEFLn AN+ZuO>l-g8 *&Qk[By!je̸ mX}B݅.u,9K}Vz{P1Cb< q1kX-;"T=M%کS/}Y4}S/$W]:TbXL̼~ހC>x/o2m!*6b&n$%fu2n׉G^VZ"]VjRx~qPFeɲP_{-u.x_39Yz!YI (xe ꧟ո t7"g&'d"m_ s}GD.ؕn4Nf{ݑ hdXҚKhr(( 8>}Ӌ v7&@?E~Sd*O׀IC{=4'ӜC\qT"DoY+y;?/ş6wYC]?cȽ'G벙"a87&IW iQtVLtԦ6(;_y)EuDXt2O^a.6Rm#gĞt,d\a?K,M]F:gu.Wv3ǖq}|@v(s.C\=`dž P> S(ffKІG\-o,e2v~jDG#Ut*]AWUYY=Ve-Y25dn}6jՃGu՜盕uP:,F /.+x978QPuuC<|t>ݩ $ݑѺWo[CHqd@(ԉixz5w+bmM#RJNYuamǷjĈƗ )8PZ)s>W+uݓ줈I! MQ^Eay/d'7_%:MK5|_#&1q{tʕionu~;_Zř*=q,xxm`F0<-K3Aa3Šf($nJ~L],dΝo,(1#ڹpvvʼnA}g tm3}wFXmBĤ3( 珼ұEq䫪~{zv^Jdc@>Hi\ x0Tnu,<kt*NTGGu9\d!p 'w5޽a4O3'W'[ yn TOUhֆ44j>#3M/ v׶sHDiR>5l #   +4EB"Qu YY_5]d` 2q\_ >.10d]{/&gЉwG;p 75Dmf-WU)׊(M [nu,[M<)޿JӜ;hԫX}j ˆAjG֒b-EJXw ^twP{ڽss޸ Zrϟ_ā\ bkuHcP?V/ӡ|R&:ROTF} jOQ'^B]n8pQf9~N~_ͮ?3?NyƿaEo5λ&A DOw%,~Xq5;=Ka0:f${tAUWfASܓП?X-Ɗ +6ezi.a(-d Հʥ1EwJE>TlHuGsnv=%^6uFΉ`w'Zh݉؊^b)'۩ؑ ^91Tj5%⠞qRAhmWڴ"]{8 ZvXt߹ 9ʜx:W1DH/GX/ZwLfhk | *їcoSs-7 |"tuI%kYyM&<Ȍ6$Nxa@l{q7(s-ڍWLd#ـA~u)9oy³UO!܈}&]Vݲ3 [cB {?)op:h*סX݁niMX!-`B6[F>R\*B,2eB]0#sa{D5m$\-s Jﶥ"DmaUF _q7AI(hX#AN j%BoxV0+R|IHTĈ]hq#W=K! ^S2=39z N(lIzRK!ݟwT,K2|PMkf|xm69h x?\c^nr. 83H^b_4a=uyN ٗ[٥!Зy.%Ly(OD&aw޴Q ʝɋ#"@ v84ιײ<~OZ_Iqw?S~g56iPtӉXKpgh p ߷mSQ)52%Mk,^7[i*45|-&14 TaְszXdMb}/It.7@qO)T9iJAk~VNyAz?])M1V0!xl@G)"xиKN,h ?lm=7lHB->[;\پm|[/An3LTdS}m{ E$o>` UnJf AnL2N!p&E:/n\qJo}5 w41q=!`pޒ45 mWFrĘhhn>5{e hTUg'B,"QG^Gϵ_7)jDVMSW4[x>mI{\E<3AEz_8IQ!j_jga `gQlyHi 4 #j?XT՛0%WaD$-~R8<џX-/TmKMohvc ѥGoR))@U, [5 T Ĥ9f1-NPi\QuF]^VL؛ ZMŊ5<Fla{!$b^c90D]bD=f8! 5:$$ |BrybDH+ pe9Up ZΡ\  1S!HTbt))$C&Xi `yӆ&AS;hE(=#Aިܷw.N O2r/fjw'<51'D0؇iJ^F"'~UGРRv /=;$(Ѝ;ΒFr̙ܦ40Ga|ՙ*4"-f<A7rm@ Ԙ;ki LD&i?8Z& PQ"?ubw: vqoƼPwZ6ׄ ^jž%r'$i(zQg):ӑT #.zh3,iO0Sc\%JF$Chk-o=-r3tFJBm\:StH;xZIf=wC%FXAtMJTIJ`PQ;Bm@g&q #Ul+| j:)g b7%CʀU Z 9U"fV":QLy LtG$ZĿ^NkRO(=G(-W>5c(bQBs0;9ꈔ-r'hд2UG^U>TfŷDZ&g08zw0nUr5,c3ej=fnK#n@f/!a*f(O}XߢI|cwM|T'p&_cVpߵdTXnXϒOi⟙YnRORͣN3B+@2 DA i >LѸ(%tɕ@Kkqj3֬s u "ljpUFzf^x KCӉM67 @2tEgw8ܧp7d8ی+jC]X㟦i R|xWM&z@fH׿&Ze.Ц aHmfÑɓ [ҚqLԞKRJw]zxdJXݯfEy=.k~Pr$SI.e*Jb@gNrO^xY@W9Ь,0u d"+4Wv Vp1m/,C♫=ؿp^\ulwtE7vJ؜ZMP, 3ڀZˑp?ߐ?Q!31tE [ނ),q%|?%~V%# T"߻$iX2=u[\G~V$`#R?H ߆F_QմsH,lic vE~{,A9gX.v2Z&wr ݡGY8O3<%{{M]ɠr.oJ$7}<hV0(m yECyD;# I݈=k%/Uݲ)D>BaGcA'pk(e #‰Թ:f/^p^pk5)@" _tߞFc`cU?!3,v  ta/.bqNn \w"XYo'ݞk.ktg(#ÈZRRlg QNA8<+h_0͸FJ"ȝ{Gq릊hyyxp\"/@C'r}Aj 甐b%Ȕ,b( "fGhabF3B4$_t*N *WUԙ_zb1_ 퓹mKM#^~`85bdKxH#Gȵbƀ* v($oSy@A{7~pyjS="A_oꞴ{<֐D `V;)`m)S:>C3<,dHqWXq5nATb7Px%QxjY [1i1ވ ZRInɶ>&+eF<›7#=F&  4Nu*4>8A"r.~Q7 .hsM1ħ௡8 =okoLLw _n0h>ncY `MugEa"ˏZ9b57/$;[6qCbz&7C-@$C&GtP?ެӽS[spԙ cʪ8/ƿސoo钅52Y& Xn%_,WF@yu"Ê>3a{y$" /+s2 =3W=\ޱ$G E7N2.ǰ!p ϲA~9Dt+jф UoUEcP_:NYP5cH?9u=c7Qá6uz;ZkzNaQcdĶtlv֜,(< cjO'TZ2NJuݦfnj*q ߦV  $LazYP$$ӂÙN}CGܗW[JDUDgXݿ`e2g-gs(',4YsVS\ I׸x@eke_>KK{HaC_] O,J4Y)ΖMUi8[~$FX,v#;^䦔45AZ$>@2 .*NK2 @Jڨt^}W))vϼ9z|ZW3rQM~aa:1MNv|,k**to9z4X PW^P(Y9 u POvN,N_gŸ=t'iP14 &~23r;zսuP&DXF(JEoS64(%g K܇ wd/Vs}2DtMi6wK5'y{ct6 B##ܐ|ۋ_:ל4gT ;!moޫKS!QSWkjpG!i0ut=Ulf]:\MK(]tN :JUg ed hݴ{ZO͌9UΗ{IPrhSIkDzSSy:!D IYGƣuzb%fPo.{ Kw@7E}D>x& A"W}mo]6]"b8D(#&`sDQlگ{~smzG 2mɅ~A{Ṗuf 瞕ah f~pBcDNRNӹZi LjPr%jl=)kL^rjtaHaҼ*/gg.&9\& ]bp“u j&b̄8*gl*U(~C3,ឬQO}wF: ^ěr*}L&Եof(i}$V-+]˱2NEWgD{9v lƥlV`=n~0nPn=6[(>Z#_`<8N)v3xH\">;ԋƜL_zmRm8ňL͟ 0ʥKF.wmQ $>^/~q|Vb],?H~.CEBU fw!`BAF(I4/m,?)J;iJB2MXdYeIbYi\PM<|yCwCbO.C,-㈕-fW3w'LaxT&19x?%QjEp-HiBϫ;6;@Hwp(#m@hufI_eϱSĵ9T59%Go |ß-tc g"\I gT[[EmYSI/7?M$w J >0s;k=*bŠfɫ t_ТvH, |ѹmg !i%Xܭ\f\I<'\xyԠ)]'MfvA*ȣMfO6LSb?lYՁs*~F8[^D$,~I>'IyC޷̄v( V:L>):BYlO/LO nr` '&rN>J@&PzSN"ywC2ASprb3BY_=59gU]P^>ד EoN|\&So5P0W v6=0v9 r!:aJYvz!e{7pM\Lၑ c;x9.g,9SfsncHs71-E A=RmE#eQS}bE+y^XU$PkWmy&r*.@f*)% k/jHk(9 u\O -_[ƆF H$id7<7{,m8E<3u&o?]C[iu\ kc퓭8&$0127vT(w%K^kM#*P"K"U^SAP~%AMbs/4_Q#,$fSZQ7C#fõE z,XXk }UdLQyLPN/&q^n_Z,\':.g٬jTYoH2 9T)5_&'d7Ibeɐ&̓Lfc#l%7_3z$ߝ@2?s!gqwAM9r|nou_M >ށ~|DoO qs`أv8fuQڹ<`z%=?%P 6 <{ ~Q/4Մc-xʌSxof&<LA$Ը7 -!-^ݠCJМlTž'&$*Cpa)"FsuBLjܹYW.( vhp-5$ne@i5SKPn3G=\֘v,bw*-'܃ig]B[QGD8t!!m kpZbamYlzࢆ5* Qҗaĝ$P#_ʀyA#)6Ts^NJviO Ȋ82I#ff@t)n"#TUxNnURFnVjgPtXfO[ i'>}Yý|WOɉ6L4g3SQ)sY|MTU %(h =S)̏?o'Ay;?sg`hgcBS k!yՇxS?lZ9,&ZϢ1=T;OҫXuv\6Pa(r6ho@^ !4+Dal͡$:5 –tG،ɫZŐՆS& sGr|_f VEH}`K J#R|0d9Y*z dYVy #p\9ܣ+|ϸNP*JMq{̘K\_:ރتޡO3@#R!%{Ý`!k %;y-x Y1Ψ^Ạ[4ʊxSI̾ N4/]`jWb^U_p!(;n/SfД2*Ljw$.:cGhpWz=DP=lvիPfJsE u9[=U?ڈ{TizͰ_dN =br  ~>Ȓ8F aj?[8hH4=G-M5d5=# &LKꝑMPv-Q:dN&bՅze! ۡMV/oY%wf\sfl';ݹ ')4iTuEZTph60 z >ؔL((YExY6wAc!OS1-pud@ʮl{.iZ̷nl.ey/%)f j]5!/WL~lD.B2^VQ|ݐlg wSEs;D!(Trj:Ghh٘*Y4!%DJ .xnjurijD6?sbu= @CVB-ʾʧ,t6@4 XP>ux\M¦J [@;n/D0&FPYq}pKR2[@KTKR6.4R~ _A*]NTZ|1k ?0t\WW" wngj~R3G *`&Ȁ ڜ=s X$H BA >wȧu|zqh}MKO'!NjEQn/XxK+l9qUTr| H A!OAMܰҴ'[̍C\;`=DTa ~+MS 2+9K>dssg TiXph<0ՇK}Ӹ8hT֔ex=b,'%fYޏ ߄ߛ*_WPx^O 8}8h^kk! [e`,DV50b'jwVȧ !t)1jhI@ҐɻKc*|/:gY&GVDDX05LaFOAn8ƺ_*6ag`m<$hⷓpEXpr=2e:tB<Ǜ-4o[huPl'uVYq泥W[W">BozUAp6 "ӬgE9adW+c.ګ^LK՝)-\DVsF\̦ nf/p7M(Y~|-"q`9)w#.9velZbv*ѺƧND3AJT?1ZGE ?"׍a7,Z0|6t`qUK.%7wOfU@φmVy(X%$|['6 YV.K돩 N,w,|BJo$ޠhZSH-UIak4oL(lVmɽvZHVn${3d?:sѓp2836}E39`B9=Qk._1ZIm`"$.+=9sE3)J@ 8GKORYAWij4Oυ;AZ5I/LݙB!%UM[ӳe#~5yG}f<<gO]^Kd==l_1^FBc-~5imVQM\U}F02f)ftn]}璝J &s]Lk %PnїӖEyzkȮ݀σ*f[jQ:eEHͽIcB*ζ9SwohF~ _Ȯ&q$*?p8hI<, tZó#0]_t-"ѮUr-a!5`؍K A`+ʯaG0x&&*/ȽVH`[)7]J~'‡0/7NMHS:Y&5Afv؂\cQ46TCJ:;5h'+ډ.a)Xh&TCAh!˩@ 7`:=@0b5=1\IP.q"wL)A].h"pVEU|ZnʚqÖAOՅ{<Ýr'\c< JI+fM>d tmەvr~b u1[uZ]@D9%FI \&׬>&?{C^x+mka V匿[[X+f eV­`i^]Q9ũd-Fjv0z瞎>Dk>Ɨg~ ? me33ZzTuaffejVzT@;] `[ն`=SpI*| XBhza]~eўQF͑nwϾ}bl|kWDe/ ȾO?Q⺎nwf9N&"!;_S> XkQ a|FT5p;P̧~HAI텡g`r}gB2MdM[ŭw&&IKTX^ '#NSLz)GյSAUj ~)),} 9bD{ѡEtZGJvLu|뗻R+ft6FyrӠ `Os.?TAt뜫_N";8R(Ⴟb?^>>~zQ:鞵tpaw5qs֝ܝ'Tv'K0b.0q|?7.)Ua@8.6eO 1#%3s.u2~x',mƀT1޺Bu獥3'cZVnpG*g,:hfW%d?, cREj^kRt%Vic+jR,Ewj Q#W98 ?'fKƤi`n (^CNnK>w_= tVWdj [*Дd4R-+ ,/dg Ν`Bb fD~+{P|^#LI!`{=jkm*OH;EEH,qE3S/Ue_gh2 tb/dFo~_hgZN(8'E/vN,cP/=_$c>rrS; _ǩ@l.R{]/g;Lf3=V0[2`;f(jLX'&L9 >iwWNG#)-xUoGWppLZ)hRp^'bE9:bͻK8/o"!jچd T θC5vCsNqH&xvPCN((̽xJl) ":*"gE>v鼒T|[/YYDɎk^b{zZP MShtUǸ KhI(n9J^ [(V~}tfMc#9)Zz/E9ҋ ޟ-"?5i*ZYbb}< a_J)5@?"h֝%񟷨^|FYd5ovw%Z&Lfbd׬u?:Yp3IRNץF;27TBç?'2ꮖJO }3YiP 7= hY{ofWʗJNV4$%{}3\ *PiX7FHc?7ހNRDr,. N;2RGF:@5+&* /^Lw&Cl04doQD3̫НG`Q@uаO NX_:{ԓ [Kע> TU\!E/+VԨ-eZSYD-M„Dx>PL)⨨DB2*}yNذ׼=RSZۑB2gᓗ_` S9ȺhR4\o" LW4TU '+ !O?_W &n0E8gUj/ Qm|V_$?Y`WAL/hWy\Eq6 .\ ټU>zDx X}3*mCۋɥK9﷑ f^Y,A$.1 ) R;9R*u_>0uRm $J;! VuTz甧R&B) ݀8 cDioe+n] 6bnJmپfv 9yoAҴC\wq5[C?Qj-Ɛ.i.ȠǨݦ0T_ܤNKL F%iPsg?*9jݰ=oBV1) | pё"ᢠox[O{pEn`@&Ó0Kt_KStHb}E0@7T$'rܑ_$KCmTFٔԒA_\ҽ˻(p͞IZXx18@Xezvxو:T2r-A>" / )XqbzB&#"(FH>Ψca+H۩c9,v|s 3~ -o~ YԛQW@E"s>`o`z*NΉE|5=`”.lP%{<H!L6tȷE(%Y}8@qIl["Y{lƤAvfpr<p*:DTR#Rx|_}{㩿G+M&ر +i@Nj'|s3A /C+}$mP{cB=:!*WRCYc@L_#;@VFx{L u}oLj\!i| jn$Ҿ6yZPsQᗶ9B6A?f*2m4/|!-ˀ1oklYuvsӀ,9h`<1[Odd@k: hѥnZdu@_0~kےhMH.[[}DɯC m^ $9M`6)z2h53"ˤ/7]̥yUPd̬}W]f^(jsaF:UKA26(_i@ QR/<@ dE2o ژV&a[nTaiE_^cBg-!7JB9jtAa;f8'7 "pg)xQSglKTݺp+Š|) 16 vDB(G5_Z'UUiKpQ^buU)Q[NL38?-W2/H)k8K>.C. @HBHEF(20(Oh~0Ԭ z+bLrPvy2e.ťxbH}-ˣu%sδtcR^rchq;оDq$,@Ut&V8bώ|ퟘڊlmQ{ҲW/YDTyZTK#ixa׮vx޴ށD6ۜ(]~2 ^iB,(NoVڷ^\f[#*+h }hWX w_lZܭ΀zs6Đo4_ymwQl;?:+c[ոk'"[_K:Q@`j00o#eqe!N 4VJ/K`:RXp`Oj_~Qd+U)r'saRFP8<3 Ven_oEZs)^'ް msܾ2{Wr3"%g&zIl'3]p]'"ΤA(#BC!0ɶ~ ߝƵ#2ɻ/sS, nq̷/F@&(7٠>.>iϪ_]FEv3cZb2g]B3!F=Xe<96p)O3w 8@@~c|GUq|7C1 W4GPb, Htϴ׵ܚ"ClsNml|veH_M\kQ/yfs XndN2$J O%)K/!]wCM"\O-Pxe&1~2_WWG~0wB0]aϒKP08>&5;l#ӀlYpwY`wL ޜ@x$"DrmqOpRndd0"b #؂7}-J<pͣ[MzXK$B3\`/'G hbLprDނuiLURE7שF" gpwhI,rkt wč:ĕ|ICXjj`]4~ qf[?Sy@@4Ŵ-gX-"0>VNmK-z3W uBGe6#T/f>\>Kb0'5:AWƋ~.-A ?8B؇yJԉJp"PO?RXߣqMGܴW7L]UFtR ]YEBp'cdlOq%]n_p#{] Gڿ(R`ϥj)x5Xyc|>]e$߻ X3˪I* jb^d^"% "%-j}uts$5܅Z{_1" g\K`Glu62fڵ.cwS26>ɝ2UilٚCK%Hs))Kg8ƬwCd&'s ˢWPsb\0YmYtEӋ bRX޺  E/I&^Nwj!{ӗE|ԍ(S/5^+x7}08SmgBݦ uZSmsG 8ʂi'Ս5?5FI Vȥ'p_ܙQ32sodDZw'җi:o+)nu\@Koiv[Yq%e).$)"-vFHBH*Hh8 葒0 +LWk*VEC&X,Xm.pҕR0Ǟ[|r_0pB3]-@&L1f@%*}mJ];@WD%t$!ka `U>LEۯ, xg./,e4#^/gTTyk$,ƞ:\ ]ГAp(]ヲ55M@Jo.ybۚwk6B{o/!6? Bj^xbiD@*$Qx{yb ,(8 Φ`Ln((fc &'WT`F_(R6ER1~n&QgV>d;lRj!h*qE} W:>bem\Mj`+ =}?et0@X ָ6|qNQhR=o0#b*\" ?Tp?qG`ȥiP_ՀPuR!0"S/`N;Xű`fߔ؀lZdg@i}"t7 Gh\ȃQ4@ӛn^V,s늓tecp\3ON Y-`8D[Wmu{.+Aɏ T%C@B|+1gM,.)2 JI~cXmWju۾ڪUD1`㹏x?70E@mec\f$w4zhy'łt CrTvӟfhJC#-|nW"VRV(zQeZ=;>.IᴼiGr2Zi*w<QLdۆ2,Ira(r]@1mҀ2wX4|0w eQl]-,Ywal.[&S /t Γ*}%JBҹ+I /chق%cu_%m bʧz,[ 92SA)aedk&C zظ PӜ͐o0,\u0\)X,]G>~!dFt xIl263E n&)/[-jOhepi.Y+@1k-ySкețQ;h"B3Y<.p1Nlh.AŦ[okc崰"Y;LCZF fzqp3Pn݀Q]z`4hc'0@-A׋NR1/ze|F&in$>]޿ڭi p %_ЮANr;UT|-ye /lΣ1B4aMoԇPCT3sv18)lx'Z66f+A-@Pjρc!cxzJ&)QUY$Jiڃs5e]bpshL[=\̚(ypr٢ JJkjL7K GKueǶ"6\ 3 1@RBBF;RDXaV|*w*e~=C Qhuƃ@k6/8%aN*d4nQ)\QTR: =ճQd*11;Ͽmz'|͉D|iJ_>vx7\~`؞ADzk оj4a|P fw` 7!\q?w;[A`+N>{ws`Fنޮb m]Q}.>(;`E)fIUR8#7~~NTvXstoqT;#3,mM$FQ\''5əI/ut024bʲS5tmdlJqMÿǠut3]^GBXi97N̜w L^ #>5@=Kx;Y{'@l}17C}DdKpt/¡ko]2JExt uj޻&+ըS(N\:۩=i&jtUDdlOu؀.πSa{hn]`v2_>p"PwrULlXmtR OB6X0.07 П %%}Yԇ5?13~`%kT*韼+S!Q0 nD)aǟ0<70NP+x*6m6kfx:/[e\n"VEgfb`J@34]xV7qiUBlEd̹Z#!U q*)+]a@$Ee+Ԭ1?'Rd8e4SJPo}+YS:B18H(q^6A53k 1E6Pq\&ni"aEjNۚ e,8v #&ۮZi/Ι;K[Xׂ_5$F4&/My ##w; n\l0O7z(ks_^UkIXLW#TxerE҉Axq<~iǽ_-`c2D(a:AfA i G~ϘK *;ey'jLo5Ƀ:ͯ4IU(D  _Y.5uκ;inNt~B_ЊzȢ^9Rt7gZ`NrnK)R GW>8mH˦KdLʖVzEmN׿)R9gg&h75 'Rկ8F;rҥ-B!/e_bޘbYsQow3;;x#wqLR[r럼}"dZ\6G8X1>Vd y(4wQ,jS&TV[r^XӿV>C}1}l,pD'9YI$ӣ=;xiDh<wBK_)pT)I +eN-J$߽"~y򦔨 ?I6![E_crbx "U )bV]q3S!x&X/0PHh jV%0jvO;`s=5#w%w'wL˖( RF9DxPӅ%7}05i_,jlZ0/G[Jt w_`y ds~m>?64" yYE!\Uxc9̸bl/JiJL=% kY}Qbࢤ6%rI>r5rϊݴQ,l+t/%*#.#"^d` "^bI ܗ\ϥofρ8'?ֶ6u-KQ.똃㗺neQ1{*X#*xDW]& ydF!#OVܳ*  Usp >'p)j6j`:.!Św8( P /{n=~c@q%h+B=ͼ$[ P[1<׫ Ӂ'?ū"?iƅ#[iXKW%Tk\ßO{ EBK^{2`iULD;py ;ug+|aLz Bp&_+L}yȌ:-V=q>ήF(1MJUʾAc 0U|"ŪWf׸e5Yh -噁O&"RS&]:|\d`ivl_.<9'׭b2|Nj0drYTP~&b @m@#c@H_pU=P 255q?N!Thąn7ttXU $ma߶쒅et-^ ߳KKKɯmFfVRٞ`->7{ _`.HMy)s*]r %F!gL4ٛW4osӂgVVNEC*@Cy\ԟ!b ÊGK{! 4]P[qh኏*y[ Y۞zO\YDF5ɱDT6,ɦf}_%6v8c`Owڷ: z7GVlt;"YosAn}adG0Ҟx籉 nfw%ñ[RĪ̥຃Ihn\3-Zͦv8,9•D#o*;x^ʩ-U#=ia|>i(1heFMzArX/\SWpM4mODx@ӼRfJwCy2J^KʇgzAXcQ4"yUjR5#nI^ V,W\Q85^ł^ny [ v-CL=l? Y6o![L1T! PPbe[%xEDDg 6E}UXizC;H*NQcLPaQ z(_Tkh9LSĺ^ *U*_8܈cCG)At`4DSSBtЂz+ݮa4LUWuy-jmw1 R\dlʔTB!+pE+e}e18Sri=^]N(F=d(Qo'5bZ^o'[T3NzT7s|!$"803݅Teb- P@Z4VWFj͆1OSQ{b sKSr Tp]b•#y GW>k!P8oIC T&wum"ZOPwl?{Eter=,Nn-[e2f7hpS_> Ph Yri;ӤndhELbA>CFIv@3s6oAn\p k@Jg>ܗ:hlT$%o[ejJ0$};z'eҖψC|tK;=*CEm_v`RL] k[cX?*ݗ C!vEdOIJU&w5t˶Kd)rR]D֊qFhAi9s$8]JT yٍ,:V "|3Di MWfjvRmߧlՖ2-am#{{M@C&`?' 4UTeSX@¼\.~ԓq/JTRXcwFVHOy<-L3*[}E*ɬJM $5$y+䢴&(D԰ai,U!t80ZJ Žޢ: %`8gC:n3c,`q}=|Ñ$vm6^+ɿ@Z̐u$3ENG {_+D}3vWe[lZGvQ5"0s8&ާì$i ;]@myK;#5DӐ s04g!8C3AA"Wj*)->sR[AP([,xkm\N}@Pt6@k6VUZҕ Y^uLg\7{9{c=q:>xzٙ%3}GHUCPYbIx[NIID]*7YHHט7ʚWiP`[O &I%MC+&xEI U"ߖ0UhIGN!"8[Eog2Cq2')'$^ `{( |Xxے&OǕreηUXNfa]as7xz[Wa!l>|Txp($XKp/Aov>jhq =$nGI'usCT~5 8PPhgpK(N !ϲ_C57KmQDӗ'vrqL$oM^ozc[)h&ʸZmW,IQ h Q%3SVBg85fг1v؟#eoˉbFG Sz([=P[c;)j/ GMkm-و9\+:8akrԪL0Ư"%-<oɏK6V?#P޵]LU1DEyfQ4z|8wÔyk6yy(ģYJW {"R9ˡ'X9YM6qj&eg‚Biڧ5gܫqOJwؤ#`wD =$H1q-9gÚE%'hALi'1.7)tuUcWHտy5PedVW3Cց>-J>|68"^2+*ȉc,ubSj㑇Vz~|ףKIpfE^ql|r£`-MIm?vP4^z2 b6듘:w ne"= C%2cm!jϜ̳Cl:Iz)1r@z"~|nyO}ş -]Ggby{0Dz'fhDڣ1eRҦ+DUqSρx#۝$LR+,$MMFx-|me&;)tde>s9&ƃeP%l XEdhP^6hYv#I깧& 23 ]ٗ;0SVhAJ6E#% SpXbv.'ɺZBont,-|/ 6vGϨ=%ߐQƣxz!mW-^xx[ jeϷp_ K―! rj N{S F߸P,e<|Ʃ"2@焘PN&[AQ?R?SŅB -i% $tG}o9.3or2yԫ9ISaIԄ)58I ?l'vVDqxF "UgQȦa<;2hr= 寈/ڢRu.μcȶ|_]|='XN3=!Nu2Nēu哶9nC>OA2٧+"氤a}=;%Z ?.I^V vDK^~i+ڌg; T4ook;&^ L"gS, y-\+%dNaT{+bxvdNۼQ|ȱg˫xq`NjD|z@tRQ?}!c.)* z7'71@6nf[t=ByY\l_r"<'~-: c:]eQ#UOuQ},aȅ$@S-0?`/,[,r)iF n?yEL ]綖FvB*vϚ,.qX\sqa6M3!=-ۥOf87{u (:Dz+_c"g{[!G9Mi`گf*Չk`g*PSrvNdAʿ@jݤ+ZPQ/s׀:eve.\tӺ` s9cRiႄwhͮh}_;e[[XXf"t.Rg(4+B ?J%XP鼬u#  sadcxRς~F1ݔW}BĈ~8T_~B ,G?x wq. eÎ &3KW- ]k{ӹ|XdhZpUـ.} \=0vh)YIJF&^e;(FM~\ux75Y+NsQ'dB`B'j퀄03t\`4X#yz>x $l@o>j˒<ʽYМp]|U|7|^co6NjbF^uv6 !km `Ca@KS;40aM 9u }UImGo AEAu6 3L^Kpk18?,G_lR-vϪAOh]zQʴt+yЦkJ SEEzM 8p*t3lPQ5$ lNc8qbkħ |Yv'j9Mdܘn"gL,ȤHVZ̳IKEK|n.^`YzNOӕS<}''έU{#TUgHX": 9}\1*Z(6vs)]eRwR->;QnjE>'z3sO`sn#@  =İC-aX.>nЦv M*eH~bu+Ӄf\Dպ(ۏCHEJl(!jl33w9IE "g-0H?u>ɝfF| ؃&j=l*?ʒs/+d꯶4!xz%GaVJ b5#=$Vj.MW3{6-T=ղmXF" h e(OhZ./B{VO(e%\5Csq8j*Yi!C@)ߣ%#`;㽍DZ*oEwGHd4F&LԃA*"wu,dZKGj'zG;K"VBIZt4m%ͨUBLm|pr k*(AoM-6 mň醠Cٳ2pYk@Q+o0gJ+R>72Uժ>'Wb Ѷs;j)ϗ8`-kZ?M|Pp&atO\dQZ>JTQ)'9ewP }wt4Kc*>. -*B̥7]Y!4vߝl|xvbdQcM~OW(sQy繲mqFP5#^Wz*//nC1`E]{(jL-h@nE*yuؠ,y$WHLMЛ98B!8gH/2*4S9wNQKk=!CwJ2m@̱PHI%=Ŏ^#`׋$ qVx&LL\x+YЉ0Œ#/8b-k HäbqkQ,B\n1 KUv$~”S)D q[x' "d'q?Ė\i^[t쾧t㇐ &In򎆪:{q݈u fr:S'˜EJs">*TPƎv32cŠ& 'hTH2;̎tY-ڈ(@!6<%Й)4OF:!q/#2#sӟ}y.k12 ˨0@d7ho3Bv Fؑ6avy.ge"zl זA>=tVB 5fgTs\_ 2yQC/CahӂxbFv1qF}~3<,*ńuْg'WnԿ^oHśʊ`j ~I,83$QEDÖ0Ks]/op9{uf.?@EPQ'M8ɦ'([F9}۠ZQ 8c~/hyUJ7_22xXjDr&'<[.O! < vGY]RaըuB)UJy!v0uYBc~i!@ÓVG-$ДP('smBv3z '_:wRYyڮ^nlVCz]ujhe;18u^HxtB ~0z_Gou4^Xe8tӹ;0[!鳾aaoy@" 31t!R"XW.6oVZq `-NqP?\~5ssUZ51)}2higfICTIDz_pqh ֹ.moϕd'̡Zid(B@\z/ĆK%4T*F j:\*Hɋ-kS#* n@nJdtWٓJJ4== /RDÂK%x&JJ"sjpeD,M:=.C>ԂŽpn[" ^]|C-T KĨP1FSG*lȇRojmcӑBg!QcN 05>NL B4n껷WHGZ3'Fx ^G?f 5Y̙M%Uf?bg*B&a{&\<K+NANoR]RY_Vı>y~Ô!?N .Cg?\B&-:ʺ 's"`b~m&+Q]}fP:hрH*Uh8`,QUt' p]|/NxO#L/|dywӿ+ң h'691@Ͱ#QstEb",Ehi`\:c]fw啡4#\1;5E@qwD`̓z;1S>f v(ͧk0o;†VK%)YԙXs)Z{%NjR؟*k!4TV~L-]%g|IVtOg$f4Y17,!p/@a aT1YWR:ؚ3/ S0-,<0DPW86͵bT, c9ʯ2rPyeTժZ[L B'\Z\]ot$x6݋xԕJ\d\[D;WVx`M*fi1: !ku,$98&&Xȝ^!)?#FIY`ni͌yewxAIwNSpb7:Shv?ˎ$r6جCU3I͜1/jo]^A3by{=0W`$?-LGs#aĺQ {ghe&Oպ 靶/cf (Ɩyp?Y7zܕ?1&X60i-Ws I&-PBN5ޚipll"C2bd["$7]14M8h7.=:~]$3 vd(/Şpe Y1WD/4.JdT>yCmʏ~5&%n|>l3@Y8Y!=H:w5b#O迒]!zBΩ!t054$q.J`Y iFQŒP}[̙XOpl󻮷D܂tvCW*KЛ,vi*Ao4ܩ3BFIcOVyzOp&,]/tl|Gv;VGU\>Y| jzM4#ȚdY&whIQ~i}f(Mp4i5G~?c6Pi?ѴMǡ=qp!bvLU90j/0-M4))t>KkL<^ZXJcY,DVe|)BXDb&;lW"wՉH:q$-]3yZ|9ByVFa3Z%#^?&5ĸoʵKÓ:Dx&Oj]+")9V;<ڟQ3r{c^λ˥"Ijw9PyJDwN6ӸsdzeS{;%ؗO;Ʀl'iNJoXM֫~+Vjar/TqSBm/H} JFh G1#F|!Q}{Ad!f[ϕOId׍TYͦ}R7(Ef6@mHHǾw>lӴL`O(YOG2 FJ'o_KYJq E  7\$lK)95 -Sξ=7μ^ ~tn ADf ƘP3U'>1/n%g'^bꌀvde;᰾G.is*(oĜYtTH[oӀm3 100*ܯ,N7M~g-\#ދJa?/qHl HĊ^ qs2EyqD RtzcS'xšLYWR F) S :n.kSyCw(3^63ҠXw-ͩue6 A?cP±mD XI)hԝk=d.iri>2uq^TGXl ѕmH{w4Y !M] g6S&gj+3އ,bgqqcI3쀔{ՒbX:,+l8rB/2b_l@G OvrRN]ۙ"fW۞% ,&6iɝvnA(G>4uƃiM@J e,a JYq"l^4 OoՏůѩqWh 1H 0,LDP22_6;T䃛-Ջwnm*X>a(8$e'_L-^1.ؿdsOT>{H+ێ[4Bk_{ATuzHŽ{ NGMU^ sթ e*6N0kf)y+FnAga52lubN}2cTbž̈&Ii6Xʟ -^Cc\-oӇXU5V/sd dA=}=udTj/{4W09xl^iY"ӗ*́$?}bsJ9`W./w90\OWonXoOyRv ProS<H}pk 5޵}Oe׷Rn#zCDA$Zo,Y/鵪w#l=ӊ:/|mcֲ8uHb<_$Q TɈa=%9]EwRo@GVmm}/1 A6ԘڅU,^G^ʋ>ʑ꼐[0TU4u{;1U.зu?BD`69_ejJkLQ/m=F#|uq_.ҧ#aNωƦwy^]l 1db 4':#>@)oP CG2ڄpbw"4Y|83I6" c^P@R2gPWM/ȤdbFUgLYh\۝-e6Mg.&ٍD/?n|e<վ9֧AI@%[H(yk[>uS/]>zlq)ufb fګYeH!Ym(ÔpӋ.u4Xd=< +%j k)vcZQYk]Uuv#qgvE 8s!P]~ļ`+3rA*;!w#&5Cl FH&F5EF0}T2eg0\rTՀ=uoX . i2+(v ƫmڦ,/ja7_*.v#V{G7W~agI[#̾FBXA֌U4}ǝM!8p*ar \C9L딑v joϻy50,/oj1i" h4 ʷ45uvCa}fKvwlwC&G,ɾP޴r&T(D.IT_k|dS*skcc!h42Cp2}Ŝݤ&\ШNm;196BR.s7 bgwX{@FlQ ELk5u43^u`v4=WiܪӪTwWoV'4jyB GpPH 3&h=槣gG"wn%Rۼ2z䪠Kth9S̽;è%+ACS:/8i<ȽoBտ-l`õR\n0c@{Kv>n{.PwoNW2APwBW]:VXR- fE~ױ^t =*l+־W4! UYor!?┍ӑ HYd+cݽ3Y~[6QGmW>\XR@eN4-nQg>cuj G\6 Ss rL7 r*0w\"P sDK;J`4(+9JY\K}BLV ?IU3OC>H髹vWJLX6KZ&\dēiuAyp4CKZ?T̥\䕃ቌpkI6TZBT%mkp8kc)yٝ~u=ݍs}ܵuX*ȬM, \ 6헎RQϸw=9 :@C*ˠ5%u$o"ѮD]Nד,a( K.`}8KBxA]XCWz`2Nxv7ۑT'=|qmArq3ђq º2^Y?QkZmqHhO1hַU! &wr?>M q(^Sae֪xxQ  EV͗ #(n*{!rqjDtH(n&]^ ~X(y: sC68 "~\WMvW$ tc9,:V\|&f9Ύ\t]yX'˓;luwr2z4t{OҬC]=cGs56*>aT& νKz_`9tL7Ņa[FwRn(.:Qva4Q[c}HX%۶C͆R_R DOȮG^3iϭ C,Y}φN<)퀗tpGmS$`zi`iOMڶbj7<8p.Qrȇٲm8C얥7.X;hac+?3v_6q؈пz×Gu0&~o!;, WgZQ #+ug`_zI Fŷ;W71fu ɬ] HmW!߁O1Hvn(|;gsDK@ḎJzau}B"0@ϑ0*bfͱqu}!bx1}* (;̅ϾCGr/E7VYs TIbs"s<`]Ѩ;|xM"KD=2ڼ(oYwbM2rfk^g,V-`E?הgr[6d2  cc+G b%qHwKciv?xV-  e]xZO:7F]U8ThJ"RU3~%-vDRA:lZKN`ߘ]9&EA( v6:ͷOOp}G6WvзD -hK}20z*͛75$Y/J5L-$!ܾ fQ 90pʭY. ;0/־rd6ߍxU}D25O!Ed}\\r%F\ݤh;7PX﫰4S\C;/]$ /#5Ga#~?&Jx&#cĿnj񆼩O9P$k`!W_ vpF`ŸG u\F;eI+71dnU@UWt؀Þ=1+?xm9)f- 2ߪa5/#Y SYE- h9 Xv5ǣ`vGY{:( @]M񲡹w8"*G)>I[?j/2<;\ٿ˘yLR8tjeiIX !5,~+f'Kt~I#+ _< ~1&I|QЈ}ӱ ',f(+_!v*~;#%Q!'Yi/_:"^Eތ&fʊ4 AvqKcqb5/ĝ#g2Xe+ *Ve Md@,?S#̄s A#Ksdg/qQ0"(Dؘɷ>"NJMԽT<-@ %wN5εPͻGc-\_jÚzxVhɘX M_n0 `aہ@ca{?D:N6)_X%P8["aK}q)t)p>7rsbY.UU 㗂J:DVwBܓmZpoSguwAzs)i0MGEͮÀXhlMLHg}OzM:tu?j_Y{CnE{b/&g!`sGdd0,+Ѯ:e5j9TԶi Jw3D߆P zrJ'4ti~yل/ɳI Zc8Wީ%meHɛ%GiY[;%ز%fJBzrQ@ %Z~e{A'\/SN 7CDiO?`c]<@儾.G=\9T(]d1hʋBTwL b` eIxۍҫ/cQ$tg5=vJ]4CaVI _Ũ~k/g:4A];k/3Ib_@*gҔEVhG93w\N P/[R'\ qzl"q>+~jdz|9TݰuZ!',ly J]ןJohknh3e(K߉heY7}:QBͦ|f.kcweUtqa8L}%7.5 '^.R}{gEvC+s @˅mʹDEI Vuk xNׄ /|HA< Qd02:-^j,xSݛa7cGx@8sgȰkai?g#w-xP*L &NDjF^!JNf!. .!K&?d:QsL.!he u)iT)kH $F:n ը8I![yK8* ReI@MDSRбRcœ=5qRw2i΂U>EE~w:YT-ct<,YQgm@b{BN +Zt)!Ȗc`Ra[ 6 ?t𗜠+ 3<Ʌr,#4S{,X1^1r2{څuN]=ui’3 kɘ9ϼ`ǩWJTWqeYĀ_yV:Zp>U~ Y\N Z=8 .ŖneEғ4K/a^=Qzdxcv_cM ;^M;Y*|*5A! ămRc`ZW~p4jD"yie5" PAMS<&zO<4e(Acpz0[U'Pԍ,#&3 &_{pІ86譃;ǯ8 WΎ6[|L _cqce$?lG6g|oy8л768DjL&AWO^LOnWa1 FERWIF IΕxh"o<* 4 iu_qЪnQ DW ( 8{?TXs:y5-c|j3b4,d[]r܎y$8uG\vp"P~=F8y;zeW y) L4YŠ3#o ro7;&Os{!S;Q23 [uB|͹^Y~yL:,EhO__CzRYEz#i~a1œ2`QE\>!~r¥ c6| I;P5_E(@NW1j$m&i3YsC), s(]n x"Yy_9l:KRO;Dk9hT1} $0ݎrUE|"N#( B$j;!<LJZ^U\ku޿u$bpD;E1?L }ÛVthlf,ww>A2wxd2$>6ܠi󋬔zO`7>B$0j7\"0u=v$[rYF YNmx" FfaxC7I}B" wD3D,N'j$vϪ]%|J]sL(Gc)\~B4oED t:#댍A4z{c-k3ꆓˈMsG~rsARƧ}g{1;v~J|;)@MrUkVak`qDrOW)y'|ik@sf)o?e^3+]ctU~B4+fw5ZbU=(%9Sj ^W0X?4ܐ]b0;EWV? "wt\f\*jZㄪ_~/0a=:FU M˪N,dlNmW91>Jŋ]V:!usrt*HgXW;8M{#ELFq^Vv5a S}[R?O1$h"6"=FGnG ŗ'#K@Lc˭~յocG0(B BjNͧxv(\`cdHOFImݘمY Cq&HLk~$5(Z(}d'][)=?V;|0}>ӰQkM\ }%bxlP|t;cE=/kL\'P+#"K`,^ŝ^p=8Wp]6|Zo#qV0B̓Bs;Qt\;,AQo6s(y)(x͇.|M<}W^AA&f)ÇZ#;IKўmCf@bѭh6vk9Ooc|)w),I,tEuo/U=6bI 37Fg wJ)ejcLk66bWO)oW>A  H(.Ц**1WG{]EIz+}3MT& GGP; ^"A m IBV–Qڔk@]eNЧ/oj #i(~#w8D.]J?tUc:G,.bT1 vU~>E07_|T9* TjډHb wm/sVPW3lDAdEZ4#,+ebFٲ?~cjv q/" -BQCإEzM8葳y.vCbǣE=bk@/nt O1>mQ{C3V+=oJw#Xݧ$']۴t$T̡w%̻ XthY8,q;uv|j9kr2D)x>CMX=}Cl `VLp0aHagq yOJ1ote(i, JH :kB- sQZwB\ϳ6f}A 9W%te񘥥Ե CśXL1G;01srtS;%ژ3 v6Pu6)j/~6SבhE4[Nd Wc sWz CE OM^yUHAY)%:wL]Z݉YHmhʝ]1ES-HXXlʊ h@?S")@&AgQ+;%|5uI. Nxn\f]}Id=ِ!ޏ\<ONԘV \a}mF^)B9%~l١U_{Vl9XaDJmíw6yEg~z2D\ס^[XQL~1[w4}ٗ?3Ij 9wt-gpQZ]4M?1<K N9-pLeȞ(Mά>Q8*8tcwz?jy>"ܐpw GI&Z9k.G]jkR Uxan"~_FQ\ U}Ef:XsڦFD! UHw9 iG2vޮSGX ;V \MGq}]Z=•Wt)OM[J)Ra!NW? &@s,T2-S'"6.ա^m qnv/b/ m,BJ1zTfu.mc^/8]<# *-EgAq_Y,huj=엄ؤM+Sk 9GɫEl-SRk9y1G@n cRC]ߐHXFmUS~¡1+QrHv7jj~5q:*dw| WekAb!sʥq,ߡu"u1 ̉HCv̗>>S[xP/= A6cnR`(_UkZ!=K")3*O5-ҫeyº0ϼv?g}XjÒ#Tk =ֿCca*Qde$qk++_-l ї#g=ﵼs<-̸@B^"KAȪ)Ó)M㦡X J`SV-*Ly14)QU/poT%swiR z3F ]>fDn)㝣 Dkh^)" :"ZDJ) F\؋U=ޔ _zgb# FܬSyk?ԭ"9 9uc IB,B@`:m@u:/#cjzÁ:GDKUHAR:쌍hy@ִ$Nu Z`eUp'hvfQDCilC+,r9դOz:G0Wn2]$Mfjn/v7+w+֋أk vOC#'OSbI;i!- X෦ؽ&Օ$<ȓnvՍq%lhӈkfL~%ҊnQ8T~\`C o6ы? AA05;y'-!Sx1y&/o4yZZ M ON)ׁ *'Lyy"|'=zy lx4Jt}ʈ[dQ/c |ѿR?F*oz_GsNݸ7ń-"D (藩Ӈ/b'x/D͉.W9$G)aT$&vHNl~%:,` ^ uo6fE c+ܷƸ J`Ao;$.2(R@ 9 |W=r[.ZC󯵳LgY*͔slϤ!]e$*Ewǂ~&{^Gځ?w{.N"'g<]2ʇ M$ۿtT|yb})iHݽ?t=y=Tg m˷~D:'w~>RD==+UwWw߯-1qp_|cs䅋7kyƜ9eK-F m 7$4e)Y߇{Xh|<Ma{S< hH|@E])\{6>3Uܔ+lݫR+s86uSYz ġ[·{}`dS`}3+p 9x7ЏL-wiϿ>lXPN;5 SZ }}/af,wGqہt,M|9Kov'qh>p$,9?_90q,pfOʸܜ6#op%kFauaȸp{Z^nU@f6 ]bEt n̾IVn{:.bzK/S ;Rn@PPD2 ^ezl}QD8}9BƇ |sTtXJ)1;@Մ+kl-eR7:gvW7^nF "0!C4_>m()" fZP"0LZ.v5l"iQprȉk- RĤOD4bFB 1–ɣ4Ӝ#FHH)7_mDZ1yťvw-K'tQ#a[5$@9&vQNl`%%?쥋x]$:M{Îh(>&t,L+[;,\2 153Rn= ƫG/XJ4l[ŧɕo5ugWҾ0'NZU)w~2rǜ4Z\y#*xh\+c0_dIL,áܩô48>Pax͡u3BU/9}I'zzכoQU M6K _Bc:Ͳ%NȨ#qK]Fbr0lGix~cv BY\IHq-UFv:i$?\%?^eSމar`?,v$PK{!."ͽb^K\`ռׂ*]VLf"~zA$HP>-s&nHOZ>" A' /nj*5 cJn!mm D;; b`N-}^9HT\? GM]\ۮ fXcDu=.F JvHu͸WD]I;Ɠ|TP)ѯt((N}|eM} n;{\. aT&Ҭcwָ};(ܬ/m*h(~oXOI8`A}vJݺ' ʵCgX:<(V>?iO(~=HAVjjn4@;/ĈvVPt#Op"rN=lhɒ;g$HN-P-e-1|#7F Zv qnlon7NJ 4gJOrŏ%x&Tu}dNo~b 9/#S="q'wC<<^ؕrs`gg2b_[7?bcaxp%'ˆO{\޿G$]?p49GUW8bR O}L9"A$afm9KYKg=H/ܥp:#.rbM &[k0J~DS