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 812 invoked from network); 22 May 2020 11:34:56 -0000 Received: from localhost (HELO inbox.vuxu.org) (::1) by localhost with ESMTPUTF8; 22 May 2020 11:34:56 -0000 Content-Type: multipart/mixed; boundary="===============8245060924641377263==" MIME-Version: 1.0 Subject: =?utf8?q?=5BPR_PATCH=5D_openshot=2C_libopenshot_and_libopenshot-audio_update?= To: ml@inbox.vuxu.org From: m3tav3rse Reply-to: ml@inbox.vuxu.org Message-ID: Date: Fri, 22 May 2020 13:34:56 +0200 List-Id: GitHub notification mails are now in MIME to allow UTF8. --===============8245060924641377263== Content-Type: text/plain; charset="utf8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 VGhlcmUgaXMgYSBuZXcgcHVsbCByZXF1ZXN0IGJ5IG0zdGF2M3JzZSBhZ2FpbnN0IG1hc3RlciBv biB0aGUgdm9pZC1wYWNrYWdlcyByZXBvc2l0b3J5CgpodHRwczovL2dpdGh1Yi5jb20vbTN0YXYz cnNlL3ZvaWQtcGFja2FnZXMgb3BlbnNob3QtdXBkYXRlCmh0dHBzOi8vZ2l0aHViLmNvbS92b2lk LWxpbnV4L3ZvaWQtcGFja2FnZXMvcHVsbC8yMjE5NgoKb3BlbnNob3QsIGxpYm9wZW5zaG90IGFu ZCBsaWJvcGVuc2hvdC1hdWRpbyB1cGRhdGUKU3VwZXJzZWRlcyAjMjA3MzMuDQpJbmNsdWRlcyBm aXggZm9yIGFyY2hpdGVjdHVyZXMgd2l0aG91dCBhdG9taWM4Lg0KCgpBIHBhdGNoIGZpbGUgZnJv bSBodHRwczovL2dpdGh1Yi5jb20vdm9pZC1saW51eC92b2lkLXBhY2thZ2VzL3B1bGwvMjIxOTYu cGF0Y2ggaXMgYXR0YWNoZWQ= --===============8245060924641377263== Content-Type: text/x-diff MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="github-pr-openshot-update-22196.patch" RnJvbSA2ZGZlZjdlOTQyODJkMDJhYzcwMjk5YTAyZGExNmM1ZjgyZTZmNmVkIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBjcmF0ZXIyMTUwIDxjcmF0ZXJAcXdlcnR5dWlvcC5kZT4KRGF0 ZTogU3VuLCA1IEFwciAyMDIwIDIxOjM4OjA0ICswMjAwClN1YmplY3Q6IFtQQVRDSCAxLzNdIGxp Ym9wZW5zaG90LWF1ZGlvOiB1cGRhdGUgdG8gMC4yLjAKCi0tLQogLi4uL3BhdGNoZXMvZml4LXN0 ZF9pc2Zpbml0ZS5wYXRjaCAgICAgICAgICAgIHwgIDIzIC0tLQogc3JjcGtncy9saWJvcGVuc2hv dC1hdWRpby9wYXRjaGVzL2djYzkucGF0Y2ggIHwgMTM2IC0tLS0tLS0tLS0tLS0tLS0tLQogc3Jj cGtncy9saWJvcGVuc2hvdC1hdWRpby90ZW1wbGF0ZSAgICAgICAgICAgIHwgIDExICstCiAzIGZp bGVzIGNoYW5nZWQsIDggaW5zZXJ0aW9ucygrKSwgMTYyIGRlbGV0aW9ucygtKQogZGVsZXRlIG1v ZGUgMTAwNjQ0IHNyY3BrZ3MvbGlib3BlbnNob3QtYXVkaW8vcGF0Y2hlcy9maXgtc3RkX2lzZmlu aXRlLnBhdGNoCiBkZWxldGUgbW9kZSAxMDA2NDQgc3JjcGtncy9saWJvcGVuc2hvdC1hdWRpby9w YXRjaGVzL2djYzkucGF0Y2gKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2xpYm9wZW5zaG90LWF1ZGlv L3BhdGNoZXMvZml4LXN0ZF9pc2Zpbml0ZS5wYXRjaCBiL3NyY3BrZ3MvbGlib3BlbnNob3QtYXVk aW8vcGF0Y2hlcy9maXgtc3RkX2lzZmluaXRlLnBhdGNoCmRlbGV0ZWQgZmlsZSBtb2RlIDEwMDY0 NAppbmRleCAyMzFmMTgzZDVhNy4uMDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtncy9saWJvcGVuc2hv dC1hdWRpby9wYXRjaGVzL2ZpeC1zdGRfaXNmaW5pdGUucGF0Y2gKKysrIC9kZXYvbnVsbApAQCAt MSwyMyArMCwwIEBACi1GaXggZm9yIGdjYzYgd2hpY2ggZG9lcyBub3QgaGF2ZSBzdGQ6OmlzZmlu aXRlKCkgYnV0IHN1Z2dlc3RzCi10byB1c2Ugc3RkOjpmaW5pdGUoKSBpbnN0ZWFkLgotCi0tLS0g SnVjZUxpYnJhcnlDb2RlL21vZHVsZXMvanVjZV9jb3JlL21hdGhzL2p1Y2VfTWF0aHNGdW5jdGlv bnMuaAkyMDE2LTA4LTMwIDA2OjI0OjI3LjAwMDAwMDAwMCArMDIwMAotKysrIEp1Y2VMaWJyYXJ5 Q29kZS9tb2R1bGVzL2p1Y2VfY29yZS9tYXRocy9qdWNlX01hdGhzRnVuY3Rpb25zLmgJMjAxNi0x Mi0xMiAxNDozMzoyOS4xNzAwMDU1NzYgKzAxMDAKLUBAIC0zODEsNyArMzgxLDcgQEAKLSAgICAj aWYgSlVDRV9XSU5ET1dTICYmICFKVUNFX01JTkdXDQotICAgICByZXR1cm4gX2Zpbml0ZSAodmFs dWUpICE9IDA7DQotICAgICNlbHNlDQotLSAgICByZXR1cm4gc3RkOjppc2Zpbml0ZSAodmFsdWUp Ow0KLSsgICAgcmV0dXJuIGZpbml0ZSAodmFsdWUpOw0KLSAgICAjZW5kaWYNCi0gfQ0KLSANCi1A QCAtMzkxLDcgKzM5MSw3IEBACi0gICAgI2lmIEpVQ0VfV0lORE9XUyAmJiAhSlVDRV9NSU5HVw0K LSAgICAgcmV0dXJuIF9maW5pdGUgKHZhbHVlKSAhPSAwOw0KLSAgICAjZWxzZQ0KLS0gICAgcmV0 dXJuIHN0ZDo6aXNmaW5pdGUgKHZhbHVlKTsNCi0rICAgIHJldHVybiBmaW5pdGUgKHZhbHVlKTsN Ci0gICAgI2VuZGlmDQotIH0NCi0gDQpkaWZmIC0tZ2l0IGEvc3JjcGtncy9saWJvcGVuc2hvdC1h dWRpby9wYXRjaGVzL2djYzkucGF0Y2ggYi9zcmNwa2dzL2xpYm9wZW5zaG90LWF1ZGlvL3BhdGNo ZXMvZ2NjOS5wYXRjaApkZWxldGVkIGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggZDJhY2JkMjkyYzgu LjAwMDAwMDAwMDAwCi0tLSBhL3NyY3BrZ3MvbGlib3BlbnNob3QtYXVkaW8vcGF0Y2hlcy9nY2M5 LnBhdGNoCisrKyAvZGV2L251bGwKQEAgLTEsMTM2ICswLDAgQEAKLWNvbW1pdCBmYTBlNGVmMWM0 OTY5YWMxZjZjNTRkMzA2ZTY2YjI3YTMxZGE1Yjg3Ci1BdXRob3I6IHE2NiA8ZGFuaWVsQG9jdGFm b3JnZS5vcmc+Ci1EYXRlOiAgIE1vbiBEZWMgMjMgMTg6MjM6MjggMjAxOSArMDEwMAotCi0gICAg Zml4IGJ1aWxkIHdpdGggZ2NjOQotICAgIAotICAgIEFkYXB0ZWQgZnJvbSB1cHN0cmVhbS4KLQot ZGlmZiAtLWdpdCBKdWNlTGlicmFyeUNvZGUvbW9kdWxlcy9qdWNlX2dyYXBoaWNzL2NvbG91ci9q dWNlX1BpeGVsRm9ybWF0cy5oIEp1Y2VMaWJyYXJ5Q29kZS9tb2R1bGVzL2p1Y2VfZ3JhcGhpY3Mv Y29sb3VyL2p1Y2VfUGl4ZWxGb3JtYXRzLmgKLWluZGV4IDBkZjU5ODcuLmVhMmU5OTAgMTAwNjQ0 Ci0tLS0gSnVjZUxpYnJhcnlDb2RlL21vZHVsZXMvanVjZV9ncmFwaGljcy9jb2xvdXIvanVjZV9Q aXhlbEZvcm1hdHMuaAotKysrIEp1Y2VMaWJyYXJ5Q29kZS9tb2R1bGVzL2p1Y2VfZ3JhcGhpY3Mv Y29sb3VyL2p1Y2VfUGl4ZWxGb3JtYXRzLmgKLUBAIC0xMDgsMTkgKzEwOCw2IEBAIHB1YmxpYzoK LSAgICAgZm9yY2VkaW5saW5lIHVpbnQ4IGdldEdyZWVuKCkgY29uc3Qgbm9leGNlcHQgICAgICB7 IHJldHVybiBjb21wb25lbnRzLmc7IH0NCi0gICAgIGZvcmNlZGlubGluZSB1aW50OCBnZXRCbHVl KCkgY29uc3Qgbm9leGNlcHQgICAgICAgeyByZXR1cm4gY29tcG9uZW50cy5iOyB9DQotIA0KLS0g ICAjaWYgSlVDRV9HQ0MgJiYgISBKVUNFX0NMQU5HDQotLSAgICAvLyBOQiB0aGVzZSBhcmUgaGVy ZSBhcyBhIHdvcmthcm91bmQgYmVjYXVzZSBHQ0MgcmVmdXNlcyB0byBiaW5kIHRvIHBhY2tlZCB2 YWx1ZXMuDQotLSAgICBmb3JjZWRpbmxpbmUgdWludDgmIGdldEFscGhhKCkgbm9leGNlcHQgICAg ICAgICAgIHsgcmV0dXJuIGNvbXBzIFtpbmRleEFdOyB9DQotLSAgICBmb3JjZWRpbmxpbmUgdWlu dDgmIGdldFJlZCgpIG5vZXhjZXB0ICAgICAgICAgICAgIHsgcmV0dXJuIGNvbXBzIFtpbmRleFJd OyB9DQotLSAgICBmb3JjZWRpbmxpbmUgdWludDgmIGdldEdyZWVuKCkgbm9leGNlcHQgICAgICAg ICAgIHsgcmV0dXJuIGNvbXBzIFtpbmRleEddOyB9DQotLSAgICBmb3JjZWRpbmxpbmUgdWludDgm IGdldEJsdWUoKSBub2V4Y2VwdCAgICAgICAgICAgIHsgcmV0dXJuIGNvbXBzIFtpbmRleEJdOyB9 DQotLSAgICNlbHNlDQotLSAgICBmb3JjZWRpbmxpbmUgdWludDgmIGdldEFscGhhKCkgbm9leGNl cHQgICAgICAgICAgIHsgcmV0dXJuIGNvbXBvbmVudHMuYTsgfQ0KLS0gICAgZm9yY2VkaW5saW5l IHVpbnQ4JiBnZXRSZWQoKSBub2V4Y2VwdCAgICAgICAgICAgICB7IHJldHVybiBjb21wb25lbnRz LnI7IH0NCi0tICAgIGZvcmNlZGlubGluZSB1aW50OCYgZ2V0R3JlZW4oKSBub2V4Y2VwdCAgICAg ICAgICAgeyByZXR1cm4gY29tcG9uZW50cy5nOyB9DQotLSAgICBmb3JjZWRpbmxpbmUgdWludDgm IGdldEJsdWUoKSBub2V4Y2VwdCAgICAgICAgICAgIHsgcmV0dXJuIGNvbXBvbmVudHMuYjsgfQ0K LS0gICAjZW5kaWYNCi0tDQotICAgICAvLz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQ0KLSAgICAgLyoq IENvcGllcyBhbm90aGVyIHBpeGVsIGNvbG91ciBvdmVyIHRoaXMgb25lLg0KLSANCi1AQCAtMzM5 LDkgKzMyNiw2IEBAIHByaXZhdGU6Ci0gICAgIHsNCi0gICAgICAgICB1aW50MzIgaW50ZXJuYWw7 DQotICAgICAgICAgQ29tcG9uZW50cyBjb21wb25lbnRzOw0KLS0gICAgICAgI2lmIEpVQ0VfR0ND DQotLSAgICAgICAgdWludDggY29tcHNbNF07ICAvLyBoZWxwZXIgc3RydWN0IG5lZWRlZCBiZWNh dXNlIGdjYyBkb2VzIG5vdCBhbGxvdyByZWZlcmVuY2VzIHRvIHBhY2tlZCB1bmlvbiBtZW1iZXJz DQotLSAgICAgICAjZW5kaWYNCi0gICAgIH07DQotIH0NCi0gI2lmbmRlZiBET1hZR0VODQotQEAg LTQyOCwxMCArNDEyLDYgQEAgcHVibGljOgotICAgICBmb3JjZWRpbmxpbmUgdWludDggZ2V0R3Jl ZW4oKSBjb25zdCBub2V4Y2VwdCAgICB7IHJldHVybiBnOyB9DQotICAgICBmb3JjZWRpbmxpbmUg dWludDggZ2V0Qmx1ZSgpIGNvbnN0IG5vZXhjZXB0ICAgICB7IHJldHVybiBiOyB9DQotIA0KLS0g ICAgZm9yY2VkaW5saW5lIHVpbnQ4JiBnZXRSZWQoKSBub2V4Y2VwdCAgICAgICAgICAgeyByZXR1 cm4gcjsgfQ0KLS0gICAgZm9yY2VkaW5saW5lIHVpbnQ4JiBnZXRHcmVlbigpIG5vZXhjZXB0ICAg ICAgICAgeyByZXR1cm4gZzsgfQ0KLS0gICAgZm9yY2VkaW5saW5lIHVpbnQ4JiBnZXRCbHVlKCkg bm9leGNlcHQgICAgICAgICAgeyByZXR1cm4gYjsgfQ0KLS0NCi0gICAgIC8vPT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09DQotICAgICAvKiogQ29waWVzIGFub3RoZXIgcGl4ZWwgY29sb3VyIG92ZXIgdGhp cyBvbmUuDQotIA0KLUBAIC02NDUsNyArNjI1LDYgQEAgcHVibGljOgotIA0KLSAgICAgLy89PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT0NCi0gICAgIGZvcmNlZGlubGluZSB1aW50OCBnZXRBbHBoYSgpIGNv bnN0IG5vZXhjZXB0ICAgIHsgcmV0dXJuIGE7IH0NCi0tICAgIGZvcmNlZGlubGluZSB1aW50OCYg Z2V0QWxwaGEoKSBub2V4Y2VwdCAgICAgICAgIHsgcmV0dXJuIGE7IH0NCi0gDQotICAgICBmb3Jj ZWRpbmxpbmUgdWludDggZ2V0UmVkKCkgY29uc3Qgbm9leGNlcHQgICAgICB7IHJldHVybiAwOyB9 DQotICAgICBmb3JjZWRpbmxpbmUgdWludDggZ2V0R3JlZW4oKSBjb25zdCBub2V4Y2VwdCAgICB7 IHJldHVybiAwOyB9DQotZGlmZiAtLWdpdCBKdWNlTGlicmFyeUNvZGUvbW9kdWxlcy9qdWNlX2dy YXBoaWNzL25hdGl2ZS9qdWNlX1JlbmRlcmluZ0hlbHBlcnMuaCBKdWNlTGlicmFyeUNvZGUvbW9k dWxlcy9qdWNlX2dyYXBoaWNzL25hdGl2ZS9qdWNlX1JlbmRlcmluZ0hlbHBlcnMuaAotaW5kZXgg Y2Q4Y2QzNi4uODdiZjMzZSAxMDA2NDQKLS0tLSBKdWNlTGlicmFyeUNvZGUvbW9kdWxlcy9qdWNl X2dyYXBoaWNzL25hdGl2ZS9qdWNlX1JlbmRlcmluZ0hlbHBlcnMuaAotKysrIEp1Y2VMaWJyYXJ5 Q29kZS9tb2R1bGVzL2p1Y2VfZ3JhcGhpY3MvbmF0aXZlL2p1Y2VfUmVuZGVyaW5nSGVscGVycy5o Ci1AQCAtNTgzLDEwICs1ODMsNiBAQCBuYW1lc3BhY2UgRWRnZVRhYmxlRmlsbGVycwotICAgICAg ICAgICAgIHsNCi0gICAgICAgICAgICAgICAgIGFyZVJHQkNvbXBvbmVudHNFcXVhbCA9IHNvdXJj ZUNvbG91ci5nZXRSZWQoKSA9PSBzb3VyY2VDb2xvdXIuZ2V0R3JlZW4oKQ0KLSAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICYmIHNvdXJjZUNvbG91ci5nZXRHcmVl bigpID09IHNvdXJjZUNvbG91ci5nZXRCbHVlKCk7DQotLSAgICAgICAgICAgICAgICBmaWxsZXJb MF0uc2V0IChzb3VyY2VDb2xvdXIpOw0KLS0gICAgICAgICAgICAgICAgZmlsbGVyWzFdLnNldCAo c291cmNlQ29sb3VyKTsNCi0tICAgICAgICAgICAgICAgIGZpbGxlclsyXS5zZXQgKHNvdXJjZUNv bG91cik7DQotLSAgICAgICAgICAgICAgICBmaWxsZXJbM10uc2V0IChzb3VyY2VDb2xvdXIpOw0K LSAgICAgICAgICAgICB9DQotICAgICAgICAgICAgIGVsc2UNCi0gICAgICAgICAgICAgew0KLUBA IC02NDIsNyArNjM4LDYgQEAgbmFtZXNwYWNlIEVkZ2VUYWJsZUZpbGxlcnMKLSAgICAgICAgIGNv bnN0IEltYWdlOjpCaXRtYXBEYXRhJiBkZXN0RGF0YTsNCi0gICAgICAgICBQaXhlbFR5cGUqIGxp bmVQaXhlbHM7DQotICAgICAgICAgUGl4ZWxBUkdCIHNvdXJjZUNvbG91cjsNCi0tICAgICAgICBQ aXhlbFJHQiBmaWxsZXIgWzRdOw0KLSAgICAgICAgIGJvb2wgYXJlUkdCQ29tcG9uZW50c0VxdWFs Ow0KLSANCi0gICAgICAgICBmb3JjZWRpbmxpbmUgUGl4ZWxUeXBlKiBnZXRQaXhlbCAoY29uc3Qg aW50IHgpIGNvbnN0IG5vZXhjZXB0DQotQEAgLTY1Nyw0NyArNjUyLDEwIEBAIG5hbWVzcGFjZSBF ZGdlVGFibGVGaWxsZXJzCi0gDQotICAgICAgICAgZm9yY2VkaW5saW5lIHZvaWQgcmVwbGFjZUxp bmUgKFBpeGVsUkdCKiBkZXN0LCBjb25zdCBQaXhlbEFSR0IgY29sb3VyLCBpbnQgd2lkdGgpIGNv bnN0IG5vZXhjZXB0DQotICAgICAgICAgew0KLS0gICAgICAgICAgICBpZiAoZGVzdERhdGEucGl4 ZWxTdHJpZGUgPT0gc2l6ZW9mICgqZGVzdCkpDQotLSAgICAgICAgICAgIHsNCi0tICAgICAgICAg ICAgICAgIGlmIChhcmVSR0JDb21wb25lbnRzRXF1YWwpICAvLyBpZiBhbGwgdGhlIGNvbXBvbmVu dCB2YWx1ZXMgYXJlIHRoZSBzYW1lLCB3ZSBjYW4gY2hlYXQuLg0KLS0gICAgICAgICAgICAgICAg ew0KLS0gICAgICAgICAgICAgICAgICAgIG1lbXNldCAoZGVzdCwgY29sb3VyLmdldFJlZCgpLCAo c2l6ZV90KSB3aWR0aCAqIDMpOw0KLS0gICAgICAgICAgICAgICAgfQ0KLS0gICAgICAgICAgICAg ICAgZWxzZQ0KLS0gICAgICAgICAgICAgICAgew0KLS0gICAgICAgICAgICAgICAgICAgIGlmICh3 aWR0aCA+PiA1KQ0KLS0gICAgICAgICAgICAgICAgICAgIHsNCi0tICAgICAgICAgICAgICAgICAg ICAgICAgY29uc3QgaW50KiBjb25zdCBpbnRGaWxsZXIgPSByZWludGVycHJldF9jYXN0PGNvbnN0 IGludCo+IChmaWxsZXIpOw0KLS0NCi0tICAgICAgICAgICAgICAgICAgICAgICAgd2hpbGUgKHdp ZHRoID4gOCAmJiAoKChwb2ludGVyX3NpemVkX2ludCkgZGVzdCkgJiA3KSAhPSAwKQ0KLS0gICAg ICAgICAgICAgICAgICAgICAgICB7DQotLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXN0 LT5zZXQgKGNvbG91cik7DQotLSAgICAgICAgICAgICAgICAgICAgICAgICAgICArK2Rlc3Q7DQot LSAgICAgICAgICAgICAgICAgICAgICAgICAgICAtLXdpZHRoOw0KLS0gICAgICAgICAgICAgICAg ICAgICAgICB9DQotLQ0KLS0gICAgICAgICAgICAgICAgICAgICAgICB3aGlsZSAod2lkdGggPiA0 KQ0KLS0gICAgICAgICAgICAgICAgICAgICAgICB7DQotLSAgICAgICAgICAgICAgICAgICAgICAg ICAgICBpbnQqIGQgPSByZWludGVycHJldF9jYXN0PGludCo+IChkZXN0KTsNCi0tICAgICAgICAg ICAgICAgICAgICAgICAgICAgICpkKysgPSBpbnRGaWxsZXJbMF07DQotLSAgICAgICAgICAgICAg ICAgICAgICAgICAgICAqZCsrID0gaW50RmlsbGVyWzFdOw0KLS0gICAgICAgICAgICAgICAgICAg ICAgICAgICAgKmQrKyA9IGludEZpbGxlclsyXTsNCi0tICAgICAgICAgICAgICAgICAgICAgICAg ICAgIGRlc3QgPSByZWludGVycHJldF9jYXN0PFBpeGVsUkdCKj4gKGQpOw0KLS0gICAgICAgICAg ICAgICAgICAgICAgICAgICAgd2lkdGggLT0gNDsNCi0tICAgICAgICAgICAgICAgICAgICAgICAg fQ0KLS0gICAgICAgICAgICAgICAgICAgIH0NCi0tDQotLSAgICAgICAgICAgICAgICAgICAgd2hp bGUgKC0td2lkdGggPj0gMCkNCi0tICAgICAgICAgICAgICAgICAgICB7DQotLSAgICAgICAgICAg ICAgICAgICAgICAgIGRlc3QtPnNldCAoY29sb3VyKTsNCi0tICAgICAgICAgICAgICAgICAgICAg ICAgKytkZXN0Ow0KLS0gICAgICAgICAgICAgICAgICAgIH0NCi0tICAgICAgICAgICAgICAgIH0N Ci0tICAgICAgICAgICAgfQ0KLS0gICAgICAgICAgICBlbHNlDQotLSAgICAgICAgICAgIHsNCi0t ICAgICAgICAgICAgICAgIEpVQ0VfUEVSRk9STV9QSVhFTF9PUF9MT09QIChzZXQgKGNvbG91cikp DQotLSAgICAgICAgICAgIH0NCi0rICAgICAgICAgICAgaWYgKChzaXplX3QpIGRlc3REYXRhLnBp eGVsU3RyaWRlID09IHNpemVvZiAoKmRlc3QpICYmIGFyZVJHQkNvbXBvbmVudHNFcXVhbCkNCi0r ICAgICAgICAgICAgICAgIG1lbXNldCAoKHZvaWQqKSBkZXN0LCBjb2xvdXIuZ2V0UmVkKCksIChz aXplX3QpIHdpZHRoICogMyk7ICAgLy8gaWYgYWxsIHRoZSBjb21wb25lbnQgdmFsdWVzIGFyZSB0 aGUgc2FtZSwgd2UgY2FuIGNoZWF0Li4NCi0rICAgICAgICAgICAgIGVsc2UNCi0rICAgICAgICAg ICAgICAgIEpVQ0VfUEVSRk9STV9QSVhFTF9PUF9MT09QIChzZXQgKGNvbG91cikpOw0KLSAgICAg ICAgIH0NCi0gDQotICAgICAgICAgZm9yY2VkaW5saW5lIHZvaWQgcmVwbGFjZUxpbmUgKFBpeGVs QWxwaGEqIGRlc3QsIGNvbnN0IFBpeGVsQVJHQiBjb2xvdXIsIGludCB3aWR0aCkgY29uc3Qgbm9l eGNlcHQNCmRpZmYgLS1naXQgYS9zcmNwa2dzL2xpYm9wZW5zaG90LWF1ZGlvL3RlbXBsYXRlIGIv c3JjcGtncy9saWJvcGVuc2hvdC1hdWRpby90ZW1wbGF0ZQppbmRleCA3OTc1MDUwZmM0OS4uZDlh NmE3MTk3MzQgMTAwNjQ0Ci0tLSBhL3NyY3BrZ3MvbGlib3BlbnNob3QtYXVkaW8vdGVtcGxhdGUK KysrIGIvc3JjcGtncy9saWJvcGVuc2hvdC1hdWRpby90ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAK ICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2xpYm9wZW5zaG90LWF1ZGlvJwogcGtnbmFtZT1saWJvcGVu c2hvdC1hdWRpbwotdmVyc2lvbj0wLjEuOAotcmV2aXNpb249MwordmVyc2lvbj0wLjIuMAorcmV2 aXNpb249MQogYnVpbGRfc3R5bGU9Y21ha2UKIGhvc3RtYWtlZGVwZW5kcz0iZG94eWdlbiIKIG1h a2VkZXBlbmRzPSJhbHNhLWxpYi1kZXZlbCBsaWJYY3Vyc29yLWRldmVsIGxpYlhpbmVyYW1hLWRl dmVsIGxpYlhyYW5kci1kZXZlbApAQCAtMTEsMTAgKzExLDE1IEBAIG1haW50YWluZXI9IlNwZW5j ZXIgSGlsbCA8c3BlbmNlcm5oNzdAZ21haWwuY29tPiIKIGxpY2Vuc2U9IkdQTC0zLjAtb3ItbGF0 ZXIiCiBob21lcGFnZT0iaHR0cHM6Ly9naXRodWIuY29tL09wZW5TaG90L2xpYm9wZW5zaG90LWF1 ZGlvIgogZGlzdGZpbGVzPSJodHRwczovL2dpdGh1Yi5jb20vT3BlblNob3QvbGlib3BlbnNob3Qt YXVkaW8vYXJjaGl2ZS92JHt2ZXJzaW9ufS50YXIuZ3oiCi1jaGVja3N1bT0zODRkMGVmMzljNzhm MTZkNzcwNDhkZTNjOTYxNTIzMjE3MjQwODRmOTc4ZGM2MjI2NzVkZDZiYjE2ZTE1ZTE5CitjaGVj a3N1bT05MzdmZjRmMWMyZGZiOGFiNWQ1NmFkODViZWFjYWEyOWRmZDVhNzlhZjBkOWNmNjQ3Mzg2 MDM0ZmU5ODgyMzA5CiAKIENYWEZMQUdTPSItSSR7WEJQU19DUk9TU19CQVNFfS91c3IvaW5jbHVk ZS9mcmVldHlwZTIiCiAKK2lmIFsgIiRYQlBTX1RBUkdFVF9OT19BVE9NSUM4IiBdOyB0aGVuCisJ bWFrZWRlcGVuZHMrPSIgbGliYXRvbWljLWRldmVsIgorCUNYWEZMQUdTKz0iIC1sYXRvbWljICIK K2ZpCisKIGxpYm9wZW5zaG90LWF1ZGlvLWRldmVsX3BhY2thZ2UoKSB7CiAJc2hvcnRfZGVzYys9 IiAtIGRldmVsb3BtZW50IGZpbGVzIgogCWRlcGVuZHMrPSIgJHtzb3VyY2Vwa2d9Pj0ke3ZlcnNp b259XyR7cmV2aXNpb259IgoKRnJvbSAyMzY4NmY3NWY2ZTUzNjExNTNjZDU4ZjRiMWMzZjU4Mjg1 N2E5YjYxIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBjcmF0ZXIyMTUwIDxjcmF0ZXJA cXdlcnR5dWlvcC5kZT4KRGF0ZTogU3VuLCA1IEFwciAyMDIwIDIxOjM4OjM0ICswMjAwClN1Ympl Y3Q6IFtQQVRDSCAyLzNdIGxpYm9wZW5zaG90OiB1cGRhdGUgdG8gMC4yLjUKCi0tLQogY29tbW9u L3NobGlicyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAyICsKIC4uLi9saWJv cGVuc2hvdC9wYXRjaGVzL2ltYWdlbWFnaWNrNy5wYXRjaCAgICB8IDQxNyAtLS0tLS0tLS0tLS0t LS0tLS0KIHNyY3BrZ3MvbGlib3BlbnNob3QvdGVtcGxhdGUgICAgICAgICAgICAgICAgICB8ICAx MSArLQogMyBmaWxlcyBjaGFuZ2VkLCA1IGluc2VydGlvbnMoKyksIDQyNSBkZWxldGlvbnMoLSkK IGRlbGV0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL2xpYm9wZW5zaG90L3BhdGNoZXMvaW1hZ2VtYWdp Y2s3LnBhdGNoCgpkaWZmIC0tZ2l0IGEvY29tbW9uL3NobGlicyBiL2NvbW1vbi9zaGxpYnMKaW5k ZXggNDc3Y2U1ZjJkM2YuLjFiMWM4ZWU2Yjg1IDEwMDY0NAotLS0gYS9jb21tb24vc2hsaWJzCisr KyBiL2NvbW1vbi9zaGxpYnMKQEAgLTI0OTcsNiArMjQ5Nyw4IEBAIGxpYmdlcy0xLjAuc28uMCBn c3QxLWVkaXRpbmctc2VydmljZXMtMS42LjJfMQogbGlieWtuZW9tZ3Iuc28uMCBsaWJ5a25lb21n ci0wLjEuOF8xCiBsaWJvcGVuc2hvdC5zby4xNyBsaWJvcGVuc2hvdC0wLjIuM18xCiBsaWJvcGVu c2hvdC1hdWRpby5zby42IGxpYm9wZW5zaG90LWF1ZGlvLTAuMS41XzEKK2xpYm9wZW5zaG90LnNv LjE5IGxpYm9wZW5zaG90LTAuMi41XzMKK2xpYm9wZW5zaG90LWF1ZGlvLnNvLjcgbGlib3BlbnNo b3QtYXVkaW8tMC4yLjBfMQogbGlicHF4eC02LjMuc28gbGlicHF4eC02LjMuM18xCiBsaWJuZHBp LnNvLjEgbmRwaS0xLjZfMQogbGlibG9nLnNvIGFuZHJvaWQtc3R1ZGlvLTMuMC4xXzEKZGlmZiAt LWdpdCBhL3NyY3BrZ3MvbGlib3BlbnNob3QvcGF0Y2hlcy9pbWFnZW1hZ2ljazcucGF0Y2ggYi9z cmNwa2dzL2xpYm9wZW5zaG90L3BhdGNoZXMvaW1hZ2VtYWdpY2s3LnBhdGNoCmRlbGV0ZWQgZmls ZSBtb2RlIDEwMDY0NAppbmRleCA2MmM5OTY1ZWEyZC4uMDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtn cy9saWJvcGVuc2hvdC9wYXRjaGVzL2ltYWdlbWFnaWNrNy5wYXRjaAorKysgL2Rldi9udWxsCkBA IC0xLDQxNyArMCwwIEBACi1Gcm9tIGIwYjZlNDNkOGZmOTc3ZTQ4NTNmZTQ5NGE4ZWQ0ZjEwZGMy NWU1NzEgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCi1Gcm9tOiAiRmVSRCAoRnJhbmsgRGFuYSki IDxmZXJkbnljQGdtYWlsLmNvbT4KLURhdGU6IFRodSwgMTMgSnVuIDIwMTkgMDM6MTA6MTYgLTA0 MDAKLVN1YmplY3Q6IFtQQVRDSCAxLzJdIEFkZCBJbWFnZU1hZ2ljayA3IGNvbXBhdGliaWxpdHkK LU1JTUUtVmVyc2lvbjogMS4wCi1Db250ZW50LVR5cGU6IHRleHQvcGxhaW47IGNoYXJzZXQ9VVRG LTgKLUNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6IDhiaXQKLQotQSBuZXcgaGVhZGVyLCBgaW1j bHVkZS9NYWdpY2tVdGlsaXRpZXMuaGAsIGlzIGNyZWF0ZWQgdG8gaG9sZCB0aGUKLWNvbXBhdGli aWxpdHkgYCNkZWZpbmVgcy4KLQotVGhlIGltYWdlLWNvbnZlcnNpb24gY29kZSBpbiBgc3JjL0Zy YW1lLmNwcGAgcmVjZWl2ZWQgdGhlIG9ubHkKLW1ham9yIGNoYW5nZXMg4oCUIGluc3RlYWQgb2Yg ZG9pbmcgdGhlIGV4cG9ydCBieSBoYW5kIChhbmQgaGF2aW5nCi10byBhY2NvdW50IGZvciBjaGFu Z2VzIGluIHRoZSB1bmRlcmx5aW5nIEFQSSksIGl0IHVzZXMgdGhlCi1gTWFnaWNrQ29yZTo6RXhw b3J0SW1hZ2VQaXhlbHMoKWAgZnVuY3Rpb24gd2hpY2ggZG9lcyBiYXNpY2FsbHkKLXRoZSBzYW1l IHdvcmssIGJ1dCBhY2NvdW50cyBmb3IgYWxsIG9mIHRoZSBBUEkgY2hhbmdlcyBmb3IgdXMuCi1U aGUgQVBJIG9mIHRoYXQgZnVuY3Rpb24gaXMgX3VuY2hhbmdlZF8gZnJvbSBJTTYgdG8gSU03Lgot Ci1UT0RPOiBgTWFnaWNrQ29yZTo6RXhwb3J0SW1hZ2VQaXhlbHMoKWAgd2lsbCByZXR1cm4gYW4g YGV4Y2VwdGlvbmAKLXN0cnVjdCBpZiBpdCBlbmNvdW50ZXJzIGFueSBwcm9ibGVtcy4gQ3VycmVu dGx5IHRoZSBjb2RlIGlnbm9yZXMKLXRoYXQsIHdoaWNoIGl0IHNob3VsZCBub3QuCi0tLS0KLSBp bmNsdWRlL0ZyYW1lLmggICAgICAgICAgIHwgIDQgKy0tCi0gaW5jbHVkZS9JbWFnZVJlYWRlci5o ICAgICB8ICA4ICsrKy0tCi0gaW5jbHVkZS9JbWFnZVdyaXRlci5oICAgICB8ICA5ICsrKy0tLQot IGluY2x1ZGUvTWFnaWNrVXRpbGl0aWVzLmggfCA2MSArKysrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysKLSBpbmNsdWRlL1RleHRSZWFkZXIuaCAgICAgIHwgMTAgKysrKystLQot IGluY2x1ZGUvZWZmZWN0cy9NYXNrLmggICAgfCAgNyArKystLQotIHNyYy9GcmFtZS5jcHAgICAg ICAgICAgICAgfCAyMiArKysrKy0tLS0tLS0tLQotIHNyYy9JbWFnZVJlYWRlci5jcHAgICAgICAg fCAgOSArKysrLS0KLSBzcmMvSW1hZ2VXcml0ZXIuY3BwICAgICAgIHwgIDYgKysrLQotIHNyYy9U ZXh0UmVhZGVyLmNwcCAgICAgICAgfCAgNSArKysrCi0gc3JjL2VmZmVjdHMvTWFzay5jcHAgICAg ICB8ICA5ICsrKy0tLQotIDExIGZpbGVzIGNoYW5nZWQsIDExMiBpbnNlcnRpb25zKCspLCAzOCBk ZWxldGlvbnMoLSkKLSBjcmVhdGUgbW9kZSAxMDA2NDQgaW5jbHVkZS9NYWdpY2tVdGlsaXRpZXMu aAotCi1kaWZmIC0tZ2l0IGEvaW5jbHVkZS9GcmFtZS5oIGIvaW5jbHVkZS9GcmFtZS5oCi1pbmRl eCA2YjY4MmVkYi4uZWVmNzUwZmYgMTAwNjQ0Ci0tLS0gYS9pbmNsdWRlL0ZyYW1lLmgKLSsrKyBi L2luY2x1ZGUvRnJhbWUuaAotQEAgLTUzLDE0ICs1MywxMiBAQAotICNpbmNsdWRlIDxtZW1vcnk+ Ci0gI2luY2x1ZGUgPHVuaXN0ZC5oPgotICNpbmNsdWRlICJabXFMb2dnZXIuaCIKLS0jaWZkZWYg VVNFX0lNQUdFTUFHSUNLCi0tCSNpbmNsdWRlICJNYWdpY2srKy5oIgotLSNlbmRpZgotICNpbmNs dWRlICJKdWNlTGlicmFyeUNvZGUvSnVjZUhlYWRlci5oIgotICNpbmNsdWRlICJDaGFubmVsTGF5 b3V0cy5oIgotICNpbmNsdWRlICJBdWRpb0J1ZmZlclNvdXJjZS5oIgotICNpbmNsdWRlICJBdWRp b1Jlc2FtcGxlci5oIgotICNpbmNsdWRlICJGcmFjdGlvbi5oIgotKyNpbmNsdWRlICJNYWdpY2tV dGlsaXRpZXMuaCIKLSAKLSAjcHJhZ21hIFNXSUcgbm93YXJuPTM2MgotIHVzaW5nIG5hbWVzcGFj ZSBzdGQ7Ci1kaWZmIC0tZ2l0IGEvaW5jbHVkZS9JbWFnZVJlYWRlci5oIGIvaW5jbHVkZS9JbWFn ZVJlYWRlci5oCi1pbmRleCBlNjk4ZTBjMS4uN2FkMjMxNzMgMTAwNjQ0Ci0tLS0gYS9pbmNsdWRl L0ltYWdlUmVhZGVyLmgKLSsrKyBiL2luY2x1ZGUvSW1hZ2VSZWFkZXIuaAotQEAgLTI4LDYgKzI4 LDkgQEAKLSAjaWZuZGVmIE9QRU5TSE9UX0lNQUdFX1JFQURFUl9ICi0gI2RlZmluZSBPUEVOU0hP VF9JTUFHRV9SRUFERVJfSAotIAotKy8vIFJlcXVpcmUgSW1hZ2VNYWdpY2sgc3VwcG9ydAotKyNp ZmRlZiBVU0VfSU1BR0VNQUdJQ0sKLSsKLSAjaW5jbHVkZSAiUmVhZGVyQmFzZS5oIgotIAotICNp bmNsdWRlIDxjbWF0aD4KLUBAIC0zNiw5ICszOSw5IEBACi0gI2luY2x1ZGUgPG9tcC5oPgotICNp bmNsdWRlIDxzdGRpby5oPgotICNpbmNsdWRlIDxtZW1vcnk+Ci0tI2luY2x1ZGUgIk1hZ2ljaysr LmgiCi0gI2luY2x1ZGUgIkNhY2hlTWVtb3J5LmgiCi0gI2luY2x1ZGUgIkV4Y2VwdGlvbnMuaCIK LSsjaW5jbHVkZSAiTWFnaWNrVXRpbGl0aWVzLmgiCi0gCi0gdXNpbmcgbmFtZXNwYWNlIHN0ZDsK LSAKLUBAIC0xMTMsNCArMTE2LDUgQEAgbmFtZXNwYWNlIG9wZW5zaG90Ci0gCi0gfQotIAotLSNl bmRpZgotKyNlbmRpZiAvL1VTRV9JTUFHRU1BR0lDSwotKyNlbmRpZiAvL09QRU5TSE9UX0lNQUdF X1JFQURFUl9ICi1kaWZmIC0tZ2l0IGEvaW5jbHVkZS9JbWFnZVdyaXRlci5oIGIvaW5jbHVkZS9J bWFnZVdyaXRlci5oCi1pbmRleCAyNTE3NzEzNC4uYjdkZDdkYzIgMTAwNjQ0Ci0tLS0gYS9pbmNs dWRlL0ltYWdlV3JpdGVyLmgKLSsrKyBiL2luY2x1ZGUvSW1hZ2VXcml0ZXIuaAotQEAgLTMyLDEw ICszMiwxMSBAQAotICAqIGFsb25nIHdpdGggT3BlblNob3QgTGlicmFyeS4gSWYgbm90LCBzZWUg PGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgotICAqLwotIAotLQotICNpZm5kZWYgT1BF TlNIT1RfSU1BR0VfV1JJVEVSX0gKLSAjZGVmaW5lIE9QRU5TSE9UX0lNQUdFX1dSSVRFUl9ICi0g Ci0rI2lmZGVmIFVTRV9JTUFHRU1BR0lDSwotKwotICNpbmNsdWRlICJSZWFkZXJCYXNlLmgiCi0g I2luY2x1ZGUgIldyaXRlckJhc2UuaCIKLSAKLUBAIC00NCwxMSArNDUsMTAgQEAKLSAjaW5jbHVk ZSA8aW9zdHJlYW0+Ci0gI2luY2x1ZGUgPHN0ZGlvLmg+Ci0gI2luY2x1ZGUgPHVuaXN0ZC5oPgot LSNpbmNsdWRlICJNYWdpY2srKy5oIgotICNpbmNsdWRlICJDYWNoZU1lbW9yeS5oIgotICNpbmNs dWRlICJFeGNlcHRpb25zLmgiCi0gI2luY2x1ZGUgIk9wZW5NUFV0aWxpdGllcy5oIgotLQotKyNp bmNsdWRlICJNYWdpY2tVdGlsaXRpZXMuaCIKLSAKLSB1c2luZyBuYW1lc3BhY2Ugc3RkOwotIAot QEAgLTE0NSw0ICsxNDUsNSBAQCBuYW1lc3BhY2Ugb3BlbnNob3QKLSAKLSB9Ci0gCi0tI2VuZGlm Ci0rI2VuZGlmIC8vVVNFX0lNQUdFTUFHSUNLCi0rI2VuZGlmIC8vT1BFTlNIT1RfSU1BR0VfV1JJ VEVSX0gKLWRpZmYgLS1naXQgYS9pbmNsdWRlL01hZ2lja1V0aWxpdGllcy5oIGIvaW5jbHVkZS9N YWdpY2tVdGlsaXRpZXMuaAotbmV3IGZpbGUgbW9kZSAxMDA2NDQKLWluZGV4IDAwMDAwMDAwLi5m M2I3ZWExMgotLS0tIC9kZXYvbnVsbAotKysrIGIvaW5jbHVkZS9NYWdpY2tVdGlsaXRpZXMuaAot QEAgLTAsMCArMSw2MSBAQAotKy8qKgotKyAqIEBmaWxlCi0rICogQGJyaWVmIEhlYWRlciBmaWxl IGZvciBNYWdpY2tVdGlsaXRpZXMgKElNNi9JTTcgY29tcGF0aWJpbGl0eSBvdmVybGF5KQotKyAq IEBhdXRob3IgSm9uYXRoYW4gVGhvbWFzIDxqb25hdGhhbkBvcGVuc2hvdC5vcmc+Ci0rICogQGF1 dGhvciBGZVJEIChGcmFuayBEYW5hKSA8ZmVyZG55Y0BnbWFpbC5jb20+Ci0rICovCi0rCi0rLyog TElDRU5TRQotKyAqCi0rICogQ29weXJpZ2h0IChjKSAyMDA4LTIwMTkgT3BlblNob3QgU3R1ZGlv cywgTExDCi0rICogPGh0dHA6Ly93d3cub3BlbnNob3RzdHVkaW9zLmNvbS8+LiBUaGlzIGZpbGUg aXMgcGFydCBvZgotKyAqIE9wZW5TaG90IExpYnJhcnkgKGxpYm9wZW5zaG90KSwgYW4gb3Blbi1z b3VyY2UgcHJvamVjdCBkZWRpY2F0ZWQgdG8KLSsgKiBkZWxpdmVyaW5nIGhpZ2ggcXVhbGl0eSB2 aWRlbyBlZGl0aW5nIGFuZCBhbmltYXRpb24gc29sdXRpb25zIHRvIHRoZQotKyAqIHdvcmxkLiBG b3IgbW9yZSBpbmZvcm1hdGlvbiB2aXNpdCA8aHR0cDovL3d3dy5vcGVuc2hvdC5vcmcvPi4KLSsg KgotKyAqIE9wZW5TaG90IExpYnJhcnkgKGxpYm9wZW5zaG90KSBpcyBmcmVlIHNvZnR3YXJlOiB5 b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdAotKyAqIGFuZC9vciBtb2RpZnkgaXQgdW5kZXIgdGhlIHRl cm1zIG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljIExpY2Vuc2UKLSsgKiBhcyBwdWJs aXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBv ZiB0aGUKLSsgKiBMaWNlbnNlLCBvciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9u LgotKyAqCi0rICogT3BlblNob3QgTGlicmFyeSAobGlib3BlbnNob3QpIGlzIGRpc3RyaWJ1dGVk IGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZQotKyAqIHVzZWZ1bCwgYnV0IFdJVEhPVVQgQU5Z IFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKLSsgKiBNRVJD SEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUK LSsgKiBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4K LSsgKgotKyAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBMZXNz ZXIgR2VuZXJhbCBQdWJsaWMgTGljZW5zZQotKyAqIGFsb25nIHdpdGggT3BlblNob3QgTGlicmFy eS4gSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgotKyAqLwotKwot KyNpZm5kZWYgT1BFTlNIT1RfTUFHSUNLX1VUSUxJVElFU19ICi0rI2RlZmluZSBPUEVOU0hPVF9N QUdJQ0tfVVRJTElUSUVTX0gKLSsKLSsjaWZkZWYgVVNFX0lNQUdFTUFHSUNLCi0rCi0rICAgICNp bmNsdWRlICJNYWdpY2srKy5oIgotKwotKyAgICAvLyBEZXRlcm1pbmUgSW1hZ2VNYWdpY2sgdmVy c2lvbiwgYXMgSU03IGlzbid0IGZ1bGx5Ci0rICAgIC8vIGJhY2t3YXJkcyBjb21wYXRpYmxlCi0r ICAgICNpZm5kZWYgTkVXX01BR0lDSwotKwkgICAjZGVmaW5lIE5FV19NQUdJQ0sgKE1hZ2lja0xp YlZlcnNpb24gPj0gMHg3MDApCi0rCSNlbmRpZgotKwotKyAgICAvLyBJTTc6IDxNYWdpY2s6Oklt YWdlPi0+YWxwaGEoYm9vbCkKLSsgICAgLy8gSU02OiA8TWFnaWNrOjpJbWFnZT4tPm1hdHRlKGJv b2wpCi0rICAgICNpZiBORVdfTUFHSUNLCi0rICAgICAgICAjZGVmaW5lIE1BR0lDS19JTUFHRV9B TFBIQShpbSwgYSkgaW0tPmFscGhhKChhKSkKLSsgICAgI2Vsc2UKLSsgICAgICAgICNkZWZpbmUg TUFHSUNLX0lNQUdFX0FMUEhBKGltLCBhKSBpbS0+bWF0dGUoKGEpKQotKyAgICAjZW5kaWYKLSsK LSsgICAgLy8gSU03OiB2ZWN0b3I8TWFnaWNrOjpEcmF3YWJsZT4KLSsgICAgLy8gSU02OiBsaXN0 PE1hZ2ljazo6RHJhd2FibGU+Ci0rICAgIC8vIChib3RoIGhhdmUgdGhlIHB1c2hfYmFjaygpIG1l dGhvZCB3aGljaCBpcyBhbGwgd2UgdXNlKQotKyAgICAjaWYgTkVXX01BR0lDSwotKyAgICAgICAg I2RlZmluZSBNQUdJQ0tfRFJBV0FCTEUgdmVjdG9yPE1hZ2ljazo6RHJhd2FibGU+Ci0rICAgICNl bHNlCi0rICAgICAgICAjZGVmaW5lIE1BR0lDS19EUkFXQUJMRSBsaXN0PE1hZ2ljazo6RHJhd2Fi bGU+Ci0rICAgICNlbmRpZgotKwotKyNlbmRpZgotKyNlbmRpZgotZGlmZiAtLWdpdCBhL2luY2x1 ZGUvVGV4dFJlYWRlci5oIGIvaW5jbHVkZS9UZXh0UmVhZGVyLmgKLWluZGV4IGQ3ZDY1M2QyLi5i YjRiZGMyMiAxMDA2NDQKLS0tLSBhL2luY2x1ZGUvVGV4dFJlYWRlci5oCi0rKysgYi9pbmNsdWRl L1RleHRSZWFkZXIuaAotQEAgLTI4LDYgKzI4LDkgQEAKLSAjaWZuZGVmIE9QRU5TSE9UX1RFWFRf UkVBREVSX0gKLSAjZGVmaW5lIE9QRU5TSE9UX1RFWFRfUkVBREVSX0gKLSAKLSsvLyBSZXF1aXJl IEltYWdlTWFnaWNrIHN1cHBvcnQKLSsjaWZkZWYgVVNFX0lNQUdFTUFHSUNLCi0rCi0gI2luY2x1 ZGUgIlJlYWRlckJhc2UuaCIKLSAKLSAjaW5jbHVkZSA8Y21hdGg+Ci1AQCAtMzYsMTAgKzM5LDEw IEBACi0gI2luY2x1ZGUgPG9tcC5oPgotICNpbmNsdWRlIDxzdGRpby5oPgotICNpbmNsdWRlIDxt ZW1vcnk+Ci0tI2luY2x1ZGUgIk1hZ2ljaysrLmgiCi0gI2luY2x1ZGUgIkNhY2hlTWVtb3J5Lmgi Ci0gI2luY2x1ZGUgIkVudW1zLmgiCi0gI2luY2x1ZGUgIkV4Y2VwdGlvbnMuaCIKLSsjaW5jbHVk ZSAiTWFnaWNrVXRpbGl0aWVzLmgiCi0gCi0gdXNpbmcgbmFtZXNwYWNlIHN0ZDsKLSAKLUBAIC05 MSw3ICs5NCw3IEBAIG5hbWVzcGFjZSBvcGVuc2hvdAotIAkJc3RyaW5nIHRleHRfY29sb3I7Ci0g CQlzdHJpbmcgYmFja2dyb3VuZF9jb2xvcjsKLSAJCXN0ZDo6c2hhcmVkX3B0cjxNYWdpY2s6Oklt YWdlPiBpbWFnZTsKLS0JCWxpc3Q8TWFnaWNrOjpEcmF3YWJsZT4gbGluZXM7Ci0rCQlNQUdJQ0tf RFJBV0FCTEUgbGluZXM7Ci0gCQlib29sIGlzX29wZW47Ci0gCQlHcmF2aXR5VHlwZSBncmF2aXR5 OwotIAotQEAgLTE0NCw0ICsxNDcsNSBAQCBuYW1lc3BhY2Ugb3BlbnNob3QKLSAKLSB9Ci0gCi0t I2VuZGlmCi0rI2VuZGlmIC8vVVNFX0lNQUdFTUFHSUNLCi0rI2VuZGlmIC8vT1BFTlNIT1RfVEVY VF9SRUFERVJfSAotZGlmZiAtLWdpdCBhL2luY2x1ZGUvZWZmZWN0cy9NYXNrLmggYi9pbmNsdWRl L2VmZmVjdHMvTWFzay5oCi1pbmRleCBlZjcwN2Y1Zi4uZTViOGY2NDkgMTAwNjQ0Ci0tLS0gYS9p bmNsdWRlL2VmZmVjdHMvTWFzay5oCi0rKysgYi9pbmNsdWRlL2VmZmVjdHMvTWFzay5oCi1AQCAt MjUsOCArMjUsOCBAQAotICAqIGFsb25nIHdpdGggT3BlblNob3QgTGlicmFyeS4gSWYgbm90LCBz ZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgotICAqLwotIAotLSNpZm5kZWYgT1BF TlNIT1RfV0lQRV9FRkZFQ1RfSAotLSNkZWZpbmUgT1BFTlNIT1RfV0lQRV9FRkZFQ1RfSAotKyNp Zm5kZWYgT1BFTlNIT1RfTUFTS19FRkZFQ1RfSAotKyNkZWZpbmUgT1BFTlNIT1RfTUFTS19FRkZF Q1RfSAotIAotICNpbmNsdWRlICIuLi9FZmZlY3RCYXNlLmgiCi0gCi1AQCAtNDUsNiArNDUsNyBA QAotICNpbmNsdWRlICIuLi9RdEltYWdlUmVhZGVyLmgiCi0gI2luY2x1ZGUgIi4uL0NodW5rUmVh ZGVyLmgiCi0gI2lmZGVmIFVTRV9JTUFHRU1BR0lDSwotKwkjaW5jbHVkZSAiLi4vTWFnaWNrVXRp bGl0aWVzLmgiCi0gCSNpbmNsdWRlICIuLi9JbWFnZVJlYWRlci5oIgotICNlbmRpZgotIAotQEAg LTU0LDcgKzU1LDcgQEAgbmFtZXNwYWNlIG9wZW5zaG90Ci0gewotIAotIAkvKioKLS0JICogQGJy aWVmIFRoaXMgY2xhc3MgdXNlcyB0aGUgSW1hZ2VNYWdpY2srKyBsaWJyYXJpZXMsIHRvIGFwcGx5 IGFscGhhIChvciB0cmFuc3BhcmVuY3kpIG1hc2tzCi0rCSAqIEBicmllZiBUaGlzIGNsYXNzIHVz ZXMgdGhlIGltYWdlIGxpYnJhcmllcyB0byBhcHBseSBhbHBoYSAob3IgdHJhbnNwYXJlbmN5KSBt YXNrcwotIAkgKiB0byBhbnkgZnJhbWUuIEl0IGNhbiBhbHNvIGJlIGFuaW1hdGVkLCBhbmQgdXNl ZCBhcyBhIHBvd2VyZnVsIFdpcGUgdHJhbnNpdGlvbi4KLSAJICoKLSAJICogVGhlc2UgbWFza3Mg LyB3aXBlcyBjYW4gYWxzbyBiZSBjb21iaW5lZCwgc3VjaCBhcyBhIHRyYW5zcGFyZW5jeSBtYXNr IG9uIHRvcCBvZiBhIGNsaXAsIHdoaWNoCi1kaWZmIC0tZ2l0IGEvc3JjL0ZyYW1lLmNwcCBiL3Ny Yy9GcmFtZS5jcHAKLWluZGV4IGFhN2MwZDg3Li41ZTA2ZTYxZSAxMDA2NDQKLS0tLSBhL3NyYy9G cmFtZS5jcHAKLSsrKyBiL3NyYy9GcmFtZS5jcHAKLUBAIC05MjYsNyArOTI2LDcgQEAgc3RkOjpz aGFyZWRfcHRyPE1hZ2ljazo6SW1hZ2U+IEZyYW1lOjpHZXRNYWdpY2tJbWFnZSgpCi0gCS8vIEdp dmUgaW1hZ2UgYSB0cmFuc3BhcmVudCBiYWNrZ3JvdW5kIGNvbG9yCi0gCW1hZ2lja19pbWFnZS0+ YmFja2dyb3VuZENvbG9yKE1hZ2ljazo6Q29sb3IoIm5vbmUiKSk7Ci0gCW1hZ2lja19pbWFnZS0+ dmlydHVhbFBpeGVsTWV0aG9kKE1hZ2ljazo6VHJhbnNwYXJlbnRWaXJ0dWFsUGl4ZWxNZXRob2Qp OwotLQltYWdpY2tfaW1hZ2UtPm1hdHRlKHRydWUpOwotKwlNQUdJQ0tfSU1BR0VfQUxQSEEobWFn aWNrX2ltYWdlLCB0cnVlKTsKLSAKLSAJcmV0dXJuIG1hZ2lja19pbWFnZTsKLSB9Ci1AQCAtOTQ1 LDIwICs5NDUsMTIgQEAgdm9pZCBGcmFtZTo6QWRkTWFnaWNrSW1hZ2Uoc3RkOjpzaGFyZWRfcHRy PE1hZ2ljazo6SW1hZ2U+IG5ld19pbWFnZSkKLSAJcWJ1ZmZlciA9IG5ldyB1bnNpZ25lZCBjaGFy W2J1ZmZlclNpemVdKCk7Ci0gCXVuc2lnbmVkIGNoYXIgKmJ1ZmZlciA9ICh1bnNpZ25lZCBjaGFy KilxYnVmZmVyOwotIAotLSAgICAvLyBJdGVyYXRlIHRocm91Z2ggdGhlIHBpeGVsIHBhY2tldHMs IGFuZCBsb2FkIG91ciBvd24gYnVmZmVyCi0tCS8vIEVhY2ggY29sb3IgbmVlZHMgdG8gYmUgc2Nh bGVkIHRvIDggYml0ICh1c2luZyB0aGUgSW1hZ2VNYWdpY2sgYnVpbHQtaW4gU2NhbGVRdWFudHVt VG9DaGFyIGZ1bmN0aW9uKQotLQlpbnQgbnVtY29waWVkID0gMDsKLS0gICAgTWFnaWNrOjpQaXhl bFBhY2tldCAqcGl4ZWxzID0gbmV3X2ltYWdlLT5nZXRQaXhlbHMoMCwwLCBuZXdfaW1hZ2UtPmNv bHVtbnMoKSwgbmV3X2ltYWdlLT5yb3dzKCkpOwotLSAgICBmb3IgKGludCBuID0gMCwgaSA9IDA7 IG4gPCBuZXdfaW1hZ2UtPmNvbHVtbnMoKSAqIG5ld19pbWFnZS0+cm93cygpOyBuICs9IDEsIGkg Kz0gNCkgewotLSAgICAJYnVmZmVyW2krMF0gPSBNYWdpY2tDb3JlOjpTY2FsZVF1YW50dW1Ub0No YXIoKE1hZ2ljazo6UXVhbnR1bSkgcGl4ZWxzW25dLnJlZCk7Ci0tICAgIAlidWZmZXJbaSsxXSA9 IE1hZ2lja0NvcmU6OlNjYWxlUXVhbnR1bVRvQ2hhcigoTWFnaWNrOjpRdWFudHVtKSBwaXhlbHNb bl0uZ3JlZW4pOwotLSAgICAJYnVmZmVyW2krMl0gPSBNYWdpY2tDb3JlOjpTY2FsZVF1YW50dW1U b0NoYXIoKE1hZ2ljazo6UXVhbnR1bSkgcGl4ZWxzW25dLmJsdWUpOwotLSAgICAJYnVmZmVyW2kr M10gPSAyNTUgLSBNYWdpY2tDb3JlOjpTY2FsZVF1YW50dW1Ub0NoYXIoKE1hZ2ljazo6UXVhbnR1 bSkgcGl4ZWxzW25dLm9wYWNpdHkpOwotLSAgICAJbnVtY29waWVkKz00OwotLSAgICB9Ci0tCi0t ICAgIC8vIENyZWF0ZSBRSW1hZ2Ugb2YgZnJhbWUgZGF0YQotLSAgICBpbWFnZSA9IHN0ZDo6c2hh cmVkX3B0cjxRSW1hZ2U+KG5ldyBRSW1hZ2UocWJ1ZmZlciwgd2lkdGgsIGhlaWdodCwgd2lkdGgg KiBCUFAsIFFJbWFnZTo6Rm9ybWF0X1JHQkE4ODg4LCAoUUltYWdlQ2xlYW51cEZ1bmN0aW9uKSAm Y2xlYW5VcEJ1ZmZlciwgKHZvaWQqKSBxYnVmZmVyKSk7Ci0rCU1hZ2lja0NvcmU6OkV4Y2VwdGlv bkluZm8gZXhjZXB0aW9uOwotKwkvLyBUT0RPOiBBY3R1YWxseSBkbyBzb21ldGhpbmcsIGlmIHdl IGdldCBhbiBleGNlcHRpb24gaGVyZQotKwlNYWdpY2tDb3JlOjpFeHBvcnRJbWFnZVBpeGVscyhu ZXdfaW1hZ2UtPmNvbnN0SW1hZ2UoKSwgMCwgMCwgbmV3X2ltYWdlLT5jb2x1bW5zKCksIG5ld19p bWFnZS0+cm93cygpLCAiUkdCQSIsIE1hZ2ljazo6Q2hhclBpeGVsLCBidWZmZXIsICZleGNlcHRp b24pOwotKwotKwkvLyBDcmVhdGUgUUltYWdlIG9mIGZyYW1lIGRhdGEKLSsJaW1hZ2UgPSBzdGQ6 OnNoYXJlZF9wdHI8UUltYWdlPihuZXcgUUltYWdlKHFidWZmZXIsIHdpZHRoLCBoZWlnaHQsIHdp ZHRoICogQlBQLCBRSW1hZ2U6OkZvcm1hdF9SR0JBODg4OCwgKFFJbWFnZUNsZWFudXBGdW5jdGlv bikgJmNsZWFuVXBCdWZmZXIsICh2b2lkKikgcWJ1ZmZlcikpOwotIAotIAkvLyBVcGRhdGUgaGVp Z2h0IGFuZCB3aWR0aAotIAl3aWR0aCA9IGltYWdlLT53aWR0aCgpOwotZGlmZiAtLWdpdCBhL3Ny Yy9JbWFnZVJlYWRlci5jcHAgYi9zcmMvSW1hZ2VSZWFkZXIuY3BwCi1pbmRleCBmNTM1NjY2YS4u Y2MyMDA1YTQgMTAwNjQ0Ci0tLS0gYS9zcmMvSW1hZ2VSZWFkZXIuY3BwCi0rKysgYi9zcmMvSW1h Z2VSZWFkZXIuY3BwCi1AQCAtMjUsNiArMjUsOSBAQAotICAqIGFsb25nIHdpdGggT3BlblNob3Qg TGlicmFyeS4gSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LgotICAq LwotIAotKy8vIFJlcXVpcmUgSW1hZ2VNYWdpY2sgc3VwcG9ydAotKyNpZmRlZiBVU0VfSU1BR0VN QUdJQ0sKLSsKLSAjaW5jbHVkZSAiLi4vaW5jbHVkZS9JbWFnZVJlYWRlci5oIgotIAotIHVzaW5n IG5hbWVzcGFjZSBvcGVuc2hvdDsKLUBAIC01OSw3ICs2Miw3IEBAIHZvaWQgSW1hZ2VSZWFkZXI6 Ok9wZW4oKQotIAotIAkJCS8vIEdpdmUgaW1hZ2UgYSB0cmFuc3BhcmVudCBiYWNrZ3JvdW5kIGNv bG9yCi0gCQkJaW1hZ2UtPmJhY2tncm91bmRDb2xvcihNYWdpY2s6OkNvbG9yKCJub25lIikpOwot LQkJCWltYWdlLT5tYXR0ZSh0cnVlKTsKLSsJCQlNQUdJQ0tfSU1BR0VfQUxQSEEoaW1hZ2UsIHRy dWUpOwotIAkJfQotIAkJY2F0Y2ggKE1hZ2ljazo6RXhjZXB0aW9uIGUpIHsKLSAJCQkvLyByYWlz ZSBleGNlcHRpb24KLUBAIC0xMDYsNyArMTA5LDcgQEAgdm9pZCBJbWFnZVJlYWRlcjo6Q2xvc2Uo KQotIAl7Ci0gCQkvLyBNYXJrIGFzICJjbG9zZWQiCi0gCQlpc19vcGVuID0gZmFsc2U7Ci0tCQkK LSsKLSAJCS8vIERlbGV0ZSB0aGUgaW1hZ2UKLSAJCWltYWdlLnJlc2V0KCk7Ci0gCX0KLUBAIC0x ODgsMyArMTkxLDUgQEAgdm9pZCBJbWFnZVJlYWRlcjo6U2V0SnNvblZhbHVlKEpzb246OlZhbHVl IHJvb3QpIHsKLSAJCU9wZW4oKTsKLSAJfQotIH0KLSsKLSsjZW5kaWYgLy9VU0VfSU1BR0VNQUdJ Q0sKLWRpZmYgLS1naXQgYS9zcmMvSW1hZ2VXcml0ZXIuY3BwIGIvc3JjL0ltYWdlV3JpdGVyLmNw cAotaW5kZXggNDE2MjZiMDkuLjViYzAzNjdhIDEwMDY0NAotLS0tIGEvc3JjL0ltYWdlV3JpdGVy LmNwcAotKysrIGIvc3JjL0ltYWdlV3JpdGVyLmNwcAotQEAgLTI4LDYgKzI4LDkgQEAKLSAgKiBh bG9uZyB3aXRoIE9wZW5TaG90IExpYnJhcnkuIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5v cmcvbGljZW5zZXMvPi4KLSAgKi8KLSAKLSsvL1JlcXVpcmUgSW1hZ2VNYWdpY2sgc3VwcG9ydAot KyNpZmRlZiBVU0VfSU1BR0VNQUdJQ0sKLSsKLSAjaW5jbHVkZSAiLi4vaW5jbHVkZS9JbWFnZVdy aXRlci5oIgotIAotIHVzaW5nIG5hbWVzcGFjZSBvcGVuc2hvdDsKLUBAIC05Nyw3ICsxMDAsNyBA QCB2b2lkIEltYWdlV3JpdGVyOjpXcml0ZUZyYW1lKHN0ZDo6c2hhcmVkX3B0cjxGcmFtZT4gZnJh bWUpCi0gCXN0ZDo6c2hhcmVkX3B0cjxNYWdpY2s6OkltYWdlPiBmcmFtZV9pbWFnZSA9IGZyYW1l LT5HZXRNYWdpY2tJbWFnZSgpOwotIAlmcmFtZV9pbWFnZS0+bWFnaWNrKCBpbmZvLnZjb2RlYyAp OwotIAlmcmFtZV9pbWFnZS0+YmFja2dyb3VuZENvbG9yKE1hZ2ljazo6Q29sb3IoIm5vbmUiKSk7 Ci0tCWZyYW1lX2ltYWdlLT5tYXR0ZSh0cnVlKTsKLSsJTUFHSUNLX0lNQUdFX0FMUEhBKGZyYW1l X2ltYWdlLCB0cnVlKTsKLSAJZnJhbWVfaW1hZ2UtPnF1YWxpdHkoaW1hZ2VfcXVhbGl0eSk7Ci0g CWZyYW1lX2ltYWdlLT5hbmltYXRpb25EZWxheShpbmZvLnZpZGVvX3RpbWViYXNlLlRvRmxvYXQo KSAqIDEwMCk7Ci0gCWZyYW1lX2ltYWdlLT5hbmltYXRpb25JdGVyYXRpb25zKG51bWJlcl9vZl9s b29wcyk7Ci1AQCAtMTUzLDMgKzE1Niw0IEBAIHZvaWQgSW1hZ2VXcml0ZXI6OkNsb3NlKCkKLSAJ Wm1xTG9nZ2VyOjpJbnN0YW5jZSgpLT5BcHBlbmREZWJ1Z01ldGhvZCgiSW1hZ2VXcml0ZXI6OkNs b3NlIiwgIiIsIC0xLCAiIiwgLTEsICIiLCAtMSwgIiIsIC0xLCAiIiwgLTEsICIiLCAtMSk7Ci0g fQotIAotKyNlbmRpZiAvL1VTRV9JTUFHRU1BR0lDSwotZGlmZiAtLWdpdCBhL3NyYy9UZXh0UmVh ZGVyLmNwcCBiL3NyYy9UZXh0UmVhZGVyLmNwcAotaW5kZXggODIzNGFhNWQuLmIzZmFlY2YzIDEw MDY0NAotLS0tIGEvc3JjL1RleHRSZWFkZXIuY3BwCi0rKysgYi9zcmMvVGV4dFJlYWRlci5jcHAK LUBAIC0yNSw2ICsyNSw5IEBACi0gICogYWxvbmcgd2l0aCBPcGVuU2hvdCBMaWJyYXJ5LiBJZiBu b3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uCi0gICovCi0gCi0rLy8gUmVx dWlyZSBJbWFnZU1hZ2ljayBzdXBwb3J0Ci0rI2lmZGVmIFVTRV9JTUFHRU1BR0lDSwotKwotICNp bmNsdWRlICIuLi9pbmNsdWRlL1RleHRSZWFkZXIuaCIKLSAKLSB1c2luZyBuYW1lc3BhY2Ugb3Bl bnNob3Q7Ci1AQCAtMjU0LDMgKzI1Nyw1IEBAIHZvaWQgVGV4dFJlYWRlcjo6U2V0SnNvblZhbHVl KEpzb246OlZhbHVlIHJvb3QpIHsKLSAJCU9wZW4oKTsKLSAJfQotIH0KLSsKLSsjZW5kaWYgLy9V U0VfSU1BR0VNQUdJQ0sKLWRpZmYgLS1naXQgYS9zcmMvZWZmZWN0cy9NYXNrLmNwcCBiL3NyYy9l ZmZlY3RzL01hc2suY3BwCi1pbmRleCBmOGYzNGFjNi4uYWI2MzQ2NTQgMTAwNjQ0Ci0tLS0gYS9z cmMvZWZmZWN0cy9NYXNrLmNwcAotKysrIGIvc3JjL2VmZmVjdHMvTWFzay5jcHAKLUBAIC0yMzQs MTEgKzIzNCwxMSBAQCB2b2lkIE1hc2s6OlNldEpzb25WYWx1ZShKc29uOjpWYWx1ZSByb290KSB7 Ci0gCQkJCQlyZWFkZXItPlNldEpzb25WYWx1ZShyb290WyJyZWFkZXIiXSk7Ci0gCi0gCSNpZmRl ZiBVU0VfSU1BR0VNQUdJQ0sKLS0JCQkJCX0gZWxzZSBpZiAodHlwZSA9PSAiSW1hZ2VSZWFkZXIi KSB7Ci0rCQkJCX0gZWxzZSBpZiAodHlwZSA9PSAiSW1hZ2VSZWFkZXIiKSB7Ci0gCi0tCQkJCQkJ Ly8gQ3JlYXRlIG5ldyByZWFkZXIKLS0JCQkJCQlyZWFkZXIgPSBuZXcgSW1hZ2VSZWFkZXIocm9v dFsicmVhZGVyIl1bInBhdGgiXS5hc1N0cmluZygpKTsKLS0JCQkJCQlyZWFkZXItPlNldEpzb25W YWx1ZShyb290WyJyZWFkZXIiXSk7Ci0rCQkJCQkvLyBDcmVhdGUgbmV3IHJlYWRlcgotKwkJCQkJ cmVhZGVyID0gbmV3IEltYWdlUmVhZGVyKHJvb3RbInJlYWRlciJdWyJwYXRoIl0uYXNTdHJpbmco KSk7Ci0rCQkJCQlyZWFkZXItPlNldEpzb25WYWx1ZShyb290WyJyZWFkZXIiXSk7Ci0gCSNlbmRp ZgotIAotIAkJCQl9IGVsc2UgaWYgKHR5cGUgPT0gIlF0SW1hZ2VSZWFkZXIiKSB7Ci1AQCAtMjkw LDQgKzI5MCwzIEBAIHN0cmluZyBNYXNrOjpQcm9wZXJ0aWVzSlNPTihpbnQ2NF90IHJlcXVlc3Rl ZF9mcmFtZSkgewotIAkvLyBSZXR1cm4gZm9ybWF0dGVkIHN0cmluZwotIAlyZXR1cm4gcm9vdC50 b1N0eWxlZFN0cmluZygpOwotIH0KLS0KZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbGlib3BlbnNob3Qv dGVtcGxhdGUgYi9zcmNwa2dzL2xpYm9wZW5zaG90L3RlbXBsYXRlCmluZGV4IDA3MDFiZWQwZGJm Li41N2IzZWRjZjdlMyAxMDA2NDQKLS0tIGEvc3JjcGtncy9saWJvcGVuc2hvdC90ZW1wbGF0ZQor KysgYi9zcmNwa2dzL2xpYm9wZW5zaG90L3RlbXBsYXRlCkBAIC0xLDcgKzEsNyBAQAogIyBUZW1w bGF0ZSBmaWxlIGZvciAnbGlib3BlbnNob3QnCiBwa2duYW1lPWxpYm9wZW5zaG90Ci12ZXJzaW9u PTAuMi4zCi1yZXZpc2lvbj0zCit2ZXJzaW9uPTAuMi41CityZXZpc2lvbj0xCiBhcmNocz0iaTY4 NiB4ODZfNjQgcHBjNjRsZSIKIGJ1aWxkX3N0eWxlPWNtYWtlCiBjb25maWd1cmVfYXJncz0iLURF TkFCTEVfUlVCWT1PRkYgLURVU0VfU1lTVEVNX0pTT05DUFA9T04iICMgQnVpbGRzIGZhaWwgd2l0 aCBSdWJ5LTIuNC4xCkBAIC0xNSwxNCArMTUsOSBAQCBtYWludGFpbmVyPSJTcGVuY2VyIEhpbGwg PHNwZW5jZXJuaDc3QGdtYWlsLmNvbT4iCiBsaWNlbnNlPSJMR1BMLTMuMC1vci1sYXRlciIKIGhv bWVwYWdlPSJodHRwczovL2dpdGh1Yi5jb20vT3BlblNob3QvbGlib3BlbnNob3QiCiBkaXN0Zmls ZXM9Imh0dHBzOi8vZ2l0aHViLmNvbS9PcGVuU2hvdC9saWJvcGVuc2hvdC9hcmNoaXZlL3Yke3Zl cnNpb259LnRhci5neiIKLWNoZWNrc3VtPTg1MzZiMGE3OTBiMGQ5OGVkNGMzYjEwZTExZDFiMzRh ZTY4Y2NiYzcxMDg4N2UzNzAzYTUxNDNkOTU1OTg3NDYKK2NoZWNrc3VtPThhZTdkMjI2ZmJkMmVm YmM4NGRhNGY3ZDlkOGM3ZjNjYzk2MTZlNGRlNDZlMTIzM2UzYjBhODRhYzBhNDI5YmMKIHBhdGNo X2FyZ3M9Ii1OcDEiCiAKLXByZV9jb25maWd1cmUoKSB7Ci0JIyB2ZW5kb3JlZCBweXRob24gY21h a2UgbW9kdWxlIGRvZXMgbm90IGZpbmQgcHl0aG9uIDMuOAotCXJtIGNtYWtlL01vZHVsZXMvRmlu ZFB5dGhvbkxpYnMuY21ha2UKLX0KLQogbGlib3BlbnNob3QtZGV2ZWxfcGFja2FnZSgpIHsKIAlz aG9ydF9kZXNjKz0iIC0gZGV2ZWxvcG1lbnQgZmlsZXMiCiAJcGtnX2luc3RhbGwoKSB7CgpGcm9t IGIyYjJmODlmZTg2MmM1ZDRiMjMzNTAzNTkxMWFhNmE1NDI3NGRlYWIgTW9uIFNlcCAxNyAwMDow MDowMCAyMDAxCkZyb206IGNyYXRlcjIxNTAgPGNyYXRlckBxd2VydHl1aW9wLmRlPgpEYXRlOiBT dW4sIDUgQXByIDIwMjAgMjE6Mzk6NDUgKzAyMDAKU3ViamVjdDogW1BBVENIIDMvM10gb3BlbnNo b3Q6IHVwZGF0ZSB0byAyLjUuMQoKLS0tCiAuLi4vZGlzYWJsZS1nb29nbGUtYW5hbHl0aWNzLWJ5 LWRlZmF1bHQucGF0Y2ggIHwgMTggLS0tLS0tLS0tLS0tLS0tLS0tCiBzcmNwa2dzL29wZW5zaG90 L3RlbXBsYXRlICAgICAgICAgICAgICAgICAgICAgIHwgIDYgKysrLS0tCiAyIGZpbGVzIGNoYW5n ZWQsIDMgaW5zZXJ0aW9ucygrKSwgMjEgZGVsZXRpb25zKC0pCiBkZWxldGUgbW9kZSAxMDA2NDQg c3JjcGtncy9vcGVuc2hvdC9wYXRjaGVzL2Rpc2FibGUtZ29vZ2xlLWFuYWx5dGljcy1ieS1kZWZh dWx0LnBhdGNoCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9vcGVuc2hvdC9wYXRjaGVzL2Rpc2FibGUt Z29vZ2xlLWFuYWx5dGljcy1ieS1kZWZhdWx0LnBhdGNoIGIvc3JjcGtncy9vcGVuc2hvdC9wYXRj aGVzL2Rpc2FibGUtZ29vZ2xlLWFuYWx5dGljcy1ieS1kZWZhdWx0LnBhdGNoCmRlbGV0ZWQgZmls ZSBtb2RlIDEwMDY0NAppbmRleCA2MmRiNGYzZGM5Mi4uMDAwMDAwMDAwMDAKLS0tIGEvc3JjcGtn cy9vcGVuc2hvdC9wYXRjaGVzL2Rpc2FibGUtZ29vZ2xlLWFuYWx5dGljcy1ieS1kZWZhdWx0LnBh dGNoCisrKyAvZGV2L251bGwKQEAgLTEsMTggKzAsMCBAQAotLS0tIHNyYy9zZXR0aW5ncy9fZGVm YXVsdC5zZXR0aW5ncy5vcmlnCTIwMTYtMDktMDQgMDg6NTc6NDUuNTkxNjg1ODE3ICswMjAwCi0r Kysgc3JjL3NldHRpbmdzL19kZWZhdWx0LnNldHRpbmdzCTIwMTYtMDktMDQgMDg6NTc6NTkuNTI4 Njg2NTM2ICswMjAwCi1AQCAtMjMyLDcgKzIzMiw3IEBACi0gICAgICJyZXN0YXJ0IjogdHJ1ZQot ICAgfSwKLSAgIHsKLS0gICAgInZhbHVlIjogdHJ1ZSwKLSsgICAgInZhbHVlIjogZmFsc2UsCi0g ICAgICJ0aXRsZSI6ICJTZW5kIEFub255bW91cyBNZXRyaWNzIGFuZCBFcnJvcnMiLAotICAgICAi dHlwZSI6ICJib29sIiwKLSAgICAgImNhdGVnb3J5IjogIkRlYnVnIiwKLUBAIC02MjgsNCArNjI4 LDQgQEAKLSAgICAgInZhbHVlIjogIkN0cmwrSSIsCi0gICAgICJ0eXBlIjogInRleHQiCi0gICB9 Ci0tXQotXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCi0rXQpkaWZmIC0tZ2l0IGEvc3JjcGtn cy9vcGVuc2hvdC90ZW1wbGF0ZSBiL3NyY3BrZ3Mvb3BlbnNob3QvdGVtcGxhdGUKaW5kZXggZDcx YjRkMDlmYWUuLmQzMjk4MDYzYjc2IDEwMDY0NAotLS0gYS9zcmNwa2dzL29wZW5zaG90L3RlbXBs YXRlCisrKyBiL3NyY3BrZ3Mvb3BlbnNob3QvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRl bXBsYXRlIGZpbGUgZm9yICdvcGVuc2hvdCcKIHBrZ25hbWU9b3BlbnNob3QKLXZlcnNpb249Mi40 LjQKLXJldmlzaW9uPTIKK3ZlcnNpb249Mi41LjEKK3JldmlzaW9uPTEKIGFyY2hzPSJpNjg2IHg4 Nl82NCBwcGM2NGxlIgogd3Jrc3JjPSIke3BrZ25hbWV9LXF0LSR7dmVyc2lvbn0iCiBidWlsZF9z dHlsZT1weXRob24zLW1vZHVsZQpAQCAtMTUsNCArMTUsNCBAQCBtYWludGFpbmVyPSJTcGVuY2Vy IEhpbGwgPHNwZW5jZXJuaDc3QGdtYWlsLmNvbT4iCiBsaWNlbnNlPSJHUEwtMy4wLW9yLWxhdGVy IgogaG9tZXBhZ2U9Imh0dHBzOi8vd3d3Lm9wZW5zaG90Lm9yZyIKIGRpc3RmaWxlcz0iaHR0cHM6 Ly9naXRodWIuY29tL09wZW5TaG90L29wZW5zaG90LXF0L2FyY2hpdmUvdiR7dmVyc2lvbn0udGFy Lmd6IgotY2hlY2tzdW09ODE5NzkyM2IzZmZmMjAxMGVlNjljNzU0Njk4MTg1NDM2NzRhMTJmY2I4 ZmNiMDg5NDQ0NzFlNGVhZDM0MjZiZQorY2hlY2tzdW09NGMyNWViOWE1ZGU0MmU3NDlkZTRjNmNh MmY3YTMxM2M2MGUxMjgzZmU1MmQ3MGMxMjE2MjlkYmI4YmIyZGY3Ygo= --===============8245060924641377263==--