vcmmd-8.0.96-1.vz7>  j|eo  }Dͭ**pB`[+ `)U !+G-TI L!sbBGHtDr veJBFo{ʳ11RA!1b;rh6jt1d834cb0f7324a151ab48997f39574d231afa349舜en  }Dͭ*wp%u%>pT"Q(U xŀhf[<. 3J<&8ϯnȯTmPn^<aPvơk,F!ZVyă}G/l+VB>BW ?Vd  8  8PV]X    $ * +-03v3556074(7t87|9;:f>4?4@4B4G4H7I9DX9Y9Z9[:\:]/dev/null 2>&1 || : fi if [ $1 -eq 0 ] ; then # Package removal, not upgrade systemctl --no-reload disable vcmmd.service > /dev/null 2>&1 || : systemctl stop vcmmd.service > /dev/null 2>&1 || : fi systemctl daemon-reload >/dev/null 2>&1 || : if [ $1 -ge 1 ] ; then # Package upgrade, not uninstall systemctl try-restart vcmmd.service >/dev/null 2>&1 || : fiY]qq3 3 %%@@EE  !!mmcc 1'5=2&S &>n>n78 QM hhqq7Zaqqqq L Lrr ,3qq q qrr d dHH D$ T  &..ff((22)]v;:A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤enmenmenmenmenmenenenmenenenenenenenenenenenenenenenenenenenenenenenmenenenenenenenenenenenenenenmenmenmenmenmenmenmenmenmenmenenmenenenenenenenenmenenmenmenenenenenenmenmenmenenmenenenenenmenenenenenenenenenenmenmenmenenmenenenenenenenenenenenenenenenenenenenenenenmenmenmenmenmenmenmenmenmenenmenenenenenenenenenenmenmenmenmenmenenene0b4cd2e09013816f6e8230a5bfb44e27a0c41889154a33e3b16819673a11fb548648daf3c2aebd68c25a681b875ff1b0454c8bf51ce8ca25d4845a9ef0e8bf851f98384ae4906a12e1aee6ecfefbd9570de90cc8c3a0805baa7d32abdec74e9d3a1dbca6549302b567f9cd0ec83bc97479a098898bc138c94d4b23a713495e838f666dc7ea0e37f187fd9c2ad6661d554eb3cc29f54e70aec3acd3de9b2a281c460fdb8d890f811156c4e2aed2058c962aa5c4ab2d134d240838c6832fcea60e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8556ea0c99ae5146dd87052bf4ffe30be1a3dac2aacf9d373fe3b4129db390bc1616ea0c99ae5146dd87052bf4ffe30be1a3dac2aacf9d373fe3b4129db390bc1610284deb51ea160421df779e6ec3db6a2b213c0ec702a93041665d848efcd4dbd0284deb51ea160421df779e6ec3db6a2b213c0ec702a93041665d848efcd4dbd1867d2971d66e0c71960d8ff66c27fa15a551aa09c157ad52ec6c914230a06461867d2971d66e0c71960d8ff66c27fa15a551aa09c157ad52ec6c914230a0646374d91a4de90d9d851eb7f37ab77dde3cd2cfad8e87a000bee613358cd92a471374d91a4de90d9d851eb7f37ab77dde3cd2cfad8e87a000bee613358cd92a4715856a00eb30527fa0e4cc1979bea91082e5406ea8f0face1d2f38b9d672004535856a00eb30527fa0e4cc1979bea91082e5406ea8f0face1d2f38b9d6720045379b869e403c628f72d8bf3b733c23984372d908b1e3bc61de344c7e4258965e379b869e403c628f72d8bf3b733c23984372d908b1e3bc61de344c7e4258965e360df22f8d7fd5525d8c392877eb26718345adba1668cebc503e915bae3dbf55760df22f8d7fd5525d8c392877eb26718345adba1668cebc503e915bae3dbf55786ceac160f6cb127b27e0593b41afad1abcda6afdb4299f80aee9ad95ed58f789b4899ece129865026cefae4acfb68207153ca4e7f408e22137a804bdc87854fcb693fa198b21a834a51356a02c2a3171a8b2fe85335e9d7a201a9ec730d6ab9cb693fa198b21a834a51356a02c2a3171a8b2fe85335e9d7a201a9ec730d6ab9f8ca43b90ba18f5c39b7a58a41907588f1bc58f79c7e435a786e385c48ddf8a9f8ca43b90ba18f5c39b7a58a41907588f1bc58f79c7e435a786e385c48ddf8a97ea3231eb6d8dae0a0b854f8848b4e509c30819b54f06e5b8e456ba7cd3c52d0b14a4973473e883686b352f2b76533d5f4bcc7b9694a0a627d67a11332f88152b14a4973473e883686b352f2b76533d5f4bcc7b9694a0a627d67a11332f8815256d0167661717280d91c492c9e787bb3bb60f1ab690c0f8dd3ba41154495fd3d56d0167661717280d91c492c9e787bb3bb60f1ab690c0f8dd3ba41154495fd3dfb0d906243cf1cc630ae7bbba044c4442b38b8e437fe529e43ea2faf57bd8ad3fb0d906243cf1cc630ae7bbba044c4442b38b8e437fe529e43ea2faf57bd8ad3fa0fc19eec200dd3ca0aa1709138a00717ddba6a35728690d9437a5c1024d0b6fa0fc19eec200dd3ca0aa1709138a00717ddba6a35728690d9437a5c1024d0b6d7ff62a9491a17cc01ff0978277d0f5371427c0a96b3e192896a704a91cd12f3d7ff62a9491a17cc01ff0978277d0f5371427c0a96b3e192896a704a91cd12f3f614f6ed7cd7193b865033086ed7189a1d001258ff15453a2547438450929919f614f6ed7cd7193b865033086ed7189a1d001258ff15453a2547438450929919feaae4f295f6d5a43aca7b1ac422b9dd7a49ca7a32fb74a53b35f757aee90a02be239c06c916a631efe3459919f8a390e91d76a5bea8079dce387f7b3c259cb57e6792e6c3b2d4264f9c43303382e02261d7063981d05367b507681a1c87c5b89c681e1037ec080dbdd4153104596070cdd39860aea0df47a59f1aee061a2aa44aeb489a9ae55372b2ae49cac95841f601327bd65807d629a9fc0da0d50ffbc7c34409923e87f28bbed11c3239bc13984dc9bf0c12e99752fee3fabb7f31ea3d84de461d6c0b130f8aa45c4b42c32947dcaa46b83279b4a002addba96b61f2f21e0562a03526e1c4addae7feed2baa04f6284f69ab6d9f1953abe16c40c93544b0d2d4928a38f70bbe83c4ca0d90ea7ebdc56aeb2b9871e55df532308be816a9a42527f62663527e56b9f6f9f087cdfdcb18ec827a5679fa99fd5128473a02ca3a225abf5ac81484a18d9b7db3a2de51935ed957ce74c088ee7df21e37feaa88d05bfd4865f99aa53b833d5013feea8c6f13a928e70eed75364dfc53fb203c78d05bfd4865f99aa53b833d5013feea8c6f13a928e70eed75364dfc53fb203c78da798fd6a0e6183aec8b887ddd7cbc473b102e9625941ec3dfea51c9e261b583da798fd6a0e6183aec8b887ddd7cbc473b102e9625941ec3dfea51c9e261b58352b782b34110b6639b4d8469290f885068a5e5d6da62c1b6a5bcf6f36ab297c6363e4b5f74f62a8aa884ccb1abbf272545c2a8ccfc6e0ea665836cd68910445e7688ccf555889f92b8ed5cf8359d4d2a66cf0b599da1ddb95fafb0c4956a4f869c6e21fdfe6dea116b44654822ec42a2fb02daeb423e14ae151d2c28c8b9b210e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855507d157357b2ccdcaa13be7a89ccbbac046fb724546ee1e99fc40e5b745676f1507d157357b2ccdcaa13be7a89ccbbac046fb724546ee1e99fc40e5b745676f16ea0c99ae5146dd87052bf4ffe30be1a3dac2aacf9d373fe3b4129db390bc1616ea0c99ae5146dd87052bf4ffe30be1a3dac2aacf9d373fe3b4129db390bc1618cbd44629ee3881adbcee8779742f18278f8313a0bbbba80db5fa39a787dd320ca7d489a3f1268492e681b97cbf284b993064eece6cf01ae52cdbb1ab6aa7612834dff80235e84330a893be90434dd80932f2792099e4b8a9d3a920290777fa3e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8556ea0c99ae5146dd87052bf4ffe30be1a3dac2aacf9d373fe3b4129db390bc1616ea0c99ae5146dd87052bf4ffe30be1a3dac2aacf9d373fe3b4129db390bc161e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8556ea0c99ae5146dd87052bf4ffe30be1a3dac2aacf9d373fe3b4129db390bc1616ea0c99ae5146dd87052bf4ffe30be1a3dac2aacf9d373fe3b4129db390bc161cf195d5379f375b46127d8801f102f20dcc9ec4a7062c223412bc35833d432facf195d5379f375b46127d8801f102f20dcc9ec4a7062c223412bc35833d432fa959a19c5062cab282c223b8f5f3f22e8583803ce0a6365c98896cd927e023e66959a19c5062cab282c223b8f5f3f22e8583803ce0a6365c98896cd927e023e66a5f042793dca6c657c2953f81e6dfe44717130680d759aaf11834f4e50936430a5f042793dca6c657c2953f81e6dfe44717130680d759aaf11834f4e509364308ebb6042b01a8529e02067d396994186b8a8d5da4010c3a5b64d426140ab80df0744df1ca5130c7a03dfa09dc8e3564834da0f43beb0bbf60160765d207e05a01407a01c1d298ea1e3b07b22a84997d36d5f0ba6847bec0464a71fdc31cfe7a8e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b8556ea0c99ae5146dd87052bf4ffe30be1a3dac2aacf9d373fe3b4129db390bc1616ea0c99ae5146dd87052bf4ffe30be1a3dac2aacf9d373fe3b4129db390bc161a5944989d21abed7995d820f7542ec4c1dbed943d05bff35e2d844c388b5564ea5944989d21abed7995d820f7542ec4c1dbed943d05bff35e2d844c388b5564e14d4355fe572f1b69b915ed6bcbd3aeb0bbb5cb68d822c7378ffeaa398b8adce14d4355fe572f1b69b915ed6bcbd3aeb0bbb5cb68d822c7378ffeaa398b8adceac5d9d5f4e6b177fe5e3ec5ccdb5a197f4bd855d7a0054b4892a397ba37791f9ac5d9d5f4e6b177fe5e3ec5ccdb5a197f4bd855d7a0054b4892a397ba37791f9728fc1858be05c4013235eb953efdb2711c4947c6833b754a55f1d7d78d2713a728fc1858be05c4013235eb953efdb2711c4947c6833b754a55f1d7d78d2713a293b8e56e89fe98893db33430c83997a15a9f9fe6559e8934ad2cd14588a3b2b293b8e56e89fe98893db33430c83997a15a9f9fe6559e8934ad2cd14588a3b2bad89e248eab52820232913d756a25c2d2c9f66316ca59f36de6243b411180a1bad89e248eab52820232913d756a25c2d2c9f66316ca59f36de6243b411180a1b59023d2c4c86d5c2a5d76893d5455fd39e07493986d2fb7846f3a9107066348759023d2c4c86d5c2a5d76893d5455fd39e07493986d2fb7846f3a91070663487dab52a1c4938e62c7c752c5a85a97c6dec225948533fcda75cc2812a13e93dd7dab52a1c4938e62c7c752c5a85a97c6dec225948533fcda75cc2812a13e93dd7634c987aa65a7b6c5a675768bb6813ebdf6743b92a90b85b7d12a6cbc0709447b387a21654be1b3e65cfb45814bc7e2389bd72a321d08f8507c54606cf6d414166c33e08d2bdbf9b2ca9ff708e7264f89add9b11a079d5cb3a2a84b85a67e7fa2e19eeb603203ffa5ce82c86807b46affc5505ae3a00b46b54de78e5aa4f1b1b29d13570f21b4f2947f4b47372fce437fb035af0f1059b496752c247eed884e1d0305ee1c5eb0016375eb7745df3a4bfc7861c41a6de874cae36326b8ec86d314282f48c3793f091be9dc5b164ba113e0359049c8c69d0ef6412cb10d305c804d37c11eb50f5343e4869bf761e3178d6e38e68515ffdefff3b08aa42130934e6f07e020742a2ca0f1f193589bbfddd3eb0da294a8ca9ba9001edb7e36b2dfd602f60a391b4847fe7c242fb1616c285fb56c5e1b09775cf8064664347ff8ed7252d746dc427344359748b55ee1cb30aa8c813bd109c8ee3ec2b7e934c01018cea010930416aef089db0671c6ba071aa41147d3fbdfa0a8b36bf58c698079bffd98cf5ec0d9803bb220c76f37f9e4dd26dfc30309f482a555ed85391b166d521dd8cf5ec0d9803bb220c76f37f9e4dd26dfc30309f482a555ed85391b166d521ddd7521ade7eadea79edca91d2d08ac6e120d11279bb1aad670f5673012c3064394791b399e458c29f03f2b764424a32eced5da8d47c818fd2a82393ac4e4c5771e1030fad4d937a9ded5d81ba2dc63feed9ddacbb892204345d3f0ee2fcf4c4fde1030fad4d937a9ded5d81ba2dc63feed9ddacbb892204345d3f0ee2fcf4c4fdde635a59f3811f5d0ae7a32f8c9a73a86b7c21ed7a1b9ecccaa2e6d62b019ee2de635a59f3811f5d0ae7a32f8c9a73a86b7c21ed7a1b9ecccaa2e6d62b019ee26ca9efa4a14c484f9a8b049eacc18dfaa82239b4abeda5d4a60759cf3afdf6fb173c33f423112244718acaae09483e3c96167e4ae378404f024d15f9e8036c61608f7d9d2870979910a110fad7cd83e409fe03d30e9eff619fc0d3a8ced71a70ceec99e9d17ff7fe27bf886e616bac7e2987044b2b07ba42e5ff2ea8f02c6cc52207d4db94ca1aac180f9f1acb0618734618d083e081d49c80ae376cd1757c372a054865f249f8af1d41b3c969ae4b38ac862c2dbb75e72b1f592fc70a1ee477a3e0bea7663990520ea9f71d279f02ab5baf232edfed1dcc5f2c9582aad88299727c41c585195348beec3c9a76817cbe37a605a3fdcdcbf791feebf8b183468drootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootvcmmd-8.0.96-1.vz7.src.rpmconfig(vcmmd)vcmmd @@     /bin/sh/bin/sh/bin/sh/usr/bin/envconfig(vcmmd)python(abi)python3python3-daemonpython3-dbuspython3-gobjectpython3-libvirtpython3-psutilpython3-pydbusrpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)8.0.96-1.vz73.63.62.0.03.0.4-14.6.0-14.0-15.2-14.11.3e6@e6@e6@d@d@d˖dǢ@dǢ@ds@dK@d6@d6@cR@cc@c\c{h@b@b֜baG@bN@bDF@b3"b3"bObOb@b@b@b@b@bb[@b[@a@a@aaa@a@aaq@aq@aadadada@a@aa@a@a@aza@@aaW@a(@ay?@ay?@ay?@ay?@arad'@ad'@`:@``E``s`+`H`H^:@\"\\@\@[k@[ͻ[@[)ZtRZhu@Z:PYYJY.@Y, @Y%uY$$@XX~@XƉX @Xf@XBXe@XXAX~@X|XwoXdX[@XY@XY@XY@XWXWXQ4@XQ4@XOXOXIK@XIK@XIK@XF@XF@XAb@X@X=mX<@X<@X43@X1@X.@X-X*X*X%X$a@X!@X lX&XX2@X2@X@X W@WW_@W WWڍ@W;W;W֘W֘WҤ@WҤ@W^@Wu@Wt@Wu WrfWrfWm Wk@Wi,@WgWc@WbWZWXWF@W=W3W)@WWW@W@WWVVVV@V@V@V2V͛@V&@V1V@VHVHVT@VV@V_VVVvVvV%@VV<@VuVuV}/V{@V{@V\:@VZVZVXEVXEVO @VLh@VI@VI@VG"@VEVD@VD@V@V<@V;DV;DU>Ux&UcU_@UY@UT@U>$VZ Auto Builder 8.0.93VZ Auto Builder 8.0.92VZ Auto Builder 8.0.91VZ Auto Builder 8.0.83VZ Auto Builder 8.0.82VZ Auto Builder 8.0.81VZ Auto Builder 8.0.80VZ Auto Builder 8.0.79VZ Auto Builder 8.0.78VZ Auto Builder 8.0.77Artem Vasiliev 8.0.76Artem Vasiliev 8.0.75VZ Auto Builder 8.0.74VZ Auto Builder 8.0.72VZ Auto Builder 8.0.71VZ Auto Builder 8.0.70VZ Auto Builder 8.0.69VZ Auto Builder 8.0.68VZ Auto Builder 8.0.67VZ Auto Builder 8.0.63VZ Auto Builder 8.0.62VZ Auto Builder 8.0.60VZ Auto Builder 8.0.59VZ Auto Builder 8.0.58VZ Auto Builder 8.0.57VZ Auto Builder 8.0.56VZ Auto Builder 8.0.55VZ Auto Builder 8.0.54VZ Auto Builder 8.0.53VZ Auto Builder 8.0.52VZ Auto Builder 8.0.51VZ Auto Builder 8.0.50VZ Auto Builder 8.0.49VZ Auto Builder 8.0.48VZ Auto Builder 8.0.47VZ Auto Builder 8.0.46VZ Auto Builder 8.0.45VZ Auto Builder 8.0.44VZ Auto Builder 8.0.43VZ Auto Builder 8.0.42VZ Auto Builder 8.0.41VZ Auto Builder 8.0.40VZ Auto Builder 8.0.39VZ Auto Builder 8.0.38VZ Auto Builder 8.0.37VZ Auto Builder 8.0.36VZ Auto Builder 8.0.35VZ Auto Builder 8.0.34VZ Auto Builder 8.0.33VZ Auto Builder 8.0.32VZ Auto Builder 8.0.31VZ Auto Builder 8.0.30VZ Auto Builder 8.0.29VZ Auto Builder 8.0.28VZ Auto Builder 8.0.27VZ Auto Builder 8.0.26VZ Auto Builder 8.0.25VZ Auto Builder 8.0.24VZ Auto Builder 8.0.23VZ Auto Builder 8.0.22VZ Auto Builder 8.0.21VZ Auto Builder 8.0.20VZ Auto Builder 8.0.16VZ Auto Builder 8.0.15VZ Auto Builder 8.0.14VZ Auto Builder 8.0.12VZ Auto Builder 8.0.11VZ Auto Builder 8.0.10VZ Auto Builder 8.0.9VZ Auto Builder 8.0.8VZ Auto Builder 8.0.6VZ Auto Builder 8.0.3VZ Auto Builder 8.0.2Andrey Drobyshev 8.0.1Konstantin 7.0.165Konstantin 7.0.164Konstantin 7.0.163Konstantin 7.0.162Konstantin Neumoin <> 7.0.157Konstantin Volkov 7.0.155-2Denis Silakov 7.0.155Konstantin Neumoin 7.0.154Konstantin Neumoin 7.0.153Konstantin Neumoin 7.0.152Konstantin Neumoin 7.0.150Konstantin Neumoin 7.0.149Konstantin Neumoin 7.0.148Konstantin Neumoin 7.0.147Andrey Bondrov 7.0.146-2Konstantin Neumoin 7.0.146Konstantin Neumoin 7.0.145Konstantin Neumoin 7.0.140Konstantin Neumoin 7.0.139Konstantin Neumoin 7.0.138Konstantin Neumoin 7.0.137Konstantin Volkov 7.0.136-2Konstantin Neumoin 7.0.136Konstantin Neumoin 7.0.135Konstantin Neumoin 7.0.134Konstantin Neumoin 7.0.133Konstantin Neumoin 7.0.132Konstantin Neumoin 7.0.131Konstantin Neumoin 7.0.130Konstantin Neumoin 7.0.129Konstantin Neumoin 7.0.128Konstantin Neumoin 7.0.127Konstantin Neumoin 7.0.126Konstantin Neumoin 7.0.125Konstantin Neumoin 7.0.124Konstantin Neumoin 7.0.123Konstantin Neumoin 7.0.122Konstantin Neumoin 7.0.121Konstantin Neumoin 7.0.120Konstantin Neumoin 7.0.119Konstantin Neumoin 7.0.118Konstantin Neumoin 7.0.117Konstantin Neumoin 7.0.116Konstantin Neumoin 7.0.115Konstantin Neumoin 7.0.114Konstantin Neumoin 7.0.113Konstantin Neumoin 7.0.112Konstantin Neumoin 7.0.111Konstantin Neumoin 7.0.110Konstantin Neumoin 7.0.109Konstantin Neumoin 7.0.108Konstantin Neumoin 7.0.107Konstantin Neumoin 7.0.106Konstantin Neumoin 7.0.105Konstantin Neumoin 7.0.104Konstantin Neumoin 7.0.103Konstantin Neumoin 7.0.102Konstantin Neumoin 7.0.101Konstantin Neumoin 7.0.100Konstantin Neumoin 7.0.99Konstantin Neumoin 7.0.98Konstantin Neumoin 7.0.97Konstantin Neumoin 7.0.96Konstantin Neumoin 7.0.94Konstantin Neumoin 7.0.93Konstantin Neumoin 7.0.92Konstantin Neumoin 7.0.91Konstantin Neumoin 7.0.90Konstantin Neumoin 7.0.89Konstantin Neumoin 7.0.88Konstantin Neumoin 7.0.87Konstantin Neumoin 7.0.86Konstantin Neumoin 7.0.85Konstantin Neumoin 7.0.84Konstantin Neumoin 7.0.83Konstantin Neumoin 7.0.82Konstantin Neumoin 7.0.81Konstantin Neumoin 7.0.80Konstantin Neumoin 7.0.79Konstantin Neumoin 7.0.78Vladimir Davydov 7.0.77Vladimir Davydov 7.0.76Vladimir Davydov 7.0.75Vladimir Davydov 7.0.74Vladimir Davydov 7.0.73Vladimir Davydov 7.0.72Vladimir Davydov 7.0.71Vladimir Davydov 7.0.70Vladimir Davydov 7.0.69Vladimir Davydov 7.0.68Vladimir Davydov 7.0.67Vladimir Davydov 7.0.66Vladimir Davydov 7.0.65Vladimir Davydov 7.0.64Vladimir Davydov 7.0.63Vladimir Davydov 7.0.62Vladimir Davydov 7.0.61Vladimir Davydov 7.0.60Vladimir Davydov 7.0.59Vladimir Davydov 7.0.58Vladimir Davydov 7.0.57Vladimir Davydov 7.0.56Vladimir Davydov 7.0.55Vladimir Davydov 7.0.54Vladimir Davydov 7.0.53Vladimir Davydov 7.0.52Vladimir Davydov 7.0.51Vladimir Davydov 7.0.50Vladimir Davydov 7.0.49Vladimir Davydov 7.0.48Vladimir Davydov 7.0.47Vladimir Davydov 7.0.46Vladimir Davydov 7.0.45Vladimir Davydov 7.0.44Vladimir Davydov 7.0.43Vladimir Davydov 7.0.42Vladimir Davydov 7.0.41Vladimir Davydov 7.0.40Vladimir Davydov 7.0.39Vladimir Davydov 7.0.38Vladimir Davydov 7.0.37Vladimir Davydov 7.0.36Vladimir Davydov 7.0.35Vladimir Davydov 7.0.34Vladimir Davydov 7.0.33Vladimir Davydov 7.0.32Vladimir Davydov 7.0.31Vladimir Davydov 7.0.30Vladimir Davydov 7.0.29Vladimir Davydov 7.0.28Vladimir Davydov 7.0.27Vladimir Davydov 7.0.26Vladimir Davydov 7.0.25Vladimir Davydov 7.0.24Vladimir Davydov 7.0.23Vladimir Davydov 7.0.22Vladimir Davydov 7.0.21Vladimir Davydov 7.0.20Vladimir Davydov 7.0.19Vladimir Davydov 7.0.18Vladimir Davydov 7.0.17Vladimir Davydov 7.0.16Vladimir Davydov 7.0.15Vladimir Davydov 7.0.14Vladimir Davydov 7.0.13Vladimir Davydov 7.0.12Konstantin 7.0.9Vladimir Davydov 7.0.8Vladimir Davydov 7.0.7Vladimir Davydov 7.0.6Vladimir Davydov 7.0.5Vladimir Davydov 7.0.4Vladimir Davydov 7.0.3Vladimir Davydov 7.0.2Vladimir Davydov 7.0.1- Track active_vm number in the base KSMPolicy class #OVZ-7488 (Andrey Drobyshev ) - Update targets.list (Andrey Drobyshev ) - Fallback on failed asynchronous config setting #VSTOR-59718 (Andrey Drobyshev )- Track active_vm number in the base KSMPolicy class #OVZ-7488 (Andrey Drobyshev ) - Update targets.list (Andrey Drobyshev ) - Fallback on failed asynchronous config setting #VSTOR-59718 (Andrey Drobyshev )- Track active_vm number in the base KSMPolicy class #OVZ-7488 (Andrey Drobyshev ) - Update targets.list (Andrey Drobyshev ) - Fallback on failed asynchronous config setting #VSTOR-59718 (Andrey Drobyshev )- Fix to #VSTOR-73489 (igor lunev )- Adding logging to requests #VSTOR-59719 (igor lunev ) (#VSTOR-59719)- Fix reserved_cpu formatting #VSTOR-62167 (igor lunev )- Define pydbus.Variant as a tuple, not dict #PSBM-149503 (Andrey Drobyshev ) (#VSTOR-71016) - Add python3-pydbus to runtime requirements #PSBM-149503 (Andrey Drobyshev )- Use pydbus instead of dbus when setting cpu.shares value #VSTOR-72635 (Andrey Drobyshev ) (#VSTOR-71016)- Update targets.list file: replace dist-vz7-u20 -> dist-vz7-u21 (Andrey Drobyshev ) - Fix to systemd overwriting cpu.shares value #VSTOR-71016 (Igor Lunev )- util/threading: delay initialization of ThreadPool #PSBM-146831 (Andrey Drobyshev )- fixup! Fallback to libvirtd.service dependency when building for VHI/Vz7 \#PSBM-146655 (Andrey Drobyshev )- Update targets.list file: replace dist-vz7-u19 -> dist-vz7-u20 (Andrey Drobyshev ) - vcmmd.service: fix dependencies, PSBM-146655 (Vladimir Seleznev ) - Fallback to libvirtd.service dependency when building for VHI/Vz7 \#PSBM-146655 (Andrey Drobyshev )- Update license: GPLv2 --> GPLv2 with exceptions (Andrey Drobyshev )- Don't fail with assert when there's no cpuset cgroup for emulator process (Andrey Drobyshev ) (#VSTOR-60942) - Fix typo in the path on failed cpuset discovery (Andrey Drobyshev )- Write actually configured memory guarantee for services (Andrey Drobyshev ) (#VSTOR-59718)- Do not include RSS in mem_min for VE_TYPE_SERVICE (Andrey Drobyshev ) (#VSTOR-59764)- Switch policy despite running VEs (Andrey Drobyshev ) (#PSBM-143158) - VCMMD license changed to GPL with exceptions (Sergej Parshikov ) - Moved LGPL to separate file (Sergej Parshikov )- Revert "Don't crash when CT cgroup isn't found #PSBM-140023" (Andrey Drobyshev )- Don't set memory limit for vstorage-services.slice in VHI/ACI builds (Andrey Drobyshev ) (#VSTOR-55265)- Retrieve VE configuration without requesting libvirt or cgroups (Vyacheslav Trushkin ) - Fix crashing of vcmmd while listing registered but not activated VEs (Vyacheslav Trushkin ) - Make ve_config.py file pep-8 compliant (Vyacheslav Trushkin ) - Make vcmmd.ve files pep-8 compliant (Vyacheslav Trushkin ) - Fix jq cmdline (Andrey Drobyshev )- Use currentMemory as a limit instead of maxMemory (Andrey Drobyshev ) (#PSBM-139366)- Limit page cache for VMs #PSBM-139282 (Pavel Vokhmyanin ) - Move vcmmd-tmpfiles.conf to /etc (Vyacheslav Trushkin ) - Move vcmmd-tmpfiles.conf to /etc (Andrey Drobyshev )- BuildRequire jq for ACI/VHI build (Andrey Drobyshev ) - Disable storage cgroup management for VHI/ACI build (Andrey Drobyshev )- Replace u18 to u19 in targets.list (Andrey Drobyshev ) - List only active domains while initializing VEs (Vyacheslav Trushkin ) (#PSBM-138741) - Disable storage cgroup management for VHI/ACI build (Andrey Drobyshev )- Treat VE_TYPE_CT as VE_TYPE_VM in HCI platform (Vyacheslav Trushkin ) (#VSTOR-50949)- Corrected date for copyright 2022 (igor.lunev ) - PSBM-138596 triggerpostun should be added for obsoleted vcmmd-hci Add agent service restart as well as vcmmd, and only for aci (Denis Kolvakh )- PSBM-138596 triggerpostun should be added for obsoleted vcmmd-hci since new vcmmd not started after installation, change try-restart to start (Denis Kolvakh )- PSBM-138596 triggerpostun should be added for obsoleted vcmmd-hci do not fail transaction on error in systemctl (Denis Kolvakh )- Remove dist-vz7-u19 build target (Vyacheslav Trushkin ) - PSBM-138596 triggerpostun should be added for obsoleted vcmmd-hci (Denis Kolvakh )- PSBM-138596 triggerpostun should be added for obsoleted vcmmd-hci (Denis Kolvakh )- Replace dist-vz9-alpha build target with dist-vz9-beta (Vyacheslav Trushkin ) - PSBM-138592 vcmmd obsoletes old version of vcmmd-hci (Denis Kolvakh )- PSBM-137967 [vhi] dependency to docker.service is needed in vcmmd (Denis Kolvakh ) - Add dist-vz7-u19 build tag (Andrey Drobyshev )- Remove references to balloon policy from NoOpPolicy (Vyacheslav Trushkin ) (#PSBM-138519)- Fix cpulist logging (Vyacheslav Trushkin ) - Remove unused BalloonPolicy (Vyacheslav Trushkin )- Fix exception type while loading policy (Vyacheslav Trushkin )- Handle RuntimeError while importing policy (Vyacheslav Trushkin )- Register container having CTID with CTID instead of UUID (Vyacheslav Trushkin ) (#PSBM-136215)- Catch ImportError exception while policy instantinating (Vyacheslav Trushkin )- Revert "Take CTID into account while initializing CTs in LoadManager" (Vyacheslav Trushkin )- Revert "Lookup for CTs cgroup by UUID or CTID" (Vyacheslav Trushkin )- Verify guarantee and guarantee_type configuration for VE (Vyacheslav Trushkin ) - Consider negative configuration values as maximum value (Vyacheslav Trushkin ) - Lookup for CTs cgroup by UUID or CTID (Vyacheslav Trushkin ) - Take CTID into account while initializing CTs in LoadManager (Vyacheslav Trushkin ) - Import libvirtError directly to our module (Vyacheslav Trushkin ) - Fix docstrings in vcmmd/ve/ct.py (Vyacheslav Trushkin ) - Initialize cgroups separately per CT or SRV (Vyacheslav Trushkin ) - Handle libvirtd connection error properly (Vyacheslav Trushkin ) - Skip registering services in case of error (Vyacheslav Trushkin )- Fix typo while iterating over dict (Vyacheslav Trushkin )- Move instantiating of service to the bottom of __init__ (Vyacheslav Trushkin ) - Verify NUMA-nodes before running policy (Vyacheslav Trushkin )- Skip registering non existing services (Vyacheslav Trushkin ) - Ignore if service has no CPU cgroup (Vyacheslav Trushkin ) - Continue if service can not be registered (Vyacheslav Trushkin )- Add nr_cpus property for ServiceCTImpl (Vyacheslav Trushkin )- Fix ServiceCTImpl parent class (Vyacheslav Trushkin ) (#PSBM-137163)- Fix checking if mitigations are enabled (Vyacheslav Trushkin ) (#PSBM-134807) - Manage vulnerabilities mitigations in VZ7 only (Vyacheslav Trushkin )- /var/run -> /run in vcmmd.service /var/run became a symlink to /run back in Vz7. In Vz9, systemd started to claim on ./var/run usage: (Denis Silakov )- Fix vcmmd.pid location in main.py (Denis Silakov ) - Fix typo in commit b407d7c0 (Andrey Drobyshev ) - Add targets.list file (Andrey Drobyshev ) - Reserve CPU resources for services (Vyacheslav Trushkin ) - Stop BuildRequiring gcc-c++ (Andrey Drobyshev ) - Build python3 version from master (Andrey Drobyshev )- Don't raise an error when deactivating non-existent VE (Andrey Drobyshev ) - Don't raise an error when unregistering non-existent VE (Andrey Drobyshev )- Fix misusing ve_activated/ve_register (Vyacheslav Trushkin ) - Start vcmmd.service before postgresql and nginx (Andrey Drobyshev )- Pick up HCI services on starting (Vyacheslav Trushkin ) - Change D-Bus bus name to 'com.hci.vcmmd' for VHI/ACI build (Andrey Drobyshev )- Remove conflict with ksm package (Vyacheslav Trushkin )- Handle several qemu processes with the same VM name (Vyacheslav Trushkin ) (#PSBM-136410) - is_vcmmd_dbus_method: prevent unhandled exception (Andrey Drobyshev ) - Make "vcmmdctl free" output compatible with VHI (Andrey Drobyshev ) - Fix output of "vcmmdctl free" (Andrey Drobyshev ) - Simplify DBUS methods implementation (Vyacheslav Trushkin ) - Rework asynchronous executions of code in order to readability (Vyacheslav Trushkin ) - Fix cpunum handling for CTs (Vyacheslav Trushkin ) - Lookup for cpunum for containers (Vyacheslav Trushkin ) - Let vcmmd and ksm-vz be installed simultaneously (Andrey Drobyshev )- Check if vzct driver is installed by existence of it (Vyacheslav Trushkin ) - Add reminder to update libvcmmd while changing VEConfig fields (Vyacheslav Trushkin )- Add cpunum VE parameter for HCI compatibility (Vyacheslav Trushkin ) - Add cache option to vcmmdctl to configure cache of services and CTs (Vyacheslav Trushkin ) - Add symlink /usr/bin/vcmmdctl -> /usr/sbin/vcmmdctl for VHI/ACI build (Andrey Drobyshev )- Remove unused imports (Vyacheslav Trushkin ) - Get rid of depricated functions (Vyacheslav Trushkin ) - Avoid crash if vzct driver is not installed (Vyacheslav Trushkin ) - Fix IOError for py3 in mitigations management (Vyacheslav Trushkin )- Consider kernel version when setting memory.low value (Andrey Drobyshev ) (#PSBM-134805)- Obsolete vcmmd-hci package (Andrey Drobyshev )- Obsolete vcmmd-hci package (Andrey Drobyshev )- Obsolete vcmmd-hci package (Andrey Drobyshev )- Fix retrieving policy name (Vyacheslav Trushkin ) - Fix changelog to avoid `second install` error (Vyacheslav Trushkin ) - Fix changelog to avoid `second install` error (Vyacheslav Trushkin ) - Make vcmmd obsolete ksm (apart from conflicting) (Andrey Drobyshev ) - Prevent shebang mangling at build and install stages (Andrey Drobyshev )- Load policies from several packages (Vyacheslav Trushkin ) - Use OptionParser.add_option() keyword argument properly (Andrey Drobyshev )- Merge changes from VCMMD-HCI (Vyacheslav Trushkin ) - Convert dict.items() to list while excluding keys from the dict (Andrey Drobyshev ) (#PSBM-133879) - Look for 'StorageCacheLimitTotal' param in 'LoadManager.Controllers' section (Andrey Drobyshev ) (#PSBM-133855) - Remove unused idlememscanner (Vyacheslav Trushkin ) - Continue if user.slice isn't available for writing (Vyacheslav Trushkin ) - BuildArch: noarch (Vyacheslav Trushkin ) - Use python3_sitelib instead python3_sitearch (Vyacheslav Trushkin )- Merge changes from VCMMD-HCI (Vyacheslav Trushkin ) - Convert dict.items() to list while excluding keys from the dict (Andrey Drobyshev ) (#PSBM-133879) - Look for 'StorageCacheLimitTotal' param in 'LoadManager.Controllers' section (Andrey Drobyshev ) (#PSBM-133855) - Remove unused idlememscanner (Vyacheslav Trushkin ) - Continue if user.slice isn't available for writing (Vyacheslav Trushkin )- Handle connecting to libvirtd error (Vyacheslav Trushkin )- Make dependency from libvirtd less strict (Vyacheslav Trushkin )- Add libvirtd as dependency for VCMMD (Vyacheslav Trushkin )- Initialize VEs using libvirt API only (Vyacheslav Trushkin ) - Make libvirt connection handling independent from Singleton (Vyacheslav Trushkin ) - Move qemu lookup functions to vcmmd.misc module (Vyacheslav Trushkin ) - Set slice params in Host.__init__() (Andrey Drobyshev ) - Use "max" instead of "-1" for memory.low infinity value (Andrey Drobyshev ) (#PSBM-101432) - Remove vz script (Vyacheslav Trushkin )- Avoid killing VCMMD by OOM-killer (Vyacheslav Trushkin ) - Introduce Dummy policy for debugging purposes (Vyacheslav Trushkin ) (#PSBM-130823) - Move setting user cache limit from vz script to LoadManager (Vyacheslav Trushkin )- Fix NUMA memusage calculation (Vyacheslav Trushkin ) - Ignore unmanaged qemu-kvm processes (Vyacheslav Trushkin ) - Rename VCMMD_MEMGUARANTEE_PERCENTS --> VCMMD_MEMGUARANTEE_BYTES (Andrey Drobyshev ) (#PSBM-127010)- PSBM-100832 (Andrey Drobyshev ) (#PSBM-100832) - PSBM-100832 (Andrey Drobyshev ) (#PSBM-100832) - PSBM-100832 (Andrey Drobyshev ) (#PSBM-100832) - PSBM-100832 (Andrey Drobyshev ) (#PSBM-100832) - PSBM-100832 (Andrey Drobyshev ) (#PSBM-100832) - PSBM-100832 (Andrey Drobyshev ) (#PSBM-100832) - PSBM-100832 (Andrey Drobyshev ) (#PSBM-100832) - PSBM-100832 (Andrey Drobyshev ) (#PSBM-100832) - PSBM-100832 (Andrey Drobyshev ) (#PSBM-100832) - PSBM-100832 (Andrey Drobyshev ) (#PSBM-100832) - PSBM-100832 (Andrey Drobyshev ) (#PSBM-100832) - PSBM-100832 (Andrey Drobyshev ) (#PSBM-100832) - PSBM-100832 (Andrey Drobyshev ) (#PSBM-100832) - PSBM-100832 (Andrey Drobyshev ) (#PSBM-100832) - PSBM-100832 (Andrey Drobyshev ) (#PSBM-100832) - PSBM-100832 (Andrey Drobyshev ) (#PSBM-100832) - PSBM-100832 (Andrey Drobyshev ) (#PSBM-100832) - PSBM-100832 (Andrey Drobyshev ) (#PSBM-100832) - PSBM-123638 (Andrey Drobyshev ) (#PSBM-123638) - PSBM-107798 (Andrey Drobyshev ) (#PSBM-107798) - PSBM-106039 (Denis Silakov ) - VSTOR-14930 VSTOR-14970 PSBM-101720 (Konstantin Neumoin ) (#VSTOR-14930 #VSTOR-14970 #PSBM-101720) - PSBM-101720 (Andrey Drobyshev ) (#PSBM-101720) - PSBM-101720 (Andrey Drobyshev ) (#PSBM-101720) - PSBM-101720 (Andrey Drobyshev ) (#PSBM-101720) - PSBM-101720 (Andrey Drobyshev ) (#PSBM-101720)- PSBM-100832 (Andrey Drobyshev ) (#PSBM-100832) - PSBM-100832 (Andrey Drobyshev ) (#PSBM-100832) - PSBM-100832 (Andrey Drobyshev ) (#PSBM-100832) - PSBM-100832 (Andrey Drobyshev ) (#PSBM-100832) - PSBM-100832 (Andrey Drobyshev ) (#PSBM-100832) - PSBM-100832 (Andrey Drobyshev ) (#PSBM-100832) - PSBM-100832 (Andrey Drobyshev ) (#PSBM-100832) - PSBM-100832 (Andrey Drobyshev ) (#PSBM-100832) - PSBM-100832 (Andrey Drobyshev ) (#PSBM-100832) - PSBM-100832 (Andrey Drobyshev ) (#PSBM-100832) - PSBM-100832 (Andrey Drobyshev ) (#PSBM-100832) - PSBM-100832 (Andrey Drobyshev ) (#PSBM-100832) - PSBM-100832 (Andrey Drobyshev ) (#PSBM-100832) - PSBM-100832 (Andrey Drobyshev ) (#PSBM-100832) - PSBM-100832 (Andrey Drobyshev ) (#PSBM-100832) - PSBM-100832 (Andrey Drobyshev ) (#PSBM-100832) - PSBM-100832 (Andrey Drobyshev ) (#PSBM-100832) - PSBM-100832 (Andrey Drobyshev ) (#PSBM-100832) - PSBM-123638 (Andrey Drobyshev ) (#PSBM-123638) - PSBM-107798 (Andrey Drobyshev ) (#PSBM-107798) - PSBM-106039 (Denis Silakov ) - VSTOR-14930 VSTOR-14970 PSBM-101720 (Konstantin Neumoin ) (#VSTOR-14930 #VSTOR-14970 #PSBM-101720) - PSBM-101720 (Andrey Drobyshev ) (#PSBM-101720) - PSBM-101720 (Andrey Drobyshev ) (#PSBM-101720) - PSBM-101720 (Andrey Drobyshev ) (#PSBM-101720) - PSBM-101720 (Andrey Drobyshev ) (#PSBM-101720)- Switch to python3 and Vz8 (#PSBM-100832) - Remove limit for kmem.tcp, kmem.udp (Konstantin Neumoin ) (#VSTOR-14930 #VSTOR-14970)- Update Copyright (Igor Sukhih )- Add new option for cache size configuration for storage services. (Konstantin Neumoin ) (#PSBM-94761) - Fix typo (Konstantin Neumoin )- Re-raise last exception. (Konstantin Neumoin ) - Fix unhandled exception. (Konstantin Neumoin ) (#PSBM-94621)- Add logging. (Konstantin Neumoin ) (#PSBM-94621) - Revert "Temporary disable storage policy" (Konstantin Neumoin ) - Temporary disable storage policy (Konstantin Neumoin )- Revert "policies: Disable THP in NoOpPolicy" (Andrey Ryabinin ) - scripts/vz: set swappiness to zero for vstorage cgroup (Andrey Ryabinin ) (#PSBM-89802)- Technical rebuild, see #VSTOR-16423- policies: Disable THP in NoOpPolicy (Andrey Ryabinin ) (#PSBM-83199)- Improve storage policy (#PSBM-84694 #PSBM-84943) - Fix log lavel- fix typo - Fix: correct drop VE from balance list (#PSBM-81242)- apply memory.cache.limit_in_bytes for vStorage cgroup (#PSBM-78248)- fix update decrease memory limit in runtime (#PSBM-79499) - define target/protection- fix dimension - add zoneinfo to node attribute (#PSBM-68779) - add mem free to node stats (#PSBM-68779)- fix memusage in case without swap (#PSBM-68779) - add cli for report memory usage (#PSBM-67135) - fix indentation- check prlsdkapi import before try to connect to prl-disp service #VZOS-1042 - Switch to systemd specific OOM adjustment mechanism #PSBM-56344 (Igor Sukhih )- Enable hardened build, see #PSBM-58107- cosmetic fix - fix vz script not fail in case stopped libvirtd (#PSBM-65325) - move init prl srv- version bump to 7.0.144- add workaround to disable tcache for vstorage (#PSBM-64068) - add option for error message in get_rss- add forgotten read to low memory event handler (#PSBM-62266)- Update copyrights (Andrey Bondrov )- Add rebranding macroses, see #PSBM-58317 (Konstantin Volkov ) - Drop systemd unit installation - moved to sources, see #PSBM-58317 (Konstantin Volkov )- Drop systemd unit installation - moved to sources, see #PSBM-58317- not rely to libvirt version when parse qemu cmdline (#PSBM-60274) - catch Error exception in nr_cpus & set_config (#PSBM-60274) - vz script swap and vram zero-value fix (Derbyshev Dmitry )- set-policy fixes (Derbyshev Dmitry ) (#PSBM-59885) - minor cleanup - path for vstorage- dont update stats on deactivate (#PSBM-59222)- remove workers - remove request decorator - log possible typos and missing cgroups (Derbyshev Dmitry ) (#PSBM-58041) - print script's stdout (Derbyshev Dmitry ) (#PSBM-58041)- Common format for services config fix (Derbyshev Dmitry ) (#PSBM-58041)- Common format for services config (Derbyshev Dmitry ) (#PSBM-58041)- vcmmdctl current-policy rework (Derbyshev Dmitry ) (#PSBM-58420) - vcmmdctl get-current-policy renamed to current-policy (Derbyshev Dmitry ) (#PSBM-58420) - GetPolicyFromFile dbus call added (Derbyshev Dmitry ) (#PSBM-58420) - pass config filename during VCMMDConfig creation (Derbyshev Dmitry ) (#PSBM-58420) - log args for functions called via dbus (Derbyshev Dmitry ) (#PSBM-58015)- add cli for policy switching (#PSBM-57909) - move json load under try - fix max guarantee size for vstorage- fix ram_size in vz script - update default guarantee in update_ve_config - fix syntax error - set auto guarantee for VM in vcmmd (#PSBM-55018) - handle ValueError in vstorage-config parse- add vstorage config to setup.py- update file list in .spec (#PSBM-57684)- move vstorage limits in separate config (#PSBM-57684) - dont set node list if nodes is None- try to pin VE on each step of balance - remove set_memstats_period in init VM- subscribe balloon policy to low memory notification - fix block stats - fix count name - fix exception handling- cosmetic fix in numa migration accounting - don't fail if we already deactivated in counter increment - dont lookup qemu pid each get_rss call- add get_rss (#PSBM-57330)- add low memory evens count to policy stats - minor cosmetic fix - drop VE from stats on deactivate- fix apply_changes (#PSBM-57023) - increase epoll timeout (#PSBM-57023) - polling by EPOLLIN flag (#PSBM-57023) - add policy.shutdown in load manager (#PSBM-57023) - add workaround to avoid notification flood (#PSBM-57023) - add numa_low_memory_callback to base NUMA policy (#PSBM-57023) - rework low memory callback registration (#PSBM-57023) - add low memory notification (#PSBM-57023)- set memory_migrate before set affinity- dont re-set affinity if it's not changed (#PSBM-56357) - dont use numa_migrate for ct (#PSBM-56643)- lookup and activate vstorage slice in vz script (#PSBM-49711 #PSBM-48754)- fix report ksm/numa policy in config (#PSBM-55578)- disable balloon policy by defautl - avoid THP scanning in the guest (Derbyshev Dmitry ) (#PSBM-55578) - misc. fixes (Derbyshev Dmitry ) - avoid KSM scanning in the guest (Derbyshev Dmitry ) (#PSBM-55578) - cpu_features added (Derbyshev Dmitry ) (#PSBM-55578)- increase oom guarantees for system.slice (#PSBM-56347)- log dbus requests (Derbyshev Dmitry ) - Revert "log bdus requests" (Derbyshev Dmitry )- fix policy counters (#PSBM-56090)- catch NoSuchProcess in lookup_qemu_machine_pid (#PSBM-56026)- use memory.numa_migrate for pinning CT memory (#PSBM-54455) - Revert "temporary remove guaranty type from config"- fix update stats for vm (#PSBM-52255) - fix check name in ve/base (#PSBM-49711) - log bdus requests (Derbyshev Dmitry ) (#PSBM-55150)- remove numa_enforce_settings from activete/set_config - temporary remove guaranty type from config (#PSBM-55597)- pretty output for get_current_policy (Derbyshev Dmitry ) (#PSBM-55022) - add guarantee_type to ve config (#PSBM-49129 #PSBM-55018) - add numa_configured check for VEs (Derbyshev Dmitry ) (#PSBM-53459) - fix logic in ve_config nodelist and cpulist default values (Derbyshev Dmitry )- do not get unapplied values from prl-disp config in vz script (Derbyshev Dmitry ) (#PSBM-55034)- split CT class (#PSBM-49711)- add nr_cpus field (Derbyshev Dmitry ) (#PSBM-51444)- ignore empty nodes (#PSBM-55090)- BUGFIX Teach vcmmd to tolerate empty NUMA node list #PSBM-55090 Previous commit 21f9e69ad017c2981047ee2db8c1d7eb011d47b7 was intended to fix this, but it would work for lines containing whitespace characters, thus replacing "not" with "isspace()" call. (Pavel Vokhmyanin ) - set cgroup limits on CT's registration (Derbyshev Dmitry ) (#PSBM-54957) - move ve.active check to update_ve_config (Derbyshev Dmitry ) (#PSBM-54957) - common code for policies moved to policy.py (Derbyshev Dmitry ) (#PSBM-54957)- catch libvirt error in set_node_list- add thptune option for host - cgroup limit_in_bytes value correctly changed after CT restore (Derbyshev Dmitry ) (#PSBM-54719)- use aliace "performance" in config - move unpin ve to policy - Revert "get ves list in update_ve" - get ves list in update_ve- add workaround for libvirt 2.4 (#PSBM-54553) - reset cgroups only if ve was managed by policy - use LIVE flag instead of CURRENT - don't tune memory_migrate each time - fix cpu number calculation- add alias for policy- fix vz script- add node_list and cpu_list into ve_config (#PSBM-53459) - misc: parse_range_list on empty string - add support for string values in config (#PSBM-53459)- add walkaround for cpu/node set (#PSBM-52315)- wait for virtuozzo.target on vcmmd start in vz script (#PSBM-48046)- report policy stats in vcmmdctl (#PSBM-52152)- cosmetix fix - set memory.low for machine.slice to infinity (#PSBM-52330)- cosmetix fix - set memory.low for machine.slice to infinity (#PSBM-52330)- set_mem on config update (#PSBM-52254)- fix raise in load manager queue (#PSBM-52181)- Catch ve_name_already_in_use error in init script. (#PSBM-48046)- add "config" option for vcmmdctl - move and rename cpu_counting method form numa to host module - fix mem stats for node - fix log level in set_node_list- switch to new vz memory policy (#PSBM-51051) - mark config file as "config(noreplace)"- fix raise in unregister VE vs policy processing (#PSBM-51985) - add restriction for nodes without NUMA (#PSBM-51051) - cosmetic, remove useless loging - remove ve_list and ve_list_all from policy (#PSBM-51051) - update NoOpPolicy (#PSBM-51051) - fix race ldmgr (#PSBM-51051) - fix race in stats module (#PSBM-51051) - rework NUMA stats collecting and storing (#PSBM-51051) - add vcmmd:env (#PSBM-51051) - fix dimensions in mem stats (#PSBM-51051) - add method for tune memory_migrate option (#PSBM-51051) - cosmetic fix (#PSBM-51051)- fix import (#PSBM-51927)- add "Controlles" section to config (#PSBM-51852) - add conflict with ksm pkg (#PSBM-47473)- Add workaround for psutil<2.0.0 (#PSBM-51738)- fix error handling in ksmtune - stop workers by exception - RQueue improving - drop request decorator for get_quotas - add KSM class to policy (#PSBM-47473) - rework update/balance task schedule in load manager (#PSBM-47473) - add new RQueue class for LoadManager (#PSBM-47473) - add ksmtune method to Host class (#PSBM-47473) - fix logic in set_mem (#PSBM-47473) - drop set_memstats_period (#PSBM-47473) - split update stats methods (#PSBM-47473) - fix parametr type for set_node_list - ldmgr: NumaPolicy subclass of Policy added - ve: add NUMA related stats and methods from cgroups - rework VE method for get/set numaset (#PSBM-47472) - cgroups: CpuCgroup class added - cgroups: MemoryCgroup stat reporting functions added - cgroups: CpuSetCgroup added - numa: Numa class added - numa: Node and NodeStat classes added - numa: Cpu and CpuStat classes added - numa: initial commit - util/misc: add range list functions - vcmmd: multiple policies support - policy: keep list of all ves- Add VCMMD_VE_SERVICE ve type- add last_update to stats (#PSBM-48681)- Add license information (#PSBM-44847) - Drop beancounter cgroup- vcmmdctl: report ve_quotas (#PSBM-48663) - ve: Remember last target and protection set for each VE - vcmmd: report missing stats via vcmmdctl (#PSBM-46796 #PSBM-48663)- introduce default balance interval for policy (#PSBM-48679) - move set stats update period to separate method (#PSBM-48679)- default policy should be NoOp (#PSBM-48691)- ve: ct: Adjust memory.high asynchronously - ve: ct: Drop VE.CT.SoftMemTarget config option - util: logging: add flush for LoggerWriter- ve: ct: Handle containers under machine.slice (#PSBM-48628)- take in account registered but not activate VE (#PSBM-48478) - increase mem overhead - Take in account current balloon size before set new value (#PSBM-48383)- drop "commited" from stats - rework communication with libvirt and collect stats (#PSBM-47580) - util: libvirt: Carefully remove stale counters from memstats - fix set_mem- move quota calculation to policy - drop StaticPlolicy- ldmgr: add host parameter for balancing - host: initial commit - add vm_types to garanty dict (Konstantin Neumoin ) - fix protection size - Drop unused import of Error in ve/__init__.py - Move VEStats to ve/base.py - stats: refactor stats class - return from set_mem immediately if desired size equal actual - report current policy via vcmmdctl (#PSBM-46796)- cli: pretty output a little - set correct ve_type for linux/windows vm - add two new VM types - increase valid timeout for stats update- util: libvirt: Ignore outdated memory stats from virtio balloon - ve: ct: Export swapin and swapout stats if available - ve: ct: Fix memavail calculation- change default policy to WSS (#PSBM-46895) - rename DEFAULT_POLICY- Store policy data in dict inside base class Policy- add shared memory to mem_avail- util: libvirt: Fix lookup qemu-kvm pid by VM name (#PSBM-46277)- Zap WSS and WFB policies- vcmmd:scripts/vz: bugfix for CT - Zap memtotal VE stats counter - util: libvirt: Do not log info messages on reconnect attempts - util: libvirt: Do not log error on connection failure- scripts: vz: Fail gracefully - ve: Add logging helpers - ve: Prefix debug output with function name - Rename VE.update -> VE.update_stats - idlememscan: Drop histograms support - Drop numpy requirement- Do not mangle VE config (#PSBM-45717) - cli: Fail gracefully if vcmmd service is not running - Add init script for restoring Virtuozzo containers and VMs (#PSBM-44917) - Reintroduce init script support - Zap saving VE configuration to tmpfs - Move VE related checks from vcmmd.ldmgr to vcmmd.ve - Do not abort VE activation if failed to apply config (#PSBM-44784) - cli: Do not group VE config options - Remove unused import ve.Error from ldmgr.base - Fix 'Started' not printed to log when the daemon starts - Add /etc/vz/vcmmd.d/vz to the package- ve: ct: Fix huge memfree on container start - Add VE stats for host mem and swap used - Increase error logging verbosity - cgroup: Make cgroup path and abs_path public members - Define PAGE_SIZE in util.limits - wfb policy: Make sure quota is always between guarantee and limit - Reduce expected VM overhead from 200MB to 32MB - Rename config VE.VM.QEMUOverhead -> VE.VM.MemOverhead - Add video RAM size to VE config - Add flags argument to register, activate, and update operations - Rename NO_SPACE error to UNABLE_APPLY_VE_GUARANTEE- ve: stats: Keep all stats in a dict - Merge MemStats and IOStats - Zap mem_stats.wss - Zap VEConfig.effective_limit - ve: Drop InvalidVENameError and InvalidVETypeError - Cleanup VE config handling - Use the same VE type name constants in both service and client - Use the same error class in both service and client - Replace Logging.Debug config option with Logging.Level - Drop -d command line option - Allow to set VCMMD logging level via vcmmdctl - Drop vcmmdctl dump - Supply policy with the right logger in the abstract class - ldmgr: Calculate mem_avail on each rebalancing - Take into account VE overhead when checking guarantees - util: libvirt: Lookup balloon path on demand - Rename VE.policy_priv -> policy_data - ldmgr: Rename update_ve -> update_ve_config - Add policy callback to notify about VE config updates - Add policy callback to notify about stats updates - Move active VE list management to load manager policy - Always return exactly -1 for absent stats - Increase verbosity of debug output - Make sure all VE stats are always present - Cleanup config output - Rename LoadManager loggers - Do not dump all config parameters to the log unless in debug mode - Move logging related to VE state changes to VE class - Insert assertions checking if VE is active where appropriate - Do not require VE.set_config after VE construction - Revert "ldmgr: Rate limit VE stats dumping in debug mode" - Remove WSSSoftPolicy - Rename VE.update_stats -> VE.update - Merge set_mem_protection and set_mem_target VE methods - Do not suppress error message if failed to load policy - Separate underlying VE implementation from VE handling logic - Assume that all policies need periodic stats updates - Drop idle VE memory tracking infrastructure - cgroup: memory: turn _IdleMemScanner into a singleton - Prefix ve types with VE_TYPE_- ve: ct: Catch IOError in set_mem_target - Use a more reliable way to lookup QEMU machine cgroup (#PSBM-45267) - ve: Get rid of trivial properties - Prefix all vcmmd error constants with VCMMD_ERROR_ - util: libvirt: Do not lose stack trace when re-raising error - Revert "Reduce QEMU process overhead estimation from 200MB down to 32MB" - Revert "Account KSM shared pages when calculating memory available for VEs" - Revert "Don't wrap libvirt attribute if it's not callable" - wss policy: use VE.mem_stats.memavail if available - Revert "wss policy: collect x-stats from balloon if its posible" - Add committed_as to memory stats - Add memavailable to memory stats - util: libvirt: Make memoryStats report stats unknown to libvirt/qemu - util: libvirt: Move connection checking to decorator - Factor out ve stats update - Report actual, memtotal, and memfree for containers - Rename available/unused mem stats to memtotal/memfree - cgroup: Do not pass full file name- wss policy: init AbstractVE._actual and wss in constructor - wss policy: fix debug message - wss policy: fix constant - wss policy: fix policy for CT - ldmgr: Do not rate limit debug dumps by default - wss policy: do not dump ve name for the second time - wss policy: add report stats source for debuging - wss policy: collect x-stats from balloon if its posible - wss policy: add alias for mem stats counters - Don't wrap libvirt attribute if it's not callable- ldmgr: Rate limit VE stats dumping in debug mode - Move idle memory tracking parameters to VE config section - ldmgr: Cleanup initialization - ldmgr: Zap constants for default configs - Unify VE stats dumping in debug mode - Account KSM shared pages when calculating memory available for VEs - Reduce QEMU process overhead estimation from 200MB down to 32MB - Dump all loaded config parameters to log - ve: vm: Move all constants to config- WSSSoftPolicy: add new policy - WSSPolicy: rename _VEPrivate -> AbstractVE - WSSPolicy: fix logging- Set memcg oom_guarantee for system slices (#PSBM-44683)- Rename WeightedFeedbackBasedPolicy -> WFBPolicy - policies: Do not pass logger around - WSSPolicy: additional logging for trace problem in policy - config: Cache retrieved values - config: Cleanup option values retrieval - Move load manager parameters to config - Rework calculation of host memory reservation - Drop code enabling tcache/tswap - Use memcg/memory.high for setting memory target for containers - Set memcg/memory.oom_guarantee for VMs and CTs (#PSBM-44450) - ve: Zap _set_mem_max, _set_swap_max - Add command to dump info about all running VEs to the log - Add pygobject2 and libvirt-python to dependency list (#PSBM-44062)- add new ve propery memory overhead (#PSBM-40830) - WSSPolicy: add support for CT- Allow to set debug logging level via config - policies: wfdbk: Fix div/0 (#PSBM-43855) - split logic for diff guests in diff classes- vcmmd:WSSPolicy: fix gap calculation - vcmmd:WSSPolicy: move align to decorator - vcmmd:WSSPolicy: set default guest type - Escape name of VM machine slice cgroup properly (#PSBM-43766) - ve: Simplify error reporting - cli: Output decimal places of mem value only if it's small- rpc: dbus: Add IsVEActive method- Make sure daemon terminates on unhandled exception - cli: Drop the semicolon in output - cli: Allow to specify units in which memory values are reported - ldmgr: Fix crash in case VE state file is corrupted (#PSBM-43660)- policies:WSSPolicy: add support linux guest in policy - policies:WSSPolicy: add VmGuestSession class for exec in guest - policies:WSSPolicy: fix delta calculation - Rename config file to /etc/vz/vcmmd.conf - Drop init scripts support - ldmgr: Move complex init to worker thread - ldmgr: Store VE configuration in tmpfs (#PSBM-43114) - rpc: dbus: Assure all input arguments are of normal Python types - Improve message for NO_SPACE error - Improve message for invalid VE configuration error - Update file list- ldmgr: Allow policy to disable features it does not need - policies: wfdbk: Fix thrashing detection (#PSBM-43582)- vm: Roundup hotplug memory to 128MiB (#PSBM-43290) - policies: wfdbk: Scale unused by quota, not limit - policies: wfdbk: Dump VE stats in debug mode - Resurrect no-op policy - ldmgr: Increase host reservation on small machines - policies: wfdbk: make sure sum quota <= mem avail - ldmgr: Allow policy to return quotas whose sum > mem avail - ldmgr/ve: Do not save last quota - vcmmd:ldmgr:policies:WSSPolicy: increasing balloon size should not be too fast (#PSBM-40757) - Add new policy WSSPolicy (#PSBM-40757) - vcmmd:ve:vm: add new field for guest mem stats (#PSBM-40757 #PSBM-40013)- rpc: dbus: Add GetVEConfig method - cli: Rename --guar to --guarantee - Do not import load manager code when running client - Move errno to upper level - rpc: dbus: Split into client and server parts - Encapsulate rpc proxy code in vcmmd.rpc.dbus.RPCProxy- ldmgr: Fix broken policies package - ldmgr: Remove stale import- Allow to choose load manager policy via config parameter - Add config file - Add singleton metaclass - Include vcmmd config into the package- ct: Set udp/tcp limits - ct: Do not use memory.high for setting memory target - ve: Do not provide MemStats.actual for containers - ve: Fix comment to ve.Config.guarantee - ve: Print Error class name to log - ve: Drop VE_TYPE_NAME - Add libvirt reconnect support- policies: wfdbk: Avoid div/0 due to zero quota - policies: wfdbk: Assure quota is always an integer - Add logger to Policy class - Cleanup daemon main function code - Make logging per module - Add gitignore- Use host memory size as the limit for 'unlimited' containers - Do not fail to start 'unlimited' containers - cli: Report limit >= INT64_MAX as 'max' - Restore VZ containers on startup - Allow to run custom scripts on daemon startup - Cleanup logging functions invocation - Cleanup rpc server code - Include VZ startup script into the package- policies: wfdbk: Increase VE quotas in case there is free memory- Drop force argument to register and update VE operations - Enable tcache/tswap - Configure memory reservations for system slices - Introduce weighted feedback-based policy - VM: modify setting memory function to use appropriate libvirt API - cgroup: Fix idle memory portion reporting - Move VE register/update guarantee check to the load manager core - Rework load manager balancing procedure - Do not pass inactive VEs to load manager policy's balance method - Make load manager pass available memory size to policy - ve: Zap __need_apply_config - ve: Add method for getting idle memory estimate - Rework memory cgroup idle stats getter API - Simplify interface for configuring current memory allocation of a VE - Elaborate VE statistics - cgroup: Make read/write helpers 'protected' - Fetch IO statistics for virtual machines - Fetch IO statistics for containers - Add helper class to work with blkio cgroups - Introduce VE IO statistics - Always force absolute_import - Introduce static load manager policy - Improve comment to no-op load manager policy - Introduce idle memory tracking for memory cgroups - Fix systemd service missing Install section (Ashley ) - ve: Add more comments to the code - ve: Make set_mem_{low,high,max}, and set_swap_max methods 'protected' - Update spec file for building idlememscan- cli: Increase number of symbols for name to accomodate UUID - Check that VE memory cgroup exists on activation - Reference VMs by UUID instead of name- Replace CommitVE method with ActivateVE and DeactivateVE - ve/vm: Move libvirt memory stats activation to commit stage - Implement basic guarantee check on VE registration and config update - Move RPC code to a separate package - Split util module - s/overwrite/override in comments - Rename ElementaryPolicy to NoOpPolicy - Update VE stats before checking if a VE can be registered/updated - Allow load manager policy to trigger rebalancing after timeout - Implement set_mem_low method for virtual machines - Fetch memory statistics for virtual machines - Fetch memory statistics for containers - Introduce VE memory statistics - Improve command line interface - Require python-psutil- Drop max_limit config parameter- Add basic support of VMs- Rework vcmmd so as it could support both VMs and CTs. This zaps all existing logic. It will be recovered later.- config: tune {ANON,FILE}_WS_SLACK default values- memcg: fix high demand detection- base: do not inform about loading/saving state unless debugging - memcg: reserve some memory for system.slice and user.slice - config: rename MEM_IDLE_SAMPLING_RATIO -> MEM_IDLE_SAMPLING - config: drop MEM_IDLE_THRESH - config: drop HIGH_WMARK_{RATIO,MAX}- idlemem: always warn about scanner lags - config: warn about unknown options - config: do not try to load config if there is no such section - config: use error log level for reporting config loading problems - config: do not warn about absent options - main: allow to specify config section to load - memcg: allow to disable dynamic balancing - memcg: make MemCg class private - Rename core -> base- idlememscan: fix crash on kpageflags/kpagecgroup read - idlememscan: improve rw error reporting - config: fix {ANON,FILE}_WS_SLACK names in the conf file - config: sanitize config parameters - memcg: fix MEM_STALE_SHIFT usage - memcg: use MEM_TOTAL as max limit - memcg: cache effective entitiy limit- config: tune parameters related to wss estimation once more - memcg: smooth dip of wss curve - memcg: cleanup __update_demand- systemd: enable coredump generation - memcg: propagate IOError.errno to Error - core: do not output errcode on error - vcmmdctl: improve error reporting- Restart vcmmd.service on upgrade- memcg: fix debug output - util: make strmemsize output len <= 5 chars - memcg: fix distribution when undercommitted - memcg: make overcommitted case distribution fair- memcg: fix sum demand overflow for unlimited containers - memcg: cache some config params - util: strmemsize: add Gigabyte suffix - core: fix LoadConfig.strmemsize output for unlimited containers- memcg: rename wss -> demand - memcg: take into account pgpgin while estimating max wss - sysinfo: reintroduce PAGE_SIZE - config: tune idle/stale age defaults- idlememscan: fix leak of PyArray data in py_result - idlememscan: pack results for anon/file in tuple - idlememscan: do not include root to the final result- memcg: do not calculate memcg path on each read/write - memcg: optimize wss estimation - util: add constants for int64/uint64 max - memcg: fix effect of {ANON,FILE}_IDLE_AGE config - core/memcg: allow to register nested cgroups - idlemem: optimize result generation - Require numpy- core: fix crash on unregistering stale entities (#PSBM-41097) - main: return non-zero on failure- idlememscan: fix idle mem tracking thread breakage in daemon mode- Move to src.openvz.org- idlemem: do not warn about small lags - idlememscan: cleanup MAX_AGE definition - memcg: add min for idle age - memcg: limit max age - memcg: improve debug output - rpc: do not dump request/response to log - config: use logger.info to inform about loading config - core: use logger.info to inform about loading/saving state - memcg: rework balancing logic - memcg: zap BaseMemCgManager.__init__ - memcg: rename TRACK_UNUSED_MEM -> TRACK_IDLE_MEM - memcg: update mem_unused only when idle_stat is actually updated - core: add AbstractLoadManager._entity_iter method - idlemem: do not crash if failed to load idlememscan - config: set MEM_IDLE_DELAY default to 5 seconds - memcg/idlemem: use sampling while estimating idle memory size - config: cleanup and simplify config loading - sysinfo: lookup memcg mount at runtime - memcg: drop MAX_RESERVATION - config: do not abuse sections - idlemem: warn once if lagging - idlemem: do not dump idle size estimates to log - memcg: scale idle size instead of using absolute values - idlememscan: return result in bytes - idlememscan: do not count unevictable pages - idlememscan: handle module load error gracefully - idlememscan: do not reopen files on each iter - idlememscan: add ability to set sampling - idlememscan: return full idle history - idlememscan: parse zoneinfo to get end pfn - idlememstat: count total number of pages scanned - Rename kpageutil -> idlememscan - idlemem: move most of scanner logic to kpageutil - memcg: move idle mem tracking in a separate module - util: add Singleton decorator - memcg: do not trigger update periodically - kpageutil: track idle page age history - kpageutil: /proc/kpageidle -> /sys/kernel/mm/page_idle/bitmap - kpageutil: rename kpf_{open,read,write} to do_{open,read,write} - kpageutil: clarify count_idle_pages return type - kpageutil: rename count_idle_pages_per_cgroup to count_idle_pages - kpageutil: pass format string to PyErr_Format- memcg: set sock buf limit - memcg: limit container memory demand to host RAM - memcg: set mem high to MAX_LIMIT if mem limit equals MAX_LIMIT - core: fix LoadConfig.MAX_LIMIT- Fix coding style - memcg: zap memory guarantees - memcg: set memory.high - config: move idle tracking params to memcg section - memcg: drop memory.low_limit_in_bytes support- config: set core.mem_inuse_time to 300 by default - memcg: use memory.low if available- core: improve logging format of memory values - main: handle RPCServer init error properly - cli: allow to use common suffixes for memory parameters - cli: do not reset parameter to default if not given - memcg: allow to disable idle mem tracking from config- core/memcg: improve debug output - core: trigger load update periodically - memcg: account mem_usage decrease in mem_unused - memcg: use buffer when reading/writing - memcg: rename methods reading/writing memcg files - core: get rid of entity's check method - core: assure entity id is str - core: add load entity's update/sync methods - memcg: move error handling to __read/__write - core: move reset method from load manager to load entity - core: zap AbstractLoadEntity.__str__ - core: convert AbstractLoadEntities.{id,config} from methods to variables - memcg: cleanup MemCg methods - core: rename AbstractLoadEntity.update_config -> set_config - memcg: reset entity low limit on unregister and shutdown - memcg: never raise exception from _do_update - memcg: ignore guarantees if they canno be fulfilled - memcg: reserve some mem for the system - config: move some memcg options to core section - memcg: move min_unused_mem to config - memcg: enhance low limit calculation logic - sysinfo: add MEM_TOTAL - sysinfo: close /proc/zoneinfo in _get_end_pfn()- memcg: do not fail if idle memory tracking is not avalable - memcg: take unused memory size into account - memcg: do not set low limit in update_config - Add basic tcache/tswap support - memcg: fix div/0 in UnusedMemEstimator.__throttle - kpageutil: update /proc/kpageidle handling - kpageutil: disable buffering before opening stream - kpageutil: kpf_open: rename pfn -> pos - kpageutil: kpf_read/write: let n be num elements in buf- Initial version/bin/sh/bin/sh/bin/shvcmmd-hci  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~8.0.96-1.vz78.0.96-1.vz7 8.5.0   com.virtuozzo.vcmmd.confvcmmdvcmmd-tmpfiles.confvcmmd.confvstorage-limits.confvcmmdvcmmd-8.0.96-py3.6.egg-info__init__.py__pycache____init__.cpython-36.opt-1.pyc__init__.cpython-36.pyccli.cpython-36.opt-1.pyccli.cpython-36.pycconfig.cpython-36.opt-1.pycconfig.cpython-36.pycenv.cpython-36.opt-1.pycenv.cpython-36.pycerror.cpython-36.opt-1.pycerror.cpython-36.pychost.cpython-36.opt-1.pychost.cpython-36.pycmain.cpython-36.opt-1.pycmain.cpython-36.pycnuma.cpython-36.opt-1.pycnuma.cpython-36.pycve_config.cpython-36.opt-1.pycve_config.cpython-36.pycve_type.cpython-36.opt-1.pycve_type.cpython-36.pyccgroup__init__.py__pycache____init__.cpython-36.opt-1.pyc__init__.cpython-36.pycbase.cpython-36.opt-1.pycbase.cpython-36.pycblkio.cpython-36.opt-1.pycblkio.cpython-36.pyccpu.cpython-36.opt-1.pyccpu.cpython-36.pyccpuset.cpython-36.opt-1.pyccpuset.cpython-36.pycmemory.cpython-36.opt-1.pycmemory.cpython-36.pycbase.pyblkio.pycpu.pycpuset.pymemory.pycli.pyconfig.pyenv.pyerror.pyhost.pyldmgr__init__.py__pycache____init__.cpython-36.opt-1.pyc__init__.cpython-36.pycbase.cpython-36.opt-1.pycbase.cpython-36.pycpolicy.cpython-36.opt-1.pycpolicy.cpython-36.pycbase.pypoliciesNoOpPolicy.py__init__.py__pycache__NoOpPolicy.cpython-36.opt-1.pycNoOpPolicy.cpython-36.pyc__init__.cpython-36.opt-1.pyc__init__.cpython-36.pycpolicy.pymain.pynuma.pyrpc__init__.py__pycache____init__.cpython-36.opt-1.pyc__init__.cpython-36.pycdbus__init__.py__pycache____init__.cpython-36.opt-1.pyc__init__.cpython-36.pycclient.cpython-36.opt-1.pycclient.cpython-36.pyccommon.cpython-36.opt-1.pyccommon.cpython-36.pycserver.cpython-36.opt-1.pycserver.cpython-36.pycclient.pycommon.pyserver.pyutil__init__.py__pycache____init__.cpython-36.opt-1.pyc__init__.cpython-36.pyccpu.cpython-36.opt-1.pyccpu.cpython-36.pyclibvirt.cpython-36.opt-1.pyclibvirt.cpython-36.pyclimits.cpython-36.opt-1.pyclimits.cpython-36.pyclogging.cpython-36.opt-1.pyclogging.cpython-36.pycmisc.cpython-36.opt-1.pycmisc.cpython-36.pycoptparse.cpython-36.opt-1.pycoptparse.cpython-36.pycsingleton.cpython-36.opt-1.pycsingleton.cpython-36.pycstats.cpython-36.opt-1.pycstats.cpython-36.pycthreading.cpython-36.opt-1.pycthreading.cpython-36.pyccpu.pylibvirt.pylimits.pylogging.pymisc.pyoptparse.pysingleton.pystats.pythreading.pyve__init__.py__pycache____init__.cpython-36.opt-1.pyc__init__.cpython-36.pycbase.cpython-36.opt-1.pycbase.cpython-36.pycct.cpython-36.opt-1.pycct.cpython-36.pycvm.cpython-36.opt-1.pycvm.cpython-36.pycbase.pyct.pyvm.pyve_config.pyve_type.pyvcmmd.servicevcmmdvcmmdctl/etc/dbus-1/system.d//etc/logrotate.d//etc/tmpfiles.d//etc/vz//usr/lib/python3.6/site-packages//usr/lib/python3.6/site-packages/vcmmd//usr/lib/python3.6/site-packages/vcmmd/__pycache__//usr/lib/python3.6/site-packages/vcmmd/cgroup//usr/lib/python3.6/site-packages/vcmmd/cgroup/__pycache__//usr/lib/python3.6/site-packages/vcmmd/ldmgr//usr/lib/python3.6/site-packages/vcmmd/ldmgr/__pycache__//usr/lib/python3.6/site-packages/vcmmd/ldmgr/policies//usr/lib/python3.6/site-packages/vcmmd/ldmgr/policies/__pycache__//usr/lib/python3.6/site-packages/vcmmd/rpc//usr/lib/python3.6/site-packages/vcmmd/rpc/__pycache__//usr/lib/python3.6/site-packages/vcmmd/rpc/dbus//usr/lib/python3.6/site-packages/vcmmd/rpc/dbus/__pycache__//usr/lib/python3.6/site-packages/vcmmd/util//usr/lib/python3.6/site-packages/vcmmd/util/__pycache__//usr/lib/python3.6/site-packages/vcmmd/ve//usr/lib/python3.6/site-packages/vcmmd/ve/__pycache__//usr/lib/systemd/system//usr/sbin/-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -m64 -mtune=generichttps://virtuozzo.com/cpioxz2noarch-redhat-linux-gnuexported SGML document, ASCII textASCII textdirectoryemptyPython script, ASCII text executableC++ source, ASCII text  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR?7zXZ !#,f] b2u Q{LX ۍXUUӷeqS/߭d>@5ZΨOJ)6H=B46J/'13M~t_KݱTu6rE^N^li_Bdޱdx'=8`^^E,C֣!#nɞyRxKa= __N:m~\f4z*ԐLyid3̻Pgc7mZ,IK 4ZixXŎBɉ,@5j#vZȓ?qaK?z?gZLWzqeekHX. V NuػN$4rNt:UB{[Ӵm\1U@lh!=JXF&QW,|Uo| { ?+P1>c *̾ }BDVS}7;Ҙt ??ߟ-j4d6eeL5R>׉goHQ/h11:T. DzV M݇n$>[-x8GT-A#B(.K7bAUͶ@O!p֩7FX&{C_Gp^㥁E P=o /Ko$Jo`'%ǜޫ~###$K3N撚$8s @6{}Ej K'K݇NGkٺ P/Z&SM{ :.i틝BhKv9hJcƻ_)^%AZTPdm{0^c3vv_i؃bJ%!:9b7h1Kr*ݛU%nInѓ~m 'J͓Mp6m?h\*I<Ϻן3jHJ KhtQq0|ݥ2l3C*H#h<+I.a>_u9(BOٙ$WYp`9F+|Jx@$^S]{O"μjV`qeH3|L/ȟ# ӗ|s,BsnNT1EZc`YU?;+q umtWq0!UVhvBwr #G f=7Oy!ĦAw

O΅_yD\f7PڑMDܹs=<8X[H~cg`^#YF%aΥbkͳt$Ngn\W 5U{oLEs+LLM 6KӜ%зDkG54,Y]yyւ-Ylrމݧk6U;6CښC~g+[ޜ ? 9+S9)OLX֩q/p[-ee\Xh|)]+| .r[ǵO []͓!-4TӦ9t YԤ-NT< 7 4dYthw?v 9h6ͽlTOÏY^➟+Xc[ԗP؟ߛc=F=(9kV:@:<s k!ɉ-A`npXA:{ ;Q"?0=ozQ_( "u6QG揶ҩn2!M uZ>FQ~ 4uG3Mc'GȞ{zߐ%!&u *$'P91{Hw7DC8sR_<#Qxu̇uS^0Qhne%ڇ .rTv!`Ba$!SѾɉTs6`LG#;Xj4Ѳ\oz7]ulL~Op}^^|_H{3IE^ zUjwH&LSn#A@9^-J:#o$=YM-h\BGGtuß})'Q+;~)xc﯂MIZN\[)A} W!A8\CF rُ$JޭBYKfH|3BfF, ",1nbƫtWKCJљlV^Ydmƍp6':_\Woڨ?C48]|+d6M mTGi2LVea#khOFn$̶EOP*5}w>p pAf\xwunSH$CX^aonoU#G̎m~hބH !M0~&v|TBO׾-tR"- LcYbZ lpZ{?F l۷#DW\Ȝ{y'Hy#"rک0RoW/b6l(g0b{"PhX00Mt{ ^T@˴D5PP5>Qv,8|:9": i$S@h;!fk6Hn]'pݞaY|&x*: iq0D.'R`u}"p7HF6274'kQɈG_+UQit#f!`J7X?ǏBîBBV&W]q?p(R O`Р3Hp|̧I<+l "ogNpK=-ϕuJ][ F?`@vq nK--%H\*7u}S*ԧBެ=٭DTJ폵˽f;X/M2lbK *i"xKw'R+FnjU4R.w#Xkm\+<*="4lv_,rG/r6ouyB+\aA^՞s}GeP^lrtDO;V.қT`„=S2vb?5qXV9% ZKWۘt3?9=e=/v/K5<8ќ;#ܼA{ȡXl) Fx(h4iƻWX$#ѼلG\uǮ bBۚTظUl|^pcy*!^<)b7iDM=jSQCKܵ5="&{+_YHcמ0\vYF{2,8!L]1W{D'MRhp/_K( >1$ ]A-lwFQ@'">lb3{VI@lLA6Q$SsGc+IK?RG%aG3ۗT]k-1C91!#g^t\}{0KNؿC KaGtRͧހ<*>U%Y9hG=4EWSC~e Mr y_['݈QF%;y3Y[0 ZBA`duG]`xFb,p;)WX ]3+GcNz48wh}OIp{7.Mm5cb[)~azrkdJۇ6 .Lʔ |ƒQ[Sz$#$>ٸ ,F"U%[Q5GHd"W!xrVs#TȠj1sT`{z'@4zY}+UĭC?!{ysf[oP|EXjvO~hR5 qeoNРEV0aŕO2prY@l'xtq!E|L7,Y8V K]#̺AS8#EJ5 b#q 85ey! y/{\txsKL؁DpY T箦=mb.M٢3 O@9k*ۓC b /8P\>YT)iɿ'LCJISƴTǚ@/{BݰUB3_Gk!be{qpk!Ϥ;:*UDv "u1T" H{@x;t.3'L}wCҔh3gٟ/JC(cB]W5f ćml%VK#3N{3XvJAESsrw;<>"SrBF+DЌ= ;\q[4e/zQHNW~#ˋ \@, ),|;\ |ػ 7}԰τ}\f/$++z%iRf !>M\T6=n(LQ3hF#jE&$?L_:T.zt2o釈`=]HnTWR~55 4a(GLla<'5\Z!a*Z0ik T[Ԓ"`YQ!yg(0E5j7 ʉ MGC-[m؃L,?= K(rX (:Xyy<*җ@y gL*d`*(0-k#(sbM^xb&`ٺbVg%;qʡW.5NqBW{@fVSPdD0 :wƠgOӜ69q?eʣmP/5rk1è]VM|)|+fktlzw6<:cuk$3bw1EߡmA,ޡ n8^p! T4o|r,+ : S %5cS'|A'=emhۑxԍJ$trwm]y|iZS>2yԠ̷gk oF2IiH+e ԙP^rc/gg١,ÓGXos[ τl/Cћ҅/ UKJ,?,4Luadng?{Z߿RRXh'C;Y_87/zl4%Wo ug&6t.7\AĄY |R&$ M{&(e:=k_cn"1nɲ/l؂1⠮ªߤ?һxXj\ 䪽ZR8Р'yв^c4C%ڿcgڹ֨^1 wgs.T#:s»/Qn$_V!S~) :E1ڠoqotZS+2[b[-m1fa2$kZB!JկZ1 ,:%*^`}H'?XzϏqS4"?BOK@l^(ɔ͇)DWnef7m wq2#-}>>VzeH ĺ虬5%TȠ坎j >s(BԸYQIFI>wl䳘U5Xz|\N||t3/1Eӳخ^ h 8Anr,&GhLAh`,~2z~ay%P}@t dЩg.{+{a҃%d5nN@7=C<ETDB}3ƣѯ~{Q!|!>@'jtD. A~vy,2S 8H^;_#LYRGPOH") +yqwjޯתUk"b~iBFȚ;yCetUT"~sSL{+U&?PwijKv e8TyXy-orkurJ^σp͕dCŜRqd faaʬ'BhoP֡{U2e~2BwuH*]C+ۗD#^HOQ>x,7 5l 1Kw~mh}}+w7hT@ s4_B%•53lW9jd (^5!5V_Y S6MV1m)y6E_ @r %&dYE n7mǑ?xi Xamڞf|M~dld.\ TD"9g !$kFm"Y 7P~3#|8)kLʥ1F\sOׁ((_EЋ-Zd;03kl@TJ2 M-|F-Vϼ}P=ySgʁ"v _p_̕[$;?{,^flS]?MzD!}*:% ig|lмMŀׇZBD喘jolS~3Jm*f'5$#DxgR0Q:. N 3 az/tb7? IJT=BаY)%$ C{D]st, !q͝C NNƩbX(e/|ž87gZ2%Yqgr?sȲ ~ͼ 0۴CU=Jh7DSçBi@xT,lGo|F,M;[K}?T-UP#xYg5:Ԗ|`QQyay#Ng8pV:TAB\ʯPʹ͕njbmAY"XJR pZfӹ:,=[|Zܲ+ ,t y'/hNb H;®j< cq3``:38=5B? FE?"sTm@^q2Eo-Xlinߟ'd.xKY~MEUGڄW3-x8WF ҴY_ıYCVfυTZFз(E0D{pژ;,<Ç r4vSB0b.zV )rXTu*w}A  @}M4˱{9-\2hNBW\QK4ڧ/ϛ@;RK3(ʚux{5l$;asn6 <5 PN!}u.S|W(sOrZTؾ4d 1? fċWt؏jULBj=.([QjՖT2὘iMG?Ş"z ~γ̻dSM #˒($^9Ue&R _ ~ 1e@jUgO5L˺N*Q&T.!!Njf=o~Y`/$s:_(PA2a@M $7%S^JՏ&MZf+`kf`0y:~JtPӱ /'I9h;JM,k{CfpXMJw$p4nTKamwSnHKۣTs[VV P٨aAb ]Df&_ z/ c+.KlnFM"EȔ$Eᯒf2tL#kIhD1di^&ƹO "jlZ;$Cuxq{py_W;*M:p+wdfwί(MYlcQBMu87X/E~ש{ɠm<1OlJe[]5l/n#%B2 +8Qꠣ.>.U4`i# 1n}[22 ~{dY1GYP?O5?ŖњDb|*r7iPnhi 6cx@\0`^UᲿ"j<)1aLuSb}ƕnUM\զzd_NC!2 z ,>a Ձȼ" LZ2,G\N2VE`bsN, فvMCuKƻFS2O dy,q7n~0i.Ԉ FA@9pe5{QvM k|hCVd쀞=27"k/ ȗ } eDyGxbGҠ88#z9Ûd3aM3]sxkEN52~ y-oSc=zY{ iY~5P+ $r0cت2sF-,;[n"M;Ϫ,ɇ@AF%RFtqЙ hjgmAPl SY5a"J]FB:OV2sP *Xf ɦԲ %WhH &#e5I&I(*1pPOr}hS-;AlD|謂f /__1IH K^hc+rW;27uKL]%IpT:_q:tClf1f,IV3yTK %[ *b@5Ts`VE[*Z A} /an[C=t +{ˆTk)PB;l.}=,FC0a)MXZA%\k20yf?&ª d n$dԄmi[~ǁDCAm[}^0*uD֠=F'a9@I&}x^jPՂnx}jJc`aknpezޭQ2>Ք#e|!2}ԗ|n)_iϡXcDۭpzBͭ}GX2D]V'(J.:>Ng%[T?Wa#+[^l~aM^p& )(-aDLSOalh(*G!Ms/ B'@zXfVo;|fةD&Q'g~]d=T-rq]Ts䥺PHoWچrٷEHMebk#қ̹N(ORG*&+Gƶi.S0FD3A㾬2e2P'69jQ)mFn_(˸#g"" tCZV8x0qT#v5巫^0 >eܬJhiq=^痒s[d acW#&߉=2zuI֬vp0pAc3uNfh #[>wnkIl_+Mpt el{ӷ. V 0@ U. U!¤HxH3##0r/ q&b 8O3ٯ Z=o;AwXȳ*zoge$V5r]7ohS[. :sr7%Z{]s( n)EVȖh9EuIt=Uz:$pުr3|f?;W0D(hsćrrp Ie#N[M媂v/܀$@abr|ƩBQ-I%p1_ΝB|nYdCx|,*?K%~Ram%x Z)g U`t`*ժ>\{UMB~Vr:O~LFA&_JU*.7Rm`{,*eSh*Ϗ/RnD1$QocH~alßdctg+9+(/4O~ L^ED͞2s_O]0A]a{2fy2.g=% 1`5|, 7m -vJd X*ڗORڗ)eu] Y<Ȅ:6'a $Z\y7HY)hUU-qbfP#$3Ȗ&.)41 A hZu[y A4#cćW!{|Urc9ME5.I&gN!:a}:At/ܕ$0`{ϋAfmGK AY\ 9(UuiPmUbo5)ݢ&^TH 6*. )E.}A *p 7%C%Rl~L@.Q.c*,Ĉǐ $pPӬxp-*~C`ls+cFk<Y&}lgVS;/jUZHF2n2RU':]$§9& K CMItgW-1trz-W*ڝ6dc'F7zu;/ggb%qad,ʣkt  bJ{G>6݅LhLQ@H% +~Tш/aa=tub c\ⶹLk q~t[^UP'YϞIl\"[RT\^rYбT`>V@aՇR<]W'./83bw^`+D⪭˦zo3H*ꟍFQY(15,x0_чraJl[= bTZw><3չ],ו?0?JZtK(kX=dz :oq,q=dQb ڠ3sgۭ]4z!]nH)!c% GB -V/S`.9BL#27 th]nSu7S;e:2-PtX )N'kj=X }K ".4ܱ@\Q)uqyj(b4T 'Y,-mkI7ĢIa;v$TiFS=X8/ R%KFBiH!ɞ=ƛbt&n7J[,{Ts/! u~pAF`@2MBxCu+8xLӻHyΝ_(TĻfsۨFιMn/֮[ΒIRYmHQvDuFSs3p  ð/M AdMJNðCyGg 㫳Su>";nGwg(dSFMMbm$$Dp_)T<;K )/`)Z;HP]S-v?ʣՑ i`2cFr4qSKN9' njHN%&kA!e9&XIfKfxZR2yl:qY߼ v퇬F+SLpgD1~ E@7_1<"!':lѭdE,Db3M(9)?}9y4D,H6 0˸˓ Q /̇\2Th64yЃD(,SgE(e2_jR'ELXik/k x;G jEQ\˾x 2BP %oNuvyyZ;0Ù9yRCjѹFC0"QIC7Bf@򝀈ߪ9uewƆM$a9*ǠзbN灯y޿Z O!/MCwYė1:PW*jhf1ׁ%(G{1Y(gW~)1gLPhAEJC#/тO£Sw>aC핤|knPC# g뎧Oj@n7a)B6ta3ch4V`몴:^V %Zt4Ve'CcH/L`Ҽ-`'o&x11"H@u4/iPb캏Ο9Gz;[ 8-}"RV9|Y'5t\qUx?'D" ʱ\5R:uE[t]lo*y[S_h{)~SJqb  .:e S#$GN|Z+D`˫;AIVܞOPw,xOƤzHB{/W. 7k3q <='Kzq4s*H28x)̇&Q˨-rFIfch.Bߑ}D&ٳKi10 YUܘ{}q.z!|b *]`69{}r^| 뒐d𹸚Tvr TX.J>M!MӁBQ@vD@GܭHGydl~S|z)d<)X5S[_$L=0H%0nDvn**@c|6߶UV41c&#l!ѳ0)[ߠ \PHy|=Cl<6i?!~W.cG՞ Y8qt,WPݲ J܍$C1p,D;jkWw7A _ς*.UCK{ 68ğg`ݼų;b>^ mg7 Oi,|D`jѠsh2^_Qܧ:%N1.\s@Nޢ}UD E|OqlDe1"li$Hh%S!7Ӑ<\JHG-ljS0QkwV 7OԆw+jN3 &gImT[x #:Vq {K"s%pj _8إ}b U- M SMIJ?3Ռxc[Q"j.Emt}R_ݭL]) 8j@nNrV,OD?Cl +x'AHVic%,s:];ρAn4K5n 6v-o-k/? ZZF*w0X,U2w0֠$rM]+f:'?ÖS(0?Y0q^aLx$L~Gqژ)Ilk-MqۮPt Z8 CNLZ2aȸFR2xť~"ȗL $-83%],O/lat6$!P d5R7aӖ _pw ޠĽbS9&K9 1`Wĸ M]h IY} ;9RO6g&fH8~Nz7ZrM4/uV_Q:ʜ8B$HKN}ZIf{o05Տc-2=U_֣dȪLj䷮}kw5nԽGҐ ]$8PDJ-Tl]c](]:٠!( õez`vIJ$ڙΫ:.8͛-.  b %kD+fG#vΣjE$`ӿ} j:B>B hrGEn6~<(?l޺ZƫtCĐv!4Xoa(h tˌ xҁi2>Z%nj}{pֆaZBawϳ$=buMt**gQ߇ yd`y01/"k¨X)6|4>$)cZ-do<#VF3_MH =h%B͝Ve>Ñ[v> CRcUYxZ\ב;3bGLq?<z:Z56HlY]WwzBpjF]fmm{!GA>rlyspFt$zg9`D^kh{[@f^N1 F]>^ݬ8~ PbeR%5R;uQƆ.?o~_8T_PB&BZx\{=rD7~QB ȸK9ƴD\YV [a-rmK'VהS?EuCV4+Jq (t@=~)HL HPZl1`FPF6RiBA'oc\ H)3H(ս庥SN٢w-'؛G-r/^"~qpDSc%VP#2b*gX8l7ǐ*6^msz0+ !5€;_M׼IK~G7bK)Pb0\6X[[N0Ԉї8XDmC@pW>2p"Yo~zɑ䢺*] 0ƙb.=[AE>lVih'B\y):Uj++:g1t9t6Ic=, 5VkB߸kK 拜6v ??|iݻp hڳ?}9MkhJ%w[eyfJj/%\}I,I8.V;b9_&/ct(ǔ6{Ejc|[K`MwQMO)j'"cq:.!`bSdURiQρ]Lj:hw3npGc4HJڿ<0& Mx".m> "؀n)aM= s,ſ7x}͘ /q'?RkuasxךϿȮ wctS)kRP,a赸qzI!:o{y|Yf%i@{*7F?:txI_Ga_*͙͞{Ef5ֽBğlCA ݭȬHO`7UpC@ϭC3HAm* sUP"c̋Zo[k +g1Dϳf-2.gEtE=.Dȇ8)Tb )9vuu*VdM5Sg9Ka M'$2RX!9lߩ8Szyr*Hl+g߶Z+$̜Oc6uO`÷xu!lZxj!3J/6XP: Jf Xx|k7XύHz j`$<(?PD!O O@Z-Yv#3*D hU;$Ts $NVǞl"WҦ3|,)- n52ey˰UbQٵ<ԛu%v඀3oB22Flfl Un7ɹ! u2.EiH:YZmHR7e<9u== vU|5D3##eB᲼HˬV&m3br}IAIV^=*HU3*8ţBG﫻0kQO@3kH1,{| qoP(W3L\=ǦCĂ#C%yrqc2/u×sOF._03F +jE5E39:=FHy) *EMpZܩCݼMeQq댤@MDlG=xW7kY߃Ln.;AN=,S΃haPmoON6_YTm1Vm 1`l&WO}VʼnUN,mщo.q] ?0O;rg=1U9(v:Wv 8_)hsPm2!NET7 lKy2Mzͥ"ڢS} sBTM;m5{59a?r}-5CXbDBQ s c0I$y?`A_sTl<0 C[,q%8}, ]q9W%w%B ]l߲>q"xEe7泑id#-~JA:0ER2:<#+sbIs1BY7_dxd.%AT&kRZcKfx2haK^1GWg_gG2)Y%g2ݽM9̬0LlecN^َ/;r;Fʆ hUi`I`kU&wLbH!=w |ɇ^GR$;WlFey<3[IK5t/'uk]Pr#`̡oV /_!s.ы,ՉD $նBL4-oGY5o cYmbU˪x urY-;?1E.}a~3VA$hq*SysLJOŻ۬Y8A+ALbI-:ݪ*h zl|5NmrGRZbsKc\j VPR;5W&+Y" bzvN m`CjLD >B" :H'= +QV!5zDӫƄDaA,˓0' jڐrtc ycFUܙ dj#m+np28c:bşoF#<_kbZ/?~I-}+VA|K|KvD,MBR-Z /{ڲD-63Kd*VzML4@wSG պ#xF4= ؅g0I@o& Ǝn窇O5\ /`HD HdR6^sq$o9飧~Kޏ6gדrXW`u:ZF@-%H)kzP9 K\Y! 7'פW4r 7A>/`\d-|JB{K@" 7G竭*!Ic6Ol9F9JGf3MJAB|4x#-Z;@n~fQb>@5s z 3XE4? s|bD1YnFRX!~CWBh-Vl]k\h]Em( 0Hhؖ)?viuCLR=wH/@=?j3mK6j|,W@-p(aB5I߹5(8'#&m5!H7 x_nŨ, ZܢSI ,dIQ]Xm`jԭip{I}6lJ٦x Rڝk=ˣtAQrSG;bBa}Q$\I[%Y)B~{(S< S OQerp؛󫠎lt(Q!OtQxIu(7Ҙtih66}EJZ+$TMmn{\ajU<[<]BDې, rԻnQrV/l53' 85nezՄv'w_PЀ}&Wd,*_? cֻ@j`#Gm?YK c:,K+ΰ܉6|&$buږ5b~P.:B _0֍<[*WLN_r闒eJJU)1Y!A8 b UnϚB#bDA`W>D*VTe<ŖfsxgXDIUgv{K/ `IU@kQdTEp*]QN-}&S\[p%;@=pb$p?&uȃt2`)U8G u*N^ Mǔe}N=ĉ < Ӧ]m86I-jOT]FǵӢøf؆'~F*]^^v zQf^VnSw$߮Xj"`aq'v)rđ@wG&½$}pɷ0l׵y};bރT}H.3P[ÅMVduL5`?q@zS ADE⎇-h8dgƓ0d+k6ɦSO:bxI4z 4SǏ EKЁW` HX׷!yw{NB}J5&gN8"x j\mcaY׿5Ob'k_ >7/ƚ@&X`٭ktR?<ǩ gci *Iڂ۴~ 0W0I^,EVi[H{={PpuI2jcCʮ:֡i**V7*(E"56EZ9HzG <2^sbP݀ Brwet!eX9pv ow`RTzr6*,DW>[gB| p%ޜ u9\JYI\GJѭuQGMe㇧v:~֚:(&Ajh&PT!ZTW=dO~q/UoԴ܃f0GpzHurE8K}9~MGE;,a-[)?]qכ8sJ SP%tP$>Xo'p D5 ˎ)w2>p{l.v {›ΡH poS76(@cރ9T/F*@ N5kv֜V+ .e #fn?wG3aYooPllj>P}QtuM7VEH-jJJR-v 1[gGDyb @\~9Aϊύb}"j$?6E:n)Bgޅzb-_.K AC2pRS _셲Zd(YVP-ב7Cga|Q0Ek3!qX14MbcG#wNJBuqrHρ3œlduasKЎ4|ʢ#vD@}sZ TlmQ֒fH"SA0 ^Sl}bmde̴9ΛXc h 7$(DR06T`W-ho@vn>嶾˵xh [̵ۗ%w@єD陽4ZJVo]n}lTn?jΫM݆T5 ^XMgUOP V'rmCd!CIC 6>Ij//Cvn"K~y pֶ7cJa,9W JzYEuvwn`Y;G"Ϳ X1y3z1Ra֟£gN%wfH>2IJt^oiN 5e<n&+}m֛rmr9 Y1LҦN*;j[Aro6pYRC̡2lUY-cbV"l>N: -CD+*UO)̈́Dl?<.ET=3{N Ȯ7yGrZ%7~xpN2qlWqBA$:+[!(\ HAhzaV ĸ+&ךbK~A.6gtV=݂f{lYbI^bBnZ0zeZW9/y3 ̾W߮aSZz f Kf8 ;+(H H2b&nQ-c 0^X_. (Cy&ߞ5A6j5zxOdcޙ!m[zmM]&k &/'L6dd1$. S/>(aӨ>PUChz[=s9|EUӛ(HDHi0>'r n=7ߋGr+k|E6V*{XV^C{HBL;H%|F(Rabma|Du٤͢|KϤ]<ԖWah# H"2;8^zf|bz_Ď+xI}~wi=&n;:S¹VWpq5H%D׹0[寚'|ZesCJeUh&5&8Kxw@Ip-g w h>Θ.jb?Z(0{HNzHG@2]m*Rժ .Ɛ۲`$mofcF1og32 Q[b's, CE)i ]M+a0WMcŽ̧ hgCGn;8="Y ?OƶJwPddȽz3oC@CT| >3ti"zn<FL42H7bG.|qPl1W'C;mPSYn Hf2$ڧK& x"]= dO~oKk%)6`diFLXIA^43A JiD42|p\ ^u`*}9xFVIecRX#C:/"d`- bEdj٣Mk{,.Qqh4 X[Fx +,Kf@WpԄ`ٺa<#gG y9v !,T?Xy 2Vu8SU”zX8T \2|̈C+klD ֒] qH.>,~f+*ϤB, $w5ŮV/-?8y)uc6ʐ"'D9Es[J8GX(p,D]A2N ])nĿ*QS{zKV"_7{+O"r&?'I`ZlʞQ]7ͅ -_B88uØvYovғÚU h ?p K!GOH@D[.V0 J(rݎJIZMΉҤ iHlzYTdc)^,*74CT ;UFF/fJN}=_ڒX[ؾb;C'ጵ g{|f$Q4 M BKW7JZgXk7LR/`|b;;S\'6B&چ yl v'ÞR]82 Ƶ6AI_@7 (8gH1gߝ'@>: ?Uk!n IpW7LXS*Q"@ԉw9..bq̴mEoW3B 3`8jR_qJFw_Wvm WVT̡BS@%K9wUF7lw}&k18L\{hpt%7iUi!ĉ7Aj Z`r9Љ=B8ZK ]-D$ egPJ>j`~b=UuPgz>ШSW}h*9\ ^t"΂=z(K q~rSdk&3Q3 ՚T}wJZԡO!\0Ư^ovh s|Fd]BlWqÃ48-+`g)Ҩ$^ƪ"ek}rhϢekH8â kgjY0ӻ/zܿz޸9-8\[ɦ8O.^wyBsseLCWZqdeJG@{;#g1D-M 7krjD,3vfT`( i)":iY+%咖vS0M IY/-$zGBv+߿1~JKf-y]yeٕ5U5꟪ۧ*yBQ꒟[j 'H!Ϯ7u8,S26 ķԅ 8A(:^L\st zlSlx7Vy6*&t b܄l5A_m/8aqs =rE*}SJ~~b zBZ$2*Oem8P2*bB [C7:'j=d5i|C9r#yjHCjRY` uK*%D9A'< T!Eâ-q%N<&?<.y3\n!}<в8dsõNW vsS$TgTo&$_WQ!_3ʨZq!#@pWACAުaz¶L3=w]3֖z/A!ԠEYOeC^p,JYY;OHKc̝m {̇{APb 4 +; ,mKv\d0'g䪇-0LFP34i!_;w7\?}M,T9b\v{ 'uwydQ\jQ#ОSG-,y X(8b(GF `Yn cU~U!pr%)"* S2ol$GyeK~}szf縟<ϭ\k]NvS=A= [Gm7p]%a7="5[S97 #9XK- LcC.ʎOeLϊq$6/.UY`z.ŕsX-r/}peW=V2ьwlU =IުȧKKF|TߌQY$^٦=NYMEŲT1 ԓbS~2оRViTK>WdQ::'z,GRP &) M{mV9sAv~K]aBw}jb)3 VRӓwJe'2'GfvLn2ɋQ4(YO :pδB.hߍIZM!ͻD%`7~o8eNS1WZG8ΩM-{~5m5>}&DYN:\E9zzF#9ƉױR(Ј6 (_G]RG R9̦vЎYQHϳ~re_6>tmM"/Boԗ/1]˂X@S@Ь6JRUyX!l.Ҏe[C3q6C0tpXIw[oЏF-m6N 5`j42JI6T]8To_Zu:[GY ddL@C]  W $tՔC!M}Û̳E⌨!Q<`J~-cs)$o_"DHxR|D>ͬ[%RsR>QQL#g[j?k.[%$ J\oÈ:D,-h\'=*#R: tצݨkͱK8xGokyoŞ-2FKu{ˠ^ٮ3u !:y,nN0"5V;cUfZX\v@[P d8rv$ҷQ%EZ Ew@_LJ}?Ŝ |`ș1Pjv MWX|AQ%L`eMղފ҇ZAg^δ/DՁ) V}жd!2?{-SCNa,*DjmAO2ŔfWGj)ǑDη$\)Kn?cxbAM΁ze;,~c(`@}AT4\k3a'&xkt76rH"Vz6JS|EcRbX+ct7,Ŝ~fnBwI(1d$roᜁmx@lV%#!BX UߐThy:J.мWxymW󷯟\M7 Lg7?uI@ie)j֝ fACaCq)>P= ^* >3iX*=+vRݸ˷s51b6ZYփm*uȌ@&ڽKcw!9Tאs*BԢ{!%%&'3̳ 0_$/? `tCy KM.-l1[7ʸ%*L)~8| QSId " x:O֘01bfp)'Md*j}UDWn*uo7Tݞ F-{*ra` r @-U c_$. GŸ1ԈON |qA/cdX(3S؏uoIlҎqQe*1g~zQ҃-7{3Z+ӟCu BYT%; V'RjQE+QGݶ`վ7ya!< Y!å ۟`V;9"]@@(0!O8*d|9r Ezx>΂j2-.0鱳LK[03R]!YAO}޽dxg1S=P%@YLjk"乷A6tDꝗfJ۵OҞM1Ǭ:xk\%Wz :mU? " *[C;Iefƻ6d= IA x'K V62&+p1NE !W 9FLz+ ߌR~ۛ7q@9tYd=W}HԎN(=d85|״]8 0B"ϳp*'g V/fJY|3M*h7ޞN% SfN'}Oj<Hctwݚ7`1\ \򝬜yv2Lgތe"q6Y088$yF֫wߤfXϧ̷jp XQ|}F0.>:*85Ed9@h- }p0_ϹsACȖMU4dEkl[9gəC֟Sd P1!]Kqzi*dN#!ת4vuvwH;3GXt&K` 0,˨::nrӴU.}!4ַE2N/S'UZ?iϝ \+z%lP4ZezP1HapG 7VuU b^?K<'ڣSl*ouzE$Gj{:Eb ʦrU`vʀXw%}+O9(F4z#> fKCœ9(![8];$:"Y02_`ygDeuKd@]w1Ց4s7F+ w*@? #" kYcK#h/)]_?EQF.nQ^8;3 ƨV`lBC : C~H%0al7&<\^㎶Rn@+dXY`Κn}+4)-+z4w=jnuG!4ݹ庯N3"=|cYֆyz=mf-*,| GB([ˎ;`PA_:_]q>[ އ[F:vS΅ .30SSz q`eKײ/ ib6iN 0O^Nqv;m="Jv/"6leY دčA QpЊyHЗݹzYtvc$6Ғ#ɖ2 Nlq@i{v}WlQs7Q~ѳRzKQ"HMsfCeTC~/Xō'l gIS0+ߧY5`jYuE#Cލ|O*_7OxuV7(&ki Zl9+i%~mxӽ`1C=&2d 3ѕm'ц,B|6q߰H}Oan3 R?=I3W;W"oG:l1;b%! aVj}*k? iF 2%KIIf2ZJbnUm.;C:&αW߽ HE +JĒE)$t7ܥ~ "zFT\n-_Ɂ J$\CGD%!1v:6.qLڗQG+Q=t NH(|nrL%0Ad0!ܪGM-Z.B)jKUa2Ed1~TUX`AV;#%)U,6p;mJSPS8xO(4,s*0x[4֗,|jt™ }ZQ$U6:ݍB7ܭWӜo'a`^{GlgNYw|F;J[eF8Օ"dŅ-dYBW+s(&j#[8]|`wlILoxM\dH~^B*mJ.Sa+M T'3Ղ[DM,0%?ea{E([I_#egNM` :-E׶AI~G˾ܸoy!|3f6*V ѧkay a&yK|u.&7Q}1ڈov8=PeVR?LN5n~8 r~L1O|geShh2,Li}e9e`͕Kf[\r& KJ2$1Y=CoCI#q}ޤ2bVpQƱ>uEx #D<)PǦK lxWqҋPOݮ,,9~YZ3UxXM>EV q#wYT:~Xo-dmp {ߟMqNCʝeÖpFUE%-p.]v%GgJ=Ӹ5T89ÊHF?[gO6lJq! %#fWQ^ӤIS3{of.ޡƩ5wS.`wT)+5n8Dk(ZXDfwk;K'Rߒ8uW ?[NwЛ s4~J?B e8[VLz}pA9llbFm"T<?LYҿ)=RE#ge;T.8oO(Q ϓ(0j/B<"b0 |IbG8x>` ӇC'=Y!1)⏘6ga6FddG L/Ft>ě_9,b|Pe3N8FwgÁ1DO{?뾷Y;$A/<#_|$cX4~ncmִeYpHF5MeXgоkF]\G;=̣MJqt$N ~x_zMy>Ǹ7 ssu@wrHz]ܞ]<Ԉu_]kGt\`!G4qp (+c~s$xlb,iTM 'MTP 1 jh6n٦ܿ~@eADzkX:Xo;gp9bTfMރuW'T" ةB67#S܁=xGŧ#uB#5hQ]][>8vrZԛpq9(BVʆTݲ-}3{J]oRrξ9mN<ٝLC`'e>a\ÛvͣP wclU>Kc— %TSJ+$[?qK%XFvG`/2utXVNm^ \P $,O5;G_P1’2Q A]ƺqFǗǓWGhbލpTC}6 Q/y=}} ѥ9nt2ri\ȺKmK/-rgZ?{yv=Qt\}w`XvO14p+n,vnοD)jww%֌eTb\3Fll2;@ݍ61Bz\s$3xhkZũ8ĉt+&\lm hkV=-wb QG0V((\&&^5vA8 :yD]b$^)s#sm-êڲ)گ2jPcW-D4KAǴpɖ|F2ۗgSls^W&u'$Ir Wvq4[k]{dl[R W!F^`¯ڣgǧ,Dށ{:&YZdx%_Cv 4bu'_Ofa|U3 gEtѰ_𷝆Q̿xoyDd-I1Y `M(|Úçi=ywI0}p١В;lB¯H̄х/z= (ssI;sg$n!e EZ`e,8{քe,;vT&/w囧fǮtZ+誅RL"e5PQDikn+awRT:Ed }6Z$?r,}FhȇL}r^¼F_ 3)nGcmgBN!]{f Te_FyiIFDDő?o[=K3C L6"J\9qkJ9YARjFX4^@伙ݡ QР`]+{3 awlKǶ2"=jufU<v9Ȼ+XOej LA}M$ mAT0: %cWq\ʔF" 90L D]'[/?%{elϸ %LoK7fLC\N=Qgo\:&wp50 ::*Su+{ټ]LeA_ؘ7d֫°ՌwJ6 ^tPUQfb;_0iv:(شZLU r ğ?78-=~c56c,oHYJET<pd`dN^.zkAU u%K8QfVg`7+L#Q^WUQOxeR z%4Jg@eWDiN4OI#"RY7M4;F907wŦ5g5dH p\,oo񄳦 Em/#%h:>S^. :htjICSQsr *}h`@3 ?GF5CEm,TZgGDO6lbFYSjﱌ :ؠ 0Lg)=|VLsP0$<3e0S,lpԒT' x1KhA 黡h_4Om42QtzI\˲.; w3>ņjZph,@w5{"zAK™'$EI$) O=c@<'|~j@RE[YR89d;F3 kȔs xHaJx%e?XratCIpTR$igkkigFlE>Ph3*r'آtw UMD-Nwg6n,*F;OZTݢ&צu@:85/{)2:ս]v߈r]jy0Uw;r5O#H :Tp¦ u%r&WVLp='`?_ӄvAXPDzq_hSе,יB6~ %D14I& V0Z٥BmfFjCrte'rkceTݝT+{1%a4A@u,E=;f\#<1o;yv׋8!2Z\vBQn=3 %A^,ۻV Ӻb%_IAVR~3pF+{` g<0` 2Fޮ_y{/x0nFlRLuHt| FZ棌{GUFpMג{[8 Fjg& "ﬨNv7O/dE'3U.R#֦a\ڸ7XlQ5a=wxkqG. b :[R+QOW% z͕$:3Q?E Ka];L(Ra%]NAY9>N5$Divj8 GX57XQ>?ޡWO^`nIK׀G" fnͽ!J= iAzakU_+=>U(D[b& "d}z򫘠N a ،Ts,?9r:;54"{x2uX #  ly>B'NI~=WbSn.T I˒\szlV'w׎;!; {'^V;6tf&C]z}i=9E`s}i>.N-8YWoDžum`ITzscX-D#E4!610u; SΞOSU +a9VX*u‘dv*8-DŽYO^$hкHz+4 P 197zyަ.~! = r9`o-x|(m잸0UeɁO }mQ=W%-keαioaGh-+A-"~ a~ >dzU|> l\J 5˜m$iԎS ٵZE"VYZglg~*l# 4޾}zaVXGPڔWnyY}Qb8Q? tRl/uFX㯺ߪ s#?UIQ44,!j E:oY2IֵXFt:Ӧ! 0 vݿD?yAx%.m,3(Y/F1(AAA&CȠҍ}{̠aKrB~{kN26B''wB:zxu$tAM :7HG#0)R@kM 80++Ao;x,j}n)6a-yN-׀p6.ZvX\,tk$]NNI R⥋zpjzW1(6 50B q!gyat UdUsGK傃Pzh\Vy>,>,~_8I_W(}wT!8<J< _4"\ZY{0o4 -eQFr,(NF6ـp/x!0&?HyӼҌыҵSt }/i@wA1Lo  &3:| ElHΜx}r0BāaՆ/Uvl9 :f:˸+]OQ%%ieL~??P+ѻ1 kYCf%ŸS . ',`?s}m aƿ&Na>E3XuȤad?蓑8N|~Îũ"fݞ>Br X=;:aZuɿk^/|C5!f/Nƺ("k$Ւț~qFduAX$W])w͗428{dî@)[GWmm zH#H6|$hKUҸ&d: Q -Iw! &vKGXS=YKdQ,g?j;6 csDx}؃cc6:?%eq$,SaǣL$ڏB:^&43G:ԥXo.g),)Xc'?4`*g/0VĆg99g JP.ILY^q7/Q;}V3j R"(KkcHz d/G4c'k5noX08?v'vHM~HkrB8(+wQ^I[ѽ]'+eC@sQ yep++YU9?ln`H_a̸(R+?Ӹ*'2a뭖p&)^Hv)onu *WNH˲Cux҈g]ξ* tW7[pim=oN灼r)[BvmB_Wx$bM+,2k Iv z< 9|0DHxiRWf;߻RbfM'>dۅ:D"3 G,oX:ӫSu4X?eINC2ealr=ظΘw@m>R3l'a:߽Jq,Z#r-Ehڹ IaMm%RNtx95o‚|6;NqS1fr ]O#X̅AwI%!Î]XH2{9u)SKvZ}*&{꺵 #~]TN7eK]+]3#qfO;HLU)G&]a0~=ɴ:P b׫A삘x\G\3-QX/3;!8W3 Djytu"or9;8=ȸNl,zv γXyp/eꃾ<$[[gZ1 qZ!, *0R!3.c93VÏՊRgL5c=Mo_V#$D'}zoa=6x PSD7Ɇԙ2 ?Ҩ /Wi~_KY7as[{-x2np2ѵGvJ͛>x05BBtNރw ¢b?gajob9TclQjH_^^Poa}xXJ%<=,G4o¸hOuEzju)XJ*̛$W} }ATW,9ڔTa;Bj'ᘒa^{c(n @GLyBG-DEY P>7[Ϋz?9k ޘXRRg&9[5]y:Ao)QTs)Em_q9 L'l6Ek#2̍9ԥpt\'V &,D~)n~p4s*9xIDvMF!B[M#]H3{T+&7f`)j*&$zh4 +d)X\z:j@ito%E-Iխ({+E FuwHe"u\ϡ>˛i]uܧvYZ0\afWg.Q9ּ o 8,̬y(-E1@2Iw/M"~j](71^3'<o׸ʄ6J>4K 4W,2O'\L<)?;ܢ(aԆKnr1 Fb?zT)cI[se{j͆nU.>s|FǨ5Cʓatp!yPFѤD|5TRι hvSy'} >""~[>nMnMoA j=aڲ^rb gpA}Pإe=z^`Ql7:yGuf֋Ss\T E$tXEFdm<(>4삈wvҽ}x/YݹT48#W-o|{E~7RwF6 /QZafJ>-ѡ1 > I Tx8`F5㾦,÷;yoiΑ Z: 70}2=q"c5)A'~)+@Cdm*Z8v"zn\TU8 ,nKIb[$qiK7 ]Cpݸ=ʿkG קlX.џY̡{l Ԧ-*>:;9ǮMfVY$LM͍t`8p6]],$5(Vna~;KlI !Kn6l=+A)7(O^yFXfyi&!AUy]kV˹vl~Bʻ;DT: Di*kgr$яtyZ+OZу^9Al b#Q2(X "~Kt?sr)EvXcǯljvfTq ,ܪ\.,3k>GF_GV:z޷XmL5NһNUh(8*'\^$'[\v,~!ca}@B͑vV䕵օ:?@-{x T y?rXsB[V8Ay<yӵ,u.3{jÀa rJ6|Y!>JEEYuIU]H2lF C+Ez| lҼn{_W'o,C( G :D]H"w L8e zʨdM#M63um~|X,q2F{Ԯ aо%՞Oތ{ntKVU5X^vYGVd;歽 }H$D~!ؐ5]ǩADOcBYМ$,hbB#qQsn]pPZ#"v$L W (p#i X}?$G*S2/ "J:Fd\uƯ')7#Y>2pv\+n]RdDkvָٞIQ 1*:QR੺3s^ua"}-չMoxCG{Ay8G}Ao2r0 Bkdx[tlT4…~O˙0 ⢖ئ`J31RSSQCQmshsrvz6 \03~R)nrsf>[-?Z[`B]T I gGy1Nv / g碃Z1ȡj \հVXIlj[X"ZO9kӤh{y :ݩG-zc݌nydT\ Պqs!&iѽ Ta*$tjW1r 4Nhi ²)KuT1rNMV^FȢh WOf4VP.:5`Ao L)%M#kR(Z "@ǡ?ΆHrb wHwb?=@ s50?=&#amf|כďW&Yyq4;ݮ D Nsj *ag/~\Tp|&dQWHgӲ^#VeOk}=h J'`tojUWP3:$[i|ƜuBW-iW " ՛U~qKъs3Tcdh;MQ gF~b վ-how">rHuB?{z.%e~QnPv1G$\ZhU7p҈&?ve |Lm U?86B>_ _Q?L8s iir&@1M|ׅP,HіeHXx*dQжvnT=Ռ龡X=[gz;un-tnFSdp ^Jjuq>*%~qĽ nG'bqDZ&K_ GW$ %Lj1u&&P|e*D{O髁:ɠeحU(H[cxKt᭵D0 ַNKCtbi;⧑Zژrfq[&f5@e@=/W 4yg+GcS_j\-nݺxdw 2<]8e<Jxa1(]/}*!t ,/DC)J̝ݻihg dAf]\kʳzLJzT\"oz$2`c#SZ. A~-\!7gi! `?E+ʷdI5EƊ6#[XVI`M\A>ٍR41k1)R? -: WDzܰ \CeXM6.@(={v *\8hr_p{6E6uzQG9E0zJĈPmX@C#η!#Y ߰BGbh٢ȯrZk4+…1wh/|Uc ;շhH} $F"S+aEݾb:O7?5MSw͔®^=*n=^|;`wLIwjl ~"6 Dk,wXW/AG?0]kHig`:5keg<[u" \S1۷5iG^yl',jtXvY%H,{{(@&~Iqf\d|Ѥ#nCF%c=˒ rÐ6؀;'׭`h 7sf2\'Unc % 1_^[WK=?7|5Onc5% Zޜ7)`77=8χ).m[(4EnSsȟ:I*UGk,@|ޡ%LhW#= =gWƳL.j19 s{V[)F #O! jՏ3s}CSӫ0%o ig=-JbuqTK^MoWt\T.%8#=@\B+aCH$rhϲFT 3g`Tj1 )ip)@,B\̉N~+fps !uS1;^"b }h4)aa NG*yJ . pqHc$Û&xms@8%W9(QK:^j"re$Dyfث'3u"b%6ZVݺ;-?($7C6. ):(l'ۦf{,7bsST/G/g=d仏-_#2)uC&ePwu;aDŽ3R(Wy[N|ߑ][mϫ|T ?,c:쎷P³~fgTø޽ڿI= ,@JPw=T6"t,LY8{%w1W>}!ǯl^yT>Qƚg,D\l\al1O,X6E9m j[1 Ӭ ?Os+32] HDp2*/-ydir|dž [90U0hy?n*YJK;L{5,GTsŎ>X//F3 lqJmۂj5%#'q+t-^Oh[ɻÿp[ C짬@M#/01s¸T~ {9LcGLtM'x=_Bc\14,G:W 8hGw-Sf?a%>XᥪݼZq yEAc0C Rp#*6bs׈Z ;YeųzJ*o65w~ Mu0lC0pG۸@u#A[GzV{X&ui>XpG#a!ܑNis_/vIO{,2R0Xߴ6ÉW7t94ÇjrL%WՂv.s !0(_,A^A1QlDXrl_`NzB$!YC.}c@DʿK&h?SIR`i(H`pJKPZ.D2PIXփv$-aې0|,㎅HJqo~؁]&9lʛK`t^mzc愈sUTvu@ 8ZS`lNrI?V"ũI Y=M!<7pT<ؽW1BnU2DTONNbJlns? Ay-[y8Q:T:WmѭG>q# [uT{`;l[6p<<D~dp]o]ݟ*$- K +d'PD]T#a\ھ 8^ z4/SַM(Ȱ׹$t~TPڱ>=kS7 ;+G7lQI+ງ_UW Rݲv_D&˦d:C͂cbwDue0*Fo5;nM%$gV9? ʪ*oRd0uy=g.oвd47%UFߢ +:F ǝ2jZ$0kNö9D᭬g|..5|Șu*I_=҉]}`& SOKIN`L@'!]swfDߛ*}*0yH6SYMs4؄qϽ>A2ߌb?>5j,3fD(yf\Iw1( B!sR-Hg²u웏8[EwQI;vO 5 b'W]rFmL '1\-etp2^#B(Ԭ|Kl}b+෉ fYnL3YRr4)ep;RMA6:L#ecΣ. cu2ʺtЅ~Rr;8D3{/ȶk]4̮oZ͑BTL\I%g95+ =|ZeVk cv_+sg3dWkO=._^G2wLJnCzu!~[w_bk˝/1.M~mas&.UjaF4i"4;, 2~y+yY0w$ ~0OZ.}1F2TE"3j{1ece|q^Ma#<ߝ)huu^{&^c`#Did#~<۬U"6O _[*pAvy@% m>u/ϋ@U+Y31ga}P&_: g R Z# 븍!4kNa0tY"u`NpDy[B]6<NSxcȀľ#Eͧd]H?J(]bFDr|kZxP1;,'q*b=n~DAe7hLdKHW|R&Hb-ԆeZihoPQ`d^j;ͪ,ԖOHZxK_jk5rLO|uN8ĞXJѰ,/(6s?(DexԠ}$95Hp\>[F4F>7oN# 1ٱeF[>Oh 8Eq&4?0~wk>g>0!< S [\W jzϸgORJ_=ҐjgT(8__墽kү!F":iJk $J B)Aˮsolwg)? ;aX/ˀePFmb.pC -;PQ۷c + 3LЂwa8@?$?qC:z<M[^u ˷z@]wޭ1UQTNd&0*%BTw'9jswDx^K}vMC[=TkTGdĭScϹCq\a2wg>ǻbb/∶++J; i~U-D$KP;}je4= n @:8B>K5#Rypsֈ~ EUwV+Z^ѸHe z]TAV-5/R-4c\X@>.:]Vݡ;oyZO Pxt^9x9X}?3s߱u}.-\8ӣUI]__T%z"L*ևz:s05qg@E#KT2&rZa4(Knx:۹RX}쀪:,5b@'T )RviGm5cqc=Ӽcׄ>jO7Q`5 #=0YԞBF Uv|D;Owfə]dYg@!C%P[]C7 H&\+;xj:H"P4?_n:Lib(Y?diEi]sd$B p/rS|\ZjP 5]|'~uў-8h1LЀyj!OZBeg#۽E;"4{ aRgtTٔдJ8| ӑ$}j~M/ړ<x+e5Q$s&gwJn9>yfO9P>5!7vI⤡oۈ9:.n4 Չ =!+޹y.lc}qkطŘGeOŕ6V_eRv.6A'ΑV+ ?Z<  }ggt 94ttab7?9DBWɗ35jΗCGAHmt0?iA&_ #<7e+E߀U_sY'*]&Y<=IhO#o||8Ej+8ewUGaiSК Q,袧y5lUzHYh5O˘a&&)HY 3Px{T7Su9x`E5skBKt0'mՈw2kg$)8 Qp R&Էw;Jrm1Fݯ*e] 8gdHvdAKB^jП5w[mqR&a@"DT&gg 8y} X[0FqT`H;!=r>M8QdI/Z*cE4ꨒ Q m; A3jjmR^-zO-3ߎ!z\yRɘڱb]hd9a4(Ŷ3;S> %ȤٶqO8krrIetObj8.P$3P(z`!mփ`8ׅ` 6. ##K {3ט<&Jyv{cQj%QXyY{ܺZԟ}U1uZ bz$t^ҙkBj]45vd7O& S'߸)I.)-aNuv:QFO"[|lP\_iL9qD:ekY:iL$U|-u<\ 0،iKȪ?M1nBʤFYQ;EkarV+"^#,}zdtNp+ E 1akVӁ%>--~F'+}-v1уBAOm|)W{CXe 3!SY(F9i'&ʠc~IaHB+Ó6" |e>YtqeYSGB]ppUarϓ tU.O Y}7Ca늀 8L d.l3$Rc)"8#q`*]`#xťA~MǞ ?K-I6'( e E0T J $+-3P3+,3#Mh]Mvaly)&gaJ4z;yZO?a5y[ \OPdolwSf/O*I'N!(Znѩ*ĢYJ0*q!&1Õ\%:=N|'4.v:yCjmDћKKf,+$t$^ؼx+Ӧr{K2BugQJ6G1/ȗqK*1GR_Nytyf G=s#(x=E3R8Xf۬6> ߇fq #5䖓6CqBag aNrf}KqHA Ng@WÖ 2)Qx7Nu'c^A^zK#/ u[_^^gBIN'/=Q`>V"" @ A捭[` ZQZ-ng4eќ,g#2jX!U(Z4,Ts3q Jԇ)@Nul.pêb!^8lRyK-g)iUtBHH-{|A1 w[,Haeʔ1Qq#r.&ea7c[y[ngI@# \Vq;ΎyO:#gp^pW? 6:TAWE̶sC9يqsoԮI4Pksd M,! Lt){ubfy@d|xꔎm8eW>L{IX(N8~*hB[@!)TbBz)ŲIRkxiebdKoO; {דO@8 } U d§upd(i%<\qP)[fOgmi%2ІgqnB$|C1dZH"XTdgqi(kլJ'η_d yYD7Ind&?.~!['D$FJBya"/%ȥT?lǻ+ޭ# L~'D2o肣@S'KE:>FSĀ܄owtWˉw9}{UCnIjY_U ӃԹ @CAzTT>A6AƸGz(/"K7" f<7QJ9nLh/K"&+DT3 PE~KP [2L GᾆdXT8u-NVmƲxRMo?%Ȱq7'2bJ@ZP!>t O2;; *?$hKUJ.U520GF^n Jmr(4v.O]zHW=^q J]3.ve!JG.)pL+}^2an3w{N¼1Eq0gʀ…>ۻs$ xk>lpY;ұn;MJgsNcEt/nRzS;LpqBzZT' eeZ[k ej2]_;_O_F-󬇀oƣ`mWVq}\vbKpY㫕樘&P3FZdx#7"qMT#paJ)h £2U=4 СÈKT)o 5A9&൹wi(:@ rs_KCRS8fA9B 珵Lcc IgAuMQQWaԒxt! ,%z1s4OUX)1/ JP ¥ :@|fޛ]Sa6nZĞA雍/j WANR6G16<*|04{ !eLq>w R8&rMسwUY&9M/ !CeK;-[GxgAKcz  B/ {; #'l[%#9JMN4,g>"d cN_`s ʕJ J3d5tVfǸ Fk*-}@Ć-Ŵs9riK7E]I{蕛N›A5)2Ng!kw)$)F[bv8v (2pf:Vn-qV FC"FC%{m}t~zlB>a  Z-tW_X Cf0p]sEfo\d7<đ54a'xxG{zfRT ̅C8hR׉!~t>`.(ͤN6}Ήl%qjd o|2<EjAѱH|81.v _ f\u;c"ڐӨ M$ KnߤҕK)jSx8:t1j'Gh1 AݸiDHO1iAm @(͏<䩗xLOٙ@XMQp&8g}^xvB9~Qo`lK"3ɸd6i+?_)ϏPdkoη"F܍_5&\ 4qǡ\uXY~-v?0A"4]Vw2: _ Aa^.̧d4@/|$K8}mbju +1g҂*kL9)8Aǯ$qBAE6Ҹٻ^=!Wa~A{} gGM۪=U3 U!3Jlzu{\0{Be`C?)s83qlBgHۈmxAdNxL(&3unޑcfP#O?L`=rA&+`@$,Cuٺ[^\ZxF-"Iך~ q )8yt戇 %^#N͇L{K< B[; Pไwf3M|q{=zT^̾) \TgM?EfρWn_Rvp{ kt`+1}X㮯U|)'|wy|bۛwi7TPj%x/r0EMi kAV@+H؆lq*+IBAIFa˟5h?Q.Zj]|4;rk Q0~Q,OeoZb%&ZAT`6 6c{8`Fx}gH|>i\*h:^T8a}v hCwNWX-pAmfucSt `8(κrnƖlm(ա opK^i4A,Ճʛ͙&ĔLHe27~u}˗9-u >.*CR. @y*׸GEiJD͂75ۇJ#@O#g(-ۋ&2G90PSN,~K,7UC#bk7>]2UY'Ǣ3ɗ`2#[ ]I#rקe?/SA$jJFOp*s zf;'X=vXi)v,bG'zϺ5%K N?~r[c6$;M& 5Vi:kɩV13Xc!:>m?څrd) uCud!=f߾h+ˍH.vFqE!.Evٯ8VV3i %ҟ`a9vbܬh;'N}P7" .K}gƬ`C e;=uwK|츋~BĨcБ#{Ǽ` xjyx=A mD\.2S5T:ߢk:10%o6"M9 TTrԲ7IdS'wV\r'n2ͧȀ7wJ[A#hiႀ%MGlJ:SёIJs'z<!NEd+c?I(Ⱛ 0|`70X;xR9ϞG1qJm9a>*}acPF *u)bdsCYG+xSϮ s[qG*bκuSyָD#I"W"t:De$1SnR];#?2yhVoϿWϏ\ۉ*#:=\|o7._\(*KPdyX4Pq u#D 8zBץk$.+GqK* #U?oҝVO&\^qS' ''~5= 829iS:!~Ec `n g+ǖS/c[G\PO@o:1&9xTb.j!Z*݈CeWa1< BܧEvmp~Q?a׷k ΅MNA !.ټKKghB3K0P"JSk]K6wQakf";H*٧r. .> qhzb$=|jaPpPpUȟBvz6^sKU#S;i= jN|WQxF|J(S;VnaC:7EV@m+@זtȢg`,H fDQNFVz1A)G\f6z1v³ӧiPfB#~QѬOpؼ! ۫}ҹ F8mx:X6]lGᧉn|%'N>0E95t:Ѝ~Q^:![xJ0!ʮ8*nK@}]pz!(MLZgl b ' YZvˆ 3 H -oog'DrjZSBQeDs &(}lۍpaQBqJJQ p1 uٖY/rʃHsڱ%<Qh` I~{[)k泇fdԑ,&(&|L.2j"qZ+CQ n#e[¢OS(V(JRuH (S:qS@ %yVHf`IsE*]6<ёB$`K0 Ѿ]OyláPU$pUPBXX2,!PN6jh08xo涜Ww~e<)kx» *+r(2BV!c"ˑ Uh iѭ bjBP6e[pN}T!rk tRC~3'W5u\#eGjC+:d1~1,f3G0Mc7p noX-n]B|hUPs$:yř("Ѻ<"l%ಁbQAlpF /H$PY(zD ź$^dˑoZ]JwUVB} .'q3jWtİ =D5G̪!f.eɨU4~MV+f&"&Ռ|-k+h3oR{M \P(4}* =H,Vh,G vR8TplYC9ED(-_Q`+r{J"U_uoOoa!V~N;G]rR \$۬ º*4n$-ovW* *9okcC0Bo3x4rHD53)wWg=IP*dk6j,RDmuya ~wEـ.8 Q)(Ō(Ni0:\Xd9,L4D-p R`b 1#2_Mw+=E !`(۪8ذeENѽ WS;g+Q> %"31^ݩ 6-Ni8i]1ͣ$YSΊ"1Ic$P \#_1t;GKZӋ B7)2̡g Y>^cB^ KfӦ~a0)KĎ펂5JzS*"1/s7@q oMrHʢ#c2=5!00[.tLW]t@R " P &XY~+=\^# n( WJRU? ܅ L*QIs ;.KBrZ%z9~}G*#Qɐ|B+'Ӣ#SžcB)}M>U:bG.VKYwpLqF-?[%Vn8x\MX  I,X"=ԣA^1 }7LaK\Іx6Y%[^a+ >P;™|UD<:|Ͷ.8,4~ֺקUO9ix ><ە\Ԗ&o攇ΛVҐQ}:' :C A"r(2PهOrUPɧnQX Qj'}uJ"ʪYϘςf[lGzj8B,G\tÚ^}| pt]0 UcKD0uٚs^5}#gXB7pLסs kNPY1Gg\Q .M=q M"3/HZ$U_/gbf*hoz_TG ǔ\{VZil@H͂Pq  мA]0YX.[_>)":|Yks*6ڞ+k|Ys2v/RXqWHo Wr S~U$%pI)=xI!^FHW2mGTuN3~"<>I2M5(QXى͇*= ^T烡rqrŖ.)lWnGvE%y'nVt(11Vث綶'!KC4#\v?}sip~]4Us]a,cȀ&lLyUԼ{s2, /y,f\PT[58Hq Uɂ=̊ۖR0GT~LL~ស܊gΕ{0An?UgSWC!@4Y¼ }%s.-~:ĮK)Йh^+FV(&/,Sց֋9A U{cM#WmSg&3LWKl-Et@ӟq>V)c- ^񣰕R?u7?)]arVvdTq5 Ҧ6.{h7*HbEZ -U =hOX'bdL8eL8/ea%n[n}nF`$!9:2Bkna˼i#+j/2BnᳮAwk( t%Ym3!(0oc6uD1K11I2MEI>;S_\v>r% !peR?廴ƢUC|FNˈ qoq8t>M,Q8)Yxܥ(t6G:fΔ*&duXރDx&cqyeLԌO̝K>bb-Z^'橤nu6^1OC~[gzN &qt/&hJ&@7LOz"V|y" Q/)D7f&zA#tNWN3Be+ ac.HF[w7 mO *d馮jF)!m%Q3zt4X_mp6 ()l~(KG 5f˺Y?=bY޵)T lG-cg `9#&r#Fs=7 &g(s!:d!8f~ḷ!ʏrX` ,[,?ŸSS=+!&%cM`:<'h7{nɡL?~H 鴅(|=6 أD .*OҋA8NO`bd9 ԹZఛM%tϬ;$Q_RiwXI~w|y }H'hc8_syۇܓGcpJ]-DZKscNh3sHX䟻WN8<_9Dn8sKuy2\_nh9HӢ ΔTl^If{Qv42g$FCAǂBd&@o}td-aع ]?-Ħ;fquK2L/yHQ"ㆶ^IHJƼґ{9]eQk\c 9T.f[=9CV. ? 0e $j4|ZCG ,O`!u&?q⨰3B@jimԈ;i8ZњWq ӿ"4Dh%WVu!ȿ,@ l;OC~zy6 v9c<< 8=F+ކO#^%Axpa2c>CAAY=T0jT`!$EzZI +"l> E J$B VdZU&W-nWڢMŁIH꣏1d7[E5٦C%նN^ӎa ǒ+OCNlf`Nn=p$=C>A- PҲ,rp\!vƣo V!P9ӻYW⁍ Լ@{=Z>ԩ$ʃ w`P֞r FE]+O%WBRiOC~/f@9'z1JI]GN+  % 8XxKT:ѻ6NF7נ^EN Ɉ䮳2 K_]R͈ LaM ?yfN?5xG(²N0J*ȇާc+Po?WD@p `ăD(Xc`6j:Պ4& 1-Y"5],7v撽mj@zؓ^P=bDl`zWJI[iql'R*`[D7hg-<yxr/ysYpO|I$ rv8lx-M}M,PbЏRoǟhEPZuUmń.2aD>8쨐SVaܷX ˡ?,B3uC5xp>?eo&GRPI'9,U6JBcWvH(+zC!$ك!8\$<tי$9]* GFR;9ܖN,HJ(bFD@BuH4@ C* @ `!$~c OHIB&Ϻ5134Olno|x6-{ 5\3ZeN̘ˉ, %fFlj@mk:ReL@=6 bM{ZzCjصrZI.O7*(nfRp8kh鐖bY3QPF+E҃S4X7b$DZ7P.qvfQT E0vG'Ё"Vʤ*ŕƽ+#N-Uٝ]78L73^8egXrAPUW}J{G.zh_j6}Hٷ܌0^m 7]xK!cgҖ8hH P\ 6>-h}Y>ۑk3%Ĝni:7=[%w6-A0a]@Iࠉiwbx:6d7[YRHV6TF? I6ETdR+[i?ͺri* h\[El8<{>:tN[)8󵰆"bk"lI&p\*|eZ71D鳨i8\"(?{NY{Vyt@!Q˓&9 d[y^jMAȗ 97,\XP5gБ}\u+y-H=ESU?J}" Z[*)6`e[&d2XxM;qo K҅LEY@O}My`RʙW[xɛ:Ol!@ر>@)/+BX~z1"` d } K%Ԟ ?Ep+4+XbFodӉ}-kISm`QϦORݠ 2yݻq حpH@;dE*3gP: >EK  Ӗ3ao n/sFX'/*4lpg86te _|?š*+b;iUytx;g[y k3X~+++bDMV9E@6"eHQv}/@];е>*t6dT<-C1i uZFH^3gCNt< *5:̈́'x<"ᖯ)fs}T\T&T~n}5? w GpB8A_II5]-Tj-xW"aCF;(c~*pZoW!W s3h/<mY"AoK=`!C31KDRK2ZpD=l嶿0f"S{lxlk(&cK5\ŷ!o27]:;,q9vfH>ZN8bgoݢ'M/ )Y&`5R pN^I p?[_žGӫh= n䏖< 9 HWaxX2nRֳ0|]X7Lbި`W0zU=g@ICtG5JS&r=Rl0{Ǡe([buzEq!B#kbӗS W\1܏O_QVr&/>_J1^ւWvͬk3ˎ{HqB]AI~UJTAڻZR&r "{E>W2ЂK2 f'dNc+‹%9}֊Q-+W$7q{}%3x(4l&. ?)O~M1bHg<~QF녕-9E{яIcBnL?r~!+ N&qN !@ z? 1уSTm:?sش0;?,CAh DVհ退r5&1Q(w0kPTס]m+#fY] g2HzOEmQzǬ3J% њd qj̇,f\ AoVH@jP>⪉I^j8p$XZi%B)O$6#ixo7(jl"(yfqyKO՝n_|"6sLaNma[!;R]TǦwq{{΀ƑSM˸D̚rE'5cw=QĤ8ywu(N7vD0LFatGs}%$2H~` Q]|l !FOVX79ީg8r~;LGNwe_:ե<;4M3 ӄI&sTpr>W_4g6lՖ-߁gK D'b7GUjb 7Ɋi~d|e;,m:(Ƿø}aI jT#4}xZp"aͥc:glɮ=4=A,hymE^h}@& D(J]<n>(z(ij< BNDTjHn0%A+8wLrwk;}LAw)&$ 7ԯ9E뙥!0čQ4Ώz:qD,wd^R%N ӿ!E7^*՚ nif2LPtyA1~N.~4~5I1cc ,FA9Vw"ujsst)eiDX_]h7L"s{|#9I&RةA_X6H!mJsGAniw5n`!1BOGB bTAb&f<#Dx\k8!E撀02P*k9sg+v $&r=^!`= 4Z]CR#o|׼-ed5D}qD>Ӂmjb=xk\ z|E9gt,vѓ{<&GAsC|-LjJ+Ue`YLŶRx/<-NܙU(B(8鼉F/[|@pyg(fah=#Iخ8sW;*c52]pv5Po*m] =X6)ە[ILX2\κZ4nN[!ߍ5دi VEK\,q27†)m''=*](C%VU]W!Qs n #ߟ[>AgvZL?vJ8ݴoUzٽ{0b*=F)"c & es)GE2n-mJ7{Wd YsFR=iF_|yljAV,N"ސd\\gSabxl?f:u ERUu>S=%"II'i6%.".69k)jU秀JU5ԝ%߸!a@u3#J?jL[VP94,r7G3ADۡ?P5FRA5ipvnaؖ>zdWK&4kuzx%z[LpMTÑֿ@yG¤3܋foy}pi-e9gbu9.IP/wspoj3p l`QL a2Z^);1fD%ɷk٬Fk J)>RE5\|,'9jpĮ;R&;RIu< "bo#M|icG Վ|*zEoХ`*GkK|S] ܧh>#×A`-rY ?u̖58id6g&,vܝs!GonPQپSiZ3ױr.ݱSYc8 s^1BoJ%e?%cwNmMBԭ1+Z6戵IO yy8w][dL@r**(\6Z])5|Nn'ns)4AS u,ֱX=8XEZNR9Y; ˞?w무Η0̌6ؚ:'&+(c_Qc kʛmS5F;icLZ\eW0֖M4i:Y->⣶romL9}/V7xƽ\"9$klNu:Tz'%t{)y)gr6TWm.IZR?V{jS,eYVHXEW| =O6l þ:7s#5'^GIpՠвehqBd:>J`X|Zo&AU4BRLۦ+Qأg L)Z>5OovKD;<Я8MQF^cS0)';ţ-S3 jօ/s}>ɋڦR/yfl>-pm]F~ϲukn=drd^aP޵xܜhM/JHg lbAj=&1gI@'ȆV!-?ɠij ?O5u{dLI뽫7?:)4mP}e=7>\ ~ ٵQ_:d=+