From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-1.0 required=5.0 tests=ALL_TRUSTED autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 3574 invoked from network); 1 Nov 2023 18:11:50 -0000 Received: from localhost (HELO inbox.vuxu.org) (::1) by localhost with ESMTPUTF8; 1 Nov 2023 18:11:50 -0000 Content-Type: multipart/mixed; boundary="===============8164975111659637032==" MIME-Version: 1.0 Subject: =?utf8?q?Re=3A_=5BPR_PATCH=5D_=5BUpdated=5D_exiv2=3A_update_to_0=2E28=2E0=2E?= To: ml@inbox.vuxu.org From: mhmdanas Reply-to: ml@inbox.vuxu.org In-Reply-To: References: Date: Wed, 01 Nov 2023 19:11:50 +0100 List-Id: Message-ID: <20231101181150.E3VtTb7z0CaCOvYPDQLAp06RDA2npZcTtUt8TwB06qY@z> GitHub notification mails are now in MIME to allow UTF8. --===============8164975111659637032== Content-Type: text/plain; charset="utf8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 VGhlcmUgaXMgYW4gdXBkYXRlZCBwdWxsIHJlcXVlc3QgYnkgbWhtZGFuYXMgYWdhaW5zdCBtYXN0 ZXIgb24gdGhlIHZvaWQtcGFja2FnZXMgcmVwb3NpdG9yeQoKaHR0cHM6Ly9naXRodWIuY29tL21o bWRhbmFzL3ZvaWQtcGFja2FnZXMgZXhpdjItMC4yOC4wCmh0dHBzOi8vZ2l0aHViLmNvbS92b2lk LWxpbnV4L3ZvaWQtcGFja2FnZXMvcHVsbC80NjgzOAoKZXhpdjI6IHVwZGF0ZSB0byAwLjI4LjAu CjwhLS0gVW5jb21tZW50IHJlbGV2YW50IHNlY3Rpb25zIGFuZCBkZWxldGUgb3B0aW9ucyB3aGlj aCBhcmUgbm90IGFwcGxpY2FibGUgLS0+DQoNCiMjIyMgVGVzdGluZyB0aGUgY2hhbmdlcw0KLSBJ IHRlc3RlZCB0aGUgY2hhbmdlcyBpbiB0aGlzIFBSOiAqKmJyaWVmbHkqKg0KDQpUT0RPOg0KLSBb eF0gRml4IGBnd2Vudmlld2AncyBmYWlsZWQgY2hlY2tzIChub3QgcmVhbGx5IGZpeGVkIGJ1dCB0 aGUgZXhhY3Qgc2FtZSB0ZXN0cyBmYWlsIG9uIG1hc3RlciBhcyB3ZWxsKQ0KLSBbIF0gYHRlc3Rf ZXhpdjJgIGZhaWxzIGZvciBgbGliZXh0cmFjdG9yYA0KDQpASm9obm55bmF0b3IgdWZyYXcgaGFz IGJlZW4gW3VubWFpbnRhaW5lZCBzaW5jZSBEZWNlbWJlciAyMDE2XShodHRwczovL3NvdXJjZWZv cmdlLm5ldC9wL3VmcmF3L2Rpc2N1c3Npb24vNDM0MDYwL3RocmVhZC8zMGI0MjQ5Yi8pLCBhbmQg aXQgZG9lc24ndCBidWlsZCB3aXRoIHRoaXMgUFI7IGhlcmUgYXJlIHRoZSBvcHRpb25zOg0KLSBy ZW1vdmUgdGhlIHBhY2thZ2UgZW50aXJlbHkNCi0gcmVwbGFjZSBpdCB3aXRoIHRoZSBuZXdlciBb bnVmcmF3XShodHRwczovL3NvdXJjZWZvcmdlLm5ldC9wcm9qZWN0cy9udWZyYXcvKSwgd2hpY2gg YWxyZWFkeSBoYXMgW2FuIGV4aXYgMC4yOC54IHBhdGNoIGZsb2F0aW5nIGFyb3VuZF0oaHR0cHM6 Ly9hdXIuYXJjaGxpbnV4Lm9yZy9jZ2l0L2F1ci5naXQvdHJlZS9leGl2Mi1lcnJvci5wYXRjaD9o PW51ZnJhdykNCi0gcGF0Y2ggaXQgdG8gYnVpbGQgd2l0aCB0aGlzIFBSDQoNCldoYXQgZG8geW91 IHRoaW5rPw0KDQo8IS0tDQojIyMjIE5ldyBwYWNrYWdlDQotIFRoaXMgbmV3IHBhY2thZ2UgY29u Zm9ybXMgdG8gdGhlIFtwYWNrYWdlIHJlcXVpcmVtZW50c10oaHR0cHM6Ly9naXRodWIuY29tL3Zv aWQtbGludXgvdm9pZC1wYWNrYWdlcy9ibG9iL21hc3Rlci9DT05UUklCVVRJdGVzdF9leGl2Mk5H Lm1kI3BhY2thZ2UtcmVxdWlyZW1lbnRzKTogKipZRVMqKnwqKk5PKioNCi0tPg0KDQo8IS0tIE5v dGU6IElmIHRoZSBidWlsZCBpcyBsaWtlbHkgdG8gdGFrZSBtb3JlIHRoYW4gMiBob3VycywgcGxl YXNlIGFkZCBjaSBza2lwIHRhZyBhcyBkZXNjcmliZWQgaW4NCmh0dHBzOi8vZ2l0aHViLmNvbS92 b2lkLWxpbnV4L3ZvaWQtcGFja2FnZXMvYmxvYi9tYXN0ZXIvQ09OVFJJQlVUSU5HLm1kI2NvbnRp bnVvdXMtaW50ZWdyYXRpb24NCmFuZCB0ZXN0IGF0IGxlYXN0IG9uZSBuYXRpdmUgYnVpbGQgYW5k LCBpZiBzdXBwb3J0ZWQsIGF0IGxlYXN0IG9uZSBjcm9zcyBidWlsZC4NCklnbm9yZSB0aGlzIHNl Y3Rpb24gaWYgdGhpcyBQUiBpcyBub3Qgc2tpcHBpbmcgQ0kuDQotLT4NCjwhLS0NCiMjIyMgTG9j YWwgYnVpbGQgdGVzdGluZw0KLSBJIGJ1aWx0IHRoaXMgUFIgbG9jYWxseSBmb3IgbXkgbmF0aXZl IGFyY2hpdGVjdHVyZSwgKEFSQ0gtTElCQykNCi0gSSBidWlsdCB0aGlzIFBSIGxvY2FsbHkgZm9y IHRoZXNlIGFyY2hpdGVjdHVyZXMgKGlmIHN1cHBvcnRlZC4gbWFyayBjcm9zc2J1aWxkcyk6DQog IC0gYWFyY2g2NC1tdXNsDQogIC0gYXJtdjdsDQogIC0gYXJtdjZsLW11c2wNCi0tPg0KCgpBIHBh dGNoIGZpbGUgZnJvbSBodHRwczovL2dpdGh1Yi5jb20vdm9pZC1saW51eC92b2lkLXBhY2thZ2Vz L3B1bGwvNDY4MzgucGF0Y2ggaXMgYXR0YWNoZWQ= --===============8164975111659637032== 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" RnJvbSBjMjRkZWQ4NzJiYjgxZWRlNjUxMDJkOTJiODI4ZDk1NzUyNTJiNGY5IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBNb2hhbW1lZCBBbmFzIDx0cmlhbGxheEB0dXRhbm90YS5jb20+ CkRhdGU6IE1vbiwgMjMgT2N0IDIwMjMgMDE6MjA6MDkgKzAxMDAKU3ViamVjdDogW1BBVENIIDAx LzIyXSBpbmloOiBhZGQgYGxpYklOSVJlYWRlci5zby4wYCBjb21tb24vc2hsaWJzIGVudHJ5LgoK LS0tCiBjb21tb24vc2hsaWJzIHwgMSArCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKykK CmRpZmYgLS1naXQgYS9jb21tb24vc2hsaWJzIGIvY29tbW9uL3NobGlicwppbmRleCA5MDM2YTY3 NWMxYWU1Li44ZjAzYTM4YTE2Nzg5IDEwMDY0NAotLS0gYS9jb21tb24vc2hsaWJzCisrKyBiL2Nv bW1vbi9zaGxpYnMKQEAgLTM5MDUsNiArMzkwNSw3IEBAIGxpYm5vdGN1cnNlcysrLnNvLjMgbm90 Y3Vyc2VzLTMuMC41XzEKIGxpYm5vdGN1cnNlcy1mZmkuc28uMyBub3RjdXJzZXMtMy4wLjVfMQog bGliZXZlbXUuc28uMyBldmVtdS0yLjcuMF8xCiBsaWJpbmloLnNvLjAgaW5paC01Ml8xCitsaWJJ TklSZWFkZXIuc28uMCBpbmloLTU3XzEKIGxpYnBjYXVkaW8uc28uMCBwY2F1ZGlvbGliLTEuMV8x CiBsaWJkY2VycGMtc2Ftci5zby4wIHNhbWJhLTQuMTMuMl8xCiBsaWJkY2VycGMtc2VydmVyLWNv cmUuc28uMCBzYW1iYS00LjEzLjJfMQoKRnJvbSAzY2I5MGIyYTU3NDk3ZjVlNjVjYmZhNzU5YmFj Y2VlZTI2N2ZlYmY2IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBNb2hhbW1lZCBBbmFz IDx0cmlhbGxheEB0dXRhbm90YS5jb20+CkRhdGU6IFdlZCwgMTggT2N0IDIwMjMgMTk6MTg6MTIg KzAxMDAKU3ViamVjdDogW1BBVENIIDAyLzIyXSBleGl2MjogdXBkYXRlIHRvIDAuMjguMC4KCi0t LQogY29tbW9uL3NobGlicyAgICAgICAgICAgICAgICAgICAgICAgIHwgIDIgKy0KIHNyY3BrZ3Mv ZXhpdjIvcGF0Y2hlcy9maXgtdGVzdHMuZGlmZiB8IDMxICsrKysrKysrKysrKysrKysrKysrKysr KysrKysKIHNyY3BrZ3MvZXhpdjIvdGVtcGxhdGUgICAgICAgICAgICAgICB8IDE0ICsrKysrKysr LS0tLS0KIDMgZmlsZXMgY2hhbmdlZCwgNDEgaW5zZXJ0aW9ucygrKSwgNiBkZWxldGlvbnMoLSkK IGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL2V4aXYyL3BhdGNoZXMvZml4LXRlc3RzLmRpZmYK CmRpZmYgLS1naXQgYS9jb21tb24vc2hsaWJzIGIvY29tbW9uL3NobGlicwppbmRleCA4ZjAzYTM4 YTE2Nzg5Li4wYjFkMGM4OWQzZTUxIDEwMDY0NAotLS0gYS9jb21tb24vc2hsaWJzCisrKyBiL2Nv bW1vbi9zaGxpYnMKQEAgLTU1NSw3ICs1NTUsNyBAQCBsaWJnaW1wY29sb3ItMi4wLnNvLjAgbGli Z2ltcC0yLjEwLjBfMQogbGliZ2ltcG1vZHVsZS0yLjAuc28uMCBsaWJnaW1wLTIuMTAuMF8xCiBs aWJnbWljLnNvLjMgZ21pYy0zLjEuNl8xCiBsaWJjZ21pYy5zby4zIGdtaWMtMy4xLjZfMQotbGli ZXhpdjIuc28uMjcgZXhpdjItMC4yN18xCitsaWJleGl2Mi5zby4yOCBleGl2Mi0wLjI4LjBfMQog bGliS0Y1SG9saWRheXMuc28uNSBraG9saWRheXMtNS40Ny4wXzEKIGxpYlBoYWJyaWNhdG9ySGVs cGVycy5zby41IHB1cnBvc2UtNS40OC4wXzEKIGxpYktGNVB1cnBvc2VXaWRnZXRzLnNvLjUgcHVy cG9zZS01LjQ4LjBfMQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9leGl2Mi9wYXRjaGVzL2ZpeC10ZXN0 cy5kaWZmIGIvc3JjcGtncy9leGl2Mi9wYXRjaGVzL2ZpeC10ZXN0cy5kaWZmCm5ldyBmaWxlIG1v ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAuLjNlYjdhZGMxNjM1ZjMKLS0tIC9kZXYvbnVs bAorKysgYi9zcmNwa2dzL2V4aXYyL3BhdGNoZXMvZml4LXRlc3RzLmRpZmYKQEAgLTAsMCArMSwz MSBAQAorZGlmZiAtLWdpdCBhL3Rlc3RzL3RpZmZfdGVzdC90ZXN0X3RhZ19jb21wYXJlLnB5IGIv dGVzdHMvdGlmZl90ZXN0L3Rlc3RfdGFnX2NvbXBhcmUucHkKK2luZGV4IGE4NTM4YmQyLi45NzRk MWE5YSAxMDA2NDQKKy0tLSBhL3Rlc3RzL3RpZmZfdGVzdC90ZXN0X3RhZ19jb21wYXJlLnB5Cisr KysgYi90ZXN0cy90aWZmX3Rlc3QvdGVzdF90YWdfY29tcGFyZS5weQorQEAgLTI4LDggKzI4LDgg QEAgY2xhc3MgT3V0cHV0VGFnRXh0cmFjdChtZXRhY2xhc3M9c3lzdGVtX3Rlc3RzLkNhc2VNZXRh KToKKyAgICAgICAgICAgICB0bXAgPSBsaW5lLnNwbGl0KCkKKyAKKyAgICAgICAgICAgICBleGlm LCBpbWFnZSwgdGFnID0gdG1wWzBdLnNwbGl0KCcuJykKKy0gICAgICAgICAgICBzZWxmLmFzc2Vy dEVxdWFscyhleGlmLCAiRXhpZiIpCistICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbHMoaW1h Z2UsICJJbWFnZSIpCisrICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChleGlmLCAiRXhpZiIp CisrICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbChpbWFnZSwgIkltYWdlIikKKyAKKyAgICAg ICAgICAgICBkYXRhLmFwcGVuZCh7CisgICAgICAgICAgICAgICAgICJ0YWciOiB0YWcsCitAQCAt ODcsMTMgKzg3LDEzIEBAIGNsYXNzIE91dHB1dFRhZ0V4dHJhY3QobWV0YWNsYXNzPXN5c3RlbV90 ZXN0cy5DYXNlTWV0YSk6CisgICAgICAgICAiIiIKKyAgICAgICAgIGZvciBwYV9lbGVtLCBwU19l bGVtIGluIHppcChzZWxmLnBhX2RhdGEsIHNlbGYucFNfZGF0YSk6CisgICAgICAgICAgICAgZm9y IGtleSBpbiBbInRhZyIsICJ0eXBlIiwgImxlbiJdOgorLSAgICAgICAgICAgICAgICBzZWxmLmFz c2VydEVxdWFscyhwYV9lbGVtW2tleV0sIHBTX2VsZW1ba2V5XSkKKysgICAgICAgICAgICAgICAg c2VsZi5hc3NlcnRFcXVhbChwYV9lbGVtW2tleV0sIHBTX2VsZW1ba2V5XSkKKyAKKyAgICAgICAg ICAgICBpZiBwYV9lbGVtWyJ0YWciXSBpbiBbCisgICAgICAgICAgICAgICAgICAgICAiSW1hZ2VX aWR0aCIsICJJbWFnZUxlbmd0aCIsICJCaXRzUGVyU2FtcGxlIiwKKyAgICAgICAgICAgICAgICAg ICAgICJEb2N1bWVudE5hbWUiLCAiSW1hZ2VEZXNjcmlwdGlvbiIsICJTdHJpcE9mZnNldHMiLAor ICAgICAgICAgICAgICAgICAgICAgIlNhbXBsZXNQZXJQaXhlbCIsICJTdHJpcEJ5dGVDb3VudHMi XToKKy0gICAgICAgICAgICAgICAgc2VsZi5hc3NlcnRFcXVhbHMocGFfZWxlbVsidmFsIl0sIHBT X2VsZW1bInZhbCJdKQorKyAgICAgICAgICAgICAgICBzZWxmLmFzc2VydEVxdWFsKHBhX2VsZW1b InZhbCJdLCBwU19lbGVtWyJ2YWwiXSkKKyAKKyAgICAgZGVmIGNvbXBhcmVfc3Rkb3V0KHNlbGYs IGksIGNvbW1hbmQsIGdvdF9zdGRvdXQsIGV4cGVjdGVkX3N0ZG91dCk6CisgICAgICAgICBzdXBl cigpLmNvbXBhcmVfc3Rkb3V0KGksIGNvbW1hbmQsIGdvdF9zdGRvdXQsIGV4cGVjdGVkX3N0ZG91 dCkKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZXhpdjIvdGVtcGxhdGUgYi9zcmNwa2dzL2V4aXYyL3Rl bXBsYXRlCmluZGV4IDQ5OTg1ZmU4MmNjMTQuLjg3NmIyNTM1NDFkMDAgMTAwNjQ0Ci0tLSBhL3Ny Y3BrZ3MvZXhpdjIvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9leGl2Mi90ZW1wbGF0ZQpAQCAtMSwx NyArMSwxNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnZXhpdjInCiBwa2duYW1lPWV4aXYyCi12 ZXJzaW9uPTAuMjcuNgordmVyc2lvbj0wLjI4LjAKIHJldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPWNt YWtlCiBjb25maWd1cmVfYXJncz0iLURFWElWMl9CVUlMRF9TQU1QTEVTPU9GRiAtREVYSVYyX0VO QUJMRV9CTUZGPU9OIgotbWFrZWRlcGVuZHM9InpsaWItZGV2ZWwgZXhwYXQtZGV2ZWwiCi1jaGVj a2RlcGVuZHM9Imd0ZXN0LWRldmVsIgorbWFrZWRlcGVuZHM9InpsaWItZGV2ZWwgYnJvdGxpLWRl dmVsIGV4cGF0LWRldmVsIGluaWgtZGV2ZWwiCitjaGVja2RlcGVuZHM9Imd0ZXN0LWRldmVsIHB5 dGhvbjMiCiBzaG9ydF9kZXNjPSJJbWFnZSBtZXRhZGF0YSBtYW5pcHVsYXRpb24iCiBtYWludGFp bmVyPSJFbm5vIEJvbGFuZCA8Z290dG94QHZvaWRsaW51eC5vcmc+IgogbGljZW5zZT0iR1BMLTIu MC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL3d3dy5leGl2Mi5vcmciCiBkaXN0ZmlsZXM9 Imh0dHBzOi8vZ2l0aHViLmNvbS9FeGl2Mi9leGl2Mi9yZWxlYXNlcy9kb3dubG9hZC92JHt2ZXJz aW9ufS9leGl2Mi0ke3ZlcnNpb259LVNvdXJjZS50YXIuZ3oiCi1jaGVja3N1bT00YzE5MjQ4M2Ex MTI1ZGM1OWEzZDcwYjMwZDMwZDMyZWRhY2U5ZTE0YWRmNTI4MDJkMmY4NTNhYmY3MmRiOGE2Citj aGVja3N1bT04OWFmM2I1ZWY3Mjc3NzUzZWY3YTdiNTM3NGFlMDE3YzZiOWUzMDRkYjNiNjg4ZjE5 NDhlNzNlMTAzNDkxZjNkCiAKIGlmIFsgLW4gIiRYQlBTX0NIRUNLX1BLR1MiIF07IHRoZW4KIAlj b25maWd1cmVfYXJncys9IiAtREVYSVYyX0JVSUxEX1VOSVRfVEVTVFM9T04iCkBAIC0yMSw2ICsy MSwxMSBAQCBpZiBbIC1uICIkWEJQU19DQ0FDSEUiIF07IHRoZW4KIAljb25maWd1cmVfYXJncys9 IiAtREJVSUxEX1dJVEhfQ0NBQ0hFPU9OIgogZmkKIAorcHJlX2NoZWNrKCkgeworCSMgaHR0cHM6 Ly9naXRodWIuY29tL0V4aXYyL2V4aXYyL2lzc3Vlcy8yNzYyCisJcm0gLWYgdGVzdHMvYnVnZml4 ZXMvZ2l0aHViL3Rlc3RfaXNzdWVfMjQyNy5weQorfQorCiBleGl2Mi1kZXZlbF9wYWNrYWdlKCkg ewogCWRlcGVuZHM9IiR7bWFrZWRlcGVuZHN9ICR7c291cmNlcGtnfS0ke3ZlcnNpb259XyR7cmV2 aXNpb259IgogCXNob3J0X2Rlc2MrPSIgLSBkZXZlbG9wbWVudCBmaWxlcyIKQEAgLTI4LDcgKzMz LDYgQEAgZXhpdjItZGV2ZWxfcGFja2FnZSgpIHsKIAkJdm1vdmUgdXNyL2luY2x1ZGUKIAkJdm1v dmUgdXNyL2xpYi9jbWFrZQogCQl2bW92ZSB1c3IvbGliL3BrZ2NvbmZpZwotCQl2bW92ZSAidXNy L2xpYi8qLmEiCiAJCXZtb3ZlICJ1c3IvbGliLyouc28iCiAJfQogfQoKRnJvbSBjNzcwZGI3YjRj NzNlNGEwNTg1NDEyNGZlZDIyNjkwYWYwNTUzNTk1IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpG cm9tOiBNb2hhbW1lZCBBbmFzIDx0cmlhbGxheEB0dXRhbm90YS5jb20+CkRhdGU6IFdlZCwgMTgg T2N0IDIwMjMgMTk6MTg6MzcgKzAxMDAKU3ViamVjdDogW1BBVENIIDAzLzIyXSBBUlQ6IHJldmJ1 bXAgZm9yIGV4aXYyLTAuMjguMC4KCi0tLQogc3JjcGtncy9BUlQvdGVtcGxhdGUgfCAyICstCiAx IGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQg YS9zcmNwa2dzL0FSVC90ZW1wbGF0ZSBiL3NyY3BrZ3MvQVJUL3RlbXBsYXRlCmluZGV4IGI2YzQ3 ZmM2YzRjZGYuLjk0YzdhYTAzNzgwNjEgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvQVJUL3RlbXBsYXRl CisrKyBiL3NyY3BrZ3MvQVJUL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBm aWxlIGZvciAnQVJUJwogcGtnbmFtZT1BUlQKIHZlcnNpb249MS4yMC4yCi1yZXZpc2lvbj0xCity ZXZpc2lvbj0yCiBidWlsZF9zdHlsZT1jbWFrZQogaG9zdG1ha2VkZXBlbmRzPSJwa2ctY29uZmln IgogbWFrZWRlcGVuZHM9ImZmdHctZGV2ZWwgZ3RrbW0tZGV2ZWwgbGVuc2Z1bi1kZXZlbAoKRnJv bSAwZDM4MDRjNzI2NjQ2YWRmN2UzNzljYmU2OTJkMjZkMjQyZTZlNTgwIE1vbiBTZXAgMTcgMDA6 MDA6MDAgMjAwMQpGcm9tOiBNb2hhbW1lZCBBbmFzIDx0cmlhbGxheEB0dXRhbm90YS5jb20+CkRh dGU6IFdlZCwgMTggT2N0IDIwMjMgMTk6MTg6MzggKzAxMDAKU3ViamVjdDogW1BBVENIIDA0LzIy XSBkYXJrdGFibGU6IHJldmJ1bXAgZm9yIGV4aXYyLTAuMjguMC4KCi0tLQogc3JjcGtncy9kYXJr dGFibGUvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEg ZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2Rhcmt0YWJsZS90ZW1wbGF0ZSBiL3Ny Y3BrZ3MvZGFya3RhYmxlL3RlbXBsYXRlCmluZGV4IDYwNDE1YTM0ZGMwMTguLjNkMzU1NzEyMzlh OTMgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZGFya3RhYmxlL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3Mv ZGFya3RhYmxlL3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAn ZGFya3RhYmxlJwogcGtnbmFtZT1kYXJrdGFibGUKIHZlcnNpb249NC40LjIKLXJldmlzaW9uPTIK K3JldmlzaW9uPTMKICMgdXBzdHJlYW0gb25seSBzdXBwb3J0cyB0aGVzZSBhcmNoczoKIGFyY2hz PSJ4ODZfNjQqIGFhcmNoNjQqIHBwYzY0bGUqIgogYnVpbGRfc3R5bGU9Y21ha2UKCkZyb20gN2U4 ZDQ1YTJlMTgwY2QyMDM2YjFjODEwNTRlMjA2ODlkMDBiNWEwNiBNb24gU2VwIDE3IDAwOjAwOjAw IDIwMDEKRnJvbTogTW9oYW1tZWQgQW5hcyA8dHJpYWxsYXhAdHV0YW5vdGEuY29tPgpEYXRlOiBX ZWQsIDE4IE9jdCAyMDIzIDE5OjE4OjM4ICswMTAwClN1YmplY3Q6IFtQQVRDSCAwNS8yMl0gZGln aWthbTogcmV2YnVtcCBmb3IgZXhpdjItMC4yOC4wLgoKLS0tCiBzcmNwa2dzL2RpZ2lrYW0vdGVt cGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyksIDEgZGVsZXRpb24o LSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2RpZ2lrYW0vdGVtcGxhdGUgYi9zcmNwa2dzL2RpZ2lr YW0vdGVtcGxhdGUKaW5kZXggMjA2MTg1ZjU2NTQ4OC4uNDc4NGJmN2Q2MmE4ZSAxMDA2NDQKLS0t IGEvc3JjcGtncy9kaWdpa2FtL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvZGlnaWthbS90ZW1wbGF0 ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2RpZ2lrYW0nCiBwa2duYW1l PWRpZ2lrYW0KIHZlcnNpb249OC4xLjAKLXJldmlzaW9uPTEKK3JldmlzaW9uPTIKIGJ1aWxkX3N0 eWxlPWNtYWtlCiBjb25maWd1cmVfYXJncz0iLURCVUlMRF9URVNUSU5HPU9GRiIKIGhvc3RtYWtl ZGVwZW5kcz0iZXh0cmEtY21ha2UtbW9kdWxlcyBnZXR0ZXh0IHBrZy1jb25maWcgYmlzb24gZmxl eCBxdDUtcW1ha2UKCkZyb20gMjdhNWQ4ZjJhNjBhZTc2NmFkMWJlMjE4MDllZGI2NzJhYmIzMTli OCBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTW9oYW1tZWQgQW5hcyA8dHJpYWxsYXhA dHV0YW5vdGEuY29tPgpEYXRlOiBXZWQsIDE4IE9jdCAyMDIzIDE5OjE4OjM4ICswMTAwClN1Ympl Y3Q6IFtQQVRDSCAwNi8yMl0gZ2VlcWllOiByZXZidW1wIGZvciBleGl2Mi0wLjI4LjAuCgotLS0K IHNyY3BrZ3MvZ2VlcWllL3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0 aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9nZWVxaWUvdGVtcGxh dGUgYi9zcmNwa2dzL2dlZXFpZS90ZW1wbGF0ZQppbmRleCBiNWY5NThmODU0YzFiLi5iNDk0YmMx NDllOTU3IDEwMDY0NAotLS0gYS9zcmNwa2dzL2dlZXFpZS90ZW1wbGF0ZQorKysgYi9zcmNwa2dz L2dlZXFpZS90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2dl ZXFpZScKIHBrZ25hbWU9Z2VlcWllCiB2ZXJzaW9uPTIuMQotcmV2aXNpb249MQorcmV2aXNpb249 MgogYnVpbGRfc3R5bGU9bWVzb24KIGhvc3RtYWtlZGVwZW5kcz0icGtnLWNvbmZpZyBnZXR0ZXh0 IHh4ZCBnZGstcGl4YnVmLWRldmVsIGdsaWItZGV2ZWwiCiBtYWtlZGVwZW5kcz0iZ3RrKzMtZGV2 ZWwgZ2xpYi1kZXZlbCBsY21zMi1kZXZlbCBleGl2Mi1kZXZlbCBsaWJoZWlmLWRldmVsCgpGcm9t IDA5NmVmMGE4OTYyZGNhZTVmNmM0ZGU0ZDcwMjg1OGE4NjFhNTAxODkgTW9uIFNlcCAxNyAwMDow MDowMCAyMDAxCkZyb206IE1vaGFtbWVkIEFuYXMgPHRyaWFsbGF4QHR1dGFub3RhLmNvbT4KRGF0 ZTogV2VkLCAxOCBPY3QgMjAyMyAxOToxODozOCArMDEwMApTdWJqZWN0OiBbUEFUQ0ggMDcvMjJd IGd0aHVtYjogcmV2YnVtcCBmb3IgZXhpdjItMC4yOC4wLgoKLS0tCiBzcmNwa2dzL2d0aHVtYi90 ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlv bigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvZ3RodW1iL3RlbXBsYXRlIGIvc3JjcGtncy9ndGh1 bWIvdGVtcGxhdGUKaW5kZXggYzhlMTlmMGRlZGI2MS4uNzMyZDVlMWM2MDg5ZiAxMDA2NDQKLS0t IGEvc3JjcGtncy9ndGh1bWIvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9ndGh1bWIvdGVtcGxhdGUK QEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdndGh1bWInCiBwa2duYW1lPWd0 aHVtYgogdmVyc2lvbj0zLjEyLjMKLXJldmlzaW9uPTEKK3JldmlzaW9uPTIKIGJ1aWxkX3N0eWxl PW1lc29uCiBob3N0bWFrZWRlcGVuZHM9ImdldHRleHQgcGtnLWNvbmZpZyBpdHN0b29sIGdsaWIt ZGV2ZWwiCiBtYWtlZGVwZW5kcz0id2Via2l0Mmd0ay1kZXZlbCBqc29uLWdsaWItZGV2ZWwgbGli c2VjcmV0LWRldmVsIGxpYnJzdmctZGV2ZWwKCkZyb20gZmI5YzIxZDAxMDg4ZTBmN2FhNGNhNGZl OTlmYTU0OTdjMzRmNmU0NSBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTW9oYW1tZWQg QW5hcyA8dHJpYWxsYXhAdHV0YW5vdGEuY29tPgpEYXRlOiBXZWQsIDE4IE9jdCAyMDIzIDE5OjE4 OjM4ICswMTAwClN1YmplY3Q6IFtQQVRDSCAwOC8yMl0gZ3dlbnZpZXc6IHJldmJ1bXAgZm9yIGV4 aXYyLTAuMjguMC4KCi0tLQogc3JjcGtncy9nd2Vudmlldy90ZW1wbGF0ZSB8IDIgKy0KIDEgZmls ZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3Ny Y3BrZ3MvZ3dlbnZpZXcvdGVtcGxhdGUgYi9zcmNwa2dzL2d3ZW52aWV3L3RlbXBsYXRlCmluZGV4 IDczZDQ1MGE0NThjNGQuLmViODc2Y2ZhZGNmZTggMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvZ3dlbnZp ZXcvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9nd2Vudmlldy90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcg QEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2d3ZW52aWV3JwogcGtnbmFtZT1nd2VudmlldwogdmVy c2lvbj0yMy4wOC4yCi1yZXZpc2lvbj0xCityZXZpc2lvbj0yCiBidWlsZF9zdHlsZT1jbWFrZQog YnVpbGRfaGVscGVyPXFlbXUKIGhvc3RtYWtlZGVwZW5kcz0iZXh0cmEtY21ha2UtbW9kdWxlcyBw a2ctY29uZmlnIHF0NS1xbWFrZSBxdDUtaG9zdC10b29scwoKRnJvbSA4MDNhYTlmYzhjZDBlZGE0 ODFiNjM1YTk2MzNhYzBlZjUyMzY4YzlkIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBN b2hhbW1lZCBBbmFzIDx0cmlhbGxheEB0dXRhbm90YS5jb20+CkRhdGU6IFdlZCwgMTggT2N0IDIw MjMgMTk6MTg6MzggKzAxMDAKU3ViamVjdDogW1BBVENIIDA5LzIyXSBodWdpbjogcmV2YnVtcCBm b3IgZXhpdjItMC4yOC4wLgoKLS0tCiBzcmNwa2dzL2h1Z2luL3BhdGNoZXMvZXhpdjItMC4yOC5w YXRjaCB8IDc3ICsrKysrKysrKysrKysrKysrKysrKysrKysrCiBzcmNwa2dzL2h1Z2luL3RlbXBs YXRlICAgICAgICAgICAgICAgICB8ICAyICstCiAyIGZpbGVzIGNoYW5nZWQsIDc4IGluc2VydGlv bnMoKyksIDEgZGVsZXRpb24oLSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL2h1Z2luL3Bh dGNoZXMvZXhpdjItMC4yOC5wYXRjaAoKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvaHVnaW4vcGF0Y2hl cy9leGl2Mi0wLjI4LnBhdGNoIGIvc3JjcGtncy9odWdpbi9wYXRjaGVzL2V4aXYyLTAuMjgucGF0 Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMC4uNDlmMDUxODExNzAy MAotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvaHVnaW4vcGF0Y2hlcy9leGl2Mi0wLjI4LnBh dGNoCkBAIC0wLDAgKzEsNzcgQEAKK1BhdGNoLVNvdXJjZTogaHR0cHM6Ly9naXRsYWIuYXJjaGxp bnV4Lm9yZy9hcmNobGludXgvcGFja2FnaW5nL3BhY2thZ2VzL2h1Z2luLy0vYmxvYi9tYWluL2V4 aXYyLTAuMjgucGF0Y2gKK2RpZmYgLXIgNzljZDExYTdhNjZmIHNyYy9odWdpbl9iYXNlL3Bhbm9k YXRhL0V4aXYySGVscGVyLmNwcAorLS0tIGEvc3JjL2h1Z2luX2Jhc2UvcGFub2RhdGEvRXhpdjJI ZWxwZXIuY3BwCVdlZCBNYXkgMjQgMTk6MTM6MjAgMjAyMyArMDIwMAorKysrIGIvc3JjL2h1Z2lu X2Jhc2UvcGFub2RhdGEvRXhpdjJIZWxwZXIuY3BwCU1vbiBKdW4gMDUgMDA6MzE6MTkgMjAyMyAr MDIwMAorQEAgLTQwLDcgKzQwLDcgQEAKKyAgICAgICAgICAgICBFeGl2Mjo6RXhpZkRhdGE6Oml0 ZXJhdG9yIGl0ciA9IGV4aWZEYXRhLmZpbmRLZXkoRXhpdjI6OkV4aWZLZXkoa2V5TmFtZSkpOwor ICAgICAgICAgICAgIGlmIChpdHIgIT0gZXhpZkRhdGEuZW5kKCkgJiYgaXRyLT5jb3VudCgpKQor ICAgICAgICAgICAgIHsKKy0gICAgICAgICAgICAgICAgdmFsdWUgPSBpdHItPnRvTG9uZygpOwor KyAgICAgICAgICAgICAgICB2YWx1ZSA9IGl0ci0+dG9VaW50MzIoKTsKKyAgICAgICAgICAgICAg ICAgcmV0dXJuIHRydWU7CisgICAgICAgICAgICAgfQorICAgICAgICAgICAgIGVsc2UKK0BAIC0x NjUsNyArMTY1LDcgQEAKKyAgICAgICAgIHsKKyAgICAgICAgICAgICBpZihpdCE9ZXhpZkRhdGEu ZW5kKCkgJiYgaXQtPmNvdW50KCkpCisgICAgICAgICAgICAgeworLSAgICAgICAgICAgICAgICBy ZXR1cm4gaXQtPnRvTG9uZygpOworKyAgICAgICAgICAgICAgICByZXR1cm4gaXQtPnRvVWludDMy KCk7CisgICAgICAgICAgICAgfQorICAgICAgICAgICAgIHJldHVybiAwOworICAgICAgICAgfTsK K0BAIC02MDAsNCArNjAwLDQgQEAKKyAgICAgICAgIH07CisgCisgICAgIH07IC8vbmFtZXNwYWNl IEV4aXYySGVscGVyCistfTsgLy9uYW1lc3BhY2UgSHVnaW5CYXNlCitcIE5vIG5ld2xpbmUgYXQg ZW5kIG9mIGZpbGUKKyt9OyAvL25hbWVzcGFjZSBIdWdpbkJhc2UKK2RpZmYgLXIgNzljZDExYTdh NjZmIHNyYy9odWdpbl9iYXNlL3Bhbm9kYXRhL1NyY1Bhbm9JbWFnZS5jcHAKKy0tLSBhL3NyYy9o dWdpbl9iYXNlL3Bhbm9kYXRhL1NyY1Bhbm9JbWFnZS5jcHAJV2VkIE1heSAyNCAxOToxMzoyMCAy MDIzICswMjAwCisrKysgYi9zcmMvaHVnaW5fYmFzZS9wYW5vZGF0YS9TcmNQYW5vSW1hZ2UuY3Bw CU1vbiBKdW4gMDUgMDA6MzE6MTkgMjAyMyArMDIwMAorQEAgLTM4NCw3ICszODQsNyBAQAorICAg ICAgICAgICAgICAgICAgICAgcG9zID0geG1wRGF0YS5maW5kS2V5KEV4aXYyOjpYbXBLZXkoIlht cC5HUGFuby5Dcm9wcGVkQXJlYUltYWdlV2lkdGhQaXhlbHMiKSk7CisgICAgICAgICAgICAgICAg ICAgICBpZiAocG9zICE9IHhtcERhdGEuZW5kKCkpCisgICAgICAgICAgICAgICAgICAgICB7Cist ICAgICAgICAgICAgICAgICAgICAgICAgY3JvcHBlZFdpZHRoID0gcG9zLT50b0xvbmcoKTsKKysg ICAgICAgICAgICAgICAgICAgICAgICBjcm9wcGVkV2lkdGggPSBwb3MtPnRvVWludDMyKCk7Cisg ICAgICAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgICAgICBlbHNlCisgICAgICAg ICAgICAgICAgICAgICB7CitAQCAtMzk0LDcgKzM5NCw3IEBACisgICAgICAgICAgICAgICAgICAg ICBwb3MgPSB4bXBEYXRhLmZpbmRLZXkoRXhpdjI6OlhtcEtleSgiWG1wLkdQYW5vLkNyb3BwZWRB cmVhSW1hZ2VIZWlnaHRQaXhlbHMiKSk7CisgICAgICAgICAgICAgICAgICAgICBpZiAocG9zICE9 IHhtcERhdGEuZW5kKCkpCisgICAgICAgICAgICAgICAgICAgICB7CistICAgICAgICAgICAgICAg ICAgICAgICAgY3JvcHBlZEhlaWdodCA9IHBvcy0+dG9Mb25nKCk7CisrICAgICAgICAgICAgICAg ICAgICAgICAgY3JvcHBlZEhlaWdodCA9IHBvcy0+dG9VaW50MzIoKTsKKyAgICAgICAgICAgICAg ICAgICAgIH0KKyAgICAgICAgICAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICAgICAg IHsKK0BAIC00MDgsNyArNDA4LDcgQEAKKyAgICAgICAgICAgICAgICAgICAgICAgICBkb3VibGUg aGZvdiA9IDA7CisgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHBvcyAhPSB4bXBEYXRhLmVu ZCgpKQorICAgICAgICAgICAgICAgICAgICAgICAgIHsKKy0gICAgICAgICAgICAgICAgICAgICAg ICAgICAgaGZvdiA9IDM2MCAqIGNyb3BwZWRXaWR0aCAvIChkb3VibGUpcG9zLT50b0xvbmcoKTsK KysgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGZvdiA9IDM2MCAqIGNyb3BwZWRXaWR0aCAv IChkb3VibGUpcG9zLT50b1VpbnQzMigpOworICAgICAgICAgICAgICAgICAgICAgICAgIH0KKyAg ICAgICAgICAgICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgICAgICAgICAgewor QEAgLTQxOSw3ICs0MTksNyBAQAorICAgICAgICAgICAgICAgICAgICAgICAgIHBvcyA9IHhtcERh dGEuZmluZEtleShFeGl2Mjo6WG1wS2V5KCJYbXAuR1Bhbm8uRnVsbFBhbm9IZWlnaHRQaXhlbHMi KSk7CisgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHBvcyAhPSB4bXBEYXRhLmVuZCgpKQor ICAgICAgICAgICAgICAgICAgICAgICAgIHsKKy0gICAgICAgICAgICAgICAgICAgICAgICAgICAg ZnVsbEhlaWdodCA9IHBvcy0+dG9Mb25nKCk7CisrICAgICAgICAgICAgICAgICAgICAgICAgICAg IGZ1bGxIZWlnaHQgPSBwb3MtPnRvVWludDMyKCk7CisgICAgICAgICAgICAgICAgICAgICAgICAg fQorICAgICAgICAgICAgICAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICAgICAgICAg ICB7CitAQCAtNDMwLDcgKzQzMCw3IEBACisgICAgICAgICAgICAgICAgICAgICAgICAgcG9zID0g eG1wRGF0YS5maW5kS2V5KEV4aXYyOjpYbXBLZXkoIlhtcC5HUGFuby5Dcm9wcGVkQXJlYVRvcFBp eGVscyIpKTsKKyAgICAgICAgICAgICAgICAgICAgICAgICBpZiAocG9zICE9IHhtcERhdGEuZW5k KCkpCisgICAgICAgICAgICAgICAgICAgICAgICAgeworLSAgICAgICAgICAgICAgICAgICAgICAg ICAgICBjcm9wVG9wID0gcG9zLT50b0xvbmcoKTsKKysgICAgICAgICAgICAgICAgICAgICAgICAg ICAgY3JvcFRvcCA9IHBvcy0+dG9VaW50MzIoKTsKKyAgICAgICAgICAgICAgICAgICAgICAgICB9 CisgICAgICAgICAgICAgICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgICAgICAgICAg IHsKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvaHVnaW4vdGVtcGxhdGUgYi9zcmNwa2dzL2h1Z2luL3Rl bXBsYXRlCmluZGV4IGY5NmQyZjZlMjdkNDIuLmNlNzFmNmU0Y2JiMmQgMTAwNjQ0Ci0tLSBhL3Ny Y3BrZ3MvaHVnaW4vdGVtcGxhdGUKKysrIGIvc3JjcGtncy9odWdpbi90ZW1wbGF0ZQpAQCAtMSw3 ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2h1Z2luJwogcGtnbmFtZT1odWdpbgogdmVy c2lvbj0yMDIyLjAuMAotcmV2aXNpb249MTAKK3JldmlzaW9uPTExCiBidWlsZF9zdHlsZT1jbWFr ZQogYnVpbGRfaGVscGVyPWNtYWtlLXd4V2lkZ2V0cy1ndGszCiBweWNvbXBpbGVfZGlycz0idXNy L3NoYXJlL2h1Z2luL2RhdGEvcGx1Z2lucyB1c3Ivc2hhcmUvaHVnaW4vZGF0YS9wbHVnaW5zLXRl bXBsYXRlcyIKCkZyb20gZWNiNjY4ZDg4MmQ1ZTUxZjQ1YTI2NjY2NDczMjUxNzE3Y2EwYjZjMyBN b24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTW9oYW1tZWQgQW5hcyA8dHJpYWxsYXhAdHV0 YW5vdGEuY29tPgpEYXRlOiBXZWQsIDE4IE9jdCAyMDIzIDE5OjE4OjM4ICswMTAwClN1YmplY3Q6 IFtQQVRDSCAxMC8yMl0ga2ZpbGVtZXRhZGF0YTU6IHJldmJ1bXAgZm9yIGV4aXYyLTAuMjguMC4K Ci0tLQogc3JjcGtncy9rZmlsZW1ldGFkYXRhNS90ZW1wbGF0ZSB8IDIgKy0KIDEgZmlsZSBjaGFu Z2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBhL3NyY3BrZ3Mv a2ZpbGVtZXRhZGF0YTUvdGVtcGxhdGUgYi9zcmNwa2dzL2tmaWxlbWV0YWRhdGE1L3RlbXBsYXRl CmluZGV4IDAwZjdhOThjZjYzOTkuLmUyOTRhZTVhZjk0N2MgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3Mv a2ZpbGVtZXRhZGF0YTUvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9rZmlsZW1ldGFkYXRhNS90ZW1w bGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2tmaWxlbWV0YWRhdGE1 JwogcGtnbmFtZT1rZmlsZW1ldGFkYXRhNQogdmVyc2lvbj01LjExMS4wCi1yZXZpc2lvbj0xCity ZXZpc2lvbj0yCiBidWlsZF9zdHlsZT1jbWFrZQogaG9zdG1ha2VkZXBlbmRzPSJrY29yZWFkZG9u cyBleHRyYS1jbWFrZS1tb2R1bGVzIHBrZy1jb25maWcgcXQ1LWhvc3QtdG9vbHMgcXQ1LXFtYWtl CiAgZ2V0dGV4dCBrY29yZWFkZG9ucyBweXRob24zIgoKRnJvbSA3MTBjODM2MWFhMGUyZTVmNDBh MDc1NTMzZTVjNjhjNzI2NTczYjdmIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBNb2hh bW1lZCBBbmFzIDx0cmlhbGxheEB0dXRhbm90YS5jb20+CkRhdGU6IFdlZCwgMTggT2N0IDIwMjMg MTk6MTg6MzkgKzAxMDAKU3ViamVjdDogW1BBVENIIDExLzIyXSBrcmVuYW1lOiByZXZidW1wIGZv ciBleGl2Mi0wLjI4LjAuCgotLS0KIHNyY3BrZ3Mva3JlbmFtZS9wYXRjaGVzL2U3ZGQ3NjdhLnBh dGNoIHwgOTAgKysrKysrKysrKysrKysrKysrKysrKysrKysKIHNyY3BrZ3Mva3JlbmFtZS90ZW1w bGF0ZSAgICAgICAgICAgICAgIHwgIDIgKy0KIDIgZmlsZXMgY2hhbmdlZCwgOTEgaW5zZXJ0aW9u cygrKSwgMSBkZWxldGlvbigtKQogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3Mva3JlbmFtZS9w YXRjaGVzL2U3ZGQ3NjdhLnBhdGNoCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9rcmVuYW1lL3BhdGNo ZXMvZTdkZDc2N2EucGF0Y2ggYi9zcmNwa2dzL2tyZW5hbWUvcGF0Y2hlcy9lN2RkNzY3YS5wYXRj aApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwLi5hMGVmNDI4Y2U0NmIx Ci0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9rcmVuYW1lL3BhdGNoZXMvZTdkZDc2N2EucGF0 Y2gKQEAgLTAsMCArMSw5MCBAQAorUGF0Y2gtU291cmNlOiBodHRwczovL2ludmVudC5rZGUub3Jn L3V0aWxpdGllcy9rcmVuYW1lLy0vY29tbWl0L2U3ZGQ3NjdhCitGcm9tIGU3ZGQ3NjdhOWExMDY4 ZWUxZmUxNTAyYzRkNjE5YjU3ZDNiMTJhZGQgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCitGcm9t OiBBbmRyZWFzIFN0dXJtbGVjaG5lciA8YXN0dXJtQGdlbnRvby5vcmc+CitEYXRlOiBGcmksIDI2 IE1heSAyMDIzIDIzOjIzOjEwICswMjAwCitTdWJqZWN0OiBbUEFUQ0hdIEZpeCBidWlsZCB3aXRo ID49ZXhpdjItMC4yOCwgcmFpc2UgbWluaW11bSB0byAwLjI3CisKKy0gZW5hYmxlcyB1c2Ugb2Yg RVhJVjJfVEVTVF9WRVJTSU9OIG1hY3JvCistIGV4aXYyIGhlYWRlcnMgY2xlYW51cAorCitTaWdu ZWQtb2ZmLWJ5OiBBbmRyZWFzIFN0dXJtbGVjaG5lciA8YXN0dXJtQGdlbnRvby5vcmc+CistLS0K KyBDTWFrZUxpc3RzLnR4dCAgICAgICAgIHwgIDYgKy0tLS0tCisgY29uZmlnLWtyZW5hbWUuaC5j bWFrZSB8ICAzIC0tLQorIHNyYy9leGl2MnBsdWdpbi5jcHAgICAgfCAxNyArKysrKy0tLS0tLS0t LS0tLQorIDMgZmlsZXMgY2hhbmdlZCwgNiBpbnNlcnRpb25zKCspLCAyMCBkZWxldGlvbnMoLSkK KworZGlmZiAtLWdpdCBhL0NNYWtlTGlzdHMudHh0IGIvQ01ha2VMaXN0cy50eHQKK2luZGV4IDBi ZGE4YWMuLjcyZTcyOTcgMTAwNjQ0CistLS0gYS9DTWFrZUxpc3RzLnR4dAorKysrIGIvQ01ha2VM aXN0cy50eHQKK0BAIC01NiwxMyArNTYsOSBAQCBzZXRfcGFja2FnZV9wcm9wZXJ0aWVzKFRhZ2xp YiBQUk9QRVJUSUVTCisgICAgIFRZUEUgT1BUSU9OQUwpCisgCisgIyBGaW5kIGV4aXYyCistZmlu ZF9wYWNrYWdlKExpYkV4aXYyIDAuMTMpICMgQWNjZXNzTW9kZSB3YXMgYWRkZWQgaW4gMC4xMwor K2ZpbmRfcGFja2FnZShMaWJFeGl2MiAwLjI3KSAjIEVYSVYyX1RFU1RfVkVSU0lPTiB3YXMgYWRk ZWQgaW4gMC4yNworIHNldF9wYWNrYWdlX3Byb3BlcnRpZXMoTGliRXhpdjIgUFJPUEVSVElFUyBU WVBFIE9QVElPTkFMKQorIAorLWlmIChMaWJFeGl2Ml9WRVJTSU9OIFZFUlNJT05fR1JFQVRFUl9F UVVBTCAiMC4yNyIpCistICAgIHNldChIQVZFX0xJQkVYSVYyXzBfMjcgVFJVRSkKKy1lbmRpZigp CistCisgIyBGaW5kIHBvZG9mbworIGZpbmRfcGFja2FnZShQb0RvRm8pCisgc2V0X3BhY2thZ2Vf cHJvcGVydGllcyhQb0RvRm8gUFJPUEVSVElFUworZGlmZiAtLWdpdCBhL2NvbmZpZy1rcmVuYW1l LmguY21ha2UgYi9jb25maWcta3JlbmFtZS5oLmNtYWtlCitpbmRleCA3NmMzZDMwLi44NjJlNDBi IDEwMDY0NAorLS0tIGEvY29uZmlnLWtyZW5hbWUuaC5jbWFrZQorKysrIGIvY29uZmlnLWtyZW5h bWUuaC5jbWFrZQorQEAgLTYsOSArNiw2IEBACisgLyogaGF2ZSBFeGl2MiAqLworICNjbWFrZWRl ZmluZTAxIEhBVkVfRVhJVjIKKyAKKy0vKiBEZWZpbmVkIGlmIHdlIGhhdmUgbGliZXhpdjIgPj0g MC4yNyAqLworLSNjbWFrZWRlZmluZSBIQVZFX0xJQkVYSVYyXzBfMjcKKy0KKyAvKiBoYXZlIFBv RG9GbyAqLworICNjbWFrZWRlZmluZTAxIEhBVkVfUE9ET0ZPCisgCitkaWZmIC0tZ2l0IGEvc3Jj L2V4aXYycGx1Z2luLmNwcCBiL3NyYy9leGl2MnBsdWdpbi5jcHAKK2luZGV4IDU2OTRkOGMuLjI1 ZTg4NjkgMTAwNjQ0CistLS0gYS9zcmMvZXhpdjJwbHVnaW4uY3BwCisrKysgYi9zcmMvZXhpdjJw bHVnaW4uY3BwCitAQCAtMywyMCArMyw5IEBACisgCisgI2luY2x1ZGUgImV4aXYycGx1Z2luLmgi CisgCistI2luY2x1ZGUgIi4uL2NvbmZpZy1rcmVuYW1lLmgiCistCisgI2luY2x1ZGUgPEtMb2Nh bGl6ZWRTdHJpbmc+CisgCistI2luY2x1ZGUgPGV4aXYyL2Vycm9yLmhwcD4KKy0jaW5jbHVkZSA8 ZXhpdjIvZXhpZi5ocHA+CistI2luY2x1ZGUgPGV4aXYyL2ltYWdlLmhwcD4KKy0jaW5jbHVkZSA8 ZXhpdjIvaXB0Yy5ocHA+CistI2lmZGVmIEhBVkVfTElCRVhJVjJfMF8yNworLSAgICAjaW5jbHVk ZSA8ZXhpdjIveG1wX2V4aXYyLmhwcD4KKy0jZWxzZQorLSAgICAjaW5jbHVkZSA8ZXhpdjIveG1w LmhwcD4KKy0jZW5kaWYKKy0jaW5jbHVkZSA8ZXhpdjIvdGFncy5ocHA+CisrI2luY2x1ZGUgPGV4 aXYyL2V4aXYyLmhwcD4KKyAKKyAjaW5jbHVkZSAiYmF0Y2hyZW5hbWVyLmgiCisgI2luY2x1ZGUg InRva2VuaGVscGRpYWxvZy5oIgorQEAgLTM4MSw3ICszNzAsMTEgQEAgUVN0cmluZyBFeGl2MlBs dWdpbjo6cHJvY2Vzc0ZpbGUoQmF0Y2hSZW5hbWVyICpiLCBpbnQgaW5kZXgsIGNvbnN0IFFTdHJp bmcgJmZpbGUKKyAgICAgc3RkOjpzdHJpbmcgc3RyRmlsZW5hbWUoYXNjLmNvbnN0RGF0YSgpLCBh c2MubGVuZ3RoKCkpOworIAorICAgICB0cnkgeworKyNpZiBFWElWMl9URVNUX1ZFUlNJT04oMCwy OCwwKQorKyAgICAgICAgSW1hZ2U6OlVuaXF1ZVB0ciBpbWFnZSA9IEV4aXYyOjpJbWFnZUZhY3Rv cnk6Om9wZW4oc3RyRmlsZW5hbWUpOworKyNlbHNlCisgICAgICAgICBJbWFnZTo6QXV0b1B0ciBp bWFnZSA9IEV4aXYyOjpJbWFnZUZhY3Rvcnk6Om9wZW4oc3RyRmlsZW5hbWUpOworKyNlbmRpZgor ICAgICAgICAgaWYgKGltYWdlLmdldCgpICE9IG51bGxwdHIgJiYgaW1hZ2UtPmdvb2QoKSkgewor ICAgICAgICAgICAgIGltYWdlLT5yZWFkTWV0YWRhdGEoKTsKKyAKKy0tIAorR2l0TGFiCisKZGlm ZiAtLWdpdCBhL3NyY3BrZ3Mva3JlbmFtZS90ZW1wbGF0ZSBiL3NyY3BrZ3Mva3JlbmFtZS90ZW1w bGF0ZQppbmRleCA2NjAyMzE2M2UzMjkzLi5kZjU1MzUwMDc3MTRhIDEwMDY0NAotLS0gYS9zcmNw a2dzL2tyZW5hbWUvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9rcmVuYW1lL3RlbXBsYXRlCkBAIC0x LDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAna3JlbmFtZScKIHBrZ25hbWU9a3JlbmFt ZQogdmVyc2lvbj01LjAuMgotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRfc3R5bGU9Y21h a2UKIGhvc3RtYWtlZGVwZW5kcz0iZXh0cmEtY21ha2UtbW9kdWxlcyBnZXR0ZXh0IGtjb3JlYWRk b25zIHBrZy1jb25maWcgcXQ1LWhvc3QtdG9vbHMgcXQ1LXFtYWtlIgogbWFrZWRlcGVuZHM9ImV4 aXYyLWRldmVsIGZyZWV0eXBlLWRldmVsIGtqcy1kZXZlbCBrcGFydHMtZGV2ZWwgbGlicG9kb2Zv LWRldmVsCgpGcm9tIDg2ZTQ3YTczNjVkNTllZjJhZTQ3N2U0ZGM1OTFlMGE4OTU0Nzg2ZDIgTW9u IFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE1vaGFtbWVkIEFuYXMgPHRyaWFsbGF4QHR1dGFu b3RhLmNvbT4KRGF0ZTogV2VkLCAxOCBPY3QgMjAyMyAxOToxODozOSArMDEwMApTdWJqZWN0OiBb UEFUQ0ggMTIvMjJdIGtyaXRhOiByZXZidW1wIGZvciBleGl2Mi0wLjI4LjAuCgotLS0KIHNyY3Br Z3Mva3JpdGEvdGVtcGxhdGUgfCAyICstCiAxIGZpbGUgY2hhbmdlZCwgMSBpbnNlcnRpb24oKyks IDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2tyaXRhL3RlbXBsYXRlIGIvc3Jj cGtncy9rcml0YS90ZW1wbGF0ZQppbmRleCBhNGQzZGUwNGIwNDlmLi5iNDc5ZTBkYjc5OGVlIDEw MDY0NAotLS0gYS9zcmNwa2dzL2tyaXRhL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3Mva3JpdGEvdGVt cGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdrcml0YScKIHBrZ25h bWU9a3JpdGEKIHZlcnNpb249NS4yLjAKLXJldmlzaW9uPTEKK3JldmlzaW9uPTIKIGJ1aWxkX3N0 eWxlPWNtYWtlCiBjb25maWd1cmVfYXJncz0iLVduby1kZXYgLURCVUlMRF9URVNUSU5HPU9GRiIK IGhvc3RtYWtlZGVwZW5kcz0iZXh0cmEtY21ha2UtbW9kdWxlcyBnZXR0ZXh0IHBrZy1jb25maWcg cHl0aG9uMwoKRnJvbSAxOWY4Yzk4MDU4YzEwZTJmYzFhN2EyYWJhZWRjZjdhZTA0NjY4YzE0IE1v biBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBNb2hhbW1lZCBBbmFzIDx0cmlhbGxheEB0dXRh bm90YS5jb20+CkRhdGU6IFdlZCwgMTggT2N0IDIwMjMgMTk6MTg6MzkgKzAxMDAKU3ViamVjdDog W1BBVENIIDEzLzIyXSBsaWJleHRyYWN0b3I6IHJldmJ1bXAgZm9yIGV4aXYyLTAuMjguMC4KCi0t LQogc3JjcGtncy9saWJleHRyYWN0b3IvcGF0Y2hlcy9leGl2Mi0wLjI4LnBhdGNoIHwgMjg2ICsr KysrKysrKysrKysrKysrKwogc3JjcGtncy9saWJleHRyYWN0b3IvdGVtcGxhdGUgICAgICAgICAg ICAgICAgIHwgICAyICstCiAyIGZpbGVzIGNoYW5nZWQsIDI4NyBpbnNlcnRpb25zKCspLCAxIGRl bGV0aW9uKC0pCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy9saWJleHRyYWN0b3IvcGF0Y2hl cy9leGl2Mi0wLjI4LnBhdGNoCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9saWJleHRyYWN0b3IvcGF0 Y2hlcy9leGl2Mi0wLjI4LnBhdGNoIGIvc3JjcGtncy9saWJleHRyYWN0b3IvcGF0Y2hlcy9leGl2 Mi0wLjI4LnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAuLjI3 MGE2MjZkOGFiMDYKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL2xpYmV4dHJhY3Rvci9wYXRj aGVzL2V4aXYyLTAuMjgucGF0Y2gKQEAgLTAsMCArMSwyODYgQEAKK1BhdGNoLVNvdXJjZTogaHR0 cHM6Ly9naXRsYWIuYXJjaGxpbnV4Lm9yZy9hcmNobGludXgvcGFja2FnaW5nL3BhY2thZ2VzL2xp YmV4dHJhY3Rvci8tL2Jsb2IvbWFpbi9leGl2Mi0wLjI4LnBhdGNoCitkaWZmIC0tZ2l0IGEvc3Jj L3BsdWdpbnMvZXhpdjJfZXh0cmFjdG9yLmNjIGIvc3JjL3BsdWdpbnMvZXhpdjJfZXh0cmFjdG9y LmNjCitpbmRleCA3OGY5YmRhLi5kMzJlZDZhIDEwMDY0NAorLS0tIGEvc3JjL3BsdWdpbnMvZXhp djJfZXh0cmFjdG9yLmNjCisrKysgYi9zcmMvcGx1Z2lucy9leGl2Ml9leHRyYWN0b3IuY2MKK0BA IC05MCw3ICs5MCwxMSBAQCB2aXJ0dWFsIGludCBjbG9zZSAoKTsKKyAgKiBAcGFyYW0gcmNvdW50 IG51bWJlciBvZiBieXRlcyB0byByZWFkCisgICogQHJldHVybiBidWZmZXIgd2l0aCBkYXRhIHJl YWQsIGVtcHR5IGJ1ZmZlciAoISkgb24gZmFpbHVyZSAoISkKKyAgKi8KKysjaWYgRVhJVjJfVEVT VF9WRVJTSU9OICgwLDI4LDApCisrdmlydHVhbCBFeGl2Mjo6RGF0YUJ1ZiByZWFkIChzaXplX3Qg cmNvdW50KTsKKysjZWxzZQorIHZpcnR1YWwgRXhpdjI6OkRhdGFCdWYgcmVhZCAobG9uZyByY291 bnQpOworKyNlbmRpZgorIAorIC8qKgorICAqIFJlYWQgdXAgdG8gJ3Jjb3VudCcgYnl0ZXMgaW50 byAnYnVmJy4KK0BAIC05OSw4ICsxMDMsMTcgQEAgdmlydHVhbCBFeGl2Mjo6RGF0YUJ1ZiByZWFk IChsb25nIHJjb3VudCk7CisgICogQHBhcmFtIHJjb3VudCBzaXplIG9mICdidWYnCisgICogQHJl dHVybiBudW1iZXIgb2YgYnl0ZXMgcmVhZCBzdWNjZXNzZnVsbHksIDAgb24gZmFpbHVyZSAoISkK KyAgKi8KKysjaWYgRVhJVjJfVEVTVF9WRVJTSU9OICgwLDI4LDApCisrdmlydHVhbCBzaXplX3Qg cmVhZCAoRXhpdjI6OmJ5dGUgKmJ1ZiwKKysgICAgICAgICAgICAgICAgICAgc2l6ZV90IHJjb3Vu dCk7CisrI2Vsc2UKKyB2aXJ0dWFsIGxvbmcgcmVhZCAoRXhpdjI6OmJ5dGUgKmJ1ZiwKKyAgICAg ICAgICAgICAgICAgICAgbG9uZyByY291bnQpOworKyNlbmRpZgorKworKyNpZiBFWElWMl9URVNU X1ZFUlNJT04gKDAsMjgsMCkKKyt2aXJ0dWFsIHZvaWQgcG9wdWxhdGVGYWtlRGF0YSgpOworKyNl bmRpZgorIAorIC8qKgorICAqIFJlYWQgYSBzaW5nbGUgY2hhcmFjdGVyLgorQEAgLTExNyw4ICsx MzAsMTMgQEAgdmlydHVhbCBpbnQgZ2V0YiAoKTsKKyAgKiBAcGFyYW0gd2NvdW50IGhvdyBtYW55 IGJ5dGVzIHRvIHdyaXRlCisgICogQHJldHVybiAtMSAoYWx3YXlzIGZhaWxzKQorICAqLworKyNp ZiBFWElWMl9URVNUX1ZFUlNJT04oMCwyOCwwKQorK3ZpcnR1YWwgc2l6ZV90IHdyaXRlIChjb25z dCBFeGl2Mjo6Ynl0ZSAqZGF0YSwKKysgICAgICAgICAgICAgICAgICAgIHNpemVfdCB3Y291bnQp OworKyNlbHNlCisgdmlydHVhbCBsb25nIHdyaXRlIChjb25zdCBFeGl2Mjo6Ynl0ZSAqZGF0YSwK KyAgICAgICAgICAgICAgICAgICAgIGxvbmcgd2NvdW50KTsKKysjZW5kaWYKKyAKKyAvKioKKyAg KiBXcml0ZSB0byBzdHJlYW0uCitAQCAtMTI2LDcgKzE0NCwxMSBAQCB2aXJ0dWFsIGxvbmcgd3Jp dGUgKGNvbnN0IEV4aXYyOjpieXRlICpkYXRhLAorICAqIEBwYXJhbSBzcmMgc3RyZWFtIHRvIGNv cHkKKyAgKiBAcmV0dXJuIC0xIChhbHdheXMgZmFpbHMpCisgICovCisrI2lmIEVYSVYyX1RFU1Rf VkVSU0lPTigwLDI4LDApCisrdmlydHVhbCBzaXplX3Qgd3JpdGUgKEV4aXYyOjpCYXNpY0lvICZz cmMpOworKyNlbHNlCisgdmlydHVhbCBsb25nIHdyaXRlIChFeGl2Mjo6QmFzaWNJbyAmc3JjKTsK KysjZW5kaWYKKyAKKyAvKioKKyAgKiBXcml0ZSBhIHNpbmdsZSBieXRlLgorQEAgLTE3Miw3ICsx OTQsMTEgQEAgdmlydHVhbCBpbnQgbXVubWFwICgpOworICAqCisgICogQHJldHVybiAtMSBvbiBl cnJvcgorICAqLworKyNpZiBFWElWMl9URVNUX1ZFUlNJT04oMCwyOCwwKQorK3ZpcnR1YWwgc2l6 ZV90IHRlbGwgKHZvaWQpIGNvbnN0OworKyNlbHNlCisgdmlydHVhbCBsb25nIGludCB0ZWxsICh2 b2lkKSBjb25zdDsKKysjZW5kaWYKKyAKKyAvKioKKyAgKiBSZXR1cm4gb3ZlcmFsbCBzaXplIG9m IHRoZSBmaWxlLgorQEAgLTIxMyw3ICsyMzksMTEgQEAgdmlydHVhbCBib29sIGVvZiAoKSBjb25z dDsKKyAgKgorICAqIEB0aHJvd3MgZXJyb3IKKyAgKi8KKysjaWYgRVhJVjJfVEVTVF9WRVJTSU9O KDAsMjgsMCkKKyt2aXJ0dWFsIGNvbnN0IHN0ZDo6c3RyaW5nJiBwYXRoICgpIGNvbnN0IG5vZXhj ZXB0OworKyNlbHNlCisgdmlydHVhbCBzdGQ6OnN0cmluZyBwYXRoICgpIGNvbnN0OworKyNlbmRp ZgorIAorICNpZmRlZiBFWFZfVU5JQ09ERV9QQVRICisgLyoqCitAQCAtMjMwLDcgKzI2MCwxMSBA QCB2aXJ0dWFsIHN0ZDo6d3N0cmluZyB3cGF0aCAoKSBjb25zdDsKKyAgKgorICAqIEB0aHJvd3Mg ZXJyb3IKKyAgKi8KKysjaWYgRVhJVjJfVEVTVF9WRVJTSU9OKDAsMjgsMCkKKyt2aXJ0dWFsIEV4 aXYyOjpCYXNpY0lvOjpVbmlxdWVQdHIgdGVtcG9yYXJ5ICgpIGNvbnN0OworKyNlbHNlCisgdmly dHVhbCBFeGl2Mjo6QmFzaWNJbzo6QXV0b1B0ciB0ZW1wb3JhcnkgKCkgY29uc3Q7CisrI2VuZGlm CisgCisgfTsKKyAKK0BAIC0yNjYsNyArMzAwLDExIEBAIEV4dHJhY3RvcklPOjpjbG9zZSAoKQor ICAqIEByZXR1cm4gYnVmZmVyIHdpdGggZGF0YSByZWFkLCBlbXB0eSBidWZmZXIgKCEpIG9uIGZh aWx1cmUgKCEpCisgICovCisgRXhpdjI6OkRhdGFCdWYKKysjaWYgRVhJVjJfVEVTVF9WRVJTSU9O ICgwLDI4LDApCisrRXh0cmFjdG9ySU86OnJlYWQgKHNpemVfdCByY291bnQpCisrI2Vsc2UKKyBF eHRyYWN0b3JJTzo6cmVhZCAobG9uZyByY291bnQpCisrI2VuZGlmCisgeworICAgdm9pZCAqZGF0 YTsKKyAgIHNzaXplX3QgcmV0OworQEAgLTI4NCw5ICszMjIsMTUgQEAgRXh0cmFjdG9ySU86OnJl YWQgKGxvbmcgcmNvdW50KQorICAqIEBwYXJhbSByY291bnQgc2l6ZSBvZiAnYnVmJworICAqIEBy ZXR1cm4gbnVtYmVyIG9mIGJ5dGVzIHJlYWQgc3VjY2Vzc2Z1bGx5LCAwIG9uIGZhaWx1cmUgKCEp CisgICovCisrI2lmIEVYSVYyX1RFU1RfVkVSU0lPTiAoMCwyOCwwKQorK3NpemVfdAorK0V4dHJh Y3RvcklPOjpyZWFkIChFeGl2Mjo6Ynl0ZSAqYnVmLAorKyAgICAgICAgICAgICAgICAgICBzaXpl X3QgcmNvdW50KQorKyNlbHNlCisgbG9uZworIEV4dHJhY3RvcklPOjpyZWFkIChFeGl2Mjo6Ynl0 ZSAqYnVmLAorICAgICAgICAgICAgICAgICAgICBsb25nIHJjb3VudCkKKysjZW5kaWYKKyB7Cisg ICB2b2lkICpkYXRhOworICAgc3NpemVfdCByZXQ7CitAQCAtMzA1LDYgKzM0OSwxMiBAQCBFeHRy YWN0b3JJTzo6cmVhZCAoRXhpdjI6OmJ5dGUgKmJ1ZiwKKyAgIHJldHVybiBnb3Q7CisgfQorIAor KyNpZiBFWElWMl9URVNUX1ZFUlNJT04gKDAsMjgsMCkKKyt2b2lkIEV4dHJhY3RvcklPOjpwb3B1 bGF0ZUZha2VEYXRhKCkKKyt7CisrICByZXR1cm47CisrfQorKyNlbmRpZgorIAorIC8qKgorICAq IFJlYWQgYSBzaW5nbGUgY2hhcmFjdGVyLgorQEAgLTMxOSw3ICszNjksOSBAQCBFeHRyYWN0b3JJ Tzo6Z2V0YiAoKQorICAgY29uc3QgdW5zaWduZWQgY2hhciAqcjsKKyAKKyAgIGlmICgxICE9IGVj LT5yZWFkIChlYy0+Y2xzLCAmZGF0YSwgMSkpCistI2lmIEVYSVYyX1RFU1RfVkVSU0lPTiAoMCwy NywwKQorKyNpZiBFWElWMl9URVNUX1ZFUlNJT04oMCwyOCwwKQorKyAgICB0aHJvdyBFeGl2Mjo6 RXJyb3IgKEV4aXYyOjpFcnJvckNvZGU6OmtlckRlY29kZUxhbmdBbHRRdWFsaWZpZXJGYWlsZWQp OworKyNlbGlmIEVYSVYyX1RFU1RfVkVSU0lPTiAoMCwyNywwKQorICAgICB0aHJvdyBFeGl2Mjo6 QmFzaWNFcnJvcjxjaGFyPiAoRXhpdjI6OmtlckRlY29kZUxhbmdBbHRRdWFsaWZpZXJGYWlsZWQp OworICNlbHNlCisgICAgIHRocm93IEV4aXYyOjpCYXNpY0Vycm9yPGNoYXI+ICg0MiAvKiBlcnJv ciBjb2RlICovKTsKK0BAIC0zMzYsOSArMzg4LDE1IEBAIEV4dHJhY3RvcklPOjpnZXRiICgpCisg ICogQHBhcmFtIHdjb3VudCBob3cgbWFueSBieXRlcyB0byB3cml0ZQorICAqIEByZXR1cm4gLTEg KGFsd2F5cyBmYWlscykKKyAgKi8KKysjaWYgRVhJVjJfVEVTVF9WRVJTSU9OKDAsMjgsMCkKKytz aXplX3QKKytFeHRyYWN0b3JJTzo6d3JpdGUgKGNvbnN0IEV4aXYyOjpieXRlICpkYXRhLAorKyAg ICAgICAgICAgICAgICAgICAgc2l6ZV90IHdjb3VudCkKKysjZWxzZQorIGxvbmcKKyBFeHRyYWN0 b3JJTzo6d3JpdGUgKGNvbnN0IEV4aXYyOjpieXRlICpkYXRhLAorICAgICAgICAgICAgICAgICAg ICAgbG9uZyB3Y291bnQpCisrI2VuZGlmCisgeworICAgcmV0dXJuIC0xOworIH0KK0BAIC0zNTAs NyArNDA4LDExIEBAIEV4dHJhY3RvcklPOjp3cml0ZSAoY29uc3QgRXhpdjI6OmJ5dGUgKmRhdGEs CisgICogQHBhcmFtIHNyYyBzdHJlYW0gdG8gY29weQorICAqIEByZXR1cm4gLTEgKGFsd2F5cyBm YWlscykKKyAgKi8KKysjaWYgRVhJVjJfVEVTVF9WRVJTSU9OKDAsMjgsMCkKKytzaXplX3QKKysj ZWxzZQorIGxvbmcKKysjZW5kaWYKKyBFeHRyYWN0b3JJTzo6d3JpdGUgKEV4aXYyOjpCYXNpY0lv ICZzcmMpCisgeworICAgcmV0dXJuIC0xOworQEAgLTM3OCw3ICs0NDAsOSBAQCBFeHRyYWN0b3JJ Tzo6cHV0YiAoRXhpdjI6OmJ5dGUgZGF0YSkKKyB2b2lkCisgRXh0cmFjdG9ySU86OnRyYW5zZmVy IChFeGl2Mjo6QmFzaWNJbyYgc3JjKQorIHsKKy0jaWYgRVhJVjJfVEVTVF9WRVJTSU9OICgwLDI3 LDApCisrI2lmIEVYSVYyX1RFU1RfVkVSU0lPTigwLDI4LDApCisrICB0aHJvdyBFeGl2Mjo6RXJy b3IgKEV4aXYyOjpFcnJvckNvZGU6OmtlckRlY29kZUxhbmdBbHRRdWFsaWZpZXJGYWlsZWQpOwor KyNlbGlmIEVYSVYyX1RFU1RfVkVSU0lPTiAoMCwyNywwKQorICAgdGhyb3cgRXhpdjI6OkJhc2lj RXJyb3I8Y2hhcj4gKEV4aXYyOjprZXJEZWNvZGVMYW5nQWx0UXVhbGlmaWVyRmFpbGVkKTsKKyAj ZWxzZQorICAgdGhyb3cgRXhpdjI6OkJhc2ljRXJyb3I8Y2hhcj4gKDQyIC8qIGVycm9yIGNvZGUg Ki8pOworQEAgLTQyNyw3ICs0OTEsOSBAQCBFeHRyYWN0b3JJTzo6c2VlayAobG9uZyBvZmZzZXQs CisgRXhpdjI6OmJ5dGUgKgorIEV4dHJhY3RvcklPOjptbWFwIChib29sIGlzV3JpdGFibGUpCisg eworLSNpZiBFWElWMl9URVNUX1ZFUlNJT04gKDAsMjcsMCkKKysjaWYgRVhJVjJfVEVTVF9WRVJT SU9OICgwLDI4LDApCisrICB0aHJvdyBFeGl2Mjo6RXJyb3IgKEV4aXYyOjpFcnJvckNvZGU6Omtl ckRlY29kZUxhbmdBbHRRdWFsaWZpZXJGYWlsZWQpOworKyNlbGlmIEVYSVYyX1RFU1RfVkVSU0lP TiAoMCwyNywwKQorICAgdGhyb3cgRXhpdjI6OkJhc2ljRXJyb3I8Y2hhcj4gKEV4aXYyOjprZXJE ZWNvZGVMYW5nQWx0UXVhbGlmaWVyRmFpbGVkKTsKKyAjZWxzZQorICAgdGhyb3cgRXhpdjI6OkJh c2ljRXJyb3I8Y2hhcj4gKDQyIC8qIGVycm9yIGNvZGUgKi8pOworQEAgLTQ1Miw3ICs1MTgsMTEg QEAgRXh0cmFjdG9ySU86Om11bm1hcCAoKQorICAqCisgICogQHJldHVybiAtMSBvbiBlcnJvcgor ICAqLworKyNpZiBFWElWMl9URVNUX1ZFUlNJT04oMCwyOCwwKQorK3NpemVfdAorKyNlbHNlCisg bG9uZyBpbnQKKysjZW5kaWYKKyBFeHRyYWN0b3JJTzo6dGVsbCAodm9pZCkgY29uc3QKKyB7Cisg ICByZXR1cm4gKGxvbmcpIGVjLT5zZWVrIChlYy0+Y2xzLCAwLCBTRUVLX0NVUik7CitAQCAtNTE2 LDEwICs1ODYsMTcgQEAgRXh0cmFjdG9ySU86OmVvZiAoKSBjb25zdAorICAqCisgICogQHRocm93 cyBlcnJvcgorICAqLworKyNpZiBFWElWMl9URVNUX1ZFUlNJT04gKDAsMjgsMCkKKytjb25zdCBz dGQ6OnN0cmluZyYKKytFeHRyYWN0b3JJTzo6cGF0aCAoKSBjb25zdCBub2V4Y2VwdAorKyNlbHNl Cisgc3RkOjpzdHJpbmcKKyBFeHRyYWN0b3JJTzo6cGF0aCAoKSBjb25zdAorKyNlbmRpZgorIHsK Ky0jaWYgRVhJVjJfVEVTVF9WRVJTSU9OICgwLDI3LDApCisrI2lmIEVYSVYyX1RFU1RfVkVSU0lP TiAoMCwyOCwwKQorKyAgdGhyb3cgRXhpdjI6OkVycm9yIChFeGl2Mjo6RXJyb3JDb2RlOjprZXJE ZWNvZGVMYW5nQWx0UXVhbGlmaWVyRmFpbGVkKTsKKysjZWxpZiBFWElWMl9URVNUX1ZFUlNJT04g KDAsMjcsMCkKKyAgIHRocm93IEV4aXYyOjpCYXNpY0Vycm9yPGNoYXI+IChFeGl2Mjo6a2VyRGVj b2RlTGFuZ0FsdFF1YWxpZmllckZhaWxlZCk7CisgI2Vsc2UKKyAgIHRocm93IEV4aXYyOjpCYXNp Y0Vycm9yPGNoYXI+ICg0MiAvKiBlcnJvciBjb2RlICovKTsKK0BAIC01MzYsNyArNjEzLDkgQEAg RXh0cmFjdG9ySU86OnBhdGggKCkgY29uc3QKKyBzdGQ6OndzdHJpbmcKKyBFeHRyYWN0b3JJTzo6 d3BhdGggKCkgY29uc3QKKyB7CistI2lmIEVYSVYyX1RFU1RfVkVSU0lPTiAoMCwyNywwKQorKyNp ZiBFWElWMl9URVNUX1ZFUlNJT04gKDAsMjgsMCkKKysgIHRocm93IEV4aXYyOjpFcnJvciAoRXhp djI6OkVycm9yQ29kZTo6a2VyRGVjb2RlTGFuZ0FsdFF1YWxpZmllckZhaWxlZCk7CisrI2VsaWYg RVhJVjJfVEVTVF9WRVJTSU9OICgwLDI3LDApCisgICB0aHJvdyBFeGl2Mjo6QmFzaWNFcnJvcjxj aGFyPiAoRXhpdjI6OmtlckRlY29kZUxhbmdBbHRRdWFsaWZpZXJGYWlsZWQpOworICNlbHNlCisg ICB0aHJvdyBFeGl2Mjo6QmFzaWNFcnJvcjxjaGFyPiAoNDIgLyogZXJyb3IgY29kZSAqLyk7CitA QCAtNTUyLDExICs2MzEsMTcgQEAgRXh0cmFjdG9ySU86OndwYXRoICgpIGNvbnN0CisgICoKKyAg KiBAdGhyb3dzIGVycm9yCisgICovCisrI2lmIEVYSVYyX1RFU1RfVkVSU0lPTigwLDI4LDApCisr RXhpdjI6OkJhc2ljSW86OlVuaXF1ZVB0cgorKyNlbHNlCisgRXhpdjI6OkJhc2ljSW86OkF1dG9Q dHIKKysjZW5kaWYKKyBFeHRyYWN0b3JJTzo6dGVtcG9yYXJ5ICgpIGNvbnN0CisgeworICAgZnBy aW50ZiAoc3RkZXJyLCAidGhyb3dpbmcgdGVtcG9yYXJ5IGVycm9yXG4iKTsKKy0jaWYgRVhJVjJf VEVTVF9WRVJTSU9OICgwLDI3LDApCisrI2lmIEVYSVYyX1RFU1RfVkVSU0lPTigwLDI4LDApCisr ICB0aHJvdyBFeGl2Mjo6RXJyb3IgKEV4aXYyOjpFcnJvckNvZGU6OmtlckRlY29kZUxhbmdBbHRR dWFsaWZpZXJGYWlsZWQpOworKyNlbGlmIEVYSVYyX1RFU1RfVkVSU0lPTiAoMCwyNywwKQorICAg dGhyb3cgRXhpdjI6OkJhc2ljRXJyb3I8Y2hhcj4gKEV4aXYyOjprZXJEZWNvZGVMYW5nQWx0UXVh bGlmaWVyRmFpbGVkKTsKKyAjZWxzZQorICAgdGhyb3cgRXhpdjI6OkJhc2ljRXJyb3I8Y2hhcj4g KDQyIC8qIGVycm9yIGNvZGUgKi8pOworQEAgLTczNyw4ICs4MjIsMTMgQEAgRVhUUkFDVE9SX2V4 aXYyX2V4dHJhY3RfbWV0aG9kIChzdHJ1Y3QgRVhUUkFDVE9SX0V4dHJhY3RDb250ZXh0ICplYykK KyAjaWYgISBFWElWMl9URVNUX1ZFUlNJT04gKDAsMjQsMCkKKyAgICAgRXhpdjI6OkxvZ01zZzo6 c2V0TGV2ZWwgKEV4aXYyOjpMb2dNc2c6Om11dGUpOworICNlbmRpZgorKyNpZiBFWElWMl9URVNU X1ZFUlNJT04oMCwyOCwwKQorKyAgICBzdGQ6OnVuaXF1ZV9wdHI8RXhpdjI6OkJhc2ljSW8+IGVp byAobmV3IEV4dHJhY3RvcklPIChlYykpOworKyAgICBFeGl2Mjo6SW1hZ2U6OlVuaXF1ZVB0ciBp bWFnZSA9IEV4aXYyOjpJbWFnZUZhY3Rvcnk6Om9wZW4gKHN0ZDo6bW92ZShlaW8pKTsKKysjZWxz ZQorICAgICBzdGQ6OmF1dG9fcHRyPEV4aXYyOjpCYXNpY0lvPiBlaW8gKG5ldyBFeHRyYWN0b3JJ TyAoZWMpKTsKKyAgICAgRXhpdjI6OkltYWdlOjpBdXRvUHRyIGltYWdlID0gRXhpdjI6OkltYWdl RmFjdG9yeTo6b3BlbiAoZWlvKTsKKysjZW5kaWYKKyAgICAgaWYgKDAgPT0gaW1hZ2UuZ2V0ICgp KQorICAgICAgIHJldHVybjsKKyAgICAgaW1hZ2UtPnJlYWRNZXRhZGF0YSAoKTsKK0BAIC04MjIs NyArOTEyLDExIEBAIEVYVFJBQ1RPUl9leGl2Ml9leHRyYWN0X21ldGhvZCAoc3RydWN0IEVYVFJB Q1RPUl9FeHRyYWN0Q29udGV4dCAqZWMpCisgICAgICAgQUREWE1QICgiWG1wLmxyLmhpZXJhcmNo aWNhbFN1YmplY3QiLCBFWFRSQUNUT1JfTUVUQVRZUEVfU1VCSkVDVCk7CisgICAgIH0KKyAgIH0K KysjaWYgRVhJVjJfVEVTVF9WRVJTSU9OICgwLDI4LDApCisrICBjYXRjaCAoY29uc3QgRXhpdjI6 OkVycm9yJiBlKQorKyNlbHNlCisgICBjYXRjaCAoY29uc3QgRXhpdjI6OkFueUVycm9yJiBlKQor KyNlbmRpZgorICAgeworICNpZiBERUJVRworICAgICBzdGQ6OmNlcnIgPDwgIkNhdWdodCBFeGl2 MiBleGNlcHRpb24gJyIgPDwgZSA8PCAiJ1xuIjsKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbGliZXh0 cmFjdG9yL3RlbXBsYXRlIGIvc3JjcGtncy9saWJleHRyYWN0b3IvdGVtcGxhdGUKaW5kZXggZGRk NDc5MGY5M2U4OC4uYmZjZWE5NzlhMzA4YyAxMDA2NDQKLS0tIGEvc3JjcGtncy9saWJleHRyYWN0 b3IvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9saWJleHRyYWN0b3IvdGVtcGxhdGUKQEAgLTEsNyAr MSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdsaWJleHRyYWN0b3InCiBwa2duYW1lPWxpYmV4 dHJhY3RvcgogdmVyc2lvbj0xLjExCi1yZXZpc2lvbj0yCityZXZpc2lvbj0zCiBidWlsZF9zdHls ZT1nbnUtY29uZmlndXJlCiBjb25maWd1cmVfYXJncz0iLS1kaXNhYmxlLXN0YXRpYyIKIGhvc3Rt YWtlZGVwZW5kcz0icGtnLWNvbmZpZyIKCkZyb20gZmZmZjkxNzJiMTY4YTlhNWNiZWYxYjhiYmM2 NjE5YzA5MWVkNmM4NiBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogTW9oYW1tZWQgQW5h cyA8dHJpYWxsYXhAdHV0YW5vdGEuY29tPgpEYXRlOiBXZWQsIDE4IE9jdCAyMDIzIDE5OjE4OjM5 ICswMTAwClN1YmplY3Q6IFtQQVRDSCAxNC8yMl0gbGliZ2V4aXYyOiB1cGRhdGUgdG8gMC4xNC4y LgoKLS0tCiBzcmNwa2dzL2xpYmdleGl2Mi90ZW1wbGF0ZSB8IDE0ICsrKysrKystLS0tLS0tCiAx IGZpbGUgY2hhbmdlZCwgNyBpbnNlcnRpb25zKCspLCA3IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdp dCBhL3NyY3BrZ3MvbGliZ2V4aXYyL3RlbXBsYXRlIGIvc3JjcGtncy9saWJnZXhpdjIvdGVtcGxh dGUKaW5kZXggMjM3ODBlNTM5N2RjNC4uOTFkYmNhYTlhY2E1MiAxMDA2NDQKLS0tIGEvc3JjcGtn cy9saWJnZXhpdjIvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9saWJnZXhpdjIvdGVtcGxhdGUKQEAg LTEsMTkgKzEsMTkgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2xpYmdleGl2MicKIHBrZ25hbWU9 bGliZ2V4aXYyCi12ZXJzaW9uPTAuMTQuMAotcmV2aXNpb249MwordmVyc2lvbj0wLjE0LjIKK3Jl dmlzaW9uPTEKIGJ1aWxkX3N0eWxlPW1lc29uCiBidWlsZF9oZWxwZXI9ImdpciIKLWNvbmZpZ3Vy ZV9hcmdzPSItRGludHJvc3BlY3Rpb249JCh2b3B0X2lmIGdpciB0cnVlIGZhbHNlKQotIC1EdmFw aT0kKHZvcHRfaWYgdmFsYSB0cnVlIGZhbHNlKSIKK2NvbmZpZ3VyZV9hcmdzPSIkKHZvcHRfYm9v bCBnaXIgaW50cm9zcGVjdGlvbikgJCh2b3B0X2Jvb2wgdmFsYSB2YXBpKSIKIGhvc3RtYWtlZGVw ZW5kcz0icGtnLWNvbmZpZyBnbGliLWRldmVsICQodm9wdF9pZiB2YWxhICd2YWxhJykgcHl0aG9u My1nb2JqZWN0IgogbWFrZWRlcGVuZHM9ImxpYmdsaWItZGV2ZWwgZXhpdjItZGV2ZWwiCiBzaG9y dF9kZXNjPSJHT2JqZWN0LWJhc2VkIHdyYXBwZXIgYXJvdW5kIHRoZSBFeGl2MiBsaWJyYXJ5Igog bWFpbnRhaW5lcj0iRW5ubyBCb2xhbmQgPGdvdHRveEB2b2lkbGludXgub3JnPiIKIGxpY2Vuc2U9 IkdQTC0yLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0cHM6Ly93aWtpLmdub21lLm9yZy9Qcm9q ZWN0cy9nZXhpdjIiCi1kaXN0ZmlsZXM9IiR7R05PTUVfU0lURX0vZ2V4aXYyLyR7dmVyc2lvbiUu Kn0vJHtwa2duYW1lL2xpYi99LSR7dmVyc2lvbn0udGFyLnh6IgotY2hlY2tzdW09ZTU4Mjc5YTZm ZjIwYjZmNjRmYTQ5OTYxNWRhNWU5YjU3Y2Y2NWJhNzg1MGI3MmZhZmRmMTcyMjFhOWQ2ZDY5ZQor Y2hhbmdlbG9nPSJodHRwczovL2dpdGxhYi5nbm9tZS5vcmcvR05PTUUvZ2V4aXYyLy0vcmF3L21h c3Rlci9ORVdTIgorZGlzdGZpbGVzPSIke0dOT01FX1NJVEV9L2dleGl2Mi8ke3ZlcnNpb24lLip9 L2dleGl2Mi0ke3ZlcnNpb259LnRhci54eiIKK2NoZWNrc3VtPTJhMGM5Y2Y0OGZiZThiMzQzNTAw ODg2NmZmZDQwYjhlZGRiMDY2N2QyMjEyYjQyMzk2ZmRmNjg4ZTkzY2UwYmUKIAogYnVpbGRfb3B0 aW9ucz0iZ2lyIHZhbGEiCiBidWlsZF9vcHRpb25zX2RlZmF1bHQ9ImdpciB2YWxhIgpAQCAtMjMs NyArMjMsNyBAQCBsaWJnZXhpdjItZGV2ZWxfcGFja2FnZSgpIHsKIAlzaG9ydF9kZXNjKz0iIC0g ZGV2ZWxvcG1lbnQgZmlsZXMiCiAJcGtnX2luc3RhbGwoKSB7CiAJCXZtb3ZlIHVzci9pbmNsdWRl Ci0JCXZtb3ZlIHVzci9saWIvKi5zbworCQl2bW92ZSAidXNyL2xpYi8qLnNvIgogCQl2bW92ZSB1 c3IvbGliL3BrZ2NvbmZpZwogCQlpZiBbICIkYnVpbGRfb3B0aW9uX3ZhbGEiIF07IHRoZW4KIAkJ CXZtb3ZlIHVzci9zaGFyZS92YWxhCgpGcm9tIGZkMGU5MDU2NTZlNWJiOTBiNWQ1OGJjNGM1MTgw ZDQyNGI1NWVlMmUgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE1vaGFtbWVkIEFuYXMg PHRyaWFsbGF4QHR1dGFub3RhLmNvbT4KRGF0ZTogV2VkLCAxOCBPY3QgMjAyMyAxOToxODozOSAr MDEwMApTdWJqZWN0OiBbUEFUQ0ggMTUvMjJdIGxpYmtleGl2MjU6IHVwZGF0ZSB0byAyMy4wOC4y LgoKLS0tCiBzcmNwa2dzL2xpYmtleGl2MjUvdGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFu Z2VkLCAyIGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtn cy9saWJrZXhpdjI1L3RlbXBsYXRlIGIvc3JjcGtncy9saWJrZXhpdjI1L3RlbXBsYXRlCmluZGV4 IGI0MzlhNDJlZjJiOTcuLjRkN2Y5NjAwNTcyZWEgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvbGlia2V4 aXYyNS90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2xpYmtleGl2MjUvdGVtcGxhdGUKQEAgLTEsNiAr MSw2IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdsaWJrZXhpdjI1JwogcGtnbmFtZT1saWJrZXhp djI1Ci12ZXJzaW9uPTIzLjA0LjAKK3ZlcnNpb249MjMuMDguMgogcmV2aXNpb249MQogYnVpbGRf c3R5bGU9Y21ha2UKIGNvbmZpZ3VyZV9hcmdzPSItREJVSUxEX1RFU1RJTkc9T0ZGIgpAQCAtMTEs NyArMTEsNyBAQCBtYWludGFpbmVyPSJPcnBoYW5lZCA8b3JwaGFuQHZvaWRsaW51eC5vcmc+Igog bGljZW5zZT0iR1BMLTIuMC1vci1sYXRlciIKIGhvbWVwYWdlPSJodHRwczovL2ludmVudC5rZGUu b3JnL2dyYXBoaWNzL2xpYmtleGl2MiIKIGRpc3RmaWxlcz0iJHtLREVfU0lURX0vcmVsZWFzZS1z ZXJ2aWNlLyR7dmVyc2lvbn0vc3JjL2xpYmtleGl2Mi0ke3ZlcnNpb259LnRhci54eiIKLWNoZWNr c3VtPTE4ZDNlZWQwNmRmOWQxZTMxZDg0MzRlZDk4ODdlMzA1YWJhMTc2ZDA4NTZlMTlhOGNkM2Jk YjU1NWI4MGQzOTEKK2NoZWNrc3VtPWQwNmUzNmE0MDhiZjJlODQ2YTE4MDU2YTFmMTVlNjFkOTgx ZmEyYTFmY2ViODFmN2MxNTEzNjYwNDMxOWQwMzMKIAogbGlia2V4aXYyNS1kZXZlbF9wYWNrYWdl KCkgewogCXNob3J0X2Rlc2MrPSIgLSBkZXZlbG9wbWVudCBmaWxlcyIKCkZyb20gNWI1MjFlZWQx MTk1ZTI2YWMxZjI4MjVhNDIxYzllZDBhYzE0OTNiMyBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEK RnJvbTogTW9oYW1tZWQgQW5hcyA8dHJpYWxsYXhAdHV0YW5vdGEuY29tPgpEYXRlOiBXZWQsIDE4 IE9jdCAyMDIzIDE5OjE4OjM5ICswMTAwClN1YmplY3Q6IFtQQVRDSCAxNi8yMl0gbm9tYWNzOiB1 cGRhdGUgdG8gMy4xNy4yMjg3LgoKLS0tCiBzcmNwa2dzL25vbWFjcy90ZW1wbGF0ZSB8IDE3ICsr KysrKysrKysrKystLS0tCiAxIGZpbGUgY2hhbmdlZCwgMTMgaW5zZXJ0aW9ucygrKSwgNCBkZWxl dGlvbnMoLSkKCmRpZmYgLS1naXQgYS9zcmNwa2dzL25vbWFjcy90ZW1wbGF0ZSBiL3NyY3BrZ3Mv bm9tYWNzL3RlbXBsYXRlCmluZGV4IGM1MmNkNTRlMjk0ZGIuLjk1NmJkMjFlYmIxMjkgMTAwNjQ0 Ci0tLSBhL3NyY3BrZ3Mvbm9tYWNzL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3Mvbm9tYWNzL3RlbXBs YXRlCkBAIC0xLDcgKzEsOCBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAnbm9tYWNzJwogcGtnbmFt ZT1ub21hY3MKLXZlcnNpb249My4xNi4yMjQKLXJldmlzaW9uPTUKK3ZlcnNpb249My4xNy4yMjg3 CityZXZpc2lvbj0xCitfcGx1Z2luc192ZXI9My4xNy4yMjg1CiBidWlsZF93cmtzcmM9SW1hZ2VM b3VuZ2UKIGJ1aWxkX3N0eWxlPWNtYWtlCiBjb25maWd1cmVfYXJncz0iLURDTUFLRV9CVUlMRF9U WVBFPU5vbmUgLURFTkFCTEVfVFJBTlNMQVRJT05TPTEKQEAgLTEzLDUgKzE0LDEzIEBAIHNob3J0 X2Rlc2M9IlNpbXBsZSB5ZXQgcG93ZXJmdWwgUXQgaW1hZ2V2aWV3ZXIiCiBtYWludGFpbmVyPSJP cnBoYW5lZCA8b3JwaGFuQHZvaWRsaW51eC5vcmc+IgogbGljZW5zZT0iR1BMLTMuMC1vci1sYXRl ciIKIGhvbWVwYWdlPSJodHRwczovL2dpdGh1Yi5jb20vbm9tYWNzL25vbWFjcyIKLWRpc3RmaWxl cz0iaHR0cHM6Ly9naXRodWIuY29tL25vbWFjcy9ub21hY3MvYXJjaGl2ZS8ke3ZlcnNpb259LnRh ci5neiIKLWNoZWNrc3VtPWJiYzdlOTA0ODAyNmVmOWUwZDJiNjQ5MDJjODgwNTBmMTdhNjc5ZWYz ZDNjMDA5ZGUyYzNiN2RlNWQxZDIxN2MKK2Rpc3RmaWxlcz0iaHR0cHM6Ly9naXRodWIuY29tL25v bWFjcy9ub21hY3MvYXJjaGl2ZS8ke3ZlcnNpb259LnRhci5negorIGh0dHBzOi8vZ2l0aHViLmNv bS9ub3ZvbWVzay9ub21hY3MtcGx1Z2lucy9hcmNoaXZlL3JlZnMvdGFncy8ke19wbHVnaW5zX3Zl cn0udGFyLmd6PnBsdWdpbnMudGFyLmd6IgorY2hlY2tzdW09IjY5MDVlYTYxNTM1OGY4NGEwYzgz ZDViMWI3MDc3ODcxZGVhMDUyNmVjNjY3NTAwYTE5NTE0NDhjYjg0NWE5MmMKKyA5NDZiMmQ3NTRi ZTllY2NhNWNiMTU1ZjdlY2M1ZGNhZmIxNjRmNmMzZGNjN2JmNWMzYzA2MTBkM2I0Nzc3NGFhIgor c2tpcF9leHRyYWN0aW9uPSJwbHVnaW5zLnRhci5neiIKKworcG9zdF9leHRyYWN0KCkgeworIGNk ICR7YnVpbGRfd3Jrc3JjfQorIHZzcmNleHRyYWN0IC1DIHBsdWdpbnMgInBsdWdpbnMudGFyLmd6 IgorfQoKRnJvbSA5OTA3NTc5NmI5ZjU4MTdiNmZlODhmYTk1ZGUzYzZlOGI1MDNhZTRjIE1vbiBT ZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBNb2hhbW1lZCBBbmFzIDx0cmlhbGxheEB0dXRhbm90 YS5jb20+CkRhdGU6IFdlZCwgMTggT2N0IDIwMjMgMTk6MTg6NDAgKzAxMDAKU3ViamVjdDogW1BB VENIIDE3LzIyXSBwZGYyZGp2dTogcmV2YnVtcCBmb3IgZXhpdjItMC4yOC4wLgoKLS0tCiBzcmNw a2dzL3BkZjJkanZ1L3RlbXBsYXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9u KCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9wZGYyZGp2dS90ZW1wbGF0 ZSBiL3NyY3BrZ3MvcGRmMmRqdnUvdGVtcGxhdGUKaW5kZXggZWY3NDMzYzBjOThhZS4uNWE2ZjNk ZGY0ZWQzNSAxMDA2NDQKLS0tIGEvc3JjcGtncy9wZGYyZGp2dS90ZW1wbGF0ZQorKysgYi9zcmNw a2dzL3BkZjJkanZ1L3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZv ciAncGRmMmRqdnUnCiBwa2duYW1lPXBkZjJkanZ1CiB2ZXJzaW9uPTAuOS4xOQotcmV2aXNpb249 NAorcmV2aXNpb249NQogYnVpbGRfc3R5bGU9Z251LWNvbmZpZ3VyZQogaG9zdG1ha2VkZXBlbmRz PSJwa2ctY29uZmlnIGRqdnVsaWJyZSBnZXR0ZXh0IgogbWFrZWRlcGVuZHM9ImRqdnVsaWJyZS1k ZXZlbCBwb3BwbGVyLWRldmVsIGxpYmdyYXBoaWNzbWFnaWNrLWRldmVsIGV4aXYyLWRldmVsIGxp YnV1aWQtZGV2ZWwiCgpGcm9tIDgzNTljMGJlOGY0ZGMwNzhmMzBiYmI1M2M3YWU5ODU5ZjMxZDYw YzQgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IE1vaGFtbWVkIEFuYXMgPHRyaWFsbGF4 QHR1dGFub3RhLmNvbT4KRGF0ZTogV2VkLCAxOCBPY3QgMjAyMyAxOToxODo0MCArMDEwMApTdWJq ZWN0OiBbUEFUQ0ggMTgvMjJdIHBob3RvdG9uaWM6IHJldmJ1bXAgZm9yIGV4aXYyLTAuMjguMC4K Ci0tLQogc3JjcGtncy9waG90b3RvbmljL3BhdGNoZXMvZXhpdjItMC4yOC5wYXRjaCB8IDEzNSAr KysrKysrKysrKysrKysrKysrKwogc3JjcGtncy9waG90b3RvbmljL3RlbXBsYXRlICAgICAgICAg ICAgICAgICB8ICAgMiArLQogMiBmaWxlcyBjaGFuZ2VkLCAxMzYgaW5zZXJ0aW9ucygrKSwgMSBk ZWxldGlvbigtKQogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvcGhvdG90b25pYy9wYXRjaGVz L2V4aXYyLTAuMjgucGF0Y2gKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3Bob3RvdG9uaWMvcGF0Y2hl cy9leGl2Mi0wLjI4LnBhdGNoIGIvc3JjcGtncy9waG90b3RvbmljL3BhdGNoZXMvZXhpdjItMC4y OC5wYXRjaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwLi4xYzc1YjYy OGRhYjMzCi0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9waG90b3RvbmljL3BhdGNoZXMvZXhp djItMC4yOC5wYXRjaApAQCAtMCwwICsxLDEzNSBAQAorRnJvbSA5MjNhM2ZjMTRkZTBiNzc5YTQ1 Njk2YzVmMGFlZjM0Yzc0ZDg0ZjEzIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQorRnJvbTogQW5k cmVhcyBTdHVybWxlY2huZXIgPGFzdHVybUBnZW50b28ub3JnPgorRGF0ZTogU3VuLCAyOCBNYXkg MjAyMyAxODo1NDoxMCArMDIwMAorU3ViamVjdDogW1BBVENIXSBGaXggYnVpbGQgd2l0aCBleGl2 Mi0wLjI4CisKK1NpZ25lZC1vZmYtYnk6IEFuZHJlYXMgU3R1cm1sZWNobmVyIDxhc3R1cm1AZ2Vu dG9vLm9yZz4KKy0tLQorIEltYWdlVmlld2VyLmNwcCAgIHwgOSArKysrKysrKysKKyBNZXRhZGF0 YUNhY2hlLmNwcCB8IDggKysrKysrKysKKyBQaG90b3RvbmljLmNwcCAgICB8IDQgKysrKworIFRh Z3MuY3BwICAgICAgICAgIHwgOCArKysrKysrKworIFRodW1ic1ZpZXdlci5jcHAgIHwgNCArKysr CisgNSBmaWxlcyBjaGFuZ2VkLCAzMyBpbnNlcnRpb25zKCspCisKK2RpZmYgLS1naXQgYS9JbWFn ZVZpZXdlci5jcHAgYi9JbWFnZVZpZXdlci5jcHAKK2luZGV4IDM1N2QyMjMuLmRmM2FjNDMgMTAw NjQ0CistLS0gYS9JbWFnZVZpZXdlci5jcHAKKysrKyBiL0ltYWdlVmlld2VyLmNwcAorQEAgLTk0 NSw3ICs5NDUsMTEgQEAgdm9pZCBJbWFnZVZpZXdlcjo6a2V5TW92ZUV2ZW50KGludCBkaXJlY3Rp b24pIHsKKyB9CisgCisgdm9pZCBJbWFnZVZpZXdlcjo6c2F2ZUltYWdlKCkgeworKyNpZiBFWElW Ml9URVNUX1ZFUlNJT04oMCwyOCwwKQorKyAgICBFeGl2Mjo6SW1hZ2U6OlVuaXF1ZVB0ciBpbWFn ZTsKKysjZWxzZQorICAgICBFeGl2Mjo6SW1hZ2U6OkF1dG9QdHIgaW1hZ2U7CisrI2VuZGlmCisg ICAgIGJvb2wgZXhpZkVycm9yID0gZmFsc2U7CisgCisgICAgIGlmIChuZXdJbWFnZSkgeworQEAg LTk4NSw4ICs5ODksMTMgQEAgdm9pZCBJbWFnZVZpZXdlcjo6c2F2ZUltYWdlKCkgeworIH0KKyAK KyB2b2lkIEltYWdlVmlld2VyOjpzYXZlSW1hZ2VBcygpIHsKKysjaWYgRVhJVjJfVEVTVF9WRVJT SU9OKDAsMjgsMCkKKysgICAgRXhpdjI6OkltYWdlOjpVbmlxdWVQdHIgZXhpZkltYWdlOworKyAg ICBFeGl2Mjo6SW1hZ2U6OlVuaXF1ZVB0ciBuZXdFeGlmSW1hZ2U7CisrI2Vsc2UKKyAgICAgRXhp djI6OkltYWdlOjpBdXRvUHRyIGV4aWZJbWFnZTsKKyAgICAgRXhpdjI6OkltYWdlOjpBdXRvUHRy IG5ld0V4aWZJbWFnZTsKKysjZW5kaWYKKyAgICAgYm9vbCBleGlmRXJyb3IgPSBmYWxzZTsKKyAK KyAgICAgc2V0Q3Vyc29ySGlkaW5nKGZhbHNlKTsKK2RpZmYgLS1naXQgYS9NZXRhZGF0YUNhY2hl LmNwcCBiL01ldGFkYXRhQ2FjaGUuY3BwCitpbmRleCA1MjRhZTc0Li41ZGRkNGM4IDEwMDY0NAor LS0tIGEvTWV0YWRhdGFDYWNoZS5jcHAKKysrKyBiL01ldGFkYXRhQ2FjaGUuY3BwCitAQCAtNjQs NyArNjQsMTEgQEAgdm9pZCBNZXRhZGF0YUNhY2hlOjpjbGVhcigpIHsKKyB9CisgCisgYm9vbCBN ZXRhZGF0YUNhY2hlOjpsb2FkSW1hZ2VNZXRhZGF0YShjb25zdCBRU3RyaW5nICZpbWFnZUZ1bGxQ YXRoKSB7CisrI2lmIEVYSVYyX1RFU1RfVkVSU0lPTigwLDI4LDApCisrICAgIEV4aXYyOjpJbWFn ZTo6VW5pcXVlUHRyIGV4aWZJbWFnZTsKKysjZWxzZQorICAgICBFeGl2Mjo6SW1hZ2U6OkF1dG9Q dHIgZXhpZkltYWdlOworKyNlbmRpZgorICAgICBRU2V0PFFTdHJpbmc+IHRhZ3M7CisgICAgIGxv bmcgb3JpZW50YXRpb24gPSAwOworIAorQEAgLTc4LDcgKzgyLDExIEBAIGJvb2wgTWV0YWRhdGFD YWNoZTo6bG9hZEltYWdlTWV0YWRhdGEoY29uc3QgUVN0cmluZyAmaW1hZ2VGdWxsUGF0aCkgewor ICAgICB0cnkgeworICAgICAgICAgRXhpdjI6OkV4aWZEYXRhICZleGlmRGF0YSA9IGV4aWZJbWFn ZS0+ZXhpZkRhdGEoKTsKKyAgICAgICAgIGlmICghZXhpZkRhdGEuZW1wdHkoKSkgeworKyNpZiBF WElWMl9URVNUX1ZFUlNJT04oMCwyOCwwKQorKyAgICAgICAgICAgIG9yaWVudGF0aW9uID0gZXhp ZkRhdGFbIkV4aWYuSW1hZ2UuT3JpZW50YXRpb24iXS52YWx1ZSgpLnRvVWludDMyKCk7CisrI2Vs c2UKKyAgICAgICAgICAgICBvcmllbnRhdGlvbiA9IGV4aWZEYXRhWyJFeGlmLkltYWdlLk9yaWVu dGF0aW9uIl0udmFsdWUoKS50b0xvbmcoKTsKKysjZW5kaWYKKyAgICAgICAgIH0KKyAgICAgfSBj YXRjaCAoRXhpdjI6OkVycm9yICZlcnJvcikgeworICAgICAgICAgcVdhcm5pbmcoKSA8PCAiRmFp bGVkIHRvIHJlYWQgRXhpZiBtZXRhZGF0YSI7CitkaWZmIC0tZ2l0IGEvUGhvdG90b25pYy5jcHAg Yi9QaG90b3RvbmljLmNwcAoraW5kZXggNmNjOTViMy4uYmQ1NDk3ZCAxMDA2NDQKKy0tLSBhL1Bo b3RvdG9uaWMuY3BwCisrKysgYi9QaG90b3RvbmljLmNwcAorQEAgLTMxNTEsNyArMzE1MSwxMSBA QCB2b2lkIFBob3RvdG9uaWM6OnJlbW92ZU1ldGFkYXRhKCkgeworIAorICAgICBpZiAocmV0ID09 IE1lc3NhZ2VCb3g6OlllcykgeworICAgICAgICAgZm9yIChpbnQgZmlsZSA9IDA7IGZpbGUgPCBm aWxlTGlzdC5zaXplKCk7ICsrZmlsZSkgeworKyNpZiBFWElWMl9URVNUX1ZFUlNJT04oMCwyOCww KQorKyAgICAgICAgICAgIEV4aXYyOjpJbWFnZTo6VW5pcXVlUHRyIGltYWdlOworKyNlbHNlCisg ICAgICAgICAgICAgRXhpdjI6OkltYWdlOjpBdXRvUHRyIGltYWdlOworKyNlbmRpZgorICAgICAg ICAgICAgIHRyeSB7CisgICAgICAgICAgICAgICAgIGltYWdlID0gRXhpdjI6OkltYWdlRmFjdG9y eTo6b3BlbihmaWxlTGlzdFtmaWxlXS50b1N0ZFN0cmluZygpKTsKKyAgICAgICAgICAgICAgICAg aW1hZ2UtPmNsZWFyTWV0YWRhdGEoKTsKK2RpZmYgLS1naXQgYS9UYWdzLmNwcCBiL1RhZ3MuY3Bw CitpbmRleCA4NGVlYTE2Li5hNjJkYTlkIDEwMDY0NAorLS0tIGEvVGFncy5jcHAKKysrKyBiL1Rh Z3MuY3BwCitAQCAtMTM2LDcgKzEzNiwxMSBAQCB2b2lkIEltYWdlVGFnczo6YWRkVGFnKFFTdHJp bmcgdGFnTmFtZSwgYm9vbCB0YWdDaGVja2VkKSB7CisgCisgYm9vbCBJbWFnZVRhZ3M6OndyaXRl VGFnc1RvSW1hZ2UoUVN0cmluZyAmaW1hZ2VGaWxlTmFtZSwgUVNldDxRU3RyaW5nPiAmbmV3VGFn cykgeworICAgICBRU2V0PFFTdHJpbmc+IGltYWdlVGFnczsKKysjaWYgRVhJVjJfVEVTVF9WRVJT SU9OKDAsMjgsMCkKKysgICAgRXhpdjI6OkltYWdlOjpVbmlxdWVQdHIgZXhpZkltYWdlOworKyNl bHNlCisgICAgIEV4aXYyOjpJbWFnZTo6QXV0b1B0ciBleGlmSW1hZ2U7CisrI2VuZGlmCisgCisg ICAgIHRyeSB7CisgICAgICAgICBleGlmSW1hZ2UgPSBFeGl2Mjo6SW1hZ2VGYWN0b3J5OjpvcGVu KGltYWdlRmlsZU5hbWUudG9TdGRTdHJpbmcoKSk7CitAQCAtMTYwLDcgKzE2NCwxMSBAQCBib29s IEltYWdlVGFnczo6d3JpdGVUYWdzVG9JbWFnZShRU3RyaW5nICZpbWFnZUZpbGVOYW1lLCBRU2V0 PFFTdHJpbmc+ICZuZXdUYWdzKQorICAgICAgICAgUVNldEl0ZXJhdG9yPFFTdHJpbmc+IG5ld1Rh Z3NJdChuZXdUYWdzKTsKKyAgICAgICAgIHdoaWxlIChuZXdUYWdzSXQuaGFzTmV4dCgpKSB7Cisg ICAgICAgICAgICAgUVN0cmluZyB0YWcgPSBuZXdUYWdzSXQubmV4dCgpOworKyNpZiBFWElWMl9U RVNUX1ZFUlNJT04oMCwyOCwwKQorKyAgICAgICAgICAgIEV4aXYyOjpWYWx1ZTo6VW5pcXVlUHRy IHZhbHVlID0gRXhpdjI6OlZhbHVlOjpjcmVhdGUoRXhpdjI6OnN0cmluZyk7CisrI2Vsc2UKKyAg ICAgICAgICAgICBFeGl2Mjo6VmFsdWU6OkF1dG9QdHIgdmFsdWUgPSBFeGl2Mjo6VmFsdWU6OmNy ZWF0ZShFeGl2Mjo6c3RyaW5nKTsKKysjZW5kaWYKKyAgICAgICAgICAgICB2YWx1ZS0+cmVhZCh0 YWcudG9TdGRTdHJpbmcoKSk7CisgICAgICAgICAgICAgRXhpdjI6OklwdGNLZXkga2V5KCJJcHRj LkFwcGxpY2F0aW9uMi5LZXl3b3JkcyIpOworICAgICAgICAgICAgIG5ld0lwdGNEYXRhLmFkZChr ZXksIHZhbHVlLmdldCgpKTsKK2RpZmYgLS1naXQgYS9UaHVtYnNWaWV3ZXIuY3BwIGIvVGh1bWJz Vmlld2VyLmNwcAoraW5kZXggNzdhNjE4OS4uNGExMTQ3NSAxMDA2NDQKKy0tLSBhL1RodW1ic1Zp ZXdlci5jcHAKKysrKyBiL1RodW1ic1ZpZXdlci5jcHAKK0BAIC0yMTAsNyArMjEwLDExIEBAIHZv aWQgVGh1bWJzVmlld2VyOjp1cGRhdGVJbWFnZUluZm9WaWV3ZXIoUVN0cmluZyBpbWFnZUZ1bGxQ YXRoKSB7CisgICAgICAgICBpbmZvVmlldy0+YWRkRW50cnkoa2V5LCB2YWwpOworICAgICB9Cisg CisrI2lmIEVYSVYyX1RFU1RfVkVSU0lPTigwLDI4LDApCisrICAgIEV4aXYyOjpJbWFnZTo6VW5p cXVlUHRyIGV4aWZJbWFnZTsKKysjZWxzZQorICAgICBFeGl2Mjo6SW1hZ2U6OkF1dG9QdHIgZXhp ZkltYWdlOworKyNlbmRpZgorICAgICB0cnkgeworICAgICAgICAgZXhpZkltYWdlID0gRXhpdjI6 OkltYWdlRmFjdG9yeTo6b3BlbihpbWFnZUZ1bGxQYXRoLnRvU3RkU3RyaW5nKCkpOworICAgICAg ICAgZXhpZkltYWdlLT5yZWFkTWV0YWRhdGEoKTsKKy0tIAorMi40MC4xCisKZGlmZiAtLWdpdCBh L3NyY3BrZ3MvcGhvdG90b25pYy90ZW1wbGF0ZSBiL3NyY3BrZ3MvcGhvdG90b25pYy90ZW1wbGF0 ZQppbmRleCA3N2FlOGJmNmE0NDA2Li40YWYwMDZjYjdkYTQxIDEwMDY0NAotLS0gYS9zcmNwa2dz L3Bob3RvdG9uaWMvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9waG90b3RvbmljL3RlbXBsYXRlCkBA IC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBmaWxlIGZvciAncGhvdG90b25pYycKIHBrZ25hbWU9 cGhvdG90b25pYwogdmVyc2lvbj0yLjEKLXJldmlzaW9uPTMKK3JldmlzaW9uPTQKIGJ1aWxkX3N0 eWxlPXFtYWtlCiBob3N0bWFrZWRlcGVuZHM9InBrZy1jb25maWcgcXQ1LXFtYWtlIHF0NS1ob3N0 LXRvb2xzIgogbWFrZWRlcGVuZHM9InF0NS1zdmctZGV2ZWwgZXhpdjItZGV2ZWwiCgpGcm9tIDk2 NzdiYzg0Y2Q0OTg4NWMwNDIyYzIzMDAxMWM1NDQ3Y2NjNTQyZWEgTW9uIFNlcCAxNyAwMDowMDow MCAyMDAxCkZyb206IE1vaGFtbWVkIEFuYXMgPHRyaWFsbGF4QHR1dGFub3RhLmNvbT4KRGF0ZTog V2VkLCAxOCBPY3QgMjAyMyAxOToxODo0MCArMDEwMApTdWJqZWN0OiBbUEFUQ0ggMTkvMjJdIHFp bWd2OiByZXZidW1wIGZvciBleGl2Mi0wLjI4LjAuCgotLS0KIHNyY3BrZ3MvcWltZ3YvcGF0Y2hl cy9leGl2Mi0wLjI4LnBhdGNoIHwgMTYgKysrKysrKysrKysrKysrKwogc3JjcGtncy9xaW1ndi90 ZW1wbGF0ZSAgICAgICAgICAgICAgICAgfCAgMiArLQogMiBmaWxlcyBjaGFuZ2VkLCAxNyBpbnNl cnRpb25zKCspLCAxIGRlbGV0aW9uKC0pCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy9xaW1n di9wYXRjaGVzL2V4aXYyLTAuMjgucGF0Y2gKCmRpZmYgLS1naXQgYS9zcmNwa2dzL3FpbWd2L3Bh dGNoZXMvZXhpdjItMC4yOC5wYXRjaCBiL3NyY3BrZ3MvcWltZ3YvcGF0Y2hlcy9leGl2Mi0wLjI4 LnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAuLjExZjM3YjVh ZTJiZTMKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL3FpbWd2L3BhdGNoZXMvZXhpdjItMC4y OC5wYXRjaApAQCAtMCwwICsxLDE2IEBACitQYXRjaC1Tb3VyY2U6IGh0dHBzOi8vZ2l0LmFscGlu ZWxpbnV4Lm9yZy9hcG9ydHMvdHJlZS9jb21tdW5pdHkvcWltZ3YvZXhpdjItMC4yOC5wYXRjaAor ZGlmZiAtLWdpdCBhL3FpbWd2L3NvdXJjZWNvbnRhaW5lcnMvZG9jdW1lbnRpbmZvLmNwcCBiL3Fp bWd2L3NvdXJjZWNvbnRhaW5lcnMvZG9jdW1lbnRpbmZvLmNwcAoraW5kZXggOThhNjhmNy4uYzA2 MjQ3NCAxMDA2NDQKKy0tLSBhL3FpbWd2L3NvdXJjZWNvbnRhaW5lcnMvZG9jdW1lbnRpbmZvLmNw cAorKysrIGIvcWltZ3Yvc291cmNlY29udGFpbmVycy9kb2N1bWVudGluZm8uY3BwCitAQCAtMjcx LDEwICsyNzEsNiBAQCB2b2lkIERvY3VtZW50SW5mbzo6bG9hZEV4aWZUYWdzKCkgeworICAgICAg ICAgLy9zdGQ6OmNvdXQgPDwgIkNhdWdodCBFeGl2MiBleGNlcHRpb24gJyIgPDwgZS53aGF0KCkg PDwgIidcbiI7CisgICAgICAgICByZXR1cm47CisgICAgIH0KKy0gICAgY2F0Y2ggKEV4aXYyOjpC YXNpY0Vycm9yPENoYXJUeXBlPiBlKSB7CistICAgICAgICAvL3N0ZDo6Y291dCA8PCAiQ2F1Z2h0 IEJhc2ljRXJyb3IgRXhpdjIgZXhjZXB0aW9uICciIDw8IGUud2hhdCgpIDw8ICInXG4iOworLSAg ICAgICAgcmV0dXJuOworLSAgICB9CisgI2VuZGlmCisgfQorIApkaWZmIC0tZ2l0IGEvc3JjcGtn cy9xaW1ndi90ZW1wbGF0ZSBiL3NyY3BrZ3MvcWltZ3YvdGVtcGxhdGUKaW5kZXggN2ViMzBkYjMz OTkyYy4uZGQzNDFkZmUxYmZjZSAxMDA2NDQKLS0tIGEvc3JjcGtncy9xaW1ndi90ZW1wbGF0ZQor KysgYi9zcmNwa2dzL3FpbWd2L3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1wbGF0ZSBm aWxlIGZvciAncWltZ3YnCiBwa2duYW1lPXFpbWd2CiB2ZXJzaW9uPTEuMC4yCi1yZXZpc2lvbj0y CityZXZpc2lvbj0zCiBidWlsZF9zdHlsZT1jbWFrZQogY29uZmlndXJlX2FyZ3M9IiQodm9wdF9p ZiB2aWRlbyAtRFZJREVPX1NVUFBPUlQ9T04gLURWSURFT19TVVBQT1JUPU9GRikKICAkKHZvcHRf aWYgc2NhbGUgLURPUEVOQ1ZfU1VQUE9SVD1PTiAtRE9QRU5DVl9TVVBQT1JUPU9GRikKCkZyb20g YTAyNDVlZjU1Nzk0YjM2OTIzYTZmOTE1YmIxMDg0NjNiNjVhMGQzZSBNb24gU2VwIDE3IDAwOjAw OjAwIDIwMDEKRnJvbTogTW9oYW1tZWQgQW5hcyA8dHJpYWxsYXhAdHV0YW5vdGEuY29tPgpEYXRl OiBXZWQsIDE4IE9jdCAyMDIzIDE5OjE4OjQwICswMTAwClN1YmplY3Q6IFtQQVRDSCAyMC8yMl0g U0lSOiByZXZidW1wIGZvciBleGl2Mi0wLjI4LjAuCgotLS0KIHNyY3BrZ3MvU0lSL3RlbXBsYXRl IHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpk aWZmIC0tZ2l0IGEvc3JjcGtncy9TSVIvdGVtcGxhdGUgYi9zcmNwa2dzL1NJUi90ZW1wbGF0ZQpp bmRleCAxMTMwNzdhY2FkMzU0Li5jNmRhNGMyNmI2YzcxIDEwMDY0NAotLS0gYS9zcmNwa2dzL1NJ Ui90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL1NJUi90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMg VGVtcGxhdGUgZmlsZSBmb3IgJ1NJUicKIHBrZ25hbWU9U0lSCiB2ZXJzaW9uPTMuMi4yCi1yZXZp c2lvbj0xCityZXZpc2lvbj0yCiBidWlsZF9zdHlsZT1jbWFrZQogaG9zdG1ha2VkZXBlbmRzPSJw a2ctY29uZmlnIgogbWFrZWRlcGVuZHM9ImV4aXYyLWRldmVsIHF0NS1zdmctZGV2ZWwgcXQ1LXRv b2xzLWRldmVsIgoKRnJvbSBhMDAyNmZmMjlkNThmZGQ5MDM5YTI2MjJiOWUzMDkxNTE4NTMxYzBm IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBNb2hhbW1lZCBBbmFzIDx0cmlhbGxheEB0 dXRhbm90YS5jb20+CkRhdGU6IFdlZCwgMTggT2N0IDIwMjMgMTk6MTg6NDAgKzAxMDAKU3ViamVj dDogW1BBVENIIDIxLzIyXSB2aWV3bmlvcjogcmV2YnVtcCBmb3IgZXhpdjItMC4yOC4wLgoKLS0t CiBzcmNwa2dzL3ZpZXduaW9yL3BhdGNoZXMvZXhpdjItMC4yOC5wYXRjaCB8IDE0NyArKysrKysr KysrKysrKysrKysrKysrCiBzcmNwa2dzL3ZpZXduaW9yL3RlbXBsYXRlICAgICAgICAgICAgICAg ICB8ICAgMiArLQogMiBmaWxlcyBjaGFuZ2VkLCAxNDggaW5zZXJ0aW9ucygrKSwgMSBkZWxldGlv bigtKQogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3Mvdmlld25pb3IvcGF0Y2hlcy9leGl2Mi0w LjI4LnBhdGNoCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy92aWV3bmlvci9wYXRjaGVzL2V4aXYyLTAu MjgucGF0Y2ggYi9zcmNwa2dzL3ZpZXduaW9yL3BhdGNoZXMvZXhpdjItMC4yOC5wYXRjaApuZXcg ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwLi43MTQ1OWRlZTE1NzY4Ci0tLSAv ZGV2L251bGwKKysrIGIvc3JjcGtncy92aWV3bmlvci9wYXRjaGVzL2V4aXYyLTAuMjgucGF0Y2gK QEAgLTAsMCArMSwxNDcgQEAKK1BhdGNoLVNvdXJjZTogaHR0cHM6Ly9naXRsYWIuYXJjaGxpbnV4 Lm9yZy9hcmNobGludXgvcGFja2FnaW5nL3BhY2thZ2VzL3ZpZXduaW9yLy0vYmxvYi9mMjA2Y2U2 YzIyYTNlYzVmMWY5ZWExYmRlNDA3NzU4NGY4MDQ1OGRkL2V4aXYyLTAuMjgucGF0Y2gKKy0tCitG cm9tIGI2YmI4MWExYjQ2ZTkxMWQxNWJiZjlhNzMwOTcyNTIzZGUxNzc3MDUgTW9uIFNlcCAxNyAw MDowMDowMCAyMDAxCitGcm9tOiB0YXN0eXRlYSA8dGFzdHl0ZWFAdGFzdHl0ZWEuZGU+CitEYXRl OiBUdWUsIDE2IE1heSAyMDIzIDEwOjU0OjQwICswMjAwCitTdWJqZWN0OiBbUEFUQ0ggMS8yXSBj aGFuZ2UgZXhpdjIgQXV0b1B0ciB0byB1bmlxdWVfcHRyCisKK2V4aXYyLTAuMjguMCByZW1vdmVk IEV4aXYyOjpJbWFnZTo6QXV0b1B0ciBhbmQgYWRkZWQKK0V4aXYyOjpJbWFnZTo6VW5pcXVlUHRy IGluc3RlYWQuIHNpbmNlIGl0J3MgYSB0eXBlZGVmIGZvcgorc3RkOjp1bmlxdWVfcHRyPEltYWdl PiwgaSdtIHVzaW5nIHRoYXQgZGlyZWN0bHkgaW5zdGVhZCBvZiBhZGRpbmcgYQorY29uZGl0aW9u IG9uIHRoZSBleGl2MiB2ZXJzaW9uLgorLS0tCisgc3JjL3VuaS1leGl2Mi5jcHAgfCAyMSArKysr KysrKysrKy0tLS0tLS0tLS0KKyAxIGZpbGUgY2hhbmdlZCwgMTEgaW5zZXJ0aW9ucygrKSwgMTAg ZGVsZXRpb25zKC0pCisKK2RpZmYgLS1naXQgYS9zcmMvdW5pLWV4aXYyLmNwcCBiL3NyYy91bmkt ZXhpdjIuY3BwCitpbmRleCAwZDE0YjlmLi43NzA2NGMyIDEwMDY0NAorLS0tIGEvc3JjL3VuaS1l eGl2Mi5jcHAKKysrKyBiL3NyYy91bmktZXhpdjIuY3BwCitAQCAtMjIsMTIgKzIyLDEzIEBACisg CisgI2luY2x1ZGUgPGV4aXYyL2V4aXYyLmhwcD4KKyAjaW5jbHVkZSA8aW9zdHJlYW0+CisrI2lu Y2x1ZGUgPG1lbW9yeT4KKyAKKyAjaW5jbHVkZSAidW5pLWV4aXYyLmhwcCIKKyAKKyAjZGVmaW5l IEFSUkFZX1NJWkUoYXJyYXkpIChzaXplb2YgYXJyYXkvc2l6ZW9mKGFycmF5WzBdKSkKKyAKKy1z dGF0aWMgRXhpdjI6OkltYWdlOjpBdXRvUHRyIGNhY2hlZF9pbWFnZTsKKytzdGF0aWMgc3RkOjp1 bmlxdWVfcHRyPEV4aXYyOjpJbWFnZT4gY2FjaGVkX2ltYWdlOworIAorIGV4dGVybiAiQyIKKyB2 b2lkCitAQCAtMzUsOCArMzYsOCBAQCB1bmlfcmVhZF9leGl2Ml9tYXAoY29uc3QgY2hhciAqdXJp LCB2b2lkICgqY2FsbGJhY2spKGNvbnN0IGNoYXIqLCBjb25zdCBjaGFyKiwgdgorIHsKKyAgICAg RXhpdjI6OkxvZ01zZzo6c2V0TGV2ZWwoRXhpdjI6OkxvZ01zZzo6bXV0ZSk7CisgICAgIHRyeSB7 CistICAgICAgICBFeGl2Mjo6SW1hZ2U6OkF1dG9QdHIgaW1hZ2UgPSBFeGl2Mjo6SW1hZ2VGYWN0 b3J5OjpvcGVuKHVyaSk7CistICAgICAgICBpZiAoIGltYWdlLmdldCgpID09IDAgKSB7CisrICAg ICAgICBzdGQ6OnVuaXF1ZV9wdHI8RXhpdjI6OkltYWdlPiBpbWFnZSA9IEV4aXYyOjpJbWFnZUZh Y3Rvcnk6Om9wZW4odXJpKTsKKysgICAgICAgIGlmIChpbWFnZSA9PSBudWxscHRyKSB7CisgICAg ICAgICAgICAgcmV0dXJuOworICAgICAgICAgfQorIAorQEAgLTkxLDE0ICs5MiwxNCBAQCB1bmlf cmVhZF9leGl2Ml90b19jYWNoZShjb25zdCBjaGFyICp1cmkpCisgeworICAgICBFeGl2Mjo6TG9n TXNnOjpzZXRMZXZlbChFeGl2Mjo6TG9nTXNnOjptdXRlKTsKKyAKKy0gICAgaWYgKCBjYWNoZWRf aW1hZ2UuZ2V0KCkgIT0gTlVMTCApIHsKKysgICAgaWYgKGNhY2hlZF9pbWFnZSAhPSBudWxscHRy KSB7CisgICAgICAgICBjYWNoZWRfaW1hZ2UtPmNsZWFyTWV0YWRhdGEoKTsKKy0gICAgICAgIGNh Y2hlZF9pbWFnZS5yZXNldChOVUxMKTsKKysgICAgICAgIGNhY2hlZF9pbWFnZS5yZXNldChudWxs cHRyKTsKKyAgICAgfQorIAorICAgICB0cnkgeworICAgICAgICAgY2FjaGVkX2ltYWdlID0gRXhp djI6OkltYWdlRmFjdG9yeTo6b3Blbih1cmkpOworLSAgICAgICAgaWYgKCBjYWNoZWRfaW1hZ2Uu Z2V0KCkgPT0gMCApIHsKKysgICAgICAgIGlmIChjYWNoZWRfaW1hZ2UgPT0gbnVsbHB0cikgewor ICAgICAgICAgICAgIHJldHVybiAxOworICAgICAgICAgfQorIAorQEAgLTExNiwxMyArMTE3LDEz IEBAIHVuaV93cml0ZV9leGl2Ml9mcm9tX2NhY2hlKGNvbnN0IGNoYXIgKnVyaSkKKyB7CisgICAg IEV4aXYyOjpMb2dNc2c6OnNldExldmVsKEV4aXYyOjpMb2dNc2c6Om11dGUpOworIAorLSAgICBp ZiAoIGNhY2hlZF9pbWFnZS5nZXQoKSA9PSBOVUxMICkgeworKyAgICBpZiAoY2FjaGVkX2ltYWdl ID09IG51bGxwdHIpIHsKKyAgICAgICAgIHJldHVybiAxOworICAgICB9CisgCisgICAgIHRyeSB7 CistICAgICAgICBFeGl2Mjo6SW1hZ2U6OkF1dG9QdHIgaW1hZ2UgPSBFeGl2Mjo6SW1hZ2VGYWN0 b3J5OjpvcGVuKHVyaSk7CistICAgICAgICBpZiAoIGltYWdlLmdldCgpID09IDAgKSB7CisrICAg ICAgICBzdGQ6OnVuaXF1ZV9wdHI8RXhpdjI6OkltYWdlPiBpbWFnZSA9IEV4aXYyOjpJbWFnZUZh Y3Rvcnk6Om9wZW4odXJpKTsKKysgICAgICAgIGlmIChpbWFnZSA9PSBudWxscHRyKSB7CisgICAg ICAgICAgICAgcmV0dXJuIDI7CisgICAgICAgICB9CisgCitAQCAtMTMwLDcgKzEzMSw3IEBAIHVu aV93cml0ZV9leGl2Ml9mcm9tX2NhY2hlKGNvbnN0IGNoYXIgKnVyaSkKKyAgICAgICAgIGltYWdl LT53cml0ZU1ldGFkYXRhKCk7CisgCisgICAgICAgICBjYWNoZWRfaW1hZ2UtPmNsZWFyTWV0YWRh dGEoKTsKKy0gICAgICAgIGNhY2hlZF9pbWFnZS5yZXNldChOVUxMKTsKKysgICAgICAgIGNhY2hl ZF9pbWFnZS5yZXNldChudWxscHRyKTsKKyAKKyAgICAgICAgIHJldHVybiAwOworICAgICB9IGNh dGNoIChFeGl2Mjo6QW55RXJyb3ImIGUpIHsKKworRnJvbSA0N2QwYjk4Y2I0NjUyNmFhOGFhMDM1 YmViY2FiYzE0YTExZmE1N2VlIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQorRnJvbTogdGFzdHl0 ZWEgPHRhc3R5dGVhQHRhc3R5dGVhLmRlPgorRGF0ZTogVHVlLCAxNiBNYXkgMjAyMyAxMToxNzow MCArMDIwMAorU3ViamVjdDogW1BBVENIIDIvMl0gYWRkIHN1cHBvcnQgZm9yIGV4aXYtMC4yOC4w IGVycm9ycworCitleGl2Mi0wLjI4LjAgY2hhbmdlZCBFeGl2Mjo6QW55RXJyb3IgdG8gRXhpdjI6 OkVycm9yLgorLS0tCisgc3JjL3VuaS1leGl2Mi5jcHAgfCAxNSArKysrKysrKysrKystLS0KKyAx IGZpbGUgY2hhbmdlZCwgMTIgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKKworZGlmZiAt LWdpdCBhL3NyYy91bmktZXhpdjIuY3BwIGIvc3JjL3VuaS1leGl2Mi5jcHAKK2luZGV4IDc3MDY0 YzIuLjU2N2E1MGYgMTAwNjQ0CistLS0gYS9zcmMvdW5pLWV4aXYyLmNwcAorKysrIGIvc3JjL3Vu aS1leGl2Mi5jcHAKK0BAIC0yOCw2ICsyOCwxNSBAQAorIAorICNkZWZpbmUgQVJSQVlfU0laRShh cnJheSkgKHNpemVvZiBhcnJheS9zaXplb2YoYXJyYXlbMF0pKQorIAorKyNkZWZpbmUgRVhJVl9F UlJPUiBFeGl2Mjo6QW55RXJyb3IKKysjaWZkZWYgRVhJVjJfVkVSU0lPTgorKyAgICAjaWZkZWYg RVhJVjJfVEVTVF9WRVJTSU9OCisrICAgICAgICAjaWYgRVhJVjJfVEVTVF9WRVJTSU9OKDAsMjgs MCkKKysgICAgICAgICAgICAjZGVmaW5lIEVYSVZfRVJST1IgRXhpdjI6OkVycm9yCisrICAgICAg ICAjZW5kaWYKKysgICAgI2VuZGlmCisrI2VuZGlmCisrCisgc3RhdGljIHN0ZDo6dW5pcXVlX3B0 cjxFeGl2Mjo6SW1hZ2U+IGNhY2hlZF9pbWFnZTsKKyAKKyBleHRlcm4gIkMiCitAQCAtODEsNyAr OTAsNyBAQCB1bmlfcmVhZF9leGl2Ml9tYXAoY29uc3QgY2hhciAqdXJpLCB2b2lkICgqY2FsbGJh Y2spKGNvbnN0IGNoYXIqLCBjb25zdCBjaGFyKiwgdgorICAgICAgICAgICAgICAgICB9CisgICAg ICAgICAgICAgfQorICAgICAgICAgfQorLSAgICB9IGNhdGNoIChFeGl2Mjo6QW55RXJyb3ImIGUp IHsKKysgICAgfSBjYXRjaCAoRVhJVl9FUlJPUiYgZSkgeworICAgICAgICAgc3RkOjpjZXJyIDw8 ICJFeGl2MjogJyIgPDwgZSA8PCAiJ1xuIjsKKyAgICAgfQorIH0KK0BAIC0xMDQsNyArMTEzLDcg QEAgdW5pX3JlYWRfZXhpdjJfdG9fY2FjaGUoY29uc3QgY2hhciAqdXJpKQorICAgICAgICAgfQor IAorICAgICAgICAgY2FjaGVkX2ltYWdlLT5yZWFkTWV0YWRhdGEoKTsKKy0gICAgfSBjYXRjaCAo RXhpdjI6OkFueUVycm9yJiBlKSB7CisrICAgIH0gY2F0Y2ggKEVYSVZfRVJST1ImIGUpIHsKKyAg ICAgICAgIHN0ZDo6Y2VyciA8PCAiRXhpdjI6ICciIDw8IGUgPDwgIidcbiI7CisgICAgIH0KKyAK K0BAIC0xMzQsNyArMTQzLDcgQEAgdW5pX3dyaXRlX2V4aXYyX2Zyb21fY2FjaGUoY29uc3QgY2hh ciAqdXJpKQorICAgICAgICAgY2FjaGVkX2ltYWdlLnJlc2V0KG51bGxwdHIpOworIAorICAgICAg ICAgcmV0dXJuIDA7CistICAgIH0gY2F0Y2ggKEV4aXYyOjpBbnlFcnJvciYgZSkgeworKyAgICB9 IGNhdGNoIChFWElWX0VSUk9SJiBlKSB7CisgICAgICAgICBzdGQ6OmNlcnIgPDwgIkV4aXYyOiAn IiA8PCBlIDw8ICInXG4iOworICAgICB9CisgCmRpZmYgLS1naXQgYS9zcmNwa2dzL3ZpZXduaW9y L3RlbXBsYXRlIGIvc3JjcGtncy92aWV3bmlvci90ZW1wbGF0ZQppbmRleCBlYTFlNTI4YTg2NTFm Li40YzczMjI2NjYyY2EwIDEwMDY0NAotLS0gYS9zcmNwa2dzL3ZpZXduaW9yL3RlbXBsYXRlCisr KyBiL3NyY3BrZ3Mvdmlld25pb3IvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRl IGZpbGUgZm9yICd2aWV3bmlvcicKIHBrZ25hbWU9dmlld25pb3IKIHZlcnNpb249MS44Ci1yZXZp c2lvbj0xCityZXZpc2lvbj0yCiBidWlsZF9zdHlsZT1tZXNvbgogaG9zdG1ha2VkZXBlbmRzPSJw a2ctY29uZmlnIGludGx0b29sIGdsaWItZGV2ZWwgZ2V0dGV4dC1kZXZlbCIKIG1ha2VkZXBlbmRz PSJndGsrLWRldmVsIGV4aXYyLWRldmVsIgoKRnJvbSA1N2QwOGNhMTUxZDk4N2RjNTgwZjU1N2Vk YTk1OGZlM2YzMzMwNGFkIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBKb2huIDxtZUBq b2hubnluYXRvci5kZXY+CkRhdGU6IE1vbiwgMjMgT2N0IDIwMjMgMTk6MDY6MzQgKzAyMDAKU3Vi amVjdDogW1BBVENIIDIyLzIyXSBOZXcgcGFja2FnZTogbnVmcmF3LTAuNDMuMwoKQ28tYXV0aG9y ZWQtYnk6IE1vaGFtbWVkIEFuYXMgPHRyaWFsbGF4QHR1dGFub3RhLmNvbT4KLS0tCiBjb21tb24v dHJhdmlzL2NoYW5nZWRfdGVtcGxhdGVzLnNoICAgICAgICAgICAgfCAgMSArCiBzcmNwa2dzL251 ZnJhdy1naW1wICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgMSArCiAuLi4vcGF0Y2hlcy8w MDAxLW51ZnJhdy1nbGliLTIuNzAucGF0Y2ggICAgICAgfCAyMCArKysrKysrCiBzcmNwa2dzL251 ZnJhdy9wYXRjaGVzL2V4aXYtMC4yOC54LmRpZmYgICAgICAgfCA1OSArKysrKysrKysrKysrKysr KysrCiBzcmNwa2dzL251ZnJhdy90ZW1wbGF0ZSAgICAgICAgICAgICAgICAgICAgICAgfCA0NyAr KysrKysrKysrKysrKysKIHNyY3BrZ3MvcmVtb3ZlZC1wYWNrYWdlcy90ZW1wbGF0ZSAgICAgICAg ICAgICB8ICA4ICsrLQogc3JjcGtncy91ZnJhdyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIHwgIDEgKwogc3JjcGtncy91ZnJhdy1naW1wICAgICAgICAgICAgICAgICAgICAgICAgICAg IHwgIDIgKy0KIC4uLi91ZnJhdy9wYXRjaGVzLzAwMS1uby1naW1wLXJlbW90ZS5wYXRjaCAgICB8 IDEyIC0tLS0KIHNyY3BrZ3MvdWZyYXcvcGF0Y2hlcy8wMDItZml4X2Fic19pbnQucGF0Y2ggICB8 IDExIC0tLS0KIC4uLi91ZnJhdy9wYXRjaGVzLzAzX2ZpeC11bnNpZ25lZC1jaGFyLnBhdGNoICB8 IDE0IC0tLS0tCiBzcmNwa2dzL3VmcmF3L3BhdGNoZXMvZXhpdi0wLjI3LnBhdGNoICAgICAgICAg fCAyNSAtLS0tLS0tLQogc3JjcGtncy91ZnJhdy9wYXRjaGVzL2dsaWItMi42OC5wYXRjaCAgICAg ICAgIHwgMzAgLS0tLS0tLS0tLQogc3JjcGtncy91ZnJhdy9wYXRjaGVzL2lvc3RyZWFtLnBhdGNo ICAgICAgICAgIHwgMTMgLS0tLQogc3JjcGtncy91ZnJhdy90ZW1wbGF0ZSAgICAgICAgICAgICAg ICAgICAgICAgIHwgMzggLS0tLS0tLS0tLS0tCiAxNSBmaWxlcyBjaGFuZ2VkLCAxMzUgaW5zZXJ0 aW9ucygrKSwgMTQ3IGRlbGV0aW9ucygtKQogY3JlYXRlIG1vZGUgMTIwMDAwIHNyY3BrZ3MvbnVm cmF3LWdpbXAKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL251ZnJhdy9wYXRjaGVzLzAwMDEt bnVmcmF3LWdsaWItMi43MC5wYXRjaAogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvbnVmcmF3 L3BhdGNoZXMvZXhpdi0wLjI4LnguZGlmZgogY3JlYXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvbnVm cmF3L3RlbXBsYXRlCiBjcmVhdGUgbW9kZSAxMjAwMDAgc3JjcGtncy91ZnJhdwogZGVsZXRlIG1v ZGUgMTAwNjQ0IHNyY3BrZ3MvdWZyYXcvcGF0Y2hlcy8wMDEtbm8tZ2ltcC1yZW1vdGUucGF0Y2gK IGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3VmcmF3L3BhdGNoZXMvMDAyLWZpeF9hYnNfaW50 LnBhdGNoCiBkZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtncy91ZnJhdy9wYXRjaGVzLzAzX2ZpeC11 bnNpZ25lZC1jaGFyLnBhdGNoCiBkZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtncy91ZnJhdy9wYXRj aGVzL2V4aXYtMC4yNy5wYXRjaAogZGVsZXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvdWZyYXcvcGF0 Y2hlcy9nbGliLTIuNjgucGF0Y2gKIGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3VmcmF3L3Bh dGNoZXMvaW9zdHJlYW0ucGF0Y2gKIGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL3VmcmF3L3Rl bXBsYXRlCgpkaWZmIC0tZ2l0IGEvY29tbW9uL3RyYXZpcy9jaGFuZ2VkX3RlbXBsYXRlcy5zaCBi L2NvbW1vbi90cmF2aXMvY2hhbmdlZF90ZW1wbGF0ZXMuc2gKaW5kZXggOTFhZjFmMWEzYzFhOS4u MDc0Yzk5MWQzM2FmZSAxMDA3NTUKLS0tIGEvY29tbW9uL3RyYXZpcy9jaGFuZ2VkX3RlbXBsYXRl cy5zaAorKysgYi9jb21tb24vdHJhdmlzL2NoYW5nZWRfdGVtcGxhdGVzLnNoCkBAIC0yNCw1ICsy NCw2IEBAIGdpdCBkaWZmLXRyZWUgLXIgLS1uby1yZW5hbWVzIC0tbmFtZS1vbmx5IC0tZGlmZi1m aWx0ZXI9QU0gXAogCSIkYmFzZSIgIiR0aXAiIFwKIAktLSAnc3JjcGtncy8qL3RlbXBsYXRlJyB8 CiAJY3V0IC1kLyAtZiAyIHwKKwl4YXJncyAuL3hicHMtc3JjIHNvcnQtZGVwZW5kZW5jaWVzIHwK IAl0ZWUgL3RtcC90ZW1wbGF0ZXMgfAogCXNlZCAicy9eLyAgLyIgPiYyCmRpZmYgLS1naXQgYS9z cmNwa2dzL251ZnJhdy1naW1wIGIvc3JjcGtncy9udWZyYXctZ2ltcApuZXcgZmlsZSBtb2RlIDEy MDAwMAppbmRleCAwMDAwMDAwMDAwMDAwLi4wYmQxNDU5YjJhMTZmCi0tLSAvZGV2L251bGwKKysr IGIvc3JjcGtncy9udWZyYXctZ2ltcApAQCAtMCwwICsxIEBACitudWZyYXcKXCBObyBuZXdsaW5l IGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9zcmNwa2dzL251ZnJhdy9wYXRjaGVzLzAwMDEt bnVmcmF3LWdsaWItMi43MC5wYXRjaCBiL3NyY3BrZ3MvbnVmcmF3L3BhdGNoZXMvMDAwMS1udWZy YXctZ2xpYi0yLjcwLnBhdGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw MDAuLjQxZjEwYmZiYWZhMWYKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL251ZnJhdy9wYXRj aGVzLzAwMDEtbnVmcmF3LWdsaWItMi43MC5wYXRjaApAQCAtMCwwICsxLDIwIEBACitkaWZmIC1y dSBudWZyYXcvdWZfZ2xpYi5oIG51ZnJhdy91Zl9nbGliLmgKKy0tLSBudWZyYXcvdWZfZ2xpYi5o CTIwMjItMDItMjMgMDk6MDM6NDQuNzAwNDcyOTE5ICswMTAwCisrKysgbnVmcmF3L3VmX2dsaWIu aAkyMDIyLTAyLTIzIDA5OjA0OjUwLjI2MDMwODgwNSArMDEwMAorQEAgLTEzLDEzICsxMywxMyBA QAorICNpZm5kZWYgX1VGX0dMSUJfSAorICNkZWZpbmUgX1VGX0dMSUJfSAorIAorKyNpbmNsdWRl IDxnbGliLmg+CisrI2luY2x1ZGUgPGdsaWIvZ3N0ZGlvLmg+CisrCisgI2lmZGVmIF9fY3BsdXNw bHVzCisgZXh0ZXJuICJDIiB7CisgI2VuZGlmCisgCistI2luY2x1ZGUgPGdsaWIuaD4KKy0jaW5j bHVkZSA8Z2xpYi9nc3RkaW8uaD4KKy0KKyAvLyBnX3dpbjMyX2xvY2FsZV9maWxlbmFtZV9mcm9t X3V0ZjggaXMgbmVlZGVkIG9ubHkgb24gd2luMzIKKyAjaWZkZWYgX1dJTjMyCisgI2RlZmluZSB1 Zl93aW4zMl9sb2NhbGVfZmlsZW5hbWVfZnJvbV91dGY4KF9fc29tZV9zdHJpbmdfXykgXApkaWZm IC0tZ2l0IGEvc3JjcGtncy9udWZyYXcvcGF0Y2hlcy9leGl2LTAuMjgueC5kaWZmIGIvc3JjcGtn cy9udWZyYXcvcGF0Y2hlcy9leGl2LTAuMjgueC5kaWZmCm5ldyBmaWxlIG1vZGUgMTAwNjQ0Cmlu ZGV4IDAwMDAwMDAwMDAwMDAuLjZjMjMzNTliZjcwNmMKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNw a2dzL251ZnJhdy9wYXRjaGVzL2V4aXYtMC4yOC54LmRpZmYKQEAgLTAsMCArMSw1OSBAQAorUGF0 Y2ggdGFrZW4gZnJvbSBBVVIgcGFja2FnZTogaHR0cHM6Ly9hdXIuYXJjaGxpbnV4Lm9yZy9jZ2l0 L2F1ci5naXQvdHJlZS9leGl2Mi1lcnJvci5wYXRjaD9oPW51ZnJhdyZpZD0yOWU0NjdmMmMyOTdm Y2QwZjM2NTQ4NjQyZDZkMmNhYjY0MjhkMDhmCitkaWZmIC0tZ2l0IGEvbnVmcmF3X2V4aXYyLmNj IGIvbnVmcmF3X2V4aXYyLmNjCitpbmRleCAyZGU0Y2MzLi40NWFlYTg3IDEwMDY0NAorLS0tIGEv bnVmcmF3X2V4aXYyLmNjCisrKysgYi9udWZyYXdfZXhpdjIuY2MKK0BAIC01NCw3ICs1NCw3IEBA IGV4dGVybiAiQyIgaW50IG51ZnJhd19leGlmX3JlYWRfaW5wdXQobnVmcmF3X2RhdGEgKnVmKQor ICAgICAgICAgdWYtPmlucHV0RXhpZkJ1ZiA9IE5VTEw7CisgICAgICAgICB1Zi0+aW5wdXRFeGlm QnVmTGVuID0gMDsKKyAKKy0gICAgICAgIEV4aXYyOjpJbWFnZTo6QXV0b1B0ciBpbWFnZTsKKysg ICAgICAgIEV4aXYyOjpJbWFnZTo6VW5pcXVlUHRyIGltYWdlOworICAgICAgICAgaWYgKHVmLT51 bnppcHBlZEJ1ZiAhPSBOVUxMKSB7CisgICAgICAgICAgICAgaW1hZ2UgPSBFeGl2Mjo6SW1hZ2VG YWN0b3J5OjpvcGVuKAorICAgICAgICAgICAgICAgICAgICAgICAgIChjb25zdCBFeGl2Mjo6Ynl0 ZSopdWYtPnVuemlwcGVkQnVmLCB1Zi0+dW56aXBwZWRCdWZMZW4pOworQEAgLTEzNSw3ICsxMzUs NyBAQCBleHRlcm4gIkMiIGludCBudWZyYXdfZXhpZl9yZWFkX2lucHV0KG51ZnJhd19kYXRhICp1 ZikKKyAgICAgICAgIG51ZnJhd19tZXNzYWdlKE5VRlJBV19TRVRfTE9HLCAiJXNcbiIsIHN0ZGVy cm9yLnN0cigpLmNfc3RyKCkpOworIAorICAgICAgICAgcmV0dXJuIE5VRlJBV19TVUNDRVNTOwor LSAgICB9IGNhdGNoIChFeGl2Mjo6QW55RXJyb3ImIGUpIHsKKysgICAgfSBjYXRjaCAoRXhpdjI6 OkVycm9yJiBlKSB7CisgICAgICAgICBzdGQ6OmNlcnIucmRidWYoc2F2ZWNlcnIpOworICAgICAg ICAgc3RkOjpzdHJpbmcgcyhlLndoYXQoKSk7CisgICAgICAgICBudWZyYXdfbWVzc2FnZShOVUZS QVdfU0VUX1dBUk5JTkcsICIlc1xuIiwgcy5jX3N0cigpKTsKK0BAIC0xNTYsNyArMTU2LDcgQEAg c3RhdGljIEV4aXYyOjpFeGlmRGF0YSBudWZyYXdfcHJlcGFyZV9leGlmZGF0YShudWZyYXdfZGF0 YSAqdWYpCisgICAgICAgICBpZiAoKHBvcyA9IGV4aWZEYXRhLmZpbmRLZXkoRXhpdjI6OkV4aWZL ZXkoIkV4aWYuSW1hZ2UuT3JpZW50YXRpb24iKSkpCisgICAgICAgICAgICAgICAgICE9IGV4aWZE YXRhLmVuZCgpKSB7CisgICAgICAgICAgICAgbnVmcmF3X21lc3NhZ2UoTlVGUkFXX1NFVF9MT0cs ICJSZXNldHRpbmcgJXMgZnJvbSAnJWQnIHRvICcxJ1xuIiwKKy0gICAgICAgICAgICAgICAgICAg ICAgICAgIHBvcy0+a2V5KCkuY19zdHIoKSwgcG9zLT52YWx1ZSgpLnRvTG9uZygpKTsKKysgICAg ICAgICAgICAgICAgICAgICAgICAgIHBvcy0+a2V5KCkuY19zdHIoKSwgcG9zLT52YWx1ZSgpLnRv SW50NjQoKSk7CisgICAgICAgICAgICAgcG9zLT5zZXRWYWx1ZSgiMSIpOyAvKiAxID0gTm9ybWFs IG9yaWVudGF0aW9uICovCisgICAgICAgICB9CisgICAgIH0KK0BAIC0zMjcsNyArMzI3LDcgQEAg ZXh0ZXJuICJDIiBpbnQgbnVmcmF3X2V4aWZfcHJlcGFyZV9vdXRwdXQobnVmcmF3X2RhdGEgKnVm KQorICAgICAgICAgbnVmcmF3X21lc3NhZ2UoTlVGUkFXX1NFVF9MT0csICIlc1xuIiwgc3RkZXJy b3Iuc3RyKCkuY19zdHIoKSk7CisgCisgICAgICAgICByZXR1cm4gTlVGUkFXX1NVQ0NFU1M7Cist ICAgIH0gY2F0Y2ggKEV4aXYyOjpBbnlFcnJvciYgZSkgeworKyAgICB9IGNhdGNoIChFeGl2Mjo6 RXJyb3ImIGUpIHsKKyAgICAgICAgIHN0ZDo6Y2Vyci5yZGJ1ZihzYXZlY2Vycik7CisgICAgICAg ICBzdGQ6OnN0cmluZyBzKGUud2hhdCgpKTsKKyAgICAgICAgIG51ZnJhd19tZXNzYWdlKE5VRlJB V19TRVRfV0FSTklORywgIiVzXG4iLCBzLmNfc3RyKCkpOworQEAgLTM0Nyw3ICszNDcsNyBAQCBl eHRlcm4gIkMiIGludCBudWZyYXdfZXhpZl93cml0ZShudWZyYXdfZGF0YSAqdWYpCisgCisgICAg ICAgICBjaGFyICpmaWxlbmFtZSA9CisgICAgICAgICAgICAgdWZfd2luMzJfbG9jYWxlX2ZpbGVu YW1lX2Zyb21fdXRmOCh1Zi0+Y29uZi0+b3V0cHV0RmlsZW5hbWUpOworLSAgICAgICAgRXhpdjI6 OkltYWdlOjpBdXRvUHRyIGltYWdlID0gRXhpdjI6OkltYWdlRmFjdG9yeTo6b3BlbihmaWxlbmFt ZSk7CisrICAgICAgICBFeGl2Mjo6SW1hZ2U6OlVuaXF1ZVB0ciBpbWFnZSA9IEV4aXYyOjpJbWFn ZUZhY3Rvcnk6Om9wZW4oZmlsZW5hbWUpOworICAgICAgICAgdWZfd2luMzJfbG9jYWxlX2ZpbGVu YW1lX2ZyZWUoZmlsZW5hbWUpOworICAgICAgICAgYXNzZXJ0KGltYWdlLmdldCgpICE9IDApOwor IAorQEAgLTM2Nyw3ICszNjcsNyBAQCBleHRlcm4gIkMiIGludCBudWZyYXdfZXhpZl93cml0ZShu dWZyYXdfZGF0YSAqdWYpCisgICAgICAgICBudWZyYXdfbWVzc2FnZShOVUZSQVdfU0VUX0xPRywg IiVzXG4iLCBzdGRlcnJvci5zdHIoKS5jX3N0cigpKTsKKyAKKyAgICAgICAgIHJldHVybiBOVUZS QVdfU1VDQ0VTUzsKKy0gICAgfSBjYXRjaCAoRXhpdjI6OkFueUVycm9yJiBlKSB7CisrICAgIH0g Y2F0Y2ggKEV4aXYyOjpFcnJvciYgZSkgeworICAgICAgICAgc3RkOjpjZXJyLnJkYnVmKHNhdmVj ZXJyKTsKKyAgICAgICAgIHN0ZDo6c3RyaW5nIHMoZS53aGF0KCkpOworICAgICAgICAgbnVmcmF3 X21lc3NhZ2UoTlVGUkFXX1NFVF9XQVJOSU5HLCAiJXNcbiIsIHMuY19zdHIoKSk7CmRpZmYgLS1n aXQgYS9zcmNwa2dzL251ZnJhdy90ZW1wbGF0ZSBiL3NyY3BrZ3MvbnVmcmF3L3RlbXBsYXRlCm5l dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAuLjNlNWQ3ZDE5MGIzMzUKLS0t IC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL251ZnJhdy90ZW1wbGF0ZQpAQCAtMCwwICsxLDQ3IEBA CisjIFRlbXBsYXRlIGZpbGUgZm9yICdudWZyYXcnCitwa2duYW1lPW51ZnJhdwordmVyc2lvbj0w LjQzLjMKK3JldmlzaW9uPTEKK192ZXI9IiR7dmVyc2lvbiUuKn0tJHt2ZXJzaW9uIyMqLn0iCiti dWlsZF9zdHlsZT1nbnUtY29uZmlndXJlCitjb25maWd1cmVfYXJncz0iLS1lbmFibGUtY29udHJh c3QgLS1lbmFibGUtbWltZSAtLWVuYWJsZS1vcGVubXAgLS13aXRoLWdpbXAKKyAtLWVuYWJsZS1l eHRyYXMiCitob3N0bWFrZWRlcGVuZHM9InBrZy1jb25maWcgYXV0b21ha2UgbGlidG9vbCIKK21h a2VkZXBlbmRzPSJleGl2Mi1kZXZlbCBnaW1wLWRldmVsIGdsaWItZGV2ZWwgZ3RraW1hZ2V2aWV3 LWRldmVsIGxjbXMyLWRldmVsIGxlbnNmdW4tZGV2ZWwKKyBqYXNwZXItZGV2ZWwiCitkZXBlbmRz PSJkZXNrdG9wLWZpbGUtdXRpbHMiCitzaG9ydF9kZXNjPSJVdGlsaXR5IHRvIHJlYWQgYW5kIG1h bmlwdWxhdGUgcmF3IGltYWdlcyBmcm9tIGRpZ2l0YWwgY2FtZXJhcyIKK21haW50YWluZXI9Ikpv aG4gPG1lQGpvaG5ueW5hdG9yLmRldj4iCitsaWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyIgoraG9t ZXBhZ2U9Imh0dHBzOi8vc291cmNlZm9yZ2UubmV0L3Byb2plY3RzL251ZnJhdy8iCitkaXN0Zmls ZXM9IiR7U09VUkNFRk9SR0VfU0lURX0vbnVmcmF3L251ZnJhdy0ke192ZXJ9LnRhci5neiIKK2No ZWNrc3VtPTJjN2RjYzE1OTA5OTNlYzI2N2IzMTEyNTYyYjI0MzMwMTBkNmY5NGY2YWNjNjUwNmM3 NmFhMjljZjhjNmMzMmMKKworcHJlX2NvbmZpZ3VyZSgpIHsKKwlhdXRvcmVjb25mIC1maQorfQor CitwcmVfYnVpbGQoKSB7CisJbXYgbnVmcmF3LmRlc2t0b3B7LmRlc2t0b3AsfQorCWNobW9kICt4 IGdlbmVyYXRlX3NjaGVtYXMuc2gKK30KKworbnVmcmF3LWdpbXBfcGFja2FnZSgpIHsKKwlkZXBl bmRzPSIke3NvdXJjZXBrZ30+PSR7dmVyc2lvbn1fJHtyZXZpc2lvbn0iCisJc2hvcnRfZGVzYys9 IiAtIGdpbXAgcGx1Z2luIgorCXBrZ19pbnN0YWxsKCkgeworCQl2bW92ZSB1c3IvbGliL2dpbXAK Kwl9Cit9CisKK3VmcmF3X3BhY2thZ2UoKSB7CisJZGVwZW5kcz0iJHtzb3VyY2Vwa2d9Pj0ke3Zl cnNpb259XyR7cmV2aXNpb259IgorCWJ1aWxkX3N0eWxlPW1ldGEKKwlzaG9ydF9kZXNjKz0iICh0 cmFuc2l0aW9uYWwgZHVtbXkgcGFja2FnZSkiCit9CisKK3VmcmF3LWdpbXBfcGFja2FnZSgpIHsK KwlkZXBlbmRzPSJudWZyYXctZ2ltcD49JHt2ZXJzaW9ufV8ke3JldmlzaW9ufSIKKwlidWlsZF9z dHlsZT1tZXRhCisJc2hvcnRfZGVzYys9IiAtIGdpbXAgcGx1Z2luICh0cmFuc2l0aW9uYWwgZHVt bXkgcGFja2FnZSkiCit9CmRpZmYgLS1naXQgYS9zcmNwa2dzL3JlbW92ZWQtcGFja2FnZXMvdGVt cGxhdGUgYi9zcmNwa2dzL3JlbW92ZWQtcGFja2FnZXMvdGVtcGxhdGUKaW5kZXggYWJlZGYyNmY3 MzliNi4uZjNkODFhOGFmZTA0YyAxMDA2NDQKLS0tIGEvc3JjcGtncy9yZW1vdmVkLXBhY2thZ2Vz L3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvcmVtb3ZlZC1wYWNrYWdlcy90ZW1wbGF0ZQpAQCAtMSw2 ICsxLDYgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ3JlbW92ZWQtcGFja2FnZXMnCiBwa2duYW1l PXJlbW92ZWQtcGFja2FnZXMKLXZlcnNpb249MC4xLjIwMjMxMDE5Cit2ZXJzaW9uPTAuMS4yMDIz MTEwMQogcmV2aXNpb249MQogYnVpbGRfc3R5bGU9bWV0YQogc2hvcnRfZGVzYz0iVW5pbnN0YWxs cyBwYWNrYWdlcyByZW1vdmVkIGZyb20gcmVwb3NpdG9yeSIKQEAgLTU5MCw4ICs1OTAsOCBAQCBy ZXBsYWNlcz0iCiAgcHl0aG9uMy1GbGFzay1Bc3NldHM8PTAuMTJfOQogIHB5dGhvbjMtRmxhc2st TWFpbDw9MC45LjFfNQogIHB5dGhvbjMtRmxhc2stT0F1dGhsaWI8PTAuOS42XzQKLSBweXRob24z LUZsYXNrLVNjcmlwdDw9Mi4wLjZfNwogIHB5dGhvbjMtRmxhc2stU1FMQWxjaGVteTw9Mi41LjFf NAorIHB5dGhvbjMtRmxhc2stU2NyaXB0PD0yLjAuNl83CiAgcHl0aG9uMy1GbGFzay1Vc2VyPD0x LjAuMi4yXzYKICBweXRob24zLVNQQVJRTFdyYXBwZXI8PTEuOC40XzQKICBweXRob24zLWFpb2h0 dHAtY29yczI8PTAuNy4wXzMKQEAgLTY0Miw4ICs2NDIsOCBAQCByZXBsYWNlcz0iCiAgcmF1bC1k ZXZlbDw9MC44LjBfNgogIHJhdWw8PTAuOC4wXzYKICByZWRraXRlPD0xLjMuMV8xCi0gcmVtPD0y LjEwLjBfMQogIHJlbS1kZXZlbDw9Mi4xMC4wXzEKKyByZW08PTIuMTAuMF8xCiAgcmVtaW5pc2Nl bmNlPD0wLjQuNl8xCiAgcmt0LXN0YWdlMS1jb3Jlb3M8PTEuMzAuMF8zCiAgcmt0LXN0YWdlMS1m bHk8PTEuMzAuMF8zCkBAIC02NzUsNiArNjc1LDggQEAgcmVwbGFjZXM9IgogIHRyYXZlcnNvPD0w LjQ5LjZfMgogIHR0eWxvYWQtZ2l0PD0yMDE0MTExN180CiAgdHV4Yzw9MS4xXzMKKyB1ZnJhdy1n aW1wPD0wLjIyXzUKKyB1ZnJhdzw9MC4yMl81CiAgdW5pY29ybi1weXRob248PTEuMC4yXzIKICB1 cHdvcms8PTUuNi4xMC4wXzEKICB1cmxtYXRjaC1naXQ8PTIwMTQxMTE2XzIKZGlmZiAtLWdpdCBh L3NyY3BrZ3MvdWZyYXcgYi9zcmNwa2dzL3VmcmF3Cm5ldyBmaWxlIG1vZGUgMTIwMDAwCmluZGV4 IDAwMDAwMDAwMDAwMDAuLjBiZDE0NTliMmExNmYKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dz L3VmcmF3CkBAIC0wLDAgKzEgQEAKK251ZnJhdwpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUK ZGlmZiAtLWdpdCBhL3NyY3BrZ3MvdWZyYXctZ2ltcCBiL3NyY3BrZ3MvdWZyYXctZ2ltcAppbmRl eCA5NjdkYzkwMmRkMDJiLi4wYmQxNDU5YjJhMTZmIDEyMDAwMAotLS0gYS9zcmNwa2dzL3VmcmF3 LWdpbXAKKysrIGIvc3JjcGtncy91ZnJhdy1naW1wCkBAIC0xICsxIEBACi11ZnJhdwpcIE5vIG5l d2xpbmUgYXQgZW5kIG9mIGZpbGUKK251ZnJhdwpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUK ZGlmZiAtLWdpdCBhL3NyY3BrZ3MvdWZyYXcvcGF0Y2hlcy8wMDEtbm8tZ2ltcC1yZW1vdGUucGF0 Y2ggYi9zcmNwa2dzL3VmcmF3L3BhdGNoZXMvMDAxLW5vLWdpbXAtcmVtb3RlLnBhdGNoCmRlbGV0 ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCBjYTRmNGJlYjYyNDBmLi4wMDAwMDAwMDAwMDAwCi0t LSBhL3NyY3BrZ3MvdWZyYXcvcGF0Y2hlcy8wMDEtbm8tZ2ltcC1yZW1vdGUucGF0Y2gKKysrIC9k ZXYvbnVsbApAQCAtMSwxMiArMCwwIEBACi1Eb24ndCB1c2UgZ2ltcC1yZW1vdGUgc2luY2UgZ2lt cCAyLjQgYWxyZWFkeSBpbmNsdWRlcyBnaW1wLXJlbW90ZSBmdW5jdGlvbmFsaXR5Ci0tLS0gYS91 ZnJhd19jb25mLmMKLSsrKyBiL3VmcmF3X2NvbmYuYwotQEAgLTEzNyw3ICsxMzcsNyBAQAotICNl bGlmIEhBVkVfR0lNUF8yXzQKLSAgICAgImdpbXAiLCAvKiByZW1vdGVHaW1wQ29tbWFuZCAqLwot ICNlbHNlCi0tICAgICJnaW1wLXJlbW90ZSIsIC8qIHJlbW90ZUdpbXBDb21tYW5kICovCi0rICAg ICJnaW1wIiwgLyogcmVtb3RlR2ltcENvbW1hbmQgKi8KLSAjZW5kaWYKLSAKLSAgICAgLyogRVhJ RiBkYXRhICovCmRpZmYgLS1naXQgYS9zcmNwa2dzL3VmcmF3L3BhdGNoZXMvMDAyLWZpeF9hYnNf aW50LnBhdGNoIGIvc3JjcGtncy91ZnJhdy9wYXRjaGVzLzAwMi1maXhfYWJzX2ludC5wYXRjaApk ZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNmZjNTUyNzY5YzlmOC4uMDAwMDAwMDAwMDAw MAotLS0gYS9zcmNwa2dzL3VmcmF3L3BhdGNoZXMvMDAyLWZpeF9hYnNfaW50LnBhdGNoCisrKyAv ZGV2L251bGwKQEAgLTEsMTEgKzAsMCBAQAotLS0tIGEvZGNyYXcuY2MJMjAxNS0wNi0xNiAwNTo1 ODozOC4wMDAwMDAwMDAgKzAyMDAKLSsrKyBiL2RjcmF3LmNjCTIwMTgtMDItMDQgMTQ6NDY6NTQu NDg5OTUxMDc2ICswMTAwCi1AQCAtOTI0Miw3ICs5MjQyLDcgQEAKLSAgICAgaWYgKG1ha2VbMF0g PT0gJ08nKSB7Ci0gICAgICAgaSA9IGZpbmRfZ3JlZW4gKDEyLCAzMiwgMTE4ODg2NCwgMzU3Njgz Mik7Ci0gICAgICAgYyA9IGZpbmRfZ3JlZW4gKDEyLCAzMiwgMjM4MzkyMCwgMjM4NzAxNik7Ci0t ICAgICAgaWYgKGFicyhpKSA8IGFicyhjKSkgewotKyAgICAgIGlmIChhYnMoKGludClpKSA8IGFi cygoaW50KWMpKSB7Ci0gCVNXQVAoaSxjKTsKLSAJbG9hZF9mbGFncyA9IDI0OwotICAgICAgIH0K ZGlmZiAtLWdpdCBhL3NyY3BrZ3MvdWZyYXcvcGF0Y2hlcy8wM19maXgtdW5zaWduZWQtY2hhci5w YXRjaCBiL3NyY3BrZ3MvdWZyYXcvcGF0Y2hlcy8wM19maXgtdW5zaWduZWQtY2hhci5wYXRjaApk ZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggODY5MGY4N2NhN2Q1OS4uMDAwMDAwMDAwMDAw MAotLS0gYS9zcmNwa2dzL3VmcmF3L3BhdGNoZXMvMDNfZml4LXVuc2lnbmVkLWNoYXIucGF0Y2gK KysrIC9kZXYvbnVsbApAQCAtMSwxNCArMCwwIEBACi1Tb3VyY2U6IHdyaXR0ZW4gYnkgSm9obiBQ YXVsIEFkcmlhbiBHbGF1Yml0eiBmb3IgRGViaWFuCi1VcHN0cmVhbTogaHR0cHM6Ly9zb3VyY2Vm b3JnZS5uZXQvcC91ZnJhdy9idWdzLzQxNwotUmVhc29uOiBmaXhlcyBhIGNvbXBpbGF0aW9uIGZh aWx1cmUgb24gYXJtIGFyY2hpdGVjdHVyZXMKLS0tLSBhL2RjcmF3LmNjCi0rKysgYi9kY3Jhdy5j YwotQEAgLTIyODUsNyArMjI4NSw3IEBAIHZvaWQgQ0xBU1MgcXVpY2t0YWtlXzEwMF9sb2FkX3Jh dygpCi0gCi0gdm9pZCBDTEFTUyBrb2Rha19yYWRjX2xvYWRfcmF3KCkKLSB7Ci0tICBzdGF0aWMg Y29uc3QgY2hhciBzcmNbXSA9IHsKLSsgIHN0YXRpYyBjb25zdCBzaWduZWQgY2hhciBzcmNbXSA9 IHsKLSAgICAgMSwxLCAyLDMsIDMsNCwgNCwyLCA1LDcsIDYsNSwgNyw2LCA3LDgsCi0gICAgIDEs MCwgMiwxLCAzLDMsIDQsNCwgNSwyLCA2LDcsIDcsNiwgOCw1LCA4LDgsCi0gICAgIDIsMSwgMiwz LCAzLDAsIDMsMiwgMyw0LCA0LDYsIDUsNSwgNiw3LCA2LDgsCmRpZmYgLS1naXQgYS9zcmNwa2dz L3VmcmF3L3BhdGNoZXMvZXhpdi0wLjI3LnBhdGNoIGIvc3JjcGtncy91ZnJhdy9wYXRjaGVzL2V4 aXYtMC4yNy5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggYjViNDE0MGZmZjhl ZC4uMDAwMDAwMDAwMDAwMAotLS0gYS9zcmNwa2dzL3VmcmF3L3BhdGNoZXMvZXhpdi0wLjI3LnBh dGNoCisrKyAvZGV2L251bGwKQEAgLTEsMjUgKzAsMCBAQAotLS0tIGEvdWZyYXdfZXhpdjIuY2MJ MjAxNS0wNi0xNiAwNTo1ODozOC4wMDAwMDAwMDAgKzAyMDAKLSsrKyBiL3VmcmF3X2V4aXYyLmNj CTIwMTgtMTItMjkgMjI6NTE6MjMuMjkxODk0NDMwICswMTAwCi1AQCAtMTUsOSArMTUsNyBAQAot ICNpbmNsdWRlICJ1ZnJhdy5oIgotIAotICNpZmRlZiBIQVZFX0VYSVYyCi0tI2luY2x1ZGUgPGV4 aXYyL2ltYWdlLmhwcD4KLS0jaW5jbHVkZSA8ZXhpdjIvZWFzeWFjY2Vzcy5ocHA+Ci0tI2luY2x1 ZGUgPGV4aXYyL2V4aWYuaHBwPgotKyNpbmNsdWRlIDxleGl2Mi9leGl2Mi5ocHA+Ci0gI2luY2x1 ZGUgPHNzdHJlYW0+Ci0gI2luY2x1ZGUgPGNhc3NlcnQ+Ci0gCi1AQCAtNjcsNyArNjUsMTEgQEAK LSAgICAgICAgIGlmIChleGlmRGF0YS5lbXB0eSgpKSB7Ci0gICAgICAgICAgICAgc3RkOjpzdHJp bmcgZXJyb3IodWYtPmZpbGVuYW1lKTsKLSAgICAgICAgICAgICBlcnJvciArPSAiOiBObyBFeGlm IGRhdGEgZm91bmQgaW4gdGhlIGZpbGUiOwotKyNpZiBFWElWMl9URVNUX1ZFUlNJT04oMCwyNyww KQotKyAgICAgICAgICAgIHRocm93IEV4aXYyOjpFcnJvcihFeGl2Mjo6a2VyRXJyb3JNZXNzYWdl LCBlcnJvcik7Ci0rI2Vsc2UKLSAgICAgICAgICAgICB0aHJvdyBFeGl2Mjo6RXJyb3IoMSwgZXJy b3IpOwotKyNlbmRpZgotICAgICAgICAgfQotIAotICAgICAgICAgLyogTGlzdCBvZiB0YWcgbmFt ZXMgdGFrZW4gZnJvbSBleGl2MidzIHByaW50U3VtbWFyeSgpIGluIGFjdGlvbnMuY3BwICovCmRp ZmYgLS1naXQgYS9zcmNwa2dzL3VmcmF3L3BhdGNoZXMvZ2xpYi0yLjY4LnBhdGNoIGIvc3JjcGtn cy91ZnJhdy9wYXRjaGVzL2dsaWItMi42OC5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQK aW5kZXggNWI2MTQ2OGYxMThhYS4uMDAwMDAwMDAwMDAwMAotLS0gYS9zcmNwa2dzL3VmcmF3L3Bh dGNoZXMvZ2xpYi0yLjY4LnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEsMzAgKzAsMCBAQAotRnJv bSBjNTZmOGJlM2NhZjFjZjNkOWE1YzgwNTk3YmRiYWYxMzI1ZmFhY2MwIE1vbiBTZXAgMTcgMDA6 MDA6MDAgMjAwMQotRnJvbTogPT9VVEYtOD9xP1M9QzM9QTlyZ2lvPTIwTT0yRT0yMEJhc3RvPz0g PHNlcmdpb0BzZXJqdXguY29tPgotRGF0ZTogVHVlLCAxMyBBcHIgMjAyMSAyMzo0NTozOSArMDEw MAotU3ViamVjdDogW1BBVENIXSBGaXggYnVpbGQgYWdhaW5zdCBnbGliLTIuNjggZml4ZXMgIzEw Ci0KLS0tLQotIHVmX2dsaWIuaCB8IDYgKysrLS0tCi0gMSBmaWxlIGNoYW5nZWQsIDMgaW5zZXJ0 aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKLQotZGlmZiAtLWdpdCBhL3VmX2dsaWIuaCBiL3VmX2ds aWIuaAotaW5kZXggMjFjMTBiMTkuLjU2Y2Q2OTcxIDEwMDY0NAotLS0tIGEvdWZfZ2xpYi5oCi0r KysgYi91Zl9nbGliLmgKLUBAIC0xMywxMyArMTMsMTMgQEAKLSAjaWZuZGVmIF9VRl9HTElCX0gK LSAjZGVmaW5lIF9VRl9HTElCX0gKLSAKLSsjaW5jbHVkZSA8Z2xpYi5oPgotKyNpbmNsdWRlIDxn bGliL2dzdGRpby5oPgotKwotICNpZmRlZiBfX2NwbHVzcGx1cwotIGV4dGVybiAiQyIgewotICNl bmRpZgotIAotLSNpbmNsdWRlIDxnbGliLmg+Ci0tI2luY2x1ZGUgPGdsaWIvZ3N0ZGlvLmg+Ci0t Ci0gLy8gZ193aW4zMl9sb2NhbGVfZmlsZW5hbWVfZnJvbV91dGY4IGlzIG5lZWRlZCBvbmx5IG9u IHdpbjMyCi0gI2lmZGVmIF9XSU4zMgotICNkZWZpbmUgdWZfd2luMzJfbG9jYWxlX2ZpbGVuYW1l X2Zyb21fdXRmOChfX3NvbWVfc3RyaW5nX18pIFwKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvdWZyYXcv cGF0Y2hlcy9pb3N0cmVhbS5wYXRjaCBiL3NyY3BrZ3MvdWZyYXcvcGF0Y2hlcy9pb3N0cmVhbS5w YXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggNmQxNTg2OWY2M2RiOC4uMDAwMDAw MDAwMDAwMAotLS0gYS9zcmNwa2dzL3VmcmF3L3BhdGNoZXMvaW9zdHJlYW0ucGF0Y2gKKysrIC9k ZXYvbnVsbApAQCAtMSwxMyArMCwwIEBACi11ZnJhd19leGl2Mi5jYzozNDM6MTA6IG5vdGU6ICdz dGQ6OmNlcnInIGlzIGRlZmluZWQgaW4gaGVhZGVyICc8aW9zdHJlYW0+JwotdWZyYXdfZXhpdjIu Y2M6MzY1OjE0OiBlcnJvcjogJ2NlcnInIGlzIG5vdCBhIG1lbWJlciBvZiAnc3RkJwotCi0tLS0g YS91ZnJhd19leGl2Mi5jYwotKysrIGIvdWZyYXdfZXhpdjIuY2MKLUBAIC0xNyw2ICsxNyw3IEBA Ci0gI2lmZGVmIEhBVkVfRVhJVjIKLSAjaW5jbHVkZSA8ZXhpdjIvZXhpdjIuaHBwPgotICNpbmNs dWRlIDxzc3RyZWFtPgotKyNpbmNsdWRlIDxpb3N0cmVhbT4KLSAjaW5jbHVkZSA8Y2Fzc2VydD4K LSAKLSAvKgpkaWZmIC0tZ2l0IGEvc3JjcGtncy91ZnJhdy90ZW1wbGF0ZSBiL3NyY3BrZ3MvdWZy YXcvdGVtcGxhdGUKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGNlZGRjYWNhY2VmYjIu LjAwMDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtncy91ZnJhdy90ZW1wbGF0ZQorKysgL2Rldi9udWxs CkBAIC0xLDM4ICswLDAgQEAKLSMgVGVtcGxhdGUgZmlsZSBmb3IgJ3VmcmF3JwotcGtnbmFtZT11 ZnJhdwotdmVyc2lvbj0wLjIyCi1yZXZpc2lvbj01Ci1idWlsZF9zdHlsZT1nbnUtY29uZmlndXJl Ci1jb25maWd1cmVfYXJncz0iLS1lbmFibGUtY29udHJhc3QgLS1lbmFibGUtbWltZSAtLWVuYWJs ZS1vcGVubXAgLS13aXRoLWdpbXAKLSAkKHZvcHRfZW5hYmxlIGV4dHJhcykiCi1ob3N0bWFrZWRl cGVuZHM9InBrZy1jb25maWcgZGNyYXcgZ2V0dGV4dCIKLW1ha2VkZXBlbmRzPSJleGl2Mi1kZXZl bCBnaW1wLWRldmVsIGdsaWItZGV2ZWwgZ3RraW1hZ2V2aWV3LWRldmVsIGxjbXMyLWRldmVsIGxl bnNmdW4tZGV2ZWwKLSBqYXNwZXItZGV2ZWwiCi1kZXBlbmRzPSJkZXNrdG9wLWZpbGUtdXRpbHMi Ci1zaG9ydF9kZXNjPSJVdGlsaXR5IHRvIHJlYWQgYW5kIG1hbmlwdWxhdGUgcmF3IGltYWdlcyBm cm9tIGRpZ2l0YWwgY2FtZXJhcyIKLW1haW50YWluZXI9IkpvaG4gPG1lQGpvaG5ueW5hdG9yLmRl dj4iCi1saWNlbnNlPSJHUEwtMi4wLW9yLWxhdGVyIgotaG9tZXBhZ2U9Imh0dHA6Ly91ZnJhdy5z b3VyY2Vmb3JnZS5uZXQvIgotZGlzdGZpbGVzPSIke1NPVVJDRUZPUkdFX1NJVEV9L3VmcmF3L3Vm cmF3L3VmcmF3LSR7dmVyc2lvbn0vdWZyYXctJHt2ZXJzaW9ufS50YXIuZ3oiCi1jaGVja3N1bT1m N2FiZDI4Y2U1ODdkYjJhNzRiNGM1NDE0OWJkOGEyNTIzYTdkZGMwOWJlZGY0ZjkyMzI0NmZmMGFl MDlhMjVlCi0KLWJ1aWxkX29wdGlvbnM9ImV4dHJhcyIKLQotcG9zdF9wYXRjaCgpIHsKLQl2c2Vk IC1lICdzL2RlZmF1bHQobm9uZSkvL2cnIFwKLQkJLWkgZGNyYXdfaW5kaS5jIFwKLQkJLWkgZGNy YXdfYXBpLmNjIFwKLQkJLWkgdWZyYXdfdWZyYXcuYyBcCi0JCS1pIHVmcmF3X2RldmVsb3Blci5j Ci0JdnNlZCAtaSAtZSAnL0RBVEFESVJOQU1FPS9zLz0uKi89c2hhcmUvJyBjb25maWd1cmUKLQl2 c2VkIC1pIC1lICJzLF5sb2NhbGVkaXIgPS4qLGxvY2FsZWRpciA9IC91c3Ivc2hhcmUvbG9jYWxl LCIgXAotCQlwby9NYWtlZmlsZS5pbi5pbgotfQotCi11ZnJhdy1naW1wX3BhY2thZ2UoKSB7Ci0J ZGVwZW5kcz0iJHtzb3VyY2Vwa2d9Pj0ke3ZlcnNpb259XyR7cmV2aXNpb259IgotCXNob3J0X2Rl c2MrPSIgLSBnaW1wIHBsdWdpbiIKLQlwa2dfaW5zdGFsbCgpIHsKLQkJdm1vdmUgdXNyL2xpYi9n aW1wCi0JfQotfQo= --===============8164975111659637032==--