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 16232 invoked from network); 25 Sep 2023 15:52:21 -0000 Received: from localhost (HELO inbox.vuxu.org) (::1) by localhost with ESMTPUTF8; 25 Sep 2023 15:52:21 -0000 Content-Type: multipart/mixed; boundary="===============3704673994064260213==" MIME-Version: 1.0 Subject: =?utf8?q?Re=3A_=5BPR_PATCH=5D_=5BUpdated=5D_=5BWIP=5D_wxWiwdgets=2C_wxPython?= To: ml@inbox.vuxu.org From: ahesford Reply-to: ml@inbox.vuxu.org In-Reply-To: References: Date: Mon, 25 Sep 2023 17:52:21 +0200 List-Id: Message-ID: <20230925155221.cUlU5_OlyVb4Syd86Muw3f0vUs3r3EWnFbot1M83RQM@z> GitHub notification mails are now in MIME to allow UTF8. --===============3704673994064260213== Content-Type: text/plain; charset="utf8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 VGhlcmUgaXMgYW4gdXBkYXRlZCBwdWxsIHJlcXVlc3QgYnkgYWhlc2ZvcmQgYWdhaW5zdCBtYXN0 ZXIgb24gdGhlIHZvaWQtcGFja2FnZXMgcmVwb3NpdG9yeQoKaHR0cHM6Ly9naXRodWIuY29tL2Fo ZXNmb3JkL3ZvaWQtcGFja2FnZXMgd3h3aWRnZXRzCmh0dHBzOi8vZ2l0aHViLmNvbS92b2lkLWxp bnV4L3ZvaWQtcGFja2FnZXMvcHVsbC80NjIzNwoKW1dJUF0gd3hXaXdkZ2V0cywgd3hQeXRob24K T3VyIHd4V2lkZ2V0cy93eFB5dGhvbiBzdGFjayBpcyBwcmV0dHkgb2xkLCBhbmQgaXQgbWF5IGJl IG1vcmUgdHJvdWJsZSB0byBwYXRjaCBmb3IgUHl0aG9uIDMuMTIgdGhhbiBqdXN0IHVwZGF0aW5n IHRoZXNlIHBhY2thZ2VzLiBUaHVzIEkgd291bGQgbGlrZSB0bzoNCg0KKiBEcm9wIGBwY3N4MmAs IGBwZXJsLUFsaWVuLXd4V2lkZ2V0c2AgYW5kIGBkaXNwY2FsR1VJYCAoY2M6IEBsZW1taSkuIFRo ZSBmaXJzdCB0d28gZG9uJ3Qgc2VlbSB3ZWxsLW1haW50YWluZWQsIGFuZCBhbGwgdGhyZWUgcmVs eSBvbiB3eFdpZGdldHMgd2l0aCBHVEsyIHN1cHBvcnQgdGhhdCBzaG91bGQgYmUgcmV0aXJlZC4g YGRpc3BjYWxHVUlgIGFsc28gcmVxdWlyZXMgdGhlIGxvbmctcGFzdC1FT0wgUHl0aG9uIDIuDQoq IFdpdGggdGhlc2UgdGhyZWUgZGVwZW5kYW50cyBnb25lLCB3ZSBjYW4gcmVtb3ZlIGB3eFdpZGdl dHNgIGFuZCBgd3hQeXRob25gLg0KKiBUaGlzIHNpbXBsaWZpZXMgdGhlIHVwZGF0ZSB0byBgd3hX aWRnZXRzLWd0azNgIGFuZCAoaG9wZWZ1bGx5LS0tSSdtIHN0aWxsIHdvcmtpbmcpIGB3eFB5dGhv bjRgLg0KKiBXaGlsZSB3ZSdyZSBhdCBpdCwgd2UgY2FuIHRyYW5zaXRpb24gYHd4UHl0aG9uNGAg YmFjayB0byBpdHMgcHJvcGVyIG5hbWUsIGp1c3QgYHd4UHl0aG9uYC4NCg0KW2NpIHNraXBdCgpB IHBhdGNoIGZpbGUgZnJvbSBodHRwczovL2dpdGh1Yi5jb20vdm9pZC1saW51eC92b2lkLXBhY2th Z2VzL3B1bGwvNDYyMzcucGF0Y2ggaXMgYXR0YWNoZWQ= --===============3704673994064260213== Content-Type: text/x-diff MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="github-pr-wxwidgets-46237.patch" RnJvbSA1NDk2NTBkNDA4NjQzMGJjYzBiNWRhNzQ0YWVhNmZhNGMxNTE4MGY2IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiAiQW5kcmV3IEouIEhlc2ZvcmQiIDxhamhAc2lkZWJhbmQub3Jn PgpEYXRlOiBTdW4sIDI0IFNlcCAyMDIzIDIzOjE5OjMwIC0wNDAwClN1YmplY3Q6IFtQQVRDSCAw MS80NF0gcGVybC1BbGllbi13eFdpZGdldHM6IHJlbW92ZSBwYWNrYWdlCgpOb3RoaW5nIHJlcXVp 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 aWV3PD0wLjA1XzgKICBwZXJsLUd0azItTm90aWZ5PD0wLjA1XzgKCkZyb20gYzZlMzZkMjdhYmY5 MTljNGRmODQ3NjcyMzZmM2ExYjNiODhhM2RiNiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJv bTogIkFuZHJldyBKLiBIZXNmb3JkIiA8YWpoQHNpZGViYW5kLm9yZz4KRGF0ZTogU3VuLCAyNCBT ZXAgMjAyMyAyMzoyMTo0MiAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggMDIvNDRdIHBjc3gyOiByZW1v 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 bmQtdmxjPD0wLjkuMV8zCgpGcm9tIDFlNTE2NzM4NmMzYmQyZGM5NDAzN2I1YTQxYjA5Yjg1YzA4 NDdmNjkgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206ICJBbmRyZXcgSi4gSGVzZm9yZCIg PGFqaEBzaWRlYmFuZC5vcmc+CkRhdGU6IFN1biwgMjQgU2VwIDIwMjMgMjM6MjQ6MzMgLTA0MDAK U3ViamVjdDogW1BBVENIIDAzLzQ0XSBkaXNwY2FsR1VJOiByZW1vdmUgcGFja2FnZQoKVGhpcyBw YWNrYWdlIGRlcGVuZHMgb24gbG9uZy1wYXN0LUVPTCBQeXRob24gMiBhbmQgYW4gb2xkIGFuZAp0 by1iZS1yZW1vdmVkIHZlcnNpb24gb2Ygd3hXaWRnZXRzLgotLS0KIHNyY3BrZ3MvZGlzcGNhbEdV SS9wYXRjaGVzL2Vycm9yLnBhdGNoIHwgMzMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KIHNy Y3BrZ3MvZGlzcGNhbEdVSS90ZW1wbGF0ZSAgICAgICAgICAgIHwgMjUgLS0tLS0tLS0tLS0tLS0t LS0tLQogc3JjcGtncy9kaXNwY2FsR1VJL3VwZGF0ZSAgICAgICAgICAgICAgfCAgMSAtCiBzcmNw a2dzL3JlbW92ZWQtcGFja2FnZXMvdGVtcGxhdGUgICAgICB8ICAxICsKIDQgZmlsZXMgY2hhbmdl ZCwgMSBpbnNlcnRpb24oKyksIDU5IGRlbGV0aW9ucygtKQogZGVsZXRlIG1vZGUgMTAwNjQ0IHNy Y3BrZ3MvZGlzcGNhbEdVSS9wYXRjaGVzL2Vycm9yLnBhdGNoCiBkZWxldGUgbW9kZSAxMDA2NDQg c3JjcGtncy9kaXNwY2FsR1VJL3RlbXBsYXRlCiBkZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtncy9k aXNwY2FsR1VJL3VwZGF0ZQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZGlzcGNhbEdVSS9wYXRjaGVz L2Vycm9yLnBhdGNoIGIvc3JjcGtncy9kaXNwY2FsR1VJL3BhdGNoZXMvZXJyb3IucGF0Y2gKZGVs ZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDE2OWZjNTI4YjEzOGUuLjAwMDAwMDAwMDAwMDAK LS0tIGEvc3JjcGtncy9kaXNwY2FsR1VJL3BhdGNoZXMvZXJyb3IucGF0Y2gKKysrIC9kZXYvbnVs bApAQCAtMSwzMyArMCwwIEBACi1SZWFzb246IGVycm9yKDMpIGRvZXMgbm90IGV4aXN0IG9uIG11 c2wsIGFuZCBvbiBnbGliYyB0aGUgc2lnbmF0dXJlCi1pcyAoaW50LCBpbnQsIGNoYXIqLCAuLi4p IGFuZCBub3QgKGNoYXIqLCAuLi4pLgotVGhlcmVmb3JlIHRoZSBjdXJyZW50IGNvZGUgZWl0aGVy IHJlc3VsdHMgaW4gZ2FyYmxlZCBvdXRwdXQgb3IKLWRvZXNuJ3Qgd29yayBhdCBhbGwuIFJlcGxh Y2UgaXQgd2l0aCBhIHNpbXBsZSBwcmludGYuCi0KLS0tLQotLS0tIGEvRGlzcGxheUNBTC9SZWFs RGlzcGxheVNpemVNTS5jCTIwMTgtMDctMjUgMTY6NDc6MDEuMDAwMDAwMDAwICswMjAwCi0rKysg Yi9EaXNwbGF5Q0FML1JlYWxEaXNwbGF5U2l6ZU1NLmMJMjAxOC0wNy0yNSAxNjo0NzowMS4wMDAw MDAwMDAgKzAyMDAKLUBAIC04MjIsMTMgKzgyMiwxMyBAQAotIAkJCQkJCXNwcmludGYoZGVzYzEs ICJfSUNDX1BST0ZJTEVfJWQiLGRpc3BzW25kaXNwc10tPnVzY3JlZW4pOwotIAotIAkJCQkJaWYg KChkaXNwc1tuZGlzcHNdLT5pY2NfYXRvbSA9IFhJbnRlcm5BdG9tKG15ZGlzcGxheSwgZGVzYzEs IEZhbHNlKSkgPT0gTm9uZSkKLS0JCQkJCQllcnJvcigiVW5hYmxlIHRvIGludGVybiBhdG9tICcl cyciLGRlc2MxKTsKLSsJCQkJCQlmcHJpbnRmKHN0ZGVyciwgIlVuYWJsZSB0byBpbnRlcm4gYXRv bSAnJXMnIixkZXNjMSk7Ci0gCi0gCQkJCQlkZWJ1Z3JyMigoZXJyb3V0LCJSb290IGF0b20gJyVz J1xuIixkZXNjMSkpOwotIAotIAkJCQkJLyogQ3JlYXRlIHRoZSBhdG9tIG9mIHRoZSBvdXRwdXQg dGhhdCBtYXkgY29udGFpbiB0aGUgYXNzb2NpYXRlZCBJQ0MgcHJvZmlsZSAqLwotIAkJCQkJaWYg KChkaXNwc1tuZGlzcHNdLT5pY2Nfb3V0X2F0b20gPSBYSW50ZXJuQXRvbShteWRpc3BsYXksICJf SUNDX1BST0ZJTEUiLCBGYWxzZSkpID09IE5vbmUpCi0tCQkJCQkJZXJyb3IoIlVuYWJsZSB0byBp bnRlcm4gYXRvbSAnJXMnIiwiX0lDQ19QUk9GSUxFIik7Ci0rCQkJCQkJZnByaW50ZihzdGRlcnIs ICJVbmFibGUgdG8gaW50ZXJuIGF0b20gJyVzJyIsIl9JQ0NfUFJPRklMRSIpOwotIAkJCi0gCQkJ CQkvKiBHcmFiIHRoZSBFRElEIGZyb20gdGhlIG91dHB1dCAqLwotIAkJCQkJewotQEAgLTk5Myw3 ICs5OTMsNyBAQAotIAkJCQlzcHJpbnRmKGRlc2MxLCAiX0lDQ19QUk9GSUxFXyVkIixkaXNwc1tp XS0+dXNjcmVlbik7Ci0gCi0gCQkJaWYgKChkaXNwc1tpXS0+aWNjX2F0b20gPSBYSW50ZXJuQXRv bShteWRpc3BsYXksIGRlc2MxLCBGYWxzZSkpID09IE5vbmUpCi0tCQkJCWVycm9yKCJVbmFibGUg dG8gaW50ZXJuIGF0b20gJyVzJyIsZGVzYzEpOwotKwkJCQlmcHJpbnRmKHN0ZGVyciwgIlVuYWJs ZSB0byBpbnRlcm4gYXRvbSAnJXMnIixkZXNjMSk7Ci0gCi0gCQkJLyogU2VlIGlmIHdlIGNhbiBs b2NhdGUgdGhlIEVESUQgb2YgdGhlIG1vbml0b3IgZm9yIHRoaXMgc2NyZWVuICovCi0gCQkJZm9y IChqID0gMDsgaiA8IDI7IGorKykgeyAKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZGlzcGNhbEdVSS90 ZW1wbGF0ZSBiL3NyY3BrZ3MvZGlzcGNhbEdVSS90ZW1wbGF0ZQpkZWxldGVkIGZpbGUgbW9kZSAx MDA2NDQKaW5kZXggMDUwODZiOTdlNWEyNi4uMDAwMDAwMDAwMDAwMAotLS0gYS9zcmNwa2dzL2Rp c3BjYWxHVUkvdGVtcGxhdGUKKysrIC9kZXYvbnVsbApAQCAtMSwyNSArMCwwIEBACi0jIFRlbXBs YXRlIGZpbGUgZm9yICdkaXNwY2FsR1VJJwotcGtnbmFtZT1kaXNwY2FsR1VJCi12ZXJzaW9uPTMu OC45LjMKLXJldmlzaW9uPTUKLV9uYW1lPSJEaXNwbGF5Q0FMIgotYnVpbGRfc3R5bGU9cHl0aG9u Mi1tb2R1bGUKLWhvc3RtYWtlZGVwZW5kcz0icHl0aG9uIgotbWFrZWRlcGVuZHM9InB5dGhvbi1k ZXZlbCBsaWJYeGY4NnZtLWRldmVsIGxpYlhpbmVyYW1hLWRldmVsIGxpYlhyYW5kci1kZXZlbCIK LWRlcGVuZHM9InB5dGhvbi1kYnVzIHB5dGhvbi1udW1weSB3eFB5dGhvbiBhcmd5bGxjbXMiCi1z aG9ydF9kZXNjPSJEaXNwbGF5IENhbGlicmF0aW9uIGFuZCBDaGFyYWN0ZXJpemF0aW9uIgotbWFp bnRhaW5lcj0ibGVtbWkgPGxlbW1pQG5lcmQybmVyZC5vcmc+IgotbGljZW5zZT0iR1BMLTMuMC1v ci1sYXRlciIKLWhvbWVwYWdlPSJodHRwczovL2Rpc3BsYXljYWwubmV0LyIKLWNoYW5nZWxvZz0i aHR0cHM6Ly9kaXNwbGF5Y2FsLm5ldC9DSEFOR0VTLmh0bWwiCi1kaXN0ZmlsZXM9IiR7U09VUkNF Rk9SR0VfU0lURX0vZGlzcGNhbGd1aS8ke19uYW1lfS0ke3ZlcnNpb259LnRhci5neiIKLWNoZWNr c3VtPTdjMzRkZmJkOWY2NmYyNGYxZDRjODhkZTRhNWEwZGU2ODhhYWQ3MTlmMDk1ODc0YjYyNTk2 MzdkMzA4OTNiZWEKLQotcHJlX2NvbmZpZ3VyZSgpIHsKLQlzZWQgLWkgJ3N8TWltZVR5cGU9bW9k ZWwvdnJtbDt4LXdvcmxkL3gtdnJtbDt8TWltZVR5cGU9bW9kZWwvdnJtbDt8JyBtaXNjL2Rpc3Bs YXljYWwtdnJtbC10by14M2QtY29udmVydGVyLmRlc2t0b3AKLX0KLQotcG9zdF9pbnN0YWxsKCkg ewotCWZpbmQgJHtERVNURElSfS91c3IvIC1leGVjIGNobW9kIGErciBce1x9ICsKLQlmaW5kICR7 REVTVERJUn0vdXNyLyAtdHlwZSBkIC1leGVjIGNobW9kIGEreCBce1x9ICsKLX0KZGlmZiAtLWdp dCBhL3NyY3BrZ3MvZGlzcGNhbEdVSS91cGRhdGUgYi9zcmNwa2dzL2Rpc3BjYWxHVUkvdXBkYXRl CmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCA2OTQyMzkzOTQ1YzM2Li4wMDAwMDAwMDAw MDAwCi0tLSBhL3NyY3BrZ3MvZGlzcGNhbEdVSS91cGRhdGUKKysrIC9kZXYvbnVsbApAQCAtMSAr MCwwIEBACi1wa2duYW1lPSIke19uYW1lfSIKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcmVtb3ZlZC1w YWNrYWdlcy90ZW1wbGF0ZSBiL3NyY3BrZ3MvcmVtb3ZlZC1wYWNrYWdlcy90ZW1wbGF0ZQppbmRl eCBiMTc2NzM5MTU3ZTNjLi45OWZjNDk1OTJkMmNlIDEwMDY0NAotLS0gYS9zcmNwa2dzL3JlbW92 ZWQtcGFja2FnZXMvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9yZW1vdmVkLXBhY2thZ2VzL3RlbXBs YXRlCkBAIC04NSw2ICs4NSw3IEBAIHJlcGxhY2VzPSIKICBkZWVwaW4tdHVyYm88PTAuMC4zXzEK ICBkZWVwaW4tdm9pY2UtcmVjb3JkZXI8PTUuMC4wXzIKICBkaHQtbm9kZTw9MC4yLjBfMworIGRp c3BjYWxHVUk8PTMuOC45LjNfNQogIGRpc3RjYy1ndGs8PTMuMy4zXzYKICBkam1vdW50PD0wLjcx XzgKICBkbGV5bmEtY29yZTw9MC42LjBfMgoKRnJvbSAyOGUyMWIwMzNmMmM5Yzc0ODRlMDE0ZTlh NGI3NDMwODFhOTA4YzYxIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiAiQW5kcmV3IEou IEhlc2ZvcmQiIDxhamhAc2lkZWJhbmQub3JnPgpEYXRlOiBTdW4sIDI0IFNlcCAyMDIzIDIzOjI2 OjUzIC0wNDAwClN1YmplY3Q6IFtQQVRDSCAwNC80NF0gd3hQeXRob246IHJlbW92ZSBwYWNrYWdl CgotLS0KIHNyY3BrZ3Mvd3hQeXRob24tZGV2ZWwgICAgfCAgMSAtCiBzcmNwa2dzL3d4UHl0aG9u L3RlbXBsYXRlIHwgNDcgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAy IGZpbGVzIGNoYW5nZWQsIDQ4IGRlbGV0aW9ucygtKQogZGVsZXRlIG1vZGUgMTIwMDAwIHNyY3Br Z3Mvd3hQeXRob24tZGV2ZWwKIGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3d4UHl0aG9uL3Rl bXBsYXRlCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy93eFB5dGhvbi1kZXZlbCBiL3NyY3BrZ3Mvd3hQ eXRob24tZGV2ZWwKZGVsZXRlZCBmaWxlIG1vZGUgMTIwMDAwCmluZGV4IGUzOTZkNWFlMzcwZDYu LjAwMDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtncy93eFB5dGhvbi1kZXZlbAorKysgL2Rldi9udWxs CkBAIC0xICswLDAgQEAKLXd4UHl0aG9uClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZm IC0tZ2l0IGEvc3JjcGtncy93eFB5dGhvbi90ZW1wbGF0ZSBiL3NyY3BrZ3Mvd3hQeXRob24vdGVt cGxhdGUKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDg5MWRkYzE2NDU1MmIuLjAwMDAw MDAwMDAwMDAKLS0tIGEvc3JjcGtncy93eFB5dGhvbi90ZW1wbGF0ZQorKysgL2Rldi9udWxsCkBA IC0xLDQ3ICswLDAgQEAKLSMgVGVtcGxhdGUgZmlsZSBmb3IgJ3d4UHl0aG9uJwotcGtnbmFtZT13 eFB5dGhvbgotdmVyc2lvbj0zLjAuMi4wCi1yZXZpc2lvbj0xMQotaG9zdG1ha2VkZXBlbmRzPSJw a2ctY29uZmlnIgotbWFrZWRlcGVuZHM9IgotIHpsaWItZGV2ZWwgbGlicG5nLWRldmVsIGxpYmpw ZWctdHVyYm8tZGV2ZWwgdGlmZi1kZXZlbCBleHBhdC1kZXZlbCBndGsrLWRldmVsCi0gbGliU00t ZGV2ZWwgTWVzYUxpYi1kZXZlbCBnbHUtZGV2ZWwKLSBsaWJub3RpZnktZGV2ZWwgcHl0aG9uLWRl dmVsIHd4V2lkZ2V0cy1kZXZlbCIKLWRlcGVuZHM9InB5dGhvbiIKLXNob3J0X2Rlc2M9IlB5dGhv biBCaW5kaW5ncyBmb3IgdGhlIHd4V2lkZ2V0cyBHVUkgdG9vbGtpdCBsaWJyYXJ5IgotbWFpbnRh aW5lcj0iT3JwaGFuZWQgPG9ycGhhbkB2b2lkbGludXgub3JnPiIKLWxpY2Vuc2U9Ild4V2luZG93 cy1leGNlcHRpb24tMy4xIgotaG9tZXBhZ2U9Imh0dHBzOi8vd3d3Lnd4cHl0aG9uLm9yZy8iCi1k aXN0ZmlsZXM9IiR7U09VUkNFRk9SR0VfU0lURX0vd3hweXRob24vJHtwa2duYW1lfS1zcmMtJHt2 ZXJzaW9ufS50YXIuYnoyIgotY2hlY2tzdW09ZDU0MTI5ZTVmYmVhNGZiODA5MWM4N2IyOTgwNzYw YjcyYzIyYTM4NmNiM2I5ZGQyZWViYzkyOGVmNWU4ZGY2MQotCi1pZiBbIC1uICIke0NST1NTX0JV SUxEfSIgXTsgdGhlbgotCWhvc3RtYWtlZGVwZW5kcys9IiBweXRob24iCi0JQ0ZMQUdTKz0iIC1J JHtYQlBTX0NST1NTX0JBU0V9L3Vzci9pbmNsdWRlL3B5dGhvbiR7cHkyX3Zlcn0iCi1maQotCi1w cmVfY29uZmlndXJlKCkgewotCW12IHd4UHl0aG9uL3d4L3Rvb2xzL0VkaXRyYS97ZWRpdHJhLEVk aXRyYX0KLX0KLQotZG9fYnVpbGQoKSB7Ci0JY2Qgd3hQeXRob24KLQlweXRob24yLjcgc2V0dXAu cHkgYnVpbGQKLX0KLQotZG9faW5zdGFsbCgpIHsKLQljZCB3eFB5dGhvbgotCSMgVGhlIHBhdGgg d2hlcmUgaW5jbHVkZXMgYXJlIGdvaW5nIHRvIGJlIGluc3RhbGxlZCBpcyBwcmVmaXhlZCB3aXRo IFdYUFJFRklYIG9idGFpbmVkCi0JIyBmcm9tICd3eC1jb25maWcgLS1wcmVmaXgnIGJ1dCBpbiBh IGNyb3NzIGJ1aWxkIHRoaXMgaXMgJyRYQlBTX0NST1NTX0JBU0UvdXNyJy4KLQlzZWQgLWkgLWUg InN8V1hQUkVGSVggK3wnL3VzcicgK3wiIGNvbmZpZy5weQotCXB5dGhvbjIuNyBzZXR1cC5weSBp bnN0YWxsIC0tcm9vdD0ke0RFU1RESVJ9Ci0JdmxpY2Vuc2UgLi4vZG9jcy9saWNlbmNlLnR4dCBM SUNFTlNFCi19Ci0KLXd4UHl0aG9uLWRldmVsX3BhY2thZ2UoKSB7Ci0JZGVwZW5kcz0id3hXaWRn ZXRzLWRldmVsICR7c291cmNlcGtnfT49JHt2ZXJzaW9ufV8ke3JldmlzaW9ufSIKLQlzaG9ydF9k ZXNjKz0iIC0gZGV2ZWxvcG1lbnQgZmlsZXMiCi0JcGtnX2luc3RhbGwoKSB7Ci0JCXZtb3ZlIHVz ci9pbmNsdWRlCi0JfQotfQoKRnJvbSBhZjgyYjI5NmY0ZTUyN2I2ODhmMjcwNzU5YzE2MDgyY2Vl MDQzOGEwIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiAiQW5kcmV3IEouIEhlc2ZvcmQi IDxhamhAc2lkZWJhbmQub3JnPgpEYXRlOiBTdW4sIDI0IFNlcCAyMDIzIDIzOjI4OjQwIC0wNDAw ClN1YmplY3Q6IFtQQVRDSCAwNS80NF0gd3hXaWRnZXRzOiByZW1vdmUgcGFja2FnZQoKLS0tCiBj b21tb24vc2hsaWJzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAxOSAtLS0tLQog c3JjcGtncy93eFdpZGdldHMtZGV2ZWwgICAgICAgICAgICAgICAgICAgICAgIHwgIDEgLQogLi4u L3BhdGNoZXMvbm9uZmF0YWwtYWJpLWNoZWNrLnBhdGNoICAgICAgICAgIHwgMTggLS0tLS0KIC4u Li93eFdpZGdldHMvcGF0Y2hlcy93eEdUSy1jb2xsaXNpb24ucGF0Y2ggICB8IDc5IC0tLS0tLS0t LS0tLS0tLS0tLS0KIHNyY3BrZ3Mvd3hXaWRnZXRzL3RlbXBsYXRlICAgICAgICAgICAgICAgICAg ICB8IDY2IC0tLS0tLS0tLS0tLS0tLS0KIHNyY3BrZ3Mvd3hXaWRnZXRzL3VwZGF0ZSAgICAgICAg ICAgICAgICAgICAgICB8ICAyIC0KIDYgZmlsZXMgY2hhbmdlZCwgMTg1IGRlbGV0aW9ucygtKQog ZGVsZXRlIG1vZGUgMTIwMDAwIHNyY3BrZ3Mvd3hXaWRnZXRzLWRldmVsCiBkZWxldGUgbW9kZSAx MDA2NDQgc3JjcGtncy93eFdpZGdldHMvcGF0Y2hlcy9ub25mYXRhbC1hYmktY2hlY2sucGF0Y2gK IGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3d4V2lkZ2V0cy9wYXRjaGVzL3d4R1RLLWNvbGxp c2lvbi5wYXRjaAogZGVsZXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3Mvd3hXaWRnZXRzL3RlbXBsYXRl CiBkZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtncy93eFdpZGdldHMvdXBkYXRlCgpkaWZmIC0tZ2l0 IGEvY29tbW9uL3NobGlicyBiL2NvbW1vbi9zaGxpYnMKaW5kZXggMmQ3ZjMyZWVlMzkzYi4uYzQy ODE1MzM4MGUwMyAxMDA2NDQKLS0tIGEvY29tbW9uL3NobGlicworKysgYi9jb21tb24vc2hsaWJz CkBAIC0xNTYxLDI2ICsxNTYxLDcgQEAgbGliZnByaW50LnNvLjAgbGliZnByaW50MC0xLjBfMQog bGliZnByaW50LTIuc28uMiBsaWJmcHJpbnQtMS45MC43XzEKIGxpYnd4X2Jhc2V1X3htbC0zLjAu c28uMCB3eFdpZGdldHMtY29tbW9uLTMuMC40XzEKIGxpYnd4X2Jhc2V1LTMuMC5zby4wIHd4V2lk Z2V0cy1jb21tb24tMy4wLjRfMQotbGlid3hfZ3RrMl9hZHYtMy4wLnNvLjAgd3hXaWRnZXRzLTMu MC4wXzEKLWxpYnd4X2Jhc2VfeG1sLTMuMC5zby4wIHd4V2lkZ2V0cy0zLjAuMF8xCi1saWJ3eF9n dGsyX2h0bWwtMy4wLnNvLjAgd3hXaWRnZXRzLTMuMC4wXzEKLWxpYnd4X2d0azJfYXVpLTMuMC5z by4wIHd4V2lkZ2V0cy0zLjAuMF8xCi1saWJ3eF9ndGsyX2NvcmUtMy4wLnNvLjAgd3hXaWRnZXRz LTMuMC4wXzEKLWxpYnd4X2Jhc2VfbmV0LTMuMC5zby4wIHd4V2lkZ2V0cy0zLjAuMF8xCi1saWJ3 eF9iYXNlLTMuMC5zby4wIHd4V2lkZ2V0cy0zLjAuMF8xCi1saWJ3eF9ndGsydV9nbC0zLjAuc28u MCB3eFdpZGdldHMtMy4wLjBfMQotbGlid3hfZ3RrMnVfc3RjLTMuMC5zby4wIHd4V2lkZ2V0cy0z LjAuMF8xCi1saWJ3eF9ndGsydV9hZHYtMy4wLnNvLjAgd3hXaWRnZXRzLTMuMC4wXzEKLWxpYnd4 X2d0azJ1X3FhLTMuMC5zby4wIHd4V2lkZ2V0cy0zLjAuMF8xCiBsaWJ3eF9iYXNldV9uZXQtMy4w LnNvLjAgd3hXaWRnZXRzLWNvbW1vbi0zLjAuNF8xCi1saWJ3eF9ndGsydV9jb3JlLTMuMC5zby4w IHd4V2lkZ2V0cy0zLjAuMF8xCi1saWJ3eF9ndGsydV9yaWNodGV4dC0zLjAuc28uMCB3eFdpZGdl dHMtMy4wLjBfMQotbGlid3hfZ3RrMnVfcHJvcGdyaWQtMy4wLnNvLjAgd3hXaWRnZXRzLTMuMC4w XzEKLWxpYnd4X2d0azJ1X2h0bWwtMy4wLnNvLjAgd3hXaWRnZXRzLTMuMC4wXzEKLWxpYnd4X2d0 azJ1X3hyYy0zLjAuc28uMCB3eFdpZGdldHMtMy4wLjBfMQotbGlid3hfZ3RrMnVfYXVpLTMuMC5z by4wIHd4V2lkZ2V0cy0zLjAuMF8xCi1saWJ3eF9ndGsydV9yaWJib24tMy4wLnNvLjAgd3hXaWRn ZXRzLTMuMC4wXzEKLWxpYnd4X2d0azJ1X21lZGlhLTMuMC5zby4wIHd4V2lkZ2V0cy0zLjAuMV8x CiBsaWJtc3BhY2suc28uMCBsaWJtc3BhY2stMC40YWxwaGFfMQogbGlic2xpbS5zby4xLjMuNiBz bGltLTEuMy42XzEKIGxpYm1lZGlhYXJ0LTIuMC5zby4wIGxpYm1lZGlhYXJ0LTEuOS4xXzEKZGlm ZiAtLWdpdCBhL3NyY3BrZ3Mvd3hXaWRnZXRzLWRldmVsIGIvc3JjcGtncy93eFdpZGdldHMtZGV2 ZWwKZGVsZXRlZCBmaWxlIG1vZGUgMTIwMDAwCmluZGV4IDBlOTc5YmI3ODlkMTEuLjAwMDAwMDAw MDAwMDAKLS0tIGEvc3JjcGtncy93eFdpZGdldHMtZGV2ZWwKKysrIC9kZXYvbnVsbApAQCAtMSAr MCwwIEBACi13eFdpZGdldHMKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQg YS9zcmNwa2dzL3d4V2lkZ2V0cy9wYXRjaGVzL25vbmZhdGFsLWFiaS1jaGVjay5wYXRjaCBiL3Ny Y3BrZ3Mvd3hXaWRnZXRzL3BhdGNoZXMvbm9uZmF0YWwtYWJpLWNoZWNrLnBhdGNoCmRlbGV0ZWQg ZmlsZSBtb2RlIDEwMDY0NAppbmRleCBiYjkzZjBhMjYxNTZjLi4wMDAwMDAwMDAwMDAwCi0tLSBh L3NyY3BrZ3Mvd3hXaWRnZXRzL3BhdGNoZXMvbm9uZmF0YWwtYWJpLWNoZWNrLnBhdGNoCisrKyAv ZGV2L251bGwKQEAgLTEsMTggKzAsMCBAQAotVGFrZW4gZnJvbQotaHR0cHM6Ly9naXRodWIuY29t L2FyY2hsaW51eC9zdm50b2dpdC1wYWNrYWdlcy9ibG9iLzcxZWUxN2Q1MjlmOGUwZGM1YzQ0ZDJm ZmZiMGRmYTY5YjcxZGFhMGIvcmVwb3MvZXh0cmEteDg2XzY0L21ha2UtYWJpY2hlY2stbm9uLWZh dGFsLnBhdGNoCi0KLWRpZmYgLXVwIHd4R1RLLTIuOC4xMi9zcmMvY29tbW9uL2FwcGJhc2UuY3Bw LmFiaWNoZWNrIHd4R1RLLTIuOC4xMi9zcmMvY29tbW9uL2FwcGJhc2UuY3BwCi0tLS0gYS9zcmMv Y29tbW9uL2FwcGJhc2UuY3BwLmFiaWNoZWNrCTIwMTUtMDMtMTIgMTc6MTU6MTguMDAwMDAwMDAw ICswMTAwCi0rKysgYi9zcmMvY29tbW9uL2FwcGJhc2UuY3BwCTIwMTUtMDMtMTIgMTc6MTU6NTcu MDAwMDAwMDAwICswMTAwCi1AQCAtNDI0LDEwICs0MjQsNyBAQCBib29sIHd4QXBwQ29uc29sZTo6 Q2hlY2tCdWlsZE9wdGlvbnMoY29uCi0gICAgICAgICBtc2cuUHJpbnRmKF9UKCJNaXNtYXRjaCBi ZXR3ZWVuIHRoZSBwcm9ncmFtIGFuZCBsaWJyYXJ5IGJ1aWxkIHZlcnNpb25zIGRldGVjdGVkLlxu VGhlIGxpYnJhcnkgdXNlZCAlcyxcbmFuZCAlcyB1c2VkICVzLiIpLAotICAgICAgICAgICAgICAg ICAgICBsaWIuY19zdHIoKSwgcHJvZ05hbWUuY19zdHIoKSwgcHJvZy5jX3N0cigpKTsKLSAKLS0g ICAgICAgIHd4TG9nRmF0YWxFcnJvcihtc2cuY19zdHIoKSk7Ci0tCi0tICAgICAgICAvLyBub3Jt YWxseSB3eExvZ0ZhdGFsRXJyb3IgZG9lc24ndCByZXR1cm4KLS0gICAgICAgIHJldHVybiBmYWxz ZTsKLSsgICAgICAgIHd4TG9nV2FybmluZyhtc2cuY19zdHIoKSk7Ci0gICAgIH0KLSAjdW5kZWYg d3hDTVAKLSAKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mvd3hXaWRnZXRzL3BhdGNoZXMvd3hHVEstY29s bGlzaW9uLnBhdGNoIGIvc3JjcGtncy93eFdpZGdldHMvcGF0Y2hlcy93eEdUSy1jb2xsaXNpb24u cGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDVlYzMxZWJhY2ViMWQuLjAwMDAw MDAwMDAwMDAKLS0tIGEvc3JjcGtncy93eFdpZGdldHMvcGF0Y2hlcy93eEdUSy1jb2xsaXNpb24u cGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSw3OSArMCwwIEBACi1kaWZmIC1OYXVyIE1ha2VmaWxl LmluIE1ha2VmaWxlLmluCi0tLS0gYS9NYWtlZmlsZS5pbgkyMDE0LTEwLTA2IDIzOjMzOjQ0LjAw MDAwMDAwMCArMDIwMAotKysrIGIvTWFrZWZpbGUuaW4JMjAxNC0xMS0xOSAxMDo0ODoxOC43NTIz MTkwNTggKzAxMDAKLUBAIC0xNTI3OSw5ICsxNTI3OSwxMSBAQAotIAotIGluc3RhbGw6ICQoX19p bnN0YWxsX3d4cmVnZXhfX19kZXBuYW1lKSAkKF9faW5zdGFsbF93eHpsaWJfX19kZXBuYW1lKSAk KF9faW5zdGFsbF93eHBuZ19fX2RlcG5hbWUpICQoX19pbnN0YWxsX3d4anBlZ19fX2RlcG5hbWUp ICQoX19pbnN0YWxsX3d4dGlmZl9fX2RlcG5hbWUpICQoX19pbnN0YWxsX3d4ZXhwYXRfX19kZXBu YW1lKSAkKF9faW5zdGFsbF93eHNjaW50aWxsYV9fX2RlcG5hbWUpICQoX19pbnN0YWxsX21vbm9k bGxfX19kZXBuYW1lKSAkKF9faW5zdGFsbF9tb25vbGliX19fZGVwbmFtZSkgJChfX2luc3RhbGxf YmFzZWRsbF9fX2RlcG5hbWUpICQoX19pbnN0YWxsX2Jhc2VsaWJfX19kZXBuYW1lKSAkKF9faW5z dGFsbF9uZXRkbGxfX19kZXBuYW1lKSAkKF9faW5zdGFsbF9uZXRsaWJfX19kZXBuYW1lKSAkKF9f aW5zdGFsbF9jb3JlZGxsX19fZGVwbmFtZSkgJChfX2luc3RhbGxfY29yZWxpYl9fX2RlcG5hbWUp ICQoX19pbnN0YWxsX2FkdmRsbF9fX2RlcG5hbWUpICQoX19pbnN0YWxsX2FkdmxpYl9fX2RlcG5h bWUpICQoX19pbnN0YWxsX21lZGlhZGxsX19fZGVwbmFtZSkgJChfX2luc3RhbGxfbWVkaWFsaWJf X19kZXBuYW1lKSAkKF9faW5zdGFsbF9odG1sZGxsX19fZGVwbmFtZSkgJChfX2luc3RhbGxfaHRt bGxpYl9fX2RlcG5hbWUpICQoX19pbnN0YWxsX3dlYnZpZXdkbGxfX19kZXBuYW1lKSAkKF9faW5z dGFsbF93ZWJ2aWV3bGliX19fZGVwbmFtZSkgJChfX2luc3RhbGxfcWFkbGxfX19kZXBuYW1lKSAk KF9faW5zdGFsbF9xYWxpYl9fX2RlcG5hbWUpICQoX19pbnN0YWxsX3htbGRsbF9fX2RlcG5hbWUp ICQoX19pbnN0YWxsX3htbGxpYl9fX2RlcG5hbWUpICQoX19pbnN0YWxsX3hyY2RsbF9fX2RlcG5h bWUpICQoX19pbnN0YWxsX3hyY2xpYl9fX2RlcG5hbWUpICQoX19pbnN0YWxsX2F1aWRsbF9fX2Rl cG5hbWUpICQoX19pbnN0YWxsX2F1aWxpYl9fX2RlcG5hbWUpICQoX19pbnN0YWxsX3JpYmJvbmRs bF9fX2RlcG5hbWUpICQoX19pbnN0YWxsX3JpYmJvbmxpYl9fX2RlcG5hbWUpICQoX19pbnN0YWxs X3Byb3BncmlkZGxsX19fZGVwbmFtZSkgJChfX2luc3RhbGxfcHJvcGdyaWRsaWJfX19kZXBuYW1l KSAkKF9faW5zdGFsbF9yaWNodGV4dGRsbF9fX2RlcG5hbWUpICQoX19pbnN0YWxsX3JpY2h0ZXh0 bGliX19fZGVwbmFtZSkgJChfX2luc3RhbGxfc3RjZGxsX19fZGVwbmFtZSkgJChfX2luc3RhbGxf c3RjbGliX19fZGVwbmFtZSkgJChfX2luc3RhbGxfZ2xkbGxfX19kZXBuYW1lKSAkKF9faW5zdGFs bF9nbGxpYl9fX2RlcG5hbWUpICQoX19pbnN0YWxsX3NvdW5kX3NkbF9fX2RlcG5hbWUpICQoX19p bnN0YWxsX3dlYmtpdDJfZXh0X19fZGVwbmFtZSkgJChfX2luc3RhbGxfd3hyY19fX2RlcG5hbWUp IGluc3RhbGwtd3hjb25maWcgbG9jYWxlX2luc3RhbGwgbG9jYWxlX21zd19pbnN0YWxsCi0gCSQo SU5TVEFMTF9ESVIpICQoREVTVERJUikkKGRhdGFkaXIpL2FjbG9jYWwKLS0JKGNkICQoc3JjZGly KSA7ICQoSU5TVEFMTF9EQVRBKSAgd3h3aW4ubTQgJChERVNURElSKSQoZGF0YWRpcikvYWNsb2Nh bCkKLSsJKGNkICQoc3JjZGlyKSA7ICQoSU5TVEFMTF9EQVRBKSAgd3h3aW4ubTQgJChERVNURElS KSQoZGF0YWRpcikvYWNsb2NhbC93eHdpbjMubTQpCi0gCSQoSU5TVEFMTF9ESVIpICQoREVTVERJ UikkKGRhdGFkaXIpL2Jha2VmaWxlL3ByZXNldHMKLS0JKGNkICQoc3JjZGlyKS9idWlsZC9iYWtl ZmlsZXMvd3hwcmVzZXRzL3ByZXNldHMgOyAkKElOU1RBTExfREFUQSkgIHd4LmJrbCB3eF91bml4 LmJrbCB3eF93aW4zMi5ia2wgd3hfeHJjLmJrbCB3eF9wcmVzZXRzLnB5ICQoREVTVERJUikkKGRh dGFkaXIpL2Jha2VmaWxlL3ByZXNldHMpCi0rCShjZCAkKHNyY2RpcikvYnVpbGQvYmFrZWZpbGVz L3d4cHJlc2V0cy9wcmVzZXRzIDsgXAotKwlmb3IgaSBpbiB3eC5ia2wgd3hfdW5peC5ia2wgd3hf d2luMzIuYmtsIHd4X3hyYy5ia2wgd3hfcHJlc2V0cy5weSA7IGRvIFwKLSsJJChJTlNUQUxMX0RB VEEpICQkaSAkKERFU1RESVIpJChkYXRhZGlyKS9iYWtlZmlsZS9wcmVzZXRzL3d4JChXWF9SRUxF QVNFX05PRE9UKSQke2kjI3d4fSA7IGRvbmUpCi0gCSQoRFlMSUJfUlBBVEhfSU5TVEFMTCkKLSAJ JChJTlNUQUxMX0RJUikgJChERVNURElSKSQobGliZGlyKS93eC9pbmNsdWRlLyQoVE9PTENIQUlO X0ZVTExOQU1FKS93eAotIAlmb3IgZiBpbiBzZXR1cC5oICQoUkNERUZTX0gpOyBkbyBcCi1AQCAt MTYxNzcsNyArMTYxNzksNyBAQAotIAkkKElOU1RBTExfRElSKSAkKERFU1RESVIpJChiaW5kaXIp Ci0gCSQoSU5TVEFMTF9ESVIpICQoREVTVERJUikkKGxpYmRpcikvd3gvY29uZmlnCi0gCSQoSU5T VEFMTF9TQ1JJUFQpIGxpYi93eC9jb25maWcvJChUT09MQ0hBSU5fRlVMTE5BTUUpICQoREVTVERJ UikkKGxpYmRpcikvd3gvY29uZmlnCi0tCShjZCAkKERFU1RESVIpJChiaW5kaXIpICYmIHJtIC1m IHd4LWNvbmZpZyAmJiAkKExOX1MpICQobGliZGlyKS93eC9jb25maWcvJChUT09MQ0hBSU5fRlVM TE5BTUUpIHd4LWNvbmZpZyB8fCBjcCAtcCAkKERFU1RESVIpJChsaWJkaXIpL3d4L2NvbmZpZy8k KFRPT0xDSEFJTl9GVUxMTkFNRSkgd3gtY29uZmlnKQotKwkoY2QgJChERVNURElSKSQoYmluZGly KSAmJiBybSAtZiB3eC1jb25maWctJChXWF9SRUxFQVNFKSAmJiAkKExOX1MpICQobGliZGlyKS93 eC9jb25maWcvJChUT09MQ0hBSU5fRlVMTE5BTUUpIHd4LWNvbmZpZy0kKFdYX1JFTEVBU0UpIHx8 IGNwIC1wICQoREVTVERJUikkKGxpYmRpcikvd3gvY29uZmlnLyQoVE9PTENIQUlOX0ZVTExOQU1F KSB3eC1jb25maWctJChXWF9SRUxFQVNFKSkKLSAKLSBsb2NhbGVfaW5zdGFsbDogCi0gCSQoSU5T VEFMTF9ESVIpICQoREVTVERJUikkKGRhdGFkaXIpL2xvY2FsZQotQEAgLTE2MTg1LDcgKzE2MTg3 LDcgQEAKLSAJJChJTlNUQUxMX0RJUikgJChERVNURElSKSQoZGF0YWRpcikvbG9jYWxlLyQkbCA7 IFwKLSAJJChJTlNUQUxMX0RJUikgJChERVNURElSKSQoZGF0YWRpcikvbG9jYWxlLyQkbC9MQ19N RVNTQUdFUyA7IFwKLSAJaWYgdGVzdCAtZiAkKHNyY2RpcikvbG9jYWxlLyQkbC5tbyA7IHRoZW4g XAotLQkkKElOU1RBTExfREFUQSkgJChzcmNkaXIpL2xvY2FsZS8kJGwubW8gJChERVNURElSKSQo ZGF0YWRpcikvbG9jYWxlLyQkbC9MQ19NRVNTQUdFUy93eHN0ZC5tbyA7IFwKLSsJJChJTlNUQUxM X0RBVEEpICQoc3JjZGlyKS9sb2NhbGUvJCRsLm1vICQoREVTVERJUikkKGRhdGFkaXIpL2xvY2Fs ZS8kJGwvTENfTUVTU0FHRVMvd3hzdGQkKFdYX1JFTEVBU0VfTk9ET1QpLm1vIDsgXAotIAlmaSA7 IFwKLSAJZG9uZQotIAotQEAgLTE2MjAyLDcgKzE2MjA0LDcgQEAKLSAJJChJTlNUQUxMX0RJUikg JChERVNURElSKSQoZGF0YWRpcikvbG9jYWxlLyQkbCA7IFwKLSAJJChJTlNUQUxMX0RJUikgJChE RVNURElSKSQoZGF0YWRpcikvbG9jYWxlLyQkbC9MQ19NRVNTQUdFUyA7IFwKLSAJaWYgdGVzdCAt ZiAkKHNyY2RpcikvbG9jYWxlL21zdy8kJGwubW8gOyB0aGVuIFwKLS0JJChJTlNUQUxMX0RBVEEp ICQoc3JjZGlyKS9sb2NhbGUvbXN3LyQkbC5tbyAkKERFU1RESVIpJChkYXRhZGlyKS9sb2NhbGUv JCRsL0xDX01FU1NBR0VTL3d4bXN3Lm1vIDsgXAotKwkkKElOU1RBTExfREFUQSkgJChzcmNkaXIp L2xvY2FsZS9tc3cvJCRsLm1vICQoREVTVERJUikkKGRhdGFkaXIpL2xvY2FsZS8kJGwvTENfTUVT U0FHRVMvd3htc3ckKFdYX1JFTEVBU0VfTk9ET1QpLm1vIDsgXAotIAlmaSA7IFwKLSAJZG9uZQot IAotZGlmZiAtTmF1ciBidWlsZC9iYWtlZmlsZXMvd3guYmtsIGJ1aWxkL2Jha2VmaWxlcy93eC5i a2wKLS0tLSBhL2J1aWxkL2Jha2VmaWxlcy93eC5ia2wJMjAxNC0xMC0wNiAyMzozMzo0NC4wMDAw MDAwMDAgKzAyMDAKLSsrKyBiL2J1aWxkL2Jha2VmaWxlcy93eC5ia2wJMjAxNC0xMS0xOSAxMDoz MjoyMS42OTIyODM5NTUgKzAxMDAKLUBAIC0xMzcsNyArMTM3LDcgQEAKLSAgICAgICAgIDx1c2lu ZyBtb2R1bGU9ImdldHRleHQiLz4KLSAgICAgICAgIDxnZXR0ZXh0LWNhdGFsb2dzIGlkPSJsb2Nh bGUiPgotICAgICAgICAgICAgIDxzcmNkaXI+JChTUkNESVIpL2xvY2FsZTwvc3JjZGlyPgotLSAg ICAgICAgICAgIDxjYXRhbG9nLW5hbWU+d3hzdGQ8L2NhdGFsb2ctbmFtZT4KLSsgICAgICAgICAg ICA8Y2F0YWxvZy1uYW1lPnd4c3RkJChXWF9SRUxFQVNFX05PRE9UKTwvY2F0YWxvZy1uYW1lPgot ICAgICAgICAgICAgIDxsaW5ndWFzPgotICAgICAgICAgICAgICAgICBjYSBjcyBkYSBkZSBlbCBl cyBmaSBmciBodSBpZCBpdCBqYSBubCBwbCBydSBzbCBzdiB0ciB1awotICAgICAgICAgICAgICAg ICB6aCB6aF9DTiB6aF9UVwotZGlmZiAtTmF1ciBzcmMvY29tbW9uL3RyYW5zbGF0aW9uLmNwcCBz cmMvY29tbW9uL3RyYW5zbGF0aW9uLmNwcAotLS0tIGEvc3JjL2NvbW1vbi90cmFuc2xhdGlvbi5j cHAJMjAxNC0xMC0wNiAyMzozMzo0NC4wMDAwMDAwMDAgKzAyMDAKLSsrKyBiL3NyYy9jb21tb24v dHJhbnNsYXRpb24uY3BwCTIwMTQtMTEtMTkgMTE6MDI6MjEuMDY3Nzg4NjY1ICswMTAwCi1AQCAt MTQ3MSw3ICsxNDcxLDcgQEAKLSAKLSBib29sIHd4VHJhbnNsYXRpb25zOjpBZGRTdGRDYXRhbG9n KCkKLSB7Ci0tICAgIGlmICggIUFkZENhdGFsb2cod3hTKCJ3eHN0ZCIpKSApCi0rICAgIGlmICgg IUFkZENhdGFsb2cod3hTKCJ3eHN0ZCIgd3hTVFJJTkdJWkUod3hNQUpPUl9WRVJTSU9OKSB3eFNU UklOR0laRSh3eE1JTk9SX1ZFUlNJT04pKSkgKQotICAgICAgICAgcmV0dXJuIGZhbHNlOwotIAot ICAgICAvLyB0aGVyZSBtYXkgYmUgYSBjYXRhbG9nIHdpdGggdG9vbGtpdCBzcGVjaWZpYyBvdmVy cmlkZXMsIGl0IGlzIG5vdAotZGlmZiAtTmF1ciB1dGlscy93eHJjL01ha2VmaWxlLmluIHV0aWxz L3d4cmMvTWFrZWZpbGUuaW4KLS0tLSBhL3V0aWxzL3d4cmMvTWFrZWZpbGUuaW4JMjAxNC0xMC0w NiAyMzozMzo0NC4wMDAwMDAwMDAgKzAyMDAKLSsrKyBiL3V0aWxzL3d4cmMvTWFrZWZpbGUuaW4J MjAxNC0xMS0xOSAxMDo0OTo1NS40MTAxMTA2NjkgKzAxMDAKLUBAIC0xMjUsNyArMTI1LDYgQEAK LSBAQ09ORF9VU0VfWFJDXzFACXJtIC1mICQoREVTVERJUikkKGJpbmRpcikvd3hyYyQoRVhFRVhU KSAkKERFU1RESVIpJChiaW5kaXIpL3d4cmMtJChXWF9SRUxFQVNFKQotIEBDT05EX1VTRV9YUkNf MUAJJChJTlNUQUxMX1BST0dSQU0pIHd4cmMkKEVYRUVYVCkgJChERVNURElSKSQoYmluZGlyKQot IEBDT05EX1VTRV9YUkNfMUAJbXYgLWYgJChERVNURElSKSQoYmluZGlyKS93eHJjJChFWEVFWFQp ICQoREVTVERJUikkKGJpbmRpcikvd3hyYy0kKFdYX1JFTEVBU0UpCi0tQENPTkRfVVNFX1hSQ18x QAkoY2QgJChERVNURElSKSQoYmluZGlyKSAmJiAkKExOX1MpIHd4cmMtJChXWF9SRUxFQVNFKSB3 eHJjJChFWEVFWFQpKQotIAotIEBDT05EX1VTRV9YUkNfMUB1bmluc3RhbGxfd3hyYzogCi0gQENP TkRfVVNFX1hSQ18xQAlybSAtZiAkKERFU1RESVIpJChiaW5kaXIpL3d4cmMkKEVYRUVYVCkKZGlm ZiAtLWdpdCBhL3NyY3BrZ3Mvd3hXaWRnZXRzL3RlbXBsYXRlIGIvc3JjcGtncy93eFdpZGdldHMv dGVtcGxhdGUKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDQ4MGMzZTE1ZTM1MjQuLjAw MDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtncy93eFdpZGdldHMvdGVtcGxhdGUKKysrIC9kZXYvbnVs bApAQCAtMSw2NiArMCwwIEBACi0jIFRlbXBsYXRlIGZpbGUgZm9yICd3eFdpZGdldHMnCi1wa2du YW1lPXd4V2lkZ2V0cwotdmVyc2lvbj0zLjAuNS4xCi1yZXZpc2lvbj02Ci1idWlsZF9zdHlsZT1n bnUtY29uZmlndXJlCi1jb25maWd1cmVfYXJncz0iLS1lbmFibGUtdW5pY29kZSAtLXdpdGgtb3Bl bmdsIC0td2l0aC1zZGwgLS13aXRoLWxpYm1zcGFjawotIC0td2l0aC1saWJub3RpZnkgLS1lbmFi bGUtbWVkaWFjdHJsIC0td2l0aC1ndGs9MiAtLWRpc2FibGUtd2VidmlldyIKLWhvc3RtYWtlZGVw ZW5kcz0icGtnLWNvbmZpZyIKLW1ha2VkZXBlbmRzPSJndGsrLWRldmVsIGxpYmpwZWctdHVyYm8t ZGV2ZWwgdGlmZi1kZXZlbCBsaWJTTS1kZXZlbCBsaWJub3RpZnktZGV2ZWwKLSBsaWJYaW5lcmFt YS1kZXZlbCBsaWJtc3BhY2stZGV2ZWwgU0RMMi1kZXZlbCBnbHUtZGV2ZWwKLSBnc3RyZWFtZXIx LWRldmVsIGdzdC1wbHVnaW5zLWJhc2UxLWRldmVsIgotZGVwZW5kcz0id3hXaWRnZXRzLWNvbW1v bj49JHt2ZXJzaW9ufSIKLXNob3J0X2Rlc2M9Ild4V2lkZ2V0cyBHVUkgdG9vbGtpdCBsaWJyYXJ5 ICh2ZXJzaW9uIDMpIgotbWFpbnRhaW5lcj0iTWFydGluIFJpZXNlIDxncmF1ZWhhYXJlQGdteC5k ZT4iCi1saWNlbnNlPSJXeFdpbmRvd3MtZXhjZXB0aW9uLTMuMSIKLWhvbWVwYWdlPSJodHRwczov L3d3dy53eHdpZGdldHMub3JnLyIKLWRpc3RmaWxlcz0iaHR0cHM6Ly9naXRodWIuY29tL3d4V2lk Z2V0cy93eFdpZGdldHMvcmVsZWFzZXMvZG93bmxvYWQvdiR7dmVyc2lvbn0vd3hXaWRnZXRzLSR7 dmVyc2lvbn0udGFyLmJ6MiIKLWNoZWNrc3VtPTQ0MGY2ZTczY2Y1YWZiMmNiZjlhZjEwY2VjOGRh NmNkZDNkMzk5OGQ1Mjc1OThhNTNkYjg3MDk5NTI0YWM4MDcKLQotcG9zdF9pbnN0YWxsKCkgewot CWxvY2FsIF9jb25maWc9Imd0azItdW5pY29kZS0zLjAiCi0JIyByZW1vdmUgZmlsZXMgdGhhdCBh cmUgYWxyZWFkeSBpbiB3eFdpZGdldHMtY29tbW9uCi0Jcm0gLWYgJHtERVNURElSfS91c3IvbGli L2xpYnd4X2Jhc2V1KgotCXJtIC1yZiAke0RFU1RESVJ9L3Vzci9iaW4vd3hyYyoKLQlybSAtcmYg JHtERVNURElSfS91c3Ivc2hhcmUKLQlmaW5kICR7REVTVERJUn0vdXNyL2luY2x1ZGUgLXR5cGUg ZiAtbm90IC1uYW1lIHRhYmFydGd0ay5oIFwKLQkJLW5vdCAtbmFtZSBmb250ZGxnZy5oIC1ub3Qg LW5hbWUgbm90aWZtc2cuaCAtZXhlYyBybSAtZiB7fSBcOwotCWZvciBmIGluICIiIGdlbmVyaWMg Z3RrOyBkbwotCQlybSAke0RFU1RESVJ9L3Vzci9pbmNsdWRlL3d4LTMuMC93eC8kZi9ub3RpZm1z Zy5oCi0JZG9uZQotCSMgcmVtb3ZlIGFsbCBvY2N1cnJlbmNlcyBvZiAkWEJQU19DUk9TU19UUklQ TEVUCi0JIyB3eC1jb25maWc6Ci0JIyAgIC0gbWFyayB0aGlzIGJ1aWxkIGFzIG5hdGl2ZSBidWls ZAotCSMgICAtIGlnbm9yZSAtLWhvc3Qgb3B0aW9uOyBicmVha3MgY29uZmlndXJlIHNjcmlwdHMg d2hlbgotCSMgICAgIGNyb3NzIGNvbXBpbGluZyAoaXNu4oCZdCBuZWNlc3NhcnkgaW4gb3VyIGNh c2UgYW55d2F5KQotCWlmIFsgLW4gIiRDUk9TU19CVUlMRCIgXTsgdGhlbgotCQlyZW5hbWUgIiR7 WEJQU19DUk9TU19UUklQTEVUfS0iICIiIFwKLQkJCSR7REVTVERJUn0vdXNyL2xpYi93eC9jb25m aWcvKiBcCi0JCQkke0RFU1RESVJ9L3Vzci9saWIvd3gvaW5jbHVkZS8qCi0JCXJlbmFtZSAtLSAi LSR7WEJQU19DUk9TU19UUklQTEVUfSIgIiIgJHtERVNURElSfS91c3IvbGliLyoKLQotCQlzZWQg LWkgLWUgInMvJHtYQlBTX0NST1NTX1RSSVBMRVR9LS8vZyIgXAotCQkJLWUgInMvLSR7WEJQU19D Uk9TU19UUklQTEVUfS8vZyIgXAotCQkJLWUgInMsJFhCUFNfQ1JPU1NfQkFTRSwsZyIgXAotCQkJ JHtERVNURElSfS91c3IvbGliL3d4L2NvbmZpZy8ke19jb25maWd9Ci0KLQlmaQotCXNlZCAtaSAt ZSAncyxeYmluZGlyPS4qLGJpbmRpcj0ke2V4ZWNfcHJlZml4fS9iaW4sJyBcCi0JCS1lICdzL2lz X2Nyb3NzKCkgIHsgLiogfS9pc19jcm9zcygpIHsgZmFsc2U7IH0vZycgXAotCQktZSAnLy0tXCo9 XCopL2kgLS1ob3N0PVwqKSBjb250aW51ZTs7JyBcCi0JCS1lICJzLC91c3IvbGliLFwke2V4ZWNf cHJlZml4fS9saWIsZyIgXAotCQkke0RFU1RESVJ9L3Vzci9saWIvd3gvY29uZmlnLyR7X2NvbmZp Z30KLQlsbiAtc2YgLi4vbGliL3d4L2NvbmZpZy8ke19jb25maWd9ICR7UEtHREVTVERJUn0vdXNy L2Jpbi93eC1jb25maWctMy4wCi0JbG4gLXNmIHd4LWNvbmZpZy0zLjAgJHtERVNURElSfS91c3Iv YmluL3d4LWNvbmZpZwotfQotCi13eFdpZGdldHMtZGV2ZWxfcGFja2FnZSgpIHsKLQlkZXBlbmRz PSIke3NvdXJjZXBrZ30+PSR7dmVyc2lvbn1fJHtyZXZpc2lvbn0gJHtzb3VyY2Vwa2d9LWNvbW1v bi1kZXZlbD49JHt2ZXJzaW9ufSIKLQlzaG9ydF9kZXNjKz0iIC0gZGV2ZWxvcG1lbnQgZmlsZXMi Ci0JcGtnX2luc3RhbGwoKSB7Ci0JCXZtb3ZlIHVzci9pbmNsdWRlCi0JCXZtb3ZlIHVzci9iaW4K LQkJdm1vdmUgInVzci9saWIvKi5zbyIKLQkJdm1vdmUgdXNyL2xpYi93eAotCX0KLX0KZGlmZiAt LWdpdCBhL3NyY3BrZ3Mvd3hXaWRnZXRzL3VwZGF0ZSBiL3NyY3BrZ3Mvd3hXaWRnZXRzL3VwZGF0 ZQpkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNzdlMjkwZTdlNjQ2ZS4uMDAwMDAwMDAw MDAwMAotLS0gYS9zcmNwa2dzL3d4V2lkZ2V0cy91cGRhdGUKKysrIC9kZXYvbnVsbApAQCAtMSwy ICswLDAgQEAKLSMgZGV2ZWxvcG1lbnQgdmVyc2lvbgotaWdub3JlPSczLjEuKicKCkZyb20gODJl MzI1ZDFkZDMyYWJhZTljNjU5NmJkMWRiZTU3OGY3NDkzOWJhMCBNb24gU2VwIDE3IDAwOjAwOjAw IDIwMDEKRnJvbTogIkFuZHJldyBKLiBIZXNmb3JkIiA8YWpoQHNpZGViYW5kLm9yZz4KRGF0ZTog TW9uLCAyNSBTZXAgMjAyMyAwMDowNDozMyAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggMDYvNDRdIHd4 V2lkZ2V0cy1ndGszOiB1cGRhdGUgdG8gMy4yLjIuMS4KCi0tLQogY29tbW9uL3NobGlicyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgMzIgKysrKysrKysrLS0tLS0tLS0tLQogLi4u L3BhdGNoZXMvbm9uZmF0YWwtYWJpLWNoZWNrLnBhdGNoICAgICAgICAgIHwgMjEgKysrKysrLS0t LS0tCiBzcmNwa2dzL3d4V2lkZ2V0cy1ndGszL3RlbXBsYXRlICAgICAgICAgICAgICAgfCAyMiAr KysrKysrKy0tLS0tCiBzcmNwa2dzL3d4V2lkZ2V0cy1ndGszL3VwZGF0ZSAgICAgICAgICAgICAg ICAgfCAgNCArLS0KIDQgZmlsZXMgY2hhbmdlZCwgNDIgaW5zZXJ0aW9ucygrKSwgMzcgZGVsZXRp b25zKC0pCgpkaWZmIC0tZ2l0IGEvY29tbW9uL3NobGlicyBiL2NvbW1vbi9zaGxpYnMKaW5kZXgg YzQyODE1MzM4MGUwMy4uYzEwNzExZThiZjgzZiAxMDA2NDQKLS0tIGEvY29tbW9uL3NobGlicwor KysgYi9jb21tb24vc2hsaWJzCkBAIC0xNTU5LDkgKzE1NTksNiBAQCBsaWJvZnguc28uNyBsaWJv ZngtMC4xMC4xXzEKIGxpYnNpZ3NlZ3Yuc28uMiBsaWJzaWdzZWd2LTIuMTBfMgogbGliZnByaW50 LnNvLjAgbGliZnByaW50MC0xLjBfMQogbGliZnByaW50LTIuc28uMiBsaWJmcHJpbnQtMS45MC43 XzEKLWxpYnd4X2Jhc2V1X3htbC0zLjAuc28uMCB3eFdpZGdldHMtY29tbW9uLTMuMC40XzEKLWxp Ynd4X2Jhc2V1LTMuMC5zby4wIHd4V2lkZ2V0cy1jb21tb24tMy4wLjRfMQotbGlid3hfYmFzZXVf bmV0LTMuMC5zby4wIHd4V2lkZ2V0cy1jb21tb24tMy4wLjRfMQogbGlibXNwYWNrLnNvLjAgbGli bXNwYWNrLTAuNGFscGhhXzEKIGxpYnNsaW0uc28uMS4zLjYgc2xpbS0xLjMuNl8xCiBsaWJtZWRp YWFydC0yLjAuc28uMCBsaWJtZWRpYWFydC0xLjkuMV8xCkBAIC0zNDc0LDE5ICszNDcxLDIyIEBA IGxpYm1vempzLTc4LnNvLjAgbW96anM3OC03OC4xLjBfMQogbGliZWJ1cjEyOC5zby4xIGxpYmVi dXIxMjgtMS4yLjRfMQogbGliZ3Rrc291cmNldmlldy00LnNvLjAgZ3Rrc291cmNldmlldzQtNC4w LjJfMQogbGliZ3Rrc291cmNldmlldy01LnNvLjAgZ3Rrc291cmNldmlldzUtNS4yLjBfMQotbGli d3hfZ3RrM3VfcHJvcGdyaWQtMy4wLnNvLjAgd3hXaWRnZXRzLWd0azMtMy4wLjRfMQotbGlid3hf Z3RrM3VfcWEtMy4wLnNvLjAgd3hXaWRnZXRzLWd0azMtMy4wLjRfMQotbGlid3hfZ3RrM3VfY29y ZS0zLjAuc28uMCB3eFdpZGdldHMtZ3RrMy0zLjAuNF8xCi1saWJ3eF9ndGszdV9odG1sLTMuMC5z by4wIHd4V2lkZ2V0cy1ndGszLTMuMC40XzEKLWxpYnd4X2d0azN1X2Fkdi0zLjAuc28uMCB3eFdp ZGdldHMtZ3RrMy0zLjAuNF8xCi1saWJ3eF9ndGszdV9yaWNodGV4dC0zLjAuc28uMCB3eFdpZGdl dHMtZ3RrMy0zLjAuNF8xCi1saWJ3eF9ndGszdV94cmMtMy4wLnNvLjAgd3hXaWRnZXRzLWd0azMt My4wLjRfMQotbGlid3hfZ3RrM3Vfd2Vidmlldy0zLjAuc28uMCB3eFdpZGdldHMtZ3RrMy0zLjAu NF8xCi1saWJ3eF9ndGszdV9hdWktMy4wLnNvLjAgd3hXaWRnZXRzLWd0azMtMy4wLjRfMQotbGli d3hfZ3RrM3VfbWVkaWEtMy4wLnNvLjAgd3hXaWRnZXRzLWd0azMtMy4wLjRfMQotbGlid3hfZ3Rr M3VfcmliYm9uLTMuMC5zby4wIHd4V2lkZ2V0cy1ndGszLTMuMC40XzEKLWxpYnd4X2d0azN1X2ds LTMuMC5zby4wIHd4V2lkZ2V0cy1ndGszLTMuMC40XzEKLWxpYnd4X2d0azN1X3N0Yy0zLjAuc28u MCB3eFdpZGdldHMtZ3RrMy0zLjAuNF8xCitsaWJ3eF9iYXNldV94bWwtMy4yLnNvLjAgd3hXaWRn ZXRzLWNvbW1vbi0zLjIuMi4xXzEKK2xpYnd4X2Jhc2V1LTMuMi5zby4wIHd4V2lkZ2V0cy1jb21t b24tMy4yLjIuMV8xCitsaWJ3eF9iYXNldV9uZXQtMy4yLnNvLjAgd3hXaWRnZXRzLWNvbW1vbi0z LjIuMi4xXzEKK2xpYnd4X2d0azN1X2Fkdi0zLjIuc28uMCB3eFdpZGdldHMtZ3RrMy0zLjIuMi4x XzEKK2xpYnd4X2d0azN1X2F1aS0zLjIuc28uMCB3eFdpZGdldHMtZ3RrMy0zLjIuMi4xXzEKK2xp Ynd4X2d0azN1X2NvcmUtMy4yLnNvLjAgd3hXaWRnZXRzLWd0azMtMy4yLjIuMV8xCitsaWJ3eF9n dGszdV9nbC0zLjIuc28uMCB3eFdpZGdldHMtZ3RrMy0zLjIuMi4xXzEKK2xpYnd4X2d0azN1X2h0 bWwtMy4yLnNvLjAgd3hXaWRnZXRzLWd0azMtMy4yLjIuMV8xCitsaWJ3eF9ndGszdV9tZWRpYS0z LjIuc28uMCB3eFdpZGdldHMtZ3RrMy0zLjIuMi4xXzEKK2xpYnd4X2d0azN1X3Byb3BncmlkLTMu Mi5zby4wIHd4V2lkZ2V0cy1ndGszLTMuMi4yLjFfMQorbGlid3hfZ3RrM3VfcWEtMy4yLnNvLjAg d3hXaWRnZXRzLWd0azMtMy4yLjIuMV8xCitsaWJ3eF9ndGszdV9yaWJib24tMy4yLnNvLjAgd3hX aWRnZXRzLWd0azMtMy4yLjIuMV8xCitsaWJ3eF9ndGszdV9yaWNodGV4dC0zLjIuc28uMCB3eFdp ZGdldHMtZ3RrMy0zLjIuMi4xXzEKK2xpYnd4X2d0azN1X3N0Yy0zLjIuc28uMCB3eFdpZGdldHMt Z3RrMy0zLjIuMi4xXzEKK2xpYnd4X2d0azN1X3dlYnZpZXctMy4yLnNvLjAgd3hXaWRnZXRzLWd0 azMtMy4yLjIuMV8xCitsaWJ3eF9ndGszdV94cmMtMy4yLnNvLjAgd3hXaWRnZXRzLWd0azMtMy4y LjIuMV8xCiBsaWJ0ZXBsLTYuc28uMiB0ZXBsLTYuNC4wXzEKIGxpYm5vbWFjc0NvcmUuc28uMyBu b21hY3MtMy4xMC4yXzQKIGxpYmF1ZGl0LnNvLjEgbGliYXVkaXQtMi44LjRfMQpkaWZmIC0tZ2l0 IGEvc3JjcGtncy93eFdpZGdldHMtZ3RrMy9wYXRjaGVzL25vbmZhdGFsLWFiaS1jaGVjay5wYXRj aCBiL3NyY3BrZ3Mvd3hXaWRnZXRzLWd0azMvcGF0Y2hlcy9ub25mYXRhbC1hYmktY2hlY2sucGF0 Y2gKaW5kZXggYmI5M2YwYTI2MTU2Yy4uOWNhMjQxYmE4YjFmZiAxMDA2NDQKLS0tIGEvc3JjcGtn cy93eFdpZGdldHMtZ3RrMy9wYXRjaGVzL25vbmZhdGFsLWFiaS1jaGVjay5wYXRjaAorKysgYi9z cmNwa2dzL3d4V2lkZ2V0cy1ndGszL3BhdGNoZXMvbm9uZmF0YWwtYWJpLWNoZWNrLnBhdGNoCkBA IC0xLDE4ICsxLDE5IEBACi1UYWtlbiBmcm9tCitBZGFwdGVkIGZyb20gYSBwcmlvciBwYXRjaCB3 aGljaCB3YXMgdGFrZW4gZnJvbQogaHR0cHM6Ly9naXRodWIuY29tL2FyY2hsaW51eC9zdm50b2dp dC1wYWNrYWdlcy9ibG9iLzcxZWUxN2Q1MjlmOGUwZGM1YzQ0ZDJmZmZiMGRmYTY5YjcxZGFhMGIv cmVwb3MvZXh0cmEteDg2XzY0L21ha2UtYWJpY2hlY2stbm9uLWZhdGFsLnBhdGNoCiAKLWRpZmYg LXVwIHd4R1RLLTIuOC4xMi9zcmMvY29tbW9uL2FwcGJhc2UuY3BwLmFiaWNoZWNrIHd4R1RLLTIu OC4xMi9zcmMvY29tbW9uL2FwcGJhc2UuY3BwCi0tLS0gYS9zcmMvY29tbW9uL2FwcGJhc2UuY3Bw LmFiaWNoZWNrCTIwMTUtMDMtMTIgMTc6MTU6MTguMDAwMDAwMDAwICswMTAwCi0rKysgYi9zcmMv Y29tbW9uL2FwcGJhc2UuY3BwCTIwMTUtMDMtMTIgMTc6MTU6NTcuMDAwMDAwMDAwICswMTAwCi1A QCAtNDI0LDEwICs0MjQsNyBAQCBib29sIHd4QXBwQ29uc29sZTo6Q2hlY2tCdWlsZE9wdGlvbnMo Y29uCi0gICAgICAgICBtc2cuUHJpbnRmKF9UKCJNaXNtYXRjaCBiZXR3ZWVuIHRoZSBwcm9ncmFt IGFuZCBsaWJyYXJ5IGJ1aWxkIHZlcnNpb25zIGRldGVjdGVkLlxuVGhlIGxpYnJhcnkgdXNlZCAl cyxcbmFuZCAlcyB1c2VkICVzLiIpLAotICAgICAgICAgICAgICAgICAgICBsaWIuY19zdHIoKSwg cHJvZ05hbWUuY19zdHIoKSwgcHJvZy5jX3N0cigpKTsKK2RpZmYgLXVwIGEvc3JjL2NvbW1vbi9h cHBiYXNlLmNwcCBiL3NyYy9jb21tb24vYXBwYmFzZS5jcHAKKy0tLSBhL3NyYy9jb21tb24vYXBw YmFzZS5jcHAKKysrKyBiL3NyYy9jb21tb24vYXBwYmFzZS5jcHAKK0BAIC04NTAsMTEgKzg1MCw4 IEBACisgICAgICAgICB3eFN0cmluZyBwcm9nID0gd3hTdHJpbmc6OkZyb21Bc2NpaShvcHRpb25z U2lnbmF0dXJlKTsKKyAgICAgICAgIHd4U3RyaW5nIHByb2dOYW1lID0gd3hTdHJpbmc6OkZyb21B c2NpaShjb21wb25lbnROYW1lKTsKICAKLS0gICAgICAgIHd4TG9nRmF0YWxFcnJvcihtc2cuY19z dHIoKSk7CistICAgICAgICB3eExvZ0ZhdGFsRXJyb3Iod3hUKCJNaXNtYXRjaCBiZXR3ZWVuIHRo ZSBwcm9ncmFtIGFuZCBsaWJyYXJ5IGJ1aWxkIHZlcnNpb25zIGRldGVjdGVkLlxuVGhlIGxpYnJh cnkgdXNlZCAlcyxcbmFuZCAlcyB1c2VkICVzLiIpLAorKyAgICAgICAgd3hMb2dXYXJuaW5nKHd4 VCgiTWlzbWF0Y2ggYmV0d2VlbiB0aGUgcHJvZ3JhbSBhbmQgbGlicmFyeSBidWlsZCB2ZXJzaW9u cyBkZXRlY3RlZC5cblRoZSBsaWJyYXJ5IHVzZWQgJXMsXG5hbmQgJXMgdXNlZCAlcy4iKSwKKyAg ICAgICAgICAgICAgICAgICAgICAgICBsaWIsIHByb2dOYW1lLCBwcm9nKTsKIC0KIC0gICAgICAg IC8vIG5vcm1hbGx5IHd4TG9nRmF0YWxFcnJvciBkb2Vzbid0IHJldHVybgogLSAgICAgICAgcmV0 dXJuIGZhbHNlOwotKyAgICAgICAgd3hMb2dXYXJuaW5nKG1zZy5jX3N0cigpKTsKICAgICAgfQot ICN1bmRlZiB3eENNUAogIAorICAgICByZXR1cm4gdHJ1ZTsKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mv d3hXaWRnZXRzLWd0azMvdGVtcGxhdGUgYi9zcmNwa2dzL3d4V2lkZ2V0cy1ndGszL3RlbXBsYXRl CmluZGV4IGFlNTEwNWE4OWMxNDUuLmNhYzZkZjQ4ZjkzZmUgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3Mv d3hXaWRnZXRzLWd0azMvdGVtcGxhdGUKKysrIGIvc3JjcGtncy93eFdpZGdldHMtZ3RrMy90ZW1w bGF0ZQpAQCAtMSwyMiArMSwyOCBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnd3hXaWRnZXRzLWd0 azMnCiBwa2duYW1lPXd4V2lkZ2V0cy1ndGszCi12ZXJzaW9uPTMuMC41LjEKLXJldmlzaW9uPTYK K3ZlcnNpb249My4yLjIuMQorcmV2aXNpb249MQogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQot Y29uZmlndXJlX2FyZ3M9Ii0td2l0aC1ndGs9MyAtLWVuYWJsZS11bmljb2RlIC0td2l0aC1vcGVu Z2wgLS13aXRoLXNkbAotIC0td2l0aC1saWJtc3BhY2sgLS13aXRoLWxpYm5vdGlmeSAtLWVuYWJs ZS1tZWRpYWN0cmwiCitjb25maWd1cmVfYXJncz0iLS13aXRoLWd0az0zIC0td2l0aC1vcGVuZ2wg LS13aXRoLWxpYm1zcGFjayAtLWVuYWJsZS1tZWRpYWN0cmwKKyAtLWVuYWJsZS11bmljb2RlIC0t d2l0aC1saWJub3RpZnkgLS13aXRoLXJlZ2V4IC0td2l0aC16bGliIC0td2l0aC1leHBhdAorIC0t d2l0aC1saWJqcGVnIC0td2l0aC1saWJwbmcgLS13aXRoLWxpYnRpZmYgLS13aXRoLWxpYmx6bWEi CiBob3N0bWFrZWRlcGVuZHM9InBrZy1jb25maWciCiBtYWtlZGVwZW5kcz0iU0RMMi1kZXZlbCBn c3QtcGx1Z2lucy1iYXNlMS1kZXZlbCBnc3RyZWFtZXIxLWRldmVsIGd0ayszLWRldmVsCi0gbGli bXNwYWNrLWRldmVsIGxpYm5vdGlmeS1kZXZlbCB0aWZmLWRldmVsIHdlYmtpdDJndGstZGV2ZWwg Z2x1LWRldmVsIgotc2hvcnRfZGVzYz0iVGhlIHd4V2lkZ2V0cyBHVUkgdG9vbGtpdCBsaWJyYXJ5 IGNvbXBpbGVkIHdpdGggZ3RrMyBzdXBwb3J0IgorIGxpYm1zcGFjay1kZXZlbCBsaWJub3RpZnkt ZGV2ZWwgdGlmZi1kZXZlbCB3ZWJraXQyZ3RrLWRldmVsIGdsdS1kZXZlbAorIGdzdC1wbHVnaW5z LWJhZDEtZGV2ZWwgbGlic2VjcmV0LWRldmVsIHBjcmUyLWRldmVsIGxpYmx6bWEtZGV2ZWwgZ3Nw ZWxsLWRldmVsCisgbGliY3VybC1kZXZlbCB6bGliLWRldmVsIGV4cGF0LWRldmVsIGxpYnBuZy1k ZXZlbCIKK3Nob3J0X2Rlc2M9IkNyb3NzLXBsYXRmb3JtIEdVSSBsaWJyYXJ5IChidWlsdCB3aXRo IEdUSysgMy4wKSIKIG1haW50YWluZXI9IkhlbG11dCBQb3ppbXNraSA8aGVsbXV0QHBvemltc2tp LmV1PiIKIGxpY2Vuc2U9ImN1c3RvbTp3eFdpbmRvd3MiCiBob21lcGFnZT0iaHR0cHM6Ly93d3cu d3h3aWRnZXRzLm9yZyIKIGRpc3RmaWxlcz0iaHR0cHM6Ly9naXRodWIuY29tL3d4V2lkZ2V0cy93 eFdpZGdldHMvcmVsZWFzZXMvZG93bmxvYWQvdiR7dmVyc2lvbn0vd3hXaWRnZXRzLSR7dmVyc2lv bn0udGFyLmJ6MiIKLWNoZWNrc3VtPTQ0MGY2ZTczY2Y1YWZiMmNiZjlhZjEwY2VjOGRhNmNkZDNk Mzk5OGQ1Mjc1OThhNTNkYjg3MDk5NTI0YWM4MDcKK2NoZWNrc3VtPWRmZmNiNmJlNzEyOTZmZmY0 YjdmODg0MGViMWI1MTAxNzhmNTdhYTJlYjIzNmIyMGRhNDExODIwMDkyNDJjMDIKIAogcG9zdF9p bnN0YWxsKCkgewotCWxvY2FsIF9jb25maWc9Imd0azMtdW5pY29kZS0zLjAiCisJbG9jYWwgX3Bh dGNoPSIke3ZlcnNpb24jKi4qLn0iCisJbG9jYWwgX21ham1pbj0iJHt2ZXJzaW9uJS4iJHtfcGF0 Y2h9In0iCisJbG9jYWwgX2NvbmZpZz0iZ3RrMy11bmljb2RlLSR7X21ham1pbn0iCisKIAkjIHJl bW92ZSBhbGwgb2NjdXJyZW5jZXMgb2YgJFhCUFNfQ1JPU1NfVFJJUExFVCBpbiB3eC1jb25maWc6 CiAJIyAgIC0gbWFyayB0aGlzIGJ1aWxkIGFzIG5hdGl2ZSBidWlsZAogCWlmIFsgIiRDUk9TU19C VUlMRCIgXTsgdGhlbgpkaWZmIC0tZ2l0IGEvc3JjcGtncy93eFdpZGdldHMtZ3RrMy91cGRhdGUg Yi9zcmNwa2dzL3d4V2lkZ2V0cy1ndGszL3VwZGF0ZQppbmRleCBhYzRjNWYwNDBlYzQ0Li4wNTFi Njc2OTc1MmM2IDEwMDY0NAotLS0gYS9zcmNwa2dzL3d4V2lkZ2V0cy1ndGszL3VwZGF0ZQorKysg Yi9zcmNwa2dzL3d4V2lkZ2V0cy1ndGszL3VwZGF0ZQpAQCAtMSwzICsxIEBACi1zaXRlPSJodHRw czovL2dpdGh1Yi5jb20vd3hXaWRnZXRzL3d4V2lkZ2V0cy9yZWxlYXNlcy9sYXRlc3QiCi0jIGRl dmVsb3BtZW50IHZlcnNpb24KLWlnbm9yZT0nMy4xLionCitwa2duYW1lPXd4V2lkZ2V0cwoKRnJv bSA5OWVhYWU4OWQyYmQ5N2UzMjcyZTk4YzhhNGIyODA5NGNkMjc4MzUzIE1vbiBTZXAgMTcgMDA6 MDA6MDAgMjAwMQpGcm9tOiAiQW5kcmV3IEouIEhlc2ZvcmQiIDxhamhAc2lkZWJhbmQub3JnPgpE YXRlOiBNb24sIDI1IFNlcCAyMDIzIDA3OjUzOjE5IC0wNDAwClN1YmplY3Q6IFtQQVRDSCAwNy80 NF0gd3hQeXRob240OiB1cGRhdGUgdG8gNC4yLjEsIHJlbmFtZSB0byB3eFB5dGhvbgoKLS0tCiBz cmNwa2dzL3t3eFB5dGhvbjQgPT4gd3hQeXRob259L3RlbXBsYXRlICAgICAgfCAzMCArKystLS0K IHNyY3BrZ3Mvd3hQeXRob240ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAxICsKIC4u LmZpZy1ndGszLjAtdG8tYXZvaWQtY29uZmxpY3Qtd2l0aC13eC5wYXRjaCB8IDUyIC0tLS0tLS0t LS0tCiBzcmNwa2dzL3d4UHl0aG9uNC9wYXRjaGVzL2Nyb3NzLnBhdGNoICAgICAgICAgfCAxMiAt LS0KIHNyY3BrZ3Mvd3hQeXRob240L3BhdGNoZXMvbnVsbHB0ci1jYXN0LnBhdGNoICB8IDExIC0t LQogc3JjcGtncy93eFB5dGhvbjQvcGF0Y2hlcy9weXRob24tMy4xMS5wYXRjaCAgIHwgOTIgLS0t LS0tLS0tLS0tLS0tLS0tLQogc3JjcGtncy93eFB5dGhvbjQvcGF0Y2hlcy9zeW50YXgucGF0Y2gg ICAgICAgIHwgMzIgLS0tLS0tLQogc3JjcGtncy93eFB5dGhvbjQvdXBkYXRlICAgICAgICAgICAg ICAgICAgICAgIHwgIDEgLQogOCBmaWxlcyBjaGFuZ2VkLCAxNyBpbnNlcnRpb25zKCspLCAyMTQg ZGVsZXRpb25zKC0pCiByZW5hbWUgc3JjcGtncy97d3hQeXRob240ID0+IHd4UHl0aG9ufS90ZW1w bGF0ZSAoNzMlKQogY3JlYXRlIG1vZGUgMTIwMDAwIHNyY3BrZ3Mvd3hQeXRob240CiBkZWxldGUg bW9kZSAxMDA2NDQgc3JjcGtncy93eFB5dGhvbjQvcGF0Y2hlcy8wMDAxLVN3aXRjaC10by13eC1j b25maWctZ3RrMy4wLXRvLWF2b2lkLWNvbmZsaWN0LXdpdGgtd3gucGF0Y2gKIGRlbGV0ZSBtb2Rl IDEwMDY0NCBzcmNwa2dzL3d4UHl0aG9uNC9wYXRjaGVzL2Nyb3NzLnBhdGNoCiBkZWxldGUgbW9k ZSAxMDA2NDQgc3JjcGtncy93eFB5dGhvbjQvcGF0Y2hlcy9udWxscHRyLWNhc3QucGF0Y2gKIGRl bGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3d4UHl0aG9uNC9wYXRjaGVzL3B5dGhvbi0zLjExLnBh dGNoCiBkZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtncy93eFB5dGhvbjQvcGF0Y2hlcy9zeW50YXgu cGF0Y2gKIGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3d4UHl0aG9uNC91cGRhdGUKCmRpZmYg LS1naXQgYS9zcmNwa2dzL3d4UHl0aG9uNC90ZW1wbGF0ZSBiL3NyY3BrZ3Mvd3hQeXRob24vdGVt cGxhdGUKc2ltaWxhcml0eSBpbmRleCA3MyUKcmVuYW1lIGZyb20gc3JjcGtncy93eFB5dGhvbjQv dGVtcGxhdGUKcmVuYW1lIHRvIHNyY3BrZ3Mvd3hQeXRob24vdGVtcGxhdGUKaW5kZXggZTBlZGY2 ZmI5NDUyZi4uYmM0ODczZmI1NDFhYSAxMDA2NDQKLS0tIGEvc3JjcGtncy93eFB5dGhvbjQvdGVt cGxhdGUKKysrIGIvc3JjcGtncy93eFB5dGhvbi90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKLSMg VGVtcGxhdGUgZmlsZSBmb3IgJ3d4UHl0aG9uNCcKLXBrZ25hbWU9d3hQeXRob240Ci12ZXJzaW9u PTQuMC43Ci1yZXZpc2lvbj03CisjIFRlbXBsYXRlIGZpbGUgZm9yICd3eFB5dGhvbicKK3BrZ25h bWU9d3hQeXRob24KK3ZlcnNpb249NC4yLjEKK3JldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPXB5dGhv bjMtbW9kdWxlCiBtYWtlX2J1aWxkX2FyZ3M9Ii0tc2tpcC1idWlsZCIKIG1ha2VfaW5zdGFsbF9h cmdzPSItLXNraXAtYnVpbGQiCkBAIC05LDI1ICs5LDIxIEBAIGhvc3RtYWtlZGVwZW5kcz0icGtn LWNvbmZpZyBweXRob24zLXNldHVwdG9vbHMgcHl0aG9uMy1wYXRobGliMiIKIG1ha2VkZXBlbmRz PSJweXRob24zLWRldmVsIHd4V2lkZ2V0cy1ndGszLWRldmVsIFNETDItZGV2ZWwgd2Via2l0Mmd0 ay1kZXZlbAogIGdzdC1wbHVnaW5zLWJhc2UxLWRldmVsIgogZGVwZW5kcz0icHl0aG9uMyBweXRo b24zLXNpeCBweXRob24zLW51bXB5IHB5dGhvbjMtUGlsbG93Igotc2hvcnRfZGVzYz0iV3hXaWRn ZXRzIEdVSSB0b29sa2l0IGxpYnJhcnkgKFB5dGhvbjMgQmluZGluZ3MpIgorc2hvcnRfZGVzYz0i UHl0aG9uIGJpbmRpbmdzIGZvciB3eFdpZGdldHMiCiBtYWludGFpbmVyPSJPcnBoYW5lZCA8b3Jw aGFuQHZvaWRsaW51eC5vcmc+IgogbGljZW5zZT0iY3VzdG9tOnd4V2luZG93cyIKIGhvbWVwYWdl PSJodHRwOi8vd3d3Lnd4cHl0aG9uLm9yZy8iCiBkaXN0ZmlsZXM9IiR7UFlQSV9TSVRFfS93L3d4 UHl0aG9uL3d4UHl0aG9uLSR7dmVyc2lvbn0udGFyLmd6IgotY2hlY2tzdW09M2JlNjA4YmZkZWRl MzA2MzY3OGNjNzAzNDUzODUwYWIwYTAxOGI4MmJhZmQ1ZWUwNTczMDIyNTBiMThmMDIzMworY2hl Y2tzdW09ZTQ4ZGUyMTFhNjYwNmJmMDcyZWMzZmE3Nzg3NzFkNmI3NDZjMDBiN2Y0Yjk3MGViNTg3 MjhkZGY1NmQxM2Q1YwogCitleHBvcnQgV1hQWVRIT05fUkVMRUFTRT15ZXMKIGlmIFsgIiRDUk9T U19CVUlMRCIgXTsgdGhlbgogCUNGTEFHUz0iLUkke1hCUFNfQ1JPU1NfQkFTRX0vJHtweTNfaW5j fSAtSSR7WEJQU19DUk9TU19CQVNFfS91c3IvaW5jbHVkZSIKKwlleHBvcnQgV1hfQ09ORklHPSIk e1hCUFNfV1JBUFBFUkRJUn0vd3gtY29uZmlnLWd0azMiCitlbHNlCisJZXhwb3J0IFdYX0NPTkZJ Rz13eC1jb25maWctZ3RrMwogZmkKIAotcHJlX3BhdGNoKCkgewotCSMgbmVlZCB0byBwYXRjaCBm b3IgUHl0aG9uIDMuMTEsIGV4dHJhY3QgdGhlbSBub3cuCi0JY2QgYmluCi0Jc2VkICcvX19uYW1l X18uKl9fbWFpbl9fL2kgc3lzLmV4aXQoMCknIHdhZi0qID50bXAtd2FmCi0JcHl0aG9uMyB0bXAt d2FmCi0JbG4gLXMgLndhZjMtKiAud2FmMwotfQotCiBwcmVfYnVpbGQoKSB7CiAJY2htb2QgLVIg Z28rclggJHdya3NyYwogCVBZVEhPTlBBVEg9IiR7UFlUSE9OUEFUSDorJHtQWVRIT05QQVRIfTp9 JHdya3NyYyIKQEAgLTQ4LDMgKzQ0LDkgQEAgcHJlX2J1aWxkKCkgewogcG9zdF9pbnN0YWxsKCkg ewogCXZsaWNlbnNlIExJQ0VOU0UudHh0CiB9CisKK3d4UHl0aG9uNF9wYWNrYWdlKCkgeworCWJ1 aWxkX3N0eWxlPW1ldGEKKwlzaG9ydF9kZXNjKz0iIC0gdHJhbnNpdGlvbmFsIGR1bW15IHBhY2th Z2UiCisJZGVwZW5kcz0iJHtzb3VyY2Vwa2d9Pj0ke3ZlcnNpb259XyR7cmV2aXNpb259IgorfQpk aWZmIC0tZ2l0IGEvc3JjcGtncy93eFB5dGhvbjQgYi9zcmNwa2dzL3d4UHl0aG9uNApuZXcgZmls ZSBtb2RlIDEyMDAwMAppbmRleCAwMDAwMDAwMDAwMDAwLi5lMzk2ZDVhZTM3MGQ2Ci0tLSAvZGV2 L251bGwKKysrIGIvc3JjcGtncy93eFB5dGhvbjQKQEAgLTAsMCArMSBAQAord3hQeXRob24KXCBO byBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9zcmNwa2dzL3d4UHl0aG9uNC9w YXRjaGVzLzAwMDEtU3dpdGNoLXRvLXd4LWNvbmZpZy1ndGszLjAtdG8tYXZvaWQtY29uZmxpY3Qt d2l0aC13eC5wYXRjaCBiL3NyY3BrZ3Mvd3hQeXRob240L3BhdGNoZXMvMDAwMS1Td2l0Y2gtdG8t d3gtY29uZmlnLWd0azMuMC10by1hdm9pZC1jb25mbGljdC13aXRoLXd4LnBhdGNoCmRlbGV0ZWQg ZmlsZSBtb2RlIDEwMDY0NAppbmRleCA3MmE2NzhkYTc4NTg5Li4wMDAwMDAwMDAwMDAwCi0tLSBh L3NyY3BrZ3Mvd3hQeXRob240L3BhdGNoZXMvMDAwMS1Td2l0Y2gtdG8td3gtY29uZmlnLWd0azMu MC10by1hdm9pZC1jb25mbGljdC13aXRoLXd4LnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEsNTIg KzAsMCBAQAotRnJvbSBjZGRiZTNiM2IyMzdiOGU2M2FiZDg5MjFmZGIyMDMxNGMyMGMyYzA4IE1v biBTZXAgMTcgMDA6MDA6MDAgMjAwMQotRnJvbTogSmFzcGVyIENoYW4gPGphc3BlcmNoYW41MTVA Z21haWwuY29tPgotRGF0ZTogU2F0LCAyMiBTZXAgMjAxOCAyMDo1OToyOSAtMDcwMAotU3ViamVj dDogW1BBVENIXSBTd2l0Y2ggdG8gd3gtY29uZmlnLWd0azMgdG8gYXZvaWQgY29uZmxpY3Qgd2l0 aAotIHd4V2lkZ2V0cy1ndGsyCi0KLS0tLQotIGJ1aWxkLnB5IHwgMTAgKysrKystLS0tLQotIDEg ZmlsZSBjaGFuZ2VkLCA1IGluc2VydGlvbnMoKyksIDUgZGVsZXRpb25zKC0pCi0KLWRpZmYgLS1n aXQgYnVpbGQucHkgYnVpbGQucHkKLWluZGV4IDNjZDViODI4Li41N2RiZDM4NCAxMDA3NTUKLS0t LSBhL2J1aWxkLnB5Ci0rKysgYi9idWlsZC5weQotQEAgLTQwMCw3ICs0MDAsNyBAQCBkZWYgbWFr ZU9wdGlvblBhcnNlcigpOgotICAgICAgICAgKCJtYWNfYXJjaCIsICAgICAgICgiIiwgICAgIkNv bW1hIHNlcGFyYXRlZCBsaXN0IG9mIGFyY2hpdGVjdHVyZXMgdG8gYnVpbGQgb24gTWFjIikpLAot IAotICAgICAgICAgKCJ1c2Vfc3lzd3giLCAgICAgIChGYWxzZSwgIlRyeSB0byB1c2UgYW4gaW5z dGFsbGVkIHd4IHJhdGhlciB0aGFuIGJ1aWxkaW5nIHRoZSAiCi0tICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAib25lIGluIHRoaXMgc291cmNlIHRyZWUuICBUaGUgd3gtY29uZmln IGluIHtwcmVmaXh9L2JpbiAiCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAi b25lIGluIHRoaXMgc291cmNlIHRyZWUuICBUaGUgd3gtY29uZmlnLWd0azMgaW4ge3ByZWZpeH0v YmluICIKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJvciB0aGUgZmlyc3Qg Zm91bmQgb24gdGhlIFBBVEggZGV0ZXJtaW5lcyB3aGljaCB3eCBpcyAiCi0gICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAidXNlZC4gIEltcGxpZXMgLS1ub19tYWdpYy4iKSksCi0g ICAgICAgICAoImZvcmNlX2NvbmZpZyIsICAgKEZhbHNlLCAiUnVuIGNvbmZpZ3VyZSB3aGVuIGJ1 aWxkaW5nIGV2ZW4gaWYgdGhlIHNjcmlwdCAiCi1AQCAtMTI3MSw3ICsxMjcxLDcgQEAgZGVmIGNt ZF9idWlsZF93eChvcHRpb25zLCBhcmdzKToKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IG9zLnBhdGguam9pbih3eERpcigpLCAnY29uZmlndXJlJyksCi0gICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBvcy5wYXRoLmpvaW4od3hEaXIoKSwgJ3NldHVwLmguaW4nKSwKLSAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIG9zLnBhdGguam9pbih3eERpcigpLCAndmVyc2lvbi1zY3Jp cHQuaW4nKSwKLS0gICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9zLnBhdGguam9pbih3eERp cigpLCAnd3gtY29uZmlnLmluJyksCi0rICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcy5w YXRoLmpvaW4od3hEaXIoKSwgJ3d4LWNvbmZpZy1ndGszLmluJyksCi0gICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBdCi0gICAgICAgICAgICAgZm9yIGRlcCBpbiBkZXBlbmRlbmNpZXM6Ci0g ICAgICAgICAgICAgICAgIGlmIG5ld2VyKGRlcCwgb3MucGF0aC5qb2luKEJVSUxEX0RJUiwgIk1h a2VmaWxlIikpOgotQEAgLTE0MjQsMTMgKzE0MjQsMTMgQEAgZGVmIGNtZF9idWlsZF9weShvcHRp b25zLCBhcmdzKToKLSAgICAgICAgIG9zLmVudmlyb25bJ1dYUFlUSE9OX1JFTEVBU0UnXSA9ICd5 ZXMnCi0gCi0gICAgIGlmIG5vdCBpc1dpbmRvd3M6Ci0tICAgICAgICBXWF9DT05GSUcgPSBwb3Np eGpvaW4oQlVJTERfRElSLCAnd3gtY29uZmlnJykKLSsgICAgICAgIFdYX0NPTkZJRyA9IHBvc2l4 am9pbihCVUlMRF9ESVIsICd3eC1jb25maWctZ3RrMycpCi0gICAgICAgICBpZiBvcHRpb25zLnVz ZV9zeXN3eDoKLS0gICAgICAgICAgICB3eGNmZyA9IHBvc2l4am9pbihvcHRpb25zLnByZWZpeCwg J2JpbicsICd3eC1jb25maWcnKQotKyAgICAgICAgICAgIHd4Y2ZnID0gcG9zaXhqb2luKG9wdGlv bnMucHJlZml4LCAnYmluJywgJ3d4LWNvbmZpZy1ndGszJykKLSAgICAgICAgICAgICBpZiBvcHRp b25zLnByZWZpeCBhbmQgb3MucGF0aC5leGlzdHMod3hjZmcpOgotICAgICAgICAgICAgICAgICBX WF9DT05GSUcgPSB3eGNmZwotICAgICAgICAgICAgIGVsc2U6Ci0tICAgICAgICAgICAgICAgIFdY X0NPTkZJRyA9ICd3eC1jb25maWcnICMgaG9wZSBpdCBpcyBvbiB0aGUgUEFUSAotKyAgICAgICAg ICAgICAgICBXWF9DT05GSUcgPSAnd3gtY29uZmlnLWd0azMnICMgaG9wZSBpdCBpcyBvbiB0aGUg UEFUSAotIAotIAotICAgICB3YWZCdWlsZEJhc2UgPSB3YWZCdWlsZERpciA9IGdldFdhZkJ1aWxk QmFzZSgpCi0tLSAKLTIuMTkuMAotCmRpZmYgLS1naXQgYS9zcmNwa2dzL3d4UHl0aG9uNC9wYXRj aGVzL2Nyb3NzLnBhdGNoIGIvc3JjcGtncy93eFB5dGhvbjQvcGF0Y2hlcy9jcm9zcy5wYXRjaApk ZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNGYzNDNkZTIwMWNiMC4uMDAwMDAwMDAwMDAw MAotLS0gYS9zcmNwa2dzL3d4UHl0aG9uNC9wYXRjaGVzL2Nyb3NzLnBhdGNoCisrKyAvZGV2L251 bGwKQEAgLTEsMTIgKzAsMCBAQAotSW5kZXg6IHd4UHl0aG9uLTQuMC43L2J1aWxkLnB5Ci09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09Ci0tLS0gd3hQeXRob24tNC4wLjcub3JpZy9idWlsZC5weQotKysrIHd4UHl0aG9uLTQu MC43L2J1aWxkLnB5Ci1AQCAtMTY5LDcgKzE2OSw2IEBAIGRlZiBtYWluKGFyZ3MpOgotICAgICBz ZXRQeXRob25WZXJzaW9uKGFyZ3MpCi0gICAgIHNldERldk1vZGVPcHRpb25zKGFyZ3MpCi0gCi0t ICAgIG9zLmVudmlyb25bJ1BZVEhPTlBBVEgnXSA9IHBob2VuaXhEaXIoKQotICAgICBvcy5lbnZp cm9uWydQWVRIT05VTkJVRkZFUkVEJ10gPSAneWVzJwotICAgICBvcy5lbnZpcm9uWydXWFdJTidd ID0gd3hEaXIoKQotIApkaWZmIC0tZ2l0IGEvc3JjcGtncy93eFB5dGhvbjQvcGF0Y2hlcy9udWxs cHRyLWNhc3QucGF0Y2ggYi9zcmNwa2dzL3d4UHl0aG9uNC9wYXRjaGVzL251bGxwdHItY2FzdC5w YXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZDkzNTFjNzE0YjRmYy4uMDAwMDAw MDAwMDAwMAotLS0gYS9zcmNwa2dzL3d4UHl0aG9uNC9wYXRjaGVzL251bGxwdHItY2FzdC5wYXRj aAorKysgL2Rldi9udWxsCkBAIC0xLDExICswLDAgQEAKLS0tLSBhL3NpcC9jcHAvc2lwX3Byb3Bn cmlkd3hQR1Byb3BBcmdDbHMuY3BwCi0rKysgYi9zaXAvY3BwL3NpcF9wcm9wZ3JpZHd4UEdQcm9w QXJnQ2xzLmNwcAotQEAgLTMxNyw3ICszMTcsNyBAQCBzdGF0aWMgaW50IGNvbnZlcnRUb193eFBH UHJvcEFyZ0NscyhQeU9iCi0gICAgICAgICAgICAgcmV0dXJuIHNpcEdldFN0YXRlKHNpcFRyYW5z ZmVyT2JqKTsKLSAgICAgICAgIH0KLSAgICAgICAgIGVsc2UgaWYgKHNpcFB5ID09IFB5X05vbmUp IHsKLS0gICAgICAgICAgICAqc2lwQ3BwUHRyID0gbmV3IHd4UEdQcm9wQXJnQ2xzKHJlaW50ZXJw cmV0X2Nhc3Q8IHd4UEdQcm9wZXJ0eSAqID4oTlVMTCkpOwotKyAgICAgICAgICAgICpzaXBDcHBQ dHIgPSBuZXcgd3hQR1Byb3BBcmdDbHMoc3RhdGljX2Nhc3Q8IHd4UEdQcm9wZXJ0eSAqID4oTlVM TCkpOwotICAgICAgICAgICAgIHJldHVybiBzaXBHZXRTdGF0ZShzaXBUcmFuc2Zlck9iaik7Ci0g ICAgICAgICB9Ci0gICAgICAgICBlbHNlIHsKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mvd3hQeXRob240 L3BhdGNoZXMvcHl0aG9uLTMuMTEucGF0Y2ggYi9zcmNwa2dzL3d4UHl0aG9uNC9wYXRjaGVzL3B5 dGhvbi0zLjExLnBhdGNoCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAxNTQ5NmJkZWNi Y2EwLi4wMDAwMDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3Mvd3hQeXRob240L3BhdGNoZXMvcHl0aG9u LTMuMTEucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSw5MiArMCwwIEBACi1kaWZmIC11ciB3eFB5 dGhvbi00LjAuNy5vcmlnL2Jpbi8ud2FmMy93YWZsaWIvQ29uZmlnU2V0LnB5IHd4UHl0aG9uLTQu MC43L2Jpbi8ud2FmMy93YWZsaWIvQ29uZmlnU2V0LnB5Ci0tLS0gd3hQeXRob24tNC4wLjcub3Jp Zy9iaW4vLndhZjMvd2FmbGliL0NvbmZpZ1NldC5weQotKysrIHd4UHl0aG9uLTQuMC43L2Jpbi8u d2FmMy93YWZsaWIvQ29uZmlnU2V0LnB5Ci1AQCAtMTQ2LDcgKzE0Niw3IEBACi0gCQlVdGlscy53 cml0ZWYoZmlsZW5hbWUsJycuam9pbihidWYpKQotIAlkZWYgbG9hZChzZWxmLGZpbGVuYW1lKToK LSAJCXRibD1zZWxmLnRhYmxlCi0tCQljb2RlPVV0aWxzLnJlYWRmKGZpbGVuYW1lLG09J3JVJykK LSsJCWNvZGU9VXRpbHMucmVhZGYoZmlsZW5hbWUsbT0ncicpCi0gCQlmb3IgbSBpbiByZV9pbXAu ZmluZGl0ZXIoY29kZSk6Ci0gCQkJZz1tLmdyb3VwCi0gCQkJdGJsW2coMildPWV2YWwoZygzKSkK LWRpZmYgLXVyIHd4UHl0aG9uLTQuMC43Lm9yaWcvYmluLy53YWYzL3dhZmxpYi9Db250ZXh0LnB5 IHd4UHl0aG9uLTQuMC43L2Jpbi8ud2FmMy93YWZsaWIvQ29udGV4dC5weQotLS0tIHd4UHl0aG9u LTQuMC43Lm9yaWcvYmluLy53YWYzL3dhZmxpYi9Db250ZXh0LnB5Ci0rKysgd3hQeXRob24tNC4w LjcvYmluLy53YWYzL3dhZmxpYi9Db250ZXh0LnB5Ci1AQCAtMTA2LDcgKzEwNiw3IEBACi0gCQkJ CWNhY2hlW25vZGVdPVRydWUKLSAJCQkJc2VsZi5wcmVfcmVjdXJzZShub2RlKQotIAkJCQl0cnk6 Ci0tCQkJCQlmdW5jdGlvbl9jb2RlPW5vZGUucmVhZCgnclUnLGVuY29kaW5nKQotKwkJCQkJZnVu Y3Rpb25fY29kZT1ub2RlLnJlYWQoJ3InLGVuY29kaW5nKQotIAkJCQkJZXhlYyhjb21waWxlKGZ1 bmN0aW9uX2NvZGUsbm9kZS5hYnNwYXRoKCksJ2V4ZWMnKSxzZWxmLmV4ZWNfZGljdCkKLSAJCQkJ ZmluYWxseToKLSAJCQkJCXNlbGYucG9zdF9yZWN1cnNlKG5vZGUpCi1AQCAtMzQ2LDcgKzM0Niw3 IEBACi0gCQlwYXNzCi0gCW1vZHVsZT1pbXAubmV3X21vZHVsZShXU0NSSVBUX0ZJTEUpCi0gCXRy eToKLS0JCWNvZGU9VXRpbHMucmVhZGYocGF0aCxtPSdyVScsZW5jb2Rpbmc9ZW5jb2RpbmcpCi0r CQljb2RlPVV0aWxzLnJlYWRmKHBhdGgsbT0ncicsZW5jb2Rpbmc9ZW5jb2RpbmcpCi0gCWV4Y2Vw dCBFbnZpcm9ubWVudEVycm9yOgotIAkJcmFpc2UgRXJyb3JzLldhZkVycm9yKCdDb3VsZCBub3Qg cmVhZCB0aGUgZmlsZSAlciclcGF0aCkKLSAJbW9kdWxlX2Rpcj1vcy5wYXRoLmRpcm5hbWUocGF0 aCkKLWRpZmYgLXVyIHd4UHl0aG9uLTQuMC43Lm9yaWcvYmluLy53YWYzL3dhZmxpYi9Ub29scy9w eXRob24ucHkgd3hQeXRob24tNC4wLjcvYmluLy53YWYzL3dhZmxpYi9Ub29scy9weXRob24ucHkK LS0tLSB3eFB5dGhvbi00LjAuNy5vcmlnL2Jpbi8ud2FmMy93YWZsaWIvVG9vbHMvcHl0aG9uLnB5 Ci0rKysgd3hQeXRob24tNC4wLjcvYmluLy53YWYzL3dhZmxpYi9Ub29scy9weXRob24ucHkKLUBA IC0yMDcsNyArMjA3LDcgQEAKLSAJeD0nTUFDT1NYX0RFUExPWU1FTlRfVEFSR0VUJwotIAlpZiBk Y3RbeF06Ci0gCQllbnZbeF09Y29uZi5lbnZpcm9uW3hdPWRjdFt4XQotLQllbnYucHlleHRfUEFU VEVSTj0nJXMnK2RjdFsnU08nXQotKwllbnYucHlleHRfUEFUVEVSTj0nJXMuc28nCi0gCW51bT0n Licuam9pbihlbnYuUFlUSE9OX1ZFUlNJT04uc3BsaXQoJy4nKVs6Ml0pCi0gCWNvbmYuZmluZF9w cm9ncmFtKFsnJy5qb2luKHB5YmluKSsnLWNvbmZpZycsJ3B5dGhvbiVzLWNvbmZpZyclbnVtLCdw eXRob24tY29uZmlnLSVzJyVudW0sJ3B5dGhvbiVzbS1jb25maWcnJW51bV0sdmFyPSdQWVRIT05f Q09ORklHJyxtc2c9InB5dGhvbi1jb25maWciLG1hbmRhdG9yeT1GYWxzZSkKLSAJaWYgZW52LlBZ VEhPTl9DT05GSUc6Ci1kaWZmIC11ciB3eFB5dGhvbi00LjAuNy5vcmlnL3NpcC9zaXBsaWIvc2lw Lmggd3hQeXRob24tNC4wLjcvc2lwL3NpcGxpYi9zaXAuaAotLS0tIHd4UHl0aG9uLTQuMC43Lm9y aWcvc2lwL3NpcGxpYi9zaXAuaAotKysrIHd4UHl0aG9uLTQuMC43L3NpcC9zaXBsaWIvc2lwLmgK LUBAIC0xNzk0LDcgKzE3OTQsNyBAQAotICAgICBpbnQgKCphcGlfZ2V0X3RpbWUpKFB5T2JqZWN0 ICosIHNpcFRpbWVEZWYgKik7Ci0gICAgIFB5T2JqZWN0ICooKmFwaV9mcm9tX3RpbWUpKGNvbnN0 IHNpcFRpbWVEZWYgKik7Ci0gICAgIGludCAoKmFwaV9pc191c2VyX3R5cGUpKGNvbnN0IHNpcFdy YXBwZXJUeXBlICopOwotLSAgICBzdHJ1Y3QgX2ZyYW1lICooKmFwaV9nZXRfZnJhbWUpKGludCk7 Ci0rICAgIFB5RnJhbWVPYmplY3QgKigqYXBpX2dldF9mcmFtZSkoaW50KTsKLSAgICAgaW50ICgq YXBpX2NoZWNrX3BsdWdpbl9mb3JfdHlwZSkoY29uc3Qgc2lwVHlwZURlZiAqLCBjb25zdCBjaGFy ICopOwotICAgICBQeU9iamVjdCAqKCphcGlfdW5pY29kZV9uZXcpKFNJUF9TU0laRV9ULCB1bnNp Z25lZCwgaW50ICosIHZvaWQgKiopOwotICAgICB2b2lkICgqYXBpX3VuaWNvZGVfd3JpdGUpKGlu dCwgdm9pZCAqLCBpbnQsIHVuc2lnbmVkKTsKLWRpZmYgLXVyIHd4UHl0aG9uLTQuMC43Lm9yaWcv c2lwL3NpcGxpYi9zaXBsaWIuYyB3eFB5dGhvbi00LjAuNy9zaXAvc2lwbGliL3NpcGxpYi5jCi0t LS0gd3hQeXRob24tNC4wLjcub3JpZy9zaXAvc2lwbGliL3NpcGxpYi5jCi0rKysgd3hQeXRob24t NC4wLjcvc2lwL3NpcGxpYi9zaXBsaWIuYwotQEAgLTQzOSw3ICs0MzksNyBAQAotIHN0YXRpYyBp bnQgc2lwX2FwaV9nZXRfdGltZShQeU9iamVjdCAqb2JqLCBzaXBUaW1lRGVmICp0aW1lKTsKLSBz dGF0aWMgUHlPYmplY3QgKnNpcF9hcGlfZnJvbV90aW1lKGNvbnN0IHNpcFRpbWVEZWYgKnRpbWUp OwotIHN0YXRpYyBpbnQgc2lwX2FwaV9pc191c2VyX3R5cGUoY29uc3Qgc2lwV3JhcHBlclR5cGUg Knd0KTsKLS1zdGF0aWMgc3RydWN0IF9mcmFtZSAqc2lwX2FwaV9nZXRfZnJhbWUoaW50KTsKLStz dGF0aWMgUHlGcmFtZU9iamVjdCAqc2lwX2FwaV9nZXRfZnJhbWUoaW50KTsKLSBzdGF0aWMgaW50 IHNpcF9hcGlfY2hlY2tfcGx1Z2luX2Zvcl90eXBlKGNvbnN0IHNpcFR5cGVEZWYgKnRkLAotICAg ICAgICAgY29uc3QgY2hhciAqbmFtZSk7Ci0gc3RhdGljIFB5T2JqZWN0ICpzaXBfYXBpX3VuaWNv ZGVfbmV3KFNJUF9TU0laRV9UIGxlbiwgdW5zaWduZWQgbWF4Y2hhciwKLUBAIC0xMzY4OCwxNSAr MTM2ODgsMTkgQEAKLSAvKgotICAqIFJldHVybiBhIGZyYW1lIGZyb20gdGhlIGV4ZWN1dGlvbiBz dGFjay4KLSAgKi8KLS1zdGF0aWMgc3RydWN0IF9mcmFtZSAqc2lwX2FwaV9nZXRfZnJhbWUoaW50 IGRlcHRoKQotK3N0YXRpYyBQeUZyYW1lT2JqZWN0ICpzaXBfYXBpX2dldF9mcmFtZShpbnQgZGVw dGgpCi0gewotLSAgICBzdHJ1Y3QgX2ZyYW1lICpmcmFtZSA9IFB5RXZhbF9HZXRGcmFtZSgpOwot KyAgICBQeUZyYW1lT2JqZWN0ICpmcmFtZSA9IFB5RXZhbF9HZXRGcmFtZSgpOwotKyAgICBQeV9Y SU5DUkVGKGZyYW1lKTsKLSAKLSAgICAgd2hpbGUgKGZyYW1lICE9IE5VTEwgJiYgZGVwdGggPiAw KQotICAgICB7Ci0tICAgICAgICBmcmFtZSA9IGZyYW1lLT5mX2JhY2s7Ci0rICAgICAgICBQeUZy YW1lT2JqZWN0ICpvZnJhbWUgPSBmcmFtZTsKLSsgICAgICAgIGZyYW1lID0gUHlGcmFtZV9HZXRC YWNrKGZyYW1lKTsKLSsgICAgICAgIFB5X0RFQ1JFRihvZnJhbWUpOwotICAgICAgICAgLS1kZXB0 aDsKLSAgICAgfQotKyAgICBQeV9YREVDUkVGKGZyYW1lKTsKLSAKLSAgICAgcmV0dXJuIGZyYW1l OwotIH0KZGlmZiAtLWdpdCBhL3NyY3BrZ3Mvd3hQeXRob240L3BhdGNoZXMvc3ludGF4LnBhdGNo IGIvc3JjcGtncy93eFB5dGhvbjQvcGF0Y2hlcy9zeW50YXgucGF0Y2gKZGVsZXRlZCBmaWxlIG1v ZGUgMTAwNjQ0CmluZGV4IDg2MjkzNGY5OTYxNTkuLjAwMDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtn cy93eFB5dGhvbjQvcGF0Y2hlcy9zeW50YXgucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSwzMiAr MCwwIEBACi1JbmRleDogd3hQeXRob24tNC4wLjcvd3gvbGliL21hc2tlZC9tYXNrZWRlZGl0LnB5 Ci09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09Ci0tLS0gd3hQeXRob24tNC4wLjcub3JpZy93eC9saWIvbWFza2VkL21hc2tl ZGVkaXQucHkKLSsrKyB3eFB5dGhvbi00LjAuNy93eC9saWIvbWFza2VkL21hc2tlZGVkaXQucHkK LUBAIC0yNjQ1LDcgKzI2NDUsNyBAQCBjbGFzcyBNYXNrZWRFZGl0TWl4aW46Ci0gICAgICAgICAg ICAgICAgICAgICAgICAgcmFpc2UgdmUKLSAgICAgICAgICAgICAgICAgICAgIGVsaWYgcmVwbGFj ZV90byA+IGVuZDoKLSAjIyMjICAgICAgICAgICAgICAgICAgICAgICAgZGJnKGluZGVudD0wKQot LSAgICAgICAgICAgICAgICAgICAgICAgIHZlID0gVmFsdWVFcnJvcignIiVzIiB3aWxsIG5vdCBm aXQgaW50byBmaWVsZCAlZCBvZiBjb250cm9sICIlcyInIChjaG9pY2UsIGluZGV4LCBzZWxmLm5h bWUpKQotKyAgICAgICAgICAgICAgICAgICAgICAgIHZlID0gVmFsdWVFcnJvcignIiVzIiB3aWxs IG5vdCBmaXQgaW50byBmaWVsZCAlZCBvZiBjb250cm9sICIlcyInICUgKGNob2ljZSwgaW5kZXgs IHNlbGYubmFtZSkpCi0gICAgICAgICAgICAgICAgICAgICAgICAgdmUudmFsdWUgPSBjaG9pY2UK LSAgICAgICAgICAgICAgICAgICAgICAgICB2ZS5pbmRleCA9IGluZGV4Ci0gICAgICAgICAgICAg ICAgICAgICAgICAgcmFpc2UgdmUKLUluZGV4OiB3eFB5dGhvbi00LjAuNy93eC9saWIvcGxvdC9w bG90Y2FudmFzLnB5Ci09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLS0gd3hQeXRob24tNC4wLjcub3JpZy93eC9saWIv cGxvdC9wbG90Y2FudmFzLnB5Ci0rKysgd3hQeXRob24tNC4wLjcvd3gvbGliL3Bsb3QvcGxvdGNh bnZhcy5weQotQEAgLTE4NTIsMTIgKzE4NTIsMTIgQEAgY2xhc3MgUGxvdENhbnZhcyh3eC5QYW5l bCk6Ci0gICAgICAgICAjIEdldCB0aWNrcyBhbmQgdGV4dEV4dGVudHMgZm9yIGF4aXMgaWYgcmVx dWlyZWQKLSAgICAgICAgIHh0aWNrcyA9IHl0aWNrcyA9IE5vbmUKLSAgICAgICAgIHhUZXh0RXh0 ZW50ID0geVRleHRFeHRlbnQgPSAoMCwgMCkgICMgTm8gdGV4dCBmb3IgdGlja3MKLS0gICAgICAg IGlmIHNlbGYuX3hTcGVjIGlzIG5vdCAnbm9uZSc6Ci0rICAgICAgICBpZiBzZWxmLl94U3BlYyAh PSAnbm9uZSc6Ci0gICAgICAgICAgICAgeHRpY2tzID0gc2VsZi5feHRpY2tzKHhBeGlzWzBdLCB4 QXhpc1sxXSkKLSAgICAgICAgICAgICAjIHcgaCBvZiB4IGF4aXMgdGV4dCBsYXN0IG51bWJlciBv biBheGlzCi0gICAgICAgICAgICAgeFRleHRFeHRlbnQgPSBkYy5HZXRUZXh0RXh0ZW50KHh0aWNr c1stMV1bMV0pCi0gCi0tICAgICAgICBpZiBzZWxmLl95U3BlYyBpcyBub3QgJ25vbmUnOgotKyAg ICAgICAgaWYgc2VsZi5feVNwZWMgIT0gJ25vbmUnOgotICAgICAgICAgICAgIHl0aWNrcyA9IHNl bGYuX3l0aWNrcyh5QXhpc1swXSwgeUF4aXNbMV0pCi0gICAgICAgICAgICAgaWYgc2VsZi5sb2dT Y2FsZVsxXToKLSAgICAgICAgICAgICAgICAgIyBtYWtlIHN1cmUgd2UgaGF2ZSBlbm91Z2ggcm9v bSB0byBkaXNwbGF5IFNJIG5vdGF0aW9uLgpkaWZmIC0tZ2l0IGEvc3JjcGtncy93eFB5dGhvbjQv dXBkYXRlIGIvc3JjcGtncy93eFB5dGhvbjQvdXBkYXRlCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0 NAppbmRleCAxNTI3MzQyMjUwZjY2Li4wMDAwMDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3Mvd3hQeXRo b240L3VwZGF0ZQorKysgL2Rldi9udWxsCkBAIC0xICswLDAgQEAKLXBrZ25hbWU9d3hQeXRob24K CkZyb20gZGViZDRmZWRiYTUwN2JjNDAwOTFlMDIzZGQyMjJjM2MxOWVmOTMwMiBNb24gU2VwIDE3 IDAwOjAwOjAwIDIwMDEKRnJvbTogIkFuZHJldyBKLiBIZXNmb3JkIiA8YWpoQHNpZGViYW5kLm9y Zz4KRGF0ZTogTW9uLCAyNSBTZXAgMjAyMyAwMDoxODoxOSAtMDQwMApTdWJqZWN0OiBbUEFUQ0gg MDgvNDRdIDBhZDogcmVidWlsZCB3aXRoIHd4V2lkZ2V0cy1ndGszLTMuMi4yLjEKCi0tLQogc3Jj cGtncy8wYWQvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyks IDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzLzBhZC90ZW1wbGF0ZSBiL3NyY3Br Z3MvMGFkL3RlbXBsYXRlCmluZGV4IDhjZjRhNzU3MjE2MTkuLjU5N2E3MDgyYjkzODkgMTAwNjQ0 Ci0tLSBhL3NyY3BrZ3MvMGFkL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvMGFkL3RlbXBsYXRlCkBA IC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnMGFkJwogcGtnbmFtZT0wYWQKIHZl cnNpb249MC4wLjI2Ci1yZXZpc2lvbj03CityZXZpc2lvbj04CiBhcmNocz0ieDg2XzY0KiBpNjg2 KiBhYXJjaDY0KiBhcm12N2wqIHBwYzY0bGUqIgogaG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmln IHBlcmwgY21ha2UgcHl0aG9uMyBydXN0IGNhcmdvIHlhc20gdGFyIGNsYW5nIgogbWFrZWRlcGVu ZHM9IlNETDItZGV2ZWwgYm9vc3QtZGV2ZWwgZ2xvb3gtZGV2ZWwgbGliY3VybC1kZXZlbCBsaWJl bmV0LWRldmVsCgpGcm9tIDIzMjA3YjM4Mzk4YTBiOGRlYzM1NDE5ODI2YmNkZjJlZmE5ZTQxNDcg TW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206ICJBbmRyZXcgSi4gSGVzZm9yZCIgPGFqaEBz aWRlYmFuZC5vcmc+CkRhdGU6IE1vbiwgMjUgU2VwIDIwMjMgMDA6MTg6MTkgLTA0MDAKU3ViamVj dDogW1BBVENIIDA5LzQ0XSBBZWdpc3ViOiByZWJ1aWxkIHdpdGggd3hXaWRnZXRzLWd0azMtMy4y LjIuMQoKLS0tCiBzcmNwa2dzL0FlZ2lzdWIvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdl ZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL0Fl Z2lzdWIvdGVtcGxhdGUgYi9zcmNwa2dzL0FlZ2lzdWIvdGVtcGxhdGUKaW5kZXggZGFmMzU3NDlj ZTdjNi4uZDgwZTYzZjAyN2UzMiAxMDA2NDQKLS0tIGEvc3JjcGtncy9BZWdpc3ViL3RlbXBsYXRl CisrKyBiL3NyY3BrZ3MvQWVnaXN1Yi90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxh dGUgZmlsZSBmb3IgJ0FlZ2lzdWInCiBwa2duYW1lPUFlZ2lzdWIKIHZlcnNpb249My4zLjIKLXJl dmlzaW9uPTEwCityZXZpc2lvbj0xMQogYnVpbGRfc3R5bGU9Y21ha2UKIGJ1aWxkX2hlbHBlcj1j bWFrZS13eFdpZGdldHMtZ3RrMwogY21ha2VfYnVpbGRkaXI9IkJVSUxEIgoKRnJvbSAyZDRlMDA5 YmIzZDM4Y2YxNGY1YWM1ZmZmYTVkZDQ2MjM2Nzk2MDQwIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAw MQpGcm9tOiAiQW5kcmV3IEouIEhlc2ZvcmQiIDxhamhAc2lkZWJhbmQub3JnPgpEYXRlOiBNb24s IDI1IFNlcCAyMDIzIDAwOjE4OjE5IC0wNDAwClN1YmplY3Q6IFtQQVRDSCAxMC80NF0gQ3ViaWNT RFI6IHJlYnVpbGQgd2l0aCB3eFdpZGdldHMtZ3RrMy0zLjIuMi4xCgotLS0KIHNyY3BrZ3MvQ3Vi aWNTRFIvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEg ZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL0N1YmljU0RSL3RlbXBsYXRlIGIvc3Jj cGtncy9DdWJpY1NEUi90ZW1wbGF0ZQppbmRleCBjMjI0ZmMxMzc5YmYxLi45MmQwZDNiOTA5MGZk IDEwMDY0NAotLS0gYS9zcmNwa2dzL0N1YmljU0RSL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvQ3Vi aWNTRFIvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdDdWJp Y1NEUicKIHBrZ25hbWU9Q3ViaWNTRFIKIHZlcnNpb249MC4yLjcKLXJldmlzaW9uPTIKK3Jldmlz aW9uPTMKIGJ1aWxkX3N0eWxlPWNtYWtlCiBidWlsZF9oZWxwZXI9ImNtYWtlLXd4V2lkZ2V0cy1n dGszIgogY29uZmlndXJlX2FyZ3M9Ii1EVVNFX0hBTUxJQj0xICQodm9wdF9ib29sIGFsc2EgVVNF X0FVRElPX0FMU0EpCgpGcm9tIDUyNjk4NzAwZWVmOTFhMWZiZTI3YmJlNzVhZDFjODI3MTYxNTdm NjUgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206ICJBbmRyZXcgSi4gSGVzZm9yZCIgPGFq aEBzaWRlYmFuZC5vcmc+CkRhdGU6IE1vbiwgMjUgU2VwIDIwMjMgMDA6MTg6MTkgLTA0MDAKU3Vi amVjdDogW1BBVENIIDExLzQ0XSBEYXJrUmFkaWFudDogcmVidWlsZCB3aXRoIHd4V2lkZ2V0cy1n dGszLTMuMi4yLjEKCi0tLQogc3JjcGtncy9EYXJrUmFkaWFudC90ZW1wbGF0ZSB8IDIgKy0KIDEg ZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBh L3NyY3BrZ3MvRGFya1JhZGlhbnQvdGVtcGxhdGUgYi9zcmNwa2dzL0RhcmtSYWRpYW50L3RlbXBs YXRlCmluZGV4IDg4MzBiM2E2MWMwNmIuLjIxOWFjM2Q2NmFkZWYgMTAwNjQ0Ci0tLSBhL3NyY3Br Z3MvRGFya1JhZGlhbnQvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9EYXJrUmFkaWFudC90ZW1wbGF0 ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ0RhcmtSYWRpYW50JwogcGtn bmFtZT1EYXJrUmFkaWFudAogdmVyc2lvbj0zLjguMAotcmV2aXNpb249MgorcmV2aXNpb249Mwog YnVpbGRfc3R5bGU9Y21ha2UKIGJ1aWxkX2hlbHBlcj1jbWFrZS13eFdpZGdldHMtZ3RrMwogaG9z dG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIHJ1YnktYXNjaWlkb2N0b3IiCgpGcm9tIGNjMjk3NWVm ZGU5ZjliYmYwNWUxOGRmOTczYmI0YjVjYWNlZDZjNzEgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAx CkZyb206ICJBbmRyZXcgSi4gSGVzZm9yZCIgPGFqaEBzaWRlYmFuZC5vcmc+CkRhdGU6IE1vbiwg MjUgU2VwIDIwMjMgMDA6MTg6MTkgLTA0MDAKU3ViamVjdDogW1BBVENIIDEyLzQ0XSBMaW1lU3Vp dGU6IHJlYnVpbGQgd2l0aCB3eFdpZGdldHMtZ3RrMy0zLjIuMi4xCgotLS0KIHNyY3BrZ3MvTGlt ZVN1aXRlL3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAx IGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9MaW1lU3VpdGUvdGVtcGxhdGUgYi9z cmNwa2dzL0xpbWVTdWl0ZS90ZW1wbGF0ZQppbmRleCBmZTk2M2JlODVmODYwLi5mMTNkNWU0MGEw NGM4IDEwMDY0NAotLS0gYS9zcmNwa2dzL0xpbWVTdWl0ZS90ZW1wbGF0ZQorKysgYi9zcmNwa2dz L0xpbWVTdWl0ZS90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3Ig J0xpbWVTdWl0ZScKIHBrZ25hbWU9TGltZVN1aXRlCiB2ZXJzaW9uPTIyLjA5LjEKLXJldmlzaW9u PTEKK3JldmlzaW9uPTIKIGJ1aWxkX3N0eWxlPWNtYWtlCiBidWlsZF9oZWxwZXI9Y21ha2Utd3hX aWRnZXRzLWd0azMKIGNvbmZpZ3VyZV9hcmdzPSIKCkZyb20gNjQyOGVjYjAyMTJlYWI5MzQwY2Uw ZGI1NDMwMTU5NzlhZTZlYWJlZiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogIkFuZHJl dyBKLiBIZXNmb3JkIiA8YWpoQHNpZGViYW5kLm9yZz4KRGF0ZTogTW9uLCAyNSBTZXAgMjAyMyAw MDoxODoxOSAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggMTMvNDRdIE9wZW5DUE46IHVwZGF0ZSB0byA1 LjguNC4KCi0tLQogLi4uL09wZW5DUE4vcGF0Y2hlcy9hY3R1YWxseS1zZXQtYXJjaC5wYXRjaCAg IHwgMjggLS0tLS0tLS0tLS0tLS0tLS0tCiBzcmNwa2dzL09wZW5DUE4vcGF0Y2hlcy9tdXNsLnBh dGNoICAgICAgICAgICAgfCAyOSArKysrKysrKystLS0tLS0tLS0tCiBzcmNwa2dzL09wZW5DUE4v dGVtcGxhdGUgICAgICAgICAgICAgICAgICAgICAgfCAxMyArKysrKy0tLS0KIDMgZmlsZXMgY2hh bmdlZCwgMjAgaW5zZXJ0aW9ucygrKSwgNTAgZGVsZXRpb25zKC0pCiBkZWxldGUgbW9kZSAxMDA2 NDQgc3JjcGtncy9PcGVuQ1BOL3BhdGNoZXMvYWN0dWFsbHktc2V0LWFyY2gucGF0Y2gKCmRpZmYg LS1naXQgYS9zcmNwa2dzL09wZW5DUE4vcGF0Y2hlcy9hY3R1YWxseS1zZXQtYXJjaC5wYXRjaCBi L3NyY3BrZ3MvT3BlbkNQTi9wYXRjaGVzL2FjdHVhbGx5LXNldC1hcmNoLnBhdGNoCmRlbGV0ZWQg ZmlsZSBtb2RlIDEwMDY0NAppbmRleCBkMTUyYzQwOTI4ODY3Li4wMDAwMDAwMDAwMDAwCi0tLSBh L3NyY3BrZ3MvT3BlbkNQTi9wYXRjaGVzL2FjdHVhbGx5LXNldC1hcmNoLnBhdGNoCisrKyAvZGV2 L251bGwKQEAgLTEsMjggKzAsMCBAQAotLS0tIGEvY21ha2UvR2V0QXJjaC5jbWFrZQkyMDIwLTA3 LTE1IDIwOjAyOjI5LjAwMDAwMDAwMCArMDIwMAotKysrIGIvY21ha2UvR2V0QXJjaC5jbWFrZQky MDIwLTA3LTE1IDIwOjAyOjI5LjAwMDAwMDAwMCArMDIwMAotQEAgLTE0LDYgKzE0LDI1IEBACi0g ICAgICMgZGVmYXVsdAotICAgICBzZXQgKEFSQ0ggImkzODYiKQotICAgICBzZXQgKExJQl9JTlNU QUxMX0RJUiAibGliIikKLSsgICAgSUYgKENNQUtFX1NZU1RFTV9QUk9DRVNTT1IgTUFUQ0hFUyAi YXJtKiIpCi0rICAgICAgSUYgKENNQUtFX1NJWkVPRl9WT0lEX1AgTUFUQ0hFUyAiOCIpCi0rICAg ICAgICBTRVQgKEFSQ0ggImFhcmNoNjQiKQotKyAgICAgIEVMU0UgKENNQUtFX1NJWkVPRl9WT0lE X1AgTUFUQ0hFUyAiOCIpCi0rICAgICAgICBTRVQgKEFSQ0ggImFybWhmIikKLSsgICAgICBFTkRJ RiAoQ01BS0VfU0laRU9GX1ZPSURfUCBNQVRDSEVTICI4IikKLSsgICAgRUxTRUlGIChDTUFLRV9T WVNURU1fUFJPQ0VTU09SIE1BVENIRVMgInBwYyoiIE9SIENNQUtFX1NZU1RFTV9QUk9DRVNTT1Ig TUFUQ0hFUyAicG93ZXJwYyoiKQotKyAgICAgIElGIChDTUFLRV9TSVpFT0ZfVk9JRF9QIE1BVENI RVMgIjgiKQotKyAgICAgICAgU0VUIChBUkNIICJwcGM2NCIpCi0rICAgICAgRUxTRSAoQ01BS0Vf U0laRU9GX1ZPSURfUCBNQVRDSEVTICI4IikKLSsgICAgICAgIFNFVCAoQVJDSCAicG93ZXJwYyIp Ci0rICAgICAgRU5ESUYgKENNQUtFX1NJWkVPRl9WT0lEX1AgTUFUQ0hFUyAiOCIpCi0rICAgIEVM U0UgKENNQUtFX1NZU1RFTV9QUk9DRVNTT1IgTUFUQ0hFUyAiYXJtKiIpCi0rICAgICAgSUYgKENN QUtFX1NJWkVPRl9WT0lEX1AgTUFUQ0hFUyAiOCIpCi0rICAgICAgICBTRVQgKEFSQ0ggIng4Nl82 NCIpCi0rICAgICAgRUxTRSAoQ01BS0VfU0laRU9GX1ZPSURfUCBNQVRDSEVTICI4IikKLSsgICAg ICAgIFNFVCAoQVJDSCAiaTM4NiIpCi0rICAgICAgRU5ESUYgKENNQUtFX1NJWkVPRl9WT0lEX1Ag TUFUQ0hFUyAiOCIpCi0rICAgIEVORElGIChDTUFLRV9TWVNURU1fUFJPQ0VTU09SIE1BVENIRVMg ImFybSoiKQotICAgICBpZiAoRVhJU1RTIC9ldGMvZGViaWFuX3ZlcnNpb24pCi0gICAgICAgc2V0 IChQQUNLQUdFX0ZPUk1BVCAiREVCIikKLSAgICAgICBzZXQgKFBBQ0tBR0VfUkVDUyAieGNhbGli LHhkZy11dGlscyIpCmRpZmYgLS1naXQgYS9zcmNwa2dzL09wZW5DUE4vcGF0Y2hlcy9tdXNsLnBh dGNoIGIvc3JjcGtncy9PcGVuQ1BOL3BhdGNoZXMvbXVzbC5wYXRjaAppbmRleCA3NTkyM2UwMTli MmJjLi5mOTg3N2Y5YTBlNjUxIDEwMDY0NAotLS0gYS9zcmNwa2dzL09wZW5DUE4vcGF0Y2hlcy9t dXNsLnBhdGNoCisrKyBiL3NyY3BrZ3MvT3BlbkNQTi9wYXRjaGVzL211c2wucGF0Y2gKQEAgLTEs MjYgKzEsMTYgQEAKIC0tLSBhL2luY2x1ZGUvemVyb2NvbmYtZGV0YWlsLmhwcAkyMDIwLTA3LTE1 IDIwOjAyOjI5LjAwMDAwMDAwMCArMDIwMAogKysrIGIvaW5jbHVkZS96ZXJvY29uZi1kZXRhaWwu aHBwCTIwMjAtMDctMTUgMjA6MDI6MjkuMDAwMDAwMDAwICswMjAwCi1AQCAtMjAsOSArMjAsNyBA QAorQEAgLTIwLDE1ICsyMCwxNCBAQAogICNkZWZpbmUgV0lOMzJfTEVBTl9BTkRfTUVBTgogICNp bmNsdWRlIDx3aW5zb2NrMi5oPgogICNlbHNlCi0tICAgICNpZm5kZWYgX19XWE9TWF9fCi0tICAg ICAgICAjaW5jbHVkZSA8ZXJyb3IuaD4KLS0gICAgI2Vsc2UgICAgCi0rICAgICNpZmRlZiBfX1dY T1NYX18KLSAgICAgICAgICNpbmNsdWRlIDxtYWNoL2Vycm9yLmg+IAorLSNpZm5kZWYgX19XWE9T WF9fCistI2luY2x1ZGUgPGVycm9yLmg+CistI2Vsc2UKKysjaWZkZWYgX19XWE9TWF9fCisgI2lu Y2x1ZGUgPG1hY2gvZXJyb3IuaD4KICAjZW5kaWYKICAKLUBAIC00MjQsNCArNDIyLDQgQEAKLSAg ICAgfQotIH0KLSAKLS0jZW5kaWYgLy8gWkVST0NPTkZfREVUQUlMX0hQUAotXCBObyBuZXdsaW5l IGF0IGVuZCBvZiBmaWxlCi0rI2VuZGlmIC8vIFpFUk9DT05GX0RFVEFJTF9IUFAKLS0tLSBhL2lu Y2x1ZGUvemVyb2NvbmYtZGV0YWlsLmhwcAkyMDIwLTA3LTI1IDE4OjA1OjA4LjcxNDA5ODk2MiAr MDIwMAotKysrIGIvaW5jbHVkZS96ZXJvY29uZi1kZXRhaWwuaHBwCTIwMjAtMDctMjUgMTg6MDU6 MDguNzE0MDk4OTYyICswMjAwCi1AQCAtMjcsNiArMjcsNyBAQAogICNpbmNsdWRlIDxzdHJpbmcu aD4KICAjaW5jbHVkZSA8dW5pc3RkLmg+CiAgI2luY2x1ZGUgPHN5cy9zb2NrZXQuaD4KQEAgLTI4 LDMgKzE4LDEwIEBACiAgI2luY2x1ZGUgPG5ldGluZXQvaW4uaD4KICAjZW5kaWYKICAKK0BAIC0z ODUsNCArMzg0LDQgQEAKKyB9ICAvLyBuYW1lc3BhY2UgRGV0YWlsCisgfSAgLy8gbmFtZXNwYWNl IFplcm9jb25mCisgCistI2VuZGlmICAvLyBaRVJPQ09ORl9ERVRBSUxfSFBQCitcIE5vIG5ld2xp bmUgYXQgZW5kIG9mIGZpbGUKKysjZW5kaWYgIC8vIFpFUk9DT05GX0RFVEFJTF9IUFAKZGlmZiAt LWdpdCBhL3NyY3BrZ3MvT3BlbkNQTi90ZW1wbGF0ZSBiL3NyY3BrZ3MvT3BlbkNQTi90ZW1wbGF0 ZQppbmRleCBlZTY3ZGJhZmYwMWMyLi5kM2I1NzgwNGZhODgwIDEwMDY0NAotLS0gYS9zcmNwa2dz L09wZW5DUE4vdGVtcGxhdGUKKysrIGIvc3JjcGtncy9PcGVuQ1BOL3RlbXBsYXRlCkBAIC0xLDcg KzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnT3BlbkNQTicKIHBrZ25hbWU9T3BlbkNQTgot dmVyc2lvbj01LjIuMAotcmV2aXNpb249MgordmVyc2lvbj01LjguNAorcmV2aXNpb249MQogYnVp bGRfc3R5bGU9Y21ha2UKIGJ1aWxkX2hlbHBlcj1jbWFrZS13eFdpZGdldHMtZ3RrMwogY29uZmln dXJlX2FyZ3M9Ii1ET0NQTl9CVU5ETEVfR1NISFM9Tk9ORSAtRE9DUE5fQlVORExFX1RDREFUQT1P TgpAQCAtMTAsMTYgKzEwLDE3IEBAIGNvbmZpZ3VyZV9hcmdzPSItRE9DUE5fQlVORExFX0dTSEhT PU5PTkUgLURPQ1BOX0JVTkRMRV9UQ0RBVEE9T04KICAtRE9DUE5fVVNFX0JVTkRMRURfTElCUz1P RkYiCiBob3N0bWFrZWRlcGVuZHM9ImdldHRleHQgcGtnLWNvbmZpZyIKIG1ha2VkZXBlbmRzPSJn dGsrMy1kZXZlbCBsaWJjdXJsLWRldmVsIHBvcnRhdWRpby1kZXZlbCB0aW55eG1sLWRldmVsCi0g d3hXaWRnZXRzLWd0azMtZGV2ZWwgJCh2b3B0X2lmIGV4aWYgJ2xpYmV4aWYtZGV2ZWwnKSBnbHUt ZGV2ZWwKLSAkKHZvcHRfaWYgbGliYXJjaGl2ZSAnbGliYXJjaGl2ZS1kZXZlbCcgJ2xpYnVuYXJy LWRldmVsJykgJCh2b3B0X2lmIGx6bWEgJ2xpYmx6bWEtZGV2ZWwnKSIKKyB3eFdpZGdldHMtZ3Rr My1kZXZlbCBnbHUtZGV2ZWwgZ2xldy1kZXZlbCByYXBpZGpzb24gZ3Rlc3QtZGV2ZWwKKyAkKHZv cHRfaWYgbGliYXJjaGl2ZSAnbGliYXJjaGl2ZS1kZXZlbCcgJ2xpYnVuYXJyLWRldmVsJykKKyAk KHZvcHRfaWYgZXhpZiAnbGliZXhpZi1kZXZlbCcpICQodm9wdF9pZiBsem1hICdsaWJsem1hLWRl dmVsJykiCiBkZXBlbmRzPSJncHNkIGhpY29sb3ItaWNvbi10aGVtZSBPcGVuQ1BOLXRjZGF0YS0k e3ZlcnNpb259XyR7cmV2aXNpb259CiAgT3BlbkNQTi1nc2hocy1jcnVkZSIKIHNob3J0X2Rlc2M9 IkNvbmNpc2UgQ2hhcnRQbG90dGVyL05hdmlnYXRvciIKIG1haW50YWluZXI9IkpvaG4gPG1lQGpv aG5ueW5hdG9yLmRldj4iCiBsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyLCBHUEwtMy4wLW9yLWxh dGVyLCBMR1BMLTIuMC1vci1sYXRlciwgTUlULCBXeFdpbmRvd3MtZXhjZXB0aW9uLTMuMSwgSmFz UGVyLTIuMCwgQlNELTMtQ2xhdXNlLCBTR0ktQi0yLjAiCiBob21lcGFnZT0iaHR0cHM6Ly9vcGVu Y3BuLm9yZy8iCi1kaXN0ZmlsZXM9Imh0dHBzOi8vZ2l0aHViLmNvbS9PcGVuQ1BOL09wZW5DUE4v YXJjaGl2ZS92JHt2ZXJzaW9ufS50YXIuZ3oiCi1jaGVja3N1bT1mNmVjMzg5ODliYzM4ZjVhN2Y2 MzIzNGM1ZTAyMzBhZGViNzNmNTYyNmI0ZTNkM2RmYTY4MGYwYzI0MGJhZGM3CitkaXN0ZmlsZXM9 Imh0dHBzOi8vZ2l0aHViLmNvbS9PcGVuQ1BOL09wZW5DUE4vYXJjaGl2ZS9SZWxlYXNlXyR7dmVy c2lvbn0udGFyLmd6IgorY2hlY2tzdW09NzU1MjcyNmU1YWZjZTVlYjQwMWUzMDdiZWVkZDhmM2Fh MmM2NjcyNTYwMmZjMjdhYjNhZDE4NDVmNDBiODdhMAogCiBidWlsZF9vcHRpb25zPSJsem1hIGxp YmFyY2hpdmUgZXhpZiBjcmFzaHJlcG9ydCIKIGJ1aWxkX29wdGlvbnNfZGVmYXVsdD0ibHptYSBs aWJhcmNoaXZlIGV4aWYiCgpGcm9tIDMwMzdhMTg0NmUzNzljYTIxZDk4Zjk4ZTBlMjFkZWRiZDA0 YmU0OWEgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206ICJBbmRyZXcgSi4gSGVzZm9yZCIg PGFqaEBzaWRlYmFuZC5vcmc+CkRhdGU6IE1vbiwgMjUgU2VwIDIwMjMgMDA6MTg6MTkgLTA0MDAK U3ViamVjdDogW1BBVENIIDE0LzQ0XSBQcnVzYVNsaWNlcjogcmVidWlsZCB3aXRoIHd4V2lkZ2V0 cy1ndGszLTMuMi4yLjEKCi0tLQogc3JjcGtncy9QcnVzYVNsaWNlci90ZW1wbGF0ZSB8IDIgKy0K IDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdp dCBhL3NyY3BrZ3MvUHJ1c2FTbGljZXIvdGVtcGxhdGUgYi9zcmNwa2dzL1BydXNhU2xpY2VyL3Rl bXBsYXRlCmluZGV4IGJhYzVkNmQ1NzQwNTMuLjZhZTFkZjBkODdhMTkgMTAwNjQ0Ci0tLSBhL3Ny Y3BrZ3MvUHJ1c2FTbGljZXIvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9QcnVzYVNsaWNlci90ZW1w bGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ1BydXNhU2xpY2VyJwog cGtnbmFtZT1QcnVzYVNsaWNlcgogdmVyc2lvbj0yLjUuMgotcmV2aXNpb249MgorcmV2aXNpb249 MwogYnVpbGRfc3R5bGU9Y21ha2UKIGJ1aWxkX2hlbHBlcj0icWVtdSBjbWFrZS13eFdpZGdldHMt Z3RrMyIKICMgUHJlLUNvbXBpbGVkIEhlYWRlcnMgc2VlbXMgdG8gYmUgc2xvd2VyCgpGcm9tIDhh Nzc5YzA2ZGUzZTc5ODM3M2EzM2JjMjhkNDE0OWE1MzhhOGEzYWQgTW9uIFNlcCAxNyAwMDowMDow MCAyMDAxCkZyb206ICJBbmRyZXcgSi4gSGVzZm9yZCIgPGFqaEBzaWRlYmFuZC5vcmc+CkRhdGU6 IE1vbiwgMjUgU2VwIDIwMjMgMDA6MTg6MTkgLTA0MDAKU3ViamVjdDogW1BBVENIIDE1LzQ0XSBT TEFERTogcmVidWlsZCB3aXRoIHd4V2lkZ2V0cy1ndGszLTMuMi4yLjEKCi0tLQogc3JjcGtncy9T TEFERS90ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBk ZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvU0xBREUvdGVtcGxhdGUgYi9zcmNwa2dz L1NMQURFL3RlbXBsYXRlCmluZGV4IDhiNjgwNTc0YzNiOWUuLmE4OGMyZTRiYzc4MTQgMTAwNjQ0 Ci0tLSBhL3NyY3BrZ3MvU0xBREUvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9TTEFERS90ZW1wbGF0 ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ1NMQURFJwogcGtnbmFtZT1T TEFERQogdmVyc2lvbj0zLjIuMQotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfc3R5bGU9 Y21ha2UKIGJ1aWxkX2hlbHBlcj1jbWFrZS13eFdpZGdldHMtZ3RrMwogaG9zdG1ha2VkZXBlbmRz PSJwa2ctY29uZmlnIHA3emlwIHdoaWNoIgoKRnJvbSBiYWU2NDI4NGFlNGQ1YWU3MGNhMjY2YzJj Y2QzYjc5OGEyMTkzNDgyIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiAiQW5kcmV3IEou IEhlc2ZvcmQiIDxhamhAc2lkZWJhbmQub3JnPgpEYXRlOiBNb24sIDI1IFNlcCAyMDIzIDAwOjE4 OjIwIC0wNDAwClN1YmplY3Q6IFtQQVRDSCAxNi80NF0gV29lVVNCOiByZWJ1aWxkIHdpdGggd3hX aWRnZXRzLWd0azMtMy4yLjIuMQoKLS0tCiBzcmNwa2dzL1dvZVVTQi90ZW1wbGF0ZSB8IDIgKy0K IDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdp dCBhL3NyY3BrZ3MvV29lVVNCL3RlbXBsYXRlIGIvc3JjcGtncy9Xb2VVU0IvdGVtcGxhdGUKaW5k ZXggYjk0NmI1MmJjYzFiOC4uMmRhOTVkNTcwMmVhNyAxMDA2NDQKLS0tIGEvc3JjcGtncy9Xb2VV U0IvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9Xb2VVU0IvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBA CiAjIFRlbXBsYXRlIGZpbGUgZm9yICdXb2VVU0InCiBwa2duYW1lPVdvZVVTQgogdmVyc2lvbj0z LjMuMQotcmV2aXNpb249MworcmV2aXNpb249NAogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQog Y29uZmlndXJlX2FyZ3M9Ii0td2l0aC13eC1jb25maWc9d3gtY29uZmlnLWd0azMiCiBob3N0bWFr ZWRlcGVuZHM9ImF1dG9tYWtlIGdldHRleHQgbGlidG9vbCIKCkZyb20gNmUwODVkMTVhZTdlM2Yx MjczZDU0ZGU2NmE3ODgwNDUwNDFlZjIwNyBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTog IkFuZHJldyBKLiBIZXNmb3JkIiA8YWpoQHNpZGViYW5kLm9yZz4KRGF0ZTogTW9uLCAyNSBTZXAg MjAyMyAwMDoxODoyMCAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggMTcvNDRdIGF1ZGFjaXR5OiByZWJ1 aWxkIHdpdGggd3hXaWRnZXRzLWd0azMtMy4yLjIuMQoKLS0tCiBzcmNwa2dzL2F1ZGFjaXR5L3Bh dGNoZXMvd3gtMy4yLnBhdGNoICAgICAgICAgfCAyNiArKysrKysrKysrKysrKysrCiAuLi4vcGF0 Y2hlcy93eC13aWRnZXQtaGFzLWJhc3F1ZS5wYXRjaCAgICAgICAgfCAyMiArKysrKysrKysrKysr CiBzcmNwa2dzL2F1ZGFjaXR5L3BhdGNoZXMvd3hiaXRtYXAucGF0Y2ggICAgICAgfCAzMSArKysr KysrKysrKysrKysrKysrCiBzcmNwa2dzL2F1ZGFjaXR5L3RlbXBsYXRlICAgICAgICAgICAgICAg ICAgICAgfCAgNSArLS0KIDQgZmlsZXMgY2hhbmdlZCwgODIgaW5zZXJ0aW9ucygrKSwgMiBkZWxl dGlvbnMoLSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL2F1ZGFjaXR5L3BhdGNoZXMvd3gt My4yLnBhdGNoCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy9hdWRhY2l0eS9wYXRjaGVzL3d4 LXdpZGdldC1oYXMtYmFzcXVlLnBhdGNoCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy9hdWRh Y2l0eS9wYXRjaGVzL3d4Yml0bWFwLnBhdGNoCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9hdWRhY2l0 eS9wYXRjaGVzL3d4LTMuMi5wYXRjaCBiL3NyY3BrZ3MvYXVkYWNpdHkvcGF0Y2hlcy93eC0zLjIu cGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMC4uZDQyYWUwOWYz MGY2ZQotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvYXVkYWNpdHkvcGF0Y2hlcy93eC0zLjIu cGF0Y2gKQEAgLTAsMCArMSwyNiBAQAorSW5kZXg6IGF1ZGFjaXR5LUF1ZGFjaXR5LTIuNC4xL2Nv bmZpZ3VyZQorPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PQorLS0tIGF1ZGFjaXR5LUF1ZGFjaXR5LTIuNC4xLm9yaWcvY29u ZmlndXJlCisrKysgYXVkYWNpdHktQXVkYWNpdHktMi40LjEvY29uZmlndXJlCitAQCAtMTk5MTgs NyArMTk5MTgsNyBAQCB3eF92ZXJzaW9uPWAke1dYX0NPTkZJR30gJHd4Y29uZmlnYXJncyAtCisg JGFzX2VjaG8gIiRhc19tZTogQ2hlY2tpbmcgdGhhdCB0aGUgY2hvc2VuIHZlcnNpb24gb2Ygd3hX aWRnZXRzIGlzIDMuMS54IChvciAzLjAueCkiID4mNjt9CisgCisgY2FzZSAiJHt3eF92ZXJzaW9u fSIgaW4KKy0gIDMuMS4qIHwgMy4wLiopCisrICAzLjIuKiB8IDMuMS4qIHwgMy4wLiopCisgICAg IGVjaG8gIkdyZWF0LCB5b3UncmUgdXNpbmcgd3hXaWRnZXRzICR7d3hfdmVyc2lvbn0hIgorICAg ICA7OworICAgKikKK0luZGV4OiBhdWRhY2l0eS1BdWRhY2l0eS0yLjQuMS9saWItc3JjL2xpYi13 aWRnZXQtZXh0cmEvY29uZmlndXJlCis9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CistLS0gYXVkYWNpdHktQXVkYWNpdHkt Mi40LjEub3JpZy9saWItc3JjL2xpYi13aWRnZXQtZXh0cmEvY29uZmlndXJlCisrKysgYXVkYWNp dHktQXVkYWNpdHktMi40LjEvbGliLXNyYy9saWItd2lkZ2V0LWV4dHJhL2NvbmZpZ3VyZQorQEAg LTE2NjMzLDcgKzE2NjMzLDcgQEAgd3hfdmVyc2lvbj1gJHtXWF9DT05GSUd9ICR3eGNvbmZpZ2Fy Z3MgLQorICRhc19lY2hvICIkYXNfbWU6IENoZWNraW5nIHRoYXQgdGhlIGNob3NlbiB2ZXJzaW9u IG9mIHd4V2lkZ2V0cyBpcyAzLjEueCAob3IgMy4wLngpIiA+JjY7fQorIAorIGNhc2UgIiR7d3hf dmVyc2lvbn0iIGluCistICAzLjEuKiB8IDMuMC4qKQorKyAgMy4yLiogfCAzLjEuKiB8IDMuMC4q KQorICAgICBlY2hvICJHcmVhdCwgeW91J3JlIHVzaW5nIHd4V2lkZ2V0cyAke3d4X3ZlcnNpb259 ISIKKyAgICAgOzsKKyAgICopCmRpZmYgLS1naXQgYS9zcmNwa2dzL2F1ZGFjaXR5L3BhdGNoZXMv d3gtd2lkZ2V0LWhhcy1iYXNxdWUucGF0Y2ggYi9zcmNwa2dzL2F1ZGFjaXR5L3BhdGNoZXMvd3gt d2lkZ2V0LWhhcy1iYXNxdWUucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw MDAwMDAwMC4uNGRkMjRlNzllYzhlMgotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvYXVkYWNp dHkvcGF0Y2hlcy93eC13aWRnZXQtaGFzLWJhc3F1ZS5wYXRjaApAQCAtMCwwICsxLDIyIEBACitJ bmRleDogYXVkYWNpdHktQXVkYWNpdHktMi40LjEvc3JjL0F1ZGFjaXR5QXBwLmNwcAorPT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PQorLS0tIGF1ZGFjaXR5LUF1ZGFjaXR5LTIuNC4xLm9yaWcvc3JjL0F1ZGFjaXR5QXBwLmNw cAorKysrIGF1ZGFjaXR5LUF1ZGFjaXR5LTIuNC4xL3NyYy9BdWRhY2l0eUFwcC5jcHAKK0BAIC0x MTAyLDcgKzExMDIsNyBAQCBsb2NhdGlvbnMgb2YgdGhlIG1pc3NpbmcgZmlsZXMuIikuRm9ybWF0 CisgI2RlZmluZSBXTChsYW5nLHN1YmxhbmcpCisgI2VuZGlmCisgCistI2lmIHd4Q0hFQ0tfVkVS U0lPTigzLCAwLCAxKQorKyNpZiAwCisgd3hMYW5ndWFnZUluZm8gdXNlckxhbmdzW10gPQorIHsK KyAgICAvLyBCb3NuaWFuIGlzIGRlZmluZWQgaW4gd3hXaWRnZXRzIGFscmVhZHkKK0BAIC0xMzY2 LDcgKzEzNjYsNyBAQCBib29sIEF1ZGFjaXR5QXBwOjpPbkluaXQoKQorICAgIC8vCisgICAgLy8g VE9ETzogIFRoZSB3aG9sZSBMYW5ndWFnZSBpbml0aWFsaXphdGlvbiByZWFsbHkgbmVlZCB0byBi ZSByZXdvcmtlZC4KKyAgICAvLyAgICAgICAgSXQncyBhbGwgb3ZlciB0aGUgcGxhY2UuCistI2lm IHd4Q0hFQ0tfVkVSU0lPTigzLCAwLCAxKQorKyNpZiAwCisgICAgZm9yIChzaXplX3QgaSA9IDAs IGNudCA9IFdYU0laRU9GKHVzZXJMYW5ncyk7IGkgPCBjbnQ7IGkrKykKKyAgICB7CisgICAgICAg d3hMb2NhbGU6OkFkZExhbmd1YWdlKHVzZXJMYW5nc1tpXSk7CmRpZmYgLS1naXQgYS9zcmNwa2dz L2F1ZGFjaXR5L3BhdGNoZXMvd3hiaXRtYXAucGF0Y2ggYi9zcmNwa2dzL2F1ZGFjaXR5L3BhdGNo ZXMvd3hiaXRtYXAucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw MC4uYWYxOGJkMWNiNjUyNAotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvYXVkYWNpdHkvcGF0 Y2hlcy93eGJpdG1hcC5wYXRjaApAQCAtMCwwICsxLDMxIEBACitGcm9tIDU1MzgzZmNjZDBjMjgx YjRmMTg5ZDliMDc2OTliMjFiYjgwMmM3MzYgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCitGcm9t OiBJYW4gTWNJbmVybmV5IDxpYW4ucy5tY2luZXJuZXlAaWVlZS5vcmc+CitEYXRlOiBGcmksIDgg QXByIDIwMjIgMDE6Mjc6NTIgKzAxMDAKK1N1YmplY3Q6IFtQQVRDSF0gQ2FsbCB0aGUgcHJvcGVy IHd4Qml0bWFwIGNvbnN0cnVjdG9yIGZvciBYUE0gZGF0YQorCit3eEJpdG1hcCBiYWNrIHRvIGF0 IGxlYXN0IDMuMC4wIGRpZCBub3QgaGF2ZSBhIGNvbnN0cnVjdG9yIGZvciBhbiBYUE0KK2ltYWdl IHRoYXQgdG9vayBhIHNpemUgcGFyYW1ldGVyLCBpdCB3b3VsZCBvbmx5IHRha2UgdGhlIFhQTSBk YXRhCitpdHNlbGYuCisKK0kgZG9uJ3Qga25vdyBob3cgdGhpcyBjb21waWxlZCB1bnRpbCBub3cs IGJ1dCBpdCBkb2Vzbid0IGFueW1vcmUgd2hlbgordGhlIHNpemUgaXMgaW5jbHVkZWQgYW5kIGJ1 aWx0IGFnYWluc3Qgd3ggMy4xLjYgaW4gRmVkb3JhLgorLS0tCisgc3JjL01peGVyQm9hcmQuY3Bw IHwgMiArLQorIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQor IAorIFRlY2huaWNhbGx5IHRoaXMgcGF0Y2ggaXMgdW5kZXIgR1BMdjMrIGJlY2F1c2UgaXQgd2Fz IGNvbnRyaWJ1dGVkIGFmdGVyCisgcmUgbGljZW5zaW5nCisKK2RpZmYgLS1naXQgYS9zcmMvTWl4 ZXJCb2FyZC5jcHAgYi9zcmMvTWl4ZXJCb2FyZC5jcHAKK2luZGV4IDU0YjVmMTQ2Y2M3Li43ZmU4 MTYxNTQ3NCAxMDA2NDQKKy0tLSBhL3NyYy9NaXhlckJvYXJkLmNwcAorKysrIGIvc3JjL01peGVy Qm9hcmQuY3BwCitAQCAtMTMwNyw3ICsxMzA3LDcgQEAgdm9pZCBNaXhlckJvYXJkOjpMb2FkTXVz aWNhbEluc3RydW1lbnRzKCkKKyAgICB3eE1lbW9yeURDIGRjOworIAorICAgIGZvciAoY29uc3Qg YXV0byAmZGF0YSA6IHRhYmxlKSB7CistICAgICAgYXV0byBibXAgPSBzdGQ6Om1ha2VfdW5pcXVl PHd4Qml0bWFwPihkYXRhLmJpdG1hcCwyNCk7CisrICAgICAgYXV0byBibXAgPSBzdGQ6Om1ha2Vf dW5pcXVlPHd4Qml0bWFwPihkYXRhLmJpdG1hcCk7CisgICAgICAgZGMuU2VsZWN0T2JqZWN0KCpi bXApOworICAgICAgIEFDb2xvcjo6QmV2ZWwoZGMsIGZhbHNlLCBiZXYpOworICAgICAgIG1NdXNp Y2FsSW5zdHJ1bWVudHMucHVzaF9iYWNrKHN0ZDo6bWFrZV91bmlxdWU8TXVzaWNhbEluc3RydW1l bnQ+KApkaWZmIC0tZ2l0IGEvc3JjcGtncy9hdWRhY2l0eS90ZW1wbGF0ZSBiL3NyY3BrZ3MvYXVk YWNpdHkvdGVtcGxhdGUKaW5kZXggMjhlOWM0YTM1MjhmMS4uNjk5MmZmYTc3MWI5YSAxMDA2NDQK LS0tIGEvc3JjcGtncy9hdWRhY2l0eS90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2F1ZGFjaXR5L3Rl bXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnYXVkYWNpdHknCiBw a2duYW1lPWF1ZGFjaXR5CiB2ZXJzaW9uPTIuNC4xCi1yZXZpc2lvbj0yCityZXZpc2lvbj0zCiBi dWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCiBjb25maWd1cmVfYXJncz0iLS13aXRoLWZmbXBlZz1z eXN0ZW0gLS13aXRoLWxpYnNuZGZpbGU9c3lzdGVtIC0td2l0aC1leHBhdD1zeXN0ZW0KICAtLXdp dGgtbGlic294cj1zeXN0ZW0gLS13aXRoLWxhbWU9c3lzdGVtIC0td2l0aC1sdjI9c3lzdGVtIGFj X2N2X3BhdGhfV1hfQ09ORklHPXd4LWNvbmZpZy1ndGszIgpAQCAtMTMsNyArMTMsOCBAQCBtYWtl ZGVwZW5kcz0iamFjay1kZXZlbCB3eFdpZGdldHMtZ3RrMy1kZXZlbCBndGsrMy1kZXZlbAogZGVw ZW5kcz0iZGVza3RvcC1maWxlLXV0aWxzIGhpY29sb3ItaWNvbi10aGVtZSIKIHNob3J0X2Rlc2M9 IkdyYXBoaWNhbCBjcm9zcy1wbGF0Zm9ybSBhdWRpbyBlZGl0b3IiCiBtYWludGFpbmVyPSJPcnBo YW5lZCA8b3JwaGFuQHZvaWRsaW51eC5vcmc+IgotbGljZW5zZT0iR1BMLTIuMC1vci1sYXRlciIK KyMgUGF0Y2hlcyBhcmUgR1BMMyssIHNvIGJ1bXAgdGhlIGxpY2Vuc2UgZm9yIHRoZSB3aG9sZSBw YWNrYWdlCitsaWNlbnNlPSJHUEwtMy4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vd3d3 LmF1ZGFjaXR5dGVhbS5vcmciCiBkaXN0ZmlsZXM9Imh0dHBzOi8vZ2l0aHViLmNvbS9hdWRhY2l0 eS9hdWRhY2l0eS9hcmNoaXZlL0F1ZGFjaXR5LSR7dmVyc2lvbn0udGFyLmd6IgogY2hlY2tzdW09 NTAyNDBmMDc0NzEzNzNhN2U1YzJkZjY1Y2MyNmVlZWFhY2VkOWEwODUwYWQxZjk1Y2I3OTVmMTcx ZWEzMDA5ZgoKRnJvbSAzMjBhMzg5NGEyOTI2NTE1MzM2NTlmMzZjMzk4MjExNmE4M2FjOWE1IE1v biBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiAiQW5kcmV3IEouIEhlc2ZvcmQiIDxhamhAc2lk ZWJhbmQub3JnPgpEYXRlOiBNb24sIDI1IFNlcCAyMDIzIDAwOjE4OjIwIC0wNDAwClN1YmplY3Q6 IFtQQVRDSCAxOC80NF0gYm9pbmM6IHJlYnVpbGQgd2l0aCB3eFdpZGdldHMtZ3RrMy0zLjIuMi4x CgotLS0KIHNyY3BrZ3MvYm9pbmMvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBp bnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2JvaW5jL3Rl bXBsYXRlIGIvc3JjcGtncy9ib2luYy90ZW1wbGF0ZQppbmRleCBlY2QyYTExMDBiMDE1Li42NWJi YmU3NTQwZDUwIDEwMDY0NAotLS0gYS9zcmNwa2dzL2JvaW5jL3RlbXBsYXRlCisrKyBiL3NyY3Br Z3MvYm9pbmMvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdi b2luYycKIHBrZ25hbWU9Ym9pbmMKIHZlcnNpb249Ny4yMi4wCi1yZXZpc2lvbj0yCityZXZpc2lv bj0zCiBfbWFqb3J2ZXI9JHt2ZXJzaW9uJS4qfQogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQog aG9zdG1ha2VkZXBlbmRzPSJhdXRvbWFrZSBsaWJ0b29sIHBrZy1jb25maWcgeG9yZ3Byb3RvIHNo YXJlZC1taW1lLWluZm8iCgpGcm9tIDI2YjBlOGU2MDFlN2IwZjJiZTlmYmExYWEyYjZlMWM4YWFm ODA1ZmMgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206ICJBbmRyZXcgSi4gSGVzZm9yZCIg PGFqaEBzaWRlYmFuZC5vcmc+CkRhdGU6IE1vbiwgMjUgU2VwIDIwMjMgMDA6MTg6MjAgLTA0MDAK U3ViamVjdDogW1BBVENIIDE5LzQ0XSBjb2RlYmxvY2tzOiByZWJ1aWxkIHdpdGggd3hXaWRnZXRz LWd0azMtMy4yLjIuMQoKLS0tCiBzcmNwa2dzL2NvZGVibG9ja3MvcGF0Y2hlcy8wMDAucjExOTkx LnBhdGNoICAgfCAgMjcgKwogLi4uMC52MjAuMDMtcjEyMDA4LnBhdGNoID0+IDAwMC5yMTIwMDgu cGF0Y2h9IHwgICAwCiAuLi4xLnYyMC4wMy1yMTIwMTIucGF0Y2ggPT4gMDAwLnIxMjAxMi5wYXRj aH0gfCAgIDAKIHNyY3BrZ3MvY29kZWJsb2Nrcy9wYXRjaGVzLzAwMC5yMTI1MzIucGF0Y2ggICB8 ICAxMyArCiBzcmNwa2dzL2NvZGVibG9ja3MvcGF0Y2hlcy8wMDAucjEyNTgwLnBhdGNoICAgfCA5 NDQgKysrKysrKysrKysrKysrKysrCiBzcmNwa2dzL2NvZGVibG9ja3MvcGF0Y2hlcy8wMDAucjEy NzA3LnBhdGNoICAgfCAxMjAgKysrCiBzcmNwa2dzL2NvZGVibG9ja3MvcGF0Y2hlcy93eC0zLjIu cGF0Y2ggICAgICAgfCAgMjEgKwogc3JjcGtncy9jb2RlYmxvY2tzL3RlbXBsYXRlICAgICAgICAg ICAgICAgICAgIHwgICAyICstCiA4IGZpbGVzIGNoYW5nZWQsIDExMjYgaW5zZXJ0aW9ucygrKSwg MSBkZWxldGlvbigtKQogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvY29kZWJsb2Nrcy9wYXRj aGVzLzAwMC5yMTE5OTEucGF0Y2gKIHJlbmFtZSBzcmNwa2dzL2NvZGVibG9ja3MvcGF0Y2hlcy97 MDAwLnYyMC4wMy1yMTIwMDgucGF0Y2ggPT4gMDAwLnIxMjAwOC5wYXRjaH0gKDEwMCUpCiByZW5h bWUgc3JjcGtncy9jb2RlYmxvY2tzL3BhdGNoZXMvezAwMS52MjAuMDMtcjEyMDEyLnBhdGNoID0+ IDAwMC5yMTIwMTIucGF0Y2h9ICgxMDAlKQogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvY29k ZWJsb2Nrcy9wYXRjaGVzLzAwMC5yMTI1MzIucGF0Y2gKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNw a2dzL2NvZGVibG9ja3MvcGF0Y2hlcy8wMDAucjEyNTgwLnBhdGNoCiBjcmVhdGUgbW9kZSAxMDA2 NDQgc3JjcGtncy9jb2RlYmxvY2tzL3BhdGNoZXMvMDAwLnIxMjcwNy5wYXRjaAogY3JlYXRlIG1v ZGUgMTAwNjQ0IHNyY3BrZ3MvY29kZWJsb2Nrcy9wYXRjaGVzL3d4LTMuMi5wYXRjaAoKZGlmZiAt LWdpdCBhL3NyY3BrZ3MvY29kZWJsb2Nrcy9wYXRjaGVzLzAwMC5yMTE5OTEucGF0Y2ggYi9zcmNw a2dzL2NvZGVibG9ja3MvcGF0Y2hlcy8wMDAucjExOTkxLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAw NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAuLjBjZGI3MjUxZmRjZWQKLS0tIC9kZXYvbnVsbAorKysg Yi9zcmNwa2dzL2NvZGVibG9ja3MvcGF0Y2hlcy8wMDAucjExOTkxLnBhdGNoCkBAIC0wLDAgKzEs MjcgQEAKK0luZGV4OiBzcmMvc3JjL21haW4uY3BwCis9PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CistLS0gYS9zcmMvc3Jj L21haW4uY3BwCShyZXZpc2lvbiAxMTk5MCkKKysrKyBiL3NyYy9zcmMvbWFpbi5jcHAJKHJldmlz aW9uIDExOTkxKQorQEAgLTI2ODAsOCArMjY4MCw2IEBACisgICAgIGVsc2UKKyAgICAgeworICAg ICAgICAgd3hCdXN5Q3Vyc29yIHVzZWxlc3M7CistICAgICAgICB3eFBhaW50RXZlbnQgZTsKKy0g ICAgICAgIFByb2Nlc3NFdmVudChlKTsKKyAgICAgICAgIGZvciAodW5zaWduZWQgaW50IGkgPSAw OyBpIDwgZmlsZXMuR2V0Q291bnQoKTsgKytpKQorICAgICAgICAgICBzdWNjZXNzICY9IE9wZW5H ZW5lcmljKGZpbGVzW2ldKTsKKyAgICAgfQorSW5kZXg6IHNyYy9zcmMvd2F0Y2hlc2RsZy5jcHAK Kz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT0KKy0tLSBhL3NyYy9zcmMvd2F0Y2hlc2RsZy5jcHAJKHJldmlzaW9uIDExOTkw KQorKysrIGIvc3JjL3NyYy93YXRjaGVzZGxnLmNwcAkocmV2aXNpb24gMTE5OTEpCitAQCAtMTAz LDggKzEwMyw3IEBACisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNiX3VudXNl ZCBjb25zdCB3eFBvaW50JiBwb3MsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IGNiX3VudXNlZCBjb25zdCB3eFNpemUmIHN6KSBjb25zdCBvdmVycmlkZQorICAgICB7CistICAg ICAgICB3eFBHV2luZG93TGlzdCBjb25zdCBsaXN0OworLSAgICAgICAgcmV0dXJuIGxpc3Q7Cisr ICAgICAgICByZXR1cm4gd3hQR1dpbmRvd0xpc3QobnVsbHB0ciwgbnVsbHB0cik7CisgICAgIH0K KyAgICAgdm9pZCBVcGRhdGVDb250cm9sKGNiX3VudXNlZCB3eFBHUHJvcGVydHkqIHByb3BlcnR5 LCBjYl91bnVzZWQgd3hXaW5kb3cqIGN0cmwpIGNvbnN0IG92ZXJyaWRlIHt9CisgICAgIGJvb2wg T25FdmVudChjYl91bnVzZWQgd3hQcm9wZXJ0eUdyaWQqIHByb3BncmlkLCBjYl91bnVzZWQgd3hQ R1Byb3BlcnR5KiBwcm9wZXJ0eSwKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvY29kZWJsb2Nrcy9wYXRj aGVzLzAwMC52MjAuMDMtcjEyMDA4LnBhdGNoIGIvc3JjcGtncy9jb2RlYmxvY2tzL3BhdGNoZXMv MDAwLnIxMjAwOC5wYXRjaApzaW1pbGFyaXR5IGluZGV4IDEwMCUKcmVuYW1lIGZyb20gc3JjcGtn cy9jb2RlYmxvY2tzL3BhdGNoZXMvMDAwLnYyMC4wMy1yMTIwMDgucGF0Y2gKcmVuYW1lIHRvIHNy Y3BrZ3MvY29kZWJsb2Nrcy9wYXRjaGVzLzAwMC5yMTIwMDgucGF0Y2gKZGlmZiAtLWdpdCBhL3Ny Y3BrZ3MvY29kZWJsb2Nrcy9wYXRjaGVzLzAwMS52MjAuMDMtcjEyMDEyLnBhdGNoIGIvc3JjcGtn cy9jb2RlYmxvY2tzL3BhdGNoZXMvMDAwLnIxMjAxMi5wYXRjaApzaW1pbGFyaXR5IGluZGV4IDEw MCUKcmVuYW1lIGZyb20gc3JjcGtncy9jb2RlYmxvY2tzL3BhdGNoZXMvMDAxLnYyMC4wMy1yMTIw MTIucGF0Y2gKcmVuYW1lIHRvIHNyY3BrZ3MvY29kZWJsb2Nrcy9wYXRjaGVzLzAwMC5yMTIwMTIu cGF0Y2gKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvY29kZWJsb2Nrcy9wYXRjaGVzLzAwMC5yMTI1MzIu cGF0Y2ggYi9zcmNwa2dzL2NvZGVibG9ja3MvcGF0Y2hlcy8wMDAucjEyNTMyLnBhdGNoCm5ldyBm aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAuLjE1YTJmZmYyOGUyZTcKLS0tIC9k ZXYvbnVsbAorKysgYi9zcmNwa2dzL2NvZGVibG9ja3MvcGF0Y2hlcy8wMDAucjEyNTMyLnBhdGNo CkBAIC0wLDAgKzEsMTMgQEAKK0luZGV4OiBzcmMvaW5jbHVkZS9jY21hbmFnZXIuaAorPT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PQorLS0tIGEvc3JjL2luY2x1ZGUvY2NtYW5hZ2VyLmgJKHJldmlzaW9uIDEyNTMxKQorKysr IGIvc3JjL2luY2x1ZGUvY2NtYW5hZ2VyLmgJKHJldmlzaW9uIDEyNTMyKQorQEAgLTQ0LDcgKzQ0 LDcgQEAKKyAgKiBsaXN0IG9yIHRoZSBkb3h5Z2VuIHBvcHVwLCB0aGUgc2Nyb2xsIGV2ZW50IGlz IGluc3RlYWQgc2VudCB0aGVyZSAoYW5kIHNraXBwZWQgZm9yIHRoZSBlZGl0b3IKKyAgKiB3aW5k b3cpLgorICAqLworLWNsYXNzIERMTElNUE9SVCBDQ01hbmFnZXIgOiBwdWJsaWMgTWdyPENDTWFu YWdlcj4sIHd4RXZ0SGFuZGxlcgorK2NsYXNzIERMTElNUE9SVCBDQ01hbmFnZXIgOiBwdWJsaWMg TWdyPENDTWFuYWdlcj4sIHB1YmxpYyB3eEV2dEhhbmRsZXIKKyB7CisgICAgIHB1YmxpYzoKKyAg ICAgICAgIGZyaWVuZCBjbGFzcyBNZ3I8Q0NNYW5hZ2VyPjsKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mv Y29kZWJsb2Nrcy9wYXRjaGVzLzAwMC5yMTI1ODAucGF0Y2ggYi9zcmNwa2dzL2NvZGVibG9ja3Mv cGF0Y2hlcy8wMDAucjEyNTgwLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw MDAwMDAwMDAuLjc5MzBjNWM1Njc3YjIKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL2NvZGVi bG9ja3MvcGF0Y2hlcy8wMDAucjEyNTgwLnBhdGNoCkBAIC0wLDAgKzEsOTQ0IEBACitJbmRleDog c3JjL3NyYy9ub3RlYm9va3N0eWxlcy5oCis9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CistLS0gYS9zcmMvc3JjL25vdGVi b29rc3R5bGVzLmgJKHJldmlzaW9uIDEyNTc5KQorKysrIGIvc3JjL3NyYy9ub3RlYm9va3N0eWxl cy5oCShyZXZpc2lvbiAxMjU4MCkKK0BAIC04LDE0ICs4LDYgQEAKKyAKKyAjaW5jbHVkZSAiY2Jh dWlib29rLmgiCisgCistI2lmIGRlZmluZWQoX19XWEdUS19fKSAmJiAoVVNFX0dUS19OT1RFQk9P SykgJiYgIXd4Q0hFQ0tfVkVSU0lPTigzLCAwLCAwKQorLSAgICAjZGVmaW5lIEdTb2NrZXQgR0xp YlNvY2tldAorLSAgICAjaW5jbHVkZSA8Z3RrL2d0ay5oPgorLSAgICAjdW5kZWYgR1NvY2tldAor LSAgICAjaW5jbHVkZSA8d3gvYXJ0cHJvdi5oPgorLSNlbmRpZgorLQorLQorIGNsYXNzIHd4REM7 CisgY2xhc3Mgd3hXaW5kb3c7CisgY2xhc3Mgd3hSZWN0OworQEAgLTUzLDM1ICs0NSw0IEBACisg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHd4U2l6ZSYgcmVxdWlyZWRfYm1wX3Np emUpIG92ZXJyaWRlOworIH07CisgCistI2lmIGRlZmluZWQoX19XWEdUS19fKSAmJiAoVVNFX0dU S19OT1RFQk9PSykgJiYgIXd4Q0hFQ0tfVkVSU0lPTigzLCAwLCAwKQorLWNsYXNzIE5iU3R5bGVH VEsgOiBwdWJsaWMgd3hBdWlEZWZhdWx0VGFiQXJ0CisteworLXB1YmxpYzoKKy0gICAgTmJTdHls ZUdUSygpOworLQorLSAgICB2aXJ0dWFsIHd4QXVpVGFiQXJ0KiBDbG9uZSgpOworLSAgICB2aXJ0 dWFsIHZvaWQgRHJhd0JhY2tncm91bmQod3hEQyYgZGMsIHd4V2luZG93KiB3bmQsIGNvbnN0IHd4 UmVjdCYgcmVjdCk7CistICAgIHZpcnR1YWwgdm9pZCBEcmF3VGFiKHd4REMmIGRjLAorLSAgICAg ICAgICAgICAgICAgICAgICAgICB3eFdpbmRvdyogd25kLAorLSAgICAgICAgICAgICAgICAgICAg ICAgICBjb25zdCB3eEF1aU5vdGVib29rUGFnZSYgcGFnZSwKKy0gICAgICAgICAgICAgICAgICAg ICAgICAgY29uc3Qgd3hSZWN0JiBpbl9yZWN0LAorLSAgICAgICAgICAgICAgICAgICAgICAgICBp bnQgY2xvc2VfYnV0dG9uX3N0YXRlLAorLSAgICAgICAgICAgICAgICAgICAgICAgICB3eFJlY3Qq IG91dF90YWJfcmVjdCwKKy0gICAgICAgICAgICAgICAgICAgICAgICAgd3hSZWN0KiBvdXRfYnV0 dG9uX3JlY3QsCistICAgICAgICAgICAgICAgICAgICAgICAgIGludCogeF9leHRlbnQpOworLSAg ICB2b2lkIERyYXdCdXR0b24od3hEQyYgZGMsIHd4V2luZG93KiB3bmQsIGNvbnN0IHd4UmVjdCYg aW5fcmVjdCwgaW50IGJpdG1hcF9pZCwKKy0gICAgICAgICAgICAgICAgICAgIGludCBidXR0b25f c3RhdGUsIGludCBvcmllbnRhdGlvbiwgd3hSZWN0KiBvdXRfcmVjdCk7CistICAgIGludCBHZXRC ZXN0VGFiQ3RybFNpemUod3hXaW5kb3cqIHduZCwgY29uc3Qgd3hBdWlOb3RlYm9va1BhZ2VBcnJh eSYgcGFnZXMsCistICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHd4U2l6ZSYgcmVx dWlyZWRfYm1wX3NpemUpOworLSAgICB2aXJ0dWFsIHd4U2l6ZSBHZXRUYWJTaXplKHd4REMmIGRj LCB3eFdpbmRvdyogd25kLCBjb25zdCB3eFN0cmluZyYgY2FwdGlvbiwgY29uc3Qgd3hCaXRtYXAm IGJpdG1hcCwgYm9vbCBhY3RpdmUsCistICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW50 IGNsb3NlX2J1dHRvbl9zdGF0ZSwgaW50KiB4X2V4dGVudCk7CistcHJpdmF0ZToKKy0gICAgaW50 IG1fWHRoaWNrbmVzczsKKy0gICAgaW50IG1fWXRoaWNrbmVzczsKKy0gICAgaW50IG1fVGFiSEJv cmRlcjsKKy0gICAgaW50IG1fVGFiVkJvcmRlcjsKKy0gICAgd3hCaXRtYXAgbV9BY3RpdmVDbG9z ZUJ1dHRvbjsKKy19OworLSNlbmRpZiAvLyAjaWYgZGVmaW5lZChfX1dYR1RLX18pICYmIChVU0Vf R1RLX05PVEVCT09LKSAmJiAhd3hDSEVDS19WRVJTSU9OKDMsIDAsIDApCistCisgI2VuZGlmIC8v IE5PVEVCT09LU1RZTEVTX0gKK0luZGV4OiBzcmMvcGx1Z2lucy9jb21waWxlcmdjYy9jb21waWxl cm9wdGlvbnNkbGcuY3BwCis9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09CistLS0gYS9zcmMvcGx1Z2lucy9jb21waWxlcmdj Yy9jb21waWxlcm9wdGlvbnNkbGcuY3BwCShyZXZpc2lvbiAxMjU3OSkKKysrKyBiL3NyYy9wbHVn aW5zL2NvbXBpbGVyZ2NjL2NvbXBpbGVyb3B0aW9uc2RsZy5jcHAJKHJldmlzaW9uIDEyNTgwKQor QEAgLTY3NywxMyArNjc3LDkgQEAKKyAgICAgd3hQR1Byb3BlcnR5ICpyb290ID0gbV9GbGFnc1BH LT5HZXRSb290KCk7CisgICAgIGlmIChyb290KQorICAgICB7CistICAgICAgICB1bnNpZ25lZCBj b3VudCA9IHJvb3QtPkdldENoaWxkQ291bnQoKTsKKysgICAgICAgIGNvbnN0IHVuc2lnbmVkIGNv dW50ID0gcm9vdC0+R2V0Q2hpbGRDb3VudCgpOworICAgICAgICAgZm9yICh1bnNpZ25lZCBpaSA9 IDA7IGlpIDwgY291bnQ7ICsraWkpCistI2lmIHd4Q0hFQ0tfVkVSU0lPTigzLCAwLCAwKQorICAg ICAgICAgICAgIG1fRmxhZ3NQRy0+U29ydENoaWxkcmVuKHJvb3QtPkl0ZW0oaWkpLCB3eFBHX1JF Q1VSU0UpOworLSNlbHNlCistICAgICAgICAgICAgbV9GbGFnc1BHLT5Tb3J0KHJvb3QtPkl0ZW0o aWkpKTsKKy0jZW5kaWYKKyAgICAgfQorICAgICBtX0ZsYWdzUEctPlRoYXcoKTsKKyB9IC8vIERv RmlsbE9wdGlvbnMKK0BAIC0yMTE4LDExICsyMTE0LDcgQEAKKyAgICAgQ29tcGlsZXJGYWN0b3J5 OjpTZXREZWZhdWx0Q29tcGlsZXIoaWR4KTsKKyAgICAgd3hTdHJpbmcgbXNnOworICAgICBDb21w aWxlciogY29tcGlsZXIgPSBDb21waWxlckZhY3Rvcnk6OkdldERlZmF1bHRDb21waWxlcigpOwor LSAgICAjaWYgd3hDSEVDS19WRVJTSU9OKDMsIDAsIDApCistICAgIG1zZy5QcmludGYoXygiJXMg aXMgbm93IHNlbGVjdGVkIGFzIHRoZSBkZWZhdWx0IGNvbXBpbGVyIGZvciBuZXcgcHJvamVjdHMi KSwgY29tcGlsZXIgPyBjb21waWxlci0+R2V0TmFtZSgpLnd4X3N0cigpIDogXygiW2ludmFsaWRd Iikud3hfc3RyKCkpOworLSAgICAjZWxzZQorLSAgICBtc2cuUHJpbnRmKF8oIiVzIGlzIG5vdyBz ZWxlY3RlZCBhcyB0aGUgZGVmYXVsdCBjb21waWxlciBmb3IgbmV3IHByb2plY3RzIiksIGNvbXBp bGVyID8gY29tcGlsZXItPkdldE5hbWUoKS5jX3N0cigpIDogXygiW2ludmFsaWRdIikpOworLSAg ICAjZW5kaWYKKysgICAgbXNnLlByaW50ZihfKCIlcyBpcyBub3cgc2VsZWN0ZWQgYXMgdGhlIGRl ZmF1bHQgY29tcGlsZXIgZm9yIG5ldyBwcm9qZWN0cyIpLCBjb21waWxlciA/IGNvbXBpbGVyLT5H ZXROYW1lKCkgOiBfKCJbaW52YWxpZF0iKSk7CisgICAgIGNiTWVzc2FnZUJveChtc2cpOworIH0g Ly8gT25TZXREZWZhdWx0Q29tcGlsZXJDbGljaworIAorSW5kZXg6IHNyYy9zZGsvdGVtcGxhdGVt YW5hZ2VyLmNwcAorPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PQorLS0tIGEvc3JjL3Nkay90ZW1wbGF0ZW1hbmFnZXIuY3Bw CShyZXZpc2lvbiAxMjU3OSkKKysrKyBiL3NyYy9zZGsvdGVtcGxhdGVtYW5hZ2VyLmNwcAkocmV2 aXNpb24gMTI1ODApCitAQCAtMTg2LDExICsxODYsNyBAQAorICAgICAgICAgICAgICsrY291bnQ7 CisgICAgICAgICB9CisgICAgICAgICBlbHNlCistICAgICAgICAgICAgI2lmIHd4Q0hFQ0tfVkVS U0lPTigzLCAwLCAwKQorICAgICAgICAgICAgIE1hbmFnZXI6OkdldCgpLT5HZXRMb2dNYW5hZ2Vy KCktPkRlYnVnTG9nKEYoX1QoIkZhaWxlZCBjb3B5aW5nICVzIHRvICVzIiksIHNyYy53eF9zdHIo KSwgZHN0Lnd4X3N0cigpKSk7CistICAgICAgICAgICAgI2Vsc2UKKy0gICAgICAgICAgICBNYW5h Z2VyOjpHZXQoKS0+R2V0TG9nTWFuYWdlcigpLT5EZWJ1Z0xvZyhGKF9UKCJGYWlsZWQgY29weWlu ZyAlcyB0byAlcyIpLCBzcmMuY19zdHIoKSwgZHN0LmNfc3RyKCkpKTsKKy0gICAgICAgICAgICAj ZW5kaWYKKyAgICAgfQorICAgICBpZiAoY291bnQgIT0gdG90YWxfY291bnQpCisgICAgICAgICBj Yk1lc3NhZ2VCb3goXygiU29tZSBmaWxlcyBjb3VsZCBub3QgYmUgbG9hZGVkIHdpdGggdGhlIHRl bXBsYXRlLi4uIiksIF8oIkVycm9yIiksIHd4SUNPTl9FUlJPUik7CitAQCAtMzAzLDIxICsyOTks MTMgQEAKKyAgICAgeworICAgICAgICAgd3hTdHJpbmcgc3JjID0gKCppdCktPmZpbGUuR2V0RnVs bFBhdGgoKTsKKyAgICAgICAgIHd4U3RyaW5nIGRzdCA9IHRlbXBsICsgKCppdCktPnJlbGF0aXZl VG9Db21tb25Ub3BMZXZlbFBhdGg7CistICAgICAgICAjaWYgd3hDSEVDS19WRVJTSU9OKDMsIDAs IDApCisgICAgICAgICBNYW5hZ2VyOjpHZXQoKS0+R2V0TG9nTWFuYWdlcigpLT5EZWJ1Z0xvZyhG KF9UKCJDb3B5aW5nICVzIHRvICVzIiksIHNyYy53eF9zdHIoKSwgZHN0Lnd4X3N0cigpKSk7Cist ICAgICAgICAjZWxzZQorLSAgICAgICAgTWFuYWdlcjo6R2V0KCktPkdldExvZ01hbmFnZXIoKS0+ RGVidWdMb2coRihfVCgiQ29weWluZyAlcyB0byAlcyIpLCBzcmMuY19zdHIoKSwgZHN0LmNfc3Ry KCkpKTsKKy0gICAgICAgICNlbmRpZgorICAgICAgICAgaWYgKCFDcmVhdGVEaXJSZWN1cnNpdmVs eShkc3QpKQorICAgICAgICAgICAgIE1hbmFnZXI6OkdldCgpLT5HZXRMb2dNYW5hZ2VyKCktPkRl YnVnTG9nKF9UKCJGYWlsZWQgY3JlYXRpbmcgZGlyZWN0b3J5IGZvciAiKSArIGRzdCk7CisgICAg ICAgICBpZiAod3hDb3B5RmlsZShzcmMsIGRzdCwgdHJ1ZSkpCisgICAgICAgICAgICAgKytjb3Vu dDsKKyAgICAgICAgIGVsc2UKKy0gICAgICAgICAgICAjaWYgd3hDSEVDS19WRVJTSU9OKDMsIDAs IDApCisgICAgICAgICAgICAgTWFuYWdlcjo6R2V0KCktPkdldExvZ01hbmFnZXIoKS0+RGVidWdM b2coRihfVCgiRmFpbGVkIGNvcHlpbmcgJXMgdG8gJXMiKSwgc3JjLnd4X3N0cigpLCBkc3Qud3hf c3RyKCkpKTsKKy0gICAgICAgICAgICAjZWxzZQorLSAgICAgICAgICAgIE1hbmFnZXI6OkdldCgp LT5HZXRMb2dNYW5hZ2VyKCktPkRlYnVnTG9nKEYoX1QoIkZhaWxlZCBjb3B5aW5nICVzIHRvICVz IiksIHNyYy5jX3N0cigpLCBkc3QuY19zdHIoKSkpOworLSAgICAgICAgICAgICNlbmRpZgorICAg ICB9CisgCisgICAgIC8vIGNiUHJvamVjdCBkb2Vzbid0IGhhdmUgYSBHZXRSZWxhdGl2ZVRvQ29t bW9uVG9wTGV2ZWxQYXRoKCkgZnVuY3Rpb24sIHNvIHdlIHNpbXVsYXRlIGl0IGhlcmUKK0luZGV4 OiBzcmMvc3JjL2Fzc29jaWF0aW9ucy5jcHAKKz09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKy0tLSBhL3NyYy9zcmMvYXNz b2NpYXRpb25zLmNwcAkocmV2aXNpb24gMTI1NzkpCisrKysgYi9zcmMvc3JjL2Fzc29jaWF0aW9u cy5jcHAJKHJldmlzaW9uIDEyNTgwKQorQEAgLTIwMSwxMSArMjAxLDcgQEAKKyAgICAgaWYgKGtl eS5FeGlzdHMoKSkKKyAgICAgeworICAgICAgICAgd3hTdHJpbmcgczsKKy0gICAgICAgICNpZiB3 eENIRUNLX1ZFUlNJT04oMywgMCwgMCkKKyAgICAgICAgIGlmIChrZXkuUXVlcnlWYWx1ZSh3eEVt cHR5U3RyaW5nLCBzKSAmJiBzLlN0YXJ0c1dpdGgoX1QoIkNvZGVCbG9ja3MiKSkpCistICAgICAg ICAjZWxzZQorLSAgICAgICAgaWYgKGtleS5RdWVyeVZhbHVlKE5VTEwsIHMpICYmIHMuU3RhcnRz V2l0aChfVCgiQ29kZUJsb2NrcyIpKSkKKy0gICAgICAgICNlbmRpZgorICAgICAgICAgICAgIGtl eS5EZWxldGVTZWxmKCk7CisgICAgIH0KKyAKK0luZGV4OiBzcmMvc3JjL2RsZ2Fib3V0LmNwcAor PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PQorLS0tIGEvc3JjL3NyYy9kbGdhYm91dC5jcHAJKHJldmlzaW9uIDEyNTc5KQor KysrIGIvc3JjL3NyYy9kbGdhYm91dC5jcHAJKHJldmlzaW9uIDEyNTgwKQorQEAgLTIwLDkgKzIw LDcgQEAKKyAgICAgI2luY2x1ZGUgPHd4L3N0cmluZy5oPgorICAgICAjaW5jbHVkZSA8d3gvdGV4 dGN0cmwuaD4KKyAgICAgI2luY2x1ZGUgPHd4L3hyYy94bWxyZXMuaD4KKy0gICAgI2lmIHd4Q0hF Q0tfVkVSU0lPTigzLCAwLCAwKQorLSAgICAgICAgI2luY2x1ZGUgPHd4L3ZlcnNpb25pbmZvLmg+ CistICAgICNlbmRpZiAvLyB3eENIRUNLX1ZFUlNJT04KKysgICAgI2luY2x1ZGUgPHd4L3ZlcnNp b25pbmZvLmg+CisgCisgICAgICNpbmNsdWRlICJsaWNlbnNlcy5oIgorICAgICAjaW5jbHVkZSAi Y29uZmlnbWFuYWdlci5oIgorQEAgLTE0NiwxNSArMTQ0LDExIEBACisgICAgIHd4VGV4dEN0cmwg KnR4dExpY2Vuc2UgPSBYUkNDVFJMKCp0aGlzLCAidHh0TGljZW5zZSIsIHd4VGV4dEN0cmwpOwor ICAgICB0eHRMaWNlbnNlLT5TZXRWYWx1ZShMSUNFTlNFX0dQTCk7CisgCistI2lmIHd4Q0hFQ0tf VkVSU0lPTigzLCAwLCAwKQorICAgICBjb25zdCB3eFZlcnNpb25JbmZvIHNjaW50aWxsYVZlcnNp b24gPSB3eFNjaW50aWxsYTo6R2V0TGlicmFyeVZlcnNpb25JbmZvKCk7CisgICAgIGNvbnN0IHd4 U3RyaW5nIHNjaW50aWxsYVN0ciA9IHd4U3RyaW5nOjpGb3JtYXQod3hUKCIlZC4lZC4lZCIpLAor ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNjaW50 aWxsYVZlcnNpb24uR2V0TWFqb3IoKSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBzY2ludGlsbGFWZXJzaW9uLkdldE1pbm9yKCksCisgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2NpbnRpbGxhVmVy c2lvbi5HZXRNaWNybygpKTsKKy0jZWxzZQorLSAgICBjb25zdCB3eFN0cmluZyBzY2ludGlsbGFT dHIgPSB3eFNDSU5USUxMQV9WRVJTSU9OOworLSNlbmRpZiAvLyB3eENIRUNLX1ZFUlNJT04KKyAK KyAgICAgc3RydWN0IEl0ZW0KKyAgICAgeworQEAgLTIxOCw5ICsyMTIsNyBAQAorICAgICAgICAg aW5mb3JtYXRpb24gKz0gd3hUKCI6ICIpICsgaXRlbS52YWx1ZSArIHd4VCgiXG4iKTsKKyAgICAg fQorIAorLSNpZiB3eENIRUNLX1ZFUlNJT04oMywgMCwgMCkKKyAgICAgaW5mb3JtYXRpb24gKz0g d3hUKCJcbiIpICsgd3hHZXRMaWJyYXJ5VmVyc2lvbkluZm8oKS5HZXREZXNjcmlwdGlvbigpOwor LSNlbmRpZiAvLyB3eENIRUNLX1ZFUlNJT04oMywgMCwgMCkKKyAKKyAgICAgd3hUZXh0Q3RybCAq dHh0SW5mb3JtYXRpb24gPSBYUkNDVFJMKCp0aGlzLCAidHh0SW5mb3JtYXRpb24iLCB3eFRleHRD dHJsKTsKKyAgICAgdHh0SW5mb3JtYXRpb24tPlNldFZhbHVlKGluZm9ybWF0aW9uKTsKK0luZGV4 OiBzcmMvc3JjL21haW4uY3BwCis9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CistLS0gYS9zcmMvc3JjL21haW4uY3BwCShy ZXZpc2lvbiAxMjU3OSkKKysrKyBiL3NyYy9zcmMvbWFpbi5jcHAJKHJldmlzaW9uIDEyNTgwKQor QEAgLTIwNzUsMTEgKzIwNzUsNyBAQAorICAgICAgICAgeworICAgICAgICAgICAgIGlmICghaXRl bXNbaV0tPklzQ2hlY2thYmxlKCkpCisgICAgICAgICAgICAgICAgIGNvbnRpbnVlOworLSNpZiB3 eENIRUNLX1ZFUlNJT04oMywgMCwgMCkKKyAgICAgICAgICAgICBpdGVtc1tpXS0+Q2hlY2soaXRl bXNbaV0tPkdldEl0ZW1MYWJlbCgpLklzU2FtZUFzKG5hbWUpKTsKKy0jZWxzZQorLSAgICAgICAg ICAgIGl0ZW1zW2ldLT5DaGVjayhpdGVtc1tpXS0+R2V0VGV4dCgpLklzU2FtZUFzKG5hbWUpKTsK Ky0jZW5kaWYKKyAgICAgICAgIH0KKyAKKyAgICAgICAgIGlmICghbV9MYXN0TGF5b3V0SXNUZW1w KQorQEAgLTI0MDEsMTIgKzIzOTcsNyBAQAorICAgICAgICAgICAgIGJyZWFrOworIAorICAgICAg ICAgZGVmYXVsdDogLy8gZGVmYXVsdCBzdHlsZQorLSAgICAgICAgICAgICNpZiBkZWZpbmVkKF9f V1hHVEtfXykgJiYgKFVTRV9HVEtfTk9URUJPT0spICYmICF3eENIRUNLX1ZFUlNJT04oMywgMCwg MCkKKy0gICAgICAgICAgICB0YXJnZXQtPlNldEFydFByb3ZpZGVyKG5ldyBOYlN0eWxlR1RLKCkp OworLSAgICAgICAgICAgICNlbHNlCisgICAgICAgICAgICAgdGFyZ2V0LT5TZXRBcnRQcm92aWRl cihuZXcgd3hBdWlEZWZhdWx0VGFiQXJ0KCkpOworLSAgICAgICAgICAgICNlbmRpZgorLSAgICAg ICAgICAgIGJyZWFrOworICAgICB9CisgCisgICAgIHRhcmdldC0+U2V0VGFiQ3RybEhlaWdodCgt MSk7CitAQCAtNDgwMSwxMyArNDc5Miw5IEBACisgCisgICAgIGlmIChNYW5hZ2VyOjpHZXQoKS0+ R2V0RWRpdG9yTWFuYWdlcigpICYmIGV2ZW50LkdldEVkaXRvcigpID09IE1hbmFnZXI6OkdldCgp LT5HZXRFZGl0b3JNYW5hZ2VyKCktPkdldEFjdGl2ZUVkaXRvcigpKQorICAgICB7CistI2lmIHd4 Q0hFQ0tfVkVSU0lPTigzLCAwLCAwKQorICAgICAgICAgLy8gRXhlY3V0ZSB0aGUgY29kZSB0byB1 cGRhdGUgdGhlIHN0YXR1cyBiYXIgb3V0c2lkZSBvZiB0aGUgcGFpbnQgZXZlbnQgZm9yIHNjaW50 aWxsYS4KKyAgICAgICAgIC8vIEV4ZWN1dGluZyB0aGlzIGZ1bmN0aW9uIGRpcmVjdGx5IGluIHRo ZSBldmVudCBoYW5kbGVyIGNhdXNlcyByZWRyYXcgcHJvYmxlbXMgb24gV2luZG93cy4KKyAgICAg ICAgIENhbGxBZnRlcigmTWFpbkZyYW1lOjpEb1VwZGF0ZVN0YXR1c0Jhcik7CistI2Vsc2UKKy0g ICAgICAgIERvVXBkYXRlU3RhdHVzQmFyKCk7CistI2VuZGlmIC8vIGRlZmluZWQoX193eE1TV19f KSAmJiB3eENIRUNLX1ZFUlNJT04oMywgMCwgMCkKKyAgICAgfQorIAorICAgICBldmVudC5Ta2lw KCk7CitJbmRleDogc3JjL3NyYy9ub3RlYm9va3N0eWxlcy5jcHAKKz09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKy0tLSBh L3NyYy9zcmMvbm90ZWJvb2tzdHlsZXMuY3BwCShyZXZpc2lvbiAxMjU3OSkKKysrKyBiL3NyYy9z cmMvbm90ZWJvb2tzdHlsZXMuY3BwCShyZXZpc2lvbiAxMjU4MCkKK0BAIC0xMywxNCArMTMsNiBA QAorICNpbmNsdWRlICJwcmVwLmgiCisgI2luY2x1ZGUgIm5vdGVib29rc3R5bGVzLmgiCisgCist I2lmIGRlZmluZWQoX19XWEdUS19fKSAmJiAoVVNFX0dUS19OT1RFQk9PSykgJiYgIXd4Q0hFQ0tf VkVSU0lPTigzLCAwLCAwKQorLSAgICAjZGVmaW5lIEdTb2NrZXQgR0xpYlNvY2tldAorLSAgICAj aW5jbHVkZSA8Z3RrL2d0ay5oPgorLSAgICAjdW5kZWYgR1NvY2tldAorLSAgICAjaW5jbHVkZSA8 d3gvYXJ0cHJvdi5oPgorLSAgICAjaW5jbHVkZSA8d3gvcmVuZGVyZXIuaD4KKy0jZW5kaWYKKy0K KyAjaW5jbHVkZSA8d3gvZGMuaD4KKyAjaW5jbHVkZSA8d3gvZGNjbGllbnQuaD4KKyAKK0BAIC00 MiwxNSArMzQsOSBAQAorIHsKKyAgICAgTmJTdHlsZVZDNzEqIGNsb25lID0gbmV3IE5iU3R5bGVW QzcxKCk7CisgCistI2lmIHd4Q0hFQ0tfVkVSU0lPTigzLCAwLCAwKQorICAgICBjbG9uZS0+U2V0 Tm9ybWFsRm9udChtX25vcm1hbEZvbnQpOworICAgICBjbG9uZS0+U2V0U2VsZWN0ZWRGb250KG1f c2VsZWN0ZWRGb250KTsKKyAgICAgY2xvbmUtPlNldE1lYXN1cmluZ0ZvbnQobV9tZWFzdXJpbmdG b250KTsKKy0jZWxzZQorLSAgICBjbG9uZS0+U2V0Tm9ybWFsRm9udChtX25vcm1hbF9mb250KTsK Ky0gICAgY2xvbmUtPlNldFNlbGVjdGVkRm9udChtX3NlbGVjdGVkX2ZvbnQpOworLSAgICBjbG9u ZS0+U2V0TWVhc3VyaW5nRm9udChtX21lYXN1cmluZ19mb250KTsKKy0jZW5kaWYKKyAKKyAgICAg cmV0dXJuIGNsb25lOworIH0KK0BAIC03NSwxMSArNjEsNyBAQAorICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIGNsb3NlX2J1dHRvbl9zdGF0ZSwKKyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICB4X2V4dGVudCk7CisgCistI2lmIHd4Q0hFQ0tfVkVSU0lPTigzLCAwLCAw KQorICAgICB3eENvb3JkIHRhYl9oZWlnaHQgPSBtX3RhYkN0cmxIZWlnaHQgLSAzOworLSNlbHNl CistICAgIHd4Q29vcmQgdGFiX2hlaWdodCA9IG1fdGFiX2N0cmxfaGVpZ2h0IC0gMzsKKy0jZW5k aWYKKyAgICAgd3hDb29yZCB0YWJfd2lkdGggPSB0YWJfc2l6ZS54OworICAgICB3eENvb3JkIHRh Yl94ID0gaW5fcmVjdC54OworICAgICB3eENvb3JkIHRhYl95ID0gaW5fcmVjdC55ICsgaW5fcmVj dC5oZWlnaHQgLSB0YWJfaGVpZ2h0OworQEAgLTE2NiwxNyArMTQ4LDEwIEBACisgICAgIHd4Q29v cmQgdGV4dHg7CisgICAgIHd4Q29vcmQgdGV4dHk7CisgICAgIGlmIChwYWdlLmFjdGl2ZSkKKy0j aWYgd3hDSEVDS19WRVJTSU9OKDMsIDAsIDApCisgICAgICAgICBkYy5TZXRGb250KG1fc2VsZWN0 ZWRGb250KTsKKy0jZWxzZQorLSAgICAgICAgZGMuU2V0Rm9udChtX3NlbGVjdGVkX2ZvbnQpOwor LSNlbmRpZgorICAgICBlbHNlCistI2lmIHd4Q0hFQ0tfVkVSU0lPTigzLCAwLCAwKQorICAgICAg ICAgZGMuU2V0Rm9udChtX25vcm1hbEZvbnQpOworLSNlbHNlCistICAgICAgICBkYy5TZXRGb250 KG1fbm9ybWFsX2ZvbnQpOworLSNlbmRpZgorKworICAgICBkYy5HZXRUZXh0RXh0ZW50KGNhcHRp b24sICZ0ZXh0eCwgJnRleHR5KTsKKyAgICAgLy8gZHJhdyB0YWIgdGV4dAorICAgICBkYy5TZXRU ZXh0Rm9yZWdyb3VuZCh3eFN5c3RlbVNldHRpbmdzOjpHZXRDb2xvdXIod3hTWVNfQ09MT1VSX0JU TlRFWFQpKTsKK0BAIC0xODYsMjEgKzE2MSwxMiBAQAorICAgICAvLyBkcmF3ICd4JyBvbiB0YWIg KGlmIGVuYWJsZWQpCisgICAgIGlmIChjbG9zZV9idXR0b25fc3RhdGUgIT0gd3hBVUlfQlVUVE9O X1NUQVRFX0hJRERFTikKKyAgICAgeworLSNpZiB3eENIRUNLX1ZFUlNJT04oMywgMCwgMCkKKyAg ICAgICAgIGludCBjbG9zZV9idXR0b25fd2lkdGggPSBtX2FjdGl2ZUNsb3NlQm1wLkdldFdpZHRo KCk7CisgICAgICAgICB3eEJpdG1hcCBibXAgPSBtX2Rpc2FibGVkQ2xvc2VCbXA7CistI2Vsc2UK Ky0gICAgICAgIGludCBjbG9zZV9idXR0b25fd2lkdGggPSBtX2FjdGl2ZV9jbG9zZV9ibXAuR2V0 V2lkdGgoKTsKKy0gICAgICAgIHd4Qml0bWFwIGJtcCA9IG1fZGlzYWJsZWRfY2xvc2VfYm1wOwor LSNlbmRpZgorIAorICAgICAgICAgaWYgKChjbG9zZV9idXR0b25fc3RhdGUgPT0gd3hBVUlfQlVU VE9OX1NUQVRFX0hPVkVSKSB8fAorICAgICAgICAgICAgICAgICAgICAgKGNsb3NlX2J1dHRvbl9z dGF0ZSA9PSB3eEFVSV9CVVRUT05fU1RBVEVfUFJFU1NFRCkpCistI2lmIHd4Q0hFQ0tfVkVSU0lP TigzLCAwLCAwKQorICAgICAgICAgICAgIGJtcCA9IG1fYWN0aXZlQ2xvc2VCbXA7CistI2Vsc2UK Ky0gICAgICAgICAgICBibXAgPSBtX2FjdGl2ZV9jbG9zZV9ibXA7CistI2VuZGlmCisgCisgICAg ICAgICB3eFJlY3QgcmVjdCh0YWJfeCArIHRhYl93aWR0aCAtIGNsb3NlX2J1dHRvbl93aWR0aCAt IDMsCisgICAgICAgICAgICAgICAgICAgICBkcmF3bl90YWJfeW9mZiArIChkcmF3bl90YWJfaGVp Z2h0IC8gMikgLSAoYm1wLkdldEhlaWdodCgpIC8gMiksCitAQCAtMjI3LDExICsxOTMsNyBAQAor IC8vICAgIG1fcmVxdWVzdGVkX3RhYmN0cmxfaGVpZ2h0ID0gLTE7CisgLy8gICAgbV90YWJfY3Ry bF9oZWlnaHQgPSAtMTsKKyAgICAgd3hDbGllbnREQyBkYyh3bmQpOworLSNpZiB3eENIRUNLX1ZF UlNJT04oMywgMCwgMCkKKyAgICAgZGMuU2V0Rm9udChtX21lYXN1cmluZ0ZvbnQpOworLSNlbHNl CistICAgIGRjLlNldEZvbnQobV9tZWFzdXJpbmdfZm9udCk7CistI2VuZGlmCisgICAgIGludCB4 X2V4dCA9IDA7CisgICAgIHd4U2l6ZSBzID0gR2V0VGFiU2l6ZShkYywgd25kLCB3eFQoIkFCQ0RF RkdISWoiKSwgd3hOdWxsQml0bWFwLCB0cnVlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAg ICB3eEFVSV9CVVRUT05fU1RBVEVfSElEREVOLCAmeF9leHQpOworQEAgLTI0NiwxNSArMjA4LDkg QEAKKyB7CisgICAgIE5iU3R5bGVGRjIqIGNsb25lID0gbmV3IE5iU3R5bGVGRjIoKTsKKyAKKy0j aWYgd3hDSEVDS19WRVJTSU9OKDMsIDAsIDApCisgICAgIGNsb25lLT5TZXROb3JtYWxGb250KG1f bm9ybWFsRm9udCk7CisgICAgIGNsb25lLT5TZXRTZWxlY3RlZEZvbnQobV9zZWxlY3RlZEZvbnQp OworICAgICBjbG9uZS0+U2V0TWVhc3VyaW5nRm9udChtX21lYXN1cmluZ0ZvbnQpOworLSNlbHNl CistICAgIGNsb25lLT5TZXROb3JtYWxGb250KG1fbm9ybWFsX2ZvbnQpOworLSAgICBjbG9uZS0+ U2V0U2VsZWN0ZWRGb250KG1fc2VsZWN0ZWRfZm9udCk7CistICAgIGNsb25lLT5TZXRNZWFzdXJp bmdGb250KG1fbWVhc3VyaW5nX2ZvbnQpOworLSNlbmRpZgorIAorICAgICByZXR1cm4gY2xvbmU7 CisgfQorQEAgLTI3MiwxMSArMjI4LDcgQEAKKyAgICAgd3hTaXplIHRhYl9zaXplID0gR2V0VGFi U2l6ZShkYywgd25kLCBwYWdlLmNhcHRpb24sIHBhZ2UuYml0bWFwLAorICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIHBhZ2UuYWN0aXZlLCBjbG9zZV9idXR0b25fc3RhdGUsIHhf ZXh0ZW50KTsKKyAKKy0jaWYgd3hDSEVDS19WRVJTSU9OKDMsIDAsIDApCisgICAgIHd4Q29vcmQg dGFiX2hlaWdodCA9IG1fdGFiQ3RybEhlaWdodCAtIDI7CistI2Vsc2UKKy0gICAgd3hDb29yZCB0 YWJfaGVpZ2h0ID0gbV90YWJfY3RybF9oZWlnaHQgLSAyOworLSNlbmRpZgorICAgICB3eENvb3Jk IHRhYl93aWR0aCA9IHRhYl9zaXplLng7CisgICAgIHd4Q29vcmQgdGFiX3ggPSBpbl9yZWN0Lng7 CisgICAgIHd4Q29vcmQgdGFiX3kgPSBpbl9yZWN0LnkgKyBpbl9yZWN0LmhlaWdodCAtIHRhYl9o ZWlnaHQ7CitAQCAtMzYwLDE3ICszMTIsMTAgQEAKKyAgICAgd3hDb29yZCB0ZXh0eDsKKyAgICAg d3hDb29yZCB0ZXh0eTsKKyAgICAgaWYgKHBhZ2UuYWN0aXZlKQorLSNpZiB3eENIRUNLX1ZFUlNJ T04oMywgMCwgMCkKKyAgICAgICAgIGRjLlNldEZvbnQobV9zZWxlY3RlZEZvbnQpOworLSNlbHNl CistICAgICAgICBkYy5TZXRGb250KG1fc2VsZWN0ZWRfZm9udCk7CistI2VuZGlmCisgICAgIGVs c2UKKy0jaWYgd3hDSEVDS19WRVJTSU9OKDMsIDAsIDApCisgICAgICAgICBkYy5TZXRGb250KG1f bm9ybWFsRm9udCk7CistI2Vsc2UKKy0gICAgICAgIGRjLlNldEZvbnQobV9ub3JtYWxfZm9udCk7 CistI2VuZGlmCisrCisgICAgIGRjLkdldFRleHRFeHRlbnQoY2FwdGlvbiwgJnRleHR4LCAmdGV4 dHkpOworICAgICAvLyBkcmF3IHRhYiB0ZXh0CisgICAgIGRjLlNldFRleHRGb3JlZ3JvdW5kKHd4 U3lzdGVtU2V0dGluZ3M6OkdldENvbG91cih3eFNZU19DT0xPVVJfQlROVEVYVCkpOworQEAgLTM4 MCwyMSArMzI1LDEyIEBACisgICAgIC8vIGRyYXcgJ3gnIG9uIHRhYiAoaWYgZW5hYmxlZCkKKyAg ICAgaWYgKGNsb3NlX2J1dHRvbl9zdGF0ZSAhPSB3eEFVSV9CVVRUT05fU1RBVEVfSElEREVOKQor ICAgICB7CistI2lmIHd4Q0hFQ0tfVkVSU0lPTigzLCAwLCAwKQorICAgICAgICAgaW50IGNsb3Nl X2J1dHRvbl93aWR0aCA9IG1fYWN0aXZlQ2xvc2VCbXAuR2V0V2lkdGgoKTsKKyAgICAgICAgIHd4 Qml0bWFwIGJtcCA9IG1fZGlzYWJsZWRDbG9zZUJtcDsKKy0jZWxzZQorLSAgICAgICAgaW50IGNs b3NlX2J1dHRvbl93aWR0aCA9IG1fYWN0aXZlX2Nsb3NlX2JtcC5HZXRXaWR0aCgpOworLSAgICAg ICAgd3hCaXRtYXAgYm1wID0gbV9kaXNhYmxlZF9jbG9zZV9ibXA7CistI2VuZGlmCisgCisgICAg ICAgICBpZiAoKGNsb3NlX2J1dHRvbl9zdGF0ZSA9PSB3eEFVSV9CVVRUT05fU1RBVEVfSE9WRVIp IHx8CisgICAgICAgICAgICAgICAgICAgICAoY2xvc2VfYnV0dG9uX3N0YXRlID09IHd4QVVJX0JV VFRPTl9TVEFURV9QUkVTU0VEKSkKKy0jaWYgd3hDSEVDS19WRVJTSU9OKDMsIDAsIDApCisgICAg ICAgICAgICAgYm1wID0gbV9hY3RpdmVDbG9zZUJtcDsKKy0jZWxzZQorLSAgICAgICAgICAgIGJt cCA9IG1fYWN0aXZlX2Nsb3NlX2JtcDsKKy0jZW5kaWYKKyAKKyAgICAgICAgIHd4UmVjdCByZWN0 KHRhYl94ICsgdGFiX3dpZHRoIC0gY2xvc2VfYnV0dG9uX3dpZHRoIC0gMywKKyAgICAgICAgICAg ICAgICAgICAgIGRyYXduX3RhYl95b2ZmICsgKGRyYXduX3RhYl9oZWlnaHQgLyAyKSAtIChibXAu R2V0SGVpZ2h0KCkgLyAyKSwKK0BAIC00MjEsNTMzICszNTcsOSBAQAorIC8vICAgIG1fcmVxdWVz dGVkX3RhYmN0cmxfaGVpZ2h0ID0gLTE7CisgLy8gICAgbV90YWJfY3RybF9oZWlnaHQgPSAtMTsK KyAgICAgd3hDbGllbnREQyBkYyh3bmQpOworLSNpZiB3eENIRUNLX1ZFUlNJT04oMywgMCwgMCkK KyAgICAgZGMuU2V0Rm9udChtX21lYXN1cmluZ0ZvbnQpOworLSNlbHNlCistICAgIGRjLlNldEZv bnQobV9tZWFzdXJpbmdfZm9udCk7CistI2VuZGlmCisgICAgIGludCB4X2V4dCA9IDA7CisgICAg IHd4U2l6ZSBzID0gR2V0VGFiU2l6ZShkYywgd25kLCB3eFQoIkFCQ0RFRkdISWoiKSwgd3hOdWxs Qml0bWFwLCB0cnVlLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3eEFVSV9CVVRUT05f U1RBVEVfSElEREVOLCAmeF9leHQpOworICAgICByZXR1cm4gcy55ICsgNjsKKyB9CistCistI2lm IGRlZmluZWQoX19XWEdUS19fKSAmJiAoVVNFX0dUS19OT1RFQk9PSykgJiYgIXd4Q0hFQ0tfVkVS U0lPTigzLCAwLCAwKQorLQorLW5hbWVzcGFjZQorLXsKKy0KKy1zdGF0aWMgR3RrV2lkZ2V0ICpn X3dpbmRvdyA9IG51bGxwdHI7Cistc3RhdGljIEd0a1dpZGdldCAqZ19jb250YWluZXIgPSBudWxs cHRyOworLXN0YXRpYyBHdGtXaWRnZXQgKmdfbm90ZWJvb2sgPSBudWxscHRyOworLXN0YXRpYyBH dGtXaWRnZXQgKmdfYnV0dG9uID0gbnVsbHB0cjsKKy1zdGF0aWMgaW50IHNfQ2xvc2VJY29uU2l6 ZSA9IDE2OyAvLyBkZWZhdWx0IHNpemUKKy0KKy1zdGF0aWMgdm9pZCBzZXR1cF93aWRnZXRfcHJv dG90eXBlKEd0a1dpZGdldCogd2lkZ2V0KQorLXsKKy0gICAgaWYgKCFnX3dpbmRvdykKKy0gICAg eworLSAgICAgICAgZ193aW5kb3cgPSBndGtfd2luZG93X25ldyhHVEtfV0lORE9XX1BPUFVQKTsK Ky0gICAgICAgIGd0a193aWRnZXRfcmVhbGl6ZShnX3dpbmRvdyk7CistICAgIH0KKy0gICAgaWYg KCFnX2NvbnRhaW5lcikKKy0gICAgeworLSAgICAgICAgZ19jb250YWluZXIgPSBndGtfZml4ZWRf bmV3KCk7CistICAgICAgICBndGtfY29udGFpbmVyX2FkZChHVEtfQ09OVEFJTkVSKGdfd2luZG93 KSwgZ19jb250YWluZXIpOworLSAgICB9CistCistICAgIGd0a19jb250YWluZXJfYWRkKEdUS19D T05UQUlORVIoZ19jb250YWluZXIpLCB3aWRnZXQpOworLSAgICBndGtfd2lkZ2V0X3JlYWxpemUo d2lkZ2V0KTsKKy19CistCistc3RhdGljIEd0a1N0eWxlICogZ2V0X3N0eWxlX2J1dHRvbigpCist eworLSAgICBpZiAoIWdfYnV0dG9uKQorLSAgICB7CistICAgICAgICBnX2J1dHRvbiA9IGd0a19i dXR0b25fbmV3KCk7CistICAgICAgICBzZXR1cF93aWRnZXRfcHJvdG90eXBlKGdfYnV0dG9uKTsK Ky0gICAgfQorLSAgICByZXR1cm4gZ3RrX3dpZGdldF9nZXRfc3R5bGUoZ19idXR0b24pOworLX0K Ky0KKy1zdGF0aWMgR3RrU3R5bGUgKiBnZXRfc3R5bGVfbm90ZWJvb2soKQorLXsKKy0gICAgaWYg KCFnX25vdGVib29rKQorLSAgICB7CistICAgICAgICBnX25vdGVib29rID0gZ3RrX25vdGVib29r X25ldygpOworLSAgICAgICAgc2V0dXBfd2lkZ2V0X3Byb3RvdHlwZShnX25vdGVib29rKTsKKy0g ICAgfQorLSAgICByZXR1cm4gZ3RrX3dpZGdldF9nZXRfc3R5bGUoZ19ub3RlYm9vayk7CistfQor LQorLX0KKy0KKy1OYlN0eWxlR1RLOjpOYlN0eWxlR1RLKCk6CistICAgIG1fWHRoaWNrbmVzcygw KSwKKy0gICAgbV9ZdGhpY2tuZXNzKDApLAorLSAgICBtX1RhYkhCb3JkZXIoMCksCistICAgIG1f VGFiVkJvcmRlcigwKQorLQorLXsKKy19CistCistd3hBdWlUYWJBcnQqIE5iU3R5bGVHVEs6OkNs b25lKCkKKy17CistICAgIE5iU3R5bGVHVEsqIGNsb25lID0gbmV3IE5iU3R5bGVHVEsoKTsKKy0K Ky0jaWYgd3hDSEVDS19WRVJTSU9OKDMsIDAsIDApCistICAgIGNsb25lLT5TZXROb3JtYWxGb250 KG1fbm9ybWFsRm9udCk7CistICAgIGNsb25lLT5TZXRTZWxlY3RlZEZvbnQobV9ub3JtYWxGb250 KTsKKy0gICAgY2xvbmUtPlNldE1lYXN1cmluZ0ZvbnQobV9ub3JtYWxGb250KTsKKy0jZWxzZQor LSAgICBjbG9uZS0+U2V0Tm9ybWFsRm9udChtX25vcm1hbF9mb250KTsKKy0gICAgY2xvbmUtPlNl dFNlbGVjdGVkRm9udChtX25vcm1hbF9mb250KTsKKy0gICAgY2xvbmUtPlNldE1lYXN1cmluZ0Zv bnQobV9ub3JtYWxfZm9udCk7CistI2VuZGlmCistCistICAgIHJldHVybiBjbG9uZTsKKy19Cist Cistdm9pZCBOYlN0eWxlR1RLOjpEcmF3QmFja2dyb3VuZCh3eERDJiBkYywgd3hXaW5kb3cqIHdu ZCwgY29uc3Qgd3hSZWN0JiByZWN0KQorLXsKKy0gICAgR3RrU3R5bGUqIHN0eWxlX25vdGVib29r ID0gZ2V0X3N0eWxlX25vdGVib29rKCk7CistICAgIEd0a05vdGVib29rKiBub3RlYm9vayA9IEdU S19OT1RFQk9PSyAoZ19ub3RlYm9vayk7CistCistICAgIC8vIGlmIG9uZSBvZiB0aGUgcGFyYW1l dGVycyBoYXZlIGNoYW5nZWQsIHRoZSBoZWlnaHQgbmVlZHMgdG8gYmUgcmVjYWxjdWxhdGVkLCBz byB3ZSBmb3JjZSBpdCwKKy0gICAgaWYobV9YdGhpY2tuZXNzICAhPSBzdHlsZV9ub3RlYm9vay0+ eHRoaWNrbmVzcyB8fAorLSAgICAgICBtX1l0aGlja25lc3MgICE9IHN0eWxlX25vdGVib29rLT55 dGhpY2tuZXNzIHx8CistICAgICAgIG1fVGFiVkJvcmRlciAhPSBub3RlYm9vay0+dGFiX3Zib3Jk ZXIgfHwKKy0gICAgICAgbV9UYWJIQm9yZGVyICE9IG5vdGVib29rLT50YWJfaGJvcmRlcikKKy0g ICAgeworLSAgICAgICAgbV9YdGhpY2tuZXNzICA9IHN0eWxlX25vdGVib29rLT54dGhpY2tuZXNz OworLSAgICAgICAgbV9ZdGhpY2tuZXNzICA9IHN0eWxlX25vdGVib29rLT55dGhpY2tuZXNzOwor LSAgICAgICAgbV9UYWJWQm9yZGVyID0gbm90ZWJvb2stPnRhYl92Ym9yZGVyOworLSAgICAgICAg bV9UYWJIQm9yZGVyID0gbm90ZWJvb2stPnRhYl9oYm9yZGVyOworLSAgICAgICAgd3hBdWlOb3Rl Ym9vayogbmIgPSBudWxscHRyOworLSAgICAgICAgaWYod25kKQorLSAgICAgICAgICAgICBuYiA9 IChjYkF1aU5vdGVib29rKil3bmQtPkdldFBhcmVudCgpOworLSAgICAgICAgaWYobmIpCistICAg ICAgICAgICAgbmItPlNldFRhYkN0cmxIZWlnaHQoLTEpOworLSAgICB9CistI2lmIHd4Q0hFQ0tf VkVSU0lPTigzLCAwLCAwKQorLSAgICB3eEdUS0RDSW1wbCAqaW1wbGRjID0gKHd4R1RLRENJbXBs KikgZGMuR2V0SW1wbCgpOworLSAgICBHZGtXaW5kb3cqIHBXaW4gPSBpbXBsZGMtPkdldEdES1dp bmRvdygpOworLSNlbHNlCistICAgIEdka1dpbmRvdyogcFdpbiA9IGRjLkdldEdES1dpbmRvdygp OworLSNlbmRpZgorLSAgICBndGtfc3R5bGVfYXBwbHlfZGVmYXVsdF9iYWNrZ3JvdW5kKHN0eWxl X25vdGVib29rLCBwV2luLCAxLCBHVEtfU1RBVEVfTk9STUFMLCBudWxscHRyLAorLSAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlY3QueCwgcmVjdC55LCByZWN0LndpZHRo LCByZWN0LmhlaWdodCk7CistfQorLQorLXZvaWQgQnV0dG9uU3RhdGVBbmRTaGFkb3coaW50IGJ1 dHRvbl9zdGF0ZSwgR3RrU3RhdGVUeXBlICZzdGF0ZSwgR3RrU2hhZG93VHlwZSAmc2hhZG93KQor LXsKKy0KKy0gICAgaWYgKGJ1dHRvbl9zdGF0ZSAmIHd4QVVJX0JVVFRPTl9TVEFURV9ESVNBQkxF RCkKKy0gICAgeworLSAgICAgICAgc3RhdGUgPSBHVEtfU1RBVEVfSU5TRU5TSVRJVkU7CistICAg ICAgICBzaGFkb3cgPSBHVEtfU0hBRE9XX0VUQ0hFRF9JTjsKKy0gICAgfQorLSAgICBlbHNlIGlm IChidXR0b25fc3RhdGUgJiB3eEFVSV9CVVRUT05fU1RBVEVfSE9WRVIpCistICAgIHsKKy0gICAg ICAgIHN0YXRlID0gR1RLX1NUQVRFX1BSRUxJR0hUOworLSAgICAgICAgc2hhZG93ID0gR1RLX1NI QURPV19PVVQ7CistICAgIH0KKy0gICAgZWxzZSBpZiAoYnV0dG9uX3N0YXRlICYgd3hBVUlfQlVU VE9OX1NUQVRFX1BSRVNTRUQpCistICAgIHsKKy0gICAgICAgIHN0YXRlID0gR1RLX1NUQVRFX0FD VElWRTsKKy0gICAgICAgIHNoYWRvdyA9IEdUS19TSEFET1dfSU47CistICAgIH0KKy0gICAgZWxz ZQorLSAgICB7CistICAgICAgICBzdGF0ZSA9IEdUS19TVEFURV9OT1JNQUw7CistICAgICAgICBz aGFkb3cgPSBHVEtfU0hBRE9XX09VVDsKKy0gICAgfQorLX0KKy0KKy13eFJlY3QgRHJhd0Nsb3Nl QnV0dG9uKHd4REMmIGRjLAorLSAgICAgICAgICAgICAgICAgICAgICAgR3RrV2lkZ2V0ICp3aWRn ZXQsCistICAgICAgICAgICAgICAgICAgICAgICBpbnQgYnV0dG9uX3N0YXRlLAorLSAgICAgICAg ICAgICAgICAgICAgICAgd3hSZWN0IGNvbnN0ICZpbl9yZWN0LAorLSAgICAgICAgICAgICAgICAg ICAgICAgaW50IG9yaWVudGF0aW9uLAorLSAgICAgICAgICAgICAgICAgICAgICAgR2RrUmVjdGFu Z2xlKiBjbGlwUmVjdCkKKy17CistICAgIEd0a1N0eWxlICpzdHlsZV9idXR0b24gPSBnZXRfc3R5 bGVfYnV0dG9uKCk7CistICAgIGludCB4dGhpY2tuZXNzID0gc3R5bGVfYnV0dG9uLT54dGhpY2tu ZXNzOworLSAgICBpbnQgeXRoaWNrbmVzcyA9IHN0eWxlX2J1dHRvbi0+eXRoaWNrbmVzczsKKy0K Ky0gICAgd3hCaXRtYXAgYm1wOworLSAgICBibXAuU2V0UGl4YnVmKGd0a193aWRnZXRfcmVuZGVy X2ljb24od2lkZ2V0LCBHVEtfU1RPQ0tfQ0xPU0UsIEdUS19JQ09OX1NJWkVfU01BTExfVE9PTEJB UiwgInRhYiIpKTsKKy0KKy0gICAgaWYoYm1wLkdldFdpZHRoKCkgIT0gc19DbG9zZUljb25TaXpl IHx8IGJtcC5HZXRIZWlnaHQoKSAhPSBzX0Nsb3NlSWNvblNpemUpCistICAgIHsKKy0gICAgICAg IHd4SW1hZ2UgaW1nID0gYm1wLkNvbnZlcnRUb0ltYWdlKCk7CistICAgICAgICBpbWcuUmVzY2Fs ZShzX0Nsb3NlSWNvblNpemUsIHNfQ2xvc2VJY29uU2l6ZSk7CistICAgICAgICBibXAgPSBpbWc7 CistICAgIH0KKy0KKy0gICAgaW50IGJ1dHRvbl9zaXplID0gc19DbG9zZUljb25TaXplICsgMiAq IHh0aGlja25lc3M7CistCistICAgIHd4UmVjdCBvdXRfcmVjdDsKKy0KKy0gICAgaWYgKG9yaWVu dGF0aW9uID09IHd4TEVGVCkKKy0gICAgICAgIG91dF9yZWN0LnggPSBpbl9yZWN0LnggLSB5dGhp Y2tuZXNzOworLSAgICBlbHNlCistICAgICAgICBvdXRfcmVjdC54ID0gaW5fcmVjdC54ICsgaW5f cmVjdC53aWR0aCAtIGJ1dHRvbl9zaXplIC0geXRoaWNrbmVzczsKKy0KKy0gICAgb3V0X3JlY3Qu eSA9IGluX3JlY3QueSArIChpbl9yZWN0LmhlaWdodCAtIGJ1dHRvbl9zaXplKSAvIDI7CistICAg IG91dF9yZWN0LndpZHRoID0gYnV0dG9uX3NpemU7CistICAgIG91dF9yZWN0LmhlaWdodCA9IGJ1 dHRvbl9zaXplOworLQorLSNpZiB3eENIRUNLX1ZFUlNJT04oMywgMCwgMCkKKy0gICAgd3hHVEtE Q0ltcGwgKmltcGxkYyA9ICh3eEdUS0RDSW1wbCopIGRjLkdldEltcGwoKTsKKy0gICAgR2RrV2lu ZG93KiBwV2luID0gaW1wbGRjLT5HZXRHREtXaW5kb3coKTsKKy0jZWxzZQorLSAgICBHZGtXaW5k b3cqIHBXaW4gPSBkYy5HZXRHREtXaW5kb3coKTsKKy0jZW5kaWYKKy0KKy0gICAgaWYgKGJ1dHRv bl9zdGF0ZSA9PSB3eEFVSV9CVVRUT05fU1RBVEVfSE9WRVIpCistICAgIHsKKy0gICAgICAgIGd0 a19wYWludF9ib3goc3R5bGVfYnV0dG9uLCBwV2luLAorLSAgICAgICAgICAgICAgICAgICAgICBH VEtfU1RBVEVfUFJFTElHSFQsIEdUS19TSEFET1dfT1VULCBjbGlwUmVjdCwgd2lkZ2V0LCAiYnV0 dG9uIiwKKy0gICAgICAgICAgICAgICAgICAgICAgb3V0X3JlY3QueCwgb3V0X3JlY3QueSwgb3V0 X3JlY3Qud2lkdGgsIG91dF9yZWN0LmhlaWdodCk7CistICAgIH0KKy0gICAgZWxzZSBpZiAoYnV0 dG9uX3N0YXRlID09IHd4QVVJX0JVVFRPTl9TVEFURV9QUkVTU0VEKQorLSAgICB7CistICAgICAg ICBndGtfcGFpbnRfYm94KHN0eWxlX2J1dHRvbiwgcFdpbiwKKy0gICAgICAgICAgICAgICAgICAg ICAgR1RLX1NUQVRFX0FDVElWRSwgR1RLX1NIQURPV19JTiwgY2xpcFJlY3QsIHdpZGdldCwgImJ1 dHRvbiIsCistICAgICAgICAgICAgICAgICAgICAgIG91dF9yZWN0LngsIG91dF9yZWN0LnksIG91 dF9yZWN0LndpZHRoLCBvdXRfcmVjdC5oZWlnaHQpOworLSAgICB9CistCistCistICAgIGRjLkRy YXdCaXRtYXAoYm1wLCBvdXRfcmVjdC54ICsgeHRoaWNrbmVzcywgb3V0X3JlY3QueSArIHl0aGlj a25lc3MsIHRydWUpOworLQorLSAgICByZXR1cm4gb3V0X3JlY3Q7CistfQorLQorLXZvaWQgTmJT dHlsZUdUSzo6RHJhd1RhYih3eERDJiBkYywgd3hXaW5kb3cqIHduZCwgY29uc3Qgd3hBdWlOb3Rl Ym9va1BhZ2UmIHBhZ2UsCistICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB3eFJl Y3QmIGluX3JlY3QsIGludCBjbG9zZV9idXR0b25fc3RhdGUsIHd4UmVjdCogb3V0X3RhYl9yZWN0 LAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd3hSZWN0KiBvdXRfYnV0dG9uX3JlY3Qs IGludCogeF9leHRlbnQpCisteworLSAgICBHdGtXaWRnZXQgKndpZGdldCA9IHduZC0+R2V0SGFu ZGxlKCk7CistICAgIEd0a1N0eWxlICpzdHlsZV9ub3RlYm9vayA9IGdldF9zdHlsZV9ub3RlYm9v aygpOworLQorLSAgICB3eFJlY3QgY29uc3QgJndpbmRvd19yZWN0ID0gd25kLT5HZXRSZWN0KCk7 CistCistICAgIGludCBmb2N1c193aWR0aCA9IDA7CistCistICAgIGd0a193aWRnZXRfc3R5bGVf Z2V0KGdfbm90ZWJvb2ssCistICAgICAgICAgICAgICAgICAgICAgICAgICJmb2N1cy1saW5lLXdp ZHRoIiwgJmZvY3VzX3dpZHRoLAorLSAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMKTsKKy0K Ky0gICAgaW50IHRhYl9wb3M7CistICAgIGlmIChtX2ZsYWdzICZ3eEFVSV9OQl9CT1RUT00pCist ICAgICAgICB0YWJfcG9zID0gd3hBVUlfTkJfQk9UVE9NOworLSAgICBlbHNlIC8vaWYgKG1fZmxh Z3MgJiB3eEFVSV9OQl9UT1ApIHt9CistICAgICAgICB0YWJfcG9zID0gd3hBVUlfTkJfVE9QOwor LQorLSAgICAvLyBUT0RPOiBlbHNlIGlmIChtX2ZsYWdzICZ3eEFVSV9OQl9MRUZUKSB7fQorLSAg ICAvLyBUT0RPOiBlbHNlIGlmIChtX2ZsYWdzICZ3eEFVSV9OQl9SSUdIVCkge30KKy0KKy0gICAg Ly8gZmlndXJlIG91dCB0aGUgc2l6ZSBvZiB0aGUgdGFiCistICAgIHd4U2l6ZSB0YWJfc2l6ZSA9 IEdldFRhYlNpemUoZGMsIHduZCwgcGFnZS5jYXB0aW9uLCBwYWdlLmJpdG1hcCwKKy0gICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWdlLmFjdGl2ZSwgY2xvc2VfYnV0dG9uX3N0 YXRlLCB4X2V4dGVudCk7CistCistICAgIHd4UmVjdCB0YWJfcmVjdCA9IGluX3JlY3Q7CistICAg IHRhYl9yZWN0LndpZHRoID0gdGFiX3NpemUueDsKKy0gICAgdGFiX3JlY3QuaGVpZ2h0ID0gdGFi X3NpemUueTsKKy0gICAgdGFiX3JlY3QueSArPSAyICogbV9UYWJIQm9yZGVyOworLQorLSAgICBp ZiAocGFnZS5hY3RpdmUpCistICAgICAgICB0YWJfcmVjdC5oZWlnaHQgKz0gMiAqIG1fVGFiSEJv cmRlcjsKKy0jaWYgd3hDSEVDS19WRVJTSU9OKDMsIDAsIDApCistICAgIC8vIGlmIG5vIGJpdG1h cCBpcyBzZXQsIHdlIG5lZWQgYSB0aW55IGNvcnJlY3Rpb24KKy0gICAgaWYgKCEgcGFnZS5iaXRt YXAuSXNPaygpKQorLSAgICAgICAgdGFiX3JlY3QuaGVpZ2h0ICs9IDE7CistI2VuZGlmCistCist ICAgIGludCBnYXBfcmVjdF9oZWlnaHQgPSA2ICogbV9UYWJIQm9yZGVyOworLSAgICBpbnQgZ2Fw X3JlY3RfeCA9IDEsIGdhcF9zdGFydCA9IDAsIGdhcF93aWR0aCA9IDA7CistICAgIGludCBnYXBf cmVjdF95ID0gdGFiX3JlY3QueSAtIGdhcF9yZWN0X2hlaWdodDsKKy0gICAgaW50IGdhcF9yZWN0 X3dpZHRoID0gd2luZG93X3JlY3Qud2lkdGg7CistCistICAgIHN3aXRjaCAodGFiX3BvcykKKy0g ICAgeworLSAgICAgICAgY2FzZSB3eEFVSV9OQl9UT1A6CistICAgICAgICAgICAgdGFiX3JlY3Qu eSAtPSAyICogbV9UYWJIQm9yZGVyOworLSAgICAgICAgICAgIGlmICghcGFnZS5hY3RpdmUpCist ICAgICAgICAgICAgICAgIHRhYl9yZWN0LnkgKz0gMiAqIG1fVGFiSEJvcmRlcjsKKy0gICAgICAg ICAgICBnYXBfcmVjdF95ID0gdGFiX3JlY3QueSArIHRhYl9yZWN0LmhlaWdodCAtIG1fVGFiSEJv cmRlciAvIDI7CistICAgICAgICAgICAgLy8gZmFsbCB0aHJvdWdoCistICAgICAgICBjYXNlIHd4 QVVJX05CX0JPVFRPTToKKy0gICAgICAgICAgICBnYXBfc3RhcnQgPSB0YWJfcmVjdC54IC0gbV9U YWJWQm9yZGVyIC8gMjsKKy0gICAgICAgICAgICBnYXBfd2lkdGggPSB0YWJfcmVjdC53aWR0aDsK Ky0gICAgICAgICAgICBicmVhazsKKy0gICAgICAgIGRlZmF1bHQ6CistICAgICAgICAgICAgYnJl YWs7CistICAgIH0KKy0gICAgdGFiX3JlY3QueSArPSBtX1RhYkhCb3JkZXIgLyAyOworLSAgICBn YXBfcmVjdF95ICs9IG1fVGFiSEJvcmRlciAvIDI7CistCistICAgIGludCBwYWRkaW5nID0gZm9j dXNfd2lkdGggKyBtX1RhYkhCb3JkZXI7CistCistICAgIGludCBjbGlwX3dpZHRoID0gdGFiX3Jl Y3Qud2lkdGg7CistICAgIGlmICh0YWJfcmVjdC54ICsgdGFiX3JlY3Qud2lkdGggPiBpbl9yZWN0 LnggKyBpbl9yZWN0LndpZHRoKQorLSAgICAgICAgY2xpcF93aWR0aCA9IChpbl9yZWN0LnggKyBp bl9yZWN0LndpZHRoKSAtIHRhYl9yZWN0Lng7CistCistICAgIGRjLlNldENsaXBwaW5nUmVnaW9u KHRhYl9yZWN0LngsIHRhYl9yZWN0LnkgLSBtX1RhYlZCb3JkZXIsIGNsaXBfd2lkdGgsIHRhYl9y ZWN0LmhlaWdodCArIG1fVGFiVkJvcmRlcik7CistCistICAgIEdka1JlY3RhbmdsZSBhcmVhOwor LSAgICBhcmVhLnggPSB0YWJfcmVjdC54IC0gbV9UYWJWQm9yZGVyOworLSAgICBhcmVhLnkgPSB0 YWJfcmVjdC55IC0gMiAqIG1fVGFiSEJvcmRlcjsKKy0gICAgYXJlYS53aWR0aCA9IGNsaXBfd2lk dGggKyBtX1RhYlZCb3JkZXI7CistICAgIGFyZWEuaGVpZ2h0ID0gdGFiX3JlY3QuaGVpZ2h0ICsg MiAqIG1fVGFiSEJvcmRlcjsKKy0KKy0jaWYgd3hDSEVDS19WRVJTSU9OKDMsIDAsIDApCistICAg IHd4R1RLRENJbXBsICppbXBsZGMgPSAod3hHVEtEQ0ltcGwqKSBkYy5HZXRJbXBsKCk7CistICAg IEdka1dpbmRvdyogcFdpbiA9IGltcGxkYy0+R2V0R0RLV2luZG93KCk7CistI2Vsc2UKKy0gICAg R2RrV2luZG93KiBwV2luID0gZGMuR2V0R0RLV2luZG93KCk7CistI2VuZGlmCistCistICAgIGlm ICh0YWJfcG9zID09IHd4QVVJX05CX0JPVFRPTSkKKy0gICAgeworLSAgICAgICAgaWYgKHBhZ2Uu YWN0aXZlKQorLSAgICAgICAgeworLSAgICAgICAgICAgIGd0a19wYWludF9ib3hfZ2FwKHN0eWxl X25vdGVib29rLCBwV2luLCBHVEtfU1RBVEVfTk9STUFMLCBHVEtfU0hBRE9XX09VVCwKKy0gICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCB3aWRnZXQsICJub3RlYm9vayIsCistICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2FwX3JlY3RfeCwgZ2FwX3JlY3RfeSwKKy0gICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBnYXBfcmVjdF93aWR0aCwgZ2FwX3JlY3RfaGVpZ2h0 LAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdUS19QT1NfQk9UVE9NLCBnYXBfc3Rh cnQgLCBnYXBfd2lkdGgpOworLSAgICAgICAgfQorLSAgICAgICAgZ3RrX3BhaW50X2V4dGVuc2lv bihzdHlsZV9ub3RlYm9vaywgcFdpbiwKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICBwYWdl LmFjdGl2ZSA/IEdUS19TVEFURV9OT1JNQUwgOiBHVEtfU1RBVEVfQUNUSVZFLCBHVEtfU0hBRE9X X09VVCwKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAmYXJlYSwgd2lkZ2V0LCAidGFiIiwK Ky0gICAgICAgICAgICAgICAgICAgICAgICAgICB0YWJfcmVjdC54LCB0YWJfcmVjdC55LAorLSAg ICAgICAgICAgICAgICAgICAgICAgICAgIHRhYl9yZWN0LndpZHRoLCB0YWJfcmVjdC5oZWlnaHQs CistICAgICAgICAgICAgICAgICAgICAgICAgICAgR1RLX1BPU19UT1ApOworLSAgICB9CistICAg IGVsc2UKKy0gICAgeworLSAgICAgICAgaWYgKHBhZ2UuYWN0aXZlKQorLSAgICAgICAgeworLSAg ICAgICAgICAgIGd0a19wYWludF9ib3hfZ2FwKHN0eWxlX25vdGVib29rLCBwV2luLCBHVEtfU1RB VEVfTk9STUFMLCBHVEtfU0hBRE9XX09VVCwKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBOVUxMLCB3aWRnZXQsICJub3RlYm9vayIsCistICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgZ2FwX3JlY3RfeCwgZ2FwX3JlY3RfeSwKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBnYXBfcmVjdF93aWR0aCwgZ2FwX3JlY3RfaGVpZ2h0LAorLSAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIEdUS19QT1NfVE9QLCBnYXBfc3RhcnQgLCBnYXBfd2lkdGgpOworLSAgICAgICAg fQorLSAgICAgICAgZ3RrX3BhaW50X2V4dGVuc2lvbihzdHlsZV9ub3RlYm9vaywgcFdpbiwKKy0g ICAgICAgICAgICAgICAgICAgICAgICAgICBwYWdlLmFjdGl2ZSA/IEdUS19TVEFURV9OT1JNQUwg OiBHVEtfU1RBVEVfQUNUSVZFLCBHVEtfU0hBRE9XX09VVCwKKy0gICAgICAgICAgICAgICAgICAg ICAgICAgICAmYXJlYSwgd2lkZ2V0LCAidGFiIiwKKy0gICAgICAgICAgICAgICAgICAgICAgICAg ICB0YWJfcmVjdC54LCB0YWJfcmVjdC55LAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgIHRh Yl9yZWN0LndpZHRoLCB0YWJfcmVjdC5oZWlnaHQsCistICAgICAgICAgICAgICAgICAgICAgICAg ICAgR1RLX1BPU19CT1RUT00pOworLSAgICB9CistCistICAgIHd4Q29vcmQgdGV4dFggPSB0YWJf cmVjdC54ICsgcGFkZGluZyArIG1fWHRoaWNrbmVzczsKKy0KKy0gICAgaW50IGJpdG1hcF9vZmZz ZXQgPSAwOworLSAgICBpZiAocGFnZS5iaXRtYXAuSXNPaygpKQorLSAgICB7CistICAgICAgICBi aXRtYXBfb2Zmc2V0ID0gdGV4dFg7CistCistICAgICAgICAvLyBkcmF3IGJpdG1hcAorLSAgICAg ICAgaW50IGJpdG1hcFkgPSB0YWJfcmVjdC55ICsodGFiX3JlY3QuaGVpZ2h0IC0gcGFnZS5iaXRt YXAuR2V0SGVpZ2h0KCkpIC8gMjsKKy0gICAgICAgIGlmKCFwYWdlLmFjdGl2ZSkKKy0gICAgICAg IHsKKy0gICAgICAgICAgICBpZiAodGFiX3BvcyA9PSB3eEFVSV9OQl9UT1ApCistICAgICAgICAg ICAgICAgIGJpdG1hcFkgKz0gbV9ZdGhpY2tuZXNzIC8gMjsKKy0gICAgICAgICAgICBlbHNlCist ICAgICAgICAgICAgICAgIGJpdG1hcFkgLT0gbV9ZdGhpY2tuZXNzIC8gMjsKKy0gICAgICAgIH0K Ky0gICAgICAgIGRjLkRyYXdCaXRtYXAocGFnZS5iaXRtYXAsCistICAgICAgICAgICAgICAgICAg ICAgIGJpdG1hcF9vZmZzZXQsCistICAgICAgICAgICAgICAgICAgICAgIGJpdG1hcFksCistICAg ICAgICAgICAgICAgICAgICAgIHRydWUpOworLQorLSAgICAgICAgdGV4dFggKz0gcGFnZS5iaXRt YXAuR2V0V2lkdGgoKSArIHBhZGRpbmc7CistICAgIH0KKy0KKy0gICAgd3hDb29yZCB0ZXh0Vywg dGV4dEgsIHRleHRZOworLQorLSNpZiB3eENIRUNLX1ZFUlNJT04oMywgMCwgMCkKKy0gICAgZGMu U2V0Rm9udChtX25vcm1hbEZvbnQpOworLSNlbHNlCistICAgIGRjLlNldEZvbnQobV9ub3JtYWxf Zm9udCk7CistI2VuZGlmCistICAgIGRjLkdldFRleHRFeHRlbnQocGFnZS5jYXB0aW9uLCAmdGV4 dFcsICZ0ZXh0SCk7CistICAgIHRleHRZID0gdGFiX3JlY3QueSArICh0YWJfcmVjdC5oZWlnaHQg LSB0ZXh0SCkgLyAyOworLSAgICBpZighcGFnZS5hY3RpdmUpCistICAgIHsKKy0gICAgICAgIGlm ICh0YWJfcG9zID09IHd4QVVJX05CX1RPUCkKKy0gICAgICAgICAgICB0ZXh0WSArPSBtX1l0aGlj a25lc3MgLyAyOworLSAgICAgICAgZWxzZQorLSAgICAgICAgICAgIHRleHRZIC09IG1fWXRoaWNr bmVzcyAvIDI7CistICAgIH0KKy0KKy0gICAgLy8gZHJhdyB0YWIgdGV4dAorLSAgICBHZGtDb2xv ciB0ZXh0X2NvbG91ciA9IHBhZ2UuYWN0aXZlID8gc3R5bGVfbm90ZWJvb2stPmZnW0dUS19TVEFU RV9OT1JNQUxdIDogc3R5bGVfbm90ZWJvb2stPmZnW0dUS19TVEFURV9BQ1RJVkVdOworLSAgICBk Yy5TZXRUZXh0Rm9yZWdyb3VuZCh3eENvbG9yKHRleHRfY29sb3VyKSk7CistICAgIEdka1JlY3Rh bmdsZSBmb2N1c19hcmVhOworLQorLSAgICBpbnQgcGFkZGluZ19mb2N1cyA9IHBhZGRpbmcgLSBm b2N1c193aWR0aDsKKy0gICAgZm9jdXNfYXJlYS54ID0gdGFiX3JlY3QueCArIHBhZGRpbmdfZm9j dXM7CistICAgIGZvY3VzX2FyZWEueSA9IHRleHRZIC0gZm9jdXNfd2lkdGg7CistICAgIGZvY3Vz X2FyZWEud2lkdGggPSB0YWJfcmVjdC53aWR0aCAtIDIgKiBwYWRkaW5nX2ZvY3VzOworLSAgICBm b2N1c19hcmVhLmhlaWdodCA9IHRleHRIICsgMiAqIGZvY3VzX3dpZHRoOworLQorLSAgICBpZihw YWdlLmFjdGl2ZSAmJiAod25kLT5GaW5kRm9jdXMoKSA9PSB3bmQpICYmIGZvY3VzX2FyZWEueCA8 PSAoYXJlYS54ICsgYXJlYS53aWR0aCkpCistICAgIHsKKy0gICAgICAgIC8vIGNsaXBwaW5nIHNl ZW1zIG5vdCB0byB3b3JrIGhlcmUsIHNvIHdlIHdlIGhhdmUgdG8gcmVjYWxjIHRoZSBmb2N1cy1h cmVhIG1hbnVhbGx5CistICAgICAgICBpZigoZm9jdXNfYXJlYS54ICsgZm9jdXNfYXJlYS53aWR0 aCkgPiAoYXJlYS54ICsgYXJlYS53aWR0aCkpCistICAgICAgICAgICAgZm9jdXNfYXJlYS53aWR0 aCA9IGFyZWEueCArIGFyZWEud2lkdGggLSBmb2N1c19hcmVhLnggKyBmb2N1c193aWR0aCAtIG1f VGFiVkJvcmRlcjsKKy0gICAgICAgIGd0a19wYWludF9mb2N1cyAoc3R5bGVfbm90ZWJvb2ssIHBX aW4sCistICAgICAgICAgICAgICAgICAgICAgICAgIEdUS19TVEFURV9BQ1RJVkUsIE5VTEwsIHdp ZGdldCwgInRhYiIsCistICAgICAgICAgICAgICAgICAgICAgICAgIGZvY3VzX2FyZWEueCwgZm9j dXNfYXJlYS55LCBmb2N1c19hcmVhLndpZHRoLCBmb2N1c19hcmVhLmhlaWdodCk7CistICAgIH0K Ky0KKy0gICAgZGMuRHJhd1RleHQocGFnZS5jYXB0aW9uLCB0ZXh0WCwgdGV4dFkpOworLQorLSAg ICAvLyBkcmF3IGNsb3NlLWJ1dHRvbiBvbiB0YWIgKGlmIGVuYWJsZWQpCistICAgIGlmIChjbG9z ZV9idXR0b25fc3RhdGUgIT0gd3hBVUlfQlVUVE9OX1NUQVRFX0hJRERFTikKKy0gICAgeworLSAg ICAgICAgd3hSZWN0IHJlY3QodGFiX3JlY3QueCwgdGFiX3JlY3QueSwgdGFiX3JlY3Qud2lkdGgg LSBtX1h0aGlja25lc3MsIHRhYl9yZWN0LmhlaWdodCk7CistICAgICAgICBpZighcGFnZS5hY3Rp dmUpCistICAgICAgICB7CistICAgICAgICAgICAgaWYgKHRhYl9wb3MgPT0gd3hBVUlfTkJfVE9Q KQorLSAgICAgICAgICAgICAgICByZWN0LnkgKz0gbV9ZdGhpY2tuZXNzIC8gMjsKKy0gICAgICAg ICAgICBlbHNlCistICAgICAgICAgICAgICAgIHJlY3QueSAtPSBtX1l0aGlja25lc3MgLyAyOwor LSAgICAgICAgfQorLSAgICAgICAgKm91dF9idXR0b25fcmVjdCA9IERyYXdDbG9zZUJ1dHRvbihk Yywgd2lkZ2V0LCBjbG9zZV9idXR0b25fc3RhdGUsIHJlY3QsIHd4UklHSFQsICZhcmVhKTsKKy0g ICAgfQorLQorLSAgICB0YWJfcmVjdC53aWR0aCA9IHN0ZDo6bWluKHRhYl9yZWN0LndpZHRoLCBj bGlwX3dpZHRoKTsKKy0gICAgKm91dF90YWJfcmVjdCA9IHRhYl9yZWN0OworLQorLSAgICBkYy5E ZXN0cm95Q2xpcHBpbmdSZWdpb24oKTsKKy19CistCistd3hSZWN0IERyYXdTaW1wbGVBcnJvdyh3 eERDJiBkYywKKy0gICAgICAgICAgICAgICAgICAgICAgIEd0a1dpZGdldCAqd2lkZ2V0LAorLSAg ICAgICAgICAgICAgICAgICAgICAgaW50IGJ1dHRvbl9zdGF0ZSwKKy0gICAgICAgICAgICAgICAg ICAgICAgIHd4UmVjdCBjb25zdCAmaW5fcmVjdCwKKy0gICAgICAgICAgICAgICAgICAgICAgIGlu dCBvcmllbnRhdGlvbiwKKy0gICAgICAgICAgICAgICAgICAgICAgIEd0a0Fycm93VHlwZSBhcnJv d190eXBlKQorLXsKKy0gICAgaW50IHNjcm9sbF9hcnJvd19obGVuZ3RoLCBzY3JvbGxfYXJyb3df dmxlbmd0aDsKKy0gICAgZ3RrX3dpZGdldF9zdHlsZV9nZXQod2lkZ2V0LAorLSAgICAgICAgICAg ICAgICAgICAgICAgICAic2Nyb2xsLWFycm93LWhsZW5ndGgiLCAmc2Nyb2xsX2Fycm93X2hsZW5n dGgsCistICAgICAgICAgICAgICAgICAgICAgICAgICJzY3JvbGwtYXJyb3ctdmxlbmd0aCIsICZz Y3JvbGxfYXJyb3dfdmxlbmd0aCwKKy0gICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCk7Cist CistICAgIEd0a1N0YXRlVHlwZSBzdGF0ZTsKKy0gICAgR3RrU2hhZG93VHlwZSBzaGFkb3c7Cist ICAgIEJ1dHRvblN0YXRlQW5kU2hhZG93KGJ1dHRvbl9zdGF0ZSwgc3RhdGUsIHNoYWRvdyk7Cist CistICAgIHd4UmVjdCBvdXRfcmVjdDsKKy0KKy0gICAgaWYgKG9yaWVudGF0aW9uID09IHd4TEVG VCkKKy0gICAgICAgIG91dF9yZWN0LnggPSBpbl9yZWN0Lng7CistICAgIGVsc2UKKy0gICAgICAg IG91dF9yZWN0LnggPSBpbl9yZWN0LnggKyBpbl9yZWN0LndpZHRoIC0gc2Nyb2xsX2Fycm93X2hs ZW5ndGg7CistICAgIG91dF9yZWN0LnkgPSAoaW5fcmVjdC55ICsgaW5fcmVjdC5oZWlnaHQgLSAz ICogZ2V0X3N0eWxlX25vdGVib29rKCktPnl0aGlja25lc3MgLSBzY3JvbGxfYXJyb3dfdmxlbmd0 aCkgLyAyOworLSAgICBvdXRfcmVjdC53aWR0aCA9IHNjcm9sbF9hcnJvd19obGVuZ3RoOworLSAg ICBvdXRfcmVjdC5oZWlnaHQgPSBzY3JvbGxfYXJyb3dfdmxlbmd0aDsKKy0KKy0jaWYgd3hDSEVD S19WRVJTSU9OKDMsIDAsIDApCistICAgIHd4R1RLRENJbXBsICppbXBsZGMgPSAod3hHVEtEQ0lt cGwqKSBkYy5HZXRJbXBsKCk7CistICAgIEdka1dpbmRvdyogcFdpbiA9IGltcGxkYy0+R2V0R0RL V2luZG93KCk7CistI2Vsc2UKKy0gICAgR2RrV2luZG93KiBwV2luID0gZGMuR2V0R0RLV2luZG93 KCk7CistI2VuZGlmCistICAgIGd0a19wYWludF9hcnJvdyAoZ2V0X3N0eWxlX2J1dHRvbigpLCBw V2luLCBzdGF0ZSwgc2hhZG93LCBudWxscHRyLCB3aWRnZXQsICJub3RlYm9vayIsCistICAgICAg ICAgICAgICAgICAgICAgYXJyb3dfdHlwZSwgVFJVRSwgb3V0X3JlY3QueCwgb3V0X3JlY3QueSwg b3V0X3JlY3Qud2lkdGgsIG91dF9yZWN0LmhlaWdodCk7CistCistICAgIHJldHVybiBvdXRfcmVj dDsKKy19CistCistdm9pZCBOYlN0eWxlR1RLOjpEcmF3QnV0dG9uKHd4REMmIGRjLCB3eFdpbmRv dyogd25kLAorLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB3eFJlY3QmIGluX3Jl Y3QsCistICAgICAgICAgICAgICAgICAgICAgICAgICAgIGludCBiaXRtYXBfaWQsCistICAgICAg ICAgICAgICAgICAgICAgICAgICAgIGludCBidXR0b25fc3RhdGUsCistICAgICAgICAgICAgICAg ICAgICAgICAgICAgIGludCBvcmllbnRhdGlvbiwKKy0gICAgICAgICAgICAgICAgICAgICAgICAg ICAgd3hSZWN0KiBvdXRfcmVjdCkKKy17CistICAgIEd0a1dpZGdldCAqd2lkZ2V0ID0gd25kLT5H ZXRIYW5kbGUoKTsKKy0gICAgd3hSZWN0IHJlY3QgPSBpbl9yZWN0OworLSAgICBpZiAobV9mbGFn cyAmd3hBVUlfTkJfQk9UVE9NKQorLSAgICAgICAgcmVjdC55ICs9IDIgKiBnZXRfc3R5bGVfYnV0 dG9uKCktPnl0aGlja25lc3M7CistCistICAgIHN3aXRjaCAoYml0bWFwX2lkKQorLSAgICB7Cist ICAgICAgICBjYXNlIHd4QVVJX0JVVFRPTl9DTE9TRToKKy0gICAgICAgICAgICByZWN0LnkgLT0g MiAqIGdldF9zdHlsZV9idXR0b24oKS0+eXRoaWNrbmVzczsKKy0gICAgICAgICAgICByZWN0ID0g RHJhd0Nsb3NlQnV0dG9uKGRjLCB3aWRnZXQsIGJ1dHRvbl9zdGF0ZSwgcmVjdCwgb3JpZW50YXRp b24sIE5VTEwpOworLSAgICAgICAgICAgIGJyZWFrOworLQorLSAgICAgICAgY2FzZSB3eEFVSV9C VVRUT05fTEVGVDoKKy0gICAgICAgICAgICByZWN0ID0gRHJhd1NpbXBsZUFycm93KGRjLCB3aWRn ZXQsIGJ1dHRvbl9zdGF0ZSwgcmVjdCwgb3JpZW50YXRpb24sIEdUS19BUlJPV19MRUZUKTsKKy0g ICAgICAgICAgICBicmVhazsKKy0KKy0gICAgICAgIGNhc2Ugd3hBVUlfQlVUVE9OX1JJR0hUOgor LSAgICAgICAgICAgIHJlY3QgPSBEcmF3U2ltcGxlQXJyb3coZGMsIHdpZGdldCwgYnV0dG9uX3N0 YXRlLCByZWN0LCBvcmllbnRhdGlvbiwgR1RLX0FSUk9XX1JJR0hUKTsKKy0gICAgICAgICAgICBi cmVhazsKKy0KKy0gICAgICAgIGNhc2Ugd3hBVUlfQlVUVE9OX1dJTkRPV0xJU1Q6CistICAgICAg ICAgICAgeworLSAgICAgICAgICAgICAgICByZWN0LmhlaWdodCAtPSA0ICogZ2V0X3N0eWxlX2J1 dHRvbigpLT55dGhpY2tuZXNzOworLSAgICAgICAgICAgICAgICByZWN0LndpZHRoID0gcmVjdC5o ZWlnaHQ7CistICAgICAgICAgICAgICAgIHJlY3QueCA9IGluX3JlY3QueCArIGluX3JlY3Qud2lk dGggLSByZWN0LndpZHRoOworLQorLSAgICAgICAgICAgICAgICBpZiAoYnV0dG9uX3N0YXRlID09 IHd4QVVJX0JVVFRPTl9TVEFURV9IT1ZFUikKKy0gICAgICAgICAgICAgICAgICAgIHd4UmVuZGVy ZXJOYXRpdmU6OkdldCgpLkRyYXdDb21ib0JveERyb3BCdXR0b24od25kLCBkYywgcmVjdCwgd3hD T05UUk9MX0NVUlJFTlQpOworLSAgICAgICAgICAgICAgICBlbHNlIGlmIChidXR0b25fc3RhdGUg PT0gd3hBVUlfQlVUVE9OX1NUQVRFX1BSRVNTRUQpCistICAgICAgICAgICAgICAgICAgICB3eFJl bmRlcmVyTmF0aXZlOjpHZXQoKS5EcmF3Q29tYm9Cb3hEcm9wQnV0dG9uKHduZCwgZGMsIHJlY3Qs IHd4Q09OVFJPTF9QUkVTU0VEKTsKKy0gICAgICAgICAgICAgICAgZWxzZQorLSAgICAgICAgICAg ICAgICAgICAgd3hSZW5kZXJlck5hdGl2ZTo6R2V0KCkuRHJhd0Ryb3BBcnJvdyh3bmQsIGRjLCBy ZWN0KTsKKy0gICAgICAgICAgICB9CistICAgICAgICAgICAgYnJlYWs7CistCistICAgICAgICBk ZWZhdWx0OgorLSAgICAgICAgICAgIGJyZWFrOworLSAgICB9CistCistICAgICpvdXRfcmVjdCA9 IHJlY3Q7CistfQorLQorLQorLWludCBOYlN0eWxlR1RLOjpHZXRCZXN0VGFiQ3RybFNpemUod3hX aW5kb3cqIHduZCwKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHd4 QXVpTm90ZWJvb2tQYWdlQXJyYXkmIHBhZ2VzLAorLSAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgY29uc3Qgd3hTaXplJiByZXF1aXJlZF9ibXBfc2l6ZSkKKy17CistI2lmIHd4Q0hF Q0tfVkVSU0lPTigzLCAwLCAwKQorLSAgICBTZXRNZWFzdXJpbmdGb250KG1fbm9ybWFsRm9udCk7 CistICAgIFNldFNlbGVjdGVkRm9udChtX25vcm1hbEZvbnQpOworLSNlbHNlCistICAgIFNldE1l YXN1cmluZ0ZvbnQobV9ub3JtYWxfZm9udCk7CistICAgIFNldFNlbGVjdGVkRm9udChtX25vcm1h bF9mb250KTsKKy0jZW5kaWYKKy0gICAgaW50IHRhYl9oZWlnaHQgPSAzICogZ2V0X3N0eWxlX25v dGVib29rKCktPnl0aGlja25lc3MgKyB3eEF1aURlZmF1bHRUYWJBcnQ6OkdldEJlc3RUYWJDdHJs U2l6ZSh3bmQsIHBhZ2VzLCByZXF1aXJlZF9ibXBfc2l6ZSk7CistICAgIHJldHVybiB0YWJfaGVp Z2h0OworLX0KKy0KKy13eFNpemUgTmJTdHlsZUdUSzo6R2V0VGFiU2l6ZSh3eERDJiBkYywKKy0g ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3eFdpbmRvdyogd25kLAorLSAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIGNvbnN0IHd4U3RyaW5nJiBjYXB0aW9uLAorLSAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIGNvbnN0IHd4Qml0bWFwJiBiaXRtYXAsCistICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgYm9vbCBhY3RpdmUsCistICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgaW50IGNsb3NlX2J1dHRvbl9zdGF0ZSwKKy0gICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBpbnQqIHhfZXh0ZW50KQorLXsKKy0gICAgd3hTaXplIHMgPSB3eEF1aURlZmF1bHRUYWJB cnQ6OkdldFRhYlNpemUoZGMsIHduZCwgY2FwdGlvbiwgYml0bWFwLCBhY3RpdmUsIGNsb3NlX2J1 dHRvbl9zdGF0ZSwgeF9leHRlbnQpOworLQorLSAgICBpbnQgb3ZlcmxhcCA9IDA7CistICAgIGd0 a193aWRnZXRfc3R5bGVfZ2V0ICh3bmQtPkdldEhhbmRsZSgpLAorLSAgICAgICAgImZvY3VzLWxp bmUtd2lkdGgiLCAmb3ZlcmxhcCwKKy0gICAgICAgIE5VTEwpOworLSAgICAqeF9leHRlbnQgLT0g b3ZlcmxhcDsKKy0gICAgcmV0dXJuIHM7CistfQorLQorLSNlbmRpZiAvLyAjaWYgZGVmaW5lZChf X1dYR1RLX18pICYmIChVU0VfR1RLX05PVEVCT09LKSAmJiAhd3hDSEVDS19WRVJTSU9OKDMsIDAs IDApCitJbmRleDogc3JjL3NyYy9wcm9qZWN0bWFuYWdlcnVpLmNwcAorPT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorLS0t IGEvc3JjL3NyYy9wcm9qZWN0bWFuYWdlcnVpLmNwcAkocmV2aXNpb24gMTI1NzkpCisrKysgYi9z cmMvc3JjL3Byb2plY3RtYW5hZ2VydWkuY3BwCShyZXZpc2lvbiAxMjU4MCkKK0BAIC0xODc1LDEx ICsxODc1LDcgQEAKKyB7CisgICAgIHNpemVfdCBvcGVyYXRvcigpKGNvbnN0IHd4U3RyaW5nJiBz KSBjb25zdAorICAgICB7CistI2lmIHd4Q0hFQ0tfVkVSU0lPTigzLCAwLCAwKQorICAgICAgICAg cmV0dXJuIHN0ZDo6aGFzaDxzdGQ6OndzdHJpbmc+KCkocy5Ub1N0ZFdzdHJpbmcoKSk7CistI2Vs c2UKKy0gICAgICAgIHJldHVybiBzdGQ6Omhhc2g8c3RkOjp3c3RyaW5nPigpKHMud2Nfc3RyKCkp OworLSNlbmRpZiAvLyB3eENIRUNLX1ZFUlNJT04KKyAgICAgfQorIH07CisgCmRpZmYgLS1naXQg YS9zcmNwa2dzL2NvZGVibG9ja3MvcGF0Y2hlcy8wMDAucjEyNzA3LnBhdGNoIGIvc3JjcGtncy9j b2RlYmxvY2tzL3BhdGNoZXMvMDAwLnIxMjcwNy5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NApp bmRleCAwMDAwMDAwMDAwMDAwLi5iY2E5NzRmYmU1NzcwCi0tLSAvZGV2L251bGwKKysrIGIvc3Jj cGtncy9jb2RlYmxvY2tzL3BhdGNoZXMvMDAwLnIxMjcwNy5wYXRjaApAQCAtMCwwICsxLDEyMCBA QAorSW5kZXg6IHNyYy9zcmMvbm90ZWJvb2tzdHlsZXMuY3BwCis9PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CistLS0gYS9z cmMvc3JjL25vdGVib29rc3R5bGVzLmNwcAkocmV2aXNpb24gMTI3MDYpCisrKysgYi9zcmMvc3Jj L25vdGVib29rc3R5bGVzLmNwcAkocmV2aXNpb24gMTI3MDcpCitAQCAtMTI0LDggKzEyNCwxNiBA QAorICAgICBpZiAocGFnZS5iaXRtYXAuSXNPaygpKQorICAgICB7CisgICAgICAgICBiaXRtYXBf b2Zmc2V0ID0gdGFiX3ggKyA4OworKyAgICAgICAgLy8gZHJhdyBiaXRtYXAKKysjaWYgd3hDSEVD S19WRVJTSU9OKDMsIDEsIDYpCisrICAgICAgICBjb25zdCB3eEJpdG1hcCBibXAocGFnZS5iaXRt YXAuR2V0Qml0bWFwRm9yKHduZCkpOworKyAgICAgICAgZGMuRHJhd0JpdG1hcChibXAsCisrICAg ICAgICAgICAgICAgICAgICAgIGJpdG1hcF9vZmZzZXQsCisrICAgICAgICAgICAgICAgICAgICAg IGRyYXduX3RhYl95b2ZmICsgKGRyYXduX3RhYl9oZWlnaHQvMikgLSAoYm1wLkdldEhlaWdodCgp LzIpLAorKyAgICAgICAgICAgICAgICAgICAgICB0cnVlKTsKKyAKKy0gICAgICAgIC8vIGRyYXcg Yml0bWFwCisrICAgICAgICB0ZXh0X29mZnNldCA9IGJpdG1hcF9vZmZzZXQgKyBibXAuR2V0V2lk dGgoKTsKKysjZWxzZQorICAgICAgICAgZGMuRHJhd0JpdG1hcChwYWdlLmJpdG1hcCwKKyAgICAg ICAgICAgICAgICAgICAgICAgYml0bWFwX29mZnNldCwKKyAgICAgICAgICAgICAgICAgICAgICAg ZHJhd25fdGFiX3lvZmYgKyAoZHJhd25fdGFiX2hlaWdodC8yKSAtIChwYWdlLmJpdG1hcC5HZXRI ZWlnaHQoKS8yKSwKK0BAIC0xMzIsNiArMTQwLDcgQEAKKyAgICAgICAgICAgICAgICAgICAgICAg dHJ1ZSk7CisgCisgICAgICAgICB0ZXh0X29mZnNldCA9IGJpdG1hcF9vZmZzZXQgKyBwYWdlLmJp dG1hcC5HZXRXaWR0aCgpOworKyNlbmRpZgorICAgICAgICAgdGV4dF9vZmZzZXQgKz0gMzsgLy8g Yml0bWFwIHBhZGRpbmcKKyAgICAgfQorICAgICAgZWxzZQorQEAgLTE2MSwxMyArMTcwLDIzIEBA CisgICAgIC8vIGRyYXcgJ3gnIG9uIHRhYiAoaWYgZW5hYmxlZCkKKyAgICAgaWYgKGNsb3NlX2J1 dHRvbl9zdGF0ZSAhPSB3eEFVSV9CVVRUT05fU1RBVEVfSElEREVOKQorICAgICB7CistICAgICAg ICBpbnQgY2xvc2VfYnV0dG9uX3dpZHRoID0gbV9hY3RpdmVDbG9zZUJtcC5HZXRXaWR0aCgpOwor LSAgICAgICAgd3hCaXRtYXAgYm1wID0gbV9kaXNhYmxlZENsb3NlQm1wOworKyAgICAgICAgd3hC aXRtYXAgYm1wOworIAorKyNpZiB3eENIRUNLX1ZFUlNJT04oMywgMSwgNikKKyAgICAgICAgIGlm ICgoY2xvc2VfYnV0dG9uX3N0YXRlID09IHd4QVVJX0JVVFRPTl9TVEFURV9IT1ZFUikgfHwKKyAg ICAgICAgICAgICAgICAgICAgIChjbG9zZV9idXR0b25fc3RhdGUgPT0gd3hBVUlfQlVUVE9OX1NU QVRFX1BSRVNTRUQpKQorKyAgICAgICAgICAgIGJtcCA9IG1fYWN0aXZlQ2xvc2VCbXAuR2V0Qml0 bWFwRm9yKHduZCk7CisrICAgICAgICBlbHNlCisrICAgICAgICAgICAgYm1wID0gbV9kaXNhYmxl ZENsb3NlQm1wLkdldEJpdG1hcEZvcih3bmQpOworKyNlbHNlCisrICAgICAgICBpZiAoKGNsb3Nl X2J1dHRvbl9zdGF0ZSA9PSB3eEFVSV9CVVRUT05fU1RBVEVfSE9WRVIpIHx8CisrICAgICAgICAg ICAgICAgICAgICAoY2xvc2VfYnV0dG9uX3N0YXRlID09IHd4QVVJX0JVVFRPTl9TVEFURV9QUkVT U0VEKSkKKyAgICAgICAgICAgICBibXAgPSBtX2FjdGl2ZUNsb3NlQm1wOworKyAgICAgICAgZWxz ZQorKyAgICAgICAgICAgIGJtcCA9IG1fZGlzYWJsZWRDbG9zZUJtcDsKKysjZW5kaWYKKyAKKysg ICAgICAgIGNvbnN0IGludCBjbG9zZV9idXR0b25fd2lkdGggPSBibXAuR2V0V2lkdGgoKTsKKyAg ICAgICAgIHd4UmVjdCByZWN0KHRhYl94ICsgdGFiX3dpZHRoIC0gY2xvc2VfYnV0dG9uX3dpZHRo IC0gMywKKyAgICAgICAgICAgICAgICAgICAgIGRyYXduX3RhYl95b2ZmICsgKGRyYXduX3RhYl9o ZWlnaHQgLyAyKSAtIChibXAuR2V0SGVpZ2h0KCkgLyAyKSwKKyAgICAgICAgICAgICAgICAgICAg IGNsb3NlX2J1dHRvbl93aWR0aCwgdGFiX2hlaWdodCk7CitAQCAtMjg1LDExICszMDQsMjAgQEAK KyAgICAgaW50IHRleHRfb2Zmc2V0ID0gdGFiX3ggKyA4OworIAorICAgICBpbnQgYml0bWFwX29m ZnNldCA9IDA7CisrCisgICAgIGlmIChwYWdlLmJpdG1hcC5Jc09rKCkpCisgICAgIHsKKyAgICAg ICAgIGJpdG1hcF9vZmZzZXQgPSB0YWJfeCArIDg7CisrICAgICAgICAvLyBkcmF3IGJpdG1hcAor KyNpZiB3eENIRUNLX1ZFUlNJT04oMywgMSwgNikKKysgICAgICAgIGNvbnN0IHd4Qml0bWFwIGJt cChwYWdlLmJpdG1hcC5HZXRCaXRtYXBGb3Iod25kKSk7CisrICAgICAgICBkYy5EcmF3Qml0bWFw KGJtcCwKKysgICAgICAgICAgICAgICAgICAgICAgYml0bWFwX29mZnNldCwKKysgICAgICAgICAg ICAgICAgICAgICAgZHJhd25fdGFiX3lvZmYgKyAoZHJhd25fdGFiX2hlaWdodC8yKSAtIChibXAu R2V0SGVpZ2h0KCkvMiksCisrICAgICAgICAgICAgICAgICAgICAgIHRydWUpOworIAorLSAgICAg ICAgLy8gZHJhdyBiaXRtYXAKKysgICAgICAgIHRleHRfb2Zmc2V0ID0gYml0bWFwX29mZnNldCAr IGJtcC5HZXRXaWR0aCgpOworKyNlbHNlCisgICAgICAgICBkYy5EcmF3Qml0bWFwKHBhZ2UuYml0 bWFwLAorICAgICAgICAgICAgICAgICAgICAgICBiaXRtYXBfb2Zmc2V0LAorICAgICAgICAgICAg ICAgICAgICAgICBkcmF3bl90YWJfeW9mZiArIChkcmF3bl90YWJfaGVpZ2h0LzIpIC0gKHBhZ2Uu Yml0bWFwLkdldEhlaWdodCgpLzIpLAorQEAgLTI5Niw2ICszMjQsNyBAQAorICAgICAgICAgICAg ICAgICAgICAgICB0cnVlKTsKKyAKKyAgICAgICAgIHRleHRfb2Zmc2V0ID0gYml0bWFwX29mZnNl dCArIHBhZ2UuYml0bWFwLkdldFdpZHRoKCk7CisrI2VuZGlmCisgICAgICAgICB0ZXh0X29mZnNl dCArPSAzOyAvLyBiaXRtYXAgcGFkZGluZworICAgICB9CisgICAgICBlbHNlCitAQCAtMzAzLDcg KzMzMiw2IEBACisgICAgICAgICB0ZXh0X29mZnNldCA9IHRhYl94ICsgODsKKyAgICAgfQorIAor LQorICAgICAvLyBpZiB0aGUgY2FwdGlvbiBpcyBlbXB0eSwgbWVhc3VyZSBzb21lIHRlbXBvcmFy eSB0ZXh0CisgICAgIHd4U3RyaW5nIGNhcHRpb24gPSBwYWdlLmNhcHRpb247CisgICAgIGlmIChj YXB0aW9uLmVtcHR5KCkpCitAQCAtMzI1LDEzICszNTMsMjMgQEAKKyAgICAgLy8gZHJhdyAneCcg b24gdGFiIChpZiBlbmFibGVkKQorICAgICBpZiAoY2xvc2VfYnV0dG9uX3N0YXRlICE9IHd4QVVJ X0JVVFRPTl9TVEFURV9ISURERU4pCisgICAgIHsKKy0gICAgICAgIGludCBjbG9zZV9idXR0b25f d2lkdGggPSBtX2FjdGl2ZUNsb3NlQm1wLkdldFdpZHRoKCk7CistICAgICAgICB3eEJpdG1hcCBi bXAgPSBtX2Rpc2FibGVkQ2xvc2VCbXA7CisrICAgICAgICB3eEJpdG1hcCBibXA7CisgCisrI2lm IHd4Q0hFQ0tfVkVSU0lPTigzLCAxLCA2KQorICAgICAgICAgaWYgKChjbG9zZV9idXR0b25fc3Rh dGUgPT0gd3hBVUlfQlVUVE9OX1NUQVRFX0hPVkVSKSB8fAorICAgICAgICAgICAgICAgICAgICAg KGNsb3NlX2J1dHRvbl9zdGF0ZSA9PSB3eEFVSV9CVVRUT05fU1RBVEVfUFJFU1NFRCkpCisrICAg ICAgICAgICAgYm1wID0gbV9hY3RpdmVDbG9zZUJtcC5HZXRCaXRtYXBGb3Iod25kKTsKKysgICAg ICAgIGVsc2UKKysgICAgICAgICAgICBibXAgPSBtX2Rpc2FibGVkQ2xvc2VCbXAuR2V0Qml0bWFw Rm9yKHduZCk7CisrI2Vsc2UKKysgICAgICAgIGlmICgoY2xvc2VfYnV0dG9uX3N0YXRlID09IHd4 QVVJX0JVVFRPTl9TVEFURV9IT1ZFUikgfHwKKysgICAgICAgICAgICAgICAgICAgIChjbG9zZV9i dXR0b25fc3RhdGUgPT0gd3hBVUlfQlVUVE9OX1NUQVRFX1BSRVNTRUQpKQorICAgICAgICAgICAg IGJtcCA9IG1fYWN0aXZlQ2xvc2VCbXA7CisrICAgICAgICBlbHNlCisrICAgICAgICAgICAgYm1w ID0gbV9kaXNhYmxlZENsb3NlQm1wOworKyNlbmRpZgorIAorKyAgICAgICAgY29uc3QgaW50IGNs b3NlX2J1dHRvbl93aWR0aCA9IGJtcC5HZXRXaWR0aCgpOworICAgICAgICAgd3hSZWN0IHJlY3Qo dGFiX3ggKyB0YWJfd2lkdGggLSBjbG9zZV9idXR0b25fd2lkdGggLSAzLAorICAgICAgICAgICAg ICAgICAgICAgZHJhd25fdGFiX3lvZmYgKyAoZHJhd25fdGFiX2hlaWdodCAvIDIpIC0gKGJtcC5H ZXRIZWlnaHQoKSAvIDIpLAorICAgICAgICAgICAgICAgICAgICAgY2xvc2VfYnV0dG9uX3dpZHRo LCB0YWJfaGVpZ2h0KTsKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvY29kZWJsb2Nrcy9wYXRjaGVzL3d4 LTMuMi5wYXRjaCBiL3NyY3BrZ3MvY29kZWJsb2Nrcy9wYXRjaGVzL3d4LTMuMi5wYXRjaApuZXcg ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwLi4wNDAwY2U2MzQ2MTc4Ci0tLSAv ZGV2L251bGwKKysrIGIvc3JjcGtncy9jb2RlYmxvY2tzL3BhdGNoZXMvd3gtMy4yLnBhdGNoCkBA IC0wLDAgKzEsMjEgQEAKK0luZGV4OiBjb2RlYmxvY2tzLTIwLjAzL3NyYy9zZGsvc2NyaXB0aW5n L2JpbmRpbmdzL3NjX3d4dHlwZXMuY3BwCis9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CistLS0gY29kZWJsb2Nrcy0yMC4w My5vcmlnL3NyYy9zZGsvc2NyaXB0aW5nL2JpbmRpbmdzL3NjX3d4dHlwZXMuY3BwCisrKysgY29k ZWJsb2Nrcy0yMC4wMy9zcmMvc2RrL3NjcmlwdGluZy9iaW5kaW5ncy9zY193eHR5cGVzLmNwcAor QEAgLTMyMiw2ICszMjIsNyBAQCBuYW1lc3BhY2UgU2NyaXB0QmluZGluZ3MKKyAgICAgICAgIHR5 cGVkZWYgYm9vbCh3eEZpbGVOYW1lOjoqV1hGTl9TRVRDV0QpKCk7CisgI2VuZGlmCisgICAgICAg ICB0eXBlZGVmIGJvb2wod3hGaWxlTmFtZTo6KldYRk5fSVNGSUxFV1JJVEVBQkxFKSgpY29uc3Q7 CisrICAgICAgICB0eXBlZGVmIGJvb2wod3hGaWxlTmFtZTo6KldYRk5fTk9STUFMSVpFKShpbnQs IGNvbnN0IHd4U3RyaW5nJiwgd3hQYXRoRm9ybWF0KTsKKyAKKyAgICAgICAgIFNxUGx1czo6U1FD bGFzc0RlZjx3eEZpbGVOYW1lPigid3hGaWxlTmFtZSIpLgorICAgICAgICAgICAgICAgICBlbXB0 eUN0b3IoKS4KK0BAIC0zNTQsNyArMzU1LDcgQEAgbmFtZXNwYWNlIFNjcmlwdEJpbmRpbmdzCisg ICAgICAgICAgICAgICAgIGZ1bmMoJnd4RmlsZU5hbWU6OklzRGlyLCAiSXNEaXIiKS4KKyAgICAg ICAgICAgICAgICAgZnVuYygmd3hGaWxlTmFtZTo6TWFrZUFic29sdXRlLCAiTWFrZUFic29sdXRl IikuCisgICAgICAgICAgICAgICAgIGZ1bmMoJnd4RmlsZU5hbWU6Ok1ha2VSZWxhdGl2ZVRvLCAi TWFrZVJlbGF0aXZlVG8iKS4KKy0gICAgICAgICAgICAgICAgZnVuYygmd3hGaWxlTmFtZTo6Tm9y bWFsaXplLCAiTm9ybWFsaXplIikuCisrICAgICAgICAgICAgICAgIGZ1bmM8V1hGTl9OT1JNQUxJ WkU+KCZ3eEZpbGVOYW1lOjpOb3JtYWxpemUsICJOb3JtYWxpemUiKS4KKyAgICAgICAgICAgICAg ICAgZnVuYygmd3hGaWxlTmFtZTo6UHJlcGVuZERpciwgIlByZXBlbmREaXIiKS4KKyAgICAgICAg ICAgICAgICAgZnVuYygmd3hGaWxlTmFtZTo6UmVtb3ZlRGlyLCAiUmVtb3ZlRGlyIikuCisgICAg ICAgICAgICAgICAgIGZ1bmMoJnd4RmlsZU5hbWU6OlJlbW92ZUxhc3REaXIsICJSZW1vdmVMYXN0 RGlyIikuCmRpZmYgLS1naXQgYS9zcmNwa2dzL2NvZGVibG9ja3MvdGVtcGxhdGUgYi9zcmNwa2dz L2NvZGVibG9ja3MvdGVtcGxhdGUKaW5kZXggNmM2YzMxZGZkM2UxZS4uNDY0NjZkOTkwYmVkMSAx MDA2NDQKLS0tIGEvc3JjcGtncy9jb2RlYmxvY2tzL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvY29k ZWJsb2Nrcy90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2Nv ZGVibG9ja3MnCiBwa2duYW1lPWNvZGVibG9ja3MKIHZlcnNpb249MjAuMDMKLXJldmlzaW9uPTUK K3JldmlzaW9uPTYKIGJ1aWxkX3N0eWxlPWdudS1jb25maWd1cmUKIGNvbmZpZ3VyZV9hcmdzPSIt LXdpdGgtd3gtY29uZmlnPXd4LWNvbmZpZy1ndGszIC0td2l0aC1jb250cmliLXBsdWdpbnMKICAt LXdpdGgtYm9vc3Q9JHtYQlBTX0NST1NTX0JBU0V9L3VzcgoKRnJvbSA0MzdhM2QzOGFiMjRkY2U1 MTY1MmI5YzQxYTY3NGZkM2EzYjk3NDhiIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiAi QW5kcmV3IEouIEhlc2ZvcmQiIDxhamhAc2lkZWJhbmQub3JnPgpEYXRlOiBNb24sIDI1IFNlcCAy MDIzIDAwOjE4OjIwIC0wNDAwClN1YmplY3Q6IFtQQVRDSCAyMC80NF0gY29kZWxpdGU6IHJlYnVp bGQgd2l0aCB3eFdpZGdldHMtZ3RrMy0zLjIuMi4xCgotLS0KIHNyY3BrZ3MvY29kZWxpdGUvcGF0 Y2hlcy93eDMyLnBhdGNoIHwgMTMxICsrKysrKysrKysrKysrKysrKysrKysrKysrKysKIHNyY3Br Z3MvY29kZWxpdGUvdGVtcGxhdGUgICAgICAgICAgIHwgICAyICstCiAyIGZpbGVzIGNoYW5nZWQs IDEzMiBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9uKC0pCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3Jj cGtncy9jb2RlbGl0ZS9wYXRjaGVzL3d4MzIucGF0Y2gKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2Nv ZGVsaXRlL3BhdGNoZXMvd3gzMi5wYXRjaCBiL3NyY3BrZ3MvY29kZWxpdGUvcGF0Y2hlcy93eDMy LnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAuLmY1NTM1ZWJh ZjFiM2IKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL2NvZGVsaXRlL3BhdGNoZXMvd3gzMi5w YXRjaApAQCAtMCwwICsxLDEzMSBAQAorRnJvbSA0MjdhZjM1OGQ0MWRlYjAwYTQ2MjhlNWIzOWM2 M2E5MjljZWY4OTRhIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQorRnJvbTogRXJhbiBJZnJhaCA8 ZXJhbkBjb2RlbGl0ZS5vcmc+CitEYXRlOiBGcmksIDEwIEp1biAyMDIyIDEwOjE1OjUyICswMzAw CitTdWJqZWN0OiBbUEFUQ0hdIG1hY29zOiBodW5zcGVsbDogdXNlIHRoZSBsaWJyYXJ5IGZyb20g YnJldyBmaXhlZCBidWlsZAorIGFnYWluc3Qgd3gzLjEuNyB0ZW1wb3Jhcmx5OiBkaXNhYmxlIGJ1 aWxkaW5nIExMREIgb24gbWFjb3MKKworLS0tCisgQ01ha2VMaXN0cy50eHQgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgfCAgIDUgKy0KKyBTcGVsbENoZWNrZXIvQ01ha2VMaXN0cy50eHQg ICAgICAgICAgICAgICAgICB8ICAyNyArLQorIHNkay9odW5zcGVsbC9pbmNsdWRlL2FmZmVudHJ5 Lmh4eCAgICAgICAgICAgIHwgMTQ0IC0tLS0tLS0tLS0tCisgc2RrL2h1bnNwZWxsL2luY2x1ZGUv YWZmaXhtZ3IuaHh4ICAgICAgICAgICAgfCAyNTIgLS0tLS0tLS0tLS0tLS0tLS0tLQorIHNkay9o dW5zcGVsbC9pbmNsdWRlL2F0eXBlcy5oeHggICAgICAgICAgICAgIHwgMTA3IC0tLS0tLS0tCisg c2RrL2h1bnNwZWxsL2luY2x1ZGUvYmFzZWFmZml4Lmh4eCAgICAgICAgICAgfCAgMzIgLS0tCisg c2RrL2h1bnNwZWxsL2luY2x1ZGUvY3N1dGlsLmh4eCAgICAgICAgICAgICAgfCAyMjMgLS0tLS0t LS0tLS0tLS0tLQorIHNkay9odW5zcGVsbC9pbmNsdWRlL2RpY3RtZ3IuaHh4ICAgICAgICAgICAg IHwgIDM5IC0tLQorIHNkay9odW5zcGVsbC9pbmNsdWRlL2ZpbGVtZ3IuaHh4ICAgICAgICAgICAg IHwgIDI4IC0tLQorIHNkay9odW5zcGVsbC9pbmNsdWRlL2hhc2htZ3IuaHh4ICAgICAgICAgICAg IHwgIDY5IC0tLS0tCisgc2RrL2h1bnNwZWxsL2luY2x1ZGUvaHR5cGVzLmh4eCAgICAgICAgICAg ICAgfCAgMzIgLS0tCisgc2RrL2h1bnNwZWxsL2luY2x1ZGUvaHVuc3BlbGwuaHh4ICAgICAgICAg ICAgfCAxODQgLS0tLS0tLS0tLS0tLS0KKyBzZGsvaHVuc3BlbGwvaW5jbHVkZS9odW56aXAuaHh4 ICAgICAgICAgICAgICB8ICA0NyAtLS0tCisgc2RrL2h1bnNwZWxsL2luY2x1ZGUvbGFuZ251bS5o eHggICAgICAgICAgICAgfCAgMzggLS0tCisgc2RrL2h1bnNwZWxsL2luY2x1ZGUvcGhvbmV0Lmh4 eCAgICAgICAgICAgICAgfCAgNTIgLS0tLQorIHNkay9odW5zcGVsbC9pbmNsdWRlL3JlcGxpc3Qu aHh4ICAgICAgICAgICAgIHwgIDMwIC0tLQorIHNkay9odW5zcGVsbC9pbmNsdWRlL3N1Z2dlc3Rt Z3IuaHh4ICAgICAgICAgIHwgMTE1IC0tLS0tLS0tLQorIHNkay9odW5zcGVsbC9pbmNsdWRlL3df Y2hhci5oeHggICAgICAgICAgICAgIHwgIDIxIC0tCisgc2RrL2h1bnNwZWxsL2xpYi9vc3gvbGli aHVuc3BlbGwtMS4zLjAuZHlsaWIgfCBCaW4gMzYzODc2IC0+IDAgYnl0ZXMKKyB3eGNyYWZ0ZXIv bXl4aF9wcm9wZ3JpZC5jcHAgICAgICAgICAgICAgICAgICB8ICAzMiArKy0KKyAyMCBmaWxlcyBj aGFuZ2VkLCAzNiBpbnNlcnRpb25zKCspLCAxNDQxIGRlbGV0aW9ucygtKQorIGRlbGV0ZSBtb2Rl IDEwMDY0NCBzZGsvaHVuc3BlbGwvaW5jbHVkZS9hZmZlbnRyeS5oeHgKKyBkZWxldGUgbW9kZSAx MDA2NDQgc2RrL2h1bnNwZWxsL2luY2x1ZGUvYWZmaXhtZ3IuaHh4CisgZGVsZXRlIG1vZGUgMTAw NjQ0IHNkay9odW5zcGVsbC9pbmNsdWRlL2F0eXBlcy5oeHgKKyBkZWxldGUgbW9kZSAxMDA2NDQg c2RrL2h1bnNwZWxsL2luY2x1ZGUvYmFzZWFmZml4Lmh4eAorIGRlbGV0ZSBtb2RlIDEwMDY0NCBz ZGsvaHVuc3BlbGwvaW5jbHVkZS9jc3V0aWwuaHh4CisgZGVsZXRlIG1vZGUgMTAwNjQ0IHNkay9o dW5zcGVsbC9pbmNsdWRlL2RpY3RtZ3IuaHh4CisgZGVsZXRlIG1vZGUgMTAwNjQ0IHNkay9odW5z cGVsbC9pbmNsdWRlL2ZpbGVtZ3IuaHh4CisgZGVsZXRlIG1vZGUgMTAwNjQ0IHNkay9odW5zcGVs bC9pbmNsdWRlL2hhc2htZ3IuaHh4CisgZGVsZXRlIG1vZGUgMTAwNjQ0IHNkay9odW5zcGVsbC9p bmNsdWRlL2h0eXBlcy5oeHgKKyBkZWxldGUgbW9kZSAxMDA2NDQgc2RrL2h1bnNwZWxsL2luY2x1 ZGUvaHVuc3BlbGwuaHh4CisgZGVsZXRlIG1vZGUgMTAwNjQ0IHNkay9odW5zcGVsbC9pbmNsdWRl L2h1bnppcC5oeHgKKyBkZWxldGUgbW9kZSAxMDA2NDQgc2RrL2h1bnNwZWxsL2luY2x1ZGUvbGFu Z251bS5oeHgKKyBkZWxldGUgbW9kZSAxMDA2NDQgc2RrL2h1bnNwZWxsL2luY2x1ZGUvcGhvbmV0 Lmh4eAorIGRlbGV0ZSBtb2RlIDEwMDY0NCBzZGsvaHVuc3BlbGwvaW5jbHVkZS9yZXBsaXN0Lmh4 eAorIGRlbGV0ZSBtb2RlIDEwMDY0NCBzZGsvaHVuc3BlbGwvaW5jbHVkZS9zdWdnZXN0bWdyLmh4 eAorIGRlbGV0ZSBtb2RlIDEwMDY0NCBzZGsvaHVuc3BlbGwvaW5jbHVkZS93X2NoYXIuaHh4Cisg ZGVsZXRlIG1vZGUgMTAwNzU1IHNkay9odW5zcGVsbC9saWIvb3N4L2xpYmh1bnNwZWxsLTEuMy4w LmR5bGliCisKK2RpZmYgLS1naXQgYS93eGNyYWZ0ZXIvbXl4aF9wcm9wZ3JpZC5jcHAgYi93eGNy YWZ0ZXIvbXl4aF9wcm9wZ3JpZC5jcHAKK2luZGV4IDk3NGJjNjJmMC4uM2ZjYjM4NDVkIDEwMDY0 NAorLS0tIGEvd3hjcmFmdGVyL215eGhfcHJvcGdyaWQuY3BwCisrKysgYi93eGNyYWZ0ZXIvbXl4 aF9wcm9wZ3JpZC5jcHAKK0BAIC0xLDQgKzEsNSBAQAorICNpbmNsdWRlICJteXhoX3Byb3Bncmlk LmgiCisrCisgI2luY2x1ZGUgPHd4L2RhdGV0aW1lLmg+CisgI2luY2x1ZGUgPHd4L2xvZy5oPgor ICNpbmNsdWRlIDx3eC9wcm9wZ3JpZC9hZHZwcm9wcy5oPgorQEAgLTQ4LDEwICs0OSwxNCBAQCB3 eE9iamVjdCogTXlXeFByb3BHcmlkWG1sSGFuZGxlcjo6RG9DcmVhdGVSZXNvdXJjZSgpCisgCisg ICAgICAgICAvLyBhZGQgdGhlIHNwbGl0dGVyIHByb3BlcnR5IGFmdGVyIHRoZSBjaGlsZHJlbiB3 ZXJlIGFkZGVkCisgICAgICAgICBpbnQgc3BsaXR0ZXJMZWZ0ID0gR2V0Qm9vbCgic3BsaXR0ZXJs ZWZ0Iik7CistICAgICAgICBpZihzcGxpdHRlckxlZnQpIHsgbV9wZ21nci0+R2V0UGFnZSgwKS0+ U2V0U3BsaXR0ZXJMZWZ0KCk7IH0KKysgICAgICAgIGlmKHNwbGl0dGVyTGVmdCkgeworKyAgICAg ICAgICAgIG1fcGdtZ3ItPlNldFNwbGl0dGVyTGVmdCgpOworKyAgICAgICAgfQorIAorICAgICAg ICAgaW50IHNwbGl0dGVyUG9zID0gR2V0TG9uZygic3BsaXR0ZXJwb3MiLCB3eE5PVF9GT1VORCk7 CistICAgICAgICBpZihzcGxpdHRlclBvcyAhPSB3eE5PVF9GT1VORCkgeyBtX3BnbWdyLT5HZXRQ YWdlKDApLT5TZXRTcGxpdHRlclBvc2l0aW9uKHNwbGl0dGVyUG9zKTsgfQorKyAgICAgICAgaWYo c3BsaXR0ZXJQb3MgIT0gd3hOT1RfRk9VTkQpIHsKKysgICAgICAgICAgICBtX3BnbWdyLT5HZXRQ YWdlKDApLT5TZXRTcGxpdHRlclBvc2l0aW9uKHNwbGl0dGVyUG9zKTsKKysgICAgICAgIH0KKyAK KyAgICAgICAgIG1faXNJbnNpZGUgPSBmYWxzZTsKKyAgICAgICAgIHJldHVybiBtX3BnbWdyOwor QEAgLTY3LDcgKzcyLDkgQEAgYm9vbCBNeVd4UHJvcEdyaWRYbWxIYW5kbGVyOjpDYW5IYW5kbGUo d3hYbWxOb2RlKiBub2RlKQorIAorIHZvaWQgTXlXeFByb3BHcmlkWG1sSGFuZGxlcjo6SGFuZGxl UGdQcm9wZXJ0eSh3eFBHUHJvcGVydHkqIHBhcmVudCkKKyB7CistICAgIGlmKCFIYXNQYXJhbSh3 eFQoInByb3B0eXBlIikpKSB7IHJldHVybjsgfQorKyAgICBpZighSGFzUGFyYW0od3hUKCJwcm9w dHlwZSIpKSkgeworKyAgICAgICAgcmV0dXJuOworKyAgICB9CisgCisgICAgIC8vIFByb3BlcnR5 CisgICAgIHd4U3RyaW5nIHByb3B0eXBlID0gR2V0VGV4dCgicHJvcHR5cGUiKTsKK0BAIC0xMTYs NyArMTIzLDkgQEAgdm9pZCBNeVd4UHJvcEdyaWRYbWxIYW5kbGVyOjpIYW5kbGVQZ1Byb3BlcnR5 KHd4UEdQcm9wZXJ0eSogcGFyZW50KQorIAorICAgICB9IGVsc2UgaWYocHJvcHR5cGUgPT0gInd4 RW51bVByb3BlcnR5IikgeworICAgICAgICAgaW50IHNlbCA9IGl0ZW1zLkluZGV4KHZhbHVlKTsK Ky0gICAgICAgIGlmKHNlbCA9PSB3eE5PVF9GT1VORCkgeyBzZWwgPSAwOyB9CisrICAgICAgICBp ZihzZWwgPT0gd3hOT1RfRk9VTkQpIHsKKysgICAgICAgICAgICBzZWwgPSAwOworKyAgICAgICAg fQorIAorICAgICAgICAgcHJvcCA9IERvQXBwZW5kUHJvcGVydHkocGFyZW50LCBuZXcgd3hFbnVt UHJvcGVydHkobGFiZWwsIHd4UEdfTEFCRUwsIGl0ZW1zLCB3eEFycmF5SW50KCksIHNlbCkpOwor IAorQEAgLTE0Myw4ICsxNTIsMTIgQEAgdm9pZCBNeVd4UHJvcEdyaWRYbWxIYW5kbGVyOjpIYW5k bGVQZ1Byb3BlcnR5KHd4UEdQcm9wZXJ0eSogcGFyZW50KQorIAorICAgICAvLyBIYW5kbGUgbmVz dGVkIGNoaWxkcmVuCisgICAgIGlmKHByb3ApIHsKKy0gICAgICAgIGlmKGJnY29sLklzT2soKSkg eyBwcm9wLT5TZXRCYWNrZ3JvdW5kQ29sb3VyKGJnY29sLCBiZ2NvbFJlY3Vyc2UpOyB9CistICAg ICAgICBpZighcHJvcEVkaXRvci5Jc0VtcHR5KCkpIHsgcHJvcC0+U2V0RWRpdG9yKHByb3BFZGl0 b3IpOyB9CisrICAgICAgICBpZihiZ2NvbC5Jc09rKCkpIHsKKysgICAgICAgICAgICBwcm9wLT5T ZXRCYWNrZ3JvdW5kQ29sb3VyKGJnY29sLCBiZ2NvbFJlY3Vyc2UpOworKyAgICAgICAgfQorKyAg ICAgICAgaWYoIXByb3BFZGl0b3IuSXNFbXB0eSgpKSB7CisrICAgICAgICAgICAgcHJvcC0+U2V0 RWRpdG9yKHByb3BFZGl0b3IpOworKyAgICAgICAgfQorICAgICAgICAgcHJvcC0+U2V0SGVscFN0 cmluZyh0aXApOworIAorICAgICAgICAgLy8gQ2hlY2sgdG8gc2VlIGlmIHRoaXMgcHJvcGVydHkg aGFzIGNoaWxkcmVuCitAQCAtMTYwLDEyICsxNzMsMTUgQEAgdm9pZCBNeVd4UHJvcEdyaWRYbWxI YW5kbGVyOjpIYW5kbGVQZ1Byb3BlcnR5KHd4UEdQcm9wZXJ0eSogcGFyZW50KQorIAorIHd4QXJy YXlTdHJpbmcgTXlXeFByb3BHcmlkWG1sSGFuZGxlcjo6R2V0QXJyYXkoY29uc3Qgd3hYbWxOb2Rl KiBub2RlKSBjb25zdAorIHsKKy0gICAgaWYoIW5vZGUpIHJldHVybiB3eEFycmF5U3RyaW5nKCk7 CisrICAgIGlmKCFub2RlKQorKyAgICAgICAgcmV0dXJuIHd4QXJyYXlTdHJpbmcoKTsKKyAKKyAg ICAgd3hBcnJheVN0cmluZyBpdGVtczsKKyAgICAgd3hYbWxOb2RlKiBjaGlsZCA9IG5vZGUtPkdl dENoaWxkcmVuKCk7CisgICAgIHdoaWxlKGNoaWxkKSB7CistICAgICAgICBpZihjaGlsZC0+R2V0 TmFtZSgpID09ICJpdGVtIikgeyBpdGVtcy5BZGQoY2hpbGQtPkdldE5vZGVDb250ZW50KCkpOyB9 CisrICAgICAgICBpZihjaGlsZC0+R2V0TmFtZSgpID09ICJpdGVtIikgeworKyAgICAgICAgICAg IGl0ZW1zLkFkZChjaGlsZC0+R2V0Tm9kZUNvbnRlbnQoKSk7CisrICAgICAgICB9CisgICAgICAg ICBjaGlsZCA9IGNoaWxkLT5HZXROZXh0KCk7CisgICAgIH0KKyAgICAgcmV0dXJuIGl0ZW1zOwor LS0gCisyLjQyLjAKKwpkaWZmIC0tZ2l0IGEvc3JjcGtncy9jb2RlbGl0ZS90ZW1wbGF0ZSBiL3Ny Y3BrZ3MvY29kZWxpdGUvdGVtcGxhdGUKaW5kZXggYjBiZjhmNTc3MzZhNC4uMTQwZmUyMGQwZDI2 YiAxMDA2NDQKLS0tIGEvc3JjcGtncy9jb2RlbGl0ZS90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2Nv ZGVsaXRlL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnY29k ZWxpdGUnCiBwa2duYW1lPWNvZGVsaXRlCiB2ZXJzaW9uPTE2LjAuMAotcmV2aXNpb249MworcmV2 aXNpb249NAogY3JlYXRlX3dya3NyYz15ZXMKIGJ1aWxkX3N0eWxlPWNtYWtlCiBidWlsZF9oZWxw ZXI9Y21ha2Utd3hXaWRnZXRzLWd0azMKCkZyb20gYWFlMDJiMGUwZmMwYjZjMzkyZTIwYTgzNGM3 ZTMzYmZmODk1YzY0MiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogIkFuZHJldyBKLiBI ZXNmb3JkIiA8YWpoQHNpZGViYW5kLm9yZz4KRGF0ZTogTW9uLCAyNSBTZXAgMjAyMyAwMDoxODoy MCAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggMjEvNDRdIGRpZmYtcGRmOiByZWJ1aWxkIHdpdGggd3hX aWRnZXRzLWd0azMtMy4yLjIuMQoKLS0tCiBzcmNwa2dzL2RpZmYtcGRmL3RlbXBsYXRlIHwgMiAr LQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0t Z2l0IGEvc3JjcGtncy9kaWZmLXBkZi90ZW1wbGF0ZSBiL3NyY3BrZ3MvZGlmZi1wZGYvdGVtcGxh dGUKaW5kZXggMWIxYzFiNjkwODE0Yy4uZGZmMWYyMjM2MmNiZCAxMDA2NDQKLS0tIGEvc3JjcGtn cy9kaWZmLXBkZi90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2RpZmYtcGRmL3RlbXBsYXRlCkBAIC0x LDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZGlmZi1wZGYnCiBwa2duYW1lPWRpZmYt cGRmCiB2ZXJzaW9uPTAuNS4xCi1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiBidWlsZF9zdHlsZT1n bnUtY29uZmlndXJlCiBjb25maWd1cmVfYXJncz0iLS13aXRoLXd4LWNvbmZpZz13eC1jb25maWct Z3RrMyIKIGhvc3RtYWtlZGVwZW5kcz0icGtnLWNvbmZpZyIKCkZyb20gMTJkOGNjNjA2OTFhNDM4 ZDFlYzA4YzRiZmE4NTYwZjZmOWY0MWVkZCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTog IkFuZHJldyBKLiBIZXNmb3JkIiA8YWpoQHNpZGViYW5kLm9yZz4KRGF0ZTogTW9uLCAyNSBTZXAg MjAyMyAwMDoxODoyMCAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggMjIvNDRdIGVybGFuZzogcmVidWls ZCB3aXRoIHd4V2lkZ2V0cy1ndGszLTMuMi4yLjEKCi0tLQogc3JjcGtncy9lcmxhbmcvdGVtcGxh dGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkK CmRpZmYgLS1naXQgYS9zcmNwa2dzL2VybGFuZy90ZW1wbGF0ZSBiL3NyY3BrZ3MvZXJsYW5nL3Rl bXBsYXRlCmluZGV4IDQxMWY5MjFmNTlmNDguLjJiNzUyZWY3ODk2ZGMgMTAwNjQ0Ci0tLSBhL3Ny Y3BrZ3MvZXJsYW5nL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZXJsYW5nL3RlbXBsYXRlCkBAIC0x LDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZXJsYW5nJwogcGtnbmFtZT1lcmxhbmcK IHZlcnNpb249MjYuMQotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfc3R5bGU9Z251LWNv bmZpZ3VyZQogbWFrZV9pbnN0YWxsX3RhcmdldD0iaW5zdGFsbCBpbnN0YWxsLWRvY3MiCiBob3N0 bWFrZWRlcGVuZHM9ImF1dG9jb25mIGxpYnhzbHQgcGVybCB0YXIiCgpGcm9tIGEyZmRkM2M5MTI1 OTliNzJhOTJlYzUwNGViMDZlZGExNWJlOWZkZmUgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZy b206ICJBbmRyZXcgSi4gSGVzZm9yZCIgPGFqaEBzaWRlYmFuZC5vcmc+CkRhdGU6IE1vbiwgMjUg U2VwIDIwMjMgMDA6MTg6MjEgLTA0MDAKU3ViamVjdDogW1BBVENIIDIzLzQ0XSBmaWxlemlsbGE6 IHJlYnVpbGQgd2l0aCB3eFdpZGdldHMtZ3RrMy0zLjIuMi4xCgotLS0KIHNyY3BrZ3MvZmlsZXpp bGxhL3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRl bGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9maWxlemlsbGEvdGVtcGxhdGUgYi9zcmNw a2dzL2ZpbGV6aWxsYS90ZW1wbGF0ZQppbmRleCBjOGQ3ZmVhYjdiNGY1Li4yMWE1YjQ0MDA0YzU1 IDEwMDY0NAotLS0gYS9zcmNwa2dzL2ZpbGV6aWxsYS90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2Zp bGV6aWxsYS90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2Zp bGV6aWxsYScKIHBrZ25hbWU9ZmlsZXppbGxhCiB2ZXJzaW9uPTMuNjUuMAotcmV2aXNpb249MQor cmV2aXNpb249MgogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQogY29uZmlndXJlX2FyZ3M9Ii0t ZGlzYWJsZS1zdGF0aWMgLS1kaXNhYmxlLW1hbnVhbHVwZGF0ZWNoZWNrIC0tZGlzYWJsZS1hdXRv dXBkYXRlY2hlY2sKICAtLXdpdGgtd3gtY29uZmlnPXd4LWNvbmZpZy1ndGszIgoKRnJvbSA2MDll NDhlNGEyNzk3YWQ1ZTc1YmZkNGM4ZDBhNzI1NDg0MDFkODhlIE1vbiBTZXAgMTcgMDA6MDA6MDAg MjAwMQpGcm9tOiAiQW5kcmV3IEouIEhlc2ZvcmQiIDxhamhAc2lkZWJhbmQub3JnPgpEYXRlOiBN b24sIDI1IFNlcCAyMDIzIDAwOjE4OjIxIC0wNDAwClN1YmplY3Q6IFtQQVRDSCAyNC80NF0gZ251 cGxvdDogcmVidWlsZCB3aXRoIHd4V2lkZ2V0cy1ndGszLTMuMi4yLjEKCi0tLQogc3JjcGtncy9n bnVwbG90L3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAx IGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9nbnVwbG90L3RlbXBsYXRlIGIvc3Jj cGtncy9nbnVwbG90L3RlbXBsYXRlCmluZGV4IGFkMGRiZjA1M2QwMDIuLjRkMWVkMjEyMTE1YTYg MTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZ251cGxvdC90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2dudXBs b3QvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdnbnVwbG90 JwogcGtnbmFtZT1nbnVwbG90CiB2ZXJzaW9uPTUuNC45Ci1yZXZpc2lvbj0xCityZXZpc2lvbj0y CiBjb25maWd1cmVfYXJncz0iLS13aXRoLXJlYWRsaW5lPWJ1aWx0aW4iCiBob3N0bWFrZWRlcGVu ZHM9InBrZy1jb25maWcgbHVhNTIiCiBtYWtlZGVwZW5kcz0iemxpYi1kZXZlbCBsaWJYMTEtZGV2 ZWwgZ2QtZGV2ZWwgbHVhNTItZGV2ZWwiCgpGcm9tIDZjOGE2NjhlNTUxYmJmNzhmMTgzMzAzMDkz NGVjZmNmNGQ0MzRmNzEgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206ICJBbmRyZXcgSi4g SGVzZm9yZCIgPGFqaEBzaWRlYmFuZC5vcmc+CkRhdGU6IE1vbiwgMjUgU2VwIDIwMjMgMDA6MTg6 MjEgLTA0MDAKU3ViamVjdDogW1BBVENIIDI1LzQ0XSBnb2xseTogcmVidWlsZCB3aXRoIHd4V2lk Z2V0cy1ndGszLTMuMi4yLjEKCi0tLQogc3JjcGtncy9nb2xseS90ZW1wbGF0ZSB8IDIgKy0KIDEg ZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBh L3NyY3BrZ3MvZ29sbHkvdGVtcGxhdGUgYi9zcmNwa2dzL2dvbGx5L3RlbXBsYXRlCmluZGV4IDY5 MWY5OTlhNmVkZGQuLjFmZDQwNmI2YTJmNTUgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZ29sbHkvdGVt cGxhdGUKKysrIGIvc3JjcGtncy9nb2xseS90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVt cGxhdGUgZmlsZSBmb3IgJ2dvbGx5JwogcGtnbmFtZT1nb2xseQogdmVyc2lvbj00LjEKLXJldmlz aW9uPTIKK3JldmlzaW9uPTMKIGJ1aWxkX3dya3NyYz0iZ3VpLXd4IgogYnVpbGRfc3R5bGU9Z251 LW1ha2VmaWxlCiBtYWtlX2J1aWxkX2FyZ3M9Ii1mIG1ha2VmaWxlLWd0ayBHT0xMWURJUj0vdXNy L3NoYXJlL2dvbGx5IExVQUxJQj0tbGx1YTUuNAoKRnJvbSBkNTgyNTk2ZmVhZTkxM2FjM2Q2NzY1 NWI0MGZlMjI1YzgxZmUwMTRkIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiAiQW5kcmV3 IEouIEhlc2ZvcmQiIDxhamhAc2lkZWJhbmQub3JnPgpEYXRlOiBNb24sIDI1IFNlcCAyMDIzIDAw OjE4OjIxIC0wNDAwClN1YmplY3Q6IFtQQVRDSCAyNi80NF0gaHVnaW46IHJlYnVpbGQgd2l0aCB3 eFdpZGdldHMtZ3RrMy0zLjIuMi4xCgotLS0KIHNyY3BrZ3MvaHVnaW4vdGVtcGxhdGUgfCAyICst CiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1n aXQgYS9zcmNwa2dzL2h1Z2luL3RlbXBsYXRlIGIvc3JjcGtncy9odWdpbi90ZW1wbGF0ZQppbmRl eCA5NDNkMjNkMWE5MzJmLi43MzcyMDc4MWM3MTkxIDEwMDY0NAotLS0gYS9zcmNwa2dzL2h1Z2lu L3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvaHVnaW4vdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAj IFRlbXBsYXRlIGZpbGUgZm9yICdodWdpbicKIHBrZ25hbWU9aHVnaW4KIHZlcnNpb249MjAyMi4w LjAKLXJldmlzaW9uPTgKK3JldmlzaW9uPTkKIGJ1aWxkX3N0eWxlPWNtYWtlCiBidWlsZF9oZWxw ZXI9Y21ha2Utd3hXaWRnZXRzLWd0azMKIHB5Y29tcGlsZV9kaXJzPSJ1c3Ivc2hhcmUvaHVnaW4v ZGF0YS9wbHVnaW5zIHVzci9zaGFyZS9odWdpbi9kYXRhL3BsdWdpbnMtdGVtcGxhdGVzIgoKRnJv bSAwZmE1ZDQ4MTM5YmFjNzJjOGE0MDgxY2Y0YWNhNDNjMmJlYzE2ZDZjIE1vbiBTZXAgMTcgMDA6 MDA6MDAgMjAwMQpGcm9tOiAiQW5kcmV3IEouIEhlc2ZvcmQiIDxhamhAc2lkZWJhbmQub3JnPgpE YXRlOiBNb24sIDI1IFNlcCAyMDIzIDAwOjE4OjIxIC0wNDAwClN1YmplY3Q6IFtQQVRDSCAyNy80 NF0ga2ljYWQ6IHJlYnVpbGQgd2l0aCB3eFdpZGdldHMtZ3RrMy0zLjIuMi4xCgotLS0KIHNyY3Br Z3Mva2ljYWQvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyks IDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2tpY2FkL3RlbXBsYXRlIGIvc3Jj cGtncy9raWNhZC90ZW1wbGF0ZQppbmRleCAxYzM0YzQ5OGFmYmQ4Li4xZmI2ZGQ0MzRkYTQyIDEw MDY0NAotLS0gYS9zcmNwa2dzL2tpY2FkL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3Mva2ljYWQvdGVt cGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdraWNhZCcKIHBrZ25h bWU9a2ljYWQKIHZlcnNpb249Ny4wLjEKLXJldmlzaW9uPTIKK3JldmlzaW9uPTMKIGJ1aWxkX3N0 eWxlPWNtYWtlCiBidWlsZF9oZWxwZXI9Y21ha2Utd3hXaWRnZXRzLWd0azMKIGNvbmZpZ3VyZV9h cmdzPSItREtJQ0FEX1NDUklQVElOR19XWFBZVEhPTj1PTgoKRnJvbSA4NGVlODM0MmRhZTljNjZl YThkOGFlNmYyNTdkNTFhNDUzNDJhZGEzIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiAi QW5kcmV3IEouIEhlc2ZvcmQiIDxhamhAc2lkZWJhbmQub3JnPgpEYXRlOiBNb24sIDI1IFNlcCAy MDIzIDAwOjE4OjIxIC0wNDAwClN1YmplY3Q6IFtQQVRDSCAyOC80NF0gbWVkaWFpbmZvOiByZWJ1 aWxkIHdpdGggd3hXaWRnZXRzLWd0azMtMy4yLjIuMQoKLS0tCiBzcmNwa2dzL21lZGlhaW5mby90 ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlv bigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbWVkaWFpbmZvL3RlbXBsYXRlIGIvc3JjcGtncy9t ZWRpYWluZm8vdGVtcGxhdGUKaW5kZXggZTgwZGE1OWVhZDg4MC4uMWI4MjM3NmIzZmJkYSAxMDA2 NDQKLS0tIGEvc3JjcGtncy9tZWRpYWluZm8vdGVtcGxhdGUKKysrIGIvc3JjcGtncy9tZWRpYWlu Zm8vdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdtZWRpYWlu Zm8nCiBwa2duYW1lPW1lZGlhaW5mbwogdmVyc2lvbj0yMi4xMgotcmV2aXNpb249MQorcmV2aXNp b249MgogY29uZmlndXJlX2FyZ3M9Ii0td2l0aC13eC1jb25maWc9d3gtY29uZmlnLWd0azMiCiBo b3N0bWFrZWRlcGVuZHM9ImF1dG9tYWtlIGxpYnRvb2wgcGtnLWNvbmZpZyIKIG1ha2VkZXBlbmRz PSJsaWJtZWRpYWluZm8tZGV2ZWwgemxpYi1kZXZlbCB3eFdpZGdldHMtZ3RrMy1kZXZlbCIKCkZy b20gNzI1ZWI4ZTBlYTFmZjhmOGQ1MGU0N2NmODFkMjkyNmNhMTBlYmJhZiBNb24gU2VwIDE3IDAw OjAwOjAwIDIwMDEKRnJvbTogIkFuZHJldyBKLiBIZXNmb3JkIiA8YWpoQHNpZGViYW5kLm9yZz4K RGF0ZTogTW9uLCAyNSBTZXAgMjAyMyAwMDoxODoyMSAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggMjkv NDRdIG9wZW5iYWJlbDogcmVidWlsZCB3aXRoIHd4V2lkZ2V0cy1ndGszLTMuMi4yLjEKCi0tLQog c3JjcGtncy9vcGVuYmFiZWwvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNl cnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL29wZW5iYWJlbC90 ZW1wbGF0ZSBiL3NyY3BrZ3Mvb3BlbmJhYmVsL3RlbXBsYXRlCmluZGV4IDQxZGI4NDhkNzRlNGMu Ljc3YmJlYTI4ZmY2OTYgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3Mvb3BlbmJhYmVsL3RlbXBsYXRlCisr KyBiL3NyY3BrZ3Mvb3BlbmJhYmVsL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0 ZSBmaWxlIGZvciAnb3BlbmJhYmVsJwogcGtnbmFtZT1vcGVuYmFiZWwKIHZlcnNpb249My4xLjEK LXJldmlzaW9uPTEKK3JldmlzaW9uPTIKIF92ZXI9JHt2ZXJzaW9uLy8uLy19CiBidWlsZF9zdHls ZT1jbWFrZQogYnVpbGRfaGVscGVyPWNtYWtlLXd4V2lkZ2V0cy1ndGszCgpGcm9tIDRlZWZiOWUz NWIzM2ZlOTQ3NzU0NTdlMWU0OGRjOWU1YzQ5MTUxMmYgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAx CkZyb206ICJBbmRyZXcgSi4gSGVzZm9yZCIgPGFqaEBzaWRlYmFuZC5vcmc+CkRhdGU6IE1vbiwg MjUgU2VwIDIwMjMgMDA6MTg6MjIgLTA0MDAKU3ViamVjdDogW1BBVENIIDMwLzQ0XSBwYXNzd29y ZHNhZmU6IHJlYnVpbGQgd2l0aCB3eFdpZGdldHMtZ3RrMy0zLjIuMi4xCgotLS0KIHNyY3BrZ3Mv cGFzc3dvcmRzYWZlL3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9u KCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9wYXNzd29yZHNhZmUvdGVt cGxhdGUgYi9zcmNwa2dzL3Bhc3N3b3Jkc2FmZS90ZW1wbGF0ZQppbmRleCA4OGZmYTQxZjQ3NGJj Li5mODNkMWZlNWNiMWY1IDEwMDY0NAotLS0gYS9zcmNwa2dzL3Bhc3N3b3Jkc2FmZS90ZW1wbGF0 ZQorKysgYi9zcmNwa2dzL3Bhc3N3b3Jkc2FmZS90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMg VGVtcGxhdGUgZmlsZSBmb3IgJ3Bhc3N3b3Jkc2FmZScKIHBrZ25hbWU9cGFzc3dvcmRzYWZlCiB2 ZXJzaW9uPTEuMTYuMAotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfc3R5bGU9Y21ha2UK IGJ1aWxkX2hlbHBlcj1jbWFrZS13eFdpZGdldHMtZ3RrMwogIyBidWlsZCBwcm9jZXNzIHVzZXMg cGVybCB0byBnZW5lcmF0ZSBjb3JlX3N0LmNwcCBhbmQgemlwIHRvIGdlbmVyYXRlIGhlbHAgZmls ZXMKCkZyb20gMWQ2N2ViZDliMTg5NzExY2UwMjdmMTNhYWVhNjQ3ZDBiNTQzODQwNCBNb24gU2Vw IDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogIkFuZHJldyBKLiBIZXNmb3JkIiA8YWpoQHNpZGViYW5k Lm9yZz4KRGF0ZTogTW9uLCAyNSBTZXAgMjAyMyAwMDoxODoyMiAtMDQwMApTdWJqZWN0OiBbUEFU Q0ggMzEvNDRdIHBvZWRpdDogcmVidWlsZCB3aXRoIHd4V2lkZ2V0cy1ndGszLTMuMi4yLjEKCi0t LQogc3JjcGtncy9wb2VkaXQvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNl cnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3BvZWRpdC90ZW1w bGF0ZSBiL3NyY3BrZ3MvcG9lZGl0L3RlbXBsYXRlCmluZGV4IDQ5ZTdlZmU5NjU0NzYuLjA5YWQx OTJhZjIzNmQgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvcG9lZGl0L3RlbXBsYXRlCisrKyBiL3NyY3Br Z3MvcG9lZGl0L3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAn cG9lZGl0JwogcGtnbmFtZT1wb2VkaXQKIHZlcnNpb249My4zLjIKLXJldmlzaW9uPTMKK3Jldmlz aW9uPTQKIGJ1aWxkX3N0eWxlPWdudS1jb25maWd1cmUKIGNvbmZpZ3VyZV9hcmdzPSItLXdpdGgt d3gtY29uZmlnPXd4LWNvbmZpZy1ndGszIgogaG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIgoK RnJvbSA3MTUxOTUyODlmMDBhZGVkOWRkYzkzOTFhMTQxMTViMGRiZjlmYWQzIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiAiQW5kcmV3IEouIEhlc2ZvcmQiIDxhamhAc2lkZWJhbmQub3Jn PgpEYXRlOiBNb24sIDI1IFNlcCAyMDIzIDAwOjE4OjIyIC0wNDAwClN1YmplY3Q6IFtQQVRDSCAz Mi80NF0gc3Blay1hbHRlcm5hdGl2ZTogcmVidWlsZCB3aXRoIHd4V2lkZ2V0cy1ndGszLTMuMi4y LjEKCi0tLQogc3JjcGtncy9zcGVrLWFsdGVybmF0aXZlL3RlbXBsYXRlIHwgMiArLQogMSBmaWxl IGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3Jj cGtncy9zcGVrLWFsdGVybmF0aXZlL3RlbXBsYXRlIGIvc3JjcGtncy9zcGVrLWFsdGVybmF0aXZl L3RlbXBsYXRlCmluZGV4IGQ2NTA4NmI4ZjAwOGMuLjcyNzQ3Y2JiMGEwMjQgMTAwNjQ0Ci0tLSBh L3NyY3BrZ3Mvc3Blay1hbHRlcm5hdGl2ZS90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3NwZWstYWx0 ZXJuYXRpdmUvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdz cGVrLWFsdGVybmF0aXZlJwogcGtnbmFtZT1zcGVrLWFsdGVybmF0aXZlCiB2ZXJzaW9uPTAuOC4y LjMKLXJldmlzaW9uPTEKK3JldmlzaW9uPTIKIGJ1aWxkX3N0eWxlPWdudS1jb25maWd1cmUKIGhv c3RtYWtlZGVwZW5kcz0iYXV0b21ha2UgZ2V0dGV4dC1kZXZlbCBpbnRsdG9vbCBsaWJ0b29sIHBr Zy1jb25maWcgd3hXaWRnZXRzLWNvbW1vbiIKIG1ha2VkZXBlbmRzPSJmZm1wZWctZGV2ZWwgd3hX aWRnZXRzLWd0azMtZGV2ZWwiCgpGcm9tIDYwZDY0NzRjNmNmODQwZDljMjQ3MWFmMjhjYjlmMWUz NTMwZDU2NjcgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206ICJBbmRyZXcgSi4gSGVzZm9y ZCIgPGFqaEBzaWRlYmFuZC5vcmc+CkRhdGU6IE1vbiwgMjUgU2VwIDIwMjMgMDA6MTg6MjIgLTA0 MDAKU3ViamVjdDogW1BBVENIIDMzLzQ0XSB0cXNsOiByZWJ1aWxkIHdpdGggd3hXaWRnZXRzLWd0 azMtMy4yLjIuMQoKLS0tCiBzcmNwa2dzL3Rxc2wvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hh bmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dz L3Rxc2wvdGVtcGxhdGUgYi9zcmNwa2dzL3Rxc2wvdGVtcGxhdGUKaW5kZXggNjEzODliMDVlNjJk NC4uMmM0YWFiYzIxNzYxNSAxMDA2NDQKLS0tIGEvc3JjcGtncy90cXNsL3RlbXBsYXRlCisrKyBi L3NyY3BrZ3MvdHFzbC90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBm b3IgJ3Rxc2wnCiBwa2duYW1lPXRxc2wKIHZlcnNpb249Mi42LjUKLXJldmlzaW9uPTIKK3Jldmlz aW9uPTMKIGJ1aWxkX3N0eWxlPWNtYWtlCiBidWlsZF9oZWxwZXI9Y21ha2Utd3hXaWRnZXRzLWd0 azMKIGhvc3RtYWtlZGVwZW5kcz0id3hXaWRnZXRzLWd0azMtZGV2ZWwiCgpGcm9tIDA0MjkzODRi MzAyY2ZmNzk4YjMwNGZmOWI2YjFkM2IyZmExNjFlNmQgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAx CkZyb206ICJBbmRyZXcgSi4gSGVzZm9yZCIgPGFqaEBzaWRlYmFuZC5vcmc+CkRhdGU6IE1vbiwg MjUgU2VwIDIwMjMgMDA6MTg6MjIgLTA0MDAKU3ViamVjdDogW1BBVENIIDM0LzQ0XSB0cmVlc2hl ZXRzOiByZWJ1aWxkIHdpdGggd3hXaWRnZXRzLWd0azMtMy4yLjIuMQoKLS0tCiBzcmNwa2dzL3Ry ZWVzaGVldHMvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyks IDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3RyZWVzaGVldHMvdGVtcGxhdGUg Yi9zcmNwa2dzL3RyZWVzaGVldHMvdGVtcGxhdGUKaW5kZXggZDVmNjI2OTlhZjRhMi4uZjAyZDEz ZmQ2YmFmYiAxMDA2NDQKLS0tIGEvc3JjcGtncy90cmVlc2hlZXRzL3RlbXBsYXRlCisrKyBiL3Ny Y3BrZ3MvdHJlZXNoZWV0cy90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmls ZSBmb3IgJ3RyZWVzaGVldHMnCiBwa2duYW1lPXRyZWVzaGVldHMKIHZlcnNpb249MS4wLjIKLXJl dmlzaW9uPTEKK3JldmlzaW9uPTIKIGJ1aWxkX3N0eWxlPWNtYWtlCiBidWlsZF9oZWxwZXI9ImNt YWtlLXd4V2lkZ2V0cy1ndGszIgogbWFrZWRlcGVuZHM9Ind4V2lkZ2V0cy1ndGszLWRldmVsIgoK RnJvbSBiNjhhNTEyYTE3NTYwN2VlNmMyZDU3MTY3M2QyNDRmYWY4NDQyNjYzIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiAiQW5kcmV3IEouIEhlc2ZvcmQiIDxhamhAc2lkZWJhbmQub3Jn PgpEYXRlOiBNb24sIDI1IFNlcCAyMDIzIDAwOjE4OjIyIC0wNDAwClN1YmplY3Q6IFtQQVRDSCAz NS80NF0gdmJhLW06IHJlYnVpbGQgd2l0aCB3eFdpZGdldHMtZ3RrMy0zLjIuMi4xCgotLS0KIHNy Y3BrZ3MvdmJhLW0vdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24o KyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3ZiYS1tL3RlbXBsYXRlIGIv c3JjcGtncy92YmEtbS90ZW1wbGF0ZQppbmRleCA0MTE1YTlmNjIxNDgxLi40ODZlNDYwOWExOWQ2 IDEwMDY0NAotLS0gYS9zcmNwa2dzL3ZiYS1tL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvdmJhLW0v dGVtcGxhdGUKQEAgLTIsNyArMiw3IEBACiBwa2duYW1lPXZiYS1tCiByZXZlcnRzPTEyOTJfMgog dmVyc2lvbj0yLjEuNwotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfc3R5bGU9Y21ha2UK IGNvbmZpZ3VyZV9hcmdzPSItREVOQUJMRV9HVEs9VFJVRSAtREVOQUJMRV9GRk1QRUc9VFJVRSAt REVOQUJMRV9MSU5LPVRSVUUgLURDTUFLRV9CVUlMRF9UWVBFPVJlbGVhc2UiCiBob3N0bWFrZWRl cGVuZHM9ImdldHRleHQgcGtnLWNvbmZpZyB1bnppcCB6aXAgeWFzbSB3eFdpZGdldHMtZ3RrMy1k ZXZlbCIKCkZyb20gYWJhMjQwYWFkN2I5Y2QwYzY3ZmQyZjU5Mzg1NzMzOWM4N2U0YWZiYiBNb24g U2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogIkFuZHJldyBKLiBIZXNmb3JkIiA8YWpoQHNpZGVi YW5kLm9yZz4KRGF0ZTogTW9uLCAyNSBTZXAgMjAyMyAwMDoxODoyMiAtMDQwMApTdWJqZWN0OiBb UEFUQ0ggMzYvNDRdIHdpbnVzYjogcmVidWlsZCB3aXRoIHd4V2lkZ2V0cy1ndGszLTMuMi4yLjEK Ci0tLQogc3JjcGtncy93aW51c2IvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBp bnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3dpbnVzYi90 ZW1wbGF0ZSBiL3NyY3BrZ3Mvd2ludXNiL3RlbXBsYXRlCmluZGV4IDY0ZWM4ZmNlMTJiMDAuLjVl ZDFiODAwNDg4NDYgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3Mvd2ludXNiL3RlbXBsYXRlCisrKyBiL3Ny Y3BrZ3Mvd2ludXNiL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZv ciAnd2ludXNiJwogcGtnbmFtZT13aW51c2IKIHZlcnNpb249MS4wLjExCi1yZXZpc2lvbj0xMAor cmV2aXNpb249MTEKIGFyY2hzPSJpNjg2KiB4ODZfNjQqIgogYnVpbGRfc3R5bGU9Z251LWNvbmZp Z3VyZQogY29uZmlndXJlX2FyZ3M9Ii0td2l0aC13eC1jb25maWc9d3gtY29uZmlnLWd0azMiCgpG cm9tIDFkNWIzZGRlZWViYmExNWU2MDY4MjQzZGJlYzg1NGYyMDJhOGUxZGEgTW9uIFNlcCAxNyAw MDowMDowMCAyMDAxCkZyb206ICJBbmRyZXcgSi4gSGVzZm9yZCIgPGFqaEBzaWRlYmFuZC5vcmc+ CkRhdGU6IE1vbiwgMjUgU2VwIDIwMjMgMDA6MTg6MjMgLTA0MDAKU3ViamVjdDogW1BBVENIIDM3 LzQ0XSB3eE1heGltYTogcmVidWlsZCB3aXRoIHd4V2lkZ2V0cy1ndGszLTMuMi4yLjEKCi0tLQog c3JjcGtncy93eE1heGltYS90ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2Vy dGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mvd3hNYXhpbWEvdGVt cGxhdGUgYi9zcmNwa2dzL3d4TWF4aW1hL3RlbXBsYXRlCmluZGV4IDFlNTEyYzM5NjQ0YjkuLmMz OTFkNzgxYzZmZDEgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3Mvd3hNYXhpbWEvdGVtcGxhdGUKKysrIGIv c3JjcGtncy93eE1heGltYS90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmls ZSBmb3IgJ3d4TWF4aW1hJwogcGtnbmFtZT13eE1heGltYQogdmVyc2lvbj0yMC4wMi40Ci1yZXZp c2lvbj0xCityZXZpc2lvbj0yCiBidWlsZF9zdHlsZT1jbWFrZQogY29uZmlndXJlX2FyZ3M9Ii1E d3hXaWRnZXRzX0NPTkZJR19FWEVDVVRBQkxFPS91c3IvYmluL3d4LWNvbmZpZy1ndGszIgogaG9z dG1ha2VkZXBlbmRzPSJnZXR0ZXh0IHBlcmwgZGVza3RvcC1maWxlLXV0aWxzIGRveHlnZW4gcG80 YSIKCkZyb20gMGJkM2FjOWRhZTE0MGVmNWY0NWUyMWM1NGI4MGVjMDRkOTA5Y2JhNiBNb24gU2Vw IDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogIkFuZHJldyBKLiBIZXNmb3JkIiA8YWpoQHNpZGViYW5k Lm9yZz4KRGF0ZTogTW9uLCAyNSBTZXAgMjAyMyAwMDoxODoyMyAtMDQwMApTdWJqZWN0OiBbUEFU Q0ggMzgvNDRdIHhjaG06IHJlYnVpbGQgd2l0aCB3eFdpZGdldHMtZ3RrMy0zLjIuMi4xCgotLS0K IHNyY3BrZ3MveGNobS90ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlv bigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MveGNobS90ZW1wbGF0ZSBi L3NyY3BrZ3MveGNobS90ZW1wbGF0ZQppbmRleCAwMjkwMGI0MzM4NWVjLi4wNjc4MmMxZjk3NzQz IDEwMDY0NAotLS0gYS9zcmNwa2dzL3hjaG0vdGVtcGxhdGUKKysrIGIvc3JjcGtncy94Y2htL3Rl bXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAneGNobScKIHBrZ25h bWU9eGNobQogdmVyc2lvbj0xLjM0Ci1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiBidWlsZF9zdHls ZT1nbnUtY29uZmlndXJlCiBjb25maWd1cmVfYXJncz0iLS13aXRoLXd4LWNvbmZpZz13eC1jb25m aWctZ3RrMyIKIGhvc3RtYWtlZGVwZW5kcz0iYXV0b21ha2UgZ2V0dGV4dC1kZXZlbCB0YXIiCgpG cm9tIDBjMWFhN2MwZDJlZDk1NTg2ZGY4YTlmNGQzMWM1ZjEyYjE1ZDk0MzkgTW9uIFNlcCAxNyAw MDowMDowMCAyMDAxCkZyb206ICJBbmRyZXcgSi4gSGVzZm9yZCIgPGFqaEBzaWRlYmFuZC5vcmc+ CkRhdGU6IE1vbiwgMjUgU2VwIDIwMjMgMDg6MDI6MDUgLTA0MDAKU3ViamVjdDogW1BBVENIIDM5 LzQ0XSBjaGlycDogcmVidWlsZCBhZ2FpbnN0IG5ldyB3eFB5dGhvbgoKLS0tCiBzcmNwa2dzL2No aXJwL3RlbXBsYXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAy IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvY2hpcnAvdGVtcGxhdGUgYi9zcmNw a2dzL2NoaXJwL3RlbXBsYXRlCmluZGV4IGQyMzg2YmE0OTY2YmUuLjE4YjQxYzI2YjYyN2QgMTAw NjQ0Ci0tLSBhL3NyY3BrZ3MvY2hpcnAvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9jaGlycC90ZW1w bGF0ZQpAQCAtMSwxMCArMSwxMCBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnY2hpcnAnCiBwa2du YW1lPWNoaXJwCiB2ZXJzaW9uPTIwMjMwOTExCi1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiBidWls ZF9zdHlsZT1weXRob24zLXBlcDUxNwogaG9zdG1ha2VkZXBlbmRzPSJweXRob24zLXNldHVwdG9v bHMgcHl0aG9uMy13aGVlbCIKLWRlcGVuZHM9InB5dGhvbjMtc2l4IHd4UHl0aG9uNCBweXRob24z LXB5c2VyaWFsIHB5dGhvbjMtZnV0dXJlIHB5dGhvbjMtcmVxdWVzdHMKK2RlcGVuZHM9InB5dGhv bjMtc2l4IHd4UHl0aG9uIHB5dGhvbjMtcHlzZXJpYWwgcHl0aG9uMy1mdXR1cmUgcHl0aG9uMy1y ZXF1ZXN0cwogIHB5dGhvbjMtc3VkcyBweXRob24zLXlhdHRhZyIKIHNob3J0X2Rlc2M9Ik9wZW4t c291cmNlIHRvb2wgZm9yIHByb2dyYW1taW5nIGFtYXRldXIgcmFkaW9zIgogbWFpbnRhaW5lcj0i RW1pbCBNaWxlciA8ZW1AMHg0NS5jej4iCgpGcm9tIGEyN2ExNzMxNjAzOWI2N2IzZDhiMTQ5ZGQ2 NTBkYTNjMDZlZTk2MzMgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206ICJBbmRyZXcgSi4g SGVzZm9yZCIgPGFqaEBzaWRlYmFuZC5vcmc+CkRhdGU6IE1vbiwgMjUgU2VwIDIwMjMgMDg6MDI6 NTEgLTA0MDAKU3ViamVjdDogW1BBVENIIDQwLzQ0XSBncmFzczogcmVidWlsZCBhZ2FpbnN0IG5l dyB3eFB5dGhvbgoKLS0tCiBzcmNwa2dzL2dyYXNzL3RlbXBsYXRlIHwgOCArKysrLS0tLQogMSBm aWxlIGNoYW5nZWQsIDQgaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQg YS9zcmNwa2dzL2dyYXNzL3RlbXBsYXRlIGIvc3JjcGtncy9ncmFzcy90ZW1wbGF0ZQppbmRleCA4 YmEwM2JiN2JlYTk4Li5kZWQ4ZTQwZGFhZjEwIDEwMDY0NAotLS0gYS9zcmNwa2dzL2dyYXNzL3Rl bXBsYXRlCisrKyBiL3NyY3BrZ3MvZ3Jhc3MvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRl bXBsYXRlIGZpbGUgZm9yICdncmFzcycKIHBrZ25hbWU9Z3Jhc3MKIHZlcnNpb249OC4yLjEKLXJl dmlzaW9uPTIKK3JldmlzaW9uPTMKIF9iaW52ZXI9JHt2ZXJzaW9uLy8uL30KIF9iaW52ZXI9JHtf YmludmVyOjA6Mn0KIGJ1aWxkX3N0eWxlPWdudS1jb25maWd1cmUKQEAgLTExLDcgKzExLDcgQEAg aG9zdG1ha2VkZXBlbmRzPSJmbGV4IGxpYmdkYWwtdG9vbHMgcGtnLWNvbmZpZyBweXRob24zLW51 bXB5IHB5dGhvbjMtc2l4IHRhciIKIG1ha2VkZXBlbmRzPSJwcm9qLWRldmVsIHRpZmYtZGV2ZWwg bGliZ2RhbC1kZXZlbCBzcWxpdGUtZGV2ZWwKICBmZnR3LWRldmVsIGNhaXJvLWRldmVsIGdsdS1k ZXZlbCIKIGRlcGVuZHM9InB5dGhvbjMtbnVtcHkgcHl0aG9uMy1kYXRldXRpbCBweXRob24zLVBp bGxvdyBweXRob24zLW1hdHBsb3RsaWIKLSBweXRob24zLXNpeCBweXRob24zLXBseSB3eFB5dGhv bjQiCisgcHl0aG9uMy1zaXggcHl0aG9uMy1wbHkgd3hQeXRob24iCiBzaG9ydF9kZXNjPSJHZW9n cmFwaGljIFJlc291cmNlcyBBbmFseXNpcyBTdXBwb3J0IFN5c3RlbSAtIEdJUyIKIG1haW50YWlu ZXI9IkFsZXggSmFyb3NjaCA8cmVzZWFyY2hAYWxleGouYXQ+IgogbGljZW5zZT0iR1BMLTIuMC1v ci1sYXRlciIKQEAgLTIyLDcgKzIyLDcgQEAgcHl0aG9uX3ZlcnNpb249Mwogbm9jcm9zcz0idHJp ZXMgdG8gZXhlY3V0ZSB0YXJnZXQgYmluYXJpZXMiCiAKIHBvc3RfaW5zdGFsbCgpIHsKLQkjIFRo aXMgcGFja2FnZSBpcyBicm9rZW4gd2l0aCB3eFB5dGhvbjQgKDw9NC4wLjcpLAotCSMgaGVuY2Ug dGhlIEdVSSBpcyBjb21wdWxzb3JpbHkgZGlzYWJsZWQuCisJIyBUaGlzIHBhY2thZ2UgaXMgYnJv a2VuIHdpdGggd3hQeXRob24gKDw9NC4wLjcpIGFuZCB0aGUgR1VJCisJIyBpcyBkaXNhYmxlZCBw ZW5kaW5nIGZ1cnRoZXIgdGVzdGluZyB3aXRoIG5ld2VyIHd4UHl0aG9uCiAJdnNlZCAtaSAiJHtE RVNURElSfS91c3IvYmluL2dyYXNzIiAtZSAicy9cKGRlZmF1bHRfZ3VpID1cKS4qL1wxIFwidGV4 dFwiLyIKIH0KCkZyb20gZGZhYzdmODIyYmQzMTQ2OTZlZGViMTM3ZTc3ZjZjMGU0ODM0NjVjZSBN b24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogIkFuZHJldyBKLiBIZXNmb3JkIiA8YWpoQHNp ZGViYW5kLm9yZz4KRGF0ZTogTW9uLCAyNSBTZXAgMjAyMyAwODowNjoyMSAtMDQwMApTdWJqZWN0 OiBbUEFUQ0ggNDEvNDRdIGtpY2FkOiByZWJ1aWxkIGFnYWluc3QgbmV3IHd4UHl0aG9uCgotLS0K IHNyY3BrZ3Mva2ljYWQvdGVtcGxhdGUgfCAxMyArKysrKysrLS0tLS0tCiAxIGZpbGUgY2hhbmdl ZCwgNyBpbnNlcnRpb25zKCspLCA2IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mv a2ljYWQvdGVtcGxhdGUgYi9zcmNwa2dzL2tpY2FkL3RlbXBsYXRlCmluZGV4IDFmYjZkZDQzNGRh NDIuLjYyNDE4MGU5YzZkMGMgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3Mva2ljYWQvdGVtcGxhdGUKKysr IGIvc3JjcGtncy9raWNhZC90ZW1wbGF0ZQpAQCAtMSwxOCArMSwxOSBAQAogIyBUZW1wbGF0ZSBm aWxlIGZvciAna2ljYWQnCiBwa2duYW1lPWtpY2FkCiB2ZXJzaW9uPTcuMC4xCi1yZXZpc2lvbj0z CityZXZpc2lvbj00CiBidWlsZF9zdHlsZT1jbWFrZQogYnVpbGRfaGVscGVyPWNtYWtlLXd4V2lk Z2V0cy1ndGszCiBjb25maWd1cmVfYXJncz0iLURLSUNBRF9TQ1JJUFRJTkdfV1hQWVRIT049T04K ICAtREtJQ0FEX0JVSUxEX0kxOE49T04gLURLSUNBRF9JMThOX1VOSVhfU1RSSUNUX1BBVEg9T04K LSAtRHd4V2lkZ2V0c19DT05GSUdfRVhFQ1VUQUJMRT0kV1hfQ09ORklHCisgLUR3eFdpZGdldHNf Q09ORklHX0VYRUNVVEFCTEU9JFdYX0NPTkZJRyAtREtJQ0FEX1VTRV9FR0w9T04KICAtREtJQ0FE X1VTRV9PQ0M9JCh2b3B0X2lmIG9jY3QgT04gT0ZGKSAtREtJQ0FEX1NQSUNFPSQodm9wdF9pZiBz cGljZSBPTiBPRkYpIgogaG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIHN3aWcgd3hXaWRnZXRz LWd0azMtZGV2ZWwgcHl0aG9uMyB0YXIgZ2V0dGV4dCIKLW1ha2VkZXBlbmRzPSJ3eFdpZGdldHMt Z3RrMy1kZXZlbCB3eFB5dGhvbjQgcHl0aG9uMy1kZXZlbCBnbGV3LWRldmVsIGNhaXJvLWRldmVs Ci0gYm9vc3QtZGV2ZWwgbGliY3VybC1kZXZlbCBnbG0gbGliZ29tcC1kZXZlbCBsaWJmcmVlZ2x1 dC1kZXZlbCBndGsrMy1kZXZlbCB1bml4b2RiYy1kZXZlbAorbWFrZWRlcGVuZHM9Ind4V2lkZ2V0 cy1ndGszLWRldmVsIHd4UHl0aG9uIHB5dGhvbjMtZGV2ZWwgZ2xldy1kZXZlbAorIGNhaXJvLWRl dmVsIGJvb3N0LWRldmVsIGxpYmN1cmwtZGV2ZWwgZ2xtIGxpYmdvbXAtZGV2ZWwgbGliZnJlZWds dXQtZGV2ZWwKKyBndGsrMy1kZXZlbCB1bml4b2RiYy1kZXZlbAogICQodm9wdF9pZiBvY2N0IG9j Y3QtZGV2ZWwpICQodm9wdF9pZiBzcGljZSBuZ3NwaWNlLWRldmVsKSIKLWRlcGVuZHM9Ind4UHl0 aG9uNCIKK2RlcGVuZHM9Ind4UHl0aG9uIgogc2hvcnRfZGVzYz0iRWxlY3Ryb25pYyBzY2hlbWF0 aWMgYW5kIFBDQiBkZXNpZ24gc29mdHdhcmUiCiBtYWludGFpbmVyPSLDiXJpY28gTm9ndWVpcmEg PGVyaWNvbnJAZGlzcm9vdC5vcmc+IgogbGljZW5zZT0iR1BMLTMuMC1vci1sYXRlciIKQEAgLTQx LDcgKzQyLDcgQEAgZmkKIG5vY3Jvc3M9ImV4ZWN1dGUgbGVtb24gZHVyaW5nIGJ1aWxkIgogCiBp ZiBbICIkQ1JPU1NfQlVJTEQiIF07IHRoZW4KLQlob3N0bWFrZWRlcGVuZHMrPSIgd3hQeXRob240 IgorCWhvc3RtYWtlZGVwZW5kcys9IiB3eFB5dGhvbiIKIAljb25maWd1cmVfYXJncys9IiAtRFBZ VEhPTl9ERVNUPS8ke3B5M19zaXRlbGlifQogCS1Ed3hXaWRnZXRzX0NPTkZJR19PUFRJT05TPSct LXByZWZpeD0ke1hCUFNfQ1JPU1NfQkFTRX0nIgogZmkKCkZyb20gYmEwNTFiN2NlYzc1NjYzYWYw MjA1YzhjZDE0YzE5NjgyZTExYmJmYyBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogIkFu ZHJldyBKLiBIZXNmb3JkIiA8YWpoQHNpZGViYW5kLm9yZz4KRGF0ZTogTW9uLCAyNSBTZXAgMjAy MyAwODowNjo1NCAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggNDIvNDRdIG15bWNwbHVzOiByZWJ1aWxk IGFnYWluc3QgbmV3IHd4UHl0aG9uCgotLS0KIHNyY3BrZ3MvbXltY3BsdXMvdGVtcGxhdGUgfCA0 ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpk aWZmIC0tZ2l0IGEvc3JjcGtncy9teW1jcGx1cy90ZW1wbGF0ZSBiL3NyY3BrZ3MvbXltY3BsdXMv dGVtcGxhdGUKaW5kZXggOTMwNzExZWViMmM1OS4uNWJiMDhlZjllYTVkNCAxMDA2NDQKLS0tIGEv c3JjcGtncy9teW1jcGx1cy90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL215bWNwbHVzL3RlbXBsYXRl CkBAIC0xLDEwICsxLDEwIEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdteW1jcGx1cycKIHBrZ25h bWU9bXltY3BsdXMKIHZlcnNpb249My4wLjUKLXJldmlzaW9uPTIKK3JldmlzaW9uPTMKIGJ1aWxk X3N0eWxlPXB5dGhvbjMtbW9kdWxlCiBob3N0bWFrZWRlcGVuZHM9InB5dGhvbjMtc2V0dXB0b29s cyIKLWRlcGVuZHM9Ind4UHl0aG9uNCBweXRob24zLVB5T3BlbkdMIgorZGVwZW5kcz0id3hQeXRo b24gcHl0aG9uMy1QeU9wZW5HTCIKIGNoZWNrZGVwZW5kcz0iJGRlcGVuZHMgcHl0aG9uMy1weXRl c3QiCiBzaG9ydF9kZXNjPSJQbGF5U3RhdGlvbiAyIG1lbW9yeSBjYXJkIG1hbmFnZXIiCiBtYWlu dGFpbmVyPSJBbmRyZXcgQmVuc29uIDxhYmVuc29uK3ZvaWRAZ21haWwuY29tPiIKCkZyb20gZGI4 ODhmNjUwMzE4Y2IwOWI4YzdiMTRiMDIyYmQ1NWZhYmY4ZWRjYSBNb24gU2VwIDE3IDAwOjAwOjAw IDIwMDEKRnJvbTogIkFuZHJldyBKLiBIZXNmb3JkIiA8YWpoQHNpZGViYW5kLm9yZz4KRGF0ZTog TW9uLCAyNSBTZXAgMjAyMyAwODowNzoyNiAtMDQwMApTdWJqZWN0OiBbUEFUQ0ggNDMvNDRdIHBo b3RvZmlsbXN0cmlwOiByZWJ1aWxkIGFnYWluc3QgbmV3IHd4UHl0aG9uCgotLS0KIHNyY3BrZ3Mv cGhvdG9maWxtc3RyaXAvdGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2Vy dGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9waG90b2ZpbG1z dHJpcC90ZW1wbGF0ZSBiL3NyY3BrZ3MvcGhvdG9maWxtc3RyaXAvdGVtcGxhdGUKaW5kZXggZDIw NTBhYzRjNjRjOC4uZDJjNzUxMTYyOTI1MCAxMDA2NDQKLS0tIGEvc3JjcGtncy9waG90b2ZpbG1z dHJpcC90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3Bob3RvZmlsbXN0cmlwL3RlbXBsYXRlCkBAIC0x LDEwICsxLDEwIEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdwaG90b2ZpbG1zdHJpcCcKIHBrZ25h bWU9cGhvdG9maWxtc3RyaXAKIHZlcnNpb249NC4wLjAKLXJldmlzaW9uPTEKK3JldmlzaW9uPTIK IGJ1aWxkX3N0eWxlPXB5dGhvbjMtbW9kdWxlCiBob3N0bWFrZWRlcGVuZHM9InB5dGhvbjMtc2V0 dXB0b29scyBnc3QxLXB5dGhvbjMgcHl0aG9uMy1TcGhpbnggZ2V0dGV4dCIKLWRlcGVuZHM9InB5 dGhvbjMgZ3N0MS1weXRob24zIGdzdDEtZWRpdGluZy1zZXJ2aWNlcyBweXRob24zLVBpbGxvdyB3 eFB5dGhvbjQiCitkZXBlbmRzPSJweXRob24zIGdzdDEtcHl0aG9uMyBnc3QxLWVkaXRpbmctc2Vy dmljZXMgcHl0aG9uMy1QaWxsb3cgd3hQeXRob24iCiBjaGVja2RlcGVuZHM9IiRkZXBlbmRzIgog c2hvcnRfZGVzYz0iU2xpZGVzaG93IGNyZWF0b3Igd2l0aCBLZW4gQnVybnMgZWZmZWN0IgogbWFp bnRhaW5lcj0ixJBvw6BuIFRy4bqnbiBDw7RuZyBEYW5oIDxjb25nZGFuaHF4QGdtYWlsLmNvbT4i CgpGcm9tIGY3NmYxZDM0MmFlYTFjNzY0ZDdhYjhmYjU2NzZhYmNlOTk3MmEyMmIgTW9uIFNlcCAx NyAwMDowMDowMCAyMDAxCkZyb206ICJBbmRyZXcgSi4gSGVzZm9yZCIgPGFqaEBzaWRlYmFuZC5v cmc+CkRhdGU6IE1vbiwgMjUgU2VwIDIwMjMgMDg6MDc6NDggLTA0MDAKU3ViamVjdDogW1BBVENI IDQ0LzQ0XSBwbGF5b25saW51eDogcmVidWlsZCBhZ2FpbnN0IG5ldyB3eFB5dGhvbgoKLS0tCiBz cmNwa2dzL3BsYXlvbmxpbnV4L3RlbXBsYXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBp bnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcGxheW9u bGludXgvdGVtcGxhdGUgYi9zcmNwa2dzL3BsYXlvbmxpbnV4L3RlbXBsYXRlCmluZGV4IDU2MjA3 YTI5YWEyM2EuLjM5NGE0ZjJkNWIzYjQgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvcGxheW9ubGludXgv dGVtcGxhdGUKKysrIGIvc3JjcGtncy9wbGF5b25saW51eC90ZW1wbGF0ZQpAQCAtMSwxMCArMSwx MCBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAncGxheW9ubGludXgnCiBwa2duYW1lPXBsYXlvbmxp bnV4CiB2ZXJzaW9uPTQuNAotcmV2aXNpb249MQorcmV2aXNpb249MgogIyBjb250YWlucyBwcmUt Y29tcGlsZWQgYmluYXJpZXMgbGlua2VkIGFnYWluc3QgZ2xpYmMKIGFyY2hzPSJpNjg2IHg4Nl82 NCIKLWRlcGVuZHM9Imljb3V0aWxzIG5ldGNhdCBJbWFnZU1hZ2ljayB4dGVybSB3eFB5dGhvbjQg Y2FiZXh0cmFjdCB1bnppcCBnbHhpbmZvCitkZXBlbmRzPSJpY291dGlscyBuZXRjYXQgSW1hZ2VN YWdpY2sgeHRlcm0gd3hQeXRob24gY2FiZXh0cmFjdCB1bnppcCBnbHhpbmZvCiAgZ251cGcgeGRn LXVzZXItZGlycyBsaWJYbXUgd2dldCBwN3ppcCBjdXJsIGpxIHB5dGhvbjMtbmF0c29ydCB4cmRi IGdldHRleHQKICBwZXJsIgogc2hvcnRfZGVzYz0iR1VJIGZvciBtYW5hZ2luZyBXaW5kb3dzIHBy b2dyYW1zIHVuZGVyIGxpbnV4Igo= --===============3704673994064260213==--