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,WEIRD_PORT autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 10316 invoked from network); 10 Oct 2023 01:39:53 -0000 Received: from localhost (HELO inbox.vuxu.org) (::1) by localhost with ESMTPUTF8; 10 Oct 2023 01:39:53 -0000 Content-Type: multipart/mixed; boundary="===============8355285154763817768==" MIME-Version: 1.0 Subject: =?utf8?q?Re=3A_=5BPR_PATCH=5D_=5BUpdated=5D_py2-=3E3_fixes?= To: ml@inbox.vuxu.org From: classabbyamp Reply-to: ml@inbox.vuxu.org In-Reply-To: References: Date: Tue, 10 Oct 2023 03:39:53 +0200 List-Id: Message-ID: <20231010013953.GXduERCuSh4O_6fpDwnFaU8_a5zkzcqhZ8gWZ5d2wx4@z> GitHub notification mails are now in MIME to allow UTF8. --===============8355285154763817768== Content-Type: text/plain; charset="utf8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 VGhlcmUgaXMgYW4gdXBkYXRlZCBwdWxsIHJlcXVlc3QgYnkgY2xhc3NhYmJ5YW1wIGFnYWluc3Qg bWFzdGVyIG9uIHRoZSB2b2lkLXBhY2thZ2VzIHJlcG9zaXRvcnkKCmh0dHBzOi8vZ2l0aHViLmNv bS9jbGFzc2FiYnlhbXAvdm9pZC1wYWNrYWdlcyBweTIKaHR0cHM6Ly9naXRodWIuY29tL3ZvaWQt bGludXgvdm9pZC1wYWNrYWdlcy9wdWxsLzQ2NTE1CgpweTItPjMgZml4ZXMKW2NpIHNraXBdCgpB IHBhdGNoIGZpbGUgZnJvbSBodHRwczovL2dpdGh1Yi5jb20vdm9pZC1saW51eC92b2lkLXBhY2th Z2VzL3B1bGwvNDY1MTUucGF0Y2ggaXMgYXR0YWNoZWQ= --===============8355285154763817768== Content-Type: text/x-diff MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="github-pr-py2-46515.patch" RnJvbSA2NGI0NjQ0MThjZDRmNjk5NWQ1ODFmYmUzZTg2YTdlZjE4NzRjNzBmIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBjbGFzc2FiYnlhbXAgPHZvaWRAcGxhY2V2aW9sZXR0ZS5uZXQ+ CkRhdGU6IFNhdCwgNyBPY3QgMjAyMyAwNDozODoyMSAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggMDEv MTBdIGd0a3NvdXJjZXZpZXcyOiBwYXRjaCBmb3IgcHl0aG9uMwoKLS0tCiBzcmNwa2dzL2d0a3Nv dXJjZXZpZXcyL3BhdGNoZXMvcHl0aG9uMy5wYXRjaCB8IDU5ICsrKysrKysrKysrKysrKysrKysr CiBzcmNwa2dzL2d0a3NvdXJjZXZpZXcyL3RlbXBsYXRlICAgICAgICAgICAgICB8ICA1ICstCiAy IGZpbGVzIGNoYW5nZWQsIDYxIGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCiBjcmVhdGUg bW9kZSAxMDA2NDQgc3JjcGtncy9ndGtzb3VyY2V2aWV3Mi9wYXRjaGVzL3B5dGhvbjMucGF0Y2gK CmRpZmYgLS1naXQgYS9zcmNwa2dzL2d0a3NvdXJjZXZpZXcyL3BhdGNoZXMvcHl0aG9uMy5wYXRj aCBiL3NyY3BrZ3MvZ3Rrc291cmNldmlldzIvcGF0Y2hlcy9weXRob24zLnBhdGNoCm5ldyBmaWxl IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAuLjBhMDViMzg1NTZkNjYKLS0tIC9kZXYv bnVsbAorKysgYi9zcmNwa2dzL2d0a3NvdXJjZXZpZXcyL3BhdGNoZXMvcHl0aG9uMy5wYXRjaApA QCAtMCwwICsxLDU5IEBACistLS0gYS9ndGtzb3VyY2V2aWV3L2xhbmd1YWdlLXNwZWNzL2NvbnZl cnQucHkKKysrKyBiL2d0a3NvdXJjZXZpZXcvbGFuZ3VhZ2Utc3BlY3MvY29udmVydC5weQorQEAg LTEsNyArMSw3IEBACisgIyEvdXNyL2Jpbi9lbnYgcHl0aG9uCisgCisgaW1wb3J0IHhtbC5kb20u bWluaWRvbSBhcyBkb20KKy1pbXBvcnQgY2dpCisraW1wb3J0IGh0bWwKKyAKKyBkZWZhdWx0X3N0 eWxlcyA9IHsKKyAgICAgJ0NvbW1lbnQnIDogJ2RlZjpjb21tZW50JywKK0BAIC0yOSw3ICsyOSw3 IEBACisgICAgIHJhaXNlIFJ1bnRpbWVFcnJvcigiZG9uJ3Qga25vdyBob3cgdG8gZXNjYXBlICcl cyciICUgKGNoLCkpCisgCisgZGVmIGVzY2FwZV9yZWdleChzKToKKy0gICAgcmV0dXJuIGNnaS5l c2NhcGUocykKKysgICAgcmV0dXJuIGh0bWwuZXNjYXBlKHMpCisgCisgZGVmIG5vcm1hbGl6ZV9p ZChpZCk6CisgICAgIGlmIGlkID09ICJDIyI6CitAQCAtOTEsOSArOTEsOSBAQAorICAgICAgICAg aWYgc2VsZi5taW1ldHlwZXMgb3Igc2VsZi5nbG9iczoKKyAgICAgICAgICAgICBzdHJpbmcgKz0g aW5kZW50ICsgJzxtZXRhZGF0YT5cbicKKyAgICAgICAgICAgICBpZiBzZWxmLm1pbWV0eXBlczoK Ky0gICAgICAgICAgICAgICAgc3RyaW5nICs9IDIqaW5kZW50ICsgJzxwcm9wZXJ0eSBuYW1lPSJt aW1ldHlwZXMiPiVzPC9wcm9wZXJ0eT5cbicgJSAoY2dpLmVzY2FwZShzZWxmLm1pbWV0eXBlcyks KQorKyAgICAgICAgICAgICAgICBzdHJpbmcgKz0gMippbmRlbnQgKyAnPHByb3BlcnR5IG5hbWU9 Im1pbWV0eXBlcyI+JXM8L3Byb3BlcnR5PlxuJyAlIChodG1sLmVzY2FwZShzZWxmLm1pbWV0eXBl cyksKQorICAgICAgICAgICAgIGlmIHNlbGYuZ2xvYnM6CistICAgICAgICAgICAgICAgIHN0cmlu ZyArPSAyKmluZGVudCArICc8cHJvcGVydHkgbmFtZT0iZ2xvYnMiPiVzPC9wcm9wZXJ0eT5cbicg JSAoY2dpLmVzY2FwZShzZWxmLmdsb2JzKSwpCisrICAgICAgICAgICAgICAgIHN0cmluZyArPSAy KmluZGVudCArICc8cHJvcGVydHkgbmFtZT0iZ2xvYnMiPiVzPC9wcm9wZXJ0eT5cbicgJSAoaHRt bC5lc2NhcGUoc2VsZi5nbG9icyksKQorICAgICAgICAgICAgIHN0cmluZyArPSBpbmRlbnQgKyAn PC9tZXRhZGF0YT5cblxuJworIAorICAgICAgICAgcmV0dXJuIHN0cmluZworQEAgLTE3NSw3ICsx NzUsNyBAQAorICAgICAgICAgc2VsZi5pc19jb250YWluZXIgPSBGYWxzZQorIAorICAgICBkZWYg Zm9ybWF0KHNlbGYsIGluZGVudCwgZXNjX2N0eCwgbGluZV9lc2NfY3R4KToKKy0gICAgICAgIHBy aW50ICJJbXBsZW1lbnQgbWU6ICVzLmZvcm1hdCgpIiAlICh0eXBlKHNlbGYpLl9fbmFtZV9fLCkK KysgICAgICAgIHByaW50KCJJbXBsZW1lbnQgbWU6ICVzLmZvcm1hdCgpIiAlICh0eXBlKHNlbGYp Ll9fbmFtZV9fLCkpCisgICAgICAgICByZXR1cm4gaW5kZW50KjIgKyAnPGNvbnRleHQgaWQ9IiVz Ii8+XG4nICUgKHNlbGYuaWQpCisgCisgICAgIGRlZiBmb3JtYXRfZXNjYXBlKHNlbGYsIGluZGVu dCwgZXNjX2N0eCwgbGluZV9lc2NfY3R4KToKK0BAIC00NzIsNyArNDcyLDcgQEAKKyAgICAgZWxp ZiBjdXIudGFnTmFtZSA9PSAic3ludGF4LWl0ZW0iOgorICAgICAgICAgY3R4ID0gcGFyc2VTeW50 YXhJdGVtKGN1ciwgbmFtZSwgX25hbWUsIHN0eWxlKQorICAgICBlbHNlOgorLSAgICAgICAgcHJp bnQgIlVua25vd24gdGFnOiAlcyIgJSAoY3VyLnRhZ05hbWUsKQorKyAgICAgICAgcHJpbnQoIlVu a25vd24gdGFnOiAlcyIgJSAoY3VyLnRhZ05hbWUsKSkKKyAgICAgICAgIGN0eCA9IE5vbmUKKyAK KyAgICAgcmV0dXJuIGN0eAorQEAgLTUxMCw3ICs1MTAsNyBAQAorICAgICBpbXBvcnQgc3lzCisg CisgICAgIGlmIG5vdCBzeXMuYXJndlsxOl06CistICAgICAgICBwcmludCAidXNhZ2U6ICVzIExB TkdfRklMRSIgJSAoc3lzLmFyZ3ZbMF0pCisrICAgICAgICBwcmludCgidXNhZ2U6ICVzIExBTkdf RklMRSIgJSAoc3lzLmFyZ3ZbMF0pKQorICAgICAgICAgc3lzLmV4aXQoMSkKKyAKKyAgICAgbGFu Z19maWxlID0gcGFyc2VfZmlsZShzeXMuYXJndlsxXSkKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ3Rr c291cmNldmlldzIvdGVtcGxhdGUgYi9zcmNwa2dzL2d0a3NvdXJjZXZpZXcyL3RlbXBsYXRlCmlu ZGV4IDFmZmI0MzQ2Njk0MTMuLjA5ZDEzMDE1MjY1MzAgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZ3Rr c291cmNldmlldzIvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9ndGtzb3VyY2V2aWV3Mi90ZW1wbGF0 ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2d0a3NvdXJjZXZpZXcyJwog cGtnbmFtZT1ndGtzb3VyY2V2aWV3MgogdmVyc2lvbj0yLjEwLjUKLXJldmlzaW9uPTcKK3Jldmlz aW9uPTgKIGJ1aWxkX3N0eWxlPWdudS1jb25maWd1cmUKIGNvbmZpZ3VyZV9hcmdzPSItLWRpc2Fi bGUtc3RhdGljIgogaG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIGludGx0b29sIGdsaWItZGV2 ZWwiCkBAIC0xMiw4ICsxMiw3IEBAIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFn ZT0iaHR0cDovL3d3dy5nbm9tZS5vcmciCiBkaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vZ3Rrc291 cmNldmlldy8yLjEwL2d0a3NvdXJjZXZpZXctJHt2ZXJzaW9ufS50YXIuYnoyIgogY2hlY2tzdW09 YzU4NTc3Mzc0M2IxZGY4YTA0YjFiZTdmN2Q5MGVlY2RmMjI2ODE0OTBkNjgxMGJlNTRjODFhN2Fl MTUyMTkxZQotIyBjb252ZXJ0LnB5OjE3OAotcHl0aG9uX3ZlcnNpb249MgorcHl0aG9uX3ZlcnNp b249MwogCiBwb3N0X3BhdGNoKCkgewogCXZzZWQgLWkgLWUgJ3MvREFUQURJUk5BTUU9bGliL0RB VEFESVJOQU1FPXNoYXJlLycgY29uZmlndXJlCgpGcm9tIDhmNzk3OGE3MDliYzY3ZTYwOWY0ODUy ODNjZmFhMjdiMzkwOTg1NDUgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IGNsYXNzYWJi eWFtcCA8dm9pZEBwbGFjZXZpb2xldHRlLm5ldD4KRGF0ZTogU2F0LCA3IE9jdCAyMDIzIDA0OjUx OjM3IC0wNDAwClN1YmplY3Q6IFtQQVRDSCAwMi8xMF0ga2NhY2hlZ3JpbmQ6IHBhdGNoIGZvciBw eXRob24zCgotLS0KIHNyY3BrZ3Mva2NhY2hlZ3JpbmQvcGF0Y2hlcy9weXRob24zLnBhdGNoIHwg NzcgKysrKysrKysrKysrKysrKysrKysrKysKIHNyY3BrZ3Mva2NhY2hlZ3JpbmQvdGVtcGxhdGUg ICAgICAgICAgICAgIHwgIDQgKy0KIDIgZmlsZXMgY2hhbmdlZCwgNzkgaW5zZXJ0aW9ucygrKSwg MiBkZWxldGlvbnMoLSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL2tjYWNoZWdyaW5kL3Bh dGNoZXMvcHl0aG9uMy5wYXRjaAoKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mva2NhY2hlZ3JpbmQvcGF0 Y2hlcy9weXRob24zLnBhdGNoIGIvc3JjcGtncy9rY2FjaGVncmluZC9wYXRjaGVzL3B5dGhvbjMu cGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMC4uMWQ3MDFkZGYw MzIxYwotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3Mva2NhY2hlZ3JpbmQvcGF0Y2hlcy9weXRo b24zLnBhdGNoCkBAIC0wLDAgKzEsNzcgQEAKKy0tLSBhL2NvbnZlcnRlcnMvaG90c2hvdDJjYWxs dHJlZS5pbgorKysrIGIvY29udmVydGVycy9ob3RzaG90MmNhbGx0cmVlLmluCitAQCAtMTQ3LDgg KzE0Nyw4IEBACisgICAgICAgICBpZiAoZmlsZV9saW1pdCA+IDApIGFuZCAoZmlsZWNvdW50ID4g ZmlsZV9saW1pdCk6CisgICAgICAgICAgICAgYnJlYWsKKyAgICAgCistICAgIHByaW50CistICAg IHByaW50ICJ0b3RhbF9jb3N0OiAlIGQgVGlja3MiLHRvdGFsX2Nvc3QKKysgICAgcHJpbnQoKQor KyAgICBwcmludCgidG90YWxfY29zdDogJSBkIFRpY2tzIix0b3RhbF9jb3N0KQorICAgICBkdW1w UmVzdWx0cyhvdXRwdXQsIGNhbGxfZGljdCwgdG90YWxfY29zdCwgY29zdF9wZXJfcG9zLCBjb3N0 X3Blcl9mdW5jdGlvbikKKyAKKyBkZWYgY29udmVydEhhbmRsZUZpbGVuYW1lKGlucHV0ZmlsZW5h bWUsIGNhbGxlcl9zdGFjaywgY2FsbF9kaWN0LCBjb3N0X3Blcl9wb3MsIGNvc3RfcGVyX2Z1bmN0 aW9uLCBmaWxlY291bnQpOgorQEAgLTIzNCw5ICsyMzQsOSBAQAorICAgICAgICAgICAgIHJldHVy bl9mcm9tX2NhbGwoY2FsbGVyX3N0YWNrLCBjYWxsX2RpY3QsIHRvdGFsX2Nvc3QpCisgCisgICAg IGV4Y2VwdCBJT0Vycm9yOgorLSAgICAgICAgcHJpbnQgImNvdWxkIG5vdCBvcGVuIGlucHV0Zmls ZSAnJXMnLCBpZ25vcmUgdGhpcy4iICUgaW5wdXRmaWxlbmFtZQorLSAgICBleGNlcHQgRU9GRXJy b3IsIG06CistICAgICAgICBwcmludCAiRU9GOiAlcyIgJSAobSwpCisrICAgICAgICBwcmludCgi Y291bGQgbm90IG9wZW4gaW5wdXRmaWxlICclcycsIGlnbm9yZSB0aGlzLiIgJSBpbnB1dGZpbGVu YW1lKQorKyAgICBleGNlcHQgRU9GRXJyb3IgYXMgbToKKysgICAgICAgIHByaW50KCJFT0Y6ICVz IiAlIChtLCkpCisgICAgIHJldHVybiB0b3RhbF9jb3N0CisgCisgZGVmIHByZXR0eV9uYW1lKGZp bGUsIGZ1bmN0aW9uKToKK0BAIC0yNTIsNyArMjUyLDcgQEAKKyAgICAgICAgIHNlbGYubGFzdF92 YWx1ZXMgPSB7fQorIAorICAgICBkZWYgY2xlYXJUYWcoc2VsZiwgdGFnKToKKy0gICAgICAgIGlm IHNlbGYubGFzdF92YWx1ZXMuaGFzX2tleSh0YWcpOgorKyAgICAgICAgaWYgdGFnIGluIHNlbGYu bGFzdF92YWx1ZXMua2V5cygpOgorICAgICAgICAgICAgIGRlbCBzZWxmLmxhc3RfdmFsdWVzWyB0 YWcgXQorICAgICBkZWYgY2xlYXIoc2VsZik6CisgICAgICAgICBzZWxmLmxhc3RfdmFsdWVzID0g e30KK0BAIC0zMTYsMTYgKzMxNiwxNiBAQAorIGRlZiBydW5fd2l0aG91dF9vcHRwYXJzZSgpOgor ICAgICAiIiJwYXJzZSB0aGUgb3B0aW9ucyB3aXRob3V0IG9wdHBhcnNlLCB1c2Ugc3lzLmFyZ3Yi IiIKKyAgICAgaWYgIGxlbihzeXMuYXJndikgPCA0IG9yIHN5cy5hcmd2WzFdICE9ICItbyIgOgor LSAgICAgICAgcHJpbnQgInVzYWdlOiBob3RzaG90MmNhY2hlZ3JpbmQgLW8gb3V0cHV0ZmlsZSBp bjEgW2luMiBbaW4zIFsuLi5dXV0iCisrICAgICAgICBwcmludCgidXNhZ2U6IGhvdHNob3QyY2Fj aGVncmluZCAtbyBvdXRwdXRmaWxlIGluMSBbaW4yIFtpbjMgWy4uLl1dXSIpCisgICAgICAgICBy ZXR1cm4KKyAgICAgb3V0cHV0ZmlsZW5hbWUgPSBzeXMuYXJndlsyXQorICAgICB0cnk6CistICAg ICAgICBvdXRwdXQgPSBmaWxlKG91dHB1dGZpbGVuYW1lLCAidyIpCisrICAgICAgICBvdXRwdXQg PSBvcGVuKG91dHB1dGZpbGVuYW1lLCAidyIpCisgICAgICAgICBhcmdzID0gc3lzLmFyZ3ZbMzpd CisgICAgICAgICBjb252ZXJ0UHJvZkZpbGVzKG91dHB1dCwgYXJncykKKyAgICAgICAgIG91dHB1 dC5jbG9zZSgpCisgICAgIGV4Y2VwdCBJT0Vycm9yOgorLSAgICAgICAgcHJpbnQgImNvdWxkIG5v dCBvcGVuICclcycgZm9yIHdyaXRpbmcuIiAlIG91dHB1dGZpbGVuYW1lCisrICAgICAgICBwcmlu dCgiY291bGQgbm90IG9wZW4gJyVzJyBmb3Igd3JpdGluZy4iICUgb3V0cHV0ZmlsZW5hbWUpCisg CisgZGVmIHJ1bl93aXRoX29wdHBhcnNlKCk6CisgICAgICIiInBhcnNlIHRoZSBvcHRpb25zIHdp dGggb3B0cGFyc2UiIiIKK0BAIC0zNDYsMTAgKzM0NiwxMCBAQAorICAgICBmaWxlX2xpbWl0ID0g aW50KG9wdGlvbnMuZmlsZV9saW1pdCkKKyAgICAgdHJ5OgorICAgICAgICAgaWYgb3B0aW9ucy5v dXRwdXRmaWxlbmFtZSBhbmQgb3B0aW9ucy5vdXRwdXRmaWxlbmFtZSAhPSAiLSI6CistICAgICAg ICAgICAgb3V0cHV0ID0gZmlsZShvcHRpb25zLm91dHB1dGZpbGVuYW1lLCAidyIpCisrICAgICAg ICAgICAgb3V0cHV0ID0gb3BlbihvcHRpb25zLm91dHB1dGZpbGVuYW1lLCAidyIpCisgICAgICAg ICAgICAgY2xvc2Vfb3V0cHV0ID0gMQorICAgICBleGNlcHQgSU9FcnJvcjoKKy0gICAgICAgIHBy aW50ICJjb3VsZCBub3Qgb3BlbiAnJXMnIGZvciB3cml0aW5nLiIgJSBvcHRpb25zLm91dHB1dGZp bGVuYW1lCisrICAgICAgICBwcmludCgiY291bGQgbm90IG9wZW4gJyVzJyBmb3Igd3JpdGluZy4i ICUgb3B0aW9ucy5vdXRwdXRmaWxlbmFtZSkKKyAgICAgaWYgb3V0cHV0OgorICAgICAgICAgY29u dmVydFByb2ZGaWxlcyhvdXRwdXQsIGFyZ3MpCisgICAgICAgICBpZiBjbG9zZV9vdXRwdXQ6CitA QCAtMzY0LDcgKzM2NCw3IEBACisgICAgICAgICBwcm9mLnJ1bmNhbGwocnVuKQorICAgICAgICAg cHJvZi5jbG9zZSgpCisgICAgIGVsc2U6CistICAgICAgICBwcmludCAibm90IHByb2ZpbGluZyBt eXNlbGYsIHNpbmNlICclcycgZXhpc3RzLCBydW5uaW5nIG5vcm1hbCIgJSBmaWxlbmFtZQorKyAg ICAgICAgcHJpbnQoIm5vdCBwcm9maWxpbmcgbXlzZWxmLCBzaW5jZSAnJXMnIGV4aXN0cywgcnVu bmluZyBub3JtYWwiICUgZmlsZW5hbWUpCisgICAgICAgICBydW4oKQorIAorICMgY2hlY2sgaWYg b3B0cGFyc2UgaXMgYXZhaWxhYmxlLgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9rY2FjaGVncmluZC90 ZW1wbGF0ZSBiL3NyY3BrZ3Mva2NhY2hlZ3JpbmQvdGVtcGxhdGUKaW5kZXggMGQ4MTJiYTcxZjQ2 YS4uNmMyOTVhNmY1YmYwNyAxMDA2NDQKLS0tIGEvc3JjcGtncy9rY2FjaGVncmluZC90ZW1wbGF0 ZQorKysgYi9zcmNwa2dzL2tjYWNoZWdyaW5kL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBU ZW1wbGF0ZSBmaWxlIGZvciAna2NhY2hlZ3JpbmQnCiBwa2duYW1lPWtjYWNoZWdyaW5kCiB2ZXJz aW9uPTIzLjA4LjAKLXJldmlzaW9uPTEKK3JldmlzaW9uPTIKIGJ1aWxkX3N0eWxlPWNtYWtlCiBo b3N0bWFrZWRlcGVuZHM9ImV4dHJhLWNtYWtlLW1vZHVsZXMgZ2V0dGV4dCBrY29yZWFkZG9ucyBr ZG9jdG9vbHMKICBwa2ctY29uZmlnIHF0NS1ob3N0LXRvb2xzIHF0NS1xbWFrZSIKQEAgLTE0LDQg KzE0LDQgQEAgaG9tZXBhZ2U9Imh0dHBzOi8va2RlLm9yZy9hcHBsaWNhdGlvbnMvZGV2ZWxvcG1l bnQva2NhY2hlZ3JpbmQvIgogY2hhbmdlbG9nPSJodHRwczovL2tkZS5vcmcvYW5ub3VuY2VtZW50 cy9jaGFuZ2Vsb2dzL2dlYXIvJHt2ZXJzaW9ufS8ja2NhY2hlZ3JpbmQiCiBkaXN0ZmlsZXM9IiR7 S0RFX1NJVEV9L3JlbGVhc2Utc2VydmljZS8ke3ZlcnNpb259L3NyYy9rY2FjaGVncmluZC0ke3Zl cnNpb259LnRhci54eiIKIGNoZWNrc3VtPTdjNTc3ZDNkMmU3MTE1YzE0NjFjYTUwZjFiMTI4OTk2 NzE5MjIyYTE5ZDRkMTAyMzc2NDIwZGNjMmI1MTA3ODEKLXB5dGhvbl92ZXJzaW9uPTIKK3B5dGhv bl92ZXJzaW9uPTMKCkZyb20gZWQwZDY1YTI2ZjNkMjU4NGE2ZDZkMzAxYjllYWRmZWIyNTQ5ODYz NSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogY2xhc3NhYmJ5YW1wIDx2b2lkQHBsYWNl dmlvbGV0dGUubmV0PgpEYXRlOiBTYXQsIDcgT2N0IDIwMjMgMTU6MjY6MDEgLTA0MDAKU3ViamVj dDogW1BBVENIIDAzLzEwXSBlY2xpcHNlOiB3b3JrcyBvbiBweXRob24zCgotLS0KIHNyY3BrZ3Mv ZWNsaXBzZS90ZW1wbGF0ZSB8IDQgKystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygr KSwgMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2VjbGlwc2UvdGVtcGxhdGUg Yi9zcmNwa2dzL2VjbGlwc2UvdGVtcGxhdGUKaW5kZXggNDEwODExN2RhYmM2Ny4uZjFiOTA2NGI1 ODkyMCAxMDA2NDQKLS0tIGEvc3JjcGtncy9lY2xpcHNlL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3Mv ZWNsaXBzZS90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2Vj bGlwc2UnCiBwa2duYW1lPWVjbGlwc2UKIHZlcnNpb249NC4yOAotcmV2aXNpb249MQorcmV2aXNp b249MgogI2NvZGUgbmFtZSBvZiB2ZXJzaW9uCiBfcmVsZWFzZT0yMDIzLTA2CiBhcmNocz0ieDg2 XzY0IgpAQCAtMTksNyArMTksNyBAQCBfZWRpdGlvbj1qYXZhCiBfbWlycm9yPSJodHRwOi8vZnRw LXN0dWQuZmh0LWVzc2xpbmdlbi5kZS9wdWIvTWlycm9ycy9lY2xpcHNlIgogZGlzdGZpbGVzPSIk e19taXJyb3J9L3RlY2hub2xvZ3kvZXBwL2Rvd25sb2Fkcy9yZWxlYXNlLyR7X3JlbGVhc2V9LyR7 X3BhdGNofS9lY2xpcHNlLSR7X2VkaXRpb259LSR7X3JlbGVhc2V9LVItbGludXgtZ3RrLXg4Nl82 NC50YXIuZ3oiCiBjaGVja3N1bT0xNDJlMzM4MzFmYmJlNTJmNTMyNTVhNzQ2YjM1YTAzOGRmZjAz NjZhMDRjYjRkM2JlMmQ4ZmUwY2U3NmYzNGU4Ci1weXRob25fdmVyc2lvbj0yCitweXRob25fdmVy c2lvbj0zCiAKIGRvX2luc3RhbGwoKSB7CiAJdm1rZGlyIHVzci9saWIvZWNsaXBzZQoKRnJvbSAw MDlkZGMyNThjOGEyYjM5NDcxNDBkZjBjYmYyMzI1YzMxM2RkNjU4IE1vbiBTZXAgMTcgMDA6MDA6 MDAgMjAwMQpGcm9tOiBjbGFzc2FiYnlhbXAgPHZvaWRAcGxhY2V2aW9sZXR0ZS5uZXQ+CkRhdGU6 IEZyaSwgNiBPY3QgMjAyMyAxNjo1ODo0NCAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggMDQvMTBdIGxp YmRidXNtZW51LWdsaWI6IHdvcmsgb24gcHl0aG9uMwoKLS0tCiAuLi4vbGliZGJ1c21lbnUtZ2xp Yi9wYXRjaGVzL3B5dGhvbjMucGF0Y2ggICAgfCA2MCArKysrKysrKysrKysrKysrKysrCiBzcmNw a2dzL2xpYmRidXNtZW51LWdsaWIvdGVtcGxhdGUgICAgICAgICAgICAgfCAgMyArLQogMiBmaWxl cyBjaGFuZ2VkLCA2MSBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQogY3JlYXRlIG1vZGUg MTAwNjQ0IHNyY3BrZ3MvbGliZGJ1c21lbnUtZ2xpYi9wYXRjaGVzL3B5dGhvbjMucGF0Y2gKCmRp ZmYgLS1naXQgYS9zcmNwa2dzL2xpYmRidXNtZW51LWdsaWIvcGF0Y2hlcy9weXRob24zLnBhdGNo IGIvc3JjcGtncy9saWJkYnVzbWVudS1nbGliL3BhdGNoZXMvcHl0aG9uMy5wYXRjaApuZXcgZmls ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwLi44MzBhMTkwMDViZTU4Ci0tLSAvZGV2 L251bGwKKysrIGIvc3JjcGtncy9saWJkYnVzbWVudS1nbGliL3BhdGNoZXMvcHl0aG9uMy5wYXRj aApAQCAtMCwwICsxLDYwIEBACistLS0gYS90b29scy9kYnVzbWVudS1iZW5jaAorKysrIGIvdG9v bHMvZGJ1c21lbnUtYmVuY2gKK0BAIC0xLDQgKzEsNCBAQAorLSMhL3Vzci9iaW4vZW52IHB5dGhv bgorKyMhL3Vzci9iaW4vZW52IHB5dGhvbjMKKyAjIGVuY29kaW5nOiB1dGYtOAorICIiIgorIEEg bGlicmFyeSB0byBjb21tdW5pY2F0ZSBhIG1lbnUgb2JqZWN0IHNldCBhY2Nyb3NzIERCdXMgYW5k CitAQCAtNjEsNyArNjEsNyBAQAorIAorIGRlZiBkdW1wX3Byb3BlcnRpZXMocHJvcGVydGllcywg cHJlcGVuZD0iIik6CisgICAgIGZvciBrZXksIHZhbHVlIGluIHByb3BlcnRpZXMuaXRlbXMoKToK Ky0gICAgICAgIHByaW50ICIlcy0gJXM6ICVzIiAlIChwcmVwZW5kLCBrZXksIHZhbHVlKQorKyAg ICAgICAgcHJpbnQoIiVzLSAlczogJXMiICUgKHByZXBlbmQsIGtleSwgdmFsdWUpKQorIAorIAor IGRlZiBydW5fdGVzdF9zZXF1ZW5jZShtZW51LCBkdW1wPUZhbHNlKToKK0BAIC03NCw5ICs3NCw5 IEBACisgICAgIHJldmlzaW9uLCBsYXlvdXQgPSBtZW51LkdldExheW91dChkYnVzLkludDMyKDAp KQorICAgICB0aW1lc1siR2V0TGF5b3V0Il0gPSBjaHJvbm8uZWxhcHNlZCgpCisgICAgIGlmIGR1 bXA6CistICAgICAgICBwcmludCAicmV2aXNpb246IiwgcmV2aXNpb24KKy0gICAgICAgIHByaW50 ICJsYXlvdXQ6IgorLSAgICAgICAgcHJpbnQgbGF5b3V0CisrICAgICAgICBwcmludCgicmV2aXNp b246IiwgcmV2aXNpb24pCisrICAgICAgICBwcmludCgibGF5b3V0OiIpCisrICAgICAgICBwcmlu dChsYXlvdXQpCisgCisgICAgICMgR2V0IGlkcworICAgICB0cmVlID0gRVQuZnJvbXN0cmluZyhs YXlvdXQpCitAQCAtODksMTcgKzg5LDE3IEBACisgICAgIGNoaWxkcmVuID0gbWVudS5HZXRDaGls ZHJlbihkYnVzLkludDMyKHJvb3RfaWQpLCBwcm9wZXJ0eV9uYW1lcykKKyAgICAgdGltZXNbIkdl dENoaWxkcmVuIl0gPSBjaHJvbm8uZWxhcHNlZCgpCisgICAgIGlmIGR1bXA6CistICAgICAgICBw cmludCAiY2hpbGRyZW46IgorKyAgICAgICAgcHJpbnQoImNoaWxkcmVuOiIpCisgICAgICAgICBm b3IgY2hpbGQgaW4gY2hpbGRyZW46CisgICAgICAgICAgICAgaWQsIHByb3BlcnRpZXMgPSBjaGls ZAorLSAgICAgICAgICAgIHByaW50ICItICVkOiIgJSBpZAorKyAgICAgICAgICAgIHByaW50KCIt ICVkOiIgJSBpZCkKKyAgICAgICAgICAgICBkdW1wX3Byb3BlcnRpZXMocHJvcGVydGllcywgcHJl cGVuZD0iICIpCisgCisgICAgIGNocm9uby5yZXN0YXJ0KCkKKyAgICAgcHJvcGVydGllcyA9IG1l bnUuR2V0UHJvcGVydGllcyhkYnVzLkludDMyKGNoaWxkX2lkKSwgcHJvcGVydHlfbmFtZXMpCisg ICAgIHRpbWVzWyJHZXRQcm9wZXJ0aWVzIl0gPSBjaHJvbm8uZWxhcHNlZCgpCisgICAgIGlmIGR1 bXA6CistICAgICAgICBwcmludCAicHJvcGVydGllczoiCisrICAgICAgICBwcmludCgicHJvcGVy dGllczoiKQorICAgICAgICAgZHVtcF9wcm9wZXJ0aWVzKHByb3BlcnRpZXMpCisgCisgICAgIHJl dHVybiB0aW1lcworQEAgLTEwOSw3ICsxMDksNyBAQAorIAorIGRlZiBwcmludF9wcm9iZShwcmVm aXgsIG5hbWUsIHZhbHVlLCB0aW1lc3RhbXApOgorICAgICB2YWx1ZSA9IGludCh2YWx1ZSAqIDEw MDAwMDApCistICAgIHByaW50ICIlKHByZWZpeClzLiUobmFtZSlzOiUodmFsdWUpZEAlKHRpbWVz dGFtcClkIiAlIGxvY2FscygpCisrICAgIHByaW50KCIlKHByZWZpeClzLiUobmFtZSlzOiUodmFs dWUpZEAlKHRpbWVzdGFtcClkIiAlIGxvY2FscygpKQorIAorIGRlZiBtYWluKCk6CisgICAgIHBh cnNlciA9IE9wdGlvblBhcnNlcih1c2FnZSA9ICIlcHJvZyBbb3B0aW9uc10iKQpkaWZmIC0tZ2l0 IGEvc3JjcGtncy9saWJkYnVzbWVudS1nbGliL3RlbXBsYXRlIGIvc3JjcGtncy9saWJkYnVzbWVu dS1nbGliL3RlbXBsYXRlCmluZGV4IDg5ODE0MDEyMTRjYmEuLjI2YzdkM2YyMDFmOTQgMTAwNjQ0 Ci0tLSBhL3NyY3BrZ3MvbGliZGJ1c21lbnUtZ2xpYi90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2xp YmRidXNtZW51LWdsaWIvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUg Zm9yICdsaWJkYnVzbWVudS1nbGliJwogcGtnbmFtZT1saWJkYnVzbWVudS1nbGliCiB2ZXJzaW9u PTE2LjA0LjAKLXJldmlzaW9uPTUKK3JldmlzaW9uPTYKIGJ1aWxkX3N0eWxlPWdudS1jb25maWd1 cmUKIGJ1aWxkX2hlbHBlcj0iZ2lyIgogY29uZmlndXJlX2FyZ3M9Ii0tZGlzYWJsZS1kdW1wZXIg LS1kaXNhYmxlLXN0YXRpYyAtLWRpc2FibGUtdGVzdHMKQEAgLTE1LDcgKzE1LDYgQEAgbGljZW5z ZT0iR1BMLTMsIExHUEwtMi4xLCBMR1BMLTMiCiBob21lcGFnZT0iaHR0cHM6Ly9sYXVuY2hwYWQu bmV0L2xpYmRidXNtZW51IgogZGlzdGZpbGVzPSIke2hvbWVwYWdlfS8ke3ZlcnNpb24lLip9LyR7 dmVyc2lvbn0vK2Rvd25sb2FkL2xpYmRidXNtZW51LSR7dmVyc2lvbn0udGFyLmd6IgogY2hlY2tz dW09YjljYzRhMmFjZDc0NTA5NDM1ODkyODIzNjA3ZDk2NmQ0MjRiZDlhZDVkMGIwMDkzOGYyNzI0 MGExYmZhODc4YQotcHl0aG9uX3ZlcnNpb249MiAjdW52ZXJpZmllZAogCiBidWlsZF9vcHRpb25z PSJnaXIiCiBidWlsZF9vcHRpb25zX2RlZmF1bHQ9ImdpciIKCkZyb20gZWY0ZDkwOTViZWJjNzM4 ZmRkZWZiNTU5NjI0ZjU0ZWU3MmRiMTYyOSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTog Y2xhc3NhYmJ5YW1wIDx2b2lkQHBsYWNldmlvbGV0dGUubmV0PgpEYXRlOiBGcmksIDYgT2N0IDIw MjMgMTc6MTI6NTUgLTA0MDAKU3ViamVjdDogW1BBVENIIDA1LzEwXSBuaXRyb3NoYXJlOiB3b3Jr IG9uIHB5dGhvbjMKCi0tLQogc3JjcGtncy9uaXRyb3NoYXJlL3BhdGNoZXMvcHl0aG9uMy5wYXRj aCB8IDEzICsrKysrKysrKysrKysKIHNyY3BrZ3Mvbml0cm9zaGFyZS90ZW1wbGF0ZSAgICAgICAg ICAgICAgfCAgNCArKy0tCiAyIGZpbGVzIGNoYW5nZWQsIDE1IGluc2VydGlvbnMoKyksIDIgZGVs ZXRpb25zKC0pCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy9uaXRyb3NoYXJlL3BhdGNoZXMv cHl0aG9uMy5wYXRjaAoKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mvbml0cm9zaGFyZS9wYXRjaGVzL3B5 dGhvbjMucGF0Y2ggYi9zcmNwa2dzL25pdHJvc2hhcmUvcGF0Y2hlcy9weXRob24zLnBhdGNoCm5l dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAuLmYzMGFhYWNhM2Q1YzQKLS0t IC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL25pdHJvc2hhcmUvcGF0Y2hlcy9weXRob24zLnBhdGNo CkBAIC0wLDAgKzEsMTMgQEAKKy0tLSBhL3NyYy9kaXN0L25pdHJvc2hhcmUucHkuaW4KKysrKyBi L3NyYy9kaXN0L25pdHJvc2hhcmUucHkuaW4KK0BAIC0yNyw4ICsyNyw4IEBACisgCisgZnJvbSBq c29uIGltcG9ydCBsb2FkcworIGZyb20gb3MgaW1wb3J0IHBhdGgKKy1mcm9tIHVybGxpYiBpbXBv cnQgdXJsMnBhdGhuYW1lCistZnJvbSB1cmxwYXJzZSBpbXBvcnQgdXJscGFyc2UKKytmcm9tIHVy bGxpYi5yZXF1ZXN0IGltcG9ydCB1cmwycGF0aG5hbWUKKytmcm9tIHVybGxpYi5wYXJzZSBpbXBv cnQgdXJscGFyc2UKKyAKKyBpbXBvcnQgZ2kKKyBnaS5yZXF1aXJlX3ZlcnNpb24oJ0d0aycsICcz LjAnKQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9uaXRyb3NoYXJlL3RlbXBsYXRlIGIvc3JjcGtncy9u aXRyb3NoYXJlL3RlbXBsYXRlCmluZGV4IDUwZjFhNmY2MmE5MWMuLjA4NTAwNzRiMjhjZmQgMTAw NjQ0Ci0tLSBhL3NyY3BrZ3Mvbml0cm9zaGFyZS90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL25pdHJv c2hhcmUvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICduaXRy b3NoYXJlJwogcGtnbmFtZT1uaXRyb3NoYXJlCiB2ZXJzaW9uPTAuMy40Ci1yZXZpc2lvbj0xCity ZXZpc2lvbj0yCiBidWlsZF9zdHlsZT1jbWFrZQogcHljb21waWxlX2RpcnM9InVzci9zaGFyZS9u YXV0aWx1cy1weXRob24vZXh0ZW5zaW9ucwogIHVzci9zaGFyZS9uZW1vLXB5dGhvbi9leHRlbnNp b25zCkBAIC0xNSw3ICsxNSw3IEBAIGxpY2Vuc2U9Ik1JVCIKIGhvbWVwYWdlPSJodHRwOi8vbml0 cm9zaGFyZS5uZXQiCiBkaXN0ZmlsZXM9Imh0dHBzOi8vZ2l0aHViLmNvbS9uaXRyb3NoYXJlL25p dHJvc2hhcmUtZGVza3RvcC9hcmNoaXZlLyR7dmVyc2lvbn0udGFyLmd6IgogY2hlY2tzdW09Mjk4 NzRlNTkwOWMyOTIxMWEzYzllMTNmOGMwZjQ5YjkwMWVjMjk5NmU1ZDYwZDgwYWY4MGQyZmI4MGMz ZDdlYwotcHl0aG9uX3ZlcnNpb249MiAjdW52ZXJpZmllZAorcHl0aG9uX3ZlcnNpb249MwogCiBp ZiBbICIkQ1JPU1NfQlVJTEQiIF07IHRoZW4KIAlob3N0bWFrZWRlcGVuZHMrPSIgcXQ1LWhvc3Qt dG9vbHMiCgpGcm9tIGMyZDVjZjdjMDhiNGU5Yjc1OTFkOThiNWM4YTI5YjVkYTYzODA0MzYgTW9u IFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IGNsYXNzYWJieWFtcCA8dm9pZEBwbGFjZXZpb2xl dHRlLm5ldD4KRGF0ZTogU2F0LCA3IE9jdCAyMDIzIDIxOjQ5OjIzIC0wNDAwClN1YmplY3Q6IFtQ QVRDSCAwNi8xMF0gdHZoZWFkZW5kOiBjb21wYXRpYmxlIHdpdGggcHl0aG9uMwoKLS0tCiBzcmNw a2dzL3R2aGVhZGVuZC90ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlv bigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvdHZoZWFkZW5kL3RlbXBs YXRlIGIvc3JjcGtncy90dmhlYWRlbmQvdGVtcGxhdGUKaW5kZXggYTIwMDQ0ODAzMzJiMi4uOWFl YTdkZTRlYzcwNSAxMDA2NDQKLS0tIGEvc3JjcGtncy90dmhlYWRlbmQvdGVtcGxhdGUKKysrIGIv c3JjcGtncy90dmhlYWRlbmQvdGVtcGxhdGUKQEAgLTcsNyArNyw3IEBAIGNvbmZpZ3VyZV9hcmdz PSItLWVuYWJsZS1kdmJzY2FuIC0tZGlzYWJsZS1mZm1wZWdfc3RhdGljCiAtLWRpc2FibGUtaGRo b21lcnVuX3N0YXRpYyAtLWRpc2FibGUtYmludHJheV9jYWNoZSAtLWRpc2FibGUtbGlieDI2NF9z dGF0aWMKIC0tZGlzYWJsZS1saWJ4MjY1X3N0YXRpYyAtLWRpc2FibGUtbGlidnB4X3N0YXRpYyAt LWRpc2FibGUtbGlidGhlb3JhX3N0YXRpYwogLS1kaXNhYmxlLWxpYnZvcmJpc19zdGF0aWMgLS1k aXNhYmxlLWxpYmZka2FhY19zdGF0aWMiCi1ob3N0bWFrZWRlcGVuZHM9ImdldHRleHQgcGtnLWNv bmZpZyBweXRob24gZ2l0IHdoaWNoIgoraG9zdG1ha2VkZXBlbmRzPSJnZXR0ZXh0IHBrZy1jb25m aWcgcHl0aG9uMyBnaXQgd2hpY2giCiBtYWtlZGVwZW5kcz0iYXZhaGktbGlicy1kZXZlbCBvcGVu c3NsLWRldmVsIHpsaWItZGV2ZWwgbGliY3VybC1kZXZlbCBmZm1wZWctZGV2ZWwiCiBzaG9ydF9k ZXNjPSJUViBzdHJlYW1pbmcgc2VydmVyIgogbWFpbnRhaW5lcj0ibGVtbWkgPGxlbW1pQG5lcmQy bmVyZC5vcmc+IgoKRnJvbSA3MTIwZDM3ZmZjNGUxYmRlMmU5Y2Q1NGQxMzJhMWUyMzUyM2Y4OTcx IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBjbGFzc2FiYnlhbXAgPHZvaWRAcGxhY2V2 aW9sZXR0ZS5uZXQ+CkRhdGU6IFNhdCwgNyBPY3QgMjAyMyAyMTo1ODowMiAtMDQwMApTdWJqZWN0 OiBbUEFUQ0ggMDcvMTBdIHNra3Rvb2xzOiBwYXRjaCBmb3IgcHl0aG9uMwoKLS0tCiBzcmNwa2dz L3Nra3Rvb2xzL3BhdGNoZXMvcHl0aG9uMy5wYXRjaCB8IDEzMSArKysrKysrKysrKysrKysrKysr KysrKysrCiBzcmNwa2dzL3Nra3Rvb2xzL3RlbXBsYXRlICAgICAgICAgICAgICB8ICAgNCArLQog MiBmaWxlcyBjaGFuZ2VkLCAxMzMgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKIGNyZWF0 ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3Nra3Rvb2xzL3BhdGNoZXMvcHl0aG9uMy5wYXRjaAoKZGlm ZiAtLWdpdCBhL3NyY3BrZ3Mvc2trdG9vbHMvcGF0Y2hlcy9weXRob24zLnBhdGNoIGIvc3JjcGtn cy9za2t0b29scy9wYXRjaGVzL3B5dGhvbjMucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k ZXggMDAwMDAwMDAwMDAwMC4uZWZkNTJkYTRhZjI1NwotLS0gL2Rldi9udWxsCisrKyBiL3NyY3Br Z3Mvc2trdG9vbHMvcGF0Y2hlcy9weXRob24zLnBhdGNoCkBAIC0wLDAgKzEsMTMxIEBACistLS0g YS9za2syY2RiLnB5CisrKysgYi9za2syY2RiLnB5CitAQCAtMTYsMTEgKzE2LDEyIEBACisgaW1w b3J0IHN5cywgb3MKKyBmcm9tIHN0cnVjdCBpbXBvcnQgcGFjaywgdW5wYWNrCisgZnJvbSBhcnJh eSBpbXBvcnQgYXJyYXkKKytmcm9tIGZ1bmN0b29scyBpbXBvcnQgcmVkdWNlCisgCisgCisgIyBj YWxjIGhhc2ggdmFsdWUgd2l0aCBhIGdpdmVuIGtleQorLWRlZiBjZGJoYXNoKHMsIG49MEwpOgor LSAgcmV0dXJuIHJlZHVjZShsYW1iZGEgaCxjOiAoKGgqMzMpIF4gb3JkKGMpKSAmIDB4ZmZmZmZm ZmZMLCBzLCBuKzUzODFMKQorK2RlZiBjZGJoYXNoKHMsIG49MCk6CisrICByZXR1cm4gcmVkdWNl KGxhbWJkYSBoLGM6ICgoaCozMykgXiBvcmQoYykpICYgMHhmZmZmZmZmZiwgcywgbis1MzgxKQor IAorIGlmIHBhY2soJz1pJywxKSA9PSBwYWNrKCc+aScsMSk6CisgICAjIGJpZyBlbmRpYW4KK0BA IC02Miw5ICs2Myw5IEBACisgICAKKyAgIGRlZiBfX2luaXRfXyhzZWxmLCBjZGJuYW1lLCBkb2Nh Y2hlPTEpOgorICAgICBzZWxmLm5hbWUgPSBjZGJuYW1lCistICAgIHNlbGYuX2ZwID0gZmlsZShj ZGJuYW1lLCAncmInKQorKyAgICBzZWxmLl9mcCA9IG9wZW4oY2RibmFtZSwgJ3JiJykKKyAgICAg aGFzaDAgPSBkZWNvZGUoc2VsZi5fZnAucmVhZCgyMDQ4KSkKKy0gICAgc2VsZi5faGFzaDAgPSBb IChoYXNoMFtpXSwgaGFzaDBbaSsxXSkgZm9yIGkgaW4geHJhbmdlKDAsIDUxMiwgMikgXQorKyAg ICBzZWxmLl9oYXNoMCA9IFsgKGhhc2gwW2ldLCBoYXNoMFtpKzFdKSBmb3IgaSBpbiByYW5nZSgw LCA1MTIsIDIpIF0KKyAgICAgc2VsZi5faGFzaDEgPSBbIE5vbmUgXSAqIDI1NgorICAgICAoc2Vs Zi5fZW9kLF8pID0gc2VsZi5faGFzaDBbMF0KKyAgICAgc2VsZi5fZG9jYWNoZSA9IGRvY2FjaGUK K0BAIC05Myw3ICs5NCw3IEBACisgICAgICAgc2VsZi5faGFzaDFbaDFdID0gaHMKKyAgICAgaSA9 ICgoaCA+PiA4KSAlIG5jZWxscykgKiAyCisgICAgIG4gPSBuY2VsbHMqMgorLSAgICBmb3IgXyBp biB4cmFuZ2UobmNlbGxzKToKKysgICAgZm9yIF8gaW4gcmFuZ2UobmNlbGxzKToKKyAgICAgICBw MSA9IGhzW2krMV0KKyAgICAgICBpZiBwMSA9PSAwOiByYWlzZSBLZXlFcnJvcihrKQorICAgICAg IGlmIGhzW2ldID09IGg6CitAQCAtMTIyLDcgKzEyMyw3IEBACisgICAgICAgcmV0dXJuIEZhbHNl CisgCisgICBkZWYgX19jb250YWluc19fKHNlbGYsIGspOgorLSAgICByZXR1cm4gc2VsZi5oYXNf a2V5KGspCisrICAgIHJldHVybiBrIGluIHNlbGYKKyAKKyAgIGRlZiBmaXJzdGtleShzZWxmKToK KyAgICAgc2VsZi5fa2V5aXRlciA9IE5vbmUKK0BAIC0xMzIsNyArMTMzLDcgQEAKKyAgICAgaWYg bm90IHNlbGYuX2tleWl0ZXI6CisgICAgICAgc2VsZi5fa2V5aXRlciA9ICggayBmb3IgKGssdikg aW4gY2RiaXRlcihzZWxmLl9mcCwgc2VsZi5fZW9kKSApCisgICAgIHRyeToKKy0gICAgICByZXR1 cm4gc2VsZi5fa2V5aXRlci5uZXh0KCkKKysgICAgICByZXR1cm4gbmV4dChzZWxmLl9rZXlpdGVy KQorICAgICBleGNlcHQgU3RvcEl0ZXJhdGlvbjoKKyAgICAgICByZXR1cm4gTm9uZQorIAorQEAg LTE0MCw3ICsxNDEsNyBAQAorICAgICBpZiBub3Qgc2VsZi5fZWFjaGl0ZXI6CisgICAgICAgc2Vs Zi5fZWFjaGl0ZXIgPSBjZGJpdGVyKHNlbGYuX2ZwLCBzZWxmLl9lb2QpCisgICAgIHRyeToKKy0g ICAgICByZXR1cm4gc2VsZi5fZWFjaGl0ZXIubmV4dCgpCisrICAgICAgcmV0dXJuIG5leHQoc2Vs Zi5fZWFjaGl0ZXIpCisgICAgIGV4Y2VwdCBTdG9wSXRlcmF0aW9uOgorICAgICAgIHJldHVybiBO b25lCisgICAKK0BAIC0xNTksOSArMTYwLDkgQEAKKyAgICAgc2VsZi5mbiA9IGNkYm5hbWUKKyAg ICAgc2VsZi5mbnRtcCA9IHRtcG5hbWUKKyAgICAgc2VsZi5udW1lbnRyaWVzID0gMAorLSAgICBz ZWxmLl9mcCA9IGZpbGUodG1wbmFtZSwgJ3diJykKKysgICAgc2VsZi5fZnAgPSBvcGVuKHRtcG5h bWUsICd3YicpCisgICAgIHNlbGYuX3BvcyA9IDIwNDggICAgICAgICAgICAgICAgICAgICMgc2l6 ZW9mKChoLHApKSoyNTYKKy0gICAgc2VsZi5fYnVja2V0ID0gWyBhcnJheSgnSScpIGZvciBfIGlu IHhyYW5nZSgyNTYpIF0KKysgICAgc2VsZi5fYnVja2V0ID0gWyBhcnJheSgnSScpIGZvciBfIGlu IHJhbmdlKDI1NikgXQorICAgICByZXR1cm4KKyAKKyAgIGRlZiBfX2xlbl9fKHNlbGYpOgorQEAg LTE5Nyw3ICsxOTgsNyBAQAorICAgICAgIGlmIG5vdCBiMTogY29udGludWUKKyAgICAgICBibGVu ID0gbGVuKGIxKQorICAgICAgIGEgPSBhcnJheSgnSScsIFswXSpibGVuKjIpCistICAgICAgZm9y IGogaW4geHJhbmdlKDAsIGJsZW4sIDIpOgorKyAgICAgIGZvciBqIGluIHJhbmdlKDAsIGJsZW4s IDIpOgorICAgICAgICAgKGgscCkgPSAoYjFbal0sYjFbaisxXSkKKyAgICAgICAgIGkgPSAoKGgg Pj4gOCkgJSBibGVuKSoyCisgICAgICAgICB3aGlsZSBhW2krMV06ICAgICAgICAgICAgICMgaXMg Y2VsbFtpXSBhbHJlYWR5IG9jY3VwaWVkPworQEAgLTIzOCw3ICsyMzksNyBAQAorIAorICMgY2Ri ZHVtcAorIGRlZiBjZGJkdW1wKGNkYm5hbWUpOgorLSAgZnAgPSBmaWxlKGNkYm5hbWUsICdyYicp CisrICBmcCA9IG9wZW4oY2RibmFtZSwgJ3JiJykKKyAgIChlb3IsKSA9IHVucGFjaygnPEknLCBm cC5yZWFkKDQpKQorICAgcmV0dXJuIGNkYml0ZXIoZnAsIGVvcikKKyAKK0BAIC0yNDgsNyArMjQ5 LDcgQEAKKyAgIHEgPSBbXQorICAgZm9yIGl0IGluIGl0ZXJzOgorICAgICB0cnk6CistICAgICAg cS5hcHBlbmQoKGl0Lm5leHQoKSxpdCkpCisrICAgICAgcS5hcHBlbmQoKG5leHQoaXQpLGl0KSkK KyAgICAgZXhjZXB0IFN0b3BJdGVyYXRpb246CisgICAgICAgcGFzcworICAgazAgPSBOb25lCitA QCAtMjYyLDcgKzI2Myw3IEBACisgICAgIHZzLmFwcGVuZCh2KQorICAgICBrMCA9IGsKKyAgICAg dHJ5OgorLSAgICAgIHEuYXBwZW5kKChpdC5uZXh0KCksaXQpKQorKyAgICAgIHEuYXBwZW5kKChu ZXh0KGl0KSxpdCkpCisgICAgIGV4Y2VwdCBTdG9wSXRlcmF0aW9uOgorICAgICAgIGNvbnRpbnVl CisgICBpZiB2czogeWllbGQgKGswLHZzKQorQEAgLTI4MCw3ICsyODEsNyBAQAorICAgaW1wb3J0 IGZpbGVpbnB1dAorICAgaW1wb3J0IG9zLnBhdGgKKyAgIGRlZiB1c2FnZSgpOgorLSAgICBwcmlu dCAndXNhZ2U6ICVzIFstZl0gb3V0ZmlsZSBbaW5maWxlIC4uLl0nICUgYXJndlswXQorKyAgICBw cmludCgndXNhZ2U6ICVzIFstZl0gb3V0ZmlsZSBbaW5maWxlIC4uLl0nICUgYXJndlswXSkKKyAg ICAgcmV0dXJuIDEwMAorICAgdHJ5OgorICAgICAob3B0cywgYXJncykgPSBnZXRvcHQuZ2V0b3B0 KGFyZ3ZbMTpdLCAnZGZvOicpCitAQCAtMjkyLDcgKzI5Myw3IEBACisgICBpZiBub3QgYXJnczog cmV0dXJuIHVzYWdlKCkKKyAgIG91dGZpbGUgPSBhcmdzLnBvcCgwKQorICAgaWYgbm90IGZvcmNl IGFuZCBvcy5wYXRoLmV4aXN0cyhvdXRmaWxlKToKKy0gICAgcHJpbnQgPj5zeXMuc3RkZXJyLCAn ZmlsZSBleGlzdHM6ICVyJyAlIG91dGZpbGUKKysgICAgcHJpbnQoJ2ZpbGUgZXhpc3RzOiAlcicg JSBvdXRmaWxlLCBmaWxlPXN5cy5zdGRlcnIpCisgICAgIHJldHVybiAxCisgICAjCisgICBtYWtl ciA9IENEQk1ha2VyKG91dGZpbGUsIG91dGZpbGUrJy50bXAnKQpkaWZmIC0tZ2l0IGEvc3JjcGtn cy9za2t0b29scy90ZW1wbGF0ZSBiL3NyY3BrZ3Mvc2trdG9vbHMvdGVtcGxhdGUKaW5kZXggNGMx ZGRkYTk5YzAwZS4uM2NmYThmZTMxNjhjNSAxMDA2NDQKLS0tIGEvc3JjcGtncy9za2t0b29scy90 ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3Nra3Rvb2xzL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAog IyBUZW1wbGF0ZSBmaWxlIGZvciAnc2trdG9vbHMnCiBwa2duYW1lPXNra3Rvb2xzCiB2ZXJzaW9u PTEuMy40Ci1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJl CiBjb25maWd1cmVfYXJncz0iLS13aXRoLWdkYm0iCiBob3N0bWFrZWRlcGVuZHM9InBrZy1jb25m aWcgZ2xpYi1kZXZlbCIKQEAgLTEyLDcgKzEyLDcgQEAgbGljZW5zZT0iR1BMLTIuMC1vci1sYXRl ciIKIGhvbWVwYWdlPSJodHRwOi8vb3BlbmxhYi5yaW5nLmdyLmpwL3Nray8iCiBkaXN0ZmlsZXM9 Imh0dHA6Ly9vcGVubGFiLnJpbmcuZ3IuanAvc2trL3Rvb2xzLyR7cGtnbmFtZX0tJHt2ZXJzaW9u fS50YXIuZ3oiCiBjaGVja3N1bT04NGNjNWQzMzQ0MzYyMzcyZTBkZmU5M2E4NDc5MGExOTNkOTM3 MzAxNzg0MDFhOTYyNDg5NjFlZjE2MWYyMTY4Ci1weXRob25fdmVyc2lvbj0yICN1bnZlcmlmaWVk CitweXRob25fdmVyc2lvbj0zCiAKIHBvc3RfaW5zdGFsbCgpIHsKIAl2bWtkaXIgdXNyL3NoYXJl LyR7cGtnbmFtZX0KCkZyb20gYzgzODJmOWE0Y2JmZDlhMGUxNGU0Zjc2OWM5YmVjM2ZmMjJjNmI2 MyBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogY2xhc3NhYmJ5YW1wIDx2b2lkQHBsYWNl dmlvbGV0dGUubmV0PgpEYXRlOiBTdW4sIDggT2N0IDIwMjMgMDI6MDM6MzcgLTA0MDAKU3ViamVj dDogW1BBVENIIDA4LzEwXSB0YWNhY3M6IGNvbnZlcnQgc2NyaXB0IHRvIHB5dGhvbjMKCi0tLQog c3JjcGtncy90YWNhY3MvcGF0Y2hlcy9weXRob24zLnBhdGNoIHwgOTggKysrKysrKysrKysrKysr KysrKysrKysrKysrKwogc3JjcGtncy90YWNhY3MvdGVtcGxhdGUgICAgICAgICAgICAgIHwgIDYg Ky0KIDIgZmlsZXMgY2hhbmdlZCwgMTAxIGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCiBj cmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy90YWNhY3MvcGF0Y2hlcy9weXRob24zLnBhdGNoCgpk aWZmIC0tZ2l0IGEvc3JjcGtncy90YWNhY3MvcGF0Y2hlcy9weXRob24zLnBhdGNoIGIvc3JjcGtn cy90YWNhY3MvcGF0Y2hlcy9weXRob24zLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4 IDAwMDAwMDAwMDAwMDAuLmM4MTgzZDY5YThiM2UKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dz L3RhY2Fjcy9wYXRjaGVzL3B5dGhvbjMucGF0Y2gKQEAgLTAsMCArMSw5OCBAQAorLS0tIGEvZG9f YXV0aC5weQorKysrIGIvZG9fYXV0aC5weQorQEAgLTIxMSw3ICsyMTEsNyBAQAorIFdyaXR0ZW4g YnkgRGFuIFNjaG1pZHQgLSBQbGVhc2UgdmlzaXQgdGFjYWNzLm9yZyB0byBjaGVjayBmb3IgdXBk YXRlcy4KKyAnJycKKyAKKy1pbXBvcnQgc3lzLHJlLGdldG9wdCxDb25maWdQYXJzZXIKKytpbXBv cnQgc3lzLHJlLGdldG9wdCxjb25maWdwYXJzZXIKKyBmcm9tIHRpbWUgaW1wb3J0IHN0cmZ0aW1l CisgCisgIyBJIHJlYWxseSBkb24ndCB3YW50IHRvIGRlYWwgd2l0aCB0aGVzZSBleGNlcHRpb25z IG1vcmUgdGhhbiBvbmNlCitAQCAtMjMwLDIzICsyMzAsMjMgQEAKKyAgICAgI1Nob3VsZCBub3Qg aGF2ZSBhbnkgZXhjZXB0aW9ucyAtIEJVVCwganVzdCBpbiBjYXNlCisgICAgIHRyeToKKyAgICAg ICAgIGF0dHJpYnV0ZXMgPSBjb25maWcuZ2V0KHRoZV9zZWN0aW9uLCB0aGVfb3B0aW9uKQorLSAg ICBleGNlcHQgQ29uZmlnUGFyc2VyLk5vU2VjdGlvbkVycm9yOgorKyAgICBleGNlcHQgY29uZmln cGFyc2VyLk5vU2VjdGlvbkVycm9yOgorICAgICAgICAgbG9nX2ZpbGUud3JpdGUoc3RyZnRpbWUo IiVZLSVtLSVkICVIOiVNOiVTOiAiKQorICAgICAgICAgICAgICAgICArICJFcnJvcjogU2VjdGlv biAnJXMnIERvZXNuJ3QgRXhpc3QhXG4iIAorICAgICAgICAgICAgICAgICAlICh0aGVfc2VjdGlv bikpCisgICAgICAgICBzeXMuZXhpdCgxKQorLSAgICBleGNlcHQgQ29uZmlnUGFyc2VyLkR1cGxp Y2F0ZVNlY3Rpb25FcnJvcjoKKysgICAgZXhjZXB0IGNvbmZpZ3BhcnNlci5EdXBsaWNhdGVTZWN0 aW9uRXJyb3I6CisgICAgICAgICBsb2dfZmlsZS53cml0ZShzdHJmdGltZSgiJVktJW0tJWQgJUg6 JU06JVM6ICIpCisgICAgICAgICAgICAgICAgICsgIkVycm9yOiBEdXBsaWNhdGUgc2VjdGlvbiAn JXMnXG4iIAorICAgICAgICAgICAgICAgICAlICh0aGVfc2VjdGlvbikpCisgICAgICAgICBzeXMu ZXhpdCgxKQorLSAgICBleGNlcHQgQ29uZmlnUGFyc2VyLk5vT3B0aW9uRXJyb3I6CisrICAgIGV4 Y2VwdCBjb25maWdwYXJzZXIuTm9PcHRpb25FcnJvcjoKKyAgICAgICAgIGxvZ19maWxlLndyaXRl KHN0cmZ0aW1lKCIlWS0lbS0lZCAlSDolTTolUzogIikKKyAgICAgICAgICAgICAgICAgICAgICsg IkVycm9yOiAnJXMnIG5vdCBmb3VuZCBpbiBzZWN0aW9uICclc1xuJyIgCisgICAgICAgICAgICAg ICAgICAgICAgJSAodGhlX29wdGlvbiwgdGhlX3NlY3Rpb24pKQorICAgICAgICAgc3lzLmV4aXQo MSkKKyAgICAgI1RvIGRvOiBmaW5pc2ggZXhjZXB0aW9ucy4gCistICAgIGV4Y2VwdCBDb25maWdQ YXJzZXIuUGFyc2luZ0Vycm9yOgorKyAgICBleGNlcHQgY29uZmlncGFyc2VyLlBhcnNpbmdFcnJv cjoKKyAgICAgICAgIGxvZ19maWxlLndyaXRlKHN0cmZ0aW1lKCIlWS0lbS0lZCAlSDolTTolUzog IikKKyAgICAgICAgICAgICAgICAgKyAiRXJyb3I6IENhbid0IHBhcnNlIGZpbGUgJyVzJyEgKFlv dSBnb3QgbWUpXG4iIAorICAgICAgICAgICAgICAlIChmaWxlbmFtZSkpCitAQCAtMjk4LDkgKzI5 OCw5IEBACisgICAgIGFyZ3YgPSBzeXMuYXJndgorICAgICB0cnk6CisgICAgICAgICBvcHRsaXN0 LCBhcmdzID0gZ2V0b3B0LmdldG9wdChzeXMuYXJndlsxOl0sICdpOnU6ZjpsOmQ6PzpEJywgWydm aXhfY3JzX2J1ZycsJz8nLCAnLT8nLCAnaGVscCcsICdIZWxwJ10pCistICAgIGV4Y2VwdCBnZXRv cHQuR2V0b3B0RXJyb3IsIGVycjoKKy0gICAgICAgIHByaW50IHN0cihlcnIpIAorLSAgICAgICAg cHJpbnQgX19kb2NfXworKyAgICBleGNlcHQgZ2V0b3B0LkdldG9wdEVycm9yIGFzIGVycjoKKysg ICAgICAgIHByaW50KHN0cihlcnIpKSAKKysgICAgICAgIHByaW50KF9fZG9jX18pCisgICAgICAg ICBzeXMuZXhpdCgxKQorICAgICBmb3IgKGksIGopIGluIG9wdGxpc3Q6CisgICAgICAgICBpZiBp ID09ICctaSc6CitAQCAtMzE0LDE1ICszMTQsMTUgQEAKKyAgICAgICAgIGVsaWYgaSA9PSAnLWQn OgorICAgICAgICAgICAgIGRldmljZSA9IGoKKyAgICAgICAgIGVsaWYgaSBpbiAoJz8nLCAnLT8n LCAnaGVscCcsICdIZWxwJyk6CistICAgICAgICAgICAgcHJpbnQgX19kb2NfXworKyAgICAgICAg ICAgIHByaW50KF9fZG9jX18pCisgICAgICAgICAgICAgc3lzLmV4aXQoMSkKKyAgICAgICAgIGVs aWYgaSA9PSAnLUQnOgorICAgICAgICAgICAgIGlzX2RlYnVnID0gVHJ1ZQorICAgICAgICAgZWxz ZToKKy0gICAgICAgICAgICBwcmludCAnVW5rbm93biBvcHRpb246JywgaQorKyAgICAgICAgICAg IHByaW50KCdVbmtub3duIG9wdGlvbjonLCBpKQorICAgICAgICAgICAgIHN5cy5leGl0KDEpCisg ICAgIGlmIGxlbihhcmd2KSA8IDc6CistICAgICAgICBwcmludCBfX2RvY19fCisrICAgICAgICBw cmludChfX2RvY19fKQorICAgICAgICAgc3lzLmV4aXQoMSkKKyAgICAgbG9nX2ZpbGUgPSBvcGVu IChsb2dfbmFtZSwgImEiKQorICNERUJVRyEgIFdlIGF0IGxlYXN0IGdvdCBDQUxMRUQKK0BAIC0z ODQsNyArMzg0LDcgQEAKKyAgICAgICAgIGxvZ19maWxlLndyaXRlKHN0cmZ0aW1lKCIlWS0lbS0l ZCAlSDolTTolUzogIikKKyAgICAgICAgICAgICAgICAgKyAiRXJyb3I6IE5vIHVzZXJuYW1lIGVu dGVyZWQhXG4iKQorICAgICAgICAgc3lzLmV4aXQoMSkKKy0gICAgY29uZmlnID0gQ29uZmlnUGFy c2VyLlNhZmVDb25maWdQYXJzZXIoKQorKyAgICBjb25maWcgPSBjb25maWdwYXJzZXIuU2FmZUNv bmZpZ1BhcnNlcigpCisgICAgIGlmIG5vdCAoZmlsZW5hbWUgaW4gY29uZmlnLnJlYWQoZmlsZW5h bWUpKToKKyAgICAgICAgIGxvZ19maWxlLndyaXRlKHN0cmZ0aW1lKCIlWS0lbS0lZCAlSDolTTol UzogIikKKyAgICAgICAgICAgICAgICAgKyAiRXJyb3I6IENhbid0IG9wZW4vcGFyc2UgJyVzJ1xu IiAKK0BAIC00OTEsNyArNDkxLDcgQEAKKyAgICAgICAgICAgICAgICAgICAgIGZvciBpdGVtIGlu IHJldHVybl9wYWlyczoKKyAgICAgICAgICAgICAgICAgICAgICAgICAjREVCVUcKKyAgICAgICAg ICAgICAgICAgICAgICAgICAjIGxvZ19maWxlLndyaXRlKCJSZXR1cm5pbmc6JXNcbiIgJSBpdGVt LnN0cmlwKCkpCistICAgICAgICAgICAgICAgICAgICAgICAgcHJpbnQgaXRlbS5zdHJpcCgnXG4n KQorKyAgICAgICAgICAgICAgICAgICAgICAgIHByaW50KGl0ZW0uc3RyaXAoJ1xuJykpCisgICAg ICAgICAgICAgICAgICAgICBpZiB3YW50X3RhY19wYWlyczoKKyAgICAgICAgICAgICAgICAgICAg ICAgICAjREVCVUcKKyAgICAgICAgICAgICAgICAgICAgICAgICAjIGxvZ19maWxlLndyaXRlKCJF eGl0aW5nIHN0YXR1cyAyXG4iKQorQEAgLTUwNyw3ICs1MDcsNyBAQAorICAgICAgICAgICAgIGZv ciBpdGVtIGluIHJldHVybl9wYWlyczoKKyAgICAgICAgICAgICAgICAgI0RFQlVHCisgICAgICAg ICAgICAgICAgICMgbG9nX2ZpbGUud3JpdGUoIlJldHVybmluZzolc1xuIiAlIGl0ZW0uc3RyaXAo KSkKKy0gICAgICAgICAgICAgICAgcHJpbnQgaXRlbS5zdHJpcCgnXG4nKQorKyAgICAgICAgICAg ICAgICBwcmludChpdGVtLnN0cmlwKCdcbicpKQorICAgICAgICAgICAgIGxvZ19maWxlLndyaXRl KHN0cmZ0aW1lKCIlWS0lbS0lZCAlSDolTTolUzogIikKKyAgICAgICAgICAgICAgICAgICsgIlVz ZXIgJyVzJyBncmFudGVkIGFjY2VzcyB0byBkZXZpY2UgJyVzJyBpbiBncm91cCAnJXMnIGZyb20g JyVzJ1xuIgorICAgICAgICAgICAgICAgICAgJSAodXNlcl9uYW1lLCBkZXZpY2UsIHRoaXNfZ3Jv dXAsIGlwX2FkZHIpKQpkaWZmIC0tZ2l0IGEvc3JjcGtncy90YWNhY3MvdGVtcGxhdGUgYi9zcmNw a2dzL3RhY2Fjcy90ZW1wbGF0ZQppbmRleCAxY2I0ZjE3OTM1Mjk3Li4xNzlmYzFmYTE2MWVlIDEw MDY0NAotLS0gYS9zcmNwa2dzL3RhY2Fjcy90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3RhY2Fjcy90 ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ3RhY2FjcycKIHBr Z25hbWU9dGFjYWNzCiB2ZXJzaW9uPTQuMC40LjI4Ci1yZXZpc2lvbj0yCityZXZpc2lvbj0zCiBi dWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCiBjb25maWd1cmVfYXJncz0iLS13aXRoLWxpYndyYXA9 bm8iCiBob3N0bWFrZWRlcGVuZHM9ImZsZXggcGVybCIKQEAgLTEwLDkgKzEwLDkgQEAgc2hvcnRf ZGVzYz0iTW9kaWZpZWQgdmVyc2lvbiBvZiBDaXNjbydzIHRhY2FjcysgKHRhY19wbHVzKSBkZXZl bG9wZXIncyBraXQiCiBtYWludGFpbmVyPSJPcnBoYW5lZCA8b3JwaGFuQHZvaWRsaW51eC5vcmc+ IgogbGljZW5zZT0iY3VzdG9tOkNpc2NvIgogaG9tZXBhZ2U9Imh0dHA6Ly93d3cuc2hydWJiZXJ5 Lm5ldC90YWNfcGx1cy8iCi1kaXN0ZmlsZXM9ImZ0cDovL2Z0cC5zaHJ1YmJlcnkubmV0L3B1Yi90 YWNfcGx1cy8kcGtnbmFtZS1GJHZlcnNpb24udGFyLmd6IgorZGlzdGZpbGVzPSJmdHA6Ly9mdHAu c2hydWJiZXJ5Lm5ldC9wdWIvdGFjX3BsdXMvdGFjYWNzLUYkdmVyc2lvbi50YXIuZ3oiCiBjaGVj a3N1bT0xNDdmMmRjOThkMjZkMmY5M2YwYWJhNzZjOTg4Y2VkMTk2ZmZlMWMwMDFkYzJlOTFmNzg4 YTFhMmM3NDcyMTllCi1weXRob25fdmVyc2lvbj0yCitweXRob25fdmVyc2lvbj0zCiBkaXNhYmxl X3BhcmFsbGVsX2J1aWxkPXllcwogCiBwcmVfY29uZmlndXJlKCkgewoKRnJvbSA5Zjc2ZTc3Njdl MzljYTNlZjAzY2EwNzExMTIyZWMxY2U3ZTFmMTAyIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpG cm9tOiBjbGFzc2FiYnlhbXAgPHZvaWRAcGxhY2V2aW9sZXR0ZS5uZXQ+CkRhdGU6IFN1biwgOCBP Y3QgMjAyMyAwMjo0MzozMyAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggMDkvMTBdIHZkcmlmdDogcmVt b3ZlIHNjb25zY3JpcHQgZmlsZXMKCi0tLQogc3JjcGtncy92ZHJpZnQvdGVtcGxhdGUgfCA3ICsr KysrLS0KIDEgZmlsZSBjaGFuZ2VkLCA1IGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpk aWZmIC0tZ2l0IGEvc3JjcGtncy92ZHJpZnQvdGVtcGxhdGUgYi9zcmNwa2dzL3ZkcmlmdC90ZW1w bGF0ZQppbmRleCA2NDNjYjA4ODQ3ZDE5Li45MGI3MDJhZmZlY2JjIDEwMDY0NAotLS0gYS9zcmNw a2dzL3ZkcmlmdC90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3ZkcmlmdC90ZW1wbGF0ZQpAQCAtMSw3 ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ3ZkcmlmdCcKIHBrZ25hbWU9dmRyaWZ0CiB2 ZXJzaW9uPTIwMTQuMTAuMjAKLXJldmlzaW9uPTExCityZXZpc2lvbj0xMgogYnVpbGRfc3R5bGU9 c2NvbnMKIHNjb25zX3VzZV9kZXN0ZGlyPXllcwogbWFrZV9idWlsZF9hcmdzPSJyZWxlYXNlPTEg Zm9yY2VfZmVlZGJhY2s9MSBleHRidWxsZXQ9MSBkYXRhZGlyPXNoYXJlLyR7cGtnbmFtZX0iCkBA IC0xNiw3ICsxNiw3IEBAIGxpY2Vuc2U9IkdQTC0zLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0 cDovL3ZkcmlmdC5uZXQvIgogZGlzdGZpbGVzPSIke1NPVVJDRUZPUkdFX1NJVEV9LyR7cGtnbmFt ZX0vJHtwa2duYW1lfS0ke3ZlcnNpb24vLy4vLX0udGFyLmJ6MiIKIGNoZWNrc3VtPTQ1OGQ0NWQ1 OTA3NWMyY2U5NDNlYzZiYzI3MWE1YmQwZWI2YmM2ZWQxMjM2NzBiNjUwMzg3MDMzNDUwMjBiZTMK LXB5dGhvbl92ZXJzaW9uPTIKK3B5dGhvbl92ZXJzaW9uPTMKIAogcG9zdF9pbnN0YWxsKCkgewog CSMgaW5zdGFsbCAuZGVza3RvcCBmaWxlCkBAIC0zMSw2ICszMSw5IEBAIHBvc3RfaW5zdGFsbCgp IHsKIAlkb25lCiAJdmluc3RhbGwgZGF0YS90ZXh0dXJlcy9pY29ucy92ZHJpZnQtNjR4NjQucG5n IDY0NCBcCiAJCXVzci9zaGFyZS9waXhtYXBzIHZkcmlmdC5wbmcKKworCSMgcmVtb3ZlIHVubmVj ZXNzYXJ5IGJ1aWxkIHN5c3RlbSBmaWxlcworCWZpbmQgIiR7REVTVERJUn0iL3Vzci9zaGFyZS92 ZHJpZnQgLW5hbWUgJypTQ29uc2NyaXB0KicgLWRlbGV0ZQogfQogCiB2ZHJpZnQtZGF0YV9wYWNr YWdlKCkgewoKRnJvbSAyMGJkYTJlYzY3ZjY4NGNhMGJlOTk3MjM3YWRlZWI5ZDg4ZmQ0MTdlIE1v biBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBjbGFzc2FiYnlhbXAgPHZvaWRAcGxhY2V2aW9s ZXR0ZS5uZXQ+CkRhdGU6IFN1biwgOCBPY3QgMjAyMyAwMzozNzowNCAtMDQwMApTdWJqZWN0OiBb UEFUQ0ggMTAvMTBdIGZsaWdodGdlYXI6IHBhdGNoIGZvciBweXRob24zCgotLS0KIHNyY3BrZ3Mv ZmxpZ2h0Z2Vhci90ZW1wbGF0ZSB8IDYgKysrKy0tCiAxIGZpbGUgY2hhbmdlZCwgNCBpbnNlcnRp b25zKCspLCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZmxpZ2h0Z2Vhci90 ZW1wbGF0ZSBiL3NyY3BrZ3MvZmxpZ2h0Z2Vhci90ZW1wbGF0ZQppbmRleCA5NzE1YzU3NmQ0ZTZj Li42ZjRmOWZmZGZiNzViIDEwMDY0NAotLS0gYS9zcmNwa2dzL2ZsaWdodGdlYXIvdGVtcGxhdGUK KysrIGIvc3JjcGtncy9mbGlnaHRnZWFyL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1w bGF0ZSBmaWxlIGZvciAnZmxpZ2h0Z2VhcicKIHBrZ25hbWU9ZmxpZ2h0Z2VhcgogdmVyc2lvbj0y MDIwLjMuMTcKLXJldmlzaW9uPTIKK3JldmlzaW9uPTMKICMgWFhYOiBhbHdheXMga2VlcCBpbiBz eW5jIHdpdGggc2ltZ2VhciB2ZXJzaW9uIQogY3JlYXRlX3dya3NyYz15ZXMKIGJ1aWxkX3N0eWxl PWNtYWtlCkBAIC0yNiw3ICsyNiw2IEBAIGRpc3RmaWxlcz0iCiAgJFNPVVJDRUZPUkdFX1NJVEUv cHJvamVjdC9mbGlnaHRnZWFyL3JlbGVhc2UtJHt2ZXJzaW9uJS4qfS9GbGlnaHRHZWFyLSR7dmVy c2lvbn0tZGF0YS50eHoiCiBjaGVja3N1bT0iNjY3MGRlZGVhY2EyNjgzYWNhNzdmOWYwNmJmOWQx ZDgwNjJhZTMyYTJhNTQ1OWRkZGM4YWEwOTg5YzVmMTg1NAogIDJhNWViYTJiOWFlNjdhMzY5MTI4 NTgzM2E2Y2UzZjZiYmRmM2YyMDIyOWY1ODcxZDdjOTQwZTE1MWQ1NGQ4ZTgiCi1weXRob25fdmVy c2lvbj0yCiAjIHRoZSB0ZXN0IHN1aXRlIGRvZXNuJ3QgZ2V0IGJ1aWx0LCBpZiBlbmFibGVkIGl0 IHNlZ2ZhdWx0cwogbWFrZV9jaGVjaz1ubwogCkBAIC00OCw1ICs0Nyw4IEBAIGZsaWdodGdlYXIt ZGF0YV9wYWNrYWdlKCkgewogCXBrZ19pbnN0YWxsKCkgewogCQl2bWtkaXIgdXNyL3NoYXJlL2Zs aWdodGdlYXIKIAkJbXYgZmdkYXRhICR7UEtHREVTVERJUn0vdXNyL3NoYXJlL2ZsaWdodGdlYXIK KwkJIyBweXRob24gMiBidWlsZCBzY3JpcHRzCisJCXJtICIke1BLR0RFU1RESVJ9Ii91c3Ivc2hh cmUvZmxpZ2h0Z2Vhci9mZ2RhdGEvQWlyY3JhZnQvYzE3MnAvTW9kZWxzL0ludGVyaW9yL1BhbmVs L0luc3RydW1lbnRzL2FzaS9hc2kucHkgXAorCQkJIiR7UEtHREVTVERJUn0iL3Vzci9zaGFyZS9m bGlnaHRnZWFyL2ZnZGF0YS9Eb2NzL2NvbXBpbGVfZG9jcy5weQogCX0KIH0K --===============8355285154763817768==--