From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) by finch.gentoo.org (Postfix) with ESMTP id 18A351389E2 for ; Mon, 15 Dec 2014 22:54:13 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 00EAAE099C; Mon, 15 Dec 2014 22:54:09 +0000 (UTC) Received: from smtp.gentoo.org (smtp.gentoo.org [140.211.166.183]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 16546E099C for ; Mon, 15 Dec 2014 22:54:08 +0000 (UTC) Received: from pomiot.lan (mgorny-1-pt.tunnel.tserv28.waw1.ipv6.he.net [IPv6:2001:470:70:353::2]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) (Authenticated sender: mgorny) by smtp.gentoo.org (Postfix) with ESMTPSA id 739EF3402FB; Mon, 15 Dec 2014 22:54:06 +0000 (UTC) Date: Mon, 15 Dec 2014 23:53:58 +0100 From: =?UTF-8?B?TWljaGHFgiBHw7Nybnk=?= To: gentoo-python@lists.gentoo.org Subject: [gentoo-python] Patches to drop support for python-exec:0 Message-ID: <20141215235358.72bb3550@pomiot.lan> Organization: Gentoo X-Mailer: Claws Mail 3.11.1 (GTK+ 2.24.25; x86_64-pc-linux-gnu) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Discussions centering around the Python ecosystem in Gentoo Linux X-BeenThere: gentoo-python@gentoo.org X-BeenThere: gentoo-python@lists.gentoo.org MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha512; boundary="Sig_/MjAm+k7ObX.lHBKIbwuTb3C"; protocol="application/pgp-signature" X-Archives-Salt: 9a0e67b1-8b22-4b53-a180-d49ddd710da9 X-Archives-Hash: 6a11a529f0fdc297da57520333a78592 --Sig_/MjAm+k7ObX.lHBKIbwuTb3C Content-Type: multipart/mixed; boundary="MP_/8tZxOGvKCRZv8RkoAd_Pi_c" --MP_/8tZxOGvKCRZv8RkoAd_Pi_c Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Content-Disposition: inline Hello, pykde4 is the last package in the tree using python-exec:0, and a new version supporting :2 is being stabilized right now. For this reason, I think we should start preparing ourselves to remove python-exec:0. I'm thinking of 30-day p.mask followed by eclass update. I'm attaching a patch for review. The patch removes bi-python-exec support in favor of supporting only :2. Specifically: 1. ebuilds forcing python-exec:0 via the internal variable call 'die' now, 2. PYTHON_DEPS is updated to require >=3Dpython-exec-2:=3D. This way we still provide support for potential python-exec-3 while requiring at least 2 ;). 3. all conditionals are inlined to support only :2, also some code has been simplified. Please review and possibly test. I haven't tested it yet but there's still some time before the patch can be committed ;). --=20 Best regards, Micha=C5=82 G=C3=B3rny --MP_/8tZxOGvKCRZv8RkoAd_Pi_c Content-Type: text/x-patch Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename=remove-python-exec-0.diff SW5kZXg6IGRpc3R1dGlscy1yMS5lY2xhc3MNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0NClJDUyBmaWxlOiAvdmFyL2N2 c3Jvb3QvZ2VudG9vLXg4Ni9lY2xhc3MvZGlzdHV0aWxzLXIxLmVjbGFzcyx2DQpyZXRyaWV2aW5n IHJldmlzaW9uIDEuMTA2DQpkaWZmIC11IC1CIC1yMS4xMDYgZGlzdHV0aWxzLXIxLmVjbGFzcw0K LS0tIGRpc3R1dGlscy1yMS5lY2xhc3MJMTEgRGVjIDIwMTQgMTg6MzI6MzAgLTAwMDAJMS4xMDYN CisrKyBkaXN0dXRpbHMtcjEuZWNsYXNzCTE1IERlYyAyMDE0IDIyOjUwOjI4IC0wMDAwDQpAQCAt MzY4LDcgKzM2OCw3IEBADQogCQkJcm9vdCA9ICR7RH0NCiAJCV9FT0ZfDQogDQotCQlpZiBbWyAh ICR7RElTVFVUSUxTX1NJTkdMRV9JTVBMfSBdXSAmJiBfcHl0aG9uX3dhbnRfcHl0aG9uX2V4ZWMy OyB0aGVuDQorCQlpZiBbWyAhICR7RElTVFVUSUxTX1NJTkdMRV9JTVBMfSBdXTsgdGhlbg0KIAkJ CWNhdCA+PiAiJHtIT01FfSIvLnB5ZGlzdHV0aWxzLmNmZyA8PC1fRU9GXyB8fCBkaWUNCiAJCQkJ aW5zdGFsbC1zY3JpcHRzID0gJChweXRob25fZ2V0X3NjcmlwdGRpcikNCiAJCQlfRU9GXw0KQEAg LTQxOSwxMSArNDE5LDcgQEANCiAJbG9jYWwgYmluZGlyPSR7Mn0NCiANCiAJbG9jYWwgUFlUSE9O X1NDUklQVERJUg0KLQlpZiBfcHl0aG9uX3dhbnRfcHl0aG9uX2V4ZWMyOyB0aGVuDQotCQlweXRo b25fZXhwb3J0IFBZVEhPTl9TQ1JJUFRESVINCi0JZWxzZQ0KLQkJUFlUSE9OX1NDUklQVERJUj0k e2JpbmRpcn0NCi0JZmkNCisJcHl0aG9uX2V4cG9ydCBQWVRIT05fU0NSSVBURElSDQogDQogCWxv Y2FsIGYgcHl0aG9uX2ZpbGVzPSgpIG5vbl9weXRob25fZmlsZXM9KCkNCiANCkBAIC00MzcsNyAr NDMzLDcgQEANCiAJCQlpZiBbWyAke3NoZWJhbmd9ID09ICcjIScqJHtFUFlUSE9OfSogXV07IHRo ZW4NCiAJCQkJZGVidWctcHJpbnQgIiR7RlVOQ05BTUV9OiBtYXRjaGluZyBzaGViYW5nOiAke3No ZWJhbmd9Ig0KIAkJCQlweXRob25fZmlsZXMrPSggIiR7Zn0iICkNCi0JCQllbGlmIF9weXRob25f d2FudF9weXRob25fZXhlYzI7IHRoZW4NCisJCQllbHNlDQogCQkJCWRlYnVnLXByaW50ICIke0ZV TkNOQU1FfTogbm9uLW1hdGNoaW5nIHNoZWJhbmc6ICR7c2hlYmFuZ30iDQogCQkJCW5vbl9weXRo b25fZmlsZXMrPSggIiR7Zn0iICkNCiAJCQlmaQ0KQEAgLTQ0OCwxOCArNDQ0LDExIEBADQogCQlm b3IgZiBpbiAiJHtweXRob25fZmlsZXNbQF19IjsgZG8NCiAJCQlsb2NhbCBiYXNlbmFtZT0ke2Yj IyovfQ0KIA0KLQkJCWlmICEgX3B5dGhvbl93YW50X3B5dGhvbl9leGVjMjsgdGhlbg0KLQkJCQls b2NhbCBuZXdmPSR7ZiUvKn0vJHtiYXNlbmFtZX0tJHtFUFlUSE9OfQ0KLQkJCQlkZWJ1Zy1wcmlu dCAiJHtGVU5DTkFNRX06IHJlbmFtaW5nICR7ZiMke3BhdGh9L30gdG8gJHtuZXdmIyR7cGF0aH0v fSINCi0JCQkJbXYgIiR7Zn0iICIke25ld2Z9IiB8fCBkaWUNCi0JCQlmaQ0KLQ0KIAkJCWRlYnVn LXByaW50ICIke0ZVTkNOQU1FfTogaW5zdGFsbGluZyB3cmFwcGVyIGF0ICR7YmluZGlyfS8ke2Jh c2VuYW1lfSINCi0JCQlfcHl0aG9uX2xuX3JlbCAiJHtwYXRofSR7RVBSRUZJWH0iJChfcHl0aG9u X2dldF93cmFwcGVyX3BhdGgpIFwNCisJCQlfcHl0aG9uX2xuX3JlbCAiJHtwYXRofSR7RVBSRUZJ WH0iL3Vzci9saWIvcHl0aG9uLWV4ZWMvcHl0aG9uLWV4ZWMyIFwNCiAJCQkJIiR7cGF0aH0ke2Jp bmRpcn0vJHtiYXNlbmFtZX0iIHx8IGRpZQ0KIAkJZG9uZQ0KIA0KLQkJIyAobm9uLWVtcHR5IG9u bHkgd2l0aCBweXRob24tZXhlYzoyKQ0KIAkJZm9yIGYgaW4gIiR7bm9uX3B5dGhvbl9maWxlc1tA XX0iOyBkbw0KIAkJCWxvY2FsIGJhc2VuYW1lPSR7ZiMjKi99DQogDQpAQCAtNTE5LDE1ICs1MDgs MTEgQEANCiAJCQljYXNlICIke2F9IiBpbg0KIAkJCQktLWluc3RhbGwtc2NyaXB0cz0qKQ0KIAkJ CQkJc2NyaXB0ZGlyPSR7YSMtLWluc3RhbGwtc2NyaXB0cz19DQotCQkJCQlpZiBfcHl0aG9uX3dh bnRfcHl0aG9uX2V4ZWMyOyB0aGVuDQotCQkJCQkJdW5zZXQgIiR7YXJnX3Zhcn0iDQotCQkJCQlm aQ0KKwkJCQkJdW5zZXQgIiR7YXJnX3Zhcn0iDQogCQkJCQk7Ow0KIAkJCQktLWluc3RhbGwtc2Ny aXB0cykNCiAJCQkJCXNjcmlwdGRpcj0keyExfQ0KLQkJCQkJaWYgX3B5dGhvbl93YW50X3B5dGhv bl9leGVjMjsgdGhlbg0KLQkJCQkJCXVuc2V0ICIke2FyZ192YXJ9IiAiJHsxfSINCi0JCQkJCWZp DQorCQkJCQl1bnNldCAiJHthcmdfdmFyfSIgIiR7MX0iDQogCQkJCQlzaGlmdA0KIAkJCQkJOzsN CiAJCQllc2FjDQpJbmRleDogcHl0aG9uLXIxLmVjbGFzcw0KPT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQ0KUkNTIGZpbGU6 IC92YXIvY3Zzcm9vdC9nZW50b28teDg2L2VjbGFzcy9weXRob24tcjEuZWNsYXNzLHYNCnJldHJp ZXZpbmcgcmV2aXNpb24gMS44MA0KZGlmZiAtdSAtQiAtcjEuODAgcHl0aG9uLXIxLmVjbGFzcw0K LS0tIHB5dGhvbi1yMS5lY2xhc3MJNyBEZWMgMjAxNCAxOToxNToxOSAtMDAwMAkxLjgwDQorKysg cHl0aG9uLXIxLmVjbGFzcwkxNSBEZWMgMjAxNCAyMjo1MDoyOCAtMDAwMA0KQEAgLTIwOCw5ICsy MDgsOSBAQA0KIAkjIDMpIHVzZSB3aGljaGV2ZXIgcHl0aG9uLWV4ZWMgc2xvdCBpbnN0YWxsZWQg aW4gRUFQSSA1LiBGb3IgRUFQSSA0LA0KIAkjIGp1c3QgZml4IDoyIHNpbmNlIDo9IGRlcHMgYXJl IG5vdCBzdXBwb3J0ZWQuDQogCWlmIFtbICR7X1BZVEhPTl9XQU5UX1BZVEhPTl9FWEVDMn0gPT0g MCBdXTsgdGhlbg0KLQkJUFlUSE9OX0RFUFMrPSJkZXYtbGFuZy9weXRob24tZXhlYzowWyR7UFlU SE9OX1VTRURFUH1dIg0KKwkJZGllICJweXRob24tZXhlYzowIGlzIG5vIGxvbmdlciBzdXBwb3J0 ZWQsIHBsZWFzZSBmaXggeW91ciBlYnVpbGQgdG8gd29yayB3aXRoIHB5dGhvbi1leGVjOjIiDQog CWVsaWYgW1sgJHtFQVBJfSAhPSA0IF1dOyB0aGVuDQotCQlQWVRIT05fREVQUys9ImRldi1sYW5n L3B5dGhvbi1leGVjOj1bJHtQWVRIT05fVVNFREVQfV0iDQorCQlQWVRIT05fREVQUys9Ij49ZGV2 LWxhbmcvcHl0aG9uLWV4ZWMtMjo9WyR7UFlUSE9OX1VTRURFUH1dIg0KIAllbHNlDQogCQlQWVRI T05fREVQUys9ImRldi1sYW5nL3B5dGhvbi1leGVjOjJbJHtQWVRIT05fVVNFREVQfV0iDQogCWZp DQpAQCAtNzgyLDI2ICs3ODIsMTYgQEANCiAJX3B5dGhvbl9yZXBsaWNhdGVfc2NyaXB0KCkgew0K IAkJbG9jYWwgX1BZVEhPTl9GSVhfU0hFQkFOR19RVUlFVD0xDQogDQotCQlpZiBfcHl0aG9uX3dh bnRfcHl0aG9uX2V4ZWMyOyB0aGVuDQotCQkJbG9jYWwgUFlUSE9OX1NDUklQVERJUg0KLQkJCXB5 dGhvbl9leHBvcnQgUFlUSE9OX1NDUklQVERJUg0KLQ0KLQkJCSgNCi0JCQkJZXhlaW50byAiJHtQ WVRIT05fU0NSSVBURElSIyR7RVBSRUZJWH19Ig0KLQkJCQlkb2V4ZSAiJHtmaWxlc1tAXX0iDQot CQkJKQ0KLQ0KLQkJCXB5dGhvbl9maXhfc2hlYmFuZyAtcSBcDQotCQkJCSIke2ZpbGVzW0BdLypc Ly8ke0QlL30vJHtQWVRIT05fU0NSSVBURElSfS99Ig0KLQkJZWxzZQ0KLQkJCWxvY2FsIGYNCi0J CQlmb3IgZiBpbiAiJHtmaWxlc1tAXX0iOyBkbw0KLQkJCQljcCAtcCAiJHtmfSIgIiR7Zn0tJHtF UFlUSE9OfSIgfHwgZGllDQotCQkJZG9uZQ0KKwkJbG9jYWwgUFlUSE9OX1NDUklQVERJUg0KKwkJ cHl0aG9uX2V4cG9ydCBQWVRIT05fU0NSSVBURElSDQogDQotCQkJcHl0aG9uX2ZpeF9zaGViYW5n IC1xIFwNCi0JCQkJIiR7ZmlsZXNbQF0vJS8tJHtFUFlUSE9OfX0iDQotCQlmaQ0KKwkJKA0KKwkJ CWV4ZWludG8gIiR7UFlUSE9OX1NDUklQVERJUiMke0VQUkVGSVh9fSINCisJCQlkb2V4ZSAiJHtm aWxlc1tAXX0iDQorCQkpDQorDQorCQlweXRob25fZml4X3NoZWJhbmcgLXEgXA0KKwkJCSIke2Zp bGVzW0BdLypcLy8ke0QlL30vJHtQWVRIT05fU0NSSVBURElSfS99Ig0KIAl9DQogDQogCWxvY2Fs IGZpbGVzPSggIiR7QH0iICkNCkBAIC04MTAsNyArODAwLDcgQEANCiAJIyBpbnN0YWxsIHRoZSB3 cmFwcGVycw0KIAlsb2NhbCBmDQogCWZvciBmOyBkbw0KLQkJX3B5dGhvbl9sbl9yZWwgIiR7RUQl L30kKF9weXRob25fZ2V0X3dyYXBwZXJfcGF0aCkiICIke2Z9IiB8fCBkaWUNCisJCV9weXRob25f bG5fcmVsICIke0VEJS99L3Vzci9saWIvcHl0aG9uLWV4ZWMvcHl0aG9uLWV4ZWMyIiAiJHtmfSIg fHwgZGllDQogCWRvbmUNCiB9DQogDQpJbmRleDogcHl0aG9uLXNpbmdsZS1yMS5lY2xhc3MNCj09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT0NClJDUyBmaWxlOiAvdmFyL2N2c3Jvb3QvZ2VudG9vLXg4Ni9lY2xhc3MvcHl0aG9u LXNpbmdsZS1yMS5lY2xhc3Msdg0KcmV0cmlldmluZyByZXZpc2lvbiAxLjI5DQpkaWZmIC11IC1C IC1yMS4yOSBweXRob24tc2luZ2xlLXIxLmVjbGFzcw0KLS0tIHB5dGhvbi1zaW5nbGUtcjEuZWNs YXNzCTcgTm92IDIwMTQgMTg6MTE6NTggLTAwMDAJMS4yOQ0KKysrIHB5dGhvbi1zaW5nbGUtcjEu ZWNsYXNzCTE1IERlYyAyMDE0IDIyOjUwOjI4IC0wMDAwDQpAQCAtMjE5LDkgKzIxOSw5IEBADQog CSMgMykgdXNlIHdoaWNoZXZlciBweXRob24tZXhlYyBzbG90IGluc3RhbGxlZCBpbiBFQVBJIDUu IEZvciBFQVBJIDQsDQogCSMganVzdCBmaXggOjIgc2luY2UgOj0gZGVwcyBhcmUgbm90IHN1cHBv cnRlZC4NCiAJaWYgW1sgJHtfUFlUSE9OX1dBTlRfUFlUSE9OX0VYRUMyfSA9PSAwIF1dOyB0aGVu DQotCQlQWVRIT05fREVQUys9ImRldi1sYW5nL3B5dGhvbi1leGVjOjBbJHtQWVRIT05fVVNFREVQ fV0iDQorCQlkaWUgInB5dGhvbi1leGVjOjAgaXMgbm8gbG9uZ2VyIHN1cHBvcnRlZCwgcGxlYXNl IGZpeCB5b3VyIGVidWlsZCB0byB3b3JrIHdpdGggcHl0aG9uLWV4ZWM6MiINCiAJZWxpZiBbWyAk e0VBUEl9ICE9IDQgXV07IHRoZW4NCi0JCVBZVEhPTl9ERVBTKz0iZGV2LWxhbmcvcHl0aG9uLWV4 ZWM6PVske1BZVEhPTl9VU0VERVB9XSINCisJCVBZVEhPTl9ERVBTKz0iPj1kZXYtbGFuZy9weXRo b24tZXhlYy0yOj1bJHtQWVRIT05fVVNFREVQfV0iDQogCWVsc2UNCiAJCVBZVEhPTl9ERVBTKz0i ZGV2LWxhbmcvcHl0aG9uLWV4ZWM6Mlske1BZVEhPTl9VU0VERVB9XSINCiAJZmkNCkluZGV4OiBw eXRob24tdXRpbHMtcjEuZWNsYXNzDQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09DQpSQ1MgZmlsZTogL3Zhci9jdnNyb290 L2dlbnRvby14ODYvZWNsYXNzL3B5dGhvbi11dGlscy1yMS5lY2xhc3Msdg0KcmV0cmlldmluZyBy ZXZpc2lvbiAxLjY3DQpkaWZmIC11IC1CIC1yMS42NyBweXRob24tdXRpbHMtcjEuZWNsYXNzDQot LS0gcHl0aG9uLXV0aWxzLXIxLmVjbGFzcwkyOSBOb3YgMjAxNCAyMzowMzo0MiAtMDAwMAkxLjY3 DQorKysgcHl0aG9uLXV0aWxzLXIxLmVjbGFzcwkxNSBEZWMgMjAxNCAyMjo1MDoyOCAtMDAwMA0K QEAgLTYzNSwyMSArNjM1LDE0IEBADQogCVtbICR7RVBZVEhPTn0gXV0gfHwgZGllICdObyBQeXRo b24gaW1wbGVtZW50YXRpb24gc2V0IChFUFlUSE9OIGlzIG51bGwpLicNCiAJW1sgJHsjfSAtZXEg MiBdXSB8fCBkaWUgIlVzYWdlOiAke0ZVTkNOQU1FfSA8cGF0aD4gPG5ldy1uYW1lPiINCiANCi0J bG9jYWwgZD0ke3B5dGhvbl9zY3JpcHRyb290Oi0ke0RFU1RUUkVFfS9iaW59DQotCWxvY2FsIHdy YXBkPSR7ZH0NCisJbG9jYWwgd3JhcGQ9JHtweXRob25fc2NyaXB0cm9vdDotJHtERVNUVFJFRX0v YmlufQ0KIA0KIAlsb2NhbCBmPSR7MX0NCi0JbG9jYWwgYmFyZWZuPSR7Mn0NCi0JbG9jYWwgbmV3 Zm4NCisJbG9jYWwgbmV3Zm49JHsyfQ0KIA0KLQlpZiBfcHl0aG9uX3dhbnRfcHl0aG9uX2V4ZWMy OyB0aGVuDQotCQlsb2NhbCBQWVRIT05fU0NSSVBURElSDQotCQlweXRob25fZXhwb3J0IFBZVEhP Tl9TQ1JJUFRESVINCi0JCWQ9JHtQWVRIT05fU0NSSVBURElSIyR7RVBSRUZJWH19DQotCQluZXdm bj0ke2JhcmVmbn0NCi0JZWxzZQ0KLQkJbmV3Zm49JHtiYXJlZm59LSR7RVBZVEhPTn0NCi0JZmkN CisJbG9jYWwgUFlUSE9OX1NDUklQVERJUiBkDQorCXB5dGhvbl9leHBvcnQgUFlUSE9OX1NDUklQ VERJUg0KKwlkPSR7UFlUSE9OX1NDUklQVERJUiMke0VQUkVGSVh9fQ0KIA0KIAkoDQogCQlkb2Rp ciAiJHt3cmFwZH0iDQpAQCAtNjU4LDcgKzY1MSw3IEBADQogCSkNCiANCiAJIyBpbnN0YWxsIHRo ZSB3cmFwcGVyDQotCV9weXRob25fbG5fcmVsICIke0VEJS99IiQoX3B5dGhvbl9nZXRfd3JhcHBl cl9wYXRoKSBcDQorCV9weXRob25fbG5fcmVsICIke0VEJS99Ii91c3IvbGliL3B5dGhvbi1leGVj L3B5dGhvbi1leGVjMiBcDQogCQkiJHtFRCUvfS8ke3dyYXBkfS8ke2JhcmVmbn0iIHx8IGRpZQ0K IA0KIAkjIGRvbid0IHVzZSB0aGlzIGF0IGhvbWUsIGp1c3QgY2FsbCBweXRob25fZG9zY3JpcHQo KSBpbnN0ZWFkDQpAQCAtMTA5Nyw0MCArMTA5MCw2IEBADQogCWRvbmUNCiB9DQogDQotIyBARlVO Q1RJT046IF9weXRob25fd2FudF9weXRob25fZXhlYzINCi0jIEBJTlRFUk5BTA0KLSMgQERFU0NS SVBUSU9OOg0KLSMgQ2hlY2sgd2hldGhlciB3ZSBzaG91bGQgYmUgdXNpbmcgcHl0aG9uLWV4ZWM6 Mi4NCi1fcHl0aG9uX3dhbnRfcHl0aG9uX2V4ZWMyKCkgew0KLQlkZWJ1Zy1wcmludC1mdW5jdGlv biAke0ZVTkNOQU1FfSAiJHtAfSINCi0NCi0JIyBFQVBJIDQgbGFja3Mgc2xvdCBvcGVyYXRvcnMs IHNvIGp1c3QgZml4IGl0IG9uIHB5dGhvbi1leGVjOjIuDQotCVtbICR7RUFQSX0gPT0gNCBdXSAm JiByZXR1cm4gMA0KLQ0KLQkjIENoZWNrIGlmIHdlIGNhY2hlZCB0aGUgcmVzdWx0LCBvciBzb21l b25lIHB1dCBhbiBvdmVycmlkZS4NCi0JaWYgW1sgISAke19QWVRIT05fV0FOVF9QWVRIT05fRVhF QzIrMX0gXV07IHRoZW4NCi0JCWhhc192ZXJzaW9uICdkZXYtbGFuZy9weXRob24tZXhlYzoyJw0K LQkJX1BZVEhPTl9XQU5UX1BZVEhPTl9FWEVDMj0kKCggISAkez99ICkpDQotCWZpDQotDQotCSMg Tm9uLXplcm8gbWVhbnMgJ3llcycsIHplcm8gbWVhbnMgJ25vJy4NCi0JW1sgJHtfUFlUSE9OX1dB TlRfUFlUSE9OX0VYRUMyfSAhPSAwIF1dDQotfQ0KLQ0KLSMgQEZVTkNUSU9OOiBfcHl0aG9uX2dl dF93cmFwcGVyX3BhdGgNCi0jIEBJTlRFUk5BTA0KLSMgQERFU0NSSVBUSU9OOg0KLSMgT3V0cHV0 IHBhdGggdG8gcHJvcGVyIHB5dGhvbi1leGVjIHNsb3QuDQotX3B5dGhvbl9nZXRfd3JhcHBlcl9w YXRoKCkgew0KLQlkZWJ1Zy1wcmludC1mdW5jdGlvbiAke0ZVTkNOQU1FfSAiJHtAfSINCi0NCi0J aWYgX3B5dGhvbl93YW50X3B5dGhvbl9leGVjMjsgdGhlbg0KLQkJZWNobyAvdXNyL2xpYi9weXRo b24tZXhlYy9weXRob24tZXhlYzINCi0JZWxzZQ0KLQkJZWNobyAvdXNyL2Jpbi9weXRob24tZXhl Yw0KLQlmaQ0KLX0NCi0NCiAjIEBGVU5DVElPTjogcHl0aG9uX2V4cG9ydF91dGY4X2xvY2FsZQ0K ICMgQFJFVFVSTjogMCBvbiBzdWNjZXNzLCAxIG9uIGZhaWx1cmUuDQogIyBAREVTQ1JJUFRJT046 DQo= --MP_/8tZxOGvKCRZv8RkoAd_Pi_c-- --Sig_/MjAm+k7ObX.lHBKIbwuTb3C Content-Type: application/pgp-signature Content-Description: OpenPGP digital signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 iQJ8BAEBCgBmBQJUj2aGXxSAAAAAAC4AKGlzc3Vlci1mcHJAbm90YXRpb25zLm9w ZW5wZ3AuZmlmdGhob3JzZW1hbi5uZXQ2REJCMDdDQzRGMERBRDA2RUEwQUZFNDFC MDdBMUFFQUVGQjQ0NjRFAAoJELB6GurvtEZOD/EP/iao+LeR7IYDhYuyLjWCgRe2 YKRhwkN+SgWe+/6CzwBHwGY0g1ugOlMHgAwRAT2xeCdoULvDfKCl6MsOvU5yqmGB iDgJ5+9Ha65UNXjXPGdVhV2Pqq/fnBAp7uQwbeWt6yCMLXeiZVu22ZRlae1088ll GsyYiBht+qeol3Mzhpg/Givvz94WHItwpRMzqpV3+fpRxLfN4UUKyO1KoGAhAr8f DgklwEzNwys207Jcr5OuQTm9XW0kEsAeYYIotEwrer8tBolMwqmjkIqU0M+leN1/ 8JMGl1czJInIMWNQ39pX3Mu4JOO55WLx+4wg0lptogslTXCjTM4EzkrmSi3azo+N W66MS+WWsLiZJJ2FYLwv4C0dtHYHMTascqIiC7+0z4UcJABjUsUuqck07O61U24D 4xpyJeiM5MWPB5MmpTYfPxVNCtx4BR8no5+mMeKtyVm7Va5dCRldWc1qn5PYQOcd zoxpT7w0V1KuD6FrXz7QeIFJvuzHaSKgIl0GSAPlTNzyrrFPuxiHLONexy37QBM2 umxnG5Q0mNICP2q1NHP3UEy7TaTyY+OYG4yvMNR+zgvNmGMfVihgzCmIJ7LEQWU8 OuehTNeBG4QPjnYnRJdFLCAwgEpM5D0xAj+kCuECi9K0ZLN7VfHwfs2J05T7mgRT GQ/XW9bfXAY37wIgpyj8 =5rsG -----END PGP SIGNATURE----- --Sig_/MjAm+k7ObX.lHBKIbwuTb3C--