From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-1.0 required=5.0 tests=ALL_TRUSTED autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 18301 invoked from network); 1 Dec 2021 09:58:44 -0000 Received: from localhost (HELO inbox.vuxu.org) (::1) by localhost with ESMTPUTF8; 1 Dec 2021 09:58:44 -0000 Content-Type: multipart/mixed; boundary="===============7801808233851613481==" MIME-Version: 1.0 Subject: =?utf8?q?Re=3A_=5BPR_PATCH=5D_=5BUpdated=5D_gnome-doc-utils=3A_remove?= To: ml@inbox.vuxu.org From: sgn Reply-to: ml@inbox.vuxu.org In-Reply-To: References: Date: Wed, 01 Dec 2021 10:58:43 +0100 List-Id: Message-ID: <20211201095843.-LJEAJdTLQcr7I3nD5foz_F3Ek2t3-t5QXBz3CMUDu4@z> GitHub notification mails are now in MIME to allow UTF8. --===============7801808233851613481== Content-Type: text/plain; charset="utf8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 VGhlcmUgaXMgYW4gdXBkYXRlZCBwdWxsIHJlcXVlc3QgYnkgc2duIGFnYWluc3QgbWFzdGVyIG9u IHRoZSB2b2lkLXBhY2thZ2VzIHJlcG9zaXRvcnkKCmh0dHBzOi8vZ2l0aHViLmNvbS9zZ24vdm9p ZC1wYWNrYWdlcyBnbm9tZS1kb2MtdXRpbHMtcmVtb3ZlCmh0dHBzOi8vZ2l0aHViLmNvbS92b2lk LWxpbnV4L3ZvaWQtcGFja2FnZXMvcHVsbC8zNDI0OAoKZ25vbWUtZG9jLXV0aWxzOiByZW1vdmUK PCEtLSBVbmNvbW1lbnQgcmVsZXZhbnQgc2VjdGlvbnMgYW5kIGRlbGV0ZSBvcHRpb25zIHdoaWNo IGFyZSBub3QgYXBwbGljYWJsZSAtLT4NCg0KIyMjIyBUZXN0aW5nIHRoZSBjaGFuZ2VzDQotIEkg dGVzdGVkIHRoZSBjaGFuZ2VzIGluIHRoaXMgUFI6ICoqWUVTKip8KipicmllZmx5Kip8KipOTyoq DQoNCjwhLS0NCiMjIyMgTmV3IHBhY2thZ2UNCi0gVGhpcyBuZXcgcGFja2FnZSBjb25mb3JtcyB0 byB0aGUgW3F1YWxpdHkgcmVxdWlyZW1lbnRzXShodHRwczovL2dpdGh1Yi5jb20vdm9pZC1saW51 eC92b2lkLXBhY2thZ2VzL2Jsb2IvbWFzdGVyL01hbnVhbC5tZCNxdWFsaXR5LXJlcXVpcmVtZW50 cyk6ICoqWUVTKip8KipOTyoqDQotLT4NCg0KPCEtLSBOb3RlOiBJZiB0aGUgYnVpbGQgaXMgbGlr ZWx5IHRvIHRha2UgbW9yZSB0aGFuIDIgaG91cnMsIHBsZWFzZSBbc2tpcCBDSV0oaHR0cHM6Ly9n aXRodWIuY29tL3ZvaWQtbGludXgvdm9pZC1wYWNrYWdlcy9ibG9iL21hc3Rlci9DT05UUklCVVRJ TkcubWQjY29udGludW91cy1pbnRlZ3JhdGlvbikNCmFuZCB0ZXN0IGF0IGxlYXN0IG9uZSBuYXRp dmUgYnVpbGQgYW5kLCBpZiBzdXBwb3J0ZWQsIGF0IGxlYXN0IG9uZSBjcm9zcyBidWlsZC4NCkln bm9yZSB0aGlzIHNlY3Rpb24gaWYgdGhpcyBQUiBpcyBub3Qgc2tpcHBpbmcgQ0kuDQotLT4NCjwh LS0gDQojIyMjIExvY2FsIGJ1aWxkIHRlc3RpbmcNCi0gSSBidWlsdCB0aGlzIFBSIGxvY2FsbHkg Zm9yIG15IG5hdGl2ZSBhcmNoaXRlY3R1cmUsIChBUkNILUxJQkMpDQotIEkgYnVpbHQgdGhpcyBQ UiBsb2NhbGx5IGZvciB0aGVzZSBhcmNoaXRlY3R1cmVzIChpZiBzdXBwb3J0ZWQuIG1hcmsgY3Jv c3NidWlsZHMpOg0KICAtIGFhcmNoNjQtbXVzbA0KICAtIGFybXY3bA0KICAtIGFybXY2bC1tdXNs DQotLT4NCgoKQSBwYXRjaCBmaWxlIGZyb20gaHR0cHM6Ly9naXRodWIuY29tL3ZvaWQtbGludXgv dm9pZC1wYWNrYWdlcy9wdWxsLzM0MjQ4LnBhdGNoIGlzIGF0dGFjaGVk --===============7801808233851613481== Content-Type: text/x-diff MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="github-pr-gnome-doc-utils-remove-34248.patch" RnJvbSBlZDlmYTIwODY4ZmM2ODI0Mzk1N2NhMjc1OGY0OTdjM2VlMTAzZjhlIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiA9P1VURi04P3E/PUM0PTkwbz1DMz1BMG49MjBUcj1FMT1CQT1B N249MjBDPUMzPUI0bmc9MjBEYW5oPz0KIDxjb25nZGFuaHF4QGdtYWlsLmNvbT4KRGF0ZTogRnJp LCAyNiBOb3YgMjAyMSAxMjowMToyNSArMDcwMApTdWJqZWN0OiBbUEFUQ0ggMS80XSBnY29uZi1l ZGl0b3I6IHJlbW92ZQoKLS0tCiBzcmNwa2dzL2djb25mLWVkaXRvci90ZW1wbGF0ZSAgICAgfCAy NyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIHNyY3BrZ3MvcmVtb3ZlZC1wYWNrYWdlcy90 ZW1wbGF0ZSB8ICAxICsKIDIgZmlsZXMgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDI3IGRlbGV0 aW9ucygtKQogZGVsZXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvZ2NvbmYtZWRpdG9yL3RlbXBsYXRl CgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9nY29uZi1lZGl0b3IvdGVtcGxhdGUgYi9zcmNwa2dzL2dj b25mLWVkaXRvci90ZW1wbGF0ZQpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZDRkOWZh NzliZDI1Li4wMDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtncy9nY29uZi1lZGl0b3IvdGVtcGxhdGUK KysrIC9kZXYvbnVsbApAQCAtMSwyNyArMCwwIEBACi0jIFRlbXBsYXRlIGZpbGUgZm9yICdnY29u Zi1lZGl0b3InCi1wa2duYW1lPWdjb25mLWVkaXRvcgotdmVyc2lvbj0zLjAuMQotcmV2aXNpb249 MwotYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQotY29uZmlndXJlX2FyZ3M9Ii0tZGlzYWJsZS1z Y2hlbWFzLWluc3RhbGwgLS1kaXNhYmxlLXNjcm9sbGtlZXBlcgotIC0td2l0aC1nY29uZi1zY2hl bWEtZmlsZS1kaXI9L3Vzci9zaGFyZS9nY29uZi9zY2hlbWFzIgotaG9zdG1ha2VkZXBlbmRzPSJw a2ctY29uZmlnIGludGx0b29sIGl0c3Rvb2wgZ25vbWUtZG9jLXV0aWxzIEdDb25mLWRldmVsIHdo aWNoIgotbWFrZWRlcGVuZHM9ImxpYnhtbDItZGV2ZWwgZ3RrKzMtZGV2ZWwgZ3NldHRpbmdzLWRl c2t0b3Atc2NoZW1hcy1kZXZlbAotIGhpY29sb3ItaWNvbi10aGVtZSBkZXNrdG9wLWZpbGUtdXRp bHMgZ25vbWUtZG9jLXV0aWxzIEdDb25mLWRldmVsIgotZGVwZW5kcz0iZ3NldHRpbmdzLWRlc2t0 b3Atc2NoZW1hcz49My4xMCBoaWNvbG9yLWljb24tdGhlbWUgZGVza3RvcC1maWxlLXV0aWxzIgot c2hvcnRfZGVzYz0iR3JhcGhpY2FsIGVkaXRvciB0byBtYWludGFpbiB0aGUgR25vbWUgcmVnaXN0 cnkiCi1tYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZvaWRsaW51eC5vcmc+IgotbGlj ZW5zZT0iR1BMLTIuMC1vci1sYXRlciIKLWhvbWVwYWdlPSJodHRwOi8vd3d3Lmdub21lLm9yZyIK LWRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS8kcGtnbmFtZS8ke3ZlcnNpb24lLip9LyRwa2duYW1l LSR2ZXJzaW9uLnRhci54eiIKLWNoZWNrc3VtPTMwNjRlODQ5NjdiNGI0MjE2ZjVjN2UwNjVjZmVj OGM1MjAxOTQzOGE1OTBlOWVkODEzNjZhZjI3NzA2NjA5NDQKLQotcG9zdF9wYXRjaCgpIHsKLQl2 c2VkIC1pIC1lICdzL0RBVEFESVJOQU1FPWxpYi9EQVRBRElSTkFNRT1zaGFyZS8nIGNvbmZpZ3Vy ZQotfQotCi1wb3N0X2luc3RhbGwoKSB7Ci0JbXYgJHtERVNURElSfS91c3Ivc2hhcmUvZ2NvbmYv c2NoZW1hcy8qLnNjaGVtYXMgJHt3cmtzcmN9Ci0JZ2NvbmYtbWVyZ2Utc2NoZW1hICR7REVTVERJ Un0vdXNyL3NoYXJlL2djb25mL3NjaGVtYXMvJHtwa2duYW1lfS5zY2hlbWFzIFwKLQkJLS1kb21h aW4gJHtwa2duYW1lfSAke3dya3NyY30vKi5zY2hlbWFzCi19CmRpZmYgLS1naXQgYS9zcmNwa2dz L3JlbW92ZWQtcGFja2FnZXMvdGVtcGxhdGUgYi9zcmNwa2dzL3JlbW92ZWQtcGFja2FnZXMvdGVt cGxhdGUKaW5kZXggOGI5YWE5ZDhiZGZmLi5lZjUzZWJhN2E5MmUgMTAwNjQ0Ci0tLSBhL3NyY3Br Z3MvcmVtb3ZlZC1wYWNrYWdlcy90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3JlbW92ZWQtcGFja2Fn ZXMvdGVtcGxhdGUKQEAgLTY3LDYgKzY3LDcgQEAgcmVwbGFjZXM9IgogIGVwc3RvcGRmPD0yLjI3 XzMKICBmb250bWF0cml4PD0wLjYuMC4yMDE3MTIyOF8yCiAgZnVzZS11c21iPD0yMDEzMDIwNF83 CisgZ2NvbmYtZWRpdG9yPD0zLjAuMV8zCiAgZ2VnbDM8PTAuMy4yOF8yCiAgZ2Vucy1nczw9Mi4x Ni43XzIKICBnZW9pcC1kYXRhPD0yMDE3MTAwMl8yCgpGcm9tIDlhZDcxOWNjYmUxNWM4MjY0NDQz ZDgyODVkZjY1NTAwMDBmZWY2OTMgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206ID0/VVRG LTg/cT89QzQ9OTBvPUMzPUEwbj0yMFRyPUUxPUJBPUE3bj0yMEM9QzM9QjRuZz0yMERhbmg/PQog PGNvbmdkYW5ocXhAZ21haWwuY29tPgpEYXRlOiBGcmksIDI2IE5vdiAyMDIxIDEyOjE2OjU2ICsw NzAwClN1YmplY3Q6IFtQQVRDSCAyLzRdIGdtcGM6IG5vdCByZXF1aXJlIGdub21lLWRvYy11dGls cyBmb3IgY2hlY2sKCi0tLQogc3JjcGtncy9nbXBjL3BhdGNoZXMvbG9jYWxlLWRpci5wYXRjaCAg ICAgICB8IDIwICsrKysrKysrKysrKysrKysrKysKIHNyY3BrZ3MvZ21wYy9wYXRjaGVzL25vLW1h bGxhcmQtY2hlY2sucGF0Y2ggfCAyMiArKysrKysrKysrKysrKysrKysrKysKIHNyY3BrZ3MvZ21w Yy90ZW1wbGF0ZSAgICAgICAgICAgICAgICAgICAgICAgfCAgNSAtLS0tLQogMyBmaWxlcyBjaGFu Z2VkLCA0MiBpbnNlcnRpb25zKCspLCA1IGRlbGV0aW9ucygtKQogY3JlYXRlIG1vZGUgMTAwNjQ0 IHNyY3BrZ3MvZ21wYy9wYXRjaGVzL2xvY2FsZS1kaXIucGF0Y2gKIGNyZWF0ZSBtb2RlIDEwMDY0 NCBzcmNwa2dzL2dtcGMvcGF0Y2hlcy9uby1tYWxsYXJkLWNoZWNrLnBhdGNoCgpkaWZmIC0tZ2l0 IGEvc3JjcGtncy9nbXBjL3BhdGNoZXMvbG9jYWxlLWRpci5wYXRjaCBiL3NyY3BrZ3MvZ21wYy9w YXRjaGVzL2xvY2FsZS1kaXIucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw MDAwMDAwLi44Mzk4ODIzZGQ3NjUKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL2dtcGMvcGF0 Y2hlcy9sb2NhbGUtZGlyLnBhdGNoCkBAIC0wLDAgKzEsMjAgQEAKKy0tLSBhL2NvbmZpZ3VyZQor KysrIGIvY29uZmlndXJlCitAQCAtMTEzNDcsNyArMTEzNDcsNyBAQCBmaQorIAorICAgICA7Owor ICAgICAqKQorLSAgICBEQVRBRElSTkFNRT1saWIKKysgICAgREFUQURJUk5BTUU9c2hhcmUKKyAg ICAgOzsKKyAgICAgZXNhYworIGZpCitAQCAtMTUwMjYsNyArMTUwMjYsNyBAQCBmaQorIAkgICAg OzsKKyAJICAgICopCisgCSAgICBDQVRPQkpFWFQ9Lm1vCistICAgICAgICAgICAgREFUQURJUk5B TUU9bGliCisrICAgICAgICAgICAgREFUQURJUk5BTUU9c2hhcmUKKyAJICAgIDs7CisgCSAgICBl c2FjCisgZmkKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ21wYy9wYXRjaGVzL25vLW1hbGxhcmQtY2hl Y2sucGF0Y2ggYi9zcmNwa2dzL2dtcGMvcGF0Y2hlcy9uby1tYWxsYXJkLWNoZWNrLnBhdGNoCm5l dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMC4uZjM2ODkxZjI4NDk4Ci0tLSAv ZGV2L251bGwKKysrIGIvc3JjcGtncy9nbXBjL3BhdGNoZXMvbm8tbWFsbGFyZC1jaGVjay5wYXRj aApAQCAtMCwwICsxLDIyIEBACistLS0gYS9kb2MvTWFrZWZpbGUuYW0KKysrKyBiL2RvYy9NYWtl ZmlsZS5hbQorQEAgLTEsNyArMSw3IEBACisgbWFuX01BTlMgPSBnbXBjLjEgZ21wYy1yZW1vdGUu MSBnbXBjLXJlbW90ZS1zdHJlYW0uMQorIEVYVFJBX0RJU1QgPSAkKG1hbl9NQU5TKQorIAorLVNV QkRJUlM9TWFsbGFyZAorK1NVQkRJUlM9CisgCisgLlBIT05ZOiBkb2MKKyBkb2M6IE1hbnVhbC50 eHQKKy0tLSBhL2RvYy9NYWtlZmlsZS5pbgorKysrIGIvZG9jL01ha2VmaWxlLmluCitAQCAtMzEx LDcgKzMxMSw3IEBAIHVuaXF1ZV9DRkxBR1MgPSBAdW5pcXVlX0NGTEFHU0AKKyB1bmlxdWVfTElC UyA9IEB1bmlxdWVfTElCU0AKKyBtYW5fTUFOUyA9IGdtcGMuMSBnbXBjLXJlbW90ZS4xIGdtcGMt cmVtb3RlLXN0cmVhbS4xCisgRVhUUkFfRElTVCA9ICQobWFuX01BTlMpCistU1VCRElSUyA9IE1h bGxhcmQKKytTVUJESVJTID0KKyBhbGw6IGFsbC1yZWN1cnNpdmUKKyAKKyAuU1VGRklYRVM6CmRp ZmYgLS1naXQgYS9zcmNwa2dzL2dtcGMvdGVtcGxhdGUgYi9zcmNwa2dzL2dtcGMvdGVtcGxhdGUK aW5kZXggOTk5M2U2YzQ5ZGZhLi5lYzBjMDNhZGU5MTMgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZ21w Yy90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2dtcGMvdGVtcGxhdGUKQEAgLTYsNyArNiw2IEBAIGJ1 aWxkX3N0eWxlPWdudS1jb25maWd1cmUKIGhvc3RtYWtlZGVwZW5kcz0icGtnLWNvbmZpZyBnb2Iy IGludGx0b29sIHZhbGEiCiBtYWtlZGVwZW5kcz0iZ3RrKy1kZXZlbCBsaWJTTS1kZXZlbCBsaWJt cGQtZGV2ZWwgbGlidW5pcXVlMS1kZXZlbCBsaWJzb3VwLWRldmVsIHNxbGl0ZS1kZXZlbCIKIGRl cGVuZHM9InhkZy11dGlscyBoaWNvbG9yLWljb24tdGhlbWUiCi1jaGVja2RlcGVuZHM9Imdub21l LWRvYy11dGlscyIKIHNob3J0X2Rlc2M9Ikdub21lIE11c2ljIFBsYXllciBDbGllbnQgLSBUaGUg dHJ1ZSBNUEQgY2xpZW50IgogbWFpbnRhaW5lcj0iRGF2ZSBEYXZlbnBvcnQgPHFiYWxsQGdtcGNs aWVudC5vcmc+IgogbGljZW5zZT0iR1BMLTIuMC1vci1sYXRlciIKQEAgLTE2LDEwICsxNSw2IEBA IGNoZWNrc3VtPWE2OTQxNGYzNTM5Njg0NjczMzYzMmNhOTYxOTkyMWQ3YWNkYTUzN2ZmZDZkNDli ZDg0YjQ0NDk0NWNiNzZiMmMKIAogTERGTEFHUz0iLWxtIgogCi1wb3N0X3BhdGNoKCkgewotCXZz ZWQgLWkgLWUgJ3MvREFUQURJUk5BTUU9bGliL0RBVEFESVJOQU1FPXNoYXJlLycgY29uZmlndXJl Ci19Ci0KIGdtcGMtZGV2ZWxfcGFja2FnZSgpIHsKIAlzaG9ydF9kZXNjKz0iIC0gZGV2ZWxvcG1l bnQgZmlsZXMiCiAJZGVwZW5kcz0iZ3RrKy1kZXZlbCBsaWJtcGQtZGV2ZWwiCgpGcm9tIDAyYWFi ZmE4ZjYyNzg1OGM1OGNiZTA1ZGQzNDljMmUwYzhjZWZhZDQgTW9uIFNlcCAxNyAwMDowMDowMCAy MDAxCkZyb206ID0/VVRGLTg/cT89QzQ9OTBvPUMzPUEwbj0yMFRyPUUxPUJBPUE3bj0yMEM9QzM9 QjRuZz0yMERhbmg/PQogPGNvbmdkYW5ocXhAZ21haWwuY29tPgpEYXRlOiBGcmksIDI2IE5vdiAy MDIxIDEzOjAzOjE4ICswNzAwClN1YmplY3Q6IFtQQVRDSCAzLzRdIGduYWM6IGRpc2FibGUgb2xk IGdub21lLWhlbHAgZm9ybWF0CgotLS0KIHNyY3BrZ3MvZ25hYy9wYXRjaGVzL2ZpeC1kZWJ1Zy1s b2cucGF0Y2ggICAgICB8IDI5ICsrKysrKysrKysrKysrKysrKysKIHNyY3BrZ3MvZ25hYy9wYXRj aGVzL25vLWdub21lLWRvYy11dGlscy5wYXRjaCB8IDIwICsrKysrKysrKysrKysKIHNyY3BrZ3Mv Z25hYy9wYXRjaGVzL25vLXBvLWNoZWNrLnBhdGNoICAgICAgICB8ICA3ICsrKysrCiBzcmNwa2dz L2duYWMvdGVtcGxhdGUgICAgICAgICAgICAgICAgICAgICAgICAgfCAgNiArKy0tCiA0IGZpbGVz IGNoYW5nZWQsIDU5IGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCiBjcmVhdGUgbW9kZSAx MDA2NDQgc3JjcGtncy9nbmFjL3BhdGNoZXMvZml4LWRlYnVnLWxvZy5wYXRjaAogY3JlYXRlIG1v ZGUgMTAwNjQ0IHNyY3BrZ3MvZ25hYy9wYXRjaGVzL25vLWdub21lLWRvYy11dGlscy5wYXRjaAog Y3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvZ25hYy9wYXRjaGVzL25vLXBvLWNoZWNrLnBhdGNo CgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9nbmFjL3BhdGNoZXMvZml4LWRlYnVnLWxvZy5wYXRjaCBi L3NyY3BrZ3MvZ25hYy9wYXRjaGVzL2ZpeC1kZWJ1Zy1sb2cucGF0Y2gKbmV3IGZpbGUgbW9kZSAx MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwLi44OGZkMTVkZTZhNTYKLS0tIC9kZXYvbnVsbAorKysg Yi9zcmNwa2dzL2duYWMvcGF0Y2hlcy9maXgtZGVidWctbG9nLnBhdGNoCkBAIC0wLDAgKzEsMjkg QEAKKy0tLSBhL2xpYmduYWMvbGliZ25hYy1kZWJ1Zy5oCisrKysgYi9saWJnbmFjL2xpYmduYWMt ZGVidWcuaAorQEAgLTMyLDcgKzMyLDcgQEAKKyAKKyAjaWYgZGVmaW5lZChfX1NURENfVkVSU0lP Tl9fKSAmJiBfX1NURENfVkVSU0lPTl9fID49IDE5OTkwMUwKKyAjZGVmaW5lIGxpYmduYWNfZGVi dWcoLi4uKSBcCistICAgICAgICBsaWJnbmFjX2RlYnVnX3JlYWwgKF9fZnVuY19fLCBfX0ZJTEVf XywgX19MSU5FX18sIFRSVUUsIF9fVkFfQVJHU19fKQorKyAgICAgICAgbGliZ25hY19kZWJ1Z19y ZWFsIChfX2Z1bmNfXywgX19GSUxFX18sIF9fTElORV9fLCBfX1ZBX0FSR1NfXykKKyAjZWxpZiBk ZWZpbmVkKF9fR05VQ19fKSAmJiBfX0dOVUNfXyA+PSAzCisgI2RlZmluZSBsaWJnbmFjX2RlYnVn KC4uLikgXAorICAgICAgICAgbGliZ25hY19kZWJ1Z19yZWFsIChfX0ZVTkNUSU9OX18sIF9fRklM RV9fLCBfX0xJTkVfXywgX19WQV9BUkdTX18pCitAQCAtNDIsNyArNDIsNyBAQAorIAorICNpZiBk ZWZpbmVkKF9fU1REQ19WRVJTSU9OX18pICYmIF9fU1REQ19WRVJTSU9OX18gPj0gMTk5OTAxTAor ICNkZWZpbmUgbGliZ25hY193YXJuaW5nKC4uLikgXAorLSAgICAgICAgbGliZ25hY193YXJuaW5n X3JlYWwgKF9fZnVuY19fLCBfX0ZJTEVfXywgX19MSU5FX18sIFRSVUUsIF9fVkFfQVJHU19fKQor KyAgICAgICAgbGliZ25hY193YXJuaW5nX3JlYWwgKF9fZnVuY19fLCBfX0ZJTEVfXywgX19MSU5F X18sIF9fVkFfQVJHU19fKQorICNlbGlmIGRlZmluZWQoX19HTlVDX18pICYmIF9fR05VQ19fID49 IDMKKyAjZGVmaW5lIGxpYmduYWNfd2FybmluZyguLi4pIFwKKyAgICAgICAgIGxpYmduYWNfd2Fy bmluZ19yZWFsIChfX0ZVTkNUSU9OX18sIF9fRklMRV9fLCBfX0xJTkVfXywgX19WQV9BUkdTX18p CitAQCAtNTIsNyArNTIsNyBAQAorIAorICNpZiBkZWZpbmVkKF9fU1REQ19WRVJTSU9OX18pICYm IF9fU1REQ19WRVJTSU9OX18gPj0gMTk5OTAxTAorICNkZWZpbmUgbGliZ25hY19jcml0aWNhbCgu Li4pIFwKKy0gICAgICAgIGxpYmduYWNfY3JpdGljYWxfcmVhbCAoX19mdW5jX18sIF9fRklMRV9f LCBfX0xJTkVfXywgVFJVRSwgX19WQV9BUkdTX18pCisrICAgICAgICBsaWJnbmFjX2NyaXRpY2Fs X3JlYWwgKF9fZnVuY19fLCBfX0ZJTEVfXywgX19MSU5FX18sIF9fVkFfQVJHU19fKQorICNlbGlm IGRlZmluZWQoX19HTlVDX18pICYmIF9fR05VQ19fID49IDMKKyAjZGVmaW5lIGxpYmduYWNfY3Jp dGljYWwoLi4uKSBcCisgICAgICAgICBsaWJnbmFjX2NyaXRpY2FsX3JlYWwgKF9fRlVOQ1RJT05f XywgX19GSUxFX18sIF9fTElORV9fLCBfX1ZBX0FSR1NfXykKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mv Z25hYy9wYXRjaGVzL25vLWdub21lLWRvYy11dGlscy5wYXRjaCBiL3NyY3BrZ3MvZ25hYy9wYXRj aGVzL25vLWdub21lLWRvYy11dGlscy5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw MDAwMDAwMDAwMDAuLjAwZjg5YTMzOGRiYwotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvZ25h Yy9wYXRjaGVzL25vLWdub21lLWRvYy11dGlscy5wYXRjaApAQCAtMCwwICsxLDIwIEBACistLS0g YS9jb25maWd1cmUuYWMKKysrKyBiL2NvbmZpZ3VyZS5hYworQEAgLTU1LDcgKzU1LDcgQEAgQU1f R0xJQl9HTlVfR0VUVEVYVAorIGRubCBDaGVjayBmb3IgR1NldHRpbmdzIG1hY3JvcworIEdMSUJf R1NFVFRJTkdTCisgCistR05PTUVfRE9DX0lOSVQoWzAuMTcuMl0pCisrR05PTUVfRE9DX0lOSVQo WzAuMTcuMl0sWzpdLFs6XSkKKyBHTk9NRV9ERUJVR19DSEVDSworIEdOT01FX0NPTVBJTEVfV0FS TklOR1MoW21heGltdW1dKQorIEdOT01FX0NYWF9XQVJOSU5HUyhbeWVzXSkKKy0tLSBhL01ha2Vm aWxlLmFtCisrKysgYi9NYWtlZmlsZS5hbQorQEAgLTEsNiArMSw1IEBACisgU1VCRElSUyA9IFwK KyAJZGF0YSBcCistCWhlbHAgXAorIAlsaWJnbmFjIFwKKyAJbWFuIFwKKyAJcG8gXApkaWZmIC0t Z2l0IGEvc3JjcGtncy9nbmFjL3BhdGNoZXMvbm8tcG8tY2hlY2sucGF0Y2ggYi9zcmNwa2dzL2du YWMvcGF0Y2hlcy9uby1wby1jaGVjay5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw MDAwMDAwMDAwMDAuLmJmMWRkYjRhOWU3ZAotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvZ25h Yy9wYXRjaGVzL25vLXBvLWNoZWNrLnBhdGNoCkBAIC0wLDAgKzEsNyBAQAorLS0tIGEvcG8vUE9U RklMRVMuc2tpcAorKysrIGIvcG8vUE9URklMRVMuc2tpcAorQEAgLTEsMyArMSw0IEBACisgIyBM aXN0IG9mIHNvdXJjZSBmaWxlcyB0aGF0IHNob3VsZCBOT1QgYmUgdHJhbnNsYXRlZC4KKyAjIFBs ZWFzZSBrZWVwIHRoaXMgZmlsZSBzb3J0ZWQgYWxwaGFiZXRpY2FsbHkuCisgZGF0YS9nbmFjLmRl c2t0b3AuaW4KKytpbnRsL3BsdXJhbC5jCmRpZmYgLS1naXQgYS9zcmNwa2dzL2duYWMvdGVtcGxh dGUgYi9zcmNwa2dzL2duYWMvdGVtcGxhdGUKaW5kZXggYWQwMWExZTk3ZjkxLi45ZmVhNmEzNzBl ODcgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZ25hYy90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2duYWMv dGVtcGxhdGUKQEAgLTEsMTUgKzEsMTUgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2duYWMnCiBw a2duYW1lPWduYWMKIHZlcnNpb249MC4yLjQuMQotcmV2aXNpb249MworcmV2aXNpb249NAogYnVp bGRfc3R5bGU9Z251LWNvbmZpZ3VyZQogY29uZmlndXJlX2FyZ3M9Ii0tZGlzYWJsZS1zY3JvbGxr ZWVwZXIgLS1kaXNhYmxlLXNjaGVtYXMtY29tcGlsZSIKIGhvc3RtYWtlZGVwZW5kcz0iZ25vbWUt Y29tbW9uIGdldHRleHQtZGV2ZWwgcGtnLWNvbmZpZyBpbnRsdG9vbCBsaWJ0b29sCi0gZ25vbWUt ZG9jLXV0aWxzIGdsaWItZGV2ZWwgZ3RrKzMtZGV2ZWwgZ3N0LXBsdWdpbnMtYmFzZTEtZGV2ZWwK KyBnbGliLWRldmVsIGd0ayszLWRldmVsIGdzdC1wbHVnaW5zLWJhc2UxLWRldmVsCiAgYXV0b2Nv bmYtYXJjaGl2ZSB3aGljaCIKIG1ha2VkZXBlbmRzPSJsaWJ4bWwyLWRldmVsIGd0ayszLWRldmVs IGdzdC1wbHVnaW5zLWJhc2UxLWRldmVsIGxpYnVuaXF1ZS1kZXZlbAogIGxpYm5vdGlmeS1kZXZl bCBnc3QtcGx1Z2lucy1nb29kMSBnc3QtcGx1Z2lucy1iYWQxIGdzdC1wbHVnaW5zLXVnbHkxCi0g ZGVza3RvcC1maWxlLXV0aWxzIGhpY29sb3ItaWNvbi10aGVtZSBnbm9tZS1kb2MtdXRpbHMiCisg ZGVza3RvcC1maWxlLXV0aWxzIGhpY29sb3ItaWNvbi10aGVtZSIKIGRlcGVuZHM9ImdzdC1wbHVn aW5zLWdvb2QxIGdzdC1wbHVnaW5zLWJhZDEgZ3N0LXBsdWdpbnMtdWdseTEKICBkZXNrdG9wLWZp bGUtdXRpbHMgaGljb2xvci1pY29uLXRoZW1lIgogc2hvcnRfZGVzYz0iQXVkaW8gY29udmVyc2lv biBwcm9ncmFtIGZvciB0aGUgR25vbWUgZGVza3RvcCIKCkZyb20gZjhmNjIwNzgxNTRiOTc3YTY4 OTk1YmQ2MmViYThlY2Q5YzEwY2ZjOSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogPT9V VEYtOD9xPz1DND05MG89QzM9QTBuPTIwVHI9RTE9QkE9QTduPTIwQz1DMz1CNG5nPTIwRGFuaD89 CiA8Y29uZ2RhbmhxeEBnbWFpbC5jb20+CkRhdGU6IEZyaSwgMjYgTm92IDIwMjEgMTM6MDU6MzMg KzA3MDAKU3ViamVjdDogW1BBVENIIDQvNF0gZ25vbWUtZG9jLXV0aWxzOiByZW1vdmUKCi0tLQog c3JjcGtncy9nbm9tZS1kb2MtdXRpbHMvcGF0Y2hlcy9weXRob24zLnBhdGNoIHwgNTIxIC0tLS0t LS0tLS0tLS0tLS0tLQogc3JjcGtncy9nbm9tZS1kb2MtdXRpbHMvdGVtcGxhdGUgICAgICAgICAg ICAgIHwgIDIxIC0KIHNyY3BrZ3MvcmVtb3ZlZC1wYWNrYWdlcy90ZW1wbGF0ZSAgICAgICAgICAg ICB8ICAgMSArCiAzIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCA1NDIgZGVsZXRpb25z KC0pCiBkZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtncy9nbm9tZS1kb2MtdXRpbHMvcGF0Y2hlcy9w eXRob24zLnBhdGNoCiBkZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtncy9nbm9tZS1kb2MtdXRpbHMv dGVtcGxhdGUKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2dub21lLWRvYy11dGlscy9wYXRjaGVzL3B5 dGhvbjMucGF0Y2ggYi9zcmNwa2dzL2dub21lLWRvYy11dGlscy9wYXRjaGVzL3B5dGhvbjMucGF0 Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDI4NGUzOGU3NzVkZS4uMDAwMDAwMDAw MDAwCi0tLSBhL3NyY3BrZ3MvZ25vbWUtZG9jLXV0aWxzL3BhdGNoZXMvcHl0aG9uMy5wYXRjaAor KysgL2Rldi9udWxsCkBAIC0xLDUyMSArMCwwIEBACi10YWtlbiBmcm9tIGZlZG9yYSwgYWxwaW5l LCBnZW50b28KLWRpZmYgLVUzIC1yIGdub21lLWRvYy11dGlscy0wLjIwLjEwLm9yaWcveG1sMnBv L3htbDJwby9fX2luaXRfXy5weSBnbm9tZS1kb2MtdXRpbHMtMC4yMC4xMC94bWwycG8veG1sMnBv L19faW5pdF9fLnB5Ci0tLS0gZ25vbWUtZG9jLXV0aWxzLTAuMjAuMTAub3JpZy94bWwycG8veG1s MnBvL19faW5pdF9fLnB5CTIwMTEtMDgtMDQgMDk6MzY6MDMuMDAwMDAwMDAwIC0wNTAwCi0rKysg Z25vbWUtZG9jLXV0aWxzLTAuMjAuMTAveG1sMnBvL3htbDJwby9fX2luaXRfXy5weQkyMDE5LTA5 LTEwIDA5OjMwOjI4LjAxODYyNzkxOSAtMDUwMAotQEAgLTg2LDE0ICs4NiwxNCBAQAotICAgICAg ICAgICAgICAgICBzZWxmLm1lc3NhZ2VzLmFwcGVuZCh0KQotICAgICAgICAgICAgICAgICBpZiBz cGFjZXByZXNlcnZlOgotICAgICAgICAgICAgICAgICAgICAgc2VsZi5ub3dyYXBbdF0gPSBUcnVl Ci0tICAgICAgICAgICAgICAgIGlmIHQgaW4gc2VsZi5saW5lbm9zLmtleXMoKToKLSsgICAgICAg ICAgICAgICAgaWYgdCBpbiBsaXN0KHNlbGYubGluZW5vcy5rZXlzKCkpOgotICAgICAgICAgICAg ICAgICAgICAgc2VsZi5saW5lbm9zW3RdLmFwcGVuZCgoc2VsZi5maWxlbmFtZSwgdGFnLCBsaW5l bm8pKQotICAgICAgICAgICAgICAgICBlbHNlOgotICAgICAgICAgICAgICAgICAgICAgc2VsZi5s aW5lbm9zW3RdID0gWyAoc2VsZi5maWxlbmFtZSwgdGFnLCBsaW5lbm8pIF0KLSAgICAgICAgICAg ICAgICAgaWYgKG5vdCBzZWxmLmRvX3RyYW5zbGF0aW9ucykgYW5kIGNvbW1lbnQgYW5kIG5vdCB0 IGluIHNlbGYuY29tbWVudHM6Ci0gICAgICAgICAgICAgICAgICAgICBzZWxmLmNvbW1lbnRzW3Rd ID0gY29tbWVudAotICAgICAgICAgICAgIGVsc2U6Ci0tICAgICAgICAgICAgICAgIGlmIHQgaW4g c2VsZi5saW5lbm9zLmtleXMoKToKLSsgICAgICAgICAgICAgICAgaWYgdCBpbiBsaXN0KHNlbGYu bGluZW5vcy5rZXlzKCkpOgotICAgICAgICAgICAgICAgICAgICAgc2VsZi5saW5lbm9zW3RdLmFw cGVuZCgoc2VsZi5maWxlbmFtZSwgdGFnLCBsaW5lbm8pKQotICAgICAgICAgICAgICAgICBlbHNl OgotICAgICAgICAgICAgICAgICAgICAgc2VsZi5saW5lbm9zW3RdID0gWyAoc2VsZi5maWxlbmFt ZSwgdGFnLCBsaW5lbm8pIF0KLUBAIC0xNjYsNyArMTY2LDcgQEAKLSAgICAgICAgIGVsaWYgbm9k ZS5pc1RleHQoKToKLSAgICAgICAgICAgICBpZiBub2RlLmlzQmxhbmtOb2RlKCk6Ci0gICAgICAg ICAgICAgICAgIGlmIHNlbGYuYXBwLm9wdGlvbnMuZ2V0KCdleHBhbmRfZW50aXRpZXMnKSBvciBc Ci0tICAgICAgICAgICAgICAgICAgKG5vdCAobm9kZS5wcmV2IGFuZCBub3Qgbm9kZS5wcmV2Lmlz QmxhbmtOb2RlKCkgYW5kIG5vZGUubmV4dCBhbmQgbm90IG5vZGUubmV4dC5pc0JsYW5rTm9kZSgp KSApOgotKyAgICAgICAgICAgICAgICAgIChub3QgKG5vZGUucHJldiBhbmQgbm90IG5vZGUucHJl di5pc0JsYW5rTm9kZSgpIGFuZCBub2RlLl9fbmV4dF9fIGFuZCBub3Qgbm9kZS5uZXh0LmlzQmxh bmtOb2RlKCkpICk6Ci0gICAgICAgICAgICAgICAgICAgICAjcHJpbnQgPj5zeXMuc3RkZXJyLCAi QkxBTksiCi0gICAgICAgICAgICAgICAgICAgICBub2RlLnNldENvbnRlbnQoJycpCi0gICAgICAg ICAgICAgZWxzZToKLUBAIC0xNzYsNyArMTc2LDcgQEAKLSAgICAgICAgICAgICBjaGlsZCA9IG5v ZGUuY2hpbGRyZW4KLSAgICAgICAgICAgICB3aGlsZSBjaGlsZDoKLSAgICAgICAgICAgICAgICAg c2VsZi5ub3JtYWxpemVOb2RlKGNoaWxkKQotLSAgICAgICAgICAgICAgICBjaGlsZCA9IGNoaWxk Lm5leHQKLSsgICAgICAgICAgICAgICAgY2hpbGQgPSBjaGlsZC5fX25leHRfXwotIAotICAgICBk ZWYgbm9ybWFsaXplU3RyaW5nKHNlbGYsIHRleHQsIHNwYWNlcHJlc2VydmUgPSBGYWxzZSk6Ci0g ICAgICAgICAiIiJOb3JtYWxpemVzIHN0cmluZyB0byBiZSB1c2VkIGFzIGtleSBmb3IgZ2V0dGV4 dCBsb29rdXAuCi1AQCAtMjAwLDcgKzIwMCw3IEBACi0gICAgICAgICAgICAgdHJlZSA9IGN0eHQu ZG9jKCkKLSAgICAgICAgICAgICBuZXdub2RlID0gdHJlZS5nZXRSb290RWxlbWVudCgpCi0gICAg ICAgICBleGNlcHQ6Ci0tICAgICAgICAgICAgcHJpbnQgPj4gc3lzLnN0ZGVyciwgIiIiRXJyb3Ig d2hpbGUgbm9ybWFsaXppbmcgc3RyaW5nIGFzIFhNTDpcbiIlcyJcbiIiIiAlICh0ZXh0KQotKyAg ICAgICAgICAgIHByaW50KCIiIkVycm9yIHdoaWxlIG5vcm1hbGl6aW5nIHN0cmluZyBhcyBYTUw6 XG4iJXMiXG4iIiIgJSAodGV4dCksIGZpbGU9c3lzLnN0ZGVycikKLSAgICAgICAgICAgICByZXR1 cm4gdGV4dAotIAotICAgICAgICAgc2VsZi5ub3JtYWxpemVOb2RlKG5ld25vZGUpCi1AQCAtMjA5 LDcgKzIwOSw3IEBACi0gICAgICAgICBjaGlsZCA9IG5ld25vZGUuY2hpbGRyZW4KLSAgICAgICAg IHdoaWxlIGNoaWxkOgotICAgICAgICAgICAgIHJlc3VsdCArPSBjaGlsZC5zZXJpYWxpemUoJ3V0 Zi04JykKLS0gICAgICAgICAgICBjaGlsZCA9IGNoaWxkLm5leHQKLSsgICAgICAgICAgICBjaGls ZCA9IGNoaWxkLl9fbmV4dF9fCi0gCi0gICAgICAgICByZXN1bHQgPSByZS5zdWIoJ14gJywnJywg cmVzdWx0KQotICAgICAgICAgcmVzdWx0ID0gcmUuc3ViKCcgJCcsJycsIHJlc3VsdCkKLUBAIC0y MzUsNyArMjM1LDcgQEAKLSAgICAgICAgIGN0eHQucGFyc2VEb2N1bWVudCgpCi0gICAgICAgICB0 cmVlID0gY3R4dC5kb2MoKQotICAgICAgICAgaWYgbmV4dDoKLS0gICAgICAgICAgICBuZXdub2Rl ID0gdHJlZS5jaGlsZHJlbi5uZXh0Ci0rICAgICAgICAgICAgbmV3bm9kZSA9IHRyZWUuY2hpbGRy ZW4uX19uZXh0X18KLSAgICAgICAgIGVsc2U6Ci0gICAgICAgICAgICAgbmV3bm9kZSA9IHRyZWUu Y2hpbGRyZW4KLSAKLUBAIC0yNDMsNyArMjQzLDcgQEAKLSAgICAgICAgIGNoaWxkID0gbmV3bm9k ZS5jaGlsZHJlbgotICAgICAgICAgd2hpbGUgY2hpbGQ6Ci0gICAgICAgICAgICAgcmVzdWx0ICs9 IGNoaWxkLnNlcmlhbGl6ZSgndXRmLTgnKQotLSAgICAgICAgICAgIGNoaWxkID0gY2hpbGQubmV4 dAotKyAgICAgICAgICAgIGNoaWxkID0gY2hpbGQuX19uZXh0X18KLSAgICAgICAgIHRyZWUuZnJl ZURvYygpCi0gICAgICAgICByZXR1cm4gcmVzdWx0Ci0gCi1AQCAtMjYyLDcgKzI2Miw3IEBACi0g ICAgICAgICAgICAgICAgICAgICAgICAgcmVzdWx0ICs9IGNoaWxkLmNvbnRlbnQuZGVjb2RlKCd1 dGYtOCcpCi0gICAgICAgICAgICAgICAgIGVsc2U6Ci0gICAgICAgICAgICAgICAgICAgICByZXN1 bHQgKz0gc2VsZi5teUF0dHJpYnV0ZVNlcmlhbGl6ZShjaGlsZCkKLS0gICAgICAgICAgICAgICAg Y2hpbGQgPSBjaGlsZC5uZXh0Ci0rICAgICAgICAgICAgICAgIGNoaWxkID0gY2hpbGQuX19uZXh0 X18KLSAgICAgICAgIGVsc2U6Ci0gICAgICAgICAgICAgcmVzdWx0ID0gbm9kZS5zZXJpYWxpemUo J3V0Zi04JykKLSAgICAgICAgIHJldHVybiByZXN1bHQKLUBAIC0zMzgsNyArMzM4LDcgQEAKLSAg ICAgICAgICAgICAgICAgcGFzcwotIAotICAgICAgICAgICAgIGlmIG5vdCBuZXdub2RlOgotLSAg ICAgICAgICAgICAgICBwcmludCA+PiBzeXMuc3RkZXJyLCAiIiJFcnJvciB3aGlsZSBwYXJzaW5n IHRyYW5zbGF0aW9uIGFzIFhNTDpcbiIlcyJcbiIiIiAlICh0ZXh0LmVuY29kZSgndXRmLTgnKSkK LSsgICAgICAgICAgICAgICAgcHJpbnQoIiIiRXJyb3Igd2hpbGUgcGFyc2luZyB0cmFuc2xhdGlv biBhcyBYTUw6XG4iJXMiXG4iIiIgJSAodGV4dC5lbmNvZGUoJ3V0Zi04JykpLCBmaWxlPXN5cy5z dGRlcnIpCi0gICAgICAgICAgICAgICAgIHJldHVybgotIAotICAgICAgICAgICAgIG5ld2VsZW0g PSBuZXdub2RlLmdldFJvb3RFbGVtZW50KCkKLUBAIC0zNDYsMTMgKzM0NiwxMyBAQAotICAgICAg ICAgICAgIGlmIG5ld2VsZW0gYW5kIG5ld2VsZW0uY2hpbGRyZW46Ci0gICAgICAgICAgICAgICAg IGZyZWUgPSBub2RlLmNoaWxkcmVuCi0gICAgICAgICAgICAgICAgIHdoaWxlIGZyZWU6Ci0tICAg ICAgICAgICAgICAgICAgICBuZXh0ID0gZnJlZS5uZXh0Ci0rICAgICAgICAgICAgICAgICAgICBu ZXh0ID0gZnJlZS5fX25leHRfXwotICAgICAgICAgICAgICAgICAgICAgZnJlZS51bmxpbmtOb2Rl KCkKLSAgICAgICAgICAgICAgICAgICAgIGZyZWUgPSBuZXh0Ci0gCi0gICAgICAgICAgICAgICAg IGlmIG5vZGU6Ci0gICAgICAgICAgICAgICAgICAgICBjb3B5ID0gbmV3ZWxlbS5jb3B5Tm9kZUxp c3QoKQotLSAgICAgICAgICAgICAgICAgICAgbmV4dCA9IG5vZGUubmV4dAotKyAgICAgICAgICAg ICAgICAgICAgbmV4dCA9IG5vZGUuX19uZXh0X18KLSAgICAgICAgICAgICAgICAgICAgIG5vZGUu cmVwbGFjZU5vZGUobmV3ZWxlbS5jb3B5Tm9kZUxpc3QoKSkKLSAgICAgICAgICAgICAgICAgICAg IG5vZGUubmV4dCA9IG5leHQKLSAKLUBAIC0zNzgsNyArMzc4LDcgQEAKLSAgICAgICAgICAgICBp ZiBjaGlsZC50eXBlIGluIFsndGV4dCddIGFuZCAgY2hpbGQuY29udGVudC5zdHJpcCgpIT0nJzoK LSAgICAgICAgICAgICAgICAgZmluYWwgPSBUcnVlCi0gICAgICAgICAgICAgICAgIGJyZWFrCi0t ICAgICAgICAgICAgY2hpbGQgPSBjaGlsZC5uZXh0Ci0rICAgICAgICAgICAgY2hpbGQgPSBjaGls ZC5fX25leHRfXwotIAotICAgICAgICAgbm9kZS5fX2F1dG9maW5hbF9fID0gZmluYWwKLSAgICAg ICAgIHJldHVybiBmaW5hbAotQEAgLTQ1Nyw3ICs0NTcsNyBAQAotICAgICAgICAgICAgICAgICAg ICAgb3V0dHh0ICs9ICc8JXM+JXM8LyVzPicgJSAoc3RhcnR0YWcsIGNvbnRlbnQsIGVuZHRhZykK LSAgICAgICAgICAgICAgICAgZWxzZToKLSAgICAgICAgICAgICAgICAgICAgIG91dHR4dCArPSBz ZWxmLmRvU2VyaWFsaXplKGNoaWxkKQotLSAgICAgICAgICAgIGNoaWxkID0gY2hpbGQubmV4dAot KyAgICAgICAgICAgIGNoaWxkID0gY2hpbGQuX19uZXh0X18KLSAKLSAgICAgICAgIGlmIHNlbGYu YXBwLm9wZXJhdGlvbiA9PSAnbWVyZ2UnOgotICAgICAgICAgICAgIG5vcm1fb3V0dHh0ID0gc2Vs Zi5ub3JtYWxpemVTdHJpbmcob3V0dHh0LCBzZWxmLmFwcC5pc1NwYWNlUHJlc2VydmVOb2RlKG5v ZGUpKQotQEAgLTUzNCw3ICs1MzQsNyBAQAotICAgICAgICAgICAgIG91dHR4dCA9ICcnCi0gICAg ICAgICAgICAgd2hpbGUgY2hpbGQ6Ci0gICAgICAgICAgICAgICAgIG91dHR4dCArPSBzZWxmLmRv U2VyaWFsaXplKGNoaWxkKQotLSAgICAgICAgICAgICAgICBjaGlsZCA9IGNoaWxkLm5leHQKLSsg ICAgICAgICAgICAgICAgY2hpbGQgPSBjaGlsZC5fX25leHRfXwotICAgICAgICAgICAgIHJldHVy biBvdXR0eHQKLSAKLSBkZWYgeG1sX2Vycm9yX2hhbmRsZXIoYXJnLCBjdHh0KToKLUBAIC01Nzcs OCArNTc3LDggQEAKLSAgICAgICAgICAgICAgICAgcmFpc2UgSU9FcnJvcigiVW5hYmxlIHRvIHJl YWQgZmlsZSAnJXMnIiAlIHhtbGZpbGUpCi0gICAgICAgICAgICAgdHJ5OgotICAgICAgICAgICAg ICAgICBkb2MgPSBYTUxEb2N1bWVudCh4bWxmaWxlLCBzZWxmKQotLSAgICAgICAgICAgIGV4Y2Vw dCBFeGNlcHRpb24sIGU6Ci0tICAgICAgICAgICAgICAgIHByaW50ID4+IHN5cy5zdGRlcnIsICJV bmFibGUgdG8gcGFyc2UgWE1MIGZpbGUgJyVzJzogJXMiICUgKHhtbGZpbGUsIHN0cihlKSkKLSsg ICAgICAgICAgICBleGNlcHQgRXhjZXB0aW9uIGFzIGU6Ci0rICAgICAgICAgICAgICAgIHByaW50 KCJVbmFibGUgdG8gcGFyc2UgWE1MIGZpbGUgJyVzJzogJXMiICUgKHhtbGZpbGUsIHN0cihlKSks IGZpbGU9c3lzLnN0ZGVycikKLSAgICAgICAgICAgICAgICAgc3lzLmV4aXQoMSkKLSAgICAgICAg ICAgICBzZWxmLmN1cnJlbnRfbW9kZS5wcmVQcm9jZXNzWG1sKGRvYy5kb2MsIHNlbGYubXNnKQot ICAgICAgICAgICAgIGRvYy5nZW5lcmF0ZV9tZXNzYWdlcygpCi1AQCAtNTkwLDE0ICs1OTAsMTQg QEAKLSAgICAgICAgICAgICByYWlzZSBJT0Vycm9yKCJVbmFibGUgdG8gcmVhZCBmaWxlICclcyci ICUgeG1sZmlsZSkKLSAgICAgICAgIHRyeToKLSAgICAgICAgICAgICBkb2MgPSBYTUxEb2N1bWVu dCh4bWxmaWxlLCBzZWxmKQotLSAgICAgICAgZXhjZXB0IEV4Y2VwdGlvbiwgZToKLS0gICAgICAg ICAgICBwcmludCA+PiBzeXMuc3RkZXJyLCBzdHIoZSkKLSsgICAgICAgIGV4Y2VwdCBFeGNlcHRp b24gYXMgZToKLSsgICAgICAgICAgICBwcmludChzdHIoZSksIGZpbGU9c3lzLnN0ZGVycikKLSAg ICAgICAgICAgICBzeXMuZXhpdCgxKQotIAotICAgICAgICAgdHJ5OgotICAgICAgICAgICAgIG1m aWxlID0gb3Blbihtb2ZpbGUsICJyYiIpCi0gICAgICAgICBleGNlcHQ6Ci0tICAgICAgICAgICAg cHJpbnQgPj4gc3lzLnN0ZGVyciwgIkNhbid0IG9wZW4gTU8gZmlsZSAnJXMnLiIgJSAobW9maWxl KQotKyAgICAgICAgICAgIHByaW50KCJDYW4ndCBvcGVuIE1PIGZpbGUgJyVzJy4iICUgKG1vZmls ZSksIGZpbGU9c3lzLnN0ZGVycikKLSAgICAgICAgIHNlbGYuZ3QgPSBnZXR0ZXh0LkdOVVRyYW5z bGF0aW9ucyhtZmlsZSkKLSAgICAgICAgIHNlbGYuZ3QuYWRkX2ZhbGxiYWNrKE5vbmVUcmFuc2xh dGlvbnMoKSkKLSAgICAgICAgICMgSGFzIHByZVByb2Nlc3NYbWwgdXNlIGNhc2VzIGZvciBtZXJn ZT8KLUBAIC02MTksMTYgKzYxOSwxNiBAQAotICAgICAgICAgICAgIHJhaXNlIElPRXJyb3IoIlVu YWJsZSB0byByZWFkIGZpbGUgJyVzJyIgJSB4bWxmaWxlKQotICAgICAgICAgdHJ5OgotICAgICAg ICAgICAgIGRvYyA9IFhNTERvY3VtZW50KHhtbGZpbGUsIHNlbGYpCi0tICAgICAgICBleGNlcHQg RXhjZXB0aW9uLCBlOgotLSAgICAgICAgICAgIHByaW50ID4+IHN5cy5zdGRlcnIsIHN0cihlKQot KyAgICAgICAgZXhjZXB0IEV4Y2VwdGlvbiBhcyBlOgotKyAgICAgICAgICAgIHByaW50KHN0cihl KSwgZmlsZT1zeXMuc3RkZXJyKQotICAgICAgICAgICAgIHN5cy5leGl0KDEpCi0gICAgICAgICBk b2MuZ2VuZXJhdGVfbWVzc2FnZXMoKQotIAotICAgICAgICAgc2VsZi5tc2cudHJhbnNsYXRpb25z Rm9sbG93KCkKLSAgICAgICAgIHRyeToKLSAgICAgICAgICAgICBkb2MgPSBYTUxEb2N1bWVudChv cmlneG1sLCBzZWxmKQotLSAgICAgICAgZXhjZXB0IEV4Y2VwdGlvbiwgZToKLS0gICAgICAgICAg ICBwcmludCA+PiBzeXMuc3RkZXJyLCBzdHIoZSkKLSsgICAgICAgIGV4Y2VwdCBFeGNlcHRpb24g YXMgZToKLSsgICAgICAgICAgICBwcmludChzdHIoZSksIGZpbGU9c3lzLnN0ZGVycikKLSAgICAg ICAgICAgICBzeXMuZXhpdCgxKQotICAgICAgICAgZG9jLmdlbmVyYXRlX21lc3NhZ2VzKCkKLSAg ICAgICAgIHNlbGYub3V0cHV0X3BvKCkKLWRpZmYgLVUzIC1yIGdub21lLWRvYy11dGlscy0wLjIw LjEwLm9yaWcveG1sMnBvL3htbDJwby9tb2Rlcy9kb2Nib29rLnB5IGdub21lLWRvYy11dGlscy0w LjIwLjEwL3htbDJwby94bWwycG8vbW9kZXMvZG9jYm9vay5weQotLS0tIGdub21lLWRvYy11dGls cy0wLjIwLjEwLm9yaWcveG1sMnBvL3htbDJwby9tb2Rlcy9kb2Nib29rLnB5CTIwMTEtMDEtMTAg MTA6MDg6MTAuMDAwMDAwMDAwIC0wNjAwCi0rKysgZ25vbWUtZG9jLXV0aWxzLTAuMjAuMTAveG1s MnBvL3htbDJwby9tb2Rlcy9kb2Nib29rLnB5CTIwMTktMDktMTAgMDk6MzE6MTUuMTk5NTcyMjg2 IC0wNTAwCi1AQCAtNDMsNyArNDMsNyBAQAotIGV4Y2VwdCBJbXBvcnRFcnJvcjoKLSAgICAgZnJv bSBtZDUgaW1wb3J0IG5ldyBhcyBtZDVfbmV3Ci0gCi0tZnJvbSBiYXNpYyBpbXBvcnQgYmFzaWNY bWxNb2RlCi0rZnJvbSAuYmFzaWMgaW1wb3J0IGJhc2ljWG1sTW9kZQotIAotIGNsYXNzIGRvY2Jv b2tYbWxNb2RlKGJhc2ljWG1sTW9kZSk6Ci0gICAgICIiIkNsYXNzIGZvciBzcGVjaWFsIGhhbmRs aW5nIG9mIERvY0Jvb2sgZG9jdW1lbnQgdHlwZXMuCi1AQCAtMTMxLDcgKzEzMSw3IEBACi0gICAg ICAgICAgICAgICAgICAgICBoYXNoID0gc2VsZi5fbWQ1X2Zvcl9maWxlKGZ1bGxwYXRoKQotICAg ICAgICAgICAgICAgICBlbHNlOgotICAgICAgICAgICAgICAgICAgICAgaGFzaCA9ICJUSElTIEZJ TEUgRE9FU04nVCBFWElTVCIKLS0gICAgICAgICAgICAgICAgICAgIHByaW50ID4+c3lzLnN0ZGVy ciwgIldhcm5pbmc6IGltYWdlIGZpbGUgJyVzJyBub3QgZm91bmQuIiAlIGZ1bGxwYXRoCi0rICAg ICAgICAgICAgICAgICAgICBwcmludCgiV2FybmluZzogaW1hZ2UgZmlsZSAnJXMnIG5vdCBmb3Vu ZC4iICUgZnVsbHBhdGgsIGZpbGU9c3lzLnN0ZGVycikKLSAKLSAgICAgICAgICAgICAgICAgbXNn Lm91dHB1dE1lc3NhZ2UoIkBAaW1hZ2U6ICclcyc7IG1kNT0lcyIgJSAoYXR0ciwgaGFzaCksIG5v ZGUubGluZU5vKCksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJXaGVuIGlt YWdlIGNoYW5nZXMsIHRoaXMgbWVzc2FnZSB3aWxsIGJlIG1hcmtlZCBmdXp6eSBvciB1bnRyYW5z bGF0ZWQgZm9yIHlvdS5cbiIrCi1AQCAtMTk4LDEwICsxOTgsMTAgQEAKLSAjIFBlcmZvcm0gc29t ZSB0ZXN0cyB3aGVuIHJhbiBzdGFuZGFsb25lCi0gaWYgX19uYW1lX18gPT0gJ19fbWFpbl9fJzoK LSAgICAgdGVzdCA9IGRvY2Jvb2tYbWxNb2RlKCkKLS0gICAgcHJpbnQgIklnbm9yZWQgdGFncyAg ICAgICA6ICIgKyByZXByKHRlc3QuZ2V0SWdub3JlZFRhZ3MoKSkKLS0gICAgcHJpbnQgIkZpbmFs IHRhZ3MgICAgICAgICA6ICIgKyByZXByKHRlc3QuZ2V0RmluYWxUYWdzKCkpCi0tICAgIHByaW50 ICJTcGFjZS1wcmVzZXJ2ZSB0YWdzOiAiICsgcmVwcih0ZXN0LmdldFNwYWNlUHJlc2VydmVUYWdz KCkpCi0rICAgIHByaW50KCJJZ25vcmVkIHRhZ3MgICAgICAgOiAiICsgcmVwcih0ZXN0LmdldEln bm9yZWRUYWdzKCkpKQotKyAgICBwcmludCgiRmluYWwgdGFncyAgICAgICAgIDogIiArIHJlcHIo dGVzdC5nZXRGaW5hbFRhZ3MoKSkpCi0rICAgIHByaW50KCJTcGFjZS1wcmVzZXJ2ZSB0YWdzOiAi ICsgcmVwcih0ZXN0LmdldFNwYWNlUHJlc2VydmVUYWdzKCkpKQotIAotLSAgICBwcmludCAiQ3Jl ZGl0cyBmcm9tIHN0cmluZzogJyVzJyIgJSB0ZXN0LmdldFN0cmluZ0ZvclRyYW5zbGF0b3JzKCkK LS0gICAgcHJpbnQgIkV4cGxhbmF0aW9uIGZvciBjcmVkaXRzOlxuXHQnJXMnIiAlIHRlc3QuZ2V0 Q29tbWVudEZvclRyYW5zbGF0b3JzKCkKLSsgICAgcHJpbnQoIkNyZWRpdHMgZnJvbSBzdHJpbmc6 ICclcyciICUgdGVzdC5nZXRTdHJpbmdGb3JUcmFuc2xhdG9ycygpKQotKyAgICBwcmludCgiRXhw bGFuYXRpb24gZm9yIGNyZWRpdHM6XG5cdCclcyciICUgdGVzdC5nZXRDb21tZW50Rm9yVHJhbnNs YXRvcnMoKSkKLSAKLWRpZmYgLVUzIC1yIGdub21lLWRvYy11dGlscy0wLjIwLjEwLm9yaWcveG1s MnBvL3htbDJwby9tb2Rlcy9ncy5weSBnbm9tZS1kb2MtdXRpbHMtMC4yMC4xMC94bWwycG8veG1s MnBvL21vZGVzL2dzLnB5Ci0tLS0gZ25vbWUtZG9jLXV0aWxzLTAuMjAuMTAub3JpZy94bWwycG8v eG1sMnBvL21vZGVzL2dzLnB5CTIwMTAtMTItMTMgMTA6MTQ6MDcuMDAwMDAwMDAwIC0wNjAwCi0r KysgZ25vbWUtZG9jLXV0aWxzLTAuMjAuMTAveG1sMnBvL3htbDJwby9tb2Rlcy9ncy5weQkyMDE5 LTA5LTEwIDA5OjMxOjE1LjIwMTU3MjI4NCAtMDUwMAotQEAgLTIwLDcgKzIwLDcgQEAKLSAjIFNw ZWNpYWwgY2FzZSBHbm9tZSBTdW1tYXJ5Ci0gIwotIAotLWZyb20gYmFzaWMgaW1wb3J0IGJhc2lj WG1sTW9kZQotK2Zyb20gLmJhc2ljIGltcG9ydCBiYXNpY1htbE1vZGUKLSAKLSBjbGFzcyBnc1ht bE1vZGUoYmFzaWNYbWxNb2RlKToKLSAgICAgIiIiQWJzdHJhY3QgY2xhc3MgZm9yIHNwZWNpYWwg aGFuZGxpbmcgb2YgZG9jdW1lbnQgdHlwZXMuIiIiCi1kaWZmIC1VMyAtciBnbm9tZS1kb2MtdXRp bHMtMC4yMC4xMC5vcmlnL3htbDJwby94bWwycG8vbW9kZXMvbWFsbGFyZC5weSBnbm9tZS1kb2Mt dXRpbHMtMC4yMC4xMC94bWwycG8veG1sMnBvL21vZGVzL21hbGxhcmQucHkKLS0tLSBnbm9tZS1k b2MtdXRpbHMtMC4yMC4xMC5vcmlnL3htbDJwby94bWwycG8vbW9kZXMvbWFsbGFyZC5weQkyMDEx LTAxLTEwIDEwOjA4OjUwLjAwMDAwMDAwMCAtMDYwMAotKysrIGdub21lLWRvYy11dGlscy0wLjIw LjEwL3htbDJwby94bWwycG8vbW9kZXMvbWFsbGFyZC5weQkyMDE5LTA5LTEwIDA5OjMxOjE1LjIx MjU3MjI3MSAtMDUwMAotQEAgLTM5LDcgKzM5LDcgQEAKLSBleGNlcHQgSW1wb3J0RXJyb3I6Ci0g ICAgIGZyb20gbWQ1IGltcG9ydCBuZXcgYXMgbWQ1X25ldwotIAotLWZyb20gYmFzaWMgaW1wb3J0 IGJhc2ljWG1sTW9kZQotK2Zyb20gLmJhc2ljIGltcG9ydCBiYXNpY1htbE1vZGUKLSAKLSBjbGFz cyBtYWxsYXJkWG1sTW9kZShiYXNpY1htbE1vZGUpOgotICAgICAiIiJDbGFzcyBmb3Igc3BlY2lh bCBoYW5kbGluZyBvZiBNYWxsYXJkIGRvY3VtZW50IHR5cGVzLiIiIgotQEAgLTExMiw3ICsxMTIs NyBAQAotICAgICAgICAgICAgICAgICAgICAgaGFzaCA9IHNlbGYuX21kNV9mb3JfZmlsZShmdWxs cGF0aCkKLSAgICAgICAgICAgICAgICAgZWxzZToKLSAgICAgICAgICAgICAgICAgICAgIGhhc2gg PSAiVEhJUyBGSUxFIERPRVNOJ1QgRVhJU1QiCi0tICAgICAgICAgICAgICAgICAgICBwcmludCA+ PnN5cy5zdGRlcnIsICJXYXJuaW5nOiBpbWFnZSBmaWxlICclcycgbm90IGZvdW5kLiIgJSBmdWxs cGF0aAotKyAgICAgICAgICAgICAgICAgICAgcHJpbnQoIldhcm5pbmc6IGltYWdlIGZpbGUgJyVz JyBub3QgZm91bmQuIiAlIGZ1bGxwYXRoLCBmaWxlPXN5cy5zdGRlcnIpCi0gICAgICAgICAgICAg ICAgICAgICAKLSAgICAgICAgICAgICAgICAgbXNnLm91dHB1dE1lc3NhZ2UoIkBAaW1hZ2U6ICcl cyc7IG1kNT0lcyIgJSAoYXR0ciwgaGFzaCksIG5vZGUubGluZU5vKCksCi0gICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICJXaGVuIGltYWdlIGNoYW5nZXMsIHRoaXMgbWVzc2FnZSB3 aWxsIGJlIG1hcmtlZCBmdXp6eSBvciB1bnRyYW5zbGF0ZWQgZm9yIHlvdS5cbiIrCi1kaWZmIC1V MyAtciBnbm9tZS1kb2MtdXRpbHMtMC4yMC4xMC5vcmlnL3htbDJwby94bWwycG8vbW9kZXMvdWJ1 bnR1LnB5IGdub21lLWRvYy11dGlscy0wLjIwLjEwL3htbDJwby94bWwycG8vbW9kZXMvdWJ1bnR1 LnB5Ci0tLS0gZ25vbWUtZG9jLXV0aWxzLTAuMjAuMTAub3JpZy94bWwycG8veG1sMnBvL21vZGVz L3VidW50dS5weQkyMDEwLTEyLTEzIDEwOjE0OjA3LjAwMDAwMDAwMCAtMDYwMAotKysrIGdub21l LWRvYy11dGlscy0wLjIwLjEwL3htbDJwby94bWwycG8vbW9kZXMvdWJ1bnR1LnB5CTIwMTktMDkt MTAgMDk6MzE6MTUuMjEzNTcyMjcwIC0wNTAwCi1AQCAtMiw3ICsyLDcgQEAKLSAKLSBpbXBvcnQg bGlieG1sMgotIAotLWZyb20gZG9jYm9vayBpbXBvcnQgZG9jYm9va1htbE1vZGUKLStmcm9tIC5k b2Nib29rIGltcG9ydCBkb2Nib29rWG1sTW9kZQotIAotIGNsYXNzIHVidW50dVhtbE1vZGUgKGRv Y2Jvb2tYbWxNb2RlKToKLSAgICAgIiIiU3BlY2lhbC1jYXNpbmcgVWJ1bnR1IERvY0Jvb2sgd2Vi c2l0ZSBkb2N1bWVudGF0aW9uLiIiIgotZGlmZiAtVTMgLXIgZ25vbWUtZG9jLXV0aWxzLTAuMjAu MTAub3JpZy94bWwycG8veG1sMnBvL21vZGVzL3hodG1sLnB5IGdub21lLWRvYy11dGlscy0wLjIw LjEwL3htbDJwby94bWwycG8vbW9kZXMveGh0bWwucHkKLS0tLSBnbm9tZS1kb2MtdXRpbHMtMC4y MC4xMC5vcmlnL3htbDJwby94bWwycG8vbW9kZXMveGh0bWwucHkJMjAxMC0xMi0xMyAxMDoxNDow Ny4wMDAwMDAwMDAgLTA2MDAKLSsrKyBnbm9tZS1kb2MtdXRpbHMtMC4yMC4xMC94bWwycG8veG1s MnBvL21vZGVzL3hodG1sLnB5CTIwMTktMDktMTAgMDk6MzE6MTUuMjE0NTcyMjY5IC0wNTAwCi1A QCAtMjEsNyArMjEsNyBAQAotICMgVGhpcyBpbXBsZW1lbnRzIHNwZWNpYWwgaW5zdHJ1Y3Rpb25z IGZvciBoYW5kbGluZyBYSFRNTCBkb2N1bWVudHMKLSAjIGluIGEgYmV0dGVyIHdheSwgcGFydGlj dWxhcmx5IHRvIGV4dHJhY3Qgc29tZSBhdHRyaWJ1dGVzIGluIEhUTUwgdGFncwotIAotLWZyb20g YmFzaWMgaW1wb3J0IGJhc2ljWG1sTW9kZQotK2Zyb20gLmJhc2ljIGltcG9ydCBiYXNpY1htbE1v ZGUKLSAKLSBjbGFzcyB4aHRtbFhtbE1vZGUoYmFzaWNYbWxNb2RlKToKLSAgICAgIiIiQ2xhc3Mg Zm9yIHNwZWNpYWwgaGFuZGxpbmcgb2YgWEhUTUwgZG9jdW1lbnQgdHlwZXMuIiIiCi1kaWZmIC1V MyAtciBnbm9tZS1kb2MtdXRpbHMtMC4yMC4xMC5vcmlnL3htbDJwby94bWwycG8veG1sMnBvLnB5 LmluIGdub21lLWRvYy11dGlscy0wLjIwLjEwL3htbDJwby94bWwycG8veG1sMnBvLnB5LmluCi0t LS0gZ25vbWUtZG9jLXV0aWxzLTAuMjAuMTAub3JpZy94bWwycG8veG1sMnBvL3htbDJwby5weS5p bgkyMDEwLTEyLTEzIDEwOjE0OjA3LjAwMDAwMDAwMCAtMDYwMAotKysrIGdub21lLWRvYy11dGls cy0wLjIwLjEwL3htbDJwby94bWwycG8veG1sMnBvLnB5LmluCTIwMTktMDktMTAgMDk6MzA6Mjgu MjE3NjI3Njg0IC0wNTAwCi1AQCAtNDEsOSArNDEsOSBAQAotIGlmIG5vdCBvcy5wYXRoLmV4aXN0 cygnL2Rldi9udWxsJyk6IE5VTExfU1RSSU5HID0gJ05VTCcKLSAKLSBkZWYgdXNhZ2UgKHdpdGhf aGVscCA9IEZhbHNlKToKLS0gICAgcHJpbnQgPj4gc3lzLnN0ZGVyciwgIlVzYWdlOiAgJXMgW09Q VElPTlNdIFtYTUxGSUxFXS4uLiIgJSAoc3lzLmFyZ3ZbMF0pCi0rICAgIHByaW50KCJVc2FnZTog ICVzIFtPUFRJT05TXSBbWE1MRklMRV0uLi4iICUgKHN5cy5hcmd2WzBdKSwgZmlsZT1zeXMuc3Rk ZXJyKQotICAgICBpZiB3aXRoX2hlbHA6Ci0tICAgICAgICBwcmludCA+PiBzeXMuc3RkZXJyLCAi IiIKLSsgICAgICAgIHByaW50KCIiIgotIE9QVElPTlMgbWF5IGJlIHNvbWUgb2Y6Ci0gICAgIC1h ICAgIC0tYXV0b21hdGljLXRhZ3MgICAgIEF1dG9tYXRpY2FsbHkgZGVjaWRlcyBpZiB0YWdzIGFy ZSB0byBiZSBjb25zaWRlcmVkCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImZp bmFsIiBvciBub3QKLUBAIC03Miw3ICs3Miw3IEBACi0gICAgIHVzaW5nIC1wIG9wdGlvbiBmb3Ig ZWFjaCBYTUwgZmlsZToKLSAgICAgICAgICUoY29tbWFuZClzIC1wIGRlLnBvIGNoYXB0ZXIxLnht bCA+IGNoYXB0ZXIxLmRlLnhtbAotICAgICAgICAgJShjb21tYW5kKXMgLXAgZGUucG8gY2hhcHRl cjIueG1sID4gY2hhcHRlcjIuZGUueG1sCi0tIiIiICUgeydjb21tYW5kJzogc3lzLmFyZ3ZbMF19 Ci0rIiIiICUgeydjb21tYW5kJzogc3lzLmFyZ3ZbMF19LCBmaWxlPXN5cy5zdGRlcnIpCi0gCi0g Ci0gZGVmIG1haW4oYXJndik6Ci1AQCAtODIsNyArODIsNyBAQAotIAotICAgICBuYW1lID0gb3Mu cGF0aC5qb2luKG9zLnBhdGguZGlybmFtZShfX2ZpbGVfXyksICcuLicpCi0gICAgIGlmIG9zLnBh dGguZXhpc3RzKG9zLnBhdGguam9pbihuYW1lLCAndGVzdHMnKSk6Ci0tICAgICAgICBwcmludCA+ PiBzeXMuc3RkZXJyLCAnUnVubmluZyBmcm9tIHNvdXJjZSBmb2xkZXIsIG1vZGlmeWluZyBQWVRI T05QQVRIJwotKyAgICAgICAgcHJpbnQoJ1J1bm5pbmcgZnJvbSBzb3VyY2UgZm9sZGVyLCBtb2Rp ZnlpbmcgUFlUSE9OUEFUSCcsIGZpbGU9c3lzLnN0ZGVycikKLSAgICAgICAgIHN5cy5wYXRoLmlu c2VydCgwLCBuYW1lKQotIAotICAgICBmcm9tIHhtbDJwbyBpbXBvcnQgTWFpbgotQEAgLTE0Miwx NCArMTQyLDE0IEBACi0gICAgICAgICBlbGlmIG9wdCBpbiAoJy1vJywgJy0tb3V0cHV0Jyk6Ci0g ICAgICAgICAgICAgb3V0cHV0ID0gYXJnCi0gICAgICAgICBlbGlmIG9wdCBpbiAoJy12JywgJy0t dmVyc2lvbicpOgotLSAgICAgICAgICAgIHByaW50IFZFUlNJT04KLSsgICAgICAgICAgICBwcmlu dChWRVJTSU9OKQotICAgICAgICAgICAgIHN5cy5leGl0KDApCi0gICAgICAgICBlbGlmIG9wdCBp biAoJy1oJywgJy0taGVscCcpOgotICAgICAgICAgICAgIHVzYWdlKFRydWUpCi0gICAgICAgICAg ICAgc3lzLmV4aXQoMCkKLSAKLSAgICAgaWYgb3BlcmF0aW9uID09ICd1cGRhdGUnIGFuZCBvdXRw dXQgIT0gIi0iOgotLSAgICAgICAgcHJpbnQgPj4gc3lzLnN0ZGVyciwgIk9wdGlvbiAnLW8nIGlz IG5vdCB5ZXQgc3VwcG9ydGVkIHdoZW4gdXBkYXRpbmcgdHJhbnNsYXRpb25zIGRpcmVjdGx5LiBJ Z25vcmluZyB0aGlzIG9wdGlvbi4iCi0rICAgICAgICBwcmludCgiT3B0aW9uICctbycgaXMgbm90 IHlldCBzdXBwb3J0ZWQgd2hlbiB1cGRhdGluZyB0cmFuc2xhdGlvbnMgZGlyZWN0bHkuIElnbm9y aW5nIHRoaXMgb3B0aW9uLiIsIGZpbGU9c3lzLnN0ZGVycikKLSAKLSAgICAgIyBUcmVhdCByZW1h aW5pbmcgYXJndW1lbnRzIGFzIFhNTCBmaWxlcwotICAgICBmaWxlbmFtZXMgPSBbXQotQEAgLTE1 OSwxNiArMTU5LDE2IEBACi0gICAgIHRyeToKLSAgICAgICAgIHhtbDJwb19tYWluID0gTWFpbihk ZWZhdWx0X21vZGUsIG9wZXJhdGlvbiwgb3V0cHV0LCBvcHRpb25zKQotICAgICBleGNlcHQgSU9F cnJvcjoKLS0gICAgICAgIHByaW50ID4+IHN5cy5zdGRlcnIsICJFcnJvcjogY2Fubm90IG9wZW4g ZmlsZSAlcyBmb3Igd3JpdGluZy4iICUgKG91dHB1dCkKLSsgICAgICAgIHByaW50KCJFcnJvcjog Y2Fubm90IG9wZW4gZmlsZSAlcyBmb3Igd3JpdGluZy4iICUgKG91dHB1dCksIGZpbGU9c3lzLnN0 ZGVycikKLSAgICAgICAgIHN5cy5leGl0KDUpCi0gCi0gICAgIGlmIG9wZXJhdGlvbiA9PSAnbWVy Z2UnOgotICAgICAgICAgaWYgbGVuKGZpbGVuYW1lcykgPiAxOgotLSAgICAgICAgICAgIHByaW50 ICA+PiBzeXMuc3RkZXJyLCAiRXJyb3I6IFlvdSBjYW4gbWVyZ2UgdHJhbnNsYXRpb25zIHdpdGgg b25seSBvbmUgWE1MIGZpbGUgYXQgYSB0aW1lLiIKLSsgICAgICAgICAgICBwcmludCgiRXJyb3I6 IFlvdSBjYW4gbWVyZ2UgdHJhbnNsYXRpb25zIHdpdGggb25seSBvbmUgWE1MIGZpbGUgYXQgYSB0 aW1lLiIsIGZpbGU9c3lzLnN0ZGVycikKLSAgICAgICAgICAgICBzeXMuZXhpdCgyKQotIAotICAg ICAgICAgaWYgbm90IG1vZmlsZToKLS0gICAgICAgICAgICBwcmludCA+PiBzeXMuc3RkZXJyLCAi RXJyb3I6IFlvdSBtdXN0IHNwZWNpZnkgTU8gZmlsZSB3aGVuIG1lcmdpbmcgdHJhbnNsYXRpb25z LiIKLSsgICAgICAgICAgICBwcmludCgiRXJyb3I6IFlvdSBtdXN0IHNwZWNpZnkgTU8gZmlsZSB3 aGVuIG1lcmdpbmcgdHJhbnNsYXRpb25zLiIsIGZpbGU9c3lzLnN0ZGVycikKLSAgICAgICAgICAg ICBzeXMuZXhpdCgzKQotIAotICAgICAgICAgeG1sMnBvX21haW4ubWVyZ2UobW9maWxlLCBmaWxl bmFtZXNbMF0pCi0tLS0gZ25vbWUtZG9jLXV0aWxzLTAuMjAuMTAveG1sMnBvL3htbDJwby9fX2lu aXRfXy5weS5vcmlnCTIwMTktMDktMTAgMDk6MzQ6NDIuMTEwMzI4MzI0IC0wNTAwCi0rKysgZ25v bWUtZG9jLXV0aWxzLTAuMjAuMTAveG1sMnBvL3htbDJwby9fX2luaXRfXy5weQkyMDE5LTA5LTEw IDA5OjM0OjQ0LjE3MDMyNTg5OSAtMDUwMAotQEAgLTE2Niw3ICsxNjYsNyBAQAotICAgICAgICAg ZWxpZiBub2RlLmlzVGV4dCgpOgotICAgICAgICAgICAgIGlmIG5vZGUuaXNCbGFua05vZGUoKToK LSAgICAgICAgICAgICAgICAgaWYgc2VsZi5hcHAub3B0aW9ucy5nZXQoJ2V4cGFuZF9lbnRpdGll cycpIG9yIFwKLS0gICAgICAgICAgICAgICAgICAobm90IChub2RlLnByZXYgYW5kIG5vdCBub2Rl LnByZXYuaXNCbGFua05vZGUoKSBhbmQgbm9kZS5fX25leHRfXyBhbmQgbm90IG5vZGUubmV4dC5p c0JsYW5rTm9kZSgpKSApOgotKyAgICAgICAgICAgICAgICAgIChub3QgKG5vZGUucHJldiBhbmQg bm90IG5vZGUucHJldi5pc0JsYW5rTm9kZSgpIGFuZCBub2RlLm5leHQgYW5kIG5vdCBub2RlLm5l eHQuaXNCbGFua05vZGUoKSkgKToKLSAgICAgICAgICAgICAgICAgICAgICNwcmludCA+PnN5cy5z dGRlcnIsICJCTEFOSyIKLSAgICAgICAgICAgICAgICAgICAgIG5vZGUuc2V0Q29udGVudCgnJykK LSAgICAgICAgICAgICBlbHNlOgotQEAgLTE3Niw3ICsxNzYsNyBAQAotICAgICAgICAgICAgIGNo aWxkID0gbm9kZS5jaGlsZHJlbgotICAgICAgICAgICAgIHdoaWxlIGNoaWxkOgotICAgICAgICAg ICAgICAgICBzZWxmLm5vcm1hbGl6ZU5vZGUoY2hpbGQpCi0tICAgICAgICAgICAgICAgIGNoaWxk ID0gY2hpbGQuX19uZXh0X18KLSsgICAgICAgICAgICAgICAgY2hpbGQgPSBjaGlsZC5uZXh0Ci0g Ci0gICAgIGRlZiBub3JtYWxpemVTdHJpbmcoc2VsZiwgdGV4dCwgc3BhY2VwcmVzZXJ2ZSA9IEZh bHNlKToKLSAgICAgICAgICIiIk5vcm1hbGl6ZXMgc3RyaW5nIHRvIGJlIHVzZWQgYXMga2V5IGZv ciBnZXR0ZXh0IGxvb2t1cC4KLUBAIC0yMDksNyArMjA5LDcgQEAKLSAgICAgICAgIGNoaWxkID0g bmV3bm9kZS5jaGlsZHJlbgotICAgICAgICAgd2hpbGUgY2hpbGQ6Ci0gICAgICAgICAgICAgcmVz dWx0ICs9IGNoaWxkLnNlcmlhbGl6ZSgndXRmLTgnKQotLSAgICAgICAgICAgIGNoaWxkID0gY2hp bGQuX19uZXh0X18KLSsgICAgICAgICAgICBjaGlsZCA9IGNoaWxkLm5leHQKLSAKLSAgICAgICAg IHJlc3VsdCA9IHJlLnN1YignXiAnLCcnLCByZXN1bHQpCi0gICAgICAgICByZXN1bHQgPSByZS5z dWIoJyAkJywnJywgcmVzdWx0KQotQEAgLTIzNSw3ICsyMzUsNyBAQAotICAgICAgICAgY3R4dC5w YXJzZURvY3VtZW50KCkKLSAgICAgICAgIHRyZWUgPSBjdHh0LmRvYygpCi0gICAgICAgICBpZiBu ZXh0OgotLSAgICAgICAgICAgIG5ld25vZGUgPSB0cmVlLmNoaWxkcmVuLl9fbmV4dF9fCi0rICAg ICAgICAgICAgbmV3bm9kZSA9IHRyZWUuY2hpbGRyZW4ubmV4dAotICAgICAgICAgZWxzZToKLSAg ICAgICAgICAgICBuZXdub2RlID0gdHJlZS5jaGlsZHJlbgotIAotQEAgLTI0Myw3ICsyNDMsNyBA QAotICAgICAgICAgY2hpbGQgPSBuZXdub2RlLmNoaWxkcmVuCi0gICAgICAgICB3aGlsZSBjaGls ZDoKLSAgICAgICAgICAgICByZXN1bHQgKz0gY2hpbGQuc2VyaWFsaXplKCd1dGYtOCcpCi0tICAg ICAgICAgICAgY2hpbGQgPSBjaGlsZC5fX25leHRfXwotKyAgICAgICAgICAgIGNoaWxkID0gY2hp bGQubmV4dAotICAgICAgICAgdHJlZS5mcmVlRG9jKCkKLSAgICAgICAgIHJldHVybiByZXN1bHQK LSAKLUBAIC0yNjIsNyArMjYyLDcgQEAKLSAgICAgICAgICAgICAgICAgICAgICAgICByZXN1bHQg Kz0gY2hpbGQuY29udGVudC5kZWNvZGUoJ3V0Zi04JykKLSAgICAgICAgICAgICAgICAgZWxzZToK LSAgICAgICAgICAgICAgICAgICAgIHJlc3VsdCArPSBzZWxmLm15QXR0cmlidXRlU2VyaWFsaXpl KGNoaWxkKQotLSAgICAgICAgICAgICAgICBjaGlsZCA9IGNoaWxkLl9fbmV4dF9fCi0rICAgICAg ICAgICAgICAgIGNoaWxkID0gY2hpbGQubmV4dAotICAgICAgICAgZWxzZToKLSAgICAgICAgICAg ICByZXN1bHQgPSBub2RlLnNlcmlhbGl6ZSgndXRmLTgnKQotICAgICAgICAgcmV0dXJuIHJlc3Vs dAotQEAgLTM0NiwxMyArMzQ2LDEzIEBACi0gICAgICAgICAgICAgaWYgbmV3ZWxlbSBhbmQgbmV3 ZWxlbS5jaGlsZHJlbjoKLSAgICAgICAgICAgICAgICAgZnJlZSA9IG5vZGUuY2hpbGRyZW4KLSAg ICAgICAgICAgICAgICAgd2hpbGUgZnJlZToKLS0gICAgICAgICAgICAgICAgICAgIG5leHQgPSBm cmVlLl9fbmV4dF9fCi0rICAgICAgICAgICAgICAgICAgICBuZXh0ID0gZnJlZS5uZXh0Ci0gICAg ICAgICAgICAgICAgICAgICBmcmVlLnVubGlua05vZGUoKQotICAgICAgICAgICAgICAgICAgICAg ZnJlZSA9IG5leHQKLSAKLSAgICAgICAgICAgICAgICAgaWYgbm9kZToKLSAgICAgICAgICAgICAg ICAgICAgIGNvcHkgPSBuZXdlbGVtLmNvcHlOb2RlTGlzdCgpCi0tICAgICAgICAgICAgICAgICAg ICBuZXh0ID0gbm9kZS5fX25leHRfXwotKyAgICAgICAgICAgICAgICAgICAgbmV4dCA9IG5vZGUu bmV4dAotICAgICAgICAgICAgICAgICAgICAgbm9kZS5yZXBsYWNlTm9kZShuZXdlbGVtLmNvcHlO b2RlTGlzdCgpKQotICAgICAgICAgICAgICAgICAgICAgbm9kZS5uZXh0ID0gbmV4dAotIAotQEAg LTM3OCw3ICszNzgsNyBAQAotICAgICAgICAgICAgIGlmIGNoaWxkLnR5cGUgaW4gWyd0ZXh0J10g YW5kICBjaGlsZC5jb250ZW50LnN0cmlwKCkhPScnOgotICAgICAgICAgICAgICAgICBmaW5hbCA9 IFRydWUKLSAgICAgICAgICAgICAgICAgYnJlYWsKLS0gICAgICAgICAgICBjaGlsZCA9IGNoaWxk Ll9fbmV4dF9fCi0rICAgICAgICAgICAgY2hpbGQgPSBjaGlsZC5uZXh0Ci0gCi0gICAgICAgICBu b2RlLl9fYXV0b2ZpbmFsX18gPSBmaW5hbAotICAgICAgICAgcmV0dXJuIGZpbmFsCi1AQCAtNDU3 LDcgKzQ1Nyw3IEBACi0gICAgICAgICAgICAgICAgICAgICBvdXR0eHQgKz0gJzwlcz4lczwvJXM+ JyAlIChzdGFydHRhZywgY29udGVudCwgZW5kdGFnKQotICAgICAgICAgICAgICAgICBlbHNlOgot ICAgICAgICAgICAgICAgICAgICAgb3V0dHh0ICs9IHNlbGYuZG9TZXJpYWxpemUoY2hpbGQpCi0t ICAgICAgICAgICAgY2hpbGQgPSBjaGlsZC5fX25leHRfXwotKyAgICAgICAgICAgIGNoaWxkID0g Y2hpbGQubmV4dAotIAotICAgICAgICAgaWYgc2VsZi5hcHAub3BlcmF0aW9uID09ICdtZXJnZSc6 Ci0gICAgICAgICAgICAgbm9ybV9vdXR0eHQgPSBzZWxmLm5vcm1hbGl6ZVN0cmluZyhvdXR0eHQs IHNlbGYuYXBwLmlzU3BhY2VQcmVzZXJ2ZU5vZGUobm9kZSkpCi1AQCAtNTM0LDcgKzUzNCw3IEBA Ci0gICAgICAgICAgICAgb3V0dHh0ID0gJycKLSAgICAgICAgICAgICB3aGlsZSBjaGlsZDoKLSAg ICAgICAgICAgICAgICAgb3V0dHh0ICs9IHNlbGYuZG9TZXJpYWxpemUoY2hpbGQpCi0tICAgICAg ICAgICAgICAgIGNoaWxkID0gY2hpbGQuX19uZXh0X18KLSsgICAgICAgICAgICAgICAgY2hpbGQg PSBjaGlsZC5uZXh0Ci0gICAgICAgICAgICAgcmV0dXJuIG91dHR4dAotIAotIGRlZiB4bWxfZXJy b3JfaGFuZGxlcihhcmcsIGN0eHQpOgotLS0tIGdub21lLWRvYy11dGlscy0wLjIwLjEwL3htbDJw by94bWwycG8vX19pbml0X18ucHkub3JpZwkyMDE5LTA5LTEwIDA5OjM5OjU3LjczMzk3NDkxMiAt MDUwMAotKysrIGdub21lLWRvYy11dGlscy0wLjIwLjEwL3htbDJwby94bWwycG8vX19pbml0X18u cHkJMjAxOS0wOS0xMCAwOTo0MDoyNC43NjE5NDY5NjIgLTA1MDAKLUBAIC0zMjYsNyArMzI2LDcg QEAKLSAgICAgICAgICAgICAgICAgcGFzcwotIAotICAgICAgICAgICAgIGNvbnRlbnQgPSAnPCVz PiVzPC8lcz4nICUgKHN0YXJ0dGFnLCB0ZXh0LCBlbmR0YWcpCi0tICAgICAgICAgICAgdG1wID0g dG1wICsgY29udGVudC5lbmNvZGUoJ3V0Zi04JykKLSsgICAgICAgICAgICB0bXAgPSB0bXAgKyBj b250ZW50Ci0gCi0gICAgICAgICAgICAgbmV3bm9kZSA9IE5vbmUKLSAgICAgICAgICAgICB0cnk6 Ci1AQCAtNjYzLDcgKzY2Myw3IEBACi0gICAgICAgICBpZiBub3QgdGV4dCBvciB0ZXh0LnN0cmlw KCkgPT0gJyc6Ci0gICAgICAgICAgICAgcmV0dXJuIHRleHQKLSAgICAgICAgIGlmIHNlbGYuZ3Q6 Ci0tICAgICAgICAgICAgcmVzID0gc2VsZi5ndC51Z2V0dGV4dCh0ZXh0LmRlY29kZSgndXRmLTgn KSkKLSsgICAgICAgICAgICByZXMgPSBzZWxmLmd0LmdldHRleHQodGV4dCkKLSAgICAgICAgICAg ICByZXR1cm4gcmVzCi0gCi0gICAgICAgICByZXR1cm4gdGV4dAotLS0tIGdub21lLWRvYy11dGls cy0wLjIwLjEwL3htbDJwby94bWwycG8vX19pbml0X18ucHkub3JpZwkyMDE5LTA5LTEwIDA5OjQx OjIzLjg1Mzg4NTg1MSAtMDUwMAotKysrIGdub21lLWRvYy11dGlscy0wLjIwLjEwL3htbDJwby94 bWwycG8vX19pbml0X18ucHkJMjAxOS0wOS0xMCAwOTo0NDoyMy41ODA2OTk5NzkgLTA1MDAKLUBA IC0zNTIsOSArMzUyLDEwIEBACi0gCi0gICAgICAgICAgICAgICAgIGlmIG5vZGU6Ci0gICAgICAg ICAgICAgICAgICAgICBjb3B5ID0gbmV3ZWxlbS5jb3B5Tm9kZUxpc3QoKQotLSAgICAgICAgICAg ICAgICAgICAgbmV4dCA9IG5vZGUubmV4dAotKyAgICAgICAgICAgICAgICAgICAgI25leHQgPSBu b2RlLm5leHQKLSAgICAgICAgICAgICAgICAgICAgIG5vZGUucmVwbGFjZU5vZGUobmV3ZWxlbS5j b3B5Tm9kZUxpc3QoKSkKLS0gICAgICAgICAgICAgICAgICAgIG5vZGUubmV4dCA9IG5leHQKLSsg ICAgICAgICAgICAgICAgICAgICNwcmludCh0eXBlKG5leHQpKQotKyAgICAgICAgICAgICAgICAg ICAgI25vZGUubmV4dCA9IG5leHQKLSAKLSAgICAgICAgICAgICBlbHNlOgotICAgICAgICAgICAg ICAgICAjIEluIHByYWN0aWNlLCB0aGlzIGhhcHBlbnMgd2l0aCB0YWdzIHN1Y2ggYXMgIjxwYXJh PiAgICA8L3BhcmE+IiAob25seSB3aGl0ZXNwYWNlIGluIGJldHdlZW4pCi1AQCAtNDcwLDcgKzQ3 MSw3IEBACi0gCi0gICAgICAgICB3b3J0aCA9IHNlbGYud29ydGhPdXRwdXR0aW5nKG5vZGUpCi0g ICAgICAgICBpZiBub3QgdHJhbnNsYXRpb246Ci0tICAgICAgICAgICAgdHJhbnNsYXRpb24gPSBv dXR0eHQuZGVjb2RlKCd1dGYtOCcpCi0rICAgICAgICAgICAgdHJhbnNsYXRpb24gPSBvdXR0eHQK LSAgICAgICAgICAgICBpZiB3b3J0aCBhbmQgc2VsZi5hcHAub3B0aW9ucy5nZXQoJ21hcmtfdW50 cmFuc2xhdGVkJyk6Ci0gICAgICAgICAgICAgICAgIG5vZGUuc2V0TGFuZygnQycpCi0gCi0tLS0g Z25vbWUtZG9jLXV0aWxzLTAuMjAuMTAveG1sMnBvL3htbDJwby9tb2Rlcy9kb2Nib29rLnB5Lm9y aWcJMjAxOS0wOS0xMCAwOTo0NjoxNS40MDk1ODQzMzQgLTA1MDAKLSsrKyBnbm9tZS1kb2MtdXRp bHMtMC4yMC4xMC94bWwycG8veG1sMnBvL21vZGVzL2RvY2Jvb2sucHkJMjAxOS0wOS0xMCAwOTo0 NjozMC4xNjQ1NjkwNzUgLTA1MDAKLUBAIC0xODQsNyArMTg0LDcgQEAKLSAgICAgICAgICAgICAg ICAgICAgIGVsc2U6Ci0gICAgICAgICAgICAgICAgICAgICAgICAgYWkuYWRkQ2hpbGQoY29weSkK LSAgICAgICAgICAgICAgICAgICAgIGlmIG1hdGNoLmdyb3VwKDMpOgotLSAgICAgICAgICAgICAg ICAgICAgICAgIGNvcHkubmV3Q2hpbGQoTm9uZSwgInllYXIiLCBtYXRjaC5ncm91cCgzKS5lbmNv ZGUoJ3V0Zi04JykpCi0rICAgICAgICAgICAgICAgICAgICAgICAgY29weS5uZXdDaGlsZChOb25l LCAieWVhciIsIG1hdGNoLmdyb3VwKDMpKQotICAgICAgICAgICAgICAgICAgICAgaWYgbWF0Y2gu Z3JvdXAoMSkgYW5kIG1hdGNoLmdyb3VwKDIpOgotICAgICAgICAgICAgICAgICAgICAgICAgIGhv bGRlciA9IG1hdGNoLmdyb3VwKDEpKyIoJXMpIiAlIG1hdGNoLmdyb3VwKDIpCi0gICAgICAgICAg ICAgICAgICAgICBlbGlmIG1hdGNoLmdyb3VwKDEpOgotQEAgLTE5Myw3ICsxOTMsNyBAQAotICAg ICAgICAgICAgICAgICAgICAgICAgIGhvbGRlciA9IG1hdGNoLmdyb3VwKDIpCi0gICAgICAgICAg ICAgICAgICAgICBlbHNlOgotICAgICAgICAgICAgICAgICAgICAgICAgIGhvbGRlciA9ICI/Pz8i Ci0tICAgICAgICAgICAgICAgICAgICBjb3B5Lm5ld0NoaWxkKE5vbmUsICJob2xkZXIiLCBob2xk ZXIuZW5jb2RlKCd1dGYtOCcpKQotKyAgICAgICAgICAgICAgICAgICAgY29weS5uZXdDaGlsZChO b25lLCAiaG9sZGVyIiwgaG9sZGVyKQotIAotICMgUGVyZm9ybSBzb21lIHRlc3RzIHdoZW4gcmFu IHN0YW5kYWxvbmUKLSBpZiBfX25hbWVfXyA9PSAnX19tYWluX18nOgotLS0tIGdub21lLWRvYy11 dGlscy0wLjIwLjEwL3htbDJwby94bWwycG8veG1sMnBvLnB5LmlufgkyMDE5LTA5LTEwIDA5OjUw OjM0LjAwMDAwMDAwMCAtMDUwMAotKysrIGdub21lLWRvYy11dGlscy0wLjIwLjEwL3htbDJwby94 bWwycG8veG1sMnBvLnB5LmluCTIwMTktMDktMTAgMDk6NTA6NDUuMTE0MzA1NDQzIC0wNTAwCi1A QCAtMSw0ICsxLDQgQEAKLS0jIS91c3IvYmluL3B5dGhvbiAtdQotKyMhL3Vzci9iaW4vcHl0aG9u MyAtdQotICMgLSotIGVuY29kaW5nOiB1dGYtOCAtKi0KLSAjIENvcHlyaWdodCAoYykgMjAwNCwg MjAwNSwgMjAwNiBEYW5pbG8gxaBlZ2FuIDxkYW5pbG9AZ25vbWUub3JnPi4KLSAjIENvcHlyaWdo dCAoYykgMjAwOSBDbGF1ZGUgUGFyb3ogPGNsYXVkZUAyeGxpYnJlLm5ldD4uCmRpZmYgLS1naXQg YS9zcmNwa2dzL2dub21lLWRvYy11dGlscy90ZW1wbGF0ZSBiL3NyY3BrZ3MvZ25vbWUtZG9jLXV0 aWxzL3RlbXBsYXRlCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBmNjNjNjEwNmY2YzEu LjAwMDAwMDAwMDAwMAotLS0gYS9zcmNwa2dzL2dub21lLWRvYy11dGlscy90ZW1wbGF0ZQorKysg L2Rldi9udWxsCkBAIC0xLDIxICswLDAgQEAKLSMgVGVtcGxhdGUgZmlsZSBmb3IgJ2dub21lLWRv Yy11dGlscycKLXBrZ25hbWU9Z25vbWUtZG9jLXV0aWxzCi12ZXJzaW9uPTAuMjAuMTAKLXJldmlz aW9uPTkKLWJ1aWxkX3N0eWxlPWdudS1jb25maWd1cmUKLWNvbmZpZ3VyZV9hcmdzPSItLWRpc2Fi bGUtc2Nyb2xsa2VlcGVyIgotaG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIGludGx0b29sIHB5 dGhvbjMgbGlieG1sMi1weXRob24zIGxpYnhzbHQKLSBnc2V0dGluZ3MtZGVza3RvcC1zY2hlbWFz IgotbWFrZWRlcGVuZHM9ImxpYnhzbHQtZGV2ZWwgZG9jYm9vay14bWwgZG9jYm9vay14c2wgcmFy aWFuIHB5dGhvbjMKLSBsaWJ4bWwyLXB5dGhvbjMgbGlieHNsdCIKLWRlcGVuZHM9ImxpYnhzbHQg ZG9jYm9vay14bWwgZG9jYm9vay14c2wgcmFyaWFuIHB5dGhvbjMgbGlieG1sMi1weXRob24zIgot c2hvcnRfZGVzYz0iRG9jdW1lbnRhdGlvbiB1dGlsaXRpZXMgZm9yIEdOT01FIgotbWFpbnRhaW5l cj0iT3JwaGFuZWQgPG9ycGhhbkB2b2lkbGludXgub3JnPiIKLWxpY2Vuc2U9IkdQTC0yLjAtb3It bGF0ZXIsIExHUEwtMi4xLW9yLWxhdGVyIgotaG9tZXBhZ2U9Imh0dHBzOi8vd2lraS5nbm9tZS5v cmcvUHJvamVjdHMvR25vbWVEb2NVdGlscyIKLWRpc3RmaWxlcz0iJHtHTk9NRV9TSVRFfS8ke3Br Z25hbWV9LzAuMjAvJHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPWNiMDYz OWZmYTk1NTBiNmRkZjNiNjJmM2IxYWRkOTJmYjkyYWI0NjkwZDM1MWYyMzUzY2ZmZTY2OGJlOGM0 YTYKLQotcG9zdF9wYXRjaCgpIHsKLQl2c2VkIC1pIC1lICdzL0RBVEFESVJOQU1FPWxpYi9EQVRB RElSTkFNRT1zaGFyZS8nIGNvbmZpZ3VyZQotfQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9yZW1vdmVk LXBhY2thZ2VzL3RlbXBsYXRlIGIvc3JjcGtncy9yZW1vdmVkLXBhY2thZ2VzL3RlbXBsYXRlCmlu ZGV4IGVmNTNlYmE3YTkyZS4uMmIxNmFlNDQxMzFmIDEwMDY0NAotLS0gYS9zcmNwa2dzL3JlbW92 ZWQtcGFja2FnZXMvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9yZW1vdmVkLXBhY2thZ2VzL3RlbXBs YXRlCkBAIC03NCw2ICs3NCw3IEBAIHJlcGxhY2VzPSIKICBnZXNwZWFrZXI8PTAuOC42XzMKICBn a3N1PD0yLjAuMl80CiAgZ2xpYm1tLWRvYzw9Mi42NC4yXzIKKyBnbm9tZS1kb2MtdXRpbHM8PTAu MjAuMTBfOQogIGdub21lLWdldHRpbmctc3RhcnRlZC1kb2NzPD0zLjM4LjFfMQogIGdub21lLXNo ZWxsLW1vdXNld2hlZWwtem9vbTw9MC44LjBfMgogIGdub21lLXR3aXRjaDw9MC40LjJfMQo= --===============7801808233851613481==--