From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from inbox.vuxu.org (localhost [IPv6:::1]) by inbox.vuxu.org (OpenSMTPD) with ESMTP id b395765c for ; Wed, 30 Oct 2019 18:13:43 +0000 (UTC) Content-Type: multipart/mixed; boundary="===============5998419318849698809==" MIME-Version: 1.0 Subject: Re: [PR PATCH] [Updated] plasma-workspace: dependencies fixed To: ml@inbox.vuxu.org From: voidlinux-github@inbox.vuxu.org Reply-to: ml@inbox.vuxu.org In-Reply-To: References: Date: Wed, 30 Oct 2019 19:13:43 +0100 Message-ID: <20191030181343.R1zpeDhnJY7AHg2imqELTCJAejHpultDSs6Zts-roJw@z> GitHub notification mails are now in MIME to allow UTF8. --===============5998419318849698809== MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 VGhlcmUgaXMgYW4gdXBkYXRlZCBwdWxsIHJlcXVlc3QgYnkgazRsZWcgYWdhaW5zdCBtYXN0ZXIg b24gdGhlIHZvaWQtcGFja2FnZXMgcmVwb3NpdG9yeQoKaHR0cHM6Ly9naXRodWIuY29tL2s0bGVn L3ZvaWQtcGFja2FnZXMga3dheWxhbmQKaHR0cHM6Ly9naXRodWIuY29tL3ZvaWQtbGludXgvdm9p ZC1wYWNrYWdlcy9wdWxsLzE1ODI2CgpwbGFzbWEtd29ya3NwYWNlOiBkZXBlbmRlbmNpZXMgZml4 ZWQKV2l0aG91dCB0aGVzZSBkZXBlbmRlbmNpZXMsIHRoZSB3YXlsYW5kIHBsYXNtYSBzZXNzaW9u IHdpbGwgbm90IHdvcmsuDQpXaXRob3V0IF94b3JnLXNlcnZlci14d2F5bGFuZF8gd2lsbCByZXR1 cm4gdG8gRE0uDQpXaXRob3V0IF9xdDUtd2F5bGFuZF8gdGhlcmUgd2lsbCBiZSBqdXN0IGEgYmxh Y2sgc2NyZWVuLg0KV2l0aG91dCB0aGVzZSB0d28gcGFja2FnZXMgd2lsbCByZXR1cm4gaW4gRE0u CgpBIHBhdGNoIGZpbGUgZnJvbSBodHRwczovL2dpdGh1Yi5jb20vdm9pZC1saW51eC92b2lkLXBh Y2thZ2VzL3B1bGwvMTU4MjYucGF0Y2ggaXMgYXR0YWNoZWQ= --===============5998419318849698809== Content-Type: text/x-diff MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="github-pr-kwayland-15826.patch" RnJvbSAyZjk4N2UxYzc0NGU0NjI4NDEyOTMxMGEyMGYzMWE3ZGEyMjRiOGRlIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBQZXRlciBCdWkgPHBidWlAZ2l0aHViLmJ4NjEyLnNwYWNlPgpE YXRlOiBTYXQsIDI2IE9jdCAyMDE5IDE5OjI3OjI2IC0wNDAwClN1YmplY3Q6IFtQQVRDSCAwMDEv MTg2XSBsaWJwbGFjZWJvOiB1cGRhdGUgdG8gMS4yMS4wLgoKLS0tCiBzcmNwa2dzL2xpYnBsYWNl Ym8vdGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIg ZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9saWJwbGFjZWJvL3RlbXBsYXRlIGIv c3JjcGtncy9saWJwbGFjZWJvL3RlbXBsYXRlCmluZGV4IGFlOTMyZTBmMzIzLi42MDM0Njk0ODk2 YiAxMDA2NDQKLS0tIGEvc3JjcGtncy9saWJwbGFjZWJvL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3Mv bGlicGxhY2Viby90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3Ig J2xpYnBsYWNlYm8nCiBwa2duYW1lPWxpYnBsYWNlYm8KLXZlcnNpb249MS43LjAKK3ZlcnNpb249 MS4yMS4wCiByZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1tZXNvbgogY29uZmlndXJlX2FyZ3M9Ii1E dnVsa2FuPWVuYWJsZWQgLURnbHNsYW5nPWVuYWJsZWQgLURzaGFkZXJjPWVuYWJsZWQiCkBAIC0x MSw3ICsxMSw3IEBAIG1haW50YWluZXI9Ik9ycGhhbmVkIDxvcnBoYW5Adm9pZGxpbnV4Lm9yZz4i CiBsaWNlbnNlPSJMR1BMLTIuMS1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL2dpdGh1Yi5j b20vaGFhc24vbGlicGxhY2VibyIKIGRpc3RmaWxlcz0iaHR0cHM6Ly9naXRodWIuY29tL2hhYXNu L2xpYnBsYWNlYm8vYXJjaGl2ZS92JHt2ZXJzaW9ufS50YXIuZ3oiCi1jaGVja3N1bT01ZWU2MThi ZWU2MTRhZWFlOWY4YmI1MjYzMjk4MjQ0NjhmOTNjNzQwZThmZDM3ZmQ0NmQ1ODExNGZkNzk3N2Vi CitjaGVja3N1bT0wOWQ3ODkxMWEyYzEzYzM4Yjg5MTNkMjljZjRkNzhjNDI0ZDAwYWE5OThhODRh ODAxMWU1ZGIxNDQ3N2M3MmY4CiAKIGxpYnBsYWNlYm8tZGV2ZWxfcGFja2FnZSgpIHsKIAlkZXBl bmRzPSJsaWJwbGFjZWJvLSR7dmVyc2lvbn1fJHtyZXZpc2lvbn0gdnVsa2FuLWxvYWRlciBsY21z Mi1kZXZlbCIKCkZyb20gZmJiNzFjZGQ4MTk4NTVhOTVlOWI2NmNmYTY5MDc4M2ExNDhmZTY2OCBN b24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogUGV0ZXIgQnVpIDxwYnVpQGdpdGh1Yi5ieDYx Mi5zcGFjZT4KRGF0ZTogU2F0LCAyNiBPY3QgMjAxOSAyMToyNDo1OCAtMDQwMApTdWJqZWN0OiBb UEFUQ0ggMDAyLzE4Nl0gdmxjOiByZXZidW1wIGZvciBsaWJwbGFjZWJvLTEuMjEuMC4KCk5lZWRl ZCB0byBwYXRjaCB2bGMtMy4wLjggdG8gYnVpbGQgd2l0aCBuZXcgbGlicGxhY2VhYm8gQVBJIChj aGFuZ2VzCnRha2VuIGZyb20gdXBzdHJlYW0gY29kZSkuCi0tLQogc3JjcGtncy92bGMvcGF0Y2hl cy9saWJwbGFjZWJvLnBhdGNoIHwgNzQgKysrKysrKysrKysrKysrKysrKysrKysrKysrKwogc3Jj cGtncy92bGMvdGVtcGxhdGUgICAgICAgICAgICAgICAgIHwgIDIgKy0KIDIgZmlsZXMgY2hhbmdl ZCwgNzUgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbigtKQogY3JlYXRlIG1vZGUgMTAwNjQ0IHNy Y3BrZ3MvdmxjL3BhdGNoZXMvbGlicGxhY2Viby5wYXRjaAoKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mv dmxjL3BhdGNoZXMvbGlicGxhY2Viby5wYXRjaCBiL3NyY3BrZ3MvdmxjL3BhdGNoZXMvbGlicGxh Y2Viby5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMC4uNTlhNDQw Mzg3NWYKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL3ZsYy9wYXRjaGVzL2xpYnBsYWNlYm8u cGF0Y2gKQEAgLTAsMCArMSw3NCBAQAorLS0tIG1vZHVsZXMvdmlkZW9fb3V0cHV0L29wZW5nbC92 b3V0X2hlbHBlci5jLm9yaWcJMjAxOS0xMC0yNiAyMDo0MzozNC41MzkwNzM4MTUgLTA0MDAKKysr KyBtb2R1bGVzL3ZpZGVvX291dHB1dC9vcGVuZ2wvdm91dF9oZWxwZXIuYwkyMDE5LTEwLTI2IDIw OjQ0OjM1LjE2MDc3MzE5MyAtMDQwMAorQEAgLTYyOCw4ICs2MjgsOCBAQAorICAgICAgICAgICAg IC5sb2dfbGV2ZWwgPSBQTF9MT0dfSU5GTywKKyAgICAgICAgIH0pOworICAgICAgICAgaWYgKHRj LT5wbF9jdHgpIHsKKy0jICAgaWYgUExfQVBJX1ZFUiA+PSA2CistICAgICAgICAgICAgdGMtPnBs X3NoID0gcGxfc2hhZGVyX2FsbG9jKHRjLT5wbF9jdHgsIE5VTEwsIDApOworKyMgICBpZiBQTF9B UElfVkVSID49IDIwCisrICAgICAgICAgICAgdGMtPnBsX3NoID0gcGxfc2hhZGVyX2FsbG9jKHRj LT5wbF9jdHgsIE5VTEwpOworICMgICBlbHNlCisgICAgICAgICAgICAgdGMtPnBsX3NoID0gcGxf c2hhZGVyX2FsbG9jKHRjLT5wbF9jdHgsIE5VTEwsIDApOworICMgICBlbmRpZgorLS0tIG1vZHVs ZXMvdmlkZW9fb3V0cHV0L29wZW5nbC9mcmFnbWVudF9zaGFkZXJzLmMub3JpZwkyMDE5LTEwLTI2 IDIwOjQ2OjQzLjM4MjI1MjQ4MSAtMDQwMAorKysrIG1vZHVsZXMvdmlkZW9fb3V0cHV0L29wZW5n bC9mcmFnbWVudF9zaGFkZXJzLmMJMjAxOS0xMC0yNiAyMDo1MTo0MC4yOTU2Nzk4MzQgLTA0MDAK K0BAIC02MTYsNyArNjE2LDEzIEBACisgICAgICAgICBjb2xvcl9wYXJhbXMuaW50ZW50ID0gdmFy X0luaGVyaXRJbnRlZ2VyKHRjLT5nbCwgInJlbmRlcmluZy1pbnRlbnQiKTsKKyAgICAgICAgIGNv bG9yX3BhcmFtcy50b25lX21hcHBpbmdfYWxnbyA9IHZhcl9Jbmhlcml0SW50ZWdlcih0Yy0+Z2ws ICJ0b25lLW1hcHBpbmciKTsKKyAgICAgICAgIGNvbG9yX3BhcmFtcy50b25lX21hcHBpbmdfcGFy YW0gPSB2YXJfSW5oZXJpdEZsb2F0KHRjLT5nbCwgInRvbmUtbWFwcGluZy1wYXJhbSIpOworKyMg ICBpZiBQTF9BUElfVkVSID49IDEwCisrCWNvbG9yX3BhcmFtcy5pbnRlbnQgPSB2YXJfSW5oZXJp dEludGVnZXIodGMtPmdsLCAicmVuZGVyaW5nLWludGVudCIpOworKwljb2xvcl9wYXJhbXMudG9u ZV9tYXBwaW5nX2FsZ28gPSB2YXJfSW5oZXJpdEludGVnZXIodGMtPmdsLCAidG9uZS1tYXBwaW5n Iik7CisrCWNvbG9yX3BhcmFtcy50b25lX21hcHBpbmdfcGFyYW0gPSB2YXJfSW5oZXJpdEZsb2F0 KHRjLT5nbCwgInRvbmUtbWFwcGluZy1wYXJhbSIpOworKyMgICBlbHNlCisgICAgICAgICBjb2xv cl9wYXJhbXMudG9uZV9tYXBwaW5nX2Rlc2F0dXJhdGUgPSB2YXJfSW5oZXJpdEZsb2F0KHRjLT5n bCwgInRvbmUtbWFwcGluZy1kZXNhdCIpOworKyMgICBlbmRpZgorICAgICAgICAgY29sb3JfcGFy YW1zLmdhbXV0X3dhcm5pbmcgPSB2YXJfSW5oZXJpdEJvb2wodGMtPmdsLCAidG9uZS1tYXBwaW5n LXdhcm4iKTsKKyAKKyAgICAgICAgIHN0cnVjdCBwbF9jb2xvcl9zcGFjZSBkc3Rfc3BhY2UgPSBw bF9jb2xvcl9zcGFjZV91bmtub3duOworLS0tIG1vZHVsZXMvdmlkZW9fb3V0cHV0L29wZW5nbC92 b3V0X2hlbHBlci5oLm9yaWcJMjAxOS0xMC0yNiAyMToxMzozMC4xMjYxNDI0NTcgLTA0MDAKKysr KyBtb2R1bGVzL3ZpZGVvX291dHB1dC9vcGVuZ2wvdm91dF9oZWxwZXIuaAkyMDE5LTEwLTI2IDIx OjExOjQ0Ljk5MTkyMjk5OCAtMDQwMAorQEAgLTE3MSw2ICsxNzEsMzAgQEAKKyAjZGVmaW5lIERF UFRIX1RFWFQgIkRpdGhlciBkZXB0aCBvdmVycmlkZSAoMCA9IGZyYW1lYnVmZmVyIGRlcHRoKSIK KyAjZGVmaW5lIERFUFRIX0xPTkdURVhUICJPdmVycmlkZXMgdGhlIGRldGVjdGVkIGZyYW1lYnVm ZmVyIGRlcHRoLiBVc2VmdWwgdG8gZGl0aGVyIHRvIGxvd2VyIGJpdCBkZXB0aHMgdGhhbiBvdGhl cndpc2UgcmVxdWlyZWQuIgorIAorKyNkZWZpbmUgREVTQVRfU1RSRU5HVEhfVEVYVCAiRGVzYXR1 cmF0aW9uIHN0cmVuZ3RoIgorKyNkZWZpbmUgREVTQVRfU1RSRU5HVEhfTE9OR1RFWFQgIkhvdyBz dHJvbmdseSB0byBkZXNhdHVyYXRlIGJyaWdodCBzcGVjdHJhbCBjb2xvcnMgdG93YXJkcyB3aGl0 ZS4gMC4wIGRpc2FibGVzIHRoaXMgYmVoYXZpb3IsIDEuMCBlbmFibGVzIGZ1bGwgZGVzYXR1cmF0 aW9uIChob2xseXdvb2Qtc3R5bGUpIgorKworKyNkZWZpbmUgREVTQVRfRVhQT05FTlRfVEVYVCAi RGVzYXR1cmF0aW9uIGV4cG9uZW50IgorKyNkZWZpbmUgREVTQVRfRVhQT05FTlRfTE9OR1RFWFQg IkNvbnRyb2xzIHRoZSBzdGVlcG5lc3Mgb2YgdGhlIGRlc2F0dXJhdGlvbiBjdXJ2ZS4gSWYgeW91 IHNldCB0aGlzIHRvIDAuMCwgdGhlIGN1cnZlIHdpbGwgYmUgZmxhdCwgaS5lLiBkZXNhdHVyYXRp b24gYWx3YXlzIGVuYWJsZWQgKGhvbGx5d29vZC1zdHlsZSkuIgorKworKyNkZWZpbmUgREVTQVRf QkFTRV9URVhUICJEZXNhdHVyYXRpb24gYmFzZSIKKysjZGVmaW5lIERFU0FUX0JBU0VfTE9OR1RF WFQgIkNvbnRyb2xzIHRoZSBzdGFydGluZyBvZmZzZXQgb2YgdGhlIGRlc2F0dXJhdGlvbiBjdXJ2 ZS4gQnJpZ2h0bmVzcyB2YWx1ZXMgYmVsb3cgdGhpcyBiYXNlIHdpbGwgYWx3YXlzIGJlIGNvbG9y aW1ldHJpY2FsbHkgdG9uZSBtYXBwZWQgKG5ldmVyIGRlc2F0dXJhdGVkKS4iCisrCisrI2lmIFBM X0FQSV9WRVIgPj0gMTAKKysjZGVmaW5lIGFkZF9kZXNhdF9wYXJhbXMoKSBcCisrICAgIGFkZF9m bG9hdCgiZGVzYXQtc3RyZW5ndGgiLCBwbF9jb2xvcl9tYXBfZGVmYXVsdF9wYXJhbXMuZGVzYXR1 cmF0aW9uX3N0cmVuZ3RoLCBcCisrICAgICAgICAgICAgICBERVNBVF9TVFJFTkdUSF9URVhULCBE RVNBVF9TVFJFTkdUSF9MT05HVEVYVCwgZmFsc2UpIFwKKysgICAgYWRkX2Zsb2F0KCJkZXNhdC1l eHBvbmVudCIsIHBsX2NvbG9yX21hcF9kZWZhdWx0X3BhcmFtcy5kZXNhdHVyYXRpb25fZXhwb25l bnQsIFwKKysgICAgICAgICAgICAgIERFU0FUX0VYUE9ORU5UX1RFWFQsIERFU0FUX0VYUE9ORU5U X0xPTkdURVhULCBmYWxzZSkgXAorKyAgICBhZGRfZmxvYXQoImRlc2F0LWJhc2UiLCBwbF9jb2xv cl9tYXBfZGVmYXVsdF9wYXJhbXMuZGVzYXR1cmF0aW9uX2Jhc2UsIFwKKysgICAgICAgICAgICAg IERFU0FUX0JBU0VfVEVYVCwgREVTQVRfQkFTRV9MT05HVEVYVCwgZmFsc2UpIFwKKysgICAgYWRk X29ic29sZXRlX3N0cmluZygidG9uZS1tYXBwaW5nLWRlc2F0IikKKysjZWxzZQorKyNkZWZpbmUg YWRkX2Rlc2F0X3BhcmFtcygpIFwKKysgICAgYWRkX2Zsb2F0KCJ0b25lLW1hcHBpbmctZGVzYXQi LCBwbF9jb2xvcl9tYXBfZGVmYXVsdF9wYXJhbXMudG9uZV9tYXBwaW5nX2Rlc2F0dXJhdGUsIFwK KysgICAgICAgICAgICAgIFRPTkVNQVBfREVTQVRfVEVYVCwgVE9ORU1BUF9ERVNBVF9MT05HVEVY VCwgZmFsc2UpCisrI2VuZGlmCisrCisgI2RlZmluZSBhZGRfZ2xvcHRzX3BsYWNlYm8oKSBcCisg ICAgIHNldF9zZWN0aW9uKCJDb2xvcnNwYWNlIGNvbnZlcnNpb24iLCBOVUxMKSBcCisgICAgIGFk ZF9pbnRlZ2VyKCJyZW5kZXJpbmctaW50ZW50IiwgcGxfY29sb3JfbWFwX2RlZmF1bHRfcGFyYW1z LmludGVudCwgXAorQEAgLTE4NCwxMCArMjA4LDkgQEAKKyAgICAgYWRkX2ludGVnZXIoInRvbmUt bWFwcGluZyIsIFBMX1RPTkVfTUFQUElOR19IQUJMRSwgXAorICAgICAgICAgICAgICAgICBUT05F TUFQUElOR19URVhULCBUT05FTUFQUElOR19MT05HVEVYVCwgZmFsc2UpIFwKKyAgICAgICAgICAg ICBjaGFuZ2VfaW50ZWdlcl9saXN0KHRvbmVfdmFsdWVzLCB0b25lX3RleHQpIFwKKysgICAgYWRk X2Rlc2F0X3BhcmFtcygpIFwKKyAgICAgYWRkX2Zsb2F0KCJ0b25lLW1hcHBpbmctcGFyYW0iLCBw bF9jb2xvcl9tYXBfZGVmYXVsdF9wYXJhbXMudG9uZV9tYXBwaW5nX3BhcmFtLCBcCisgICAgICAg ICAgICAgICBUT05FTUFQX1BBUkFNX1RFWFQsIFRPTkVNQVBfUEFSQU1fTE9OR1RFWFQsIHRydWUp IFwKKy0gICAgYWRkX2Zsb2F0KCJ0b25lLW1hcHBpbmctZGVzYXQiLCBwbF9jb2xvcl9tYXBfZGVm YXVsdF9wYXJhbXMudG9uZV9tYXBwaW5nX2Rlc2F0dXJhdGUsIFwKKy0gICAgICAgICAgICAgIFRP TkVNQVBfREVTQVRfVEVYVCwgVE9ORU1BUF9ERVNBVF9MT05HVEVYVCwgZmFsc2UpIFwKKyAgICAg YWRkX2Jvb2woInRvbmUtbWFwcGluZy13YXJuIiwgZmFsc2UsIFRPTkVNQVBfV0FSTl9URVhULCBU T05FTUFQX1dBUk5fTE9OR1RFWFQsIGZhbHNlKSBcCisgICAgIHNldF9zZWN0aW9uKCJEaXRoZXJp bmciLCBOVUxMKSBcCisgICAgIGFkZF9pbnRlZ2VyKCJkaXRoZXItYWxnbyIsIC0xLCBESVRIRVJf VEVYVCwgRElUSEVSX0xPTkdURVhULCBmYWxzZSkgXApkaWZmIC0tZ2l0IGEvc3JjcGtncy92bGMv dGVtcGxhdGUgYi9zcmNwa2dzL3ZsYy90ZW1wbGF0ZQppbmRleCA3ZjM0M2Q5MjJiZS4uMjdiNmIz OWYxMzUgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvdmxjL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3Mvdmxj L3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAndmxjJwogcGtn bmFtZT12bGMKIHZlcnNpb249My4wLjgKLXJldmlzaW9uPTIKK3JldmlzaW9uPTMKIGJ1aWxkX3N0 eWxlPWdudS1jb25maWd1cmUKIGNvbmZpZ3VyZV9hcmdzPSItLWRpc2FibGUtZ21lIC0tZGlzYWJs ZS1saWJ0YXIgLS1lbmFibGUtamFjawogIC0tZW5hYmxlLWxpdmU1NTUgLS1kaXNhYmxlLWZsdWlk c3ludGggLS1lbmFibGUtZHZkcmVhZAoKRnJvbSA2NmYzODczZmIyNmMzM2I5MGRhNGIwNmM2NmZi ZDdiYzQwNDdjYTk1IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBQZXRlciBCdWkgPHBi dWlAZ2l0aHViLmJ4NjEyLnNwYWNlPgpEYXRlOiBTYXQsIDI2IE9jdCAyMDE5IDIxOjM3OjU1IC0w NDAwClN1YmplY3Q6IFtQQVRDSCAwMDMvMTg2XSBtcHY6IHVwZGF0ZSB0byAwLjMwLjAuCgotLS0K IHNyY3BrZ3MvbXB2L3RlbXBsYXRlIHwgMjIgKysrKysrKysrKystLS0tLS0tLS0tLQogMSBmaWxl IGNoYW5nZWQsIDExIGluc2VydGlvbnMoKyksIDExIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBh L3NyY3BrZ3MvbXB2L3RlbXBsYXRlIGIvc3JjcGtncy9tcHYvdGVtcGxhdGUKaW5kZXggODZmNThl YmZhYjUuLmE1M2M5MmE3ODJjIDEwMDY0NAotLS0gYS9zcmNwa2dzL21wdi90ZW1wbGF0ZQorKysg Yi9zcmNwa2dzL21wdi90ZW1wbGF0ZQpAQCAtMSwyOSArMSwyOSBAQAogIyBUZW1wbGF0ZSBmaWxl IGZvciAnbXB2JwogcGtnbmFtZT1tcHYKLXZlcnNpb249MC4yOS4xCi1yZXZpc2lvbj03Cit2ZXJz aW9uPTAuMzAuMAorcmV2aXNpb249MQogYnVpbGRfc3R5bGU9d2FmCiBjb25maWd1cmVfYXJncz0i LS1jb25mZGlyPS9ldGMvbXB2IC0tZG9jZGlyPS91c3Ivc2hhcmUvZXhhbXBsZXMvbXB2Ci0gLS1l bmFibGUtZHZkcmVhZCAtLWVuYWJsZS1kdmRuYXYgLS1lbmFibGUtY2RkYSAtLWVuYWJsZS1saWJt cHYtc2hhcmVkCisgLS1lbmFibGUtZHZkbmF2IC0tZW5hYmxlLWR2ZG5hdiAtLWVuYWJsZS1jZGRh IC0tZW5hYmxlLWxpYm1wdi1zaGFyZWQKICAtLWVuYWJsZS1kdmJpbiAtLWVuYWJsZS1saWJhcmNo aXZlICQodm9wdF9lbmFibGUgYWxzYSkgJCh2b3B0X2VuYWJsZSBjYWNhKQogICQodm9wdF9lbmFi bGUgamFjaykgJCh2b3B0X2VuYWJsZSBsdWEpICQodm9wdF9lbmFibGUgb3NzIG9zcy1hdWRpbykK ICAkKHZvcHRfZW5hYmxlIHB1bHNlYXVkaW8gcHVsc2UpICQodm9wdF9lbmFibGUgc2RsMikKLSAk KHZvcHRfZW5hYmxlIHNtYiBsaWJzbWJjbGllbnQpICQodm9wdF9lbmFibGUgc25kaW8pICQodm9w dF9lbmFibGUgdjRsMiB0dikKKyAkKHZvcHRfZW5hYmxlIHNtYiBsaWJzbWJjbGllbnQpICQodm9w dF9lbmFibGUgc25kaW8pCiAgJCh2b3B0X2VuYWJsZSB2YXBvdXJzeW50aCkgJCh2b3B0X2VuYWJs ZSB2ZHBhdSkgJCh2b3B0X2VuYWJsZSB3YXlsYW5kKQogICQodm9wdF9lbmFibGUgeDExKSAkKHZv cHRfZW5hYmxlIHZ1bGthbikgJCh2b3B0X2VuYWJsZSB2dWxrYW4gc2hhZGVyYykiCiBob3N0bWFr ZWRlcGVuZHM9InBrZy1jb25maWcgcHl0aG9uLWRvY3V0aWxzIHBlcmwgJCh2b3B0X2lmIHdheWxh bmQgd2F5bGFuZC1kZXZlbCkiCiBtYWtlZGVwZW5kcz0iTWVzYUxpYi1kZXZlbCBmZm1wZWctZGV2 ZWwgaGFyZmJ1enotZGV2ZWwgbGNtczItZGV2ZWwgbGliWHYtZGV2ZWwKICBsaWJhc3MtZGV2ZWwg bGliYmx1cmF5LWRldmVsIGxpYmNkaW8tcGFyYW5vaWEtZGV2ZWwgbGliZHZkbmF2LWRldmVsCi0g bGliZHZkcmVhZC1kZXZlbCBsaWJndWVzcy1kZXZlbCBsaWJ1dWlkLWRldmVsIGxpYnZhLWdseC1k ZXZlbCBydWJiZXJiYW5kLWRldmVsCisgbGliZHZkbmF2LWRldmVsIGxpYmd1ZXNzLWRldmVsIGxp YnV1aWQtZGV2ZWwgbGlidmEtZ2x4LWRldmVsIHJ1YmJlcmJhbmQtZGV2ZWwKICBsaWJhcmNoaXZl LWRldmVsICQodm9wdF9pZiBhbHNhIGFsc2EtbGliLWRldmVsKSAkKHZvcHRfaWYgY2FjYSBsaWJj YWNhLWRldmVsKQogICQodm9wdF9pZiBqYWNrIGphY2stZGV2ZWwpICQodm9wdF9pZiBsdWEgbHVh NTItZGV2ZWwpCiAgJCh2b3B0X2lmIHB1bHNlYXVkaW8gcHVsc2VhdWRpby1kZXZlbCkgJCh2b3B0 X2lmIHNkbDIgU0RMMi1kZXZlbCkKICAkKHZvcHRfaWYgc21iIHNhbWJhLWRldmVsKSAkKHZvcHRf aWYgc25kaW8gc25kaW8tZGV2ZWwpCi0gJCh2b3B0X2lmIHY0bDIgdjRsLXV0aWxzLWRldmVsKSAk KHZvcHRfaWYgdmFwb3Vyc3ludGggdmFwb3Vyc3ludGgtZGV2ZWwpCisgJCh2b3B0X2lmIHZhcG91 cnN5bnRoIHZhcG91cnN5bnRoLWRldmVsKQogICQodm9wdF9pZiB2ZHBhdSBsaWJ2ZHBhdS1kZXZl bCkgJCh2b3B0X2lmIHdheWxhbmQgIndheWxhbmQtZGV2ZWwKICB3YXlsYW5kLXByb3RvY29scyBs aWJ4a2Jjb21tb24tZGV2ZWwiKQogICQodm9wdF9pZiB4MTEgImxpYlhTY3JuU2F2ZXItZGV2ZWwg bGliWGluZXJhbWEtZGV2ZWwgbGliWHJhbmRyLWRldmVsIikKLSAkKHZvcHRfaWYgdnVsa2FuICdW dWxrYW4tSGVhZGVycyB2dWxrYW4tbG9hZGVyIHNoYWRlcmMnKSIKKyAkKHZvcHRfaWYgdnVsa2Fu ICdWdWxrYW4tSGVhZGVycyB2dWxrYW4tbG9hZGVyIHNoYWRlcmMgbGlicGxhY2Viby1kZXZlbCcp IgogZGVwZW5kcz0iZGVza3RvcC1maWxlLXV0aWxzIGhpY29sb3ItaWNvbi10aGVtZSAkKHZvcHRf aWYgdmFwb3Vyc3ludGggdmFwb3Vyc3ludGgtbXZ0b29scykiCiBzaG9ydF9kZXNjPSJWaWRlbyBw bGF5ZXIgYmFzZWQgb24gTVBsYXllci9tcGxheWVyMiIKIG1haW50YWluZXI9Ik9ycGhhbmVkIDxv cnBoYW5Adm9pZGxpbnV4Lm9yZz4iCkBAIC0zMSwxNyArMzEsMTcgQEAgbGljZW5zZT0iR1BMLTIu MC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL21wdi5pbyIKIGNoYW5nZWxvZz0iaHR0cHM6 Ly9naXRodWIuY29tL21wdi1wbGF5ZXIvbXB2L3JlbGVhc2VzIgogZGlzdGZpbGVzPSJodHRwczov L2dpdGh1Yi5jb20vbXB2LXBsYXllci8ke3BrZ25hbWV9L2FyY2hpdmUvdiR7dmVyc2lvbn0udGFy Lmd6IgotY2hlY2tzdW09ZjlmOWQ0NjFkMTk5MGY5NzI4NjYwYjRjY2IwZThjYjVkY2UyOWNjYWE2 YWY1NjdiZWM0ODFiNzkyOTFjYTYyMworY2hlY2tzdW09MzNhMWJjYjdlNzRmZjE3ZjA3MGU3NTRj MTVjNTIyMjhjZjQ0ZjJjZWZiZmQ4ZjM0ODg2YWU4MWRmMjE0Y2EzNQogCiBidWlsZF9vcHRpb25z PSJhbHNhIGNhY2EgamFjayBsdWEgb3NzIHB1bHNlYXVkaW8gc2RsMiBzbWIgc25kaW8gdmFwb3Vy c3ludGgKLSB2ZHBhdSB2NGwyIHdheWxhbmQgeDExIHZ1bGthbiIKLWJ1aWxkX29wdGlvbnNfZGVm YXVsdD0iYWxzYSBqYWNrIGx1YSBwdWxzZWF1ZGlvIHNuZGlvIHZkcGF1IHdheWxhbmQgeDExIHY0 bDIgdnVsa2FuIgorIHZkcGF1IHdheWxhbmQgeDExIHZ1bGthbiIKK2J1aWxkX29wdGlvbnNfZGVm YXVsdD0iYWxzYSBqYWNrIGx1YSBwdWxzZWF1ZGlvIHNuZGlvIHZkcGF1IHdheWxhbmQgeDExIHZ1 bGthbiIKIGRlc2Nfb3B0aW9uX2NhY2E9IkVuYWJsZSBzdXBwb3J0IGZvciBsaWJjYWNhIHZpZGVv IG91dHB1dCIKIGRlc2Nfb3B0aW9uX29zcz0iRW5hYmxlIHN1cHBvcnQgZm9yIE9TUyBhdWRpbyBv dXRwdXQiCiB2b3B0X2NvbmZsaWN0IHNkbDIgd2F5bGFuZAogCiBpZiBbIC16ICIkQ1JPU1NfQlVJ TEQiIF07IHRoZW4KLQljb25maWd1cmVfYXJncys9IiAtLWVuYWJsZS16c2gtY29tcCIKKwljb25m aWd1cmVfYXJncys9IiAtLXpzaGRpcj0vdXNyL3NoYXJlL3pzaC9zaXRlLWZ1bmN0aW9ucyIKIGZp CiAKIHByZV9jb25maWd1cmUoKSB7CgpGcm9tIDNiZWYxMmJhZjQzNDdhNTNlM2Y2NTRhNjRkOTBl YTAzYzkwOGNiMDEgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IEp1YW4gUlAgPHh0cmFl bWVAZ21haWwuY29tPgpEYXRlOiBTdW4sIDI3IE9jdCAyMDE5IDEyOjAwOjA3ICswMTAwClN1Ympl Y3Q6IFtQQVRDSCAwMDQvMTg2XSBjb21tb24vc2hsaWJzOiB1cGRhdGUgZm9yIGxpYnBsYWNlYm8t MS4yMS4wLgoKLS0tCiBjb21tb24vc2hsaWJzIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5z ZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvY29tbW9uL3NobGlicyBiL2Nv bW1vbi9zaGxpYnMKaW5kZXggZWMzNmM5Y2ViMDEuLjkzNWJjNmM5YmJkIDEwMDY0NAotLS0gYS9j b21tb24vc2hsaWJzCisrKyBiL2NvbW1vbi9zaGxpYnMKQEAgLTMyNjQsNyArMzI2NCw3IEBAIGxp YmtpZDMtZ3VpLnNvLjMuOC4wIGtpZDMtMy44LjBfMQogbGliY2ZpdHNpby5zby4zIGNmaXRzaW8t My40NTBfMQogbGliYXBwYXJtb3Iuc28uMSBsaWJhcHBhcm1vci0yLjEyLjBfMQogbGliZ3NldHRp bmdzLXF0LnNvLjEgZ3NldHRpbmdzLXF0LTAuMSsxNy4xMC4yMDE3MDgyNF8xCi1saWJwbGFjZWJv LnNvLjcgbGlicGxhY2Viby0xLjcuMF8xCitsaWJwbGFjZWJvLnNvLjIxIGxpYnBsYWNlYm8tMS4y MS4wXzEKIGxpYncyeGMuc28gd2FpZnUyeC1jb252ZXJ0ZXItY3BwLTUuMl8xCiBsaWJub3ZhLTAu MTUuc28uMCBsaWJub3ZhLTAuMTUuMF8xCiBsaWJkdGtjb3JlLnNvLjIgZHRrY29yZS0yLjAuNl8x CgpGcm9tIDAwMzFhNzIyMTdiMjUwNTczZjczMjgyOTY5NTEwZDM1NjI5ZWYzOWMgTW9uIFNlcCAx NyAwMDowMDowMCAyMDAxCkZyb206IEp1YW4gUlAgPHh0cmFlbWVAZ21haWwuY29tPgpEYXRlOiBT dW4sIDI3IE9jdCAyMDE5IDEyOjE0OjI0ICswMTAwClN1YmplY3Q6IFtQQVRDSCAwMDUvMTg2XSB4 YnBzLXNyYy9jaHJvb3Quc2g6IGluaXRpYWxpemUgWEJQU19DT05GSUdfRklMRS4KCkZpeGVzICMx NTIwOAotLS0KIGNvbW1vbi94YnBzLXNyYy9zaHV0aWxzL2Nocm9vdC5zaCB8IDEgKwogMSBmaWxl IGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspCgpkaWZmIC0tZ2l0IGEvY29tbW9uL3hicHMtc3JjL3No dXRpbHMvY2hyb290LnNoIGIvY29tbW9uL3hicHMtc3JjL3NodXRpbHMvY2hyb290LnNoCmluZGV4 IGE5NDZmZDFhY2ZiLi5iODgwZDQxNTFkMiAxMDA2NDQKLS0tIGEvY29tbW9uL3hicHMtc3JjL3No dXRpbHMvY2hyb290LnNoCisrKyBiL2NvbW1vbi94YnBzLXNyYy9zaHV0aWxzL2Nocm9vdC5zaApA QCAtNSw2ICs1LDcgQEAKIGNocm9vdF9pbml0KCkgewogICAgIG1rZGlyIC1wICRYQlBTX01BU1RF UkRJUi9ldGMveGJwcwogCisgICAgOiAke1hCUFNfQ09ORklHX0ZJTEU9L2Rldi9udWxsfQogICAg IGNhdCA+ICRYQlBTX01BU1RFUkRJUi9ldGMveGJwcy94YnBzLXNyYy5jb25mIDw8X0VPRgogIyBH ZW5lcmF0ZWQgY29uZmlndXJhdGlvbiBmaWxlIGJ5IHhicHMtc3JjLCBETyBOT1QgRURJVCEKICQo Z3JlcCAtRSAnXlhCUFNfLionICIkWEJQU19DT05GSUdfRklMRSIpCgpGcm9tIDFjZGZjMTE2NTkw ODU3MzczMWFmOTAyZTlmYjE4MmFiNjk1YzA3ODEgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZy b206IEp1YW4gUlAgPHh0cmFlbWVAZ21haWwuY29tPgpEYXRlOiBTdW4sIDI3IE9jdCAyMDE5IDEy OjE1OjQ5ICswMTAwClN1YmplY3Q6IFtQQVRDSCAwMDYvMTg2XSB4YnBzLXNyYy9jaHJvb3Quc2g6 IGZpeCBwcmV2aW91cyBjb3JyZWN0bHkKCi0tLQogY29tbW9uL3hicHMtc3JjL3NodXRpbHMvY2hy b290LnNoIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9u KC0pCgpkaWZmIC0tZ2l0IGEvY29tbW9uL3hicHMtc3JjL3NodXRpbHMvY2hyb290LnNoIGIvY29t bW9uL3hicHMtc3JjL3NodXRpbHMvY2hyb290LnNoCmluZGV4IGI4ODBkNDE1MWQyLi45YzM2YTE3 MzI1NSAxMDA2NDQKLS0tIGEvY29tbW9uL3hicHMtc3JjL3NodXRpbHMvY2hyb290LnNoCisrKyBi L2NvbW1vbi94YnBzLXNyYy9zaHV0aWxzL2Nocm9vdC5zaApAQCAtNSw3ICs1LDcgQEAKIGNocm9v dF9pbml0KCkgewogICAgIG1rZGlyIC1wICRYQlBTX01BU1RFUkRJUi9ldGMveGJwcwogCi0gICAg OiAke1hCUFNfQ09ORklHX0ZJTEU9L2Rldi9udWxsfQorICAgIDogJHtYQlBTX0NPTkZJR19GSUxF Oj0vZGV2L251bGx9CiAgICAgY2F0ID4gJFhCUFNfTUFTVEVSRElSL2V0Yy94YnBzL3hicHMtc3Jj LmNvbmYgPDxfRU9GCiAjIEdlbmVyYXRlZCBjb25maWd1cmF0aW9uIGZpbGUgYnkgeGJwcy1zcmMs IERPIE5PVCBFRElUIQogJChncmVwIC1FICdeWEJQU18uKicgIiRYQlBTX0NPTkZJR19GSUxFIikK CkZyb20gMjNmYWJiNmM1MjIwMDVkZDBkZjczNjg5MWMyZjdhMDMxZjlhYmJiMyBNb24gU2VwIDE3 IDAwOjAwOjAwIDIwMDEKRnJvbTogTGVhaCBOZXVraXJjaGVuIDxsZWFoQHZ1eHUub3JnPgpEYXRl OiBTdW4sIDI3IE9jdCAyMDE5IDE1OjAxOjQyICswMTAwClN1YmplY3Q6IFtQQVRDSCAwMDcvMTg2 XSBpbmNsdWRlLXdoYXQteW91LXVzZTogdXBkYXRlIHRvIDAuMTMuCgotLS0KIHNyY3BrZ3MvaW5j bHVkZS13aGF0LXlvdS11c2UvdGVtcGxhdGUgfCA4ICsrKystLS0tCiAxIGZpbGUgY2hhbmdlZCwg NCBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvaW5j bHVkZS13aGF0LXlvdS11c2UvdGVtcGxhdGUgYi9zcmNwa2dzL2luY2x1ZGUtd2hhdC15b3UtdXNl L3RlbXBsYXRlCmluZGV4IDMzMWM0NDQxZmEyLi4wOGRmZjg1Yjc3ZSAxMDA2NDQKLS0tIGEvc3Jj cGtncy9pbmNsdWRlLXdoYXQteW91LXVzZS90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2luY2x1ZGUt d2hhdC15b3UtdXNlL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZv ciAnaW5jbHVkZS13aGF0LXlvdS11c2UnCiBwa2duYW1lPWluY2x1ZGUtd2hhdC15b3UtdXNlCi12 ZXJzaW9uPTAuMTIKLXJldmlzaW9uPTIKK3ZlcnNpb249MC4xMworcmV2aXNpb249MQogd3Jrc3Jj PSIke3BrZ25hbWV9IgogYnVpbGRfc3R5bGU9Y21ha2UKIGNvbmZpZ3VyZV9hcmdzPSItRElXWVVf TExWTV9ST09UX1BBVEg9JHtYQlBTX0NST1NTX0JBU0V9L3VzciAiCkBAIC05LDEwICs5LDEwIEBA IG1ha2VfYnVpbGRfYXJncz0iVkVSQk9TRT0xIgogbWFrZWRlcGVuZHM9ImNsYW5nIGNsYW5nLXRv b2xzLWV4dHJhIGxsdm0gbmN1cnNlcy1kZXZlbCB6bGliLWRldmVsIgogc2hvcnRfZGVzYz0iQW5h bHl6ZSAjaW5jbHVkZXMgaW4gQyBhbmQgQysrIHNvdXJjZSBmaWxlcyIKIG1haW50YWluZXI9Ikxl YWggTmV1a2lyY2hlbiA8bGVhaEB2dXh1Lm9yZz4iCi1saWNlbnNlPSJCU0QiCitsaWNlbnNlPSJO Q1NBIgogaG9tZXBhZ2U9Imh0dHBzOi8vaW5jbHVkZS13aGF0LXlvdS11c2Uub3JnLyIKIGRpc3Rm aWxlcz0iaHR0cHM6Ly9pbmNsdWRlLXdoYXQteW91LXVzZS5vcmcvZG93bmxvYWRzLyR7cGtnbmFt ZX0tJHt2ZXJzaW9ufS5zcmMudGFyLmd6IgotY2hlY2tzdW09YTU4OTJmYjBhYmNjYjgyMGMzOTRl NGUyNDVjMDBlZjMwZmM5NGU0YWU1OGEwNDhiMjNmOTQwNDdjMDgxNjAyNQorY2hlY2tzdW09NDky OTQyNzBhYTY0ZThjMDQxODIzNjkyMTJjZDkxOWYzYjNlMGU0NzYwMWIxZjkzNWYwMzhjNzYxYzI2 NWJjOQogbm9jcm9zcz0iY3Jvc3MtdnBrZy1kdW1teSBzbmFmdSIKIAogcG9zdF9pbnN0YWxsKCkg ewoKRnJvbSBhZmVjYzI0ZTIzODM4ODQwMzc5MjMzMTZkZDJiZTlmNmQ0NGI1YTQ3IE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBMZWFoIE5ldWtpcmNoZW4gPGxlYWhAdnV4dS5vcmc+CkRh dGU6IFN1biwgMjcgT2N0IDIwMTkgMTU6MTE6MDcgKzAxMDAKU3ViamVjdDogW1BBVENIIDAwOC8x ODZdIHBhcHM6IHVwZGF0ZSB0byAwLjcuMS4KCi0tLQogc3JjcGtncy9wYXBzL3RlbXBsYXRlIHwg MTQgKysrKysrLS0tLS0tLS0KIDEgZmlsZSBjaGFuZ2VkLCA2IGluc2VydGlvbnMoKyksIDggZGVs ZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9wYXBzL3RlbXBsYXRlIGIvc3JjcGtncy9w YXBzL3RlbXBsYXRlCmluZGV4IGY5MWUxYWM3MWNlLi4wZjc5YmZjMGZkYyAxMDA2NDQKLS0tIGEv c3JjcGtncy9wYXBzL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvcGFwcy90ZW1wbGF0ZQpAQCAtMSwx NyArMSwxNSBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAncGFwcycKIHBrZ25hbWU9cGFwcwotdmVy c2lvbj0wLjcuMAordmVyc2lvbj0wLjcuMQogcmV2aXNpb249MQotYnVpbGRfc3R5bGU9Z251LWNv bmZpZ3VyZQotaG9zdG1ha2VkZXBlbmRzPSJhdXRvbWFrZSBwa2ctY29uZmlnIgorYnVpbGRfc3R5 bGU9bWVzb24KK2hvc3RtYWtlZGVwZW5kcz0icGtnLWNvbmZpZyBjbWFrZSIKIG1ha2VkZXBlbmRz PSJwYW5nby1kZXZlbCBmcmVldHlwZS1kZXZlbCIKIHNob3J0X2Rlc2M9IlVURi04IHRvIFBvc3RT Y3JpcHQgY29udmVydGVyIHZpYSBQYW5nbyIKIG1haW50YWluZXI9IkxlYWggTmV1a2lyY2hlbiA8 bGVhaEB2dXh1Lm9yZz4iCiBsaWNlbnNlPSJMR1BMLTIuMC1vci1sYXRlciIKIGhvbWVwYWdlPSJo dHRwczovL2dpdGh1Yi5jb20vZG92L3BhcHMiCi1kaXN0ZmlsZXM9Imh0dHBzOi8vZ2l0aHViLmNv bS9kb3YvcGFwcy9hcmNoaXZlLyR7dmVyc2lvbn0udGFyLmd6IgotY2hlY2tzdW09N2ExOGU4MDk2 OTQ0YTIxZTBkOWZjZmIzODk3NzBkMWU3NjcyYmE5MDU2OTE4MGNiNWQ0NTk4NDkxNGNlZGIxMwor ZGlzdGZpbGVzPSJodHRwczovL2dpdGh1Yi5jb20vZG92L3BhcHMvYXJjaGl2ZS92JHt2ZXJzaW9u fS50YXIuZ3oiCitjaGVja3N1bT1iOGNiZDE2ZjhkZDU4MzJlY2ZhOTkwN2QzMTQxMWIzNWE3ZjEy ZDgxYTVlYzQ3MmExNTU1ZDAwYThhMjA1ZTBlCiAKLXByZV9jb25maWd1cmUoKSB7Ci0JYXV0b3Jl Y29uZiAtZmkKLX0KK0NGTEFHUz0iLURfWE9QRU5fU09VUkNFIgoKRnJvbSA3NWZkNGI5MDZmNGNk ODhmZmQ2YTlkYTgzMjVmYWQ4MDA3ZWVmMTI5IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9t OiBMZWFoIE5ldWtpcmNoZW4gPGxlYWhAdnV4dS5vcmc+CkRhdGU6IFN1biwgMjcgT2N0IDIwMTkg MTU6Mjg6MDEgKzAxMDAKU3ViamVjdDogW1BBVENIIDAwOS8xODZdIHNiY2w6IHVwZGF0ZSB0byAx LjUuOC4KCi0tLQogc3JjcGtncy9zYmNsL3RlbXBsYXRlIHwgNiArKystLS0KIDEgZmlsZSBjaGFu Z2VkLCAzIGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtn cy9zYmNsL3RlbXBsYXRlIGIvc3JjcGtncy9zYmNsL3RlbXBsYXRlCmluZGV4IDJjZWNhYmZkYmVl Li4yMmNmM2QyNjQ0MSAxMDA2NDQKLS0tIGEvc3JjcGtncy9zYmNsL3RlbXBsYXRlCisrKyBiL3Ny Y3BrZ3Mvc2JjbC90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3Ig J3NiY2wnCiBwa2duYW1lPXNiY2wKLXZlcnNpb249MS41LjcKK3ZlcnNpb249MS41LjgKIHJldmlz aW9uPTEKIGFyY2hzPSJpNjg2IHg4Nl82NCogYXJtdjdsIGFhcmNoNjQiCiAKQEAgLTEzLDcgKzEz LDcgQEAgbGljZW5zZT0iY3VzdG9tIgogaG9tZXBhZ2U9Imh0dHA6Ly93d3cuc2JjbC5vcmcvIgog Y2hhbmdlbG9nPSJodHRwOi8vd3d3LnNiY2wub3JnL25ld3MuaHRtbCIKIGRpc3RmaWxlcz0iJHtT T1VSQ0VGT1JHRV9TSVRFfS8ke3BrZ25hbWV9LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS1zb3VyY2Uu dGFyLmJ6MiIKLWNoZWNrc3VtPTU0NzQyZmI1ZTJmM2YzNTBmYmFmZDcyYmM3MzY2MmZjYTIxMzgy YjU1NTNlZDZhMTQ2MDk4OTUwZDI0MDk0ODUKK2NoZWNrc3VtPTg0NTcyZjkxMzNkMTNjOTgyZGIx M2QxNzY4ZDM4MzMxNDIxMjA0YmMwY2EwODNkYWNjNTM2NGU0Njc5NmZmNGMKIG5vY3Jvc3M9eWVz CiBub3BpZT15ZXMKIApAQCAtMjEsNyArMjEsNyBAQCBfYm9vdHN0cmFwX2xpc3A9ImJhc2ggLi4v c2JjbC0qLWxpbnV4L3J1bi1zYmNsLnNoIC0tbm8tc3lzaW5pdCAtLW5vLXVzZXJpbml0IC0tZAog Y2FzZSAiJFhCUFNfVEFSR0VUX01BQ0hJTkUiIGluCiB4ODZfNjQpCiAJZGlzdGZpbGVzKz0iICR7 U09VUkNFRk9SR0VfU0lURX0vJHtwa2duYW1lfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0teDg2LTY0 LWxpbnV4LWJpbmFyeS50YXIuYnoyIgotCWNoZWNrc3VtKz0iIDdmNDFjNDgwMDc2Y2U1OTE3YzYw NDIxOWFkMGU2ZTI4YWY0NzdkYzQ0NmIwMDJiM2M0ZDI5OTY0NDA5N2FmMzIiCisJY2hlY2tzdW0r PSIgNjNmY2E5ZmIzMGFhYjc5MzlkMWJlZTBlOWIxZTk5NWJlNGQ5N2IwYzQ4MDY3MGNlZWFiZThl NzM2M2QzOTRkOSIKIAk7OwogaTY4NikKIAlkaXN0ZmlsZXMrPSIgJHtTT1VSQ0VGT1JHRV9TSVRF fS8ke3BrZ25hbWV9LyR7cGtnbmFtZX0tMS40LjMteDg2LWxpbnV4LWJpbmFyeS50YXIuYnoyIgoK RnJvbSBiMmUzOWEwOTc4NGZmOGQ2N2Y3MDE1YjViYWFjZDNiOTU3NTFhNTAwIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZWEgQnJhbmNhbGVvbmkgPGFiY0Bwb21wZWwubWU+CkRh dGU6IFN1biwgMjcgT2N0IDIwMTkgMTg6MjA6MDIgKzAxMDAKU3ViamVjdDogW1BBVENIIDAxMC8x ODZdIGJldHRlcmNhcDogdXBkYXRlIHRvIDIuMjYuMS4KCi0tLQogc3JjcGtncy9iZXR0ZXJjYXAv dGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVs ZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9iZXR0ZXJjYXAvdGVtcGxhdGUgYi9zcmNw a2dzL2JldHRlcmNhcC90ZW1wbGF0ZQppbmRleCBmYTJmMTkyOTE0Zi4uNjI0ODcyYjM1NGIgMTAw NjQ0Ci0tLSBhL3NyY3BrZ3MvYmV0dGVyY2FwL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvYmV0dGVy Y2FwL3RlbXBsYXRlCkBAIC0xLDYgKzEsNiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnYmV0dGVy Y2FwJwogcGtnbmFtZT1iZXR0ZXJjYXAKLXZlcnNpb249Mi4yNgordmVyc2lvbj0yLjI2LjEKIHJl dmlzaW9uPTEKIGJ1aWxkX3N0eWxlPWdvCiBnb19pbXBvcnRfcGF0aD1naXRodWIuY29tL2JldHRl cmNhcC9iZXR0ZXJjYXAKQEAgLTExLDcgKzExLDcgQEAgbWFpbnRhaW5lcj0iQW5kcmVhIEJyYW5j YWxlb25pIDxhYmNAcG9tcGVsLm1lPiIKIGxpY2Vuc2U9IkdQTC0zLjAtb25seSIKIGhvbWVwYWdl PSJodHRwczovL2dpdGh1Yi5jb20vYmV0dGVyY2FwL2JldHRlcmNhcCIKIGRpc3RmaWxlcz0iaHR0 cHM6Ly9naXRodWIuY29tL2JldHRlcmNhcC9iZXR0ZXJjYXAvYXJjaGl2ZS92JHt2ZXJzaW9ufS50 YXIuZ3oiCi1jaGVja3N1bT1lZmE5ZDZhNmM2M2Q3MTVjMDVhODg5OGZmODRiZGU4ZDlkZWQwMjIy OTZiMTQyNDVhNTQ1YTYxNjFjYzZmMWY2CitjaGVja3N1bT03NTUzMDAxNWVlMjdlNWJhMDVmYWZm MDI5NTQ4NmNhODU0ODllY2Q5ZGUzMTYxY2EzOThhOWI1Nzc1MjJjNTc4CiAKIGNhc2UgIiRYQlBT X1RBUkdFVF9NQUNISU5FIiBpbgogCXg4Nl82NC1tdXNsKSBicm9rZW49ImZhaWxzIHRvIGJ1aWxk IiA7OwoKRnJvbSBkZjhhNDhkZTM1MzlmOTg2Y2Y4MjZkZmJlN2U1YzMwNjRmYjMwZDIyIE1vbiBT ZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiA9P1VURi04P3E/Sj1DMz1CQ3JnZW49MjBCdWNobT1D Mz1CQ2xsZXI/PSA8cHVsbG1vbGxAdC1vbmxpbmUuZGU+CkRhdGU6IFN1biwgMjcgT2N0IDIwMTkg MTk6MDY6NDIgKzAxMDAKU3ViamVjdDogW1BBVENIIDAxMS8xODZdIGxvbGx5cG9wOiB1cGRhdGUg dG8gMS4yLjIKTUlNRS1WZXJzaW9uOiAxLjAKQ29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFy c2V0PVVURi04CkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IDhiaXQKClNpZ25lZC1vZmYtYnk6 IErDvHJnZW4gQnVjaG3DvGxsZXIgPHB1bGxtb2xsQHQtb25saW5lLmRlPgotLS0KIHNyY3BrZ3Mv bG9sbHlwb3AvdGVtcGxhdGUgfCA2ICsrKy0tLQogMSBmaWxlIGNoYW5nZWQsIDMgaW5zZXJ0aW9u cygrKSwgMyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2xvbGx5cG9wL3RlbXBs YXRlIGIvc3JjcGtncy9sb2xseXBvcC90ZW1wbGF0ZQppbmRleCA2MDU5Yjg1YTIzMi4uZDI5MDM1 MzQxMWMgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvbG9sbHlwb3AvdGVtcGxhdGUKKysrIGIvc3JjcGtn cy9sb2xseXBvcC90ZW1wbGF0ZQpAQCAtMSw5ICsxLDkgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3Ig J2xvbGx5cG9wJwogcGtnbmFtZT1sb2xseXBvcAotdmVyc2lvbj0xLjIuMQordmVyc2lvbj0xLjIu MgogcmV2aXNpb249MQogIyBHaXRsYWIgdXBsb2FkIHRhZyBoYXNoCi1fdWhhc2g9MTVlYmIxZjUz ODdlMzk4YTI4NzlmMmI1MmQ1N2Q4ZGMKK191aGFzaD1hYTRmYmQ5MmJmMzM4Mjk2YzI4ZTU0NzEw MjcxY2NhYgogYXJjaHM9bm9hcmNoCiBidWlsZF9zdHlsZT1tZXNvbgogcHljb21waWxlX21vZHVs ZT0ibG9sbHlwb3AiCkBAIC0xNiw0ICsxNiw0IEBAIG1haW50YWluZXI9IkrDvHJnZW4gQnVjaG3D vGxsZXIgPHB1bGxtb2xsQHQtb25saW5lLmRlPiIKIGxpY2Vuc2U9IkdQTC0zLjAtb3ItbGF0ZXIi CiBob21lcGFnZT0iaHR0cHM6Ly93aWtpLmdub21lLm9yZy9BcHBzL0xvbGx5cG9wIgogZGlzdGZp bGVzPSJodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvV29ybGQvJHtwa2duYW1lfS91cGxvYWRzLyR7 X3VoYXNofS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09MWZlODkzNGQx M2Q3NWEzODI2OTFlNDljZmEwNGRiZTEwOWVjYTAzODQwYmIzODcwNzRmMjJjYjQ3YmE0NjJiZQor Y2hlY2tzdW09MTQ3Yjk3OTEyYjc3Yjg0NjFjZjk1OGY3ZjRiMzRlYjkyMGY1N2I4MzVjYzYyNGUw ZDkyMzYzMjI5NDc1ZTVmMwoKRnJvbSAzYjBlNzU4OWI5NGE2NjUwMjE0YmRiOTQyMDE3OWIyNjcy NTcwZDk2IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOb2VsIENvd2VyIDxuY293ZXJA Z21haWwuY29tPgpEYXRlOiBUaHUsIDE3IE9jdCAyMDE5IDEyOjExOjA1IC0wNzAwClN1YmplY3Q6 IFtQQVRDSCAwMTIvMTg2XSBnbzogdXBkYXRlIHRvIDEuMTMuMy4KCi0tLQogc3JjcGtncy9nby90 ZW1wbGF0ZSB8IDQgKystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxl dGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2dvL3RlbXBsYXRlIGIvc3JjcGtncy9nby90 ZW1wbGF0ZQppbmRleCBmNzRmNGM5YTBjZS4uYTVjNTIwODI1ODAgMTAwNjQ0Ci0tLSBhL3NyY3Br Z3MvZ28vdGVtcGxhdGUKKysrIGIvc3JjcGtncy9nby90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAK ICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2dvJwogcGtnbmFtZT1nbwotdmVyc2lvbj0xLjEzLjEKK3Zl cnNpb249MS4xMy4zCiByZXZpc2lvbj0xCiBjcmVhdGVfd3Jrc3JjPXllcwogYnVpbGRfd3Jrc3Jj PWdvCkBAIC0xMCw3ICsxMCw3IEBAIG1haW50YWluZXI9Ik1pY2hhZWwgQWxkcmlkZ2UgPG1hbGRy aWRnZUB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkJTRC0zLUNsYXVzZSIKIGhvbWVwYWdlPSJo dHRwOi8vZ29sYW5nLm9yZy8iCiBkaXN0ZmlsZXM9Imh0dHBzOi8vZ29sYW5nLm9yZy9kbC9nbyR7 dmVyc2lvbn0uc3JjLnRhci5neiIKLWNoZWNrc3VtPTgxZjE1NGU2OTU0NGI5ZmE5MmIxNDc1ZmY1 ZjExZTY0MjcwMjYwZDQ2ZTdlMzZjMzRhYWZjOGJjOTYyMDkzNTgKK2NoZWNrc3VtPTRmNzEyMzA0 NDM3NWQ1YzQwNDI4MDczN2ZiZDJkMGIxNzA2NGI2NjE4MmE2NTkxOWZmZTIwZmZlODYyMGUzZGYK IAogbm9zdHJpcD15ZXMKIG5vdmVyaWZ5cmRlcHM9eWVzCgpGcm9tIDA1MzgzZjEzZjI5OGVjZmNl ZjU3YWNjNjRlYjUxYjZmOTFkYmMwNDYgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IFBp cmF0eSA8cGlyYXR5MUBpbmJveC5ydT4KRGF0ZTogU3VuLCAyNyBPY3QgMjAxOSAyMTo1NToyOCAr MDEwMApTdWJqZWN0OiBbUEFUQ0ggMDEzLzE4Nl0ga2VlcGFzc3hjOiBhY2NvdW50IGZvciBuZXcg ZmVhdHVyZXMgaW4gMi41LjAKCiogYWRkIGJ1aWxkIG9wdGlvbjogRkRPIHNlY3JldCBzdG9yYWdl CiogYWRkIHJlYWRsaW5lIGZvciBpbnRlcmFjdGl2ZSBDTEkgc2Vzc2lvbnMKKiBhZGQgY2hhbmdl bG9nIGZpZWxkCi0tLQogc3JjcGtncy9rZWVwYXNzeGMvdGVtcGxhdGUgfCA5ICsrKysrKy0tLQog MSBmaWxlIGNoYW5nZWQsIDYgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKCmRpZmYgLS1n aXQgYS9zcmNwa2dzL2tlZXBhc3N4Yy90ZW1wbGF0ZSBiL3NyY3BrZ3Mva2VlcGFzc3hjL3RlbXBs YXRlCmluZGV4IDQ3ZDlhN2I1ZjIxLi42MmU3NTgwMjMxZCAxMDA2NDQKLS0tIGEvc3JjcGtncy9r ZWVwYXNzeGMvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9rZWVwYXNzeGMvdGVtcGxhdGUKQEAgLTEs MTEgKzEsMTIgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2tlZXBhc3N4YycKIHBrZ25hbWU9a2Vl cGFzc3hjCiB2ZXJzaW9uPTIuNS4wCi1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiBidWlsZF9zdHls ZT1jbWFrZQogY29uZmlndXJlX2FyZ3M9Ii1EV0lUSF9URVNUUz1PTiAtRFdJVEhfWENfVVBEQVRF Q0hFQ0s9T0ZGCiAgLURXSVRIX1hDX0FVVE9UWVBFPSQodm9wdF9pZiBhdXRvdHlwZSBPTiBPRkYp CiAgLURXSVRIX1hDX0JST1dTRVI9JCh2b3B0X2lmIGJyb3dzZXIgT04gT0ZGKQorIC1EV0lUSF9Y Q19GRE9TRUNSRVRTPSQodm9wdF9pZiBmZG9zZWNyZXRzIE9OIE9GRikKICAtRFdJVEhfWENfS0VF U0hBUkU9JCh2b3B0X2lmIGtlZXNoYXJlIE9OIE9GRikKICAtRFdJVEhfWENfS0VFU0hBUkVfU0VD VVJFPSQodm9wdF9pZiBrZWVzaGFyZSBPTiBPRkYpCiAgLURXSVRIX1hDX05FVFdPUktJTkc9JCh2 b3B0X2lmIG5ldHdvcmsgT04gT0ZGKQpAQCAtMTMsNyArMTQsNyBAQCBjb25maWd1cmVfYXJncz0i LURXSVRIX1RFU1RTPU9OIC1EV0lUSF9YQ19VUERBVEVDSEVDSz1PRkYKICAtRFdJVEhfWENfWVVC SUtFWT0kKHZvcHRfaWYgeXViaWtleSBPTiBPRkYpIgogaG9zdG1ha2VkZXBlbmRzPSJxdDUtcW1h a2UgcXQ1LWhvc3QtdG9vbHMiCiBtYWtlZGVwZW5kcz0icXQ1LXRvb2xzLWRldmVsIHF0NS1zdmct ZGV2ZWwgbGliZ2NyeXB0LWRldmVsIGxpYmFyZ29uMi1kZXZlbAotIHFyZW5jb2RlLWRldmVsCisg cXJlbmNvZGUtZGV2ZWwgcmVhZGxpbmUtZGV2ZWwKICAkKHZvcHRfaWYgYXV0b3R5cGUgJ3F0NS14 MTFleHRyYXMtZGV2ZWwgbGliWHRzdC1kZXZlbCBsaWJYaS1kZXZlbCcpCiAgJCh2b3B0X2lmIGJy b3dzZXIgbGlic29kaXVtLWRldmVsKQogICQodm9wdF9pZiBrZWVzaGFyZSBxdWF6aXAtZGV2ZWwp CkBAIC0yMywxMyArMjQsMTUgQEAgbWFpbnRhaW5lcj0iUGlyYXR5IDxwaXJhdHkxQGluYm94LnJ1 PiIKIGxpY2Vuc2U9IkdQTC0zLjAtb3ItbGF0ZXIsIEJTRC0zLUNsYXVzZSwgQ0MwLTEuMCwgTEdQ TC0yLjAtb25seSwgTEdQTC0yLjEtb25seSwKICBMR1BMLTMuMC1vci1sYXRlciwgTm9raWEtUXQt ZXhjZXB0aW9uLTEuMSwgTUlULCBCU0wtMS4wIgogaG9tZXBhZ2U9Imh0dHBzOi8va2VlcGFzc3hj Lm9yZy8iCitjaGFuZ2Vsb2c9Imh0dHBzOi8vZ2l0aHViLmNvbS9rZWVwYXNzeHJlYm9vdC9rZWVw YXNzeGMvYmxvYi8ke3ZlcnNpb259L0NIQU5HRUxPRy5tZCIKIGRpc3RmaWxlcz0iaHR0cHM6Ly9n aXRodWIuY29tL2tlZXBhc3N4cmVib290L2tlZXBhc3N4Yy9yZWxlYXNlcy9kb3dubG9hZC8ke3Zl cnNpb259L2tlZXBhc3N4Yy0ke3ZlcnNpb259LXNyYy50YXIueHoiCiBjaGVja3N1bT02MzU5Y2U5 NzJiNzIwYThiY2UxZThiYTU0MDAwNjY2ZTljNThmOTE2NGYyZTllNTJiZWYyZTI0ZTQ2MTI3ODgx CiAKICMgaHR0cHM6Ly9naXRodWIuY29tL2tlZXBhc3N4cmVib290L2tlZXBhc3N4Yy9ibG9iL2E3 NzUwMzFmZTk0NzEzMTBlNTAyMzJkMTg2MWQ0OTkxZTI4MDNhZmYvQ01ha2VMaXN0cy50eHQjTDQ2 Ci1idWlsZF9vcHRpb25zPSJhdXRvdHlwZSBicm93c2VyIGtlZXNoYXJlIG5ldHdvcmsgc3NoYWdl bnQgeXViaWtleSIKK2J1aWxkX29wdGlvbnM9ImF1dG90eXBlIGJyb3dzZXIgZmRvc2VjcmV0cyBr ZWVzaGFyZSBuZXR3b3JrIHNzaGFnZW50IHl1YmlrZXkiCiBkZXNjX29wdGlvbl9hdXRvdHlwZT0i SW5jbHVkZSBhdXRvLXR5cGUiCiBkZXNjX29wdGlvbl9icm93c2VyPSJJbmNsdWRlIGJyb3dzZXIg aW50ZWdyYXRpb24gd2l0aCBrZWVwYXNzeGMtYnJvd3Nlci1wbHVnaW4iCitkZXNjX29wdGlvbl9m ZG9zZWNyZXRzPSJJbmNsdWRlIFNlY3JldCBTdG9yYWdlIFNwZWMgc2VydmVyIHNpZGUgQVBJIgog ZGVzY19vcHRpb25fa2Vlc2hhcmU9IkluY2x1ZGUgc2hhcmluZyBpbnRlZ3JhdGlvbiB3aXRoIEtl ZVNoYXJlIgogZGVzY19vcHRpb25fbmV0d29yaz0iSW5jbHVkZSBuZXR3b3JraW5nIGNvZGUgKGZh dmljb24gZG93bmxvYWQpIgogZGVzY19vcHRpb25fc3NoYWdlbnQ9IkluY2x1ZGUgU1NIIGFnZW50 IHN1cHBvcnQiCgpGcm9tIDQzYWVlNjc1YjhiZGY0YmE0NTVjMzNiNDRjNmZlMjc0ZWJkNjliNzAg TW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IGJyYTFud2F2ZSA8YnJhaW53YXZlQG9wZW5t YWlsYm94Lm9yZz4KRGF0ZTogU2F0LCAzMSBBdWcgMjAxOSAxNToxNTo0MCArMDIwMApTdWJqZWN0 OiBbUEFUQ0ggMDE0LzE4Nl0gTmV3IHBhY2thZ2U6IG9wZW50b29uei0xLjMuMAoKQ2xvc2VzOiAj MTQwMzgKQ2xvc2VzOiAjMTQxMDAgW3ZpYSBnaXQtbWVyZ2UtcHJdCi0tLQogLi4uL3BhdGNoZXMv Rml4LVF0LTUuMTMtYnVpbGQtZXJyb3IucGF0Y2ggICAgIHwgMjEgKysrKysrKysrKysKIHNyY3Br Z3Mvb3BlbnRvb256L3BhdGNoZXMvbXVzbC5wYXRjaCAgICAgICAgICB8IDIyICsrKysrKysrKysr Kwogc3JjcGtncy9vcGVudG9vbnovdGVtcGxhdGUgICAgICAgICAgICAgICAgICAgIHwgMzUgKysr KysrKysrKysrKysrKysrKwogMyBmaWxlcyBjaGFuZ2VkLCA3OCBpbnNlcnRpb25zKCspCiBjcmVh dGUgbW9kZSAxMDA2NDQgc3JjcGtncy9vcGVudG9vbnovcGF0Y2hlcy9GaXgtUXQtNS4xMy1idWls ZC1lcnJvci5wYXRjaAogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3Mvb3BlbnRvb256L3BhdGNo ZXMvbXVzbC5wYXRjaAogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3Mvb3BlbnRvb256L3RlbXBs YXRlCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9vcGVudG9vbnovcGF0Y2hlcy9GaXgtUXQtNS4xMy1i dWlsZC1lcnJvci5wYXRjaCBiL3NyY3BrZ3Mvb3BlbnRvb256L3BhdGNoZXMvRml4LVF0LTUuMTMt YnVpbGQtZXJyb3IucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAu LjIxNDliMmMzYzAxCi0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9vcGVudG9vbnovcGF0Y2hl cy9GaXgtUXQtNS4xMy1idWlsZC1lcnJvci5wYXRjaApAQCAtMCwwICsxLDIxIEBACitGcm9tIGFk YWUxNTI4ZDZmNTgwZDU2YjU0OTljOTdiMzBhY2ZiODRhZjQzOTAgTW9uIFNlcCAxNyAwMDowMDow MCAyMDAxCitGcm9tOiBtYW5vbmdqb2huIDxtYW5vbmdqb2huQHVzZXJzLm5vcmVwbHkuZ2l0aHVi LmNvbT4KK0RhdGU6IFR1ZSwgOSBKdWwgMjAxOSAyMzoxOToxNiAtMDQwMAorU3ViamVjdDogW1BB VENIXSBGaXggUXQgNS4xMyBidWlsZCBlcnJvciAoIzI2NjUpCisKKy0tLQorIHRvb256L3NvdXJj ZXMvaW5jbHVkZS90ZnhhdHRyaWJ1dGVzLmggfCAxICsKKyAxIGZpbGUgY2hhbmdlZCwgMSBpbnNl cnRpb24oKykKKworZGlmZiAtLWdpdCBhL3Rvb256L3NvdXJjZXMvaW5jbHVkZS90ZnhhdHRyaWJ1 dGVzLmggYi90b29uei9zb3VyY2VzL2luY2x1ZGUvdGZ4YXR0cmlidXRlcy5oCitpbmRleCAyMjRh OTQ0MjYuLjkyMjQ1Y2I4ZCAxMDA2NDQKKy0tLSB0b29uei9zb3VyY2VzL2luY2x1ZGUvdGZ4YXR0 cmlidXRlcy5oCisrKysgdG9vbnovc291cmNlcy9pbmNsdWRlL3RmeGF0dHJpYnV0ZXMuaAorQEAg LTUsNiArNSw3IEBACisgCisgI2luY2x1ZGUgInRnZW9tZXRyeS5oIgorICNpbmNsdWRlIDxRU3Rh Y2s+CisrI2luY2x1ZGUgPFFMaXN0PgorIAorICN1bmRlZiBEVkFQSQorICN1bmRlZiBEVlZBUgpk aWZmIC0tZ2l0IGEvc3JjcGtncy9vcGVudG9vbnovcGF0Y2hlcy9tdXNsLnBhdGNoIGIvc3JjcGtn cy9vcGVudG9vbnovcGF0Y2hlcy9tdXNsLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4 IDAwMDAwMDAwMDAwLi40YWQzOTM4MTJiMgotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3Mvb3Bl bnRvb256L3BhdGNoZXMvbXVzbC5wYXRjaApAQCAtMCwwICsxLDIyIEBACistLS0gdG9vbnovc291 cmNlcy9jb21tb24vdGNvcmUvdHN0b3B3YXRjaC5jcHAub3JpZworKysrIHRvb256L3NvdXJjZXMv Y29tbW9uL3Rjb3JlL3RzdG9wd2F0Y2guY3BwCitAQCAtMTEsNyArMTEsNyBAQAorICNpZiBkZWZp bmVkKF9fQVBQTEVfQ0NfXykKKyAjaW5jbHVkZSA8dW5pc3RkLmg+CisgI2Vsc2UKKy0jaW5jbHVk ZSA8c3lzL3VuaXN0ZC5oPgorKyNpbmNsdWRlIDx1bmlzdGQuaD4KKyAjZW5kaWYKKyAjaW5jbHVk ZSA8bGltaXRzLmg+CisgI2luY2x1ZGUgPHN5cy90aW1lcy5oPgorLS0tIHRvb256L3NvdXJjZXMv dG9vbnpmYXJtL3RmYXJtc2VydmVyL3RmYXJtc2VydmVyLmNwcC5vcmlnCisrKysgdG9vbnovc291 cmNlcy90b29uemZhcm0vdGZhcm1zZXJ2ZXIvdGZhcm1zZXJ2ZXIuY3BwCitAQCAtNTEsNyArNTEs NyBAQAorICNlbmRpZgorIAorICNpZmRlZiBMSU5VWAorLSNpbmNsdWRlIDxzeXMvc3lzY3RsLmg+ CisrI2luY2x1ZGUgPGxpbnV4L3N5c2N0bC5oPgorICNlbmRpZgorIAorIC8vIGZvcndhcmQgZGVj bGFyYXRpb24KZGlmZiAtLWdpdCBhL3NyY3BrZ3Mvb3BlbnRvb256L3RlbXBsYXRlIGIvc3JjcGtn cy9vcGVudG9vbnovdGVtcGxhdGUKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw MDAuLmQ1MDI0ZjllMjA1Ci0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9vcGVudG9vbnovdGVt cGxhdGUKQEAgLTAsMCArMSwzNSBAQAorIyBUZW1wbGF0ZSBmaWxlIGZvciAnb3BlbnRvb256Jwor cGtnbmFtZT1vcGVudG9vbnoKK3ZlcnNpb249MS4zLjAKK3JldmlzaW9uPTEKK2J1aWxkX3dya3Ny Yz0idG9vbnovc291cmNlcyIKK2J1aWxkX3N0eWxlPWNtYWtlCitob3N0bWFrZWRlcGVuZHM9InF0 NS1xbWFrZSBxdDUtaG9zdC10b29scyBwa2ctY29uZmlnIGF1dG9tYWtlIGxpYnRvb2wiCittYWtl ZGVwZW5kcz0icXQ1LWRldmVsIHF0NS1zdmctZGV2ZWwgcXQ1LXNjcmlwdC1kZXZlbCBxdDUtdG9v bHMtZGV2ZWwgcXQ1LW11bHRpbWVkaWEtZGV2ZWwKKyBzdXBlcmx1LWRldmVsIGdsZXctZGV2ZWwg bGlianBlZy10dXJiby1kZXZlbCBsaWJsem1hLWRldmVsIGxpYmx6NC1kZXZlbCBsem8tZGV2ZWwK KyBsaWJ1c2ItZGV2ZWwgU0RMMi1kZXZlbCBsaWJteXBhaW50LWRldmVsIGJvb3N0LWRldmVsIGxp YmZyZWVnbHV0LWRldmVsCisgb3BlbmJsYXMtZGV2ZWwiCitzaG9ydF9kZXNjPSJGdWxsLWZlYXR1 cmVkIDJEIGFuaW1hdGlvbiBjcmVhdGlvbiBzb2Z0d2FyZSIKK21haW50YWluZXI9ImJyYTFud2F2 ZSA8YnJhaW53YXZlQG9wZW5tYWlsYm94Lm9yZz4iCitsaWNlbnNlPSJCU0QtMy1DbGF1c2UiCito b21lcGFnZT0iaHR0cHM6Ly9vcGVudG9vbnouZ2l0aHViLmlvL2UvIgorZGlzdGZpbGVzPSJodHRw czovL2dpdGh1Yi5jb20vb3BlbnRvb256L29wZW50b29uei9hcmNoaXZlL3Yke3ZlcnNpb259LnRh ci5neiIKK2NoZWNrc3VtPWE1ZGQwMjg2YTU4MDE3YTA4NmEzNTMzMDE2YjliNGY1NGFkYTI1YTIz MGM2MmRlNjNiOTk1YmMwNGQwY2Q1YTgKKworcHJlX2NvbmZpZ3VyZSgpIHsKKwkjIFVwc3RyZWFt IHVzZXMgdGhlaXIgb3duIG1vZGlmaWVkIHZlcnNpb24gb2YgdGlmZgorCWlmIFsgIiRDUk9TU19C VUlMRCIgXTsgdGhlbgorCQljb25maWd1cmVfYXJncz0iLURUSUZGX0xJQlJBUlk9JHt3cmtzcmN9 L3RoaXJkcGFydHkvdGlmZi00LjAuMy9saWJ0aWZmLy5saWJzL2xpYnRpZmYuYQorCQkgLURUSUZG X0lOQ0xVREVfRElSPSR7d3Jrc3JjfS90aGlyZHBhcnR5L3RpZmYtNC4wLjMvbGlidGlmZiIKKwkJ X2FyZ3M9Ii0taG9zdD0ke1hCUFNfVFJJUExFVH0iCisJZmkKKworCWNkICR7d3Jrc3JjfS90aGly ZHBhcnR5L3RpZmYtNC4wLjMKKwlhdXRvcmVjb25mIC1maQorCS4vY29uZmlndXJlIC0td2l0aC1w aWMgLS1kaXNhYmxlLWpiaWcgJHtfYXJnc30KKwltYWtlICR7bWFrZWpvYnN9Cit9CisKK3Bvc3Rf aW5zdGFsbCgpIHsKKwl2bGljZW5zZSAke3dya3NyY30vTElDRU5TRS50eHQKK30KCkZyb20gNGY2 Zjk1MmU4NDk0NGE1NmQ3M2EyMmE0YjgxMzQ2Y2E2OGYxY2Y5YyBNb24gU2VwIDE3IDAwOjAwOjAw IDIwMDEKRnJvbTogSm9obiA8am9obnpAcG9zdGVvLm5ldD4KRGF0ZTogTW9uLCAyOCBPY3QgMjAx OSAwMDoxMToxNSArMDEwMApTdWJqZWN0OiBbUEFUQ0ggMDE1LzE4Nl0gYmluZDogZGlzYWJsZSBj YXRnZXRzIG9uIG11c2wKCi0tLQogc3JjcGtncy9iaW5kL3RlbXBsYXRlIHwgMTAgKysrKysrKysr LQogMSBmaWxlIGNoYW5nZWQsIDkgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAt LWdpdCBhL3NyY3BrZ3MvYmluZC90ZW1wbGF0ZSBiL3NyY3BrZ3MvYmluZC90ZW1wbGF0ZQppbmRl eCBkOWRiZDMyNzM2OC4uOWU0ZWMzZWJlNDUgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvYmluZC90ZW1w bGF0ZQorKysgYi9zcmNwa2dzL2JpbmQvdGVtcGxhdGUKQEAgLTIsNyArMiw3IEBACiBwa2duYW1l PWJpbmQKIHJldmVydHM9IjkuMTMuNl8xIgogdmVyc2lvbj05LjExLjExCi1yZXZpc2lvbj0xCity ZXZpc2lvbj0yCiBfZnVsbHZlcj0iJHt2ZXJzaW9ufSR7X3BhdGNodmVyOistJHtfcGF0Y2h2ZXJ9 fSIKIHdya3NyYz0iJHtwa2duYW1lfS0ke19mdWxsdmVyfSIKIGJ1aWxkX3N0eWxlPWdudS1jb25m aWd1cmUKQEAgLTM2LDYgKzM2LDE0IEBAIGNhc2UgIiRYQlBTX1RBUkdFVF9NQUNISU5FIiBpbgog CXg4Nl82NCp8aTY4NiopIGJ1aWxkX29wdGlvbnNfZGVmYXVsdCs9IiBzZWNjb21wIjs7CiBlc2Fj CiAKK3ByZV9jb25maWd1cmUoKSB7CisJIyB2YXJpb3VzIGJpbmQtdXRpbHMgc2VnZmF1bHQgd2l0 aCBtdXNsLTEuMS4yNCBpbiBjYXRnZXRzCisJIyBUT0RPOiBhY3R1YWxseSBmaXggaW5zdGVhZCBv ZiBkaXNhYmxpbmcgaXQKKwljYXNlICIkWEJQU19UQVJHRVRfTUFDSElORSIgaW4KKwkJKi1tdXNs KQl2c2VkIC1lICdzLyNkZWZpbmUgSEFWRV9DQVRHRVRTIDEvL2cnIC1pIGNvbmZpZ3VyZQorCWVz YWMKK30KKwogZG9fY2hlY2soKSB7CiAJIyByZXF1aXJlcyBzcGVjaWFsIG5ldHdvcmsgc2V0dXAK IAk6CgpGcm9tIDg4YzA1MGUzMWEyMzVlNmVkMGY1ZDIyZDU5YWU0MGFlNzY5ZjAyOWYgTW9uIFNl cCAxNyAwMDowMDowMCAyMDAxCkZyb206IEpvaG4gPGpvaG56QHBvc3Rlby5uZXQ+CkRhdGU6IE1v biwgMjggT2N0IDIwMTkgMDk6MzE6MDkgKzAxMDAKU3ViamVjdDogW1BBVENIIDAxNi8xODZdIGRl amEtZHVwOiB1cGRhdGUgdG8gNDAuMi4KCi0tLQogc3JjcGtncy9kZWphLWR1cC90ZW1wbGF0ZSB8 IDYgKysrLS0tCiAxIGZpbGUgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygt KQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZGVqYS1kdXAvdGVtcGxhdGUgYi9zcmNwa2dzL2RlamEt ZHVwL3RlbXBsYXRlCmluZGV4IDRiYThmMWQ1NzcyLi4wZDQ5NWNiMTllMiAxMDA2NDQKLS0tIGEv c3JjcGtncy9kZWphLWR1cC90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2RlamEtZHVwL3RlbXBsYXRl CkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZGVqYS1kdXAnCiBwa2duYW1l PWRlamEtZHVwCi12ZXJzaW9uPTQwLjEKLXJldmlzaW9uPTIKK3ZlcnNpb249NDAuMgorcmV2aXNp b249MQogYnVpbGRfc3R5bGU9bWVzb24KIGhvc3RtYWtlZGVwZW5kcz0iYXBwc3RyZWFtLWdsaWIg ZGJ1cyBnbGliLWRldmVsIGludGx0b29sIGl0c3Rvb2wKICBsaWJncGctZXJyb3ItZGV2ZWwgcGtn LWNvbmZpZyB2YWxhIGRlc2t0b3AtZmlsZS11dGlscyIKQEAgLTEzLDQgKzEzLDQgQEAgbWFpbnRh aW5lcj0iSm9obiA8am9obnpAcG9zdGVvLm5ldD4iCiBsaWNlbnNlPSJHUEwtMy4wLW9yLWxhdGVy IgogaG9tZXBhZ2U9Imh0dHBzOi8vZ2l0bGFiLmdub21lLm9yZy9Xb3JsZC9kZWphLWR1cCIKIGRp c3RmaWxlcz0iaHR0cHM6Ly9naXRsYWIuZ25vbWUub3JnL1dvcmxkL2RlamEtZHVwLy0vYXJjaGl2 ZS8ke3ZlcnNpb259L2RlamEtZHVwLSR7dmVyc2lvbn0udGFyLmd6IgotY2hlY2tzdW09MGMwNjhm MzY5YmE0ZTllNjhmM2U1OTg5ZWIzNzVmZjRiN2RlY2ZkMWY1YjAyYWI0MmM5NGQ5YjNhZDk5NWZh ZgorY2hlY2tzdW09ZWJlZTAwMTY5NDA4OTBjMWFlZDA2YjkwNTUwNzNhMmE1ZGEyYTdmN2VkYTcw ZmUyNzNjOGZlNDAxOWZmYjg1YQoKRnJvbSA3OTdhNzNhMGY1ODVjMzQxMWE0YTU0YThlNjQ5ODBm MDAyM2YyMzNkIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBKb2huIDxqb2huekBwb3N0 ZW8ubmV0PgpEYXRlOiBNb24sIDI4IE9jdCAyMDE5IDA5OjQyOjU1ICswMTAwClN1YmplY3Q6IFtQ QVRDSCAwMTcvMTg2XSBod2lkczogdXBkYXRlIHRvIDIwMTkxMDI1LgoKLS0tCiBzcmNwa2dzL2h3 aWRzL3RlbXBsYXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAy IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvaHdpZHMvdGVtcGxhdGUgYi9zcmNw a2dzL2h3aWRzL3RlbXBsYXRlCmluZGV4IGE3ZWU2MWE0MjdkLi43ODYzNDRhNTRkNSAxMDA2NDQK LS0tIGEvc3JjcGtncy9od2lkcy90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2h3aWRzL3RlbXBsYXRl CkBAIC0xLDYgKzEsNiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnaHdpZHMnCiBwa2duYW1lPWh3 aWRzCi12ZXJzaW9uPTIwMTkwODE4Cit2ZXJzaW9uPTIwMTkxMDI1CiByZXZpc2lvbj0xCiBhcmNo cz1ub2FyY2gKIHdya3NyYz0iaHdpZHMtaHdpZHMtJHt2ZXJzaW9ufSIKQEAgLTksNyArOSw3IEBA IG1haW50YWluZXI9IkpvaG4gPGpvaG56QHBvc3Rlby5uZXQ+IgogbGljZW5zZT0iR1BMLTIuMC1v ci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL2dpdGh1Yi5jb20vZ2VudG9vL2h3aWRzIgogZGlz dGZpbGVzPSJodHRwczovL2dpdGh1Yi5jb20vZ2VudG9vL2h3aWRzL2FyY2hpdmUvaHdpZHMtJHt2 ZXJzaW9ufS50YXIuZ3oiCi1jaGVja3N1bT1jZWUwOTQ3ZGQzNDVmYmQzYWEyZGMwMDhjNTNkODFk MDUzNThmN2ZiZWJjNGVhZGQ2MjZiNjg4YTU4NmU4M2ZkCitjaGVja3N1bT1hYTQ1NTEyMTdjOWQ5 ZTk4MGExMjI5MjczMzc2YTg4MTNlY2IzNGE1ZjE5MGU4ZDNjMGU2ZWQ4ZWJkMjBiZmFlCiAKIGRv X2luc3RhbGwoKSB7CiAJdm1rZGlyIHVzci9zaGFyZS9od2RhdGEKCkZyb20gZTA1NWY1M2Q0MjAz NTE3NjM4YWFmMzJjY2M5NmE3ZjYzNThlOWMyZCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJv bTogVmFsVGltY2hlbmtvIDxWYWxUaW1jaGVua29AZ21haWwuY29tPgpEYXRlOiBTYXQsIDI2IE9j dCAyMDE5IDE3OjM1OjI5ICswMzAwClN1YmplY3Q6IFtQQVRDSCAwMTgvMTg2XSBwYXI6IGFkZCB1 bmljb2RlIHBhdGNoCgotLS0KIHNyY3BrZ3MvcGFyL3BhdGNoZXMvcGFyLWkxOG4ucGF0Y2ggfCAy ODU4ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysKIHNyY3BrZ3MvcGFyL3RlbXBsYXRlICAg ICAgICAgICAgICAgfCAgICA0ICstCiAyIGZpbGVzIGNoYW5nZWQsIDI4NjAgaW5zZXJ0aW9ucygr KSwgMiBkZWxldGlvbnMoLSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3Bhci9wYXRjaGVz L3Bhci1pMThuLnBhdGNoCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9wYXIvcGF0Y2hlcy9wYXItaTE4 bi5wYXRjaCBiL3NyY3BrZ3MvcGFyL3BhdGNoZXMvcGFyLWkxOG4ucGF0Y2gKbmV3IGZpbGUgbW9k ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAuLjI3NTU0MjVmNzAyCi0tLSAvZGV2L251bGwKKysr IGIvc3JjcGtncy9wYXIvcGF0Y2hlcy9wYXItaTE4bi5wYXRjaApAQCAtMCwwICsxLDI4NTggQEAK K2RpZmYgLWMgLi9idWZmZXIuYyAuLi9QYXIxNTItdW5pY29kZS9idWZmZXIuYworKioqIC4vYnVm ZmVyLmMJMjAwMS0wMy0wOSAwMjo1MToxMS4wMDAwMDAwMDAgKzAzMDAKKy0tLSAuLi9QYXIxNTIt dW5pY29kZS9idWZmZXIuYwkyMDE5LTEwLTI2IDE3OjIxOjA4LjU0MjA1MDg1MyArMDMwMAorKioq KioqKioqKioqKioqCisqKiogMSw5ICoqKioKKyEgLyoqKioqKioqKioqKioqKioqKioqKi8KKyEg LyogYnVmZmVyLmMgICAgICAgICAgKi8KKyEgLyogZm9yIFBhciAxLjUyICAgICAgKi8KKyEgLyog Q29weXJpZ2h0IDIwMDEgYnkgKi8KKyEgLyogQWRhbSBNLiBDb3N0ZWxsbyAgKi8KKyEgLyoqKioq KioqKioqKioqKioqKioqKi8KKyAgCisgIC8qIFRoaXMgaXMgQU5TSSBDIGNvZGUgKEM4OSkuICov CisgIAorLS0tIDEsMTEgLS0tLQorISAvKioqKioqKioqKioqKioqKioqKioqKiovCishIC8qIGJ1 ZmZlci5jICAgICAgICAgICAgKi8KKyEgLyogZm9yIFBhciAxLjUyLWkxOG4uNCAqLworISAvKiBD b3B5cmlnaHQgMjAwMSBieSAgICovCishIC8qIEFkYW0gTS4gQ29zdGVsbG8gICAgKi8KKyEgLyog TW9kaWZpZWQgYnkgICAgICAgICAqLworISAvKiBKw6lyw7RtZSBQb3VpbGxlciAgICAgKi8KKyEg LyoqKioqKioqKioqKioqKioqKioqKioqLworICAKKyAgLyogVGhpcyBpcyBBTlNJIEMgY29kZSAo Qzg5KS4gKi8KKyAgCisqKioqKioqKioqKioqKioKKyoqKiAxOCwyMyAqKioqCistLS0gMjAsMjYg LS0tLQorICAKKyAgI2luY2x1ZGUgPHN0ZGxpYi5oPgorICAjaW5jbHVkZSA8c3RyaW5nLmg+Cisr ICNpbmNsdWRlIDx3Y2hhci5oPgorICAKKyAgI3VuZGVmIE5VTEwKKyAgI2RlZmluZSBOVUxMICgo dm9pZCAqKSAwKQorKioqKioqKioqKioqKioqCisqKiogNjAsNjYgKioqKgorICAgIGJsayA9IG1h bGxvYyhzaXplb2YgKGJsb2NrKSk7CisgICAgaXRlbXMgPSBtYWxsb2MobWF4aGVyZSAqIGl0ZW1z aXplKTsKKyAgICBpZiAoIWJ1ZiB8fCAhYmxrIHx8ICFpdGVtcykgeworISAgICAgc3RyY3B5KGVy cm1zZyxvdXRvZm1lbSk7CisgICAgICBnb3RvIG5iZXJyb3I7CisgICAgfQorICAKKy0tLSA2Myw2 OSAtLS0tCisgICAgYmxrID0gbWFsbG9jKHNpemVvZiAoYmxvY2spKTsKKyAgICBpdGVtcyA9IG1h bGxvYyhtYXhoZXJlICogaXRlbXNpemUpOworICAgIGlmICghYnVmIHx8ICFibGsgfHwgIWl0ZW1z KSB7CishICAgICB3Y3NjcHkoZXJybXNnLG91dG9mbWVtKTsKKyAgICAgIGdvdG8gbmJlcnJvcjsK KyAgICB9CisgIAorKioqKioqKioqKioqKioqCisqKiogMTI3LDEzMyAqKioqCisgICAgICAgIG5l dyA9IG1hbGxvYyhzaXplb2YgKGJsb2NrKSk7CisgICAgICAgIGl0ZW1zID0gbWFsbG9jKG1heGhl cmUgKiBpdGVtc2l6ZSk7CisgICAgICAgIGlmICghbmV3IHx8ICFpdGVtcykgeworISAgICAgICAg IHN0cmNweShlcnJtc2csb3V0b2ZtZW0pOworICAgICAgICAgIGdvdG8gYWllcnJvcjsKKyAgICAg ICAgfQorICAgICAgICBibGstPm5leHQgPSBuZXc7CistLS0gMTMwLDEzNiAtLS0tCisgICAgICAg IG5ldyA9IG1hbGxvYyhzaXplb2YgKGJsb2NrKSk7CisgICAgICAgIGl0ZW1zID0gbWFsbG9jKG1h eGhlcmUgKiBpdGVtc2l6ZSk7CisgICAgICAgIGlmICghbmV3IHx8ICFpdGVtcykgeworISAgICAg ICAgIHdjc2NweShlcnJtc2csb3V0b2ZtZW0pOworICAgICAgICAgIGdvdG8gYWllcnJvcjsKKyAg ICAgICAgfQorICAgICAgICBibGstPm5leHQgPSBuZXc7CisqKioqKioqKioqKioqKioKKyoqKiAx NzQsMTgwICoqKioKKyAgCisgICAgciA9IG1hbGxvYyhuICogaXRlbXNpemUpOworICAgIGlmICgh cikgeworISAgICAgc3RyY3B5KGVycm1zZyxvdXRvZm1lbSk7CisgICAgICByZXR1cm4gTlVMTDsK KyAgICB9CisgIAorLS0tIDE3NywxODMgLS0tLQorICAKKyAgICByID0gbWFsbG9jKG4gKiBpdGVt c2l6ZSk7CisgICAgaWYgKCFyKSB7CishICAgICB3Y3NjcHkoZXJybXNnLG91dG9mbWVtKTsKKyAg ICAgIHJldHVybiBOVUxMOworICAgIH0KKyAgCitkaWZmIC1jIC4vYnVmZmVyLmggLi4vUGFyMTUy LXVuaWNvZGUvYnVmZmVyLmgKKyoqKiAuL2J1ZmZlci5oCTIwMDEtMDMtMDkgMDI6NTE6MjUuMDAw MDAwMDAwICswMzAwCistLS0gLi4vUGFyMTUyLXVuaWNvZGUvYnVmZmVyLmgJMjAxOS0xMC0yNiAx NzoyMTowOC41NDMwNTA4NTMgKzAzMDAKKyoqKioqKioqKioqKioqKgorKioqIDEsOSAqKioqCish IC8qKioqKioqKioqKioqKioqKioqKiovCishIC8qIGJ1ZmZlci5oICAgICAgICAgICovCishIC8q IGZvciBQYXIgMS41MiAgICAgICovCishIC8qIENvcHlyaWdodCAyMDAxIGJ5ICovCishIC8qIEFk YW0gTS4gQ29zdGVsbG8gICovCishIC8qKioqKioqKioqKioqKioqKioqKiovCisgIAorICAvKiBU aGlzIGlzIEFOU0kgQyBjb2RlIChDODkpLiAqLworICAKKy0tLSAxLDExIC0tLS0KKyEgLyoqKioq KioqKioqKioqKioqKioqKioqLworISAvKiBidWZmZXIuaCAgICAgICAgICAgICovCishIC8qIGZv ciBQYXIgMS41Mi1pMThuLjQgKi8KKyEgLyogQ29weXJpZ2h0IDIwMDEgYnkgICAqLworISAvKiBB ZGFtIE0uIENvc3RlbGxvICAgICovCishIC8qIE1vZGlmaWVkIGJ5ICAgICAgICAgKi8KKyEgLyog SsOpcsO0bWUgUG91aWxsZXIgICAgICovCishIC8qKioqKioqKioqKioqKioqKioqKioqKi8KKyAg CisgIC8qIFRoaXMgaXMgQU5TSSBDIGNvZGUgKEM4OSkuICovCisgIAorZGlmZiAtYyAuL2NoYXJz ZXQuYyAuLi9QYXIxNTItdW5pY29kZS9jaGFyc2V0LmMKKyoqKiAuL2NoYXJzZXQuYwkyMDAxLTA0 LTAzIDAxOjUxOjQ4LjAwMDAwMDAwMCArMDQwMAorLS0tIC4uL1BhcjE1Mi11bmljb2RlL2NoYXJz ZXQuYwkyMDE5LTEwLTI2IDE3OjIxOjA4LjU0NDA1MDg1MyArMDMwMAorKioqKioqKioqKioqKioq CisqKiogMSw5ICoqKioKKyEgLyoqKioqKioqKioqKioqKioqKioqKi8KKyEgLyogY2hhcnNldC5j ICAgICAgICAgKi8KKyEgLyogZm9yIFBhciAxLjUyICAgICAgKi8KKyEgLyogQ29weXJpZ2h0IDIw MDEgYnkgKi8KKyEgLyogQWRhbSBNLiBDb3N0ZWxsbyAgKi8KKyEgLyoqKioqKioqKioqKioqKioq KioqKi8KKyAgCisgIC8qIFRoaXMgaXMgQU5TSSBDIGNvZGUgKEM4OSkuICovCisgIAorLS0tIDEs MTEgLS0tLQorISAvKioqKioqKioqKioqKioqKioqKioqKiovCishIC8qIGNoYXJzZXQuYyAgICAg ICAgICAgKi8KKyEgLyogZm9yIFBhciAxLjUyLWkxOG4uNCAqLworISAvKiBDb3B5cmlnaHQgMjAw MSBieSAgICovCishIC8qIEFkYW0gTS4gQ29zdGVsbG8gICAgKi8KKyEgLyogTW9kaWZpZWQgYnkg ICAgICAgICAqLworISAvKiBKw6lyw7RtZSBQb3VpbGxlciAgICAgKi8KKyEgLyoqKioqKioqKioq KioqKioqKioqKioqLworICAKKyAgLyogVGhpcyBpcyBBTlNJIEMgY29kZSAoQzg5KS4gKi8KKyAg CisqKioqKioqKioqKioqKioKKyoqKiAxOCwyNSAqKioqCisgICAgICAgICAgICAgICAgICAgICAg ICAvKiBwcm90b3R5cGVzLiAgQWxzbyBpbmNsdWRlcyAiZXJybXNnLmgiLiAqLworICAjaW5jbHVk ZSAiYnVmZmVyLmgiICAgLyogQWxzbyBpbmNsdWRlcyA8c3RkZGVmLmg+LiAgICAgICAgICAgICAg Ki8KKyAgCistICNpbmNsdWRlIDxjdHlwZS5oPgorICAjaW5jbHVkZSA8c3RkaW8uaD4KKyAgI2lu Y2x1ZGUgPHN0ZGxpYi5oPgorICAjaW5jbHVkZSA8c3RyaW5nLmg+CisgIAorLS0tIDIwLDI4IC0t LS0KKyAgICAgICAgICAgICAgICAgICAgICAgIC8qIHByb3RvdHlwZXMuICBBbHNvIGluY2x1ZGVz ICJlcnJtc2cuaCIuICovCisgICNpbmNsdWRlICJidWZmZXIuaCIgICAvKiBBbHNvIGluY2x1ZGVz IDxzdGRkZWYuaD4uICAgICAgICAgICAgICAqLworICAKKyAgI2luY2x1ZGUgPHN0ZGlvLmg+Cisr ICNpbmNsdWRlIDx3Y2hhci5oPgorKyAjaW5jbHVkZSA8d2N0eXBlLmg+CisgICNpbmNsdWRlIDxz dGRsaWIuaD4KKyAgI2luY2x1ZGUgPHN0cmluZy5oPgorICAKKyoqKioqKioqKioqKioqKgorKioq IDM5LDQ2ICoqKioKKyAgdHlwZWRlZiB1bnNpZ25lZCBjaGFyIGNzZmxhZ190OworICAKKyAgc3Ry dWN0IGNoYXJzZXQgeworISAgIGNoYXIgKmlubGlzdDsgICAgLyogQ2hhcmFjdGVycyBpbiBpbmxp c3QgYXJlIGluIHRoZSBzZXQuICAgICAgICAgICAgICAgICovCishICAgY2hhciAqb3V0bGlzdDsg ICAvKiBDaGFyYWN0ZXJzIGluIG91dGxpc3QgYXJlIG5vdCBpbiB0aGUgc2V0LiAgICAgICAgICAg Ki8KKyAgICAgICAgICAgICAgICAgICAgIC8qIGlubGlzdCBhbmQgb3V0bGlzdCBtdXN0IGhhdmUg bm8gY29tbW9uIGNoYXJhY3RlcnMuICAqLworICAgICAgICAgICAgICAgICAgICAgLyogaW5saXN0 IGFuZCBvdXRsaXN0IG1heSBiZSBOVUxMLCB3aGljaCBhY3RzIGxpa2UgIiIuICovCisgICAgY3Nm bGFnX3QgZmxhZ3M7ICAvKiBDaGFyYWN0ZXJzIGluIG5laXRoZXIgbGlzdCBhcmUgaW4gdGhlIHNl dCBpZiB0aGV5ICAgKi8KKy0tLSA0Miw0OSAtLS0tCisgIHR5cGVkZWYgdW5zaWduZWQgY2hhciBj c2ZsYWdfdDsKKyAgCisgIHN0cnVjdCBjaGFyc2V0IHsKKyEgICB3Y2hhcl90ICppbmxpc3Q7ICAg IC8qIENoYXJhY3RlcnMgaW4gaW5saXN0IGFyZSBpbiB0aGUgc2V0LiAgICAgICAgICAgICAgICAq LworISAgIHdjaGFyX3QgKm91dGxpc3Q7ICAgLyogQ2hhcmFjdGVycyBpbiBvdXRsaXN0IGFyZSBu b3QgaW4gdGhlIHNldC4gICAgICAgICAgICovCisgICAgICAgICAgICAgICAgICAgICAvKiBpbmxp c3QgYW5kIG91dGxpc3QgbXVzdCBoYXZlIG5vIGNvbW1vbiBjaGFyYWN0ZXJzLiAgKi8KKyAgICAg ICAgICAgICAgICAgICAgIC8qIGlubGlzdCBhbmQgb3V0bGlzdCBtYXkgYmUgTlVMTCwgd2hpY2gg YWN0cyBsaWtlICIiLiAqLworICAgIGNzZmxhZ190IGZsYWdzOyAgLyogQ2hhcmFjdGVycyBpbiBu ZWl0aGVyIGxpc3QgYXJlIGluIHRoZSBzZXQgaWYgdGhleSAgICovCisqKioqKioqKioqKioqKioK KyoqKiA1Niw4MCAqKioqCisgICAgICAgICAgICAgICAgICAgICAgICBDU19OVUwgICA9IDg7ICAv KiBJbmNsdWRlcyB0aGUgTlVMIGNoYXJhY3Rlci4gICAgICAqLworICAKKyAgCishIHN0YXRpYyBp bnQgYXBwZWFyc2luKGNoYXIgYywgY29uc3QgY2hhciAqc3RyKQorICAKKyAgLyogUmV0dXJucyAw IGlmIGMgaXMgJ1wwJyBvciBzdHIgaXMgTlVMTCBvciBjICAgICAqLworICAvKiBkb2VzIG5vdCBh cHBlYXIgaW4gKnN0ci4gIE90aGVyd2lzZSByZXR1cm5zIDEuICovCisgIHsKKyEgICByZXR1cm4g YyAmJiBzdHIgJiYgc3RyY2hyKHN0cixjKTsKKyAgfQorICAKKyAgCishIHN0YXRpYyBpbnQgaGV4 ZGlndG9pbnQoY2hhciBjKQorICAKKyAgLyogUmV0dXJucyB0aGUgdmFsdWUgcmVwcmVzZW50ZWQg YnkgdGhlIGhleGFkZWNpbWFsICovCisgIC8qIGRpZ2l0IGMsIG9yIC0xIGlmIGMgaXMgbm90IGEg aGV4YWRlY2ltYWwgZGlnaXQuICAqLworICB7CishICAgY29uc3QgY2hhciAqcCwgKiBjb25zdCBo ZXhkaWdpdHMgPSAiMDEyMzQ1Njc4OUFCQ0RFRmFiY2RlZiI7CisgICAgaW50IG47CisgIAorICAg IGlmICghYykgcmV0dXJuIC0xOworISAgIHAgPSBzdHJjaHIoaGV4ZGlnaXRzLCAqKHVuc2lnbmVk IGNoYXIgKikmYyk7CisgICAgaWYgKCFwKSByZXR1cm4gLTE7CisgICAgbiA9IHAgLSBoZXhkaWdp dHM7CisgICAgaWYgKG4gPj0gMTYpIG4gLT0gNjsKKy0tLSA1OSw4MyAtLS0tCisgICAgICAgICAg ICAgICAgICAgICAgICBDU19OVUwgICA9IDg7ICAvKiBJbmNsdWRlcyB0aGUgTlVMIGNoYXJhY3Rl ci4gICAgICAqLworICAKKyAgCishIHN0YXRpYyBpbnQgYXBwZWFyc2luKHdjaGFyX3QgYywgY29u c3Qgd2NoYXJfdCAqc3RyKQorICAKKyAgLyogUmV0dXJucyAwIGlmIGMgaXMgJ1wwJyBvciBzdHIg aXMgTlVMTCBvciBjICAgICAqLworICAvKiBkb2VzIG5vdCBhcHBlYXIgaW4gKnN0ci4gIE90aGVy d2lzZSByZXR1cm5zIDEuICovCisgIHsKKyEgICByZXR1cm4gYyAmJiBzdHIgJiYgd2NzY2hyKHN0 cixjKTsKKyAgfQorICAKKyAgCishIHN0YXRpYyBpbnQgaGV4ZGlndG9pbnQod2NoYXJfdCBjKQor ICAKKyAgLyogUmV0dXJucyB0aGUgdmFsdWUgcmVwcmVzZW50ZWQgYnkgdGhlIGhleGFkZWNpbWFs ICovCisgIC8qIGRpZ2l0IGMsIG9yIC0xIGlmIGMgaXMgbm90IGEgaGV4YWRlY2ltYWwgZGlnaXQu ICAqLworICB7CishICAgY29uc3Qgd2NoYXJfdCAqcCwgKiBjb25zdCBoZXhkaWdpdHMgPSBMIjAx MjM0NTY3ODlBQkNERUZhYmNkZWYiOworICAgIGludCBuOworICAKKyAgICBpZiAoIWMpIHJldHVy biAtMTsKKyEgICBwID0gd2NzY2hyKGhleGRpZ2l0cywgYyk7CisgICAgaWYgKCFwKSByZXR1cm4g LTE7CisgICAgbiA9IHAgLSBoZXhkaWdpdHM7CisgICAgaWYgKG4gPj0gMTYpIG4gLT0gNjsKKyoq KioqKioqKioqKioqKgorKioqIDg3LDEyNSAqKioqCisgIH0KKyAgCisgIAorISBjaGFyc2V0ICpw YXJzZWNoYXJzZXQoY29uc3QgY2hhciAqc3RyLCBlcnJtc2dfdCBlcnJtc2cpCisgIHsKKyAgICBj aGFyc2V0ICpjc2V0ID0gTlVMTDsKKyAgICBidWZmZXIgKmNidWYgPSBOVUxMOworISAgIGNvbnN0 IGNoYXIgKnAsICogY29uc3Qgc2luZ2xlZXNjYXBlcyA9ICJfc2JxUXgiOworICAgIGludCBoZXgx LCBoZXgyOworISAgIGNoYXIgY2g7CishIAorICAgIGNzZXQgPSBtYWxsb2Moc2l6ZW9mIChjaGFy c2V0KSk7CisgICAgaWYgKCFjc2V0KSB7CishICAgICBzdHJjcHkoZXJybXNnLG91dG9mbWVtKTsK KyAgICAgIGdvdG8gcGNzZXJyb3I7CisgICAgfQorICAgIGNzZXQtPmlubGlzdCA9IGNzZXQtPm91 dGxpc3QgPSBOVUxMOworICAgIGNzZXQtPmZsYWdzID0gMDsKKyAgCishICAgY2J1ZiA9IG5ld2J1 ZmZlcihzaXplb2YgKGNoYXIpLCBlcnJtc2cpOworICAgIGlmICgqZXJybXNnKSBnb3RvIHBjc2Vy cm9yOworICAKKyAgICBmb3IgKHAgPSBzdHI7ICAqcDsgICsrcCkKKyEgICAgIGlmICgqcCA9PSAn XycpIHsKKyAgICAgICAgKytwOworICAgICAgICBpZiAoYXBwZWFyc2luKCpwLCBzaW5nbGVlc2Nh cGVzKSkgeworISAgICAgICAgIGlmICAgICAgKCpwID09ICdfJykgY2ggPSAnXycgOworISAgICAg ICAgIGVsc2UgaWYgKCpwID09ICdzJykgY2ggPSAnICcgOworISAgICAgICAgIGVsc2UgaWYgKCpw ID09ICdiJykgY2ggPSAnXFwnOworISAgICAgICAgIGVsc2UgaWYgKCpwID09ICdxJykgY2ggPSAn XCcnOworISAgICAgICAgIGVsc2UgaWYgKCpwID09ICdRJykgY2ggPSAnXCInOworICAgICAgICAg IGVsc2UgLyogICpwID09ICd4JyAgKi8geworICAgICAgICAgICAgaGV4MSA9IGhleGRpZ3RvaW50 KHBbMV0pOworICAgICAgICAgICAgaGV4MiA9IGhleGRpZ3RvaW50KHBbMl0pOworICAgICAgICAg ICAgaWYgKGhleDEgPCAwICB8fCAgaGV4MiA8IDApIGdvdG8gcGNzYmFkc3RyOworISAgICAgICAg ICAgKih1bnNpZ25lZCBjaGFyICopJmNoID0gMTYgKiBoZXgxICsgaGV4MjsKKyAgICAgICAgICAg IHAgKz0gMjsKKyAgICAgICAgICB9CisgICAgICAgICAgaWYgKCFjaCkKKy0tLSA5MCwxMjkgLS0t LQorICB9CisgIAorICAKKyEgY2hhcnNldCAqcGFyc2VjaGFyc2V0KGNvbnN0IHdjaGFyX3QgKnN0 ciwgZXJybXNnX3QgZXJybXNnKQorICB7CisgICAgY2hhcnNldCAqY3NldCA9IE5VTEw7CisgICAg YnVmZmVyICpjYnVmID0gTlVMTDsKKyEgICBjb25zdCB3Y2hhcl90ICpwLCAqIGNvbnN0IHNpbmds ZWVzY2FwZXMgPSBMIl9zYnFReCI7CisgICAgaW50IGhleDEsIGhleDI7CishICAgd2NoYXJfdCBj aDsKKyEgICAgICAgCisgICAgY3NldCA9IG1hbGxvYyhzaXplb2YgKGNoYXJzZXQpKTsKKyAgICBp ZiAoIWNzZXQpIHsKKyEgICAgIHdjc2NweShlcnJtc2csb3V0b2ZtZW0pOworICAgICAgZ290byBw Y3NlcnJvcjsKKyAgICB9CisgICAgY3NldC0+aW5saXN0ID0gY3NldC0+b3V0bGlzdCA9IE5VTEw7 CisgICAgY3NldC0+ZmxhZ3MgPSAwOworICAKKyEgICBjYnVmID0gbmV3YnVmZmVyKHNpemVvZiAo d2NoYXJfdCksIGVycm1zZyk7CisgICAgaWYgKCplcnJtc2cpIGdvdG8gcGNzZXJyb3I7CisgIAor ICAgIGZvciAocCA9IHN0cjsgICpwOyAgKytwKQorISAgICAgaWYgKCpwID09IEwnXycpIHsKKyAg ICAgICAgKytwOworICAgICAgICBpZiAoYXBwZWFyc2luKCpwLCBzaW5nbGVlc2NhcGVzKSkgewor ISAgICAgICAgIGlmICAgICAgKCpwID09IEwnXycpIGNoID0gTCdfJyA7CishICAgICAgICAgZWxz ZSBpZiAoKnAgPT0gTCdzJykgY2ggPSBMJyAnIDsKKyEgICAgICAgICBlbHNlIGlmICgqcCA9PSBM J2InKSBjaCA9IEwnXFwnOworISAgICAgICAgIGVsc2UgaWYgKCpwID09IEwncScpIGNoID0gTCdc Jyc7CishICAgICAgICAgZWxzZSBpZiAoKnAgPT0gTCdRJykgY2ggPSBMJ1wiJzsKKyAgICAgICAg ICBlbHNlIC8qICAqcCA9PSAneCcgICovIHsKKysgICAgICAgICAgIC8qIEZJWE1FIF94IG1ldGFj aGFyYWN0ZXIgc2hvdWxkIGFsbG93IHdpZGUgY2hhcmFjdGVycyBpbnB1dC4qLworICAgICAgICAg ICAgaGV4MSA9IGhleGRpZ3RvaW50KHBbMV0pOworICAgICAgICAgICAgaGV4MiA9IGhleGRpZ3Rv aW50KHBbMl0pOworICAgICAgICAgICAgaWYgKGhleDEgPCAwICB8fCAgaGV4MiA8IDApIGdvdG8g cGNzYmFkc3RyOworISAgICAgICAgICAgY2ggPSAxNiAqIGhleDEgKyBoZXgyOworICAgICAgICAg ICAgcCArPSAyOworICAgICAgICAgIH0KKyAgICAgICAgICBpZiAoIWNoKQorKioqKioqKioqKioq KioqCisqKiogMTMwLDE0MyAqKioqCisgICAgICAgICAgfQorICAgICAgICB9CisgICAgICAgIGVs c2UgeworISAgICAgICAgIGlmICAgICAgKCpwID09ICdBJykgY3NldC0+ZmxhZ3MgfD0gQ1NfVUNB U0U7CishICAgICAgICAgZWxzZSBpZiAoKnAgPT0gJ2EnKSBjc2V0LT5mbGFncyB8PSBDU19MQ0FT RTsKKyEgICAgICAgICBlbHNlIGlmICgqcCA9PSAnMCcpIGNzZXQtPmZsYWdzIHw9IENTX0RJR0lU OworICAgICAgICAgIGVsc2UgZ290byBwY3NiYWRzdHI7CisgICAgICAgIH0KKyAgICAgIH0KKyAg ICAgIGVsc2UgeworISAgICAgICBhZGRpdGVtKGNidWYscCxlcnJtc2cpOworICAgICAgICBpZiAo KmVycm1zZykgZ290byBwY3NlcnJvcjsKKyAgICAgIH0KKyAgICBjaCA9ICdcMCc7CistLS0gMTM0 LDE0NyAtLS0tCisgICAgICAgICAgfQorICAgICAgICB9CisgICAgICAgIGVsc2UgeworISAgICAg ICAgIGlmICAgICAgKCpwID09IEwnQScpIGNzZXQtPmZsYWdzIHw9IENTX1VDQVNFOworISAgICAg ICAgIGVsc2UgaWYgKCpwID09IEwnYScpIGNzZXQtPmZsYWdzIHw9IENTX0xDQVNFOworISAgICAg ICAgIGVsc2UgaWYgKCpwID09IEwnMCcpIGNzZXQtPmZsYWdzIHw9IENTX0RJR0lUOworICAgICAg ICAgIGVsc2UgZ290byBwY3NiYWRzdHI7CisgICAgICAgIH0KKyAgICAgIH0KKyAgICAgIGVsc2Ug eworISAgICAgICBhZGRpdGVtKGNidWYsIHAsZXJybXNnKTsKKyAgICAgICAgaWYgKCplcnJtc2cp IGdvdG8gcGNzZXJyb3I7CisgICAgICB9CisgICAgY2ggPSAnXDAnOworKioqKioqKioqKioqKioq CisqKiogMTQ5LDE1OSAqKioqCisgIHBjc2NsZWFudXA6CisgIAorICAgIGlmIChjYnVmKSBmcmVl YnVmZmVyKGNidWYpOworICAgIHJldHVybiBjc2V0OworICAKKyAgcGNzYmFkc3RyOgorICAKKyEg ICBzcHJpbnRmKGVycm1zZywgIkJhZCBjaGFyc2V0IHN5bnRheDogJS4qc1xuIiwgZXJybXNnX3Np emUgLSAyMiwgc3RyKTsKKyAgCisgIHBjc2Vycm9yOgorICAKKy0tLSAxNTMsMTY0IC0tLS0KKyAg cGNzY2xlYW51cDoKKyAgCisgICAgaWYgKGNidWYpIGZyZWVidWZmZXIoY2J1Zik7CisrICAgLy9p ZiAod3N0cikgZnJlZSh3c3RyKTsKKyAgICByZXR1cm4gY3NldDsKKyAgCisgIHBjc2JhZHN0cjoK KyAgCishICAgc3dwcmludGYoZXJybXNnLCBlcnJtc2dfc2l6ZSwgTCJCYWQgY2hhcnNldCBzeW50 YXg6ICUuKnNcbiIsIGVycm1zZ19zaXplIC0gMjIsIHN0cik7CisgIAorICBwY3NlcnJvcjoKKyAg CisqKioqKioqKioqKioqKioKKyoqKiAxNzEsMTg0ICoqKioKKyAgfQorICAKKyAgCishIGludCBj c21lbWJlcihjaGFyIGMsIGNvbnN0IGNoYXJzZXQgKmNzZXQpCisgIHsKKyAgICByZXR1cm4KKyAg ICAgIGFwcGVhcnNpbihjLCBjc2V0LT5pbmxpc3QpIHx8CisgICAgICAoICFhcHBlYXJzaW4oYywg Y3NldC0+b3V0bGlzdCkgJiYKKyEgICAgICAgKCAoY3NldC0+ZmxhZ3MgJiBDU19MQ0FTRSAmJiBp c2xvd2VyKCoodW5zaWduZWQgY2hhciAqKSZjKSkgfHwKKyEgICAgICAgICAoY3NldC0+ZmxhZ3Mg JiBDU19VQ0FTRSAmJiBpc3VwcGVyKCoodW5zaWduZWQgY2hhciAqKSZjKSkgfHwKKyEgICAgICAg ICAoY3NldC0+ZmxhZ3MgJiBDU19ESUdJVCAmJiBpc2RpZ2l0KCoodW5zaWduZWQgY2hhciAqKSZj KSkgfHwKKyAgICAgICAgICAoY3NldC0+ZmxhZ3MgJiBDU19OVUwgICAmJiAhYyAgICAgICAgICAg ICAgICAgICAgICAgICAgICkgICApICk7CisgIH0KKyAgCistLS0gMTc2LDE4OSAtLS0tCisgIH0K KyAgCisgIAorISBpbnQgY3NtZW1iZXIod2NoYXJfdCBjLCBjb25zdCBjaGFyc2V0ICpjc2V0KQor ICB7CisgICAgcmV0dXJuCisgICAgICBhcHBlYXJzaW4oYywgY3NldC0+aW5saXN0KSB8fAorICAg ICAgKCAhYXBwZWFyc2luKGMsIGNzZXQtPm91dGxpc3QpICYmCishICAgICAgICAgKCAoY3NldC0+ ZmxhZ3MgJiBDU19MQ0FTRSAmJiBpc3dsb3dlcigqKHdpbnRfdCAqKSZjKSkgfHwKKyEgICAgICAg ICAgIChjc2V0LT5mbGFncyAmIENTX1VDQVNFICYmIGlzd3VwcGVyKCood2ludF90ICopJmMpKSB8 fAorISAgICAgICAgICAgKGNzZXQtPmZsYWdzICYgQ1NfRElHSVQgJiYgaXN3ZGlnaXQoKih3aW50 X3QgKikmYykpIHx8CisgICAgICAgICAgKGNzZXQtPmZsYWdzICYgQ1NfTlVMICAgJiYgIWMgICAg ICAgICAgICAgICAgICAgICAgICAgICApICAgKSApOworICB9CisgIAorKioqKioqKioqKioqKioq CisqKiogMTkxLDIwNiAqKioqCisgIHsKKyAgICBjaGFyc2V0ICpjc3U7CisgICAgYnVmZmVyICpp bmJ1ZiA9IE5VTEwsICpvdXRidWYgPSBOVUxMOworISAgIGNoYXIgKmxpc3RzWzRdLCAqKmxpc3Qs ICpwLCBudWxsY2hhciA9ICdcMCc7CisgIAorICAgIGNzdSA9IG1hbGxvYyhzaXplb2YgKGNoYXJz ZXQpKTsKKyAgICBpZiAoIWNzdSkgeworISAgICAgc3RyY3B5KGVycm1zZyxvdXRvZm1lbSk7Cisg ICAgICBnb3RvIGNzdWRlcnJvcjsKKyAgICB9CishICAgaW5idWYgPSBuZXdidWZmZXIoc2l6ZW9m IChjaGFyKSwgZXJybXNnKTsKKyAgICBpZiAoKmVycm1zZykgZ290byBjc3VkZXJyb3I7CishICAg b3V0YnVmID0gbmV3YnVmZmVyKHNpemVvZiAoY2hhciksIGVycm1zZyk7CisgICAgaWYgKCplcnJt c2cpIGdvdG8gY3N1ZGVycm9yOworICAgIGNzdS0+aW5saXN0ID0gY3N1LT5vdXRsaXN0ID0gTlVM TDsKKyAgICBjc3UtPmZsYWdzID0gIHUgID8gIGNzZXQxLT5mbGFncyB8ICBjc2V0Mi0+ZmxhZ3MK Ky0tLSAxOTYsMjExIC0tLS0KKyAgeworICAgIGNoYXJzZXQgKmNzdTsKKyAgICBidWZmZXIgKmlu YnVmID0gTlVMTCwgKm91dGJ1ZiA9IE5VTEw7CishICAgd2NoYXJfdCAqbGlzdHNbNF0sICoqbGlz dCwgKnAsIG51bGxjaGFyID0gTCdcMCc7CisgIAorICAgIGNzdSA9IG1hbGxvYyhzaXplb2YgKGNo YXJzZXQpKTsKKyAgICBpZiAoIWNzdSkgeworISAgICAgd2NzY3B5KGVycm1zZyxvdXRvZm1lbSk7 CisgICAgICBnb3RvIGNzdWRlcnJvcjsKKyAgICB9CishICAgaW5idWYgPSBuZXdidWZmZXIoc2l6 ZW9mICh3Y2hhcl90KSwgZXJybXNnKTsKKyAgICBpZiAoKmVycm1zZykgZ290byBjc3VkZXJyb3I7 CishICAgb3V0YnVmID0gbmV3YnVmZmVyKHNpemVvZiAod2NoYXJfdCksIGVycm1zZyk7CisgICAg aWYgKCplcnJtc2cpIGdvdG8gY3N1ZGVycm9yOworICAgIGNzdS0+aW5saXN0ID0gY3N1LT5vdXRs aXN0ID0gTlVMTDsKKyAgICBjc3UtPmZsYWdzID0gIHUgID8gIGNzZXQxLT5mbGFncyB8ICBjc2V0 Mi0+ZmxhZ3MKK2RpZmYgLWMgLi9jaGFyc2V0LmggLi4vUGFyMTUyLXVuaWNvZGUvY2hhcnNldC5o CisqKiogLi9jaGFyc2V0LmgJMjAwMS0wMy0wOSAwMzo1MDozNS4wMDAwMDAwMDAgKzAzMDAKKy0t LSAuLi9QYXIxNTItdW5pY29kZS9jaGFyc2V0LmgJMjAxOS0xMC0yNiAxNzoyMTowOC41NDQwNTA4 NTMgKzAzMDAKKyoqKioqKioqKioqKioqKgorKioqIDEsOSAqKioqCishIC8qKioqKioqKioqKioq KioqKioqKiovCishIC8qIGNoYXJzZXQuaCAgICAgICAgICovCishIC8qIGZvciBQYXIgMS41MiAg ICAgICovCishIC8qIENvcHlyaWdodCAyMDAxIGJ5ICovCishIC8qIEFkYW0gTS4gQ29zdGVsbG8g ICovCishIC8qKioqKioqKioqKioqKioqKioqKiovCisgIAorICAvKiBUaGlzIGlzIEFOU0kgQyBj b2RlIChDODkpLiAqLworICAKKy0tLSAxLDExIC0tLS0KKyEgLyoqKioqKioqKioqKioqKioqKioq KioqLworISAvKiBjaGFyc2V0LmggICAgICAgICAgICovCishIC8qIGZvciBQYXIgMS41Mi1pMThu LjQgKi8KKyEgLyogQ29weXJpZ2h0IDIwMDEgYnkgICAqLworISAvKiBBZGFtIE0uIENvc3RlbGxv ICAgICovCishIC8qIE1vZGlmaWVkIGJ5ICAgICAgICAgKi8KKyEgLyogSsOpcsO0bWUgUG91aWxs ZXIgICAgICovCishIC8qKioqKioqKioqKioqKioqKioqKioqKi8KKyAgCisgIC8qIFRoaXMgaXMg QU5TSSBDIGNvZGUgKEM4OSkuICovCisgIAorKioqKioqKioqKioqKioqCisqKiogMTEsMjQgKioq KgorICAvKiBOb3RlOiBUaG9zZSBmdW5jdGlvbnMgZGVjbGFyZWQgaGVyZSB3aGljaCBkbyBub3Qg dXNlIGVycm1zZyAgICAqLworICAvKiBhbHdheXMgc3VjY2VlZCwgcHJvdmlkZWQgdGhhdCB0aGV5 IGFyZSBwYXNzZWQgdmFsaWQgYXJndW1lbnRzLiAqLworICAKKyEgCisgICNpbmNsdWRlICJlcnJt c2cuaCIKKyAgCisgIAorICB0eXBlZGVmIHN0cnVjdCBjaGFyc2V0IGNoYXJzZXQ7CisgIAorICAK KyEgY2hhcnNldCAqcGFyc2VjaGFyc2V0KGNvbnN0IGNoYXIgKnN0ciwgZXJybXNnX3QgZXJybXNn KTsKKyAgCisgICAgLyogcGFyc2VjaGFyc2V0KHN0cixlcnJtc2cpIHJldHVybnMgdGhlIHNldCBv ZiBjaGFyYWN0ZXJzIGRlZmluZWQgYnkgKi8KKyAgICAvKiBzdHIgdXNpbmcgY2hhcnNldCBzeW50 YXggKHNlZSBwYXIuZG9jKS4gIFJldHVybnMgTlVMTCBvbiBmYWlsdXJlLiAqLworLS0tIDEzLDI2 IC0tLS0KKyAgLyogTm90ZTogVGhvc2UgZnVuY3Rpb25zIGRlY2xhcmVkIGhlcmUgd2hpY2ggZG8g bm90IHVzZSBlcnJtc2cgICAgKi8KKyAgLyogYWx3YXlzIHN1Y2NlZWQsIHByb3ZpZGVkIHRoYXQg dGhleSBhcmUgcGFzc2VkIHZhbGlkIGFyZ3VtZW50cy4gKi8KKyAgCishICNpbmNsdWRlIDx3Y2hh ci5oPgorICAjaW5jbHVkZSAiZXJybXNnLmgiCisgIAorICAKKyAgdHlwZWRlZiBzdHJ1Y3QgY2hh cnNldCBjaGFyc2V0OworICAKKyAgCishIGNoYXJzZXQgKnBhcnNlY2hhcnNldChjb25zdCB3Y2hh cl90ICpzdHIsIGVycm1zZ190IGVycm1zZyk7CisgIAorICAgIC8qIHBhcnNlY2hhcnNldChzdHIs ZXJybXNnKSByZXR1cm5zIHRoZSBzZXQgb2YgY2hhcmFjdGVycyBkZWZpbmVkIGJ5ICovCisgICAg Lyogc3RyIHVzaW5nIGNoYXJzZXQgc3ludGF4IChzZWUgcGFyLmRvYykuICBSZXR1cm5zIE5VTEwg b24gZmFpbHVyZS4gKi8KKyoqKioqKioqKioqKioqKgorKioqIDMwLDM2ICoqKioKKyAgICAvKiAq Y3NldC4gIGNzZXQgbWF5IG5vdCBiZSB1c2VkIGFmdGVyIHRoaXMgY2FsbC4gICAgICAqLworICAK KyAgCishIGludCBjc21lbWJlcihjaGFyIGMsIGNvbnN0IGNoYXJzZXQgKmNzZXQpOworICAKKyAg ICAvKiBjc21lbWJlcihjLGNzZXQpIHJldHVybnMgMSBpZiBjIGlzIGEgbWVtYmVyIG9mICpjc2V0 LCAwIG90aGVyd2lzZS4gKi8KKyAgCistLS0gMzIsMzggLS0tLQorICAgIC8qICpjc2V0LiAgY3Nl dCBtYXkgbm90IGJlIHVzZWQgYWZ0ZXIgdGhpcyBjYWxsLiAgICAgICovCisgIAorICAKKyEgaW50 IGNzbWVtYmVyKHdjaGFyX3QgYywgY29uc3QgY2hhcnNldCAqY3NldCk7CisgIAorICAgIC8qIGNz bWVtYmVyKGMsY3NldCkgcmV0dXJucyAxIGlmIGMgaXMgYSBtZW1iZXIgb2YgKmNzZXQsIDAgb3Ro ZXJ3aXNlLiAqLworICAKK2RpZmYgLWMgLi9lcnJtc2cuYyAuLi9QYXIxNTItdW5pY29kZS9lcnJt c2cuYworKioqIC4vZXJybXNnLmMJMjAwMS0wMy0wOSAwMzo1MDo0Ni4wMDAwMDAwMDAgKzAzMDAK Ky0tLSAuLi9QYXIxNTItdW5pY29kZS9lcnJtc2cuYwkyMDE5LTEwLTI2IDE3OjIxOjA4LjU0NTA1 MDg1MyArMDMwMAorKioqKioqKioqKioqKioqCisqKiogMSw5ICoqKioKKyEgLyoqKioqKioqKioq KioqKioqKioqKi8KKyEgLyogZXJybXNnLmMgICAgICAgICAgKi8KKyEgLyogZm9yIFBhciAxLjUy ICAgICAgKi8KKyEgLyogQ29weXJpZ2h0IDIwMDEgYnkgKi8KKyEgLyogQWRhbSBNLiBDb3N0ZWxs byAgKi8KKyEgLyoqKioqKioqKioqKioqKioqKioqKi8KKyAgCisgIC8qIFRoaXMgaXMgQU5TSSBD IGNvZGUgKEM4OSkuICovCisgIAorLS0tIDEsMTEgLS0tLQorISAvKioqKioqKioqKioqKioqKioq KioqKiovCishIC8qIGVycm1zZy5jICAgICAgICAgICAgKi8KKyEgLyogZm9yIFBhciAxLjUyLWkx OG4uNCAqLworISAvKiBDb3B5cmlnaHQgMjAwMSBieSAgICovCishIC8qIEFkYW0gTS4gQ29zdGVs bG8gICAgKi8KKyEgLyogTW9kaWZpZWQgYnkgICAgICAgICAqLworISAvKiBKw6lyw7RtZSBQb3Vp bGxlciAgICAgKi8KKyEgLyoqKioqKioqKioqKioqKioqKioqKioqLworICAKKyAgLyogVGhpcyBp cyBBTlNJIEMgY29kZSAoQzg5KS4gKi8KKyAgCisqKioqKioqKioqKioqKioKKyoqKiAxMSwxOCAq KioqCisgICNpbmNsdWRlICJlcnJtc2cuaCIgIC8qIE1ha2VzIHN1cmUgd2UncmUgY29uc2lzdGVu dCB3aXRoIHRoZSBkZWNsYXJhdGlvbnMuICovCisgIAorICAKKyEgY29uc3QgY2hhciAqIGNvbnN0 IG91dG9mbWVtID0KKyEgICAiT3V0IG9mIG1lbW9yeS5cbiI7CisgIAorISBjb25zdCBjaGFyICog Y29uc3QgaW1wb3NzaWJpbGl0eSA9CishICAgIkltcG9zc2liaWxpdHkgIyVkIGhhcyBvY2N1cnJl ZC4gIFBsZWFzZSByZXBvcnQgaXQuXG4iOworLS0tIDEzLDIzIC0tLS0KKyAgI2luY2x1ZGUgImVy cm1zZy5oIiAgLyogTWFrZXMgc3VyZSB3ZSdyZSBjb25zaXN0ZW50IHdpdGggdGhlIGRlY2xhcmF0 aW9ucy4gKi8KKyAgCisgIAorISBjb25zdCB3Y2hhcl90ICogY29uc3Qgb3V0b2ZtZW0gPQorISAg IEwiT3V0IG9mIG1lbW9yeS5cbiI7CisgIAorISBjb25zdCB3Y2hhcl90ICogY29uc3QgbWJzZXJy b3IgPQorISAgIEwiRXJyb3IgaW4gaW5wdXQgbXVsdGlieXRlIHN0cmluZy5cbiI7CishIAorISBj b25zdCB3Y2hhcl90ICogY29uc3QgaW1wb3NzaWJpbGl0eSA9CishICAgTCJJbXBvc3NpYmlsaXR5 ICMlZCBoYXMgb2NjdXJyZWQuICBQbGVhc2UgcmVwb3J0IGl0LlxuIjsKK2RpZmYgLWMgLi9lcnJt c2cuaCAuLi9QYXIxNTItdW5pY29kZS9lcnJtc2cuaAorKioqIC4vZXJybXNnLmgJMjAwMS0wMy0w OSAwMzo1MDo1Ni4wMDAwMDAwMDAgKzAzMDAKKy0tLSAuLi9QYXIxNTItdW5pY29kZS9lcnJtc2cu aAkyMDE5LTEwLTI2IDE3OjIxOjA4LjU0NTA1MDg1MyArMDMwMAorKioqKioqKioqKioqKioqCisq KiogMSw5ICoqKioKKyEgLyoqKioqKioqKioqKioqKioqKioqKi8KKyEgLyogZXJybXNnLmggICAg ICAgICAgKi8KKyEgLyogZm9yIFBhciAxLjUyICAgICAgKi8KKyEgLyogQ29weXJpZ2h0IDIwMDEg YnkgKi8KKyEgLyogQWRhbSBNLiBDb3N0ZWxsbyAgKi8KKyEgLyoqKioqKioqKioqKioqKioqKioq Ki8KKyAgCisgIC8qIFRoaXMgaXMgQU5TSSBDIGNvZGUgKEM4OSkuICovCisgIAorLS0tIDEsMTEg LS0tLQorISAvKioqKioqKioqKioqKioqKioqKioqKiovCishIC8qIGVycm1zZy5oICAgICAgICAg ICAgKi8KKyEgLyogZm9yIFBhciAxLjUyLWkxOG4uNCAqLworISAvKiBDb3B5cmlnaHQgMjAwMSBi eSAgICovCishIC8qIEFkYW0gTS4gQ29zdGVsbG8gICAgKi8KKyEgLyogTW9kaWZpZWQgYnkgICAg ICAgICAqLworISAvKiBKw6lyw7RtZSBQb3VpbGxlciAgICAgKi8KKyEgLyoqKioqKioqKioqKioq KioqKioqKioqLworICAKKyAgLyogVGhpcyBpcyBBTlNJIEMgY29kZSAoQzg5KS4gKi8KKyAgCisq KioqKioqKioqKioqKioKKyoqKiAxMSwxNyAqKioqCisgICNpZm5kZWYgRVJSTVNHX0gKKyAgI2Rl ZmluZSBFUlJNU0dfSAorICAKKyEgCisgICNkZWZpbmUgZXJybXNnX3NpemUgMTYzCisgIAorICAv KiBUaGlzIGlzIHRoZSBtYXhpbXVtIG51bWJlciBvZiBjaGFyYWN0ZXJzIHRoYXQgd2lsbCAgKi8K Ky0tLSAxMywxOSAtLS0tCisgICNpZm5kZWYgRVJSTVNHX0gKKyAgI2RlZmluZSBFUlJNU0dfSAor ICAKKyEgI2luY2x1ZGUgPHdjaGFyLmg+CisgICNkZWZpbmUgZXJybXNnX3NpemUgMTYzCisgIAor ICAvKiBUaGlzIGlzIHRoZSBtYXhpbXVtIG51bWJlciBvZiBjaGFyYWN0ZXJzIHRoYXQgd2lsbCAg Ki8KKyoqKioqKioqKioqKioqKgorKioqIDIwLDI2ICoqKioKKyAgLyogdmVyc2lvbnMgb2YgdGhp cyBoZWFkZXIgZmlsZS4gICAgICAgICAgICAgICAgICAgICAgICovCisgIAorICAKKyEgdHlwZWRl ZiBjaGFyIGVycm1zZ190W2Vycm1zZ19zaXplXTsKKyAgCisgIC8qIEFueSBmdW5jdGlvbiB3aGlj aCB0YWtlcyB0aGUgYXJndW1lbnQgZXJybXNnX3QgZXJybXNnIG11c3QsIGJlZm9yZSAqLworICAv KiByZXR1cm5pbmcsIGVpdGhlciBzZXQgZXJybXNnWzBdIHRvICdcMCcgKGluZGljYXRpbmcgc3Vj Y2VzcyksIG9yICAgKi8KKy0tLSAyMiwyOCAtLS0tCisgIC8qIHZlcnNpb25zIG9mIHRoaXMgaGVh ZGVyIGZpbGUuICAgICAgICAgICAgICAgICAgICAgICAqLworICAKKyAgCishIHR5cGVkZWYgd2No YXJfdCBlcnJtc2dfdFtlcnJtc2dfc2l6ZV07CisgIAorICAvKiBBbnkgZnVuY3Rpb24gd2hpY2gg dGFrZXMgdGhlIGFyZ3VtZW50IGVycm1zZ190IGVycm1zZyBtdXN0LCBiZWZvcmUgKi8KKyAgLyog cmV0dXJuaW5nLCBlaXRoZXIgc2V0IGVycm1zZ1swXSB0byAnXDAnIChpbmRpY2F0aW5nIHN1Y2Nl c3MpLCBvciAgICovCisqKioqKioqKioqKioqKioKKyoqKiAyOCwzNyAqKioqCisgIC8qIGJlaW5n IGNhcmVmdWwgbm90IHRvIG92ZXJydW4gdGhlIHNwYWNlLiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAqLworICAKKyAgCishIGV4dGVybiBjb25zdCBjaGFyICogY29uc3Qgb3V0b2ZtZW07Cisg ICAgLyogIk91dCBvZiBtZW1vcnkuXG4iICovCisgIAorISBleHRlcm4gY29uc3QgY2hhciAqIGNv bnN0IGltcG9zc2liaWxpdHk7CisgICAgLyogIkltcG9zc2liaWxpdHkgIyVkIGhhcyBvY2N1cnJl ZC4gIFBsZWFzZSByZXBvcnQgaXQuXG4iICovCisgIAorICAKKy0tLSAzMCw0MiAtLS0tCisgIC8q IGJlaW5nIGNhcmVmdWwgbm90IHRvIG92ZXJydW4gdGhlIHNwYWNlLiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAqLworICAKKyAgCishIGV4dGVybiBjb25zdCB3Y2hhcl90ICogY29uc3Qgb3V0 b2ZtZW07CisgICAgLyogIk91dCBvZiBtZW1vcnkuXG4iICovCisgIAorISBleHRlcm4gY29uc3Qg d2NoYXJfdCAqIGNvbnN0IG1ic2Vycm9yOworISAgIC8qICJFcnJvciBpbiBpbnB1dCBtdWx0aWJ5 dGUgc3RyaW5nLlxuIiAqLworISAgIAorISBleHRlcm4gY29uc3Qgd2NoYXJfdCAqIGNvbnN0IGlt cG9zc2liaWxpdHk7CisgICAgLyogIkltcG9zc2liaWxpdHkgIyVkIGhhcyBvY2N1cnJlZC4gIFBs ZWFzZSByZXBvcnQgaXQuXG4iICovCisgIAorICAKK2RpZmYgLWMgLi9wYXIuMSAuLi9QYXIxNTIt dW5pY29kZS9wYXIuMQorKioqIC4vcGFyLjEJMjAwMS0wNC0zMCAwMToxNjoyMi4wMDAwMDAwMDAg KzA0MDAKKy0tLSAuLi9QYXIxNTItdW5pY29kZS9wYXIuMQkyMDE5LTEwLTI2IDE3OjIxOjA4LjU0 NjA1MDg1MyArMDMwMAorKioqKioqKioqKioqKioqCisqKiogMSw2ICoqKioKKyAgLlwiKioqKioq KioqKioqKioqKioqKioqCisgIC5cIiogcGFyLjEgICAgICAgICAgICAgKgorISAuXCIqIGZvciBQ YXIgMS41MiAgICAgICoKKyAgLlwiKiBDb3B5cmlnaHQgMjAwMSBieSAqCisgIC5cIiogQWRhbSBN LiBDb3N0ZWxsbyAgKgorICAuXCIqKioqKioqKioqKioqKioqKioqKioKKy0tLSAxLDYgLS0tLQor ICAuXCIqKioqKioqKioqKioqKioqKioqKioKKyAgLlwiKiBwYXIuMSAgICAgICAgICAgICAqCish IC5cIiogZm9yIFBhciAxLjUyIGkxOG4gKgorICAuXCIqIENvcHlyaWdodCAyMDAxIGJ5ICoKKyAg LlwiKiBBZGFtIE0uIENvc3RlbGxvICAqCisgIC5cIioqKioqKioqKioqKioqKioqKioqKgorZGlm ZiAtYyAuL3Bhci5jIC4uL1BhcjE1Mi11bmljb2RlL3Bhci5jCisqKiogLi9wYXIuYwkyMDAxLTA0 LTAyIDA4OjI1OjU3LjAwMDAwMDAwMCArMDQwMAorLS0tIC4uL1BhcjE1Mi11bmljb2RlL3Bhci5j CTIwMTktMTAtMjYgMTc6MjE6MDguNTQ3MDUwODUzICswMzAwCisqKioqKioqKioqKioqKioKKyoq KiAxLDkgKioqKgorISAvKioqKioqKioqKioqKioqKioqKioqLworISAvKiBwYXIuYyAgICAgICAg ICAgICAqLworISAvKiBmb3IgUGFyIDEuNTIgICAgICAqLworISAvKiBDb3B5cmlnaHQgMjAwMSBi eSAqLworISAvKiBBZGFtIE0uIENvc3RlbGxvICAqLworISAvKioqKioqKioqKioqKioqKioqKioq LworICAKKyAgLyogVGhpcyBpcyBBTlNJIEMgY29kZSAoQzg5KS4gKi8KKyAgCistLS0gMSwxMSAt LS0tCishIC8qKioqKioqKioqKioqKioqKioqKioqKi8KKyEgLyogcGFyLmMgICAgICAgICAgICAg ICAqLworISAvKiBmb3IgUGFyIDEuNTItaTE4bi40ICovCishIC8qIENvcHlyaWdodCAyMDAxIGJ5 ICAgKi8KKyEgLyogQWRhbSBNLiBDb3N0ZWxsbyAgICAqLworISAvKiBNb2RpZmllZCBieSAgICAg ICAgICovCishIC8qIErDqXLDtG1lIFBvdWlsbGVyICAgICAqLworISAvKioqKioqKioqKioqKioq KioqKioqKiovCisgIAorICAvKiBUaGlzIGlzIEFOU0kgQyBjb2RlIChDODkpLiAqLworICAKKyoq KioqKioqKioqKioqKgorKioqIDEyLDIyICoqKioKKyAgI2luY2x1ZGUgImJ1ZmZlci5oIiAgICAv KiBBbHNvIGluY2x1ZGVzIDxzdGRkZWYuaD4uICovCisgICNpbmNsdWRlICJyZWZvcm1hdC5oIgor ICAKKyEgI2luY2x1ZGUgPGN0eXBlLmg+CisgICNpbmNsdWRlIDxsb2NhbGUuaD4KKyAgI2luY2x1 ZGUgPHN0ZGlvLmg+CisgICNpbmNsdWRlIDxzdGRsaWIuaD4KKyAgI2luY2x1ZGUgPHN0cmluZy5o PgorICAKKyAgI3VuZGVmIE5VTEwKKyAgI2RlZmluZSBOVUxMICgodm9pZCAqKSAwKQorLS0tIDE0 LDI3IC0tLS0KKyAgI2luY2x1ZGUgImJ1ZmZlci5oIiAgICAvKiBBbHNvIGluY2x1ZGVzIDxzdGRk ZWYuaD4uICovCisgICNpbmNsdWRlICJyZWZvcm1hdC5oIgorICAKKyEgI2luY2x1ZGUgPGxhbmdp bmZvLmg+CishICNpbmNsdWRlIDx3Y2hhci5oPgorISAjaW5jbHVkZSA8d2N0eXBlLmg+CisgICNp bmNsdWRlIDxsb2NhbGUuaD4KKyAgI2luY2x1ZGUgPHN0ZGlvLmg+CisgICNpbmNsdWRlIDxzdGRs aWIuaD4KKyAgI2luY2x1ZGUgPHN0cmluZy5oPgorKyAjaW5jbHVkZSA8ZXJybm8uaD4KKyAgCisg ICN1bmRlZiBOVUxMCisgICNkZWZpbmUgTlVMTCAoKHZvaWQgKikgMCkKKyoqKioqKioqKioqKioq KgorKioqIDI1LDgwICoqKioKKyAgI2RlZmluZSBmcmVlKHB0cikKKyAgI2VuZGlmCisgIAorLSAK Ky0gLyo9PT0KKy0gCistIFJlZ2FyZGluZyBjaGFyIGFuZCB1bnNpZ25lZCBjaGFyOiAgQU5TSSBD IGlzIGEgbmlnaHRtYXJlIGluIHRoaXMKKy0gcmVzcGVjdC4gIFNvbWUgZnVuY3Rpb25zLCBsaWtl IHB1dHMoKSwgc3RyY2hyKCksIGFuZCBnZXRlbnYoKSwgdXNlIGNoYXIKKy0gb3IgY2hhciosIHNv IHRoZXkgd29yayB3ZWxsIHdpdGggY2hhcmFjdGVyIGNvbnN0YW50cyBsaWtlICdhJywgd2hpY2gK Ky0gYXJlIGNoYXIsIGFuZCB3aXRoIGFyZ3YsIHdoaWNoIGlzIGNoYXIqKi4gIEJ1dCBzZXZlcmFs IG90aGVyIGZ1bmN0aW9ucywKKy0gbGlrZSBnZXRjaGFyKCksIHB1dGNoYXIoKSwgYW5kIGlzZGln aXQoKSwgdXNlIHVuc2lnbmVkIGNoYXIgKGNvbnZlcnRlZAorLSB0by9mcm9tIGludCkuICBUaGVy ZWZvcmUgaW5ub2NlbnQtbG9va2luZyBjb2RlIGNhbiBiZSB3cm9uZywgZm9yCistIGV4YW1wbGU6 CistIAorLSAgICAgaW50IGMgPSBnZXRjaGFyKCk7CistICAgICBpZiAoYyA9PSAnYScpIC4uLgor LSAKKy0gVGhpcyBpcyB3cm9uZyBiZWNhdXNlICdhJyBpcyBjaGFyIChjb252ZXJ0ZWQgdG8gaW50 KSBhbmQgY291bGQgYmUKKy0gbmVnYXRpdmUsIGJ1dCBnZXRjaGFyKCkgcmV0dXJucyB1bnNpZ25l ZCBjaGFyIChjb252ZXJ0ZWQgdG8gaW50KSwgc28gYworLSBpcyBhbHdheXMgbm9ubmVnYXRpdmUg b3IgRU9GLiAgRm9yIHNpbWlsYXIgcmVhc29ucywgaXQgaXMgd3JvbmcgdG8gcGFzcworLSBhIGNo YXIgdG8gYSBmdW5jdGlvbiB0aGF0IGV4cGVjdHMgYW4gdW5zaWduZWQgY2hhcjoKKy0gCistICAg ICBwdXRjaGFyKCdcbicpOworLSAgICAgaWYgKGlzZGlnaXQoYXJndlsxXVswXSkpIC4uLgorLSAK Ky0gSW5ldml0YWJseSwgd2UgbmVlZCB0byBjb252ZXJ0IGJldHdlZW4gY2hhciBhbmQgdW5zaWdu ZWQgY2hhci4gIFRoaXMgY2FuCistIGJlIGRvbmUgYnkgaW50ZWdyYWwgY29udmVyc2lvbiAoY2Fz dGluZyBvciBhc3NpZ25pbmcgYSBjaGFyIHRvIHVuc2lnbmVkCistIGNoYXIgb3IgdmljZSB2ZXJz YSksIG9yIGJ5IGFsaWFzaW5nIChjb252ZXJ0aW5nIGEgcG9pbnRlciB0byBjaGFyIHRvCistIGEg cG9pbnRlciB0byB1bnNpZ25lZCBjaGFyIChvciB2aWNlIHZlcnNhKSBhbmQgdGhlbiBkZXJlZmVy ZW5jaW5nCistIGl0KS4gIEFOU0kgQyByZXF1aXJlcyB0aGF0IGludGVncmFsIGNvbnZlcnNpb24g YWx0ZXJzIHRoZSBiaXRzIHdoZW4gdGhlCistIHVuc2lnbmVkIHZhbHVlIGlzIG5vdCByZXByZXNl bnRhYmxlIGluIHRoZSBzaWduZWQgdHlwZSBhbmQgdGhlIHNpZ25lZAorLSB0eXBlIGRvZXMgbm90 IHVzZSB0d28ncyBjb21wbGVtZW50IHJlcHJlc2VudGF0aW9uLiAgQWxpYXNpbmcsIG9uIHRoZQor LSBvdGhlciBoYW5kLCBwcmVzZXJ2ZXMgdGhlIGJpdHMuICBBbHRob3VnaCB0aGUgQyBzdGFuZGFy ZCBpcyBub3QgYXQgYWxsCistIGNsZWFyIGFib3V0IHdoaWNoIHNvcnQgb2YgY29udmVyc2lvbiBp cyBhcHByb3ByaWF0ZSBmb3IgbWFraW5nIHRoZQorLSBzdGFuZGFyZCBsaWJyYXJ5IGZ1bmN0aW9u cyBpbnRlcm9wZXJhdGUsIEkgdGhpbmsgcHJlc2VydmluZyB0aGUgYml0cworLSBpcyB3aGF0IGlz IG5lZWRlZC4gIFVuZGVyIHRoYXQgYXNzdW1wdGlvbiwgaGVyZSBhcmUgc29tZSBleGFtcGxlcyBv ZgorLSBjb3JyZWN0IGNvZGU6CistIAorLSAgICAgaW50IGMgPSBnZXRjaGFyKCk7CistICAgICBj aGFyIGNoOworLSAKKy0gICAgIGlmIChjICE9IEVPRikgeworLSAgICAgICAqKHVuc2lnbmVkIGNo YXIgKikmY2ggPSBjOworLSAgICAgICBpZiAoY2ggPT0gJ2EnKSAuLi4KKy0gICAgICAgaWYgKGlz ZGlnaXQoYykpIC4uLgorLSAgICAgfQorLSAKKy0gICAgIGNoYXIgKnMgPSAuLi4KKy0gICAgIGlm IChpc2RpZ2l0KCoodW5zaWduZWQgY2hhciAqKXMpKSAuLi4KKy0gCistID09PSovCistIAorLSAK KyAgc3RhdGljIGNvbnN0IGNoYXIgKiBjb25zdCB1c2FnZW1zZyA9CisgICJcbiIKKyAgIk9wdGlv bnMgZm9yIHBhcjpcbiIKKy0tLSAzMCwzNSAtLS0tCisqKioqKioqKioqKioqKioKKyoqKiAxMjYs MTMyICoqKioKKyAgICAgICAgICAgICAgICAgICAgLyogbGluZSwgb3IgdGhlIGZhbGxiYWNrIHBy ZWxlbiBhbmQgc3VmbGVuICAgICAgICovCisgICAgICAgICAgICAgICAgICAgIC8qIG9mIHRoZSBJ UCBjb250YWluaW5nIGEgbm9uLWJvZGlsZXNzIGxpbmUuICAgICAqLworICAgIGxmbGFnX3QgZmxh Z3M7ICAvKiBCb29sZWFuIHByb3BlcnRpZXMgKHNlZSBiZWxvdykuICAgICAgICAgICAgICAgKi8K KyEgICBjaGFyIHJjOyAgICAgICAgLyogVGhlIHJlcGVhdGVkIGNoYXJhY3RlciBvZiBhIGJvZGls ZXNzIGxpbmUuICAgICovCisgIH0gbGluZXByb3A7CisgIAorICAvKiBGbGFncyBmb3IgbWFya2lu ZyBib29sZWFuIHByb3BlcnRpZXM6ICovCistLS0gODEsODcgLS0tLQorICAgICAgICAgICAgICAg ICAgICAvKiBsaW5lLCBvciB0aGUgZmFsbGJhY2sgcHJlbGVuIGFuZCBzdWZsZW4gICAgICAgKi8K KyAgICAgICAgICAgICAgICAgICAgLyogb2YgdGhlIElQIGNvbnRhaW5pbmcgYSBub24tYm9kaWxl c3MgbGluZS4gICAgICovCisgICAgbGZsYWdfdCBmbGFnczsgIC8qIEJvb2xlYW4gcHJvcGVydGll cyAoc2VlIGJlbG93KS4gICAgICAgICAgICAgICAqLworISAgIHdjaGFyX3QgcmM7ICAgICAvKiBU aGUgcmVwZWF0ZWQgY2hhcmFjdGVyIG9mIGEgYm9kaWxlc3MgbGluZS4gICAgKi8KKyAgfSBsaW5l cHJvcDsKKyAgCisgIC8qIEZsYWdzIGZvciBtYXJraW5nIGJvb2xlYW4gcHJvcGVydGllczogKi8K KyoqKioqKioqKioqKioqKgorKioqIDE0MywxNTYgKioqKgorICAjZGVmaW5lICAgaXN2YWNhbnQo cHJvcCkgKGlzYm9kaWxlc3MocHJvcCkgJiYgKHByb3ApLT5yYyA9PSAnICcpCisgIAorICAKKyEg c3RhdGljIGludCBkaWd0b2ludChjaGFyIGMpCisgIAorICAvKiBSZXR1cm5zIHRoZSB2YWx1ZSBy ZXByZXNlbnRlZCBieSB0aGUgZGlnaXQgYywgb3IgLTEgaWYgYyBpcyBub3QgYSBkaWdpdC4gKi8K KyAgeworISAgIGNvbnN0IGNoYXIgKnAsICogY29uc3QgZGlnaXRzID0gIjAxMjM0NTY3ODkiOwor ICAKKyAgICBpZiAoIWMpIHJldHVybiAtMTsKKyEgICBwID0gc3RyY2hyKGRpZ2l0cyxjKTsKKyAg ICByZXR1cm4gIHAgID8gIHAgLSBkaWdpdHMgIDogIC0xOworICAKKyAgICAvKiBXZSBjYW4ndCBz aW1wbHkgcmV0dXJuIGMgLSAnMCcgYmVjYXVzZSB0aGlzIGlzIEFOU0kgQyBjb2RlLCAgKi8KKy0t LSA5OCwxMTEgLS0tLQorICAjZGVmaW5lICAgaXN2YWNhbnQocHJvcCkgKGlzYm9kaWxlc3MocHJv cCkgJiYgKHByb3ApLT5yYyA9PSAnICcpCisgIAorICAKKyEgc3RhdGljIGludCBkaWd0b2ludCh3 Y2hhcl90IGMpCisgIAorICAvKiBSZXR1cm5zIHRoZSB2YWx1ZSByZXByZXNlbnRlZCBieSB0aGUg ZGlnaXQgYywgb3IgLTEgaWYgYyBpcyBub3QgYSBkaWdpdC4gKi8KKyAgeworISAgIGNvbnN0IHdj aGFyX3QgKnAsICogY29uc3QgZGlnaXRzID0gTCIwMTIzNDU2Nzg5IjsKKyAgCisgICAgaWYgKCFj KSByZXR1cm4gLTE7CishICAgcCA9IHdjc2NocihkaWdpdHMsYyk7CisgICAgcmV0dXJuICBwICA/ ICBwIC0gZGlnaXRzICA6ICAtMTsKKyAgCisgICAgLyogV2UgY2FuJ3Qgc2ltcGx5IHJldHVybiBj IC0gJzAnIGJlY2F1c2UgdGhpcyBpcyBBTlNJIEMgY29kZSwgICovCisqKioqKioqKioqKioqKioK KyoqKiAxNjEsMTY3ICoqKioKKyAgfQorICAKKyAgCishIHN0YXRpYyBpbnQgc3RydG91ZGVjKGNv bnN0IGNoYXIgKnMsIGludCAqcG4pCisgIAorICAvKiBDb252ZXJ0cyB0aGUgbG9uZ2VzdCBwcmVm aXggb2Ygc3RyaW5nIHMgY29uc2lzdGluZyBvZiBkZWNpbWFsICAgKi8KKyAgLyogZGlnaXRzIHRv IGFuIGludGVnZXIsIHdoaWNoIGlzIHN0b3JlZCBpbiAqcG4uICBOb3JtYWxseSByZXR1cm5zICov CistLS0gMTE2LDEyMiAtLS0tCisgIH0KKyAgCisgIAorISBzdGF0aWMgaW50IHN0cnRvdWRlYyhj b25zdCB3Y2hhcl90ICpzLCBpbnQgKnBuKQorICAKKyAgLyogQ29udmVydHMgdGhlIGxvbmdlc3Qg cHJlZml4IG9mIHN0cmluZyBzIGNvbnNpc3Rpbmcgb2YgZGVjaW1hbCAgICovCisgIC8qIGRpZ2l0 cyB0byBhbiBpbnRlZ2VyLCB3aGljaCBpcyBzdG9yZWQgaW4gKnBuLiAgTm9ybWFsbHkgcmV0dXJu cyAqLworKioqKioqKioqKioqKioqCisqKiogMTg3LDE5MyAqKioqCisgIAorICAKKyAgc3RhdGlj IHZvaWQgcGFyc2VhcmcoCishICAgY29uc3QgY2hhciAqYXJnLCBpbnQgKnBoZWxwLCBpbnQgKnB2 ZXJzaW9uLCBjaGFyc2V0ICpib2R5Y2hhcnMsIGNoYXJzZXQKKyAgICAqcHJvdGVjdGNoYXJzLCBj aGFyc2V0ICpxdW90ZWNoYXJzLCBpbnQgKnBoYW5nLCBpbnQgKnBwcmVmaXgsIGludCAqcHJlcGVh dCwKKyAgICBpbnQgKnBzdWZmaXgsIGludCAqcFRhYiwgaW50ICpwd2lkdGgsIGludCAqcGJvZHks IGludCAqcGNhcCwgaW50ICpwZGl2LCBpbnQKKyAgICAqcEVyciwgaW50ICpwZXhwZWwsIGludCAq cGZpdCwgaW50ICpwZ3Vlc3MsIGludCAqcGludmlzLCBpbnQgKnBqdXN0LCBpbnQKKy0tLSAxNDIs MTQ4IC0tLS0KKyAgCisgIAorICBzdGF0aWMgdm9pZCBwYXJzZWFyZygKKyEgICBjb25zdCB3Y2hh cl90ICphcmcsIGludCAqcGhlbHAsIGludCAqcHZlcnNpb24sIGNoYXJzZXQgKmJvZHljaGFycywg Y2hhcnNldAorICAgICpwcm90ZWN0Y2hhcnMsIGNoYXJzZXQgKnF1b3RlY2hhcnMsIGludCAqcGhh bmcsIGludCAqcHByZWZpeCwgaW50ICpwcmVwZWF0LAorICAgIGludCAqcHN1ZmZpeCwgaW50ICpw VGFiLCBpbnQgKnB3aWR0aCwgaW50ICpwYm9keSwgaW50ICpwY2FwLCBpbnQgKnBkaXYsIGludAor ICAgICpwRXJyLCBpbnQgKnBleHBlbCwgaW50ICpwZml0LCBpbnQgKnBndWVzcywgaW50ICpwaW52 aXMsIGludCAqcGp1c3QsIGludAorKioqKioqKioqKioqKioqCisqKiogMTk3LDI3NCAqKioqCisg IC8qIGJ5IHRoZSBvdGhlciBwb2ludGVycyBhcyBhcHByb3ByaWF0ZS4gICpwaGVscCBhbmQgKnB2 ZXJzaW9uIGFyZSBib29sZWFuICAqLworICAvKiBmbGFncyBpbmRpY2F0aW5nIHdoZXRoZXIgdGhl IGhlbHAgYW5kIHZlcnNpb24gb3B0aW9ucyB3ZXJlIHN1cHBsaWVkLiAgICAgKi8KKyAgeworISAg IGNvbnN0IGNoYXIgKnNhdmVhcmcgPSBhcmc7CisgICAgY2hhcnNldCAqY2hhcnMsICpjaGFuZ2U7 CishICAgY2hhciBvYzsKKyAgICBpbnQgbjsKKyAgCisgICAgKmVycm1zZyA9ICdcMCc7CisgIAor ISAgIGlmICgqYXJnID09ICctJykgKythcmc7CishIAorISAgIGlmICghc3RyY21wKGFyZywgImhl bHAiKSkgeworICAgICAgKnBoZWxwID0gMTsKKyAgICAgIHJldHVybjsKKyAgICB9CisgIAorISAg IGlmICghc3RyY21wKGFyZywgInZlcnNpb24iKSkgeworICAgICAgKnB2ZXJzaW9uID0gMTsKKyAg ICAgIHJldHVybjsKKyAgICB9CisgIAorISAgIGlmICgqYXJnID09ICdCJyB8fCAqYXJnID09ICdQ JyB8fCAqYXJnID09ICdRJyApIHsKKyEgICAgIGNoYXJzID0gICphcmcgPT0gJ0InICA/ICBib2R5 Y2hhcnMgICAgOgorISAgICAgICAgICAgICAgKmFyZyA9PSAnUCcgID8gIHByb3RlY3RjaGFycyA6 CishICAgICAgICAgICAvKiAqYXJnID09ICdRJyAqLyAgcXVvdGVjaGFycyAgIDsKKyAgICAgICsr YXJnOworISAgICAgaWYgKCphcmcgIT0gJz0nICAmJiAgKmFyZyAhPSAnKycgICYmICAqYXJnICE9 ICctJykgZ290byBiYWRhcmc7CisgICAgICBjaGFuZ2UgPSBwYXJzZWNoYXJzZXQoYXJnICsgMSwg ZXJybXNnKTsKKyAgICAgIGlmIChjaGFuZ2UpIHsKKyEgICAgICAgaWYgICAgICAoKmFyZyA9PSAn PScpICAgY3Nzd2FwKGNoYXJzLGNoYW5nZSk7CishICAgICAgIGVsc2UgaWYgKCphcmcgPT0gJysn KSAgIGNzYWRkKGNoYXJzLGNoYW5nZSxlcnJtc2cpOworISAgICAgICBlbHNlICAvKiAqYXJnID09 ICctJyAqLyBjc3JlbW92ZShjaGFycyxjaGFuZ2UsZXJybXNnKTsKKyAgICAgICAgZnJlZWNoYXJz ZXQoY2hhbmdlKTsKKyAgICAgIH0KKyAgICAgIHJldHVybjsKKyAgICB9CisgIAorISAgIGlmIChp c2RpZ2l0KCoodW5zaWduZWQgY2hhciAqKWFyZykpIHsKKyAgICAgIGlmICghc3RydG91ZGVjKGFy ZywgJm4pKSBnb3RvIGJhZGFyZzsKKyAgICAgIGlmIChuIDw9IDgpICpwcHJlZml4ID0gbjsKKyAg ICAgIGVsc2UgKnB3aWR0aCA9IG47CisgICAgfQorICAKKyAgICBmb3IgKDs7KSB7CishICAgICB3 aGlsZSAoaXNkaWdpdCgqKHVuc2lnbmVkIGNoYXIgKilhcmcpKSArK2FyZzsKKyAgICAgIG9jID0g KmFyZzsKKyAgICAgIGlmICghb2MpIGJyZWFrOworICAgICAgbiA9IC0xOworICAgICAgaWYgKCFz dHJ0b3VkZWMoKythcmcsICZuKSkgZ290byBiYWRhcmc7CishICAgICBpZiAoICAgb2MgPT0gJ2gn IHx8IG9jID09ICdwJyB8fCBvYyA9PSAncicKKyEgICAgICAgICB8fCBvYyA9PSAncycgfHwgb2Mg PT0gJ1QnIHx8IG9jID09ICd3JykgeworISAgICAgICBpZiAgICAgIChvYyA9PSAnaCcpICAgKnBo YW5nICAgPSAgbiA+PSAwID8gbiA6ICAxOworISAgICAgICBlbHNlIGlmIChvYyA9PSAncCcpICAg KnBwcmVmaXggPSAgbjsKKyEgICAgICAgZWxzZSBpZiAob2MgPT0gJ3InKSAgICpwcmVwZWF0ID0g IG4gPj0gMCA/IG4gOiAgMzsKKyEgICAgICAgZWxzZSBpZiAob2MgPT0gJ3MnKSAgICpwc3VmZml4 ID0gIG47CishICAgICAgIGVsc2UgaWYgKG9jID09ICdUJykgICAqcFRhYiAgICA9ICBuID49IDAg PyBuIDogIDg7CishICAgICAgIGVsc2UgIC8qIG9jID09ICd3JyAqLyAqcHdpZHRoICA9ICBuID49 IDAgPyBuIDogNzk7CisgICAgICB9CisgICAgICBlbHNlIHsKKyAgICAgICAgaWYgKG4gPCAwKSBu ID0gMTsKKyAgICAgICAgaWYgKG4gPiAxKSBnb3RvIGJhZGFyZzsKKyEgICAgICAgaWYgICAgICAo b2MgPT0gJ2InKSAqcGJvZHkgICA9IG47CishICAgICAgIGVsc2UgaWYgKG9jID09ICdjJykgKnBj YXAgICAgPSBuOworISAgICAgICBlbHNlIGlmIChvYyA9PSAnZCcpICpwZGl2ICAgID0gbjsKKyEg ICAgICAgZWxzZSBpZiAob2MgPT0gJ0UnKSAqcEVyciAgICA9IG47CishICAgICAgIGVsc2UgaWYg KG9jID09ICdlJykgKnBleHBlbCAgPSBuOworISAgICAgICBlbHNlIGlmIChvYyA9PSAnZicpICpw Zml0ICAgID0gbjsKKyEgICAgICAgZWxzZSBpZiAob2MgPT0gJ2cnKSAqcGd1ZXNzICA9IG47Cish ICAgICAgIGVsc2UgaWYgKG9jID09ICdpJykgKnBpbnZpcyAgPSBuOworISAgICAgICBlbHNlIGlm IChvYyA9PSAnaicpICpwanVzdCAgID0gbjsKKyEgICAgICAgZWxzZSBpZiAob2MgPT0gJ2wnKSAq cGxhc3QgICA9IG47CishICAgICAgIGVsc2UgaWYgKG9jID09ICdxJykgKnBxdW90ZSAgPSBuOwor ISAgICAgICBlbHNlIGlmIChvYyA9PSAnUicpICpwUmVwb3J0ID0gbjsKKyEgICAgICAgZWxzZSBp ZiAob2MgPT0gJ3QnKSAqcHRvdWNoICA9IG47CisgICAgICAgIGVsc2UgZ290byBiYWRhcmc7Cisg ICAgICB9CisgICAgfQorLS0tIDE1MiwyMjkgLS0tLQorICAvKiBieSB0aGUgb3RoZXIgcG9pbnRl cnMgYXMgYXBwcm9wcmlhdGUuICAqcGhlbHAgYW5kICpwdmVyc2lvbiBhcmUgYm9vbGVhbiAgKi8K KyAgLyogZmxhZ3MgaW5kaWNhdGluZyB3aGV0aGVyIHRoZSBoZWxwIGFuZCB2ZXJzaW9uIG9wdGlv bnMgd2VyZSBzdXBwbGllZC4gICAgICovCisgIHsKKyEgICBjb25zdCB3Y2hhcl90ICpzYXZlYXJn ID0gYXJnOworICAgIGNoYXJzZXQgKmNoYXJzLCAqY2hhbmdlOworISAgIHdjaGFyX3Qgb2M7Cisg ICAgaW50IG47CisgIAorICAgICplcnJtc2cgPSAnXDAnOworKyAgIAorKyAgIGlmICgqYXJnID09 IEwnLScpICsrYXJnOworICAKKyEgICBpZiAoIXdjc2NtcChhcmcsIEwiaGVscCIpKSB7CisgICAg ICAqcGhlbHAgPSAxOworICAgICAgcmV0dXJuOworICAgIH0KKyAgCishICAgaWYgKCF3Y3NjbXAo YXJnLCBMInZlcnNpb24iKSkgeworICAgICAgKnB2ZXJzaW9uID0gMTsKKyAgICAgIHJldHVybjsK KyAgICB9CisgIAorISAgIGlmICgqYXJnID09IEwnQicgfHwgKmFyZyA9PSBMJ1AnIHx8ICphcmcg PT0gTCdRJyApIHsKKyEgICAgIGNoYXJzID0gICphcmcgPT0gTCdCJyAgPyAgYm9keWNoYXJzICAg IDoKKyEgICAgICAgICAgICAgICphcmcgPT0gTCdQJyAgPyAgcHJvdGVjdGNoYXJzIDoKKyEgICAg ICAgICAgIC8qICphcmcgPT0gTCdRJyAqLyAgcXVvdGVjaGFycyAgIDsKKyAgICAgICsrYXJnOwor ISAgICAgaWYgKCphcmcgIT0gTCc9JyAgJiYgICphcmcgIT0gTCcrJyAgJiYgICphcmcgIT0gTCct JykgZ290byBiYWRhcmc7CisgICAgICBjaGFuZ2UgPSBwYXJzZWNoYXJzZXQoYXJnICsgMSwgZXJy bXNnKTsKKyAgICAgIGlmIChjaGFuZ2UpIHsKKyEgICAgICAgaWYgICAgICAoKmFyZyA9PSBMJz0n KSAgIGNzc3dhcChjaGFycyxjaGFuZ2UpOworISAgICAgICBlbHNlIGlmICgqYXJnID09IEwnKycp ICAgY3NhZGQoY2hhcnMsY2hhbmdlLGVycm1zZyk7CishICAgICAgIGVsc2UgIC8qICphcmcgPT0g TCctJyAqLyBjc3JlbW92ZShjaGFycyxjaGFuZ2UsZXJybXNnKTsKKyAgICAgICAgZnJlZWNoYXJz ZXQoY2hhbmdlKTsKKyAgICAgIH0KKyAgICAgIHJldHVybjsKKyAgICB9CisgIAorISAgIGlmIChp c3dkaWdpdCgqYXJnKSkgeworICAgICAgaWYgKCFzdHJ0b3VkZWMoYXJnLCAmbikpIGdvdG8gYmFk YXJnOworICAgICAgaWYgKG4gPD0gOCkgKnBwcmVmaXggPSBuOworICAgICAgZWxzZSAqcHdpZHRo ID0gbjsKKyAgICB9CisgIAorICAgIGZvciAoOzspIHsKKyEgICAgIHdoaWxlIChpc3dkaWdpdCgq YXJnKSkgKythcmc7CisgICAgICBvYyA9ICphcmc7CisgICAgICBpZiAoIW9jKSBicmVhazsKKyAg ICAgIG4gPSAtMTsKKyAgICAgIGlmICghc3RydG91ZGVjKCsrYXJnLCAmbikpIGdvdG8gYmFkYXJn OworISAgICAgaWYgKCAgIG9jID09IEwnaCcgfHwgb2MgPT0gTCdwJyB8fCBvYyA9PSBMJ3InCish ICAgICAgICAgfHwgb2MgPT0gTCdzJyB8fCBvYyA9PSBMJ1QnIHx8IG9jID09IEwndycpIHsKKyEg ICAgICAgaWYgICAgICAob2MgPT0gTCdoJykgICAqcGhhbmcgICA9ICBuID49IDAgPyBuIDogIDE7 CishICAgICAgIGVsc2UgaWYgKG9jID09IEwncCcpICAgKnBwcmVmaXggPSAgbjsKKyEgICAgICAg ZWxzZSBpZiAob2MgPT0gTCdyJykgICAqcHJlcGVhdCA9ICBuID49IDAgPyBuIDogIDM7CishICAg ICAgIGVsc2UgaWYgKG9jID09IEwncycpICAgKnBzdWZmaXggPSAgbjsKKyEgICAgICAgZWxzZSBp ZiAob2MgPT0gTCdUJykgICAqcFRhYiAgICA9ICBuID49IDAgPyBuIDogIDg7CishICAgICAgIGVs c2UgIC8qIG9jID09IEwndycgKi8gKnB3aWR0aCAgPSAgbiA+PSAwID8gbiA6IDc5OworICAgICAg fQorICAgICAgZWxzZSB7CisgICAgICAgIGlmIChuIDwgMCkgbiA9IDE7CisgICAgICAgIGlmIChu ID4gMSkgZ290byBiYWRhcmc7CishICAgICAgIGlmICAgICAgKG9jID09IEwnYicpICpwYm9keSAg ID0gbjsKKyEgICAgICAgZWxzZSBpZiAob2MgPT0gTCdjJykgKnBjYXAgICAgPSBuOworISAgICAg ICBlbHNlIGlmIChvYyA9PSBMJ2QnKSAqcGRpdiAgICA9IG47CishICAgICAgIGVsc2UgaWYgKG9j ID09IEwnRScpICpwRXJyICAgID0gbjsKKyEgICAgICAgZWxzZSBpZiAob2MgPT0gTCdlJykgKnBl eHBlbCAgPSBuOworISAgICAgICBlbHNlIGlmIChvYyA9PSBMJ2YnKSAqcGZpdCAgICA9IG47Cish ICAgICAgIGVsc2UgaWYgKG9jID09IEwnZycpICpwZ3Vlc3MgID0gbjsKKyEgICAgICAgZWxzZSBp ZiAob2MgPT0gTCdpJykgKnBpbnZpcyAgPSBuOworISAgICAgICBlbHNlIGlmIChvYyA9PSBMJ2on KSAqcGp1c3QgICA9IG47CishICAgICAgIGVsc2UgaWYgKG9jID09IEwnbCcpICpwbGFzdCAgID0g bjsKKyEgICAgICAgZWxzZSBpZiAob2MgPT0gTCdxJykgKnBxdW90ZSAgPSBuOworISAgICAgICBl bHNlIGlmIChvYyA9PSBMJ1InKSAqcFJlcG9ydCA9IG47CishICAgICAgIGVsc2UgaWYgKG9jID09 IEwndCcpICpwdG91Y2ggID0gbjsKKyAgICAgICAgZWxzZSBnb3RvIGJhZGFyZzsKKyAgICAgIH0K KyAgICB9CisqKioqKioqKioqKioqKioKKyoqKiAyNzcsMjg4ICoqKioKKyAgCisgIGJhZGFyZzoK KyAgCishICAgc3ByaW50ZihlcnJtc2csICJCYWQgYXJndW1lbnQ6ICUuKnNcbiIsIGVycm1zZ19z aXplIC0gMTYsIHNhdmVhcmcpOworICAgICpwaGVscCA9IDE7CisgIH0KKyAgCisgIAorISBzdGF0 aWMgY2hhciAqKnJlYWRsaW5lcygKKyAgICBsaW5lcHJvcCAqKnBwcm9wcywgY29uc3QgY2hhcnNl dCAqcHJvdGVjdGNoYXJzLAorICAgIGNvbnN0IGNoYXJzZXQgKnF1b3RlY2hhcnMsIGludCBUYWIs IGludCBpbnZpcywgaW50IHF1b3RlLCBlcnJtc2dfdCBlcnJtc2cKKyAgKQorLS0tIDIzMiwyNDMg LS0tLQorICAKKyAgYmFkYXJnOgorICAKKyEgICBzd3ByaW50ZihlcnJtc2csIGVycm1zZ19zaXpl LCBMIkJhZCBhcmd1bWVudDogJS4qc1xuIiwgZXJybXNnX3NpemUgLSAxNiwgc2F2ZWFyZyk7Cisg ICAgKnBoZWxwID0gMTsKKyAgfQorICAKKyAgCishIHN0YXRpYyB3Y2hhcl90ICoqcmVhZGxpbmVz KAorICAgIGxpbmVwcm9wICoqcHByb3BzLCBjb25zdCBjaGFyc2V0ICpwcm90ZWN0Y2hhcnMsCisg ICAgY29uc3QgY2hhcnNldCAqcXVvdGVjaGFycywgaW50IFRhYiwgaW50IGludmlzLCBpbnQgcXVv dGUsIGVycm1zZ190IGVycm1zZworICApCisqKioqKioqKioqKioqKioKKyoqKiAzMDIsMzEwICoq KioKKyAgLyogaXQncyBub3QgTlVMTC4gIE9uIGZhaWx1cmUsIHJldHVybnMgTlVMTCBhbmQgc2V0 cyAqcHByb3BzIHRvIE5VTEwuICAgKi8KKyAgeworICAgIGJ1ZmZlciAqY2J1ZiA9IE5VTEwsICps YnVmID0gTlVMTCwgKmxwYnVmID0gTlVMTDsKKyEgICBpbnQgYywgZW1wdHksIGJsYW5rLCBmaXJz dGxpbmUsIHFzb25seSwgb2xkcXNvbmx5ID0gMCwgdmxubGVuLCBpOworISAgIGNoYXIgY2gsICps biA9IE5VTEwsIG51bGxjaGFyID0gJ1wwJywgKm51bGxsaW5lID0gTlVMTCwgKnFwZW5kLAorISAg ICAgICAgKm9sZGxuID0gTlVMTCwgKm9sZHFwZW5kID0gTlVMTCwgKnAsICpvcCwgKnZsbiA9IE5V TEwsICoqbGluZXMgPSBOVUxMOworICAgIGxpbmVwcm9wIHZwcm9wID0geyAwLCAwLCAwLCAnXDAn IH0sIGlwcm9wID0geyAwLCAwLCAwLCAnXDAnIH07CisgIAorICAgIC8qIG9sZHFzb25seSwgb2xk bG4sIGFuZCBvbGRxdWVuZCBkb24ndCByZWFsbHkgbmVlZCB0byBiZSBpbml0aWFsaXplZC4gICAq LworLS0tIDI1NywyNjYgLS0tLQorICAvKiBpdCdzIG5vdCBOVUxMLiAgT24gZmFpbHVyZSwgcmV0 dXJucyBOVUxMIGFuZCBzZXRzICpwcHJvcHMgdG8gTlVMTC4gICAqLworICB7CisgICAgYnVmZmVy ICpjYnVmID0gTlVMTCwgKmxidWYgPSBOVUxMLCAqbHBidWYgPSBOVUxMOworISAgIHdpbnRfdCBj OworISAgIGludCBlbXB0eSwgYmxhbmssIGZpcnN0bGluZSwgcXNvbmx5LCBvbGRxc29ubHkgPSAw LCB2bG5sZW4sIGk7CishICAgd2NoYXJfdCAqbG4gPSBOVUxMLCBudWxsY2hhciA9IEwnXDAnLCAq bnVsbGxpbmUgPSBOVUxMLCAqcXBlbmQsIAorISAgICAgKm9sZGxuID0gTlVMTCwgKm9sZHFwZW5k ID0gTlVMTCwgKnAsICpvcCwgKnZsbiA9IE5VTEwsICoqbGluZXMgPSBOVUxMOworICAgIGxpbmVw cm9wIHZwcm9wID0geyAwLCAwLCAwLCAnXDAnIH0sIGlwcm9wID0geyAwLCAwLCAwLCAnXDAnIH07 CisgIAorICAgIC8qIG9sZHFzb25seSwgb2xkbG4sIGFuZCBvbGRxdWVuZCBkb24ndCByZWFsbHkg bmVlZCB0byBiZSBpbml0aWFsaXplZC4gICAqLworKioqKioqKioqKioqKioqCisqKiogMzE2LDMz NSAqKioqCisgIAorICAgICpwcHJvcHMgPSBOVUxMOworICAKKyEgICBjYnVmID0gbmV3YnVmZmVy KHNpemVvZiAoY2hhciksIGVycm1zZyk7CisgICAgaWYgKCplcnJtc2cpIGdvdG8gcmxjbGVhbnVw OworISAgIGxidWYgPSBuZXdidWZmZXIoc2l6ZW9mIChjaGFyICopLCBlcnJtc2cpOworICAgIGlm ICgqZXJybXNnKSBnb3RvIHJsY2xlYW51cDsKKyAgICBscGJ1ZiA9IG5ld2J1ZmZlcihzaXplb2Yg KGxpbmVwcm9wKSwgZXJybXNnKTsKKyAgICBpZiAoKmVycm1zZykgZ290byBybGNsZWFudXA7Cisg IAorICAgIGZvciAoZW1wdHkgPSBibGFuayA9IGZpcnN0bGluZSA9IDE7ICA7ICApIHsKKyEgICAg IGMgPSBnZXRjaGFyKCk7CishICAgICBpZiAoYyA9PSBFT0YpIGJyZWFrOworISAgICAgKih1bnNp Z25lZCBjaGFyICopJmNoID0gYzsKKyEgICAgIGlmIChjaCA9PSAnXG4nKSB7CisgICAgICAgIGlm IChibGFuaykgeworISAgICAgICAgIHVuZ2V0YyhjLHN0ZGluKTsKKyAgICAgICAgICBicmVhazsK KyAgICAgICAgfQorICAgICAgICBhZGRpdGVtKGNidWYsICZudWxsY2hhciwgZXJybXNnKTsKKy0t LSAyNzIsMjk2IC0tLS0KKyAgCisgICAgKnBwcm9wcyA9IE5VTEw7CisgIAorISAgIGNidWYgPSBu ZXdidWZmZXIoc2l6ZW9mICh3Y2hhcl90KSwgZXJybXNnKTsKKyAgICBpZiAoKmVycm1zZykgZ290 byBybGNsZWFudXA7CishICAgbGJ1ZiA9IG5ld2J1ZmZlcihzaXplb2YgKHdjaGFyX3QgKiksIGVy cm1zZyk7CisgICAgaWYgKCplcnJtc2cpIGdvdG8gcmxjbGVhbnVwOworICAgIGxwYnVmID0gbmV3 YnVmZmVyKHNpemVvZiAobGluZXByb3ApLCBlcnJtc2cpOworICAgIGlmICgqZXJybXNnKSBnb3Rv IHJsY2xlYW51cDsKKyAgCisgICAgZm9yIChlbXB0eSA9IGJsYW5rID0gZmlyc3RsaW5lID0gMTsg IDsgICkgeworISAgICAgYyA9IGdldHdjaGFyKCk7CishICAgICBpZiAoYyA9PSBXRU9GKSB7Cish ICAgICAgIGlmIChlcnJubyA9PSBFSUxTRVEpIHsKKyEgICAgICAgCXdjc2NweShlcnJtc2csIEwi SW52YWxpZCBtdWx0aWJ5dGUgc2VxdWVuY2UgaW4gaW5wdXRcbiIpOworISAJZ290byBybGNsZWFu dXA7CishICAgICAgIH0KKyEgICAgICAgYnJlYWs7CishICAgICB9CishICAgICBpZiAoYyA9PSBM J1xuJykgeworICAgICAgICBpZiAoYmxhbmspIHsKKyEgICAgICAgICB1bmdldHdjKGMsc3RkaW4p OworICAgICAgICAgIGJyZWFrOworICAgICAgICB9CisgICAgICAgIGFkZGl0ZW0oY2J1ZiwgJm51 bGxjaGFyLCBlcnJtc2cpOworKioqKioqKioqKioqKioqCisqKiogMzM4LDM0NiAqKioqCisgICAg ICAgIGlmICgqZXJybXNnKSBnb3RvIHJsY2xlYW51cDsKKyAgICAgICAgaWYgKHF1b3RlKSB7Cisg ICAgICAgICAgZm9yIChxcGVuZCA9IGxuOyAgKnFwZW5kICYmIGNzbWVtYmVyKCpxcGVuZCwgcXVv dGVjaGFycyk7ICArK3FwZW5kKTsKKyEgICAgICAgICBmb3IgKHAgPSBxcGVuZDsgICpwID09ICcg JyB8fCBjc21lbWJlcigqcCwgcXVvdGVjaGFycyk7ICArK3ApOworISAgICAgICAgIHFzb25seSA9 ICAqcCA9PSAnXDAnOworISAgICAgICAgIHdoaWxlIChxcGVuZCA+IGxuICYmIHFwZW5kWy0xXSA9 PSAnICcpIC0tcXBlbmQ7CisgICAgICAgICAgaWYgKCFmaXJzdGxpbmUpIHsKKyAgICAgICAgICAg IGZvciAocCA9IGxuLCBvcCA9IG9sZGxuOworICAgICAgICAgICAgICAgICBwIDwgcXBlbmQgJiYg b3AgPCBvbGRxcGVuZCAmJiAqcCA9PSAqb3A7CistLS0gMjk5LDMwNyAtLS0tCisgICAgICAgIGlm ICgqZXJybXNnKSBnb3RvIHJsY2xlYW51cDsKKyAgICAgICAgaWYgKHF1b3RlKSB7CisgICAgICAg ICAgZm9yIChxcGVuZCA9IGxuOyAgKnFwZW5kICYmIGNzbWVtYmVyKCpxcGVuZCwgcXVvdGVjaGFy cyk7ICArK3FwZW5kKTsKKyEgICAgICAgICBmb3IgKHAgPSBxcGVuZDsgICpwID09IEwnICcgfHwg Y3NtZW1iZXIoKnAsIHF1b3RlY2hhcnMpOyAgKytwKTsKKyEgICAgICAgICBxc29ubHkgPSAgKCpw ID09IEwnXDAnKTsKKyEgICAgICAgICB3aGlsZSAocXBlbmQgPiBsbiAmJiBxcGVuZFstMV0gPT0g TCcgJykgLS1xcGVuZDsKKyAgICAgICAgICBpZiAoIWZpcnN0bGluZSkgeworICAgICAgICAgICAg Zm9yIChwID0gbG4sIG9wID0gb2xkbG47CisgICAgICAgICAgICAgICAgIHAgPCBxcGVuZCAmJiBv cCA8IG9sZHFwZW5kICYmICpwID09ICpvcDsKKyoqKioqKioqKioqKioqKgorKioqIDM0OCwzNzAg KioqKgorICAgICAgICAgICAgaWYgKCEocCA9PSBxcGVuZCAmJiBvcCA9PSBvbGRxcGVuZCkpIHsK KyAgICAgICAgICAgICAgaWYgKCFpbnZpcyAmJiAob2xkcXNvbmx5IHx8IHFzb25seSkpIHsKKyAg ICAgICAgICAgICAgICBpZiAob2xkcXNvbmx5KSB7CishICAgICAgICAgICAgICAgICAqb3AgPSAn XDAnOworICAgICAgICAgICAgICAgICAgb2xkcXBlbmQgPSBvcDsKKyAgICAgICAgICAgICAgICB9 CisgICAgICAgICAgICAgICAgaWYgKHFzb25seSkgeworISAgICAgICAgICAgICAgICAgKnAgPSAn XDAnOworICAgICAgICAgICAgICAgICAgcXBlbmQgPSBwOworICAgICAgICAgICAgICAgIH0KKyAg ICAgICAgICAgICAgfQorICAgICAgICAgICAgICBlbHNlIHsKKyAgICAgICAgICAgICAgICB2bG5s ZW4gPSBwIC0gbG47CishICAgICAgICAgICAgICAgdmxuID0gbWFsbG9jKCh2bG5sZW4gKyAxKSAq IHNpemVvZiAoY2hhcikpOworICAgICAgICAgICAgICAgIGlmICghdmxuKSB7CishICAgICAgICAg ICAgICAgICBzdHJjcHkoZXJybXNnLG91dG9mbWVtKTsKKyAgICAgICAgICAgICAgICAgIGdvdG8g cmxjbGVhbnVwOworICAgICAgICAgICAgICAgIH0KKyEgICAgICAgICAgICAgICBzdHJuY3B5KHZs bixsbix2bG5sZW4pOworISAgICAgICAgICAgICAgIHZsblt2bG5sZW5dID0gJ1wwJzsKKyAgICAg ICAgICAgICAgICBhZGRpdGVtKGxidWYsICZ2bG4sIGVycm1zZyk7CisgICAgICAgICAgICAgICAg aWYgKCplcnJtc2cpIGdvdG8gcmxjbGVhbnVwOworICAgICAgICAgICAgICAgIGFkZGl0ZW0obHBi dWYsICBpbnZpcyA/ICZpcHJvcCA6ICZ2cHJvcCwgIGVycm1zZyk7CistLS0gMzA5LDMzMSAtLS0t CisgICAgICAgICAgICBpZiAoIShwID09IHFwZW5kICYmIG9wID09IG9sZHFwZW5kKSkgeworICAg ICAgICAgICAgICBpZiAoIWludmlzICYmIChvbGRxc29ubHkgfHwgcXNvbmx5KSkgeworICAgICAg ICAgICAgICAgIGlmIChvbGRxc29ubHkpIHsKKyEgICAgICAgICAgICAgICAgICpvcCA9IEwnXDAn OworICAgICAgICAgICAgICAgICAgb2xkcXBlbmQgPSBvcDsKKyAgICAgICAgICAgICAgICB9Cisg ICAgICAgICAgICAgICAgaWYgKHFzb25seSkgeworISAgICAgICAgICAgICAgICAgKnAgPSBMJ1ww JzsKKyAgICAgICAgICAgICAgICAgIHFwZW5kID0gcDsKKyAgICAgICAgICAgICAgICB9CisgICAg ICAgICAgICAgIH0KKyAgICAgICAgICAgICAgZWxzZSB7CisgICAgICAgICAgICAgICAgdmxubGVu ID0gcCAtIGxuOworISAgICAgICAgICAgICAgIHZsbiA9IG1hbGxvYygodmxubGVuICsgMSkgKiBz aXplb2YgKHdjaGFyX3QpKTsKKyAgICAgICAgICAgICAgICBpZiAoIXZsbikgeworISAgICAgICAg ICAgICAgICAgd2NzY3B5KGVycm1zZyxvdXRvZm1lbSk7CisgICAgICAgICAgICAgICAgICBnb3Rv IHJsY2xlYW51cDsKKyAgICAgICAgICAgICAgICB9CishICAgICAgICAgICAgICAgd2NzbmNweSh2 bG4sIGxuLCB2bG5sZW4pOworISAgICAgICAgICAgICAgIHZsblt2bG5sZW5dID0gTCdcMCc7Cisg ICAgICAgICAgICAgICAgYWRkaXRlbShsYnVmLCAmdmxuLCBlcnJtc2cpOworICAgICAgICAgICAg ICAgIGlmICgqZXJybXNnKSBnb3RvIHJsY2xlYW51cDsKKyAgICAgICAgICAgICAgICBhZGRpdGVt KGxwYnVmLCAgaW52aXMgPyAmaXByb3AgOiAmdnByb3AsICBlcnJtc2cpOworKioqKioqKioqKioq KioqCisqKiogMzg4LDQxNSAqKioqCisgICAgICB9CisgICAgICBlbHNlIHsKKyAgICAgICAgaWYg KGVtcHR5KSB7CishICAgICAgICAgaWYgKGNzbWVtYmVyKGNoLCBwcm90ZWN0Y2hhcnMpKSB7Cish ICAgICAgICAgICB1bmdldGMoYyxzdGRpbik7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAg ICB9CisgICAgICAgICAgZW1wdHkgPSAwOworICAgICAgICB9CishICAgICAgIGlmICghY2gpIGNv bnRpbnVlOworISAgICAgICBpZiAoY2ggPT0gJ1x0JykgeworISAgICAgICAgIGNoID0gJyAnOwor ICAgICAgICAgIGZvciAoaSA9IFRhYiAtIG51bWl0ZW1zKGNidWYpICUgVGFiOyAgaSA+IDA7ICAt LWkpIHsKKyEgICAgICAgICAgIGFkZGl0ZW0oY2J1ZiwgJmNoLCBlcnJtc2cpOworICAgICAgICAg ICAgaWYgKCplcnJtc2cpIGdvdG8gcmxjbGVhbnVwOworICAgICAgICAgIH0KKyAgICAgICAgICBj b250aW51ZTsKKyAgICAgICAgfQorISAgICAgICBpZiAoaXNzcGFjZShjKSkgY2ggPSAnICc7Cish ICAgICAgIGVsc2UgYmxhbmsgPSAwOworISAgICAgICBhZGRpdGVtKGNidWYsICZjaCwgZXJybXNn KTsKKyEgICAgICAgaWYgKCplcnJtc2cpIGdvdG8gcmxjbGVhbnVwOworICAgICAgfQorICAgIH0K KyEgCisgICAgaWYgKCFibGFuaykgeworICAgICAgYWRkaXRlbShjYnVmLCAmbnVsbGNoYXIsIGVy cm1zZyk7CisgICAgICBpZiAoKmVycm1zZykgZ290byBybGNsZWFudXA7CistLS0gMzQ5LDM3OSAt LS0tCisgICAgICB9CisgICAgICBlbHNlIHsKKyAgICAgICAgaWYgKGVtcHR5KSB7CishICAgICAg ICAgaWYgKGNzbWVtYmVyKGMsIHByb3RlY3RjaGFycykpIHsKKyEgICAgICAgICAgIHVuZ2V0d2Mo YyxzdGRpbik7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgICB9CisgICAgICAgICAgZW1w dHkgPSAwOworICAgICAgICB9CishICAgICAgIGlmICghYykgY29udGludWU7CishICAgICAgIGlm IChjID09IEwnXHQnKSB7CishICAgICAgICAgYyA9IEwnICc7CisgICAgICAgICAgZm9yIChpID0g VGFiIC0gbnVtaXRlbXMoY2J1ZikgJSBUYWI7ICBpID4gMDsgIC0taSkgeworISAgICAgICAgICAg YWRkaXRlbShjYnVmLCAmYywgZXJybXNnKTsKKyAgICAgICAgICAgIGlmICgqZXJybXNnKSBnb3Rv IHJsY2xlYW51cDsKKyAgICAgICAgICB9CisgICAgICAgICAgY29udGludWU7CisgICAgICAgIH0K KyEgICAgICAgaWYgKGlzd3NwYWNlKGMpKSAKKyEgICAgICAgICBjID0gTCcgJzsKKyEgICAgICAg ZWxzZSAKKyEgICAgICAgICBibGFuayA9IDA7CishICAgICAgIGFkZGl0ZW0oY2J1ZiwgJmMsIGVy cm1zZyk7CishICAgICAgIGlmICgqZXJybXNnKSAKKyEgICAgICAgICBnb3RvIHJsY2xlYW51cDsK KyAgICAgIH0KKyAgICB9CishICAgCisgICAgaWYgKCFibGFuaykgeworICAgICAgYWRkaXRlbShj YnVmLCAmbnVsbGNoYXIsIGVycm1zZyk7CisgICAgICBpZiAoKmVycm1zZykgZ290byBybGNsZWFu dXA7CisqKioqKioqKioqKioqKioKKyoqKiA0NDksNDU1ICoqKioKKyAgCisgIAorICBzdGF0aWMg dm9pZCBjb21wcmVzdWZsZW4oCishICAgY29uc3QgY2hhciAqIGNvbnN0ICpsaW5lcywgY29uc3Qg Y2hhciAqIGNvbnN0ICplbmRsaW5lLAorICAgIGNvbnN0IGNoYXJzZXQgKmJvZHljaGFycywgaW50 IGJvZHksIGludCBwcmUsIGludCBzdWYsIGludCAqcHByZSwgaW50ICpwc3VmCisgICkKKyAgLyog bGluZXMgaXMgYW4gYXJyYXkgb2Ygc3RyaW5ncywgdXAgdG8gYnV0IG5vdCBpbmNsdWRpbmcgZW5k bGluZS4gICovCistLS0gNDEzLDQxOSAtLS0tCisgIAorICAKKyAgc3RhdGljIHZvaWQgY29tcHJl c3VmbGVuKAorISAgIGNvbnN0IHdjaGFyX3QgKiBjb25zdCAqbGluZXMsIGNvbnN0IHdjaGFyX3Qg KiBjb25zdCAqZW5kbGluZSwKKyAgICBjb25zdCBjaGFyc2V0ICpib2R5Y2hhcnMsIGludCBib2R5 LCBpbnQgcHJlLCBpbnQgc3VmLCBpbnQgKnBwcmUsIGludCAqcHN1ZgorICApCisgIC8qIGxpbmVz IGlzIGFuIGFycmF5IG9mIHN0cmluZ3MsIHVwIHRvIGJ1dCBub3QgaW5jbHVkaW5nIGVuZGxpbmUu ICAqLworKioqKioqKioqKioqKioqCisqKiogNDU3LDQ2NSAqKioqCisgIC8qIGxpbmVzIGluIGxp bmVzLiAgQXNzdW1lcyB0aGF0IHRoZXkgaGF2ZSBhbHJlYWR5IGJlZW4gZGV0ZXJtaW5lZCAqLwor ICAvKiB0byBiZSBhdCBsZWFzdCBwcmUgYW5kIHN1Zi4gIGVuZGxpbmUgbXVzdCBub3QgZXF1YWwg bGluZXMuICAgICAgKi8KKyAgeworISAgIGNvbnN0IGNoYXIgKnN0YXJ0LCAqZW5kLCAqa25vd25z dGFydCwgKiBjb25zdCAqbGluZSwgKnAxLCAqcDIsICprbm93bmVuZCwKKyAgICAgICAgICAgICAg ICprbm93bnN0YXJ0MjsKKyEgCisgICAgc3RhcnQgPSAqbGluZXM7CisgICAgZW5kID0ga25vd25z dGFydCA9IHN0YXJ0ICsgcHJlOworICAgIGlmIChib2R5KQorLS0tIDQyMSw0MjkgLS0tLQorICAv KiBsaW5lcyBpbiBsaW5lcy4gIEFzc3VtZXMgdGhhdCB0aGV5IGhhdmUgYWxyZWFkeSBiZWVuIGRl dGVybWluZWQgKi8KKyAgLyogdG8gYmUgYXQgbGVhc3QgcHJlIGFuZCBzdWYuICBlbmRsaW5lIG11 c3Qgbm90IGVxdWFsIGxpbmVzLiAgICAgICovCisgIHsKKyEgICBjb25zdCB3Y2hhcl90ICpzdGFy dCwgKmVuZCwgKmtub3duc3RhcnQsICogY29uc3QgKmxpbmUsICpwMSwgKnAyLCAqa25vd25lbmQs CisgICAgICAgICAgICAgICAqa25vd25zdGFydDI7CishICAgICAgICAgICAgCisgICAgc3RhcnQg PSAqbGluZXM7CisgICAgZW5kID0ga25vd25zdGFydCA9IHN0YXJ0ICsgcHJlOworICAgIGlmIChi b2R5KQorKioqKioqKioqKioqKioqCisqKiogNDc0LDQ4MCAqKioqCisgICAgfQorICAgIGlmIChi b2R5KQorICAgICAgZm9yIChwMSA9IGVuZDsgIHAxID4ga25vd25zdGFydDsgICkKKyEgICAgICAg aWYgKCotLXAxICE9ICcgJykgeworICAgICAgICAgIGlmIChjc21lbWJlcigqcDEsIGJvZHljaGFy cykpCisgICAgICAgICAgICBlbmQgPSBwMTsKKyAgICAgICAgICBlbHNlCistLS0gNDM4LDQ0NCAt LS0tCisgICAgfQorICAgIGlmIChib2R5KQorICAgICAgZm9yIChwMSA9IGVuZDsgIHAxID4ga25v d25zdGFydDsgICkKKyEgICAgICAgaWYgKCotLXAxICE9IEwnICcpIHsKKyAgICAgICAgICBpZiAo Y3NtZW1iZXIoKnAxLCBib2R5Y2hhcnMpKQorICAgICAgICAgICAgZW5kID0gcDE7CisgICAgICAg ICAgZWxzZQorKioqKioqKioqKioqKioqCisqKiogNTAxLDUxOCAqKioqCisgICAgfQorICAgIGlm IChib2R5KSB7CisgICAgICBmb3IgKHAxID0gc3RhcnQ7CishICAgICAgICAgIHN0YXJ0IDwga25v d25lbmQgJiYgKCpzdGFydCA9PSAnICcgfHwgY3NtZW1iZXIoKnN0YXJ0LCBib2R5Y2hhcnMpKTsK KyAgICAgICAgICAgKytzdGFydCk7CishICAgICBpZiAoc3RhcnQgPiBwMSAmJiBzdGFydFstMV0g PT0gJyAnKSAtLXN0YXJ0OworICAgIH0KKyAgICBlbHNlCishICAgICB3aGlsZSAoZW5kIC0gc3Rh cnQgPj0gMiAmJiAqc3RhcnQgPT0gJyAnICYmIHN0YXJ0WzFdID09ICcgJykgKytzdGFydDsKKyAg ICAqcHN1ZiA9IGVuZCAtIHN0YXJ0OworICB9CisgIAorICAKKyAgc3RhdGljIHZvaWQgZGVsaW1p dCgKKyEgICBjb25zdCBjaGFyICogY29uc3QgKmxpbmVzLCBjb25zdCBjaGFyICogY29uc3QgKmVu ZGxpbmUsCisgICAgY29uc3QgY2hhcnNldCAqYm9keWNoYXJzLCBpbnQgcmVwZWF0LCBpbnQgYm9k eSwgaW50IGRpdiwKKyAgICBpbnQgcHJlLCBpbnQgc3VmLCBsaW5lcHJvcCAqcHJvcHMKKyAgKQor LS0tIDQ2NSw0ODIgLS0tLQorICAgIH0KKyAgICBpZiAoYm9keSkgeworICAgICAgZm9yIChwMSA9 IHN0YXJ0OworISAgICAgICAgICBzdGFydCA8IGtub3duZW5kICYmICgqc3RhcnQgPT0gTCcgJyB8 fCBjc21lbWJlcigqc3RhcnQsIGJvZHljaGFycykpOworICAgICAgICAgICArK3N0YXJ0KTsKKyEg ICAgIGlmIChzdGFydCA+IHAxICYmIHN0YXJ0Wy0xXSA9PSBMJyAnKSAtLXN0YXJ0OworICAgIH0K KyAgICBlbHNlCishICAgICB3aGlsZSAoZW5kIC0gc3RhcnQgPj0gMiAmJiAqc3RhcnQgPT0gTCcg JyAmJiBzdGFydFsxXSA9PSBMJyAnKSArK3N0YXJ0OworICAgICpwc3VmID0gZW5kIC0gc3RhcnQ7 CisgIH0KKyAgCisgIAorICBzdGF0aWMgdm9pZCBkZWxpbWl0KAorISAgIGNvbnN0IHdjaGFyX3Qg KiBjb25zdCAqbGluZXMsIGNvbnN0IHdjaGFyX3QgKiBjb25zdCAqZW5kbGluZSwKKyAgICBjb25z dCBjaGFyc2V0ICpib2R5Y2hhcnMsIGludCByZXBlYXQsIGludCBib2R5LCBpbnQgZGl2LAorICAg IGludCBwcmUsIGludCBzdWYsIGxpbmVwcm9wICpwcm9wcworICApCisqKioqKioqKioqKioqKioK KyoqKiA1MjMsNTMwICoqKioKKyAgLyogYW5kIGNvbXN1ZmxlbiBvZiB0aGUgbGluZXMgaW4gbGlu ZXMgaGF2ZSBhbHJlYWR5IGJlZW4gICAgICovCisgIC8qIGRldGVybWluZWQgdG8gYmUgYXQgbGVh c3QgcHJlIGFuZCBzdWYsIHJlc3BlY3RpdmVseS4gICAgICAqLworICB7CishICAgY29uc3QgY2hh ciAqIGNvbnN0ICpsaW5lLCAqZW5kLCAqcCwgKiBjb25zdCAqbmV4dGxpbmU7CishICAgY2hhciBy YzsKKyAgICBsaW5lcHJvcCAqcHJvcCwgKm5leHRwcm9wOworICAgIGludCBhbnlib2RpbGVzcyA9 IDAsIHN0YXR1czsKKyAgCistLS0gNDg3LDQ5NCAtLS0tCisgIC8qIGFuZCBjb21zdWZsZW4gb2Yg dGhlIGxpbmVzIGluIGxpbmVzIGhhdmUgYWxyZWFkeSBiZWVuICAgICAqLworICAvKiBkZXRlcm1p bmVkIHRvIGJlIGF0IGxlYXN0IHByZSBhbmQgc3VmLCByZXNwZWN0aXZlbHkuICAgICAgKi8KKyAg eworISAgIGNvbnN0IHdjaGFyX3QgKiBjb25zdCAqbGluZSwgKmVuZCwgKnAsICogY29uc3QgKm5l eHRsaW5lOworISAgIHdjaGFyX3QgcmM7CisgICAgbGluZXByb3AgKnByb3AsICpuZXh0cHJvcDsK KyAgICBpbnQgYW55Ym9kaWxlc3MgPSAwLCBzdGF0dXM7CisgIAorKioqKioqKioqKioqKioqCisq KiogNTQ1LDU1MiAqKioqCisgICAgICBmb3IgKGVuZCA9ICpsaW5lOyAgKmVuZDsgICsrZW5kKTsK KyAgICAgIGVuZCAtPSBzdWY7CisgICAgICBwID0gKmxpbmUgKyBwcmU7CishICAgICByYyA9ICBw IDwgZW5kICA/ICAqcCAgOiAgJyAnOworISAgICAgaWYgKHJjICE9ICcgJyAmJiAoIXJlcGVhdCB8 fCBlbmQgLSBwIDwgcmVwZWF0KSkKKyAgICAgICAgcHJvcC0+ZmxhZ3MgJj0gfkxfQk9ESUxFU1M7 CisgICAgICBlbHNlCisgICAgICAgIHdoaWxlIChwIDwgZW5kKSB7CistLS0gNTA5LDUxNiAtLS0t CisgICAgICBmb3IgKGVuZCA9ICpsaW5lOyAgKmVuZDsgICsrZW5kKTsKKyAgICAgIGVuZCAtPSBz dWY7CisgICAgICBwID0gKmxpbmUgKyBwcmU7CishICAgICByYyA9ICBwIDwgZW5kICA/ICAqcCAg OiAgTCcgJzsKKyEgICAgIGlmIChyYyAhPSBMJyAnICYmICghcmVwZWF0IHx8IGVuZCAtIHAgPCBy ZXBlYXQpKQorICAgICAgICBwcm9wLT5mbGFncyAmPSB+TF9CT0RJTEVTUzsKKyAgICAgIGVsc2UK KyAgICAgICAgd2hpbGUgKHAgPCBlbmQpIHsKKyoqKioqKioqKioqKioqKgorKioqIDU4OSw1OTcg KioqKgorICAgIH0KKyAgCisgICAgbGluZSA9IGxpbmVzLCBwcm9wID0gcHJvcHM7CishICAgc3Rh dHVzID0gKCgqbGluZXMpW3ByZV0gPT0gJyAnKTsKKyAgICBkbyB7CishICAgICBpZiAoKCgqbGlu ZSlbcHJlXSA9PSAnICcpID09IHN0YXR1cykKKyAgICAgICAgcHJvcC0+ZmxhZ3MgfD0gTF9GSVJT VDsKKyAgICAgICsrbGluZSwgKytwcm9wOworICAgIH0gd2hpbGUgKGxpbmUgPCBlbmRsaW5lKTsK Ky0tLSA1NTMsNTYxIC0tLS0KKyAgICB9CisgIAorICAgIGxpbmUgPSBsaW5lcywgcHJvcCA9IHBy b3BzOworISAgIHN0YXR1cyA9ICgoKmxpbmVzKVtwcmVdID09IEwnICcpOworICAgIGRvIHsKKyEg ICAgIGlmICgoKCpsaW5lKVtwcmVdID09IEwnICcpID09IHN0YXR1cykKKyAgICAgICAgcHJvcC0+ ZmxhZ3MgfD0gTF9GSVJTVDsKKyAgICAgICsrbGluZSwgKytwcm9wOworICAgIH0gd2hpbGUgKGxp bmUgPCBlbmRsaW5lKTsKKyoqKioqKioqKioqKioqKgorKioqIDU5OSw2MTIgKioqKgorICAKKyAg CisgIHN0YXRpYyB2b2lkIG1hcmtzdXBlcmYoCishICAgY29uc3QgY2hhciAqIGNvbnN0ICogbGlu ZXMsIGNvbnN0IGNoYXIgKiBjb25zdCAqIGVuZGxpbmUsIGxpbmVwcm9wICpwcm9wcworICApCisg IC8qIGxpbmVzIHBvaW50cyB0byB0aGUgZmlyc3QgbGluZSBvZiBhIHNlZ21lbnQsIGFuZCBlbmRs aW5lIHRvIG9uZSAgKi8KKyAgLyogbGluZSBiZXlvbmQgdGhlIGxhc3QgbGluZSBpbiB0aGUgc2Vn bWVudC4gIFNldHMgTF9TVVBFUkYgYml0cyBpbiAqLworICAvKiB0aGUgZmxhZ3MgZmllbGRzIG9m IHRoZSBwcm9wcyBhcnJheSB3aGVuZXZlciB0aGUgY29ycmVzcG9uZGluZyAgICovCisgIC8qIGxp bmUgaXMgc3VwZXJmbHVvdXMuICBMX0JPRElMRVNTIGJpdHMgbXVzdCBhbHJlYWR5IGJlIHNldC4g ICAgICAgKi8KKyAgeworISAgIGNvbnN0IGNoYXIgKiBjb25zdCAqbGluZSwgKnA7CisgICAgbGlu ZXByb3AgKnByb3AsICptcHJvcCwgZHVtbXk7CisgICAgaW50IGluYm9keSwgbnVtLCBtbnVtOwor ICAKKy0tLSA1NjMsNTc2IC0tLS0KKyAgCisgIAorICBzdGF0aWMgdm9pZCBtYXJrc3VwZXJmKAor ISAgIGNvbnN0IHdjaGFyX3QgKiBjb25zdCAqIGxpbmVzLCBjb25zdCB3Y2hhcl90ICogY29uc3Qg KiBlbmRsaW5lLCBsaW5lcHJvcCAqcHJvcHMKKyAgKQorICAvKiBsaW5lcyBwb2ludHMgdG8gdGhl IGZpcnN0IGxpbmUgb2YgYSBzZWdtZW50LCBhbmQgZW5kbGluZSB0byBvbmUgICovCisgIC8qIGxp bmUgYmV5b25kIHRoZSBsYXN0IGxpbmUgaW4gdGhlIHNlZ21lbnQuICBTZXRzIExfU1VQRVJGIGJp dHMgaW4gKi8KKyAgLyogdGhlIGZsYWdzIGZpZWxkcyBvZiB0aGUgcHJvcHMgYXJyYXkgd2hlbmV2 ZXIgdGhlIGNvcnJlc3BvbmRpbmcgICAqLworICAvKiBsaW5lIGlzIHN1cGVyZmx1b3VzLiAgTF9C T0RJTEVTUyBiaXRzIG11c3QgYWxyZWFkeSBiZSBzZXQuICAgICAgICovCisgIHsKKyEgICBjb25z dCB3Y2hhcl90ICogY29uc3QgKmxpbmUsICpwOworICAgIGxpbmVwcm9wICpwcm9wLCAqbXByb3As IGR1bW15OworICAgIGludCBpbmJvZHksIG51bSwgbW51bTsKKyAgCisqKioqKioqKioqKioqKioK KyoqKiA2MTksNjI1ICoqKioKKyAgICBmb3IgKGxpbmUgPSBsaW5lcywgcHJvcCA9IHByb3BzOyAg bGluZSA8IGVuZGxpbmU7ICArK2xpbmUsICsrcHJvcCkKKyAgICAgIGlmIChpc3ZhY2FudChwcm9w KSkgeworICAgICAgICBmb3IgKG51bSA9IDAsIHAgPSAqbGluZTsgICpwOyAgKytwKQorISAgICAg ICAgIGlmICgqcCAhPSAnICcpICsrbnVtOworICAgICAgICBpZiAoaW5ib2R5IHx8IG51bSA8IG1u dW0pCisgICAgICAgICAgbW51bSA9IG51bSwgbXByb3AgPSBwcm9wOworICAgICAgICBpbmJvZHkg PSAwOworLS0tIDU4Myw1ODkgLS0tLQorICAgIGZvciAobGluZSA9IGxpbmVzLCBwcm9wID0gcHJv cHM7ICBsaW5lIDwgZW5kbGluZTsgICsrbGluZSwgKytwcm9wKQorICAgICAgaWYgKGlzdmFjYW50 KHByb3ApKSB7CisgICAgICAgIGZvciAobnVtID0gMCwgcCA9ICpsaW5lOyAgKnA7ICArK3ApCish ICAgICAgICAgaWYgKCpwICE9IEwnICcpICsrbnVtOworICAgICAgICBpZiAoaW5ib2R5IHx8IG51 bSA8IG1udW0pCisgICAgICAgICAgbW51bSA9IG51bSwgbXByb3AgPSBwcm9wOworICAgICAgICBp bmJvZHkgPSAwOworKioqKioqKioqKioqKioqCisqKiogNjMxLDYzNyAqKioqCisgIAorICAKKyAg c3RhdGljIHZvaWQgc2V0YWZmaXhlcygKKyEgICBjb25zdCBjaGFyICogY29uc3QgKmlubGluZXMs IGNvbnN0IGNoYXIgKiBjb25zdCAqZW5kbGluZSwKKyAgICBjb25zdCBsaW5lcHJvcCAqcHJvcHMs IGNvbnN0IGNoYXJzZXQgKmJvZHljaGFycywKKyAgICBjb25zdCBjaGFyc2V0ICpxdW90ZWNoYXJz LCBpbnQgaGFuZywgaW50IGJvZHksIGludCBxdW90ZSwKKyAgICBpbnQgKnBhZnAsIGludCAqcGZz LCBpbnQgKnBwcmVmaXgsIGludCAqcHN1ZmZpeAorLS0tIDU5NSw2MDEgLS0tLQorICAKKyAgCisg IHN0YXRpYyB2b2lkIHNldGFmZml4ZXMoCishICAgY29uc3Qgd2NoYXJfdCAqIGNvbnN0ICppbmxp bmVzLCBjb25zdCB3Y2hhcl90ICogY29uc3QgKmVuZGxpbmUsCisgICAgY29uc3QgbGluZXByb3Ag KnByb3BzLCBjb25zdCBjaGFyc2V0ICpib2R5Y2hhcnMsCisgICAgY29uc3QgY2hhcnNldCAqcXVv dGVjaGFycywgaW50IGhhbmcsIGludCBib2R5LCBpbnQgcXVvdGUsCisgICAgaW50ICpwYWZwLCBp bnQgKnBmcywgaW50ICpwcHJlZml4LCBpbnQgKnBzdWZmaXgKKyoqKioqKioqKioqKioqKgorKioq IDY0NCw2NTAgKioqKgorICAvKiBkZWZhdWx0IHZhbHVlIGFzIHNwZWNpZmllZCBpbiAicGFyLmRv YyIuICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgIHsKKyAgICBpbnQgbnVtaW4sIHBy ZSwgc3VmOworISAgIGNvbnN0IGNoYXIgKnA7CisgIAorICAgIG51bWluID0gZW5kbGluZSAtIGlu bGluZXM7CisgIAorLS0tIDYwOCw2MTQgLS0tLQorICAvKiBkZWZhdWx0IHZhbHVlIGFzIHNwZWNp ZmllZCBpbiAicGFyLmRvYyIuICAgICAgICAgICAgICAgICAgICAgICAgICAgICovCisgIHsKKyAg ICBpbnQgbnVtaW4sIHByZSwgc3VmOworISAgIGNvbnN0IHdjaGFyX3QgKnA7CisgIAorICAgIG51 bWluID0gZW5kbGluZSAtIGlubGluZXM7CisgIAorKioqKioqKioqKioqKioqCisqKiogNjY2LDY3 NiAqKioqCisgIH0KKyAgCisgIAorISBzdGF0aWMgdm9pZCBmcmVlbGluZXMoY2hhciAqKmxpbmVz KQorICAvKiBGcmVlcyB0aGUgZWxlbWVudHMgb2YgbGluZXMsIGFuZCBsaW5lcyBpdHNlbGYuICov CisgIC8qIGxpbmVzIGlzIGEgTlVMTC10ZXJtaW5hdGVkIGFycmF5IG9mIHN0cmluZ3MuICAgKi8K KyAgeworISAgIGNoYXIgKipsaW5lOworICAKKyAgICBmb3IgKGxpbmUgPSBsaW5lczsgICpsaW5l OyAgKytsaW5lKQorICAgICAgZnJlZSgqbGluZSk7CistLS0gNjMwLDY0MCAtLS0tCisgIH0KKyAg CisgIAorISBzdGF0aWMgdm9pZCBmcmVlbGluZXMod2NoYXJfdCAqKmxpbmVzKQorICAvKiBGcmVl cyB0aGUgZWxlbWVudHMgb2YgbGluZXMsIGFuZCBsaW5lcyBpdHNlbGYuICovCisgIC8qIGxpbmVz IGlzIGEgTlVMTC10ZXJtaW5hdGVkIGFycmF5IG9mIHN0cmluZ3MuICAgKi8KKyAgeworISAgIHdj aGFyX3QgKipsaW5lOworICAKKyAgICBmb3IgKGxpbmUgPSBsaW5lczsgICpsaW5lOyAgKytsaW5l KQorICAgICAgZnJlZSgqbGluZSk7CisqKioqKioqKioqKioqKioKKyoqKiA2NzgsNzQ1ICoqKioK KyAgICBmcmVlKGxpbmVzKTsKKyAgfQorICAKKy0gCisgIGludCBtYWluKGludCBhcmdjLCBjb25z dCBjaGFyICogY29uc3QgKmFyZ3YpCisgIHsKKyAgICBpbnQgaGVscCA9IDAsIHZlcnNpb24gPSAw LCBoYW5nID0gMCwgcHJlZml4ID0gLTEsIHJlcGVhdCA9IDAsIHN1ZmZpeCA9IC0xLAorICAgICAg ICBUYWIgPSAxLCB3aWR0aCA9IDcyLCBib2R5ID0gMCwgY2FwID0gMCwgZGl2ID0gMCwgRXJyID0g MCwgZXhwZWwgPSAwLAorICAgICAgICBmaXQgPSAwLCBndWVzcyA9IDAsIGludmlzID0gMCwganVz dCA9IDAsIGxhc3QgPSAwLCBxdW90ZSA9IDAsIFJlcG9ydCA9IDAsCisgICAgICAgIHRvdWNoID0g LTE7CishICAgaW50IHByZWZpeGJhaywgc3VmZml4YmFrLCBjLCBzYXdub25ibGFuaywgb3dlYmxh bmssIG4sIGksIGFmcCwgZnM7CisgICAgY2hhcnNldCAqYm9keWNoYXJzID0gTlVMTCwgKnByb3Rl Y3RjaGFycyA9IE5VTEwsICpxdW90ZWNoYXJzID0gTlVMTDsKKyEgICBjaGFyICpwYXJpbml0ID0g TlVMTCwgKmFyZywgKippbmxpbmVzID0gTlVMTCwgKiplbmRsaW5lLCAqKmZpcnN0bGluZSwgKmVu ZCwKKyEgICAgICAgICoqbmV4dGxpbmUsICoqb3V0bGluZXMgPSBOVUxMLCAqKmxpbmUsIGNoOwor ISAgIGNvbnN0IGNoYXIgKmVudiwgKiBjb25zdCB3aGl0ZWNoYXJzID0gIiBcZlxuXHJcdFx2IjsK KyAgICBlcnJtc2dfdCBlcnJtc2cgPSB7ICdcMCcgfTsKKyAgICBsaW5lcHJvcCAqcHJvcHMgPSBO VUxMLCAqZmlyc3Rwcm9wLCAqbmV4dHByb3A7CisgICAgRklMRSAqZXJyb3V0OworICAKKyAgLyog U2V0IHRoZSBjdXJyZW50IGxvY2FsZSBmcm9tIHRoZSBlbnZpcm9ubWVudDogKi8KKyAgCisgICAg c2V0bG9jYWxlKExDX0FMTCwiIik7CisgIAorICAvKiBQcm9jZXNzIGVudmlyb25tZW50IHZhcmlh YmxlczogKi8KKyAgCisgICAgZW52ID0gZ2V0ZW52KCJQQVJCT0RZIik7CisgICAgaWYgKCFlbnYp IGVudiA9ICIiOworISAgIGJvZHljaGFycyA9IHBhcnNlY2hhcnNldChlbnYsZXJybXNnKTsKKyAg ICBpZiAoKmVycm1zZykgeworICAgICAgaGVscCA9IDE7CisgICAgICBnb3RvIHBhcmNsZWFudXA7 CisgICAgfQorICAKKyAgICBlbnYgPSBnZXRlbnYoIlBBUlBST1RFQ1QiKTsKKyAgICBpZiAoIWVu dikgZW52ID0gIiI7CishICAgcHJvdGVjdGNoYXJzID0gcGFyc2VjaGFyc2V0KGVudixlcnJtc2cp OworICAgIGlmICgqZXJybXNnKSB7CisgICAgICBoZWxwID0gMTsKKyAgICAgIGdvdG8gcGFyY2xl YW51cDsKKyAgICB9CisgIAorICAgIGVudiA9IGdldGVudigiUEFSUVVPVEUiKTsKKyAgICBpZiAo IWVudikgZW52ID0gIj4gIjsKKyEgICBxdW90ZWNoYXJzID0gcGFyc2VjaGFyc2V0KGVudixlcnJt c2cpOworICAgIGlmICgqZXJybXNnKSB7CisgICAgICBoZWxwID0gMTsKKyAgICAgIGdvdG8gcGFy Y2xlYW51cDsKKyAgICB9CisgIAorICAgIGVudiA9IGdldGVudigiUEFSSU5JVCIpOworICAgIGlm IChlbnYpIHsKKyEgICAgIHBhcmluaXQgPSBtYWxsb2MoKHN0cmxlbihlbnYpICsgMSkgKiBzaXpl b2YgKGNoYXIpKTsKKyAgICAgIGlmICghcGFyaW5pdCkgeworISAgICAgICBzdHJjcHkoZXJybXNn LG91dG9mbWVtKTsKKyAgICAgICAgZ290byBwYXJjbGVhbnVwOworICAgICAgfQorISAgICAgc3Ry Y3B5KHBhcmluaXQsZW52KTsKKyEgICAgIGFyZyA9IHN0cnRvayhwYXJpbml0LHdoaXRlY2hhcnMp OworICAgICAgd2hpbGUgKGFyZykgeworICAgICAgICBwYXJzZWFyZyhhcmcsICZoZWxwLCAmdmVy c2lvbiwgYm9keWNoYXJzLCBwcm90ZWN0Y2hhcnMsCisgICAgICAgICAgICAgICAgIHF1b3RlY2hh cnMsICZoYW5nLCAmcHJlZml4LCAmcmVwZWF0LCAmc3VmZml4LCAmVGFiLAorICAgICAgICAgICAg ICAgICAmd2lkdGgsICZib2R5LCAmY2FwLCAmZGl2LCAmRXJyLCAmZXhwZWwsICZmaXQsICZndWVz cywKKyAgICAgICAgICAgICAgICAgJmludmlzLCAmanVzdCwgJmxhc3QsICZxdW90ZSwgJlJlcG9y dCwgJnRvdWNoLCBlcnJtc2cgKTsKKyAgICAgICAgaWYgKCplcnJtc2cgfHwgaGVscCB8fCB2ZXJz aW9uKSBnb3RvIHBhcmNsZWFudXA7CishICAgICAgIGFyZyA9IHN0cnRvayhOVUxMLHdoaXRlY2hh cnMpOworICAgICAgfQorICAgICAgZnJlZShwYXJpbml0KTsKKyAgICAgIHBhcmluaXQgPSBOVUxM OworLS0tIDY0Miw3NTcgLS0tLQorICAgIGZyZWUobGluZXMpOworICB9CisgIAorICBpbnQgbWFp bihpbnQgYXJnYywgY29uc3QgY2hhciAqIGNvbnN0ICphcmd2KQorICB7CisgICAgaW50IGhlbHAg PSAwLCB2ZXJzaW9uID0gMCwgaGFuZyA9IDAsIHByZWZpeCA9IC0xLCByZXBlYXQgPSAwLCBzdWZm aXggPSAtMSwKKyAgICAgICAgVGFiID0gMSwgd2lkdGggPSA3MiwgYm9keSA9IDAsIGNhcCA9IDAs IGRpdiA9IDAsIEVyciA9IDAsIGV4cGVsID0gMCwKKyAgICAgICAgZml0ID0gMCwgZ3Vlc3MgPSAw LCBpbnZpcyA9IDAsIGp1c3QgPSAwLCBsYXN0ID0gMCwgcXVvdGUgPSAwLCBSZXBvcnQgPSAwLAor ICAgICAgICB0b3VjaCA9IC0xOworISAgIGludCBwcmVmaXhiYWssIHN1ZmZpeGJhaywgc2F3bm9u YmxhbmssIG93ZWJsYW5rLCBuLCBpLCBhZnAsIGZzOworICAgIGNoYXJzZXQgKmJvZHljaGFycyA9 IE5VTEwsICpwcm90ZWN0Y2hhcnMgPSBOVUxMLCAqcXVvdGVjaGFycyA9IE5VTEw7CishICAgd2lu dF90IGM7CishICAgd2NoYXJfdCAqc3RhdGU7CishICAgd2NoYXJfdCAqcGFyaW5pdCA9IE5VTEws ICphcmcsICoqaW5saW5lcyA9IE5VTEwsICoqZW5kbGluZSwgKipmaXJzdGxpbmUsICplbmQsCish ICAgICAqKm5leHRsaW5lLCAqKm91dGxpbmVzID0gTlVMTCwgKipsaW5lOworISAgIGNvbnN0IGNo YXIgKmVudjsKKyEgICB3Y2hhcl90ICp3ZW52ID0gTlVMTDsKKyEgICBjb25zdCB3Y2hhcl90ICog Y29uc3Qgd2hpdGVjaGFycyA9IEwiIFxmXG5cclx0XHYiOworICAgIGVycm1zZ190IGVycm1zZyA9 IHsgJ1wwJyB9OworICAgIGxpbmVwcm9wICpwcm9wcyA9IE5VTEwsICpmaXJzdHByb3AsICpuZXh0 cHJvcDsKKyAgICBGSUxFICplcnJvdXQ7CisrICAgY2hhciAqbGFuZ2luZm87CisgIAorICAvKiBT ZXQgdGhlIGN1cnJlbnQgbG9jYWxlIGZyb20gdGhlIGVudmlyb25tZW50OiAqLworICAKKyAgICBz ZXRsb2NhbGUoTENfQUxMLCIiKTsKKysgICBsYW5naW5mbyA9IG5sX2xhbmdpbmZvKENPREVTRVQp OworKyAgIGlmICghc3RyY21wKGxhbmdpbmZvLCAiQU5TSV9YMy40LTE5NjgiKSkgeworKyAgICAg Ly8gV2Ugd291bGQgbGlrZSB0byBmYWxsYmFjayBpbiBhbiA4IGJpdHMgZW5jb2RpbmcsIGJ1dCBp dCBpcyBub3QgZWFzaWx5IHBvc3NpYmxlLgorKyAgICAgLy9zZXRsb2NhbGUoTENfQ1RZUEUsICJD Iik7CisrICAgICAvL2xhbmdpbmZvID0gbmxfbGFuZ2luZm8oQ09ERVNFVCk7CisrICAgICBmd3By aW50ZiggRXJyID8gc3RkZXJyIDogc3Rkb3V0LCAKKysgICAgICAgICBMIldhcm5pbmc6IExvY2Fs ZSBzZWVtcyBub3QgY29uZmlndXJlZFxuIik7CisrICAgfQorICAKKyAgLyogUHJvY2VzcyBlbnZp cm9ubWVudCB2YXJpYWJsZXM6ICovCisgIAorICAgIGVudiA9IGdldGVudigiUEFSQk9EWSIpOwor ICAgIGlmICghZW52KSBlbnYgPSAiIjsKKyEgICB3ZW52ID0gbWFsbG9jKChzdHJsZW4oZW52KSAr IDEpICogc2l6ZW9mICh3Y2hhcl90KSk7CishICAgaWYgKCF3ZW52KSB7CishICAgICB3Y3NjcHko ZXJybXNnLG91dG9mbWVtKTsKKyEgICAgIGdvdG8gcGFyY2xlYW51cDsKKyEgICB9CishICAgaWYg KDAgPiBtYnN0b3djcyh3ZW52LGVudiwgc3RybGVuKGVudikgKyAxKSkgeworISAgICAgd2NzY3B5 KGVycm1zZywgTCJJbnZhbGlkIG11bHRpYnl0ZSBzZXF1ZW5jZSBpbiBQQVJCT0RZXG4iKTsKKyEg ICAgIGdvdG8gcGFyY2xlYW51cDsKKyEgICB9CishICAgYm9keWNoYXJzID0gcGFyc2VjaGFyc2V0 KHdlbnYsZXJybXNnKTsKKyAgICBpZiAoKmVycm1zZykgeworICAgICAgaGVscCA9IDE7CisgICAg ICBnb3RvIHBhcmNsZWFudXA7CisgICAgfQorKyAgIGZyZWUod2Vudik7CisrICAgd2VudiA9IE5V TEw7CisgIAorICAgIGVudiA9IGdldGVudigiUEFSUFJPVEVDVCIpOworICAgIGlmICghZW52KSBl bnYgPSAiIjsKKyEgICB3ZW52ID0gbWFsbG9jKChzdHJsZW4oZW52KSArIDEpICogc2l6ZW9mICh3 Y2hhcl90KSk7CishICAgaWYgKCF3ZW52KSB7CishICAgICB3Y3NjcHkoZXJybXNnLG91dG9mbWVt KTsKKyEgICAgIGdvdG8gcGFyY2xlYW51cDsKKyEgICB9CishICAgaWYgKDAgPiBtYnN0b3djcyh3 ZW52LGVudiwgc3RybGVuKGVudikgKyAxKSkgeworISAgICAgd2NzY3B5KGVycm1zZywgTCJJbnZh bGlkIG11bHRpYnl0ZSBzZXF1ZW5jZSBpbiBQQVJQUk9URUNUXG4iKTsKKyEgICAgIGdvdG8gcGFy Y2xlYW51cDsKKyEgICB9CishICAgcHJvdGVjdGNoYXJzID0gcGFyc2VjaGFyc2V0KHdlbnYsZXJy bXNnKTsKKyAgICBpZiAoKmVycm1zZykgeworICAgICAgaGVscCA9IDE7CisgICAgICBnb3RvIHBh cmNsZWFudXA7CisgICAgfQorKyAgIGZyZWUod2Vudik7CisrICAgd2VudiA9IE5VTEw7CisgIAor ICAgIGVudiA9IGdldGVudigiUEFSUVVPVEUiKTsKKyAgICBpZiAoIWVudikgZW52ID0gIj4gIjsK KyEgICB3ZW52ID0gbWFsbG9jKChzdHJsZW4oZW52KSArIDEpICogc2l6ZW9mICh3Y2hhcl90KSk7 CishICAgaWYgKCF3ZW52KSB7CishICAgICB3Y3NjcHkoZXJybXNnLG91dG9mbWVtKTsKKyEgICAg IGdvdG8gcGFyY2xlYW51cDsKKyEgICB9CishICAgaWYgKDAgPiBtYnN0b3djcyh3ZW52LGVudiwg c3RybGVuKGVudikgKyAxKSkgeworISAgICAgd2NzY3B5KGVycm1zZywgTCJJbnZhbGlkIG11bHRp Ynl0ZSBzZXF1ZW5jZSBpbiBQQVJRVU9URVxuIik7CishICAgICBnb3RvIHBhcmNsZWFudXA7Cish ICAgfQorISAgIHF1b3RlY2hhcnMgPSBwYXJzZWNoYXJzZXQod2VudixlcnJtc2cpOworICAgIGlm ICgqZXJybXNnKSB7CisgICAgICBoZWxwID0gMTsKKyAgICAgIGdvdG8gcGFyY2xlYW51cDsKKyAg ICB9CisrICAgZnJlZSh3ZW52KTsKKysgICB3ZW52ID0gTlVMTDsKKyAgCisgICAgZW52ID0gZ2V0 ZW52KCJQQVJJTklUIik7CisgICAgaWYgKGVudikgeworISAgICAgcGFyaW5pdCA9IG1hbGxvYygo c3RybGVuKGVudikgKyAxKSAqIHNpemVvZiAod2NoYXJfdCkpOworICAgICAgaWYgKCFwYXJpbml0 KSB7CishICAgICAgIHdjc2NweShlcnJtc2csb3V0b2ZtZW0pOworICAgICAgICBnb3RvIHBhcmNs ZWFudXA7CisgICAgICB9CishICAgICBpZiAoMCA+IG1ic3Rvd2NzKHBhcmluaXQsZW52LCBzdHJs ZW4oZW52KSArIDEpKSB7CishICAgICAgIHdjc2NweShlcnJtc2csIEwiSW52YWxpZCBtdWx0aWJ5 dGUgc2VxdWVuY2UgaW4gUEFSSU5JVFxuIik7CishICAgICAgIGdvdG8gcGFyY2xlYW51cDsKKyEg ICAgIH0gICAgCishICAgICBhcmcgPSB3Y3N0b2socGFyaW5pdCwgd2hpdGVjaGFycywgJnN0YXRl KTsKKyAgICAgIHdoaWxlIChhcmcpIHsKKyAgICAgICAgcGFyc2VhcmcoYXJnLCAmaGVscCwgJnZl cnNpb24sIGJvZHljaGFycywgcHJvdGVjdGNoYXJzLAorICAgICAgICAgICAgICAgICBxdW90ZWNo YXJzLCAmaGFuZywgJnByZWZpeCwgJnJlcGVhdCwgJnN1ZmZpeCwgJlRhYiwKKyAgICAgICAgICAg ICAgICAgJndpZHRoLCAmYm9keSwgJmNhcCwgJmRpdiwgJkVyciwgJmV4cGVsLCAmZml0LCAmZ3Vl c3MsCisgICAgICAgICAgICAgICAgICZpbnZpcywgJmp1c3QsICZsYXN0LCAmcXVvdGUsICZSZXBv cnQsICZ0b3VjaCwgZXJybXNnICk7CisgICAgICAgIGlmICgqZXJybXNnIHx8IGhlbHAgfHwgdmVy c2lvbikgZ290byBwYXJjbGVhbnVwOworISAgICAgICBhcmcgPSB3Y3N0b2soTlVMTCwgd2hpdGVj aGFycywgJnN0YXRlKTsKKyAgICAgIH0KKyAgICAgIGZyZWUocGFyaW5pdCk7CisgICAgICBwYXJp bml0ID0gTlVMTDsKKyoqKioqKioqKioqKioqKgorKioqIDc0OCw4MDQgKioqKgorICAvKiBQcm9j ZXNzIGNvbW1hbmQgbGluZSBhcmd1bWVudHM6ICovCisgIAorICAgIHdoaWxlICgqKythcmd2KSB7 CishICAgICBwYXJzZWFyZygqYXJndiwgJmhlbHAsICZ2ZXJzaW9uLCBib2R5Y2hhcnMsIHByb3Rl Y3RjaGFycywKKyAgICAgICAgICAgICAgIHF1b3RlY2hhcnMsICZoYW5nLCAmcHJlZml4LCAmcmVw ZWF0LCAmc3VmZml4LCAmVGFiLAorICAgICAgICAgICAgICAgJndpZHRoLCAmYm9keSwgJmNhcCwg JmRpdiwgJkVyciwgJmV4cGVsLCAmZml0LCAmZ3Vlc3MsCisgICAgICAgICAgICAgICAmaW52aXMs ICZqdXN0LCAmbGFzdCwgJnF1b3RlLCAmUmVwb3J0LCAmdG91Y2gsIGVycm1zZyApOworICAgICAg aWYgKCplcnJtc2cgfHwgaGVscCB8fCB2ZXJzaW9uKSBnb3RvIHBhcmNsZWFudXA7CisgICAgfQor ICAKKyAgICBpZiAoVGFiID09IDApIHsKKyEgICAgIHN0cmNweShlcnJtc2csICI8VGFiPiBtdXN0 IG5vdCBiZSAwLlxuIik7CisgICAgICBnb3RvIHBhcmNsZWFudXA7CisgICAgfQorICAKKyAgICBp ZiAodG91Y2ggPCAwKSB0b3VjaCA9IGZpdCB8fCBsYXN0OworICAgIHByZWZpeGJhayA9IHByZWZp eDsKKyAgICBzdWZmaXhiYWsgPSBzdWZmaXg7CishIAorISAvKiBNYWluIGxvb3A6ICovCishIAor ICAgIGZvciAoc2F3bm9uYmxhbmsgPSBvd2VibGFuayA9IDA7ICA7ICApIHsKKyAgICAgIGZvciAo OzspIHsKKyEgICAgICAgYyA9IGdldGNoYXIoKTsKKyEgICAgICAgaWYgKGMgPT0gRU9GKSBicmVh azsKKyEgICAgICAgKih1bnNpZ25lZCBjaGFyICopJmNoID0gYzsKKyEgICAgICAgaWYgKGV4cGVs ICYmIGNoID09ICdcbicpIHsKKyAgICAgICAgICBvd2VibGFuayA9IHNhd25vbmJsYW5rOworICAg ICAgICAgIGNvbnRpbnVlOworICAgICAgICB9CishICAgICAgIGlmIChjc21lbWJlcihjaCwgcHJv dGVjdGNoYXJzKSkgeworICAgICAgICAgIHNhd25vbmJsYW5rID0gMTsKKyAgICAgICAgICBpZiAo b3dlYmxhbmspIHsKKyEgICAgICAgICAgIHB1dHMoIiIpOworICAgICAgICAgICAgb3dlYmxhbmsg PSAwOworICAgICAgICAgIH0KKyEgICAgICAgICB3aGlsZSAoY2ggIT0gJ1xuJykgeworISAgICAg ICAgICAgcHV0Y2hhcihjKTsKKyEgICAgICAgICAgIGMgPSBnZXRjaGFyKCk7CishICAgICAgICAg ICBpZiAoYyA9PSBFT0YpIGJyZWFrOworISAgICAgICAgICAgKih1bnNpZ25lZCBjaGFyICopJmNo ID0gYzsKKyAgICAgICAgICB9CisgICAgICAgIH0KKyEgICAgICAgaWYgKGNoICE9ICdcbicpIGJy ZWFrOyAgLyogc3Vic3VtZXMgdGhlIGNhc2UgdGhhdCBjID09IEVPRiAqLworISAgICAgICBwdXRj aGFyKGMpOworICAgICAgfQorISAgICAgaWYgKGMgPT0gRU9GKSBicmVhazsKKyEgICAgIHVuZ2V0 YyhjLHN0ZGluKTsKKyAgCisgICAgICBpbmxpbmVzID0KKyAgICAgICAgcmVhZGxpbmVzKCZwcm9w cywgcHJvdGVjdGNoYXJzLCBxdW90ZWNoYXJzLCBUYWIsIGludmlzLCBxdW90ZSwgZXJybXNnKTsK KyAgICAgIGlmICgqZXJybXNnKSBnb3RvIHBhcmNsZWFudXA7CishIAorISAgICAgZm9yIChlbmRs aW5lID0gaW5saW5lczsgICplbmRsaW5lOyAgKytlbmRsaW5lKTsKKyAgICAgIGlmIChlbmRsaW5l ID09IGlubGluZXMpIHsKKyAgICAgICAgZnJlZShpbmxpbmVzKTsKKyAgICAgICAgaW5saW5lcyA9 IE5VTEw7CistLS0gNzYwLDgzMCAtLS0tCisgIC8qIFByb2Nlc3MgY29tbWFuZCBsaW5lIGFyZ3Vt ZW50czogKi8KKyAgCisgICAgd2hpbGUgKCorK2FyZ3YpIHsKKyEgICAgIGFyZyA9IG1hbGxvYygo c3RybGVuKCphcmd2KSArIDEpICogc2l6ZW9mICh3Y2hhcl90KSk7CishICAgICBpZiAoMCA+IG1i c3Rvd2NzKGFyZywgKmFyZ3YsIHN0cmxlbigqYXJndikgKyAxKSkgeworISAgICAgICB3Y3NjcHko ZXJybXNnLCBMIkludmFsaWQgbXVsdGlieXRlIHNlcXVlbmNlIGluIGFyZ3VtZW50XG4iKTsKKyEg ICAgICAgZ290byBwYXJjbGVhbnVwOworISAgICAgfQorISAgICAgcGFyc2VhcmcoYXJnLCAmaGVs cCwgJnZlcnNpb24sIGJvZHljaGFycywgcHJvdGVjdGNoYXJzLAorICAgICAgICAgICAgICAgcXVv dGVjaGFycywgJmhhbmcsICZwcmVmaXgsICZyZXBlYXQsICZzdWZmaXgsICZUYWIsCisgICAgICAg ICAgICAgICAmd2lkdGgsICZib2R5LCAmY2FwLCAmZGl2LCAmRXJyLCAmZXhwZWwsICZmaXQsICZn dWVzcywKKyAgICAgICAgICAgICAgICZpbnZpcywgJmp1c3QsICZsYXN0LCAmcXVvdGUsICZSZXBv cnQsICZ0b3VjaCwgZXJybXNnICk7CisrICAgICBmcmVlKGFyZyk7CisgICAgICBpZiAoKmVycm1z ZyB8fCBoZWxwIHx8IHZlcnNpb24pIGdvdG8gcGFyY2xlYW51cDsKKyAgICB9CisgIAorICAgIGlm IChUYWIgPT0gMCkgeworISAgICAgd2NzY3B5KGVycm1zZywgTCI8VGFiPiBtdXN0IG5vdCBiZSAw LlxuIik7CisgICAgICBnb3RvIHBhcmNsZWFudXA7CisgICAgfQorICAKKyAgICBpZiAodG91Y2gg PCAwKSB0b3VjaCA9IGZpdCB8fCBsYXN0OworICAgIHByZWZpeGJhayA9IHByZWZpeDsKKyAgICBz dWZmaXhiYWsgPSBzdWZmaXg7CishICAgCishICAgLyogTWFpbiBsb29wOiAqLworICAgIGZvciAo c2F3bm9uYmxhbmsgPSBvd2VibGFuayA9IDA7ICA7ICApIHsKKyAgICAgIGZvciAoOzspIHsKKyEg ICAgICAgYyA9IGdldHdjaGFyKCk7CishICAgICAgIGlmIChjID09IFdFT0YpIHsKKyEgICAgICAg ICBpZiAoZXJybm8gPT0gRUlMU0VRKSB7CishICAgICAgICAgICB3Y3NjcHkoZXJybXNnLCBMIklu dmFsaWQgbXVsdGlieXRlIHNlcXVlbmNlIGluIGlucHV0XG4iKTsKKyEgICAgICAgICAgIGdvdG8g cGFyY2xlYW51cDsKKyEgICAgICAgICB9CishICAgICAgICAgYnJlYWs7CishICAgICAgIH0KKyEg ICAgICAgaWYgKGV4cGVsICYmIGMgPT0gTCdcbicpIHsKKyAgICAgICAgICBvd2VibGFuayA9IHNh d25vbmJsYW5rOworICAgICAgICAgIGNvbnRpbnVlOworICAgICAgICB9CishICAgICAgIGlmIChj c21lbWJlcihjLCBwcm90ZWN0Y2hhcnMpKSB7CisgICAgICAgICAgc2F3bm9uYmxhbmsgPSAxOwor ICAgICAgICAgIGlmIChvd2VibGFuaykgeworISAgICAgICAgICAgZnB1dHdjKEwnXG4nLCBzdGRv dXQpOworICAgICAgICAgICAgb3dlYmxhbmsgPSAwOworICAgICAgICAgIH0KKyEgICAgICAgICB3 aGlsZSAoYyAhPSBMJ1xuJykgeworISAgICAgICAgICAgcHV0d2NoYXIoYyk7CishICAgICAgICAg ICBjID0gZ2V0d2NoYXIoKTsKKyEgICAgICAgICAgIGlmIChjID09IFdFT0YpIHsKKyEgICAgICAg ICAgICAgaWYgKGVycm5vID09IEVJTFNFUSkgeworISAgICAgICAgICAgICAgIHdjc2NweShlcnJt c2csIEwiSW52YWxpZCBtdWx0aWJ5dGUgc2VxdWVuY2UgaW4gaW5wdXRcbiIpOworISAgICAgICAg ICAgICAgIGdvdG8gcGFyY2xlYW51cDsKKyEgICAgICAgICAgICAgfQorISAgICAgICAgICAgICBi cmVhazsKKyEgICAgICAgICAgIH0KKyAgICAgICAgICB9CisgICAgICAgIH0KKyEgICAgICAgaWYg KGMgIT0gTCdcbicpIGJyZWFrOyAgLyogc3Vic3VtZXMgdGhlIGNhc2UgdGhhdCBjID09IEVPRiAq LworISAgICAgICBwdXR3Y2hhcihjKTsKKyAgICAgIH0KKyEgICAgIGlmIChjID09IFdFT0YpIGJy ZWFrOworISAgICAgdW5nZXR3YyhjLHN0ZGluKTsKKyAgCisgICAgICBpbmxpbmVzID0KKyAgICAg ICAgcmVhZGxpbmVzKCZwcm9wcywgcHJvdGVjdGNoYXJzLCBxdW90ZWNoYXJzLCBUYWIsIGludmlz LCBxdW90ZSwgZXJybXNnKTsKKyAgICAgIGlmICgqZXJybXNnKSBnb3RvIHBhcmNsZWFudXA7Cish ICAgICBmb3IgKGVuZGxpbmUgPSBpbmxpbmVzOyAgKmVuZGxpbmU7ICArK2VuZGxpbmUpIDsKKyAg ICAgIGlmIChlbmRsaW5lID09IGlubGluZXMpIHsKKyAgICAgICAgZnJlZShpbmxpbmVzKTsKKyAg ICAgICAgaW5saW5lcyA9IE5VTEw7CisqKioqKioqKioqKioqKioKKyoqKiA4MDcsODQ0ICoqKioK KyAgCisgICAgICBzYXdub25ibGFuayA9IDE7CisgICAgICBpZiAob3dlYmxhbmspIHsKKyEgICAg ICAgcHV0cygiIik7CisgICAgICAgIG93ZWJsYW5rID0gMDsKKyAgICAgIH0KKyAgCishICAgICBk ZWxpbWl0KChjb25zdCBjaGFyICogY29uc3QgKikgaW5saW5lcywKKyEgICAgICAgICAgICAgKGNv bnN0IGNoYXIgKiBjb25zdCAqKSBlbmRsaW5lLAorICAgICAgICAgICAgICBib2R5Y2hhcnMsIHJl cGVhdCwgYm9keSwgZGl2LCAwLCAwLCBwcm9wcyk7CisgIAorICAgICAgaWYgKGV4cGVsKQorISAg ICAgICBtYXJrc3VwZXJmKChjb25zdCBjaGFyICogY29uc3QgKikgaW5saW5lcywKKyEgICAgICAg ICAgICAgICAgICAoY29uc3QgY2hhciAqIGNvbnN0ICopIGVuZGxpbmUsIHByb3BzKTsKKyAgCisg ICAgICBmaXJzdGxpbmUgPSBpbmxpbmVzLCBmaXJzdHByb3AgPSBwcm9wczsKKyAgICAgIGRvIHsK KyAgICAgICAgaWYgKGlzYm9kaWxlc3MoZmlyc3Rwcm9wKSkgeworICAgICAgICAgIGlmICghaXNp bnZpcyhmaXJzdHByb3ApICYmICEoZXhwZWwgJiYgaXNzdXBlcmYoZmlyc3Rwcm9wKSkpIHsKKyAg ICAgICAgICAgIGZvciAoZW5kID0gKmZpcnN0bGluZTsgICplbmQ7ICArK2VuZCk7CishICAgICAg ICAgICBpZiAoIXJlcGVhdCB8fCAoZmlyc3Rwcm9wLT5yYyA9PSAnICcgJiYgIWZpcnN0cHJvcC0+ cykpIHsKKyEgICAgICAgICAgICAgd2hpbGUgKGVuZCA+ICpmaXJzdGxpbmUgJiYgZW5kWy0xXSA9 PSAnICcpIC0tZW5kOworISAgICAgICAgICAgICAqZW5kID0gJ1wwJzsKKyEgICAgICAgICAgICAg cHV0cygqZmlyc3RsaW5lKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGVsc2UgeworICAg ICAgICAgICAgICBuID0gd2lkdGggLSBmaXJzdHByb3AtPnAgLSBmaXJzdHByb3AtPnM7CisgICAg ICAgICAgICAgIGlmIChuIDwgMCkgeworISAgICAgICAgICAgICAgIHNwcmludGYoZXJybXNnLGlt cG9zc2liaWxpdHksNSk7CisgICAgICAgICAgICAgICAgZ290byBwYXJjbGVhbnVwOworICAgICAg ICAgICAgICB9CishICAgICAgICAgICAgIHByaW50ZigiJS4qcyIsIGZpcnN0cHJvcC0+cCwgKmZp cnN0bGluZSk7CisgICAgICAgICAgICAgIGZvciAoaSA9IG47ICBpOyAgLS1pKQorISAgICAgICAg ICAgICAgIHB1dGNoYXIoKih1bnNpZ25lZCBjaGFyICopJmZpcnN0cHJvcC0+cmMpOworISAgICAg ICAgICAgICBwdXRzKGVuZCAtIGZpcnN0cHJvcC0+cyk7CisgICAgICAgICAgICB9CisgICAgICAg ICAgfQorICAgICAgICAgICsrZmlyc3RsaW5lLCArK2ZpcnN0cHJvcDsKKy0tLSA4MzMsODcxIC0t LS0KKyAgCisgICAgICBzYXdub25ibGFuayA9IDE7CisgICAgICBpZiAob3dlYmxhbmspIHsKKyEg ICAgICAgZnB1dHdjKEwnXG4nLCBzdGRvdXQpOworICAgICAgICBvd2VibGFuayA9IDA7CisgICAg ICB9CisgIAorISAgICAgZGVsaW1pdCgoY29uc3Qgd2NoYXJfdCAqIGNvbnN0ICopIGlubGluZXMs CishICAgICAgICAgICAgIChjb25zdCB3Y2hhcl90ICogY29uc3QgKikgZW5kbGluZSwKKyAgICAg ICAgICAgICAgYm9keWNoYXJzLCByZXBlYXQsIGJvZHksIGRpdiwgMCwgMCwgcHJvcHMpOworICAK KyAgICAgIGlmIChleHBlbCkKKyEgICAgICAgbWFya3N1cGVyZigoY29uc3Qgd2NoYXJfdCAqIGNv bnN0ICopIGlubGluZXMsCishICAgICAgICAgICAgICAgICAgKGNvbnN0IHdjaGFyX3QgKiBjb25z dCAqKSBlbmRsaW5lLCBwcm9wcyk7CisgIAorICAgICAgZmlyc3RsaW5lID0gaW5saW5lcywgZmly c3Rwcm9wID0gcHJvcHM7CisrIAorICAgICAgZG8geworICAgICAgICBpZiAoaXNib2RpbGVzcyhm aXJzdHByb3ApKSB7CisgICAgICAgICAgaWYgKCFpc2ludmlzKGZpcnN0cHJvcCkgJiYgIShleHBl bCAmJiBpc3N1cGVyZihmaXJzdHByb3ApKSkgeworICAgICAgICAgICAgZm9yIChlbmQgPSAqZmly c3RsaW5lOyAgKmVuZDsgICsrZW5kKTsKKyEgICAgICAgICAgIGlmICghcmVwZWF0IHx8IChmaXJz dHByb3AtPnJjID09IEwnICcgJiYgIWZpcnN0cHJvcC0+cykpIHsKKyEgICAgICAgICAgICAgd2hp bGUgKGVuZCA+ICpmaXJzdGxpbmUgJiYgZW5kWy0xXSA9PSBMJyAnKSAtLWVuZDsKKyEgICAgICAg ICAgICAgKmVuZCA9IEwnXDAnOworISAgICAgICAgICAgICBmd3ByaW50ZihzdGRvdXQsIEwiJWxz XG4iLCAqZmlyc3RsaW5lKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGVsc2UgeworICAg ICAgICAgICAgICBuID0gd2lkdGggLSBmaXJzdHByb3AtPnAgLSBmaXJzdHByb3AtPnM7CisgICAg ICAgICAgICAgIGlmIChuIDwgMCkgeworISAgICAgICAgICAgICAgIHN3cHJpbnRmKGVycm1zZyxl cnJtc2dfc2l6ZSxpbXBvc3NpYmlsaXR5LDUpOworICAgICAgICAgICAgICAgIGdvdG8gcGFyY2xl YW51cDsKKyAgICAgICAgICAgICAgfQorISAgICAgICAgICAgICBmd3ByaW50ZihzdGRvdXQsIEwi JS4qbHMiLCBmaXJzdHByb3AtPnAsICpmaXJzdGxpbmUpOworICAgICAgICAgICAgICBmb3IgKGkg PSBuOyAgaTsgIC0taSkKKyEgICAgICAgICAgICAgICBmcHV0d2MoZmlyc3Rwcm9wLT5yYywgc3Rk b3V0KTsKKyEgICAgICAgICAgICAgZndwcmludGYoc3Rkb3V0LCBMIiVsc1xuIiwgZW5kIC0gZmly c3Rwcm9wLT5zKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICB9CisgICAgICAgICAgKytmaXJz dGxpbmUsICsrZmlyc3Rwcm9wOworKioqKioqKioqKioqKioqCisqKiogODQ4LDg3NSAqKioqCisg ICAgICAgIGZvciAobmV4dGxpbmUgPSBmaXJzdGxpbmUgKyAxLCBuZXh0cHJvcCA9IGZpcnN0cHJv cCArIDE7CisgICAgICAgICAgICAgbmV4dGxpbmUgPCBlbmRsaW5lICYmICFpc2JvZGlsZXNzKG5l eHRwcm9wKSAmJiAhaXNmaXJzdChuZXh0cHJvcCk7CisgICAgICAgICAgICAgKytuZXh0bGluZSwg KytuZXh0cHJvcCk7CishIAorICAgICAgICBwcmVmaXggPSBwcmVmaXhiYWssIHN1ZmZpeCA9IHN1 ZmZpeGJhazsKKyEgICAgICAgc2V0YWZmaXhlcygoY29uc3QgY2hhciAqIGNvbnN0ICopIGZpcnN0 bGluZSwKKyEgICAgICAgICAgICAgICAgICAoY29uc3QgY2hhciAqIGNvbnN0ICopIG5leHRsaW5l LCBmaXJzdHByb3AsIGJvZHljaGFycywKKyAgICAgICAgICAgICAgICAgICBxdW90ZWNoYXJzLCBo YW5nLCBib2R5LCBxdW90ZSwgJmFmcCwgJmZzLCAmcHJlZml4LCAmc3VmZml4KTsKKyAgICAgICAg aWYgKHdpZHRoIDw9IHByZWZpeCArIHN1ZmZpeCkgeworISAgICAgICAgIHNwcmludGYoZXJybXNn LAorISAgICAgICAgICAgICAgICAgIjx3aWR0aD4gKCVkKSA8PSA8cHJlZml4PiAoJWQpICsgPHN1 ZmZpeD4gKCVkKVxuIiwKKyAgICAgICAgICAgICAgICAgIHdpZHRoLCBwcmVmaXgsIHN1ZmZpeCk7 CisgICAgICAgICAgZ290byBwYXJjbGVhbnVwOworICAgICAgICB9CisgIAorICAgICAgICBvdXRs aW5lcyA9CishICAgICAgICAgcmVmb3JtYXQoKGNvbnN0IGNoYXIgKiBjb25zdCAqKSBmaXJzdGxp bmUsCishICAgICAgICAgICAgICAgICAgKGNvbnN0IGNoYXIgKiBjb25zdCAqKSBuZXh0bGluZSwK KyAgICAgICAgICAgICAgICAgICBhZnAsIGZzLCBoYW5nLCBwcmVmaXgsIHN1ZmZpeCwgd2lkdGgs IGNhcCwKKyAgICAgICAgICAgICAgICAgICBmaXQsIGd1ZXNzLCBqdXN0LCBsYXN0LCBSZXBvcnQs IHRvdWNoLCBlcnJtc2cpOworICAgICAgICBpZiAoKmVycm1zZykgZ290byBwYXJjbGVhbnVwOwor LSAKKyAgICAgICAgZm9yIChsaW5lID0gb3V0bGluZXM7ICAqbGluZTsgICsrbGluZSkKKyEgICAg ICAgICBwdXRzKCpsaW5lKTsKKyEgCisgICAgICAgIGZyZWVsaW5lcyhvdXRsaW5lcyk7CisgICAg ICAgIG91dGxpbmVzID0gTlVMTDsKKyAgCistLS0gODc1LDkwMCAtLS0tCisgICAgICAgIGZvciAo bmV4dGxpbmUgPSBmaXJzdGxpbmUgKyAxLCBuZXh0cHJvcCA9IGZpcnN0cHJvcCArIDE7CisgICAg ICAgICAgICAgbmV4dGxpbmUgPCBlbmRsaW5lICYmICFpc2JvZGlsZXNzKG5leHRwcm9wKSAmJiAh aXNmaXJzdChuZXh0cHJvcCk7CisgICAgICAgICAgICAgKytuZXh0bGluZSwgKytuZXh0cHJvcCk7 CishICAgICAgIAorICAgICAgICBwcmVmaXggPSBwcmVmaXhiYWssIHN1ZmZpeCA9IHN1ZmZpeGJh azsKKyEgICAgICAgc2V0YWZmaXhlcygoY29uc3Qgd2NoYXJfdCAqIGNvbnN0ICopIGZpcnN0bGlu ZSwKKyEgICAgICAgICAgICAgICAgICAoY29uc3Qgd2NoYXJfdCAqIGNvbnN0ICopIG5leHRsaW5l LCBmaXJzdHByb3AsIGJvZHljaGFycywKKyAgICAgICAgICAgICAgICAgICBxdW90ZWNoYXJzLCBo YW5nLCBib2R5LCBxdW90ZSwgJmFmcCwgJmZzLCAmcHJlZml4LCAmc3VmZml4KTsKKyAgICAgICAg aWYgKHdpZHRoIDw9IHByZWZpeCArIHN1ZmZpeCkgeworISAgICAgICAgIHN3cHJpbnRmKGVycm1z ZyxlcnJtc2dfc2l6ZSwKKyEgICAgICAgICAgICAgICAgIEwiPHdpZHRoPiAoJWQpIDw9IDxwcmVm aXg+ICglZCkgKyA8c3VmZml4PiAoJWQpXG4iLAorICAgICAgICAgICAgICAgICAgd2lkdGgsIHBy ZWZpeCwgc3VmZml4KTsKKyAgICAgICAgICBnb3RvIHBhcmNsZWFudXA7CisgICAgICAgIH0KKyAg CisgICAgICAgIG91dGxpbmVzID0KKyEgICAgICAgICByZWZvcm1hdCgoY29uc3Qgd2NoYXJfdCAq IGNvbnN0ICopIGZpcnN0bGluZSwKKyEgICAgICAgICAgICAgICAgICAoY29uc3Qgd2NoYXJfdCAq IGNvbnN0ICopIG5leHRsaW5lLAorICAgICAgICAgICAgICAgICAgIGFmcCwgZnMsIGhhbmcsIHBy ZWZpeCwgc3VmZml4LCB3aWR0aCwgY2FwLAorICAgICAgICAgICAgICAgICAgIGZpdCwgZ3Vlc3Ms IGp1c3QsIGxhc3QsIFJlcG9ydCwgdG91Y2gsIGVycm1zZyk7CisgICAgICAgIGlmICgqZXJybXNn KSBnb3RvIHBhcmNsZWFudXA7CisgICAgICAgIGZvciAobGluZSA9IG91dGxpbmVzOyAgKmxpbmU7 ICArK2xpbmUpCishICAgICAgICAgZndwcmludGYoc3Rkb3V0LCBMIiVsc1xuIiwgKmxpbmUpOwor ICAgICAgICBmcmVlbGluZXMob3V0bGluZXMpOworICAgICAgICBvdXRsaW5lcyA9IE5VTEw7Cisg IAorKioqKioqKioqKioqKioqCisqKiogODg0LDg5MCAqKioqCisgICAgfQorICAKKyAgcGFyY2xl YW51cDoKKyEgCisgICAgaWYgKGJvZHljaGFycykgZnJlZWNoYXJzZXQoYm9keWNoYXJzKTsKKyAg ICBpZiAocHJvdGVjdGNoYXJzKSBmcmVlY2hhcnNldChwcm90ZWN0Y2hhcnMpOworICAgIGlmIChx dW90ZWNoYXJzKSBmcmVlY2hhcnNldChxdW90ZWNoYXJzKTsKKy0tLSA5MDksOTE1IC0tLS0KKyAg ICB9CisgIAorICBwYXJjbGVhbnVwOgorISAgIGlmICh3ZW52KSBmcmVlKHdlbnYpOworICAgIGlm IChib2R5Y2hhcnMpIGZyZWVjaGFyc2V0KGJvZHljaGFycyk7CisgICAgaWYgKHByb3RlY3RjaGFy cykgZnJlZWNoYXJzZXQocHJvdGVjdGNoYXJzKTsKKyAgICBpZiAocXVvdGVjaGFycykgZnJlZWNo YXJzZXQocXVvdGVjaGFycyk7CisqKioqKioqKioqKioqKioKKyoqKiA4OTQsOTAxICoqKioKKyAg ICBpZiAob3V0bGluZXMpIGZyZWVsaW5lcyhvdXRsaW5lcyk7CisgIAorICAgIGVycm91dCA9IEVy ciA/IHN0ZGVyciA6IHN0ZG91dDsKKyEgICBpZiAoKmVycm1zZykgZnByaW50ZihlcnJvdXQsICJw YXIgZXJyb3I6XG4lLipzIiwgZXJybXNnX3NpemUsIGVycm1zZyk7CishICAgaWYgKHZlcnNpb24p IGZwdXRzKCJwYXIgMS41MlxuIixlcnJvdXQpOworICAgIGlmIChoZWxwKSAgICBmcHV0cyh1c2Fn ZW1zZyxlcnJvdXQpOworICAKKyAgICByZXR1cm4gKmVycm1zZyA/IEVYSVRfRkFJTFVSRSA6IEVY SVRfU1VDQ0VTUzsKKy0tLSA5MTksOTMwIC0tLS0KKyAgICBpZiAob3V0bGluZXMpIGZyZWVsaW5l cyhvdXRsaW5lcyk7CisgIAorICAgIGVycm91dCA9IEVyciA/IHN0ZGVyciA6IHN0ZG91dDsKKyEg ICBpZiAoKmVycm1zZykgZndwcmludGYoZXJyb3V0LCBMInBhciBlcnJvcjpcbiUuKmxzIiwgZXJy bXNnX3NpemUsIGVycm1zZyk7CishICNpZmRlZiBOT1dJRFRICishICAgaWYgKHZlcnNpb24pIGZw dXR3cyhMInBhciAxLjUyLWkxOG4uNCAod2l0aG91dCB3Y3dpZHRoKCkgc3VwcG9ydClcbiIsZXJy b3V0KTsKKyEgI2Vsc2UKKyEgICBpZiAodmVyc2lvbikgZnB1dHdzKEwicGFyIDEuNTItaTE4bi40 XG4iLGVycm91dCk7CishICNlbmRpZgorICAgIGlmIChoZWxwKSAgICBmcHV0cyh1c2FnZW1zZyxl cnJvdXQpOworICAKKyAgICByZXR1cm4gKmVycm1zZyA/IEVYSVRfRkFJTFVSRSA6IEVYSVRfU1VD Q0VTUzsKK9Ci0L7Qu9GM0LrQviDQsiAuLi9QYXIxNTItdW5pY29kZS86IHBhci5jLm9yaWcKK2Rp ZmYgLWMgLi9wYXIuZG9jIC4uL1BhcjE1Mi11bmljb2RlL3Bhci5kb2MKKyoqKiAuL3Bhci5kb2MJ MjAwMS0wNC0zMCAwMToxNzoyOC4wMDAwMDAwMDAgKzA0MDAKKy0tLSAuLi9QYXIxNTItdW5pY29k ZS9wYXIuZG9jCTIwMTktMTAtMjYgMTc6MjE6MDguNTQ4MDUwODUzICswMzAwCisqKioqKioqKioq KioqKioKKyoqKiAxLDYgKioqKgorICAgICoqKioqKioqKioqKioqKioqKioqKgorICAgICogcGFy LmRvYyAgICAgICAgICAgKgorISAgICogZm9yIFBhciAxLjUyICAgICAgKgorICAgICogQ29weXJp Z2h0IDIwMDEgYnkgKgorICAgICogQWRhbSBNLiBDb3N0ZWxsbyAgKgorICAgICoqKioqKioqKioq KioqKioqKioqKgorLS0tIDEsNiAtLS0tCisgICAgKioqKioqKioqKioqKioqKioqKioqCisgICAg KiBwYXIuZG9jICAgICAgICAgICAqCishICAgKiBmb3IgUGFyIDEuNTIgaTE4biAqCisgICAgKiBD b3B5cmlnaHQgMjAwMSBieSAqCisgICAgKiBBZGFtIE0uIENvc3RlbGxvICAqCisgICAgKioqKioq KioqKioqKioqKioqKioqCitkaWZmIC1jIC4vcHJvdG9NYWtlZmlsZSAuLi9QYXIxNTItdW5pY29k ZS9wcm90b01ha2VmaWxlCisqKiogLi9wcm90b01ha2VmaWxlCTIwMDEtMDMtMDkgMDM6NTM6MjUu MDAwMDAwMDAwICswMzAwCistLS0gLi4vUGFyMTUyLXVuaWNvZGUvcHJvdG9NYWtlZmlsZQkyMDE5 LTEwLTI2IDE3OjIxOjA4LjU0ODA1MDg1MyArMDMwMAorKioqKioqKioqKioqKioqCisqKiogNDcs NTMgKioqKgorICAjIEV4YW1wbGUgKGZvciBTb2xhcmlzIDIueCB3aXRoIFNQQVJDb21waWxlciBD KToKKyAgIyBDQyA9IGNjIC1jIC1PIC1zIC1YYyAtRERPTlRGUkVFCisgIAorISBDQyA9IGNjIC1j CisgIAorICAjIERlZmluZSBMSU5LMSBhbmQgTElOSzIgc28gdGhhdCB0aGUgY29tbWFuZAorICAj CistLS0gNDcsNTMgLS0tLQorICAjIEV4YW1wbGUgKGZvciBTb2xhcmlzIDIueCB3aXRoIFNQQVJD b21waWxlciBDKToKKyAgIyBDQyA9IGNjIC1jIC1PIC1zIC1YYyAtRERPTlRGUkVFCisgIAorISBD QyA9IGNjIC1zdGQ9Yzk5IC1jCisgIAorICAjIERlZmluZSBMSU5LMSBhbmQgTElOSzIgc28gdGhh dCB0aGUgY29tbWFuZAorICAjCitkaWZmIC1jIC4vcmVmb3JtYXQuYyAuLi9QYXIxNTItdW5pY29k ZS9yZWZvcm1hdC5jCisqKiogLi9yZWZvcm1hdC5jCTIwMDEtMDMtMjIgMDc6MTc6MTUuMDAwMDAw MDAwICswMzAwCistLS0gLi4vUGFyMTUyLXVuaWNvZGUvcmVmb3JtYXQuYwkyMDE5LTEwLTI2IDE3 OjIxOjA4LjU0ODA1MDg1MyArMDMwMAorKioqKioqKioqKioqKioqCisqKiogMSw5ICoqKioKKyEg LyoqKioqKioqKioqKioqKioqKioqKi8KKyEgLyogcmVmb3JtYXQuYyAgICAgICAgKi8KKyEgLyog Zm9yIFBhciAxLjUyICAgICAgKi8KKyEgLyogQ29weXJpZ2h0IDIwMDEgYnkgKi8KKyEgLyogQWRh bSBNLiBDb3N0ZWxsbyAgKi8KKyEgLyoqKioqKioqKioqKioqKioqKioqKi8KKyAgCisgIC8qIFRo aXMgaXMgQU5TSSBDIGNvZGUgKEM4OSkuICovCisgIAorLS0tIDEsMTEgLS0tLQorISAvKioqKioq KioqKioqKioqKioqKioqKiovCishIC8qIHJlZm9ybWF0LmMgICAgICAgICAgKi8KKyEgLyogZm9y IFBhciAxLjUyLWkxOG4uNCAqLworISAvKiBDb3B5cmlnaHQgMjAwMSBieSAgICovCishIC8qIEFk YW0gTS4gQ29zdGVsbG8gICAgKi8KKyEgLyogTW9kaWZpZWQgYnkgICAgICAgICAqLworISAvKiBK w6lyw7RtZSBQb3VpbGxlciAgICAgKi8KKyEgLyoqKioqKioqKioqKioqKioqKioqKioqLworICAK KyAgLyogVGhpcyBpcyBBTlNJIEMgY29kZSAoQzg5KS4gKi8KKyAgCisqKioqKioqKioqKioqKioK KyoqKiAxNiwyMSAqKioqCistLS0gMTgsMjQgLS0tLQorICAjaW5jbHVkZSA8c3RkaW8uaD4KKyAg I2luY2x1ZGUgPHN0ZGxpYi5oPgorICAjaW5jbHVkZSA8c3RyaW5nLmg+CisrICNpbmNsdWRlIDx3 Y3R5cGUuaD4KKyAgCisgICN1bmRlZiBOVUxMCisgICNkZWZpbmUgTlVMTCAoKHZvaWQgKikgMCkK KyoqKioqKioqKioqKioqKgorKioqIDMzLDQ2ICoqKioKKyAgdHlwZWRlZiB1bnNpZ25lZCBjaGFy IHdmbGFnX3Q7CisgIAorICB0eXBlZGVmIHN0cnVjdCB3b3JkIHsKKyEgICBjb25zdCBjaGFyICpj aHJzOyAgICAgICAvKiBQb2ludGVyIHRvIHRoZSBjaGFyYWN0ZXJzIGluIHRoZSB3b3JkICovCisg ICAgICAgICAgICAgICAgICAgICAgICAgICAgLyogKE5PVCB0ZXJtaW5hdGVkIGJ5ICdcMCcpLiAg ICAgICAgICAgICAqLworICAgIHN0cnVjdCB3b3JkICpwcmV2LCAgICAgIC8qIFBvaW50ZXIgdG8g cHJldmlvdXMgd29yZC4gICAgICAgICAgICAgKi8KKyAgICAgICAgICAgICAgICAqbmV4dCwgICAg ICAvKiBQb2ludGVyIHRvIG5leHQgd29yZC4gICAgICAgICAgICAgICAgICovCisgICAgICAgICAg ICAgICAgICAgICAgICAgICAgLyogU3VwcG9zaW5nIHRoaXMgd29yZCB3ZXJlIHRoZSBmaXJzdC4u LiAqLworICAgICAgICAgICAgICAgICpuZXh0bGluZTsgIC8qICAgUG9pbnRlciB0byBmaXJzdCB3 b3JkIGluIG5leHQgbGluZS4gKi8KKyAgICBpbnQgc2NvcmUsICAgICAgICAgICAgICAvKiAgIFZh bHVlIG9mIHRoZSBvYmplY3RpdmUgZnVuY3Rpb24uICAgICovCishICAgICAgIGxlbmd0aDsgICAg ICAgICAgICAgLyogTGVuZ3RoIG9mIHRoaXMgd29yZC4gICAgICAgICAgICAgICAgICAqLworICAg IHdmbGFnX3QgZmxhZ3M7ICAgICAgICAgIC8qIE5vdGFibGUgcHJvcGVydGllcyBvZiB0aGlzIHdv cmQuICAgICAgKi8KKyAgfSB3b3JkOworICAKKy0tLSAzNiw1MCAtLS0tCisgIHR5cGVkZWYgdW5z aWduZWQgY2hhciB3ZmxhZ190OworICAKKyAgdHlwZWRlZiBzdHJ1Y3Qgd29yZCB7CishICAgY29u c3Qgd2NoYXJfdCAqY2hyczsgICAgLyogUG9pbnRlciB0byB0aGUgY2hhcmFjdGVycyBpbiB0aGUg d29yZCAqLworICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIChOT1QgdGVybWluYXRlZCBi eSAnXDAnKS4gICAgICAgICAgICAgKi8KKyAgICBzdHJ1Y3Qgd29yZCAqcHJldiwgICAgICAvKiBQ b2ludGVyIHRvIHByZXZpb3VzIHdvcmQuICAgICAgICAgICAgICovCisgICAgICAgICAgICAgICAg Km5leHQsICAgICAgLyogUG9pbnRlciB0byBuZXh0IHdvcmQuICAgICAgICAgICAgICAgICAqLwor ICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8qIFN1cHBvc2luZyB0aGlzIHdvcmQgd2VyZSB0 aGUgZmlyc3QuLi4gKi8KKyAgICAgICAgICAgICAgICAqbmV4dGxpbmU7ICAvKiAgIFBvaW50ZXIg dG8gZmlyc3Qgd29yZCBpbiBuZXh0IGxpbmUuICovCisgICAgaW50IHNjb3JlLCAgICAgICAgICAg ICAgLyogICBWYWx1ZSBvZiB0aGUgb2JqZWN0aXZlIGZ1bmN0aW9uLiAgICAqLworISAgICAgICBs ZW5ndGgsICAgICAgICAgICAgIC8qIExlbmd0aCAoaW4gd2lkZWNoYXIpIG9mIHRoaXMgd29yZC4g ICAgKi8KKyEgICAgICAgd2lkdGg7ICAgICAgICAgICAgICAvKiBWaXN1YWwgd2lkdGggb2YgdGhp cyB3b3JkLiAgICAgICAgICAgICovCisgICAgd2ZsYWdfdCBmbGFnczsgICAgICAgICAgLyogTm90 YWJsZSBwcm9wZXJ0aWVzIG9mIHRoaXMgd29yZC4gICAgICAqLworICB9IHdvcmQ7CisgIAorKioq KioqKioqKioqKioqCisqKiogNTcsNzMgKioqKgorICAjZGVmaW5lIGlzY3VyaW91cyh3KSAoKCh3 KS0+ZmxhZ3MgJiAyKSAhPSAwKQorICAjZGVmaW5lIGlzY2FwaXRhbCh3KSAoKCh3KS0+ZmxhZ3Mg JiA0KSAhPSAwKQorICAKKyAgCisgIHN0YXRpYyBpbnQgY2hlY2tjYXBpdGFsKHdvcmQgKncpCisg IC8qIFJldHVybnMgMSBpZiAqdyBpcyBjYXBpdGFsaXplZCBhY2NvcmRpbmcgdG8gdGhlIGRlZmlu aXRpb24gKi8KKyAgLyogaW4gcGFyLmRvYyAoYXNzdW1pbmcgPGNhcD4gaXMgMCksIG9yIDAgaWYg bm90LiAgICAgICAgICAgICAqLworICB7CishICAgY29uc3QgY2hhciAqcCwgKmVuZDsKKyAgCisg ICAgZm9yIChwID0gdy0+Y2hycywgZW5kID0gcCArIHctPmxlbmd0aDsKKyEgICAgICAgIHAgPCBl bmQgJiYgIWlzYWxudW0oKih1bnNpZ25lZCBjaGFyICopcCk7CisgICAgICAgICArK3ApOworISAg IHJldHVybiBwIDwgZW5kICYmICFpc2xvd2VyKCoodW5zaWduZWQgY2hhciAqKXApOworICB9Cisg IAorICAKKy0tLSA2MSw5OSAtLS0tCisgICNkZWZpbmUgaXNjdXJpb3VzKHcpICgoKHcpLT5mbGFn cyAmIDIpICE9IDApCisgICNkZWZpbmUgaXNjYXBpdGFsKHcpICgoKHcpLT5mbGFncyAmIDQpICE9 IDApCisgIAorKyBzdGF0aWMgaW50IGdldFdpZHRoKGNvbnN0IHdjaGFyX3QgKmJlZywgY29uc3Qg d2NoYXJfdCAqZW5kKQorKyAvKiBDb21wdXRlICh2aXN1YWwpIHdpZHRoIG9mIGEgIHdvcmQuIFRo aXMgZnVuY3Rpb24gaXMgYXdhcmUgKi8KKysgLyogYWJvdXQgZG91YmxlLXdpZHRoIGNoYXJhY3Rl cnMgdXNlZCBpbiBvcmllbnRhbCBsYW5nYWdlcy4gICovCisrIHsKKysgICBpbnQgcmV0LCB0bXA7 CisrICAgCisrICAgZm9yIChyZXQgPSAwOyBiZWcgIT0gZW5kOyBiZWcrKykgeworKyAjaWZkZWYg Tk9XSURUSAorKyAgICAgdG1wID0gMTsKKysgI2Vsc2UKKysgICAgIHRtcCA9IHdjd2lkdGgoKmJl Zyk7CisrICNlbmRpZgorKyAgICAgLy8gQlVHOiBJdCBpcyBub3QgcmVhbGx5IGVhc3kgdG8gaGFu ZGxlIGNhc2Ugb2YgemVybyB3aWR0aCBjaGFyYWN0ZXJzLgorKyAgICAgLy8gSWYgd2UgZG9uJ3Qg ZG8gdGhpcywgc2l6ZSBtYWxsbG9jIGZvciBxMSB3aWxsIGJlIGxlc3MgdGhhbiByZWFsIAorKyAg ICAgLy8gc2l6ZSBhbmQgcHJvZ3JhbSB3aWxsIHNlZ2ZhdWx0LiBTbyBJIHByZWZlciB0byBoYXZl IGEgYnVnIHRoYW4gYSBzZWdmYXVsdC4KKysgICAgIGlmICh0bXAgPD0gMCkKKysgICAgICAgdG1w ID0gMTsKKysgICAgIHJldCArPSB0bXA7CisrICAgfQorKyAgIAorKyAgIHJldHVybiByZXQ7Cisr IH0KKyAgCisgIHN0YXRpYyBpbnQgY2hlY2tjYXBpdGFsKHdvcmQgKncpCisgIC8qIFJldHVybnMg MSBpZiAqdyBpcyBjYXBpdGFsaXplZCBhY2NvcmRpbmcgdG8gdGhlIGRlZmluaXRpb24gKi8KKyAg LyogaW4gcGFyLmRvYyAoYXNzdW1pbmcgPGNhcD4gaXMgMCksIG9yIDAgaWYgbm90LiAgICAgICAg ICAgICAqLworICB7CishICAgY29uc3Qgd2NoYXJfdCAqcCwgKmVuZDsKKyAgCisgICAgZm9yIChw ID0gdy0+Y2hycywgZW5kID0gcCArIHctPmxlbmd0aDsKKyEgICAgICAgIHAgPCBlbmQgJiYgIWlz d2FsbnVtKCpwKTsKKyAgICAgICAgICsrcCk7CishICAgcmV0dXJuIHAgPCBlbmQgJiYgIWlzd2xv d2VyKCpwKTsKKyAgfQorICAKKyAgCisqKioqKioqKioqKioqKioKKyoqKiA3NSw5MyAqKioqCisg IC8qIFJldHVybnMgMSBpZiAqdyBpcyBjdXJpb3VzIGFjY29yZGluZyB0byAqLworICAvKiB0aGUg ZGVmaW5pdGlvbiBpbiBwYXIuZG9jLCBvciAwIGlmIG5vdC4gKi8KKyAgeworISAgIGNvbnN0IGNo YXIgKnN0YXJ0LCAqcDsKKyEgICBjaGFyIGNoOworICAKKyAgICBmb3IgKHN0YXJ0ID0gdy0+Y2hy cywgcCA9IHN0YXJ0ICsgdy0+bGVuZ3RoOyAgcCA+IHN0YXJ0OyAgLS1wKSB7CisgICAgICBjaCA9 IHBbLTFdOworISAgICAgaWYgKGlzYWxudW0oKih1bnNpZ25lZCBjaGFyICopJmNoKSkgcmV0dXJu IDA7CishICAgICBpZiAoY2ggPT0gJy4nIHx8IGNoID09ICc/JyB8fCBjaCA9PSAnIScgfHwgY2gg PT0gJzonKSBicmVhazsKKyAgICB9CisgIAorICAgIGlmIChwIDw9IHN0YXJ0ICsgMSkgcmV0dXJu IDA7CisgIAorICAgIC0tcDsKKyEgICBkbyBpZiAoaXNhbG51bSgqKHVuc2lnbmVkIGNoYXIgKikt LXApKSByZXR1cm4gMTsKKyAgICB3aGlsZSAocCA+IHN0YXJ0KTsKKyAgCisgICAgcmV0dXJuIDA7 CistLS0gMTAxLDExOSAtLS0tCisgIC8qIFJldHVybnMgMSBpZiAqdyBpcyBjdXJpb3VzIGFjY29y ZGluZyB0byAqLworICAvKiB0aGUgZGVmaW5pdGlvbiBpbiBwYXIuZG9jLCBvciAwIGlmIG5vdC4g Ki8KKyAgeworISAgIGNvbnN0IHdjaGFyX3QgKnN0YXJ0LCAqcDsKKyEgICB3Y2hhcl90IGNoOwor ICAKKyAgICBmb3IgKHN0YXJ0ID0gdy0+Y2hycywgcCA9IHN0YXJ0ICsgdy0+bGVuZ3RoOyAgcCA+ IHN0YXJ0OyAgLS1wKSB7CisgICAgICBjaCA9IHBbLTFdOworISAgICAgaWYgKGlzd2FsbnVtKCoo d2NoYXJfdCAqKSZjaCkpIHJldHVybiAwOworISAgICAgaWYgKGNoID09IEwnLicgfHwgY2ggPT0g TCc/JyB8fCBjaCA9PSBMJyEnIHx8IGNoID09IEwnOicpIGJyZWFrOworICAgIH0KKyAgCisgICAg aWYgKHAgPD0gc3RhcnQgKyAxKSByZXR1cm4gMDsKKyAgCisgICAgLS1wOworISAgIGRvIGlmIChp c3dhbG51bSgqKHdjaGFyX3QgKiktLXApKSByZXR1cm4gMTsKKyAgICB3aGlsZSAocCA+IHN0YXJ0 KTsKKyAgCisgICAgcmV0dXJuIDA7CisqKioqKioqKioqKioqKioKKyoqKiA5NSwxMjUgKioqKgor ICAKKyAgCisgIHN0YXRpYyBpbnQgc2ltcGxlYnJlYWtzKHdvcmQgKmhlYWQsIHdvcmQgKnRhaWws IGludCBMLCBpbnQgbGFzdCkKKyEgCishIC8qIENob29zZXMgbGluZSBicmVha3MgaW4gYSBsaXN0 IG9mIHdvcmRzIHdoaWNoIG1heGltaXplIHRoZSBsZW5ndGggb2YgdGhlICAgKi8KKyEgLyogc2hv cnRlc3QgbGluZS4gIEwgaXMgdGhlIG1heGltdW0gbGluZSBsZW5ndGguICBUaGUgbGFzdCBsaW5l IGNvdW50cyBhcyBhICAqLworISAvKiBsaW5lIG9ubHkgaWYgbGFzdCBpcyBub24temVyby4gX2hl YWQgbXVzdCBwb2ludCB0byBhIGR1bW15IHdvcmQsIGFuZCB0YWlsICovCishIC8qIG11c3QgcG9p bnQgdG8gdGhlIGxhc3Qgd29yZCwgd2hvc2UgbmV4dCBmaWVsZCBtdXN0IGJlIE5VTEwuICBSZXR1 cm5zIHRoZSAgKi8KKyEgLyogbGVuZ3RoIG9mIHRoZSBzaG9ydGVzdCBsaW5lIG9uIHN1Y2Nlc3Ms IC0xIGlmIHRoZXJlIGlzIGEgd29yZCBvZiBsZW5ndGggICAqLworISAvKiBncmVhdGVyIHRoYW4g TCwgb3IgTCBpZiB0aGVyZSBhcmUgbm8gbGluZXMuICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICovCisgIHsKKyAgICB3b3JkICp3MSwgKncyOworICAgIGludCBsaW5lbGVuLCBzY29yZTsK KyAgCisgICAgaWYgKCFoZWFkLT5uZXh0KSByZXR1cm4gTDsKKyAgCishICAgZm9yICh3MSA9IHRh aWwsIGxpbmVsZW4gPSB3MS0+bGVuZ3RoOworICAgICAgICAgdzEgIT0gaGVhZCAmJiBsaW5lbGVu IDw9IEw7CishICAgICAgICBsaW5lbGVuICs9IGlzc2hpZnRlZCh3MSksIHcxID0gdzEtPnByZXYs IGxpbmVsZW4gKz0gMSArIHcxLT5sZW5ndGgpIHsKKyAgICAgIHcxLT5zY29yZSA9IGxhc3QgPyBs aW5lbGVuIDogTDsKKyAgICAgIHcxLT5uZXh0bGluZSA9IE5VTEw7CisgICAgfQorICAKKyAgICBm b3IgKCA7ICB3MSAhPSBoZWFkOyAgdzEgPSB3MS0+cHJldikgeworICAgICAgdzEtPnNjb3JlID0g LTE7CishICAgICBmb3IgKGxpbmVsZW4gPSB3MS0+bGVuZ3RoLCAgdzIgPSB3MS0+bmV4dDsKKyAg ICAgICAgICAgbGluZWxlbiA8PSBMOworISAgICAgICAgICBsaW5lbGVuICs9IDEgKyBpc3NoaWZ0 ZWQodzIpICsgdzItPmxlbmd0aCwgIHcyID0gdzItPm5leHQpIHsKKyAgICAgICAgc2NvcmUgPSB3 Mi0+c2NvcmU7CisgICAgICAgIGlmIChsaW5lbGVuIDwgc2NvcmUpIHNjb3JlID0gbGluZWxlbjsK KyAgICAgICAgaWYgKHNjb3JlID49IHcxLT5zY29yZSkgeworLS0tIDEyMSwxNTIgLS0tLQorICAK KyAgCisgIHN0YXRpYyBpbnQgc2ltcGxlYnJlYWtzKHdvcmQgKmhlYWQsIHdvcmQgKnRhaWwsIGlu dCBMLCBpbnQgbGFzdCkKKyEgLyogQ2hvb3NlcyBsaW5lICBicmVha3MgaW4gYSAgbGlzdCBvZiB3 b3JkcyAgd2hpY2ggbWF4aW1pemUgKi8KKyEgLyogdGhlIGxlbmd0aCBvZiAgdGhlIHNob3J0ZXN0 IGxpbmUuIEwgaXMgIHRoZSBtYXhpbXVtIGxpbmUgKi8KKyEgLyogbGVuZ3RoLiBUaGUgbGFzdCAg bGluZSBjb3VudHMgYXMgYSBsaW5lIG9ubHkgIGlmIGxhc3QgaXMgKi8KKyEgLyogbm9uLXplcm8u IF9oZWFkICBtdXN0IHBvaW50ICB0byBhICBkdW1teSB3b3JkLCAgYW5kIHRhaWwgKi8KKyEgLyog bXVzdCBwb2ludCAgdG8gdGhlIGxhc3QgIHdvcmQsIHdob3NlIG5leHQgZmllbGQgIG11c3QgYmUg Ki8KKyEgLyogTlVMTC4gIFJldHVybnMgIHRoZSAgbGVuZ3RoICBvZiAgdGhlICBzaG9ydGVzdCAg bGluZSAgb24gKi8KKyEgLyogc3VjY2VzcywgLTEgaWYgdGhlcmUgaXMgYSB3b3JkIG9mIGxlbmd0 aCBncmVhdGVyIHRoYW4gTCwgKi8KKyEgLyogb3IgTCBpZiB0aGVyZSBhcmUgbm8gbGluZXMuICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgKi8KKyAgeworICAgIHdvcmQgKncxLCAqdzI7Cisg ICAgaW50IGxpbmVsZW4sIHNjb3JlOworICAKKyAgICBpZiAoIWhlYWQtPm5leHQpIHJldHVybiBM OworICAKKyEgICBmb3IgKHcxID0gdGFpbCwgbGluZWxlbiA9IHcxLT53aWR0aDsKKyAgICAgICAg IHcxICE9IGhlYWQgJiYgbGluZWxlbiA8PSBMOworISAgICAgICAgbGluZWxlbiArPSBpc3NoaWZ0 ZWQodzEpLCB3MSA9IHcxLT5wcmV2LCBsaW5lbGVuICs9IDEgKyB3MS0+d2lkdGgpIHsKKyAgICAg IHcxLT5zY29yZSA9IGxhc3QgPyBsaW5lbGVuIDogTDsKKyAgICAgIHcxLT5uZXh0bGluZSA9IE5V TEw7CisgICAgfQorICAKKyAgICBmb3IgKCA7ICB3MSAhPSBoZWFkOyAgdzEgPSB3MS0+cHJldikg eworICAgICAgdzEtPnNjb3JlID0gLTE7CishICAgICBmb3IgKGxpbmVsZW4gPSB3MS0+d2lkdGgs ICB3MiA9IHcxLT5uZXh0OworICAgICAgICAgICBsaW5lbGVuIDw9IEw7CishICAgICAgICAgIGxp bmVsZW4gKz0gMSArIGlzc2hpZnRlZCh3MikgKyB3Mi0+d2lkdGgsICB3MiA9IHcyLT5uZXh0KSB7 CisgICAgICAgIHNjb3JlID0gdzItPnNjb3JlOworICAgICAgICBpZiAobGluZWxlbiA8IHNjb3Jl KSBzY29yZSA9IGxpbmVsZW47CisgICAgICAgIGlmIChzY29yZSA+PSB3MS0+c2NvcmUpIHsKKyoq KioqKioqKioqKioqKgorKioqIDE2OCwxNzQgKioqKgorICAKKyAgICBzaG9ydGVzdCA9IHNpbXBs ZWJyZWFrcyhoZWFkLHRhaWwsdGFyZ2V0LGxhc3QpOworICAgIGlmIChzaG9ydGVzdCA8IDApIHsK KyEgICAgIHNwcmludGYoZXJybXNnLGltcG9zc2liaWxpdHksMSk7CisgICAgICByZXR1cm47Cisg ICAgfQorICAKKy0tLSAxOTUsMjAxIC0tLS0KKyAgCisgICAgc2hvcnRlc3QgPSBzaW1wbGVicmVh a3MoaGVhZCx0YWlsLHRhcmdldCxsYXN0KTsKKyAgICBpZiAoc2hvcnRlc3QgPCAwKSB7CishICAg ICBzd3ByaW50ZihlcnJtc2csZXJybXNnX3NpemUsaW1wb3NzaWJpbGl0eSwxKTsKKyAgICAgIHJl dHVybjsKKyAgICB9CisgIAorKioqKioqKioqKioqKioqCisqKiogMTc4LDE4NiAqKioqCisgICAg dzEgPSB0YWlsOworICAgIGRvIHsKKyAgICAgIHcxLT5zY29yZSA9IC0xOworISAgICAgZm9yIChs aW5lbGVuID0gdzEtPmxlbmd0aCwgIHcyID0gdzEtPm5leHQ7CisgICAgICAgICAgIGxpbmVsZW4g PD0gdGFyZ2V0OworISAgICAgICAgICBsaW5lbGVuICs9IDEgKyBpc3NoaWZ0ZWQodzIpICsgdzIt Pmxlbmd0aCwgIHcyID0gdzItPm5leHQpIHsKKyAgICAgICAgZXh0cmEgPSB0YXJnZXQgLSBsaW5l bGVuOworICAgICAgICBtaW5sZW4gPSBzaG9ydGVzdDsKKyAgICAgICAgaWYgKHcyKQorLS0tIDIw NSwyMTMgLS0tLQorICAgIHcxID0gdGFpbDsKKyAgICBkbyB7CisgICAgICB3MS0+c2NvcmUgPSAt MTsKKyEgICAgIGZvciAobGluZWxlbiA9IHcxLT53aWR0aCwgIHcyID0gdzEtPm5leHQ7CisgICAg ICAgICAgIGxpbmVsZW4gPD0gdGFyZ2V0OworISAgICAgICAgICBsaW5lbGVuICs9IDEgKyBpc3No aWZ0ZWQodzIpICsgdzItPndpZHRoLCAgdzIgPSB3Mi0+bmV4dCkgeworICAgICAgICBleHRyYSA9 IHRhcmdldCAtIGxpbmVsZW47CisgICAgICAgIG1pbmxlbiA9IHNob3J0ZXN0OworICAgICAgICBp ZiAodzIpCisqKioqKioqKioqKioqKioKKyoqKiAyMDIsMjA4ICoqKioKKyAgICB9IHdoaWxlICh3 MSAhPSBoZWFkKTsKKyAgCisgICAgaWYgKGhlYWQtPm5leHQtPnNjb3JlIDwgMCkKKyEgICAgIHNw cmludGYoZXJybXNnLGltcG9zc2liaWxpdHksMik7CisgIH0KKyAgCisgIAorLS0tIDIyOSwyMzUg LS0tLQorICAgIH0gd2hpbGUgKHcxICE9IGhlYWQpOworICAKKyAgICBpZiAoaGVhZC0+bmV4dC0+ c2NvcmUgPCAwKQorISAgICAgc3dwcmludGYoZXJybXNnLGVycm1zZ19zaXplLGltcG9zc2liaWxp dHksMik7CisgIH0KKyAgCisgIAorKioqKioqKioqKioqKioqCisqKiogMjI1LDIzMyAqKioqCisg ICAgdzEgPSB0YWlsOworICAgIGRvIHsKKyAgICAgIHcxLT5zY29yZSA9IEw7CishICAgICBmb3Ig KG51bWdhcHMgPSAwLCBleHRyYSA9IEwgLSB3MS0+bGVuZ3RoLCB3MiA9IHcxLT5uZXh0OworICAg ICAgICAgICBleHRyYSA+PSAwOworISAgICAgICAgICArK251bWdhcHMsIGV4dHJhIC09IDEgKyBp c3NoaWZ0ZWQodzIpICsgdzItPmxlbmd0aCwgdzIgPSB3Mi0+bmV4dCkgeworICAgICAgICBnYXAg PSBudW1nYXBzID8gKGV4dHJhICsgbnVtZ2FwcyAtIDEpIC8gbnVtZ2FwcyA6IEw7CisgICAgICAg IGlmICh3MikKKyAgICAgICAgICBzY29yZSA9IHcyLT5zY29yZTsKKy0tLSAyNTIsMjYwIC0tLS0K KyAgICB3MSA9IHRhaWw7CisgICAgZG8geworICAgICAgdzEtPnNjb3JlID0gTDsKKyEgICAgIGZv ciAobnVtZ2FwcyA9IDAsIGV4dHJhID0gTCAtIHcxLT53aWR0aCwgdzIgPSB3MS0+bmV4dDsKKyAg ICAgICAgICAgZXh0cmEgPj0gMDsKKyEgICAgICAgICAgKytudW1nYXBzLCBleHRyYSAtPSAxICsg aXNzaGlmdGVkKHcyKSArIHcyLT53aWR0aCwgdzIgPSB3Mi0+bmV4dCkgeworICAgICAgICBnYXAg PSBudW1nYXBzID8gKGV4dHJhICsgbnVtZ2FwcyAtIDEpIC8gbnVtZ2FwcyA6IEw7CisgICAgICAg IGlmICh3MikKKyAgICAgICAgICBzY29yZSA9IHcyLT5zY29yZTsKKyoqKioqKioqKioqKioqKgor KioqIDI0NywyNTMgKioqKgorICAKKyAgICBtYXhnYXAgPSBoZWFkLT5uZXh0LT5zY29yZTsKKyAg ICBpZiAobWF4Z2FwID49IEwpIHsKKyEgICAgIHN0cmNweShlcnJtc2csICJDYW5ub3QganVzdGlm eS5cbiIpOworICAgICAgcmV0dXJuOworICAgIH0KKyAgCistLS0gMjc0LDI4MCAtLS0tCisgIAor ICAgIG1heGdhcCA9IGhlYWQtPm5leHQtPnNjb3JlOworICAgIGlmIChtYXhnYXAgPj0gTCkgewor ISAgICAgd2NzY3B5KGVycm1zZywgTCJDYW5ub3QganVzdGlmeS5cbiIpOworICAgICAgcmV0dXJu OworICAgIH0KKyAgCisqKioqKioqKioqKioqKioKKyoqKiAyNTcsMjY1ICoqKioKKyAgICB3MSA9 IHRhaWw7CisgICAgZG8geworICAgICAgdzEtPnNjb3JlID0gLTE7CishICAgICBmb3IgKG51bWdh cHMgPSAwLCBleHRyYSA9IEwgLSB3MS0+bGVuZ3RoLCB3MiA9IHcxLT5uZXh0OworICAgICAgICAg ICBleHRyYSA+PSAwOworISAgICAgICAgICArK251bWdhcHMsIGV4dHJhIC09IDEgKyBpc3NoaWZ0 ZWQodzIpICsgdzItPmxlbmd0aCwgdzIgPSB3Mi0+bmV4dCkgeworICAgICAgICBnYXAgPSBudW1n YXBzID8gKGV4dHJhICsgbnVtZ2FwcyAtIDEpIC8gbnVtZ2FwcyA6IEw7CisgICAgICAgIGlmICh3 MikKKyAgICAgICAgICBzY29yZSA9IHcyLT5zY29yZTsKKy0tLSAyODQsMjkyIC0tLS0KKyAgICB3 MSA9IHRhaWw7CisgICAgZG8geworICAgICAgdzEtPnNjb3JlID0gLTE7CishICAgICBmb3IgKG51 bWdhcHMgPSAwLCBleHRyYSA9IEwgLSB3MS0+d2lkdGgsIHcyID0gdzEtPm5leHQ7CisgICAgICAg ICAgIGV4dHJhID49IDA7CishICAgICAgICAgICsrbnVtZ2FwcywgZXh0cmEgLT0gMSArIGlzc2hp ZnRlZCh3MikgKyB3Mi0+d2lkdGgsIHcyID0gdzItPm5leHQpIHsKKyAgICAgICAgZ2FwID0gbnVt Z2FwcyA/IChleHRyYSArIG51bWdhcHMgLSAxKSAvIG51bWdhcHMgOiBMOworICAgICAgICBpZiAo dzIpCisgICAgICAgICAgc2NvcmUgPSB3Mi0+c2NvcmU7CisqKioqKioqKioqKioqKioKKyoqKiAy ODgsMzI3ICoqKioKKyAgICB9IHdoaWxlICh3MSAhPSBoZWFkKTsKKyAgCisgICAgaWYgKGhlYWQt Pm5leHQtPnNjb3JlIDwgMCkKKyEgICAgIHNwcmludGYoZXJybXNnLGltcG9zc2liaWxpdHksMyk7 CisgIH0KKyAgCisgIAorISBjaGFyICoqcmVmb3JtYXQoCishICAgY29uc3QgY2hhciAqIGNvbnN0 ICppbmxpbmVzLCBjb25zdCBjaGFyICogY29uc3QgKmVuZGxpbmUsIGludCBhZnAsIGludCBmcywK KyAgICBpbnQgaGFuZywgaW50IHByZWZpeCwgaW50IHN1ZmZpeCwgaW50IHdpZHRoLCBpbnQgY2Fw LCBpbnQgZml0LCBpbnQgZ3Vlc3MsCisgICAgaW50IGp1c3QsIGludCBsYXN0LCBpbnQgUmVwb3J0 LCBpbnQgdG91Y2gsIGVycm1zZ190IGVycm1zZworICApCisgIHsKKyAgICBpbnQgbnVtaW4sIGFm Zml4LCBMLCBvbmZpcnN0d29yZCA9IDEsIGxpbmVsZW4sIG51bW91dCwgbnVtZ2FwcywgZXh0cmEs IHBoYXNlOworISAgIGNvbnN0IGNoYXIgKiBjb25zdCAqbGluZSwgKipzdWZmaXhlcyA9IE5VTEws ICoqc3VmLCAqZW5kLCAqcDEsICpwMjsKKyEgICBjaGFyICpxMSwgKnEyLCAqKm91dGxpbmVzID0g TlVMTDsKKyAgICB3b3JkIGR1bW15LCAqaGVhZCwgKnRhaWwsICp3MSwgKncyOworICAgIGJ1ZmZl ciAqcGJ1ZiA9IE5VTEw7CisgIAorICAvKiBJbml0aWFsaXphdGlvbjogKi8KKy0gCisgICAgKmVy cm1zZyA9ICdcMCc7CisgICAgZHVtbXkubmV4dCA9IGR1bW15LnByZXYgPSBOVUxMOworICAgIGR1 bW15LmZsYWdzID0gMDsKKyAgICBoZWFkID0gdGFpbCA9ICZkdW1teTsKKyAgICBudW1pbiA9IGVu ZGxpbmUgLSBpbmxpbmVzOworICAgIGlmIChudW1pbiA8PSAwKSB7CishICAgICBzcHJpbnRmKGVy cm1zZyxpbXBvc3NpYmlsaXR5LDQpOworICAgICAgZ290byByZmNsZWFudXA7CisgICAgfQorICAg IG51bWdhcHMgPSBleHRyYSA9IDA7ICAvKiB1bm5lY2Vzc2FyeSwgYnV0IHF1aWV0cyBjb21waWxl ciB3YXJuaW5ncyAqLworICAKKyAgLyogQWxsb2NhdGUgc3BhY2UgZm9yIHBvaW50ZXJzIHRvIHRo ZSBzdWZmaXhlczogKi8KKyAgCishICAgc3VmZml4ZXMgPSBtYWxsb2MobnVtaW4gKiBzaXplb2Yg KGNvbnN0IGNoYXIgKikpOworICAgIGlmICghc3VmZml4ZXMpIHsKKyEgICAgIHN0cmNweShlcnJt c2csb3V0b2ZtZW0pOworICAgICAgZ290byByZmNsZWFudXA7CisgICAgfQorICAKKy0tLSAzMTUs MzUzIC0tLS0KKyAgICB9IHdoaWxlICh3MSAhPSBoZWFkKTsKKyAgCisgICAgaWYgKGhlYWQtPm5l eHQtPnNjb3JlIDwgMCkKKyEgICAgIHN3cHJpbnRmKGVycm1zZyxlcnJtc2dfc2l6ZSxpbXBvc3Np YmlsaXR5LDMpOworICB9CisgIAorICAKKyEgd2NoYXJfdCAqKnJlZm9ybWF0KAorISAgIGNvbnN0 IHdjaGFyX3QgKiBjb25zdCAqaW5saW5lcywgY29uc3Qgd2NoYXJfdCAqIGNvbnN0ICplbmRsaW5l LCBpbnQgYWZwLCBpbnQgZnMsCisgICAgaW50IGhhbmcsIGludCBwcmVmaXgsIGludCBzdWZmaXgs IGludCB3aWR0aCwgaW50IGNhcCwgaW50IGZpdCwgaW50IGd1ZXNzLAorICAgIGludCBqdXN0LCBp bnQgbGFzdCwgaW50IFJlcG9ydCwgaW50IHRvdWNoLCBlcnJtc2dfdCBlcnJtc2cKKyAgKQorICB7 CisgICAgaW50IG51bWluLCBhZmZpeCwgTCwgb25maXJzdHdvcmQgPSAxLCBsaW5lbGVuLCBudW1v dXQsIG51bWdhcHMsIGV4dHJhLCBwaGFzZTsKKyEgICBjb25zdCB3Y2hhcl90ICogY29uc3QgKmxp bmUsICoqc3VmZml4ZXMgPSBOVUxMLCAqKnN1ZiwgKmVuZCwgKnAxLCAqcDI7CishICAgd2NoYXJf dCAqcTEsICpxMiwgKipvdXRsaW5lcyA9IE5VTEw7CisgICAgd29yZCBkdW1teSwgKmhlYWQsICp0 YWlsLCAqdzEsICp3MjsKKyAgICBidWZmZXIgKnBidWYgPSBOVUxMOworICAKKyAgLyogSW5pdGlh bGl6YXRpb246ICovCisgICAgKmVycm1zZyA9ICdcMCc7CisgICAgZHVtbXkubmV4dCA9IGR1bW15 LnByZXYgPSBOVUxMOworICAgIGR1bW15LmZsYWdzID0gMDsKKyAgICBoZWFkID0gdGFpbCA9ICZk dW1teTsKKyAgICBudW1pbiA9IGVuZGxpbmUgLSBpbmxpbmVzOworICAgIGlmIChudW1pbiA8PSAw KSB7CishICAgICBzd3ByaW50ZihlcnJtc2csZXJybXNnX3NpemUsaW1wb3NzaWJpbGl0eSw0KTsK KyAgICAgIGdvdG8gcmZjbGVhbnVwOworICAgIH0KKyAgICBudW1nYXBzID0gZXh0cmEgPSAwOyAg LyogdW5uZWNlc3NhcnksIGJ1dCBxdWlldHMgY29tcGlsZXIgd2FybmluZ3MgKi8KKyAgCisgIC8q IEFsbG9jYXRlIHNwYWNlIGZvciBwb2ludGVycyB0byB0aGUgc3VmZml4ZXM6ICovCisgIAorISAg IHN1ZmZpeGVzID0gbWFsbG9jKG51bWluICogc2l6ZW9mIChjb25zdCB3Y2hhcl90ICopKTsKKyAg ICBpZiAoIXN1ZmZpeGVzKSB7CishICAgICB3Y3NjcHkoZXJybXNnLG91dG9mbWVtKTsKKyAgICAg IGdvdG8gcmZjbGVhbnVwOworICAgIH0KKyAgCisqKioqKioqKioqKioqKioKKyoqKiAzMzQsMzQx ICoqKioKKyAgICBkbyB7CisgICAgICBmb3IgKGVuZCA9ICpsaW5lOyAgKmVuZDsgICsrZW5kKTsK KyAgICAgIGlmIChlbmQgLSAqbGluZSA8IGFmZml4KSB7CishICAgICAgIHNwcmludGYoZXJybXNn LAorISAgICAgICAgICAgICAgICJMaW5lICVkIHNob3J0ZXIgdGhhbiA8cHJlZml4PiArIDxzdWZm aXg+ID0gJWQgKyAlZCA9ICVkXG4iLAorICAgICAgICAgICAgICAgIGxpbmUgLSBpbmxpbmVzICsg MSwgcHJlZml4LCBzdWZmaXgsIGFmZml4KTsKKyAgICAgICAgZ290byByZmNsZWFudXA7CisgICAg ICB9CistLS0gMzYwLDM2NyAtLS0tCisgICAgZG8geworICAgICAgZm9yIChlbmQgPSAqbGluZTsg ICplbmQ7ICArK2VuZCk7CisgICAgICBpZiAoZW5kIC0gKmxpbmUgPCBhZmZpeCkgeworISAgICAg ICBzd3ByaW50ZihlcnJtc2csZXJybXNnX3NpemUsCishICAgICAgICAgICAgICAgTCJMaW5lICVk IHNob3J0ZXIgdGhhbiA8cHJlZml4PiArIDxzdWZmaXg+ID0gJWQgKyAlZCA9ICVkXG4iLAorICAg ICAgICAgICAgICAgIGxpbmUgLSBpbmxpbmVzICsgMSwgcHJlZml4LCBzdWZmaXgsIGFmZml4KTsK KyAgICAgICAgZ290byByZmNsZWFudXA7CisgICAgICB9CisqKioqKioqKioqKioqKioKKyoqKiAz NDMsMzU5ICoqKioKKyAgICAgICpzdWYgPSBlbmQ7CisgICAgICBwMSA9ICpsaW5lICsgcHJlZml4 OworICAgICAgZm9yICg7OykgeworISAgICAgICB3aGlsZSAocDEgPCBlbmQgJiYgKnAxID09ICcg JykgKytwMTsKKyAgICAgICAgaWYgKHAxID09IGVuZCkgYnJlYWs7CisgICAgICAgIHAyID0gcDE7 CisgICAgICAgIGlmIChvbmZpcnN0d29yZCkgeworICAgICAgICAgIHAxID0gKmxpbmUgKyBwcmVm aXg7CisgICAgICAgICAgb25maXJzdHdvcmQgPSAwOworICAgICAgICB9CishICAgICAgIHdoaWxl IChwMiA8IGVuZCAmJiAqcDIgIT0gJyAnKSArK3AyOworICAgICAgICB3MSA9IG1hbGxvYyhzaXpl b2YgKHdvcmQpKTsKKyAgICAgICAgaWYgKCF3MSkgeworISAgICAgICAgIHN0cmNweShlcnJtc2cs b3V0b2ZtZW0pOworICAgICAgICAgIGdvdG8gcmZjbGVhbnVwOworICAgICAgICB9CisgICAgICAg IHcxLT5uZXh0ID0gTlVMTDsKKy0tLSAzNjksMzg1IC0tLS0KKyAgICAgICpzdWYgPSBlbmQ7Cisg ICAgICBwMSA9ICpsaW5lICsgcHJlZml4OworICAgICAgZm9yICg7OykgeworISAgICAgICB3aGls ZSAocDEgPCBlbmQgJiYgKnAxID09IEwnICcpICsrcDE7CisgICAgICAgIGlmIChwMSA9PSBlbmQp IGJyZWFrOworICAgICAgICBwMiA9IHAxOworICAgICAgICBpZiAob25maXJzdHdvcmQpIHsKKyAg ICAgICAgICBwMSA9ICpsaW5lICsgcHJlZml4OworICAgICAgICAgIG9uZmlyc3R3b3JkID0gMDsK KyAgICAgICAgfQorISAgICAgICB3aGlsZSAocDIgPCBlbmQgJiYgKnAyICE9IEwnICcpICsrcDI7 CisgICAgICAgIHcxID0gbWFsbG9jKHNpemVvZiAod29yZCkpOworICAgICAgICBpZiAoIXcxKSB7 CishICAgICAgICAgd2NzY3B5KGVycm1zZyxvdXRvZm1lbSk7CisgICAgICAgICAgZ290byByZmNs ZWFudXA7CisgICAgICAgIH0KKyAgICAgICAgdzEtPm5leHQgPSBOVUxMOworKioqKioqKioqKioq KioqCisqKiogMzYxLDM2NiAqKioqCistLS0gMzg3LDM5MyAtLS0tCisgICAgICAgIHRhaWwgPSB0 YWlsLT5uZXh0ID0gdzE7CisgICAgICAgIHcxLT5jaHJzID0gcDE7CisgICAgICAgIHcxLT5sZW5n dGggPSBwMiAtIHAxOworKyAgICAgICB3MS0+d2lkdGggPSBnZXRXaWR0aChwMSwgcDIpOworICAg ICAgICB3MS0+ZmxhZ3MgPSAwOworICAgICAgICBwMSA9IHAyOworICAgICAgfQorKioqKioqKioq KioqKioqCisqKiogMzc3LDM4MiAqKioqCistLS0gNDA0LDQxMCAtLS0tCisgICAgICAgICAgaWYg KGlzY3VyaW91cyh3MSkpIHsKKyAgICAgICAgICAgIGlmICh3MS0+Y2hyc1t3MS0+bGVuZ3RoXSAm JiB3MS0+Y2hycyArIHcxLT5sZW5ndGggKyAxID09IHcyLT5jaHJzKSB7CisgICAgICAgICAgICAg IHcyLT5sZW5ndGggKz0gdzEtPmxlbmd0aCArIDE7CisrICAgICAgICAgICAgIHcyLT53aWR0aCAr PSB3MS0+d2lkdGggKyAxOworICAgICAgICAgICAgICB3Mi0+Y2hycyA9IHcxLT5jaHJzOworICAg ICAgICAgICAgICB3Mi0+cHJldiA9IHcxLT5wcmV2OworICAgICAgICAgICAgICB3Mi0+cHJldi0+ bmV4dCA9IHcyOworKioqKioqKioqKioqKioqCisqKiogMzk3LDQxNiAqKioqCisgIAorICAgIGlm IChSZXBvcnQpCisgICAgICBmb3IgKHcyID0gaGVhZC0+bmV4dDsgIHcyOyAgdzIgPSB3Mi0+bmV4 dCkgeworISAgICAgICBpZiAodzItPmxlbmd0aCA+IEwpIHsKKyEgICAgICAgICBsaW5lbGVuID0g dzItPmxlbmd0aDsKKyAgICAgICAgICBpZiAobGluZWxlbiA+IGVycm1zZ19zaXplIC0gMTcpCisg ICAgICAgICAgICBsaW5lbGVuID0gZXJybXNnX3NpemUgLSAxNzsKKyEgICAgICAgICBzcHJpbnRm KGVycm1zZywgIldvcmQgdG9vIGxvbmc6ICUuKnNcbiIsIGxpbmVsZW4sIHcyLT5jaHJzKTsKKyAg ICAgICAgICBnb3RvIHJmY2xlYW51cDsKKyAgICAgICAgfQorICAgICAgfQorICAgIGVsc2UKKyAg ICAgIGZvciAodzIgPSBoZWFkLT5uZXh0OyAgdzI7ICB3MiA9IHcyLT5uZXh0KQorISAgICAgICB3 aGlsZSAodzItPmxlbmd0aCA+IEwpIHsKKyAgICAgICAgICB3MSA9IG1hbGxvYyhzaXplb2YgKHdv cmQpKTsKKyAgICAgICAgICBpZiAoIXcxKSB7CishICAgICAgICAgICBzdHJjcHkoZXJybXNnLG91 dG9mbWVtKTsKKyAgICAgICAgICAgIGdvdG8gcmZjbGVhbnVwOworICAgICAgICAgIH0KKyAgICAg ICAgICB3MS0+bmV4dCA9IHcyOworLS0tIDQyNSw0NDQgLS0tLQorICAKKyAgICBpZiAoUmVwb3J0 KQorICAgICAgZm9yICh3MiA9IGhlYWQtPm5leHQ7ICB3MjsgIHcyID0gdzItPm5leHQpIHsKKyEg ICAgICAgaWYgKHcyLT53aWR0aCA+IEwpIHsKKyEgICAgICAgICBsaW5lbGVuID0gdzItPndpZHRo OworICAgICAgICAgIGlmIChsaW5lbGVuID4gZXJybXNnX3NpemUgLSAxNykKKyAgICAgICAgICAg IGxpbmVsZW4gPSBlcnJtc2dfc2l6ZSAtIDE3OworISAgICAgICAgIHN3cHJpbnRmKGVycm1zZyxl cnJtc2dfc2l6ZSwgTCJXb3JkIHRvbyBsb25nOiAlLipsc1xuIiwgbGluZWxlbiwgdzItPmNocnMp OworICAgICAgICAgIGdvdG8gcmZjbGVhbnVwOworICAgICAgICB9CisgICAgICB9CisgICAgZWxz ZQorICAgICAgZm9yICh3MiA9IGhlYWQtPm5leHQ7ICB3MjsgIHcyID0gdzItPm5leHQpCishICAg ICAgIHdoaWxlICh3Mi0+d2lkdGggPiBMKSB7CisgICAgICAgICAgdzEgPSBtYWxsb2Moc2l6ZW9m ICh3b3JkKSk7CisgICAgICAgICAgaWYgKCF3MSkgeworISAgICAgICAgICAgd2NzY3B5KGVycm1z ZyxvdXRvZm1lbSk7CisgICAgICAgICAgICBnb3RvIHJmY2xlYW51cDsKKyAgICAgICAgICB9Cisg ICAgICAgICAgdzEtPm5leHQgPSB3MjsKKyoqKioqKioqKioqKioqKgorKioqIDQyMCw0MjYgKioq KgorLS0tIDQ0OCw0NTYgLS0tLQorICAgICAgICAgIHcxLT5jaHJzID0gdzItPmNocnM7CisgICAg ICAgICAgdzItPmNocnMgKz0gTDsKKyAgICAgICAgICB3MS0+bGVuZ3RoID0gTDsKKysgICAgICAg ICB3MS0+d2lkdGggPSBnZXRXaWR0aCh3MS0+Y2hycywgdzEtPmNocnMgKyBMKTsKKyAgICAgICAg ICB3Mi0+bGVuZ3RoIC09IEw7CisrICAgICAgICAgdzItPndpZHRoIC09IHcxLT53aWR0aDsKKyAg ICAgICAgICB3MS0+ZmxhZ3MgPSAwOworICAgICAgICAgIGlmIChpc2NhcGl0YWwodzIpKSB7Cisg ICAgICAgICAgICB3MS0+ZmxhZ3MgfD0gV19DQVBJVEFMOworKioqKioqKioqKioqKioqCisqKiog NDQ0LDQ1MiAqKioqCisgICAgICBMID0gMDsKKyAgICAgIHcxID0gaGVhZC0+bmV4dDsKKyAgICAg IHdoaWxlICh3MSkgeworISAgICAgICBmb3IgKGxpbmVsZW4gPSB3MS0+bGVuZ3RoLCB3MiA9IHcx LT5uZXh0OworICAgICAgICAgICAgIHcyICE9IHcxLT5uZXh0bGluZTsKKyEgICAgICAgICAgICBs aW5lbGVuICs9IDEgKyBpc3NoaWZ0ZWQodzIpICsgdzItPmxlbmd0aCwgdzIgPSB3Mi0+bmV4dCk7 CisgICAgICAgIGlmIChsaW5lbGVuID4gTCkgTCA9IGxpbmVsZW47CisgICAgICAgIHcxID0gdzI7 CisgICAgICB9CistLS0gNDc0LDQ4MiAtLS0tCisgICAgICBMID0gMDsKKyAgICAgIHcxID0gaGVh ZC0+bmV4dDsKKyAgICAgIHdoaWxlICh3MSkgeworISAgICAgICBmb3IgKGxpbmVsZW4gPSB3MS0+ d2lkdGgsIHcyID0gdzEtPm5leHQ7CisgICAgICAgICAgICAgdzIgIT0gdzEtPm5leHRsaW5lOwor ISAgICAgICAgICAgIGxpbmVsZW4gKz0gMSArIGlzc2hpZnRlZCh3MikgKyB3Mi0+d2lkdGgsIHcy ID0gdzItPm5leHQpOworICAgICAgICBpZiAobGluZWxlbiA+IEwpIEwgPSBsaW5lbGVuOworICAg ICAgICB3MSA9IHcyOworICAgICAgfQorKioqKioqKioqKioqKioqCisqKiogNDU0LDUyMCAqKioq CisgIAorICAvKiBDb25zdHJ1Y3QgdGhlIGxpbmVzOiAqLworICAKKyEgICBwYnVmID0gbmV3YnVm ZmVyKHNpemVvZiAoY2hhciAqKSwgZXJybXNnKTsKKyAgICBpZiAoKmVycm1zZykgZ290byByZmNs ZWFudXA7CisgIAorICAgIG51bW91dCA9IDA7CisgICAgdzEgPSBoZWFkLT5uZXh0OworICAgIHdo aWxlIChudW1vdXQgPCBoYW5nIHx8IHcxKSB7CisgICAgICBpZiAodzEpCishICAgICAgIGZvciAo dzIgPSB3MS0+bmV4dCwgbnVtZ2FwcyA9IDAsIGV4dHJhID0gTCAtIHcxLT5sZW5ndGg7CisgICAg ICAgICAgICAgdzIgIT0gdzEtPm5leHRsaW5lOworISAgICAgICAgICAgICsrbnVtZ2FwcywgZXh0 cmEgLT0gMSArIGlzc2hpZnRlZCh3MikgKyB3Mi0+bGVuZ3RoLCB3MiA9IHcyLT5uZXh0KTsKKyAg ICAgIGxpbmVsZW4gPSBzdWZmaXggfHwgKGp1c3QgJiYgKHcyIHx8IGxhc3QpKSA/CisgICAgICAg ICAgICAgICAgICBMICsgYWZmaXggOgorICAgICAgICAgICAgICAgICAgdzEgPyBwcmVmaXggKyBM IC0gZXh0cmEgOiBwcmVmaXg7CishICAgICBxMSA9IG1hbGxvYygobGluZWxlbiArIDEpICogc2l6 ZW9mIChjaGFyKSk7CisgICAgICBpZiAoIXExKSB7CishICAgICAgIHN0cmNweShlcnJtc2csb3V0 b2ZtZW0pOworICAgICAgICBnb3RvIHJmY2xlYW51cDsKKyAgICAgIH0KKyAgICAgIGFkZGl0ZW0o cGJ1ZiwgJnExLCBlcnJtc2cpOworICAgICAgaWYgKCplcnJtc2cpIGdvdG8gcmZjbGVhbnVwOwor ICAgICAgKytudW1vdXQ7CisgICAgICBxMiA9IHExICsgcHJlZml4OworISAgICAgaWYgICAgICAo bnVtb3V0IDw9IG51bWluKSBtZW1jcHkocTEsIGlubGluZXNbbnVtb3V0IC0gMV0sIHByZWZpeCk7 CishICAgICBlbHNlIGlmIChudW1pbiAgPiAgaGFuZyApIG1lbWNweShxMSwgZW5kbGluZVstMV0s ICAgICAgICAgcHJlZml4KTsKKyAgICAgIGVsc2UgeworICAgICAgICBpZiAoYWZwID4gcHJlZml4 KSBhZnAgPSBwcmVmaXg7CishICAgICAgIG1lbWNweShxMSwgZW5kbGluZVstMV0sIGFmcCk7Cisg ICAgICAgIHExICs9IGFmcDsKKyEgICAgICAgd2hpbGUgKHExIDwgcTIpICpxMSsrID0gJyAnOwor ICAgICAgfQorICAgICAgcTEgPSBxMjsKKyAgICAgIGlmICh3MSkgeworICAgICAgICBwaGFzZSA9 IG51bWdhcHMgLyAyOworICAgICAgICBmb3IgKHcyID0gdzE7ICA7ICApIHsKKyEgICAgICAgICBt ZW1jcHkocTEsIHcyLT5jaHJzLCB3Mi0+bGVuZ3RoKTsKKyAgICAgICAgICBxMSArPSB3Mi0+bGVu Z3RoOworICAgICAgICAgIHcyID0gdzItPm5leHQ7CisgICAgICAgICAgaWYgKHcyID09IHcxLT5u ZXh0bGluZSkgYnJlYWs7CishICAgICAgICAgKnExKysgPSAnICc7CisgICAgICAgICAgaWYgKGp1 c3QgJiYgKHcxLT5uZXh0bGluZSB8fCBsYXN0KSkgeworICAgICAgICAgICAgcGhhc2UgKz0gZXh0 cmE7CisgICAgICAgICAgICB3aGlsZSAocGhhc2UgPj0gbnVtZ2FwcykgeworISAgICAgICAgICAg ICAqcTErKyA9ICcgJzsKKyAgICAgICAgICAgICAgcGhhc2UgLT0gbnVtZ2FwczsKKyAgICAgICAg ICAgIH0KKyAgICAgICAgICB9CishICAgICAgICAgaWYgKGlzc2hpZnRlZCh3MikpICpxMSsrID0g JyAnOworICAgICAgICB9CisgICAgICB9CisgICAgICBxMiArPSBsaW5lbGVuIC0gYWZmaXg7Cish ICAgICB3aGlsZSAocTEgPCBxMikgKnExKysgPSAnICc7CisgICAgICBxMiA9IHExICsgc3VmZml4 OworISAgICAgaWYgICAgICAobnVtb3V0IDw9IG51bWluKSBtZW1jcHkocTEsIHN1ZmZpeGVzW251 bW91dCAtIDFdLCBzdWZmaXgpOworISAgICAgZWxzZSBpZiAobnVtaW4gID4gIGhhbmcgKSBtZW1j cHkocTEsIHN1ZmZpeGVzW251bWluICAtIDFdLCBzdWZmaXgpOworICAgICAgZWxzZSB7CisgICAg ICAgIGlmIChmcyA+IHN1ZmZpeCkgZnMgPSBzdWZmaXg7CishICAgICAgIG1lbWNweShxMSwgc3Vm Zml4ZXNbbnVtaW4gLSAxXSwgZnMpOworICAgICAgICBxMSArPSBmczsKKyEgICAgICAgd2hpbGUo cTEgPCBxMikgKnExKysgPSAnICc7CisgICAgICB9CishICAgICAqcTIgPSAnXDAnOworICAgICAg aWYgKHcxKSB3MSA9IHcxLT5uZXh0bGluZTsKKyAgICB9CisgIAorLS0tIDQ4NCw1NTAgLS0tLQor ICAKKyAgLyogQ29uc3RydWN0IHRoZSBsaW5lczogKi8KKyAgCishICAgcGJ1ZiA9IG5ld2J1ZmZl cihzaXplb2YgKHdjaGFyX3QgKiksIGVycm1zZyk7CisgICAgaWYgKCplcnJtc2cpIGdvdG8gcmZj bGVhbnVwOworICAKKyAgICBudW1vdXQgPSAwOworICAgIHcxID0gaGVhZC0+bmV4dDsKKyAgICB3 aGlsZSAobnVtb3V0IDwgaGFuZyB8fCB3MSkgeworICAgICAgaWYgKHcxKQorISAgICAgICBmb3Ig KHcyID0gdzEtPm5leHQsIG51bWdhcHMgPSAwLCBleHRyYSA9IEwgLSB3MS0+d2lkdGg7CisgICAg ICAgICAgICAgdzIgIT0gdzEtPm5leHRsaW5lOworISAgICAgICAgICAgICsrbnVtZ2FwcywgZXh0 cmEgLT0gMSArIGlzc2hpZnRlZCh3MikgKyB3Mi0+d2lkdGgsIHcyID0gdzItPm5leHQpOworICAg ICAgbGluZWxlbiA9IHN1ZmZpeCB8fCAoanVzdCAmJiAodzIgfHwgbGFzdCkpID8KKyAgICAgICAg ICAgICAgICAgIEwgKyBhZmZpeCA6CisgICAgICAgICAgICAgICAgICB3MSA/IHByZWZpeCArIEwg LSBleHRyYSA6IHByZWZpeDsKKyEgICAgIHExID0gbWFsbG9jKChsaW5lbGVuICsgMSkgKiBzaXpl b2YgKHdjaGFyX3QpKTsKKyAgICAgIGlmICghcTEpIHsKKyEgICAgICAgd2NzY3B5KGVycm1zZyxv dXRvZm1lbSk7CisgICAgICAgIGdvdG8gcmZjbGVhbnVwOworICAgICAgfQorICAgICAgYWRkaXRl bShwYnVmLCAmcTEsIGVycm1zZyk7CisgICAgICBpZiAoKmVycm1zZykgZ290byByZmNsZWFudXA7 CisgICAgICArK251bW91dDsKKyAgICAgIHEyID0gcTEgKyBwcmVmaXg7CishICAgICBpZiAgICAg IChudW1vdXQgPD0gbnVtaW4pIG1lbWNweShxMSwgaW5saW5lc1tudW1vdXQgLSAxXSwgcHJlZml4 ICogc2l6ZW9mKHdjaGFyX3QpKTsKKyEgICAgIGVsc2UgaWYgKG51bWluICA+ICBoYW5nICkgbWVt Y3B5KHExLCBlbmRsaW5lWy0xXSwgICAgICAgICBwcmVmaXggKiBzaXplb2Yod2NoYXJfdCkpOwor ICAgICAgZWxzZSB7CisgICAgICAgIGlmIChhZnAgPiBwcmVmaXgpIGFmcCA9IHByZWZpeDsKKyEg ICAgICAgbWVtY3B5KHExLCBlbmRsaW5lWy0xXSwgYWZwICogc2l6ZW9mKHdjaGFyX3QpKTsKKyAg ICAgICAgcTEgKz0gYWZwOworISAgICAgICB3aGlsZSAocTEgPCBxMikgKnExKysgPSBMJyAnOwor ICAgICAgfQorICAgICAgcTEgPSBxMjsKKyAgICAgIGlmICh3MSkgeworICAgICAgICBwaGFzZSA9 IG51bWdhcHMgLyAyOworICAgICAgICBmb3IgKHcyID0gdzE7ICA7ICApIHsKKyEgICAgICAgICBt ZW1jcHkocTEsIHcyLT5jaHJzLCB3Mi0+bGVuZ3RoICogc2l6ZW9mKHdjaGFyX3QpKTsKKyAgICAg ICAgICBxMSArPSB3Mi0+bGVuZ3RoOworICAgICAgICAgIHcyID0gdzItPm5leHQ7CisgICAgICAg ICAgaWYgKHcyID09IHcxLT5uZXh0bGluZSkgYnJlYWs7CishICAgICAgICAgKnExKysgPSBMJyAn OworICAgICAgICAgIGlmIChqdXN0ICYmICh3MS0+bmV4dGxpbmUgfHwgbGFzdCkpIHsKKyAgICAg ICAgICAgIHBoYXNlICs9IGV4dHJhOworICAgICAgICAgICAgd2hpbGUgKHBoYXNlID49IG51bWdh cHMpIHsKKyEgICAgICAgICAgICAgKnExKysgPSBMJyAnOworICAgICAgICAgICAgICBwaGFzZSAt PSBudW1nYXBzOworICAgICAgICAgICAgfQorICAgICAgICAgIH0KKyEgICAgICAgICBpZiAoaXNz aGlmdGVkKHcyKSkgKnExKysgPSBMJyAnOworICAgICAgICB9CisgICAgICB9CisgICAgICBxMiAr PSBsaW5lbGVuIC0gYWZmaXg7CishICAgICB3aGlsZSAocTEgPCBxMikgKnExKysgPSBMJyAnOwor ICAgICAgcTIgPSBxMSArIHN1ZmZpeDsKKyEgICAgIGlmICAgICAgKG51bW91dCA8PSBudW1pbikg bWVtY3B5KHExLCBzdWZmaXhlc1tudW1vdXQgLSAxXSwgc3VmZml4ICogc2l6ZW9mKHdjaGFyX3Qp KTsKKyEgICAgIGVsc2UgaWYgKG51bWluICA+ICBoYW5nICkgbWVtY3B5KHExLCBzdWZmaXhlc1tu dW1pbiAgLSAxXSwgc3VmZml4ICogc2l6ZW9mKHdjaGFyX3QpKTsKKyAgICAgIGVsc2UgeworICAg ICAgICBpZiAoZnMgPiBzdWZmaXgpIGZzID0gc3VmZml4OworISAgICAgICBtZW1jcHkocTEsIHN1 ZmZpeGVzW251bWluIC0gMV0sIGZzICogc2l6ZW9mKHdjaGFyX3QpKTsKKyAgICAgICAgcTEgKz0g ZnM7CishICAgICAgIHdoaWxlKHExIDwgcTIpICpxMSsrID0gTCcgJzsKKyAgICAgIH0KKyEgICAg ICpxMiA9IEwnXDAnOworICAgICAgaWYgKHcxKSB3MSA9IHcxLT5uZXh0bGluZTsKKyAgICB9Cisg IAorKioqKioqKioqKioqKioqCisqKiogNTQzLDU0NyAqKioqCistLS0gNTczLDU3OCAtLS0tCisg ICAgICBmcmVlYnVmZmVyKHBidWYpOworICAgIH0KKyAgCisrICAgCisgICAgcmV0dXJuIG91dGxp bmVzOworICB9CitkaWZmIC1jIC4vcmVmb3JtYXQuaCAuLi9QYXIxNTItdW5pY29kZS9yZWZvcm1h dC5oCisqKiogLi9yZWZvcm1hdC5oCTIwMDEtMDMtMDkgMDM6NTM6NDMuMDAwMDAwMDAwICswMzAw CistLS0gLi4vUGFyMTUyLXVuaWNvZGUvcmVmb3JtYXQuaAkyMDE5LTEwLTI2IDE3OjIxOjA4LjU0 OTA1MDg1MyArMDMwMAorKioqKioqKioqKioqKioqCisqKiogMSwxOCAqKioqCishIC8qKioqKioq KioqKioqKioqKioqKiovCishIC8qIHJlZm9ybWF0LmggICAgICAgICovCishIC8qIGZvciBQYXIg MS41MiAgICAgICovCishIC8qIENvcHlyaWdodCAyMDAxIGJ5ICovCishIC8qIEFkYW0gTS4gQ29z dGVsbG8gICovCishIC8qKioqKioqKioqKioqKioqKioqKiovCisgIAorICAvKiBUaGlzIGlzIEFO U0kgQyBjb2RlIChDODkpLiAqLworICAKKyAgCisgICNpbmNsdWRlICJlcnJtc2cuaCIKKyAgCish IAorISBjaGFyICoqcmVmb3JtYXQoCishICAgY29uc3QgY2hhciAqIGNvbnN0ICppbmxpbmVzLCBj b25zdCBjaGFyICogY29uc3QgKmVuZGxpbmUsIGludCBhZnAsIGludCBmcywKKyAgICBpbnQgaGFu ZywgaW50IHByZWZpeCwgaW50IHN1ZmZpeCwgaW50IHdpZHRoLCBpbnQgY2FwLCBpbnQgZml0LCBp bnQgZ3Vlc3MsCisgICAgaW50IGp1c3QsIGludCBsYXN0LCBpbnQgUmVwb3J0LCBpbnQgdG91Y2gs IGVycm1zZ190IGVycm1zZworICApOworLS0tIDEsMjAgLS0tLQorISAvKioqKioqKioqKioqKioq KioqKioqKiovCishIC8qIHJlZm9ybWF0LmggICAgICAgICAgKi8KKyEgLyogZm9yIFBhciAxLjUy LWkxOG4uNCAqLworISAvKiBDb3B5cmlnaHQgMjAwMSBieSAgICovCishIC8qIEFkYW0gTS4gQ29z dGVsbG8gICAgKi8KKyEgLyogTW9kaWZpZWQgYnkgICAgICAgICAqLworISAvKiBKw6lyw7RtZSBQ b3VpbGxlciAgICAgKi8KKyEgLyoqKioqKioqKioqKioqKioqKioqKioqLworICAKKyAgLyogVGhp cyBpcyBBTlNJIEMgY29kZSAoQzg5KS4gKi8KKyAgCisgIAorICAjaW5jbHVkZSAiZXJybXNnLmgi CisrICNpbmNsdWRlIDx3Y2hhci5oPgorICAKKyEgd2NoYXJfdCAqKnJlZm9ybWF0KAorISAgIGNv bnN0IHdjaGFyX3QgKiBjb25zdCAqaW5saW5lcywgY29uc3Qgd2NoYXJfdCAqIGNvbnN0ICplbmRs aW5lLCBpbnQgYWZwLCBpbnQgZnMsCisgICAgaW50IGhhbmcsIGludCBwcmVmaXgsIGludCBzdWZm aXgsIGludCB3aWR0aCwgaW50IGNhcCwgaW50IGZpdCwgaW50IGd1ZXNzLAorICAgIGludCBqdXN0 LCBpbnQgbGFzdCwgaW50IFJlcG9ydCwgaW50IHRvdWNoLCBlcnJtc2dfdCBlcnJtc2cKKyAgKTsK K2RpZmYgLWMgLi9yZWxlYXNlbm90ZXMgLi4vUGFyMTUyLXVuaWNvZGUvcmVsZWFzZW5vdGVzCisq KiogLi9yZWxlYXNlbm90ZXMJMjAwMS0wNC0zMCAwMToxMjowNS4wMDAwMDAwMDAgKzA0MDAKKy0t LSAuLi9QYXIxNTItdW5pY29kZS9yZWxlYXNlbm90ZXMJMjAxOS0xMC0yNiAxNzoyMTowOC41NDkw NTA4NTMgKzAzMDAKKyoqKioqKioqKioqKioqKgorKioqIDEsMTIgKioqKgorISAgICoqKioqKioq KioqKioqKioqKioqKgorISAgICogcmVsZWFzZW5vdGVzICAgICAgKgorISAgICogZm9yIFBhciAx LjUyICAgICAgKgorISAgICogQ29weXJpZ2h0IDIwMDEgYnkgKgorISAgICogQWRhbSBNLiBDb3N0 ZWxsbyAgKgorISAgICoqKioqKioqKioqKioqKioqKioqKgorICAKKyAgCisgIEVhY2ggZW50cnkg YmVsb3cgZGVzY3JpYmVzIGNoYW5nZXMgc2luY2UgdGhlIHByZXZpb3VzIHZlcnNpb24uCisgIAor ICBQYXIgMS41MiByZWxlYXNlZCAyMDAxLUFwci0yOQorICAgICAgRml4ZWQgYSBwb3J0YWJpbGl0 eSBwcm9ibGVtIHJlZ2FyZGluZyB1bnNpZ25lZCBjaGFyIHZlcnN1cyBjaGFyLgorLS0tIDEsMjgg LS0tLQorISAgICoqKioqKioqKioqKioqKioqKioqKioqCishICAgKiByZWxlYXNlbm90ZXMgICAg ICAgICoKKyEgICAqIGZvciBQYXIgMS41Mi1pMThuLjQgKgorISAgICogQ29weXJpZ2h0IDIwMDEg YnkgICAqCishICAgKiBBZGFtIE0uIENvc3RlbGxvICAgICoKKyEgICAqIE1vZGlmaWVkIGJ5ICAg ICAgICAgKgorISAgICogSsOpcsO0bWUgUG91aWxsZXIgICAgICoKKyEgICAqKioqKioqKioqKioq KioqKioqKioqKgorICAKKyAgCisgIEVhY2ggZW50cnkgYmVsb3cgZGVzY3JpYmVzIGNoYW5nZXMg c2luY2UgdGhlIHByZXZpb3VzIHZlcnNpb24uCisrIFBhciAxLjUyLWkxOG4uNCByZWxlYXNlZCAy MDA5LU1heS0wNQorKyAgICAgQ2hhbmdlIG5lYXJseSBhbGwgY2hhciBpbiB3Y2hhcl90IHJlbW92 ZSBuaWdodG1hcmUgb2YgdW5zaWduZWQgY2hhciB2cyBzaWduZWQgY2hhcgorKyAgICAgRml4IGJ1 Z3Mgd2l0aCBvcHRpb24gJ3EnCisrICAgICBGaXggYnVncyB3aXRoICdcbicKKysgCisrIFBhciAx LjUyLWkxOG4uMyByZWxlYXNlZCAyMDA2LU9jdC0wMworKyAgICAgRml4IGJ1ZyB3aXRoIG9wdGlv biAnZycKKysgCisrIFBhciAxLjUyLWkxOG4uMiByZWxlYXNlZCAyMDA2LUF1Zy0wMworKyAgICAg Rml4IGJ1ZyBkZWJpYW4gIzMxMDQ5NS4KKysgCisrIFBhciAxLjUyLWkxOG4uMSByZWxlYXNlZCAy MDA2LUp1bi0yMgorKyAgICAgQ2hhbmdlZCBjaGFyIGluIHdjaGFyX3QuIEFsbG93IHN1cHBvcnQg b2YgbXVsdGlieXRlcyBjaGFyYWN0ZXJzLgorKyAgICAgQWRkZWQgc3VwcG9ydCBmb3IgZG91Ymxl LXdpZHRoIGNoYXJhY3RlcnMuCisgIAorICBQYXIgMS41MiByZWxlYXNlZCAyMDAxLUFwci0yOQor ICAgICAgRml4ZWQgYSBwb3J0YWJpbGl0eSBwcm9ibGVtIHJlZ2FyZGluZyB1bnNpZ25lZCBjaGFy IHZlcnN1cyBjaGFyLgor0J7QsdGJ0LjQtSDQv9C+0LTQutCw0YLQsNC70L7Qs9C4OiAuL3Rlc3Qg 0LggLi4vUGFyMTUyLXVuaWNvZGUvdGVzdApkaWZmIC0tZ2l0IGEvc3JjcGtncy9wYXIvdGVtcGxh dGUgYi9zcmNwa2dzL3Bhci90ZW1wbGF0ZQppbmRleCA1ODVhODg4Nzg0MS4uNTQ3NDcxMjliNzkg MTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvcGFyL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvcGFyL3RlbXBs YXRlCkBAIC0xLDEyICsxLDEyIEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdwYXInCiBwa2duYW1l PXBhcgogdmVyc2lvbj0xLjUyCi1yZXZpc2lvbj0zCityZXZpc2lvbj00CiB3cmtzcmM9UGFyMTUy CiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCiBzaG9ydF9kZXNjPSJQYXJhZ3JhcGggcmVmb3Jt YXR0ZXIiCiBtYWludGFpbmVyPSJMZWFoIE5ldWtpcmNoZW4gPGxlYWhAdnV4dS5vcmc+IgotbGlj ZW5zZT0iY3VzdG9tIgorbGljZW5zZT0iY3VzdG9tOnBhciIKIGhvbWVwYWdlPSJodHRwOi8vd3d3 Lm5pY2VtaWNlLm5ldC9wYXIvIgogZGlzdGZpbGVzPSJodHRwOi8vd3d3Lm5pY2VtaWNlLm5ldC9w YXIvUGFyMTUyLWF1dG9jb25mLnRhci5negogIGh0dHA6Ly93d3cubmljZW1pY2UubmV0L3Bhci9Q YXIxNTIudGFyLmd6IgoKRnJvbSA2NzYyYWQwMjgwZDY4NWU3MDQzNTA0MDg2OGUyZTJjODVlMTJl MjBlIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBNYXRlIEdBQlJJIDxtYXRlLmdhYnJp QHBsYXlocS5jb20+CkRhdGU6IE1vbiwgMjggT2N0IDIwMTkgMTI6MzM6NTAgKzExMDAKU3ViamVj dDogW1BBVENIIDAxOS8xODZdIHNhbWwyYXdzOiB1cGRhdGUgdG8gMi4xOC4wCgotLS0KIHNyY3Br Z3Mvc2FtbDJhd3MvdGVtcGxhdGUgfCAxMyArKysrLS0tLS0tLS0tCiAxIGZpbGUgY2hhbmdlZCwg NCBpbnNlcnRpb25zKCspLCA5IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mvc2Ft bDJhd3MvdGVtcGxhdGUgYi9zcmNwa2dzL3NhbWwyYXdzL3RlbXBsYXRlCmluZGV4IDJmMzA4Yjhl M2EyLi4wY2Y2Yzk3NGYxOSAxMDA2NDQKLS0tIGEvc3JjcGtncy9zYW1sMmF3cy90ZW1wbGF0ZQor KysgYi9zcmNwa2dzL3NhbWwyYXdzL3RlbXBsYXRlCkBAIC0xLDI0ICsxLDE5IEBACiAjIFRlbXBs YXRlIGZpbGUgZm9yICdzYW1sMmF3cycKIHBrZ25hbWU9c2FtbDJhd3MKLXZlcnNpb249Mi4xNy4w Cit2ZXJzaW9uPTIuMTguMAogcmV2aXNpb249MQogYnVpbGRfc3R5bGU9Z28KIGdvX2ltcG9ydF9w YXRoPWdpdGh1Yi5jb20vVmVyc2VudC9zYW1sMmF3cwogZ29fcGFja2FnZT0iJGdvX2ltcG9ydF9w YXRoL2NtZC9zYW1sMmF3cyIKLWhvc3RtYWtlZGVwZW5kcz0iZ2l0IGRlcCIKK2dvX2xkZmxhZ3M9 Ii1YIG1haW4uVmVyc2lvbj0ke3ZlcnNpb259IgoraG9zdG1ha2VkZXBlbmRzPSJnaXQiCiBkZXBl bmRzPSJhd3MtY2xpIgogc2hvcnRfZGVzYz0iR2V0IEFXUyB0ZW1wb3JhcnkgY3JlZGVudGlhbHMg ZnJvbSBTQU1MIHByb3ZpZGVyIgogbWFpbnRhaW5lcj0iTWF0ZSBHQUJSSSA8aWFtQHRoZWd1eS5p bz4iCiBsaWNlbnNlPSJNSVQiCiBob21lcGFnZT0iaHR0cHM6Ly9naXRodWIuY29tL1ZlcnNlbnQv c2FtbDJhd3MiCiBkaXN0ZmlsZXM9Imh0dHBzOi8vZ2l0aHViLmNvbS9WZXJzZW50L3NhbWwyYXdz L2FyY2hpdmUvdiR7dmVyc2lvbn0udGFyLmd6IgotY2hlY2tzdW09ZmQ3YTFlZWZmOTZhZjFjNzhi NjhiY2QxNDczOTY1MDE2Y2MwNzhiNGU1MDk2M2QzOWZkNjlhZDQzMTFlNzA5NAotCi1wcmVfYnVp bGQoKSB7Ci0JY2QgJEdPU1JDUEFUSAotCWRlcCBlbnN1cmUKLQljZCAkd3Jrc3JjCi19CitjaGVj a3N1bT1jZjNiMTk4M2NhOGE5MjY3YjA0YTBmMGE3NjAwMTc3NDlmN2U5OWQ3Mzc5OTk3YWIzNjIz YmVjNzBjNGE0Njk4CiAKIHBvc3RfaW5zdGFsbCgpIHsKIAl2bGljZW5zZSBMSUNFTlNFLm1kCgpG cm9tIGM3Nzc5ZmVkNWIzMzFiMjVlZjZlYzcwOWU5MzBjM2RhM2YxMGFhMGMgTW9uIFNlcCAxNyAw MDowMDowMCAyMDAxCkZyb206IG1vYmlubW9iIDxtb2Jpbm1vYkBkaXNyb290Lm9yZz4KRGF0ZTog U3VuLCAyNyBPY3QgMjAxOSAyMjo1NToyMCArMDIwMApTdWJqZWN0OiBbUEFUQ0ggMDIwLzE4Nl0g a2RlY29ubmVjdDogdXBkYXRlIHRvIDEuMy41LgoKLS0tCiBzcmNwa2dzL2tkZWNvbm5lY3QvdGVt cGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRp b25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9rZGVjb25uZWN0L3RlbXBsYXRlIGIvc3JjcGtn cy9rZGVjb25uZWN0L3RlbXBsYXRlCmluZGV4IDAzZTM5ZmQ1MDIyLi44ZDM3MjNkZDg1OSAxMDA2 NDQKLS0tIGEvc3JjcGtncy9rZGVjb25uZWN0L3RlbXBsYXRlCisrKyBiL3NyY3BrZ3Mva2RlY29u bmVjdC90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2tkZWNv bm5lY3QnCiBwa2duYW1lPWtkZWNvbm5lY3QKLXZlcnNpb249MS4zLjQKK3ZlcnNpb249MS4zLjUK IHJldmlzaW9uPTEKIHdya3NyYz0ia2RlY29ubmVjdC1rZGUtJHt2ZXJzaW9ufSIKIGJ1aWxkX3N0 eWxlPWNtYWtlCkBAIC0xNCw0ICsxNCw0IEBAIG1haW50YWluZXI9Ill1eHVhbiBTaHVpIDx5c2h1 aXY3QGdtYWlsLmNvbT4iCiBsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0 dHBzOi8vZ2l0aHViLmNvbS9LREUva2RlY29ubmVjdC1rZGUiCiBkaXN0ZmlsZXM9Imh0dHBzOi8v Z2l0aHViLmNvbS9LREUva2RlY29ubmVjdC1rZGUvYXJjaGl2ZS92JHt2ZXJzaW9ufS50YXIuZ3oi Ci1jaGVja3N1bT1iMjcxMWY0ZDc0OGRiNWYxYzdjZGZiNTdkMzVhNmRkMGQ2YjVkMmFjMDMxYTAz NGYzM2JjNmVmYzI1ZTJlODNlCitjaGVja3N1bT0wNmI4YjE4ZTVkMTAzMGM5MDA1OTM3ZDc5ZjY3 YjRlYmMzMDMwOWRkN2FmYzg0YWI2NDUwNDg4YTAwZDdhZGViCgpGcm9tIDBjYWRmODg3ODFlYmVk NTdmZmQ3NzlkYmZmOGUwZjRlMzUyM2IyNGQgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206 IENhbWVyb24gTmVtbyA8Y25lbW9AdHV0YW5vdGEuY29tPgpEYXRlOiBTdW4sIDI3IE9jdCAyMDE5 IDEzOjM0OjA1IC0wNzAwClN1YmplY3Q6IFtQQVRDSCAwMjEvMTg2XSBwb2RtYW46IHVwZGF0ZSB0 byAxLjYuMi4KCi0tLQogc3JjcGtncy9wb2RtYW4vdGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBj aGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3Jj cGtncy9wb2RtYW4vdGVtcGxhdGUgYi9zcmNwa2dzL3BvZG1hbi90ZW1wbGF0ZQppbmRleCA4NDIz YTE1M2I0NS4uZTMyZTJiODU2MjkgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvcG9kbWFuL3RlbXBsYXRl CisrKyBiL3NyY3BrZ3MvcG9kbWFuL3RlbXBsYXRlCkBAIC0xLDYgKzEsNiBAQAogIyBUZW1wbGF0 ZSBmaWxlIGZvciAncG9kbWFuJwogcGtnbmFtZT1wb2RtYW4KLXZlcnNpb249MS41LjEKK3ZlcnNp b249MS42LjIKIHJldmlzaW9uPTEKIHdya3NyYz0ibGlicG9kLSR7dmVyc2lvbn0iCiBidWlsZF9z dHlsZT1nbwpAQCAtMTYsNyArMTYsNyBAQCBtYWludGFpbmVyPSJDYW1lcm9uIE5lbW8gPGNhbWVy b250bm9ybWFuQGdtYWlsLmNvbT4iCiBsaWNlbnNlPSJBcGFjaGUtMi4wIgogaG9tZXBhZ2U9Imh0 dHBzOi8vcG9kbWFuLmlvLyIKIGRpc3RmaWxlcz0iaHR0cHM6Ly9naXRodWIuY29tL2NvbnRhaW5l cnMvbGlicG9kL2FyY2hpdmUvdiR7dmVyc2lvbn0udGFyLmd6IgotY2hlY2tzdW09NTY1MTEwMmU4 ZDhmMTViM2RmZGRjODA3MDJkYzkzMTQ5Yjk0ZGUzMzA1MDJkNmRlNmZhZmE3YWZkZGJiZjcwOQor Y2hlY2tzdW09YmUzMWUzNDYzYzdhZTI3MWIwOWEwY2NhNGQ2MjA1YTA1NWVhNTNhNGJkYWMzNDgy YmQwNWY4MjNjOWExZTYwMgogCiBpZiBbICIkQ1JPU1NfQlVJTEQiIF07IHRoZW4KIAlnb19idWls ZF90YWdzKz0iIGNvbnRhaW5lcnNfaW1hZ2Vfb3BlbnBncCBleGNsdWRlX2dyYXBoZHJpdmVyX292 ZXJsYXkiCgpGcm9tIGE2M2I5NzllZTFhZDU0MDY5MWUyNDI3MTRmZmYxZTgxZmU4OGFhZmMgTW9u IFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IENhbWVyb24gTmVtbyA8Y25lbW9AdHV0YW5vdGEu Y29tPgpEYXRlOiBTdW4sIDI3IE9jdCAyMDE5IDEzOjE1OjQwIC0wNzAwClN1YmplY3Q6IFtQQVRD SCAwMjIvMTg2XSBmdXNlLW92ZXJsYXlmczogdXBkYXRlIHRvIDAuNi41LgoKLS0tCiBzcmNwa2dz L2Z1c2Utb3ZlcmxheWZzL3RlbXBsYXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNl cnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZnVzZS1vdmVy bGF5ZnMvdGVtcGxhdGUgYi9zcmNwa2dzL2Z1c2Utb3ZlcmxheWZzL3RlbXBsYXRlCmluZGV4IGQ5 MGY0MTQzOGE1Li4wYjlhYjNhZDIzYSAxMDA2NDQKLS0tIGEvc3JjcGtncy9mdXNlLW92ZXJsYXlm cy90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2Z1c2Utb3ZlcmxheWZzL3RlbXBsYXRlCkBAIC0xLDYg KzEsNiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZnVzZS1vdmVybGF5ZnMnCiBwa2duYW1lPWZ1 c2Utb3ZlcmxheWZzCi12ZXJzaW9uPTAuNi40Cit2ZXJzaW9uPTAuNi41CiByZXZpc2lvbj0xCiBi dWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCiBob3N0bWFrZWRlcGVuZHM9ImF1dG9jb25mIGF1dG9t YWtlIHBrZy1jb25maWciCkBAIC0xMCw3ICsxMCw3IEBAIG1haW50YWluZXI9IkNhbWVyb24gTmVt byA8Y25lbW9AdHV0YW5vdGEuY29tPiIKIGxpY2Vuc2U9IkdQTC0zLjAtb3ItbGF0ZXIiCiBob21l cGFnZT0iaHR0cHM6Ly9naXRodWIuY29tL2NvbnRhaW5lcnMvZnVzZS1vdmVybGF5ZnMiCiBkaXN0 ZmlsZXM9Imh0dHBzOi8vZ2l0aHViLmNvbS9jb250YWluZXJzL2Z1c2Utb3ZlcmxheWZzL2FyY2hp dmUvdiR7dmVyc2lvbn0udGFyLmd6IgotY2hlY2tzdW09ZTk1NTkwY2U3N2NmZmYwNzc3OWI5Nzdm NGU4NDQ1Y2Y4MmM5OTI3MzkxZDIxYzQxZDFjYzI4MzI2YWQwMTMzYQorY2hlY2tzdW09Y2UyZjUw ZGE1MWE3NmFmYmZjMDU2MWQ3ODQwMzhjY2ZiOTJmNjY4M2Q1MmY1MmIxNGQwMzdjYTRmNDkxMDA0 NAogCiBwcmVfY29uZmlndXJlKCkgewogCS4vYXV0b2dlbi5zaAoKRnJvbSA1MzcwZGU2NjllMGNk NzUxZGFiYWRiMzJmZmZiYWE3MWU4NjM2MDJlIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9t OiBxNjYgPGRhbmllbEBvY3RhZm9yZ2Uub3JnPgpEYXRlOiBTdW4sIDI3IE9jdCAyMDE5IDIxOjAw OjE1ICswMTAwClN1YmplY3Q6IFtQQVRDSCAwMjMvMTg2XSBDbHA6IHJlZW5hYmxlIGV2ZXJ5d2hl cmUgYW5kIGRpc2FibGUgQVZYMiB1c2FnZSBvbgogeDg2XzY0CgotLS0KIHNyY3BrZ3MvQ2xwL3Bh dGNoZXMvZGlzYWJsZS1hdngucGF0Y2ggfCA0NiArKysrKysrKysrKysrKysrKysrKysrKysrKysK IHNyY3BrZ3MvQ2xwL3RlbXBsYXRlICAgICAgICAgICAgICAgICAgfCAgNiArLS0tCiAyIGZpbGVz IGNoYW5nZWQsIDQ3IGluc2VydGlvbnMoKyksIDUgZGVsZXRpb25zKC0pCiBjcmVhdGUgbW9kZSAx MDA2NDQgc3JjcGtncy9DbHAvcGF0Y2hlcy9kaXNhYmxlLWF2eC5wYXRjaAoKZGlmZiAtLWdpdCBh L3NyY3BrZ3MvQ2xwL3BhdGNoZXMvZGlzYWJsZS1hdngucGF0Y2ggYi9zcmNwa2dzL0NscC9wYXRj aGVzL2Rpc2FibGUtYXZ4LnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw MDAwLi41M2NkMmUwYmU0MgotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvQ2xwL3BhdGNoZXMv ZGlzYWJsZS1hdngucGF0Y2gKQEAgLTAsMCArMSw0NiBAQAorVGhpcyBkaXNhYmxlcyBBVlgyIHVz YWdlIG9uIHg4Nl82NCAoYnkgZGVmaW5pbmcgTk9fQVZYX0hBUkRXQVJFKSBhcyB3ZWxsIGFzCity ZW1vdmVzIG5vdy11bnVzZWQgaW5jbHVkZXMgZm9yIEFWWDIvQVZYNTEyIGluc3RyaW5zaWNzICh0 aGUgTkVPTiBoZWFkZXIKK3dhcyBuZXZlciB1c2VkIGluIHRoZSBmaXJzdCBwbGFjZSBhbmQgdGhl IHdheSBpdCdzIGluY2x1ZGVkIGlzIGNvbXBsZXRlbHkKK3dyb25nIGFueXdheSkuCisKK1dlIG5l ZWQgaXQgZGlzYWJsZWQgb24geDg2XzY0IGJlY2F1c2Ugd2UncmUgZ2VuZXJpYyAoYW5kIEFWWCBp cyBzYW5keWJyaWRnZQorYW5kIG5ld2VyLCBidXQgdGhlIGVuYWJsZWQgY29kZSB3YXMgZm9yIGhh c3dlbGwgYW5kIG5ld2VyKSwgYW5kIG9uIG90aGVyCithcmNoZXMgaXQncyBkaXNhYmxlZCBmb3Ig b2J2aW91cyByZWFzb25zLgorCistLS0gQ2xwL3NyYy9DbHBQYWNrZWRNYXRyaXguY3BwCisrKysg Q2xwL3NyYy9DbHBQYWNrZWRNYXRyaXguY3BwCitAQCAtNjc0OSwxMSArNjc0OSw2IEBAIENscFBh Y2tlZE1hdHJpeDM6OkNscFBhY2tlZE1hdHJpeDMoKQorIH0KKyAjaWZkZWYgX01TQ19WRVIKKyAj aW5jbHVkZSA8aW50cmluLmg+CistI2VsaWYgZGVmaW5lZChfX2FybV9fKQorLSNpbmNsdWRlIDxh cm1fbmVvbi5oPgorLSNlbHNlCistI2luY2x1ZGUgPGltbWludHJpbi5oPgorLS8vI2luY2x1ZGUg PGZtYWludHJpbi5oPgorICNlbmRpZgorIC8qIENvbnN0cnVjdG9yIGZyb20gY29weS4gKi8KKyBD bHBQYWNrZWRNYXRyaXgzOjpDbHBQYWNrZWRNYXRyaXgzKENscFNpbXBsZXggKm1vZGVsLCBjb25z dCBDb2luUGFja2VkTWF0cml4ICpjb2x1bW5Db3B5KQorQEAgLTY3NzcsNyArNjc3Miw3IEBAIENs cFBhY2tlZE1hdHJpeDM6OkNscFBhY2tlZE1hdHJpeDMoQ2xwU2ltcGxleCAqbW9kZWwsIGNvbnN0 IENvaW5QYWNrZWRNYXRyaXggKmNvCisgeworICAgLy8jdW5kZWYgQ09JTl9BVlgyCisgICAvLyNk ZWZpbmUgQ09JTl9BVlgyIDgKKy0gIC8vI2RlZmluZSBOT19BVlhfSEFSRFdBUkUKKysjZGVmaW5l IE5PX0FWWF9IQVJEV0FSRQorICNpZm5kZWYgQ09JTl9BVlgyCisgI2RlZmluZSBDT0lOX0FWWDIg NAorICNlbHNlCistLS0gQ2xwL3NyYy9DbHBTaW1wbGV4RHVhbC5jcHAKKysrKyBDbHAvc3JjL0Ns cFNpbXBsZXhEdWFsLmNwcAorQEAgLTM1NTYsMTEgKzM1NTYsNiBAQCB2b2lkIG1vdmVBbmRaZXJv KGNscFRlbXBJbmZvICppbmZvLCBpbnQgdHlwZSwgdm9pZCAqZXh0cmEpCisgI2VuZGlmCisgI2lm ZGVmIF9NU0NfVkVSCisgI2luY2x1ZGUgPGludHJpbi5oPgorLSNlbGlmIGRlZmluZWQoX19hcm1f XykKKy0jaW5jbHVkZSA8YXJtX25lb24uaD4KKy0jZWxzZQorLSNpbmNsdWRlIDxpbW1pbnRyaW4u aD4KKy0vLyNpbmNsdWRlIDxmbWFpbnRyaW4uaD4KKyAjZW5kaWYKKyBpbnQgQ2xwU2ltcGxleER1 YWw6OmR1YWxDb2x1bW4wKGNvbnN0IENvaW5JbmRleGVkVmVjdG9yICpyb3dBcnJheSwKKyAgIGNv bnN0IENvaW5JbmRleGVkVmVjdG9yICpjb2x1bW5BcnJheSwKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mv Q2xwL3RlbXBsYXRlIGIvc3JjcGtncy9DbHAvdGVtcGxhdGUKaW5kZXggZWUyM2Y4YjNkZTIuLjVi MmFmNzMzY2EzIDEwMDY0NAotLS0gYS9zcmNwa2dzL0NscC90ZW1wbGF0ZQorKysgYi9zcmNwa2dz L0NscC90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ0NscCcK IHBrZ25hbWU9Q2xwCiB2ZXJzaW9uPTEuMTcuMwotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVp bGRfc3R5bGU9Z251LWNvbmZpZ3VyZQogZGVwZW5kcz0ibGliQ2xwPj0ke3ZlcnNpb259XyR7cmV2 aXNpb259Igogc2hvcnRfZGVzYz0iQ09JTiBMUCBTb2x2ZXIiCkBAIC0xMSwxMCArMTEsNiBAQCBo b21lcGFnZT0iaHR0cDovL3Byb2plY3RzLmNvaW4tb3Iub3JnL0NscCIKIGRpc3RmaWxlcz0iaHR0 cHM6Ly93d3cuY29pbi1vci5vcmcvVGFyYmFsbHMvJHtwa2duYW1lfS8ke3BrZ25hbWV9LSR7dmVy c2lvbn0udGd6IgogY2hlY2tzdW09YTEzYmY1NDI5MWFkNTAzY2Y3NmY1ZjkzZjI2NDNkMmFkZDRm YWE1ZDBlNjBmZjJkYjkwMmVmNzE1YzA5NDU3MwogCi1jYXNlICIkWEJQU19UQVJHRVRfTUFDSElO RSIgaW4KLQlhYXJjaDY0KikgYnJva2VuPSJodHRwczovL3RyYXZpcy1jaS5vcmcvdm9pZC1saW51 eC92b2lkLXBhY2thZ2VzL2pvYnMvNTk2OTk5MTAwIgotZXNhYwotCiBsaWJDbHAtZGV2ZWxfcGFj a2FnZSgpIHsKIAlzaG9ydF9kZXNjKz0iIC0gZGV2ZWxvcG1lbnQgZmlsZXMiCiAJZGVwZW5kcz0i bGliJHtzb3VyY2Vwa2d9Pj0ke3ZlcnNpb259XyR7cmV2aXNpb259IgoKRnJvbSBkNjI2NTNjNGE0 YjU0NmFkYmI0NTNkOGRlMTg4ZDhkYWMwZDk4YzhiIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpG cm9tOiBDYW1lcm9uIE5lbW8gPGNuZW1vQHR1dGFub3RhLmNvbT4KRGF0ZTogU3VuLCAyNyBPY3Qg MjAxOSAxMjoyMzoyNSAtMDcwMApTdWJqZWN0OiBbUEFUQ0ggMDI0LzE4Nl0gc2xpcnA0bmV0bnM6 IHVwZGF0ZSB0byAwLjQuMi4KCi0tLQogc3JjcGtncy9zbGlycDRuZXRucy90ZW1wbGF0ZSB8IDQg KystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRp ZmYgLS1naXQgYS9zcmNwa2dzL3NsaXJwNG5ldG5zL3RlbXBsYXRlIGIvc3JjcGtncy9zbGlycDRu ZXRucy90ZW1wbGF0ZQppbmRleCA1MGFjODU2MDc1YS4uNjIyZTM5ZDdiMWYgMTAwNjQ0Ci0tLSBh L3NyY3BrZ3Mvc2xpcnA0bmV0bnMvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9zbGlycDRuZXRucy90 ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ3NsaXJwNG5ldG5z JwogcGtnbmFtZT1zbGlycDRuZXRucwotdmVyc2lvbj0wLjQuMQordmVyc2lvbj0wLjQuMgogcmV2 aXNpb249MQogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQogaG9zdG1ha2VkZXBlbmRzPSJhdXRv Y29uZiBhdXRvbWFrZSBwa2ctY29uZmlnIgpAQCAtMTAsNyArMTAsNyBAQCBtYWludGFpbmVyPSJD YW1lcm9uIE5lbW8gPGNuZW1vQHR1dGFub3RhLmNvbT4iCiBsaWNlbnNlPSJHUEwtMi4wLW9ubHki CiBob21lcGFnZT0iaHR0cHM6Ly9naXRodWIuY29tL3Jvb3RsZXNzLWNvbnRhaW5lcnMvc2xpcnA0 bmV0bnMiCiBkaXN0ZmlsZXM9Imh0dHBzOi8vZ2l0aHViLmNvbS9yb290bGVzcy1jb250YWluZXJz L3NsaXJwNG5ldG5zL2FyY2hpdmUvdiR7dmVyc2lvbn0udGFyLmd6IgotY2hlY2tzdW09NzVkMmE3 NDExY2MyYjNlMzQxZDg1MzAyMjg3NTBiYjFkYjA2MDc3YjM0OWQxMGZiZGRkYmI1ODJjMjdmOGNm YworY2hlY2tzdW09NWEyMzg5MzBjYzMwNjM4MTVkZjMxYTMyMzc2MzA5OWZhYTBjN2NlN2M3MjFh ZmY5YmJhYjk3NTk3ZmI3ZTBhMAogCiBwcmVfY29uZmlndXJlKCkgewogCS4vYXV0b2dlbi5zaAoK RnJvbSA4ODIwNGJkNjhjYWY4MWU4NWVmYjg0Mzk0ZmMwYmQ3NzY0ODJkYjQ1IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbnRob255IElsaW9wb3Vsb3MgPGFpbGlvcEBhbHRhdHVzLmNv bT4KRGF0ZTogU3VuLCAyNyBPY3QgMjAxOSAxOTo0MToxNyArMDEwMApTdWJqZWN0OiBbUEFUQ0gg MDI1LzE4Nl0gc25hcHBlcjogdXBkYXRlIHRvIDAuOC41LgoKLS0tCiBzcmNwa2dzL3NuYXBwZXIv dGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVs ZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9zbmFwcGVyL3RlbXBsYXRlIGIvc3JjcGtn cy9zbmFwcGVyL3RlbXBsYXRlCmluZGV4IGFmOWUxMTU4NGMxLi5mZGJkZTNjODRhZCAxMDA2NDQK LS0tIGEvc3JjcGtncy9zbmFwcGVyL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3Mvc25hcHBlci90ZW1w bGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ3NuYXBwZXInCiBwa2du YW1lPXNuYXBwZXIKLXZlcnNpb249MC44LjMKK3ZlcnNpb249MC44LjUKIHJldmlzaW9uPTEKIGJ1 aWxkX3N0eWxlPWdudS1jb25maWd1cmUKIGNvbmZpZ3VyZV9hcmdzPSItLWRpc2FibGUtenlwcCAt LXdpdGgtY29uZj0vZXRjL2NvbmYuZCIKQEAgLTE0LDcgKzE0LDcgQEAgbWFpbnRhaW5lcj0iT3Jw aGFuZWQgPG9ycGhhbkB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0yLjAtb25seSIKIGhv bWVwYWdlPSJodHRwOi8vc25hcHBlci5pbyIKIGRpc3RmaWxlcz0iaHR0cHM6Ly9naXRodWIuY29t L29wZW5TVVNFL3NuYXBwZXIvYXJjaGl2ZS92JHt2ZXJzaW9ufS50YXIuZ3oiCi1jaGVja3N1bT1j ZjNiZGZiNTQ2MDU5NmE1M2VjZTllOWY5OThmN2YyYTg3NTlkZjhlMDMyYmM4MDQ4MzMxYTQyNjdj NDNhZTk2CitjaGVja3N1bT1mNzI2OWVlY2E2ZTQwMDYwOWQ1ZmJmNmIyYmVmMTU5NGUyNDgzYTZh MGIwOWIxMDE3NGZkNTgyYjhiMTNlYWQyCiBsaWIzMmRpc2FibGVkPXllcwogCiBjYXNlICIkWEJQ U19UQVJHRVRfTUFDSElORSIgaW4KCkZyb20gYjg1NjYzYmEyMmQ2OWFjMDA2ODZlNDc0ZmEwODli MzdjY2M4Y2ExMCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogQW50aG9ueSBJbGlvcG91 bG9zIDxhaWxpb3BAYWx0YXR1cy5jb20+CkRhdGU6IFN1biwgMjcgT2N0IDIwMTkgMTk6NDE6NTUg KzAxMDAKU3ViamVjdDogW1BBVENIIDAyNi8xODZdIG1wZzEyMzogdXBkYXRlIHRvIDEuMjUuMTMu CgotLS0KIHNyY3BrZ3MvbXBnMTIzL3RlbXBsYXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwg MiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbXBn MTIzL3RlbXBsYXRlIGIvc3JjcGtncy9tcGcxMjMvdGVtcGxhdGUKaW5kZXggMzc5YzhhYzE5MWIu LmU3ZDI1ZGY1Njg3IDEwMDY0NAotLS0gYS9zcmNwa2dzL21wZzEyMy90ZW1wbGF0ZQorKysgYi9z cmNwa2dzL21wZzEyMy90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxhdGUgZmlsZSBm b3IgJ21wZzEyMycKIHBrZ25hbWU9bXBnMTIzCi12ZXJzaW9uPTEuMjUuMTIKK3ZlcnNpb249MS4y NS4xMwogcmV2aXNpb249MQogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQogY29uZmlndXJlX2Fy Z3M9Ii0td2l0aC1vcHRpbWl6YXRpb249MCAtLXdpdGgtZGVmYXVsdC1hdWRpbz1hbHNhCkBAIC0x Miw3ICsxMiw3IEBAIG1haW50YWluZXI9Ik9ycGhhbmVkIDxvcnBoYW5Adm9pZGxpbnV4Lm9yZz4i CiBsaWNlbnNlPSJMR1BMLTIuMS1vbmx5IgogaG9tZXBhZ2U9Imh0dHBzOi8vd3d3Lm1wZzEyMy5v cmcvIgogZGlzdGZpbGVzPSIke1NPVVJDRUZPUkdFX1NJVEV9L21wZzEyMy9tcGcxMjMtJHt2ZXJz aW9ufS50YXIuYnoyIgotY2hlY2tzdW09MWZmZWM3Yzk2ODNkZmI4NmVhOTA0MGQ2YTUzZDZlYTgx OWVjZGRhMjE1ZGYzNDdmNzlkZWYwOGYxZmU3MzFkMQorY2hlY2tzdW09OTAzMDY4NDgzNTljNzkz ZmQ0M2I5OTA2ZTUyMjAxZGYxODc3NTc0MmRjM2M4MWMwNmFiNjdhODA2NTA5ODkwYQogCiBjYXNl ICIkWEJQU19UQVJHRVRfTUFDSElORSIgaW4KIAkjIE5vIExGUyByZXF1aXJlZCB3aXRoIG11c2wK CkZyb20gOTFlMzBlY2EwYThiMjg3OGEzMDliMDE1MGMzMTE1ZGJlNzJiYzNmOCBNb24gU2VwIDE3 IDAwOjAwOjAwIDIwMDEKRnJvbTogQW50aG9ueSBJbGlvcG91bG9zIDxhaWxpb3BAYWx0YXR1cy5j b20+CkRhdGU6IFN1biwgMjcgT2N0IDIwMTkgMTk6NDI6NDAgKzAxMDAKU3ViamVjdDogW1BBVENI IDAyNy8xODZdIGxpYm1pY3JvaHR0cGQ6IHVwZGF0ZSB0byAwLjkuNjguCgotLS0KIHNyY3BrZ3Mv bGlibWljcm9odHRwZC90ZW1wbGF0ZSB8IDQgKystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0 aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2xpYm1pY3JvaHR0 cGQvdGVtcGxhdGUgYi9zcmNwa2dzL2xpYm1pY3JvaHR0cGQvdGVtcGxhdGUKaW5kZXggMDJhZTkz NjU2N2QuLjIyZGEyODM0YWJiIDEwMDY0NAotLS0gYS9zcmNwa2dzL2xpYm1pY3JvaHR0cGQvdGVt cGxhdGUKKysrIGIvc3JjcGtncy9saWJtaWNyb2h0dHBkL3RlbXBsYXRlCkBAIC0xLDYgKzEsNiBA QAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnbGlibWljcm9odHRwZCcKIHBrZ25hbWU9bGlibWljcm9o dHRwZAotdmVyc2lvbj0wLjkuNjcKK3ZlcnNpb249MC45LjY4CiByZXZpc2lvbj0xCiBidWlsZF9z dHlsZT1nbnUtY29uZmlndXJlCiBtYWtlZGVwZW5kcz0ibGliZ2NyeXB0LWRldmVsIGdudXRscy1k ZXZlbCBsaWJjdXJsLWRldmVsIgpAQCAtOSw3ICs5LDcgQEAgbWFpbnRhaW5lcj0iT3JwaGFuZWQg PG9ycGhhbkB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkxHUEwtMi4xLW9yLWxhdGVyIgogaG9t ZXBhZ2U9Imh0dHBzOi8vd3d3LmdudS5vcmcvc29mdHdhcmUvbGlibWljcm9odHRwZC8iCiBkaXN0 ZmlsZXM9IiR7R05VX1NJVEV9L2xpYm1pY3JvaHR0cGQvJHtwa2duYW1lfS0ke3ZlcnNpb259LnRh ci5neiIKLWNoZWNrc3VtPTdlMWY4NTI3MjNkMDk5ZDQ4MjdkN2ViZGU0ZDAyZGQwMGZkOGRhNjIx NDk1MjZmZGI5ZmFlMDU4YzVhNjA0OTUKK2NoZWNrc3VtPWM1NzE2ZTJhMjg5OWFiYzllMTZjOGZh N2ExYTU4ZGE4OGY4MWFjYTk2YTBiN2U2OGE1ZDRkODllMjE2MTBiNjEKIAogTERGTEFHUz0iIC1s Z251dGxzIgogCgpGcm9tIDgxNDk1NjA1ZWM5NDJkZTljYzQ0OWIwOWNhMGUwNzM1YjQyMGExYTQg TW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IGJlcnRyb25pa2EgPG5lamNAYmVydG9uY2Vs ai5ldS5vcmc+CkRhdGU6IFN1biwgMjcgT2N0IDIwMTkgMTg6MzM6MTMgKzAxMDAKU3ViamVjdDog W1BBVENIIDAyOC8xODZdIG1pbmltb2RlbTogY2hhbmdlZCBtYWludGFpbmVyIGFkZHJlc3MKCi0t LQogc3JjcGtncy9taW5pbW9kZW0vdGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAy IGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9taW5p bW9kZW0vdGVtcGxhdGUgYi9zcmNwa2dzL21pbmltb2RlbS90ZW1wbGF0ZQppbmRleCA2ZTBkMWI2 YWVlOC4uN2U4ODJiYThmOTEgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvbWluaW1vZGVtL3RlbXBsYXRl CisrKyBiL3NyY3BrZ3MvbWluaW1vZGVtL3RlbXBsYXRlCkBAIC02LDggKzYsOCBAQCBidWlsZF9z dHlsZT1nbnUtY29uZmlndXJlCiBob3N0bWFrZWRlcGVuZHM9InBrZy1jb25maWciCiBtYWtlZGVw ZW5kcz0iZmZ0dy1kZXZlbCBhbHNhLWxpYi1kZXZlbCBsaWJzbmRmaWxlLWRldmVsIHB1bHNlYXVk aW8tZGV2ZWwiCiBzaG9ydF9kZXNjPSJHZW5lcmF0ZSBvciBkZWNvZGUgbW9kZW0gdG9uZXMgdXNp bmcgdmFyaW91cyBGU0sgcHJvdG9jb2xzIgotbWFpbnRhaW5lcj0iTmVqYyBCZXJ0b25jZWxqIDxu ZWpjYmVAd2luZG93c2xpdmUuY29tPiIKK21haW50YWluZXI9ImJlcnRyb25pa2EgPG5lamNAYmVy dG9uY2Vsai5ldS5vcmc+IgogbGljZW5zZT0iR1BMLTMuMC1vci1sYXRlciIKIGhvbWVwYWdlPSJo dHRwOi8vd3d3LndoZW5jZS5jb20vbWluaW1vZGVtIgotZGlzdGZpbGVzPSJodHRwOi8vd3d3Lndo ZW5jZS5jb20vbWluaW1vZGVtL21pbmltb2RlbS0ke3ZlcnNpb259LnRhci5neiIKK2Rpc3RmaWxl cz0iJHtob21lcGFnZX0vJHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci5neiIKIGNoZWNrc3VtPWY4 Y2NhNGRiOGUzZjI4NGQ2N2Y4NDMwNTRkNmJiNGQ4OGEzZGI1ZTc3YjI2MTkyNDEwZTQxZTlhMDZm NDM3OGUKCkZyb20gYWY5NDVjNTM2ZTBjYTc1OGQ1MzQ2MmNhZWMwYjQ5NTA2YzViZGFkZSBNb24g U2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogQW5kcmV3IEJlbnNvbiA8YWJlbnNvbit2b2lkQGdt YWlsLmNvbT4KRGF0ZTogU3VuLCAyNyBPY3QgMjAxOSAxMjo1MDozMyAtMDUwMApTdWJqZWN0OiBb UEFUQ0ggMDI5LzE4Nl0genBzOiB1cGRhdGUgdG8gMS4yLjAuCgotLS0KIHNyY3BrZ3MvenBzL3Rl bXBsYXRlIHwgNiArKystLS0KIDEgZmlsZSBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDMgZGVs ZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy96cHMvdGVtcGxhdGUgYi9zcmNwa2dzL3pw cy90ZW1wbGF0ZQppbmRleCAyYzYyOTlhYTY0Ni4uZTY3Mzg5MTNlZWQgMTAwNjQ0Ci0tLSBhL3Ny Y3BrZ3MvenBzL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvenBzL3RlbXBsYXRlCkBAIC0xLDExICsx LDExIEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICd6cHMnCiBwa2duYW1lPXpwcwotdmVyc2lvbj0x LjEuMAordmVyc2lvbj0xLjIuMAogcmV2aXNpb249MQogYnVpbGRfc3R5bGU9Y21ha2UKIHNob3J0 X2Rlc2M9IlNtYWxsIHV0aWxpdHkgZm9yIGxpc3RpbmcgYW5kIHJlYXBpbmcgem9tYmllIHByb2Nl c3NlcyIKLW1haW50YWluZXI9IkFuZHJldyBCZW5zb24gPGFiZW5zb25AZ21haWwuY29tPiIKK21h aW50YWluZXI9IkFuZHJldyBCZW5zb24gPGFiZW5zb24rdm9pZEBnbWFpbC5jb20+IgogbGljZW5z ZT0iR1BMLTMuMC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL2dpdGh1Yi5jb20vb3JodW4v enBzIgogZGlzdGZpbGVzPSIke2hvbWVwYWdlfS9hcmNoaXZlLyR7dmVyc2lvbn0udGFyLmd6Igot Y2hlY2tzdW09MWM3OWI1NDk1Zjc2MjRhYjhmMTYwYmVlZGRmOTMwNWUzZjYxZjBlNzdmOTliZDlm MWE4MmU1MzBiNGU3ZmEzNgorY2hlY2tzdW09NjM0NzQyMmM4ODMwNjUzNDlhMjRiYWZiZTM5Y2Ri MWU4MjkzYTkyYTQ0MDIwMTVmM2FlMWRiZDI2YjgxNzYyMQoKRnJvbSBhNWMwN2UyNzliMTI5YmM1 NTJkZTJkOWQ3ZDlkMDEzNTMxYzE0ZTczIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiA9 P1VURi04P3E/SmFuPTIwQ2hyaXN0aWFuPTIwR3I9QzM9QkNuaGFnZT89CiA8amFuLmNocmlzdGlh bkBncnVlbmhhZ2UueHl6PgpEYXRlOiBTdW4sIDI3IE9jdCAyMDE5IDEyOjI5OjUzICswMTAwClN1 YmplY3Q6IFtQQVRDSCAwMzAvMTg2XSB0b3BncmFkZTogdXBkYXRlIHRvIDMuMi4wLgoKLS0tCiBz cmNwa2dzL3RvcGdyYWRlL3RlbXBsYXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNl cnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvdG9wZ3JhZGUv dGVtcGxhdGUgYi9zcmNwa2dzL3RvcGdyYWRlL3RlbXBsYXRlCmluZGV4IGEwM2MzY2ZmNjA5Li42 ZmJlNWY4MWIwNCAxMDA2NDQKLS0tIGEvc3JjcGtncy90b3BncmFkZS90ZW1wbGF0ZQorKysgYi9z cmNwa2dzL3RvcGdyYWRlL3RlbXBsYXRlCkBAIC0xLDYgKzEsNiBAQAogIyBUZW1wbGF0ZSBmaWxl IGZvciAndG9wZ3JhZGUnCiBwa2duYW1lPXRvcGdyYWRlCi12ZXJzaW9uPTMuMS4wCit2ZXJzaW9u PTMuMi4wCiByZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1jYXJnbwogc2hvcnRfZGVzYz0iTWV0YSB1 cGdyYWRlIHRvb2wgZm9yIHBpcCwgZmxhdHBhaywgeW91ciBkaXN0cm8gYW5kIGV2ZXJ5dGhpbmcg ZWxzZSIKQEAgLTgsNCArOCw0IEBAIG1haW50YWluZXI9ImpjZ3J1ZW5oYWdlIDxqYW4uY2hyaXN0 aWFuQGdydWVuaGFnZS54eXo+IgogbGljZW5zZT0iR1BMLTMuMC1vbmx5IgogaG9tZXBhZ2U9Imh0 dHBzOi8vZ2l0aHViLmNvbS9yLWRhcndpc2gvdG9wZ3JhZGUiCiBkaXN0ZmlsZXM9Imh0dHBzOi8v Z2l0aHViLmNvbS9yLWRhcndpc2gvdG9wZ3JhZGUvYXJjaGl2ZS92JHt2ZXJzaW9ufS50YXIuZ3oi Ci1jaGVja3N1bT04MDFiZWMxOGJmM2I5ZmQzZGZhOWY4MzQzODY0ZTEwZGQ0N2VkYWU4YTFkODZh MTg2ZDljMzNhNzdhZjI2MDhjCitjaGVja3N1bT0yZTMzNmYzY2U1NjI5N2EyZWI3YzIyNWJjOTA1 YTNiMWUyNzVkNjRjN2RiNzJlNjhkODA4MzQ5NzhhMzA0ZWJkCgpGcm9tIGQ2ZWFlM2E4MDE4ZjU3 YzA5YWQ2OGMxMTI2ZDE1MWE2YzZmYmQxOGQgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206 IHRlbGRyYSA8dGVsZHJhQHJvdGNlLmRlPgpEYXRlOiBTdW4sIDI3IE9jdCAyMDE5IDA5OjA0OjEz ICswMTAwClN1YmplY3Q6IFtQQVRDSCAwMzEvMTg2XSBwb3J0YWdlOiB1cGRhdGUgdG8gMi4zLjc4 CgotLS0KIHNyY3BrZ3MvcG9ydGFnZS90ZW1wbGF0ZSB8IDQgKystLQogMSBmaWxlIGNoYW5nZWQs IDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3Bv cnRhZ2UvdGVtcGxhdGUgYi9zcmNwa2dzL3BvcnRhZ2UvdGVtcGxhdGUKaW5kZXggYjBmMzQ3MzEw MzUuLjJlYmVkNjVmYjNjIDEwMDY0NAotLS0gYS9zcmNwa2dzL3BvcnRhZ2UvdGVtcGxhdGUKKysr IGIvc3JjcGtncy9wb3J0YWdlL3RlbXBsYXRlCkBAIC0xLDYgKzEsNiBAQAogIyBUZW1wbGF0ZSBm aWxlIGZvciAncG9ydGFnZScKIHBrZ25hbWU9cG9ydGFnZQotdmVyc2lvbj0yLjMuNzcKK3ZlcnNp b249Mi4zLjc4CiByZXZpc2lvbj0xCiB3cmtzcmM9IiR7cGtnbmFtZX0tJHtwa2duYW1lfS0ke3Zl cnNpb259IgogYnVpbGRfc3R5bGU9cHl0aG9uMy1tb2R1bGUKQEAgLTEzLDcgKzEzLDcgQEAgbWFp bnRhaW5lcj0idGVsZHJhIDx0ZWxkcmFAcm90Y2UuZGU+IgogbGljZW5zZT0iR1BMLTIuMC1vbmx5 IgogaG9tZXBhZ2U9Imh0dHBzOi8vd2lraS5nZW50b28ub3JnL3dpa2kvUG9ydGFnZSIKIGRpc3Rm aWxlcz0iaHR0cHM6Ly9naXRodWIuY29tL2dlbnRvby8ke3BrZ25hbWV9L2FyY2hpdmUvJHtwa2du YW1lfS0ke3ZlcnNpb259LnRhci5neiIKLWNoZWNrc3VtPTAzYThmNTk1YmJjYTMxNDk3Njc4ODEw OTM0Mjg2YmI1YTNhNzEzNzhjMTI0ZmM5MzU0NDRjYTAxNjVmM2E2ZmMKK2NoZWNrc3VtPTFmY2Vj MDdjODhkMGM3ZmYxODdkM2U0MWY2OTdiMzhmYmE0YTU1M2I2NTA0ODJkMGM3MzVmNzhiNGVlZTQ0 MzAKIAogY29uZl9maWxlcz0iCiAJL2V0Yy9kaXNwYXRjaC1jb25mLmNvbmYKCkZyb20gOTJiMGMw YzlmZWUwZWIzMTA4MGM4ZWM3NDAyN2E2YjRiNmFmZGEzZiBNb24gU2VwIDE3IDAwOjAwOjAwIDIw MDEKRnJvbTogPT9VVEYtOD9xP0JlbmphbT1DMz1BRG49MjBBbGJpPUMzPUIxYW5hPz0gPGJlbmFs YkBnbWFpbC5jb20+CkRhdGU6IFN1biwgMjcgT2N0IDIwMTkgMDg6MzU6NDQgKzAxMDAKU3ViamVj dDogW1BBVENIIDAzMi8xODZdIHBhcGlydXMtZm9sZGVyczogdXBkYXRlIHRvIDEuNS4wCgotLS0K IHNyY3BrZ3MvcGFwaXJ1cy1mb2xkZXJzL3RlbXBsYXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdl ZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mv cGFwaXJ1cy1mb2xkZXJzL3RlbXBsYXRlIGIvc3JjcGtncy9wYXBpcnVzLWZvbGRlcnMvdGVtcGxh dGUKaW5kZXggZDcyNDM1ZWMxMDAuLmQyZjYxYTE3MWY4IDEwMDY0NAotLS0gYS9zcmNwa2dzL3Bh cGlydXMtZm9sZGVycy90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3BhcGlydXMtZm9sZGVycy90ZW1w bGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ3BhcGlydXMtZm9sZGVy cycKIHBrZ25hbWU9cGFwaXJ1cy1mb2xkZXJzCi12ZXJzaW9uPTEuNC4wCit2ZXJzaW9uPTEuNS4w CiByZXZpc2lvbj0xCiBhcmNocz1ub2FyY2gKIGJ1aWxkX3N0eWxlPWdudS1tYWtlZmlsZQpAQCAt MTAsNyArMTAsNyBAQCBtYWludGFpbmVyPSJCZW5qYW3DrW4gQWxiacOxYW5hIDxiZW5hbGJAZ21h aWwuY29tPiIKIGxpY2Vuc2U9Ik1JVCIKIGhvbWVwYWdlPSJodHRwczovL2dpdGh1Yi5jb20vUGFw aXJ1c0RldmVsb3BtZW50VGVhbS9wYXBpcnVzLWZvbGRlcnMiCiBkaXN0ZmlsZXM9Imh0dHBzOi8v Z2l0aHViLmNvbS9QYXBpcnVzRGV2ZWxvcG1lbnRUZWFtL3BhcGlydXMtZm9sZGVycy9hcmNoaXZl L3Yke3ZlcnNpb259LnRhci5neiIKLWNoZWNrc3VtPWFmNGY4ZDIxY2ExMGQyMTE2NDUyZDIyMWVk ZGI0YzQzYWNkNDQyOGU2NWNiMWM0MjFiYzg5NTBjYzQ5MjcxMDgKK2NoZWNrc3VtPTg1ODgyN2Rj NWQyNTBiNmEwOTUwZGVlMDdjOTliODIyYzQzZjM3ZWFjMDg3OTBkZGZlY2ZjODkxYmY2MmFkN2MK IAogcG9zdF9pbnN0YWxsKCkgewogCXZsaWNlbnNlIExJQ0VOU0UKCkZyb20gY2Q2NTQ5NWU0MWU3 NTc0MGIxOGI2YjY2MzM5YzdkMmVlYzkzZGJjMiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJv bTogRHVuY2FlbiA8ZHVuY2FlbkB2b2lkbGludXgub3JnPgpEYXRlOiBNb24sIDI4IE9jdCAyMDE5 IDEyOjMyOjIyICswMTAwClN1YmplY3Q6IFtQQVRDSCAwMzMvMTg2XSBsb2dzd2FuOiB1cGRhdGUg dG8gMi4xLjAuCgotLS0KIHNyY3BrZ3MvbG9nc3dhbi9wYXRjaGVzL3NlY2NvbXAucGF0Y2ggfCAy MSArKysrKysrKysrKysrKysrKysrKysKIHNyY3BrZ3MvbG9nc3dhbi90ZW1wbGF0ZSAgICAgICAg ICAgICAgfCAgNSArKystLQogMiBmaWxlcyBjaGFuZ2VkLCAyNCBpbnNlcnRpb25zKCspLCAyIGRl bGV0aW9ucygtKQogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvbG9nc3dhbi9wYXRjaGVzL3Nl Y2NvbXAucGF0Y2gKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2xvZ3N3YW4vcGF0Y2hlcy9zZWNjb21w LnBhdGNoIGIvc3JjcGtncy9sb2dzd2FuL3BhdGNoZXMvc2VjY29tcC5wYXRjaApuZXcgZmlsZSBt b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMC4uMGE0ZDcyMzVkOGQKLS0tIC9kZXYvbnVsbAor KysgYi9zcmNwa2dzL2xvZ3N3YW4vcGF0Y2hlcy9zZWNjb21wLnBhdGNoCkBAIC0wLDAgKzEsMjEg QEAKKy0tLSBzcmMvc2VjY29tcC5oLm9yaWcKKysrKyBzcmMvc2VjY29tcC5oCitAQCAtMzcsMTEg KzM3LDE4IEBACisgCUJQRl9TVE1UKEJQRl9SRVQrQlBGX0ssIFNFQ0NPTVBfUkVUX0FMTE9XKSwK KyAJQlBGX0pVTVAoQlBGX0pNUCtCUEZfSkVRK0JQRl9LLCBTWVNfbHNlZWssIDAsIDEpLAorIAlC UEZfU1RNVChCUEZfUkVUK0JQRl9LLCBTRUNDT01QX1JFVF9BTExPVyksCisrI2lmZGVmIFNZU19v cGVuCisgCUJQRl9KVU1QKEJQRl9KTVArQlBGX0pFUStCUEZfSywgU1lTX29wZW4sIDAsIDEpLAor KyNlbmRpZgorIAlCUEZfU1RNVChCUEZfUkVUK0JQRl9LLCBTRUNDT01QX1JFVF9BTExPVyksCisg CUJQRl9KVU1QKEJQRl9KTVArQlBGX0pFUStCUEZfSywgU1lTX29wZW5hdCwgMCwgMSksCisgCUJQ Rl9TVE1UKEJQRl9SRVQrQlBGX0ssIFNFQ0NPTVBfUkVUX0FMTE9XKSwKKysjaWZkZWYgU1lTX21t YXAKKyAJQlBGX0pVTVAoQlBGX0pNUCtCUEZfSkVRK0JQRl9LLCBTWVNfbW1hcCwgMCwgMSksCisr I2VuZGlmCisrI2lmZGVmIFNZU19tbWFwMgorKwlCUEZfSlVNUChCUEZfSk1QK0JQRl9KRVErQlBG X0ssIFNZU19tbWFwMiwgMCwgMSksCisrI2VuZGlmCisgCUJQRl9TVE1UKEJQRl9SRVQrQlBGX0ss IFNFQ0NPTVBfUkVUX0FMTE9XKSwKKyAJQlBGX0pVTVAoQlBGX0pNUCtCUEZfSkVRK0JQRl9LLCBT WVNfbXVubWFwLCAwLCAxKSwKKyAJQlBGX1NUTVQoQlBGX1JFVCtCUEZfSywgU0VDQ09NUF9SRVRf QUxMT1cpLApkaWZmIC0tZ2l0IGEvc3JjcGtncy9sb2dzd2FuL3RlbXBsYXRlIGIvc3JjcGtncy9s b2dzd2FuL3RlbXBsYXRlCmluZGV4IDFiYTAwNmE5YzNiLi5kNmFmYWFmZWY0OCAxMDA2NDQKLS0t IGEvc3JjcGtncy9sb2dzd2FuL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvbG9nc3dhbi90ZW1wbGF0 ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2xvZ3N3YW4nCiBwa2duYW1l PWxvZ3N3YW4KLXZlcnNpb249Mi4wLjQKK3ZlcnNpb249Mi4xLjAKIHJldmlzaW9uPTEKIGJ1aWxk X3N0eWxlPWNtYWtlCiBtYWtlZGVwZW5kcz0iamFuc3Nvbi1kZXZlbCBsaWJtYXhtaW5kZGItZGV2 ZWwiCkBAIC04LDggKzgsOSBAQCBzaG9ydF9kZXNjPSJGYXN0IFdlYiBsb2cgYW5hbHl6ZXIgdXNp bmcgcHJvYmFiaWxpc3RpYyBkYXRhIHN0cnVjdHVyZXMiCiBtYWludGFpbmVyPSJEdW5jYWVuIDxk dW5jYWVuQHZvaWRsaW51eC5vcmc+IgogbGljZW5zZT0iQlNELTItY2xhdXNlIgogaG9tZXBhZ2U9 Imh0dHBzOi8vd3d3LmxvZ3N3YW4ub3JnLyIKK2NoYW5nZWxvZz0iaHR0cHM6Ly9naXRodWIuY29t L2ZjYW1idXMvbG9nc3dhbi9yYXcvbWFzdGVyL0NoYW5nZUxvZyIKIGRpc3RmaWxlcz0iaHR0cHM6 Ly9naXRodWIuY29tL2ZjYW1idXMvbG9nc3dhbi9hcmNoaXZlLyR7dmVyc2lvbn0udGFyLmd6Igot Y2hlY2tzdW09Y2IxZWVjZmQ2MzhlNTU5MmNhYmIzYWI0ZDk3YTFjNTdhODhjYTRlZjg2MWE2YjY3 Mzg4ZmM4N2ZiNmE5YWYxNQorY2hlY2tzdW09YzE0ODYxOTU2MTRjNjNjYzQyMzg1OTczZDRlODlh YjljMTNmNzdmNDA4YjQwYjhhNTg5YmU0MWZkYTM0MGJlMwogCiBwb3N0X2luc3RhbGwoKSB7CiAJ dmxpY2Vuc2UgTElDRU5TRQoKRnJvbSBjNDI1NzE3NDNiNjA4MTZmMzg1Nzc1NmU5OTUwOTc5MmQy MWE2OGQxIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBBbnRob255IElsaW9wb3Vsb3Mg PGFpbGlvcEBhbHRhdHVzLmNvbT4KRGF0ZTogU3VuLCAyNyBPY3QgMjAxOSAxOTo0MzoxMyArMDEw MApTdWJqZWN0OiBbUEFUQ0ggMDM0LzE4Nl0gZXVkZXY6IHVwZGF0ZSB0byAzLjIuOS4KCi0tLQog c3JjcGtncy9ldWRldi90ZW1wbGF0ZSB8IDggKysrKy0tLS0KIDEgZmlsZSBjaGFuZ2VkLCA0IGlu c2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9ldWRldi90 ZW1wbGF0ZSBiL3NyY3BrZ3MvZXVkZXYvdGVtcGxhdGUKaW5kZXggOThjYjMxMzYzZTMuLjQyZWY2 MzY5YjA2IDEwMDY0NAotLS0gYS9zcmNwa2dzL2V1ZGV2L3RlbXBsYXRlCisrKyBiL3NyY3BrZ3Mv ZXVkZXYvdGVtcGxhdGUKQEAgLTEsMTAgKzEsMTAgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2V1 ZGV2JwogCi1fVURFVl9WRVJTSU9OPSIyMjgiICMgY29tcGF0aWJsZSB1ZGV2IHZlcnNpb24gcHJv dmlkZWQKK19VREVWX1ZFUlNJT049IjI0MyIgIyBjb21wYXRpYmxlIHVkZXYgdmVyc2lvbiBwcm92 aWRlZAogCiBwa2duYW1lPWV1ZGV2Ci12ZXJzaW9uPTMuMi44Ci1yZXZpc2lvbj0yCit2ZXJzaW9u PTMuMi45CityZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCiBjb25maWd1cmVf YXJncz0iLS1lbmFibGUtaHdkYiAtLWVuYWJsZS1tYW5wYWdlcyAtLWRpc2FibGUtaW50cm9zcGVj dGlvbiIKIGhvc3RtYWtlZGVwZW5kcz0iYXV0b21ha2UgbGlidG9vbCBwa2ctY29uZmlnIGdwZXJm IGxpYnhzbHQgZG9jYm9vay14c2wiCkBAIC0xNCw3ICsxNCw3IEBAIG1haW50YWluZXI9IkVubm8g Qm9sYW5kIDxnb3R0b3hAdm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVy IgogaG9tZXBhZ2U9Imh0dHBzOi8vZ2l0aHViLmNvbS9nZW50b28vZXVkZXYiCiBkaXN0ZmlsZXM9 Imh0dHBzOi8vZ2l0aHViLmNvbS9nZW50b28vZXVkZXYvYXJjaGl2ZS92JHt2ZXJzaW9ufS50YXIu Z3oiCi1jaGVja3N1bT01NjQ4ZDQ0OTU4YzgyZmZkZDFhMjQ3YTdhYmQ2MDJhMDE4ZGU0OWE3Y2Iw NjUzYmI3NGQ5M2UyZjEyMjBhYWE2CitjaGVja3N1bT03ZDI4MTI3NmI0ODBkYTM5MzVkMWFjYjIz OTc0OGMyYzlkYjAxYTgwNDNhYWQ3ZTkxOGNlNTdhMjIzZDhjZDI0CiBjb25mX2ZpbGVzPSIvZXRj L3VkZXYvdWRldi5jb25mIgogCiBwcmVfY29uZmlndXJlKCkgewoKRnJvbSBmNjk0MDNhYzc5Y2Mw OWFmZDhiZjJkNWE3MTNmYjU5YTUyMzFhYzdjIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9t OiBDbHl5YmJlciA8ZGFya21pbmU5NTZAZ21haWwuY29tPgpEYXRlOiBNb24sIDI4IE9jdCAyMDE5 IDEyOjU1OjA4ICswMTAwClN1YmplY3Q6IFtQQVRDSCAwMzUvMTg2XSBxdHJhY3RvcjogdXBkYXRl IHRvIDAuOS4xMC4KCi0tLQogc3JjcGtncy9xdHJhY3Rvci90ZW1wbGF0ZSB8IDcgKysrLS0tLQog MSBmaWxlIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKCmRpZmYgLS1n aXQgYS9zcmNwa2dzL3F0cmFjdG9yL3RlbXBsYXRlIGIvc3JjcGtncy9xdHJhY3Rvci90ZW1wbGF0 ZQppbmRleCA0M2RjZmU2ZmRkMC4uMWI3YThmYWZkZjMgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvcXRy YWN0b3IvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9xdHJhY3Rvci90ZW1wbGF0ZQpAQCAtMSw3ICsx LDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ3F0cmFjdG9yJwogcGtnbmFtZT1xdHJhY3Rvcgot dmVyc2lvbj0wLjkuNwotcmV2aXNpb249MgordmVyc2lvbj0wLjkuMTAKK3JldmlzaW9uPTEKIHdy a3NyYz0icXRyYWN0b3ItcXRyYWN0b3JfJHt2ZXJzaW9uLy8uL199IgogYnVpbGRfc3R5bGU9Z251 LWNvbmZpZ3VyZQogY29uZmlndXJlX2FyZ3M9Ii0tZW5hYmxlLWRlYnVnIgpAQCAtMTYsNyArMTYs NyBAQCBsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHA6Ly9xdHJhY3Rv ci5vcmciCiBjaGFuZ2Vsb2c9Imh0dHBzOi8vcmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbS9ybmNi Yy9xdHJhY3Rvci9tYXN0ZXIvQ2hhbmdlTG9nIgogZGlzdGZpbGVzPSJodHRwczovL2dpdGh1Yi5j b20vcm5jYmMvcXRyYWN0b3IvYXJjaGl2ZS9xdHJhY3Rvcl8ke3ZlcnNpb24vLy4vX30udGFyLmd6 IgotY2hlY2tzdW09YTU5MDBmZWZhZTMzMGFkYzUyZjY2NTAyYjAzY2Y3ZmNiNTY1NDRmMTg0MjA2 OGYyMGU4NDBkOTI2YTMyZDhlZAorY2hlY2tzdW09YjUxYzI4MTJkYTI1ZDdkMjFiYzMxN2NmODE2 NDIwMGRjOTY3Y2Q3MjU5N2Y3MzQwNzZmNjcyZGM1OWQzOGRjNwogCiAjIGNvbmZpZ3VyZSBmYWls cyB0byBmaW5kIHF0NSBoZWFkZXJzCiBub2Nyb3NzPSJodHRwczovL2J1aWxkLnZvaWRsaW51eC5v cmcvYnVpbGRlcnMvYXJtdjdsLW11c2xfYnVpbGRlci9idWlsZHMvMzQ1OC9zdGVwcy9zaGVsbF8z L2xvZ3Mvc3RkaW8iCkBAIC0yNCw0ICsyNCwzIEBAIG5vY3Jvc3M9Imh0dHBzOi8vYnVpbGQudm9p ZGxpbnV4Lm9yZy9idWlsZGVycy9hcm12N2wtbXVzbF9idWlsZGVyL2J1aWxkcy8zNDU4L3N0CiBw cmVfY29uZmlndXJlKCkgewogCWF1dG9yZWNvbmYgLWlmCiB9Ci0KCkZyb20gMGI0ZGE5ZDQyMDJm MTRhNzBlNGRjM2M3NzE1OWZmNTg2NjY5MWEwYSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJv bTogUm9iZXJ0IExvd3J5IDxib2JlcnRsb0BnbWFpbC5jb20+CkRhdGU6IE1vbiwgMjggT2N0IDIw MTkgMDQ6NTc6MTkgKzAwMDAKU3ViamVjdDogW1BBVENIIDAzNi8xODZdIE5ldyBwYWNrYWdlOiBk aXN0cm9idWlsZGVyLTEuMAoKLS0tCiBzcmNwa2dzL2Rpc3Ryb2J1aWxkZXIvdGVtcGxhdGUgfCAx NiArKysrKysrKysrKysrKysrCiAxIGZpbGUgY2hhbmdlZCwgMTYgaW5zZXJ0aW9ucygrKQogY3Jl YXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvZGlzdHJvYnVpbGRlci90ZW1wbGF0ZQoKZGlmZiAtLWdp dCBhL3NyY3BrZ3MvZGlzdHJvYnVpbGRlci90ZW1wbGF0ZSBiL3NyY3BrZ3MvZGlzdHJvYnVpbGRl ci90ZW1wbGF0ZQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMC4uZmM3OTE5 ZWFiMDEKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL2Rpc3Ryb2J1aWxkZXIvdGVtcGxhdGUK QEAgLTAsMCArMSwxNiBAQAorIyBUZW1wbGF0ZSBmaWxlIGZvciAnZGlzdHJvYnVpbGRlcicKK3Br Z25hbWU9ZGlzdHJvYnVpbGRlcgordmVyc2lvbj0xLjAKK3JldmlzaW9uPTEKK3dya3NyYz0iZGlz dHJvYnVpbGRlci1kaXN0cm9idWlsZGVyLSR7dmVyc2lvbn0iCitidWlsZF9zdHlsZT1nbworZ29f aW1wb3J0X3BhdGg9ImdpdGh1Yi5jb20vbHhjL2Rpc3Ryb2J1aWxkZXIiCitnb19wYWNrYWdlPSJn aXRodWIuY29tL2x4Yy9kaXN0cm9idWlsZGVyL2Rpc3Ryb2J1aWxkZXIiCitob3N0bWFrZWRlcGVu ZHM9ImdpdCIKK2RlcGVuZHM9ImRlYm9vdHN0cmFwIGdudXBnIHNxdWFzaGZzLXRvb2xzIgorc2hv cnRfZGVzYz0iU3lzdGVtIGNvbnRhaW5lciBpbWFnZSBidWlsZGVyIGZvciBMWEMgYW5kIExYRCIK K21haW50YWluZXI9IlJvYmVydCBMb3dyeSA8Ym9iZXJ0bG9AZ21haWwuY29tPiIKK2xpY2Vuc2U9 IkFwYWNoZS0yLjAiCitob21lcGFnZT0iaHR0cHM6Ly9saW51eGNvbnRhaW5lcnMub3JnL2Rpc3Ry b2J1aWxkZXIvaW50cm9kdWN0aW9uLyIKK2Rpc3RmaWxlcz0iaHR0cHM6Ly9naXRodWIuY29tL2x4 Yy9kaXN0cm9idWlsZGVyL2FyY2hpdmUvZGlzdHJvYnVpbGRlci0ke3ZlcnNpb259LnRhci5neiIK K2NoZWNrc3VtPWU4YTliYzVkOGRkN2ZkNDhiZGQyNDQ0MDc2OTdkNGExMjY1ZDU1YmI2MjhhZDYy YjgyNDA2NmJkMjM5OTlhY2YKCkZyb20gNmZhZjJiZmM0NDI1YTI3NDQxYTBmMTU2NTBjMDBkNDFi MDM4MDM5NSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogQU4zMjIzIDxldGhhbnIyMDQ4 QGdtYWlsLmNvbT4KRGF0ZTogU2F0LCAyNiBPY3QgMjAxOSAxMTo1ODo0OSAtMDUwMApTdWJqZWN0 OiBbUEFUQ0ggMDM3LzE4Nl0gTmV3IHBhY2thZ2U6IGNhc3RnZXQtMi4wLjEKCi0tLQogc3JjcGtn cy9jYXN0Z2V0L3RlbXBsYXRlIHwgMTMgKysrKysrKysrKysrKwogMSBmaWxlIGNoYW5nZWQsIDEz IGluc2VydGlvbnMoKykKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL2Nhc3RnZXQvdGVtcGxh dGUKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2Nhc3RnZXQvdGVtcGxhdGUgYi9zcmNwa2dzL2Nhc3Rn ZXQvdGVtcGxhdGUKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAuLjdiNDhj ZTMyNGFlCi0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9jYXN0Z2V0L3RlbXBsYXRlCkBAIC0w LDAgKzEsMTMgQEAKKyMgVGVtcGxhdGUgZmlsZSBmb3IgJ2Nhc3RnZXQnCitwa2duYW1lPWNhc3Rn ZXQKK3ZlcnNpb249Mi4wLjEKK3JldmlzaW9uPTEKK2J1aWxkX3N0eWxlPWdudS1jb25maWd1cmUK K2hvc3RtYWtlZGVwZW5kcz0icGtnLWNvbmZpZyIKK21ha2VkZXBlbmRzPSJnbGliLWRldmVsIGxp YnhtbDItZGV2ZWwgbGliY3VybC1kZXZlbCBpZDNsaWItZGV2ZWwiCitzaG9ydF9kZXNjPSJTaW1w bGUgY29tbWFuZC1saW5lIFJTUyBlbmNsb3N1cmUgZG93bmxvYWRlciIKK21haW50YWluZXI9IkFO MzIyMyA8ZXRoYW5yMjA0OEBnbWFpbC5jb20+IgorbGljZW5zZT0iTEdQTC0yLjEtb3ItbGF0ZXIi Citob21lcGFnZT0iaHR0cHM6Ly9jYXN0Z2V0LmpvaG5kYWwuY29tLyIKK2Rpc3RmaWxlcz0iJHtO T05HTlVfU0lURX0vJHtwa2duYW1lfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLmJ6MiIKK2No ZWNrc3VtPTQzOGI1ZjdlYzdlMzFhNDVlZDM3NTY2MzBmZTQ0N2Y0MjAxNWFjZGE1M2VjMDkyMDJm NDg2Mjg3MjZiNWU4NzUKCkZyb20gMDg3ZTlmYzE5ZDUzOWU5MmZmYjhjYTgwNjk4NDQwMDk0ZDBh Yzg0MCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogQW50aG9ueSBJbGlvcG91bG9zIDxh aWxpb3BAYWx0YXR1cy5jb20+CkRhdGU6IE1vbiwgMjggT2N0IDIwMTkgMTQ6NDg6NDAgKzAxMDAK U3ViamVjdDogW1BBVENIIDAzOC8xODZdIGxpYnhsczogdXBkYXRlIHRvIDEuNS4yLgoKLS0tCiBz cmNwa2dzL2xpYnhscy90ZW1wbGF0ZSB8IDYgKysrLS0tCiAxIGZpbGUgY2hhbmdlZCwgMyBpbnNl cnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbGlieGxzL3Rl bXBsYXRlIGIvc3JjcGtncy9saWJ4bHMvdGVtcGxhdGUKaW5kZXggYzUwNTExYjU1NjQuLmRjMjJh OTAxZmJiIDEwMDY0NAotLS0gYS9zcmNwa2dzL2xpYnhscy90ZW1wbGF0ZQorKysgYi9zcmNwa2dz L2xpYnhscy90ZW1wbGF0ZQpAQCAtMSwxNSArMSwxNSBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAn bGlieGxzJwogcGtnbmFtZT1saWJ4bHMKLXZlcnNpb249MS41LjEKK3ZlcnNpb249MS41LjIKIHJl dmlzaW9uPTEKIGJ1aWxkX3N0eWxlPWdudS1jb25maWd1cmUKIGNvbmZpZ3VyZV9hcmdzPSItLXBy b2dyYW0tcHJlZml4PWxpYiAtLWVuYWJsZS1zdGF0aWMiCiBzaG9ydF9kZXNjPSJDIGxpYnJhcnkg d2hpY2ggY2FuIHJlYWQgRXhjZWwgKHhscykgZmlsZXMiCiBtYWludGFpbmVyPSJMZWFoIE5ldWtp cmNoZW4gPGxlYWhAdnV4dS5vcmc+IgotbGljZW5zZT0iQlNELTItY2xhdXNlIgorbGljZW5zZT0i QlNELTItQ2xhdXNlIgogaG9tZXBhZ2U9Imh0dHBzOi8vZ2l0aHViLmNvbS9saWJ4bHMvbGlieGxz IgogZGlzdGZpbGVzPSJodHRwczovL2dpdGh1Yi5jb20vbGlieGxzL2xpYnhscy9yZWxlYXNlcy9k b3dubG9hZC92JHt2ZXJzaW9ufS9saWJ4bHMtJHt2ZXJzaW9ufS50YXIuZ3oiCi1jaGVja3N1bT0z YmM4ODUwMTUyOWNlMzkwOTQ1N2ZlZGZjNWNjNmM4YzVhOGFhYWFiMTdjYTVjYmJmYWQzMTdiNjFl NDY1NTM1CitjaGVja3N1bT04ZDdlNTJkOTZjY2M2YzQ5OGU1ZGU3OGMxOTg4ZDk4MzhkOTE0ZWVl Yjk0YWM2MDIwODM3ODM0MGJkNmU2YWFhCiAKIHBvc3RfaW5zdGFsbCgpIHsKIAlzZWQgJy9eJC9x JyBpbmNsdWRlL3hscy5oID5MSUNFTlNFCgpGcm9tIDg2MjhlY2ZmYzYyYWVkNmMyYzk4N2E3NTEw MDI1YjMxOGUyOTNhNDMgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IEFuZHJldyBCZW5z b24gPGFiZW5zb24rdm9pZEBnbWFpbC5jb20+CkRhdGU6IE1vbiwgMjggT2N0IDIwMTkgMDk6MjQ6 MTMgLTA1MDAKU3ViamVjdDogW1BBVENIIDAzOS8xODZdIHdpbmU6IHVwZGF0ZSB0byA0LjE4LgoK LS0tCiBzcmNwa2dzL3dpbmUvdGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGlu c2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy93aW5lL3Rl bXBsYXRlIGIvc3JjcGtncy93aW5lL3RlbXBsYXRlCmluZGV4IDFkZjQyYjRmNDgxLi43OTI1ODlh NjY0NiAxMDA2NDQKLS0tIGEvc3JjcGtncy93aW5lL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3Mvd2lu ZS90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ3dpbmUnCiBw a2duYW1lPXdpbmUKLXZlcnNpb249NC4xNwordmVyc2lvbj00LjE4CiByZXZpc2lvbj0xCiBidWls ZF9zdHlsZT1nbnUtY29uZmlndXJlCiBjb25maWd1cmVfYXJncz0iLS13aXRob3V0LWdzdHJlYW1l ciIKQEAgLTksNyArOSw3IEBAIG1haW50YWluZXI9IkFuZHJlYSBCcmFuY2FsZW9uaSA8YWJjQHBv bXBlbC5tZT4iCiBsaWNlbnNlPSJMR1BMLTIuMS1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwOi8v d3d3LndpbmVocS5vcmcvIgogZGlzdGZpbGVzPSJodHRwczovL2RsLndpbmVocS5vcmcvd2luZS9z b3VyY2UvJHt2ZXJzaW9uJSUuKn0ueC93aW5lLSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09 NzQ4MGExNDM2Njg3NDg2OTk2YmE2Y2Y5MWZlZjcxYjcwZTZkYWZmZmJmMmM1NWVhMjQzMDA5NGMx MDI1YjJhZQorY2hlY2tzdW09ZDEwYjA1NTAyMTVmNzg5NjU1YTFjNjdkYjkxYThhZmMwYjQyODQ0 MTZiYWUxODY5Mzk2ZjA2ZTJkYjM2MGUzMgogCiBub3BpZV9maWxlcz0iL3Vzci9iaW4vd2luZSIK IAoKRnJvbSA5OGUwYjA1MDJjZDY1MmEwZDc1ODRiZDYyYWVlODhkOGYzYmRhOGI4IE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBBbmFjaHJvbiA8Z2l0aEBjcm9uLndvcmxkPgpEYXRlOiBG cmksIDExIE9jdCAyMDE5IDExOjUwOjA4ICswMjAwClN1YmplY3Q6IFtQQVRDSCAwNDAvMTg2XSBo ZWRnZXdhcnM6IHVwZGF0ZSB0byAxLjAuMAoKLS0tCiBzcmNwa2dzL2hlZGdld2Fycy90ZW1wbGF0 ZSB8IDE3ICsrKysrKysrKysrKysrLS0tCiAxIGZpbGUgY2hhbmdlZCwgMTQgaW5zZXJ0aW9ucygr KSwgMyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2hlZGdld2Fycy90ZW1wbGF0 ZSBiL3NyY3BrZ3MvaGVkZ2V3YXJzL3RlbXBsYXRlCmluZGV4IGFjZjBhMGY5MTQxLi44MGQ3MjU4 NTUyYiAxMDA2NDQKLS0tIGEvc3JjcGtncy9oZWRnZXdhcnMvdGVtcGxhdGUKKysrIGIvc3JjcGtn cy9oZWRnZXdhcnMvdGVtcGxhdGUKQEAgLTEsNiArMSw2IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9y ICdoZWRnZXdhcnMnCiBwa2duYW1lPWhlZGdld2FycwotdmVyc2lvbj0wLjkuMjUKK3ZlcnNpb249 MS4wLjAKIHJldmlzaW9uPTEKIHdya3NyYz0iJHtwa2duYW1lfS1zcmMtJHt2ZXJzaW9ufSIKIGJ1 aWxkX3N0eWxlPWNtYWtlCkBAIC0xNSw3ICsxNSw3IEBAIG1haW50YWluZXI9Ikpha3ViIFNrcnp5 cG5payA8am90LnNrcnp5cEBnbWFpbC5jb20+IgogbGljZW5zZT0iR1BMLTIuMC1vbmx5IgogaG9t ZXBhZ2U9Imh0dHBzOi8vd3d3LmhlZGdld2Fycy5vcmcvIgogZGlzdGZpbGVzPSJodHRwczovL2hl ZGdld2Fycy5vcmcvZG93bmxvYWQvcmVsZWFzZXMvaGVkZ2V3YXJzLXNyYy0ke3ZlcnNpb259LnRh ci5iejIiCi1jaGVja3N1bT0wN2RjNTI3ZGJjOTBkZGRlYTg5NGY1MThhYWRkNjdhYTJlZWJiMTk3 Mzg3MzlhN2MxYmQ3ZmQxZTYwOGUxYzZlCitjaGVja3N1bT0yMTE2MzRlNjFmMmU0YmVlY2MzYzk4 YzZmNzQ5NjAxZmNkMDgzMjFmZGExYmE5NjliM2IzODMyYTAwNGYxNTViCiBub3BpZV9maWxlcz0i L3Vzci9iaW4vaHdlbmdpbmUiCiBub2Nyb3NzPSJOZWVkcyBpbnZlc3RpZ2F0aW9uOiBmYWlscyB0 byBsaW5rIGh3ZW5naW5lIgogCkBAIC0yNSwxMiArMjUsMjMgQEAgZmkKIAogY2FzZSAkWEJQU19U QVJHRVRfTUFDSElORSBpbgogCSMgZm9yY2VzIHVzYWdlIG9mIEMgZW5naW5lIGFuZCBnaGMgZHVl IHRvIGEgMzIgYml0IGZyZWVwYXNjYWwgYnVnCisJIyBodHRwczovL3RyYXZpcy1jaS5vcmcvdm9p ZC1saW51eC92b2lkLXBhY2thZ2VzL2pvYnMvNTk2NDU4OTc3I0w0MzE2CiAJaTY4NiopCi0JCWhv c3RtYWtlZGVwZW5kcys9IiBnbGV3LWRldmVsIGdoYyIKKwkJaG9zdG1ha2VkZXBlbmRzKz0iIGds ZXctZGV2ZWwgZ2hjIGxpYmF0b21pYy1kZXZlbCIKIAkJbm9waWVfZmlsZXMrPSIgL3Vzci9iaW4v aGVkZ2V3YXJzIgogCQk7OwogZXNhYwogCitwcmVfY29uZmlndXJlKCkgeworCSMgcmVtb3ZlIG9w dGlvbiBub3Qgc3VwcG9ydGVkIGJ5IGNsYW5nCisJY2FzZSAkWEJQU19UQVJHRVRfTUFDSElORSBp bgorCWk2ODYqKQorCQlDRkxBR1M9JHtDRkxBR1MvLWZzdGFjay1jbGFzaC1wcm90ZWN0aW9uL30K KwkJQ1hYRkxBR1M9JHtDWFhGTEFHUy8tZnN0YWNrLWNsYXNoLXByb3RlY3Rpb24vfQorCQk7Owor CWVzYWMKK30KKwogcG9zdF9pbnN0YWxsKCkgewogCXZpbnN0YWxsICR7REVTVERJUn0vdXNyL3No YXJlL2hlZGdld2Fycy9EYXRhL21pc2MvaGVkZ2V3YXJzLmRlc2t0b3AgNjQ0IHVzci9zaGFyZS9h cHBsaWNhdGlvbnMKIH0KCkZyb20gNDJhODI4YjMzZWQ2Yjk4MjVjZmJkYjM0NTY2NDJkYjg1OTI5 MjY1YiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogbW9iaW5tb2IgPG1vYmlubW9iQGRp c3Jvb3Qub3JnPgpEYXRlOiBNb24sIDI4IE9jdCAyMDE5IDIwOjA3OjI2ICswMjAwClN1YmplY3Q6 IFtQQVRDSCAwNDEvMTg2XSBmZnNlbmQ6IHVwZGF0ZSB0byAwLjIuNTQuCgotLS0KIHNyY3BrZ3Mv ZmZzZW5kL3RlbXBsYXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCsp LCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZmZzZW5kL3RlbXBsYXRlIGIv c3JjcGtncy9mZnNlbmQvdGVtcGxhdGUKaW5kZXggM2I5YWY1NDAyYTIuLmI0YjNlNGMwYjhiIDEw MDY0NAotLS0gYS9zcmNwa2dzL2Zmc2VuZC90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2Zmc2VuZC90 ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2Zmc2VuZCcKIHBr Z25hbWU9ZmZzZW5kCi12ZXJzaW9uPTAuMi41MgordmVyc2lvbj0wLjIuNTQKIHJldmlzaW9uPTEK IGJ1aWxkX3N0eWxlPWNhcmdvCiBob3N0bWFrZWRlcGVuZHM9InBrZy1jb25maWciCkBAIC0xMCw0 ICsxMCw0IEBAIG1haW50YWluZXI9Ikphc3BlciBDaGFuIDxqYXNwZXJjaGFuNTE1QGdtYWlsLmNv bT4iCiBsaWNlbnNlPSJHUEwtMy4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vZ2l0aHVi LmNvbS90aW12aXNlZS9mZnNlbmQiCiBkaXN0ZmlsZXM9Imh0dHBzOi8vZ2l0aHViLmNvbS90aW12 aXNlZS9mZnNlbmQvYXJjaGl2ZS92JHt2ZXJzaW9ufS50YXIuZ3oiCi1jaGVja3N1bT1iNWZkOTM3 NjA0ZWVjY2Q4NWQ3YjMwZDg1MTA3ODRkOTU0OTdjMjQxMmRhMjljNTg2NDMwMjc1ZGI1NTA0M2Vm CitjaGVja3N1bT0xMGE4OWQ3OTc2MTJlYWFkYzFmYzkyZDVhZjczZjVmMzJmYzM3ZWIyNTlhOTI1 OWYxNjIwNjg3MzQwZWM0NDc5CgpGcm9tIDk0ZDczNGQ5M2YzN2U1NWIxZGEzOWU2MmY0MzY1NTUy YjQzYTNiOWYgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IHE2NiA8ZGFuaWVsQG9jdGFm b3JnZS5vcmc+CkRhdGU6IE1vbiwgMjEgT2N0IDIwMTkgMTk6NDA6MTEgKzAyMDAKU3ViamVjdDog W1BBVENIIDA0Mi8xODZdIHhicHM6IHVwZGF0ZSB0byAwLjU3LjEKCi0tLQogc3JjcGtncy94YnBz L3BhdGNoZXMvNDQ2OTJmMjhkOC5wYXRjaCAgICAgICAgfCAyMiAtLS0tLS0tLQogc3JjcGtncy94 YnBzL3BhdGNoZXMvNTZhZTE5MC5wYXRjaCAgICAgICAgICAgfCAzMCAtLS0tLS0tLS0tLQogc3Jj cGtncy94YnBzL3BhdGNoZXMvN2I3MjhmNWFjLnBhdGNoICAgICAgICAgfCAyMiAtLS0tLS0tLQog c3JjcGtncy94YnBzL3BhdGNoZXMvODNhYTQ4NmY2YmEwNDkzOTkucGF0Y2ggfCA1NiAtLS0tLS0t LS0tLS0tLS0tLS0tLQogc3JjcGtncy94YnBzL3BhdGNoZXMvYmI5NjQ4NmIxMjcucGF0Y2ggICAg ICAgfCAzMyAtLS0tLS0tLS0tLS0KIHNyY3BrZ3MveGJwcy9wYXRjaGVzL2Q3MjA5MWEyMC5wYXRj aCAgICAgICAgIHwgMTggLS0tLS0tLQogc3JjcGtncy94YnBzL3BhdGNoZXMvZml4LW1pc3Npbmct c2gucGF0Y2ggICAgfCAzMCAtLS0tLS0tLS0tLQogc3JjcGtncy94YnBzL3BhdGNoZXMvc2VyaWVz ICAgICAgICAgICAgICAgICAgfCAgNiAtLS0KIHNyY3BrZ3MveGJwcy90ZW1wbGF0ZSAgICAgICAg ICAgICAgICAgICAgICAgIHwgIDYgKy0tCiA5IGZpbGVzIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygr KSwgMjIwIGRlbGV0aW9ucygtKQogZGVsZXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MveGJwcy9wYXRj aGVzLzQ0NjkyZjI4ZDgucGF0Y2gKIGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3hicHMvcGF0 Y2hlcy81NmFlMTkwLnBhdGNoCiBkZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtncy94YnBzL3BhdGNo ZXMvN2I3MjhmNWFjLnBhdGNoCiBkZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtncy94YnBzL3BhdGNo ZXMvODNhYTQ4NmY2YmEwNDkzOTkucGF0Y2gKIGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3hi cHMvcGF0Y2hlcy9iYjk2NDg2YjEyNy5wYXRjaAogZGVsZXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3Mv eGJwcy9wYXRjaGVzL2Q3MjA5MWEyMC5wYXRjaAogZGVsZXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3Mv eGJwcy9wYXRjaGVzL2ZpeC1taXNzaW5nLXNoLnBhdGNoCiBkZWxldGUgbW9kZSAxMDA2NDQgc3Jj cGtncy94YnBzL3BhdGNoZXMvc2VyaWVzCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy94YnBzL3BhdGNo ZXMvNDQ2OTJmMjhkOC5wYXRjaCBiL3NyY3BrZ3MveGJwcy9wYXRjaGVzLzQ0NjkyZjI4ZDgucGF0 Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGZkZmU1NmVjN2Q4Li4wMDAwMDAwMDAw MAotLS0gYS9zcmNwa2dzL3hicHMvcGF0Y2hlcy80NDY5MmYyOGQ4LnBhdGNoCisrKyAvZGV2L251 bGwKQEAgLTEsMjIgKzAsMCBAQAotY29tbWl0IDQ0NjkyZjI4ZDg1OTcyOGZiOTE5YTVkNzM2YWRh ODI2MDYxOTZmNzUKLUF1dGhvcjogSm9oYW5uZXMgQnJlY2h0bWFubiA8am9oYW5uZXNAam5ici5t ZT4KLURhdGU6ICAgV2VkIEp1biAyNiAyMjo1MTo0MSAyMDE5ICswMjAwCi0KLSAgICBiaW4veGJw cy1pbnN0YWxsOiB1cGRhdGVfcGtnIHJldHVybiBFRVhJU1QgaWYgcGFja2FnZSBpcyB1cCB0byBk YXRlCi0gICAgCi0gICAgbWFrZXMgNTg1MDk5OTZhYWJlYTUyZmZjNDBlNWUwMWM5ZWIwMDczMGM2 Y2RjYyB3b3JrIGZvcgotICAgIHhicHMtaW5zdGFsbCAtdSA8cGtnPgotCi1kaWZmIC0tZ2l0IGEv YmluL3hicHMtaW5zdGFsbC90cmFuc2FjdGlvbi5jIGIvYmluL3hicHMtaW5zdGFsbC90cmFuc2Fj dGlvbi5jCi1pbmRleCBjZGNjOTJkNy4uZmM1NTM4YmIgMTAwNjQ0Ci0tLS0gYmluL3hicHMtaW5z dGFsbC90cmFuc2FjdGlvbi5jCi0rKysgYmluL3hicHMtaW5zdGFsbC90cmFuc2FjdGlvbi5jCi1A QCAtMjg2LDcgKzI4Niw3IEBAIHVwZGF0ZV9wa2coc3RydWN0IHhicHNfaGFuZGxlICp4aHAsIGNv bnN0IGNoYXIgKnBrZ25hbWUpCi0gCXJ2ID0geGJwc190cmFuc2FjdGlvbl91cGRhdGVfcGtnKHho cCwgcGtnbmFtZSk7Ci0gCWlmIChydiA9PSBFRVhJU1QpIHsKLSAJCXByaW50ZigiUGFja2FnZSAn JXMnIGlzIHVwIHRvIGRhdGUuXG4iLCBwa2duYW1lKTsKLS0JCXJldHVybiAwOwotKwkJcmV0dXJu IEVFWElTVDsKLSAJfSBlbHNlIGlmIChydiA9PSBFTk9FTlQpCi0gCQlmcHJpbnRmKHN0ZGVyciwg IlBhY2thZ2UgJyVzJyBub3QgZm91bmQgaW4gIgotIAkJICAgICJyZXBvc2l0b3J5IHBvb2wuXG4i LCBwa2duYW1lKTsKZGlmZiAtLWdpdCBhL3NyY3BrZ3MveGJwcy9wYXRjaGVzLzU2YWUxOTAucGF0 Y2ggYi9zcmNwa2dzL3hicHMvcGF0Y2hlcy81NmFlMTkwLnBhdGNoCmRlbGV0ZWQgZmlsZSBtb2Rl IDEwMDY0NAppbmRleCAwMjJjNzE2NmIwNC4uMDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtncy94YnBz L3BhdGNoZXMvNTZhZTE5MC5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDMwICswLDAgQEAKLWNv bW1pdCA1NmFlMTkwN2I5ZDU4ODkxMGE1ZTQ3MTJmZGFhNTc4NGMxNjQxZjE0Ci1BdXRob3I6IER1 bmNhbiBPdmVyYnJ1Y2sgPG1haWxAZHVuY2Fuby5kZT4KLURhdGU6ICAgVHVlIEF1ZyAxMyAxMjo1 MzowMSAyMDE5ICswMjAwCi0KLSAgICBsaWIvcGFja2FnZV9hbHRlcm5hdGl2ZXMuYzogY2hlY2sg aWYgYWx0ZXJuYXRpdmUgaXMgYSBzeW1saW5rIGJlZm9yZSByZW1vdmluZyBpdAotCi1kaWZmIC0t Z2l0IGxpYi9wYWNrYWdlX2FsdGVybmF0aXZlcy5jIGxpYi9wYWNrYWdlX2FsdGVybmF0aXZlcy5j Ci1pbmRleCA5YjRkMDAyNy4uNWU0ZjJiMzYgMTAwNjQ0Ci0tLS0gbGliL3BhY2thZ2VfYWx0ZXJu YXRpdmVzLmMKLSsrKyBsaWIvcGFja2FnZV9hbHRlcm5hdGl2ZXMuYwotQEAgLTExMSw2ICsxMTEs NyBAQCBzdGF0aWMgaW50Ci0gcmVtb3ZlX3N5bWxpbmtzKHN0cnVjdCB4YnBzX2hhbmRsZSAqeGhw LCB4YnBzX2FycmF5X3QgYSwgY29uc3QgY2hhciAqZ3JuYW1lKQotIHsKLSAJdW5zaWduZWQgaW50 IGksIGNudDsKLSsJc3RydWN0IHN0YXQgc3Q7Ci0gCi0gCWNudCA9IHhicHNfYXJyYXlfY291bnQo YSk7Ci0gCWZvciAoaSA9IDA7IGkgPCBjbnQ7IGkrKykgewotQEAgLTEzMiw2ICsxMzMsMTEgQEAg cmVtb3ZlX3N5bWxpbmtzKHN0cnVjdCB4YnBzX2hhbmRsZSAqeGhwLCB4YnBzX2FycmF5X3QgYSwg Y29uc3QgY2hhciAqZ3JuYW1lKQotIAkJfSBlbHNlIHsKLSAJCQlsbmsgPSB4YnBzX3hhc3ByaW50 ZigiJXMlcyIsIHhocC0+cm9vdGRpciwgbCk7Ci0gCQl9Ci0rCQlpZiAobHN0YXQobG5rLCAmc3Qp ID09IC0xIHx8ICFTX0lTTE5LKHN0LnN0X21vZGUpKSB7Ci0rCQkJZnJlZShsbmspOwotKwkJCWZy ZWUobCk7Ci0rCQkJY29udGludWU7Ci0rCQl9Ci0gCQl4YnBzX3NldF9jYl9zdGF0ZSh4aHAsIFhC UFNfU1RBVEVfQUxUR1JPVVBfTElOS19SRU1PVkVELCAwLCBOVUxMLAotIAkJICAgICJSZW1vdmlu ZyAnJXMnIGFsdGVybmF0aXZlcyBncm91cCBzeW1saW5rOiAlcyIsIGdybmFtZSwgbCk7Ci0gCQl1 bmxpbmsobG5rKTsKZGlmZiAtLWdpdCBhL3NyY3BrZ3MveGJwcy9wYXRjaGVzLzdiNzI4ZjVhYy5w YXRjaCBiL3NyY3BrZ3MveGJwcy9wYXRjaGVzLzdiNzI4ZjVhYy5wYXRjaApkZWxldGVkIGZpbGUg bW9kZSAxMDA2NDQKaW5kZXggNzMxMGRkZDYwOWQuLjAwMDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3Mv eGJwcy9wYXRjaGVzLzdiNzI4ZjVhYy5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDIyICswLDAg QEAKLUZyb20gN2I3MjhmNWFjMGFkYzI4ZjNkNzI3MGMyNmUxNGVjZmY3M2E3ZjE2ZiBNb24gU2Vw IDE3IDAwOjAwOjAwIDIwMDEKLUZyb206IER1bmNhZW4gPG1haWxAZHVuY2Fuby5kZT4KLURhdGU6 IFdlZCwgMjYgSnVuIDIwMTkgMjI6MjQ6NDcgKzAyMDAKLVN1YmplY3Q6IFtQQVRDSF0gYmluL3hi cHMtcmVtb3ZlOiBmaXggc2tpcHBpbmcgZXhlY3V0aW5nIG9ycGhhbnMgdHJhbnNhY3Rpb24KLQot LS0tCi0gYmluL3hicHMtcmVtb3ZlL21haW4uYyB8IDIgKy0KLSAxIGZpbGUgY2hhbmdlZCwgMSBp bnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKLQotZGlmZiAtLWdpdCBhL2Jpbi94YnBzLXJlbW92 ZS9tYWluLmMgYi9iaW4veGJwcy1yZW1vdmUvbWFpbi5jCi1pbmRleCAxZWYzMjhhOC4uNGZmOTQz YzAgMTAwNjQ0Ci0tLS0gYmluL3hicHMtcmVtb3ZlL21haW4uYwotKysrIGJpbi94YnBzLXJlbW92 ZS9tYWluLmMKLUBAIC0yOTUsNyArMjk1LDcgQEAgbWFpbihpbnQgYXJnYywgY2hhciAqKmFyZ3Yp Ci0gCQkJZXhpdChydik7Ci0gCQl9Ci0gCX0KLS0JaWYgKG1pc3NpbmcgPT0gYXJnYykgewotKwlp ZiAoIW9ycGhhbnMgJiYgbWlzc2luZyA9PSBhcmdjKSB7Ci0gCQlnb3RvIG91dDsKLSAJfQotIAlp ZiAob3JwaGFucyB8fCAoYXJnYyA+IG9wdGluZCkpIHsKZGlmZiAtLWdpdCBhL3NyY3BrZ3MveGJw cy9wYXRjaGVzLzgzYWE0ODZmNmJhMDQ5Mzk5LnBhdGNoIGIvc3JjcGtncy94YnBzL3BhdGNoZXMv ODNhYTQ4NmY2YmEwNDkzOTkucGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDEy Yzk1NzVkOGMyLi4wMDAwMDAwMDAwMAotLS0gYS9zcmNwa2dzL3hicHMvcGF0Y2hlcy84M2FhNDg2 ZjZiYTA0OTM5OS5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDU2ICswLDAgQEAKLWNvbW1pdCA4 M2FhNDg2ZjZiYTA0OTM5OWU0NTdjMzRiZTIzYTdhNDM1ZjgzY2ViCi1BdXRob3I6IEp1YW4gUlAg PHh0cmFlbWVAZ21haWwuY29tPgotRGF0ZTogICBUdWUgSnVuIDI1IDEwOjMyOjAyIDIwMTkgKzAy MDAKLQotICAgIHhicHMtcmVtb3ZlOiBza2lwIHRyYW5zIGlmIGFsbCBwa2dzIHdlcmUgbm90IGZv dW5kLgotICAgIAotICAgIFJlc3RvcmVzIGJlaGF2aW91ciB3aXRoIHhicHM8MC41NC4KLQotZGlm ZiAtLWdpdCBhL2Jpbi94YnBzLXJlbW92ZS9tYWluLmMgYi9iaW4veGJwcy1yZW1vdmUvbWFpbi5j Ci1pbmRleCA2MTA1NzAyOS4uMWVmMzI4YTggMTAwNjQ0Ci0tLS0gYmluL3hicHMtcmVtb3ZlL21h aW4uYwotKysrIGJpbi94YnBzLXJlbW92ZS9tYWluLmMKLUBAIC0xNDUsNyArMTQ1LDcgQEAgcmVt b3ZlX3BrZyhzdHJ1Y3QgeGJwc19oYW5kbGUgKnhocCwgY29uc3QgY2hhciAqcGtnbmFtZSwgYm9v bCByZWN1cnNpdmUpCi0gCQlyZXR1cm4gcnY7Ci0gCX0gZWxzZSBpZiAocnYgPT0gRU5PRU5UKSB7 Ci0gCQlwcmludGYoIlBhY2thZ2UgYCVzJyBpcyBub3QgY3VycmVudGx5IGluc3RhbGxlZC5cbiIs IHBrZ25hbWUpOwotLQkJcmV0dXJuIDA7Ci0rCQlyZXR1cm4gcnY7Ci0gCX0gZWxzZSBpZiAocnYg IT0gMCkgewotIAkJeGJwc19lcnJvcl9wcmludGYoIkZhaWxlZCB0byBxdWV1ZSBgJXMnIGZvciBy ZW1vdmluZzogJXNcbiIsCi0gCQkgICAgcGtnbmFtZSwgc3RyZXJyb3IocnYpKTsKLUBAIC0xODAs NyArMTgwLDcgQEAgbWFpbihpbnQgYXJnYywgY2hhciAqKmFyZ3YpCi0gCWNvbnN0IGNoYXIgKnJv b3RkaXIsICpjYWNoZWRpciwgKmNvbmZkaXI7Ci0gCWludCBjLCBmbGFncywgcnY7Ci0gCWJvb2wg eWVzLCBkcnVuLCByZWN1cnNpdmUsIGNsZWFuX2NhY2hlLCBvcnBoYW5zOwotLQlpbnQgbWF4Y29s czsKLSsJaW50IG1heGNvbHMsIG1pc3Npbmc7Ci0gCi0gCXJvb3RkaXIgPSBjYWNoZWRpciA9IGNv bmZkaXIgPSBOVUxMOwotIAlmbGFncyA9IHJ2ID0gMDsKLUBAIC0yODQsMTYgKzI4NCwyNCBAQCBt YWluKGludCBhcmdjLCBjaGFyICoqYXJndikKLSAJCX0KLSAJfQotIAotKwltaXNzaW5nID0gb3B0 aW5kOwotIAlmb3IgKGludCBpID0gb3B0aW5kOyBpIDwgYXJnYzsgaSsrKSB7Ci0gCQlydiA9IHJl bW92ZV9wa2coJnhoLCBhcmd2W2ldLCByZWN1cnNpdmUpOwotLQkJaWYgKHJ2ICE9IDApIHsKLSsJ CWlmIChydiA9PSBFTk9FTlQpIHsKLSsJCQltaXNzaW5nKys7Ci0rCQkJY29udGludWU7Ci0rCQl9 IGVsc2UgaWYgKHJ2ICE9IDApIHsKLSAJCQl4YnBzX2VuZCgmeGgpOwotIAkJCWV4aXQocnYpOwot IAkJfQotIAl9Ci0rCWlmIChtaXNzaW5nID09IGFyZ2MpIHsKLSsJCWdvdG8gb3V0OwotKwl9Ci0g CWlmIChvcnBoYW5zIHx8IChhcmdjID4gb3B0aW5kKSkgewotIAkJcnYgPSBleGVjX3RyYW5zYWN0 aW9uKCZ4aCwgbWF4Y29scywgeWVzLCBkcnVuKTsKLSAJfQotK291dDoKLSAJeGJwc19lbmQoJnho KTsKLSAJZXhpdChydik7Ci0gfQpkaWZmIC0tZ2l0IGEvc3JjcGtncy94YnBzL3BhdGNoZXMvYmI5 NjQ4NmIxMjcucGF0Y2ggYi9zcmNwa2dzL3hicHMvcGF0Y2hlcy9iYjk2NDg2YjEyNy5wYXRjaApk ZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMzRmMWY1NjEwYTYuLjAwMDAwMDAwMDAwCi0t LSBhL3NyY3BrZ3MveGJwcy9wYXRjaGVzL2JiOTY0ODZiMTI3LnBhdGNoCisrKyAvZGV2L251bGwK QEAgLTEsMzMgKzAsMCBAQAotY29tbWl0IGJiOTY0ODZiMTI3MDU0ZTdiMGUwMmM0NjdiMGY2MWEy MGQyMjcxNjEKLUF1dGhvcjogSnVhbiBSUCA8eHRyYWVtZUBnbWFpbC5jb20+Ci1EYXRlOiAgIFRo dSBKdW4gMjcgMDg6MDI6MTkgMjAxOSArMDIwMAotCi0gICAgeGJwcy1pbnN0YWxsOiBtYWtlIHN1 cmUgdG8gY2FsbCB4YnBzX2VuZCgpIGJlZm9yZSBleGl0aW5nLgotCi1kaWZmIC0tZ2l0IGEvYmlu L3hicHMtaW5zdGFsbC9tYWluLmMgYi9iaW4veGJwcy1pbnN0YWxsL21haW4uYwotaW5kZXggMzcx ZjI2YzguLjM2MjJhZjVhIDEwMDY0NAotLS0tIGJpbi94YnBzLWluc3RhbGwvbWFpbi5jCi0rKysg YmluL3hicHMtaW5zdGFsbC9tYWluLmMKLUBAIC0yNjMsNyArMjYzLDcgQEAgbWFpbihpbnQgYXJn YywgY2hhciAqKmFyZ3YpCi0gCQkJfQotIAkJfQotIAkJaWYgKGVleGlzdCA9PSBhcmdjKQotLQkJ CXJldHVybiAwOwotKwkJCWdvdG8gb3V0OwotIAotIAkJcnYgPSBleGVjX3RyYW5zYWN0aW9uKCZ4 aCwgbWF4Y29scywgeWVzLCBkcnVuKTsKLSAJfSBlbHNlIGlmICghdXBkYXRlKSB7Ci1AQCAtMjgw LDExICsyODAsMTIgQEAgbWFpbihpbnQgYXJnYywgY2hhciAqKmFyZ3YpCi0gCQkJfQotIAkJfQot IAkJaWYgKGVleGlzdCA9PSBhcmdjKQotLQkJCXJldHVybiAwOwotKwkJCWdvdG8gb3V0OwotIAot IAkJcnYgPSBleGVjX3RyYW5zYWN0aW9uKCZ4aCwgbWF4Y29scywgeWVzLCBkcnVuKTsKLSAJfQot IAotK291dDoKLSAJeGJwc19lbmQoJnhoKTsKLSAJZXhpdChydik7Ci0gfQpkaWZmIC0tZ2l0IGEv c3JjcGtncy94YnBzL3BhdGNoZXMvZDcyMDkxYTIwLnBhdGNoIGIvc3JjcGtncy94YnBzL3BhdGNo ZXMvZDcyMDkxYTIwLnBhdGNoCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAyNTIzNGQ5 NWUxYy4uMDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtncy94YnBzL3BhdGNoZXMvZDcyMDkxYTIwLnBh dGNoCisrKyAvZGV2L251bGwKQEAgLTEsMTggKzAsMCBAQAotY29tbWl0IGQ3MjA5MWEyMDYwODE3 YWMxMGY1NWZiZDhkZTRlMDYxMWQ2ZDY5NDAKLUF1dGhvcjogRHVuY2FlbiA8bWFpbEBkdW5jYW5v LmRlPgotRGF0ZTogICBXZWQgSnVuIDI2IDEzOjA3OjE2IDIwMTkgKzAyMDAKLQotICAgIGxpYi90 cmFuc2FjdGlvbl9maWxlcy5jOiBmaXggcmV0dXJuaW5nIGVycm9yIG9uIGhhc2ggbWlzbWF0Y2gK LQotZGlmZiAtLWdpdCBsaWIvdHJhbnNhY3Rpb25fZmlsZXMuYyBsaWIvdHJhbnNhY3Rpb25fZmls ZXMuYwotaW5kZXggNGRiZjQ1ODQuLjlhNmNhNjMwIDEwMDY0NAotLS0tIGxpYi90cmFuc2FjdGlv bl9maWxlcy5jCi0rKysgbGliL3RyYW5zYWN0aW9uX2ZpbGVzLmMKLUBAIC0zMzEsNiArMzMxLDcg QEAgY29sbGVjdF9vYnNvbGV0ZXMoc3RydWN0IHhicHNfaGFuZGxlICp4aHApCi0gCQkJCWNvbnRp bnVlOwotIAkJCWNhc2UgRVJBTkdFOgotIAkJCQkvKiBoYXNoIG1pc21hdGNoIGRvbid0IGRlbGV0 ZSBpdCAqLwotKwkJCQlydiA9IDA7Ci0gCQkJCWNvbnRpbnVlOwotIAkJCWRlZmF1bHQ6Ci0gCQkJ CWJyZWFrOwpkaWZmIC0tZ2l0IGEvc3JjcGtncy94YnBzL3BhdGNoZXMvZml4LW1pc3Npbmctc2gu cGF0Y2ggYi9zcmNwa2dzL3hicHMvcGF0Y2hlcy9maXgtbWlzc2luZy1zaC5wYXRjaApkZWxldGVk IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYTkxNjQ1MmMyODYuLjAwMDAwMDAwMDAwCi0tLSBhL3Ny Y3BrZ3MveGJwcy9wYXRjaGVzL2ZpeC1taXNzaW5nLXNoLnBhdGNoCisrKyAvZGV2L251bGwKQEAg LTEsMzAgKzAsMCBAQAotZGlmZiAtLWdpdCBsaWIvcGFja2FnZV9zY3JpcHQuYyBsaWIvcGFja2Fn ZV9zY3JpcHQuYwotaW5kZXggYThjMDVkY2YuLjkxOWY4MjFiIDEwMDY0NAotLS0tIGxpYi9wYWNr YWdlX3NjcmlwdC5jCi0rKysgbGliL3BhY2thZ2Vfc2NyaXB0LmMKLUBAIC00MCw5ICs0MCwxMCBA QCB4YnBzX3BrZ19leGVjX2J1ZmZlcihzdHJ1Y3QgeGJwc19oYW5kbGUgKnhocCwKLSAgICAgICAg ICAgICAgICAgICAgIGJvb2wgdXBkYXRlKQotIHsKLSAgICAgICAgc3NpemVfdCByZXQ7Ci0tICAg ICAgIGNvbnN0IGNoYXIgKnRtcGRpciwgKnZlcnNpb247Ci0rICAgICAgIGNvbnN0IGNoYXIgKnRt cGRpciwgKnZlcnNpb24sICpzaGVsbDsKLSAgICAgICAgY2hhciAqcGtnbmFtZSwgKmZwYXRoOwot ICAgICAgICBpbnQgZmQsIHJ2OwotKyAgICAgICBzdHJ1Y3Qgc3RhdCBzdDsKLSAKLSAgICAgICAg YXNzZXJ0KGJsb2IpOwotICAgICAgICBhc3NlcnQocGtndmVyKTsKLUBAIC0xMDAsNyArMTAxLDEy IEBAIHhicHNfcGtnX2V4ZWNfYnVmZmVyKHN0cnVjdCB4YnBzX2hhbmRsZSAqeGhwLAotICAgICAg ICB2ZXJzaW9uID0geGJwc19wa2dfdmVyc2lvbihwa2d2ZXIpOwotICAgICAgICBhc3NlcnQodmVy c2lvbik7Ci0gCi0tICAgICAgIHJ2ID0geGJwc19maWxlX2V4ZWMoeGhwLCAiL2Jpbi9zaCIsIGZw YXRoLCBhY3Rpb24sIHBrZ25hbWUsIHZlcnNpb24sCi0rICAgICAgIC8vIEZhbGxiYWNrCi0rICAg ICAgIHNoZWxsID0gIi9iaW4vc2giOwotKyAgICAgICBpZiAoc3RhdChzaGVsbCwgJnN0KSA8IDAp IHsKLSsgICAgICAgICAgICAgICBzaGVsbCA9ICIvYmluL2Rhc2giOwotKyAgICAgICB9Ci0rICAg ICAgIHJ2ID0geGJwc19maWxlX2V4ZWMoeGhwLCBzaGVsbCwgZnBhdGgsIGFjdGlvbiwgcGtnbmFt ZSwgdmVyc2lvbiwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICB1cGRhdGUgPyAieWVzIiA6 ICJubyIsCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgIm5vIiwgeGhwLT5uYXRpdmVfYXJj aCwgTlVMTCk7Ci0gICAgICAgIGZyZWUocGtnbmFtZSk7CmRpZmYgLS1naXQgYS9zcmNwa2dzL3hi cHMvcGF0Y2hlcy9zZXJpZXMgYi9zcmNwa2dzL3hicHMvcGF0Y2hlcy9zZXJpZXMKZGVsZXRlZCBm aWxlIG1vZGUgMTAwNjQ0CmluZGV4IGY0NzE0NmI5ZDRiLi4wMDAwMDAwMDAwMAotLS0gYS9zcmNw a2dzL3hicHMvcGF0Y2hlcy9zZXJpZXMKKysrIC9kZXYvbnVsbApAQCAtMSw2ICswLDAgQEAKLWQ3 MjA5MWEyMC5wYXRjaAotODNhYTQ4NmY2YmEwNDkzOTkucGF0Y2gKLTdiNzI4ZjVhYy5wYXRjaAot NDQ2OTJmMjhkOC5wYXRjaAotYmI5NjQ4NmIxMjcucGF0Y2gKLWZpeC1taXNzaW5nLXNoLnBhdGNo CmRpZmYgLS1naXQgYS9zcmNwa2dzL3hicHMvdGVtcGxhdGUgYi9zcmNwa2dzL3hicHMvdGVtcGxh dGUKaW5kZXggOGYyMTdmNjBhZmEuLmM1NmM2ZGZjM2U0IDEwMDY0NAotLS0gYS9zcmNwa2dzL3hi cHMvdGVtcGxhdGUKKysrIGIvc3JjcGtncy94YnBzL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAog IyBUZW1wbGF0ZSBmaWxlIGZvciAneGJwcycKIHBrZ25hbWU9eGJwcwotdmVyc2lvbj0wLjU2Ci1y ZXZpc2lvbj03Cit2ZXJzaW9uPTAuNTcuMQorcmV2aXNpb249MQogYm9vdHN0cmFwPXllcwogYnVp bGRfc3R5bGU9Y29uZmlndXJlCiBzaG9ydF9kZXNjPSJYQlBTIHBhY2thZ2Ugc3lzdGVtIHV0aWxp dGllcyIKQEAgLTEwLDcgKzEwLDcgQEAgbGljZW5zZT0iQlNELTItQ2xhdXNlIgogaG9tZXBhZ2U9 Imh0dHBzOi8vZ2l0aHViLmNvbS92b2lkLWxpbnV4L3hicHMiCiBjaGFuZ2Vsb2c9Imh0dHBzOi8v Z2l0aHViLmNvbS92b2lkLWxpbnV4L3hicHMvYmxvYi9tYXN0ZXIvTkVXUyIKIGRpc3RmaWxlcz0i aHR0cHM6Ly9naXRodWIuY29tL3ZvaWQtbGludXgveGJwcy9hcmNoaXZlLyR7dmVyc2lvbn0udGFy Lmd6IgotY2hlY2tzdW09ZTQ2NTIxNTEzYjBjMGZmNDg2Y2MxOTAwODkyNzczODFiMThkYjQ1ZTc3 MGIwNGY3OTlkYzRlZWM5OWZmY2NkNAorY2hlY2tzdW09YmNjYWQ3YzQxODdjNDY3ZjMyMmU2OTA1 ZmJlOTY4MzljMDBkMmNiZGRhMjU0YzBjOTliMzhlYWJlZWRiODY3OAogCiBob3N0bWFrZWRlcGVu ZHM9InBrZy1jb25maWciCiBjaGVja2RlcGVuZHM9Imt5dWEiCgpGcm9tIDNkNzA4NDk3NzlhZDUz MGYyMjNmNTg2OWQwN2E4NmFiZGFkMmIyMmQgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206 IHE2NiA8ZGFuaWVsQG9jdGFmb3JnZS5vcmc+CkRhdGU6IE1vbiwgMjEgT2N0IDIwMTkgMTk6NDc6 NTkgKzAyMDAKU3ViamVjdDogW1BBVENIIDA0My8xODZdIHhicHMtc3RhdGljOiB1cGRhdGUgdG8g MC41Ny4xCgotLS0KIHNyY3BrZ3MveGJwcy1zdGF0aWMvdGVtcGxhdGUgfCAxMCArKysrKysrLS0t CiAxIGZpbGUgY2hhbmdlZCwgNyBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQoKZGlmZiAt LWdpdCBhL3NyY3BrZ3MveGJwcy1zdGF0aWMvdGVtcGxhdGUgYi9zcmNwa2dzL3hicHMtc3RhdGlj L3RlbXBsYXRlCmluZGV4IDRmOGQ0Mjc1NjAxLi5lZWFhYjg5NDk5MyAxMDA2NDQKLS0tIGEvc3Jj cGtncy94YnBzLXN0YXRpYy90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3hicHMtc3RhdGljL3RlbXBs YXRlCkBAIC0xLDggKzEsOCBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAneGJwcy1zdGF0aWMnCiAj IE5PVEU6IGtlZXAgdGhpcyBwYWNrYWdlIHN5bmNocm9uaXplZCB3aXRoICJzcmNwa2dzL3hicHMi CiBwa2duYW1lPXhicHMtc3RhdGljCi12ZXJzaW9uPTAuNTYKLXJldmlzaW9uPTUKK3ZlcnNpb249 MC41Ny4xCityZXZpc2lvbj0xCiAjIG9ubHkgbXVzbAogYXJjaHM9IiotbXVzbCIKIHdya3NyYz0i eGJwcy0ke3ZlcnNpb259IgpAQCAtMTYsNyArMTYsMTEgQEAgbGljZW5zZT0iQlNELTItQ2xhdXNl IgogaG9tZXBhZ2U9Imh0dHBzOi8vd3d3LnZvaWRsaW51eC5vcmcveGJwcyIKIGNoYW5nZWxvZz0i aHR0cHM6Ly9naXRodWIuY29tL3ZvaWQtbGludXgveGJwcy9ibG9iL21hc3Rlci9ORVdTIgogZGlz dGZpbGVzPSJodHRwczovL2dpdGh1Yi5jb20vdm9pZC1saW51eC94YnBzL2FyY2hpdmUvJHt2ZXJz aW9ufS50YXIuZ3oiCi1jaGVja3N1bT1lNDY1MjE1MTNiMGMwZmY0ODZjYzE5MDA4OTI3NzM4MWIx OGRiNDVlNzcwYjA0Zjc5OWRjNGVlYzk5ZmZjY2Q0CitjaGVja3N1bT1iY2NhZDdjNDE4N2M0Njdm MzIyZTY5MDVmYmU5NjgzOWMwMGQyY2JkZGEyNTRjMGM5OWIzOGVhYmVlZGI4Njc4CisKKyMgTFRP IG9iamVjdHMgYnJlYWsgc3RhdGljIGJ1aWxkcywgb3ZlcnJpZGUKK0NGTEFHUz0iLWZuby1sdG8i CitMREZMQUdTPSItZm5vLWx0byIKIAogZG9fY29uZmlndXJlKCkgewogCS4vY29uZmlndXJlIC0t cHJlZml4PS91c3IgLS1zeXNjb25mZGlyPS9ldGMgLS1lbmFibGUtc3RhdGljCgpGcm9tIGJkZTgz NDAzNzUxYmY3MGFlZmI4NzVhYTNhZTQ2YTFmNTkwNjMzN2IgTW9uIFNlcCAxNyAwMDowMDowMCAy MDAxCkZyb206ICJIYW5zLUouIFNjaG1pZCIgPGtub2NrQG15b3BlbmRvb3IuZGU+CkRhdGU6IE1v biwgMjggT2N0IDIwMTkgMjE6MjU6MjIgKzAxMDAKU3ViamVjdDogW1BBVENIIDA0NC8xODZdIE5l dyBwYWNrYWdlOiByYWJiaXRtcS1jLTAuOS4wCgotLS0KIGNvbW1vbi9zaGxpYnMgICAgICAgICAg ICAgICB8ICAxICsKIHNyY3BrZ3MvcmFiYml0bXEtYy1kZXZlbCAgICB8ICAxICsKIHNyY3BrZ3Mv cmFiYml0bXEtYy90ZW1wbGF0ZSB8IDI4ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysKIDMg ZmlsZXMgY2hhbmdlZCwgMzAgaW5zZXJ0aW9ucygrKQogY3JlYXRlIG1vZGUgMTIwMDAwIHNyY3Br Z3MvcmFiYml0bXEtYy1kZXZlbAogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvcmFiYml0bXEt Yy90ZW1wbGF0ZQoKZGlmZiAtLWdpdCBhL2NvbW1vbi9zaGxpYnMgYi9jb21tb24vc2hsaWJzCmlu ZGV4IDkzNWJjNmM5YmJkLi5hNzllZjk5NjEzOCAxMDA2NDQKLS0tIGEvY29tbW9uL3NobGlicwor KysgYi9jb21tb24vc2hsaWJzCkBAIC0zNTE5LDMgKzM1MTksNCBAQCBsaWJsdXYuc28uMSBsaWJs dXYtMS4zMC4xLjBfMQogbGliYXJtYWRpbGxvLnNvLjkgYXJtYWRpbGxvLTkuNzAwLjJfMQogbGli dmFybmlzaGFwaS5zby4yIGxpYnZhcm5pc2hhcGktNi4zLjBfMQogbGliaWNucy5zby4xIGxpYmlj bnMtMC44LjFfMQorbGlicmFiYml0bXEuc28uNCByYWJiaXRtcS1jLTAuOS4wXzEKZGlmZiAtLWdp dCBhL3NyY3BrZ3MvcmFiYml0bXEtYy1kZXZlbCBiL3NyY3BrZ3MvcmFiYml0bXEtYy1kZXZlbApu ZXcgZmlsZSBtb2RlIDEyMDAwMAppbmRleCAwMDAwMDAwMDAwMC4uNTAzOWNjNTlkY2UKLS0tIC9k ZXYvbnVsbAorKysgYi9zcmNwa2dzL3JhYmJpdG1xLWMtZGV2ZWwKQEAgLTAsMCArMSBAQAorcmFi Yml0bXEtYwpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mv cmFiYml0bXEtYy90ZW1wbGF0ZSBiL3NyY3BrZ3MvcmFiYml0bXEtYy90ZW1wbGF0ZQpuZXcgZmls ZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMC4uMjMxOTU3MGQ1MTYKLS0tIC9kZXYvbnVs bAorKysgYi9zcmNwa2dzL3JhYmJpdG1xLWMvdGVtcGxhdGUKQEAgLTAsMCArMSwyOCBAQAorIyBU ZW1wbGF0ZSBmaWxlIGZvciAncmFiYml0bXEtYycKK3BrZ25hbWU9cmFiYml0bXEtYwordmVyc2lv bj0wLjkuMAorcmV2aXNpb249MQorYnVpbGRfc3R5bGU9Y21ha2UKK2hvc3RtYWtlZGVwZW5kcz0i cG9wdCB4bWx0byBkb3h5Z2VuIgorbWFrZWRlcGVuZHM9ImxpYnJlc3NsLWRldmVsIgorc2hvcnRf ZGVzYz0iUmFiYml0TVEgQyBjbGllbnQiCittYWludGFpbmVyPSJIYW5zLUouIFNjaG1pZCA8a25v Y2tAbXlvcGVuZG9vci5kZT4iCitsaWNlbnNlPSJNSVQiCitob21lcGFnZT0iaHR0cHM6Ly9naXRo dWIuY29tL2FsYW54ei9yYWJiaXRtcS1jIgorZGlzdGZpbGVzPSJodHRwczovL2dpdGh1Yi5jb20v YWxhbnh6LyR7cGtnbmFtZX0vYXJjaGl2ZS92JHt2ZXJzaW9ufS50YXIuZ3oiCitjaGVja3N1bT0z MTZjMGQxNTY0NTJiNDg4MTI0ODA2OTExYTYyZTBjMmFhOGE1NDZkMzhmYzgzMjQ3MTljZDI5YWFh NDkzMDI0CisKK3Bvc3RfaW5zdGFsbCgpIHsKKwl2bGljZW5zZSBMSUNFTlNFLU1JVAorfQorCity YWJiaXRtcS1jLWRldmVsX3BhY2thZ2UoKSB7CisJZGVwZW5kcz0iJHtzb3VyY2Vwa2d9Pj0ke3Zl cnNpb259XyR7cmV2aXNpb259IgorCXNob3J0X2Rlc2MrPSIgLSBkZXZlbG9wbWVudCBmaWxlcyIK Kwlwa2dfaW5zdGFsbCgpIHsKKwkJdm1vdmUgdXNyL2luY2x1ZGUKKwkJdm1vdmUgdXNyL2xpYi9w a2djb25maWcKKwkJdm1vdmUgdXNyL2xpYi8qLmEKKwkJdm1vdmUgdXNyL2xpYi8qLnNvCisJfQor fQoKRnJvbSBkYTJkYTdiOGUyNjE2ZjVkMDNjYzkwMWY0YzEzZWFlYjM3NzUzMjExIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBxNjYgPGRhbmllbEBvY3RhZm9yZ2Uub3JnPgpEYXRlOiBN b24sIDI4IE9jdCAyMDE5IDIyOjA3OjMwICswMTAwClN1YmplY3Q6IFtQQVRDSCAwNDUvMTg2XSBn ZGI6IGRyb3AgdW5uZWNlc3NhcnkgbXVzbC9wcGMgcGF0Y2hlcwoKLS0tCiBzcmNwa2dzL2dkYi9w YXRjaGVzL3BwYy1tdXNsLnBhdGNoICAgfCA5MyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t CiBzcmNwa2dzL2dkYi9wYXRjaGVzL3BwYy1wdHJlZ3MucGF0Y2ggfCAxMCAtLS0KIDIgZmlsZXMg Y2hhbmdlZCwgMTAzIGRlbGV0aW9ucygtKQogZGVsZXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvZ2Ri L3BhdGNoZXMvcHBjLW11c2wucGF0Y2gKIGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL2dkYi9w YXRjaGVzL3BwYy1wdHJlZ3MucGF0Y2gKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2dkYi9wYXRjaGVz L3BwYy1tdXNsLnBhdGNoIGIvc3JjcGtncy9nZGIvcGF0Y2hlcy9wcGMtbXVzbC5wYXRjaApkZWxl dGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNzBjZmExOGU0NzkuLjAwMDAwMDAwMDAwCi0tLSBh L3NyY3BrZ3MvZ2RiL3BhdGNoZXMvcHBjLW11c2wucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSw5 MyArMCwwIEBACi0tLS0gYS9nZGIvbmF0L3BwYy1saW51eC5oCi0rKysgYi9nZGIvbmF0L3BwYy1s aW51eC5oCi1AQCAtMTgsNyArMTgsOTAgQEAKLSAjaWZuZGVmIFBQQ19MSU5VWF9ICi0gI2RlZmlu ZSBQUENfTElOVVhfSCAxCi0gCi0rI2lmIGRlZmluZWQoX19HTElCQ19fKSB8fCBkZWZpbmVkKF9f VUNMSUJDX18pCi0gI2luY2x1ZGUgPGFzbS9wdHJhY2UuaD4KLSsjZWxzZSAvLyBNdXNsCi0rLy8g RG8gbm90IGluY2x1ZGUgcHRyYWNlLmggZnJvbSBMaW51eCBoZWFkZXJzIGFuZCBzaW5jZQotKy8v IE11c2wgZG9lcyBub3QgZGVmaW5lIFBUXyosIGRlZmluZSB0aGVtOgotKwotKyNkZWZpbmUgUFRf UjAgICAwCi0rI2RlZmluZSBQVF9SMSAgIDEKLSsjZGVmaW5lIFBUX1IyICAgMgotKyNkZWZpbmUg UFRfUjMgICAzCi0rI2RlZmluZSBQVF9SNCAgIDQKLSsjZGVmaW5lIFBUX1I1ICAgNQotKyNkZWZp bmUgUFRfUjYgICA2Ci0rI2RlZmluZSBQVF9SNyAgIDcKLSsjZGVmaW5lIFBUX1I4ICAgOAotKyNk ZWZpbmUgUFRfUjkgICA5Ci0rI2RlZmluZSBQVF9SMTAgIDEwCi0rI2RlZmluZSBQVF9SMTEgIDEx Ci0rI2RlZmluZSBQVF9SMTIgIDEyCi0rI2RlZmluZSBQVF9SMTMgIDEzCi0rI2RlZmluZSBQVF9S MTQgIDE0Ci0rI2RlZmluZSBQVF9SMTUgIDE1Ci0rI2RlZmluZSBQVF9SMTYgIDE2Ci0rI2RlZmlu ZSBQVF9SMTcgIDE3Ci0rI2RlZmluZSBQVF9SMTggIDE4Ci0rI2RlZmluZSBQVF9SMTkgIDE5Ci0r I2RlZmluZSBQVF9SMjAgIDIwCi0rI2RlZmluZSBQVF9SMjEgIDIxCi0rI2RlZmluZSBQVF9SMjIg IDIyCi0rI2RlZmluZSBQVF9SMjMgIDIzCi0rI2RlZmluZSBQVF9SMjQgIDI0Ci0rI2RlZmluZSBQ VF9SMjUgIDI1Ci0rI2RlZmluZSBQVF9SMjYgIDI2Ci0rI2RlZmluZSBQVF9SMjcgIDI3Ci0rI2Rl ZmluZSBQVF9SMjggIDI4Ci0rI2RlZmluZSBQVF9SMjkgIDI5Ci0rI2RlZmluZSBQVF9SMzAgIDMw Ci0rI2RlZmluZSBQVF9SMzEgIDMxCi0rCi0rI2RlZmluZSBQVF9OSVAgIDMyCi0rI2RlZmluZSBQ VF9NU1IgIDMzCi0rI2RlZmluZSBQVF9PUklHX1IzIDM0Ci0rI2RlZmluZSBQVF9DVFIgIDM1Ci0r I2RlZmluZSBQVF9MTksgIDM2Ci0rI2RlZmluZSBQVF9YRVIgIDM3Ci0rI2RlZmluZSBQVF9DQ1Ig IDM4Ci0rI2lmbmRlZiBfX3Bvd2VycGM2NF9fCi0rI2RlZmluZSBQVF9NUSAgIDM5Ci0rI2Vsc2UK LSsjZGVmaW5lIFBUX1NPRlRFIDM5Ci0rI2VuZGlmCi0rI2RlZmluZSBQVF9UUkFQIDQwCi0rI2Rl ZmluZSBQVF9EQVIgIDQxCi0rI2RlZmluZSBQVF9EU0lTUiA0MgotKyNkZWZpbmUgUFRfUkVTVUxU IDQzCi0rI2RlZmluZSBQVF9EU0NSIDQ0Ci0rI2RlZmluZSBQVF9SRUdTX0NPVU5UIDQ0Ci0rCi0r I2RlZmluZSBQVF9GUFIwIDQ4ICAgICAgLyogZWFjaCBGUCByZWcgb2NjdXBpZXMgMiBzbG90cyBp biB0aGlzIHNwYWNlICovCi0rCi0rI2lmbmRlZiBfX3Bvd2VycGM2NF9fCi0rCi0rI2RlZmluZSBQ VF9GUFIzMSAoUFRfRlBSMCArIDIqMzEpCi0rI2RlZmluZSBQVF9GUFNDUiAoUFRfRlBSMCArIDIq MzIgKyAxKQotKwotKyNlbHNlIC8qIF9fcG93ZXJwYzY0X18gKi8KLSsKLSsjZGVmaW5lIFBUX0ZQ U0NSIChQVF9GUFIwICsgMzIpIC8qIGVhY2ggRlAgcmVnIG9jY3VwaWVzIDEgc2xvdCBpbiA2NC1i aXQgc3BhY2UgKi8KLSsKLSsKLSsjZGVmaW5lIFBUX1ZSMCA4MiAgICAgICAvKiBlYWNoIFZlY3Rv ciByZWcgb2NjdXBpZXMgMiBzbG90cyBpbiA2NC1iaXQgKi8KLSsjZGVmaW5lIFBUX1ZTQ1IgKFBU X1ZSMCArIDMyKjIgKyAxKQotKyNkZWZpbmUgUFRfVlJTQVZFIChQVF9WUjAgKyAzMyoyKQotKwot KwotKy8qCi0rICogT25seSBzdG9yZSBmaXJzdCAzMiBWU1JzIGhlcmUuIFRoZSBzZWNvbmQgMzIg VlNScyBpbiBWUjAtMzEKLSsgICovCi0rI2RlZmluZSBQVF9WU1IwIDE1MCAgICAgLyogZWFjaCBW U1IgcmVnIG9jY3VwaWVzIDIgc2xvdHMgaW4gNjQtYml0ICovCi0rI2RlZmluZSBQVF9WU1IzMSAo UFRfVlNSMCArIDIqMzEpCi0rI2VuZGlmIC8qIF9fcG93ZXJwYzY0X18gKi8KLSsKLSsjZW5kaWYg Ly8gTGliYyAKLSsKLSAjaW5jbHVkZSA8YXNtL2NwdXRhYmxlLmg+Ci0gCi0gLyogVGhpcyBzb21l dGltZXMgaXNuJ3QgZGVmaW5lZC4gICovCmRpZmYgLS1naXQgYS9zcmNwa2dzL2dkYi9wYXRjaGVz L3BwYy1wdHJlZ3MucGF0Y2ggYi9zcmNwa2dzL2dkYi9wYXRjaGVzL3BwYy1wdHJlZ3MucGF0Y2gK ZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDc0M2JkMmU2ZDI2Li4wMDAwMDAwMDAwMAot LS0gYS9zcmNwa2dzL2dkYi9wYXRjaGVzL3BwYy1wdHJlZ3MucGF0Y2gKKysrIC9kZXYvbnVsbApA QCAtMSwxMCArMCwwIEBACi0tLS0gYS9nZGIvZ2Ric2VydmVyL2xpbnV4LXBwYy1sb3cuYwotKysr IGIvZ2RiL2dkYnNlcnZlci9saW51eC1wcGMtbG93LmMKLUBAIC0yMSw3ICsyMSw2IEBACi0gI2lu Y2x1ZGUgImxpbnV4LWxvdy5oIgotIAotICNpbmNsdWRlIDxlbGYuaD4KLS0jaW5jbHVkZSA8YXNt L3B0cmFjZS5oPgotIAotICNpbmNsdWRlICJuYXQvcHBjLWxpbnV4LmgiCi0gI2luY2x1ZGUgImxp bnV4LXBwYy10ZGVzYy5oIgoKRnJvbSBkYjRlNzYyYWQ2OGM3OWIyYTZmZTQ0Y2UxYWI5ZTNlYTZi YTcxZjFjIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBxNjYgPGRhbmllbEBvY3RhZm9y Z2Uub3JnPgpEYXRlOiBNb24sIDI4IE9jdCAyMDE5IDIyOjA4OjAxICswMTAwClN1YmplY3Q6IFtQ QVRDSCAwNDYvMTg2XSBzdHJhY2U6IGRyb3AgdW5uZWNlc3NhcnkgbXVzbC9wcGMgcGF0Y2gKCi0t LQogc3JjcGtncy9zdHJhY2UvcGF0Y2hlcy9wcGMtbXVzbC5wYXRjaCB8IDE2IC0tLS0tLS0tLS0t LS0tLS0KIDEgZmlsZSBjaGFuZ2VkLCAxNiBkZWxldGlvbnMoLSkKIGRlbGV0ZSBtb2RlIDEwMDY0 NCBzcmNwa2dzL3N0cmFjZS9wYXRjaGVzL3BwYy1tdXNsLnBhdGNoCgpkaWZmIC0tZ2l0IGEvc3Jj cGtncy9zdHJhY2UvcGF0Y2hlcy9wcGMtbXVzbC5wYXRjaCBiL3NyY3BrZ3Mvc3RyYWNlL3BhdGNo ZXMvcHBjLW11c2wucGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDUxMTE1M2Y5 MjkzLi4wMDAwMDAwMDAwMAotLS0gYS9zcmNwa2dzL3N0cmFjZS9wYXRjaGVzL3BwYy1tdXNsLnBh dGNoCisrKyAvZGV2L251bGwKQEAgLTEsMTYgKzAsMCBAQAotLS0tIHJlZ3MuaAotKysrIHJlZ3Mu aAotQEAgLTgsNyArOCwxMyBAQAotICNpZm5kZWYgU1RSQUNFX1JFR1NfSAotICMgZGVmaW5lIFNU UkFDRV9SRUdTX0gKLSAKLSsjaWYgIWRlZmluZWQoX19HTElCQ19fKSAmJiBkZWZpbmVkKF9fcG93 ZXJwY19fKQotKyMgZGVmaW5lIHB0X3JlZ3MgbXVzbF9wdF9yZWdzCi0gIyBpbmNsdWRlIDxzeXMv dXNlci5oPgotKyMgdW5kZWYgcHRfcmVncwotKyNlbHNlCi0rIyBpbmNsdWRlIDxzeXMvdXNlci5o PgotKyNlbmRpZgotICMgaW5jbHVkZSAiYXJjaF9yZWdzLmgiCi0gCi0gI2VuZGlmIC8qICFTVFJB Q0VfUkVHU19IICovCgpGcm9tIGU3ODBmMzg1MWI2MzlkNjQ2ZmNiNGRiZWM5ZDE3NjIzNjMyNjk1 Y2MgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IHE2NiA8ZGFuaWVsQG9jdGFmb3JnZS5v cmc+CkRhdGU6IE1vbiwgMjggT2N0IDIwMTkgMjI6MTI6MDIgKzAxMDAKU3ViamVjdDogW1BBVENI IDA0Ny8xODZdIHBzbWlzYzogZHJvcCB1bm5lY2Vzc2FyeSBtdXNsL3BwYyBwYXRjaAoKLS0tCiBz cmNwa2dzL3BzbWlzYy9wYXRjaGVzL3BwYy1tdXNsLnBhdGNoIHwgMTIgLS0tLS0tLS0tLS0tCiAx IGZpbGUgY2hhbmdlZCwgMTIgZGVsZXRpb25zKC0pCiBkZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtn cy9wc21pc2MvcGF0Y2hlcy9wcGMtbXVzbC5wYXRjaAoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcHNt aXNjL3BhdGNoZXMvcHBjLW11c2wucGF0Y2ggYi9zcmNwa2dzL3BzbWlzYy9wYXRjaGVzL3BwYy1t dXNsLnBhdGNoCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBiZDU3M2YwNmMxZC4uMDAw MDAwMDAwMDAKLS0tIGEvc3JjcGtncy9wc21pc2MvcGF0Y2hlcy9wcGMtbXVzbC5wYXRjaAorKysg L2Rldi9udWxsCkBAIC0xLDEyICswLDAgQEAKLS0tLSBzcmMvcGVla2ZkLmMJMjAxOC0wOC0xMyAx MzoyNDo1Ni44NzEzNDE5NTQgKzAyMDAKLSsrKyBzcmMvcGVla2ZkLmMJMjAxOS0wMS0xMiAyMTo0 NDoxNS45MTM0OTYyNjEgKzAxMDAKLUBAIC0zMCw3ICszMCw5IEBACi0gI2luY2x1ZGUgPGFzbS9w dHJhY2UuaD4KLSAjaW5jbHVkZSA8Ynl0ZXN3YXAuaD4KLSAjaW5jbHVkZSA8ZW5kaWFuLmg+Ci0r I2lmICFkZWZpbmVkKFBQQykgfHwgZGVmaW5lZChfX0dMSUJDX18pCi0gI2luY2x1ZGUgPHN5cy91 c2VyLmg+Ci0rI2VuZGlmCi0gI2luY2x1ZGUgPHN0ZGxpYi5oPgotICNpbmNsdWRlIDxnZXRvcHQu aD4KLSAjaW5jbHVkZSA8Y3R5cGUuaD4KCkZyb20gNzNiODY0MDA2N2U2OTliMmRjNWJkMDhlZjgy YTk2Y2ViMGQ0OWM3YSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogcTY2IDxkYW5pZWxA b2N0YWZvcmdlLm9yZz4KRGF0ZTogTW9uLCAyOCBPY3QgMjAxOSAyMjoxNzozNCArMDEwMApTdWJq ZWN0OiBbUEFUQ0ggMDQ4LzE4Nl0gbGlidW53aW5kOiBkcm9wIHVubmVjZXNzYXJ5IHBhcnRzIG9m IHRoZSBtdXNsL3BwYzY0CiBwYXRjaAoKLS0tCiBzcmNwa2dzL2xpYnVud2luZC9wYXRjaGVzL3Bw YzY0LW11c2wucGF0Y2ggfCAxMDMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAxIGZpbGUgY2hhbmdl ZCwgMTAzIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbGlidW53aW5kL3BhdGNo ZXMvcHBjNjQtbXVzbC5wYXRjaCBiL3NyY3BrZ3MvbGlidW53aW5kL3BhdGNoZXMvcHBjNjQtbXVz bC5wYXRjaAppbmRleCBkMTZjYjczN2E4My4uMWZmMDgzMzhkMzMgMTAwNjQ0Ci0tLSBhL3NyY3Br Z3MvbGlidW53aW5kL3BhdGNoZXMvcHBjNjQtbXVzbC5wYXRjaAorKysgYi9zcmNwa2dzL2xpYnVu d2luZC9wYXRjaGVzL3BwYzY0LW11c2wucGF0Y2gKQEAgLTEsMTA2ICsxLDMgQEAKLS0tLSBzcmMv cHBjNjQvR2luaXQuYwotKysrIHNyYy9wcGM2NC9HaW5pdC5jCi1AQCAtNTEsNyArNTEsNyBAQCB1 Y19hZGRyICh1Y29udGV4dF90ICp1YywgaW50IHJlZykKLSAgICAgYWRkciA9ICZ1Yy0+dWNfbWNv bnRleHQuZ3BfcmVnc1tyZWcgLSBVTldfUFBDNjRfUjBdOwotIAotICAgZWxzZSBpZiAoKHVuc2ln bmVkKSAocmVnIC0gVU5XX1BQQzY0X0YwKSA8IDMyKQotLSAgICBhZGRyID0gJnVjLT51Y19tY29u dGV4dC5mcF9yZWdzW3JlZyAtIFVOV19QUEM2NF9GMF07Ci0rICAgIGFkZHIgPSAmKCgoZG91Ymxl ICopJnVjLT51Y19tY29udGV4dC5mcF9yZWdzKVtyZWcgLSBVTldfUFBDNjRfRjBdKTsKLSAKLSAg IGVsc2UgaWYgKCh1bnNpZ25lZCkgKHJlZyAtIFVOV19QUEM2NF9WMCkgPCAzMikKLSAgICAgYWRk ciA9ICh1Yy0+dWNfbWNvbnRleHQudl9yZWdzID09IDApID8gTlVMTCA6ICZ1Yy0+dWNfbWNvbnRl eHQudl9yZWdzLT52cnJlZ3NbcmVnIC0gVU5XX1BQQzY0X1YwXVswXTsKLS0tLSBzcmMvcHBjNjQv dWNvbnRleHRfaS5oCi0rKysgc3JjL3BwYzY0L3Vjb250ZXh0X2kuaAotQEAgLTk5LDM5ICs5OSwz OSBAQCBzdGF0aWMgdnJyZWdzZXRfdCBkbXlfdnJyZWdzZXQ7Ci0gI2RlZmluZSBVQ19NQ09OVEVY VF9HUkVHU19EU0lTUiAoKHZvaWQgKikmZG15X2N0eHQudWNfbWNvbnRleHQuZ3BfcmVnc1tEU0lT Ul9JRFhdIC0gKHZvaWQgKikmZG15X2N0eHQpCi0gI2RlZmluZSBVQ19NQ09OVEVYVF9HUkVHU19S RVNVTFQgKCh2b2lkICopJmRteV9jdHh0LnVjX21jb250ZXh0LmdwX3JlZ3NbUkVTVUxUX0lEWF0g LSAodm9pZCAqKSZkbXlfY3R4dCkKLSAKLS0jZGVmaW5lIFVDX01DT05URVhUX0ZSRUdTX1IwICgo dm9pZCAqKSZkbXlfY3R4dC51Y19tY29udGV4dC5mcF9yZWdzWzBdIC0gKHZvaWQgKikmZG15X2N0 eHQpCi0tI2RlZmluZSBVQ19NQ09OVEVYVF9GUkVHU19SMSAoKHZvaWQgKikmZG15X2N0eHQudWNf bWNvbnRleHQuZnBfcmVnc1sxXSAtICh2b2lkICopJmRteV9jdHh0KQotLSNkZWZpbmUgVUNfTUNP TlRFWFRfRlJFR1NfUjIgKCh2b2lkICopJmRteV9jdHh0LnVjX21jb250ZXh0LmZwX3JlZ3NbMl0g LSAodm9pZCAqKSZkbXlfY3R4dCkKLS0jZGVmaW5lIFVDX01DT05URVhUX0ZSRUdTX1IzICgodm9p ZCAqKSZkbXlfY3R4dC51Y19tY29udGV4dC5mcF9yZWdzWzNdIC0gKHZvaWQgKikmZG15X2N0eHQp Ci0tI2RlZmluZSBVQ19NQ09OVEVYVF9GUkVHU19SNCAoKHZvaWQgKikmZG15X2N0eHQudWNfbWNv bnRleHQuZnBfcmVnc1s0XSAtICh2b2lkICopJmRteV9jdHh0KQotLSNkZWZpbmUgVUNfTUNPTlRF WFRfRlJFR1NfUjUgKCh2b2lkICopJmRteV9jdHh0LnVjX21jb250ZXh0LmZwX3JlZ3NbNV0gLSAo dm9pZCAqKSZkbXlfY3R4dCkKLS0jZGVmaW5lIFVDX01DT05URVhUX0ZSRUdTX1I2ICgodm9pZCAq KSZkbXlfY3R4dC51Y19tY29udGV4dC5mcF9yZWdzWzZdIC0gKHZvaWQgKikmZG15X2N0eHQpCi0t I2RlZmluZSBVQ19NQ09OVEVYVF9GUkVHU19SNyAoKHZvaWQgKikmZG15X2N0eHQudWNfbWNvbnRl eHQuZnBfcmVnc1s3XSAtICh2b2lkICopJmRteV9jdHh0KQotLSNkZWZpbmUgVUNfTUNPTlRFWFRf RlJFR1NfUjggKCh2b2lkICopJmRteV9jdHh0LnVjX21jb250ZXh0LmZwX3JlZ3NbOF0gLSAodm9p ZCAqKSZkbXlfY3R4dCkKLS0jZGVmaW5lIFVDX01DT05URVhUX0ZSRUdTX1I5ICgodm9pZCAqKSZk bXlfY3R4dC51Y19tY29udGV4dC5mcF9yZWdzWzldIC0gKHZvaWQgKikmZG15X2N0eHQpCi0tI2Rl ZmluZSBVQ19NQ09OVEVYVF9GUkVHU19SMTAgKCh2b2lkICopJmRteV9jdHh0LnVjX21jb250ZXh0 LmZwX3JlZ3NbMTBdIC0gKHZvaWQgKikmZG15X2N0eHQpCi0tI2RlZmluZSBVQ19NQ09OVEVYVF9G UkVHU19SMTEgKCh2b2lkICopJmRteV9jdHh0LnVjX21jb250ZXh0LmZwX3JlZ3NbMTFdIC0gKHZv aWQgKikmZG15X2N0eHQpCi0tI2RlZmluZSBVQ19NQ09OVEVYVF9GUkVHU19SMTIgKCh2b2lkICop JmRteV9jdHh0LnVjX21jb250ZXh0LmZwX3JlZ3NbMTJdIC0gKHZvaWQgKikmZG15X2N0eHQpCi0t I2RlZmluZSBVQ19NQ09OVEVYVF9GUkVHU19SMTMgKCh2b2lkICopJmRteV9jdHh0LnVjX21jb250 ZXh0LmZwX3JlZ3NbMTNdIC0gKHZvaWQgKikmZG15X2N0eHQpCi0tI2RlZmluZSBVQ19NQ09OVEVY VF9GUkVHU19SMTQgKCh2b2lkICopJmRteV9jdHh0LnVjX21jb250ZXh0LmZwX3JlZ3NbMTRdIC0g KHZvaWQgKikmZG15X2N0eHQpCi0tI2RlZmluZSBVQ19NQ09OVEVYVF9GUkVHU19SMTUgKCh2b2lk ICopJmRteV9jdHh0LnVjX21jb250ZXh0LmZwX3JlZ3NbMTVdIC0gKHZvaWQgKikmZG15X2N0eHQp Ci0tI2RlZmluZSBVQ19NQ09OVEVYVF9GUkVHU19SMTYgKCh2b2lkICopJmRteV9jdHh0LnVjX21j b250ZXh0LmZwX3JlZ3NbMTZdIC0gKHZvaWQgKikmZG15X2N0eHQpCi0tI2RlZmluZSBVQ19NQ09O VEVYVF9GUkVHU19SMTcgKCh2b2lkICopJmRteV9jdHh0LnVjX21jb250ZXh0LmZwX3JlZ3NbMTdd IC0gKHZvaWQgKikmZG15X2N0eHQpCi0tI2RlZmluZSBVQ19NQ09OVEVYVF9GUkVHU19SMTggKCh2 b2lkICopJmRteV9jdHh0LnVjX21jb250ZXh0LmZwX3JlZ3NbMThdIC0gKHZvaWQgKikmZG15X2N0 eHQpCi0tI2RlZmluZSBVQ19NQ09OVEVYVF9GUkVHU19SMTkgKCh2b2lkICopJmRteV9jdHh0LnVj X21jb250ZXh0LmZwX3JlZ3NbMTldIC0gKHZvaWQgKikmZG15X2N0eHQpCi0tI2RlZmluZSBVQ19N Q09OVEVYVF9GUkVHU19SMjAgKCh2b2lkICopJmRteV9jdHh0LnVjX21jb250ZXh0LmZwX3JlZ3Nb MjBdIC0gKHZvaWQgKikmZG15X2N0eHQpCi0tI2RlZmluZSBVQ19NQ09OVEVYVF9GUkVHU19SMjEg KCh2b2lkICopJmRteV9jdHh0LnVjX21jb250ZXh0LmZwX3JlZ3NbMjFdIC0gKHZvaWQgKikmZG15 X2N0eHQpCi0tI2RlZmluZSBVQ19NQ09OVEVYVF9GUkVHU19SMjIgKCh2b2lkICopJmRteV9jdHh0 LnVjX21jb250ZXh0LmZwX3JlZ3NbMjJdIC0gKHZvaWQgKikmZG15X2N0eHQpCi0tI2RlZmluZSBV Q19NQ09OVEVYVF9GUkVHU19SMjMgKCh2b2lkICopJmRteV9jdHh0LnVjX21jb250ZXh0LmZwX3Jl Z3NbMjNdIC0gKHZvaWQgKikmZG15X2N0eHQpCi0tI2RlZmluZSBVQ19NQ09OVEVYVF9GUkVHU19S MjQgKCh2b2lkICopJmRteV9jdHh0LnVjX21jb250ZXh0LmZwX3JlZ3NbMjRdIC0gKHZvaWQgKikm ZG15X2N0eHQpCi0tI2RlZmluZSBVQ19NQ09OVEVYVF9GUkVHU19SMjUgKCh2b2lkICopJmRteV9j dHh0LnVjX21jb250ZXh0LmZwX3JlZ3NbMjVdIC0gKHZvaWQgKikmZG15X2N0eHQpCi0tI2RlZmlu ZSBVQ19NQ09OVEVYVF9GUkVHU19SMjYgKCh2b2lkICopJmRteV9jdHh0LnVjX21jb250ZXh0LmZw X3JlZ3NbMjZdIC0gKHZvaWQgKikmZG15X2N0eHQpCi0tI2RlZmluZSBVQ19NQ09OVEVYVF9GUkVH U19SMjcgKCh2b2lkICopJmRteV9jdHh0LnVjX21jb250ZXh0LmZwX3JlZ3NbMjddIC0gKHZvaWQg KikmZG15X2N0eHQpCi0tI2RlZmluZSBVQ19NQ09OVEVYVF9GUkVHU19SMjggKCh2b2lkICopJmRt eV9jdHh0LnVjX21jb250ZXh0LmZwX3JlZ3NbMjhdIC0gKHZvaWQgKikmZG15X2N0eHQpCi0tI2Rl ZmluZSBVQ19NQ09OVEVYVF9GUkVHU19SMjkgKCh2b2lkICopJmRteV9jdHh0LnVjX21jb250ZXh0 LmZwX3JlZ3NbMjldIC0gKHZvaWQgKikmZG15X2N0eHQpCi0tI2RlZmluZSBVQ19NQ09OVEVYVF9G UkVHU19SMzAgKCh2b2lkICopJmRteV9jdHh0LnVjX21jb250ZXh0LmZwX3JlZ3NbMzBdIC0gKHZv aWQgKikmZG15X2N0eHQpCi0tI2RlZmluZSBVQ19NQ09OVEVYVF9GUkVHU19SMzEgKCh2b2lkICop JmRteV9jdHh0LnVjX21jb250ZXh0LmZwX3JlZ3NbMzFdIC0gKHZvaWQgKikmZG15X2N0eHQpCi0t I2RlZmluZSBVQ19NQ09OVEVYVF9GUkVHU19GUFNDUiAoKHZvaWQgKikmZG15X2N0eHQudWNfbWNv bnRleHQuZnBfcmVnc1szMl0gLSAodm9pZCAqKSZkbXlfY3R4dCkKLSsjZGVmaW5lIFVDX01DT05U RVhUX0ZSRUdTX1IwICgodm9pZCAqKSYoKChkb3VibGUgKikmZG15X2N0eHQudWNfbWNvbnRleHQu ZnBfcmVncylbMF0pIC0gKHZvaWQgKikmZG15X2N0eHQpCi0rI2RlZmluZSBVQ19NQ09OVEVYVF9G UkVHU19SMSAoKHZvaWQgKikmKCgoZG91YmxlICopJmRteV9jdHh0LnVjX21jb250ZXh0LmZwX3Jl Z3MpWzFdKSAtICh2b2lkICopJmRteV9jdHh0KQotKyNkZWZpbmUgVUNfTUNPTlRFWFRfRlJFR1Nf UjIgKCh2b2lkICopJigoKGRvdWJsZSAqKSZkbXlfY3R4dC51Y19tY29udGV4dC5mcF9yZWdzKVsy XSkgLSAodm9pZCAqKSZkbXlfY3R4dCkKLSsjZGVmaW5lIFVDX01DT05URVhUX0ZSRUdTX1IzICgo dm9pZCAqKSYoKChkb3VibGUgKikmZG15X2N0eHQudWNfbWNvbnRleHQuZnBfcmVncylbM10pIC0g KHZvaWQgKikmZG15X2N0eHQpCi0rI2RlZmluZSBVQ19NQ09OVEVYVF9GUkVHU19SNCAoKHZvaWQg KikmKCgoZG91YmxlICopJmRteV9jdHh0LnVjX21jb250ZXh0LmZwX3JlZ3MpWzRdKSAtICh2b2lk ICopJmRteV9jdHh0KQotKyNkZWZpbmUgVUNfTUNPTlRFWFRfRlJFR1NfUjUgKCh2b2lkICopJigo KGRvdWJsZSAqKSZkbXlfY3R4dC51Y19tY29udGV4dC5mcF9yZWdzKVs1XSkgLSAodm9pZCAqKSZk bXlfY3R4dCkKLSsjZGVmaW5lIFVDX01DT05URVhUX0ZSRUdTX1I2ICgodm9pZCAqKSYoKChkb3Vi bGUgKikmZG15X2N0eHQudWNfbWNvbnRleHQuZnBfcmVncylbNl0pIC0gKHZvaWQgKikmZG15X2N0 eHQpCi0rI2RlZmluZSBVQ19NQ09OVEVYVF9GUkVHU19SNyAoKHZvaWQgKikmKCgoZG91YmxlICop JmRteV9jdHh0LnVjX21jb250ZXh0LmZwX3JlZ3MpWzddKSAtICh2b2lkICopJmRteV9jdHh0KQot KyNkZWZpbmUgVUNfTUNPTlRFWFRfRlJFR1NfUjggKCh2b2lkICopJigoKGRvdWJsZSAqKSZkbXlf Y3R4dC51Y19tY29udGV4dC5mcF9yZWdzKVs4XSkgLSAodm9pZCAqKSZkbXlfY3R4dCkKLSsjZGVm aW5lIFVDX01DT05URVhUX0ZSRUdTX1I5ICgodm9pZCAqKSYoKChkb3VibGUgKikmZG15X2N0eHQu dWNfbWNvbnRleHQuZnBfcmVncylbOV0pIC0gKHZvaWQgKikmZG15X2N0eHQpCi0rI2RlZmluZSBV Q19NQ09OVEVYVF9GUkVHU19SMTAgKCh2b2lkICopJigoKGRvdWJsZSAqKSZkbXlfY3R4dC51Y19t Y29udGV4dC5mcF9yZWdzKVsxMF0pIC0gKHZvaWQgKikmZG15X2N0eHQpCi0rI2RlZmluZSBVQ19N Q09OVEVYVF9GUkVHU19SMTEgKCh2b2lkICopJigoKGRvdWJsZSAqKSZkbXlfY3R4dC51Y19tY29u dGV4dC5mcF9yZWdzKVsxMV0pIC0gKHZvaWQgKikmZG15X2N0eHQpCi0rI2RlZmluZSBVQ19NQ09O VEVYVF9GUkVHU19SMTIgKCh2b2lkICopJigoKGRvdWJsZSAqKSZkbXlfY3R4dC51Y19tY29udGV4 dC5mcF9yZWdzKVsxMl0pIC0gKHZvaWQgKikmZG15X2N0eHQpCi0rI2RlZmluZSBVQ19NQ09OVEVY VF9GUkVHU19SMTMgKCh2b2lkICopJigoKGRvdWJsZSAqKSZkbXlfY3R4dC51Y19tY29udGV4dC5m cF9yZWdzKVsxM10pIC0gKHZvaWQgKikmZG15X2N0eHQpCi0rI2RlZmluZSBVQ19NQ09OVEVYVF9G UkVHU19SMTQgKCh2b2lkICopJigoKGRvdWJsZSAqKSZkbXlfY3R4dC51Y19tY29udGV4dC5mcF9y ZWdzKVsxNF0pIC0gKHZvaWQgKikmZG15X2N0eHQpCi0rI2RlZmluZSBVQ19NQ09OVEVYVF9GUkVH U19SMTUgKCh2b2lkICopJigoKGRvdWJsZSAqKSZkbXlfY3R4dC51Y19tY29udGV4dC5mcF9yZWdz KVsxNV0pIC0gKHZvaWQgKikmZG15X2N0eHQpCi0rI2RlZmluZSBVQ19NQ09OVEVYVF9GUkVHU19S MTYgKCh2b2lkICopJigoKGRvdWJsZSAqKSZkbXlfY3R4dC51Y19tY29udGV4dC5mcF9yZWdzKVsx Nl0pIC0gKHZvaWQgKikmZG15X2N0eHQpCi0rI2RlZmluZSBVQ19NQ09OVEVYVF9GUkVHU19SMTcg KCh2b2lkICopJigoKGRvdWJsZSAqKSZkbXlfY3R4dC51Y19tY29udGV4dC5mcF9yZWdzKVsxN10p IC0gKHZvaWQgKikmZG15X2N0eHQpCi0rI2RlZmluZSBVQ19NQ09OVEVYVF9GUkVHU19SMTggKCh2 b2lkICopJigoKGRvdWJsZSAqKSZkbXlfY3R4dC51Y19tY29udGV4dC5mcF9yZWdzKVsxOF0pIC0g KHZvaWQgKikmZG15X2N0eHQpCi0rI2RlZmluZSBVQ19NQ09OVEVYVF9GUkVHU19SMTkgKCh2b2lk ICopJigoKGRvdWJsZSAqKSZkbXlfY3R4dC51Y19tY29udGV4dC5mcF9yZWdzKVsxOV0pIC0gKHZv aWQgKikmZG15X2N0eHQpCi0rI2RlZmluZSBVQ19NQ09OVEVYVF9GUkVHU19SMjAgKCh2b2lkICop JigoKGRvdWJsZSAqKSZkbXlfY3R4dC51Y19tY29udGV4dC5mcF9yZWdzKVsyMF0pIC0gKHZvaWQg KikmZG15X2N0eHQpCi0rI2RlZmluZSBVQ19NQ09OVEVYVF9GUkVHU19SMjEgKCh2b2lkICopJigo KGRvdWJsZSAqKSZkbXlfY3R4dC51Y19tY29udGV4dC5mcF9yZWdzKVsyMV0pIC0gKHZvaWQgKikm ZG15X2N0eHQpCi0rI2RlZmluZSBVQ19NQ09OVEVYVF9GUkVHU19SMjIgKCh2b2lkICopJigoKGRv dWJsZSAqKSZkbXlfY3R4dC51Y19tY29udGV4dC5mcF9yZWdzKVsyMl0pIC0gKHZvaWQgKikmZG15 X2N0eHQpCi0rI2RlZmluZSBVQ19NQ09OVEVYVF9GUkVHU19SMjMgKCh2b2lkICopJigoKGRvdWJs ZSAqKSZkbXlfY3R4dC51Y19tY29udGV4dC5mcF9yZWdzKVsyM10pIC0gKHZvaWQgKikmZG15X2N0 eHQpCi0rI2RlZmluZSBVQ19NQ09OVEVYVF9GUkVHU19SMjQgKCh2b2lkICopJigoKGRvdWJsZSAq KSZkbXlfY3R4dC51Y19tY29udGV4dC5mcF9yZWdzKVsyNF0pIC0gKHZvaWQgKikmZG15X2N0eHQp Ci0rI2RlZmluZSBVQ19NQ09OVEVYVF9GUkVHU19SMjUgKCh2b2lkICopJigoKGRvdWJsZSAqKSZk bXlfY3R4dC51Y19tY29udGV4dC5mcF9yZWdzKVsyNV0pIC0gKHZvaWQgKikmZG15X2N0eHQpCi0r I2RlZmluZSBVQ19NQ09OVEVYVF9GUkVHU19SMjYgKCh2b2lkICopJigoKGRvdWJsZSAqKSZkbXlf Y3R4dC51Y19tY29udGV4dC5mcF9yZWdzKVsyNl0pIC0gKHZvaWQgKikmZG15X2N0eHQpCi0rI2Rl ZmluZSBVQ19NQ09OVEVYVF9GUkVHU19SMjcgKCh2b2lkICopJigoKGRvdWJsZSAqKSZkbXlfY3R4 dC51Y19tY29udGV4dC5mcF9yZWdzKVsyN10pIC0gKHZvaWQgKikmZG15X2N0eHQpCi0rI2RlZmlu ZSBVQ19NQ09OVEVYVF9GUkVHU19SMjggKCh2b2lkICopJigoKGRvdWJsZSAqKSZkbXlfY3R4dC51 Y19tY29udGV4dC5mcF9yZWdzKVsyOF0pIC0gKHZvaWQgKikmZG15X2N0eHQpCi0rI2RlZmluZSBV Q19NQ09OVEVYVF9GUkVHU19SMjkgKCh2b2lkICopJigoKGRvdWJsZSAqKSZkbXlfY3R4dC51Y19t Y29udGV4dC5mcF9yZWdzKVsyOV0pIC0gKHZvaWQgKikmZG15X2N0eHQpCi0rI2RlZmluZSBVQ19N Q09OVEVYVF9GUkVHU19SMzAgKCh2b2lkICopJigoKGRvdWJsZSAqKSZkbXlfY3R4dC51Y19tY29u dGV4dC5mcF9yZWdzKVszMF0pIC0gKHZvaWQgKikmZG15X2N0eHQpCi0rI2RlZmluZSBVQ19NQ09O VEVYVF9GUkVHU19SMzEgKCh2b2lkICopJigoKGRvdWJsZSAqKSZkbXlfY3R4dC51Y19tY29udGV4 dC5mcF9yZWdzKVszMV0pIC0gKHZvaWQgKikmZG15X2N0eHQpCi0rI2RlZmluZSBVQ19NQ09OVEVY VF9GUkVHU19GUFNDUiAoKHZvaWQgKikmKCgoZG91YmxlICopJmRteV9jdHh0LnVjX21jb250ZXh0 LmZwX3JlZ3MpWzMyXSkgLSAodm9pZCAqKSZkbXlfY3R4dCkKLSAKLSAjZGVmaW5lIFVDX01DT05U RVhUX1ZfUkVHUyAoKHZvaWQgKikmZG15X2N0eHQudWNfbWNvbnRleHQudl9yZWdzIC0gKHZvaWQg KikmZG15X2N0eHQpCi0gCi0tLS0gc3JjL3B0cmFjZS9fVVBUX2ludGVybmFsLmgKLSsrKyBzcmMv cHRyYWNlL19VUFRfaW50ZXJuYWwuaAotQEAgLTM3LDcgKzM3LDE0IEBAIFdJVEggVEhFIFNPRlRX QVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU4gVEhFIFNPRlRXQVJFLiAgKi8KLSAj aW5jbHVkZSA8c3lzL3B0cmFjZS5oPgotICNlbmRpZgotICNpZmRlZiBIQVZFX1NZU19QUk9DRlNf SAotKyNpZiAhZGVmaW5lZChfX0dMSUJDX18pICYmIGRlZmluZWQoX19wb3dlcnBjX18pCi0rLyog bmFzdHkgaGFjayB0byBwcmV2ZW50IGNvbmZsaWN0IHdpdGggYXNtL3B0cmFjZS5oICovCi0rI2Rl ZmluZSBwdF9yZWdzIG11c2xfcHRfcmVncwotICNpbmNsdWRlIDxzeXMvcHJvY2ZzLmg+Ci0rI3Vu ZGVmIHB0X3JlZ3MKLSsjZWxzZQotKyNpbmNsdWRlIDxzeXMvcHJvY2ZzLmg+Ci0rI2VuZGlmCi0g I2VuZGlmCi0gCi0gI2luY2x1ZGUgPGVycm5vLmg+CiAtLS0gc3JjL3B0cmFjZS9fVVBUX3JlZ19v ZmZzZXQuYwogKysrIHNyYy9wdHJhY2UvX1VQVF9yZWdfb2Zmc2V0LmMKIEBAIC0zMiw2ICszMiw4 IEBAIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU4gVEhF IFNPRlRXQVJFLiAgKi8KCkZyb20gMDllNDZkODJhOWQxNzgxZTFhZjlkYzJkNzFiODYzZmI1ZWMx MGY5ZSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogcTY2IDxkYW5pZWxAb2N0YWZvcmdl Lm9yZz4KRGF0ZTogTW9uLCAyOCBPY3QgMjAxOSAyMjo1MTo0MCArMDEwMApTdWJqZWN0OiBbUEFU Q0ggMDQ5LzE4Nl0gb2NhbWw6IGRyb3AgdW5uZWNlc3NhcnkgbXVzbC9wcGMgcGF0Y2gKCltjaSBz a2lwXQotLS0KIHNyY3BrZ3Mvb2NhbWwvcGF0Y2hlcy9tdXNsLXBwYy5wYXRjaCAgICAgICAgICB8 IDExICsrKysrKysrKysrCiAuLi4vb2NhbWwtNC4wOC4wLXBwYy1zaWdjb250ZXh0LW11c2wucGF0 Y2ggICAgfCAxOSAtLS0tLS0tLS0tLS0tLS0tLS0tCiAyIGZpbGVzIGNoYW5nZWQsIDExIGluc2Vy dGlvbnMoKyksIDE5IGRlbGV0aW9ucygtKQogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3Mvb2Nh bWwvcGF0Y2hlcy9tdXNsLXBwYy5wYXRjaAogZGVsZXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3Mvb2Nh bWwvcGF0Y2hlcy9vY2FtbC00LjA4LjAtcHBjLXNpZ2NvbnRleHQtbXVzbC5wYXRjaAoKZGlmZiAt LWdpdCBhL3NyY3BrZ3Mvb2NhbWwvcGF0Y2hlcy9tdXNsLXBwYy5wYXRjaCBiL3NyY3BrZ3Mvb2Nh bWwvcGF0Y2hlcy9tdXNsLXBwYy5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw MDAwMDAwMC4uYmMyYzEwZmQ0M2EKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL29jYW1sL3Bh dGNoZXMvbXVzbC1wcGMucGF0Y2gKQEAgLTAsMCArMSwxMSBAQAorLS0tIGEvcnVudGltZS9zaWdu YWxzX29zZGVwLmgKKysrKyBiL3J1bnRpbWUvc2lnbmFsc19vc2RlcC5oCitAQCAtMzA5LDYgKzMw OSw4IEBACisgCisgI2VsaWYgZGVmaW5lZChUQVJHRVRfcG93ZXIpICYmIGRlZmluZWQoU1lTX2Vs ZikKKyAKKysgICNpbmNsdWRlIDxhc20vcHRyYWNlLmg+CisrCisgICAjZGVmaW5lIERFQ0xBUkVf U0lHTkFMX0hBTkRMRVIobmFtZSkgXAorICAgICBzdGF0aWMgdm9pZCBuYW1lKGludCBzaWcsIHN0 cnVjdCBzaWdjb250ZXh0ICogY29udGV4dCkKKyAKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mvb2NhbWwv cGF0Y2hlcy9vY2FtbC00LjA4LjAtcHBjLXNpZ2NvbnRleHQtbXVzbC5wYXRjaCBiL3NyY3BrZ3Mv b2NhbWwvcGF0Y2hlcy9vY2FtbC00LjA4LjAtcHBjLXNpZ2NvbnRleHQtbXVzbC5wYXRjaApkZWxl dGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYTQwYmM1ZmQ2NGQuLjAwMDAwMDAwMDAwCi0tLSBh L3NyY3BrZ3Mvb2NhbWwvcGF0Y2hlcy9vY2FtbC00LjA4LjAtcHBjLXNpZ2NvbnRleHQtbXVzbC5w YXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDE5ICswLDAgQEAKLS0tLSBvY2FtbC00LjA0LjIvcnVu dGltZS9zaWduYWxzX29zZGVwLmgKLSsrKyBvY2FtbC00LjA0LjIvcnVudGltZS9zaWduYWxzX29z ZGVwLmgKLUBAIC0yOTcsMTEgKzI5NywxMSBAQAotICAgICAgc2lnYWN0LnNhX2ZsYWdzID0gMAot IAotICAgdHlwZWRlZiB1bnNpZ25lZCBsb25nIGNvbnRleHRfcmVnOwotLSAgI2RlZmluZSBDT05U RVhUX1BDIChjb250ZXh0LT5yZWdzLT5uaXApCi0tICAjZGVmaW5lIENPTlRFWFRfRVhDRVBUSU9O X1BPSU5URVIgKGNvbnRleHQtPnJlZ3MtPmdwclsyOV0pCi0tICAjZGVmaW5lIENPTlRFWFRfWU9V TkdfTElNSVQgKGNvbnRleHQtPnJlZ3MtPmdwclszMF0pCi0tICAjZGVmaW5lIENPTlRFWFRfWU9V TkdfUFRSIChjb250ZXh0LT5yZWdzLT5ncHJbMzFdKQotLSAgI2RlZmluZSBDT05URVhUX1NQIChj b250ZXh0LT5yZWdzLT5ncHJbMV0pCi0rICAjZGVmaW5lIENPTlRFWFRfUEMgKGNvbnRleHQtPmdw X3JlZ3NbMzJdKQotKyAgI2RlZmluZSBDT05URVhUX0VYQ0VQVElPTl9QT0lOVEVSIChjb250ZXh0 LT5ncF9yZWdzWzI5XSkKLSsgICNkZWZpbmUgQ09OVEVYVF9ZT1VOR19MSU1JVCAoY29udGV4dC0+ Z3BfcmVnc1szMF0pCi0rICAjZGVmaW5lIENPTlRFWFRfWU9VTkdfUFRSIChjb250ZXh0LT5ncF9y ZWdzWzMxXSkKLSsgICNkZWZpbmUgQ09OVEVYVF9TUCAoY29udGV4dC0+Z3BfcmVnc1sxXSkKLSAK LSAvKioqKioqKioqKioqKioqKioqIFBvd2VyUEMsIE5ldEJTRCAqLwotIAoKRnJvbSA4M2ExMjU0 ZDBkMzgzMjY1MzY4ZTk0ZDYyNDEzNmIzZTQ3M2Y4ZWE2IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAw MQpGcm9tOiBSZW5hdG8gQWd1aWFyIDxyZW5hdG9AcmVuYWcubWU+CkRhdGU6IE1vbiwgMjggT2N0 IDIwMTkgMTM6Mjc6NDEgLTA3MDAKU3ViamVjdDogW1BBVENIIDA1MC8xODZdIHJ0bDg4MTJhdS1k a21zOiB1cGRhdGUgdG8gMjAxOTA5MDMKCi0tLQogc3JjcGtncy9ydGw4ODEyYXUtZGttcy90ZW1w bGF0ZSB8IDggKysrKy0tLS0KIDEgZmlsZSBjaGFuZ2VkLCA0IGluc2VydGlvbnMoKyksIDQgZGVs ZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9ydGw4ODEyYXUtZGttcy90ZW1wbGF0ZSBi L3NyY3BrZ3MvcnRsODgxMmF1LWRrbXMvdGVtcGxhdGUKaW5kZXggNGY0YjcxMmY4ODguLjc4MDk2 ODdlYzQxIDEwMDY0NAotLS0gYS9zcmNwa2dzL3J0bDg4MTJhdS1ka21zL3RlbXBsYXRlCisrKyBi L3NyY3BrZ3MvcnRsODgxMmF1LWRrbXMvdGVtcGxhdGUKQEAgLTEsMTcgKzEsMTcgQEAKICMgVGVt cGxhdGUgZmlsZSBmb3IgJ3J0bDg4MTJhdS1ka21zJwogcGtnbmFtZT1ydGw4ODEyYXUtZGttcwot dmVyc2lvbj0yMDE5MDczMQordmVyc2lvbj0yMDE5MDkwMwogcmV2aXNpb249MQotX2dpdHJldj02 ZmFhM2VhZjg5MTY2NjdjYjdmNGFiNTk5MjNiMzYwOGU2YWI3YjE4CitfZ2l0cmV2PTMwZDQ3YTBh M2Y0M2NjYjE5ZThmZDU5ZmU5M2Q3NGE5NTUxNDdiZjIKIGFyY2hzPW5vYXJjaAogd3Jrc3JjPSJy dGw4ODEyYXUtJHtfZ2l0cmV2fSIKIGRlcGVuZHM9ImRrbXMiCiBzaG9ydF9kZXNjPSJSZWFsdGVr IDg4MTJBVS84ODIxQVUgVVNCIFdpRmkgZHJpdmVyIChES01TKSIKLW1haW50YWluZXI9Ik9ycGhh bmVkIDxvcnBoYW5Adm9pZGxpbnV4Lm9yZz4iCittYWludGFpbmVyPSJSZW5hdG8gQWd1aWFyIDxy ZW5hdG9AcmVuYWcubWU+IgogbGljZW5zZT0iR1BMLTIuMC1vbmx5IgogaG9tZXBhZ2U9Imh0dHA6 Ly93d3cuZGxpbmsuY29tIgogZGlzdGZpbGVzPSJodHRwczovL2dpdGh1Yi5jb20vZ29yZGJveS9y dGw4ODEyYXUvYXJjaGl2ZS8ke19naXRyZXZ9LnRhci5neiIKLWNoZWNrc3VtPWRmZTA1NDQzY2Qw YzUyZjg2YTQ0NTdlZmNlZmNiZjk3ODlkNDEzMWViMjk1NzkwN2U4NWQ0OWVlMjUwZDIxMWQKK2No ZWNrc3VtPTg4OTNjYjAyNjgzZDI1M2VmZTZiZTVhMmQxZjljY2VhNzc4ZjAzYjE2MDYwNDMzODFl YWE2NDllMjZlOGI2NTcKIGRrbXNfbW9kdWxlcz0icnRsODgxMmF1IDUuMi4yMCIKIAogZG9faW5z dGFsbCgpIHsKCkZyb20gM2U1MWUwOTk4NWIxNWUyMTZlMWNhNDUxZDIwN2I4NjFjZmZkNzU1NCBN b24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogRG9hbiBUcmFuIENvbmcgRGFuaCA8Y29uZ2Rh bmhxeEBnbWFpbC5jb20+CkRhdGU6IE1vbiwgMjggT2N0IDIwMTkgMTI6Mjg6MzEgKzA3MDAKU3Vi amVjdDogW1BBVENIIDA1MS8xODZdIGZpcmVmb3g6IGZpeCBidWlsZCBmb3IgYXJtdjdoZi1tdXNs Cgpbc2tpcCBjaV0KLS0tCiAuLi4vZmlyZWZveC9wYXRjaGVzL211c2wtcnVzdC5jb25maWd1cmUu cGF0Y2ggfCAyNiArKysrKysrKysrKysrKysrKysrCiBzcmNwa2dzL2ZpcmVmb3gvdGVtcGxhdGUg ICAgICAgICAgICAgICAgICAgICAgfCAgMSAtCiAyIGZpbGVzIGNoYW5nZWQsIDI2IGluc2VydGlv bnMoKyksIDEgZGVsZXRpb24oLSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL2ZpcmVmb3gv cGF0Y2hlcy9tdXNsLXJ1c3QuY29uZmlndXJlLnBhdGNoCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9m aXJlZm94L3BhdGNoZXMvbXVzbC1ydXN0LmNvbmZpZ3VyZS5wYXRjaCBiL3NyY3BrZ3MvZmlyZWZv eC9wYXRjaGVzL211c2wtcnVzdC5jb25maWd1cmUucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQK aW5kZXggMDAwMDAwMDAwMDAuLmQ4ZjM4NzEzNmUwCi0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtn cy9maXJlZm94L3BhdGNoZXMvbXVzbC1ydXN0LmNvbmZpZ3VyZS5wYXRjaApAQCAtMCwwICsxLDI2 IEBACistLS0gYnVpbGQvbW96LmNvbmZpZ3VyZS9ydXN0LmNvbmZpZ3VyZQkyMDE5LTEwLTI4IDEy OjA1OjA0LjkzMDQwNDYwMyArMDcwMAorKysrIGJ1aWxkL21vei5jb25maWd1cmUvcnVzdC5jb25m aWd1cmUJMjAxOS0xMC0yOCAxMjowOTo0Mi43NDIzMzg5NTcgKzA3MDAKK0BAIC0yOTcsMTEgKzI5 NywyMCBAQAorICAgICAgICAgICAgICAgICAgICAgc3VmZml4ID0gJ2hmJworICAgICAgICAgICAg ICAgICBlbHNlOgorICAgICAgICAgICAgICAgICAgICAgc3VmZml4ID0gJycKKysKKysgICAgICAg ICAgICAgICAgbmFycm93ZWQgPSBbXQorICAgICAgICAgICAgICAgICBmb3IgcCBpbiBwcmVmaXhl czoKKyAgICAgICAgICAgICAgICAgICAgIGZvciBjIGluIGNhbmRpZGF0ZXM6CistICAgICAgICAg ICAgICAgICAgICAgICAgaWYgYy5ydXN0X3RhcmdldC5zdGFydHN3aXRoKCd7fS0nLmZvcm1hdChw KSkgYW5kIFwKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGMucnVzdF90YXJnZXQu ZW5kc3dpdGgoc3VmZml4KToKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGMu cnVzdF90YXJnZXQKKysgICAgICAgICAgICAgICAgICAgICAgICBpZiBjLnJ1c3RfdGFyZ2V0LnN0 YXJ0c3dpdGgoJ3t9LScuZm9ybWF0KHApKToKKysgICAgICAgICAgICAgICAgICAgICAgICAgICAg bmFycm93ZWQuYXBwZW5kKGMucnVzdF90YXJnZXQpCisrCisrICAgICAgICAgICAgICAgIGZvciB0 YXJnZXQgaW4gbmFycm93ZWQ6CisrICAgICAgICAgICAgICAgICAgICBpZiB0YXJnZXQuZW5kc3dp dGgoaG9zdF9vcl90YXJnZXQucmF3X29zKToKKysgICAgICAgICAgICAgICAgICAgICAgICByZXR1 cm4gdGFyZ2V0CisrCisrICAgICAgICAgICAgICAgIGZvciB0YXJnZXQgaW4gbmFycm93ZWQ6Cisr ICAgICAgICAgICAgICAgICAgICBpZiB0YXJnZXQuZW5kc3dpdGgoc3VmZml4KToKKysgICAgICAg ICAgICAgICAgICAgICAgICByZXR1cm4gdGFyZ2V0CisgCisgICAgICAgICAgICAgIyBTZWUgaWYg d2UgY2FuIG5hcnJvdyBkb3duIG9uIHRoZSBleGFjdCBhbGlhcworICAgICAgICAgICAgIG5hcnJv d2VkID0gW2MgZm9yIGMgaW4gY2FuZGlkYXRlcyBpZiBjLnRhcmdldC5hbGlhcyA9PSBob3N0X29y X3RhcmdldC5hbGlhc10KZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZmlyZWZveC90ZW1wbGF0ZSBiL3Ny Y3BrZ3MvZmlyZWZveC90ZW1wbGF0ZQppbmRleCA0YjYxMTJiYjM5Mi4uZmVjY2UyOGQ5OTcgMTAw NjQ0Ci0tLSBhL3NyY3BrZ3MvZmlyZWZveC90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2ZpcmVmb3gv dGVtcGxhdGUKQEAgLTMyLDcgKzMyLDYgQEAgYnVpbGRfb3B0aW9ucz0iYWxzYSBkYnVzIHB1bHNl YXVkaW8gc3RhcnR1cF9ub3RpZmljYXRpb24geHNjcmVlbnNhdmVyIHNuZGlvIHdheWwKIGJ1aWxk X29wdGlvbnNfZGVmYXVsdD0iYWxzYSBkYnVzIHB1bHNlYXVkaW8gc3RhcnR1cF9ub3RpZmljYXRp b24geHNjcmVlbnNhdmVyIHNuZGlvIHdheWxhbmQiCiAKIGNhc2UgJFhCUFNfVEFSR0VUX01BQ0hJ TkUgaW4KLQlhcm12N2wtbXVzbCkgYnJva2VuPSJodHRwczovL2J1aWxkLnZvaWRsaW51eC5vcmcv YnVpbGRlcnMvYXJtdjdsLW11c2xfYnVpbGRlci9idWlsZHMvMjE1MzMvc3RlcHMvc2hlbGxfMy9s b2dzL3N0ZGlvIiA7OwogCWFybXY2KikKIAkJYnJva2VuPSJyZXF1aXJlZCBORU9OIGV4dGVuc2lv bnMgYXJlIG5vdCBzdXBwb3J0ZWQgb24gYXJtdjYiCiAJCTs7CgpGcm9tIDM1MDJiYzY5YWY2MTEy MWU1ZjU2MDZjZTVkNzI5MWRhODI2ZTdjODAgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206 IE5hdGhhbiBPd2VucyA8bmRvd2VuczA0QGdtYWlsLmNvbT4KRGF0ZTogTW9uLCAyOCBPY3QgMjAx OSAyMjoyNToyNSAtMDUwMApTdWJqZWN0OiBbUEFUQ0ggMDUyLzE4Nl0gSW1hZ2VNYWdpY2s2OiB1 cGRhdGUgdG8gNi45LjEwLTY5CgpJbmNsdWRlcyBmaXhlcyBmb3IgQ1ZFLTIwMTktMTc1NDAKVVJM Omh0dHBzOi8vc2VjdXJpdHktdHJhY2tlci5kZWJpYW4ub3JnL3RyYWNrZXIvQ1ZFLTIwMTktMTc1 NDAKLS0tCiBzcmNwa2dzL0ltYWdlTWFnaWNrNi90ZW1wbGF0ZSB8IDQgKystLQogMSBmaWxlIGNo YW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNw a2dzL0ltYWdlTWFnaWNrNi90ZW1wbGF0ZSBiL3NyY3BrZ3MvSW1hZ2VNYWdpY2s2L3RlbXBsYXRl CmluZGV4IDc1ZDY1YjQ5ZmIxLi41MjMzYjM1NDBlNiAxMDA2NDQKLS0tIGEvc3JjcGtncy9JbWFn ZU1hZ2ljazYvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9JbWFnZU1hZ2ljazYvdGVtcGxhdGUKQEAg LTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdJbWFnZU1hZ2ljazYnCiBwa2duYW1l PUltYWdlTWFnaWNrNgogX21ham9ydmVyPTYuOS4xMAotX3BhdGNodmVyPTY4CitfcGF0Y2h2ZXI9 NjkKIHZlcnNpb249IiR7X21ham9ydmVyfS4ke19wYXRjaHZlcn0iCiByZXZpc2lvbj0xCiB3cmtz cmM9IiR7cGtnbmFtZX0tJHtfbWFqb3J2ZXJ9LSR7X3BhdGNodmVyfSIKQEAgLTIwLDcgKzIwLDcg QEAgbWFpbnRhaW5lcj0iSm9oYW5uZXMgPGpvaGFubmVzLmJyZWNodG1hbm5AZ21haWwuY29tPiIK IGxpY2Vuc2U9IkltYWdlTWFnaWNrIgogaG9tZXBhZ2U9Imh0dHBzOi8vd3d3LmltYWdlbWFnaWNr Lm9yZy8iCiBkaXN0ZmlsZXM9Imh0dHBzOi8vZ2l0aHViLmNvbS9JbWFnZU1hZ2ljay9JbWFnZU1h Z2ljazYvYXJjaGl2ZS8ke19tYWpvcnZlcn0tJHtfcGF0Y2h2ZXJ9LnRhci5neiIKLWNoZWNrc3Vt PTJjYWEzZDhkMWY2NWU3MzNkZTMwZDFmNTM3ZTU3OTkxZmYzYWRiM2VkYjViNjBhZmE5Y2QwZjZl MGEyMDk0NWYKK2NoZWNrc3VtPWQ1NjI1ZWQ5MmU1OTNkOGRjMDJjZGJlODdhOGE4M2EwYTVhY2Nm NGMzZjZhYWQ5Mzc5YzEzMGMyNzU4Mjg4N2IKIAoga2VlcF9saWJ0b29sX2FyY2hpdmVzPXllcwog Y29uZl9maWxlcz0iL2V0Yy9JbWFnZU1hZ2ljay0ke19tYWpvcnZlciUlLip9LyoueG1sIgoKRnJv bSBjNzU2ZDQzMDE2ZjBlZjc3YmE5MWRjOGVhNTBjNzcyYjE4YWU3MGJlIE1vbiBTZXAgMTcgMDA6 MDA6MDAgMjAwMQpGcm9tOiBEb2FuIFRyYW4gQ29uZyBEYW5oIDxjb25nZGFuaHF4QGdtYWlsLmNv bT4KRGF0ZTogVHVlLCAyMiBPY3QgMjAxOSAwODoyMTo1OSArMDcwMApTdWJqZWN0OiBbUEFUQ0gg MDUzLzE4Nl0gZmlyZWZveC1lc3I6IHVwZGF0ZSB0byA2OC4yLjAuCgotLS0KIHNyY3BrZ3MvZmly ZWZveC1lc3IvdGVtcGxhdGUgfCAxMCArKystLS0tLS0tCiAxIGZpbGUgY2hhbmdlZCwgMyBpbnNl cnRpb25zKCspLCA3IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZmlyZWZveC1l c3IvdGVtcGxhdGUgYi9zcmNwa2dzL2ZpcmVmb3gtZXNyL3RlbXBsYXRlCmluZGV4IGM3YTRkZTAy MjFjLi43NjE0NWZhOGE4NiAxMDA2NDQKLS0tIGEvc3JjcGtncy9maXJlZm94LWVzci90ZW1wbGF0 ZQorKysgYi9zcmNwa2dzL2ZpcmVmb3gtZXNyL3RlbXBsYXRlCkBAIC0zLDggKzMsOCBAQAogIyBU SElTIFBLRyBNVVNUIEJFIFNZTkNIUk9OSVpFRCBXSVRIICJzcmNwa2dzL2ZpcmVmb3gtZXNyLWkx OG4iLgogIwogcGtnbmFtZT1maXJlZm94LWVzcgotdmVyc2lvbj02OC4xLjAKLXJldmlzaW9uPTMK K3ZlcnNpb249NjguMi4wCityZXZpc2lvbj0xCiB3cmtzcmM9ImZpcmVmb3gtJHt2ZXJzaW9ufSIK IGJ1aWxkX2hlbHBlcj0icnVzdCIKIHNob3J0X2Rlc2M9Ik1vemlsbGEgRmlyZWZveCB3ZWIgYnJv d3NlciAtIEV4dGVuZGVkIFN1cHBvcnQgUmVsZWFzZSAoRVNSKSIKQEAgLTEyLDcgKzEyLDcgQEAg bWFpbnRhaW5lcj0iRWl2aW5kIFVnZ2VkYWwgPGVpdmluZEB1Z2dlZGFsLmNvbT4iCiBsaWNlbnNl PSJNUEwtMi4wLCBHUEwtMi4wLW9yLWxhdGVyLCBMR1BMLTIuMS1vci1sYXRlciIKIGhvbWVwYWdl PSJodHRwczovL3d3dy5tb3ppbGxhLm9yZy9maXJlZm94L29yZ2FuaXphdGlvbnMvIgogZGlzdGZp bGVzPSIke01PWklMTEFfU0lURX0vZmlyZWZveC9yZWxlYXNlcy8ke3ZlcnNpb259ZXNyL3NvdXJj ZS9maXJlZm94LSR7dmVyc2lvbn1lc3Iuc291cmNlLnRhci54eiIKLWNoZWNrc3VtPWY1NmY1ZmE1 YTQ3NDRiZTBiOWFjZjI1OWNiOTkxMjU0ZDcwOGE1MGI5YTBhMTJkMWQ4NDZmZmE1YTZjNDA5YWMK K2NoZWNrc3VtPTg1ZjFjMmVhZjY4ZWJlZGNiYzBiNzhhMzQyZjZkMTZlZjA4NjVkZWRkNDI2YTFi YmE5NGI3NWM4NWY3MTZmMzgKIAogbGliMzJkaXNhYmxlZD15ZXMKIGhvc3RtYWtlZGVwZW5kcz0i YXV0b2NvbmYyMTMgdW56aXAgemlwIHBrZy1jb25maWcgcGVybCBweXRob24geWFzbQpAQCAtMTEw LDEwICsxMTAsNiBAQCBkb19idWlsZCgpIHsKIAlta2RpciAtcCB0aGlyZF9wYXJ0eS9ydXN0L2xp YmxvYWRpbmcvLmRlcHMKIAogCWNhc2UgIiRYQlBTX1RBUkdFVF9NQUNISU5FIiBpbgotCWk2ODYq KQotCQlleHBvcnQgQ0ZMQUdTKz0iIC1EX0ZJTEVfT0ZGU0VUX0JJVFM9NjQiCi0JCWV4cG9ydCBD WFhGTEFHUys9IiAtRF9GSUxFX09GRlNFVF9CSVRTPTY0IgotCQk7OwogCWFybXY3KikKIAkJZXhw b3J0IENGTEFHUys9IiAtbWZwdT1uZW9uIC1Xbm8tcHNhYmkiCiAJCWV4cG9ydCBDWFhGTEFHUys9 IiAtbWZwdT1uZW9uIC1Xbm8tcHNhYmkiCgpGcm9tIGJhNWY3NWE1MjczMDNlNWI5MGYwNjllZDM1 ODg0YzEzZDg1ZTU4MDcgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IERvYW4gVHJhbiBD b25nIERhbmggPGNvbmdkYW5ocXhAZ21haWwuY29tPgpEYXRlOiBNb24sIDI4IE9jdCAyMDE5IDE4 OjI3OjIzICswNzAwClN1YmplY3Q6IFtQQVRDSCAwNTQvMTg2XSBmaXJlZm94LWVzci1pMThuOiB1 cGRhdGUgdG8gNjguMi4wLgoKW3NraXAgY2ldCi0tLQogc3JjcGtncy9maXJlZm94LWVzci1pMThu L3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0 aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9maXJlZm94LWVzci1pMThuL3RlbXBsYXRlIGIv c3JjcGtncy9maXJlZm94LWVzci1pMThuL3RlbXBsYXRlCmluZGV4IGI0ZTE3ZmIxNmYwLi5iYTUy ZjZjNzNhNiAxMDA2NDQKLS0tIGEvc3JjcGtncy9maXJlZm94LWVzci1pMThuL3RlbXBsYXRlCisr KyBiL3NyY3BrZ3MvZmlyZWZveC1lc3ItaTE4bi90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMg VGVtcGxhdGUgZmlsZSBmb3IgJ2ZpcmVmb3gtZXNyLWkxOG4nCiBwa2duYW1lPWZpcmVmb3gtZXNy LWkxOG4KLXZlcnNpb249NjguMS4wCit2ZXJzaW9uPTY4LjIuMAogcmV2aXNpb249MQogYnVpbGRf c3R5bGU9bWV0YQogaG9tZXBhZ2U9Imh0dHBzOi8vd3d3Lm1vemlsbGEub3JnL2ZpcmVmb3gvIgoK RnJvbSBhMGI4MTM0Y2UwNDI0MDNiNjJiNDBhOTg0ODRjMjFjNjljNjQxNWJlIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBKb2hhbm5lcyA8am9oYW5uZXMuYnJlY2h0bWFubkBnbWFpbC5j b20+CkRhdGU6IFR1ZSwgMjkgT2N0IDIwMTkgMDY6NTU6NDEgKzAxMDAKU3ViamVjdDogW1BBVENI IDA1NS8xODZdIGZpcmVmb3gtZXNyOiBkcm9wIHJ1c3QtY3NzcGFyc2VyLnBhdGNoCgotLS0KIC4u Li9maXJlZm94LWVzci9wYXRjaGVzL3J1c3QtY3NzcGFyc2VyLnBhdGNoICB8IDkwIC0tLS0tLS0t LS0tLS0tLS0tLS0KIDEgZmlsZSBjaGFuZ2VkLCA5MCBkZWxldGlvbnMoLSkKIGRlbGV0ZSBtb2Rl IDEwMDY0NCBzcmNwa2dzL2ZpcmVmb3gtZXNyL3BhdGNoZXMvcnVzdC1jc3NwYXJzZXIucGF0Y2gK CmRpZmYgLS1naXQgYS9zcmNwa2dzL2ZpcmVmb3gtZXNyL3BhdGNoZXMvcnVzdC1jc3NwYXJzZXIu cGF0Y2ggYi9zcmNwa2dzL2ZpcmVmb3gtZXNyL3BhdGNoZXMvcnVzdC1jc3NwYXJzZXIucGF0Y2gK ZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDFlYmVmODdjMDE0Li4wMDAwMDAwMDAwMAot LS0gYS9zcmNwa2dzL2ZpcmVmb3gtZXNyL3BhdGNoZXMvcnVzdC1jc3NwYXJzZXIucGF0Y2gKKysr IC9kZXYvbnVsbApAQCAtMSw5MCArMCwwIEBACi1iYWNrcG9ydCBvZjoKLQotRnJvbSAzYzk4ZDIy YzVkZTNiNjk2YmYxZmRlMmI2YzkwMDY5ODEyMzEyYWE2IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAw MQotRnJvbTogU2ltb24gU2FwaW4gPHNpbW9uLnNhcGluQGV4eXIub3JnPgotRGF0ZTogVHVlLCAy MyBBcHIgMjAxOSAxMzo0NzoyNSArMDIwMAotU3ViamVjdDogW1BBVENIXSBGaXggYSBmdXR1cmUt Y29tcGF0IHdhcm5pbmcKLQotYGBgCi13YXJuaW5nW0UwNTA2XTogY2Fubm90IGFzc2lnbiB0byBg c2VsZi5pbnB1dC5jYWNoZWRfdG9rZW5gIGJlY2F1c2UgaXQgaXMgYm9ycm93ZWQKLSAgIC0tPiBz cmMvcGFyc2VyLnJzOjU5MToxNwotICAgIHwKLTU2NiB8ICAgICBwdWIgZm4gbmV4dF9pbmNsdWRp bmdfd2hpdGVzcGFjZV9hbmRfY29tbWVudHMoJm11dCBzZWxmKSAtPiBSZXN1bHQ8JlRva2VuPCdp PiwgQmFzaWNQYXJzZUVycm9yPCdpPj4gewotICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAtIGxldCdzIGNhbGwgdGhlIGxpZmV0aW1lIG9mIHRo aXMgcmVmZXJlbmNlIGAnMWAKLS4uLgotNTc5IHwgICAgICAgICAgICAgU29tZShyZWYgY2FjaGVk X3Rva2VuKQotICAgIHwgICAgICAgICAgICAgICAgICAtLS0tLS0tLS0tLS0tLS0tIGJvcnJvdyBv ZiBgc2VsZi5pbnB1dC5jYWNoZWRfdG9rZW5gIG9jY3VycyBoZXJlCi0uLi4KLTU5MSB8ICAgICAg ICAgICAgICAgICBzZWxmLmlucHV0LmNhY2hlZF90b2tlbiA9IFNvbWUoQ2FjaGVkVG9rZW4gewot ICAgIHwgICAgICAgICAgICAgICAgIF5eXl5eXl5eXl5eXl5eXl5eXl5eXl5eIGFzc2lnbm1lbnQg dG8gYm9ycm93ZWQgYHNlbGYuaW5wdXQuY2FjaGVkX3Rva2VuYCBvY2N1cnMgaGVyZQotLi4uCi02 MDMgfCAgICAgICAgIE9rKHRva2VuKQotICAgIHwgICAgICAgICAtLS0tLS0tLS0gcmV0dXJuaW5n IHRoaXMgdmFsdWUgcmVxdWlyZXMgdGhhdCBgc2VsZi5pbnB1dC5jYWNoZWRfdG9rZW4uMGAgaXMg Ym9ycm93ZWQgZm9yIGAnMWAKLSAgICB8Ci0gICAgPSB3YXJuaW5nOiB0aGlzIGVycm9yIGhhcyBi ZWVuIGRvd25ncmFkZWQgdG8gYSB3YXJuaW5nIGZvciBiYWNrd2FyZHMgY29tcGF0aWJpbGl0eSB3 aXRoIHByZXZpb3VzIHJlbGVhc2VzCi0gICAgPSB3YXJuaW5nOiB0aGlzIHJlcHJlc2VudHMgcG90 ZW50aWFsIHVuZGVmaW5lZCBiZWhhdmlvciBpbiB5b3VyIGNvZGUgYW5kIHRoaXMgd2FybmluZyB3 aWxsIGJlY29tZSBhIGhhcmQgZXJyb3IgaW4gdGhlIGZ1dHVyZQotYGBgCi0tLS0KLSBzcmMvcGFy c2VyLnJzIHwgNTAgKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0KLSAxIGZpbGUgY2hhbmdlZCwgMjcgaW5zZXJ0aW9ucygrKSwgMjMgZGVsZXRpb25zKC0p Ci0KLWRpZmYgLS1naXQgYS9zcmMvcGFyc2VyLnJzIGIvc3JjL3BhcnNlci5ycwotaW5kZXggNTFm NDQxZTQuLjdjZWYxMTdjIDEwMDY0NAotLS0tIHRoaXJkX3BhcnR5L3J1c3QvY3NzcGFyc2VyL3Ny Yy9wYXJzZXIucnMKLSsrKyB0aGlyZF9wYXJ0eS9ydXN0L2Nzc3BhcnNlci9zcmMvcGFyc2VyLnJz Ci1AQCAtNTU1LDI4ICs1NTUsMzQgQEAKLSAgICAgICAgIH0KLSAKLSAgICAgICAgIGxldCB0b2tl bl9zdGFydF9wb3NpdGlvbiA9IHNlbGYuaW5wdXQudG9rZW5pemVyLnBvc2l0aW9uKCk7Ci0tICAg ICAgICBsZXQgdG9rZW47Ci0tICAgICAgICBtYXRjaCBzZWxmLmlucHV0LmNhY2hlZF90b2tlbiB7 Ci0tICAgICAgICAgICAgU29tZShyZWYgY2FjaGVkX3Rva2VuKQotLSAgICAgICAgICAgIGlmIGNh Y2hlZF90b2tlbi5zdGFydF9wb3NpdGlvbiA9PSB0b2tlbl9zdGFydF9wb3NpdGlvbiA9PiB7Ci0t ICAgICAgICAgICAgICAgIHNlbGYuaW5wdXQudG9rZW5pemVyLnJlc2V0KCZjYWNoZWRfdG9rZW4u ZW5kX3N0YXRlKTsKLS0gICAgICAgICAgICAgICAgbWF0Y2ggY2FjaGVkX3Rva2VuLnRva2VuIHsK LS0gICAgICAgICAgICAgICAgICAgIFRva2VuOjpGdW5jdGlvbihyZWYgbmFtZSkgPT4gc2VsZi5p bnB1dC50b2tlbml6ZXIuc2VlX2Z1bmN0aW9uKG5hbWUpLAotLSAgICAgICAgICAgICAgICAgICAg XyA9PiB7fQotLSAgICAgICAgICAgICAgICB9Ci0tICAgICAgICAgICAgICAgIHRva2VuID0gJmNh Y2hlZF90b2tlbi50b2tlbgotKyAgICAgICAgbGV0IHVzaW5nX2NhY2hlZF90b2tlbiA9IHNlbGYK LSsgICAgICAgICAgICAuaW5wdXQKLSsgICAgICAgICAgICAuY2FjaGVkX3Rva2VuCi0rICAgICAg ICAgICAgLmFzX3JlZigpCi0rICAgICAgICAgICAgLm1hcF9vcihmYWxzZSwgfGNhY2hlZF90b2tl bnwgewotKyAgICAgICAgICAgICAgICBjYWNoZWRfdG9rZW4uc3RhcnRfcG9zaXRpb24gPT0gdG9r ZW5fc3RhcnRfcG9zaXRpb24KLSsgICAgICAgICAgICB9KTsKLSsgICAgICAgIGxldCB0b2tlbiA9 IGlmIHVzaW5nX2NhY2hlZF90b2tlbiB7Ci0rICAgICAgICAgICAgbGV0IGNhY2hlZF90b2tlbiA9 IHNlbGYuaW5wdXQuY2FjaGVkX3Rva2VuLmFzX3JlZigpLnVud3JhcCgpOwotKyAgICAgICAgICAg IHNlbGYuaW5wdXQudG9rZW5pemVyLnJlc2V0KCZjYWNoZWRfdG9rZW4uZW5kX3N0YXRlKTsKLSsg ICAgICAgICAgICBtYXRjaCBjYWNoZWRfdG9rZW4udG9rZW4gewotKyAgICAgICAgICAgICAgICBU b2tlbjo6RnVuY3Rpb24ocmVmIG5hbWUpID0+IHNlbGYuaW5wdXQudG9rZW5pemVyLnNlZV9mdW5j dGlvbihuYW1lKSwKLSsgICAgICAgICAgICAgICAgXyA9PiB7fQotICAgICAgICAgICAgIH0KLS0g ICAgICAgICAgICBfID0+IHsKLS0gICAgICAgICAgICAgICAgbGV0IG5ld190b2tlbiA9IHNlbGYu aW5wdXQudG9rZW5pemVyLm5leHQoKQotLSAgICAgICAgICAgICAgICAgICAgLm1hcF9lcnIofCgp fCBzZWxmLm5ld19iYXNpY19lcnJvcihCYXNpY1BhcnNlRXJyb3JLaW5kOjpFbmRPZklucHV0KSk/ OwotLSAgICAgICAgICAgICAgICBzZWxmLmlucHV0LmNhY2hlZF90b2tlbiA9IFNvbWUoQ2FjaGVk VG9rZW4gewotLSAgICAgICAgICAgICAgICAgICAgdG9rZW46IG5ld190b2tlbiwKLS0gICAgICAg ICAgICAgICAgICAgIHN0YXJ0X3Bvc2l0aW9uOiB0b2tlbl9zdGFydF9wb3NpdGlvbiwKLS0gICAg ICAgICAgICAgICAgICAgIGVuZF9zdGF0ZTogc2VsZi5pbnB1dC50b2tlbml6ZXIuc3RhdGUoKSwK LS0gICAgICAgICAgICAgICAgfSk7Ci0tICAgICAgICAgICAgICAgIHRva2VuID0gc2VsZi5pbnB1 dC5jYWNoZWRfdG9rZW5fcmVmKCkKLS0gICAgICAgICAgICB9Ci0tICAgICAgICB9Ci0rICAgICAg ICAgICAgJmNhY2hlZF90b2tlbi50b2tlbgotKyAgICAgICAgfSBlbHNlIHsKLSsgICAgICAgICAg ICBsZXQgbmV3X3Rva2VuID0gc2VsZgotKyAgICAgICAgICAgICAgICAuaW5wdXQKLSsgICAgICAg ICAgICAgICAgLnRva2VuaXplcgotKyAgICAgICAgICAgICAgICAubmV4dCgpCi0rICAgICAgICAg ICAgICAgIC5tYXBfZXJyKHwoKXwgc2VsZi5uZXdfYmFzaWNfZXJyb3IoQmFzaWNQYXJzZUVycm9y S2luZDo6RW5kT2ZJbnB1dCkpPzsKLSsgICAgICAgICAgICBzZWxmLmlucHV0LmNhY2hlZF90b2tl biA9IFNvbWUoQ2FjaGVkVG9rZW4gewotKyAgICAgICAgICAgICAgICB0b2tlbjogbmV3X3Rva2Vu LAotKyAgICAgICAgICAgICAgICBzdGFydF9wb3NpdGlvbjogdG9rZW5fc3RhcnRfcG9zaXRpb24s Ci0rICAgICAgICAgICAgICAgIGVuZF9zdGF0ZTogc2VsZi5pbnB1dC50b2tlbml6ZXIuc3RhdGUo KSwKLSsgICAgICAgICAgICB9KTsKLSsgICAgICAgICAgICBzZWxmLmlucHV0LmNhY2hlZF90b2tl bl9yZWYoKQotKyAgICAgICAgfTsKLSAKLSAgICAgICAgIGlmIGxldCBTb21lKGJsb2NrX3R5cGUp ID0gQmxvY2tUeXBlOjpvcGVuaW5nKHRva2VuKSB7Ci0gICAgICAgICAgICAgc2VsZi5hdF9zdGFy dF9vZiA9IFNvbWUoYmxvY2tfdHlwZSk7CgpGcm9tIDA3YWVmYjY2YjAyYTEwN2U2YjE5MDljNjJi OTRjY2IwNmU1OGMxMjUgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IHlvcGl0byA8cGll cnJlLmJvdXJnaW5AZnJlZS5mcj4KRGF0ZTogVGh1LCAyOSBBdWcgMjAxOSAyMzo0NTo1NSArMDIw MApTdWJqZWN0OiBbUEFUQ0ggMDU2LzE4Nl0gTmV3IHBhY2thZ2U6IG5leHRjbG91ZC1jbGllbnQg Mi42LjAKCi0tLQogc3JjcGtncy9uZXh0Y2xvdWQtY2xpZW50LWRldmVsICAgICAgICAgICAgICAg IHwgIDEgKwogc3JjcGtncy9uZXh0Y2xvdWQtY2xpZW50LWRvbHBoaW4gICAgICAgICAgICAgIHwg IDEgKwogc3JjcGtncy9uZXh0Y2xvdWQtY2xpZW50L0lOU1RBTEwubXNnICAgICAgICAgIHwgIDIg KwogLi4uL3BhdGNoZXMvbGlicmVzc2wtbm8tcnNhX29hZXBfbWQucGF0Y2ggICAgIHwgMjMgKysr KysrKysKIHNyY3BrZ3MvbmV4dGNsb3VkLWNsaWVudC90ZW1wbGF0ZSAgICAgICAgICAgICB8IDU0 ICsrKysrKysrKysrKysrKysrKysKIDUgZmlsZXMgY2hhbmdlZCwgODEgaW5zZXJ0aW9ucygrKQog Y3JlYXRlIG1vZGUgMTIwMDAwIHNyY3BrZ3MvbmV4dGNsb3VkLWNsaWVudC1kZXZlbAogY3JlYXRl IG1vZGUgMTIwMDAwIHNyY3BrZ3MvbmV4dGNsb3VkLWNsaWVudC1kb2xwaGluCiBjcmVhdGUgbW9k ZSAxMDA2NDQgc3JjcGtncy9uZXh0Y2xvdWQtY2xpZW50L0lOU1RBTEwubXNnCiBjcmVhdGUgbW9k ZSAxMDA2NDQgc3JjcGtncy9uZXh0Y2xvdWQtY2xpZW50L3BhdGNoZXMvbGlicmVzc2wtbm8tcnNh X29hZXBfbWQucGF0Y2gKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL25leHRjbG91ZC1jbGll bnQvdGVtcGxhdGUKCmRpZmYgLS1naXQgYS9zcmNwa2dzL25leHRjbG91ZC1jbGllbnQtZGV2ZWwg Yi9zcmNwa2dzL25leHRjbG91ZC1jbGllbnQtZGV2ZWwKbmV3IGZpbGUgbW9kZSAxMjAwMDAKaW5k ZXggMDAwMDAwMDAwMDAuLjUwYzY3YWRhODYxCi0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9u ZXh0Y2xvdWQtY2xpZW50LWRldmVsCkBAIC0wLDAgKzEgQEAKK25leHRjbG91ZC1jbGllbnQKXCBO byBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9zcmNwa2dzL25leHRjbG91ZC1j bGllbnQtZG9scGhpbiBiL3NyY3BrZ3MvbmV4dGNsb3VkLWNsaWVudC1kb2xwaGluCm5ldyBmaWxl IG1vZGUgMTIwMDAwCmluZGV4IDAwMDAwMDAwMDAwLi41MGM2N2FkYTg2MQotLS0gL2Rldi9udWxs CisrKyBiL3NyY3BrZ3MvbmV4dGNsb3VkLWNsaWVudC1kb2xwaGluCkBAIC0wLDAgKzEgQEAKK25l eHRjbG91ZC1jbGllbnQKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9z cmNwa2dzL25leHRjbG91ZC1jbGllbnQvSU5TVEFMTC5tc2cgYi9zcmNwa2dzL25leHRjbG91ZC1j bGllbnQvSU5TVEFMTC5tc2cKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAu LmIzZTg3N2RjMzc5Ci0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9uZXh0Y2xvdWQtY2xpZW50 L0lOU1RBTEwubXNnCkBAIC0wLDAgKzEsMiBAQAorTmV4dENsb3VkIGNsaWVudCBlbmQtdG8tZW5k IGVuY3J5cHRpb24gKGUyZSkgaXMgY3VycmVudGx5IHVuYXZhaWxhYmxlCisoTGlicmVTU0wgMi45 LjIgZG9lcyBub3QgcHJvdmlkZSBFVlBfUEtFWV9DVFhfc2V0X3JzYV9vYWVwX21kIHByaW1pdGl2 ZSkKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbmV4dGNsb3VkLWNsaWVudC9wYXRjaGVzL2xpYnJlc3Ns LW5vLXJzYV9vYWVwX21kLnBhdGNoIGIvc3JjcGtncy9uZXh0Y2xvdWQtY2xpZW50L3BhdGNoZXMv bGlicmVzc2wtbm8tcnNhX29hZXBfbWQucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg MDAwMDAwMDAwMDAuLjQ3YzU0ZmZmNzc4Ci0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9uZXh0 Y2xvdWQtY2xpZW50L3BhdGNoZXMvbGlicmVzc2wtbm8tcnNhX29hZXBfbWQucGF0Y2gKQEAgLTAs MCArMSwyMyBAQAorc291cmNlOiBodHRwczovL2dpdGh1Yi5jb20vbmV4dGNsb3VkL2Rlc2t0b3Av aXNzdWVzLzczOAorCistLS0gc3JjL2xpYnN5bmMvY2xpZW50c2lkZWVuY3J5cHRpb24uY3BwLk9S SUcJMjAxOS0wNy0yNSAxMjoyMDo0OS4wMDAwMDAwMDAgKzAyMDAKKysrKyBzcmMvbGlic3luYy9j bGllbnRzaWRlZW5jcnlwdGlvbi5jcHAJMjAxOS0wNy0yOCAxMjo1NjoxOC44MTM1MTQzMjMgKzAy MDAKK0BAIC0zNSw2ICszNSwxOCBAQAorIAorICNpbmNsdWRlICJ3b3JkbGlzdC5oIgorIAorKy8q IGxpYmVzc2wgMi45MiBkb2VzIG5vdCBwcm92aWRlIEVWUF9QS0VZX0NUWF9zZXRfcnNhX29hZXBf bWQKKysgKiBTbyB3aXRoIExpYnJlU1NMIEVWUF9QS0VZX0NUWF9jdHJsKCkgc2hvdWxkIGV4cGxp Y2l0bHkgcmV0dXJuIGFuIGVycm9yIAorKyAqICJvcGVyYXRpb24gbm90IHN1cHBvcnRlZCIgd2hl biB5b3UgdHJ5IHRvIHVzZSBlMmUKKysgKi8KKysjaWZuZGVmIEVWUF9QS0VZX0NUWF9zZXRfcnNh X29hZXBfbWQKKysjZGVmaW5lIEVWUF9QS0VZX0NUUkxfUlNBX09BRVBfTUQgICAgICAgKEVWUF9Q S0VZX0FMR19DVFJMICsgOSkKKysjZGVmaW5lIEVWUF9QS0VZX0NUUkxfR0VUX1JTQV9PQUVQX01E ICAgKEVWUF9QS0VZX0FMR19DVFJMICsgMTEpCisrI2RlZmluZSBFVlBfUEtFWV9DVFhfc2V0X3Jz YV9vYWVwX21kKGN0eCwgbWQpIFwKKysgICAgICAgIEVWUF9QS0VZX0NUWF9jdHJsKGN0eCwgRVZQ X1BLRVlfUlNBLCBFVlBfUEtFWV9PUF9UWVBFX0NSWVBULCAgXAorKyAgICAgICAgRVZQX1BLRVlf Q1RSTF9SU0FfT0FFUF9NRCwgMCwgKHZvaWQgKikobWQpKQorKyNlbmRpZgorKworIFFEZWJ1ZyBv cGVyYXRvcjw8KFFEZWJ1ZyBvdXQsIGNvbnN0IHN0ZDo6c3RyaW5nJiBzdHIpCisgeworICAgICBv dXQgPDwgUVN0cmluZzo6ZnJvbVN0ZFN0cmluZyhzdHIpOwpkaWZmIC0tZ2l0IGEvc3JjcGtncy9u ZXh0Y2xvdWQtY2xpZW50L3RlbXBsYXRlIGIvc3JjcGtncy9uZXh0Y2xvdWQtY2xpZW50L3RlbXBs YXRlCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwLi40NmQwYWYyYjIwNAot LS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvbmV4dGNsb3VkLWNsaWVudC90ZW1wbGF0ZQpAQCAt MCwwICsxLDU0IEBACisjIFRlbXBsYXRlIGZpbGUgZm9yICduZXh0Y2xvdWQtY2xpZW50JworcGtn bmFtZT1uZXh0Y2xvdWQtY2xpZW50Cit2ZXJzaW9uPTIuNi4wCityZXZpc2lvbj0xCit3cmtzcmM9 ImRlc2t0b3AtJHt2ZXJzaW9ufSIKK2J1aWxkX3N0eWxlPWNtYWtlCitjb25maWd1cmVfYXJncz0i LVduby1kZXYiCitob3N0bWFrZWRlcGVuZHM9InBrZy1jb25maWciCittYWtlZGVwZW5kcz0icXQ1 LXRvb2xzLWRldmVsIHF0NS13ZWJlbmdpbmUtZGV2ZWwgcXQ1LWRlY2xhcmF0aXZlLWRldmVsCisg cXQ1LXdlYmNoYW5uZWwtZGV2ZWwgcXQ1LWxvY2F0aW9uLWRldmVsIHF0a2V5Y2hhaW4tcXQ1LWRl dmVsIHNxbGl0ZS1kZXZlbAorIHF0NS13ZWJraXQtZGV2ZWwgbGliY2xvdWRwcm92aWRlcnMtZGV2 ZWwgJCh2b3B0X2lmIGRvbHBoaW4gJ2V4dHJhLWNtYWtlLW1vZHVsZXMga2lvLWRldmVsJykiCitj b25mX2ZpbGVzPSIvZXRjL05leHRjbG91ZC9zeW5jLWV4Y2x1ZGUubHN0Igorc2hvcnRfZGVzYz0i TmV4dENsb3VkIERlc2t0b3AgY2xpZW50IgorbWFpbnRhaW5lcj0ieW9waXRvIDxwaWVycmUuYm91 cmdpbkBmcmVlLmZyPiIKK2xpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIiCitob21lcGFnZT0iaHR0 cHM6Ly9uZXh0Y2xvdWQuY29tL2NsaWVudHMvIgorZGlzdGZpbGVzPSJodHRwczovL2dpdGh1Yi5j b20vbmV4dGNsb3VkL2Rlc2t0b3AvYXJjaGl2ZS92JHt2ZXJzaW9ufS50YXIuZ3oiCitjaGVja3N1 bT03YjNmM2MxNGQyZTQ0ODI2YTUxODNmZDU5YTc0MTJjNmRkNWVkMDAyOTY4NzNlMzVjNTY2Zjc1 YzE0YzNhM2VhCisKK2J1aWxkX29wdGlvbnM9ImRvbHBoaW4iCitkZXNjX29wdGlvbl9kb2xwaGlu PSJCdWlsZCBLREUgZG9scGhpbiBzdXBwb3J0IgorYnVpbGRfb3B0aW9uc19kZWZhdWx0PSJkb2xw aGluIgorCitjYXNlICIkWEJQU19UQVJHRVRfTUFDSElORSIgaW4KKwlhcm12Nip8YXJtdjcqKSBi cm9rZW49InF0NS10b29scy1kZXZlbCB1bmF2YWlsYWJsZSIgOzsKK2VzYWMKKworaWYgWyAiJENS T1NTX0JVSUxEIiBdOyB0aGVuCisJaG9zdG1ha2VkZXBlbmRzKz0iIHF0NS1xbWFrZSBxdDUtaG9z dC10b29scyBxdDUtdG9vbHMiCisJIyBwcm92aWRlcyBkZXNrdG9wdG9qc29uCisJaG9zdG1ha2Vk ZXBlbmRzKz0iICQodm9wdF9pZiBkb2xwaGluICdrY29yZWFkZG9ucycpIgorZmkKKworaWYgWyAk YnVpbGRfb3B0aW9uX2RvbHBoaW4gXTsgdGhlbgorbmV4dGNsb3VkLWNsaWVudC1kb2xwaGluX3Bh Y2thZ2UoKSB7CisJc2hvcnRfZGVzYys9IiAtIEtERSBkb2xwaGluIGludGVncmF0aW9uIgorCWRl cGVuZHM9Im5leHRjbG91ZC1jbGllbnQ+PSR7dmVyc2lvbn1fJHtyZXZpc2lvbn0iCisJcGtnX2lu c3RhbGwoKSB7CisJCXZtb3ZlIHVzci9saWIvbGlibmV4dGNsb3VkZG9scGhpbnBsdWdpbmhlbHBl ci5zbworCQl2bW92ZSB1c3IvbGliL3F0NQorCQl2bW92ZSB1c3Ivc2hhcmUva3NlcnZpY2VzNQor CX0KK30KK2ZpCisKK25leHRjbG91ZC1jbGllbnQtZGV2ZWxfcGFja2FnZSgpIHsKKwlkZXBlbmRz PSJuZXh0Y2xvdWQtY2xpZW50Pj0ke3ZlcnNpb259XyR7cmV2aXNpb259IgorCXNob3J0X2Rlc2Mr PSIgLSBkZXZlbG9wbWVudCBmaWxlcyIKKwlwa2dfaW5zdGFsbCgpIHsKKwkJdm1vdmUgdXNyL2lu Y2x1ZGUKKwkJdm1vdmUgdXNyL2xpYi9saWJuZXh0Y2xvdWRzeW5jLnNvCisJCXZtb3ZlICJ1c3Iv bGliL25leHRjbG91ZC8qLnNvIgorCX0KK30KCkZyb20gZGE2NmE0OTNhY2E2OWViNGE5ZDYyODI5 OGRlM2ZiZWEzOTg3MzllZCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogeW9waXRvIDxw aWVycmUuYm91cmdpbkBmcmVlLmZyPgpEYXRlOiBNb24sIDI4IE9jdCAyMDE5IDIwOjQyOjE1ICsw MTAwClN1YmplY3Q6IFtQQVRDSCAwNTcvMTg2XSBuZXh0Y2xvdWQtY2xpZW50OiBkZWNsYXJlIG9w dGlvbmFsIHN1YnBrZyB2aWEKIHN1YnBhY2thZ2VzCgotLS0KIHNyY3BrZ3MvbmV4dGNsb3VkLWNs aWVudC90ZW1wbGF0ZSB8IDUgKystLS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyks IDMgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9uZXh0Y2xvdWQtY2xpZW50L3Rl bXBsYXRlIGIvc3JjcGtncy9uZXh0Y2xvdWQtY2xpZW50L3RlbXBsYXRlCmluZGV4IDQ2ZDBhZjJi MjA0Li44MjcwOTY2ODA4ZiAxMDA2NDQKLS0tIGEvc3JjcGtncy9uZXh0Y2xvdWQtY2xpZW50L3Rl bXBsYXRlCisrKyBiL3NyY3BrZ3MvbmV4dGNsb3VkLWNsaWVudC90ZW1wbGF0ZQpAQCAtMjIsNyAr MjIsNyBAQCBkZXNjX29wdGlvbl9kb2xwaGluPSJCdWlsZCBLREUgZG9scGhpbiBzdXBwb3J0Igog YnVpbGRfb3B0aW9uc19kZWZhdWx0PSJkb2xwaGluIgogCiBjYXNlICIkWEJQU19UQVJHRVRfTUFD SElORSIgaW4KLQlhcm12Nip8YXJtdjcqKSBicm9rZW49InF0NS10b29scy1kZXZlbCB1bmF2YWls YWJsZSIgOzsKKwlhcm0qKSBicm9rZW49InF0NS13ZWJlbmdpbmUtZGV2ZWwgdW5hdmFpbGFibGUi IDs7CiBlc2FjCiAKIGlmIFsgIiRDUk9TU19CVUlMRCIgXTsgdGhlbgpAQCAtMzAsOCArMzAsOCBA QCBpZiBbICIkQ1JPU1NfQlVJTEQiIF07IHRoZW4KIAkjIHByb3ZpZGVzIGRlc2t0b3B0b2pzb24K IAlob3N0bWFrZWRlcGVuZHMrPSIgJCh2b3B0X2lmIGRvbHBoaW4gJ2tjb3JlYWRkb25zJykiCiBm aQorc3VicGFja2FnZXM9IiQodm9wdF9pZiBkb2xwaGluICduZXh0Y2xvdWQtY2xpZW50LWRvbHBo aW4nKSBuZXh0Y2xvdWQtY2xpZW50LWRldmVsIgogCi1pZiBbICRidWlsZF9vcHRpb25fZG9scGhp biBdOyB0aGVuCiBuZXh0Y2xvdWQtY2xpZW50LWRvbHBoaW5fcGFja2FnZSgpIHsKIAlzaG9ydF9k ZXNjKz0iIC0gS0RFIGRvbHBoaW4gaW50ZWdyYXRpb24iCiAJZGVwZW5kcz0ibmV4dGNsb3VkLWNs aWVudD49JHt2ZXJzaW9ufV8ke3JldmlzaW9ufSIKQEAgLTQxLDcgKzQxLDYgQEAgbmV4dGNsb3Vk LWNsaWVudC1kb2xwaGluX3BhY2thZ2UoKSB7CiAJCXZtb3ZlIHVzci9zaGFyZS9rc2VydmljZXM1 CiAJfQogfQotZmkKIAogbmV4dGNsb3VkLWNsaWVudC1kZXZlbF9wYWNrYWdlKCkgewogCWRlcGVu ZHM9Im5leHRjbG91ZC1jbGllbnQ+PSR7dmVyc2lvbn1fJHtyZXZpc2lvbn0iCgpGcm9tIGEyNDgz ZGMzODcxNTBkMjE3ZDk5YjdkZDI1YzFlYTViM2E4ODVkYzUgTW9uIFNlcCAxNyAwMDowMDowMCAy MDAxCkZyb206IG1vYmlubW9iIDxtb2Jpbm1vYkBkaXNyb290Lm9yZz4KRGF0ZTogVGh1LCAyNCBP Y3QgMjAxOSAyMjowNjoxMCArMDMwMApTdWJqZWN0OiBbUEFUQ0ggMDU4LzE4Nl0gb3duY2xvdWRj bGllbnQ6IHVwZGF0ZSB0byAyLjUuNC4xMTY1NC4KCi0tLQogc3JjcGtncy9vd25jbG91ZGNsaWVu dC90ZW1wbGF0ZSB8IDQgKystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBk ZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL293bmNsb3VkY2xpZW50L3RlbXBsYXRl IGIvc3JjcGtncy9vd25jbG91ZGNsaWVudC90ZW1wbGF0ZQppbmRleCA3OTNlNzdmMDQwNi4uNDA2 YjUxNWI0NWMgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3Mvb3duY2xvdWRjbGllbnQvdGVtcGxhdGUKKysr IGIvc3JjcGtncy9vd25jbG91ZGNsaWVudC90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVt cGxhdGUgZmlsZSBmb3IgJ293bmNsb3VkY2xpZW50JwogcGtnbmFtZT1vd25jbG91ZGNsaWVudAot dmVyc2lvbj0yLjQuMwordmVyc2lvbj0yLjUuNC4xMTY1NAogcmV2aXNpb249MQogYnVpbGRfc3R5 bGU9Y21ha2UKIGNvbmZpZ3VyZV9hcmdzPSItV25vLWRldiAtRE5PX1NISUJCT0xFVEg9VFJVRSIK QEAgLTE1LDcgKzE1LDcgQEAgbWFpbnRhaW5lcj0iU2FtdWVsIENob2R1ciA8c2FtdWVsY2hvZHVy QGdtYWlsLmNvbT4iCiBsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBz Oi8vd3d3Lm93bmNsb3VkLm9yZyIKIGRpc3RmaWxlcz0iaHR0cHM6Ly9kb3dubG9hZC5vd25jbG91 ZC5jb20vZGVza3RvcC9zdGFibGUvJHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNr c3VtPWYzYjNmZjEzZDA2YThhMzhhNDAzOTg2MzBkNjcwNzc1ZWFmYmZhOWZlZTRmYTViMzllYTQ4 MGJhYzNlYmU2YmYKK2NoZWNrc3VtPTYxNTQzOWM2YTIyNGUyNjNjZWUwZDU1NGI4YjVmOThiNTdj MzMxZGJjMThkZjdhZTVkOTkxOTc0ODBjZjU2M2YKIAogaWYgWyAiJENST1NTX0JVSUxEIiBdOyB0 aGVuCiAJaG9zdG1ha2VkZXBlbmRzKz0iIHF0NS1ob3N0LXRvb2xzIHF0NS10b29scy1kZXZlbCIK CkZyb20gMDY1ZDJhM2ZlNzJjZjkyNzI1YTgwY2VhNjViYjcwYzc5N2M3NTAxMyBNb24gU2VwIDE3 IDAwOjAwOjAwIDIwMDEKRnJvbTogSGVsbXV0IFBvemltc2tpIDxoZWxtdXRAcG96aW1za2kuZXU+ CkRhdGU6IFR1ZSwgMjkgT2N0IDIwMTkgMDk6MjI6NDQgKzAxMDAKU3ViamVjdDogW1BBVENIIDA1 OS8xODZdIGZpcmVmb3gtZXNyLWkxOG46IGZpeCBjaGVja3N1bXMKCi0tLQogc3JjcGtncy9maXJl Zm94LWVzci1pMThuL3RlbXBsYXRlIHwgMTg2ICsrKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0t LQogMSBmaWxlIGNoYW5nZWQsIDkzIGluc2VydGlvbnMoKyksIDkzIGRlbGV0aW9ucygtKQoKZGlm ZiAtLWdpdCBhL3NyY3BrZ3MvZmlyZWZveC1lc3ItaTE4bi90ZW1wbGF0ZSBiL3NyY3BrZ3MvZmly ZWZveC1lc3ItaTE4bi90ZW1wbGF0ZQppbmRleCBiYTUyZjZjNzNhNi4uMzkyNzY0MDg5YzIgMTAw NjQ0Ci0tLSBhL3NyY3BrZ3MvZmlyZWZveC1lc3ItaTE4bi90ZW1wbGF0ZQorKysgYi9zcmNwa2dz L2ZpcmVmb3gtZXNyLWkxOG4vdGVtcGxhdGUKQEAgLTEzNSw5NiArMTM1LDk2IEBAIF9wa2d0bXBs KCkgewogCX0KIH0KIAotY2hlY2tzdW09ImMzZmFmZGE4NzE5MmQ5Yjk4ZGM5YjJiOTlkNjJiNzEw OWRiZDcyZjczZThkNWRlMWVhMmE0MThlZDA4NjMxN2IKLSA5M2FmMDcwMmFhZTMwMzMyZWVjZGMw ZjQwN2RjMjkwODA5MjM2NjA1MDgwMThmY2ExNGZlMTMwN2ZkZjM3NWExCi0gYTQwYmFmNjRlNzM3 NmU0OTE2ZmE5NmQ3MTk5YmFkMDk5ZWRjN2U4OTdkNjViNWVjYzRhMmRjOWZkYmJhMmU3NQotIDFl OTE1ZjZhMDg2MGYyZjdmNTgzYTcwYTU2NjhlYzUwMzM5NjlmYmJhMTc3YzNkM2RhNGUyNDRkMDFi YTVjYjQKLSBkNmM0NTQ5MGNlYzI3NjA5ZjQzZmI5YWY0MDZiYTE1ZTI1ZmZmNTQ0ZjEwZDAzOGU2 NTBhNWIyNWQyYmE1YTY5Ci0gMmI1ZDg0ZDNmNzgwMGQxNjJiMDk1ZDBlZTc3ZGE4MjY0YWY5ZWFj M2E5OGRmZmY3ZTE0YjI2NTEwYzkyYmUxZQotIGYzMTdhNzNhZjU3OWJiYjQyYmM2NjM1OTAwZTVi NTI5ZjUxOThkYWFmNTRjNWE3ZjUxNzU2Yjc3MDc3NDc0NDQKLSA2ZTY1NzAyYTUwMGVmNGQyODQx ZWFjYmQ5ZTE2Y2E2OTJkMjVhOWFhM2ZjZjM4YmUyNjAzNjU3YmZiMDNhODBkCi0gN2IwNTZkNzM5 YjY0NDA3ZTkyYTY3MzhjOGUzYTVmNmZlMDcwMzgwMTk2YzA1N2QzZjgzMmJlNDAxNWU3OTU3Ywot IDZiZGQ1YWI2ZWZkMDZiZDM4NGUyMjdkNzhkZTZjZmZlYWM0YzgyOGNlNjI1NGQxNTJlMDEzN2M3 MGViN2IyZTkKLSBiNjAzNjRjMTA5ZjNmZTk0Mzg3YmZiMjcyNThjNjVjMDliNzc2MTI0OGUzMDlh ZGI4ZjkyZWRhMGM2YzFkZGRiCi0gM2I5MWEyNzQzMjMwNmE2MTUyZjZjZWU3YjE5ZDY4NDQ3NmM0 MjgyNzQzMjU5ZWIwZTVmOTBkYjY0ODMyMTZlNgotIGExNzE0OTkwOGVkZjlhMTczYjlkN2NhM2Vh YzY0NGNmNDVjZDBlMzViYTQwYzU2NTkwM2VhOWFmOTU4MGU0MWUKLSBiNDA0ZjY3MGNlMWYzY2M3 ZmJkYjE3MGU5ZjAyODZlMGE3NjA4ZDc3OWM1ZGFlODNjZTVhZGVlOTExODc2ZTZkCi0gYjQxMjM2 YThjZTJlOTZlZGYwMjE2NWJkMWFkOTFkZTk2N2Q4NjA1ZWQ3YTljNzdmMDc5MDI3ZWEwYjEzYTdj ZgotIDFmNDQ0YTEwNTYxMTA4YmRmYjk4ZDQzNTMxYzMzZDM3N2EyNTY1NzYzZDEyOTljOTZlZjNj MWY3NDZiMTA1NTUKLSBmMTVlNTc1ODhjY2RmMmE2YmUzYjUxZmJhMDY2ZGMwMzBlMjgwODA3MWIy OTk1N2MzZGE4NDRiMjcyZDFkZDI1Ci0gZDUxYjhiZGJjNDE1ZmNkZjVkZjU4N2UzNjRiOGEzZWRi NjI5NmE5ODhjMzhkYmZiMGZiZWM0MGI1ZGVjODU2ZQotIGJjZmJkNjEyZjU1ZWZmZjJkYzk4Y2Rm OWZmNmRkZjNkOGU5MTI3NGVhZDdkOGQ4YmYxMDIzY2IyOGI4MTU2MjMKLSBmNzExZDkyMDY2MzVh Yzk4YjNlZWM3ODg3OTEwODlkMWE2NDMxNmRjNTVhZDRiZTJmNjA0M2FjY2E3OTMxN2I4Ci0gYTQ4 ZWZlOWYwYTg4NTA2MGZlMjg0NGFlMDU2ZmI5ZGU4OTMyZTQ1Y2ZkYTM5OTk1OWZmOGE0ZjU0Yzk5 ZGMzZgotIGM5MTljMzU1N2E2NjE4OGVhN2FiNTgyMTBmNmZlNjI5ZjVlMTExYmQ3M2MwZjk0ZjI5 OGU0NjM1YzIxYjVmMDUKLSBlZGY3NGE4M2EwM2Y4NWRmYjIxNzIwNTNjZjE4MTY3MzZmZGZiNGM0 MmZiYWNkZjQ2MjZiMTI4MTg2ZmIxNWRiCi0gNzZiYzY4YzgwNmFkZDUyYWEyMDVmOWY2YTU1ZGQ2 YzE0MWVjZmFhMjljZTViNjNmZTA2Y2I4YmYxY2UwYzU2NwotIGFmMzc2M2U2MzU1MDg5M2EwMDFh NjUxYzVkODllNGJiNTI5MDA0ZGU5OGQ1OGYyZGMyYTQ5MzM2MjM5MTcxYmYKLSA5Nzk3MjViZDli MWI4YWFkZTU0ZTBlMjRlZmRjMmM3MTYzODExMzA1NTk2MTVmNDVjMDA3ZjBkNjhhMGIwYjY5Ci0g ZGI5NmZkODY1OGJjNzVmNDgxM2RkYWY0NTdjODg4ZTNmMDY1NmRjNDA3YjEyZDc3OTlkYmRlYmI3 Y2MxYTlhZQotIGJhNWU4MWI0MzUyMTdjMTVlMmQ1NWE0MmQzNGUzMzEzZTlhZDEzMDJiMzQ1OTlh MjViNDhhMjM4NDZkZmM5MjAKLSBmZDM5ODhiMGRkY2ZhNzIxZmQ3MDJjMTI2ZGQ1MzFmNWI3N2Yx ZjVhZjhhYzYxZThiMjMzMDdjNWI4NGU4ZTcyCi0gYTU4YTI0NWQzMGVmYjhhZDY1NTMxNjZkZDI0 NjlkYTUwNGQ2Y2YzYzc3M2U1MmRhMTVjMzY3Nzg5OWYzN2M0ZQotIDNmZDM3N2JlMzRhODc4NmE3 MjZhMTNjODhkMjhiMmI3MzE1NWIxZjUyN2IyOTA5ZTY4NDE0NzQ2MzFjZTgyMjYKLSA3OTBhZjQ4 YzgyYmY1MjBiY2Q4ZjkxNWFmNzdkMWUwYzhmMTU2YWU2YzAyOGIxZmEwZjM5YzNjOTkxODY1ZDFj Ci0gNDZiODA3MWExZTIzZDhjNWFmMWNlZDk4Y2ZiZGIxYTIyNThmNjc5NDI1NDM0ZTA5MmZiZTFj NDJkZmEyNjA2NgotIGE0ZWVmYTFmZjg0ZTMzMDU5ZDA1NWM5ODRkYmI0NzI4M2QxMTdjYjYzYWQ5 ZTM5ZDdjYzRjNGU2MWVhOWMxMWEKLSA1YTkxYmUyOTRhYzM1YWFjNDcyYzRiYTgzMjQyMjE1NTFh YmIyZThjYjY2Zjk5NTgwNjYwNmMxOTFkY2EwNDI4Ci0gOWE0YTU4MjY3M2RjNDY2YTY4NGZkMmJl YWNiZTc3YTE1MjA0N2U2MDIzYjFlMjQ3ZjVlZGE3YjUxM2U1ZTMwZAotIDAzOWFmMjUwYzhiMmRj NjI1NGIyZjI0OTc1NzA0MDk1NDA2YzcwMDkwZGU5ZDIxZWNjNzM5NzVkOGQ4NzQ2NzUKLSAzYzc3 ZmQyYTRjZmM0OWZmOTQ5OTRiNDZhOWI4MGVhMjRlNTM0Mjk5ODM4ZGQ2NGExMWE1ZGMyZWYxMTBm OTAxCi0gZmVhZWIxNGEwMTZkNzMyYjNlYzBiZTYyNjZiZDA3OGZkZjIyMGM0OGMzODY4M2E0ZGQ3 MzE1ZTA3NjgzOWI4MgotIGE0NzU2NDcxZjQ1MTY4ZmYyOGZkYzBlODdjNjViMzMyODhjYTFmN2Zk MmVlZGI3ZTMxYTcyNmVlNDc2NmZiM2MKLSA0ZWI2MmNiZWQ1MmQxY2RhZDA4NTUxYTM4ZDFmNzY1 NmM3MWVmOTg2ZGY0OWVlZTAzODFlOWFlYzdiMTFjMGJhCi0gOGU5NjdlZjhmZjFmMWEyZmMyMWVh NTM3ZDYyOWQ0MGEzOGQ2Yjg3ODljZTM0NGU3OWQ3YTNiM2I3ODEzODk2OAotIGUwMDhlMjQxYzQx OTAwZDZkZjExMjhkNWRkNTVkNDFlMWVkNDNkN2M2MGQ0ODMyOWEzMjE3MTY5NjgzOTdiMDkKLSA3 MDExNzc2YzY2MWIwN2JjM2ZkN2QyNGI2Mjc2NWFlZWUxMGJhMmE3MmVhNDExMjg2Mjk4OWY3NTlh Y2ViNDY2Ci0gNzYwYzQ0ZDE1MTJiZTVmMTAyNjRkMTk1Nzg1ZTQ1ZDQ3YzQ2NTk1ZWY1N2MyNGRl ODFjMDcwYTgxYmE2NTQ1NgotIDUzMWVjNzU1MGE5YWI0ZTI0MTBlOWM2OTQ5NTg1MmVhYTBlN2Rm NDNlMDIyZWQ3ZWMwZjBjNTBlMTQ4YTQ1MDYKLSBjNDY0MTNmN2FhMjI1MTQ3NzEyZmI2MzQ0ODNm NjRjOTM2OGY0M2QwM2JhNmY2NjQwNWU0YzlkYzI4MTQyMWI0Ci0gNDJkZWJkZTljOTM0MWZjOTEw ZmYzODJlOTRmYWRlMjMzYjNhZDIzZTRmNDc0ZDg5NDI2NjQ4YzY1OWE5OWExMgotIDUwZjEwODg2 NDlmNzdlMGY4M2RmZmUzZTgxZGQ4YWM5OTNkMWQ4ZjA2ZDhmMjMxYWNkZjk4YTY5Y2RhOTE0N2EK LSAyYTRmNjE2MmJmYmY1ZWE0NGM4MzJjMGQ1ODk2MDc5YjBjZTY5ZTU5MGRjMzc3ZTNiYmQzN2E5 MmY5NzgwZTZjCi0gNjBhYTk1ZWI1MGQ1OWRkYjJiZjU3ZDVjZmFjZjg2MGQ0Y2MyYzhiODZhMjE5 ZjM1Y2VhYTMwZDgyZmQ2ZTU5MwotIDczYTQxNjI1NGQwMjJiMDUxYmIzOGViZjA4NTc3MmMwMzFl Y2JhMThhYjQ4OTY2MzRiYTg1OTlmY2IzOTZmN2IKLSBhZTNhYTgwMjA4Nzc1NDQ1ODQ2NWFmMzBh NGRkYWZjOGJhYTA4ZTEwMWE0ZTE3N2IxNDRiNGY2MDZhNzhiOTQxCi0gMzBjNzQ5ODkzNWUwZDQ1 MjljY2JlM2E1Yzc2NzFhZWM5NTA1ZDAxMzJjZDYxMjNmOTdjMDY4MGM4MGNiYjkxNwotIDk5Yjc2 YWMwZjdjZjRjNWQ1YWU4YjY2YWUzZTU0ZTM5MzJjNmE2ZjEwMWFiYThiMTU2Y2Y4ZDc4YTY3ZTNm MGIKLSAxYmNiNjkwODFjOTliMjc3ODFjODFiZWNjZTg2YmFhZjJmMWRhNTRjZWJhMDA5OTA0YWQy YTVhODYxNGVhYTY4Ci0gYmIzMTUyNDcyZDU1ODJiMzY1NzIyYTgzOTcyYjQxNmQ3OGI4YmRkZmM2 ZGJlYTQwZDFjNzc4YzM3ZWI4NjYyMwotIDQyNjExNWEwN2NlMjViN2QyYWU4OTAyNGJmODFlOGI1 OTU3ZGY5ZDg3MDliZDZlNWMxZGE3MDQ2MzNhZjNjODUKLSAyNDkxOGI5Y2Q1NmY1ZmUxMmM3ZTAy YjBjZWRjZGFmMmFiZWViN2VjM2NkYjc1YTRhZWUzY2EyZDRhYWFhOTYxCi0gODQ5N2M0N2M0ZjE1 MTk2NjUzODgzNmIwZGZhMzEyYTA0NGQ4NDk2ZmZjNDY0N2ZjZjYyYzhlZDE5YjIzMzdkOQotIGUx NjBkZDViODhmMzc1NjJkN2NiYWNlM2Y0NmI4ZmQ4ZWRjNWI5MjExZjQyNDBkOGUzOGFlYzNkZDgx ZDkxNWQKLSAyOThhYjMzOTExYjhjNDI1ZTYwMzJlYmE4NjdiYzMxOTI1ZWEyNGIyNDU3Mjk4YmJm OTY1YmQ2YjE5NGVkYzNmCi0gNGM1MzM2N2U0ZGRjZmY5MjczM2E5NTEzOWJhZjk2MTAzOTBiZjNl YWY3OGVmNWE1ZDEwYjQ1MzBjMzU5ZThlYgotIGYzNDBjNjJiNzdlYWFhNmJkZTBlNjE5NDRjNTA4 YjMyNzg1NjE5YWQ0Y2E1NGI3ZGZiZjI4MWZjYjk4NmVhYzAKLSA5OTIwMWJlNDZlMzVmMjIzMTJh MjdkYTJhMmFmYzU0ZjQ2MDQzMzQyYTFjNTc3ZmE2NDY5NmVmMzY1MTk4MzI5Ci0gNDFlNGQyZDI1 NTQzNWQyYjUwYThlMGM0YzU5YjEzYTBhMGFhZmFlOTI1Y2QzMmUyMGJmOTAwNWNkMDY2ZDExZQot IDI2NjE0MWM2YzlhNjcyOWRhOTA0ZGZhMDQwYWUyMGQ4MGE2YjVjMzllZmMzMWZjZjJkMDM5ZWQ2 NWU5YzJiMjgKLSAzM2RhZWUwYWM2NTllYzdkMWZiMWNiMTAxNzk4ZGFlMmVkMDA3NzY1M2ZjOTE3 MGJjYmI1YmM1NTRlZTNlNDMzCi0gMjNiNzQyNzBhZWYxYzZhNGJmZjUxOTQxMDNhNDMwZTY4NTRm ZTRjNDYwZTVjNjg0NzY5YmQ3YzU5ZDFhZmEwZAotIDk0MDU2ODdkYmIwYTgxZThiZThmODQyODI0 ZjJmZTY1ODMwYjcwYTBkZDBkY2RlODRjYzhhMjFkNjYzN2Y4NDEKLSA0MGE2MDhlNzIwMTM2MDQ0 ZjRiOTU3Mjg0NzRmY2I4Mjc2NGU2MWQ2NDk1NTFiZTQzOGUzMzBiNjM3NTM2MzVmCi0gMGVmNzEw NDQ3YTM2ZTgxYTZjODZiMTdlZTI4ZDJjZjQ2MzI0MjgzNDkzNmFmMjU3ODA3NGRmNmUxMWMyYmFl YQotIDNmMGQwZDMzYWJkYTA2ODQ2NWQ3NzQ3MTQ5Y2RmMTFhNGIxZGM4MTlmN2RhN2YxZjdhM2Q5 YzJhNDUzMDcyMzEKLSA5ZDJjMzQzODc3NjUzMTA3N2UzNzllOTdhNDQ5ZTcxNDg4Mjg5NmM1M2Ri Yjg3MDUyZGU3ZTdhYzc3ZWEzZDY3Ci0gZGU5YjRlYzk0NTI2NWY1NTM5MDI1ZmI3M2I3MTMzMjI5 MjRkYTJkMWE1MWI1YmQ2YWQxYmFiYTQ1ODRjNzZlMQotIDdiNjZjN2Q1ZTFiOWViNjk1OTI5NWE3 NjQxNjI3MTIyMGU4NGVjYzQzYTk3YTVmNWYwN2VjOTk5ODY1NzljYjEKLSA0NDA0ZjVmZTU2ODY4 ZjVjNTUxMjA4ZDcyNjMwYjkxYTg4YzY4Zjc4ZDc0NjNlOGUxZDIyMWZkNzQwNmMwNzgzCi0gM2Y1 NWVjMjczMGE4NzA5NTE3NTk5NjFjODNkNjY1NGM3MTIyYTMxMTRlMTM2YTZlMmJjZTdjMDVkNjA2 MmQ4OQotIDg3MzgxOWJjMjU0OTExYWEzYTQ0M2QwYTlkYjMwNmI0NzJmN2YzMWFmOGQ5ODZkNTRj NTM1YmNlNjdhNGIxYzAKLSAwNzMyNmU5NTAxNTYwMTk0NjcwNmY1MDMzM2MzMmIwOTE5MDI1Mzc2 YWJjZGY4OGRjMjI1ZGFlMmMxNjdiMTlhCi0gYmZkZDU4ZDlmMGYwZTgwOWU2YjgwMWY2NWM3MjJj NjFiNGRiYjVlNjYzNWNlY2Q3MzkwZDE0MDNmMWRkNmY0MgotIDhjMmQ3MTYyOTFhMjhjYzY0Zjkz MDc4ZDJiZGY4ZDc1NmE2NTIxZTNiMDEwNzgxNTc4OGM0ODQ1MmVhYzk1ZjAKLSA5YjA3NzM1YjRk OGU4MzU5ZTM4ZDY3MWVkMDU0YjM3M2M0ZWQ1MGEyMzIwMTM4MDdkMDljYTRmYWUzMWU4MjIzCi0g NTU5MmVlNjY2MTE1MTVmODU4M2E0ODIxMWQ3MDc2NGZkYjI4YzU0YjFhZDRkZTViNGI4N2E5ZDNi MTAxYTE4MgotIGQzNmUyYzlhODk0YmViOTRiNjI4NTViZDA3ZDRiNTRlNDFmYzk2YzA3MzZiNWUy ZTcwMjQyMmU3NWIzY2YyMWUKLSBjYWY3ZGQyODJmYjZkYzA2NWViNmEwYzEyNGNkNDU4NzE2ZDg3 N2E1MDBjMDk0ZmY2NTBjNGQ0MDMwMmRkNDllCi0gODBiZDNjNzA0MzNmNmIzYWFjZGJkMzcwYjcw ZDRmZTBlYWIxMzU0N2QxZjYzNjhiODBlYjVjMjhhNzU5MTQxYQotIDY3YjM1OTk0N2NiZTE1YjJi ZTFhZDI1NjdkNzRhMzZjZmU1ZjI3NjY1YTA1OGIwZmFiMTllZDM3ZGRkNjNhMzAKLSBiMzM0N2Q1 Y2VjN2Y5ZjZlM2FhNGI1Y2NkZDQ5MzUwZmQwODc5YzIwOTM4YmZjMjI2NjQ3ODJjMzc3ZGQ3M2E2 Ci0gNzliNTEyNDI3OTc3YzM1OWVjOGY5M2U0ODgwY2Q1Mzk3Y2NkZGIwMTM2NzZkMmQzOTgzN2Yw NjQzM2ZlNDA0MQotIDg4M2Q1ZGFhNWIwNDE3NzhiMDk4NGE3ZTg2ZWNmYzQ4OTJhZjFhZWQxZWMw OTI4NWFjMDMxZTMzNTA3NTUyNGMKLSBiYzE5ODFjN2NiMmU2ZDVhZWNlYzdmYjBmMzcwYzFkYTUy ODk1ZjAwZDIzOGMxYWZhMmI0ZTMxYjkzNTgwZWI2Ci0gNjI3OGU1YzA1NGY1MGQzZGU2MmRlOWQw NzBkMjFkMjg0MmQ0ZDBmZjkyMTJkODUyYWY4ZWI2NzJmYWQ3ZWNlYSIKK2NoZWNrc3VtPSIxYjJi ODMzYjgxMjJkNmYxY2Q2MzYxZWUyMmEwNmI1NzZkYjA2ZTk4NGZjODg2MGFjZjE1ODI0MDQ1MTg2 OWIyCisgYTViMDk2MGViMGYwM2RhMjdkYTJhYzk1NDZkNDZhMTI0YmI1YzA0Yjg1YWVkZDg0NWM0 MWRiZTc5MmEyOWI1NAorIGFiOWFlN2NjMzI2N2M0NzllODA1MjNmZjA5OGJmZTA0YjY1NDViNDU2 MmQxNTgyOGIyNWRhZGU2OTUzMTkwNmEKKyAyODE5YmUzMWMwYWEwMTZmZGEzMjgzZTQ3YmEzODg4 MTYwYTg2MjRhZTk4YmJhMTkxOGZjNDY3N2RmYzBhYWZkCisgN2ViNmYxODk5MDc5ODcyZmQwMTM3 ZGJjYWQzZGIxNjdiYjU1OWU4ZTUzN2NjMzNhMWM5YjdiMWRiNGRlNWI5ZQorIDA2NmUwZmIwMzMz OTc2ODk4MGQ5NDEwODY2ZjRiNmE1NTY1ODA3NmJlZjE0YThjNTgzZTYxOTczNWZlOTY5YjQKKyA5 NjIzYWJkNDE3Yjk0MDY2ZjQ5ODM5NjNiNjQyZDZhY2FjOTE1YjdlMGU5NWE5MTI3OTExMTY0MzBj MzVkZWE4CisgZDBhODFiYzhiNDY2Y2ZhNTdhMmM5ZTA2YWY2OWRiNjk2MWQ1ZTE0YmE4YThmMDQy MGMyYTJhMTY0MDc1ZjMxYQorIDEwODhhYWJiNWNkYmY2ZjMzMmViMWQzODFhZGQ2NGRkMTYwMGMx NjgyMmE3NjBmM2Y0OWVmZmNkMDkzMWZlYjQKKyBhM2VkOTU0ZDVhZjlkMTc1NWI3ZmI1YjRmZDA4 Mzg0Y2RmNTNjMzRiN2E3OWY5ZWM5OTk5YTdjMjZmODNiZDY3CisgZjBiZmYxZmNmOTY5NDRhYWQw ZDdjYjZmMmZkMTk5Zjg3ZmViYzhkN2QyZTUwYzE2OWVjZWZhZDlmNWNiZmQ1NgorIDgyZjhlMmQy MTEzY2FiZDI4ZDA4YjEyOWI4MDI2OWY4YWJhNGFiZjczNTIxNzZjNmQ0YzYwMDFjZTdiODgzNmEK KyBhMDA2MTAwYTUwOTIzMjVjMGMzZTE4YjM0ZGM3ODZiNmEwN2MwMDdiOGNjYzU2OWM5NTQwYTE3 M2IyNjNiZTUyCisgNDI2ZTZmMDRlNGQzYjNhNzk0NTEzMDE5NDdjNzQ0ODM1YzhiMmFkMzUwY2U4 YTA2NDAzZWM0ZGRjYjA0ZTlhOQorIDBlYjE4OGFjYTc4YjAzYzhlODg2MzViYjg5NTVhOWU5MDIx NGU5ZWM5ZGVkZTg2MTc5NWE1MjdjMzMxNDJhNWYKKyBjNjBhN2Y1MWIzMzFjYzc0MzUwNDE1OTY3 N2FkNjY1ZWYzODA5ODA4MmY3NjNjMDM5NGU3M2MwYzdiZjNmNjg1CisgZGRlN2E3ZmFhZmQ2ZTkw MmYzNGZmYmY1YmQxZjYzOWRhMmI1ZjY5YzQ1MWVkZDQ4YjcwODYxN2I3MGMyZjJlYgorIDNjMWVj NWMxNjgzNjRiYmYxZTY5YzIyN2NmN2UxNWY3YTBjOTZmY2ZkMTA5MjRjNzAxNzMyOWJhMWQzYmZm ZTEKKyA4ZGQyYThlMTdlZWZiZGFiNmY3N2E0MzllMjIyNWI1NzE2ZTZhZWRhNjBjYjNhOTEwMTM1 NDdkMTFhODVlMzEwCisgNTQ4OWQ4NGU3ZTA5ZDVkNDYxZWYzZGI5ODI5NGRiYmY4YzYyZjdmZDVm ODc1NzA5ZWZkZDljODNiZmVjZTkyOAorIDEwZGEyZDZlYjYwMGI4NmNmNWU5OTRlOTgzYzM1NDVj Y2Y5ZGVkMDRlYThhNmY2YjI0MTk1ZWU2ZmU3OWU0YjUKKyA1YzVhNzExMTY5MTNlNjdiMzcwN2M1 OTcwNmUzYzEyZTdhMGM3YmU3ZWMzYjc4Y2NlMTNkOWUyNGFiYjBmMDM4CisgYTY0ODkzMzFlNWNh ZmYzNGM3NDhhNzgzNDU1MDU4Nzc2ZGI5NGEyMzlkN2Y2NTgzYzg2ODY2Mzk3NjJmYTI1MQorIDU4 OTkzY2MwOTQzNDAwOTJmNTc4ZDhjYzM3NmY4NzUxMTJmZGFmMDE2MTVmMzkzOGRiOGFkOTUzZDg5 MWI5YWQKKyAwMTRiMzAzODc3Njk5YWEyYzM5ZWZmYmY0ZWUwNDEzNGU4MDAxZDE2NmY4OTg4YzZk NThkNmMxOGVkYjg1MzJhCisgZjMxMWI5MDhlNjNiOGYxZTZkODUyZWYyOTM5OTg4MzE5MWEzN2I0 NGZlNTFjYTMxYTQ4NzE4NGE5N2E5ZGRkYworIGQ2Njg0YTIyOGMxNTBiMTlmNjc2NTUxOWIzZTBj YWFjOTQ0OTdhZGFiOTE5YmIxZGQ1MTZmZWQ0YWFiYWU0ODQKKyBkM2RlYjJjMTJkMDQ2NmFmMTYx ZDUwOWQxZDJiMzhmN2U4NWI0OWY4YTUyMGQ1ZGYwMjgwY2IyOWZhYzAzMDQ5CisgZjkyZDFiZGYz ZTI1Y2FmOTE5NjJmMGMyMDAyYzRjYmM0NjI2MzA0NjY1N2FhZGViODBmYzAxNjBhYTZhNWRmOQor IDVjN2ExNDZiOWZlZWQxNWU0ZGFiZTllOTNiODQwZTI0NGVmNDg2N2I0YTFlOTA3NTliYTkwZjhj NDhmOWQ3N2UKKyA5YTZiN2ZjYzNkNzM1YmZmOWZiMDAzOGNlMTBlM2U0NzdjNjMxZTcyYjQ5ZjA1 MDE0NGIyNGZkNGZjY2FkOTY1CisgYzZiNTgwNjFlZTAxNTNjODZjYmM0Nzc4ZGViY2Y3MTVlNjk2 MjUwMTExNzkzMDZmOGMyZjkzMzE2YWE0ZWE1MworIDM5YjE3OWNmMDE0MTc5NzgzNjYxNzM4NTVm MzVjNGZjNGI4MzcxNWVkZjA0Mzg3OWUwMGVjYmY5NmFmMjdiMGMKKyBhZDUzOGIzMjU3NGUxMGU0 ODVkOGYyNGM2OGUxNGVkNDRjN2M1ZGIzZTZhZTJlMTliMWI1YTA5MWI2MmEyMzUyCisgZDVmNzli OTRlMGY4Mzg2YzQ3NWQ2MmFjZGM5NzliMmNhMDQ3YzM0MzUwOGRlYWJlMzc1NGVlMWNmNjFhMzdl YworIDBmMTVjMzQ5YzU1ZTZhYzM5NzMzNDdlNzU1Mjk5NjA1MDM3MDc0NzljZTY1MTI1NTUzZDE2 MDhkMWYwMDI0YTIKKyAxZDRkYTdhMGUzNzRiNzY3OTA4MGQ2ZjY1OTAwNDZkYTYzZTk1ODJhODJl N2U3NGY0MzBiMTk4ODVmMGE1Y2IxCisgOGNhNTEwMjcxYThhZWI3ODlmOGY5MWNiOWM1NmY2OGQy ZTc3ODRlYWFlOWM1Y2FlZWNjZTI1NTI5YjVkZDI4MAorIDA2MGNkNzliNGU0NTk0YThhMjQzMDlj ZWE5MzcwNmY2NGZhNjc1OGY1NTBmN2M1NWYxNmYzNDBmMWQ2NDhhOTkKKyA5YmYwYWEyMjQxOGM5 YmY3NDUzZjM4OTI0MGIyOGJjNGI2NTA3NDMyYTEyMDA2NzQyM2Q4YThlZDYwY2JlNmZjCisgYjNm N2VjY2Q0ZjM3ZDJkNWE2NTMwODYzMGIzM2ZiYTY4ZWM4OTk0OTkwMzFhMzNlMTdlNWJkMjUyOTRi MWE1ZAorIDFhYzZmZjE1NmQxM2U0NWY5NTY5ZjhiOThkZmM0Y2JiZmNiNjczZDJlZjUwOWVjNjBh MzI5NzJjMDYxM2VkOGEKKyBjYjhhNjI0NDNkYjk4NmEyMTU5NGFhNzMyNGU4YmE2OTMzZjg4MDIz ZjdlOGVkYWMzYTcwY2E2MWJlOWFkMDc2CisgMTRjZjRhYzVlZGMzMzgwOWE2YTU0MGFkNTRlYTE0 MDIxYzk1YjY3M2M4MGJmY2M0NTZmNjhjMGI4OTUzNDU1YQorIDgwOWY2NzI4MmJkMmVkZjM0NDM1 NzJmYmJjOWM2YmQ3ZDBiZjZiZjAxMWJmMWY3MzNhOWQ3MjAzYmFlNmQzZjQKKyA4ZGI3NGEyMTNm ZTFkZjZkYWQ4NzI5OGNmYjAwNGEwMjU5MTgzMGRiZDNlNGEyZDg2ZTA2NDdkNjgwOWRjYWRiCisg YWYxNmVjZTA0ZTBlYjRiMjk3OWY1MTc0NWRlZDk5ZGRhOGNjMGFmYjQxNDNlMDc4YjMzMDNkZWRi YTNkZWIxZAorIDAyMTdlYTM3OTc1MjQ4NDY1ZmQ2OTg3NzA1MzYzYzU3MGI1NGIxMjNjYTMyOTNk MzlmMjNkNGZhYzUzYmRmOGUKKyA5Nzc2YzMzYjI1NTcwNzEzMmJlYTczZTE3ODA1YjU3MWU4OTQy YzkwMzRjYzE1NGViZTQzOGIyMzRkNDU3NTNhCisgODNlNmY0ZDZiYzQ2MGJkNmEwN2I2NDU2MzRj ZGY5NjJhOGNkM2Y0Nzk3NDBlNDgzMThjYzUzNzZkNTgwZWI1MAorIDU3Y2Q5M2Q5ZTcxMjJlMTM5 MDRiYjlmZDFiNjI4NjBmYTg0OTAwMGRiYjE2NTFkMWUwZjE0NjM1NDJhNTYzYzYKKyA0NTAyNzIw ZWQ4ZjVmNmFhZTU2OGQ1YTZmMTkxMTk0MmViODlmNjAxODMyODQ2NGIwMGI2N2I3NWE1NGZjYWJi CisgMzc1NWY5MjAxZDQwMDE0NTc5ZTJiOTU4MzU0MmRlZDg2MjFmMjIxMTE4MjljNWFhZmEzNDY1 YjJhODYxOTc5ZgorIGYzOWQ2MDcyN2ExYmYwODJkNmQxZjliNmEzY2ExYjk0NTcwOTFjMjYyNTNl MGRlZDRiYjNiNmMyZWQyMDc3MDAKKyAyZmVhYTU2NTgwOGFkMWViMTA3NDhjZDZkN2ZiODY0MzI3 MjFjM2FhZmFlY2E5OTBiZDkyMTc5MTE4MjE1OTBjCisgMzIwMmRlNmVmYzczYjE4ZTM4NTAwZWRm YmE0MDg1ZTZjOGQ4N2VkZTkxYzVkN2U1MTc4NjVhMzVlNTgzYzc1ZgorIDMyM2QyOTgyZTg4NTM3 ZGE1ZDljZTUzMzY2ZWVhYWM3ZDA3NDRjYzNkOTkyNjI2NmViY2JhOGZjYWI5MDQyZWYKKyA4N2Qz NjE4N2UwMzhlZmViMjVjNWZjNWY0ODY1NDMyZDkyZDk0N2MzOTRkYzk5MTVkMDYzMjUzYzY4ZTBj NTkzCisgMDZmYTg3N2NkYTAzMmVmNjQzM2E5MGJiOThkOTg5ODA0MDU2NDk1ZWRjODE2Yzg0NmJk NWViNGYwZTI1NThjMQorIDhmYzY4ZjYwMTQxNTFkN2ZiZTJiMTgzZWNlODEzNTdiZDBkYjk1MDE2 OTcyN2NhY2VhMzliNmE1NGVjMjMxN2IKKyBkY2I4MWQ1YjcwYzUzNzFhM2UwNWUyNTk1MTIwNzQ1 YWExODg4NzdjNTIxYzVlYmY5ODI1ZDE4OWM5OTE3OGJjCisgY2M3MzAyNTdmMGM5NzE1YmU3NjEy OTE1M2Q4NzNmZTk4Y2E2Y2JjMWM0OTA1YWQ5NzRmMGEzZWNlZTg3MTJlZgorIGZlMGYxMDA1MjUz MTlkMGU0MzY1NTA5MGYyZjdmMTU2MWNhMGI5ODk5ZDdlOTAzZjc1ZjgwZDNlMzc3NzVlYTEKKyBl OTA2N2Y0ZGE3YTU0ODY2NzQ0MDY1Y2Y0ZWZhNzJmNmI4MWM3OTQ5NmVmY2NlODc1MDE3MjMxOTY5 YjRmOGIwCisgMmIyNDI5YTRjNTI0NWQwYWVhM2UzMTdhODNlM2I2ZDgyZTI0ZTRiOGRiMjIzODYy NjUwM2MwYWJkYTVhYTBkYQorIDFmZDlkNDk4M2I5ZTg3ZDE2NGY5NDcwOGM2YzczNDg1ODA2MTMy ZDUyZWFiYWI4ZDk2MjBmMjRlMzFmZjI2MmUKKyBiNWZmYTgzOTE1OTRjODMyZWI0Y2Y2NjViODVm NTgwMzYyZjgwNTc5NmU5YWY1YjlmNWQ1MzQyYjEyYjI3MmM3CisgZTJkZWZkNDVjZWNhNDlkMWZm MzA2MmUwOTVkYzYwY2VlMTQ0MWEyNWJhYzA4OTQ1YjRlNmYyMzNkZmEwZjQ3MQorIDZmMjVmZTMz ZmU0NmE1NDZjZmQ2N2M5NzllZjc4MWNkNjYyYzg0MDk2NjEyMTkwZTU3MDVjMTExZDcyZDZiMzEK KyAyMDYzOWVlMmVlMGExZjgxODhlMTIzMDc1MjBhNTUxNGQ5ZmFjNzBlNjViYWI1ZDg2MjQyNTRj NWNlN2U0YTMyCisgMzBlN2VjYTZjMzExMTRlOTM0OTE5ZTFlZWFiY2UzNDQ3ZmE3NzhmYmRlMzVm YjU4ZTZjMDliOTc3MWEyYzcxNworIGJlZTNiZjBkMDFhYmJhYTNjYThjYmFlN2JkZTg4MjJlN2Y3 MzM5NGU1NzM5OTI4MjJiNDM5ODY4NzY2NDZiMGUKKyA5M2RlYzYzOTk3ZDMxYjI3MjcxNjc4ZjFh MTc2NTQzN2E2OWY4NTY5NWI2NmQ5ZWUyZjYxNzdjODljMjRhMDQwCisgMzMyYjMzMTk1YTJjMzdl MGQ0MjhjNDI0ZWJjM2QxNmMyM2U4MmYwMzE3OGQ5MjMwNTNiYTEyMjE1Nzc1ZjRmNworIGI1YjAy NmVkOTRmMGExOWRiMTZlY2I1NjMwOGIzZDIxMGMzZGJiY2YxODM4YWJkYmI0NTliMzliZmU0MGNm MDAKKyAzYTlmOGE2ZDlhZjg3MWExY2FiZjI3MWI0YTg4YWRiY2I3MDA1YjU4NmFiNGEwZDI4ZDNm Yjc4MmQ4NzllMDU0CisgMGRkMzFmMjU5MzE5OGEzYjIxMTI0NzNlM2ZjMTJiZDVlMWYyYjQ5M2Zi YjQzZDMxZDI3YjIxYTI1ZTA4NTY4OQorIGRlNmE4OGRkMzBiNDQ1ZmFhODhiNGJjMTBkMTczMmVl ZmM0YzMwY2U5MzlmYWQwOTM4MmEzZTU1YzFiMjZmM2IKKyAwZDMyMGYyZWYzNmY0NjU1YzA4Yjk1 NGNlMGE4MTAxNjk3ZmExMzU0YWE0ZDQyOTMxZmI4YmIyMGY1NTIyZmU5CisgNDkxMTUwMGVlOGM1 MjI5ODg0ODNmOTdkMmE3NjI3MmIzOTAzODY5OWI3MDlkOGM3ZWNhYTYxNWRmNWMwMmIyYgorIDIw YmYxMmY0ZDQ2NzIxMTEwYzQ1ZGIyYjAzYjM5NDlhYmZlODk4OWRhNTY1MmM3N2E2MzcxZGQwOTU4 YzJmZWYKKyAyYjNhNDVkYWFhYjY0MGFmZmI2ZGEzN2U3Y2NlZDNhNWJjZDNiZmY1MWM2YjE4MjY1 OGYwZDRiMGVmYTc3YWFmCisgMGFhMDkxN2UxNzU1MTk0YjMwNDBhZTE1NjA4M2E0ZTM4ZjRiNTU5 MzcxNzU3N2E4N2I0OWJmZTM1ZDcwYjEwYQorIGJhYmMxMDUxOWZkOGFkYzBhNjE1M2ExYTk1N2Fm NjEzNjlmMGRhYjhhZjJhNDJhMGU4OTdhNDJmNzc4NTU4MWUKKyAzZDk0N2YyNDE3N2RjZjBmNDVm N2VhZDEzYzFiYzUwMTdmOThlODNhNjQ0ODZlN2JkZThkMTNiYTdhOGMxMmFlCisgMTdjNWNhNTFm ZDM4MDczNjU4N2ZkYWJkMGIwMTZjZTFjNDE5OGQ1NmZmOGY4MDYzZmNkMzdkMzAyMWZhOWE2Ywor IDk4MTUwM2VjNWIyNzJkNGY1ZTFjZjI1YmRjMjVmNDI5ZmYyNzg4ZmY1OTI5YWZhMjMwYzI2ZGRj OWRkMzE3MWQKKyBhOGVjNzdlZGZiMzc1MDdlOTMzZTBhYjk0YTY4NDgxNzY2NmZmMDNlM2RlNzI0 MjQyMDQ5NWQ0MGNmMTM0MGUxCisgYmQxMTBjNGQ3MTYyNjg0NmQ5YjkwOTU2MGZlYzIzZmUyNTkz NGNkMDFlNTM5MmQyOTdlNTBjZDI2ZDYwY2Q4NworIDhkMzUxMDRjZmI0Zjg2YWU4OWFlNTA0ODUw OWEwYTZhMWNmZWJmM2VjOGE0MGE4ZGRjZTBkZTkxZjNiMTNlZWYKKyA3OGNmYzg3ZGE2MzI2MDBh MWM0YWEyMmIyYTQzYjJkZmQxOTNkMmY0NWY3Y2RmYjg3NGU4YjZjYWEyYTY5MjlhCisgZDk0Yzdk OTZkMWM4ZWM3ZTI4NDI1NzhmNDcwM2RlZDZiNzViZTUzZTY5MzQwODZlNmE1YjI4OWU0ZDdhYTQ3 NgorIDlkNDE4NTExNzg3MmEwOWQ5ODlkMDFkY2NkZDgxZjMyNjZlMGVlZDM0NTg0ODBmNzhkODEw ZjJkMWYyMGY5OTAiCgpGcm9tIDNlNzc2MTM2NTdlMmYyMTcxOGY4MmQ2NmJlMjQ5MzgyZDVjZmY2 MjYgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IFBldGVyIEJ1aSA8cGJ1aUBnaXRodWIu Yng2MTIuc3BhY2U+CkRhdGU6IE1vbiwgMjggT2N0IDIwMTkgMjM6Mjc6MzIgLTA0MDAKU3ViamVj dDogW1BBVENIIDA2MC8xODZdIGRoY3BjZDogcmV2ZXJ0IHRvIDguMC42IGR1ZSB0byBoaWdoIENQ VSB1c2FnZSBpc3N1ZQoKVGhpcyByZXZlcnRzIGNvbW1pdCBiYTA0ZTRkMWRkMWU3ZDAwNGJhMzc3 ZDIzMThjYmU4ZTIzMzgzOWU0LgotLS0KIHNyY3BrZ3MvZGhjcGNkL3BhdGNoZXMvbXVzbC1pZl9l dGhlci5wYXRjaCB8IDE0IC0tLS0tLS0tLS0tLS0tCiBzcmNwa2dzL2RoY3BjZC90ZW1wbGF0ZSAg ICAgICAgICAgICAgICAgICAgfCAgNyArKysrLS0tCiAyIGZpbGVzIGNoYW5nZWQsIDQgaW5zZXJ0 aW9ucygrKSwgMTcgZGVsZXRpb25zKC0pCiBkZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtncy9kaGNw Y2QvcGF0Y2hlcy9tdXNsLWlmX2V0aGVyLnBhdGNoCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9kaGNw Y2QvcGF0Y2hlcy9tdXNsLWlmX2V0aGVyLnBhdGNoIGIvc3JjcGtncy9kaGNwY2QvcGF0Y2hlcy9t dXNsLWlmX2V0aGVyLnBhdGNoCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBlOGQzNjgy Y2Q3Yi4uMDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtncy9kaGNwY2QvcGF0Y2hlcy9tdXNsLWlmX2V0 aGVyLnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEsMTQgKzAsMCBAQAotLS0tIHNyYy9pZi1saW51 eC5jCTIwMTktMTAtMTkgMDk6Mjg6MTYuNzQyNjI2ODA1IC0wNDAwCi0rKysgc3JjL2lmLWxpbnV4 LmMJMjAxOS0xMC0xOSAwOToyNzo0Ny45NjIzMDQ1NjggLTA0MDAKLUBAIC00Niw3ICs0NiwxMSBA QAotIAotICNpbmNsdWRlIDxhcnBhL2luZXQuaD4KLSAjaW5jbHVkZSA8bmV0L2lmLmg+Ci0rI2lm IGRlZmluZWQoX19HTElCQ19fKQotICNpbmNsdWRlIDxuZXRpbmV0L2lmX2V0aGVyLmg+Ci0rI2Vs c2UKLSsjaW5jbHVkZSA8bGludXgvaWZfYXJwLmg+Ci0rI2VuZGlmCi0gI2luY2x1ZGUgPG5ldGlu ZXQvaW5fc3lzdG0uaD4KLSAjaW5jbHVkZSA8bmV0aW5ldC9pbi5oPgotICNpbmNsdWRlIDxuZXQv cm91dGUuaD4KZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZGhjcGNkL3RlbXBsYXRlIGIvc3JjcGtncy9k aGNwY2QvdGVtcGxhdGUKaW5kZXggYmQ0YWU4YmYwZjguLmU3NmM3YTY0OWZkIDEwMDY0NAotLS0g YS9zcmNwa2dzL2RoY3BjZC90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2RoY3BjZC90ZW1wbGF0ZQpA QCAtMSw3ICsxLDggQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2RoY3BjZCcKIHBrZ25hbWU9ZGhj cGNkCi12ZXJzaW9uPTguMS4xCi1yZXZpc2lvbj0xCityZXZlcnRzPSI4LjEuMV8xIgordmVyc2lv bj04LjAuNgorcmV2aXNpb249MgogYnVpbGRfc3R5bGU9Y29uZmlndXJlCiBtYWtlX2NoZWNrX3Rh cmdldD10ZXN0CiBjb25maWd1cmVfYXJncz0iLS1wcmVmaXg9L3VzciAtLXNiaW5kaXI9L3Vzci9i aW4gLS1zeXNjb25mZGlyPS9ldGMgLS1ydW5kaXI9L3J1biIKQEAgLTEyLDcgKzEzLDcgQEAgbWFp bnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkJT RC0yLUNsYXVzZSIKIGhvbWVwYWdlPSJodHRwczovL3JveS5tYXJwbGVzLm5hbWUvcHJvamVjdHMv ZGhjcGNkIgogZGlzdGZpbGVzPSJodHRwczovL3JveS5tYXJwbGVzLm5hbWUvZG93bmxvYWRzL2Ro Y3BjZC9kaGNwY2QtJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT00ODVkMzA4ZmUxMGZlYmQz NmI2ZjkzNmU0MjYwZTRhYjM0YTE0NmU0ZjAwYTlmN2E1NTA5YzQzNzdhZDVlYTgyCitjaGVja3N1 bT02NmI1MDE5OWVkODNiZjUwMmFmM2ZhYjlhYzAwMWI0MTdmMGZhYzdlNjljOTJkOTdhOWM0MTQ5 OWNlYmFiZDRmCiBsaWIzMmRpc2FibGVkPXllcwogY29uZl9maWxlcz0vZXRjL2RoY3BjZC5jb25m CiAKCkZyb20gNDJlYjg4NzM4MjE3YmE5OTUwNTc1YzI4ZWFlM2M3ZTUzMjJkMzFkYiBNb24gU2Vw IDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogRHVuY2FlbiA8ZHVuY2FlbkB2b2lkbGludXgub3JnPgpE YXRlOiBUdWUsIDI5IE9jdCAyMDE5IDEzOjE2OjM1ICswMTAwClN1YmplY3Q6IFtQQVRDSCAwNjEv MTg2XSB4YnBzOiBhZGQgcGF0Y2ggdG8gcmV2ZXJ0IHN0cmljdCByZXZpc2lvbiBzdHVmZgoKLS0t CiBzcmNwa2dzL3hicHMvcGF0Y2hlcy9yZXZlcnRzLXN0cmljdC1yZXYucGF0Y2ggfCAxNDQgKysr KysrKysrKysrKysrKysrCiBzcmNwa2dzL3hicHMvdGVtcGxhdGUgICAgICAgICAgICAgICAgICAg ICAgICAgfCAgIDIgKy0KIDIgZmlsZXMgY2hhbmdlZCwgMTQ1IGluc2VydGlvbnMoKyksIDEgZGVs ZXRpb24oLSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3hicHMvcGF0Y2hlcy9yZXZlcnRz LXN0cmljdC1yZXYucGF0Y2gKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3hicHMvcGF0Y2hlcy9yZXZl cnRzLXN0cmljdC1yZXYucGF0Y2ggYi9zcmNwa2dzL3hicHMvcGF0Y2hlcy9yZXZlcnRzLXN0cmlj dC1yZXYucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAuLjU0MWRl OTQwNjA0Ci0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy94YnBzL3BhdGNoZXMvcmV2ZXJ0cy1z dHJpY3QtcmV2LnBhdGNoCkBAIC0wLDAgKzEsMTQ0IEBACitjb21taXQgODdmZjQxZjQwMWNiOGIx NTk4NTliNjVhMDRiMzk4YWM1OGE1NWUyZAorQXV0aG9yOiBEdW5jYW4gT3ZlcmJydWNrIDxtYWls QGR1bmNhbm8uZGU+CitEYXRlOiAgIFR1ZSBPY3QgMjkgMTM6MTM6MjEgMjAxOSArMDEwMAorCisg ICAgUmV2ZXJ0ICJsaWIvdXRpbC5jOiB2ZXJpZnkgcmV2aXNpb24gaW4geGJwc19wa2dfe3ZlcnNp b24scmV2aXNpb24sbmFtZX0iCisgICAgCisgICAgVGhpcyByZXZlcnRzIGNvbW1pdCA2OTliMmJk ZDNiOThiMDg2YWM5ODlhZjNjZjAzNDEzNWE3YTZmNTcwLgorCitkaWZmIC0tZ2l0IGxpYi91dGls LmMgbGliL3V0aWwuYworaW5kZXggNjIyOGQ4ZmMuLmVlNjkwMzA0IDEwMDY0NAorLS0tIGxpYi91 dGlsLmMKKysrKyBsaWIvdXRpbC5jCitAQCAtNTAsMTYgKzUwLDYgQEAKKyAjcHJhZ21hIGNsYW5n IGRpYWdub3N0aWMgaWdub3JlZCAiLVdmb3JtYXQtbm9ubGl0ZXJhbCIKKyAjZW5kaWYKKyAKKy1z dGF0aWMgYm9vbCBpc19udW1lcmljKGNvbnN0IGNoYXIgKnN0cikgeworLQlpZiAoc3RyID09IE5V TEwgfHwgc3RyWzBdID09ICdcMCcpeworLQkJcmV0dXJuIGZhbHNlOworLQl9CistCXdoaWxlIChp c2RpZ2l0KHN0clswXSkpIHsKKy0JCSsrc3RyOworLQl9CistCXJldHVybiBzdHJbMF0gPT0gJ1ww JzsKKy19CistCisgLyoqCisgICogQGZpbGUgbGliL3V0aWwuYworICAqIEBicmllZiBVdGlsaXR5 IHJvdXRpbmVzCitAQCAtMTI3LDIyICsxMTcsMTYgQEAgeGJwc19wa2dfaXNfaWdub3JlZChzdHJ1 Y3QgeGJwc19oYW5kbGUgKnhocCwgY29uc3QgY2hhciAqcGtnKQorIGNvbnN0IGNoYXIgKgorIHhi cHNfcGtnX3ZlcnNpb24oY29uc3QgY2hhciAqcGtnKQorIHsKKy0JY29uc3QgY2hhciAqcCwgKnI7 CistCXNpemVfdCBwX2xlbjsKKysJY29uc3QgY2hhciAqcDsKKyAKKyAJaWYgKChwID0gc3RycmNo cihwa2csICctJykpID09IE5VTEwpCisgCQlyZXR1cm4gTlVMTDsKKyAKKy0JKytwOyAvKiBza2lw IGZpcnN0ICctJyAqLworLQlwX2xlbiA9IHN0cmxlbihwKTsKKy0JZm9yICh1bnNpZ25lZCBpbnQg aSA9IDA7IGkgPCBwX2xlbjsgaSsrKSB7CisrCWZvciAodW5zaWduZWQgaW50IGkgPSAwOyBpIDwg c3RybGVuKHApOyBpKyspIHsKKyAJCWlmIChwW2ldID09ICdfJykKKyAJCQlicmVhazsKKy0JCWlm IChpc2RpZ2l0KCh1bnNpZ25lZCBjaGFyKXBbaV0pICYmIChyID0gc3RyY2hyKHAgKyBpICsgMSwg J18nKSkpIHsKKy0JCQlpZiAoIWlzX251bWVyaWMociArIDEpKSB7CistCQkJCWJyZWFrOworLQkJ CX0KKy0JCQlyZXR1cm4gcDsKKysJCWlmIChpc2RpZ2l0KCh1bnNpZ25lZCBjaGFyKXBbaV0pICYm IHN0cmNocihwLCAnXycpKSB7CisrCQkJcmV0dXJuIHAgKyAxOyAvKiBza2lwIGZpcnN0ICctJyAq LworIAkJfQorIAl9CisgCXJldHVybiBOVUxMOworQEAgLTIyNCw0NyArMjA4LDM2IEBAIHhicHNf YmlucGtnX2FyY2goY29uc3QgY2hhciAqcGtnKQorIGNvbnN0IGNoYXIgKgorIHhicHNfcGtnX3Jl dmlzaW9uKGNvbnN0IGNoYXIgKnBrZykKKyB7CistCWNvbnN0IGNoYXIgKnAsICpyOworLQlzaXpl X3QgcF9sZW47CisrCWNvbnN0IGNoYXIgKnA7CisgCistCWlmICgocCA9IHN0cnJjaHIocGtnLCAn LScpKSA9PSBOVUxMKQorKwlhc3NlcnQocGtnICE9IE5VTEwpOworKworKwkvKiBHZXQgdGhlIHJl cXVpcmVkIHJldmlzaW9uICovCisrCWlmICgocCA9IHN0cnJjaHIocGtnLCAnXycpKSA9PSBOVUxM KQorIAkJcmV0dXJuIE5VTEw7CisgCistCSsrcDsgLyogc2tpcCBmaXJzdCAnLScgKi8KKy0JcF9s ZW4gPSBzdHJsZW4ocCk7CistCWZvciAodW5zaWduZWQgaW50IGkgPSAwOyBpIDwgcF9sZW47IGkr KykgeworLQkJaWYgKHBbaV0gPT0gJ18nKQorLQkJCWJyZWFrOworLQkJaWYgKGlzZGlnaXQoKHVu c2lnbmVkIGNoYXIpcFtpXSkgJiYgKHIgPSBzdHJjaHIocCArIGkgKyAxLCAnXycpKSkgeworLQkJ CSsrcjsgLyogc2tpcCBmaXJzdCAnXycgKi8KKy0JCQlpZiAoIWlzX251bWVyaWMocikpIHsKKy0J CQkJYnJlYWs7CistCQkJfQorLQkJCXJldHVybiByOworLQkJfQorLQl9CistCXJldHVybiBOVUxM OworKwlpZiAoIWlzZGlnaXQoKHVuc2lnbmVkIGNoYXIpcFsxXSkpCisrCQlyZXR1cm4gTlVMTDsK KysKKysJcmV0dXJuIHAgKyAxOyAvKiBza2lwIGZpcnN0ICdfJyAqLworIH0KKyAKKyBjaGFyICoK KyB4YnBzX3BrZ19uYW1lKGNvbnN0IGNoYXIgKnBrZykKKyB7CistCWNvbnN0IGNoYXIgKnAsICpy OworKwljb25zdCBjaGFyICpwOworIAljaGFyICpidWY7CisgCXVuc2lnbmVkIGludCBsZW47Cist CXNpemVfdCBwX2xlbjsKKyAJYm9vbCB2YWxpZCA9IGZhbHNlOworIAorIAlpZiAoKHAgPSBzdHJy Y2hyKHBrZywgJy0nKSkgPT0gTlVMTCkKKyAJCXJldHVybiBOVUxMOworIAorLQlwX2xlbiA9IHN0 cmxlbihwKTsKKy0JLyogaSA9IDEgc2tpcHMgZmlyc3QgJy0nICovCistCWZvciAodW5zaWduZWQg aW50IGkgPSAxOyBpIDwgcF9sZW47IGkrKykgeworKwlmb3IgKHVuc2lnbmVkIGludCBpID0gMDsg aSA8IHN0cmxlbihwKTsgaSsrKSB7CisgCQlpZiAocFtpXSA9PSAnXycpCisgCQkJYnJlYWs7Cist CQlpZiAoaXNkaWdpdCgodW5zaWduZWQgY2hhcilwW2ldKSAmJiAociA9IHN0cmNocihwICsgaSAr IDEsICdfJykpKSB7CistCQkJdmFsaWQgPSBpc19udW1lcmljKHIgKyAxKTsKKysJCWlmIChpc2Rp Z2l0KCh1bnNpZ25lZCBjaGFyKXBbaV0pICYmIHN0cmNocihwLCAnXycpKSB7CisrCQkJdmFsaWQg PSB0cnVlOworIAkJCWJyZWFrOworIAkJfQorIAl9CitkaWZmIC0tZ2l0IHRlc3RzL3hicHMvbGli eGJwcy91dGlsL21haW4uYyB0ZXN0cy94YnBzL2xpYnhicHMvdXRpbC9tYWluLmMKK2luZGV4IDQx YWFjNmVlLi45YWU4OGYxYyAxMDA2NDQKKy0tLSB0ZXN0cy94YnBzL2xpYnhicHMvdXRpbC9tYWlu LmMKKysrKyB0ZXN0cy94YnBzL2xpYnhicHMvdXRpbC9tYWluLmMKK0BAIC00MywxOSArNDMsMTkg QEAgQVRGX1RDX0JPRFkodXRpbF90ZXN0LCB0YykKKyAJQVRGX0NIRUNLX0VRKHhicHNfcGtnX25h bWUoInB5dGhvbi1lX2RidXMiKSwgTlVMTCk7CisgCUFURl9DSEVDS19FUSh4YnBzX3BrZ19uYW1l KCJmcy11dGlscy12MSIpLCBOVUxMKTsKKyAJQVRGX0NIRUNLX0VRKHhicHNfcGtnX25hbWUoImZz LXV0aWxzLXZfMSIpLCBOVUxMKTsKKy0JQVRGX0NIRUNLX0VRKHhicHNfcGtnX25hbWUoImZvbnQt YWRvYmUtMTAwZHBpLTEuOF9ibGFoIiksIE5VTEwpOworIAlBVEZfQ0hFQ0tfRVEoeGJwc19wa2df dmVyc2lvbigiZm9udC1hZG9iZS0xMDBkcGkiKSwgTlVMTCk7CisgCUFURl9DSEVDS19FUSh4YnBz X3BrZ192ZXJzaW9uKCJmb250LWFkb2JlLTEwMGRwaS03LjgiKSwgTlVMTCk7CisgCUFURl9DSEVD S19FUSh4YnBzX3BrZ192ZXJzaW9uKCJweXRob24tZV9kYnVzIiksIE5VTEwpOworIAlBVEZfQ0hF Q0tfRVEoeGJwc19wa2dfdmVyc2lvbigicHl0aG9uLWVfZGJ1cy0xIiksIE5VTEwpOworLQlBVEZf Q0hFQ0tfRVEoeGJwc19wa2dfdmVyc2lvbigiZm9udC1hZG9iZS0xMDBkcGktMS44X2JsYWgiKSwg TlVMTCk7CistCUFURl9DSEVDS19FUSh4YnBzX3BrZ19yZXZpc2lvbigic3lzdGVtZC00M18xXzAi KSwgTlVMTCk7CisgCUFURl9SRVFVSVJFX1NUUkVRKHhicHNfcGtnX25hbWUoImZvbnQtYWRvYmUt MTAwZHBpLTcuOF8yIiksICJmb250LWFkb2JlLTEwMGRwaSIpOworIAlBVEZfUkVRVUlSRV9TVFJF USh4YnBzX3BrZ19uYW1lKCJzeXN0ZW1kLTQzXzEiKSwgInN5c3RlbWQiKTsKKysJQVRGX1JFUVVJ UkVfU1RSRVEoeGJwc19wa2dfbmFtZSgiZm9udC1hZG9iZS0xMDBkcGktMS44X2JsYWgiKSwgImZv bnQtYWRvYmUtMTAwZHBpIik7CisgCUFURl9SRVFVSVJFX1NUUkVRKHhicHNfcGtnX25hbWUoInB5 dGhvbi1lX2RidXMtMS4wXzEiKSwgInB5dGhvbi1lX2RidXMiKTsKKyAJQVRGX1JFUVVJUkVfU1RS RVEoeGJwc19wa2dfdmVyc2lvbigiZm9udC1hZG9iZS0xMDBkcGktNy44XzIiKSwgIjcuOF8yIik7 CisrCUFURl9SRVFVSVJFX1NUUkVRKHhicHNfcGtnX3ZlcnNpb24oImZvbnQtYWRvYmUtMTAwZHBp LTEuOF9ibGFoIiksICIxLjhfYmxhaCIpOworIAlBVEZfUkVRVUlSRV9TVFJFUSh4YnBzX3BrZ192 ZXJzaW9uKCJweXRob24tZV9kYnVzLTFfMSIpLCAiMV8xIik7CisgCUFURl9SRVFVSVJFX1NUUkVR KHhicHNfcGtnX3ZlcnNpb24oImZzLXV0aWxzLXYxXzEiKSwgInYxXzEiKTsKKysJQVRGX1JFUVVJ UkVfU1RSRVEoeGJwc19wa2dfcmV2aXNpb24oInN5c3RlbWQtNDNfMV8wIiksICIwIik7CisgCUFU Rl9SRVFVSVJFX1NUUkVRKHhicHNfcGtnX3JldmlzaW9uKCJzeXN0ZW1kXzIxLTQzXzAiKSwgIjAi KTsKKyAJQVRGX1JFUVVJUkVfU1RSRVEoeGJwc19wa2dwYXR0ZXJuX25hbWUoInN5c3RlbWQ+PTQz IiksICJzeXN0ZW1kIik7CisgCUFURl9SRVFVSVJFX1NUUkVRKHhicHNfcGtncGF0dGVybl9uYW1l KCJzeXN0ZW1kPjQzIiksICJzeXN0ZW1kIik7CmRpZmYgLS1naXQgYS9zcmNwa2dzL3hicHMvdGVt cGxhdGUgYi9zcmNwa2dzL3hicHMvdGVtcGxhdGUKaW5kZXggYzU2YzZkZmMzZTQuLjY1ZTQ1NmYy YmFkIDEwMDY0NAotLS0gYS9zcmNwa2dzL3hicHMvdGVtcGxhdGUKKysrIGIvc3JjcGtncy94YnBz L3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAneGJwcycKIHBr Z25hbWU9eGJwcwogdmVyc2lvbj0wLjU3LjEKLXJldmlzaW9uPTEKK3JldmlzaW9uPTIKIGJvb3Rz dHJhcD15ZXMKIGJ1aWxkX3N0eWxlPWNvbmZpZ3VyZQogc2hvcnRfZGVzYz0iWEJQUyBwYWNrYWdl IHN5c3RlbSB1dGlsaXRpZXMiCgpGcm9tIGFiNGU2N2U4MDUwYzJhNjE5Yzk0NWMwYTFkZjNmYjdj ODVlZTJhYzQgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IER1bmNhZW4gPGR1bmNhZW5A dm9pZGxpbnV4Lm9yZz4KRGF0ZTogVHVlLCAyOSBPY3QgMjAxOSAxMzoxNjo1NCArMDEwMApTdWJq ZWN0OiBbUEFUQ0ggMDYyLzE4Nl0geGJwcy1zdGF0aWM6IGFkZCBwYXRjaCB0byByZXZlcnQgc3Ry aWN0IHJldmlzaW9uCiBzdHVmZgoKLS0tCiBzcmNwa2dzL3hicHMtc3RhdGljL3RlbXBsYXRlIHwg MiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZm IC0tZ2l0IGEvc3JjcGtncy94YnBzLXN0YXRpYy90ZW1wbGF0ZSBiL3NyY3BrZ3MveGJwcy1zdGF0 aWMvdGVtcGxhdGUKaW5kZXggZWVhYWI4OTQ5OTMuLjAzN2ZhMGZhZDRlIDEwMDY0NAotLS0gYS9z cmNwa2dzL3hicHMtc3RhdGljL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MveGJwcy1zdGF0aWMvdGVt cGxhdGUKQEAgLTIsNyArMiw3IEBACiAjIE5PVEU6IGtlZXAgdGhpcyBwYWNrYWdlIHN5bmNocm9u aXplZCB3aXRoICJzcmNwa2dzL3hicHMiCiBwa2duYW1lPXhicHMtc3RhdGljCiB2ZXJzaW9uPTAu NTcuMQotcmV2aXNpb249MQorcmV2aXNpb249MgogIyBvbmx5IG11c2wKIGFyY2hzPSIqLW11c2wi CiB3cmtzcmM9InhicHMtJHt2ZXJzaW9ufSIKCkZyb20gMWNlY2UzZDMyYTdkMmFjMzE3MjUwNmNl MjhkOGI3ZmQyMjk1ZDkxMyBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogSGVsbXV0IFBv emltc2tpIDxoZWxtdXRAcG96aW1za2kuZXU+CkRhdGU6IFR1ZSwgMjkgT2N0IDIwMTkgMTQ6MjM6 MzAgKzAxMDAKU3ViamVjdDogW1BBVENIIDA2My8xODZdIGxpbnV4NC4xOTogdXBkYXRlIHRvIDQu MTkuODEuCgotLS0KIHNyY3BrZ3MvbGludXg0LjE5L3RlbXBsYXRlIHwgNCArKy0tCiAxIGZpbGUg Y2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3Ny Y3BrZ3MvbGludXg0LjE5L3RlbXBsYXRlIGIvc3JjcGtncy9saW51eDQuMTkvdGVtcGxhdGUKaW5k ZXggYmUwZWU1NTQ3MzUuLjk5MTNmN2QwYWY5IDEwMDY0NAotLS0gYS9zcmNwa2dzL2xpbnV4NC4x OS90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2xpbnV4NC4xOS90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYg QEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2xpbnV4NC4xOScKIHBrZ25hbWU9bGludXg0LjE5Ci12 ZXJzaW9uPTQuMTkuODAKK3ZlcnNpb249NC4xOS44MQogcmV2aXNpb249MQogd3Jrc3JjPSJsaW51 eC0ke3ZlcnNpb259Igogc2hvcnRfZGVzYz0iTGludXgga2VybmVsIGFuZCBtb2R1bGVzICgke3Zl cnNpb24lLip9IHNlcmllcykiCkBAIC04LDcgKzgsNyBAQCBtYWludGFpbmVyPSJIZWxtdXQgUG96 aW1za2kgPGhlbG11dEBwb3ppbXNraS5ldT4iCiBsaWNlbnNlPSJHUEwtMi4wLW9ubHkiCiBob21l cGFnZT0iaHR0cHM6Ly93d3cua2VybmVsLm9yZyIKIGRpc3RmaWxlcz0iaHR0cHM6Ly9jZG4ua2Vy bmVsLm9yZy9wdWIvbGludXgva2VybmVsL3Y0LngvbGludXgtJHt2ZXJzaW9ufS50YXIueHoiCi1j aGVja3N1bT04MGE5YmE3NjRlMDg4YWE3ZmRkZmVmNWE5N2MwMjM2OTA1ZTI5MTQ2OGEzNzgzMjI0 M2I2ZjM4MjhkMzZlN2VjCitjaGVja3N1bT0yOTNlYzFhZTBmNmIzYjRiZTgzYTIxNzIyNGI1MWQx MzdmMjE2M2NmMmQ5ZDI5NGVlY2Y1ZDBhMzU0ZTRlMjlkCiBwYXRjaF9hcmdzPSItTnAxIgogCiBu b2RlYnVnPXllcyAgIyAtZGJnIHBhY2thZ2UgaXMgZ2VuZXJhdGVkIGJlbG93IG1hbnVhbGx5CgpG cm9tIDJjNWY0MWFlZGY1NjMyYTlmN2QwMjMyYTRlZWUxZWIwMTNkZDU0NzEgTW9uIFNlcCAxNyAw MDowMDowMCAyMDAxCkZyb206IEhlbG11dCBQb3ppbXNraSA8aGVsbXV0QHBvemltc2tpLmV1PgpE YXRlOiBUdWUsIDI5IE9jdCAyMDE5IDE0OjI1OjE4ICswMTAwClN1YmplY3Q6IFtQQVRDSCAwNjQv MTg2XSBsaW51eDQuMTQ6IHVwZGF0ZSB0byA0LjE0LjE1MS4KCi0tLQogc3JjcGtncy9saW51eDQu MTQvdGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIg ZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9saW51eDQuMTQvdGVtcGxhdGUgYi9z cmNwa2dzL2xpbnV4NC4xNC90ZW1wbGF0ZQppbmRleCBkODdlZGJiZjg2Zi4uNWIxOWM3MWMwZjMg MTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvbGludXg0LjE0L3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvbGlu dXg0LjE0L3RlbXBsYXRlCkBAIC0xLDYgKzEsNiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnbGlu dXg0LjE0JwogcGtnbmFtZT1saW51eDQuMTQKLXZlcnNpb249NC4xNC4xNDkKK3ZlcnNpb249NC4x NC4xNTEKIHJldmlzaW9uPTEKIHBhdGNoX2FyZ3M9Ii1OcDEiCiB3cmtzcmM9ImxpbnV4LSR7dmVy c2lvbn0iCkBAIC05LDcgKzksNyBAQCBob21lcGFnZT0iaHR0cDovL3d3dy5rZXJuZWwub3JnIgog bGljZW5zZT0iR1BMLTIuMC1vbmx5Igogc2hvcnRfZGVzYz0iTGludXgga2VybmVsIGFuZCBtb2R1 bGVzICgke3ZlcnNpb24lLip9IHNlcmllcykiCiBkaXN0ZmlsZXM9Imh0dHBzOi8vY2RuLmtlcm5l bC5vcmcvcHViL2xpbnV4L2tlcm5lbC92NC54L2xpbnV4LSR7dmVyc2lvbn0udGFyLnh6IgotY2hl Y2tzdW09ZTY5ZGFiZDIzNjg0NDBjZTE2NTBjZGEwY2YwNDNlMWJhM2YzMzQzZjk0MGE0M2I2OGU3 NjE3MzlmY2IzZjI5NgorY2hlY2tzdW09ZmY1MTljNDI4ZWU5YmJiNTEzYTg0ZGI1ZWMzMmE3ZTM3 MDVjZDhjMjNhNTcxMDRiMjViOTQ0Y2I3OTU4M2ZhZQogCiBub2RlYnVnPXllcyAgIyAtZGJnIHBh Y2thZ2UgaXMgZ2VuZXJhdGVkIGJlbG93IG1hbnVhbGx5CiBub3N0cmlwPXllcwoKRnJvbSBhMDhi OTExYTA2MTJiNGYyNmZjZGU3ZjYxMzNlZjY0YWJjYTU3YThkIE1vbiBTZXAgMTcgMDA6MDA6MDAg MjAwMQpGcm9tOiBBbnRob255IElsaW9wb3Vsb3MgPGFpbGlvcEBhbHRhdHVzLmNvbT4KRGF0ZTog VHVlLCAyOSBPY3QgMjAxOSAxNDoxMDoyOCArMDEwMApTdWJqZWN0OiBbUEFUQ0ggMDY1LzE4Nl0g d211dGlscy1jb3JlOiB1cGRhdGUgdG8gMS41LgoKLS0tCiBzcmNwa2dzL3dtdXRpbHMtY29yZS90 ZW1wbGF0ZSB8IDEwICsrKysrLS0tLS0KIDEgZmlsZSBjaGFuZ2VkLCA1IGluc2VydGlvbnMoKyks IDUgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy93bXV0aWxzLWNvcmUvdGVtcGxh dGUgYi9zcmNwa2dzL3dtdXRpbHMtY29yZS90ZW1wbGF0ZQppbmRleCBlYWFjYzViYmNkZC4uYzM4 M2RmOWViNDkgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3Mvd211dGlscy1jb3JlL3RlbXBsYXRlCisrKyBi L3NyY3BrZ3Mvd211dGlscy1jb3JlL3RlbXBsYXRlCkBAIC0xLDE4ICsxLDE4IEBACiAjIFRlbXBs YXRlIGZpbGUgZm9yICd3bXV0aWxzLWNvcmUnCiBwa2duYW1lPXdtdXRpbHMtY29yZQotdmVyc2lv bj0xLjQKLXJldmlzaW9uPTIKK3ZlcnNpb249MS41CityZXZpc2lvbj0xCiB3cmtzcmM9IiR7cGtn bmFtZSMjKi19LSR7dmVyc2lvbn0iCiBidWlsZF9zdHlsZT1nbnUtbWFrZWZpbGUKIG1ha2VfdXNl X2Vudj15ZXMKLWNvbmZsaWN0cz0ibHN3IgotbWFrZWRlcGVuZHM9ImxpYnhjYi1kZXZlbCB4Y2It dXRpbC1kZXZlbCIKK21ha2VkZXBlbmRzPSJsaWJ4Y2ItZGV2ZWwgeGNiLXV0aWwtZGV2ZWwgeGNi LXV0aWwtY3Vyc29yLWRldmVsIgogc2hvcnRfZGVzYz0iU2V0IG9mIHdpbmRvdyBtYW5pcHVsYXRp b24gdG9vbHMiCiBtYWludGFpbmVyPSJPcnBoYW5lZCA8b3JwaGFuQHZvaWRsaW51eC5vcmc+Igog bGljZW5zZT0iSVNDIgogaG9tZXBhZ2U9Imh0dHBzOi8vZ2l0aHViLmNvbS93bXV0aWxzL2NvcmUi CiBkaXN0ZmlsZXM9Imh0dHBzOi8vZ2l0aHViLmNvbS8ke3BrZ25hbWUlLSp9L2NvcmUvYXJjaGl2 ZS92JHt2ZXJzaW9ufS50YXIuZ3oiCi1jaGVja3N1bT00NGUxNjU3NmI3ZjZlMWYxMjZjMmNiMjQ5 NDQ5YWI3ZTEwZmQ2NTI4OWFmZjc3NGZmYWYyN2QyYzE1YTdiMmJhCitjaGVja3N1bT03MmFmMjJl YTUyYmMzNDNiZjkwYTY2MDNhZTNlMTY5ZWQzYzE1ZjY0NjM1ZmE0MjUwN2NjNjYyYWIwNGE2Mzcy Citjb25mbGljdHM9ImxzdyIKIAogcG9zdF9leHRyYWN0KCkgewogCXNlZCAtaSAtZSAncywvbWFu LC9zaGFyZS9tYW4sJyAgXAoKRnJvbSBlZGM4NzRlMmViOWQ5YTdlODk4MzhkYTMxNTA0ZjA3ZTEx NzA5N2RmIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBBbnRob255IElsaW9wb3Vsb3Mg PGFpbGlvcEBhbHRhdHVzLmNvbT4KRGF0ZTogVHVlLCAyOSBPY3QgMjAxOSAxMzo1OToxOSArMDEw MApTdWJqZWN0OiBbUEFUQ0ggMDY2LzE4Nl0gc3VkbzogdXBkYXRlIHRvIDEuOC4yOS4KCi0tLQog c3JjcGtncy9zdWRvL3RlbXBsYXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRp b25zKCspLCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mvc3Vkby90ZW1wbGF0 ZSBiL3NyY3BrZ3Mvc3Vkby90ZW1wbGF0ZQppbmRleCA3MTE5ZWJhMzIwOC4uNWQ3OThlODQwOWUg MTAwNjQ0Ci0tLSBhL3NyY3BrZ3Mvc3Vkby90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3N1ZG8vdGVt cGxhdGUKQEAgLTEsNiArMSw2IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdzdWRvJwogcGtnbmFt ZT1zdWRvCi12ZXJzaW9uPTEuOC4yOHAxCit2ZXJzaW9uPTEuOC4yOQogcmV2aXNpb249MQogYnVp bGRfc3R5bGU9Z251LWNvbmZpZ3VyZQogY29uZmlndXJlX2FyZ3M9Ii0td2l0aC1pZ25vcmUtZG90 IC0td2l0aC1pbnN1bHRzPWRpc2FibGVkIC0td2l0aC1hbGwtaW5zdWx0cyAtLXdpdGgtZW52LWVk aXRvcgpAQCAtMTUsNyArMTUsNyBAQCBsaWNlbnNlPSJJU0MiCiBob21lcGFnZT0iaHR0cHM6Ly93 d3cuc3Vkby53cy8iCiBjaGFuZ2Vsb2c9Imh0dHBzOi8vd3d3LnN1ZG8ud3MvcmVwb3Mvc3Vkby9y YXctZmlsZS90aXAvTkVXUyIKIGRpc3RmaWxlcz0iaHR0cHM6Ly93d3cuc3Vkby53cy9kaXN0L3N1 ZG8tJHt2ZXJzaW9ufS50YXIuZ3oiCi1jaGVja3N1bT0yM2JhNWE4NGFmMzFlM2I1ZGVkNThkNGJl NmQzZjY5MzlhNDk1YTU1NTYxZmJhOTJjNjk0MWI3OWE2ZThiMDI3CitjaGVja3N1bT1jZTUzZmZh Yzk2MDRlMjMzMjEzMzRkOGJhOGFjNTlkZWQyYmNmNjI0ZmRiOWRiZGUwOTdhYjIwNDliZjI5Yzdj CiBjb25mX2ZpbGVzPSIvZXRjL3BhbS5kL3N1ZG8gL2V0Yy9zdWRvZXJzIgogbGliMzJkaXNhYmxl ZD15ZXMKIAoKRnJvbSA1YmY5YzZhMGNjNThlYTQwMDExYzEwN2Q3Nzc0NzU5MjgwNThmMGI3IE1v biBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBicmExbndhdmUgPGJyYTFud2F2ZUBwcm90b25t YWlsLmNvbT4KRGF0ZTogVHVlLCAyOSBPY3QgMjAxOSAwODoyNTowMCArMDEwMApTdWJqZWN0OiBb UEFUQ0ggMDY3LzE4Nl0gbGliaW5wdXQ6IHVwZGF0ZSB0byAxLjE0LjMuCgotLS0KIHNyY3BrZ3Mv bGliaW5wdXQvdGVtcGxhdGUgfCA2ICsrKy0tLQogMSBmaWxlIGNoYW5nZWQsIDMgaW5zZXJ0aW9u cygrKSwgMyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2xpYmlucHV0L3RlbXBs YXRlIGIvc3JjcGtncy9saWJpbnB1dC90ZW1wbGF0ZQppbmRleCBkMDc5ZmQ5NTc1ZS4uOTAyMWQz Y2E0ZDMgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvbGliaW5wdXQvdGVtcGxhdGUKKysrIGIvc3JjcGtn cy9saWJpbnB1dC90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3Ig J2xpYmlucHV0JwogcGtnbmFtZT1saWJpbnB1dAotdmVyc2lvbj0xLjE0LjIKK3ZlcnNpb249MS4x NC4zCiByZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1tZXNvbgogY29uZmlndXJlX2FyZ3M9Ii1EZGVi dWctZ3VpPWZhbHNlIC1EZG9jdW1lbnRhdGlvbj1mYWxzZSAtRHRlc3RzPWZhbHNlIgpAQCAtOCwx MSArOCwxMSBAQCBob3N0bWFrZWRlcGVuZHM9InBrZy1jb25maWciCiBtYWtlZGVwZW5kcz0ibGli ZXZkZXYtZGV2ZWwgbGlid2Fjb20tZGV2ZWwgbXRkZXYtZGV2ZWwgZXVkZXYtbGlidWRldi1kZXZl bCIKIGNoZWNrZGVwZW5kcz0idmFsZ3JpbmQgY2hlY2stZGV2ZWwiCiBzaG9ydF9kZXNjPSJQcm92 aWRlcyBoYW5kbGluZyBpbnB1dCBkZXZpY2VzIGluIFdheWxhbmQgY29tcG9zaXRvcnMgYW5kIFgi Ci1tYWludGFpbmVyPSJicmExbndhdmUgPGJyYWlud2F2ZUBvcGVubWFpbGJveC5vcmc+IgorbWFp bnRhaW5lcj0iYnJhMW53YXZlIDxicmExbndhdmVAcHJvdG9ubWFpbC5jb20+IgogbGljZW5zZT0i TUlUIgogaG9tZXBhZ2U9Imh0dHBzOi8vd3d3LmZyZWVkZXNrdG9wLm9yZy93aWtpL1NvZnR3YXJl L2xpYmlucHV0IgogZGlzdGZpbGVzPSIke0ZSRUVERVNLVE9QX1NJVEV9LyR7cGtnbmFtZX0vJHtw a2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPTZiMDk0NjY5MTQxZjI2YzRkZjBk NjIxNDdiYmQwZjc2ZGYxMDQ0MzMzZTE5ZTZmNmRjOTQxMzIxN2M1MWEyYzYKK2NoZWNrc3VtPTBm ZWIzYTA1ODk3MDljYzEwMzI4OTNiZmFmNGM0OTE1MGQ1MzYwYmQ5NzgyYmVjODg4ZjllNGRkOTA0 NGM1YjcKIAogaWYgWyAiJFhCUFNfQ0hFQ0tfUEtHUyIgXTsgdGhlbgogCWNvbmZpZ3VyZV9hcmdz Kz0iIC1EdGVzdHM9dHJ1ZSIKCkZyb20gNGQ5OWVhOGRhNWFlNjk5ZGEzM2YxMTgxODMyZDNiZTQ5 NDc3NGVjMCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogQ2FtZXJvbiBOZW1vIDxjbmVt b0B0dXRhbm90YS5jb20+CkRhdGU6IE1vbiwgMjggT2N0IDIwMTkgMTk6NDU6NTcgLTA3MDAKU3Vi amVjdDogW1BBVENIIDA2OC8xODZdIGNvbm1vbjogdXBkYXRlIHRvIDIuMC4yLgoKLS0tCiBzcmNw a2dzL2Nvbm1vbi90ZW1wbGF0ZSB8IDQgKystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9u cygrKSwgMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2Nvbm1vbi90ZW1wbGF0 ZSBiL3NyY3BrZ3MvY29ubW9uL3RlbXBsYXRlCmluZGV4IDFiODhmYjYxZTUwLi44MDExODkzODhl NSAxMDA2NDQKLS0tIGEvc3JjcGtncy9jb25tb24vdGVtcGxhdGUKKysrIGIvc3JjcGtncy9jb25t b24vdGVtcGxhdGUKQEAgLTEsNiArMSw2IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdjb25tb24n CiBwa2duYW1lPWNvbm1vbgotdmVyc2lvbj0yLjAuMQordmVyc2lvbj0yLjAuMgogcmV2aXNpb249 MQogYnVpbGRfc3R5bGU9Z251LW1ha2VmaWxlCiBob3N0bWFrZWRlcGVuZHM9InBrZy1jb25maWci CkBAIC0xMCw3ICsxMCw3IEBAIG1haW50YWluZXI9IkNhbWVyb24gTmVtbyA8Y25lbW9AdHV0YW5v dGEuY29tPiIKIGxpY2Vuc2U9IkFwYWNoZS0yLjAiCiBob21lcGFnZT0iaHR0cHM6Ly9naXRodWIu Y29tL2NvbnRhaW5lcnMvY29ubW9uIgogZGlzdGZpbGVzPSJodHRwczovL2dpdGh1Yi5jb20vY29u dGFpbmVycy9jb25tb24vYXJjaGl2ZS92JHt2ZXJzaW9ufS50YXIuZ3oiCi1jaGVja3N1bT04MDk1 MDhiZDZmNzY1OTk1MTZmNWE1YThmNTA5ZTEyNTdjMmJkYmNkYzYyM2MxMWI0OWU5OTI4N2JiYTNk MjkzCitjaGVja3N1bT1hZGRiOGJmNDE4Y2M4MTk5MWUyNTY0YTZjMjY0YjAyZDU5NmEwNjc4OTYw ZjU0Y2ZiMGUyMzNkODM3OTIyYjJhCiAKIGRvX2luc3RhbGwoKSB7CiAJdmJpbiBiaW4vY29ubW9u CgpGcm9tIDdmYmI2Yzg0MDVhYWRlODU5YWMyZGI3MWRhMDhkZDNhZWIwNGMxMzQgTW9uIFNlcCAx NyAwMDowMDowMCAyMDAxCkZyb206IENhbWVyb24gTmVtbyA8Y25lbW9AdHV0YW5vdGEuY29tPgpE YXRlOiBNb24sIDI4IE9jdCAyMDE5IDE5OjE4OjE2IC0wNzAwClN1YmplY3Q6IFtQQVRDSCAwNjkv MTg2XSBidWlsZGFoOiB1cGRhdGUgdG8gMS4xMS40LgoKLS0tCiBzcmNwa2dzL2J1aWxkYWgvdGVt cGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRp b25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9idWlsZGFoL3RlbXBsYXRlIGIvc3JjcGtncy9i dWlsZGFoL3RlbXBsYXRlCmluZGV4IDIxNDVkNDEwMjNkLi41ZWIxYTIyZDg5ZSAxMDA2NDQKLS0t IGEvc3JjcGtncy9idWlsZGFoL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvYnVpbGRhaC90ZW1wbGF0 ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2J1aWxkYWgnCiBwa2duYW1l PWJ1aWxkYWgKLXZlcnNpb249MS4xMS4zCit2ZXJzaW9uPTEuMTEuNAogcmV2aXNpb249MQogYnVp bGRfc3R5bGU9Z28KIGdvX2ltcG9ydF9wYXRoPWdpdGh1Yi5jb20vY29udGFpbmVycy9idWlsZGFo CkBAIC0xNSw3ICsxNSw3IEBAIG1haW50YWluZXI9IkNhbWVyb24gTmVtbyA8Y25lbW9AdHV0YW5v dGEuY29tPiIKIGxpY2Vuc2U9IkFwYWNoZS0yLjAiCiBob21lcGFnZT0iaHR0cHM6Ly9naXRodWIu Y29tL2NvbnRhaW5lcnMvYnVpbGRhaCIKIGRpc3RmaWxlcz0iJHtob21lcGFnZX0vYXJjaGl2ZS92 JHt2ZXJzaW9ufS50YXIuZ3oiCi1jaGVja3N1bT1hM2RmM2Y4N2FhMDZlMzIyZjhmYjVmNjEzMzdj ZmZhMmM1N2FkNGZjYTZiNDllZDk0MzFiMzI3NWI1MjEzMWE1CitjaGVja3N1bT01MzcwMDM5N2Fl Mzk4OTcwNmFjMWM0MmQ3OTM0MjliY2IwNjNiNTQ0MzU2YWQ0NzY4YzliYmJhZGU5ZDJjZmNhCiAK IHBvc3RfYnVpbGQoKSB7CiAJbWFrZSAtQyBkb2NzIEdPTUQyTUFOPWdvLW1kMm1hbgoKRnJvbSAw ODU1MThjZjBiNmUwNGFhOWE1MTgzMTU5NWI1MGM0MDg4MjI5NDhlIE1vbiBTZXAgMTcgMDA6MDA6 MDAgMjAwMQpGcm9tOiBOYXRoYW4gT3dlbnMgPG5kb3dlbnMwNEBnbWFpbC5jb20+CkRhdGU6IFR1 ZSwgMjkgT2N0IDIwMTkgMDE6NDE6MjQgKzAwMDAKU3ViamVjdDogW1BBVENIIDA3MC8xODZdIGZp bGU6IGFkZCBwYXRjaCBmb3IgQ1ZFLTIwMTktMTgyMTgKCkNWRTogaHR0cHM6Ly9udmQubmlzdC5n b3YvdnVsbi9kZXRhaWwvQ1ZFLTIwMTktMTgyMTgKUGF0Y2g6IGh0dHBzOi8vZ2l0aHViLmNvbS9m aWxlL2ZpbGUvY29tbWl0LzQ2YTg0NDNmNzZjZWM0YjQxZWM3MzZlY2EzOTY5ODRjNzQ2NjRmODQK LS0tCiAuLi4tb2YtZWxlbWVudHMtaW4tYS12ZWN0b3ItZm91bmQtYnktb3MucGF0Y2ggfCA1OSAr KysrKysrKysrKysrKysrKysrCiBzcmNwa2dzL2ZpbGUvdGVtcGxhdGUgICAgICAgICAgICAgICAg ICAgICAgICAgfCAgMiArLQogMiBmaWxlcyBjaGFuZ2VkLCA2MCBpbnNlcnRpb25zKCspLCAxIGRl bGV0aW9uKC0pCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy9maWxlL3BhdGNoZXMvMDAwMS1M aW1pdC10aGUtbnVtYmVyLW9mLWVsZW1lbnRzLWluLWEtdmVjdG9yLWZvdW5kLWJ5LW9zLnBhdGNo CgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9maWxlL3BhdGNoZXMvMDAwMS1MaW1pdC10aGUtbnVtYmVy LW9mLWVsZW1lbnRzLWluLWEtdmVjdG9yLWZvdW5kLWJ5LW9zLnBhdGNoIGIvc3JjcGtncy9maWxl L3BhdGNoZXMvMDAwMS1MaW1pdC10aGUtbnVtYmVyLW9mLWVsZW1lbnRzLWluLWEtdmVjdG9yLWZv dW5kLWJ5LW9zLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwLi4w NTA3Zjc1ZjgxZgotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvZmlsZS9wYXRjaGVzLzAwMDEt TGltaXQtdGhlLW51bWJlci1vZi1lbGVtZW50cy1pbi1hLXZlY3Rvci1mb3VuZC1ieS1vcy5wYXRj aApAQCAtMCwwICsxLDU5IEBACitGcm9tIGJhMjhjN2Y0NWJjMWZkOGNmODgyYWQyMWNlNjE5NjU1 YzI3MzZkN2IgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCitGcm9tOiBDaHJpc3RvcyBab3VsYXMg PGNocmlzdG9zQHpvdWxhcy5jb20+CitEYXRlOiBNb24sIDI2IEF1ZyAyMDE5IDE0OjMxOjM5ICsw MDAwCitTdWJqZWN0OiBbUEFUQ0hdIExpbWl0IHRoZSBudW1iZXIgb2YgZWxlbWVudHMgaW4gYSB2 ZWN0b3IgKGZvdW5kIGJ5IG9zcy1mdXp6KQorCistLS0KKyBzcmMvY2RmLmMgfCA5ICsrKystLS0t LQorIHNyYy9jZGYuaCB8IDEgKworIDIgZmlsZXMgY2hhbmdlZCwgNSBpbnNlcnRpb25zKCspLCA1 IGRlbGV0aW9ucygtKQorCitkaWZmIC0tZ2l0IGEvc3JjL2NkZi5jIGIvc3JjL2NkZi5jCitpbmRl eCA1NTZhM2ZmOC4uZTQ4MzVmZWYgMTAwNjQ0CistLS0gc3JjL2NkZi5jCisrKysgc3JjL2NkZi5j CitAQCAtMzUsNyArMzUsNyBAQAorICNpbmNsdWRlICJmaWxlLmgiCisgCisgI2lmbmRlZiBsaW50 CistRklMRV9SQ1NJRCgiQCgjKSRGaWxlOiBjZGYuYyx2IDEuMTE0IDIwMTkvMDIvMjAgMDI6MzU6 MjcgY2hyaXN0b3MgRXhwICQiKQorK0ZJTEVfUkNTSUQoIkAoIykkRmlsZTogY2RmLmMsdiAxLjEx NiAyMDE5LzA4LzI2IDE0OjMxOjM5IGNocmlzdG9zIEV4cCAkIikKKyAjZW5kaWYKKyAKKyAjaW5j bHVkZSA8YXNzZXJ0Lmg+CitAQCAtMTAxMyw4ICsxMDEzLDkgQEAgY2RmX3JlYWRfcHJvcGVydHlf aW5mbyhjb25zdCBjZGZfc3RyZWFtX3QgKnNzdCwgY29uc3QgY2RmX2hlYWRlcl90ICpoLAorIAkJ CQlnb3RvIG91dDsKKyAJCQl9CisgCQkJbmVsZW1lbnRzID0gQ0RGX0dFVFVJTlQzMihxLCAxKTsK Ky0JCQlpZiAobmVsZW1lbnRzID09IDApIHsKKy0JCQkJRFBSSU5URigoIkNERl9WRUNUT1Igd2l0 aCBuZWxlbWVudHMgPT0gMFxuIikpOworKwkJCWlmIChuZWxlbWVudHMgPiBDREZfRUxFTUVOVF9M SU1JVCB8fCBuZWxlbWVudHMgPT0gMCkgeworKwkJCQlEUFJJTlRGKCgiQ0RGX1ZFQ1RPUiB3aXRo IG5lbGVtZW50cyA9PSAlIgorKwkJCQkgICAgU0laRV9UX0ZPUk1BVCAidVxuIiwgbmVsZW1lbnRz KSk7CisgCQkJCWdvdG8gb3V0OworIAkJCX0KKyAJCQlzbGVuID0gMjsKK0BAIC0xMDU2LDggKzEw NTcsNiBAQCBjZGZfcmVhZF9wcm9wZXJ0eV9pbmZvKGNvbnN0IGNkZl9zdHJlYW1fdCAqc3N0LCBj b25zdCBjZGZfaGVhZGVyX3QgKmgsCisgCQkJCQlnb3RvIG91dDsKKyAJCQkJaW5wICs9IG5lbGVt OworIAkJCX0KKy0JCQlEUFJJTlRGKCgibmVsZW1lbnRzID0gJSIgU0laRV9UX0ZPUk1BVCAidVxu IiwKKy0JCQkgICAgbmVsZW1lbnRzKSk7CisgCQkJZm9yIChqID0gMDsgaiA8IG5lbGVtZW50cyAm JiBpIDwgc2guc2hfcHJvcGVydGllczsKKyAJCQkgICAgaisrLCBpKyspCisgCQkJeworZGlmZiAt LWdpdCBhL3NyYy9jZGYuaCBiL3NyYy9jZGYuaAoraW5kZXggMmY3ZTU1NGIuLjA1MDU2NjY4IDEw MDY0NAorLS0tIHNyYy9jZGYuaAorKysrIHNyYy9jZGYuaAorQEAgLTQ4LDYgKzQ4LDcgQEAKKyB0 eXBlZGVmIGludDMyX3QgY2RmX3NlY2lkX3Q7CisgCisgI2RlZmluZSBDREZfTE9PUF9MSU1JVAkJ CQkJMTAwMDAKKysjZGVmaW5lIENERl9FTEVNRU5UX0xJTUlUCQkJCTEwMDAwMAorIAorICNkZWZp bmUgQ0RGX1NFQ0lEX05VTEwJCQkJCTAKKyAjZGVmaW5lIENERl9TRUNJRF9GUkVFCQkJCQktMQor LS0gCisyLjIzLjAKKwpkaWZmIC0tZ2l0IGEvc3JjcGtncy9maWxlL3RlbXBsYXRlIGIvc3JjcGtn cy9maWxlL3RlbXBsYXRlCmluZGV4IGYxMmIwMjMzZTE2Li4wM2FhYTUwMWNmYiAxMDA2NDQKLS0t IGEvc3JjcGtncy9maWxlL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZmlsZS90ZW1wbGF0ZQpAQCAt MSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2ZpbGUnCiBwa2duYW1lPWZpbGUKIHZl cnNpb249NS4zNwotcmV2aXNpb249MQorcmV2aXNpb249MgogYm9vdHN0cmFwPXllcwogYnVpbGRf c3R5bGU9Z251LWNvbmZpZ3VyZQogY29uZmlndXJlX2FyZ3M9Ii0tZW5hYmxlLXN0YXRpYyIKCkZy b20gMmYxNGFiOGVmNTg2NzY4ZWRkNjViYjFiMGQ0Y2M1YWE0OThhNzcwNyBNb24gU2VwIDE3IDAw OjAwOjAwIDIwMDEKRnJvbTogTmF0aGFuIE93ZW5zIDxuZG93ZW5zMDRAZ21haWwuY29tPgpEYXRl OiBUdWUsIDI5IE9jdCAyMDE5IDAwOjUyOjQ3ICswMDAwClN1YmplY3Q6IFtQQVRDSCAwNzEvMTg2 XSB1bm9jb252OiBhZGQgQ1ZFLTIwMTktMTc0MDAgcGF0Y2gKCi0tLQogLi4ucGRhdGVEb2NNb2Rl LWJlaGF2aW9yLWFuZC1hZGQtbmV3LW9wLnBhdGNoIHwgMTE3ICsrKysrKysrKysrKysrKysrKwog c3JjcGtncy91bm9jb252L3RlbXBsYXRlICAgICAgICAgICAgICAgICAgICAgIHwgICA0ICstCiAy IGZpbGVzIGNoYW5nZWQsIDExOSBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQogY3JlYXRl IG1vZGUgMTAwNjQ0IHNyY3BrZ3MvdW5vY29udi9wYXRjaGVzLzAwMDEtY2hhbmdlLWRlZmF1bHQt dXBkYXRlRG9jTW9kZS1iZWhhdmlvci1hbmQtYWRkLW5ldy1vcC5wYXRjaAoKZGlmZiAtLWdpdCBh L3NyY3BrZ3MvdW5vY29udi9wYXRjaGVzLzAwMDEtY2hhbmdlLWRlZmF1bHQtdXBkYXRlRG9jTW9k ZS1iZWhhdmlvci1hbmQtYWRkLW5ldy1vcC5wYXRjaCBiL3NyY3BrZ3MvdW5vY29udi9wYXRjaGVz LzAwMDEtY2hhbmdlLWRlZmF1bHQtdXBkYXRlRG9jTW9kZS1iZWhhdmlvci1hbmQtYWRkLW5ldy1v cC5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMC4uZDEwY2JhN2I5 NmYKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL3Vub2NvbnYvcGF0Y2hlcy8wMDAxLWNoYW5n ZS1kZWZhdWx0LXVwZGF0ZURvY01vZGUtYmVoYXZpb3ItYW5kLWFkZC1uZXctb3AucGF0Y2gKQEAg LTAsMCArMSwxMTcgQEAKK0Zyb20gMzM1MWM1ZTVlZWY4ODY5MGVkODYwYmZlZTk5ZDkwNTIwMjUx OGEyMiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKK0Zyb206IFNhbXVlbCBFcmIgPHNhbXJlcmJA ZXJiYnlzYW0uY29tPgorRGF0ZTogVHVlLCAxNyBTZXAgMjAxOSAxMjoyMjoxMiAtMDQwMAorU3Vi amVjdDogW1BBVENIXSBjaGFuZ2UgZGVmYXVsdCB1cGRhdGVEb2NNb2RlIGJlaGF2aW9yIGFuZCBh ZGQgbmV3IG9wdGlvbiB0bworIGtlZXAgb2xkIGJlaGF2aW9yICgjNTEwKQorCistLS0KKyB1bm9j b252IHwgNTEgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0t LS0tCisgMSBmaWxlIGNoYW5nZWQsIDMwIGluc2VydGlvbnMoKyksIDIxIGRlbGV0aW9ucygtKQor CitkaWZmIC0tZ2l0IGEvdW5vY29udiBiL3Vub2NvbnYKK2luZGV4IGY4NDRkMGYuLjc2MmRjODUg MTAwNzU1CistLS0gdW5vY29udgorKysrIHVub2NvbnYKK0BAIC01NDMsNiArNTQzLDggQEAgY2xh c3MgT3B0aW9uczoKKyAgICAgICAgIHNlbGYudGVtcGxhdGUgPSBOb25lCisgICAgICAgICBzZWxm LnRpbWVvdXQgPSA2CisgICAgICAgICBzZWxmLnZlcmJvc2UgPSAwCisrICAgICAgICBzZWxmLnVz ZXJQcm9maWxlID0gTm9uZQorKyAgICAgICAgc2VsZi51cGRhdGVEb2NNb2RlID0gTk9fVVBEQVRF CisgCisgICAgICAgICBzZWxmLnNldHByaW50ZXIgPSBGYWxzZQorICAgICAgICAgc2VsZi5wYXBl cmZvcm1hdCA9IE5vbmUKK0BAIC01NTUsOCArNTU3LDggQEAgY2xhc3MgT3B0aW9uczoKKyAgICAg ICAgICAgICAgICAgWydjb25uZWN0aW9uPScsICdkZWJ1ZycsICdkb2N0eXBlPScsICdleHBvcnQ9 JywgJ2ZpZWxkPScsICdmb3JtYXQ9JywKKyAgICAgICAgICAgICAgICAgICdoZWxwJywgJ2ltcG9y dD0nLCAnaW1wb3J0LWZpbHRlci1uYW1lPScsICdsaXN0ZW5lcicsICdtZXRhPScsICduby1sYXVu Y2gnLAorICAgICAgICAgICAgICAgICAgJ291dHB1dD0nLCAnb3V0cHV0cGF0aCcsICdwYXNzd29y ZD0nLCAncGlwZT0nLCAncG9ydD0nLCAncHJlc2VydmUnLAorLSAgICAgICAgICAgICAgICAgJ3Nl cnZlcj0nLCAndGltZW91dD0nLCAnc2hvdycsICdzdGRpbicsICdzdGRvdXQnLCAndGVtcGxhdGUn LCAncHJpbnRlcj0nLAorLSAgICAgICAgICAgICAgICAgJ3ZlcmJvc2UnLCAndmVyc2lvbiddICkK KysgICAgICAgICAgICAgICAgICdzZXJ2ZXI9JywgJ3RpbWVvdXQ9JywgJ3VzZXItcHJvZmlsZT0n LCAnc2hvdycsICdzdGRpbicsCisrICAgICAgICAgICAgICAgICAnc3Rkb3V0JywgJ3RlbXBsYXRl JywgJ3ByaW50ZXI9JywgJ3Vuc2FmZS1xdWlldC11cGRhdGUnLCAndmVyYm9zZScsICd2ZXJzaW9u J10gKQorICAgICAgICAgZXhjZXB0IGdldG9wdC5lcnJvciBhcyBleGM6CisgICAgICAgICAgICAg cHJpbnQoJ3Vub2NvbnY6ICVzLCB0cnkgdW5vY29udiAtaCBmb3IgYSBsaXN0IG9mIGFsbCB0aGUg b3B0aW9ucycgJSBzdHIoZXhjKSkKKyAgICAgICAgICAgICBzeXMuZXhpdCgyNTUpCitAQCAtNjQ2 LDYgKzY0OCwxMCBAQCBjbGFzcyBPcHRpb25zOgorICAgICAgICAgICAgICAgICBzZWxmLnRlbXBs YXRlID0gYXJnCisgICAgICAgICAgICAgZWxpZiBvcHQgaW4gWyctVCcsICctLXRpbWVvdXQnXToK KyAgICAgICAgICAgICAgICAgc2VsZi50aW1lb3V0ID0gaW50KGFyZykKKysgICAgICAgICAgICBl bGlmIG9wdCBpbiBbJy0tdW5zYWZlLXF1aWV0LXVwZGF0ZSddOgorKyAgICAgICAgICAgICAgICAj IHJlZiBodHRwczovL3d3dy5vcGVub2ZmaWNlLm9yZy9hcGkvZG9jcy9jb21tb24vcmVmL2NvbS9z dW4vc3Rhci9kb2N1bWVudC9VcGRhdGVEb2NNb2RlLmh0bWwKKysgICAgICAgICAgICAgICAgcHJp bnQoJ1dhcm5pbmc6IERvIG5vdCB1c2UgdGhlIG9wdGlvbiAtLXVuc2FmZS1xdWlldC11cGRhdGUg d2l0aCB1bnRydXN0ZWQgaW5wdXQuJykKKysgICAgICAgICAgICAgICAgc2VsZi51cGRhdGVEb2NN b2RlID0gUVVJRVRfVVBEQVRFCisgICAgICAgICAgICAgZWxpZiBvcHQgaW4gWyctdicsICctLXZl cmJvc2UnXToKKyAgICAgICAgICAgICAgICAgc2VsZi52ZXJib3NlID0gc2VsZi52ZXJib3NlICsg MQorICAgICAgICAgICAgIGVsaWYgb3B0IGluIFsnLVYnLCAnLS12ZXJzaW9uJ106CitAQCAtNzYw LDYgKzc2Niw3IEBAIHVub2NvbnYgb3B0aW9uczoKKyAgICAgICAtLXN0ZG91dCAgICAgICAgICAg ICAgICAgICAgICAgIHdyaXRlIG91dHB1dCB0byBzdGRvdXQKKyAgIC10LCAtLXRlbXBsYXRlPWZp bGUgICAgICAgICAgICAgICAgIGltcG9ydCB0aGUgc3R5bGVzIGZyb20gdGVtcGxhdGUgKC5vdHQp CisgICAtVCwgLS10aW1lb3V0PXNlY3MgICAgICAgICAgICAgICAgICB0aW1lb3V0IGFmdGVyIHNl Y3MgaWYgY29ubmVjdGlvbiB0byBsaXN0ZW5lciBmYWlscworKyAgICAgIC0tdW5zYWZlLXF1aWV0 LXVwZGF0ZSAgICAgICAgICAgYWxsb3cgcmVuZGVyZWQgZG9jdW1lbnQgdG8gZmV0Y2ggZXh0ZXJu YWwgcmVzb3VyY2VzIChXYXJuaW5nOiB0aGlzIGlzIHVuc2FmZSB3aXRoIHVudHJ1c3RlZCBpbnB1 dCkKKyAgIC12LCAtLXZlcmJvc2UgICAgICAgICAgICAgICAgICAgICAgIGJlIG1vcmUgYW5kIG1v cmUgdmVyYm9zZSAoLXZ2diBmb3IgZGVidWdnaW5nKQorICAgICAgIC0tdmVyc2lvbiAgICAgICAg ICAgICAgICAgICAgICAgZGlzcGxheSB2ZXJzaW9uIG51bWJlciBvZiB1bm9jb252LCBPT28vTE8g YW5kIHBsYXRmb3JtIGRldGFpbHMKKyAgIC1QLCAtLXByaW50ZXIgICAgICAgICAgICAgICAgICAg ICAgIHByaW50ZXIgb3B0aW9ucworQEAgLTkzMCw3ICs5MzcsNyBAQCBjbGFzcyBDb252ZXJ0b3I6 CisgICAgICAgICAgICAgcGhhc2UgPSAiaW1wb3J0IgorIAorICAgICAgICAgICAgICMjIyBMb2Fk IGlucHV0ZmlsZQorLSAgICAgICAgICAgIGlucHV0cHJvcHMgPSBVbm9Qcm9wcyhIaWRkZW49VHJ1 ZSwgUmVhZE9ubHk9VHJ1ZSwgVXBkYXRlRG9jTW9kZT1RVUlFVF9VUERBVEUpCisrICAgICAgICAg ICAgaW5wdXRwcm9wcyA9IFVub1Byb3BzKEhpZGRlbj1UcnVlLCBSZWFkT25seT1UcnVlLCBVcGRh dGVEb2NNb2RlPW9wLnVwZGF0ZURvY01vZGUpCisgCisgICAgICAgICAgICAgaWYgb3AucGFzc3dv cmQ6CisgICAgICAgICAgICAgICAgIGlucHV0cHJvcHMgKz0gVW5vUHJvcHMoUGFzc3dvcmQ9b3Au cGFzc3dvcmQpCitAQCAtOTgzLDIzICs5OTAsMjUgQEAgY2xhc3MgQ29udmVydG9yOgorICMgICAg ICAgICAgICBleGNlcHQgQXR0cmlidXRlRXJyb3I6CisgIyAgICAgICAgICAgICAgICBwYXNzCisg CistICAgICAgICAgICAgIyMjIFVwZGF0ZSBkb2N1bWVudCBsaW5rcworLSAgICAgICAgICAgIHBo YXNlID0gInVwZGF0ZS1saW5rcyIKKy0gICAgICAgICAgICB0cnk6CistICAgICAgICAgICAgICAg IGRvY3VtZW50LnVwZGF0ZUxpbmtzKCkKKy0gICAgICAgICAgICAgICAgIyBGb3VuZCB0aGF0IHdo ZW4gY29udmVydGluZyBIVE1MIGZpbGVzIHdpdGggZXh0ZXJuYWwgaW1hZ2VzLCBPTyB3b3VsZCBv bmx5IGxvYWQgZml2ZSBvciBzaXggb2YKKy0gICAgICAgICAgICAgICAgIyB0aGUgaW1hZ2VzIGlu IHRoZSBmaWxlLiBJbiB0aGUgcmVzdWx0aW5nIGRvY3VtZW50LCB0aGUgcmVzdCBvZiB0aGUgaW1h Z2VzIGRpZCBub3QgYXBwZWFyLiBDeWNsaW5nCistICAgICAgICAgICAgICAgICMgdGhyb3VnaCBh bGwgdGhlIGltYWdlIHJlZmVyZW5jZXMgaW4gdGhlIGRvY3VtZW50IHNlZW1zIHRvIGZvcmNlIE9P IHRvIGFjdHVhbGx5IGxvYWQgdGhlbS4gRm91bmQKKy0gICAgICAgICAgICAgICAgIyBzb21lIGhl bHBmdWwgZ3VpZGFuY2UgaW4gdGhpcyB0aHJlYWQ6CistICAgICAgICAgICAgICAgICMgaHR0cHM6 Ly9mb3J1bS5vcGVub2ZmaWNlLm9yZy9lbi9mb3J1bS92aWV3dG9waWMucGhwP2Y9MzAmdD0yMzkw OQorLSAgICAgICAgICAgICAgICAjIElkZWFsbHkgd2Ugd291bGQgbGlrZSB0byBoYXZlIHRoZSBv cHRpb24gdG8gZW1iZWQgdGhlIGltYWdlcyBpbnRvIHRoZSBkb2N1bWVudCwgYnV0IEkgaGF2ZSBu b3QgYmVlbgorLSAgICAgICAgICAgICAgICAjIGFibGUgdG8gZmlndXJlIG91dCBob3cgdG8gZG8g dGhpcyB5ZXQuCistICAgICAgICAgICAgICAgIGdyYXBoT2JqcyA9IGRvY3VtZW50LkdyYXBoaWNP YmplY3RzCistICAgICAgICAgICAgICAgIGZvciBpIGluIHJhbmdlKDAsIGdyYXBoT2Jqcy5nZXRD b3VudCgpKToKKy0gICAgICAgICAgICAgICAgICAgIGdyYXBoT2JqID0gZ3JhcGhPYmpzLmdldEJ5 SW5kZXgoaSkKKy0gICAgICAgICAgICBleGNlcHQgQXR0cmlidXRlRXJyb3I6CistICAgICAgICAg ICAgICAgICMgdGhlIGRvY3VtZW50IGRvZXNuJ3QgaW1wbGVtZW50IHRoZSBYTGlua1VwZGF0ZSBp bnRlcmZhY2UKKy0gICAgICAgICAgICAgICAgcGFzcworKyAgICAgICAgICAgICMjIyBVcGRhdGUg ZG9jdW1lbnQgbGlua3MgaWYgYXBwcm9wcmlhdGUKKysgICAgICAgICAgICBpZiBvcC51cGRhdGVE b2NNb2RlICE9IE5PX1VQREFURToKKysgICAgICAgICAgICAgICAgcGhhc2UgPSAidXBkYXRlLWxp bmtzIgorKyAgICAgICAgICAgICAgICB0cnk6CisrICAgICAgICAgICAgICAgICAgICBkb2N1bWVu dC51cGRhdGVMaW5rcygpCisrICAgICAgICAgICAgICAgICAgICAjIEZvdW5kIHRoYXQgd2hlbiBj b252ZXJ0aW5nIEhUTUwgZmlsZXMgd2l0aCBleHRlcm5hbCBpbWFnZXMsIE9PIHdvdWxkIG9ubHkg bG9hZCBmaXZlIG9yIHNpeCBvZgorKyAgICAgICAgICAgICAgICAgICAgIyB0aGUgaW1hZ2VzIGlu IHRoZSBmaWxlLiBJbiB0aGUgcmVzdWx0aW5nIGRvY3VtZW50LCB0aGUgcmVzdCBvZiB0aGUgaW1h Z2VzIGRpZCBub3QgYXBwZWFyLiBDeWNsaW5nCisrICAgICAgICAgICAgICAgICAgICAjIHRocm91 Z2ggYWxsIHRoZSBpbWFnZSByZWZlcmVuY2VzIGluIHRoZSBkb2N1bWVudCBzZWVtcyB0byBmb3Jj ZSBPTyB0byBhY3R1YWxseSBsb2FkIHRoZW0uIEZvdW5kCisrICAgICAgICAgICAgICAgICAgICAj IHNvbWUgaGVscGZ1bCBndWlkYW5jZSBpbiB0aGlzIHRocmVhZDoKKysgICAgICAgICAgICAgICAg ICAgICMgaHR0cHM6Ly9mb3J1bS5vcGVub2ZmaWNlLm9yZy9lbi9mb3J1bS92aWV3dG9waWMucGhw P2Y9MzAmdD0yMzkwOQorKyAgICAgICAgICAgICAgICAgICAgIyBJZGVhbGx5IHdlIHdvdWxkIGxp a2UgdG8gaGF2ZSB0aGUgb3B0aW9uIHRvIGVtYmVkIHRoZSBpbWFnZXMgaW50byB0aGUgZG9jdW1l bnQsIGJ1dCBJIGhhdmUgbm90IGJlZW4KKysgICAgICAgICAgICAgICAgICAgICMgYWJsZSB0byBm aWd1cmUgb3V0IGhvdyB0byBkbyB0aGlzIHlldC4KKysgICAgICAgICAgICAgICAgICAgIGlmIG9w LnVwZGF0ZWh0bWxsaW5rczoKKysgICAgICAgICAgICAgICAgICAgICAgICBncmFwaE9ianMgPSBk b2N1bWVudC5HcmFwaGljT2JqZWN0cworKyAgICAgICAgICAgICAgICAgICAgICAgIGZvciBpIGlu IHJhbmdlKDAsIGdyYXBoT2Jqcy5nZXRDb3VudCgpKToKKysgICAgICAgICAgICAgICAgICAgICAg ICAgICAgZ3JhcGhPYmogPSBncmFwaE9ianMuZ2V0QnlJbmRleChpKQorKyAgICAgICAgICAgICAg ICBleGNlcHQgQXR0cmlidXRlRXJyb3I6CisrICAgICAgICAgICAgICAgICAgICAjIHRoZSBkb2N1 bWVudCBkb2Vzbid0IGltcGxlbWVudCB0aGUgWExpbmtVcGRhdGUgaW50ZXJmYWNlCisrICAgICAg ICAgICAgICAgICAgICBwYXNzCisgCisgICAgICAgICAgICAgIyMjIEFkZC9SZXBsYWNlIHZhcmlh YmxlcworICAgICAgICAgICAgIHBoYXNlID0gInJlcGxhY2UtZmllbGRzIgorQEAgLTEzNDcsNyAr MTM1Niw3IEBAIGlmIF9fbmFtZV9fID09ICdfX21haW5fXyc6CisgICAgICMjIyBOb3cgdGhhdCB3 ZSBoYXZlIGZvdW5kIGEgd29ya2luZyBweXVubyBsaWJyYXJ5LCBsZXQncyBpbXBvcnQgc29tZSBj bGFzc2VzCisgICAgIGZyb20gY29tLnN1bi5zdGFyLmJlYW5zIGltcG9ydCBQcm9wZXJ0eVZhbHVl CisgICAgIGZyb20gY29tLnN1bi5zdGFyLmNvbm5lY3Rpb24gaW1wb3J0IE5vQ29ubmVjdEV4Y2Vw dGlvbgorLSAgICBmcm9tIGNvbS5zdW4uc3Rhci5kb2N1bWVudC5VcGRhdGVEb2NNb2RlIGltcG9y dCBRVUlFVF9VUERBVEUKKysgICAgZnJvbSBjb20uc3VuLnN0YXIuZG9jdW1lbnQuVXBkYXRlRG9j TW9kZSBpbXBvcnQgTk9fVVBEQVRFLCBRVUlFVF9VUERBVEUKKyAgICAgZnJvbSBjb20uc3VuLnN0 YXIubGFuZyBpbXBvcnQgRGlzcG9zZWRFeGNlcHRpb24sIElsbGVnYWxBcmd1bWVudEV4Y2VwdGlv bgorICAgICBmcm9tIGNvbS5zdW4uc3Rhci5pbyBpbXBvcnQgSU9FeGNlcHRpb24sIFhPdXRwdXRT dHJlYW0KKyAgICAgZnJvbSBjb20uc3VuLnN0YXIuc2NyaXB0IGltcG9ydCBDYW5ub3RDb252ZXJ0 RXhjZXB0aW9uCistLSAKKzIuMjMuMAorCmRpZmYgLS1naXQgYS9zcmNwa2dzL3Vub2NvbnYvdGVt cGxhdGUgYi9zcmNwa2dzL3Vub2NvbnYvdGVtcGxhdGUKaW5kZXggYjFiYzA4YzQyNzUuLjdmNGRj YjQ4NTNhIDEwMDY0NAotLS0gYS9zcmNwa2dzL3Vub2NvbnYvdGVtcGxhdGUKKysrIGIvc3JjcGtn cy91bm9jb252L3RlbXBsYXRlCkBAIC0xLDE0ICsxLDE0IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9y ICd1bm9jb252JwogcGtnbmFtZT11bm9jb252CiB2ZXJzaW9uPTAuOC4yCi1yZXZpc2lvbj0xCity ZXZpc2lvbj0yCiBhcmNocz1ub2FyY2gKIGJ1aWxkX3N0eWxlPWdudS1tYWtlZmlsZQogaG9zdG1h a2VkZXBlbmRzPSJhc2NpaWRvYyBnaXQiCiBkZXBlbmRzPSJweXRob24iCiBzaG9ydF9kZXNjPSJD b252ZXJ0IGJldHdlZW4gZG9jdW1lbnQgZm9ybWF0cyBzdXBwb3J0ZWQgYnkgTGlicmVPZmZpY2Uv T3Blbk9mZmljZSIKIG1haW50YWluZXI9IkFudG9uaW8gTWFsY29sbSA8YW50b25pb0BhbnRvbmlv bWFsY29sbS5jb20+IgotbGljZW5zZT0iR1BMLTIiCitsaWNlbnNlPSJHUEwtMi4wLW9ubHkiCiBo b21lcGFnZT0iaHR0cHM6Ly9naXRodWIuY29tL2RhZ3dpZWVycy91bm9jb252IgogZGlzdGZpbGVz PSIke2hvbWVwYWdlfS9hcmNoaXZlLyR7dmVyc2lvbn0udGFyLmd6PiR7cGtnbmFtZX0tJHt2ZXJz aW9ufS50YXIuZ3oiCiBjaGVja3N1bT01MzgxYzAzMzhkNTBlOWIwNWNkMzBmODcyNGI3OTZlM2Jm NDI2ZTlkZGUzZDUxMTY5YjM1MTFkZTIyZGUxNGE2CgpGcm9tIDFhNzFhNGIyMDVhNzMyODJkMTNm N2YxMGYxZjE3YzA5ZmM3MzAwNDggTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206ID0/VVRG LTg/cT9EYW5pZWw9MjBFeT1DMz05RmVyPz0gPGRhbmllbC5leXNzZXJAZ21haWwuY29tPgpEYXRl OiBUdWUsIDI5IE9jdCAyMDE5IDAwOjUwOjUxICswMTAwClN1YmplY3Q6IFtQQVRDSCAwNzIvMTg2 XSB5b3V0dWJlLWRsOiB1cGRhdGUgdG8gMjAxOS4xMC4yOS4KCi0tLQogc3JjcGtncy95b3V0dWJl LWRsL3RlbXBsYXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAy IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MveW91dHViZS1kbC90ZW1wbGF0ZSBi L3NyY3BrZ3MveW91dHViZS1kbC90ZW1wbGF0ZQppbmRleCA0MGI3NjgxYzg1Yy4uOTMzZmQ0YTU3 ZDYgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MveW91dHViZS1kbC90ZW1wbGF0ZQorKysgYi9zcmNwa2dz L3lvdXR1YmUtZGwvdGVtcGxhdGUKQEAgLTEsNiArMSw2IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9y ICd5b3V0dWJlLWRsJwogcGtnbmFtZT15b3V0dWJlLWRsCi12ZXJzaW9uPTIwMTkuMTAuMjIKK3Zl cnNpb249MjAxOS4xMC4yOQogcmV2aXNpb249MQogYXJjaHM9bm9hcmNoCiB3cmtzcmM9eW91dHVi ZS1kbApAQCAtMTQsNyArMTQsNyBAQCBsaWNlbnNlPSJVbmxpY2Vuc2UiCiBob21lcGFnZT0iaHR0 cHM6Ly95dGRsLW9yZy5naXRodWIuaW8veW91dHViZS1kbC8iCiBjaGFuZ2Vsb2c9Imh0dHBzOi8v cmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbS95dGRsLW9yZy95b3V0dWJlLWRsL21hc3Rlci9DaGFu Z2VMb2ciCiBkaXN0ZmlsZXM9Imh0dHBzOi8veXQtZGwub3JnL2Rvd25sb2Fkcy8ke3ZlcnNpb259 L3lvdXR1YmUtZGwtJHt2ZXJzaW9ufS50YXIuZ3oiCi1jaGVja3N1bT04YjY3ODEyOWZlMjIxY2Rh NzBhYzRhNGNjZDEzMzcyYjY1ZTliNGZhYTdjMTJjYmJlNGNhMDFlYzJmMzc4ZjFiCitjaGVja3N1 bT1lNGVlYTNmZjVhYWQ5ODA0ZjhkNzZiMGJlMDJhZDE2YTZiNTMwZDE2YTQ3YjIyNzQxOGU4ODBi ZTI0ZjMwNmQzCiAKIHBvc3RfaW5zdGFsbCgpIHsKIAlybSAtcmYgJHtERVNURElSfS91c3IvZXRj CgpGcm9tIDU3NmFhZDg4NjVlYjg1MTUwY2JmMjQ2NzE3MmI5NDZlZGNmNzYyNWQgTW9uIFNlcCAx NyAwMDowMDowMCAyMDAxCkZyb206IFJlbmF0byBBZ3VpYXIgPHJlbmF0b0ByZW5hZy5tZT4KRGF0 ZTogTW9uLCAyOCBPY3QgMjAxOSAxMzozNToxMyAtMDcwMApTdWJqZWN0OiBbUEFUQ0ggMDczLzE4 Nl0gYm9yZ21hdGljOiB1cGRhdGUgdG8gMS40LjAKCi0tLQogc3JjcGtncy9ib3JnbWF0aWMvdGVt cGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRp b25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9ib3JnbWF0aWMvdGVtcGxhdGUgYi9zcmNwa2dz L2JvcmdtYXRpYy90ZW1wbGF0ZQppbmRleCBmZGVkMTlhYWFlYS4uMjViMzk1NmRhZGEgMTAwNjQ0 Ci0tLSBhL3NyY3BrZ3MvYm9yZ21hdGljL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvYm9yZ21hdGlj L3RlbXBsYXRlCkBAIC0xLDYgKzEsNiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnYm9yZ21hdGlj JwogcGtnbmFtZT1ib3JnbWF0aWMKLXZlcnNpb249MS4zLjI2Cit2ZXJzaW9uPTEuNC4wCiByZXZp c2lvbj0xCiBhcmNocz1ub2FyY2gKIGJ1aWxkX3N0eWxlPXB5dGhvbjMtbW9kdWxlCkBAIC0xNSw3 ICsxNSw3IEBAIG1haW50YWluZXI9IlJlbmF0byBBZ3VpYXIgPHJlbmF0b0ByZW5hZy5tZT4iCiBs aWNlbnNlPSJHUEwtMy4wLW9ubHkiCiBob21lcGFnZT0iaHR0cHM6Ly90b3JzaW9uLm9yZy9ib3Jn bWF0aWMvIgogZGlzdGZpbGVzPSIke1BZUElfU0lURX0vYi9ib3JnbWF0aWMvYm9yZ21hdGljLSR7 dmVyc2lvbn0udGFyLmd6IgotY2hlY2tzdW09MTY2M2Q0YTRiNzM5M2ZhMWE4NDhhMDUyZGFmNGE3 ZjZmMTI1ZmQ2NzA1OGM0YmRmZmNlODg1YTA4OWIyMzVlNgorY2hlY2tzdW09ODYxNDY3ZTVkN2Mx NTg4ZTllMzU2OTY2ZTZhOWI4ZmNhMTA4ZTZiZDE3NzAwZDlhMjBhZmM4ZDAwZWUzOTExNgogCiBk b19jaGVjaygpIHsKIAkjIFRoZSB0ZXN0cyB1c2UgdGhlIE5FV1MgZmlsZSB0byBnZXQgdmVyc2lv biBhbmQgY2hlY2tzIGFnYWluc3QKCkZyb20gMzYwOTZiOGYwMTM3YjdlMzY4ZDMwYzJlNDQxZTVh YjRhNDI3MjhhMCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogcTY2IDxkYW5pZWxAb2N0 YWZvcmdlLm9yZz4KRGF0ZTogTW9uLCAyOCBPY3QgMjAxOSAyMDowMDo0NSArMDEwMApTdWJqZWN0 OiBbUEFUQ0ggMDc0LzE4Nl0gYTJqbWlkaWQ6IGZpeCBidWlsZCBvbiBtdXNsL3BwYyAoYW5kIGFs c28gYQogY29ycmVjdGlvbiBvbiBnbGliYykKCltjaSBza2lwXQotLS0KIHNyY3BrZ3MvYTJqbWlk aWQvcGF0Y2hlcy9tdXNsLXBwYy5wYXRjaCB8IDE4ICsrKysrKysrKysrKysrKysrKwogMSBmaWxl IGNoYW5nZWQsIDE4IGluc2VydGlvbnMoKykKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL2Ey am1pZGlkL3BhdGNoZXMvbXVzbC1wcGMucGF0Y2gKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2Eyam1p ZGlkL3BhdGNoZXMvbXVzbC1wcGMucGF0Y2ggYi9zcmNwa2dzL2Eyam1pZGlkL3BhdGNoZXMvbXVz bC1wcGMucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAuLmMxNjUy MzUxMmVmCi0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9hMmptaWRpZC9wYXRjaGVzL211c2wt cHBjLnBhdGNoCkBAIC0wLDAgKzEsMTggQEAKK1RoaXMgZml4ZXMgYnVpbGQgb24gcHBjMzIvbXVz bCBidXQgYWxzbyBmaXhlcyBpbmNvcnJlY3QgdXNhZ2Ugb2YgdWNfcmVncworb24gZ2xpYmMgKHVj X3JlZ3MgaXMgYW4gbWNvbnRleHRfdCBwb2ludGVyLCB5b3UgY2FuJ3QgaW5kZXggaXQgZGlyZWN0 bHkpCisKKy0tLSBzaWdzZWd2LmMKKysrKyBzaWdzZWd2LmMKK0BAIC05Nyw3ICs5NywxMSBAQCBz dGF0aWMgdm9pZCBzaWduYWxfc2VndihpbnQgc2lnbnVtLCBzaWdpbmZvX3QqIGluZm8sIHZvaWQq cHRyKSB7CisgICAgIGZvcihpID0gMDsgaSA8IE5HUkVHOyBpKyspCisgICAgICAgICBhMmpfZXJy b3IoInJlZ1slMDJkXSAgICAgICA9IDB4IiBSRUdGT1JNQVQsIGksCisgI2lmIGRlZmluZWQoX19w b3dlcnBjX18pICYmICFkZWZpbmVkKF9fcG93ZXJwYzY0X18pCistICAgICAgICAgICAgICAgIHVj b250ZXh0LT51Y19tY29udGV4dC51Y19yZWdzW2ldCisrI2lmIGRlZmluZWQoX19HTElCQ19fKQor KyAgICAgICAgICAgICAgICB1Y29udGV4dC0+dWNfbWNvbnRleHQudWNfcmVncy0+Z3JlZ3NbaV0K KysjZWxzZQorKyAgICAgICAgICAgICAgICB1Y29udGV4dC0+dWNfbWNvbnRleHQuZ3JlZ3NbaV0K KysjZW5kaWYKKyAjZWxpZiBkZWZpbmVkKF9fcG93ZXJwYzY0X18pCisgICAgICAgICAgICAgICAg IHVjb250ZXh0LT51Y19tY29udGV4dC5ncF9yZWdzW2ldCisgI2VsaWYgZGVmaW5lZChfX3NwYXJj X18pICYmIGRlZmluZWQoX19hcmNoNjRfXykKCkZyb20gZDY1MWIyZjk4YmJlODI3Nzc4MDVhYzhj ZDZiNzdkNjY1ZjQ2Mjg0MSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogbW9iaW5tb2Ig PG1vYmlubW9iQGRpc3Jvb3Qub3JnPgpEYXRlOiBNb24sIDI4IE9jdCAyMDE5IDIwOjExOjA2ICsw MjAwClN1YmplY3Q6IFtQQVRDSCAwNzUvMTg2XSBzcGR4LWxpY2Vuc2VzLWxpc3Q6IHVwZGF0ZSB0 byAzLjcuCgotLS0KIHNyY3BrZ3Mvc3BkeC1saWNlbnNlcy1saXN0L3RlbXBsYXRlIHwgNiArKyst LS0KIDEgZmlsZSBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCgpkaWZm IC0tZ2l0IGEvc3JjcGtncy9zcGR4LWxpY2Vuc2VzLWxpc3QvdGVtcGxhdGUgYi9zcmNwa2dzL3Nw ZHgtbGljZW5zZXMtbGlzdC90ZW1wbGF0ZQppbmRleCA5NDhjZDRmNzY3Yi4uZjE3ZGUxNzAyNmUg MTAwNjQ0Ci0tLSBhL3NyY3BrZ3Mvc3BkeC1saWNlbnNlcy1saXN0L3RlbXBsYXRlCisrKyBiL3Ny Y3BrZ3Mvc3BkeC1saWNlbnNlcy1saXN0L3RlbXBsYXRlCkBAIC0xLDE1ICsxLDE1IEBACiAjIFRl bXBsYXRlIGZpbGUgZm9yICdzcGR4LWxpY2Vuc2VzLWxpc3QnCiBwa2duYW1lPXNwZHgtbGljZW5z ZXMtbGlzdAotdmVyc2lvbj0zLjYKK3ZlcnNpb249My43CiByZXZpc2lvbj0xCiBhcmNocz1ub2Fy Y2gKIHdya3NyYz0ibGljZW5zZS1saXN0LWRhdGEtJHt2ZXJzaW9ufSIKIHNob3J0X2Rlc2M9IlNQ RFggTGljZW5zZSBMaXN0IgotbWFpbnRhaW5lcj0iT3JwaGFuZWQgPG9ycGhhbkB2b2lkbGludXgu b3JnPiIKK21haW50YWluZXI9Im1vYmlubW9iIDxtb2Jpbm1vYkBkaXNyb290Lm9yZz4iCiBsaWNl bnNlPSJHUEwtMy4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vc3BkeC5vcmciCiBkaXN0 ZmlsZXM9Imh0dHBzOi8vZ2l0aHViLmNvbS9zcGR4L2xpY2Vuc2UtbGlzdC1kYXRhL2FyY2hpdmUv diR7dmVyc2lvbn0udGFyLmd6IgotY2hlY2tzdW09NjAxZTYzNjEzYTdiMGEzYTM1M2YxODcxOTcw ZDMzNzQyZmFkNmI4ZDA0MGU1NGM3MGQ2ZDI0YjJiYzBhOWQyNgorY2hlY2tzdW09M2YzYTEyMWFk MzMxMjYxZDA5OTdiM2M2NTI2ZDBkYjAzMGQ4YjE0NjhhZmNlODYyOTIxZWFlYTIyMDk5ZjkwOQog CiBkb19pbnN0YWxsKCkgewogCXZta2RpciB1c3Ivc2hhcmUvc3BkeAoKRnJvbSAxYWM2OTljNDk3 YjhkMjc0OTEwOGFjOTY0N2NhMDgyOTlmZTFjZTI2IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpG cm9tOiBtb2Jpbm1vYiA8bW9iaW5tb2JAZGlzcm9vdC5vcmc+CkRhdGU6IE1vbiwgMjggT2N0IDIw MTkgMTk6MDU6MjIgKzAyMDAKU3ViamVjdDogW1BBVENIIDA3Ni8xODZdIGJsZWFjaGJpdDogdXBk YXRlIHRvIDMuMC4KCi0tLQogc3JjcGtncy9ibGVhY2hiaXQvdGVtcGxhdGUgfCA4ICsrKystLS0t CiAxIGZpbGUgY2hhbmdlZCwgNCBpbnNlcnRpb25zKCspLCA0IGRlbGV0aW9ucygtKQoKZGlmZiAt LWdpdCBhL3NyY3BrZ3MvYmxlYWNoYml0L3RlbXBsYXRlIGIvc3JjcGtncy9ibGVhY2hiaXQvdGVt cGxhdGUKaW5kZXggYjhmOWViMDAwODkuLmEyMjgyZjUyNGU3IDEwMDY0NAotLS0gYS9zcmNwa2dz L2JsZWFjaGJpdC90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2JsZWFjaGJpdC90ZW1wbGF0ZQpAQCAt MSwxNiArMSwxNiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnYmxlYWNoYml0JwogcGtnbmFtZT1i bGVhY2hiaXQKLXZlcnNpb249Mi4yCit2ZXJzaW9uPTMuMAogcmV2aXNpb249MQogYXJjaHM9bm9h cmNoCiBidWlsZF9zdHlsZT1nbnUtbWFrZWZpbGUKIHB5Y29tcGlsZV9kaXJzPSJ1c3Ivc2hhcmUv YmxlYWNoYml0IgogbWFrZV9pbnN0YWxsX2FyZ3M9InByZWZpeD0vdXNyIgogaG9zdG1ha2VkZXBl bmRzPSJweXRob24iCi1kZXBlbmRzPSJweWd0az49MiBkZXNrdG9wLWZpbGUtdXRpbHMgaGljb2xv ci1pY29uLXRoZW1lIgorZGVwZW5kcz0icHl0aG9uLWdvYmplY3QgZ3RrKzMgZGVza3RvcC1maWxl LXV0aWxzIGhpY29sb3ItaWNvbi10aGVtZSIKIHNob3J0X2Rlc2M9IkRlbGV0ZXMgdW5uZWVkZWQg ZmlsZXMgdG8gZnJlZSBkaXNrIHNwYWNlIGFuZCBtYWludGFpbiBwcml2YWN5IgogbWFpbnRhaW5l cj0iZ3JheXNreSA8Z3JheXNreUBhcmNobGludXgudXM+IgogbGljZW5zZT0iR1BMLTMuMC1vci1s YXRlciIKIGhvbWVwYWdlPSJodHRwczovL3d3dy5ibGVhY2hiaXQub3JnLyIKLWRpc3RmaWxlcz0i aHR0cHM6Ly9naXRodWIuY29tL2JsZWFjaGJpdC9ibGVhY2hiaXQvYXJjaGl2ZS92JHt2ZXJzaW9u fS50YXIuZ3oiCi1jaGVja3N1bT01YWJkZjU5ZGY0MTU3ODgwMzQ3NTkwYzg0NjNhMmIxYmZmOTQ0 NjdlMmNmZDk4ODU2OWE5MGY1Y2I0NDcyOTJhCitkaXN0ZmlsZXM9Imh0dHBzOi8vZ2l0aHViLmNv bS9ibGVhY2hiaXQvYmxlYWNoYml0L2FyY2hpdmUvJHt2ZXJzaW9ufS50YXIuZ3oiCitjaGVja3N1 bT1kOTkyYjllMTFmMGZjMzYxMmEyNjA5YmY2Zjc3ZmFlY2EyZTM5YmI1MzU1NmVlMzI1OWRjM2Vl MjEwODAyYTczCgpGcm9tIDA3Zjg0MThjNjJlOTE1Zjc1NGEzYTc1YmUzZWRiMzllODdiOTQ3NzAg TW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IHE2NiA8ZGFuaWVsQG9jdGFmb3JnZS5vcmc+ CkRhdGU6IE1vbiwgMjggT2N0IDIwMTkgMTg6MTU6NDIgKzAxMDAKU3ViamVjdDogW1BBVENIIDA3 Ny8xODZdIG9wZW50b29uejogYWRkIGJpZyBlbmRpYW4gcGF0Y2gKCltjaSBza2lwXQotLS0KIHNy Y3BrZ3Mvb3BlbnRvb256L3BhdGNoZXMvYmlnLWVuZGlhbi5wYXRjaCB8IDM4ICsrKysrKysrKysr KysrKysrKysrKysKIDEgZmlsZSBjaGFuZ2VkLCAzOCBpbnNlcnRpb25zKCspCiBjcmVhdGUgbW9k ZSAxMDA2NDQgc3JjcGtncy9vcGVudG9vbnovcGF0Y2hlcy9iaWctZW5kaWFuLnBhdGNoCgpkaWZm IC0tZ2l0IGEvc3JjcGtncy9vcGVudG9vbnovcGF0Y2hlcy9iaWctZW5kaWFuLnBhdGNoIGIvc3Jj cGtncy9vcGVudG9vbnovcGF0Y2hlcy9iaWctZW5kaWFuLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAw NjQ0CmluZGV4IDAwMDAwMDAwMDAwLi5mZTQ1NzNlYzA4ZAotLS0gL2Rldi9udWxsCisrKyBiL3Ny Y3BrZ3Mvb3BlbnRvb256L3BhdGNoZXMvYmlnLWVuZGlhbi5wYXRjaApAQCAtMCwwICsxLDM4IEBA CitGaXggdXAgc29tZSBiaWcgZW5kaWFuIHBhdGhzIHRoYXQgZGlkIG5vdCBzdXJ2aXZlIHJlZmFj dG9yaW5nLgorCistLS0gdG9vbnovc291cmNlcy9pbWFnZS90emwvdGlpb190emwuY3BwCisrKysg dG9vbnovc291cmNlcy9pbWFnZS90emwvdGlpb190emwuY3BwCitAQCAtOTQ1LDcgKzk0NSw3IEBA IHZvaWQgVExldmVsV3JpdGVyVHpsOjpzYXZlSW1hZ2UoY29uc3QgVEltYWdlUCAmaW1nLCBjb25z dCBURnJhbWVJZCAmX2ZpZCwNCisgICBIZWFkZXIgKmhlYWRlciA9IChIZWFkZXIgKilidWZmOw0K KyANCisgICBUUmFzdGVyUCByYXM7DQorLSAgbV9jb2RlYy0+ZGVjb21wcmVzcyhidWZmLCBidWZm U2l6ZSwgcmFzKTsNCisrICBtX2NvZGVjLT5kZWNvbXByZXNzKGJ1ZmYsIGJ1ZmZTaXplLCByYXMs IGZhbHNlKTsNCisgICBkZWxldGVbXSBidWZmOw0KKyAgIGFzc2VydCgoVFJhc3RlckNNMzJQKXJh cyk7DQorICAgYXNzZXJ0KHJhcy0+Z2V0THgoKSA9PSBoZWFkZXItPm1fbHgpOworLS0tIHRvb256 L3NvdXJjZXMvc291bmQvd2F2L3RzaW9fd2F2LmNwcAorKysrIHRvb256L3NvdXJjZXMvc291bmQv d2F2L3RzaW9fd2F2LmNwcAorQEAgLTM3MywxNyArMzczLDE3IEBAIGJvb2wgVFNvdW5kVHJhY2tX cml0ZXJXYXY6OnNhdmUoY29uc3QgVFNvdW5kVHJhY2tQICZzbmR0cmFjaykgeworICNpZiAoIVRO Wl9MSVRUTEVfRU5ESUFOKQorICAgeworICAgICBpZiAoZm10Q2h1bmsubV9iaXRQZXJTYW1wbGUg PT0gOCkKKy0gICAgICBtZW1jcHkoKHZvaWQgKil3YXZlRGF0YSwgKHZvaWQgKilzbmR0cmFjay0+ Z2V0UmF3RGF0YSgpLCBzb3VuZERhdGFMZW5ndGgpOworKyAgICAgIG1lbWNweSgodm9pZCAqKXdh dmVEYXRhLmdldCgpLCAodm9pZCAqKXNuZHRyYWNrLT5nZXRSYXdEYXRhKCksIHNvdW5kRGF0YUxl bmd0aCk7CisgICAgIGVsc2UgaWYgKGZtdENodW5rLm1fYml0UGVyU2FtcGxlID09IDE2KSB7Cist ICAgICAgc3dhcEFuZENvcHlTYW1wbGVzKChzaG9ydCAqKXNuZHRyYWNrLT5nZXRSYXdEYXRhKCks IChzaG9ydCAqKXdhdmVEYXRhLAorKyAgICAgIHN3YXBBbmRDb3B5U2FtcGxlcygoc2hvcnQgKilz bmR0cmFjay0+Z2V0UmF3RGF0YSgpLCAoc2hvcnQgKil3YXZlRGF0YS5nZXQoKSwKKyAgICAgICAg ICAgICAgICAgICAgICAgICAgc25kdHJhY2stPmdldFNhbXBsZUNvdW50KCkgKiBmbXRDaHVuay5t X2NoYW5zKTsKKyAgICAgfSBlbHNlIGlmIChmbXRDaHVuay5tX2JpdFBlclNhbXBsZSA9PSAyNCkg eyAgLy8gc3dhcCBlIHRvZ2xpZXJlIHF1YXJ0byBieXRlCisgICAgICAgVUNIQVIgKmJlZ2luID0g KFVDSEFSICopc25kdHJhY2stPmdldFJhd0RhdGEoKTsKKyAgICAgICBmb3IgKGludCBpID0gMDsg aSA8IChpbnQpc25kdHJhY2stPmdldFNhbXBsZUNvdW50KCkgKiBmbXRDaHVuay5tX2NoYW5zOwor ICAgICAgICAgICAgKytpKSB7CistICAgICAgICAqKHdhdmVEYXRhICsgMyAqIGkpICAgICA9ICoo YmVnaW4gKyA0ICogaSArIDMpOworLSAgICAgICAgKih3YXZlRGF0YSArIDMgKiBpICsgMSkgPSAq KGJlZ2luICsgNCAqIGkgKyAyKTsKKy0gICAgICAgICood2F2ZURhdGEgKyAzICogaSArIDIpID0g KihiZWdpbiArIDQgKiBpICsgMSk7CisrICAgICAgICAqKHdhdmVEYXRhLmdldCgpICsgMyAqIGkp ICAgICA9ICooYmVnaW4gKyA0ICogaSArIDMpOworKyAgICAgICAgKih3YXZlRGF0YS5nZXQoKSAr IDMgKiBpICsgMSkgPSAqKGJlZ2luICsgNCAqIGkgKyAyKTsKKysgICAgICAgICood2F2ZURhdGEu Z2V0KCkgKyAzICogaSArIDIpID0gKihiZWdpbiArIDQgKiBpICsgMSk7CisgICAgICAgfQorICAg ICB9CisgICB9CgpGcm9tIDg0MjZjYjc3MTZjMGEwOGE0NTYzNDc2ZjcyNDM0ODNkMzI1MDAyNzAg TW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IEFudGhvbnkgSWxpb3BvdWxvcyA8YWlsaW9w QGFsdGF0dXMuY29tPgpEYXRlOiBNb24sIDI4IE9jdCAyMDE5IDE0OjQ2OjQ2ICswMTAwClN1Ympl Y3Q6IFtQQVRDSCAwNzgvMTg2XSB4b3JyaXNvOiB1cGRhdGUgdG8gMS41LjIuCgotLS0KIHNyY3Br Z3MveG9ycmlzby9wYXRjaGVzL211c2wucGF0Y2ggfCAxMCAtLS0tLS0tLS0tCiBzcmNwa2dzL3hv cnJpc28vdGVtcGxhdGUgICAgICAgICAgIHwgIDggKysrKy0tLS0KIDIgZmlsZXMgY2hhbmdlZCwg NCBpbnNlcnRpb25zKCspLCAxNCBkZWxldGlvbnMoLSkKIGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNw a2dzL3hvcnJpc28vcGF0Y2hlcy9tdXNsLnBhdGNoCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy94b3Jy aXNvL3BhdGNoZXMvbXVzbC5wYXRjaCBiL3NyY3BrZ3MveG9ycmlzby9wYXRjaGVzL211c2wucGF0 Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGRkYjZhNWEzMjc4Li4wMDAwMDAwMDAw MAotLS0gYS9zcmNwa2dzL3hvcnJpc28vcGF0Y2hlcy9tdXNsLnBhdGNoCisrKyAvZGV2L251bGwK QEAgLTEsMTAgKzAsMCBAQAotLS0tIGxpYmlzb2ZzL2FhaXBfMF8yLmgub3JpZwkyMDE1LTExLTMw IDA5OjQzOjQ5LjE2NDM2Nzc4MCArMDEwMAotKysrIGxpYmlzb2ZzL2FhaXBfMF8yLmgJMjAxNS0x MS0zMCAwOTo0NDoxMS40MTE1NjM5NjAgKzAxMDAKLUBAIC0xNiw2ICsxNiw3IEBACi0gI2lmbmRl ZiBBYWlwX2hfaXNfaW5jbHVkZUQKLSAjZGVmaW5lIEFhaXBfaF9pc19pbmNsdWRlRCB5ZXMKLSAK LSsjaW5jbHVkZSA8c3lzL3R5cGVzLmg+CS8qIHNzaXplX3QgKi8KLSAKLSAvKiAtLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gRW5jb2RlciAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tICovCi0gCmRpZmYgLS1naXQgYS9zcmNwa2dzL3hvcnJpc28vdGVtcGxhdGUgYi9zcmNwa2dz L3hvcnJpc28vdGVtcGxhdGUKaW5kZXggMTNiZGE1YTIzNTMuLjc3MWYwNjQwNTAyIDEwMDY0NAot LS0gYS9zcmNwa2dzL3hvcnJpc28vdGVtcGxhdGUKKysrIGIvc3JjcGtncy94b3JyaXNvL3RlbXBs YXRlCkBAIC0xLDEyICsxLDEyIEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICd4b3JyaXNvJwogcGtn bmFtZT14b3JyaXNvCi12ZXJzaW9uPTEuNS4xCi1yZXZpc2lvbj0yCit2ZXJzaW9uPTEuNS4yCity ZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCiBtYWtlZGVwZW5kcz0iemxpYi1k ZXZlbCBiemlwMi1kZXZlbCByZWFkbGluZS1kZXZlbCBhY2wtZGV2ZWwiCiBzaG9ydF9kZXNjPSJJ U08gOTY2MCBSb2NrIFJpZGdlIEZpbGVzeXN0ZW0gTWFuaXB1bGF0b3IiCi1tYWludGFpbmVyPSJP cnBoYW5lZCA8b3JwaGFuQHZvaWRsaW51eC5vcmc+IgorbWFpbnRhaW5lcj0iQW50aG9ueSBJbGlv cG91bG9zIDxhaWxpb3BAYWx0YXR1cy5jb20+IgogbGljZW5zZT0iR1BMLTMuMC1vci1sYXRlciIK IGhvbWVwYWdlPSJodHRwczovL3d3dy5nbnUub3JnL3NvZnR3YXJlL3hvcnJpc28iCiBkaXN0Zmls ZXM9Imh0dHBzOi8vd3d3LmdudS5vcmcvc29mdHdhcmUveG9ycmlzby94b3JyaXNvLSR7dmVyc2lv bn0udGFyLmd6IgotY2hlY2tzdW09MGY4YTI4ZGVlNjA3ZjgzNjVmODI0MmNiOGU4N2U5ZWVjMjk3 MTRiODA5YzA1YTIxNTczNTE3MmU4YTE4ZmNhOAorY2hlY2tzdW09M2I2OWY1YzkzYWU3YzQwYzVi YmU0YTg0N2ZhMzk2M2Y1ZWZjOWM1NjU1NTE2MjJmNzcxMjFjNTc5MmZjMTdlNwoKRnJvbSA0ZTgw YmU1Yjc4NzE1ZDlhMzE4YjIxOWQzYjY4ZTY0N2FmZTIyNmRiIE1vbiBTZXAgMTcgMDA6MDA6MDAg MjAwMQpGcm9tOiBBbnRob255IElsaW9wb3Vsb3MgPGFpbGlvcEBhbHRhdHVzLmNvbT4KRGF0ZTog TW9uLCAyOCBPY3QgMjAxOSAxNDo1MDoyOCArMDEwMApTdWJqZWN0OiBbUEFUQ0ggMDc5LzE4Nl0g bGliZWRpdDogdXBkYXRlIHRvIDIwMTkxMDI1LjMuMS4KCi0tLQogc3JjcGtncy9saWJlZGl0L3Rl bXBsYXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0 aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbGliZWRpdC90ZW1wbGF0ZSBiL3NyY3BrZ3Mv bGliZWRpdC90ZW1wbGF0ZQppbmRleCBkNjllODQ3Zjk3OS4uMDkwNzNjNmU1YzIgMTAwNjQ0Ci0t LSBhL3NyY3BrZ3MvbGliZWRpdC90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2xpYmVkaXQvdGVtcGxh dGUKQEAgLTEsNiArMSw2IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdsaWJlZGl0JwogcGtnbmFt ZT1saWJlZGl0Ci1fZGF0ZXZlcj0yMDE5MDMyNAorX2RhdGV2ZXI9MjAxOTEwMjUKIF9kaXN0dmVy PTMuMQogdmVyc2lvbj0iJHtfZGF0ZXZlcn0uJHtfZGlzdHZlcn0iCiByZXZpc2lvbj0xCkBAIC0x Miw3ICsxMiw3IEBAIG1haW50YWluZXI9Ik9ycGhhbmVkIDxvcnBoYW5Adm9pZGxpbnV4Lm9yZz4i CiBsaWNlbnNlPSJCU0QtMy1DbGF1c2UiCiBob21lcGFnZT0iaHR0cDovL3d3dy50aHJ5c29lZS5k ay9lZGl0bGluZS8iCiBkaXN0ZmlsZXM9Imh0dHA6Ly93d3cudGhyeXNvZWUuZGsvZWRpdGxpbmUv bGliZWRpdC0ke19kYXRldmVyfS0ke19kaXN0dmVyfS50YXIuZ3oiCi1jaGVja3N1bT1hYzhmMGY1 MWMxY2Y2NTQ5MmU0ZDFlM2VkMmJlMzYwYmRhNDFlNTQ2MzM0NDQ2NjY0MjJmYmYzOTNiYmExYmFl CitjaGVja3N1bT02ZGZmMDM2NjYwZDQ3OGJmYWExNGU0MDdmYzVkZTI2ZDIyZGExMDg3MTE4Yzg5 N2IxYTNhZDJlOTBjYjdiZjM5CiAKIHBvc3RfaW5zdGFsbCgpIHsKIAl2bGljZW5zZSBDT1BZSU5H CgpGcm9tIGQxYzkxOTY0ODg3YWRhM2FlNTI5Zjc3MjBmMDU4NWU2NDZjZmI2OTYgTW9uIFNlcCAx NyAwMDowMDowMCAyMDAxCkZyb206IEthcmwgTmlsc3NvbiA8a2FybC5yb2JlcnQubmlsc3NvbkBn bWFpbC5jb20+CkRhdGU6IFR1ZSwgMjkgT2N0IDIwMTkgMDM6NDA6NDMgLTA0MDAKU3ViamVjdDog W1BBVENIIDA4MC8xODZdIGtleWJhc2U6IHVwZGF0ZSB0byA0LjcuMi4KCi0tLQogc3JjcGtncy9r ZXliYXNlL3RlbXBsYXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCsp LCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mva2V5YmFzZS90ZW1wbGF0ZSBi L3NyY3BrZ3Mva2V5YmFzZS90ZW1wbGF0ZQppbmRleCBiNDBhZTE1OTFmNy4uZDFiY2FmMWM2ZmMg MTAwNjQ0Ci0tLSBhL3NyY3BrZ3Mva2V5YmFzZS90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2tleWJh c2UvdGVtcGxhdGUKQEAgLTEsNiArMSw2IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdrZXliYXNl JwogcGtnbmFtZT1rZXliYXNlCi12ZXJzaW9uPTQuNy4xCit2ZXJzaW9uPTQuNy4yCiByZXZpc2lv bj0xCiB3cmtzcmM9ImNsaWVudC0ke3ZlcnNpb259IgogYnVpbGRfc3R5bGU9Z28KQEAgLTE3LDcg KzE3LDcgQEAgbWFpbnRhaW5lcj0iVG95YW0gQ294IDxWYWVsYXRlcm5Adm9pZGxpbnV4Lm9yZz4i CiBsaWNlbnNlPSJCU0QtMy1DbGF1c2UiCiBob21lcGFnZT0iaHR0cHM6Ly9rZXliYXNlLmlvLyIK IGRpc3RmaWxlcz0iaHR0cHM6Ly9naXRodWIuY29tL2tleWJhc2UvY2xpZW50L2FyY2hpdmUvdiR7 dmVyc2lvbn0udGFyLmd6IgotY2hlY2tzdW09ZGVmZjYwZmUxMjM3YjhjMzNlZWE4ODU0ZGQ5MDYw MmQ3NDg0NTBhNTUwYTFhMGFlYjdjMmUyOTk3ZjEzMWYxYgorY2hlY2tzdW09ZDZjZjJhYzFmMTNi ZDk1YzcxM2E1MzRlYzUwNGZlMjA1NTZiZDhkYTkzYmI1Y2ZlMWNkY2I2Mjg3ZWQxZmM0ZAogCiBw b3N0X2luc3RhbGwoKSB7CiAJdmxpY2Vuc2UgTElDRU5TRQoKRnJvbSBlZmRjMmExZmNmNzgxZDBl ZGU1ZTdjOTVmYmViYmVkMTBlOGZiYjc3IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBL YXJsIE5pbHNzb24gPGthcmwucm9iZXJ0Lm5pbHNzb25AZ21haWwuY29tPgpEYXRlOiBUdWUsIDI5 IE9jdCAyMDE5IDAzOjQxOjAzIC0wNDAwClN1YmplY3Q6IFtQQVRDSCAwODEvMTg2XSBrZXliYXNl LWRlc2t0b3A6IHVwZGF0ZSB0byA0LjcuMi4KCi0tLQogc3JjcGtncy9rZXliYXNlLWRlc2t0b3Av dGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVs ZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9rZXliYXNlLWRlc2t0b3AvdGVtcGxhdGUg Yi9zcmNwa2dzL2tleWJhc2UtZGVza3RvcC90ZW1wbGF0ZQppbmRleCBiNWY4Yzc5MGQ3NC4uNTBh ODI4YWMyMzcgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3Mva2V5YmFzZS1kZXNrdG9wL3RlbXBsYXRlCisr KyBiL3NyY3BrZ3Mva2V5YmFzZS1kZXNrdG9wL3RlbXBsYXRlCkBAIC0xLDYgKzEsNiBAQAogIyBU ZW1wbGF0ZSBmaWxlIGZvciAna2V5YmFzZS1kZXNrdG9wJwogcGtnbmFtZT1rZXliYXNlLWRlc2t0 b3AKLXZlcnNpb249NC43LjEKK3ZlcnNpb249NC43LjIKIHJldmlzaW9uPTEKIHdya3NyYz0iY2xp ZW50LSR7dmVyc2lvbn0iCiBob3N0bWFrZWRlcGVuZHM9ImdpdCBub2RlanMtbHRzIHlhcm4gdW56 aXAiCkBAIC0xMCw3ICsxMCw3IEBAIG1haW50YWluZXI9IkRvbWluaWMgTW9ucm9lIDxtb25yb2Vm NEBnb29nbGVtYWlsLmNvbT4iCiBsaWNlbnNlPSJCU0QtMy1DbGF1c2UiCiBob21lcGFnZT0iaHR0 cHM6Ly9rZXliYXNlLmlvIgogZGlzdGZpbGVzPSJodHRwczovL2dpdGh1Yi5jb20va2V5YmFzZS9j bGllbnQvYXJjaGl2ZS92JHt2ZXJzaW9ufS50YXIuZ3oiCi1jaGVja3N1bT1kZWZmNjBmZTEyMzdi OGMzM2VlYTg4NTRkZDkwNjAyZDc0ODQ1MGE1NTBhMWEwYWViN2MyZTI5OTdmMTMxZjFiCitjaGVj a3N1bT1kNmNmMmFjMWYxM2JkOTVjNzEzYTUzNGVjNTA0ZmUyMDU1NmJkOGRhOTNiYjVjZmUxY2Rj YjYyODdlZDFmYzRkCiBub3N0cmlwX2ZpbGVzPSJLZXliYXNlIgogCiBjYXNlICIke1hCUFNfVEFS R0VUX01BQ0hJTkV9IiBpbgoKRnJvbSA4MWRjZmMzNjVhZmJiOTkzOTczYzhkMjlmZmExZjM3ODhl MGNkNjdiIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBMZWFoIE5ldWtpcmNoZW4gPGxl YWhAdnV4dS5vcmc+CkRhdGU6IFR1ZSwgMjkgT2N0IDIwMTkgMTQ6NDY6MTYgKzAxMDAKU3ViamVj dDogW1BBVENIIDA4Mi8xODZdIHBlcmwtV1dXLU1lY2hhbml6ZTogdXBkYXRlIHRvIDEuOTUuCgot LS0KIHNyY3BrZ3MvcGVybC1XV1ctTWVjaGFuaXplL3RlbXBsYXRlIHwgNCArKy0tCiAxIGZpbGUg Y2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3Ny Y3BrZ3MvcGVybC1XV1ctTWVjaGFuaXplL3RlbXBsYXRlIGIvc3JjcGtncy9wZXJsLVdXVy1NZWNo YW5pemUvdGVtcGxhdGUKaW5kZXggOWJjNmQzZWVhOGQuLjE2OTAxNmQ1ZmQxIDEwMDY0NAotLS0g YS9zcmNwa2dzL3BlcmwtV1dXLU1lY2hhbml6ZS90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3Blcmwt V1dXLU1lY2hhbml6ZS90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxhdGUgZmlsZSBm b3IgJ3BlcmwtV1dXLU1lY2hhbml6ZScKIHBrZ25hbWU9cGVybC1XV1ctTWVjaGFuaXplCi12ZXJz aW9uPTEuOTQKK3ZlcnNpb249MS45NQogcmV2aXNpb249MQogYXJjaHM9bm9hcmNoCiB3cmtzcmM9 IiR7cGtnbmFtZS9wZXJsLS99LSR7dmVyc2lvbn0iCkBAIC0xNyw3ICsxNyw3IEBAIG1haW50YWlu ZXI9IkxlYWggTmV1a2lyY2hlbiA8bGVhaEB2dXh1Lm9yZz4iCiBsaWNlbnNlPSJBcnRpc3RpYy0x LjAtUGVybCwgR1BMLTEuMC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL21ldGFjcGFuLm9y Zy9yZWxlYXNlL1dXVy1NZWNoYW5pemUiCiBkaXN0ZmlsZXM9IiR7Q1BBTl9TSVRFfS9XV1cvJHtw a2duYW1lL3BlcmwtL30tJHt2ZXJzaW9ufS50YXIuZ3oiCi1jaGVja3N1bT1jODUwNTcxNTUxMjc2 YWFkNDY4YTVlYTJiMzg1NzMxMDEwNzY3MWQ5NDNmYzFjMGI3Y2FlM2FkZjU1MmMxMDAyCitjaGVj a3N1bT0zYWIzNjI2N2JjYmZlMjQ1Y2E0NTc4Y2FmZjQ3NTU1OGRhYjE3MWY3NTYzMTliOTJhOTJi NThkZDQxMGYyMmYwCiAKIHByZV9jb25maWd1cmUoKSB7CiAJdW5zZXQgY29uZmlndXJlX2FyZ3MK CkZyb20gOTA2N2I0YmVlYTZlY2Y1NDk3ZGMyMTEzZjRmZmZkMTdlYzE0YTc1YiBNb24gU2VwIDE3 IDAwOjAwOjAwIDIwMDEKRnJvbTogTGVhaCBOZXVraXJjaGVuIDxsZWFoQHZ1eHUub3JnPgpEYXRl OiBUdWUsIDI5IE9jdCAyMDE5IDE0OjQ2OjE4ICswMTAwClN1YmplY3Q6IFtQQVRDSCAwODMvMTg2 XSBlcmxhbmc6IHVwZGF0ZSB0byAyMi4xLjUuCgotLS0KIHNyY3BrZ3MvZXJsYW5nL3RlbXBsYXRl IHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygt KQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZXJsYW5nL3RlbXBsYXRlIGIvc3JjcGtncy9lcmxhbmcv dGVtcGxhdGUKaW5kZXggNjdjZDI4OTZhYmYuLjY0ODcwOTEzZWNiIDEwMDY0NAotLS0gYS9zcmNw a2dzL2VybGFuZy90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2VybGFuZy90ZW1wbGF0ZQpAQCAtMSw2 ICsxLDYgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2VybGFuZycKIHBrZ25hbWU9ZXJsYW5nCi12 ZXJzaW9uPTIyLjEuNAordmVyc2lvbj0yMi4xLjUKIHJldmlzaW9uPTEKIGNyZWF0ZV93cmtzcmM9 eWVzCiBidWlsZF93cmtzcmM9Im90cC1PVFAtJHt2ZXJzaW9ufSIKQEAgLTE1LDcgKzE1LDcgQEAg bWFpbnRhaW5lcj0iTGVhaCBOZXVraXJjaGVuIDxsZWFoQHZ1eHUub3JnPiIKIGxpY2Vuc2U9IkFw YWNoZS0yLjAiCiBob21lcGFnZT0iaHR0cDovL3d3dy5lcmxhbmcub3JnLyIKIGRpc3RmaWxlcz0i aHR0cHM6Ly9naXRodWIuY29tL2VybGFuZy9vdHAvYXJjaGl2ZS9PVFAtJHt2ZXJzaW9ufS50YXIu Z3oiCi1jaGVja3N1bT05ODJlOTQwYzhjMzMxM2IxYWYyNzkzODY1NWI0ZTkwOTkxZDU0YmQ2NzIw YjIzOGMyNTQzOGMxNmJjNTE2OTlmCitjaGVja3N1bT1iMDA2MjJlZjBhYzQzM2JhZTkxMmNmMTFj YmYwNjQ2N2EwNTdlYTcxMGZiZGE2MzE3YmE1ZDBiMTBjYzJlNGIxCiAKIGJ1aWxkX29wdGlvbnM9 IngxMSIKIAoKRnJvbSBlN2VlOGY1OThjYzliMzliN2YzYWI2YmFkY2Q1NmI5ZTVkNzVlZDJkIE1v biBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBIZWxtdXQgUG96aW1za2kgPGhlbG11dEBwb3pp bXNraS5ldT4KRGF0ZTogVHVlLCAyOSBPY3QgMjAxOSAyMDo1ODoxMSArMDEwMApTdWJqZWN0OiBb UEFUQ0ggMDg0LzE4Nl0gbGludXg0Ljk6IHVwZGF0ZSB0byA0LjkuMTk4LgoKLS0tCiBzcmNwa2dz L2xpbnV4NC45L3RlbXBsYXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25z KCspLCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbGludXg0LjkvdGVtcGxh dGUgYi9zcmNwa2dzL2xpbnV4NC45L3RlbXBsYXRlCmluZGV4IDVmYmQ3ZjQ5NDg0Li4xZWYzYWQ0 YzQzOSAxMDA2NDQKLS0tIGEvc3JjcGtncy9saW51eDQuOS90ZW1wbGF0ZQorKysgYi9zcmNwa2dz L2xpbnV4NC45L3RlbXBsYXRlCkBAIC0xLDYgKzEsNiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAn bGludXg0LjknCiBwa2duYW1lPWxpbnV4NC45Ci12ZXJzaW9uPTQuOS4xOTYKK3ZlcnNpb249NC45 LjE5OAogcmV2aXNpb249MQogcGF0Y2hfYXJncz0iLU5wMSIKIHdya3NyYz0ibGludXgtJHt2ZXJz aW9ufSIKQEAgLTksNyArOSw3IEBAIGhvbWVwYWdlPSJodHRwczovL3d3dy5rZXJuZWwub3JnIgog bGljZW5zZT0iR1BMLTIuMC1vbmx5Igogc2hvcnRfZGVzYz0iTGludXgga2VybmVsIGFuZCBtb2R1 bGVzICgke3ZlcnNpb24lLip9IHNlcmllcykiCiBkaXN0ZmlsZXM9Imh0dHBzOi8vY2RuLmtlcm5l bC5vcmcvcHViL2xpbnV4L2tlcm5lbC92NC54L2xpbnV4LSR7dmVyc2lvbn0udGFyLnh6IgotY2hl Y2tzdW09ZTBhYjEyYjA0YTk3NTYzMGVjZTIxNDJhMWFjMTVjZmU0NTE0MGI4YzMzNTkyMjZiMDM1 YzE1Y2E3YzkyYzZlZgorY2hlY2tzdW09OTU3MmViZmE2YmEwZWZjZjlmMWVjN2I2MmM3Yjg5YmFh MzZhNjIxYWI5ZmQ0YzVhZDAyNTE5NmM1NDk2MDVhYwogCiBub2RlYnVnPXllcyAgIyAtZGJnIHBh Y2thZ2UgaXMgZ2VuZXJhdGVkIGJlbG93IG1hbnVhbGx5CiBub3N0cmlwPXllcwoKRnJvbSA5YWE4 MmEzMzM3YjgwMjQ2MDk2NjFlODJmZWQzOWIzNzBkMjljNWQwIE1vbiBTZXAgMTcgMDA6MDA6MDAg MjAwMQpGcm9tOiBIZWxtdXQgUG96aW1za2kgPGhlbG11dEBwb3ppbXNraS5ldT4KRGF0ZTogVHVl LCAyOSBPY3QgMjAxOSAyMTowMDoxMSArMDEwMApTdWJqZWN0OiBbUEFUQ0ggMDg1LzE4Nl0gbGlu dXg0LjQ6IHVwZGF0ZSB0byA0LjQuMTk4LgoKLS0tCiBzcmNwa2dzL2xpbnV4NC40L3RlbXBsYXRl IHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygt KQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbGludXg0LjQvdGVtcGxhdGUgYi9zcmNwa2dzL2xpbnV4 NC40L3RlbXBsYXRlCmluZGV4IGEwYWRlYTZiMjk3Li5lMTM4MGFmZGM0OSAxMDA2NDQKLS0tIGEv c3JjcGtncy9saW51eDQuNC90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2xpbnV4NC40L3RlbXBsYXRl CkBAIC0xLDYgKzEsNiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnbGludXg0LjQnCiBwa2duYW1l PWxpbnV4NC40Ci12ZXJzaW9uPTQuNC4xOTYKK3ZlcnNpb249NC40LjE5OAogcmV2aXNpb249MQog d3Jrc3JjPSJsaW51eC0ke3ZlcnNpb259IgogbWFpbnRhaW5lcj0iT3JwaGFuZWQgPG9ycGhhbkB2 b2lkbGludXgub3JnPiIKQEAgLTgsNyArOCw3IEBAIGhvbWVwYWdlPSJodHRwczovL3d3dy5rZXJu ZWwub3JnIgogbGljZW5zZT0iR1BMLTIuMC1vbmx5Igogc2hvcnRfZGVzYz0iVGhlIExpbnV4IGtl cm5lbCBhbmQgbW9kdWxlcyAoJHt2ZXJzaW9uJS4qfSBzZXJpZXMpIgogZGlzdGZpbGVzPSIke0tF Uk5FTF9TSVRFfS9rZXJuZWwvdjQueC9saW51eC0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3Vt PTE2OWUzZjA3NzAxMzM2MTM4OTA1YmRlZGQyMmEwMDg5YjQ1ZTJlNTNiOWFhNmQyZWQ2YzQ0ZjIx NTQ3NmE3NmQKK2NoZWNrc3VtPWVjZjgwOGQ4OGQwNDA4NmRhMjViZjQ0Mjg4ZDYzYTcxMTBkZDk5 OTQ4YzE3YmMxMTYyZTUzMDFhYmNjZmYzMTIKIAogbm9jcm9zcz15ZXMKIG5vZGVidWc9eWVzCgpG cm9tIGY5OWM5YjExMmZlYzNhZWViNzk2YjhiNWYzOGQwOWIwNGE0YTE2NDMgTW9uIFNlcCAxNyAw MDowMDowMCAyMDAxCkZyb206IE5hdGhhbiBPd2VucyA8bmRvd2VuczA0QGdtYWlsLmNvbT4KRGF0 ZTogVHVlLCAyOSBPY3QgMjAxOSAxMDoxNzoxNSAtMDUwMApTdWJqZWN0OiBbUEFUQ0ggMDg2LzE4 Nl0gZ21zaDogdXBkYXRlIHRvIDQuNC4xCgotLS0KIHNyY3BrZ3MvZ21zaC90ZW1wbGF0ZSB8IDQg KystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRp ZmYgLS1naXQgYS9zcmNwa2dzL2dtc2gvdGVtcGxhdGUgYi9zcmNwa2dzL2dtc2gvdGVtcGxhdGUK aW5kZXggNjM5MTRmOGZhNmIuLmFjNzE3YmNjNzYxIDEwMDY0NAotLS0gYS9zcmNwa2dzL2dtc2gv dGVtcGxhdGUKKysrIGIvc3JjcGtncy9nbXNoL3RlbXBsYXRlCkBAIC0xLDYgKzEsNiBAQAogIyBU ZW1wbGF0ZSBmaWxlIGZvciAnZ21zaCcKIHBrZ25hbWU9Z21zaAotdmVyc2lvbj00LjMuMAordmVy c2lvbj00LjQuMQogcmV2aXNpb249MQogd3Jrc3JjPSIke3BrZ25hbWV9LSR7dmVyc2lvbn0tc291 cmNlIgogYnVpbGRfc3R5bGU9Y21ha2UKQEAgLTE2LDcgKzE2LDcgQEAgbGljZW5zZT0iR1BMLTIu MC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL2dtc2guaW5mbyIKIGNoYW5nZWxvZz0iaHR0 cDovL2dtc2guaW5mby9DSEFOR0VMT0cudHh0IgogZGlzdGZpbGVzPSJodHRwczovL2dtc2guaW5m by9zcmMvZ21zaC0ke3ZlcnNpb259LXNvdXJjZS50Z3oiCi1jaGVja3N1bT01NGEyMzZmNTcwOGJj MTA1ZDViNjBkZGIyYjk1ZWE3MDYyNTM3Y2NkMjcyMDg2MDM3Nzk5NGMxYTliYjg2NDI5CitjaGVj a3N1bT04NTNjNjQzOGZjNGU0Yjc2NTIwNmU2NmE1MTRiMDkxODJjNTYzNzdiYjRiNzNmMWQwZDI2 ZWRhN2ViOGFmMGRjCiAKIGJ1aWxkX29wdGlvbnM9Imh4dCBtZXNoIG51bXB5IHppcHBlciIKICMg SFhUIGFuZCBNRVNIIG9ubHkgYXZhaWxhYmxlIG9uIHg4NgoKRnJvbSA2YzY2YmU3ODM4OTBhZjk3 NTRmZTkxMTYyNjFkNzRjYTJmNjY0ZTRlIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBJ bXJhbiBLaGFuIDxpbXJhbmtoYW5AdGVrbmlrLmlvPgpEYXRlOiBUdWUsIDI5IE9jdCAyMDE5IDE2 OjMzOjA4ICswMDAwClN1YmplY3Q6IFtQQVRDSCAwODcvMTg2XSB0eHI6IHVwZGF0ZSB0byAyMjcu CgotLS0KIHNyY3BrZ3MvdHhyL3RlbXBsYXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBp bnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvdHhyL3Rl bXBsYXRlIGIvc3JjcGtncy90eHIvdGVtcGxhdGUKaW5kZXggMTQxNTkzZDk4NmUuLmY3MTQzYmJi M2YzIDEwMDY0NAotLS0gYS9zcmNwa2dzL3R4ci90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3R4ci90 ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ3R4cicKIHBrZ25h bWU9dHhyCi12ZXJzaW9uPTIyNQordmVyc2lvbj0yMjcKIHJldmlzaW9uPTEKIGJ1aWxkX3N0eWxl PWNvbmZpZ3VyZQogbWFrZV9jaGVja190YXJnZXQ9dGVzdHMKQEAgLTEwLDcgKzEwLDcgQEAgbWFp bnRhaW5lcj0iT2xpdmVyIEtpZGRsZSA8b2tpZGRsZUB5YWhvby5jby51az4iCiBsaWNlbnNlPSJC U0QtMi1DbGF1c2UiCiBob21lcGFnZT0iaHR0cDovL3d3dy5ub25nbnUub3JnL3R4ci8iCiBkaXN0 ZmlsZXM9Imh0dHA6Ly93d3cua3lsaGVrdS5jb20vY2dpdC90eHIvc25hcHNob3QvJHtwa2duYW1l fS0ke3ZlcnNpb259LnRhci5iejIiCi1jaGVja3N1bT1kMjc3Yzc3MzY5NjM3YWZjZTdmNDNmOWZm MDVhMjJhODg5NmJhZmI4ZjcwZTVhNDI4ZTVhNjRiOTZiMDY3MDFmCitjaGVja3N1bT1mYWU3ZWIz ZWQ2NjExZTBhMzFjYzVhZGMzMmE2ZTAzZTE4MmU3NDEyYmRjOTlkZTJiY2VmNGJiNzFjNzkxM2Vl CiAKIGlmIFsgIiRDUk9TU19CVUlMRCIgXTsgdGhlbgogCWhvc3RtYWtlZGVwZW5kcys9IiB0eHIi CgpGcm9tIGMwNDM4NTFiZjg5NDVkMDFjNDFlOWNhMmJhMjY2MjcyMjg0MWJkNGQgTW9uIFNlcCAx NyAwMDowMDowMCAyMDAxCkZyb206IGs0bGVnIDxkMHhpQGluYm94LnJ1PgpEYXRlOiBUdWUsIDI5 IE9jdCAyMDE5IDE5OjEwOjA5ICswMzAwClN1YmplY3Q6IFtQQVRDSCAwODgvMTg2XSBxYml0dG9y cmVudDogdXBkYXRlIHRvIDQuMS45LgoKLS0tCiBzcmNwa2dzL3FiaXR0b3JyZW50L3RlbXBsYXRl IHwgNTQgKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tCiAxIGZpbGUgY2hhbmdl ZCwgMjYgaW5zZXJ0aW9ucygrKSwgMjggZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtn cy9xYml0dG9ycmVudC90ZW1wbGF0ZSBiL3NyY3BrZ3MvcWJpdHRvcnJlbnQvdGVtcGxhdGUKaW5k ZXggM2RiZjdiMzRlZTkuLmY0NTE5MWM5ZDJlIDEwMDY0NAotLS0gYS9zcmNwa2dzL3FiaXR0b3Jy ZW50L3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvcWJpdHRvcnJlbnQvdGVtcGxhdGUKQEAgLTEsMTAg KzEsMTAgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ3FiaXR0b3JyZW50JwogcGtnbmFtZT1xYml0 dG9ycmVudAotdmVyc2lvbj00LjEuOAordmVyc2lvbj00LjEuOQogcmV2aXNpb249MQogY3JlYXRl X3dya3NyYz15ZXMKIGJ1aWxkX3N0eWxlPXFtYWtlCi1ob3N0bWFrZWRlcGVuZHM9ImF1dG9tYWtl IGxpYnRvb2wgcGtnLWNvbmZpZyBxdDUtaG9zdC10b29scyBxdDUtcW1ha2UgcXQ1LXRvb2xzIgor aG9zdG1ha2VkZXBlbmRzPSJhdXRvbWFrZSBhdXRvY29uZiBsaWJ0b29sIHBrZy1jb25maWcgcXQ1 LWhvc3QtdG9vbHMgcXQ1LXFtYWtlIHF0NS10b29scyIKIG1ha2VkZXBlbmRzPSJsaWJ0b3JyZW50 LXJhc3RlcmJhci1kZXZlbCBxdDUtZGVjbGFyYXRpdmUtZGV2ZWwgcXQ1LXN2Zy1kZXZlbCIKIGRl cGVuZHM9InF0NS1zdmciCiBzaG9ydF9kZXNjPSJGcmVlIHNvZnR3YXJlIGFsdGVybmF0aXZlIHRv IMK1dG9ycmVudCIKQEAgLTEyLDcgKzEyLDcgQEAgbWFpbnRhaW5lcj0iSsO8cmdlbiBCdWNobcO8 bGxlciA8cHVsbG1vbGxAdC1vbmxpbmUuZGU+IgogbGljZW5zZT0iR1BMLTIuMC1vci1sYXRlciIK IGhvbWVwYWdlPSJodHRwOi8vd3d3LnFiaXR0b3JyZW50Lm9yZy8iCiBkaXN0ZmlsZXM9IiR7U09V UkNFRk9SR0VfU0lURX0vJHtwa2duYW1lfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6Igot Y2hlY2tzdW09M2ZlZWEyZWE0MDFkOTMzYzQ5MjYzMGU0NDA2MTQxNjU4ZjE3YjVkYzBjOGNmOTI2 N2Y4NDlmZjIwNzhmYjBiYgorY2hlY2tzdW09M2FkMDhhYjQ0MWY4NWI2MDcxNWQ4ZWQ1MzY5Y2Yy MWY1Yzk0YzdlZjA3NDc0YWJjMjQ3ZDA5Y2U5M2E3OGVlNwogCiBpZiBbICIkQ1JPU1NfQlVJTEQi IF07IHRoZW4KIAlob3N0bWFrZWRlcGVuZHMrPSIgcXQ1LXN2Zy1kZXZlbCIKQEAgLTQxLDMxICs0 MSwyOSBAQCBkb19jb25maWd1cmUoKSB7CiAJCWNkICR7d3Jrc3JjfS8ke2J1aWxkfQogCQkuL2Jv b3RzdHJhcC5zaAogCQkuL2NvbmZpZ3VyZSAke29wdHN9Ci0JCWNhdCA+IHF0LmNvbmYgPDxfRU9G Ci1bUGF0aHNdCi1TeXNyb290PSR7WEJQU19DUk9TU19CQVNFfQotUHJlZml4PSR7WEJQU19DUk9T U19CQVNFfS91c3IKLUFyY2hEYXRhPSR7WEJQU19DUk9TU19CQVNFfS91c3IvbGliL3F0NQotRGF0 YT0ke1hCUFNfQ1JPU1NfQkFTRX0vdXNyL3NoYXJlL3F0NQotRG9jdW1lbnRhdGlvbj0ke1hCUFNf Q1JPU1NfQkFTRX0vdXNyL3NoYXJlL2RvYy9xdDUKLUhlYWRlcnM9JHtYQlBTX0NST1NTX0JBU0V9 L3Vzci9pbmNsdWRlL3F0NQotTGlicmFyaWVzPSR7WEJQU19DUk9TU19CQVNFfS91c3IvbGliCi1M aWJyYXJ5RXhlY3V0YWJsZXM9L3Vzci9saWIvcXQ1L2xpYmV4ZWMKLUJpbmFyaWVzPS91c3IvbGli L3F0NS9iaW4KLVRlc3RzPSR7WEJQU19DUk9TU19CQVNFfS91c3IvdGVzdHMKLVBsdWdpbnM9L3Vz ci9saWIvcXQ1L3BsdWdpbnMKLUltcG9ydHM9JHtYQlBTX0NST1NTX0JBU0V9L3Vzci9saWIvcXQ1 L2ltcG9ydHMKLVFtbDJJbXBvcnRzPSR7WEJQU19DUk9TU19CQVNFfS91c3IvbGliL3F0NS9xbWwK LVRyYW5zbGF0aW9ucz0ke1hCUFNfQ1JPU1NfQkFTRX0vdXNyL3NoYXJlL3F0NS90cmFuc2xhdGlv bnMKLVNldHRpbmdzPSR7WEJQU19DUk9TU19CQVNFfS9ldGMveGRnCi1FeGFtcGxlcz0ke1hCUFNf Q1JPU1NfQkFTRX0vdXNyL3NoYXJlL3F0NS9leGFtcGxlcwotSG9zdFByZWZpeD0vdXNyCi1Ib3N0 RGF0YT0vdXNyL2xpYi9xdDUKLUhvc3RCaW5hcmllcz0vdXNyL2xpYi9xdDUvYmluCi1Ib3N0TGli cmFyaWVzPS91c3IvbGliCi1TcGVjPWxpbnV4LWcrKwotVGFyZ2V0U3BlYz1saW51eC1nKysKLV9F T0YKKwkJZWNobyAiW1BhdGhzXSIgPiBxdC5jb25mCisJCWVjaG8gIlN5c3Jvb3Q9JHtYQlBTX0NS T1NTX0JBU0V9IiA+PiBxdC5jb25mCisJCWVjaG8gIlByZWZpeD0ke1hCUFNfQ1JPU1NfQkFTRX0v dXNyIiA+PiBxdC5jb25mCisJCWVjaG8gIkFyY2hEYXRhPSR7WEJQU19DUk9TU19CQVNFfS91c3Iv bGliL3F0NSIgPj4gcXQuY29uZgorCQllY2hvICJEYXRhPSR7WEJQU19DUk9TU19CQVNFfS91c3Iv c2hhcmUvcXQ1IiA+PiBxdC5jb25mCisJCWVjaG8gIkRvY3VtZW50YXRpb249JHtYQlBTX0NST1NT X0JBU0V9L3Vzci9zaGFyZS9kb2MvcXQ1IiA+PiBxdC5jb25mCisJCWVjaG8gIkhlYWRlcnM9JHtY QlBTX0NST1NTX0JBU0V9L3Vzci9pbmNsdWRlL3F0NSIgPj4gcXQuY29uZgorCQllY2hvICJMaWJy YXJpZXM9JHtYQlBTX0NST1NTX0JBU0V9L3Vzci9saWIiID4+IHF0LmNvbmYKKwkJZWNobyAiTGli cmFyeUV4ZWN1dGFibGVzPS91c3IvbGliL3F0NS9saWJleGVjIiA+PiBxdC5jb25mCisJCWVjaG8g IkJpbmFyaWVzPS91c3IvbGliL3F0NS9iaW4iID4+IHF0LmNvbmYKKwkJZWNobyAiVGVzdHM9JHtY QlBTX0NST1NTX0JBU0V9L3Vzci90ZXN0cyIgPj4gcXQuY29uZgorCQllY2hvICJQbHVnaW5zPS91 c3IvbGliL3F0NS9wbHVnaW5zIiA+PiBxdC5jb25mCisJCWVjaG8gIkltcG9ydHM9JHtYQlBTX0NS T1NTX0JBU0V9L3Vzci9saWIvcXQ1L2ltcG9ydHMiID4+IHF0LmNvbmYKKwkJZWNobyAiUW1sMklt cG9ydHM9JHtYQlBTX0NST1NTX0JBU0V9L3Vzci9saWIvcXQ1L3FtbCIgPj4gcXQuY29uZgorCQll Y2hvICJUcmFuc2xhdGlvbnM9JHtYQlBTX0NST1NTX0JBU0V9L3Vzci9zaGFyZS9xdDUvdHJhbnNs YXRpb25zIiA+PiBxdC5jb25mCisJCWVjaG8gIlNldHRpbmdzPSR7WEJQU19DUk9TU19CQVNFfS9l dGMveGRnIiA+PiBxdC5jb25mCisJCWVjaG8gIkV4YW1wbGVzPSR7WEJQU19DUk9TU19CQVNFfS91 c3Ivc2hhcmUvcXQ1L2V4YW1wbGVzIiA+PiBxdC5jb25mCisJCWVjaG8gIkhvc3RQcmVmaXg9L3Vz ciIgPj4gcXQuY29uZgorCQllY2hvICJIb3N0RGF0YT0vdXNyL2xpYi9xdDUiID4+IHF0LmNvbmYK KwkJZWNobyAiSG9zdEJpbmFyaWVzPS91c3IvbGliL3F0NS9iaW4iID4+IHF0LmNvbmYKKwkJZWNo byAiSG9zdExpYnJhcmllcz0vdXNyL2xpYiIgPj4gcXQuY29uZgorCQllY2hvICJTcGVjPWxpbnV4 LWcrKyIgPj4gcXQuY29uZgorCQllY2hvICJUYXJnZXRTcGVjPWxpbnV4LWcrKyIgPj4gcXQuY29u ZgogCQlxbWFrZS1xdDUgXAogCQkJUFJFRklYPS91c3IgXAogCQkJTElCPS91c3IvbGliIFwKCkZy b20gMGMzMDU2YmRiN2Q0ZjYwNDdjNDMxZWFlNjY1Yjc3NDM2MWMxNGVjOCBNb24gU2VwIDE3IDAw OjAwOjAwIDIwMDEKRnJvbTogbmV3Ymx1ZW1vb24gPGJsYXVtb2xjaEBtYWlsYm94Lm9yZz4KRGF0 ZTogU2F0LCAyNiBPY3QgMjAxOSAwODoxMjo0MiArMDIwMApTdWJqZWN0OiBbUEFUQ0ggMDg5LzE4 Nl0gc29uaWMtdmlzdWFsaXNlcjogdXBkYXRlIHRvIDQuMAoKLS0tCiBzcmNwa2dzL3NvbmljLXZp c3VhbGlzZXIvdGVtcGxhdGUgfCA1MSArKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tCiAx IGZpbGUgY2hhbmdlZCwgNDUgaW5zZXJ0aW9ucygrKSwgNiBkZWxldGlvbnMoLSkKCmRpZmYgLS1n aXQgYS9zcmNwa2dzL3NvbmljLXZpc3VhbGlzZXIvdGVtcGxhdGUgYi9zcmNwa2dzL3NvbmljLXZp c3VhbGlzZXIvdGVtcGxhdGUKaW5kZXggOGFkNjM0NjY0NmUuLjMwYjg1OWUzOGY5IDEwMDY0NAot LS0gYS9zcmNwa2dzL3NvbmljLXZpc3VhbGlzZXIvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9zb25p Yy12aXN1YWxpc2VyL3RlbXBsYXRlCkBAIC0xLDYgKzEsNiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZv ciAnc29uaWMtdmlzdWFsaXNlcicKIHBrZ25hbWU9c29uaWMtdmlzdWFsaXNlcgotdmVyc2lvbj0z LjMKK3ZlcnNpb249NC4wCiByZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCiBo b3N0bWFrZWRlcGVuZHM9InBrZy1jb25maWcgY2FwbnByb3RvLWRldmVsIgpAQCAtMTMsMzAgKzEz LDY5IEBAIG1haW50YWluZXI9Im5ld2JsdWVtb29uIDxibGF1bW9sY2hAbWFpbGJveC5vcmc+Igog bGljZW5zZT0iR1BMLTIuMC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL3d3dy5zb25pY3Zp c3VhbGlzZXIub3JnLyIKIGNoYW5nZWxvZz0iaHR0cHM6Ly9jb2RlLnNvdW5kc29mdHdhcmUuYWMu dWsvcHJvamVjdHMvc29uaWMtdmlzdWFsaXNlci9yZXBvc2l0b3J5L2VudHJ5L0NIQU5HRUxPRyIK LWRpc3RmaWxlcz0iaHR0cHM6Ly9jb2RlLnNvdW5kc29mdHdhcmUuYWMudWsvYXR0YWNobWVudHMv ZG93bmxvYWQvMjQ5MS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLmd6IgotY2hlY2tzdW09MThm YTg2ODI0MTQ2YzYzMzgwNTdkOWEwNzM3N2ZiODA2OGJhYjQyNzliMWM3N2M1OTE5MWI3MDAwNDhj MGY5MworZGlzdGZpbGVzPSJodHRwczovL2NvZGUuc291bmRzb2Z0d2FyZS5hYy51ay9hdHRhY2ht ZW50cy9kb3dubG9hZC8yNTgwLyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIuZ3oiCitjaGVja3N1 bT0zNTVlZTEyNWU3YjgzN2ZkYmQwMDgzNTJjOTZlMjViMDI3MWZmODIzNDk4MTM3NTI2NmE4OGJj ZGYwYjQzOTY1CisKK2Nhc2UgIiRYQlBTX1RBUkdFVF9NQUNISU5FIiBpbgorCWFybXY2KikgbWFr ZWRlcGVuZHMrPSIgbGliYXRvbWljLWRldmVsIiA7OworZXNhYwogCiBpZiBbICIkQ1JPU1NfQlVJ TEQiIF07IHRoZW4KIAlob3N0bWFrZWRlcGVuZHMrPSIgcXQ1LXFtYWtlIHF0NS1zdmctZGV2ZWwi CiBmaQogCiBwb3N0X2V4dHJhY3QoKSB7Ci0JIyBkb27igJl0IHJ1biB0YXJnZXQtYnVpbHQgdGVz dGluZy1iaW5hcmllcyB3aGVuIGNyb3NzIGJ1aWxkaW5nCiAJaWYgWyAiJENST1NTX0JVSUxEIiBd OyB0aGVuCisJCSMgZG9u4oCZdCBydW4gdGFyZ2V0LWJ1aWx0IHRlc3RpbmctYmluYXJpZXMgd2hl biBjcm9zcyBidWlsZGluZwogCQlzZWQgLWkgLWUgJy9RTUFLRV9QT1NUX0xJTksvZCcgXAogCQkg dGVzdC1zdmNvcmUtYmFzZS5wcm8gXAogCQkgdGVzdC1zdmNvcmUtZGF0YS1maWxlaW8ucHJvIFwK IAkJIHRlc3Qtc3Zjb3JlLWRhdGEtbW9kZWwucHJvIFwKIAkJIHRlc3Qtc3Zjb3JlLXN5c3RlbS5w cm8KKworCQkjIEl04oCZcyBhIG1peGVkIGJ1aWxkLXN0eWxlOiBnbnUtY29uZmlndXJlIGNhbGxz IHFtYWtlOgorCQkjIGNyZWF0ZSB0aGUgY3Jvc3MtcXQuY29uZiBmaWxlIGZyb20gdGhlIHFtYWtl IGJ1aWxkLXN0eWxlCisJCSMgYW5kIG1ha2UgcW1ha2UgdXNlIGl0CisgICAgICAgICAgICAgICAg Y2F0ID4gIiR7d3Jrc3JjfS9xdC5jb25mIiA8PF9FT0YKK1tQYXRoc10KK1N5c3Jvb3Q9JHtYQlBT X0NST1NTX0JBU0V9CitQcmVmaXg9JHtYQlBTX0NST1NTX0JBU0V9L3VzcgorQXJjaERhdGE9JHtY QlBTX0NST1NTX0JBU0V9L3Vzci9saWIvcXQ1CitEYXRhPSR7WEJQU19DUk9TU19CQVNFfS91c3Iv c2hhcmUvcXQ1CitEb2N1bWVudGF0aW9uPSR7WEJQU19DUk9TU19CQVNFfS91c3Ivc2hhcmUvZG9j L3F0NQorSGVhZGVycz0ke1hCUFNfQ1JPU1NfQkFTRX0vdXNyL2luY2x1ZGUvcXQ1CitMaWJyYXJp ZXM9JHtYQlBTX0NST1NTX0JBU0V9L3Vzci9saWIKK0xpYnJhcnlFeGVjdXRhYmxlcz0vdXNyL2xp Yi9xdDUvbGliZXhlYworQmluYXJpZXM9L3Vzci9saWIvcXQ1L2JpbgorVGVzdHM9JHtYQlBTX0NS T1NTX0JBU0V9L3Vzci90ZXN0cworUGx1Z2lucz0vdXNyL2xpYi9xdDUvcGx1Z2lucworSW1wb3J0 cz0ke1hCUFNfQ1JPU1NfQkFTRX0vdXNyL2xpYi9xdDUvaW1wb3J0cworUW1sMkltcG9ydHM9JHtY QlBTX0NST1NTX0JBU0V9L3Vzci9saWIvcXQ1L3FtbAorVHJhbnNsYXRpb25zPSR7WEJQU19DUk9T U19CQVNFfS91c3Ivc2hhcmUvcXQ1L3RyYW5zbGF0aW9ucworU2V0dGluZ3M9JHtYQlBTX0NST1NT X0JBU0V9L2V0Yy94ZGcKK0V4YW1wbGVzPSR7WEJQU19DUk9TU19CQVNFfS91c3Ivc2hhcmUvcXQ1 L2V4YW1wbGVzCitIb3N0UHJlZml4PS91c3IKK0hvc3REYXRhPS91c3IvbGliL3F0NQorSG9zdEJp bmFyaWVzPS91c3IvbGliL3F0NS9iaW4KK0hvc3RMaWJyYXJpZXM9L3Vzci9saWIKK1NwZWM9bGlu dXgtZysrCitUYXJnZXRTcGVjPWxpbnV4LWcrKworX0VPRgorCisJCXNlZCAtaSAtZSAicztcKFwk UU1BS0UgLXJcKSBcKHNvbmljLXZpc3VhbGlzZXIucHJvXCk7XDEgLXF0Y29uZiAke3dya3NyY30v cXQuY29uZiBcMjsiIFwKKwkJIGNvbmZpZ3VyZQogCWZpCisKKwljYXNlICIkWEJQU19UQVJHRVRf TUFDSElORSIgaW4KKwkJYXJtdjYqKSBzZWQgLWkgLWUgInMvXmxpbnV4XCo6TElCUyArPS4qLyYg LWxhdG9taWMvIiBjb25maWcucHJpLmluIDs7CisJZXNhYwogfQogCiBkb19pbnN0YWxsKCkgewog CXZiaW4gc29uaWMtdmlzdWFsaXNlcgogCXZiaW4gcGlwZXItdmFtcC1zaW1wbGUtc2VydmVyCiAJ dmJpbiB2YW1wLXBsdWdpbi1sb2FkLWNoZWNrZXIKLQl2bGljZW5zZSBDT1BZSU5HCi0JdmxpY2Vu c2UgZGVwbG95L2xpbnV4L2RvYy9zb25pYy12aXN1YWxpc2VyL2NvcHlyaWdodAorCXZkb2MgZGVw bG95L2xpbnV4L2RvYy9zb25pYy12aXN1YWxpc2VyL2NvcHlyaWdodAogCXZkb2MgUkVBRE1FLm1k CiAJdmRvYyBSRUFETUUuT1NDCiAJdmRvYyBDSVRBVElPTgoKRnJvbSAzNWM5NjMyZDlhYzcwNWIz MjliMTI1NDUzYTIyN2Q5NGI2M2Y1ZTBiIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBK b2huIDxqb2huekBwb3N0ZW8ubmV0PgpEYXRlOiBUdWUsIDI5IE9jdCAyMDE5IDE5OjAzOjQ5ICsw MTAwClN1YmplY3Q6IFtQQVRDSCAwOTAvMTg2XSBhbWR2bGs6IHVwZGF0ZSB0byAyMDE5LlE0LjEu CgotLS0KIHNyY3BrZ3MvYW1kdmxrL3BhdGNoZXMvZGVwcmVjdGVkLWNvcHkucGF0Y2ggfCAyNiAr KysrKysrKysrKy0tLS0tLS0tCiBzcmNwa2dzL2FtZHZsay9wYXRjaGVzL211c2wucGF0Y2ggICAg ICAgICAgIHwgMTQgKysrLS0tLS0tLS0KIHNyY3BrZ3MvYW1kdmxrL3RlbXBsYXRlICAgICAgICAg ICAgICAgICAgICAgfCAyOCArKysrKysrKysrLS0tLS0tLS0tLS0KIDMgZmlsZXMgY2hhbmdlZCwg MzQgaW5zZXJ0aW9ucygrKSwgMzQgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9h bWR2bGsvcGF0Y2hlcy9kZXByZWN0ZWQtY29weS5wYXRjaCBiL3NyY3BrZ3MvYW1kdmxrL3BhdGNo ZXMvZGVwcmVjdGVkLWNvcHkucGF0Y2gKaW5kZXggNGQ4MzNlNDc5OGYuLmE0MmEzODVjMTNiIDEw MDY0NAotLS0gYS9zcmNwa2dzL2FtZHZsay9wYXRjaGVzL2RlcHJlY3RlZC1jb3B5LnBhdGNoCisr KyBiL3NyY3BrZ3MvYW1kdmxrL3BhdGNoZXMvZGVwcmVjdGVkLWNvcHkucGF0Y2gKQEAgLTEsMTIg KzEsMTggQEAKLS0tLSBwYWwvc2hhcmVkL2dwdW9wZW4vY21ha2UvQU1ELmNtYWtlCTIwMTktMDYt MzAgMDk6MzU6MjUuMDAwMDAwMDAwICswMjAwCi0rKysgLQkyMDE5LTA3LTAyIDExOjA3OjA2LjM2 NjUzNDMwOSArMDIwMAotQEAgLTQ2LDcgKzQ2LDggQEAKLSAgICAgICAgIHRhcmdldF9jb21waWxl X29wdGlvbnMoJHtuYW1lfSBQUklWQVRFCi0gICAgICAgICAgICAgLVdhbGwgICAgIyBFbmFibGUg d2FybmluZ3MgYWJvdXQgcXVlc3Rpb25hYmxlIGxhbmd1YWdlIGNvbnN0cnVjdHMuCi0gICAgICAg ICAgICAgLVdleHRyYSAgIyBFbmFibGUgZXh0cmEgd2FybmluZ3MgdGhhdCBhcmUgbm90IGVuYWJs ZWQgYnkgLVdhbGwuCi0tICAgICAgICAgICAgLVdlcnJvcikgIyBUdXJuIHdhcm5pbmdzIGludG8g ZXJyb3JzLgotKyAgICAgICAgICAgIC1XZXJyb3IgICMgVHVybiB3YXJuaW5ncyBpbnRvIGVycm9y cy4KLSsJICAgIC1Xbm8tZXJyb3I9ZGVwcmVjYXRlZC1jb3B5KQorLS0tIHBhbC9zaGFyZWQvZ3B1 b3Blbi9jbWFrZS9BTUQuY21ha2UJMjAxOS0xMC0xOCAxMTowNjo0Mi4wMDAwMDAwMDAgKzAyMDAK KysrKyAtCTIwMTktMTAtMjkgMTk6MDY6MDAuMDU5NjE1Mzg0ICswMTAwCitAQCAtODksNiArODks NyBAQAorICAgICAgICAgICAgICAgICAtZm5vLWV4Y2VwdGlvbnMgIyBEaXNhYmxlIGV4Y2VwdGlv biBoYW5kbGluZyBzdXBwb3J0LgorICAgICAgICAgICAgICAgICAtZm5vLXJ0dGkgICAgICAgIyBE aXNhYmxlIHJ1bi10aW1lIHR5cGUgaW5mb3JtYXRpb24gc3VwcG9ydC4KKyAgICAgICAgICAgICAg ICAgLWZuby1tYXRoLWVycm5vICMgU2luZ2xlIGluc3RydWN0aW9uIG1hdGggb3BlcmF0aW9ucyBk byBub3Qgc2V0IEVSUk5PLgorKwkJLVduby1lcnJvcj1kZXByZWNhdGVkLWNvcHkKKyAgICAgICAg ICkKICAKLSBlbmRmdW5jdGlvbigpCisgICAgIGVsc2VpZihDTUFLRV9DWFhfQ09NUElMRVJfSUQg U1RSRVFVQUwgIk1TVkMiKQorQEAgLTExOSw2ICsxMjAsNyBAQAorICAgICAgICAgICAgICAgICAt V2FsbCAgICMgRW5hYmxlIHdhcm5pbmdzIGFib3V0IHF1ZXN0aW9uYWJsZSBsYW5ndWFnZSBjb25z dHJ1Y3RzLgorICAgICAgICAgICAgICAgICAtV2V4dHJhICMgRW5hYmxlIGV4dHJhIHdhcm5pbmdz IHRoYXQgYXJlIG5vdCBlbmFibGVkIGJ5IC1XYWxsLgorICAgICAgICAgICAgICAgICAtV2Vycm9y ICMgVHVybiB3YXJuaW5ncyBpbnRvIGVycm9ycy4KKysJCS1Xbm8tZXJyb3I9ZGVwcmVjYXRlZC1j b3B5CisgICAgICAgICApCiAgCisgICAgIGVsc2VpZihDTUFLRV9DWFhfQ09NUElMRVJfSUQgU1RS RVFVQUwgIk1TVkMiKQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9hbWR2bGsvcGF0Y2hlcy9tdXNsLnBh dGNoIGIvc3JjcGtncy9hbWR2bGsvcGF0Y2hlcy9tdXNsLnBhdGNoCmluZGV4IDVlNGUxZTlmMThk Li4yNjZiZGU1YTgwNCAxMDA2NDQKLS0tIGEvc3JjcGtncy9hbWR2bGsvcGF0Y2hlcy9tdXNsLnBh dGNoCisrKyBiL3NyY3BrZ3MvYW1kdmxrL3BhdGNoZXMvbXVzbC5wYXRjaApAQCAtMSwxNyArMSwx MSBAQAotLS0tIHBhbC9zaGFyZWQvZ3B1b3Blbi9zcmMvcG9zaXgvZGRQb3NpeFNvY2tldC5jcHAJ MjAxOS0wMy0wMSAxNTozMTowNC4wMDAwMDAwMDAgKzAxMDAKLSsrKyAtCTIwMTktMDMtMDQgMTU6 NDI6MDAuNzg5Mjg0NjA1ICswMTAwCi1AQCAtMzQsMTIgKzM0LDEyIEBACistLS0gcGFsL3NoYXJl ZC9ncHVvcGVuL3NyYy9wb3NpeC9kZFBvc2l4U29ja2V0LmNwcAkyMDE5LTEwLTE4IDExOjA2OjQy LjAwMDAwMDAwMCArMDIwMAorKysrIC0JMjAxOS0xMC0yOSAyMDoxNTozNS42MTQ2MDg0NTMgKzAx MDAKK0BAIC0zNCw3ICszNCw3IEBACiAgI2luY2x1ZGUgPHN5cy90eXBlcy5oPgogICNpbmNsdWRl IDxzeXMvc29ja2V0Lmg+CiAgI2luY2x1ZGUgPHN5cy91bi5oPgogLSNpbmNsdWRlIDxzeXMvZmNu dGwuaD4KKysjaW5jbHVkZSA8ZmNudGwuaD4KICAjaW5jbHVkZSA8bmV0aW5ldC9pbi5oPgogICNp bmNsdWRlIDxuZXRpbmV0L3RjcC5oPgogICNpbmNsdWRlIDxuZXRkYi5oPgotICNpbmNsdWRlIDxh cnBhL2luZXQuaD4KLSAKLSsjaW5jbHVkZSA8ZmNudGwuaD4KLSAjaW5jbHVkZSA8dW5pc3RkLmg+ Ci0gI2luY2x1ZGUgPHN0ZGlvLmg+Ci0gI2luY2x1ZGUgPHN0ZGxpYi5oPgotIApkaWZmIC0tZ2l0 IGEvc3JjcGtncy9hbWR2bGsvdGVtcGxhdGUgYi9zcmNwa2dzL2FtZHZsay90ZW1wbGF0ZQppbmRl eCBlZjc0OTY5ZDFhMy4uYmI0MWFhZmQxNzYgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvYW1kdmxrL3Rl bXBsYXRlCisrKyBiL3NyY3BrZ3MvYW1kdmxrL3RlbXBsYXRlCkBAIC0xLDEyICsxLDEyIEBACiAj IFRlbXBsYXRlIGZpbGUgZm9yICdhbWR2bGsnCiBwa2duYW1lPWFtZHZsawotdmVyc2lvbj0yMDE5 LlEzLjYKK3ZlcnNpb249MjAxOS5RNC4xCiByZXZpc2lvbj0xCi1fbGxwY19jb21taXQ9NGZhNDhl ZjFjZjBmODFlYWZkYjU2ZGY5MWMyZjIxODBkNDg2NTEwMQotX3hnbF9jb21taXQ9MzMxNTU4ZTkz Nzk0MDY4YTc4NmJmNjk5ZDNmZTIzYmIxMWJhYzAyMQotX3BhbF9jb21taXQ9NjhiNTdkYmEzM2E0 ZDkyMmU4ZjFlZjFiMzc4MWMyZjY1OWZmYmQxYwotX2xsdm1fY29tbWl0PTliYzVkZDQ0NTBhNjM2 MWZhZjVjNTY2MTA1NmE3ZWU0OTRmYWQ4MzAKLV9zcHZnZW5fY29tbWl0PTJmMzFkMTE3MGU4YTEy YTY2MTY4YjIzMjM1NjM4YzRiYmM0M2VjZGMKK19sbHBjX2NvbW1pdD0zZjE1MzQ3ZDM4ZGE4MDQ4 MTRmZGQ5ZTI0ZTI4NzVlZTBiMmI5MjQ1CitfeGdsX2NvbW1pdD0xOWEwMzFkOWY3M2I5NTEwMWZk NGQzZDU5NGFjYTI3YzAwZmViMTgwCitfcGFsX2NvbW1pdD0zOWFiZTIyOTdjYTU4YTJiODRkY2Q5 YmM1ZTIzOGZiYzM5OWJkNmUwCitfbGx2bV9wcm9qZWN0X2NvbW1pdD00MGZiYWY0YzU0NDZhMzYx MjY5YzI0MWQ5MTEyZmZmMjY1NzViNWQwCitfc3B2Z2VuX2NvbW1pdD1mMWJjMmJhOTg4MjczYzM3 MjRhZmZmZTcyZmU5Y2Q5MzNhMDIyY2U3CiBfTWV0cm9IYXNoX2NvbW1pdD0yYjZmZWUwMDJkYjZj YzkyMzQ1YjAyYWVlZTk2M2ViYWFmNGMwZTJmCiBfQ1dQYWNrX2NvbW1pdD1iNjAxYzg4YWVjYTdh N2IwOGJlY2IzZDMyNzA5ZGUzODNjOGVlNDI4CiBhcmNocz0iaTY4NiogeDg2XzY0KiIKQEAgLTI3 LDE2ICsyNywxNiBAQCBkaXN0ZmlsZXM9Imh0dHBzOi8vZ2l0aHViLmNvbS9HUFVPcGVuLURyaXZl cnMvQU1EVkxLL2FyY2hpdmUvdi0ke3ZlcnNpb259LnRhci5negogIGh0dHBzOi8vZ2l0aHViLmNv bS9HUFVPcGVuLURyaXZlcnMvbGxwYy9hcmNoaXZlLyR7X2xscGNfY29tbWl0fS50YXIuZ3oKICBo dHRwczovL2dpdGh1Yi5jb20vR1BVT3Blbi1Ecml2ZXJzL3hnbC9hcmNoaXZlLyR7X3hnbF9jb21t aXR9LnRhci5negogIGh0dHBzOi8vZ2l0aHViLmNvbS9HUFVPcGVuLURyaXZlcnMvcGFsL2FyY2hp dmUvJHtfcGFsX2NvbW1pdH0udGFyLmd6Ci0gaHR0cHM6Ly9naXRodWIuY29tL0dQVU9wZW4tRHJp dmVycy9sbHZtL2FyY2hpdmUvJHtfbGx2bV9jb21taXR9LnRhci5negorIGh0dHBzOi8vZ2l0aHVi LmNvbS9HUFVPcGVuLURyaXZlcnMvbGx2bS1wcm9qZWN0L2FyY2hpdmUvJHtfbGx2bV9wcm9qZWN0 X2NvbW1pdH0udGFyLmd6CiAgaHR0cHM6Ly9naXRodWIuY29tL0dQVU9wZW4tRHJpdmVycy9zcHZn ZW4vYXJjaGl2ZS8ke19zcHZnZW5fY29tbWl0fS50YXIuZ3oKICBodHRwczovL2dpdGh1Yi5jb20v R1BVT3Blbi1Ecml2ZXJzL01ldHJvSGFzaC9hcmNoaXZlLyR7X01ldHJvSGFzaF9jb21taXR9LnRh ci5negogIGh0dHBzOi8vZ2l0aHViLmNvbS9HUFVPcGVuLURyaXZlcnMvQ1dQYWNrL2FyY2hpdmUv JHtfQ1dQYWNrX2NvbW1pdH0udGFyLmd6IgotY2hlY2tzdW09IjlhZmI5MGI1NmMzYzEyMTNjOTdl ZjMzNjRiMWQzMWQwZTg1YTgxNDY5Yzg2MWI0M2RjMzg5YWY1NjcyYzYzMzEKLSBhYmU1NDFlZjZj ZDRmYTNjYTFlYWFiNTI0MTJjYWEyOWUyYWRlZGVjMGZhYjQwODk0YWVmODhkMzNkZWVlNTg0Ci0g OTM5YTJjZjY5ZDg0MGUwMWRhOGIzZTY5ZjVmZmUxZjg1MmY5ZDI5MTljZGJjOGFhNGFkZTdjZmY3 YWM1NjkwNgotIDc2NDhjYTc3NjFiNTg4YjYwMjVmOGZlMTZmY2Y0MjE2YmY3ZTFmZTUzYzY1Njgz NzdmNWNjYTk4ZmVjYTk2MjcKLSBlZmJkZTI3NTIwNDRlYzc0ZDUyMmMxNjA4OTk0OTExMDVkYmM3 N2JiOGEwOGZmNjRjMjc0ZDJiOTRhNjkxNmQxCi0gY2M5NDZhZDI4MzVlNTAyYWNhOTA0YzVmODc4 MDJhMjAwNGVhZWQ0NzI5Y2I1YzFkYzI5YTUyNThkMWMxZTQwMQorY2hlY2tzdW09IjIyNjViZDBi ZTk3M2Q0NTExY2Q0N2RhMjkwNTJiMzY4MzY5ZTVhYzQxMzNmM2IwOGFiOGM4OWM1MWQ3NTk5ODYK KyBkMTk1N2ViMWFhYWFiODlhYWI3OGYzZDM3NWNlYTkzYzRiOTFlNDdmNjAyNjI3YjA0OGYwZmI3 MWQ4ZTdlYjNkCisgNDdmZGNiNGVkMGM5YjJlMWY2MWFiZTc2MWJhYjkxMmNhMjI4ZGZkNjEwM2My MDcwYzk0MjQ0YzZhMmYxM2I1ZQorIDNkZWYzYTk0ZTIwZGJiNjdjYjRlZmZkYWNjNGMxODBlYmY1 YmYzMGE0YWUyN2FkNjg0OWNkMzJhYTA2Mjg0NjMKKyA2ZjQ2OWNhYzdjMmRlYWZmNTk1Y2Q2ODlh ODMwNjdkYTZjZmJlZTBmOTczNjJmNmZhOWY2YzUwYjViYjIzYjU2CisgNzdhNGNhZDg2OTE5NjBi ODI1ZTg2YjYyNGJiNTQzM2Y1MDk4YjhhNDljYjBkNzU4ZTE3YzZkNTllMjVhOTM2MQogIGU4ZWNm MDI2NTg0ZGQ5NTNlMzljM2FiYmEyZWIwNGQyOGIyOGVkNDU3NzQ4MmVlNzAyNjVmMGQ0MjFmZWYz OTgKICA1OGNhMzk3ZjMzZDYyYmNmZWNhZWNkODllYjRhZDQ2NmE2YzMzZTFjNjE5ZTVjZjc0Mjgy MjA3NGYxZjdkNjY0Igogbm9jcm9zcz15ZXMKQEAgLTQ3LDcgKzQ3LDcgQEAgcG9zdF9leHRyYWN0 KCkgewogCW12ICR7d3Jrc3JjfS94Z2wtJHtfeGdsX2NvbW1pdH0gJHt3cmtzcmN9L3hnbAogCW12 ICR7d3Jrc3JjfS9wYWwtJHtfcGFsX2NvbW1pdH0gJHt3cmtzcmN9L3BhbAogCW12ICR7d3Jrc3Jj fS9sbHBjLSR7X2xscGNfY29tbWl0fSAke3dya3NyY30vbGxwYwotCW12ICR7d3Jrc3JjfS9sbHZt LSR7X2xsdm1fY29tbWl0fSAke3dya3NyY30vbGx2bQorCW12ICR7d3Jrc3JjfS9sbHZtLXByb2pl Y3QtJHtfbGx2bV9wcm9qZWN0X2NvbW1pdH0gJHt3cmtzcmN9L2xsdm0tcHJvamVjdAogCW12ICR7 d3Jrc3JjfS9zcHZnZW4tJHtfc3B2Z2VuX2NvbW1pdH0gJHt3cmtzcmN9L3NwdmdlbgogCW12ICR7 d3Jrc3JjfS9NZXRyb0hhc2gtJHtfTWV0cm9IYXNoX2NvbW1pdH0gJHt3cmtzcmN9L21ldHJvaGFz aAogCW12ICR7d3Jrc3JjfS9DV1BhY2stJHtfQ1dQYWNrX2NvbW1pdH0gJHt3cmtzcmN9L2N3cGFj awoKRnJvbSBkYjVjZTEyNDZmYTczOWMzM2FiOTBlMWNlNDY3OGQ5Yzg5NmI0MGQ2IE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBKb2huIDxqb2huekBwb3N0ZW8ubmV0PgpEYXRlOiBUdWUs IDI5IE9jdCAyMDE5IDIzOjAyOjI1ICswMTAwClN1YmplY3Q6IFtQQVRDSCAwOTEvMTg2XSBNdXN0 YWNoZTogdXBkYXRlIHRvIDQuMC4KCi0tLQogLi4uMDAxLUZpeC1jb21waWxpbmctb2YtdGVzdHMt b24tZ2NjOC4yLnBhdGNoIHwgMzMgLS0tLS0tLS0tLS0tLS0tLS0tLQogc3JjcGtncy9NdXN0YWNo ZS90ZW1wbGF0ZSAgICAgICAgICAgICAgICAgICAgIHwgIDQgKy0tCiAyIGZpbGVzIGNoYW5nZWQs IDIgaW5zZXJ0aW9ucygrKSwgMzUgZGVsZXRpb25zKC0pCiBkZWxldGUgbW9kZSAxMDA2NDQgc3Jj cGtncy9NdXN0YWNoZS9wYXRjaGVzLzAwMDEtRml4LWNvbXBpbGluZy1vZi10ZXN0cy1vbi1nY2M4 LjIucGF0Y2gKCmRpZmYgLS1naXQgYS9zcmNwa2dzL011c3RhY2hlL3BhdGNoZXMvMDAwMS1GaXgt Y29tcGlsaW5nLW9mLXRlc3RzLW9uLWdjYzguMi5wYXRjaCBiL3NyY3BrZ3MvTXVzdGFjaGUvcGF0 Y2hlcy8wMDAxLUZpeC1jb21waWxpbmctb2YtdGVzdHMtb24tZ2NjOC4yLnBhdGNoCmRlbGV0ZWQg ZmlsZSBtb2RlIDEwMDY0NAppbmRleCBmNDQ2OTc4NjgyZS4uMDAwMDAwMDAwMDAKLS0tIGEvc3Jj cGtncy9NdXN0YWNoZS9wYXRjaGVzLzAwMDEtRml4LWNvbXBpbGluZy1vZi10ZXN0cy1vbi1nY2M4 LjIucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSwzMyArMCwwIEBACi1Gcm9tIDMzYzhmNDZhMjhm YjgwMTQ0Y2Y2ZDVhMDEzNTJkZTBlZjg0NzQ4ODAgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCi1G cm9tOiBKb2huIFppbW1lcm1hbm4gPGpvaG56QHBvc3Rlby5uZXQ+Ci1EYXRlOiBUdWUsIDI5IEph biAyMDE5IDEzOjU5OjE2ICswMTAwCi1TdWJqZWN0OiBbUEFUQ0hdIEZpeCBjb21waWxpbmcgb2Yg dGVzdHMgb24gZ2NjOC4yCi0KLWBgYAotSW4gZmlsZSBpbmNsdWRlZCBmcm9tIHRlc3RzLmNwcDoz MjoKLXRlc3RzLmNwcDogSW4gZnVuY3Rpb24gJ3ZvaWQgX19fX0NfQV9UX0NfSF9fX19UX0VfU19U X19fXzExNCgpJzoKLXRlc3RzLmNwcDoxMDk0OjQ4OiBlcnJvcjogY2F0Y2hpbmcgcG9seW1vcnBo aWMgdHlwZSAnY2xhc3Mgc3RkOjpiYWRfZnVuY3Rpb25fY2FsbCcgYnkgdmFsdWUgWy1XZXJyb3I9 Y2F0Y2gtdmFsdWU9XQotICAgICAgICAgQ0hFQ0tfVEhST1dTX0FTKHRtcGwucmVuZGVyKGRhdCks IHN0ZDo6YmFkX2Z1bmN0aW9uX2NhbGwpOwotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgXn5+fn5+fn5+fn5+fn5+fn4KLWNjMXBsdXM6IGFsbCB3YXJuaW5n cyBiZWluZyB0cmVhdGVkIGFzIGVycm9yCi1gYGAKLS0tLQotIHRlc3RzLmNwcCB8IDIgKy0KLSAx IGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKLQotZGlmZiAtLWdp dCB0ZXN0cy5jcHAgdGVzdHMuY3BwCi1pbmRleCBhOTE3NmI3Li4yNzZmMGIzIDEwMDY0NAotLS0t IHRlc3RzLmNwcAotKysrIHRlc3RzLmNwcAotQEAgLTEwOTEsNyArMTA5MSw3IEBAIFRFU1RfQ0FT RSgiY3VzdG9tX2VzY2FwZSIpIHsKLSAgICAgICAgIG11c3RhY2hlOjplc2NhcGVfaGFuZGxlciBl c2M7Ci0gICAgICAgICB0bXBsLnNldF9jdXN0b21fZXNjYXBlKGVzYyk7Ci0gICAgICAgICBvYmpl Y3QgZGF0KHsgeyJ3aGF0IiwgIlwiZnJpZW5kXCIifSB9KTsKLS0gICAgICAgIENIRUNLX1RIUk9X U19BUyh0bXBsLnJlbmRlcihkYXQpLCBzdGQ6OmJhZF9mdW5jdGlvbl9jYWxsKTsKLSsgICAgICAg IENIRUNLX1RIUk9XU19BUyh0bXBsLnJlbmRlcihkYXQpLCBzdGQ6OmJhZF9mdW5jdGlvbl9jYWxs Jik7Ci0gICAgIH0KLSAKLSB9Ci0tLSAKLTIuMjAuMQotCmRpZmYgLS1naXQgYS9zcmNwa2dzL011 c3RhY2hlL3RlbXBsYXRlIGIvc3JjcGtncy9NdXN0YWNoZS90ZW1wbGF0ZQppbmRleCA1MDNiYTU0 ZDM3Mi4uY2UwMjNkMDRlODAgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvTXVzdGFjaGUvdGVtcGxhdGUK KysrIGIvc3JjcGtncy9NdXN0YWNoZS90ZW1wbGF0ZQpAQCAtMSwxMyArMSwxMyBAQAogIyBUZW1w bGF0ZSBmaWxlIGZvciAnTXVzdGFjaGUnCiBwa2duYW1lPU11c3RhY2hlCi12ZXJzaW9uPTMuMi4x Cit2ZXJzaW9uPTQuMAogcmV2aXNpb249MQogc2hvcnRfZGVzYz0iTXVzdGFjaGUgdGV4dCB0ZW1w bGF0ZXMgZm9yIG1vZGVybiBDKysiCiBtYWludGFpbmVyPSJKb2huIDxqb2huekBwb3N0ZW8ubmV0 PiIKIGxpY2Vuc2U9IkJTTC0xLjAiCiBob21lcGFnZT0iaHR0cHM6Ly9naXRodWIuY29tL2thaW5q b3cvTXVzdGFjaGUiCiBkaXN0ZmlsZXM9Imh0dHBzOi8vZ2l0aHViLmNvbS9rYWluam93L011c3Rh Y2hlL2FyY2hpdmUvdiR7dmVyc2lvbn0udGFyLmd6IgotY2hlY2tzdW09MGQxNzI5OGE4MWMwOGYx MmViYzQ0NmNkZWUzODcyNjhhMzk1ZDM0YmI3MjQwNTBmZTY3ZDVjZThjNGU5OGI3YQorY2hlY2tz dW09MTcxMjk2ODFlZTIwNzQwNDQwOWQ3MWJkYzY0OWYwOGQ0NzAyOWUzZGVhMGVmNjhlNWNkNDc4 NjhkZTFiZTIzYwogCiBkb19jaGVjaygpIHsKIAltYWtlCgpGcm9tIGM4ZThjN2ZjNTJhOGNiYzZi OTUxNjE0MzczMTljZTg4NjVjYzVjYzMgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IEpv aG4gPGpvaG56QHBvc3Rlby5uZXQ+CkRhdGU6IFR1ZSwgMjkgT2N0IDIwMTkgMjM6MDg6NDUgKzAx MDAKU3ViamVjdDogW1BBVENIIDA5Mi8xODZdIGJsdWVkZXZpbDogdXBkYXRlIHRvIDUuMTcuMgoK W2NpIHNraXBdCi0tLQogc3JjcGtncy9ibHVlZGV2aWwvdGVtcGxhdGUgfCA0ICsrLS0KIDEgZmls ZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEv c3JjcGtncy9ibHVlZGV2aWwvdGVtcGxhdGUgYi9zcmNwa2dzL2JsdWVkZXZpbC90ZW1wbGF0ZQpp bmRleCBlNjQ2OTkyY2JiNi4uZDM2MTQwZTY5NGQgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvYmx1ZWRl dmlsL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvYmx1ZWRldmlsL3RlbXBsYXRlCkBAIC0xLDYgKzEs NiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnYmx1ZWRldmlsJwogcGtnbmFtZT1ibHVlZGV2aWwK LXZlcnNpb249NS4xNy4xCit2ZXJzaW9uPTUuMTcuMgogcmV2aXNpb249MQogYnVpbGRfc3R5bGU9 Y21ha2UKIGNvbmZpZ3VyZV9hcmdzPSItREJVSUxEX1RFU1RJTkc9T0ZGIgpAQCAtMTEsNyArMTEs NyBAQCBtYWludGFpbmVyPSJKb2huIDxqb2huekBwb3N0ZW8ubmV0PiIKIGxpY2Vuc2U9IkdQTC0y LjAtb3ItbGF0ZXIsIExHUEwtMi4xLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vcHJvamVj dHMua2RlLm9yZy9wcm9qZWN0cy9wbGFzbWEvYmx1ZWRldmlsIgogZGlzdGZpbGVzPSIke0tERV9T SVRFfS9wbGFzbWEvJHt2ZXJzaW9ufS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hl Y2tzdW09M2JhZWJjMjA4Nzc0NjlmMTIwNWJiM2M2MzY4NzQwYWNkMGY3NmU3MGU0NTg3OWE4YzM3 NjRiN2JkMGYxMjU5ZQorY2hlY2tzdW09MDVlMjJmZjJlNzE5ZGRhZmQxYTE4ZTBkZDE3NjY3NDNm MDg3OWFhYjhkN2JhM2YzNjZhNmNjNDA3ZTAwYzY5NwogCiBpZiBbICIkQ1JPU1NfQlVJTEQiIF07 IHRoZW4KIAlob3N0bWFrZWRlcGVuZHMrPSIga3BhY2thZ2UtZGV2ZWwga2NvbmZpZy1kZXZlbCBr Y29yZWFkZG9ucy1kZXZlbCIKCkZyb20gYjVlYzkxNzQ4NDE5YTVlNDRhZjg4NWRjM2I4YWViYmNh OTg5M2I1YSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogSm9obiA8am9obnpAcG9zdGVv Lm5ldD4KRGF0ZTogVHVlLCAyOSBPY3QgMjAxOSAyMzowODo0NyArMDEwMApTdWJqZWN0OiBbUEFU Q0ggMDkzLzE4Nl0gYnJlZXplLWd0azogdXBkYXRlIHRvIDUuMTcuMgoKW2NpIHNraXBdCi0tLQog c3JjcGtncy9icmVlemUtZ3RrL3RlbXBsYXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBp bnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvYnJlZXpl LWd0ay90ZW1wbGF0ZSBiL3NyY3BrZ3MvYnJlZXplLWd0ay90ZW1wbGF0ZQppbmRleCA0ZDg4MTA2 YTI4My4uNWJiNDMyNTE5YWIgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvYnJlZXplLWd0ay90ZW1wbGF0 ZQorKysgYi9zcmNwa2dzL2JyZWV6ZS1ndGsvdGVtcGxhdGUKQEAgLTEsNiArMSw2IEBACiAjIFRl bXBsYXRlIGZpbGUgZm9yICdicmVlemUtZ3RrJwogcGtnbmFtZT1icmVlemUtZ3RrCi12ZXJzaW9u PTUuMTcuMQordmVyc2lvbj01LjE3LjIKIHJldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPWNtYWtlCiBo b3N0bWFrZWRlcGVuZHM9ImV4dHJhLWNtYWtlLW1vZHVsZXMgc2Fzc2MgcHl0aG9uMyBweXRob24z LWNhaXJvIgpAQCAtMTAsNyArMTAsNyBAQCBtYWludGFpbmVyPSJKb2huIDxqb2huekBwb3N0ZW8u bmV0PiIKIGxpY2Vuc2U9IkxHUEwtMi4xLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vcHJv amVjdHMua2RlLm9yZy9wcm9qZWN0cy9wbGFzbWEvYnJlZXplLWd0ayIKIGRpc3RmaWxlcz0iJHtL REVfU0lURX0vcGxhc21hLyR7dmVyc2lvbn0vJHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIK LWNoZWNrc3VtPTk1ZjIxNzM5MjBiZjdkMzZiNDA4OTEyYzYyNGQyYTFlZjY0YjdhMTA3OThjZjNh NGZkYzJiZDhmMWU1ZGVmNGQKK2NoZWNrc3VtPWQ4OWZkMDBkZjUxZDg2MzFkMTRiOTkxMzgzOTNh OWRhZjY3OTU5OWFkZTFkMWIyOTk0MDdkYzk2YzE2NDBjMDIKIAogaWYgWyAiJENST1NTX0JVSUxE IiBdOyB0aGVuCiAJaG9zdG1ha2VkZXBlbmRzKz0iIHF0NS1kZXZlbCIKCkZyb20gMzRhNjJlN2Ew YWYyYWViODg3NjkxMzBmNWRjM2FlMDM4Y2EyZDE0NyBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEK RnJvbTogSm9obiA8am9obnpAcG9zdGVvLm5ldD4KRGF0ZTogVHVlLCAyOSBPY3QgMjAxOSAyMzow ODo1MCArMDEwMApTdWJqZWN0OiBbUEFUQ0ggMDk0LzE4Nl0gYnJlZXplOiB1cGRhdGUgdG8gNS4x Ny4yCgpbY2kgc2tpcF0KLS0tCiBzcmNwa2dzL2JyZWV6ZS90ZW1wbGF0ZSB8IDQgKystLQogMSBm aWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQg YS9zcmNwa2dzL2JyZWV6ZS90ZW1wbGF0ZSBiL3NyY3BrZ3MvYnJlZXplL3RlbXBsYXRlCmluZGV4 IGRjMjY1YmQxYzI5Li4wZjQwOWUxMDhlZiAxMDA2NDQKLS0tIGEvc3JjcGtncy9icmVlemUvdGVt cGxhdGUKKysrIGIvc3JjcGtncy9icmVlemUvdGVtcGxhdGUKQEAgLTEsNiArMSw2IEBACiAjIFRl bXBsYXRlIGZpbGUgZm9yICdicmVlemUnCiBwa2duYW1lPWJyZWV6ZQotdmVyc2lvbj01LjE3LjEK K3ZlcnNpb249NS4xNy4yCiByZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1jbWFrZQogY29uZmlndXJl X2FyZ3M9Ii1EQlVJTERfVEVTVElORz1PRkYiCkBAIC0xNCw3ICsxNCw3IEBAIG1haW50YWluZXI9 IkpvaG4gPGpvaG56QHBvc3Rlby5uZXQ+IgogbGljZW5zZT0iR1BMLTIuMC1vci1sYXRlciIKIGhv bWVwYWdlPSJodHRwczovL3Byb2plY3RzLmtkZS5vcmcvcHJvamVjdHMvcGxhc21hL2JyZWV6ZSIK IGRpc3RmaWxlcz0iJHtLREVfU0lURX0vcGxhc21hLyR7dmVyc2lvbn0vJHtwa2duYW1lfS0ke3Zl cnNpb259LnRhci54eiIKLWNoZWNrc3VtPTc5YzcxN2YzNGNjYWFkMTBlNjhjNWRlOGI1MzYzZjBi ZWU3Mzk4NmRlM2UwNmE0Y2Q4Yjc5MDIxNTk3NjFjZTYKK2NoZWNrc3VtPTA0MmQ0MWMwYjEyYWZh NDdhMGZlNmZlNzJjYjIzZWIyMjYxMzEyOTU1MzA3YWI5MDViYTU1MjAxZDgxNGIwOTUKIAogaWYg WyAiJENST1NTX0JVSUxEIiBdOyB0aGVuCiAJaG9zdG1ha2VkZXBlbmRzKz0iIGtwYWNrYWdlLWRl dmVsIGtjb25maWctZGV2ZWwga2NvcmVhZGRvbnMtZGV2ZWwgcGxhc21hLWZyYW1ld29yayIKCkZy b20gOWUxYjM0MjYxZmMyOTExZDRmYjQ3YjViZGViN2FjZTJhMmJjY2Q0OSBNb24gU2VwIDE3IDAw OjAwOjAwIDIwMDEKRnJvbTogSm9obiA8am9obnpAcG9zdGVvLm5ldD4KRGF0ZTogVHVlLCAyOSBP Y3QgMjAxOSAyMzowODo1MiArMDEwMApTdWJqZWN0OiBbUEFUQ0ggMDk1LzE4Nl0ga2FjdGl2aXR5 bWFuYWdlcmQ6IHVwZGF0ZSB0byA1LjE3LjIKCltjaSBza2lwXQotLS0KIHNyY3BrZ3Mva2FjdGl2 aXR5bWFuYWdlcmQvdGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlv bnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9rYWN0aXZpdHltYW5h Z2VyZC90ZW1wbGF0ZSBiL3NyY3BrZ3Mva2FjdGl2aXR5bWFuYWdlcmQvdGVtcGxhdGUKaW5kZXgg MDE0YjE5MTZiZmYuLjJlNjc1MTFkODg5IDEwMDY0NAotLS0gYS9zcmNwa2dzL2thY3Rpdml0eW1h bmFnZXJkL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3Mva2FjdGl2aXR5bWFuYWdlcmQvdGVtcGxhdGUK QEAgLTEsNiArMSw2IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdrYWN0aXZpdHltYW5hZ2VyZCcK IHBrZ25hbWU9a2FjdGl2aXR5bWFuYWdlcmQKLXZlcnNpb249NS4xNy4xCit2ZXJzaW9uPTUuMTcu MgogcmV2aXNpb249MQogYnVpbGRfc3R5bGU9Y21ha2UKIGNvbmZpZ3VyZV9hcmdzPSItREJVSUxE X1RFU1RJTkc9T0ZGIgpAQCAtMTIsNyArMTIsNyBAQCBtYWludGFpbmVyPSJKb2huIDxqb2huekBw b3N0ZW8ubmV0PiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6 Ly9wcm9qZWN0cy5rZGUub3JnL3Byb2plY3RzL3BsYXNtYS9rYWN0aXZpdHltYW5hZ2VyZCIKIGRp c3RmaWxlcz0iJHtLREVfU0lURX0vcGxhc21hLyR7dmVyc2lvbn0vJHtwa2duYW1lfS0ke3ZlcnNp b259LnRhci54eiIKLWNoZWNrc3VtPTJlYWMxYTQxNjIyZTY2MzJjM2E1NjlmMWI4ZDUwNDNmNjQx NDYxMWM0ZGJlYmEyNTIxZWFiZWJlYmQ4ZTUwYjMKK2NoZWNrc3VtPTc0ZGQ2NjkzMTVjZjQxZmJk NzllYzViZDIwOWJkZWY5OTU1MjYzYzYzZWM0YzU1YzVhYjc0MDJhMzVlNDkzNDAKIAogaWYgWyAi JENST1NTX0JVSUxEIiBdOyB0aGVuCiAJY29uZmlndXJlX2FyZ3MrPSIgLURSVU5fUkVTVUxUX1ZB Uj0wIgoKRnJvbSAxN2JkMzYyYzk2MGI5NDZiMDM1NjA3YWVkOWVlODZkOGY1Y2NlNmMzIE1vbiBT ZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBKb2huIDxqb2huekBwb3N0ZW8ubmV0PgpEYXRlOiBU dWUsIDI5IE9jdCAyMDE5IDIzOjA4OjU0ICswMTAwClN1YmplY3Q6IFtQQVRDSCAwOTYvMTg2XSBr ZGUtY2xpLXRvb2xzOiB1cGRhdGUgdG8gNS4xNy4yCgpbY2kgc2tpcF0KLS0tCiBzcmNwa2dzL2tk ZS1jbGktdG9vbHMvdGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlv bnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9rZGUtY2xpLXRvb2xz L3RlbXBsYXRlIGIvc3JjcGtncy9rZGUtY2xpLXRvb2xzL3RlbXBsYXRlCmluZGV4IDMxYTJlYjlm YjIxLi45OGJmYmQ3OGRmOSAxMDA2NDQKLS0tIGEvc3JjcGtncy9rZGUtY2xpLXRvb2xzL3RlbXBs YXRlCisrKyBiL3NyY3BrZ3Mva2RlLWNsaS10b29scy90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAK ICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2tkZS1jbGktdG9vbHMnCiBwa2duYW1lPWtkZS1jbGktdG9v bHMKLXZlcnNpb249NS4xNy4xCit2ZXJzaW9uPTUuMTcuMgogcmV2aXNpb249MQogYnVpbGRfc3R5 bGU9Y21ha2UKIGNvbmZpZ3VyZV9hcmdzPSItREJVSUxEX1RFU1RJTkc9T0ZGIgpAQCAtMTMsNyAr MTMsNyBAQCBtYWludGFpbmVyPSJKb2huIDxqb2huekBwb3N0ZW8ubmV0PiIKIGxpY2Vuc2U9IkxH UEwtMi4xLW9yLWxhdGVyLCBHUEwtMi4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vY2dp dC5rZGUub3JnL2tkZS1jbGktdG9vbHMuZ2l0IgogZGlzdGZpbGVzPSIke0tERV9TSVRFfS9wbGFz bWEvJHt2ZXJzaW9ufS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09ZTI0 YzkxMzQ3YjU3Zjk3YjQ4OWNmNDQ0ZDc5YjNiYjg3MDNhOTg3OWMwNWY2NTZiMzEyZjgzYjEyOTFm NjdhZQorY2hlY2tzdW09ZmI4YTA2MDBiMDZkNmYxYzY2MzQwM2QyNmY1ZjM5NWI5NDk4NGJiOTEy MDc4MDYyYjQyNmY4OTI0ODgwMDgzYwogCiBpZiBbICIkQ1JPU1NfQlVJTEQiIF07IHRoZW4KIAlo b3N0bWFrZWRlcGVuZHMrPSIga2RvY3Rvb2xzIGtjb3JlYWRkb25zIHB5dGhvbiBxdDUtaG9zdC10 b29scyBxdDUtcW1ha2UiCgpGcm9tIGVhOGNjNTE5YTBjZTBkYjgwOTQ5ZGViZDg5NjUxMDFjOGE4 YTc2ZGYgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IEpvaG4gPGpvaG56QHBvc3Rlby5u ZXQ+CkRhdGU6IFR1ZSwgMjkgT2N0IDIwMTkgMjM6MDg6NTYgKzAxMDAKU3ViamVjdDogW1BBVENI IDA5Ny8xODZdIGtkZS1ndGstY29uZmlnNTogdXBkYXRlIHRvIDUuMTcuMgoKW2NpIHNraXBdCi0t LQogc3JjcGtncy9rZGUtZ3RrLWNvbmZpZzUvdGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFu Z2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtn cy9rZGUtZ3RrLWNvbmZpZzUvdGVtcGxhdGUgYi9zcmNwa2dzL2tkZS1ndGstY29uZmlnNS90ZW1w bGF0ZQppbmRleCA3OGU5OGFlNDg0My4uZjRiMjFmMGUzNDkgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3Mv a2RlLWd0ay1jb25maWc1L3RlbXBsYXRlCisrKyBiL3NyY3BrZ3Mva2RlLWd0ay1jb25maWc1L3Rl bXBsYXRlCkBAIC0xLDYgKzEsNiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAna2RlLWd0ay1jb25m aWc1JwogcGtnbmFtZT1rZGUtZ3RrLWNvbmZpZzUKLXZlcnNpb249NS4xNy4xCit2ZXJzaW9uPTUu MTcuMgogcmV2aXNpb249MQogd3Jrc3JjPSIke3BrZ25hbWUlNX0tJHt2ZXJzaW9ufSIKIGJ1aWxk X3N0eWxlPWNtYWtlCkBAIC0xNCw3ICsxNCw3IEBAIG1haW50YWluZXI9IkpvaG4gPGpvaG56QHBv c3Rlby5uZXQ+IgogbGljZW5zZT0iR1BMLTIuMC1vci1sYXRlciwgTEdQTC0yLjEtb3ItbGF0ZXIi CiBob21lcGFnZT0iaHR0cHM6Ly9wcm9qZWN0cy5rZGUub3JnL3Byb2plY3RzL3BsYXNtYS9rZGUt Z3RrLWNvbmZpZyIKIGRpc3RmaWxlcz0iJHtLREVfU0lURX0vcGxhc21hLyR7dmVyc2lvbn0vJHtw a2duYW1lJTV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09MTUwMmNiZDE3ZDliZGExYjk1 NmY2Y2U5MzBjYjZhNWMzYWU5OGM0Zjg0ZTgzM2Y4ZjQ4ZGI0MTU1ZjgzYzhiMAorY2hlY2tzdW09 ODFmNjc4YWY1NDViZTUxMjEyMTYwY2U5YjgyNGIyODJiYjlmNzYyNjY3OWE0YjU0MGI5MzViZjRk NjA2YTFiYQogCiBpZiBbICIkQ1JPU1NfQlVJTEQiIF07IHRoZW4KIAlob3N0bWFrZWRlcGVuZHMr PSIga2NvcmVhZGRvbnMiCgpGcm9tIDM3ZjQ2ZDBhYjM4YmU5OTc0ZjcwYWFmODdiMjRjMjk5MGM5 YzY2OTkgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IEpvaG4gPGpvaG56QHBvc3Rlby5u ZXQ+CkRhdGU6IFR1ZSwgMjkgT2N0IDIwMTkgMjM6MDg6NTggKzAxMDAKU3ViamVjdDogW1BBVENI IDA5OC8xODZdIGtkZWNvcmF0aW9uOiB1cGRhdGUgdG8gNS4xNy4yCgpbY2kgc2tpcF0KLS0tCiBz cmNwa2dzL2tkZWNvcmF0aW9uL3RlbXBsYXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBp bnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mva2RlY29y YXRpb24vdGVtcGxhdGUgYi9zcmNwa2dzL2tkZWNvcmF0aW9uL3RlbXBsYXRlCmluZGV4IGJkYTc5 NzFkN2M3Li45ZmY2ZTMzNTUwYyAxMDA2NDQKLS0tIGEvc3JjcGtncy9rZGVjb3JhdGlvbi90ZW1w bGF0ZQorKysgYi9zcmNwa2dzL2tkZWNvcmF0aW9uL3RlbXBsYXRlCkBAIC0xLDYgKzEsNiBAQAog IyBUZW1wbGF0ZSBmaWxlIGZvciAna2RlY29yYXRpb24nCiBwa2duYW1lPWtkZWNvcmF0aW9uCi12 ZXJzaW9uPTUuMTcuMQordmVyc2lvbj01LjE3LjIKIHJldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPWNt YWtlCiBjb25maWd1cmVfYXJncz0iLURCVUlMRF9URVNUSU5HPU9GRiIKQEAgLTExLDcgKzExLDcg QEAgbWFpbnRhaW5lcj0iSm9obiA8am9obnpAcG9zdGVvLm5ldD4iCiBsaWNlbnNlPSJMR1BMLTIu MS1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL3Byb2plY3RzLmtkZS5vcmcvcHJvamVjdHMv cGxhc21hL2tkZWNvcmF0aW9uIgogZGlzdGZpbGVzPSIke0tERV9TSVRFfS9wbGFzbWEvJHt2ZXJz aW9ufS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09NGY4ZjdkODUxYjE5 ZTE0MWU5MWVhZGI0ZGRiZjJmZWYyZDY0OTY4MzlhOTI5MzQ5YTE1NjhkNjE4YmIwYmUzOQorY2hl Y2tzdW09ODA4NDIzNjY4MDVkMzg1NTdhYWM5M2M3NDdlM2EyMGJjYzc3OGRmZDQxYjdmZDJmZWNj OTYxNTljYjkwNmMxMQogCiBrZGVjb3JhdGlvbi1kZXZlbF9wYWNrYWdlKCkgewogCXNob3J0X2Rl c2MrPSIgLSBkZXZlbG9wbWVudCIKCkZyb20gMzE1MWEzMTFiODc2Y2FlZjc5NTg0OGEwZTNkOTAx YjlhMTI1ZjNlMiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogSm9obiA8am9obnpAcG9z dGVvLm5ldD4KRGF0ZTogVHVlLCAyOSBPY3QgMjAxOSAyMzowOTowMCArMDEwMApTdWJqZWN0OiBb UEFUQ0ggMDk5LzE4Nl0ga2RlcGxhc21hLWFkZG9uczU6IHVwZGF0ZSB0byA1LjE3LjIKCltjaSBz a2lwXQotLS0KIHNyY3BrZ3Mva2RlcGxhc21hLWFkZG9uczUvdGVtcGxhdGUgfCA0ICsrLS0KIDEg ZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0 IGEvc3JjcGtncy9rZGVwbGFzbWEtYWRkb25zNS90ZW1wbGF0ZSBiL3NyY3BrZ3Mva2RlcGxhc21h LWFkZG9uczUvdGVtcGxhdGUKaW5kZXggZWRmNTZjMDllOWQuLjJmMTBlMTIzNzQ1IDEwMDY0NAot LS0gYS9zcmNwa2dzL2tkZXBsYXNtYS1hZGRvbnM1L3RlbXBsYXRlCisrKyBiL3NyY3BrZ3Mva2Rl cGxhc21hLWFkZG9uczUvdGVtcGxhdGUKQEAgLTEsNiArMSw2IEBACiAjIFRlbXBsYXRlIGZpbGUg Zm9yICdrZGVwbGFzbWEtYWRkb25zNScKIHBrZ25hbWU9a2RlcGxhc21hLWFkZG9uczUKLXZlcnNp b249NS4xNy4xCit2ZXJzaW9uPTUuMTcuMgogcmV2aXNpb249MQogd3Jrc3JjPSIke3BrZ25hbWUl NX0tJHt2ZXJzaW9ufSIKIGJ1aWxkX3N0eWxlPWNtYWtlCkBAIC0xMyw3ICsxMyw3IEBAIG1haW50 YWluZXI9IkpvaG4gPGpvaG56QHBvc3Rlby5uZXQ+IgogbGljZW5zZT0iR1BMLTIuMC1vci1sYXRl ciwgTEdQTC0yLjEtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6Ly9wcm9qZWN0cy5rZGUub3Jn L3Byb2plY3RzL3BsYXNtYS9rZGVwbGFzbWEtYWRkb25zIgogZGlzdGZpbGVzPSIke0tERV9TSVRF fS9wbGFzbWEvJHt2ZXJzaW9ufS8ke3BrZ25hbWUlNX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVj a3N1bT1mMWU3Njg1YzNlZmE1NjI1ZDhmM2UwNTQ3N2JiMjVmNWMyYzI1ZmMxZjA0NWE0ZmJhZmNk MDQ4NTFlOTRiN2YwCitjaGVja3N1bT0wNTk0NjI5OWUyYTU4ZDkyM2ViMDY2N2ZjZGIwYzE5ZWNk NDVlZDRhMjQyYjM2NGFjMWYwNDBiYjc3MGI1YTliCiAKIGlmIFsgIiRDUk9TU19CVUlMRCIgXTsg dGhlbgogCWhvc3RtYWtlZGVwZW5kcys9IiBrcGFja2FnZS1kZXZlbCBrY29uZmlnLWRldmVsIGtj b3JlYWRkb25zLWRldmVsIHBsYXNtYS1mcmFtZXdvcmsiCgpGcm9tIGQ3MjczZTRhM2FlMWNhYWI1 YzllYjBkNTQ3MWU2NTlmZGQ1MDQwN2QgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IEpv aG4gPGpvaG56QHBvc3Rlby5uZXQ+CkRhdGU6IFR1ZSwgMjkgT2N0IDIwMTkgMjM6MDk6MDIgKzAx MDAKU3ViamVjdDogW1BBVENIIDEwMC8xODZdIGtnYW1tYTU6IHVwZGF0ZSB0byA1LjE3LjIKCltj aSBza2lwXQotLS0KIHNyY3BrZ3Mva2dhbW1hNS90ZW1wbGF0ZSB8IDQgKystLQogMSBmaWxlIGNo YW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNw a2dzL2tnYW1tYTUvdGVtcGxhdGUgYi9zcmNwa2dzL2tnYW1tYTUvdGVtcGxhdGUKaW5kZXggNTZi NWM5NzBmNjcuLjY2YTQ4NTg0ZjNmIDEwMDY0NAotLS0gYS9zcmNwa2dzL2tnYW1tYTUvdGVtcGxh dGUKKysrIGIvc3JjcGtncy9rZ2FtbWE1L3RlbXBsYXRlCkBAIC0xLDYgKzEsNiBAQAogIyBUZW1w bGF0ZSBmaWxlIGZvciAna2dhbW1hNScKIHBrZ25hbWU9a2dhbW1hNQotdmVyc2lvbj01LjE3LjEK K3ZlcnNpb249NS4xNy4yCiByZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1jbWFrZQogY29uZmlndXJl X2FyZ3M9Ii1EQlVJTERfVEVTVElORz1PRkYiCkBAIC0xMSw3ICsxMSw3IEBAIG1haW50YWluZXI9 IkpvaG4gPGpvaG56QHBvc3Rlby5uZXQ+IgogbGljZW5zZT0iR1BMLTIuMC1vci1sYXRlciIKIGhv bWVwYWdlPSJodHRwczovL3Byb2plY3RzLmtkZS5vcmcvcHJvamVjdHMvcGxhc21hL2tnYW1tYTUi CiBkaXN0ZmlsZXM9IiR7S0RFX1NJVEV9L3BsYXNtYS8ke3ZlcnNpb259LyR7cGtnbmFtZX0tJHt2 ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT00MmM3MDkyN2QzZmYwZDIyNGExM2JhNmYxZTRiN2Fl NDdiOTg2M2ZhOTM3MmUxOGEwMmRkNjUzODY4ZGUzYmE4CitjaGVja3N1bT1mY2E3MzFmMmFiYzgy NTY2ZWM1ZjE1ZDY5NzE3MWRlMDBlZmU3NGMwYjQ0YTQxNDc4NzcyNDI0NmJkNWFkZjVjCiAKIGlm IFsgIiRDUk9TU19CVUlMRCIgXTsgdGhlbgogCWhvc3RtYWtlZGVwZW5kcys9IiBxdDUtZGV2ZWwg a2RvY3Rvb2xzIgoKRnJvbSBlMGVmYjVlMTE1NTkzMzdmYmM4ZjNlYTNmYTVjMGUzNjVjZDQ5MjM5 IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBKb2huIDxqb2huekBwb3N0ZW8ubmV0PgpE YXRlOiBUdWUsIDI5IE9jdCAyMDE5IDIzOjA5OjA0ICswMTAwClN1YmplY3Q6IFtQQVRDSCAxMDEv MTg2XSBraG90a2V5czogdXBkYXRlIHRvIDUuMTcuMgoKW2NpIHNraXBdCi0tLQogc3JjcGtncy9r aG90a2V5cy90ZW1wbGF0ZSB8IDQgKystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygr KSwgMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2tob3RrZXlzL3RlbXBsYXRl IGIvc3JjcGtncy9raG90a2V5cy90ZW1wbGF0ZQppbmRleCA5NDY3NjEyZDExZS4uNjg4NjBkMmY2 ZjUgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3Mva2hvdGtleXMvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9r aG90a2V5cy90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2to b3RrZXlzJwogcGtnbmFtZT1raG90a2V5cwotdmVyc2lvbj01LjE3LjEKK3ZlcnNpb249NS4xNy4y CiByZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1jbWFrZQogY29uZmlndXJlX2FyZ3M9Ii1EQlVJTERf VEVTVElORz1PRkYiCkBAIC0xMiw3ICsxMiw3IEBAIG1haW50YWluZXI9IkpvaG4gPGpvaG56QHBv c3Rlby5uZXQ+IgogbGljZW5zZT0iR1BMLTIuMC1vbmx5LCBMR1BMLTIuMC1vci1sYXRlciIKIGhv bWVwYWdlPSJodHRwczovL3Byb2plY3RzLmtkZS5vcmcvcHJvamVjdHMvcGxhc21hL2tob3RrZXlz IgogZGlzdGZpbGVzPSIke0tERV9TSVRFfS9wbGFzbWEvJHt2ZXJzaW9ufS8ke3BrZ25hbWV9LSR7 dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09MWQ3YmY3YWY4M2Y5ZDMzMTIyZGUzZmUzM2Q4MzFk MGRiNWJlMzBkZTJjYWIzYTdjYTNmOGYwODYwOThiOWY3MgorY2hlY2tzdW09ZWNkMDFjMjM1ZTk4 OTVkMWU3YjhjYmZmOGJhYTZmZjUzYTk5YWUyZDhiYzJjNGMxMGVmMDZhYzE1ZTQ3YjU4MgogCiBp ZiBbICIkQ1JPU1NfQlVJTEQiIF07IHRoZW4KIAljb25maWd1cmVfYXJncys9IiAtRERFU0tUT1BU T0pTT05fRVhFQ1VUQUJMRT0vdXNyL2Jpbi9kZXNrdG9wdG9qc29uIgoKRnJvbSAwN2Y3NzE3YjRi ZjllZWU5M2U0ZDc4NTJhZjVmNmNmNjZkMTQxOGE2IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpG cm9tOiBKb2huIDxqb2huekBwb3N0ZW8ubmV0PgpEYXRlOiBUdWUsIDI5IE9jdCAyMDE5IDIzOjA5 OjA2ICswMTAwClN1YmplY3Q6IFtQQVRDSCAxMDIvMTg2XSBraW5mb2NlbnRlcjogdXBkYXRlIHRv IDUuMTcuMgoKW2NpIHNraXBdCi0tLQogc3JjcGtncy9raW5mb2NlbnRlci90ZW1wbGF0ZSB8IDQg KystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRp ZmYgLS1naXQgYS9zcmNwa2dzL2tpbmZvY2VudGVyL3RlbXBsYXRlIGIvc3JjcGtncy9raW5mb2Nl bnRlci90ZW1wbGF0ZQppbmRleCAxYWUwMGQ4YTRlNS4uNzllMjcwZjA3MWQgMTAwNjQ0Ci0tLSBh L3NyY3BrZ3Mva2luZm9jZW50ZXIvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9raW5mb2NlbnRlci90 ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2tpbmZvY2VudGVy JwogcGtnbmFtZT1raW5mb2NlbnRlcgotdmVyc2lvbj01LjE3LjEKK3ZlcnNpb249NS4xNy4yCiBy ZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1jbWFrZQogY29uZmlndXJlX2FyZ3M9Ii1EQlVJTERfVEVT VElORz1PRkYiCkBAIC0xMyw3ICsxMyw3IEBAIG1haW50YWluZXI9IkpvaG4gPGpvaG56QHBvc3Rl by5uZXQ+IgogbGljZW5zZT0iR1BMLTIuMC1vci1sYXRlciwgTEdQTC0yLjEtb3ItbGF0ZXIsIEdG REwtMS4yIgogaG9tZXBhZ2U9Imh0dHBzOi8vcHJvamVjdHMua2RlLm9yZy9wcm9qZWN0cy9wbGFz bWEva2luZm9jZW50ZXIiCiBkaXN0ZmlsZXM9IiR7S0RFX1NJVEV9L3BsYXNtYS8ke3ZlcnNpb259 LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT0yYmFiNzgwZGZjNWVmMjQy ZTJiNWRlY2QzYTIxMzI5NDMyM2RiNTgzMGQ3YWZhZDA5YTVkYjAxMWNlNDcwYThlCitjaGVja3N1 bT0xNjkxZGY3OTFhNjA5NTcyZmNmMDlmOTUyYjk4YmFmZjBhNTFkOTUwMDg4ZTI1ZTIxMjcxMGFh ZmY5ZGM0ZTdlCiAKIGlmIFsgIiRDUk9TU19CVUlMRCIgXTsgdGhlbgogCWhvc3RtYWtlZGVwZW5k cys9IiBrcGFja2FnZS1kZXZlbCBrY29uZmlnLWRldmVsIGtjb3JlYWRkb25zLWRldmVsIGtkb2N0 b29scy1kZXZlbCIKCkZyb20gYTQyMjhiNGQ0MWEzNzA1OWRmYzdjMTI3M2ZjYTNmNmY5MGQwNzkz ZCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogSm9obiA8am9obnpAcG9zdGVvLm5ldD4K RGF0ZTogVHVlLCAyOSBPY3QgMjAxOSAyMzowOTowOSArMDEwMApTdWJqZWN0OiBbUEFUQ0ggMTAz LzE4Nl0ga21lbnVlZGl0OiB1cGRhdGUgdG8gNS4xNy4yCgpbY2kgc2tpcF0KLS0tCiBzcmNwa2dz L2ttZW51ZWRpdC90ZW1wbGF0ZSB8IDQgKystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9u cygrKSwgMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2ttZW51ZWRpdC90ZW1w bGF0ZSBiL3NyY3BrZ3Mva21lbnVlZGl0L3RlbXBsYXRlCmluZGV4IDFlM2EyZDk3YzdkLi4wZjIx YjIzYWY1NSAxMDA2NDQKLS0tIGEvc3JjcGtncy9rbWVudWVkaXQvdGVtcGxhdGUKKysrIGIvc3Jj cGtncy9rbWVudWVkaXQvdGVtcGxhdGUKQEAgLTEsNiArMSw2IEBACiAjIFRlbXBsYXRlIGZpbGUg Zm9yICdrbWVudWVkaXQnCiBwa2duYW1lPWttZW51ZWRpdAotdmVyc2lvbj01LjE3LjEKK3ZlcnNp b249NS4xNy4yCiByZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1jbWFrZQogY29uZmlndXJlX2FyZ3M9 Ii1EQlVJTERfVEVTVElORz1PRkYiCkBAIC0xMyw0ICsxMyw0IEBAIG1haW50YWluZXI9IkpvaG4g PGpvaG56QHBvc3Rlby5uZXQ+IgogbGljZW5zZT0iR1BMLTIiCiBob21lcGFnZT0iaHR0cHM6Ly9w cm9qZWN0cy5rZGUub3JnL3Byb2plY3RzL3BsYXNtYS9rbWVudWVkaXQiCiBkaXN0ZmlsZXM9IiR7 S0RFX1NJVEV9L3BsYXNtYS8ke3ZlcnNpb259LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoi Ci1jaGVja3N1bT05MGJkNGM0MDNlZTNjZTIxNjE2ZjUwMTY0MDFhMTg1MWQ4ZTczNzVhMWU5Y2Q2 YjA0ZjAyMTNjY2NlMTVlYjc2CitjaGVja3N1bT1hOTllNDk4NWNlMjU5MWQ4ZDdmNmI0NDRmMzIz Y2E3MDlmNjhjYWEzYmVlMzM0ZmQ4ZTVjYTZhZmFmYzc1MDNmCgpGcm9tIDEzMDA3OGI0MWY4YWUy ZjY1ODcxOTI0MTNhOWZlYjg2MDFiOTU1YTAgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206 IEpvaG4gPGpvaG56QHBvc3Rlby5uZXQ+CkRhdGU6IFR1ZSwgMjkgT2N0IDIwMTkgMjM6MDk6MTEg KzAxMDAKU3ViamVjdDogW1BBVENIIDEwNC8xODZdIGtzY3JlZW46IHVwZGF0ZSB0byA1LjE3LjIK CltjaSBza2lwXQotLS0KIHNyY3BrZ3Mva3NjcmVlbi90ZW1wbGF0ZSB8IDQgKystLQogMSBmaWxl IGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9z cmNwa2dzL2tzY3JlZW4vdGVtcGxhdGUgYi9zcmNwa2dzL2tzY3JlZW4vdGVtcGxhdGUKaW5kZXgg MDI4MjdiM2ZmNjAuLjllZDRmYWQwNzFkIDEwMDY0NAotLS0gYS9zcmNwa2dzL2tzY3JlZW4vdGVt cGxhdGUKKysrIGIvc3JjcGtncy9rc2NyZWVuL3RlbXBsYXRlCkBAIC0xLDYgKzEsNiBAQAogIyBU ZW1wbGF0ZSBmaWxlIGZvciAna3NjcmVlbicKIHBrZ25hbWU9a3NjcmVlbgotdmVyc2lvbj01LjE3 LjEKK3ZlcnNpb249NS4xNy4yCiByZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1jbWFrZQogY29uZmln dXJlX2FyZ3M9Ii1EQlVJTERfVEVTVElORz1PRkYiCkBAIC0xNCw3ICsxNCw3IEBAIG1haW50YWlu ZXI9IkpvaG4gPGpvaG56QHBvc3Rlby5uZXQ+IgogbGljZW5zZT0iR1BMLTIuMC1vci1sYXRlciwg TEdQTC0yLjEtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6Ly9wcm9qZWN0cy5rZGUub3JnL3By b2plY3RzL3BsYXNtYS9rc2NyZWVuIgogZGlzdGZpbGVzPSIke0tERV9TSVRFfS9wbGFzbWEvJHt2 ZXJzaW9ufS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09ODU5ZGJkZDdl NmZmOGQxYTY4ZjJjYzAwNGFjMmM5YWM2NDdjYjBhMmM3MWFmOGE1NmFiZWIyNjBmYjhhNjBjYQor Y2hlY2tzdW09MGM3YWQ1OWViZjg5Y2JmNzRhNzQ4YWFjNmM3ZDA4MDA3YjQ4MTcwZDFjMThhZmZi ZjJiMjMwODA5ZTQ4Nzk1NwogCiBpZiBbICIkQ1JPU1NfQlVJTEQiIF07IHRoZW4KIAlob3N0bWFr ZWRlcGVuZHMrPSIga3BhY2thZ2UtZGV2ZWwga2NvbmZpZy1kZXZlbCBrY29yZWFkZG9ucy1kZXZl bCBwbGFzbWEtZnJhbWV3b3JrIgoKRnJvbSBiYTNlMjk3OTgyN2EwODRlNTE2ZGZiNzg4M2ZiNDMw ZTQzYTMzNmI2IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBKb2huIDxqb2huekBwb3N0 ZW8ubmV0PgpEYXRlOiBUdWUsIDI5IE9jdCAyMDE5IDIzOjA5OjEzICswMTAwClN1YmplY3Q6IFtQ QVRDSCAxMDUvMTg2XSBrc2NyZWVubG9ja2VyOiB1cGRhdGUgdG8gNS4xNy4yCgpbY2kgc2tpcF0K LS0tCiBzcmNwa2dzL2tzY3JlZW5sb2NrZXIvdGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFu Z2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtn cy9rc2NyZWVubG9ja2VyL3RlbXBsYXRlIGIvc3JjcGtncy9rc2NyZWVubG9ja2VyL3RlbXBsYXRl CmluZGV4IGI4NTNhZTc5M2U0Li43OGQ5MWY2ZWQyOSAxMDA2NDQKLS0tIGEvc3JjcGtncy9rc2Ny ZWVubG9ja2VyL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3Mva3NjcmVlbmxvY2tlci90ZW1wbGF0ZQpA QCAtMSw2ICsxLDYgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2tzY3JlZW5sb2NrZXInCiBwa2du YW1lPWtzY3JlZW5sb2NrZXIKLXZlcnNpb249NS4xNy4xCit2ZXJzaW9uPTUuMTcuMgogcmV2aXNp b249MQogYnVpbGRfc3R5bGU9Y21ha2UKIGNvbmZpZ3VyZV9hcmdzPSItREJVSUxEX1RFU1RJTkc9 T0ZGIgpAQCAtMTMsNyArMTMsNyBAQCBtYWludGFpbmVyPSJKb2huIDxqb2huekBwb3N0ZW8ubmV0 PiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6Ly9wcm9qZWN0 cy5rZGUub3JnL3Byb2plY3RzL3BsYXNtYS9rc2NyZWVubG9ja2VyIgogZGlzdGZpbGVzPSIke0tE RV9TSVRFfS9wbGFzbWEvJHt2ZXJzaW9ufS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6Igot Y2hlY2tzdW09NTZhMGVkMzI4NGMzY2UwODdkMzIzMDc4OWJhYzViMDI1MDVlN2VkOTc5NWZhMzdj ZTk5MzRiYzUwOTA2NzNlNAorY2hlY2tzdW09YTExNjc5NGEyOWNlNDRjZDE3ODU1YjI3MWE5ODhk OWE3MDEzOGZkYTI4NjkwNmExNjFjYjRkZGU0ZmI5ZTM1NwogCiBpZiBbICIkQ1JPU1NfQlVJTEQi IF07IHRoZW4KIAlob3N0bWFrZWRlcGVuZHMrPSIgd2F5bGFuZC1kZXZlbCIKCkZyb20gNDk0Yzc2 Y2I1MmM4MGMzZTU5Nzk3YThlNDgwNTZjYjE3YjhjODM4OCBNb24gU2VwIDE3IDAwOjAwOjAwIDIw MDEKRnJvbTogSm9obiA8am9obnpAcG9zdGVvLm5ldD4KRGF0ZTogVHVlLCAyOSBPY3QgMjAxOSAy MzowOToxNSArMDEwMApTdWJqZWN0OiBbUEFUQ0ggMTA2LzE4Nl0ga3NzaGFza3Bhc3M6IHVwZGF0 ZSB0byA1LjE3LjIKCltjaSBza2lwXQotLS0KIHNyY3BrZ3Mva3NzaGFza3Bhc3MvdGVtcGxhdGUg fCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0p CgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9rc3NoYXNrcGFzcy90ZW1wbGF0ZSBiL3NyY3BrZ3Mva3Nz aGFza3Bhc3MvdGVtcGxhdGUKaW5kZXggMjUwMTM1ZWY3MTIuLjNkMjI1NjZmNjBhIDEwMDY0NAot LS0gYS9zcmNwa2dzL2tzc2hhc2twYXNzL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3Mva3NzaGFza3Bh c3MvdGVtcGxhdGUKQEAgLTEsNiArMSw2IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdrc3NoYXNr cGFzcycKIHBrZ25hbWU9a3NzaGFza3Bhc3MKLXZlcnNpb249NS4xNy4xCit2ZXJzaW9uPTUuMTcu MgogcmV2aXNpb249MQogYnVpbGRfc3R5bGU9Y21ha2UKIGNvbmZpZ3VyZV9hcmdzPSItREJVSUxE X1RFU1RJTkc9T0ZGIgpAQCAtMTEsNCArMTEsNCBAQCBtYWludGFpbmVyPSJKb2huIDxqb2huekBw b3N0ZW8ubmV0PiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6 Ly9wcm9qZWN0cy5rZGUub3JnL3Byb2plY3RzL3BsYXNtYS9rc3NoYXNrcGFzcyIKIGRpc3RmaWxl cz0iJHtLREVfU0lURX0vcGxhc21hLyR7dmVyc2lvbn0vJHtwa2duYW1lfS0ke3ZlcnNpb259LnRh ci54eiIKLWNoZWNrc3VtPWNlMDAzMjY0YTlhNzU2OTI0YmY2YzM2MGZkMjBiZjBmNWYyMTJmNTQ2 OWZjNWQyOTFkZTIyNjlkMTA3NjRmMjQKK2NoZWNrc3VtPWEyMGFhYzdiYTVjMWRmNmM3MmZhOWNm Yzk1NzM2OThjOWM1NGU4ZjhmNmI0NzI3ZjNhNTBhYzVmMGZhZjQwOTMKCkZyb20gMjBmNzI0Yjhm ZWEzODBhMTY3NTJlMGVmNGJjOWRhNTFiNjVkN2NkZCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEK RnJvbTogSm9obiA8am9obnpAcG9zdGVvLm5ldD4KRGF0ZTogVHVlLCAyOSBPY3QgMjAxOSAyMzow OToxNyArMDEwMApTdWJqZWN0OiBbUEFUQ0ggMTA3LzE4Nl0ga3N5c2d1YXJkOiB1cGRhdGUgdG8g NS4xNy4yCgpbY2kgc2tpcF0KLS0tCiBzcmNwa2dzL2tzeXNndWFyZC90ZW1wbGF0ZSB8IDQgKyst LQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRpZmYg LS1naXQgYS9zcmNwa2dzL2tzeXNndWFyZC90ZW1wbGF0ZSBiL3NyY3BrZ3Mva3N5c2d1YXJkL3Rl bXBsYXRlCmluZGV4IDc0MDZlNTNmNzVlLi4wYzAwMzk3YzRkNyAxMDA2NDQKLS0tIGEvc3JjcGtn cy9rc3lzZ3VhcmQvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9rc3lzZ3VhcmQvdGVtcGxhdGUKQEAg LTEsNiArMSw2IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdrc3lzZ3VhcmQnCiBwa2duYW1lPWtz eXNndWFyZAotdmVyc2lvbj01LjE3LjEKK3ZlcnNpb249NS4xNy4yCiByZXZpc2lvbj0xCiBidWls ZF9zdHlsZT1jbWFrZQogY29uZmlndXJlX2FyZ3M9Ii1EQlVJTERfVEVTVElORz1PRkYiCkBAIC0x Myw0ICsxMyw0IEBAIG1haW50YWluZXI9IkpvaG4gPGpvaG56QHBvc3Rlby5uZXQ+IgogbGljZW5z ZT0iR1BMLTIuMC1vci1sYXRlciwgR0ZETC0xLjIiCiBob21lcGFnZT0iaHR0cHM6Ly9wcm9qZWN0 cy5rZGUub3JnL3Byb2plY3RzL3BsYXNtYS9rc3lzZ3VhcmQiCiBkaXN0ZmlsZXM9IiR7S0RFX1NJ VEV9L3BsYXNtYS8ke3ZlcnNpb259LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVj a3N1bT00NGJkMjhiNmJkZGRkOTIwODM5MjMzNGVkNmJiYTRiMTdiNDJmNzBjNjVkZmU3NjY4YWVj YWI3YzY3MTExYzllCitjaGVja3N1bT04ZGFiOTUzMWQxM2VjNGEwMGMzYTY1YjA4NzcxNDMzY2Vk MGI1ZWQ2MzZiZWFiMmY5ODMwYjM3MmQ5ZjRmYzEyCgpGcm9tIDAxZDk4MjI2ZjUwYmZiYmViN2Iw ZmJiMThmNTk3MjI5OTYyMjE2YTAgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IEpvaG4g PGpvaG56QHBvc3Rlby5uZXQ+CkRhdGU6IFR1ZSwgMjkgT2N0IDIwMTkgMjM6MDk6MTkgKzAxMDAK U3ViamVjdDogW1BBVENIIDEwOC8xODZdIGt3YWxsZXQtcGFtOiB1cGRhdGUgdG8gNS4xNy4yCgpb Y2kgc2tpcF0KLS0tCiBzcmNwa2dzL2t3YWxsZXQtcGFtL3RlbXBsYXRlIHwgNCArKy0tCiAxIGZp bGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBh L3NyY3BrZ3Mva3dhbGxldC1wYW0vdGVtcGxhdGUgYi9zcmNwa2dzL2t3YWxsZXQtcGFtL3RlbXBs YXRlCmluZGV4IDY0YmI2M2RiZjI0Li5hY2M5NzJlMzNjZSAxMDA2NDQKLS0tIGEvc3JjcGtncy9r d2FsbGV0LXBhbS90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2t3YWxsZXQtcGFtL3RlbXBsYXRlCkBA IC0xLDYgKzEsNiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAna3dhbGxldC1wYW0nCiBwa2duYW1l PWt3YWxsZXQtcGFtCi12ZXJzaW9uPTUuMTcuMQordmVyc2lvbj01LjE3LjIKIHJldmlzaW9uPTEK IGJ1aWxkX3N0eWxlPWNtYWtlCiBob3N0bWFrZWRlcGVuZHM9InF0NS1xbWFrZSBxdDUtaG9zdC10 b29scyBleHRyYS1jbWFrZS1tb2R1bGVzIgpAQCAtMTEsNCArMTEsNCBAQCBtYWludGFpbmVyPSJK b2huIDxqb2huekBwb3N0ZW8ubmV0PiIKIGxpY2Vuc2U9IkxHUEwtMi4xLW9yLWxhdGVyIgogaG9t ZXBhZ2U9Imh0dHBzOi8vcHJvamVjdHMua2RlLm9yZy9wcm9qZWN0cy9wbGFzbWEva3dhbGxldC1w YW0iCiBkaXN0ZmlsZXM9IiR7S0RFX1NJVEV9L3BsYXNtYS8ke3ZlcnNpb259LyR7cGtnbmFtZX0t JHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT1mNGE3MTNlNWIwM2Q5Nzk2Nzg5MDQ0NzZiMGM1 NzU5ZjdjMzBkYzhiZjFkODgzYmQ4MDQ0ZTI3NTU5ODVjNDlmCitjaGVja3N1bT05MmQ5NDI4NmUz YzQzMTY4NTFmMWE0MzAxMGNlNGRjODEzYjZlOGY3NGViOTkwODQ5ZjBmYTM5MjM0MGZkZjdhCgpG cm9tIDViM2ZjNmE3MjdjNmJiNWMwNzk5NDkwMzkxMTgwOWY1ZGQyNjQ3NWYgTW9uIFNlcCAxNyAw MDowMDowMCAyMDAxCkZyb206IEpvaG4gPGpvaG56QHBvc3Rlby5uZXQ+CkRhdGU6IFR1ZSwgMjkg T2N0IDIwMTkgMjM6MDk6MjEgKzAxMDAKU3ViamVjdDogW1BBVENIIDEwOS8xODZdIGt3YXlsYW5k LWludGVncmF0aW9uOiB1cGRhdGUgdG8gNS4xNy4yCgpbY2kgc2tpcF0KLS0tCiBzcmNwa2dzL2t3 YXlsYW5kLWludGVncmF0aW9uL3RlbXBsYXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBp bnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mva3dheWxh bmQtaW50ZWdyYXRpb24vdGVtcGxhdGUgYi9zcmNwa2dzL2t3YXlsYW5kLWludGVncmF0aW9uL3Rl bXBsYXRlCmluZGV4IGUzOGFmODZhMGE0Li40OGRiMmNmYjc0ZSAxMDA2NDQKLS0tIGEvc3JjcGtn cy9rd2F5bGFuZC1pbnRlZ3JhdGlvbi90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2t3YXlsYW5kLWlu dGVncmF0aW9uL3RlbXBsYXRlCkBAIC0xLDYgKzEsNiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAn a3dheWxhbmQtaW50ZWdyYXRpb24nCiBwa2duYW1lPWt3YXlsYW5kLWludGVncmF0aW9uCi12ZXJz aW9uPTUuMTcuMQordmVyc2lvbj01LjE3LjIKIHJldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPWNtYWtl CiBjb25maWd1cmVfYXJncz0iLURCVUlMRF9URVNUSU5HPU9GRiIKQEAgLTExLDQgKzExLDQgQEAg bWFpbnRhaW5lcj0iSm9obiA8am9obnpAcG9zdGVvLm5ldD4iCiBsaWNlbnNlPSJMR1BMLTIuMS1v ci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL3Byb2plY3RzLmtkZS5vcmcvcHJvamVjdHMvcGxh c21hL2t3YXlsYW5kLWludGVncmF0aW9uIgogZGlzdGZpbGVzPSIke0tERV9TSVRFfS9wbGFzbWEv JHt2ZXJzaW9ufS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09MzlhYWQ0 ZWYxNWJmOTYwNjI2YTExYmU1MmIwMDU2Y2JkOTQ1ZjUzNDA5Mjc1ZTY2ODY2NWVhNjM2OWY4YWI5 MAorY2hlY2tzdW09Mjc3NDBjMjQxZDdiMTRjZTRhYzlkN2I5OTlkOGVkNzUwMTFhNjhmZGZjOGYy YTNkZjY2MmQ2MDc4ZWQxMjNhNwoKRnJvbSBmZmY0NGYxYjVjMGY3ZmFhOGMzNTE2YmM1NWI0NzRk ODk5Yzc4NmJiIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBKb2huIDxqb2huekBwb3N0 ZW8ubmV0PgpEYXRlOiBUdWUsIDI5IE9jdCAyMDE5IDIzOjA5OjI0ICswMTAwClN1YmplY3Q6IFtQ QVRDSCAxMTAvMTg2XSBrd2luOiB1cGRhdGUgdG8gNS4xNy4yCgpbY2kgc2tpcF0KLS0tCiBzcmNw a2dzL2t3aW4vdGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMo KyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9rd2luL3RlbXBsYXRlIGIv c3JjcGtncy9rd2luL3RlbXBsYXRlCmluZGV4IDY5ZjEzNGZiOTRkLi40YjFmYjc2ZjllOSAxMDA2 NDQKLS0tIGEvc3JjcGtncy9rd2luL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3Mva3dpbi90ZW1wbGF0 ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2t3aW4nCiBwa2duYW1lPWt3 aW4KLXZlcnNpb249NS4xNy4xCit2ZXJzaW9uPTUuMTcuMgogcmV2aXNpb249MQogYnVpbGRfc3R5 bGU9Y21ha2UKIGNvbmZpZ3VyZV9hcmdzPSItREJVSUxEX1RFU1RJTkc9T0ZGIgpAQCAtMTUsNyAr MTUsNyBAQCBtYWludGFpbmVyPSJKb2huIDxqb2huekBwb3N0ZW8ubmV0PiIKIGxpY2Vuc2U9IkdQ TC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6Ly9wcm9qZWN0cy5rZGUub3JnL3Byb2pl Y3RzL3BsYXNtYS9rd2luIgogZGlzdGZpbGVzPSIke0tERV9TSVRFfS9wbGFzbWEvJHt2ZXJzaW9u fS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09OWJlNjIyMTE2ZDRhMzli Njk5ZjQzZTE0N2EzMTg3MmQxZDhhODBlZGE1YjU0MjZkN2U0MjcyZDhjZmFjZGNkNQorY2hlY2tz dW09OTg3YTYwMzViODU0OTcxOTM5OTZkMzkxNzQyMTAxMmFjMTY0NTFkNGM5MzVlMGQxZmVmMDE0 ZDhjZmQ1N2RiOAogCiBpZiBbICIkQ1JPU1NfQlVJTEQiIF07IHRoZW4KIAlob3N0bWFrZWRlcGVu ZHMrPSIgcXQ1LXFtYWtlIHF0NS1ob3N0LXRvb2xzIGtjb3JlYWRkb25zIGtjb25maWciCgpGcm9t IGMxNTJhMzE4NTVjMjUwZGNjMjY2YzdmNjdhOGJjMjIzMjc1YzcyNjggTW9uIFNlcCAxNyAwMDow MDowMCAyMDAxCkZyb206IEpvaG4gPGpvaG56QHBvc3Rlby5uZXQ+CkRhdGU6IFR1ZSwgMjkgT2N0 IDIwMTkgMjM6MDk6MjYgKzAxMDAKU3ViamVjdDogW1BBVENIIDExMS8xODZdIGt3cml0ZWQ6IHVw ZGF0ZSB0byA1LjE3LjIKCltjaSBza2lwXQotLS0KIHNyY3BrZ3Mva3dyaXRlZC90ZW1wbGF0ZSB8 IDQgKystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkK CmRpZmYgLS1naXQgYS9zcmNwa2dzL2t3cml0ZWQvdGVtcGxhdGUgYi9zcmNwa2dzL2t3cml0ZWQv dGVtcGxhdGUKaW5kZXggOTlkOTExZWZhODQuLjY3YWMzZGYxMGIwIDEwMDY0NAotLS0gYS9zcmNw a2dzL2t3cml0ZWQvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9rd3JpdGVkL3RlbXBsYXRlCkBAIC0x LDYgKzEsNiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAna3dyaXRlZCcKIHBrZ25hbWU9a3dyaXRl ZAotdmVyc2lvbj01LjE3LjEKK3ZlcnNpb249NS4xNy4yCiByZXZpc2lvbj0xCiBidWlsZF9zdHls ZT1jbWFrZQogY29uZmlndXJlX2FyZ3M9Ii1EQlVJTERfVEVTVElORz1PRkYiCkBAIC0xMSw0ICsx MSw0IEBAIG1haW50YWluZXI9IkpvaG4gPGpvaG56QHBvc3Rlby5uZXQ+IgogbGljZW5zZT0iR1BM LTIuMC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL3Byb2plY3RzLmtkZS5vcmcvcHJvamVj dHMvcGxhc21hL2t3cml0ZWQiCiBkaXN0ZmlsZXM9IiR7S0RFX1NJVEV9L3BsYXNtYS8ke3ZlcnNp b259LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT03NDM0NTUzY2Q3YjYw MzgwYzU5NjBkMGY2ZThiZjM2M2Y1NDRkNDVlZjdlMWFlZDFiOWIzYzk4YmNlZWIxYmYyCitjaGVj a3N1bT1kNTc1MjUzMDVkYjM4Y2IyMDJjZjg3ZWNhMTliMDg5M2EwMzk3ZmI2YzE5YmY5NzM2NTkx ZDUyMjczMWQxNTgyCgpGcm9tIDZlYzVmNWEzYTIxMTM3Yzg5ZTgxNmE0ZWZjY2FlYmY3YWUxMTZj MmMgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IEpvaG4gPGpvaG56QHBvc3Rlby5uZXQ+ CkRhdGU6IFR1ZSwgMjkgT2N0IDIwMTkgMjM6MDk6MjggKzAxMDAKU3ViamVjdDogW1BBVENIIDEx Mi8xODZdIGxpYmtzY3JlZW46IHVwZGF0ZSB0byA1LjE3LjIKCltjaSBza2lwXQotLS0KIHNyY3Br Z3MvbGlia3NjcmVlbi90ZW1wbGF0ZSB8IDQgKystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0 aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2xpYmtzY3JlZW4v dGVtcGxhdGUgYi9zcmNwa2dzL2xpYmtzY3JlZW4vdGVtcGxhdGUKaW5kZXggYzMwMmI2NTIzNzku LjQ2MDhiZDhjNDA1IDEwMDY0NAotLS0gYS9zcmNwa2dzL2xpYmtzY3JlZW4vdGVtcGxhdGUKKysr IGIvc3JjcGtncy9saWJrc2NyZWVuL3RlbXBsYXRlCkBAIC0xLDYgKzEsNiBAQAogIyBUZW1wbGF0 ZSBmaWxlIGZvciAnbGlia3NjcmVlbicKIHBrZ25hbWU9bGlia3NjcmVlbgotdmVyc2lvbj01LjE3 LjEKK3ZlcnNpb249NS4xNy4yCiByZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1jbWFrZQogY29uZmln dXJlX2FyZ3M9Ii1EQlVJTERfVEVTVElORz1PRkYiCkBAIC0xMSw3ICsxMSw3IEBAIG1haW50YWlu ZXI9IkpvaG4gPGpvaG56QHBvc3Rlby5uZXQ+IgogbGljZW5zZT0iTEdQTC0yLjEtb3ItbGF0ZXIi CiBob21lcGFnZT0iaHR0cHM6Ly9wcm9qZWN0cy5rZGUub3JnL3Byb2plY3RzL2V4dHJhZ2Vhci9s aWJzL2xpYmtzY3JlZW4iCiBkaXN0ZmlsZXM9IiR7S0RFX1NJVEV9L3BsYXNtYS8ke3ZlcnNpb259 LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT0yOTllOGUyZDhiZTcxNjc0 NjY2MDAyZDg1MDM4M2VjMDFiZmM3OTRmY2IxODA4MTFjMmUyY2Q3MGE1NTc0MDc4CitjaGVja3N1 bT03ZGJkMDFiMThiOGU4ZTdmODQ3OTljYjRlZTU1OGNmODJkYjg0MGE3MTZiZDIwOWI1M2FlMzJk MDE4ZmZkNGYxCiAKIGxpYmtzY3JlZW4tZGV2ZWxfcGFja2FnZSgpIHsKIAlzaG9ydF9kZXNjKz0i IC0gZGV2ZWxvcG1lbnQiCgpGcm9tIDg0ZmM3ZWVkMTY1ZmQxYjQwOTQ3NTQwMmJkYmRiYjIxMGQx NWQxZjIgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IEpvaG4gPGpvaG56QHBvc3Rlby5u ZXQ+CkRhdGU6IFR1ZSwgMjkgT2N0IDIwMTkgMjM6MDk6MzAgKzAxMDAKU3ViamVjdDogW1BBVENI IDExMy8xODZdIGxpYmtzeXNndWFyZDogdXBkYXRlIHRvIDUuMTcuMgoKW2NpIHNraXBdCi0tLQog c3JjcGtncy9saWJrc3lzZ3VhcmQvdGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAy IGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9saWJr c3lzZ3VhcmQvdGVtcGxhdGUgYi9zcmNwa2dzL2xpYmtzeXNndWFyZC90ZW1wbGF0ZQppbmRleCBm MmJjNTgzYzg4Ny4uZjRiODE0MmIwZjkgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvbGlia3N5c2d1YXJk L3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvbGlia3N5c2d1YXJkL3RlbXBsYXRlCkBAIC0xLDYgKzEs NiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnbGlia3N5c2d1YXJkJwogcGtnbmFtZT1saWJrc3lz Z3VhcmQKLXZlcnNpb249NS4xNy4xCit2ZXJzaW9uPTUuMTcuMgogcmV2aXNpb249MQogYnVpbGRf c3R5bGU9Y21ha2UKIGNvbmZpZ3VyZV9hcmdzPSItREJVSUxEX1RFU1RJTkc9T0ZGIgpAQCAtMTEs NyArMTEsNyBAQCBtYWludGFpbmVyPSJKb2huIDxqb2huekBwb3N0ZW8ubmV0PiIKIGxpY2Vuc2U9 IkxHUEwtMi4xLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vcHJvamVjdHMua2RlLm9yZy9w cm9qZWN0cy9wbGFzbWEvbGlia3N5c2d1YXJkIgogZGlzdGZpbGVzPSIke0tERV9TSVRFfS9wbGFz bWEvJHt2ZXJzaW9ufS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09YjBm OWUwNTdkNGIxNDI0YzU2OTU4ZTBmMmQxYWY5Y2Q4ODA4MTI3N2Q4Nzg1ZTYxNmRmNmE1NWYxOTUz OWY4MQorY2hlY2tzdW09N2Q0ZmE4Y2EwOTg1ODZkNDhlOTZlMTVhMzUxODNkZjljZDEwNjBmMmEw ZWM0OWY2NjQyMzYwMGU1MzM1NTQ3OAogCiBsaWJrc3lzZ3VhcmQtZGV2ZWxfcGFja2FnZSgpIHsK IAlzaG9ydF9kZXNjKz0iIC0gZGV2ZWxvcG1lbnQiCgpGcm9tIGExMjIwM2U4YzkyNjVlZTg5ZDk0 YTM5ZWIyNmYzNDEwNTJlZWFlMjMgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IEpvaG4g PGpvaG56QHBvc3Rlby5uZXQ+CkRhdGU6IFR1ZSwgMjkgT2N0IDIwMTkgMjM6MDk6MzIgKzAxMDAK U3ViamVjdDogW1BBVENIIDExNC8xODZdIG1pbG91OiB1cGRhdGUgdG8gNS4xNy4yCgpbY2kgc2tp cF0KLS0tCiBzcmNwa2dzL21pbG91L3RlbXBsYXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwg MiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbWls b3UvdGVtcGxhdGUgYi9zcmNwa2dzL21pbG91L3RlbXBsYXRlCmluZGV4IDk1MzFkODk5OTZhLi5k ZDNmZWQ1OGIzZiAxMDA2NDQKLS0tIGEvc3JjcGtncy9taWxvdS90ZW1wbGF0ZQorKysgYi9zcmNw a2dzL21pbG91L3RlbXBsYXRlCkBAIC0xLDYgKzEsNiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAn bWlsb3UnCiBwa2duYW1lPW1pbG91Ci12ZXJzaW9uPTUuMTcuMQordmVyc2lvbj01LjE3LjIKIHJl dmlzaW9uPTEKIGJ1aWxkX3N0eWxlPWNtYWtlCiBjb25maWd1cmVfYXJncz0iLURCVUlMRF9URVNU SU5HPU9GRiIKQEAgLTEyLDcgKzEyLDcgQEAgbWFpbnRhaW5lcj0iSm9obiA8am9obnpAcG9zdGVv Lm5ldD4iCiBsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyLCBMUEdMLTIuMS1vci1sYXRlciIKIGhv bWVwYWdlPSJodHRwczovL3Byb2plY3RzLmtkZS5vcmcvcHJvamVjdHMvcGxhc21hL21pbG91Igog ZGlzdGZpbGVzPSIke0tERV9TSVRFfS9wbGFzbWEvJHt2ZXJzaW9ufS8ke3BrZ25hbWV9LSR7dmVy c2lvbn0udGFyLnh6IgotY2hlY2tzdW09MTMxYjFiNWU1NzE4NDE1MDE4ZGIwZGZmMTkzMzQzYmQ4 Y2QzNzMyZGNlOTQxYjI3ODBmMWJkMzU0NGZiZGU2YQorY2hlY2tzdW09OTRmYjdjYjU5YzRhZWY1 MTRlYzAwNGY4M2VhMDVkOTA0MzkwOThkNzViNDNlNTI1YjcwMzViNGY2MWMzZDBjMwogCiBpZiBb ICIkQ1JPU1NfQlVJTEQiIF07IHRoZW4KIAlob3N0bWFrZWRlcGVuZHMrPSIga3BhY2thZ2UtZGV2 ZWwga2NvbmZpZy1kZXZlbCBrY29yZWFkZG9ucy1kZXZlbCBwbGFzbWEtZnJhbWV3b3JrIgoKRnJv bSBhNWQxZTZlYmM2MmM4MGU3ODYwZWU2NWUyYTBhMDJjYjJhNTE4N2YyIE1vbiBTZXAgMTcgMDA6 MDA6MDAgMjAwMQpGcm9tOiBKb2huIDxqb2huekBwb3N0ZW8ubmV0PgpEYXRlOiBUdWUsIDI5IE9j dCAyMDE5IDIzOjA5OjM0ICswMTAwClN1YmplY3Q6IFtQQVRDSCAxMTUvMTg2XSBveHlnZW46IHVw ZGF0ZSB0byA1LjE3LjIKCltjaSBza2lwXQotLS0KIHNyY3BrZ3Mvb3h5Z2VuL3RlbXBsYXRlIHwg NCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQoK ZGlmZiAtLWdpdCBhL3NyY3BrZ3Mvb3h5Z2VuL3RlbXBsYXRlIGIvc3JjcGtncy9veHlnZW4vdGVt cGxhdGUKaW5kZXggODJmODA3OGY1YjcuLmUwNDJlMWQwMzIxIDEwMDY0NAotLS0gYS9zcmNwa2dz L294eWdlbi90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL294eWdlbi90ZW1wbGF0ZQpAQCAtMSw2ICsx LDYgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ294eWdlbicKIHBrZ25hbWU9b3h5Z2VuCi12ZXJz aW9uPTUuMTcuMQordmVyc2lvbj01LjE3LjIKIHJldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPWNtYWtl CiBjb25maWd1cmVfYXJncz0iLURCVUlMRF9URVNUSU5HPU9GRiIKQEAgLTEzLDQgKzEzLDQgQEAg bWFpbnRhaW5lcj0iSm9obiA8am9obnpAcG9zdGVvLm5ldD4iCiBsaWNlbnNlPSJMR1BMLTIuMS1v ci1sYXRlciwgR1BMLTIuMC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL3Byb2plY3RzLmtk ZS5vcmcvcHJvamVjdHMvcGxhc21hL294eWdlbiIKIGRpc3RmaWxlcz0iJHtLREVfU0lURX0vcGxh c21hLyR7dmVyc2lvbn0vJHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPTUy NzFkNmNjZjBkODc2YWMzMmJmYjY5MjhjZjVkNGQzYzcyYjQyZTA5NzNlZjQ4NGEyZmFiMzc5ZDMy NjRhZDAKK2NoZWNrc3VtPWNhN2Y1N2FkOGJkMTRiNDUyMDQxZTU1YWEwNTc3MGQ2ZWZmOWIxMjMw YTVlNDhlNWQ2ZTYyNDc2MmY4NjQ1ZjEKCkZyb20gMGY0YTJlYmRmY2U5NDQ3ODU5MzI3OTJkNGRk MWY0MDkwYWU5NzE4OCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogSm9obiA8am9obnpA cG9zdGVvLm5ldD4KRGF0ZTogVHVlLCAyOSBPY3QgMjAxOSAyMzowOTozNiArMDEwMApTdWJqZWN0 OiBbUEFUQ0ggMTE2LzE4Nl0gcGxhc21hLWJyb3dzZXItaW50ZWdyYXRpb246IHVwZGF0ZSB0byA1 LjE3LjIKCltjaSBza2lwXQotLS0KIHNyY3BrZ3MvcGxhc21hLWJyb3dzZXItaW50ZWdyYXRpb24v dGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVs ZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9wbGFzbWEtYnJvd3Nlci1pbnRlZ3JhdGlv bi90ZW1wbGF0ZSBiL3NyY3BrZ3MvcGxhc21hLWJyb3dzZXItaW50ZWdyYXRpb24vdGVtcGxhdGUK aW5kZXggYmYyNTlhZjYzNDAuLmFmZjRjODgzM2Y5IDEwMDY0NAotLS0gYS9zcmNwa2dzL3BsYXNt YS1icm93c2VyLWludGVncmF0aW9uL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvcGxhc21hLWJyb3dz ZXItaW50ZWdyYXRpb24vdGVtcGxhdGUKQEAgLTEsNiArMSw2IEBACiAjIFRlbXBsYXRlIGZpbGUg Zm9yICdwbGFzbWEtYnJvd3Nlci1pbnRlZ3JhdGlvbicKIHBrZ25hbWU9cGxhc21hLWJyb3dzZXIt aW50ZWdyYXRpb24KLXZlcnNpb249NS4xNy4xCit2ZXJzaW9uPTUuMTcuMgogcmV2aXNpb249MQog YnVpbGRfc3R5bGU9Y21ha2UKIGNvbmZpZ3VyZV9hcmdzPSItREJVSUxEX1RFU1RJTkc9T0ZGIgpA QCAtMTMsNyArMTMsNyBAQCBtYWludGFpbmVyPSIxaXM3YWMzIDxpc2FhYy5xYTEzQGdtYWlsLmNv bT4iCiBsaWNlbnNlPSJHUEwtMy4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vcHJvamVj dHMua2RlLm9yZy9wcm9qZWN0cy9wbGFzbWEvcGxhc21hLWJyb3dzZXItaW50ZWdyYXRpb24iCiBk aXN0ZmlsZXM9IiR7S0RFX1NJVEV9L3BsYXNtYS8ke3ZlcnNpb259LyR7cGtnbmFtZX0tJHt2ZXJz aW9ufS50YXIueHoiCi1jaGVja3N1bT1iNDQ5NDlkYWIyMzRiMzM3N2FlOWJjNmE4ZmM4ZTc3NTc3 YTc4NTkxODYzNDNmODliZDc5NmYxYmYwN2JjODI3CitjaGVja3N1bT1lOTVmY2MwMGYyNzYyODEx OWQxOTZhZDY4MWY0OGI4ODIzNzlhYTM4ZTNmODk3ZGMwMDM5MDlhMTZhYWQ2OWExCiAKIGlmIFsg IiR7Q1JPU1NfQlVJTER9IiBdOyB0aGVuCiAJY29uZmlndXJlX2FyZ3MrPSIgLURERVNLVE9QVE9K U09OX0VYRUNVVEFCTEU9L3Vzci9iaW4vZGVza3RvcHRvanNvbiIKCkZyb20gMDhhMmRiYzhkNzQy YjQ1MzhiMDY1NzNiYTVhOGU1NWJiODkwOGEyMCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJv bTogSm9obiA8am9obnpAcG9zdGVvLm5ldD4KRGF0ZTogVHVlLCAyOSBPY3QgMjAxOSAyMzowOTo0 MCArMDEwMApTdWJqZWN0OiBbUEFUQ0ggMTE3LzE4Nl0gcGxhc21hLWRlc2t0b3A6IHVwZGF0ZSB0 byA1LjE3LjIKCltjaSBza2lwXQotLS0KIHNyY3BrZ3MvcGxhc21hLWRlc2t0b3AvdGVtcGxhdGUg fCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0p CgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9wbGFzbWEtZGVza3RvcC90ZW1wbGF0ZSBiL3NyY3BrZ3Mv cGxhc21hLWRlc2t0b3AvdGVtcGxhdGUKaW5kZXggZDI4MzU5OTlhNmIuLjNlNjJkNmY3OTI3IDEw MDY0NAotLS0gYS9zcmNwa2dzL3BsYXNtYS1kZXNrdG9wL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3Mv cGxhc21hLWRlc2t0b3AvdGVtcGxhdGUKQEAgLTEsNiArMSw2IEBACiAjIFRlbXBsYXRlIGZpbGUg Zm9yICdwbGFzbWEtZGVza3RvcCcKIHBrZ25hbWU9cGxhc21hLWRlc2t0b3AKLXZlcnNpb249NS4x Ny4xCit2ZXJzaW9uPTUuMTcuMgogcmV2aXNpb249MQogYnVpbGRfc3R5bGU9Y21ha2UKIGNvbmZp Z3VyZV9hcmdzPSItREJVSUxEX1RFU1RJTkc9T0ZGIgpAQCAtMTUsNyArMTUsNyBAQCBtYWludGFp bmVyPSJKb2huIDxqb2huekBwb3N0ZW8ubmV0PiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIs IExHUEwtMi4wLW9yLWxhdGVyLCBMR1BMLTIuMS1vci1sYXRlciwgR0ZETC0xLjIiCiBob21lcGFn ZT0iaHR0cHM6Ly9wcm9qZWN0cy5rZGUub3JnL3Byb2plY3RzL3BsYXNtYS9wbGFzbWEtZGVza3Rv cCIKIGRpc3RmaWxlcz0iJHtLREVfU0lURX0vcGxhc21hLyR7dmVyc2lvbn0vJHtwa2duYW1lfS0k e3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPTBiYzY2MjJmMWQzNTlmNzQ4YjBkMjllM2VjNjlm ZWQ5OWYzMTMyNTgyNDNiMjUzNDRhNzI5MzgzYWJkYTZmOGEKK2NoZWNrc3VtPTlhYjU0MGMzMTI0 MGY5NzQ5NTUwMGE1MGYzZWNjMDUyYTg5NGVhNzYwN2UxMjUyMDRlODVkNzVhNTJkNmQ0ZDMKIAog aWYgWyAiJENST1NTX0JVSUxEIiBdOyB0aGVuCiAJaG9zdG1ha2VkZXBlbmRzKz0iIGtjb25maWct ZGV2ZWwga2NvcmVhZGRvbnMtZGV2ZWwga2RlZAoKRnJvbSA5YTA5ZjQ5MDNmNmM1MTFlMTRmZDBm ODgxMzRhZmY3ODQwZjRiYzVmIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBKb2huIDxq b2huekBwb3N0ZW8ubmV0PgpEYXRlOiBUdWUsIDI5IE9jdCAyMDE5IDIzOjA5OjQyICswMTAwClN1 YmplY3Q6IFtQQVRDSCAxMTgvMTg2XSBwbGFzbWEtaW50ZWdyYXRpb246IHVwZGF0ZSB0byA1LjE3 LjIKCltjaSBza2lwXQotLS0KIHNyY3BrZ3MvcGxhc21hLWludGVncmF0aW9uL3RlbXBsYXRlIHwg NCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQoK ZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcGxhc21hLWludGVncmF0aW9uL3RlbXBsYXRlIGIvc3JjcGtn cy9wbGFzbWEtaW50ZWdyYXRpb24vdGVtcGxhdGUKaW5kZXggMzkyNGFiOGFmODYuLmZjNDJmYmFh YWE4IDEwMDY0NAotLS0gYS9zcmNwa2dzL3BsYXNtYS1pbnRlZ3JhdGlvbi90ZW1wbGF0ZQorKysg Yi9zcmNwa2dzL3BsYXNtYS1pbnRlZ3JhdGlvbi90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMg VGVtcGxhdGUgZmlsZSBmb3IgJ3BsYXNtYS1pbnRlZ3JhdGlvbicKIHBrZ25hbWU9cGxhc21hLWlu dGVncmF0aW9uCi12ZXJzaW9uPTUuMTcuMQordmVyc2lvbj01LjE3LjIKIHJldmlzaW9uPTEKIGJ1 aWxkX3N0eWxlPWNtYWtlCiBjb25maWd1cmVfYXJncz0iLURCVUlMRF9URVNUSU5HPU9GRiIKQEAg LTEzLDQgKzEzLDQgQEAgbWFpbnRhaW5lcj0iSm9obiA8am9obnpAcG9zdGVvLm5ldD4iCiBsaWNl bnNlPSJMR1BMLTIuMC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL3Byb2plY3RzLmtkZS5v cmcvcHJvamVjdHMvcGxhc21hL3BsYXNtYS1pbnRlZ3JhdGlvbiIKIGRpc3RmaWxlcz0iJHtLREVf U0lURX0vcGxhc21hLyR7dmVyc2lvbn0vJHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIKLWNo ZWNrc3VtPTA1YTFkOGMzZmQ0NmNhZjlmZmFhMjE5NWViNTlmZmU3NTg2YmM4Mjk0ZjMzZDhhZmNj N2EzYjYyODhmZTZmYmUKK2NoZWNrc3VtPTNhMDNjYTY1MDk4ZGVlODU2YjVlMmE3NWRhNjNkMDc4 NzJkYTllNzJiMDE0ODc0NjEwOWMxMDhlNDkxN2U5OTMKCkZyb20gZDE1ODlkMTQxNzcxOGVhYzRi MGI4ZGM2NTQzNTgyZWVjNTRhMmJkZiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogSm9o biA8am9obnpAcG9zdGVvLm5ldD4KRGF0ZTogVHVlLCAyOSBPY3QgMjAxOSAyMzowOTo0NCArMDEw MApTdWJqZWN0OiBbUEFUQ0ggMTE5LzE4Nl0gcGxhc21hLW5tOiB1cGRhdGUgdG8gNS4xNy4yCgpb Y2kgc2tpcF0KLS0tCiBzcmNwa2dzL3BsYXNtYS1ubS90ZW1wbGF0ZSB8IDQgKystLQogMSBmaWxl IGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9z cmNwa2dzL3BsYXNtYS1ubS90ZW1wbGF0ZSBiL3NyY3BrZ3MvcGxhc21hLW5tL3RlbXBsYXRlCmlu ZGV4IGU1MmUxY2ZhY2ZmLi5lODRmOTZhMDdjNSAxMDA2NDQKLS0tIGEvc3JjcGtncy9wbGFzbWEt bm0vdGVtcGxhdGUKKysrIGIvc3JjcGtncy9wbGFzbWEtbm0vdGVtcGxhdGUKQEAgLTEsNiArMSw2 IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdwbGFzbWEtbm0nCiBwa2duYW1lPXBsYXNtYS1ubQot dmVyc2lvbj01LjE3LjEKK3ZlcnNpb249NS4xNy4yCiByZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1j bWFrZQogY29uZmlndXJlX2FyZ3M9Ii1EQlVJTERfVEVTVElORz1PRkYiCkBAIC0xNSw3ICsxNSw3 IEBAIG1haW50YWluZXI9IkpvaG4gPGpvaG56QHBvc3Rlby5uZXQ+IgogbGljZW5zZT0iTEdQTC0y LjEtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6Ly9wcm9qZWN0cy5rZGUub3JnL3Byb2plY3Rz L3BsYXNtYS9wbGFzbWEtbm0iCiBkaXN0ZmlsZXM9IiR7S0RFX1NJVEV9L3BsYXNtYS8ke3ZlcnNp b259LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT0zMmI1ZGU4NDU5MjQ2 MzZiYTEwM2RjMjY0MWJlOGNlOGNiYjc3MDlmMTg2ZWJhZTJkMzNkZjhmMjAxNzgyMGVmCitjaGVj a3N1bT1kNDc3ZGIwMmIyZGI0M2VmMmI0M2I3M2Y4Zjg4NTczODg1MzMxODhlZTA4YWUxMGE0OGNi ZTdjMjE0ZDRiZjcwCiAKIGlmIFsgIiRDUk9TU19CVUlMRCIgXTsgdGhlbgogCWhvc3RtYWtlZGVw ZW5kcys9IiBrcGFja2FnZS1kZXZlbCBrY29uZmlnLWRldmVsIGtjb3JlYWRkb25zLWRldmVsIHBs YXNtYS1mcmFtZXdvcmsiCgpGcm9tIDJjMTc1YzhhZGJmZjU4ODJjZDBkODdiMTYxNzlkNjgzODM2 OTE3NTkgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IEpvaG4gPGpvaG56QHBvc3Rlby5u ZXQ+CkRhdGU6IFR1ZSwgMjkgT2N0IDIwMTkgMjM6MDk6NDYgKzAxMDAKU3ViamVjdDogW1BBVENI IDEyMC8xODZdIHBsYXNtYS1wYTogdXBkYXRlIHRvIDUuMTcuMgoKW2NpIHNraXBdCi0tLQogc3Jj cGtncy9wbGFzbWEtcGEvdGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2Vy dGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9wbGFzbWEtcGEv dGVtcGxhdGUgYi9zcmNwa2dzL3BsYXNtYS1wYS90ZW1wbGF0ZQppbmRleCA0NDNhOWQwMzE5Mi4u MmQ3MWI1NmRhNzAgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvcGxhc21hLXBhL3RlbXBsYXRlCisrKyBi L3NyY3BrZ3MvcGxhc21hLXBhL3RlbXBsYXRlCkBAIC0xLDYgKzEsNiBAQAogIyBUZW1wbGF0ZSBm aWxlIGZvciAncGxhc21hLXBhJwogcGtnbmFtZT1wbGFzbWEtcGEKLXZlcnNpb249NS4xNy4xCit2 ZXJzaW9uPTUuMTcuMgogcmV2aXNpb249MQogYnVpbGRfc3R5bGU9Y21ha2UKIGNvbmZpZ3VyZV9h cmdzPSItREJVSUxEX1RFU1RJTkc9T0ZGIgpAQCAtMTMsNyArMTMsNyBAQCBtYWludGFpbmVyPSJK b2huIDxqb2huekBwb3N0ZW8ubmV0PiIKIGxpY2Vuc2U9IkxHUEwtMi4xLW9yLWxhdGVyIgogaG9t ZXBhZ2U9Imh0dHBzOi8vcHJvamVjdHMua2RlLm9yZy9wcm9qZWN0cy9wbGFzbWEvcGxhc21hLXBh IgogZGlzdGZpbGVzPSIke0tERV9TSVRFfS9wbGFzbWEvJHt2ZXJzaW9ufS8ke3BrZ25hbWV9LSR7 dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09ZjlmNDU0NGJlZTRhMmUyYmQ0MTk3YjAxOWI1YzZm ZmI5NjliYmRkMjdhZmUzZTFlZjAyYjY4MWU5YTBlZDc2OQorY2hlY2tzdW09NmM3OGU4NTJjM2Vi NjY1MDAwZmRmYWM3OTAxZmI1NjhkNTY1NTUyYWFhY2U0MjE5YzRhMDUxZDI5YjZlOGQ4YgogCiBp ZiBbICIkQ1JPU1NfQlVJTEQiIF07IHRoZW4KIAlob3N0bWFrZWRlcGVuZHMrPSIga3BhY2thZ2Ut ZGV2ZWwga2NvbmZpZy1kZXZlbCBrY29yZWFkZG9ucy1kZXZlbCIKCkZyb20gZjYwOWE5MDJiMjBl MGJhMzdjOGQ5ZWRlM2VhMGJhMGQwZDFlMjRlZiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJv bTogSm9obiA8am9obnpAcG9zdGVvLm5ldD4KRGF0ZTogVHVlLCAyOSBPY3QgMjAxOSAyMzowOTo0 OCArMDEwMApTdWJqZWN0OiBbUEFUQ0ggMTIxLzE4Nl0gcGxhc21hLXNkazogdXBkYXRlIHRvIDUu MTcuMgoKW2NpIHNraXBdCi0tLQogc3JjcGtncy9wbGFzbWEtc2RrL3RlbXBsYXRlIHwgNCArKy0t CiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQoKZGlmZiAt LWdpdCBhL3NyY3BrZ3MvcGxhc21hLXNkay90ZW1wbGF0ZSBiL3NyY3BrZ3MvcGxhc21hLXNkay90 ZW1wbGF0ZQppbmRleCA1ZDJlNTEyZDc1Mi4uMzMxMzNiMjJmMWIgMTAwNjQ0Ci0tLSBhL3NyY3Br Z3MvcGxhc21hLXNkay90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3BsYXNtYS1zZGsvdGVtcGxhdGUK QEAgLTEsNiArMSw2IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdwbGFzbWEtc2RrJwogcGtnbmFt ZT1wbGFzbWEtc2RrCi12ZXJzaW9uPTUuMTcuMQordmVyc2lvbj01LjE3LjIKIHJldmlzaW9uPTEK IGJ1aWxkX3N0eWxlPWNtYWtlCiBjb25maWd1cmVfYXJncz0iLURCVUlMRF9URVNUSU5HPU9GRiIK QEAgLTEyLDcgKzEyLDcgQEAgbWFpbnRhaW5lcj0iSm9obiA8am9obnpAcG9zdGVvLm5ldD4iCiBs aWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyLCBMR1BMLTIuMS1vci1sYXRlciIKIGhvbWVwYWdlPSJo dHRwczovL3Byb2plY3RzLmtkZS5vcmcvcHJvamVjdHMvcGxhc21hL3BsYXNtYS1zZGsiCiBkaXN0 ZmlsZXM9IiR7S0RFX1NJVEV9L3BsYXNtYS8ke3ZlcnNpb259LyR7cGtnbmFtZX0tJHt2ZXJzaW9u fS50YXIueHoiCi1jaGVja3N1bT0yOGYyZWNkOWNjNDk1ZDQ2NmNiMGUwMjc3OTNkZjhhYWI2M2E4 NGI5Nzk2NDYxMTViY2QyNTdkNjYwNzVhY2JiCitjaGVja3N1bT01OWY4MzUxNTY3MjQyZTA1Yzhm NDM1YWY1NzYyMWZlMTJkM2U2MDYyOGI0YjAzNDdlMTM4ZmM5YTYwYmQxMGIzCiAKIGlmIFsgIiRD Uk9TU19CVUlMRCIgXTsgdGhlbgogCWhvc3RtYWtlZGVwZW5kcys9IiBrcGFja2FnZS1kZXZlbCBr Y29uZmlnLWRldmVsIGtjb3JlYWRkb25zLWRldmVsIHBsYXNtYS1mcmFtZXdvcmsiCgpGcm9tIGUx ZGViZWE1Nzc5NTBjNmRjNzNlMjVjZDc5MjkxZjFjMzUxNWEzNDggTW9uIFNlcCAxNyAwMDowMDow MCAyMDAxCkZyb206IEpvaG4gPGpvaG56QHBvc3Rlby5uZXQ+CkRhdGU6IFR1ZSwgMjkgT2N0IDIw MTkgMjM6MDk6NTAgKzAxMDAKU3ViamVjdDogW1BBVENIIDEyMi8xODZdIHBsYXNtYS10aHVuZGVy Ym9sdDogdXBkYXRlIHRvIDUuMTcuMgoKW2NpIHNraXBdCi0tLQogc3JjcGtncy9wbGFzbWEtdGh1 bmRlcmJvbHQvdGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMo KyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9wbGFzbWEtdGh1bmRlcmJv bHQvdGVtcGxhdGUgYi9zcmNwa2dzL3BsYXNtYS10aHVuZGVyYm9sdC90ZW1wbGF0ZQppbmRleCA3 YTI5ODIzOTZiNi4uNmY3ZWJiNzYyMDkgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvcGxhc21hLXRodW5k ZXJib2x0L3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvcGxhc21hLXRodW5kZXJib2x0L3RlbXBsYXRl CkBAIC0xLDYgKzEsNiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAncGxhc21hLXRodW5kZXJib2x0 JwogcGtnbmFtZT1wbGFzbWEtdGh1bmRlcmJvbHQKLXZlcnNpb249NS4xNy4xCit2ZXJzaW9uPTUu MTcuMgogcmV2aXNpb249MQogYnVpbGRfc3R5bGU9Y21ha2UKIGhvc3RtYWtlZGVwZW5kcz0iZXh0 cmEtY21ha2UtbW9kdWxlcyBrY29yZWFkZG9ucyBrY211dGlscwpAQCAtMTIsNyArMTIsNyBAQCBt YWludGFpbmVyPSJKb2huIDxqb2huekBwb3N0ZW8ubmV0PiIKIGxpY2Vuc2U9IkdQTC0zLjAtb3It bGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6Ly9jZ2l0LmtkZS5vcmcvcGxhc21hLXRodW5kZXJib2x0 LmdpdCIKIGRpc3RmaWxlcz0iJHtLREVfU0lURX0vcGxhc21hLyR7dmVyc2lvbn0vJHtwa2duYW1l fS0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPWJhMjhhMTRiMGFjMTdlMTVlNDE0ODQ0MzEw NTQ5MjlkM2FhMjM3Yjc4ZjY2YjNjODM4MzIxOWJiNmU5YTllMTcKK2NoZWNrc3VtPTBmZDJkYzky MjBjZmNiOWVjNDZmYWY2NDIzYTY5NGNhYWMyNGE1ZWM5OGYxZmUzNDE3MmM0N2YwZGIwOTMyNTUK IAogZG9fY2hlY2soKSB7CiAJOiAjIFJlcXVpcmVzIHJ1bm5pbmcgZGJ1cyBhbmQgYm9sdCBzZXJ2 aWNlcwoKRnJvbSBiMDg1MzM1NDI5MDgwNjhiMDE3YjI5NTY1M2Y5MGE4MDE5MmViZGRhIE1vbiBT ZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBKb2huIDxqb2huekBwb3N0ZW8ubmV0PgpEYXRlOiBU dWUsIDI5IE9jdCAyMDE5IDIzOjA5OjUyICswMTAwClN1YmplY3Q6IFtQQVRDSCAxMjMvMTg2XSBw bGFzbWEtdmF1bHQ6IHVwZGF0ZSB0byA1LjE3LjIKCltjaSBza2lwXQotLS0KIHNyY3BrZ3MvcGxh c21hLXZhdWx0L3RlbXBsYXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25z KCspLCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcGxhc21hLXZhdWx0L3Rl bXBsYXRlIGIvc3JjcGtncy9wbGFzbWEtdmF1bHQvdGVtcGxhdGUKaW5kZXggYWViNGY0OTI0OGEu LjU3NDkwYTZlZGYyIDEwMDY0NAotLS0gYS9zcmNwa2dzL3BsYXNtYS12YXVsdC90ZW1wbGF0ZQor KysgYi9zcmNwa2dzL3BsYXNtYS12YXVsdC90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVt cGxhdGUgZmlsZSBmb3IgJ3BsYXNtYS12YXVsdCcKIHBrZ25hbWU9cGxhc21hLXZhdWx0Ci12ZXJz aW9uPTUuMTcuMQordmVyc2lvbj01LjE3LjIKIHJldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPWNtYWtl CiBob3N0bWFrZWRlcGVuZHM9ImV4dHJhLWNtYWtlLW1vZHVsZXMga2NvcmVhZGRvbnMgcXQ1LXFt YWtlIHF0NS1ob3N0LXRvb2xzIgpAQCAtMTAsNyArMTAsNyBAQCBtYWludGFpbmVyPSJHaXVzZXBw ZSBGaWVycm8gPGdzcGVAYWUtZGVzaWduLndzPiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIs IExHUEwtMi4wLW9yLWxhdGVyLCBMR1BMLTIuMS1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczov L2dpdGh1Yi5jb20vS0RFL3BsYXNtYS12YXVsdCIKIGRpc3RmaWxlcz0iJHtLREVfU0lURX0vcGxh c21hLyR7dmVyc2lvbn0vJHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPWE3 MWVmMjQ1NjZhZTZhMGQ2MWUyMWRmYjY1YWFjMTEzODFmZmFhMzQwYzE2YjQ3ZDJkYjg4N2M0Njkw ZWE3MWIKK2NoZWNrc3VtPTM4YzZkNmM2YzNlYTQwZmY4MWI1NTI5YzUwZmRjNmRhMzAxMTFhYjI4 N2YwNDE2Mzg5MTAzMmNhODZiZWI4N2YKIAogaWYgWyAiJENST1NTX0JVSUxEIiBdOyB0aGVuCiAJ aG9zdG1ha2VkZXBlbmRzKz0iIGtwYWNrYWdlLWRldmVsIGtjb25maWctZGV2ZWwga2NvcmVhZGRv bnMtZGV2ZWwgcGxhc21hLWZyYW1ld29yayIKCkZyb20gMjVkMWZmNGYzYWQ1YWRlMTJhN2I0MDdk NzVmNjJlZDZjYjA1NTk1MiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogSm9obiA8am9o bnpAcG9zdGVvLm5ldD4KRGF0ZTogVHVlLCAyOSBPY3QgMjAxOSAyMzowOTo1OSArMDEwMApTdWJq ZWN0OiBbUEFUQ0ggMTI0LzE4Nl0gcGxhc21hLXdvcmtzcGFjZS13YWxscGFwZXJzOiB1cGRhdGUg dG8gNS4xNy4yCgpbY2kgc2tpcF0KLS0tCiBzcmNwa2dzL3BsYXNtYS13b3Jrc3BhY2Utd2FsbHBh cGVycy90ZW1wbGF0ZSB8IDQgKystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwg MiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3BsYXNtYS13b3Jrc3BhY2Utd2Fs bHBhcGVycy90ZW1wbGF0ZSBiL3NyY3BrZ3MvcGxhc21hLXdvcmtzcGFjZS13YWxscGFwZXJzL3Rl bXBsYXRlCmluZGV4IDgxZGU1NTkyMDA4Li5jM2I2ZDNhNGRlMiAxMDA2NDQKLS0tIGEvc3JjcGtn cy9wbGFzbWEtd29ya3NwYWNlLXdhbGxwYXBlcnMvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9wbGFz bWEtd29ya3NwYWNlLXdhbGxwYXBlcnMvdGVtcGxhdGUKQEAgLTEsNiArMSw2IEBACiAjIFRlbXBs YXRlIGZpbGUgZm9yICdwbGFzbWEtd29ya3NwYWNlLXdhbGxwYXBlcnMnCiBwa2duYW1lPXBsYXNt YS13b3Jrc3BhY2Utd2FsbHBhcGVycwotdmVyc2lvbj01LjE3LjEKK3ZlcnNpb249NS4xNy4yCiBy ZXZpc2lvbj0xCiBhcmNocz1ub2FyY2gKIGJ1aWxkX3N0eWxlPWNtYWtlCkBAIC0xMSw0ICsxMSw0 IEBAIG1haW50YWluZXI9IkpvaG4gPGpvaG56QHBvc3Rlby5uZXQ+IgogbGljZW5zZT0iR1BMLTIu MC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL3Byb2plY3RzLmtkZS5vcmcvcHJvamVjdHMv cGxhc21hL3BsYXNtYS13b3Jrc3BhY2Utd2FsbHBhcGVycyIKIGRpc3RmaWxlcz0iJHtLREVfU0lU RX0vcGxhc21hLyR7dmVyc2lvbn0vJHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNr c3VtPWE0NDU4MmE4MTY5OThiNDFkZTQ4MDBiNTJjZDQ2MWNlMDllZjJjN2NhNWE5YjY1YjAyZDQ4 OWU3OGEyNDFlYWIKK2NoZWNrc3VtPWZkMzVjY2FlNDEwODUwOTFkODg5OGI1ZDExOTAwNGFiOTZh Nzk5Y2VlOWNmOGZhYTgzOGQ4YmFhN2RmMDMzM2UKCkZyb20gZGRhZDg2ZDUyYjRlODM2YWM5MTNm ZmExNTg4YjBlMTcwZDNmYWNiZiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogSm9obiA8 am9obnpAcG9zdGVvLm5ldD4KRGF0ZTogVHVlLCAyOSBPY3QgMjAxOSAyMzoxMDowMSArMDEwMApT dWJqZWN0OiBbUEFUQ0ggMTI1LzE4Nl0gcGxhc21hLXdvcmtzcGFjZTogdXBkYXRlIHRvIDUuMTcu MgoKW2NpIHNraXBdCi0tLQogc3JjcGtncy9wbGFzbWEtd29ya3NwYWNlL3RlbXBsYXRlIHwgNCAr Ky0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQoKZGlm ZiAtLWdpdCBhL3NyY3BrZ3MvcGxhc21hLXdvcmtzcGFjZS90ZW1wbGF0ZSBiL3NyY3BrZ3MvcGxh c21hLXdvcmtzcGFjZS90ZW1wbGF0ZQppbmRleCA1YWRhNTJjOTRlMy4uMDJjMjI5YThlMDAgMTAw NjQ0Ci0tLSBhL3NyY3BrZ3MvcGxhc21hLXdvcmtzcGFjZS90ZW1wbGF0ZQorKysgYi9zcmNwa2dz L3BsYXNtYS13b3Jrc3BhY2UvdGVtcGxhdGUKQEAgLTEsNiArMSw2IEBACiAjIFRlbXBsYXRlIGZp bGUgZm9yICdwbGFzbWEtd29ya3NwYWNlJwogcGtnbmFtZT1wbGFzbWEtd29ya3NwYWNlCi12ZXJz aW9uPTUuMTcuMQordmVyc2lvbj01LjE3LjIKIHJldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPWNtYWtl CiBjb25maWd1cmVfYXJncz0iLURCVUlMRF9URVNUSU5HPU9GRiIKQEAgLTE3LDcgKzE3LDcgQEAg bWFpbnRhaW5lcj0iSm9obiA8am9obnpAcG9zdGVvLm5ldD4iCiBsaWNlbnNlPSJHUEwtMi4wLW9y LWxhdGVyLEdGREwtMi4xLCBMR1BMLTIuMS1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL3By b2plY3RzLmtkZS5vcmcvcHJvamVjdHMvcGxhc21hL3BsYXNtYS13b3Jrc3BhY2UiCiBkaXN0Zmls ZXM9IiR7S0RFX1NJVEV9L3BsYXNtYS8ke3ZlcnNpb259LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50 YXIueHoiCi1jaGVja3N1bT0yMWM2OWJjYTBiMzU4MDczZmIwYjk0NWU3OTcyN2Q2NWYxMDRkZGE1 NGM2Y2ZkNjQzNzE5ZmRkNjAzODMxNjE2CitjaGVja3N1bT0wMmE1NmJjZDJjNzcxYjM1OWJmOWZk ZDIxNjA5NGYxYWE3NGI5NTIyMWZmODc5NjA3NzZhYWUxODAxMmEwZDZkCiAKIGlmIFsgIiRDUk9T U19CVUlMRCIgXTsgdGhlbgogCWhvc3RtYWtlZGVwZW5kcys9IiBrcGFja2FnZS1kZXZlbCBrY29u ZmlnLWRldmVsIGtjb3JlYWRkb25zLWRldmVsIHBsYXNtYS1mcmFtZXdvcmsiCgpGcm9tIDlkZjEw ZWJmNWZmYzFhZmI5YTUyNmU4NWQ2MWRlM2YzZTJiN2E2NzggTW9uIFNlcCAxNyAwMDowMDowMCAy MDAxCkZyb206IEpvaG4gPGpvaG56QHBvc3Rlby5uZXQ+CkRhdGU6IFR1ZSwgMjkgT2N0IDIwMTkg MjM6MTA6MDMgKzAxMDAKU3ViamVjdDogW1BBVENIIDEyNi8xODZdIHBvbGtpdC1rZGUtYWdlbnQ6 IHVwZGF0ZSB0byA1LjE3LjIKCltjaSBza2lwXQotLS0KIHNyY3BrZ3MvcG9sa2l0LWtkZS1hZ2Vu dC90ZW1wbGF0ZSB8IDQgKystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBk ZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3BvbGtpdC1rZGUtYWdlbnQvdGVtcGxh dGUgYi9zcmNwa2dzL3BvbGtpdC1rZGUtYWdlbnQvdGVtcGxhdGUKaW5kZXggYzkzZjFhM2Q0NzMu LjBmOGU0M2MxMDBlIDEwMDY0NAotLS0gYS9zcmNwa2dzL3BvbGtpdC1rZGUtYWdlbnQvdGVtcGxh dGUKKysrIGIvc3JjcGtncy9wb2xraXQta2RlLWFnZW50L3RlbXBsYXRlCkBAIC0xLDYgKzEsNiBA QAogIyBUZW1wbGF0ZSBmaWxlIGZvciAncG9sa2l0LWtkZS1hZ2VudCcKIHBrZ25hbWU9cG9sa2l0 LWtkZS1hZ2VudAotdmVyc2lvbj01LjE3LjEKK3ZlcnNpb249NS4xNy4yCiByZXZpc2lvbj0xCiB3 cmtzcmM9IiR7cGtnbmFtZX0tMS0ke3ZlcnNpb259IgogYnVpbGRfc3R5bGU9Y21ha2UKQEAgLTEz LDQgKzEzLDQgQEAgbWFpbnRhaW5lcj0iSm9obiA8am9obnpAcG9zdGVvLm5ldD4iCiBsaWNlbnNl PSJHUEwtMi4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vcHJvamVjdHMua2RlLm9yZy9w cm9qZWN0cy9wbGFzbWEvcG9sa2l0LWtkZS1hZ2VudCIKIGRpc3RmaWxlcz0iJHtLREVfU0lURX0v cGxhc21hLyR7dmVyc2lvbn0vJHtwa2duYW1lfS0xLSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tz dW09NjI5YmYzODdhZGIwMWRjYTE3MDFlYWI2NDFhYzgxYjIxN2FkOGQxZjA3YWY2ODdjM2NkMmJk YjAwN2UxODg4YworY2hlY2tzdW09YmFlMGNiOGM2MjgxNzc0ZmI3ODYwMmQ5NTBlZjI0MmNmZDU3 ODQ3MmM2MGU1YzVjYTA2MjkwMGFmZGZmNzVhMgoKRnJvbSAzYjE4ODg0ZWMzNWYyZmQyYTg4MTk4 NTg3ODcwNGE5NjU2NjcxMzUwIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBKb2huIDxq b2huekBwb3N0ZW8ubmV0PgpEYXRlOiBUdWUsIDI5IE9jdCAyMDE5IDIzOjEwOjA1ICswMTAwClN1 YmplY3Q6IFtQQVRDSCAxMjcvMTg2XSBwb3dlcmRldmlsOiB1cGRhdGUgdG8gNS4xNy4yCgpbY2kg c2tpcF0KLS0tCiBzcmNwa2dzL3Bvd2VyZGV2aWwvdGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBj aGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3Jj cGtncy9wb3dlcmRldmlsL3RlbXBsYXRlIGIvc3JjcGtncy9wb3dlcmRldmlsL3RlbXBsYXRlCmlu ZGV4IDY1MjZjNTVhZmUyLi45NjVkNjE4OTc2OSAxMDA2NDQKLS0tIGEvc3JjcGtncy9wb3dlcmRl dmlsL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvcG93ZXJkZXZpbC90ZW1wbGF0ZQpAQCAtMSw2ICsx LDYgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ3Bvd2VyZGV2aWwnCiBwa2duYW1lPXBvd2VyZGV2 aWwKLXZlcnNpb249NS4xNy4xCit2ZXJzaW9uPTUuMTcuMgogcmV2aXNpb249MQogYnVpbGRfc3R5 bGU9Y21ha2UKIGNvbmZpZ3VyZV9hcmdzPSItREJVSUxEX1RFU1RJTkc9T0ZGIgpAQCAtMTMsNCAr MTMsNCBAQCBtYWludGFpbmVyPSJKb2huIDxqb2huekBwb3N0ZW8ubmV0PiIKIGxpY2Vuc2U9IkdQ TC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6Ly9wcm9qZWN0cy5rZGUub3JnL3Byb2pl Y3RzL3BsYXNtYS9wb3dlcmRldmlsIgogZGlzdGZpbGVzPSIke0tERV9TSVRFfS9wbGFzbWEvJHt2 ZXJzaW9ufS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09ODkzOTMzMTk2 N2U0ZGY3MGFhZGYzZDQxMWRlZWMzYWIxZWEwYzgyMDE5MmZkODkzYTcyZDg1OTBjZTk4YjNkNwor Y2hlY2tzdW09MzAzMzg2Y2M0Mzg0MDcyMDBkYTIyY2JjMTRhNTNlMDQxNzRiNmYwYmFlOTMzYmM0 M2YwZDY5YWMzYmRmNzYyMwoKRnJvbSBhZGUwZWYxN2Y3ZGI1NDNjN2YwM2Q1YzA4MzM5YmJlNTgw YmFiYjE4IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBKb2huIDxqb2huekBwb3N0ZW8u bmV0PgpEYXRlOiBUdWUsIDI5IE9jdCAyMDE5IDIzOjEwOjA3ICswMTAwClN1YmplY3Q6IFtQQVRD SCAxMjgvMTg2XSBzZGRtLWtjbTogdXBkYXRlIHRvIDUuMTcuMgoKW2NpIHNraXBdCi0tLQogc3Jj cGtncy9zZGRtLWtjbS90ZW1wbGF0ZSB8IDQgKystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0 aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3NkZG0ta2NtL3Rl bXBsYXRlIGIvc3JjcGtncy9zZGRtLWtjbS90ZW1wbGF0ZQppbmRleCBjOTJiYTQ2NmJkMS4uNzkw MzdmMTVmNmMgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3Mvc2RkbS1rY20vdGVtcGxhdGUKKysrIGIvc3Jj cGtncy9zZGRtLWtjbS90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxhdGUgZmlsZSBm b3IgJ3NkZG0ta2NtJwogcGtnbmFtZT1zZGRtLWtjbQotdmVyc2lvbj01LjE3LjEKK3ZlcnNpb249 NS4xNy4yCiByZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1jbWFrZQogY29uZmlndXJlX2FyZ3M9Ii1E QlVJTERfVEVTVElORz1PRkYiCkBAIC0xNCw0ICsxNCw0IEBAIG1haW50YWluZXI9IkpvaG4gPGpv aG56QHBvc3Rlby5uZXQ+IgogbGljZW5zZT0iR1BMLTIuMC1vci1sYXRlciIKIGhvbWVwYWdlPSJo dHRwczovL3Byb2plY3RzLmtkZS5vcmcvcHJvamVjdHMvcGxhc21hL3NkZG0ta2NtIgogZGlzdGZp bGVzPSIke0tERV9TSVRFfS9wbGFzbWEvJHt2ZXJzaW9ufS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0u dGFyLnh6IgotY2hlY2tzdW09OTE1MWFkYzExMTFmZTMyNzA3OGM4MGFmNjRmMGZlZjMxNDViZWQ4 Yjk3MjFmOWFkYzUzODE1YWI5NjhmOTdmZQorY2hlY2tzdW09MjlhZmE1NjFjZGQxNTc3NjFkNjYy ZjNlNTIyMjZlN2I2ZDhhYjZjNWZkNjdiYmRlMDczYzIyNmFjMzk2ZTljMQoKRnJvbSA5MzZiZmI4 M2RjN2U2ODBhZmQ1ODE0OGM4M2E0MzhiYjE4YzBhMDQzIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAw MQpGcm9tOiBKb2huIDxqb2huekBwb3N0ZW8ubmV0PgpEYXRlOiBUdWUsIDI5IE9jdCAyMDE5IDIz OjEwOjA5ICswMTAwClN1YmplY3Q6IFtQQVRDSCAxMjkvMTg2XSBzeXN0ZW1zZXR0aW5nczogdXBk YXRlIHRvIDUuMTcuMgoKW2NpIHNraXBdCi0tLQogc3JjcGtncy9zeXN0ZW1zZXR0aW5ncy90ZW1w bGF0ZSB8IDQgKystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlv bnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3N5c3RlbXNldHRpbmdzL3RlbXBsYXRlIGIvc3Jj cGtncy9zeXN0ZW1zZXR0aW5ncy90ZW1wbGF0ZQppbmRleCAxZGQ4ZjY5NjQwYy4uNTFkOGY4YWNh OWUgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3Mvc3lzdGVtc2V0dGluZ3MvdGVtcGxhdGUKKysrIGIvc3Jj cGtncy9zeXN0ZW1zZXR0aW5ncy90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxhdGUg ZmlsZSBmb3IgJ3N5c3RlbXNldHRpbmdzJwogcGtnbmFtZT1zeXN0ZW1zZXR0aW5ncwotdmVyc2lv bj01LjE3LjEKK3ZlcnNpb249NS4xNy4yCiByZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1jbWFrZQog Y29uZmlndXJlX2FyZ3M9Ii1EQlVJTERfVEVTVElORz1PRkYiCkBAIC0xMyw3ICsxMyw3IEBAIG1h aW50YWluZXI9IkpvaG4gPGpvaG56QHBvc3Rlby5uZXQ+IgogbGljZW5zZT0iR1BMLTIuMC1vci1s YXRlciwgR0ZETC0xLjIiCiBob21lcGFnZT0iaHR0cHM6Ly9wcm9qZWN0cy5rZGUub3JnL3Byb2pl Y3RzL3BsYXNtYS9zeXN0ZW1zZXR0aW5ncyIKIGRpc3RmaWxlcz0iJHtLREVfU0lURX0vcGxhc21h LyR7dmVyc2lvbn0vJHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPTg0OWVh NGYwOWIwYmFhZTg5ODdhMDgyNTEyZDM0YzUwN2E3YzcwZGRiYjcwNmJlNzYyZGNlZDlhODY4ZTA4 YmQKK2NoZWNrc3VtPTlhMTk1ZTgxMzJkZjg0YjNlYTdkYTNmODY0ZmVlZTgxY2ZlMTc1ZmRkZDBi YmQ0ODIyY2E4Y2Q5YTVjMjk3OWUKIAogaWYgWyAiJENST1NTX0JVSUxEIiBdOyB0aGVuCiAJaG9z dG1ha2VkZXBlbmRzKz0iIHB5dGhvbiBxdDUtcW1ha2UgcXQ1LWhvc3QtdG9vbHMga2NvbmZpZwoK RnJvbSAxMDk0NmJlNDJlOTk2MTM5NzU5ZDJjYzUyZTQ0MGNiMGI4Yzc0YjRkIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBKb2huIDxqb2huekBwb3N0ZW8ubmV0PgpEYXRlOiBUdWUsIDI5 IE9jdCAyMDE5IDIzOjEwOjExICswMTAwClN1YmplY3Q6IFtQQVRDSCAxMzAvMTg2XSB1c2VyLW1h bmFnZXI6IHVwZGF0ZSB0byA1LjE3LjIKCltjaSBza2lwXQotLS0KIHNyY3BrZ3MvdXNlci1tYW5h Z2VyL3RlbXBsYXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAy IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvdXNlci1tYW5hZ2VyL3RlbXBsYXRl IGIvc3JjcGtncy91c2VyLW1hbmFnZXIvdGVtcGxhdGUKaW5kZXggYjZlMTNiYWNlYjQuLjM0NTE4 ODZlZWEyIDEwMDY0NAotLS0gYS9zcmNwa2dzL3VzZXItbWFuYWdlci90ZW1wbGF0ZQorKysgYi9z cmNwa2dzL3VzZXItbWFuYWdlci90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxhdGUg ZmlsZSBmb3IgJ3VzZXItbWFuYWdlcicKIHBrZ25hbWU9dXNlci1tYW5hZ2VyCi12ZXJzaW9uPTUu MTcuMQordmVyc2lvbj01LjE3LjIKIHJldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPWNtYWtlCiBjb25m aWd1cmVfYXJncz0iLURCVUlMRF9URVNUSU5HPU9GRiIKQEAgLTE0LDQgKzE0LDQgQEAgbWFpbnRh aW5lcj0iSm9obiA8am9obnpAcG9zdGVvLm5ldD4iCiBsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVy IgogaG9tZXBhZ2U9Imh0dHBzOi8vcHJvamVjdHMua2RlLm9yZy9wcm9qZWN0cy9wbGFzbWEvdXNl ci1tYW5hZ2VyIgogZGlzdGZpbGVzPSIke0tERV9TSVRFfS9wbGFzbWEvJHt2ZXJzaW9ufS8ke3Br Z25hbWV9LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09ODA5NDg0NjM3MjMzNjUyOTJiMWM5 YTU0NDJjZGU3MzQxNzJiNzVmOWI5MTg0MjlkYTdmNzgzYTJjNjE5ZTg3YQorY2hlY2tzdW09YTkz MDgxMGNhM2Y3NWQ2YWFkMjJkMDA3MWRhMjAyMzZjNjM4ZTI3OTFiMDE3ZDBlNTk0YjJhNjg3OTUy YzI3MQoKRnJvbSBiZjk1MjkwMmYwYjg1ZTQzYzAwODZhOGJiMWNkZWVjYzdjOTlhMTkzIE1vbiBT ZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBKb2huIDxqb2huekBwb3N0ZW8ubmV0PgpEYXRlOiBU dWUsIDI5IE9jdCAyMDE5IDIzOjEwOjEzICswMTAwClN1YmplY3Q6IFtQQVRDSCAxMzEvMTg2XSB4 ZGctZGVza3RvcC1wb3J0YWwta2RlOiB1cGRhdGUgdG8gNS4xNy4yCgpbY2kgc2tpcF0KLS0tCiBz cmNwa2dzL3hkZy1kZXNrdG9wLXBvcnRhbC1rZGUvdGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBj aGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3Jj cGtncy94ZGctZGVza3RvcC1wb3J0YWwta2RlL3RlbXBsYXRlIGIvc3JjcGtncy94ZGctZGVza3Rv cC1wb3J0YWwta2RlL3RlbXBsYXRlCmluZGV4IGNhNmI1ODE4YTdkLi4wNjIwYjEwODc1OSAxMDA2 NDQKLS0tIGEvc3JjcGtncy94ZGctZGVza3RvcC1wb3J0YWwta2RlL3RlbXBsYXRlCisrKyBiL3Ny Y3BrZ3MveGRnLWRlc2t0b3AtcG9ydGFsLWtkZS90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMg VGVtcGxhdGUgZmlsZSBmb3IgJ3hkZy1kZXNrdG9wLXBvcnRhbC1rZGUnCiBwa2duYW1lPXhkZy1k ZXNrdG9wLXBvcnRhbC1rZGUKLXZlcnNpb249NS4xNy4xCit2ZXJzaW9uPTUuMTcuMgogcmV2aXNp b249MQogYnVpbGRfc3R5bGU9Y21ha2UKIGhvc3RtYWtlZGVwZW5kcz0iZXh0cmEtY21ha2UtbW9k dWxlcyBxdDUtcW1ha2UgcXQ1LWhvc3QtdG9vbHMga2NvcmVhZGRvbnMiCkBAIC0xMCw0ICsxMCw0 IEBAIG1haW50YWluZXI9IkpvaG4gPGpvaG56QHBvc3Rlby5uZXQ+IgogbGljZW5zZT0iR1BMLTMu MC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL3BoYWJyaWNhdG9yLmtkZS5vcmcvc291cmNl L3hkZy1kZXNrdG9wLXBvcnRhbC1rZGUiCiBkaXN0ZmlsZXM9IiR7S0RFX1NJVEV9L3BsYXNtYS8k e3ZlcnNpb259LyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT0zMzAzNTg0 MDljOGVmYzk2NGVjZGQ4ZThhOWZlYThjZTZiZDcwYTFhMGU4MWQyMjhiY2MyODA4MzMxNzIyNjA4 CitjaGVja3N1bT1kY2NiZjEwMjJjMDkzODBmYTgwODFmYjIxOGY5NzBkYjZlMGZjNmM0MzdjMTdh ZjE3NjcxNWI4MjViNTIxMWVlCgpGcm9tIDk2NjIzZWZiMmQ0Y2EzODZlMzFjYjc0NTAyN2M0YzFl MTcxMjJiZDEgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IGxlbW1pIDxsZW1taUBuZXJk Mm5lcmQub3JnPgpEYXRlOiBXZWQsIDMwIE9jdCAyMDE5IDA0OjA5OjQ3ICswMTAwClN1YmplY3Q6 IFtQQVRDSCAxMzIvMTg2XSB3aXJlZ3VhcmQtZ286IHJlbW92ZQoKLS0tCiBzcmNwa2dzL3dpcmVn dWFyZC1nby9JTlNUQUxMLm1zZyB8ICAzICsrKwogc3JjcGtncy93aXJlZ3VhcmQtZ28vdGVtcGxh dGUgICAgfCAxOCArKysrKy0tLS0tLS0tLS0tLS0KIHNyY3BrZ3Mvd2lyZWd1YXJkLWdvL3VwZGF0 ZSAgICAgIHwgIDIgLS0KIDMgZmlsZXMgY2hhbmdlZCwgOCBpbnNlcnRpb25zKCspLCAxNSBkZWxl dGlvbnMoLSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3dpcmVndWFyZC1nby9JTlNUQUxM Lm1zZwogZGVsZXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3Mvd2lyZWd1YXJkLWdvL3VwZGF0ZQoKZGlm ZiAtLWdpdCBhL3NyY3BrZ3Mvd2lyZWd1YXJkLWdvL0lOU1RBTEwubXNnIGIvc3JjcGtncy93aXJl Z3VhcmQtZ28vSU5TVEFMTC5tc2cKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw MDAuLjMxZmIwNWZlYWVkCi0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy93aXJlZ3VhcmQtZ28v SU5TVEFMTC5tc2cKQEAgLTAsMCArMSwzIEBACit3aXJlZ3VhcmQtZ28gaXMgbm8gbG9uZ2VyIHBy b3ZpZGVkIGJ5IFZvaWQgTGludXgsIGFuZCB3aWxsIGJlIGZ1bGx5IHJlbW92ZWQgZnJvbSB0aGUg cmVwb3Mgb24gMjAyMC0wMi0wMS4KKworVXNlIGJvcmluZ3R1biBhcyBhbiBhbHRlcm5hdGl2ZSB1 c2Vyc3BhY2UgaW1wbGVtZW50YXRpb24gZm9yIFdpcmVndWFyZC4KZGlmZiAtLWdpdCBhL3NyY3Br Z3Mvd2lyZWd1YXJkLWdvL3RlbXBsYXRlIGIvc3JjcGtncy93aXJlZ3VhcmQtZ28vdGVtcGxhdGUK aW5kZXggZTUyZDMxZmVlZTMuLjQzNGU0M2FkYThkIDEwMDY0NAotLS0gYS9zcmNwa2dzL3dpcmVn dWFyZC1nby90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3dpcmVndWFyZC1nby90ZW1wbGF0ZQpAQCAt MSwxOCArMSwxMCBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnd2lyZWd1YXJkLWdvJwogcGtnbmFt ZT13aXJlZ3VhcmQtZ28KIHZlcnNpb249MC4wLjIwMTgxMjIyCi1yZXZpc2lvbj0xCi1idWlsZF9z dHlsZT1nbwotZ29faW1wb3J0X3BhdGg9ImdpdC56eDJjNC5jb20vd2lyZWd1YXJkLWdvIgotaG9z dG1ha2VkZXBlbmRzPSJnaXQiCi1kZXBlbmRzPSJ3aXJlZ3VhcmQtdG9vbHMiCi1zaG9ydF9kZXNj PSJJbXBsZW1lbnRhdGlvbiBvZiBXaXJlR3VhcmQgaW4gR28iCityZXZpc2lvbj0yCithcmNocz1u b2FyY2gKK2J1aWxkX3N0eWxlPW1ldGEKK3Nob3J0X2Rlc2M9IkltcGxlbWVudGF0aW9uIG9mIFdp cmVHdWFyZCBpbiBHbyAocmVtb3ZlZCBwYWNrYWdlKSIKIG1haW50YWluZXI9ImxlbW1pIDxsZW1t aUBuZXJkMm5lcmQub3JnPiIKLWxpY2Vuc2U9IkdQTC0yIgorbGljZW5zZT0iQlNELTItQ2xhdXNl IiAjIFN1cHByZXNzIHhsaW50IHdhcm5pbmc6IHZsaWNlbnNlCiBob21lcGFnZT0iaHR0cHM6Ly9n aXQuengyYzQuY29tL3dpcmVndWFyZC1nby9hYm91dC8iCi1kaXN0ZmlsZXM9Imh0dHBzOi8vZ2l0 Lnp4MmM0LmNvbS93aXJlZ3VhcmQtZ28vc25hcHNob3Qvd2lyZWd1YXJkLWdvLSR7dmVyc2lvbn0u dGFyLnh6IgotY2hlY2tzdW09NTNkYzYxMTUyNGM0MGNkZGQyNDJjOTcyYTk1NTlmOTc5M2UxMjhh MGNlNzcyNDgzZjEyYTI3MDRjOWY0OGM1NAotCi1wcmVfYnVpbGQoKSB7Ci0Jcm0gZG9ub3R1c2Vv bl9saW51eC5nbwotfQpkaWZmIC0tZ2l0IGEvc3JjcGtncy93aXJlZ3VhcmQtZ28vdXBkYXRlIGIv c3JjcGtncy93aXJlZ3VhcmQtZ28vdXBkYXRlCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRl eCA3MGVlNWU1NjcxNi4uMDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtncy93aXJlZ3VhcmQtZ28vdXBk YXRlCisrKyAvZGV2L251bGwKQEAgLTEsMiArMCwwIEBACi1zaXRlPSdodHRwczovL2dpdC56eDJj NC5jb20vd2lyZWd1YXJkLWdvLycKLXBhdHRlcm49J3dpcmVndWFyZC1nby1cS1tcZC5dKlxkJwoK RnJvbSA2NWMyZDJkNGRlNDZlYzJiZTVkOWU0Y2EwYTJlZjcyNjI1M2Y1MTE0IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBsZW1taSA8bGVtbWlAbmVyZDJuZXJkLm9yZz4KRGF0ZTogV2Vk LCAzMCBPY3QgMjAxOSAwMzo1Nzo1MyArMDEwMApTdWJqZWN0OiBbUEFUQ0ggMTMzLzE4Nl0gZGlz cGNhbEdVSTogdXBkYXRlIHRvIDMuOC43LjEuCgotLS0KIHNyY3BrZ3MvZGlzcGNhbEdVSS90ZW1w bGF0ZSB8IDQgKystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlv bnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2Rpc3BjYWxHVUkvdGVtcGxhdGUgYi9zcmNwa2dz L2Rpc3BjYWxHVUkvdGVtcGxhdGUKaW5kZXggNDI5NjBkYWEzZDguLjU5MDgxZDBiNGViIDEwMDY0 NAotLS0gYS9zcmNwa2dzL2Rpc3BjYWxHVUkvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9kaXNwY2Fs R1VJL3RlbXBsYXRlCkBAIC0xLDYgKzEsNiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZGlzcGNh bEdVSScKIHBrZ25hbWU9ZGlzcGNhbEdVSQotdmVyc2lvbj0zLjguNi4wCit2ZXJzaW9uPTMuOC43 LjEKIHJldmlzaW9uPTEKIF9uYW1lPSJEaXNwbGF5Q0FMIgogd3Jrc3JjPSIke19uYW1lfS0ke3Zl cnNpb259IgpAQCAtMTQsNyArMTQsNyBAQCBtYWludGFpbmVyPSJsZW1taSA8bGVtbWlAbmVyZDJu ZXJkLm9yZz4iCiBsaWNlbnNlPSJHUEwtMy4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8v ZGlzcGxheWNhbC5uZXQvIgogZGlzdGZpbGVzPSIke1NPVVJDRUZPUkdFX1NJVEV9L2Rpc3BjYWxn dWkvJHtfbmFtZX0tJHt2ZXJzaW9ufS50YXIuZ3oiCi1jaGVja3N1bT03YmU5MTNmNGExM2Y0NDYx ZjVjZGNlYTU3Mzk1YmE5OWFkNGVmYWE2MjA2ZTg5MWVkMWM2OWM3ODYyNjMwNWZiCitjaGVja3N1 bT1jZjZmYmU1ZjdkOWY2MzZiMTI0ODZiZTE0ODhmNGEzMzhhMTE0Y2RhZjMxYTZjZDNhMThkMmM4 NGZkZGE2ZDY4CiAKIHByZV9jb25maWd1cmUoKSB7CiAJc2VkIC1pICdzfE1pbWVUeXBlPW1vZGVs L3ZybWw7eC13b3JsZC94LXZybWw7fE1pbWVUeXBlPW1vZGVsL3ZybWw7fCcgbWlzYy9kaXNwbGF5 Y2FsLXZybWwtdG8teDNkLWNvbnZlcnRlci5kZXNrdG9wCgpGcm9tIDUwYWI5NWFkZGNlZjhjNTI0 ZWE1N2Y5ZTg3MzI0YzFlYzRiZjYyODMgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IGxl bW1pIDxsZW1taUBuZXJkMm5lcmQub3JnPgpEYXRlOiBXZWQsIDMwIE9jdCAyMDE5IDAzOjU4OjI0 ICswMTAwClN1YmplY3Q6IFtQQVRDSCAxMzQvMTg2XSBzNi1uZXR3b3JraW5nOiB1cGRhdGUgdG8g Mi4zLjEuMS4KCi0tLQogc3JjcGtncy9zNi1uZXR3b3JraW5nL3RlbXBsYXRlIHwgNiArKystLS0K IDEgZmlsZSBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCgpkaWZmIC0t Z2l0IGEvc3JjcGtncy9zNi1uZXR3b3JraW5nL3RlbXBsYXRlIGIvc3JjcGtncy9zNi1uZXR3b3Jr aW5nL3RlbXBsYXRlCmluZGV4IDY4NDFlMjUxNzBhLi43ZmVkYzhiMGViZCAxMDA2NDQKLS0tIGEv c3JjcGtncy9zNi1uZXR3b3JraW5nL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvczYtbmV0d29ya2lu Zy90ZW1wbGF0ZQpAQCAtMSwxOSArMSwxOSBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnczYtbmV0 d29ya2luZycKIHBrZ25hbWU9czYtbmV0d29ya2luZwotdmVyc2lvbj0yLjMuMS4wCit2ZXJzaW9u PTIuMy4xLjEKIHJldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPWNvbmZpZ3VyZQotbWFrZWRlcGVuZHM9 ImV4ZWNsaW5lLWRldmVsIGxpYnJlc3NsLWRldmVsIHNrYWxpYnMtZGV2ZWwgczYtZGV2ZWwgczYt ZG5zLWRldmVsIgogY29uZmlndXJlX2FyZ3M9Ii0tbGliZGlyPS91c3IvbGliIC0tZW5hYmxlLXNz bD1saWJyZXNzbAogIC0td2l0aC1zeXNkZXBzPSR7WEJQU19DUk9TU19CQVNFfS91c3IvbGliL3Nr YWxpYnMvc3lzZGVwcwogIC0td2l0aC1saWI9JHtYQlBTX0NST1NTX0JBU0V9L3Vzci9saWIgLS1i aW5kaXI9L3Vzci9iaW4iCittYWtlZGVwZW5kcz0iZXhlY2xpbmUtZGV2ZWwgbGlicmVzc2wtZGV2 ZWwgc2thbGlicy1kZXZlbCBzNi1kZXZlbCBzNi1kbnMtZGV2ZWwiCiBzaG9ydF9kZXNjPSJTdWl0 ZSBvZiBzbWFsbCBuZXR3b3JrIHV0aWxpdGllcyBmb3IgVW5peCBzeXN0ZW1zIgogbWFpbnRhaW5l cj0ibGVtbWkgPGxlbW1pQG5lcmQybmVyZC5vcmc+IgogbGljZW5zZT0iSVNDIgogaG9tZXBhZ2U9 Imh0dHBzOi8vc2thcm5ldC5vcmcvc29mdHdhcmUvJHtwa2duYW1lfS8iCiBjaGFuZ2Vsb2c9Imh0 dHBzOi8vc2thcm5ldC5vcmcvc29mdHdhcmUvczYtbmV0d29ya2luZy91cGdyYWRlLmh0bWwiCiBk aXN0ZmlsZXM9Imh0dHBzOi8vc2thcm5ldC5vcmcvc29mdHdhcmUvJHtwa2duYW1lfS8ke3BrZ25h bWV9LSR7dmVyc2lvbn0udGFyLmd6IgotY2hlY2tzdW09ODE0ZmEzYjcwNzE4ZDI0MjNjNzQyZTky MGQzMWY2NDA4ODI3MmY3OTg3YzJjZjdiZWJjODZhNjNhNzU1OTZiOAorY2hlY2tzdW09OWQ0MTFi NWY3NDI1MjliZThlMTRkYTBhMjE2MzVmY2MzMDRhNGQ3YWMwNWZlMGU0NWNmMjM1NWU1ZTNjZjE4 OAogCiBjYXNlICIkWEJQU19UQVJHRVRfTUFDSElORSIgaW4KIAkqLW11c2wpIG1ha2VkZXBlbmRz Kz0iIG5zc3MtZGV2ZWwiIGNvbmZpZ3VyZV9hcmdzKz0iIC0tZW5hYmxlLW5zc3MiIDs7CgpGcm9t IDQxYjU4YWFhZjJjYjkzNzdmMzc0YTJkZWI0MGRhYmQ5MDk3M2RlMTkgTW9uIFNlcCAxNyAwMDow MDowMCAyMDAxCkZyb206IGxlbW1pIDxsZW1taUBuZXJkMm5lcmQub3JnPgpEYXRlOiBXZWQsIDMw IE9jdCAyMDE5IDAzOjU4OjM3ICswMTAwClN1YmplY3Q6IFtQQVRDSCAxMzUvMTg2XSBzNi1kbnM6 IHVwZGF0ZSB0byAyLjMuMS4xLgoKLS0tCiBzcmNwa2dzL3M2LWRucy90ZW1wbGF0ZSB8IDQgKyst LQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRpZmYg LS1naXQgYS9zcmNwa2dzL3M2LWRucy90ZW1wbGF0ZSBiL3NyY3BrZ3MvczYtZG5zL3RlbXBsYXRl CmluZGV4IDZiNzc4NTE2Y2M2Li4zNGM4YTA1ZWRmNiAxMDA2NDQKLS0tIGEvc3JjcGtncy9zNi1k bnMvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9zNi1kbnMvdGVtcGxhdGUKQEAgLTEsNiArMSw2IEBA CiAjIFRlbXBsYXRlIGZpbGUgZm9yICdzNi1kbnMnCiBwa2duYW1lPXM2LWRucwotdmVyc2lvbj0y LjMuMS4wCit2ZXJzaW9uPTIuMy4xLjEKIHJldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPWNvbmZpZ3Vy ZQogY29uZmlndXJlX2FyZ3M9Ii0tcHJlZml4PS91c3IgLS1saWJkaXI9L3Vzci9saWIKQEAgLTEy LDcgKzEyLDcgQEAgbWFpbnRhaW5lcj0ibGVtbWkgPGxlbW1pQG5lcmQybmVyZC5vcmc+IgogbGlj ZW5zZT0iSVNDIgogaG9tZXBhZ2U9Imh0dHBzOi8vc2thcm5ldC5vcmcvc29mdHdhcmUvJHtwa2du YW1lfS8iCiBkaXN0ZmlsZXM9Imh0dHBzOi8vc2thcm5ldC5vcmcvc29mdHdhcmUvJHtwa2duYW1l fS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLmd6IgotY2hlY2tzdW09YjExY2UyNTU2NjhiNjgz ZDc4NWExZWY4YmE4OTU1MWE5NTg2NDgxYjg4ODhiYzFhNjZkNGI5OTdlNjg4OTJjYQorY2hlY2tz dW09NDE1ZTNlOGE4YmFhYTM5YjNlYWM1N2VlZjhiMzAyM2Q2M2JjZGIzM2Q5ZjliMDNiY2IyOThm ZDk0MDU4OTEzMgogCiBwb3N0X2luc3RhbGwoKSB7CiAJdmxpY2Vuc2UgQ09QWUlORwoKRnJvbSBl MTVjMWUxNzIxYWM5YjFkOTlhZjYxMzk2ZGZhYmYxYTdlMzhkYmUzIE1vbiBTZXAgMTcgMDA6MDA6 MDAgMjAwMQpGcm9tOiBsZW1taSA8bGVtbWlAbmVyZDJuZXJkLm9yZz4KRGF0ZTogV2VkLCAzMCBP Y3QgMjAxOSAwNDowMTo0OSArMDEwMApTdWJqZWN0OiBbUEFUQ0ggMTM2LzE4Nl0gbGlibXlzb2Zh OiB1cGRhdGUgdG8gMC44LgoKLS0tCiBzcmNwa2dzL2xpYm15c29mYS90ZW1wbGF0ZSB8IDQgKyst LQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRpZmYg LS1naXQgYS9zcmNwa2dzL2xpYm15c29mYS90ZW1wbGF0ZSBiL3NyY3BrZ3MvbGlibXlzb2ZhL3Rl bXBsYXRlCmluZGV4IDcyYjI3M2MwYTI5Li5jMTJjNTczOGMxNSAxMDA2NDQKLS0tIGEvc3JjcGtn cy9saWJteXNvZmEvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9saWJteXNvZmEvdGVtcGxhdGUKQEAg LTEsNiArMSw2IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdsaWJteXNvZmEnCiBwa2duYW1lPWxp Ym15c29mYQotdmVyc2lvbj0wLjcKK3ZlcnNpb249MC44CiByZXZpc2lvbj0xCiBidWlsZF9zdHls ZT1jbWFrZQogY29uZmlndXJlX2FyZ3M9Ii1EQlVJTERfVEVTVFM9T0ZGIgpAQCAtMTEsNyArMTEs NyBAQCBtYWludGFpbmVyPSJsZW1taSA8bGVtbWlAbmVyZDJuZXJkLm9yZz4iCiBsaWNlbnNlPSJC U0QtMy1DbGF1c2UiCiBob21lcGFnZT0iaHR0cHM6Ly9naXRodWIuY29tL2hvZW5lL2xpYm15c29m YSIKIGRpc3RmaWxlcz0iaHR0cHM6Ly9naXRodWIuY29tL2hvZW5lL2xpYm15c29mYS9hcmNoaXZl L3Yke3ZlcnNpb259LnRhci5neiIKLWNoZWNrc3VtPWMxZTZhMGE5MWZlZTg5NjI1YTYwYmVmZWM2 NzRiZjJiNGJmMTcwNTU2NzY5MzM3MjdmMTA2Nzg1ZTBlYTQyYTMKK2NoZWNrc3VtPTBlMGFiYjZl YzZmNWYwOTI2NjMyNTc0MWQ2ZWYyMTg1MzIxODcxMjlmNjVkMGJjNmIyMWUxNTU3NjBkZmIyYWQK IAogcG9zdF9pbnN0YWxsKCkgewogCXZsaWNlbnNlIExJQ0VOU0UKCkZyb20gMjFkZTg2MGE5Y2M0 YjI4MmE3MjQ5MmQ4MDA4NzU4MmQ1OGFiOWMxYiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJv bTogbGVtbWkgPGxlbW1pQG5lcmQybmVyZC5vcmc+CkRhdGU6IFdlZCwgMzAgT2N0IDIwMTkgMDQ6 MDE6MjIgKzAxMDAKU3ViamVjdDogW1BBVENIIDEzNy8xODZdIG9iczogdXBkYXRlIHRvIDI0LjAu My4KCi0tLQogc3JjcGtncy9vYnMvdGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAy IGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9vYnMv dGVtcGxhdGUgYi9zcmNwa2dzL29icy90ZW1wbGF0ZQppbmRleCAzZWQ0MjZiMTU4My4uYmVjMmFk Nzc2ZDggMTAwNjQ0Ci0tLSBhL3NyY3BrZ3Mvb2JzL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3Mvb2Jz L3RlbXBsYXRlCkBAIC0xLDYgKzEsNiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnb2JzJwogcGtn bmFtZT1vYnMKLXZlcnNpb249MjQuMC4xCit2ZXJzaW9uPTI0LjAuMwogcmV2aXNpb249MQogX2Nv bW1pdF9oYXNoX29ic19icm93c2VyPSI2OTM0OThiNTE4Y2Y4OTM4NzZmNDU0ZWY1ODFlMTMxMDZl ODM3MGVjIgogX2NvbW1pdF9oYXNoX29ic192c3Q9ImZkZTQzOGY3YThhZmRmNDFhN2FiMzg2YTBh YTFhNjExNzVmYzg0MjciCkBAIC0yMyw3ICsyMyw3IEBAIGRpc3RmaWxlcz0iaHR0cHM6Ly9naXRo dWIuY29tL29ic3Byb2plY3Qvb2JzLXN0dWRpby9hcmNoaXZlLyR7dmVyc2lvbn0udGFyLmd6CiBo dHRwczovL2dpdGh1Yi5jb20vb2JzcHJvamVjdC9vYnMtYnJvd3Nlci9hcmNoaXZlLyR7X2NvbW1p dF9oYXNoX29ic19icm93c2VyfS50YXIuZ3o+b2JzX2Jyb3dzZXIudGd6CiBodHRwczovL2dpdGh1 Yi5jb20vb2JzcHJvamVjdC9vYnMtdnN0L2FyY2hpdmUvJHtfY29tbWl0X2hhc2hfb2JzX3ZzdH0u dGFyLmd6Pm9ic192c3QudGd6CiBodHRwczovL2dpdGh1Yi5jb20vTWl4ZXIvZnRsLXNkay9hcmNo aXZlLyR7X2NvbW1pdF9oYXNoX2Z0bF9zZGt9LnRhci5nej5mdGxfc2RrLnRneiIKLWNoZWNrc3Vt PSI1YzI5ODMyOGZkNWU4ZjM3MjA5MWZkNjA1YWQ3MTk2ZGE3M2ZlOTgxNjY4ZGRiN2FkZDBhOTMw ODU3YmJiNmU5CitjaGVja3N1bT0iMTlmNTliNWE1OGUyMTU4YTkzZmU0MjVlMjM2YzJkNTM1YWZj YmZkNmIxZDRjODgxY2QxZDgwMjNhN2UzYzQ3NAogIDM1NGM1Nzc1YmJhNWY0M2MyZDk0ZWQzY2Ex Nzc3ZGJiN2I2ODZmN2Y3YTk0MzY4Mzk5NmRiYjNhYWMxMDM3YWMKICAwZTQ1MDIwMmU2YTkwZjU2 MTMyZGUwNDE1YTNkNDYxNWU5ODA3Yjc5OWEzZDE5NTVlNDViMzNkZjY4NTM1Y2VjCiAgMDBiYjBk OWRmZTljY2NkODY1ZWVhNGViYmU3N2UzYTFmNGExMzhiNGExOGFiNGVmYjI1ZWMzY2RkYjZkMWZk MSIKCkZyb20gMWE3Yzk4MTlmZmFjOWFjMWU2OGMxNjkxZWQ2YjM0OGJiMzY3OTc3OCBNb24gU2Vw IDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogbGVtbWkgPGxlbW1pQG5lcmQybmVyZC5vcmc+CkRhdGU6 IFdlZCwgMzAgT2N0IDIwMTkgMDM6NDk6NDAgKzAxMDAKU3ViamVjdDogW1BBVENIIDEzOC8xODZd IGRhcmt0YWJsZTogdXBkYXRlIHRvIDIuNi4zLgoKLS0tCiBzcmNwa2dzL2Rhcmt0YWJsZS90ZW1w bGF0ZSB8IDYgKysrLS0tCiAxIGZpbGUgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAzIGRlbGV0 aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZGFya3RhYmxlL3RlbXBsYXRlIGIvc3JjcGtn cy9kYXJrdGFibGUvdGVtcGxhdGUKaW5kZXggNmY3MGIzNDg3YzQuLjYxY2FjMDY0YTNhIDEwMDY0 NAotLS0gYS9zcmNwa2dzL2Rhcmt0YWJsZS90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2Rhcmt0YWJs ZS90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2Rhcmt0YWJs ZScKIHBrZ25hbWU9ZGFya3RhYmxlCi12ZXJzaW9uPTIuNi4yCit2ZXJzaW9uPTIuNi4zCiByZXZp c2lvbj0xCiAjIHVwc3RyZWFtIG9ubHkgc3VwcG9ydHMgdGhlc2UgYXJjaHM6CiBhcmNocz0iaTY4 NiogeDg2XzY0KiBhYXJjaDY0KiBwcGM2NGxlKiIKQEAgLTE4LDExICsxOCwxMSBAQCBtYWtlZGVw ZW5kcz0iZ3RrKzMtZGV2ZWwgZ2xpYi1kZXZlbCBleGl2Mi1kZXZlbCBsaWJnbGFkZS1kZXZlbCBs aWJ4c2x0LWRldmVsCiBkZXBlbmRzPSJhZHdhaXRhLWljb24tdGhlbWUiCiBzaG9ydF9kZXNjPSJW aXJ0dWFsIGxpZ2h0dGFibGUgYW5kIGRhcmtyb29tIGZvciBwaG90b2dyYXBoZXJzIgogbWFpbnRh aW5lcj0ibGVtbWkgPGxlbW1pQG5lcmQybmVyZC5vcmc+IgotbGljZW5zZT0iR1BMLTMiCitsaWNl bnNlPSJHUEwtMy4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHA6Ly93d3cuZGFya3RhYmxlLm9y Zy8iCiBjaGFuZ2Vsb2c9Imh0dHBzOi8vZ2l0aHViLmNvbS9kYXJrdGFibGUtb3JnL2Rhcmt0YWJs ZS9yZWxlYXNlcyIKIGRpc3RmaWxlcz0iaHR0cHM6Ly9naXRodWIuY29tL2Rhcmt0YWJsZS1vcmcv ZGFya3RhYmxlL3JlbGVhc2VzL2Rvd25sb2FkL3JlbGVhc2UtJHt2ZXJzaW9ufS9kYXJrdGFibGUt JHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT05Y2I5ZWZiYjA5YTQwMzc1ZmYwNWNlZjg5MzQz MjM1YTYyMWM1ODMzOTUzOWU0NDk4NTQ3MGEwMjlhN2ZmYjQ1CitjaGVja3N1bT1hNTE4OTk5Yzg0 NTg0NzJlZGZjMDQ1NzcwMjZjZTUwNDdkNzQ1NTMwNTJhZjBmNTJkMTBiYThjZTYwMWI3OGYwCiAK IGNhc2UgIiRYQlBTX1RBUkdFVF9NQUNISU5FIiBpbgogCXBwYzY0bGUqKSBjb25maWd1cmVfYXJn cys9IiAtRFVTRV9PUEVOQ0w9T0ZGIgoKRnJvbSA2YmFiYzJjMDgyM2RkYmZjMzVlM2Y5YmFkYWM4 ZjQ4ODg3MGExYmQ0IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBLeWxlIE51c2JhdW0g PEt5bGVKTnVzYmF1bUBnbWFpbC5jb20+CkRhdGU6IFR1ZSwgMjkgT2N0IDIwMTkgMTI6MzM6MTcg LTA1MDAKU3ViamVjdDogW1BBVENIIDEzOS8xODZdIE5ldyBwYWNrYWdlOiBtYWtlLWNhLTEuNQoK LS0tCiBzcmNwa2dzL21ha2UtY2EvdGVtcGxhdGUgfCAxNiArKysrKysrKysrKysrKysrCiAxIGZp bGUgY2hhbmdlZCwgMTYgaW5zZXJ0aW9ucygrKQogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3Mv bWFrZS1jYS90ZW1wbGF0ZQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbWFrZS1jYS90ZW1wbGF0ZSBi L3NyY3BrZ3MvbWFrZS1jYS90ZW1wbGF0ZQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw MDAwMDAwMC4uYmNjNDFmODExOWQKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL21ha2UtY2Ev dGVtcGxhdGUKQEAgLTAsMCArMSwxNiBAQAorIyBUZW1wbGF0ZSBmaWxlIGZvciAnbWFrZS1jYScK K3BrZ25hbWU9bWFrZS1jYQordmVyc2lvbj0xLjUKK3JldmlzaW9uPTEKK3dya3NyYz0ibWFrZS1j YS0ke3ZlcnNpb259IgorYnVpbGRfc3R5bGU9Z251LW1ha2VmaWxlCittYWtlX2luc3RhbGxfYXJn cz0iU0JJTkRJUj0vdXNyL2JpbiIKK2hvc3RtYWtlZGVwZW5kcz0iaGVscDJtYW4iCitkZXBlbmRz PSJwMTEta2l0Igorc2hvcnRfZGVzYz0iUEtJIHNldHVwIHNjcmlwdCBmb3IgTEZTIChhbmQgb3Ro ZXJzKSIKK21haW50YWluZXI9Ikt5bGUgTnVzYmF1bSA8a251c2JhdW0rdm9pZEBzZGYub3JnPiIK K2xpY2Vuc2U9IkdQTC0zLjAtb3ItbGF0ZXIiCitob21lcGFnZT0iaHR0cHM6Ly9naXRodWIuY29t L2RqbHVjYXMvbWFrZS1jYS8iCitkaXN0ZmlsZXM9Imh0dHBzOi8vZ2l0aHViLmNvbS9kamx1Y2Fz L21ha2UtY2EvcmVsZWFzZXMvZG93bmxvYWQvdiR7dmVyc2lvbn0vbWFrZS1jYS0ke3ZlcnNpb259 LnRhci54eiIKK2NoZWNrc3VtPWU3NTc3MWRkNzNlYjk3MTg5MzM5Mzc5NjI2ZmI0MjI0MWVlNTc5 MDU4YzZlYTI5MDBlYzg1MGU3ZDk2MTc5ZjcKK2FyY2hzPW5vYXJjaAoKRnJvbSA3MTc2NDgzNTQ4 MWZiMDgwMjIzMDY2OWJjOTg4YTE5YjE2MDFjNWVhIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpG cm9tOiBLeWxlIE51c2JhdW0gPEt5bGVKTnVzYmF1bUBnbWFpbC5jb20+CkRhdGU6IFR1ZSwgMjkg T2N0IDIwMTkgMTI6MzM6NTggLTA1MDAKU3ViamVjdDogW1BBVENIIDE0MC8xODZdIE5ldyBwYWNr YWdlOiBvcGVuamRrMTEtYmluLTExKzI4CgotLS0KIHNyY3BrZ3Mvb3BlbmpkazExLWJpbi90ZW1w bGF0ZSB8IDczICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKIDEgZmlsZSBjaGFu Z2VkLCA3MyBpbnNlcnRpb25zKCspCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy9vcGVuamRr MTEtYmluL3RlbXBsYXRlCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9vcGVuamRrMTEtYmluL3RlbXBs YXRlIGIvc3JjcGtncy9vcGVuamRrMTEtYmluL3RlbXBsYXRlCm5ldyBmaWxlIG1vZGUgMTAwNjQ0 CmluZGV4IDAwMDAwMDAwMDAwLi5iMmRhODNkMjFlYgotLS0gL2Rldi9udWxsCisrKyBiL3NyY3Br Z3Mvb3BlbmpkazExLWJpbi90ZW1wbGF0ZQpAQCAtMCwwICsxLDczIEBACisjIFRlbXBsYXRlIGZp bGUgZm9yICdvcGVuamRrMTEtYmluJworcGtnbmFtZT1vcGVuamRrMTEtYmluCit2ZXJzaW9uPTEx KzI4CityZXZpc2lvbj0xCithcmNocz0ieDg2XzY0Igord3Jrc3JjPWpkay0xMQorc2hvcnRfZGVz Yz0iT2ZmaWNpYWwgUmVmZXJlbmNlIEltcGxlbWVudGF0aW9uIGZvciBKYXZhIFNFIDExIgorbWFp bnRhaW5lcj0iS3lsZSBOdXNiYXVtIDxrbnVzYmF1bSt2b2lkQHNkZi5vcmc+IgorbGljZW5zZT0i R1BMLTIuMC1vci1sYXRlciIKK2hvbWVwYWdlPSJodHRwczovL2pkay5qYXZhLm5ldC9qYXZhLXNl LXJpLzExIgorZGlzdGZpbGVzPSJodHRwczovL2Rvd25sb2FkLmphdmEubmV0L29wZW5qZGsvamRr MTEvcmkvb3Blbmpkay0ke3ZlcnNpb259X2xpbnV4LXg2NF9iaW4udGFyLmd6IgorY2hlY2tzdW09 Mzc4NGNmYzQ2NzBmMGQ0YzU0ODI2MDRjN2M1MTNiZWIxYTkyYjAwNWY1NjlkZjliZjEwMGU4YmVm NjYxMGYyZQorbm9waWU9dHJ1ZQorCithbHRlcm5hdGl2ZXM9IgorIGphdmE6L3Vzci9iaW4vamF2 YTovdXNyL2xpYi9qdm0vb3BlbmpkazExLWJpbi9iaW4vamF2YQorIGphdmE6L3Vzci9iaW4vamF2 YXdzOi91c3IvbGliL2p2bS9vcGVuamRrMTEtYmluL2Jpbi9qYXZhd3MKKyBqYXZhOi91c3IvYmlu L2pjb250cm9sOi91c3IvbGliL2p2bS9vcGVuamRrMTEtYmluL2Jpbi9qY29udHJvbAorIGphdmE6 L3Vzci9iaW4vampzOi91c3IvbGliL2p2bS9vcGVuamRrMTEtYmluL2Jpbi9qanMKKyBqYXZhOi91 c3IvYmluL2tleXRvb2w6L3Vzci9saWIvanZtL29wZW5qZGsxMS1iaW4vYmluL2tleXRvb2wKKyBq YXZhOi91c3IvYmluL29yYmQ6L3Vzci9saWIvanZtL29wZW5qZGsxMS1iaW4vYmluL29yYmQKKyBq YXZhOi91c3IvYmluL3BhY2syMDA6L3Vzci9saWIvanZtL29wZW5qZGsxMS1iaW4vYmluL3BhY2sy MDAKKyBqYXZhOi91c3IvYmluL3BvbGljeXRvb2w6L3Vzci9saWIvanZtL29wZW5qZGsxMS1iaW4v YmluL3BvbGljeXRvb2wKKyBqYXZhOi91c3IvYmluL3JtaWQ6L3Vzci9saWIvanZtL29wZW5qZGsx MS1iaW4vYmluL3JtaWQKKyBqYXZhOi91c3IvYmluL3JtaXJlZ2lzdHJ5Oi91c3IvbGliL2p2bS9v cGVuamRrMTEtYmluL2Jpbi9ybWlyZWdpc3RyeQorIGphdmE6L3Vzci9iaW4vc2VydmVydG9vbDov dXNyL2xpYi9qdm0vb3BlbmpkazExLWJpbi9iaW4vc2VydmVydG9vbAorIGphdmE6L3Vzci9iaW4v dG5hbWVzZXJ2Oi91c3IvbGliL2p2bS9vcGVuamRrMTEtYmluL2Jpbi90bmFtZXNlcnYKKyBqYXZh Oi91c3IvYmluL3VucGFjazIwMDovdXNyL2xpYi9qdm0vb3BlbmpkazExLWJpbi9iaW4vdW5wYWNr MjAwCisKKyBqZGs6L3Vzci9iaW4vQ29udHJvbFBhbmVsOi91c3IvbGliL2p2bS9vcGVuamRrMTEt YmluL2Jpbi9Db250cm9sUGFuZWwKKyBqZGs6L3Vzci9iaW4vYXBwbGV0dmlld2VyOi91c3IvbGli L2p2bS9vcGVuamRrMTEtYmluL2Jpbi9hcHBsZXR2aWV3ZXIKKyBqZGs6L3Vzci9iaW4vZXh0Y2hl Y2s6L3Vzci9saWIvanZtL29wZW5qZGsxMS1iaW4vYmluL2V4dGNoZWNrCisgamRrOi91c3IvYmlu L2lkbGo6L3Vzci9saWIvanZtL29wZW5qZGsxMS1iaW4vYmluL2lkbGoKKyBqZGs6L3Vzci9iaW4v amFyOi91c3IvbGliL2p2bS9vcGVuamRrMTEtYmluL2Jpbi9qYXIKKyBqZGs6L3Vzci9iaW4vamFy c2lnbmVyOi91c3IvbGliL2p2bS9vcGVuamRrMTEtYmluL2Jpbi9qYXJzaWduZXIKKyBqZGs6L3Vz ci9iaW4vamF2YS1ybWkuY2dpOi91c3IvbGliL2p2bS9vcGVuamRrMTEtYmluL2Jpbi9qYXZhLXJt aS5jZ2kKKyBqZGs6L3Vzci9iaW4vamF2YWM6L3Vzci9saWIvanZtL29wZW5qZGsxMS1iaW4vYmlu L2phdmFjCisgamRrOi91c3IvYmluL2phdmFkb2M6L3Vzci9saWIvanZtL29wZW5qZGsxMS1iaW4v YmluL2phdmFkb2MKKyBqZGs6L3Vzci9iaW4vamF2YWZ4cGFja2FnZXI6L3Vzci9saWIvanZtL29w ZW5qZGsxMS1iaW4vYmluL2phdmFmeHBhY2thZ2VyCisgamRrOi91c3IvYmluL2phdmFoOi91c3Iv bGliL2p2bS9vcGVuamRrMTEtYmluL2Jpbi9qYXZhaAorIGpkazovdXNyL2Jpbi9qYXZhcDovdXNy L2xpYi9qdm0vb3BlbmpkazExLWJpbi9iaW4vamF2YXAKKyBqZGs6L3Vzci9iaW4vamF2YXBhY2th Z2VyOi91c3IvbGliL2p2bS9vcGVuamRrMTEtYmluL2Jpbi9qYXZhcGFja2FnZXIKKyBqZGs6L3Vz ci9iaW4vamNtZDovdXNyL2xpYi9qdm0vb3BlbmpkazExLWJpbi9iaW4vamNtZAorIGpkazovdXNy L2Jpbi9qY29uc29sZTovdXNyL2xpYi9qdm0vb3BlbmpkazExLWJpbi9iaW4vamNvbnNvbGUKKyBq ZGs6L3Vzci9iaW4vamRiOi91c3IvbGliL2p2bS9vcGVuamRrMTEtYmluL2Jpbi9qZGIKKyBqZGs6 L3Vzci9iaW4vamRlcHM6L3Vzci9saWIvanZtL29wZW5qZGsxMS1iaW4vYmluL2pkZXBzCisgamRr Oi91c3IvYmluL2poYXQ6L3Vzci9saWIvanZtL29wZW5qZGsxMS1iaW4vYmluL2poYXQKKyBqZGs6 L3Vzci9iaW4vamluZm86L3Vzci9saWIvanZtL29wZW5qZGsxMS1iaW4vYmluL2ppbmZvCisgamRr Oi91c3IvYmluL2ptYXA6L3Vzci9saWIvanZtL29wZW5qZGsxMS1iaW4vYmluL2ptYXAKKyBqZGs6 L3Vzci9iaW4vam1jOi91c3IvbGliL2p2bS9vcGVuamRrMTEtYmluL2Jpbi9qbWMKKyBqZGs6L3Vz ci9iaW4vam1jLmluaTovdXNyL2xpYi9qdm0vb3BlbmpkazExLWJpbi9iaW4vam1jLmluaQorIGpk azovdXNyL2Jpbi9qcHM6L3Vzci9saWIvanZtL29wZW5qZGsxMS1iaW4vYmluL2pwcworIGpkazov dXNyL2Jpbi9qcnVuc2NyaXB0Oi91c3IvbGliL2p2bS9vcGVuamRrMTEtYmluL2Jpbi9qcnVuc2Ny aXB0CisgamRrOi91c3IvYmluL2pzYWRlYnVnZDovdXNyL2xpYi9qdm0vb3BlbmpkazExLWJpbi9i aW4vanNhZGVidWdkCisgamRrOi91c3IvYmluL2pzdGFjazovdXNyL2xpYi9qdm0vb3BlbmpkazEx LWJpbi9iaW4vanN0YWNrCisgamRrOi91c3IvYmluL2pzdGF0Oi91c3IvbGliL2p2bS9vcGVuamRr MTEtYmluL2Jpbi9qc3RhdAorIGpkazovdXNyL2Jpbi9qc3RhdGQ6L3Vzci9saWIvanZtL29wZW5q ZGsxMS1iaW4vYmluL2pzdGF0ZAorIGpkazovdXNyL2Jpbi9qdmlzdWFsdm06L3Vzci9saWIvanZt L29wZW5qZGsxMS1iaW4vYmluL2p2aXN1YWx2bQorIGpkazovdXNyL2Jpbi9uYXRpdmUyYXNjaWk6 L3Vzci9saWIvanZtL29wZW5qZGsxMS1iaW4vYmluL25hdGl2ZTJhc2NpaQorIGpkazovdXNyL2Jp bi9ybWljOi91c3IvbGliL2p2bS9vcGVuamRrMTEtYmluL2Jpbi9ybWljCisgamRrOi91c3IvYmlu L3NjaGVtYWdlbjovdXNyL2xpYi9qdm0vb3BlbmpkazExLWJpbi9iaW4vc2NoZW1hZ2VuCisgamRr Oi91c3IvYmluL3NlcmlhbHZlcjovdXNyL2xpYi9qdm0vb3BlbmpkazExLWJpbi9iaW4vc2VyaWFs dmVyCisgamRrOi91c3IvYmluL3dzZ2VuOi91c3IvbGliL2p2bS9vcGVuamRrMTEtYmluL2Jpbi93 c2dlbgorIGpkazovdXNyL2Jpbi93c2ltcG9ydDovdXNyL2xpYi9qdm0vb3BlbmpkazExLWJpbi9i aW4vd3NpbXBvcnQKKyBqZGs6L3Vzci9iaW4veGpjOi91c3IvbGliL2p2bS9vcGVuamRrMTEtYmlu L2Jpbi94amMKKworIGphdmEtcGx1Z2luOi91c3IvbGliL21vemlsbGEvcGx1Z2lucy9saWJucGpw Mi5zbzovdXNyL2xpYi9qdm0vb3BlbmpkazExLWJpbi9qcmUvbGliLyRfYXJjaC9saWJucGpwMi5z bworIgorCitkb19pbnN0YWxsKCkgeworCXZta2RpciAvdXNyL2xpYi9qdm0vb3BlbmpkazExLWJp bgorCWNwIC1SIC4vKiAke0RFU1RESVJ9L3Vzci9saWIvanZtL29wZW5qZGsxMS1iaW4KK30KCkZy b20gOTUwNGFmNTU0NjgwNGVkMjI2OGRmOWI4MDM5MGU5NTE1ZjJkOTFkNiBNb24gU2VwIDE3IDAw OjAwOjAwIDIwMDEKRnJvbTogS3lsZSBOdXNiYXVtIDxLeWxlSk51c2JhdW1AZ21haWwuY29tPgpE YXRlOiBUdWUsIDI5IE9jdCAyMDE5IDEyOjM2OjAwIC0wNTAwClN1YmplY3Q6IFtQQVRDSCAxNDEv MTg2XSBOZXcgcGFja2FnZTogb3BlbmpkazExLTExLjAuNSsxMAoKLS0tCiBjb21tb24vc2hsaWJz ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDYgKwogc3JjcGtncy9vcGVuamRr MTEtZG9jICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAxICsKIHNyY3BrZ3Mvb3BlbmpkazEx LXNyYyAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMSArCiAuLi4vZmlsZXMvbXVzbF9wYXRj aGVzL2FhcmNoNjQucGF0Y2ggICAgICAgICAgfCAgMTEgKwogLi4uL29wZW5qZGsxMS9maWxlcy9t dXNsX3BhdGNoZXMvYXJtLnBhdGNoICAgIHwgIDMwICsKIC4uLi9vcGVuamRrMTEvZmlsZXMvbXVz bF9wYXRjaGVzL2J1aWxkLnBhdGNoICB8IDUzNyArKysrKysrKysrKysrKysrKysKIC4uLi9maWxl cy9tdXNsX3BhdGNoZXMvcHBjNjRsZS5wYXRjaCAgICAgICAgICB8IDIyMSArKysrKysrCiAuLi4v b3BlbmpkazExL2ZpbGVzL211c2xfcGF0Y2hlcy94ODYucGF0Y2ggICAgfCAxMzAgKysrKysKIHNy Y3BrZ3Mvb3BlbmpkazExL3RlbXBsYXRlICAgICAgICAgICAgICAgICAgICB8IDE4MyArKysrKysK IDkgZmlsZXMgY2hhbmdlZCwgMTEyMCBpbnNlcnRpb25zKCspCiBjcmVhdGUgbW9kZSAxMjAwMDAg c3JjcGtncy9vcGVuamRrMTEtZG9jCiBjcmVhdGUgbW9kZSAxMjAwMDAgc3JjcGtncy9vcGVuamRr MTEtc3JjCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy9vcGVuamRrMTEvZmlsZXMvbXVzbF9w YXRjaGVzL2FhcmNoNjQucGF0Y2gKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL29wZW5qZGsx MS9maWxlcy9tdXNsX3BhdGNoZXMvYXJtLnBhdGNoCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtn cy9vcGVuamRrMTEvZmlsZXMvbXVzbF9wYXRjaGVzL2J1aWxkLnBhdGNoCiBjcmVhdGUgbW9kZSAx MDA2NDQgc3JjcGtncy9vcGVuamRrMTEvZmlsZXMvbXVzbF9wYXRjaGVzL3BwYzY0bGUucGF0Y2gK IGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL29wZW5qZGsxMS9maWxlcy9tdXNsX3BhdGNoZXMv eDg2LnBhdGNoCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy9vcGVuamRrMTEvdGVtcGxhdGUK CmRpZmYgLS1naXQgYS9jb21tb24vc2hsaWJzIGIvY29tbW9uL3NobGlicwppbmRleCBhNzllZjk5 NjEzOC4uNDFlNjA5YTMxZGIgMTAwNjQ0Ci0tLSBhL2NvbW1vbi9zaGxpYnMKKysrIGIvY29tbW9u L3NobGlicwpAQCAtMTc4MSw2ICsxNzgxLDEyIEBAIGxpYmF3dF94YXd0LnNvIG9wZW5qZGstanJl LTh1MjBfMQogbGliamF2YS5zbyBvcGVuamRrLWpyZS04dTIwXzEKIGxpYmpsaS5zbyBvcGVuamRr LWpyZS04dTIwXzEKIGxpYmp2bS5zbyBvcGVuamRrLWpyZS04dTIwXzEKK2xpYmphd3Quc28gb3Bl bmpkazExLTExLjAuNSsxMF8xCitsaWJhd3Quc28gb3BlbmpkazExLTExLjAuNSsxMF8xCitsaWJh d3RfeGF3dC5zbyBvcGVuamRrMTEtMTEuMC41KzEwXzEKK2xpYmphdmEuc28gb3BlbmpkazExLTEx LjAuNSsxMF8xCitsaWJqbGkuc28gb3BlbmpkazExLTExLjAuNSsxMF8xCitsaWJqdm0uc28gb3Bl bmpkazExLTExLjAuNSsxMF8xCiBsaWJ1Y2wuc28uNSBsaWJ1Y2wtMC44LjFfMQogbGliaGFuZGxl LnNvLjEgeGZzcHJvZ3MtMy4yLjFfMQogbGlibmZuZXRsaW5rLnNvLjAgbGlibmZuZXRsaW5rLTEu MC4xXzEKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mvb3BlbmpkazExLWRvYyBiL3NyY3BrZ3Mvb3Blbmpk azExLWRvYwpuZXcgZmlsZSBtb2RlIDEyMDAwMAppbmRleCAwMDAwMDAwMDAwMC4uODIxMzQ5NGM0 OWUKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL29wZW5qZGsxMS1kb2MKQEAgLTAsMCArMSBA QAorb3BlbmpkazExClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvc3Jj cGtncy9vcGVuamRrMTEtc3JjIGIvc3JjcGtncy9vcGVuamRrMTEtc3JjCm5ldyBmaWxlIG1vZGUg MTIwMDAwCmluZGV4IDAwMDAwMDAwMDAwLi44MjEzNDk0YzQ5ZQotLS0gL2Rldi9udWxsCisrKyBi L3NyY3BrZ3Mvb3BlbmpkazExLXNyYwpAQCAtMCwwICsxIEBACitvcGVuamRrMTEKXCBObyBuZXds aW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9zcmNwa2dzL29wZW5qZGsxMS9maWxlcy9t dXNsX3BhdGNoZXMvYWFyY2g2NC5wYXRjaCBiL3NyY3BrZ3Mvb3BlbmpkazExL2ZpbGVzL211c2xf cGF0Y2hlcy9hYXJjaDY0LnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw MDAwLi5iOTVmNDU1ZTkyNgotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3Mvb3BlbmpkazExL2Zp bGVzL211c2xfcGF0Y2hlcy9hYXJjaDY0LnBhdGNoCkBAIC0wLDAgKzEsMTEgQEAKK1BhdGNoZXMg Zm9yIG11c2wgdGFrZW4gZnJvbSBBbHBpbmUgbGludXg6IGh0dHBzOi8vZ2l0LmFscGluZWxpbnV4 Lm9yZy9hcG9ydHMvY29tbWl0Lz9pZD04YTFhZTE3ZDRhOWFmNTQyODVjNzg5MWE2ODA2MjBlN2Uy NGM2MjgwCistLS0gb2xkL3NyYy9ob3RzcG90L29zX2NwdS9saW51eF9hYXJjaDY0L29zX2xpbnV4 X2FhcmNoNjQuY3BwCisrKysgbmV3L3NyYy9ob3RzcG90L29zX2NwdS9saW51eF9hYXJjaDY0L29z X2xpbnV4X2FhcmNoNjQuY3BwCitAQCAtNzcsNyArNzcsNiBAQAorICMgaW5jbHVkZSA8cHdkLmg+ CisgIyBpbmNsdWRlIDxwb2xsLmg+CisgIyBpbmNsdWRlIDx1Y29udGV4dC5oPgorLSMgaW5jbHVk ZSA8ZnB1X2NvbnRyb2wuaD4KKworICNpZmRlZiBCVUlMVElOX1NJTQorICNkZWZpbmUgUkVHX1NQ IFJFR19SU1AKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mvb3BlbmpkazExL2ZpbGVzL211c2xfcGF0Y2hl cy9hcm0ucGF0Y2ggYi9zcmNwa2dzL29wZW5qZGsxMS9maWxlcy9tdXNsX3BhdGNoZXMvYXJtLnBh dGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwLi4xMmQwMDIyYzE0OQot LS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3Mvb3BlbmpkazExL2ZpbGVzL211c2xfcGF0Y2hlcy9h cm0ucGF0Y2gKQEAgLTAsMCArMSwzMCBAQAorUGF0Y2hlcyBmb3IgbXVzbCB0YWtlbiBmcm9tIEFs cGluZSBsaW51eDogaHR0cHM6Ly9naXQuYWxwaW5lbGludXgub3JnL2Fwb3J0cy9jb21taXQvP2lk PThhMWFlMTdkNGE5YWY1NDI4NWM3ODkxYTY4MDYyMGU3ZTI0YzYyODAKKy0tLSBvbGQvc3JjL2hv dHNwb3Qvb3NfY3B1L2xpbnV4X2FybS9vc19saW51eF9hcm0uY3BwCisrKysgbmV3L3NyYy9ob3Rz cG90L29zX2NwdS9saW51eF9hcm0vb3NfbGludXhfYXJtLmNwcAorQEAgLTcxLDcgKzcxLDYgQEAK KyAjIGluY2x1ZGUgPHB3ZC5oPgorICMgaW5jbHVkZSA8cG9sbC5oPgorICMgaW5jbHVkZSA8dWNv bnRleHQuaD4KKy0jIGluY2x1ZGUgPGZwdV9jb250cm9sLmg+CisgIyBpbmNsdWRlIDxhc20vcHRy YWNlLmg+CisKKyAjZGVmaW5lIFNQRUxMX1JFR19TUCAgInNwIgorQEAgLTEwNCw2ICsxMDMsMTgg QEAKKyAjZGVmaW5lIEFSTV9SRUdTX0lOX0NPTlRFWFQgIDMxCisKKyAjZWxzZQorKworKy8vIFN0 dXBpZCBoYWNrIGFzIHRoZSBvcmlnaW4gaWYgYmVsb3cgZG9lc250IGNvbXBpbGUgd2l0aCBnY2Mg OC4yLjA6CisrLy8KKysvLyBvc19saW51eF9hcm0uY3BwOjExNDo1OiBlcnJvcjogbWlzc2luZyBi aW5hcnkgb3BlcmF0b3IgYmVmb3JlIHRva2VuICIoIgorKy8vICAjaWYgTkdSRUcgPT0gMTYKKysv LyAgICAgICBefn5+fgorKy8vCisrLy8gVGhlIE5HUkVHIGlzIDE4LCBzbyBmb3JjZSBpdCB0byB0 aGF0IHZhbHVlLgorKyNpZmRlZiBOR1JFRworKyMgIHVuZGVmIE5HUkVHCisrI2VuZGlmCisrI2Rl ZmluZSBOR1JFRyAxOAorCisgI2lmIE5HUkVHID09IDE2CisgLy8gVGhlc2UgZGVmaW5pdGlvbnMg YXJlIGJhc2VkIG9uIHRoZSBvYnNlcnZhdGlvbiB0aGF0IHVudGlsCmRpZmYgLS1naXQgYS9zcmNw a2dzL29wZW5qZGsxMS9maWxlcy9tdXNsX3BhdGNoZXMvYnVpbGQucGF0Y2ggYi9zcmNwa2dzL29w ZW5qZGsxMS9maWxlcy9tdXNsX3BhdGNoZXMvYnVpbGQucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2 NDQKaW5kZXggMDAwMDAwMDAwMDAuLjgxZWQwZjUzYjFkCi0tLSAvZGV2L251bGwKKysrIGIvc3Jj cGtncy9vcGVuamRrMTEvZmlsZXMvbXVzbF9wYXRjaGVzL2J1aWxkLnBhdGNoCkBAIC0wLDAgKzEs NTM3IEBACitQYXRjaGVzIGZvciBtdXNsIHRha2VuIGZyb20gQWxwaW5lIGxpbnV4OiBodHRwczov L2dpdC5hbHBpbmVsaW51eC5vcmcvYXBvcnRzL2NvbW1pdC8/aWQ9OGExYWUxN2Q0YTlhZjU0Mjg1 Yzc4OTFhNjgwNjIwZTdlMjRjNjI4MAorLS0tIG9sZC9tYWtlL1JlbGVhc2VGaWxlLmdtaworKysr IG5ldy9tYWtlL1JlbGVhc2VGaWxlLmdtaworQEAgLTUzLDYgKzUzLDcgQEAKKyAgICQoY2FsbCBp bmZvLWZpbGUtaXRlbSwgIkpBVkFfVkVSU0lPTl9EQVRFIiwgIiQoVkVSU0lPTl9EQVRFKSIpCisg ICAkKGNhbGwgaW5mby1maWxlLWl0ZW0sICJPU19OQU1FIiwgIiQoUkVMRUFTRV9GSUxFX09TX05B TUUpIikKKyAgICQoY2FsbCBpbmZvLWZpbGUtaXRlbSwgIk9TX0FSQ0giLCAiJChSRUxFQVNFX0ZJ TEVfT1NfQVJDSCkiKQorKyAgJChjYWxsIGluZm8tZmlsZS1pdGVtLCAiTElCQyIsICJtdXNsIikK KyBlbmRlZgorCisgIyBQYXJhbSAxIC0gVGhlIGZpbGUgY29udGFpbmluZyB0aGUgTU9EVUxFUyBs aXN0CistLS0gb2xkL21ha2UvYXV0b2NvbmYvYnVpbGQtYXV4L2NvbmZpZy5ndWVzcworKysrIG5l dy9tYWtlL2F1dG9jb25mL2J1aWxkLWF1eC9jb25maWcuZ3Vlc3MKK0BAIC0zMCw2ICszMCwxNyBA QAorIERJUj1gZGlybmFtZSAkMGAKKyBPVVQ9YC4gJERJUi9hdXRvY29uZi1jb25maWcuZ3Vlc3Ng CisKKysjIGNvbmZpZy5ndWVzcyBkb2Vzbid0IGlkZW50aWZ5IHN5c3RlbXMgcnVubmluZyB0aGUg bXVzbCBDIGxpYnJhcnksIGFuZCB3aWxsCisrIyBpbnN0ZWFkIHJldHVybiBhIHN0cmluZyB3aXRo IGEgLWdudSBzdWZmaXguIFRoaXMgYmxvY2sgZGV0ZWN0cyBtdXNsIGFuZAorKyMgbW9kaWZpZXMg dGhlIHN0cmluZyB0byBoYXZlIGEgLW11c2wgc3VmZml4IGluc3RlYWQuIAorK2VjaG8gJE9VVCB8 IGdyZXAgLS0gLWxpbnV4LSA+IC9kZXYvbnVsbCAyPiAvZGV2L251bGwKKytpZiB0ZXN0ICQ/ID0g MDsgdGhlbgorKyAgbGRkX3ZlcnNpb249YGxkZCAtLXZlcnNpb24gMj4mMSB8IGhlYWQgLTEgfCBj dXQgLWYxIC1kJyAnYAorKyAgaWYgWyB4IiR7bGRkX3ZlcnNpb259IiA9IHgibXVzbCIgXTsgdGhl bgorKyAgICBPVVQ9YGVjaG8gJE9VVCB8IHNlZCAncy8tZ251Ly1tdXNsLydgCisrICBmaQorK2Zp CisrCisgIyBUZXN0IGFuZCBmaXggc29sYXJpcyBvbiB4ODZfNjQKKyBlY2hvICRPVVQgfCBncmVw IGkzODYtcGMtc29sYXJpcyA+IC9kZXYvbnVsbCAyPiAvZGV2L251bGwKKyBpZiB0ZXN0ICQ/ID0g MDsgdGhlbgorLS0tIG9sZC9tYWtlL2hvdHNwb3QvbGliL0NvbXBpbGVKdm0uZ21rCisrKysgbmV3 L21ha2UvaG90c3BvdC9saWIvQ29tcGlsZUp2bS5nbWsKK0BAIC03Nyw2ICs3Nyw3IEBACisgICAg IC1ESE9UU1BPVF9CVUlMRF9VU0VSPSciJChVU0VSTkFNRSkiJyBcCisgICAgIC1ESE9UU1BPVF9W TV9ESVNUUk89JyIkKEhPVFNQT1RfVk1fRElTVFJPKSInIFwKKyAgICAgLURDUFU9JyIkKE9QRU5K REtfVEFSR0VUX0NQVV9WTV9WRVJTSU9OKSInIFwKKysgICAgLURMSUJDPScibXVzbCInIFwKKyAg ICAgIworCisgIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMKKy0tLSBvbGQvbWFrZS9saWIvQ29yZUxp YnJhcmllcy5nbWsKKysrKyBuZXcvbWFrZS9saWIvQ29yZUxpYnJhcmllcy5nbWsKK0BAIC0yNDEs NiArMjQxLDcgQEAKKyBlbmRpZgorCisgTElCSkxJX0NGTEFHUyArPSAkKExJQlpfQ0ZMQUdTKQor K0xJQkpMSV9DRkxBR1MgKz0gLURMSUJDPVwibXVzbFwiCisKKyBpZm5lcSAoJChVU0VfRVhURVJO QUxfTElCWiksIHRydWUpCisgICBMSUJKTElfRVhUUkFfRklMRVMgKz0gXAorLS0tIG9sZC9zcmMv aG90c3BvdC9vcy9saW51eC9vc19saW51eC5jcHAKKysrKyBuZXcvc3JjL2hvdHNwb3Qvb3MvbGlu dXgvb3NfbGludXguY3BwCitAQCAtOTksNyArOTksNiBAQAorICMgaW5jbHVkZSA8c3RyaW5nLmg+ CisgIyBpbmNsdWRlIDxzeXNjYWxsLmg+CisgIyBpbmNsdWRlIDxzeXMvc3lzaW5mby5oPgorLSMg aW5jbHVkZSA8Z251L2xpYmMtdmVyc2lvbi5oPgorICMgaW5jbHVkZSA8c3lzL2lwYy5oPgorICMg aW5jbHVkZSA8c3lzL3NobS5oPgorICMgaW5jbHVkZSA8bGluay5oPgorQEAgLTUxMSw2ICs1MTAs MTEgQEAKKyAvLyBkZXRlY3RpbmcgcHRocmVhZCBsaWJyYXJ5CisKKyB2b2lkIG9zOjpMaW51eDo6 bGlicHRocmVhZF9pbml0KCkgeworKyNpZiAhZGVmaW5lZChfX0dMSUJDX18pICYmICFkZWZpbmVk KF9fVUNMSUJDX18pCisrICAvLyBIYXJkIGNvZGUgQWxwaW5lIExpbnV4IHN1cHBvcnRlZCBtdXNs IGNvbXBhdGlibGUgc2V0dGluZ3MKKysgIG9zOjpMaW51eDo6c2V0X2dsaWJjX3ZlcnNpb24oImds aWJjIDIuOSIpOworKyAgb3M6OkxpbnV4OjpzZXRfbGlicHRocmVhZF92ZXJzaW9uKCJOUFRMIik7 CisrI2Vsc2UKKyAgIC8vIFNhdmUgZ2xpYmMgYW5kIHB0aHJlYWQgdmVyc2lvbiBzdHJpbmdzLgor ICNpZiAhZGVmaW5lZChfQ1NfR05VX0xJQkNfVkVSU0lPTikgfHwgXAorICAgICAhZGVmaW5lZChf Q1NfR05VX0xJQlBUSFJFQURfVkVSU0lPTikKK0BAIC01MjgsNiArNTMyLDcgQEAKKyAgIHN0ciA9 IChjaGFyICopbWFsbG9jKG4sIG10SW50ZXJuYWwpOworICAgY29uZnN0cihfQ1NfR05VX0xJQlBU SFJFQURfVkVSU0lPTiwgc3RyLCBuKTsKKyAgIG9zOjpMaW51eDo6c2V0X2xpYnB0aHJlYWRfdmVy c2lvbihzdHIpOworKyNlbmRpZgorIH0KKworIC8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v Ly8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCitAQCAtMjkx NiwyMCArMjkyMSwzNiBAQAorIGV4dGVybiAiQyIgSk5JRVhQT1JUIHZvaWQgbnVtYV93YXJuKGlu dCBudW1iZXIsIGNoYXIgKndoZXJlLCAuLi4pIHsgfQorIGV4dGVybiAiQyIgSk5JRVhQT1JUIHZv aWQgbnVtYV9lcnJvcihjaGFyICp3aGVyZSkgeyB9CisKKytzdGF0aWMgdm9pZCogZGx2c3ltX2lm X2F2YWlsYWJsZSh2b2lkKiBoYW5kbGUsIGNvbnN0IGNoYXIqIG5hbWUsIGNvbnN0IGNoYXIqIHZl cnNpb24pIHsKKysgIHR5cGVkZWYgdm9pZCogKCpkbHZzeW1fZnVuY190eXBlKSh2b2lkKiBoYW5k bGUsIGNvbnN0IGNoYXIqIG5hbWUsIGNvbnN0IGNoYXIqIHZlcnNpb24pOworKyAgc3RhdGljIGRs dnN5bV9mdW5jX3R5cGUgZGx2c3ltX2Z1bmM7CisrICBzdGF0aWMgYm9vbCBpbml0aWFsaXplZCA9 IGZhbHNlOworKworKyAgaWYgKCFpbml0aWFsaXplZCkgeworKyAgICBkbHZzeW1fZnVuYyA9IChk bHZzeW1fZnVuY190eXBlKWRsc3ltKFJUTERfTkVYVCwgImRsdnN5bSIpOworKyAgICBpbml0aWFs aXplZCA9IHRydWU7CisrICB9CisrCisrICBpZiAoZGx2c3ltX2Z1bmMgIT0gTlVMTCkgeworKyAg ICB2b2lkICpmID0gZGx2c3ltX2Z1bmMoaGFuZGxlLCBuYW1lLCB2ZXJzaW9uKTsKKysgICAgaWYg KGYgIT0gTlVMTCkgeworKyAgICAgIHJldHVybiBmOworKyAgICB9CisrICB9CisrCisrICByZXR1 cm4gZGxzeW0oaGFuZGxlLCBuYW1lKTsKKyt9CisrCisgLy8gSGFuZGxlIHJlcXVlc3QgdG8gbG9h ZCBsaWJudW1hIHN5bWJvbCB2ZXJzaW9uIDEuMSAoQVBJIHYxKS4gSWYgaXQgZmFpbHMKKyAvLyBs b2FkIHN5bWJvbCBmcm9tIGJhc2UgdmVyc2lvbiBpbnN0ZWFkLgorIHZvaWQqIG9zOjpMaW51eDo6 bGlibnVtYV9kbHN5bSh2b2lkKiBoYW5kbGUsIGNvbnN0IGNoYXIgKm5hbWUpIHsKKy0gIHZvaWQg KmYgPSBkbHZzeW0oaGFuZGxlLCBuYW1lLCAibGlibnVtYV8xLjEiKTsKKy0gIGlmIChmID09IE5V TEwpIHsKKy0gICAgZiA9IGRsc3ltKGhhbmRsZSwgbmFtZSk7CistICB9CistICByZXR1cm4gZjsK KysgIHJldHVybiBkbHZzeW1faWZfYXZhaWxhYmxlKGhhbmRsZSwgbmFtZSwgImxpYm51bWFfMS4x Iik7CisgfQorCisgLy8gSGFuZGxlIHJlcXVlc3QgdG8gbG9hZCBsaWJudW1hIHN5bWJvbCB2ZXJz aW9uIDEuMiAoQVBJIHYyKSBvbmx5LgorIC8vIFJldHVybiBOVUxMIGlmIHRoZSBzeW1ib2wgaXMg bm90IGRlZmluZWQgaW4gdGhpcyBwYXJ0aWN1bGFyIHZlcnNpb24uCisgdm9pZCogb3M6OkxpbnV4 OjpsaWJudW1hX3YyX2Rsc3ltKHZvaWQqIGhhbmRsZSwgY29uc3QgY2hhciogbmFtZSkgeworLSAg cmV0dXJuIGRsdnN5bShoYW5kbGUsIG5hbWUsICJsaWJudW1hXzEuMiIpOworKyAgcmV0dXJuIGRs dnN5bV9pZl9hdmFpbGFibGUoaGFuZGxlLCBuYW1lLCAibGlibnVtYV8xLjIiKTsKKyB9CisKKyBi b29sIG9zOjpMaW51eDo6bGlibnVtYV9pbml0KCkgeworLS0tIG9sZC9zcmMvaG90c3BvdC9vc19j cHUvbGludXhfeDg2L29zX2xpbnV4X3g4Ni5jcHAKKysrKyBuZXcvc3JjL2hvdHNwb3Qvb3NfY3B1 L2xpbnV4X3g4Ni9vc19saW51eF94ODYuY3BwCitAQCAtNzUsOSArNzUsNiBAQAorICMgaW5jbHVk ZSA8cHdkLmg+CisgIyBpbmNsdWRlIDxwb2xsLmg+CisgIyBpbmNsdWRlIDx1Y29udGV4dC5oPgor LSNpZm5kZWYgQU1ENjQKKy0jIGluY2x1ZGUgPGZwdV9jb250cm9sLmg+CistI2VuZGlmCisKKyAj aWZkZWYgQU1ENjQKKyAjZGVmaW5lIFJFR19TUCBSRUdfUlNQCistLS0gb2xkL3NyYy9ob3RzcG90 L3NoYXJlL2djL3NoYXJlZC9nZW5Db2xsZWN0ZWRIZWFwLmNwcAorKysrIG5ldy9zcmMvaG90c3Bv dC9zaGFyZS9nYy9zaGFyZWQvZ2VuQ29sbGVjdGVkSGVhcC5jcHAKK0BAIC0xMTQ3LDcgKzExNDcs NyBAQAorIHN0YXRpYyBTY3JhdGNoQmxvY2sgKnJlbW92ZVNtYWxsZXN0U2NyYXRjaChTY3JhdGNo QmxvY2sgKipwcmV2X3B0cikgeworICAgYm9vbCBmaXJzdCA9IHRydWU7CisgICBzaXplX3QgbWlu X3NpemUgPSAwOyAgIC8vICJmaXJzdCIgbWFrZXMgdGhpcyBjb25jZXB0dWFsbHkgaW5maW5pdGUu CistICBTY3JhdGNoQmxvY2sgKipzbWFsbGVzdF9wdHIsICpzbWFsbGVzdDsKKysgIFNjcmF0Y2hC bG9jayAqKnNtYWxsZXN0X3B0ciA9IE5VTEwsICpzbWFsbGVzdDsKKyAgIFNjcmF0Y2hCbG9jayAg KmN1ciA9ICpwcmV2X3B0cjsKKyAgIHdoaWxlIChjdXIpIHsKKyAgICAgYXNzZXJ0KCpwcmV2X3B0 ciA9PSBjdXIsICJqdXN0IGNoZWNraW5nIik7CistLS0gb2xkL3NyYy9ob3RzcG90L3NoYXJlL3J1 bnRpbWUvdm1fdmVyc2lvbi5jcHAKKysrKyBuZXcvc3JjL2hvdHNwb3Qvc2hhcmUvcnVudGltZS92 bV92ZXJzaW9uLmNwcAorQEAgLTI3Miw3ICsyNzIsNyBAQAorICAgI2VuZGlmCisKKyAgICNkZWZp bmUgSU5URVJOQUxfVkVSU0lPTl9TVUZGSVggVk1fUkVMRUFTRSAiKSIgXAorLSAgICAgICAgICIg Zm9yICIgT1MgIi0iIENQVSBGTE9BVF9BUkNIX1NUUiBcCisrICAgICAgICAgIiBmb3IgIiBPUyAi LSIgQ1BVIEZMT0FUX0FSQ0hfU1RSIExJQkMgXAorICAgICAgICAgICIgSlJFICgiIFZFUlNJT05f U1RSSU5HICIpLCBidWlsdCBvbiAiIF9fREFURV9fICIgIiBfX1RJTUVfXyBcCisgICAgICAgICAg IiBieSAiIFhTVFIoSE9UU1BPVF9CVUlMRF9VU0VSKSAiIHdpdGggIiBIT1RTUE9UX0JVSUxEX0NP TVBJTEVSCisKKy0tLSBvbGQvc3JjL2hvdHNwb3Qvc2hhcmUvdXRpbGl0aWVzL2dsb2JhbERlZmlu aXRpb25zX2djYy5ocHAKKysrKyBuZXcvc3JjL2hvdHNwb3Qvc2hhcmUvdXRpbGl0aWVzL2dsb2Jh bERlZmluaXRpb25zX2djYy5ocHAKK0BAIC0yMDQsNyArMjA0LDcgQEAKKyAjZWxpZiBkZWZpbmVk KF9fQVBQTEVfXykKKyBpbmxpbmUgaW50IGdfaXNuYW4oZG91YmxlIGYpIHsgcmV0dXJuIGlzbmFu KGYpOyB9CisgI2VsaWYgZGVmaW5lZChMSU5VWCkgfHwgZGVmaW5lZChfQUxMQlNEX1NPVVJDRSkK Ky1pbmxpbmUgaW50IGdfaXNuYW4oZmxvYXQgIGYpIHsgcmV0dXJuIGlzbmFuZihmKTsgfQorK2lu bGluZSBpbnQgZ19pc25hbihmbG9hdCAgZikgeyByZXR1cm4gaXNuYW4oZik7IH0KKyBpbmxpbmUg aW50IGdfaXNuYW4oZG91YmxlIGYpIHsgcmV0dXJuIGlzbmFuKGYpOyB9CisgI2Vsc2UKKyAjZXJy b3IgIm1pc3NpbmcgcGxhdGZvcm0tc3BlY2lmaWMgZGVmaW5pdGlvbiBoZXJlIgorLS0tIG9sZC9z cmMvamF2YS5iYXNlL2xpbnV4L25hdGl2ZS9saWJuZXQvbGludXhfY2xvc2UuYworKysrIG5ldy9z cmMvamF2YS5iYXNlL2xpbnV4L25hdGl2ZS9saWJuZXQvbGludXhfY2xvc2UuYworQEAgLTYwLDcg KzYwLDcgQEAKKyAvKgorICAqIFNpZ25hbCB0byB1bmJsb2NrIHRocmVhZAorICAqLworLXN0YXRp YyBpbnQgc2lnV2FrZXVwID0gKF9fU0lHUlRNQVggLSAyKTsKKytzdGF0aWMgaW50IHNpZ1dha2V1 cDsKKworIC8qCisgICogZmRUYWJsZSBob2xkcyBvbmUgZW50cnkgcGVyIGZpbGUgZGVzY3JpcHRv ciwgdXAgdG8gYSBjZXJ0YWluCitAQCAtMTQ5LDYgKzE0OSw3IEBACisgICAgIC8qCisgICAgICAq IFNldHVwIHRoZSBzaWduYWwgaGFuZGxlcgorICAgICAgKi8KKysgICAgc2lnV2FrZXVwID0gU0lH UlRNQVggLSAyOworICAgICBzYS5zYV9oYW5kbGVyID0gc2lnX3dha2V1cDsKKyAgICAgc2Euc2Ff ZmxhZ3MgICA9IDA7CisgICAgIHNpZ2VtcHR5c2V0KCZzYS5zYV9tYXNrKTsKKy0tLSBvbGQvc3Jj L2phdmEuYmFzZS91bml4L25hdGl2ZS9saWJqYXZhL2NoaWxkcHJvYy5jCisrKysgbmV3L3NyYy9q YXZhLmJhc2UvdW5peC9uYXRpdmUvbGliamF2YS9jaGlsZHByb2MuYworQEAgLTIzNyw3ICsyMzcs MTMgQEAKKyB7CisgICAgIGlmIChlbnZwID09IE5VTEwgfHwgKGNoYXIgKiopIGVudnAgPT0gZW52 aXJvbikgeworICAgICAgICAgZXhlY3ZwKGZpbGUsIChjaGFyICoqKSBhcmd2KTsKKy0gICAgICAg IHJldHVybjsKKysgICAgICAgIC8vIEVOT0VYRUMgaW5kaWNhdGVzIHRoYXQgdGhlIGZpbGUgaGVh ZGVyIHdhcyBub3QgcmVjb2duaXplZC4gVGhlIG11c2wgQworKyAgICAgICAgLy8gbGlicmFyeSBk b2VzIG5vdCBpbXBsZW1lbnQgdGhlIGZhbGxiYWNrIHRvIC9iaW4vc2ggZm9yIHRoYXQgY2FzZSwg c28gZmFsbAorKyAgICAgICAgLy8gdGhyb3VnaCB0byB0aGUgY29kZSBiZWxvdyB3aGljaCBpbXBs ZW1lbnRzIHRoYXQgZmFsbGJhY2sgdXNpbmcKKysgICAgICAgIC8vIGV4ZWN2ZV93aXRoX3NoZWxs X2ZhbGxiYWNrLgorKyAgICAgICAgaWYgKGVycm5vICE9IEVOT0VYRUMpIHsKKysgICAgICAgICAg ICByZXR1cm47CisrICAgICAgICB9CisgICAgIH0KKworICAgICBpZiAoKmZpbGUgPT0gJ1wwJykg eworLS0tIG9sZC9zcmMvamF2YS5iYXNlL3VuaXgvbmF0aXZlL2xpYmphdmEvamRrX3V0aWxfbWQu aAorKysrIG5ldy9zcmMvamF2YS5iYXNlL3VuaXgvbmF0aXZlL2xpYmphdmEvamRrX3V0aWxfbWQu aAorQEAgLTM3LDcgKzM3LDcgQEAKKyAjZGVmaW5lIElTTkFORChkKSBpc25hbihkKQorICNlbGlm IGRlZmluZWQoX19saW51eF9fKSB8fCBkZWZpbmVkKF9BTExCU0RfU09VUkNFKQorICNpbmNsdWRl IDxtYXRoLmg+CistI2RlZmluZSBJU05BTkYoZikgaXNuYW5mKGYpCisrI2RlZmluZSBJU05BTkYo ZikgaXNuYW4oZikKKyAjZGVmaW5lIElTTkFORChkKSBpc25hbihkKQorICNlbGlmIGRlZmluZWQo X0FJWCkKKyAjaW5jbHVkZSA8bWF0aC5oPgorLS0tIG9sZC9zcmMvamF2YS5iYXNlL3VuaXgvbmF0 aXZlL2xpYmpsaS9qYXZhX21kX3NvbGludXguYworKysrIG5ldy9zcmMvamF2YS5iYXNlL3VuaXgv bmF0aXZlL2xpYmpsaS9qYXZhX21kX3NvbGludXguYworQEAgLTIzNSw2ICsyMzUsMzkgQEAKKyAg ICAgY2hhciAqZG1sbHAgPSBOVUxMOworICAgICBjaGFyICpwOyAvKiBhIHV0aWxpdHkgcG9pbnRl ciAqLworCisrI2lmZGVmIF9fbGludXgKKysjaWZuZGVmIExJQkMKKysjZXJyb3IgIkxJQkMgbm90 IHNldCIKKysjZW5kaWYKKysKKysgICAgaWYgKHN0cmNtcChMSUJDLCAibXVzbCIpID09IDApIHsK KysgICAgICAvKgorKyAgICAgICAqIFRoZSBtdXNsIGxpYnJhcnkgbG9hZGVyIHJlcXVpcmVzIExE X0xJQlJBUllfUEFUSCB0byBiZSBzZXQgaW4KKysgICAgICAgKiBvcmRlciB0byBjb3JyZWN0bHkg cmVzb2x2ZSB0aGUgZGVwZW5kZW5jeSBsaWJqYXZhLnNvIGhhcyBvbiBsaWJqdm0uc28uCisrICAg ICAgICoKKysgICAgICAgKiBTcGVjaWZpY2FsbHksIGl0IGRpZmZlcnMgZnJvbSBnbGliYyBpbiB0 aGUgc2Vuc2UgdGhhdCBldmVuIGlmCisrICAgICAgICogbGlianZtLnNvIGhhcyBhbHJlYWR5IGJl ZW4gbG9hZGVkIGl0IHdpbGwgbm90IGJlIGNvbnNpZGVyZWQgYQorKyAgICAgICAqIGNhbmRpZGF0 ZSBmb3IgcmVzb2x2aW5nIHRoZSBkZXBlbmRlbmN5IHVubGVzcyB0aGUgKmZ1bGwqIHBhdGgKKysg ICAgICAgKiBvZiB0aGUgYWxyZWFkeSBsb2FkZWQgbGlicmFyeSBtYXRjaGVzIHRoZSBkZXBlbmRl bmN5IGJlaW5nIGxvYWRlZC4KKysgICAgICAgKgorKyAgICAgICAqIGxpYmp2bS5zbyBpcyBiZWlu ZyBsb2FkZWQgYnkgdGhlIGxhdW5jaGVyIHVzaW5nIGEgbG9uZyBwYXRoIHRvCisrICAgICAgICog ZGxvcGVuLCBub3QganVzdCB0aGUgYmFzZW5hbWUgb2YgdGhlIGxpYnJhcnkuIFR5cGljYWxseSB0 aGlzCisrICAgICAgICogaXMgc29tZXRoaW5nIGxpa2UgIi4uL2xpYi9zZXJ2ZXIvbGlianZtLnNv Ii4gSG93ZXZlciwgaWYvd2hlbgorKyAgICAgICAqIGxpYmp2bS5zbyBsYXRlciB0cmllcyB0byBk bG9wZW4gbGliamF2YS5zbyAod2hpY2ggaXQgZG9lcyBpbgorKyAgICAgICAqIG9yZGVyIHRvIGdl dCBhY2Nlc3MgdG8gYSBmZXcgZnVuY3Rpb25zIGltcGxlbWVudGVkIGluCisrICAgICAgICogbGli amF2YS5zbykgdGhlIG11c2wgbG9hZGVyIHdpbGwsIGFzIHBhcnQgb2YgbG9hZGluZworKyAgICAg ICAqIGRlcGVuZGVudCBsaWJyYXJpZXMsIHRyeSB0byBsb2FkIGxpYmp2bS5zbyB1c2luZyBvbmx5 IGl0cworKyAgICAgICAqIGJhc2VuYW1lICJsaWJqdm0uc28iLiBTaW5jZSB0aGlzIGRvZXMgbm90 IG1hdGNoIHRoZSBsb25nZXIKKysgICAgICAgKiBwYXRoIHBhdGggaXQgd2FzIGZpcnN0IGxvYWRl ZCB3aXRoLCB0aGUgYWxyZWFkeSBsb2FkZWQKKysgICAgICAgKiBsaWJyYXJ5IGlzIG5vdCBjb25z aWRlcmVkIGEgY2FuZGlkYXRlLCBhbmQgdGhlIGxvYWRlciB3aWxsCisrICAgICAgICogaW5zdGVh ZCBsb29rIGZvciBsaWJqdm0uc28gZWxzZXdoZXJlLiBJZiBpdCdzIG5vdCBpbgorKyAgICAgICAq IExEX0xJQlJBUllfUEFUSCB0aGUgZGVwZW5kZW5jeSBsb2FkIHdpbGwgZmFpbCwgYW5kIGxpYmph dmEuc28KKysgICAgICAgKiB3aWxsIHRoZXJlZm9yZSBmYWlsIGFzIHdlbGwuCisrICAgICAgICov CisrICAgICAgcmV0dXJuIEpOSV9UUlVFOworKyAgICB9CisrI2VuZGlmCisrCisgI2lmZGVmIEFJ WAorICAgICAvKiBXZSBhbHdheXMgaGF2ZSB0byBzZXQgdGhlIExJQlBBVEggb24gQUlYIGJlY2F1 c2UgbGQgZG9lc24ndCBzdXBwb3J0ICRPUklHSU4uICovCisgICAgIHJldHVybiBKTklfVFJVRTsK Ky0tLSBvbGQvc3JjL2phdmEuYmFzZS91bml4L25hdGl2ZS9saWJuaW8vY2gvTmF0aXZlVGhyZWFk LmMKKysrKyBuZXcvc3JjL2phdmEuYmFzZS91bml4L25hdGl2ZS9saWJuaW8vY2gvTmF0aXZlVGhy ZWFkLmMKK0BAIC0zNiw3ICszNiw3IEBACisgI2lmZGVmIF9fbGludXhfXworICAgI2luY2x1ZGUg PHB0aHJlYWQuaD4KKyAgIC8qIEFsc28gZGVmaW5lZCBpbiBuZXQvbGludXhfY2xvc2UuYyAqLwor LSAgI2RlZmluZSBJTlRFUlJVUFRfU0lHTkFMIChfX1NJR1JUTUFYIC0gMikKKysgICNkZWZpbmUg SU5URVJSVVBUX1NJR05BTCAoU0lHUlRNQVggLSAyKQorICNlbGlmIF9BSVgKKyAgICNpbmNsdWRl IDxwdGhyZWFkLmg+CisgICAvKiBBbHNvIGRlZmluZWQgaW4gbmV0L2FpeF9jbG9zZS5jICovCist LS0gb2xkL3NyYy9qYXZhLmRlc2t0b3AvdW5peC9uYXRpdmUvbGliYXd0X3hhd3QveGF3dC9YVG9v bGtpdC5jCisrKysgbmV3L3NyYy9qYXZhLmRlc2t0b3AvdW5peC9uYXRpdmUvbGliYXd0X3hhd3Qv eGF3dC9YVG9vbGtpdC5jCitAQCAtMjcsOSArMjcsNiBAQAorICNpbmNsdWRlIDxYMTEvWHV0aWwu aD4KKyAjaW5jbHVkZSA8WDExL1hvcy5oPgorICNpbmNsdWRlIDxYMTEvWGF0b20uaD4KKy0jaWZk ZWYgX19saW51eF9fCistI2luY2x1ZGUgPGV4ZWNpbmZvLmg+CistI2VuZGlmCisKKyAjaW5jbHVk ZSA8anZtLmg+CisgI2luY2x1ZGUgPGpuaS5oPgorQEAgLTc4NiwyNiArNzgzLDYgQEAKKyAgICAg fQorICAgICByZXR1cm4gcmV0OworIH0KKy0KKy0jaWZkZWYgX19saW51eF9fCistdm9pZCBwcmlu dF9zdGFjayh2b2lkKQorLXsKKy0gIHZvaWQgKmFycmF5WzEwXTsKKy0gIHNpemVfdCBzaXplOwor LSAgY2hhciAqKnN0cmluZ3M7CistICBzaXplX3QgaTsKKy0KKy0gIHNpemUgPSBiYWNrdHJhY2Ug KGFycmF5LCAxMCk7CistICBzdHJpbmdzID0gYmFja3RyYWNlX3N5bWJvbHMgKGFycmF5LCBzaXpl KTsKKy0KKy0gIGZwcmludGYgKHN0ZGVyciwgIk9idGFpbmVkICV6ZCBzdGFjayBmcmFtZXMuXG4i LCBzaXplKTsKKy0KKy0gIGZvciAoaSA9IDA7IGkgPCBzaXplOyBpKyspCistICAgICBmcHJpbnRm IChzdGRlcnIsICIlc1xuIiwgc3RyaW5nc1tpXSk7CistCistICBmcmVlIChzdHJpbmdzKTsKKy19 CistI2VuZGlmCisKKyBXaW5kb3cgZ2V0X3hhd3Rfcm9vdF9zaGVsbChKTklFbnYgKmVudikgewor ICAgc3RhdGljIGpjbGFzcyBjbGFzc1hSb290V2luZG93ID0gTlVMTDsKKy0tLSBvbGQvc3JjL2pk ay5qZHdwLmFnZW50L3NoYXJlL25hdGl2ZS9saWJqZHdwL3V0aWwuaAorKysrIG5ldy9zcmMvamRr Lmpkd3AuYWdlbnQvc2hhcmUvbmF0aXZlL2xpYmpkd3AvdXRpbC5oCitAQCAtMzUsMTUgKzM1LDE1 IEBACisgI2lmZGVmIERFQlVHCisgICAgIC8qIEp1c3QgdG8gbWFrZSBzdXJlIHRoZXNlIGludGVy ZmFjZXMgYXJlIG5vdCB1c2VkIGhlcmUuICovCisgICAgICN1bmRlZiBmcmVlCistICAgICNkZWZp bmUgZnJlZShwKSBEbyBub3QgdXNlIHRoaXMgaW50ZXJmYWNlLgorKyAgICAjZGVmaW5lIGZyZWUg ZG9fbm90X3VzZV90aGlzX2ludGVyZmFjZV9mcmVlCisgICAgICN1bmRlZiBtYWxsb2MKKy0gICAg I2RlZmluZSBtYWxsb2MocCkgRG8gbm90IHVzZSB0aGlzIGludGVyZmFjZS4KKysgICAgI2RlZmlu ZSBtYWxsb2MgZG9fbm90X3VzZV90aGlzX2ludGVyZmFjZV9tYWxsb2MKKyAgICAgI3VuZGVmIGNh bGxvYworLSAgICAjZGVmaW5lIGNhbGxvYyhwKSBEbyBub3QgdXNlIHRoaXMgaW50ZXJmYWNlLgor KyAgICAjZGVmaW5lIGNhbGxvYyBkb19ub3RfdXNlX3RoaXNfaW50ZXJmYWNlX2NhbGxvYworICAg ICAjdW5kZWYgcmVhbGxvYworLSAgICAjZGVmaW5lIHJlYWxsb2MocCkgRG8gbm90IHVzZSB0aGlz IGludGVyZmFjZS4KKysgICAgI2RlZmluZSByZWFsbG9jIGRvX25vdF91c2VfdGhpc19pbnRlcmZh Y2VfcmVhbGxvYworICAgICAjdW5kZWYgc3RyZHVwCistICAgICNkZWZpbmUgc3RyZHVwKHApIERv IG5vdCB1c2UgdGhpcyBpbnRlcmZhY2UuCisrICAgICNkZWZpbmUgc3RyZHVwIGRvX25vdF91c2Vf dGhpc19pbnRlcmZhY2Vfc3RyZHVwCisgI2VuZGlmCisKKyAjaW5jbHVkZSAibG9nX21lc3NhZ2Vz LmgiCistLS0gb2xkL3Rlc3QvaG90c3BvdC9qdHJlZy9ydW50aW1lL1N0YWNrR3VhcmRQYWdlcy9l eGVpbnZva2UuYworKysrIG5ldy90ZXN0L2hvdHNwb3QvanRyZWcvcnVudGltZS9TdGFja0d1YXJk UGFnZXMvZXhlaW52b2tlLmMKK0BAIC0zMyw2ICszMyw3IEBACisKKyAjaW5jbHVkZSA8YXNzZXJ0 Lmg+CisgI2luY2x1ZGUgPGpuaS5oPgorKyNpbmNsdWRlIDxqdm0uaD4KKyAjaW5jbHVkZSA8YWxs b2NhLmg+CisgI2luY2x1ZGUgPHNpZ25hbC5oPgorICNpbmNsdWRlIDxzdHJpbmcuaD4KK0BAIC05 MSw2ICs5MiwyMCBAQAorICAgfQorIH0KKworK2ludCBnZXRfamF2YV9zdGFja3NpemUgKCkgewor KyAgc2l6ZV90IHN0YWNrc2l6ZTsKKysgIHB0aHJlYWRfYXR0cl90IGF0dHI7CisrICBKREsxXzFJ bml0QXJncyBqZGtfYXJnczsKKysKKysgIGpka19hcmdzLnZlcnNpb24gPSBKTklfVkVSU0lPTl8x XzE7CisrICBKTklfR2V0RGVmYXVsdEphdmFWTUluaXRBcmdzKCZqZGtfYXJncyk7CisrICBpZiAo amRrX2FyZ3MuamF2YVN0YWNrU2l6ZSA8PSAwKSB7CisrICAgIGZwcmludGYoc3RkZXJyLCAiVGVz dCBFUlJPUi4gQ2FuJ3QgZ2V0IGEgdmFsaWQgdmFsdWUgZm9yIHRoZSBkZWZhdWx0IHN0YWNrc2l6 ZS5cbiIpOworKyAgICBleGl0KDcpOworKyAgfQorKyAgcmV0dXJuIGpka19hcmdzLmphdmFTdGFj a1NpemU7CisrfQorKworIHZvaWQgKnJ1bl9qYXZhX292ZXJmbG93ICh2b2lkICpwKSB7CisgICBK TklFbnYgKmVudjsKKyAgIGpjbGFzcyBjbGFzc19pZDsKK0BAIC0yNTQsMTMgKzI2OSwxOSBAQAor ICAgICBleGl0KDcpOworICAgfQorCisrICBpbnQgc3RhY2tfc2l6ZSA9IGdldF9qYXZhX3N0YWNr c2l6ZSgpOworICAgcHRocmVhZF90IHRocjsKKysgIHB0aHJlYWRfYXR0cl90IHRocmVhZF9hdHRy OworCisrICBwdGhyZWFkX2F0dHJfaW5pdCgmdGhyZWFkX2F0dHIpOworKyAgcHRocmVhZF9hdHRy X3NldHN0YWNrc2l6ZSgmdGhyZWFkX2F0dHIsIHN0YWNrX3NpemUpOworKworICAgaWYgKGFyZ2Mg PiAxICYmIHN0cmNtcChhcmd2WzFdLCAidGVzdF9qYXZhX292ZXJmbG93IikgPT0gMCkgeworICAg ICBwcmludGYoIlxuVGVzdGluZyBKQVZBX09WRVJGTE9XXG4iKTsKKworICAgICBwcmludGYoIlRl c3Rpbmcgc3RhY2sgZ3VhcmQgcGFnZSBiZWhhdmlvdXIgZm9yIG90aGVyIHRocmVhZFxuIik7Cist ICAgIHB0aHJlYWRfY3JlYXRlICgmdGhyLCBOVUxMLCBydW5famF2YV9vdmVyZmxvdywgTlVMTCk7 CisrCisrICAgIHB0aHJlYWRfY3JlYXRlICgmdGhyLCAmdGhyZWFkX2F0dHIsIHJ1bl9qYXZhX292 ZXJmbG93LCBOVUxMKTsKKyAgICAgcHRocmVhZF9qb2luICh0aHIsIE5VTEwpOworCisgICAgIHBy aW50ZigiVGVzdGluZyBzdGFjayBndWFyZCBwYWdlIGJlaGF2aW91ciBmb3IgaW5pdGlhbCB0aHJl YWRcbiIpOworQEAgLTI3Myw3ICsyOTQsNyBAQAorICAgICBwcmludGYoIlxuVGVzdGluZyBOQVRJ VkVfT1ZFUkZMT1dcbiIpOworCisgICAgIHByaW50ZigiVGVzdGluZyBzdGFjayBndWFyZCBwYWdl IGJlaGF2aW91ciBmb3Igb3RoZXIgdGhyZWFkXG4iKTsKKy0gICAgcHRocmVhZF9jcmVhdGUgKCZ0 aHIsIE5VTEwsIHJ1bl9uYXRpdmVfb3ZlcmZsb3csIE5VTEwpOworKyAgICBwdGhyZWFkX2NyZWF0 ZSAoJnRociwgJnRocmVhZF9hdHRyLCBydW5fbmF0aXZlX292ZXJmbG93LCBOVUxMKTsKKyAgICAg cHRocmVhZF9qb2luICh0aHIsIE5VTEwpOworCisgICAgIHByaW50ZigiVGVzdGluZyBzdGFjayBn dWFyZCBwYWdlIGJlaGF2aW91ciBmb3IgaW5pdGlhbCB0aHJlYWRcbiIpOworLS0tIG9sZC90ZXN0 L2pkay9qYXZhL2xhbmcvUHJvY2Vzc0J1aWxkZXIvQmFzaWMuamF2YQorKysrIG5ldy90ZXN0L2pk ay9qYXZhL2xhbmcvUHJvY2Vzc0J1aWxkZXIvQmFzaWMuamF2YQorQEAgLTM4OSw4ICszODksOCBA QAorICAgICAgICAgICAgICAgICBpZiAoZmFpbGVkICE9IDApIHRocm93IG5ldyBFcnJvcigibnVs bCBQQVRIIik7CisgICAgICAgICAgICAgfSBlbHNlIGlmIChhY3Rpb24uZXF1YWxzKCJQQVRIIHNl YXJjaCBhbGdvcml0aG0iKSkgeworICAgICAgICAgICAgICAgICBlcXVhbChTeXN0ZW0uZ2V0ZW52 KCJQQVRIIiksICJkaXIxOmRpcjI6Iik7CistICAgICAgICAgICAgICAgIGNoZWNrKG5ldyBGaWxl KCIvYmluL3RydWUiKS5leGlzdHMoKSk7CistICAgICAgICAgICAgICAgIGNoZWNrKG5ldyBGaWxl KCIvYmluL2ZhbHNlIikuZXhpc3RzKCkpOworKyAgICAgICAgICAgICAgICBjaGVjayhuZXcgRmls ZShUcnVlRXhlLnBhdGgoKSkuZXhpc3RzKCkpOworKyAgICAgICAgICAgICAgICBjaGVjayhuZXcg RmlsZShGYWxzZUV4ZS5wYXRoKCkpLmV4aXN0cygpKTsKKyAgICAgICAgICAgICAgICAgU3RyaW5n W10gY21kID0geyJwcm9nIn07CisgICAgICAgICAgICAgICAgIFByb2Nlc3NCdWlsZGVyIHBiMSA9 IG5ldyBQcm9jZXNzQnVpbGRlcihjbWQpOworICAgICAgICAgICAgICAgICBQcm9jZXNzQnVpbGRl ciBwYjIgPSBuZXcgUHJvY2Vzc0J1aWxkZXIoY21kKTsKK0BAIC00MzEsMTMgKzQzMSwxMyBAQAor ICAgICAgICAgICAgICAgICAgICAgICAgIGNoZWNrUGVybWlzc2lvbkRlbmllZChwYik7CisKKyAg ICAgICAgICAgICAgICAgICAgICAgICAvLyBjb250aW51ZSBzZWFyY2hpbmcgaWYgRUFDQ0VTCist ICAgICAgICAgICAgICAgICAgICAgICAgY29weSgiL2Jpbi90cnVlIiwgImRpcjIvcHJvZyIpOwor KyAgICAgICAgICAgICAgICAgICAgICAgIGNvcHkoVHJ1ZUV4ZS5wYXRoKCksICJkaXIyL3Byb2ci KTsKKyAgICAgICAgICAgICAgICAgICAgICAgICBlcXVhbChydW4ocGIpLmV4aXRWYWx1ZSgpLCBU cnVlLmV4aXRWYWx1ZSgpKTsKKyAgICAgICAgICAgICAgICAgICAgICAgICBuZXcgRmlsZSgiZGly MS9wcm9nIikuZGVsZXRlKCk7CisgICAgICAgICAgICAgICAgICAgICAgICAgbmV3IEZpbGUoImRp cjIvcHJvZyIpLmRlbGV0ZSgpOworCisgICAgICAgICAgICAgICAgICAgICAgICAgbmV3IEZpbGUo ImRpcjIvcHJvZyIpLm1rZGlycygpOworLSAgICAgICAgICAgICAgICAgICAgICAgIGNvcHkoIi9i aW4vdHJ1ZSIsICJkaXIxL3Byb2ciKTsKKysgICAgICAgICAgICAgICAgICAgICAgICBjb3B5KFRy dWVFeGUucGF0aCgpLCAiZGlyMS9wcm9nIik7CisgICAgICAgICAgICAgICAgICAgICAgICAgZXF1 YWwocnVuKHBiKS5leGl0VmFsdWUoKSwgVHJ1ZS5leGl0VmFsdWUoKSk7CisKKyAgICAgICAgICAg ICAgICAgICAgICAgICAvLyBDaGVjayBlbXB0eSBQQVRIIGNvbXBvbmVudCBtZWFucyBjdXJyZW50 IGRpcmVjdG9yeS4KK0BAIC00NTMsMTAgKzQ1MywxMCBAQAorICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBwYi5jb21tYW5kKGNvbW1hbmQpOworICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBGaWxlIHByb2cgPSBuZXcgRmlsZSgiLi9wcm9nIik7CisgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIC8vICJOb3JtYWwiIGJpbmFyaWVzCistICAgICAgICAgICAgICAgICAgICAgICAgICAg IGNvcHkoIi9iaW4vdHJ1ZSIsICIuL3Byb2ciKTsKKysgICAgICAgICAgICAgICAgICAgICAgICAg ICAgY29weShUcnVlRXhlLnBhdGgoKSwgIi4vcHJvZyIpOworICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBlcXVhbChydW4ocGIpLmV4aXRWYWx1ZSgpLAorICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBUcnVlLmV4aXRWYWx1ZSgpKTsKKy0gICAgICAgICAgICAgICAgICAgICAg ICAgICAgY29weSgiL2Jpbi9mYWxzZSIsICIuL3Byb2ciKTsKKysgICAgICAgICAgICAgICAgICAg ICAgICAgICAgY29weShGYWxzZUV4ZS5wYXRoKCksICIuL3Byb2ciKTsKKyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgZXF1YWwocnVuKHBiKS5leGl0VmFsdWUoKSwKKyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgRmFsc2UuZXhpdFZhbHVlKCkpOworICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBwcm9nLmRlbGV0ZSgpOworQEAgLTUxMSwxMiArNTExLDEyIEBACisgICAg ICAgICAgICAgICAgICAgICAgICAgbmV3IEZpbGUoImRpcjIvcHJvZyIpLmRlbGV0ZSgpOworICAg ICAgICAgICAgICAgICAgICAgICAgIG5ldyBGaWxlKCJwcm9nIikuZGVsZXRlKCk7CisgICAgICAg ICAgICAgICAgICAgICAgICAgbmV3IEZpbGUoImRpcjMiKS5ta2RpcnMoKTsKKy0gICAgICAgICAg ICAgICAgICAgICAgICBjb3B5KCIvYmluL3RydWUiLCAiZGlyMS9wcm9nIik7CistICAgICAgICAg ICAgICAgICAgICAgICAgY29weSgiL2Jpbi9mYWxzZSIsICJkaXIzL3Byb2ciKTsKKysgICAgICAg ICAgICAgICAgICAgICAgICBjb3B5KFRydWVFeGUucGF0aCgpLCAiZGlyMS9wcm9nIik7CisrICAg ICAgICAgICAgICAgICAgICAgICAgY29weShGYWxzZUV4ZS5wYXRoKCksICJkaXIzL3Byb2ciKTsK KyAgICAgICAgICAgICAgICAgICAgICAgICBwYi5lbnZpcm9ubWVudCgpLnB1dCgiUEFUSCIsImRp cjMiKTsKKyAgICAgICAgICAgICAgICAgICAgICAgICBlcXVhbChydW4ocGIpLmV4aXRWYWx1ZSgp LCBUcnVlLmV4aXRWYWx1ZSgpKTsKKy0gICAgICAgICAgICAgICAgICAgICAgICBjb3B5KCIvYmlu L3RydWUiLCAiZGlyMy9wcm9nIik7CistICAgICAgICAgICAgICAgICAgICAgICAgY29weSgiL2Jp bi9mYWxzZSIsICJkaXIxL3Byb2ciKTsKKysgICAgICAgICAgICAgICAgICAgICAgICBjb3B5KFRy dWVFeGUucGF0aCgpLCAiZGlyMy9wcm9nIik7CisrICAgICAgICAgICAgICAgICAgICAgICAgY29w eShGYWxzZUV4ZS5wYXRoKCksICJkaXIxL3Byb2ciKTsKKyAgICAgICAgICAgICAgICAgICAgICAg ICBlcXVhbChydW4ocGIpLmV4aXRWYWx1ZSgpLCBGYWxzZS5leGl0VmFsdWUoKSk7CisKKyAgICAg ICAgICAgICAgICAgICAgIH0gZmluYWxseSB7CitAQCAtNjEzLDYgKzYxMywxMyBAQAorICAgICAg ICAgICAgICBuZXcgRmlsZSgiL2Jpbi9mYWxzZSIpLmV4aXN0cygpKTsKKyAgICAgfQorCisrICAg IHN0YXRpYyBjbGFzcyBCdXN5Qm94IHsKKysgICAgICAgIHB1YmxpYyBzdGF0aWMgYm9vbGVhbiBp cygpIHsgcmV0dXJuIGlzOyB9CisrICAgICAgICBwcml2YXRlIHN0YXRpYyBmaW5hbCBib29sZWFu IGlzID0KKysgICAgICAgICAgICAoISBXaW5kb3dzLmlzKCkgJiYKKysgICAgICAgICAgICAgbmV3 IEZpbGUoIi9iaW4vYnVzeWJveCIpLmV4aXN0cygpKTsKKysgICAgfQorKworICAgICBzdGF0aWMg Y2xhc3MgVW5pY29kZU9TIHsKKyAgICAgICAgIHB1YmxpYyBzdGF0aWMgYm9vbGVhbiBpcygpIHsg cmV0dXJuIGlzOyB9CisgICAgICAgICBwcml2YXRlIHN0YXRpYyBmaW5hbCBTdHJpbmcgb3NOYW1l ID0gU3lzdGVtLmdldFByb3BlcnR5KCJvcy5uYW1lIik7CitAQCAtNjUxLDYgKzY1OCw0NSBAQAor ICAgICAgICAgfQorICAgICB9CisKKysgICAgLy8gT24gYWxwaW5lIGxpbnV4LCAvYmluL3RydWUg YW5kIC9iaW4vZmFsc2UgYXJlIGp1c3QgbGlua3MgdG8gL2Jpbi9idXN5Ym94LgorKyAgICAvLyBT b21lIHRlc3RzIGNvcHkgL2Jpbi90cnVlIGFuZCAvYmluL2ZhbHNlIHRvIGZpbGVzIHdpdGggYSBk aWZmZXJlbnQgZmlsZW5hbWUuCisrICAgIC8vIEhvd2V2ZXIsIGNvcHlpbmcgdGhlIGJ1c2JveCBl eGVjdXRhYmxlIGludG8gYSBmaWxlIHdpdGggYSBkaWZmZXJlbnQgbmFtZQorKyAgICAvLyB3b24n dCByZXN1bHQgaW4gdGhlIGV4cGVjdGVkIHJldHVybiBjb2Rlcy4gQXMgd29ya2Fyb3VuZCwgd2Ug Y3JlYXRlCisrICAgIC8vIGV4ZWN1dGFibGUgZmlsZXMgdGhhdCBjYW4gYmUgY29waWVkIGFuZCBw cm9kdWNlIHRoZSBleGVwZWN0ZWQgcmV0dXJuCisrICAgIC8vIHZhbHVlcy4gV2UgdXNlIHRoaXMg d29ya2Fyb3VuZCwgaWYgd2UgZmluZCB0aGUgYnVzeWJveCBleGVjdXRhYmxlLgorKworKyAgICBw cml2YXRlIHN0YXRpYyBjbGFzcyBUcnVlRXhlIHsKKysgICAgICAgIHB1YmxpYyBzdGF0aWMgU3Ry aW5nIHBhdGgoKSB7IHJldHVybiBwYXRoOyB9CisrICAgICAgICBwcml2YXRlIHN0YXRpYyBmaW5h bCBTdHJpbmcgcGF0aCA9IHBhdGgwKCk7CisrICAgICAgICBwcml2YXRlIHN0YXRpYyBTdHJpbmcg cGF0aDAoKXsKKysgICAgICAgICAgICBpZiAoIUJ1c3lCb3guaXMoKSkgeworKyAgICAgICAgICAg ICAgICByZXR1cm4gIi9iaW4vdHJ1ZSI7CisrICAgICAgICAgICAgfQorKyAgICAgICAgICAgIGVs c2UgeworKyAgICAgICAgICAgICAgICBGaWxlIHRydWVFeGUgPSBuZXcgRmlsZSgidHJ1ZSIpOwor KyAgICAgICAgICAgICAgICBzZXRGaWxlQ29udGVudHModHJ1ZUV4ZSwgIiMhL2Jpbi90cnVlXG4i KTsKKysgICAgICAgICAgICAgICAgdHJ1ZUV4ZS5zZXRFeGVjdXRhYmxlKHRydWUpOworKyAgICAg ICAgICAgICAgICByZXR1cm4gdHJ1ZUV4ZS5nZXRBYnNvbHV0ZVBhdGgoKTsKKysgICAgICAgICAg ICB9CisrICAgICAgICB9CisrICAgIH0KKysKKysgICAgcHJpdmF0ZSBzdGF0aWMgY2xhc3MgRmFs c2VFeGUgeworKyAgICAgICAgcHVibGljIHN0YXRpYyBTdHJpbmcgcGF0aCgpIHsgcmV0dXJuIHBh dGg7IH0KKysgICAgICAgIHByaXZhdGUgc3RhdGljIGZpbmFsIFN0cmluZyBwYXRoID0gcGF0aDAo KTsKKysgICAgICAgIHByaXZhdGUgc3RhdGljIFN0cmluZyBwYXRoMCgpeworKyAgICAgICAgICAg IGlmICghQnVzeUJveC5pcygpKSB7CisrICAgICAgICAgICAgICAgIHJldHVybiAiL2Jpbi9mYWxz ZSI7CisrICAgICAgICAgICAgfQorKyAgICAgICAgICAgIGVsc2UgeworKyAgICAgICAgICAgICAg ICBGaWxlIGZhbHNlRXhlID0gbmV3IEZpbGUoImZhbHNlIik7CisrICAgICAgICAgICAgICAgIHNl dEZpbGVDb250ZW50cyhmYWxzZUV4ZSwgIiMhL2Jpbi9mYWxzZVxuIik7CisrICAgICAgICAgICAg ICAgIGZhbHNlRXhlLnNldEV4ZWN1dGFibGUodHJ1ZSk7CisrICAgICAgICAgICAgICAgIHJldHVy biBmYWxzZUV4ZS5nZXRBYnNvbHV0ZVBhdGgoKTsKKysgICAgICAgICAgICB9CisrICAgICAgICB9 CisrICAgIH0KKysKKyAgICAgc3RhdGljIGNsYXNzIEVuZ2xpc2hVbml4IHsKKyAgICAgICAgIHBy aXZhdGUgc3RhdGljIGZpbmFsIEJvb2xlYW4gaXMgPQorICAgICAgICAgICAgICghIFdpbmRvd3Mu aXMoKSAmJiBpc0VuZ2xpc2goIkxBTkciKSAmJiBpc0VuZ2xpc2goIkxDX0FMTCIpKTsKK0BAIC0x OTU0LDcgKzIwMDAsNyBAQAorICAgICAgICAgICAgIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorICAgICAgICAgICAgIHRy eSB7CisgICAgICAgICAgICAgICAgIG5ldyBGaWxlKCJzdUJkaVIiKS5ta2RpcnMoKTsKKy0gICAg ICAgICAgICAgICAgY29weSgiL2Jpbi90cnVlIiwgInN1QmRpUi91bmxpS2VseSIpOworKyAgICAg ICAgICAgICAgICBjb3B5KFRydWVFeGUucGF0aCgpLCAic3VCZGlSL3VubGlLZWx5Iik7CisgICAg ICAgICAgICAgICAgIGZpbmFsIFByb2Nlc3NCdWlsZGVyIHBiID0KKyAgICAgICAgICAgICAgICAg ICAgIG5ldyBQcm9jZXNzQnVpbGRlcihuZXcgU3RyaW5nW117InVubGlLZWx5In0pOworICAgICAg ICAgICAgICAgICBwYi5lbnZpcm9ubWVudCgpLnB1dCgiUEFUSCIsICJzdUJkaVIiKTsKKy0tLSBv bGQvdGVzdC9qZGsvamF2YS9sYW5nL1Byb2Nlc3NIYW5kbGUvSW5mb1Rlc3QuamF2YQorKysrIG5l dy90ZXN0L2pkay9qYXZhL2xhbmcvUHJvY2Vzc0hhbmRsZS9JbmZvVGVzdC5qYXZhCitAQCAtMjk4 LDYgKzI5OCwxMyBAQAorICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgIGlmIChp bmZvLmNvbW1hbmQoKS5pc1ByZXNlbnQoKSkgeworICAgICAgICAgICAgICAgICAgICAgU3RyaW5n IGNvbW1hbmQgPSBpbmZvLmNvbW1hbmQoKS5nZXQoKTsKKy0gICAgICAgICAgICAgICAgICAgIFN0 cmluZyBleHBlY3RlZCA9IFBsYXRmb3JtLmlzV2luZG93cygpID8gInNsZWVwLmV4ZSIgOiAic2xl ZXAiOworKyAgICAgICAgICAgICAgICAgICAgU3RyaW5nIGV4cGVjdGVkID0gInNsZWVwIjsKKysg ICAgICAgICAgICAgICAgICAgIGlmIChQbGF0Zm9ybS5pc1dpbmRvd3MoKSkgeworKyAgICAgICAg ICAgICAgICAgICAgICAgIGV4cGVjdGVkID0gInNsZWVwLmV4ZSI7CisrICAgICAgICAgICAgICAg ICAgICB9IGVsc2UgaWYgKG5ldyBGaWxlKCIvYmluL2J1c3lib3giKS5leGlzdHMoKSkgeworKyAg ICAgICAgICAgICAgICAgICAgICAgIC8vIFdpdGggYnVzeWJveCBzbGVlcCBpcyBqdXN0IGEgc3lt IGxpbmsgdG8gYnVzeWJveC4KKysgICAgICAgICAgICAgICAgICAgICAgICAvLyBUaGUgYnVzYm94 IGV4ZWN1dGFibGUgaXMgc2VlbiBhcyBQcm9jZXNzSGFuZGxlLkluZm8gY29tbWFuZC4KKysgICAg ICAgICAgICAgICAgICAgICAgICBleHBlY3RlZCA9ICJidXN5Ym94IjsKKysgICAgICAgICAgICAg ICAgICAgIH0KKyAgICAgICAgICAgICAgICAgICAgIEFzc2VydC5hc3NlcnRUcnVlKGNvbW1hbmQu ZW5kc1dpdGgoZXhwZWN0ZWQpLCAiQ29tbWFuZDogZXhwZWN0ZWQ6IFwnIiArCisgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIGV4cGVjdGVkICsgIlwnLCBhY3R1YWw6ICIgKyBjb21tYW5kKTsK ZGlmZiAtLWdpdCBhL3NyY3BrZ3Mvb3BlbmpkazExL2ZpbGVzL211c2xfcGF0Y2hlcy9wcGM2NGxl LnBhdGNoIGIvc3JjcGtncy9vcGVuamRrMTEvZmlsZXMvbXVzbF9wYXRjaGVzL3BwYzY0bGUucGF0 Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAuLjY3ZjY2NDIxNDJjCi0t LSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9vcGVuamRrMTEvZmlsZXMvbXVzbF9wYXRjaGVzL3Bw YzY0bGUucGF0Y2gKQEAgLTAsMCArMSwyMjEgQEAKK1BhdGNoZXMgZm9yIG11c2wgdGFrZW4gZnJv bSBBbHBpbmUgbGludXg6IGh0dHBzOi8vZ2l0LmFscGluZWxpbnV4Lm9yZy9hcG9ydHMvY29tbWl0 Lz9pZD04YTFhZTE3ZDRhOWFmNTQyODVjNzg5MWE2ODA2MjBlN2UyNGM2MjgwCistLS0gb2xkL3Ny Yy9ob3RzcG90L2NwdS9wcGMvbWFjcm9Bc3NlbWJsZXJfcHBjLmNwcAorKysrIG5ldy9zcmMvaG90 c3BvdC9jcHUvcHBjL21hY3JvQXNzZW1ibGVyX3BwYy5jcHAKK0BAIC0xMjkwLDcgKzEyOTAsMTEg QEAKKyAgIC8vIHRoZSBzYWZlcG9pbmcgcG9sbGluZyBwYWdlLgorICAgdWNvbnRleHRfdCogdWMg PSAodWNvbnRleHRfdCopIHVjb250ZXh0OworICAgLy8gU2V0IHBvbGxpbmcgYWRkcmVzcy4KKysj aWYgZGVmaW5lZChfX0dMSUJDX18pIHx8IGRlZmluZWQoX19VQ0xJQkNfXykKKyAgIGFkZHJlc3Mg YWRkciA9IChhZGRyZXNzKXVjLT51Y19tY29udGV4dC5yZWdzLT5ncHJbcmFdICsgKHNzaXplX3Qp ZHM7CisrI2Vsc2UgLy8gTXVzbAorKyAgYWRkcmVzcyBhZGRyID0gKGFkZHJlc3MpdWMtPnVjX21j b250ZXh0LmdwX3JlZ3NbcmFdICsgKHNzaXplX3QpIGRzOworKyNlbmRpZgorICAgaWYgKHBvbGxp bmdfYWRkcmVzc19wdHIgIT0gTlVMTCkgeworICAgICAqcG9sbGluZ19hZGRyZXNzX3B0ciA9IGFk ZHI7CisgICB9CitAQCAtMTMxMSwxNSArMTMxNSwyNCBAQAorICAgICBpbnQgcmIgPSBpbnZfcmJf ZmllbGQoaW5zdHJ1Y3Rpb24pOworCisgICAgIC8vIGxvb2sgdXAgY29udGVudCBvZiByYSBhbmQg cmIgaW4gdWNvbnRleHQKKysjaWYgZGVmaW5lZChfX0dMSUJDX18pIHx8IGRlZmluZWQoX19VQ0xJ QkNfXykKKyAgICAgYWRkcmVzcyByYV92YWw9KGFkZHJlc3MpdWMtPnVjX21jb250ZXh0LnJlZ3Mt PmdwcltyYV07CisgICAgIGxvbmcgcmJfdmFsPShsb25nKXVjLT51Y19tY29udGV4dC5yZWdzLT5n cHJbcmJdOworKyNlbHNlIC8vIE11c2wKKysgICAgYWRkcmVzcyByYV92YWw9KGFkZHJlc3MpdWMt PnVjX21jb250ZXh0LmdwX3JlZ3NbcmFdOworKyAgICBsb25nIHJiX3ZhbD0obG9uZyl1Yy0+dWNf bWNvbnRleHQuZ3BfcmVnc1tyYl07CisrI2VuZGlmCisgICAgIHJldHVybiBvczo6aXNfbWVtb3J5 X3NlcmlhbGl6ZV9wYWdlKHRocmVhZCwgcmFfdmFsK3JiX3ZhbCk7CisgICB9IGVsc2UgaWYgKGlz X3N0dyhpbnN0cnVjdGlvbikgfHwgaXNfc3R3dShpbnN0cnVjdGlvbikpIHsKKyAgICAgaW50IHJh ID0gaW52X3JhX2ZpZWxkKGluc3RydWN0aW9uKTsKKyAgICAgaW50IGQxID0gaW52X2QxX2ZpZWxk KGluc3RydWN0aW9uKTsKKworICAgICAvLyBsb29rIHVwIGNvbnRlbnQgb2YgcmEgaW4gdWNvbnRl eHQKKysjaWYgZGVmaW5lZChfX0dMSUJDX18pIHx8IGRlZmluZWQoX19VQ0xJQkNfXykKKyAgICAg YWRkcmVzcyByYV92YWw9KGFkZHJlc3MpdWMtPnVjX21jb250ZXh0LnJlZ3MtPmdwcltyYV07Cisr I2Vsc2UgLy8gTXVzbAorKyAgICBhZGRyZXNzIHJhX3ZhbD0oYWRkcmVzcyl1Yy0+dWNfbWNvbnRl eHQuZ3BfcmVnc1tyYV07CisrI2VuZGlmCisgICAgIHJldHVybiBvczo6aXNfbWVtb3J5X3Nlcmlh bGl6ZV9wYWdlKHRocmVhZCwgcmFfdmFsK2QxKTsKKyAgIH0gZWxzZSB7CisgICAgIHJldHVybiBm YWxzZTsKK0BAIC0xMzgyLDExICsxMzk1LDIwIEBACisgICAgICAgfHwgKGlzX3N0ZHUoaW5zdHJ1 Y3Rpb24pICYmIHJzID09IDEpKSB7CisgICAgIGludCBkcyA9IGludl9kc19maWVsZChpbnN0cnVj dGlvbik7CisgICAgIC8vIHJldHVybiBiYW5nZWQgYWRkcmVzcworKyNpZiBkZWZpbmVkKF9fR0xJ QkNfXykgfHwgZGVmaW5lZChfX1VDTElCQ19fKQorICAgICByZXR1cm4gZHMrKGFkZHJlc3MpdWMt PnVjX21jb250ZXh0LnJlZ3MtPmdwcltyYV07CisrI2Vsc2UgLy8gTXVzbAorKyAgICByZXR1cm4g ZHMrKGFkZHJlc3MpdWMtPnVjX21jb250ZXh0LmdwX3JlZ3NbcmFdOworKyNlbmRpZgorICAgfSBl bHNlIGlmIChpc19zdGR1eChpbnN0cnVjdGlvbikgJiYgcnMgPT0gMSkgeworICAgICBpbnQgcmIg PSBpbnZfcmJfZmllbGQoaW5zdHJ1Y3Rpb24pOworKyNpZiBkZWZpbmVkKF9fR0xJQkNfXykgfHwg ZGVmaW5lZChfX1VDTElCQ19fKQorICAgICBhZGRyZXNzIHNwID0gKGFkZHJlc3MpdWMtPnVjX21j b250ZXh0LnJlZ3MtPmdwclsxXTsKKyAgICAgbG9uZyByYl92YWwgPSAobG9uZyl1Yy0+dWNfbWNv bnRleHQucmVncy0+Z3ByW3JiXTsKKysjZWxzZSAvLyBNdXNsCisrICAgIGFkZHJlc3Mgc3AgPSAo YWRkcmVzcyl1Yy0+dWNfbWNvbnRleHQuZ3BfcmVnc1sxXTsKKysgICAgbG9uZyByYl92YWwgPSAo bG9uZyl1Yy0+dWNfbWNvbnRleHQuZ3BfcmVnc1tyYl07CisrI2VuZGlmCisgICAgIHJldHVybiBy YSAhPSAxIHx8IHJiX3ZhbCA+PSAwID8gTlVMTCAgICAgICAgIC8vIG5vdCBhIHN0YWNrIGJhbmcK KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiBzcCArIHJiX3ZhbDsgLy8gYmFu Z2VkIGFkZHJlc3MKKyAgIH0KKy0tLSBvbGQvc3JjL2hvdHNwb3QvY3B1L3BwYy92bV92ZXJzaW9u X3BwYy5jcHAKKysrKyBuZXcvc3JjL2hvdHNwb3QvY3B1L3BwYy92bV92ZXJzaW9uX3BwYy5jcHAK K0BAIC03NjgsNyArNzY4LDcgQEAKKyAgIHVuc2lnbmVkIGxvbmcgYXV4diA9IGdldGF1eHZhbChB VF9IV0NBUDIpOworCisgICBpZiAoYXV4diAmIFBQQ19GRUFUVVJFMl9IVE1fTk9TQykgeworLSAg ICBpZiAoYXV4diAmIFBQQ19GRUFUVVJFMl9IQVNfSFRNKSB7CisrICAgIGlmIChhdXh2ICYgUFBD X0ZFQVRVUkUyX0hUTSkgeworICAgICAgIC8vIFRNIG9uIFBPV0VSOCBhbmQgUE9XRVI5IGluIGNv bXBhdCBtb2RlIChWTSkgaXMgc3VwcG9ydGVkIGJ5IHRoZSBKVk0uCisgICAgICAgLy8gVE0gb24g UE9XRVI5IEREMi4xIE5WIChiYXJlbWV0YWwpIGlzIG5vdCBzdXBwb3J0ZWQgYnkgdGhlIEpWTSAo VE0gb24KKyAgICAgICAvLyBQT1dFUjkgREQyLjEgTlYgaGFzIGEgZmV3IGlzc3VlcyB0aGF0IG5l ZWQgYSBjb3VwbGUgb2YgZmlybXdhcmUKKy0tLSBvbGQvc3JjL2hvdHNwb3Qvb3NfY3B1L2xpbnV4 X3BwYy9vc19saW51eF9wcGMuY3BwCisrKysgbmV3L3NyYy9ob3RzcG90L29zX2NwdS9saW51eF9w cGMvb3NfbGludXhfcHBjLmNwcAorQEAgLTEwOCwyNCArMTA4LDQyIEBACisgICAvLyAtIGlmIHVj IHdhcyBmaWxsZWQgYnkgZ2V0Y29udGV4dCgpLCBpdCBpcyB1bmRlZmluZWQgLSBnZXRjb250ZXh0 KCkgZG9lcyBub3QgZmlsbAorICAgLy8gICBpdCBiZWNhdXNlIHRoZSB2b2xhdGlsZSByZWdpc3Rl cnMgYXJlIG5vdCBuZWVkZWQgdG8gbWFrZSBzZXRjb250ZXh0KCkgd29yay4KKyAgIC8vICAgSG9w ZWZ1bGx5IGl0IHdhcyB6ZXJvJ2Qgb3V0IGJlZm9yZWhhbmQuCisrI2lmIGRlZmluZWQoX19HTElC Q19fKSB8fCBkZWZpbmVkKF9fVUNMSUJDX18pCisgICBndWFyYW50ZWUodWMtPnVjX21jb250ZXh0 LnJlZ3MgIT0gTlVMTCwgIm9ubHkgdXNlIHVjb250ZXh0X2dldF9wYyBpbiBzaWdhY3Rpb24gY29u dGV4dCIpOworICAgcmV0dXJuIChhZGRyZXNzKXVjLT51Y19tY29udGV4dC5yZWdzLT5uaXA7Cisr I2Vsc2UgLy8gTXVzbAorKyAgZ3VhcmFudGVlKHVjLT51Y19tY29udGV4dC5ncF9yZWdzICE9IE5V TEwsICJvbmx5IHVzZSB1Y29udGV4dF9nZXRfcGMgaW4gc2lnYWN0aW9uIGNvbnRleHQiKTsKKysg IHJldHVybiAoYWRkcmVzcyl1Yy0+dWNfbWNvbnRleHQuZ3BfcmVnc1szMl07CisrI2VuZGlmCisg fQorCisgLy8gbW9kaWZ5IFBDIGluIHVjb250ZXh0LgorIC8vIE5vdGU6IE9ubHkgdXNlIHRoaXMg Zm9yIGFuIHVjb250ZXh0IGhhbmRlZCBkb3duIHRvIGEgc2lnbmFsIGhhbmRsZXIuIFNlZSBjb21t ZW50CisgLy8gaW4gdWNvbnRleHRfZ2V0X3BjLgorIHZvaWQgb3M6OkxpbnV4Ojp1Y29udGV4dF9z ZXRfcGModWNvbnRleHRfdCAqIHVjLCBhZGRyZXNzIHBjKSB7CisrI2lmIGRlZmluZWQoX19HTElC Q19fKSB8fCBkZWZpbmVkKF9fVUNMSUJDX18pCisgICBndWFyYW50ZWUodWMtPnVjX21jb250ZXh0 LnJlZ3MgIT0gTlVMTCwgIm9ubHkgdXNlIHVjb250ZXh0X3NldF9wYyBpbiBzaWdhY3Rpb24gY29u dGV4dCIpOworICAgdWMtPnVjX21jb250ZXh0LnJlZ3MtPm5pcCA9ICh1bnNpZ25lZCBsb25nKXBj OworKyNlbHNlIC8vIE11c2wKKysgIGd1YXJhbnRlZSh1Yy0+dWNfbWNvbnRleHQuZ3BfcmVncyAh PSBOVUxMLCAib25seSB1c2UgdWNvbnRleHRfc2V0X3BjIGluIHNpZ2FjdGlvbiBjb250ZXh0Iik7 CisrICB1Yy0+dWNfbWNvbnRleHQuZ3BfcmVnc1szMl0gPSAodW5zaWduZWQgbG9uZylwYzsKKysj ZW5kaWYKKyB9CisKKyBzdGF0aWMgYWRkcmVzcyB1Y29udGV4dF9nZXRfbHIoY29uc3QgdWNvbnRl eHRfdCAqIHVjKSB7CisrI2lmIGRlZmluZWQoX19HTElCQ19fKSB8fCBkZWZpbmVkKF9fVUNMSUJD X18pCisgICByZXR1cm4gKGFkZHJlc3MpdWMtPnVjX21jb250ZXh0LnJlZ3MtPmxpbms7CisrI2Vs c2UgLy8gTXVzbAorKyAgcmV0dXJuIChhZGRyZXNzKXVjLT51Y19tY29udGV4dC5ncF9yZWdzWzM2 XTsKKysjZW5kaWYKKyB9CisKKyBpbnRwdHJfdCogb3M6OkxpbnV4Ojp1Y29udGV4dF9nZXRfc3Ao Y29uc3QgdWNvbnRleHRfdCAqIHVjKSB7CisrI2lmIGRlZmluZWQoX19HTElCQ19fKSB8fCBkZWZp bmVkKF9fVUNMSUJDX18pCisgICByZXR1cm4gKGludHB0cl90Kil1Yy0+dWNfbWNvbnRleHQucmVn cy0+Z3ByWzEvKlJFR19TUCovXTsKKysjZWxzZSAvLyBNdXNsCisrICByZXR1cm4gKGludHB0cl90 Kil1Yy0+dWNfbWNvbnRleHQuZ3BfcmVnc1sxLypSRUdfU1AqL107CisrI2VuZGlmCisgfQorCisg aW50cHRyX3QqIG9zOjpMaW51eDo6dWNvbnRleHRfZ2V0X2ZwKGNvbnN0IHVjb250ZXh0X3QgKiB1 YykgeworQEAgLTEzMyw3ICsxNTEsMTEgQEAKKyB9CisKKyBzdGF0aWMgdW5zaWduZWQgbG9uZyB1 Y29udGV4dF9nZXRfdHJhcChjb25zdCB1Y29udGV4dF90ICogdWMpIHsKKysjaWYgZGVmaW5lZChf X0dMSUJDX18pIHx8IGRlZmluZWQoX19VQ0xJQkNfXykKKyAgIHJldHVybiB1Yy0+dWNfbWNvbnRl eHQucmVncy0+dHJhcDsKKysjZWxzZSAvLyBNdXNsCisrICByZXR1cm4gdWMtPnVjX21jb250ZXh0 LmdwX3JlZ3NbNDBdOworKyNlbmRpZgorIH0KKworIEV4dGVuZGVkUEMgb3M6OmZldGNoX2ZyYW1l X2Zyb21fY29udGV4dChjb25zdCB2b2lkKiB1Y1ZvaWQsCitAQCAtMjU5LDcgKzI4MSwxMyBAQAor ICAgICAvLyAzLjIuMSAiTWFjaGluZSBTdGF0ZSBSZWdpc3RlciIpLCBob3dldmVyIG5vdGUgdGhh dCBJU0Egbm90YXRpb24gZm9yIGJpdAorICAgICAvLyBudW1iZXJpbmcgaXMgTVNCIDAsIHNvIGZv ciBub3JtYWwgYml0IG51bWJlcmluZyAoTFNCIDApIHRoZXkgY29tZSB0byBiZQorICAgICAvLyBi aXRzIDMzIGFuZCAzNC4gSXQncyBub3QgcmVsYXRlZCB0byBlbmRpYW5uZXNzLCBqdXN0IGEgbm90 YXRpb24gbWF0dGVyLgorKyNpZiBkZWZpbmVkKF9fR0xJQkNfXykgfHwgZGVmaW5lZChfX1VDTElC Q19fKQorICAgICBpZiAoc2Vjb25kX3VjLT51Y19tY29udGV4dC5yZWdzLT5tc3IgJiAweDYwMDAw MDAwMCkgeworKyNlbHNlIC8vIE11c2wKKysgICAgLy8gd2h5IDMzPworKyAgICAvLyBzZWUgY29t bWVudCBmb3IgZ2xpYmMgTkdSRUc6ICJyMC1yMzEsIG5pcCwgbXNyLCBsciwgZXRjLiIKKysgICAg aWYgKHNlY29uZF91Yy0+dWNfbWNvbnRleHQuZ3BfcmVnc1szM10gJiAweDYwMDAwMDAwMCkgewor KyNlbmRpZgorICAgICAgIGlmIChUcmFjZVRyYXBzKSB7CisgICAgICAgICB0dHktPnByaW50X2Ny KCJjYXVnaHQgc2lnbmFsIGluIHRyYW5zYWN0aW9uLCAiCisgICAgICAgICAgICAgICAgICAgICAg ICAgImlnbm9yaW5nIHRvIGp1bXAgdG8gYWJvcnQgaGFuZGxlciIpOworQEAgLTU4Niw2ICs2MTQs NyBAQAorICAgY29uc3QgdWNvbnRleHRfdCogdWMgPSAoY29uc3QgdWNvbnRleHRfdCopY29udGV4 dDsKKworICAgc3QtPnByaW50X2NyKCJSZWdpc3RlcnM6Iik7CisrI2lmIGRlZmluZWQoX19HTElC Q19fKSB8fCBkZWZpbmVkKF9fVUNMSUJDX18pCisgICBzdC0+cHJpbnQoInBjID0iIElOVFBUUl9G T1JNQVQgIiAgIiwgdWMtPnVjX21jb250ZXh0LnJlZ3MtPm5pcCk7CisgICBzdC0+cHJpbnQoImxy ID0iIElOVFBUUl9GT1JNQVQgIiAgIiwgdWMtPnVjX21jb250ZXh0LnJlZ3MtPmxpbmspOworICAg c3QtPnByaW50KCJjdHI9IiBJTlRQVFJfRk9STUFUICIgICIsIHVjLT51Y19tY29udGV4dC5yZWdz LT5jdHIpOworQEAgLTU5NCw4ICs2MjMsMTggQEAKKyAgICAgc3QtPnByaW50KCJyJS0yZD0iIElO VFBUUl9GT1JNQVQgIiAgIiwgaSwgdWMtPnVjX21jb250ZXh0LnJlZ3MtPmdwcltpXSk7CisgICAg IGlmIChpICUgMyA9PSAyKSBzdC0+Y3IoKTsKKyAgIH0KKysjZWxzZSAvLyBNdXNsCisrICBzdC0+ cHJpbnQoInBjID0iIElOVFBUUl9GT1JNQVQgIiAgIiwgdWMtPnVjX21jb250ZXh0LmdwX3JlZ3Nb MzJdKTsKKysgIHN0LT5wcmludCgibHIgPSIgSU5UUFRSX0ZPUk1BVCAiICAiLCB1Yy0+dWNfbWNv bnRleHQuZ3BfcmVnc1szNl0pOworKyAgc3QtPnByaW50KCJjdHI9IiBJTlRQVFJfRk9STUFUICIg ICIsIHVjLT51Y19tY29udGV4dC5ncF9yZWdzWzM1XSk7CisgICBzdC0+Y3IoKTsKKysgIGZvciAo aW50IGkgPSAwOyBpIDwgMzI7IGkrKykgeworKyAgICBzdC0+cHJpbnQoInIlLTJkPSIgSU5UUFRS X0ZPUk1BVCAiICAiLCBpLCB1Yy0+dWNfbWNvbnRleHQuZ3BfcmVnc1tpXSk7CisrICAgIGlmIChp ICUgMyA9PSAyKSBzdC0+Y3IoKTsKKysgIH0KKysjZW5kaWYKKyAgIHN0LT5jcigpOworKyAgc3Qt PmNyKCk7CisKKyAgIGludHB0cl90ICpzcCA9IChpbnRwdHJfdCAqKW9zOjpMaW51eDo6dWNvbnRl eHRfZ2V0X3NwKHVjKTsKKyAgIHN0LT5wcmludF9jcigiVG9wIG9mIFN0YWNrOiAoc3A9IiBQVFJf Rk9STUFUICIpIiwgcDJpKHNwKSk7CitAQCAtNjE4LDEyICs2NTcsMjIgQEAKKyAgIHN0LT5wcmlu dF9jcigiUmVnaXN0ZXIgdG8gbWVtb3J5IG1hcHBpbmc6Iik7CisgICBzdC0+Y3IoKTsKKworKyNp ZiBkZWZpbmVkKF9fR0xJQkNfXykgfHwgZGVmaW5lZChfX1VDTElCQ19fKQorICAgc3QtPnByaW50 KCJwYyA9Iik7IHByaW50X2xvY2F0aW9uKHN0LCAoaW50cHRyX3QpdWMtPnVjX21jb250ZXh0LnJl Z3MtPm5pcCk7CisgICBzdC0+cHJpbnQoImxyID0iKTsgcHJpbnRfbG9jYXRpb24oc3QsIChpbnRw dHJfdCl1Yy0+dWNfbWNvbnRleHQucmVncy0+bGluayk7CisgICBzdC0+cHJpbnQoImN0ciA9Iik7 IHByaW50X2xvY2F0aW9uKHN0LCAoaW50cHRyX3QpdWMtPnVjX21jb250ZXh0LnJlZ3MtPmN0cik7 CisrI2Vsc2UgLy8gTXVzbAorKyAgc3QtPnByaW50KCJwYyA9Iik7IHByaW50X2xvY2F0aW9uKHN0 LCAoaW50cHRyX3QpdWMtPnVjX21jb250ZXh0LmdwX3JlZ3NbMzJdKTsKKysgIHN0LT5wcmludCgi bHIgPSIpOyBwcmludF9sb2NhdGlvbihzdCwgKGludHB0cl90KXVjLT51Y19tY29udGV4dC5ncF9y ZWdzWzM2XSk7CisrICBzdC0+cHJpbnQoImN0ciA9Iik7IHByaW50X2xvY2F0aW9uKHN0LCAoaW50 cHRyX3QpdWMtPnVjX21jb250ZXh0LmdwX3JlZ3NbMzVdKTsKKysjZW5kaWYKKyAgIGZvciAoaW50 IGkgPSAwOyBpIDwgMzI7IGkrKykgeworICAgICBzdC0+cHJpbnQoInIlLTJkPSIsIGkpOworKyNp ZiBkZWZpbmVkKF9fR0xJQkNfXykgfHwgZGVmaW5lZChfX1VDTElCQ19fKQorICAgICBwcmludF9s b2NhdGlvbihzdCwgdWMtPnVjX21jb250ZXh0LnJlZ3MtPmdwcltpXSk7CisrI2Vsc2UgLy8gTXVz bAorKyAgICBwcmludF9sb2NhdGlvbihzdCwgdWMtPnVjX21jb250ZXh0LmdwX3JlZ3NbaV0pOwor KyNlbmRpZgorICAgfQorICAgc3QtPmNyKCk7CisgfQorLS0tIG9sZC9zcmMvaG90c3BvdC9vc19j cHUvbGludXhfcHBjL3RocmVhZF9saW51eF9wcGMuY3BwCisrKysgbmV3L3NyYy9ob3RzcG90L29z X2NwdS9saW51eF9wcGMvdGhyZWFkX2xpbnV4X3BwYy5jcHAKK0BAIC01Niw4ICs1NiwxMyBAQAor ICAgLy8gaWYgd2Ugd2VyZSBydW5uaW5nIEphdmEgY29kZSB3aGVuIFNJR1BST0YgY2FtZSBpbi4K KyAgIGlmIChpc0luSmF2YSkgeworICAgICB1Y29udGV4dF90KiB1YyA9ICh1Y29udGV4dF90Kikg dWNvbnRleHQ7CisrI2lmIGRlZmluZWQoX19HTElCQ19fKSB8fCBkZWZpbmVkKF9fVUNMSUJDX18p CisgICAgIGZyYW1lIHJldF9mcmFtZSgoaW50cHRyX3QqKXVjLT51Y19tY29udGV4dC5yZWdzLT5n cHJbMS8qUkVHX1NQKi9dLAorICAgICAgICAgICAgICAgICAgICAgIChhZGRyZXNzKXVjLT51Y19t Y29udGV4dC5yZWdzLT5uaXApOworKyNlbHNlIC8vIE11c2wKKysgICAgZnJhbWUgcmV0X2ZyYW1l KChpbnRwdHJfdCopdWMtPnVjX21jb250ZXh0LmdwX3JlZ3NbMS8qUkVHX1NQKi9dLAorKyAgICAg ICAgICAgICAgICAgICAgIChhZGRyZXNzKXVjLT51Y19tY29udGV4dC5ncF9yZWdzWzMyXSk7Cisr I2VuZGlmCisKKyAgICAgaWYgKHJldF9mcmFtZS5wYygpID09IE5VTEwpIHsKKyAgICAgICAvLyB1 Y29udGV4dCB3YXNuJ3QgdXNlZnVsCitAQCAtNjksNyArNzQsMTEgQEAKKyAgICAgICAgaWYgKCEo KE1ldGhvZCopKGlzdGF0ZS0+bWV0aG9kKSktPmlzX21ldGFzcGFjZV9vYmplY3QoKSkgeworICAg ICAgICAgIHJldHVybiBmYWxzZTsKKyAgICAgICAgfQorKyNpZiBkZWZpbmVkKF9fR0xJQkNfXykg fHwgZGVmaW5lZChfX1VDTElCQ19fKQorICAgICAgICB1aW50NjRfdCByZWdfYmNwID0gdWMtPnVj X21jb250ZXh0LnJlZ3MtPmdwclsxNC8qUjE0X2JjcCovXTsKKysjZWxzZSAvLyBNdXNsCisrICAg ICAgIHVpbnQ2NF90IHJlZ19iY3AgPSB1Yy0+dWNfbWNvbnRleHQuZ3BfcmVnc1sxNC8qUjE0X2Jj cCovXTsKKysjZW5kaWYKKyAgICAgICAgdWludDY0X3QgaXN0YXRlX2JjcCA9IGlzdGF0ZS0+YmNw OworICAgICAgICB1aW50NjRfdCBjb2RlX3N0YXJ0ID0gKHVpbnQ2NF90KSgoKE1ldGhvZCopKGlz dGF0ZS0+bWV0aG9kKSktPmNvZGVfYmFzZSgpKTsKKyAgICAgICAgdWludDY0X3QgY29kZV9lbmQg PSAodWludDY0X3QpKCgoTWV0aG9kKilpc3RhdGUtPm1ldGhvZCktPmNvZGVfYmFzZSgpICsgKChN ZXRob2QqKWlzdGF0ZS0+bWV0aG9kKS0+Y29kZV9zaXplKCkpOwpkaWZmIC0tZ2l0IGEvc3JjcGtn cy9vcGVuamRrMTEvZmlsZXMvbXVzbF9wYXRjaGVzL3g4Ni5wYXRjaCBiL3NyY3BrZ3Mvb3Blbmpk azExL2ZpbGVzL211c2xfcGF0Y2hlcy94ODYucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5k ZXggMDAwMDAwMDAwMDAuLjljNjRjMTg5MDM2Ci0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9v cGVuamRrMTEvZmlsZXMvbXVzbF9wYXRjaGVzL3g4Ni5wYXRjaApAQCAtMCwwICsxLDEzMCBAQAor UGF0Y2hlcyBmb3IgbXVzbCB0YWtlbiBmcm9tIEFscGluZSBsaW51eDogaHR0cHM6Ly9naXQuYWxw aW5lbGludXgub3JnL2Fwb3J0cy9jb21taXQvP2lkPThhMWFlMTdkNGE5YWY1NDI4NWM3ODkxYTY4 MDYyMGU3ZTI0YzYyODAKKy0tLSBvbGQvc3JjL2hvdHNwb3Qvb3NfY3B1L2xpbnV4X3g4Ni9vc19s aW51eF94ODYuY3BwCisrKysgbmV3L3NyYy9ob3RzcG90L29zX2NwdS9saW51eF94ODYvb3NfbGlu dXhfeDg2LmNwcAorQEAgLTkwLDYgKzkwLDEyNiBAQAorICNkZWZpbmUgU1BFTExfUkVHX0ZQICJl YnAiCisgI2VuZGlmIC8vIEFNRDY0CisKKysvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKysvLyBU YWtlbiBmcm9tIGdsaWJjIDIuMjgKKysvLyBzb3VyY2U6IGh0dHBzOi8vc291cmNld2FyZS5vcmcv Z2l0Lz9wPWdsaWJjLmdpdDthPWJsb2I7Zj1zeXNkZXBzL3g4Ni9mcHVfY29udHJvbC5oO2g9NGNi OThjNTY3OWIyODk3ZmY0ZTU4MjZkMjI4Y2JhNmJlNTg5ZTI0ZDtoYj0zYzAzYmFjYTM3ZmRjYjUy YzM4ODFlNjUzY2EzOTJiYmE3YTk5YzJiCisrLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CisrI2lm bmRlZiBBTUQ2NAorKy8qIEZQVSBjb250cm9sIHdvcmQgYml0cy4gIHg4NiB2ZXJzaW9uLgorKyAg IENvcHlyaWdodCAoQykgMTk5My0yMDE4IEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLgor KyAgIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBHTlUgQyBMaWJyYXJ5LgorKyAgIENvbnRyaWJ1 dGVkIGJ5IE9sYWYgRmxlYmJlLgorKworKyAgIFRoZSBHTlUgQyBMaWJyYXJ5IGlzIGZyZWUgc29m dHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vcgorKyAgIG1vZGlmeSBpdCB1bmRl ciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMKKysgICBMaWNlbnNl IGFzIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uOyBlaXRoZXIKKysg ICB2ZXJzaW9uIDIuMSBvZiB0aGUgTGljZW5zZSwgb3IgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0 ZXIgdmVyc2lvbi4KKysKKysgICBUaGUgR05VIEMgTGlicmFyeSBpcyBkaXN0cmlidXRlZCBpbiB0 aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAorKyAgIGJ1dCBXSVRIT1VUIEFOWSBXQVJS QU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCisrICAgTUVSQ0hBTlRB QklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZSBHTlUK KysgICBMZXNzZXIgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorKwor KyAgIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBMZXNzZXIgR2Vu ZXJhbCBQdWJsaWMKKysgICBMaWNlbnNlIGFsb25nIHdpdGggdGhlIEdOVSBDIExpYnJhcnk7IGlm IG5vdCwgc2VlCisrICAgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LiAgKi8KKysKKysj aWZuZGVmIF9GUFVfQ09OVFJPTF9ICisrI2RlZmluZSBfRlBVX0NPTlRST0xfSAkxCisrCisrLyog Tm90ZSB0aGF0IHRoaXMgZmlsZSBzZXRzIG9uIHg4Ni02NCBvbmx5IHRoZSB4ODcgRlBVLCBpdCBk b2VzIG5vdAorKyAgIHRvdWNoIHRoZSBTU0UgdW5pdC4gICovCisrCisrLyogSGVyZSBpcyB0aGUg ZGlydHkgcGFydC4gU2V0IHVwIHlvdXIgMzg3IHRocm91Z2ggdGhlIGNvbnRyb2wgd29yZAorKyAq IChjdykgcmVnaXN0ZXIuCisrICoKKysgKiAgICAgMTUtMTMgICAgMTIgIDExLTEwICA5LTggICAg IDctNiAgICAgNSAgICA0ICAgIDMgICAgMiAgICAxICAgIDAKKysgKiB8IHJlc2VydmVkIHwgSUMg fCBSQyAgfCBQQyB8IHJlc2VydmVkIHwgUE0gfCBVTSB8IE9NIHwgWk0gfCBETSB8IElNCisrICoK KysgKiBJTTogSW52YWxpZCBvcGVyYXRpb24gbWFzaworKyAqIERNOiBEZW5vcm1hbGl6ZWQgb3Bl cmFuZCBtYXNrCisrICogWk06IFplcm8tZGl2aWRlIG1hc2sKKysgKiBPTTogT3ZlcmZsb3cgbWFz aworKyAqIFVNOiBVbmRlcmZsb3cgbWFzaworKyAqIFBNOiBQcmVjaXNpb24gKGluZXhhY3QgcmVz dWx0KSBtYXNrCisrICoKKysgKiBNYXNrIGJpdCBpcyAxIG1lYW5zIG5vIGludGVycnVwdC4KKysg KgorKyAqIFBDOiBQcmVjaXNpb24gY29udHJvbAorKyAqIDExIC0gcm91bmQgdG8gZXh0ZW5kZWQg cHJlY2lzaW9uCisrICogMTAgLSByb3VuZCB0byBkb3VibGUgcHJlY2lzaW9uCisrICogMDAgLSBy b3VuZCB0byBzaW5nbGUgcHJlY2lzaW9uCisrICoKKysgKiBSQzogUm91bmRpbmcgY29udHJvbAor KyAqIDAwIC0gcm91bmRpbmcgdG8gbmVhcmVzdAorKyAqIDAxIC0gcm91bmRpbmcgZG93biAodG93 YXJkIC0gaW5maW5pdHkpCisrICogMTAgLSByb3VuZGluZyB1cCAodG93YXJkICsgaW5maW5pdHkp CisrICogMTEgLSByb3VuZGluZyB0b3dhcmQgemVybworKyAqCisrICogSUM6IEluZmluaXR5IGNv bnRyb2wKKysgKiBUaGF0IGlzIGZvciA4MDg3IGFuZCA4MDI4NyBvbmx5LgorKyAqCisrICogVGhl IGhhcmR3YXJlIGRlZmF1bHQgaXMgMHgwMzdmIHdoaWNoIHdlIHVzZS4KKysgKi8KKysKKysjaW5j bHVkZSA8ZmVhdHVyZXMuaD4KKysKKysvKiBtYXNraW5nIG9mIGludGVycnVwdHMgKi8KKysjZGVm aW5lIF9GUFVfTUFTS19JTSAgMHgwMQorKyNkZWZpbmUgX0ZQVV9NQVNLX0RNICAweDAyCisrI2Rl ZmluZSBfRlBVX01BU0tfWk0gIDB4MDQKKysjZGVmaW5lIF9GUFVfTUFTS19PTSAgMHgwOAorKyNk ZWZpbmUgX0ZQVV9NQVNLX1VNICAweDEwCisrI2RlZmluZSBfRlBVX01BU0tfUE0gIDB4MjAKKysK KysvKiBwcmVjaXNpb24gY29udHJvbCAqLworKyNkZWZpbmUgX0ZQVV9FWFRFTkRFRCAweDMwMAkv KiBsaWJtIHJlcXVpcmVzIGRvdWJsZSBleHRlbmRlZCBwcmVjaXNpb24uICAqLworKyNkZWZpbmUg X0ZQVV9ET1VCTEUgICAweDIwMAorKyNkZWZpbmUgX0ZQVV9TSU5HTEUgICAweDAKKysKKysvKiBy b3VuZGluZyBjb250cm9sICovCisrI2RlZmluZSBfRlBVX1JDX05FQVJFU1QgMHgwICAgIC8qIFJF Q09NTUVOREVEICovCisrI2RlZmluZSBfRlBVX1JDX0RPV04gICAgMHg0MDAKKysjZGVmaW5lIF9G UFVfUkNfVVAgICAgICAweDgwMAorKyNkZWZpbmUgX0ZQVV9SQ19aRVJPICAgIDB4QzAwCisrCisr I2RlZmluZSBfRlBVX1JFU0VSVkVEIDB4RjBDMCAgLyogUmVzZXJ2ZWQgYml0cyBpbiBjdyAqLwor KworKworKy8qIFRoZSBmZGxpYm0gY29kZSByZXF1aXJlcyBzdHJpY3QgSUVFRSBkb3VibGUgcHJl Y2lzaW9uIGFyaXRobWV0aWMsCisrICAgYW5kIG5vIGludGVycnVwdHMgZm9yIGV4Y2VwdGlvbnMs IHJvdW5kaW5nIHRvIG5lYXJlc3QuICAqLworKworKyNkZWZpbmUgX0ZQVV9ERUZBVUxUICAweDAz N2YKKysKKysvKiBJRUVFOiAgc2FtZSBhcyBhYm92ZS4gICovCisrI2RlZmluZSBfRlBVX0lFRUUg ICAgIDB4MDM3ZgorKworKy8qIFR5cGUgb2YgdGhlIGNvbnRyb2wgd29yZC4gICovCisrdHlwZWRl ZiB1bnNpZ25lZCBpbnQgZnB1X2NvbnRyb2xfdCBfX2F0dHJpYnV0ZV9fICgoX19tb2RlX18gKF9f SElfXykpKTsKKysKKysvKiBNYWNyb3MgZm9yIGFjY2Vzc2luZyB0aGUgaGFyZHdhcmUgY29udHJv bCB3b3JkLiAgIiomIiBpcyB1c2VkIHRvCisrICAgd29yayBhcm91bmQgYSBidWcgaW4gb2xkZXIg dmVyc2lvbnMgb2YgR0NDLiAgX192b2xhdGlsZV9fIGlzIHVzZWQKKysgICB0byBzdXBwb3J0IGNv bWJpbmF0aW9uIG9mIHdyaXRpbmcgdGhlIGNvbnRyb2wgcmVnaXN0ZXIgYW5kIHJlYWRpbmcKKysg ICBpdCBiYWNrLiAgV2l0aG91dCBfX3ZvbGF0aWxlX18sIHRoZSBvbGQgdmFsdWUgbWF5IGJlIHVz ZWQgZm9yIHJlYWRpbmcKKysgICBiYWNrIHVuZGVyIGNvbXBpbGVyIG9wdGltaXphdGlvbi4KKysK KysgICBOb3RlIHRoYXQgdGhlIHVzZSBvZiB0aGVzZSBtYWNyb3MgaXMgbm90IHN1ZmZpY2llbnQg YW55bW9yZSB3aXRoCisrICAgcmVjZW50IGhhcmR3YXJlIG5vciBvbiB4ODYtNjQuICBTb21lIGZs b2F0aW5nIHBvaW50IG9wZXJhdGlvbnMgYXJlCisrICAgZXhlY3V0ZWQgaW4gdGhlIFNTRS9TU0Uy IGVuZ2luZXMgd2hpY2ggaGF2ZSB0aGVpciBvd24gY29udHJvbCBhbmQKKysgICBzdGF0dXMgcmVn aXN0ZXIuICAqLworKyNkZWZpbmUgX0ZQVV9HRVRDVyhjdykgX19hc21fXyBfX3ZvbGF0aWxlX18g KCJmbnN0Y3cgJTAiIDogIj1tIiAoKiZjdykpCisrI2RlZmluZSBfRlBVX1NFVENXKGN3KSBfX2Fz bV9fIF9fdm9sYXRpbGVfXyAoImZsZGN3ICUwIiA6IDogIm0iICgqJmN3KSkKKysKKysvKiBEZWZh dWx0IGNvbnRyb2wgd29yZCBzZXQgYXQgc3RhcnR1cC4gICovCisrZXh0ZXJuIGZwdV9jb250cm9s X3QgX19mcHVfY29udHJvbDsKKysKKysjZW5kaWYJLyogZnB1X2NvbnRyb2wuaCAqLworKworKyNl bmRpZiAvLyBBTUQ2NAorKy8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorKy8vID09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PQorKy8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorKworIGFkZHJlc3Mgb3M6OmN1 cnJlbnRfc3RhY2tfcG9pbnRlcigpIHsKKyAjaWZkZWYgU1BBUkNfV09SS1MKKyAgIHJlZ2lzdGVy IHZvaWQgKmVzcDsKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mvb3BlbmpkazExL3RlbXBsYXRlIGIvc3Jj cGtncy9vcGVuamRrMTEvdGVtcGxhdGUKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw MDAwMDAuLmI0ZDRjNjRiNjFkCi0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9vcGVuamRrMTEv dGVtcGxhdGUKQEAgLTAsMCArMSwxODMgQEAKKyMgVGVtcGxhdGUgZmlsZSBmb3IgJ29wZW5qZGsx MScKK19qYXZhX3Zlcj0xMQorX2phdmFfbWluX3Zlcj0wCitfamF2YV9zZWNfdmVyPTUKK19qZGtf dXBkYXRlPTEwCitfb3Blbmpka192ZXJzaW9uPSJvcGVuamRrLSR7X2phdmFfdmVyfSIKKworCitw a2duYW1lPW9wZW5qZGsxMQordmVyc2lvbj0iJHtfamF2YV92ZXJ9LiR7X2phdmFfbWluX3Zlcn0u JHtfamF2YV9zZWNfdmVyfSske19qZGtfdXBkYXRlfSIKK3JldmlzaW9uPTEKK3dya3NyYz0iamRr JHtfamF2YV92ZXJ9dS1qZGstJHt2ZXJzaW9ufSIKK2J1aWxkX3N0eWxlPWdudS1jb25maWd1cmUK K2NvbmZpZ3VyZV9hcmdzPSIKKyAtLWRpc2FibGUtd2FybmluZ3MtYXMtZXJyb3JzCisgLS1wcmVm aXg9JHtYQlBTX0RFU1RESVJ9LyR7WEJQU19DUk9TU19UUklQTEVUfS8ke3BrZ25hbWV9LSR7dmVy c2lvbn0vdXNyL2xpYgorIC0tZW5hYmxlLXVubGltaXRlZC1jcnlwdG8KKyAtLXdpdGgtemxpYj1z eXN0ZW0KKyAtLXdpdGgtbGlianBlZz1zeXN0ZW0KKyAtLXdpdGgtZ2lmbGliPXN5c3RlbQorIC0t d2l0aC1saWJwbmc9c3lzdGVtCisgLS13aXRoLWxjbXM9c3lzdGVtCisgLS13aXRoLWp0cmVnPW5v CisgLS13aXRoLXZlcnNpb24tYnVpbGQ9JHt2ZXJzaW9ufQorIC0td2l0aC12ZW5kb3ItbmFtZT0i Vm9pZCIKKyAtLXdpdGgtdmVuZG9yLXVybD0iaHR0cHM6Ly92b2lkbGludXgub3JnLyIKKyAtLXdp dGgtdmVuZG9yLWJ1Zy11cmw9Imh0dHBzOi8vZ2l0aHViLmNvbS92b2lkLWxpbnV4L3ZvaWQtcGFj a2FnZXMvaXNzdWVzIgorIC0td2l0aC12ZW5kb3Itdm0tYnVnLXVybD0iaHR0cHM6Ly9naXRodWIu Y29tL3ZvaWQtbGludXgvdm9pZC1wYWNrYWdlcy9pc3N1ZXMiCisgLS13aXRoLWJvb3QtamRrPS91 c3IvbGliL2p2bS9vcGVuamRrMTEtYmluIgorCittYWtlX2J1aWxkX2FyZ3M9ImltYWdlcyAkKHZv cHRfaWYgZG9jcyBkb2NzKSIKK21ha2VfY2hlY2tfdGFyZ2V0PSJ0ZXN0LWhvdHNwb3QtZ3Rlc3Qi Citob3N0bWFrZWRlcGVuZHM9InBrZy1jb25maWcgYXV0b21ha2UgYXV0b2NvbmYgY3BpbyB1bnpp cCB6aXAgY2EtY2VydGlmaWNhdGVzCisgbGlicmVzc2wgemxpYi1kZXZlbCBtYWtlLWNhIgorbWFr ZWRlcGVuZHM9ImxpYlhyZW5kZXItZGV2ZWwgbGliWHRzdC1kZXZlbCBsaWJYdC1kZXZlbCBsaWJY cmFuZHItZGV2ZWwKKyBnaWZsaWItZGV2ZWwgbGlianBlZy10dXJiby1kZXZlbCBjdXBzLWRldmVs IGZyZWV0eXBlLWRldmVsIGFsc2EtbGliLWRldmVsCisgZm9udGNvbmZpZy1kZXZlbCB6bGliLWRl dmVsIGxjbXMyLWRldmVsIgorcHJvdmlkZXM9ImphdmEtZW52aXJvbm1lbnQtJHt2ZXJzaW9ufV8x IGphdmEtcnVudGltZS0ke3ZlcnNpb259XzEiCitzaG9ydF9kZXNjPSJPcGVuSkRLIEphdmEgRGV2 ZWxvcG1lbnQgS2l0IgorbWFpbnRhaW5lcj0iS3lsZSBOdXNiYXVtIDxrbnVzYmF1bSt2b2lkQHNk Zi5vcmc+IgorbGljZW5zZT0iR1BMLTIuMC1vci1sYXRlciIKK2hvbWVwYWdlPSJodHRwOi8vb3Bl bmpkay5qYXZhLm5ldC8iCitkaXN0ZmlsZXM9Imh0dHBzOi8vaGcub3Blbmpkay5qYXZhLm5ldC9q ZGstdXBkYXRlcy9qZGske19qYXZhX3Zlcn11L2FyY2hpdmUvamRrLSR7dmVyc2lvbn0udGFyLmd6 IgorY2hlY2tzdW09YTNiYzE5ZDI3OGY2ODY2MGYwMjYxMGNiZTFjZTZjMTEwYTM5YTFhYTUzYWVi OTBjNjEzM2ExY2ViZjk0ODQ2Mgorc2hsaWJfcHJvdmlkZXM9ImxpYmF3dC5zbyBsaWJhd3RfeGF3 dC5zbyBsaWJqYXZhLnNvIGxpYmpsaS5zbyBsaWJqdm0uc28gbGliamF3dC5zbyIKKworIyBCdWls ZCBpcyBzdGlsbCBwYXJhbGxlbCwgYnV0IGRvbid0IHVzZSAtak4uCitkaXNhYmxlX3BhcmFsbGVs X2J1aWxkPXllcworYnVpbGRfb3B0aW9ucz0iZG9jcyIKKworY2FzZSAiJFhCUFNfVEFSR0VUX0xJ QkMiIGluCisJZ2xpYmMpIGJ1aWxkX29wdGlvbnNfZGVmYXVsdCs9IiBkb2NzIjs7Citlc2FjCisK K2lmIFsgIiRDUk9TU19CVUlMRCIgXTsgdGhlbgorCWhvc3RtYWtlZGVwZW5kcys9IiBvcGVuamRr MTEiCisJY29uZmlndXJlX2FyZ3MrPSIgLS13aXRoLWJvb3QtamRrPS91c3IvbGliL2p2bS9vcGVu amRrMTEiCitlbHNlCisJaG9zdG1ha2VkZXBlbmRzKz0iIG9wZW5qZGsxMS1iaW4iCisJY29uZmln dXJlX2FyZ3MrPSIgLS13aXRoLWJvb3QtamRrPS91c3IvbGliL2p2bS9vcGVuamRrMTEtYmluIgor ZmkKKworYWx0ZXJuYXRpdmVzPSIKKyBqYXZhOi91c3IvYmluL2phdmE6L3Vzci9saWIvanZtL29w ZW5qZGsxMS9iaW4vamF2YQorIGphdmE6L3Vzci9iaW4vampzOi91c3IvbGliL2p2bS9vcGVuamRr MTEvYmluL2pqcworIGphdmE6L3Vzci9iaW4va2V5dG9vbDovdXNyL2xpYi9qdm0vb3BlbmpkazEx L2Jpbi9rZXl0b29sCisgamF2YTovdXNyL2Jpbi9vcmJkOi91c3IvbGliL2p2bS9vcGVuamRrMTEv YmluL29yYmQKKyBqYXZhOi91c3IvYmluL3BhY2syMDA6L3Vzci9saWIvanZtL29wZW5qZGsxMS9i aW4vcGFjazIwMAorIGphdmE6L3Vzci9iaW4vcG9saWN5dG9vbDovdXNyL2xpYi9qdm0vb3Blbmpk azExL2Jpbi9wb2xpY3l0b29sCisgamF2YTovdXNyL2Jpbi9ybWlkOi91c3IvbGliL2p2bS9vcGVu amRrMTEvYmluL3JtaWQKKyBqYXZhOi91c3IvYmluL3JtaXJlZ2lzdHJ5Oi91c3IvbGliL2p2bS9v cGVuamRrMTEvYmluL3JtaXJlZ2lzdHJ5CisgamF2YTovdXNyL2Jpbi9zZXJ2ZXJ0b29sOi91c3Iv bGliL2p2bS9vcGVuamRrMTEvYmluL3NlcnZlcnRvb2wKKyBqYXZhOi91c3IvYmluL3RuYW1lc2Vy djovdXNyL2xpYi9qdm0vb3BlbmpkazExL2Jpbi90bmFtZXNlcnYKKyBqYXZhOi91c3IvYmluL3Vu cGFjazIwMDovdXNyL2xpYi9qdm0vb3BlbmpkazExL2Jpbi91bnBhY2syMDAKKworIGpkazovdXNy L2Jpbi9hcHBsZXR2aWV3ZXI6L3Vzci9saWIvanZtL29wZW5qZGsxMS9iaW4vYXBwbGV0dmlld2Vy CisgamRrOi91c3IvYmluL2V4dGNoZWNrOi91c3IvbGliL2p2bS9vcGVuamRrMTEvYmluL2V4dGNo ZWNrCisgamRrOi91c3IvYmluL2lkbGo6L3Vzci9saWIvanZtL29wZW5qZGsxMS9iaW4vaWRsagor IGpkazovdXNyL2Jpbi9qYXI6L3Vzci9saWIvanZtL29wZW5qZGsxMS9iaW4vamFyCisgamRrOi91 c3IvYmluL2phcnNpZ25lcjovdXNyL2xpYi9qdm0vb3BlbmpkazExL2Jpbi9qYXJzaWduZXIKKyBq ZGs6L3Vzci9iaW4vamF2YTovdXNyL2xpYi9qdm0vb3BlbmpkazExL2Jpbi9qYXZhCisgamRrOi91 c3IvYmluL2phdmEtcm1pLmNnaTovdXNyL2xpYi9qdm0vb3BlbmpkazExL2Jpbi9qYXZhLXJtaS5j Z2kKKyBqZGs6L3Vzci9iaW4vamF2YWM6L3Vzci9saWIvanZtL29wZW5qZGsxMS9iaW4vamF2YWMK KyBqZGs6L3Vzci9iaW4vamF2YWRvYzovdXNyL2xpYi9qdm0vb3BlbmpkazExL2Jpbi9qYXZhZG9j CisgamRrOi91c3IvYmluL2phdmFoOi91c3IvbGliL2p2bS9vcGVuamRrMTEvYmluL2phdmFoCisg amRrOi91c3IvYmluL2phdmFwOi91c3IvbGliL2p2bS9vcGVuamRrMTEvYmluL2phdmFwCisgamRr Oi91c3IvYmluL2pjbWQ6L3Vzci9saWIvanZtL29wZW5qZGsxMS9iaW4vamNtZAorIGpkazovdXNy L2Jpbi9qY29uc29sZTovdXNyL2xpYi9qdm0vb3BlbmpkazExL2Jpbi9qY29uc29sZQorIGpkazov dXNyL2Jpbi9qZGI6L3Vzci9saWIvanZtL29wZW5qZGsxMS9iaW4vamRiCisgamRrOi91c3IvYmlu L2pkZXBzOi91c3IvbGliL2p2bS9vcGVuamRrMTEvYmluL2pkZXBzCisgamRrOi91c3IvYmluL2po YXQ6L3Vzci9saWIvanZtL29wZW5qZGsxMS9iaW4vamhhdAorIGpkazovdXNyL2Jpbi9qaW5mbzov dXNyL2xpYi9qdm0vb3BlbmpkazExL2Jpbi9qaW5mbworIGpkazovdXNyL2Jpbi9qanM6L3Vzci9s aWIvanZtL29wZW5qZGsxMS9iaW4vampzCisgamRrOi91c3IvYmluL2ptYXA6L3Vzci9saWIvanZt L29wZW5qZGsxMS9iaW4vam1hcAorIGpkazovdXNyL2Jpbi9qcHM6L3Vzci9saWIvanZtL29wZW5q ZGsxMS9iaW4vanBzCisgamRrOi91c3IvYmluL2pydW5zY3JpcHQ6L3Vzci9saWIvanZtL29wZW5q ZGsxMS9iaW4vanJ1bnNjcmlwdAorIGpkazovdXNyL2Jpbi9qc2FkZWJ1Z2Q6L3Vzci9saWIvanZt L29wZW5qZGsxMS9iaW4vanNhZGVidWdkCisgamRrOi91c3IvYmluL2pzdGFjazovdXNyL2xpYi9q dm0vb3BlbmpkazExL2Jpbi9qc3RhY2sKKyBqZGs6L3Vzci9iaW4vanN0YXQ6L3Vzci9saWIvanZt L29wZW5qZGsxMS9iaW4vanN0YXQKKyBqZGs6L3Vzci9iaW4vanN0YXRkOi91c3IvbGliL2p2bS9v cGVuamRrMTEvYmluL2pzdGF0ZAorIGpkazovdXNyL2Jpbi9rZXl0b29sOi91c3IvbGliL2p2bS9v cGVuamRrMTEvYmluL2tleXRvb2wKKyBqZGs6L3Vzci9iaW4vbmF0aXZlMmFzY2lpOi91c3IvbGli L2p2bS9vcGVuamRrMTEvYmluL25hdGl2ZTJhc2NpaQorIGpkazovdXNyL2Jpbi9vcmJkOi91c3Iv bGliL2p2bS9vcGVuamRrMTEvYmluL29yYmQKKyBqZGs6L3Vzci9iaW4vcGFjazIwMDovdXNyL2xp Yi9qdm0vb3BlbmpkazExL2Jpbi9wYWNrMjAwCisgamRrOi91c3IvYmluL3BvbGljeXRvb2w6L3Vz ci9saWIvanZtL29wZW5qZGsxMS9iaW4vcG9saWN5dG9vbAorIGpkazovdXNyL2Jpbi9ybWljOi91 c3IvbGliL2p2bS9vcGVuamRrMTEvYmluL3JtaWMKKyBqZGs6L3Vzci9iaW4vcm1pZDovdXNyL2xp Yi9qdm0vb3BlbmpkazExL2Jpbi9ybWlkCisgamRrOi91c3IvYmluL3JtaXJlZ2lzdHJ5Oi91c3Iv bGliL2p2bS9vcGVuamRrMTEvYmluL3JtaXJlZ2lzdHJ5CisgamRrOi91c3IvYmluL3NjaGVtYWdl bjovdXNyL2xpYi9qdm0vb3BlbmpkazExL2Jpbi9zY2hlbWFnZW4KKyBqZGs6L3Vzci9iaW4vc2Vy aWFsdmVyOi91c3IvbGliL2p2bS9vcGVuamRrMTEvYmluL3NlcmlhbHZlcgorIGpkazovdXNyL2Jp bi9zZXJ2ZXJ0b29sOi91c3IvbGliL2p2bS9vcGVuamRrMTEvYmluL3NlcnZlcnRvb2wKKyBqZGs6 L3Vzci9iaW4vdG5hbWVzZXJ2Oi91c3IvbGliL2p2bS9vcGVuamRrMTEvYmluL3RuYW1lc2Vydgor IGpkazovdXNyL2Jpbi91bnBhY2syMDA6L3Vzci9saWIvanZtL29wZW5qZGsxMS9iaW4vdW5wYWNr MjAwCisgamRrOi91c3IvYmluL3dzZ2VuOi91c3IvbGliL2p2bS9vcGVuamRrMTEvYmluL3dzZ2Vu CisgamRrOi91c3IvYmluL3dzaW1wb3J0Oi91c3IvbGliL2p2bS9vcGVuamRrMTEvYmluL3dzaW1w b3J0CisgamRrOi91c3IvYmluL3hqYzovdXNyL2xpYi9qdm0vb3BlbmpkazExL2Jpbi94amMKKyIK KworcG9zdF9leHRyYWN0KCkgeworCWNobW9kICt4IGNvbmZpZ3VyZQorCWlmIFsgIiRYQlBTX1RB UkdFVF9MSUJDIiA9ICJtdXNsIiBdOyB0aGVuCisJCXJtIC1yIHNyYy9qZGsuaG90c3BvdC5hZ2Vu dAorCWZpCit9CisKK3Bvc3RfcGF0Y2goKSB7CisJaWYgWyAiJFhCUFNfVEFSR0VUX0xJQkMiID0g Im11c2wiIF07IHRoZW4KKwkJZm9yIGYgaW4gIiR7RklMRVNESVJ9Ii9tdXNsX3BhdGNoZXMvKi5w YXRjaDsgZG8KKwkJCWVjaG8gIkFwcGx5aW5nICRmIgorCQkJcGF0Y2ggLU5wMSAtaSAiJGYiCisJ CWRvbmUKKwlmaQorfQorCitkb19jb25maWd1cmUoKSB7CisJQ0ZMQUdTPSR7Q0ZMQUdTLy1EX0ZP UlRJRllfU09VUkNFPTIvfQorCUNYWEZMQUdTPSR7Q1hYRkxBR1MvLURfRk9SVElGWV9TT1VSQ0U9 Mi99CisJY29uZmlndXJlX2FyZ3M9JHtjb25maWd1cmVfYXJncy8tLXdpdGgtbGlidG9vbC1zeXNy b290PVwvdXNyXC9bYS16MC05XSotbGludXgtW2Etel0qL30KKwlpZiBbICIkWEJQU19DQ0FDSEUi IF0gJiYgWyAteiAiJENST1NTX0JVSUxEIiBdOyB0aGVuCisJCWNvbmZpZ3VyZV9hcmdzKz0iIC0t ZW5hYmxlLWNjYWNoZSIKKwkJQ0M9Ii91c3IvYmluL2NjIgorCQlDWFg9Ii91c3IvYmluL2MrKyIK KwlmaQorCS4vY29uZmlndXJlICR7Y29uZmlndXJlX2FyZ3N9IC0td2l0aC1leHRyYS1jZmxhZ3M9 IiRDRkxBR1MiIC0td2l0aC1leHRyYS1jeHhmbGFncz0iJENYWEZMQUdTIiAtLXdpdGgtZXh0cmEt bGRmbGFncz0iJExERkxBR1MiCit9CisKK3Bvc3RfaW5zdGFsbCgpIHsKKwl2bWtkaXIgL3Vzci9s aWIvanZtCisJbXYgJHtERVNURElSfS91c3IvbGliL2p2bS9vcGVuamRrLSR7X2phdmFfdmVyfS4k e19qYXZhX21pbl92ZXJ9LiR7X2phdmFfc2VjX3Zlcn0taW50ZXJuYWwgJHtERVNURElSfS91c3Iv bGliL2p2bS9vcGVuamRrJHtfamF2YV92ZXJ9CisJcm0gLXJmICR7REVTVERJUn0vdXNyL2xpYi9i aW4KKwl2bWtkaXIgdXNyL2xpYi9qdm0vJF9vcGVuamRrX3ZlcnNpb24vbGliL3NlY3VyaXR5CisJ bWFrZS1jYSAtZyAtZiAtLWRlc3RkaXIgIiR7UFdEfS9jYSIgLWsgIiR7REVTVERJUn0vdXNyL2xp Yi9qdm0vJF9vcGVuamRrX3ZlcnNpb24vYmluL2tleXRvb2wiCisJbXYgLi9jYS9ldGMvcGtpL3Rs cy9qYXZhL2NhY2VydHMgJHtERVNURElSfS91c3IvbGliL2p2bS8kX29wZW5qZGtfdmVyc2lvbi9s aWIvc2VjdXJpdHkvCisgICAgY2htb2QgLVIgdWdvK3J3IC4vY2EKKyAgICBybSAtUmYgLi9jYQor CXZsaWNlbnNlIEFTU0VNQkxZX0VYQ0VQVElPTgorCXZsaWNlbnNlIExJQ0VOU0UKK30KKworb3Bl bmpkazExLWRvY19wYWNrYWdlKCkgeworCW5vc3RyaXA9eWVzCisJbm92ZXJpZnlyZGVwcz15ZXMK Kwlub3NobGlicHJvdmlkZXM9eWVzCisJc2hvcnRfZGVzYys9IiAtLSBkb2N1bWVudGF0aW9uIgor CXBrZ19pbnN0YWxsKCkgeworCQljZCAke3dya3NyY30KKwkJaWYgWyAiJGJ1aWxkX29wdGlvbl9k b2NzIiBdOyB0aGVuCisJCQl2bWtkaXIgdXNyL3NoYXJlL2RvYy9vcGVuamRrMTEKKwkJCWNwIC1h IGJ1aWxkL2xpbnV4LSovaW1hZ2VzL2RvY3MvKiAke1BLR0RFU1RESVJ9L3Vzci9zaGFyZS9kb2Mv b3BlbmpkazExCisJCWZpCisJCXZtb3ZlIHVzci9saWIvanZtL29wZW5qZGsxMS9tYW4vbWFuMS8K Kwl9Cit9CisKK29wZW5qZGsxMS1zcmNfcGFja2FnZSgpIHsKKwlub3N0cmlwPXllcworCW5vdmVy aWZ5cmRlcHM9eWVzCisJbm9zaGxpYnByb3ZpZGVzPXllcworCXNob3J0X2Rlc2MrPSIgLS0gc291 cmNlcyIKKwlwa2dfaW5zdGFsbCgpIHsKKwkJdm1vdmUgInVzci9saWIvanZtL29wZW5qZGsxMS9s aWIvc3JjLnppcCIKKwl9Cit9CgpGcm9tIDViOTQyMDkzMTQ3NDkyMDkxYzUxZjcwYjdjMjM0MThh MjI4MWMyYzkgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IEZyYW5rIFN0ZWluYm9ybiA8 c3RlaW5ib3JuQHNpcGdhdGUuZGU+CkRhdGU6IFR1ZSwgMjkgT2N0IDIwMTkgMjM6MjY6MjggKzAx MDAKU3ViamVjdDogW1BBVENIIDE0Mi8xODZdIGxpbnV4NS4zOiB1cGRhdGUgdG8gNS4zLjguCgpb c2tpcCBjaV0KLS0tCiBzcmNwa2dzL2xpbnV4NS4zL3RlbXBsYXRlIHwgNCArKy0tCiAxIGZpbGUg Y2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3Ny Y3BrZ3MvbGludXg1LjMvdGVtcGxhdGUgYi9zcmNwa2dzL2xpbnV4NS4zL3RlbXBsYXRlCmluZGV4 IDg5NTEzNDEyOGRmLi5jNzExNWI3NDIzNCAxMDA2NDQKLS0tIGEvc3JjcGtncy9saW51eDUuMy90 ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2xpbnV4NS4zL3RlbXBsYXRlCkBAIC0xLDYgKzEsNiBAQAog IyBUZW1wbGF0ZSBmaWxlIGZvciAnbGludXg1LjMnCiBwa2duYW1lPWxpbnV4NS4zCi12ZXJzaW9u PTUuMy43Cit2ZXJzaW9uPTUuMy44CiByZXZpc2lvbj0xCiB3cmtzcmM9ImxpbnV4LSR7dmVyc2lv bn0iCiBzaG9ydF9kZXNjPSJMaW51eCBrZXJuZWwgYW5kIG1vZHVsZXMgKCR7dmVyc2lvbiUuKn0g c2VyaWVzKSIKQEAgLTgsNyArOCw3IEBAIG1haW50YWluZXI9IkZveGxldCA8Zm94bGV0QGZ1cmNv ZGUuY28+IgogbGljZW5zZT0iR1BMLTIuMC1vbmx5IgogaG9tZXBhZ2U9Imh0dHBzOi8vd3d3Lmtl cm5lbC5vcmciCiBkaXN0ZmlsZXM9Imh0dHBzOi8vY2RuLmtlcm5lbC5vcmcvcHViL2xpbnV4L2tl cm5lbC92NS54L2xpbnV4LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09YzZjOTcxNGUyMTUz MWM4MjVjMzA2YjEwN2JjNmY2YzdiZmEyZDUyNzBhMTRiYWQxNzBmOGRlNWE3M2QzNDgwMgorY2hl Y2tzdW09NzhmM2NmYzZjMjBiMTBmZjIxYzBiYjIyZDdkMjU3Y2FiMDM3ODFjNDRkOGM1YWFlMjg5 Zjc0OWY5NGY3NjY0OQogcGF0Y2hfYXJncz0iLU5wMSIKIAogbm9kZWJ1Zz15ZXMgICMgLWRiZyBw YWNrYWdlIGlzIGdlbmVyYXRlZCBiZWxvdyBtYW51YWxseQoKRnJvbSBhNGRmMzI2Y2EyZWViMjY0 N2I2NGZiNjY0ZWJkMzMxYmQ5Yzc5MzhhIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBI ZWxtdXQgUG96aW1za2kgPGhlbG11dEBwb3ppbXNraS5ldT4KRGF0ZTogTW9uLCAyOCBPY3QgMjAx OSAwOTo0ODozNiArMDEwMApTdWJqZWN0OiBbUEFUQ0ggMTQzLzE4Nl0gc21wbGF5ZXI6IHVwZGF0 ZSB0byAxOS4xMC4wLgoKLS0tCiBzcmNwa2dzL3NtcGxheWVyL3RlbXBsYXRlIHwgNDQgKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tCiAxIGZpbGUgY2hhbmdlZCwgNDAgaW5z ZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3NtcGxheWVy L3RlbXBsYXRlIGIvc3JjcGtncy9zbXBsYXllci90ZW1wbGF0ZQppbmRleCBlZDM0OGUwNWE4OS4u NmM3NzFiYjU4OTYgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3Mvc21wbGF5ZXIvdGVtcGxhdGUKKysrIGIv c3JjcGtncy9zbXBsYXllci90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxhdGUgZmls ZSBmb3IgJ3NtcGxheWVyJwogcGtnbmFtZT1zbXBsYXllcgotdmVyc2lvbj0xOS41LjAKK3ZlcnNp b249MTkuMTAuMAogcmV2aXNpb249MQogYnVpbGRfc3R5bGU9Z251LW1ha2VmaWxlCiBob3N0bWFr ZWRlcGVuZHM9InF0NS1ob3N0LXRvb2xzIHF0NS10b29scyBxdDUtc2NyaXB0LWRldmVsIgpAQCAt MTEsMTEgKzExLDQ3IEBAIG1haW50YWluZXI9IkhlbG11dCBQb3ppbXNraSA8aGVsbXV0QHBvemlt c2tpLmV1PiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6Ly93 d3cuc21wbGF5ZXIuaW5mbyIKIGRpc3RmaWxlcz0iJHtTT1VSQ0VGT1JHRV9TSVRFfS8kcGtnbmFt ZS8kcGtnbmFtZS0kdmVyc2lvbi50YXIuYnoyIgotY2hlY2tzdW09YjVjYjJiMzdmYzlhMjI1YmI3 Mjg3YmYyNmEwYTQ5OWY3YjQ2YmZmNjg4MTYxYjhlNWVhZTBkOTZkNzRkYWFmNQorY2hlY2tzdW09 NTRmNzUxYzYyOTc3ODk5MzA3YzgzODkzNmQwNTAxOGIwYTQ4ODRlZTk1ZTBlMDQxNWNlYjkyMDU0 Mjg2MDc2YgorCisjIHVwc3RyZWFtIGJ1ZyByZXBvcnQgaHR0cHM6Ly9zb3VyY2Vmb3JnZS5uZXQv cC9zbXBsYXllci9idWdzLzkzNS8KK2lmIFsgIiRYQlBTX1RBUkdFVF9XT1JEU0laRSIgPT0gIjMy IiBdOwordGhlbgorCWJyb2tlbj0iZW1iZWRkZWQgd2ViIHNlcnZlciBkb2VzIG5vdCBjb21waWxl IG9uIDMyIGJpdCBhcmNoaXRlY3R1cmVzIgorZmkKIAogcHJlX2J1aWxkKCkgewotCWV4cG9ydCBR TUFLRV9PUFRTPSJRTUFLRV9DQz0kQ0MgUU1BS0VfQ1hYPSRDWFggUU1BS0VfTElOSz0kQ1hYIFFN QUtFX0NGTEFHUz1cIiR7Q0ZMQUdTfVwiIFwKLQkJUU1BS0VfQ1hYRkxBR1M9XCIke0NYWEZMQUdT fVwiIFFNQUtFX0xGTEFHUz1cIiR7TERGTEFHU31cIiIKKwlpZiBbICIkQ1JPU1NfQlVJTEQiIF07 IHRoZW4KKwljYXQgPiAiJHt3cmtzcmN9L3F0LmNvbmYiIDw8X0VPRgorW1BhdGhzXQorU3lzcm9v dD0ke1hCUFNfQ1JPU1NfQkFTRX0KK1ByZWZpeD0ke1hCUFNfQ1JPU1NfQkFTRX0vdXNyCitBcmNo RGF0YT0ke1hCUFNfQ1JPU1NfQkFTRX0vdXNyL2xpYi9xdDUKK0RhdGE9JHtYQlBTX0NST1NTX0JB U0V9L3Vzci9zaGFyZS9xdDUKK0RvY3VtZW50YXRpb249JHtYQlBTX0NST1NTX0JBU0V9L3Vzci9z aGFyZS9kb2MvcXQ1CitIZWFkZXJzPSR7WEJQU19DUk9TU19CQVNFfS91c3IvaW5jbHVkZS9xdDUK K0xpYnJhcmllcz0ke1hCUFNfQ1JPU1NfQkFTRX0vdXNyL2xpYgorTGlicmFyeUV4ZWN1dGFibGVz PS91c3IvbGliL3F0NS9saWJleGVjCitCaW5hcmllcz0vdXNyL2xpYi9xdDUvYmluCitUZXN0cz0k e1hCUFNfQ1JPU1NfQkFTRX0vdXNyL3Rlc3RzCitQbHVnaW5zPS91c3IvbGliL3F0NS9wbHVnaW5z CitJbXBvcnRzPSR7WEJQU19DUk9TU19CQVNFfS91c3IvbGliL3F0NS9pbXBvcnRzCitRbWwySW1w b3J0cz0ke1hCUFNfQ1JPU1NfQkFTRX0vdXNyL2xpYi9xdDUvcW1sCitUcmFuc2xhdGlvbnM9JHtY QlBTX0NST1NTX0JBU0V9L3Vzci9zaGFyZS9xdDUvdHJhbnNsYXRpb25zCitTZXR0aW5ncz0ke1hC UFNfQ1JPU1NfQkFTRX0vZXRjL3hkZworRXhhbXBsZXM9JHtYQlBTX0NST1NTX0JBU0V9L3Vzci9z aGFyZS9xdDUvZXhhbXBsZXMKK0hvc3RQcmVmaXg9L3VzcgorSG9zdERhdGE9L3Vzci9saWIvcXQ1 CitIb3N0QmluYXJpZXM9L3Vzci9saWIvcXQ1L2JpbgorSG9zdExpYnJhcmllcz0vdXNyL2xpYgor U3BlYz1saW51eC1nKysKK1RhcmdldFNwZWM9bGludXgtZysrCitfRU9GCisJCWV4cG9ydCBRTUFL RV9PUFRTPSJRTUFLRV9DQz0kQ0MgUU1BS0VfQ1hYPSRDWFggUU1BS0VfTElOSz0kQ1hYIFFNQUtF X0NGTEFHUz1cIiR7Q0ZMQUdTfVwiIFwKKwkJCVFNQUtFX0NYWEZMQUdTPVwiJHtDWFhGTEFHU31c IiBRTUFLRV9MRkxBR1M9XCIke0xERkxBR1N9XCIgLXF0Y29uZiAke3dya3NyY30vcXQuY29uZiIK KwllbHNlCisJCWV4cG9ydCBRTUFLRV9PUFRTPSJRTUFLRV9DQz0kQ0MgUU1BS0VfQ1hYPSRDWFgg UU1BS0VfTElOSz0kQ1hYIFFNQUtFX0NGTEFHUz1cIiR7Q0ZMQUdTfVwiIFwKKwkJCVFNQUtFX0NY WEZMQUdTPVwiJHtDWFhGTEFHU31cIiBRTUFLRV9MRkxBR1M9XCIke0xERkxBR1N9XCIiCisJZmkK IAlzZWQgLWkgJ3M6I1woREVGSU5FUyArPSBOT19ERUJVR19PTl9DT05TT0xFXCk6XDE6JyBzcmMv c21wbGF5ZXIucHJvCiAJc2VkIC1pICdzfFBSRUZJWD0vdXNyL2xvY2FsfFBSRUZJWD0vdXNyfCcg TWFrZWZpbGUKIAlzZWQgLWkgJ3N8RE9DX1BBVEg9JChQUkVGSVgpL3NoYXJlL2RvYy9wYWNrYWdl cy9zbXBsYXllcnxET0NfUEFUSD0kKFBSRUZJWCkvc2hhcmUvZG9jL3NtcGxheWVyfCcgTWFrZWZp bGUKCkZyb20gNjAwN2YzMDA3MzM1YjU4ODA3ZDRhOTBmZmM0YzhlYzg4Zjc3Y2UzYyBNb24gU2Vw IDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogSm9obiA8am9obnpAcG9zdGVvLm5ldD4KRGF0ZTogV2Vk LCAzMCBPY3QgMjAxOSAxMToxNTo0MyArMDEwMApTdWJqZWN0OiBbUEFUQ0ggMTQ0LzE4Nl0gZGFy a3RhYmxlOiBzZXQgYnJva2VuIG9uIGFhcmNoNjQKCi0tLQogc3JjcGtncy9kYXJrdGFibGUvdGVt cGxhdGUgfCAzICsrLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlv bigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZGFya3RhYmxlL3RlbXBsYXRlIGIvc3JjcGtncy9k YXJrdGFibGUvdGVtcGxhdGUKaW5kZXggNjFjYWMwNjRhM2EuLmE0MTFjYWI2MmM5IDEwMDY0NAot LS0gYS9zcmNwa2dzL2Rhcmt0YWJsZS90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2Rhcmt0YWJsZS90 ZW1wbGF0ZQpAQCAtMjUsNSArMjUsNiBAQCBkaXN0ZmlsZXM9Imh0dHBzOi8vZ2l0aHViLmNvbS9k YXJrdGFibGUtb3JnL2Rhcmt0YWJsZS9yZWxlYXNlcy9kb3dubG9hZC9yZWxlYXNlLQogY2hlY2tz dW09YTUxODk5OWM4NDU4NDcyZWRmYzA0NTc3MDI2Y2U1MDQ3ZDc0NTUzMDUyYWYwZjUyZDEwYmE4 Y2U2MDFiNzhmMAogCiBjYXNlICIkWEJQU19UQVJHRVRfTUFDSElORSIgaW4KLQlwcGM2NGxlKikg Y29uZmlndXJlX2FyZ3MrPSIgLURVU0VfT1BFTkNMPU9GRiIKKwlwcGM2NGxlKikgY29uZmlndXJl X2FyZ3MrPSIgLURVU0VfT1BFTkNMPU9GRiIgOzsKKwlhYXJjaDY0KikgYnJva2VuPSJodHRwczov L2J1aWxkLnZvaWRsaW51eC5vcmcvYnVpbGRlcnMvYWFyY2g2NF9idWlsZGVyL2J1aWxkcy8yMjQ3 OS9zdGVwcy9zaGVsbF8zL2xvZ3Mvc3RkaW8iIDs7CiBlc2FjCgpGcm9tIDc3ZjM4YThhZjdlNzRl NjJlYzYzNGQzZmQ2ZDJiNjYxMTE5MDA0OGYgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206 IER1bmNhZW4gPGR1bmNhZW5Adm9pZGxpbnV4Lm9yZz4KRGF0ZTogV2VkLCAzMCBPY3QgMjAxOSAx MzowMDo1MCArMDEwMApTdWJqZWN0OiBbUEFUQ0ggMTQ1LzE4Nl0gaGFyZmJ1eno6IHVwZGF0ZSB0 byAyLjYuNC4KCi0tLQogc3JjcGtncy9oYXJmYnV6ei90ZW1wbGF0ZSB8IDQgKystLQogMSBmaWxl IGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9z cmNwa2dzL2hhcmZidXp6L3RlbXBsYXRlIGIvc3JjcGtncy9oYXJmYnV6ei90ZW1wbGF0ZQppbmRl eCA4N2MyOWEyYmFmOS4uYWUzNzE3NWY5YTIgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvaGFyZmJ1enov dGVtcGxhdGUKKysrIGIvc3JjcGtncy9oYXJmYnV6ei90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAK ICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2hhcmZidXp6JwogcGtnbmFtZT1oYXJmYnV6egotdmVyc2lv bj0yLjYuMgordmVyc2lvbj0yLjYuNAogcmV2aXNpb249MQogYnVpbGRfc3R5bGU9Z251LWNvbmZp Z3VyZQogY29uZmlndXJlX2FyZ3M9Ii0td2l0aC1nbGliIC0td2l0aC1mcmVldHlwZSAtLXdpdGgt Y2Fpcm8gLS13aXRoLWljdSAtLXdpdGgtZ3JhcGhpdGUyIgpAQCAtMTIsNyArMTIsNyBAQCBsaWNl bnNlPSJNSVQiCiBob21lcGFnZT0iaHR0cDovL3d3dy5mcmVlZGVza3RvcC5vcmcvd2lraS9Tb2Z0 d2FyZS9IYXJmQnV6ei8iCiBjaGFuZ2Vsb2c9Imh0dHBzOi8vcmF3LmdpdGh1YnVzZXJjb250ZW50 LmNvbS9oYXJmYnV6ei9oYXJmYnV6ei9tYXN0ZXIvTkVXUyIKIGRpc3RmaWxlcz0iJHtGUkVFREVT S1RPUF9TSVRFfS9oYXJmYnV6ei9yZWxlYXNlLyR7cGtnbmFtZX0tJHt2ZXJzaW9ufS50YXIueHoi Ci1jaGVja3N1bT0zYjRjNmE3MmY3ZjJiMDVkNTRmNmMzMTEyYjNlYmVlNTEzMWMxOTlmZTRkZTRj ZjliYmJmNzFhNTY2NjZmNjI0CitjaGVja3N1bT05NDEzYjhkOTYxMzJkNjk5Njg3ZWY5MTRlYmI4 YzUwNDQwZWZjODdiM2Y3NzVkMjU4NTZkN2VjMzQ3YzAzYzEyCiAKIHByZV9jb25maWd1cmUoKSB7 CiAJYXV0b3JlY29uZiAtZmkKCkZyb20gYzJjNGNhZTA2MWE3ODA0NzM2ZWU1OTBhOWJhY2VlNTQ1 MGI4YjI5YyBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogbXVzdGFxaW0gPG11c3RhcWlt QHBtLm1lPgpEYXRlOiBXZWQsIDMwIE9jdCAyMDE5IDA1OjU3OjI0ICswMjAwClN1YmplY3Q6IFtQ QVRDSCAxNDYvMTg2XSBkYXYxZDogdXBkYXRlIHRvIDAuNS4xCgotLS0KIC4uLjhmNDdmMGVlYmNk ZmViYjE3NTNhNzg2ZTNlMTY1NGI1MWVhNC5wYXRjaCB8IDM4IC0tLS0tLS0tLS0tLS0tLS0tLS0K IHNyY3BrZ3MvZGF2MWQvdGVtcGxhdGUgICAgICAgICAgICAgICAgICAgICAgICB8ICA0ICstCiAy IGZpbGVzIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgNDAgZGVsZXRpb25zKC0pCiBkZWxldGUg bW9kZSAxMDA2NDQgc3JjcGtncy9kYXYxZC9wYXRjaGVzL2E2MjI4ZjQ3ZjBlZWJjZGZlYmIxNzUz YTc4NmUzZTE2NTRiNTFlYTQucGF0Y2gKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2RhdjFkL3BhdGNo ZXMvYTYyMjhmNDdmMGVlYmNkZmViYjE3NTNhNzg2ZTNlMTY1NGI1MWVhNC5wYXRjaCBiL3NyY3Br Z3MvZGF2MWQvcGF0Y2hlcy9hNjIyOGY0N2YwZWViY2RmZWJiMTc1M2E3ODZlM2UxNjU0YjUxZWE0 LnBhdGNoCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBlNWZjMzk0ZTYzOC4uMDAwMDAw MDAwMDAKLS0tIGEvc3JjcGtncy9kYXYxZC9wYXRjaGVzL2E2MjI4ZjQ3ZjBlZWJjZGZlYmIxNzUz YTc4NmUzZTE2NTRiNTFlYTQucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSwzOCArMCwwIEBACi1G cm9tIGE2MjI4ZjQ3ZjBlZWJjZGZlYmIxNzUzYTc4NmUzZTE2NTRiNTFlYTQgTW9uIFNlcCAxNyAw MDowMDowMCAyMDAxCi1Gcm9tOiA9P1VURi04P3E/TWFydGluPTIwU3RvcnNqPUMzPUI2Pz0gPG1h cnRpbkBtYXJ0aW4uc3Q+Ci1EYXRlOiBGcmksIDExIE9jdCAyMDE5IDEzOjE3OjM2ICswMzAwCi1T dWJqZWN0OiBbUEFUQ0hdIGFybTY0OiBpcHJlZDogTWFrZSBzdXJlIGFsbCBzeW1ib2xzIGFyZSBh bGlnbmVkCi0KLUlmIGJ1aWxkaW5nIHdpdGggZGVidWcgaW5mb3JtYXRpb24gZW5hYmxlZCwgYmlu dXRpbHMgZXJyb3Igb3V0IHdpdGgKLSJ1bmFsaWduZWQgb3Bjb2RlcyBkZXRlY3RlZCBpbiBleGVj dXRhYmxlIHNlZ21lbnQiLCBpZiB0aGVyZSBhcmUKLXN5bWJvbHMgKGV2ZW4gbG9jYWwgb25lcyB0 aGF0IGRvbid0IGVuZCB1cCBpbiB0aGUgc3ltYm9sIHRhYmxlKQotdGhhdCBwb2ludCB0byB1bmFs aWduZWQgYWRkcmVzc2VzIGluIHRoZSB0ZXh0IHNlY3Rpb24uCi0KLVRoaXMgZml4ZXMgaXNzdWUg IzMwMC4KLS0tLQotIHNyYy9hcm0vNjQvaXByZWQuUyB8IDIgKysKLSAxIGZpbGUgY2hhbmdlZCwg MiBpbnNlcnRpb25zKCspCi0KLWRpZmYgLS1naXQgYS9zcmMvYXJtLzY0L2lwcmVkLlMgYi9zcmMv YXJtLzY0L2lwcmVkLlMKLWluZGV4IDQxYjNjMWNiLi45NTEzMjEyYiAxMDA2NDQKLS0tLSBzcmMv YXJtLzY0L2lwcmVkLlMKLSsrKyBzcmMvYXJtLzY0L2lwcmVkLlMKLUBAIC0yMjQ0LDYgKzIyNDQs NyBAQCBMKGlwcmVkX2NmbF9hY180MjBfdGJsKToKLSAgICAgICAgIC5od29yZCBMKGlwcmVkX2Nm bF9hY180MjBfdGJsKSAtIEwoaXByZWRfY2ZsX2FjXzQyMF93MTYpCi0gICAgICAgICAuaHdvcmQg TChpcHJlZF9jZmxfYWNfNDIwX3RibCkgLSBMKGlwcmVkX2NmbF9hY180MjBfdzgpCi0gICAgICAg ICAuaHdvcmQgTChpcHJlZF9jZmxfYWNfNDIwX3RibCkgLSBMKGlwcmVkX2NmbF9hY180MjBfdzQp Ci0rICAgICAgICAuaHdvcmQgMAotIAotIEwoaXByZWRfY2ZsX2FjXzQyMF93MTZfdGJsKToKLSAg ICAgICAgIC5od29yZCBMKGlwcmVkX2NmbF9hY180MjBfdzE2X3RibCkgLSBMKGlwcmVkX2NmbF9h Y180MjBfdzE2X3dwYWQwKQotQEAgLTI0MzIsNiArMjQzMyw3IEBAIEwoaXByZWRfY2ZsX2FjXzQy Ml90YmwpOgotICAgICAgICAgLmh3b3JkIEwoaXByZWRfY2ZsX2FjXzQyMl90YmwpIC0gTChpcHJl ZF9jZmxfYWNfNDIyX3cxNikKLSAgICAgICAgIC5od29yZCBMKGlwcmVkX2NmbF9hY180MjJfdGJs KSAtIEwoaXByZWRfY2ZsX2FjXzQyMl93OCkKLSAgICAgICAgIC5od29yZCBMKGlwcmVkX2NmbF9h Y180MjJfdGJsKSAtIEwoaXByZWRfY2ZsX2FjXzQyMl93NCkKLSsgICAgICAgIC5od29yZCAwCi0g Ci0gTChpcHJlZF9jZmxfYWNfNDIyX3cxNl90YmwpOgotICAgICAgICAgLmh3b3JkIEwoaXByZWRf Y2ZsX2FjXzQyMl93MTZfdGJsKSAtIEwoaXByZWRfY2ZsX2FjXzQyMl93MTZfd3BhZDApCi0tLSAK LTIuMjIuMAotCmRpZmYgLS1naXQgYS9zcmNwa2dzL2RhdjFkL3RlbXBsYXRlIGIvc3JjcGtncy9k YXYxZC90ZW1wbGF0ZQppbmRleCAxMGEwYzk0OWZiYS4uZjFjZjQ5MTk0YWYgMTAwNjQ0Ci0tLSBh L3NyY3BrZ3MvZGF2MWQvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9kYXYxZC90ZW1wbGF0ZQpAQCAt MSw2ICsxLDYgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2RhdjFkJwogcGtnbmFtZT1kYXYxZAot dmVyc2lvbj0wLjUuMAordmVyc2lvbj0wLjUuMQogcmV2aXNpb249MQogYnVpbGRfc3R5bGU9bWVz b24KIGNvbmZpZ3VyZV9hcmdzPSItRGJ1aWxkX3Rlc3RzPWZhbHNlIC1EYnVpbGRfYXNtPXRydWUg LURidWlsZF90b29scz10cnVlCkBAIC0xMiw3ICsxMiw3IEBAIGxpY2Vuc2U9IkJTRC0yLUNsYXVz ZSIKIGhvbWVwYWdlPSJodHRwczovL2NvZGUudmlkZW9sYW4ub3JnL3ZpZGVvbGFuL2RhdjFkIgog Y2hhbmdlbG9nPSJodHRwczovL2NvZGUudmlkZW9sYW4ub3JnL3ZpZGVvbGFuL2RhdjFkL3Jhdy9t YXN0ZXIvTkVXUyIKIGRpc3RmaWxlcz0iaHR0cHM6Ly9jb2RlLnZpZGVvbGFuLm9yZy92aWRlb2xh bi9kYXYxZC8tL2FyY2hpdmUvLyR7dmVyc2lvbn0vZGF2MWQtJHt2ZXJzaW9ufS50YXIuYnoyIgot Y2hlY2tzdW09YjI5YzE1OWJmN2M1NmU4YjZhZTgxYmIyNDcwNDU5OTgxOWZhODkzOTllYzNkNmRi M2RiYzA1MmQ3YmM1YmFmOAorY2hlY2tzdW09MDIxNGQyMDFhMzM4ZTg0MThmODA1YjY4ZjlhZDI3 N2UzM2Q3OWMxODU5NGRlZTZlYWY2ZGNkNzRkYjI2NzRhOQogCiBsaWJkYXYxZDNfcGFja2FnZSgp IHsKIAlzaG9ydF9kZXNjKz0iIC0gcnVudGltZSBsaWJyYXJ5IgoKRnJvbSA3MDRlY2YwZWQyY2My MmNmZTUzOGIwYTQ4ZTY0YTJjOTQ1ZWU2MDA0IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9t OiBBdXJpIDxtZUBhdXJpZWgubWU+CkRhdGU6IFdlZCwgMzAgT2N0IDIwMTkgMTM6Mjc6MTggKzAy MDAKU3ViamVjdDogW1BBVENIIDE0Ny8xODZdIGR1YjogdXBkYXRlIHRvIDEuMTcuMAoKLS0tCiBz cmNwa2dzL2R1Yi90ZW1wbGF0ZSB8IDQgKystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9u cygrKSwgMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2R1Yi90ZW1wbGF0ZSBi L3NyY3BrZ3MvZHViL3RlbXBsYXRlCmluZGV4IDVjYWVlZWY5NzQwLi5lYzA1ZDI5YzVmOCAxMDA2 NDQKLS0tIGEvc3JjcGtncy9kdWIvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9kdWIvdGVtcGxhdGUK QEAgLTEsNiArMSw2IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdkdWInCiBwa2duYW1lPWR1Ygot dmVyc2lvbj0xLjEzLjAKK3ZlcnNpb249MS4xNy4wCiByZXZpc2lvbj0xCiBob3N0bWFrZWRlcGVu ZHM9ImRtZCIKIG1ha2VkZXBlbmRzPSJsaWJjdXJsLWRldmVsIgpAQCAtMTAsNyArMTAsNyBAQCBt YWludGFpbmVyPSJGb2xscHZvc3RlbiA8d29sZmlAa2FycGFkb3IueHl6PiIKIGxpY2Vuc2U9Ik1J VCIKIGhvbWVwYWdlPSJodHRwczovL2dpdGh1Yi5jb20vZGxhbmcvZHViIgogZGlzdGZpbGVzPSIk e2hvbWVwYWdlfS9hcmNoaXZlL3Yke3ZlcnNpb259LnRhci5neiIKLWNoZWNrc3VtPThjN2ZmZGFl MGI0OWJkMWEyNDZmNDhlODY1NjEwZmM1YjZmNmJkZjU4MDU3ODU4ZjNiYTdlOWRhZTgzNjhlZTcK K2NoZWNrc3VtPTFiNWQ1MzMxMjIzZmFmMTMyMGQzM2MwZmJjYTQ4ODExZjQ4ODkzZjVkY2I1N2Q1 YTVkZjhjZjJhZTNkODQ1ZTcKIG5vY3Jvc3M9InJlcXVpcmVzIGRtZCIKIAogZG9fYnVpbGQoKSB7 CgpGcm9tIDIwNzNkNmQwNDA3ZGNlZmJiNzcyNGViNDVjZDdjMmE0ODI0OTNkMzIgTW9uIFNlcCAx NyAwMDowMDowMCAyMDAxCkZyb206IEF1cmkgPG1lQGF1cmllaC5tZT4KRGF0ZTogV2VkLCAzMCBP Y3QgMjAxOSAxMjo1MTo0MSArMDIwMApTdWJqZWN0OiBbUEFUQ0ggMTQ4LzE4Nl0gbm90bXVjaDog dXBkYXRlIHRvIDAuMjkuMgoKLS0tCiBzcmNwa2dzL25vdG11Y2gvcGF0Y2hlcy9jcm9zcy5wYXRj aCB8IDIgKy0KIHNyY3BrZ3Mvbm90bXVjaC90ZW1wbGF0ZSAgICAgICAgICAgIHwgNCArKy0tCiAy IGZpbGVzIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKCmRpZmYgLS1n aXQgYS9zcmNwa2dzL25vdG11Y2gvcGF0Y2hlcy9jcm9zcy5wYXRjaCBiL3NyY3BrZ3Mvbm90bXVj aC9wYXRjaGVzL2Nyb3NzLnBhdGNoCmluZGV4IDY4MmU3YjJhMjA5Li4xY2VhZWJhZmM1NiAxMDA2 NDQKLS0tIGEvc3JjcGtncy9ub3RtdWNoL3BhdGNoZXMvY3Jvc3MucGF0Y2gKKysrIGIvc3JjcGtn cy9ub3RtdWNoL3BhdGNoZXMvY3Jvc3MucGF0Y2gKQEAgLTcyLDcgKzcyLDcgQEAgaW5kZXggOGI4 MGYwZTAuLjhlNWZkNGNlIDEwMDc1NQogLSAgICByZXR1cm4gMDsKIC19CiAtRU9GCi0tICAgIGlm ICEgVEVNUF9HUEc9JChta3RlbXAgLWQpOyB0aGVuCistICAgIGlmICEgVEVNUF9HUEc9JChta3Rl bXAgLWQgIiR7VE1QRElSOi0vdG1wfS9ub3RtdWNoLlhYWFhYWCIpOyB0aGVuCiAtICAgICAgICBw cmludGYgJ05vLlxuQ291bGQgbm90IG1ha2UgdGVtcGRpciBmb3IgdGVzdGluZyBzZXNzaW9uLWtl eSBzdXBwb3J0LlxuJwogLSAgICAgICAgZXJyb3JzPSQoKGVycm9ycyArIDEpKQogLSAgICBlbGlm ICR7Q0N9ICR7Q0ZMQUdTfSAke2dtaW1lX2NmbGFnc30gX2NoZWNrX3Nlc3Npb25fa2V5cy5jICR7 Z21pbWVfbGRmbGFnc30gLW8gX2NoZWNrX3Nlc3Npb25fa2V5cyBcCmRpZmYgLS1naXQgYS9zcmNw a2dzL25vdG11Y2gvdGVtcGxhdGUgYi9zcmNwa2dzL25vdG11Y2gvdGVtcGxhdGUKaW5kZXggY2Vk NjcwYTU5ZDQuLjZiYjg1NzhmYTFlIDEwMDY0NAotLS0gYS9zcmNwa2dzL25vdG11Y2gvdGVtcGxh dGUKKysrIGIvc3JjcGtncy9ub3RtdWNoL3RlbXBsYXRlCkBAIC0xLDYgKzEsNiBAQAogIyBUZW1w bGF0ZSBmaWxlIGZvciAnbm90bXVjaCcKIHBrZ25hbWU9bm90bXVjaAotdmVyc2lvbj0wLjI5LjEK K3ZlcnNpb249MC4yOS4yCiByZXZpc2lvbj0xCiBob3N0bWFrZWRlcGVuZHM9InBlcmwgcGtnLWNv bmZpZyBweXRob24tZGV2ZWwgcHl0aG9uMy1TcGhpbnggcHl0aG9uMy1kZXZlbCIKIG1ha2VkZXBl bmRzPSJiYXNoLWNvbXBsZXRpb24gZ21pbWUzLWRldmVsIHRhbGxvYy1kZXZlbCB4YXBpYW4tY29y ZS1kZXZlbCIKQEAgLTksNyArOSw3IEBAIG1haW50YWluZXI9IkphbiBTLiA8amFuLnNjaHJlaWJA Z21haWwuY29tPiIKIGxpY2Vuc2U9IkdQTC0zLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6 Ly9ub3RtdWNobWFpbC5vcmciCiBkaXN0ZmlsZXM9Imh0dHBzOi8vbm90bXVjaG1haWwub3JnL3Jl bGVhc2VzL25vdG11Y2gtJHt2ZXJzaW9ufS50YXIueHoiCi1jaGVja3N1bT05ODQ2ZmM4ZTMyZDQx NWNlZTQxZjY2NDQ1ODFhNGRlN2IwZDJlNmJjOThlMWJhODZkYjkxOGYwNjFmY2ZlMzY1CitjaGVj a3N1bT0xYmRhNjE0OWIyZmIwODQwZjRkMTQ2MzkxY2FiODllNTQxZDMwYTc3OGYxZjZlNmZhOTVi NDU2MDk3Y2Q1NWRlCiAKIHN1YnBhY2thZ2VzPSJsaWJub3RtdWNoIGxpYm5vdG11Y2gtZGV2ZWwg bm90bXVjaC1tdXR0IG5vdG11Y2gtcHl0aG9uIG5vdG11Y2gtcHl0aG9uMyIKIHBhdGNoX2FyZ3M9 LU5wMQoKRnJvbSBhZmFjOWE2MzBhOTlhMGIwMTQxN2E2NjgzMmUzZmZkOWU2MTQwZTkzIE1vbiBT ZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiA9P1VURi04P3E/Sj1DMz1CQ3JnZW49MjBCdWNobT1D Mz1CQ2xsZXI/PSA8cHVsbG1vbGxAdC1vbmxpbmUuZGU+CkRhdGU6IFdlZCwgMzAgT2N0IDIwMTkg MTM6MzA6MjYgKzAxMDAKU3ViamVjdDogW1BBVENIIDE0OS8xODZdIG1hbWU6IHVwZGF0ZSB0byAw LjIxNQpNSU1FLVZlcnNpb246IDEuMApDb250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9 VVRGLTgKQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogOGJpdAoKU2lnbmVkLW9mZi1ieTogSsO8 cmdlbiBCdWNobcO8bGxlciA8cHVsbG1vbGxAdC1vbmxpbmUuZGU+Ci0tLQogc3JjcGtncy9tYW1l L3BhdGNoZXMvcHBjNjQtZml4ZXMucGF0Y2ggfCAzNSAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LQogc3JjcGtncy9tYW1lL3RlbXBsYXRlICAgICAgICAgICAgICAgICAgfCAgNCArLS0KIDIgZmls ZXMgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAzNyBkZWxldGlvbnMoLSkKIGRlbGV0ZSBtb2Rl IDEwMDY0NCBzcmNwa2dzL21hbWUvcGF0Y2hlcy9wcGM2NC1maXhlcy5wYXRjaAoKZGlmZiAtLWdp dCBhL3NyY3BrZ3MvbWFtZS9wYXRjaGVzL3BwYzY0LWZpeGVzLnBhdGNoIGIvc3JjcGtncy9tYW1l L3BhdGNoZXMvcHBjNjQtZml4ZXMucGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4 IDZjODQ3ZjA5YjgxLi4wMDAwMDAwMDAwMAotLS0gYS9zcmNwa2dzL21hbWUvcGF0Y2hlcy9wcGM2 NC1maXhlcy5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDM1ICswLDAgQEAKLS0tLSAzcmRwYXJ0 eS9ieC9pbmNsdWRlL2J4L3BsYXRmb3JtLmgKLSsrKyAzcmRwYXJ0eS9ieC9pbmNsdWRlL2J4L3Bs YXRmb3JtLmgKLUBAIC0xMzMsOCArMTMzLDE0IEBACi0gI2VuZGlmIC8vCi0gCi0gI2lmIEJYX0NQ VV9QUEMKLS0jCXVuZGVmICBCWF9DUFVfRU5ESUFOX0JJRwotLSMJZGVmaW5lIEJYX0NQVV9FTkRJ QU5fQklHIDEKLSsvLyBfTElUVExFX0VORElBTiBleGlzdHMgb24gcHBjNjRsZS4KLSsjCWlmIF9M SVRUTEVfRU5ESUFOCi0rIwkJdW5kZWYgIEJYX0NQVV9FTkRJQU5fTElUVExFCi0rIwkJZGVmaW5l IEJYX0NQVV9FTkRJQU5fTElUVExFIDEKLSsjCWVsc2UKLSsjCQl1bmRlZiAgQlhfQ1BVX0VORElB Tl9CSUcKLSsjCQlkZWZpbmUgQlhfQ1BVX0VORElBTl9CSUcgMQotKyMJZW5kaWYKLSAjZWxzZQot ICMJdW5kZWYgIEJYX0NQVV9FTkRJQU5fTElUVExFCi0gIwlkZWZpbmUgQlhfQ1BVX0VORElBTl9M SVRUTEUgMQotCi0tLS0gbWFrZWZpbGUKLSsrKyBtYWtlZmlsZQotQEAgLTM5NCw2ICszOTQsMTIg QEAgQklHRU5ESUFOIDo9IDEKLSBlbmRpZgotIGVuZGlmICMgQklHRU5ESUFOCi0gCi0rIyBXb3Jr IGFyb3VuZCBhbiBpc3N1ZSB3aXRoIGxvbmcgZG91YmxlcyBvbiBwcGM2NCAoIzMxNTcpCi0raWZu ZXEgKCwkKGZpbmRzdHJpbmcgcHBjNjQsJChVTkFNRSkpKQotK0FSQ0hPUFRTX0MgKz0gLW1sb25n LWRvdWJsZS02NAotK0FSQ0hPUFRTX0NYWCArPSAtbWxvbmctZG91YmxlLTY0Ci0rZW5kaWYKLSsK LSBpZm5kZWYgUFlUSE9OX0VYRUNVVEFCTEUKLSBQWVRIT04gOj0gcHl0aG9uCi0gZWxzZQpkaWZm IC0tZ2l0IGEvc3JjcGtncy9tYW1lL3RlbXBsYXRlIGIvc3JjcGtncy9tYW1lL3RlbXBsYXRlCmlu ZGV4IDE0ZTkzNzQ1MDBjLi4xMTZjYzY2NWUyZiAxMDA2NDQKLS0tIGEvc3JjcGtncy9tYW1lL3Rl bXBsYXRlCisrKyBiL3NyY3BrZ3MvbWFtZS90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVt cGxhdGUgZmlsZSBmb3IgJ21hbWUnCiBwa2duYW1lPW1hbWUKLXZlcnNpb249MDIxNAordmVyc2lv bj0wMjE1CiByZXZpc2lvbj0xCiB3cmtzcmM9Im1hbWUtbWFtZSR7dmVyc2lvbn0iCiBzaG9ydF9k ZXNjPSJNdWx0aXBsZSBBcmNhZGUgTWFjaGluZSBFbXVsYXRvciIKQEAgLTgsNyArOCw3IEBAIG1h aW50YWluZXI9IkrDvHJnZW4gQnVjaG3DvGxsZXIgPHB1bGxtb2xsQHQtb25saW5lLmRlPiIKIGxp Y2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cDovL21hbWVkZXYub3JnIgog ZGlzdGZpbGVzPSJodHRwczovL2dpdGh1Yi5jb20vbWFtZWRldi9tYW1lL2FyY2hpdmUvbWFtZSR7 dmVyc2lvbn0udGFyLmd6IgotY2hlY2tzdW09OGFlMjRlM2IxZGUzM2RmMzM5NTdjNWY2NDJiZDk4 ODI4ODQyMzA1YmNiMzFkYTEzMGI3NTliYTdlODhiMzZkMgorY2hlY2tzdW09YzFiNWZiMGI5MTgy OWRmNWYzZGJlNTRmZjEzYTdjY2ZhM2E5ZjhhYWZhNTFhNjFjOWEyZjMxNTg1NjBlZDYwOQogCiBo b3N0bWFrZWRlcGVuZHM9InBlcmwgcGtnLWNvbmZpZyBweXRob24iCiBtYWtlZGVwZW5kcz0iU0RM Ml90dGYtZGV2ZWwgZ2xtIGxpYmdvbXAtZGV2ZWwgbGlianBlZy10dXJiby1kZXZlbAoKRnJvbSBk OGI0ZDc0OWIzMmZmNTczNzEwOTNmZjhiMzQ0YTIyYjdiZDAzNzdkIE1vbiBTZXAgMTcgMDA6MDA6 MDAgMjAwMQpGcm9tOiBOYXRoYW4gT3dlbnMgPG5kb3dlbnMwNEBnbWFpbC5jb20+CkRhdGU6IFR1 ZSwgMjkgT2N0IDIwMTkgMjE6NTY6MDYgLTA1MDAKU3ViamVjdDogW1BBVENIIDE1MC8xODZdIGdl ZXFpZTogdXBkYXRlIHRvIDEuNS4xCgotLS0KIC4uLi9wYXRjaGVzL2dlZXFpZS0xLjQtZXhpdjIt MC4yNy5wYXRjaCAgICAgICB8IDg0IC0tLS0tLS0tLS0tLS0tLS0tLS0KIHNyY3BrZ3MvZ2VlcWll L3RlbXBsYXRlICAgICAgICAgICAgICAgICAgICAgICB8IDEzICstLQogMiBmaWxlcyBjaGFuZ2Vk LCA4IGluc2VydGlvbnMoKyksIDg5IGRlbGV0aW9ucygtKQogZGVsZXRlIG1vZGUgMTAwNjQ0IHNy Y3BrZ3MvZ2VlcWllL3BhdGNoZXMvZ2VlcWllLTEuNC1leGl2Mi0wLjI3LnBhdGNoCgpkaWZmIC0t Z2l0IGEvc3JjcGtncy9nZWVxaWUvcGF0Y2hlcy9nZWVxaWUtMS40LWV4aXYyLTAuMjcucGF0Y2gg Yi9zcmNwa2dzL2dlZXFpZS9wYXRjaGVzL2dlZXFpZS0xLjQtZXhpdjItMC4yNy5wYXRjaApkZWxl dGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMmNlOTY3MzNkOGQuLjAwMDAwMDAwMDAwCi0tLSBh L3NyY3BrZ3MvZ2VlcWllL3BhdGNoZXMvZ2VlcWllLTEuNC1leGl2Mi0wLjI3LnBhdGNoCisrKyAv ZGV2L251bGwKQEAgLTEsODQgKzAsMCBAQAotU291cmNlOiBodHRwczovL2dpdHdlYi5nZW50b28u b3JnL3JlcG8vZ2VudG9vLmdpdC90cmVlL21lZGlhLWdmeC9nZWVxaWUvZmlsZXMvZ2VlcWllLTEu NC1leGl2Mi0wLjI3LnBhdGNoCi1VcHN0cmVhbTogWWVzCi1SZWFzb246IEZUQkZTCi0KLUZyb20g MTM4NTllMmVjM2ExYWZjNzRmMTA5Y2ZmZmRmMGRlMzkwMzBjZGU4NiBNb24gU2VwIDE3IDAwOjAw OjAwIDIwMDEKLUZyb206IFJhc211cyBUaG9tc2VuIDxyYXNtdXMudGhvbXNlbkBwcm90b25tYWls LmNvbT4KLURhdGU6IFdlZCwgMiBKYW4gMjAxOSAwMTowNDo0NSArMDEwMAotU3ViamVjdDogW1BB VENIXSBmaXggYnVpbGQgYWdhaW5zdCBleGl2Mi0wLjI3LngKLQotZml4ZXMgIzY1NAotLS0tCi0g c3JjL2V4aXYyLmNjIHwgMTYgKysrKysrKysrKysrKy0tLQotIDEgZmlsZSBjaGFuZ2VkLCAxMyBp bnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQotCi1kaWZmIC0tZ2l0IGEvc3JjL2V4aXYyLmNj IGIvc3JjL2V4aXYyLmNjCi1pbmRleCBiM2M4MDY1Ny4uZjQwYjcyNWUgMTAwNjQ0Ci0tLS0gYS9z cmMvZXhpdjIuY2MKLSsrKyBiL3NyYy9leGl2Mi5jYwotQEAgLTIyLDE3ICsyMiwyNyBAQAotIAot ICNpZmRlZiBIQVZFX0VYSVYyCi0gCi0rLy8gRG9uJ3QgaW5jbHVkZSB0aGUgPGV4aXYyL3ZlcnNp b24uaHBwPiBmaWxlIGRpcmVjdGx5Ci0rLy8gRWFybHkgRXhpdjIgdmVyc2lvbnMgZGlkbid0IGhh dmUgdmVyc2lvbi5ocHAgYW5kIHRoZSBtYWNyb3MuCi0rI2luY2x1ZGUgPGV4aXYyL2V4aXYyLmhw cD4KLSAjaW5jbHVkZSA8ZXhpdjIvaW1hZ2UuaHBwPgotICNpbmNsdWRlIDxleGl2Mi9leGlmLmhw cD4KLSAjaW5jbHVkZSA8aW9zdHJlYW0+Ci0gI2luY2x1ZGUgPHN0cmluZz4KLSAKLSAvLyBFWElW Ml9URVNUX1ZFUlNJT04gaXMgZGVmaW5lZCBpbiBFeGl2MiAwLjE1IGFuZCBuZXdlci4KLSsjaWZk ZWYgRVhJVjJfVkVSU0lPTgotICNpZm5kZWYgRVhJVjJfVEVTVF9WRVJTSU9OCi0tIyBkZWZpbmUg RVhJVjJfVEVTVF9WRVJTSU9OKG1ham9yLG1pbm9yLHBhdGNoKSBcCi0rI2RlZmluZSBFWElWMl9U RVNUX1ZFUlNJT04obWFqb3IsbWlub3IscGF0Y2gpIFwKLSAJKCBFWElWMl9WRVJTSU9OID49IEVY SVYyX01BS0VfVkVSU0lPTihtYWpvcixtaW5vcixwYXRjaCkgKQotICNlbmRpZgotKyNlbHNlCi0r I2RlZmluZSBFWElWMl9URVNUX1ZFUlNJT04obWFqb3IsbWlub3IscGF0Y2gpIChmYWxzZSkKLSsj ZW5kaWYKLSAKLSsjaWYgRVhJVjJfVEVTVF9WRVJTSU9OKDAsMjcsMCkKLSsjZGVmaW5lIEhBVkVf RVhJVjJfRVJST1JfQ09ERQotKyNlbmRpZgotIAotICNpbmNsdWRlIDxzeXMvdHlwZXMuaD4KLSAj aW5jbHVkZSA8c3lzL3N0YXQuaD4KLUBAIC00MCw2ICs1MCwxMCBAQAotICNpbmNsdWRlIDxmY250 bC5oPgotICNpbmNsdWRlIDxzeXMvbW1hbi5oPgotIAotKyNpZiBFWElWMl9URVNUX1ZFUlNJT04o MCwyNywwKQotKyNkZWZpbmUgRVhWX1BBQ0tBR0UgImV4aXYyIgotKyNlbmRpZgotKwotICNpZiAh RVhJVjJfVEVTVF9WRVJTSU9OKDAsMTcsOTApCi0gI2luY2x1ZGUgPGV4aXYyL3RpZmZwYXJzZXIu aHBwPgotICNpbmNsdWRlIDxleGl2Mi90aWZmY29tcG9zaXRlLmhwcD4KLUBAIC0zNzQsNyArMzg4 LDExIEBACi0gI2VuZGlmCi0gCQkJRXhpdjI6OkltYWdlICppbWFnZSA9IGltYWdlRGF0YV8tPmlt YWdlKCk7Ci0gCi0tCQkJaWYgKCFpbWFnZSkgRXhpdjI6OkVycm9yKDIxKTsKLSsjaWZkZWYgSEFW RV9FWElWMl9FUlJPUl9DT0RFCi0rCQkJaWYgKCFpbWFnZSkgdGhyb3cgRXhpdjI6OkVycm9yKEV4 aXYyOjpFcnJvckNvZGU6OmtlcklucHV0RGF0YVJlYWRGYWlsZWQpOwotKyNlbHNlCi0rCQkJaWYg KCFpbWFnZSkgdGhyb3cgRXhpdjI6OkVycm9yKDIxKTsKLSsjZW5kaWYKLSAJCQlpbWFnZS0+c2V0 RXhpZkRhdGEoZXhpZkRhdGFfKTsKLSAJCQlpbWFnZS0+c2V0SXB0Y0RhdGEoaXB0Y0RhdGFfKTsK LSAjaWYgRVhJVjJfVEVTVF9WRVJTSU9OKDAsMTYsMCkKLUBAIC0zOTQsOCArNDEyLDEyIEBACi0g CQkJc2lkZWNhci0+c2V0WG1wRGF0YSh4bXBEYXRhXyk7Ci0gCQkJc2lkZWNhci0+d3JpdGVNZXRh ZGF0YSgpOwotICNlbHNlCi0rI2lmZGVmIEhBVkVfRVhJVjJfRVJST1JfQ09ERQotKwkJCXRocm93 IEV4aXYyOjpFcnJvcihFeGl2Mjo6RXJyb3JDb2RlOjprZXJOb3RBbkltYWdlLCAieG1wIik7Ci0r I2Vsc2UKLSAJCQl0aHJvdyBFeGl2Mjo6RXJyb3IoMywgInhtcCIpOwotICNlbmRpZgotKyNlbmRp ZgotIAkJCX0KLSAJfQotIApkaWZmIC0tZ2l0IGEvc3JjcGtncy9nZWVxaWUvdGVtcGxhdGUgYi9z cmNwa2dzL2dlZXFpZS90ZW1wbGF0ZQppbmRleCBhZmExOTAwMWY0Ni4uOGQxMzZjODRhZDAgMTAw NjQ0Ci0tLSBhL3NyY3BrZ3MvZ2VlcWllL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZ2VlcWllL3Rl bXBsYXRlCkBAIC0xLDYgKzEsNiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZ2VlcWllJwogcGtn bmFtZT1nZWVxaWUKLXZlcnNpb249MS40Cit2ZXJzaW9uPTEuNS4xCiByZXZpc2lvbj0xCiBidWls ZF9zdHlsZT1nbnUtY29uZmlndXJlCiBjb25maWd1cmVfYXJncz0iLS1lbmFibGUtZ3RrMyIKQEAg LTEzLDE3ICsxMywyMCBAQCBtYWludGFpbmVyPSJPcnBoYW5lZCA8b3JwaGFuQHZvaWRsaW51eC5v cmc+IgogbGljZW5zZT0iR1BMLTIuMC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwOi8vd3d3Lmdl ZXFpZS5vcmcvIgogZGlzdGZpbGVzPSJodHRwOi8vd3d3LmdlZXFpZS5vcmcvZ2VlcWllLSR7dmVy c2lvbn0udGFyLnh6IgotY2hlY2tzdW09NWM1ODNhMTY1NTczZWMzNzg3NGMyNzhmOWRjNTdlNzNk ZjM1NmIzMGUwOWE5Y2NhYzMxNzlkZDVkOTdlM2UzMgorY2hlY2tzdW09NDg1NGQ1ZDMyM2MzMWY4 ZjQwNjhmZDczYWIyYzQ1NGZmOTFlODI2YzRjYTRkMzdiMjJjMjQ2YWQxNGRlYTEwYQogcGF0Y2hf YXJncz0iLU5wMSIKIAogcG9zdF9leHRyYWN0KCkgewogCSMgTWlzc2luZyBmcm9tIHJlbGVhc2Ug dGFyYmFsbCwgYW5kIHJlcXVpcmVzIGdpdCB0cmVlIHRvIGdlbmVyYXRlCiAJc2VkIC1lICIvcmVh ZG1lX0RBVEEvcy9DaGFuZ2VMb2dcKC5odG1sXClcPy8vZyIgLWkgTWFrZWZpbGUuYW0KLQotCSMg UmVtb3ZlIC1XZXJyb3IgKGdjYyBjaGFuZ2VzIG1heSBhZGQgbmV3IHdhcm5pbmdzKQotCXNlZCAt ZSAnL0NGTEFHUy9zLy1XZXJyb3IgLy9nJyAtaSBjb25maWd1cmUuaW4KIH0KIAogcHJlX2NvbmZp Z3VyZSgpIHsKIAlOT0NPTkZJR1VSRT0xIC4vYXV0b2dlbi5zaAogfQorIyBtdXNsIGdpdmVzIG1h bnkgd2FybmluZ3MgYW5kIHN0b3BzIGNvbXBpbGluZyBhZnRlciBtYW55IHdhcm5pbmdzCitpZiBb ICIkWEJQU19UQVJHRVRfTElCQyIgPSAibXVzbCIgXTsgdGhlbgorZG9fYnVpbGQoKSB7CisJbWFr ZSBDRkxBR1M9IiRDRkxBR1MgLVduby1lcnJvciIKK30KK2ZpCgpGcm9tIDI1YjVmNzE5NWU2OWI4 NDMxYTQ3NmUyNjZlZDIwZmQ1ZWFhNzY2YWIgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206 IHlvcGl0byA8cGllcnJlLmJvdXJnaW5AZnJlZS5mcj4KRGF0ZTogVHVlLCAyOSBPY3QgMjAxOSAy MDoxNjoyNSArMDEwMApTdWJqZWN0OiBbUEFUQ0ggMTUxLzE4Nl0gZnJlZWNhZDogdXBkYXRlIHRv IDAuMTguNAoKW2NpIHNraXBdCi0tLQogc3JjcGtncy9mcmVlY2FkL3RlbXBsYXRlIHwgNiArKyst LS0KIDEgZmlsZSBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCgpkaWZm IC0tZ2l0IGEvc3JjcGtncy9mcmVlY2FkL3RlbXBsYXRlIGIvc3JjcGtncy9mcmVlY2FkL3RlbXBs YXRlCmluZGV4IDllOTM3NWM0NDQ0Li43MGNhYTBmNTc5MyAxMDA2NDQKLS0tIGEvc3JjcGtncy9m cmVlY2FkL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZnJlZWNhZC90ZW1wbGF0ZQpAQCAtMSw3ICsx LDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2ZyZWVjYWQnCiBwa2duYW1lPWZyZWVjYWQKLXZl cnNpb249MC4xOC4zCi1yZXZpc2lvbj0yCit2ZXJzaW9uPTAuMTguNAorcmV2aXNpb249MQogd3Jr c3JjPSJGcmVlQ0FELSR7dmVyc2lvbn0iCiBidWlsZF9zdHlsZT1jbWFrZQogCkBAIC0zOCw3ICsz OCw3IEBAIG1haW50YWluZXI9InlvcGl0byA8cGllcnJlLmJvdXJnaW5AZnJlZS5mcj4iCiBsaWNl bnNlPSJMR1BMLTIuMC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL2ZyZWVjYWR3ZWIub3Jn LyIKIGRpc3RmaWxlcz0iaHR0cHM6Ly9naXRodWIuY29tL0ZyZWVDQUQvRnJlZUNBRC9hcmNoaXZl LyR7dmVyc2lvbn0udGFyLmd6IgotY2hlY2tzdW09N2Y4NmI5YjMxZjNiNWJkZjY0ZTBjMzk3OGY3 MTkxNmY3YTQyN2MwOTc3NmE2ZjMxNDNhZGIyNjhkZjU3NDcxZQorY2hlY2tzdW09NGUwY2NlNDQ3 YjMxYjg5ODlhMDBjZjY4YzQ5YWUwMTJjZThlNTU0NmE1NmM2ZTA4NzRmYmQ4ZjdkZGVkZmZkMgog CiBwb3N0X2V4dHJhY3QoKSB7CiAJIyBSZXBvcnQgZXhhY3QgbWlub3IgdmVyc2lvbgoKRnJvbSAy NDNhM2M0NmFjYzUyOGIyNWU3MjMxYTZmYjdmZThmNzFhMmViY2I3IE1vbiBTZXAgMTcgMDA6MDA6 MDAgMjAwMQpGcm9tOiBOYXRoYW4gT3dlbnMgPG5kb3dlbnMwNEBnbWFpbC5jb20+CkRhdGU6IFR1 ZSwgMjkgT2N0IDIwMTkgMjE6MTk6NDQgLTA1MDAKU3ViamVjdDogW1BBVENIIDE1Mi8xODZdIGZh a2Vyb290OnVwZGF0ZSB0byAxLjI0CgotLS0KIHNyY3BrZ3MvZmFrZXJvb3QvdGVtcGxhdGUgfCA2 ICsrKy0tLQogMSBmaWxlIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkK CmRpZmYgLS1naXQgYS9zcmNwa2dzL2Zha2Vyb290L3RlbXBsYXRlIGIvc3JjcGtncy9mYWtlcm9v dC90ZW1wbGF0ZQppbmRleCA3ZDQ1MzM0ZjU1Ni4uMDUzY2JjMWJhYmYgMTAwNjQ0Ci0tLSBhL3Ny Y3BrZ3MvZmFrZXJvb3QvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9mYWtlcm9vdC90ZW1wbGF0ZQpA QCAtMSw2ICsxLDYgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2Zha2Vyb290JwogcGtnbmFtZT1m YWtlcm9vdAotdmVyc2lvbj0xLjIzCit2ZXJzaW9uPTEuMjQKIHJldmlzaW9uPTEKIGJ1aWxkX3N0 eWxlPWdudS1jb25maWd1cmUKIGNvbmZpZ3VyZV9hcmdzPSItLWRpc2FibGUtc3RhdGljIgpAQCAt MTAsOCArMTAsOCBAQCBzaG9ydF9kZXNjPSJHaXZlcyBhIGZha2Ugcm9vdCBlbnZpcm9ubWVudCIK IG1haW50YWluZXI9Ik9ycGhhbmVkIDxvcnBoYW5Adm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJH UEwtMy4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHA6Ly9wYWNrYWdlcy5kZWJpYW4ub3JnL2Zh a2Vyb290IgotZGlzdGZpbGVzPSIke0RFQklBTl9TSVRFfS9tYWluL2YvZmFrZXJvb3QvJHtwa2du YW1lfV8ke3ZlcnNpb259Lm9yaWcudGFyLnh6IgotY2hlY2tzdW09MDA5Y2Q2Njk2YTkzMTU2MmNm MWMyMTJiYjU3Y2E0NDFhNGEyZDQ1Y2QzMmMzMTkwYTM1YzdhZTk4NTA2ZjRmNgorZGlzdGZpbGVz PSIke0RFQklBTl9TSVRFfS9tYWluL2YvZmFrZXJvb3QvJHtwa2duYW1lfV8ke3ZlcnNpb259Lm9y aWcudGFyLmd6IgorY2hlY2tzdW09MmUwNDViMzE2MDM3MGI4YWI0ZDQ0ZDFmOGQyNjdlNWQxZDU1 NWYxYmI1MjJkNjUwZTcxNjdiMDk0NzcyNjZlZAogCiBsaWIzMmRpc2FibGVkPXllcwogCgpGcm9t IDNhYjY2ZDM4OTAwMzhmYTUzNmQ3YWE5ODZlNTYxMWIwN2ZjZDkzMzAgTW9uIFNlcCAxNyAwMDow MDowMCAyMDAxCkZyb206IHRyYXZhbmtvciA8dHJhdmFua29yQHR1dGEuaW8+CkRhdGU6IFR1ZSwg MjkgT2N0IDIwMTkgMjM6NTQ6MzggLTA3MDAKU3ViamVjdDogW1BBVENIIDE1My8xODZdIG10bTog dXBkYXRlIHRvIDEuMi4wLgoKQ29ycmVjdGx5IGluc3RhbGwgdGVybWluZm8gaW50byBzdWJwYWNr YWdlLgotLS0KIHNyY3BrZ3MvbXRtLXRlcm1pbmZvICAgICAgICAgICAgIHwgIDEgKwogc3JjcGtn cy9tdG0vbXRtLXRlcm1pbmZvLklOU1RBTEwgfCAgNSArKysrKwogc3JjcGtncy9tdG0vbXRtLXRl cm1pbmZvLlJFTU9WRSAgfCAgNyArKysrKysrCiBzcmNwa2dzL210bS90ZW1wbGF0ZSAgICAgICAg ICAgICB8IDE2ICsrKysrKysrKysrKy0tLS0KIDQgZmlsZXMgY2hhbmdlZCwgMjUgaW5zZXJ0aW9u cygrKSwgNCBkZWxldGlvbnMoLSkKIGNyZWF0ZSBtb2RlIDEyMDAwMCBzcmNwa2dzL210bS10ZXJt aW5mbwogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvbXRtL210bS10ZXJtaW5mby5JTlNUQUxM CiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy9tdG0vbXRtLXRlcm1pbmZvLlJFTU9WRQoKZGlm ZiAtLWdpdCBhL3NyY3BrZ3MvbXRtLXRlcm1pbmZvIGIvc3JjcGtncy9tdG0tdGVybWluZm8KbmV3 IGZpbGUgbW9kZSAxMjAwMDAKaW5kZXggMDAwMDAwMDAwMDAuLjg2N2EwYWIzOWZlCi0tLSAvZGV2 L251bGwKKysrIGIvc3JjcGtncy9tdG0tdGVybWluZm8KQEAgLTAsMCArMSBAQAorbXRtLwpcIE5v IG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbXRtL210bS10ZXJt aW5mby5JTlNUQUxMIGIvc3JjcGtncy9tdG0vbXRtLXRlcm1pbmZvLklOU1RBTEwKbmV3IGZpbGUg bW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAuLjRjMmQwM2IxNDVjCi0tLSAvZGV2L251bGwK KysrIGIvc3JjcGtncy9tdG0vbXRtLXRlcm1pbmZvLklOU1RBTEwKQEAgLTAsMCArMSw1IEBACitj YXNlICIke0FDVElPTn0iIGluCitwb3N0KQorCXRpYyAtc3ggdXNyL3NoYXJlL3Rlcm1pbmZvL20v bXRtLnRpCisJOzsKK2VzYWMKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbXRtL210bS10ZXJtaW5mby5S RU1PVkUgYi9zcmNwa2dzL210bS9tdG0tdGVybWluZm8uUkVNT1ZFCm5ldyBmaWxlIG1vZGUgMTAw NjQ0CmluZGV4IDAwMDAwMDAwMDAwLi43NjdiNjdiMmJlZQotLS0gL2Rldi9udWxsCisrKyBiL3Ny Y3BrZ3MvbXRtL210bS10ZXJtaW5mby5SRU1PVkUKQEAgLTAsMCArMSw3IEBACitjYXNlICIke0FD VElPTn0iIGluCitwcmUpCisJcm0gdXNyL3NoYXJlL3Rlcm1pbmZvL20vbXRtCisJcm0gdXNyL3No YXJlL3Rlcm1pbmZvL20vbXRtLTI1NmNvbG9yCisJcm0gdXNyL3NoYXJlL3Rlcm1pbmZvL20vbXRt LW5vdXRmCisJOzsKK2VzYWMKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbXRtL3RlbXBsYXRlIGIvc3Jj cGtncy9tdG0vdGVtcGxhdGUKaW5kZXggNjZkZmUyNWJiMjIuLmVkNjkzNDkyODViIDEwMDY0NAot LS0gYS9zcmNwa2dzL210bS90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL210bS90ZW1wbGF0ZQpAQCAt MSwyMyArMSwzMSBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnbXRtJwogcGtnbmFtZT1tdG0KLXZl cnNpb249MS4xLjAKK3ZlcnNpb249MS4yLjAKIHJldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPWdudS1t YWtlZmlsZQotaG9zdG1ha2VkZXBlbmRzPSJuY3Vyc2VzIgogbWFrZWRlcGVuZHM9Im5jdXJzZXMt ZGV2ZWwgbmN1cnNlcy1saWJzIgorZGVwZW5kcz0ibmN1cnNlcyIKIHNob3J0X2Rlc2M9Ik1pY3Jv IFRlcm1pbmFsIE11bHRpcGxleGVyIgogbWFpbnRhaW5lcj0idHJhdmFua29yIDx0cmF2YW5rb3JA dHV0YS5pbz4iCiBsaWNlbnNlPSJHUEwtMy4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8v Z2l0aHViLmNvbS9kZWFkcGl4aS9tdG0iCiBkaXN0ZmlsZXM9Imh0dHBzOi8vZ2l0aHViLmNvbS9k ZWFkcGl4aS9tdG0vYXJjaGl2ZS8ke3ZlcnNpb259LnRhci5neiIKLWNoZWNrc3VtPTNmM2U3MjM0 NjZmM2JiODhhZmI3YTQ5YjY2YTc5MGYzYWFmNjc4NjY1NGU4ZjFmMDU2ZWRjMDlmYTk5YWJkODUK K2NoZWNrc3VtPTY4Zjc1M2Y3NDNmY2QzZDg3ZjI2OTAxMWQ0YmJkM2ZlZDU5Y2ZjYWQ3MTBkN2M3 ZGI5ODg0NGUzZTY3NWMxOTYKIAogZG9fYnVpbGQoKSB7CiAJbWFrZSBIRUFERVJTPSctRE5DVVJT RVNXX0lOQ0xVREVfSD0iPG5jdXJzZXMuaD4iJwogfQogCiBkb19pbnN0YWxsKCkgewotCW1ha2Ug aW5zdGFsbC10ZXJtaW5mbwogCXZiaW4gbXRtCisJdmluc3RhbGwgbXRtLnRpIDY0NCB1c3Ivc2hh cmUvdGVybWluZm8vbQogCXZtYW4gbXRtLjEKIH0KKworbXRtLXRlcm1pbmZvX3BhY2thZ2UoKSB7 CisJc2hvcnRfZGVzYys9IiAtIHRlcm1pbmZvIGRhdGEiCisJYXJjaHM9bm9hcmNoCisJcGtnX2lu c3RhbGwoKSB7CisJCXZtb3ZlIHVzci9zaGFyZS90ZXJtaW5mbworCX0KK30KCkZyb20gMzVlOTQ3 NjBjZTc4ODZjYmQ2NzhjZTAzNjdjNDNkNDRjZWU5ZWZmOSBNb24gU2VwIDE3IDAwOjAwOjAwIDIw MDEKRnJvbTogdHJhdmFua29yIDx0cmF2YW5rb3JAdHV0YS5pbz4KRGF0ZTogVGh1LCAzIE9jdCAy MDE5IDA2OjIyOjA3IC0wNzAwClN1YmplY3Q6IFtQQVRDSCAxNTQvMTg2XSBjbGlwbWFuOiB1cGRh dGUgdG8gMS4yLjAuCgotLS0KIHNyY3BrZ3MvY2xpcG1hbi90ZW1wbGF0ZSB8IDQgKystLQogMSBm aWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQg YS9zcmNwa2dzL2NsaXBtYW4vdGVtcGxhdGUgYi9zcmNwa2dzL2NsaXBtYW4vdGVtcGxhdGUKaW5k ZXggODczMDNmZmYzNjIuLjZkN2E4NzNkNDJiIDEwMDY0NAotLS0gYS9zcmNwa2dzL2NsaXBtYW4v dGVtcGxhdGUKKysrIGIvc3JjcGtncy9jbGlwbWFuL3RlbXBsYXRlCkBAIC0xLDYgKzEsNiBAQAog IyBUZW1wbGF0ZSBmaWxlIGZvciAnY2xpcG1hbicKIHBrZ25hbWU9Y2xpcG1hbgotdmVyc2lvbj0x LjAuMgordmVyc2lvbj0xLjIuMAogcmV2aXNpb249MQogYnVpbGRfc3R5bGU9Z28KIGdvX2ltcG9y dF9wYXRoPWdpdGh1Yi5jb20veW9yeTgvY2xpcG1hbgpAQCAtMTEsNCArMTEsNCBAQCBtYWludGFp bmVyPSJ0cmF2YW5rb3IgPHRyYXZhbmtvckB0dXRhLmlvPiIKIGxpY2Vuc2U9IkdQTC0zLjAtb3It bGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6Ly9naXRodWIuY29tL3lvcnk4L2NsaXBtYW4iCiBkaXN0 ZmlsZXM9Imh0dHBzOi8vZ2l0aHViLmNvbS95b3J5OC9jbGlwbWFuL2FyY2hpdmUvdiR7dmVyc2lv bn0udGFyLmd6IgotY2hlY2tzdW09OWVlMmEwMzg5MWQwNjU5NDMyMzc3N2ZhZDJlMzRiMzc4N2Y0 MWM1MTY4ZjIzNTRjNTI3NzZiYzhhZDI4NjhkMworY2hlY2tzdW09Njg2MjQ4N2I3YWNiYjA4MjI4 NjYzYTdmOWIzMzY3MzUxOWVmYjQxNDdlYzI3NjAxZWFjNGY4YzBlOTgwOTczYQoKRnJvbSA3MDI2 MWIxNTJlOTBmZjA2NmJhNTc3NzUyZjhhNmI2YmFiNmQ4MjE0IE1vbiBTZXAgMTcgMDA6MDA6MDAg MjAwMQpGcm9tOiB0cmF2YW5rb3IgPHRyYXZhbmtvckB0dXRhLmlvPgpEYXRlOiBXZWQsIDMwIE9j dCAyMDE5IDAxOjEwOjUzIC0wNzAwClN1YmplY3Q6IFtQQVRDSCAxNTUvMTg2XSBkbnNjcnlwdC1w cm94eTogdXBkYXRlIHRvIDIuMC4yOS4KCi0tLQogc3JjcGtncy9kbnNjcnlwdC1wcm94eS90ZW1w bGF0ZSB8IDQgKystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlv bnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2Ruc2NyeXB0LXByb3h5L3RlbXBsYXRlIGIvc3Jj cGtncy9kbnNjcnlwdC1wcm94eS90ZW1wbGF0ZQppbmRleCAxZmY1OTg0ODA1OC4uOGE0NThlNzBl NjEgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZG5zY3J5cHQtcHJveHkvdGVtcGxhdGUKKysrIGIvc3Jj cGtncy9kbnNjcnlwdC1wcm94eS90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxhdGUg ZmlsZSBmb3IgJ2Ruc2NyeXB0LXByb3h5JwogcGtnbmFtZT1kbnNjcnlwdC1wcm94eQotdmVyc2lv bj0yLjAuMjcKK3ZlcnNpb249Mi4wLjI5CiByZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1nbwogZ29f aW1wb3J0X3BhdGg9Z2l0aHViLmNvbS9qZWRpc2N0MS9kbnNjcnlwdC1wcm94eQpAQCAtMTEsNyAr MTEsNyBAQCBsaWNlbnNlPSJJU0MiCiBob21lcGFnZT0iaHR0cHM6Ly9naXRodWIuY29tL2plZGlz Y3QxL2Ruc2NyeXB0LXByb3h5IgogY2hhbmdlbG9nPSJodHRwczovL3Jhdy5naXRodWJ1c2VyY29u dGVudC5jb20vamVkaXNjdDEvZG5zY3J5cHQtcHJveHkvbWFzdGVyL0NoYW5nZUxvZyIKIGRpc3Rm aWxlcz0iaHR0cHM6Ly9naXRodWIuY29tL2plZGlzY3QxL2Ruc2NyeXB0LXByb3h5L2FyY2hpdmUv JHt2ZXJzaW9ufS50YXIuZ3oiCi1jaGVja3N1bT1hNTAxZjQ0YWYzOWNiNDNlMDA0ODllZjllNjY3 OGFhOGFkYmEyYmM5OGY5MDQyZGQ2MWNlNjBlOWFkMDc0ZDVhCitjaGVja3N1bT01YzE4ZjBjOWQ2 YTg5YjY0ZDUzMmM5OGUyYmQ5NzZmOTgyMTFhNzE1Mzk5YzdhMWVlODFhMjJjNTQ4NTY3M2I5CiBj b25mX2ZpbGVzPSIvZXRjL2Ruc2NyeXB0LXByb3h5LnRvbWwiCiBzeXN0ZW1fYWNjb3VudHM9ImRu c2NyeXB0X3Byb3h5IgogbWFrZV9kaXJzPSIvdmFyL2xvZy9kbnNjcnlwdC1wcm94eSAwNzUwIGRu c2NyeXB0X3Byb3h5IGRuc2NyeXB0X3Byb3h5IgoKRnJvbSA4M2NjYWViMmViYzVkOWFkNTE2ZWI1 NDdjMmM1M2FiMDQyYTA0ZTkzIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBIZWxtdXQg UG96aW1za2kgPGhlbG11dEBwb3ppbXNraS5ldT4KRGF0ZTogV2VkLCAzMCBPY3QgMjAxOSAxNTo0 MTozNCArMDEwMApTdWJqZWN0OiBbUEFUQ0ggMTU2LzE4Nl0gZm9udC1zeW1ib2xhOiByZXZidW1w IHRvIHRyaWdnZXIgYnVpbGQKCmZpeGVzICMxNTk1NQotLS0KIHNyY3BrZ3MvZm9udC1zeW1ib2xh L3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0 aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9mb250LXN5bWJvbGEvdGVtcGxhdGUgYi9zcmNw a2dzL2ZvbnQtc3ltYm9sYS90ZW1wbGF0ZQppbmRleCBmZjJiNTY3ZGM0OS4uNGE1MjI2MWQ4MGQg MTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZm9udC1zeW1ib2xhL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3Mv Zm9udC1zeW1ib2xhL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZv ciAnZm9udC1zeW1ib2xhJwogcGtnbmFtZT1mb250LXN5bWJvbGEKIHZlcnNpb249MTIuMDAKLXJl dmlzaW9uPTEKK3JldmlzaW9uPTIKIGFyY2hzPW5vYXJjaAogY3JlYXRlX3dya3NyYz15ZXMKIGhv c3RtYWtlZGVwZW5kcz0idW56aXAiCgpGcm9tIGNmYTAwNjNkZTA4YThjNTFjNGM3ZjEyMzZlMGM4 Zjg4NmIxOGFlZGUgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IENhaW8gQWxvbnNvIDxj YWlvQGNhaW9hbG9uc28uY29tPgpEYXRlOiBXZWQsIDMwIE9jdCAyMDE5IDExOjI5OjU3IC0wMzAw ClN1YmplY3Q6IFtQQVRDSCAxNTcvMTg2XSBVcGRhdGVzIHdlZS1zbGFjayBkZXBlbmRlbmN5IHRv IHB5dGhvbjMKCi0tLQogc3JjcGtncy93ZWUtc2xhY2svdGVtcGxhdGUgfCA0ICsrLS0KIDEgZmls ZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEv c3JjcGtncy93ZWUtc2xhY2svdGVtcGxhdGUgYi9zcmNwa2dzL3dlZS1zbGFjay90ZW1wbGF0ZQpp bmRleCAxYTg2ZTI1YWZlOC4uNTQ0ODE4NzMyZTEgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3Mvd2VlLXNs YWNrL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3Mvd2VlLXNsYWNrL3RlbXBsYXRlCkBAIC0xLDkgKzEs OSBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnd2VlLXNsYWNrJwogcGtnbmFtZT13ZWUtc2xhY2sK IHZlcnNpb249Mi4zLjAKLXJldmlzaW9uPTEKK3JldmlzaW9uPTIKIGFyY2hzPW5vYXJjaAotZGVw ZW5kcz0id2VlY2hhdCB3ZWVjaGF0LXB5dGhvbiBweXRob24td2Vic29ja2V0LWNsaWVudCIKK2Rl cGVuZHM9IndlZWNoYXQgd2VlY2hhdC1weXRob24gcHl0aG9uMy13ZWJzb2NrZXQtY2xpZW50Igog c2hvcnRfZGVzYz0iV2VlQ2hhdCBwbHVnaW4gZm9yIFNsYWNrLmNvbSIKIG1haW50YWluZXI9IlJl bmF0byBBZ3VpYXIgPHJlbmF0b0ByZW5hZy5tZT4iCiBsaWNlbnNlPSJNSVQiCgpGcm9tIGE1M2Nj MTAzNTMyZWZlNjNhMDlkMDkxZGUyMDhlZWJlZTE3MzdmMjMgTW9uIFNlcCAxNyAwMDowMDowMCAy MDAxCkZyb206IEZyYW5rIFN0ZWluYm9ybiA8c3RlaW5ib3JuQHNpcGdhdGUuZGU+CkRhdGU6IFdl ZCwgMzAgT2N0IDIwMTkgMTQ6MDQ6MjMgKzAxMDAKU3ViamVjdDogW1BBVENIIDE1OC8xODZdIHNr b3BlbzogdXBkYXRlIHRvIDAuMS40MC4KCi0tLQogc3JjcGtncy9za29wZW8vdGVtcGxhdGUgfCA0 ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpk aWZmIC0tZ2l0IGEvc3JjcGtncy9za29wZW8vdGVtcGxhdGUgYi9zcmNwa2dzL3Nrb3Blby90ZW1w bGF0ZQppbmRleCA1MjRmY2Q5YTlkZC4uOTMyYzE4NzZmNjAgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3Mv c2tvcGVvL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3Mvc2tvcGVvL3RlbXBsYXRlCkBAIC0xLDYgKzEs NiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnc2tvcGVvJwogcGtnbmFtZT1za29wZW8KLXZlcnNp b249MC4xLjM5Cit2ZXJzaW9uPTAuMS40MAogcmV2aXNpb249MQogYnVpbGRfc3R5bGU9Z28KIGdv X2ltcG9ydF9wYXRoPSJnaXRodWIuY29tL2NvbnRhaW5lcnMvJHtwa2duYW1lfSIKQEAgLTE0LDcg KzE0LDcgQEAgbWFpbnRhaW5lcj0iRnJhbmsgU3RlaW5ib3JuIDxzdGVpbmV4QG5vZ251LmRlPiIK IGxpY2Vuc2U9IkFwYWNoZS0yLjAiCiBob21lcGFnZT0iaHR0cHM6Ly9naXRodWIuY29tL2NvbnRh aW5lcnMvc2tvcGVvIgogZGlzdGZpbGVzPSJodHRwczovL2dpdGh1Yi5jb20vY29udGFpbmVycy8k e3BrZ25hbWV9L2FyY2hpdmUvdiR7dmVyc2lvbn0udGFyLmd6IgotY2hlY2tzdW09ZTlkNzBmN2Y3 Yjg5MTY3NWE4MTZmMDZhMjJkZjA0OTAyODVhZDIwZWVmYmQ5MWY1ZGE2OWNhMTJmNTZjMjlmMgor Y2hlY2tzdW09ZWUxZTMzMjQ1OTM4ZmNiNjIyZjU4NjRmYWM4NjBlMmQ4YmZhMmZhOTA3YWY0YjVm ZmMzNzA0ZWQwZGI0NmJiZgogbWFrZV9kaXJzPSIvdmFyL2xpYi9hdG9taWMvc2lnc3RvcmUgMDc1 NSByb290IHJvb3QiCiAKIHBvc3RfYnVpbGQoKSB7CgpGcm9tIDBlNmExZGRhMzhmMDI2NGMxMDEy NTQ0NWUyZTMyZTExMWZhN2M0ODYgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IFBldGVy IEJ1aSA8cGJ1aUBnaXRodWIuYng2MTIuc3BhY2U+CkRhdGU6IFdlZCwgMzAgT2N0IDIwMTkgMDk6 MDY6MzggLTA0MDAKU3ViamVjdDogW1BBVENIIDE1OS8xODZdIGVsbDogdXBkYXRlIHRvIDAuMjYu CgotLS0KIHNyY3BrZ3MvZWxsL3RlbXBsYXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBp bnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZWxsL3Rl bXBsYXRlIGIvc3JjcGtncy9lbGwvdGVtcGxhdGUKaW5kZXggYWNlMDE0MjQ4ZDMuLjZiMDI3OWM0 YzhkIDEwMDY0NAotLS0gYS9zcmNwa2dzL2VsbC90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2VsbC90 ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2VsbCcKIHBrZ25h bWU9ZWxsCi12ZXJzaW9uPTAuMjUKK3ZlcnNpb249MC4yNgogcmV2aXNpb249MQogYnVpbGRfc3R5 bGU9Z251LWNvbmZpZ3VyZQogY29uZmlndXJlX2FyZ3M9Ii0tZW5hYmxlLWdsaWIiCkBAIC0xMSw3 ICsxMSw3IEBAIG1haW50YWluZXI9IlBldGVyIEJ1aSA8cGJ1aUBnaXRodWIuYng2MTIuc3BhY2U+ IgogbGljZW5zZT0iR1BMLTIuMC1vbmx5IgogaG9tZXBhZ2U9Imh0dHBzOi8vMDEub3JnL2VsbCIK IGRpc3RmaWxlcz0iaHR0cHM6Ly9taXJyb3JzLmVkZ2Uua2VybmVsLm9yZy9wdWIvbGludXgvbGli cy9lbGwvZWxsLSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09N2YyYmU1NjgyMTlkOTkxZDU2 NmNhNTBjNThhNTZlNjlkZjlhMjQ4NjE5ZmVkNzU4ZGNkOWE0YjA0ZTY1NWU1YgorY2hlY2tzdW09 Nzg1NWI0YjhmMjcxYmE2ZWU2N2Q4N2QwOTY1Yjk3NWE5YThkYmVhYTYxNjY2NWNhMjI0OGFmYTNi NWZjYmM3NwogCiBlbGwtZGV2ZWxfcGFja2FnZSgpIHsKIAlkZXBlbmRzPSJlbGwtJHt2ZXJzaW9u fV8ke3JldmlzaW9ufSIKCkZyb20gZmFjODM2NDY0MmI5NmExZjc0ZDgwYjM2NTIyYzQ3MDg5ZDgy NDA1ZiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogUGV0ZXIgQnVpIDxwYnVpQGdpdGh1 Yi5ieDYxMi5zcGFjZT4KRGF0ZTogV2VkLCAzMCBPY3QgMjAxOSAwOToyMjo1MyAtMDQwMApTdWJq ZWN0OiBbUEFUQ0ggMTYwLzE4Nl0gaXdkOiB1cGRhdGUgdG8gMS4wLgoKLS0tCiBzcmNwa2dzL2l3 ZC9wYXRjaGVzL2ZpeC1uYW1lLXJlcXVlc3QucGF0Y2ggfCAyNCArKysrKysrKysrLS0tLS0tLS0t LS0tCiBzcmNwa2dzL2l3ZC90ZW1wbGF0ZSAgICAgICAgICAgICAgICAgICAgICAgfCAgNyArKyst LS0tCiAyIGZpbGVzIGNoYW5nZWQsIDE0IGluc2VydGlvbnMoKyksIDE3IGRlbGV0aW9ucygtKQoK ZGlmZiAtLWdpdCBhL3NyY3BrZ3MvaXdkL3BhdGNoZXMvZml4LW5hbWUtcmVxdWVzdC5wYXRjaCBi L3NyY3BrZ3MvaXdkL3BhdGNoZXMvZml4LW5hbWUtcmVxdWVzdC5wYXRjaAppbmRleCBlOTdlZmJj MjI0YS4uM2JhZDEyMDE4OTQgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvaXdkL3BhdGNoZXMvZml4LW5h bWUtcmVxdWVzdC5wYXRjaAorKysgYi9zcmNwa2dzL2l3ZC9wYXRjaGVzL2ZpeC1uYW1lLXJlcXVl c3QucGF0Y2gKQEAgLTEsOCArMSw2IEBACi1kaWZmIC0tZ2l0IE1ha2VmaWxlLmFtIE1ha2VmaWxl LmFtCi1pbmRleCA2MTM1NTI0Li41ZWZiNmY2IDEwMDY0NAotLS0tIE1ha2VmaWxlLmFtCi0rKysg TWFrZWZpbGUuYW0KLUBAIC0xMzYsMTUgKzEzNiwxNSBAQCBub2luc3RfUFJPR1JBTVMgPQorLS0t IE1ha2VmaWxlLmFtIDIwMTktMTAtMzAgMDY6NTA6MzQuMDAwMDAwMDAwIC0wNDAwCisrKysgTWFr ZWZpbGUuYW0JMjAxOS0xMC0zMCAwOToxMDowOC41NDIxMjg4OTEgLTA0MDAKK0BAIC0xMzksMTUg KzEzOSwxNSBAQAogIGlmIERCVVNfUE9MSUNZCiAgZGJ1c19kYXRhZGlyID0gQERCVVNfREFUQURJ UkAvZGJ1cy0xL3N5c3RlbS5kCiAgZGlzdF9kYnVzX2RhdGFfREFUQSA9CkBAIC0xOCwxMCArMTYs MTAgQEAgaW5kZXggNjEzNTUyNC4uNWVmYjZmNiAxMDA2NDQKIC1kYnVzX2J1c2RpciA9IEBEQlVT X0JVU0RJUkAKIC1kYnVzX2J1c19EQVRBID0KIC0KLSBzeXN0ZW1kX21vZGxvYWRkaXIgPSBAU1lT VEVNRF9NT0RMT0FERElSQAotIHN5c3RlbWRfbW9kbG9hZF9EQVRBID0gc3JjL3BrY3M4LmNvbmYK LSBlbmRpZgotQEAgLTIxOCwxMyArMjE4LDEzIEBAIGVuZGlmCisgc3lzdGVtZF9uZXR3b3JrZGly ID0gQFNZU1RFTURfTkVUV09SS0RJUkAKKyBzeXN0ZW1kX25ldHdvcmtfREFUQSA9CisgCitAQCAt MjQ0LDEzICsyNDQsMTMgQEAKICAKICBpZiBEQlVTX1BPTElDWQogIGRpc3RfZGJ1c19kYXRhX0RB VEEgKz0gc3JjL2l3ZC1kYnVzLmNvbmYKQEAgLTMzLDEwICszMSwxMCBAQCBpbmRleCA2MTM1NTI0 Li41ZWZiNmY2IDEwMDY0NAogIAogIHN5c3RlbWRfdW5pdF9EQVRBICs9IHNyYy9pd2Quc2Vydmlj ZQogLWRidXNfYnVzX0RBVEEgKz0gc3JjL25ldC5jb25ubWFuLml3ZC5zZXJ2aWNlCi0gZW5kaWYK LSBlbmRpZgogIAotQEAgLTI3NywxMyArMjc3LDEzIEBAIHdpcmVkX2VhZF9ERVBFTkRFTkNJRVMg PSAkKGVsbF9kZXBlbmRlbmNpZXMpCisgc3lzdGVtZF9uZXR3b3JrX0RBVEEgKz0gc3JjLzgwLWl3 ZC5saW5rCisgZW5kaWYKK0BAIC0zMjAsMTMgKzMyMCwxMyBAQAogIAogIGlmIERCVVNfUE9MSUNZ CiAgZGlzdF9kYnVzX2RhdGFfREFUQSArPSB3aXJlZC9lYWQtZGJ1cy5jb25mCkBAIC00OSw4ICs0 Nyw4IEBAIGluZGV4IDYxMzU1MjQuLjVlZmI2ZjYgMTAwNjQ0CiAgc3lzdGVtZF91bml0X0RBVEEg Kz0gd2lyZWQvZWFkLnNlcnZpY2UKIC1kYnVzX2J1c19EQVRBICs9IHdpcmVkL25ldC5jb25ubWFu LmVhZC5zZXJ2aWNlCiAgZW5kaWYKLSBlbmRpZgogIAorIGlmIE1BTlVBTF9QQUdFUwogZGlmZiAt LWdpdCBjb25maWd1cmUuYWMgY29uZmlndXJlLmFjCiBpbmRleCBlYzA2MTllLi4xM2Q2ZGU0IDEw MDY0NAogLS0tIGNvbmZpZ3VyZS5hYwpkaWZmIC0tZ2l0IGEvc3JjcGtncy9pd2QvdGVtcGxhdGUg Yi9zcmNwa2dzL2l3ZC90ZW1wbGF0ZQppbmRleCBjN2U5YmExMDJlYy4uNjBjNjBjNTQ5OGQgMTAw NjQ0Ci0tLSBhL3NyY3BrZ3MvaXdkL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvaXdkL3RlbXBsYXRl CkBAIC0xLDIwICsxLDIwIEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdpd2QnCiBwa2duYW1lPWl3 ZAotdmVyc2lvbj0wLjIzCit2ZXJzaW9uPTEuMAogcmV2aXNpb249MQogYnVpbGRfc3R5bGU9Z251 LWNvbmZpZ3VyZQogY29uZmlndXJlX2FyZ3M9Ii0tZGlzYWJsZS1zeXN0ZW1kLXNlcnZpY2UgLS1l bmFibGUtcGllCiAgLS1lbmFibGUtZXh0ZXJuYWwtZWxsIC0tZW5hYmxlLWRidXMtcG9saWN5IC0t ZW5hYmxlLXdpcmVkIgogaG9zdG1ha2VkZXBlbmRzPSJweXRob24zLWRvY3V0aWxzIHBrZy1jb25m aWcgYXV0b21ha2UgbGlidG9vbCIKIG1ha2VkZXBlbmRzPSJyZWFkbGluZS1kZXZlbCBkYnVzLWRl dmVsIGVsbC1kZXZlbCIKLWRlcGVuZHM9ImRidXMgZWxsPj0wLjI1IgorZGVwZW5kcz0iZGJ1cyBl bGw+PTAuMjYiCiBjaGVja2RlcGVuZHM9InB5dGhvbjMiCiBzaG9ydF9kZXNjPSJJbnRlcm5ldCBX aXJlbGVzcyBEYWVtb24gYnkgSW50ZWwgdGhhdCBhaW1zIHRvIHJlcGxhY2Ugd3BhX3N1cHBsaWNh bnQiCiBtYWludGFpbmVyPSJQZXRlciBCdWkgPHBidWlAZ2l0aHViLmJ4NjEyLnNwYWNlPiIKIGxp Y2Vuc2U9IkxHUEwtMi4xLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vaXdkLndpa2kua2Vy bmVsLm9yZy8iCiBkaXN0ZmlsZXM9IiR7S0VSTkVMX1NJVEV9L25ldHdvcmsvd2lyZWxlc3MvaXdk LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09ZTExM2I5MDhjNjA1MzczNTdiNDhjMzg5MzE3 NjI1ZTAyY2QxZGFhMWI2ZTUwMGJiMzU2Zjc5NzhhMmE2MTI4MAorY2hlY2tzdW09NzI5NjgxMmIz MDEyYjA2ODlhOGFmODc5YzYwMjhmYTllZmE1YjQzYjI3ZWNmMDM3MzU1YjM4ZjdhZjFhYTE2Nwog bWFrZV9kaXJzPSIvdmFyL2xpYi9pd2QgMDYwMCByb290IHJvb3QKICAvZXRjL2l3ZCA3NTUgcm9v dCByb290IgogCkBAIC0yMyw2ICsyMyw1IEBAIHByZV9jb25maWd1cmUoKSB7CiB9CiAKIHBvc3Rf aW5zdGFsbCgpIHsKLQl2c2NvbmYgZG9jL21haW4uY29uZgogCXZzdiBpd2QKIH0KCkZyb20gODYx Nzk4ZGJhYTFhNDViZDJiZGIxOTVmMDYyOTdmYjk2MDk2ZGFmZSBNb24gU2VwIDE3IDAwOjAwOjAw IDIwMDEKRnJvbTogbXVzdGFxaW0gPG11c3RhcWltQHBtLm1lPgpEYXRlOiBXZWQsIDMwIE9jdCAy MDE5IDE0OjIxOjQ5ICswMjAwClN1YmplY3Q6IFtQQVRDSCAxNjEvMTg2XSBsYXR0ZS1kb2NrOiB1 cGRhdGUgdG8gMC45LjQKCi0tLQogc3JjcGtncy9sYXR0ZS1kb2NrL3RlbXBsYXRlIHwgNCArKy0t CiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQoKZGlmZiAt LWdpdCBhL3NyY3BrZ3MvbGF0dGUtZG9jay90ZW1wbGF0ZSBiL3NyY3BrZ3MvbGF0dGUtZG9jay90 ZW1wbGF0ZQppbmRleCBjMzNhNGQ4Njk3Ni4uMmYxYjMzMTlmMTAgMTAwNjQ0Ci0tLSBhL3NyY3Br Z3MvbGF0dGUtZG9jay90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2xhdHRlLWRvY2svdGVtcGxhdGUK QEAgLTEsNiArMSw2IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdsYXR0ZS1kb2NrJwogcGtnbmFt ZT1sYXR0ZS1kb2NrCi12ZXJzaW9uPTAuOS4zCit2ZXJzaW9uPTAuOS40CiByZXZpc2lvbj0xCiBi dWlsZF9zdHlsZT1jbWFrZQogY29uZmlndXJlX2FyZ3M9Ii1EQlVJTERfVEVTVElORz1PRkYgLURF TkFCTEVfTUFLRV9VTklRVUU9T0ZGIgpAQCAtMTIsNyArMTIsNyBAQCBsaWNlbnNlPSJHUEwtMi4w LW9yLWxhdGVyLCBMR1BMLTIuMS1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL3BoYWJyaWNh dG9yLmtkZS5vcmcvc291cmNlL2xhdHRlLWRvY2svIgogY2hhbmdlbG9nPSJodHRwczovL3BoYWJy aWNhdG9yLmtkZS5vcmcvc291cmNlL2xhdHRlLWRvY2svYnJvd3NlL21hc3Rlci9DSEFOR0VMT0cu bWQiCiBkaXN0ZmlsZXM9IiR7S0RFX1NJVEV9LyR7cGtnbmFtZX0vJHtwa2duYW1lfS0ke3ZlcnNp b259LnRhci54eiIKLWNoZWNrc3VtPTMwMjMyY2U5YjBmZThmNTMzOGM5MjRhNGYyZDE2NjFjOGMz ZjNiMjIxY2NmY2FmNjlkMDkxNjBmMzE1OTk0NDcKK2NoZWNrc3VtPWExZTcwNmIyNWNlZDZhNjgx NDhhNGRiOTJkNTY4YzZhMGEwNDk0YWJhMzQ1MjViMWZlYTE4M2MwODMwZTM0ZWUKIAogaWYgWyAi JENST1NTX0JVSUxEIiBdOyB0aGVuCiAJaG9zdG1ha2VkZXBlbmRzKz0iIGtjb25maWctZGV2ZWwg a2NvcmVhZGRvbnMtZGV2ZWwga3BhY2thZ2UtZGV2ZWwiCgpGcm9tIDIxZjlkN2M5ZWExOWNhYmFm ZmQxYjg2OTVkZDUxNDJmZGE5OGQyZjYgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IEhl bG11dCBQb3ppbXNraSA8aGVsbXV0QHBvemltc2tpLmV1PgpEYXRlOiBXZWQsIDMwIE9jdCAyMDE5 IDE1OjQ4OjQzICswMTAwClN1YmplY3Q6IFtQQVRDSCAxNjIvMTg2XSBsaW51eDUuMzogdXBkYXRl IGRvdGNvbmZpZyBmb3IgYXJtNjQKCi0tLQogc3JjcGtncy9saW51eDUuMy9maWxlcy9hcm02NC1k b3Rjb25maWcgfCA1ICsrLS0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAzIGRl bGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbGludXg1LjMvZmlsZXMvYXJtNjQtZG90 Y29uZmlnIGIvc3JjcGtncy9saW51eDUuMy9maWxlcy9hcm02NC1kb3Rjb25maWcKaW5kZXggMWVi YzUxNGJmYzQuLmIyNDc3MTJjODBkIDEwMDY0NAotLS0gYS9zcmNwa2dzL2xpbnV4NS4zL2ZpbGVz L2FybTY0LWRvdGNvbmZpZworKysgYi9zcmNwa2dzL2xpbnV4NS4zL2ZpbGVzL2FybTY0LWRvdGNv bmZpZwpAQCAtMSw2ICsxLDYgQEAKICMKICMgQXV0b21hdGljYWxseSBnZW5lcmF0ZWQgZmlsZTsg RE8gTk9UIEVESVQuCi0jIExpbnV4L2FybTY0IDUuMy4wIEtlcm5lbCBDb25maWd1cmF0aW9uCisj IExpbnV4L2FybTY0IDUuMy44IEtlcm5lbCBDb25maWd1cmF0aW9uCiAjCiAKICMKQEAgLTMyOSw2 ICszMjksNyBAQCBDT05GSUdfQ0FWSVVNX0VSUkFUVU1fMjIzNzU9eQogQ09ORklHX0NBVklVTV9F UlJBVFVNXzIzMTU0PXkKIENPTkZJR19DQVZJVU1fRVJSQVRVTV8yNzQ1Nj15CiBDT05GSUdfQ0FW SVVNX0VSUkFUVU1fMzAxMTU9eQorQ09ORklHX0NBVklVTV9UWDJfRVJSQVRVTV8yMTk9eQogQ09O RklHX1FDT01fRkFMS09SX0VSUkFUVU1fMTAwMz15CiBDT05GSUdfQVJNNjRfV09SS0FST1VORF9S RVBFQVRfVExCST15CiBDT05GSUdfUUNPTV9GQUxLT1JfRVJSQVRVTV8xMDA5PXkKQEAgLTY4Mjgs NyArNjgyOSw2IEBAIENPTkZJR19VU0JfRU1JNjI9bQogQ09ORklHX1VTQl9FTUkyNj1tCiBDT05G SUdfVVNCX0FEVVRVWD1tCiBDT05GSUdfVVNCX1NFVlNFRz1tCi0jIENPTkZJR19VU0JfUklPNTAw IGlzIG5vdCBzZXQKIENPTkZJR19VU0JfTEVHT1RPV0VSPW0KIENPTkZJR19VU0JfTENEPW0KICMg Q09ORklHX1VTQl9DWVBSRVNTX0NZN0M2MyBpcyBub3Qgc2V0CkBAIC03MTg2LDcgKzcxODYsNiBA QCBDT05GSUdfUlRDX0RSVl9QQ0Y4NTYzPW0KIENPTkZJR19SVENfRFJWX1BDRjg1ODM9bQogQ09O RklHX1JUQ19EUlZfTTQxVDgwPW0KIENPTkZJR19SVENfRFJWX000MVQ4MF9XRFQ9eQotIyBDT05G SUdfUlRDX0RSVl9CRDcwNTI4IGlzIG5vdCBzZXQKIENPTkZJR19SVENfRFJWX0JRMzJLPW0KICMg Q09ORklHX1JUQ19EUlZfUzM1MzkwQSBpcyBub3Qgc2V0CiBDT05GSUdfUlRDX0RSVl9GTTMxMzA9 bQoKRnJvbSA3ZTllYTMzMTkwMTU1ZjFlYWRiM2FmZjg0YjhiM2NmNGRhNDYxMzBhIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBBdXJpIDxtZUBhdXJpZWgubWU+CkRhdGU6IFdlZCwgMzAg T2N0IDIwMTkgMTI6MDI6MTUgKzAyMDAKU3ViamVjdDogW1BBVENIIDE2My8xODZdIGR0b29sczog dXBkYXRlIHRvIDIuMDg4LjEKCi0tLQogc3JjcGtncy9kdG9vbHMvdGVtcGxhdGUgfCA3ICsrKy0t LS0KIDEgZmlsZSBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDQgZGVsZXRpb25zKC0pCgpkaWZm IC0tZ2l0IGEvc3JjcGtncy9kdG9vbHMvdGVtcGxhdGUgYi9zcmNwa2dzL2R0b29scy90ZW1wbGF0 ZQppbmRleCA4YmY2ZGI4YTYxYS4uZDRlNmNlYTdiYjUgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZHRv b2xzL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZHRvb2xzL3RlbXBsYXRlCkBAIC0xLDkgKzEsOCBA QAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZHRvb2xzJwogcGtnbmFtZT1kdG9vbHMKLXJldmVydHM9 IjIuMDg0LjFfMSIKICMga2VlcCB0aGlzIHN5bmNocm9uaXplZCB3aXRoIGxpYnBob2JvcyBhbmQg ZG1kCi12ZXJzaW9uPTIuMDgxLjEKLXJldmlzaW9uPTIKK3ZlcnNpb249Mi4wODguMQorcmV2aXNp b249MQogd3Jrc3JjPSJ0b29scy0ke3ZlcnNpb259IgogaG9zdG1ha2VkZXBlbmRzPSJkbWQiCiBt YWtlZGVwZW5kcz0ibGliY3VybC1kZXZlbCIKQEAgLTEzLDcgKzEyLDcgQEAgbWFpbnRhaW5lcj0i QXVyaSA8bWVAYXVyaWVoLm1lPiIKIGxpY2Vuc2U9IkJTTC0xLjAiCiBob21lcGFnZT0iaHR0cDov L3d3dy5kaWdpdGFsbWFycy5jb20vZC8yLjAvIgogZGlzdGZpbGVzPSJodHRwczovL2dpdGh1Yi5j b20vZGxhbmcvdG9vbHMvYXJjaGl2ZS92JHt2ZXJzaW9ufS50YXIuZ3oiCi1jaGVja3N1bT03MWZh MjQ5ZGJmZDI3OGVlYzJiOTVjZTU3N2FmMzJlNjIzZTQ0Y2FmMGQ5OTM5MDVkZGMxODllM2JlZWMy MWQwCitjaGVja3N1bT1lMmViMWFmZTI0OTg1MDk2NTU0Yzk3MTA1OTkxNmJmYWQxNTczYjg1Nzg2 NTI5YzAzOTQwMDljOGRiOTY3MTM5CiAKIGRvX2J1aWxkKCkgewogCSMgcmRtZCBjYW4ndCBiZSBi dWlsdCBub3JtYWxseSwgaXMgdXNlZCB0byBidWlsZCBvdGhlcnMKCkZyb20gNTkzMzBjZGYxZDY2 NGY0MzU3MzkxZDA4YjQyYWZlM2QyZGQwN2UzYiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJv bTogdHJhdmFua29yIDx0cmF2YW5rb3JAdHV0YS5pbz4KRGF0ZTogV2VkLCAzMCBPY3QgMjAxOSAw MTozMDoyOSAtMDcwMApTdWJqZWN0OiBbUEFUQ0ggMTY0LzE4Nl0gd3BndGs6IHVwZGF0ZSB0byA2 LjAuMTEuCgotLS0KIHNyY3BrZ3Mvd3BndGsvdGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFu Z2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtn cy93cGd0ay90ZW1wbGF0ZSBiL3NyY3BrZ3Mvd3BndGsvdGVtcGxhdGUKaW5kZXggN2U5ZDUyYjRm ODEuLmVkOTMxMDc5ODE2IDEwMDY0NAotLS0gYS9zcmNwa2dzL3dwZ3RrL3RlbXBsYXRlCisrKyBi L3NyY3BrZ3Mvd3BndGsvdGVtcGxhdGUKQEAgLTEsNiArMSw2IEBACiAjIFRlbXBsYXRlIGZpbGUg Zm9yICd3cGd0aycKIHBrZ25hbWU9d3BndGsKLXZlcnNpb249Ni4wLjkKK3ZlcnNpb249Ni4wLjEx CiByZXZpc2lvbj0xCiBhcmNocz1ub2FyY2gKIGJ1aWxkX3N0eWxlPXB5dGhvbjMtbW9kdWxlCkBA IC0xMiw0ICsxMiw0IEBAIG1haW50YWluZXI9InRyYXZhbmtvciA8dHJhdmFua29yQHR1dGEuaW8+ IgogbGljZW5zZT0iR1BMLTIuMC1vbmx5IgogaG9tZXBhZ2U9Imh0dHBzOi8vZ2l0aHViLmNvbS9k ZXZpYW50ZmVyby93cGd0ay8iCiBkaXN0ZmlsZXM9Imh0dHBzOi8vZ2l0aHViLmNvbS9kZXZpYW50 ZmVyby93cGd0ay9hcmNoaXZlLyR7dmVyc2lvbn0udGFyLmd6IgotY2hlY2tzdW09M2E4NGVmN2Nh NDE0YjQzYjc1MTc3Y2EyZjZhYTlkYTVhNzY5NjUzYjFjMzVjMWI0YTllNWU2ZWFlOTIxMjFiMAor Y2hlY2tzdW09ZGNmMGE5MTVjZmEwYmU1NjY3ZjE4OGYxNWI1OTEyMGNlN2UxNTdmODhmN2FhYmE0 MGZhMGJhNmUzZjMwMjk3NgoKRnJvbSBiZTUzOTBhNTg0OTdhYjM5Mzk3YjJmODM4MjQyNjg4NmE4 MTVhMmM5IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiB0cmF2YW5rb3IgPHRyYXZhbmtv ckB0dXRhLmlvPgpEYXRlOiBXZWQsIDMwIE9jdCAyMDE5IDAxOjI4OjU5IC0wNzAwClN1YmplY3Q6 IFtQQVRDSCAxNjUvMTg2XSBtYW4tZGI6IHVwZGF0ZSB0byAyLjkuMC4KCi0tLQogc3JjcGtncy9t YW4tZGIvdGVtcGxhdGUgfCA2ICsrKy0tLQogMSBmaWxlIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygr KSwgMyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL21hbi1kYi90ZW1wbGF0ZSBi L3NyY3BrZ3MvbWFuLWRiL3RlbXBsYXRlCmluZGV4IGI2Y2YxNDg5ZWNhLi5kZmM0ODNjM2VhOCAx MDA2NDQKLS0tIGEvc3JjcGtncy9tYW4tZGIvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9tYW4tZGIv dGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdtYW4tZGInCiBw a2duYW1lPW1hbi1kYgotdmVyc2lvbj0yLjguNwotcmV2aXNpb249MgordmVyc2lvbj0yLjkuMAor cmV2aXNpb249MQogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQogY29uZmlndXJlX2FyZ3M9Ii0t d2l0aC1kYj1kYiAtLXdpdGgtcGFnZXI9bGVzcyAtLXdpdGgtZ3ppcD0vdXNyL2Jpbi9nemlwCiAg LS13aXRoLWJ6aXAyPS91c3IvYmluL2J6aXAyIC0tZGlzYWJsZS1ycGF0aCAtLWVuYWJsZS10aHJl YWRzPXBvc2l4CkBAIC0xOCw3ICsxOCw3IEBAIG1haW50YWluZXI9Ik9ycGhhbmVkIDxvcnBoYW5A dm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyLCBMR1BMLTIuMS1vci1s YXRlciIKIGhvbWVwYWdlPSJodHRwczovL3d3dy5ub25nbnUub3JnL21hbi1kYi8iCiBkaXN0Zmls ZXM9IiR7Tk9OR05VX1NJVEV9LyR7cGtnbmFtZX0vJHtwa2duYW1lfS0ke3ZlcnNpb259LnRhci54 eiIKLWNoZWNrc3VtPWI5Y2Q1YmI5OTYzMDVkMDhiZmU5ZTExMTRlZGMzMGI0Yzk3YmU4MDcwOTNi ODhhZjgwMzNlZDFjZjliZWIzMjYKK2NoZWNrc3VtPTVkNGFhY2Q5ZTg4NzZkNmEzMjAzYTg4OTg2 MGMzNTI0YzI5M2MzOGYwNDExMWEzMzUwZGVhYjhhNmNkM2UyNjEKIHByb3ZpZGVzPSJtYW4tMF8x IgogbGliMzJkaXNhYmxlZD15ZXMKIAoKRnJvbSAyMDIwOWVjMTg4ZmMxODMwZjZjMmIxOWJkMzNl MmY2YTQwNGVkNmViIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBEb2FuIFRyYW4gQ29u ZyBEYW5oIDxjb25nZGFuaHF4QGdtYWlsLmNvbT4KRGF0ZTogV2VkLCAzMCBPY3QgMjAxOSAxNjoz MDoyMCArMDcwMApTdWJqZWN0OiBbUEFUQ0ggMTY2LzE4Nl0gZ2l0OiBjb3JyZWN0IHV0Zi0xNiBh bmQgdXRmLTMyIGNvbnZlcnNpb24gb24gbXVzbAoKbXVzbCdzIGljb252IHRyZWF0cyB1dGYtezE2 LDMyfSBlbmNvZGluZyBhcyB1dGYtezE2LDMyfWJlLAp3aXRob3V0IEJPTSwgY29ycmVjdGx5IGFj Y29yZGluZyB0byBQT1NJWC4KCkhvd2V2ZXIsIG1vc3QgdG9vbHMgb3V0IHRoZXJlIHRoaW5rIGRp ZmZlcmVudGx5LgoKQ2hhbmdlIHRoZSBidWlsZCBmbGFnIGZvciB0aGUgbXVzbCBzeXN0ZW0gdG8g Zml4IGl0LgoKVG9nZXRoZXIgd2l0aCBteSBwYXRjaCBoZXJlOgpodHRwczovL2dpdGh1Yi5jb20v Z2l0L2dpdC9jb21taXQvODQwYzQwY2VhMTEyOTBkNDBmZDQ1NWNjM2IyM2Q1NzkzMDU2ZjRkNAoK Z2l0J3MgdGVzdDogdDAwMjggc2hvdWxkIGJlIGZpbmUgbm93LgotLS0KIHNyY3BrZ3MvZ2l0L3Rl bXBsYXRlIHwgOSArKysrKystLS0KIDEgZmlsZSBjaGFuZ2VkLCA2IGluc2VydGlvbnMoKyksIDMg ZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9naXQvdGVtcGxhdGUgYi9zcmNwa2dz L2dpdC90ZW1wbGF0ZQppbmRleCA3MDgxZDdkNGJmYy4uNDI4N2UyNDk2MmEgMTAwNjQ0Ci0tLSBh L3NyY3BrZ3MvZ2l0L3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZ2l0L3RlbXBsYXRlCkBAIC0xLDcg KzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZ2l0JwogcGtnbmFtZT1naXQKIHZlcnNpb249 Mi4yMy4wCi1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJl CiBjb25maWd1cmVfYXJncz0iLS13aXRoLWN1cmwgLS13aXRoLWV4cGF0IC0td2l0aC10Y2x0ayAt LXdpdGgtbGlicGNyZTIKICBhY19jdl9zbnByaW50Zl9yZXR1cm5zX2JvZ3VzPW5vIgpAQCAtMTMs NyArMTMsNyBAQCBtYWtlZGVwZW5kcz0ibGliZ2xpYi1kZXZlbCBsaWJjdXJsLWRldmVsIGxpYnNl Y3JldC1kZXZlbCBwY3JlMi1kZXZlbCB0ay1kZXZlbCIKICMgUmVxdWlyZWQgYnkgaHR0cHM6Ly8K IGRlcGVuZHM9ImNhLWNlcnRpZmljYXRlcyBwZXJsLUF1dGhlbi1TQVNMIHBlcmwtTUlNRS10b29s cyBwZXJsLU5ldC1TTVRQLVNTTCIKIHNob3J0X2Rlc2M9IkdpdCBUcmVlIEhpc3RvcnkgU3RvcmFn ZSBUb29sIgotbWFpbnRhaW5lcj0iT3JwaGFuZWQgPG9ycGhhbkB2b2lkbGludXgub3JnPiIKK21h aW50YWluZXI9IkRvYW4gVHJhbiBDb25nIERhbmggPGNvbmdkYW5ocXhAZ21haWwuY29tPiIKIGxp Y2Vuc2U9IkdQTC0yLjAtb25seSIKIGhvbWVwYWdlPSJodHRwczovL2dpdC1zY20uY29tLyIKIGNo YW5nZWxvZz0iaHR0cHM6Ly9yYXcuZ2l0aHVidXNlcmNvbnRlbnQuY29tL2dpdC9naXQvbWFzdGVy L0RvY3VtZW50YXRpb24vUmVsTm90ZXMvJHt2ZXJzaW9ufS50eHQiCkBAIC0yNSw3ICsyNSwxMCBA QCByZWdpc3Rlcl9zaGVsbD0vdXNyL2Jpbi9naXQtc2hlbGwKIHN1YnBhY2thZ2VzPSJnaXQtY3Zz IGdpdC1zdm4gZ2l0ayBnaXQtZ3VpIGdpdC1hbGwgZ2l0LWxpYnNlY3JldCIKIAogY2FzZSAiJFhC UFNfVEFSR0VUX01BQ0hJTkUiIGluCi0JKi1tdXNsKSBjb25maWd1cmVfYXJncys9IiBhY19jdl9m cmVhZF9yZWFkc19kaXJlY3Rvcmllcz15ZXMiIDs7CisJKi1tdXNsKQorCQljb25maWd1cmVfYXJn cys9IiBhY19jdl9mcmVhZF9yZWFkc19kaXJlY3Rvcmllcz15ZXMiCisJCW1ha2VfYnVpbGRfYXJn cys9IiBJQ09OVl9PTUlUU19CT009WWVzIgorCQk7OwogCSopIGNvbmZpZ3VyZV9hcmdzKz0iIGFj X2N2X2ZyZWFkX3JlYWRzX2RpcmVjdG9yaWVzPW5vIiA7OwogZXNhYwogCgpGcm9tIDE1ZWY5MGNm YmRhOTgyMGYzN2JlYjIxYmMyMzAwMDI1NDhiOTExZTggTW9uIFNlcCAxNyAwMDowMDowMCAyMDAx CkZyb206IERvYW4gVHJhbiBDb25nIERhbmggPGNvbmdkYW5ocXhAZ21haWwuY29tPgpEYXRlOiBX ZWQsIDMwIE9jdCAyMDE5IDE2OjM4OjAxICswNzAwClN1YmplY3Q6IFtQQVRDSCAxNjcvMTg2XSBj aHJvb3QtZ2l0OiBjb3JyZWN0IGljb252IHVzYWdlIG9uIG11c2wKCi0tLQogc3JjcGtncy9jaHJv b3QtZ2l0L3RlbXBsYXRlIHwgNyArKysrKy0tCiAxIGZpbGUgY2hhbmdlZCwgNSBpbnNlcnRpb25z KCspLCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvY2hyb290LWdpdC90ZW1w bGF0ZSBiL3NyY3BrZ3MvY2hyb290LWdpdC90ZW1wbGF0ZQppbmRleCBhNzMzYjJlODEyNC4uNTc4 NjA5MjQzYzUgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvY2hyb290LWdpdC90ZW1wbGF0ZQorKysgYi9z cmNwa2dzL2Nocm9vdC1naXQvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZp bGUgZm9yICdjaHJvb3QtZ2l0JwogcGtnbmFtZT1jaHJvb3QtZ2l0CiB2ZXJzaW9uPTIuMjMuMAot cmV2aXNpb249MQorcmV2aXNpb249MgogYm9vdHN0cmFwPXllcwogd3Jrc3JjPSJnaXQtJHt2ZXJz aW9ufSIKIGJ1aWxkX3N0eWxlPWdudS1jb25maWd1cmUKQEAgLTI2LDcgKzI2LDEwIEBAIGVsc2UK IGZpCiAKIGNhc2UgIiRYQlBTX1RBUkdFVF9NQUNISU5FIiBpbgotCSotbXVzbCkgY29uZmlndXJl X2FyZ3MrPSIgYWNfY3ZfZnJlYWRfcmVhZHNfZGlyZWN0b3JpZXM9eWVzIiA7OworCSotbXVzbCkK KwkJY29uZmlndXJlX2FyZ3MrPSIgYWNfY3ZfZnJlYWRfcmVhZHNfZGlyZWN0b3JpZXM9eWVzIgor CQltYWtlX2J1aWxkX2FyZ3MrPSIgSUNPTlZfT01JVFNfQk9NPVllcyIKKwkJOzsKIAkqKSBjb25m aWd1cmVfYXJncys9IiBhY19jdl9mcmVhZF9yZWFkc19kaXJlY3Rvcmllcz1ubyIgOzsKIGVzYWMK IAoKRnJvbSBkNDAyMGRiNzc4NjJjZDA2ODljZDA3MDEyOWNlODM2MzQwOTBhZWRjIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZXcgQmVuc29uIDxhYmVuc29uK3ZvaWRAZ21haWwu Y29tPgpEYXRlOiBXZWQsIDMwIE9jdCAyMDE5IDA3OjE1OjE4IC0wNTAwClN1YmplY3Q6IFtQQVRD SCAxNjgvMTg2XSBzcG90aWZ5LXR1aTogdXBkYXRlIHRvIDAuOC4wLgoKLS0tCiBzcmNwa2dzL3Nw b3RpZnktdHVpL3RlbXBsYXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25z KCspLCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mvc3BvdGlmeS10dWkvdGVt cGxhdGUgYi9zcmNwa2dzL3Nwb3RpZnktdHVpL3RlbXBsYXRlCmluZGV4IGMyOWQ3ZDJkZGYzLi4y NGEyYmQ2NmNmZCAxMDA2NDQKLS0tIGEvc3JjcGtncy9zcG90aWZ5LXR1aS90ZW1wbGF0ZQorKysg Yi9zcmNwa2dzL3Nwb3RpZnktdHVpL3RlbXBsYXRlCkBAIC0xLDYgKzEsNiBAQAogIyBUZW1wbGF0 ZSBmaWxlIGZvciAnc3BvdGlmeS10dWknCiBwa2duYW1lPXNwb3RpZnktdHVpCi12ZXJzaW9uPTAu Ny41Cit2ZXJzaW9uPTAuOC4wCiByZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1jYXJnbwogaG9zdG1h a2VkZXBlbmRzPSJwa2ctY29uZmlnIgpAQCAtMTAsNyArMTAsNyBAQCBtYWludGFpbmVyPSJBbmRy ZXcgQmVuc29uIDxhYmVuc29uK3ZvaWRAZ21haWwuY29tPiIKIGxpY2Vuc2U9Ik1JVCIKIGhvbWVw YWdlPSJodHRwczovL2dpdGh1Yi5jb20vUmlnZWxsdXRlL3Nwb3RpZnktdHVpIgogZGlzdGZpbGVz PSJodHRwczovL2dpdGh1Yi5jb20vUmlnZWxsdXRlL3Nwb3RpZnktdHVpL2FyY2hpdmUvdiR7dmVy c2lvbn0udGFyLmd6IgotY2hlY2tzdW09MmYwZDNjMjEzNjNlNjkzZGQ1NDg2ODVkOWRhMjE3YTk0 MmZiNDQ3NWIxNjg3NWMwNDc5ZDNiZDBiMjU3NGEwNworY2hlY2tzdW09MDgzOWQ2ODhlNDBkOWMy YWQ0MzU5MjQ3ODVhMzc1Yjk3NmY1MWQ0NGExMDFlNzFiM2E4YzQ5ZGM3ZDRjOGJiYwogCiBwb3N0 X2luc3RhbGwoKSB7CiAJdmxpY2Vuc2UgTElDRU5TRQoKRnJvbSAzMmM1N2U2YTU1ZmVlMzk5ZGNh MTViZjIyOGJjMDBkNDIzM2ZhYzdmIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiB0cmF2 YW5rb3IgPHRyYXZhbmtvckB0dXRhLmlvPgpEYXRlOiBXZWQsIDMwIE9jdCAyMDE5IDAwOjE0OjQw IC0wNzAwClN1YmplY3Q6IFtQQVRDSCAxNjkvMTg2XSBxaW1ndjogdXBkYXRlIHRvIDAuOC42LgoK LS0tCiBzcmNwa2dzL3FpbWd2L3RlbXBsYXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBp bnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcWltZ3Yv dGVtcGxhdGUgYi9zcmNwa2dzL3FpbWd2L3RlbXBsYXRlCmluZGV4IDNlYWQ2ZGJkYzJiLi4xZTc0 ZTg0ZjZmYiAxMDA2NDQKLS0tIGEvc3JjcGtncy9xaW1ndi90ZW1wbGF0ZQorKysgYi9zcmNwa2dz L3FpbWd2L3RlbXBsYXRlCkBAIC0xLDYgKzEsNiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAncWlt Z3YnCiBwa2duYW1lPXFpbWd2Ci12ZXJzaW9uPTAuOC41Cit2ZXJzaW9uPTAuOC42CiByZXZpc2lv bj0xCiBidWlsZF9zdHlsZT1jbWFrZQogY29uZmlndXJlX2FyZ3M9IiQodm9wdF9pZiB2aWRlbyAt RFZJREVPX1NVUFBPUlQ9T04pIgpAQCAtMTEsNyArMTEsNyBAQCBtYWludGFpbmVyPSJ0cmF2YW5r b3IgPHRyYXZhbmtvckB0dXRhLmlvPiIKIGxpY2Vuc2U9IkdQTC0zLjAtb3ItbGF0ZXIiCiBob21l cGFnZT0iaHR0cHM6Ly9naXRodWIuY29tL2Vhc3ltb2RvL3FpbWd2IgogZGlzdGZpbGVzPSJodHRw czovL2dpdGh1Yi5jb20vZWFzeW1vZG8vcWltZ3YvYXJjaGl2ZS92JHt2ZXJzaW9ufS50YXIuZ3oi Ci1jaGVja3N1bT04NTc5MTliNmYwNDMyOTY1ZmEyNmU1YzcyZmEyOTMyOTlkNzk3ZjAyNTM4NDhl MThiODYyMThjMWIzODdkNTYyCitjaGVja3N1bT1hMGY0M2IyMjZhM2JiMTdiZjI4N2E0NTAxN2Ey MWYyMzlkYjNkOGRkYTgxMjQxOTc1Mjk5MjNmNzAwOTgxYmM1CiAKIGJ1aWxkX29wdGlvbnM9InZp ZGVvIgogYnVpbGRfb3B0aW9uc19kZWZhdWx0PSJ2aWRlbyIKCkZyb20gMGNhNDQ5OTc3NTFlMzU2 MWQzMTdmYWNkZTQwNzlhNWQyNWVmMTcwZiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTog dHJhdmFua29yIDx0cmF2YW5rb3JAdHV0YS5pbz4KRGF0ZTogRnJpLCAxOCBPY3QgMjAxOSAyMzo0 NjozMiAtMDcwMApTdWJqZWN0OiBbUEFUQ0ggMTcwLzE4Nl0gY2hyb255OiBmaXggd3Jvbmcgb3B0 aW9uIGluIHRoZSBkZWZhdWx0IGNvbmZpZy4KClRoZSBvcHRpb24gcnRjZmlsZSBpbiB0aGUgZGVm YXVsdCBjb25maWcgY29uZmxpY3RzIHdpdGggcnVuaXQncyBzdGFnZSAzLgpDaHJvbnlkIGluIFJU QyBtb2RlIHRha2VzIGNvbnRyb2wgb2YgL2Rldi9ydGMgdG8gbWVhc3VyZSBSVEMgZHJpZnQuClN0 YWdlIDMgY2FsbHMgaHdjbG9jayAtdywgd2hpY2ggbWVzc2VzIHVwIGNocm9ueSdzIGRyaWZ0IGNh bGN1bGF0aW9uLgpGdXJ0aGVybW9yZSB0aGUgY3VycmVudCBjaHJvbnlkIHJ1bml0IHNlcnZpY2Ug bmVlZHMgdGhlIC1zIG9wdGlvbgp0byBlZmZlY3RpdmVseSB1c2UgdGhlIFJUQyBmZWF0dXJlLgoK U2VlIGZvciBtb3JlIGluZm86Cmh0dHBzOi8vY2hyb255LnR1eGZhbWlseS5vcmcvZmFxLmh0bWwj X2lfd2FudF90b191c2VfY29kZV9jaHJvbnlkX2NvZGVfc19ydGNfc3VwcG9ydF9tdXN0X2lfZGlz YWJsZV9jb2RlX2h3Y2xvY2tfY29kZQoKU3dpdGNoIHJ0Y2ZpbGUgdG8gdGhlIHJ0Y3N5bmMgb3B0 aW9uLCB0byBiZSBjb25zaXN0ZW50IHdpdGggc3RhZ2UgMy4KRXhhbXBsZSBjb25maWcgZmlsZSAx IHNldHMgdGhlIHJpZ2h0IG9wdGlvbnMgdGhhdCB3b3JrIG91dCBvZiB0aGUgYm94LgpTbyB1c2Ug dGhhdCBleGFtcGxlIGZpbGUgaW5zdGVhZCBvZiBlZGl0aW5nIHRoZSBhbm5vdGF0ZWQgb25lLgpF eGFtcGxlIGNvbmZpZyBmaWxlIDMgd2lsbCBpbnN0ZWFkIGJlIGluc3RhbGxlZCB0byAvdXNyL3No YXJlL2V4YW1wbGVzLgotLS0KIHNyY3BrZ3MvY2hyb255L3RlbXBsYXRlIHwgMTAgKysrLS0tLS0t LQogMSBmaWxlIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgNyBkZWxldGlvbnMoLSkKCmRpZmYg LS1naXQgYS9zcmNwa2dzL2Nocm9ueS90ZW1wbGF0ZSBiL3NyY3BrZ3MvY2hyb255L3RlbXBsYXRl CmluZGV4IDZkNjI5YTkyNjBjLi43NTE0MmI2NjEwMSAxMDA2NDQKLS0tIGEvc3JjcGtncy9jaHJv bnkvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9jaHJvbnkvdGVtcGxhdGUKQEAgLTIsNyArMiw3IEBA CiAjIFdoZW4gVXBkYXRpbmc6IFBsZWFzZSBjb25maXJtIHRoZSB1cHN0cmVhbSBjb25maWcgc3Rp bGwgcmVmZXJzIHRvIG1ha2VfZGlycwogcGtnbmFtZT1jaHJvbnkKIHZlcnNpb249My41Ci1yZXZp c2lvbj0xCityZXZpc2lvbj0yCiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCiBjb25maWd1cmVf YXJncz0iLS13aXRob3V0LW5zcyAtLWVuYWJsZS1zY2ZpbHRlcgogIC0td2l0aC1zZW5kbWFpbD0v dXNyL2Jpbi9zZW5kbWFpbCIKQEAgLTI5LDEyICsyOSw4IEBAIGFsdGVybmF0aXZlcz0iCiAgbnRw ZDpudHBkOi9ldGMvc3YvY2hyb255ZCIKIAogcG9zdF9pbnN0YWxsKCkgewotCXZjb25mIGV4YW1w bGVzL2Nocm9ueS5jb25mLmV4YW1wbGUzIGNocm9ueS5jb25mCi0JIyBNb2RpZnkgZGVmYXVsdCBj b25maWd1cmF0aW9uIHNvIGl0IHdvcmtzIG91dC1vZi10aGUtYm94Ci0JdnNlZCAtZSAncywhIHBv b2wgcG9vbC5udHAub3JnIGlidXJzdCxwb29sIHBvb2wubnRwLm9yZyBpYnVyc3QsJyAtaSAke0RF U1RESVJ9L2V0Yy9jaHJvbnkuY29uZgotCXZzZWQgLWUgJ3MsISBydGNmaWxlIC92YXIvbGliL2No cm9ueS9ydGMscnRjZmlsZSAvdmFyL2xpYi9jaHJvbnkvcnRjLCcgLWkgJHtERVNURElSfS9ldGMv Y2hyb255LmNvbmYKLQl2c2VkIC1lICdzLCEgbWFrZXN0ZXAgMS4wIDMsbWFrZXN0ZXAgMS4wIDMs JyAtaSAke0RFU1RESVJ9L2V0Yy9jaHJvbnkuY29uZgotCXZzY29uZiBleGFtcGxlcy9jaHJvbnku Y29uZi5leGFtcGxlMQorCXZjb25mIGV4YW1wbGVzL2Nocm9ueS5jb25mLmV4YW1wbGUxIGNocm9u eS5jb25mCiAJdnNjb25mIGV4YW1wbGVzL2Nocm9ueS5jb25mLmV4YW1wbGUyCisJdnNjb25mIGV4 YW1wbGVzL2Nocm9ueS5jb25mLmV4YW1wbGUzCiAJdnN2IGNocm9ueWQKIH0KCkZyb20gNDIyODA2 OGZkMzg1ZTRkMTkyNDU4MTQ2ZTE1YmI1MjM0NjAxZDFkYSBNb24gU2VwIDE3IDAwOjAwOjAwIDIw MDEKRnJvbTogb2J1bmRlbiA8NTYyMDk2MTQrb2J1bmRlbkB1c2Vycy5ub3JlcGx5LmdpdGh1Yi5j b20+CkRhdGU6IFdlZCwgMzAgT2N0IDIwMTkgMDQ6NDY6MTkgKzAxMDAKU3ViamVjdDogW1BBVENI IDE3MS8xODZdIHJldHJvYXJjaDogdXBkYXRlIHRvIDEuOC4wCgotLS0KIHNyY3BrZ3MvcmV0cm9h cmNoL3RlbXBsYXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCspLCAy IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcmV0cm9hcmNoL3RlbXBsYXRlIGIv c3JjcGtncy9yZXRyb2FyY2gvdGVtcGxhdGUKaW5kZXggM2RlN2YyMjg2ZjYuLjk0YmEwYjEyZTRi IDEwMDY0NAotLS0gYS9zcmNwa2dzL3JldHJvYXJjaC90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3Jl dHJvYXJjaC90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ3Jl dHJvYXJjaCcKIHBrZ25hbWU9cmV0cm9hcmNoCi12ZXJzaW9uPTEuNy45LjIKK3ZlcnNpb249MS44 LjAKIHJldmlzaW9uPTEKIHdya3NyYz0iUmV0cm9BcmNoLSR2ZXJzaW9uIgogYnVpbGRfc3R5bGU9 Y29uZmlndXJlCkBAIC0yMyw3ICsyMyw3IEBAIG1haW50YWluZXI9Ik9ycGhhbmVkIDxvcnBoYW5A dm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJHUEwtMy4wLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0 dHA6Ly93d3cubGlicmV0cm8uY29tLyIKIGRpc3RmaWxlcz0iaHR0cHM6Ly9naXRodWIuY29tL2xp YnJldHJvL1JldHJvQXJjaC9hcmNoaXZlL3YkdmVyc2lvbi50YXIuZ3oiCi1jaGVja3N1bT0xY2I4 OGMzZTJlOGEwNGEyMWUyZTZhMTRiN2I3YTdlYjI3NDhkMThlNjI5ZTVlMjA2M2NhN2ExYTlhN2Rh YmI1CitjaGVja3N1bT0xY2IwZjA0YmRiZmQ1MTdjYmRkMTFiMjBiMGIyMmFkNDcyZmI5ZTNlNTRk ZjlhNGU3ODEzZWQ2Mzg1MDlkZmU3CiBidWlsZF9vcHRpb25zPSJmZm1wZWcgb3BlbmdsIGphY2sg cHVsc2VhdWRpbyBzZGwyIHgxMSB2dWxrYW4gcXQ1IgogCiBidWlsZF9vcHRpb25zX2RlZmF1bHQ9 ImZmbXBlZyIKCkZyb20gOGEyODYyNWVhNTA5YzBiNDNmMmNhMzc3MTYxZWE3ZjEzNjNiNmM1NyBN b24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmF0aGFuIE93ZW5zIDxuZG93ZW5zMDRAZ21h aWwuY29tPgpEYXRlOiBUdWUsIDI5IE9jdCAyMDE5IDIyOjE5OjM4IC0wNTAwClN1YmplY3Q6IFtQ QVRDSCAxNzIvMTg2XSBnZW9jbHVlMjogdXBkYXRlIHRvIDIuNS41CgotLS0KIHNyY3BrZ3MvZ2Vv Y2x1ZTIvdGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMoKyks IDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9nZW9jbHVlMi90ZW1wbGF0ZSBi L3NyY3BrZ3MvZ2VvY2x1ZTIvdGVtcGxhdGUKaW5kZXggNjRlYWRkYzEzZDcuLmVlZGUzYWRkYmI0 IDEwMDY0NAotLS0gYS9zcmNwa2dzL2dlb2NsdWUyL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZ2Vv Y2x1ZTIvdGVtcGxhdGUKQEAgLTEsNiArMSw2IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdnZW9j bHVlMicKIHBrZ25hbWU9Z2VvY2x1ZTIKLXZlcnNpb249Mi41LjMKK3ZlcnNpb249Mi41LjUKIHJl dmlzaW9uPTEKIHdya3NyYz0iZ2VvY2x1ZS0ke3ZlcnNpb259IgogYnVpbGRfc3R5bGU9bWVzb24K QEAgLTE2LDcgKzE2LDcgQEAgbWFpbnRhaW5lcj0iT3JwaGFuZWQgPG9ycGhhbkB2b2lkbGludXgu b3JnPiIKIGxpY2Vuc2U9IkxHUEwtMi4xLW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vZ2l0 bGFiLmZyZWVkZXNrdG9wLm9yZy9nZW9jbHVlL2dlb2NsdWUvd2lraXMvaG9tZSIKIGRpc3RmaWxl cz0iaHR0cHM6Ly9naXRsYWIuZnJlZWRlc2t0b3Aub3JnL2dlb2NsdWUvZ2VvY2x1ZS8tL2FyY2hp dmUvJHt2ZXJzaW9ufS9nZW9jbHVlLSR7dmVyc2lvbn0udGFyLmJ6MiIKLWNoZWNrc3VtPWE2MjZm NmFkYWZmMTVkODhmZDA1NjEzNDRlNjE0ZTM3MTkwMGU0YTY0YTFmZTlkZGZjZGQ0MGQzOTcxMmU3 OGIKK2NoZWNrc3VtPTUxZTlkMWI1MmQ3ZTVhMzVlN2NlNDRhZmI4ZDNiYTE5NTYyNjY4MTM2YjQz MjRiYmVjZjU3NDYyNzVjNmYyYWMKIHN5c3RlbV9hY2NvdW50cz0iX2dlb2NsdWUyIgogbGliMzJk aXNhYmxlZD15ZXMKIAoKRnJvbSBmMWViZTc0NWQyM2RhNWRkMGMxNDdiYjFmMzlkNzJlODZiODJh ODQ5IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYXRoYW4gT3dlbnMgPG5kb3dlbnMw NEBnbWFpbC5jb20+CkRhdGU6IFR1ZSwgMjkgT2N0IDIwMTkgMjE6NTc6MDggLTA1MDAKU3ViamVj dDogW1BBVENIIDE3My8xODZdIGdjcjogdXBkYXRlIHRvIDMuMzQuMAoKLS0tCiBzcmNwa2dzL2dj ci90ZW1wbGF0ZSB8IDYgKysrLS0tCiAxIGZpbGUgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspLCAz IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ2NyL3RlbXBsYXRlIGIvc3JjcGtn cy9nY3IvdGVtcGxhdGUKaW5kZXggZDdmYzJiMTUxYmIuLjczNWY5ZDM1NTExIDEwMDY0NAotLS0g YS9zcmNwa2dzL2djci90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2djci90ZW1wbGF0ZQpAQCAtMSw3 ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2djcicKIHBrZ25hbWU9Z2NyCi12ZXJzaW9u PTMuMjguMQotcmV2aXNpb249MwordmVyc2lvbj0zLjM0LjAKK3JldmlzaW9uPTEKIGJ1aWxkX3N0 eWxlPWdudS1jb25maWd1cmUKIGJ1aWxkX2hlbHBlcj0iZ2lyIgogY29uZmlndXJlX2FyZ3M9IiQo dm9wdF9lbmFibGUgZ2lyIGludHJvc3BlY3Rpb24pIC0tZGlzYWJsZS11cGRhdGUtbWltZQpAQCAt MTYsNyArMTYsNyBAQCBtYWludGFpbmVyPSJPcnBoYW5lZCA8b3JwaGFuQHZvaWRsaW51eC5vcmc+ IgogbGljZW5zZT0iTEdQTC0yLjAtb3ItbGF0ZXIsIExHUEwtMi4xLW9yLWxhdGVyLCBHUEwtMi4w LW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHA6Ly93d3cuZ25vbWUub3JnIgogZGlzdGZpbGVzPSIk e0dOT01FX1NJVEV9L2djci8ke3ZlcnNpb24lLip9L2djci0ke3ZlcnNpb259LnRhci54eiIKLWNo ZWNrc3VtPTk1MjA0YWEyMTExYzMwMTc3OGViZmJlNjA5NzVjZTNlZDY5OGM5NTg0MzBmZmNjMmE3 ODVhYzVlNTkzZDE2OGIKK2NoZWNrc3VtPTI5ZGY1MDk3NGE5MDk4N2FmNjk0YzBmYjg5MjZhNmIz NjZlNjhjYWNkOGFiZDgxMzgxN2NmZTFlYjVkNTQ1MjQKIAogIyBQYWNrYWdlIGJ1aWxkIG9wdGlv bnMKIGJ1aWxkX29wdGlvbnM9ImdpciB2YWxhIgoKRnJvbSBlYTJiYWNiZTE0MTI4MjFmM2RmZmI2 ZDU2NGE1ZmQ4YmY3ZWRjYjg0IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYXRoYW4g T3dlbnMgPG5kb3dlbnMwNEBnbWFpbC5jb20+CkRhdGU6IFR1ZSwgMjkgT2N0IDIwMTkgMjE6MjU6 NTUgLTA1MDAKU3ViamVjdDogW1BBVENIIDE3NC8xODZdIGZzdHJtOiB1cGRhdGUgdG8gMC42LjAK Ci0tLQogc3JjcGtncy9mc3RybS90ZW1wbGF0ZSB8IDYgKysrLS0tCiAxIGZpbGUgY2hhbmdlZCwg MyBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZnN0 cm0vdGVtcGxhdGUgYi9zcmNwa2dzL2ZzdHJtL3RlbXBsYXRlCmluZGV4IGE2YzIxZDI3YTViLi4y YzczNWYyOWRmNyAxMDA2NDQKLS0tIGEvc3JjcGtncy9mc3RybS90ZW1wbGF0ZQorKysgYi9zcmNw a2dzL2ZzdHJtL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAn ZnN0cm0nCiBwa2duYW1lPWZzdHJtCi12ZXJzaW9uPTAuNS4wCi1yZXZpc2lvbj0yCit2ZXJzaW9u PTAuNi4wCityZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCiBob3N0bWFrZWRl cGVuZHM9ImF1dG9tYWtlIGxpYnRvb2wgcGtnLWNvbmZpZyIKIG1ha2VkZXBlbmRzPSJsaWJldmVu dC1kZXZlbCIKQEAgLTExLDcgKzExLDcgQEAgbGljZW5zZT0iTUlUIgogaG9tZXBhZ2U9Imh0dHBz Oi8vZ2l0aHViLmNvbS9mYXJzaWdodHNlYy9mc3RybSIKICNjaGFuZ2Vsb2c9Imh0dHBzOi8vcmF3 LmdpdGh1YnVzZXJjb250ZW50LmNvbS9mYXJzaWdodHNlYy9mc3RybS9tYXN0ZXIvQ2hhbmdlTG9n IgogZGlzdGZpbGVzPSJodHRwczovL2dpdGh1Yi5jb20vZmFyc2lnaHRzZWMvZnN0cm0vYXJjaGl2 ZS92JHt2ZXJzaW9ufS50YXIuZ3oiCi1jaGVja3N1bT1jYTc2MmZiMjYwMTc2ZjM1YWY2MzkzNzZj YzY1YzNmMTNhNWY2M2QxY2NhNDJlYjVjZTg3Y2FjYThkNTdjNDUwCitjaGVja3N1bT04Mjg1MWIy NDI0YWUzZTk0YjRmYmEzMTBiNjA2MjliMzNkNjc1N2ZiZWIxNTY2MjU2NmIxODU3Y2Q1YzMxNTE3 CiAKIHByZV9jb25maWd1cmUoKSB7CiAJYXV0b3JlY29uZiAtZmkKCkZyb20gMWMzYWY4ZDdkNDIw M2QxYmJlYjJkMjM0ZjY2MzNiYTViY2Q4NzdhZSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJv bTogTmF0aGFuIE93ZW5zIDxuZG93ZW5zMDRAZ21haWwuY29tPgpEYXRlOiBUdWUsIDI5IE9jdCAy MDE5IDIwOjQ1OjQ5IC0wNTAwClN1YmplY3Q6IFtQQVRDSCAxNzUvMTg2XSBkdXBsaWNpdHk6IHVw ZGF0ZSB0byAwLjguMDUKCkFkZGVkIG1pc3NpbmcgcnVudGltZSBkZXBlbmRlbmN5Ci0tLQogLi4u L3BhdGNoZXMvMDAwMS1yZW1vdmUtZmFpbGluZy10ZXN0LnBhdGNoICAgIHwgNTggKysrKysrKysr KysrKysrKysrKwogLi4uL3BhdGNoZXMvcmVtb3ZlLWZhaWxpbmctdGVzdC5wYXRjaCAgICAgICAg IHwgMzQgLS0tLS0tLS0tLS0KIHNyY3BrZ3MvZHVwbGljaXR5L3RlbXBsYXRlICAgICAgICAgICAg ICAgICAgICB8ICA2ICstCiAzIGZpbGVzIGNoYW5nZWQsIDYxIGluc2VydGlvbnMoKyksIDM3IGRl bGV0aW9ucygtKQogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvZHVwbGljaXR5L3BhdGNoZXMv MDAwMS1yZW1vdmUtZmFpbGluZy10ZXN0LnBhdGNoCiBkZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtn cy9kdXBsaWNpdHkvcGF0Y2hlcy9yZW1vdmUtZmFpbGluZy10ZXN0LnBhdGNoCgpkaWZmIC0tZ2l0 IGEvc3JjcGtncy9kdXBsaWNpdHkvcGF0Y2hlcy8wMDAxLXJlbW92ZS1mYWlsaW5nLXRlc3QucGF0 Y2ggYi9zcmNwa2dzL2R1cGxpY2l0eS9wYXRjaGVzLzAwMDEtcmVtb3ZlLWZhaWxpbmctdGVzdC5w YXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMC4uYWVjMzU0MjNmMTkK LS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL2R1cGxpY2l0eS9wYXRjaGVzLzAwMDEtcmVtb3Zl LWZhaWxpbmctdGVzdC5wYXRjaApAQCAtMCwwICsxLDU4IEBACitGcm9tIDEwMDY0ZWFmZjcwZTU4 YzFjYjdkMTJjMDRiZGI5ZjkxNTgxN2ZjNjYgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCitGcm9t OiBOYXRoYW4gT3dlbnMgPG5kb3dlbnMwNEBnbWFpbC5jb20+CitEYXRlOiBUdWUsIDI5IE9jdCAy MDE5IDIwOjM3OjQyIC0wNTAwCitTdWJqZWN0OiBbUEFUQ0hdIHJlbW92ZSBmYWlsaW5nIHRlc3QK KworLS0tCisgdGVzdGluZy91bml0L3Rlc3Rfc3RhdGlzdGljcy5weSB8IDM1IC0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorIDEgZmlsZSBjaGFuZ2VkLCAzNSBkZWxldGlvbnMoLSkK KworZGlmZiAtLWdpdCBhL3Rlc3RpbmcvdW5pdC90ZXN0X3N0YXRpc3RpY3MucHkgYi90ZXN0aW5n L3VuaXQvdGVzdF9zdGF0aXN0aWNzLnB5CitpbmRleCAzYWMwNjI3Li45YWQyMDZhIDEwMDY0NAor LS0tIHRlc3RpbmcvdW5pdC90ZXN0X3N0YXRpc3RpY3MucHkKKysrKyB0ZXN0aW5nL3VuaXQvdGVz dF9zdGF0aXN0aWNzLnB5CitAQCAtNTMsNDEgKzUzLDYgQEAgY2xhc3MgU3RhdHNPYmpUZXN0KFVu aXRUZXN0Q2FzZSk6CisgICAgICAgICBzLlN0YXJ0VGltZSA9IDEzCisgICAgICAgICBzLkVuZFRp bWUgPSAxNAorIAorLSAgICBkZWYgdGVzdF9nZXRfc3RhdHMoc2VsZik6CistICAgICAgICB1IiIi VGVzdCByZWFkaW5nIGFuZCB3cml0aW5nIHN0YXQgb2JqZWN0cyIiIgorLSAgICAgICAgcyA9IFN0 YXRzT2JqKCkKKy0gICAgICAgIGFzc2VydCBzLmdldF9zdGF0KHUnU291cmNlRmlsZXMnKSBpcyBO b25lCistICAgICAgICBzZWxmLnNldF9vYmoocykKKy0gICAgICAgIGFzc2VydCBzLmdldF9zdGF0 KHUnU291cmNlRmlsZXMnKSA9PSAxCistCistICAgICAgICBzMSA9IFN0YXRzRGVsdGFQcm9jZXNz KCkKKy0gICAgICAgIGFzc2VydCBzMS5nZXRfc3RhdCh1J1NvdXJjZUZpbGVzJykgPT0gMAorLQor LSAgICBkZWYgdGVzdF9nZXRfc3RhdHNfc3RyaW5nKHNlbGYpOgorLSAgICAgICAgdSIiIlRlc3Qg Y29udmVyc2lvbiBvZiBzdGF0IG9iamVjdCBpbnRvIHN0cmluZyIiIgorLSAgICAgICAgcyA9IFN0 YXRzT2JqKCkKKy0gICAgICAgIHN0YXRzX3N0cmluZyA9IHMuZ2V0X3N0YXRzX3N0cmluZygpCist ICAgICAgICBhc3NlcnQgc3RhdHNfc3RyaW5nID09IHUiIiwgc3RhdHNfc3RyaW5nCistCistICAg ICAgICBzZWxmLnNldF9vYmoocykKKy0gICAgICAgIHN0YXRzX3N0cmluZyA9IHMuZ2V0X3N0YXRz X3N0cmluZygpCistICAgICAgICBhc3NlcnQgc3RhdHNfc3RyaW5nID09IHUiIiJcCistU3RhcnRU aW1lIDEzLjAwIChXZWQgRGVjIDMxIDE4OjAwOjEzIDE5NjkpCistRW5kVGltZSAxNC4wMCAoV2Vk IERlYyAzMSAxODowMDoxNCAxOTY5KQorLUVsYXBzZWRUaW1lIDEuMDAgKDEgc2Vjb25kKQorLVNv dXJjZUZpbGVzIDEKKy1Tb3VyY2VGaWxlU2l6ZSAyICgyIGJ5dGVzKQorLU5ld0ZpbGVzIDMKKy1O ZXdGaWxlU2l6ZSA0ICg0IGJ5dGVzKQorLURlbGV0ZWRGaWxlcyA1CistQ2hhbmdlZEZpbGVzIDcK Ky1DaGFuZ2VkRmlsZVNpemUgOCAoOCBieXRlcykKKy1DaGFuZ2VkRGVsdGFTaXplIDkgKDkgYnl0 ZXMpCistRGVsdGFFbnRyaWVzIDEwCistUmF3RGVsdGFTaXplIDExICgxMSBieXRlcykKKy1Ub3Rh bERlc3RpbmF0aW9uU2l6ZUNoYW5nZSAxMiAoMTIgYnl0ZXMpCistIiIiLCB1IiclcyciICUgc3Rh dHNfc3RyaW5nCistCisgICAgIGRlZiB0ZXN0X2xpbmVfc3RyaW5nKHNlbGYpOgorICAgICAgICAg dSIiIlRlc3QgY29udmVyc2lvbiB0byBhIHNpbmdsZSBsaW5lIiIiCisgICAgICAgICBzID0gU3Rh dHNPYmooKQorLS0gCisyLjIzLjAKKwpkaWZmIC0tZ2l0IGEvc3JjcGtncy9kdXBsaWNpdHkvcGF0 Y2hlcy9yZW1vdmUtZmFpbGluZy10ZXN0LnBhdGNoIGIvc3JjcGtncy9kdXBsaWNpdHkvcGF0Y2hl cy9yZW1vdmUtZmFpbGluZy10ZXN0LnBhdGNoCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRl eCBjYzlmM2VjOGYxYi4uMDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtncy9kdXBsaWNpdHkvcGF0Y2hl cy9yZW1vdmUtZmFpbGluZy10ZXN0LnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEsMzQgKzAsMCBA QAotLS0tIHRlc3RpbmcvdW5pdC90ZXN0X3N0YXRpc3RpY3MucHkKLSsrKyB0ZXN0aW5nL3VuaXQv dGVzdF9zdGF0aXN0aWNzLnB5Ci1AQCAtNTksMzEgKzU5LDYgQEAgY2xhc3MgU3RhdHNPYmpUZXN0 KFVuaXRUZXN0Q2FzZSk6Ci0gICAgICAgICBzMSA9IFN0YXRzRGVsdGFQcm9jZXNzKCkKLSAgICAg ICAgIGFzc2VydCBzMS5nZXRfc3RhdCgnU291cmNlRmlsZXMnKSA9PSAwCi0gCi0tICAgIGRlZiB0 ZXN0X2dldF9zdGF0c19zdHJpbmcoc2VsZik6Ci0tICAgICAgICAiIiJUZXN0IGNvbnZlcnNpb24g b2Ygc3RhdCBvYmplY3QgaW50byBzdHJpbmciIiIKLS0gICAgICAgIHMgPSBTdGF0c09iaigpCi0t ICAgICAgICBzdGF0c19zdHJpbmcgPSBzLmdldF9zdGF0c19zdHJpbmcoKQotLSAgICAgICAgYXNz ZXJ0IHN0YXRzX3N0cmluZyA9PSAiIiwgc3RhdHNfc3RyaW5nCi0tCi0tICAgICAgICBzZWxmLnNl dF9vYmoocykKLS0gICAgICAgIHN0YXRzX3N0cmluZyA9IHMuZ2V0X3N0YXRzX3N0cmluZygpCi0t ICAgICAgICBhc3NlcnQgc3RhdHNfc3RyaW5nID09ICIiIlwKLS1TdGFydFRpbWUgMTMuMDAgKFdl ZCBEZWMgMzEgMTg6MDA6MTMgMTk2OSkKLS1FbmRUaW1lIDE0LjAwIChXZWQgRGVjIDMxIDE4OjAw OjE0IDE5NjkpCi0tRWxhcHNlZFRpbWUgMS4wMCAoMSBzZWNvbmQpCi0tU291cmNlRmlsZXMgMQot LVNvdXJjZUZpbGVTaXplIDIgKDIgYnl0ZXMpCi0tTmV3RmlsZXMgMwotLU5ld0ZpbGVTaXplIDQg KDQgYnl0ZXMpCi0tRGVsZXRlZEZpbGVzIDUKLS1DaGFuZ2VkRmlsZXMgNwotLUNoYW5nZWRGaWxl U2l6ZSA4ICg4IGJ5dGVzKQotLUNoYW5nZWREZWx0YVNpemUgOSAoOSBieXRlcykKLS1EZWx0YUVu dHJpZXMgMTAKLS1SYXdEZWx0YVNpemUgMTEgKDExIGJ5dGVzKQotLVRvdGFsRGVzdGluYXRpb25T aXplQ2hhbmdlIDEyICgxMiBieXRlcykKLS0iIiIsICInJXMnIiAlIHN0YXRzX3N0cmluZwotLQot ICAgICBkZWYgdGVzdF9saW5lX3N0cmluZyhzZWxmKToKLSAgICAgICAgICIiIlRlc3QgY29udmVy c2lvbiB0byBhIHNpbmdsZSBsaW5lIiIiCi0gICAgICAgICBzID0gU3RhdHNPYmooKQpkaWZmIC0t Z2l0IGEvc3JjcGtncy9kdXBsaWNpdHkvdGVtcGxhdGUgYi9zcmNwa2dzL2R1cGxpY2l0eS90ZW1w bGF0ZQppbmRleCBjNWIwM2ZhYTUzYy4uNDRkOTVjZTc4NjYgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3Mv ZHVwbGljaXR5L3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZHVwbGljaXR5L3RlbXBsYXRlCkBAIC0x LDEyICsxLDEyIEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdkdXBsaWNpdHknCiBwa2duYW1lPWR1 cGxpY2l0eQotdmVyc2lvbj0wLjcuMTkKK3ZlcnNpb249MC44LjA1CiByZXZpc2lvbj0xCiBidWls ZF9zdHlsZT1weXRob24yLW1vZHVsZQogcHljb21waWxlX21vZHVsZT0iZHVwbGljaXR5IgogaG9z dG1ha2VkZXBlbmRzPSJweXRob24tc2V0dXB0b29scyIKIG1ha2VkZXBlbmRzPSJweXRob24tZGV2 ZWwgbGlicnN5bmMtZGV2ZWwiCi1kZXBlbmRzPSJweXRob24tZmFzdGVuZXJzIGdudXBnIgorZGVw ZW5kcz0icHl0aG9uLWZhc3RlbmVycyBnbnVwZyBweXRob24tZnV0dXJlIgogY2hlY2tkZXBlbmRz PSJweXRob24tcGV4cGVjdCBweXRob24tbW9jayBweXRob24tZmFzdGVuZXJzIGdudXBnIHBhcjJj bWRsaW5lIgogc2hvcnRfZGVzYz0iRW5jcnlwdGVkIGJhbmR3aWR0aC1lZmZpY2llbnQgYmFja3Vw IHVzaW5nIHRoZSByc3luYyBhbGdvcml0aG0iCiBtYWludGFpbmVyPSJPcnBoYW5lZCA8b3JwaGFu QHZvaWRsaW51eC5vcmc+IgpAQCAtMTQsNyArMTQsNyBAQCBsaWNlbnNlPSJHUEwtMi4wLW9yLWxh dGVyIgogaG9tZXBhZ2U9Imh0dHA6Ly9kdXBsaWNpdHkubm9uZ251Lm9yZy8iCiBjaGFuZ2Vsb2c9 Imh0dHA6Ly9kdXBsaWNpdHkubm9uZ251Lm9yZy9DSEFOR0VMT0ciCiBkaXN0ZmlsZXM9Imh0dHA6 Ly9jb2RlLmxhdW5jaHBhZC5uZXQvZHVwbGljaXR5LyR7dmVyc2lvbiUuKn0tc2VyaWVzLyR7dmVy c2lvbn0vK2Rvd25sb2FkL2R1cGxpY2l0eS0ke3ZlcnNpb259LnRhci5neiIKLWNoZWNrc3VtPWE2 YWE5MDVhNjNkZjUxMDExOTNkM2U4ZmQ0ZmZkZjM1YWNiOTMwN2IxODRhYzdhOWQ2OGE3NmFhZWQ2 Y2U5MjkKK2NoZWNrc3VtPTA2NDY3MmNmNDkyMDAzZmYwNWYyZDdjYTg0OTNkMTJhZjg2ZGUwNmFh MWM2MGQ3N2FjOGRkNzRiMmRhMzExMWQKIAogcG9zdF9leHRyYWN0KCkgewogCWNobW9kIDA2NDQg YmluLyouMQoKRnJvbSBhYzA5MWVjZDY1OTY3NjkwYzQ4ODRkZmY0ZGQ5NDNhOGJiNjgxNTE1IE1v biBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBOYXRoYW4gT3dlbnMgPG5kb3dlbnMwNEBnbWFp bC5jb20+CkRhdGU6IFR1ZSwgMjkgT2N0IDIwMTkgMjA6MjQ6MDggLTA1MDAKU3ViamVjdDogW1BB VENIIDE3Ni8xODZdIGN1cHMtZmlsdGVyOiB1cGRhdGUgdG8gMS4yNS4xMQoKLS0tCiBzcmNwa2dz L2N1cHMtZmlsdGVycy90ZW1wbGF0ZSB8IDYgKysrLS0tCiAxIGZpbGUgY2hhbmdlZCwgMyBpbnNl cnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvY3Vwcy1maWx0 ZXJzL3RlbXBsYXRlIGIvc3JjcGtncy9jdXBzLWZpbHRlcnMvdGVtcGxhdGUKaW5kZXggZGY3ZGFi YTNhNWUuLjNkZGRjNDZiNjJmIDEwMDY0NAotLS0gYS9zcmNwa2dzL2N1cHMtZmlsdGVycy90ZW1w bGF0ZQorKysgYi9zcmNwa2dzL2N1cHMtZmlsdGVycy90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAK ICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2N1cHMtZmlsdGVycycKIHBrZ25hbWU9Y3Vwcy1maWx0ZXJz Ci12ZXJzaW9uPTEuMjUuMTAKLXJldmlzaW9uPTIKK3ZlcnNpb249MS4yNS4xMQorcmV2aXNpb249 MQogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQogY29uZmlndXJlX2FyZ3M9Ii0tZGlzYWJsZS1z dGF0aWMgLS13aXRoLXJjZGlyPW5vIC0tZW5hYmxlLWF2YWhpCiAgLS13aXRoLWJyb3dzZXJlbW90 ZXByb3RvY29scz1ETlNTRCxDVVBTCkBAIC0xOCw3ICsxOCw3IEBAIG1haW50YWluZXI9Ik9ycGhh bmVkIDxvcnBoYW5Adm9pZGxpbnV4Lm9yZz4iCiBsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyLCBM R1BMLTIuMS1vci1sYXRlciwgTUlUIgogaG9tZXBhZ2U9Imh0dHBzOi8vd2lraS5saW51eGZvdW5k YXRpb24ub3JnL29wZW5wcmludGluZy9jdXBzLWZpbHRlcnMiCiBkaXN0ZmlsZXM9Imh0dHA6Ly9v cGVucHJpbnRpbmcub3JnL2Rvd25sb2FkL2N1cHMtZmlsdGVycy8ke3BrZ25hbWV9LSR7dmVyc2lv bn0udGFyLnh6IgotY2hlY2tzdW09NDMzOGRjMzE0NTU4Zjc5NmFiNTE2OWE5OTQ0MGNjNGZjNGQ2 NWRmMzM4NzhkZGRjMTUyNWY3ZmU1NjgzYTQ1YgorY2hlY2tzdW09YjAzYjEwNDFlYWUzYjkxYzk4 YzUzMTAyZDliN2JjZmEwNWQyNTgwMDI0ZDkxZGU5MThhOGI4NGM3MjllMjg1YQogCiBsaWIzMmRp c2FibGVkPXllcwogCgpGcm9tIDI2MzVjMmI2MThhMjc3M2U4MmNiNDU3ODYwN2I3OGZmZjk1ZTY3 ZDUgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE5hdGhhbiBPd2VucyA8bmRvd2VuczA0 QGdtYWlsLmNvbT4KRGF0ZTogVHVlLCAyOSBPY3QgMjAxOSAyMToxNjo0MiAtMDUwMApTdWJqZWN0 OiBbUEFUQ0ggMTc3LzE4Nl0gZmFjdGVyOiB1cGRhdGUgdG8gMy4xNC41CgotLS0KIHNyY3BrZ3Mv ZmFjdGVyL3RlbXBsYXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25zKCsp LCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZmFjdGVyL3RlbXBsYXRlIGIv c3JjcGtncy9mYWN0ZXIvdGVtcGxhdGUKaW5kZXggOWRjOWRiZmI0ZGIuLjllMWYxMjJiZjk3IDEw MDY0NAotLS0gYS9zcmNwa2dzL2ZhY3Rlci90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2ZhY3Rlci90 ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2ZhY3RlcicKIHBr Z25hbWU9ZmFjdGVyCi12ZXJzaW9uPTMuMTQuMgordmVyc2lvbj0zLjE0LjUKIHJldmlzaW9uPTEK IGJ1aWxkX3N0eWxlPWNtYWtlCiBjb25maWd1cmVfYXJncz0iLURSVUJZX0NPTkZJR19JTkNMVURF X0RJUj0ke1hCUFNfQ1JPU1NfQkFTRX0vdXNyL2luY2x1ZGUKQEAgLTE0LDcgKzE0LDcgQEAgbWFp bnRhaW5lcj0iT3JwaGFuZWQgPG9ycGhhbkB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkFwYWNo ZS0yLjAiCiBob21lcGFnZT0iaHR0cHM6Ly9wdXBwZXRsYWJzLmNvbS9mYWN0ZXIiCiBkaXN0Zmls ZXM9Imh0dHBzOi8vZG93bmxvYWRzLnB1cHBldGxhYnMuY29tLyR7cGtnbmFtZX0vJHtwa2duYW1l fS0ke3ZlcnNpb259LnRhci5neiIKLWNoZWNrc3VtPWQ0M2NjOTg4Mzg5ZWJmY2ZlMjRlNWM1ZGRj ZTcwOWI4NGRiYWE1NDBhNjcxNDI2MmU5NDQ1ZTYxZDhjMWM3YzAKK2NoZWNrc3VtPWNiODkwNmZl NzExZjJiYzJhNzk3ZDcxNjY3YjI0ZTIyMDM0MGYzNmU1OThhNzlhNTc5NTNkNTQ4ZWExODliNWMK IAogcHJlX2NvbmZpZ3VyZSgpIHsKIAljYXNlICIkWEJQU19UQVJHRVRfTUFDSElORSIgaW4KCkZy b20gOGFhMGVkNGFiMTNiOTYzYTM2ODgwNzgzZTU3Yjc3MTc5MDc2YjUxZiBNb24gU2VwIDE3IDAw OjAwOjAwIDIwMDEKRnJvbTogTmF0aGFuIE93ZW5zIDxuZG93ZW5zMDRAZ21haWwuY29tPgpEYXRl OiBUdWUsIDI5IE9jdCAyMDE5IDE4OjE3OjUyIC0wNTAwClN1YmplY3Q6IFtQQVRDSCAxNzgvMTg2 XSBjZ2RiOiB1cGRhdGUgdG8gMC43LjEKClJlbW92ZWQgcGF0Y2gsIGlzIG5vdyBwYXJ0IG9mIHRo aXMgcmVsZWFzZQotLS0KIHNyY3BrZ3MvY2dkYi9wYXRjaGVzL2ZpeC1tZW1vcnktbGVhay5wYXRj aCB8IDE4IC0tLS0tLS0tLS0tLS0tLS0tLQogc3JjcGtncy9jZ2RiL3RlbXBsYXRlICAgICAgICAg ICAgICAgICAgICAgIHwgMTAgKysrKy0tLS0tLQogMiBmaWxlcyBjaGFuZ2VkLCA0IGluc2VydGlv bnMoKyksIDI0IGRlbGV0aW9ucygtKQogZGVsZXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvY2dkYi9w YXRjaGVzL2ZpeC1tZW1vcnktbGVhay5wYXRjaAoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvY2dkYi9w YXRjaGVzL2ZpeC1tZW1vcnktbGVhay5wYXRjaCBiL3NyY3BrZ3MvY2dkYi9wYXRjaGVzL2ZpeC1t ZW1vcnktbGVhay5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNzdhM2JlMDg5 MjIuLjAwMDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3MvY2dkYi9wYXRjaGVzL2ZpeC1tZW1vcnktbGVh ay5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDE4ICswLDAgQEAKLS0tLSBsaWIvdGdkYi90Z2Ri LmNwcC5vcmlnCTIwMTgtMTItMzAgMTM6MjM6MjMuMjYwNjU2NjkwIC0wNjAwCi0rKysgbGliL3Rn ZGIvdGdkYi5jcHAJMjAxOC0xMi0zMCAxMzoyNDozMy40ODQ2NTUyNzYgLTA2MDAKLUBAIC0xMDM5 LDExICsxMDM5LDE0IEBACi0gICAgICAgICAgICAgICAgICAgICByZXF1ZXN0LT5jaG9pY2UuZGVi dWdnZXJfY29tbWFuZC5jKTsKLSAgICAgICAgICAgICBicmVhazsKLSAgICAgICAgIGNhc2UgVEdE Ql9SRVFVRVNUX01PRElGWV9CUkVBS1BPSU5UOgotLSAgICAgICAgICAgIGNvbW1hbmQgPSB0Z2Ri X2NsaWVudF9tb2RpZnlfYnJlYWtwb2ludF9jYWxsKHRnZGIsCi0rICAgICAgICAgICAgc3RyID0g dGdkYl9jbGllbnRfbW9kaWZ5X2JyZWFrcG9pbnRfY2FsbCh0Z2RiLAotICAgICAgICAgICAgICAg ICAgICAgcmVxdWVzdC0+Y2hvaWNlLm1vZGlmeV9icmVha3BvaW50LmZpbGUsCi0gICAgICAgICAg ICAgICAgICAgICByZXF1ZXN0LT5jaG9pY2UubW9kaWZ5X2JyZWFrcG9pbnQubGluZSwKLSAgICAg ICAgICAgICAgICAgICAgIHJlcXVlc3QtPmNob2ljZS5tb2RpZnlfYnJlYWtwb2ludC5hZGRyLAot ICAgICAgICAgICAgICAgICAgICAgcmVxdWVzdC0+Y2hvaWNlLm1vZGlmeV9icmVha3BvaW50LmIp OwotKyAgICAgICAgICAgIGNvbW1hbmQgPSBzdHI7Ci0rICAgICAgICAgICAgZnJlZShzdHIpOwot KyAgICAgICAgICAgIHN0ciA9IE5VTEw7Ci0gICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgICBj YXNlIFRHREJfUkVRVUVTVF9DT01QTEVURToKLSAgICAgICAgICAgICBzdHIgPSBzeXNfYXByaW50 Zigic2VydmVyIGludGVycHJldGVyLWV4ZWMgbWkiCmRpZmYgLS1naXQgYS9zcmNwa2dzL2NnZGIv dGVtcGxhdGUgYi9zcmNwa2dzL2NnZGIvdGVtcGxhdGUKaW5kZXggODg0M2Y2ZDhmNzUuLmRjZGQ3 YTk3YTNlIDEwMDY0NAotLS0gYS9zcmNwa2dzL2NnZGIvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9j Z2RiL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnY2dkYicK IHBrZ25hbWU9Y2dkYgotdmVyc2lvbj0wLjcuMAotcmV2aXNpb249MwordmVyc2lvbj0wLjcuMQor cmV2aXNpb249MQogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQogY29uZmlndXJlX2FyZ3M9ImFj X2N2X3JsX3ZlcnNpb249Ni4zCiAgYWNfY3ZfZmlsZV9fcHJvY19zZWxmX3N0YXR1cz15ZXMiCkBA IC0xMCw5ICsxMCw3IEBAIG1ha2VkZXBlbmRzPSJuY3Vyc2VzLWRldmVsIHJlYWRsaW5lLWRldmVs IgogZGVwZW5kcz0iZ2RiIgogc2hvcnRfZGVzYz0iQ3Vyc2VzLWJhc2VkIGludGVyZmFjZSB0byB0 aGUgR05VIERlYnVnZ2VyIgogbWFpbnRhaW5lcj0iT3JwaGFuZWQgPG9ycGhhbkB2b2lkbGludXgu b3JnPiIKLWxpY2Vuc2U9IkdQTC0yIgorbGljZW5zZT0iR1BMLTIuMC1vbmx5IgogaG9tZXBhZ2U9 Imh0dHA6Ly9jZ2RiLnNvdXJjZWZvcmdlLm5ldCIKIGRpc3RmaWxlcz0iaHR0cDovL2NnZGIubWUv ZmlsZXMvY2dkYi0ke3ZlcnNpb259LnRhci5neiIKLWNoZWNrc3VtPWJmN2E5MjY0NjY4ZGIzZjkz NDI1OTFiMDhiMmNjM2JiYjA4ZTIzNWJhMjM3Mjg3N2I0NjUwYjcwYzZmYjU0MjMKLQotbm9jcm9z cz0iY2hlY2tpbmcgQ2hlY2tpbmcgYXR0cmlidXRlIHByaW50ZiBzdXBwb3J0Li4uIGNhbm5vdCBy dW4gdGVzdCBwcm9ncmFtIHdoaWxlIGNyb3NzIGNvbXBpbGluZyIKK2NoZWNrc3VtPWJiNzIzYmU1 OGVjNjhjYjU5YTU5OGI4ZTI0YTMxZDEwZWYzMWUwZTljMjc3YTRkZTA3YjJmNDU3ZmU3ZGUxOTgK CkZyb20gNjQ0OGE1ODZmNzMyYzcwZjBiOTBiNGRhZTVjM2MzNWQ1NGE2M2U4NSBNb24gU2VwIDE3 IDAwOjAwOjAwIDIwMDEKRnJvbTogTmF0aGFuIE93ZW5zIDxuZG93ZW5zMDRAZ21haWwuY29tPgpE YXRlOiBUdWUsIDI5IE9jdCAyMDE5IDE3OjEzOjA0IC0wNTAwClN1YmplY3Q6IFtQQVRDSCAxNzkv MTg2XSB5YXJuOiB1cGRhdGUgdG8gMS4xOS4xCgotLS0KIHNyY3BrZ3MveWFybi90ZW1wbGF0ZSB8 IDQgKystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkK CmRpZmYgLS1naXQgYS9zcmNwa2dzL3lhcm4vdGVtcGxhdGUgYi9zcmNwa2dzL3lhcm4vdGVtcGxh dGUKaW5kZXggNjk1ZDdkMzRlYjkuLjE5ZmVjOTU4MjJmIDEwMDY0NAotLS0gYS9zcmNwa2dzL3lh cm4vdGVtcGxhdGUKKysrIGIvc3JjcGtncy95YXJuL3RlbXBsYXRlCkBAIC0xLDYgKzEsNiBAQAog IyBUZW1wbGF0ZSBmaWxlIGZvciAneWFybicKIHBrZ25hbWU9eWFybgotdmVyc2lvbj0xLjE3LjMK K3ZlcnNpb249MS4xOS4xCiByZXZpc2lvbj0xCiBob3N0bWFrZWRlcGVuZHM9Inlhcm4tYmluIG5v ZGVqcyIKIGRlcGVuZHM9InZpcnR1YWw/bm9kZWpzLXJ1bnRpbWUiCkBAIC05LDcgKzksNyBAQCBt YWludGFpbmVyPSJNaWNoYWVsIEFsZHJpZGdlIDxtYWxkcmlkZ2VAdm9pZGxpbnV4Lm9yZz4iCiBs aWNlbnNlPSJCU0QtMi1DbGF1c2UiCiBob21lcGFnZT0iaHR0cHM6Ly95YXJucGtnLmNvbS8iCiBk aXN0ZmlsZXM9Imh0dHBzOi8vZ2l0aHViLmNvbS95YXJucGtnLyR7cGtnbmFtZX0vYXJjaGl2ZS92 JHt2ZXJzaW9ufS50YXIuZ3oiCi1jaGVja3N1bT0yYmJhMWE2M2Q0MzQ4ZmU0NDMyZjRjZWU2ZGMz OTExYjk4YTRmZWYxNWFjN2YyMjdiOTFiMTM5MTM3YWMwM2FmCitjaGVja3N1bT00OWY4Y2ExZWUw NDFhZjI1NWZiOTk5YjAyYjNmOGY3YWQ5NzUyMTJkNTU2MjlmYmFiOTQ4NzcxYThkZDU0OGY0CiAK IGNvbmZsaWN0cz0ieWFybi1iaW4+PTAiCiAKCkZyb20gMzA2NTA0NWFlMjhkNGNjYTQ5NjE1ZmNj YjExMDJjZmNhMjdlZWQ1ZSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmF0aGFuIE93 ZW5zIDxuZG93ZW5zMDRAZ21haWwuY29tPgpEYXRlOiBUdWUsIDI5IE9jdCAyMDE5IDE1OjMyOjA0 IC0wNTAwClN1YmplY3Q6IFtQQVRDSCAxODAvMTg2XSBjZ3JlcDogdXBkYXRlIHRvIDYuNi4zMAoK LS0tCiBzcmNwa2dzL2NncmVwL3RlbXBsYXRlIHwgNiArKystLS0KIDEgZmlsZSBjaGFuZ2VkLCAz IGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9jZ3Jl cC90ZW1wbGF0ZSBiL3NyY3BrZ3MvY2dyZXAvdGVtcGxhdGUKaW5kZXggNDcxYWE1MTI0NmUuLjcy OWM2MTY3ZjMxIDEwMDY0NAotLS0gYS9zcmNwa2dzL2NncmVwL3RlbXBsYXRlCisrKyBiL3NyY3Br Z3MvY2dyZXAvdGVtcGxhdGUKQEAgLTEsOCArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdj Z3JlcCcKIHBrZ25hbWU9Y2dyZXAKLXZlcnNpb249Ni42LjI4Cit2ZXJzaW9uPTYuNi4zMAogcmV2 aXNpb249MQotbm9jcm9zcz15ZXMKIGJ1aWxkX3N0eWxlPWhhc2tlbGwtc3RhY2sKIHN0YWNrYWdl PSJsdHMtMTMuMzAiCiBtYWtlZGVwZW5kcz0icGNyZS1kZXZlbCIKQEAgLTExLDYgKzEwLDcgQEAg bWFpbnRhaW5lcj0iT3JwaGFuZWQgPG9ycGhhbkB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkdQ TC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6Ly9hd2duLmdpdGh1Yi5pby9jZ3JlcC8i CiBkaXN0ZmlsZXM9Imh0dHBzOi8vZ2l0aHViLmNvbS9hd2duL2NncmVwL2FyY2hpdmUvdiR7dmVy c2lvbn0udGFyLmd6IgotY2hlY2tzdW09MDJlZjIwMThkNzNjOTg2MDgzNDAxNDY3MDFhN2U4Yzg0 ZTYyOTczMjQ4N2ZjOWRhYjE3MmQ3NzBkNDI2ZTM1MAorY2hlY2tzdW09YjdhZWZlMmQ1YjBhYmMx ZmI4MTQzZmUxZTZmYWVkNjM2ZTJiNGViNTE5OGFkMWQxZjdmNmRiNTEyMWEzN2RhMworbm9jcm9z cz15ZXMKIG5vcGllX2ZpbGVzPSIvdXNyL2Jpbi9jZ3JlcCIKIGNvbmZsaWN0cz0iY29kZXNlYXJj aCIKCkZyb20gN2Y3ZGM3NmQ5MjY4YmI0MDAxOWI3ODllOTYzZGQzOWQ0ODJjMzA0NyBNb24gU2Vw IDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmF0aGFuIE93ZW5zIDxuZG93ZW5zMDRAZ21haWwuY29t PgpEYXRlOiBUdWUsIDI5IE9jdCAyMDE5IDE1OjUxOjU5IC0wNTAwClN1YmplY3Q6IFtQQVRDSCAx ODEvMTg2XSB0dXJib3ZuYzogdXBkYXRlIHRvIDIuMi4zCgpJbmNsdWRlcyBmaXggZm9yIENWRS0y MDE5LTE1NjgzCi0tLQogc3JjcGtncy90dXJib3ZuYy90ZW1wbGF0ZSB8IDQgKystLQogMSBmaWxl IGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9z cmNwa2dzL3R1cmJvdm5jL3RlbXBsYXRlIGIvc3JjcGtncy90dXJib3ZuYy90ZW1wbGF0ZQppbmRl eCBhYmJlM2I4MmE5NC4uZDhlMmZlNmE1ZjcgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvdHVyYm92bmMv dGVtcGxhdGUKKysrIGIvc3JjcGtncy90dXJib3ZuYy90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAK ICMgVGVtcGxhdGUgZmlsZSBmb3IgJ3R1cmJvdm5jJwogcGtnbmFtZT10dXJib3ZuYwotdmVyc2lv bj0yLjIuMgordmVyc2lvbj0yLjIuMwogcmV2aXNpb249MQogYnVpbGRfc3R5bGU9Y21ha2UKIGNv bmZpZ3VyZV9hcmdzPSItRFRKUEVHX0xJQlJBUlk9L3Vzci9saWIvbGlidHVyYm9qcGVnLnNvIC1E VFZOQ19CVUlMREpBVkE9MApAQCAtMTQsNyArMTQsNyBAQCBtYWludGFpbmVyPSJPcnBoYW5lZCA8 b3JwaGFuQHZvaWRsaW51eC5vcmc+IgogbGljZW5zZT0iR1BMLTIuMC1vci1sYXRlciIKIGhvbWVw YWdlPSJodHRwOi8vdmlydHVhbGdsLm9yZyIKIGRpc3RmaWxlcz0iJHtTT1VSQ0VGT1JHRV9TSVRF fS90dXJib3ZuYy8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLmd6IgotY2hlY2tzdW09N2YxNTkz YTNkYjg4ZGM4MDBkMGY4MjA5MTI1MmNhMjkzYjE5ODBhMjg0MTdiOTgzNGNlNzEzZWI3ZTBkMDli YworY2hlY2tzdW09MWMzZGU1YWJjNjZiM2EyYzQ1ZmI3ZWM2Yzc1ZGRmNTQyNDExNTNlNTc3MGY3 ZDA1ZmZkMmRmZWY1ZDA4Njk4MQogCiBjb25mX2ZpbGVzPSIvZXRjLyouY29uZiIKIGFyY2hzPSJp Njg2KiB4ODZfNjQqIHBwYzY0KiIKCkZyb20gM2M5ZGQ5YzdjNGU3ZjBmOGYxNDA2NzRhMjVkNDI0 NDU5YjM0Y2Q5MSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTmF0aGFuIE93ZW5zIDxu ZG93ZW5zMDRAZ21haWwuY29tPgpEYXRlOiBUdWUsIDI5IE9jdCAyMDE5IDE1OjM4OjU2IC0wNTAw ClN1YmplY3Q6IFtQQVRDSCAxODIvMTg2XSBjcm9jOiB1cGRhdGUgdG8gNi4yLjAKCi0tLQogc3Jj cGtncy9jcm9jL3RlbXBsYXRlIHwgNCArKy0tCiAxIGZpbGUgY2hhbmdlZCwgMiBpbnNlcnRpb25z KCspLCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvY3JvYy90ZW1wbGF0ZSBi L3NyY3BrZ3MvY3JvYy90ZW1wbGF0ZQppbmRleCBiNWU1Nzg3ZmE4Yy4uZjY2MmQ2Mjk0MzkgMTAw NjQ0Ci0tLSBhL3NyY3BrZ3MvY3JvYy90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2Nyb2MvdGVtcGxh dGUKQEAgLTEsNiArMSw2IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdjcm9jJwogcGtnbmFtZT1j cm9jCi12ZXJzaW9uPTYuMS41Cit2ZXJzaW9uPTYuMi4wCiByZXZpc2lvbj0xCiBidWlsZF9zdHls ZT1nbwogZ29faW1wb3J0X3BhdGg9Z2l0aHViLmNvbS9zY2hvbGx6L2Nyb2MvdjYKQEAgLTEwLDcg KzEwLDcgQEAgbWFpbnRhaW5lcj0iT3JwaGFuZWQgPG9ycGhhbkB2b2lkbGludXgub3JnPiIKIGxp Y2Vuc2U9Ik1JVCIKIGhvbWVwYWdlPSJodHRwczovL2dpdGh1Yi5jb20vc2Nob2xsei9jcm9jIgog ZGlzdGZpbGVzPSJodHRwczovL2dpdGh1Yi5jb20vc2Nob2xsei9jcm9jL2FyY2hpdmUvdiR7dmVy c2lvbn0udGFyLmd6IgotY2hlY2tzdW09MjE2N2ZkNjZkMzAyMzVmMWM1MTY2MGRhYmE0OGY2MDk4 NGQ0NDM2Y2UwNTFlN2E1MTU3Yzk3MWQzNDg3MTI2NAorY2hlY2tzdW09YzMyMmVkMWJlOGNkNjZm YzY5YTZjY2NlYTE1YmE0Zjg3OTBlOTNhZTZkOWYzZjNjOTg4NGExY2Y4ZGM4NTVhYgogCiBwb3N0 X2luc3RhbGwoKSB7CiAJdmxpY2Vuc2UgTElDRU5TRQoKRnJvbSAzYzc0Yzg2MjMxZTg0YTlmNmU0 NzkyMDFmNDU5YmE4OThmNTIxYzhhIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBBbnRo b255IElsaW9wb3Vsb3MgPGFpbGlvcEBhbHRhdHVzLmNvbT4KRGF0ZTogVHVlLCAyOSBPY3QgMjAx OSAyMToxODozMyArMDEwMApTdWJqZWN0OiBbUEFUQ0ggMTgzLzE4Nl0gbHR0bmctbW9kdWxlcy1k a21zOiB1cGRhdGUgdG8gMi4xMS4wLgoKLS0tCiBzcmNwa2dzL2x0dG5nLW1vZHVsZXMtZGttcy90 ZW1wbGF0ZSB8IDcgKysrLS0tLQogMSBmaWxlIGNoYW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgNCBk ZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2x0dG5nLW1vZHVsZXMtZGttcy90ZW1w bGF0ZSBiL3NyY3BrZ3MvbHR0bmctbW9kdWxlcy1ka21zL3RlbXBsYXRlCmluZGV4IDM2MjU2YmVi YjgwLi42ZGY2OTQxZjUwMCAxMDA2NDQKLS0tIGEvc3JjcGtncy9sdHRuZy1tb2R1bGVzLWRrbXMv dGVtcGxhdGUKKysrIGIvc3JjcGtncy9sdHRuZy1tb2R1bGVzLWRrbXMvdGVtcGxhdGUKQEAgLTEs NiArMSw2IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdsdHRuZy1tb2R1bGVzLWRrbXMnCiBwa2du YW1lPWx0dG5nLW1vZHVsZXMtZGttcwotdmVyc2lvbj0yLjEwLjExCit2ZXJzaW9uPTIuMTEuMAog cmV2aXNpb249MQogd3Jrc3JjPSJsdHRuZy1tb2R1bGVzLSR7dmVyc2lvbn0iCiBkZXBlbmRzPSJk a21zIgpAQCAtOSw3ICs5LDcgQEAgbWFpbnRhaW5lcj0iQWxleGFuZGVyIEVnb3JlbmtvdiA8ZWdv cmVuYXItZGV2QHBvc3Rlby5uZXQ+IgogbGljZW5zZT0iTEdQTC0yLjEtb25seSwgR1BMLTIuMC1v bmx5LCBNSVQiCiBob21lcGFnZT0iaHR0cHM6Ly9sdHRuZy5vcmciCiBkaXN0ZmlsZXM9IiR7aG9t ZXBhZ2V9L2ZpbGVzL2x0dG5nLW1vZHVsZXMvbHR0bmctbW9kdWxlcy0ke3ZlcnNpb259LnRhci5i ejIiCi1jaGVja3N1bT03ZjkxZTM5YjJlOGU0NmQ4YmJiYTJiNGM4YzE2MTRmMWZiMzgwNjExY2Qx YTFmY2NjMWQxODU5YmUyNjExMmYxCitjaGVja3N1bT05OGFmOTJkOGMyZTAwZjRlYjYzYmM2Mzdh Njk2NzEwM2NmNjk5NzQzNDQ5M2YzNmU3YTUzNWE0OTFlNGZhZDVmCiAKIGRrbXNfbW9kdWxlcz0i bHR0bmctbW9kdWxlcyAke3ZlcnNpb259IgogCkBAIC0xNyw2ICsxNyw1IEBAIGRvX2luc3RhbGwo KSB7CiAJdm1rZGlyIHVzci9zcmMvbHR0bmctbW9kdWxlcy0ke3ZlcnNpb259CiAJdmNvcHkgIioi IHVzci9zcmMvbHR0bmctbW9kdWxlcy0ke3ZlcnNpb259CiAJdmNvcHkgJHtGSUxFU0RJUn0vZGtt cy5jb25mIHVzci9zcmMvbHR0bmctbW9kdWxlcy0ke3ZlcnNpb259Ci0KLQl2bGljZW5zZSBtaXQt bGljZW5zZS50eHQKKwl2bGljZW5zZSBMSUNFTlNFCiB9CgpGcm9tIDYyZjI0OGQ2MzA5MTg0MDll MTkzZTY2N2E4MWU0NTE2MGMyMjRiMTQgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IEFu dGhvbnkgSWxpb3BvdWxvcyA8YWlsaW9wQGFsdGF0dXMuY29tPgpEYXRlOiBUdWUsIDI5IE9jdCAy MDE5IDIxOjE3OjIzICswMTAwClN1YmplY3Q6IFtQQVRDSCAxODQvMTg2XSBsdHRuZy10b29sczog dXBkYXRlIHRvIDIuMTEuMC4KCi0tLQogc3JjcGtncy9sdHRuZy10b29scy90ZW1wbGF0ZSB8IDQg KystLQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRp ZmYgLS1naXQgYS9zcmNwa2dzL2x0dG5nLXRvb2xzL3RlbXBsYXRlIGIvc3JjcGtncy9sdHRuZy10 b29scy90ZW1wbGF0ZQppbmRleCA4YWE2NGY5YTUxZi4uMjQ0MTRjMGU5NjEgMTAwNjQ0Ci0tLSBh L3NyY3BrZ3MvbHR0bmctdG9vbHMvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9sdHRuZy10b29scy90 ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2x0dG5nLXRvb2xz JwogcGtnbmFtZT1sdHRuZy10b29scwotdmVyc2lvbj0yLjEwLjgKK3ZlcnNpb249Mi4xMS4wCiBy ZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCiBob3N0bWFrZWRlcGVuZHM9InBr Zy1jb25maWciCkBAIC0xMSw3ICsxMSw3IEBAIG1haW50YWluZXI9IkFsZXhhbmRlciBFZ29yZW5r b3YgPGVnb3JlbmFyLWRldkBwb3N0ZW8ubmV0PiIKIGxpY2Vuc2U9IkxHUEwtMi4xLW9ubHksIEdQ TC0yLjAtb25seSIKIGhvbWVwYWdlPSJodHRwczovL2x0dG5nLm9yZyIKIGRpc3RmaWxlcz0iJHto b21lcGFnZX0vZmlsZXMvJHtwa2duYW1lfS8ke3BrZ25hbWV9LSR7dmVyc2lvbn0udGFyLmJ6MiIK LWNoZWNrc3VtPTY2NGExMTQ1ZjlmZDdhNTc0ZGExOGFhM2RmYmJlOTc5ODM5ODVhNDcxY2EyOTky ZDZiMjcyZjFjZWJlNmIzMGQKK2NoZWNrc3VtPWRjZTQ5M2M4MmRiNjczYzk2MDQ5YjVmYWQxNTVh NzYwZmE0NDlmYWIzZDkyNDY3YTY5ZmNiMGRkYWYzZjBmYmMKIHN5c3RlbV9ncm91cHM9InRyYWNp bmciCiAKIGx0dG5nLXRvb2xzLWRldmVsX3BhY2thZ2UoKSB7CgpGcm9tIGUwNjFlMTRiODczNDAw NWYxZTdhZWE1NDA2M2VjM2IzMWU1YWI2MTYgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206 IEFudGhvbnkgSWxpb3BvdWxvcyA8YWlsaW9wQGFsdGF0dXMuY29tPgpEYXRlOiBUdWUsIDI5IE9j dCAyMDE5IDIxOjE2OjUwICswMTAwClN1YmplY3Q6IFtQQVRDSCAxODUvMTg2XSBsdHRuZy11c3Q6 IHVwZGF0ZSB0byAyLjExLjAuCgotLS0KIHNyY3BrZ3MvbHR0bmctdXN0L3RlbXBsYXRlIHwgNyAr KysrLS0tCiAxIGZpbGUgY2hhbmdlZCwgNCBpbnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQoK ZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbHR0bmctdXN0L3RlbXBsYXRlIGIvc3JjcGtncy9sdHRuZy11 c3QvdGVtcGxhdGUKaW5kZXggODdjNGVmNTU5MmUuLjVlNjMzOTM0M2FjIDEwMDY0NAotLS0gYS9z cmNwa2dzL2x0dG5nLXVzdC90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2x0dG5nLXVzdC90ZW1wbGF0 ZQpAQCAtMSwxNiArMSwxNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnbHR0bmctdXN0JwogcGtn bmFtZT1sdHRuZy11c3QKLXZlcnNpb249Mi4xMC41Cit2ZXJzaW9uPTIuMTEuMAogcmV2aXNpb249 MQogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQotbWFrZWRlcGVuZHM9ImxpYnVyY3UtZGV2ZWwi CittYWtlZGVwZW5kcz0ibGlidXJjdS1kZXZlbCBsaWJudW1hLWRldmVsIgorZGVwZW5kcz0ibGli bnVtYSIKIHNob3J0X2Rlc2M9Ikxvdy1vdmVyaGVhZCB0cmFjaW5nIGNhcGFiaWxpdGllcyBmb3Ig dXNlcnNwYWNlIgogbWFpbnRhaW5lcj0iU2ltb24gVGhvYnkgPHNpbW9udGhvYnlAbGl2ZS5mcj4i CiBsaWNlbnNlPSJMR1BMLTIuMS1vbmx5IgogaG9tZXBhZ2U9Imh0dHA6Ly9sdHRuZy5vcmciCiBj aGFuZ2Vsb2c9Imh0dHBzOi8vZ2l0aHViLmNvbS9sdHRuZy9sdHRuZy11c3QvcmF3L21hc3Rlci9D aGFuZ2VMb2ciCiBkaXN0ZmlsZXM9IiR7aG9tZXBhZ2V9L2ZpbGVzLyR7cGtnbmFtZX0vJHtwa2du YW1lfS0ke3ZlcnNpb259LnRhci5iejIiCi1jaGVja3N1bT0wNmY5ZWQ5YjIxOTg4NTViMWM3ZmNi ZjE1ZmU1NzI5N2VlMjU5NDA5ZmZhMWIzYmFkODczMjE0MTJkOThiYzM1CitjaGVja3N1bT02ODMy ODBjZmU1ZTEyMDIxZTY0YzMyY2VmOWVlYjAxMjhmMWYyM2RlYzMyYmEyOGFkYjVhMjA3NGJlMzdj NGQ4CiAKIGx0dG5nLXVzdC1kZXZlbF9wYWNrYWdlKCkgewogCWRlcGVuZHM9IiR7c291cmNlcGtn fT49JHt2ZXJzaW9ufV8ke3JldmlzaW9ufSBsaWJ1cmN1LWRldmVsIgoKRnJvbSBmMTdhM2IyYWFl MGE1ODgwYjkzOGIxN2QyODY5YmFhMGE1NTQzMWVjIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpG cm9tOiBBbnRob255IElsaW9wb3Vsb3MgPGFpbGlvcEBhbHRhdHVzLmNvbT4KRGF0ZTogVHVlLCAy OSBPY3QgMjAxOSAxMzo1OTo0MCArMDEwMApTdWJqZWN0OiBbUEFUQ0ggMTg2LzE4Nl0gbmRjdGw6 IHVwZGF0ZSB0byA2Ny4KCi0tLQogc3JjcGtncy9uZGN0bC90ZW1wbGF0ZSB8IDQgKystLQogMSBm aWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQg YS9zcmNwa2dzL25kY3RsL3RlbXBsYXRlIGIvc3JjcGtncy9uZGN0bC90ZW1wbGF0ZQppbmRleCBi ZTc4OTVkNzhlMy4uNDlkMTY3OTk0NzAgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvbmRjdGwvdGVtcGxh dGUKKysrIGIvc3JjcGtncy9uZGN0bC90ZW1wbGF0ZQpAQCAtMSw2ICsxLDYgQEAKICMgVGVtcGxh dGUgZmlsZSBmb3IgJ25kY3RsJwogcGtnbmFtZT1uZGN0bAotdmVyc2lvbj02NgordmVyc2lvbj02 NwogcmV2aXNpb249MQogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQogY29uZmlndXJlX2FyZ3M9 Ii0tZGlzYWJsZS1kb2NzIC0td2l0aG91dC1zeXN0ZW1kIgpAQCAtMTIsNyArMTIsNyBAQCBtYWlu dGFpbmVyPSJBbnRob255IElsaW9wb3Vsb3MgPGFpbGlvcEBhbHRhdHVzLmNvbT4iCiBsaWNlbnNl PSJMR1BMLTIuMS1vbmx5LCBHUEwtMi4wLW9ubHkiCiBob21lcGFnZT0iaHR0cHM6Ly9naXRodWIu Y29tL3BtZW0vbmRjdGwiCiBkaXN0ZmlsZXM9Imh0dHBzOi8vZ2l0aHViLmNvbS9wbWVtL25kY3Rs L2FyY2hpdmUvdiR7dmVyc2lvbn0udGFyLmd6IgotY2hlY2tzdW09YjJiMGNkNTQ2OGRlMjM1ZDNh ZThiYjNkZTczN2FiMmUxOGU4NTRlZWU1N2MzNjE4YzY0OGM2ZDdhYmQwMmU2MworY2hlY2tzdW09 MzJiNDk4ZTMzMzU3MGMzNDA0MDQxODQ3ODYxOTMxNmMxZTJhNTEzMzlkZGU1ZmMwMGEzODY0NDUz YjZlMmQ4MgogY29uZl9maWxlcz0iL2V0Yy9uZGN0bC9tb25pdG9yLmNvbmYiCiAKIGNhc2UgIiRY QlBTX1RBUkdFVF9NQUNISU5FIiBpbgo= --===============5998419318849698809==--