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 13690 invoked from network); 26 Sep 2023 03:50:13 -0000 Received: from localhost (HELO inbox.vuxu.org) (::1) by localhost with ESMTPUTF8; 26 Sep 2023 03:50:13 -0000 Content-Type: multipart/mixed; boundary="===============1145753193634245707==" MIME-Version: 1.0 Subject: =?utf8?q?Re=3A_=5BPR_PATCH=5D_=5BUpdated=5D_=5BWIP=5D_wxWidgets=2C_wxPython?= To: ml@inbox.vuxu.org From: ahesford Reply-to: ml@inbox.vuxu.org In-Reply-To: References: Date: Tue, 26 Sep 2023 05:50:13 +0200 List-Id: Message-ID: <20230926035013.IV0cfA2_ZuTbVhfi_s0xt-N0pzmf54j9fnQgEBCH4xM@z> GitHub notification mails are now in MIME to allow UTF8. --===============1145753193634245707== Content-Type: text/plain; charset="utf8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 VGhlcmUgaXMgYW4gdXBkYXRlZCBwdWxsIHJlcXVlc3QgYnkgYWhlc2ZvcmQgYWdhaW5zdCBtYXN0 ZXIgb24gdGhlIHZvaWQtcGFja2FnZXMgcmVwb3NpdG9yeQoKaHR0cHM6Ly9naXRodWIuY29tL2Fo ZXNmb3JkL3ZvaWQtcGFja2FnZXMgd3h3aWRnZXRzCmh0dHBzOi8vZ2l0aHViLmNvbS92b2lkLWxp bnV4L3ZvaWQtcGFja2FnZXMvcHVsbC80NjIzNwoKW1dJUF0gd3hXaWRnZXRzLCB3eFB5dGhvbgpP dXIgd3hXaWRnZXRzL3d4UHl0aG9uIHN0YWNrIGlzIHByZXR0eSBvbGQsIGFuZCBpdCBtYXkgYmUg bW9yZSB0cm91YmxlIHRvIHBhdGNoIGZvciBQeXRob24gMy4xMiB0aGFuIGp1c3QgdXBkYXRpbmcg dGhlc2UgcGFja2FnZXMuIFRodXMgSSB3b3VsZCBsaWtlIHRvOg0KDQoqIERyb3AgYHBjc3gyYCwg YHBlcmwtQWxpZW4td3hXaWRnZXRzYCBhbmQgYGRpc3BjYWxHVUlgIChjYzogQGxlbW1pKS4gVGhl IGZpcnN0IHR3byBkb24ndCBzZWVtIHdlbGwtbWFpbnRhaW5lZCwgYW5kIGFsbCB0aHJlZSByZWx5 IG9uIHd4V2lkZ2V0cyB3aXRoIEdUSzIgc3VwcG9ydCB0aGF0IHNob3VsZCBiZSByZXRpcmVkLiBg ZGlzcGNhbEdVSWAgYWxzbyByZXF1aXJlcyB0aGUgbG9uZy1wYXN0LUVPTCBQeXRob24gMi4NCiog V2l0aCB0aGVzZSB0aHJlZSBkZXBlbmRhbnRzIGdvbmUsIHdlIGNhbiByZW1vdmUgYHd4V2lkZ2V0 c2AgYW5kIGB3eFB5dGhvbmAuDQoqIFRoaXMgc2ltcGxpZmllcyB0aGUgdXBkYXRlIHRvIGB3eFdp ZGdldHMtZ3RrM2AgYW5kIChob3BlZnVsbHktLS1JJ20gc3RpbGwgd29ya2luZykgYHd4UHl0aG9u NGAuDQoqIFdoaWxlIHdlJ3JlIGF0IGl0LCB3ZSBjYW4gdHJhbnNpdGlvbiBgd3hQeXRob240YCBi YWNrIHRvIGl0cyBwcm9wZXIgbmFtZSwganVzdCBgd3hQeXRob25gLg0KDQpbY2kgc2tpcF0NCg0K Y2xvc2VzICM0NDg0OSAKCkEgcGF0Y2ggZmlsZSBmcm9tIGh0dHBzOi8vZ2l0aHViLmNvbS92b2lk LWxpbnV4L3ZvaWQtcGFja2FnZXMvcHVsbC80NjIzNy5wYXRjaCBpcyBhdHRhY2hlZA== --===============1145753193634245707== Content-Type: text/x-diff MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="github-pr-wxwidgets-46237.patch" RnJvbSAyZWFlMTc1NWE0MzllNTdiODFiNWQ5NjI4N2I4NWE0YzI5ODM0M2E3IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiAiQW5kcmV3IEouIEhlc2ZvcmQiIDxhamhAc2lkZWJhbmQub3Jn PgpEYXRlOiBTdW4sIDI0IFNlcCAyMDIzIDIzOjE5OjMwIC0wNDAwClN1YmplY3Q6IFtQQVRDSCAw MS80M10gcGVybC1BbGllbi13eFdpZGdldHM6IHJlbW92ZSBwYWNrYWdlCgpOb3RoaW5nIHJlcXVp cmVzIHRoaXMgcGFja2FnZSwgaXQgZGVwZW5kcyBvbiBhbiBvbGQgYW5kIHRvLWJlLXJlbW92ZWQK dmVzaW9uIG9mIHd4V2lkZ2V0cywgYW5kIGl0IGRvZXNuJ3Qgc2VlbSB0byBoYXZlIGJlZW4gdXBk YXRlZCBzaW5jZSBpdAp3YXMgYWRkZWQgNSB5ZWFycyBhZ28uCi0tLQogc3JjcGtncy9wZXJsLUFs aWVuLXd4V2lkZ2V0cy90ZW1wbGF0ZSB8IDE0IC0tLS0tLS0tLS0tLS0tCiBzcmNwa2dzL3JlbW92 ZWQtcGFja2FnZXMvdGVtcGxhdGUgICAgIHwgIDEgKwogMiBmaWxlcyBjaGFuZ2VkLCAxIGluc2Vy dGlvbigrKSwgMTQgZGVsZXRpb25zKC0pCiBkZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtncy9wZXJs LUFsaWVuLXd4V2lkZ2V0cy90ZW1wbGF0ZQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcGVybC1BbGll bi13eFdpZGdldHMvdGVtcGxhdGUgYi9zcmNwa2dzL3BlcmwtQWxpZW4td3hXaWRnZXRzL3RlbXBs YXRlCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA5MTMyMjUyOWZjYjdmLi4wMDAwMDAw MDAwMDAwCi0tLSBhL3NyY3BrZ3MvcGVybC1BbGllbi13eFdpZGdldHMvdGVtcGxhdGUKKysrIC9k ZXYvbnVsbApAQCAtMSwxNCArMCwwIEBACi0jIFRlbXBsYXRlIGZpbGUgZm9yICdwZXJsLUFsaWVu LXd4V2lkZ2V0cycKLXBrZ25hbWU9cGVybC1BbGllbi13eFdpZGdldHMKLXZlcnNpb249MC42OQot cmV2aXNpb249MwotYnVpbGRfc3R5bGU9cGVybC1Nb2R1bGVCdWlsZAotaG9zdG1ha2VkZXBlbmRz PSJwZXJsIHBlcmwtTW9kdWxlLUJ1aWxkIHBlcmwtTW9kdWxlLVBsdWdnYWJsZSBwZXJsLUxXUC1Q cm90b2NvbC1odHRwcyBwZXJsLU5ldC1TU0xlYXkiCi1tYWtlZGVwZW5kcz0icGVybC1BbGllbiB3 eFdpZGdldHMtZGV2ZWwiCi1kZXBlbmRzPSJwZXJsIHBlcmwtTW9kdWxlLVBsdWdnYWJsZSBwZXJs LUFsaWVuIHd4V2lkZ2V0cyBwZXJsLUxXUC1Qcm90b2NvbC1odHRwcyIKLXNob3J0X2Rlc2M9IkFs aWVuOjp3eFdpZGdldHMgLSBidWlsZGluZywgZmluZGluZyBhbmQgdXNpbmcgd3hXaWRnZXRzIGJp bmFyaWVzIgotbWFpbnRhaW5lcj0iT3JwaGFuZWQgPG9ycGhhbkB2b2lkbGludXgub3JnPiIKLWxp Y2Vuc2U9IkFydGlzdGljLTEuMC1QZXJsLCBHUEwtMS4wLW9yLWxhdGVyIgotaG9tZXBhZ2U9Imh0 dHBzOi8vbWV0YWNwYW4ub3JnL3JlbGVhc2UvQWxpZW4td3hXaWRnZXRzIgotZGlzdGZpbGVzPSIk e0NQQU5fU0lURX0vQWxpZW4vJHtwa2duYW1lI3BlcmwtfS0ke3ZlcnNpb259LnRhci5neiIKLWNo ZWNrc3VtPTUzMjI0ZTRiYmJlZmZmNGNmN2I2M2VkOWE2Mjk2Mzg5M2I5ZmZkNDk2NWQ3MGQ5Njcx MDM0OGY4Njc2ZGUyNDkKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcmVtb3ZlZC1wYWNrYWdlcy90ZW1w bGF0ZSBiL3NyY3BrZ3MvcmVtb3ZlZC1wYWNrYWdlcy90ZW1wbGF0ZQppbmRleCBlZGYzYWE1NDU2 OTRiLi41ODJiMDk0NGM4YzYyIDEwMDY0NAotLS0gYS9zcmNwa2dzL3JlbW92ZWQtcGFja2FnZXMv dGVtcGxhdGUKKysrIGIvc3JjcGtncy9yZW1vdmVkLXBhY2thZ2VzL3RlbXBsYXRlCkBAIC00Mzcs NiArNDM3LDcgQEAgcmVwbGFjZXM9IgogIG9yYWdlPD00LjEyLjFfNwogIHBhcmFsbGVsLXJ1c3Q8 PTAuMTEuM18yCiAgcGFyYXZpZXc8PTUuOC4xXzMKKyBwZXJsLUFsaWVuLXd4V2lkZ2V0czw9MC42 OV8zCiAgcGVybC1HdGsyLUV4LVNpbXBsZS1MaXN0PD0wLjUwXzQKICBwZXJsLUd0azItSW1hZ2VW aWV3PD0wLjA1XzgKICBwZXJsLUd0azItTm90aWZ5PD0wLjA1XzgKCkZyb20gMDFiOGMzMzY1MWRk YzZiNjgwNWFmODY3ODIxZWU5MjM4MDZmNDY5NSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJv bTogIkFuZHJldyBKLiBIZXNmb3JkIiA8YWpoQHNpZGViYW5kLm9yZz4KRGF0ZTogU3VuLCAyNCBT ZXAgMjAyMyAyMzoyMTo0MiAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggMDIvNDNdIHBjc3gyOiByZW1v dmUgcGFja2FnZQoKVGhpcyBwYWNrYWdlIG9ubHkgYnVpbGRzIGZvciBpNjg2KiBhbmQgZGVwZW5k cyBvbiBhbiBvbGQgYW5kCnRvLWJlLXJlbW92ZWQgdmVyc2lvbiBvZiB3eFdpZGdldHMuCi0tLQog Li4uMjBhOWUwNDhlNGJkOWQ3NzYwY2I3MmU2MzM1YWVlODE1NWQ0LnBhdGNoIHwgNDIgLS0tLS0t LS0tLS0tLS0tLS0tLQogc3JjcGtncy9wY3N4Mi90ZW1wbGF0ZSAgICAgICAgICAgICAgICAgICAg ICAgIHwgMjcgLS0tLS0tLS0tLS0tCiBzcmNwa2dzL3JlbW92ZWQtcGFja2FnZXMvdGVtcGxhdGUg ICAgICAgICAgICAgfCAgMSArCiAzIGZpbGVzIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCA2OSBk ZWxldGlvbnMoLSkKIGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3Bjc3gyL3BhdGNoZXMvNmI3 ZjIwYTllMDQ4ZTRiZDlkNzc2MGNiNzJlNjMzNWFlZTgxNTVkNC5wYXRjaAogZGVsZXRlIG1vZGUg MTAwNjQ0IHNyY3BrZ3MvcGNzeDIvdGVtcGxhdGUKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3Bjc3gy L3BhdGNoZXMvNmI3ZjIwYTllMDQ4ZTRiZDlkNzc2MGNiNzJlNjMzNWFlZTgxNTVkNC5wYXRjaCBi L3NyY3BrZ3MvcGNzeDIvcGF0Y2hlcy82YjdmMjBhOWUwNDhlNGJkOWQ3NzYwY2I3MmU2MzM1YWVl ODE1NWQ0LnBhdGNoCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAxYTc2YmMxZmE2ODA5 Li4wMDAwMDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3MvcGNzeDIvcGF0Y2hlcy82YjdmMjBhOWUwNDhl NGJkOWQ3NzYwY2I3MmU2MzM1YWVlODE1NWQ0LnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEsNDIg KzAsMCBAQAotRnJvbSA2YjdmMjBhOWUwNDhlNGJkOWQ3NzYwY2I3MmU2MzM1YWVlODE1NWQ0IE1v biBTZXAgMTcgMDA6MDA6MDAgMjAwMQotRnJvbTogSm9obiBaaW1tZXJtYW5uIDxtZUBqb2hubnlu YXRvci5kZXY+Ci1EYXRlOiBUaHUsIDIgSnVsIDIwMjAgMTI6MjQ6NDUgKzAyMDAKLVN1YmplY3Q6 IFtQQVRDSF0gQWxsb3cgcnVubmluZyBvbiBzeXN0ZW1zIHdpdGhvdXQgd3ggc3RhY2t3YWxrbGVy Ci0KLWNsb3NlcyAjMjc5NgotLS0tCi0gcGNzeDIvZ3VpL0FwcEFzc2VydC5jcHAgfCA2ICsrKysr KwotIDEgZmlsZSBjaGFuZ2VkLCA2IGluc2VydGlvbnMoKykKLQotZGlmZiAtLWdpdCBwY3N4Mi9n dWkvQXBwQXNzZXJ0LmNwcCBwY3N4Mi9ndWkvQXBwQXNzZXJ0LmNwcAotaW5kZXggYTI4MjcxNWM0 ZS4uNGNlMTUxZjg2ZiAxMDA2NDQKLS0tLSBhL3Bjc3gyL2d1aS9BcHBBc3NlcnQuY3BwCi0rKysg Yi9wY3N4Mi9ndWkvQXBwQXNzZXJ0LmNwcAotQEAgLTE5LDYgKzE5LDcgQEAKLSAKLSAjaW5jbHVk ZSA8d3gvc3RhY2t3YWxrLmg+Ci0gCi0rI2lmIHd4VVNFX1NUQUNLV0FMS0VSCi0gY2xhc3MgU3Rh Y2tEdW1wIDogcHVibGljIHd4U3RhY2tXYWxrZXIKLSB7Ci0gcHJvdGVjdGVkOgotQEAgLTk0LDYg Kzk1LDcgQEAgc3RhdGljIHd4U3RyaW5nIHB4R2V0U3RhY2tUcmFjZSggY29uc3QgRm5DaGFyX3Qq IGNhbGxlZEZyb20gKQotIAlkdW1wLldhbGsoIDMgKTsKLSAJcmV0dXJuIGR1bXAuR2V0U3RhY2tU cmFjZSgpOwotIH0KLSsjZW5kaWYKLSAKLSAjaWZkZWYgX19XWERFQlVHX18KLSAKLUBAIC0xMjIs NyArMTI0LDExIEBAIGJvb2wgQXBwRG9Bc3NlcnQoIGNvbnN0IERpYWdub3N0aWNPcmlnaW4mIG9y aWdpbiwgY29uc3Qgd3hDaGFyICptc2cgKQotIAlzdGF0aWMgYm9vbCBkaXNhYmxlQXNzZXJ0cyA9 IGZhbHNlOwotIAlpZiggZGlzYWJsZUFzc2VydHMgKSByZXR1cm4gZmFsc2U7Ci0gCi0rI2lmIHd4 VVNFX1NUQUNLV0FMS0VSCi0gCXd4U3RyaW5nIHRyYWNlKCBweEdldFN0YWNrVHJhY2Uob3JpZ2lu LmZ1bmN0aW9uKSApOwotKyNlbHNlCi0rCXd4U3RyaW5nIHRyYWNlKCAiV2FybmluZzogUGxhdGZv cm0gZG9lc24ndCBzdXBwb3J0IHd4IHN0YWNrd2Fsa2VyIiApOwotKyNlbmRpZgotIAl3eFN0cmlu ZyBkYmdtc2coIG9yaWdpbi5Ub1N0cmluZyggbXNnICkgKTsKLSAKLSAJd3hNZXNzYWdlT3V0cHV0 RGVidWcoKS5QcmludGYoIEwiJXMiLCBXWF9TVFIoZGJnbXNnKSApOwpkaWZmIC0tZ2l0IGEvc3Jj cGtncy9wY3N4Mi90ZW1wbGF0ZSBiL3NyY3BrZ3MvcGNzeDIvdGVtcGxhdGUKZGVsZXRlZCBmaWxl IG1vZGUgMTAwNjQ0CmluZGV4IDU5ZjhkZmNkY2U3MWQuLjAwMDAwMDAwMDAwMDAKLS0tIGEvc3Jj cGtncy9wY3N4Mi90ZW1wbGF0ZQorKysgL2Rldi9udWxsCkBAIC0xLDI3ICswLDAgQEAKLSMgVGVt cGxhdGUgZmlsZSBmb3IgJ3Bjc3gyJwotYXJjaHM9Imk2ODYqIgotbGliMzJtb2RlPSJmdWxsIgot bm9waWU9eWVzCi0KLXBrZ25hbWU9cGNzeDIKLXZlcnNpb249MS42LjAKLXJldmlzaW9uPTIKLWJ1 aWxkX3N0eWxlPWNtYWtlCi0jIHN0b3JlIGFsbCBkYXRhIHRoYXQgcGNzeDIgaGFzIHRvIGFjY2Vz cyBpbnRvIC91c3IvbGliLCBzbyBpdCBjYW4gYmUgYWNjZXNzZWQKLSMgb24gbXVsdGlsaWIgc2V0 dXBzLiB3aGVuL2lmIHBjc3gyIHN1cHBvcnRzIDY0LWJpdCBidWlsZHMsIEdBTUVJTkRFWF9ESVIg c2hvdWxkCi0jIGJlIG1vdmVkIHRvIC91c3Ivc2hhcmUvcGNzeDIKLWNvbmZpZ3VyZV9hcmdzPSIt REdMU0xfQVBJPTEgLURTREwyX0FQST1UUlVFIC1EUEFDS0FHRV9NT0RFPTEgLURSRUJVSUxEX1NI QURFUj0xCi0gLURYREdfU1REPTEgLURESVNBQkxFX0FEVkFOQ0VfU0lNRD0xCi0gLURQTFVHSU5f RElSPS91c3IvbGliJHtYQlBTX1RBUkdFVF9XT1JEU0laRX0vcGNzeDIKLSAtREdBTUVJTkRFWF9E SVI9L3Vzci9saWIke1hCUFNfVEFSR0VUX1dPUkRTSVpFfS9wY3N4MiIKLWhvc3RtYWtlZGVwZW5k cz0icGtnLWNvbmZpZyBzcGFyc2VoYXNoIHBlcmwiCi1tYWtlZGVwZW5kcz0iYWxzYS1saWItZGV2 ZWwgU0RMMi1kZXZlbCBnbHUtZGV2ZWwgZ2xldy1kZXZlbCBsaWJhaW8tZGV2ZWwKLSBsaWJjYW5i ZXJyYS1kZXZlbCBsaWJqcGVnLXR1cmJvLWRldmVsIHd4V2lkZ2V0cy1kZXZlbCBwb3J0YXVkaW8t ZGV2ZWwgc291bmR0b3VjaC1kZXZlbAotIGxpYnBjYXAtZGV2ZWwgZ2xpYi1kZXZlbCIKLWRlcGVu ZHM9ImRlc2t0b3AtZmlsZS11dGlscyIKLXNob3J0X2Rlc2M9IlNvbnkgUGxheVN0YXRpb24gMiBl bXVsYXRvciIKLW1haW50YWluZXI9IlNlbGZzaWduZWQgPHNlbGZzaWduZWRAcHJvdG9ubWFpbC5j aD4iCi1saWNlbnNlPSJHUEwtMy4wLW9yLWxhdGVyLCBHUEwtMi4wLW9yLWxhdGVyLCBMR1BMLTIu MS1vci1sYXRlciwgTEdQTC0zLjAtb3ItbGF0ZXIiCi1ob21lcGFnZT0iaHR0cDovL3d3dy5wY3N4 Mi5uZXQiCi1kaXN0ZmlsZXM9Imh0dHBzOi8vZ2l0aHViLmNvbS9QQ1NYMi9wY3N4Mi9hcmNoaXZl L3Yke3ZlcnNpb259LnRhci5neiIKLWNoZWNrc3VtPWMwOTkxNDAyMGU0OTQ2NDBmMTg3ZjQ2ZDAx N2Y5ZDE0MmNlMjAwNGFmNzYzYjlhNmM1YzNhOWVhMDllNTI4MWMKZGlmZiAtLWdpdCBhL3NyY3Br Z3MvcmVtb3ZlZC1wYWNrYWdlcy90ZW1wbGF0ZSBiL3NyY3BrZ3MvcmVtb3ZlZC1wYWNrYWdlcy90 ZW1wbGF0ZQppbmRleCA1ODJiMDk0NGM4YzYyLi5iMTc2NzM5MTU3ZTNjIDEwMDY0NAotLS0gYS9z cmNwa2dzL3JlbW92ZWQtcGFja2FnZXMvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9yZW1vdmVkLXBh Y2thZ2VzL3RlbXBsYXRlCkBAIC00NDEsNiArNDQxLDcgQEAgcmVwbGFjZXM9IgogIHBlcmwtR3Rr Mi1FeC1TaW1wbGUtTGlzdDw9MC41MF80CiAgcGVybC1HdGsyLUltYWdlVmlldzw9MC4wNV84CiAg cGVybC1HdGsyLU5vdGlmeTw9MC4wNV84CisgcGNzeDI8PTEuNi4wXzIKICBwZ2FkbWluMzw9MS4y Mi4yXzE0CiAgcGhvbm9uLWJhY2tlbmQtZ3N0cmVhbWVyPD00LjkuMF8yCiAgcGhvbm9uLWJhY2tl bmQtdmxjPD0wLjkuMV8zCgpGcm9tIDRhZDRlZTQzMTE0NGYxYzI0ZWJmZGZkYjRjZmFmYzRlMTc2 MjI1NDYgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206ICJBbmRyZXcgSi4gSGVzZm9yZCIg PGFqaEBzaWRlYmFuZC5vcmc+CkRhdGU6IFN1biwgMjQgU2VwIDIwMjMgMjM6MjY6NTMgLTA0MDAK U3ViamVjdDogW1BBVENIIDAzLzQzXSB3eFB5dGhvbjogcmVtb3ZlIHBhY2thZ2UKCi0tLQogc3Jj cGtncy93eFB5dGhvbi1kZXZlbCAgICB8ICAxIC0KIHNyY3BrZ3Mvd3hQeXRob24vdGVtcGxhdGUg fCA0NyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIDIgZmlsZXMgY2hh bmdlZCwgNDggZGVsZXRpb25zKC0pCiBkZWxldGUgbW9kZSAxMjAwMDAgc3JjcGtncy93eFB5dGhv bi1kZXZlbAogZGVsZXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3Mvd3hQeXRob24vdGVtcGxhdGUKCmRp ZmYgLS1naXQgYS9zcmNwa2dzL3d4UHl0aG9uLWRldmVsIGIvc3JjcGtncy93eFB5dGhvbi1kZXZl bApkZWxldGVkIGZpbGUgbW9kZSAxMjAwMDAKaW5kZXggZTM5NmQ1YWUzNzBkNi4uMDAwMDAwMDAw MDAwMAotLS0gYS9zcmNwa2dzL3d4UHl0aG9uLWRldmVsCisrKyAvZGV2L251bGwKQEAgLTEgKzAs MCBAQAotd3hQeXRob24KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9z cmNwa2dzL3d4UHl0aG9uL3RlbXBsYXRlIGIvc3JjcGtncy93eFB5dGhvbi90ZW1wbGF0ZQpkZWxl dGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggODkxZGRjMTY0NTUyYi4uMDAwMDAwMDAwMDAwMAot LS0gYS9zcmNwa2dzL3d4UHl0aG9uL3RlbXBsYXRlCisrKyAvZGV2L251bGwKQEAgLTEsNDcgKzAs MCBAQAotIyBUZW1wbGF0ZSBmaWxlIGZvciAnd3hQeXRob24nCi1wa2duYW1lPXd4UHl0aG9uCi12 ZXJzaW9uPTMuMC4yLjAKLXJldmlzaW9uPTExCi1ob3N0bWFrZWRlcGVuZHM9InBrZy1jb25maWci Ci1tYWtlZGVwZW5kcz0iCi0gemxpYi1kZXZlbCBsaWJwbmctZGV2ZWwgbGlianBlZy10dXJiby1k ZXZlbCB0aWZmLWRldmVsIGV4cGF0LWRldmVsIGd0aystZGV2ZWwKLSBsaWJTTS1kZXZlbCBNZXNh TGliLWRldmVsIGdsdS1kZXZlbAotIGxpYm5vdGlmeS1kZXZlbCBweXRob24tZGV2ZWwgd3hXaWRn ZXRzLWRldmVsIgotZGVwZW5kcz0icHl0aG9uIgotc2hvcnRfZGVzYz0iUHl0aG9uIEJpbmRpbmdz IGZvciB0aGUgd3hXaWRnZXRzIEdVSSB0b29sa2l0IGxpYnJhcnkiCi1tYWludGFpbmVyPSJPcnBo YW5lZCA8b3JwaGFuQHZvaWRsaW51eC5vcmc+IgotbGljZW5zZT0iV3hXaW5kb3dzLWV4Y2VwdGlv bi0zLjEiCi1ob21lcGFnZT0iaHR0cHM6Ly93d3cud3hweXRob24ub3JnLyIKLWRpc3RmaWxlcz0i JHtTT1VSQ0VGT1JHRV9TSVRFfS93eHB5dGhvbi8ke3BrZ25hbWV9LXNyYy0ke3ZlcnNpb259LnRh ci5iejIiCi1jaGVja3N1bT1kNTQxMjllNWZiZWE0ZmI4MDkxYzg3YjI5ODA3NjBiNzJjMjJhMzg2 Y2IzYjlkZDJlZWJjOTI4ZWY1ZThkZjYxCi0KLWlmIFsgLW4gIiR7Q1JPU1NfQlVJTER9IiBdOyB0 aGVuCi0JaG9zdG1ha2VkZXBlbmRzKz0iIHB5dGhvbiIKLQlDRkxBR1MrPSIgLUkke1hCUFNfQ1JP U1NfQkFTRX0vdXNyL2luY2x1ZGUvcHl0aG9uJHtweTJfdmVyfSIKLWZpCi0KLXByZV9jb25maWd1 cmUoKSB7Ci0JbXYgd3hQeXRob24vd3gvdG9vbHMvRWRpdHJhL3tlZGl0cmEsRWRpdHJhfQotfQot Ci1kb19idWlsZCgpIHsKLQljZCB3eFB5dGhvbgotCXB5dGhvbjIuNyBzZXR1cC5weSBidWlsZAot fQotCi1kb19pbnN0YWxsKCkgewotCWNkIHd4UHl0aG9uCi0JIyBUaGUgcGF0aCB3aGVyZSBpbmNs dWRlcyBhcmUgZ29pbmcgdG8gYmUgaW5zdGFsbGVkIGlzIHByZWZpeGVkIHdpdGggV1hQUkVGSVgg b2J0YWluZWQKLQkjIGZyb20gJ3d4LWNvbmZpZyAtLXByZWZpeCcgYnV0IGluIGEgY3Jvc3MgYnVp bGQgdGhpcyBpcyAnJFhCUFNfQ1JPU1NfQkFTRS91c3InLgotCXNlZCAtaSAtZSAic3xXWFBSRUZJ WCArfCcvdXNyJyArfCIgY29uZmlnLnB5Ci0JcHl0aG9uMi43IHNldHVwLnB5IGluc3RhbGwgLS1y b290PSR7REVTVERJUn0KLQl2bGljZW5zZSAuLi9kb2NzL2xpY2VuY2UudHh0IExJQ0VOU0UKLX0K LQotd3hQeXRob24tZGV2ZWxfcGFja2FnZSgpIHsKLQlkZXBlbmRzPSJ3eFdpZGdldHMtZGV2ZWwg JHtzb3VyY2Vwa2d9Pj0ke3ZlcnNpb259XyR7cmV2aXNpb259IgotCXNob3J0X2Rlc2MrPSIgLSBk ZXZlbG9wbWVudCBmaWxlcyIKLQlwa2dfaW5zdGFsbCgpIHsKLQkJdm1vdmUgdXNyL2luY2x1ZGUK LQl9Ci19CgpGcm9tIGM2ZDFlNTcyNGY3ZTY4MGZkNjhmZGY3Yjg3Y2JmYzg0YTRkYzlmMDkgTW9u IFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206ICJBbmRyZXcgSi4gSGVzZm9yZCIgPGFqaEBzaWRl YmFuZC5vcmc+CkRhdGU6IFN1biwgMjQgU2VwIDIwMjMgMjM6Mjg6NDAgLTA0MDAKU3ViamVjdDog W1BBVENIIDA0LzQzXSB3eFdpZGdldHM6IHJlbW92ZSBwYWNrYWdlCgotLS0KIGNvbW1vbi9zaGxp YnMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IDE5IC0tLS0tCiBzcmNwa2dzL3d4 V2lkZ2V0cy1kZXZlbCAgICAgICAgICAgICAgICAgICAgICAgfCAgMSAtCiAuLi4vcGF0Y2hlcy9u b25mYXRhbC1hYmktY2hlY2sucGF0Y2ggICAgICAgICAgfCAxOCAtLS0tLQogLi4uL3d4V2lkZ2V0 cy9wYXRjaGVzL3d4R1RLLWNvbGxpc2lvbi5wYXRjaCAgIHwgNzkgLS0tLS0tLS0tLS0tLS0tLS0t LQogc3JjcGtncy93eFdpZGdldHMvdGVtcGxhdGUgICAgICAgICAgICAgICAgICAgIHwgNjYgLS0t LS0tLS0tLS0tLS0tLQogc3JjcGtncy93eFdpZGdldHMvdXBkYXRlICAgICAgICAgICAgICAgICAg ICAgIHwgIDIgLQogNiBmaWxlcyBjaGFuZ2VkLCAxODUgZGVsZXRpb25zKC0pCiBkZWxldGUgbW9k ZSAxMjAwMDAgc3JjcGtncy93eFdpZGdldHMtZGV2ZWwKIGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNw a2dzL3d4V2lkZ2V0cy9wYXRjaGVzL25vbmZhdGFsLWFiaS1jaGVjay5wYXRjaAogZGVsZXRlIG1v ZGUgMTAwNjQ0IHNyY3BrZ3Mvd3hXaWRnZXRzL3BhdGNoZXMvd3hHVEstY29sbGlzaW9uLnBhdGNo CiBkZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtncy93eFdpZGdldHMvdGVtcGxhdGUKIGRlbGV0ZSBt b2RlIDEwMDY0NCBzcmNwa2dzL3d4V2lkZ2V0cy91cGRhdGUKCmRpZmYgLS1naXQgYS9jb21tb24v c2hsaWJzIGIvY29tbW9uL3NobGlicwppbmRleCA5YzIwNjBiYzQ1YTY3Li5kYTdmMjczOWRjNWVk IDEwMDY0NAotLS0gYS9jb21tb24vc2hsaWJzCisrKyBiL2NvbW1vbi9zaGxpYnMKQEAgLTE1NjEs MjYgKzE1NjEsNyBAQCBsaWJmcHJpbnQuc28uMCBsaWJmcHJpbnQwLTEuMF8xCiBsaWJmcHJpbnQt Mi5zby4yIGxpYmZwcmludC0xLjkwLjdfMQogbGlid3hfYmFzZXVfeG1sLTMuMC5zby4wIHd4V2lk Z2V0cy1jb21tb24tMy4wLjRfMQogbGlid3hfYmFzZXUtMy4wLnNvLjAgd3hXaWRnZXRzLWNvbW1v bi0zLjAuNF8xCi1saWJ3eF9ndGsyX2Fkdi0zLjAuc28uMCB3eFdpZGdldHMtMy4wLjBfMQotbGli d3hfYmFzZV94bWwtMy4wLnNvLjAgd3hXaWRnZXRzLTMuMC4wXzEKLWxpYnd4X2d0azJfaHRtbC0z LjAuc28uMCB3eFdpZGdldHMtMy4wLjBfMQotbGlid3hfZ3RrMl9hdWktMy4wLnNvLjAgd3hXaWRn ZXRzLTMuMC4wXzEKLWxpYnd4X2d0azJfY29yZS0zLjAuc28uMCB3eFdpZGdldHMtMy4wLjBfMQot bGlid3hfYmFzZV9uZXQtMy4wLnNvLjAgd3hXaWRnZXRzLTMuMC4wXzEKLWxpYnd4X2Jhc2UtMy4w LnNvLjAgd3hXaWRnZXRzLTMuMC4wXzEKLWxpYnd4X2d0azJ1X2dsLTMuMC5zby4wIHd4V2lkZ2V0 cy0zLjAuMF8xCi1saWJ3eF9ndGsydV9zdGMtMy4wLnNvLjAgd3hXaWRnZXRzLTMuMC4wXzEKLWxp Ynd4X2d0azJ1X2Fkdi0zLjAuc28uMCB3eFdpZGdldHMtMy4wLjBfMQotbGlid3hfZ3RrMnVfcWEt My4wLnNvLjAgd3hXaWRnZXRzLTMuMC4wXzEKIGxpYnd4X2Jhc2V1X25ldC0zLjAuc28uMCB3eFdp ZGdldHMtY29tbW9uLTMuMC40XzEKLWxpYnd4X2d0azJ1X2NvcmUtMy4wLnNvLjAgd3hXaWRnZXRz LTMuMC4wXzEKLWxpYnd4X2d0azJ1X3JpY2h0ZXh0LTMuMC5zby4wIHd4V2lkZ2V0cy0zLjAuMF8x Ci1saWJ3eF9ndGsydV9wcm9wZ3JpZC0zLjAuc28uMCB3eFdpZGdldHMtMy4wLjBfMQotbGlid3hf Z3RrMnVfaHRtbC0zLjAuc28uMCB3eFdpZGdldHMtMy4wLjBfMQotbGlid3hfZ3RrMnVfeHJjLTMu MC5zby4wIHd4V2lkZ2V0cy0zLjAuMF8xCi1saWJ3eF9ndGsydV9hdWktMy4wLnNvLjAgd3hXaWRn ZXRzLTMuMC4wXzEKLWxpYnd4X2d0azJ1X3JpYmJvbi0zLjAuc28uMCB3eFdpZGdldHMtMy4wLjBf MQotbGlid3hfZ3RrMnVfbWVkaWEtMy4wLnNvLjAgd3hXaWRnZXRzLTMuMC4xXzEKIGxpYm1zcGFj ay5zby4wIGxpYm1zcGFjay0wLjRhbHBoYV8xCiBsaWJzbGltLnNvLjEuMy42IHNsaW0tMS4zLjZf MQogbGlibWVkaWFhcnQtMi4wLnNvLjAgbGlibWVkaWFhcnQtMS45LjFfMQpkaWZmIC0tZ2l0IGEv c3JjcGtncy93eFdpZGdldHMtZGV2ZWwgYi9zcmNwa2dzL3d4V2lkZ2V0cy1kZXZlbApkZWxldGVk IGZpbGUgbW9kZSAxMjAwMDAKaW5kZXggMGU5NzliYjc4OWQxMS4uMDAwMDAwMDAwMDAwMAotLS0g YS9zcmNwa2dzL3d4V2lkZ2V0cy1kZXZlbAorKysgL2Rldi9udWxsCkBAIC0xICswLDAgQEAKLXd4 V2lkZ2V0cwpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mv d3hXaWRnZXRzL3BhdGNoZXMvbm9uZmF0YWwtYWJpLWNoZWNrLnBhdGNoIGIvc3JjcGtncy93eFdp ZGdldHMvcGF0Y2hlcy9ub25mYXRhbC1hYmktY2hlY2sucGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUg MTAwNjQ0CmluZGV4IGJiOTNmMGEyNjE1NmMuLjAwMDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtncy93 eFdpZGdldHMvcGF0Y2hlcy9ub25mYXRhbC1hYmktY2hlY2sucGF0Y2gKKysrIC9kZXYvbnVsbApA QCAtMSwxOCArMCwwIEBACi1UYWtlbiBmcm9tCi1odHRwczovL2dpdGh1Yi5jb20vYXJjaGxpbnV4 L3N2bnRvZ2l0LXBhY2thZ2VzL2Jsb2IvNzFlZTE3ZDUyOWY4ZTBkYzVjNDRkMmZmZmIwZGZhNjli NzFkYWEwYi9yZXBvcy9leHRyYS14ODZfNjQvbWFrZS1hYmljaGVjay1ub24tZmF0YWwucGF0Y2gK LQotZGlmZiAtdXAgd3hHVEstMi44LjEyL3NyYy9jb21tb24vYXBwYmFzZS5jcHAuYWJpY2hlY2sg d3hHVEstMi44LjEyL3NyYy9jb21tb24vYXBwYmFzZS5jcHAKLS0tLSBhL3NyYy9jb21tb24vYXBw YmFzZS5jcHAuYWJpY2hlY2sJMjAxNS0wMy0xMiAxNzoxNToxOC4wMDAwMDAwMDAgKzAxMDAKLSsr KyBiL3NyYy9jb21tb24vYXBwYmFzZS5jcHAJMjAxNS0wMy0xMiAxNzoxNTo1Ny4wMDAwMDAwMDAg KzAxMDAKLUBAIC00MjQsMTAgKzQyNCw3IEBAIGJvb2wgd3hBcHBDb25zb2xlOjpDaGVja0J1aWxk T3B0aW9ucyhjb24KLSAgICAgICAgIG1zZy5QcmludGYoX1QoIk1pc21hdGNoIGJldHdlZW4gdGhl IHByb2dyYW0gYW5kIGxpYnJhcnkgYnVpbGQgdmVyc2lvbnMgZGV0ZWN0ZWQuXG5UaGUgbGlicmFy eSB1c2VkICVzLFxuYW5kICVzIHVzZWQgJXMuIiksCi0gICAgICAgICAgICAgICAgICAgIGxpYi5j X3N0cigpLCBwcm9nTmFtZS5jX3N0cigpLCBwcm9nLmNfc3RyKCkpOwotIAotLSAgICAgICAgd3hM b2dGYXRhbEVycm9yKG1zZy5jX3N0cigpKTsKLS0KLS0gICAgICAgIC8vIG5vcm1hbGx5IHd4TG9n RmF0YWxFcnJvciBkb2Vzbid0IHJldHVybgotLSAgICAgICAgcmV0dXJuIGZhbHNlOwotKyAgICAg ICAgd3hMb2dXYXJuaW5nKG1zZy5jX3N0cigpKTsKLSAgICAgfQotICN1bmRlZiB3eENNUAotIApk aWZmIC0tZ2l0IGEvc3JjcGtncy93eFdpZGdldHMvcGF0Y2hlcy93eEdUSy1jb2xsaXNpb24ucGF0 Y2ggYi9zcmNwa2dzL3d4V2lkZ2V0cy9wYXRjaGVzL3d4R1RLLWNvbGxpc2lvbi5wYXRjaApkZWxl dGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNWVjMzFlYmFjZWIxZC4uMDAwMDAwMDAwMDAwMAot LS0gYS9zcmNwa2dzL3d4V2lkZ2V0cy9wYXRjaGVzL3d4R1RLLWNvbGxpc2lvbi5wYXRjaAorKysg L2Rldi9udWxsCkBAIC0xLDc5ICswLDAgQEAKLWRpZmYgLU5hdXIgTWFrZWZpbGUuaW4gTWFrZWZp bGUuaW4KLS0tLSBhL01ha2VmaWxlLmluCTIwMTQtMTAtMDYgMjM6MzM6NDQuMDAwMDAwMDAwICsw MjAwCi0rKysgYi9NYWtlZmlsZS5pbgkyMDE0LTExLTE5IDEwOjQ4OjE4Ljc1MjMxOTA1OCArMDEw MAotQEAgLTE1Mjc5LDkgKzE1Mjc5LDExIEBACi0gCi0gaW5zdGFsbDogJChfX2luc3RhbGxfd3hy ZWdleF9fX2RlcG5hbWUpICQoX19pbnN0YWxsX3d4emxpYl9fX2RlcG5hbWUpICQoX19pbnN0YWxs X3d4cG5nX19fZGVwbmFtZSkgJChfX2luc3RhbGxfd3hqcGVnX19fZGVwbmFtZSkgJChfX2luc3Rh bGxfd3h0aWZmX19fZGVwbmFtZSkgJChfX2luc3RhbGxfd3hleHBhdF9fX2RlcG5hbWUpICQoX19p bnN0YWxsX3d4c2NpbnRpbGxhX19fZGVwbmFtZSkgJChfX2luc3RhbGxfbW9ub2RsbF9fX2RlcG5h bWUpICQoX19pbnN0YWxsX21vbm9saWJfX19kZXBuYW1lKSAkKF9faW5zdGFsbF9iYXNlZGxsX19f ZGVwbmFtZSkgJChfX2luc3RhbGxfYmFzZWxpYl9fX2RlcG5hbWUpICQoX19pbnN0YWxsX25ldGRs bF9fX2RlcG5hbWUpICQoX19pbnN0YWxsX25ldGxpYl9fX2RlcG5hbWUpICQoX19pbnN0YWxsX2Nv cmVkbGxfX19kZXBuYW1lKSAkKF9faW5zdGFsbF9jb3JlbGliX19fZGVwbmFtZSkgJChfX2luc3Rh bGxfYWR2ZGxsX19fZGVwbmFtZSkgJChfX2luc3RhbGxfYWR2bGliX19fZGVwbmFtZSkgJChfX2lu c3RhbGxfbWVkaWFkbGxfX19kZXBuYW1lKSAkKF9faW5zdGFsbF9tZWRpYWxpYl9fX2RlcG5hbWUp ICQoX19pbnN0YWxsX2h0bWxkbGxfX19kZXBuYW1lKSAkKF9faW5zdGFsbF9odG1sbGliX19fZGVw bmFtZSkgJChfX2luc3RhbGxfd2Vidmlld2RsbF9fX2RlcG5hbWUpICQoX19pbnN0YWxsX3dlYnZp ZXdsaWJfX19kZXBuYW1lKSAkKF9faW5zdGFsbF9xYWRsbF9fX2RlcG5hbWUpICQoX19pbnN0YWxs X3FhbGliX19fZGVwbmFtZSkgJChfX2luc3RhbGxfeG1sZGxsX19fZGVwbmFtZSkgJChfX2luc3Rh bGxfeG1sbGliX19fZGVwbmFtZSkgJChfX2luc3RhbGxfeHJjZGxsX19fZGVwbmFtZSkgJChfX2lu c3RhbGxfeHJjbGliX19fZGVwbmFtZSkgJChfX2luc3RhbGxfYXVpZGxsX19fZGVwbmFtZSkgJChf X2luc3RhbGxfYXVpbGliX19fZGVwbmFtZSkgJChfX2luc3RhbGxfcmliYm9uZGxsX19fZGVwbmFt ZSkgJChfX2luc3RhbGxfcmliYm9ubGliX19fZGVwbmFtZSkgJChfX2luc3RhbGxfcHJvcGdyaWRk bGxfX19kZXBuYW1lKSAkKF9faW5zdGFsbF9wcm9wZ3JpZGxpYl9fX2RlcG5hbWUpICQoX19pbnN0 YWxsX3JpY2h0ZXh0ZGxsX19fZGVwbmFtZSkgJChfX2luc3RhbGxfcmljaHRleHRsaWJfX19kZXBu YW1lKSAkKF9faW5zdGFsbF9zdGNkbGxfX19kZXBuYW1lKSAkKF9faW5zdGFsbF9zdGNsaWJfX19k ZXBuYW1lKSAkKF9faW5zdGFsbF9nbGRsbF9fX2RlcG5hbWUpICQoX19pbnN0YWxsX2dsbGliX19f ZGVwbmFtZSkgJChfX2luc3RhbGxfc291bmRfc2RsX19fZGVwbmFtZSkgJChfX2luc3RhbGxfd2Vi a2l0Ml9leHRfX19kZXBuYW1lKSAkKF9faW5zdGFsbF93eHJjX19fZGVwbmFtZSkgaW5zdGFsbC13 eGNvbmZpZyBsb2NhbGVfaW5zdGFsbCBsb2NhbGVfbXN3X2luc3RhbGwKLSAJJChJTlNUQUxMX0RJ UikgJChERVNURElSKSQoZGF0YWRpcikvYWNsb2NhbAotLQkoY2QgJChzcmNkaXIpIDsgJChJTlNU QUxMX0RBVEEpICB3eHdpbi5tNCAkKERFU1RESVIpJChkYXRhZGlyKS9hY2xvY2FsKQotKwkoY2Qg JChzcmNkaXIpIDsgJChJTlNUQUxMX0RBVEEpICB3eHdpbi5tNCAkKERFU1RESVIpJChkYXRhZGly KS9hY2xvY2FsL3d4d2luMy5tNCkKLSAJJChJTlNUQUxMX0RJUikgJChERVNURElSKSQoZGF0YWRp cikvYmFrZWZpbGUvcHJlc2V0cwotLQkoY2QgJChzcmNkaXIpL2J1aWxkL2Jha2VmaWxlcy93eHBy ZXNldHMvcHJlc2V0cyA7ICQoSU5TVEFMTF9EQVRBKSAgd3guYmtsIHd4X3VuaXguYmtsIHd4X3dp bjMyLmJrbCB3eF94cmMuYmtsIHd4X3ByZXNldHMucHkgJChERVNURElSKSQoZGF0YWRpcikvYmFr ZWZpbGUvcHJlc2V0cykKLSsJKGNkICQoc3JjZGlyKS9idWlsZC9iYWtlZmlsZXMvd3hwcmVzZXRz L3ByZXNldHMgOyBcCi0rCWZvciBpIGluIHd4LmJrbCB3eF91bml4LmJrbCB3eF93aW4zMi5ia2wg d3hfeHJjLmJrbCB3eF9wcmVzZXRzLnB5IDsgZG8gXAotKwkkKElOU1RBTExfREFUQSkgJCRpICQo REVTVERJUikkKGRhdGFkaXIpL2Jha2VmaWxlL3ByZXNldHMvd3gkKFdYX1JFTEVBU0VfTk9ET1Qp JCR7aSMjd3h9IDsgZG9uZSkKLSAJJChEWUxJQl9SUEFUSF9JTlNUQUxMKQotIAkkKElOU1RBTExf RElSKSAkKERFU1RESVIpJChsaWJkaXIpL3d4L2luY2x1ZGUvJChUT09MQ0hBSU5fRlVMTE5BTUUp L3d4Ci0gCWZvciBmIGluIHNldHVwLmggJChSQ0RFRlNfSCk7IGRvIFwKLUBAIC0xNjE3Nyw3ICsx NjE3OSw3IEBACi0gCSQoSU5TVEFMTF9ESVIpICQoREVTVERJUikkKGJpbmRpcikKLSAJJChJTlNU QUxMX0RJUikgJChERVNURElSKSQobGliZGlyKS93eC9jb25maWcKLSAJJChJTlNUQUxMX1NDUklQ VCkgbGliL3d4L2NvbmZpZy8kKFRPT0xDSEFJTl9GVUxMTkFNRSkgJChERVNURElSKSQobGliZGly KS93eC9jb25maWcKLS0JKGNkICQoREVTVERJUikkKGJpbmRpcikgJiYgcm0gLWYgd3gtY29uZmln ICYmICQoTE5fUykgJChsaWJkaXIpL3d4L2NvbmZpZy8kKFRPT0xDSEFJTl9GVUxMTkFNRSkgd3gt Y29uZmlnIHx8IGNwIC1wICQoREVTVERJUikkKGxpYmRpcikvd3gvY29uZmlnLyQoVE9PTENIQUlO X0ZVTExOQU1FKSB3eC1jb25maWcpCi0rCShjZCAkKERFU1RESVIpJChiaW5kaXIpICYmIHJtIC1m IHd4LWNvbmZpZy0kKFdYX1JFTEVBU0UpICYmICQoTE5fUykgJChsaWJkaXIpL3d4L2NvbmZpZy8k KFRPT0xDSEFJTl9GVUxMTkFNRSkgd3gtY29uZmlnLSQoV1hfUkVMRUFTRSkgfHwgY3AgLXAgJChE RVNURElSKSQobGliZGlyKS93eC9jb25maWcvJChUT09MQ0hBSU5fRlVMTE5BTUUpIHd4LWNvbmZp Zy0kKFdYX1JFTEVBU0UpKQotIAotIGxvY2FsZV9pbnN0YWxsOiAKLSAJJChJTlNUQUxMX0RJUikg JChERVNURElSKSQoZGF0YWRpcikvbG9jYWxlCi1AQCAtMTYxODUsNyArMTYxODcsNyBAQAotIAkk KElOU1RBTExfRElSKSAkKERFU1RESVIpJChkYXRhZGlyKS9sb2NhbGUvJCRsIDsgXAotIAkkKElO U1RBTExfRElSKSAkKERFU1RESVIpJChkYXRhZGlyKS9sb2NhbGUvJCRsL0xDX01FU1NBR0VTIDsg XAotIAlpZiB0ZXN0IC1mICQoc3JjZGlyKS9sb2NhbGUvJCRsLm1vIDsgdGhlbiBcCi0tCSQoSU5T VEFMTF9EQVRBKSAkKHNyY2RpcikvbG9jYWxlLyQkbC5tbyAkKERFU1RESVIpJChkYXRhZGlyKS9s b2NhbGUvJCRsL0xDX01FU1NBR0VTL3d4c3RkLm1vIDsgXAotKwkkKElOU1RBTExfREFUQSkgJChz cmNkaXIpL2xvY2FsZS8kJGwubW8gJChERVNURElSKSQoZGF0YWRpcikvbG9jYWxlLyQkbC9MQ19N RVNTQUdFUy93eHN0ZCQoV1hfUkVMRUFTRV9OT0RPVCkubW8gOyBcCi0gCWZpIDsgXAotIAlkb25l Ci0gCi1AQCAtMTYyMDIsNyArMTYyMDQsNyBAQAotIAkkKElOU1RBTExfRElSKSAkKERFU1RESVIp JChkYXRhZGlyKS9sb2NhbGUvJCRsIDsgXAotIAkkKElOU1RBTExfRElSKSAkKERFU1RESVIpJChk YXRhZGlyKS9sb2NhbGUvJCRsL0xDX01FU1NBR0VTIDsgXAotIAlpZiB0ZXN0IC1mICQoc3JjZGly KS9sb2NhbGUvbXN3LyQkbC5tbyA7IHRoZW4gXAotLQkkKElOU1RBTExfREFUQSkgJChzcmNkaXIp L2xvY2FsZS9tc3cvJCRsLm1vICQoREVTVERJUikkKGRhdGFkaXIpL2xvY2FsZS8kJGwvTENfTUVT U0FHRVMvd3htc3cubW8gOyBcCi0rCSQoSU5TVEFMTF9EQVRBKSAkKHNyY2RpcikvbG9jYWxlL21z dy8kJGwubW8gJChERVNURElSKSQoZGF0YWRpcikvbG9jYWxlLyQkbC9MQ19NRVNTQUdFUy93eG1z dyQoV1hfUkVMRUFTRV9OT0RPVCkubW8gOyBcCi0gCWZpIDsgXAotIAlkb25lCi0gCi1kaWZmIC1O YXVyIGJ1aWxkL2Jha2VmaWxlcy93eC5ia2wgYnVpbGQvYmFrZWZpbGVzL3d4LmJrbAotLS0tIGEv YnVpbGQvYmFrZWZpbGVzL3d4LmJrbAkyMDE0LTEwLTA2IDIzOjMzOjQ0LjAwMDAwMDAwMCArMDIw MAotKysrIGIvYnVpbGQvYmFrZWZpbGVzL3d4LmJrbAkyMDE0LTExLTE5IDEwOjMyOjIxLjY5MjI4 Mzk1NSArMDEwMAotQEAgLTEzNyw3ICsxMzcsNyBAQAotICAgICAgICAgPHVzaW5nIG1vZHVsZT0i Z2V0dGV4dCIvPgotICAgICAgICAgPGdldHRleHQtY2F0YWxvZ3MgaWQ9ImxvY2FsZSI+Ci0gICAg ICAgICAgICAgPHNyY2Rpcj4kKFNSQ0RJUikvbG9jYWxlPC9zcmNkaXI+Ci0tICAgICAgICAgICAg PGNhdGFsb2ctbmFtZT53eHN0ZDwvY2F0YWxvZy1uYW1lPgotKyAgICAgICAgICAgIDxjYXRhbG9n LW5hbWU+d3hzdGQkKFdYX1JFTEVBU0VfTk9ET1QpPC9jYXRhbG9nLW5hbWU+Ci0gICAgICAgICAg ICAgPGxpbmd1YXM+Ci0gICAgICAgICAgICAgICAgIGNhIGNzIGRhIGRlIGVsIGVzIGZpIGZyIGh1 IGlkIGl0IGphIG5sIHBsIHJ1IHNsIHN2IHRyIHVrCi0gICAgICAgICAgICAgICAgIHpoIHpoX0NO IHpoX1RXCi1kaWZmIC1OYXVyIHNyYy9jb21tb24vdHJhbnNsYXRpb24uY3BwIHNyYy9jb21tb24v dHJhbnNsYXRpb24uY3BwCi0tLS0gYS9zcmMvY29tbW9uL3RyYW5zbGF0aW9uLmNwcAkyMDE0LTEw LTA2IDIzOjMzOjQ0LjAwMDAwMDAwMCArMDIwMAotKysrIGIvc3JjL2NvbW1vbi90cmFuc2xhdGlv bi5jcHAJMjAxNC0xMS0xOSAxMTowMjoyMS4wNjc3ODg2NjUgKzAxMDAKLUBAIC0xNDcxLDcgKzE0 NzEsNyBAQAotIAotIGJvb2wgd3hUcmFuc2xhdGlvbnM6OkFkZFN0ZENhdGFsb2coKQotIHsKLS0g ICAgaWYgKCAhQWRkQ2F0YWxvZyh3eFMoInd4c3RkIikpICkKLSsgICAgaWYgKCAhQWRkQ2F0YWxv Zyh3eFMoInd4c3RkIiB3eFNUUklOR0laRSh3eE1BSk9SX1ZFUlNJT04pIHd4U1RSSU5HSVpFKHd4 TUlOT1JfVkVSU0lPTikpKSApCi0gICAgICAgICByZXR1cm4gZmFsc2U7Ci0gCi0gICAgIC8vIHRo ZXJlIG1heSBiZSBhIGNhdGFsb2cgd2l0aCB0b29sa2l0IHNwZWNpZmljIG92ZXJyaWRlcywgaXQg aXMgbm90Ci1kaWZmIC1OYXVyIHV0aWxzL3d4cmMvTWFrZWZpbGUuaW4gdXRpbHMvd3hyYy9NYWtl ZmlsZS5pbgotLS0tIGEvdXRpbHMvd3hyYy9NYWtlZmlsZS5pbgkyMDE0LTEwLTA2IDIzOjMzOjQ0 LjAwMDAwMDAwMCArMDIwMAotKysrIGIvdXRpbHMvd3hyYy9NYWtlZmlsZS5pbgkyMDE0LTExLTE5 IDEwOjQ5OjU1LjQxMDExMDY2OSArMDEwMAotQEAgLTEyNSw3ICsxMjUsNiBAQAotIEBDT05EX1VT RV9YUkNfMUAJcm0gLWYgJChERVNURElSKSQoYmluZGlyKS93eHJjJChFWEVFWFQpICQoREVTVERJ UikkKGJpbmRpcikvd3hyYy0kKFdYX1JFTEVBU0UpCi0gQENPTkRfVVNFX1hSQ18xQAkkKElOU1RB TExfUFJPR1JBTSkgd3hyYyQoRVhFRVhUKSAkKERFU1RESVIpJChiaW5kaXIpCi0gQENPTkRfVVNF X1hSQ18xQAltdiAtZiAkKERFU1RESVIpJChiaW5kaXIpL3d4cmMkKEVYRUVYVCkgJChERVNURElS KSQoYmluZGlyKS93eHJjLSQoV1hfUkVMRUFTRSkKLS1AQ09ORF9VU0VfWFJDXzFACShjZCAkKERF U1RESVIpJChiaW5kaXIpICYmICQoTE5fUykgd3hyYy0kKFdYX1JFTEVBU0UpIHd4cmMkKEVYRUVY VCkpCi0gCi0gQENPTkRfVVNFX1hSQ18xQHVuaW5zdGFsbF93eHJjOiAKLSBAQ09ORF9VU0VfWFJD XzFACXJtIC1mICQoREVTVERJUikkKGJpbmRpcikvd3hyYyQoRVhFRVhUKQpkaWZmIC0tZ2l0IGEv c3JjcGtncy93eFdpZGdldHMvdGVtcGxhdGUgYi9zcmNwa2dzL3d4V2lkZ2V0cy90ZW1wbGF0ZQpk ZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNDgwYzNlMTVlMzUyNC4uMDAwMDAwMDAwMDAw MAotLS0gYS9zcmNwa2dzL3d4V2lkZ2V0cy90ZW1wbGF0ZQorKysgL2Rldi9udWxsCkBAIC0xLDY2 ICswLDAgQEAKLSMgVGVtcGxhdGUgZmlsZSBmb3IgJ3d4V2lkZ2V0cycKLXBrZ25hbWU9d3hXaWRn ZXRzCi12ZXJzaW9uPTMuMC41LjEKLXJldmlzaW9uPTYKLWJ1aWxkX3N0eWxlPWdudS1jb25maWd1 cmUKLWNvbmZpZ3VyZV9hcmdzPSItLWVuYWJsZS11bmljb2RlIC0td2l0aC1vcGVuZ2wgLS13aXRo LXNkbCAtLXdpdGgtbGlibXNwYWNrCi0gLS13aXRoLWxpYm5vdGlmeSAtLWVuYWJsZS1tZWRpYWN0 cmwgLS13aXRoLWd0az0yIC0tZGlzYWJsZS13ZWJ2aWV3IgotaG9zdG1ha2VkZXBlbmRzPSJwa2ct Y29uZmlnIgotbWFrZWRlcGVuZHM9Imd0aystZGV2ZWwgbGlianBlZy10dXJiby1kZXZlbCB0aWZm LWRldmVsIGxpYlNNLWRldmVsIGxpYm5vdGlmeS1kZXZlbAotIGxpYlhpbmVyYW1hLWRldmVsIGxp Ym1zcGFjay1kZXZlbCBTREwyLWRldmVsIGdsdS1kZXZlbAotIGdzdHJlYW1lcjEtZGV2ZWwgZ3N0 LXBsdWdpbnMtYmFzZTEtZGV2ZWwiCi1kZXBlbmRzPSJ3eFdpZGdldHMtY29tbW9uPj0ke3ZlcnNp b259Igotc2hvcnRfZGVzYz0iV3hXaWRnZXRzIEdVSSB0b29sa2l0IGxpYnJhcnkgKHZlcnNpb24g MykiCi1tYWludGFpbmVyPSJNYXJ0aW4gUmllc2UgPGdyYXVlaGFhcmVAZ214LmRlPiIKLWxpY2Vu c2U9Ild4V2luZG93cy1leGNlcHRpb24tMy4xIgotaG9tZXBhZ2U9Imh0dHBzOi8vd3d3Lnd4d2lk Z2V0cy5vcmcvIgotZGlzdGZpbGVzPSJodHRwczovL2dpdGh1Yi5jb20vd3hXaWRnZXRzL3d4V2lk Z2V0cy9yZWxlYXNlcy9kb3dubG9hZC92JHt2ZXJzaW9ufS93eFdpZGdldHMtJHt2ZXJzaW9ufS50 YXIuYnoyIgotY2hlY2tzdW09NDQwZjZlNzNjZjVhZmIyY2JmOWFmMTBjZWM4ZGE2Y2RkM2QzOTk4 ZDUyNzU5OGE1M2RiODcwOTk1MjRhYzgwNwotCi1wb3N0X2luc3RhbGwoKSB7Ci0JbG9jYWwgX2Nv bmZpZz0iZ3RrMi11bmljb2RlLTMuMCIKLQkjIHJlbW92ZSBmaWxlcyB0aGF0IGFyZSBhbHJlYWR5 IGluIHd4V2lkZ2V0cy1jb21tb24KLQlybSAtZiAke0RFU1RESVJ9L3Vzci9saWIvbGlid3hfYmFz ZXUqCi0Jcm0gLXJmICR7REVTVERJUn0vdXNyL2Jpbi93eHJjKgotCXJtIC1yZiAke0RFU1RESVJ9 L3Vzci9zaGFyZQotCWZpbmQgJHtERVNURElSfS91c3IvaW5jbHVkZSAtdHlwZSBmIC1ub3QgLW5h bWUgdGFiYXJ0Z3RrLmggXAotCQktbm90IC1uYW1lIGZvbnRkbGdnLmggLW5vdCAtbmFtZSBub3Rp Zm1zZy5oIC1leGVjIHJtIC1mIHt9IFw7Ci0JZm9yIGYgaW4gIiIgZ2VuZXJpYyBndGs7IGRvCi0J CXJtICR7REVTVERJUn0vdXNyL2luY2x1ZGUvd3gtMy4wL3d4LyRmL25vdGlmbXNnLmgKLQlkb25l Ci0JIyByZW1vdmUgYWxsIG9jY3VycmVuY2VzIG9mICRYQlBTX0NST1NTX1RSSVBMRVQKLQkjIHd4 LWNvbmZpZzoKLQkjICAgLSBtYXJrIHRoaXMgYnVpbGQgYXMgbmF0aXZlIGJ1aWxkCi0JIyAgIC0g aWdub3JlIC0taG9zdCBvcHRpb247IGJyZWFrcyBjb25maWd1cmUgc2NyaXB0cyB3aGVuCi0JIyAg ICAgY3Jvc3MgY29tcGlsaW5nIChpc27igJl0IG5lY2Vzc2FyeSBpbiBvdXIgY2FzZSBhbnl3YXkp Ci0JaWYgWyAtbiAiJENST1NTX0JVSUxEIiBdOyB0aGVuCi0JCXJlbmFtZSAiJHtYQlBTX0NST1NT X1RSSVBMRVR9LSIgIiIgXAotCQkJJHtERVNURElSfS91c3IvbGliL3d4L2NvbmZpZy8qIFwKLQkJ CSR7REVTVERJUn0vdXNyL2xpYi93eC9pbmNsdWRlLyoKLQkJcmVuYW1lIC0tICItJHtYQlBTX0NS T1NTX1RSSVBMRVR9IiAiIiAke0RFU1RESVJ9L3Vzci9saWIvKgotCi0JCXNlZCAtaSAtZSAicy8k e1hCUFNfQ1JPU1NfVFJJUExFVH0tLy9nIiBcCi0JCQktZSAicy8tJHtYQlBTX0NST1NTX1RSSVBM RVR9Ly9nIiBcCi0JCQktZSAicywkWEJQU19DUk9TU19CQVNFLCxnIiBcCi0JCQkke0RFU1RESVJ9 L3Vzci9saWIvd3gvY29uZmlnLyR7X2NvbmZpZ30KLQotCWZpCi0Jc2VkIC1pIC1lICdzLF5iaW5k aXI9LiosYmluZGlyPSR7ZXhlY19wcmVmaXh9L2JpbiwnIFwKLQkJLWUgJ3MvaXNfY3Jvc3MoKSAg eyAuKiB9L2lzX2Nyb3NzKCkgeyBmYWxzZTsgfS9nJyBcCi0JCS1lICcvLS1cKj1cKikvaSAtLWhv c3Q9XCopIGNvbnRpbnVlOzsnIFwKLQkJLWUgInMsL3Vzci9saWIsXCR7ZXhlY19wcmVmaXh9L2xp YixnIiBcCi0JCSR7REVTVERJUn0vdXNyL2xpYi93eC9jb25maWcvJHtfY29uZmlnfQotCWxuIC1z ZiAuLi9saWIvd3gvY29uZmlnLyR7X2NvbmZpZ30gJHtQS0dERVNURElSfS91c3IvYmluL3d4LWNv bmZpZy0zLjAKLQlsbiAtc2Ygd3gtY29uZmlnLTMuMCAke0RFU1RESVJ9L3Vzci9iaW4vd3gtY29u ZmlnCi19Ci0KLXd4V2lkZ2V0cy1kZXZlbF9wYWNrYWdlKCkgewotCWRlcGVuZHM9IiR7c291cmNl cGtnfT49JHt2ZXJzaW9ufV8ke3JldmlzaW9ufSAke3NvdXJjZXBrZ30tY29tbW9uLWRldmVsPj0k e3ZlcnNpb259IgotCXNob3J0X2Rlc2MrPSIgLSBkZXZlbG9wbWVudCBmaWxlcyIKLQlwa2dfaW5z dGFsbCgpIHsKLQkJdm1vdmUgdXNyL2luY2x1ZGUKLQkJdm1vdmUgdXNyL2JpbgotCQl2bW92ZSAi dXNyL2xpYi8qLnNvIgotCQl2bW92ZSB1c3IvbGliL3d4Ci0JfQotfQpkaWZmIC0tZ2l0IGEvc3Jj cGtncy93eFdpZGdldHMvdXBkYXRlIGIvc3JjcGtncy93eFdpZGdldHMvdXBkYXRlCmRlbGV0ZWQg ZmlsZSBtb2RlIDEwMDY0NAppbmRleCA3N2UyOTBlN2U2NDZlLi4wMDAwMDAwMDAwMDAwCi0tLSBh L3NyY3BrZ3Mvd3hXaWRnZXRzL3VwZGF0ZQorKysgL2Rldi9udWxsCkBAIC0xLDIgKzAsMCBAQAot IyBkZXZlbG9wbWVudCB2ZXJzaW9uCi1pZ25vcmU9JzMuMS4qJwoKRnJvbSA5MmViMmNhNTY4OTYw MTFkNThkZWJkMDNmZDQ0MjJjZDE3MmE5MGJiIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9t OiAiQW5kcmV3IEouIEhlc2ZvcmQiIDxhamhAc2lkZWJhbmQub3JnPgpEYXRlOiBNb24sIDI1IFNl cCAyMDIzIDAwOjA0OjMzIC0wNDAwClN1YmplY3Q6IFtQQVRDSCAwNS80M10gd3hXaWRnZXRzLWd0 azM6IHVwZGF0ZSB0byAzLjIuMi4xLgoKLS0tCiBjb21tb24vc2hsaWJzICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgfCAzMiArKysrLS0tLS0KIC4uLi93eFdpZGdldHMtZ3RrMy9maWxl cy9tdXNsLWxvY2FsZS1sLnBhdGNoICB8IDM0ICsrKysrKysrKysKIC4uLi9wYXRjaGVzL2ludmFs aWQtaGVhZGVyLXN5bnRheC5wYXRjaCAgICAgICB8IDE2ICsrKysrCiAuLi4vd3hXaWRnZXRzLWd0 azMvcGF0Y2hlcy9sYXJnZWZpbGUucGF0Y2ggICAgfCAxNiArKysrKwogLi4uL3BhdGNoZXMvbm8t Y3Jvc3Mtc3VmZml4LnBhdGNoICAgICAgICAgICAgIHwgMTggKysrKysKIHNyY3BrZ3Mvd3hXaWRn ZXRzLWd0azMvcGF0Y2hlcy9uby1nbHZuZC5wYXRjaCB8IDQ1ICsrKysrKysrKysrKysKIC4uLi9w YXRjaGVzL25vbmZhdGFsLWFiaS1jaGVjay5wYXRjaCAgICAgICAgICB8IDIxICsrKy0tLQogLi4u L3d4V2lkZ2V0cy1ndGszL3BhdGNoZXMvd3gtY29uZmlnLnBhdGNoICAgIHwgNTYgKysrKysrKysr KysrKysrKwogc3JjcGtncy93eFdpZGdldHMtZ3RrMy90ZW1wbGF0ZSAgICAgICAgICAgICAgIHwg NjUgKysrKysrKysrKystLS0tLS0tLQogc3JjcGtncy93eFdpZGdldHMtZ3RrMy91cGRhdGUgICAg ICAgICAgICAgICAgIHwgIDQgKy0KIDEwIGZpbGVzIGNoYW5nZWQsIDI1MiBpbnNlcnRpb25zKCsp LCA1NSBkZWxldGlvbnMoLSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3d4V2lkZ2V0cy1n dGszL2ZpbGVzL211c2wtbG9jYWxlLWwucGF0Y2gKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dz L3d4V2lkZ2V0cy1ndGszL3BhdGNoZXMvaW52YWxpZC1oZWFkZXItc3ludGF4LnBhdGNoCiBjcmVh dGUgbW9kZSAxMDA2NDQgc3JjcGtncy93eFdpZGdldHMtZ3RrMy9wYXRjaGVzL2xhcmdlZmlsZS5w YXRjaAogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3Mvd3hXaWRnZXRzLWd0azMvcGF0Y2hlcy9u by1jcm9zcy1zdWZmaXgucGF0Y2gKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3d4V2lkZ2V0 cy1ndGszL3BhdGNoZXMvbm8tZ2x2bmQucGF0Y2gKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dz L3d4V2lkZ2V0cy1ndGszL3BhdGNoZXMvd3gtY29uZmlnLnBhdGNoCgpkaWZmIC0tZ2l0IGEvY29t bW9uL3NobGlicyBiL2NvbW1vbi9zaGxpYnMKaW5kZXggZGE3ZjI3MzlkYzVlZC4uODVlYWQyMDg0 NGVjYyAxMDA2NDQKLS0tIGEvY29tbW9uL3NobGlicworKysgYi9jb21tb24vc2hsaWJzCkBAIC0x NTU5LDkgKzE1NTksNiBAQCBsaWJvZnguc28uNyBsaWJvZngtMC4xMC4xXzEKIGxpYnNpZ3NlZ3Yu c28uMiBsaWJzaWdzZWd2LTIuMTBfMgogbGliZnByaW50LnNvLjAgbGliZnByaW50MC0xLjBfMQog bGliZnByaW50LTIuc28uMiBsaWJmcHJpbnQtMS45MC43XzEKLWxpYnd4X2Jhc2V1X3htbC0zLjAu c28uMCB3eFdpZGdldHMtY29tbW9uLTMuMC40XzEKLWxpYnd4X2Jhc2V1LTMuMC5zby4wIHd4V2lk Z2V0cy1jb21tb24tMy4wLjRfMQotbGlid3hfYmFzZXVfbmV0LTMuMC5zby4wIHd4V2lkZ2V0cy1j b21tb24tMy4wLjRfMQogbGlibXNwYWNrLnNvLjAgbGlibXNwYWNrLTAuNGFscGhhXzEKIGxpYnNs aW0uc28uMS4zLjYgc2xpbS0xLjMuNl8xCiBsaWJtZWRpYWFydC0yLjAuc28uMCBsaWJtZWRpYWFy dC0xLjkuMV8xCkBAIC0zNDc0LDE5ICszNDcxLDIyIEBAIGxpYm1vempzLTc4LnNvLjAgbW96anM3 OC03OC4xLjBfMQogbGliZWJ1cjEyOC5zby4xIGxpYmVidXIxMjgtMS4yLjRfMQogbGliZ3Rrc291 cmNldmlldy00LnNvLjAgZ3Rrc291cmNldmlldzQtNC4wLjJfMQogbGliZ3Rrc291cmNldmlldy01 LnNvLjAgZ3Rrc291cmNldmlldzUtNS4yLjBfMQotbGlid3hfZ3RrM3VfcHJvcGdyaWQtMy4wLnNv LjAgd3hXaWRnZXRzLWd0azMtMy4wLjRfMQotbGlid3hfZ3RrM3VfcWEtMy4wLnNvLjAgd3hXaWRn ZXRzLWd0azMtMy4wLjRfMQotbGlid3hfZ3RrM3VfY29yZS0zLjAuc28uMCB3eFdpZGdldHMtZ3Rr My0zLjAuNF8xCi1saWJ3eF9ndGszdV9odG1sLTMuMC5zby4wIHd4V2lkZ2V0cy1ndGszLTMuMC40 XzEKLWxpYnd4X2d0azN1X2Fkdi0zLjAuc28uMCB3eFdpZGdldHMtZ3RrMy0zLjAuNF8xCi1saWJ3 eF9ndGszdV9yaWNodGV4dC0zLjAuc28uMCB3eFdpZGdldHMtZ3RrMy0zLjAuNF8xCi1saWJ3eF9n dGszdV94cmMtMy4wLnNvLjAgd3hXaWRnZXRzLWd0azMtMy4wLjRfMQotbGlid3hfZ3RrM3Vfd2Vi dmlldy0zLjAuc28uMCB3eFdpZGdldHMtZ3RrMy0zLjAuNF8xCi1saWJ3eF9ndGszdV9hdWktMy4w LnNvLjAgd3hXaWRnZXRzLWd0azMtMy4wLjRfMQotbGlid3hfZ3RrM3VfbWVkaWEtMy4wLnNvLjAg d3hXaWRnZXRzLWd0azMtMy4wLjRfMQotbGlid3hfZ3RrM3VfcmliYm9uLTMuMC5zby4wIHd4V2lk Z2V0cy1ndGszLTMuMC40XzEKLWxpYnd4X2d0azN1X2dsLTMuMC5zby4wIHd4V2lkZ2V0cy1ndGsz LTMuMC40XzEKLWxpYnd4X2d0azN1X3N0Yy0zLjAuc28uMCB3eFdpZGdldHMtZ3RrMy0zLjAuNF8x CitsaWJ3eF9iYXNldV94bWwtMy4yLnNvLjAgd3hXaWRnZXRzLWNvbW1vbi0zLjIuMi4xXzEKK2xp Ynd4X2Jhc2V1LTMuMi5zby4wIHd4V2lkZ2V0cy1jb21tb24tMy4yLjIuMV8xCitsaWJ3eF9iYXNl dV9uZXQtMy4yLnNvLjAgd3hXaWRnZXRzLWNvbW1vbi0zLjIuMi4xXzEKK2xpYnd4X2d0azN1X2Fk di0zLjIuc28uMCB3eFdpZGdldHMtZ3RrMy0zLjIuMi4xXzEKK2xpYnd4X2d0azN1X2F1aS0zLjIu c28uMCB3eFdpZGdldHMtZ3RrMy0zLjIuMi4xXzEKK2xpYnd4X2d0azN1X2NvcmUtMy4yLnNvLjAg d3hXaWRnZXRzLWd0azMtMy4yLjIuMV8xCitsaWJ3eF9ndGszdV9nbC0zLjIuc28uMCB3eFdpZGdl dHMtZ3RrMy0zLjIuMi4xXzEKK2xpYnd4X2d0azN1X2h0bWwtMy4yLnNvLjAgd3hXaWRnZXRzLWd0 azMtMy4yLjIuMV8xCitsaWJ3eF9ndGszdV9tZWRpYS0zLjIuc28uMCB3eFdpZGdldHMtZ3RrMy0z LjIuMi4xXzEKK2xpYnd4X2d0azN1X3Byb3BncmlkLTMuMi5zby4wIHd4V2lkZ2V0cy1ndGszLTMu Mi4yLjFfMQorbGlid3hfZ3RrM3VfcWEtMy4yLnNvLjAgd3hXaWRnZXRzLWd0azMtMy4yLjIuMV8x CitsaWJ3eF9ndGszdV9yaWJib24tMy4yLnNvLjAgd3hXaWRnZXRzLWd0azMtMy4yLjIuMV8xCits aWJ3eF9ndGszdV9yaWNodGV4dC0zLjIuc28uMCB3eFdpZGdldHMtZ3RrMy0zLjIuMi4xXzEKK2xp Ynd4X2d0azN1X3N0Yy0zLjIuc28uMCB3eFdpZGdldHMtZ3RrMy0zLjIuMi4xXzEKK2xpYnd4X2d0 azN1X3dlYnZpZXctMy4yLnNvLjAgd3hXaWRnZXRzLWd0azMtMy4yLjIuMV8xCitsaWJ3eF9ndGsz dV94cmMtMy4yLnNvLjAgd3hXaWRnZXRzLWd0azMtMy4yLjIuMV8xCiBsaWJ0ZXBsLTYuc28uMiB0 ZXBsLTYuNC4wXzEKIGxpYm5vbWFjc0NvcmUuc28uMyBub21hY3MtMy4xMC4yXzQKIGxpYmF1ZGl0 LnNvLjEgbGliYXVkaXQtMi44LjRfMQpkaWZmIC0tZ2l0IGEvc3JjcGtncy93eFdpZGdldHMtZ3Rr My9maWxlcy9tdXNsLWxvY2FsZS1sLnBhdGNoIGIvc3JjcGtncy93eFdpZGdldHMtZ3RrMy9maWxl cy9tdXNsLWxvY2FsZS1sLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw MDAwMDAuLmRjNWYxZGY2YTI1MDIKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL3d4V2lkZ2V0 cy1ndGszL2ZpbGVzL211c2wtbG9jYWxlLWwucGF0Y2gKQEAgLTAsMCArMSwzNCBAQAoraHR0cHM6 Ly9naXQuYWxwaW5lbGludXgub3JnL2Fwb3J0cy9wbGFpbi9jb21tdW5pdHkvd3h3aWRnZXRzL211 c2wtbG9jYWxlLWwucGF0Y2gKKwordGhlc2UgbWFjcm8nZCBhd2F5IGZ1bmN0aW9ucyBkb24ndCBl eGlzdCBpbiBtdXNsICh5ZXQpCitkaWZmIC0tZ2l0IGEvaW5jbHVkZS93eC94bG9jYWxlLmggYi9p bmNsdWRlL3d4L3hsb2NhbGUuaAoraW5kZXggYzQzM2QyNS4uNzk0Y2YwYiAxMDA2NDQKKy0tLSBh L2luY2x1ZGUvd3gveGxvY2FsZS5oCisrKysgYi9pbmNsdWRlL3d4L3hsb2NhbGUuaAorQEAgLTMz LDYgKzMzLDI2IEBACisgI2luY2x1ZGUgInd4L2NydC5oIiAgICAgLy8gSW5jbHVkZXMgd3gvY2hh cnR5cGUuaCwgd3gvd3hjcnQuaCh3eC9zdHJpbmcuaCkKKyAjaW5jbHVkZSAid3gvaW50bC5oIiAg ICAvLyB3eExhbmd1YWdlCisgCisrI2lmbmRlZiBzdHJ0b2xfbAorKyNkZWZpbmUgc3RydG9sX2wo cywgcCwgYmFzZSwgbCkgc3RydG9sKHMsIHAsIGJhc2UpCisrI2VuZGlmCisrCisrI2lmbmRlZiBz dHJ0b3VsX2wKKysjZGVmaW5lIHN0cnRvdWxfbChzLCBwLCBiYXNlLCBsKSBzdHJ0b3VsKHMsIHAs IGJhc2UpCisrI2VuZGlmCisrCisrI2lmbmRlZiB3Y3N0b2RfbAorKyNkZWZpbmUgd2NzdG9kX2wo cywgcCwgbCkgd2NzdG9kKHMsIHApCisrI2VuZGlmCisrCisrI2lmbmRlZiB3Y3N0b2xfbAorKyNk ZWZpbmUgd2NzdG9sX2wocywgcCwgYmFzZSwgbCkgd2NzdG9sKHMsIHAsIGJhc2UpCisrI2VuZGlm CisrCisrI2lmbmRlZiB3Y3N0b3VsX2wKKysjZGVmaW5lIHdjc3RvdWxfbChzLCBwLCBiYXNlLCBs KSB3Y3N0b3VsKHMsIHAsIGJhc2UpCisrI2VuZGlmCisrCisgLy8gVGhlIHBsYXRmb3JtLXNwZWNp ZmljIGxvY2FsZSB0eXBlCisgLy8gSWYgd3hYTG9jYWxlX3QgaXMgbm90IGRlZmluZWQsIHRoZW4g b25seSAiQyIgbG9jYWxlIHN1cHBvcnQgaXMgcHJvdmlkZWQKKyAjaWZkZWYgd3hIQVNfWExPQ0FM RV9TVVBQT1JUCmRpZmYgLS1naXQgYS9zcmNwa2dzL3d4V2lkZ2V0cy1ndGszL3BhdGNoZXMvaW52 YWxpZC1oZWFkZXItc3ludGF4LnBhdGNoIGIvc3JjcGtncy93eFdpZGdldHMtZ3RrMy9wYXRjaGVz L2ludmFsaWQtaGVhZGVyLXN5bnRheC5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw MDAwMDAwMDAwMDAwLi5mZDRmYzRjZWNhMWFhCi0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy93 eFdpZGdldHMtZ3RrMy9wYXRjaGVzL2ludmFsaWQtaGVhZGVyLXN5bnRheC5wYXRjaApAQCAtMCww ICsxLDE2IEBACitodHRwczovL2dpdC5hbHBpbmVsaW51eC5vcmcvYXBvcnRzL3BsYWluL2NvbW11 bml0eS93eHdpZGdldHMvaW52YWxpZC1oZWFkZXItc3ludGF4LnBhdGNoCisKK2RpZmYgLS1naXQg YS9pbmNsdWRlL3d4L21hdHJpeC5oIGIvaW5jbHVkZS93eC9tYXRyaXguaAoraW5kZXggM2IzMjI1 ZC4uZTc3ZmIxYSAxMDA2NDQKKy0tLSBhL2luY2x1ZGUvd3gvbWF0cml4LmgKKysrKyBiL2luY2x1 ZGUvd3gvbWF0cml4LmgKK0BAIC0zNyw4ICszNyw4IEBACisgLy8gIGF0IGEgY2VydGFpbiBjb29y ZGluYXRlIGFuZCBhbmdsZSB3aXRoaW4gYW5vdGhlciBwYXJlbnQgcGljdHVyZS4KKyAvLyAgQXQg YWxsIHRpbWVzIG1faXNJZGVudGl0eSBpcyBzZXQgaWYgdGhlIG1hdHJpeCBpdHNlbGYgaXMgYW4g SWRlbnRpdHkgbWF0cml4LgorIC8vICBJdCBpcyB1c2VkIHdoZXJlIHBvc3NpYmxlIHRvIG9wdGlt aXplIGNhbGN1bGF0aW9ucy4KKy1jbGFzcworIHd4REVQUkVDQVRFRF9FWFBPUlRfQ09SRSgidXNl IHd4QWZmaW5lTWF0cml4MkQgaW5zdGVhZCIpCisrY2xhc3MKKyB3eFRyYW5zZm9ybU1hdHJpeDog cHVibGljIHd4T2JqZWN0CisgeworIHB1YmxpYzoKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mvd3hXaWRn ZXRzLWd0azMvcGF0Y2hlcy9sYXJnZWZpbGUucGF0Y2ggYi9zcmNwa2dzL3d4V2lkZ2V0cy1ndGsz L3BhdGNoZXMvbGFyZ2VmaWxlLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw MDAwMDAwMDAuLjllNWE4MWIzMWI5NGQKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL3d4V2lk Z2V0cy1ndGszL3BhdGNoZXMvbGFyZ2VmaWxlLnBhdGNoCkBAIC0wLDAgKzEsMTYgQEAKK2h0dHBz Oi8vZ2l0LmFscGluZWxpbnV4Lm9yZy9hcG9ydHMvcGxhaW4vY29tbXVuaXR5L3d4d2lkZ2V0cy9s YXJnZWZpbGUucGF0Y2gKKworbm90aGluZyBzZXRzIHRoaXMgdG8gMCwgYnV0IGZvciBzb21lIHJl YXNvbiBpdCBnZXRzIHVuZGVmJ2QKK2RpZmYgLS1naXQgYS9idWlsZC9jbWFrZS9zZXR1cC5oLmlu IGIvYnVpbGQvY21ha2Uvc2V0dXAuaC5pbgoraW5kZXggZTRjOWU4My4uZTllZjhkYyAxMDA2NDQK Ky0tLSBhL2J1aWxkL2NtYWtlL3NldHVwLmguaW4KKysrKyBiL2J1aWxkL2NtYWtlL3NldHVwLmgu aW4KK0BAIC04NjcsNyArODY3LDcgQEAKKyAvKgorICAqIERlZmluZSBpZiBsYXJnZSAoNjQgYml0 IGZpbGUgb2Zmc2V0cykgZmlsZXMgYXJlIHN1cHBvcnRlZC4KKyAgKi8KKy0jY21ha2VkZWZpbmUg SEFWRV9MQVJHRUZJTEVfU1VQUE9SVCAxCisrI2RlZmluZSBIQVZFX0xBUkdFRklMRV9TVVBQT1JU IDEKKyAKKyAvKgorICAqIFVzZSBPcGVuR0wKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mvd3hXaWRnZXRz LWd0azMvcGF0Y2hlcy9uby1jcm9zcy1zdWZmaXgucGF0Y2ggYi9zcmNwa2dzL3d4V2lkZ2V0cy1n dGszL3BhdGNoZXMvbm8tY3Jvc3Mtc3VmZml4LnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu ZGV4IDAwMDAwMDAwMDAwMDAuLjQ0MzIyMWQzZDE4OTUKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNw a2dzL3d4V2lkZ2V0cy1ndGszL3BhdGNoZXMvbm8tY3Jvc3Mtc3VmZml4LnBhdGNoCkBAIC0wLDAg KzEsMTggQEAKK0Nyb3NzLWNvbXBpbGVkIGxpYnJhcmllcyBnZXQgYSBzdWZmaXggbmFtaW5nIHRo ZSBzeXN0ZW0gYnkgZGVmYXVsdCwgYnV0IHRoaXMKK2NhdXNlcyBkZXZpYXRpb24gZnJvbSBuYXRp dmUtYnVpbHQgbGlicmFyaWVzIGFuZCBzaG91bGQgYmUgZGlzYWJsZWQuCisKKy0tLSBhL2J1aWxk L2NtYWtlL2Z1bmN0aW9ucy5jbWFrZQorKysrIGIvYnVpbGQvY21ha2UvZnVuY3Rpb25zLmNtYWtl CitAQCAtMjE5LDkgKzIxOSw5IEBACisgICAgIGVuZGlmKCkKKyAKKyAgICAgc2V0KGNyb3NzX3Rh cmdldCkKKy0gICAgaWYgKENNQUtFX0NST1NTQ09NUElMSU5HKQorLSAgICAgICAgc2V0KGNyb3Nz X3RhcmdldCAiLSR7Q01BS0VfU1lTVEVNX05BTUV9IikKKy0gICAgZW5kaWYoKQorKyAgICAjaWYg KENNQUtFX0NST1NTQ09NUElMSU5HKQorKyAgICAjICAgIHNldChjcm9zc190YXJnZXQgIi0ke0NN QUtFX1NZU1RFTV9OQU1FfSIpCisrICAgICNlbmRpZigpCisgCisgICAgIHNldChsaWJfcHJlZml4 ICJsaWIiKQorICAgICBpZihNU1ZDIE9SIChXSU4zMiBBTkQgd3hCVUlMRF9TSEFSRUQpKQpkaWZm IC0tZ2l0IGEvc3JjcGtncy93eFdpZGdldHMtZ3RrMy9wYXRjaGVzL25vLWdsdm5kLnBhdGNoIGIv c3JjcGtncy93eFdpZGdldHMtZ3RrMy9wYXRjaGVzL25vLWdsdm5kLnBhdGNoCm5ldyBmaWxlIG1v ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAuLjEzMDNkZDYwNzQwMDQKLS0tIC9kZXYvbnVs bAorKysgYi9zcmNwa2dzL3d4V2lkZ2V0cy1ndGszL3BhdGNoZXMvbm8tZ2x2bmQucGF0Y2gKQEAg LTAsMCArMSw0NSBAQAoraHR0cHM6Ly9naXQuYWxwaW5lbGludXgub3JnL2Fwb3J0cy9wbGFpbi9j b21tdW5pdHkvd3h3aWRnZXRzL25vLWdsdm5kLnBhdGNoCisKK2ZpbmRfcGFja2FnZShPcGVuR0wp IG9ubHkgd29ya3Mgd2l0aCBnbHZuZCBhbmQgaGFyZGNvZGVzIGdsdm5kIHBhdGhzLCBldmVuCit0 aG91Z2ggYWxsIHRoZXNlIGNvbXBvbmVudHMgYXJlIGVhc2lseSBmb3VuZCB3aXRoIHBrZ2NvbmZp Zy4uCitkaWZmIC0tZ2l0IGEvYnVpbGQvY21ha2UvaW5pdC5jbWFrZSBiL2J1aWxkL2NtYWtlL2lu aXQuY21ha2UKK2luZGV4IGVmMjhjOTkuLmI0ZGY4MzAgMTAwNjQ0CistLS0gYS9idWlsZC9jbWFr ZS9pbml0LmNtYWtlCisrKysgYi9idWlsZC9jbWFrZS9pbml0LmNtYWtlCitAQCAtNDA4LDE3ICs0 MDgsMjYgQEAgaWYod3hVU0VfR1VJKQorICAgICAgICAgICAgIHNldChPUEVOR0xfRk9VTkQgVFJV RSkKKyAgICAgICAgICAgICBzZXQoT1BFTkdMX0xJQlJBUklFUyAiLWZyYW1ld29yayBPcGVuR0xF UyIgIi1mcmFtZXdvcmsgUXVhcnR6Q29yZSIgIi1mcmFtZXdvcmsgR0xLaXQiKQorICAgICAgICAg ZWxzZSgpCistICAgICAgICAgICAgZmluZF9wYWNrYWdlKE9wZW5HTCkKKy0gICAgICAgICAgICBp ZihPUEVOR0xfRk9VTkQpCistICAgICAgICAgICAgICAgIGZvcmVhY2goZ2x0YXJnZXQgT3BlbkdM OjpHTCBPcGVuR0w6OkdMVSBPcGVuR0w6Ok9wZW5HTCkKKy0gICAgICAgICAgICAgICAgICAgIGlm KFRBUkdFVCAke2dsdGFyZ2V0fSkKKy0gICAgICAgICAgICAgICAgICAgICAgICBzZXQoT1BFTkdM X0xJQlJBUklFUyAke2dsdGFyZ2V0fSAke09QRU5HTF9MSUJSQVJJRVN9KQorLSAgICAgICAgICAg ICAgICAgICAgZW5kaWYoKQorLSAgICAgICAgICAgICAgICBlbmRmb3JlYWNoKCkKKy0gICAgICAg ICAgICBlbmRpZigpCistICAgICAgICAgICAgaWYoV1hHVEszIEFORCBPcGVuR0xfRUdMX0ZPVU5E IEFORCB3eFVTRV9HTENBTlZBU19FR0wpCisrICAgICAgICAgICAgIyBmaW5kX3BhY2thZ2UoT3Bl bkdMKQorKyAgICAgICAgICAgICMgaWYoT1BFTkdMX0ZPVU5EKQorKyAgICAgICAgICAgICMgICAg IGZvcmVhY2goZ2x0YXJnZXQgT3BlbkdMOjpHTCBPcGVuR0w6OkdMVSBPcGVuR0w6Ok9wZW5HTCkK KysgICAgICAgICAgICAjICAgICAgICAgaWYoVEFSR0VUICR7Z2x0YXJnZXR9KQorKyAgICAgICAg ICAgICMgICAgICAgICAgICAgc2V0KE9QRU5HTF9MSUJSQVJJRVMgJHtnbHRhcmdldH0gJHtPUEVO R0xfTElCUkFSSUVTfSkKKysgICAgICAgICAgICAjICAgICAgICAgZW5kaWYoKQorKyAgICAgICAg ICAgICMgICAgIGVuZGZvcmVhY2goKQorKyAgICAgICAgICAgICMgZW5kaWYoKQorKyAgICAgICAg ICAgIGZpbmRfcGFja2FnZShQa2dDb25maWcgUkVRVUlSRUQpCisrICAgICAgICAgICAgcGtnX2No ZWNrX21vZHVsZXMoR0xVIFJFUVVJUkVEIGdsdSBJTVBPUlRFRF9UQVJHRVQgR0xPQkFMKQorKyAg ICAgICAgICAgIGFkZF9saWJyYXJ5KE9wZW5HTDo6R0xVIEFMSUFTIFBrZ0NvbmZpZzo6R0xVKQor KyAgICAgICAgICAgIHBrZ19jaGVja19tb2R1bGVzKEdMIFJFUVVJUkVEIGdsIElNUE9SVEVEX1RB UkdFVCBHTE9CQUwpCisrICAgICAgICAgICAgYWRkX2xpYnJhcnkoT3BlbkdMOjpHTCBBTElBUyBQ a2dDb25maWc6OkdMKQorKyAgICAgICAgICAgIHBrZ19jaGVja19tb2R1bGVzKEVHTCBSRVFVSVJF RCBlZ2wgSU1QT1JURURfVEFSR0VUIEdMT0JBTCkKKysgICAgICAgICAgICBhZGRfbGlicmFyeShP cGVuR0w6OkVHTCBBTElBUyBQa2dDb25maWc6OkVHTCkKKysgICAgICAgICAgICBzZXQoT1BFTkdM X0ZPVU5EIFRSVUUpCisrICAgICAgICAgICAgc2V0KE9wZW5HTF9FR0xfRk9VTkQgVFJVRSkKKysg ICAgICAgICAgICBpZihXWEdUSzMgQU5EIHd4VVNFX0dMQ0FOVkFTX0VHTCkKKyAgICAgICAgICAg ICAgICAgaWYoVEFSR0VUIE9wZW5HTDo6RUdMKQorLSAgICAgICAgICAgICAgICAgICAgc2V0KE9Q RU5HTF9MSUJSQVJJRVMgT3BlbkdMOjpFR0wgJHtPUEVOR0xfTElCUkFSSUVTfSkKKysgICAgICAg ICAgICAgICAgICAgIHNldChPUEVOR0xfTElCUkFSSUVTIE9wZW5HTDo6RUdMICR7T1BFTkdMX0xJ QlJBUklFU30gR0wpCisgICAgICAgICAgICAgICAgIGVuZGlmKCkKKyAgICAgICAgICAgICAgICAg c2V0KE9QRU5HTF9JTkNMVURFX0RJUiAke09QRU5HTF9JTkNMVURFX0RJUn0gJHtPUEVOR0xfRUdM X0lOQ0xVREVfRElSU30pCisgICAgICAgICAgICAgICAgIGZpbmRfcGFja2FnZShXQVlMQU5ERUdM KQpkaWZmIC0tZ2l0IGEvc3JjcGtncy93eFdpZGdldHMtZ3RrMy9wYXRjaGVzL25vbmZhdGFsLWFi aS1jaGVjay5wYXRjaCBiL3NyY3BrZ3Mvd3hXaWRnZXRzLWd0azMvcGF0Y2hlcy9ub25mYXRhbC1h YmktY2hlY2sucGF0Y2gKaW5kZXggYmI5M2YwYTI2MTU2Yy4uOWNhMjQxYmE4YjFmZiAxMDA2NDQK LS0tIGEvc3JjcGtncy93eFdpZGdldHMtZ3RrMy9wYXRjaGVzL25vbmZhdGFsLWFiaS1jaGVjay5w YXRjaAorKysgYi9zcmNwa2dzL3d4V2lkZ2V0cy1ndGszL3BhdGNoZXMvbm9uZmF0YWwtYWJpLWNo ZWNrLnBhdGNoCkBAIC0xLDE4ICsxLDE5IEBACi1UYWtlbiBmcm9tCitBZGFwdGVkIGZyb20gYSBw cmlvciBwYXRjaCB3aGljaCB3YXMgdGFrZW4gZnJvbQogaHR0cHM6Ly9naXRodWIuY29tL2FyY2hs aW51eC9zdm50b2dpdC1wYWNrYWdlcy9ibG9iLzcxZWUxN2Q1MjlmOGUwZGM1YzQ0ZDJmZmZiMGRm YTY5YjcxZGFhMGIvcmVwb3MvZXh0cmEteDg2XzY0L21ha2UtYWJpY2hlY2stbm9uLWZhdGFsLnBh dGNoCiAKLWRpZmYgLXVwIHd4R1RLLTIuOC4xMi9zcmMvY29tbW9uL2FwcGJhc2UuY3BwLmFiaWNo ZWNrIHd4R1RLLTIuOC4xMi9zcmMvY29tbW9uL2FwcGJhc2UuY3BwCi0tLS0gYS9zcmMvY29tbW9u L2FwcGJhc2UuY3BwLmFiaWNoZWNrCTIwMTUtMDMtMTIgMTc6MTU6MTguMDAwMDAwMDAwICswMTAw Ci0rKysgYi9zcmMvY29tbW9uL2FwcGJhc2UuY3BwCTIwMTUtMDMtMTIgMTc6MTU6NTcuMDAwMDAw MDAwICswMTAwCi1AQCAtNDI0LDEwICs0MjQsNyBAQCBib29sIHd4QXBwQ29uc29sZTo6Q2hlY2tC dWlsZE9wdGlvbnMoY29uCi0gICAgICAgICBtc2cuUHJpbnRmKF9UKCJNaXNtYXRjaCBiZXR3ZWVu IHRoZSBwcm9ncmFtIGFuZCBsaWJyYXJ5IGJ1aWxkIHZlcnNpb25zIGRldGVjdGVkLlxuVGhlIGxp YnJhcnkgdXNlZCAlcyxcbmFuZCAlcyB1c2VkICVzLiIpLAotICAgICAgICAgICAgICAgICAgICBs aWIuY19zdHIoKSwgcHJvZ05hbWUuY19zdHIoKSwgcHJvZy5jX3N0cigpKTsKK2RpZmYgLXVwIGEv c3JjL2NvbW1vbi9hcHBiYXNlLmNwcCBiL3NyYy9jb21tb24vYXBwYmFzZS5jcHAKKy0tLSBhL3Ny Yy9jb21tb24vYXBwYmFzZS5jcHAKKysrKyBiL3NyYy9jb21tb24vYXBwYmFzZS5jcHAKK0BAIC04 NTAsMTEgKzg1MCw4IEBACisgICAgICAgICB3eFN0cmluZyBwcm9nID0gd3hTdHJpbmc6OkZyb21B c2NpaShvcHRpb25zU2lnbmF0dXJlKTsKKyAgICAgICAgIHd4U3RyaW5nIHByb2dOYW1lID0gd3hT dHJpbmc6OkZyb21Bc2NpaShjb21wb25lbnROYW1lKTsKICAKLS0gICAgICAgIHd4TG9nRmF0YWxF cnJvcihtc2cuY19zdHIoKSk7CistICAgICAgICB3eExvZ0ZhdGFsRXJyb3Iod3hUKCJNaXNtYXRj aCBiZXR3ZWVuIHRoZSBwcm9ncmFtIGFuZCBsaWJyYXJ5IGJ1aWxkIHZlcnNpb25zIGRldGVjdGVk LlxuVGhlIGxpYnJhcnkgdXNlZCAlcyxcbmFuZCAlcyB1c2VkICVzLiIpLAorKyAgICAgICAgd3hM b2dXYXJuaW5nKHd4VCgiTWlzbWF0Y2ggYmV0d2VlbiB0aGUgcHJvZ3JhbSBhbmQgbGlicmFyeSBi dWlsZCB2ZXJzaW9ucyBkZXRlY3RlZC5cblRoZSBsaWJyYXJ5IHVzZWQgJXMsXG5hbmQgJXMgdXNl ZCAlcy4iKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICBsaWIsIHByb2dOYW1lLCBwcm9nKTsK IC0KIC0gICAgICAgIC8vIG5vcm1hbGx5IHd4TG9nRmF0YWxFcnJvciBkb2Vzbid0IHJldHVybgog LSAgICAgICAgcmV0dXJuIGZhbHNlOwotKyAgICAgICAgd3hMb2dXYXJuaW5nKG1zZy5jX3N0cigp KTsKICAgICAgfQotICN1bmRlZiB3eENNUAogIAorICAgICByZXR1cm4gdHJ1ZTsKZGlmZiAtLWdp dCBhL3NyY3BrZ3Mvd3hXaWRnZXRzLWd0azMvcGF0Y2hlcy93eC1jb25maWcucGF0Y2ggYi9zcmNw a2dzL3d4V2lkZ2V0cy1ndGszL3BhdGNoZXMvd3gtY29uZmlnLnBhdGNoCm5ldyBmaWxlIG1vZGUg MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAuLmIyOWFiMDA1MWYzYzEKLS0tIC9kZXYvbnVsbAor KysgYi9zcmNwa2dzL3d4V2lkZ2V0cy1ndGszL3BhdGNoZXMvd3gtY29uZmlnLnBhdGNoCkBAIC0w LDAgKzEsNTYgQEAKK0ZpeCBzb21lIG9mIHRoZSBhdXRvbWF0aWNhbGx5IHBvcHVsYXRlZCBmaWVs ZHMsIHdoaWNoIHdpbGwgZ2VuZXJhbGx5IGJlCitpbmNvcnJlY3QgaW4geGJwcy1zcmMgY3Jvc3Mt Y29tcGlsYXRpb24gZW52aXJvbm1lbnRzLgorCistLS0gLi93eC1jb25maWcuaW4KKysrKyAuL3d4 LWNvbmZpZy5pbgorQEAgLTI2OCw3ICsyNjgsOSBAQAorICAgICAtLWhlbHB8LWgpCisgICAgICAg ICB1c2FnZQorICAgICAgICAgOzsKKy0KKysgICAgLS1ob3N0PSopCisrICAgICAgICBjb250aW51 ZQorKyAgICAgICAgOzsKKyAgICAgLS0qPSopCisgICAgICAgICBfbmFtZT1gb3B0aW9uX25hbWUg JGFyZ2AKKyAgICAgICAgIF92YWx1ZT1gb3B0aW9uX3ZhbHVlICRhcmdgCitAQCAtMzk4LDEzICs0 MDAsMTMgQEAKKyB9CisgCisgIyBSZXR1cm5zIHRydWUgaWYgdGhpcyBzY3JpcHQgaXMgZm9yIGEg Y3Jvc3MgY29tcGlsZWQgY29uZmlnLgorLWlzX2Nyb3NzKCkgIHsgWyAieEBjcm9zc19jb21waWxp bmdAIiA9ICJ4eWVzIiBdOyB9CisraXNfY3Jvc3MoKSAgeyBmYWxzZTsgfQorIAorIAorICMgRGV0 ZXJtaW5lIHRoZSBiYXNlIGRpcmVjdG9yaWVzIHdlIHJlcXVpcmUuCisgcHJlZml4PSR7aW5wdXRf b3B0aW9uX3ByZWZpeC0ke3RoaXNfcHJlZml4Oi1AcHJlZml4QH19CisgZXhlY19wcmVmaXg9JHtp bnB1dF9vcHRpb25fZXhlY19wcmVmaXgtJHtpbnB1dF9vcHRpb25fcHJlZml4LSR7dGhpc19leGVj X3ByZWZpeDotQGV4ZWNfcHJlZml4QH19fQorLXd4Y29uZmRpcj0iQGxpYmRpckAvd3gvY29uZmln IgorK3d4Y29uZmRpcj0iJHtleGVjX3ByZWZpeH0vbGliL3d4L2NvbmZpZyIKKyAKKyBpbnN0YWxs ZWRfY29uZmlncz1gY2QgIiR3eGNvbmZkaXIiIDI+IC9kZXYvbnVsbCAmJiBscyB8IGdyZXAgLXYg Il5pbnBsYWNlLSJgCisgCitAQCAtOTQwLDggKzk0Miw4IEBACisgZXhlY19wcmVmaXg9JHt0aGlz X2V4ZWNfcHJlZml4LSRleGVjX3ByZWZpeH0KKyAKKyBpbmNsdWRlZGlyPSJAaW5jbHVkZWRpckAi CistbGliZGlyPSJAbGliZGlyQCIKKy1iaW5kaXI9IkBiaW5kaXJAIgorK2xpYmRpcj0iJHtleGVj X3ByZWZpeH0vbGliIgorK2JpbmRpcj0iJHtleGVjX3ByZWZpeH0vYmluIgorIAorICMgVHJpdmlh bCBxdWVyaWVzIHdlIGNhbiBhbnN3ZXIgbm93LgorIFsgLXogIiRvdXRwdXRfb3B0aW9uX3ByZWZp eCIgICAgICAgIF0gfHwgZWNobyAkcHJlZml4CitAQCAtOTUwLDkgKzk1Miw5IEBACisgWyAteiAi JG91dHB1dF9vcHRpb25fdmVyc2lvbiIgICAgICAgXSB8fCBlY2hvICJAV1hfVkVSU0lPTkAiCisg WyAteiAiJG91dHB1dF9vcHRpb25fdmVyc2lvbl9mdWxsIiAgXSB8fCBlY2hvICJAV1hfU1VCVkVS U0lPTkAiCisgWyAteiAiJG91dHB1dF9vcHRpb25fYmFzZW5hbWUiICAgICAgXSB8fCBlY2hvICJA V1hfTElCUkFSWV9CQVNFTkFNRV9HVUlAIgorLVsgLXogIiRvdXRwdXRfb3B0aW9uX2NjIiAgICAg ICAgICAgIF0gfHwgZWNobyAiQENDQCIKKy1bIC16ICIkb3V0cHV0X29wdGlvbl9jeHgiICAgICAg ICAgICBdIHx8IGVjaG8gIkBDWFhAIgorLVsgLXogIiRvdXRwdXRfb3B0aW9uX2xkIiAgICAgICAg ICAgIF0gfHwgZWNobyAiQENYWEAgLW8iCisrWyAteiAiJG91dHB1dF9vcHRpb25fY2MiICAgICAg ICAgICAgXSB8fCBlY2hvICIke2JpbmRpcn0vZ2NjIgorK1sgLXogIiRvdXRwdXRfb3B0aW9uX2N4 eCIgICAgICAgICAgIF0gfHwgZWNobyAiJHtiaW5kaXJ9L2crKyIKKytbIC16ICIkb3V0cHV0X29w dGlvbl9sZCIgICAgICAgICAgICBdIHx8IGVjaG8gIiR7YmluZGlyfS9nKysgLW8iCisgWyAteiAi JGZsYWdfb3B0aW9uX3NlbGVjdGVkX2NvbmZpZyIgXSB8fCBlY2hvICIkdGhpc19jb25maWciCisg CisgZm9yIHEgaW4gJHF1ZXJ5X29wdGlvbnM7IGRvCmRpZmYgLS1naXQgYS9zcmNwa2dzL3d4V2lk Z2V0cy1ndGszL3RlbXBsYXRlIGIvc3JjcGtncy93eFdpZGdldHMtZ3RrMy90ZW1wbGF0ZQppbmRl eCBhZTUxMDVhODljMTQ1Li41YjI3NjUzNDc3ZmZiIDEwMDY0NAotLS0gYS9zcmNwa2dzL3d4V2lk Z2V0cy1ndGszL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3Mvd3hXaWRnZXRzLWd0azMvdGVtcGxhdGUK QEAgLTEsNTEgKzEsNjIgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ3d4V2lkZ2V0cy1ndGszJwog cGtnbmFtZT13eFdpZGdldHMtZ3RrMwotdmVyc2lvbj0zLjAuNS4xCi1yZXZpc2lvbj02Ci1idWls ZF9zdHlsZT1nbnUtY29uZmlndXJlCi1jb25maWd1cmVfYXJncz0iLS13aXRoLWd0az0zIC0tZW5h YmxlLXVuaWNvZGUgLS13aXRoLW9wZW5nbCAtLXdpdGgtc2RsCi0gLS13aXRoLWxpYm1zcGFjayAt LXdpdGgtbGlibm90aWZ5IC0tZW5hYmxlLW1lZGlhY3RybCIKK3ZlcnNpb249My4yLjIuMQorcmV2 aXNpb249MQorYnVpbGRfc3R5bGU9Y21ha2UKK2NtYWtlX2J1aWxkZGlyPSJidWlsZC1ndGszIgor Y29uZmlndXJlX2FyZ3M9Ii1Ed3hCVUlMRF9UT09MS0lUPWd0azMgLUR3eFVTRV9PUEVOR0w9T04g LUR3eFVTRV9MSUJNU1BBQ0s9T04KKyAtRHd4VVNFX0dUS1BSSU5UPU9OIC1Ed3hVU0VfVU5JQ09E RT1PTiAtRHd4VVNFX01FRElBQ1RSTD1PTgorIC1Ed3hVU0VfUFJJVkFURV9GT05UUz1PTiAtRHd4 VVNFX1JFR0VYPXN5cyAtRHd4VVNFX1pMSUI9c3lzIC1Ed3hVU0VfRVhQQVQ9c3lzCisgLUR3eFVT RV9MSUJKUEVHPXN5cyAtRHd4VVNFX0xJQlBORz1zeXMgLUR3eFVTRV9MSUJUSUZGPXN5cyAtRHd4 VVNFX0xJQkxaTUE9c3lzCisgLUR3eFVTRV9MSUJOT1RJRlk9c3lzIC1Ed3hVU0VfTElCU0RMPXN5 cyIKIGhvc3RtYWtlZGVwZW5kcz0icGtnLWNvbmZpZyIKIG1ha2VkZXBlbmRzPSJTREwyLWRldmVs IGdzdC1wbHVnaW5zLWJhc2UxLWRldmVsIGdzdHJlYW1lcjEtZGV2ZWwgZ3RrKzMtZGV2ZWwKLSBs aWJtc3BhY2stZGV2ZWwgbGlibm90aWZ5LWRldmVsIHRpZmYtZGV2ZWwgd2Via2l0Mmd0ay1kZXZl bCBnbHUtZGV2ZWwiCi1zaG9ydF9kZXNjPSJUaGUgd3hXaWRnZXRzIEdVSSB0b29sa2l0IGxpYnJh cnkgY29tcGlsZWQgd2l0aCBndGszIHN1cHBvcnQiCisgbGlibXNwYWNrLWRldmVsIGxpYm5vdGlm eS1kZXZlbCB0aWZmLWRldmVsIHdlYmtpdDJndGstZGV2ZWwgZ2x1LWRldmVsCisgZ3N0LXBsdWdp bnMtYmFkMS1kZXZlbCBsaWJzZWNyZXQtZGV2ZWwgcGNyZTItZGV2ZWwgbGlibHptYS1kZXZlbCBn c3BlbGwtZGV2ZWwKKyBsaWJjdXJsLWRldmVsIHpsaWItZGV2ZWwgZXhwYXQtZGV2ZWwgbGlicG5n LWRldmVsIgorc2hvcnRfZGVzYz0iQ3Jvc3MtcGxhdGZvcm0gR1VJIGxpYnJhcnkgKGJ1aWx0IHdp dGggR1RLKyAzLjApIgogbWFpbnRhaW5lcj0iSGVsbXV0IFBvemltc2tpIDxoZWxtdXRAcG96aW1z a2kuZXU+IgogbGljZW5zZT0iY3VzdG9tOnd4V2luZG93cyIKIGhvbWVwYWdlPSJodHRwczovL3d3 dy53eHdpZGdldHMub3JnIgogZGlzdGZpbGVzPSJodHRwczovL2dpdGh1Yi5jb20vd3hXaWRnZXRz L3d4V2lkZ2V0cy9yZWxlYXNlcy9kb3dubG9hZC92JHt2ZXJzaW9ufS93eFdpZGdldHMtJHt2ZXJz aW9ufS50YXIuYnoyIgotY2hlY2tzdW09NDQwZjZlNzNjZjVhZmIyY2JmOWFmMTBjZWM4ZGE2Y2Rk M2QzOTk4ZDUyNzU5OGE1M2RiODcwOTk1MjRhYzgwNworY2hlY2tzdW09ZGZmY2I2YmU3MTI5NmZm ZjRiN2Y4ODQwZWIxYjUxMDE3OGY1N2FhMmViMjM2YjIwZGE0MTE4MjAwOTI0MmMwMgorCitDWFhG TEFHUz0iLURfRklMRV9PRkZTRVRfQklUUz02NCAtRF9MQVJHRUZJTEVfU09VUkNFIgorCitwb3N0 X3BhdGNoKCkgeworCWlmIFsgIiR7WEJQU19UQVJHRVRfTElCQ30iID0gIm11c2wiIF07IHRoZW4K KwkJcGF0Y2ggLU5wMSA8ICIke0ZJTEVTRElSfS9tdXNsLWxvY2FsZS1sLnBhdGNoIgorCWZpCit9 CiAKIHBvc3RfaW5zdGFsbCgpIHsKLQlsb2NhbCBfY29uZmlnPSJndGszLXVuaWNvZGUtMy4wIgot CSMgcmVtb3ZlIGFsbCBvY2N1cnJlbmNlcyBvZiAkWEJQU19DUk9TU19UUklQTEVUIGluIHd4LWNv bmZpZzoKLQkjICAgLSBtYXJrIHRoaXMgYnVpbGQgYXMgbmF0aXZlIGJ1aWxkCisJbG9jYWwgX3Bh dGNoPSIke3ZlcnNpb24jKi4qLn0iCisJbG9jYWwgX21ham1pbj0iJHt2ZXJzaW9uJS4iJHtfcGF0 Y2h9In0iCisJbG9jYWwgX2NvbmZpZz0iZ3RrMy11bmljb2RlLSR7X21ham1pbn0iCisKIAlpZiBb ICIkQ1JPU1NfQlVJTEQiIF07IHRoZW4KLQkJcmVuYW1lICIke1hCUFNfQ1JPU1NfVFJJUExFVH0t IiAiIiBcCi0JCQkke0RFU1RESVJ9L3Vzci9saWIvd3gvY29uZmlnLyogXAotCQkJJHtERVNURElS fS91c3IvbGliL3d4L2luY2x1ZGUvKgotCQlyZW5hbWUgLS0gIi0ke1hCUFNfQ1JPU1NfVFJJUExF VH0iICIiICR7REVTVERJUn0vdXNyL2xpYi8qCisJCSMgUmVtb3ZlICRYQlBTX0NST1NTX1RSSVBM RVQgZnJvbSBjbWFrZSBoZWxwZXIuLi4KKwkJc2VkIC1pIC1lICJzQC91c3IvJHtYQlBTX0NST1NT X1RSSVBMRVR9QEBnIiBcCisJCQkke0RFU1RESVJ9L3Vzci9saWIvY21ha2Uvd3hXaWRnZXRzL3d4 V2lkZ2V0c1RhcmdldHMuY21ha2UKIAotCQlzZWQgLWkgLWUgInMvJHtYQlBTX0NST1NTX1RSSVBM RVR9LS8vZyIgXAotCQkJLWUgInMvLSR7WEJQU19DUk9TU19UUklQTEVUfS8vZyIgXAotCQkJLWUg InMsJFhCUFNfQ1JPU1NfQkFTRSwsZyIgXAorCQkjIC4uLmFuZCB0aGUgb3V0cHV0IG9mIHRoZSB3 eC1jb25maWcgdXRpbGl0eQorCQlzZWQgLWkgLWUgInNAL3Vzci8ke1hCUFNfQ1JPU1NfVFJJUExF VH1AQGciIFwKIAkJCSR7REVTVERJUn0vdXNyL2xpYi93eC9jb25maWcvJHtfY29uZmlnfQogCWZp CisKKwkjIFJlbW92ZSBnZW5lcmljIHd4LWNvbmZpZywgbGluayB0byB0b29sa2l0LXNwZWNpZmlj IHZlcnNpb24KIAlybSAtZiAke0RFU1RESVJ9L3Vzci9iaW4vd3gtY29uZmlnCiAJbG4gLXNmIC4u L2xpYi93eC9jb25maWcvJHtfY29uZmlnfSAke0RFU1RESVJ9L3Vzci9iaW4vd3gtY29uZmlnLWd0 azMKLQkjICAgLSBpZ25vcmUgLS1ob3N0IG9wdGlvbjsgYnJlYWtzIGNvbmZpZ3VyZSBzY3JpcHRz IHdoZW4KLQkjICAgICBjcm9zcyBjb21waWxpbmcgKGlzbuKAmXQgbmVjZXNzYXJ5IGluIG91ciBj YXNlIGFueXdheSkKLQlzZWQgLWkgLWUgJ3MsXmJpbmRpcj0uKixiaW5kaXI9JHtleGVjX3ByZWZp eH0vYmluLCcgXAotCQktZSAncy9pc19jcm9zcygpLiovaXNfY3Jvc3MoKSB7IGZhbHNlOyB9L2cn IFwKLQkJLWUgJy8tLVwqPVwqKS9pIC0taG9zdD1cKikgY29udGludWU7OycgXAotCQktZSAicywv dXNyL2xpYixcJHtleGVjX3ByZWZpeH0vbGliLGciIFwKLQkJJERFU1RESVIvdXNyL2xpYi93eC9j b25maWcvJHtfY29uZmlnfQorCisJIyBNYWtlIHN1cmUgdG8gaW5zdGFsbCB0aGUgYXV0b3Rvb2xz IG1hY3JvLCBDTWFrZSBkb2VzIG5vdAorCXZta2RpciB1c3Ivc2hhcmUvYWNsb2NhbAorCXZpbnN0 YWxsIHd4d2luLm00IDY0NCB1c3Ivc2hhcmUvYWNsb2NhbAogfQogCiB3eFdpZGdldHMtY29tbW9u X3BhY2thZ2UoKSB7CiAJc2hvcnRfZGVzYys9IiAtIGNvbW1vbiBmaWxlcyIKIAlwa2dfaW5zdGFs bCgpIHsKIAkJdm1vdmUgInVzci9saWIvbGlid3hfYmFzZXUqLnNvLioiCi0JCXZtb3ZlIHVzci9z aGFyZQogCQl2bGljZW5zZSBkb2NzL2xpY2VuZG9jLnR4dAogCQl2bGljZW5zZSBkb2NzL2xpY2Vu Y2UudHh0CiAJfQpAQCAtNTgsNiArNjksNyBAQCB3eFdpZGdldHMtY29tbW9uLWRldmVsX3BhY2th Z2UoKSB7CiAJCXZtb3ZlICJ1c3IvYmluL3d4cmMqIgogCQl2bW92ZSAidXNyL2xpYi9saWJ3eF9i YXNldSouc28iCiAJCXZtb3ZlIHVzci9pbmNsdWRlCisJCXZtb3ZlIHVzci9zaGFyZS9hY2xvY2Fs CiAJfQogfQogCkBAIC02OCw1ICs4MCw2IEBAIHd4V2lkZ2V0cy1ndGszLWRldmVsX3BhY2thZ2Uo KSB7CiAJCXZtb3ZlIHVzci9iaW4KIAkJdm1vdmUgInVzci9saWIvKi5zbyIKIAkJdm1vdmUgdXNy L2xpYi93eAorCQl2bW92ZSB1c3IvbGliL2NtYWtlCiAJfQogfQpkaWZmIC0tZ2l0IGEvc3JjcGtn cy93eFdpZGdldHMtZ3RrMy91cGRhdGUgYi9zcmNwa2dzL3d4V2lkZ2V0cy1ndGszL3VwZGF0ZQpp bmRleCBhYzRjNWYwNDBlYzQ0Li4wNTFiNjc2OTc1MmM2IDEwMDY0NAotLS0gYS9zcmNwa2dzL3d4 V2lkZ2V0cy1ndGszL3VwZGF0ZQorKysgYi9zcmNwa2dzL3d4V2lkZ2V0cy1ndGszL3VwZGF0ZQpA QCAtMSwzICsxIEBACi1zaXRlPSJodHRwczovL2dpdGh1Yi5jb20vd3hXaWRnZXRzL3d4V2lkZ2V0 cy9yZWxlYXNlcy9sYXRlc3QiCi0jIGRldmVsb3BtZW50IHZlcnNpb24KLWlnbm9yZT0nMy4xLion Citwa2duYW1lPXd4V2lkZ2V0cwoKRnJvbSAwNTM2ZGM2NzUwNjI4Y2VjOTU2ZTE5MjIzOWRiZDdk ODQxODBlMjRjIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiAiQW5kcmV3IEouIEhlc2Zv cmQiIDxhamhAc2lkZWJhbmQub3JnPgpEYXRlOiBNb24sIDI1IFNlcCAyMDIzIDA3OjUzOjE5IC0w NDAwClN1YmplY3Q6IFtQQVRDSCAwNi80M10gd3hQeXRob240OiB1cGRhdGUgdG8gNC4yLjEsIHJl bmFtZSB0byB3eFB5dGhvbgoKLS0tCiBzcmNwa2dzL3d4UHl0aG9uL2ZpbGVzL25vLXN0YWNrdHJh Y2UucGF0Y2ggICAgfCAxNSArKysKIHNyY3BrZ3Mve3d4UHl0aG9uNCA9PiB3eFB5dGhvbn0vdGVt cGxhdGUgICAgICB8IDMyICsrKystLS0KIHNyY3BrZ3Mvd3hQeXRob240ICAgICAgICAgICAgICAg ICAgICAgICAgICAgICB8ICAxICsKIC4uLmZpZy1ndGszLjAtdG8tYXZvaWQtY29uZmxpY3Qtd2l0 aC13eC5wYXRjaCB8IDUyIC0tLS0tLS0tLS0tCiBzcmNwa2dzL3d4UHl0aG9uNC9wYXRjaGVzL2Ny b3NzLnBhdGNoICAgICAgICAgfCAxMiAtLS0KIHNyY3BrZ3Mvd3hQeXRob240L3BhdGNoZXMvbnVs bHB0ci1jYXN0LnBhdGNoICB8IDExIC0tLQogc3JjcGtncy93eFB5dGhvbjQvcGF0Y2hlcy9weXRo b24tMy4xMS5wYXRjaCAgIHwgOTIgLS0tLS0tLS0tLS0tLS0tLS0tLQogc3JjcGtncy93eFB5dGhv bjQvcGF0Y2hlcy9zeW50YXgucGF0Y2ggICAgICAgIHwgMzIgLS0tLS0tLQogc3JjcGtncy93eFB5 dGhvbjQvdXBkYXRlICAgICAgICAgICAgICAgICAgICAgIHwgIDEgLQogOSBmaWxlcyBjaGFuZ2Vk LCAzNiBpbnNlcnRpb25zKCspLCAyMTIgZGVsZXRpb25zKC0pCiBjcmVhdGUgbW9kZSAxMDA2NDQg c3JjcGtncy93eFB5dGhvbi9maWxlcy9uby1zdGFja3RyYWNlLnBhdGNoCiByZW5hbWUgc3JjcGtn cy97d3hQeXRob240ID0+IHd4UHl0aG9ufS90ZW1wbGF0ZSAoNjglKQogY3JlYXRlIG1vZGUgMTIw MDAwIHNyY3BrZ3Mvd3hQeXRob240CiBkZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtncy93eFB5dGhv bjQvcGF0Y2hlcy8wMDAxLVN3aXRjaC10by13eC1jb25maWctZ3RrMy4wLXRvLWF2b2lkLWNvbmZs aWN0LXdpdGgtd3gucGF0Y2gKIGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3d4UHl0aG9uNC9w YXRjaGVzL2Nyb3NzLnBhdGNoCiBkZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtncy93eFB5dGhvbjQv cGF0Y2hlcy9udWxscHRyLWNhc3QucGF0Y2gKIGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3d4 UHl0aG9uNC9wYXRjaGVzL3B5dGhvbi0zLjExLnBhdGNoCiBkZWxldGUgbW9kZSAxMDA2NDQgc3Jj cGtncy93eFB5dGhvbjQvcGF0Y2hlcy9zeW50YXgucGF0Y2gKIGRlbGV0ZSBtb2RlIDEwMDY0NCBz cmNwa2dzL3d4UHl0aG9uNC91cGRhdGUKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3d4UHl0aG9uL2Zp bGVzL25vLXN0YWNrdHJhY2UucGF0Y2ggYi9zcmNwa2dzL3d4UHl0aG9uL2ZpbGVzL25vLXN0YWNr dHJhY2UucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMC4uZTY0 NTQ4YmVhOGMxNwotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3Mvd3hQeXRob24vZmlsZXMvbm8t c3RhY2t0cmFjZS5wYXRjaApAQCAtMCwwICsxLDE1IEBACitUYWtlbiBmcm9tIEFscGluZToKKwor aHR0cHM6Ly9naXQuYWxwaW5lbGludXgub3JnL2Fwb3J0cy9wbGFpbi9jb21tdW5pdHkvcHkzLXd4 cHl0aG9uL25vLXN0YWNrdHJhY2UucGF0Y2gKKworLS0tIGEvc2lwL2NwcC9zaXBfY29yZXd4QXBw VHJhaXRzLmNwcAorKysrIGIvc2lwL2NwcC9zaXBfY29yZXd4QXBwVHJhaXRzLmNwcAorQEAgLTQ3 MSw3ICs0NzEsNyBAQAorICAgICAgICAgICAgIFB5RXJyX0NsZWFyKCk7CisgCisgICAgICAgICAg ICAgUHlfQkVHSU5fQUxMT1dfVEhSRUFEUworLSAgICAgICAgICAgIHNpcFJlcyA9IG5ldyAgOjp3 eFN0cmluZygoc2lwU2VsZldhc0FyZyA/IHNpcENwcC0+IDo6d3hBcHBUcmFpdHM6OkdldEFzc2Vy dFN0YWNrVHJhY2UoKSA6IHNpcENwcC0+R2V0QXNzZXJ0U3RhY2tUcmFjZSgpKSk7CisrICAgICAg ICAgICAgc2lwUmVzID0gbmV3ICA6Ond4U3RyaW5nKCIiKTsKKyAgICAgICAgICAgICBQeV9FTkRf QUxMT1dfVEhSRUFEUworIAorICAgICAgICAgICAgIGlmIChQeUVycl9PY2N1cnJlZCgpKQpkaWZm IC0tZ2l0IGEvc3JjcGtncy93eFB5dGhvbjQvdGVtcGxhdGUgYi9zcmNwa2dzL3d4UHl0aG9uL3Rl bXBsYXRlCnNpbWlsYXJpdHkgaW5kZXggNjglCnJlbmFtZSBmcm9tIHNyY3BrZ3Mvd3hQeXRob240 L3RlbXBsYXRlCnJlbmFtZSB0byBzcmNwa2dzL3d4UHl0aG9uL3RlbXBsYXRlCmluZGV4IGUwZWRm NmZiOTQ1MmYuLjgxNWVlMDM4MmNiNTkgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3Mvd3hQeXRob240L3Rl bXBsYXRlCisrKyBiL3NyY3BrZ3Mvd3hQeXRob24vdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACi0j IFRlbXBsYXRlIGZpbGUgZm9yICd3eFB5dGhvbjQnCi1wa2duYW1lPXd4UHl0aG9uNAotdmVyc2lv bj00LjAuNwotcmV2aXNpb249NworIyBUZW1wbGF0ZSBmaWxlIGZvciAnd3hQeXRob24nCitwa2du YW1lPXd4UHl0aG9uCit2ZXJzaW9uPTQuMi4xCityZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1weXRo b24zLW1vZHVsZQogbWFrZV9idWlsZF9hcmdzPSItLXNraXAtYnVpbGQiCiBtYWtlX2luc3RhbGxf YXJncz0iLS1za2lwLWJ1aWxkIgpAQCAtOSwyMyArOSwyNSBAQCBob3N0bWFrZWRlcGVuZHM9InBr Zy1jb25maWcgcHl0aG9uMy1zZXR1cHRvb2xzIHB5dGhvbjMtcGF0aGxpYjIiCiBtYWtlZGVwZW5k cz0icHl0aG9uMy1kZXZlbCB3eFdpZGdldHMtZ3RrMy1kZXZlbCBTREwyLWRldmVsIHdlYmtpdDJn dGstZGV2ZWwKICBnc3QtcGx1Z2lucy1iYXNlMS1kZXZlbCIKIGRlcGVuZHM9InB5dGhvbjMgcHl0 aG9uMy1zaXggcHl0aG9uMy1udW1weSBweXRob24zLVBpbGxvdyIKLXNob3J0X2Rlc2M9Ild4V2lk Z2V0cyBHVUkgdG9vbGtpdCBsaWJyYXJ5IChQeXRob24zIEJpbmRpbmdzKSIKK3Nob3J0X2Rlc2M9 IlB5dGhvbiBiaW5kaW5ncyBmb3Igd3hXaWRnZXRzIgogbWFpbnRhaW5lcj0iT3JwaGFuZWQgPG9y cGhhbkB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9ImN1c3RvbTp3eFdpbmRvd3MiCiBob21lcGFn ZT0iaHR0cDovL3d3dy53eHB5dGhvbi5vcmcvIgogZGlzdGZpbGVzPSIke1BZUElfU0lURX0vdy93 eFB5dGhvbi93eFB5dGhvbi0ke3ZlcnNpb259LnRhci5neiIKLWNoZWNrc3VtPTNiZTYwOGJmZGVk ZTMwNjM2NzhjYzcwMzQ1Mzg1MGFiMGEwMThiODJiYWZkNWVlMDU3MzAyMjUwYjE4ZjAyMzMKK2No ZWNrc3VtPWU0OGRlMjExYTY2MDZiZjA3MmVjM2ZhNzc4NzcxZDZiNzQ2YzAwYjdmNGI5NzBlYjU4 NzI4ZGRmNTZkMTNkNWMKIAorZXhwb3J0IFdYUFlUSE9OX1JFTEVBU0U9eWVzCiBpZiBbICIkQ1JP U1NfQlVJTEQiIF07IHRoZW4KIAlDRkxBR1M9Ii1JJHtYQlBTX0NST1NTX0JBU0V9LyR7cHkzX2lu Y30gLUkke1hCUFNfQ1JPU1NfQkFTRX0vdXNyL2luY2x1ZGUiCisJZXhwb3J0IFdYX0NPTkZJRz0i JHtYQlBTX1dSQVBQRVJESVJ9L3d4LWNvbmZpZy1ndGszIgorZWxzZQorCWV4cG9ydCBXWF9DT05G SUc9d3gtY29uZmlnLWd0azMKIGZpCiAKLXByZV9wYXRjaCgpIHsKLQkjIG5lZWQgdG8gcGF0Y2gg Zm9yIFB5dGhvbiAzLjExLCBleHRyYWN0IHRoZW0gbm93LgotCWNkIGJpbgotCXNlZCAnL19fbmFt ZV9fLipfX21haW5fXy9pIHN5cy5leGl0KDApJyB3YWYtKiA+dG1wLXdhZgotCXB5dGhvbjMgdG1w LXdhZgotCWxuIC1zIC53YWYzLSogLndhZjMKK3Bvc3RfcGF0Y2goKSB7CisJaWYgWyAiJFhCUFNf VEFSR0VUX0xJQkMiID0gIm11c2wiIF07IHRoZW4KKwkJcGF0Y2ggLU5wMSA8ICIke0ZJTEVTRElS fS9uby1zdGFja3RyYWNlLnBhdGNoIgorCWZpCiB9CiAKIHByZV9idWlsZCgpIHsKQEAgLTQ4LDMg KzUwLDkgQEAgcHJlX2J1aWxkKCkgewogcG9zdF9pbnN0YWxsKCkgewogCXZsaWNlbnNlIExJQ0VO U0UudHh0CiB9CisKK3d4UHl0aG9uNF9wYWNrYWdlKCkgeworCWJ1aWxkX3N0eWxlPW1ldGEKKwlz aG9ydF9kZXNjKz0iIC0gdHJhbnNpdGlvbmFsIGR1bW15IHBhY2thZ2UiCisJZGVwZW5kcz0iJHtz b3VyY2Vwa2d9Pj0ke3ZlcnNpb259XyR7cmV2aXNpb259IgorfQpkaWZmIC0tZ2l0IGEvc3JjcGtn cy93eFB5dGhvbjQgYi9zcmNwa2dzL3d4UHl0aG9uNApuZXcgZmlsZSBtb2RlIDEyMDAwMAppbmRl eCAwMDAwMDAwMDAwMDAwLi5lMzk2ZDVhZTM3MGQ2Ci0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtn cy93eFB5dGhvbjQKQEAgLTAsMCArMSBAQAord3hQeXRob24KXCBObyBuZXdsaW5lIGF0IGVuZCBv ZiBmaWxlCmRpZmYgLS1naXQgYS9zcmNwa2dzL3d4UHl0aG9uNC9wYXRjaGVzLzAwMDEtU3dpdGNo LXRvLXd4LWNvbmZpZy1ndGszLjAtdG8tYXZvaWQtY29uZmxpY3Qtd2l0aC13eC5wYXRjaCBiL3Ny Y3BrZ3Mvd3hQeXRob240L3BhdGNoZXMvMDAwMS1Td2l0Y2gtdG8td3gtY29uZmlnLWd0azMuMC10 by1hdm9pZC1jb25mbGljdC13aXRoLXd4LnBhdGNoCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NApp bmRleCA3MmE2NzhkYTc4NTg5Li4wMDAwMDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3Mvd3hQeXRob240 L3BhdGNoZXMvMDAwMS1Td2l0Y2gtdG8td3gtY29uZmlnLWd0azMuMC10by1hdm9pZC1jb25mbGlj dC13aXRoLXd4LnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEsNTIgKzAsMCBAQAotRnJvbSBjZGRi ZTNiM2IyMzdiOGU2M2FiZDg5MjFmZGIyMDMxNGMyMGMyYzA4IE1vbiBTZXAgMTcgMDA6MDA6MDAg MjAwMQotRnJvbTogSmFzcGVyIENoYW4gPGphc3BlcmNoYW41MTVAZ21haWwuY29tPgotRGF0ZTog U2F0LCAyMiBTZXAgMjAxOCAyMDo1OToyOSAtMDcwMAotU3ViamVjdDogW1BBVENIXSBTd2l0Y2gg dG8gd3gtY29uZmlnLWd0azMgdG8gYXZvaWQgY29uZmxpY3Qgd2l0aAotIHd4V2lkZ2V0cy1ndGsy Ci0KLS0tLQotIGJ1aWxkLnB5IHwgMTAgKysrKystLS0tLQotIDEgZmlsZSBjaGFuZ2VkLCA1IGlu c2VydGlvbnMoKyksIDUgZGVsZXRpb25zKC0pCi0KLWRpZmYgLS1naXQgYnVpbGQucHkgYnVpbGQu cHkKLWluZGV4IDNjZDViODI4Li41N2RiZDM4NCAxMDA3NTUKLS0tLSBhL2J1aWxkLnB5Ci0rKysg Yi9idWlsZC5weQotQEAgLTQwMCw3ICs0MDAsNyBAQCBkZWYgbWFrZU9wdGlvblBhcnNlcigpOgot ICAgICAgICAgKCJtYWNfYXJjaCIsICAgICAgICgiIiwgICAgIkNvbW1hIHNlcGFyYXRlZCBsaXN0 IG9mIGFyY2hpdGVjdHVyZXMgdG8gYnVpbGQgb24gTWFjIikpLAotIAotICAgICAgICAgKCJ1c2Vf c3lzd3giLCAgICAgIChGYWxzZSwgIlRyeSB0byB1c2UgYW4gaW5zdGFsbGVkIHd4IHJhdGhlciB0 aGFuIGJ1aWxkaW5nIHRoZSAiCi0tICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAi b25lIGluIHRoaXMgc291cmNlIHRyZWUuICBUaGUgd3gtY29uZmlnIGluIHtwcmVmaXh9L2JpbiAi Ci0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAib25lIGluIHRoaXMgc291cmNl IHRyZWUuICBUaGUgd3gtY29uZmlnLWd0azMgaW4ge3ByZWZpeH0vYmluICIKLSAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICJvciB0aGUgZmlyc3QgZm91bmQgb24gdGhlIFBBVEgg ZGV0ZXJtaW5lcyB3aGljaCB3eCBpcyAiCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAidXNlZC4gIEltcGxpZXMgLS1ub19tYWdpYy4iKSksCi0gICAgICAgICAoImZvcmNlX2Nv bmZpZyIsICAgKEZhbHNlLCAiUnVuIGNvbmZpZ3VyZSB3aGVuIGJ1aWxkaW5nIGV2ZW4gaWYgdGhl IHNjcmlwdCAiCi1AQCAtMTI3MSw3ICsxMjcxLDcgQEAgZGVmIGNtZF9idWlsZF93eChvcHRpb25z LCBhcmdzKToKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9zLnBhdGguam9pbih3eERp cigpLCAnY29uZmlndXJlJyksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcy5wYXRo LmpvaW4od3hEaXIoKSwgJ3NldHVwLmguaW4nKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIG9zLnBhdGguam9pbih3eERpcigpLCAndmVyc2lvbi1zY3JpcHQuaW4nKSwKLS0gICAgICAg ICAgICAgICAgICAgICAgICAgICAgIG9zLnBhdGguam9pbih3eERpcigpLCAnd3gtY29uZmlnLmlu JyksCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcy5wYXRoLmpvaW4od3hEaXIoKSwg J3d4LWNvbmZpZy1ndGszLmluJyksCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdCi0g ICAgICAgICAgICAgZm9yIGRlcCBpbiBkZXBlbmRlbmNpZXM6Ci0gICAgICAgICAgICAgICAgIGlm IG5ld2VyKGRlcCwgb3MucGF0aC5qb2luKEJVSUxEX0RJUiwgIk1ha2VmaWxlIikpOgotQEAgLTE0 MjQsMTMgKzE0MjQsMTMgQEAgZGVmIGNtZF9idWlsZF9weShvcHRpb25zLCBhcmdzKToKLSAgICAg ICAgIG9zLmVudmlyb25bJ1dYUFlUSE9OX1JFTEVBU0UnXSA9ICd5ZXMnCi0gCi0gICAgIGlmIG5v dCBpc1dpbmRvd3M6Ci0tICAgICAgICBXWF9DT05GSUcgPSBwb3NpeGpvaW4oQlVJTERfRElSLCAn d3gtY29uZmlnJykKLSsgICAgICAgIFdYX0NPTkZJRyA9IHBvc2l4am9pbihCVUlMRF9ESVIsICd3 eC1jb25maWctZ3RrMycpCi0gICAgICAgICBpZiBvcHRpb25zLnVzZV9zeXN3eDoKLS0gICAgICAg ICAgICB3eGNmZyA9IHBvc2l4am9pbihvcHRpb25zLnByZWZpeCwgJ2JpbicsICd3eC1jb25maWcn KQotKyAgICAgICAgICAgIHd4Y2ZnID0gcG9zaXhqb2luKG9wdGlvbnMucHJlZml4LCAnYmluJywg J3d4LWNvbmZpZy1ndGszJykKLSAgICAgICAgICAgICBpZiBvcHRpb25zLnByZWZpeCBhbmQgb3Mu cGF0aC5leGlzdHMod3hjZmcpOgotICAgICAgICAgICAgICAgICBXWF9DT05GSUcgPSB3eGNmZwot ICAgICAgICAgICAgIGVsc2U6Ci0tICAgICAgICAgICAgICAgIFdYX0NPTkZJRyA9ICd3eC1jb25m aWcnICMgaG9wZSBpdCBpcyBvbiB0aGUgUEFUSAotKyAgICAgICAgICAgICAgICBXWF9DT05GSUcg PSAnd3gtY29uZmlnLWd0azMnICMgaG9wZSBpdCBpcyBvbiB0aGUgUEFUSAotIAotIAotICAgICB3 YWZCdWlsZEJhc2UgPSB3YWZCdWlsZERpciA9IGdldFdhZkJ1aWxkQmFzZSgpCi0tLSAKLTIuMTku MAotCmRpZmYgLS1naXQgYS9zcmNwa2dzL3d4UHl0aG9uNC9wYXRjaGVzL2Nyb3NzLnBhdGNoIGIv c3JjcGtncy93eFB5dGhvbjQvcGF0Y2hlcy9jcm9zcy5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAx MDA2NDQKaW5kZXggNGYzNDNkZTIwMWNiMC4uMDAwMDAwMDAwMDAwMAotLS0gYS9zcmNwa2dzL3d4 UHl0aG9uNC9wYXRjaGVzL2Nyb3NzLnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEsMTIgKzAsMCBA QAotSW5kZXg6IHd4UHl0aG9uLTQuMC43L2J1aWxkLnB5Ci09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLS0gd3hQeXRo b24tNC4wLjcub3JpZy9idWlsZC5weQotKysrIHd4UHl0aG9uLTQuMC43L2J1aWxkLnB5Ci1AQCAt MTY5LDcgKzE2OSw2IEBAIGRlZiBtYWluKGFyZ3MpOgotICAgICBzZXRQeXRob25WZXJzaW9uKGFy Z3MpCi0gICAgIHNldERldk1vZGVPcHRpb25zKGFyZ3MpCi0gCi0tICAgIG9zLmVudmlyb25bJ1BZ VEhPTlBBVEgnXSA9IHBob2VuaXhEaXIoKQotICAgICBvcy5lbnZpcm9uWydQWVRIT05VTkJVRkZF UkVEJ10gPSAneWVzJwotICAgICBvcy5lbnZpcm9uWydXWFdJTiddID0gd3hEaXIoKQotIApkaWZm IC0tZ2l0IGEvc3JjcGtncy93eFB5dGhvbjQvcGF0Y2hlcy9udWxscHRyLWNhc3QucGF0Y2ggYi9z cmNwa2dzL3d4UHl0aG9uNC9wYXRjaGVzL251bGxwdHItY2FzdC5wYXRjaApkZWxldGVkIGZpbGUg bW9kZSAxMDA2NDQKaW5kZXggZDkzNTFjNzE0YjRmYy4uMDAwMDAwMDAwMDAwMAotLS0gYS9zcmNw a2dzL3d4UHl0aG9uNC9wYXRjaGVzL251bGxwdHItY2FzdC5wYXRjaAorKysgL2Rldi9udWxsCkBA IC0xLDExICswLDAgQEAKLS0tLSBhL3NpcC9jcHAvc2lwX3Byb3Bncmlkd3hQR1Byb3BBcmdDbHMu Y3BwCi0rKysgYi9zaXAvY3BwL3NpcF9wcm9wZ3JpZHd4UEdQcm9wQXJnQ2xzLmNwcAotQEAgLTMx Nyw3ICszMTcsNyBAQCBzdGF0aWMgaW50IGNvbnZlcnRUb193eFBHUHJvcEFyZ0NscyhQeU9iCi0g ICAgICAgICAgICAgcmV0dXJuIHNpcEdldFN0YXRlKHNpcFRyYW5zZmVyT2JqKTsKLSAgICAgICAg IH0KLSAgICAgICAgIGVsc2UgaWYgKHNpcFB5ID09IFB5X05vbmUpIHsKLS0gICAgICAgICAgICAq c2lwQ3BwUHRyID0gbmV3IHd4UEdQcm9wQXJnQ2xzKHJlaW50ZXJwcmV0X2Nhc3Q8IHd4UEdQcm9w ZXJ0eSAqID4oTlVMTCkpOwotKyAgICAgICAgICAgICpzaXBDcHBQdHIgPSBuZXcgd3hQR1Byb3BB cmdDbHMoc3RhdGljX2Nhc3Q8IHd4UEdQcm9wZXJ0eSAqID4oTlVMTCkpOwotICAgICAgICAgICAg IHJldHVybiBzaXBHZXRTdGF0ZShzaXBUcmFuc2Zlck9iaik7Ci0gICAgICAgICB9Ci0gICAgICAg ICBlbHNlIHsKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mvd3hQeXRob240L3BhdGNoZXMvcHl0aG9uLTMu MTEucGF0Y2ggYi9zcmNwa2dzL3d4UHl0aG9uNC9wYXRjaGVzL3B5dGhvbi0zLjExLnBhdGNoCmRl bGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAxNTQ5NmJkZWNiY2EwLi4wMDAwMDAwMDAwMDAw Ci0tLSBhL3NyY3BrZ3Mvd3hQeXRob240L3BhdGNoZXMvcHl0aG9uLTMuMTEucGF0Y2gKKysrIC9k ZXYvbnVsbApAQCAtMSw5MiArMCwwIEBACi1kaWZmIC11ciB3eFB5dGhvbi00LjAuNy5vcmlnL2Jp bi8ud2FmMy93YWZsaWIvQ29uZmlnU2V0LnB5IHd4UHl0aG9uLTQuMC43L2Jpbi8ud2FmMy93YWZs aWIvQ29uZmlnU2V0LnB5Ci0tLS0gd3hQeXRob24tNC4wLjcub3JpZy9iaW4vLndhZjMvd2FmbGli L0NvbmZpZ1NldC5weQotKysrIHd4UHl0aG9uLTQuMC43L2Jpbi8ud2FmMy93YWZsaWIvQ29uZmln U2V0LnB5Ci1AQCAtMTQ2LDcgKzE0Niw3IEBACi0gCQlVdGlscy53cml0ZWYoZmlsZW5hbWUsJycu am9pbihidWYpKQotIAlkZWYgbG9hZChzZWxmLGZpbGVuYW1lKToKLSAJCXRibD1zZWxmLnRhYmxl Ci0tCQljb2RlPVV0aWxzLnJlYWRmKGZpbGVuYW1lLG09J3JVJykKLSsJCWNvZGU9VXRpbHMucmVh ZGYoZmlsZW5hbWUsbT0ncicpCi0gCQlmb3IgbSBpbiByZV9pbXAuZmluZGl0ZXIoY29kZSk6Ci0g CQkJZz1tLmdyb3VwCi0gCQkJdGJsW2coMildPWV2YWwoZygzKSkKLWRpZmYgLXVyIHd4UHl0aG9u LTQuMC43Lm9yaWcvYmluLy53YWYzL3dhZmxpYi9Db250ZXh0LnB5IHd4UHl0aG9uLTQuMC43L2Jp bi8ud2FmMy93YWZsaWIvQ29udGV4dC5weQotLS0tIHd4UHl0aG9uLTQuMC43Lm9yaWcvYmluLy53 YWYzL3dhZmxpYi9Db250ZXh0LnB5Ci0rKysgd3hQeXRob24tNC4wLjcvYmluLy53YWYzL3dhZmxp Yi9Db250ZXh0LnB5Ci1AQCAtMTA2LDcgKzEwNiw3IEBACi0gCQkJCWNhY2hlW25vZGVdPVRydWUK LSAJCQkJc2VsZi5wcmVfcmVjdXJzZShub2RlKQotIAkJCQl0cnk6Ci0tCQkJCQlmdW5jdGlvbl9j b2RlPW5vZGUucmVhZCgnclUnLGVuY29kaW5nKQotKwkJCQkJZnVuY3Rpb25fY29kZT1ub2RlLnJl YWQoJ3InLGVuY29kaW5nKQotIAkJCQkJZXhlYyhjb21waWxlKGZ1bmN0aW9uX2NvZGUsbm9kZS5h YnNwYXRoKCksJ2V4ZWMnKSxzZWxmLmV4ZWNfZGljdCkKLSAJCQkJZmluYWxseToKLSAJCQkJCXNl bGYucG9zdF9yZWN1cnNlKG5vZGUpCi1AQCAtMzQ2LDcgKzM0Niw3IEBACi0gCQlwYXNzCi0gCW1v ZHVsZT1pbXAubmV3X21vZHVsZShXU0NSSVBUX0ZJTEUpCi0gCXRyeToKLS0JCWNvZGU9VXRpbHMu cmVhZGYocGF0aCxtPSdyVScsZW5jb2Rpbmc9ZW5jb2RpbmcpCi0rCQljb2RlPVV0aWxzLnJlYWRm KHBhdGgsbT0ncicsZW5jb2Rpbmc9ZW5jb2RpbmcpCi0gCWV4Y2VwdCBFbnZpcm9ubWVudEVycm9y OgotIAkJcmFpc2UgRXJyb3JzLldhZkVycm9yKCdDb3VsZCBub3QgcmVhZCB0aGUgZmlsZSAlcicl cGF0aCkKLSAJbW9kdWxlX2Rpcj1vcy5wYXRoLmRpcm5hbWUocGF0aCkKLWRpZmYgLXVyIHd4UHl0 aG9uLTQuMC43Lm9yaWcvYmluLy53YWYzL3dhZmxpYi9Ub29scy9weXRob24ucHkgd3hQeXRob24t NC4wLjcvYmluLy53YWYzL3dhZmxpYi9Ub29scy9weXRob24ucHkKLS0tLSB3eFB5dGhvbi00LjAu Ny5vcmlnL2Jpbi8ud2FmMy93YWZsaWIvVG9vbHMvcHl0aG9uLnB5Ci0rKysgd3hQeXRob24tNC4w LjcvYmluLy53YWYzL3dhZmxpYi9Ub29scy9weXRob24ucHkKLUBAIC0yMDcsNyArMjA3LDcgQEAK LSAJeD0nTUFDT1NYX0RFUExPWU1FTlRfVEFSR0VUJwotIAlpZiBkY3RbeF06Ci0gCQllbnZbeF09 Y29uZi5lbnZpcm9uW3hdPWRjdFt4XQotLQllbnYucHlleHRfUEFUVEVSTj0nJXMnK2RjdFsnU08n XQotKwllbnYucHlleHRfUEFUVEVSTj0nJXMuc28nCi0gCW51bT0nLicuam9pbihlbnYuUFlUSE9O X1ZFUlNJT04uc3BsaXQoJy4nKVs6Ml0pCi0gCWNvbmYuZmluZF9wcm9ncmFtKFsnJy5qb2luKHB5 YmluKSsnLWNvbmZpZycsJ3B5dGhvbiVzLWNvbmZpZyclbnVtLCdweXRob24tY29uZmlnLSVzJyVu dW0sJ3B5dGhvbiVzbS1jb25maWcnJW51bV0sdmFyPSdQWVRIT05fQ09ORklHJyxtc2c9InB5dGhv bi1jb25maWciLG1hbmRhdG9yeT1GYWxzZSkKLSAJaWYgZW52LlBZVEhPTl9DT05GSUc6Ci1kaWZm IC11ciB3eFB5dGhvbi00LjAuNy5vcmlnL3NpcC9zaXBsaWIvc2lwLmggd3hQeXRob24tNC4wLjcv c2lwL3NpcGxpYi9zaXAuaAotLS0tIHd4UHl0aG9uLTQuMC43Lm9yaWcvc2lwL3NpcGxpYi9zaXAu aAotKysrIHd4UHl0aG9uLTQuMC43L3NpcC9zaXBsaWIvc2lwLmgKLUBAIC0xNzk0LDcgKzE3OTQs NyBAQAotICAgICBpbnQgKCphcGlfZ2V0X3RpbWUpKFB5T2JqZWN0ICosIHNpcFRpbWVEZWYgKik7 Ci0gICAgIFB5T2JqZWN0ICooKmFwaV9mcm9tX3RpbWUpKGNvbnN0IHNpcFRpbWVEZWYgKik7Ci0g ICAgIGludCAoKmFwaV9pc191c2VyX3R5cGUpKGNvbnN0IHNpcFdyYXBwZXJUeXBlICopOwotLSAg ICBzdHJ1Y3QgX2ZyYW1lICooKmFwaV9nZXRfZnJhbWUpKGludCk7Ci0rICAgIFB5RnJhbWVPYmpl Y3QgKigqYXBpX2dldF9mcmFtZSkoaW50KTsKLSAgICAgaW50ICgqYXBpX2NoZWNrX3BsdWdpbl9m b3JfdHlwZSkoY29uc3Qgc2lwVHlwZURlZiAqLCBjb25zdCBjaGFyICopOwotICAgICBQeU9iamVj dCAqKCphcGlfdW5pY29kZV9uZXcpKFNJUF9TU0laRV9ULCB1bnNpZ25lZCwgaW50ICosIHZvaWQg KiopOwotICAgICB2b2lkICgqYXBpX3VuaWNvZGVfd3JpdGUpKGludCwgdm9pZCAqLCBpbnQsIHVu c2lnbmVkKTsKLWRpZmYgLXVyIHd4UHl0aG9uLTQuMC43Lm9yaWcvc2lwL3NpcGxpYi9zaXBsaWIu YyB3eFB5dGhvbi00LjAuNy9zaXAvc2lwbGliL3NpcGxpYi5jCi0tLS0gd3hQeXRob24tNC4wLjcu b3JpZy9zaXAvc2lwbGliL3NpcGxpYi5jCi0rKysgd3hQeXRob24tNC4wLjcvc2lwL3NpcGxpYi9z aXBsaWIuYwotQEAgLTQzOSw3ICs0MzksNyBAQAotIHN0YXRpYyBpbnQgc2lwX2FwaV9nZXRfdGlt ZShQeU9iamVjdCAqb2JqLCBzaXBUaW1lRGVmICp0aW1lKTsKLSBzdGF0aWMgUHlPYmplY3QgKnNp cF9hcGlfZnJvbV90aW1lKGNvbnN0IHNpcFRpbWVEZWYgKnRpbWUpOwotIHN0YXRpYyBpbnQgc2lw X2FwaV9pc191c2VyX3R5cGUoY29uc3Qgc2lwV3JhcHBlclR5cGUgKnd0KTsKLS1zdGF0aWMgc3Ry dWN0IF9mcmFtZSAqc2lwX2FwaV9nZXRfZnJhbWUoaW50KTsKLStzdGF0aWMgUHlGcmFtZU9iamVj dCAqc2lwX2FwaV9nZXRfZnJhbWUoaW50KTsKLSBzdGF0aWMgaW50IHNpcF9hcGlfY2hlY2tfcGx1 Z2luX2Zvcl90eXBlKGNvbnN0IHNpcFR5cGVEZWYgKnRkLAotICAgICAgICAgY29uc3QgY2hhciAq bmFtZSk7Ci0gc3RhdGljIFB5T2JqZWN0ICpzaXBfYXBpX3VuaWNvZGVfbmV3KFNJUF9TU0laRV9U IGxlbiwgdW5zaWduZWQgbWF4Y2hhciwKLUBAIC0xMzY4OCwxNSArMTM2ODgsMTkgQEAKLSAvKgot ICAqIFJldHVybiBhIGZyYW1lIGZyb20gdGhlIGV4ZWN1dGlvbiBzdGFjay4KLSAgKi8KLS1zdGF0 aWMgc3RydWN0IF9mcmFtZSAqc2lwX2FwaV9nZXRfZnJhbWUoaW50IGRlcHRoKQotK3N0YXRpYyBQ eUZyYW1lT2JqZWN0ICpzaXBfYXBpX2dldF9mcmFtZShpbnQgZGVwdGgpCi0gewotLSAgICBzdHJ1 Y3QgX2ZyYW1lICpmcmFtZSA9IFB5RXZhbF9HZXRGcmFtZSgpOwotKyAgICBQeUZyYW1lT2JqZWN0 ICpmcmFtZSA9IFB5RXZhbF9HZXRGcmFtZSgpOwotKyAgICBQeV9YSU5DUkVGKGZyYW1lKTsKLSAK LSAgICAgd2hpbGUgKGZyYW1lICE9IE5VTEwgJiYgZGVwdGggPiAwKQotICAgICB7Ci0tICAgICAg ICBmcmFtZSA9IGZyYW1lLT5mX2JhY2s7Ci0rICAgICAgICBQeUZyYW1lT2JqZWN0ICpvZnJhbWUg PSBmcmFtZTsKLSsgICAgICAgIGZyYW1lID0gUHlGcmFtZV9HZXRCYWNrKGZyYW1lKTsKLSsgICAg ICAgIFB5X0RFQ1JFRihvZnJhbWUpOwotICAgICAgICAgLS1kZXB0aDsKLSAgICAgfQotKyAgICBQ eV9YREVDUkVGKGZyYW1lKTsKLSAKLSAgICAgcmV0dXJuIGZyYW1lOwotIH0KZGlmZiAtLWdpdCBh L3NyY3BrZ3Mvd3hQeXRob240L3BhdGNoZXMvc3ludGF4LnBhdGNoIGIvc3JjcGtncy93eFB5dGhv bjQvcGF0Y2hlcy9zeW50YXgucGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDg2 MjkzNGY5OTYxNTkuLjAwMDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtncy93eFB5dGhvbjQvcGF0Y2hl cy9zeW50YXgucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSwzMiArMCwwIEBACi1JbmRleDogd3hQ eXRob24tNC4wLjcvd3gvbGliL21hc2tlZC9tYXNrZWRlZGl0LnB5Ci09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLS0g d3hQeXRob24tNC4wLjcub3JpZy93eC9saWIvbWFza2VkL21hc2tlZGVkaXQucHkKLSsrKyB3eFB5 dGhvbi00LjAuNy93eC9saWIvbWFza2VkL21hc2tlZGVkaXQucHkKLUBAIC0yNjQ1LDcgKzI2NDUs NyBAQCBjbGFzcyBNYXNrZWRFZGl0TWl4aW46Ci0gICAgICAgICAgICAgICAgICAgICAgICAgcmFp c2UgdmUKLSAgICAgICAgICAgICAgICAgICAgIGVsaWYgcmVwbGFjZV90byA+IGVuZDoKLSAjIyMj ICAgICAgICAgICAgICAgICAgICAgICAgZGJnKGluZGVudD0wKQotLSAgICAgICAgICAgICAgICAg ICAgICAgIHZlID0gVmFsdWVFcnJvcignIiVzIiB3aWxsIG5vdCBmaXQgaW50byBmaWVsZCAlZCBv ZiBjb250cm9sICIlcyInIChjaG9pY2UsIGluZGV4LCBzZWxmLm5hbWUpKQotKyAgICAgICAgICAg ICAgICAgICAgICAgIHZlID0gVmFsdWVFcnJvcignIiVzIiB3aWxsIG5vdCBmaXQgaW50byBmaWVs ZCAlZCBvZiBjb250cm9sICIlcyInICUgKGNob2ljZSwgaW5kZXgsIHNlbGYubmFtZSkpCi0gICAg ICAgICAgICAgICAgICAgICAgICAgdmUudmFsdWUgPSBjaG9pY2UKLSAgICAgICAgICAgICAgICAg ICAgICAgICB2ZS5pbmRleCA9IGluZGV4Ci0gICAgICAgICAgICAgICAgICAgICAgICAgcmFpc2Ug dmUKLUluZGV4OiB3eFB5dGhvbi00LjAuNy93eC9saWIvcGxvdC9wbG90Y2FudmFzLnB5Ci09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09Ci0tLS0gd3hQeXRob24tNC4wLjcub3JpZy93eC9saWIvcGxvdC9wbG90Y2FudmFzLnB5 Ci0rKysgd3hQeXRob24tNC4wLjcvd3gvbGliL3Bsb3QvcGxvdGNhbnZhcy5weQotQEAgLTE4NTIs MTIgKzE4NTIsMTIgQEAgY2xhc3MgUGxvdENhbnZhcyh3eC5QYW5lbCk6Ci0gICAgICAgICAjIEdl dCB0aWNrcyBhbmQgdGV4dEV4dGVudHMgZm9yIGF4aXMgaWYgcmVxdWlyZWQKLSAgICAgICAgIHh0 aWNrcyA9IHl0aWNrcyA9IE5vbmUKLSAgICAgICAgIHhUZXh0RXh0ZW50ID0geVRleHRFeHRlbnQg PSAoMCwgMCkgICMgTm8gdGV4dCBmb3IgdGlja3MKLS0gICAgICAgIGlmIHNlbGYuX3hTcGVjIGlz IG5vdCAnbm9uZSc6Ci0rICAgICAgICBpZiBzZWxmLl94U3BlYyAhPSAnbm9uZSc6Ci0gICAgICAg ICAgICAgeHRpY2tzID0gc2VsZi5feHRpY2tzKHhBeGlzWzBdLCB4QXhpc1sxXSkKLSAgICAgICAg ICAgICAjIHcgaCBvZiB4IGF4aXMgdGV4dCBsYXN0IG51bWJlciBvbiBheGlzCi0gICAgICAgICAg ICAgeFRleHRFeHRlbnQgPSBkYy5HZXRUZXh0RXh0ZW50KHh0aWNrc1stMV1bMV0pCi0gCi0tICAg ICAgICBpZiBzZWxmLl95U3BlYyBpcyBub3QgJ25vbmUnOgotKyAgICAgICAgaWYgc2VsZi5feVNw ZWMgIT0gJ25vbmUnOgotICAgICAgICAgICAgIHl0aWNrcyA9IHNlbGYuX3l0aWNrcyh5QXhpc1sw XSwgeUF4aXNbMV0pCi0gICAgICAgICAgICAgaWYgc2VsZi5sb2dTY2FsZVsxXToKLSAgICAgICAg ICAgICAgICAgIyBtYWtlIHN1cmUgd2UgaGF2ZSBlbm91Z2ggcm9vbSB0byBkaXNwbGF5IFNJIG5v dGF0aW9uLgpkaWZmIC0tZ2l0IGEvc3JjcGtncy93eFB5dGhvbjQvdXBkYXRlIGIvc3JjcGtncy93 eFB5dGhvbjQvdXBkYXRlCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAxNTI3MzQyMjUw ZjY2Li4wMDAwMDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3Mvd3hQeXRob240L3VwZGF0ZQorKysgL2Rl di9udWxsCkBAIC0xICswLDAgQEAKLXBrZ25hbWU9d3hQeXRob24KCkZyb20gM2YxOTA2ZjJjYzA0 ZDBmNjg5NmIxZjhiMTlhYWU5ZDNhZjFmNWY0NCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJv bTogY2xhc3NhYmJ5YW1wIDx2b2lkQHBsYWNldmlvbGV0dGUubmV0PgpEYXRlOiBNb24sIDI1IFNl cCAyMDIzIDEzOjQ2OjU1IC0wNDAwClN1YmplY3Q6IFtQQVRDSCAwNy80M10gZGlzcGNhbEdVSTog cmVwbGFjZSB3aXRoIERpc3BsYXlDQUwgMy45LjExCgotLS0KIHNyY3BrZ3MvRGlzcGxheUNBTC90 ZW1wbGF0ZSAgICAgICAgICAgIHwgMjYgKysrKysrKysrKysrKysrKysrKysKIHNyY3BrZ3MvZGlz cGNhbEdVSSAgICAgICAgICAgICAgICAgICAgIHwgIDEgKwogc3JjcGtncy9kaXNwY2FsR1VJL3Bh dGNoZXMvZXJyb3IucGF0Y2ggfCAzMyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogc3JjcGtn cy9kaXNwY2FsR1VJL3RlbXBsYXRlICAgICAgICAgICAgfCAyNSAtLS0tLS0tLS0tLS0tLS0tLS0t CiBzcmNwa2dzL2Rpc3BjYWxHVUkvdXBkYXRlICAgICAgICAgICAgICB8ICAxIC0KIDUgZmlsZXMg Y2hhbmdlZCwgMjcgaW5zZXJ0aW9ucygrKSwgNTkgZGVsZXRpb25zKC0pCiBjcmVhdGUgbW9kZSAx MDA2NDQgc3JjcGtncy9EaXNwbGF5Q0FML3RlbXBsYXRlCiBjcmVhdGUgbW9kZSAxMjAwMDAgc3Jj cGtncy9kaXNwY2FsR1VJCiBkZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtncy9kaXNwY2FsR1VJL3Bh dGNoZXMvZXJyb3IucGF0Y2gKIGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL2Rpc3BjYWxHVUkv dGVtcGxhdGUKIGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL2Rpc3BjYWxHVUkvdXBkYXRlCgpk aWZmIC0tZ2l0IGEvc3JjcGtncy9EaXNwbGF5Q0FML3RlbXBsYXRlIGIvc3JjcGtncy9EaXNwbGF5 Q0FML3RlbXBsYXRlCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAuLjc4 NDY3NGM1MjYzYWUKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL0Rpc3BsYXlDQUwvdGVtcGxh dGUKQEAgLTAsMCArMSwyNiBAQAorIyBUZW1wbGF0ZSBmaWxlIGZvciAnRGlzcGxheUNBTCcKK3Br Z25hbWU9RGlzcGxheUNBTAordmVyc2lvbj0zLjkuMTEKK3JldmlzaW9uPTEKK2J1aWxkX3N0eWxl PXB5dGhvbjMtbW9kdWxlCitob3N0bWFrZWRlcGVuZHM9InB5dGhvbjMiCittYWtlZGVwZW5kcz0i cHl0aG9uMy1kZXZlbCBsaWJYeGY4NnZtLWRldmVsIGxpYlhpbmVyYW1hLWRldmVsIGxpYlhyYW5k ci1kZXZlbCIKK2RlcGVuZHM9InB5dGhvbjMtZGJ1cyBweXRob24zLW51bXB5IHB5dGhvbjMtZGlz dHJvIHB5dGhvbjMtc2VuZDJ0cmFzaCB3eFB5dGhvbgorIGFyZ3lsbGNtcyIKK3Nob3J0X2Rlc2M9 IkRpc3BsYXkgQ2FsaWJyYXRpb24gYW5kIENoYXJhY3Rlcml6YXRpb24iCittYWludGFpbmVyPSJs ZW1taSA8bGVtbWlAbmVyZDJuZXJkLm9yZz4iCitsaWNlbnNlPSJHUEwtMy4wLW9yLWxhdGVyIgor aG9tZXBhZ2U9Imh0dHBzOi8vZ2l0aHViLmNvbS9lb3lpbG1hei9kaXNwbGF5Y2FsLXB5MyIKK2Rp c3RmaWxlcz0iaHR0cHM6Ly9naXRodWIuY29tL2VveWlsbWF6L2Rpc3BsYXljYWwtcHkzL2FyY2hp dmUvcmVmcy90YWdzLyR7dmVyc2lvbn0udGFyLmd6IgorY2hlY2tzdW09Nzc2OWQxOTU1MWMyMjhk Nzk3ZmQ5OGNiMjQ2OTczMGNlZTg0ZmYyN2JkMGJmNWQwNDYzZTE5MTc1MzkyMWE1ZQorCitwcmVf Y29uZmlndXJlKCkgeworCXZzZWQgLWkgbWlzYy9kaXNwbGF5Y2FsLXZybWwtdG8teDNkLWNvbnZl cnRlci5kZXNrdG9wIFwKKwkJLWUgJ3N8TWltZVR5cGU9bW9kZWwvdnJtbDt4LXdvcmxkL3gtdnJt bDt8TWltZVR5cGU9bW9kZWwvdnJtbDt8JworfQorCitkaXNwY2FsR1VJX3BhY2thZ2UoKSB7CisJ YnVpbGRfc3R5bGU9bWV0YQorCXNob3J0X2Rlc2MrPSIgKHRyYW5zaXRpb25hbCBkdW1teSBwYWNr YWdlKSIKKwlkZXBlbmRzPSIke3NvdXJjZXBrZ30+PSR7dmVyc2lvbn1fJHtyZXZpc2lvbn0iCit9 CmRpZmYgLS1naXQgYS9zcmNwa2dzL2Rpc3BjYWxHVUkgYi9zcmNwa2dzL2Rpc3BjYWxHVUkKbmV3 IGZpbGUgbW9kZSAxMjAwMDAKaW5kZXggMDAwMDAwMDAwMDAwMC4uN2IyYWU3ZmU4ZWIxZQotLS0g L2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvZGlzcGNhbEdVSQpAQCAtMCwwICsxIEBACitEaXNwbGF5 Q0FMClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9kaXNw Y2FsR1VJL3BhdGNoZXMvZXJyb3IucGF0Y2ggYi9zcmNwa2dzL2Rpc3BjYWxHVUkvcGF0Y2hlcy9l cnJvci5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMTY5ZmM1MjhiMTM4ZS4u MDAwMDAwMDAwMDAwMAotLS0gYS9zcmNwa2dzL2Rpc3BjYWxHVUkvcGF0Y2hlcy9lcnJvci5wYXRj aAorKysgL2Rldi9udWxsCkBAIC0xLDMzICswLDAgQEAKLVJlYXNvbjogZXJyb3IoMykgZG9lcyBu b3QgZXhpc3Qgb24gbXVzbCwgYW5kIG9uIGdsaWJjIHRoZSBzaWduYXR1cmUKLWlzIChpbnQsIGlu dCwgY2hhciosIC4uLikgYW5kIG5vdCAoY2hhciosIC4uLikuCi1UaGVyZWZvcmUgdGhlIGN1cnJl bnQgY29kZSBlaXRoZXIgcmVzdWx0cyBpbiBnYXJibGVkIG91dHB1dCBvcgotZG9lc24ndCB3b3Jr IGF0IGFsbC4gUmVwbGFjZSBpdCB3aXRoIGEgc2ltcGxlIHByaW50Zi4KLQotLS0tCi0tLS0gYS9E aXNwbGF5Q0FML1JlYWxEaXNwbGF5U2l6ZU1NLmMJMjAxOC0wNy0yNSAxNjo0NzowMS4wMDAwMDAw MDAgKzAyMDAKLSsrKyBiL0Rpc3BsYXlDQUwvUmVhbERpc3BsYXlTaXplTU0uYwkyMDE4LTA3LTI1 IDE2OjQ3OjAxLjAwMDAwMDAwMCArMDIwMAotQEAgLTgyMiwxMyArODIyLDEzIEBACi0gCQkJCQkJ c3ByaW50ZihkZXNjMSwgIl9JQ0NfUFJPRklMRV8lZCIsZGlzcHNbbmRpc3BzXS0+dXNjcmVlbik7 Ci0gCi0gCQkJCQlpZiAoKGRpc3BzW25kaXNwc10tPmljY19hdG9tID0gWEludGVybkF0b20obXlk aXNwbGF5LCBkZXNjMSwgRmFsc2UpKSA9PSBOb25lKQotLQkJCQkJCWVycm9yKCJVbmFibGUgdG8g aW50ZXJuIGF0b20gJyVzJyIsZGVzYzEpOwotKwkJCQkJCWZwcmludGYoc3RkZXJyLCAiVW5hYmxl IHRvIGludGVybiBhdG9tICclcyciLGRlc2MxKTsKLSAKLSAJCQkJCWRlYnVncnIyKChlcnJvdXQs IlJvb3QgYXRvbSAnJXMnXG4iLGRlc2MxKSk7Ci0gCi0gCQkJCQkvKiBDcmVhdGUgdGhlIGF0b20g b2YgdGhlIG91dHB1dCB0aGF0IG1heSBjb250YWluIHRoZSBhc3NvY2lhdGVkIElDQyBwcm9maWxl ICovCi0gCQkJCQlpZiAoKGRpc3BzW25kaXNwc10tPmljY19vdXRfYXRvbSA9IFhJbnRlcm5BdG9t KG15ZGlzcGxheSwgIl9JQ0NfUFJPRklMRSIsIEZhbHNlKSkgPT0gTm9uZSkKLS0JCQkJCQllcnJv cigiVW5hYmxlIHRvIGludGVybiBhdG9tICclcyciLCJfSUNDX1BST0ZJTEUiKTsKLSsJCQkJCQlm cHJpbnRmKHN0ZGVyciwgIlVuYWJsZSB0byBpbnRlcm4gYXRvbSAnJXMnIiwiX0lDQ19QUk9GSUxF Iik7Ci0gCQkKLSAJCQkJCS8qIEdyYWIgdGhlIEVESUQgZnJvbSB0aGUgb3V0cHV0ICovCi0gCQkJ CQl7Ci1AQCAtOTkzLDcgKzk5Myw3IEBACi0gCQkJCXNwcmludGYoZGVzYzEsICJfSUNDX1BST0ZJ TEVfJWQiLGRpc3BzW2ldLT51c2NyZWVuKTsKLSAKLSAJCQlpZiAoKGRpc3BzW2ldLT5pY2NfYXRv bSA9IFhJbnRlcm5BdG9tKG15ZGlzcGxheSwgZGVzYzEsIEZhbHNlKSkgPT0gTm9uZSkKLS0JCQkJ ZXJyb3IoIlVuYWJsZSB0byBpbnRlcm4gYXRvbSAnJXMnIixkZXNjMSk7Ci0rCQkJCWZwcmludGYo c3RkZXJyLCAiVW5hYmxlIHRvIGludGVybiBhdG9tICclcyciLGRlc2MxKTsKLSAKLSAJCQkvKiBT ZWUgaWYgd2UgY2FuIGxvY2F0ZSB0aGUgRURJRCBvZiB0aGUgbW9uaXRvciBmb3IgdGhpcyBzY3Jl ZW4gKi8KLSAJCQlmb3IgKGogPSAwOyBqIDwgMjsgaisrKSB7IApkaWZmIC0tZ2l0IGEvc3JjcGtn cy9kaXNwY2FsR1VJL3RlbXBsYXRlIGIvc3JjcGtncy9kaXNwY2FsR1VJL3RlbXBsYXRlCmRlbGV0 ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwNTA4NmI5N2U1YTI2Li4wMDAwMDAwMDAwMDAwCi0t LSBhL3NyY3BrZ3MvZGlzcGNhbEdVSS90ZW1wbGF0ZQorKysgL2Rldi9udWxsCkBAIC0xLDI1ICsw LDAgQEAKLSMgVGVtcGxhdGUgZmlsZSBmb3IgJ2Rpc3BjYWxHVUknCi1wa2duYW1lPWRpc3BjYWxH VUkKLXZlcnNpb249My44LjkuMwotcmV2aXNpb249NQotX25hbWU9IkRpc3BsYXlDQUwiCi1idWls ZF9zdHlsZT1weXRob24yLW1vZHVsZQotaG9zdG1ha2VkZXBlbmRzPSJweXRob24iCi1tYWtlZGVw ZW5kcz0icHl0aG9uLWRldmVsIGxpYlh4Zjg2dm0tZGV2ZWwgbGliWGluZXJhbWEtZGV2ZWwgbGli WHJhbmRyLWRldmVsIgotZGVwZW5kcz0icHl0aG9uLWRidXMgcHl0aG9uLW51bXB5IHd4UHl0aG9u IGFyZ3lsbGNtcyIKLXNob3J0X2Rlc2M9IkRpc3BsYXkgQ2FsaWJyYXRpb24gYW5kIENoYXJhY3Rl cml6YXRpb24iCi1tYWludGFpbmVyPSJsZW1taSA8bGVtbWlAbmVyZDJuZXJkLm9yZz4iCi1saWNl bnNlPSJHUEwtMy4wLW9yLWxhdGVyIgotaG9tZXBhZ2U9Imh0dHBzOi8vZGlzcGxheWNhbC5uZXQv IgotY2hhbmdlbG9nPSJodHRwczovL2Rpc3BsYXljYWwubmV0L0NIQU5HRVMuaHRtbCIKLWRpc3Rm aWxlcz0iJHtTT1VSQ0VGT1JHRV9TSVRFfS9kaXNwY2FsZ3VpLyR7X25hbWV9LSR7dmVyc2lvbn0u dGFyLmd6IgotY2hlY2tzdW09N2MzNGRmYmQ5ZjY2ZjI0ZjFkNGM4OGRlNGE1YTBkZTY4OGFhZDcx OWYwOTU4NzRiNjI1OTYzN2QzMDg5M2JlYQotCi1wcmVfY29uZmlndXJlKCkgewotCXNlZCAtaSAn c3xNaW1lVHlwZT1tb2RlbC92cm1sO3gtd29ybGQveC12cm1sO3xNaW1lVHlwZT1tb2RlbC92cm1s O3wnIG1pc2MvZGlzcGxheWNhbC12cm1sLXRvLXgzZC1jb252ZXJ0ZXIuZGVza3RvcAotfQotCi1w b3N0X2luc3RhbGwoKSB7Ci0JZmluZCAke0RFU1RESVJ9L3Vzci8gLWV4ZWMgY2htb2QgYStyIFx7 XH0gKwotCWZpbmQgJHtERVNURElSfS91c3IvIC10eXBlIGQgLWV4ZWMgY2htb2QgYSt4IFx7XH0g KwotfQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9kaXNwY2FsR1VJL3VwZGF0ZSBiL3NyY3BrZ3MvZGlz cGNhbEdVSS91cGRhdGUKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDY5NDIzOTM5NDVj MzYuLjAwMDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtncy9kaXNwY2FsR1VJL3VwZGF0ZQorKysgL2Rl di9udWxsCkBAIC0xICswLDAgQEAKLXBrZ25hbWU9IiR7X25hbWV9IgoKRnJvbSA5ZTdiMGMzZDli NDI1NjI0MDU0MzNiYTNlNGQ2YTg0OGQ3MWY1MzdkIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpG cm9tOiAiQW5kcmV3IEouIEhlc2ZvcmQiIDxhamhAc2lkZWJhbmQub3JnPgpEYXRlOiBNb24sIDI1 IFNlcCAyMDIzIDAwOjE4OjE5IC0wNDAwClN1YmplY3Q6IFtQQVRDSCAwOC80M10gMGFkOiByZWJ1 aWxkIHdpdGggd3hXaWRnZXRzLWd0azMtMy4yLjIuMQoKLS0tCiBzcmNwa2dzLzBhZC90ZW1wbGF0 ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoK ZGlmZiAtLWdpdCBhL3NyY3BrZ3MvMGFkL3RlbXBsYXRlIGIvc3JjcGtncy8wYWQvdGVtcGxhdGUK aW5kZXggOGNmNGE3NTcyMTYxOS4uNTk3YTcwODJiOTM4OSAxMDA2NDQKLS0tIGEvc3JjcGtncy8w YWQvdGVtcGxhdGUKKysrIGIvc3JjcGtncy8wYWQvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAj IFRlbXBsYXRlIGZpbGUgZm9yICcwYWQnCiBwa2duYW1lPTBhZAogdmVyc2lvbj0wLjAuMjYKLXJl dmlzaW9uPTcKK3JldmlzaW9uPTgKIGFyY2hzPSJ4ODZfNjQqIGk2ODYqIGFhcmNoNjQqIGFybXY3 bCogcHBjNjRsZSoiCiBob3N0bWFrZWRlcGVuZHM9InBrZy1jb25maWcgcGVybCBjbWFrZSBweXRo b24zIHJ1c3QgY2FyZ28geWFzbSB0YXIgY2xhbmciCiBtYWtlZGVwZW5kcz0iU0RMMi1kZXZlbCBi b29zdC1kZXZlbCBnbG9veC1kZXZlbCBsaWJjdXJsLWRldmVsIGxpYmVuZXQtZGV2ZWwKCkZyb20g YTkzNTNjZDhjNjUwYjVjMTViN2E1ZWEyYjc1MmRlODQ5YjkwNjIwOSBNb24gU2VwIDE3IDAwOjAw OjAwIDIwMDEKRnJvbTogIkFuZHJldyBKLiBIZXNmb3JkIiA8YWpoQHNpZGViYW5kLm9yZz4KRGF0 ZTogTW9uLCAyNSBTZXAgMjAyMyAwMDoxODoxOSAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggMDkvNDNd IEFlZ2lzdWI6IHJlYnVpbGQgd2l0aCB3eFdpZGdldHMtZ3RrMy0zLjIuMi4xCgotLS0KIHNyY3Br Z3MvQWVnaXN1Yi90ZW1wbGF0ZSB8IDQgKysrLQogMSBmaWxlIGNoYW5nZWQsIDMgaW5zZXJ0aW9u cygrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvQWVnaXN1Yi90ZW1wbGF0 ZSBiL3NyY3BrZ3MvQWVnaXN1Yi90ZW1wbGF0ZQppbmRleCBkYWYzNTc0OWNlN2M2Li5mZGQzNmM1 M2E5NGEzIDEwMDY0NAotLS0gYS9zcmNwa2dzL0FlZ2lzdWIvdGVtcGxhdGUKKysrIGIvc3JjcGtn cy9BZWdpc3ViL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAn QWVnaXN1YicKIHBrZ25hbWU9QWVnaXN1YgogdmVyc2lvbj0zLjMuMgotcmV2aXNpb249MTAKK3Jl dmlzaW9uPTExCiBidWlsZF9zdHlsZT1jbWFrZQogYnVpbGRfaGVscGVyPWNtYWtlLXd4V2lkZ2V0 cy1ndGszCiBjbWFrZV9idWlsZGRpcj0iQlVJTEQiCkBAIC0yNiw2ICsyNiw4IEBAIGJ1aWxkX29w dGlvbnNfZGVmYXVsdD0iZmZ0dyIKIGRlc2Nfb3B0aW9uX2ZmdHc9IkVuYWJsZSBzdXBwb3J0IGZv ciByZW5kZXJpbmcgb2YgYXVkaW8gd2F2ZWZvcm1zL3NwZWN0cnVtIgogZGVzY19vcHRpb25fb3Bl bmFsPSJFbmFibGUgc3VwcG9ydCBmb3Igb3BlbmFsIgogCitDWFhGTEFHUz0iLURfTEFSR0VGSUxF X1NPVVJDRSAtRF9GSUxFX09GRlNFVF9CSVRTPTY0IgorCiBwcmVfYnVpbGQoKSB7CiAJZXhwb3J0 IEZPUkNFX0dJVF9WRVJTSU9OPSIkdmVyc2lvbiIKIH0KCkZyb20gNDhkYTUyZWU0NGJmMjE4YWUw ZDBlZDRhYmIyNTAwYjRjMWNhNjdiNyBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogIkFu ZHJldyBKLiBIZXNmb3JkIiA8YWpoQHNpZGViYW5kLm9yZz4KRGF0ZTogTW9uLCAyNSBTZXAgMjAy MyAwMDoxODoxOSAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggMTAvNDNdIEN1YmljU0RSOiByZWJ1aWxk IHdpdGggd3hXaWRnZXRzLWd0azMtMy4yLjIuMQoKLS0tCiBzcmNwa2dzL0N1YmljU0RSL3RlbXBs YXRlIHwgNCArKystCiAxIGZpbGUgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9u KC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9DdWJpY1NEUi90ZW1wbGF0ZSBiL3NyY3BrZ3MvQ3Vi aWNTRFIvdGVtcGxhdGUKaW5kZXggYzIyNGZjMTM3OWJmMS4uMTYwOGE5Yzk1ZjdiNCAxMDA2NDQK LS0tIGEvc3JjcGtncy9DdWJpY1NEUi90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL0N1YmljU0RSL3Rl bXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnQ3ViaWNTRFInCiBw a2duYW1lPUN1YmljU0RSCiB2ZXJzaW9uPTAuMi43Ci1yZXZpc2lvbj0yCityZXZpc2lvbj0zCiBi dWlsZF9zdHlsZT1jbWFrZQogYnVpbGRfaGVscGVyPSJjbWFrZS13eFdpZGdldHMtZ3RrMyIKIGNv bmZpZ3VyZV9hcmdzPSItRFVTRV9IQU1MSUI9MSAkKHZvcHRfYm9vbCBhbHNhIFVTRV9BVURJT19B TFNBKQpAQCAtMjIsMyArMjIsNSBAQCBidWlsZF9vcHRpb25zX2RlZmF1bHQ9ImFsc2EgcHVsc2Vh dWRpbyIKIGlmIFsgIiRYQlBTX1RBUkdFVF9OT19BVE9NSUM4IiBdOyB0aGVuCiAJY29uZmlndXJl X2FyZ3MrPSIgLURPVEhFUl9MSUJSQVJJRVM9YXRvbWljIgogZmkKKworQ1hYRkxBR1M9Ii1EX0xB UkdFRklMRV9TT1VSQ0UgLURfRklMRV9PRkZTRVRfQklUUz02NCIKCkZyb20gMTAyNmVkN2RjNWRj YWMyNTVjZjU1OWQxNzRmMTc1ODE1NjQ1NWViNSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJv bTogIkFuZHJldyBKLiBIZXNmb3JkIiA8YWpoQHNpZGViYW5kLm9yZz4KRGF0ZTogTW9uLCAyNSBT ZXAgMjAyMyAwMDoxODoxOSAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggMTEvNDNdIERhcmtSYWRpYW50 OiByZWJ1aWxkIHdpdGggd3hXaWRnZXRzLWd0azMtMy4yLjIuMQoKLS0tCiBzcmNwa2dzL0RhcmtS YWRpYW50L3RlbXBsYXRlIHwgNSArKystLQogMSBmaWxlIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygr KSwgMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL0RhcmtSYWRpYW50L3RlbXBs YXRlIGIvc3JjcGtncy9EYXJrUmFkaWFudC90ZW1wbGF0ZQppbmRleCA4ODMwYjNhNjFjMDZiLi5j OWRiNDkzY2M1NWUxIDEwMDY0NAotLS0gYS9zcmNwa2dzL0RhcmtSYWRpYW50L3RlbXBsYXRlCisr KyBiL3NyY3BrZ3MvRGFya1JhZGlhbnQvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBs YXRlIGZpbGUgZm9yICdEYXJrUmFkaWFudCcKIHBrZ25hbWU9RGFya1JhZGlhbnQKIHZlcnNpb249 My44LjAKLXJldmlzaW9uPTIKK3JldmlzaW9uPTMKIGJ1aWxkX3N0eWxlPWNtYWtlCiBidWlsZF9o ZWxwZXI9Y21ha2Utd3hXaWRnZXRzLWd0azMKIGhvc3RtYWtlZGVwZW5kcz0icGtnLWNvbmZpZyBy dWJ5LWFzY2lpZG9jdG9yIgpAQCAtMTcsNyArMTcsOCBAQCBkaXN0ZmlsZXM9Imh0dHBzOi8vZ2l0 aHViLmNvbS9jb2RlcmVhZGVyL0RhcmtSYWRpYW50L2FyY2hpdmUvJHt2ZXJzaW9ufS50YXIuZ3oi CiBjaGVja3N1bT03YjljY2Q2ZGU2NWQ3ZTU1ZjZhYWQ1ZTFmOWEyZjQ5NjAwYzZhMGQ5ZDcwZTY3 YmRhMmU2MjVjZDcyMWI1NjM1CiAKIENYWEZMQUdTPSItSSR7WEJQU19DUk9TU19CQVNFfS91c3Iv bGliL3d4L2luY2x1ZGUvZ3RrMy11bmljb2RlLTMuMCIKLUNYWEZMQUdTPSIkQ1hYRkxBR1MgLUkk e1hCUFNfQ1JPU1NfQkFTRX0vJHtweTNfc2l0ZWxpYn0vcHliaW5kMTEvaW5jbHVkZSIKK0NYWEZM QUdTKz0iIC1JJHtYQlBTX0NST1NTX0JBU0V9LyR7cHkzX3NpdGVsaWJ9L3B5YmluZDExL2luY2x1 ZGUiCitDWFhGTEFHUys9IiAtRF9MQVJHRUZJTEVfU09VUkNFIC1EX0ZJTEVfT0ZGU0VUX0JJVFM9 NjQiCiAKIHBvc3RfZXh0cmFjdCgpIHsKIAlybSAtcmYgbGlicy9weWJpbmQKCkZyb20gYjE4ODgx MWRkMDllNDRkNzNkYTZiMjcxNzE5MTkwYmQyNWM5MGE1MSBNb24gU2VwIDE3IDAwOjAwOjAwIDIw MDEKRnJvbTogIkFuZHJldyBKLiBIZXNmb3JkIiA8YWpoQHNpZGViYW5kLm9yZz4KRGF0ZTogTW9u LCAyNSBTZXAgMjAyMyAwMDoxODoxOSAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggMTIvNDNdIExpbWVT dWl0ZTogcmVidWlsZCB3aXRoIHd4V2lkZ2V0cy1ndGszLTMuMi4yLjEKCi0tLQogc3JjcGtncy9M aW1lU3VpdGUvdGVtcGxhdGUgfCA0ICsrKy0KIDEgZmlsZSBjaGFuZ2VkLCAzIGluc2VydGlvbnMo KyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL0xpbWVTdWl0ZS90ZW1wbGF0 ZSBiL3NyY3BrZ3MvTGltZVN1aXRlL3RlbXBsYXRlCmluZGV4IGZlOTYzYmU4NWY4NjAuLjI3YTZm MWM1MTRhMGIgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvTGltZVN1aXRlL3RlbXBsYXRlCisrKyBiL3Ny Y3BrZ3MvTGltZVN1aXRlL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxl IGZvciAnTGltZVN1aXRlJwogcGtnbmFtZT1MaW1lU3VpdGUKIHZlcnNpb249MjIuMDkuMQotcmV2 aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfc3R5bGU9Y21ha2UKIGJ1aWxkX2hlbHBlcj1jbWFr ZS13eFdpZGdldHMtZ3RrMwogY29uZmlndXJlX2FyZ3M9IgpAQCAtNDUsNiArNDUsOCBAQCBpZiBb IC16ICIkQ1JPU1NfQlVJTEQiIF07IHRoZW4KIAlidWlsZF9vcHRpb25zX2RlZmF1bHQ9Im9jdGF2 ZSIKIGZpCiAKK0NYWEZMQUdTPSItRF9MQVJHRUZJTEVfU09VUkNFIC1EX0ZJTEVfT0ZGU0VUX0JJ VFM9NjQiCisKIHBvc3RfaW5zdGFsbCgpIHsKIAl2aW5zdGFsbCB1ZGV2LXJ1bGVzLzY0LWxpbWVz dWl0ZS5ydWxlcyA2NDQgdXNyL2xpYi91ZGV2L3J1bGVzLmQKIAoKRnJvbSAwZTg2NGFmMTgzYzJl N2FlYTIxZWZjOTdjMGQ5MDFlOTYzMjEzM2Q4IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9t OiAiQW5kcmV3IEouIEhlc2ZvcmQiIDxhamhAc2lkZWJhbmQub3JnPgpEYXRlOiBNb24sIDI1IFNl cCAyMDIzIDAwOjE4OjE5IC0wNDAwClN1YmplY3Q6IFtQQVRDSCAxMy80M10gT3BlbkNQTjogdXBk YXRlIHRvIDUuOC40LgoKLS0tCiAuLi4vT3BlbkNQTi9wYXRjaGVzL2FjdHVhbGx5LXNldC1hcmNo LnBhdGNoICAgfCAyOCAtLS0tLS0tLS0tCiBzcmNwa2dzL09wZW5DUE4vcGF0Y2hlcy9tdXNsLnBh dGNoICAgICAgICAgICAgfCA1NSArKysrKysrKysrLS0tLS0tLS0tCiBzcmNwa2dzL09wZW5DUE4v dGVtcGxhdGUgICAgICAgICAgICAgICAgICAgICAgfCAxNCArKystLQogMyBmaWxlcyBjaGFuZ2Vk LCAzOCBpbnNlcnRpb25zKCspLCA1OSBkZWxldGlvbnMoLSkKIGRlbGV0ZSBtb2RlIDEwMDY0NCBz cmNwa2dzL09wZW5DUE4vcGF0Y2hlcy9hY3R1YWxseS1zZXQtYXJjaC5wYXRjaAoKZGlmZiAtLWdp dCBhL3NyY3BrZ3MvT3BlbkNQTi9wYXRjaGVzL2FjdHVhbGx5LXNldC1hcmNoLnBhdGNoIGIvc3Jj cGtncy9PcGVuQ1BOL3BhdGNoZXMvYWN0dWFsbHktc2V0LWFyY2gucGF0Y2gKZGVsZXRlZCBmaWxl IG1vZGUgMTAwNjQ0CmluZGV4IGQxNTJjNDA5Mjg4NjcuLjAwMDAwMDAwMDAwMDAKLS0tIGEvc3Jj cGtncy9PcGVuQ1BOL3BhdGNoZXMvYWN0dWFsbHktc2V0LWFyY2gucGF0Y2gKKysrIC9kZXYvbnVs bApAQCAtMSwyOCArMCwwIEBACi0tLS0gYS9jbWFrZS9HZXRBcmNoLmNtYWtlCTIwMjAtMDctMTUg MjA6MDI6MjkuMDAwMDAwMDAwICswMjAwCi0rKysgYi9jbWFrZS9HZXRBcmNoLmNtYWtlCTIwMjAt MDctMTUgMjA6MDI6MjkuMDAwMDAwMDAwICswMjAwCi1AQCAtMTQsNiArMTQsMjUgQEAKLSAgICAg IyBkZWZhdWx0Ci0gICAgIHNldCAoQVJDSCAiaTM4NiIpCi0gICAgIHNldCAoTElCX0lOU1RBTExf RElSICJsaWIiKQotKyAgICBJRiAoQ01BS0VfU1lTVEVNX1BST0NFU1NPUiBNQVRDSEVTICJhcm0q IikKLSsgICAgICBJRiAoQ01BS0VfU0laRU9GX1ZPSURfUCBNQVRDSEVTICI4IikKLSsgICAgICAg IFNFVCAoQVJDSCAiYWFyY2g2NCIpCi0rICAgICAgRUxTRSAoQ01BS0VfU0laRU9GX1ZPSURfUCBN QVRDSEVTICI4IikKLSsgICAgICAgIFNFVCAoQVJDSCAiYXJtaGYiKQotKyAgICAgIEVORElGIChD TUFLRV9TSVpFT0ZfVk9JRF9QIE1BVENIRVMgIjgiKQotKyAgICBFTFNFSUYgKENNQUtFX1NZU1RF TV9QUk9DRVNTT1IgTUFUQ0hFUyAicHBjKiIgT1IgQ01BS0VfU1lTVEVNX1BST0NFU1NPUiBNQVRD SEVTICJwb3dlcnBjKiIpCi0rICAgICAgSUYgKENNQUtFX1NJWkVPRl9WT0lEX1AgTUFUQ0hFUyAi OCIpCi0rICAgICAgICBTRVQgKEFSQ0ggInBwYzY0IikKLSsgICAgICBFTFNFIChDTUFLRV9TSVpF T0ZfVk9JRF9QIE1BVENIRVMgIjgiKQotKyAgICAgICAgU0VUIChBUkNIICJwb3dlcnBjIikKLSsg ICAgICBFTkRJRiAoQ01BS0VfU0laRU9GX1ZPSURfUCBNQVRDSEVTICI4IikKLSsgICAgRUxTRSAo Q01BS0VfU1lTVEVNX1BST0NFU1NPUiBNQVRDSEVTICJhcm0qIikKLSsgICAgICBJRiAoQ01BS0Vf U0laRU9GX1ZPSURfUCBNQVRDSEVTICI4IikKLSsgICAgICAgIFNFVCAoQVJDSCAieDg2XzY0IikK LSsgICAgICBFTFNFIChDTUFLRV9TSVpFT0ZfVk9JRF9QIE1BVENIRVMgIjgiKQotKyAgICAgICAg U0VUIChBUkNIICJpMzg2IikKLSsgICAgICBFTkRJRiAoQ01BS0VfU0laRU9GX1ZPSURfUCBNQVRD SEVTICI4IikKLSsgICAgRU5ESUYgKENNQUtFX1NZU1RFTV9QUk9DRVNTT1IgTUFUQ0hFUyAiYXJt KiIpCi0gICAgIGlmIChFWElTVFMgL2V0Yy9kZWJpYW5fdmVyc2lvbikKLSAgICAgICBzZXQgKFBB Q0tBR0VfRk9STUFUICJERUIiKQotICAgICAgIHNldCAoUEFDS0FHRV9SRUNTICJ4Y2FsaWIseGRn LXV0aWxzIikKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvT3BlbkNQTi9wYXRjaGVzL211c2wucGF0Y2gg Yi9zcmNwa2dzL09wZW5DUE4vcGF0Y2hlcy9tdXNsLnBhdGNoCmluZGV4IDc1OTIzZTAxOWIyYmMu LjUxNzE4Njg3M2QwZDcgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvT3BlbkNQTi9wYXRjaGVzL211c2wu cGF0Y2gKKysrIGIvc3JjcGtncy9PcGVuQ1BOL3BhdGNoZXMvbXVzbC5wYXRjaApAQCAtMSwzMCAr MSwzNSBAQAotLS0tIGEvaW5jbHVkZS96ZXJvY29uZi1kZXRhaWwuaHBwCTIwMjAtMDctMTUgMjA6 MDI6MjkuMDAwMDAwMDAwICswMjAwCi0rKysgYi9pbmNsdWRlL3plcm9jb25mLWRldGFpbC5ocHAJ MjAyMC0wNy0xNSAyMDowMjoyOS4wMDAwMDAwMDAgKzAyMDAKLUBAIC0yMCw5ICsyMCw3IEBACi0g I2RlZmluZSBXSU4zMl9MRUFOX0FORF9NRUFOCi0gI2luY2x1ZGUgPHdpbnNvY2syLmg+Ci0gI2Vs c2UKLS0gICAgI2lmbmRlZiBfX1dYT1NYX18KLS0gICAgICAgICNpbmNsdWRlIDxlcnJvci5oPgot LSAgICAjZWxzZSAgICAKLSsgICAgI2lmZGVmIF9fV1hPU1hfXwotICAgICAgICAgI2luY2x1ZGUg PG1hY2gvZXJyb3IuaD4gCi0gI2VuZGlmCitodHRwczovL2dpdC5hbHBpbmVsaW51eC5vcmcvYXBv cnRzL3BsYWluL2NvbW11bml0eS9vcGVuY3BuL2djYzEyLnBhdGNoCisKK2RpZmYgLS1naXQgYS9p bmNsdWRlL3plcm9jb25mLWRldGFpbC5ocHAgYi9pbmNsdWRlL3plcm9jb25mLWRldGFpbC5ocHAK K2luZGV4IDYwYWUxMjUuLjNlNzYwN2EgMTAwNjQ0CistLS0gYS9pbmNsdWRlL3plcm9jb25mLWRl dGFpbC5ocHAKKysrKyBiL2luY2x1ZGUvemVyb2NvbmYtZGV0YWlsLmhwcAorQEAgLTExLDYgKzEx LDkgQEAKKyAjaW5jbHVkZSA8dmVjdG9yPgorICNpbmNsdWRlIDxtZW1vcnk+CisgI2luY2x1ZGUg PGNocm9ubz4KKysjaW5jbHVkZSA8Y3RpbWU+CisrCisrI2luY2x1ZGUgPHN5cy9zZWxlY3QuaD4K ICAKLUBAIC00MjQsNCArNDIyLDQgQEAKLSAgICAgfQotIH0KKyAjaWYgKGRlZmluZWQoX1dJTjMy KSB8fCBkZWZpbmVkKF9fV0lOMzJfXykpICYmICFkZWZpbmVkKFdJTjMyKQorICNkZWZpbmUgV0lO MzIKK0BAIC0zODUsNCArMzg4LDQgQEAgaW5saW5lIGJvb2wgUmVzb2x2ZShjb25zdCBzdGQ6OnN0 cmluZyYgc2VydmljZU5hbWUsIHRpbWVfdCBzY2FuVGltZSwKKyB9ICAvLyBuYW1lc3BhY2UgRGV0 YWlsCisgfSAgLy8gbmFtZXNwYWNlIFplcm9jb25mCiAgCi0tI2VuZGlmIC8vIFpFUk9DT05GX0RF VEFJTF9IUFAKKy0jZW5kaWYgIC8vIFpFUk9DT05GX0RFVEFJTF9IUFAKIFwgTm8gbmV3bGluZSBh dCBlbmQgb2YgZmlsZQotKyNlbmRpZiAvLyBaRVJPQ09ORl9ERVRBSUxfSFBQCi0tLS0gYS9pbmNs dWRlL3plcm9jb25mLWRldGFpbC5ocHAJMjAyMC0wNy0yNSAxODowNTowOC43MTQwOTg5NjIgKzAy MDAKLSsrKyBiL2luY2x1ZGUvemVyb2NvbmYtZGV0YWlsLmhwcAkyMDIwLTA3LTI1IDE4OjA1OjA4 LjcxNDA5ODk2MiArMDIwMAotQEAgLTI3LDYgKzI3LDcgQEAKLSAjaW5jbHVkZSA8c3RyaW5nLmg+ Ci0gI2luY2x1ZGUgPHVuaXN0ZC5oPgotICNpbmNsdWRlIDxzeXMvc29ja2V0Lmg+Ci0rI2luY2x1 ZGUgPHN5cy90aW1lLmg+Ci0gI2luY2x1ZGUgPG5ldGluZXQvaW4uaD4KKysjZW5kaWYgIC8vIFpF Uk9DT05GX0RFVEFJTF9IUFAKK2RpZmYgLS1naXQgYS9zcmMvbUROU19zZXJ2aWNlLmNwcCBiL3Ny Yy9tRE5TX3NlcnZpY2UuY3BwCitpbmRleCBjOGM3ODc3Li4zZmJkN2VhIDEwMDY0NAorLS0tIGEv c3JjL21ETlNfc2VydmljZS5jcHAKKysrKyBiL3NyYy9tRE5TX3NlcnZpY2UuY3BwCitAQCAtMzUs NiArMzUsNyBAQAogICNlbmRpZgogIAorICNpbmNsdWRlIDxzdGRpby5oPgorKyNpbmNsdWRlIDxz eXMvc2VsZWN0Lmg+CisgCisgI2luY2x1ZGUgPGVycm5vLmg+CisgI2luY2x1ZGUgPHNpZ25hbC5o PgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9PcGVuQ1BOL3RlbXBsYXRlIGIvc3JjcGtncy9PcGVuQ1BO L3RlbXBsYXRlCmluZGV4IGVlNjdkYmFmZjAxYzIuLjE1Y2NjNDQ5ODEyZTMgMTAwNjQ0Ci0tLSBh L3NyY3BrZ3MvT3BlbkNQTi90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL09wZW5DUE4vdGVtcGxhdGUK QEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdPcGVuQ1BOJwogcGtnbmFtZT1P cGVuQ1BOCi12ZXJzaW9uPTUuMi4wCi1yZXZpc2lvbj0yCit2ZXJzaW9uPTUuOC40CityZXZpc2lv bj0xCiBidWlsZF9zdHlsZT1jbWFrZQogYnVpbGRfaGVscGVyPWNtYWtlLXd4V2lkZ2V0cy1ndGsz CiBjb25maWd1cmVfYXJncz0iLURPQ1BOX0JVTkRMRV9HU0hIUz1OT05FIC1ET0NQTl9CVU5ETEVf VENEQVRBPU9OCkBAIC0xMCwxNiArMTAsMTcgQEAgY29uZmlndXJlX2FyZ3M9Ii1ET0NQTl9CVU5E TEVfR1NISFM9Tk9ORSAtRE9DUE5fQlVORExFX1RDREFUQT1PTgogIC1ET0NQTl9VU0VfQlVORExF RF9MSUJTPU9GRiIKIGhvc3RtYWtlZGVwZW5kcz0iZ2V0dGV4dCBwa2ctY29uZmlnIgogbWFrZWRl cGVuZHM9Imd0ayszLWRldmVsIGxpYmN1cmwtZGV2ZWwgcG9ydGF1ZGlvLWRldmVsIHRpbnl4bWwt ZGV2ZWwKLSB3eFdpZGdldHMtZ3RrMy1kZXZlbCAkKHZvcHRfaWYgZXhpZiAnbGliZXhpZi1kZXZl bCcpIGdsdS1kZXZlbAotICQodm9wdF9pZiBsaWJhcmNoaXZlICdsaWJhcmNoaXZlLWRldmVsJyAn bGlidW5hcnItZGV2ZWwnKSAkKHZvcHRfaWYgbHptYSAnbGlibHptYS1kZXZlbCcpIgorIHd4V2lk Z2V0cy1ndGszLWRldmVsIGdsdS1kZXZlbCBnbGV3LWRldmVsIHJhcGlkanNvbiBndGVzdC1kZXZl bAorICQodm9wdF9pZiBsaWJhcmNoaXZlICdsaWJhcmNoaXZlLWRldmVsJyAnbGlidW5hcnItZGV2 ZWwnKQorICQodm9wdF9pZiBleGlmICdsaWJleGlmLWRldmVsJykgJCh2b3B0X2lmIGx6bWEgJ2xp Ymx6bWEtZGV2ZWwnKSIKIGRlcGVuZHM9Imdwc2QgaGljb2xvci1pY29uLXRoZW1lIE9wZW5DUE4t dGNkYXRhLSR7dmVyc2lvbn1fJHtyZXZpc2lvbn0KICBPcGVuQ1BOLWdzaGhzLWNydWRlIgogc2hv cnRfZGVzYz0iQ29uY2lzZSBDaGFydFBsb3R0ZXIvTmF2aWdhdG9yIgogbWFpbnRhaW5lcj0iSm9o biA8bWVAam9obm55bmF0b3IuZGV2PiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIsIEdQTC0z LjAtb3ItbGF0ZXIsIExHUEwtMi4wLW9yLWxhdGVyLCBNSVQsIFd4V2luZG93cy1leGNlcHRpb24t My4xLCBKYXNQZXItMi4wLCBCU0QtMy1DbGF1c2UsIFNHSS1CLTIuMCIKIGhvbWVwYWdlPSJodHRw czovL29wZW5jcG4ub3JnLyIKLWRpc3RmaWxlcz0iaHR0cHM6Ly9naXRodWIuY29tL09wZW5DUE4v T3BlbkNQTi9hcmNoaXZlL3Yke3ZlcnNpb259LnRhci5neiIKLWNoZWNrc3VtPWY2ZWMzODk4OWJj MzhmNWE3ZjYzMjM0YzVlMDIzMGFkZWI3M2Y1NjI2YjRlM2QzZGZhNjgwZjBjMjQwYmFkYzcKK2Rp c3RmaWxlcz0iaHR0cHM6Ly9naXRodWIuY29tL09wZW5DUE4vT3BlbkNQTi9hcmNoaXZlL1JlbGVh c2VfJHt2ZXJzaW9ufS50YXIuZ3oiCitjaGVja3N1bT03NTUyNzI2ZTVhZmNlNWViNDAxZTMwN2Jl ZWRkOGYzYWEyYzY2NzI1NjAyZmMyN2FiM2FkMTg0NWY0MGI4N2EwCiAKIGJ1aWxkX29wdGlvbnM9 Imx6bWEgbGliYXJjaGl2ZSBleGlmIGNyYXNocmVwb3J0IgogYnVpbGRfb3B0aW9uc19kZWZhdWx0 PSJsem1hIGxpYmFyY2hpdmUgZXhpZiIKQEAgLTM0LDYgKzM1LDcgQEAgY2FzZSAkWEJQU19UQVJH RVRfTUFDSElORSBpbgogZXNhYwogCiBDRkxBR1M9Ii1mY29tbW9uIgorQ1hYRkxBR1M9Ii1EX0xB UkdFRklMRV9TT1VSQ0UgLURfRklMRV9PRkZTRVRfQklUUz02NCIKIAogcG9zdF9pbnN0YWxsKCkg ewogCXZsaWNlbnNlIGxpYnMvZ2xzaGltL0xJQ0VOU0UgTElDRU5TRS5nbHNoaW0KCkZyb20gY2M2 MGI4ZDk2MzU1NTkyOTVkNDRlNTM5MmQ0MDk5ZGRiNzk4Y2E3ZCBNb24gU2VwIDE3IDAwOjAwOjAw IDIwMDEKRnJvbTogIkFuZHJldyBKLiBIZXNmb3JkIiA8YWpoQHNpZGViYW5kLm9yZz4KRGF0ZTog TW9uLCAyNSBTZXAgMjAyMyAwMDoxODoxOSAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggMTQvNDNdIFBy dXNhU2xpY2VyOiByZWJ1aWxkIHdpdGggd3hXaWRnZXRzLWd0azMtMy4yLjIuMQoKLS0tCiBzcmNw a2dzL1BydXNhU2xpY2VyL3RlbXBsYXRlIHwgNCArKystCiAxIGZpbGUgY2hhbmdlZCwgMyBpbnNl cnRpb25zKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9QcnVzYVNsaWNl ci90ZW1wbGF0ZSBiL3NyY3BrZ3MvUHJ1c2FTbGljZXIvdGVtcGxhdGUKaW5kZXggYmFjNWQ2ZDU3 NDA1My4uYzI4YzJkNzA3YzIyOSAxMDA2NDQKLS0tIGEvc3JjcGtncy9QcnVzYVNsaWNlci90ZW1w bGF0ZQorKysgYi9zcmNwa2dzL1BydXNhU2xpY2VyL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAog IyBUZW1wbGF0ZSBmaWxlIGZvciAnUHJ1c2FTbGljZXInCiBwa2duYW1lPVBydXNhU2xpY2VyCiB2 ZXJzaW9uPTIuNS4yCi1yZXZpc2lvbj0yCityZXZpc2lvbj0zCiBidWlsZF9zdHlsZT1jbWFrZQog YnVpbGRfaGVscGVyPSJxZW11IGNtYWtlLXd4V2lkZ2V0cy1ndGszIgogIyBQcmUtQ29tcGlsZWQg SGVhZGVycyBzZWVtcyB0byBiZSBzbG93ZXIKQEAgLTE5LDYgKzE5LDggQEAgaG9tZXBhZ2U9Imh0 dHBzOi8vd3d3LnBydXNhM2QuY29tL3BydXNhc2xpY2VyLyIKIGRpc3RmaWxlcz0iaHR0cHM6Ly9n aXRodWIuY29tL3BydXNhM2QvUHJ1c2FzbGljZXIvYXJjaGl2ZS92ZXJzaW9uXyR7dmVyc2lvbn0u dGFyLmd6IgogY2hlY2tzdW09ZTU4Mjc4MDY3YjlkNDlhNDJkYzliYjAyYjc0MzA3YjNjYjM2NWJi NzM3ZjI4ZTI0NmNhOGM2ZjQ2NjA5NWQ2YgogCitDWFhGTEFHUz0iLURfTEFSR0VGSUxFX1NPVVJD RSAtRF9GSUxFX09GRlNFVF9CSVRTPTY0IgorCiBwb3N0X2V4dHJhY3QoKSB7CiAJIyBNYXJrIHRl c3RzIHRoYXQgZmFpbCBvbiBjZXJ0YWluIHRhcmdldHMKIAljYXNlICIkWEJQU19UQVJHRVRfTUFD SElORSIgaW4KCkZyb20gMWUzOGUxYjkyODQ4Njk0YjgxNDlkNTc3OTVkN2U1MDdjNzA2NzU4NCBN b24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogIkFuZHJldyBKLiBIZXNmb3JkIiA8YWpoQHNp ZGViYW5kLm9yZz4KRGF0ZTogTW9uLCAyNSBTZXAgMjAyMyAwMDoxODoxOSAtMDQwMApTdWJqZWN0 OiBbUEFUQ0ggMTUvNDNdIFNMQURFOiByZWJ1aWxkIHdpdGggd3hXaWRnZXRzLWd0azMtMy4yLjIu MQoKLS0tCiBzcmNwa2dzL1NMQURFL3RlbXBsYXRlIHwgNCArKystCiAxIGZpbGUgY2hhbmdlZCwg MyBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9TTEFE RS90ZW1wbGF0ZSBiL3NyY3BrZ3MvU0xBREUvdGVtcGxhdGUKaW5kZXggOGI2ODA1NzRjM2I5ZS4u OGMyZWE2ZTQwY2M1YyAxMDA2NDQKLS0tIGEvc3JjcGtncy9TTEFERS90ZW1wbGF0ZQorKysgYi9z cmNwa2dzL1NMQURFL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZv ciAnU0xBREUnCiBwa2duYW1lPVNMQURFCiB2ZXJzaW9uPTMuMi4xCi1yZXZpc2lvbj0xCityZXZp c2lvbj0yCiBidWlsZF9zdHlsZT1jbWFrZQogYnVpbGRfaGVscGVyPWNtYWtlLXd4V2lkZ2V0cy1n dGszCiBob3N0bWFrZWRlcGVuZHM9InBrZy1jb25maWcgcDd6aXAgd2hpY2giCkBAIC0xNiw2ICsx Niw4IEBAIGNoYW5nZWxvZz0iaHR0cHM6Ly9naXRodWIuY29tL3Npcmp1ZGRpbmd0b24vU0xBREUv cmVsZWFzZXMvdGFnLyR7dmVyc2lvbn0iCiBkaXN0ZmlsZXM9Imh0dHBzOi8vZ2l0aHViLmNvbS9z aXJqdWRkaW5ndG9uL1NMQURFL2FyY2hpdmUvJHt2ZXJzaW9ufS50YXIuZ3oiCiBjaGVja3N1bT1j MzI3ZmE2MmJhNDkxYWM0ODFkNzY5NzAwMjYxZDgxMDEyODkxMDAwNzI5N2ZkOWQ5ZGJlMjZhYzBl NzhiYjJjCiAKK0NYWEZMQUdTPSItRF9MQVJHRUZJTEVfU09VUkNFIC1EX0ZJTEVfT0ZGU0VUX0JJ VFM9NjQiCisKIHByZV9jb25maWd1cmUoKSB7CiAJY2FzZSAkWEJQU19UQVJHRVRfTUFDSElORSBp bgogCQl4ODZfNjQqIHwgaTY4NiopOzsKCkZyb20gMGUwNGM1ZmU5ODE3MjI2NzU3NjA5ZTFlNTNk ZTI1MjY3ODliNGNkYSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogIkFuZHJldyBKLiBI ZXNmb3JkIiA8YWpoQHNpZGViYW5kLm9yZz4KRGF0ZTogTW9uLCAyNSBTZXAgMjAyMyAwMDoxODoy MCAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggMTYvNDNdIFdvZVVTQjogcmVidWlsZCB3aXRoIHd4V2lk Z2V0cy1ndGszLTMuMi4yLjEKCi0tLQogc3JjcGtncy9Xb2VVU0IvdGVtcGxhdGUgfCA0ICsrKy0K IDEgZmlsZSBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1n aXQgYS9zcmNwa2dzL1dvZVVTQi90ZW1wbGF0ZSBiL3NyY3BrZ3MvV29lVVNCL3RlbXBsYXRlCmlu ZGV4IGI5NDZiNTJiY2MxYjguLmQ5NDM2OWUwODc4OTEgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvV29l VVNCL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvV29lVVNCL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBA QAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnV29lVVNCJwogcGtnbmFtZT1Xb2VVU0IKIHZlcnNpb249 My4zLjEKLXJldmlzaW9uPTMKK3JldmlzaW9uPTQKIGJ1aWxkX3N0eWxlPWdudS1jb25maWd1cmUK IGNvbmZpZ3VyZV9hcmdzPSItLXdpdGgtd3gtY29uZmlnPXd4LWNvbmZpZy1ndGszIgogaG9zdG1h a2VkZXBlbmRzPSJhdXRvbWFrZSBnZXR0ZXh0IGxpYnRvb2wiCkBAIC0xNCw2ICsxNCw4IEBAIGhv bWVwYWdlPSJodHRwczovL2dpdGh1Yi5jb20vc2xhY2thL1dvZVVTQiIKIGRpc3RmaWxlcz0iaHR0 cHM6Ly9naXRodWIuY29tL3NsYWNrYS9Xb2VVU0IvYXJjaGl2ZS92JHt2ZXJzaW9ufS50YXIuZ3oi CiBjaGVja3N1bT0wY2FiODhhMTExMzUwNmYzOWQyZjFjMTk1MzJiMmNkOGQ5NjhjNmE5ZjU5MTI5 OTUzYzAwMGUyOWU3M2YzZDRmCiAKK0NYWEZMQUdTPSItRF9MQVJHRUZJTEVfU09VUkNFIC1EX0ZJ TEVfT0ZGU0VUX0JJVFM9NjQiCisKIHBvc3RfcGF0Y2goKSB7CiAJdnNlZCAtaSAtZSAicy9AQFdP RVVTQl9WRVJTSU9OQEAvJHZlcnNpb24vZyIgXAogCQljb25maWd1cmUuYWMgXAoKRnJvbSA3MmFl MmYzYzhlMzgzYTIyMzM0ZjJiNmVlZWY2ZmUwMDdjMTEwNDlmIE1vbiBTZXAgMTcgMDA6MDA6MDAg MjAwMQpGcm9tOiAiQW5kcmV3IEouIEhlc2ZvcmQiIDxhamhAc2lkZWJhbmQub3JnPgpEYXRlOiBN b24sIDI1IFNlcCAyMDIzIDAwOjE4OjIwIC0wNDAwClN1YmplY3Q6IFtQQVRDSCAxNy80M10gYXVk YWNpdHk6IHJlYnVpbGQgd2l0aCB3eFdpZGdldHMtZ3RrMy0zLjIuMi4xCgotLS0KIHNyY3BrZ3Mv YXVkYWNpdHkvcGF0Y2hlcy93eC0zLjIucGF0Y2ggICAgICAgICB8IDI2ICsrKysrKysrKysrKysr KysKIC4uLi9wYXRjaGVzL3d4LXdpZGdldC1oYXMtYmFzcXVlLnBhdGNoICAgICAgICB8IDIyICsr KysrKysrKysrKysKIHNyY3BrZ3MvYXVkYWNpdHkvcGF0Y2hlcy93eGJpdG1hcC5wYXRjaCAgICAg ICB8IDMxICsrKysrKysrKysrKysrKysrKysKIHNyY3BrZ3MvYXVkYWNpdHkvdGVtcGxhdGUgICAg ICAgICAgICAgICAgICAgICB8ICA3ICsrKy0tCiA0IGZpbGVzIGNoYW5nZWQsIDg0IGluc2VydGlv bnMoKyksIDIgZGVsZXRpb25zKC0pCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy9hdWRhY2l0 eS9wYXRjaGVzL3d4LTMuMi5wYXRjaAogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvYXVkYWNp dHkvcGF0Y2hlcy93eC13aWRnZXQtaGFzLWJhc3F1ZS5wYXRjaAogY3JlYXRlIG1vZGUgMTAwNjQ0 IHNyY3BrZ3MvYXVkYWNpdHkvcGF0Y2hlcy93eGJpdG1hcC5wYXRjaAoKZGlmZiAtLWdpdCBhL3Ny Y3BrZ3MvYXVkYWNpdHkvcGF0Y2hlcy93eC0zLjIucGF0Y2ggYi9zcmNwa2dzL2F1ZGFjaXR5L3Bh dGNoZXMvd3gtMy4yLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw MDAuLmQ0MmFlMDlmMzBmNmUKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL2F1ZGFjaXR5L3Bh dGNoZXMvd3gtMy4yLnBhdGNoCkBAIC0wLDAgKzEsMjYgQEAKK0luZGV4OiBhdWRhY2l0eS1BdWRh Y2l0eS0yLjQuMS9jb25maWd1cmUKKz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKy0tLSBhdWRhY2l0eS1BdWRhY2l0eS0y LjQuMS5vcmlnL2NvbmZpZ3VyZQorKysrIGF1ZGFjaXR5LUF1ZGFjaXR5LTIuNC4xL2NvbmZpZ3Vy ZQorQEAgLTE5OTE4LDcgKzE5OTE4LDcgQEAgd3hfdmVyc2lvbj1gJHtXWF9DT05GSUd9ICR3eGNv bmZpZ2FyZ3MgLQorICRhc19lY2hvICIkYXNfbWU6IENoZWNraW5nIHRoYXQgdGhlIGNob3NlbiB2 ZXJzaW9uIG9mIHd4V2lkZ2V0cyBpcyAzLjEueCAob3IgMy4wLngpIiA+JjY7fQorIAorIGNhc2Ug IiR7d3hfdmVyc2lvbn0iIGluCistICAzLjEuKiB8IDMuMC4qKQorKyAgMy4yLiogfCAzLjEuKiB8 IDMuMC4qKQorICAgICBlY2hvICJHcmVhdCwgeW91J3JlIHVzaW5nIHd4V2lkZ2V0cyAke3d4X3Zl cnNpb259ISIKKyAgICAgOzsKKyAgICopCitJbmRleDogYXVkYWNpdHktQXVkYWNpdHktMi40LjEv bGliLXNyYy9saWItd2lkZ2V0LWV4dHJhL2NvbmZpZ3VyZQorPT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorLS0tIGF1ZGFj aXR5LUF1ZGFjaXR5LTIuNC4xLm9yaWcvbGliLXNyYy9saWItd2lkZ2V0LWV4dHJhL2NvbmZpZ3Vy ZQorKysrIGF1ZGFjaXR5LUF1ZGFjaXR5LTIuNC4xL2xpYi1zcmMvbGliLXdpZGdldC1leHRyYS9j b25maWd1cmUKK0BAIC0xNjYzMyw3ICsxNjYzMyw3IEBAIHd4X3ZlcnNpb249YCR7V1hfQ09ORklH fSAkd3hjb25maWdhcmdzIC0KKyAkYXNfZWNobyAiJGFzX21lOiBDaGVja2luZyB0aGF0IHRoZSBj aG9zZW4gdmVyc2lvbiBvZiB3eFdpZGdldHMgaXMgMy4xLnggKG9yIDMuMC54KSIgPiY2O30KKyAK KyBjYXNlICIke3d4X3ZlcnNpb259IiBpbgorLSAgMy4xLiogfCAzLjAuKikKKysgIDMuMi4qIHwg My4xLiogfCAzLjAuKikKKyAgICAgZWNobyAiR3JlYXQsIHlvdSdyZSB1c2luZyB3eFdpZGdldHMg JHt3eF92ZXJzaW9ufSEiCisgICAgIDs7CisgICAqKQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9hdWRh Y2l0eS9wYXRjaGVzL3d4LXdpZGdldC1oYXMtYmFzcXVlLnBhdGNoIGIvc3JjcGtncy9hdWRhY2l0 eS9wYXRjaGVzL3d4LXdpZGdldC1oYXMtYmFzcXVlLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0 CmluZGV4IDAwMDAwMDAwMDAwMDAuLjRkZDI0ZTc5ZWM4ZTIKLS0tIC9kZXYvbnVsbAorKysgYi9z cmNwa2dzL2F1ZGFjaXR5L3BhdGNoZXMvd3gtd2lkZ2V0LWhhcy1iYXNxdWUucGF0Y2gKQEAgLTAs MCArMSwyMiBAQAorSW5kZXg6IGF1ZGFjaXR5LUF1ZGFjaXR5LTIuNC4xL3NyYy9BdWRhY2l0eUFw cC5jcHAKKz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT0KKy0tLSBhdWRhY2l0eS1BdWRhY2l0eS0yLjQuMS5vcmlnL3NyYy9B dWRhY2l0eUFwcC5jcHAKKysrKyBhdWRhY2l0eS1BdWRhY2l0eS0yLjQuMS9zcmMvQXVkYWNpdHlB cHAuY3BwCitAQCAtMTEwMiw3ICsxMTAyLDcgQEAgbG9jYXRpb25zIG9mIHRoZSBtaXNzaW5nIGZp bGVzLiIpLkZvcm1hdAorICNkZWZpbmUgV0wobGFuZyxzdWJsYW5nKQorICNlbmRpZgorIAorLSNp ZiB3eENIRUNLX1ZFUlNJT04oMywgMCwgMSkKKysjaWYgMAorIHd4TGFuZ3VhZ2VJbmZvIHVzZXJM YW5nc1tdID0KKyB7CisgICAgLy8gQm9zbmlhbiBpcyBkZWZpbmVkIGluIHd4V2lkZ2V0cyBhbHJl YWR5CitAQCAtMTM2Niw3ICsxMzY2LDcgQEAgYm9vbCBBdWRhY2l0eUFwcDo6T25Jbml0KCkKKyAg ICAvLworICAgIC8vIFRPRE86ICBUaGUgd2hvbGUgTGFuZ3VhZ2UgaW5pdGlhbGl6YXRpb24gcmVh bGx5IG5lZWQgdG8gYmUgcmV3b3JrZWQuCisgICAgLy8gICAgICAgIEl0J3MgYWxsIG92ZXIgdGhl IHBsYWNlLgorLSNpZiB3eENIRUNLX1ZFUlNJT04oMywgMCwgMSkKKysjaWYgMAorICAgIGZvciAo c2l6ZV90IGkgPSAwLCBjbnQgPSBXWFNJWkVPRih1c2VyTGFuZ3MpOyBpIDwgY250OyBpKyspCisg ICAgeworICAgICAgIHd4TG9jYWxlOjpBZGRMYW5ndWFnZSh1c2VyTGFuZ3NbaV0pOwpkaWZmIC0t Z2l0IGEvc3JjcGtncy9hdWRhY2l0eS9wYXRjaGVzL3d4Yml0bWFwLnBhdGNoIGIvc3JjcGtncy9h dWRhY2l0eS9wYXRjaGVzL3d4Yml0bWFwLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4 IDAwMDAwMDAwMDAwMDAuLmFmMThiZDFjYjY1MjQKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dz L2F1ZGFjaXR5L3BhdGNoZXMvd3hiaXRtYXAucGF0Y2gKQEAgLTAsMCArMSwzMSBAQAorRnJvbSA1 NTM4M2ZjY2QwYzI4MWI0ZjE4OWQ5YjA3Njk5YjIxYmI4MDJjNzM2IE1vbiBTZXAgMTcgMDA6MDA6 MDAgMjAwMQorRnJvbTogSWFuIE1jSW5lcm5leSA8aWFuLnMubWNpbmVybmV5QGllZWUub3JnPgor RGF0ZTogRnJpLCA4IEFwciAyMDIyIDAxOjI3OjUyICswMTAwCitTdWJqZWN0OiBbUEFUQ0hdIENh bGwgdGhlIHByb3BlciB3eEJpdG1hcCBjb25zdHJ1Y3RvciBmb3IgWFBNIGRhdGEKKword3hCaXRt YXAgYmFjayB0byBhdCBsZWFzdCAzLjAuMCBkaWQgbm90IGhhdmUgYSBjb25zdHJ1Y3RvciBmb3Ig YW4gWFBNCitpbWFnZSB0aGF0IHRvb2sgYSBzaXplIHBhcmFtZXRlciwgaXQgd291bGQgb25seSB0 YWtlIHRoZSBYUE0gZGF0YQoraXRzZWxmLgorCitJIGRvbid0IGtub3cgaG93IHRoaXMgY29tcGls ZWQgdW50aWwgbm93LCBidXQgaXQgZG9lc24ndCBhbnltb3JlIHdoZW4KK3RoZSBzaXplIGlzIGlu Y2x1ZGVkIGFuZCBidWlsdCBhZ2FpbnN0IHd4IDMuMS42IGluIEZlZG9yYS4KKy0tLQorIHNyYy9N aXhlckJvYXJkLmNwcCB8IDIgKy0KKyAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEg ZGVsZXRpb24oLSkKKyAKKyBUZWNobmljYWxseSB0aGlzIHBhdGNoIGlzIHVuZGVyIEdQTHYzKyBi ZWNhdXNlIGl0IHdhcyBjb250cmlidXRlZCBhZnRlcgorIHJlIGxpY2Vuc2luZworCitkaWZmIC0t Z2l0IGEvc3JjL01peGVyQm9hcmQuY3BwIGIvc3JjL01peGVyQm9hcmQuY3BwCitpbmRleCA1NGI1 ZjE0NmNjNy4uN2ZlODE2MTU0NzQgMTAwNjQ0CistLS0gYS9zcmMvTWl4ZXJCb2FyZC5jcHAKKysr KyBiL3NyYy9NaXhlckJvYXJkLmNwcAorQEAgLTEzMDcsNyArMTMwNyw3IEBAIHZvaWQgTWl4ZXJC b2FyZDo6TG9hZE11c2ljYWxJbnN0cnVtZW50cygpCisgICAgd3hNZW1vcnlEQyBkYzsKKyAKKyAg ICBmb3IgKGNvbnN0IGF1dG8gJmRhdGEgOiB0YWJsZSkgeworLSAgICAgIGF1dG8gYm1wID0gc3Rk OjptYWtlX3VuaXF1ZTx3eEJpdG1hcD4oZGF0YS5iaXRtYXAsMjQpOworKyAgICAgIGF1dG8gYm1w ID0gc3RkOjptYWtlX3VuaXF1ZTx3eEJpdG1hcD4oZGF0YS5iaXRtYXApOworICAgICAgIGRjLlNl bGVjdE9iamVjdCgqYm1wKTsKKyAgICAgICBBQ29sb3I6OkJldmVsKGRjLCBmYWxzZSwgYmV2KTsK KyAgICAgICBtTXVzaWNhbEluc3RydW1lbnRzLnB1c2hfYmFjayhzdGQ6Om1ha2VfdW5pcXVlPE11 c2ljYWxJbnN0cnVtZW50PigKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvYXVkYWNpdHkvdGVtcGxhdGUg Yi9zcmNwa2dzL2F1ZGFjaXR5L3RlbXBsYXRlCmluZGV4IDI4ZTljNGEzNTI4ZjEuLmU3OTk3MWQ2 OWQwMTYgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvYXVkYWNpdHkvdGVtcGxhdGUKKysrIGIvc3JjcGtn cy9hdWRhY2l0eS90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3Ig J2F1ZGFjaXR5JwogcGtnbmFtZT1hdWRhY2l0eQogdmVyc2lvbj0yLjQuMQotcmV2aXNpb249Mgor cmV2aXNpb249MwogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQogY29uZmlndXJlX2FyZ3M9Ii0t d2l0aC1mZm1wZWc9c3lzdGVtIC0td2l0aC1saWJzbmRmaWxlPXN5c3RlbSAtLXdpdGgtZXhwYXQ9 c3lzdGVtCiAgLS13aXRoLWxpYnNveHI9c3lzdGVtIC0td2l0aC1sYW1lPXN5c3RlbSAtLXdpdGgt bHYyPXN5c3RlbSBhY19jdl9wYXRoX1dYX0NPTkZJRz13eC1jb25maWctZ3RrMyIKQEAgLTEzLDcg KzEzLDggQEAgbWFrZWRlcGVuZHM9ImphY2stZGV2ZWwgd3hXaWRnZXRzLWd0azMtZGV2ZWwgZ3Rr KzMtZGV2ZWwKIGRlcGVuZHM9ImRlc2t0b3AtZmlsZS11dGlscyBoaWNvbG9yLWljb24tdGhlbWUi CiBzaG9ydF9kZXNjPSJHcmFwaGljYWwgY3Jvc3MtcGxhdGZvcm0gYXVkaW8gZWRpdG9yIgogbWFp bnRhaW5lcj0iT3JwaGFuZWQgPG9ycGhhbkB2b2lkbGludXgub3JnPiIKLWxpY2Vuc2U9IkdQTC0y LjAtb3ItbGF0ZXIiCisjIFBhdGNoZXMgYXJlIEdQTDMrLCBzbyBidW1wIHRoZSBsaWNlbnNlIGZv ciB0aGUgd2hvbGUgcGFja2FnZQorbGljZW5zZT0iR1BMLTMuMC1vci1sYXRlciIKIGhvbWVwYWdl PSJodHRwczovL3d3dy5hdWRhY2l0eXRlYW0ub3JnIgogZGlzdGZpbGVzPSJodHRwczovL2dpdGh1 Yi5jb20vYXVkYWNpdHkvYXVkYWNpdHkvYXJjaGl2ZS9BdWRhY2l0eS0ke3ZlcnNpb259LnRhci5n eiIKIGNoZWNrc3VtPTUwMjQwZjA3NDcxMzczYTdlNWMyZGY2NWNjMjZlZWVhYWNlZDlhMDg1MGFk MWY5NWNiNzk1ZjE3MWVhMzAwOWYKQEAgLTI3LDYgKzI4LDggQEAgaWYgWyAiJFhCUFNfVEFSR0VU X05PX0FUT01JQzgiIF07IHRoZW4KIAlMREZMQUdTPSItbGF0b21pYyIKIGZpCiAKK0NYWEZMQUdT PSItRF9MQVJHRUZJTEVfU09VUkNFIC1EX0ZJTEVfT0ZGU0VUX0JJVFM9NjQiCisKIHBvc3RfaW5z dGFsbCgpIHsKIAl2Y29weSBueXF1aXN0IC91c3Ivc2hhcmUvYXVkYWNpdHkKIAl2Y29weSBwbHVn LWlucyAvdXNyL3NoYXJlL2F1ZGFjaXR5CgpGcm9tIDFlYjRiNzk2MjgzNDMwMWVlMGJkYmViOGM3 MWE1OTZjNzRlNzY5M2QgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206ICJBbmRyZXcgSi4g SGVzZm9yZCIgPGFqaEBzaWRlYmFuZC5vcmc+CkRhdGU6IE1vbiwgMjUgU2VwIDIwMjMgMDA6MTg6 MjAgLTA0MDAKU3ViamVjdDogW1BBVENIIDE4LzQzXSBib2luYzogcmVidWlsZCB3aXRoIHd4V2lk Z2V0cy1ndGszLTMuMi4yLjEKCi0tLQogc3JjcGtncy9ib2luYy90ZW1wbGF0ZSB8IDQgKystLQog MSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1n aXQgYS9zcmNwa2dzL2JvaW5jL3RlbXBsYXRlIGIvc3JjcGtncy9ib2luYy90ZW1wbGF0ZQppbmRl eCBlY2QyYTExMDBiMDE1Li42NWIzZWZjNWMzNDU1IDEwMDY0NAotLS0gYS9zcmNwa2dzL2JvaW5j L3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvYm9pbmMvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAj IFRlbXBsYXRlIGZpbGUgZm9yICdib2luYycKIHBrZ25hbWU9Ym9pbmMKIHZlcnNpb249Ny4yMi4w Ci1yZXZpc2lvbj0yCityZXZpc2lvbj0zCiBfbWFqb3J2ZXI9JHt2ZXJzaW9uJS4qfQogYnVpbGRf c3R5bGU9Z251LWNvbmZpZ3VyZQogaG9zdG1ha2VkZXBlbmRzPSJhdXRvbWFrZSBsaWJ0b29sIHBr Zy1jb25maWcgeG9yZ3Byb3RvIHNoYXJlZC1taW1lLWluZm8iCkBAIC0yMSw3ICsyMSw3IEBAIGJv aW5jX2hvbWVkaXI9Ii92YXIvbGliL2JvaW5jIgogYm9pbmNfc2hlbGw9Ii9iaW4vYmFzaCIKIGNv bmZsaWN0cz0iYm9pbmMtbm94Pj0wIgogCi1DWFhGTEFHUz0iLVduby1yZWR1bmRhbnQtZGVjbHMi CitDWFhGTEFHUz0iLVduby1yZWR1bmRhbnQtZGVjbHMgLURfTEFSR0VGSUxFX1NPVVJDRSAtRF9G SUxFX09GRlNFVF9CSVRTPTY0IgogCiBjYXNlICIkWEJQU19UQVJHRVRfTUFDSElORSIgaW4KIAlh cm12NmwpIGJyb2tlbj0iYXJtLWxpbnV4LWdudWVhYmloZi1nKys6IGVycm9yOiBsaWJ3aGV0dmZw LmE6IE5vIHN1Y2ggZmlsZSBvciBkaXJlY3RvcnkiIDs7CgpGcm9tIGQ3ZDIxZDgyZGMyYTEyOTlk NzVkNzczNTE2ZTk3YTdmNDVlNTUyNDEgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206ICJB bmRyZXcgSi4gSGVzZm9yZCIgPGFqaEBzaWRlYmFuZC5vcmc+CkRhdGU6IE1vbiwgMjUgU2VwIDIw MjMgMDA6MTg6MjAgLTA0MDAKU3ViamVjdDogW1BBVENIIDE5LzQzXSBjb2RlYmxvY2tzOiByZWJ1 aWxkIHdpdGggd3hXaWRnZXRzLWd0azMtMy4yLjIuMQoKLS0tCiBzcmNwa2dzL2NvZGVibG9ja3Mv cGF0Y2hlcy8wMDAucjExOTkxLnBhdGNoICAgfCAgMjcgKwogLi4uMC52MjAuMDMtcjEyMDA4LnBh dGNoID0+IDAwMC5yMTIwMDgucGF0Y2h9IHwgICAwCiAuLi4xLnYyMC4wMy1yMTIwMTIucGF0Y2gg PT4gMDAwLnIxMjAxMi5wYXRjaH0gfCAgIDAKIHNyY3BrZ3MvY29kZWJsb2Nrcy9wYXRjaGVzLzAw MC5yMTI1MzIucGF0Y2ggICB8ICAxMyArCiBzcmNwa2dzL2NvZGVibG9ja3MvcGF0Y2hlcy8wMDAu cjEyNTgwLnBhdGNoICAgfCA5NDQgKysrKysrKysrKysrKysrKysrCiBzcmNwa2dzL2NvZGVibG9j a3MvcGF0Y2hlcy8wMDAucjEyNzA3LnBhdGNoICAgfCAxMjAgKysrCiBzcmNwa2dzL2NvZGVibG9j a3MvcGF0Y2hlcy93eC0zLjIucGF0Y2ggICAgICAgfCAgMjEgKwogc3JjcGtncy9jb2RlYmxvY2tz L3RlbXBsYXRlICAgICAgICAgICAgICAgICAgIHwgICA0ICstCiA4IGZpbGVzIGNoYW5nZWQsIDEx MjggaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbigtKQogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3Br Z3MvY29kZWJsb2Nrcy9wYXRjaGVzLzAwMC5yMTE5OTEucGF0Y2gKIHJlbmFtZSBzcmNwa2dzL2Nv ZGVibG9ja3MvcGF0Y2hlcy97MDAwLnYyMC4wMy1yMTIwMDgucGF0Y2ggPT4gMDAwLnIxMjAwOC5w YXRjaH0gKDEwMCUpCiByZW5hbWUgc3JjcGtncy9jb2RlYmxvY2tzL3BhdGNoZXMvezAwMS52MjAu MDMtcjEyMDEyLnBhdGNoID0+IDAwMC5yMTIwMTIucGF0Y2h9ICgxMDAlKQogY3JlYXRlIG1vZGUg MTAwNjQ0IHNyY3BrZ3MvY29kZWJsb2Nrcy9wYXRjaGVzLzAwMC5yMTI1MzIucGF0Y2gKIGNyZWF0 ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL2NvZGVibG9ja3MvcGF0Y2hlcy8wMDAucjEyNTgwLnBhdGNo CiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy9jb2RlYmxvY2tzL3BhdGNoZXMvMDAwLnIxMjcw Ny5wYXRjaAogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvY29kZWJsb2Nrcy9wYXRjaGVzL3d4 LTMuMi5wYXRjaAoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvY29kZWJsb2Nrcy9wYXRjaGVzLzAwMC5y MTE5OTEucGF0Y2ggYi9zcmNwa2dzL2NvZGVibG9ja3MvcGF0Y2hlcy8wMDAucjExOTkxLnBhdGNo Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAuLjBjZGI3MjUxZmRjZWQK LS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL2NvZGVibG9ja3MvcGF0Y2hlcy8wMDAucjExOTkx LnBhdGNoCkBAIC0wLDAgKzEsMjcgQEAKK0luZGV4OiBzcmMvc3JjL21haW4uY3BwCis9PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09CistLS0gYS9zcmMvc3JjL21haW4uY3BwCShyZXZpc2lvbiAxMTk5MCkKKysrKyBiL3NyYy9z cmMvbWFpbi5jcHAJKHJldmlzaW9uIDExOTkxKQorQEAgLTI2ODAsOCArMjY4MCw2IEBACisgICAg IGVsc2UKKyAgICAgeworICAgICAgICAgd3hCdXN5Q3Vyc29yIHVzZWxlc3M7CistICAgICAgICB3 eFBhaW50RXZlbnQgZTsKKy0gICAgICAgIFByb2Nlc3NFdmVudChlKTsKKyAgICAgICAgIGZvciAo dW5zaWduZWQgaW50IGkgPSAwOyBpIDwgZmlsZXMuR2V0Q291bnQoKTsgKytpKQorICAgICAgICAg ICBzdWNjZXNzICY9IE9wZW5HZW5lcmljKGZpbGVzW2ldKTsKKyAgICAgfQorSW5kZXg6IHNyYy9z cmMvd2F0Y2hlc2RsZy5jcHAKKz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKy0tLSBhL3NyYy9zcmMvd2F0Y2hlc2RsZy5j cHAJKHJldmlzaW9uIDExOTkwKQorKysrIGIvc3JjL3NyYy93YXRjaGVzZGxnLmNwcAkocmV2aXNp b24gMTE5OTEpCitAQCAtMTAzLDggKzEwMyw3IEBACisgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIGNiX3VudXNlZCBjb25zdCB3eFBvaW50JiBwb3MsCisgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIGNiX3VudXNlZCBjb25zdCB3eFNpemUmIHN6KSBjb25zdCBvdmVy cmlkZQorICAgICB7CistICAgICAgICB3eFBHV2luZG93TGlzdCBjb25zdCBsaXN0OworLSAgICAg ICAgcmV0dXJuIGxpc3Q7CisrICAgICAgICByZXR1cm4gd3hQR1dpbmRvd0xpc3QobnVsbHB0ciwg bnVsbHB0cik7CisgICAgIH0KKyAgICAgdm9pZCBVcGRhdGVDb250cm9sKGNiX3VudXNlZCB3eFBH UHJvcGVydHkqIHByb3BlcnR5LCBjYl91bnVzZWQgd3hXaW5kb3cqIGN0cmwpIGNvbnN0IG92ZXJy aWRlIHt9CisgICAgIGJvb2wgT25FdmVudChjYl91bnVzZWQgd3hQcm9wZXJ0eUdyaWQqIHByb3Bn cmlkLCBjYl91bnVzZWQgd3hQR1Byb3BlcnR5KiBwcm9wZXJ0eSwKZGlmZiAtLWdpdCBhL3NyY3Br Z3MvY29kZWJsb2Nrcy9wYXRjaGVzLzAwMC52MjAuMDMtcjEyMDA4LnBhdGNoIGIvc3JjcGtncy9j b2RlYmxvY2tzL3BhdGNoZXMvMDAwLnIxMjAwOC5wYXRjaApzaW1pbGFyaXR5IGluZGV4IDEwMCUK cmVuYW1lIGZyb20gc3JjcGtncy9jb2RlYmxvY2tzL3BhdGNoZXMvMDAwLnYyMC4wMy1yMTIwMDgu cGF0Y2gKcmVuYW1lIHRvIHNyY3BrZ3MvY29kZWJsb2Nrcy9wYXRjaGVzLzAwMC5yMTIwMDgucGF0 Y2gKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvY29kZWJsb2Nrcy9wYXRjaGVzLzAwMS52MjAuMDMtcjEy MDEyLnBhdGNoIGIvc3JjcGtncy9jb2RlYmxvY2tzL3BhdGNoZXMvMDAwLnIxMjAxMi5wYXRjaApz aW1pbGFyaXR5IGluZGV4IDEwMCUKcmVuYW1lIGZyb20gc3JjcGtncy9jb2RlYmxvY2tzL3BhdGNo ZXMvMDAxLnYyMC4wMy1yMTIwMTIucGF0Y2gKcmVuYW1lIHRvIHNyY3BrZ3MvY29kZWJsb2Nrcy9w YXRjaGVzLzAwMC5yMTIwMTIucGF0Y2gKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvY29kZWJsb2Nrcy9w YXRjaGVzLzAwMC5yMTI1MzIucGF0Y2ggYi9zcmNwa2dzL2NvZGVibG9ja3MvcGF0Y2hlcy8wMDAu cjEyNTMyLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAuLjE1 YTJmZmYyOGUyZTcKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL2NvZGVibG9ja3MvcGF0Y2hl cy8wMDAucjEyNTMyLnBhdGNoCkBAIC0wLDAgKzEsMTMgQEAKK0luZGV4OiBzcmMvaW5jbHVkZS9j Y21hbmFnZXIuaAorPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PQorLS0tIGEvc3JjL2luY2x1ZGUvY2NtYW5hZ2VyLmgJKHJl dmlzaW9uIDEyNTMxKQorKysrIGIvc3JjL2luY2x1ZGUvY2NtYW5hZ2VyLmgJKHJldmlzaW9uIDEy NTMyKQorQEAgLTQ0LDcgKzQ0LDcgQEAKKyAgKiBsaXN0IG9yIHRoZSBkb3h5Z2VuIHBvcHVwLCB0 aGUgc2Nyb2xsIGV2ZW50IGlzIGluc3RlYWQgc2VudCB0aGVyZSAoYW5kIHNraXBwZWQgZm9yIHRo ZSBlZGl0b3IKKyAgKiB3aW5kb3cpLgorICAqLworLWNsYXNzIERMTElNUE9SVCBDQ01hbmFnZXIg OiBwdWJsaWMgTWdyPENDTWFuYWdlcj4sIHd4RXZ0SGFuZGxlcgorK2NsYXNzIERMTElNUE9SVCBD Q01hbmFnZXIgOiBwdWJsaWMgTWdyPENDTWFuYWdlcj4sIHB1YmxpYyB3eEV2dEhhbmRsZXIKKyB7 CisgICAgIHB1YmxpYzoKKyAgICAgICAgIGZyaWVuZCBjbGFzcyBNZ3I8Q0NNYW5hZ2VyPjsKZGlm ZiAtLWdpdCBhL3NyY3BrZ3MvY29kZWJsb2Nrcy9wYXRjaGVzLzAwMC5yMTI1ODAucGF0Y2ggYi9z cmNwa2dzL2NvZGVibG9ja3MvcGF0Y2hlcy8wMDAucjEyNTgwLnBhdGNoCm5ldyBmaWxlIG1vZGUg MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAuLjc5MzBjNWM1Njc3YjIKLS0tIC9kZXYvbnVsbAor KysgYi9zcmNwa2dzL2NvZGVibG9ja3MvcGF0Y2hlcy8wMDAucjEyNTgwLnBhdGNoCkBAIC0wLDAg KzEsOTQ0IEBACitJbmRleDogc3JjL3NyYy9ub3RlYm9va3N0eWxlcy5oCis9PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Cist LS0gYS9zcmMvc3JjL25vdGVib29rc3R5bGVzLmgJKHJldmlzaW9uIDEyNTc5KQorKysrIGIvc3Jj L3NyYy9ub3RlYm9va3N0eWxlcy5oCShyZXZpc2lvbiAxMjU4MCkKK0BAIC04LDE0ICs4LDYgQEAK KyAKKyAjaW5jbHVkZSAiY2JhdWlib29rLmgiCisgCistI2lmIGRlZmluZWQoX19XWEdUS19fKSAm JiAoVVNFX0dUS19OT1RFQk9PSykgJiYgIXd4Q0hFQ0tfVkVSU0lPTigzLCAwLCAwKQorLSAgICAj ZGVmaW5lIEdTb2NrZXQgR0xpYlNvY2tldAorLSAgICAjaW5jbHVkZSA8Z3RrL2d0ay5oPgorLSAg ICAjdW5kZWYgR1NvY2tldAorLSAgICAjaW5jbHVkZSA8d3gvYXJ0cHJvdi5oPgorLSNlbmRpZgor LQorLQorIGNsYXNzIHd4REM7CisgY2xhc3Mgd3hXaW5kb3c7CisgY2xhc3Mgd3hSZWN0OworQEAg LTUzLDM1ICs0NSw0IEBACisgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHd4U2l6 ZSYgcmVxdWlyZWRfYm1wX3NpemUpIG92ZXJyaWRlOworIH07CisgCistI2lmIGRlZmluZWQoX19X WEdUS19fKSAmJiAoVVNFX0dUS19OT1RFQk9PSykgJiYgIXd4Q0hFQ0tfVkVSU0lPTigzLCAwLCAw KQorLWNsYXNzIE5iU3R5bGVHVEsgOiBwdWJsaWMgd3hBdWlEZWZhdWx0VGFiQXJ0CisteworLXB1 YmxpYzoKKy0gICAgTmJTdHlsZUdUSygpOworLQorLSAgICB2aXJ0dWFsIHd4QXVpVGFiQXJ0KiBD bG9uZSgpOworLSAgICB2aXJ0dWFsIHZvaWQgRHJhd0JhY2tncm91bmQod3hEQyYgZGMsIHd4V2lu ZG93KiB3bmQsIGNvbnN0IHd4UmVjdCYgcmVjdCk7CistICAgIHZpcnR1YWwgdm9pZCBEcmF3VGFi KHd4REMmIGRjLAorLSAgICAgICAgICAgICAgICAgICAgICAgICB3eFdpbmRvdyogd25kLAorLSAg ICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB3eEF1aU5vdGVib29rUGFnZSYgcGFnZSwKKy0g ICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgd3hSZWN0JiBpbl9yZWN0LAorLSAgICAgICAg ICAgICAgICAgICAgICAgICBpbnQgY2xvc2VfYnV0dG9uX3N0YXRlLAorLSAgICAgICAgICAgICAg ICAgICAgICAgICB3eFJlY3QqIG91dF90YWJfcmVjdCwKKy0gICAgICAgICAgICAgICAgICAgICAg ICAgd3hSZWN0KiBvdXRfYnV0dG9uX3JlY3QsCistICAgICAgICAgICAgICAgICAgICAgICAgIGlu dCogeF9leHRlbnQpOworLSAgICB2b2lkIERyYXdCdXR0b24od3hEQyYgZGMsIHd4V2luZG93KiB3 bmQsIGNvbnN0IHd4UmVjdCYgaW5fcmVjdCwgaW50IGJpdG1hcF9pZCwKKy0gICAgICAgICAgICAg ICAgICAgIGludCBidXR0b25fc3RhdGUsIGludCBvcmllbnRhdGlvbiwgd3hSZWN0KiBvdXRfcmVj dCk7CistICAgIGludCBHZXRCZXN0VGFiQ3RybFNpemUod3hXaW5kb3cqIHduZCwgY29uc3Qgd3hB dWlOb3RlYm9va1BhZ2VBcnJheSYgcGFnZXMsCistICAgICAgICAgICAgICAgICAgICAgICAgICAg IGNvbnN0IHd4U2l6ZSYgcmVxdWlyZWRfYm1wX3NpemUpOworLSAgICB2aXJ0dWFsIHd4U2l6ZSBH ZXRUYWJTaXplKHd4REMmIGRjLCB3eFdpbmRvdyogd25kLCBjb25zdCB3eFN0cmluZyYgY2FwdGlv biwgY29uc3Qgd3hCaXRtYXAmIGJpdG1hcCwgYm9vbCBhY3RpdmUsCistICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgaW50IGNsb3NlX2J1dHRvbl9zdGF0ZSwgaW50KiB4X2V4dGVudCk7Cist cHJpdmF0ZToKKy0gICAgaW50IG1fWHRoaWNrbmVzczsKKy0gICAgaW50IG1fWXRoaWNrbmVzczsK Ky0gICAgaW50IG1fVGFiSEJvcmRlcjsKKy0gICAgaW50IG1fVGFiVkJvcmRlcjsKKy0gICAgd3hC aXRtYXAgbV9BY3RpdmVDbG9zZUJ1dHRvbjsKKy19OworLSNlbmRpZiAvLyAjaWYgZGVmaW5lZChf X1dYR1RLX18pICYmIChVU0VfR1RLX05PVEVCT09LKSAmJiAhd3hDSEVDS19WRVJTSU9OKDMsIDAs IDApCistCisgI2VuZGlmIC8vIE5PVEVCT09LU1RZTEVTX0gKK0luZGV4OiBzcmMvcGx1Z2lucy9j b21waWxlcmdjYy9jb21waWxlcm9wdGlvbnNkbGcuY3BwCis9PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CistLS0gYS9zcmMv cGx1Z2lucy9jb21waWxlcmdjYy9jb21waWxlcm9wdGlvbnNkbGcuY3BwCShyZXZpc2lvbiAxMjU3 OSkKKysrKyBiL3NyYy9wbHVnaW5zL2NvbXBpbGVyZ2NjL2NvbXBpbGVyb3B0aW9uc2RsZy5jcHAJ KHJldmlzaW9uIDEyNTgwKQorQEAgLTY3NywxMyArNjc3LDkgQEAKKyAgICAgd3hQR1Byb3BlcnR5 ICpyb290ID0gbV9GbGFnc1BHLT5HZXRSb290KCk7CisgICAgIGlmIChyb290KQorICAgICB7Cist ICAgICAgICB1bnNpZ25lZCBjb3VudCA9IHJvb3QtPkdldENoaWxkQ291bnQoKTsKKysgICAgICAg IGNvbnN0IHVuc2lnbmVkIGNvdW50ID0gcm9vdC0+R2V0Q2hpbGRDb3VudCgpOworICAgICAgICAg Zm9yICh1bnNpZ25lZCBpaSA9IDA7IGlpIDwgY291bnQ7ICsraWkpCistI2lmIHd4Q0hFQ0tfVkVS U0lPTigzLCAwLCAwKQorICAgICAgICAgICAgIG1fRmxhZ3NQRy0+U29ydENoaWxkcmVuKHJvb3Qt Pkl0ZW0oaWkpLCB3eFBHX1JFQ1VSU0UpOworLSNlbHNlCistICAgICAgICAgICAgbV9GbGFnc1BH LT5Tb3J0KHJvb3QtPkl0ZW0oaWkpKTsKKy0jZW5kaWYKKyAgICAgfQorICAgICBtX0ZsYWdzUEct PlRoYXcoKTsKKyB9IC8vIERvRmlsbE9wdGlvbnMKK0BAIC0yMTE4LDExICsyMTE0LDcgQEAKKyAg ICAgQ29tcGlsZXJGYWN0b3J5OjpTZXREZWZhdWx0Q29tcGlsZXIoaWR4KTsKKyAgICAgd3hTdHJp bmcgbXNnOworICAgICBDb21waWxlciogY29tcGlsZXIgPSBDb21waWxlckZhY3Rvcnk6OkdldERl ZmF1bHRDb21waWxlcigpOworLSAgICAjaWYgd3hDSEVDS19WRVJTSU9OKDMsIDAsIDApCistICAg IG1zZy5QcmludGYoXygiJXMgaXMgbm93IHNlbGVjdGVkIGFzIHRoZSBkZWZhdWx0IGNvbXBpbGVy IGZvciBuZXcgcHJvamVjdHMiKSwgY29tcGlsZXIgPyBjb21waWxlci0+R2V0TmFtZSgpLnd4X3N0 cigpIDogXygiW2ludmFsaWRdIikud3hfc3RyKCkpOworLSAgICAjZWxzZQorLSAgICBtc2cuUHJp bnRmKF8oIiVzIGlzIG5vdyBzZWxlY3RlZCBhcyB0aGUgZGVmYXVsdCBjb21waWxlciBmb3IgbmV3 IHByb2plY3RzIiksIGNvbXBpbGVyID8gY29tcGlsZXItPkdldE5hbWUoKS5jX3N0cigpIDogXygi W2ludmFsaWRdIikpOworLSAgICAjZW5kaWYKKysgICAgbXNnLlByaW50ZihfKCIlcyBpcyBub3cg c2VsZWN0ZWQgYXMgdGhlIGRlZmF1bHQgY29tcGlsZXIgZm9yIG5ldyBwcm9qZWN0cyIpLCBjb21w aWxlciA/IGNvbXBpbGVyLT5HZXROYW1lKCkgOiBfKCJbaW52YWxpZF0iKSk7CisgICAgIGNiTWVz c2FnZUJveChtc2cpOworIH0gLy8gT25TZXREZWZhdWx0Q29tcGlsZXJDbGljaworIAorSW5kZXg6 IHNyYy9zZGsvdGVtcGxhdGVtYW5hZ2VyLmNwcAorPT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorLS0tIGEvc3JjL3Nkay90 ZW1wbGF0ZW1hbmFnZXIuY3BwCShyZXZpc2lvbiAxMjU3OSkKKysrKyBiL3NyYy9zZGsvdGVtcGxh dGVtYW5hZ2VyLmNwcAkocmV2aXNpb24gMTI1ODApCitAQCAtMTg2LDExICsxODYsNyBAQAorICAg ICAgICAgICAgICsrY291bnQ7CisgICAgICAgICB9CisgICAgICAgICBlbHNlCistICAgICAgICAg ICAgI2lmIHd4Q0hFQ0tfVkVSU0lPTigzLCAwLCAwKQorICAgICAgICAgICAgIE1hbmFnZXI6Okdl dCgpLT5HZXRMb2dNYW5hZ2VyKCktPkRlYnVnTG9nKEYoX1QoIkZhaWxlZCBjb3B5aW5nICVzIHRv ICVzIiksIHNyYy53eF9zdHIoKSwgZHN0Lnd4X3N0cigpKSk7CistICAgICAgICAgICAgI2Vsc2UK Ky0gICAgICAgICAgICBNYW5hZ2VyOjpHZXQoKS0+R2V0TG9nTWFuYWdlcigpLT5EZWJ1Z0xvZyhG KF9UKCJGYWlsZWQgY29weWluZyAlcyB0byAlcyIpLCBzcmMuY19zdHIoKSwgZHN0LmNfc3RyKCkp KTsKKy0gICAgICAgICAgICAjZW5kaWYKKyAgICAgfQorICAgICBpZiAoY291bnQgIT0gdG90YWxf Y291bnQpCisgICAgICAgICBjYk1lc3NhZ2VCb3goXygiU29tZSBmaWxlcyBjb3VsZCBub3QgYmUg bG9hZGVkIHdpdGggdGhlIHRlbXBsYXRlLi4uIiksIF8oIkVycm9yIiksIHd4SUNPTl9FUlJPUik7 CitAQCAtMzAzLDIxICsyOTksMTMgQEAKKyAgICAgeworICAgICAgICAgd3hTdHJpbmcgc3JjID0g KCppdCktPmZpbGUuR2V0RnVsbFBhdGgoKTsKKyAgICAgICAgIHd4U3RyaW5nIGRzdCA9IHRlbXBs ICsgKCppdCktPnJlbGF0aXZlVG9Db21tb25Ub3BMZXZlbFBhdGg7CistICAgICAgICAjaWYgd3hD SEVDS19WRVJTSU9OKDMsIDAsIDApCisgICAgICAgICBNYW5hZ2VyOjpHZXQoKS0+R2V0TG9nTWFu YWdlcigpLT5EZWJ1Z0xvZyhGKF9UKCJDb3B5aW5nICVzIHRvICVzIiksIHNyYy53eF9zdHIoKSwg ZHN0Lnd4X3N0cigpKSk7CistICAgICAgICAjZWxzZQorLSAgICAgICAgTWFuYWdlcjo6R2V0KCkt PkdldExvZ01hbmFnZXIoKS0+RGVidWdMb2coRihfVCgiQ29weWluZyAlcyB0byAlcyIpLCBzcmMu Y19zdHIoKSwgZHN0LmNfc3RyKCkpKTsKKy0gICAgICAgICNlbmRpZgorICAgICAgICAgaWYgKCFD cmVhdGVEaXJSZWN1cnNpdmVseShkc3QpKQorICAgICAgICAgICAgIE1hbmFnZXI6OkdldCgpLT5H ZXRMb2dNYW5hZ2VyKCktPkRlYnVnTG9nKF9UKCJGYWlsZWQgY3JlYXRpbmcgZGlyZWN0b3J5IGZv ciAiKSArIGRzdCk7CisgICAgICAgICBpZiAod3hDb3B5RmlsZShzcmMsIGRzdCwgdHJ1ZSkpCisg ICAgICAgICAgICAgKytjb3VudDsKKyAgICAgICAgIGVsc2UKKy0gICAgICAgICAgICAjaWYgd3hD SEVDS19WRVJTSU9OKDMsIDAsIDApCisgICAgICAgICAgICAgTWFuYWdlcjo6R2V0KCktPkdldExv Z01hbmFnZXIoKS0+RGVidWdMb2coRihfVCgiRmFpbGVkIGNvcHlpbmcgJXMgdG8gJXMiKSwgc3Jj Lnd4X3N0cigpLCBkc3Qud3hfc3RyKCkpKTsKKy0gICAgICAgICAgICAjZWxzZQorLSAgICAgICAg ICAgIE1hbmFnZXI6OkdldCgpLT5HZXRMb2dNYW5hZ2VyKCktPkRlYnVnTG9nKEYoX1QoIkZhaWxl ZCBjb3B5aW5nICVzIHRvICVzIiksIHNyYy5jX3N0cigpLCBkc3QuY19zdHIoKSkpOworLSAgICAg ICAgICAgICNlbmRpZgorICAgICB9CisgCisgICAgIC8vIGNiUHJvamVjdCBkb2Vzbid0IGhhdmUg YSBHZXRSZWxhdGl2ZVRvQ29tbW9uVG9wTGV2ZWxQYXRoKCkgZnVuY3Rpb24sIHNvIHdlIHNpbXVs YXRlIGl0IGhlcmUKK0luZGV4OiBzcmMvc3JjL2Fzc29jaWF0aW9ucy5jcHAKKz09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K Ky0tLSBhL3NyYy9zcmMvYXNzb2NpYXRpb25zLmNwcAkocmV2aXNpb24gMTI1NzkpCisrKysgYi9z cmMvc3JjL2Fzc29jaWF0aW9ucy5jcHAJKHJldmlzaW9uIDEyNTgwKQorQEAgLTIwMSwxMSArMjAx LDcgQEAKKyAgICAgaWYgKGtleS5FeGlzdHMoKSkKKyAgICAgeworICAgICAgICAgd3hTdHJpbmcg czsKKy0gICAgICAgICNpZiB3eENIRUNLX1ZFUlNJT04oMywgMCwgMCkKKyAgICAgICAgIGlmIChr ZXkuUXVlcnlWYWx1ZSh3eEVtcHR5U3RyaW5nLCBzKSAmJiBzLlN0YXJ0c1dpdGgoX1QoIkNvZGVC bG9ja3MiKSkpCistICAgICAgICAjZWxzZQorLSAgICAgICAgaWYgKGtleS5RdWVyeVZhbHVlKE5V TEwsIHMpICYmIHMuU3RhcnRzV2l0aChfVCgiQ29kZUJsb2NrcyIpKSkKKy0gICAgICAgICNlbmRp ZgorICAgICAgICAgICAgIGtleS5EZWxldGVTZWxmKCk7CisgICAgIH0KKyAKK0luZGV4OiBzcmMv c3JjL2RsZ2Fib3V0LmNwcAorPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorLS0tIGEvc3JjL3NyYy9kbGdhYm91dC5jcHAJ KHJldmlzaW9uIDEyNTc5KQorKysrIGIvc3JjL3NyYy9kbGdhYm91dC5jcHAJKHJldmlzaW9uIDEy NTgwKQorQEAgLTIwLDkgKzIwLDcgQEAKKyAgICAgI2luY2x1ZGUgPHd4L3N0cmluZy5oPgorICAg ICAjaW5jbHVkZSA8d3gvdGV4dGN0cmwuaD4KKyAgICAgI2luY2x1ZGUgPHd4L3hyYy94bWxyZXMu aD4KKy0gICAgI2lmIHd4Q0hFQ0tfVkVSU0lPTigzLCAwLCAwKQorLSAgICAgICAgI2luY2x1ZGUg PHd4L3ZlcnNpb25pbmZvLmg+CistICAgICNlbmRpZiAvLyB3eENIRUNLX1ZFUlNJT04KKysgICAg I2luY2x1ZGUgPHd4L3ZlcnNpb25pbmZvLmg+CisgCisgICAgICNpbmNsdWRlICJsaWNlbnNlcy5o IgorICAgICAjaW5jbHVkZSAiY29uZmlnbWFuYWdlci5oIgorQEAgLTE0NiwxNSArMTQ0LDExIEBA CisgICAgIHd4VGV4dEN0cmwgKnR4dExpY2Vuc2UgPSBYUkNDVFJMKCp0aGlzLCAidHh0TGljZW5z ZSIsIHd4VGV4dEN0cmwpOworICAgICB0eHRMaWNlbnNlLT5TZXRWYWx1ZShMSUNFTlNFX0dQTCk7 CisgCistI2lmIHd4Q0hFQ0tfVkVSU0lPTigzLCAwLCAwKQorICAgICBjb25zdCB3eFZlcnNpb25J bmZvIHNjaW50aWxsYVZlcnNpb24gPSB3eFNjaW50aWxsYTo6R2V0TGlicmFyeVZlcnNpb25JbmZv KCk7CisgICAgIGNvbnN0IHd4U3RyaW5nIHNjaW50aWxsYVN0ciA9IHd4U3RyaW5nOjpGb3JtYXQo d3hUKCIlZC4lZC4lZCIpLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIHNjaW50aWxsYVZlcnNpb24uR2V0TWFqb3IoKSwKKyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzY2ludGlsbGFWZXJzaW9uLkdl dE1pbm9yKCksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgc2NpbnRpbGxhVmVyc2lvbi5HZXRNaWNybygpKTsKKy0jZWxzZQorLSAgICBjb25zdCB3 eFN0cmluZyBzY2ludGlsbGFTdHIgPSB3eFNDSU5USUxMQV9WRVJTSU9OOworLSNlbmRpZiAvLyB3 eENIRUNLX1ZFUlNJT04KKyAKKyAgICAgc3RydWN0IEl0ZW0KKyAgICAgeworQEAgLTIxOCw5ICsy MTIsNyBAQAorICAgICAgICAgaW5mb3JtYXRpb24gKz0gd3hUKCI6ICIpICsgaXRlbS52YWx1ZSAr IHd4VCgiXG4iKTsKKyAgICAgfQorIAorLSNpZiB3eENIRUNLX1ZFUlNJT04oMywgMCwgMCkKKyAg ICAgaW5mb3JtYXRpb24gKz0gd3hUKCJcbiIpICsgd3hHZXRMaWJyYXJ5VmVyc2lvbkluZm8oKS5H ZXREZXNjcmlwdGlvbigpOworLSNlbmRpZiAvLyB3eENIRUNLX1ZFUlNJT04oMywgMCwgMCkKKyAK KyAgICAgd3hUZXh0Q3RybCAqdHh0SW5mb3JtYXRpb24gPSBYUkNDVFJMKCp0aGlzLCAidHh0SW5m b3JtYXRpb24iLCB3eFRleHRDdHJsKTsKKyAgICAgdHh0SW5mb3JtYXRpb24tPlNldFZhbHVlKGlu Zm9ybWF0aW9uKTsKK0luZGV4OiBzcmMvc3JjL21haW4uY3BwCis9PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CistLS0gYS9z cmMvc3JjL21haW4uY3BwCShyZXZpc2lvbiAxMjU3OSkKKysrKyBiL3NyYy9zcmMvbWFpbi5jcHAJ KHJldmlzaW9uIDEyNTgwKQorQEAgLTIwNzUsMTEgKzIwNzUsNyBAQAorICAgICAgICAgeworICAg ICAgICAgICAgIGlmICghaXRlbXNbaV0tPklzQ2hlY2thYmxlKCkpCisgICAgICAgICAgICAgICAg IGNvbnRpbnVlOworLSNpZiB3eENIRUNLX1ZFUlNJT04oMywgMCwgMCkKKyAgICAgICAgICAgICBp dGVtc1tpXS0+Q2hlY2soaXRlbXNbaV0tPkdldEl0ZW1MYWJlbCgpLklzU2FtZUFzKG5hbWUpKTsK Ky0jZWxzZQorLSAgICAgICAgICAgIGl0ZW1zW2ldLT5DaGVjayhpdGVtc1tpXS0+R2V0VGV4dCgp LklzU2FtZUFzKG5hbWUpKTsKKy0jZW5kaWYKKyAgICAgICAgIH0KKyAKKyAgICAgICAgIGlmICgh bV9MYXN0TGF5b3V0SXNUZW1wKQorQEAgLTI0MDEsMTIgKzIzOTcsNyBAQAorICAgICAgICAgICAg IGJyZWFrOworIAorICAgICAgICAgZGVmYXVsdDogLy8gZGVmYXVsdCBzdHlsZQorLSAgICAgICAg ICAgICNpZiBkZWZpbmVkKF9fV1hHVEtfXykgJiYgKFVTRV9HVEtfTk9URUJPT0spICYmICF3eENI RUNLX1ZFUlNJT04oMywgMCwgMCkKKy0gICAgICAgICAgICB0YXJnZXQtPlNldEFydFByb3ZpZGVy KG5ldyBOYlN0eWxlR1RLKCkpOworLSAgICAgICAgICAgICNlbHNlCisgICAgICAgICAgICAgdGFy Z2V0LT5TZXRBcnRQcm92aWRlcihuZXcgd3hBdWlEZWZhdWx0VGFiQXJ0KCkpOworLSAgICAgICAg ICAgICNlbmRpZgorLSAgICAgICAgICAgIGJyZWFrOworICAgICB9CisgCisgICAgIHRhcmdldC0+ U2V0VGFiQ3RybEhlaWdodCgtMSk7CitAQCAtNDgwMSwxMyArNDc5Miw5IEBACisgCisgICAgIGlm IChNYW5hZ2VyOjpHZXQoKS0+R2V0RWRpdG9yTWFuYWdlcigpICYmIGV2ZW50LkdldEVkaXRvcigp ID09IE1hbmFnZXI6OkdldCgpLT5HZXRFZGl0b3JNYW5hZ2VyKCktPkdldEFjdGl2ZUVkaXRvcigp KQorICAgICB7CistI2lmIHd4Q0hFQ0tfVkVSU0lPTigzLCAwLCAwKQorICAgICAgICAgLy8gRXhl Y3V0ZSB0aGUgY29kZSB0byB1cGRhdGUgdGhlIHN0YXR1cyBiYXIgb3V0c2lkZSBvZiB0aGUgcGFp bnQgZXZlbnQgZm9yIHNjaW50aWxsYS4KKyAgICAgICAgIC8vIEV4ZWN1dGluZyB0aGlzIGZ1bmN0 aW9uIGRpcmVjdGx5IGluIHRoZSBldmVudCBoYW5kbGVyIGNhdXNlcyByZWRyYXcgcHJvYmxlbXMg b24gV2luZG93cy4KKyAgICAgICAgIENhbGxBZnRlcigmTWFpbkZyYW1lOjpEb1VwZGF0ZVN0YXR1 c0Jhcik7CistI2Vsc2UKKy0gICAgICAgIERvVXBkYXRlU3RhdHVzQmFyKCk7CistI2VuZGlmIC8v IGRlZmluZWQoX193eE1TV19fKSAmJiB3eENIRUNLX1ZFUlNJT04oMywgMCwgMCkKKyAgICAgfQor IAorICAgICBldmVudC5Ta2lwKCk7CitJbmRleDogc3JjL3NyYy9ub3RlYm9va3N0eWxlcy5jcHAK Kz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT0KKy0tLSBhL3NyYy9zcmMvbm90ZWJvb2tzdHlsZXMuY3BwCShyZXZpc2lvbiAx MjU3OSkKKysrKyBiL3NyYy9zcmMvbm90ZWJvb2tzdHlsZXMuY3BwCShyZXZpc2lvbiAxMjU4MCkK K0BAIC0xMywxNCArMTMsNiBAQAorICNpbmNsdWRlICJwcmVwLmgiCisgI2luY2x1ZGUgIm5vdGVi b29rc3R5bGVzLmgiCisgCistI2lmIGRlZmluZWQoX19XWEdUS19fKSAmJiAoVVNFX0dUS19OT1RF Qk9PSykgJiYgIXd4Q0hFQ0tfVkVSU0lPTigzLCAwLCAwKQorLSAgICAjZGVmaW5lIEdTb2NrZXQg R0xpYlNvY2tldAorLSAgICAjaW5jbHVkZSA8Z3RrL2d0ay5oPgorLSAgICAjdW5kZWYgR1NvY2tl dAorLSAgICAjaW5jbHVkZSA8d3gvYXJ0cHJvdi5oPgorLSAgICAjaW5jbHVkZSA8d3gvcmVuZGVy ZXIuaD4KKy0jZW5kaWYKKy0KKyAjaW5jbHVkZSA8d3gvZGMuaD4KKyAjaW5jbHVkZSA8d3gvZGNj bGllbnQuaD4KKyAKK0BAIC00MiwxNSArMzQsOSBAQAorIHsKKyAgICAgTmJTdHlsZVZDNzEqIGNs b25lID0gbmV3IE5iU3R5bGVWQzcxKCk7CisgCistI2lmIHd4Q0hFQ0tfVkVSU0lPTigzLCAwLCAw KQorICAgICBjbG9uZS0+U2V0Tm9ybWFsRm9udChtX25vcm1hbEZvbnQpOworICAgICBjbG9uZS0+ U2V0U2VsZWN0ZWRGb250KG1fc2VsZWN0ZWRGb250KTsKKyAgICAgY2xvbmUtPlNldE1lYXN1cmlu Z0ZvbnQobV9tZWFzdXJpbmdGb250KTsKKy0jZWxzZQorLSAgICBjbG9uZS0+U2V0Tm9ybWFsRm9u dChtX25vcm1hbF9mb250KTsKKy0gICAgY2xvbmUtPlNldFNlbGVjdGVkRm9udChtX3NlbGVjdGVk X2ZvbnQpOworLSAgICBjbG9uZS0+U2V0TWVhc3VyaW5nRm9udChtX21lYXN1cmluZ19mb250KTsK Ky0jZW5kaWYKKyAKKyAgICAgcmV0dXJuIGNsb25lOworIH0KK0BAIC03NSwxMSArNjEsNyBAQAor ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsb3NlX2J1dHRvbl9zdGF0ZSwKKyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB4X2V4dGVudCk7CisgCistI2lmIHd4Q0hF Q0tfVkVSU0lPTigzLCAwLCAwKQorICAgICB3eENvb3JkIHRhYl9oZWlnaHQgPSBtX3RhYkN0cmxI ZWlnaHQgLSAzOworLSNlbHNlCistICAgIHd4Q29vcmQgdGFiX2hlaWdodCA9IG1fdGFiX2N0cmxf aGVpZ2h0IC0gMzsKKy0jZW5kaWYKKyAgICAgd3hDb29yZCB0YWJfd2lkdGggPSB0YWJfc2l6ZS54 OworICAgICB3eENvb3JkIHRhYl94ID0gaW5fcmVjdC54OworICAgICB3eENvb3JkIHRhYl95ID0g aW5fcmVjdC55ICsgaW5fcmVjdC5oZWlnaHQgLSB0YWJfaGVpZ2h0OworQEAgLTE2NiwxNyArMTQ4 LDEwIEBACisgICAgIHd4Q29vcmQgdGV4dHg7CisgICAgIHd4Q29vcmQgdGV4dHk7CisgICAgIGlm IChwYWdlLmFjdGl2ZSkKKy0jaWYgd3hDSEVDS19WRVJTSU9OKDMsIDAsIDApCisgICAgICAgICBk Yy5TZXRGb250KG1fc2VsZWN0ZWRGb250KTsKKy0jZWxzZQorLSAgICAgICAgZGMuU2V0Rm9udCht X3NlbGVjdGVkX2ZvbnQpOworLSNlbmRpZgorICAgICBlbHNlCistI2lmIHd4Q0hFQ0tfVkVSU0lP TigzLCAwLCAwKQorICAgICAgICAgZGMuU2V0Rm9udChtX25vcm1hbEZvbnQpOworLSNlbHNlCist ICAgICAgICBkYy5TZXRGb250KG1fbm9ybWFsX2ZvbnQpOworLSNlbmRpZgorKworICAgICBkYy5H ZXRUZXh0RXh0ZW50KGNhcHRpb24sICZ0ZXh0eCwgJnRleHR5KTsKKyAgICAgLy8gZHJhdyB0YWIg dGV4dAorICAgICBkYy5TZXRUZXh0Rm9yZWdyb3VuZCh3eFN5c3RlbVNldHRpbmdzOjpHZXRDb2xv dXIod3hTWVNfQ09MT1VSX0JUTlRFWFQpKTsKK0BAIC0xODYsMjEgKzE2MSwxMiBAQAorICAgICAv LyBkcmF3ICd4JyBvbiB0YWIgKGlmIGVuYWJsZWQpCisgICAgIGlmIChjbG9zZV9idXR0b25fc3Rh dGUgIT0gd3hBVUlfQlVUVE9OX1NUQVRFX0hJRERFTikKKyAgICAgeworLSNpZiB3eENIRUNLX1ZF UlNJT04oMywgMCwgMCkKKyAgICAgICAgIGludCBjbG9zZV9idXR0b25fd2lkdGggPSBtX2FjdGl2 ZUNsb3NlQm1wLkdldFdpZHRoKCk7CisgICAgICAgICB3eEJpdG1hcCBibXAgPSBtX2Rpc2FibGVk Q2xvc2VCbXA7CistI2Vsc2UKKy0gICAgICAgIGludCBjbG9zZV9idXR0b25fd2lkdGggPSBtX2Fj dGl2ZV9jbG9zZV9ibXAuR2V0V2lkdGgoKTsKKy0gICAgICAgIHd4Qml0bWFwIGJtcCA9IG1fZGlz YWJsZWRfY2xvc2VfYm1wOworLSNlbmRpZgorIAorICAgICAgICAgaWYgKChjbG9zZV9idXR0b25f c3RhdGUgPT0gd3hBVUlfQlVUVE9OX1NUQVRFX0hPVkVSKSB8fAorICAgICAgICAgICAgICAgICAg ICAgKGNsb3NlX2J1dHRvbl9zdGF0ZSA9PSB3eEFVSV9CVVRUT05fU1RBVEVfUFJFU1NFRCkpCist I2lmIHd4Q0hFQ0tfVkVSU0lPTigzLCAwLCAwKQorICAgICAgICAgICAgIGJtcCA9IG1fYWN0aXZl Q2xvc2VCbXA7CistI2Vsc2UKKy0gICAgICAgICAgICBibXAgPSBtX2FjdGl2ZV9jbG9zZV9ibXA7 CistI2VuZGlmCisgCisgICAgICAgICB3eFJlY3QgcmVjdCh0YWJfeCArIHRhYl93aWR0aCAtIGNs b3NlX2J1dHRvbl93aWR0aCAtIDMsCisgICAgICAgICAgICAgICAgICAgICBkcmF3bl90YWJfeW9m ZiArIChkcmF3bl90YWJfaGVpZ2h0IC8gMikgLSAoYm1wLkdldEhlaWdodCgpIC8gMiksCitAQCAt MjI3LDExICsxOTMsNyBAQAorIC8vICAgIG1fcmVxdWVzdGVkX3RhYmN0cmxfaGVpZ2h0ID0gLTE7 CisgLy8gICAgbV90YWJfY3RybF9oZWlnaHQgPSAtMTsKKyAgICAgd3hDbGllbnREQyBkYyh3bmQp OworLSNpZiB3eENIRUNLX1ZFUlNJT04oMywgMCwgMCkKKyAgICAgZGMuU2V0Rm9udChtX21lYXN1 cmluZ0ZvbnQpOworLSNlbHNlCistICAgIGRjLlNldEZvbnQobV9tZWFzdXJpbmdfZm9udCk7Cist I2VuZGlmCisgICAgIGludCB4X2V4dCA9IDA7CisgICAgIHd4U2l6ZSBzID0gR2V0VGFiU2l6ZShk Yywgd25kLCB3eFQoIkFCQ0RFRkdISWoiKSwgd3hOdWxsQml0bWFwLCB0cnVlLAorICAgICAgICAg ICAgICAgICAgICAgICAgICAgICB3eEFVSV9CVVRUT05fU1RBVEVfSElEREVOLCAmeF9leHQpOwor QEAgLTI0NiwxNSArMjA4LDkgQEAKKyB7CisgICAgIE5iU3R5bGVGRjIqIGNsb25lID0gbmV3IE5i U3R5bGVGRjIoKTsKKyAKKy0jaWYgd3hDSEVDS19WRVJTSU9OKDMsIDAsIDApCisgICAgIGNsb25l LT5TZXROb3JtYWxGb250KG1fbm9ybWFsRm9udCk7CisgICAgIGNsb25lLT5TZXRTZWxlY3RlZEZv bnQobV9zZWxlY3RlZEZvbnQpOworICAgICBjbG9uZS0+U2V0TWVhc3VyaW5nRm9udChtX21lYXN1 cmluZ0ZvbnQpOworLSNlbHNlCistICAgIGNsb25lLT5TZXROb3JtYWxGb250KG1fbm9ybWFsX2Zv bnQpOworLSAgICBjbG9uZS0+U2V0U2VsZWN0ZWRGb250KG1fc2VsZWN0ZWRfZm9udCk7CistICAg IGNsb25lLT5TZXRNZWFzdXJpbmdGb250KG1fbWVhc3VyaW5nX2ZvbnQpOworLSNlbmRpZgorIAor ICAgICByZXR1cm4gY2xvbmU7CisgfQorQEAgLTI3MiwxMSArMjI4LDcgQEAKKyAgICAgd3hTaXpl IHRhYl9zaXplID0gR2V0VGFiU2l6ZShkYywgd25kLCBwYWdlLmNhcHRpb24sIHBhZ2UuYml0bWFw LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZ2UuYWN0aXZlLCBjbG9z ZV9idXR0b25fc3RhdGUsIHhfZXh0ZW50KTsKKyAKKy0jaWYgd3hDSEVDS19WRVJTSU9OKDMsIDAs IDApCisgICAgIHd4Q29vcmQgdGFiX2hlaWdodCA9IG1fdGFiQ3RybEhlaWdodCAtIDI7CistI2Vs c2UKKy0gICAgd3hDb29yZCB0YWJfaGVpZ2h0ID0gbV90YWJfY3RybF9oZWlnaHQgLSAyOworLSNl bmRpZgorICAgICB3eENvb3JkIHRhYl93aWR0aCA9IHRhYl9zaXplLng7CisgICAgIHd4Q29vcmQg dGFiX3ggPSBpbl9yZWN0Lng7CisgICAgIHd4Q29vcmQgdGFiX3kgPSBpbl9yZWN0LnkgKyBpbl9y ZWN0LmhlaWdodCAtIHRhYl9oZWlnaHQ7CitAQCAtMzYwLDE3ICszMTIsMTAgQEAKKyAgICAgd3hD b29yZCB0ZXh0eDsKKyAgICAgd3hDb29yZCB0ZXh0eTsKKyAgICAgaWYgKHBhZ2UuYWN0aXZlKQor LSNpZiB3eENIRUNLX1ZFUlNJT04oMywgMCwgMCkKKyAgICAgICAgIGRjLlNldEZvbnQobV9zZWxl Y3RlZEZvbnQpOworLSNlbHNlCistICAgICAgICBkYy5TZXRGb250KG1fc2VsZWN0ZWRfZm9udCk7 CistI2VuZGlmCisgICAgIGVsc2UKKy0jaWYgd3hDSEVDS19WRVJTSU9OKDMsIDAsIDApCisgICAg ICAgICBkYy5TZXRGb250KG1fbm9ybWFsRm9udCk7CistI2Vsc2UKKy0gICAgICAgIGRjLlNldEZv bnQobV9ub3JtYWxfZm9udCk7CistI2VuZGlmCisrCisgICAgIGRjLkdldFRleHRFeHRlbnQoY2Fw dGlvbiwgJnRleHR4LCAmdGV4dHkpOworICAgICAvLyBkcmF3IHRhYiB0ZXh0CisgICAgIGRjLlNl dFRleHRGb3JlZ3JvdW5kKHd4U3lzdGVtU2V0dGluZ3M6OkdldENvbG91cih3eFNZU19DT0xPVVJf QlROVEVYVCkpOworQEAgLTM4MCwyMSArMzI1LDEyIEBACisgICAgIC8vIGRyYXcgJ3gnIG9uIHRh YiAoaWYgZW5hYmxlZCkKKyAgICAgaWYgKGNsb3NlX2J1dHRvbl9zdGF0ZSAhPSB3eEFVSV9CVVRU T05fU1RBVEVfSElEREVOKQorICAgICB7CistI2lmIHd4Q0hFQ0tfVkVSU0lPTigzLCAwLCAwKQor ICAgICAgICAgaW50IGNsb3NlX2J1dHRvbl93aWR0aCA9IG1fYWN0aXZlQ2xvc2VCbXAuR2V0V2lk dGgoKTsKKyAgICAgICAgIHd4Qml0bWFwIGJtcCA9IG1fZGlzYWJsZWRDbG9zZUJtcDsKKy0jZWxz ZQorLSAgICAgICAgaW50IGNsb3NlX2J1dHRvbl93aWR0aCA9IG1fYWN0aXZlX2Nsb3NlX2JtcC5H ZXRXaWR0aCgpOworLSAgICAgICAgd3hCaXRtYXAgYm1wID0gbV9kaXNhYmxlZF9jbG9zZV9ibXA7 CistI2VuZGlmCisgCisgICAgICAgICBpZiAoKGNsb3NlX2J1dHRvbl9zdGF0ZSA9PSB3eEFVSV9C VVRUT05fU1RBVEVfSE9WRVIpIHx8CisgICAgICAgICAgICAgICAgICAgICAoY2xvc2VfYnV0dG9u X3N0YXRlID09IHd4QVVJX0JVVFRPTl9TVEFURV9QUkVTU0VEKSkKKy0jaWYgd3hDSEVDS19WRVJT SU9OKDMsIDAsIDApCisgICAgICAgICAgICAgYm1wID0gbV9hY3RpdmVDbG9zZUJtcDsKKy0jZWxz ZQorLSAgICAgICAgICAgIGJtcCA9IG1fYWN0aXZlX2Nsb3NlX2JtcDsKKy0jZW5kaWYKKyAKKyAg ICAgICAgIHd4UmVjdCByZWN0KHRhYl94ICsgdGFiX3dpZHRoIC0gY2xvc2VfYnV0dG9uX3dpZHRo IC0gMywKKyAgICAgICAgICAgICAgICAgICAgIGRyYXduX3RhYl95b2ZmICsgKGRyYXduX3RhYl9o ZWlnaHQgLyAyKSAtIChibXAuR2V0SGVpZ2h0KCkgLyAyKSwKK0BAIC00MjEsNTMzICszNTcsOSBA QAorIC8vICAgIG1fcmVxdWVzdGVkX3RhYmN0cmxfaGVpZ2h0ID0gLTE7CisgLy8gICAgbV90YWJf Y3RybF9oZWlnaHQgPSAtMTsKKyAgICAgd3hDbGllbnREQyBkYyh3bmQpOworLSNpZiB3eENIRUNL X1ZFUlNJT04oMywgMCwgMCkKKyAgICAgZGMuU2V0Rm9udChtX21lYXN1cmluZ0ZvbnQpOworLSNl bHNlCistICAgIGRjLlNldEZvbnQobV9tZWFzdXJpbmdfZm9udCk7CistI2VuZGlmCisgICAgIGlu dCB4X2V4dCA9IDA7CisgICAgIHd4U2l6ZSBzID0gR2V0VGFiU2l6ZShkYywgd25kLCB3eFQoIkFC Q0RFRkdISWoiKSwgd3hOdWxsQml0bWFwLCB0cnVlLAorICAgICAgICAgICAgICAgICAgICAgICAg ICAgICB3eEFVSV9CVVRUT05fU1RBVEVfSElEREVOLCAmeF9leHQpOworICAgICByZXR1cm4gcy55 ICsgNjsKKyB9CistCistI2lmIGRlZmluZWQoX19XWEdUS19fKSAmJiAoVVNFX0dUS19OT1RFQk9P SykgJiYgIXd4Q0hFQ0tfVkVSU0lPTigzLCAwLCAwKQorLQorLW5hbWVzcGFjZQorLXsKKy0KKy1z dGF0aWMgR3RrV2lkZ2V0ICpnX3dpbmRvdyA9IG51bGxwdHI7Cistc3RhdGljIEd0a1dpZGdldCAq Z19jb250YWluZXIgPSBudWxscHRyOworLXN0YXRpYyBHdGtXaWRnZXQgKmdfbm90ZWJvb2sgPSBu dWxscHRyOworLXN0YXRpYyBHdGtXaWRnZXQgKmdfYnV0dG9uID0gbnVsbHB0cjsKKy1zdGF0aWMg aW50IHNfQ2xvc2VJY29uU2l6ZSA9IDE2OyAvLyBkZWZhdWx0IHNpemUKKy0KKy1zdGF0aWMgdm9p ZCBzZXR1cF93aWRnZXRfcHJvdG90eXBlKEd0a1dpZGdldCogd2lkZ2V0KQorLXsKKy0gICAgaWYg KCFnX3dpbmRvdykKKy0gICAgeworLSAgICAgICAgZ193aW5kb3cgPSBndGtfd2luZG93X25ldyhH VEtfV0lORE9XX1BPUFVQKTsKKy0gICAgICAgIGd0a193aWRnZXRfcmVhbGl6ZShnX3dpbmRvdyk7 CistICAgIH0KKy0gICAgaWYgKCFnX2NvbnRhaW5lcikKKy0gICAgeworLSAgICAgICAgZ19jb250 YWluZXIgPSBndGtfZml4ZWRfbmV3KCk7CistICAgICAgICBndGtfY29udGFpbmVyX2FkZChHVEtf Q09OVEFJTkVSKGdfd2luZG93KSwgZ19jb250YWluZXIpOworLSAgICB9CistCistICAgIGd0a19j b250YWluZXJfYWRkKEdUS19DT05UQUlORVIoZ19jb250YWluZXIpLCB3aWRnZXQpOworLSAgICBn dGtfd2lkZ2V0X3JlYWxpemUod2lkZ2V0KTsKKy19CistCistc3RhdGljIEd0a1N0eWxlICogZ2V0 X3N0eWxlX2J1dHRvbigpCisteworLSAgICBpZiAoIWdfYnV0dG9uKQorLSAgICB7CistICAgICAg ICBnX2J1dHRvbiA9IGd0a19idXR0b25fbmV3KCk7CistICAgICAgICBzZXR1cF93aWRnZXRfcHJv dG90eXBlKGdfYnV0dG9uKTsKKy0gICAgfQorLSAgICByZXR1cm4gZ3RrX3dpZGdldF9nZXRfc3R5 bGUoZ19idXR0b24pOworLX0KKy0KKy1zdGF0aWMgR3RrU3R5bGUgKiBnZXRfc3R5bGVfbm90ZWJv b2soKQorLXsKKy0gICAgaWYgKCFnX25vdGVib29rKQorLSAgICB7CistICAgICAgICBnX25vdGVi b29rID0gZ3RrX25vdGVib29rX25ldygpOworLSAgICAgICAgc2V0dXBfd2lkZ2V0X3Byb3RvdHlw ZShnX25vdGVib29rKTsKKy0gICAgfQorLSAgICByZXR1cm4gZ3RrX3dpZGdldF9nZXRfc3R5bGUo Z19ub3RlYm9vayk7CistfQorLQorLX0KKy0KKy1OYlN0eWxlR1RLOjpOYlN0eWxlR1RLKCk6Cist ICAgIG1fWHRoaWNrbmVzcygwKSwKKy0gICAgbV9ZdGhpY2tuZXNzKDApLAorLSAgICBtX1RhYkhC b3JkZXIoMCksCistICAgIG1fVGFiVkJvcmRlcigwKQorLQorLXsKKy19CistCistd3hBdWlUYWJB cnQqIE5iU3R5bGVHVEs6OkNsb25lKCkKKy17CistICAgIE5iU3R5bGVHVEsqIGNsb25lID0gbmV3 IE5iU3R5bGVHVEsoKTsKKy0KKy0jaWYgd3hDSEVDS19WRVJTSU9OKDMsIDAsIDApCistICAgIGNs b25lLT5TZXROb3JtYWxGb250KG1fbm9ybWFsRm9udCk7CistICAgIGNsb25lLT5TZXRTZWxlY3Rl ZEZvbnQobV9ub3JtYWxGb250KTsKKy0gICAgY2xvbmUtPlNldE1lYXN1cmluZ0ZvbnQobV9ub3Jt YWxGb250KTsKKy0jZWxzZQorLSAgICBjbG9uZS0+U2V0Tm9ybWFsRm9udChtX25vcm1hbF9mb250 KTsKKy0gICAgY2xvbmUtPlNldFNlbGVjdGVkRm9udChtX25vcm1hbF9mb250KTsKKy0gICAgY2xv bmUtPlNldE1lYXN1cmluZ0ZvbnQobV9ub3JtYWxfZm9udCk7CistI2VuZGlmCistCistICAgIHJl dHVybiBjbG9uZTsKKy19CistCistdm9pZCBOYlN0eWxlR1RLOjpEcmF3QmFja2dyb3VuZCh3eERD JiBkYywgd3hXaW5kb3cqIHduZCwgY29uc3Qgd3hSZWN0JiByZWN0KQorLXsKKy0gICAgR3RrU3R5 bGUqIHN0eWxlX25vdGVib29rID0gZ2V0X3N0eWxlX25vdGVib29rKCk7CistICAgIEd0a05vdGVi b29rKiBub3RlYm9vayA9IEdUS19OT1RFQk9PSyAoZ19ub3RlYm9vayk7CistCistICAgIC8vIGlm IG9uZSBvZiB0aGUgcGFyYW1ldGVycyBoYXZlIGNoYW5nZWQsIHRoZSBoZWlnaHQgbmVlZHMgdG8g YmUgcmVjYWxjdWxhdGVkLCBzbyB3ZSBmb3JjZSBpdCwKKy0gICAgaWYobV9YdGhpY2tuZXNzICAh PSBzdHlsZV9ub3RlYm9vay0+eHRoaWNrbmVzcyB8fAorLSAgICAgICBtX1l0aGlja25lc3MgICE9 IHN0eWxlX25vdGVib29rLT55dGhpY2tuZXNzIHx8CistICAgICAgIG1fVGFiVkJvcmRlciAhPSBu b3RlYm9vay0+dGFiX3Zib3JkZXIgfHwKKy0gICAgICAgbV9UYWJIQm9yZGVyICE9IG5vdGVib29r LT50YWJfaGJvcmRlcikKKy0gICAgeworLSAgICAgICAgbV9YdGhpY2tuZXNzICA9IHN0eWxlX25v dGVib29rLT54dGhpY2tuZXNzOworLSAgICAgICAgbV9ZdGhpY2tuZXNzICA9IHN0eWxlX25vdGVi b29rLT55dGhpY2tuZXNzOworLSAgICAgICAgbV9UYWJWQm9yZGVyID0gbm90ZWJvb2stPnRhYl92 Ym9yZGVyOworLSAgICAgICAgbV9UYWJIQm9yZGVyID0gbm90ZWJvb2stPnRhYl9oYm9yZGVyOwor LSAgICAgICAgd3hBdWlOb3RlYm9vayogbmIgPSBudWxscHRyOworLSAgICAgICAgaWYod25kKQor LSAgICAgICAgICAgICBuYiA9IChjYkF1aU5vdGVib29rKil3bmQtPkdldFBhcmVudCgpOworLSAg ICAgICAgaWYobmIpCistICAgICAgICAgICAgbmItPlNldFRhYkN0cmxIZWlnaHQoLTEpOworLSAg ICB9CistI2lmIHd4Q0hFQ0tfVkVSU0lPTigzLCAwLCAwKQorLSAgICB3eEdUS0RDSW1wbCAqaW1w bGRjID0gKHd4R1RLRENJbXBsKikgZGMuR2V0SW1wbCgpOworLSAgICBHZGtXaW5kb3cqIHBXaW4g PSBpbXBsZGMtPkdldEdES1dpbmRvdygpOworLSNlbHNlCistICAgIEdka1dpbmRvdyogcFdpbiA9 IGRjLkdldEdES1dpbmRvdygpOworLSNlbmRpZgorLSAgICBndGtfc3R5bGVfYXBwbHlfZGVmYXVs dF9iYWNrZ3JvdW5kKHN0eWxlX25vdGVib29rLCBwV2luLCAxLCBHVEtfU1RBVEVfTk9STUFMLCBu dWxscHRyLAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlY3QueCwg cmVjdC55LCByZWN0LndpZHRoLCByZWN0LmhlaWdodCk7CistfQorLQorLXZvaWQgQnV0dG9uU3Rh dGVBbmRTaGFkb3coaW50IGJ1dHRvbl9zdGF0ZSwgR3RrU3RhdGVUeXBlICZzdGF0ZSwgR3RrU2hh ZG93VHlwZSAmc2hhZG93KQorLXsKKy0KKy0gICAgaWYgKGJ1dHRvbl9zdGF0ZSAmIHd4QVVJX0JV VFRPTl9TVEFURV9ESVNBQkxFRCkKKy0gICAgeworLSAgICAgICAgc3RhdGUgPSBHVEtfU1RBVEVf SU5TRU5TSVRJVkU7CistICAgICAgICBzaGFkb3cgPSBHVEtfU0hBRE9XX0VUQ0hFRF9JTjsKKy0g ICAgfQorLSAgICBlbHNlIGlmIChidXR0b25fc3RhdGUgJiB3eEFVSV9CVVRUT05fU1RBVEVfSE9W RVIpCistICAgIHsKKy0gICAgICAgIHN0YXRlID0gR1RLX1NUQVRFX1BSRUxJR0hUOworLSAgICAg ICAgc2hhZG93ID0gR1RLX1NIQURPV19PVVQ7CistICAgIH0KKy0gICAgZWxzZSBpZiAoYnV0dG9u X3N0YXRlICYgd3hBVUlfQlVUVE9OX1NUQVRFX1BSRVNTRUQpCistICAgIHsKKy0gICAgICAgIHN0 YXRlID0gR1RLX1NUQVRFX0FDVElWRTsKKy0gICAgICAgIHNoYWRvdyA9IEdUS19TSEFET1dfSU47 CistICAgIH0KKy0gICAgZWxzZQorLSAgICB7CistICAgICAgICBzdGF0ZSA9IEdUS19TVEFURV9O T1JNQUw7CistICAgICAgICBzaGFkb3cgPSBHVEtfU0hBRE9XX09VVDsKKy0gICAgfQorLX0KKy0K Ky13eFJlY3QgRHJhd0Nsb3NlQnV0dG9uKHd4REMmIGRjLAorLSAgICAgICAgICAgICAgICAgICAg ICAgR3RrV2lkZ2V0ICp3aWRnZXQsCistICAgICAgICAgICAgICAgICAgICAgICBpbnQgYnV0dG9u X3N0YXRlLAorLSAgICAgICAgICAgICAgICAgICAgICAgd3hSZWN0IGNvbnN0ICZpbl9yZWN0LAor LSAgICAgICAgICAgICAgICAgICAgICAgaW50IG9yaWVudGF0aW9uLAorLSAgICAgICAgICAgICAg ICAgICAgICAgR2RrUmVjdGFuZ2xlKiBjbGlwUmVjdCkKKy17CistICAgIEd0a1N0eWxlICpzdHls ZV9idXR0b24gPSBnZXRfc3R5bGVfYnV0dG9uKCk7CistICAgIGludCB4dGhpY2tuZXNzID0gc3R5 bGVfYnV0dG9uLT54dGhpY2tuZXNzOworLSAgICBpbnQgeXRoaWNrbmVzcyA9IHN0eWxlX2J1dHRv bi0+eXRoaWNrbmVzczsKKy0KKy0gICAgd3hCaXRtYXAgYm1wOworLSAgICBibXAuU2V0UGl4YnVm KGd0a193aWRnZXRfcmVuZGVyX2ljb24od2lkZ2V0LCBHVEtfU1RPQ0tfQ0xPU0UsIEdUS19JQ09O X1NJWkVfU01BTExfVE9PTEJBUiwgInRhYiIpKTsKKy0KKy0gICAgaWYoYm1wLkdldFdpZHRoKCkg IT0gc19DbG9zZUljb25TaXplIHx8IGJtcC5HZXRIZWlnaHQoKSAhPSBzX0Nsb3NlSWNvblNpemUp CistICAgIHsKKy0gICAgICAgIHd4SW1hZ2UgaW1nID0gYm1wLkNvbnZlcnRUb0ltYWdlKCk7Cist ICAgICAgICBpbWcuUmVzY2FsZShzX0Nsb3NlSWNvblNpemUsIHNfQ2xvc2VJY29uU2l6ZSk7Cist ICAgICAgICBibXAgPSBpbWc7CistICAgIH0KKy0KKy0gICAgaW50IGJ1dHRvbl9zaXplID0gc19D bG9zZUljb25TaXplICsgMiAqIHh0aGlja25lc3M7CistCistICAgIHd4UmVjdCBvdXRfcmVjdDsK Ky0KKy0gICAgaWYgKG9yaWVudGF0aW9uID09IHd4TEVGVCkKKy0gICAgICAgIG91dF9yZWN0Lngg PSBpbl9yZWN0LnggLSB5dGhpY2tuZXNzOworLSAgICBlbHNlCistICAgICAgICBvdXRfcmVjdC54 ID0gaW5fcmVjdC54ICsgaW5fcmVjdC53aWR0aCAtIGJ1dHRvbl9zaXplIC0geXRoaWNrbmVzczsK Ky0KKy0gICAgb3V0X3JlY3QueSA9IGluX3JlY3QueSArIChpbl9yZWN0LmhlaWdodCAtIGJ1dHRv bl9zaXplKSAvIDI7CistICAgIG91dF9yZWN0LndpZHRoID0gYnV0dG9uX3NpemU7CistICAgIG91 dF9yZWN0LmhlaWdodCA9IGJ1dHRvbl9zaXplOworLQorLSNpZiB3eENIRUNLX1ZFUlNJT04oMywg MCwgMCkKKy0gICAgd3hHVEtEQ0ltcGwgKmltcGxkYyA9ICh3eEdUS0RDSW1wbCopIGRjLkdldElt cGwoKTsKKy0gICAgR2RrV2luZG93KiBwV2luID0gaW1wbGRjLT5HZXRHREtXaW5kb3coKTsKKy0j ZWxzZQorLSAgICBHZGtXaW5kb3cqIHBXaW4gPSBkYy5HZXRHREtXaW5kb3coKTsKKy0jZW5kaWYK Ky0KKy0gICAgaWYgKGJ1dHRvbl9zdGF0ZSA9PSB3eEFVSV9CVVRUT05fU1RBVEVfSE9WRVIpCist ICAgIHsKKy0gICAgICAgIGd0a19wYWludF9ib3goc3R5bGVfYnV0dG9uLCBwV2luLAorLSAgICAg ICAgICAgICAgICAgICAgICBHVEtfU1RBVEVfUFJFTElHSFQsIEdUS19TSEFET1dfT1VULCBjbGlw UmVjdCwgd2lkZ2V0LCAiYnV0dG9uIiwKKy0gICAgICAgICAgICAgICAgICAgICAgb3V0X3JlY3Qu eCwgb3V0X3JlY3QueSwgb3V0X3JlY3Qud2lkdGgsIG91dF9yZWN0LmhlaWdodCk7CistICAgIH0K Ky0gICAgZWxzZSBpZiAoYnV0dG9uX3N0YXRlID09IHd4QVVJX0JVVFRPTl9TVEFURV9QUkVTU0VE KQorLSAgICB7CistICAgICAgICBndGtfcGFpbnRfYm94KHN0eWxlX2J1dHRvbiwgcFdpbiwKKy0g ICAgICAgICAgICAgICAgICAgICAgR1RLX1NUQVRFX0FDVElWRSwgR1RLX1NIQURPV19JTiwgY2xp cFJlY3QsIHdpZGdldCwgImJ1dHRvbiIsCistICAgICAgICAgICAgICAgICAgICAgIG91dF9yZWN0 LngsIG91dF9yZWN0LnksIG91dF9yZWN0LndpZHRoLCBvdXRfcmVjdC5oZWlnaHQpOworLSAgICB9 CistCistCistICAgIGRjLkRyYXdCaXRtYXAoYm1wLCBvdXRfcmVjdC54ICsgeHRoaWNrbmVzcywg b3V0X3JlY3QueSArIHl0aGlja25lc3MsIHRydWUpOworLQorLSAgICByZXR1cm4gb3V0X3JlY3Q7 CistfQorLQorLXZvaWQgTmJTdHlsZUdUSzo6RHJhd1RhYih3eERDJiBkYywgd3hXaW5kb3cqIHdu ZCwgY29uc3Qgd3hBdWlOb3RlYm9va1BhZ2UmIHBhZ2UsCistICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBjb25zdCB3eFJlY3QmIGluX3JlY3QsIGludCBjbG9zZV9idXR0b25fc3RhdGUsIHd4 UmVjdCogb3V0X3RhYl9yZWN0LAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd3hSZWN0 KiBvdXRfYnV0dG9uX3JlY3QsIGludCogeF9leHRlbnQpCisteworLSAgICBHdGtXaWRnZXQgKndp ZGdldCA9IHduZC0+R2V0SGFuZGxlKCk7CistICAgIEd0a1N0eWxlICpzdHlsZV9ub3RlYm9vayA9 IGdldF9zdHlsZV9ub3RlYm9vaygpOworLQorLSAgICB3eFJlY3QgY29uc3QgJndpbmRvd19yZWN0 ID0gd25kLT5HZXRSZWN0KCk7CistCistICAgIGludCBmb2N1c193aWR0aCA9IDA7CistCistICAg IGd0a193aWRnZXRfc3R5bGVfZ2V0KGdfbm90ZWJvb2ssCistICAgICAgICAgICAgICAgICAgICAg ICAgICJmb2N1cy1saW5lLXdpZHRoIiwgJmZvY3VzX3dpZHRoLAorLSAgICAgICAgICAgICAgICAg ICAgICAgICBOVUxMKTsKKy0KKy0gICAgaW50IHRhYl9wb3M7CistICAgIGlmIChtX2ZsYWdzICZ3 eEFVSV9OQl9CT1RUT00pCistICAgICAgICB0YWJfcG9zID0gd3hBVUlfTkJfQk9UVE9NOworLSAg ICBlbHNlIC8vaWYgKG1fZmxhZ3MgJiB3eEFVSV9OQl9UT1ApIHt9CistICAgICAgICB0YWJfcG9z ID0gd3hBVUlfTkJfVE9QOworLQorLSAgICAvLyBUT0RPOiBlbHNlIGlmIChtX2ZsYWdzICZ3eEFV SV9OQl9MRUZUKSB7fQorLSAgICAvLyBUT0RPOiBlbHNlIGlmIChtX2ZsYWdzICZ3eEFVSV9OQl9S SUdIVCkge30KKy0KKy0gICAgLy8gZmlndXJlIG91dCB0aGUgc2l6ZSBvZiB0aGUgdGFiCistICAg IHd4U2l6ZSB0YWJfc2l6ZSA9IEdldFRhYlNpemUoZGMsIHduZCwgcGFnZS5jYXB0aW9uLCBwYWdl LmJpdG1hcCwKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWdlLmFjdGl2 ZSwgY2xvc2VfYnV0dG9uX3N0YXRlLCB4X2V4dGVudCk7CistCistICAgIHd4UmVjdCB0YWJfcmVj dCA9IGluX3JlY3Q7CistICAgIHRhYl9yZWN0LndpZHRoID0gdGFiX3NpemUueDsKKy0gICAgdGFi X3JlY3QuaGVpZ2h0ID0gdGFiX3NpemUueTsKKy0gICAgdGFiX3JlY3QueSArPSAyICogbV9UYWJI Qm9yZGVyOworLQorLSAgICBpZiAocGFnZS5hY3RpdmUpCistICAgICAgICB0YWJfcmVjdC5oZWln aHQgKz0gMiAqIG1fVGFiSEJvcmRlcjsKKy0jaWYgd3hDSEVDS19WRVJTSU9OKDMsIDAsIDApCist ICAgIC8vIGlmIG5vIGJpdG1hcCBpcyBzZXQsIHdlIG5lZWQgYSB0aW55IGNvcnJlY3Rpb24KKy0g ICAgaWYgKCEgcGFnZS5iaXRtYXAuSXNPaygpKQorLSAgICAgICAgdGFiX3JlY3QuaGVpZ2h0ICs9 IDE7CistI2VuZGlmCistCistICAgIGludCBnYXBfcmVjdF9oZWlnaHQgPSA2ICogbV9UYWJIQm9y ZGVyOworLSAgICBpbnQgZ2FwX3JlY3RfeCA9IDEsIGdhcF9zdGFydCA9IDAsIGdhcF93aWR0aCA9 IDA7CistICAgIGludCBnYXBfcmVjdF95ID0gdGFiX3JlY3QueSAtIGdhcF9yZWN0X2hlaWdodDsK Ky0gICAgaW50IGdhcF9yZWN0X3dpZHRoID0gd2luZG93X3JlY3Qud2lkdGg7CistCistICAgIHN3 aXRjaCAodGFiX3BvcykKKy0gICAgeworLSAgICAgICAgY2FzZSB3eEFVSV9OQl9UT1A6CistICAg ICAgICAgICAgdGFiX3JlY3QueSAtPSAyICogbV9UYWJIQm9yZGVyOworLSAgICAgICAgICAgIGlm ICghcGFnZS5hY3RpdmUpCistICAgICAgICAgICAgICAgIHRhYl9yZWN0LnkgKz0gMiAqIG1fVGFi SEJvcmRlcjsKKy0gICAgICAgICAgICBnYXBfcmVjdF95ID0gdGFiX3JlY3QueSArIHRhYl9yZWN0 LmhlaWdodCAtIG1fVGFiSEJvcmRlciAvIDI7CistICAgICAgICAgICAgLy8gZmFsbCB0aHJvdWdo CistICAgICAgICBjYXNlIHd4QVVJX05CX0JPVFRPTToKKy0gICAgICAgICAgICBnYXBfc3RhcnQg PSB0YWJfcmVjdC54IC0gbV9UYWJWQm9yZGVyIC8gMjsKKy0gICAgICAgICAgICBnYXBfd2lkdGgg PSB0YWJfcmVjdC53aWR0aDsKKy0gICAgICAgICAgICBicmVhazsKKy0gICAgICAgIGRlZmF1bHQ6 CistICAgICAgICAgICAgYnJlYWs7CistICAgIH0KKy0gICAgdGFiX3JlY3QueSArPSBtX1RhYkhC b3JkZXIgLyAyOworLSAgICBnYXBfcmVjdF95ICs9IG1fVGFiSEJvcmRlciAvIDI7CistCistICAg IGludCBwYWRkaW5nID0gZm9jdXNfd2lkdGggKyBtX1RhYkhCb3JkZXI7CistCistICAgIGludCBj bGlwX3dpZHRoID0gdGFiX3JlY3Qud2lkdGg7CistICAgIGlmICh0YWJfcmVjdC54ICsgdGFiX3Jl Y3Qud2lkdGggPiBpbl9yZWN0LnggKyBpbl9yZWN0LndpZHRoKQorLSAgICAgICAgY2xpcF93aWR0 aCA9IChpbl9yZWN0LnggKyBpbl9yZWN0LndpZHRoKSAtIHRhYl9yZWN0Lng7CistCistICAgIGRj LlNldENsaXBwaW5nUmVnaW9uKHRhYl9yZWN0LngsIHRhYl9yZWN0LnkgLSBtX1RhYlZCb3JkZXIs IGNsaXBfd2lkdGgsIHRhYl9yZWN0LmhlaWdodCArIG1fVGFiVkJvcmRlcik7CistCistICAgIEdk a1JlY3RhbmdsZSBhcmVhOworLSAgICBhcmVhLnggPSB0YWJfcmVjdC54IC0gbV9UYWJWQm9yZGVy OworLSAgICBhcmVhLnkgPSB0YWJfcmVjdC55IC0gMiAqIG1fVGFiSEJvcmRlcjsKKy0gICAgYXJl YS53aWR0aCA9IGNsaXBfd2lkdGggKyBtX1RhYlZCb3JkZXI7CistICAgIGFyZWEuaGVpZ2h0ID0g dGFiX3JlY3QuaGVpZ2h0ICsgMiAqIG1fVGFiSEJvcmRlcjsKKy0KKy0jaWYgd3hDSEVDS19WRVJT SU9OKDMsIDAsIDApCistICAgIHd4R1RLRENJbXBsICppbXBsZGMgPSAod3hHVEtEQ0ltcGwqKSBk Yy5HZXRJbXBsKCk7CistICAgIEdka1dpbmRvdyogcFdpbiA9IGltcGxkYy0+R2V0R0RLV2luZG93 KCk7CistI2Vsc2UKKy0gICAgR2RrV2luZG93KiBwV2luID0gZGMuR2V0R0RLV2luZG93KCk7Cist I2VuZGlmCistCistICAgIGlmICh0YWJfcG9zID09IHd4QVVJX05CX0JPVFRPTSkKKy0gICAgewor LSAgICAgICAgaWYgKHBhZ2UuYWN0aXZlKQorLSAgICAgICAgeworLSAgICAgICAgICAgIGd0a19w YWludF9ib3hfZ2FwKHN0eWxlX25vdGVib29rLCBwV2luLCBHVEtfU1RBVEVfTk9STUFMLCBHVEtf U0hBRE9XX09VVCwKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCB3aWRnZXQs ICJub3RlYm9vayIsCistICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2FwX3JlY3RfeCwg Z2FwX3JlY3RfeSwKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnYXBfcmVjdF93aWR0 aCwgZ2FwX3JlY3RfaGVpZ2h0LAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdUS19Q T1NfQk9UVE9NLCBnYXBfc3RhcnQgLCBnYXBfd2lkdGgpOworLSAgICAgICAgfQorLSAgICAgICAg Z3RrX3BhaW50X2V4dGVuc2lvbihzdHlsZV9ub3RlYm9vaywgcFdpbiwKKy0gICAgICAgICAgICAg ICAgICAgICAgICAgICBwYWdlLmFjdGl2ZSA/IEdUS19TVEFURV9OT1JNQUwgOiBHVEtfU1RBVEVf QUNUSVZFLCBHVEtfU0hBRE9XX09VVCwKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAmYXJl YSwgd2lkZ2V0LCAidGFiIiwKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICB0YWJfcmVjdC54 LCB0YWJfcmVjdC55LAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgIHRhYl9yZWN0LndpZHRo LCB0YWJfcmVjdC5oZWlnaHQsCistICAgICAgICAgICAgICAgICAgICAgICAgICAgR1RLX1BPU19U T1ApOworLSAgICB9CistICAgIGVsc2UKKy0gICAgeworLSAgICAgICAgaWYgKHBhZ2UuYWN0aXZl KQorLSAgICAgICAgeworLSAgICAgICAgICAgIGd0a19wYWludF9ib3hfZ2FwKHN0eWxlX25vdGVi b29rLCBwV2luLCBHVEtfU1RBVEVfTk9STUFMLCBHVEtfU0hBRE9XX09VVCwKKy0gICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBOVUxMLCB3aWRnZXQsICJub3RlYm9vayIsCistICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgZ2FwX3JlY3RfeCwgZ2FwX3JlY3RfeSwKKy0gICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBnYXBfcmVjdF93aWR0aCwgZ2FwX3JlY3RfaGVpZ2h0LAorLSAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdUS19QT1NfVE9QLCBnYXBfc3RhcnQgLCBnYXBf d2lkdGgpOworLSAgICAgICAgfQorLSAgICAgICAgZ3RrX3BhaW50X2V4dGVuc2lvbihzdHlsZV9u b3RlYm9vaywgcFdpbiwKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICBwYWdlLmFjdGl2ZSA/ IEdUS19TVEFURV9OT1JNQUwgOiBHVEtfU1RBVEVfQUNUSVZFLCBHVEtfU0hBRE9XX09VVCwKKy0g ICAgICAgICAgICAgICAgICAgICAgICAgICAmYXJlYSwgd2lkZ2V0LCAidGFiIiwKKy0gICAgICAg ICAgICAgICAgICAgICAgICAgICB0YWJfcmVjdC54LCB0YWJfcmVjdC55LAorLSAgICAgICAgICAg ICAgICAgICAgICAgICAgIHRhYl9yZWN0LndpZHRoLCB0YWJfcmVjdC5oZWlnaHQsCistICAgICAg ICAgICAgICAgICAgICAgICAgICAgR1RLX1BPU19CT1RUT00pOworLSAgICB9CistCistICAgIHd4 Q29vcmQgdGV4dFggPSB0YWJfcmVjdC54ICsgcGFkZGluZyArIG1fWHRoaWNrbmVzczsKKy0KKy0g ICAgaW50IGJpdG1hcF9vZmZzZXQgPSAwOworLSAgICBpZiAocGFnZS5iaXRtYXAuSXNPaygpKQor LSAgICB7CistICAgICAgICBiaXRtYXBfb2Zmc2V0ID0gdGV4dFg7CistCistICAgICAgICAvLyBk cmF3IGJpdG1hcAorLSAgICAgICAgaW50IGJpdG1hcFkgPSB0YWJfcmVjdC55ICsodGFiX3JlY3Qu aGVpZ2h0IC0gcGFnZS5iaXRtYXAuR2V0SGVpZ2h0KCkpIC8gMjsKKy0gICAgICAgIGlmKCFwYWdl LmFjdGl2ZSkKKy0gICAgICAgIHsKKy0gICAgICAgICAgICBpZiAodGFiX3BvcyA9PSB3eEFVSV9O Ql9UT1ApCistICAgICAgICAgICAgICAgIGJpdG1hcFkgKz0gbV9ZdGhpY2tuZXNzIC8gMjsKKy0g ICAgICAgICAgICBlbHNlCistICAgICAgICAgICAgICAgIGJpdG1hcFkgLT0gbV9ZdGhpY2tuZXNz IC8gMjsKKy0gICAgICAgIH0KKy0gICAgICAgIGRjLkRyYXdCaXRtYXAocGFnZS5iaXRtYXAsCist ICAgICAgICAgICAgICAgICAgICAgIGJpdG1hcF9vZmZzZXQsCistICAgICAgICAgICAgICAgICAg ICAgIGJpdG1hcFksCistICAgICAgICAgICAgICAgICAgICAgIHRydWUpOworLQorLSAgICAgICAg dGV4dFggKz0gcGFnZS5iaXRtYXAuR2V0V2lkdGgoKSArIHBhZGRpbmc7CistICAgIH0KKy0KKy0g ICAgd3hDb29yZCB0ZXh0VywgdGV4dEgsIHRleHRZOworLQorLSNpZiB3eENIRUNLX1ZFUlNJT04o MywgMCwgMCkKKy0gICAgZGMuU2V0Rm9udChtX25vcm1hbEZvbnQpOworLSNlbHNlCistICAgIGRj LlNldEZvbnQobV9ub3JtYWxfZm9udCk7CistI2VuZGlmCistICAgIGRjLkdldFRleHRFeHRlbnQo cGFnZS5jYXB0aW9uLCAmdGV4dFcsICZ0ZXh0SCk7CistICAgIHRleHRZID0gdGFiX3JlY3QueSAr ICh0YWJfcmVjdC5oZWlnaHQgLSB0ZXh0SCkgLyAyOworLSAgICBpZighcGFnZS5hY3RpdmUpCist ICAgIHsKKy0gICAgICAgIGlmICh0YWJfcG9zID09IHd4QVVJX05CX1RPUCkKKy0gICAgICAgICAg ICB0ZXh0WSArPSBtX1l0aGlja25lc3MgLyAyOworLSAgICAgICAgZWxzZQorLSAgICAgICAgICAg IHRleHRZIC09IG1fWXRoaWNrbmVzcyAvIDI7CistICAgIH0KKy0KKy0gICAgLy8gZHJhdyB0YWIg dGV4dAorLSAgICBHZGtDb2xvciB0ZXh0X2NvbG91ciA9IHBhZ2UuYWN0aXZlID8gc3R5bGVfbm90 ZWJvb2stPmZnW0dUS19TVEFURV9OT1JNQUxdIDogc3R5bGVfbm90ZWJvb2stPmZnW0dUS19TVEFU RV9BQ1RJVkVdOworLSAgICBkYy5TZXRUZXh0Rm9yZWdyb3VuZCh3eENvbG9yKHRleHRfY29sb3Vy KSk7CistICAgIEdka1JlY3RhbmdsZSBmb2N1c19hcmVhOworLQorLSAgICBpbnQgcGFkZGluZ19m b2N1cyA9IHBhZGRpbmcgLSBmb2N1c193aWR0aDsKKy0gICAgZm9jdXNfYXJlYS54ID0gdGFiX3Jl Y3QueCArIHBhZGRpbmdfZm9jdXM7CistICAgIGZvY3VzX2FyZWEueSA9IHRleHRZIC0gZm9jdXNf d2lkdGg7CistICAgIGZvY3VzX2FyZWEud2lkdGggPSB0YWJfcmVjdC53aWR0aCAtIDIgKiBwYWRk aW5nX2ZvY3VzOworLSAgICBmb2N1c19hcmVhLmhlaWdodCA9IHRleHRIICsgMiAqIGZvY3VzX3dp ZHRoOworLQorLSAgICBpZihwYWdlLmFjdGl2ZSAmJiAod25kLT5GaW5kRm9jdXMoKSA9PSB3bmQp ICYmIGZvY3VzX2FyZWEueCA8PSAoYXJlYS54ICsgYXJlYS53aWR0aCkpCistICAgIHsKKy0gICAg ICAgIC8vIGNsaXBwaW5nIHNlZW1zIG5vdCB0byB3b3JrIGhlcmUsIHNvIHdlIHdlIGhhdmUgdG8g cmVjYWxjIHRoZSBmb2N1cy1hcmVhIG1hbnVhbGx5CistICAgICAgICBpZigoZm9jdXNfYXJlYS54 ICsgZm9jdXNfYXJlYS53aWR0aCkgPiAoYXJlYS54ICsgYXJlYS53aWR0aCkpCistICAgICAgICAg ICAgZm9jdXNfYXJlYS53aWR0aCA9IGFyZWEueCArIGFyZWEud2lkdGggLSBmb2N1c19hcmVhLngg KyBmb2N1c193aWR0aCAtIG1fVGFiVkJvcmRlcjsKKy0gICAgICAgIGd0a19wYWludF9mb2N1cyAo c3R5bGVfbm90ZWJvb2ssIHBXaW4sCistICAgICAgICAgICAgICAgICAgICAgICAgIEdUS19TVEFU RV9BQ1RJVkUsIE5VTEwsIHdpZGdldCwgInRhYiIsCistICAgICAgICAgICAgICAgICAgICAgICAg IGZvY3VzX2FyZWEueCwgZm9jdXNfYXJlYS55LCBmb2N1c19hcmVhLndpZHRoLCBmb2N1c19hcmVh LmhlaWdodCk7CistICAgIH0KKy0KKy0gICAgZGMuRHJhd1RleHQocGFnZS5jYXB0aW9uLCB0ZXh0 WCwgdGV4dFkpOworLQorLSAgICAvLyBkcmF3IGNsb3NlLWJ1dHRvbiBvbiB0YWIgKGlmIGVuYWJs ZWQpCistICAgIGlmIChjbG9zZV9idXR0b25fc3RhdGUgIT0gd3hBVUlfQlVUVE9OX1NUQVRFX0hJ RERFTikKKy0gICAgeworLSAgICAgICAgd3hSZWN0IHJlY3QodGFiX3JlY3QueCwgdGFiX3JlY3Qu eSwgdGFiX3JlY3Qud2lkdGggLSBtX1h0aGlja25lc3MsIHRhYl9yZWN0LmhlaWdodCk7CistICAg ICAgICBpZighcGFnZS5hY3RpdmUpCistICAgICAgICB7CistICAgICAgICAgICAgaWYgKHRhYl9w b3MgPT0gd3hBVUlfTkJfVE9QKQorLSAgICAgICAgICAgICAgICByZWN0LnkgKz0gbV9ZdGhpY2tu ZXNzIC8gMjsKKy0gICAgICAgICAgICBlbHNlCistICAgICAgICAgICAgICAgIHJlY3QueSAtPSBt X1l0aGlja25lc3MgLyAyOworLSAgICAgICAgfQorLSAgICAgICAgKm91dF9idXR0b25fcmVjdCA9 IERyYXdDbG9zZUJ1dHRvbihkYywgd2lkZ2V0LCBjbG9zZV9idXR0b25fc3RhdGUsIHJlY3QsIHd4 UklHSFQsICZhcmVhKTsKKy0gICAgfQorLQorLSAgICB0YWJfcmVjdC53aWR0aCA9IHN0ZDo6bWlu KHRhYl9yZWN0LndpZHRoLCBjbGlwX3dpZHRoKTsKKy0gICAgKm91dF90YWJfcmVjdCA9IHRhYl9y ZWN0OworLQorLSAgICBkYy5EZXN0cm95Q2xpcHBpbmdSZWdpb24oKTsKKy19CistCistd3hSZWN0 IERyYXdTaW1wbGVBcnJvdyh3eERDJiBkYywKKy0gICAgICAgICAgICAgICAgICAgICAgIEd0a1dp ZGdldCAqd2lkZ2V0LAorLSAgICAgICAgICAgICAgICAgICAgICAgaW50IGJ1dHRvbl9zdGF0ZSwK Ky0gICAgICAgICAgICAgICAgICAgICAgIHd4UmVjdCBjb25zdCAmaW5fcmVjdCwKKy0gICAgICAg ICAgICAgICAgICAgICAgIGludCBvcmllbnRhdGlvbiwKKy0gICAgICAgICAgICAgICAgICAgICAg IEd0a0Fycm93VHlwZSBhcnJvd190eXBlKQorLXsKKy0gICAgaW50IHNjcm9sbF9hcnJvd19obGVu Z3RoLCBzY3JvbGxfYXJyb3dfdmxlbmd0aDsKKy0gICAgZ3RrX3dpZGdldF9zdHlsZV9nZXQod2lk Z2V0LAorLSAgICAgICAgICAgICAgICAgICAgICAgICAic2Nyb2xsLWFycm93LWhsZW5ndGgiLCAm c2Nyb2xsX2Fycm93X2hsZW5ndGgsCistICAgICAgICAgICAgICAgICAgICAgICAgICJzY3JvbGwt YXJyb3ctdmxlbmd0aCIsICZzY3JvbGxfYXJyb3dfdmxlbmd0aCwKKy0gICAgICAgICAgICAgICAg ICAgICAgICAgTlVMTCk7CistCistICAgIEd0a1N0YXRlVHlwZSBzdGF0ZTsKKy0gICAgR3RrU2hh ZG93VHlwZSBzaGFkb3c7CistICAgIEJ1dHRvblN0YXRlQW5kU2hhZG93KGJ1dHRvbl9zdGF0ZSwg c3RhdGUsIHNoYWRvdyk7CistCistICAgIHd4UmVjdCBvdXRfcmVjdDsKKy0KKy0gICAgaWYgKG9y aWVudGF0aW9uID09IHd4TEVGVCkKKy0gICAgICAgIG91dF9yZWN0LnggPSBpbl9yZWN0Lng7Cist ICAgIGVsc2UKKy0gICAgICAgIG91dF9yZWN0LnggPSBpbl9yZWN0LnggKyBpbl9yZWN0LndpZHRo IC0gc2Nyb2xsX2Fycm93X2hsZW5ndGg7CistICAgIG91dF9yZWN0LnkgPSAoaW5fcmVjdC55ICsg aW5fcmVjdC5oZWlnaHQgLSAzICogZ2V0X3N0eWxlX25vdGVib29rKCktPnl0aGlja25lc3MgLSBz Y3JvbGxfYXJyb3dfdmxlbmd0aCkgLyAyOworLSAgICBvdXRfcmVjdC53aWR0aCA9IHNjcm9sbF9h cnJvd19obGVuZ3RoOworLSAgICBvdXRfcmVjdC5oZWlnaHQgPSBzY3JvbGxfYXJyb3dfdmxlbmd0 aDsKKy0KKy0jaWYgd3hDSEVDS19WRVJTSU9OKDMsIDAsIDApCistICAgIHd4R1RLRENJbXBsICpp bXBsZGMgPSAod3hHVEtEQ0ltcGwqKSBkYy5HZXRJbXBsKCk7CistICAgIEdka1dpbmRvdyogcFdp biA9IGltcGxkYy0+R2V0R0RLV2luZG93KCk7CistI2Vsc2UKKy0gICAgR2RrV2luZG93KiBwV2lu ID0gZGMuR2V0R0RLV2luZG93KCk7CistI2VuZGlmCistICAgIGd0a19wYWludF9hcnJvdyAoZ2V0 X3N0eWxlX2J1dHRvbigpLCBwV2luLCBzdGF0ZSwgc2hhZG93LCBudWxscHRyLCB3aWRnZXQsICJu b3RlYm9vayIsCistICAgICAgICAgICAgICAgICAgICAgYXJyb3dfdHlwZSwgVFJVRSwgb3V0X3Jl Y3QueCwgb3V0X3JlY3QueSwgb3V0X3JlY3Qud2lkdGgsIG91dF9yZWN0LmhlaWdodCk7CistCist ICAgIHJldHVybiBvdXRfcmVjdDsKKy19CistCistdm9pZCBOYlN0eWxlR1RLOjpEcmF3QnV0dG9u KHd4REMmIGRjLCB3eFdpbmRvdyogd25kLAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBj b25zdCB3eFJlY3QmIGluX3JlY3QsCistICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBi aXRtYXBfaWQsCistICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBidXR0b25fc3RhdGUs CistICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBvcmllbnRhdGlvbiwKKy0gICAgICAg ICAgICAgICAgICAgICAgICAgICAgd3hSZWN0KiBvdXRfcmVjdCkKKy17CistICAgIEd0a1dpZGdl dCAqd2lkZ2V0ID0gd25kLT5HZXRIYW5kbGUoKTsKKy0gICAgd3hSZWN0IHJlY3QgPSBpbl9yZWN0 OworLSAgICBpZiAobV9mbGFncyAmd3hBVUlfTkJfQk9UVE9NKQorLSAgICAgICAgcmVjdC55ICs9 IDIgKiBnZXRfc3R5bGVfYnV0dG9uKCktPnl0aGlja25lc3M7CistCistICAgIHN3aXRjaCAoYml0 bWFwX2lkKQorLSAgICB7CistICAgICAgICBjYXNlIHd4QVVJX0JVVFRPTl9DTE9TRToKKy0gICAg ICAgICAgICByZWN0LnkgLT0gMiAqIGdldF9zdHlsZV9idXR0b24oKS0+eXRoaWNrbmVzczsKKy0g ICAgICAgICAgICByZWN0ID0gRHJhd0Nsb3NlQnV0dG9uKGRjLCB3aWRnZXQsIGJ1dHRvbl9zdGF0 ZSwgcmVjdCwgb3JpZW50YXRpb24sIE5VTEwpOworLSAgICAgICAgICAgIGJyZWFrOworLQorLSAg ICAgICAgY2FzZSB3eEFVSV9CVVRUT05fTEVGVDoKKy0gICAgICAgICAgICByZWN0ID0gRHJhd1Np bXBsZUFycm93KGRjLCB3aWRnZXQsIGJ1dHRvbl9zdGF0ZSwgcmVjdCwgb3JpZW50YXRpb24sIEdU S19BUlJPV19MRUZUKTsKKy0gICAgICAgICAgICBicmVhazsKKy0KKy0gICAgICAgIGNhc2Ugd3hB VUlfQlVUVE9OX1JJR0hUOgorLSAgICAgICAgICAgIHJlY3QgPSBEcmF3U2ltcGxlQXJyb3coZGMs IHdpZGdldCwgYnV0dG9uX3N0YXRlLCByZWN0LCBvcmllbnRhdGlvbiwgR1RLX0FSUk9XX1JJR0hU KTsKKy0gICAgICAgICAgICBicmVhazsKKy0KKy0gICAgICAgIGNhc2Ugd3hBVUlfQlVUVE9OX1dJ TkRPV0xJU1Q6CistICAgICAgICAgICAgeworLSAgICAgICAgICAgICAgICByZWN0LmhlaWdodCAt PSA0ICogZ2V0X3N0eWxlX2J1dHRvbigpLT55dGhpY2tuZXNzOworLSAgICAgICAgICAgICAgICBy ZWN0LndpZHRoID0gcmVjdC5oZWlnaHQ7CistICAgICAgICAgICAgICAgIHJlY3QueCA9IGluX3Jl Y3QueCArIGluX3JlY3Qud2lkdGggLSByZWN0LndpZHRoOworLQorLSAgICAgICAgICAgICAgICBp ZiAoYnV0dG9uX3N0YXRlID09IHd4QVVJX0JVVFRPTl9TVEFURV9IT1ZFUikKKy0gICAgICAgICAg ICAgICAgICAgIHd4UmVuZGVyZXJOYXRpdmU6OkdldCgpLkRyYXdDb21ib0JveERyb3BCdXR0b24o d25kLCBkYywgcmVjdCwgd3hDT05UUk9MX0NVUlJFTlQpOworLSAgICAgICAgICAgICAgICBlbHNl IGlmIChidXR0b25fc3RhdGUgPT0gd3hBVUlfQlVUVE9OX1NUQVRFX1BSRVNTRUQpCistICAgICAg ICAgICAgICAgICAgICB3eFJlbmRlcmVyTmF0aXZlOjpHZXQoKS5EcmF3Q29tYm9Cb3hEcm9wQnV0 dG9uKHduZCwgZGMsIHJlY3QsIHd4Q09OVFJPTF9QUkVTU0VEKTsKKy0gICAgICAgICAgICAgICAg ZWxzZQorLSAgICAgICAgICAgICAgICAgICAgd3hSZW5kZXJlck5hdGl2ZTo6R2V0KCkuRHJhd0Ry b3BBcnJvdyh3bmQsIGRjLCByZWN0KTsKKy0gICAgICAgICAgICB9CistICAgICAgICAgICAgYnJl YWs7CistCistICAgICAgICBkZWZhdWx0OgorLSAgICAgICAgICAgIGJyZWFrOworLSAgICB9Cist CistICAgICpvdXRfcmVjdCA9IHJlY3Q7CistfQorLQorLQorLWludCBOYlN0eWxlR1RLOjpHZXRC ZXN0VGFiQ3RybFNpemUod3hXaW5kb3cqIHduZCwKKy0gICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIGNvbnN0IHd4QXVpTm90ZWJvb2tQYWdlQXJyYXkmIHBhZ2VzLAorLSAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgd3hTaXplJiByZXF1aXJlZF9ibXBfc2l6 ZSkKKy17CistI2lmIHd4Q0hFQ0tfVkVSU0lPTigzLCAwLCAwKQorLSAgICBTZXRNZWFzdXJpbmdG b250KG1fbm9ybWFsRm9udCk7CistICAgIFNldFNlbGVjdGVkRm9udChtX25vcm1hbEZvbnQpOwor LSNlbHNlCistICAgIFNldE1lYXN1cmluZ0ZvbnQobV9ub3JtYWxfZm9udCk7CistICAgIFNldFNl bGVjdGVkRm9udChtX25vcm1hbF9mb250KTsKKy0jZW5kaWYKKy0gICAgaW50IHRhYl9oZWlnaHQg PSAzICogZ2V0X3N0eWxlX25vdGVib29rKCktPnl0aGlja25lc3MgKyB3eEF1aURlZmF1bHRUYWJB cnQ6OkdldEJlc3RUYWJDdHJsU2l6ZSh3bmQsIHBhZ2VzLCByZXF1aXJlZF9ibXBfc2l6ZSk7Cist ICAgIHJldHVybiB0YWJfaGVpZ2h0OworLX0KKy0KKy13eFNpemUgTmJTdHlsZUdUSzo6R2V0VGFi U2l6ZSh3eERDJiBkYywKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3eFdpbmRvdyog d25kLAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHd4U3RyaW5nJiBjYXB0 aW9uLAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHd4Qml0bWFwJiBiaXRt YXAsCistICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9vbCBhY3RpdmUsCistICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgaW50IGNsb3NlX2J1dHRvbl9zdGF0ZSwKKy0gICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBpbnQqIHhfZXh0ZW50KQorLXsKKy0gICAgd3hTaXplIHMg PSB3eEF1aURlZmF1bHRUYWJBcnQ6OkdldFRhYlNpemUoZGMsIHduZCwgY2FwdGlvbiwgYml0bWFw LCBhY3RpdmUsIGNsb3NlX2J1dHRvbl9zdGF0ZSwgeF9leHRlbnQpOworLQorLSAgICBpbnQgb3Zl cmxhcCA9IDA7CistICAgIGd0a193aWRnZXRfc3R5bGVfZ2V0ICh3bmQtPkdldEhhbmRsZSgpLAor LSAgICAgICAgImZvY3VzLWxpbmUtd2lkdGgiLCAmb3ZlcmxhcCwKKy0gICAgICAgIE5VTEwpOwor LSAgICAqeF9leHRlbnQgLT0gb3ZlcmxhcDsKKy0gICAgcmV0dXJuIHM7CistfQorLQorLSNlbmRp ZiAvLyAjaWYgZGVmaW5lZChfX1dYR1RLX18pICYmIChVU0VfR1RLX05PVEVCT09LKSAmJiAhd3hD SEVDS19WRVJTSU9OKDMsIDAsIDApCitJbmRleDogc3JjL3NyYy9wcm9qZWN0bWFuYWdlcnVpLmNw cAorPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PQorLS0tIGEvc3JjL3NyYy9wcm9qZWN0bWFuYWdlcnVpLmNwcAkocmV2aXNp b24gMTI1NzkpCisrKysgYi9zcmMvc3JjL3Byb2plY3RtYW5hZ2VydWkuY3BwCShyZXZpc2lvbiAx MjU4MCkKK0BAIC0xODc1LDExICsxODc1LDcgQEAKKyB7CisgICAgIHNpemVfdCBvcGVyYXRvcigp KGNvbnN0IHd4U3RyaW5nJiBzKSBjb25zdAorICAgICB7CistI2lmIHd4Q0hFQ0tfVkVSU0lPTigz LCAwLCAwKQorICAgICAgICAgcmV0dXJuIHN0ZDo6aGFzaDxzdGQ6OndzdHJpbmc+KCkocy5Ub1N0 ZFdzdHJpbmcoKSk7CistI2Vsc2UKKy0gICAgICAgIHJldHVybiBzdGQ6Omhhc2g8c3RkOjp3c3Ry aW5nPigpKHMud2Nfc3RyKCkpOworLSNlbmRpZiAvLyB3eENIRUNLX1ZFUlNJT04KKyAgICAgfQor IH07CisgCmRpZmYgLS1naXQgYS9zcmNwa2dzL2NvZGVibG9ja3MvcGF0Y2hlcy8wMDAucjEyNzA3 LnBhdGNoIGIvc3JjcGtncy9jb2RlYmxvY2tzL3BhdGNoZXMvMDAwLnIxMjcwNy5wYXRjaApuZXcg ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwLi5iY2E5NzRmYmU1NzcwCi0tLSAv ZGV2L251bGwKKysrIGIvc3JjcGtncy9jb2RlYmxvY2tzL3BhdGNoZXMvMDAwLnIxMjcwNy5wYXRj aApAQCAtMCwwICsxLDEyMCBAQAorSW5kZXg6IHNyYy9zcmMvbm90ZWJvb2tzdHlsZXMuY3BwCis9 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09CistLS0gYS9zcmMvc3JjL25vdGVib29rc3R5bGVzLmNwcAkocmV2aXNpb24gMTI3 MDYpCisrKysgYi9zcmMvc3JjL25vdGVib29rc3R5bGVzLmNwcAkocmV2aXNpb24gMTI3MDcpCitA QCAtMTI0LDggKzEyNCwxNiBAQAorICAgICBpZiAocGFnZS5iaXRtYXAuSXNPaygpKQorICAgICB7 CisgICAgICAgICBiaXRtYXBfb2Zmc2V0ID0gdGFiX3ggKyA4OworKyAgICAgICAgLy8gZHJhdyBi aXRtYXAKKysjaWYgd3hDSEVDS19WRVJTSU9OKDMsIDEsIDYpCisrICAgICAgICBjb25zdCB3eEJp dG1hcCBibXAocGFnZS5iaXRtYXAuR2V0Qml0bWFwRm9yKHduZCkpOworKyAgICAgICAgZGMuRHJh d0JpdG1hcChibXAsCisrICAgICAgICAgICAgICAgICAgICAgIGJpdG1hcF9vZmZzZXQsCisrICAg ICAgICAgICAgICAgICAgICAgIGRyYXduX3RhYl95b2ZmICsgKGRyYXduX3RhYl9oZWlnaHQvMikg LSAoYm1wLkdldEhlaWdodCgpLzIpLAorKyAgICAgICAgICAgICAgICAgICAgICB0cnVlKTsKKyAK Ky0gICAgICAgIC8vIGRyYXcgYml0bWFwCisrICAgICAgICB0ZXh0X29mZnNldCA9IGJpdG1hcF9v ZmZzZXQgKyBibXAuR2V0V2lkdGgoKTsKKysjZWxzZQorICAgICAgICAgZGMuRHJhd0JpdG1hcChw YWdlLmJpdG1hcCwKKyAgICAgICAgICAgICAgICAgICAgICAgYml0bWFwX29mZnNldCwKKyAgICAg ICAgICAgICAgICAgICAgICAgZHJhd25fdGFiX3lvZmYgKyAoZHJhd25fdGFiX2hlaWdodC8yKSAt IChwYWdlLmJpdG1hcC5HZXRIZWlnaHQoKS8yKSwKK0BAIC0xMzIsNiArMTQwLDcgQEAKKyAgICAg ICAgICAgICAgICAgICAgICAgdHJ1ZSk7CisgCisgICAgICAgICB0ZXh0X29mZnNldCA9IGJpdG1h cF9vZmZzZXQgKyBwYWdlLmJpdG1hcC5HZXRXaWR0aCgpOworKyNlbmRpZgorICAgICAgICAgdGV4 dF9vZmZzZXQgKz0gMzsgLy8gYml0bWFwIHBhZGRpbmcKKyAgICAgfQorICAgICAgZWxzZQorQEAg LTE2MSwxMyArMTcwLDIzIEBACisgICAgIC8vIGRyYXcgJ3gnIG9uIHRhYiAoaWYgZW5hYmxlZCkK KyAgICAgaWYgKGNsb3NlX2J1dHRvbl9zdGF0ZSAhPSB3eEFVSV9CVVRUT05fU1RBVEVfSElEREVO KQorICAgICB7CistICAgICAgICBpbnQgY2xvc2VfYnV0dG9uX3dpZHRoID0gbV9hY3RpdmVDbG9z ZUJtcC5HZXRXaWR0aCgpOworLSAgICAgICAgd3hCaXRtYXAgYm1wID0gbV9kaXNhYmxlZENsb3Nl Qm1wOworKyAgICAgICAgd3hCaXRtYXAgYm1wOworIAorKyNpZiB3eENIRUNLX1ZFUlNJT04oMywg MSwgNikKKyAgICAgICAgIGlmICgoY2xvc2VfYnV0dG9uX3N0YXRlID09IHd4QVVJX0JVVFRPTl9T VEFURV9IT1ZFUikgfHwKKyAgICAgICAgICAgICAgICAgICAgIChjbG9zZV9idXR0b25fc3RhdGUg PT0gd3hBVUlfQlVUVE9OX1NUQVRFX1BSRVNTRUQpKQorKyAgICAgICAgICAgIGJtcCA9IG1fYWN0 aXZlQ2xvc2VCbXAuR2V0Qml0bWFwRm9yKHduZCk7CisrICAgICAgICBlbHNlCisrICAgICAgICAg ICAgYm1wID0gbV9kaXNhYmxlZENsb3NlQm1wLkdldEJpdG1hcEZvcih3bmQpOworKyNlbHNlCisr ICAgICAgICBpZiAoKGNsb3NlX2J1dHRvbl9zdGF0ZSA9PSB3eEFVSV9CVVRUT05fU1RBVEVfSE9W RVIpIHx8CisrICAgICAgICAgICAgICAgICAgICAoY2xvc2VfYnV0dG9uX3N0YXRlID09IHd4QVVJ X0JVVFRPTl9TVEFURV9QUkVTU0VEKSkKKyAgICAgICAgICAgICBibXAgPSBtX2FjdGl2ZUNsb3Nl Qm1wOworKyAgICAgICAgZWxzZQorKyAgICAgICAgICAgIGJtcCA9IG1fZGlzYWJsZWRDbG9zZUJt cDsKKysjZW5kaWYKKyAKKysgICAgICAgIGNvbnN0IGludCBjbG9zZV9idXR0b25fd2lkdGggPSBi bXAuR2V0V2lkdGgoKTsKKyAgICAgICAgIHd4UmVjdCByZWN0KHRhYl94ICsgdGFiX3dpZHRoIC0g Y2xvc2VfYnV0dG9uX3dpZHRoIC0gMywKKyAgICAgICAgICAgICAgICAgICAgIGRyYXduX3RhYl95 b2ZmICsgKGRyYXduX3RhYl9oZWlnaHQgLyAyKSAtIChibXAuR2V0SGVpZ2h0KCkgLyAyKSwKKyAg ICAgICAgICAgICAgICAgICAgIGNsb3NlX2J1dHRvbl93aWR0aCwgdGFiX2hlaWdodCk7CitAQCAt Mjg1LDExICszMDQsMjAgQEAKKyAgICAgaW50IHRleHRfb2Zmc2V0ID0gdGFiX3ggKyA4OworIAor ICAgICBpbnQgYml0bWFwX29mZnNldCA9IDA7CisrCisgICAgIGlmIChwYWdlLmJpdG1hcC5Jc09r KCkpCisgICAgIHsKKyAgICAgICAgIGJpdG1hcF9vZmZzZXQgPSB0YWJfeCArIDg7CisrICAgICAg ICAvLyBkcmF3IGJpdG1hcAorKyNpZiB3eENIRUNLX1ZFUlNJT04oMywgMSwgNikKKysgICAgICAg IGNvbnN0IHd4Qml0bWFwIGJtcChwYWdlLmJpdG1hcC5HZXRCaXRtYXBGb3Iod25kKSk7CisrICAg ICAgICBkYy5EcmF3Qml0bWFwKGJtcCwKKysgICAgICAgICAgICAgICAgICAgICAgYml0bWFwX29m ZnNldCwKKysgICAgICAgICAgICAgICAgICAgICAgZHJhd25fdGFiX3lvZmYgKyAoZHJhd25fdGFi X2hlaWdodC8yKSAtIChibXAuR2V0SGVpZ2h0KCkvMiksCisrICAgICAgICAgICAgICAgICAgICAg IHRydWUpOworIAorLSAgICAgICAgLy8gZHJhdyBiaXRtYXAKKysgICAgICAgIHRleHRfb2Zmc2V0 ID0gYml0bWFwX29mZnNldCArIGJtcC5HZXRXaWR0aCgpOworKyNlbHNlCisgICAgICAgICBkYy5E cmF3Qml0bWFwKHBhZ2UuYml0bWFwLAorICAgICAgICAgICAgICAgICAgICAgICBiaXRtYXBfb2Zm c2V0LAorICAgICAgICAgICAgICAgICAgICAgICBkcmF3bl90YWJfeW9mZiArIChkcmF3bl90YWJf aGVpZ2h0LzIpIC0gKHBhZ2UuYml0bWFwLkdldEhlaWdodCgpLzIpLAorQEAgLTI5Niw2ICszMjQs NyBAQAorICAgICAgICAgICAgICAgICAgICAgICB0cnVlKTsKKyAKKyAgICAgICAgIHRleHRfb2Zm c2V0ID0gYml0bWFwX29mZnNldCArIHBhZ2UuYml0bWFwLkdldFdpZHRoKCk7CisrI2VuZGlmCisg ICAgICAgICB0ZXh0X29mZnNldCArPSAzOyAvLyBiaXRtYXAgcGFkZGluZworICAgICB9CisgICAg ICBlbHNlCitAQCAtMzAzLDcgKzMzMiw2IEBACisgICAgICAgICB0ZXh0X29mZnNldCA9IHRhYl94 ICsgODsKKyAgICAgfQorIAorLQorICAgICAvLyBpZiB0aGUgY2FwdGlvbiBpcyBlbXB0eSwgbWVh c3VyZSBzb21lIHRlbXBvcmFyeSB0ZXh0CisgICAgIHd4U3RyaW5nIGNhcHRpb24gPSBwYWdlLmNh cHRpb247CisgICAgIGlmIChjYXB0aW9uLmVtcHR5KCkpCitAQCAtMzI1LDEzICszNTMsMjMgQEAK KyAgICAgLy8gZHJhdyAneCcgb24gdGFiIChpZiBlbmFibGVkKQorICAgICBpZiAoY2xvc2VfYnV0 dG9uX3N0YXRlICE9IHd4QVVJX0JVVFRPTl9TVEFURV9ISURERU4pCisgICAgIHsKKy0gICAgICAg IGludCBjbG9zZV9idXR0b25fd2lkdGggPSBtX2FjdGl2ZUNsb3NlQm1wLkdldFdpZHRoKCk7Cist ICAgICAgICB3eEJpdG1hcCBibXAgPSBtX2Rpc2FibGVkQ2xvc2VCbXA7CisrICAgICAgICB3eEJp dG1hcCBibXA7CisgCisrI2lmIHd4Q0hFQ0tfVkVSU0lPTigzLCAxLCA2KQorICAgICAgICAgaWYg KChjbG9zZV9idXR0b25fc3RhdGUgPT0gd3hBVUlfQlVUVE9OX1NUQVRFX0hPVkVSKSB8fAorICAg ICAgICAgICAgICAgICAgICAgKGNsb3NlX2J1dHRvbl9zdGF0ZSA9PSB3eEFVSV9CVVRUT05fU1RB VEVfUFJFU1NFRCkpCisrICAgICAgICAgICAgYm1wID0gbV9hY3RpdmVDbG9zZUJtcC5HZXRCaXRt YXBGb3Iod25kKTsKKysgICAgICAgIGVsc2UKKysgICAgICAgICAgICBibXAgPSBtX2Rpc2FibGVk Q2xvc2VCbXAuR2V0Qml0bWFwRm9yKHduZCk7CisrI2Vsc2UKKysgICAgICAgIGlmICgoY2xvc2Vf YnV0dG9uX3N0YXRlID09IHd4QVVJX0JVVFRPTl9TVEFURV9IT1ZFUikgfHwKKysgICAgICAgICAg ICAgICAgICAgIChjbG9zZV9idXR0b25fc3RhdGUgPT0gd3hBVUlfQlVUVE9OX1NUQVRFX1BSRVNT RUQpKQorICAgICAgICAgICAgIGJtcCA9IG1fYWN0aXZlQ2xvc2VCbXA7CisrICAgICAgICBlbHNl CisrICAgICAgICAgICAgYm1wID0gbV9kaXNhYmxlZENsb3NlQm1wOworKyNlbmRpZgorIAorKyAg ICAgICAgY29uc3QgaW50IGNsb3NlX2J1dHRvbl93aWR0aCA9IGJtcC5HZXRXaWR0aCgpOworICAg ICAgICAgd3hSZWN0IHJlY3QodGFiX3ggKyB0YWJfd2lkdGggLSBjbG9zZV9idXR0b25fd2lkdGgg LSAzLAorICAgICAgICAgICAgICAgICAgICAgZHJhd25fdGFiX3lvZmYgKyAoZHJhd25fdGFiX2hl aWdodCAvIDIpIC0gKGJtcC5HZXRIZWlnaHQoKSAvIDIpLAorICAgICAgICAgICAgICAgICAgICAg Y2xvc2VfYnV0dG9uX3dpZHRoLCB0YWJfaGVpZ2h0KTsKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvY29k ZWJsb2Nrcy9wYXRjaGVzL3d4LTMuMi5wYXRjaCBiL3NyY3BrZ3MvY29kZWJsb2Nrcy9wYXRjaGVz L3d4LTMuMi5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwLi4w NDAwY2U2MzQ2MTc4Ci0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9jb2RlYmxvY2tzL3BhdGNo ZXMvd3gtMy4yLnBhdGNoCkBAIC0wLDAgKzEsMjEgQEAKK0luZGV4OiBjb2RlYmxvY2tzLTIwLjAz L3NyYy9zZGsvc2NyaXB0aW5nL2JpbmRpbmdzL3NjX3d4dHlwZXMuY3BwCis9PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Cist LS0gY29kZWJsb2Nrcy0yMC4wMy5vcmlnL3NyYy9zZGsvc2NyaXB0aW5nL2JpbmRpbmdzL3NjX3d4 dHlwZXMuY3BwCisrKysgY29kZWJsb2Nrcy0yMC4wMy9zcmMvc2RrL3NjcmlwdGluZy9iaW5kaW5n cy9zY193eHR5cGVzLmNwcAorQEAgLTMyMiw2ICszMjIsNyBAQCBuYW1lc3BhY2UgU2NyaXB0Qmlu ZGluZ3MKKyAgICAgICAgIHR5cGVkZWYgYm9vbCh3eEZpbGVOYW1lOjoqV1hGTl9TRVRDV0QpKCk7 CisgI2VuZGlmCisgICAgICAgICB0eXBlZGVmIGJvb2wod3hGaWxlTmFtZTo6KldYRk5fSVNGSUxF V1JJVEVBQkxFKSgpY29uc3Q7CisrICAgICAgICB0eXBlZGVmIGJvb2wod3hGaWxlTmFtZTo6KldY Rk5fTk9STUFMSVpFKShpbnQsIGNvbnN0IHd4U3RyaW5nJiwgd3hQYXRoRm9ybWF0KTsKKyAKKyAg ICAgICAgIFNxUGx1czo6U1FDbGFzc0RlZjx3eEZpbGVOYW1lPigid3hGaWxlTmFtZSIpLgorICAg ICAgICAgICAgICAgICBlbXB0eUN0b3IoKS4KK0BAIC0zNTQsNyArMzU1LDcgQEAgbmFtZXNwYWNl IFNjcmlwdEJpbmRpbmdzCisgICAgICAgICAgICAgICAgIGZ1bmMoJnd4RmlsZU5hbWU6OklzRGly LCAiSXNEaXIiKS4KKyAgICAgICAgICAgICAgICAgZnVuYygmd3hGaWxlTmFtZTo6TWFrZUFic29s dXRlLCAiTWFrZUFic29sdXRlIikuCisgICAgICAgICAgICAgICAgIGZ1bmMoJnd4RmlsZU5hbWU6 Ok1ha2VSZWxhdGl2ZVRvLCAiTWFrZVJlbGF0aXZlVG8iKS4KKy0gICAgICAgICAgICAgICAgZnVu Yygmd3hGaWxlTmFtZTo6Tm9ybWFsaXplLCAiTm9ybWFsaXplIikuCisrICAgICAgICAgICAgICAg IGZ1bmM8V1hGTl9OT1JNQUxJWkU+KCZ3eEZpbGVOYW1lOjpOb3JtYWxpemUsICJOb3JtYWxpemUi KS4KKyAgICAgICAgICAgICAgICAgZnVuYygmd3hGaWxlTmFtZTo6UHJlcGVuZERpciwgIlByZXBl bmREaXIiKS4KKyAgICAgICAgICAgICAgICAgZnVuYygmd3hGaWxlTmFtZTo6UmVtb3ZlRGlyLCAi UmVtb3ZlRGlyIikuCisgICAgICAgICAgICAgICAgIGZ1bmMoJnd4RmlsZU5hbWU6OlJlbW92ZUxh c3REaXIsICJSZW1vdmVMYXN0RGlyIikuCmRpZmYgLS1naXQgYS9zcmNwa2dzL2NvZGVibG9ja3Mv dGVtcGxhdGUgYi9zcmNwa2dzL2NvZGVibG9ja3MvdGVtcGxhdGUKaW5kZXggNmM2YzMxZGZkM2Ux ZS4uZDAwMmEyNzQwODcyNiAxMDA2NDQKLS0tIGEvc3JjcGtncy9jb2RlYmxvY2tzL3RlbXBsYXRl CisrKyBiL3NyY3BrZ3MvY29kZWJsb2Nrcy90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVt cGxhdGUgZmlsZSBmb3IgJ2NvZGVibG9ja3MnCiBwa2duYW1lPWNvZGVibG9ja3MKIHZlcnNpb249 MjAuMDMKLXJldmlzaW9uPTUKK3JldmlzaW9uPTYKIGJ1aWxkX3N0eWxlPWdudS1jb25maWd1cmUK IGNvbmZpZ3VyZV9hcmdzPSItLXdpdGgtd3gtY29uZmlnPXd4LWNvbmZpZy1ndGszIC0td2l0aC1j b250cmliLXBsdWdpbnMKICAtLXdpdGgtYm9vc3Q9JHtYQlBTX0NST1NTX0JBU0V9L3VzcgpAQCAt MTcsNiArMTcsOCBAQCBob21lcGFnZT0iaHR0cDovL3d3dy5jb2RlYmxvY2tzLm9yZyIKIGRpc3Rm aWxlcz0iJHtTT1VSQ0VGT1JHRV9TSVRFfS8ke3BrZ25hbWV9L1NvdXJjZXMvJHt2ZXJzaW9ufS8k e3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgogY2hlY2tzdW09MTVlZWIzZTI4YWVhMDU0ZTFm MzhiMGM3ZjQ2NzFiNGQ0ZDExMTZmZDA1ZjYzYzA3YWE5NWE5MWRiODllYWFjNQogCitDWFhGTEFH Uz0iLURfTEFSR0VGSUxFX1NPVVJDRSAtRF9GSUxFX09GRlNFVF9CSVRTPTY0IgorCiBwb3N0X2lu c3RhbGwoKSB7CiAJdmluc3RhbGwgZGViaWFuL2NvZGVibG9ja3Muc2hhcmVkbWltZSA2NDQgL3Vz ci9zaGFyZS9taW1lL3BhY2thZ2VzIGNvZGVibG9ja3MueG1sCiAJdmluc3RhbGwgc3JjL21pbWUv Y29kZWJsb2Nrcy5kZXNrdG9wIDY0NCAvdXNyL3NoYXJlL2FwcGxpY2F0aW9ucwoKRnJvbSBkYjIz MGRjNmVhZWRmZWQxZGI2MTcxNmJmMzcxMTgyYzhjNzViZWZlIE1vbiBTZXAgMTcgMDA6MDA6MDAg MjAwMQpGcm9tOiAiQW5kcmV3IEouIEhlc2ZvcmQiIDxhamhAc2lkZWJhbmQub3JnPgpEYXRlOiBN b24sIDI1IFNlcCAyMDIzIDAwOjE4OjIwIC0wNDAwClN1YmplY3Q6IFtQQVRDSCAyMC80M10gY29k ZWxpdGU6IHJlYnVpbGQgd2l0aCB3eFdpZGdldHMtZ3RrMy0zLjIuMi4xCgotLS0KIHNyY3BrZ3Mv Y29kZWxpdGUvcGF0Y2hlcy93eDMyLnBhdGNoIHwgMTMxICsrKysrKysrKysrKysrKysrKysrKysr KysrKysKIHNyY3BrZ3MvY29kZWxpdGUvdGVtcGxhdGUgICAgICAgICAgIHwgICA0ICstCiAyIGZp bGVzIGNoYW5nZWQsIDEzNCBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9uKC0pCiBjcmVhdGUgbW9k ZSAxMDA2NDQgc3JjcGtncy9jb2RlbGl0ZS9wYXRjaGVzL3d4MzIucGF0Y2gKCmRpZmYgLS1naXQg YS9zcmNwa2dzL2NvZGVsaXRlL3BhdGNoZXMvd3gzMi5wYXRjaCBiL3NyY3BrZ3MvY29kZWxpdGUv cGF0Y2hlcy93eDMyLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw MDAuLmY1NTM1ZWJhZjFiM2IKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL2NvZGVsaXRlL3Bh dGNoZXMvd3gzMi5wYXRjaApAQCAtMCwwICsxLDEzMSBAQAorRnJvbSA0MjdhZjM1OGQ0MWRlYjAw YTQ2MjhlNWIzOWM2M2E5MjljZWY4OTRhIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQorRnJvbTog RXJhbiBJZnJhaCA8ZXJhbkBjb2RlbGl0ZS5vcmc+CitEYXRlOiBGcmksIDEwIEp1biAyMDIyIDEw OjE1OjUyICswMzAwCitTdWJqZWN0OiBbUEFUQ0hdIG1hY29zOiBodW5zcGVsbDogdXNlIHRoZSBs aWJyYXJ5IGZyb20gYnJldyBmaXhlZCBidWlsZAorIGFnYWluc3Qgd3gzLjEuNyB0ZW1wb3Jhcmx5 OiBkaXNhYmxlIGJ1aWxkaW5nIExMREIgb24gbWFjb3MKKworLS0tCisgQ01ha2VMaXN0cy50eHQg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDUgKy0KKyBTcGVsbENoZWNrZXIvQ01h a2VMaXN0cy50eHQgICAgICAgICAgICAgICAgICB8ICAyNyArLQorIHNkay9odW5zcGVsbC9pbmNs dWRlL2FmZmVudHJ5Lmh4eCAgICAgICAgICAgIHwgMTQ0IC0tLS0tLS0tLS0tCisgc2RrL2h1bnNw ZWxsL2luY2x1ZGUvYWZmaXhtZ3IuaHh4ICAgICAgICAgICAgfCAyNTIgLS0tLS0tLS0tLS0tLS0t LS0tLQorIHNkay9odW5zcGVsbC9pbmNsdWRlL2F0eXBlcy5oeHggICAgICAgICAgICAgIHwgMTA3 IC0tLS0tLS0tCisgc2RrL2h1bnNwZWxsL2luY2x1ZGUvYmFzZWFmZml4Lmh4eCAgICAgICAgICAg fCAgMzIgLS0tCisgc2RrL2h1bnNwZWxsL2luY2x1ZGUvY3N1dGlsLmh4eCAgICAgICAgICAgICAg fCAyMjMgLS0tLS0tLS0tLS0tLS0tLQorIHNkay9odW5zcGVsbC9pbmNsdWRlL2RpY3RtZ3IuaHh4 ICAgICAgICAgICAgIHwgIDM5IC0tLQorIHNkay9odW5zcGVsbC9pbmNsdWRlL2ZpbGVtZ3IuaHh4 ICAgICAgICAgICAgIHwgIDI4IC0tLQorIHNkay9odW5zcGVsbC9pbmNsdWRlL2hhc2htZ3IuaHh4 ICAgICAgICAgICAgIHwgIDY5IC0tLS0tCisgc2RrL2h1bnNwZWxsL2luY2x1ZGUvaHR5cGVzLmh4 eCAgICAgICAgICAgICAgfCAgMzIgLS0tCisgc2RrL2h1bnNwZWxsL2luY2x1ZGUvaHVuc3BlbGwu aHh4ICAgICAgICAgICAgfCAxODQgLS0tLS0tLS0tLS0tLS0KKyBzZGsvaHVuc3BlbGwvaW5jbHVk ZS9odW56aXAuaHh4ICAgICAgICAgICAgICB8ICA0NyAtLS0tCisgc2RrL2h1bnNwZWxsL2luY2x1 ZGUvbGFuZ251bS5oeHggICAgICAgICAgICAgfCAgMzggLS0tCisgc2RrL2h1bnNwZWxsL2luY2x1 ZGUvcGhvbmV0Lmh4eCAgICAgICAgICAgICAgfCAgNTIgLS0tLQorIHNkay9odW5zcGVsbC9pbmNs dWRlL3JlcGxpc3QuaHh4ICAgICAgICAgICAgIHwgIDMwIC0tLQorIHNkay9odW5zcGVsbC9pbmNs dWRlL3N1Z2dlc3RtZ3IuaHh4ICAgICAgICAgIHwgMTE1IC0tLS0tLS0tLQorIHNkay9odW5zcGVs bC9pbmNsdWRlL3dfY2hhci5oeHggICAgICAgICAgICAgIHwgIDIxIC0tCisgc2RrL2h1bnNwZWxs L2xpYi9vc3gvbGliaHVuc3BlbGwtMS4zLjAuZHlsaWIgfCBCaW4gMzYzODc2IC0+IDAgYnl0ZXMK KyB3eGNyYWZ0ZXIvbXl4aF9wcm9wZ3JpZC5jcHAgICAgICAgICAgICAgICAgICB8ICAzMiArKy0K KyAyMCBmaWxlcyBjaGFuZ2VkLCAzNiBpbnNlcnRpb25zKCspLCAxNDQxIGRlbGV0aW9ucygtKQor IGRlbGV0ZSBtb2RlIDEwMDY0NCBzZGsvaHVuc3BlbGwvaW5jbHVkZS9hZmZlbnRyeS5oeHgKKyBk ZWxldGUgbW9kZSAxMDA2NDQgc2RrL2h1bnNwZWxsL2luY2x1ZGUvYWZmaXhtZ3IuaHh4CisgZGVs ZXRlIG1vZGUgMTAwNjQ0IHNkay9odW5zcGVsbC9pbmNsdWRlL2F0eXBlcy5oeHgKKyBkZWxldGUg bW9kZSAxMDA2NDQgc2RrL2h1bnNwZWxsL2luY2x1ZGUvYmFzZWFmZml4Lmh4eAorIGRlbGV0ZSBt b2RlIDEwMDY0NCBzZGsvaHVuc3BlbGwvaW5jbHVkZS9jc3V0aWwuaHh4CisgZGVsZXRlIG1vZGUg MTAwNjQ0IHNkay9odW5zcGVsbC9pbmNsdWRlL2RpY3RtZ3IuaHh4CisgZGVsZXRlIG1vZGUgMTAw NjQ0IHNkay9odW5zcGVsbC9pbmNsdWRlL2ZpbGVtZ3IuaHh4CisgZGVsZXRlIG1vZGUgMTAwNjQ0 IHNkay9odW5zcGVsbC9pbmNsdWRlL2hhc2htZ3IuaHh4CisgZGVsZXRlIG1vZGUgMTAwNjQ0IHNk ay9odW5zcGVsbC9pbmNsdWRlL2h0eXBlcy5oeHgKKyBkZWxldGUgbW9kZSAxMDA2NDQgc2RrL2h1 bnNwZWxsL2luY2x1ZGUvaHVuc3BlbGwuaHh4CisgZGVsZXRlIG1vZGUgMTAwNjQ0IHNkay9odW5z cGVsbC9pbmNsdWRlL2h1bnppcC5oeHgKKyBkZWxldGUgbW9kZSAxMDA2NDQgc2RrL2h1bnNwZWxs L2luY2x1ZGUvbGFuZ251bS5oeHgKKyBkZWxldGUgbW9kZSAxMDA2NDQgc2RrL2h1bnNwZWxsL2lu Y2x1ZGUvcGhvbmV0Lmh4eAorIGRlbGV0ZSBtb2RlIDEwMDY0NCBzZGsvaHVuc3BlbGwvaW5jbHVk ZS9yZXBsaXN0Lmh4eAorIGRlbGV0ZSBtb2RlIDEwMDY0NCBzZGsvaHVuc3BlbGwvaW5jbHVkZS9z dWdnZXN0bWdyLmh4eAorIGRlbGV0ZSBtb2RlIDEwMDY0NCBzZGsvaHVuc3BlbGwvaW5jbHVkZS93 X2NoYXIuaHh4CisgZGVsZXRlIG1vZGUgMTAwNzU1IHNkay9odW5zcGVsbC9saWIvb3N4L2xpYmh1 bnNwZWxsLTEuMy4wLmR5bGliCisKK2RpZmYgLS1naXQgYS93eGNyYWZ0ZXIvbXl4aF9wcm9wZ3Jp ZC5jcHAgYi93eGNyYWZ0ZXIvbXl4aF9wcm9wZ3JpZC5jcHAKK2luZGV4IDk3NGJjNjJmMC4uM2Zj YjM4NDVkIDEwMDY0NAorLS0tIGEvd3hjcmFmdGVyL215eGhfcHJvcGdyaWQuY3BwCisrKysgYi93 eGNyYWZ0ZXIvbXl4aF9wcm9wZ3JpZC5jcHAKK0BAIC0xLDQgKzEsNSBAQAorICNpbmNsdWRlICJt eXhoX3Byb3BncmlkLmgiCisrCisgI2luY2x1ZGUgPHd4L2RhdGV0aW1lLmg+CisgI2luY2x1ZGUg PHd4L2xvZy5oPgorICNpbmNsdWRlIDx3eC9wcm9wZ3JpZC9hZHZwcm9wcy5oPgorQEAgLTQ4LDEw ICs0OSwxNCBAQCB3eE9iamVjdCogTXlXeFByb3BHcmlkWG1sSGFuZGxlcjo6RG9DcmVhdGVSZXNv dXJjZSgpCisgCisgICAgICAgICAvLyBhZGQgdGhlIHNwbGl0dGVyIHByb3BlcnR5IGFmdGVyIHRo ZSBjaGlsZHJlbiB3ZXJlIGFkZGVkCisgICAgICAgICBpbnQgc3BsaXR0ZXJMZWZ0ID0gR2V0Qm9v bCgic3BsaXR0ZXJsZWZ0Iik7CistICAgICAgICBpZihzcGxpdHRlckxlZnQpIHsgbV9wZ21nci0+ R2V0UGFnZSgwKS0+U2V0U3BsaXR0ZXJMZWZ0KCk7IH0KKysgICAgICAgIGlmKHNwbGl0dGVyTGVm dCkgeworKyAgICAgICAgICAgIG1fcGdtZ3ItPlNldFNwbGl0dGVyTGVmdCgpOworKyAgICAgICAg fQorIAorICAgICAgICAgaW50IHNwbGl0dGVyUG9zID0gR2V0TG9uZygic3BsaXR0ZXJwb3MiLCB3 eE5PVF9GT1VORCk7CistICAgICAgICBpZihzcGxpdHRlclBvcyAhPSB3eE5PVF9GT1VORCkgeyBt X3BnbWdyLT5HZXRQYWdlKDApLT5TZXRTcGxpdHRlclBvc2l0aW9uKHNwbGl0dGVyUG9zKTsgfQor KyAgICAgICAgaWYoc3BsaXR0ZXJQb3MgIT0gd3hOT1RfRk9VTkQpIHsKKysgICAgICAgICAgICBt X3BnbWdyLT5HZXRQYWdlKDApLT5TZXRTcGxpdHRlclBvc2l0aW9uKHNwbGl0dGVyUG9zKTsKKysg ICAgICAgIH0KKyAKKyAgICAgICAgIG1faXNJbnNpZGUgPSBmYWxzZTsKKyAgICAgICAgIHJldHVy biBtX3BnbWdyOworQEAgLTY3LDcgKzcyLDkgQEAgYm9vbCBNeVd4UHJvcEdyaWRYbWxIYW5kbGVy OjpDYW5IYW5kbGUod3hYbWxOb2RlKiBub2RlKQorIAorIHZvaWQgTXlXeFByb3BHcmlkWG1sSGFu ZGxlcjo6SGFuZGxlUGdQcm9wZXJ0eSh3eFBHUHJvcGVydHkqIHBhcmVudCkKKyB7CistICAgIGlm KCFIYXNQYXJhbSh3eFQoInByb3B0eXBlIikpKSB7IHJldHVybjsgfQorKyAgICBpZighSGFzUGFy YW0od3hUKCJwcm9wdHlwZSIpKSkgeworKyAgICAgICAgcmV0dXJuOworKyAgICB9CisgCisgICAg IC8vIFByb3BlcnR5CisgICAgIHd4U3RyaW5nIHByb3B0eXBlID0gR2V0VGV4dCgicHJvcHR5cGUi KTsKK0BAIC0xMTYsNyArMTIzLDkgQEAgdm9pZCBNeVd4UHJvcEdyaWRYbWxIYW5kbGVyOjpIYW5k bGVQZ1Byb3BlcnR5KHd4UEdQcm9wZXJ0eSogcGFyZW50KQorIAorICAgICB9IGVsc2UgaWYocHJv cHR5cGUgPT0gInd4RW51bVByb3BlcnR5IikgeworICAgICAgICAgaW50IHNlbCA9IGl0ZW1zLklu ZGV4KHZhbHVlKTsKKy0gICAgICAgIGlmKHNlbCA9PSB3eE5PVF9GT1VORCkgeyBzZWwgPSAwOyB9 CisrICAgICAgICBpZihzZWwgPT0gd3hOT1RfRk9VTkQpIHsKKysgICAgICAgICAgICBzZWwgPSAw OworKyAgICAgICAgfQorIAorICAgICAgICAgcHJvcCA9IERvQXBwZW5kUHJvcGVydHkocGFyZW50 LCBuZXcgd3hFbnVtUHJvcGVydHkobGFiZWwsIHd4UEdfTEFCRUwsIGl0ZW1zLCB3eEFycmF5SW50 KCksIHNlbCkpOworIAorQEAgLTE0Myw4ICsxNTIsMTIgQEAgdm9pZCBNeVd4UHJvcEdyaWRYbWxI YW5kbGVyOjpIYW5kbGVQZ1Byb3BlcnR5KHd4UEdQcm9wZXJ0eSogcGFyZW50KQorIAorICAgICAv LyBIYW5kbGUgbmVzdGVkIGNoaWxkcmVuCisgICAgIGlmKHByb3ApIHsKKy0gICAgICAgIGlmKGJn Y29sLklzT2soKSkgeyBwcm9wLT5TZXRCYWNrZ3JvdW5kQ29sb3VyKGJnY29sLCBiZ2NvbFJlY3Vy c2UpOyB9CistICAgICAgICBpZighcHJvcEVkaXRvci5Jc0VtcHR5KCkpIHsgcHJvcC0+U2V0RWRp dG9yKHByb3BFZGl0b3IpOyB9CisrICAgICAgICBpZihiZ2NvbC5Jc09rKCkpIHsKKysgICAgICAg ICAgICBwcm9wLT5TZXRCYWNrZ3JvdW5kQ29sb3VyKGJnY29sLCBiZ2NvbFJlY3Vyc2UpOworKyAg ICAgICAgfQorKyAgICAgICAgaWYoIXByb3BFZGl0b3IuSXNFbXB0eSgpKSB7CisrICAgICAgICAg ICAgcHJvcC0+U2V0RWRpdG9yKHByb3BFZGl0b3IpOworKyAgICAgICAgfQorICAgICAgICAgcHJv cC0+U2V0SGVscFN0cmluZyh0aXApOworIAorICAgICAgICAgLy8gQ2hlY2sgdG8gc2VlIGlmIHRo aXMgcHJvcGVydHkgaGFzIGNoaWxkcmVuCitAQCAtMTYwLDEyICsxNzMsMTUgQEAgdm9pZCBNeVd4 UHJvcEdyaWRYbWxIYW5kbGVyOjpIYW5kbGVQZ1Byb3BlcnR5KHd4UEdQcm9wZXJ0eSogcGFyZW50 KQorIAorIHd4QXJyYXlTdHJpbmcgTXlXeFByb3BHcmlkWG1sSGFuZGxlcjo6R2V0QXJyYXkoY29u c3Qgd3hYbWxOb2RlKiBub2RlKSBjb25zdAorIHsKKy0gICAgaWYoIW5vZGUpIHJldHVybiB3eEFy cmF5U3RyaW5nKCk7CisrICAgIGlmKCFub2RlKQorKyAgICAgICAgcmV0dXJuIHd4QXJyYXlTdHJp bmcoKTsKKyAKKyAgICAgd3hBcnJheVN0cmluZyBpdGVtczsKKyAgICAgd3hYbWxOb2RlKiBjaGls ZCA9IG5vZGUtPkdldENoaWxkcmVuKCk7CisgICAgIHdoaWxlKGNoaWxkKSB7CistICAgICAgICBp ZihjaGlsZC0+R2V0TmFtZSgpID09ICJpdGVtIikgeyBpdGVtcy5BZGQoY2hpbGQtPkdldE5vZGVD b250ZW50KCkpOyB9CisrICAgICAgICBpZihjaGlsZC0+R2V0TmFtZSgpID09ICJpdGVtIikgewor KyAgICAgICAgICAgIGl0ZW1zLkFkZChjaGlsZC0+R2V0Tm9kZUNvbnRlbnQoKSk7CisrICAgICAg ICB9CisgICAgICAgICBjaGlsZCA9IGNoaWxkLT5HZXROZXh0KCk7CisgICAgIH0KKyAgICAgcmV0 dXJuIGl0ZW1zOworLS0gCisyLjQyLjAKKwpkaWZmIC0tZ2l0IGEvc3JjcGtncy9jb2RlbGl0ZS90 ZW1wbGF0ZSBiL3NyY3BrZ3MvY29kZWxpdGUvdGVtcGxhdGUKaW5kZXggYjBiZjhmNTc3MzZhNC4u ZjgyMDY0MjY4ODhmZCAxMDA2NDQKLS0tIGEvc3JjcGtncy9jb2RlbGl0ZS90ZW1wbGF0ZQorKysg Yi9zcmNwa2dzL2NvZGVsaXRlL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBm aWxlIGZvciAnY29kZWxpdGUnCiBwa2duYW1lPWNvZGVsaXRlCiB2ZXJzaW9uPTE2LjAuMAotcmV2 aXNpb249MworcmV2aXNpb249NAogY3JlYXRlX3dya3NyYz15ZXMKIGJ1aWxkX3N0eWxlPWNtYWtl CiBidWlsZF9oZWxwZXI9Y21ha2Utd3hXaWRnZXRzLWd0azMKQEAgLTMyLDYgKzMyLDggQEAgY2Fz ZSAiJFhCUFNfVEFSR0VUX01BQ0hJTkUiIGluCiAJeDg2XzY0KnxwcGM2NGxlKnxhYXJjaDY0Knxh cm0qKSBidWlsZF9vcHRpb25zX2RlZmF1bHQrPSIgbGxkYiI7OwogZXNhYwogCitDWFhGTEFHUz0i LURfTEFSR0VGSUxFX1NPVVJDRSAtRF9GSUxFX09GRlNFVF9CSVRTPTY0IgorCiBwb3N0X2V4dHJh Y3QoKSB7CiAJbXYgY29kZWxpdGUtJHt2ZXJzaW9ufS8qIC4KIAlybSAtcmYgdW5pdmVyc2FsLWN0 YWdzCgpGcm9tIDZlZDg2OWY3Zjk1MDQxMDA4ZjBkMzRjOTAzMzBmM2UyZWQ5MGYyZmYgTW9uIFNl cCAxNyAwMDowMDowMCAyMDAxCkZyb206ICJBbmRyZXcgSi4gSGVzZm9yZCIgPGFqaEBzaWRlYmFu ZC5vcmc+CkRhdGU6IE1vbiwgMjUgU2VwIDIwMjMgMDA6MTg6MjAgLTA0MDAKU3ViamVjdDogW1BB VENIIDIxLzQzXSBkaWZmLXBkZjogcmVidWlsZCB3aXRoIHd4V2lkZ2V0cy1ndGszLTMuMi4yLjEK Ci0tLQogc3JjcGtncy9kaWZmLXBkZi90ZW1wbGF0ZSB8IDQgKysrLQogMSBmaWxlIGNoYW5nZWQs IDMgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZGlm Zi1wZGYvdGVtcGxhdGUgYi9zcmNwa2dzL2RpZmYtcGRmL3RlbXBsYXRlCmluZGV4IDFiMWMxYjY5 MDgxNGMuLjY4ZDY5ODA4YWQ0NDIgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZGlmZi1wZGYvdGVtcGxh dGUKKysrIGIvc3JjcGtncy9kaWZmLXBkZi90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVt cGxhdGUgZmlsZSBmb3IgJ2RpZmYtcGRmJwogcGtnbmFtZT1kaWZmLXBkZgogdmVyc2lvbj0wLjUu MQotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQogY29u ZmlndXJlX2FyZ3M9Ii0td2l0aC13eC1jb25maWc9d3gtY29uZmlnLWd0azMiCiBob3N0bWFrZWRl cGVuZHM9InBrZy1jb25maWciCkBAIC0xMywzICsxMyw1IEBAIGhvbWVwYWdlPSJodHRwczovL3Zz bGF2aWsuZ2l0aHViLmlvL2RpZmYtcGRmLyIKIGNoYW5nZWxvZz0iaHR0cHM6Ly9naXRodWIuY29t L3ZzbGF2aWsvZGlmZi1wZGYvcmVsZWFzZXMiCiBkaXN0ZmlsZXM9Imh0dHBzOi8vZ2l0aHViLmNv bS92c2xhdmlrL2RpZmYtcGRmL3JlbGVhc2VzL2Rvd25sb2FkL3Yke3ZlcnNpb259L2RpZmYtcGRm LSR7dmVyc2lvbn0udGFyLmd6IgogY2hlY2tzdW09MDE3ZDUyY2I3ZGRhYmRiZjYzYzZhNDdmMzli MmU1YTE3OTAwMjJiOTUyOTViMGQwNDc4MTc5MDRlMDkzMjQ1YworCitDWFhGTEFHUz0iLURfTEFS R0VGSUxFX1NPVVJDRSAtRF9GSUxFX09GRlNFVF9CSVRTPTY0IgoKRnJvbSBjOTA2NTAzNjk4OWI1 ZDkxOTkyZTg4YmI2ODIwMTFlMDAxNWVkNmUyIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9t OiAiQW5kcmV3IEouIEhlc2ZvcmQiIDxhamhAc2lkZWJhbmQub3JnPgpEYXRlOiBNb24sIDI1IFNl cCAyMDIzIDAwOjE4OjIwIC0wNDAwClN1YmplY3Q6IFtQQVRDSCAyMi80M10gZXJsYW5nOiByZWJ1 aWxkIHdpdGggd3hXaWRnZXRzLWd0azMtMy4yLjIuMQoKLS0tCiBzcmNwa2dzL2VybGFuZy90ZW1w bGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigt KQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZXJsYW5nL3RlbXBsYXRlIGIvc3JjcGtncy9lcmxhbmcv dGVtcGxhdGUKaW5kZXggNDExZjkyMWY1OWY0OC4uMmI3NTJlZjc4OTZkYyAxMDA2NDQKLS0tIGEv c3JjcGtncy9lcmxhbmcvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9lcmxhbmcvdGVtcGxhdGUKQEAg LTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdlcmxhbmcnCiBwa2duYW1lPWVybGFu ZwogdmVyc2lvbj0yNi4xCi1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiBidWlsZF9zdHlsZT1nbnUt Y29uZmlndXJlCiBtYWtlX2luc3RhbGxfdGFyZ2V0PSJpbnN0YWxsIGluc3RhbGwtZG9jcyIKIGhv c3RtYWtlZGVwZW5kcz0iYXV0b2NvbmYgbGlieHNsdCBwZXJsIHRhciIKCkZyb20gZDQ5MTdlMjhh NjRiYTE3MzE5MzFiMDZkYTdjOTczOTYzYzM4MjE3MSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEK RnJvbTogIkFuZHJldyBKLiBIZXNmb3JkIiA8YWpoQHNpZGViYW5kLm9yZz4KRGF0ZTogTW9uLCAy NSBTZXAgMjAyMyAwMDoxODoyMSAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggMjMvNDNdIGZpbGV6aWxs YTogcmVidWlsZCB3aXRoIHd4V2lkZ2V0cy1ndGszLTMuMi4yLjEKCi0tLQogc3JjcGtncy9maWxl emlsbGEvdGVtcGxhdGUgfCA0ICsrKy0KIDEgZmlsZSBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyks IDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2ZpbGV6aWxsYS90ZW1wbGF0ZSBi L3NyY3BrZ3MvZmlsZXppbGxhL3RlbXBsYXRlCmluZGV4IGM4ZDdmZWFiN2I0ZjUuLmVjNTI1OTJm MjNkMTYgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZmlsZXppbGxhL3RlbXBsYXRlCisrKyBiL3NyY3Br Z3MvZmlsZXppbGxhL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZv ciAnZmlsZXppbGxhJwogcGtnbmFtZT1maWxlemlsbGEKIHZlcnNpb249My42NS4wCi1yZXZpc2lv bj0xCityZXZpc2lvbj0yCiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCiBjb25maWd1cmVfYXJn cz0iLS1kaXNhYmxlLXN0YXRpYyAtLWRpc2FibGUtbWFudWFsdXBkYXRlY2hlY2sgLS1kaXNhYmxl LWF1dG91cGRhdGVjaGVjawogIC0td2l0aC13eC1jb25maWc9d3gtY29uZmlnLWd0azMiCkBAIC0y NCwzICsyNCw1IEBAIGZpCiBjYXNlICIkWEJQU19UQVJHRVRfTUFDSElORSIgaW4KIAlpNjg2Knx4 ODZfNjQqKSAgQ0ZMQUdTPSItbXNzZTIiOzsKIGVzYWMKKworQ1hYRkxBR1M9Ii1EX0xBUkdFRklM RV9TT1VSQ0UgLURfRklMRV9PRkZTRVRfQklUUz02NCIKCkZyb20gZmJjZmFhZjE4OTllNDExZTAz ZDZlZjU1MDg3MTFiYTdiYjRjZmE5OSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogIkFu ZHJldyBKLiBIZXNmb3JkIiA8YWpoQHNpZGViYW5kLm9yZz4KRGF0ZTogTW9uLCAyNSBTZXAgMjAy MyAwMDoxODoyMSAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggMjQvNDNdIGdudXBsb3Q6IHJlYnVpbGQg d2l0aCB3eFdpZGdldHMtZ3RrMy0zLjIuMi4xCgotLS0KIHNyY3BrZ3MvZ251cGxvdC90ZW1wbGF0 ZSB8IDQgKysrLQogMSBmaWxlIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbigt KQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ251cGxvdC90ZW1wbGF0ZSBiL3NyY3BrZ3MvZ251cGxv dC90ZW1wbGF0ZQppbmRleCBhZDBkYmYwNTNkMDAyLi5jNGQ5ZGNiMmE4OTRjIDEwMDY0NAotLS0g YS9zcmNwa2dzL2dudXBsb3QvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9nbnVwbG90L3RlbXBsYXRl CkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZ251cGxvdCcKIHBrZ25hbWU9 Z251cGxvdAogdmVyc2lvbj01LjQuOQotcmV2aXNpb249MQorcmV2aXNpb249MgogY29uZmlndXJl X2FyZ3M9Ii0td2l0aC1yZWFkbGluZT1idWlsdGluIgogaG9zdG1ha2VkZXBlbmRzPSJwa2ctY29u ZmlnIGx1YTUyIgogbWFrZWRlcGVuZHM9InpsaWItZGV2ZWwgbGliWDExLWRldmVsIGdkLWRldmVs IGx1YTUyLWRldmVsIgpAQCAtMjEsNiArMjEsOCBAQCBmaQogCiBhbHRlcm5hdGl2ZXM9ImdudXBs b3Q6Z251cGxvdDovdXNyL2Jpbi9nbnVwbG90LXgxMSIKIAorQ1hYRkxBR1M9Ii1EX0xBUkdFRklM RV9TT1VSQ0UgLURfRklMRV9PRkZTRVRfQklUUz02NCIKKwogcHJlX2NvbmZpZ3VyZSgpIHsKIAkj IGZpeCBmb250cyBsb2NhdGlvbgogCXNlZCAtaSBcCgpGcm9tIDJmNjgyN2M1MGZjZjlmMTgyNzkw MzgzMWZlZDg4NmVkZDY0MWIyNGEgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206ICJBbmRy ZXcgSi4gSGVzZm9yZCIgPGFqaEBzaWRlYmFuZC5vcmc+CkRhdGU6IE1vbiwgMjUgU2VwIDIwMjMg MDA6MTg6MjEgLTA0MDAKU3ViamVjdDogW1BBVENIIDI1LzQzXSBnb2xseTogcmVidWlsZCB3aXRo IHd4V2lkZ2V0cy1ndGszLTMuMi4yLjEKCi0tLQogc3JjcGtncy9nb2xseS90ZW1wbGF0ZSB8IDQg KystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRp ZmYgLS1naXQgYS9zcmNwa2dzL2dvbGx5L3RlbXBsYXRlIGIvc3JjcGtncy9nb2xseS90ZW1wbGF0 ZQppbmRleCA2OTFmOTk5YTZlZGRkLi5kYTM2Mzc3Y2VkMWZiIDEwMDY0NAotLS0gYS9zcmNwa2dz L2dvbGx5L3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZ29sbHkvdGVtcGxhdGUKQEAgLTEsNyArMSw3 IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdnb2xseScKIHBrZ25hbWU9Z29sbHkKIHZlcnNpb249 NC4xCi1yZXZpc2lvbj0yCityZXZpc2lvbj0zCiBidWlsZF93cmtzcmM9Imd1aS13eCIKIGJ1aWxk X3N0eWxlPWdudS1tYWtlZmlsZQogbWFrZV9idWlsZF9hcmdzPSItZiBtYWtlZmlsZS1ndGsgR09M TFlESVI9L3Vzci9zaGFyZS9nb2xseSBMVUFMSUI9LWxsdWE1LjQKQEAgLTE3LDcgKzE3LDcgQEAg aG9tZXBhZ2U9Imh0dHA6Ly9nb2xseS5zb3VyY2Vmb3JnZS5uZXQvIgogZGlzdGZpbGVzPSIke1NP VVJDRUZPUkdFX1NJVEV9LyR7cGtnbmFtZX0vJHtwa2duYW1lfS0ke3ZlcnNpb259LXNyYy50YXIu Z3oiCiBjaGVja3N1bT02YzY1NWE2Y2UyZmQ3NWM2YWU3Mjg5ZGEzOWQwODQxNjJjNmVkODg3YTAx YzIxYzM3NjA4NzJlM2ZmNmQ2MGM4CiAKLUNYWEZMQUdTPSItSS4uL2dvbGx5YmFzZSIKK0NYWEZM QUdTPSItSS4uL2dvbGx5YmFzZSAtRF9MQVJHRUZJTEVfU09VUkNFIC1EX0ZJTEVfT0ZGU0VUX0JJ VFM9NjQiCiAKIHBvc3RfZXh0cmFjdCgpIHsKIAkjIFBPU0lYIG5hbWUgY2xhc2gKCkZyb20gNTIz M2E1MzJhMGYzODhmMGZmOGEzYzA0NzJjOTY2MTMyZjI3NGViYiBNb24gU2VwIDE3IDAwOjAwOjAw IDIwMDEKRnJvbTogIkFuZHJldyBKLiBIZXNmb3JkIiA8YWpoQHNpZGViYW5kLm9yZz4KRGF0ZTog TW9uLCAyNSBTZXAgMjAyMyAwMDoxODoyMSAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggMjYvNDNdIGh1 Z2luOiByZWJ1aWxkIHdpdGggd3hXaWRnZXRzLWd0azMtMy4yLjIuMQoKLS0tCiBzcmNwa2dzL2h1 Z2luL3RlbXBsYXRlIHwgNCArKystCiAxIGZpbGUgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAx IGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9odWdpbi90ZW1wbGF0ZSBiL3NyY3Br Z3MvaHVnaW4vdGVtcGxhdGUKaW5kZXggOTQzZDIzZDFhOTMyZi4uNGQ4MWUzNDgzNTFkMyAxMDA2 NDQKLS0tIGEvc3JjcGtncy9odWdpbi90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2h1Z2luL3RlbXBs YXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnaHVnaW4nCiBwa2duYW1l PWh1Z2luCiB2ZXJzaW9uPTIwMjIuMC4wCi1yZXZpc2lvbj04CityZXZpc2lvbj05CiBidWlsZF9z dHlsZT1jbWFrZQogYnVpbGRfaGVscGVyPWNtYWtlLXd4V2lkZ2V0cy1ndGszCiBweWNvbXBpbGVf ZGlycz0idXNyL3NoYXJlL2h1Z2luL2RhdGEvcGx1Z2lucyB1c3Ivc2hhcmUvaHVnaW4vZGF0YS9w bHVnaW5zLXRlbXBsYXRlcyIKQEAgLTIwLDYgKzIwLDggQEAgZGlzdGZpbGVzPSIke1NPVVJDRUZP UkdFX1NJVEV9L2h1Z2luL2h1Z2luL2h1Z2luLSR7dmVyc2lvbiUuKn0vaHVnaW4tJHt2ZXJzaW9u fS4KIGNoZWNrc3VtPTk3Yzg1NjJhMGJhOWE3NDNlMGI5NTVhNDNkZmRlMDQ4YjFjNjBjZDllNWYy ZWUyYjY5ZGUxYTgxNjQ2ZTA1YTcKIHB5dGhvbl92ZXJzaW9uPTMKIAorQ1hYRkxBR1M9Ii1EX0xB UkdFRklMRV9TT1VSQ0UgLURfRklMRV9PRkZTRVRfQklUUz02NCIKKwogaWYgWyAiJENST1NTX0JV SUxEIiBdOyB0aGVuCiAJaG9zdG1ha2VkZXBlbmRzKz0iIHB5dGhvbjMiCiBlbHNlCgpGcm9tIGNm ZTlhYmJmMzVhNTQyNWQyMTc5MGE4ZGFhYmMxZmFlMDAxM2E3ZjEgTW9uIFNlcCAxNyAwMDowMDow MCAyMDAxCkZyb206ICJBbmRyZXcgSi4gSGVzZm9yZCIgPGFqaEBzaWRlYmFuZC5vcmc+CkRhdGU6 IE1vbiwgMjUgU2VwIDIwMjMgMDA6MTg6MjEgLTA0MDAKU3ViamVjdDogW1BBVENIIDI3LzQzXSBt ZWRpYWluZm86IHJlYnVpbGQgd2l0aCB3eFdpZGdldHMtZ3RrMy0zLjIuMi4xCgotLS0KIHNyY3Br Z3MvbWVkaWFpbmZvL3RlbXBsYXRlIHwgNCArKystCiAxIGZpbGUgY2hhbmdlZCwgMyBpbnNlcnRp b25zKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9tZWRpYWluZm8vdGVt cGxhdGUgYi9zcmNwa2dzL21lZGlhaW5mby90ZW1wbGF0ZQppbmRleCBlODBkYTU5ZWFkODgwLi5k MzU2YTFhYjVlYzY2IDEwMDY0NAotLS0gYS9zcmNwa2dzL21lZGlhaW5mby90ZW1wbGF0ZQorKysg Yi9zcmNwa2dzL21lZGlhaW5mby90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUg ZmlsZSBmb3IgJ21lZGlhaW5mbycKIHBrZ25hbWU9bWVkaWFpbmZvCiB2ZXJzaW9uPTIyLjEyCi1y ZXZpc2lvbj0xCityZXZpc2lvbj0yCiBjb25maWd1cmVfYXJncz0iLS13aXRoLXd4LWNvbmZpZz13 eC1jb25maWctZ3RrMyIKIGhvc3RtYWtlZGVwZW5kcz0iYXV0b21ha2UgbGlidG9vbCBwa2ctY29u ZmlnIgogbWFrZWRlcGVuZHM9ImxpYm1lZGlhaW5mby1kZXZlbCB6bGliLWRldmVsIHd4V2lkZ2V0 cy1ndGszLWRldmVsIgpAQCAtMTQsNiArMTQsOCBAQCBkaXN0ZmlsZXM9Imh0dHBzOi8vbWVkaWFh cmVhLm5ldC9kb3dubG9hZC9zb3VyY2UvJHtwa2duYW1lfS8ke3ZlcnNpb259LyR7cGtnbmFtZQog Y2hlY2tzdW09OTMyYjgyNzM5ZjczOGU3ZGI2MDNjZjViYjE3MDcyMDczMWE5ZTdjNjFkMTQ1YzJh NTRhYWJiM2NkMGI3NTNiYwogcmVwbGFjZXM9Im1lZGlhaW5mby1ndWk+PTAiCiAKK0NYWEZMQUdT PSItRF9MQVJHRUZJTEVfU09VUkNFIC1EX0ZJTEVfT0ZGU0VUX0JJVFM9NjQiCisKIGRvX2NvbmZp Z3VyZSgpIHsKIAlmb3IgZCBpbiBDTEkgR1VJOyBkbwogCQljZCAkd3Jrc3JjL1Byb2plY3QvR05V LyRkCgpGcm9tIDU5OWQzM2IxMTk1MDI2MDRkZGI5NzgxNTE4ZDU5YzEwY2YzNmRiM2EgTW9uIFNl cCAxNyAwMDowMDowMCAyMDAxCkZyb206ICJBbmRyZXcgSi4gSGVzZm9yZCIgPGFqaEBzaWRlYmFu ZC5vcmc+CkRhdGU6IE1vbiwgMjUgU2VwIDIwMjMgMDA6MTg6MjEgLTA0MDAKU3ViamVjdDogW1BB VENIIDI4LzQzXSBvcGVuYmFiZWw6IHJlYnVpbGQgd2l0aCB3eFdpZGdldHMtZ3RrMy0zLjIuMi4x CgotLS0KIHNyY3BrZ3Mvb3BlbmJhYmVsL3RlbXBsYXRlIHwgNCArKystCiAxIGZpbGUgY2hhbmdl ZCwgMyBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9v cGVuYmFiZWwvdGVtcGxhdGUgYi9zcmNwa2dzL29wZW5iYWJlbC90ZW1wbGF0ZQppbmRleCA0MWRi ODQ4ZDc0ZTRjLi5kMGIwNTkwMjZkYTM0IDEwMDY0NAotLS0gYS9zcmNwa2dzL29wZW5iYWJlbC90 ZW1wbGF0ZQorKysgYi9zcmNwa2dzL29wZW5iYWJlbC90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAK ICMgVGVtcGxhdGUgZmlsZSBmb3IgJ29wZW5iYWJlbCcKIHBrZ25hbWU9b3BlbmJhYmVsCiB2ZXJz aW9uPTMuMS4xCi1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiBfdmVyPSR7dmVyc2lvbi8vLi8tfQog YnVpbGRfc3R5bGU9Y21ha2UKIGJ1aWxkX2hlbHBlcj1jbWFrZS13eFdpZGdldHMtZ3RrMwpAQCAt MTQsNiArMTQsOCBAQCBob21lcGFnZT0iaHR0cDovL29wZW5iYWJlbC5vcmciCiBkaXN0ZmlsZXM9 Imh0dHBzOi8vZ2l0aHViLmNvbS9vcGVuYmFiZWwvb3BlbmJhYmVsL2FyY2hpdmUvb3BlbmJhYmVs LSR7X3Zlcn0udGFyLmd6IgogY2hlY2tzdW09Yzk3MDIzYWM2MzAwZDI2MTc2Yzk3ZDRlZjM5OTU3 ZjA2ZTY4ODQ4ZDY0ZjFhMDRiMGIyODRjY2ZmMjc0NGYwMgogCitDWFhGTEFHUz0iLURfTEFSR0VG SUxFX1NPVVJDRSAtRF9GSUxFX09GRlNFVF9CSVRTPTY0IgorCiBvcGVuYmFiZWwtZGV2ZWxfcGFj a2FnZSgpIHsKIAlkZXBlbmRzPSIke3NvdXJjZXBrZ30+PSR7dmVyc2lvbn1fJHtyZXZpc2lvbn0i CiAJc2hvcnRfZGVzYys9IiAtIGRldmVsb3BtZW50IGZpbGVzIgoKRnJvbSAyMzJjNzA4NTliODhj OWNmYTJjN2EyZTRlMGU5MTFjNzM2OGZmM2ZhIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9t OiAiQW5kcmV3IEouIEhlc2ZvcmQiIDxhamhAc2lkZWJhbmQub3JnPgpEYXRlOiBNb24sIDI1IFNl cCAyMDIzIDAwOjE4OjIyIC0wNDAwClN1YmplY3Q6IFtQQVRDSCAyOS80M10gcGFzc3dvcmRzYWZl OiByZWJ1aWxkIHdpdGggd3hXaWRnZXRzLWd0azMtMy4yLjIuMQoKLS0tCiBzcmNwa2dzL3Bhc3N3 b3Jkc2FmZS90ZW1wbGF0ZSB8IDQgKysrLQogMSBmaWxlIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygr KSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcGFzc3dvcmRzYWZlL3RlbXBs YXRlIGIvc3JjcGtncy9wYXNzd29yZHNhZmUvdGVtcGxhdGUKaW5kZXggODhmZmE0MWY0NzRiYy4u OTlkODZmZWViMjE1ZiAxMDA2NDQKLS0tIGEvc3JjcGtncy9wYXNzd29yZHNhZmUvdGVtcGxhdGUK KysrIGIvc3JjcGtncy9wYXNzd29yZHNhZmUvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRl bXBsYXRlIGZpbGUgZm9yICdwYXNzd29yZHNhZmUnCiBwa2duYW1lPXBhc3N3b3Jkc2FmZQogdmVy c2lvbj0xLjE2LjAKLXJldmlzaW9uPTEKK3JldmlzaW9uPTIKIGJ1aWxkX3N0eWxlPWNtYWtlCiBi dWlsZF9oZWxwZXI9Y21ha2Utd3hXaWRnZXRzLWd0azMKICMgYnVpbGQgcHJvY2VzcyB1c2VzIHBl cmwgdG8gZ2VuZXJhdGUgY29yZV9zdC5jcHAgYW5kIHppcCB0byBnZW5lcmF0ZSBoZWxwIGZpbGVz CkBAIC0xNiw2ICsxNiw4IEBAIGhvbWVwYWdlPSJodHRwczovL3B3c2FmZS5vcmciCiBkaXN0Zmls ZXM9Imh0dHBzOi8vZ2l0aHViLmNvbS9wd3NhZmUvcHdzYWZlL2FyY2hpdmUvJHt2ZXJzaW9ufS50 YXIuZ3oiCiBjaGVja3N1bT02MjE1ZjdiMDUyNDgwZjAzMjc2YjNlYTU5MGI5Y2RkMjMxODBkYjhk NWQ0YTE5MTg1ZjNkZjdiNmRkYmExMWY4CiAKK0NYWEZMQUdTPSItRF9MQVJHRUZJTEVfU09VUkNF IC1EX0ZJTEVfT0ZGU0VUX0JJVFM9NjQiCisKIGlmIFsgIiRYQlBTX0NIRUNLX1BLR1MiIF07IHRo ZW4KIAljb25maWd1cmVfYXJncys9IiAtRE5PX0dURVNUPU9GRiIKIGVsc2UKCkZyb20gM2Q2ZDNk YzJhY2FhMjdjZmIzNGZiNTA0MWNmMTAwZWNkYTkyZjgzYSBNb24gU2VwIDE3IDAwOjAwOjAwIDIw MDEKRnJvbTogIkFuZHJldyBKLiBIZXNmb3JkIiA8YWpoQHNpZGViYW5kLm9yZz4KRGF0ZTogTW9u LCAyNSBTZXAgMjAyMyAwMDoxODoyMiAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggMzAvNDNdIHBvZWRp dDogcmVidWlsZCB3aXRoIHd4V2lkZ2V0cy1ndGszLTMuMi4yLjEKCi0tLQogc3JjcGtncy9wb2Vk aXQvdGVtcGxhdGUgfCAzICsrLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMSBk ZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcG9lZGl0L3RlbXBsYXRlIGIvc3JjcGtn cy9wb2VkaXQvdGVtcGxhdGUKaW5kZXggNDllN2VmZTk2NTQ3Ni4uYTc4ZmVhZGU2OTQxNSAxMDA2 NDQKLS0tIGEvc3JjcGtncy9wb2VkaXQvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9wb2VkaXQvdGVt cGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdwb2VkaXQnCiBwa2du YW1lPXBvZWRpdAogdmVyc2lvbj0zLjMuMgotcmV2aXNpb249MworcmV2aXNpb249NAogYnVpbGRf c3R5bGU9Z251LWNvbmZpZ3VyZQogY29uZmlndXJlX2FyZ3M9Ii0td2l0aC13eC1jb25maWc9d3gt Y29uZmlnLWd0azMiCiBob3N0bWFrZWRlcGVuZHM9InBrZy1jb25maWciCkBAIC0xNyw2ICsxNyw3 IEBAIGRpc3RmaWxlcz0iaHR0cHM6Ly9naXRodWIuY29tL3ZzbGF2aWsvcG9lZGl0L3JlbGVhc2Vz L2Rvd25sb2FkL3Yke3ZlcnNpb259LW9zcy9wCiBjaGVja3N1bT1lNjQxMzlkZDRiZWFjMWI4ZWE0 NjhkMzUxYjJiNGJkYWU4ZWNiYzZmNGNhNWQxZWUxYzczODMyMDM2ZmZmMDk3CiAKIENQUEZMQUdT PSItRFVDSEFSX1RZUEU9dWludDE2X3QgLVduby1kZXByZWNhdGVkLWNvcHkiCitDWFhGTEFHUz0i LURfTEFSR0VGSUxFX1NPVVJDRSAtRF9GSUxFX09GRlNFVF9CSVRTPTY0IgogCiBpZiBbICIkQ1JP U1NfQlVJTEQiIF07IHRoZW4KIAlob3N0bWFrZWRlcGVuZHMrPSIgd3hXaWRnZXRzLWNvbW1vbi1k ZXZlbCIKCkZyb20gOWQyYmQ2YTVlNWViM2ZjNGRlOWRmYjFhZjU0NjVmZTljMGFiNThiOSBNb24g U2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogIkFuZHJldyBKLiBIZXNmb3JkIiA8YWpoQHNpZGVi YW5kLm9yZz4KRGF0ZTogTW9uLCAyNSBTZXAgMjAyMyAwMDoxODoyMiAtMDQwMApTdWJqZWN0OiBb UEFUQ0ggMzEvNDNdIHNwZWstYWx0ZXJuYXRpdmU6IHJlYnVpbGQgd2l0aCB3eFdpZGdldHMtZ3Rr My0zLjIuMi4xCgotLS0KIHNyY3BrZ3Mvc3Blay1hbHRlcm5hdGl2ZS90ZW1wbGF0ZSB8IDcgKysr KystLQogMSBmaWxlIGNoYW5nZWQsIDUgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRp ZmYgLS1naXQgYS9zcmNwa2dzL3NwZWstYWx0ZXJuYXRpdmUvdGVtcGxhdGUgYi9zcmNwa2dzL3Nw ZWstYWx0ZXJuYXRpdmUvdGVtcGxhdGUKaW5kZXggZDY1MDg2YjhmMDA4Yy4uZDdiNTVjNzc2YjFk NCAxMDA2NDQKLS0tIGEvc3JjcGtncy9zcGVrLWFsdGVybmF0aXZlL3RlbXBsYXRlCisrKyBiL3Ny Y3BrZ3Mvc3Blay1hbHRlcm5hdGl2ZS90ZW1wbGF0ZQpAQCAtMSw5ICsxLDEwIEBACiAjIFRlbXBs YXRlIGZpbGUgZm9yICdzcGVrLWFsdGVybmF0aXZlJwogcGtnbmFtZT1zcGVrLWFsdGVybmF0aXZl CiB2ZXJzaW9uPTAuOC4yLjMKLXJldmlzaW9uPTEKK3JldmlzaW9uPTIKIGJ1aWxkX3N0eWxlPWdu dS1jb25maWd1cmUKLWhvc3RtYWtlZGVwZW5kcz0iYXV0b21ha2UgZ2V0dGV4dC1kZXZlbCBpbnRs dG9vbCBsaWJ0b29sIHBrZy1jb25maWcgd3hXaWRnZXRzLWNvbW1vbiIKK2hvc3RtYWtlZGVwZW5k cz0iYXV0b21ha2UgZ2V0dGV4dC1kZXZlbCBpbnRsdG9vbCBsaWJ0b29sIHBrZy1jb25maWcKKyB3 eFdpZGdldHMtY29tbW9uIHd4V2lkZ2V0cy1ndGszLWRldmVsIgogbWFrZWRlcGVuZHM9ImZmbXBl Zy1kZXZlbCB3eFdpZGdldHMtZ3RrMy1kZXZlbCIKIGRlcGVuZHM9ImZmbXBlZyIKIHNob3J0X2Rl c2M9IkFjb3VzdGljIHNwZWN0cnVtIGFuYWx5c2VyIgpAQCAtMTMsNiArMTQsOCBAQCBob21lcGFn ZT0iaHR0cHM6Ly9naXRodWIuY29tL3dpdGhtb3J0ZW4vc3Blay1hbHRlcm5hdGl2ZSIKIGRpc3Rm aWxlcz0iaHR0cHM6Ly9naXRodWIuY29tL3dpdGhtb3J0ZW4vc3Blay1hbHRlcm5hdGl2ZS9hcmNo aXZlLyR7dmVyc2lvbn0udGFyLmd6IgogY2hlY2tzdW09IjAwN2JhNGI4NGEzMTBiMDc4ZTM3OGFh ODRjOGU4MDc4M2RiNTgyMTQzN2E3NTdhNDg4YzNlY2VjMzc3ZTZiMmEiCiAKK0NYWEZMQUdTPSIt RF9MQVJHRUZJTEVfU09VUkNFIC1EX0ZJTEVfT0ZGU0VUX0JJVFM9NjQiCisKICMgVGVsbCBhdXRv Z2VuLnNoIHRvIHVzZSAid3gtY29uZmlnLWd0azMiIGluc3RlYWQgb2YgInd4LWNvbmZpZyIKIGV4 cG9ydCBXWF9DT05GSUdfTkFNRT0id3gtY29uZmlnLWd0azMiCiAKCkZyb20gZDI3YWI0ZjBjNWNh Y2EyNTMzMTJmMzZiYTUwODBhZjk4OWE0NjU1NyBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJv bTogIkFuZHJldyBKLiBIZXNmb3JkIiA8YWpoQHNpZGViYW5kLm9yZz4KRGF0ZTogTW9uLCAyNSBT ZXAgMjAyMyAwMDoxODoyMiAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggMzIvNDNdIHRxc2w6IHJlYnVp bGQgd2l0aCB3eFdpZGdldHMtZ3RrMy0zLjIuMi4xCgotLS0KIHNyY3BrZ3MvdHFzbC90ZW1wbGF0 ZSB8IDQgKysrLQogMSBmaWxlIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbigt KQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvdHFzbC90ZW1wbGF0ZSBiL3NyY3BrZ3MvdHFzbC90ZW1w bGF0ZQppbmRleCA2MTM4OWIwNWU2MmQ0Li4zMTZkNGE5MWM4ZjE0IDEwMDY0NAotLS0gYS9zcmNw a2dzL3Rxc2wvdGVtcGxhdGUKKysrIGIvc3JjcGtncy90cXNsL3RlbXBsYXRlCkBAIC0xLDcgKzEs NyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAndHFzbCcKIHBrZ25hbWU9dHFzbAogdmVyc2lvbj0y LjYuNQotcmV2aXNpb249MgorcmV2aXNpb249MwogYnVpbGRfc3R5bGU9Y21ha2UKIGJ1aWxkX2hl bHBlcj1jbWFrZS13eFdpZGdldHMtZ3RrMwogaG9zdG1ha2VkZXBlbmRzPSJ3eFdpZGdldHMtZ3Rr My1kZXZlbCIKQEAgLTE0LDYgKzE0LDggQEAgaG9tZXBhZ2U9Imh0dHBzOi8vd3d3LmFycmwub3Jn L3Rxc2wtZG93bmxvYWQiCiBkaXN0ZmlsZXM9Imh0dHBzOi8vd3d3LmFycmwub3JnL3Rxc2wvdHFz bC0ke3ZlcnNpb259LnRhci5neiIKIGNoZWNrc3VtPTUwNjNjY2E3NTk4MDZhYjFkNmI4YjZkOWJi NmMxNmE2MzgwMjc1ZmYxOTJhM2QwY2MyNGFhOWRmNjUzOWZmY2MKIAorQ1hYRkxBR1M9Ii1EX0xB UkdFRklMRV9TT1VSQ0UgLURfRklMRV9PRkZTRVRfQklUUz02NCIKKwogcG9zdF9pbnN0YWxsKCkg ewogCXZsaWNlbnNlIExJQ0VOU0UudHh0CiAJdmluc3RhbGwgYXBwcy90cXNsLmRlc2t0b3AgNjQ0 IHVzci9zaGFyZS9hcHBsaWNhdGlvbnMKCkZyb20gYTcyOGUwZjRiNGI1YzcyNjNkYmRkMGEzZjgx NmJhZGZmYjJlYjRjYyBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogIkFuZHJldyBKLiBI ZXNmb3JkIiA8YWpoQHNpZGViYW5kLm9yZz4KRGF0ZTogTW9uLCAyNSBTZXAgMjAyMyAwMDoxODoy MiAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggMzMvNDNdIHRyZWVzaGVldHM6IHJlYnVpbGQgd2l0aCB3 eFdpZGdldHMtZ3RrMy0zLjIuMi4xCgotLS0KIHNyY3BrZ3MvdHJlZXNoZWV0cy90ZW1wbGF0ZSB8 IDQgKysrLQogMSBmaWxlIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbigtKQoK ZGlmZiAtLWdpdCBhL3NyY3BrZ3MvdHJlZXNoZWV0cy90ZW1wbGF0ZSBiL3NyY3BrZ3MvdHJlZXNo ZWV0cy90ZW1wbGF0ZQppbmRleCBkNWY2MjY5OWFmNGEyLi44ZTU4Y2Q0NzAxYTFhIDEwMDY0NAot LS0gYS9zcmNwa2dzL3RyZWVzaGVldHMvdGVtcGxhdGUKKysrIGIvc3JjcGtncy90cmVlc2hlZXRz L3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAndHJlZXNoZWV0 cycKIHBrZ25hbWU9dHJlZXNoZWV0cwogdmVyc2lvbj0xLjAuMgotcmV2aXNpb249MQorcmV2aXNp b249MgogYnVpbGRfc3R5bGU9Y21ha2UKIGJ1aWxkX2hlbHBlcj0iY21ha2Utd3hXaWRnZXRzLWd0 azMiCiBtYWtlZGVwZW5kcz0id3hXaWRnZXRzLWd0azMtZGV2ZWwiCkBAIC0xMiw2ICsxMiw4IEBA IGhvbWVwYWdlPSJodHRwOi8vc3RybGVuLmNvbS90cmVlc2hlZXRzLyIKIGRpc3RmaWxlcz0iaHR0 cHM6Ly9naXRodWIuY29tL2FhcmRhcHBlbC90cmVlc2hlZXRzL2FyY2hpdmUvdiR7dmVyc2lvbn0u dGFyLmd6IgogY2hlY2tzdW09ODRlYjgyZjEyMmJjN2JlM2RlZDM5OWQyNTExNTM2MTI4OTExNDc3 YTRhNjljNTFiMjZiODU2ZGUyMTYwNDA1ZgogCitDWFhGTEFHUz0iLURfTEFSR0VGSUxFX1NPVVJD RSAtRF9GSUxFX09GRlNFVF9CSVRTPTY0IgorCiBkb19pbnN0YWxsKCkgewogCXZta2RpciB1c3Iv bGliLyR7cGtnbmFtZX0KIAoKRnJvbSBiY2JmYjQzNWNjNDRkZmNjNjU1Mjg3NmM5NTdlMjhlZDRl ZTUxYmEwIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiAiQW5kcmV3IEouIEhlc2ZvcmQi IDxhamhAc2lkZWJhbmQub3JnPgpEYXRlOiBNb24sIDI1IFNlcCAyMDIzIDAwOjE4OjIyIC0wNDAw ClN1YmplY3Q6IFtQQVRDSCAzNC80M10gdmJhLW06IHJlYnVpbGQgd2l0aCB3eFdpZGdldHMtZ3Rr My0zLjIuMi4xCgotLS0KIHNyY3BrZ3MvdmJhLW0vdGVtcGxhdGUgfCA0ICsrKy0KIDEgZmlsZSBj aGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNw a2dzL3ZiYS1tL3RlbXBsYXRlIGIvc3JjcGtncy92YmEtbS90ZW1wbGF0ZQppbmRleCA0MTE1YTlm NjIxNDgxLi45YzcxY2VmZTNmOGRkIDEwMDY0NAotLS0gYS9zcmNwa2dzL3ZiYS1tL3RlbXBsYXRl CisrKyBiL3NyY3BrZ3MvdmJhLW0vdGVtcGxhdGUKQEAgLTIsNyArMiw3IEBACiBwa2duYW1lPXZi YS1tCiByZXZlcnRzPTEyOTJfMgogdmVyc2lvbj0yLjEuNwotcmV2aXNpb249MQorcmV2aXNpb249 MgogYnVpbGRfc3R5bGU9Y21ha2UKIGNvbmZpZ3VyZV9hcmdzPSItREVOQUJMRV9HVEs9VFJVRSAt REVOQUJMRV9GRk1QRUc9VFJVRSAtREVOQUJMRV9MSU5LPVRSVUUgLURDTUFLRV9CVUlMRF9UWVBF PVJlbGVhc2UiCiBob3N0bWFrZWRlcGVuZHM9ImdldHRleHQgcGtnLWNvbmZpZyB1bnppcCB6aXAg eWFzbSB3eFdpZGdldHMtZ3RrMy1kZXZlbCIKQEAgLTE1LDMgKzE1LDUgQEAgbGljZW5zZT0iR1BM LTIuMC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL2dpdGh1Yi5jb20vdmlzdWFsYm95YWR2 YW5jZS1tL3Zpc3VhbGJveWFkdmFuY2UtbS8iCiBkaXN0ZmlsZXM9Imh0dHBzOi8vZ2l0aHViLmNv bS92aXN1YWxib3lhZHZhbmNlLW0vdmlzdWFsYm95YWR2YW5jZS1tL2FyY2hpdmUvdiR7dmVyc2lv bn0udGFyLmd6IgogY2hlY2tzdW09ZjdkMDgxNWE2NTY3N2Y3OTRlZTY4ODkyYzk1NjYyNTQwMjNh ZjY0MWM3MmY5ZTA2YjQyMzBiNmM2MTc5MDc0MworCitDWFhGTEFHUz0iLURfTEFSR0VGSUxFX1NP VVJDRSAtRF9GSUxFX09GRlNFVF9CSVRTPTY0IgoKRnJvbSA3OGRiY2JlZDhjMWUwODI1YzU3ZDMy ZTliMDBiNzliZGMyMDE0NjYzIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiAiQW5kcmV3 IEouIEhlc2ZvcmQiIDxhamhAc2lkZWJhbmQub3JnPgpEYXRlOiBNb24sIDI1IFNlcCAyMDIzIDAw OjE4OjIyIC0wNDAwClN1YmplY3Q6IFtQQVRDSCAzNS80M10gd2ludXNiOiByZWJ1aWxkIHdpdGgg d3hXaWRnZXRzLWd0azMtMy4yLjIuMQoKLS0tCiBzcmNwa2dzL3dpbnVzYi90ZW1wbGF0ZSB8IDQg KysrLQogMSBmaWxlIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbigtKQoKZGlm ZiAtLWdpdCBhL3NyY3BrZ3Mvd2ludXNiL3RlbXBsYXRlIGIvc3JjcGtncy93aW51c2IvdGVtcGxh dGUKaW5kZXggNjRlYzhmY2UxMmIwMC4uNWYxMTZhMzM2YjYxZSAxMDA2NDQKLS0tIGEvc3JjcGtn cy93aW51c2IvdGVtcGxhdGUKKysrIGIvc3JjcGtncy93aW51c2IvdGVtcGxhdGUKQEAgLTEsNyAr MSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICd3aW51c2InCiBwa2duYW1lPXdpbnVzYgogdmVy c2lvbj0xLjAuMTEKLXJldmlzaW9uPTEwCityZXZpc2lvbj0xMQogYXJjaHM9Imk2ODYqIHg4Nl82 NCoiCiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCiBjb25maWd1cmVfYXJncz0iLS13aXRoLXd4 LWNvbmZpZz13eC1jb25maWctZ3RrMyIKQEAgLTIxLDYgKzIxLDggQEAgY2FzZSAiJHtYQlBTX1RB UkdFVF9NQUNISU5FfSIgaW4KIAlpNjg2KikgZGVwZW5kcys9IiBncnViLWkzODYtZWZpIjsgbWFr ZWRlcGVuZHMrPSIgZ3J1Yi1pMzg2LWVmaSIgOzsKIGVzYWMKIAorQ1hYRkxBR1M9Ii1EX0xBUkdF RklMRV9TT1VSQ0UgLURfRklMRV9PRkZTRVRfQklUUz02NCIKKwogcG9zdF9jb25maWd1cmUoKSB7 CiAJc2VkIC1pIE1ha2VmaWxlIHNyYy9NYWtlZmlsZSBcCiAJCS1lInM7XlwoQ1hYRkxBR1MgKj1c KVwoLipcKTtcMSAke0NYWEZMQUdTfSBcMjsiCgpGcm9tIGY3NTcyNTI0YzFmYzM5MThiZDk0YTQw YmE0OTM3ZWViYjc3OTMxZTAgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206ICJBbmRyZXcg Si4gSGVzZm9yZCIgPGFqaEBzaWRlYmFuZC5vcmc+CkRhdGU6IE1vbiwgMjUgU2VwIDIwMjMgMDA6 MTg6MjMgLTA0MDAKU3ViamVjdDogW1BBVENIIDM2LzQzXSB3eE1heGltYTogcmVidWlsZCB3aXRo IHd4V2lkZ2V0cy1ndGszLTMuMi4yLjEKCi0tLQogc3JjcGtncy93eE1heGltYS90ZW1wbGF0ZSB8 IDQgKysrLQogMSBmaWxlIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbigtKQoK ZGlmZiAtLWdpdCBhL3NyY3BrZ3Mvd3hNYXhpbWEvdGVtcGxhdGUgYi9zcmNwa2dzL3d4TWF4aW1h L3RlbXBsYXRlCmluZGV4IDFlNTEyYzM5NjQ0YjkuLjc0OWU0ODFkZDhmZTMgMTAwNjQ0Ci0tLSBh L3NyY3BrZ3Mvd3hNYXhpbWEvdGVtcGxhdGUKKysrIGIvc3JjcGtncy93eE1heGltYS90ZW1wbGF0 ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ3d4TWF4aW1hJwogcGtnbmFt ZT13eE1heGltYQogdmVyc2lvbj0yMC4wMi40Ci1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiBidWls ZF9zdHlsZT1jbWFrZQogY29uZmlndXJlX2FyZ3M9Ii1Ed3hXaWRnZXRzX0NPTkZJR19FWEVDVVRB QkxFPS91c3IvYmluL3d4LWNvbmZpZy1ndGszIgogaG9zdG1ha2VkZXBlbmRzPSJnZXR0ZXh0IHBl cmwgZGVza3RvcC1maWxlLXV0aWxzIGRveHlnZW4gcG80YSIKQEAgLTE1LDYgKzE1LDggQEAgZGlz dGZpbGVzPSJodHRwczovL2dpdGh1Yi5jb20vd3hNYXhpbWEtZGV2ZWxvcGVycy93eG1heGltYS9h cmNoaXZlL1ZlcnNpb24tJHt2ZXIKIGNoZWNrc3VtPWQ0N2NhNTJlNDA0OTFlYTNjNGVhN2JlYTEy NmY0ZGE0ZDBiNTM1NzAyMTI2YWJlZjBjMTcyZjY5YmE1OGUxN2QKIG5vY3Jvc3M9ImNsaXNwIGlz IG5vY3Jvc3MiCiAKK0NYWEZMQUdTPSItRF9MQVJHRUZJTEVfU09VUkNFIC1EX0ZJTEVfT0ZGU0VU X0JJVFM9NjQiCisKIHBvc3RfaW5zdGFsbCgpIHsKIAkjIHJlbW92ZSB1bnBhY2thZ2VkIGZpbGVz CiAJcm0gLWYgJHtERVNURElSfS91c3Ivc2hhcmUvd3hNYXhpbWEve0NPUFlJTkcsUkVBRE1FfQoK RnJvbSAxY2NkYWFjNzEzM2QwODU3OGFlNmZkODJiOWNkMDY4MzQxZWNlN2Y4IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiAiQW5kcmV3IEouIEhlc2ZvcmQiIDxhamhAc2lkZWJhbmQub3Jn PgpEYXRlOiBNb24sIDI1IFNlcCAyMDIzIDAwOjE4OjIzIC0wNDAwClN1YmplY3Q6IFtQQVRDSCAz Ny80M10geGNobTogcmVidWlsZCB3aXRoIHd4V2lkZ2V0cy1ndGszLTMuMi4yLjEKCi0tLQogc3Jj cGtncy94Y2htL3RlbXBsYXRlIHwgNCArKystCiAxIGZpbGUgY2hhbmdlZCwgMyBpbnNlcnRpb25z KCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy94Y2htL3RlbXBsYXRlIGIv c3JjcGtncy94Y2htL3RlbXBsYXRlCmluZGV4IDAyOTAwYjQzMzg1ZWMuLjY2YjgxNTZlNDMxZWMg MTAwNjQ0Ci0tLSBhL3NyY3BrZ3MveGNobS90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3hjaG0vdGVt cGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICd4Y2htJwogcGtnbmFt ZT14Y2htCiB2ZXJzaW9uPTEuMzQKLXJldmlzaW9uPTEKK3JldmlzaW9uPTIKIGJ1aWxkX3N0eWxl PWdudS1jb25maWd1cmUKIGNvbmZpZ3VyZV9hcmdzPSItLXdpdGgtd3gtY29uZmlnPXd4LWNvbmZp Zy1ndGszIgogaG9zdG1ha2VkZXBlbmRzPSJhdXRvbWFrZSBnZXR0ZXh0LWRldmVsIHRhciIKQEAg LTEzLDYgKzEzLDggQEAgaG9tZXBhZ2U9Imh0dHBzOi8vZ2l0aHViLmNvbS9yenZuY2oveENITSIK IGRpc3RmaWxlcz0iaHR0cHM6Ly9naXRodWIuY29tL3J6dm5jai94Q0hNL3JlbGVhc2VzL2Rvd25s b2FkLyR7dmVyc2lvbn0veGNobS0ke3ZlcnNpb259LnRhci5neiIKIGNoZWNrc3VtPWIwNzk3MWRk YjAyOTkyZGE0NjIwNjBmYjYzOGMwNTEzMThmMzg5YWVmODIyNDg1NjQ2YWE3ZmJlMjQ1YTBkOTMK IAorQ1hYRkxBR1M9Ii1EX0xBUkdFRklMRV9TT1VSQ0UgLURfRklMRV9PRkZTRVRfQklUUz02NCIK KwogcHJlX2NvbmZpZ3VyZSgpIHsKIAlhdXRvcmVjb25mIC1maQogfQoKRnJvbSAxZGI4YWRlZjNh MGMyZTUzZmUzOTA4ZDg3YmExOTUxYzA0NTBmMjMyIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpG cm9tOiAiQW5kcmV3IEouIEhlc2ZvcmQiIDxhamhAc2lkZWJhbmQub3JnPgpEYXRlOiBNb24sIDI1 IFNlcCAyMDIzIDA4OjAyOjA1IC0wNDAwClN1YmplY3Q6IFtQQVRDSCAzOC80M10gY2hpcnA6IHJl YnVpbGQgYWdhaW5zdCBuZXcgd3hQeXRob24KCi0tLQogc3JjcGtncy9jaGlycC90ZW1wbGF0ZSB8 IDQgKystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkK CmRpZmYgLS1naXQgYS9zcmNwa2dzL2NoaXJwL3RlbXBsYXRlIGIvc3JjcGtncy9jaGlycC90ZW1w bGF0ZQppbmRleCBkMjM4NmJhNDk2NmJlLi4xOGI0MWMyNmI2MjdkIDEwMDY0NAotLS0gYS9zcmNw a2dzL2NoaXJwL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvY2hpcnAvdGVtcGxhdGUKQEAgLTEsMTAg KzEsMTAgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2NoaXJwJwogcGtnbmFtZT1jaGlycAogdmVy c2lvbj0yMDIzMDkxMQotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfc3R5bGU9cHl0aG9u My1wZXA1MTcKIGhvc3RtYWtlZGVwZW5kcz0icHl0aG9uMy1zZXR1cHRvb2xzIHB5dGhvbjMtd2hl ZWwiCi1kZXBlbmRzPSJweXRob24zLXNpeCB3eFB5dGhvbjQgcHl0aG9uMy1weXNlcmlhbCBweXRo b24zLWZ1dHVyZSBweXRob24zLXJlcXVlc3RzCitkZXBlbmRzPSJweXRob24zLXNpeCB3eFB5dGhv biBweXRob24zLXB5c2VyaWFsIHB5dGhvbjMtZnV0dXJlIHB5dGhvbjMtcmVxdWVzdHMKICBweXRo b24zLXN1ZHMgcHl0aG9uMy15YXR0YWciCiBzaG9ydF9kZXNjPSJPcGVuLXNvdXJjZSB0b29sIGZv ciBwcm9ncmFtbWluZyBhbWF0ZXVyIHJhZGlvcyIKIG1haW50YWluZXI9IkVtaWwgTWlsZXIgPGVt QDB4NDUuY3o+IgoKRnJvbSA3OTNhYzIzYjNjNmJlZGViYjJiOTEyYWE5NDQ0ZWQ3NGQwYjlmNzVj IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiAiQW5kcmV3IEouIEhlc2ZvcmQiIDxhamhA c2lkZWJhbmQub3JnPgpEYXRlOiBNb24sIDI1IFNlcCAyMDIzIDA4OjAyOjUxIC0wNDAwClN1Ympl Y3Q6IFtQQVRDSCAzOS80M10gZ3Jhc3M6IHJlYnVpbGQgYWdhaW5zdCBuZXcgd3hQeXRob24KCi0t LQogc3JjcGtncy9ncmFzcy90ZW1wbGF0ZSB8IDggKysrKy0tLS0KIDEgZmlsZSBjaGFuZ2VkLCA0 IGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9ncmFz cy90ZW1wbGF0ZSBiL3NyY3BrZ3MvZ3Jhc3MvdGVtcGxhdGUKaW5kZXggOGJhMDNiYjdiZWE5OC4u ZGVkOGU0MGRhYWYxMCAxMDA2NDQKLS0tIGEvc3JjcGtncy9ncmFzcy90ZW1wbGF0ZQorKysgYi9z cmNwa2dzL2dyYXNzL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZv ciAnZ3Jhc3MnCiBwa2duYW1lPWdyYXNzCiB2ZXJzaW9uPTguMi4xCi1yZXZpc2lvbj0yCityZXZp c2lvbj0zCiBfYmludmVyPSR7dmVyc2lvbi8vLi99CiBfYmludmVyPSR7X2JpbnZlcjowOjJ9CiBi dWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCkBAIC0xMSw3ICsxMSw3IEBAIGhvc3RtYWtlZGVwZW5k cz0iZmxleCBsaWJnZGFsLXRvb2xzIHBrZy1jb25maWcgcHl0aG9uMy1udW1weSBweXRob24zLXNp eCB0YXIiCiBtYWtlZGVwZW5kcz0icHJvai1kZXZlbCB0aWZmLWRldmVsIGxpYmdkYWwtZGV2ZWwg c3FsaXRlLWRldmVsCiAgZmZ0dy1kZXZlbCBjYWlyby1kZXZlbCBnbHUtZGV2ZWwiCiBkZXBlbmRz PSJweXRob24zLW51bXB5IHB5dGhvbjMtZGF0ZXV0aWwgcHl0aG9uMy1QaWxsb3cgcHl0aG9uMy1t YXRwbG90bGliCi0gcHl0aG9uMy1zaXggcHl0aG9uMy1wbHkgd3hQeXRob240IgorIHB5dGhvbjMt c2l4IHB5dGhvbjMtcGx5IHd4UHl0aG9uIgogc2hvcnRfZGVzYz0iR2VvZ3JhcGhpYyBSZXNvdXJj ZXMgQW5hbHlzaXMgU3VwcG9ydCBTeXN0ZW0gLSBHSVMiCiBtYWludGFpbmVyPSJBbGV4IEphcm9z Y2ggPHJlc2VhcmNoQGFsZXhqLmF0PiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIiCkBAIC0y Miw3ICsyMiw3IEBAIHB5dGhvbl92ZXJzaW9uPTMKIG5vY3Jvc3M9InRyaWVzIHRvIGV4ZWN1dGUg dGFyZ2V0IGJpbmFyaWVzIgogCiBwb3N0X2luc3RhbGwoKSB7Ci0JIyBUaGlzIHBhY2thZ2UgaXMg YnJva2VuIHdpdGggd3hQeXRob240ICg8PTQuMC43KSwKLQkjIGhlbmNlIHRoZSBHVUkgaXMgY29t cHVsc29yaWx5IGRpc2FibGVkLgorCSMgVGhpcyBwYWNrYWdlIGlzIGJyb2tlbiB3aXRoIHd4UHl0 aG9uICg8PTQuMC43KSBhbmQgdGhlIEdVSQorCSMgaXMgZGlzYWJsZWQgcGVuZGluZyBmdXJ0aGVy IHRlc3Rpbmcgd2l0aCBuZXdlciB3eFB5dGhvbgogCXZzZWQgLWkgIiR7REVTVERJUn0vdXNyL2Jp bi9ncmFzcyIgLWUgInMvXChkZWZhdWx0X2d1aSA9XCkuKi9cMSBcInRleHRcIi8iCiB9CgpGcm9t IDJhZDE2Nzc1ODIxNmM0YWNlNDcxMDAyMDQ0MDZiNzc4NDA2OGZiZTUgTW9uIFNlcCAxNyAwMDow MDowMCAyMDAxCkZyb206ICJBbmRyZXcgSi4gSGVzZm9yZCIgPGFqaEBzaWRlYmFuZC5vcmc+CkRh dGU6IE1vbiwgMjUgU2VwIDIwMjMgMDA6MTg6MjEgLTA0MDAKU3ViamVjdDogW1BBVENIIDQwLzQz XSBraWNhZDogcmVidWlsZCBhZ2FpbnN0IG5ldyB3eFB5dGhvbgoKLS0tCiBzcmNwa2dzL2tpY2Fk L3RlbXBsYXRlIHwgMTUgKysrKysrKysrLS0tLS0tCiAxIGZpbGUgY2hhbmdlZCwgOSBpbnNlcnRp b25zKCspLCA2IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mva2ljYWQvdGVtcGxh dGUgYi9zcmNwa2dzL2tpY2FkL3RlbXBsYXRlCmluZGV4IDFjMzRjNDk4YWZiZDguLjRiMzgyMDBm ZmRlNmYgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3Mva2ljYWQvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9r aWNhZC90ZW1wbGF0ZQpAQCAtMSwxOCArMSwxOSBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAna2lj YWQnCiBwa2duYW1lPWtpY2FkCiB2ZXJzaW9uPTcuMC4xCi1yZXZpc2lvbj0yCityZXZpc2lvbj0z CiBidWlsZF9zdHlsZT1jbWFrZQogYnVpbGRfaGVscGVyPWNtYWtlLXd4V2lkZ2V0cy1ndGszCiBj b25maWd1cmVfYXJncz0iLURLSUNBRF9TQ1JJUFRJTkdfV1hQWVRIT049T04KICAtREtJQ0FEX0JV SUxEX0kxOE49T04gLURLSUNBRF9JMThOX1VOSVhfU1RSSUNUX1BBVEg9T04KLSAtRHd4V2lkZ2V0 c19DT05GSUdfRVhFQ1VUQUJMRT0kV1hfQ09ORklHCisgLUR3eFdpZGdldHNfQ09ORklHX0VYRUNV VEFCTEU9JFdYX0NPTkZJRyAtREtJQ0FEX1VTRV9FR0w9T04KICAtREtJQ0FEX1VTRV9PQ0M9JCh2 b3B0X2lmIG9jY3QgT04gT0ZGKSAtREtJQ0FEX1NQSUNFPSQodm9wdF9pZiBzcGljZSBPTiBPRkYp IgogaG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIHN3aWcgd3hXaWRnZXRzLWd0azMtZGV2ZWwg cHl0aG9uMyB0YXIgZ2V0dGV4dCIKLW1ha2VkZXBlbmRzPSJ3eFdpZGdldHMtZ3RrMy1kZXZlbCB3 eFB5dGhvbjQgcHl0aG9uMy1kZXZlbCBnbGV3LWRldmVsIGNhaXJvLWRldmVsCi0gYm9vc3QtZGV2 ZWwgbGliY3VybC1kZXZlbCBnbG0gbGliZ29tcC1kZXZlbCBsaWJmcmVlZ2x1dC1kZXZlbCBndGsr My1kZXZlbCB1bml4b2RiYy1kZXZlbAorbWFrZWRlcGVuZHM9Ind4V2lkZ2V0cy1ndGszLWRldmVs IHd4UHl0aG9uIHB5dGhvbjMtZGV2ZWwgZ2xldy1kZXZlbAorIGNhaXJvLWRldmVsIGJvb3N0LWRl dmVsIGxpYmN1cmwtZGV2ZWwgZ2xtIGxpYmdvbXAtZGV2ZWwgbGliZnJlZWdsdXQtZGV2ZWwKKyBn dGsrMy1kZXZlbCB1bml4b2RiYy1kZXZlbAogICQodm9wdF9pZiBvY2N0IG9jY3QtZGV2ZWwpICQo dm9wdF9pZiBzcGljZSBuZ3NwaWNlLWRldmVsKSIKLWRlcGVuZHM9Ind4UHl0aG9uNCIKK2RlcGVu ZHM9Ind4UHl0aG9uIgogc2hvcnRfZGVzYz0iRWxlY3Ryb25pYyBzY2hlbWF0aWMgYW5kIFBDQiBk ZXNpZ24gc29mdHdhcmUiCiBtYWludGFpbmVyPSLDiXJpY28gTm9ndWVpcmEgPGVyaWNvbnJAZGlz cm9vdC5vcmc+IgogbGljZW5zZT0iR1BMLTMuMC1vci1sYXRlciIKQEAgLTQxLDcgKzQyLDkgQEAg ZmkKIG5vY3Jvc3M9ImV4ZWN1dGUgbGVtb24gZHVyaW5nIGJ1aWxkIgogCiBpZiBbICIkQ1JPU1Nf QlVJTEQiIF07IHRoZW4KLQlob3N0bWFrZWRlcGVuZHMrPSIgd3hQeXRob240IgorCWhvc3RtYWtl ZGVwZW5kcys9IiB3eFB5dGhvbiIKIAljb25maWd1cmVfYXJncys9IiAtRFBZVEhPTl9ERVNUPS8k e3B5M19zaXRlbGlifQogCS1Ed3hXaWRnZXRzX0NPTkZJR19PUFRJT05TPSctLXByZWZpeD0ke1hC UFNfQ1JPU1NfQkFTRX0nIgogZmkKKworQ1hYRkxBR1M9Ii1EX0xBUkdFRklMRV9TT1VSQ0UgLURf RklMRV9PRkZTRVRfQklUUz02NCIKCkZyb20gMmJhNzIyMTIxOTVmYjIyYTg5NTkwMzkwMDZmMWE1 ZDNkMzAyMzU1NiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogIkFuZHJldyBKLiBIZXNm b3JkIiA8YWpoQHNpZGViYW5kLm9yZz4KRGF0ZTogTW9uLCAyNSBTZXAgMjAyMyAwODowNjo1NCAt MDQwMApTdWJqZWN0OiBbUEFUQ0ggNDEvNDNdIG15bWNwbHVzOiByZWJ1aWxkIGFnYWluc3QgbmV3 IHd4UHl0aG9uCgotLS0KIHNyY3BrZ3MvbXltY3BsdXMvdGVtcGxhdGUgfCA0ICsrLS0KIDEgZmls ZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEv c3JjcGtncy9teW1jcGx1cy90ZW1wbGF0ZSBiL3NyY3BrZ3MvbXltY3BsdXMvdGVtcGxhdGUKaW5k ZXggOTMwNzExZWViMmM1OS4uNWJiMDhlZjllYTVkNCAxMDA2NDQKLS0tIGEvc3JjcGtncy9teW1j cGx1cy90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL215bWNwbHVzL3RlbXBsYXRlCkBAIC0xLDEwICsx LDEwIEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdteW1jcGx1cycKIHBrZ25hbWU9bXltY3BsdXMK IHZlcnNpb249My4wLjUKLXJldmlzaW9uPTIKK3JldmlzaW9uPTMKIGJ1aWxkX3N0eWxlPXB5dGhv bjMtbW9kdWxlCiBob3N0bWFrZWRlcGVuZHM9InB5dGhvbjMtc2V0dXB0b29scyIKLWRlcGVuZHM9 Ind4UHl0aG9uNCBweXRob24zLVB5T3BlbkdMIgorZGVwZW5kcz0id3hQeXRob24gcHl0aG9uMy1Q eU9wZW5HTCIKIGNoZWNrZGVwZW5kcz0iJGRlcGVuZHMgcHl0aG9uMy1weXRlc3QiCiBzaG9ydF9k ZXNjPSJQbGF5U3RhdGlvbiAyIG1lbW9yeSBjYXJkIG1hbmFnZXIiCiBtYWludGFpbmVyPSJBbmRy ZXcgQmVuc29uIDxhYmVuc29uK3ZvaWRAZ21haWwuY29tPiIKCkZyb20gZjhmYzhkNTIxMDgzOGJh Y2UzN2M1ZmIxMTc0YzViMzk5ZDMxYTExMSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTog IkFuZHJldyBKLiBIZXNmb3JkIiA8YWpoQHNpZGViYW5kLm9yZz4KRGF0ZTogTW9uLCAyNSBTZXAg MjAyMyAwODowNzoyNiAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggNDIvNDNdIHBob3RvZmlsbXN0cmlw OiByZWJ1aWxkIGFnYWluc3QgbmV3IHd4UHl0aG9uCgotLS0KIHNyY3BrZ3MvcGhvdG9maWxtc3Ry aXAvdGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIg ZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9waG90b2ZpbG1zdHJpcC90ZW1wbGF0 ZSBiL3NyY3BrZ3MvcGhvdG9maWxtc3RyaXAvdGVtcGxhdGUKaW5kZXggZDIwNTBhYzRjNjRjOC4u ZDJjNzUxMTYyOTI1MCAxMDA2NDQKLS0tIGEvc3JjcGtncy9waG90b2ZpbG1zdHJpcC90ZW1wbGF0 ZQorKysgYi9zcmNwa2dzL3Bob3RvZmlsbXN0cmlwL3RlbXBsYXRlCkBAIC0xLDEwICsxLDEwIEBA CiAjIFRlbXBsYXRlIGZpbGUgZm9yICdwaG90b2ZpbG1zdHJpcCcKIHBrZ25hbWU9cGhvdG9maWxt c3RyaXAKIHZlcnNpb249NC4wLjAKLXJldmlzaW9uPTEKK3JldmlzaW9uPTIKIGJ1aWxkX3N0eWxl PXB5dGhvbjMtbW9kdWxlCiBob3N0bWFrZWRlcGVuZHM9InB5dGhvbjMtc2V0dXB0b29scyBnc3Qx LXB5dGhvbjMgcHl0aG9uMy1TcGhpbnggZ2V0dGV4dCIKLWRlcGVuZHM9InB5dGhvbjMgZ3N0MS1w eXRob24zIGdzdDEtZWRpdGluZy1zZXJ2aWNlcyBweXRob24zLVBpbGxvdyB3eFB5dGhvbjQiCitk ZXBlbmRzPSJweXRob24zIGdzdDEtcHl0aG9uMyBnc3QxLWVkaXRpbmctc2VydmljZXMgcHl0aG9u My1QaWxsb3cgd3hQeXRob24iCiBjaGVja2RlcGVuZHM9IiRkZXBlbmRzIgogc2hvcnRfZGVzYz0i U2xpZGVzaG93IGNyZWF0b3Igd2l0aCBLZW4gQnVybnMgZWZmZWN0IgogbWFpbnRhaW5lcj0ixJBv w6BuIFRy4bqnbiBDw7RuZyBEYW5oIDxjb25nZGFuaHF4QGdtYWlsLmNvbT4iCgpGcm9tIDNkMTU0 MjgxMjI4ZjMxM2RkMmFlNDc4YzA3ZTRiMDc5YzIyMWJiOTggTW9uIFNlcCAxNyAwMDowMDowMCAy MDAxCkZyb206ICJBbmRyZXcgSi4gSGVzZm9yZCIgPGFqaEBzaWRlYmFuZC5vcmc+CkRhdGU6IE1v biwgMjUgU2VwIDIwMjMgMDg6MDc6NDggLTA0MDAKU3ViamVjdDogW1BBVENIIDQzLzQzXSBwbGF5 b25saW51eDogcmVidWlsZCBhZ2FpbnN0IG5ldyB3eFB5dGhvbgoKLS0tCiBzcmNwa2dzL3BsYXlv bmxpbnV4L3RlbXBsYXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCsp LCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcGxheW9ubGludXgvdGVtcGxh dGUgYi9zcmNwa2dzL3BsYXlvbmxpbnV4L3RlbXBsYXRlCmluZGV4IDU2MjA3YTI5YWEyM2EuLjM5 NGE0ZjJkNWIzYjQgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvcGxheW9ubGludXgvdGVtcGxhdGUKKysr IGIvc3JjcGtncy9wbGF5b25saW51eC90ZW1wbGF0ZQpAQCAtMSwxMCArMSwxMCBAQAogIyBUZW1w bGF0ZSBmaWxlIGZvciAncGxheW9ubGludXgnCiBwa2duYW1lPXBsYXlvbmxpbnV4CiB2ZXJzaW9u PTQuNAotcmV2aXNpb249MQorcmV2aXNpb249MgogIyBjb250YWlucyBwcmUtY29tcGlsZWQgYmlu YXJpZXMgbGlua2VkIGFnYWluc3QgZ2xpYmMKIGFyY2hzPSJpNjg2IHg4Nl82NCIKLWRlcGVuZHM9 Imljb3V0aWxzIG5ldGNhdCBJbWFnZU1hZ2ljayB4dGVybSB3eFB5dGhvbjQgY2FiZXh0cmFjdCB1 bnppcCBnbHhpbmZvCitkZXBlbmRzPSJpY291dGlscyBuZXRjYXQgSW1hZ2VNYWdpY2sgeHRlcm0g d3hQeXRob24gY2FiZXh0cmFjdCB1bnppcCBnbHhpbmZvCiAgZ251cGcgeGRnLXVzZXItZGlycyBs aWJYbXUgd2dldCBwN3ppcCBjdXJsIGpxIHB5dGhvbjMtbmF0c29ydCB4cmRiIGdldHRleHQKICBw ZXJsIgogc2hvcnRfZGVzYz0iR1VJIGZvciBtYW5hZ2luZyBXaW5kb3dzIHByb2dyYW1zIHVuZGVy IGxpbnV4Igo= --===============1145753193634245707==--