From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-1.0 required=5.0 tests=ALL_TRUSTED, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 32674 invoked from network); 30 Mar 2022 18:48:11 -0000 Received: from localhost (HELO inbox.vuxu.org) (::1) by localhost with ESMTPUTF8; 30 Mar 2022 18:48:11 -0000 Content-Type: multipart/mixed; boundary="===============3638082029212660945==" MIME-Version: 1.0 Subject: =?utf8?q?Re=3A_=5BPR_PATCH=5D_=5BUpdated=5D_New_packages=3A_highway=2C_libjxl=2C_qt-jpegxl-image-plugin?= To: ml@inbox.vuxu.org From: joshuakraemer Reply-to: ml@inbox.vuxu.org In-Reply-To: References: Date: Wed, 30 Mar 2022 20:48:10 +0200 List-Id: Message-ID: <20220330184810.vuU5anMgHlIlRkmEbk5DtLhaZtV0d2JxTHABQOaRKzw@z> GitHub notification mails are now in MIME to allow UTF8. --===============3638082029212660945== Content-Type: text/plain; charset="utf8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 VGhlcmUgaXMgYW4gdXBkYXRlZCBwdWxsIHJlcXVlc3QgYnkgam9zaHVha3JhZW1lciBhZ2FpbnN0 IG1hc3RlciBvbiB0aGUgdm9pZC1wYWNrYWdlcyByZXBvc2l0b3J5CgpodHRwczovL2dpdGh1Yi5j b20vam9zaHVha3JhZW1lci92b2lkLXBhY2thZ2VzIGpwZWcteGwKaHR0cHM6Ly9naXRodWIuY29t L3ZvaWQtbGludXgvdm9pZC1wYWNrYWdlcy9wdWxsLzMxMzk3CgpOZXcgcGFja2FnZXM6IGhpZ2h3 YXksIGxpYmp4bCwgcXQtanBlZ3hsLWltYWdlLXBsdWdpbgojIyMjIEdlbmVyYWwNCi0gW3hdIFRo aXMgaXMgYSBuZXcgcGFja2FnZSBhbmQgaXQgY29uZm9ybXMgdG8gdGhlIFtxdWFsaXR5IHJlcXVp cmVtZW50c10oaHR0cHM6Ly9naXRodWIuY29tL3ZvaWQtbGludXgvdm9pZC1wYWNrYWdlcy9ibG9i L21hc3Rlci9NYW51YWwubWQjcXVhbGl0eS1yZXF1aXJlbWVudHMpDQoNCiMjIyMgSGF2ZSB0aGUg cmVzdWx0cyBvZiB0aGUgcHJvcG9zZWQgY2hhbmdlcyBiZWVuIHRlc3RlZD8NCi0gW3hdIEkgdXNl IHRoZSBwYWNrYWdlcyBhZmZlY3RlZCBieSB0aGUgcHJvcG9zZWQgY2hhbmdlcyBvbiBhIHJlZ3Vs YXIgYmFzaXMgYW5kIGNvbmZpcm0gdGhpcyBQUiB3b3JrcyBmb3IgbWUNCg0KVGhlc2UgcGFja2Fn ZXMgcHJvdmlkZSBzdXBwb3J0IGZvciB0aGUgSlBFRyBYTCBpbWFnZSBmb3JtYXQuCgpBIHBhdGNo IGZpbGUgZnJvbSBodHRwczovL2dpdGh1Yi5jb20vdm9pZC1saW51eC92b2lkLXBhY2thZ2VzL3B1 bGwvMzEzOTcucGF0Y2ggaXMgYXR0YWNoZWQ= --===============3638082029212660945== Content-Type: text/x-diff MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="github-pr-jpeg-xl-31397.patch" RnJvbSA1NGM0ZWExZDE5ZTU3MGY5MTNmNjMzNjU3YzM4NzQzZTY5OTY2ZmM1IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiA9P1VURi04P3E/Sm9zaHVhPTIwS3I9QzM9QTRtZXI/PSA8am9z aHVhQGtyYWVtZXIubGluaz4KRGF0ZTogV2VkLCA5IEp1biAyMDIxIDAwOjQ0OjM3ICswMjAwClN1 YmplY3Q6IFtQQVRDSCAxLzNdIE5ldyBwYWNrYWdlOiBoaWdod2F5LTAuMTYuMAoKLS0tCiBzcmNw a2dzL2hpZ2h3YXkvdGVtcGxhdGUgfCAxMiArKysrKysrKysrKysKIDEgZmlsZSBjaGFuZ2VkLCAx MiBpbnNlcnRpb25zKCspCiBjcmVhdGUgbW9kZSAxMDA2NDQgc3JjcGtncy9oaWdod2F5L3RlbXBs YXRlCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9oaWdod2F5L3RlbXBsYXRlIGIvc3JjcGtncy9oaWdo d2F5L3RlbXBsYXRlCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMC4uMThm NmM0M2I1OTFjCi0tLSAvZGV2L251bGwKKysrIGIvc3JjcGtncy9oaWdod2F5L3RlbXBsYXRlCkBA IC0wLDAgKzEsMTIgQEAKKyMgVGVtcGxhdGUgZmlsZSBmb3IgJ2hpZ2h3YXknCitwa2duYW1lPWhp Z2h3YXkKK3ZlcnNpb249MC4xNi4wCityZXZpc2lvbj0xCitidWlsZF9zdHlsZT1jbWFrZQorY29u ZmlndXJlX2FyZ3M9Ii1EQlVJTERfVEVTVElORz1PRkYiCitzaG9ydF9kZXNjPSJDKysgbGlicmFy eSBwcm92aWRpbmcgcG9ydGFibGUgU0lNRC92ZWN0b3IgaW50cmluc2ljcyIKK21haW50YWluZXI9 Ikpvc2h1YSBLcsOkbWVyIDxqb3NodWFAa3JhZW1lci5saW5rPiIKK2xpY2Vuc2U9IkFwYWNoZS0y LjAiCitob21lcGFnZT0iaHR0cHM6Ly9naXRodWIuY29tL2dvb2dsZS9oaWdod2F5IgorZGlzdGZp bGVzPSJodHRwczovL2dpdGh1Yi5jb20vZ29vZ2xlL2hpZ2h3YXkvYXJjaGl2ZS8ke3ZlcnNpb259 LnRhci5neiIKK2NoZWNrc3VtPTc0NmM5NTc4NDQ2YmU2YzUyODZlODg0NmM1ZjBkNDExOGMwYzFm MDQyMTljNDAxYWJhZGNiOGE1ZjIwNTE4OTMKCkZyb20gODY3ZjNiNDY2OGUzNTFiZGM2NDZmNjA0 MTk0YzVjZmU5YWE5MTE1MyBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogPT9VVEYtOD9x P0pvc2h1YT0yMEtyPUMzPUE0bWVyPz0gPGpvc2h1YUBrcmFlbWVyLmxpbms+CkRhdGU6IFdlZCwg OSBKdW4gMjAyMSAwMTo1MjoyOSArMDIwMApTdWJqZWN0OiBbUEFUQ0ggMi8zXSBOZXcgcGFja2Fn ZTogbGlianhsLTAuNi4xCgotLS0KIGNvbW1vbi9zaGxpYnMgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICB8ICAgMiArCiBzcmNwa2dzL2xpYmp4bC1kZXZlbCAgICAgICAgICAgICAgICAg ICAgICAgICAgfCAgIDEgKwogc3JjcGtncy9saWJqeGwtcGx1Z2lucyAgICAgICAgICAgICAgICAg ICAgICAgIHwgICAxICsKIHNyY3BrZ3MvbGlianhsLXRvb2xzICAgICAgICAgICAgICAgICAgICAg ICAgICB8ICAgMSArCiAuLi4vZGVwcmVjYXRlZF9oaWdod2F5X2Z1bmN0aW9ucy5wYXRjaCAgICAg ICAgfCA0NTkgKysrKysrKysrKysrKysrKysrCiBzcmNwa2dzL2xpYmp4bC90ZW1wbGF0ZSAgICAg ICAgICAgICAgICAgICAgICAgfCAgNjUgKysrCiA2IGZpbGVzIGNoYW5nZWQsIDUyOSBpbnNlcnRp b25zKCspCiBjcmVhdGUgbW9kZSAxMjAwMDAgc3JjcGtncy9saWJqeGwtZGV2ZWwKIGNyZWF0ZSBt b2RlIDEyMDAwMCBzcmNwa2dzL2xpYmp4bC1wbHVnaW5zCiBjcmVhdGUgbW9kZSAxMjAwMDAgc3Jj cGtncy9saWJqeGwtdG9vbHMKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNwa2dzL2xpYmp4bC9wYXRj aGVzL2RlcHJlY2F0ZWRfaGlnaHdheV9mdW5jdGlvbnMucGF0Y2gKIGNyZWF0ZSBtb2RlIDEwMDY0 NCBzcmNwa2dzL2xpYmp4bC90ZW1wbGF0ZQoKZGlmZiAtLWdpdCBhL2NvbW1vbi9zaGxpYnMgYi9j b21tb24vc2hsaWJzCmluZGV4IGNjYzU1YTFiMzc3Mi4uMTQ0NmM4NDhmZjlmIDEwMDY0NAotLS0g YS9jb21tb24vc2hsaWJzCisrKyBiL2NvbW1vbi9zaGxpYnMKQEAgLTQxNDUsMyArNDE0NSw1IEBA IGxpYnJ6X2xhbmcuc28uMC4zLjQgcml6aW4tMC4zLjRfMQogbGlicnpfc2VhcmNoLnNvLjAuMy40 IHJpemluLTAuMy40XzEKIGxpYnJ6X2Jpbi5zby4wLjMuNCByaXppbi0wLjMuNF8xCiBsaWJhcmF2 aXMtMC44LnNvLjAgbGliYXJhdmlzLTAuOC4yMV8xCitsaWJqeGwuc28uMC42IGxpYmp4bC0wLjYu MV8xCitsaWJqeGxfdGhyZWFkcy5zby4wLjYgbGlianhsLTAuNi4xXzEKZGlmZiAtLWdpdCBhL3Ny Y3BrZ3MvbGlianhsLWRldmVsIGIvc3JjcGtncy9saWJqeGwtZGV2ZWwKbmV3IGZpbGUgbW9kZSAx MjAwMDAKaW5kZXggMDAwMDAwMDAwMDAwLi5kZGMxYWJmODI3ZDkKLS0tIC9kZXYvbnVsbAorKysg Yi9zcmNwa2dzL2xpYmp4bC1kZXZlbApAQCAtMCwwICsxIEBACitsaWJqeGwKXCBObyBuZXdsaW5l IGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS9zcmNwa2dzL2xpYmp4bC1wbHVnaW5zIGIvc3Jj cGtncy9saWJqeGwtcGx1Z2lucwpuZXcgZmlsZSBtb2RlIDEyMDAwMAppbmRleCAwMDAwMDAwMDAw MDAuLmRkYzFhYmY4MjdkOQotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvbGlianhsLXBsdWdp bnMKQEAgLTAsMCArMSBAQAorbGlianhsClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZm IC0tZ2l0IGEvc3JjcGtncy9saWJqeGwtdG9vbHMgYi9zcmNwa2dzL2xpYmp4bC10b29scwpuZXcg ZmlsZSBtb2RlIDEyMDAwMAppbmRleCAwMDAwMDAwMDAwMDAuLmRkYzFhYmY4MjdkOQotLS0gL2Rl di9udWxsCisrKyBiL3NyY3BrZ3MvbGlianhsLXRvb2xzCkBAIC0wLDAgKzEgQEAKK2xpYmp4bApc IE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlmZiAtLWdpdCBhL3NyY3BrZ3MvbGlianhsL3Bh dGNoZXMvZGVwcmVjYXRlZF9oaWdod2F5X2Z1bmN0aW9ucy5wYXRjaCBiL3NyY3BrZ3MvbGlianhs L3BhdGNoZXMvZGVwcmVjYXRlZF9oaWdod2F5X2Z1bmN0aW9ucy5wYXRjaApuZXcgZmlsZSBtb2Rl IDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAuLmE3NzVlYjVhN2M1NgotLS0gL2Rldi9udWxsCisr KyBiL3NyY3BrZ3MvbGlianhsL3BhdGNoZXMvZGVwcmVjYXRlZF9oaWdod2F5X2Z1bmN0aW9ucy5w YXRjaApAQCAtMCwwICsxLDQ1OSBAQAorZGlmZiAtLWdpdCBhL2xpYi9qeGwvZGVjX3JlY29uc3Ry dWN0LmNjIGIvbGliL2p4bC9kZWNfcmVjb25zdHJ1Y3QuY2MKK2luZGV4IGExYmFlZjQuLjA4Mjc5 ZjggMTAwNjQ0CistLS0gYS9saWIvanhsL2RlY19yZWNvbnN0cnVjdC5jYworKysrIGIvbGliL2p4 bC9kZWNfcmVjb25zdHJ1Y3QuY2MKK0BAIC0zNTcsOCArMzU3LDggQEAgdm9pZCBEb1lDYkNyVXBz YW1wbGluZyhzaXplX3QgaHMsIHNpemVfdCB2cywgSW1hZ2VGKiBwbGFuZV9pbiwgY29uc3QgUmVj dCYgcmVjdCwKKyAgICAgICAgIFN0b3JlKGxlZnQsIGQsIG91dCArIHgpOworICAgICAgICAgU3Rv cmUocmlnaHQsIGQsIG91dCArIHggKyAxKTsKKyAjZWxzZQorLSAgICAgICAgU3RvcmUoSW50ZXJs ZWF2ZUxvd2VyKGxlZnQsIHJpZ2h0KSwgZCwgb3V0ICsgeCk7CistICAgICAgICBTdG9yZShJbnRl cmxlYXZlVXBwZXIobGVmdCwgcmlnaHQpLCBkLCBvdXQgKyB4ICsgTGFuZXMoZCkpOworKyAgICAg ICAgU3RvcmUoSW50ZXJsZWF2ZUxvd2VyKGQsIGxlZnQsIHJpZ2h0KSwgZCwgb3V0ICsgeCk7Cisr ICAgICAgICBTdG9yZShJbnRlcmxlYXZlVXBwZXIoZCwgbGVmdCwgcmlnaHQpLCBkLCBvdXQgKyB4 ICsgTGFuZXMoZCkpOworICNlbmRpZgorICAgICAgIH0KKyAgICAgfQorZGlmZiAtLWdpdCBhL2xp Yi9qeGwvZGVjX3Vwc2FtcGxlLmNjIGIvbGliL2p4bC9kZWNfdXBzYW1wbGUuY2MKK2luZGV4IDcy NzdlNGYuLjNjYjNmMzYgMTAwNjQ0CistLS0gYS9saWIvanhsL2RlY191cHNhbXBsZS5jYworKysr IGIvbGliL2p4bC9kZWNfdXBzYW1wbGUuY2MKK0BAIC0xNzYsOCArMTc2LDggQEAgdm9pZCBVcHNh bXBsZShjb25zdCBJbWFnZUYmIHNyYywgY29uc3QgUmVjdCYgc3JjX3JlY3QsIEltYWdlRiogZHN0 LAorICAgICAgICAgbWluID0gTWluKExvYWRVKGRmLCByYXdfbWluX3JvdyArIHN4ICsgZngpLCBt aW4pOworICAgICAgICAgbWF4ID0gTWF4KExvYWRVKGRmLCByYXdfbWF4X3JvdyArIHN4ICsgZngp LCBtYXgpOworICAgICAgIH0KKy0gICAgICBtaW4gPSBNaW5PZkxhbmVzKG1pbik7CistICAgICAg bWF4ID0gTWF4T2ZMYW5lcyhtYXgpOworKyAgICAgIG1pbiA9IE1pbk9mTGFuZXMoZGYsIG1pbik7 CisrICAgICAgbWF4ID0gTWF4T2ZMYW5lcyhkZiwgbWF4KTsKKyAgICAgICBmb3IgKHNpemVfdCBs eCA9IDA7IGx4IDwgTjsgbHggKz0gVikgeworICAgICAgICAgU3RvcmVVKG1pbiwgZGYsIG1pbl9y b3cgKyBOICogc3ggKyBseCk7CisgICAgICAgICBTdG9yZVUobWF4LCBkZiwgbWF4X3JvdyArIE4g KiBzeCArIGx4KTsKK2RpZmYgLS1naXQgYS9saWIvanhsL2VuY19hY19zdHJhdGVneS5jYyBiL2xp Yi9qeGwvZW5jX2FjX3N0cmF0ZWd5LmNjCitpbmRleCBiYzUwNDY1Li5jMGVkNjhmIDEwMDY0NAor LS0tIGEvbGliL2p4bC9lbmNfYWNfc3RyYXRlZ3kuY2MKKysrKyBiL2xpYi9qeGwvZW5jX2FjX3N0 cmF0ZWd5LmNjCitAQCAtNDI5LDggKzQyOSw4IEBAIGZsb2F0IEVzdGltYXRlRW50cm9weShjb25z dCBBY1N0cmF0ZWd5JiBhY3MsIHNpemVfdCB4LCBzaXplX3QgeSwKKyAgICAgfQorICAgICBlbnRy b3B5X3YgKz0gbnplcm9zX3YgKiBjb3N0MTsKKyAKKy0gICAgZW50cm9weSArPSBHZXRMYW5lKFN1 bU9mTGFuZXMoZW50cm9weV92KSk7CistICAgIHNpemVfdCBudW1fbnplcm9zID0gR2V0TGFuZShT dW1PZkxhbmVzKG56ZXJvc192KSk7CisrICAgIGVudHJvcHkgKz0gR2V0TGFuZShTdW1PZkxhbmVz KGRmLCBlbnRyb3B5X3YpKTsKKysgICAgc2l6ZV90IG51bV9uemVyb3MgPSBHZXRMYW5lKFN1bU9m TGFuZXMoZGYsIG56ZXJvc192KSk7CisgICAgIC8vIEFkZCAjYml0IG9mIG51bV9ub256ZXJvcywg YXMgYW4gZXN0aW1hdGUgb2YgdGhlIGNvc3QgZm9yIGVuY29kaW5nIHRoZQorICAgICAvLyBudW1i ZXIgb2Ygbm9uLXplcm9zIG9mIHRoZSBibG9jay4KKyAgICAgc2l6ZV90IG5iaXRzID0gQ2VpbExv ZzJOb256ZXJvKG51bV9uemVyb3MgKyAxKSArIDE7CitAQCAtNDQxLDkgKzQ0MSw5IEBAIGZsb2F0 IEVzdGltYXRlRW50cm9weShjb25zdCBBY1N0cmF0ZWd5JiBhY3MsIHNpemVfdCB4LCBzaXplX3Qg eSwKKyAgIGZsb2F0IHJldCA9CisgICAgICAgZW50cm9weSArCisgICAgICAgbWFza2luZyAqCist ICAgICAgICAgICgoY29uZmlnLmluZm9fbG9zc19tdWx0aXBsaWVyICogR2V0TGFuZShTdW1PZkxh bmVzKGluZm9fbG9zcykpKSArCisrICAgICAgICAgICgoY29uZmlnLmluZm9fbG9zc19tdWx0aXBs aWVyICogR2V0TGFuZShTdW1PZkxhbmVzKGRmLCBpbmZvX2xvc3MpKSkgKworICAgICAgICAgICAg KGNvbmZpZy5pbmZvX2xvc3NfbXVsdGlwbGllcjIgKgorLSAgICAgICAgICAgIHNxcnQobnVtX2Js b2NrcyAqIEdldExhbmUoU3VtT2ZMYW5lcyhpbmZvX2xvc3MyKSkpKSk7CisrICAgICAgICAgICAg c3FydChudW1fYmxvY2tzICogR2V0TGFuZShTdW1PZkxhbmVzKGRmLCBpbmZvX2xvc3MyKSkpKSk7 CisgICByZXR1cm4gcmV0OworIH0KKyAKK2RpZmYgLS1naXQgYS9saWIvanhsL2VuY19hZGFwdGl2 ZV9xdWFudGl6YXRpb24uY2MgYi9saWIvanhsL2VuY19hZGFwdGl2ZV9xdWFudGl6YXRpb24uY2MK K2luZGV4IGY1MzM5M2YuLjI0ZjNkNTMgMTAwNjQ0CistLS0gYS9saWIvanhsL2VuY19hZGFwdGl2 ZV9xdWFudGl6YXRpb24uY2MKKysrKyBiL2xpYi9qeGwvZW5jX2FkYXB0aXZlX3F1YW50aXphdGlv bi5jYworQEAgLTE4OSw3ICsxODksNyBAQCBWIEdhbW1hTW9kdWxhdGlvbihjb25zdCBEIGQsIGNv bnN0IHNpemVfdCB4LCBjb25zdCBzaXplX3QgeSwKKyAgICAgICBvdmVyYWxsX3JhdGlvICs9IGF2 Z19yYXRpbzsKKyAgICAgfQorICAgfQorLSAgb3ZlcmFsbF9yYXRpbyA9IFN1bU9mTGFuZXMob3Zl cmFsbF9yYXRpbyk7CisrICBvdmVyYWxsX3JhdGlvID0gU3VtT2ZMYW5lcyhkLCBvdmVyYWxsX3Jh dGlvKTsKKyAgIG92ZXJhbGxfcmF0aW8gKj0gU2V0KGQsIDEuMGYgLyA2NCk7CisgICAvLyBpZGVh bGx5IC0xLjAsIGJ1dCBsaWtlbHkgb3B0aW1hbCBjb3JyZWN0aW9uIGFkZHMgc29tZSBlbnRyb3B5 LCBzbyBzbGlnaHRseQorICAgLy8gbGVzcyB0aGFuIHRoYXQuCitAQCAtMjQ2LDEyICsyNDYsMTIg QEAgViBDb2xvck1vZHVsYXRpb24oY29uc3QgRCBkLCBjb25zdCBzaXplX3QgeCwgY29uc3Qgc2l6 ZV90IHksCisgICAvLyBibHVlIHdlIGNvbnNpZGVyIGFzIGlmIGl0IHdhcyBmdWxseSByZWQgb3Ig Ymx1ZS4KKyAgIHN0YXRpYyBjb25zdCBmbG9hdCByYXRpbyA9IDMwLjYxMDYxNTc4MjE0MjczN2Y7 ICAvLyBvdXQgb2YgNjQgcGl4ZWxzLgorIAorLSAgYXV0byBvdmVyYWxsX3JlZF9jb3ZlcmFnZSA9 IFN1bU9mTGFuZXMocmVkX2NvdmVyYWdlKTsKKysgIGF1dG8gb3ZlcmFsbF9yZWRfY292ZXJhZ2Ug PSBTdW1PZkxhbmVzKGQsIHJlZF9jb3ZlcmFnZSk7CisgICBvdmVyYWxsX3JlZF9jb3ZlcmFnZSA9 CisgICAgICAgTWluKG92ZXJhbGxfcmVkX2NvdmVyYWdlLCBTZXQoZCwgcmF0aW8gKiBrUmVkUmFt cExlbmd0aCkpOworICAgb3ZlcmFsbF9yZWRfY292ZXJhZ2UgKj0gU2V0KGQsIHJlZF9zdHJlbmd0 aCAvIHJhdGlvKTsKKyAKKy0gIGF1dG8gb3ZlcmFsbF9ibHVlX2NvdmVyYWdlID0gU3VtT2ZMYW5l cyhibHVlX2NvdmVyYWdlKTsKKysgIGF1dG8gb3ZlcmFsbF9ibHVlX2NvdmVyYWdlID0gU3VtT2ZM YW5lcyhkLCBibHVlX2NvdmVyYWdlKTsKKyAgIG92ZXJhbGxfYmx1ZV9jb3ZlcmFnZSA9CisgICAg ICAgTWluKG92ZXJhbGxfYmx1ZV9jb3ZlcmFnZSwgU2V0KGQsIHJhdGlvICoga0JsdWVSYW1wTGVu Z3RoKSk7CisgICBvdmVyYWxsX2JsdWVfY292ZXJhZ2UgKj0gU2V0KGQsIGJsdWVfc3RyZW5ndGgg LyByYXRpbyk7CitAQCAtMjk1LDcgKzI5NSw3IEBAIFYgSGZNb2R1bGF0aW9uKGNvbnN0IEQgZCwg Y29uc3Qgc2l6ZV90IHgsIGNvbnN0IHNpemVfdCB5LCBjb25zdCBJbWFnZUYmIHh5YiwKKyAgICAg fQorICAgfQorIAorLSAgc3VtID0gU3VtT2ZMYW5lcyhzdW0pOworKyAgc3VtID0gU3VtT2ZMYW5l cyhkLCBzdW0pOworICAgcmV0dXJuIE11bEFkZChzdW0sIFNldChkLCAtMi4wMDUyMTkzMjMzNjg4 ODg0ZiAvIDExMiksIG91dF92YWwpOworIH0KKyAKK2RpZmYgLS1naXQgYS9saWIvanhsL2VuY19h cl9jb250cm9sX2ZpZWxkLmNjIGIvbGliL2p4bC9lbmNfYXJfY29udHJvbF9maWVsZC5jYworaW5k ZXggZjQzMzQwZS4uZjgwMjVhYyAxMDA2NDQKKy0tLSBhL2xpYi9qeGwvZW5jX2FyX2NvbnRyb2xf ZmllbGQuY2MKKysrKyBiL2xpYi9qeGwvZW5jX2FyX2NvbnRyb2xfZmllbGQuY2MKK0BAIC0xNTcs NyArMTU3LDcgQEAgdm9pZCBQcm9jZXNzVGlsZShjb25zdCBJbWFnZTNGJiBvcHNpbiwgUGFzc2Vz RW5jb2RlclN0YXRlKiBlbmNfc3RhdGUsCisgICAgICAgICAgIHN1bSArPSBMb2FkVShkZjQsIHJv d3NfaW5baXldICsgeCAqIDQgKyBpeCArIDIpOworICAgICAgICAgfQorICAgICAgIH0KKy0gICAg ICByb3dfb3V0W3hdID0gR2V0TGFuZShTcXJ0KFN1bU9mTGFuZXMoc3VtKSkpICogKDEuMGYgLyA0 LjBmKTsKKysgICAgICByb3dfb3V0W3hdID0gR2V0TGFuZShTcXJ0KFN1bU9mTGFuZXMoZGY0LCBz dW0pKSkgKiAoMS4wZiAvIDQuMGYpOworICAgICB9CisgICB9CisgICAvLyBJbmRleGluZyBpeSBh bmQgaXggaXMgYSBiaXQgdHJpY2t5IGFzIHdlIGluY2x1ZGUgYSAyIHBpeGVsIGJvcmRlcgorQEAg LTE5Myw3ICsxOTMsNyBAQCB2b2lkIFByb2Nlc3NUaWxlKGNvbnN0IEltYWdlM0YmIG9wc2luLCBQ YXNzZXNFbmNvZGVyU3RhdGUqIGVuY19zdGF0ZSwKKyAgICAgICAgICAgICBzdW0gKz0gTG9hZChk ZjQsIHJvd3NfaW5baXldICsgc3ggKyBpeCk7CisgICAgICAgICAgIH0KKyAgICAgICAgIH0KKy0g ICAgICAgIHJvd19vdXRbeF0gPSBHZXRMYW5lKFNxcnQoU3VtT2ZMYW5lcyhzdW0pKSkgKiAoMS4w ZiAvIDQuMGYpOworKyAgICAgICAgcm93X291dFt4XSA9IEdldExhbmUoU3FydChTdW1PZkxhbmVz KGRmNCwgc3VtKSkpICogKDEuMGYgLyA0LjBmKTsKKyAgICAgICB9IGVsc2UgeworICAgICAgICAg ZmxvYXQgc3VtID0gMDsKKyAgICAgICAgIGZvciAoc2l6ZV90IGl5ID0gc3k7IGl5IDwgZXk7IGl5 KyspIHsKK2RpZmYgLS1naXQgYS9saWIvanhsL2VuY19idXR0ZXJhdWdsaV9wbm9ybS5jYyBiL2xp Yi9qeGwvZW5jX2J1dHRlcmF1Z2xpX3Bub3JtLmNjCitpbmRleCA3YzNmYjljLi45MGIwNDQwIDEw MDY0NAorLS0tIGEvbGliL2p4bC9lbmNfYnV0dGVyYXVnbGlfcG5vcm0uY2MKKysrKyBiL2xpYi9q eGwvZW5jX2J1dHRlcmF1Z2xpX3Bub3JtLmNjCitAQCAtOTUsMTMgKzk1LDEzIEBAIGRvdWJsZSBD b21wdXRlRGlzdGFuY2VQKGNvbnN0IEltYWdlRiYgZGlzdG1hcCwgY29uc3QgQnV0dGVyYXVnbGlQ YXJhbXMmIHBhcmFtcywKKyAgICAgfQorICAgICBkb3VibGUgdiA9IDA7CisgICAgIHYgKz0gcG93 KAorLSAgICAgICAgb25lUGVyUGl4ZWxzICogKHN1bTFbMF0gKyBHZXRMYW5lKFN1bU9mTGFuZXMo TG9hZChkLCBzdW1fdG90YWxzMCkpKSksCisrICAgICAgICBvbmVQZXJQaXhlbHMgKiAoc3VtMVsw XSArIEdldExhbmUoU3VtT2ZMYW5lcyhkLCBMb2FkKGQsIHN1bV90b3RhbHMwKSkpKSwKKyAgICAg ICAgIDEuMCAvIChwICogMS4wKSk7CisgICAgIHYgKz0gcG93KAorLSAgICAgICAgb25lUGVyUGl4 ZWxzICogKHN1bTFbMV0gKyBHZXRMYW5lKFN1bU9mTGFuZXMoTG9hZChkLCBzdW1fdG90YWxzMSkp KSksCisrICAgICAgICBvbmVQZXJQaXhlbHMgKiAoc3VtMVsxXSArIEdldExhbmUoU3VtT2ZMYW5l cyhkLCBMb2FkKGQsIHN1bV90b3RhbHMxKSkpKSwKKyAgICAgICAgIDEuMCAvIChwICogMi4wKSk7 CisgICAgIHYgKz0gcG93KAorLSAgICAgICAgb25lUGVyUGl4ZWxzICogKHN1bTFbMl0gKyBHZXRM YW5lKFN1bU9mTGFuZXMoTG9hZChkLCBzdW1fdG90YWxzMikpKSksCisrICAgICAgICBvbmVQZXJQ aXhlbHMgKiAoc3VtMVsyXSArIEdldExhbmUoU3VtT2ZMYW5lcyhkLCBMb2FkKGQsIHN1bV90b3Rh bHMyKSkpKSwKKyAgICAgICAgIDEuMCAvIChwICogNC4wKSk7CisgICAgIHYgLz0gMy4wOworICAg ICByZXR1cm4gdjsKK2RpZmYgLS1naXQgYS9saWIvanhsL2VuY19jaHJvbWFfZnJvbV9sdW1hLmNj IGIvbGliL2p4bC9lbmNfY2hyb21hX2Zyb21fbHVtYS5jYworaW5kZXggZTVjM2YzOC4uMzcwNTk1 YyAxMDA2NDQKKy0tLSBhL2xpYi9qeGwvZW5jX2Nocm9tYV9mcm9tX2x1bWEuY2MKKysrKyBiL2xp Yi9qeGwvZW5jX2Nocm9tYV9mcm9tX2x1bWEuY2MKK0BAIC05MSw5ICs5MSw5IEBAIHN0cnVjdCBD RkxGdW5jdGlvbiB7CisgICAgICAgZmRtZV92ICs9IElmVGhlbkVsc2UoYXYgPj0gdGhyZXMsIHpl cm8sIGRtZSk7CisgICAgIH0KKyAKKy0gICAgKmZwZXBzID0gZmlyc3RfZGVyaXZhdGl2ZV9wZXBz ICsgR2V0TGFuZShTdW1PZkxhbmVzKGZkcGVfdikpOworLSAgICAqZm1lcHMgPSBmaXJzdF9kZXJp dmF0aXZlX21lcHMgKyBHZXRMYW5lKFN1bU9mTGFuZXMoZmRtZV92KSk7CistICAgIHJldHVybiBm aXJzdF9kZXJpdmF0aXZlICsgR2V0TGFuZShTdW1PZkxhbmVzKGZkX3YpKTsKKysgICAgKmZwZXBz ID0gZmlyc3RfZGVyaXZhdGl2ZV9wZXBzICsgR2V0TGFuZShTdW1PZkxhbmVzKGRmLCBmZHBlX3Yp KTsKKysgICAgKmZtZXBzID0gZmlyc3RfZGVyaXZhdGl2ZV9tZXBzICsgR2V0TGFuZShTdW1PZkxh bmVzKGRmLCBmZG1lX3YpKTsKKysgICAgcmV0dXJuIGZpcnN0X2Rlcml2YXRpdmUgKyBHZXRMYW5l KFN1bU9mTGFuZXMoZGYsIGZkX3YpKTsKKyAgIH0KKyAKKyAgIGNvbnN0IGZsb2F0KiBKWExfUkVT VFJJQ1QgdmFsdWVzX207CitAQCAtMTI0LDggKzEyNCw4IEBAIGludDMyX3QgRmluZEJlc3RNdWx0 aXBsaWVyKGNvbnN0IGZsb2F0KiB2YWx1ZXNfbSwgY29uc3QgZmxvYXQqIHZhbHVlc19zLAorICAg ICAgIGNiID0gTXVsQWRkKGEsIGIsIGNiKTsKKyAgICAgfQorICAgICAvLyArIGRpc3RhbmNlX211 bCAqIHheMiAqIG51bQorLSAgICB4ID0gLUdldExhbmUoU3VtT2ZMYW5lcyhjYikpIC8KKy0gICAg ICAgIChHZXRMYW5lKFN1bU9mTGFuZXMoY2EpKSArIG51bSAqIGRpc3RhbmNlX211bCAqIDAuNWYp OworKyAgICB4ID0gLUdldExhbmUoU3VtT2ZMYW5lcyhkZiwgY2IpKSAvCisrICAgICAgICAoR2V0 TGFuZShTdW1PZkxhbmVzKGRmLCBjYSkpICsgbnVtICogZGlzdGFuY2VfbXVsICogMC41Zik7Cisg ICB9IGVsc2UgeworICAgICBjb25zdGV4cHIgZmxvYXQgZXBzID0gMTsKKyAgICAgY29uc3RleHBy IGZsb2F0IGtDbGFtcCA9IDIwLjBmOworZGlmZiAtLWdpdCBhL2xpYi9qeGwvZW5jX2NsdXN0ZXIu Y2MgYi9saWIvanhsL2VuY19jbHVzdGVyLmNjCitpbmRleCAxZjEyYTI5Li44YWU4NjNjIDEwMDY0 NAorLS0tIGEvbGliL2p4bC9lbmNfY2x1c3Rlci5jYworKysrIGIvbGliL2p4bC9lbmNfY2x1c3Rl ci5jYworQEAgLTQ5LDcgKzQ5LDcgQEAgdm9pZCBIaXN0b2dyYW1FbnRyb3B5KGNvbnN0IEhpc3Rv Z3JhbSYgYSkgeworICAgICBjb25zdCBhdXRvIGNvdW50cyA9IExvYWRVKGRpLCAmYS5kYXRhX1tp XSk7CisgICAgIGVudHJvcHlfbGFuZXMgKz0gRW50cm9weShDb252ZXJ0VG8oZGYsIGNvdW50cyks IGludl90b3QsIHRvdGFsKTsKKyAgIH0KKy0gIGEuZW50cm9weV8gKz0gR2V0TGFuZShTdW1PZkxh bmVzKGVudHJvcHlfbGFuZXMpKTsKKysgIGEuZW50cm9weV8gKz0gR2V0TGFuZShTdW1PZkxhbmVz KGRmLCBlbnRyb3B5X2xhbmVzKSk7CisgfQorIAorIGZsb2F0IEhpc3RvZ3JhbURpc3RhbmNlKGNv bnN0IEhpc3RvZ3JhbSYgYSwgY29uc3QgSGlzdG9ncmFtJiBiKSB7CitAQCAtNzEsNyArNzEsNyBA QCBmbG9hdCBIaXN0b2dyYW1EaXN0YW5jZShjb25zdCBIaXN0b2dyYW0mIGEsIGNvbnN0IEhpc3Rv Z3JhbSYgYikgeworICAgICBjb25zdCBhdXRvIGNvdW50cyA9IENvbnZlcnRUbyhkZiwgYV9jb3Vu dHMgKyBiX2NvdW50cyk7CisgICAgIGRpc3RhbmNlX2xhbmVzICs9IEVudHJvcHkoY291bnRzLCBp bnZfdG90LCB0b3RhbCk7CisgICB9CistICBjb25zdCBmbG9hdCB0b3RhbF9kaXN0YW5jZSA9IEdl dExhbmUoU3VtT2ZMYW5lcyhkaXN0YW5jZV9sYW5lcykpOworKyAgY29uc3QgZmxvYXQgdG90YWxf ZGlzdGFuY2UgPSBHZXRMYW5lKFN1bU9mTGFuZXMoZGYsIGRpc3RhbmNlX2xhbmVzKSk7CisgICBy ZXR1cm4gdG90YWxfZGlzdGFuY2UgLSBhLmVudHJvcHlfIC0gYi5lbnRyb3B5XzsKKyB9CisgCitk aWZmIC0tZ2l0IGEvbGliL2p4bC9lbmNfZW50cm9weV9jb2Rlci5jYyBiL2xpYi9qeGwvZW5jX2Vu dHJvcHlfY29kZXIuY2MKK2luZGV4IDA5NDYzMDAuLjA3ZmU1YTAgMTAwNjQ0CistLS0gYS9saWIv anhsL2VuY19lbnRyb3B5X2NvZGVyLmNjCisrKysgYi9saWIvanhsL2VuY19lbnRyb3B5X2NvZGVy LmNjCitAQCAtODYsNyArODYsNyBAQCBpbnQzMl90IE51bU5vblplcm9FeGNlcHRMTEYoY29uc3Qg c2l6ZV90IGN4LCBjb25zdCBzaXplX3QgY3ksCisgCisgICAvLyBXZSB3YW50IGFyZWEgLSBzdW1f emVybywgYWRkIGJlY2F1c2UgbmVnX3N1bV96ZXJvIGlzIGFscmVhZHkgbmVnYXRlZC4KKyAgIGNv bnN0IGludDMyX3Qgbnplcm9zID0KKy0gICAgICBpbnQzMl90KGN4ICogY3kgKiBrRENUQmxvY2tT aXplKSArIEdldExhbmUoU3VtT2ZMYW5lcyhuZWdfc3VtX3plcm8pKTsKKysgICAgICBpbnQzMl90 KGN4ICogY3kgKiBrRENUQmxvY2tTaXplKSArIEdldExhbmUoU3VtT2ZMYW5lcyhkaSwgbmVnX3N1 bV96ZXJvKSk7CisgCisgICBjb25zdCBpbnQzMl90IHNoaWZ0ZWRfbnplcm9zID0gc3RhdGljX2Nh c3Q8aW50MzJfdD4oCisgICAgICAgKG56ZXJvcyArIGNvdmVyZWRfYmxvY2tzIC0gMSkgPj4gbG9n Ml9jb3ZlcmVkX2Jsb2Nrcyk7CitAQCAtMTM1LDcgKzEzNSw3IEBAIGludDMyX3QgTnVtTm9uWmVy bzh4OEV4Y2VwdERDKGNvbnN0IGludDMyX3QqIEpYTF9SRVNUUklDVCBibG9jaywKKyAKKyAgIC8v IFdlIHdhbnQgNjQgLSBzdW1femVybywgYWRkIGJlY2F1c2UgbmVnX3N1bV96ZXJvIGlzIGFscmVh ZHkgbmVnYXRlZC4KKyAgIGNvbnN0IGludDMyX3Qgbnplcm9zID0KKy0gICAgICBpbnQzMl90KGtE Q1RCbG9ja1NpemUpICsgR2V0TGFuZShTdW1PZkxhbmVzKG5lZ19zdW1femVybykpOworKyAgICAg IGludDMyX3Qoa0RDVEJsb2NrU2l6ZSkgKyBHZXRMYW5lKFN1bU9mTGFuZXMoZGksIG5lZ19zdW1f emVybykpOworIAorICAgKm56ZXJvc19wb3MgPSBuemVyb3M7CisgCitkaWZmIC0tZ2l0IGEvbGli L2p4bC9lbmNfZmFzdF9oZXVyaXN0aWNzLmNjIGIvbGliL2p4bC9lbmNfZmFzdF9oZXVyaXN0aWNz LmNjCitpbmRleCAxNmY3NjcwLi4wNTUxNzgyIDEwMDY0NAorLS0tIGEvbGliL2p4bC9lbmNfZmFz dF9oZXVyaXN0aWNzLmNjCisrKysgYi9saWIvanhsL2VuY19mYXN0X2hldXJpc3RpY3MuY2MKK0BA IC05NCw4ICs5NCw4IEBAIFN0YXR1cyBIZXVyaXN0aWNzKFBhc3Nlc0VuY29kZXJTdGF0ZSogZW5j X3N0YXRlLAorICAgICAgICAgICAgICAgY2IgPSBNdWxBZGQoYSwgYiwgY2IpOworICAgICAgICAg ICAgIH0KKyAgICAgICAgICAgfQorLSAgICAgICAgICBmbG9hdCBiZXN0ID0KKy0gICAgICAgICAg ICAgIC1HZXRMYW5lKFN1bU9mTGFuZXMoY2IpKSAvIChHZXRMYW5lKFN1bU9mTGFuZXMoY2EpKSAr IDFlLTlmKTsKKysgICAgICAgICAgZmxvYXQgYmVzdCA9IC1HZXRMYW5lKFN1bU9mTGFuZXMoZGYs IGNiKSkgLworKyAgICAgICAgICAgICAgICAgICAgICAgKEdldExhbmUoU3VtT2ZMYW5lcyhkZiwg Y2EpKSArIDFlLTlmKTsKKyAgICAgICAgICAgaW50OF90JiByZXMgPSAoYyA9PSAwID8gc2hhcmVk LmNtYXAueXRveF9tYXAgOiBzaGFyZWQuY21hcC55dG9iX21hcCkKKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgLlJvdyh0eSlbdHhdOworICAgICAgICAgICByZXMgPSBzdGQ6Om1heCgtMTI4 LjBmLCBzdGQ6Om1pbigxMjcuMGYsIHJvdW5kZihiZXN0KSkpOworQEAgLTEyNCw4ICsxMjQsOCBA QCBTdGF0dXMgSGV1cmlzdGljcyhQYXNzZXNFbmNvZGVyU3RhdGUqIGVuY19zdGF0ZSwKKyAgICAg ICAgICAgICAgICAgbWF4ID0gSWZUaGVuRWxzZShtYXggPiBubiwgbWF4LCBubik7CisgICAgICAg ICAgICAgICB9CisgICAgICAgICAgICAgfQorLSAgICAgICAgICAgIHJvd19vdXRfYXZnW3hdID0g R2V0TGFuZShTdW1PZkxhbmVzKHN1bSkpOworLSAgICAgICAgICAgIHJvd19vdXRbeF0gPSBHZXRM YW5lKE1heE9mTGFuZXMobWF4KSk7CisrICAgICAgICAgICAgcm93X291dF9hdmdbeF0gPSBHZXRM YW5lKFN1bU9mTGFuZXMoZGY0LCBzdW0pKTsKKysgICAgICAgICAgICByb3dfb3V0W3hdID0gR2V0 TGFuZShNYXhPZkxhbmVzKGRmNCwgbWF4KSk7CisgICAgICAgICAgIH0KKyAgICAgICAgIH0KKyAg ICAgICB9LAorZGlmZiAtLWdpdCBhL2xpYi9qeGwvZ2F1c3NfYmx1ci5jYyBiL2xpYi9qeGwvZ2F1 c3NfYmx1ci5jYworaW5kZXggZjliYWJlNy4uZjI0YTc0YyAxMDA2NDQKKy0tLSBhL2xpYi9qeGwv Z2F1c3NfYmx1ci5jYworKysrIGIvbGliL2p4bC9nYXVzc19ibHVyLmNjCitAQCAtNDIxLDcgKzQy MSw3IEBAIEltYWdlRiBDb252b2x2ZVhTYW1wbGVBbmRUcmFuc3Bvc2UoY29uc3QgSW1hZ2VGJiBp biwKKyAgICAgICBmb3IgKGludCBpID0gLXI7IGkgPD0gcjsgaSArPSBMYW5lcyhkZikpIHsKKyAg ICAgICAgIHN1bSA9IE11bEFkZChMb2FkVShkZiwgcm93cCArIHggKyBpKSwgTG9hZFUoZGYsIGtl cm5lbHAgKyBpKSwgc3VtKTsKKyAgICAgICB9CistICAgICAgb3V0LlJvdyhveClbeV0gPSBHZXRM YW5lKFN1bU9mTGFuZXMoc3VtKSk7CisrICAgICAgb3V0LlJvdyhveClbeV0gPSBHZXRMYW5lKFN1 bU9mTGFuZXMoZGYsIHN1bSkpOworICAgICB9CisgICAgIGZvciAoOyB4IDwgaW4ueHNpemUoKTsg eCArPSByZXMsICsrb3gpIHsKKyAgICAgICBmbG9hdCBzdW0gPSAwLjBmOworZGlmZiAtLWdpdCBh L2xpYi9qeGwvbW9kdWxhci9lbmNvZGluZy9lbmNfbWEuY2MgYi9saWIvanhsL21vZHVsYXIvZW5j b2RpbmcvZW5jX21hLmNjCitpbmRleCAwZTJlYWFjLi5kNDg1MTI5IDEwMDY0NAorLS0tIGEvbGli L2p4bC9tb2R1bGFyL2VuY29kaW5nL2VuY19tYS5jYworKysrIGIvbGliL2p4bC9tb2R1bGFyL2Vu Y29kaW5nL2VuY19tYS5jYworQEAgLTg0LDcgKzg0LDcgQEAgZmxvYXQgRXN0aW1hdGVCaXRzKGNv bnN0IGludDMyX3QgKmNvdW50cywgaW50MzJfdCAqcm91bmRlZF9jb3VudHMsCisgICAgIGJpdHNf bGFuZXMgLT0KKyAgICAgICAgIElmVGhlbkVsc2UoY291bnRzX3YgPT0gemVybywgemVybywgY291 bnRzX3YgKiBCaXRDYXN0KGRmLCBuYnBzKSk7CisgICB9CistICByZXR1cm4gR2V0TGFuZShTdW1P ZkxhbmVzKGJpdHNfbGFuZXMpKTsKKysgIHJldHVybiBHZXRMYW5lKFN1bU9mTGFuZXMoZGYsIGJp dHNfbGFuZXMpKTsKKyB9CisgCisgdm9pZCBNYWtlU3BsaXROb2RlKHNpemVfdCBwb3MsIGludCBw cm9wZXJ0eSwgaW50IHNwbGl0dmFsLCBQcmVkaWN0b3IgbHByZWQsCitkaWZmIC0tZ2l0IGEvbGli L2p4bC9yYXRpb25hbF9wb2x5bm9taWFsX3Rlc3QuY2MgYi9saWIvanhsL3JhdGlvbmFsX3BvbHlu b21pYWxfdGVzdC5jYworaW5kZXggNjk5YWZkMC4uZjk4NWViMCAxMDA2NDQKKy0tLSBhL2xpYi9q eGwvcmF0aW9uYWxfcG9seW5vbWlhbF90ZXN0LmNjCisrKysgYi9saWIvanhsL3JhdGlvbmFsX3Bv bHlub21pYWxfdGVzdC5jYworQEAgLTUxLDcgKzUxLDcgQEAgc3RydWN0IEV2YWxMb2cyIHsKKyAg ICAgY29uc3QgSFdZX0ZVTEwoaW50MzJfdCkgZGk7CisgICAgIGNvbnN0IGF1dG8geF9iaXRzID0g Qml0Q2FzdChkaSwgdngpOworICAgICAvLyBDYW5ub3QgaGFuZGxlIG5lZ2F0aXZlIG51bWJlcnMg LyBOYU4uCistICAgIEpYTF9EQVNTRVJUKEFsbFRydWUoQWJzKHhfYml0cykgPT0geF9iaXRzKSk7 CisrICAgIEpYTF9EQVNTRVJUKEFsbFRydWUoZGksIEFicyh4X2JpdHMpID09IHhfYml0cykpOwor IAorICAgICAvLyBSYW5nZSByZWR1Y3Rpb24gdG8gWy0xLzMsIDEvM10gLSAzIGludGVnZXIsIDIg ZmxvYXQgb3BzCisgICAgIGNvbnN0IGF1dG8gZXhwX2JpdHMgPSB4X2JpdHMgLSBTZXQoZGksIDB4 M2YyYWFhYWIpOyAgLy8gPSAyLzMKK2RpZmYgLS1naXQgYS9saWIvanhsL3NwbGluZXMuY2MgYi9s aWIvanhsL3NwbGluZXMuY2MKK2luZGV4IDg2NTM0NDUuLjVkYzI0MDQgMTAwNjQ0CistLS0gYS9s aWIvanhsL3NwbGluZXMuY2MKKysrKyBiL2xpYi9qeGwvc3BsaW5lcy5jYworQEAgLTUyLDcgKzUy LDcgQEAgZmxvYXQgQ29udGludW91c0lEQ1QoY29uc3QgZmxvYXQgZGN0WzMyXSwgZmxvYXQgdCkg eworICAgICBhdXRvIGxvY2FsX3JlcyA9IExvYWRVKGRmLCBkY3QgKyBpKSAqIGNvczsKKyAgICAg cmVzdWx0ID0gTXVsQWRkKFNldChkZiwgc3F1YXJlX3Jvb3Q8Mj46OnZhbHVlKSwgbG9jYWxfcmVz LCByZXN1bHQpOworICAgfQorLSAgcmV0dXJuIEdldExhbmUoU3VtT2ZMYW5lcyhyZXN1bHQpKTsK KysgIHJldHVybiBHZXRMYW5lKFN1bU9mTGFuZXMoZGYsIHJlc3VsdCkpOworIH0KKyAKKyB0ZW1w bGF0ZSA8dHlwZW5hbWUgREY+CitkaWZmIC0tZ2l0IGEvbGliL2p4bC90cmFuc3Bvc2UtaW5sLmgg Yi9saWIvanhsL3RyYW5zcG9zZS1pbmwuaAoraW5kZXggZDEyYjEyOS4uNDY3NDQyMCAxMDA2NDQK Ky0tLSBhL2xpYi9qeGwvdHJhbnNwb3NlLWlubC5oCisrKysgYi9saWIvanhsL3RyYW5zcG9zZS1p bmwuaAorQEAgLTc0LDUwICs3NCw1MSBAQCBKWExfSU5MSU5FX1RSQU5TUE9TRSB2b2lkIEdlbmVy aWNUcmFuc3Bvc2VCbG9jayhUcmFuc3Bvc2VTaW1kVGFnPHRydWU+LAorICAgc3RhdGljX2Fzc2Vy dChDT0xTX29yXzAgJSA4ID09IDAsICJJbnZhbGlkIG51bWJlciBvZiBjb2x1bW5zIik7CisgICBm b3IgKHNpemVfdCBuID0gMDsgbiA8IFJPV1M7IG4gKz0gOCkgeworICAgICBmb3IgKHNpemVfdCBt ID0gMDsgbSA8IENPTFM7IG0gKz0gOCkgeworLSAgICAgIGF1dG8gaTAgPSBmcm9tLkxvYWRQYXJ0 KEJsb2NrRGVzYzw4PigpLCBuICsgMCwgbSArIDApOworLSAgICAgIGF1dG8gaTEgPSBmcm9tLkxv YWRQYXJ0KEJsb2NrRGVzYzw4PigpLCBuICsgMSwgbSArIDApOworLSAgICAgIGF1dG8gaTIgPSBm cm9tLkxvYWRQYXJ0KEJsb2NrRGVzYzw4PigpLCBuICsgMiwgbSArIDApOworLSAgICAgIGF1dG8g aTMgPSBmcm9tLkxvYWRQYXJ0KEJsb2NrRGVzYzw4PigpLCBuICsgMywgbSArIDApOworLSAgICAg IGF1dG8gaTQgPSBmcm9tLkxvYWRQYXJ0KEJsb2NrRGVzYzw4PigpLCBuICsgNCwgbSArIDApOwor LSAgICAgIGF1dG8gaTUgPSBmcm9tLkxvYWRQYXJ0KEJsb2NrRGVzYzw4PigpLCBuICsgNSwgbSAr IDApOworLSAgICAgIGF1dG8gaTYgPSBmcm9tLkxvYWRQYXJ0KEJsb2NrRGVzYzw4PigpLCBuICsg NiwgbSArIDApOworLSAgICAgIGF1dG8gaTcgPSBmcm9tLkxvYWRQYXJ0KEJsb2NrRGVzYzw4Pigp LCBuICsgNywgbSArIDApOworKyAgICAgIGNvbnN0IEJsb2NrRGVzYzw4PiBkOworKyAgICAgIGF1 dG8gaTAgPSBmcm9tLkxvYWRQYXJ0KGQsIG4gKyAwLCBtICsgMCk7CisrICAgICAgYXV0byBpMSA9 IGZyb20uTG9hZFBhcnQoZCwgbiArIDEsIG0gKyAwKTsKKysgICAgICBhdXRvIGkyID0gZnJvbS5M b2FkUGFydChkLCBuICsgMiwgbSArIDApOworKyAgICAgIGF1dG8gaTMgPSBmcm9tLkxvYWRQYXJ0 KGQsIG4gKyAzLCBtICsgMCk7CisrICAgICAgYXV0byBpNCA9IGZyb20uTG9hZFBhcnQoZCwgbiAr IDQsIG0gKyAwKTsKKysgICAgICBhdXRvIGk1ID0gZnJvbS5Mb2FkUGFydChkLCBuICsgNSwgbSAr IDApOworKyAgICAgIGF1dG8gaTYgPSBmcm9tLkxvYWRQYXJ0KGQsIG4gKyA2LCBtICsgMCk7Cisr ICAgICAgYXV0byBpNyA9IGZyb20uTG9hZFBhcnQoZCwgbiArIDcsIG0gKyAwKTsKKyAgICAgICAv LyBTdXJwcmlzaW5nbHksIHRoaXMgc3RyYWlnaHRmb3J3YXJkIGltcGxlbWVudGF0aW9uICgyNCBj eWNsZXMgb24gcG9ydDUpCisgICAgICAgLy8gaXMgZmFzdGVyIHRoYW4gbG9hZDEyOCtpbnNlcnQg YW5kIExvYWREdXAxMjgrQ29uY2F0VXBwZXJMb3dlcitibGVuZC4KKy0gICAgICBjb25zdCBhdXRv IHEwID0gSW50ZXJsZWF2ZUxvd2VyKGkwLCBpMik7CistICAgICAgY29uc3QgYXV0byBxMSA9IElu dGVybGVhdmVMb3dlcihpMSwgaTMpOworLSAgICAgIGNvbnN0IGF1dG8gcTIgPSBJbnRlcmxlYXZl VXBwZXIoaTAsIGkyKTsKKy0gICAgICBjb25zdCBhdXRvIHEzID0gSW50ZXJsZWF2ZVVwcGVyKGkx LCBpMyk7CistICAgICAgY29uc3QgYXV0byBxNCA9IEludGVybGVhdmVMb3dlcihpNCwgaTYpOwor LSAgICAgIGNvbnN0IGF1dG8gcTUgPSBJbnRlcmxlYXZlTG93ZXIoaTUsIGk3KTsKKy0gICAgICBj b25zdCBhdXRvIHE2ID0gSW50ZXJsZWF2ZVVwcGVyKGk0LCBpNik7CistICAgICAgY29uc3QgYXV0 byBxNyA9IEludGVybGVhdmVVcHBlcihpNSwgaTcpOworLQorLSAgICAgIGNvbnN0IGF1dG8gcjAg PSBJbnRlcmxlYXZlTG93ZXIocTAsIHExKTsKKy0gICAgICBjb25zdCBhdXRvIHIxID0gSW50ZXJs ZWF2ZVVwcGVyKHEwLCBxMSk7CistICAgICAgY29uc3QgYXV0byByMiA9IEludGVybGVhdmVMb3dl cihxMiwgcTMpOworLSAgICAgIGNvbnN0IGF1dG8gcjMgPSBJbnRlcmxlYXZlVXBwZXIocTIsIHEz KTsKKy0gICAgICBjb25zdCBhdXRvIHI0ID0gSW50ZXJsZWF2ZUxvd2VyKHE0LCBxNSk7CistICAg ICAgY29uc3QgYXV0byByNSA9IEludGVybGVhdmVVcHBlcihxNCwgcTUpOworLSAgICAgIGNvbnN0 IGF1dG8gcjYgPSBJbnRlcmxlYXZlTG93ZXIocTYsIHE3KTsKKy0gICAgICBjb25zdCBhdXRvIHI3 ID0gSW50ZXJsZWF2ZVVwcGVyKHE2LCBxNyk7CistCistICAgICAgaTAgPSBDb25jYXRMb3dlckxv d2VyKHI0LCByMCk7CistICAgICAgaTEgPSBDb25jYXRMb3dlckxvd2VyKHI1LCByMSk7CistICAg ICAgaTIgPSBDb25jYXRMb3dlckxvd2VyKHI2LCByMik7CistICAgICAgaTMgPSBDb25jYXRMb3dl ckxvd2VyKHI3LCByMyk7CistICAgICAgaTQgPSBDb25jYXRVcHBlclVwcGVyKHI0LCByMCk7Cist ICAgICAgaTUgPSBDb25jYXRVcHBlclVwcGVyKHI1LCByMSk7CistICAgICAgaTYgPSBDb25jYXRV cHBlclVwcGVyKHI2LCByMik7CistICAgICAgaTcgPSBDb25jYXRVcHBlclVwcGVyKHI3LCByMyk7 CistICAgICAgdG8uU3RvcmVQYXJ0KEJsb2NrRGVzYzw4PigpLCBpMCwgbSArIDAsIG4gKyAwKTsK Ky0gICAgICB0by5TdG9yZVBhcnQoQmxvY2tEZXNjPDg+KCksIGkxLCBtICsgMSwgbiArIDApOwor LSAgICAgIHRvLlN0b3JlUGFydChCbG9ja0Rlc2M8OD4oKSwgaTIsIG0gKyAyLCBuICsgMCk7Cist ICAgICAgdG8uU3RvcmVQYXJ0KEJsb2NrRGVzYzw4PigpLCBpMywgbSArIDMsIG4gKyAwKTsKKy0g ICAgICB0by5TdG9yZVBhcnQoQmxvY2tEZXNjPDg+KCksIGk0LCBtICsgNCwgbiArIDApOworLSAg ICAgIHRvLlN0b3JlUGFydChCbG9ja0Rlc2M8OD4oKSwgaTUsIG0gKyA1LCBuICsgMCk7CistICAg ICAgdG8uU3RvcmVQYXJ0KEJsb2NrRGVzYzw4PigpLCBpNiwgbSArIDYsIG4gKyAwKTsKKy0gICAg ICB0by5TdG9yZVBhcnQoQmxvY2tEZXNjPDg+KCksIGk3LCBtICsgNywgbiArIDApOworKyAgICAg IGNvbnN0IGF1dG8gcTAgPSBJbnRlcmxlYXZlTG93ZXIoZCwgaTAsIGkyKTsKKysgICAgICBjb25z dCBhdXRvIHExID0gSW50ZXJsZWF2ZUxvd2VyKGQsIGkxLCBpMyk7CisrICAgICAgY29uc3QgYXV0 byBxMiA9IEludGVybGVhdmVVcHBlcihkLCBpMCwgaTIpOworKyAgICAgIGNvbnN0IGF1dG8gcTMg PSBJbnRlcmxlYXZlVXBwZXIoZCwgaTEsIGkzKTsKKysgICAgICBjb25zdCBhdXRvIHE0ID0gSW50 ZXJsZWF2ZUxvd2VyKGQsIGk0LCBpNik7CisrICAgICAgY29uc3QgYXV0byBxNSA9IEludGVybGVh dmVMb3dlcihkLCBpNSwgaTcpOworKyAgICAgIGNvbnN0IGF1dG8gcTYgPSBJbnRlcmxlYXZlVXBw ZXIoZCwgaTQsIGk2KTsKKysgICAgICBjb25zdCBhdXRvIHE3ID0gSW50ZXJsZWF2ZVVwcGVyKGQs IGk1LCBpNyk7CisrCisrICAgICAgY29uc3QgYXV0byByMCA9IEludGVybGVhdmVMb3dlcihkLCBx MCwgcTEpOworKyAgICAgIGNvbnN0IGF1dG8gcjEgPSBJbnRlcmxlYXZlVXBwZXIoZCwgcTAsIHEx KTsKKysgICAgICBjb25zdCBhdXRvIHIyID0gSW50ZXJsZWF2ZUxvd2VyKGQsIHEyLCBxMyk7Cisr ICAgICAgY29uc3QgYXV0byByMyA9IEludGVybGVhdmVVcHBlcihkLCBxMiwgcTMpOworKyAgICAg IGNvbnN0IGF1dG8gcjQgPSBJbnRlcmxlYXZlTG93ZXIoZCwgcTQsIHE1KTsKKysgICAgICBjb25z dCBhdXRvIHI1ID0gSW50ZXJsZWF2ZVVwcGVyKGQsIHE0LCBxNSk7CisrICAgICAgY29uc3QgYXV0 byByNiA9IEludGVybGVhdmVMb3dlcihkLCBxNiwgcTcpOworKyAgICAgIGNvbnN0IGF1dG8gcjcg PSBJbnRlcmxlYXZlVXBwZXIoZCwgcTYsIHE3KTsKKysKKysgICAgICBpMCA9IENvbmNhdExvd2Vy TG93ZXIoZCwgcjQsIHIwKTsKKysgICAgICBpMSA9IENvbmNhdExvd2VyTG93ZXIoZCwgcjUsIHIx KTsKKysgICAgICBpMiA9IENvbmNhdExvd2VyTG93ZXIoZCwgcjYsIHIyKTsKKysgICAgICBpMyA9 IENvbmNhdExvd2VyTG93ZXIoZCwgcjcsIHIzKTsKKysgICAgICBpNCA9IENvbmNhdFVwcGVyVXBw ZXIoZCwgcjQsIHIwKTsKKysgICAgICBpNSA9IENvbmNhdFVwcGVyVXBwZXIoZCwgcjUsIHIxKTsK KysgICAgICBpNiA9IENvbmNhdFVwcGVyVXBwZXIoZCwgcjYsIHIyKTsKKysgICAgICBpNyA9IENv bmNhdFVwcGVyVXBwZXIoZCwgcjcsIHIzKTsKKysgICAgICB0by5TdG9yZVBhcnQoZCwgaTAsIG0g KyAwLCBuICsgMCk7CisrICAgICAgdG8uU3RvcmVQYXJ0KGQsIGkxLCBtICsgMSwgbiArIDApOwor KyAgICAgIHRvLlN0b3JlUGFydChkLCBpMiwgbSArIDIsIG4gKyAwKTsKKysgICAgICB0by5TdG9y ZVBhcnQoZCwgaTMsIG0gKyAzLCBuICsgMCk7CisrICAgICAgdG8uU3RvcmVQYXJ0KGQsIGk0LCBt ICsgNCwgbiArIDApOworKyAgICAgIHRvLlN0b3JlUGFydChkLCBpNSwgbSArIDUsIG4gKyAwKTsK KysgICAgICB0by5TdG9yZVBhcnQoZCwgaTYsIG0gKyA2LCBuICsgMCk7CisrICAgICAgdG8uU3Rv cmVQYXJ0KGQsIGk3LCBtICsgNywgbiArIDApOworICAgICB9CisgICB9CisgfQorQEAgLTEzNywy NSArMTM4LDI2IEBAIEpYTF9JTkxJTkVfVFJBTlNQT1NFIHZvaWQgR2VuZXJpY1RyYW5zcG9zZUJs b2NrKFRyYW5zcG9zZVNpbWRUYWc8dHJ1ZT4sCisgICBzdGF0aWNfYXNzZXJ0KENPTFNfb3JfMCAl IDQgPT0gMCwgIkludmFsaWQgbnVtYmVyIG9mIGNvbHVtbnMiKTsKKyAgIGZvciAoc2l6ZV90IG4g PSAwOyBuIDwgUk9XUzsgbiArPSA0KSB7CisgICAgIGZvciAoc2l6ZV90IG0gPSAwOyBtIDwgQ09M UzsgbSArPSA0KSB7CistICAgICAgY29uc3QgYXV0byBwMCA9IGZyb20uTG9hZFBhcnQoQmxvY2tE ZXNjPDQ+KCksIG4gKyAwLCBtICsgMCk7CistICAgICAgY29uc3QgYXV0byBwMSA9IGZyb20uTG9h ZFBhcnQoQmxvY2tEZXNjPDQ+KCksIG4gKyAxLCBtICsgMCk7CistICAgICAgY29uc3QgYXV0byBw MiA9IGZyb20uTG9hZFBhcnQoQmxvY2tEZXNjPDQ+KCksIG4gKyAyLCBtICsgMCk7CistICAgICAg Y29uc3QgYXV0byBwMyA9IGZyb20uTG9hZFBhcnQoQmxvY2tEZXNjPDQ+KCksIG4gKyAzLCBtICsg MCk7CistCistICAgICAgY29uc3QgYXV0byBxMCA9IEludGVybGVhdmVMb3dlcihwMCwgcDIpOwor LSAgICAgIGNvbnN0IGF1dG8gcTEgPSBJbnRlcmxlYXZlTG93ZXIocDEsIHAzKTsKKy0gICAgICBj b25zdCBhdXRvIHEyID0gSW50ZXJsZWF2ZVVwcGVyKHAwLCBwMik7CistICAgICAgY29uc3QgYXV0 byBxMyA9IEludGVybGVhdmVVcHBlcihwMSwgcDMpOworLQorLSAgICAgIGNvbnN0IGF1dG8gcjAg PSBJbnRlcmxlYXZlTG93ZXIocTAsIHExKTsKKy0gICAgICBjb25zdCBhdXRvIHIxID0gSW50ZXJs ZWF2ZVVwcGVyKHEwLCBxMSk7CistICAgICAgY29uc3QgYXV0byByMiA9IEludGVybGVhdmVMb3dl cihxMiwgcTMpOworLSAgICAgIGNvbnN0IGF1dG8gcjMgPSBJbnRlcmxlYXZlVXBwZXIocTIsIHEz KTsKKy0KKy0gICAgICB0by5TdG9yZVBhcnQoQmxvY2tEZXNjPDQ+KCksIHIwLCBtICsgMCwgbiAr IDApOworLSAgICAgIHRvLlN0b3JlUGFydChCbG9ja0Rlc2M8ND4oKSwgcjEsIG0gKyAxLCBuICsg MCk7CistICAgICAgdG8uU3RvcmVQYXJ0KEJsb2NrRGVzYzw0PigpLCByMiwgbSArIDIsIG4gKyAw KTsKKy0gICAgICB0by5TdG9yZVBhcnQoQmxvY2tEZXNjPDQ+KCksIHIzLCBtICsgMywgbiArIDAp OworKyAgICAgIGNvbnN0IEJsb2NrRGVzYzw0PiBkOworKyAgICAgIGNvbnN0IGF1dG8gcDAgPSBm cm9tLkxvYWRQYXJ0KGQsIG4gKyAwLCBtICsgMCk7CisrICAgICAgY29uc3QgYXV0byBwMSA9IGZy b20uTG9hZFBhcnQoZCwgbiArIDEsIG0gKyAwKTsKKysgICAgICBjb25zdCBhdXRvIHAyID0gZnJv bS5Mb2FkUGFydChkLCBuICsgMiwgbSArIDApOworKyAgICAgIGNvbnN0IGF1dG8gcDMgPSBmcm9t LkxvYWRQYXJ0KGQsIG4gKyAzLCBtICsgMCk7CisrCisrICAgICAgY29uc3QgYXV0byBxMCA9IElu dGVybGVhdmVMb3dlcihkLCBwMCwgcDIpOworKyAgICAgIGNvbnN0IGF1dG8gcTEgPSBJbnRlcmxl YXZlTG93ZXIoZCwgcDEsIHAzKTsKKysgICAgICBjb25zdCBhdXRvIHEyID0gSW50ZXJsZWF2ZVVw cGVyKGQsIHAwLCBwMik7CisrICAgICAgY29uc3QgYXV0byBxMyA9IEludGVybGVhdmVVcHBlcihk LCBwMSwgcDMpOworKworKyAgICAgIGNvbnN0IGF1dG8gcjAgPSBJbnRlcmxlYXZlTG93ZXIoZCwg cTAsIHExKTsKKysgICAgICBjb25zdCBhdXRvIHIxID0gSW50ZXJsZWF2ZVVwcGVyKGQsIHEwLCBx MSk7CisrICAgICAgY29uc3QgYXV0byByMiA9IEludGVybGVhdmVMb3dlcihkLCBxMiwgcTMpOwor KyAgICAgIGNvbnN0IGF1dG8gcjMgPSBJbnRlcmxlYXZlVXBwZXIoZCwgcTIsIHEzKTsKKysKKysg ICAgICB0by5TdG9yZVBhcnQoZCwgcjAsIG0gKyAwLCBuICsgMCk7CisrICAgICAgdG8uU3RvcmVQ YXJ0KGQsIHIxLCBtICsgMSwgbiArIDApOworKyAgICAgIHRvLlN0b3JlUGFydChkLCByMiwgbSAr IDIsIG4gKyAwKTsKKysgICAgICB0by5TdG9yZVBhcnQoZCwgcjMsIG0gKyAzLCBuICsgMCk7Cisg ICAgIH0KKyAgIH0KKyB9CitkaWZmIC0tZ2l0IGEvbGliL3Byb2ZpbGVyL3Byb2ZpbGVyLmNjIGIv bGliL3Byb2ZpbGVyL3Byb2ZpbGVyLmNjCitpbmRleCBkMjFlZTA5Li4xODZmZjA2IDEwMDY0NAor LS0tIGEvbGliL3Byb2ZpbGVyL3Byb2ZpbGVyLmNjCisrKysgYi9saWIvcHJvZmlsZXIvcHJvZmls ZXIuY2MKK0BAIC0xMzksNyArMTM5LDcgQEAgY2xhc3MgUmVzdWx0cyB7CisgICB2b2lkIEFuYWx5 emVQYWNrZXRzKGNvbnN0IFBhY2tldCogSFdZX1JFU1RSSUNUIHBhY2tldHMsCisgICAgICAgICAg ICAgICAgICAgICAgIGNvbnN0IHNpemVfdCBudW1fcGFja2V0cykgeworICAgICAvLyBFbnN1cmVz IHByaW9yIHdlYWtseS1vcmRlcmVkIHN0cmVhbWluZyBzdG9yZXMgYXJlIGdsb2JhbGx5IHZpc2li bGUuCistICAgIGh3eTo6U3RvcmVGZW5jZSgpOworKyAgICBod3k6OkZsdXNoU3RyZWFtKCk7Cisg CisgICAgIGNvbnN0IHVpbnQ2NF90IHQwID0gVGlja3NCZWZvcmUoKTsKKyAKK0BAIC0zNzIsMTIg KzM3MiwxMiBAQCB2b2lkIFRocmVhZFNwZWNpZmljOjpDb21wdXRlT3ZlcmhlYWQoKSB7CisgICAg ICAgY29uc3Qgc2l6ZV90IGtSZXBzID0gMTAwMDA7CisgICAgICAgLy8gQW5hbHlzaXMgdGltZSBz aG91bGQgbm90IGJlIGluY2x1ZGVkID0+IG11c3QgZml0IHdpdGhpbiBidWZmZXIuCisgICAgICAg SFdZX0FTU0VSVChrUmVwcyAqIDIgPCBtYXhfcGFja2V0c18pOworLSAgICAgIGh3eTo6U3RvcmVG ZW5jZSgpOworKyAgICAgIGh3eTo6Rmx1c2hTdHJlYW0oKTsKKyAgICAgICBjb25zdCB1aW50NjRf dCB0MCA9IFRpY2tzQmVmb3JlKCk7CisgICAgICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBrUmVw czsgKytpKSB7CisgICAgICAgICBQUk9GSUxFUl9aT05FKCJEdW1teSIpOworICAgICAgIH0KKy0g ICAgICBod3k6OlN0b3JlRmVuY2UoKTsKKysgICAgICBod3k6OkZsdXNoU3RyZWFtKCk7CisgICAg ICAgY29uc3QgdWludDY0X3QgdDEgPSBUaWNrc0FmdGVyKCk7CisgICAgICAgSFdZX0FTU0VSVChu dW1fcGFja2V0c18gKyBidWZmZXJfc2l6ZV8gPT0ga1JlcHMgKiAyKTsKKyAgICAgICBidWZmZXJf c2l6ZV8gPSAwOwpkaWZmIC0tZ2l0IGEvc3JjcGtncy9saWJqeGwvdGVtcGxhdGUgYi9zcmNwa2dz L2xpYmp4bC90ZW1wbGF0ZQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAu Ljg3MjkyOTNiMGZmZAotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvbGlianhsL3RlbXBsYXRl CkBAIC0wLDAgKzEsNjUgQEAKKyMgVGVtcGxhdGUgZmlsZSBmb3IgJ2xpYmp4bCcKK3BrZ25hbWU9 bGlianhsCit2ZXJzaW9uPTAuNi4xCityZXZpc2lvbj0xCisjX3Nob3J0X3ZlcnNpb249MC42Cisj d3Jrc3JjPWxpYmp4bC0ke19zaG9ydF92ZXJzaW9ufQorYnVpbGRfc3R5bGU9Y21ha2UKK2NvbmZp Z3VyZV9hcmdzPSItREJVSUxEX1RFU1RJTkc9T0ZGIC1ESlBFR1hMX0VOQUJMRV9CRU5DSE1BUks9 T0ZGIC1ESlBFR1hMX0VOQUJMRV9FWEFNUExFUz1PRkYgLURKUEVHWExfRU5BQkxFX1NKUEVHPU9G RiAtREpQRUdYTF9FTkFCTEVfUExVR0lOUz1PTiIKK2hvc3RtYWtlZGVwZW5kcz0idGFyIHBrZy1j b25maWcgYXNjaWlkb2MiCittYWtlZGVwZW5kcz0iYnJvdGxpLWRldmVsIGhpZ2h3YXkgbGlicG5n LWRldmVsIGdpZmxpYi1kZXZlbCBsaWJqcGVnLXR1cmJvLWRldmVsIGxpYm9wZW5leHItZGV2ZWwg Z2RrLXBpeGJ1Zi1kZXZlbCBnaW1wLWRldmVsIgorc2hvcnRfZGVzYz0iSlBFRyBYTCBpbWFnZSBm b3JtYXQgcmVmZXJlbmNlIGltcGxlbWVudGF0aW9uIgorbWFpbnRhaW5lcj0iSm9zaHVhIEtyw6Rt ZXIgPGpvc2h1YUBrcmFlbWVyLmxpbms+IgorbGljZW5zZT0iQlNELTMtQ2xhdXNlLCBjdXN0b206 UGF0ZW50IGdyYW50IgoraG9tZXBhZ2U9Imh0dHBzOi8vanBlZy5vcmcvanBlZ3hsLyIKK19sb2Rl cG5nX2hhc2g9NDhlNTM2NGVmNDhlYzI0MDhmNDRjNzI3NjU3YWMxYjY3MDMxODVmOAorX3NrY21z X2hhc2g9NjQzNzQ3NTZlMDM3MDBkNjQ5Zjg5N2RiZDk4Yzk1ZTc4YzMwYzdkYQorZGlzdGZpbGVz PSJodHRwczovL2dpdGh1Yi5jb20vbGlianhsL2xpYmp4bC9hcmNoaXZlL3Yke3ZlcnNpb259LnRh ci5negorIGh0dHBzOi8vZ2l0aHViLmNvbS9sdmFuZGV2ZS9sb2RlcG5nL2FyY2hpdmUvJHtfbG9k ZXBuZ19oYXNofS50YXIuZ3o+bG9kZXBuZy0ke19sb2RlcG5nX2hhc2h9LnRhci5negorIGh0dHBz Oi8vc2tpYS5nb29nbGVzb3VyY2UuY29tL3NrY21zLythcmNoaXZlLyR7X3NrY21zX2hhc2h9LnRh ci5nej5za2Ntcy0ke19za2Ntc19oYXNofS50YXIuZ3oiCitjaGVja3N1bT0iY2NiZDVhNzI5ZDcz MDE1MjMwM2JlMzk5ZjAzM2I5MDVlNjA4MzA5ZDU4MDJkNzdhNjFhOTVmYWEwOTI1OTJjNQorIGM0 N2M0OGM3N2EyMDVmMWFmNDg0YjdiNWE4NDcyOTBhZjY1ZGUzZWE2ZjE1ODE3YWEyN2M1ZWM3Y2M1 MjA4ZmQKKyBAYTY5MjMwYzdiNmYwM2ExNzhjOTNhYmM2ZWRjODMyYzA0MGQ2ZTE5ODM0MDE5M2Iy N2MzZDA0YWZlY2Y4ZjYxNyIKK3NraXBfZXh0cmFjdGlvbj0ibG9kZXBuZy0ke19sb2RlcG5nX2hh c2h9LnRhci5negorIHNrY21zLSR7X3NrY21zX2hhc2h9LnRhci5neiIKKworcG9zdF9leHRyYWN0 KCkgeworCWNkICR7WEJQU19TUkNESVNURElSfS9saWJqeGwtJHt2ZXJzaW9ufQorCXRhciAteGYg bG9kZXBuZy0ke19sb2RlcG5nX2hhc2h9LnRhci5neiAtLXN0cmlwLWNvbXBvbmVudHM9MSAtQyAk e3dya3NyY30vdGhpcmRfcGFydHkvbG9kZXBuZworCXRhciAteGYgc2tjbXMtJHtfc2tjbXNfaGFz aH0udGFyLmd6IC1DICR7d3Jrc3JjfS90aGlyZF9wYXJ0eS9za2NtcworfQorCitwb3N0X2luc3Rh bGwoKSB7CisJdmxpY2Vuc2UgTElDRU5TRQorCXZsaWNlbnNlIFBBVEVOVFMKK30KKworbGlianhs LWRldmVsX3BhY2thZ2UoKSB7CisJc2hvcnRfZGVzYys9IiAtIGRldmVsb3BtZW50IGZpbGVzIgor CWRlcGVuZHM9ImxpYmp4bD49JHt2ZXJzaW9ufV8ke3JldmlzaW9ufSBoaWdod2F5IGJyb3RsaS1k ZXZlbCIKKwlwa2dfaW5zdGFsbCgpIHsKKwkJdm1vdmUgdXNyL2luY2x1ZGUKKwkJdm1vdmUgInVz ci9saWIvKi5hIgorCQl2bW92ZSAidXNyL2xpYi8qLnNvIgorCQl2bW92ZSB1c3IvbGliL3BrZ2Nv bmZpZworCX0KK30KKworbGlianhsLXRvb2xzX3BhY2thZ2UoKSB7CisJc2hvcnRfZGVzYys9IiAt IHRvb2xzIgorCXBrZ19pbnN0YWxsKCkgeworCQl2bW92ZSB1c3IvYmluCisJCXZtb3ZlIHVzci9z aGFyZS9tYW4KKwl9Cit9CisKK2xpYmp4bC1wbHVnaW5zX3BhY2thZ2UoKSB7CisJc2hvcnRfZGVz Yys9IiAtIHBsdWdpbnMiCisJZGVwZW5kcz0iZGVza3RvcC1maWxlLXV0aWxzIgorCXBrZ19pbnN0 YWxsKCkgeworCQl2bW92ZSB1c3IvbGliL2dkay1waXhidWYtMi4wCisJCXZtb3ZlIHVzci9saWIv Z2ltcAorCQl2bW92ZSB1c3Ivc2hhcmUvbWltZQorCQl2bW92ZSB1c3Ivc2hhcmUvdGh1bWJuYWls ZXJzCisJfQorfQoKRnJvbSAwOWRkNDBkYTI4M2QyMWViMDNkYzA3MjRhYjg4NTUzNWI2OTIyNTJk IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBKb3NodWEgPGpvc2h1YUBrcmFlbWVyLmxp bms+CkRhdGU6IFdlZCwgMzAgTWFyIDIwMjIgMjE6MjM6MTYgKzAyMDAKU3ViamVjdDogW1BBVENI IDMvM10ga2ltYWdlZm9ybWF0czogZW5hYmxlIEpQRUcgWEwgc3VwcG9ydAoKLS0tCiBzcmNwa2dz L2tpbWFnZWZvcm1hdHMvdGVtcGxhdGUgfCA0ICsrLS0KIDEgZmlsZSBjaGFuZ2VkLCAyIGluc2Vy dGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9raW1hZ2Vmb3Jt YXRzL3RlbXBsYXRlIGIvc3JjcGtncy9raW1hZ2Vmb3JtYXRzL3RlbXBsYXRlCmluZGV4IGViZDZl ODFkYjI5OC4uNjk2NWUwNDEwMjdjIDEwMDY0NAotLS0gYS9zcmNwa2dzL2tpbWFnZWZvcm1hdHMv dGVtcGxhdGUKKysrIGIvc3JjcGtncy9raW1hZ2Vmb3JtYXRzL3RlbXBsYXRlCkBAIC0xLDEyICsx LDEyIEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdraW1hZ2Vmb3JtYXRzJwogcGtnbmFtZT1raW1h Z2Vmb3JtYXRzCiB2ZXJzaW9uPTUuOTIuMAotcmV2aXNpb249MQorcmV2aXNpb249MgogYnVpbGRf c3R5bGU9Y21ha2UKIGNvbmZpZ3VyZV9hcmdzPSItREtJTUFHRUZPUk1BVFNfSEVJRj1PTiIKIGhv c3RtYWtlZGVwZW5kcz0ia2NvcmVhZGRvbnMgZXh0cmEtY21ha2UtbW9kdWxlcyBxdDUtcW1ha2Ug cXQ1LWhvc3QtdG9vbHMKICBwa2ctY29uZmlnIgotbWFrZWRlcGVuZHM9ImthcmNoaXZlLWRldmVs IGxpYm9wZW5leHItZGV2ZWwgbGliaGVpZi1kZXZlbCIKK21ha2VkZXBlbmRzPSJrYXJjaGl2ZS1k ZXZlbCBsaWJvcGVuZXhyLWRldmVsIGxpYmhlaWYtZGV2ZWwgbGlianhsLWRldmVsIgogc2hvcnRf ZGVzYz0iS0RFIFBsdWdpbnMgdG8gYWxsb3cgUUltYWdlIHRvIHN1cHBvcnQgZXh0cmEgZmlsZSBm b3JtYXRzIgogbWFpbnRhaW5lcj0iSm9obiA8bWVAam9obm55bmF0b3IuZGV2PiIKIGxpY2Vuc2U9 IkxHUEwtMi4wLW9yLWxhdGVyIgo= --===============3638082029212660945==--