From mboxrd@z Thu Jan 1 00:00:00 1970 From: Federico Beffa Subject: [PATCH 3/5] build: Add 'emacs-build-system' Date: Sun, 21 Jun 2015 10:31:22 +0200 Message-ID: Mime-Version: 1.0 Content-Type: multipart/mixed; boundary=047d7bd752446c9e53051902fb69 Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:58084) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Z6aez-00082l-Ex for guix-devel@gnu.org; Sun, 21 Jun 2015 04:31:27 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Z6aex-0001ku-0g for guix-devel@gnu.org; Sun, 21 Jun 2015 04:31:25 -0400 Received: from mail-ie0-x236.google.com ([2607:f8b0:4001:c03::236]:35310) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Z6aew-0001km-Pa for guix-devel@gnu.org; Sun, 21 Jun 2015 04:31:22 -0400 Received: by iefd2 with SMTP id d2so41726733ief.2 for ; Sun, 21 Jun 2015 01:31:22 -0700 (PDT) List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org To: Guix-devel --047d7bd752446c9e53051902fb69 Content-Type: text/plain; charset=UTF-8 A new 'emacs-buld-system'. Fede --047d7bd752446c9e53051902fb69 Content-Type: text/x-diff; charset=UTF-8; name="0003-build-Add-emacs-build-system.patch" Content-Disposition: attachment; filename="0003-build-Add-emacs-build-system.patch" Content-Transfer-Encoding: base64 X-Attachment-Id: f_ib67r2id0 RnJvbSA5YzA5MGRkZDdkZTAxMWIzNjkyMDhjZGViMjhlYjNlYWE1ZGM2MDExIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBGZWRlcmljbyBCZWZmYSA8YmVmZmFAZmJlbmdpbmVlcmluZy5j aD4KRGF0ZTogU3VuLCAyMSBKdW4gMjAxNSAxMDoxMDowNSArMDIwMApTdWJqZWN0OiBbUEFUQ0gg My81XSBidWlsZDogQWRkICdlbWFjcy1idWlsZC1zeXN0ZW0nLgoKKiBNYWtlZmlsZS5hbSAoTU9E VUxFUyk6IEFkZCAnZ3VpeC9idWlsZC1zeXN0ZW0vZW1hY3Muc2NtJyBhbmQKICAnZ3VpeC9idWls ZC9lbWFjcy1idWlsZC1zeXN0ZW0uc2NtJy4KKiBndWl4L2J1aWxkLXN5c3RlbS9lbWFjcy5zY206 IE5ldyBmaWxlLgoqIGd1aXgvYnVpbGQvZW1hY3MtYnVpbGQtc3lzdGVtLnNjbTogTmV3IGZpbGUu CiogZG9jL2d1aXgudGV4aSAoQnVpbGQgU3lzdGVtcyk6IERvY3VtZW50IGl0LgotLS0KIE1ha2Vm aWxlLmFtICAgICAgICAgICAgICAgICAgICAgICB8ICAgMiArCiBkb2MvZ3VpeC50ZXhpICAgICAg ICAgICAgICAgICAgICAgfCAgMTEgKysKIGd1aXgvYnVpbGQtc3lzdGVtL2VtYWNzLnNjbSAgICAg ICB8IDE0MSArKysrKysrKysrKysrKysrKysrKysrKysrCiBndWl4L2J1aWxkL2VtYWNzLWJ1aWxk LXN5c3RlbS5zY20gfCAyMTIgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysK IDQgZmlsZXMgY2hhbmdlZCwgMzY2IGluc2VydGlvbnMoKykKIGNyZWF0ZSBtb2RlIDEwMDY0NCBn dWl4L2J1aWxkLXN5c3RlbS9lbWFjcy5zY20KIGNyZWF0ZSBtb2RlIDEwMDY0NCBndWl4L2J1aWxk L2VtYWNzLWJ1aWxkLXN5c3RlbS5zY20KCmRpZmYgLS1naXQgYS9NYWtlZmlsZS5hbSBiL01ha2Vm aWxlLmFtCmluZGV4IGMwMjdmYjMuLmEwMTNiN2EgMTAwNjQ0Ci0tLSBhL01ha2VmaWxlLmFtCisr KyBiL01ha2VmaWxlLmFtCkBAIC00OSw2ICs0OSw3IEBAIE1PRFVMRVMgPQkJCQkJXAogICBndWl4 L2xpY2Vuc2VzLnNjbQkJCQlcCiAgIGd1aXgvYnVpbGQtc3lzdGVtLnNjbQkJCQlcCiAgIGd1aXgv YnVpbGQtc3lzdGVtL2NtYWtlLnNjbQkJCVwKKyAgZ3VpeC9idWlsZC1zeXN0ZW0vZW1hY3Muc2Nt CQkJXAogICBndWl4L2J1aWxkLXN5c3RlbS9nbGliLW9yLWd0ay5zY20JCVwKICAgZ3VpeC9idWls ZC1zeXN0ZW0vZ251LnNjbQkJCVwKICAgZ3VpeC9idWlsZC1zeXN0ZW0vaGFza2VsbC5zY20JCQlc CkBAIC02Nyw2ICs2OCw3IEBAIE1PRFVMRVMgPQkJCQkJXAogICBndWl4L3VpLnNjbQkJCQkJXAog ICBndWl4L2J1aWxkL2Rvd25sb2FkLnNjbQkJCVwKICAgZ3VpeC9idWlsZC9jbWFrZS1idWlsZC1z eXN0ZW0uc2NtCQlcCisgIGd1aXgvYnVpbGQvZW1hY3MtYnVpbGQtc3lzdGVtLnNjbQkJXAogICBn dWl4L2J1aWxkL2dpdC5zY20JCQkJXAogICBndWl4L2J1aWxkL2dsaWItb3ItZ3RrLWJ1aWxkLXN5 c3RlbS5zY20JXAogICBndWl4L2J1aWxkL2dudS1idWlsZC1zeXN0ZW0uc2NtCQlcCmRpZmYgLS1n aXQgYS9kb2MvZ3VpeC50ZXhpIGIvZG9jL2d1aXgudGV4aQppbmRleCAzY2ExMDVhLi4wMGZlNWJi IDEwMDY0NAotLS0gYS9kb2MvZ3VpeC50ZXhpCisrKyBiL2RvYy9ndWl4LnRleGkKQEAgLTI0MDQs NiArMjQwNCwxNyBAQCBXaGljaCBIYXNrZWxsIGNvbXBpbGVyIGlzIHVzZWQgY2FuIGJlIHNwZWNp ZmllZCB3aXRoIHRoZSBAY29kZXsjOmhhc2tlbGx9CiBwYXJhbWV0ZXIgd2hpY2ggZGVmYXVsdHMg dG8gQGNvZGV7Z2hjfS4KIEBlbmQgZGVmdnIKIAorQGRlZnZyIHtTY2hlbWUgVmFyaWFibGV9IGVt YWNzLWJ1aWxkLXN5c3RlbQorVGhpcyB2YXJpYWJsZSBpcyBleHBvcnRlZCBieSBAY29kZXsoZ3Vp eCBidWlsZC1zeXN0ZW0gaGFza2VsbCl9LiAgSXQKK2ltcGxlbWVudHMgYW4gaW5zdGFsbGF0aW9u IHByb2NlZHVyZSBzaW1pbGFyIHRvIHRoZSBvbmUgb2YgRW1hY3Mgb3duCitwYWNrYWdpbmcgc3lz dGVtLiAgSXQgZmlyc3QgY3JlYXRlcyB0aGUgQGNvZGV7UEFDS0FHRS1hdXRvbG9hZHMuZWx9Citm aWxlLCB0aGVuIGl0IGJ5dGUgY29tcGlsZXMgYWxsIEVtYWNzIExpc3AgZmlsZXMuICBEaWZmZXJl bnRseSBmcm9tIHRoZQorRW1hY3MgcGFja2FnaW5nIHN5c3RlbSwgdGhlIEBjb2Rle2luZm99IGRv Y3VtZW50YXRpb24gZmlsZXMgYXJlIG1vdmVkIHRvCit0aGUgc3RhbmRhcmQgZG9jdW1lbnRhdGlv biBkaXJlY290cnkgYW5kIHRoZSBAY29kZXtkaXJ9IGZpbGUgaXMgZGVsZXRlZC4KK0VhY2ggcGFj a2FnZSBpcyBpbnN0YWxsZWQgaW4gaXRzIG93biBkaXJlY3RvcnkgdW5kZXIKK0Bjb2Rle3NoYXJl L2VtYWNzL3NpdGUtbGlzcC9ndWl4LmR9LgorQGVuZCBkZWZ2cgorCiBMYXN0bHksIGZvciBwYWNr YWdlcyB0aGF0IGRvIG5vdCBuZWVkIGFueXRoaW5nIGFzIHNvcGhpc3RpY2F0ZWQsIGEKIGBgdHJp dmlhbCcnIGJ1aWxkIHN5c3RlbSBpcyBwcm92aWRlZC4gIEl0IGlzIHRyaXZpYWwgaW4gdGhlIHNl bnNlIHRoYXQKIGl0IHByb3ZpZGVzIGJhc2ljYWxseSBubyBzdXBwb3J0OiBpdCBkb2VzIG5vdCBw dWxsIGFueSBpbXBsaWNpdCBpbnB1dHMsCmRpZmYgLS1naXQgYS9ndWl4L2J1aWxkLXN5c3RlbS9l bWFjcy5zY20gYi9ndWl4L2J1aWxkLXN5c3RlbS9lbWFjcy5zY20KbmV3IGZpbGUgbW9kZSAxMDA2 NDQKaW5kZXggMDAwMDAwMC4uZGEyYjU5NAotLS0gL2Rldi9udWxsCisrKyBiL2d1aXgvYnVpbGQt c3lzdGVtL2VtYWNzLnNjbQpAQCAtMCwwICsxLDE0MSBAQAorOzs7IEdOVSBHdWl4IC0tLSBGdW5j dGlvbmFsIHBhY2thZ2UgbWFuYWdlbWVudCBmb3IgR05VCis7OzsgQ29weXJpZ2h0IMKpIDIwMTUg RmVkZXJpY28gQmVmZmEgPGJlZmZhQGZiZW5naW5lZXJpbmcuY2g+Cis7OzsKKzs7OyBUaGlzIGZp bGUgaXMgcGFydCBvZiBHTlUgR3VpeC4KKzs7OworOzs7IEdOVSBHdWl4IGlzIGZyZWUgc29mdHdh cmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnkgaXQKKzs7OyB1bmRlciB0 aGUgdGVybXMgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBi eQorOzs7IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2ZXJzaW9uIDMgb2Yg dGhlIExpY2Vuc2UsIG9yIChhdAorOzs7IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4K Kzs7OworOzs7IEdOVSBHdWl4IGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2ls bCBiZSB1c2VmdWwsIGJ1dAorOzs7IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4g dGhlIGltcGxpZWQgd2FycmFudHkgb2YKKzs7OyBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBG T1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuICBTZWUgdGhlCis7OzsgR05VIEdlbmVyYWwgUHVibGlj IExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKzs7OworOzs7IFlvdSBzaG91bGQgaGF2ZSByZWNl aXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCis7OzsgYWxvbmcg d2l0aCBHTlUgR3VpeC4gIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMv Pi4KKworKGRlZmluZS1tb2R1bGUgKGd1aXggYnVpbGQtc3lzdGVtIGVtYWNzKQorICAjOnVzZS1t b2R1bGUgKGd1aXggc3RvcmUpCisgICM6dXNlLW1vZHVsZSAoZ3VpeCB1dGlscykKKyAgIzp1c2Ut bW9kdWxlIChndWl4IHBhY2thZ2VzKQorICAjOnVzZS1tb2R1bGUgKGd1aXggZGVyaXZhdGlvbnMp CisgICM6dXNlLW1vZHVsZSAoZ3VpeCBzZWFyY2gtcGF0aHMpCisgICM6dXNlLW1vZHVsZSAoZ3Vp eCBidWlsZC1zeXN0ZW0pCisgICM6dXNlLW1vZHVsZSAoZ3VpeCBidWlsZC1zeXN0ZW0gZ251KQor ICAjOnVzZS1tb2R1bGUgKGljZS05IG1hdGNoKQorICAjOnVzZS1tb2R1bGUgKHNyZmkgc3JmaS0y NikKKyAgIzpleHBvcnQgKCVlbWFjcy1idWlsZC1zeXN0ZW0tbW9kdWxlcworICAgICAgICAgICAg ZW1hY3MtYnVpbGQKKyAgICAgICAgICAgIGVtYWNzLWJ1aWxkLXN5c3RlbSkpCisKKzs7IENvbW1l bnRhcnk6Cis7OworOzsgU3RhbmRhcmQgYnVpbGQgcHJvY2VkdXJlIGZvciBFbWFjcyBwYWNrYWdl cy4gIFRoaXMgaXMgaW1wbGVtZW50ZWQgYXMgYW4KKzs7IGV4dGVuc2lvbiBvZiAnZ251LWJ1aWxk LXN5c3RlbScuCis7OworOzsgQ29kZToKKworKGRlZmluZSAlZW1hY3MtYnVpbGQtc3lzdGVtLW1v ZHVsZXMKKyAgOzsgQnVpbGQtc2lkZSBtb2R1bGVzIGltcG9ydGVkIGJ5IGRlZmF1bHQuCisgIGAo KGd1aXggYnVpbGQgZW1hY3MtYnVpbGQtc3lzdGVtKQorICAgIChndWl4IGJ1aWxkIGVtYWNzLXV0 aWxzKQorICAgICxAJWdudS1idWlsZC1zeXN0ZW0tbW9kdWxlcykpCisKKyhkZWZpbmUgKGRlZmF1 bHQtZW1hY3MpCisgICJSZXR1cm4gdGhlIGRlZmF1bHQgRW1hY3MgcGFja2FnZS4iCisgIDs7IExh emlseSByZXNvbHZlIHRoZSBiaW5kaW5nIHRvIGF2b2lkIGEgY2lyY3VsYXIgZGVwZW5kZW5jeS4K KyAgKGxldCAoKGVtYWNzLW1vZCAocmVzb2x2ZS1pbnRlcmZhY2UgJyhnbnUgcGFja2FnZXMgZW1h Y3MpKSkpCisgICAgOzsgd2UgdXNlICdlbWFjcycgaW5zdGVhZCBvZiAnZW1hY3Mtbm8teCcgYmVj YXVzZSB0aGUgbGF0dGVyIGFwcGVhcnMgbm90CisgICAgOzsgdG8gYmUgbG9hZGluZyBzb21lIG1h Y3JvcyBhbmQgY2F1c2VzIHByb2JsZW1zIHRvIHNvbWUgcGFja2FnZXMuICBGb3IKKyAgICA7OyBl eGFtcGxlLCB3aXRoIHRoZSBsYXR0ZXIgQVVDVGVYIGdpdmVzIHRoZSBlcnJvciBtZXNzYWdlOgor ICAgIDs7ICIoaW52YWxpZC1mdW5jdGlvbiBkYnVzLWlnbm9yZS1lcnJvcnMpIi4KKyAgICAobW9k dWxlLXJlZiBlbWFjcy1tb2QgJ2VtYWNzKSkpCisKKyhkZWZpbmUqIChsb3dlciBuYW1lCisgICAg ICAgICAgICAgICAgIzprZXkgc291cmNlIGlucHV0cyBuYXRpdmUtaW5wdXRzIG91dHB1dHMgc3lz dGVtIHRhcmdldAorICAgICAgICAgICAgICAgIChlbWFjcyAoZGVmYXVsdC1lbWFjcykpCisgICAg ICAgICAgICAgICAgIzphbGxvdy1vdGhlci1rZXlzCisgICAgICAgICAgICAgICAgIzpyZXN0IGFy Z3VtZW50cykKKyAgIlJldHVybiBhIGJhZyBmb3IgTkFNRS4iCisgIChkZWZpbmUgcHJpdmF0ZS1r ZXl3b3JkcworICAgICcoIzp0YXJnZXQgIzplbWFjcyAjOmlucHV0cyAjOm5hdGl2ZS1pbnB1dHMp KQorCisgIChhbmQgKG5vdCB0YXJnZXQpICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDtY WFg6IG5vIGNyb3NzLWNvbXBpbGF0aW9uCisgICAgICAgKGJhZworICAgICAgICAgKG5hbWUgbmFt ZSkKKyAgICAgICAgIChzeXN0ZW0gc3lzdGVtKQorICAgICAgICAgKGhvc3QtaW5wdXRzIGAoLEAo aWYgc291cmNlCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBgKCgic291cmNlIiAsc291 cmNlKSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICcoKSkKKyAgICAgICAgICAgICAg ICAgICAgICAgICxAaW5wdXRzCisKKyAgICAgICAgICAgICAgICAgICAgICAgIDs7IEtlZXAgdGhl IHN0YW5kYXJkIGlucHV0cyBvZiAnZ251LWJ1aWxkLXN5c3RlbScuCisgICAgICAgICAgICAgICAg ICAgICAgICAsQChzdGFuZGFyZC1wYWNrYWdlcykpKQorICAgICAgICAgKGJ1aWxkLWlucHV0cyBg KCgiZW1hY3MiICxlbWFjcykKKyAgICAgICAgICAgICAgICAgICAgICAgICAsQG5hdGl2ZS1pbnB1 dHMpKQorICAgICAgICAgKG91dHB1dHMgb3V0cHV0cykKKyAgICAgICAgIChidWlsZCBlbWFjcy1i dWlsZCkKKyAgICAgICAgIChhcmd1bWVudHMgKHN0cmlwLWtleXdvcmQtYXJndW1lbnRzIHByaXZh dGUta2V5d29yZHMgYXJndW1lbnRzKSkpKSkKKworKGRlZmluZSogKGVtYWNzLWJ1aWxkIHN0b3Jl IG5hbWUgaW5wdXRzCisgICAgICAgICAgICAgICAgICAgICAgIzprZXkgc291cmNlCisgICAgICAg ICAgICAgICAgICAgICAgKHRlc3RzPyAjdCkKKyAgICAgICAgICAgICAgICAgICAgICAodGVzdC10 YXJnZXQgInRlc3QiKQorICAgICAgICAgICAgICAgICAgICAgIChjb25maWd1cmUtZmxhZ3MgJyco KSkKKyAgICAgICAgICAgICAgICAgICAgICAocGhhc2VzICcoQCAoZ3VpeCBidWlsZCBlbWFjcy1i dWlsZC1zeXN0ZW0pCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJXN0YW5kYXJk LXBoYXNlcykpCisgICAgICAgICAgICAgICAgICAgICAgKG91dHB1dHMgJygib3V0IikpCisgICAg ICAgICAgICAgICAgICAgICAgKHNlYXJjaC1wYXRocyAnKCkpCisgICAgICAgICAgICAgICAgICAg ICAgKHN5c3RlbSAoJWN1cnJlbnQtc3lzdGVtKSkKKyAgICAgICAgICAgICAgICAgICAgICAoZ3Vp bGUgI2YpCisgICAgICAgICAgICAgICAgICAgICAgKGltcG9ydGVkLW1vZHVsZXMgJWVtYWNzLWJ1 aWxkLXN5c3RlbS1tb2R1bGVzKQorICAgICAgICAgICAgICAgICAgICAgIChtb2R1bGVzICcoKGd1 aXggYnVpbGQgZW1hY3MtYnVpbGQtc3lzdGVtKQorICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgKGd1aXggYnVpbGQgdXRpbHMpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAoZ3VpeCBidWlsZCBlbWFjcy11dGlscykpKSkKKyAgIkJ1aWxkIFNPVVJDRSB1c2luZyBFTUFD UywgYW5kIHdpdGggSU5QVVRTLiIKKyAgKGRlZmluZSBidWlsZGVyCisgICAgYChiZWdpbgorICAg ICAgICh1c2UtbW9kdWxlcyAsQG1vZHVsZXMpCisgICAgICAgKGVtYWNzLWJ1aWxkICM6bmFtZSAs bmFtZQorICAgICAgICAgICAgICAgICAgICAjOnNvdXJjZSAsKG1hdGNoIChhc3NvYy1yZWYgaW5w dXRzICJzb3VyY2UiKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoKCg/IGRlcml2 YXRpb24/IHNvdXJjZSkpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZGVyaXZh dGlvbi0+b3V0cHV0LXBhdGggc291cmNlKSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgKChzb3VyY2UpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzb3VyY2UpCisg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChzb3VyY2UKKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIHNvdXJjZSkpCisgICAgICAgICAgICAgICAgICAgICM6Y29uZmlndXJl LWZsYWdzICxjb25maWd1cmUtZmxhZ3MKKyAgICAgICAgICAgICAgICAgICAgIzpzeXN0ZW0gLHN5 c3RlbQorICAgICAgICAgICAgICAgICAgICAjOnRlc3QtdGFyZ2V0ICx0ZXN0LXRhcmdldAorICAg ICAgICAgICAgICAgICAgICAjOnRlc3RzPyAsdGVzdHM/CisgICAgICAgICAgICAgICAgICAgICM6 cGhhc2VzICxwaGFzZXMKKyAgICAgICAgICAgICAgICAgICAgIzpvdXRwdXRzICVvdXRwdXRzCisg ICAgICAgICAgICAgICAgICAgICM6c2VhcmNoLXBhdGhzICcsKG1hcCBzZWFyY2gtcGF0aC1zcGVj aWZpY2F0aW9uLT5zZXhwCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBzZWFyY2gtcGF0aHMpCisgICAgICAgICAgICAgICAgICAgICM6aW5wdXRzICVidWlsZC1pbnB1 dHMpKSkKKyAgCisgIChkZWZpbmUgZ3VpbGUtZm9yLWJ1aWxkCisgICAgKG1hdGNoIGd1aWxlCisg ICAgICAoKD8gcGFja2FnZT8pCisgICAgICAgKHBhY2thZ2UtZGVyaXZhdGlvbiBzdG9yZSBndWls ZSBzeXN0ZW0gIzpncmFmdD8gI2YpKQorICAgICAgKCNmICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICA7IHRoZSBkZWZhdWx0CisgICAgICAgKGxldCogKChkaXN0cm8gKHJl c29sdmUtaW50ZXJmYWNlICcoZ251IHBhY2thZ2VzIGNvbW1lbmNlbWVudCkpKQorICAgICAgICAg ICAgICAoZ3VpbGUgIChtb2R1bGUtcmVmIGRpc3RybyAnZ3VpbGUtZmluYWwpKSkKKyAgICAgICAg IChwYWNrYWdlLWRlcml2YXRpb24gc3RvcmUgZ3VpbGUgc3lzdGVtICM6Z3JhZnQ/ICNmKSkpKSkK KworICAoYnVpbGQtZXhwcmVzc2lvbi0+ZGVyaXZhdGlvbiBzdG9yZSBuYW1lIGJ1aWxkZXIKKyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIzppbnB1dHMgaW5wdXRzCisgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICM6c3lzdGVtIHN5c3RlbQorICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAjOm1vZHVsZXMgaW1wb3J0ZWQtbW9kdWxlcworICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAjOm91dHB1dHMgb3V0cHV0cworICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAjOmd1aWxlLWZvci1idWlsZCBndWlsZS1mb3ItYnVpbGQpKQorCisoZGVmaW5l IGVtYWNzLWJ1aWxkLXN5c3RlbQorICAoYnVpbGQtc3lzdGVtCisgICAgKG5hbWUgJ2VtYWNzKQor ICAgIChkZXNjcmlwdGlvbiAiVGhlIGJ1aWxkIHN5c3RlbSBmb3IgRW1hY3MgcGFja2FnZXMiKQor ICAgIChsb3dlciBsb3dlcikpKQorCis7OzsgZW1hY3Muc2NtIGVuZHMgaGVyZQpkaWZmIC0tZ2l0 IGEvZ3VpeC9idWlsZC9lbWFjcy1idWlsZC1zeXN0ZW0uc2NtIGIvZ3VpeC9idWlsZC9lbWFjcy1i dWlsZC1zeXN0ZW0uc2NtCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjg2ZGNk YjkKLS0tIC9kZXYvbnVsbAorKysgYi9ndWl4L2J1aWxkL2VtYWNzLWJ1aWxkLXN5c3RlbS5zY20K QEAgLTAsMCArMSwyMTIgQEAKKzs7OyBHTlUgR3VpeCAtLS0gRnVuY3Rpb25hbCBwYWNrYWdlIG1h bmFnZW1lbnQgZm9yIEdOVQorOzs7IENvcHlyaWdodCDCqSAyMDE1IEZlZGVyaWNvIEJlZmZhIDxi ZWZmYUBmYmVuZ2luZWVyaW5nLmNoPgorOzs7Cis7OzsgVGhpcyBmaWxlIGlzIHBhcnQgb2YgR05V IEd1aXguCis7OzsKKzs7OyBHTlUgR3VpeCBpcyBmcmVlIHNvZnR3YXJlOyB5b3UgY2FuIHJlZGlz dHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5IGl0Cis7OzsgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBH TlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnkKKzs7OyB0aGUgRnJlZSBT b2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvciAo YXQKKzs7OyB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uCis7OzsKKzs7OyBHTlUgR3Vp eCBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLCBidXQK Kzs7OyBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJh bnR5IG9mCis7OzsgTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQ VVJQT1NFLiAgU2VlIHRoZQorOzs7IEdOVSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3Jl IGRldGFpbHMuCis7OzsKKzs7OyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRo ZSBHTlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQorOzs7IGFsb25nIHdpdGggR05VIEd1aXguICBJ ZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCisKKyhkZWZpbmUtbW9k dWxlIChndWl4IGJ1aWxkIGVtYWNzLWJ1aWxkLXN5c3RlbSkKKyAgIzp1c2UtbW9kdWxlICgoZ3Vp eCBidWlsZCBnbnUtYnVpbGQtc3lzdGVtKSAjOnByZWZpeCBnbnU6KQorICAjOnVzZS1tb2R1bGUg KGd1aXggYnVpbGQgdXRpbHMpCisgICM6dXNlLW1vZHVsZSAoZ3VpeCBidWlsZCBlbWFjcy11dGls cykKKyAgIzp1c2UtbW9kdWxlIChzcmZpIHNyZmktMSkKKyAgIzp1c2UtbW9kdWxlIChzcmZpIHNy ZmktMjYpCisgICM6dXNlLW1vZHVsZSAoaWNlLTkgcmRlbGltKQorICAjOnVzZS1tb2R1bGUgKGlj ZS05IHJlZ2V4KQorICAjOnVzZS1tb2R1bGUgKGljZS05IG1hdGNoKQorICAjOmV4cG9ydCAoJXN0 YW5kYXJkLXBoYXNlcworICAgICAgICAgICAgZW1hY3MtYnVpbGQpKQorCis7OyBDb21tZW50YXJ5 OgorOzsKKzs7IEJ1aWxkZXItc2lkZSBjb2RlIG9mIHRoZSBidWlsZCBwcm9jZWR1cmUgZm9yIEVM UEEgRW1hY3MgcGFja2FnZXMuCis7OworOzsgQ29kZToKKworOzsgRGlyZWN0b3J5IHN1ZmZpeCB3 aGVyZSB3ZSBpbnN0YWxsIEVMUEEgcGFja2FnZXMuICBXZSBhdm9pZCAiLi4uL2VscGEiIGFzCis7 OyBFbWFjcyBleHBlY3RzIHRvIGZpbmQgdGhlIEVMUEEgcmVwb3NpdG9yeSAnYXJjaGl2ZS1jb250 ZW50cycgZmlsZSBhbmQgdGhlCis7OyBhcmNoaXZlIHNpZ25hdHVyZS4KKyhkZWZpbmUgJWluc3Rh bGwtc3VmZml4ICIvc2hhcmUvZW1hY3Mvc2l0ZS1saXNwL2d1aXguZCIpCisKKyhkZWZpbmUtc3lu dGF4IGxhbWJkYSotd2l0aC1lbWFjcy1lbnYKKyAgKGxhbWJkYSAoeCkKKyAgICAiQ3JlYXRlcyBh ICdsYW1iZGEqJyBleHByZXNzaW9uIHdoZXJlIHRoZSBmb2xsb3dpbmcgdmFyaWFibGVzIGFyZSBi b3VuZCB0bwordGhlIHZhbHVlcyBleHBlY3RlZCBieSB0aGUgJ2VtYWNzLWJ1aWxkLXN5c3RlbSc6 ICdlbWFjcycsICdvdXQnLCAnbmFtZS12ZXInLAorJ25hbWUnLCAnZWxwYS1uYW1lLXZlcicsICdl bHBhLW5hbWUnLCAnaW5mby1kaXInLCAnZWwtZGlyJy4gIFRoZSBmaXJzdAorcGFyYW1ldGVyIG9m IHRoZSBzeW50YXggbXVzdCBiZSBhIGxpc3Qgb2Ygc3ltYm9scyB3aGljaCBiZWNvbWUga2V5IHBh cmFtZXRlcnMKK29mIHRoZSBwcm9jZWR1cmUuICAnaW5wdXRzJyBhbmQgJ291dHB1dHMnIGFyZSBh dXRvbWF0aWNhbGx5IGFkZGVkIHRvIHRoZW0uCitUaGUgcmVtYWluaW5nIHBhcmFtZXRlcnMgYmVj b21lIHRoZSBib2R5IG9mIHRoZSBwcm9jZWR1cmUuIgorICAgIChzeW50YXgtY2FzZSB4ICgpCisg ICAgICAoKGsgKHAgLi4uKSBlMSBlMiAuLi4pCisgICAgICAgKHdpdGgtc3ludGF4ICgoKG91dHB1 dHMgaW5wdXRzIGVtYWNzIG91dCBuYW1lLXZlciBuYW1lIGVscGEtbmFtZS12ZXIKKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBlbHBhLW5hbWUgaW5mby1kaXIgZWwtZGlyKQorICAgICAg ICAgICAgICAgICAgICAgIChtYXAgKGN1dCBkYXR1bS0+c3ludGF4ICMnayA8PikKKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICcob3V0cHV0cyBpbnB1dHMgZW1hY3Mgb3V0IG5hbWUtdmVyIG5h bWUKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbHBhLW5hbWUtdmVyIGVs cGEtbmFtZQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGluZm8tZGlyIGVs LWRpcikpKSkKKyAgICAgICAgICMnKGxhbWJkYSogKCM6a2V5IG91dHB1dHMgaW5wdXRzIHAgLi4u ICM6YWxsb3ctb3RoZXIta2V5cykKKyAgICAgICAgICAgICAobGV0KiAoKGVtYWNzIChzdHJpbmct YXBwZW5kIChhc3NvYy1yZWYgaW5wdXRzICJlbWFjcyIpCisgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAiL2Jpbi9lbWFjcyIpKQorICAgICAgICAgICAgICAgICAgICAo b3V0IChhc3NvYy1yZWYgb3V0cHV0cyAib3V0IikpCisgICAgICAgICAgICAgICAgICAgIChuYW1l LXZlciAoc3RvcmUtZGlyLT5uYW1lLXZlcnNpb24gb3V0KSkKKyAgICAgICAgICAgICAgICAgICAg KG5hbWUgKHBhY2thZ2UtbmFtZS0+bmFtZSt2ZXJzaW9uIG5hbWUtdmVyKSkKKyAgICAgICAgICAg ICAgICAgICAgKGVscGEtbmFtZS12ZXIgKHN0b3JlLWRpci0+ZWxwYS1uYW1lLXZlcnNpb24gb3V0 KSkKKyAgICAgICAgICAgICAgICAgICAgKGVscGEtbmFtZSAocGFja2FnZS1uYW1lLT5uYW1lK3Zl cnNpb24gZWxwYS1uYW1lLXZlcikpCisgICAgICAgICAgICAgICAgICAgIChpbmZvLWRpciAoc3Ry aW5nLWFwcGVuZCBvdXQgIi9zaGFyZS9pbmZvLyIgbmFtZS12ZXIpKQorICAgICAgICAgICAgICAg ICAgICAoZWwtZGlyIChzdHJpbmctYXBwZW5kIG91dCAlaW5zdGFsbC1zdWZmaXgKKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiLyIgZWxwYS1uYW1lLXZlcikpKQor ICAgICAgICAgICAgICAgZTEgZTIgLi4uKSkpKSkpKQorCis7OyBDb21waWxlIC5lbCBmaWxlcy4K KyhkZWZpbmUgYnVpbGQKKyAgKGxhbWJkYSotd2l0aC1lbWFjcy1lbnYgKCkKKyAgICAobGV0ICgo ZGVwcy1kaXJzIChlbWFjcy1pbnB1dHMtZGlycyBpbnB1dHMpKSkKKyAgICAgIChzZXRlbnYgIlNI RUxMIiAic2giKQorICAgICAgKHBhcmFtZXRlcml6ZSAoKCVlbWFjcyBlbWFjcykpCisgICAgICAg IChlbWFjcy1ieXRlLWNvbXBpbGUtZGlyZWN0b3J5IGVsLWRpcgorICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAoZW1hY3MtaW5wdXRzLWVsLWRpcnMgZGVwcy1kaXJzKSkpKSkp CisKKzs7IFN1YnN0aXR1dGUgdGhlIGFic29sdXRlIFwiL2Jpbi9cIiBkaXJlY3Rvcnkgd2l0aCB0 aGUgcmlnaHQgbG9jYXRpb24gaW4gdGhlCis7OyBzdG9yZSBpbiAnLmVsJyBmaWxlcy4KKyhkZWZp bmUgcGF0Y2gtZWwtZmlsZXMKKyAgKGxhbWJkYSotd2l0aC1lbWFjcy1lbnYgKCkKKyAgICAobGV0 ICgoc3Vic3RpdHV0ZS1jbWQgKGxhbWJkYSAoKQorICAgICAgICAgICAgICAgICAgICAgICAgICAg IChzdWJzdGl0dXRlKiAoZmluZC1maWxlcyAiLiIgIlxcLmVsJCIpCisgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAoKCJcIi9iaW4vKC4qKVwiIiBfIGNtZCkKKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAoc3RyaW5nLWFwcGVuZCAiXCIiICh3aGljaCBjbWQpICJcIiIpKSkpKSkK KyAgICAgICh3aXRoLWRpcmVjdG9yeS1leGN1cnNpb24gZWwtZGlyCisgICAgICAgIDs7IFNvbWUg b2xkICcuZWwnIGZpbGVzIChlLmcuLCB0ZXgtYnVmLmVsIGluIEFVQ1RlWCkgYXJlIHN0aWxsIGVu Y29kZWQKKyAgICAgICAgOzsgd2l0aCB0aGUgIklTTy04ODU5LTEiIGxvY2FsZS4KKyAgICAgICAg KHVubGVzcyAoZmFsc2UtaWYtZXhjZXB0aW9uIChzdWJzdGl0dXRlLWNtZCkpCisgICAgICAgICAg KHdpdGgtZmx1aWRzICgoJWRlZmF1bHQtcG9ydC1lbmNvZGluZyAiSVNPLTg4NTktMSIpKQorICAg ICAgICAgICAgKHN1YnN0aXR1dGUtY21kKSkpKQorICAgICAgI3QpKSkKKworOzsgIEluc3RhbGwg dGhlIHBhY2thZ2UgY29udGVudHMuCisoZGVmaW5lIGluc3RhbGwKKyAgKGxhbWJkYSotd2l0aC1l bWFjcy1lbnYgKCkKKyAgICAobGV0ICgoc3JjLWRpciAoZ2V0Y3dkKSkKKyAgICAgICAgICAodGd0 LWRpciAoc3RyaW5nLWFwcGVuZCBvdXQgJWluc3RhbGwtc3VmZml4ICIvIiBlbHBhLW5hbWUtdmVy KSkpCisgICAgKGNvcHktcmVjdXJzaXZlbHkgc3JjLWRpciB0Z3QtZGlyKQorICAgICN0KSkpCisK Kzs7ICBNb3ZlIGluZm8gZmlsZXMgZnJvbSB0aGUgRUxQQSBwYWNrYWdlIGRpcmVjdG9yeSB0byB0 aGUgaW5mbyBkaXJlY3RvcnkuCisoZGVmaW5lIG1vdmUtZG9jCisgIChsYW1iZGEqLXdpdGgtZW1h Y3MtZW52ICgpCisgICAgKGxldCAoKGluZm8tZmlsZXMgKGZpbmQtZmlsZXMgZWwtZGlyICJcXC5p bmZvJCIpKSkKKyAgICAgICh1bmxlc3MgKG51bGw/IGluZm8tZmlsZXMpCisgICAgICAgIChta2Rp ci1wIGluZm8tZGlyKQorICAgICAgICAod2l0aC1kaXJlY3RvcnktZXhjdXJzaW9uIGVsLWRpcgor ICAgICAgICAgICh3aGVuIChmaWxlLWV4aXN0cz8gImRpciIpIChkZWxldGUtZmlsZSAiZGlyIikp CisgICAgICAgICAgKGZvci1lYWNoIChsYW1iZGEgKGYpCisgICAgICAgICAgICAgICAgICAgICAg KGNvcHktZmlsZSBmIChzdHJpbmctYXBwZW5kIGluZm8tZGlyICIvIiAoYmFzZW5hbWUgZikpKQor ICAgICAgICAgICAgICAgICAgICAgIChkZWxldGUtZmlsZSBmKSkKKyAgICAgICAgICAgICAgICAg ICAgaW5mby1maWxlcykpKQorICAgICAgI3QpKSkKKworOzsgIEdlbmVyYXRlIHRoZSBhdXRvbG9h ZHMgZmlsZS4KKyhkZWZpbmUgbWFrZS1hdXRvbG9hZHMKKyAgKGxhbWJkYSotd2l0aC1lbWFjcy1l bnYgKCkKKyAgICAocGFyYW1ldGVyaXplICgoJWVtYWNzIGVtYWNzKSkKKyAgICAgIChlbWFjcy1n ZW5lcmF0ZS1hdXRvbG9hZHMgZWxwYS1uYW1lIGVsLWRpcikpCisgICAgI3QpKQorCisoZGVmaW5l IChlbWFjcy1wYWNrYWdlPyBuYW1lKQorICAiQ2hlY2sgaWYgTkFNRSBjb3JyZXNwb25kIHRvIHRo ZSBuYW1lIG9mIGFuIEVtYWNzIHBhY2thZ2UuIgorICAoc3RyaW5nLXByZWZpeD8gImVtYWNzLSIg bmFtZSkpCisKKyhkZWZpbmUgKGVtYWNzLWlucHV0cyBpbnB1dHMpCisgICJSZXRyaXZlIHRoZSBs aXN0IG9mIEVtYWNzIHBhY2thZ2VzIGZyb20gaW5wdXRzLiIKKyAgKGZpbHRlciAobGFtYmRhIChw KQorICAgICAgICAgICAgKGFuZCAocGFpcj8gcCkKKyAgICAgICAgICAgICAgICAgKGVtYWNzLXBh Y2thZ2U/IChwYWNrYWdlLW5hbWUtPm5hbWUrdmVyc2lvbiAoZmlyc3QgcCkpKSkpCisgICAgICAg ICAgaW5wdXRzKSkKKworKGRlZmluZSAoZW1hY3MtaW5wdXRzLWRpcnMgaW5wdXRzKQorICAiRXh0 cmFjdCB0aGUgbGlzdCBvZiBFbWFjcyBwYWNrYWdlIGRpcmVjdG9yaWVzIGZyb20gSU5QVVRTLiIK KyAgKGxldCAoKGVtYWNzLWlucyAoZW1hY3MtaW5wdXRzIGlucHV0cykpKQorICAgIChtYXRjaCBl bWFjcy1pbnMKKyAgICAgICgoKG5hbWUgLiBkaXIpIC4uLikgZGlyKSkpKQorCisoZGVmaW5lIChl bWFjcy1pbnB1dHMtZWwtZGlycyBkaXJzKQorICAiQnVpbGQgdGhlIGxpc3Qgb2YgRW1hY3MgTGlz cCBkaXJlY3RvcmllcyBmcm9tIHRoZSBFbWFjcyBwYWNrYWdlIGRpcmVjdG9yeQorRElSUy4iCisg IChtYXAgKGxhbWJkYSAoZCkKKyAgICAgICAgIChzdHJpbmctYXBwZW5kIGQgJWluc3RhbGwtc3Vm Zml4ICIvIgorICAgICAgICAgICAgICAgICAgICAgICAgKHN0b3JlLWRpci0+ZWxwYS1uYW1lLXZl cnNpb24gZCkpKQorICAgICAgIGRpcnMpKQorCisoZGVmaW5lIChwYWNrYWdlLW5hbWUtdmVyc2lv bi0+ZWxwYS1uYW1lLXZlcnNpb24gbmFtZS12ZXIpCisgICJDb252ZXJ0IHRoZSBHdWl4IHBhY2th Z2UgTkFNRS1WRVIgdG8gdGhlIGNvcnJlc3BvbmRpbmcgRUxQQSBuYW1lLXZlcnNpb24KK2Zvcm1h dC4gIEVzc25ldGlhbGx5IGRyb3AgdGhlIHByZWZpeCB1c2VkIGluIEd1aXguIgorICAobGV0ICgo bmFtZSAoc3RvcmUtZGlyLT5uYW1lLXZlcnNpb24gbmFtZS12ZXIpKSkKKyAgICAoaWYgKGVtYWNz LXBhY2thZ2U/IG5hbWUtdmVyKQorICAgICAgICAoc3RvcmUtZGlyLT5uYW1lLXZlcnNpb24gbmFt ZS12ZXIpCisgICAgICAgIG5hbWUtdmVyKSkpCisKKyhkZWZpbmUgKHN0b3JlLWRpci0+ZWxwYS1u YW1lLXZlcnNpb24gc3RvcmUtZGlyKQorICAiR2l2ZW4gYSBzdG9yZSBkaXJlY3RvcnkgU1RPUkUt RElSIHJldHVybiB0aGUgcGFydCBvZiB0aGUgYmFzZW5hbWUgYWZ0ZXIgdGhlCitzZWNvbmQgaHlw aGVuLiAgVGhpcyBjb3JyZXNwb25kcyB0byAnbmFtZS12ZXJzaW9uJyBhcyB1c2VkIGluIEVMUEEg cGFja2FnZXMuIgorICAoKGNvbXBvc2UgcGFja2FnZS1uYW1lLXZlcnNpb24tPmVscGEtbmFtZS12 ZXJzaW9uCisgICAgICAgICAgICBzdG9yZS1kaXItPm5hbWUtdmVyc2lvbikKKyAgIHN0b3JlLWRp cikpCisKKyhkZWZpbmUgKHN0b3JlLWRpci0+bmFtZS12ZXJzaW9uIHN0b3JlLWRpcikKKyAgIkdp dmVuIGEgc3RvcmUgZGlyZWN0b3J5IFNUT1JFLURJUiByZXR1cm4gdGhlIHBhcnQgb2YgdGhlIGJh c2VuYW1lCithZnRlciB0aGUgZmlyc3QgaHlwaGVuLiAgVGhpcyBjb3JyZXNwb25kcyB0byAnbmFt ZS12ZXJzaW9uJyBvZiB0aGUgcGFja2FnZS4iCisgIChsZXQqICgoYmFzZSAoYmFzZW5hbWUgc3Rv cmUtZGlyKSkpCisgICAgKHN0cmluZy1kcm9wIGJhc2UKKyAgICAgICAgICAgICAgICAgKCsgMSAo c3RyaW5nLWluZGV4IGJhc2UgI1wtKSkpKSkKKworOzsgZnJvbSAoZ3VpeCB1dGlscykuICBTaG91 bGQgd2UgcHV0IGl0IGluIChndWl4IGJ1aWxkIHV0aWxzKT8KKyhkZWZpbmUgKHBhY2thZ2UtbmFt ZS0+bmFtZSt2ZXJzaW9uIG5hbWUpCisgICJHaXZlbiBOQU1FLCBhIHBhY2thZ2UgbmFtZSBsaWtl IFwiZm9vLTAuOS4xYlwiLCByZXR1cm4gdHdvIHZhbHVlczoKK1wiZm9vXCIgYW5kIFwiMC45LjFi XCIuICBXaGVuIHRoZSB2ZXJzaW9uIHBhcnQgaXMgdW5hdmFpbGFibGUsIE5BTUUgYW5kCisjZiBh cmUgcmV0dXJuZWQuICBUaGUgZmlyc3QgaHlwaGVuIGZvbGxvd2VkIGJ5IGEgZGlnaXQgaXMgY29u c2lkZXJlZCB0bworaW50cm9kdWNlIHRoZSB2ZXJzaW9uIHBhcnQuIgorICA7OyBTZWUgYWxzbyBg RHJ2TmFtZScgaW4gTml4LgorCisgIChkZWZpbmUgbnVtYmVyPworICAgIChjdXQgY2hhci1zZXQt Y29udGFpbnM/IGNoYXItc2V0OmRpZ2l0IDw+KSkKKworICAobGV0IGxvb3AgKChjaGFycyAgIChz dHJpbmctPmxpc3QgbmFtZSkpCisgICAgICAgICAgICAgKHByZWZpeCAnKCkpKQorICAgIChtYXRj aCBjaGFycworICAgICAgKCgpCisgICAgICAgKHZhbHVlcyBuYW1lICNmKSkKKyAgICAgICgoI1wt ICg/IG51bWJlcj8gbikgcmVzdCAuLi4pCisgICAgICAgKHZhbHVlcyAobGlzdC0+c3RyaW5nIChy ZXZlcnNlIHByZWZpeCkpCisgICAgICAgICAgICAgICAobGlzdC0+c3RyaW5nIChjb25zIG4gcmVz dCkpKSkKKyAgICAgICgoaGVhZCB0YWlsIC4uLikKKyAgICAgICAobG9vcCB0YWlsIChjb25zIGhl YWQgcHJlZml4KSkpKSkpCisKKyhkZWZpbmUgJXN0YW5kYXJkLXBoYXNlcworICAobW9kaWZ5LXBo YXNlcyBnbnU6JXN0YW5kYXJkLXBoYXNlcworICAgIChkZWxldGUgJ2NvbmZpZ3VyZSkKKyAgICAo ZGVsZXRlICdjaGVjaykKKyAgICAoZGVsZXRlICdpbnN0YWxsKQorICAgIChyZXBsYWNlICdidWls ZCBidWlsZCkKKyAgICAoYWRkLWJlZm9yZSAnYnVpbGQgJ2luc3RhbGwgaW5zdGFsbCkKKyAgICAo YWRkLWFmdGVyICdpbnN0YWxsICdtYWtlLWF1dG9sb2FkcyBtYWtlLWF1dG9sb2FkcykKKyAgICAo YWRkLWFmdGVyICdtYWtlLWF1dG9sb2FkcyAncGF0Y2gtZWwtZmlsZXMgcGF0Y2gtZWwtZmlsZXMp CisgICAgKGFkZC1hZnRlciAnbWFrZS1hdXRvbG9hZHMgJ21vdmUtZG9jIG1vdmUtZG9jKSkpCisK KyhkZWZpbmUqIChlbWFjcy1idWlsZCAjOmtleSBpbnB1dHMgKHBoYXNlcyAlc3RhbmRhcmQtcGhh c2VzKQorICAgICAgICAgICAgICAgICAgICAgICM6YWxsb3ctb3RoZXIta2V5cyAjOnJlc3QgYXJn cykKKyAgIkJ1aWxkIHRoZSBnaXZlbiBFbWFjcyBwYWNrYWdlLCBhcHBseWluZyBhbGwgb2YgUEhB U0VTIGluIG9yZGVyLiIKKyAgKGFwcGx5IGdudTpnbnUtYnVpbGQKKyAgICAgICAgICM6aW5wdXRz IGlucHV0cyAjOnBoYXNlcyBwaGFzZXMKKyAgICAgICAgIGFyZ3MpKQorCis7OzsgZW1hY3MtYnVp bGQtc3lzdGVtLnNjbSBlbmRzIGhlcmUKLS0gCjIuMi4xCgo= --047d7bd752446c9e53051902fb69--