From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-1.0 required=5.0 tests=ALL_TRUSTED, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 19055 invoked from network); 13 Nov 2023 00:00:43 -0000 Received: from localhost (HELO inbox.vuxu.org) (::1) by localhost with ESMTPUTF8; 13 Nov 2023 00:00:43 -0000 Content-Type: multipart/mixed; boundary="===============4217895678376484960==" MIME-Version: 1.0 Subject: =?utf8?q?Re=3A_=5BPR_PATCH=5D_=5BUpdated=5D_exiv2=3A_update_to_0=2E28=2E1=2E?= To: ml@inbox.vuxu.org From: mhmdanas Reply-to: ml@inbox.vuxu.org In-Reply-To: References: Date: Mon, 13 Nov 2023 01:00:43 +0100 List-Id: Message-ID: <20231113000043.pIQj6t964TEOqcFDS4G5z1p__3mHaybt6zNhUxdf6Vg@z> GitHub notification mails are now in MIME to allow UTF8. --===============4217895678376484960== Content-Type: text/plain; charset="utf8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 VGhlcmUgaXMgYW4gdXBkYXRlZCBwdWxsIHJlcXVlc3QgYnkgbWhtZGFuYXMgYWdhaW5zdCBtYXN0 ZXIgb24gdGhlIHZvaWQtcGFja2FnZXMgcmVwb3NpdG9yeQoKaHR0cHM6Ly9naXRodWIuY29tL21o bWRhbmFzL3ZvaWQtcGFja2FnZXMgZXhpdjItMC4yOC4wCmh0dHBzOi8vZ2l0aHViLmNvbS92b2lk LWxpbnV4L3ZvaWQtcGFja2FnZXMvcHVsbC80NjgzOAoKZXhpdjI6IHVwZGF0ZSB0byAwLjI4LjEu CjwhLS0gVW5jb21tZW50IHJlbGV2YW50IHNlY3Rpb25zIGFuZCBkZWxldGUgb3B0aW9ucyB3aGlj aCBhcmUgbm90IGFwcGxpY2FibGUgLS0+DQoNCiMjIyMgVGVzdGluZyB0aGUgY2hhbmdlcw0KLSBJ IHRlc3RlZCB0aGUgY2hhbmdlcyBpbiB0aGlzIFBSOiAqKmJyaWVmbHkqKg0KDQpUT0RPOg0KLSBb eF0gRml4IGBnd2Vudmlld2AncyBmYWlsZWQgY2hlY2tzIChub3QgcmVhbGx5IGZpeGVkIGJ1dCB0 aGUgZXhhY3Qgc2FtZSB0ZXN0cyBmYWlsIG9uIG1hc3RlciBhcyB3ZWxsKQ0KLSBbeF0gYHRlc3Rf ZXhpdjJgIGZhaWxzIGZvciBgbGliZXh0cmFjdG9yYA0KLSBbeF0gYGtmaWxlbWV0YWRhdGE1YCB0 ZXN0cyBmYWlsIChzYW1lIHRlc3RzIGZhaWwgb24gbWFzdGVyKQ0KLSBbeF0gRml4IGBudWZyYXdg IGNyb3NzLWJ1aWxkDQotIFt4XSBgZGlnaWthbWAgZmFpbHMgdG8gYnVpbGQNCg0KQEpvaG5ueW5h dG9yIHVmcmF3IGhhcyBiZWVuIFt1bm1haW50YWluZWQgc2luY2UgRGVjZW1iZXIgMjAxNl0oaHR0 cHM6Ly9zb3VyY2Vmb3JnZS5uZXQvcC91ZnJhdy9kaXNjdXNzaW9uLzQzNDA2MC90aHJlYWQvMzBi NDI0OWIvKSwgYW5kIGl0IGRvZXNuJ3QgYnVpbGQgd2l0aCB0aGlzIFBSOyBoZXJlIGFyZSB0aGUg b3B0aW9uczoNCi0gcmVtb3ZlIHRoZSBwYWNrYWdlIGVudGlyZWx5DQotIHJlcGxhY2UgaXQgd2l0 aCB0aGUgbmV3ZXIgW251ZnJhd10oaHR0cHM6Ly9zb3VyY2Vmb3JnZS5uZXQvcHJvamVjdHMvbnVm cmF3LyksIHdoaWNoIGFscmVhZHkgaGFzIFthbiBleGl2IDAuMjgueCBwYXRjaCBmbG9hdGluZyBh cm91bmRdKGh0dHBzOi8vYXVyLmFyY2hsaW51eC5vcmcvY2dpdC9hdXIuZ2l0L3RyZWUvZXhpdjIt ZXJyb3IucGF0Y2g/aD1udWZyYXcpDQotIHBhdGNoIGl0IHRvIGJ1aWxkIHdpdGggdGhpcyBQUg0K DQpXaGF0IGRvIHlvdSB0aGluaz8gKGVkaXQ6IGBudWZyYXdgIG5vdyByZXBsYWNlcyBgdWZyYXdg IGluIHRoaXMgUFIpDQoNCjwhLS0NCiMjIyMgTmV3IHBhY2thZ2UNCi0gVGhpcyBuZXcgcGFja2Fn ZSBjb25mb3JtcyB0byB0aGUgW3BhY2thZ2UgcmVxdWlyZW1lbnRzXShodHRwczovL2dpdGh1Yi5j b20vdm9pZC1saW51eC92b2lkLXBhY2thZ2VzL2Jsb2IvbWFzdGVyL0NPTlRSSUJVVEl0ZXN0X2V4 aXYyTkcubWQjcGFja2FnZS1yZXF1aXJlbWVudHMpOiAqKllFUyoqfCoqTk8qKg0KLS0+DQoNCjwh LS0gTm90ZTogSWYgdGhlIGJ1aWxkIGlzIGxpa2VseSB0byB0YWtlIG1vcmUgdGhhbiAyIGhvdXJz LCBwbGVhc2UgYWRkIGNpIHNraXAgdGFnIGFzIGRlc2NyaWJlZCBpbg0KaHR0cHM6Ly9naXRodWIu Y29tL3ZvaWQtbGludXgvdm9pZC1wYWNrYWdlcy9ibG9iL21hc3Rlci9DT05UUklCVVRJTkcubWQj Y29udGludW91cy1pbnRlZ3JhdGlvbg0KYW5kIHRlc3QgYXQgbGVhc3Qgb25lIG5hdGl2ZSBidWls ZCBhbmQsIGlmIHN1cHBvcnRlZCwgYXQgbGVhc3Qgb25lIGNyb3NzIGJ1aWxkLg0KSWdub3JlIHRo aXMgc2VjdGlvbiBpZiB0aGlzIFBSIGlzIG5vdCBza2lwcGluZyBDSS4NCi0tPg0KPCEtLQ0KIyMj IyBMb2NhbCBidWlsZCB0ZXN0aW5nDQotIEkgYnVpbHQgdGhpcyBQUiBsb2NhbGx5IGZvciBteSBu YXRpdmUgYXJjaGl0ZWN0dXJlLCAoQVJDSC1MSUJDKQ0KLSBJIGJ1aWx0IHRoaXMgUFIgbG9jYWxs eSBmb3IgdGhlc2UgYXJjaGl0ZWN0dXJlcyAoaWYgc3VwcG9ydGVkLiBtYXJrIGNyb3NzYnVpbGRz KToNCiAgLSBhYXJjaDY0LW11c2wNCiAgLSBhcm12N2wNCiAgLSBhcm12NmwtbXVzbA0KLS0+DQoK CkEgcGF0Y2ggZmlsZSBmcm9tIGh0dHBzOi8vZ2l0aHViLmNvbS92b2lkLWxpbnV4L3ZvaWQtcGFj a2FnZXMvcHVsbC80NjgzOC5wYXRjaCBpcyBhdHRhY2hlZA== --===============4217895678376484960== Content-Type: text/x-diff MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="github-pr-exiv2-0.28.0-46838.patch" RnJvbSBhYWViNzU4NjA5ZDNjZTdlNTdkZTVmYmMzM2IxNGQzYTdhYWI4YmQ0IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBNb2hhbW1lZCBBbmFzIDx0cmlhbGxheEB0dXRhbm90YS5jb20+ CkRhdGU6IE1vbiwgMjMgT2N0IDIwMjMgMDE6MjA6MDkgKzAxMDAKU3ViamVjdDogW1BBVENIIDAx LzIyXSBpbmloOiBhZGQgYGxpYklOSVJlYWRlci5zby4wYCBjb21tb24vc2hsaWJzIGVudHJ5LgoK LS0tCiBjb21tb24vc2hsaWJzIHwgMSArCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKykK CmRpZmYgLS1naXQgYS9jb21tb24vc2hsaWJzIGIvY29tbW9uL3NobGlicwppbmRleCA2NDY0M2Y1 YjNjMDA5Li5kYmY0NmNmNGU1YzczIDEwMDY0NAotLS0gYS9jb21tb24vc2hsaWJzCisrKyBiL2Nv bW1vbi9zaGxpYnMKQEAgLTM5MDMsNiArMzkwMyw3IEBAIGxpYm5vdGN1cnNlcysrLnNvLjMgbm90 Y3Vyc2VzLTMuMC41XzEKIGxpYm5vdGN1cnNlcy1mZmkuc28uMyBub3RjdXJzZXMtMy4wLjVfMQog bGliZXZlbXUuc28uMyBldmVtdS0yLjcuMF8xCiBsaWJpbmloLnNvLjAgaW5paC01Ml8xCitsaWJJ TklSZWFkZXIuc28uMCBpbmloLTU3XzEKIGxpYnBjYXVkaW8uc28uMCBwY2F1ZGlvbGliLTEuMV8x CiBsaWJkY2VycGMtc2Ftci5zby4wIHNhbWJhLTQuMTMuMl8xCiBsaWJkY2VycGMtc2VydmVyLWNv cmUuc28uMCBzYW1iYS00LjEzLjJfMQoKRnJvbSA2ZGI1ZDM4NzIxOTY5YmJiOTI2ZWI5YTAxNjMw Y2JiMjVkYWQ4MmE2IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBNb2hhbW1lZCBBbmFz IDx0cmlhbGxheEB0dXRhbm90YS5jb20+CkRhdGU6IFdlZCwgMTggT2N0IDIwMjMgMTk6MTg6MTIg KzAxMDAKU3ViamVjdDogW1BBVENIIDAyLzIyXSBleGl2MjogdXBkYXRlIHRvIDAuMjguMS4KCi0t LQogY29tbW9uL3NobGlicyAgICAgICAgICB8ICAyICstCiBzcmNwa2dzL2V4aXYyL3RlbXBsYXRl IHwgMTggKysrKysrKysrKystLS0tLS0tCiAyIGZpbGVzIGNoYW5nZWQsIDEyIGluc2VydGlvbnMo KyksIDggZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvY29tbW9uL3NobGlicyBiL2NvbW1vbi9z aGxpYnMKaW5kZXggZGJmNDZjZjRlNWM3My4uYjY2ZTRmYWU1YmQ1OSAxMDA2NDQKLS0tIGEvY29t bW9uL3NobGlicworKysgYi9jb21tb24vc2hsaWJzCkBAIC01NTUsNyArNTU1LDcgQEAgbGliZ2lt cGNvbG9yLTIuMC5zby4wIGxpYmdpbXAtMi4xMC4wXzEKIGxpYmdpbXBtb2R1bGUtMi4wLnNvLjAg bGliZ2ltcC0yLjEwLjBfMQogbGliZ21pYy5zby4zIGdtaWMtMy4xLjZfMQogbGliY2dtaWMuc28u MyBnbWljLTMuMS42XzEKLWxpYmV4aXYyLnNvLjI3IGV4aXYyLTAuMjdfMQorbGliZXhpdjIuc28u MjggZXhpdjItMC4yOC4wXzEKIGxpYktGNUhvbGlkYXlzLnNvLjUga2hvbGlkYXlzLTUuNDcuMF8x CiBsaWJQaGFicmljYXRvckhlbHBlcnMuc28uNSBwdXJwb3NlLTUuNDguMF8xCiBsaWJLRjVQdXJw b3NlV2lkZ2V0cy5zby41IHB1cnBvc2UtNS40OC4wXzEKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZXhp djIvdGVtcGxhdGUgYi9zcmNwa2dzL2V4aXYyL3RlbXBsYXRlCmluZGV4IDQ5OTg1ZmU4MmNjMTQu LjQ1MTc5MDY1MjFiNGUgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZXhpdjIvdGVtcGxhdGUKKysrIGIv c3JjcGtncy9leGl2Mi90ZW1wbGF0ZQpAQCAtMSwxNyArMSwxNyBAQAogIyBUZW1wbGF0ZSBmaWxl IGZvciAnZXhpdjInCiBwa2duYW1lPWV4aXYyCi12ZXJzaW9uPTAuMjcuNgordmVyc2lvbj0wLjI4 LjEKIHJldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPWNtYWtlCiBjb25maWd1cmVfYXJncz0iLURFWElW Ml9CVUlMRF9TQU1QTEVTPU9GRiAtREVYSVYyX0VOQUJMRV9CTUZGPU9OIgotbWFrZWRlcGVuZHM9 InpsaWItZGV2ZWwgZXhwYXQtZGV2ZWwiCi1jaGVja2RlcGVuZHM9Imd0ZXN0LWRldmVsIgorbWFr ZWRlcGVuZHM9InpsaWItZGV2ZWwgYnJvdGxpLWRldmVsIGV4cGF0LWRldmVsIGluaWgtZGV2ZWwi CitjaGVja2RlcGVuZHM9Imd0ZXN0LWRldmVsIHB5dGhvbjMiCiBzaG9ydF9kZXNjPSJJbWFnZSBt ZXRhZGF0YSBtYW5pcHVsYXRpb24iCiBtYWludGFpbmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZv aWRsaW51eC5vcmc+IgogbGljZW5zZT0iR1BMLTIuMC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRw czovL3d3dy5leGl2Mi5vcmciCi1kaXN0ZmlsZXM9Imh0dHBzOi8vZ2l0aHViLmNvbS9FeGl2Mi9l eGl2Mi9yZWxlYXNlcy9kb3dubG9hZC92JHt2ZXJzaW9ufS9leGl2Mi0ke3ZlcnNpb259LVNvdXJj ZS50YXIuZ3oiCi1jaGVja3N1bT00YzE5MjQ4M2ExMTI1ZGM1OWEzZDcwYjMwZDMwZDMyZWRhY2U5 ZTE0YWRmNTI4MDJkMmY4NTNhYmY3MmRiOGE2CitkaXN0ZmlsZXM9Imh0dHBzOi8vZ2l0aHViLmNv bS9FeGl2Mi9leGl2Mi9hcmNoaXZlL3JlZnMvdGFncy92JHt2ZXJzaW9ufS56aXAiCitjaGVja3N1 bT1lYWI0YzRiOTE5OTMwOTA1ZTIxMjhjNTZjYjE1OTE5Y2I4MTA1ZDQzMWNjZWY4NzEyZjk4ZmQ0 ODcxZjNkMDlhCiAKIGlmIFsgLW4gIiRYQlBTX0NIRUNLX1BLR1MiIF07IHRoZW4KIAljb25maWd1 cmVfYXJncys9IiAtREVYSVYyX0JVSUxEX1VOSVRfVEVTVFM9T04iCkBAIC0yMSwxNCArMjEsMTgg QEAgaWYgWyAtbiAiJFhCUFNfQ0NBQ0hFIiBdOyB0aGVuCiAJY29uZmlndXJlX2FyZ3MrPSIgLURC VUlMRF9XSVRIX0NDQUNIRT1PTiIKIGZpCiAKK3ByZV9jaGVjaygpIHsKKwkjIGh0dHBzOi8vZ2l0 aHViLmNvbS9FeGl2Mi9leGl2Mi9pc3N1ZXMvMjc2MgorCXJtIC1mIHRlc3RzL2J1Z2ZpeGVzL2dp dGh1Yi90ZXN0X2lzc3VlXzI0MjcucHkKK30KKwogZXhpdjItZGV2ZWxfcGFja2FnZSgpIHsKIAlk ZXBlbmRzPSIke21ha2VkZXBlbmRzfSAke3NvdXJjZXBrZ30tJHt2ZXJzaW9ufV8ke3JldmlzaW9u fSIKIAlzaG9ydF9kZXNjKz0iIC0gZGV2ZWxvcG1lbnQgZmlsZXMiCiAJcGtnX2luc3RhbGwoKSB7 CiAJCXZtb3ZlIHVzci9pbmNsdWRlCi0JCXZtb3ZlIHVzci9saWIvY21ha2UKIAkJdm1vdmUgdXNy L2xpYi9wa2djb25maWcKLQkJdm1vdmUgInVzci9saWIvKi5hIgorCQl2bW92ZSB1c3Ivc2hhcmUv Y21ha2UKIAkJdm1vdmUgInVzci9saWIvKi5zbyIKIAl9CiB9CgpGcm9tIGRmOWQ3NGYwZDI0ZGIz MGQ1M2FiY2IxNmU1MTZmYWY0MmNhZjlhZTEgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206 IE1vaGFtbWVkIEFuYXMgPHRyaWFsbGF4QHR1dGFub3RhLmNvbT4KRGF0ZTogV2VkLCAxOCBPY3Qg MjAyMyAxOToxODozNyArMDEwMApTdWJqZWN0OiBbUEFUQ0ggMDMvMjJdIEFSVDogcmV2YnVtcCBm b3IgZXhpdjItMC4yOC4xLgoKLS0tCiBzcmNwa2dzL0FSVC90ZW1wbGF0ZSB8IDIgKy0KIDEgZmls ZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3Ny Y3BrZ3MvQVJUL3RlbXBsYXRlIGIvc3JjcGtncy9BUlQvdGVtcGxhdGUKaW5kZXggYjZjNDdmYzZj NGNkZi4uOTRjN2FhMDM3ODA2MSAxMDA2NDQKLS0tIGEvc3JjcGtncy9BUlQvdGVtcGxhdGUKKysr IGIvc3JjcGtncy9BUlQvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUg Zm9yICdBUlQnCiBwa2duYW1lPUFSVAogdmVyc2lvbj0xLjIwLjIKLXJldmlzaW9uPTEKK3Jldmlz aW9uPTIKIGJ1aWxkX3N0eWxlPWNtYWtlCiBob3N0bWFrZWRlcGVuZHM9InBrZy1jb25maWciCiBt YWtlZGVwZW5kcz0iZmZ0dy1kZXZlbCBndGttbS1kZXZlbCBsZW5zZnVuLWRldmVsCgpGcm9tIGQz YzZiMTRmMWM0M2U5YmIzOTc0ZmJmNTVhYTQyNjI1NGUxMWE4OTcgTW9uIFNlcCAxNyAwMDowMDow MCAyMDAxCkZyb206IE1vaGFtbWVkIEFuYXMgPHRyaWFsbGF4QHR1dGFub3RhLmNvbT4KRGF0ZTog V2VkLCAxOCBPY3QgMjAyMyAxOToxODozOCArMDEwMApTdWJqZWN0OiBbUEFUQ0ggMDQvMjJdIGRp Z2lrYW06IHJldmJ1bXAgZm9yIGV4aXYyLTAuMjguMS4KCi0tLQogLi4uL3BhdGNoZXMvZml4LWJ1 aWxkLXdpdGgtZXhpdjItMC4yOC4xLnBhdGNoIHwgNDIyICsrKysrKysrKysrKysrKysrKwogc3Jj cGtncy9kaWdpa2FtL3RlbXBsYXRlICAgICAgICAgICAgICAgICAgICAgIHwgICAyICstCiAyIGZp bGVzIGNoYW5nZWQsIDQyMyBpbnNlcnRpb25zKCspLCAxIGRlbGV0aW9uKC0pCiBjcmVhdGUgbW9k ZSAxMDA2NDQgc3JjcGtncy9kaWdpa2FtL3BhdGNoZXMvZml4LWJ1aWxkLXdpdGgtZXhpdjItMC4y OC4xLnBhdGNoCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9kaWdpa2FtL3BhdGNoZXMvZml4LWJ1aWxk LXdpdGgtZXhpdjItMC4yOC4xLnBhdGNoIGIvc3JjcGtncy9kaWdpa2FtL3BhdGNoZXMvZml4LWJ1 aWxkLXdpdGgtZXhpdjItMC4yOC4xLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw MDAwMDAwMDAwMDAuLjJhMDFiNDU0NWU3NmQKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL2Rp Z2lrYW0vcGF0Y2hlcy9maXgtYnVpbGQtd2l0aC1leGl2Mi0wLjI4LjEucGF0Y2gKQEAgLTAsMCAr MSw0MjIgQEAKK0Zyb20gYTc2YTU2MWIyMGU3MzAwNTEwYjI5ZWRjOTdhZmFiMDFlMzgxYzBlYyBN b24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKK0Zyb206IE1haWsgUXVhbG1hbm4gPG1ldHpwaW5ndWlu QGdtYWlsLmNvbT4KK0RhdGU6IFdlZCwgOCBOb3YgMjAyMyAyMzoxMzoyNiArMDEwMAorU3ViamVj dDogW1BBVENIIDEvNV0gZml4IGNvbXBpbGUgd2l0aCBFeGl2Mi0wLjI4LjEgSXQgc2hvdWxkIHN0 aWxsIGNvbXBpbGUKKyBldmVuIHdpdGggc21hbGxlciBFeGl2MiB2ZXJzaW9ucy4KKworLS0tCisg Y29yZS9DTWFrZUxpc3RzLnR4dCAgICAgICAgICAgICAgICAgICAgIHwgNCArKy0tCisgY29yZS9h cHAvRGlnaWthbUNvcmVUYXJnZXQuY21ha2UgICAgICAgIHwgMiArLQorIGNvcmUvY21ha2UvcnVs ZXMvUnVsZXNMaWJFeGl2Mi5jbWFrZSAgICB8IDggKysrKy0tLS0KKyBjb3JlL2xpYnMvbWV0YWRh dGFlbmdpbmUvQ01ha2VMaXN0cy50eHQgfCA0ICsrLS0KKyA0IGZpbGVzIGNoYW5nZWQsIDkgaW5z ZXJ0aW9ucygrKSwgOSBkZWxldGlvbnMoLSkKKworZGlmZiAtLWdpdCBhL2NvcmUvQ01ha2VMaXN0 cy50eHQgYi9jb3JlL0NNYWtlTGlzdHMudHh0CitpbmRleCBjNjk0YzRiMTc2Li5kNWRjMmYwZGQ4 IDEwMDY0NAorLS0tIGEvY29yZS9DTWFrZUxpc3RzLnR4dAorKysrIGIvY29yZS9DTWFrZUxpc3Rz LnR4dAorQEAgLTI1NSw3ICsyNTUsNyBAQCBQUklOVF9DT01QT05FTlRfQ09NUElMRV9TVEFUVVMo Ik1lZGlhIFBsYXllciBTdXBwb3J0IiAgICAgICAgICAgICAgICAgICAgICAgRU5BQgorICMgPT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09CisgCisgUFJJTlRfTElCUkFSWV9TVEFUVVMoImxpYmJvb3N0Z3Jh cGgiICJodHRwczovL2dpdGh1Yi5jb20vYm9vc3RvcmcvYm9vc3QiICAgICAgICAgICAgICAgICAi KHZlcnNpb24gPj0gMS40My4wKSIgICAgICAgICAgICAgICAgQm9vc3RfRk9VTkQpCistUFJJTlRf TElCUkFSWV9TVEFUVVMoImxpYmV4aXYyIiAgICAgICJodHRwczovL2dpdGh1Yi5jb20vRXhpdjIv ZXhpdjIiICAgICAgICAgICAgICAgICAgICAiKHZlcnNpb24gPj0gJHtFWElWMl9NSU5fVkVSU0lP Tn0iICAgZXhpdjJfRk9VTkQpCisrUFJJTlRfTElCUkFSWV9TVEFUVVMoImxpYmV4aXYyIiAgICAg ICJodHRwczovL2dpdGh1Yi5jb20vRXhpdjIvZXhpdjIiICAgICAgICAgICAgICAgICAgICAiKHZl cnNpb24gPj0gJHtFWElWMl9NSU5fVkVSU0lPTn0iICAgTGliRXhpdjJfRk9VTkQpCisgUFJJTlRf TElCUkFSWV9TVEFUVVMoImxpYmV4cGF0IiAgICAgICJodHRwczovL2xpYmV4cGF0LmdpdGh1Yi5p byIgICAgICAgICAgICAgICAgICAgICAgICAiKHZlcnNpb24gPj0gMi4wLjApIiAgICAgICAgICAg ICAgICAgRVhQQVRfRk9VTkQpCisgUFJJTlRfTElCUkFSWV9TVEFUVVMoImxpYmpwZWciICAgICAg ICJodHRwczovL2dpdGh1Yi5jb20vbGlianBlZy10dXJiby9saWJqcGVnLXR1cmJvIiAgICAiKHZl cnNpb24gPj0gNmIpIiAgICAgICAgICAgICAgICAgICAgSlBFR19GT1VORCkKKyBQUklOVF9MSUJS QVJZX1NUQVRVUygibGlia2RlIiAgICAgICAgImh0dHBzOi8vaW52ZW50LmtkZS5vcmcvZnJhbWV3 b3Jrcy8iICAgICAgICAgICAgICAgICIodmVyc2lvbiA+PSAke0tGNV9NSU5fVkVSU0lPTn0pIiAg ICBLRjVfRk9VTkQpCitAQCAtMzA2LDcgKzMwNiw3IEBAIGVuZGlmKCkKKyAjID09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PQorIAorIGlmKEJvb3N0X0ZPVU5EICAgICAgICAgICAgICAgICAgICAgICAgICBB TkQKKy0gICBleGl2Ml9GT1VORCAgICAgICAgICAgICAgICAgICAgICAgICAgQU5ECisrICAgTGli RXhpdjJfRk9VTkQgICAgICAgICAgICAgICAgICAgICAgIEFORAorICAgIEVYUEFUX0ZPVU5EICAg ICAgICAgICAgICAgICAgICAgICAgICBBTkQKKyAgICBKUEVHX0ZPVU5EICAgICAgICAgICAgICAg ICAgICAgICAgICAgQU5ECisgICAgS0Y1X0ZPVU5EICAgICAgICAgICAgICAgICAgICAgICAgICAg IEFORAorZGlmZiAtLWdpdCBhL2NvcmUvYXBwL0RpZ2lrYW1Db3JlVGFyZ2V0LmNtYWtlIGIvY29y ZS9hcHAvRGlnaWthbUNvcmVUYXJnZXQuY21ha2UKK2luZGV4IDgzZmRhMWIzNWYuLjgyMjFhMmQ2 MzIgMTAwNjQ0CistLS0gYS9jb3JlL2FwcC9EaWdpa2FtQ29yZVRhcmdldC5jbWFrZQorKysrIGIv Y29yZS9hcHAvRGlnaWthbUNvcmVUYXJnZXQuY21ha2UKK0BAIC0xNTEsNyArMTUxLDcgQEAgdGFy Z2V0X2xpbmtfbGlicmFyaWVzKGRpZ2lrYW1jb3JlCisgICAgICAgICAgICAgICAgICAgICAgICR7 VElGRl9MSUJSQVJJRVN9CisgICAgICAgICAgICAgICAgICAgICAgIFBORzo6UE5HCisgICAgICAg ICAgICAgICAgICAgICAgICR7SlBFR19MSUJSQVJJRVN9CistICAgICAgICAgICAgICAgICAgICAg IGV4aXYybGliCisrICAgICAgICAgICAgICAgICAgICAgICR7TGliRXhpdjJfTElCUkFSSUVTfQor IAorICAgICAgICAgICAgICAgICAgICAgICAke09QRU5NUF9MREZMQUdTfQorIAorZGlmZiAtLWdp dCBhL2NvcmUvY21ha2UvcnVsZXMvUnVsZXNMaWJFeGl2Mi5jbWFrZSBiL2NvcmUvY21ha2UvcnVs ZXMvUnVsZXNMaWJFeGl2Mi5jbWFrZQoraW5kZXggYzhiMzdkMzA3Yy4uYThjYTI1OTQzMiAxMDA2 NDQKKy0tLSBhL2NvcmUvY21ha2UvcnVsZXMvUnVsZXNMaWJFeGl2Mi5jbWFrZQorKysrIGIvY29y ZS9jbWFrZS9ydWxlcy9SdWxlc0xpYkV4aXYyLmNtYWtlCitAQCAtNCw3ICs0LDcgQEAKKyAjIFNQ RFgtTGljZW5zZS1JZGVudGlmaWVyOiBCU0QtMy1DbGF1c2UKKyAjCisgCistZmluZF9wYWNrYWdl KGV4aXYyIFJFUVVJUkVEKQorK2ZpbmRfcGFja2FnZShMaWJFeGl2MiBSRVFVSVJFRCkKKyAKKyBz ZXRfcGFja2FnZV9wcm9wZXJ0aWVzKCJleGl2MiIgICAgIFBST1BFUlRJRVMKKyAgICAgICAgICAg ICAgICAgICAgICAgIERFU0NSSVBUSU9OICJSZXF1aXJlZCB0byBidWlsZCBkaWdpS2FtIgorQEAg LTEzLDEzICsxMywxMyBAQCBzZXRfcGFja2FnZV9wcm9wZXJ0aWVzKCJleGl2MiIgICAgIFBST1BF UlRJRVMKKyAgICAgICAgICAgICAgICAgICAgICAgIFBVUlBPU0UgICAgICJMaWJyYXJ5IHRvIG1h bmFnZSBpbWFnZSBtZXRhZGF0YSIKKyApCisgCistaWYoIiR7ZXhpdjJfVkVSU0lPTn0iIFZFUlNJ T05fTEVTUyAke0VYSVYyX01JTl9WRVJTSU9OfSkKKytpZigiJHtMaWJFeGl2Ml9WRVJTSU9OfSIg VkVSU0lPTl9MRVNTICR7RVhJVjJfTUlOX1ZFUlNJT059KQorIAorLSAgICBtZXNzYWdlKEZBVEFM X0VSUk9SICJFeGl2MiB2ZXJzaW9uIGlzIHRvbyBvbGQgKCR7ZXhpdjJfVkVSU0lPTn0pISBNaW5p bWFsIHZlcnNpb24gcmVxdWlyZWQ6JHtFWElWMl9NSU5fVkVSU0lPTn0uIikKKysgICAgbWVzc2Fn ZShGQVRBTF9FUlJPUiAiRXhpdjIgdmVyc2lvbiBpcyB0b28gb2xkICgke0xpYkV4aXYyX1ZFUlNJ T059KSEgTWluaW1hbCB2ZXJzaW9uIHJlcXVpcmVkOiR7RVhJVjJfTUlOX1ZFUlNJT059LiIpCisg CisgZW5kaWYoKQorIAorLWlmKCIke2V4aXYyX1ZFUlNJT059IiBWRVJTSU9OX0xFU1MgIjAuMjcu OTkiKQorK2lmKCIke0xpYkV4aXYyX1ZFUlNJT059IiBWRVJTSU9OX0xFU1MgIjAuMjcuOTkiKQor IAorICAgICBzZXQoRVhJVjJfQ1hYX1NUQU5EQVJEIDExKQorIAorZGlmZiAtLWdpdCBhL2NvcmUv bGlicy9tZXRhZGF0YWVuZ2luZS9DTWFrZUxpc3RzLnR4dCBiL2NvcmUvbGlicy9tZXRhZGF0YWVu Z2luZS9DTWFrZUxpc3RzLnR4dAoraW5kZXggNDdhYTg4OWQ1ZS4uYmQ0ZGJhMGJiZCAxMDA2NDQK Ky0tLSBhL2NvcmUvbGlicy9tZXRhZGF0YWVuZ2luZS9DTWFrZUxpc3RzLnR4dAorKysrIGIvY29y ZS9saWJzL21ldGFkYXRhZW5naW5lL0NNYWtlTGlzdHMudHh0CitAQCAtMTgsNyArMTgsNyBAQCBl bmRpZigpCisgCisgIyBFeGl2MiB2ZXJzaW9uIDwgMC4yOCB1c2UgYXV0b19wdHIgaW5zdGVhZCB1 bmlxdWVfcHRyIHdoaWNoIGlzIGRlcHJlY2F0ZWQuCisgCistaWYoIiR7ZXhpdjJfVkVSU0lPTn0i IFZFUlNJT05fTEVTUyAiMC4yNy45OSIpCisraWYoIiR7TGliRXhpdjJfVkVSU0lPTn0iIFZFUlNJ T05fTEVTUyAiMC4yNy45OSIpCisgCisgICAgIERJU0FCTEVfR0NDX0NPTVBJTEVSX1dBUk5JTkdT KCI1Ljk5Ljk5IiAiLVduby1kZXByZWNhdGVkIikKKyAKK0BAIC0xMTIsNyArMTEyLDcgQEAgaW5j bHVkZV9kaXJlY3RvcmllcygKKyAgICAgJDxUQVJHRVRfUFJPUEVSVFk6S0Y1OjpDb25maWdDb3Jl LElOVEVSRkFDRV9JTkNMVURFX0RJUkVDVE9SSUVTPgorICAgICAkPFRBUkdFVF9QUk9QRVJUWTpL RjU6OkkxOG4sSU5URVJGQUNFX0lOQ0xVREVfRElSRUNUT1JJRVM+CisgCistICAgICQ8VEFSR0VU X1BST1BFUlRZOmV4aXYybGliLElOVEVSRkFDRV9JTkNMVURFX0RJUkVDVE9SSUVTPgorKyAgICAk PFRBUkdFVF9QUk9QRVJUWTpMaWJFeGl2Ml9JTkNMVURFX0RJUlM+CisgKQorIAorICMgVXNlZCBi eSBkaWdpa2FtY29yZQorLS0gCisyLjQyLjAKKworCitGcm9tIGVlNDg3YTc1M2E2NTJjNTg4Yjg4 ZmExOGFlYjg4NTEwNWMxNzM2OGQgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCitGcm9tOiBNYWlr IFF1YWxtYW5uIDxtZXR6cGluZ3VpbkBnbWFpbC5jb20+CitEYXRlOiBUaHUsIDkgTm92IDIwMjMg MTg6NDk6MTggKzAxMDAKK1N1YmplY3Q6IFtQQVRDSCAyLzVdIHJlY29nbml6ZSBib3RoIEV4aXYy IENNYWtlIHZhcmlhbnRzCisKKy0tLQorIGNvcmUvQ01ha2VMaXN0cy50eHQgICAgICAgICAgICAg ICAgICAgICB8IDE0ICsrKysrKy0tCisgY29yZS9hcHAvRGlnaWthbUNvcmVUYXJnZXQuY21ha2Ug ICAgICAgIHwgMTcgKysrKysrKystCisgY29yZS9jbWFrZS9ydWxlcy9SdWxlc0xpYkV4aXYyLmNt YWtlICAgIHwgNDYgKysrKysrKysrKysrKysrKysrKysrLS0tLQorIGNvcmUvbGlicy9tZXRhZGF0 YWVuZ2luZS9DTWFrZUxpc3RzLnR4dCB8IDEyICsrKysrLS0KKyA0IGZpbGVzIGNoYW5nZWQsIDc3 IGluc2VydGlvbnMoKyksIDEyIGRlbGV0aW9ucygtKQorCitkaWZmIC0tZ2l0IGEvY29yZS9DTWFr ZUxpc3RzLnR4dCBiL2NvcmUvQ01ha2VMaXN0cy50eHQKK2luZGV4IGQ1ZGMyZjBkZDguLjg1NWZk Y2YxODUgMTAwNjQ0CistLS0gYS9jb3JlL0NNYWtlTGlzdHMudHh0CisrKysgYi9jb3JlL0NNYWtl TGlzdHMudHh0CitAQCAtMjU1LDcgKzI1NSwxNyBAQCBQUklOVF9DT01QT05FTlRfQ09NUElMRV9T VEFUVVMoIk1lZGlhIFBsYXllciBTdXBwb3J0IiAgICAgICAgICAgICAgICAgICAgICAgRU5BQgor ICMgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09CisgCisgUFJJTlRfTElCUkFSWV9TVEFUVVMoImxpYmJv b3N0Z3JhcGgiICJodHRwczovL2dpdGh1Yi5jb20vYm9vc3RvcmcvYm9vc3QiICAgICAgICAgICAg ICAgICAiKHZlcnNpb24gPj0gMS40My4wKSIgICAgICAgICAgICAgICAgQm9vc3RfRk9VTkQpCist UFJJTlRfTElCUkFSWV9TVEFUVVMoImxpYmV4aXYyIiAgICAgICJodHRwczovL2dpdGh1Yi5jb20v RXhpdjIvZXhpdjIiICAgICAgICAgICAgICAgICAgICAiKHZlcnNpb24gPj0gJHtFWElWMl9NSU5f VkVSU0lPTn0iICAgTGliRXhpdjJfRk9VTkQpCisrCisraWYoTGliRXhpdjJfRk9VTkQpCisrCisr ICAgIFBSSU5UX0xJQlJBUllfU1RBVFVTKCJsaWJleGl2MiIgICJodHRwczovL2dpdGh1Yi5jb20v RXhpdjIvZXhpdjIiICAgICAgICAgICAgICAgICAgICAiKHZlcnNpb24gPj0gJHtFWElWMl9NSU5f VkVSU0lPTn0iICAgTGliRXhpdjJfRk9VTkQpCisrCisrZWxzZSgpCisrCisrICAgIFBSSU5UX0xJ QlJBUllfU1RBVFVTKCJsaWJleGl2MiIgICJodHRwczovL2dpdGh1Yi5jb20vRXhpdjIvZXhpdjIi ICAgICAgICAgICAgICAgICAgICAiKHZlcnNpb24gPj0gJHtFWElWMl9NSU5fVkVSU0lPTn0iICAg ZXhpdjJfRk9VTkQpCisrCisrZW5kaWYoKQorKworIFBSSU5UX0xJQlJBUllfU1RBVFVTKCJsaWJl eHBhdCIgICAgICAiaHR0cHM6Ly9saWJleHBhdC5naXRodWIuaW8iICAgICAgICAgICAgICAgICAg ICAgICAgIih2ZXJzaW9uID49IDIuMC4wKSIgICAgICAgICAgICAgICAgIEVYUEFUX0ZPVU5EKQor IFBSSU5UX0xJQlJBUllfU1RBVFVTKCJsaWJqcGVnIiAgICAgICAiaHR0cHM6Ly9naXRodWIuY29t L2xpYmpwZWctdHVyYm8vbGlianBlZy10dXJibyIgICAgIih2ZXJzaW9uID49IDZiKSIgICAgICAg ICAgICAgICAgICAgIEpQRUdfRk9VTkQpCisgUFJJTlRfTElCUkFSWV9TVEFUVVMoImxpYmtkZSIg ICAgICAgICJodHRwczovL2ludmVudC5rZGUub3JnL2ZyYW1ld29ya3MvIiAgICAgICAgICAgICAg ICAiKHZlcnNpb24gPj0gJHtLRjVfTUlOX1ZFUlNJT059KSIgICAgS0Y1X0ZPVU5EKQorQEAgLTMw Niw3ICszMTYsNyBAQCBlbmRpZigpCisgIyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KKyAKKyBpZihC b29zdF9GT1VORCAgICAgICAgICAgICAgICAgICAgICAgICAgQU5ECistICAgTGliRXhpdjJfRk9V TkQgICAgICAgICAgICAgICAgICAgICAgIEFORAorKyAgIChMaWJFeGl2Ml9GT1VORCBPUiBleGl2 Ml9GT1VORCkgICAgICBBTkQKKyAgICBFWFBBVF9GT1VORCAgICAgICAgICAgICAgICAgICAgICAg ICAgQU5ECisgICAgSlBFR19GT1VORCAgICAgICAgICAgICAgICAgICAgICAgICAgIEFORAorICAg IEtGNV9GT1VORCAgICAgICAgICAgICAgICAgICAgICAgICAgICBBTkQKK2RpZmYgLS1naXQgYS9j b3JlL2FwcC9EaWdpa2FtQ29yZVRhcmdldC5jbWFrZSBiL2NvcmUvYXBwL0RpZ2lrYW1Db3JlVGFy Z2V0LmNtYWtlCitpbmRleCA4MjIxYTJkNjMyLi44MGJkMTUzY2FhIDEwMDY0NAorLS0tIGEvY29y ZS9hcHAvRGlnaWthbUNvcmVUYXJnZXQuY21ha2UKKysrKyBiL2NvcmUvYXBwL0RpZ2lrYW1Db3Jl VGFyZ2V0LmNtYWtlCitAQCAtMTUxLDcgKzE1MSw2IEBAIHRhcmdldF9saW5rX2xpYnJhcmllcyhk aWdpa2FtY29yZQorICAgICAgICAgICAgICAgICAgICAgICAke1RJRkZfTElCUkFSSUVTfQorICAg ICAgICAgICAgICAgICAgICAgICBQTkc6OlBORworICAgICAgICAgICAgICAgICAgICAgICAke0pQ RUdfTElCUkFSSUVTfQorLSAgICAgICAgICAgICAgICAgICAgICAke0xpYkV4aXYyX0xJQlJBUklF U30KKyAKKyAgICAgICAgICAgICAgICAgICAgICAgJHtPUEVOTVBfTERGTEFHU30KKyAKK0BAIC0x NjQsNiArMTYzLDIyIEBAIHRhcmdldF9saW5rX2xpYnJhcmllcyhkaWdpa2FtY29yZQorICAgICAg ICAgICAgICAgICAgICAgICBvcGVuY3ZfZmxhbm4KKyApCisgCisraWYoTGliRXhpdjJfRk9VTkQp CisrCisrICAgIHRhcmdldF9saW5rX2xpYnJhcmllcyhkaWdpa2FtY29yZQorKyAgICAgICAgICAg ICAgICAgICAgICAgICAgUFJJVkFURQorKyAgICAgICAgICAgICAgICAgICAgICAgICAgJHtMaWJF eGl2Ml9MSUJSQVJJRVN9CisrICAgICkKKysKKytlbHNlKCkKKysKKysgICAgdGFyZ2V0X2xpbmtf bGlicmFyaWVzKGRpZ2lrYW1jb3JlCisrICAgICAgICAgICAgICAgICAgICAgICAgICBQUklWQVRF CisrICAgICAgICAgICAgICAgICAgICAgICAgICBleGl2MmxpYgorKyAgICApCisrCisrZW5kaWYo KQorKworIGlmKFF0Nl9GT1VORCkKKyAgICAgdGFyZ2V0X2xpbmtfbGlicmFyaWVzKGRpZ2lrYW1j b3JlCisgICAgICAgICAgICAgICAgICAgICAgICAgICBQUklWQVRFCitkaWZmIC0tZ2l0IGEvY29y ZS9jbWFrZS9ydWxlcy9SdWxlc0xpYkV4aXYyLmNtYWtlIGIvY29yZS9jbWFrZS9ydWxlcy9SdWxl c0xpYkV4aXYyLmNtYWtlCitpbmRleCBhOGNhMjU5NDMyLi5lNTY4NjQ0Y2E0IDEwMDY0NAorLS0t IGEvY29yZS9jbWFrZS9ydWxlcy9SdWxlc0xpYkV4aXYyLmNtYWtlCisrKysgYi9jb3JlL2NtYWtl L3J1bGVzL1J1bGVzTGliRXhpdjIuY21ha2UKK0BAIC00LDcgKzQsMTcgQEAKKyAjIFNQRFgtTGlj ZW5zZS1JZGVudGlmaWVyOiBCU0QtMy1DbGF1c2UKKyAjCisgCistZmluZF9wYWNrYWdlKExpYkV4 aXYyIFJFUVVJUkVEKQorK2ZpbmRfcGFja2FnZShMaWJFeGl2MiBPUFRJT05BTF9DT01QT05FTlRT KQorKworK2lmKExpYkV4aXYyX0ZPVU5EKQorKworKyAgICBmaW5kX3BhY2thZ2UoTGliRXhpdjIg UkVRVUlSRUQpCisrCisrZWxzZSgpCisrCisrICAgIGZpbmRfcGFja2FnZShleGl2MiBSRVFVSVJF RCkKKysKKytlbmRpZigpCisgCisgc2V0X3BhY2thZ2VfcHJvcGVydGllcygiZXhpdjIiICAgICBQ Uk9QRVJUSUVTCisgICAgICAgICAgICAgICAgICAgICAgICBERVNDUklQVElPTiAiUmVxdWlyZWQg dG8gYnVpbGQgZGlnaUthbSIKK0BAIC0xMywxOCArMjMsNDAgQEAgc2V0X3BhY2thZ2VfcHJvcGVy dGllcygiZXhpdjIiICAgICBQUk9QRVJUSUVTCisgICAgICAgICAgICAgICAgICAgICAgICBQVVJQ T1NFICAgICAiTGlicmFyeSB0byBtYW5hZ2UgaW1hZ2UgbWV0YWRhdGEiCisgKQorIAorLWlmKCIk e0xpYkV4aXYyX1ZFUlNJT059IiBWRVJTSU9OX0xFU1MgJHtFWElWMl9NSU5fVkVSU0lPTn0pCisr aWYoTGliRXhpdjJfRk9VTkQpCisgCistICAgIG1lc3NhZ2UoRkFUQUxfRVJST1IgIkV4aXYyIHZl cnNpb24gaXMgdG9vIG9sZCAoJHtMaWJFeGl2Ml9WRVJTSU9OfSkhIE1pbmltYWwgdmVyc2lvbiBy ZXF1aXJlZDoke0VYSVYyX01JTl9WRVJTSU9OfS4iKQorKyAgICBpZigiJHtMaWJFeGl2Ml9WRVJT SU9OfSIgVkVSU0lPTl9MRVNTICR7RVhJVjJfTUlOX1ZFUlNJT059KQorIAorLWVuZGlmKCkKKysg ICAgICAgIG1lc3NhZ2UoRkFUQUxfRVJST1IgIkV4aXYyIHZlcnNpb24gaXMgdG9vIG9sZCAoJHtM aWJFeGl2Ml9WRVJTSU9OfSkhIE1pbmltYWwgdmVyc2lvbiByZXF1aXJlZDoke0VYSVYyX01JTl9W RVJTSU9OfS4iKQorKworKyAgICBlbmRpZigpCisrCisrICAgIGlmKCIke0xpYkV4aXYyX1ZFUlNJ T059IiBWRVJTSU9OX0xFU1MgIjAuMjcuOTkiKQorIAorLWlmKCIke0xpYkV4aXYyX1ZFUlNJT059 IiBWRVJTSU9OX0xFU1MgIjAuMjcuOTkiKQorKyAgICAgICAgc2V0KEVYSVYyX0NYWF9TVEFOREFS RCAxMSkKKyAKKy0gICAgc2V0KEVYSVYyX0NYWF9TVEFOREFSRCAxMSkKKysgICAgZWxzZSgpCisr CisrICAgICAgICBzZXQoRVhJVjJfQ1hYX1NUQU5EQVJEIDE3KQorKworKyAgICBlbmRpZigpCisg CisgZWxzZSgpCisgCistICAgIHNldChFWElWMl9DWFhfU1RBTkRBUkQgMTcpCisrICAgIGlmKCIk e2V4aXYyX1ZFUlNJT059IiBWRVJTSU9OX0xFU1MgJHtFWElWMl9NSU5fVkVSU0lPTn0pCisrCisr ICAgICAgICBtZXNzYWdlKEZBVEFMX0VSUk9SICJFeGl2MiB2ZXJzaW9uIGlzIHRvbyBvbGQgKCR7 ZXhpdjJfVkVSU0lPTn0pISBNaW5pbWFsIHZlcnNpb24gcmVxdWlyZWQ6JHtFWElWMl9NSU5fVkVS U0lPTn0uIikKKysKKysgICAgZW5kaWYoKQorKworKyAgICBpZigiJHtleGl2Ml9WRVJTSU9OfSIg VkVSU0lPTl9MRVNTICIwLjI3Ljk5IikKKysKKysgICAgICAgIHNldChFWElWMl9DWFhfU1RBTkRB UkQgMTEpCisrCisrICAgIGVsc2UoKQorKworKyAgICAgICAgc2V0KEVYSVYyX0NYWF9TVEFOREFS RCAxNykKKysKKysgICAgZW5kaWYoKQorIAorIGVuZGlmKCkKK2RpZmYgLS1naXQgYS9jb3JlL2xp YnMvbWV0YWRhdGFlbmdpbmUvQ01ha2VMaXN0cy50eHQgYi9jb3JlL2xpYnMvbWV0YWRhdGFlbmdp bmUvQ01ha2VMaXN0cy50eHQKK2luZGV4IGJkNGRiYTBiYmQuLmE0MTI0ZDE3ZTAgMTAwNjQ0Cist LS0gYS9jb3JlL2xpYnMvbWV0YWRhdGFlbmdpbmUvQ01ha2VMaXN0cy50eHQKKysrKyBiL2NvcmUv bGlicy9tZXRhZGF0YWVuZ2luZS9DTWFrZUxpc3RzLnR4dAorQEAgLTExMSwxMCArMTExLDE4IEBA IGluY2x1ZGVfZGlyZWN0b3JpZXMoCisgCisgICAgICQ8VEFSR0VUX1BST1BFUlRZOktGNTo6Q29u ZmlnQ29yZSxJTlRFUkZBQ0VfSU5DTFVERV9ESVJFQ1RPUklFUz4KKyAgICAgJDxUQVJHRVRfUFJP UEVSVFk6S0Y1OjpJMThuLElOVEVSRkFDRV9JTkNMVURFX0RJUkVDVE9SSUVTPgorLQorLSAgICAk PFRBUkdFVF9QUk9QRVJUWTpMaWJFeGl2Ml9JTkNMVURFX0RJUlM+CisgKQorIAorK2lmKExpYkV4 aXYyX0ZPVU5EKQorKworKyAgICBpbmNsdWRlX2RpcmVjdG9yaWVzKCQ8VEFSR0VUX1BST1BFUlRZ OkxpYkV4aXYyX0lOQ0xVREVfRElSUz4pCisrCisrZWxzZSgpCisrCisrICAgIGluY2x1ZGVfZGly ZWN0b3JpZXMoJDxUQVJHRVRfUFJPUEVSVFk6ZXhpdjJsaWIsSU5URVJGQUNFX0lOQ0xVREVfRElS RUNUT1JJRVM+KQorKworK2VuZGlmKCkKKysKKyAjIFVzZWQgYnkgZGlnaWthbWNvcmUKKyBhZGRf bGlicmFyeShjb3JlX2RtZXRhZGF0YV9vYmogT0JKRUNUICR7bGliZG1ldGFkYXRhX1NSQ1N9KQor IAorLS0gCisyLjQyLjAKKworCitGcm9tIGFmMjIxZGQ3NzAwZmJmMWU2ZTNiNTI0NTE4NDM4MWQy Yjc0ZWM3ODEgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCitGcm9tOiBNYWlrIFF1YWxtYW5uIDxt ZXR6cGluZ3VpbkBnbWFpbC5jb20+CitEYXRlOiBUaHUsIDkgTm92IDIwMjMgMTk6MTI6NDQgKzAx MDAKK1N1YmplY3Q6IFtQQVRDSCAzLzVdIGNoZWNrIHZlcnNpb24gdW5kIGNsZWFyIExpYkV4aXYy X0ZPVU5ECisKKy0tLQorIGNvcmUvY21ha2UvcnVsZXMvUnVsZXNMaWJFeGl2Mi5jbWFrZSB8IDMg KystCisgMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbigtKQorCitk aWZmIC0tZ2l0IGEvY29yZS9jbWFrZS9ydWxlcy9SdWxlc0xpYkV4aXYyLmNtYWtlIGIvY29yZS9j bWFrZS9ydWxlcy9SdWxlc0xpYkV4aXYyLmNtYWtlCitpbmRleCBlNTY4NjQ0Y2E0Li5kZTVlYTgw ZWM2IDEwMDY0NAorLS0tIGEvY29yZS9jbWFrZS9ydWxlcy9SdWxlc0xpYkV4aXYyLmNtYWtlCisr KysgYi9jb3JlL2NtYWtlL3J1bGVzL1J1bGVzTGliRXhpdjIuY21ha2UKK0BAIC02LDEyICs2LDEz IEBACisgCisgZmluZF9wYWNrYWdlKExpYkV4aXYyIE9QVElPTkFMX0NPTVBPTkVOVFMpCisgCist aWYoTGliRXhpdjJfRk9VTkQpCisraWYoTGliRXhpdjJfRk9VTkQgQU5EICgiJHtMaWJFeGl2Ml9W RVJTSU9OfSIgVkVSU0lPTl9HUkVBVEVSICIwLjI4LjAiKSkKKyAKKyAgICAgZmluZF9wYWNrYWdl KExpYkV4aXYyIFJFUVVJUkVEKQorIAorIGVsc2UoKQorIAorKyAgICBzZXQgKExpYkV4aXYyX0ZP VU5EIEZBTFNFKQorICAgICBmaW5kX3BhY2thZ2UoZXhpdjIgUkVRVUlSRUQpCisgCisgZW5kaWYo KQorLS0gCisyLjQyLjAKKworCitGcm9tIGZkYTgzYTZmN2UwM2U0MDg4ZjNhNTkwM2QwMzZjMTQy NWQ2MzAzYjkgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCitGcm9tOiBNYWlrIFF1YWxtYW5uIDxt ZXR6cGluZ3VpbkBnbWFpbC5jb20+CitEYXRlOiBUaHUsIDkgTm92IDIwMjMgMTk6MTU6NDEgKzAx MDAKK1N1YmplY3Q6IFtQQVRDSCA0LzVdIGFkanVzdCBFeGl2MiB2ZXJzaW9uCisKKy0tLQorIGNv cmUvY21ha2UvcnVsZXMvUnVsZXNMaWJFeGl2Mi5jbWFrZSB8IDIgKy0KKyAxIGZpbGUgY2hhbmdl ZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKKworZGlmZiAtLWdpdCBhL2NvcmUvY21h a2UvcnVsZXMvUnVsZXNMaWJFeGl2Mi5jbWFrZSBiL2NvcmUvY21ha2UvcnVsZXMvUnVsZXNMaWJF eGl2Mi5jbWFrZQoraW5kZXggZGU1ZWE4MGVjNi4uM2RiMjMzY2FkMiAxMDA2NDQKKy0tLSBhL2Nv cmUvY21ha2UvcnVsZXMvUnVsZXNMaWJFeGl2Mi5jbWFrZQorKysrIGIvY29yZS9jbWFrZS9ydWxl cy9SdWxlc0xpYkV4aXYyLmNtYWtlCitAQCAtNiw3ICs2LDcgQEAKKyAKKyBmaW5kX3BhY2thZ2Uo TGliRXhpdjIgT1BUSU9OQUxfQ09NUE9ORU5UUykKKyAKKy1pZihMaWJFeGl2Ml9GT1VORCBBTkQg KCIke0xpYkV4aXYyX1ZFUlNJT059IiBWRVJTSU9OX0dSRUFURVIgIjAuMjguMCIpKQorK2lmKExp YkV4aXYyX0ZPVU5EIEFORCAoIiR7TGliRXhpdjJfVkVSU0lPTn0iIFZFUlNJT05fR1JFQVRFUiAi MC4yNy45OSIpKQorIAorICAgICBmaW5kX3BhY2thZ2UoTGliRXhpdjIgUkVRVUlSRUQpCisgCist LSAKKzIuNDIuMAorCisKK0Zyb20gOTIxZWU5OTQ1ZjhjNDM4ZjIzYjgzYWRkNThkNTczN2I1Mzlj ZDMxMiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKK0Zyb206IE1haWsgUXVhbG1hbm4gPG1ldHpw aW5ndWluQGdtYWlsLmNvbT4KK0RhdGU6IFRodSwgOSBOb3YgMjAyMyAyMTozNTowOSArMDEwMAor U3ViamVjdDogW1BBVENIIDUvNV0gc2V0IGNvcnJlY3QgZXhpdjIgcGFja2FnZSBuYW1lIGFuZCBs ZXNzIGR1cGxpY2F0ZSBDTWFrZQorIGNvZGUKKworLS0tCisgY29yZS9jbWFrZS9ydWxlcy9SdWxl c0xpYkV4aXYyLmNtYWtlIHwgMzQgKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLQorIDEgZmls ZSBjaGFuZ2VkLCAxMyBpbnNlcnRpb25zKCspLCAyMSBkZWxldGlvbnMoLSkKKworZGlmZiAtLWdp dCBhL2NvcmUvY21ha2UvcnVsZXMvUnVsZXNMaWJFeGl2Mi5jbWFrZSBiL2NvcmUvY21ha2UvcnVs ZXMvUnVsZXNMaWJFeGl2Mi5jbWFrZQoraW5kZXggM2RiMjMzY2FkMi4uZTNlNjY3ZDk0NiAxMDA2 NDQKKy0tLSBhL2NvcmUvY21ha2UvcnVsZXMvUnVsZXNMaWJFeGl2Mi5jbWFrZQorKysrIGIvY29y ZS9jbWFrZS9ydWxlcy9SdWxlc0xpYkV4aXYyLmNtYWtlCitAQCAtOSwxOSArOSwyMSBAQCBmaW5k X3BhY2thZ2UoTGliRXhpdjIgT1BUSU9OQUxfQ09NUE9ORU5UUykKKyBpZihMaWJFeGl2Ml9GT1VO RCBBTkQgKCIke0xpYkV4aXYyX1ZFUlNJT059IiBWRVJTSU9OX0dSRUFURVIgIjAuMjcuOTkiKSkK KyAKKyAgICAgZmluZF9wYWNrYWdlKExpYkV4aXYyIFJFUVVJUkVEKQorKyAgICBzZXQoRVhJVjJf UEFDS0FHRV9OQU1FICJMaWJFeGl2MiIpCisgCisgZWxzZSgpCisgCistICAgIHNldCAoTGliRXhp djJfRk9VTkQgRkFMU0UpCisrICAgIHNldChMaWJFeGl2Ml9GT1VORCBGQUxTRSkKKyAgICAgZmlu ZF9wYWNrYWdlKGV4aXYyIFJFUVVJUkVEKQorKyAgICBzZXQoRVhJVjJfUEFDS0FHRV9OQU1FICJl eGl2MiIpCisgCisgZW5kaWYoKQorIAorLXNldF9wYWNrYWdlX3Byb3BlcnRpZXMoImV4aXYyIiAg ICAgUFJPUEVSVElFUworLSAgICAgICAgICAgICAgICAgICAgICAgREVTQ1JJUFRJT04gIlJlcXVp cmVkIHRvIGJ1aWxkIGRpZ2lLYW0iCistICAgICAgICAgICAgICAgICAgICAgICBVUkwgICAgICAg ICAiaHR0cHM6Ly93d3cuZXhpdjIub3JnIgorLSAgICAgICAgICAgICAgICAgICAgICAgVFlQRSAg ICAgICAgUkVDT01NRU5ERUQKKy0gICAgICAgICAgICAgICAgICAgICAgIFBVUlBPU0UgICAgICJM aWJyYXJ5IHRvIG1hbmFnZSBpbWFnZSBtZXRhZGF0YSIKKytzZXRfcGFja2FnZV9wcm9wZXJ0aWVz KCR7RVhJVjJfUEFDS0FHRV9OQU1FfSBQUk9QRVJUSUVTCisrICAgICAgICAgICAgICAgICAgICAg ICBERVNDUklQVElPTiAgICAgICAgICAgIlJlcXVpcmVkIHRvIGJ1aWxkIGRpZ2lLYW0iCisrICAg ICAgICAgICAgICAgICAgICAgICBVUkwgICAgICAgICAgICAgICAgICAgImh0dHBzOi8vd3d3LmV4 aXYyLm9yZyIKKysgICAgICAgICAgICAgICAgICAgICAgIFRZUEUgICAgICAgICAgICAgICAgICBS RUNPTU1FTkRFRAorKyAgICAgICAgICAgICAgICAgICAgICAgUFVSUE9TRSAgICAgICAgICAgICAg ICJMaWJyYXJ5IHRvIG1hbmFnZSBpbWFnZSBtZXRhZGF0YSIKKyApCisgCisgaWYoTGliRXhpdjJf Rk9VTkQpCitAQCAtMzIsMTYgKzM0LDYgQEAgaWYoTGliRXhpdjJfRk9VTkQpCisgCisgICAgIGVu ZGlmKCkKKyAKKy0gICAgaWYoIiR7TGliRXhpdjJfVkVSU0lPTn0iIFZFUlNJT05fTEVTUyAiMC4y Ny45OSIpCistCistICAgICAgICBzZXQoRVhJVjJfQ1hYX1NUQU5EQVJEIDExKQorLQorLSAgICBl bHNlKCkKKy0KKy0gICAgICAgIHNldChFWElWMl9DWFhfU1RBTkRBUkQgMTcpCistCistICAgIGVu ZGlmKCkKKy0KKyBlbHNlKCkKKyAKKyAgICAgaWYoIiR7ZXhpdjJfVkVSU0lPTn0iIFZFUlNJT05f TEVTUyAke0VYSVYyX01JTl9WRVJTSU9OfSkKK0BAIC01MCwxNCArNDIsMTQgQEAgZWxzZSgpCisg CisgICAgIGVuZGlmKCkKKyAKKy0gICAgaWYoIiR7ZXhpdjJfVkVSU0lPTn0iIFZFUlNJT05fTEVT UyAiMC4yNy45OSIpCisrZW5kaWYoKQorIAorLSAgICAgICAgc2V0KEVYSVYyX0NYWF9TVEFOREFS RCAxMSkKKytpZigoIiR7ZXhpdjJfVkVSU0lPTn0iIFZFUlNJT05fR1JFQVRFUiAiMC4yNy45OSIp IE9SICgiJHtMaWJFeGl2Ml9WRVJTSU9OfSIgVkVSU0lPTl9HUkVBVEVSICIwLjI3Ljk5IikpCisg CistICAgIGVsc2UoKQorKyAgICBzZXQoRVhJVjJfQ1hYX1NUQU5EQVJEIDE3KQorIAorLSAgICAg ICAgc2V0KEVYSVYyX0NYWF9TVEFOREFSRCAxNykKKytlbHNlKCkKKyAKKy0gICAgZW5kaWYoKQor KyAgICBzZXQoRVhJVjJfQ1hYX1NUQU5EQVJEIDExKQorIAorIGVuZGlmKCkKKy0tIAorMi40Mi4w CisKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZGlnaWthbS90ZW1wbGF0ZSBiL3NyY3BrZ3MvZGlnaWth bS90ZW1wbGF0ZQppbmRleCAyMDYxODVmNTY1NDg4Li40Nzg0YmY3ZDYyYThlIDEwMDY0NAotLS0g YS9zcmNwa2dzL2RpZ2lrYW0vdGVtcGxhdGUKKysrIGIvc3JjcGtncy9kaWdpa2FtL3RlbXBsYXRl CkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZGlnaWthbScKIHBrZ25hbWU9 ZGlnaWthbQogdmVyc2lvbj04LjEuMAotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfc3R5 bGU9Y21ha2UKIGNvbmZpZ3VyZV9hcmdzPSItREJVSUxEX1RFU1RJTkc9T0ZGIgogaG9zdG1ha2Vk ZXBlbmRzPSJleHRyYS1jbWFrZS1tb2R1bGVzIGdldHRleHQgcGtnLWNvbmZpZyBiaXNvbiBmbGV4 IHF0NS1xbWFrZQoKRnJvbSA5NDJkMTk2YTFhMWM4MTg5MzU1NjkwM2QyMDc4OWZjZWJiZDdhNmZl IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBNb2hhbW1lZCBBbmFzIDx0cmlhbGxheEB0 dXRhbm90YS5jb20+CkRhdGU6IFdlZCwgMTggT2N0IDIwMjMgMTk6MTg6MzggKzAxMDAKU3ViamVj dDogW1BBVENIIDA1LzIyXSBnZWVxaWU6IHJldmJ1bXAgZm9yIGV4aXYyLTAuMjguMS4KCi0tLQog c3JjcGtncy9nZWVxaWUvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRp b24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2dlZXFpZS90ZW1wbGF0 ZSBiL3NyY3BrZ3MvZ2VlcWllL3RlbXBsYXRlCmluZGV4IGI1Zjk1OGY4NTRjMWIuLmI0OTRiYzE0 OWU5NTcgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZ2VlcWllL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3Mv Z2VlcWllL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZ2Vl cWllJwogcGtnbmFtZT1nZWVxaWUKIHZlcnNpb249Mi4xCi1yZXZpc2lvbj0xCityZXZpc2lvbj0y CiBidWlsZF9zdHlsZT1tZXNvbgogaG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIGdldHRleHQg eHhkIGdkay1waXhidWYtZGV2ZWwgZ2xpYi1kZXZlbCIKIG1ha2VkZXBlbmRzPSJndGsrMy1kZXZl bCBnbGliLWRldmVsIGxjbXMyLWRldmVsIGV4aXYyLWRldmVsIGxpYmhlaWYtZGV2ZWwKCkZyb20g YWFmOGFhZTI4NTdhNDEzYmZlNDc5OTZkZjAxZWFhNmE0NGI1M2UyMSBNb24gU2VwIDE3IDAwOjAw OjAwIDIwMDEKRnJvbTogTW9oYW1tZWQgQW5hcyA8dHJpYWxsYXhAdHV0YW5vdGEuY29tPgpEYXRl OiBXZWQsIDE4IE9jdCAyMDIzIDE5OjE4OjM4ICswMTAwClN1YmplY3Q6IFtQQVRDSCAwNi8yMl0g Z3RodW1iOiByZXZidW1wIGZvciBleGl2Mi0wLjI4LjEuCgotLS0KIHNyY3BrZ3MvZ3RodW1iL3Rl bXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9u KC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9ndGh1bWIvdGVtcGxhdGUgYi9zcmNwa2dzL2d0aHVt Yi90ZW1wbGF0ZQppbmRleCBjOGUxOWYwZGVkYjYxLi43MzJkNWUxYzYwODlmIDEwMDY0NAotLS0g YS9zcmNwa2dzL2d0aHVtYi90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2d0aHVtYi90ZW1wbGF0ZQpA QCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2d0aHVtYicKIHBrZ25hbWU9Z3Ro dW1iCiB2ZXJzaW9uPTMuMTIuMwotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfc3R5bGU9 bWVzb24KIGhvc3RtYWtlZGVwZW5kcz0iZ2V0dGV4dCBwa2ctY29uZmlnIGl0c3Rvb2wgZ2xpYi1k ZXZlbCIKIG1ha2VkZXBlbmRzPSJ3ZWJraXQyZ3RrLWRldmVsIGpzb24tZ2xpYi1kZXZlbCBsaWJz ZWNyZXQtZGV2ZWwgbGlicnN2Zy1kZXZlbAoKRnJvbSA5YWQyYjUzYzRkZTNiODEzMWMwMWY2MDNl OGQ4NWZjNzMwMzc2ZDIyIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBNb2hhbW1lZCBB bmFzIDx0cmlhbGxheEB0dXRhbm90YS5jb20+CkRhdGU6IFdlZCwgMTggT2N0IDIwMjMgMTk6MTg6 MzggKzAxMDAKU3ViamVjdDogW1BBVENIIDA3LzIyXSBnd2VudmlldzogcmV2YnVtcCBmb3IgZXhp djItMC4yOC4xLgoKLS0tCiBzcmNwa2dzL2d3ZW52aWV3L3RlbXBsYXRlIHwgMiArLQogMSBmaWxl IGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3Jj cGtncy9nd2Vudmlldy90ZW1wbGF0ZSBiL3NyY3BrZ3MvZ3dlbnZpZXcvdGVtcGxhdGUKaW5kZXgg MWE5OTc4ZjM4NDA4NC4uYzZlYzk0OTRlYjA2NyAxMDA2NDQKLS0tIGEvc3JjcGtncy9nd2Vudmll dy90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2d3ZW52aWV3L3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBA QAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZ3dlbnZpZXcnCiBwa2duYW1lPWd3ZW52aWV3CiB2ZXJz aW9uPTIzLjA4LjMKLXJldmlzaW9uPTEKK3JldmlzaW9uPTIKIGJ1aWxkX3N0eWxlPWNtYWtlCiBi dWlsZF9oZWxwZXI9cWVtdQogaG9zdG1ha2VkZXBlbmRzPSJleHRyYS1jbWFrZS1tb2R1bGVzIHBr Zy1jb25maWcgcXQ1LXFtYWtlIHF0NS1ob3N0LXRvb2xzCgpGcm9tIDU4NjFkOTdjMTcwNTA5Mjdm MmY0NGQ4YmI2ZmJiMDFkZTYzZTgwNWYgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE1v aGFtbWVkIEFuYXMgPHRyaWFsbGF4QHR1dGFub3RhLmNvbT4KRGF0ZTogV2VkLCAxOCBPY3QgMjAy MyAxOToxODozOCArMDEwMApTdWJqZWN0OiBbUEFUQ0ggMDgvMjJdIGh1Z2luOiByZXZidW1wIGZv ciBleGl2Mi0wLjI4LjEuCgotLS0KIHNyY3BrZ3MvaHVnaW4vcGF0Y2hlcy9leGl2Mi0wLjI4LnBh dGNoIHwgNzcgKysrKysrKysrKysrKysrKysrKysrKysrKysKIDEgZmlsZSBjaGFuZ2VkLCA3NyBp bnNlcnRpb25zKCspCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy9odWdpbi9wYXRjaGVzL2V4 aXYyLTAuMjgucGF0Y2gKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2h1Z2luL3BhdGNoZXMvZXhpdjIt MC4yOC5wYXRjaCBiL3NyY3BrZ3MvaHVnaW4vcGF0Y2hlcy9leGl2Mi0wLjI4LnBhdGNoCm5ldyBm aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAuLjQ5ZjA1MTgxMTcwMjAKLS0tIC9k ZXYvbnVsbAorKysgYi9zcmNwa2dzL2h1Z2luL3BhdGNoZXMvZXhpdjItMC4yOC5wYXRjaApAQCAt MCwwICsxLDc3IEBACitQYXRjaC1Tb3VyY2U6IGh0dHBzOi8vZ2l0bGFiLmFyY2hsaW51eC5vcmcv YXJjaGxpbnV4L3BhY2thZ2luZy9wYWNrYWdlcy9odWdpbi8tL2Jsb2IvbWFpbi9leGl2Mi0wLjI4 LnBhdGNoCitkaWZmIC1yIDc5Y2QxMWE3YTY2ZiBzcmMvaHVnaW5fYmFzZS9wYW5vZGF0YS9FeGl2 MkhlbHBlci5jcHAKKy0tLSBhL3NyYy9odWdpbl9iYXNlL3Bhbm9kYXRhL0V4aXYySGVscGVyLmNw cAlXZWQgTWF5IDI0IDE5OjEzOjIwIDIwMjMgKzAyMDAKKysrKyBiL3NyYy9odWdpbl9iYXNlL3Bh bm9kYXRhL0V4aXYySGVscGVyLmNwcAlNb24gSnVuIDA1IDAwOjMxOjE5IDIwMjMgKzAyMDAKK0BA IC00MCw3ICs0MCw3IEBACisgICAgICAgICAgICAgRXhpdjI6OkV4aWZEYXRhOjppdGVyYXRvciBp dHIgPSBleGlmRGF0YS5maW5kS2V5KEV4aXYyOjpFeGlmS2V5KGtleU5hbWUpKTsKKyAgICAgICAg ICAgICBpZiAoaXRyICE9IGV4aWZEYXRhLmVuZCgpICYmIGl0ci0+Y291bnQoKSkKKyAgICAgICAg ICAgICB7CistICAgICAgICAgICAgICAgIHZhbHVlID0gaXRyLT50b0xvbmcoKTsKKysgICAgICAg ICAgICAgICAgdmFsdWUgPSBpdHItPnRvVWludDMyKCk7CisgICAgICAgICAgICAgICAgIHJldHVy biB0cnVlOworICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICBlbHNlCitAQCAtMTY1LDcgKzE2 NSw3IEBACisgICAgICAgICB7CisgICAgICAgICAgICAgaWYoaXQhPWV4aWZEYXRhLmVuZCgpICYm IGl0LT5jb3VudCgpKQorICAgICAgICAgICAgIHsKKy0gICAgICAgICAgICAgICAgcmV0dXJuIGl0 LT50b0xvbmcoKTsKKysgICAgICAgICAgICAgICAgcmV0dXJuIGl0LT50b1VpbnQzMigpOworICAg ICAgICAgICAgIH0KKyAgICAgICAgICAgICByZXR1cm4gMDsKKyAgICAgICAgIH07CitAQCAtNjAw LDQgKzYwMCw0IEBACisgICAgICAgICB9OworIAorICAgICB9OyAvL25hbWVzcGFjZSBFeGl2Mkhl bHBlcgorLX07IC8vbmFtZXNwYWNlIEh1Z2luQmFzZQorXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBm aWxlCisrfTsgLy9uYW1lc3BhY2UgSHVnaW5CYXNlCitkaWZmIC1yIDc5Y2QxMWE3YTY2ZiBzcmMv aHVnaW5fYmFzZS9wYW5vZGF0YS9TcmNQYW5vSW1hZ2UuY3BwCistLS0gYS9zcmMvaHVnaW5fYmFz ZS9wYW5vZGF0YS9TcmNQYW5vSW1hZ2UuY3BwCVdlZCBNYXkgMjQgMTk6MTM6MjAgMjAyMyArMDIw MAorKysrIGIvc3JjL2h1Z2luX2Jhc2UvcGFub2RhdGEvU3JjUGFub0ltYWdlLmNwcAlNb24gSnVu IDA1IDAwOjMxOjE5IDIwMjMgKzAyMDAKK0BAIC0zODQsNyArMzg0LDcgQEAKKyAgICAgICAgICAg ICAgICAgICAgIHBvcyA9IHhtcERhdGEuZmluZEtleShFeGl2Mjo6WG1wS2V5KCJYbXAuR1Bhbm8u Q3JvcHBlZEFyZWFJbWFnZVdpZHRoUGl4ZWxzIikpOworICAgICAgICAgICAgICAgICAgICAgaWYg KHBvcyAhPSB4bXBEYXRhLmVuZCgpKQorICAgICAgICAgICAgICAgICAgICAgeworLSAgICAgICAg ICAgICAgICAgICAgICAgIGNyb3BwZWRXaWR0aCA9IHBvcy0+dG9Mb25nKCk7CisrICAgICAgICAg ICAgICAgICAgICAgICAgY3JvcHBlZFdpZHRoID0gcG9zLT50b1VpbnQzMigpOworICAgICAgICAg ICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAg ICAgICAgeworQEAgLTM5NCw3ICszOTQsNyBAQAorICAgICAgICAgICAgICAgICAgICAgcG9zID0g eG1wRGF0YS5maW5kS2V5KEV4aXYyOjpYbXBLZXkoIlhtcC5HUGFuby5Dcm9wcGVkQXJlYUltYWdl SGVpZ2h0UGl4ZWxzIikpOworICAgICAgICAgICAgICAgICAgICAgaWYgKHBvcyAhPSB4bXBEYXRh LmVuZCgpKQorICAgICAgICAgICAgICAgICAgICAgeworLSAgICAgICAgICAgICAgICAgICAgICAg IGNyb3BwZWRIZWlnaHQgPSBwb3MtPnRvTG9uZygpOworKyAgICAgICAgICAgICAgICAgICAgICAg IGNyb3BwZWRIZWlnaHQgPSBwb3MtPnRvVWludDMyKCk7CisgICAgICAgICAgICAgICAgICAgICB9 CisgICAgICAgICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgICAgICB7CitAQCAt NDA4LDcgKzQwOCw3IEBACisgICAgICAgICAgICAgICAgICAgICAgICAgZG91YmxlIGhmb3YgPSAw OworICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChwb3MgIT0geG1wRGF0YS5lbmQoKSkKKyAg ICAgICAgICAgICAgICAgICAgICAgICB7CistICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhm b3YgPSAzNjAgKiBjcm9wcGVkV2lkdGggLyAoZG91YmxlKXBvcy0+dG9Mb25nKCk7CisrICAgICAg ICAgICAgICAgICAgICAgICAgICAgIGhmb3YgPSAzNjAgKiBjcm9wcGVkV2lkdGggLyAoZG91Ymxl KXBvcy0+dG9VaW50MzIoKTsKKyAgICAgICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAg ICAgICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgICAgICAgICAgIHsKK0BAIC00MTks NyArNDE5LDcgQEAKKyAgICAgICAgICAgICAgICAgICAgICAgICBwb3MgPSB4bXBEYXRhLmZpbmRL ZXkoRXhpdjI6OlhtcEtleSgiWG1wLkdQYW5vLkZ1bGxQYW5vSGVpZ2h0UGl4ZWxzIikpOworICAg ICAgICAgICAgICAgICAgICAgICAgIGlmIChwb3MgIT0geG1wRGF0YS5lbmQoKSkKKyAgICAgICAg ICAgICAgICAgICAgICAgICB7CistICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZ1bGxIZWln aHQgPSBwb3MtPnRvTG9uZygpOworKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBmdWxsSGVp Z2h0ID0gcG9zLT50b1VpbnQzMigpOworICAgICAgICAgICAgICAgICAgICAgICAgIH0KKyAgICAg ICAgICAgICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgICAgICAgICAgeworQEAg LTQzMCw3ICs0MzAsNyBAQAorICAgICAgICAgICAgICAgICAgICAgICAgIHBvcyA9IHhtcERhdGEu ZmluZEtleShFeGl2Mjo6WG1wS2V5KCJYbXAuR1Bhbm8uQ3JvcHBlZEFyZWFUb3BQaXhlbHMiKSk7 CisgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHBvcyAhPSB4bXBEYXRhLmVuZCgpKQorICAg ICAgICAgICAgICAgICAgICAgICAgIHsKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAgY3Jv cFRvcCA9IHBvcy0+dG9Mb25nKCk7CisrICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNyb3BU b3AgPSBwb3MtPnRvVWludDMyKCk7CisgICAgICAgICAgICAgICAgICAgICAgICAgfQorICAgICAg ICAgICAgICAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICAgICAgICAgICB7CgpGcm9t IDVlMjE1Mjk1NjA3ZWZhYmM1ZTUwYTMzYTFiYWQ1NzAxMmRiNzQ0MmQgTW9uIFNlcCAxNyAwMDow MDowMCAyMDAxCkZyb206IE1vaGFtbWVkIEFuYXMgPHRyaWFsbGF4QHR1dGFub3RhLmNvbT4KRGF0 ZTogV2VkLCAxOCBPY3QgMjAyMyAxOToxODozOCArMDEwMApTdWJqZWN0OiBbUEFUQ0ggMDkvMjJd IGtmaWxlbWV0YWRhdGE1OiByZXZidW1wIGZvciBleGl2Mi0wLjI4LjEuCgotLS0KIHNyY3BrZ3Mv a2ZpbGVtZXRhZGF0YTUvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRp b24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2tmaWxlbWV0YWRhdGE1 L3RlbXBsYXRlIGIvc3JjcGtncy9rZmlsZW1ldGFkYXRhNS90ZW1wbGF0ZQppbmRleCAwMGY3YTk4 Y2Y2Mzk5Li5lMjk0YWU1YWY5NDdjIDEwMDY0NAotLS0gYS9zcmNwa2dzL2tmaWxlbWV0YWRhdGE1 L3RlbXBsYXRlCisrKyBiL3NyY3BrZ3Mva2ZpbGVtZXRhZGF0YTUvdGVtcGxhdGUKQEAgLTEsNyAr MSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdrZmlsZW1ldGFkYXRhNScKIHBrZ25hbWU9a2Zp bGVtZXRhZGF0YTUKIHZlcnNpb249NS4xMTEuMAotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVp bGRfc3R5bGU9Y21ha2UKIGhvc3RtYWtlZGVwZW5kcz0ia2NvcmVhZGRvbnMgZXh0cmEtY21ha2Ut bW9kdWxlcyBwa2ctY29uZmlnIHF0NS1ob3N0LXRvb2xzIHF0NS1xbWFrZQogIGdldHRleHQga2Nv cmVhZGRvbnMgcHl0aG9uMyIKCkZyb20gNzZlNWI0YmFkMDNhY2ZhNjdiZmZjMmViMDljYWM5NDRl N2JkYWFmMiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTW9oYW1tZWQgQW5hcyA8dHJp YWxsYXhAdHV0YW5vdGEuY29tPgpEYXRlOiBXZWQsIDE4IE9jdCAyMDIzIDE5OjE4OjM5ICswMTAw ClN1YmplY3Q6IFtQQVRDSCAxMC8yMl0ga3JlbmFtZTogcmV2YnVtcCBmb3IgZXhpdjItMC4yOC4x LgoKLS0tCiBzcmNwa2dzL2tyZW5hbWUvcGF0Y2hlcy9lN2RkNzY3YS5wYXRjaCB8IDkwICsrKysr KysrKysrKysrKysrKysrKysrKysrCiBzcmNwa2dzL2tyZW5hbWUvdGVtcGxhdGUgICAgICAgICAg ICAgICB8ICAyICstCiAyIGZpbGVzIGNoYW5nZWQsIDkxIGluc2VydGlvbnMoKyksIDEgZGVsZXRp b24oLSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL2tyZW5hbWUvcGF0Y2hlcy9lN2RkNzY3 YS5wYXRjaAoKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mva3JlbmFtZS9wYXRjaGVzL2U3ZGQ3NjdhLnBh dGNoIGIvc3JjcGtncy9rcmVuYW1lL3BhdGNoZXMvZTdkZDc2N2EucGF0Y2gKbmV3IGZpbGUgbW9k ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMC4uYTBlZjQyOGNlNDZiMQotLS0gL2Rldi9udWxs CisrKyBiL3NyY3BrZ3Mva3JlbmFtZS9wYXRjaGVzL2U3ZGQ3NjdhLnBhdGNoCkBAIC0wLDAgKzEs OTAgQEAKK1BhdGNoLVNvdXJjZTogaHR0cHM6Ly9pbnZlbnQua2RlLm9yZy91dGlsaXRpZXMva3Jl bmFtZS8tL2NvbW1pdC9lN2RkNzY3YQorRnJvbSBlN2RkNzY3YTlhMTA2OGVlMWZlMTUwMmM0ZDYx OWI1N2QzYjEyYWRkIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQorRnJvbTogQW5kcmVhcyBTdHVy bWxlY2huZXIgPGFzdHVybUBnZW50b28ub3JnPgorRGF0ZTogRnJpLCAyNiBNYXkgMjAyMyAyMzoy MzoxMCArMDIwMAorU3ViamVjdDogW1BBVENIXSBGaXggYnVpbGQgd2l0aCA+PWV4aXYyLTAuMjgs IHJhaXNlIG1pbmltdW0gdG8gMC4yNworCistIGVuYWJsZXMgdXNlIG9mIEVYSVYyX1RFU1RfVkVS U0lPTiBtYWNybworLSBleGl2MiBoZWFkZXJzIGNsZWFudXAKKworU2lnbmVkLW9mZi1ieTogQW5k cmVhcyBTdHVybWxlY2huZXIgPGFzdHVybUBnZW50b28ub3JnPgorLS0tCisgQ01ha2VMaXN0cy50 eHQgICAgICAgICB8ICA2ICstLS0tLQorIGNvbmZpZy1rcmVuYW1lLmguY21ha2UgfCAgMyAtLS0K KyBzcmMvZXhpdjJwbHVnaW4uY3BwICAgIHwgMTcgKysrKystLS0tLS0tLS0tLS0KKyAzIGZpbGVz IGNoYW5nZWQsIDYgaW5zZXJ0aW9ucygrKSwgMjAgZGVsZXRpb25zKC0pCisKK2RpZmYgLS1naXQg YS9DTWFrZUxpc3RzLnR4dCBiL0NNYWtlTGlzdHMudHh0CitpbmRleCAwYmRhOGFjLi43MmU3Mjk3 IDEwMDY0NAorLS0tIGEvQ01ha2VMaXN0cy50eHQKKysrKyBiL0NNYWtlTGlzdHMudHh0CitAQCAt NTYsMTMgKzU2LDkgQEAgc2V0X3BhY2thZ2VfcHJvcGVydGllcyhUYWdsaWIgUFJPUEVSVElFUwor ICAgICBUWVBFIE9QVElPTkFMKQorIAorICMgRmluZCBleGl2MgorLWZpbmRfcGFja2FnZShMaWJF eGl2MiAwLjEzKSAjIEFjY2Vzc01vZGUgd2FzIGFkZGVkIGluIDAuMTMKKytmaW5kX3BhY2thZ2Uo TGliRXhpdjIgMC4yNykgIyBFWElWMl9URVNUX1ZFUlNJT04gd2FzIGFkZGVkIGluIDAuMjcKKyBz ZXRfcGFja2FnZV9wcm9wZXJ0aWVzKExpYkV4aXYyIFBST1BFUlRJRVMgVFlQRSBPUFRJT05BTCkK KyAKKy1pZiAoTGliRXhpdjJfVkVSU0lPTiBWRVJTSU9OX0dSRUFURVJfRVFVQUwgIjAuMjciKQor LSAgICBzZXQoSEFWRV9MSUJFWElWMl8wXzI3IFRSVUUpCistZW5kaWYoKQorLQorICMgRmluZCBw b2RvZm8KKyBmaW5kX3BhY2thZ2UoUG9Eb0ZvKQorIHNldF9wYWNrYWdlX3Byb3BlcnRpZXMoUG9E b0ZvIFBST1BFUlRJRVMKK2RpZmYgLS1naXQgYS9jb25maWcta3JlbmFtZS5oLmNtYWtlIGIvY29u ZmlnLWtyZW5hbWUuaC5jbWFrZQoraW5kZXggNzZjM2QzMC4uODYyZTQwYiAxMDA2NDQKKy0tLSBh L2NvbmZpZy1rcmVuYW1lLmguY21ha2UKKysrKyBiL2NvbmZpZy1rcmVuYW1lLmguY21ha2UKK0BA IC02LDkgKzYsNiBAQAorIC8qIGhhdmUgRXhpdjIgKi8KKyAjY21ha2VkZWZpbmUwMSBIQVZFX0VY SVYyCisgCistLyogRGVmaW5lZCBpZiB3ZSBoYXZlIGxpYmV4aXYyID49IDAuMjcgKi8KKy0jY21h a2VkZWZpbmUgSEFWRV9MSUJFWElWMl8wXzI3CistCisgLyogaGF2ZSBQb0RvRm8gKi8KKyAjY21h a2VkZWZpbmUwMSBIQVZFX1BPRE9GTworIAorZGlmZiAtLWdpdCBhL3NyYy9leGl2MnBsdWdpbi5j cHAgYi9zcmMvZXhpdjJwbHVnaW4uY3BwCitpbmRleCA1Njk0ZDhjLi4yNWU4ODY5IDEwMDY0NAor LS0tIGEvc3JjL2V4aXYycGx1Z2luLmNwcAorKysrIGIvc3JjL2V4aXYycGx1Z2luLmNwcAorQEAg LTMsMjAgKzMsOSBAQAorIAorICNpbmNsdWRlICJleGl2MnBsdWdpbi5oIgorIAorLSNpbmNsdWRl ICIuLi9jb25maWcta3JlbmFtZS5oIgorLQorICNpbmNsdWRlIDxLTG9jYWxpemVkU3RyaW5nPgor IAorLSNpbmNsdWRlIDxleGl2Mi9lcnJvci5ocHA+CistI2luY2x1ZGUgPGV4aXYyL2V4aWYuaHBw PgorLSNpbmNsdWRlIDxleGl2Mi9pbWFnZS5ocHA+CistI2luY2x1ZGUgPGV4aXYyL2lwdGMuaHBw PgorLSNpZmRlZiBIQVZFX0xJQkVYSVYyXzBfMjcKKy0gICAgI2luY2x1ZGUgPGV4aXYyL3htcF9l eGl2Mi5ocHA+CistI2Vsc2UKKy0gICAgI2luY2x1ZGUgPGV4aXYyL3htcC5ocHA+CistI2VuZGlm CistI2luY2x1ZGUgPGV4aXYyL3RhZ3MuaHBwPgorKyNpbmNsdWRlIDxleGl2Mi9leGl2Mi5ocHA+ CisgCisgI2luY2x1ZGUgImJhdGNocmVuYW1lci5oIgorICNpbmNsdWRlICJ0b2tlbmhlbHBkaWFs b2cuaCIKK0BAIC0zODEsNyArMzcwLDExIEBAIFFTdHJpbmcgRXhpdjJQbHVnaW46OnByb2Nlc3NG aWxlKEJhdGNoUmVuYW1lciAqYiwgaW50IGluZGV4LCBjb25zdCBRU3RyaW5nICZmaWxlCisgICAg IHN0ZDo6c3RyaW5nIHN0ckZpbGVuYW1lKGFzYy5jb25zdERhdGEoKSwgYXNjLmxlbmd0aCgpKTsK KyAKKyAgICAgdHJ5IHsKKysjaWYgRVhJVjJfVEVTVF9WRVJTSU9OKDAsMjgsMCkKKysgICAgICAg IEltYWdlOjpVbmlxdWVQdHIgaW1hZ2UgPSBFeGl2Mjo6SW1hZ2VGYWN0b3J5OjpvcGVuKHN0ckZp bGVuYW1lKTsKKysjZWxzZQorICAgICAgICAgSW1hZ2U6OkF1dG9QdHIgaW1hZ2UgPSBFeGl2Mjo6 SW1hZ2VGYWN0b3J5OjpvcGVuKHN0ckZpbGVuYW1lKTsKKysjZW5kaWYKKyAgICAgICAgIGlmIChp bWFnZS5nZXQoKSAhPSBudWxscHRyICYmIGltYWdlLT5nb29kKCkpIHsKKyAgICAgICAgICAgICBp bWFnZS0+cmVhZE1ldGFkYXRhKCk7CisgCistLSAKK0dpdExhYgorCmRpZmYgLS1naXQgYS9zcmNw a2dzL2tyZW5hbWUvdGVtcGxhdGUgYi9zcmNwa2dzL2tyZW5hbWUvdGVtcGxhdGUKaW5kZXggNjYw MjMxNjNlMzI5My4uZGY1NTM1MDA3NzE0YSAxMDA2NDQKLS0tIGEvc3JjcGtncy9rcmVuYW1lL3Rl bXBsYXRlCisrKyBiL3NyY3BrZ3Mva3JlbmFtZS90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMg VGVtcGxhdGUgZmlsZSBmb3IgJ2tyZW5hbWUnCiBwa2duYW1lPWtyZW5hbWUKIHZlcnNpb249NS4w LjIKLXJldmlzaW9uPTEKK3JldmlzaW9uPTIKIGJ1aWxkX3N0eWxlPWNtYWtlCiBob3N0bWFrZWRl cGVuZHM9ImV4dHJhLWNtYWtlLW1vZHVsZXMgZ2V0dGV4dCBrY29yZWFkZG9ucyBwa2ctY29uZmln IHF0NS1ob3N0LXRvb2xzIHF0NS1xbWFrZSIKIG1ha2VkZXBlbmRzPSJleGl2Mi1kZXZlbCBmcmVl dHlwZS1kZXZlbCBranMtZGV2ZWwga3BhcnRzLWRldmVsIGxpYnBvZG9mby1kZXZlbAoKRnJvbSA2 MGQ0N2NlNWMxMzA3ZjMxMjJlMWU0ZGI2MGRiMDVkZWU4MTQyM2E5IE1vbiBTZXAgMTcgMDA6MDA6 MDAgMjAwMQpGcm9tOiBNb2hhbW1lZCBBbmFzIDx0cmlhbGxheEB0dXRhbm90YS5jb20+CkRhdGU6 IFdlZCwgMTggT2N0IDIwMjMgMTk6MTg6MzkgKzAxMDAKU3ViamVjdDogW1BBVENIIDExLzIyXSBs aWJleHRyYWN0b3I6IHJldmJ1bXAgZm9yIGV4aXYyLTAuMjguMS4KCi0tLQogc3JjcGtncy9saWJl eHRyYWN0b3IvcGF0Y2hlcy9leGl2Mi0wLjI4LnBhdGNoIHwgMjg2ICsrKysrKysrKysrKysrKysr Kwogc3JjcGtncy9saWJleHRyYWN0b3IvcGF0Y2hlcy9maXgtdGVzdHMuZGlmZiAgIHwgIDI0ICsr CiAyIGZpbGVzIGNoYW5nZWQsIDMxMCBpbnNlcnRpb25zKCspCiBjcmVhdGUgbW9kZSAxMDA2NDQg c3JjcGtncy9saWJleHRyYWN0b3IvcGF0Y2hlcy9leGl2Mi0wLjI4LnBhdGNoCiBjcmVhdGUgbW9k ZSAxMDA2NDQgc3JjcGtncy9saWJleHRyYWN0b3IvcGF0Y2hlcy9maXgtdGVzdHMuZGlmZgoKZGlm ZiAtLWdpdCBhL3NyY3BrZ3MvbGliZXh0cmFjdG9yL3BhdGNoZXMvZXhpdjItMC4yOC5wYXRjaCBi L3NyY3BrZ3MvbGliZXh0cmFjdG9yL3BhdGNoZXMvZXhpdjItMC4yOC5wYXRjaApuZXcgZmlsZSBt b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwLi4yNzBhNjI2ZDhhYjA2Ci0tLSAvZGV2L251 bGwKKysrIGIvc3JjcGtncy9saWJleHRyYWN0b3IvcGF0Y2hlcy9leGl2Mi0wLjI4LnBhdGNoCkBA IC0wLDAgKzEsMjg2IEBACitQYXRjaC1Tb3VyY2U6IGh0dHBzOi8vZ2l0bGFiLmFyY2hsaW51eC5v cmcvYXJjaGxpbnV4L3BhY2thZ2luZy9wYWNrYWdlcy9saWJleHRyYWN0b3IvLS9ibG9iL21haW4v ZXhpdjItMC4yOC5wYXRjaAorZGlmZiAtLWdpdCBhL3NyYy9wbHVnaW5zL2V4aXYyX2V4dHJhY3Rv ci5jYyBiL3NyYy9wbHVnaW5zL2V4aXYyX2V4dHJhY3Rvci5jYworaW5kZXggNzhmOWJkYS4uZDMy ZWQ2YSAxMDA2NDQKKy0tLSBhL3NyYy9wbHVnaW5zL2V4aXYyX2V4dHJhY3Rvci5jYworKysrIGIv c3JjL3BsdWdpbnMvZXhpdjJfZXh0cmFjdG9yLmNjCitAQCAtOTAsNyArOTAsMTEgQEAgdmlydHVh bCBpbnQgY2xvc2UgKCk7CisgICogQHBhcmFtIHJjb3VudCBudW1iZXIgb2YgYnl0ZXMgdG8gcmVh ZAorICAqIEByZXR1cm4gYnVmZmVyIHdpdGggZGF0YSByZWFkLCBlbXB0eSBidWZmZXIgKCEpIG9u IGZhaWx1cmUgKCEpCisgICovCisrI2lmIEVYSVYyX1RFU1RfVkVSU0lPTiAoMCwyOCwwKQorK3Zp cnR1YWwgRXhpdjI6OkRhdGFCdWYgcmVhZCAoc2l6ZV90IHJjb3VudCk7CisrI2Vsc2UKKyB2aXJ0 dWFsIEV4aXYyOjpEYXRhQnVmIHJlYWQgKGxvbmcgcmNvdW50KTsKKysjZW5kaWYKKyAKKyAvKioK KyAgKiBSZWFkIHVwIHRvICdyY291bnQnIGJ5dGVzIGludG8gJ2J1ZicuCitAQCAtOTksOCArMTAz LDE3IEBAIHZpcnR1YWwgRXhpdjI6OkRhdGFCdWYgcmVhZCAobG9uZyByY291bnQpOworICAqIEBw YXJhbSByY291bnQgc2l6ZSBvZiAnYnVmJworICAqIEByZXR1cm4gbnVtYmVyIG9mIGJ5dGVzIHJl YWQgc3VjY2Vzc2Z1bGx5LCAwIG9uIGZhaWx1cmUgKCEpCisgICovCisrI2lmIEVYSVYyX1RFU1Rf VkVSU0lPTiAoMCwyOCwwKQorK3ZpcnR1YWwgc2l6ZV90IHJlYWQgKEV4aXYyOjpieXRlICpidWYs CisrICAgICAgICAgICAgICAgICAgIHNpemVfdCByY291bnQpOworKyNlbHNlCisgdmlydHVhbCBs b25nIHJlYWQgKEV4aXYyOjpieXRlICpidWYsCisgICAgICAgICAgICAgICAgICAgIGxvbmcgcmNv dW50KTsKKysjZW5kaWYKKysKKysjaWYgRVhJVjJfVEVTVF9WRVJTSU9OICgwLDI4LDApCisrdmly dHVhbCB2b2lkIHBvcHVsYXRlRmFrZURhdGEoKTsKKysjZW5kaWYKKyAKKyAvKioKKyAgKiBSZWFk IGEgc2luZ2xlIGNoYXJhY3Rlci4KK0BAIC0xMTcsOCArMTMwLDEzIEBAIHZpcnR1YWwgaW50IGdl dGIgKCk7CisgICogQHBhcmFtIHdjb3VudCBob3cgbWFueSBieXRlcyB0byB3cml0ZQorICAqIEBy ZXR1cm4gLTEgKGFsd2F5cyBmYWlscykKKyAgKi8KKysjaWYgRVhJVjJfVEVTVF9WRVJTSU9OKDAs MjgsMCkKKyt2aXJ0dWFsIHNpemVfdCB3cml0ZSAoY29uc3QgRXhpdjI6OmJ5dGUgKmRhdGEsCisr ICAgICAgICAgICAgICAgICAgICBzaXplX3Qgd2NvdW50KTsKKysjZWxzZQorIHZpcnR1YWwgbG9u ZyB3cml0ZSAoY29uc3QgRXhpdjI6OmJ5dGUgKmRhdGEsCisgICAgICAgICAgICAgICAgICAgICBs b25nIHdjb3VudCk7CisrI2VuZGlmCisgCisgLyoqCisgICogV3JpdGUgdG8gc3RyZWFtLgorQEAg LTEyNiw3ICsxNDQsMTEgQEAgdmlydHVhbCBsb25nIHdyaXRlIChjb25zdCBFeGl2Mjo6Ynl0ZSAq ZGF0YSwKKyAgKiBAcGFyYW0gc3JjIHN0cmVhbSB0byBjb3B5CisgICogQHJldHVybiAtMSAoYWx3 YXlzIGZhaWxzKQorICAqLworKyNpZiBFWElWMl9URVNUX1ZFUlNJT04oMCwyOCwwKQorK3ZpcnR1 YWwgc2l6ZV90IHdyaXRlIChFeGl2Mjo6QmFzaWNJbyAmc3JjKTsKKysjZWxzZQorIHZpcnR1YWwg bG9uZyB3cml0ZSAoRXhpdjI6OkJhc2ljSW8gJnNyYyk7CisrI2VuZGlmCisgCisgLyoqCisgICog V3JpdGUgYSBzaW5nbGUgYnl0ZS4KK0BAIC0xNzIsNyArMTk0LDExIEBAIHZpcnR1YWwgaW50IG11 bm1hcCAoKTsKKyAgKgorICAqIEByZXR1cm4gLTEgb24gZXJyb3IKKyAgKi8KKysjaWYgRVhJVjJf VEVTVF9WRVJTSU9OKDAsMjgsMCkKKyt2aXJ0dWFsIHNpemVfdCB0ZWxsICh2b2lkKSBjb25zdDsK KysjZWxzZQorIHZpcnR1YWwgbG9uZyBpbnQgdGVsbCAodm9pZCkgY29uc3Q7CisrI2VuZGlmCisg CisgLyoqCisgICogUmV0dXJuIG92ZXJhbGwgc2l6ZSBvZiB0aGUgZmlsZS4KK0BAIC0yMTMsNyAr MjM5LDExIEBAIHZpcnR1YWwgYm9vbCBlb2YgKCkgY29uc3Q7CisgICoKKyAgKiBAdGhyb3dzIGVy cm9yCisgICovCisrI2lmIEVYSVYyX1RFU1RfVkVSU0lPTigwLDI4LDApCisrdmlydHVhbCBjb25z dCBzdGQ6OnN0cmluZyYgcGF0aCAoKSBjb25zdCBub2V4Y2VwdDsKKysjZWxzZQorIHZpcnR1YWwg c3RkOjpzdHJpbmcgcGF0aCAoKSBjb25zdDsKKysjZW5kaWYKKyAKKyAjaWZkZWYgRVhWX1VOSUNP REVfUEFUSAorIC8qKgorQEAgLTIzMCw3ICsyNjAsMTEgQEAgdmlydHVhbCBzdGQ6OndzdHJpbmcg d3BhdGggKCkgY29uc3Q7CisgICoKKyAgKiBAdGhyb3dzIGVycm9yCisgICovCisrI2lmIEVYSVYy X1RFU1RfVkVSU0lPTigwLDI4LDApCisrdmlydHVhbCBFeGl2Mjo6QmFzaWNJbzo6VW5pcXVlUHRy IHRlbXBvcmFyeSAoKSBjb25zdDsKKysjZWxzZQorIHZpcnR1YWwgRXhpdjI6OkJhc2ljSW86OkF1 dG9QdHIgdGVtcG9yYXJ5ICgpIGNvbnN0OworKyNlbmRpZgorIAorIH07CisgCitAQCAtMjY2LDcg KzMwMCwxMSBAQCBFeHRyYWN0b3JJTzo6Y2xvc2UgKCkKKyAgKiBAcmV0dXJuIGJ1ZmZlciB3aXRo IGRhdGEgcmVhZCwgZW1wdHkgYnVmZmVyICghKSBvbiBmYWlsdXJlICghKQorICAqLworIEV4aXYy OjpEYXRhQnVmCisrI2lmIEVYSVYyX1RFU1RfVkVSU0lPTiAoMCwyOCwwKQorK0V4dHJhY3RvcklP OjpyZWFkIChzaXplX3QgcmNvdW50KQorKyNlbHNlCisgRXh0cmFjdG9ySU86OnJlYWQgKGxvbmcg cmNvdW50KQorKyNlbmRpZgorIHsKKyAgIHZvaWQgKmRhdGE7CisgICBzc2l6ZV90IHJldDsKK0BA IC0yODQsOSArMzIyLDE1IEBAIEV4dHJhY3RvcklPOjpyZWFkIChsb25nIHJjb3VudCkKKyAgKiBA cGFyYW0gcmNvdW50IHNpemUgb2YgJ2J1ZicKKyAgKiBAcmV0dXJuIG51bWJlciBvZiBieXRlcyBy ZWFkIHN1Y2Nlc3NmdWxseSwgMCBvbiBmYWlsdXJlICghKQorICAqLworKyNpZiBFWElWMl9URVNU X1ZFUlNJT04gKDAsMjgsMCkKKytzaXplX3QKKytFeHRyYWN0b3JJTzo6cmVhZCAoRXhpdjI6OmJ5 dGUgKmJ1ZiwKKysgICAgICAgICAgICAgICAgICAgc2l6ZV90IHJjb3VudCkKKysjZWxzZQorIGxv bmcKKyBFeHRyYWN0b3JJTzo6cmVhZCAoRXhpdjI6OmJ5dGUgKmJ1ZiwKKyAgICAgICAgICAgICAg ICAgICAgbG9uZyByY291bnQpCisrI2VuZGlmCisgeworICAgdm9pZCAqZGF0YTsKKyAgIHNzaXpl X3QgcmV0OworQEAgLTMwNSw2ICszNDksMTIgQEAgRXh0cmFjdG9ySU86OnJlYWQgKEV4aXYyOjpi eXRlICpidWYsCisgICByZXR1cm4gZ290OworIH0KKyAKKysjaWYgRVhJVjJfVEVTVF9WRVJTSU9O ICgwLDI4LDApCisrdm9pZCBFeHRyYWN0b3JJTzo6cG9wdWxhdGVGYWtlRGF0YSgpCisreworKyAg cmV0dXJuOworK30KKysjZW5kaWYKKyAKKyAvKioKKyAgKiBSZWFkIGEgc2luZ2xlIGNoYXJhY3Rl ci4KK0BAIC0zMTksNyArMzY5LDkgQEAgRXh0cmFjdG9ySU86OmdldGIgKCkKKyAgIGNvbnN0IHVu c2lnbmVkIGNoYXIgKnI7CisgCisgICBpZiAoMSAhPSBlYy0+cmVhZCAoZWMtPmNscywgJmRhdGEs IDEpKQorLSNpZiBFWElWMl9URVNUX1ZFUlNJT04gKDAsMjcsMCkKKysjaWYgRVhJVjJfVEVTVF9W RVJTSU9OKDAsMjgsMCkKKysgICAgdGhyb3cgRXhpdjI6OkVycm9yIChFeGl2Mjo6RXJyb3JDb2Rl OjprZXJEZWNvZGVMYW5nQWx0UXVhbGlmaWVyRmFpbGVkKTsKKysjZWxpZiBFWElWMl9URVNUX1ZF UlNJT04gKDAsMjcsMCkKKyAgICAgdGhyb3cgRXhpdjI6OkJhc2ljRXJyb3I8Y2hhcj4gKEV4aXYy OjprZXJEZWNvZGVMYW5nQWx0UXVhbGlmaWVyRmFpbGVkKTsKKyAjZWxzZQorICAgICB0aHJvdyBF eGl2Mjo6QmFzaWNFcnJvcjxjaGFyPiAoNDIgLyogZXJyb3IgY29kZSAqLyk7CitAQCAtMzM2LDkg KzM4OCwxNSBAQCBFeHRyYWN0b3JJTzo6Z2V0YiAoKQorICAqIEBwYXJhbSB3Y291bnQgaG93IG1h bnkgYnl0ZXMgdG8gd3JpdGUKKyAgKiBAcmV0dXJuIC0xIChhbHdheXMgZmFpbHMpCisgICovCisr I2lmIEVYSVYyX1RFU1RfVkVSU0lPTigwLDI4LDApCisrc2l6ZV90CisrRXh0cmFjdG9ySU86Ondy aXRlIChjb25zdCBFeGl2Mjo6Ynl0ZSAqZGF0YSwKKysgICAgICAgICAgICAgICAgICAgIHNpemVf dCB3Y291bnQpCisrI2Vsc2UKKyBsb25nCisgRXh0cmFjdG9ySU86OndyaXRlIChjb25zdCBFeGl2 Mjo6Ynl0ZSAqZGF0YSwKKyAgICAgICAgICAgICAgICAgICAgIGxvbmcgd2NvdW50KQorKyNlbmRp ZgorIHsKKyAgIHJldHVybiAtMTsKKyB9CitAQCAtMzUwLDcgKzQwOCwxMSBAQCBFeHRyYWN0b3JJ Tzo6d3JpdGUgKGNvbnN0IEV4aXYyOjpieXRlICpkYXRhLAorICAqIEBwYXJhbSBzcmMgc3RyZWFt IHRvIGNvcHkKKyAgKiBAcmV0dXJuIC0xIChhbHdheXMgZmFpbHMpCisgICovCisrI2lmIEVYSVYy X1RFU1RfVkVSU0lPTigwLDI4LDApCisrc2l6ZV90CisrI2Vsc2UKKyBsb25nCisrI2VuZGlmCisg RXh0cmFjdG9ySU86OndyaXRlIChFeGl2Mjo6QmFzaWNJbyAmc3JjKQorIHsKKyAgIHJldHVybiAt MTsKK0BAIC0zNzgsNyArNDQwLDkgQEAgRXh0cmFjdG9ySU86OnB1dGIgKEV4aXYyOjpieXRlIGRh dGEpCisgdm9pZAorIEV4dHJhY3RvcklPOjp0cmFuc2ZlciAoRXhpdjI6OkJhc2ljSW8mIHNyYykK KyB7CistI2lmIEVYSVYyX1RFU1RfVkVSU0lPTiAoMCwyNywwKQorKyNpZiBFWElWMl9URVNUX1ZF UlNJT04oMCwyOCwwKQorKyAgdGhyb3cgRXhpdjI6OkVycm9yIChFeGl2Mjo6RXJyb3JDb2RlOjpr ZXJEZWNvZGVMYW5nQWx0UXVhbGlmaWVyRmFpbGVkKTsKKysjZWxpZiBFWElWMl9URVNUX1ZFUlNJ T04gKDAsMjcsMCkKKyAgIHRocm93IEV4aXYyOjpCYXNpY0Vycm9yPGNoYXI+IChFeGl2Mjo6a2Vy RGVjb2RlTGFuZ0FsdFF1YWxpZmllckZhaWxlZCk7CisgI2Vsc2UKKyAgIHRocm93IEV4aXYyOjpC YXNpY0Vycm9yPGNoYXI+ICg0MiAvKiBlcnJvciBjb2RlICovKTsKK0BAIC00MjcsNyArNDkxLDkg QEAgRXh0cmFjdG9ySU86OnNlZWsgKGxvbmcgb2Zmc2V0LAorIEV4aXYyOjpieXRlICoKKyBFeHRy YWN0b3JJTzo6bW1hcCAoYm9vbCBpc1dyaXRhYmxlKQorIHsKKy0jaWYgRVhJVjJfVEVTVF9WRVJT SU9OICgwLDI3LDApCisrI2lmIEVYSVYyX1RFU1RfVkVSU0lPTiAoMCwyOCwwKQorKyAgdGhyb3cg RXhpdjI6OkVycm9yIChFeGl2Mjo6RXJyb3JDb2RlOjprZXJEZWNvZGVMYW5nQWx0UXVhbGlmaWVy RmFpbGVkKTsKKysjZWxpZiBFWElWMl9URVNUX1ZFUlNJT04gKDAsMjcsMCkKKyAgIHRocm93IEV4 aXYyOjpCYXNpY0Vycm9yPGNoYXI+IChFeGl2Mjo6a2VyRGVjb2RlTGFuZ0FsdFF1YWxpZmllckZh aWxlZCk7CisgI2Vsc2UKKyAgIHRocm93IEV4aXYyOjpCYXNpY0Vycm9yPGNoYXI+ICg0MiAvKiBl cnJvciBjb2RlICovKTsKK0BAIC00NTIsNyArNTE4LDExIEBAIEV4dHJhY3RvcklPOjptdW5tYXAg KCkKKyAgKgorICAqIEByZXR1cm4gLTEgb24gZXJyb3IKKyAgKi8KKysjaWYgRVhJVjJfVEVTVF9W RVJTSU9OKDAsMjgsMCkKKytzaXplX3QKKysjZWxzZQorIGxvbmcgaW50CisrI2VuZGlmCisgRXh0 cmFjdG9ySU86OnRlbGwgKHZvaWQpIGNvbnN0CisgeworICAgcmV0dXJuIChsb25nKSBlYy0+c2Vl ayAoZWMtPmNscywgMCwgU0VFS19DVVIpOworQEAgLTUxNiwxMCArNTg2LDE3IEBAIEV4dHJhY3Rv cklPOjplb2YgKCkgY29uc3QKKyAgKgorICAqIEB0aHJvd3MgZXJyb3IKKyAgKi8KKysjaWYgRVhJ VjJfVEVTVF9WRVJTSU9OICgwLDI4LDApCisrY29uc3Qgc3RkOjpzdHJpbmcmCisrRXh0cmFjdG9y SU86OnBhdGggKCkgY29uc3Qgbm9leGNlcHQKKysjZWxzZQorIHN0ZDo6c3RyaW5nCisgRXh0cmFj dG9ySU86OnBhdGggKCkgY29uc3QKKysjZW5kaWYKKyB7CistI2lmIEVYSVYyX1RFU1RfVkVSU0lP TiAoMCwyNywwKQorKyNpZiBFWElWMl9URVNUX1ZFUlNJT04gKDAsMjgsMCkKKysgIHRocm93IEV4 aXYyOjpFcnJvciAoRXhpdjI6OkVycm9yQ29kZTo6a2VyRGVjb2RlTGFuZ0FsdFF1YWxpZmllckZh aWxlZCk7CisrI2VsaWYgRVhJVjJfVEVTVF9WRVJTSU9OICgwLDI3LDApCisgICB0aHJvdyBFeGl2 Mjo6QmFzaWNFcnJvcjxjaGFyPiAoRXhpdjI6OmtlckRlY29kZUxhbmdBbHRRdWFsaWZpZXJGYWls ZWQpOworICNlbHNlCisgICB0aHJvdyBFeGl2Mjo6QmFzaWNFcnJvcjxjaGFyPiAoNDIgLyogZXJy b3IgY29kZSAqLyk7CitAQCAtNTM2LDcgKzYxMyw5IEBAIEV4dHJhY3RvcklPOjpwYXRoICgpIGNv bnN0Cisgc3RkOjp3c3RyaW5nCisgRXh0cmFjdG9ySU86OndwYXRoICgpIGNvbnN0CisgeworLSNp ZiBFWElWMl9URVNUX1ZFUlNJT04gKDAsMjcsMCkKKysjaWYgRVhJVjJfVEVTVF9WRVJTSU9OICgw LDI4LDApCisrICB0aHJvdyBFeGl2Mjo6RXJyb3IgKEV4aXYyOjpFcnJvckNvZGU6OmtlckRlY29k ZUxhbmdBbHRRdWFsaWZpZXJGYWlsZWQpOworKyNlbGlmIEVYSVYyX1RFU1RfVkVSU0lPTiAoMCwy NywwKQorICAgdGhyb3cgRXhpdjI6OkJhc2ljRXJyb3I8Y2hhcj4gKEV4aXYyOjprZXJEZWNvZGVM YW5nQWx0UXVhbGlmaWVyRmFpbGVkKTsKKyAjZWxzZQorICAgdGhyb3cgRXhpdjI6OkJhc2ljRXJy b3I8Y2hhcj4gKDQyIC8qIGVycm9yIGNvZGUgKi8pOworQEAgLTU1MiwxMSArNjMxLDE3IEBAIEV4 dHJhY3RvcklPOjp3cGF0aCAoKSBjb25zdAorICAqCisgICogQHRocm93cyBlcnJvcgorICAqLwor KyNpZiBFWElWMl9URVNUX1ZFUlNJT04oMCwyOCwwKQorK0V4aXYyOjpCYXNpY0lvOjpVbmlxdWVQ dHIKKysjZWxzZQorIEV4aXYyOjpCYXNpY0lvOjpBdXRvUHRyCisrI2VuZGlmCisgRXh0cmFjdG9y SU86OnRlbXBvcmFyeSAoKSBjb25zdAorIHsKKyAgIGZwcmludGYgKHN0ZGVyciwgInRocm93aW5n IHRlbXBvcmFyeSBlcnJvclxuIik7CistI2lmIEVYSVYyX1RFU1RfVkVSU0lPTiAoMCwyNywwKQor KyNpZiBFWElWMl9URVNUX1ZFUlNJT04oMCwyOCwwKQorKyAgdGhyb3cgRXhpdjI6OkVycm9yIChF eGl2Mjo6RXJyb3JDb2RlOjprZXJEZWNvZGVMYW5nQWx0UXVhbGlmaWVyRmFpbGVkKTsKKysjZWxp ZiBFWElWMl9URVNUX1ZFUlNJT04gKDAsMjcsMCkKKyAgIHRocm93IEV4aXYyOjpCYXNpY0Vycm9y PGNoYXI+IChFeGl2Mjo6a2VyRGVjb2RlTGFuZ0FsdFF1YWxpZmllckZhaWxlZCk7CisgI2Vsc2UK KyAgIHRocm93IEV4aXYyOjpCYXNpY0Vycm9yPGNoYXI+ICg0MiAvKiBlcnJvciBjb2RlICovKTsK K0BAIC03MzcsOCArODIyLDEzIEBAIEVYVFJBQ1RPUl9leGl2Ml9leHRyYWN0X21ldGhvZCAoc3Ry dWN0IEVYVFJBQ1RPUl9FeHRyYWN0Q29udGV4dCAqZWMpCisgI2lmICEgRVhJVjJfVEVTVF9WRVJT SU9OICgwLDI0LDApCisgICAgIEV4aXYyOjpMb2dNc2c6OnNldExldmVsIChFeGl2Mjo6TG9nTXNn OjptdXRlKTsKKyAjZW5kaWYKKysjaWYgRVhJVjJfVEVTVF9WRVJTSU9OKDAsMjgsMCkKKysgICAg c3RkOjp1bmlxdWVfcHRyPEV4aXYyOjpCYXNpY0lvPiBlaW8gKG5ldyBFeHRyYWN0b3JJTyAoZWMp KTsKKysgICAgRXhpdjI6OkltYWdlOjpVbmlxdWVQdHIgaW1hZ2UgPSBFeGl2Mjo6SW1hZ2VGYWN0 b3J5OjpvcGVuIChzdGQ6Om1vdmUoZWlvKSk7CisrI2Vsc2UKKyAgICAgc3RkOjphdXRvX3B0cjxF eGl2Mjo6QmFzaWNJbz4gZWlvIChuZXcgRXh0cmFjdG9ySU8gKGVjKSk7CisgICAgIEV4aXYyOjpJ bWFnZTo6QXV0b1B0ciBpbWFnZSA9IEV4aXYyOjpJbWFnZUZhY3Rvcnk6Om9wZW4gKGVpbyk7Cisr I2VuZGlmCisgICAgIGlmICgwID09IGltYWdlLmdldCAoKSkKKyAgICAgICByZXR1cm47CisgICAg IGltYWdlLT5yZWFkTWV0YWRhdGEgKCk7CitAQCAtODIyLDcgKzkxMiwxMSBAQCBFWFRSQUNUT1Jf ZXhpdjJfZXh0cmFjdF9tZXRob2QgKHN0cnVjdCBFWFRSQUNUT1JfRXh0cmFjdENvbnRleHQgKmVj KQorICAgICAgIEFERFhNUCAoIlhtcC5sci5oaWVyYXJjaGljYWxTdWJqZWN0IiwgRVhUUkFDVE9S X01FVEFUWVBFX1NVQkpFQ1QpOworICAgICB9CisgICB9CisrI2lmIEVYSVYyX1RFU1RfVkVSU0lP TiAoMCwyOCwwKQorKyAgY2F0Y2ggKGNvbnN0IEV4aXYyOjpFcnJvciYgZSkKKysjZWxzZQorICAg Y2F0Y2ggKGNvbnN0IEV4aXYyOjpBbnlFcnJvciYgZSkKKysjZW5kaWYKKyAgIHsKKyAjaWYgREVC VUcKKyAgICAgc3RkOjpjZXJyIDw8ICJDYXVnaHQgRXhpdjIgZXhjZXB0aW9uICciIDw8IGUgPDwg IidcbiI7CmRpZmYgLS1naXQgYS9zcmNwa2dzL2xpYmV4dHJhY3Rvci9wYXRjaGVzL2ZpeC10ZXN0 cy5kaWZmIGIvc3JjcGtncy9saWJleHRyYWN0b3IvcGF0Y2hlcy9maXgtdGVzdHMuZGlmZgpuZXcg ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwLi4zYjRlZTdjYmVlYTMzCi0tLSAv ZGV2L251bGwKKysrIGIvc3JjcGtncy9saWJleHRyYWN0b3IvcGF0Y2hlcy9maXgtdGVzdHMuZGlm ZgpAQCAtMCwwICsxLDI0IEBACistLS0gYS9zcmMvcGx1Z2lucy90ZXN0X2V4aXYyLmMJMjAyMS0w MS0zMCAxMzoyMDoyMy4wMDAwMDAwMDAgKzAwMDAKKysrKyBiL3NyYy9wbHVnaW5zL3Rlc3RfZXhp djIuYwkyMDIzLTExLTAzIDE5OjM5OjQzLjExNTI3NDQ5MiArMDAwMAorQEAgLTQ5LDggKzQ5LDgg QEAKKyAgICAgICBFWFRSQUNUT1JfTUVUQVRZUEVfR1BTX0xBVElUVURFLAorICAgICAgIEVYVFJB Q1RPUl9NRVRBRk9STUFUX1VURjgsCisgICAgICAgInRleHQvcGxhaW4iLAorLSAgICAgICIyOGRl ZyA4JyAoMTh8MTcuNTg1KVwiID8iLAorLSAgICAgIHN0cmxlbiAoIjI4ZGVnIDgnICgxOHwxNy41 ODUpXCIgPyIpICsgMSwKKysgICAgICAiMjggZGVnIDgnICgxOHwxNy41OClcIiA/IiwKKysgICAg ICBzdHJsZW4gKCIyOCBkZWcgOCcgKDE4fDE3LjU4KVwiID8iKSArIDEsCisgICAgICAgMCwKKyAg ICAgICAucmVnZXggPSAxCisgICAgIH0sCitAQCAtNjYsOCArNjYsOCBAQAorICAgICAgIEVYVFJB Q1RPUl9NRVRBVFlQRV9HUFNfTE9OR0lUVURFLAorICAgICAgIEVYVFJBQ1RPUl9NRVRBRk9STUFU X1VURjgsCisgICAgICAgInRleHQvcGxhaW4iLAorLSAgICAgICIxNGRlZyAxNCcgKDIyfDIxLjcx MylcIiA/IiwKKy0gICAgICBzdHJsZW4gKCIxNGRlZyAxNCcgKDIyfDIxLjcxMylcIiA/IiksCisr ICAgICAgIjE0IGRlZyAxNCcgKDIyfDIxLjcxKVwiID8iLAorKyAgICAgIHN0cmxlbiAoIjE0IGRl ZyAxNCcgKDIyfDIxLjcxKVwiID8iKSwKKyAgICAgICAwLAorICAgICAgIC5yZWdleCA9IDEKKyAg ICAgfSwKCkZyb20gM2MwNmZjYzc0MWVhYTlmMzllN2IxZGE4OTRmNzRlZTNjYTEzMmM1ZCBNb24g U2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTW9oYW1tZWQgQW5hcyA8dHJpYWxsYXhAdHV0YW5v dGEuY29tPgpEYXRlOiBXZWQsIDE4IE9jdCAyMDIzIDE5OjE4OjM5ICswMTAwClN1YmplY3Q6IFtQ QVRDSCAxMi8yMl0gbGliZ2V4aXYyOiB1cGRhdGUgdG8gMC4xNC4yLgoKLS0tCiBzcmNwa2dzL2xp YmdleGl2Mi90ZW1wbGF0ZSB8IDE0ICsrKysrKystLS0tLS0tCiAxIGZpbGUgY2hhbmdlZCwgNyBp bnNlcnRpb25zKCspLCA3IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbGliZ2V4 aXYyL3RlbXBsYXRlIGIvc3JjcGtncy9saWJnZXhpdjIvdGVtcGxhdGUKaW5kZXggMjM3ODBlNTM5 N2RjNC4uOTFkYmNhYTlhY2E1MiAxMDA2NDQKLS0tIGEvc3JjcGtncy9saWJnZXhpdjIvdGVtcGxh dGUKKysrIGIvc3JjcGtncy9saWJnZXhpdjIvdGVtcGxhdGUKQEAgLTEsMTkgKzEsMTkgQEAKICMg VGVtcGxhdGUgZmlsZSBmb3IgJ2xpYmdleGl2MicKIHBrZ25hbWU9bGliZ2V4aXYyCi12ZXJzaW9u PTAuMTQuMAotcmV2aXNpb249MwordmVyc2lvbj0wLjE0LjIKK3JldmlzaW9uPTEKIGJ1aWxkX3N0 eWxlPW1lc29uCiBidWlsZF9oZWxwZXI9ImdpciIKLWNvbmZpZ3VyZV9hcmdzPSItRGludHJvc3Bl Y3Rpb249JCh2b3B0X2lmIGdpciB0cnVlIGZhbHNlKQotIC1EdmFwaT0kKHZvcHRfaWYgdmFsYSB0 cnVlIGZhbHNlKSIKK2NvbmZpZ3VyZV9hcmdzPSIkKHZvcHRfYm9vbCBnaXIgaW50cm9zcGVjdGlv bikgJCh2b3B0X2Jvb2wgdmFsYSB2YXBpKSIKIGhvc3RtYWtlZGVwZW5kcz0icGtnLWNvbmZpZyBn bGliLWRldmVsICQodm9wdF9pZiB2YWxhICd2YWxhJykgcHl0aG9uMy1nb2JqZWN0IgogbWFrZWRl cGVuZHM9ImxpYmdsaWItZGV2ZWwgZXhpdjItZGV2ZWwiCiBzaG9ydF9kZXNjPSJHT2JqZWN0LWJh c2VkIHdyYXBwZXIgYXJvdW5kIHRoZSBFeGl2MiBsaWJyYXJ5IgogbWFpbnRhaW5lcj0iRW5ubyBC b2xhbmQgPGdvdHRveEB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9IkdQTC0yLjAtb3ItbGF0ZXIi CiBob21lcGFnZT0iaHR0cHM6Ly93aWtpLmdub21lLm9yZy9Qcm9qZWN0cy9nZXhpdjIiCi1kaXN0 ZmlsZXM9IiR7R05PTUVfU0lURX0vZ2V4aXYyLyR7dmVyc2lvbiUuKn0vJHtwa2duYW1lL2xpYi99 LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09ZTU4Mjc5YTZmZjIwYjZmNjRmYTQ5OTYxNWRh NWU5YjU3Y2Y2NWJhNzg1MGI3MmZhZmRmMTcyMjFhOWQ2ZDY5ZQorY2hhbmdlbG9nPSJodHRwczov L2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvZ2V4aXYyLy0vcmF3L21hc3Rlci9ORVdTIgorZGlzdGZp bGVzPSIke0dOT01FX1NJVEV9L2dleGl2Mi8ke3ZlcnNpb24lLip9L2dleGl2Mi0ke3ZlcnNpb259 LnRhci54eiIKK2NoZWNrc3VtPTJhMGM5Y2Y0OGZiZThiMzQzNTAwODg2NmZmZDQwYjhlZGRiMDY2 N2QyMjEyYjQyMzk2ZmRmNjg4ZTkzY2UwYmUKIAogYnVpbGRfb3B0aW9ucz0iZ2lyIHZhbGEiCiBi dWlsZF9vcHRpb25zX2RlZmF1bHQ9ImdpciB2YWxhIgpAQCAtMjMsNyArMjMsNyBAQCBsaWJnZXhp djItZGV2ZWxfcGFja2FnZSgpIHsKIAlzaG9ydF9kZXNjKz0iIC0gZGV2ZWxvcG1lbnQgZmlsZXMi CiAJcGtnX2luc3RhbGwoKSB7CiAJCXZtb3ZlIHVzci9pbmNsdWRlCi0JCXZtb3ZlIHVzci9saWIv Ki5zbworCQl2bW92ZSAidXNyL2xpYi8qLnNvIgogCQl2bW92ZSB1c3IvbGliL3BrZ2NvbmZpZwog CQlpZiBbICIkYnVpbGRfb3B0aW9uX3ZhbGEiIF07IHRoZW4KIAkJCXZtb3ZlIHVzci9zaGFyZS92 YWxhCgpGcm9tIDY1NWEwZGZhZGI0NTJlZGZhZGIyOTgyZWIyMjE5NThjM2JjMGVhYzUgTW9uIFNl cCAxNyAwMDowMDowMCAyMDAxCkZyb206IE1vaGFtbWVkIEFuYXMgPHRyaWFsbGF4QHR1dGFub3Rh LmNvbT4KRGF0ZTogV2VkLCAxOCBPY3QgMjAyMyAxOToxODozOSArMDEwMApTdWJqZWN0OiBbUEFU Q0ggMTMvMjJdIGxpYmtleGl2MjU6IHVwZGF0ZSB0byAyMy4wOC4yLgoKLS0tCiBzcmNwa2dzL2xp YmtleGl2MjUvdGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2VydGlvbnMo KyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9saWJrZXhpdjI1L3RlbXBs YXRlIGIvc3JjcGtncy9saWJrZXhpdjI1L3RlbXBsYXRlCmluZGV4IGI0MzlhNDJlZjJiOTcuLjRk N2Y5NjAwNTcyZWEgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvbGlia2V4aXYyNS90ZW1wbGF0ZQorKysg Yi9zcmNwa2dzL2xpYmtleGl2MjUvdGVtcGxhdGUKQEAgLTEsNiArMSw2IEBACiAjIFRlbXBsYXRl IGZpbGUgZm9yICdsaWJrZXhpdjI1JwogcGtnbmFtZT1saWJrZXhpdjI1Ci12ZXJzaW9uPTIzLjA0 LjAKK3ZlcnNpb249MjMuMDguMgogcmV2aXNpb249MQogYnVpbGRfc3R5bGU9Y21ha2UKIGNvbmZp Z3VyZV9hcmdzPSItREJVSUxEX1RFU1RJTkc9T0ZGIgpAQCAtMTEsNyArMTEsNyBAQCBtYWludGFp bmVyPSJPcnBoYW5lZCA8b3JwaGFuQHZvaWRsaW51eC5vcmc+IgogbGljZW5zZT0iR1BMLTIuMC1v ci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL2ludmVudC5rZGUub3JnL2dyYXBoaWNzL2xpYmtl eGl2MiIKIGRpc3RmaWxlcz0iJHtLREVfU0lURX0vcmVsZWFzZS1zZXJ2aWNlLyR7dmVyc2lvbn0v c3JjL2xpYmtleGl2Mi0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNrc3VtPTE4ZDNlZWQwNmRmOWQx ZTMxZDg0MzRlZDk4ODdlMzA1YWJhMTc2ZDA4NTZlMTlhOGNkM2JkYjU1NWI4MGQzOTEKK2NoZWNr c3VtPWQwNmUzNmE0MDhiZjJlODQ2YTE4MDU2YTFmMTVlNjFkOTgxZmEyYTFmY2ViODFmN2MxNTEz NjYwNDMxOWQwMzMKIAogbGlia2V4aXYyNS1kZXZlbF9wYWNrYWdlKCkgewogCXNob3J0X2Rlc2Mr PSIgLSBkZXZlbG9wbWVudCBmaWxlcyIKCkZyb20gMDFjNmNhMmJkNzAwZDcwYWE3ZjVkMmQ2OTI5 M2FiNzhlMWZlZDU0MiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTW9oYW1tZWQgQW5h cyA8dHJpYWxsYXhAdHV0YW5vdGEuY29tPgpEYXRlOiBXZWQsIDE4IE9jdCAyMDIzIDE5OjE4OjM5 ICswMTAwClN1YmplY3Q6IFtQQVRDSCAxNC8yMl0gbm9tYWNzOiB1cGRhdGUgdG8gMy4xNy4yMjg3 LgoKLS0tCiBzcmNwa2dzL25vbWFjcy90ZW1wbGF0ZSB8IDE3ICsrKysrKysrKysrKystLS0tCiAx IGZpbGUgY2hhbmdlZCwgMTMgaW5zZXJ0aW9ucygrKSwgNCBkZWxldGlvbnMoLSkKCmRpZmYgLS1n aXQgYS9zcmNwa2dzL25vbWFjcy90ZW1wbGF0ZSBiL3NyY3BrZ3Mvbm9tYWNzL3RlbXBsYXRlCmlu ZGV4IGM1MmNkNTRlMjk0ZGIuLjk1NmJkMjFlYmIxMjkgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3Mvbm9t YWNzL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3Mvbm9tYWNzL3RlbXBsYXRlCkBAIC0xLDcgKzEsOCBA QAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnbm9tYWNzJwogcGtnbmFtZT1ub21hY3MKLXZlcnNpb249 My4xNi4yMjQKLXJldmlzaW9uPTUKK3ZlcnNpb249My4xNy4yMjg3CityZXZpc2lvbj0xCitfcGx1 Z2luc192ZXI9My4xNy4yMjg1CiBidWlsZF93cmtzcmM9SW1hZ2VMb3VuZ2UKIGJ1aWxkX3N0eWxl PWNtYWtlCiBjb25maWd1cmVfYXJncz0iLURDTUFLRV9CVUlMRF9UWVBFPU5vbmUgLURFTkFCTEVf VFJBTlNMQVRJT05TPTEKQEAgLTEzLDUgKzE0LDEzIEBAIHNob3J0X2Rlc2M9IlNpbXBsZSB5ZXQg cG93ZXJmdWwgUXQgaW1hZ2V2aWV3ZXIiCiBtYWludGFpbmVyPSJPcnBoYW5lZCA8b3JwaGFuQHZv aWRsaW51eC5vcmc+IgogbGljZW5zZT0iR1BMLTMuMC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRw czovL2dpdGh1Yi5jb20vbm9tYWNzL25vbWFjcyIKLWRpc3RmaWxlcz0iaHR0cHM6Ly9naXRodWIu Y29tL25vbWFjcy9ub21hY3MvYXJjaGl2ZS8ke3ZlcnNpb259LnRhci5neiIKLWNoZWNrc3VtPWJi YzdlOTA0ODAyNmVmOWUwZDJiNjQ5MDJjODgwNTBmMTdhNjc5ZWYzZDNjMDA5ZGUyYzNiN2RlNWQx ZDIxN2MKK2Rpc3RmaWxlcz0iaHR0cHM6Ly9naXRodWIuY29tL25vbWFjcy9ub21hY3MvYXJjaGl2 ZS8ke3ZlcnNpb259LnRhci5negorIGh0dHBzOi8vZ2l0aHViLmNvbS9ub3ZvbWVzay9ub21hY3Mt cGx1Z2lucy9hcmNoaXZlL3JlZnMvdGFncy8ke19wbHVnaW5zX3Zlcn0udGFyLmd6PnBsdWdpbnMu dGFyLmd6IgorY2hlY2tzdW09IjY5MDVlYTYxNTM1OGY4NGEwYzgzZDViMWI3MDc3ODcxZGVhMDUy NmVjNjY3NTAwYTE5NTE0NDhjYjg0NWE5MmMKKyA5NDZiMmQ3NTRiZTllY2NhNWNiMTU1ZjdlY2M1 ZGNhZmIxNjRmNmMzZGNjN2JmNWMzYzA2MTBkM2I0Nzc3NGFhIgorc2tpcF9leHRyYWN0aW9uPSJw bHVnaW5zLnRhci5neiIKKworcG9zdF9leHRyYWN0KCkgeworIGNkICR7YnVpbGRfd3Jrc3JjfQor IHZzcmNleHRyYWN0IC1DIHBsdWdpbnMgInBsdWdpbnMudGFyLmd6IgorfQoKRnJvbSAxYmMzMmYz Y2JhNGI3OTIyODJiMzI2NjBiYmM5ZjZkNDQ5ZTkzYWFmIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAw MQpGcm9tOiBNb2hhbW1lZCBBbmFzIDx0cmlhbGxheEB0dXRhbm90YS5jb20+CkRhdGU6IFdlZCwg MTggT2N0IDIwMjMgMTk6MTg6NDAgKzAxMDAKU3ViamVjdDogW1BBVENIIDE1LzIyXSBwZGYyZGp2 dTogcmV2YnVtcCBmb3IgZXhpdjItMC4yOC4xLgoKLS0tCiBzcmNwa2dzL3BkZjJkanZ1L3RlbXBs YXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0p CgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9wZGYyZGp2dS90ZW1wbGF0ZSBiL3NyY3BrZ3MvcGRmMmRq dnUvdGVtcGxhdGUKaW5kZXggZWY3NDMzYzBjOThhZS4uNWE2ZjNkZGY0ZWQzNSAxMDA2NDQKLS0t IGEvc3JjcGtncy9wZGYyZGp2dS90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3BkZjJkanZ1L3RlbXBs YXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAncGRmMmRqdnUnCiBwa2du YW1lPXBkZjJkanZ1CiB2ZXJzaW9uPTAuOS4xOQotcmV2aXNpb249NAorcmV2aXNpb249NQogYnVp bGRfc3R5bGU9Z251LWNvbmZpZ3VyZQogaG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIGRqdnVs aWJyZSBnZXR0ZXh0IgogbWFrZWRlcGVuZHM9ImRqdnVsaWJyZS1kZXZlbCBwb3BwbGVyLWRldmVs IGxpYmdyYXBoaWNzbWFnaWNrLWRldmVsIGV4aXYyLWRldmVsIGxpYnV1aWQtZGV2ZWwiCgpGcm9t IDM1YmE1ZmY2N2ZlNTVjYjgzMjU1YjcwZTc2MDlhZjYwYTViMjgyOTIgTW9uIFNlcCAxNyAwMDow MDowMCAyMDAxCkZyb206IE1vaGFtbWVkIEFuYXMgPHRyaWFsbGF4QHR1dGFub3RhLmNvbT4KRGF0 ZTogV2VkLCAxOCBPY3QgMjAyMyAxOToxODo0MCArMDEwMApTdWJqZWN0OiBbUEFUQ0ggMTYvMjJd IHBob3RvdG9uaWM6IHJldmJ1bXAgZm9yIGV4aXYyLTAuMjguMS4KCi0tLQogc3JjcGtncy9waG90 b3RvbmljL3BhdGNoZXMvZXhpdjItMC4yOC5wYXRjaCB8IDEzNSArKysrKysrKysrKysrKysrKysr Kwogc3JjcGtncy9waG90b3RvbmljL3RlbXBsYXRlICAgICAgICAgICAgICAgICB8ICAgMiArLQog MiBmaWxlcyBjaGFuZ2VkLCAxMzYgaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbigtKQogY3JlYXRl IG1vZGUgMTAwNjQ0IHNyY3BrZ3MvcGhvdG90b25pYy9wYXRjaGVzL2V4aXYyLTAuMjgucGF0Y2gK CmRpZmYgLS1naXQgYS9zcmNwa2dzL3Bob3RvdG9uaWMvcGF0Y2hlcy9leGl2Mi0wLjI4LnBhdGNo IGIvc3JjcGtncy9waG90b3RvbmljL3BhdGNoZXMvZXhpdjItMC4yOC5wYXRjaApuZXcgZmlsZSBt b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwLi4xYzc1YjYyOGRhYjMzCi0tLSAvZGV2L251 bGwKKysrIGIvc3JjcGtncy9waG90b3RvbmljL3BhdGNoZXMvZXhpdjItMC4yOC5wYXRjaApAQCAt MCwwICsxLDEzNSBAQAorRnJvbSA5MjNhM2ZjMTRkZTBiNzc5YTQ1Njk2YzVmMGFlZjM0Yzc0ZDg0 ZjEzIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQorRnJvbTogQW5kcmVhcyBTdHVybWxlY2huZXIg PGFzdHVybUBnZW50b28ub3JnPgorRGF0ZTogU3VuLCAyOCBNYXkgMjAyMyAxODo1NDoxMCArMDIw MAorU3ViamVjdDogW1BBVENIXSBGaXggYnVpbGQgd2l0aCBleGl2Mi0wLjI4CisKK1NpZ25lZC1v ZmYtYnk6IEFuZHJlYXMgU3R1cm1sZWNobmVyIDxhc3R1cm1AZ2VudG9vLm9yZz4KKy0tLQorIElt YWdlVmlld2VyLmNwcCAgIHwgOSArKysrKysrKysKKyBNZXRhZGF0YUNhY2hlLmNwcCB8IDggKysr KysrKysKKyBQaG90b3RvbmljLmNwcCAgICB8IDQgKysrKworIFRhZ3MuY3BwICAgICAgICAgIHwg OCArKysrKysrKworIFRodW1ic1ZpZXdlci5jcHAgIHwgNCArKysrCisgNSBmaWxlcyBjaGFuZ2Vk LCAzMyBpbnNlcnRpb25zKCspCisKK2RpZmYgLS1naXQgYS9JbWFnZVZpZXdlci5jcHAgYi9JbWFn ZVZpZXdlci5jcHAKK2luZGV4IDM1N2QyMjMuLmRmM2FjNDMgMTAwNjQ0CistLS0gYS9JbWFnZVZp ZXdlci5jcHAKKysrKyBiL0ltYWdlVmlld2VyLmNwcAorQEAgLTk0NSw3ICs5NDUsMTEgQEAgdm9p ZCBJbWFnZVZpZXdlcjo6a2V5TW92ZUV2ZW50KGludCBkaXJlY3Rpb24pIHsKKyB9CisgCisgdm9p ZCBJbWFnZVZpZXdlcjo6c2F2ZUltYWdlKCkgeworKyNpZiBFWElWMl9URVNUX1ZFUlNJT04oMCwy OCwwKQorKyAgICBFeGl2Mjo6SW1hZ2U6OlVuaXF1ZVB0ciBpbWFnZTsKKysjZWxzZQorICAgICBF eGl2Mjo6SW1hZ2U6OkF1dG9QdHIgaW1hZ2U7CisrI2VuZGlmCisgICAgIGJvb2wgZXhpZkVycm9y ID0gZmFsc2U7CisgCisgICAgIGlmIChuZXdJbWFnZSkgeworQEAgLTk4NSw4ICs5ODksMTMgQEAg dm9pZCBJbWFnZVZpZXdlcjo6c2F2ZUltYWdlKCkgeworIH0KKyAKKyB2b2lkIEltYWdlVmlld2Vy OjpzYXZlSW1hZ2VBcygpIHsKKysjaWYgRVhJVjJfVEVTVF9WRVJTSU9OKDAsMjgsMCkKKysgICAg RXhpdjI6OkltYWdlOjpVbmlxdWVQdHIgZXhpZkltYWdlOworKyAgICBFeGl2Mjo6SW1hZ2U6OlVu aXF1ZVB0ciBuZXdFeGlmSW1hZ2U7CisrI2Vsc2UKKyAgICAgRXhpdjI6OkltYWdlOjpBdXRvUHRy IGV4aWZJbWFnZTsKKyAgICAgRXhpdjI6OkltYWdlOjpBdXRvUHRyIG5ld0V4aWZJbWFnZTsKKysj ZW5kaWYKKyAgICAgYm9vbCBleGlmRXJyb3IgPSBmYWxzZTsKKyAKKyAgICAgc2V0Q3Vyc29ySGlk aW5nKGZhbHNlKTsKK2RpZmYgLS1naXQgYS9NZXRhZGF0YUNhY2hlLmNwcCBiL01ldGFkYXRhQ2Fj aGUuY3BwCitpbmRleCA1MjRhZTc0Li41ZGRkNGM4IDEwMDY0NAorLS0tIGEvTWV0YWRhdGFDYWNo ZS5jcHAKKysrKyBiL01ldGFkYXRhQ2FjaGUuY3BwCitAQCAtNjQsNyArNjQsMTEgQEAgdm9pZCBN ZXRhZGF0YUNhY2hlOjpjbGVhcigpIHsKKyB9CisgCisgYm9vbCBNZXRhZGF0YUNhY2hlOjpsb2Fk SW1hZ2VNZXRhZGF0YShjb25zdCBRU3RyaW5nICZpbWFnZUZ1bGxQYXRoKSB7CisrI2lmIEVYSVYy X1RFU1RfVkVSU0lPTigwLDI4LDApCisrICAgIEV4aXYyOjpJbWFnZTo6VW5pcXVlUHRyIGV4aWZJ bWFnZTsKKysjZWxzZQorICAgICBFeGl2Mjo6SW1hZ2U6OkF1dG9QdHIgZXhpZkltYWdlOworKyNl bmRpZgorICAgICBRU2V0PFFTdHJpbmc+IHRhZ3M7CisgICAgIGxvbmcgb3JpZW50YXRpb24gPSAw OworIAorQEAgLTc4LDcgKzgyLDExIEBAIGJvb2wgTWV0YWRhdGFDYWNoZTo6bG9hZEltYWdlTWV0 YWRhdGEoY29uc3QgUVN0cmluZyAmaW1hZ2VGdWxsUGF0aCkgeworICAgICB0cnkgeworICAgICAg ICAgRXhpdjI6OkV4aWZEYXRhICZleGlmRGF0YSA9IGV4aWZJbWFnZS0+ZXhpZkRhdGEoKTsKKyAg ICAgICAgIGlmICghZXhpZkRhdGEuZW1wdHkoKSkgeworKyNpZiBFWElWMl9URVNUX1ZFUlNJT04o MCwyOCwwKQorKyAgICAgICAgICAgIG9yaWVudGF0aW9uID0gZXhpZkRhdGFbIkV4aWYuSW1hZ2Uu T3JpZW50YXRpb24iXS52YWx1ZSgpLnRvVWludDMyKCk7CisrI2Vsc2UKKyAgICAgICAgICAgICBv cmllbnRhdGlvbiA9IGV4aWZEYXRhWyJFeGlmLkltYWdlLk9yaWVudGF0aW9uIl0udmFsdWUoKS50 b0xvbmcoKTsKKysjZW5kaWYKKyAgICAgICAgIH0KKyAgICAgfSBjYXRjaCAoRXhpdjI6OkVycm9y ICZlcnJvcikgeworICAgICAgICAgcVdhcm5pbmcoKSA8PCAiRmFpbGVkIHRvIHJlYWQgRXhpZiBt ZXRhZGF0YSI7CitkaWZmIC0tZ2l0IGEvUGhvdG90b25pYy5jcHAgYi9QaG90b3RvbmljLmNwcAor aW5kZXggNmNjOTViMy4uYmQ1NDk3ZCAxMDA2NDQKKy0tLSBhL1Bob3RvdG9uaWMuY3BwCisrKysg Yi9QaG90b3RvbmljLmNwcAorQEAgLTMxNTEsNyArMzE1MSwxMSBAQCB2b2lkIFBob3RvdG9uaWM6 OnJlbW92ZU1ldGFkYXRhKCkgeworIAorICAgICBpZiAocmV0ID09IE1lc3NhZ2VCb3g6Olllcykg eworICAgICAgICAgZm9yIChpbnQgZmlsZSA9IDA7IGZpbGUgPCBmaWxlTGlzdC5zaXplKCk7ICsr ZmlsZSkgeworKyNpZiBFWElWMl9URVNUX1ZFUlNJT04oMCwyOCwwKQorKyAgICAgICAgICAgIEV4 aXYyOjpJbWFnZTo6VW5pcXVlUHRyIGltYWdlOworKyNlbHNlCisgICAgICAgICAgICAgRXhpdjI6 OkltYWdlOjpBdXRvUHRyIGltYWdlOworKyNlbmRpZgorICAgICAgICAgICAgIHRyeSB7CisgICAg ICAgICAgICAgICAgIGltYWdlID0gRXhpdjI6OkltYWdlRmFjdG9yeTo6b3BlbihmaWxlTGlzdFtm aWxlXS50b1N0ZFN0cmluZygpKTsKKyAgICAgICAgICAgICAgICAgaW1hZ2UtPmNsZWFyTWV0YWRh dGEoKTsKK2RpZmYgLS1naXQgYS9UYWdzLmNwcCBiL1RhZ3MuY3BwCitpbmRleCA4NGVlYTE2Li5h NjJkYTlkIDEwMDY0NAorLS0tIGEvVGFncy5jcHAKKysrKyBiL1RhZ3MuY3BwCitAQCAtMTM2LDcg KzEzNiwxMSBAQCB2b2lkIEltYWdlVGFnczo6YWRkVGFnKFFTdHJpbmcgdGFnTmFtZSwgYm9vbCB0 YWdDaGVja2VkKSB7CisgCisgYm9vbCBJbWFnZVRhZ3M6OndyaXRlVGFnc1RvSW1hZ2UoUVN0cmlu ZyAmaW1hZ2VGaWxlTmFtZSwgUVNldDxRU3RyaW5nPiAmbmV3VGFncykgeworICAgICBRU2V0PFFT dHJpbmc+IGltYWdlVGFnczsKKysjaWYgRVhJVjJfVEVTVF9WRVJTSU9OKDAsMjgsMCkKKysgICAg RXhpdjI6OkltYWdlOjpVbmlxdWVQdHIgZXhpZkltYWdlOworKyNlbHNlCisgICAgIEV4aXYyOjpJ bWFnZTo6QXV0b1B0ciBleGlmSW1hZ2U7CisrI2VuZGlmCisgCisgICAgIHRyeSB7CisgICAgICAg ICBleGlmSW1hZ2UgPSBFeGl2Mjo6SW1hZ2VGYWN0b3J5OjpvcGVuKGltYWdlRmlsZU5hbWUudG9T dGRTdHJpbmcoKSk7CitAQCAtMTYwLDcgKzE2NCwxMSBAQCBib29sIEltYWdlVGFnczo6d3JpdGVU YWdzVG9JbWFnZShRU3RyaW5nICZpbWFnZUZpbGVOYW1lLCBRU2V0PFFTdHJpbmc+ICZuZXdUYWdz KQorICAgICAgICAgUVNldEl0ZXJhdG9yPFFTdHJpbmc+IG5ld1RhZ3NJdChuZXdUYWdzKTsKKyAg ICAgICAgIHdoaWxlIChuZXdUYWdzSXQuaGFzTmV4dCgpKSB7CisgICAgICAgICAgICAgUVN0cmlu ZyB0YWcgPSBuZXdUYWdzSXQubmV4dCgpOworKyNpZiBFWElWMl9URVNUX1ZFUlNJT04oMCwyOCww KQorKyAgICAgICAgICAgIEV4aXYyOjpWYWx1ZTo6VW5pcXVlUHRyIHZhbHVlID0gRXhpdjI6OlZh bHVlOjpjcmVhdGUoRXhpdjI6OnN0cmluZyk7CisrI2Vsc2UKKyAgICAgICAgICAgICBFeGl2Mjo6 VmFsdWU6OkF1dG9QdHIgdmFsdWUgPSBFeGl2Mjo6VmFsdWU6OmNyZWF0ZShFeGl2Mjo6c3RyaW5n KTsKKysjZW5kaWYKKyAgICAgICAgICAgICB2YWx1ZS0+cmVhZCh0YWcudG9TdGRTdHJpbmcoKSk7 CisgICAgICAgICAgICAgRXhpdjI6OklwdGNLZXkga2V5KCJJcHRjLkFwcGxpY2F0aW9uMi5LZXl3 b3JkcyIpOworICAgICAgICAgICAgIG5ld0lwdGNEYXRhLmFkZChrZXksIHZhbHVlLmdldCgpKTsK K2RpZmYgLS1naXQgYS9UaHVtYnNWaWV3ZXIuY3BwIGIvVGh1bWJzVmlld2VyLmNwcAoraW5kZXgg NzdhNjE4OS4uNGExMTQ3NSAxMDA2NDQKKy0tLSBhL1RodW1ic1ZpZXdlci5jcHAKKysrKyBiL1Ro dW1ic1ZpZXdlci5jcHAKK0BAIC0yMTAsNyArMjEwLDExIEBAIHZvaWQgVGh1bWJzVmlld2VyOjp1 cGRhdGVJbWFnZUluZm9WaWV3ZXIoUVN0cmluZyBpbWFnZUZ1bGxQYXRoKSB7CisgICAgICAgICBp bmZvVmlldy0+YWRkRW50cnkoa2V5LCB2YWwpOworICAgICB9CisgCisrI2lmIEVYSVYyX1RFU1Rf VkVSU0lPTigwLDI4LDApCisrICAgIEV4aXYyOjpJbWFnZTo6VW5pcXVlUHRyIGV4aWZJbWFnZTsK KysjZWxzZQorICAgICBFeGl2Mjo6SW1hZ2U6OkF1dG9QdHIgZXhpZkltYWdlOworKyNlbmRpZgor ICAgICB0cnkgeworICAgICAgICAgZXhpZkltYWdlID0gRXhpdjI6OkltYWdlRmFjdG9yeTo6b3Bl bihpbWFnZUZ1bGxQYXRoLnRvU3RkU3RyaW5nKCkpOworICAgICAgICAgZXhpZkltYWdlLT5yZWFk TWV0YWRhdGEoKTsKKy0tIAorMi40MC4xCisKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcGhvdG90b25p Yy90ZW1wbGF0ZSBiL3NyY3BrZ3MvcGhvdG90b25pYy90ZW1wbGF0ZQppbmRleCA3N2FlOGJmNmE0 NDA2Li40YWYwMDZjYjdkYTQxIDEwMDY0NAotLS0gYS9zcmNwa2dzL3Bob3RvdG9uaWMvdGVtcGxh dGUKKysrIGIvc3JjcGtncy9waG90b3RvbmljL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBU ZW1wbGF0ZSBmaWxlIGZvciAncGhvdG90b25pYycKIHBrZ25hbWU9cGhvdG90b25pYwogdmVyc2lv bj0yLjEKLXJldmlzaW9uPTMKK3JldmlzaW9uPTQKIGJ1aWxkX3N0eWxlPXFtYWtlCiBob3N0bWFr ZWRlcGVuZHM9InBrZy1jb25maWcgcXQ1LXFtYWtlIHF0NS1ob3N0LXRvb2xzIgogbWFrZWRlcGVu ZHM9InF0NS1zdmctZGV2ZWwgZXhpdjItZGV2ZWwiCgpGcm9tIGVhMjI1ODMzZGUxM2NlZjM0NTNm NWFhZTJkNDkyN2NiNjQ0ODI1NWQgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE1vaGFt bWVkIEFuYXMgPHRyaWFsbGF4QHR1dGFub3RhLmNvbT4KRGF0ZTogV2VkLCAxOCBPY3QgMjAyMyAx OToxODo0MCArMDEwMApTdWJqZWN0OiBbUEFUQ0ggMTcvMjJdIHFpbWd2OiByZXZidW1wIGZvciBl eGl2Mi0wLjI4LjEuCgotLS0KIHNyY3BrZ3MvcWltZ3YvcGF0Y2hlcy9leGl2Mi0wLjI4LnBhdGNo IHwgMTYgKysrKysrKysrKysrKysrKwogc3JjcGtncy9xaW1ndi90ZW1wbGF0ZSAgICAgICAgICAg ICAgICAgfCAgMiArLQogMiBmaWxlcyBjaGFuZ2VkLCAxNyBpbnNlcnRpb25zKCspLCAxIGRlbGV0 aW9uKC0pCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy9xaW1ndi9wYXRjaGVzL2V4aXYyLTAu MjgucGF0Y2gKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3FpbWd2L3BhdGNoZXMvZXhpdjItMC4yOC5w YXRjaCBiL3NyY3BrZ3MvcWltZ3YvcGF0Y2hlcy9leGl2Mi0wLjI4LnBhdGNoCm5ldyBmaWxlIG1v ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAuLjExZjM3YjVhZTJiZTMKLS0tIC9kZXYvbnVs bAorKysgYi9zcmNwa2dzL3FpbWd2L3BhdGNoZXMvZXhpdjItMC4yOC5wYXRjaApAQCAtMCwwICsx LDE2IEBACitQYXRjaC1Tb3VyY2U6IGh0dHBzOi8vZ2l0LmFscGluZWxpbnV4Lm9yZy9hcG9ydHMv dHJlZS9jb21tdW5pdHkvcWltZ3YvZXhpdjItMC4yOC5wYXRjaAorZGlmZiAtLWdpdCBhL3FpbWd2 L3NvdXJjZWNvbnRhaW5lcnMvZG9jdW1lbnRpbmZvLmNwcCBiL3FpbWd2L3NvdXJjZWNvbnRhaW5l cnMvZG9jdW1lbnRpbmZvLmNwcAoraW5kZXggOThhNjhmNy4uYzA2MjQ3NCAxMDA2NDQKKy0tLSBh L3FpbWd2L3NvdXJjZWNvbnRhaW5lcnMvZG9jdW1lbnRpbmZvLmNwcAorKysrIGIvcWltZ3Yvc291 cmNlY29udGFpbmVycy9kb2N1bWVudGluZm8uY3BwCitAQCAtMjcxLDEwICsyNzEsNiBAQCB2b2lk IERvY3VtZW50SW5mbzo6bG9hZEV4aWZUYWdzKCkgeworICAgICAgICAgLy9zdGQ6OmNvdXQgPDwg IkNhdWdodCBFeGl2MiBleGNlcHRpb24gJyIgPDwgZS53aGF0KCkgPDwgIidcbiI7CisgICAgICAg ICByZXR1cm47CisgICAgIH0KKy0gICAgY2F0Y2ggKEV4aXYyOjpCYXNpY0Vycm9yPENoYXJUeXBl PiBlKSB7CistICAgICAgICAvL3N0ZDo6Y291dCA8PCAiQ2F1Z2h0IEJhc2ljRXJyb3IgRXhpdjIg ZXhjZXB0aW9uICciIDw8IGUud2hhdCgpIDw8ICInXG4iOworLSAgICAgICAgcmV0dXJuOworLSAg ICB9CisgI2VuZGlmCisgfQorIApkaWZmIC0tZ2l0IGEvc3JjcGtncy9xaW1ndi90ZW1wbGF0ZSBi L3NyY3BrZ3MvcWltZ3YvdGVtcGxhdGUKaW5kZXggN2ViMzBkYjMzOTkyYy4uZGQzNDFkZmUxYmZj ZSAxMDA2NDQKLS0tIGEvc3JjcGtncy9xaW1ndi90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL3FpbWd2 L3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAncWltZ3YnCiBw a2duYW1lPXFpbWd2CiB2ZXJzaW9uPTEuMC4yCi1yZXZpc2lvbj0yCityZXZpc2lvbj0zCiBidWls ZF9zdHlsZT1jbWFrZQogY29uZmlndXJlX2FyZ3M9IiQodm9wdF9pZiB2aWRlbyAtRFZJREVPX1NV UFBPUlQ9T04gLURWSURFT19TVVBQT1JUPU9GRikKICAkKHZvcHRfaWYgc2NhbGUgLURPUEVOQ1Zf U1VQUE9SVD1PTiAtRE9QRU5DVl9TVVBQT1JUPU9GRikKCkZyb20gMjFkYWMxNTI5MTllNmEwYjlj NzQ1MDMzOGQ1YzQwZTU0OTA4NDY5YyBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTW9o YW1tZWQgQW5hcyA8dHJpYWxsYXhAdHV0YW5vdGEuY29tPgpEYXRlOiBXZWQsIDE4IE9jdCAyMDIz IDE5OjE4OjQwICswMTAwClN1YmplY3Q6IFtQQVRDSCAxOC8yMl0gU0lSOiByZXZidW1wIGZvciBl eGl2Mi0wLjI4LjEuCgotLS0KIHNyY3BrZ3MvU0lSL3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNo YW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtn cy9TSVIvdGVtcGxhdGUgYi9zcmNwa2dzL1NJUi90ZW1wbGF0ZQppbmRleCAxMTMwNzdhY2FkMzU0 Li5jNmRhNGMyNmI2YzcxIDEwMDY0NAotLS0gYS9zcmNwa2dzL1NJUi90ZW1wbGF0ZQorKysgYi9z cmNwa2dzL1NJUi90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3Ig J1NJUicKIHBrZ25hbWU9U0lSCiB2ZXJzaW9uPTMuMi4yCi1yZXZpc2lvbj0xCityZXZpc2lvbj0y CiBidWlsZF9zdHlsZT1jbWFrZQogaG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIgogbWFrZWRl cGVuZHM9ImV4aXYyLWRldmVsIHF0NS1zdmctZGV2ZWwgcXQ1LXRvb2xzLWRldmVsIgoKRnJvbSA2 OGZhNGE2NjE0MjU0MjZlOGM5MmQ5MGEzYWQ3NWNiY2IzZDAyZTFiIE1vbiBTZXAgMTcgMDA6MDA6 MDAgMjAwMQpGcm9tOiBNb2hhbW1lZCBBbmFzIDx0cmlhbGxheEB0dXRhbm90YS5jb20+CkRhdGU6 IFdlZCwgMTggT2N0IDIwMjMgMTk6MTg6NDAgKzAxMDAKU3ViamVjdDogW1BBVENIIDE5LzIyXSB2 aWV3bmlvcjogcmV2YnVtcCBmb3IgZXhpdjItMC4yOC4xLgoKLS0tCiBzcmNwa2dzL3ZpZXduaW9y L3BhdGNoZXMvZXhpdjItMC4yOC5wYXRjaCB8IDE0NyArKysrKysrKysrKysrKysrKysrKysrCiBz cmNwa2dzL3ZpZXduaW9yL3RlbXBsYXRlICAgICAgICAgICAgICAgICB8ICAgMiArLQogMiBmaWxl cyBjaGFuZ2VkLCAxNDggaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlvbigtKQogY3JlYXRlIG1vZGUg MTAwNjQ0IHNyY3BrZ3Mvdmlld25pb3IvcGF0Y2hlcy9leGl2Mi0wLjI4LnBhdGNoCgpkaWZmIC0t Z2l0IGEvc3JjcGtncy92aWV3bmlvci9wYXRjaGVzL2V4aXYyLTAuMjgucGF0Y2ggYi9zcmNwa2dz L3ZpZXduaW9yL3BhdGNoZXMvZXhpdjItMC4yOC5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NApp bmRleCAwMDAwMDAwMDAwMDAwLi43MTQ1OWRlZTE1NzY4Ci0tLSAvZGV2L251bGwKKysrIGIvc3Jj cGtncy92aWV3bmlvci9wYXRjaGVzL2V4aXYyLTAuMjgucGF0Y2gKQEAgLTAsMCArMSwxNDcgQEAK K1BhdGNoLVNvdXJjZTogaHR0cHM6Ly9naXRsYWIuYXJjaGxpbnV4Lm9yZy9hcmNobGludXgvcGFj a2FnaW5nL3BhY2thZ2VzL3ZpZXduaW9yLy0vYmxvYi9mMjA2Y2U2YzIyYTNlYzVmMWY5ZWExYmRl NDA3NzU4NGY4MDQ1OGRkL2V4aXYyLTAuMjgucGF0Y2gKKy0tCitGcm9tIGI2YmI4MWExYjQ2ZTkx MWQxNWJiZjlhNzMwOTcyNTIzZGUxNzc3MDUgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCitGcm9t OiB0YXN0eXRlYSA8dGFzdHl0ZWFAdGFzdHl0ZWEuZGU+CitEYXRlOiBUdWUsIDE2IE1heSAyMDIz IDEwOjU0OjQwICswMjAwCitTdWJqZWN0OiBbUEFUQ0ggMS8yXSBjaGFuZ2UgZXhpdjIgQXV0b1B0 ciB0byB1bmlxdWVfcHRyCisKK2V4aXYyLTAuMjguMCByZW1vdmVkIEV4aXYyOjpJbWFnZTo6QXV0 b1B0ciBhbmQgYWRkZWQKK0V4aXYyOjpJbWFnZTo6VW5pcXVlUHRyIGluc3RlYWQuIHNpbmNlIGl0 J3MgYSB0eXBlZGVmIGZvcgorc3RkOjp1bmlxdWVfcHRyPEltYWdlPiwgaSdtIHVzaW5nIHRoYXQg ZGlyZWN0bHkgaW5zdGVhZCBvZiBhZGRpbmcgYQorY29uZGl0aW9uIG9uIHRoZSBleGl2MiB2ZXJz aW9uLgorLS0tCisgc3JjL3VuaS1leGl2Mi5jcHAgfCAyMSArKysrKysrKysrKy0tLS0tLS0tLS0K KyAxIGZpbGUgY2hhbmdlZCwgMTEgaW5zZXJ0aW9ucygrKSwgMTAgZGVsZXRpb25zKC0pCisKK2Rp ZmYgLS1naXQgYS9zcmMvdW5pLWV4aXYyLmNwcCBiL3NyYy91bmktZXhpdjIuY3BwCitpbmRleCAw ZDE0YjlmLi43NzA2NGMyIDEwMDY0NAorLS0tIGEvc3JjL3VuaS1leGl2Mi5jcHAKKysrKyBiL3Ny Yy91bmktZXhpdjIuY3BwCitAQCAtMjIsMTIgKzIyLDEzIEBACisgCisgI2luY2x1ZGUgPGV4aXYy L2V4aXYyLmhwcD4KKyAjaW5jbHVkZSA8aW9zdHJlYW0+CisrI2luY2x1ZGUgPG1lbW9yeT4KKyAK KyAjaW5jbHVkZSAidW5pLWV4aXYyLmhwcCIKKyAKKyAjZGVmaW5lIEFSUkFZX1NJWkUoYXJyYXkp IChzaXplb2YgYXJyYXkvc2l6ZW9mKGFycmF5WzBdKSkKKyAKKy1zdGF0aWMgRXhpdjI6OkltYWdl OjpBdXRvUHRyIGNhY2hlZF9pbWFnZTsKKytzdGF0aWMgc3RkOjp1bmlxdWVfcHRyPEV4aXYyOjpJ bWFnZT4gY2FjaGVkX2ltYWdlOworIAorIGV4dGVybiAiQyIKKyB2b2lkCitAQCAtMzUsOCArMzYs OCBAQCB1bmlfcmVhZF9leGl2Ml9tYXAoY29uc3QgY2hhciAqdXJpLCB2b2lkICgqY2FsbGJhY2sp KGNvbnN0IGNoYXIqLCBjb25zdCBjaGFyKiwgdgorIHsKKyAgICAgRXhpdjI6OkxvZ01zZzo6c2V0 TGV2ZWwoRXhpdjI6OkxvZ01zZzo6bXV0ZSk7CisgICAgIHRyeSB7CistICAgICAgICBFeGl2Mjo6 SW1hZ2U6OkF1dG9QdHIgaW1hZ2UgPSBFeGl2Mjo6SW1hZ2VGYWN0b3J5OjpvcGVuKHVyaSk7Cist ICAgICAgICBpZiAoIGltYWdlLmdldCgpID09IDAgKSB7CisrICAgICAgICBzdGQ6OnVuaXF1ZV9w dHI8RXhpdjI6OkltYWdlPiBpbWFnZSA9IEV4aXYyOjpJbWFnZUZhY3Rvcnk6Om9wZW4odXJpKTsK KysgICAgICAgIGlmIChpbWFnZSA9PSBudWxscHRyKSB7CisgICAgICAgICAgICAgcmV0dXJuOwor ICAgICAgICAgfQorIAorQEAgLTkxLDE0ICs5MiwxNCBAQCB1bmlfcmVhZF9leGl2Ml90b19jYWNo ZShjb25zdCBjaGFyICp1cmkpCisgeworICAgICBFeGl2Mjo6TG9nTXNnOjpzZXRMZXZlbChFeGl2 Mjo6TG9nTXNnOjptdXRlKTsKKyAKKy0gICAgaWYgKCBjYWNoZWRfaW1hZ2UuZ2V0KCkgIT0gTlVM TCApIHsKKysgICAgaWYgKGNhY2hlZF9pbWFnZSAhPSBudWxscHRyKSB7CisgICAgICAgICBjYWNo ZWRfaW1hZ2UtPmNsZWFyTWV0YWRhdGEoKTsKKy0gICAgICAgIGNhY2hlZF9pbWFnZS5yZXNldChO VUxMKTsKKysgICAgICAgIGNhY2hlZF9pbWFnZS5yZXNldChudWxscHRyKTsKKyAgICAgfQorIAor ICAgICB0cnkgeworICAgICAgICAgY2FjaGVkX2ltYWdlID0gRXhpdjI6OkltYWdlRmFjdG9yeTo6 b3Blbih1cmkpOworLSAgICAgICAgaWYgKCBjYWNoZWRfaW1hZ2UuZ2V0KCkgPT0gMCApIHsKKysg ICAgICAgIGlmIChjYWNoZWRfaW1hZ2UgPT0gbnVsbHB0cikgeworICAgICAgICAgICAgIHJldHVy biAxOworICAgICAgICAgfQorIAorQEAgLTExNiwxMyArMTE3LDEzIEBAIHVuaV93cml0ZV9leGl2 Ml9mcm9tX2NhY2hlKGNvbnN0IGNoYXIgKnVyaSkKKyB7CisgICAgIEV4aXYyOjpMb2dNc2c6OnNl dExldmVsKEV4aXYyOjpMb2dNc2c6Om11dGUpOworIAorLSAgICBpZiAoIGNhY2hlZF9pbWFnZS5n ZXQoKSA9PSBOVUxMICkgeworKyAgICBpZiAoY2FjaGVkX2ltYWdlID09IG51bGxwdHIpIHsKKyAg ICAgICAgIHJldHVybiAxOworICAgICB9CisgCisgICAgIHRyeSB7CistICAgICAgICBFeGl2Mjo6 SW1hZ2U6OkF1dG9QdHIgaW1hZ2UgPSBFeGl2Mjo6SW1hZ2VGYWN0b3J5OjpvcGVuKHVyaSk7Cist ICAgICAgICBpZiAoIGltYWdlLmdldCgpID09IDAgKSB7CisrICAgICAgICBzdGQ6OnVuaXF1ZV9w dHI8RXhpdjI6OkltYWdlPiBpbWFnZSA9IEV4aXYyOjpJbWFnZUZhY3Rvcnk6Om9wZW4odXJpKTsK KysgICAgICAgIGlmIChpbWFnZSA9PSBudWxscHRyKSB7CisgICAgICAgICAgICAgcmV0dXJuIDI7 CisgICAgICAgICB9CisgCitAQCAtMTMwLDcgKzEzMSw3IEBAIHVuaV93cml0ZV9leGl2Ml9mcm9t X2NhY2hlKGNvbnN0IGNoYXIgKnVyaSkKKyAgICAgICAgIGltYWdlLT53cml0ZU1ldGFkYXRhKCk7 CisgCisgICAgICAgICBjYWNoZWRfaW1hZ2UtPmNsZWFyTWV0YWRhdGEoKTsKKy0gICAgICAgIGNh Y2hlZF9pbWFnZS5yZXNldChOVUxMKTsKKysgICAgICAgIGNhY2hlZF9pbWFnZS5yZXNldChudWxs cHRyKTsKKyAKKyAgICAgICAgIHJldHVybiAwOworICAgICB9IGNhdGNoIChFeGl2Mjo6QW55RXJy b3ImIGUpIHsKKworRnJvbSA0N2QwYjk4Y2I0NjUyNmFhOGFhMDM1YmViY2FiYzE0YTExZmE1N2Vl IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQorRnJvbTogdGFzdHl0ZWEgPHRhc3R5dGVhQHRhc3R5 dGVhLmRlPgorRGF0ZTogVHVlLCAxNiBNYXkgMjAyMyAxMToxNzowMCArMDIwMAorU3ViamVjdDog W1BBVENIIDIvMl0gYWRkIHN1cHBvcnQgZm9yIGV4aXYtMC4yOC4wIGVycm9ycworCitleGl2Mi0w LjI4LjAgY2hhbmdlZCBFeGl2Mjo6QW55RXJyb3IgdG8gRXhpdjI6OkVycm9yLgorLS0tCisgc3Jj L3VuaS1leGl2Mi5jcHAgfCAxNSArKysrKysrKysrKystLS0KKyAxIGZpbGUgY2hhbmdlZCwgMTIg aW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKKworZGlmZiAtLWdpdCBhL3NyYy91bmktZXhp djIuY3BwIGIvc3JjL3VuaS1leGl2Mi5jcHAKK2luZGV4IDc3MDY0YzIuLjU2N2E1MGYgMTAwNjQ0 CistLS0gYS9zcmMvdW5pLWV4aXYyLmNwcAorKysrIGIvc3JjL3VuaS1leGl2Mi5jcHAKK0BAIC0y OCw2ICsyOCwxNSBAQAorIAorICNkZWZpbmUgQVJSQVlfU0laRShhcnJheSkgKHNpemVvZiBhcnJh eS9zaXplb2YoYXJyYXlbMF0pKQorIAorKyNkZWZpbmUgRVhJVl9FUlJPUiBFeGl2Mjo6QW55RXJy b3IKKysjaWZkZWYgRVhJVjJfVkVSU0lPTgorKyAgICAjaWZkZWYgRVhJVjJfVEVTVF9WRVJTSU9O CisrICAgICAgICAjaWYgRVhJVjJfVEVTVF9WRVJTSU9OKDAsMjgsMCkKKysgICAgICAgICAgICAj ZGVmaW5lIEVYSVZfRVJST1IgRXhpdjI6OkVycm9yCisrICAgICAgICAjZW5kaWYKKysgICAgI2Vu ZGlmCisrI2VuZGlmCisrCisgc3RhdGljIHN0ZDo6dW5pcXVlX3B0cjxFeGl2Mjo6SW1hZ2U+IGNh Y2hlZF9pbWFnZTsKKyAKKyBleHRlcm4gIkMiCitAQCAtODEsNyArOTAsNyBAQCB1bmlfcmVhZF9l eGl2Ml9tYXAoY29uc3QgY2hhciAqdXJpLCB2b2lkICgqY2FsbGJhY2spKGNvbnN0IGNoYXIqLCBj b25zdCBjaGFyKiwgdgorICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgfQorICAgICAg ICAgfQorLSAgICB9IGNhdGNoIChFeGl2Mjo6QW55RXJyb3ImIGUpIHsKKysgICAgfSBjYXRjaCAo RVhJVl9FUlJPUiYgZSkgeworICAgICAgICAgc3RkOjpjZXJyIDw8ICJFeGl2MjogJyIgPDwgZSA8 PCAiJ1xuIjsKKyAgICAgfQorIH0KK0BAIC0xMDQsNyArMTEzLDcgQEAgdW5pX3JlYWRfZXhpdjJf dG9fY2FjaGUoY29uc3QgY2hhciAqdXJpKQorICAgICAgICAgfQorIAorICAgICAgICAgY2FjaGVk X2ltYWdlLT5yZWFkTWV0YWRhdGEoKTsKKy0gICAgfSBjYXRjaCAoRXhpdjI6OkFueUVycm9yJiBl KSB7CisrICAgIH0gY2F0Y2ggKEVYSVZfRVJST1ImIGUpIHsKKyAgICAgICAgIHN0ZDo6Y2VyciA8 PCAiRXhpdjI6ICciIDw8IGUgPDwgIidcbiI7CisgICAgIH0KKyAKK0BAIC0xMzQsNyArMTQzLDcg QEAgdW5pX3dyaXRlX2V4aXYyX2Zyb21fY2FjaGUoY29uc3QgY2hhciAqdXJpKQorICAgICAgICAg Y2FjaGVkX2ltYWdlLnJlc2V0KG51bGxwdHIpOworIAorICAgICAgICAgcmV0dXJuIDA7CistICAg IH0gY2F0Y2ggKEV4aXYyOjpBbnlFcnJvciYgZSkgeworKyAgICB9IGNhdGNoIChFWElWX0VSUk9S JiBlKSB7CisgICAgICAgICBzdGQ6OmNlcnIgPDwgIkV4aXYyOiAnIiA8PCBlIDw8ICInXG4iOwor ICAgICB9CisgCmRpZmYgLS1naXQgYS9zcmNwa2dzL3ZpZXduaW9yL3RlbXBsYXRlIGIvc3JjcGtn cy92aWV3bmlvci90ZW1wbGF0ZQppbmRleCBlYTFlNTI4YTg2NTFmLi40YzczMjI2NjYyY2EwIDEw MDY0NAotLS0gYS9zcmNwa2dzL3ZpZXduaW9yL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3Mvdmlld25p b3IvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICd2aWV3bmlv cicKIHBrZ25hbWU9dmlld25pb3IKIHZlcnNpb249MS44Ci1yZXZpc2lvbj0xCityZXZpc2lvbj0y CiBidWlsZF9zdHlsZT1tZXNvbgogaG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIGludGx0b29s IGdsaWItZGV2ZWwgZ2V0dGV4dC1kZXZlbCIKIG1ha2VkZXBlbmRzPSJndGsrLWRldmVsIGV4aXYy LWRldmVsIgoKRnJvbSAwZmM4MGMzZWNjMDQyMjdmNDM0MTVkMWViZGQ0MWUwMDRiYzJmODc2IE1v biBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBKb2huIDxtZUBqb2hubnluYXRvci5kZXY+CkRh dGU6IE1vbiwgMjMgT2N0IDIwMjMgMTk6MDY6MzQgKzAyMDAKU3ViamVjdDogW1BBVENIIDIwLzIy XSBOZXcgcGFja2FnZTogbnVmcmF3LTAuNDMuMwoKQ28tYXV0aG9yZWQtYnk6IHRyaWFsbGF4IDx0 cmlhbGxheEB0dXRhbm90YS5jb20+Ci0tLQogc3JjcGtncy9udWZyYXctZ2ltcCAgICAgICAgICAg ICAgICAgICAgICAgICAgIHwgIDEgKwogLi4uL3BhdGNoZXMvMDAwMS1udWZyYXctZ2xpYi0yLjcw LnBhdGNoICAgICAgIHwgMjAgKysrKysrKwogc3JjcGtncy9udWZyYXcvcGF0Y2hlcy9leGl2LTAu MjgueC5kaWZmICAgICAgIHwgNTkgKysrKysrKysrKysrKysrKysrKwogc3JjcGtncy9udWZyYXcv dGVtcGxhdGUgICAgICAgICAgICAgICAgICAgICAgIHwgNTYgKysrKysrKysrKysrKysrKysrCiBz cmNwa2dzL3JlbW92ZWQtcGFja2FnZXMvdGVtcGxhdGUgICAgICAgICAgICAgfCAgNCArLQogc3Jj cGtncy91ZnJhdyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDEgKwogc3JjcGtn cy91ZnJhdy1naW1wICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgIDIgKy0KIC4uLi91ZnJh dy9wYXRjaGVzLzAwMS1uby1naW1wLXJlbW90ZS5wYXRjaCAgICB8IDEyIC0tLS0KIHNyY3BrZ3Mv dWZyYXcvcGF0Y2hlcy8wMDItZml4X2Fic19pbnQucGF0Y2ggICB8IDExIC0tLS0KIC4uLi91ZnJh dy9wYXRjaGVzLzAzX2ZpeC11bnNpZ25lZC1jaGFyLnBhdGNoICB8IDE0IC0tLS0tCiBzcmNwa2dz L3VmcmF3L3BhdGNoZXMvZXhpdi0wLjI3LnBhdGNoICAgICAgICAgfCAyNSAtLS0tLS0tLQogc3Jj cGtncy91ZnJhdy9wYXRjaGVzL2dsaWItMi42OC5wYXRjaCAgICAgICAgIHwgMzAgLS0tLS0tLS0t LQogc3JjcGtncy91ZnJhdy9wYXRjaGVzL2lvc3RyZWFtLnBhdGNoICAgICAgICAgIHwgMTMgLS0t LQogc3JjcGtncy91ZnJhdy90ZW1wbGF0ZSAgICAgICAgICAgICAgICAgICAgICAgIHwgMzggLS0t LS0tLS0tLS0tCiAxNCBmaWxlcyBjaGFuZ2VkLCAxNDEgaW5zZXJ0aW9ucygrKSwgMTQ1IGRlbGV0 aW9ucygtKQogY3JlYXRlIG1vZGUgMTIwMDAwIHNyY3BrZ3MvbnVmcmF3LWdpbXAKIGNyZWF0ZSBt b2RlIDEwMDY0NCBzcmNwa2dzL251ZnJhdy9wYXRjaGVzLzAwMDEtbnVmcmF3LWdsaWItMi43MC5w YXRjaAogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvbnVmcmF3L3BhdGNoZXMvZXhpdi0wLjI4 LnguZGlmZgogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvbnVmcmF3L3RlbXBsYXRlCiBjcmVh dGUgbW9kZSAxMjAwMDAgc3JjcGtncy91ZnJhdwogZGVsZXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3Mv dWZyYXcvcGF0Y2hlcy8wMDEtbm8tZ2ltcC1yZW1vdGUucGF0Y2gKIGRlbGV0ZSBtb2RlIDEwMDY0 NCBzcmNwa2dzL3VmcmF3L3BhdGNoZXMvMDAyLWZpeF9hYnNfaW50LnBhdGNoCiBkZWxldGUgbW9k ZSAxMDA2NDQgc3JjcGtncy91ZnJhdy9wYXRjaGVzLzAzX2ZpeC11bnNpZ25lZC1jaGFyLnBhdGNo CiBkZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtncy91ZnJhdy9wYXRjaGVzL2V4aXYtMC4yNy5wYXRj aAogZGVsZXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvdWZyYXcvcGF0Y2hlcy9nbGliLTIuNjgucGF0 Y2gKIGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3VmcmF3L3BhdGNoZXMvaW9zdHJlYW0ucGF0 Y2gKIGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3VmcmF3L3RlbXBsYXRlCgpkaWZmIC0tZ2l0 IGEvc3JjcGtncy9udWZyYXctZ2ltcCBiL3NyY3BrZ3MvbnVmcmF3LWdpbXAKbmV3IGZpbGUgbW9k ZSAxMjAwMDAKaW5kZXggMDAwMDAwMDAwMDAwMC4uMGJkMTQ1OWIyYTE2ZgotLS0gL2Rldi9udWxs CisrKyBiL3NyY3BrZ3MvbnVmcmF3LWdpbXAKQEAgLTAsMCArMSBAQAorbnVmcmF3ClwgTm8gbmV3 bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9udWZyYXcvcGF0Y2hlcy8w MDAxLW51ZnJhdy1nbGliLTIuNzAucGF0Y2ggYi9zcmNwa2dzL251ZnJhdy9wYXRjaGVzLzAwMDEt bnVmcmF3LWdsaWItMi43MC5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw MDAwMDAwLi40MWYxMGJmYmFmYTFmCi0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9udWZyYXcv cGF0Y2hlcy8wMDAxLW51ZnJhdy1nbGliLTIuNzAucGF0Y2gKQEAgLTAsMCArMSwyMCBAQAorZGlm ZiAtcnUgbnVmcmF3L3VmX2dsaWIuaCBudWZyYXcvdWZfZ2xpYi5oCistLS0gbnVmcmF3L3VmX2ds aWIuaAkyMDIyLTAyLTIzIDA5OjAzOjQ0LjcwMDQ3MjkxOSArMDEwMAorKysrIG51ZnJhdy91Zl9n bGliLmgJMjAyMi0wMi0yMyAwOTowNDo1MC4yNjAzMDg4MDUgKzAxMDAKK0BAIC0xMywxMyArMTMs MTMgQEAKKyAjaWZuZGVmIF9VRl9HTElCX0gKKyAjZGVmaW5lIF9VRl9HTElCX0gKKyAKKysjaW5j bHVkZSA8Z2xpYi5oPgorKyNpbmNsdWRlIDxnbGliL2dzdGRpby5oPgorKworICNpZmRlZiBfX2Nw bHVzcGx1cworIGV4dGVybiAiQyIgeworICNlbmRpZgorIAorLSNpbmNsdWRlIDxnbGliLmg+Cist I2luY2x1ZGUgPGdsaWIvZ3N0ZGlvLmg+CistCisgLy8gZ193aW4zMl9sb2NhbGVfZmlsZW5hbWVf ZnJvbV91dGY4IGlzIG5lZWRlZCBvbmx5IG9uIHdpbjMyCisgI2lmZGVmIF9XSU4zMgorICNkZWZp bmUgdWZfd2luMzJfbG9jYWxlX2ZpbGVuYW1lX2Zyb21fdXRmOChfX3NvbWVfc3RyaW5nX18pIFwK ZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbnVmcmF3L3BhdGNoZXMvZXhpdi0wLjI4LnguZGlmZiBiL3Ny Y3BrZ3MvbnVmcmF3L3BhdGNoZXMvZXhpdi0wLjI4LnguZGlmZgpuZXcgZmlsZSBtb2RlIDEwMDY0 NAppbmRleCAwMDAwMDAwMDAwMDAwLi42YzIzMzU5YmY3MDZjCi0tLSAvZGV2L251bGwKKysrIGIv c3JjcGtncy9udWZyYXcvcGF0Y2hlcy9leGl2LTAuMjgueC5kaWZmCkBAIC0wLDAgKzEsNTkgQEAK K1BhdGNoIHRha2VuIGZyb20gQVVSIHBhY2thZ2U6IGh0dHBzOi8vYXVyLmFyY2hsaW51eC5vcmcv Y2dpdC9hdXIuZ2l0L3RyZWUvZXhpdjItZXJyb3IucGF0Y2g/aD1udWZyYXcmaWQ9MjllNDY3ZjJj Mjk3ZmNkMGYzNjU0ODY0MmQ2ZDJjYWI2NDI4ZDA4ZgorZGlmZiAtLWdpdCBhL251ZnJhd19leGl2 Mi5jYyBiL251ZnJhd19leGl2Mi5jYworaW5kZXggMmRlNGNjMy4uNDVhZWE4NyAxMDA2NDQKKy0t LSBhL251ZnJhd19leGl2Mi5jYworKysrIGIvbnVmcmF3X2V4aXYyLmNjCitAQCAtNTQsNyArNTQs NyBAQCBleHRlcm4gIkMiIGludCBudWZyYXdfZXhpZl9yZWFkX2lucHV0KG51ZnJhd19kYXRhICp1 ZikKKyAgICAgICAgIHVmLT5pbnB1dEV4aWZCdWYgPSBOVUxMOworICAgICAgICAgdWYtPmlucHV0 RXhpZkJ1ZkxlbiA9IDA7CisgCistICAgICAgICBFeGl2Mjo6SW1hZ2U6OkF1dG9QdHIgaW1hZ2U7 CisrICAgICAgICBFeGl2Mjo6SW1hZ2U6OlVuaXF1ZVB0ciBpbWFnZTsKKyAgICAgICAgIGlmICh1 Zi0+dW56aXBwZWRCdWYgIT0gTlVMTCkgeworICAgICAgICAgICAgIGltYWdlID0gRXhpdjI6Oklt YWdlRmFjdG9yeTo6b3BlbigKKyAgICAgICAgICAgICAgICAgICAgICAgICAoY29uc3QgRXhpdjI6 OmJ5dGUqKXVmLT51bnppcHBlZEJ1ZiwgdWYtPnVuemlwcGVkQnVmTGVuKTsKK0BAIC0xMzUsNyAr MTM1LDcgQEAgZXh0ZXJuICJDIiBpbnQgbnVmcmF3X2V4aWZfcmVhZF9pbnB1dChudWZyYXdfZGF0 YSAqdWYpCisgICAgICAgICBudWZyYXdfbWVzc2FnZShOVUZSQVdfU0VUX0xPRywgIiVzXG4iLCBz dGRlcnJvci5zdHIoKS5jX3N0cigpKTsKKyAKKyAgICAgICAgIHJldHVybiBOVUZSQVdfU1VDQ0VT UzsKKy0gICAgfSBjYXRjaCAoRXhpdjI6OkFueUVycm9yJiBlKSB7CisrICAgIH0gY2F0Y2ggKEV4 aXYyOjpFcnJvciYgZSkgeworICAgICAgICAgc3RkOjpjZXJyLnJkYnVmKHNhdmVjZXJyKTsKKyAg ICAgICAgIHN0ZDo6c3RyaW5nIHMoZS53aGF0KCkpOworICAgICAgICAgbnVmcmF3X21lc3NhZ2Uo TlVGUkFXX1NFVF9XQVJOSU5HLCAiJXNcbiIsIHMuY19zdHIoKSk7CitAQCAtMTU2LDcgKzE1Niw3 IEBAIHN0YXRpYyBFeGl2Mjo6RXhpZkRhdGEgbnVmcmF3X3ByZXBhcmVfZXhpZmRhdGEobnVmcmF3 X2RhdGEgKnVmKQorICAgICAgICAgaWYgKChwb3MgPSBleGlmRGF0YS5maW5kS2V5KEV4aXYyOjpF eGlmS2V5KCJFeGlmLkltYWdlLk9yaWVudGF0aW9uIikpKQorICAgICAgICAgICAgICAgICAhPSBl eGlmRGF0YS5lbmQoKSkgeworICAgICAgICAgICAgIG51ZnJhd19tZXNzYWdlKE5VRlJBV19TRVRf TE9HLCAiUmVzZXR0aW5nICVzIGZyb20gJyVkJyB0byAnMSdcbiIsCistICAgICAgICAgICAgICAg ICAgICAgICAgICBwb3MtPmtleSgpLmNfc3RyKCksIHBvcy0+dmFsdWUoKS50b0xvbmcoKSk7Cisr ICAgICAgICAgICAgICAgICAgICAgICAgICBwb3MtPmtleSgpLmNfc3RyKCksIHBvcy0+dmFsdWUo KS50b0ludDY0KCkpOworICAgICAgICAgICAgIHBvcy0+c2V0VmFsdWUoIjEiKTsgLyogMSA9IE5v cm1hbCBvcmllbnRhdGlvbiAqLworICAgICAgICAgfQorICAgICB9CitAQCAtMzI3LDcgKzMyNyw3 IEBAIGV4dGVybiAiQyIgaW50IG51ZnJhd19leGlmX3ByZXBhcmVfb3V0cHV0KG51ZnJhd19kYXRh ICp1ZikKKyAgICAgICAgIG51ZnJhd19tZXNzYWdlKE5VRlJBV19TRVRfTE9HLCAiJXNcbiIsIHN0 ZGVycm9yLnN0cigpLmNfc3RyKCkpOworIAorICAgICAgICAgcmV0dXJuIE5VRlJBV19TVUNDRVNT OworLSAgICB9IGNhdGNoIChFeGl2Mjo6QW55RXJyb3ImIGUpIHsKKysgICAgfSBjYXRjaCAoRXhp djI6OkVycm9yJiBlKSB7CisgICAgICAgICBzdGQ6OmNlcnIucmRidWYoc2F2ZWNlcnIpOworICAg ICAgICAgc3RkOjpzdHJpbmcgcyhlLndoYXQoKSk7CisgICAgICAgICBudWZyYXdfbWVzc2FnZShO VUZSQVdfU0VUX1dBUk5JTkcsICIlc1xuIiwgcy5jX3N0cigpKTsKK0BAIC0zNDcsNyArMzQ3LDcg QEAgZXh0ZXJuICJDIiBpbnQgbnVmcmF3X2V4aWZfd3JpdGUobnVmcmF3X2RhdGEgKnVmKQorIAor ICAgICAgICAgY2hhciAqZmlsZW5hbWUgPQorICAgICAgICAgICAgIHVmX3dpbjMyX2xvY2FsZV9m aWxlbmFtZV9mcm9tX3V0ZjgodWYtPmNvbmYtPm91dHB1dEZpbGVuYW1lKTsKKy0gICAgICAgIEV4 aXYyOjpJbWFnZTo6QXV0b1B0ciBpbWFnZSA9IEV4aXYyOjpJbWFnZUZhY3Rvcnk6Om9wZW4oZmls ZW5hbWUpOworKyAgICAgICAgRXhpdjI6OkltYWdlOjpVbmlxdWVQdHIgaW1hZ2UgPSBFeGl2Mjo6 SW1hZ2VGYWN0b3J5OjpvcGVuKGZpbGVuYW1lKTsKKyAgICAgICAgIHVmX3dpbjMyX2xvY2FsZV9m aWxlbmFtZV9mcmVlKGZpbGVuYW1lKTsKKyAgICAgICAgIGFzc2VydChpbWFnZS5nZXQoKSAhPSAw KTsKKyAKK0BAIC0zNjcsNyArMzY3LDcgQEAgZXh0ZXJuICJDIiBpbnQgbnVmcmF3X2V4aWZfd3Jp dGUobnVmcmF3X2RhdGEgKnVmKQorICAgICAgICAgbnVmcmF3X21lc3NhZ2UoTlVGUkFXX1NFVF9M T0csICIlc1xuIiwgc3RkZXJyb3Iuc3RyKCkuY19zdHIoKSk7CisgCisgICAgICAgICByZXR1cm4g TlVGUkFXX1NVQ0NFU1M7CistICAgIH0gY2F0Y2ggKEV4aXYyOjpBbnlFcnJvciYgZSkgeworKyAg ICB9IGNhdGNoIChFeGl2Mjo6RXJyb3ImIGUpIHsKKyAgICAgICAgIHN0ZDo6Y2Vyci5yZGJ1Zihz YXZlY2Vycik7CisgICAgICAgICBzdGQ6OnN0cmluZyBzKGUud2hhdCgpKTsKKyAgICAgICAgIG51 ZnJhd19tZXNzYWdlKE5VRlJBV19TRVRfV0FSTklORywgIiVzXG4iLCBzLmNfc3RyKCkpOwpkaWZm IC0tZ2l0IGEvc3JjcGtncy9udWZyYXcvdGVtcGxhdGUgYi9zcmNwa2dzL251ZnJhdy90ZW1wbGF0 ZQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwLi43ZDc1YTRkMzcyNTU1 Ci0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9udWZyYXcvdGVtcGxhdGUKQEAgLTAsMCArMSw1 NiBAQAorIyBUZW1wbGF0ZSBmaWxlIGZvciAnbnVmcmF3JworcGtnbmFtZT1udWZyYXcKK3ZlcnNp b249MC40My4zCityZXZpc2lvbj0xCitfdmVyPSIke3ZlcnNpb24lLip9LSR7dmVyc2lvbiMjKi59 IgorYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQorY29uZmlndXJlX2FyZ3M9Ii0tZW5hYmxlLWNv bnRyYXN0IC0tZW5hYmxlLW1pbWUgLS1lbmFibGUtb3Blbm1wIC0td2l0aC1naW1wCisgLS1lbmFi bGUtZXh0cmFzIgoraG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIGF1dG9tYWtlIGxpYnRvb2wg Z2xpYi1kZXZlbCIKKyMgbGliZ2V4aXYyLWRldmVsIGlzIG9ubHkgaGVyZSB0byBmaXggYnVpbGQg b3JkZXIsIHJlbW92ZSBvbiBuZXh0IHRlbXBsYXRlCisjIGNoYW5nZQorbWFrZWRlcGVuZHM9ImV4 aXYyLWRldmVsIGdpbXAtZGV2ZWwgZ2xpYi1kZXZlbCBndGtpbWFnZXZpZXctZGV2ZWwgbGNtczIt ZGV2ZWwKKyBsZW5zZnVuLWRldmVsIGphc3Blci1kZXZlbCBsaWJnZXhpdjItZGV2ZWwiCitkZXBl bmRzPSJkZXNrdG9wLWZpbGUtdXRpbHMiCitzaG9ydF9kZXNjPSJVdGlsaXR5IHRvIHJlYWQgYW5k IG1hbmlwdWxhdGUgcmF3IGltYWdlcyBmcm9tIGRpZ2l0YWwgY2FtZXJhcyIKK21haW50YWluZXI9 IkpvaG4gPG1lQGpvaG5ueW5hdG9yLmRldj4iCitsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyIgor aG9tZXBhZ2U9Imh0dHBzOi8vc291cmNlZm9yZ2UubmV0L3Byb2plY3RzL251ZnJhdy8iCitkaXN0 ZmlsZXM9IiR7U09VUkNFRk9SR0VfU0lURX0vbnVmcmF3L251ZnJhdy0ke192ZXJ9LnRhci5neiIK K2NoZWNrc3VtPTJjN2RjYzE1OTA5OTNlYzI2N2IzMTEyNTYyYjI0MzMwMTBkNmY5NGY2YWNjNjUw NmM3NmFhMjljZjhjNmMzMmMKKworY2FzZSAiJFhCUFNfVEFSR0VUX01BQ0hJTkUiIGluCisJYXJt dls2N11sKiB8IGFhcmNoNjQqKQorCQltYWtlZGVwZW5kcys9IiBsaWJnb21wLWRldmVsIgorCQlt YWtlX2J1aWxkX2FyZ3M9IkNYWEZMQUdTKz0tZnNpZ25lZC1jaGFyIExERkxBR1MrPS1mb3Blbm1w IgorCQk7OworZXNhYworCitwcmVfY29uZmlndXJlKCkgeworCWF1dG9yZWNvbmYgLWZpCit9CisK K3ByZV9idWlsZCgpIHsKKwltdiBudWZyYXcuZGVza3RvcHsuZGVza3RvcCx9CisJY2htb2QgK3gg Z2VuZXJhdGVfc2NoZW1hcy5zaAorfQorCitudWZyYXctZ2ltcF9wYWNrYWdlKCkgeworCWRlcGVu ZHM9IiR7c291cmNlcGtnfT49JHt2ZXJzaW9ufV8ke3JldmlzaW9ufSIKKwlzaG9ydF9kZXNjKz0i IC0gZ2ltcCBwbHVnaW4iCisJcGtnX2luc3RhbGwoKSB7CisJCXZtb3ZlIHVzci9saWIvZ2ltcAor CX0KK30KKwordWZyYXdfcGFja2FnZSgpIHsKKwlkZXBlbmRzPSIke3NvdXJjZXBrZ30+PSR7dmVy c2lvbn1fJHtyZXZpc2lvbn0iCisJYnVpbGRfc3R5bGU9bWV0YQorCXNob3J0X2Rlc2MrPSIgKHRy YW5zaXRpb25hbCBkdW1teSBwYWNrYWdlKSIKK30KKwordWZyYXctZ2ltcF9wYWNrYWdlKCkgewor CWRlcGVuZHM9Im51ZnJhdy1naW1wPj0ke3ZlcnNpb259XyR7cmV2aXNpb259IgorCWJ1aWxkX3N0 eWxlPW1ldGEKKwlzaG9ydF9kZXNjKz0iIC0gZ2ltcCBwbHVnaW4gKHRyYW5zaXRpb25hbCBkdW1t eSBwYWNrYWdlKSIKK30KZGlmZiAtLWdpdCBhL3NyY3BrZ3MvcmVtb3ZlZC1wYWNrYWdlcy90ZW1w bGF0ZSBiL3NyY3BrZ3MvcmVtb3ZlZC1wYWNrYWdlcy90ZW1wbGF0ZQppbmRleCBjMjVjNWMzZTcy MGVhLi5kNDJiYzlkZTRhOGJkIDEwMDY0NAotLS0gYS9zcmNwa2dzL3JlbW92ZWQtcGFja2FnZXMv dGVtcGxhdGUKKysrIGIvc3JjcGtncy9yZW1vdmVkLXBhY2thZ2VzL3RlbXBsYXRlCkBAIC0xLDYg KzEsNiBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAncmVtb3ZlZC1wYWNrYWdlcycKIHBrZ25hbWU9 cmVtb3ZlZC1wYWNrYWdlcwotdmVyc2lvbj0wLjEuMjAyMzExMTAKK3ZlcnNpb249MC4xLjIwMjMx MTEyCiByZXZpc2lvbj0xCiBidWlsZF9zdHlsZT1tZXRhCiBzaG9ydF9kZXNjPSJVbmluc3RhbGxz IHBhY2thZ2VzIHJlbW92ZWQgZnJvbSByZXBvc2l0b3J5IgpAQCAtNjc2LDYgKzY3Niw4IEBAIHJl cGxhY2VzPSIKICB0cmF2ZXJzbzw9MC40OS42XzIKICB0dHlsb2FkLWdpdDw9MjAxNDExMTdfNAog IHR1eGM8PTEuMV8zCisgdWZyYXctZ2ltcDw9MC4yMl81CisgdWZyYXc8PTAuMjJfNQogIHVuaWNv cm4tcHl0aG9uPD0xLjAuMl8yCiAgdXB3b3JrPD01LjYuMTAuMF8xCiAgdXJsbWF0Y2gtZ2l0PD0y MDE0MTExNl8yCmRpZmYgLS1naXQgYS9zcmNwa2dzL3VmcmF3IGIvc3JjcGtncy91ZnJhdwpuZXcg ZmlsZSBtb2RlIDEyMDAwMAppbmRleCAwMDAwMDAwMDAwMDAwLi4wYmQxNDU5YjJhMTZmCi0tLSAv ZGV2L251bGwKKysrIGIvc3JjcGtncy91ZnJhdwpAQCAtMCwwICsxIEBACitudWZyYXcKXCBObyBu ZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9zcmNwa2dzL3VmcmF3LWdpbXAgYi9z cmNwa2dzL3VmcmF3LWdpbXAKaW5kZXggOTY3ZGM5MDJkZDAyYi4uMGJkMTQ1OWIyYTE2ZiAxMjAw MDAKLS0tIGEvc3JjcGtncy91ZnJhdy1naW1wCisrKyBiL3NyY3BrZ3MvdWZyYXctZ2ltcApAQCAt MSArMSBAQAotdWZyYXcKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCitudWZyYXcKXCBObyBu ZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9zcmNwa2dzL3VmcmF3L3BhdGNoZXMv MDAxLW5vLWdpbXAtcmVtb3RlLnBhdGNoIGIvc3JjcGtncy91ZnJhdy9wYXRjaGVzLzAwMS1uby1n aW1wLXJlbW90ZS5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggY2E0ZjRiZWI2 MjQwZi4uMDAwMDAwMDAwMDAwMAotLS0gYS9zcmNwa2dzL3VmcmF3L3BhdGNoZXMvMDAxLW5vLWdp bXAtcmVtb3RlLnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEsMTIgKzAsMCBAQAotRG9uJ3QgdXNl IGdpbXAtcmVtb3RlIHNpbmNlIGdpbXAgMi40IGFscmVhZHkgaW5jbHVkZXMgZ2ltcC1yZW1vdGUg ZnVuY3Rpb25hbGl0eQotLS0tIGEvdWZyYXdfY29uZi5jCi0rKysgYi91ZnJhd19jb25mLmMKLUBA IC0xMzcsNyArMTM3LDcgQEAKLSAjZWxpZiBIQVZFX0dJTVBfMl80Ci0gICAgICJnaW1wIiwgLyog cmVtb3RlR2ltcENvbW1hbmQgKi8KLSAjZWxzZQotLSAgICAiZ2ltcC1yZW1vdGUiLCAvKiByZW1v dGVHaW1wQ29tbWFuZCAqLwotKyAgICAiZ2ltcCIsIC8qIHJlbW90ZUdpbXBDb21tYW5kICovCi0g I2VuZGlmCi0gCi0gICAgIC8qIEVYSUYgZGF0YSAqLwpkaWZmIC0tZ2l0IGEvc3JjcGtncy91ZnJh dy9wYXRjaGVzLzAwMi1maXhfYWJzX2ludC5wYXRjaCBiL3NyY3BrZ3MvdWZyYXcvcGF0Y2hlcy8w MDItZml4X2Fic19pbnQucGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDZmYzU1 Mjc2OWM5ZjguLjAwMDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtncy91ZnJhdy9wYXRjaGVzLzAwMi1m aXhfYWJzX2ludC5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDExICswLDAgQEAKLS0tLSBhL2Rj cmF3LmNjCTIwMTUtMDYtMTYgMDU6NTg6MzguMDAwMDAwMDAwICswMjAwCi0rKysgYi9kY3Jhdy5j YwkyMDE4LTAyLTA0IDE0OjQ2OjU0LjQ4OTk1MTA3NiArMDEwMAotQEAgLTkyNDIsNyArOTI0Miw3 IEBACi0gICAgIGlmIChtYWtlWzBdID09ICdPJykgewotICAgICAgIGkgPSBmaW5kX2dyZWVuICgx MiwgMzIsIDExODg4NjQsIDM1NzY4MzIpOwotICAgICAgIGMgPSBmaW5kX2dyZWVuICgxMiwgMzIs IDIzODM5MjAsIDIzODcwMTYpOwotLSAgICAgIGlmIChhYnMoaSkgPCBhYnMoYykpIHsKLSsgICAg ICBpZiAoYWJzKChpbnQpaSkgPCBhYnMoKGludCljKSkgewotIAlTV0FQKGksYyk7Ci0gCWxvYWRf ZmxhZ3MgPSAyNDsKLSAgICAgICB9CmRpZmYgLS1naXQgYS9zcmNwa2dzL3VmcmF3L3BhdGNoZXMv MDNfZml4LXVuc2lnbmVkLWNoYXIucGF0Y2ggYi9zcmNwa2dzL3VmcmF3L3BhdGNoZXMvMDNfZml4 LXVuc2lnbmVkLWNoYXIucGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDg2OTBm ODdjYTdkNTkuLjAwMDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtncy91ZnJhdy9wYXRjaGVzLzAzX2Zp eC11bnNpZ25lZC1jaGFyLnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEsMTQgKzAsMCBAQAotU291 cmNlOiB3cml0dGVuIGJ5IEpvaG4gUGF1bCBBZHJpYW4gR2xhdWJpdHogZm9yIERlYmlhbgotVXBz dHJlYW06IGh0dHBzOi8vc291cmNlZm9yZ2UubmV0L3AvdWZyYXcvYnVncy80MTcKLVJlYXNvbjog Zml4ZXMgYSBjb21waWxhdGlvbiBmYWlsdXJlIG9uIGFybSBhcmNoaXRlY3R1cmVzCi0tLS0gYS9k Y3Jhdy5jYwotKysrIGIvZGNyYXcuY2MKLUBAIC0yMjg1LDcgKzIyODUsNyBAQCB2b2lkIENMQVNT IHF1aWNrdGFrZV8xMDBfbG9hZF9yYXcoKQotIAotIHZvaWQgQ0xBU1Mga29kYWtfcmFkY19sb2Fk X3JhdygpCi0gewotLSAgc3RhdGljIGNvbnN0IGNoYXIgc3JjW10gPSB7Ci0rICBzdGF0aWMgY29u c3Qgc2lnbmVkIGNoYXIgc3JjW10gPSB7Ci0gICAgIDEsMSwgMiwzLCAzLDQsIDQsMiwgNSw3LCA2 LDUsIDcsNiwgNyw4LAotICAgICAxLDAsIDIsMSwgMywzLCA0LDQsIDUsMiwgNiw3LCA3LDYsIDgs NSwgOCw4LAotICAgICAyLDEsIDIsMywgMywwLCAzLDIsIDMsNCwgNCw2LCA1LDUsIDYsNywgNiw4 LApkaWZmIC0tZ2l0IGEvc3JjcGtncy91ZnJhdy9wYXRjaGVzL2V4aXYtMC4yNy5wYXRjaCBiL3Ny Y3BrZ3MvdWZyYXcvcGF0Y2hlcy9leGl2LTAuMjcucGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAw NjQ0CmluZGV4IGI1YjQxNDBmZmY4ZWQuLjAwMDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtncy91ZnJh dy9wYXRjaGVzL2V4aXYtMC4yNy5wYXRjaAorKysgL2Rldi9udWxsCkBAIC0xLDI1ICswLDAgQEAK LS0tLSBhL3VmcmF3X2V4aXYyLmNjCTIwMTUtMDYtMTYgMDU6NTg6MzguMDAwMDAwMDAwICswMjAw Ci0rKysgYi91ZnJhd19leGl2Mi5jYwkyMDE4LTEyLTI5IDIyOjUxOjIzLjI5MTg5NDQzMCArMDEw MAotQEAgLTE1LDkgKzE1LDcgQEAKLSAjaW5jbHVkZSAidWZyYXcuaCIKLSAKLSAjaWZkZWYgSEFW RV9FWElWMgotLSNpbmNsdWRlIDxleGl2Mi9pbWFnZS5ocHA+Ci0tI2luY2x1ZGUgPGV4aXYyL2Vh c3lhY2Nlc3MuaHBwPgotLSNpbmNsdWRlIDxleGl2Mi9leGlmLmhwcD4KLSsjaW5jbHVkZSA8ZXhp djIvZXhpdjIuaHBwPgotICNpbmNsdWRlIDxzc3RyZWFtPgotICNpbmNsdWRlIDxjYXNzZXJ0Pgot IAotQEAgLTY3LDcgKzY1LDExIEBACi0gICAgICAgICBpZiAoZXhpZkRhdGEuZW1wdHkoKSkgewot ICAgICAgICAgICAgIHN0ZDo6c3RyaW5nIGVycm9yKHVmLT5maWxlbmFtZSk7Ci0gICAgICAgICAg ICAgZXJyb3IgKz0gIjogTm8gRXhpZiBkYXRhIGZvdW5kIGluIHRoZSBmaWxlIjsKLSsjaWYgRVhJ VjJfVEVTVF9WRVJTSU9OKDAsMjcsMCkKLSsgICAgICAgICAgICB0aHJvdyBFeGl2Mjo6RXJyb3Io RXhpdjI6OmtlckVycm9yTWVzc2FnZSwgZXJyb3IpOwotKyNlbHNlCi0gICAgICAgICAgICAgdGhy b3cgRXhpdjI6OkVycm9yKDEsIGVycm9yKTsKLSsjZW5kaWYKLSAgICAgICAgIH0KLSAKLSAgICAg ICAgIC8qIExpc3Qgb2YgdGFnIG5hbWVzIHRha2VuIGZyb20gZXhpdjIncyBwcmludFN1bW1hcnko KSBpbiBhY3Rpb25zLmNwcCAqLwpkaWZmIC0tZ2l0IGEvc3JjcGtncy91ZnJhdy9wYXRjaGVzL2ds aWItMi42OC5wYXRjaCBiL3NyY3BrZ3MvdWZyYXcvcGF0Y2hlcy9nbGliLTIuNjgucGF0Y2gKZGVs ZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDViNjE0NjhmMTE4YWEuLjAwMDAwMDAwMDAwMDAK LS0tIGEvc3JjcGtncy91ZnJhdy9wYXRjaGVzL2dsaWItMi42OC5wYXRjaAorKysgL2Rldi9udWxs CkBAIC0xLDMwICswLDAgQEAKLUZyb20gYzU2ZjhiZTNjYWYxY2YzZDlhNWM4MDU5N2JkYmFmMTMy NWZhYWNjMCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKLUZyb206ID0/VVRGLTg/cT9TPUMzPUE5 cmdpbz0yME09MkU9MjBCYXN0bz89IDxzZXJnaW9Ac2VyanV4LmNvbT4KLURhdGU6IFR1ZSwgMTMg QXByIDIwMjEgMjM6NDU6MzkgKzAxMDAKLVN1YmplY3Q6IFtQQVRDSF0gRml4IGJ1aWxkIGFnYWlu c3QgZ2xpYi0yLjY4IGZpeGVzICMxMAotCi0tLS0KLSB1Zl9nbGliLmggfCA2ICsrKy0tLQotIDEg ZmlsZSBjaGFuZ2VkLCAzIGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCi0KLWRpZmYgLS1n aXQgYS91Zl9nbGliLmggYi91Zl9nbGliLmgKLWluZGV4IDIxYzEwYjE5Li41NmNkNjk3MSAxMDA2 NDQKLS0tLSBhL3VmX2dsaWIuaAotKysrIGIvdWZfZ2xpYi5oCi1AQCAtMTMsMTMgKzEzLDEzIEBA Ci0gI2lmbmRlZiBfVUZfR0xJQl9ICi0gI2RlZmluZSBfVUZfR0xJQl9ICi0gCi0rI2luY2x1ZGUg PGdsaWIuaD4KLSsjaW5jbHVkZSA8Z2xpYi9nc3RkaW8uaD4KLSsKLSAjaWZkZWYgX19jcGx1c3Bs dXMKLSBleHRlcm4gIkMiIHsKLSAjZW5kaWYKLSAKLS0jaW5jbHVkZSA8Z2xpYi5oPgotLSNpbmNs dWRlIDxnbGliL2dzdGRpby5oPgotLQotIC8vIGdfd2luMzJfbG9jYWxlX2ZpbGVuYW1lX2Zyb21f dXRmOCBpcyBuZWVkZWQgb25seSBvbiB3aW4zMgotICNpZmRlZiBfV0lOMzIKLSAjZGVmaW5lIHVm X3dpbjMyX2xvY2FsZV9maWxlbmFtZV9mcm9tX3V0ZjgoX19zb21lX3N0cmluZ19fKSBcCmRpZmYg LS1naXQgYS9zcmNwa2dzL3VmcmF3L3BhdGNoZXMvaW9zdHJlYW0ucGF0Y2ggYi9zcmNwa2dzL3Vm cmF3L3BhdGNoZXMvaW9zdHJlYW0ucGF0Y2gKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4 IDZkMTU4NjlmNjNkYjguLjAwMDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtncy91ZnJhdy9wYXRjaGVz L2lvc3RyZWFtLnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEsMTMgKzAsMCBAQAotdWZyYXdfZXhp djIuY2M6MzQzOjEwOiBub3RlOiAnc3RkOjpjZXJyJyBpcyBkZWZpbmVkIGluIGhlYWRlciAnPGlv c3RyZWFtPicKLXVmcmF3X2V4aXYyLmNjOjM2NToxNDogZXJyb3I6ICdjZXJyJyBpcyBub3QgYSBt ZW1iZXIgb2YgJ3N0ZCcKLQotLS0tIGEvdWZyYXdfZXhpdjIuY2MKLSsrKyBiL3VmcmF3X2V4aXYy LmNjCi1AQCAtMTcsNiArMTcsNyBAQAotICNpZmRlZiBIQVZFX0VYSVYyCi0gI2luY2x1ZGUgPGV4 aXYyL2V4aXYyLmhwcD4KLSAjaW5jbHVkZSA8c3N0cmVhbT4KLSsjaW5jbHVkZSA8aW9zdHJlYW0+ Ci0gI2luY2x1ZGUgPGNhc3NlcnQ+Ci0gCi0gLyoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvdWZyYXcv dGVtcGxhdGUgYi9zcmNwa2dzL3VmcmF3L3RlbXBsYXRlCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0 NAppbmRleCBjZWRkY2FjYWNlZmIyLi4wMDAwMDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3MvdWZyYXcv dGVtcGxhdGUKKysrIC9kZXYvbnVsbApAQCAtMSwzOCArMCwwIEBACi0jIFRlbXBsYXRlIGZpbGUg Zm9yICd1ZnJhdycKLXBrZ25hbWU9dWZyYXcKLXZlcnNpb249MC4yMgotcmV2aXNpb249NQotYnVp bGRfc3R5bGU9Z251LWNvbmZpZ3VyZQotY29uZmlndXJlX2FyZ3M9Ii0tZW5hYmxlLWNvbnRyYXN0 IC0tZW5hYmxlLW1pbWUgLS1lbmFibGUtb3Blbm1wIC0td2l0aC1naW1wCi0gJCh2b3B0X2VuYWJs ZSBleHRyYXMpIgotaG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmlnIGRjcmF3IGdldHRleHQiCi1t YWtlZGVwZW5kcz0iZXhpdjItZGV2ZWwgZ2ltcC1kZXZlbCBnbGliLWRldmVsIGd0a2ltYWdldmll dy1kZXZlbCBsY21zMi1kZXZlbCBsZW5zZnVuLWRldmVsCi0gamFzcGVyLWRldmVsIgotZGVwZW5k cz0iZGVza3RvcC1maWxlLXV0aWxzIgotc2hvcnRfZGVzYz0iVXRpbGl0eSB0byByZWFkIGFuZCBt YW5pcHVsYXRlIHJhdyBpbWFnZXMgZnJvbSBkaWdpdGFsIGNhbWVyYXMiCi1tYWludGFpbmVyPSJK b2huIDxtZUBqb2hubnluYXRvci5kZXY+IgotbGljZW5zZT0iR1BMLTIuMC1vci1sYXRlciIKLWhv bWVwYWdlPSJodHRwOi8vdWZyYXcuc291cmNlZm9yZ2UubmV0LyIKLWRpc3RmaWxlcz0iJHtTT1VS Q0VGT1JHRV9TSVRFfS91ZnJhdy91ZnJhdy91ZnJhdy0ke3ZlcnNpb259L3VmcmF3LSR7dmVyc2lv bn0udGFyLmd6IgotY2hlY2tzdW09ZjdhYmQyOGNlNTg3ZGIyYTc0YjRjNTQxNDliZDhhMjUyM2E3 ZGRjMDliZWRmNGY5MjMyNDZmZjBhZTA5YTI1ZQotCi1idWlsZF9vcHRpb25zPSJleHRyYXMiCi0K LXBvc3RfcGF0Y2goKSB7Ci0JdnNlZCAtZSAncy9kZWZhdWx0KG5vbmUpLy9nJyBcCi0JCS1pIGRj cmF3X2luZGkuYyBcCi0JCS1pIGRjcmF3X2FwaS5jYyBcCi0JCS1pIHVmcmF3X3VmcmF3LmMgXAot CQktaSB1ZnJhd19kZXZlbG9wZXIuYwotCXZzZWQgLWkgLWUgJy9EQVRBRElSTkFNRT0vcy89Liov PXNoYXJlLycgY29uZmlndXJlCi0JdnNlZCAtaSAtZSAicyxebG9jYWxlZGlyID0uKixsb2NhbGVk aXIgPSAvdXNyL3NoYXJlL2xvY2FsZSwiIFwKLQkJcG8vTWFrZWZpbGUuaW4uaW4KLX0KLQotdWZy YXctZ2ltcF9wYWNrYWdlKCkgewotCWRlcGVuZHM9IiR7c291cmNlcGtnfT49JHt2ZXJzaW9ufV8k e3JldmlzaW9ufSIKLQlzaG9ydF9kZXNjKz0iIC0gZ2ltcCBwbHVnaW4iCi0JcGtnX2luc3RhbGwo KSB7Ci0JCXZtb3ZlIHVzci9saWIvZ2ltcAotCX0KLX0KCkZyb20gZDk3MjRiOWViZWM2MDMyZTJm MmRhZTFjYjY3NDM0NjYzYjhkY2FmZSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTW9o YW1tZWQgQW5hcyA8dHJpYWxsYXhAdHV0YW5vdGEuY29tPgpEYXRlOiBXZWQsIDggTm92IDIwMjMg MTI6NTM6NDUgKzAwMDAKU3ViamVjdDogW1BBVENIIDIxLzIyXSBrcml0YTogcmV2YnVtcCBmb3Ig ZXhpdjItMC4yOC4xLgoKLS0tCiBzcmNwa2dzL2tyaXRhL3RlbXBsYXRlIHwgMiArLQogMSBmaWxl IGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3Jj cGtncy9rcml0YS90ZW1wbGF0ZSBiL3NyY3BrZ3Mva3JpdGEvdGVtcGxhdGUKaW5kZXggZjRkNjY1 ZGFmN2MzMS4uZDgwNGI1ODFhODY4OSAxMDA2NDQKLS0tIGEvc3JjcGtncy9rcml0YS90ZW1wbGF0 ZQorKysgYi9zcmNwa2dzL2tyaXRhL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0 ZSBmaWxlIGZvciAna3JpdGEnCiBwa2duYW1lPWtyaXRhCiB2ZXJzaW9uPTUuMi4xCi1yZXZpc2lv bj0yCityZXZpc2lvbj0zCiBidWlsZF9zdHlsZT1jbWFrZQogY29uZmlndXJlX2FyZ3M9Ii1Xbm8t ZGV2IC1EQlVJTERfVEVTVElORz1PRkYiCiBob3N0bWFrZWRlcGVuZHM9ImV4dHJhLWNtYWtlLW1v ZHVsZXMgZ2V0dGV4dCBwa2ctY29uZmlnIHB5dGhvbjMKCkZyb20gYTNmOTI5OWYxYWVlOGQ3ZWYy NTFlN2VmN2ExZWYyODExZjk2YWM1MyBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTW9o YW1tZWQgQW5hcyA8dHJpYWxsYXhAdHV0YW5vdGEuY29tPgpEYXRlOiBXZWQsIDggTm92IDIwMjMg MTg6MjU6MDEgKzAwMDAKU3ViamVjdDogW1BBVENIIDIyLzIyXSBkYXJrdGFibGU6IHJldmJ1bXAg Zm9yIGV4aXYyLTAuMjguMS4KCi0tLQogc3JjcGtncy9kYXJrdGFibGUvdGVtcGxhdGUgfCAyICst CiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1n aXQgYS9zcmNwa2dzL2Rhcmt0YWJsZS90ZW1wbGF0ZSBiL3NyY3BrZ3MvZGFya3RhYmxlL3RlbXBs YXRlCmluZGV4IGY3NjkzNmExNjkyZTguLjk3ZGZhZTM0NzFlN2MgMTAwNjQ0Ci0tLSBhL3NyY3Br Z3MvZGFya3RhYmxlL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZGFya3RhYmxlL3RlbXBsYXRlCkBA IC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZGFya3RhYmxlJwogcGtnbmFtZT1k YXJrdGFibGUKIHZlcnNpb249NC40LjIKLXJldmlzaW9uPTQKK3JldmlzaW9uPTUKICMgdXBzdHJl YW0gb25seSBzdXBwb3J0cyB0aGVzZSBhcmNoczoKIGFyY2hzPSJ4ODZfNjQqIGFhcmNoNjQqIHBw YzY0bGUqIgogYnVpbGRfc3R5bGU9Y21ha2UK --===============4217895678376484960==--