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 397F0138010 for ; Mon, 15 Feb 2016 08:16:53 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id D003621C01F; Mon, 15 Feb 2016 08:16:44 +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 A166C21C002 for ; Mon, 15 Feb 2016 08:16:43 +0000 (UTC) Received: from jmac.jlec.de (ip-88-153-156-92.hsi04.unitymediagroup.de [88.153.156.92]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) (Authenticated sender: jlec) by smtp.gentoo.org (Postfix) with ESMTPSA id A4EED341048; Mon, 15 Feb 2016 08:16:41 +0000 (UTC) To: Gentoo Dev From: "Justin Lecher (jlec)" Subject: [gentoo-dev] RFC: intel-sdp-r1.eclass X-Enigmail-Draft-Status: N1110 Message-ID: <56C18975.3000409@gentoo.org> Date: Mon, 15 Feb 2016 09:16:53 +0100 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.11; rv:38.0) Gecko/20100101 Thunderbird/38.5.1 Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-dev@lists.gentoo.org Reply-to: gentoo-dev@lists.gentoo.org MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha512; protocol="application/pgp-signature"; boundary="xpbnaomSuhr29E8EHGvXUbT6xasaIAxf1" X-Archives-Salt: 207e5069-dbce-4ad1-ac50-16ed88587385 X-Archives-Hash: 4dc6caa4e0ae804ca6b6bc23b7f7fcc6 This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --xpbnaomSuhr29E8EHGvXUbT6xasaIAxf1 Content-Type: multipart/mixed; boundary="------------060900070608050706000406" This is a multi-part message in MIME format. --------------060900070608050706000406 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Hi everyone, We (actually mostly soap) rewrote parts of the intel-sdp.eclass and decided to revbump it. Please review our changes. Changes are: * Move from EAPI=3D5 to 6 * Adopt to changed packaging layout * Use ABI_ instead of multilib * Drop eclipse support * Require all RPM lists to be arrays * Don't record in installation db Thanks, Justin --------------060900070608050706000406 Content-Type: text/plain; charset=UTF-8; x-mac-type="0"; x-mac-creator="0"; name="intel-sdp-r1.eclass" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="intel-sdp-r1.eclass" IyBDb3B5cmlnaHQgMTk5OS0yMDE2IEdlbnRvbyBGb3VuZGF0aW9uCiMgRGlzdHJpYnV0ZWQg dW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSB2Mgoj ICRJZCQKCiMgQEVDTEFTUzogaW50ZWwtc2RwLXIxLmVjbGFzcwojIEBNQUlOVEFJTkVSOgoj IEp1c3RpbiBMZWNoZXIgPGpsZWNAZ2VudG9vLm9yZz4KIyBEYXZpZCBTZWlmZXJ0IDxzb2Fw QGdlbnRvby5vcmc+CiMgU2NpIFRlYW0gPHNjaUBnZW50b28ub3JnPgojIEBCTFVSQjogSGFu ZGxpbmcgb2YgSW50ZWwncyBTb2Z0d2FyZSBEZXZlbG9wbWVudCBQcm9kdWN0cyBwYWNrYWdl IG1hbmFnZW1lbnQKCmlmIFtbICEgJHtfSU5URUxfU0RQX1IxX0VDTEFTU199IF1dOyB0aGVu CgpjYXNlICIke0VBUEk6LTB9IiBpbgoJNikgOzsKCSopIGRpZSAiRUFQST0ke0VBUEl9IGlz IG5vdCBzdXBwb3J0ZWQiIDs7CmVzYWMKCiMgQEVDTEFTUy1WQVJJQUJMRTogSU5URUxfRElE CiMgQERFRkFVTFRfVU5TRVQKIyBAREVTQ1JJUFRJT046CiMgVGhlIHBhY2thZ2UgZG93bmxv YWQgSUQgZnJvbSBJbnRlbC4KIyBUbyBmaW5kIG91dCBpdHMgdmFsdWUsIHNlZSB0aGUgbGlu a3MgdG8gZG93bmxvYWQgaW4KIyBodHRwczovL3JlZ2lzdHJhdGlvbmNlbnRlci5pbnRlbC5j b20vUmVnQ2VudGVyL015UHJvZHVjdHMuYXNweAojCiMgZS5nLiA4MzY1CiMKIyBNdXN0IGJl IGRlZmluZWQgYmVmb3JlIGluaGVyaXRpbmcgdGhlIGVjbGFzcwoKIyBARUNMQVNTLVZBUklB QkxFOiBJTlRFTF9EUE4KIyBAREVGQVVMVF9VTlNFVAojIEBERVNDUklQVElPTjoKIyBUaGUg cGFja2FnZSBuYW1lIHRvIGRvd25sb2FkIGZyb20gSW50ZWwuCiMgVG8gZmluZCBvdXQgaXRz IHZhbHVlLCBzZWUgdGhlIGxpbmtzIHRvIGRvd25sb2FkIGluCiMgaHR0cHM6Ly9yZWdpc3Ry YXRpb25jZW50ZXIuaW50ZWwuY29tL1JlZ0NlbnRlci9NeVByb2R1Y3RzLmFzcHgKIwojIGUu Zy4gcGFyYWxsZWxfc3R1ZGlvX3hlCiMKIyBNdXN0IGJlIGRlZmluZWQgYmVmb3JlIGluaGVy aXRpbmcgdGhlIGVjbGFzcwoKIyBARUNMQVNTLVZBUklBQkxFOiBJTlRFTF9EUFYKIyBAREVG QVVMVF9VTlNFVAojIEBERVNDUklQVElPTjoKIyBUaGUgcGFja2FnZSBkb3dubG9hZCB2ZXJz aW9uIGZyb20gSW50ZWwuCiMgVG8gZmluZCBvdXQgaXRzIHZhbHVlLCBzZWUgdGhlIGxpbmtz IHRvIGRvd25sb2FkIGluCiMgaHR0cHM6Ly9yZWdpc3RyYXRpb25jZW50ZXIuaW50ZWwuY29t L1JlZ0NlbnRlci9NeVByb2R1Y3RzLmFzcHgKIwojIGUuZy4gMjAxNl91cGRhdGUxCiMKIyBN dXN0IGJlIGRlZmluZWQgYmVmb3JlIGluaGVyaXRpbmcgdGhlIGVjbGFzcwoKIyBARUNMQVNT LVZBUklBQkxFOiBJTlRFTF9UQVJYCiMgQERFU0NSSVBUSU9OOgojIFRoZSBwYWNrYWdlIGV4 dGVudGlvbi4KIyBUbyBmaW5kIG91dCBpdHMgdmFsdWUsIHNlZSB0aGUgbGlua3MgdG8gZG93 bmxvYWQgaW4KIyBodHRwczovL3JlZ2lzdHJhdGlvbmNlbnRlci5pbnRlbC5jb20vUmVnQ2Vu dGVyL015UHJvZHVjdHMuYXNweAojCiMgZS5nLiB0YXIuZ3oKIwojIE11c3QgYmUgZGVmaW5l ZCBiZWZvcmUgaW5oZXJpdGluZyB0aGUgZWNsYXNzCjogJHtJTlRFTF9UQVJYOj10Z3p9Cgoj IEBFQ0xBU1MtVkFSSUFCTEU6IElOVEVMX1NVQkRJUgojIEBERUZBVUxUX1VOU0VUCiMgQERF U0NSSVBUSU9OOgojIFRoZSBwYWNrYWdlIHN1Yi1kaXJlY3Rvcnkgd2hlcmUgaXQgd2lsbCBl bmQtdXAgaW4gL29wdC9pbnRlbAojIFRvIGZpbmQgb3V0IGl0cyB2YWx1ZSwgeW91IGhhdmUg dG8gZG8gYSByYXcgaW5zdGFsbCBmcm9tIHRoZSBJbnRlbCB0YXIgYmFsbAoKIyBARUNMQVNT LVZBUklBQkxFOiBJTlRFTF9TS0lQX0xJQ0VOU0UKIyBAREVGQVVMVF9VTlNFVAojIEBERVND UklQVElPTjoKIyBQb3NzaWJpbGl0eSB0byBza2lwIHRoZSBtYW5kYXRvcnkgY2hlY2sgZm9y IGxpY2Vuc2VzLiBPbmx5IHNldCB0aGlzIGlmIHRoZXJlCiMgaXMgcmVhbGx5IG5vIGZpeC4K CiMgQEVDTEFTUy1WQVJJQUJMRTogSU5URUxfUlBNU19ESVIKIyBAREVTQ1JJUFRJT046CiMg TWFpbiBzdWJkaXJlY3Rvcnkgd2hpY2ggY29udGFpbnMgdGhlIHJwbXMgdG8gZXh0cmFjdC4K OiAke0lOVEVMX1JQTVNfRElSOj1ycG19CgojIEBFQ0xBU1MtVkFSSUFCTEU6IElOVEVMX1g4 NgojIEBERVNDUklQVElPTjoKIyAzMmJpdCBhcmNoIGluIHJwbSBuYW1lcwojCiMgZS5nLiBp NDg2CjogJHtJTlRFTF9YODY6PWk0ODZ9CgojIEBFQ0xBU1MtVkFSSUFCTEU6IElOVEVMX0JJ Tl9SUE1TCiMgQERFU0NSSVBUSU9OOgojIEZ1bmN0aW9uYWwgbmFtZSBvZiBycG0gd2l0aG91 dCBhbnkgdmVyc2lvbi9hcmNoIHRhZwojIEhhcyB0byBiZSBhIGJhc2ggYXJyYXkKIwojIGUu Zy4gKCJpY2MtbC1hbGwtZGV2ZWwiKQojCiMgaWYgdGhlIHJwbSBpcyBsb2NhdGVkIGluIGEg ZGlyZWN0b3J5IG90aGVyIHRoYW4gSU5URUxfUlBNU19ESVIgeW91IGNhbgojIHNwZWNpZnkg dGhlIGZ1bGwgcGF0aAojCiMgZS5nLiBDTElfaW5zdGFsbC9ycG0vaW50ZWwtdnR1bmUtYW1w bGlmaWVyLXhlLWNsaQo6ICR7SU5URUxfQklOX1JQTVM6PSgpfQoKIyBARUNMQVNTLVZBUklB QkxFOiBJTlRFTF9BTUQ2NF9SUE1TCiMgQERFU0NSSVBUSU9OOgojIEFNRDY0IHNpbmdsZSBh cmNoIHJwbXMuIFNhbWUgc3ludGF4IGFzIElOVEVMX0JJTl9SUE1TCiMgSGFzIHRvIGJlIGEg YmFzaCBhcnJheQo6ICR7SU5URUxfQU1ENjRfUlBNUzo9KCl9CgojIEBFQ0xBU1MtVkFSSUFC TEU6IElOVEVMX1g4Nl9SUE1TCiMgQERFU0NSSVBUSU9OOgojIFg4NiBzaW5nbGUgYXJjaCBy cG1zLiBTYW1lIHN5bnRheCBhcyBJTlRFTF9CSU5fUlBNUwojIEhhcyB0byBiZSBhIGJhc2gg YXJyYXkKOiAke0lOVEVMX1g4Nl9SUE1TOj0oKX0KCiMgQEVDTEFTUy1WQVJJQUJMRTogSU5U RUxfREFUX1JQTVMKIyBAREVTQ1JJUFRJT046CiMgRnVuY3Rpb25hbCBuYW1lIG9mIHJwbSBv ZiBjb21tb24gZGF0YSB3aGljaCBhcmUgYXJjaCBmcmVlCiMgd2l0aG91dCBhbnkgdmVyc2lv biB0YWcKIyBIYXMgdG8gYmUgYSBiYXNoIGFycmF5CiMKIyBlLmcuICgib3Blbm1wLWwtYWxs LWRldmVsIikKIwojIGlmIHRoZSBycG0gaXMgbG9jYXRlZCBpbiBhIGRpcmVjdG9yeSBkaWZm ZXJlbnQgdG8gSU5URUxfUlBNU19ESVIgeW91IGNhbgojIHNwZWNpZnkgdGhlIGZ1bGwgcGF0 aAojCiMgZS5nLiBDTElfaW5zdGFsbC9ycG0vaW50ZWwtdnR1bmUtYW1wbGlmaWVyLXhlLWNs aS1jb21tb24KOiAke0lOVEVMX0RBVF9SUE1TOj0oKX0KCiMgQEVDTEFTUy1WQVJJQUJMRTog SU5URUxfU0lOR0xFX0FSQ0gKIyBAREVTQ1JJUFRJT046CiMgVW5zZXQsIGlmIG9ubHkgdGhl IG11bHRpbGliIHBhY2thZ2Ugd2lsbCBiZSBwcm92aWRlZCBieSBpbnRlbAo6ICR7SU5URUxf U0lOR0xFX0FSQ0g6PXRydWV9CgpNVUxUSUxJQl9DT01QQVQ9KCBhYmlfeDg2X3szMiw2NH0g KQoKaW5oZXJpdCBjaGVjay1yZXFzIGV1dGlscyBtdWx0aWxpYi1idWlsZCB2ZXJzaW9uYXRv cgoKX0lOVEVMX1BWMT0kKGdldF92ZXJzaW9uX2NvbXBvbmVudF9yYW5nZSAxKQpfSU5URUxf UFYyPSQoZ2V0X3ZlcnNpb25fY29tcG9uZW50X3JhbmdlIDIpCl9JTlRFTF9QVjM9JChnZXRf dmVyc2lvbl9jb21wb25lbnRfcmFuZ2UgMykKX0lOVEVMX1BWND0kKGdldF92ZXJzaW9uX2Nv bXBvbmVudF9yYW5nZSA0KQpfSU5URUxfUFY9IiIKW1sgLW4gJHtfSU5URUxfUFY0fSBdXSAm JiBfSU5URUxfUFYrPSIke19JTlRFTF9QVjR9LSIKW1sgLW4gJHtfSU5URUxfUFYxfSBdXSAm JiBfSU5URUxfUFYrPSIke19JTlRFTF9QVjF9IgpbWyAtbiAke19JTlRFTF9QVjJ9IF1dICYm IF9JTlRFTF9QVis9Ii4ke19JTlRFTF9QVjJ9IgpbWyAtbiAke19JTlRFTF9QVjN9IF1dICYm IF9JTlRFTF9QVis9Ii4ke19JTlRFTF9QVjN9IgpbWyAtbiAke19JTlRFTF9QVjR9IF1dICYm IF9JTlRFTF9QVis9Ii0ke19JTlRFTF9QVjR9IgoKX0lOVEVMX1VSST0iaHR0cDovL3JlZ2lz dHJhdGlvbmNlbnRlci1kb3dubG9hZC5pbnRlbC5jb20vYWtkbG0vaXJjX25hcy8ke0lOVEVM X0RJRH0vJHtJTlRFTF9EUE59IgoKaWYgWyAke0lOVEVMX1NJTkdMRV9BUkNIfSA9PSB0cnVl IF07IHRoZW4KCVNSQ19VUkk9IgoJCWFiaV94ODZfMzI/ICggJHtfSU5URUxfVVJJfV8ke0lO VEVMX0RQVn1faWEzMi4ke0lOVEVMX1RBUlh9ICkKCQlhYmlfeDg2XzY0PyAoICR7X0lOVEVM X1VSSX1fJHtJTlRFTF9EUFZ9X2ludGVsNjQuJHtJTlRFTF9UQVJYfSApIgplbHNlCglTUkNf VVJJPSIke19JTlRFTF9VUkl9XyR7SU5URUxfRFBWfS4ke0lOVEVMX1RBUlh9IgpmaQoKTElD RU5TRT0iSW50ZWwtU0RQIgojIEZ1dHVyZSB3b3JrLCAjMzk0NDExCiNTTE9UPSIke19JTlRF TF9QVjF9LiR7X0lOVEVMX1BWMn0iClNMT1Q9IjAiCgpSRVNUUklDVD0ibWlycm9yIgoKUkRF UEVORD0iIgpERVBFTkQ9ImFwcC1hcmNoL3JwbTJ0YXJneiIKCl9JTlRFTF9TRFBfWUVBUj0k e0lOVEVMX0RQVn0KX0lOVEVMX1NEUF9ZRUFSPSR7X0lOVEVMX1NEUF9ZRUFSJV9zcCp9Cl9J TlRFTF9TRFBfWUVBUj0ke19JTlRFTF9TRFBfWUVBUiVfdXBkYXRlKn0KCiMgQEVDTEFTUy1W QVJJQUJMRTogSU5URUxfU0RQX0RJUgojIEBERVNDUklQVElPTjoKIyBGdWxsIHJvb3RsZXNz IHBhdGggdG8gaW5zdGFsbGF0aW9uIGRpcgpJTlRFTF9TRFBfRElSPSJvcHQvaW50ZWwvJHtJ TlRFTF9TVUJESVJ9XyR7X0lOVEVMX1NEUF9ZRUFSOi0ke19JTlRFTF9QVjF9fSIKW1sgLW4g JHtfSU5URUxfUFYzfSBdXSAmJiBJTlRFTF9TRFBfRElSKz0iLiR7X0lOVEVMX1BWM30iCltb IC1uICR7X0lOVEVMX1BWNH0gXV0gJiYgSU5URUxfU0RQX0RJUis9Ii4ke19JTlRFTF9QVjR9 IgoKIyBARUNMQVNTLVZBUklBQkxFOiBJTlRFTF9TRFBfRURJUgojIEBERVNDUklQVElPTjoK IyBGdWxsIHJvb3RlZCBwYXRoIHRvIGluc3RhbGxhdGlvbiBkaXIKSU5URUxfU0RQX0VESVI9 IiR7RVJPT1QlL30vJHtJTlRFTF9TRFBfRElSfSIKClM9IiR7V09SS0RJUn0iCgpRQV9QUkVC VUlMVD0iJHtJTlRFTF9TRFBfRElSfS8qIgoKIyBARUNMQVNTLVZBUklBQkxFOiBJTlRFTF9B UkNICiMgQERFRkFVTFRfVU5TRVQKIyBAREVTQ1JJUFRJT046CiMgSW50ZWxzIGludGVybmFs IG5hbWVzIG9mIHRoZSBhcmNoZXM7IHdpbGwgYmUgc2V0IGF0IHJ1bnRpbWUgYWNjb3JkaW5n bHkKIwojIGUuZy4gYW1kNjQtbXVsdGlsaWIgLT4gSU5URUxfQVJDSD0iaW50ZWw2NCBpYTMy IgoKIyBARlVOQ1RJT046IF9pc2RwX2JpZy13YXJuaW5nCiMgQFVTQUdFOiBbcHJlLWNoZWNr IHwgdGVzdC1mYWlsZWRdCiMgQElOVEVSTkFMCiMgQERFU0NSSVBUSU9OOgojIHdhcm4gdXNl ciB0aGF0IHdlIHJlYWxseSByZXF1aXJlIGEgbGljZW5zZQpfaXNkcF9iaWctd2FybmluZygp IHsKCWRlYnVnLXByaW50LWZ1bmN0aW9uICR7RlVOQ05BTUV9ICIke0B9IgoKCWNhc2UgJHsx fSBpbgoJCXByZS1jaGVjayApCgkJCWVjaG8gIiIKCQkJZXdhcm4gIkxpY2Vuc2UgZmlsZSBu b3QgZm91bmQhIgoJCQk7OwoKCQl0ZXN0LWZhaWxlZCApCgkJCWVjaG8gIiIKCQkJZXdhcm4g IkZ1bmN0aW9uIHRlc3QgZmFpbGVkLiBNb3N0IHByb2JhYmx5IGR1ZSB0byBhbiBpbnZhbGlk IGxpY2Vuc2UuIgoJCQlld2FybiAiVGhpcyBtZWFucyB5b3UgYWxyZWFkeSB0cmllZCB0byBi eXBhc3MgdGhlIGxpY2Vuc2UgY2hlY2sgb25jZS4iCgkJCTs7Cgllc2FjCgoJZWNobyAiIgoJ ZXdhcm4gIk1ha2Ugc3VyZSB5b3UgaGF2ZSByZWNlaXZlZCBhbiBJbnRlbCBsaWNlbnNlLiIK CWV3YXJuICJUbyByZWNlaXZlIGEgbm9uLWNvbW1lcmNpYWwgbGljZW5zZSwgeW91IG5lZWQg dG8gcmVnaXN0ZXIgYXQ6IgoJZXdhcm4gImh0dHBzOi8vc29mdHdhcmUuaW50ZWwuY29tL2Vu LXVzL3F1YWxpZnktZm9yLWZyZWUtc29mdHdhcmUiCglld2FybiAiSW5zdGFsbCB0aGUgbGlj ZW5zZSBmaWxlIGludG8gJHtFUFJFRklYfS9vcHQvaW50ZWwvbGljZW5zZXMiCglld2FybiAi IgoJZXdhcm4gIkJlZ2lubmluZyB3aXRoIHRoZSAyMDE2IHN1aXRlIG9mIHRvb2xzLCBsaWNl bnNlIGZpbGVzIGFyZSBrZXllZCIKCWV3YXJuICJ0byB0aGUgTUFDIGFkZHJlc3Mgb2YgdGhl IGV0aDAgaW50ZXJmYWNlLiBJbiBvcmRlciB0byByZXRyaWV2ZSIKCWV3YXJuICJhIHBlcnNv bmFsaXplZCBsaWNlbnNlIGZpbGUsIGZvbGxvdyB0aGUgaW5zdHJ1Y3Rpb25zIGF0IgoJZXdh cm4gImh0dHBzOi8vc29mdHdhcmUuaW50ZWwuY29tL2VuLXVzL2FydGljbGVzL2hvdy1kby1p LWdldC1teS1saWNlbnNlLWZpbGUtZm9yLWludGVsLXBhcmFsbGVsLXN0dWRpby14ZS0yMDE2 IgoKCWNhc2UgJHsxfSBpbgoJCXByZS1jaGVjayApCgkJCWV3YXJuICJiZWZvcmUgcHJvY2Vl ZGluZyB3aXRoIGluc3RhbGxhdGlvbiBvZiAke1B9IgoJCQllY2hvICIiCgkJCTs7CgkJKiAp CgkJCWVjaG8gIiIKCQkJOzsKCQkJZXNhYwp9CgojIEBGVU5DVElPTjogX2lzZHBfdmVyc2lv bl90ZXN0CiMgQElOVEVSTkFMCiMgQERFU0NSSVBUSU9OOgojIFRlc3RpbmcgZm9yIHZhbGlk IGxpY2Vuc2UgYnkgYXNraW5nIGZvciB2ZXJzaW9uIGluZm9ybWF0aW9uIG9mIHRoZSBjb21w aWxlcgpfaXNkcF92ZXJzaW9uX3Rlc3QoKSB7CglkZWJ1Zy1wcmludC1mdW5jdGlvbiAke0ZV TkNOQU1FfSAiJHtAfSIKCglsb2NhbCBjb21wIGNvbXBfZnVsbCBhcmNoIHdhcm4KCWNhc2Ug JHtQTn0gaW4KCQlpZmMgKQoJCQlkZWJ1Zy1wcmludCAiVGVzdGluZyBpZm9ydCIKCQkJY29t cD1pZm9ydAoJCQk7OwoJCWljYyApCgkJCWRlYnVnLXByaW50ICJUZXN0aW5nIGljYyIKCQkJ Y29tcD1pY2MKCQkJOzsKCQkqKQoJCQlkaWUgIiR7UE59IGlzIG5vdCBzdXBwb3J0ZWQgZm9y IHRlc3RpbmciCgkJCTs7Cgllc2FjCgoJZm9yIGFyY2ggaW4gJHtJTlRFTF9BUkNIfTsgZG8K CQljYXNlICR7RUJVSUxEX1BIQVNFfSBpbgoJCQlpbnN0YWxsICkKCQkJCWNvbXBfZnVsbD0i JHtFRH0vJHtJTlRFTF9TRFBfRElSfS9saW51eC9iaW4vJHthcmNofS8ke2NvbXB9IgoJCQkJ OzsKCQkJcG9zdGluc3QgKQoJCQkJY29tcF9mdWxsPSIke0lOVEVMX1NEUF9FRElSfS9saW51 eC9iaW4vJHthcmNofS8ke2NvbXB9IgoJCQkJOzsKCQkJKiApCgkJCQlld2FybiAiQ29tcGls ZSB0ZXN0IG5vdCBzdXBwb3J0ZWQgaW4gJHtFQlVJTERfUEhBU0V9IgoJCQkJY29udGludWUK CQkJCTs7CgkJZXNhYwoKCQlkZWJ1Zy1wcmludCAiTERfTElCUkFSWV9QQVRIPVwiJHtJTlRF TF9TRFBfRURJUn0vbGludXgvYmluLyR7YXJjaH0vXCIgXCIke2NvbXBfZnVsbH1cIiAtViIK CgkJTERfTElCUkFSWV9QQVRIPSIke0lOVEVMX1NEUF9FRElSfS9saW51eC9iaW4vJHthcmNo fS8iICIke2NvbXBfZnVsbH0iIC1WICY+L2Rldi9udWxsCgkJW1sgJD8gLW5lIDAgXV0gJiYg d2Fybj15ZXMKCWRvbmUKCVtbICIke3dhcm59IiA9PSAieWVzIiBdXSAmJiBfaXNkcF9iaWct d2FybmluZyB0ZXN0LWZhaWxlZAp9CgojIEBGVU5DVElPTjogX2lzZHBfcnVuLXRlc3QKIyBA SU5URVJOQUwKIyBAREVTQ1JJUFRJT046CiMgVGVzdCBpZiBpbnN0YWxsZWQgY29tcGlsZXIg aXMgd29ya2luZwpfaXNkcF9ydW4tdGVzdCgpIHsKCWRlYnVnLXByaW50LWZ1bmN0aW9uICR7 RlVOQ05BTUV9ICIke0B9IgoKCWlmIFtbIC16ICR7SU5URUxfU0tJUF9MSUNFTlNFfSBdXTsg dGhlbgoJCWNhc2UgJHtQTn0gaW4KCQkJaWZjIHwgaWNjICkKCQkJCV9pc2RwX3ZlcnNpb25f dGVzdCA7OwoJCQkqICkKCQkJCWRlYnVnLXByaW50ICJObyB0ZXN0IGF2YWlsYWJsZSBmb3Ig JHtQTn0iCgkJCQk7OwoJCWVzYWMKCWZpCn0KCiMgQEZVTkNUSU9OOiBjb252ZXJ0MmludGVs X2FyY2gKIyBAVVNBR0U6IDxhcmNoPgojIEBERVNDUklQVElPTjoKIyBDb252ZXJ0IGJldHdl ZW4gcG9ydGFnZSBhcmNoIChlLmcuIGFtZDY0LCB4ODYpIGFuZCBpbnRlbCBhcmNoCiMgbm9t ZW5jbGF0dXJlIChlLmcuIGludGVsNjQsIGlhMzIpCmNvbnZlcnQyaW50ZWxfYXJjaCgpIHsK CWRlYnVnLXByaW50LWZ1bmN0aW9uICR7RlVOQ05BTUV9ICIke0B9IgoKCWNhc2UgJDEgaW4K CQlhbWQ2NHxhYmlfeDg2XzY0fCphbWQ2NCopCgkJCWVjaG8gImludGVsNjQiCgkJCTs7CgkJ eDg2fGFiaV94ODZfMzJ8Kng4NiopCgkJCWVjaG8gImlhMzIiCgkJCTs7CgkJKikKCQkJZGll ICJBYmkgXCckMVwnIGlzIHVuc3VwcG9ydGVkIgoJCQk7OwoJZXNhYwp9CgojIEBGVU5DVElP TjogaW50ZWwtc2RwLXIxX3BrZ19wcmV0ZW5kCiMgQERFU0NSSVBUSU9OOgojIEBDT0RFCiMg KiBDaGVjayB0aGF0IHRoZSB1c2VyIGhhcyBhICh2YWxpZCkgbGljZW5zZSBmaWxlIGJlZm9y ZSBnb2luZyBvbi4KIyAqIENoZWNrIGZvciBzcGFjZSByZXF1aXJlbWVudHMgYmVpbmcgZnVs bGZpbGxlZAojIEBDT0RFCmludGVsLXNkcC1yMV9wa2dfcHJldGVuZCgpIHsKCWRlYnVnLXBy aW50LWZ1bmN0aW9uICR7RlVOQ05BTUV9ICIke0B9IgoKCWxvY2FsIHdhcm49MSBkaXIgZGly cyByZXQgYXJjaCBhIHAKCgk6ICR7Q0hFQ0tSRVFTX0RJU0tfQlVJTEQ6PTI1Nk19CgljaGVj ay1yZXFzX3BrZ19wcmV0ZW5kCgoJaWYgW1sgLXogJHtJTlRFTF9TS0lQX0xJQ0VOU0V9IF1d OyB0aGVuCgkJaWYgZWNobyAke0lOVEVMX0xJQ0VOU0VfRklMRX0gfCBncmVwIC1xIEA7IHRo ZW4KCQkJZWluZm8gIkxvb2tzIGxpa2UgeW91IGFyZSB1c2luZyBmb2xsb3dpbmcgbGljZW5z ZSBzZXJ2ZXI6IgoJCQllaW5mbyAiICAgJHtJTlRFTF9MSUNFTlNFX0ZJTEV9IgoJCQlyZXR1 cm4gMAoJCWZpCgoJCWRpcnM9KAoJCQkiJHtFUFJFRklYfS9vcHQvaW50ZWwvbGljZW5zZXMi CgkJCSIke0lOVEVMX1NEUF9FRElSfS9saWNlbnNlcyIKCQkJIiR7SU5URUxfU0RQX0VESVJ9 L0xpY2Vuc2VzIgoJCQkpCgkJZm9yIGRpciBpbiAiJHtkaXJzW0BdfSIgOyBkbwoJCQllYmVn aW4gIkNoZWNraW5nIGZvciBhIGxpY2Vuc2UgaW46ICR7ZGlyfSIKCQkJI21heWJlIHVzZSBu dWxsZ2xvYiBvciBbWyAkKGVjaG8gJHtkaXIvKmxpYykgIT0gIiR7ZGlyfS8qbGljIiBdXQoJ CQlbWyAkKCBscyAiJHtkaXJ9Ii8qbGljIDI+L2Rldi9udWxsICkgXV07IHJldD0kPwoJCQll ZW5kICR7cmV0fQoJCQlpZiBbWyAke3JldH0gPT0gIjAiIF1dOyB0aGVuCgkJCQl3YXJuPSR7 cmV0fQoJCQkJYnJlYWsKCQkJZmkKCQlkb25lCgkJaWYgW1sgJHt3YXJufSA9PSAiMSIgXV07 IHRoZW4KCQkJX2lzZHBfYmlnLXdhcm5pbmcgcHJlLWNoZWNrCgkJCWRpZSAiQ291bGQgbm90 IGZpbmQgbGljZW5zZSBmaWxlIgoJCWZpCgllbHNlCgkJZXFhd2FybiAiVGhlIGVidWlsZCBk b2Vzbid0IGNoZWNrIGZvciBwcmVzZW5jZSBvZiBhIHByb3BlciBpbnRlbCBsaWNlbnNlISIK CQllcWF3YXJuICJUaGlzIHNob3VsZG4ndCBiZSBkb25lIHVubGVzcyB0aGVyZSBpcyBhIHZl cnkgZ29vZCByZWFzb24uIgoJZmkKfQoKIyBARlVOQ1RJT046IGludGVsLXNkcC1yMV9wa2df c2V0dXAKIyBAREVTQ1JJUFRJT046CiMgU2V0dGluZyB1cCBhbmQgc29ydGluZyBzb21lIGlu dGVybmFsIHZhcmlhYmxlcwppbnRlbC1zZHAtcjFfcGtnX3NldHVwKCkgewoJZGVidWctcHJp bnQtZnVuY3Rpb24gJHtGVU5DTkFNRX0gIiR7QH0iCglsb2NhbCBhcmNoIGEgcAoKCUlOVEVM X0FSQ0g9IiIKCglpZiB1c2UgYWJpX3g4Nl82NDsgdGhlbgoJCWFyY2grPSIgeDg2XzY0IgoJ CUlOVEVMX0FSQ0grPSIgaW50ZWw2NCIKCWZpCglpZiB1c2UgYWJpX3g4Nl8zMjsgdGhlbgoJ CWFyY2grPSIgJHtJTlRFTF9YODZ9IgoJCUlOVEVMX0FSQ0grPSIgaWEzMiIKCWZpCglJTlRF TF9SUE1TPSgpCglJTlRFTF9SUE1TX0ZVTEw9KCkKCglmb3IgcCBpbiAiJHtJTlRFTF9CSU5f UlBNU1tAXX0iOyBkbwoJCWZvciBhIGluICR7YXJjaH07IGRvCgkJCWlmIFsgJHtwfSA9PSAk KGJhc2VuYW1lICR7cH0pIF07IHRoZW4KCQkJCSMgY2hlY2sgZm9yIHZhcmlhYmxlcyBlbmRp bmcgaW4gIi5ycG0iCgkJCQkjIHRoZXNlIGFyZSBleGNsdWRlZCBmcm9tIHZlcnNpb24gZXhw YW5zaW9uLCBkdWUgdG8gSW50ZWwncwoJCQkJIyBpZGlvc3luY3JhdGljIHZlcnNpb25pbmcg c2NoZW1lIGJlZ2lubmluZyB3aXRoIHRoZWlyIDIwMTYKCQkJCSMgc3VpdGUgb2YgdG9vbHMu CgkJCQlpZiBbWyAiJHtwfSIgPT0gKi5ycG0gXV07IHRoZW4KCQkJCQlJTlRFTF9SUE1TKz0o IGludGVsLSR7cH0gKQoJCQkJZWxzZQoJCQkJCUlOVEVMX1JQTVMrPSggaW50ZWwtJHtwfS0k e19JTlRFTF9QVn0uJHthfS5ycG0gKQoJCQkJZmkKCQkJZWxzZQoJCQkJaWYgW1sgIiR7cH0i ID09ICoucnBtIF1dOyB0aGVuCgkJCQkJSU5URUxfUlBNU19GVUxMKz0oICR7cH0gKQoJCQkJ ZWxzZQoJCQkJCUlOVEVMX1JQTVNfRlVMTCs9KCAke3B9LSR7X0lOVEVMX1BWfS4ke2F9LnJw bSApCgkJCQlmaQoJCQlmaQoJCWRvbmUKCWRvbmUKCglpZiB1c2UgYW1kNjQ7IHRoZW4KCQlm b3IgcCBpbiAiJHtJTlRFTF9BTUQ2NF9SUE1TW0BdfSI7IGRvCgkJCWlmIFsgJHtwfSA9PSAk KGJhc2VuYW1lICR7cH0pIF07IHRoZW4KCQkJCWlmIFtbICIke3B9IiA9PSAqLnJwbSBdXTsg dGhlbgoJCQkJCUlOVEVMX1JQTVMrPSggaW50ZWwtJHtwfSApCgkJCQllbHNlCgkJCQkJSU5U RUxfUlBNUys9KCBpbnRlbC0ke3B9LSR7X0lOVEVMX1BWfS54ODZfNjQucnBtICkKCQkJCWZp CgkJCWVsc2UKCQkJCWlmIFtbICIke3B9IiA9PSAqLnJwbSBdXTsgdGhlbgoJCQkJCUlOVEVM X1JQTVNfRlVMTCs9KCAke3B9ICkKCQkJCWVsc2UKCQkJCQlJTlRFTF9SUE1TX0ZVTEwrPSgg JHtwfS0ke19JTlRFTF9QVn0ueDg2XzY0LnJwbSApCgkJCQlmaQoJCQlmaQoJCWRvbmUKCWZp CgoJZm9yIHAgaW4gIiR7SU5URUxfWDg2X1JQTVNbQF19IjsgZG8KCQlpZiBbICR7cH0gPT0g JChiYXNlbmFtZSAke3B9KSBdOyB0aGVuCgkJCWlmIFtbICIke3B9IiA9PSAqLnJwbSBdXTsg dGhlbgoJCQkJSU5URUxfUlBNUys9KCBpbnRlbC0ke3B9ICkKCQkJZWxzZQoJCQkJSU5URUxf UlBNUys9KCBpbnRlbC0ke3B9LSR7X0lOVEVMX1BWfS4ke0lOVEVMX1g4Nn0ucnBtICkKCQkJ ZmkKCQllbHNlCgkJCWlmIFtbICIke3B9IiA9PSAqLnJwbSBdXTsgdGhlbgoJCQkJSU5URUxf UlBNU19GVUxMKz0oICR7cH0gKQoJCQllbHNlCgkJCQlJTlRFTF9SUE1TX0ZVTEwrPSggJHtw fS0ke19JTlRFTF9QVn0uJHtJTlRFTF9YODZ9LnJwbSApCgkJCWZpCgkJZmkKCWRvbmUKCglm b3IgcCBpbiAiJHtJTlRFTF9EQVRfUlBNU1tAXX0iOyBkbwoJCWlmIFsgJHtwfSA9PSAkKGJh c2VuYW1lICR7cH0pIF07IHRoZW4KCQkJaWYgW1sgIiR7cH0iID09ICoucnBtIF1dOyB0aGVu CgkJCQlJTlRFTF9SUE1TKz0oIGludGVsLSR7cH0gKQoJCQllbHNlCgkJCQlJTlRFTF9SUE1T Kz0oIGludGVsLSR7cH0tJHtfSU5URUxfUFZ9Lm5vYXJjaC5ycG0gKQoJCQlmaQoJCWVsc2UK CQkJaWYgW1sgIiR7cH0iID09ICoucnBtIF1dOyB0aGVuCgkJCQlJTlRFTF9SUE1TX0ZVTEwr PSggJHtwfSApCgkJCWVsc2UKCQkJCUlOVEVMX1JQTVNfRlVMTCs9KCAke3B9LSR7X0lOVEVM X1BWfS5ub2FyY2gucnBtICkKCQkJZmkKCQlmaQoJZG9uZQp9CgojIEBGVU5DVElPTjogaW50 ZWwtc2RwLXIxX3NyY191bnBhY2sKIyBAREVTQ1JJUFRJT046CiMgVW5wYWNraW5nIG5lY2Vz c2FyeSBycG1zIGZyb20gdGFyYmFsbCwgZXh0cmFjdCB0aGVtIGFuZCByZWFycmFuZ2UgdGhl IG91dHB1dC4KaW50ZWwtc2RwLXIxX3NyY191bnBhY2soKSB7Cglsb2NhbCBsIHIgc3ViZGly IHJiIHQgbGlzdD0oKSBkZWJ1Z19saXN0CgoJZm9yIHQgaW4gJHtBfTsgZG8KCQlmb3IgciBp biAiJHtJTlRFTF9SUE1TW0BdfSI7IGRvCgkJCXJwbWRpcj0ke3QlJS4qfS8ke0lOVEVMX1JQ TVNfRElSfQoJCQlsaXN0Kz0oICR7cnBtZGlyfS8ke3J9ICkKCQlkb25lCgoJCWZvciByIGlu ICIke0lOVEVMX1JQTVNfRlVMTFtAXX0iOyBkbwoJCQlsaXN0Kz0oICR7dCUlLip9LyR7cn0g KQoJCWRvbmUKCgkJZGVidWdfbGlzdD0iJChJRlM9JCdcbic7IGVjaG8gJHtsaXN0W0BdfSAp IgoKCQlkZWJ1Zy1wcmludCAiQWRkaW5nIHRvIGRlY29tcHJlc3Npb24gbGlzdDoiCgkJZGVi dWctcHJpbnQgJHtkZWJ1Z19saXN0fQoKCQl0YXIgeHZmICIke0RJU1RESVJ9Ii8ke3R9ICR7 bGlzdFtAXX0gJj4gIiR7VH0iL3JwbS1leHRyYWN0aW9uLmxvZwoKCQlmb3IgciBpbiAke2xp c3RbQF19OyBkbwoJCQlyYj0kKGJhc2VuYW1lICR7cn0pCgkJCWVpbmZvICJVbnBhY2tpbmcg JHtyYn0iCgkJCXJwbTJ0YXIgLU8gJHtyfSB8IHRhciB4dmYgLSB8IHNlZCAtZSBcCgkJCQki czpeXC46JHtFUk9PVCMvfTpnIiA+IC9kZXYvbnVsbDsgYXNzZXJ0ICJ1bnBhY2tpbmcgJHty fSBmYWlsZWQiCgkJZG9uZQoJZG9uZQp9CgojIEBGVU5DVElPTjogaW50ZWwtc2RwLXIxX3Ny Y19pbnN0YWxsCiMgQERFU0NSSVBUSU9OOgojIEluc3RhbGwgZXZlcnl0aGluZwppbnRlbC1z ZHAtcjFfc3JjX2luc3RhbGwoKSB7CglkZWJ1Zy1wcmludC1mdW5jdGlvbiAke0ZVTkNOQU1F fSAiJHtAfSIKCgkjIHJlbW92ZSB1bmluc3RhbGwgaW5mb3JtYXRpb24KCWlmIHBhdGhfZXhp c3RzIG9wdC9pbnRlbC8iJHtJTlRFTF9EUE59IiovdW5pbnN0YWxsOyB0aGVuCgkJZWJlZ2lu ICJDbGVhbmluZyBvdXQgdW5pbnN0YWxsIgoJCXJtIC1yIG9wdC9pbnRlbC8iJHtJTlRFTF9E UE59IiovdW5pbnN0YWxsIHx8IGRpZQoJCWVlbmQKCWZpCgoJIyBoYW5kbGUgZG9jdW1lbnRh dGlvbgoJaWYgcGF0aF9leGlzdHMgIm9wdC9pbnRlbC9kb2N1bWVudGF0aW9uXyR7X0lOVEVM X1NEUF9ZRUFSfSI7IHRoZW4KCQlpZiBwYXRoX2V4aXN0cyAib3B0L2ludGVsL2RvY3VtZW50 YXRpb25fJHtfSU5URUxfU0RQX1lFQVJ9L2VuL21hbi9jb21tb24vbWFuMSI7IHRoZW4KCQkJ ZG9tYW4gb3B0L2ludGVsL2RvY3VtZW50YXRpb25fIiR7X0lOVEVMX1NEUF9ZRUFSfSIvZW4v bWFuL2NvbW1vbi9tYW4xLyoKCQkJcm0gLXIgb3B0L2ludGVsL2RvY3VtZW50YXRpb25fIiR7 X0lOVEVMX1NEUF9ZRUFSfSIvZW4vbWFuIHx8IGRpZQoJCWZpCgoJCWlmIHVzZSBkb2M7IHRo ZW4KCQkJaWYgISB1c2UgbGluZ3Vhc19qYTsgdGhlbgoJCQkJcm0gLXIgb3B0L2ludGVsL2Rv Y3VtZW50YXRpb25fIiR7X0lOVEVMX1NEUF9ZRUFSfSIvamEgfHwgZGllCgkJCWZpCgkJCWRv ZG9jIC1yIG9wdC9pbnRlbC9kb2N1bWVudGF0aW9uXyIke19JTlRFTF9TRFBfWUVBUn0iLyoK CQlmaQoKCQllYmVnaW4gIkNsZWFuaW5nIG91dCBkb2N1bWVudGF0aW9uIgoJCXJtIC1yICJv cHQvaW50ZWwvZG9jdW1lbnRhdGlvbl8ke19JTlRFTF9TRFBfWUVBUn0iIHx8IGRpZQoJCXJt ICIke0lOVEVMX1NEUF9ESVJ9Ii9saW51eC97ZG9jdW1lbnRhdGlvbixtYW59IHx8IGRpZQoJ CWVlbmQKCWZpCgoJIyBoYW5kbGUgZXhhbXBsZXMKCWlmIHBhdGhfZXhpc3RzICJvcHQvaW50 ZWwvc2FtcGxlc18ke19JTlRFTF9TRFBfWUVBUn0iOyB0aGVuCgkJaWYgdXNlIGV4YW1wbGVz OyB0aGVuCgkJCWlmICEgdXNlIGxpbmd1YXNfamE7IHRoZW4KCQkJCXJtIC1yIG9wdC9pbnRl bC9zYW1wbGVzXyIke19JTlRFTF9TRFBfWUVBUn0iL2phIHx8IGRpZQoJCQlmaQoJCQlkb2Rv YyAtciBvcHQvaW50ZWwvc2FtcGxlc18iJHtfSU5URUxfU0RQX1lFQVJ9Ii8qCgkJZmkKCgkJ ZWJlZ2luICJDbGVhbmluZyBvdXQgZXhhbXBsZXMiCgkJcm0gLXIgIm9wdC9pbnRlbC9zYW1w bGVzXyR7X0lOVEVMX1NEUF9ZRUFSfSIgfHwgZGllCgkJZWVuZAoJZmkKCgkjIHJlbW92ZSBl Y2xpcHNlCglybSAtcmYgb3B0L2ludGVsL2lkZV9zdXBwb3J0XyogfHwgZGllCgoJZWJlZ2lu ICJUYWdnaW5nICR7UE59IgoJZmluZCBvcHQgLW5hbWUgXCpzaCAtdHlwZSBmIC1leGVjIHNl ZCAtaSBcCgkJLWUgInM6PC4qRElSPjoke0lOVEVMX1NEUF9FRElSfS9saW51eDpnIiBcCgkJ J3t9JyArIHx8IGRpZQoJZWVuZAoKCVtbIC1kICIke0VEfSIgXV0gfHwgZG9kaXIgLwoJbXYg b3B0ICIke0VEfSIvIHx8IGRpZSAibW92aW5nIGZpbGVzIGZhaWxlZCIKCglkb2RpciAiJHtJ TlRFTF9TRFBfRElSfSIvbGljZW5zZXMgL29wdC9pbnRlbC9pc20vcm0KCWtlZXBkaXIgIiR7 SU5URUxfU0RQX0RJUn0iL2xpY2Vuc2VzIC9vcHQvaW50ZWwvaXNtL3JtCn0KCiMgQEZVTkNU SU9OOiBpbnRlbC1zZHAtcjFfcGtnX3Bvc3RpbnN0CiMgQERFU0NSSVBUSU9OOgojIFRlc3Qg Zm9yIGFsbCB0aGluZ3Mgd29ya2luZwppbnRlbC1zZHAtcjFfcGtnX3Bvc3RpbnN0KCkgewoJ ZGVidWctcHJpbnQtZnVuY3Rpb24gJHtGVU5DTkFNRX0gIiR7QH0iCgoJX2lzZHBfcnVuLXRl c3QKCglpZiBbWyAke1BOfSA9IGljYyBdXSAmJiBoYXNfdmVyc2lvbiAiPj1kZXYtdXRpbC9j Y2FjaGUtMy4xLjktcjIiIDsgdGhlbgoJCSNhZGQgY2NhY2hlIGxpbmtzIGFzIGljYyBtaWdo dCBnZXQgaW5zdGFsbGVkIGFmdGVyIGNjYWNoZQoJCSIke0VST09UfSIvdXNyL2Jpbi9jY2Fj aGUtY29uZmlnIC0taW5zdGFsbC1saW5rcwoJZmkKCgllbG9nICJCZWdpbm5pbmcgd2l0aCB0 aGUgMjAxNiBzdWl0ZSBvZiBJbnRlbCB0b29scywgR2VudG9vIGhhcyByZW1vdmVkIgoJZWxv ZyAic3VwcG9ydCBmb3IgdGhlIGVjbGlwc2UgcGx1Z2luLiBJZiB5b3UgcmVxdWlyZSB0aGUg SURFIHN1cHBvcnQsIgoJZWxvZyAieW91IHdpbGwgaGF2ZSB0byBpbnN0YWxsIHRoZSBzdWl0 ZSBvbiB5b3VyIG93biwgb3V0c2lkZSBwb3J0YWdlLiIKfQoKIyBARlVOQ1RJT046IGludGVs LXNkcC1yMV9wa2dfcG9zdHJtCiMgQERFU0NSSVBUSU9OOgojIFNhbml0aXplIGNhY2hlIGxp bmtzCmludGVsLXNkcC1yMV9wa2dfcG9zdHJtKCkgewoJZGVidWctcHJpbnQtZnVuY3Rpb24g JHtGVU5DTkFNRX0gIiR7QH0iCgoJaWYgW1sgJHtQTn0gPSBpY2MgXV0gJiYgaGFzX3ZlcnNp b24gIj49ZGV2LXV0aWwvY2NhY2hlLTMuMS45LXIyIiAmJiBbWyAteiAke1JFUExBQ0VEX0JZ X1ZFUlNJT059IF1dOyB0aGVuCgkJIyAtLXJlbW92ZS1saW5rcyB3b3VsZCByZW1vdmUgYWxs IGxpbmtzLCAtLWluc3RhbGwtbGlua3MgdXBkYXRlcyB0aGVtCgkJIiR7RVJPT1R9Ii91c3Iv YmluL2NjYWNoZS1jb25maWcgLS1pbnN0YWxsLWxpbmtzCglmaQp9CgpFWFBPUlRfRlVOQ1RJ T05TIHBrZ19zZXR1cCBzcmNfdW5wYWNrIHNyY19pbnN0YWxsIHBrZ19wb3N0aW5zdCBwa2df cG9zdHJtIHBrZ19wcmV0ZW5kCgpfSU5URUxfU0RQX1IxX0VDTEFTU189MQpmaQo= --------------060900070608050706000406 Content-Type: text/plain; charset=UTF-8; x-mac-type="0"; x-mac-creator="0"; name="intel-sdp.eclass.diff" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="intel-sdp.eclass.diff" LS0tIGVjbGFzcy9pbnRlbC1zZHAuZWNsYXNzCTIwMTYtMDItMTUgMDk6MTU6MDMuMDAwMDAw MDAwICswMTAwCisrKyAvVm9sdW1lcy9pRXh0cmEvanVzdGluL3NyYy9nZW50b28vc2NpZW5j ZS9lY2xhc3MvaW50ZWwtc2RwLXIxLmVjbGFzcwkyMDE2LTAyLTE1IDA5OjEzOjU5LjAwMDAw MDAwMCArMDEwMApAQCAtMiwxNiArMiwxNyBAQAogIyBEaXN0cmlidXRlZCB1bmRlciB0aGUg dGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIHYyCiAjICRJZCQKIAot IyBARUNMQVNTOiBpbnRlbC1zZHAuZWNsYXNzCisjIEBFQ0xBU1M6IGludGVsLXNkcC1yMS5l Y2xhc3MKICMgQE1BSU5UQUlORVI6CiAjIEp1c3RpbiBMZWNoZXIgPGpsZWNAZ2VudG9vLm9y Zz4KKyMgRGF2aWQgU2VpZmVydCA8c29hcEBnZW50b28ub3JnPgogIyBTY2kgVGVhbSA8c2Np QGdlbnRvby5vcmc+CiAjIEBCTFVSQjogSGFuZGxpbmcgb2YgSW50ZWwncyBTb2Z0d2FyZSBE ZXZlbG9wbWVudCBQcm9kdWN0cyBwYWNrYWdlIG1hbmFnZW1lbnQKIAotaWYgW1sgISAke19J TlRFTF9TRFBfRUNMQVNTX30gXV07IHRoZW4KK2lmIFtbICEgJHtfSU5URUxfU0RQX1IxX0VD TEFTU199IF1dOyB0aGVuCiAKIGNhc2UgIiR7RUFQSTotMH0iIGluCi0JNSkgOzsKKwk2KSA7 OwogCSopIGRpZSAiRUFQST0ke0VBUEl9IGlzIG5vdCBzdXBwb3J0ZWQiIDs7CiBlc2FjCiAK QEAgLTIyLDcgKzIzLDcgQEAKICMgVG8gZmluZCBvdXQgaXRzIHZhbHVlLCBzZWUgdGhlIGxp bmtzIHRvIGRvd25sb2FkIGluCiAjIGh0dHBzOi8vcmVnaXN0cmF0aW9uY2VudGVyLmludGVs LmNvbS9SZWdDZW50ZXIvTXlQcm9kdWN0cy5hc3B4CiAjCi0jIGUuZy4gMjUwNAorIyBlLmcu IDgzNjUKICMKICMgTXVzdCBiZSBkZWZpbmVkIGJlZm9yZSBpbmhlcml0aW5nIHRoZSBlY2xh c3MKIApAQCAtNDQsNyArNDUsNyBAQAogIyBUbyBmaW5kIG91dCBpdHMgdmFsdWUsIHNlZSB0 aGUgbGlua3MgdG8gZG93bmxvYWQgaW4KICMgaHR0cHM6Ly9yZWdpc3RyYXRpb25jZW50ZXIu aW50ZWwuY29tL1JlZ0NlbnRlci9NeVByb2R1Y3RzLmFzcHgKICMKLSMgZS5nLiAyMDExX3Nw MV91cGRhdGUyCisjIGUuZy4gMjAxNl91cGRhdGUxCiAjCiAjIE11c3QgYmUgZGVmaW5lZCBi ZWZvcmUgaW5oZXJpdGluZyB0aGUgZWNsYXNzCiAKQEAgLTgwLDU2ICs4MSw3NCBAQAogIyBA REVTQ1JJUFRJT046CiAjIDMyYml0IGFyY2ggaW4gcnBtIG5hbWVzCiAjCi0jIGUuZy4gaTQ4 NAorIyBlLmcuIGk0ODYKIDogJHtJTlRFTF9YODY6PWk0ODZ9CiAKICMgQEVDTEFTUy1WQVJJ QUJMRTogSU5URUxfQklOX1JQTVMKICMgQERFU0NSSVBUSU9OOgogIyBGdW5jdGlvbmFsIG5h bWUgb2YgcnBtIHdpdGhvdXQgYW55IHZlcnNpb24vYXJjaCB0YWcKKyMgSGFzIHRvIGJlIGEg YmFzaCBhcnJheQogIwotIyBlLmcuIGNvbXBpbGVycHJvZgorIyBlLmcuICgiaWNjLWwtYWxs LWRldmVsIikKICMKLSMgaWYgdGhlIHJwbSBpcyBsb2NhdGVkIGluIGEgZGlyZWN0b3J5IGRp ZmZlcmVudCB0byBJTlRFTF9SUE1TX0RJUiB5b3UgY2FuCisjIGlmIHRoZSBycG0gaXMgbG9j YXRlZCBpbiBhIGRpcmVjdG9yeSBvdGhlciB0aGFuIElOVEVMX1JQTVNfRElSIHlvdSBjYW4K ICMgc3BlY2lmeSB0aGUgZnVsbCBwYXRoCiAjCiAjIGUuZy4gQ0xJX2luc3RhbGwvcnBtL2lu dGVsLXZ0dW5lLWFtcGxpZmllci14ZS1jbGkKKzogJHtJTlRFTF9CSU5fUlBNUzo9KCl9CisK KyMgQEVDTEFTUy1WQVJJQUJMRTogSU5URUxfQU1ENjRfUlBNUworIyBAREVTQ1JJUFRJT046 CisjIEFNRDY0IHNpbmdsZSBhcmNoIHJwbXMuIFNhbWUgc3ludGF4IGFzIElOVEVMX0JJTl9S UE1TCisjIEhhcyB0byBiZSBhIGJhc2ggYXJyYXkKKzogJHtJTlRFTF9BTUQ2NF9SUE1TOj0o KX0KKworIyBARUNMQVNTLVZBUklBQkxFOiBJTlRFTF9YODZfUlBNUworIyBAREVTQ1JJUFRJ T046CisjIFg4NiBzaW5nbGUgYXJjaCBycG1zLiBTYW1lIHN5bnRheCBhcyBJTlRFTF9CSU5f UlBNUworIyBIYXMgdG8gYmUgYSBiYXNoIGFycmF5Cis6ICR7SU5URUxfWDg2X1JQTVM6PSgp fQogCiAjIEBFQ0xBU1MtVkFSSUFCTEU6IElOVEVMX0RBVF9SUE1TCiAjIEBERVNDUklQVElP TjoKICMgRnVuY3Rpb25hbCBuYW1lIG9mIHJwbSBvZiBjb21tb24gZGF0YSB3aGljaCBhcmUg YXJjaCBmcmVlCiAjIHdpdGhvdXQgYW55IHZlcnNpb24gdGFnCisjIEhhcyB0byBiZSBhIGJh c2ggYXJyYXkKICMKLSMgZS5nLiBvcGVubXAKKyMgZS5nLiAoIm9wZW5tcC1sLWFsbC1kZXZl bCIpCiAjCiAjIGlmIHRoZSBycG0gaXMgbG9jYXRlZCBpbiBhIGRpcmVjdG9yeSBkaWZmZXJl bnQgdG8gSU5URUxfUlBNU19ESVIgeW91IGNhbgogIyBzcGVjaWZ5IHRoZSBmdWxsIHBhdGgK ICMKICMgZS5nLiBDTElfaW5zdGFsbC9ycG0vaW50ZWwtdnR1bmUtYW1wbGlmaWVyLXhlLWNs aS1jb21tb24KLTogJHtJTlRFTF9EQVRfUlBNUzo9IiJ9Cis6ICR7SU5URUxfREFUX1JQTVM6 PSgpfQogCiAjIEBFQ0xBU1MtVkFSSUFCTEU6IElOVEVMX1NJTkdMRV9BUkNICiAjIEBERVND UklQVElPTjoKICMgVW5zZXQsIGlmIG9ubHkgdGhlIG11bHRpbGliIHBhY2thZ2Ugd2lsbCBi ZSBwcm92aWRlZCBieSBpbnRlbAogOiAke0lOVEVMX1NJTkdMRV9BUkNIOj10cnVlfQogCi0j IEBFQ0xBU1MtVkFSSUFCTEU6IElOVEVMX1NEUF9EQgotIyBAREVTQ1JJUFRJT046Ci0jIEZ1 bGwgcGF0aCB0byBpbnRlbCByZWdpc3RyeSBkYgotSU5URUxfU0RQX0RCPSIke0VST09UJS99 Ii9vcHQvaW50ZWwvaW50ZWwtc2RwLXByb2R1Y3RzLmRiCitNVUxUSUxJQl9DT01QQVQ9KCBh YmlfeDg2X3szMiw2NH0gKQogCi1pbmhlcml0IGNoZWNrLXJlcXMgZXV0aWxzIG11bHRpbGli IHZlcnNpb25hdG9yCitpbmhlcml0IGNoZWNrLXJlcXMgZXV0aWxzIG11bHRpbGliLWJ1aWxk IHZlcnNpb25hdG9yCiAKIF9JTlRFTF9QVjE9JChnZXRfdmVyc2lvbl9jb21wb25lbnRfcmFu Z2UgMSkKIF9JTlRFTF9QVjI9JChnZXRfdmVyc2lvbl9jb21wb25lbnRfcmFuZ2UgMikKIF9J TlRFTF9QVjM9JChnZXRfdmVyc2lvbl9jb21wb25lbnRfcmFuZ2UgMykKIF9JTlRFTF9QVjQ9 JChnZXRfdmVyc2lvbl9jb21wb25lbnRfcmFuZ2UgNCkKLV9JTlRFTF9VUkk9Imh0dHA6Ly9y ZWdpc3RyYXRpb25jZW50ZXItZG93bmxvYWQuaW50ZWwuY29tL2lyY19uYXMvJHtJTlRFTF9E SUR9LyR7SU5URUxfRFBOfSIKK19JTlRFTF9QVj0iIgorW1sgLW4gJHtfSU5URUxfUFY0fSBd XSAmJiBfSU5URUxfUFYrPSIke19JTlRFTF9QVjR9LSIKK1tbIC1uICR7X0lOVEVMX1BWMX0g XV0gJiYgX0lOVEVMX1BWKz0iJHtfSU5URUxfUFYxfSIKK1tbIC1uICR7X0lOVEVMX1BWMn0g XV0gJiYgX0lOVEVMX1BWKz0iLiR7X0lOVEVMX1BWMn0iCitbWyAtbiAke19JTlRFTF9QVjN9 IF1dICYmIF9JTlRFTF9QVis9Ii4ke19JTlRFTF9QVjN9IgorW1sgLW4gJHtfSU5URUxfUFY0 fSBdXSAmJiBfSU5URUxfUFYrPSItJHtfSU5URUxfUFY0fSIKKworX0lOVEVMX1VSST0iaHR0 cDovL3JlZ2lzdHJhdGlvbmNlbnRlci1kb3dubG9hZC5pbnRlbC5jb20vYWtkbG0vaXJjX25h cy8ke0lOVEVMX0RJRH0vJHtJTlRFTF9EUE59IgogCiBpZiBbICR7SU5URUxfU0lOR0xFX0FS Q0h9ID09IHRydWUgXTsgdGhlbgogCVNSQ19VUkk9IgotCQlhbWQ2ND8gKCBtdWx0aWxpYj8g KCAke19JTlRFTF9VUkl9XyR7SU5URUxfRFBWfS4ke0lOVEVMX1RBUlh9ICkgKQotCQlhbWQ2 ND8gKCAhbXVsdGlsaWI/ICggJHtfSU5URUxfVVJJfV8ke0lOVEVMX0RQVn1faW50ZWw2NC4k e0lOVEVMX1RBUlh9ICkgKQotCQl4ODY/CSggJHtfSU5URUxfVVJJfV8ke0lOVEVMX0RQVn1f aWEzMi4ke0lOVEVMX1RBUlh9ICkiCisJCWFiaV94ODZfMzI/ICggJHtfSU5URUxfVVJJfV8k e0lOVEVMX0RQVn1faWEzMi4ke0lOVEVMX1RBUlh9ICkKKwkJYWJpX3g4Nl82ND8gKCAke19J TlRFTF9VUkl9XyR7SU5URUxfRFBWfV9pbnRlbDY0LiR7SU5URUxfVEFSWH0gKSIKIGVsc2UK IAlTUkNfVVJJPSIke19JTlRFTF9VUkl9XyR7SU5URUxfRFBWfS4ke0lOVEVMX1RBUlh9Igog ZmkKQEAgLTEzOCwyMCArMTU3LDIyIEBACiAjIEZ1dHVyZSB3b3JrLCAjMzk0NDExCiAjU0xP VD0iJHtfSU5URUxfUFYxfS4ke19JTlRFTF9QVjJ9IgogU0xPVD0iMCIKLUlVU0U9ImV4YW1w bGVzIG11bHRpbGliIgogCiBSRVNUUklDVD0ibWlycm9yIgogCiBSREVQRU5EPSIiCiBERVBF TkQ9ImFwcC1hcmNoL3JwbTJ0YXJneiIKIAotX0lOVEVMX1NEUF9ZRUFSPSR7SU5URUxfRFBW JV91cGRhdGUqfQotX0lOVEVMX1NEUF9ZRUFSPSR7SU5URUxfRFBWJV9zcCp9CitfSU5URUxf U0RQX1lFQVI9JHtJTlRFTF9EUFZ9CitfSU5URUxfU0RQX1lFQVI9JHtfSU5URUxfU0RQX1lF QVIlX3NwKn0KK19JTlRFTF9TRFBfWUVBUj0ke19JTlRFTF9TRFBfWUVBUiVfdXBkYXRlKn0K IAogIyBARUNMQVNTLVZBUklBQkxFOiBJTlRFTF9TRFBfRElSCiAjIEBERVNDUklQVElPTjoK ICMgRnVsbCByb290bGVzcyBwYXRoIHRvIGluc3RhbGxhdGlvbiBkaXIKLUlOVEVMX1NEUF9E SVI9Im9wdC9pbnRlbC8ke0lOVEVMX1NVQkRJUn0tJHtfSU5URUxfU0RQX1lFQVI6LSR7X0lO VEVMX1BWMX19LiR7X0lOVEVMX1BWM30uJHtfSU5URUxfUFY0fSIKK0lOVEVMX1NEUF9ESVI9 Im9wdC9pbnRlbC8ke0lOVEVMX1NVQkRJUn1fJHtfSU5URUxfU0RQX1lFQVI6LSR7X0lOVEVM X1BWMX19IgorW1sgLW4gJHtfSU5URUxfUFYzfSBdXSAmJiBJTlRFTF9TRFBfRElSKz0iLiR7 X0lOVEVMX1BWM30iCitbWyAtbiAke19JTlRFTF9QVjR9IF1dICYmIElOVEVMX1NEUF9ESVIr PSIuJHtfSU5URUxfUFY0fSIKIAogIyBARUNMQVNTLVZBUklBQkxFOiBJTlRFTF9TRFBfRURJ UgogIyBAREVTQ1JJUFRJT046CkBAIC0xNjksMzQgKzE5MCw2IEBACiAjCiAjIGUuZy4gYW1k NjQtbXVsdGlsaWIgLT4gSU5URUxfQVJDSD0iaW50ZWw2NCBpYTMyIgogCi0jIEBGVU5DVElP TjogX2lzZHBfbGlua19lY2xpcHNlX3BsdWdpbnMKLSMgQElOVEVSTkFMCi0jIEBERVNDUklQ VElPTjoKLSMgQ3JlYXRpbmcgbmVjZXNzYXJ5IGxpbmtzIHRvIHVzZSBpbnRlbCBjb21waWxl ciB3aXRoIGVjbGlwc2UKLV9pc2RwX2xpbmtfZWNsaXBzZV9wbHVnaW5zKCkgewotCWRlYnVn LXByaW50LWZ1bmN0aW9uICR7RlVOQ05BTUV9ICIke0B9IgotCi0JbG9jYWwgYyBmCi0JcHVz aGQgJHtJTlRFTF9TRFBfRElSfS9lY2xpcHNlX3N1cHBvcnQgPiAvZGV2L251bGwgfHwgZGll Ci0JCWZvciBjIGluIGNkdCo7IGRvCi0JCQlsb2NhbCBjdj0ke2MjY2R0fSBldj0zLiQoKCAk e2N2OjA6MX0gLSAxKSkKLQkJCWlmIGhhc192ZXJzaW9uICJkZXYtdXRpbC9lY2xpcHNlLXNk azoke2V2fSI7IHRoZW4KLQkJCQllaW5mbyAiTGlua2luZyBlY2xpcHNlICh2JHtldn0pIHBs dWdpbiBjZHQgKHYke2N2fSkiCi0JCQkJZm9yIGYgaW4gY2R0JHtjdn0vZWNsaXBzZS9mZWF0 dXJlcy8qOyBkbwotCQkJCQlkb2RpciAvdXNyLyQoZ2V0X2xpYmRpcikvZWNsaXBzZS0ke2V2 fS9mZWF0dXJlcwotCQkJCQlkb3N5bSAiJHtJTlRFTF9TRFBfRURJUn0iL2VjbGlwc2Vfc3Vw cG9ydC8ke2Z9IFwKLQkJCQkJCS91c3IvJChnZXRfbGliZGlyKS9lY2xpcHNlLSR7ZXZ9L2Zl YXR1cmVzLyB8fCBkaWUKLQkJCQlkb25lCi0JCQkJZm9yIGYgaW4gY2R0JHtjdn0vZWNsaXBz ZS9wbHVnaW5zLyo7IGRvCi0JCQkJCWRvZGlyIC91c3IvJChnZXRfbGliZGlyKS9lY2xpcHNl LSR7ZXZ9L3BsdWdpbnMKLQkJCQkJZG9zeW0gIiR7SU5URUxfU0RQX0VESVJ9Ii9lY2xpcHNl X3N1cHBvcnQvJHtmfSBcCi0JCQkJCQkvdXNyLyQoZ2V0X2xpYmRpcikvZWNsaXBzZS0ke2V2 fS9wbHVnaW5zLyB8fCBkaWUKLQkJCQlkb25lCi0JCQlmaQotCQlkb25lCi0JcG9wZCA+IC9k ZXYvbnVsbCB8fCBkaWUKLX0KLQogIyBARlVOQ1RJT046IF9pc2RwX2JpZy13YXJuaW5nCiAj IEBVU0FHRTogW3ByZS1jaGVjayB8IHRlc3QtZmFpbGVkXQogIyBASU5URVJOQUwKQEAgLTIx Miw3ICsyMDUsNyBAQAogCQkJOzsKIAogCQl0ZXN0LWZhaWxlZCApCi0JCQllY2hvCisJCQll Y2hvICIiCiAJCQlld2FybiAiRnVuY3Rpb24gdGVzdCBmYWlsZWQuIE1vc3QgcHJvYmFibHkg ZHVlIHRvIGFuIGludmFsaWQgbGljZW5zZS4iCiAJCQlld2FybiAiVGhpcyBtZWFucyB5b3Ug YWxyZWFkeSB0cmllZCB0byBieXBhc3MgdGhlIGxpY2Vuc2UgY2hlY2sgb25jZS4iCiAJCQk7 OwpAQCAtMjIyLDcgKzIxNSwxMiBAQAogCWV3YXJuICJNYWtlIHN1cmUgeW91IGhhdmUgcmVj ZWl2ZWQgYW4gSW50ZWwgbGljZW5zZS4iCiAJZXdhcm4gIlRvIHJlY2VpdmUgYSBub24tY29t bWVyY2lhbCBsaWNlbnNlLCB5b3UgbmVlZCB0byByZWdpc3RlciBhdDoiCiAJZXdhcm4gImh0 dHBzOi8vc29mdHdhcmUuaW50ZWwuY29tL2VuLXVzL3F1YWxpZnktZm9yLWZyZWUtc29mdHdh cmUiCi0JZXdhcm4gIkluc3RhbGwgdGhlIGxpY2Vuc2UgZmlsZSBpbnRvICR7SU5URUxfU0RQ X0VESVJ9L2xpY2Vuc2VzLyIKKwlld2FybiAiSW5zdGFsbCB0aGUgbGljZW5zZSBmaWxlIGlu dG8gJHtFUFJFRklYfS9vcHQvaW50ZWwvbGljZW5zZXMiCisJZXdhcm4gIiIKKwlld2FybiAi QmVnaW5uaW5nIHdpdGggdGhlIDIwMTYgc3VpdGUgb2YgdG9vbHMsIGxpY2Vuc2UgZmlsZXMg YXJlIGtleWVkIgorCWV3YXJuICJ0byB0aGUgTUFDIGFkZHJlc3Mgb2YgdGhlIGV0aDAgaW50 ZXJmYWNlLiBJbiBvcmRlciB0byByZXRyaWV2ZSIKKwlld2FybiAiYSBwZXJzb25hbGl6ZWQg bGljZW5zZSBmaWxlLCBmb2xsb3cgdGhlIGluc3RydWN0aW9ucyBhdCIKKwlld2FybiAiaHR0 cHM6Ly9zb2Z0d2FyZS5pbnRlbC5jb20vZW4tdXMvYXJ0aWNsZXMvaG93LWRvLWktZ2V0LW15 LWxpY2Vuc2UtZmlsZS1mb3ItaW50ZWwtcGFyYWxsZWwtc3R1ZGlvLXhlLTIwMTYiCiAKIAlj YXNlICR7MX0gaW4KIAkJcHJlLWNoZWNrICkKQEAgLTI2MCwxMCArMjU4LDEwIEBACiAJZm9y IGFyY2ggaW4gJHtJTlRFTF9BUkNIfTsgZG8KIAkJY2FzZSAke0VCVUlMRF9QSEFTRX0gaW4K IAkJCWluc3RhbGwgKQotCQkJCWNvbXBfZnVsbD0iJHtFRH0vJHtJTlRFTF9TRFBfRElSfS9i aW4vJHthcmNofS8ke2NvbXB9IgorCQkJCWNvbXBfZnVsbD0iJHtFRH0vJHtJTlRFTF9TRFBf RElSfS9saW51eC9iaW4vJHthcmNofS8ke2NvbXB9IgogCQkJCTs7CiAJCQlwb3N0aW5zdCAp Ci0JCQkJY29tcF9mdWxsPSIke0lOVEVMX1NEUF9FRElSfS9iaW4vJHthcmNofS8ke2NvbXB9 IgorCQkJCWNvbXBfZnVsbD0iJHtJTlRFTF9TRFBfRURJUn0vbGludXgvYmluLyR7YXJjaH0v JHtjb21wfSIKIAkJCQk7OwogCQkJKiApCiAJCQkJZXdhcm4gIkNvbXBpbGUgdGVzdCBub3Qg c3VwcG9ydGVkIGluICR7RUJVSUxEX1BIQVNFfSIKQEAgLTI3MSw5ICsyNjksOSBAQAogCQkJ CTs7CiAJCWVzYWMKIAotCQlkZWJ1Zy1wcmludCAiTERfTElCUkFSWV9QQVRIPVwiJHtJTlRF TF9TRFBfRURJUn0vYmluLyR7YXJjaH0vXCIgXCIke2NvbXBfZnVsbH1cIiAtViIKKwkJZGVi dWctcHJpbnQgIkxEX0xJQlJBUllfUEFUSD1cIiR7SU5URUxfU0RQX0VESVJ9L2xpbnV4L2Jp bi8ke2FyY2h9L1wiIFwiJHtjb21wX2Z1bGx9XCIgLVYiCiAKLQkJTERfTElCUkFSWV9QQVRI PSIke0lOVEVMX1NEUF9FRElSfS9iaW4vJHthcmNofS8iICIke2NvbXBfZnVsbH0iIC1WICY+ L2Rldi9udWxsCisJCUxEX0xJQlJBUllfUEFUSD0iJHtJTlRFTF9TRFBfRURJUn0vbGludXgv YmluLyR7YXJjaH0vIiAiJHtjb21wX2Z1bGx9IiAtViAmPi9kZXYvbnVsbAogCQlbWyAkPyAt bmUgMCBdXSAmJiB3YXJuPXllcwogCWRvbmUKIAlbWyAiJHt3YXJufSIgPT0gInllcyIgXV0g JiYgX2lzZHBfYmlnLXdhcm5pbmcgdGVzdC1mYWlsZWQKQEAgLTI5NywxMyArMjk1LDM0IEBA CiAJZmkKIH0KIAotIyBARlVOQ1RJT046IGludGVsLXNkcF9wa2dfcHJldGVuZAorIyBARlVO Q1RJT046IGNvbnZlcnQyaW50ZWxfYXJjaAorIyBAVVNBR0U6IDxhcmNoPgorIyBAREVTQ1JJ UFRJT046CisjIENvbnZlcnQgYmV0d2VlbiBwb3J0YWdlIGFyY2ggKGUuZy4gYW1kNjQsIHg4 NikgYW5kIGludGVsIGFyY2gKKyMgbm9tZW5jbGF0dXJlIChlLmcuIGludGVsNjQsIGlhMzIp Citjb252ZXJ0MmludGVsX2FyY2goKSB7CisJZGVidWctcHJpbnQtZnVuY3Rpb24gJHtGVU5D TkFNRX0gIiR7QH0iCisKKwljYXNlICQxIGluCisJCWFtZDY0fGFiaV94ODZfNjR8KmFtZDY0 KikKKwkJCWVjaG8gImludGVsNjQiCisJCQk7OworCQl4ODZ8YWJpX3g4Nl8zMnwqeDg2KikK KwkJCWVjaG8gImlhMzIiCisJCQk7OworCQkqKQorCQkJZGllICJBYmkgXCckMVwnIGlzIHVu c3VwcG9ydGVkIgorCQkJOzsKKwllc2FjCit9CisKKyMgQEZVTkNUSU9OOiBpbnRlbC1zZHAt cjFfcGtnX3ByZXRlbmQKICMgQERFU0NSSVBUSU9OOgogIyBAQ09ERQogIyAqIENoZWNrIHRo YXQgdGhlIHVzZXIgaGFzIGEgKHZhbGlkKSBsaWNlbnNlIGZpbGUgYmVmb3JlIGdvaW5nIG9u LgogIyAqIENoZWNrIGZvciBzcGFjZSByZXF1aXJlbWVudHMgYmVpbmcgZnVsbGZpbGxlZAog IyBAQ09ERQotaW50ZWwtc2RwX3BrZ19wcmV0ZW5kKCkgeworaW50ZWwtc2RwLXIxX3BrZ19w cmV0ZW5kKCkgewogCWRlYnVnLXByaW50LWZ1bmN0aW9uICR7RlVOQ05BTUV9ICIke0B9Igog CiAJbG9jYWwgd2Fybj0xIGRpciBkaXJzIHJldCBhcmNoIGEgcApAQCAtMzE5LDkgKzMzOCw5 IEBACiAJCWZpCiAKIAkJZGlycz0oCisJCQkiJHtFUFJFRklYfS9vcHQvaW50ZWwvbGljZW5z ZXMiCiAJCQkiJHtJTlRFTF9TRFBfRURJUn0vbGljZW5zZXMiCiAJCQkiJHtJTlRFTF9TRFBf RURJUn0vTGljZW5zZXMiCi0JCQkiJHtFUFJFRklYfS9vcHQvaW50ZWwvbGljZW5zZXMiCiAJ CQkpCiAJCWZvciBkaXIgaW4gIiR7ZGlyc1tAXX0iIDsgZG8KIAkJCWViZWdpbiAiQ2hlY2tp bmcgZm9yIGEgbGljZW5zZSBpbjogJHtkaXJ9IgpAQCAtMzM4LDYzICszNTcsMTA4IEBACiAJ CQlkaWUgIkNvdWxkIG5vdCBmaW5kIGxpY2Vuc2UgZmlsZSIKIAkJZmkKIAllbHNlCi0JCWVx YXdhcm4gIlRoZSBlYnVpbGQgZG9lc24ndCBjaGVjayBmb3IgcHJlc2VudHMgb2YgYSBwcm9w ZXIgaW50ZWwgbGljZW5zZSEiCi0JCWVxYXdhcm4gIlRoaXMgc2hvdWxkbid0IGJlIGRvbmUg dW5sZXNzIHRoZXJlIGlzIGEgc2VyaW91cyByZWFzb24uIgorCQllcWF3YXJuICJUaGUgZWJ1 aWxkIGRvZXNuJ3QgY2hlY2sgZm9yIHByZXNlbmNlIG9mIGEgcHJvcGVyIGludGVsIGxpY2Vu c2UhIgorCQllcWF3YXJuICJUaGlzIHNob3VsZG4ndCBiZSBkb25lIHVubGVzcyB0aGVyZSBp cyBhIHZlcnkgZ29vZCByZWFzb24uIgogCWZpCiB9CiAKLSMgQEZVTkNUSU9OOiBpbnRlbC1z ZHBfcGtnX3NldHVwCisjIEBGVU5DVElPTjogaW50ZWwtc2RwLXIxX3BrZ19zZXR1cAogIyBA REVTQ1JJUFRJT046CiAjIFNldHRpbmcgdXAgYW5kIHNvcnRpbmcgc29tZSBpbnRlcm5hbCB2 YXJpYWJsZXMKLWludGVsLXNkcF9wa2dfc2V0dXAoKSB7CitpbnRlbC1zZHAtcjFfcGtnX3Nl dHVwKCkgewogCWRlYnVnLXByaW50LWZ1bmN0aW9uICR7RlVOQ05BTUV9ICIke0B9IgogCWxv Y2FsIGFyY2ggYSBwCiAKLQlpZiB1c2UgeDg2OyB0aGVuCi0JCWFyY2g9JHtJTlRFTF9YODZ9 Ci0JCUlOVEVMX0FSQ0g9ImlhMzIiCi0JZWxpZiB1c2UgYW1kNjQ7IHRoZW4KLQkJYXJjaD14 ODZfNjQKLQkJSU5URUxfQVJDSD0iaW50ZWw2NCIKLQkJaWYgaGFzX211bHRpbGliX3Byb2Zp bGU7IHRoZW4KLQkJCWFyY2g9Ing4Nl82NCAke0lOVEVMX1g4Nn0iCi0JCQlJTlRFTF9BUkNI PSJpbnRlbDY0IGlhMzIiCi0JCWZpCisJSU5URUxfQVJDSD0iIgorCisJaWYgdXNlIGFiaV94 ODZfNjQ7IHRoZW4KKwkJYXJjaCs9IiB4ODZfNjQiCisJCUlOVEVMX0FSQ0grPSIgaW50ZWw2 NCIKKwlmaQorCWlmIHVzZSBhYmlfeDg2XzMyOyB0aGVuCisJCWFyY2grPSIgJHtJTlRFTF9Y ODZ9IgorCQlJTlRFTF9BUkNIKz0iIGlhMzIiCiAJZmkKIAlJTlRFTF9SUE1TPSgpCiAJSU5U RUxfUlBNU19GVUxMPSgpCi0JaWYgW1sgJChkZWNsYXJlIC1wIElOVEVMX0JJTl9SUE1TKSA9 ICJkZWNsYXJlIC1hICIqIF1dIDsgdGhlbgotCQlfSU5URUxfQklOX1JQTVM9KCAke0lOVEVM X0JJTl9SUE1TW0BdfSApCi0JZWxzZQotCQlyZWFkIC1yIC1kICcnIC1hIF9JTlRFTF9CSU5f UlBNUyA8PDwiJHtJTlRFTF9CSU5fUlBNU30iCi0JZmkKLQlmb3IgcCBpbiAiJHtfSU5URUxf QklOX1JQTVNbQF19IjsgZG8KKworCWZvciBwIGluICIke0lOVEVMX0JJTl9SUE1TW0BdfSI7 IGRvCiAJCWZvciBhIGluICR7YXJjaH07IGRvCiAJCQlpZiBbICR7cH0gPT0gJChiYXNlbmFt ZSAke3B9KSBdOyB0aGVuCi0JCQkJSU5URUxfUlBNUys9KCBpbnRlbC0ke3B9LSR7X0lOVEVM X1BWNH0tJHtfSU5URUxfUFYxfS4ke19JTlRFTF9QVjJ9LSR7X0lOVEVMX1BWM30uJHthfS5y cG0gKQorCQkJCSMgY2hlY2sgZm9yIHZhcmlhYmxlcyBlbmRpbmcgaW4gIi5ycG0iCisJCQkJ IyB0aGVzZSBhcmUgZXhjbHVkZWQgZnJvbSB2ZXJzaW9uIGV4cGFuc2lvbiwgZHVlIHRvIElu dGVsJ3MKKwkJCQkjIGlkaW9zeW5jcmF0aWMgdmVyc2lvbmluZyBzY2hlbWUgYmVnaW5uaW5n IHdpdGggdGhlaXIgMjAxNgorCQkJCSMgc3VpdGUgb2YgdG9vbHMuCisJCQkJaWYgW1sgIiR7 cH0iID09ICoucnBtIF1dOyB0aGVuCisJCQkJCUlOVEVMX1JQTVMrPSggaW50ZWwtJHtwfSAp CisJCQkJZWxzZQorCQkJCQlJTlRFTF9SUE1TKz0oIGludGVsLSR7cH0tJHtfSU5URUxfUFZ9 LiR7YX0ucnBtICkKKwkJCQlmaQogCQkJZWxzZQotCQkJCUlOVEVMX1JQTVNfRlVMTCs9KCAk e3B9LSR7X0lOVEVMX1BWNH0tJHtfSU5URUxfUFYxfS4ke19JTlRFTF9QVjJ9LSR7X0lOVEVM X1BWM30uJHthfS5ycG0gKQorCQkJCWlmIFtbICIke3B9IiA9PSAqLnJwbSBdXTsgdGhlbgor CQkJCQlJTlRFTF9SUE1TX0ZVTEwrPSggJHtwfSApCisJCQkJZWxzZQorCQkJCQlJTlRFTF9S UE1TX0ZVTEwrPSggJHtwfS0ke19JTlRFTF9QVn0uJHthfS5ycG0gKQorCQkJCWZpCiAJCQlm aQogCQlkb25lCiAJZG9uZQotCWlmIFtbICQoZGVjbGFyZSAtcCBJTlRFTF9EQVRfUlBNUykg PSAiZGVjbGFyZSAtYSAiKiBdXSA7IHRoZW4KLQkJX0lOVEVMX0RBVF9SUE1TPSggJHtJTlRF TF9EQVRfUlBNU1tAXX0gKQotCWVsc2UKLQkJcmVhZCAtciAtZCAnJyAtYSBfSU5URUxfREFU X1JQTVMgPDw8IiR7SU5URUxfREFUX1JQTVN9IgorCisJaWYgdXNlIGFtZDY0OyB0aGVuCisJ CWZvciBwIGluICIke0lOVEVMX0FNRDY0X1JQTVNbQF19IjsgZG8KKwkJCWlmIFsgJHtwfSA9 PSAkKGJhc2VuYW1lICR7cH0pIF07IHRoZW4KKwkJCQlpZiBbWyAiJHtwfSIgPT0gKi5ycG0g XV07IHRoZW4KKwkJCQkJSU5URUxfUlBNUys9KCBpbnRlbC0ke3B9ICkKKwkJCQllbHNlCisJ CQkJCUlOVEVMX1JQTVMrPSggaW50ZWwtJHtwfS0ke19JTlRFTF9QVn0ueDg2XzY0LnJwbSAp CisJCQkJZmkKKwkJCWVsc2UKKwkJCQlpZiBbWyAiJHtwfSIgPT0gKi5ycG0gXV07IHRoZW4K KwkJCQkJSU5URUxfUlBNU19GVUxMKz0oICR7cH0gKQorCQkJCWVsc2UKKwkJCQkJSU5URUxf UlBNU19GVUxMKz0oICR7cH0tJHtfSU5URUxfUFZ9Lng4Nl82NC5ycG0gKQorCQkJCWZpCisJ CQlmaQorCQlkb25lCiAJZmkKLQlmb3IgcCBpbiAiJHtfSU5URUxfREFUX1JQTVNbQF19Ijsg ZG8KKworCWZvciBwIGluICIke0lOVEVMX1g4Nl9SUE1TW0BdfSI7IGRvCisJCWlmIFsgJHtw fSA9PSAkKGJhc2VuYW1lICR7cH0pIF07IHRoZW4KKwkJCWlmIFtbICIke3B9IiA9PSAqLnJw bSBdXTsgdGhlbgorCQkJCUlOVEVMX1JQTVMrPSggaW50ZWwtJHtwfSApCisJCQllbHNlCisJ CQkJSU5URUxfUlBNUys9KCBpbnRlbC0ke3B9LSR7X0lOVEVMX1BWfS4ke0lOVEVMX1g4Nn0u cnBtICkKKwkJCWZpCisJCWVsc2UKKwkJCWlmIFtbICIke3B9IiA9PSAqLnJwbSBdXTsgdGhl bgorCQkJCUlOVEVMX1JQTVNfRlVMTCs9KCAke3B9ICkKKwkJCWVsc2UKKwkJCQlJTlRFTF9S UE1TX0ZVTEwrPSggJHtwfS0ke19JTlRFTF9QVn0uJHtJTlRFTF9YODZ9LnJwbSApCisJCQlm aQorCQlmaQorCWRvbmUKKworCWZvciBwIGluICIke0lOVEVMX0RBVF9SUE1TW0BdfSI7IGRv CiAJCWlmIFsgJHtwfSA9PSAkKGJhc2VuYW1lICR7cH0pIF07IHRoZW4KLQkJCUlOVEVMX1JQ TVMrPSggaW50ZWwtJHtwfS0ke19JTlRFTF9QVjR9LSR7X0lOVEVMX1BWMX0uJHtfSU5URUxf UFYyfS0ke19JTlRFTF9QVjN9Lm5vYXJjaC5ycG0gKQorCQkJaWYgW1sgIiR7cH0iID09ICou cnBtIF1dOyB0aGVuCisJCQkJSU5URUxfUlBNUys9KCBpbnRlbC0ke3B9ICkKKwkJCWVsc2UK KwkJCQlJTlRFTF9SUE1TKz0oIGludGVsLSR7cH0tJHtfSU5URUxfUFZ9Lm5vYXJjaC5ycG0g KQorCQkJZmkKIAkJZWxzZQotCQkJSU5URUxfUlBNU19GVUxMKz0oICR7cH0tJHtfSU5URUxf UFY0fS0ke19JTlRFTF9QVjF9LiR7X0lOVEVMX1BWMn0tJHtfSU5URUxfUFYzfS5ub2FyY2gu cnBtICkKKwkJCWlmIFtbICIke3B9IiA9PSAqLnJwbSBdXTsgdGhlbgorCQkJCUlOVEVMX1JQ TVNfRlVMTCs9KCAke3B9ICkKKwkJCWVsc2UKKwkJCQlJTlRFTF9SUE1TX0ZVTEwrPSggJHtw fS0ke19JTlRFTF9QVn0ubm9hcmNoLnJwbSApCisJCQlmaQogCQlmaQogCWRvbmUKIH0KIAot IyBARlVOQ1RJT046IGludGVsLXNkcF9zcmNfdW5wYWNrCisjIEBGVU5DVElPTjogaW50ZWwt c2RwLXIxX3NyY191bnBhY2sKICMgQERFU0NSSVBUSU9OOgogIyBVbnBhY2tpbmcgbmVjZXNz YXJ5IHJwbXMgZnJvbSB0YXJiYWxsLCBleHRyYWN0IHRoZW0gYW5kIHJlYXJyYW5nZSB0aGUg b3V0cHV0LgotaW50ZWwtc2RwX3NyY191bnBhY2soKSB7CitpbnRlbC1zZHAtcjFfc3JjX3Vu cGFjaygpIHsKIAlsb2NhbCBsIHIgc3ViZGlyIHJiIHQgbGlzdD0oKSBkZWJ1Z19saXN0CiAK IAlmb3IgdCBpbiAke0F9OyBkbwpAQCAtNDE2LDcxICs0ODAsNjYgQEAKIAogCQlmb3IgciBp biAke2xpc3RbQF19OyBkbwogCQkJcmI9JChiYXNlbmFtZSAke3J9KQotCQkJbD0uJHtyYn1f JChkYXRlICsnJWQlbSV5XyVIJU0lUycpLmxvZwogCQkJZWluZm8gIlVucGFja2luZyAke3Ji fSIKIAkJCXJwbTJ0YXIgLU8gJHtyfSB8IHRhciB4dmYgLSB8IHNlZCAtZSBcCi0JCQkJInM6 XlwuOiR7RVJPT1QjL306ZyIgPiAke2x9OyBhc3NlcnQgInVucGFja2luZyAke3J9IGZhaWxl ZCIKLQkJCW12ICR7bH0gb3B0L2ludGVsLyB8fCBkaWUgImZhaWxlZCBtb3ZpbmcgZXh0cmFj dCBsb2cgZmlsZSIKKwkJCQkiczpeXC46JHtFUk9PVCMvfTpnIiA+IC9kZXYvbnVsbDsgYXNz ZXJ0ICJ1bnBhY2tpbmcgJHtyfSBmYWlsZWQiCiAJCWRvbmUKIAlkb25lCi0KLQltdiBvcHQv aW50ZWwvKiAke0lOVEVMX1NEUF9ESVJ9IHx8IGRpZSAibXYgdG8gSU5URUxfU0RQX0RJUiBm YWlsZWQiCiB9CiAKLSMgQEZVTkNUSU9OOiBpbnRlbC1zZHBfc3JjX2luc3RhbGwKKyMgQEZV TkNUSU9OOiBpbnRlbC1zZHAtcjFfc3JjX2luc3RhbGwKICMgQERFU0NSSVBUSU9OOgogIyBJ bnN0YWxsIGV2ZXJ5dGhpbmcKLWludGVsLXNkcF9zcmNfaW5zdGFsbCgpIHsKK2ludGVsLXNk cC1yMV9zcmNfaW5zdGFsbCgpIHsKIAlkZWJ1Zy1wcmludC1mdW5jdGlvbiAke0ZVTkNOQU1F fSAiJHtAfSIKIAotCWlmIHBhdGhfZXhpc3RzICIke0lOVEVMX1NEUF9ESVJ9Ii91bmluc3Rh bGwqOyB0aGVuCi0JCWViZWdpbiAiQ2xlYW5pbmcgb3V0IHVuaW5zdGFsbCBpbmZvcm1hdGlv biIKLQkJZmluZCAiJHtJTlRFTF9TRFBfRElSfSIvdW5pbnN0YWxsKiAtZGVsZXRlIHx8IGRp ZQorCSMgcmVtb3ZlIHVuaW5zdGFsbCBpbmZvcm1hdGlvbgorCWlmIHBhdGhfZXhpc3RzIG9w dC9pbnRlbC8iJHtJTlRFTF9EUE59IiovdW5pbnN0YWxsOyB0aGVuCisJCWViZWdpbiAiQ2xl YW5pbmcgb3V0IHVuaW5zdGFsbCIKKwkJcm0gLXIgb3B0L2ludGVsLyIke0lOVEVMX0RQTn0i Ki91bmluc3RhbGwgfHwgZGllCiAJCWVlbmQKIAlmaQogCi0JaWYgcGF0aF9leGlzdHMgIiR7 SU5URUxfU0RQX0RJUn0iL0RvY3VtZW50YXRpb247IHRoZW4KLQkJZG9kb2MgLXIgIiR7SU5U RUxfU0RQX0RJUn0iL0RvY3VtZW50YXRpb24vKgorCSMgaGFuZGxlIGRvY3VtZW50YXRpb24K KwlpZiBwYXRoX2V4aXN0cyAib3B0L2ludGVsL2RvY3VtZW50YXRpb25fJHtfSU5URUxfU0RQ X1lFQVJ9IjsgdGhlbgorCQlpZiBwYXRoX2V4aXN0cyAib3B0L2ludGVsL2RvY3VtZW50YXRp b25fJHtfSU5URUxfU0RQX1lFQVJ9L2VuL21hbi9jb21tb24vbWFuMSI7IHRoZW4KKwkJCWRv bWFuIG9wdC9pbnRlbC9kb2N1bWVudGF0aW9uXyIke19JTlRFTF9TRFBfWUVBUn0iL2VuL21h bi9jb21tb24vbWFuMS8qCisJCQlybSAtciBvcHQvaW50ZWwvZG9jdW1lbnRhdGlvbl8iJHtf SU5URUxfU0RQX1lFQVJ9Ii9lbi9tYW4gfHwgZGllCisJCWZpCisKKwkJaWYgdXNlIGRvYzsg dGhlbgorCQkJaWYgISB1c2UgbGluZ3Vhc19qYTsgdGhlbgorCQkJCXJtIC1yIG9wdC9pbnRl bC9kb2N1bWVudGF0aW9uXyIke19JTlRFTF9TRFBfWUVBUn0iL2phIHx8IGRpZQorCQkJZmkK KwkJCWRvZG9jIC1yIG9wdC9pbnRlbC9kb2N1bWVudGF0aW9uXyIke19JTlRFTF9TRFBfWUVB Un0iLyoKKwkJZmkKIAogCQllYmVnaW4gIkNsZWFuaW5nIG91dCBkb2N1bWVudGF0aW9uIgot CQlmaW5kICIke0lOVEVMX1NEUF9ESVJ9Ii9Eb2N1bWVudGF0aW9uIC1kZWxldGUgfHwgZGll CisJCXJtIC1yICJvcHQvaW50ZWwvZG9jdW1lbnRhdGlvbl8ke19JTlRFTF9TRFBfWUVBUn0i IHx8IGRpZQorCQlybSAiJHtJTlRFTF9TRFBfRElSfSIvbGludXgve2RvY3VtZW50YXRpb24s bWFufSB8fCBkaWUKIAkJZWVuZAogCWZpCiAKLQlpZiBwYXRoX2V4aXN0cyAiJHtJTlRFTF9T RFBfRElSfSIvU2FtcGxlczsgdGhlbgotCQlpZiB1c2UgZXhhbXBsZXMgOyB0aGVuCi0JCQlp bnNpbnRvIC91c3Ivc2hhcmUvJHtQfS9leGFtcGxlcy8KLQkJCWRvaW5zIC1yICIke0lOVEVM X1NEUF9ESVJ9Ii9TYW1wbGVzLyoKKwkjIGhhbmRsZSBleGFtcGxlcworCWlmIHBhdGhfZXhp c3RzICJvcHQvaW50ZWwvc2FtcGxlc18ke19JTlRFTF9TRFBfWUVBUn0iOyB0aGVuCisJCWlm IHVzZSBleGFtcGxlczsgdGhlbgorCQkJaWYgISB1c2UgbGluZ3Vhc19qYTsgdGhlbgorCQkJ CXJtIC1yIG9wdC9pbnRlbC9zYW1wbGVzXyIke19JTlRFTF9TRFBfWUVBUn0iL2phIHx8IGRp ZQorCQkJZmkKKwkJCWRvZG9jIC1yIG9wdC9pbnRlbC9zYW1wbGVzXyIke19JTlRFTF9TRFBf WUVBUn0iLyoKIAkJZmkKKwogCQllYmVnaW4gIkNsZWFuaW5nIG91dCBleGFtcGxlcyIKLQkJ ZmluZCAiJHtJTlRFTF9TRFBfRElSfSIvU2FtcGxlcyAtZGVsZXRlIHx8IGRpZQorCQlybSAt ciAib3B0L2ludGVsL3NhbXBsZXNfJHtfSU5URUxfU0RQX1lFQVJ9IiB8fCBkaWUKIAkJZWVu ZAogCWZpCiAKLQlpZiBwYXRoX2V4aXN0cyAiJHtJTlRFTF9TRFBfRElSfSIvZWNsaXBzZV9z dXBwb3J0OyB0aGVuCi0JCWlmIGhhcyBlY2xpcHNlICR7SVVTRX0gJiYgdXNlIGVjbGlwc2U7 IHRoZW4KLQkJCV9pc2RwX2xpbmtfZWNsaXBzZV9wbHVnaW5zCi0JCWVsc2UKLQkJCWViZWdp biAiQ2xlYW5pbmcgb3V0IGVjbGlwc2UgcGx1Z2luIgotCQkJZmluZCAiJHtJTlRFTF9TRFBf RElSfSIvZWNsaXBzZV9zdXBwb3J0IC1kZWxldGUgfHwgZGllCi0JCQllZW5kCi0JCWZpCi0J ZmkKLQotCWlmIHBhdGhfZXhpc3RzICIke0lOVEVMX1NEUF9ESVJ9Ii9tYW47IHRoZW4KLQkJ cGF0aF9leGlzdHMgIiR7SU5URUxfU0RQX0RJUn0iL21hbi9lbl9VUy9tYW4xLyogJiYgXAot CQkJZG9tYW4gIiR7SU5URUxfU0RQX0RJUn0iL21hbi9lbl9VUy9tYW4xLyoKLQkJcGF0aF9l eGlzdHMgIiR7SU5URUxfU0RQX0RJUn0iL21hbi9tYW4xLyogJiYgXAotCQkJZG9tYW4gIiR7 SU5URUxfU0RQX0RJUn0iL21hbi9tYW4xLyoKLQkJaGFzIGxpbmd1YXNfamEgJHtJVVNFfSAm JiB1c2UgbGluZ3Vhc19qYSAmJiBcCi0JCQlkb21hbiAtaTE4bj1qYV9KUCAiJHtJTlRFTF9T RFBfRElSfSIvbWFuL2phX0pQL21hbjEvKgotCi0JCWZpbmQgIiR7SU5URUxfU0RQX0RJUn0i L21hbiAtZGVsZXRlIHx8IGRpZQotCWZpCisJIyByZW1vdmUgZWNsaXBzZQorCXJtIC1yZiBv cHQvaW50ZWwvaWRlX3N1cHBvcnRfKiB8fCBkaWUKIAogCWViZWdpbiAiVGFnZ2luZyAke1BO fSIKIAlmaW5kIG9wdCAtbmFtZSBcKnNoIC10eXBlIGYgLWV4ZWMgc2VkIC1pIFwKLQkJLWUg InM6PC4qRElSPjoke0lOVEVMX1NEUF9FRElSfTpnIiBcCisJCS1lICJzOjwuKkRJUj46JHtJ TlRFTF9TRFBfRURJUn0vbGludXg6ZyIgXAogCQkne30nICsgfHwgZGllCiAJZWVuZAogCkBA IC00OTEsNDMgKzU1MCwzMCBAQAogCWtlZXBkaXIgIiR7SU5URUxfU0RQX0RJUn0iL2xpY2Vu c2VzIC9vcHQvaW50ZWwvaXNtL3JtCiB9CiAKLSMgQEZVTkNUSU9OOiBpbnRlbC1zZHBfcGtn X3Bvc3RpbnN0CisjIEBGVU5DVElPTjogaW50ZWwtc2RwLXIxX3BrZ19wb3N0aW5zdAogIyBA REVTQ1JJUFRJT046Ci0jIEFkZCB0aGluZ3MgdG8gaW50ZWwgZGF0YWJhc2UKLWludGVsLXNk cF9wa2dfcG9zdGluc3QoKSB7CisjIFRlc3QgZm9yIGFsbCB0aGluZ3Mgd29ya2luZworaW50 ZWwtc2RwLXIxX3BrZ19wb3N0aW5zdCgpIHsKIAlkZWJ1Zy1wcmludC1mdW5jdGlvbiAke0ZV TkNOQU1FfSAiJHtAfSIKIAotCSMgYWRkIHByb2R1Y3QgcmVnaXN0cnkgdG8gaW50ZWwgImRh dGFiYXNlIgotCWxvY2FsIGwgcgotCWZvciByIGluICR7SU5URUxfUlBNU307IGRvCi0JCWw9 IiQobHMgLTEgJHtFUk9PVCUvfS9vcHQvaW50ZWwvLiR7cn1fKi5sb2cgfCBoZWFkIC1uIDEp IgotCQllY2hvID4+ICR7SU5URUxfU0RQX0RCfSBcCi0JCQkiPDoke3IlLSR7X0lOVEVMX1BW NH0qfS0ke19JTlRFTF9QVjR9OiR7cn06JHtJTlRFTF9TRFBfRURJUn06JHtsfTo+IgotCWRv bmUKIAlfaXNkcF9ydW4tdGVzdAogCiAJaWYgW1sgJHtQTn0gPSBpY2MgXV0gJiYgaGFzX3Zl cnNpb24gIj49ZGV2LXV0aWwvY2NhY2hlLTMuMS45LXIyIiA7IHRoZW4KIAkJI2FkZCBjY2Fj aGUgbGlua3MgYXMgaWNjIG1pZ2h0IGdldCBpbnN0YWxsZWQgYWZ0ZXIgY2NhY2hlCiAJCSIk e0VST09UfSIvdXNyL2Jpbi9jY2FjaGUtY29uZmlnIC0taW5zdGFsbC1saW5rcwogCWZpCisK KwllbG9nICJCZWdpbm5pbmcgd2l0aCB0aGUgMjAxNiBzdWl0ZSBvZiBJbnRlbCB0b29scywg R2VudG9vIGhhcyByZW1vdmVkIgorCWVsb2cgInN1cHBvcnQgZm9yIHRoZSBlY2xpcHNlIHBs dWdpbi4gSWYgeW91IHJlcXVpcmUgdGhlIElERSBzdXBwb3J0LCIKKwllbG9nICJ5b3Ugd2ls bCBoYXZlIHRvIGluc3RhbGwgdGhlIHN1aXRlIG9uIHlvdXIgb3duLCBvdXRzaWRlIHBvcnRh Z2UuIgogfQogCi0jIEBGVU5DVElPTjogaW50ZWwtc2RwX3BrZ19wb3N0cm0KKyMgQEZVTkNU SU9OOiBpbnRlbC1zZHAtcjFfcGtnX3Bvc3RybQogIyBAREVTQ1JJUFRJT046Ci0jIFNhbml0 aXplIGludGVsIGRhdGFiYXNlCi1pbnRlbC1zZHBfcGtnX3Bvc3RybSgpIHsKKyMgU2FuaXRp emUgY2FjaGUgbGlua3MKK2ludGVsLXNkcC1yMV9wa2dfcG9zdHJtKCkgewogCWRlYnVnLXBy aW50LWZ1bmN0aW9uICR7RlVOQ05BTUV9ICIke0B9IgogCi0JIyByZW1vdmUgZnJvbSBpbnRl bCAiZGF0YWJhc2UiCi0JaWYgW1sgLWUgJHtJTlRFTF9TRFBfREJ9IF1dOyB0aGVuCi0JCWxv Y2FsIHIKLQkJZm9yIHIgaW4gJHtJTlRFTF9SUE1TfTsgZG8KLQkJCXNlZCAtaSBcCi0JCQkJ LWUgIi8ke3J9L2QiIFwKLQkJCQkke0lOVEVMX1NEUF9EQn0KLQkJZG9uZQotCWZpCi0KIAlp ZiBbWyAke1BOfSA9IGljYyBdXSAmJiBoYXNfdmVyc2lvbiAiPj1kZXYtdXRpbC9jY2FjaGUt My4xLjktcjIiICYmIFtbIC16ICR7UkVQTEFDRURfQllfVkVSU0lPTn0gXV07IHRoZW4KIAkJ IyAtLXJlbW92ZS1saW5rcyB3b3VsZCByZW1vdmUgYWxsIGxpbmtzLCAtLWluc3RhbGwtbGlu a3MgdXBkYXRlcyB0aGVtCiAJCSIke0VST09UfSIvdXNyL2Jpbi9jY2FjaGUtY29uZmlnIC0t aW5zdGFsbC1saW5rcwpAQCAtNTM2LDUgKzU4Miw1IEBACiAKIEVYUE9SVF9GVU5DVElPTlMg cGtnX3NldHVwIHNyY191bnBhY2sgc3JjX2luc3RhbGwgcGtnX3Bvc3RpbnN0IHBrZ19wb3N0 cm0gcGtnX3ByZXRlbmQKIAotX0lOVEVMX1NEUF9FQ0xBU1NfPTEKK19JTlRFTF9TRFBfUjFf RUNMQVNTXz0xCiBmaQo= --------------060900070608050706000406-- --xpbnaomSuhr29E8EHGvXUbT6xasaIAxf1 Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG/MacGPG2 v2.0 iQJ8BAEBCgBmBQJWwYl1XxSAAAAAAC4AKGlzc3Vlci1mcHJAbm90YXRpb25zLm9w ZW5wZ3AuZmlmdGhob3JzZW1hbi5uZXQ0QUU0N0I4NzFERUI0MTJFN0EyODE0NUFF OTQwMkE3OUIwMzUyOUEyAAoJEOlAKnmwNSmiMo4P/ijaRz6pLZ/0MB3kdYyewZPl 8pFSZ4EkE8j/N3bdfsXBq07gG1LuOnR1vuA3mzuXtFiLqHY21ZeOLGyHSDbSAay6 62+paszW1+HfEzTAtEdnevwYlganjOwU3VjwnB/qacWPxL7slZMwcGMH9lud+wZ1 /zEBvVJ6vKu0cEXmj3597IG2mO8HFKafuosYY4ugQptzL+knuStsTMkJF8ujehS6 xAtWtnCg2CcO6Qy//NhwHCjp06uaEg2uyzaJ9NJvEX7oo5gHPscNVkRPg/OfAR6d hphwoS9XnifboCKzjZERX+zDEHye5dGxER1XoyqLEa7jbGhlVaFkuqO+jpLsBSpR DDP4MTlab0HXqtL5gkiEPh8uTYAikJBRaGdGvBPZR2Eq8qfSkQLYL14I5w1b1QC4 0dT3Iktve6oYV9pnBpKWe2F7rfyLOucpO99sNmm85EvW7G9GGyDnB8XZLlNXsUQ8 BHvuzI89OXWwv8SOcZPLqawho6SMytUjpF7V9a676AkwGMJX2mlAnbOMfrCXxe0C tWN9H3LhEXbCJ0e6aMMB5yqycqCYAk/tFrWN3wqPbK2XDyEBbSRnvtCsKfTW0rKJ 2GvFMP5MikpnXCb39Nnr2gc2NZSPtnIHjgCUjIERbW4KC2HdpUa9cE/DzHVxG+PY QT2hvPzVRHd10REM/teh =W3Iv -----END PGP SIGNATURE----- --xpbnaomSuhr29E8EHGvXUbT6xasaIAxf1--