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 2660 invoked from network); 22 May 2020 11:50:48 -0000 Received: from localhost (HELO inbox.vuxu.org) (::1) by localhost with ESMTPUTF8; 22 May 2020 11:50:48 -0000 Content-Type: multipart/mixed; boundary="===============0376839380519083880==" MIME-Version: 1.0 Subject: =?utf8?q?Re=3A_=5BPR_PATCH=5D_=5BUpdated=5D_openshot=2C_libopenshot_and_libopenshot-audio_update?= To: ml@inbox.vuxu.org From: m3tav3rse Reply-to: ml@inbox.vuxu.org In-Reply-To: References: Date: Fri, 22 May 2020 13:50:47 +0200 List-Id: Message-ID: <20200522115047.VcSws4sNDF8Hmf5LTG_dLX2rmKv9HasAoCsOeEarS8A@z> GitHub notification mails are now in MIME to allow UTF8. --===============0376839380519083880== Content-Type: text/plain; charset="utf8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 VGhlcmUgaXMgYW4gdXBkYXRlZCBwdWxsIHJlcXVlc3QgYnkgbTN0YXYzcnNlIGFnYWluc3QgbWFz dGVyIG9uIHRoZSB2b2lkLXBhY2thZ2VzIHJlcG9zaXRvcnkKCmh0dHBzOi8vZ2l0aHViLmNvbS9t M3RhdjNyc2Uvdm9pZC1wYWNrYWdlcyBvcGVuc2hvdC11cGRhdGUKaHR0cHM6Ly9naXRodWIuY29t L3ZvaWQtbGludXgvdm9pZC1wYWNrYWdlcy9wdWxsLzIyMTk2CgpvcGVuc2hvdCwgbGlib3BlbnNo b3QgYW5kIGxpYm9wZW5zaG90LWF1ZGlvIHVwZGF0ZQpTdXBlcnNlZGVzICMyMDczMy4NCkluY2x1 ZGVzIGZpeCBmb3IgYXJjaGl0ZWN0dXJlcyB3aXRob3V0IGF0b21pYzguDQoKCkEgcGF0Y2ggZmls ZSBmcm9tIGh0dHBzOi8vZ2l0aHViLmNvbS92b2lkLWxpbnV4L3ZvaWQtcGFja2FnZXMvcHVsbC8y MjE5Ni5wYXRjaCBpcyBhdHRhY2hlZA== --===============0376839380519083880== Content-Type: text/x-diff MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="github-pr-openshot-update-22196.patch" RnJvbSBkZDY2YWQzNmRmNjVlNzM1Yzk3OTFjOTcwZjU0MmM0MDdjMjQ1OWQwIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBjcmF0ZXIyMTUwIDxjcmF0ZXJAcXdlcnR5dWlvcC5kZT4KRGF0 ZTogU3VuLCA1IEFwciAyMDIwIDIxOjM4OjA0ICswMjAwClN1YmplY3Q6IFtQQVRDSCAxLzNdIGxp Ym9wZW5zaG90LWF1ZGlvOiB1cGRhdGUgdG8gMC4yLjAKCi0tLQogY29tbW9uL3NobGlicyAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAyICsKIC4uLi9wYXRjaGVzL2ZpeC1zdGRf aXNmaW5pdGUucGF0Y2ggICAgICAgICAgICB8ICAyMyAtLS0KIHNyY3BrZ3MvbGlib3BlbnNob3Qt YXVkaW8vcGF0Y2hlcy9nY2M5LnBhdGNoICB8IDEzNiAtLS0tLS0tLS0tLS0tLS0tLS0KIHNyY3Br Z3MvbGlib3BlbnNob3QtYXVkaW8vdGVtcGxhdGUgICAgICAgICAgICB8ICAxMSArLQogNCBmaWxl cyBjaGFuZ2VkLCAxMCBpbnNlcnRpb25zKCspLCAxNjIgZGVsZXRpb25zKC0pCiBkZWxldGUgbW9k ZSAxMDA2NDQgc3JjcGtncy9saWJvcGVuc2hvdC1hdWRpby9wYXRjaGVzL2ZpeC1zdGRfaXNmaW5p dGUucGF0Y2gKIGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL2xpYm9wZW5zaG90LWF1ZGlvL3Bh dGNoZXMvZ2NjOS5wYXRjaAoKZGlmZiAtLWdpdCBhL2NvbW1vbi9zaGxpYnMgYi9jb21tb24vc2hs aWJzCmluZGV4IDQ3N2NlNWYyZDNmLi5iMDdhNDI2NmJmZSAxMDA2NDQKLS0tIGEvY29tbW9uL3No bGlicworKysgYi9jb21tb24vc2hsaWJzCkBAIC0yNDk3LDYgKzI0OTcsOCBAQCBsaWJnZXMtMS4w LnNvLjAgZ3N0MS1lZGl0aW5nLXNlcnZpY2VzLTEuNi4yXzEKIGxpYnlrbmVvbWdyLnNvLjAgbGli eWtuZW9tZ3ItMC4xLjhfMQogbGlib3BlbnNob3Quc28uMTcgbGlib3BlbnNob3QtMC4yLjNfMQog bGlib3BlbnNob3QtYXVkaW8uc28uNiBsaWJvcGVuc2hvdC1hdWRpby0wLjEuNV8xCitsaWJvcGVu c2hvdC1hdWRpby5zby43IGxpYm9wZW5zaG90LWF1ZGlvLTAuMi4wXzEKK2xpYm9wZW5zaG90LnNv LjE5IGxpYm9wZW5zaG90LTAuMi41XzMKIGxpYnBxeHgtNi4zLnNvIGxpYnBxeHgtNi4zLjNfMQog bGlibmRwaS5zby4xIG5kcGktMS42XzEKIGxpYmxvZy5zbyBhbmRyb2lkLXN0dWRpby0zLjAuMV8x CmRpZmYgLS1naXQgYS9zcmNwa2dzL2xpYm9wZW5zaG90LWF1ZGlvL3BhdGNoZXMvZml4LXN0ZF9p c2Zpbml0ZS5wYXRjaCBiL3NyY3BrZ3MvbGlib3BlbnNob3QtYXVkaW8vcGF0Y2hlcy9maXgtc3Rk X2lzZmluaXRlLnBhdGNoCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAyMzFmMTgzZDVh Ny4uMDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtncy9saWJvcGVuc2hvdC1hdWRpby9wYXRjaGVzL2Zp eC1zdGRfaXNmaW5pdGUucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSwyMyArMCwwIEBACi1GaXgg Zm9yIGdjYzYgd2hpY2ggZG9lcyBub3QgaGF2ZSBzdGQ6OmlzZmluaXRlKCkgYnV0IHN1Z2dlc3Rz Ci10byB1c2Ugc3RkOjpmaW5pdGUoKSBpbnN0ZWFkLgotCi0tLS0gSnVjZUxpYnJhcnlDb2RlL21v ZHVsZXMvanVjZV9jb3JlL21hdGhzL2p1Y2VfTWF0aHNGdW5jdGlvbnMuaAkyMDE2LTA4LTMwIDA2 OjI0OjI3LjAwMDAwMDAwMCArMDIwMAotKysrIEp1Y2VMaWJyYXJ5Q29kZS9tb2R1bGVzL2p1Y2Vf Y29yZS9tYXRocy9qdWNlX01hdGhzRnVuY3Rpb25zLmgJMjAxNi0xMi0xMiAxNDozMzoyOS4xNzAw MDU1NzYgKzAxMDAKLUBAIC0zODEsNyArMzgxLDcgQEAKLSAgICAjaWYgSlVDRV9XSU5ET1dTICYm ICFKVUNFX01JTkdXDQotICAgICByZXR1cm4gX2Zpbml0ZSAodmFsdWUpICE9IDA7DQotICAgICNl bHNlDQotLSAgICByZXR1cm4gc3RkOjppc2Zpbml0ZSAodmFsdWUpOw0KLSsgICAgcmV0dXJuIGZp bml0ZSAodmFsdWUpOw0KLSAgICAjZW5kaWYNCi0gfQ0KLSANCi1AQCAtMzkxLDcgKzM5MSw3IEBA Ci0gICAgI2lmIEpVQ0VfV0lORE9XUyAmJiAhSlVDRV9NSU5HVw0KLSAgICAgcmV0dXJuIF9maW5p dGUgKHZhbHVlKSAhPSAwOw0KLSAgICAjZWxzZQ0KLS0gICAgcmV0dXJuIHN0ZDo6aXNmaW5pdGUg KHZhbHVlKTsNCi0rICAgIHJldHVybiBmaW5pdGUgKHZhbHVlKTsNCi0gICAgI2VuZGlmDQotIH0N Ci0gDQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9saWJvcGVuc2hvdC1hdWRpby9wYXRjaGVzL2djYzku cGF0Y2ggYi9zcmNwa2dzL2xpYm9wZW5zaG90LWF1ZGlvL3BhdGNoZXMvZ2NjOS5wYXRjaApkZWxl dGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZDJhY2JkMjkyYzguLjAwMDAwMDAwMDAwCi0tLSBh L3NyY3BrZ3MvbGlib3BlbnNob3QtYXVkaW8vcGF0Y2hlcy9nY2M5LnBhdGNoCisrKyAvZGV2L251 bGwKQEAgLTEsMTM2ICswLDAgQEAKLWNvbW1pdCBmYTBlNGVmMWM0OTY5YWMxZjZjNTRkMzA2ZTY2 YjI3YTMxZGE1Yjg3Ci1BdXRob3I6IHE2NiA8ZGFuaWVsQG9jdGFmb3JnZS5vcmc+Ci1EYXRlOiAg IE1vbiBEZWMgMjMgMTg6MjM6MjggMjAxOSArMDEwMAotCi0gICAgZml4IGJ1aWxkIHdpdGggZ2Nj OQotICAgIAotICAgIEFkYXB0ZWQgZnJvbSB1cHN0cmVhbS4KLQotZGlmZiAtLWdpdCBKdWNlTGli cmFyeUNvZGUvbW9kdWxlcy9qdWNlX2dyYXBoaWNzL2NvbG91ci9qdWNlX1BpeGVsRm9ybWF0cy5o IEp1Y2VMaWJyYXJ5Q29kZS9tb2R1bGVzL2p1Y2VfZ3JhcGhpY3MvY29sb3VyL2p1Y2VfUGl4ZWxG b3JtYXRzLmgKLWluZGV4IDBkZjU5ODcuLmVhMmU5OTAgMTAwNjQ0Ci0tLS0gSnVjZUxpYnJhcnlD b2RlL21vZHVsZXMvanVjZV9ncmFwaGljcy9jb2xvdXIvanVjZV9QaXhlbEZvcm1hdHMuaAotKysr IEp1Y2VMaWJyYXJ5Q29kZS9tb2R1bGVzL2p1Y2VfZ3JhcGhpY3MvY29sb3VyL2p1Y2VfUGl4ZWxG b3JtYXRzLmgKLUBAIC0xMDgsMTkgKzEwOCw2IEBAIHB1YmxpYzoKLSAgICAgZm9yY2VkaW5saW5l IHVpbnQ4IGdldEdyZWVuKCkgY29uc3Qgbm9leGNlcHQgICAgICB7IHJldHVybiBjb21wb25lbnRz Lmc7IH0NCi0gICAgIGZvcmNlZGlubGluZSB1aW50OCBnZXRCbHVlKCkgY29uc3Qgbm9leGNlcHQg ICAgICAgeyByZXR1cm4gY29tcG9uZW50cy5iOyB9DQotIA0KLS0gICAjaWYgSlVDRV9HQ0MgJiYg ISBKVUNFX0NMQU5HDQotLSAgICAvLyBOQiB0aGVzZSBhcmUgaGVyZSBhcyBhIHdvcmthcm91bmQg YmVjYXVzZSBHQ0MgcmVmdXNlcyB0byBiaW5kIHRvIHBhY2tlZCB2YWx1ZXMuDQotLSAgICBmb3Jj ZWRpbmxpbmUgdWludDgmIGdldEFscGhhKCkgbm9leGNlcHQgICAgICAgICAgIHsgcmV0dXJuIGNv bXBzIFtpbmRleEFdOyB9DQotLSAgICBmb3JjZWRpbmxpbmUgdWludDgmIGdldFJlZCgpIG5vZXhj ZXB0ICAgICAgICAgICAgIHsgcmV0dXJuIGNvbXBzIFtpbmRleFJdOyB9DQotLSAgICBmb3JjZWRp bmxpbmUgdWludDgmIGdldEdyZWVuKCkgbm9leGNlcHQgICAgICAgICAgIHsgcmV0dXJuIGNvbXBz IFtpbmRleEddOyB9DQotLSAgICBmb3JjZWRpbmxpbmUgdWludDgmIGdldEJsdWUoKSBub2V4Y2Vw dCAgICAgICAgICAgIHsgcmV0dXJuIGNvbXBzIFtpbmRleEJdOyB9DQotLSAgICNlbHNlDQotLSAg ICBmb3JjZWRpbmxpbmUgdWludDgmIGdldEFscGhhKCkgbm9leGNlcHQgICAgICAgICAgIHsgcmV0 dXJuIGNvbXBvbmVudHMuYTsgfQ0KLS0gICAgZm9yY2VkaW5saW5lIHVpbnQ4JiBnZXRSZWQoKSBu b2V4Y2VwdCAgICAgICAgICAgICB7IHJldHVybiBjb21wb25lbnRzLnI7IH0NCi0tICAgIGZvcmNl ZGlubGluZSB1aW50OCYgZ2V0R3JlZW4oKSBub2V4Y2VwdCAgICAgICAgICAgeyByZXR1cm4gY29t cG9uZW50cy5nOyB9DQotLSAgICBmb3JjZWRpbmxpbmUgdWludDgmIGdldEJsdWUoKSBub2V4Y2Vw dCAgICAgICAgICAgIHsgcmV0dXJuIGNvbXBvbmVudHMuYjsgfQ0KLS0gICAjZW5kaWYNCi0tDQot ICAgICAvLz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PQ0KLSAgICAgLyoqIENvcGllcyBhbm90aGVyIHBp eGVsIGNvbG91ciBvdmVyIHRoaXMgb25lLg0KLSANCi1AQCAtMzM5LDkgKzMyNiw2IEBAIHByaXZh dGU6Ci0gICAgIHsNCi0gICAgICAgICB1aW50MzIgaW50ZXJuYWw7DQotICAgICAgICAgQ29tcG9u ZW50cyBjb21wb25lbnRzOw0KLS0gICAgICAgI2lmIEpVQ0VfR0NDDQotLSAgICAgICAgdWludDgg Y29tcHNbNF07ICAvLyBoZWxwZXIgc3RydWN0IG5lZWRlZCBiZWNhdXNlIGdjYyBkb2VzIG5vdCBh bGxvdyByZWZlcmVuY2VzIHRvIHBhY2tlZCB1bmlvbiBtZW1iZXJzDQotLSAgICAgICAjZW5kaWYN Ci0gICAgIH07DQotIH0NCi0gI2lmbmRlZiBET1hZR0VODQotQEAgLTQyOCwxMCArNDEyLDYgQEAg cHVibGljOgotICAgICBmb3JjZWRpbmxpbmUgdWludDggZ2V0R3JlZW4oKSBjb25zdCBub2V4Y2Vw dCAgICB7IHJldHVybiBnOyB9DQotICAgICBmb3JjZWRpbmxpbmUgdWludDggZ2V0Qmx1ZSgpIGNv bnN0IG5vZXhjZXB0ICAgICB7IHJldHVybiBiOyB9DQotIA0KLS0gICAgZm9yY2VkaW5saW5lIHVp bnQ4JiBnZXRSZWQoKSBub2V4Y2VwdCAgICAgICAgICAgeyByZXR1cm4gcjsgfQ0KLS0gICAgZm9y Y2VkaW5saW5lIHVpbnQ4JiBnZXRHcmVlbigpIG5vZXhjZXB0ICAgICAgICAgeyByZXR1cm4gZzsg fQ0KLS0gICAgZm9yY2VkaW5saW5lIHVpbnQ4JiBnZXRCbHVlKCkgbm9leGNlcHQgICAgICAgICAg eyByZXR1cm4gYjsgfQ0KLS0NCi0gICAgIC8vPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09DQotICAgICAv KiogQ29waWVzIGFub3RoZXIgcGl4ZWwgY29sb3VyIG92ZXIgdGhpcyBvbmUuDQotIA0KLUBAIC02 NDUsNyArNjI1LDYgQEAgcHVibGljOgotIA0KLSAgICAgLy89PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0N Ci0gICAgIGZvcmNlZGlubGluZSB1aW50OCBnZXRBbHBoYSgpIGNvbnN0IG5vZXhjZXB0ICAgIHsg cmV0dXJuIGE7IH0NCi0tICAgIGZvcmNlZGlubGluZSB1aW50OCYgZ2V0QWxwaGEoKSBub2V4Y2Vw dCAgICAgICAgIHsgcmV0dXJuIGE7IH0NCi0gDQotICAgICBmb3JjZWRpbmxpbmUgdWludDggZ2V0 UmVkKCkgY29uc3Qgbm9leGNlcHQgICAgICB7IHJldHVybiAwOyB9DQotICAgICBmb3JjZWRpbmxp bmUgdWludDggZ2V0R3JlZW4oKSBjb25zdCBub2V4Y2VwdCAgICB7IHJldHVybiAwOyB9DQotZGlm ZiAtLWdpdCBKdWNlTGlicmFyeUNvZGUvbW9kdWxlcy9qdWNlX2dyYXBoaWNzL25hdGl2ZS9qdWNl X1JlbmRlcmluZ0hlbHBlcnMuaCBKdWNlTGlicmFyeUNvZGUvbW9kdWxlcy9qdWNlX2dyYXBoaWNz L25hdGl2ZS9qdWNlX1JlbmRlcmluZ0hlbHBlcnMuaAotaW5kZXggY2Q4Y2QzNi4uODdiZjMzZSAx MDA2NDQKLS0tLSBKdWNlTGlicmFyeUNvZGUvbW9kdWxlcy9qdWNlX2dyYXBoaWNzL25hdGl2ZS9q dWNlX1JlbmRlcmluZ0hlbHBlcnMuaAotKysrIEp1Y2VMaWJyYXJ5Q29kZS9tb2R1bGVzL2p1Y2Vf Z3JhcGhpY3MvbmF0aXZlL2p1Y2VfUmVuZGVyaW5nSGVscGVycy5oCi1AQCAtNTgzLDEwICs1ODMs NiBAQCBuYW1lc3BhY2UgRWRnZVRhYmxlRmlsbGVycwotICAgICAgICAgICAgIHsNCi0gICAgICAg ICAgICAgICAgIGFyZVJHQkNvbXBvbmVudHNFcXVhbCA9IHNvdXJjZUNvbG91ci5nZXRSZWQoKSA9 PSBzb3VyY2VDb2xvdXIuZ2V0R3JlZW4oKQ0KLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICYmIHNvdXJjZUNvbG91ci5nZXRHcmVlbigpID09IHNvdXJjZUNvbG91 ci5nZXRCbHVlKCk7DQotLSAgICAgICAgICAgICAgICBmaWxsZXJbMF0uc2V0IChzb3VyY2VDb2xv dXIpOw0KLS0gICAgICAgICAgICAgICAgZmlsbGVyWzFdLnNldCAoc291cmNlQ29sb3VyKTsNCi0t ICAgICAgICAgICAgICAgIGZpbGxlclsyXS5zZXQgKHNvdXJjZUNvbG91cik7DQotLSAgICAgICAg ICAgICAgICBmaWxsZXJbM10uc2V0IChzb3VyY2VDb2xvdXIpOw0KLSAgICAgICAgICAgICB9DQot ICAgICAgICAgICAgIGVsc2UNCi0gICAgICAgICAgICAgew0KLUBAIC02NDIsNyArNjM4LDYgQEAg bmFtZXNwYWNlIEVkZ2VUYWJsZUZpbGxlcnMKLSAgICAgICAgIGNvbnN0IEltYWdlOjpCaXRtYXBE YXRhJiBkZXN0RGF0YTsNCi0gICAgICAgICBQaXhlbFR5cGUqIGxpbmVQaXhlbHM7DQotICAgICAg ICAgUGl4ZWxBUkdCIHNvdXJjZUNvbG91cjsNCi0tICAgICAgICBQaXhlbFJHQiBmaWxsZXIgWzRd Ow0KLSAgICAgICAgIGJvb2wgYXJlUkdCQ29tcG9uZW50c0VxdWFsOw0KLSANCi0gICAgICAgICBm b3JjZWRpbmxpbmUgUGl4ZWxUeXBlKiBnZXRQaXhlbCAoY29uc3QgaW50IHgpIGNvbnN0IG5vZXhj ZXB0DQotQEAgLTY1Nyw0NyArNjUyLDEwIEBAIG5hbWVzcGFjZSBFZGdlVGFibGVGaWxsZXJzCi0g DQotICAgICAgICAgZm9yY2VkaW5saW5lIHZvaWQgcmVwbGFjZUxpbmUgKFBpeGVsUkdCKiBkZXN0 LCBjb25zdCBQaXhlbEFSR0IgY29sb3VyLCBpbnQgd2lkdGgpIGNvbnN0IG5vZXhjZXB0DQotICAg ICAgICAgew0KLS0gICAgICAgICAgICBpZiAoZGVzdERhdGEucGl4ZWxTdHJpZGUgPT0gc2l6ZW9m ICgqZGVzdCkpDQotLSAgICAgICAgICAgIHsNCi0tICAgICAgICAgICAgICAgIGlmIChhcmVSR0JD b21wb25lbnRzRXF1YWwpICAvLyBpZiBhbGwgdGhlIGNvbXBvbmVudCB2YWx1ZXMgYXJlIHRoZSBz YW1lLCB3ZSBjYW4gY2hlYXQuLg0KLS0gICAgICAgICAgICAgICAgew0KLS0gICAgICAgICAgICAg ICAgICAgIG1lbXNldCAoZGVzdCwgY29sb3VyLmdldFJlZCgpLCAoc2l6ZV90KSB3aWR0aCAqIDMp Ow0KLS0gICAgICAgICAgICAgICAgfQ0KLS0gICAgICAgICAgICAgICAgZWxzZQ0KLS0gICAgICAg ICAgICAgICAgew0KLS0gICAgICAgICAgICAgICAgICAgIGlmICh3aWR0aCA+PiA1KQ0KLS0gICAg ICAgICAgICAgICAgICAgIHsNCi0tICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgaW50KiBj b25zdCBpbnRGaWxsZXIgPSByZWludGVycHJldF9jYXN0PGNvbnN0IGludCo+IChmaWxsZXIpOw0K LS0NCi0tICAgICAgICAgICAgICAgICAgICAgICAgd2hpbGUgKHdpZHRoID4gOCAmJiAoKChwb2lu dGVyX3NpemVkX2ludCkgZGVzdCkgJiA3KSAhPSAwKQ0KLS0gICAgICAgICAgICAgICAgICAgICAg ICB7DQotLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXN0LT5zZXQgKGNvbG91cik7DQot LSAgICAgICAgICAgICAgICAgICAgICAgICAgICArK2Rlc3Q7DQotLSAgICAgICAgICAgICAgICAg ICAgICAgICAgICAtLXdpZHRoOw0KLS0gICAgICAgICAgICAgICAgICAgICAgICB9DQotLQ0KLS0g ICAgICAgICAgICAgICAgICAgICAgICB3aGlsZSAod2lkdGggPiA0KQ0KLS0gICAgICAgICAgICAg ICAgICAgICAgICB7DQotLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbnQqIGQgPSByZWlu dGVycHJldF9jYXN0PGludCo+IChkZXN0KTsNCi0tICAgICAgICAgICAgICAgICAgICAgICAgICAg ICpkKysgPSBpbnRGaWxsZXJbMF07DQotLSAgICAgICAgICAgICAgICAgICAgICAgICAgICAqZCsr ID0gaW50RmlsbGVyWzFdOw0KLS0gICAgICAgICAgICAgICAgICAgICAgICAgICAgKmQrKyA9IGlu dEZpbGxlclsyXTsNCi0tICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlc3QgPSByZWludGVy cHJldF9jYXN0PFBpeGVsUkdCKj4gKGQpOw0KLS0gICAgICAgICAgICAgICAgICAgICAgICAgICAg d2lkdGggLT0gNDsNCi0tICAgICAgICAgICAgICAgICAgICAgICAgfQ0KLS0gICAgICAgICAgICAg ICAgICAgIH0NCi0tDQotLSAgICAgICAgICAgICAgICAgICAgd2hpbGUgKC0td2lkdGggPj0gMCkN Ci0tICAgICAgICAgICAgICAgICAgICB7DQotLSAgICAgICAgICAgICAgICAgICAgICAgIGRlc3Qt PnNldCAoY29sb3VyKTsNCi0tICAgICAgICAgICAgICAgICAgICAgICAgKytkZXN0Ow0KLS0gICAg ICAgICAgICAgICAgICAgIH0NCi0tICAgICAgICAgICAgICAgIH0NCi0tICAgICAgICAgICAgfQ0K LS0gICAgICAgICAgICBlbHNlDQotLSAgICAgICAgICAgIHsNCi0tICAgICAgICAgICAgICAgIEpV Q0VfUEVSRk9STV9QSVhFTF9PUF9MT09QIChzZXQgKGNvbG91cikpDQotLSAgICAgICAgICAgIH0N Ci0rICAgICAgICAgICAgaWYgKChzaXplX3QpIGRlc3REYXRhLnBpeGVsU3RyaWRlID09IHNpemVv ZiAoKmRlc3QpICYmIGFyZVJHQkNvbXBvbmVudHNFcXVhbCkNCi0rICAgICAgICAgICAgICAgIG1l bXNldCAoKHZvaWQqKSBkZXN0LCBjb2xvdXIuZ2V0UmVkKCksIChzaXplX3QpIHdpZHRoICogMyk7 ICAgLy8gaWYgYWxsIHRoZSBjb21wb25lbnQgdmFsdWVzIGFyZSB0aGUgc2FtZSwgd2UgY2FuIGNo ZWF0Li4NCi0rICAgICAgICAgICAgIGVsc2UNCi0rICAgICAgICAgICAgICAgIEpVQ0VfUEVSRk9S TV9QSVhFTF9PUF9MT09QIChzZXQgKGNvbG91cikpOw0KLSAgICAgICAgIH0NCi0gDQotICAgICAg ICAgZm9yY2VkaW5saW5lIHZvaWQgcmVwbGFjZUxpbmUgKFBpeGVsQWxwaGEqIGRlc3QsIGNvbnN0 IFBpeGVsQVJHQiBjb2xvdXIsIGludCB3aWR0aCkgY29uc3Qgbm9leGNlcHQNCmRpZmYgLS1naXQg YS9zcmNwa2dzL2xpYm9wZW5zaG90LWF1ZGlvL3RlbXBsYXRlIGIvc3JjcGtncy9saWJvcGVuc2hv dC1hdWRpby90ZW1wbGF0ZQppbmRleCA3OTc1MDUwZmM0OS4uZDlhNmE3MTk3MzQgMTAwNjQ0Ci0t LSBhL3NyY3BrZ3MvbGlib3BlbnNob3QtYXVkaW8vdGVtcGxhdGUKKysrIGIvc3JjcGtncy9saWJv cGVuc2hvdC1hdWRpby90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBm b3IgJ2xpYm9wZW5zaG90LWF1ZGlvJwogcGtnbmFtZT1saWJvcGVuc2hvdC1hdWRpbwotdmVyc2lv bj0wLjEuOAotcmV2aXNpb249MwordmVyc2lvbj0wLjIuMAorcmV2aXNpb249MQogYnVpbGRfc3R5 bGU9Y21ha2UKIGhvc3RtYWtlZGVwZW5kcz0iZG94eWdlbiIKIG1ha2VkZXBlbmRzPSJhbHNhLWxp Yi1kZXZlbCBsaWJYY3Vyc29yLWRldmVsIGxpYlhpbmVyYW1hLWRldmVsIGxpYlhyYW5kci1kZXZl bApAQCAtMTEsMTAgKzExLDE1IEBAIG1haW50YWluZXI9IlNwZW5jZXIgSGlsbCA8c3BlbmNlcm5o NzdAZ21haWwuY29tPiIKIGxpY2Vuc2U9IkdQTC0zLjAtb3ItbGF0ZXIiCiBob21lcGFnZT0iaHR0 cHM6Ly9naXRodWIuY29tL09wZW5TaG90L2xpYm9wZW5zaG90LWF1ZGlvIgogZGlzdGZpbGVzPSJo dHRwczovL2dpdGh1Yi5jb20vT3BlblNob3QvbGlib3BlbnNob3QtYXVkaW8vYXJjaGl2ZS92JHt2 ZXJzaW9ufS50YXIuZ3oiCi1jaGVja3N1bT0zODRkMGVmMzljNzhmMTZkNzcwNDhkZTNjOTYxNTIz MjE3MjQwODRmOTc4ZGM2MjI2NzVkZDZiYjE2ZTE1ZTE5CitjaGVja3N1bT05MzdmZjRmMWMyZGZi OGFiNWQ1NmFkODViZWFjYWEyOWRmZDVhNzlhZjBkOWNmNjQ3Mzg2MDM0ZmU5ODgyMzA5CiAKIENY WEZMQUdTPSItSSR7WEJQU19DUk9TU19CQVNFfS91c3IvaW5jbHVkZS9mcmVldHlwZTIiCiAKK2lm IFsgIiRYQlBTX1RBUkdFVF9OT19BVE9NSUM4IiBdOyB0aGVuCisJbWFrZWRlcGVuZHMrPSIgbGli YXRvbWljLWRldmVsIgorCUNYWEZMQUdTKz0iIC1sYXRvbWljICIKK2ZpCisKIGxpYm9wZW5zaG90 LWF1ZGlvLWRldmVsX3BhY2thZ2UoKSB7CiAJc2hvcnRfZGVzYys9IiAtIGRldmVsb3BtZW50IGZp bGVzIgogCWRlcGVuZHMrPSIgJHtzb3VyY2Vwa2d9Pj0ke3ZlcnNpb259XyR7cmV2aXNpb259IgoK RnJvbSAzOTVkNmUxNTQ1ZTMyYjNlMTBhNWZjOGQwZTc5ZTRmZmJlNjE0N2YxIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBjcmF0ZXIyMTUwIDxjcmF0ZXJAcXdlcnR5dWlvcC5kZT4KRGF0 ZTogU3VuLCA1IEFwciAyMDIwIDIxOjM4OjM0ICswMjAwClN1YmplY3Q6IFtQQVRDSCAyLzNdIGxp Ym9wZW5zaG90OiB1cGRhdGUgdG8gMC4yLjUKCi0tLQogLi4uL2xpYm9wZW5zaG90L3BhdGNoZXMv aW1hZ2VtYWdpY2s3LnBhdGNoICAgIHwgNDE3IC0tLS0tLS0tLS0tLS0tLS0tLQogc3JjcGtncy9s aWJvcGVuc2hvdC90ZW1wbGF0ZSAgICAgICAgICAgICAgICAgIHwgIDExICstCiAyIGZpbGVzIGNo YW5nZWQsIDMgaW5zZXJ0aW9ucygrKSwgNDI1IGRlbGV0aW9ucygtKQogZGVsZXRlIG1vZGUgMTAw NjQ0IHNyY3BrZ3MvbGlib3BlbnNob3QvcGF0Y2hlcy9pbWFnZW1hZ2ljazcucGF0Y2gKCmRpZmYg LS1naXQgYS9zcmNwa2dzL2xpYm9wZW5zaG90L3BhdGNoZXMvaW1hZ2VtYWdpY2s3LnBhdGNoIGIv c3JjcGtncy9saWJvcGVuc2hvdC9wYXRjaGVzL2ltYWdlbWFnaWNrNy5wYXRjaApkZWxldGVkIGZp bGUgbW9kZSAxMDA2NDQKaW5kZXggNjJjOTk2NWVhMmQuLjAwMDAwMDAwMDAwCi0tLSBhL3NyY3Br Z3MvbGlib3BlbnNob3QvcGF0Y2hlcy9pbWFnZW1hZ2ljazcucGF0Y2gKKysrIC9kZXYvbnVsbApA QCAtMSw0MTcgKzAsMCBAQAotRnJvbSBiMGI2ZTQzZDhmZjk3N2U0ODUzZmU0OTRhOGVkNGYxMGRj MjVlNTcxIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQotRnJvbTogIkZlUkQgKEZyYW5rIERhbmEp IiA8ZmVyZG55Y0BnbWFpbC5jb20+Ci1EYXRlOiBUaHUsIDEzIEp1biAyMDE5IDAzOjEwOjE2IC0w NDAwCi1TdWJqZWN0OiBbUEFUQ0ggMS8yXSBBZGQgSW1hZ2VNYWdpY2sgNyBjb21wYXRpYmlsaXR5 Ci1NSU1FLVZlcnNpb246IDEuMAotQ29udGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PVVU Ri04Ci1Db250ZW50LVRyYW5zZmVyLUVuY29kaW5nOiA4Yml0Ci0KLUEgbmV3IGhlYWRlciwgYGlt Y2x1ZGUvTWFnaWNrVXRpbGl0aWVzLmhgLCBpcyBjcmVhdGVkIHRvIGhvbGQgdGhlCi1jb21wYXRp YmlsaXR5IGAjZGVmaW5lYHMuCi0KLVRoZSBpbWFnZS1jb252ZXJzaW9uIGNvZGUgaW4gYHNyYy9G cmFtZS5jcHBgIHJlY2VpdmVkIHRoZSBvbmx5Ci1tYWpvciBjaGFuZ2VzIOKAlCBpbnN0ZWFkIG9m IGRvaW5nIHRoZSBleHBvcnQgYnkgaGFuZCAoYW5kIGhhdmluZwotdG8gYWNjb3VudCBmb3IgY2hh bmdlcyBpbiB0aGUgdW5kZXJseWluZyBBUEkpLCBpdCB1c2VzIHRoZQotYE1hZ2lja0NvcmU6OkV4 cG9ydEltYWdlUGl4ZWxzKClgIGZ1bmN0aW9uIHdoaWNoIGRvZXMgYmFzaWNhbGx5Ci10aGUgc2Ft ZSB3b3JrLCBidXQgYWNjb3VudHMgZm9yIGFsbCBvZiB0aGUgQVBJIGNoYW5nZXMgZm9yIHVzLgot VGhlIEFQSSBvZiB0aGF0IGZ1bmN0aW9uIGlzIF91bmNoYW5nZWRfIGZyb20gSU02IHRvIElNNy4K LQotVE9ETzogYE1hZ2lja0NvcmU6OkV4cG9ydEltYWdlUGl4ZWxzKClgIHdpbGwgcmV0dXJuIGFu IGBleGNlcHRpb25gCi1zdHJ1Y3QgaWYgaXQgZW5jb3VudGVycyBhbnkgcHJvYmxlbXMuIEN1cnJl bnRseSB0aGUgY29kZSBpZ25vcmVzCi10aGF0LCB3aGljaCBpdCBzaG91bGQgbm90LgotLS0tCi0g aW5jbHVkZS9GcmFtZS5oICAgICAgICAgICB8ICA0ICstLQotIGluY2x1ZGUvSW1hZ2VSZWFkZXIu aCAgICAgfCAgOCArKystLQotIGluY2x1ZGUvSW1hZ2VXcml0ZXIuaCAgICAgfCAgOSArKystLS0K LSBpbmNsdWRlL01hZ2lja1V0aWxpdGllcy5oIHwgNjEgKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrCi0gaW5jbHVkZS9UZXh0UmVhZGVyLmggICAgICB8IDEwICsrKysrLS0K LSBpbmNsdWRlL2VmZmVjdHMvTWFzay5oICAgIHwgIDcgKysrLS0KLSBzcmMvRnJhbWUuY3BwICAg ICAgICAgICAgIHwgMjIgKysrKystLS0tLS0tLS0KLSBzcmMvSW1hZ2VSZWFkZXIuY3BwICAgICAg IHwgIDkgKysrKy0tCi0gc3JjL0ltYWdlV3JpdGVyLmNwcCAgICAgICB8ICA2ICsrKy0KLSBzcmMv VGV4dFJlYWRlci5jcHAgICAgICAgIHwgIDUgKysrKwotIHNyYy9lZmZlY3RzL01hc2suY3BwICAg ICAgfCAgOSArKystLS0KLSAxMSBmaWxlcyBjaGFuZ2VkLCAxMTIgaW5zZXJ0aW9ucygrKSwgMzgg ZGVsZXRpb25zKC0pCi0gY3JlYXRlIG1vZGUgMTAwNjQ0IGluY2x1ZGUvTWFnaWNrVXRpbGl0aWVz LmgKLQotZGlmZiAtLWdpdCBhL2luY2x1ZGUvRnJhbWUuaCBiL2luY2x1ZGUvRnJhbWUuaAotaW5k ZXggNmI2ODJlZGIuLmVlZjc1MGZmIDEwMDY0NAotLS0tIGEvaW5jbHVkZS9GcmFtZS5oCi0rKysg Yi9pbmNsdWRlL0ZyYW1lLmgKLUBAIC01MywxNCArNTMsMTIgQEAKLSAjaW5jbHVkZSA8bWVtb3J5 PgotICNpbmNsdWRlIDx1bmlzdGQuaD4KLSAjaW5jbHVkZSAiWm1xTG9nZ2VyLmgiCi0tI2lmZGVm IFVTRV9JTUFHRU1BR0lDSwotLQkjaW5jbHVkZSAiTWFnaWNrKysuaCIKLS0jZW5kaWYKLSAjaW5j bHVkZSAiSnVjZUxpYnJhcnlDb2RlL0p1Y2VIZWFkZXIuaCIKLSAjaW5jbHVkZSAiQ2hhbm5lbExh eW91dHMuaCIKLSAjaW5jbHVkZSAiQXVkaW9CdWZmZXJTb3VyY2UuaCIKLSAjaW5jbHVkZSAiQXVk aW9SZXNhbXBsZXIuaCIKLSAjaW5jbHVkZSAiRnJhY3Rpb24uaCIKLSsjaW5jbHVkZSAiTWFnaWNr VXRpbGl0aWVzLmgiCi0gCi0gI3ByYWdtYSBTV0lHIG5vd2Fybj0zNjIKLSB1c2luZyBuYW1lc3Bh Y2Ugc3RkOwotZGlmZiAtLWdpdCBhL2luY2x1ZGUvSW1hZ2VSZWFkZXIuaCBiL2luY2x1ZGUvSW1h Z2VSZWFkZXIuaAotaW5kZXggZTY5OGUwYzEuLjdhZDIzMTczIDEwMDY0NAotLS0tIGEvaW5jbHVk ZS9JbWFnZVJlYWRlci5oCi0rKysgYi9pbmNsdWRlL0ltYWdlUmVhZGVyLmgKLUBAIC0yOCw2ICsy OCw5IEBACi0gI2lmbmRlZiBPUEVOU0hPVF9JTUFHRV9SRUFERVJfSAotICNkZWZpbmUgT1BFTlNI T1RfSU1BR0VfUkVBREVSX0gKLSAKLSsvLyBSZXF1aXJlIEltYWdlTWFnaWNrIHN1cHBvcnQKLSsj aWZkZWYgVVNFX0lNQUdFTUFHSUNLCi0rCi0gI2luY2x1ZGUgIlJlYWRlckJhc2UuaCIKLSAKLSAj aW5jbHVkZSA8Y21hdGg+Ci1AQCAtMzYsOSArMzksOSBAQAotICNpbmNsdWRlIDxvbXAuaD4KLSAj aW5jbHVkZSA8c3RkaW8uaD4KLSAjaW5jbHVkZSA8bWVtb3J5PgotLSNpbmNsdWRlICJNYWdpY2sr Ky5oIgotICNpbmNsdWRlICJDYWNoZU1lbW9yeS5oIgotICNpbmNsdWRlICJFeGNlcHRpb25zLmgi Ci0rI2luY2x1ZGUgIk1hZ2lja1V0aWxpdGllcy5oIgotIAotIHVzaW5nIG5hbWVzcGFjZSBzdGQ7 Ci0gCi1AQCAtMTEzLDQgKzExNiw1IEBAIG5hbWVzcGFjZSBvcGVuc2hvdAotIAotIH0KLSAKLS0j ZW5kaWYKLSsjZW5kaWYgLy9VU0VfSU1BR0VNQUdJQ0sKLSsjZW5kaWYgLy9PUEVOU0hPVF9JTUFH RV9SRUFERVJfSAotZGlmZiAtLWdpdCBhL2luY2x1ZGUvSW1hZ2VXcml0ZXIuaCBiL2luY2x1ZGUv SW1hZ2VXcml0ZXIuaAotaW5kZXggMjUxNzcxMzQuLmI3ZGQ3ZGMyIDEwMDY0NAotLS0tIGEvaW5j bHVkZS9JbWFnZVdyaXRlci5oCi0rKysgYi9pbmNsdWRlL0ltYWdlV3JpdGVyLmgKLUBAIC0zMiwx MCArMzIsMTEgQEAKLSAgKiBhbG9uZyB3aXRoIE9wZW5TaG90IExpYnJhcnkuIElmIG5vdCwgc2Vl IDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KLSAgKi8KLSAKLS0KLSAjaWZuZGVmIE9Q RU5TSE9UX0lNQUdFX1dSSVRFUl9ICi0gI2RlZmluZSBPUEVOU0hPVF9JTUFHRV9XUklURVJfSAot IAotKyNpZmRlZiBVU0VfSU1BR0VNQUdJQ0sKLSsKLSAjaW5jbHVkZSAiUmVhZGVyQmFzZS5oIgot ICNpbmNsdWRlICJXcml0ZXJCYXNlLmgiCi0gCi1AQCAtNDQsMTEgKzQ1LDEwIEBACi0gI2luY2x1 ZGUgPGlvc3RyZWFtPgotICNpbmNsdWRlIDxzdGRpby5oPgotICNpbmNsdWRlIDx1bmlzdGQuaD4K LS0jaW5jbHVkZSAiTWFnaWNrKysuaCIKLSAjaW5jbHVkZSAiQ2FjaGVNZW1vcnkuaCIKLSAjaW5j bHVkZSAiRXhjZXB0aW9ucy5oIgotICNpbmNsdWRlICJPcGVuTVBVdGlsaXRpZXMuaCIKLS0KLSsj aW5jbHVkZSAiTWFnaWNrVXRpbGl0aWVzLmgiCi0gCi0gdXNpbmcgbmFtZXNwYWNlIHN0ZDsKLSAK LUBAIC0xNDUsNCArMTQ1LDUgQEAgbmFtZXNwYWNlIG9wZW5zaG90Ci0gCi0gfQotIAotLSNlbmRp ZgotKyNlbmRpZiAvL1VTRV9JTUFHRU1BR0lDSwotKyNlbmRpZiAvL09QRU5TSE9UX0lNQUdFX1dS SVRFUl9ICi1kaWZmIC0tZ2l0IGEvaW5jbHVkZS9NYWdpY2tVdGlsaXRpZXMuaCBiL2luY2x1ZGUv TWFnaWNrVXRpbGl0aWVzLmgKLW5ldyBmaWxlIG1vZGUgMTAwNjQ0Ci1pbmRleCAwMDAwMDAwMC4u ZjNiN2VhMTIKLS0tLSAvZGV2L251bGwKLSsrKyBiL2luY2x1ZGUvTWFnaWNrVXRpbGl0aWVzLmgK LUBAIC0wLDAgKzEsNjEgQEAKLSsvKioKLSsgKiBAZmlsZQotKyAqIEBicmllZiBIZWFkZXIgZmls ZSBmb3IgTWFnaWNrVXRpbGl0aWVzIChJTTYvSU03IGNvbXBhdGliaWxpdHkgb3ZlcmxheSkKLSsg KiBAYXV0aG9yIEpvbmF0aGFuIFRob21hcyA8am9uYXRoYW5Ab3BlbnNob3Qub3JnPgotKyAqIEBh dXRob3IgRmVSRCAoRnJhbmsgRGFuYSkgPGZlcmRueWNAZ21haWwuY29tPgotKyAqLwotKwotKy8q IExJQ0VOU0UKLSsgKgotKyAqIENvcHlyaWdodCAoYykgMjAwOC0yMDE5IE9wZW5TaG90IFN0dWRp b3MsIExMQwotKyAqIDxodHRwOi8vd3d3Lm9wZW5zaG90c3R1ZGlvcy5jb20vPi4gVGhpcyBmaWxl IGlzIHBhcnQgb2YKLSsgKiBPcGVuU2hvdCBMaWJyYXJ5IChsaWJvcGVuc2hvdCksIGFuIG9wZW4t c291cmNlIHByb2plY3QgZGVkaWNhdGVkIHRvCi0rICogZGVsaXZlcmluZyBoaWdoIHF1YWxpdHkg dmlkZW8gZWRpdGluZyBhbmQgYW5pbWF0aW9uIHNvbHV0aW9ucyB0byB0aGUKLSsgKiB3b3JsZC4g Rm9yIG1vcmUgaW5mb3JtYXRpb24gdmlzaXQgPGh0dHA6Ly93d3cub3BlbnNob3Qub3JnLz4uCi0r ICoKLSsgKiBPcGVuU2hvdCBMaWJyYXJ5IChsaWJvcGVuc2hvdCkgaXMgZnJlZSBzb2Z0d2FyZTog eW91IGNhbiByZWRpc3RyaWJ1dGUgaXQKLSsgKiBhbmQvb3IgbW9kaWZ5IGl0IHVuZGVyIHRoZSB0 ZXJtcyBvZiB0aGUgR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCi0rICogYXMgcHVi bGlzaGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMg b2YgdGhlCi0rICogTGljZW5zZSwgb3IgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lv bi4KLSsgKgotKyAqIE9wZW5TaG90IExpYnJhcnkgKGxpYm9wZW5zaG90KSBpcyBkaXN0cmlidXRl ZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUKLSsgKiB1c2VmdWwsIGJ1dCBXSVRIT1VUIEFO WSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCi0rICogTUVS Q0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiBTZWUgdGhl Ci0rICogR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMu Ci0rICoKLSsgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgTGVz c2VyIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKLSsgKiBhbG9uZyB3aXRoIE9wZW5TaG90IExpYnJh cnkuIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KLSsgKi8KLSsK LSsjaWZuZGVmIE9QRU5TSE9UX01BR0lDS19VVElMSVRJRVNfSAotKyNkZWZpbmUgT1BFTlNIT1Rf TUFHSUNLX1VUSUxJVElFU19ICi0rCi0rI2lmZGVmIFVTRV9JTUFHRU1BR0lDSwotKwotKyAgICAj aW5jbHVkZSAiTWFnaWNrKysuaCIKLSsKLSsgICAgLy8gRGV0ZXJtaW5lIEltYWdlTWFnaWNrIHZl cnNpb24sIGFzIElNNyBpc24ndCBmdWxseQotKyAgICAvLyBiYWNrd2FyZHMgY29tcGF0aWJsZQot KyAgICAjaWZuZGVmIE5FV19NQUdJQ0sKLSsJICAgI2RlZmluZSBORVdfTUFHSUNLIChNYWdpY2tM aWJWZXJzaW9uID49IDB4NzAwKQotKwkjZW5kaWYKLSsKLSsgICAgLy8gSU03OiA8TWFnaWNrOjpJ bWFnZT4tPmFscGhhKGJvb2wpCi0rICAgIC8vIElNNjogPE1hZ2ljazo6SW1hZ2U+LT5tYXR0ZShi b29sKQotKyAgICAjaWYgTkVXX01BR0lDSwotKyAgICAgICAgI2RlZmluZSBNQUdJQ0tfSU1BR0Vf QUxQSEEoaW0sIGEpIGltLT5hbHBoYSgoYSkpCi0rICAgICNlbHNlCi0rICAgICAgICAjZGVmaW5l IE1BR0lDS19JTUFHRV9BTFBIQShpbSwgYSkgaW0tPm1hdHRlKChhKSkKLSsgICAgI2VuZGlmCi0r Ci0rICAgIC8vIElNNzogdmVjdG9yPE1hZ2ljazo6RHJhd2FibGU+Ci0rICAgIC8vIElNNjogbGlz dDxNYWdpY2s6OkRyYXdhYmxlPgotKyAgICAvLyAoYm90aCBoYXZlIHRoZSBwdXNoX2JhY2soKSBt ZXRob2Qgd2hpY2ggaXMgYWxsIHdlIHVzZSkKLSsgICAgI2lmIE5FV19NQUdJQ0sKLSsgICAgICAg ICNkZWZpbmUgTUFHSUNLX0RSQVdBQkxFIHZlY3RvcjxNYWdpY2s6OkRyYXdhYmxlPgotKyAgICAj ZWxzZQotKyAgICAgICAgI2RlZmluZSBNQUdJQ0tfRFJBV0FCTEUgbGlzdDxNYWdpY2s6OkRyYXdh YmxlPgotKyAgICAjZW5kaWYKLSsKLSsjZW5kaWYKLSsjZW5kaWYKLWRpZmYgLS1naXQgYS9pbmNs dWRlL1RleHRSZWFkZXIuaCBiL2luY2x1ZGUvVGV4dFJlYWRlci5oCi1pbmRleCBkN2Q2NTNkMi4u YmI0YmRjMjIgMTAwNjQ0Ci0tLS0gYS9pbmNsdWRlL1RleHRSZWFkZXIuaAotKysrIGIvaW5jbHVk ZS9UZXh0UmVhZGVyLmgKLUBAIC0yOCw2ICsyOCw5IEBACi0gI2lmbmRlZiBPUEVOU0hPVF9URVhU X1JFQURFUl9ICi0gI2RlZmluZSBPUEVOU0hPVF9URVhUX1JFQURFUl9ICi0gCi0rLy8gUmVxdWly ZSBJbWFnZU1hZ2ljayBzdXBwb3J0Ci0rI2lmZGVmIFVTRV9JTUFHRU1BR0lDSwotKwotICNpbmNs dWRlICJSZWFkZXJCYXNlLmgiCi0gCi0gI2luY2x1ZGUgPGNtYXRoPgotQEAgLTM2LDEwICszOSwx MCBAQAotICNpbmNsdWRlIDxvbXAuaD4KLSAjaW5jbHVkZSA8c3RkaW8uaD4KLSAjaW5jbHVkZSA8 bWVtb3J5PgotLSNpbmNsdWRlICJNYWdpY2srKy5oIgotICNpbmNsdWRlICJDYWNoZU1lbW9yeS5o IgotICNpbmNsdWRlICJFbnVtcy5oIgotICNpbmNsdWRlICJFeGNlcHRpb25zLmgiCi0rI2luY2x1 ZGUgIk1hZ2lja1V0aWxpdGllcy5oIgotIAotIHVzaW5nIG5hbWVzcGFjZSBzdGQ7Ci0gCi1AQCAt OTEsNyArOTQsNyBAQCBuYW1lc3BhY2Ugb3BlbnNob3QKLSAJCXN0cmluZyB0ZXh0X2NvbG9yOwot IAkJc3RyaW5nIGJhY2tncm91bmRfY29sb3I7Ci0gCQlzdGQ6OnNoYXJlZF9wdHI8TWFnaWNrOjpJ bWFnZT4gaW1hZ2U7Ci0tCQlsaXN0PE1hZ2ljazo6RHJhd2FibGU+IGxpbmVzOwotKwkJTUFHSUNL X0RSQVdBQkxFIGxpbmVzOwotIAkJYm9vbCBpc19vcGVuOwotIAkJR3Jhdml0eVR5cGUgZ3Jhdml0 eTsKLSAKLUBAIC0xNDQsNCArMTQ3LDUgQEAgbmFtZXNwYWNlIG9wZW5zaG90Ci0gCi0gfQotIAot LSNlbmRpZgotKyNlbmRpZiAvL1VTRV9JTUFHRU1BR0lDSwotKyNlbmRpZiAvL09QRU5TSE9UX1RF WFRfUkVBREVSX0gKLWRpZmYgLS1naXQgYS9pbmNsdWRlL2VmZmVjdHMvTWFzay5oIGIvaW5jbHVk ZS9lZmZlY3RzL01hc2suaAotaW5kZXggZWY3MDdmNWYuLmU1YjhmNjQ5IDEwMDY0NAotLS0tIGEv aW5jbHVkZS9lZmZlY3RzL01hc2suaAotKysrIGIvaW5jbHVkZS9lZmZlY3RzL01hc2suaAotQEAg LTI1LDggKzI1LDggQEAKLSAgKiBhbG9uZyB3aXRoIE9wZW5TaG90IExpYnJhcnkuIElmIG5vdCwg c2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KLSAgKi8KLSAKLS0jaWZuZGVmIE9Q RU5TSE9UX1dJUEVfRUZGRUNUX0gKLS0jZGVmaW5lIE9QRU5TSE9UX1dJUEVfRUZGRUNUX0gKLSsj aWZuZGVmIE9QRU5TSE9UX01BU0tfRUZGRUNUX0gKLSsjZGVmaW5lIE9QRU5TSE9UX01BU0tfRUZG RUNUX0gKLSAKLSAjaW5jbHVkZSAiLi4vRWZmZWN0QmFzZS5oIgotIAotQEAgLTQ1LDYgKzQ1LDcg QEAKLSAjaW5jbHVkZSAiLi4vUXRJbWFnZVJlYWRlci5oIgotICNpbmNsdWRlICIuLi9DaHVua1Jl YWRlci5oIgotICNpZmRlZiBVU0VfSU1BR0VNQUdJQ0sKLSsJI2luY2x1ZGUgIi4uL01hZ2lja1V0 aWxpdGllcy5oIgotIAkjaW5jbHVkZSAiLi4vSW1hZ2VSZWFkZXIuaCIKLSAjZW5kaWYKLSAKLUBA IC01NCw3ICs1NSw3IEBAIG5hbWVzcGFjZSBvcGVuc2hvdAotIHsKLSAKLSAJLyoqCi0tCSAqIEBi cmllZiBUaGlzIGNsYXNzIHVzZXMgdGhlIEltYWdlTWFnaWNrKysgbGlicmFyaWVzLCB0byBhcHBs eSBhbHBoYSAob3IgdHJhbnNwYXJlbmN5KSBtYXNrcwotKwkgKiBAYnJpZWYgVGhpcyBjbGFzcyB1 c2VzIHRoZSBpbWFnZSBsaWJyYXJpZXMgdG8gYXBwbHkgYWxwaGEgKG9yIHRyYW5zcGFyZW5jeSkg bWFza3MKLSAJICogdG8gYW55IGZyYW1lLiBJdCBjYW4gYWxzbyBiZSBhbmltYXRlZCwgYW5kIHVz ZWQgYXMgYSBwb3dlcmZ1bCBXaXBlIHRyYW5zaXRpb24uCi0gCSAqCi0gCSAqIFRoZXNlIG1hc2tz IC8gd2lwZXMgY2FuIGFsc28gYmUgY29tYmluZWQsIHN1Y2ggYXMgYSB0cmFuc3BhcmVuY3kgbWFz ayBvbiB0b3Agb2YgYSBjbGlwLCB3aGljaAotZGlmZiAtLWdpdCBhL3NyYy9GcmFtZS5jcHAgYi9z cmMvRnJhbWUuY3BwCi1pbmRleCBhYTdjMGQ4Ny4uNWUwNmU2MWUgMTAwNjQ0Ci0tLS0gYS9zcmMv RnJhbWUuY3BwCi0rKysgYi9zcmMvRnJhbWUuY3BwCi1AQCAtOTI2LDcgKzkyNiw3IEBAIHN0ZDo6 c2hhcmVkX3B0cjxNYWdpY2s6OkltYWdlPiBGcmFtZTo6R2V0TWFnaWNrSW1hZ2UoKQotIAkvLyBH aXZlIGltYWdlIGEgdHJhbnNwYXJlbnQgYmFja2dyb3VuZCBjb2xvcgotIAltYWdpY2tfaW1hZ2Ut PmJhY2tncm91bmRDb2xvcihNYWdpY2s6OkNvbG9yKCJub25lIikpOwotIAltYWdpY2tfaW1hZ2Ut PnZpcnR1YWxQaXhlbE1ldGhvZChNYWdpY2s6OlRyYW5zcGFyZW50VmlydHVhbFBpeGVsTWV0aG9k KTsKLS0JbWFnaWNrX2ltYWdlLT5tYXR0ZSh0cnVlKTsKLSsJTUFHSUNLX0lNQUdFX0FMUEhBKG1h Z2lja19pbWFnZSwgdHJ1ZSk7Ci0gCi0gCXJldHVybiBtYWdpY2tfaW1hZ2U7Ci0gfQotQEAgLTk0 NSwyMCArOTQ1LDEyIEBAIHZvaWQgRnJhbWU6OkFkZE1hZ2lja0ltYWdlKHN0ZDo6c2hhcmVkX3B0 cjxNYWdpY2s6OkltYWdlPiBuZXdfaW1hZ2UpCi0gCXFidWZmZXIgPSBuZXcgdW5zaWduZWQgY2hh cltidWZmZXJTaXplXSgpOwotIAl1bnNpZ25lZCBjaGFyICpidWZmZXIgPSAodW5zaWduZWQgY2hh ciopcWJ1ZmZlcjsKLSAKLS0gICAgLy8gSXRlcmF0ZSB0aHJvdWdoIHRoZSBwaXhlbCBwYWNrZXRz LCBhbmQgbG9hZCBvdXIgb3duIGJ1ZmZlcgotLQkvLyBFYWNoIGNvbG9yIG5lZWRzIHRvIGJlIHNj YWxlZCB0byA4IGJpdCAodXNpbmcgdGhlIEltYWdlTWFnaWNrIGJ1aWx0LWluIFNjYWxlUXVhbnR1 bVRvQ2hhciBmdW5jdGlvbikKLS0JaW50IG51bWNvcGllZCA9IDA7Ci0tICAgIE1hZ2ljazo6UGl4 ZWxQYWNrZXQgKnBpeGVscyA9IG5ld19pbWFnZS0+Z2V0UGl4ZWxzKDAsMCwgbmV3X2ltYWdlLT5j b2x1bW5zKCksIG5ld19pbWFnZS0+cm93cygpKTsKLS0gICAgZm9yIChpbnQgbiA9IDAsIGkgPSAw OyBuIDwgbmV3X2ltYWdlLT5jb2x1bW5zKCkgKiBuZXdfaW1hZ2UtPnJvd3MoKTsgbiArPSAxLCBp ICs9IDQpIHsKLS0gICAgCWJ1ZmZlcltpKzBdID0gTWFnaWNrQ29yZTo6U2NhbGVRdWFudHVtVG9D aGFyKChNYWdpY2s6OlF1YW50dW0pIHBpeGVsc1tuXS5yZWQpOwotLSAgICAJYnVmZmVyW2krMV0g PSBNYWdpY2tDb3JlOjpTY2FsZVF1YW50dW1Ub0NoYXIoKE1hZ2ljazo6UXVhbnR1bSkgcGl4ZWxz W25dLmdyZWVuKTsKLS0gICAgCWJ1ZmZlcltpKzJdID0gTWFnaWNrQ29yZTo6U2NhbGVRdWFudHVt VG9DaGFyKChNYWdpY2s6OlF1YW50dW0pIHBpeGVsc1tuXS5ibHVlKTsKLS0gICAgCWJ1ZmZlcltp KzNdID0gMjU1IC0gTWFnaWNrQ29yZTo6U2NhbGVRdWFudHVtVG9DaGFyKChNYWdpY2s6OlF1YW50 dW0pIHBpeGVsc1tuXS5vcGFjaXR5KTsKLS0gICAgCW51bWNvcGllZCs9NDsKLS0gICAgfQotLQot LSAgICAvLyBDcmVhdGUgUUltYWdlIG9mIGZyYW1lIGRhdGEKLS0gICAgaW1hZ2UgPSBzdGQ6OnNo YXJlZF9wdHI8UUltYWdlPihuZXcgUUltYWdlKHFidWZmZXIsIHdpZHRoLCBoZWlnaHQsIHdpZHRo ICogQlBQLCBRSW1hZ2U6OkZvcm1hdF9SR0JBODg4OCwgKFFJbWFnZUNsZWFudXBGdW5jdGlvbikg JmNsZWFuVXBCdWZmZXIsICh2b2lkKikgcWJ1ZmZlcikpOwotKwlNYWdpY2tDb3JlOjpFeGNlcHRp b25JbmZvIGV4Y2VwdGlvbjsKLSsJLy8gVE9ETzogQWN0dWFsbHkgZG8gc29tZXRoaW5nLCBpZiB3 ZSBnZXQgYW4gZXhjZXB0aW9uIGhlcmUKLSsJTWFnaWNrQ29yZTo6RXhwb3J0SW1hZ2VQaXhlbHMo bmV3X2ltYWdlLT5jb25zdEltYWdlKCksIDAsIDAsIG5ld19pbWFnZS0+Y29sdW1ucygpLCBuZXdf aW1hZ2UtPnJvd3MoKSwgIlJHQkEiLCBNYWdpY2s6OkNoYXJQaXhlbCwgYnVmZmVyLCAmZXhjZXB0 aW9uKTsKLSsKLSsJLy8gQ3JlYXRlIFFJbWFnZSBvZiBmcmFtZSBkYXRhCi0rCWltYWdlID0gc3Rk OjpzaGFyZWRfcHRyPFFJbWFnZT4obmV3IFFJbWFnZShxYnVmZmVyLCB3aWR0aCwgaGVpZ2h0LCB3 aWR0aCAqIEJQUCwgUUltYWdlOjpGb3JtYXRfUkdCQTg4ODgsIChRSW1hZ2VDbGVhbnVwRnVuY3Rp b24pICZjbGVhblVwQnVmZmVyLCAodm9pZCopIHFidWZmZXIpKTsKLSAKLSAJLy8gVXBkYXRlIGhl aWdodCBhbmQgd2lkdGgKLSAJd2lkdGggPSBpbWFnZS0+d2lkdGgoKTsKLWRpZmYgLS1naXQgYS9z cmMvSW1hZ2VSZWFkZXIuY3BwIGIvc3JjL0ltYWdlUmVhZGVyLmNwcAotaW5kZXggZjUzNTY2NmEu LmNjMjAwNWE0IDEwMDY0NAotLS0tIGEvc3JjL0ltYWdlUmVhZGVyLmNwcAotKysrIGIvc3JjL0lt YWdlUmVhZGVyLmNwcAotQEAgLTI1LDYgKzI1LDkgQEAKLSAgKiBhbG9uZyB3aXRoIE9wZW5TaG90 IExpYnJhcnkuIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi4KLSAg Ki8KLSAKLSsvLyBSZXF1aXJlIEltYWdlTWFnaWNrIHN1cHBvcnQKLSsjaWZkZWYgVVNFX0lNQUdF TUFHSUNLCi0rCi0gI2luY2x1ZGUgIi4uL2luY2x1ZGUvSW1hZ2VSZWFkZXIuaCIKLSAKLSB1c2lu ZyBuYW1lc3BhY2Ugb3BlbnNob3Q7Ci1AQCAtNTksNyArNjIsNyBAQCB2b2lkIEltYWdlUmVhZGVy OjpPcGVuKCkKLSAKLSAJCQkvLyBHaXZlIGltYWdlIGEgdHJhbnNwYXJlbnQgYmFja2dyb3VuZCBj b2xvcgotIAkJCWltYWdlLT5iYWNrZ3JvdW5kQ29sb3IoTWFnaWNrOjpDb2xvcigibm9uZSIpKTsK LS0JCQlpbWFnZS0+bWF0dGUodHJ1ZSk7Ci0rCQkJTUFHSUNLX0lNQUdFX0FMUEhBKGltYWdlLCB0 cnVlKTsKLSAJCX0KLSAJCWNhdGNoIChNYWdpY2s6OkV4Y2VwdGlvbiBlKSB7Ci0gCQkJLy8gcmFp c2UgZXhjZXB0aW9uCi1AQCAtMTA2LDcgKzEwOSw3IEBAIHZvaWQgSW1hZ2VSZWFkZXI6OkNsb3Nl KCkKLSAJewotIAkJLy8gTWFyayBhcyAiY2xvc2VkIgotIAkJaXNfb3BlbiA9IGZhbHNlOwotLQkJ Ci0rCi0gCQkvLyBEZWxldGUgdGhlIGltYWdlCi0gCQlpbWFnZS5yZXNldCgpOwotIAl9Ci1AQCAt MTg4LDMgKzE5MSw1IEBAIHZvaWQgSW1hZ2VSZWFkZXI6OlNldEpzb25WYWx1ZShKc29uOjpWYWx1 ZSByb290KSB7Ci0gCQlPcGVuKCk7Ci0gCX0KLSB9Ci0rCi0rI2VuZGlmIC8vVVNFX0lNQUdFTUFH SUNLCi1kaWZmIC0tZ2l0IGEvc3JjL0ltYWdlV3JpdGVyLmNwcCBiL3NyYy9JbWFnZVdyaXRlci5j cHAKLWluZGV4IDQxNjI2YjA5Li41YmMwMzY3YSAxMDA2NDQKLS0tLSBhL3NyYy9JbWFnZVdyaXRl ci5jcHAKLSsrKyBiL3NyYy9JbWFnZVdyaXRlci5jcHAKLUBAIC0yOCw2ICsyOCw5IEBACi0gICog YWxvbmcgd2l0aCBPcGVuU2hvdCBMaWJyYXJ5LiBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUu b3JnL2xpY2Vuc2VzLz4uCi0gICovCi0gCi0rLy9SZXF1aXJlIEltYWdlTWFnaWNrIHN1cHBvcnQK LSsjaWZkZWYgVVNFX0lNQUdFTUFHSUNLCi0rCi0gI2luY2x1ZGUgIi4uL2luY2x1ZGUvSW1hZ2VX cml0ZXIuaCIKLSAKLSB1c2luZyBuYW1lc3BhY2Ugb3BlbnNob3Q7Ci1AQCAtOTcsNyArMTAwLDcg QEAgdm9pZCBJbWFnZVdyaXRlcjo6V3JpdGVGcmFtZShzdGQ6OnNoYXJlZF9wdHI8RnJhbWU+IGZy YW1lKQotIAlzdGQ6OnNoYXJlZF9wdHI8TWFnaWNrOjpJbWFnZT4gZnJhbWVfaW1hZ2UgPSBmcmFt ZS0+R2V0TWFnaWNrSW1hZ2UoKTsKLSAJZnJhbWVfaW1hZ2UtPm1hZ2ljayggaW5mby52Y29kZWMg KTsKLSAJZnJhbWVfaW1hZ2UtPmJhY2tncm91bmRDb2xvcihNYWdpY2s6OkNvbG9yKCJub25lIikp OwotLQlmcmFtZV9pbWFnZS0+bWF0dGUodHJ1ZSk7Ci0rCU1BR0lDS19JTUFHRV9BTFBIQShmcmFt ZV9pbWFnZSwgdHJ1ZSk7Ci0gCWZyYW1lX2ltYWdlLT5xdWFsaXR5KGltYWdlX3F1YWxpdHkpOwot IAlmcmFtZV9pbWFnZS0+YW5pbWF0aW9uRGVsYXkoaW5mby52aWRlb190aW1lYmFzZS5Ub0Zsb2F0 KCkgKiAxMDApOwotIAlmcmFtZV9pbWFnZS0+YW5pbWF0aW9uSXRlcmF0aW9ucyhudW1iZXJfb2Zf bG9vcHMpOwotQEAgLTE1MywzICsxNTYsNCBAQCB2b2lkIEltYWdlV3JpdGVyOjpDbG9zZSgpCi0g CVptcUxvZ2dlcjo6SW5zdGFuY2UoKS0+QXBwZW5kRGVidWdNZXRob2QoIkltYWdlV3JpdGVyOjpD bG9zZSIsICIiLCAtMSwgIiIsIC0xLCAiIiwgLTEsICIiLCAtMSwgIiIsIC0xLCAiIiwgLTEpOwot IH0KLSAKLSsjZW5kaWYgLy9VU0VfSU1BR0VNQUdJQ0sKLWRpZmYgLS1naXQgYS9zcmMvVGV4dFJl YWRlci5jcHAgYi9zcmMvVGV4dFJlYWRlci5jcHAKLWluZGV4IDgyMzRhYTVkLi5iM2ZhZWNmMyAx MDA2NDQKLS0tLSBhL3NyYy9UZXh0UmVhZGVyLmNwcAotKysrIGIvc3JjL1RleHRSZWFkZXIuY3Bw Ci1AQCAtMjUsNiArMjUsOSBAQAotICAqIGFsb25nIHdpdGggT3BlblNob3QgTGlicmFyeS4gSWYg bm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgotICAqLwotIAotKy8vIFJl cXVpcmUgSW1hZ2VNYWdpY2sgc3VwcG9ydAotKyNpZmRlZiBVU0VfSU1BR0VNQUdJQ0sKLSsKLSAj aW5jbHVkZSAiLi4vaW5jbHVkZS9UZXh0UmVhZGVyLmgiCi0gCi0gdXNpbmcgbmFtZXNwYWNlIG9w ZW5zaG90OwotQEAgLTI1NCwzICsyNTcsNSBAQCB2b2lkIFRleHRSZWFkZXI6OlNldEpzb25WYWx1 ZShKc29uOjpWYWx1ZSByb290KSB7Ci0gCQlPcGVuKCk7Ci0gCX0KLSB9Ci0rCi0rI2VuZGlmIC8v VVNFX0lNQUdFTUFHSUNLCi1kaWZmIC0tZ2l0IGEvc3JjL2VmZmVjdHMvTWFzay5jcHAgYi9zcmMv ZWZmZWN0cy9NYXNrLmNwcAotaW5kZXggZjhmMzRhYzYuLmFiNjM0NjU0IDEwMDY0NAotLS0tIGEv c3JjL2VmZmVjdHMvTWFzay5jcHAKLSsrKyBiL3NyYy9lZmZlY3RzL01hc2suY3BwCi1AQCAtMjM0 LDExICsyMzQsMTEgQEAgdm9pZCBNYXNrOjpTZXRKc29uVmFsdWUoSnNvbjo6VmFsdWUgcm9vdCkg ewotIAkJCQkJcmVhZGVyLT5TZXRKc29uVmFsdWUocm9vdFsicmVhZGVyIl0pOwotIAotIAkjaWZk ZWYgVVNFX0lNQUdFTUFHSUNLCi0tCQkJCQl9IGVsc2UgaWYgKHR5cGUgPT0gIkltYWdlUmVhZGVy IikgewotKwkJCQl9IGVsc2UgaWYgKHR5cGUgPT0gIkltYWdlUmVhZGVyIikgewotIAotLQkJCQkJ CS8vIENyZWF0ZSBuZXcgcmVhZGVyCi0tCQkJCQkJcmVhZGVyID0gbmV3IEltYWdlUmVhZGVyKHJv b3RbInJlYWRlciJdWyJwYXRoIl0uYXNTdHJpbmcoKSk7Ci0tCQkJCQkJcmVhZGVyLT5TZXRKc29u VmFsdWUocm9vdFsicmVhZGVyIl0pOwotKwkJCQkJLy8gQ3JlYXRlIG5ldyByZWFkZXIKLSsJCQkJ CXJlYWRlciA9IG5ldyBJbWFnZVJlYWRlcihyb290WyJyZWFkZXIiXVsicGF0aCJdLmFzU3RyaW5n KCkpOwotKwkJCQkJcmVhZGVyLT5TZXRKc29uVmFsdWUocm9vdFsicmVhZGVyIl0pOwotIAkjZW5k aWYKLSAKLSAJCQkJfSBlbHNlIGlmICh0eXBlID09ICJRdEltYWdlUmVhZGVyIikgewotQEAgLTI5 MCw0ICsyOTAsMyBAQCBzdHJpbmcgTWFzazo6UHJvcGVydGllc0pTT04oaW50NjRfdCByZXF1ZXN0 ZWRfZnJhbWUpIHsKLSAJLy8gUmV0dXJuIGZvcm1hdHRlZCBzdHJpbmcKLSAJcmV0dXJuIHJvb3Qu dG9TdHlsZWRTdHJpbmcoKTsKLSB9Ci0tCmRpZmYgLS1naXQgYS9zcmNwa2dzL2xpYm9wZW5zaG90 L3RlbXBsYXRlIGIvc3JjcGtncy9saWJvcGVuc2hvdC90ZW1wbGF0ZQppbmRleCAwNzAxYmVkMGRi Zi4uNTdiM2VkY2Y3ZTMgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvbGlib3BlbnNob3QvdGVtcGxhdGUK KysrIGIvc3JjcGtncy9saWJvcGVuc2hvdC90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVt cGxhdGUgZmlsZSBmb3IgJ2xpYm9wZW5zaG90JwogcGtnbmFtZT1saWJvcGVuc2hvdAotdmVyc2lv bj0wLjIuMwotcmV2aXNpb249MwordmVyc2lvbj0wLjIuNQorcmV2aXNpb249MQogYXJjaHM9Imk2 ODYgeDg2XzY0IHBwYzY0bGUiCiBidWlsZF9zdHlsZT1jbWFrZQogY29uZmlndXJlX2FyZ3M9Ii1E RU5BQkxFX1JVQlk9T0ZGIC1EVVNFX1NZU1RFTV9KU09OQ1BQPU9OIiAjIEJ1aWxkcyBmYWlsIHdp dGggUnVieS0yLjQuMQpAQCAtMTUsMTQgKzE1LDkgQEAgbWFpbnRhaW5lcj0iU3BlbmNlciBIaWxs IDxzcGVuY2Vybmg3N0BnbWFpbC5jb20+IgogbGljZW5zZT0iTEdQTC0zLjAtb3ItbGF0ZXIiCiBo b21lcGFnZT0iaHR0cHM6Ly9naXRodWIuY29tL09wZW5TaG90L2xpYm9wZW5zaG90IgogZGlzdGZp bGVzPSJodHRwczovL2dpdGh1Yi5jb20vT3BlblNob3QvbGlib3BlbnNob3QvYXJjaGl2ZS92JHt2 ZXJzaW9ufS50YXIuZ3oiCi1jaGVja3N1bT04NTM2YjBhNzkwYjBkOThlZDRjM2IxMGUxMWQxYjM0 YWU2OGNjYmM3MTA4ODdlMzcwM2E1MTQzZDk1NTk4NzQ2CitjaGVja3N1bT04YWU3ZDIyNmZiZDJl ZmJjODRkYTRmN2Q5ZDhjN2YzY2M5NjE2ZTRkZTQ2ZTEyMzNlM2IwYTg0YWMwYTQyOWJjCiBwYXRj aF9hcmdzPSItTnAxIgogCi1wcmVfY29uZmlndXJlKCkgewotCSMgdmVuZG9yZWQgcHl0aG9uIGNt YWtlIG1vZHVsZSBkb2VzIG5vdCBmaW5kIHB5dGhvbiAzLjgKLQlybSBjbWFrZS9Nb2R1bGVzL0Zp bmRQeXRob25MaWJzLmNtYWtlCi19Ci0KIGxpYm9wZW5zaG90LWRldmVsX3BhY2thZ2UoKSB7CiAJ c2hvcnRfZGVzYys9IiAtIGRldmVsb3BtZW50IGZpbGVzIgogCXBrZ19pbnN0YWxsKCkgewoKRnJv bSAyYmRmMGMzMjRhZmI2Nzk0MGMyZTM3NmY2YzM3YTRiMzc4ZDE3ODY5IE1vbiBTZXAgMTcgMDA6 MDA6MDAgMjAwMQpGcm9tOiBjcmF0ZXIyMTUwIDxjcmF0ZXJAcXdlcnR5dWlvcC5kZT4KRGF0ZTog U3VuLCA1IEFwciAyMDIwIDIxOjM5OjQ1ICswMjAwClN1YmplY3Q6IFtQQVRDSCAzLzNdIG9wZW5z aG90OiB1cGRhdGUgdG8gMi41LjEKCi0tLQogLi4uL2Rpc2FibGUtZ29vZ2xlLWFuYWx5dGljcy1i eS1kZWZhdWx0LnBhdGNoICB8IDE4IC0tLS0tLS0tLS0tLS0tLS0tLQogc3JjcGtncy9vcGVuc2hv dC90ZW1wbGF0ZSAgICAgICAgICAgICAgICAgICAgICB8ICA3ICsrKy0tLS0KIDIgZmlsZXMgY2hh bmdlZCwgMyBpbnNlcnRpb25zKCspLCAyMiBkZWxldGlvbnMoLSkKIGRlbGV0ZSBtb2RlIDEwMDY0 NCBzcmNwa2dzL29wZW5zaG90L3BhdGNoZXMvZGlzYWJsZS1nb29nbGUtYW5hbHl0aWNzLWJ5LWRl ZmF1bHQucGF0Y2gKCmRpZmYgLS1naXQgYS9zcmNwa2dzL29wZW5zaG90L3BhdGNoZXMvZGlzYWJs ZS1nb29nbGUtYW5hbHl0aWNzLWJ5LWRlZmF1bHQucGF0Y2ggYi9zcmNwa2dzL29wZW5zaG90L3Bh dGNoZXMvZGlzYWJsZS1nb29nbGUtYW5hbHl0aWNzLWJ5LWRlZmF1bHQucGF0Y2gKZGVsZXRlZCBm aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDYyZGI0ZjNkYzkyLi4wMDAwMDAwMDAwMAotLS0gYS9zcmNw a2dzL29wZW5zaG90L3BhdGNoZXMvZGlzYWJsZS1nb29nbGUtYW5hbHl0aWNzLWJ5LWRlZmF1bHQu cGF0Y2gKKysrIC9kZXYvbnVsbApAQCAtMSwxOCArMCwwIEBACi0tLS0gc3JjL3NldHRpbmdzL19k ZWZhdWx0LnNldHRpbmdzLm9yaWcJMjAxNi0wOS0wNCAwODo1Nzo0NS41OTE2ODU4MTcgKzAyMDAK LSsrKyBzcmMvc2V0dGluZ3MvX2RlZmF1bHQuc2V0dGluZ3MJMjAxNi0wOS0wNCAwODo1Nzo1OS41 Mjg2ODY1MzYgKzAyMDAKLUBAIC0yMzIsNyArMjMyLDcgQEAKLSAgICAgInJlc3RhcnQiOiB0cnVl Ci0gICB9LAotICAgewotLSAgICAidmFsdWUiOiB0cnVlLAotKyAgICAidmFsdWUiOiBmYWxzZSwK LSAgICAgInRpdGxlIjogIlNlbmQgQW5vbnltb3VzIE1ldHJpY3MgYW5kIEVycm9ycyIsCi0gICAg ICJ0eXBlIjogImJvb2wiLAotICAgICAiY2F0ZWdvcnkiOiAiRGVidWciLAotQEAgLTYyOCw0ICs2 MjgsNCBAQAotICAgICAidmFsdWUiOiAiQ3RybCtJIiwKLSAgICAgInR5cGUiOiAidGV4dCIKLSAg IH0KLS1dCi1cIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKLStdCmRpZmYgLS1naXQgYS9zcmNw a2dzL29wZW5zaG90L3RlbXBsYXRlIGIvc3JjcGtncy9vcGVuc2hvdC90ZW1wbGF0ZQppbmRleCBk NzFiNGQwOWZhZS4uM2VlNzMwNjFmODMgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3Mvb3BlbnNob3QvdGVt cGxhdGUKKysrIGIvc3JjcGtncy9vcGVuc2hvdC90ZW1wbGF0ZQpAQCAtMSwxMSArMSwxMCBAQAog IyBUZW1wbGF0ZSBmaWxlIGZvciAnb3BlbnNob3QnCiBwa2duYW1lPW9wZW5zaG90Ci12ZXJzaW9u PTIuNC40Ci1yZXZpc2lvbj0yCit2ZXJzaW9uPTIuNS4xCityZXZpc2lvbj0xCiBhcmNocz0iaTY4 NiB4ODZfNjQgcHBjNjRsZSIKIHdya3NyYz0iJHtwa2duYW1lfS1xdC0ke3ZlcnNpb259IgogYnVp bGRfc3R5bGU9cHl0aG9uMy1tb2R1bGUKLXB5Y29tcGlsZV9tb2R1bGU9Im9wZW5zaG90X3F0Igog aG9zdG1ha2VkZXBlbmRzPSJweXRob24zIgogbWFrZWRlcGVuZHM9ImZmbXBlZy1kZXZlbCBweXRo b24zLVB5UXQ1IHB5dGhvbjMtc2V0dXB0b29scyIKIGRlcGVuZHM9IkltYWdlTWFnaWNrIGxpYm9w ZW5zaG90IG1sdCBweXRob24zLVB5UXQ1LXN2ZwpAQCAtMTUsNCArMTQsNCBAQCBtYWludGFpbmVy PSJTcGVuY2VyIEhpbGwgPHNwZW5jZXJuaDc3QGdtYWlsLmNvbT4iCiBsaWNlbnNlPSJHUEwtMy4w LW9yLWxhdGVyIgogaG9tZXBhZ2U9Imh0dHBzOi8vd3d3Lm9wZW5zaG90Lm9yZyIKIGRpc3RmaWxl cz0iaHR0cHM6Ly9naXRodWIuY29tL09wZW5TaG90L29wZW5zaG90LXF0L2FyY2hpdmUvdiR7dmVy c2lvbn0udGFyLmd6IgotY2hlY2tzdW09ODE5NzkyM2IzZmZmMjAxMGVlNjljNzU0Njk4MTg1NDM2 NzRhMTJmY2I4ZmNiMDg5NDQ0NzFlNGVhZDM0MjZiZQorY2hlY2tzdW09NGMyNWViOWE1ZGU0MmU3 NDlkZTRjNmNhMmY3YTMxM2M2MGUxMjgzZmU1MmQ3MGMxMjE2MjlkYmI4YmIyZGY3Ygo= --===============0376839380519083880==--