From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-0.9 required=5.0 tests=ALL_TRUSTED, T_SCC_BODY_TEXT_LINE,URIBL_SBL_A autolearn=ham autolearn_force=no version=3.4.4 Received: from inbox.vuxu.org (inbox.vuxu.org [IPv6:::1]) by inbox.vuxu.org (Postfix) with ESMTP id B1C4426749 for ; Tue, 30 Jan 2024 05:13:07 +0100 (CET) Content-Type: multipart/mixed; boundary="===============8947331456711274725==" MIME-Version: 1.0 Subject: =?utf8?q?Re=3A_=5BPR_PATCH=5D_=5BUpdated=5D_libjxl=3A_update_to_0=2E9=2E1=2E?= To: ml@inbox.vuxu.org From: oreo639 Reply-to: ml@inbox.vuxu.org In-Reply-To: References: Date: Tue, 30 Jan 2024 05:13:07 +0100 List-Id: Message-Id: <20240130041307.B1C4426749@inbox.vuxu.org> GitHub notification mails are now in MIME to allow UTF8. --===============8947331456711274725== Content-Type: text/plain; charset="utf8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 VGhlcmUgaXMgYW4gdXBkYXRlZCBwdWxsIHJlcXVlc3QgYnkgb3JlbzYzOSBhZ2FpbnN0IG1hc3Rl ciBvbiB0aGUgdm9pZC1wYWNrYWdlcyByZXBvc2l0b3J5CgpodHRwczovL2dpdGh1Yi5jb20vb3Jl bzYzOS92b2lkLXBhY2thZ2VzIGxpYmp4bApodHRwczovL2dpdGh1Yi5jb20vdm9pZC1saW51eC92 b2lkLXBhY2thZ2VzL3B1bGwvNDg0MzUKCmxpYmp4bDogdXBkYXRlIHRvIDAuOS4xLgo8IS0tIFVu Y29tbWVudCByZWxldmFudCBzZWN0aW9ucyBhbmQgZGVsZXRlIG9wdGlvbnMgd2hpY2ggYXJlIG5v dCBhcHBsaWNhYmxlIC0tPg0KDQojIyMjIFRlc3RpbmcgdGhlIGNoYW5nZXMNCi0gSSB0ZXN0ZWQg dGhlIGNoYW5nZXMgaW4gdGhpcyBQUjogKipZRVMqKg0KDQo8IS0tDQojIyMjIE5ldyBwYWNrYWdl DQotIFRoaXMgbmV3IHBhY2thZ2UgY29uZm9ybXMgdG8gdGhlIFtwYWNrYWdlIHJlcXVpcmVtZW50 c10oaHR0cHM6Ly9naXRodWIuY29tL3ZvaWQtbGludXgvdm9pZC1wYWNrYWdlcy9ibG9iL21hc3Rl ci9DT05UUklCVVRJTkcubWQjcGFja2FnZS1yZXF1aXJlbWVudHMpOiAqKllFUyoqfCoqTk8qKg0K LS0+DQoNCjwhLS0gTm90ZTogSWYgdGhlIGJ1aWxkIGlzIGxpa2VseSB0byB0YWtlIG1vcmUgdGhh biAyIGhvdXJzLCBwbGVhc2UgYWRkIGNpIHNraXAgdGFnIGFzIGRlc2NyaWJlZCBpbg0KaHR0cHM6 Ly9naXRodWIuY29tL3ZvaWQtbGludXgvdm9pZC1wYWNrYWdlcy9ibG9iL21hc3Rlci9DT05UUklC VVRJTkcubWQjY29udGludW91cy1pbnRlZ3JhdGlvbg0KYW5kIHRlc3QgYXQgbGVhc3Qgb25lIG5h dGl2ZSBidWlsZCBhbmQsIGlmIHN1cHBvcnRlZCwgYXQgbGVhc3Qgb25lIGNyb3NzIGJ1aWxkLg0K SWdub3JlIHRoaXMgc2VjdGlvbiBpZiB0aGlzIFBSIGlzIG5vdCBza2lwcGluZyBDSS4NCi0tPg0K PCEtLQ0KIyMjIyBMb2NhbCBidWlsZCB0ZXN0aW5nDQotIEkgYnVpbHQgdGhpcyBQUiBsb2NhbGx5 IGZvciBteSBuYXRpdmUgYXJjaGl0ZWN0dXJlLCAoQVJDSC1MSUJDKQ0KLSBJIGJ1aWx0IHRoaXMg UFIgbG9jYWxseSBmb3IgdGhlc2UgYXJjaGl0ZWN0dXJlcyAoaWYgc3VwcG9ydGVkLiBtYXJrIGNy b3NzYnVpbGRzKToNCiAgLSBhYXJjaDY0LW11c2wNCiAgLSBhcm12N2wNCiAgLSBhcm12NmwtbXVz bA0KLS0+DQoKCkEgcGF0Y2ggZmlsZSBmcm9tIGh0dHBzOi8vZ2l0aHViLmNvbS92b2lkLWxpbnV4 L3ZvaWQtcGFja2FnZXMvcHVsbC80ODQzNS5wYXRjaCBpcyBhdHRhY2hlZA== --===============8947331456711274725== Content-Type: text/x-diff MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="github-pr-libjxl-48435.patch" RnJvbSBjZDNlMzFhNDZjMjZmMjJhNGRjY2M4MDU0MWVhZWY1YjExM2JiNWRlIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBvcmVvNjM5IDxvcmVvNjM5MUBnbWFpbC5jb20+CkRhdGU6IFR1 ZSwgMiBKYW4gMjAyNCAyMDozMjo1OCAtMDgwMApTdWJqZWN0OiBbUEFUQ0ggMS82XSBoaWdod2F5 OiB1cGRhdGUgdG8gMS4wLjcuCgotLS0KIHNyY3BrZ3MvaGlnaHdheS90ZW1wbGF0ZSB8IDQgKyst LQogMSBmaWxlIGNoYW5nZWQsIDIgaW5zZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRpZmYg LS1naXQgYS9zcmNwa2dzL2hpZ2h3YXkvdGVtcGxhdGUgYi9zcmNwa2dzL2hpZ2h3YXkvdGVtcGxh dGUKaW5kZXggNGQ2ODk4YjYyYzc0Ni4uOTYwNzZkYmFjMTUzNSAxMDA2NDQKLS0tIGEvc3JjcGtn cy9oaWdod2F5L3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvaGlnaHdheS90ZW1wbGF0ZQpAQCAtMSw2 ICsxLDYgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2hpZ2h3YXknCiBwa2duYW1lPWhpZ2h3YXkK LXZlcnNpb249MS4wLjQKK3ZlcnNpb249MS4wLjcKIHJldmlzaW9uPTEKIGJ1aWxkX3N0eWxlPWNt YWtlCiBjb25maWd1cmVfYXJncz0iLURIV1lfU1lTVEVNX0dURVNUPU9OIC1ESFdZX0VOQUJMRV9F WEFNUExFUz1PRkYiCkBAIC0xMSw3ICsxMSw3IEBAIGxpY2Vuc2U9IkFwYWNoZS0yLjAiCiBob21l cGFnZT0iaHR0cHM6Ly9naXRodWIuY29tL2dvb2dsZS9oaWdod2F5IgogY2hhbmdlbG9nPSJodHRw czovL3Jhdy5naXRodWJ1c2VyY29udGVudC5jb20vZ29vZ2xlL2hpZ2h3YXkvbWFzdGVyL2RlYmlh bi9jaGFuZ2Vsb2ciCiBkaXN0ZmlsZXM9Imh0dHBzOi8vZ2l0aHViLmNvbS9nb29nbGUvaGlnaHdh eS9hcmNoaXZlLyR7dmVyc2lvbn0udGFyLmd6IgotY2hlY2tzdW09ZmFjY2QzNDM5MzVjOWU5OGFm ZDEwMTZlOWQyMGUwYjhiODlkOTA4NTA4ZDFhZjk1ODQ5NmY4YzJkMzAwNGFjMgorY2hlY2tzdW09 NTQzNDQ4ODEwODE4NmMxNzBhNWUyZmNhNWUzYzliNmVmNTlhMWNhYTRkNTIwYjAwOGE5YjhiZTZi OGFiZTZjNQogCiBpZiBbIC16ICIkWEJQU19DSEVDS19QS0dTIiBdOyB0aGVuCiAJY29uZmlndXJl X2FyZ3MrPSIgLURCVUlMRF9URVNUSU5HPU9GRiIKCkZyb20gNTZlNmVkMzU0Yjk2YTNiYmNhOTMy NjdjYTdlOTdjODgxNWJlNjMwMyBNb24gU2VwIDE3IDAwOjAwOjAwIDIwMDEKRnJvbTogb3JlbzYz OSA8b3JlbzYzOTFAZ21haWwuY29tPgpEYXRlOiBUdWUsIDIgSmFuIDIwMjQgMjA6MzM6MjUgLTA4 MDAKU3ViamVjdDogW1BBVENIIDIvNl0gbGlianhsOiB1cGRhdGUgdG8gMC45LjEuCgotLS0KIGNv bW1vbi9zaGxpYnMgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgNiArLQogc3JjcGtncy9s aWJqeGwvcGF0Y2hlcy9maXgtcGl4YnVmLnBhdGNoIHwgMTg0ICsrKysrKysrKysrKysrKysrKysr KysrKwogc3JjcGtncy9saWJqeGwvdGVtcGxhdGUgICAgICAgICAgICAgICAgIHwgIDI0ICsrLS0K IDMgZmlsZXMgY2hhbmdlZCwgMTk3IGluc2VydGlvbnMoKyksIDE3IGRlbGV0aW9ucygtKQogY3Jl YXRlIG1vZGUgMTAwNjQ0IHNyY3BrZ3MvbGlianhsL3BhdGNoZXMvZml4LXBpeGJ1Zi5wYXRjaAoK ZGlmZiAtLWdpdCBhL2NvbW1vbi9zaGxpYnMgYi9jb21tb24vc2hsaWJzCmluZGV4IDcxZjE3Mjc0 MGU1YzYuLmE3ZWJiODZhYzdjODUgMTAwNjQ0Ci0tLSBhL2NvbW1vbi9zaGxpYnMKKysrIGIvY29t bW9uL3NobGlicwpAQCAtNDIzNSw5ICs0MjM1LDkgQEAgbGlicGxheWVyY3RsLnNvLjIgcGxheWVy Y3RsLTIuNC4xXzEKIGxpYndpcmVwbHVtYmVyLTAuNC5zby4wIHdpcmVwbHVtYmVyLTAuNC4xNF8x CiBsaWJqb2R5Y29kZS5zby4zIGxpYmpvZHljb2RlLTMuMC4xXzEKIGxpYmdzb2Fwc3NsKystMi44 LjEyNC5zbyBnc29hcC0yLjguMTI0XzEKLWxpYmp4bC5zby4wLjggbGlianhsLTAuOC4yXzEKLWxp Ymp4bF9kZWMuc28uMC44IGxpYmp4bC0wLjguMl8xCi1saWJqeGxfdGhyZWFkcy5zby4wLjggbGli anhsLTAuOC4yXzEKK2xpYmp4bC5zby4wLjkgbGlianhsLTAuOS4wXzEKK2xpYmp4bF9kZWMuc28u MC45IGxpYmp4bC0wLjkuMF8xCitsaWJqeGxfdGhyZWFkcy5zby4wLjkgbGlianhsLTAuOS4wXzEK IGxpYnRleHQtZW5naW5lLTAuMS5zby4wIHRleHQtZW5naW5lLTAuMS4xXzEKIGxpYnZtYWYuc28u MSB2bWFmLTIuMy4xXzEKIGxpYmxjMy5zby4xIGxpYmxjMy0xLjAuM18xCmRpZmYgLS1naXQgYS9z cmNwa2dzL2xpYmp4bC9wYXRjaGVzL2ZpeC1waXhidWYucGF0Y2ggYi9zcmNwa2dzL2xpYmp4bC9w YXRjaGVzL2ZpeC1waXhidWYucGF0Y2gKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw MDAwMDAwMC4uNDcxNjZhOGY2MGQxOAotLS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3MvbGlianhs L3BhdGNoZXMvZml4LXBpeGJ1Zi5wYXRjaApAQCAtMCwwICsxLDE4NCBAQAorRnJvbSA3MDIxYWRh NzZiZDFjMWVlNDQ0ODMwMjdjNDAyMzNjZDJlNDEyNjM3IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAw MQorRnJvbTogTGVvIEl6ZW4gPGxlby5pemVuQGdtYWlsLmNvbT4KK0RhdGU6IE1vbiwgMjkgSmFu IDIwMjQgMDk6MjE6MTAgLTA1MDAKK1N1YmplY3Q6IFtQQVRDSF0gbGliL2p4bC9kZWNvZGUuY2M6 IGRlZHVwbGljYXRlIGFuZCBjb3JyZWN0IG1pbl9zaXplCisgY2FsY3VsYXRpb24KKworQ29kZSB0 byBjYWxjdWxhdGUgdGhlIHByb3BlciBzaXplIG9mIHRoZSBidWZmZXIgZXhpc3RzIGluIHRocmVl IHBsYWNlcworaW4gdGhpcyBmdW5jdGlvbiAtIG9uZSBmb3IgdGhlIHN0YW5kYXJkIGJ1ZmZlciwg b25lIGZvciB0aGUgZXh0cmEKK2NoYW5uZWwgYnVmZmVyLCBhbmQgb25lIGZvciB0aGUgcHJldmll dyBidWZmZXIuIEhvd2V2ZXIsIG9ubHkgdGhlIGNvZGUKK2ZvciB0aGUgcHJldmlldyBidWZmZXIg Y29ycmVjdGx5IHRvb2sgaW50byBhY2NvdW50IHRoZSBsYXN0IHJvdyBzaXplCitwb3NzaWJseSBi ZWluZyBzbGlnaHRseSBzbWFsbGVyIHRoYW4gdGhlIHJlbWFpbmluZyByb3dzLgorCitUaGlzIGNv bW1pdCBzZXBhcmF0ZXMgdGhlIGNvZGUgb3V0IGludG8gYSBzZXBhcmF0ZSBmdW5jdGlvbiB0byBy ZW1vdmUKK2R1cGxpY2F0ZSBjb2RlLCBhbmQgdXNlcyB0aGUgYWxnb3JpdGhtIGZyb20gdGhlIHBy ZXZldyBidWZmZXIgd2hpY2ggd2FzCit0aGUgb25seSBjb3JyZWN0IG9uZS4KKworU2lnbmVkLW9m Zi1ieTogTGVvIEl6ZW4gPGxlby5pemVuQGdtYWlsLmNvbT4KKy0tLQorIGxpYi9qeGwvZGVjb2Rl LmNjICAgICAgfCA2MyArKysrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0K KyBsaWIvanhsL2RlY29kZV90ZXN0LmNjIHwgIDggKysrKy0tCisgMiBmaWxlcyBjaGFuZ2VkLCAz MCBpbnNlcnRpb25zKCspLCA0MSBkZWxldGlvbnMoLSkKKworZGlmZiAtLWdpdCBhL2xpYi9qeGwv ZGVjb2RlLmNjIGIvbGliL2p4bC9kZWNvZGUuY2MKK2luZGV4IGI2NzRkMWJhODg1Li45NTMzNDJk NzZlMSAxMDA2NDQKKy0tLSBhL2xpYi9qeGwvZGVjb2RlLmNjCisrKysgYi9saWIvanhsL2RlY29k ZS5jYworQEAgLTIzNDgsMjkgKzIzNDgsNDAgQEAgSlhMX0VYUE9SVCBKeGxEZWNvZGVyU3RhdHVz IEp4bERlY29kZXJTZXRDbXMoSnhsRGVjb2RlciogZGVjLAorICAgcmV0dXJuIEpYTF9ERUNfU1VD Q0VTUzsKKyB9CisgCistSlhMX0VYUE9SVCBKeGxEZWNvZGVyU3RhdHVzIEp4bERlY29kZXJQcmV2 aWV3T3V0QnVmZmVyU2l6ZSgKKy0gICAgY29uc3QgSnhsRGVjb2RlciogZGVjLCBjb25zdCBKeGxQ aXhlbEZvcm1hdCogZm9ybWF0LCBzaXplX3QqIHNpemUpIHsKKytzdGF0aWMgSnhsRGVjb2RlclN0 YXR1cyBHZXRNaW5TaXplKGNvbnN0IEp4bERlY29kZXIqIGRlYywKKysgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIGNvbnN0IEp4bFBpeGVsRm9ybWF0KiBmb3JtYXQsCisrICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzaXplX3QgbnVtX2NoYW5uZWxzLCBzaXplX3Qq IG1pbl9zaXplLAorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9vbCBwcmV2 aWV3KSB7CisgICBzaXplX3QgYml0czsKKyAgIEp4bERlY29kZXJTdGF0dXMgc3RhdHVzID0gUHJl cGFyZVNpemVDaGVjayhkZWMsIGZvcm1hdCwgJmJpdHMpOworICAgaWYgKHN0YXR1cyAhPSBKWExf REVDX1NVQ0NFU1MpIHJldHVybiBzdGF0dXM7CistICBpZiAoZm9ybWF0LT5udW1fY2hhbm5lbHMg PCAzICYmCistICAgICAgIWRlYy0+aW1hZ2VfbWV0YWRhdGEuY29sb3JfZW5jb2RpbmcuSXNHcmF5 KCkpIHsKKy0gICAgcmV0dXJuIEpYTF9BUElfRVJST1IoIk51bWJlciBvZiBjaGFubmVscyBpcyB0 b28gbG93IGZvciBjb2xvciBvdXRwdXQiKTsKKysgIHNpemVfdCB4c2l6ZSwgeXNpemU7CisrICBp ZiAocHJldmlldykgeworKyAgICB4c2l6ZSA9IGRlYy0+bWV0YWRhdGEub3JpZW50ZWRfcHJldmll d194c2l6ZShkZWMtPmtlZXBfb3JpZW50YXRpb24pOworKyAgICB5c2l6ZSA9IGRlYy0+bWV0YWRh dGEub3JpZW50ZWRfcHJldmlld195c2l6ZShkZWMtPmtlZXBfb3JpZW50YXRpb24pOworKyAgfSBl bHNlIHsKKysgICAgR2V0Q3VycmVudERpbWVuc2lvbnMoZGVjLCB4c2l6ZSwgeXNpemUpOworICAg fQorLQorLSAgc2l6ZV90IHhzaXplID0gZGVjLT5tZXRhZGF0YS5vcmllbnRlZF9wcmV2aWV3X3hz aXplKGRlYy0+a2VlcF9vcmllbnRhdGlvbik7CistICBzaXplX3QgeXNpemUgPSBkZWMtPm1ldGFk YXRhLm9yaWVudGVkX3ByZXZpZXdfeXNpemUoZGVjLT5rZWVwX29yaWVudGF0aW9uKTsKKy0KKysg IGlmIChudW1fY2hhbm5lbHMgPT0gMCkgbnVtX2NoYW5uZWxzID0gZm9ybWF0LT5udW1fY2hhbm5l bHM7CisgICBzaXplX3Qgcm93X3NpemUgPQorLSAgICAgIGp4bDo6RGl2Q2VpbCh4c2l6ZSAqIGZv cm1hdC0+bnVtX2NoYW5uZWxzICogYml0cywganhsOjprQml0c1BlckJ5dGUpOworKyAgICAgIGp4 bDo6RGl2Q2VpbCh4c2l6ZSAqIG51bV9jaGFubmVscyAqIGJpdHMsIGp4bDo6a0JpdHNQZXJCeXRl KTsKKyAgIHNpemVfdCBsYXN0X3Jvd19zaXplID0gcm93X3NpemU7CisgICBpZiAoZm9ybWF0LT5h bGlnbiA+IDEpIHsKKyAgICAgcm93X3NpemUgPSBqeGw6OkRpdkNlaWwocm93X3NpemUsIGZvcm1h dC0+YWxpZ24pICogZm9ybWF0LT5hbGlnbjsKKyAgIH0KKy0gICpzaXplID0gcm93X3NpemUgKiAo eXNpemUgLSAxKSArIGxhc3Rfcm93X3NpemU7CisrICAqbWluX3NpemUgPSByb3dfc2l6ZSAqICh5 c2l6ZSAtIDEpICsgbGFzdF9yb3dfc2l6ZTsKKyAgIHJldHVybiBKWExfREVDX1NVQ0NFU1M7Cisg fQorIAorK0pYTF9FWFBPUlQgSnhsRGVjb2RlclN0YXR1cyBKeGxEZWNvZGVyUHJldmlld091dEJ1 ZmZlclNpemUoCisrICAgIGNvbnN0IEp4bERlY29kZXIqIGRlYywgY29uc3QgSnhsUGl4ZWxGb3Jt YXQqIGZvcm1hdCwgc2l6ZV90KiBzaXplKSB7CisrICBpZiAoZm9ybWF0LT5udW1fY2hhbm5lbHMg PCAzICYmCisrICAgICAgIWRlYy0+aW1hZ2VfbWV0YWRhdGEuY29sb3JfZW5jb2RpbmcuSXNHcmF5 KCkpIHsKKysgICAgcmV0dXJuIEpYTF9BUElfRVJST1IoIk51bWJlciBvZiBjaGFubmVscyBpcyB0 b28gbG93IGZvciBjb2xvciBvdXRwdXQiKTsKKysgIH0KKysgIHJldHVybiBHZXRNaW5TaXplKGRl YywgZm9ybWF0LCAwLCBzaXplLCB0cnVlKTsKKyt9CisrCisgSlhMX0VYUE9SVCBKeGxEZWNvZGVy U3RhdHVzIEp4bERlY29kZXJTZXRQcmV2aWV3T3V0QnVmZmVyKAorICAgICBKeGxEZWNvZGVyKiBk ZWMsIGNvbnN0IEp4bFBpeGVsRm9ybWF0KiBmb3JtYXQsIHZvaWQqIGJ1ZmZlciwgc2l6ZV90IHNp emUpIHsKKyAgIGlmICghZGVjLT5nb3RfYmFzaWNfaW5mbyB8fCAhZGVjLT5tZXRhZGF0YS5tLmhh dmVfcHJldmlldyB8fAorQEAgLTI0MDEsMjMgKzI0MTIsMTIgQEAgSlhMX0VYUE9SVCBKeGxEZWNv ZGVyU3RhdHVzIEp4bERlY29kZXJTZXRQcmV2aWV3T3V0QnVmZmVyKAorIAorIEpYTF9FWFBPUlQg SnhsRGVjb2RlclN0YXR1cyBKeGxEZWNvZGVySW1hZ2VPdXRCdWZmZXJTaXplKAorICAgICBjb25z dCBKeGxEZWNvZGVyKiBkZWMsIGNvbnN0IEp4bFBpeGVsRm9ybWF0KiBmb3JtYXQsIHNpemVfdCog c2l6ZSkgeworLSAgc2l6ZV90IGJpdHM7CistICBKeGxEZWNvZGVyU3RhdHVzIHN0YXR1cyA9IFBy ZXBhcmVTaXplQ2hlY2soZGVjLCBmb3JtYXQsICZiaXRzKTsKKy0gIGlmIChzdGF0dXMgIT0gSlhM X0RFQ19TVUNDRVNTKSByZXR1cm4gc3RhdHVzOworICAgaWYgKGZvcm1hdC0+bnVtX2NoYW5uZWxz IDwgMyAmJgorICAgICAgICFkZWMtPmltYWdlX21ldGFkYXRhLmNvbG9yX2VuY29kaW5nLklzR3Jh eSgpKSB7CisgICAgIHJldHVybiBKWExfQVBJX0VSUk9SKCJOdW1iZXIgb2YgY2hhbm5lbHMgaXMg dG9vIGxvdyBmb3IgY29sb3Igb3V0cHV0Iik7CisgICB9CistICBzaXplX3QgeHNpemUsIHlzaXpl OworLSAgR2V0Q3VycmVudERpbWVuc2lvbnMoZGVjLCB4c2l6ZSwgeXNpemUpOworLSAgc2l6ZV90 IHJvd19zaXplID0KKy0gICAgICBqeGw6OkRpdkNlaWwoeHNpemUgKiBmb3JtYXQtPm51bV9jaGFu bmVscyAqIGJpdHMsIGp4bDo6a0JpdHNQZXJCeXRlKTsKKy0gIGlmIChmb3JtYXQtPmFsaWduID4g MSkgeworLSAgICByb3dfc2l6ZSA9IGp4bDo6RGl2Q2VpbChyb3dfc2l6ZSwgZm9ybWF0LT5hbGln bikgKiBmb3JtYXQtPmFsaWduOworLSAgfQorLSAgKnNpemUgPSByb3dfc2l6ZSAqIHlzaXplOwor IAorLSAgcmV0dXJuIEpYTF9ERUNfU1VDQ0VTUzsKKysgIHJldHVybiBHZXRNaW5TaXplKGRlYywg Zm9ybWF0LCAwLCBzaXplLCBmYWxzZSk7CisgfQorIAorIEp4bERlY29kZXJTdGF0dXMgSnhsRGVj b2RlclNldEltYWdlT3V0QnVmZmVyKEp4bERlY29kZXIqIGRlYywKK0BAIC0yNDYzLDIyICsyNDYz LDcgQEAgSnhsRGVjb2RlclN0YXR1cyBKeGxEZWNvZGVyRXh0cmFDaGFubmVsQnVmZmVyU2l6ZShj b25zdCBKeGxEZWNvZGVyKiBkZWMsCisgICAgIHJldHVybiBKWExfQVBJX0VSUk9SKCJJbnZhbGlk IGV4dHJhIGNoYW5uZWwgaW5kZXgiKTsKKyAgIH0KKyAKKy0gIHNpemVfdCBudW1fY2hhbm5lbHMg PSAxOyAgLy8gRG8gbm90IHVzZSBmb3JtYXQncyBudW1fY2hhbm5lbHMKKy0KKy0gIHNpemVfdCBi aXRzOworLSAgSnhsRGVjb2RlclN0YXR1cyBzdGF0dXMgPSBQcmVwYXJlU2l6ZUNoZWNrKGRlYywg Zm9ybWF0LCAmYml0cyk7CistICBpZiAoc3RhdHVzICE9IEpYTF9ERUNfU1VDQ0VTUykgcmV0dXJu IHN0YXR1czsKKy0KKy0gIHNpemVfdCB4c2l6ZSwgeXNpemU7CistICBHZXRDdXJyZW50RGltZW5z aW9ucyhkZWMsIHhzaXplLCB5c2l6ZSk7CistICBzaXplX3Qgcm93X3NpemUgPQorLSAgICAgIGp4 bDo6RGl2Q2VpbCh4c2l6ZSAqIG51bV9jaGFubmVscyAqIGJpdHMsIGp4bDo6a0JpdHNQZXJCeXRl KTsKKy0gIGlmIChmb3JtYXQtPmFsaWduID4gMSkgeworLSAgICByb3dfc2l6ZSA9IGp4bDo6RGl2 Q2VpbChyb3dfc2l6ZSwgZm9ybWF0LT5hbGlnbikgKiBmb3JtYXQtPmFsaWduOworLSAgfQorLSAg KnNpemUgPSByb3dfc2l6ZSAqIHlzaXplOworLQorLSAgcmV0dXJuIEpYTF9ERUNfU1VDQ0VTUzsK KysgIHJldHVybiBHZXRNaW5TaXplKGRlYywgZm9ybWF0LCAxLCBzaXplLCBmYWxzZSk7CisgfQor IAorIEp4bERlY29kZXJTdGF0dXMgSnhsRGVjb2RlclNldEV4dHJhQ2hhbm5lbEJ1ZmZlcihKeGxE ZWNvZGVyKiBkZWMsCitkaWZmIC0tZ2l0IGEvbGliL2p4bC9kZWNvZGVfdGVzdC5jYyBiL2xpYi9q eGwvZGVjb2RlX3Rlc3QuY2MKK2luZGV4IGNhZWU2ZGJjNTY4Li4zMTA3NDJmNzA1ZiAxMDA2NDQK Ky0tLSBhL2xpYi9qeGwvZGVjb2RlX3Rlc3QuY2MKKysrKyBiL2xpYi9qeGwvZGVjb2RlX3Rlc3Qu Y2MKK0BAIC0yNTc1LDcgKzI1NzUsMTEgQEAgVEVTVChEZWNvZGVUZXN0LCBBbGlnblRlc3QpIHsK KyAgIHNpemVfdCBhbGlnbiA9IDE3OworICAgSnhsUGl4ZWxGb3JtYXQgZm9ybWF0ID0gezMsIEpY TF9UWVBFX1VJTlQ4LCBKWExfTElUVExFX0VORElBTiwgYWxpZ259OworICAgLy8gT24gcHVycG9z ZSBub3QgdXNpbmcganhsOjpSb3VuZFVwVG8gdG8gdGVzdCBpdCBpbmRlcGVuZGVudGx5LgorLSAg c2l6ZV90IGV4cGVjdGVkX2xpbmVfYnl0ZXMgPSAoMSAqIDMgKiB4c2l6ZSArIGFsaWduIC0gMSkg LyBhbGlnbiAqIGFsaWduOworKyAgc2l6ZV90IGV4cGVjdGVkX2xpbmVfc2l6ZV9sYXN0ID0gMSAq IDMgKiB4c2l6ZTsKKysgIHNpemVfdCBleHBlY3RlZF9saW5lX3NpemUgPQorKyAgICAgICgoZXhw ZWN0ZWRfbGluZV9zaXplX2xhc3QgKyBhbGlnbiAtIDEpIC8gYWxpZ24pICogYWxpZ247CisrICBz aXplX3QgZXhwZWN0ZWRfcGl4ZWxzX3NpemUgPQorKyAgICAgIGV4cGVjdGVkX2xpbmVfc2l6ZSAq ICh5c2l6ZSAtIDEpICsgZXhwZWN0ZWRfbGluZV9zaXplX2xhc3Q7CisgCisgICBmb3IgKGludCB1 c2VfY2FsbGJhY2sgPSAwOyB1c2VfY2FsbGJhY2sgPD0gMTsgKyt1c2VfY2FsbGJhY2spIHsKKyAg ICAgc3RkOjp2ZWN0b3I8dWludDhfdD4gcGl4ZWxzMiA9IGp4bDo6RGVjb2RlV2l0aEFQSSgKK0BA IC0yNTgzLDcgKzI1ODcsNyBAQCBURVNUKERlY29kZVRlc3QsIEFsaWduVGVzdCkgeworICAgICAg ICAgLypzZXRfYnVmZmVyX2Vhcmx5PSovZmFsc2UsCisgICAgICAgICAvKnVzZV9yZXNpemFibGVf cnVubmVyPSovZmFsc2UsIC8qcmVxdWlyZV9ib3hlcz0qL2ZhbHNlLAorICAgICAgICAgLypleHBl Y3Rfc3VjY2Vzcz0qL3RydWUpOworLSAgICBFWFBFQ1RfRVEoZXhwZWN0ZWRfbGluZV9ieXRlcyAq IHlzaXplLCBwaXhlbHMyLnNpemUoKSk7CisrICAgIEVYUEVDVF9FUShleHBlY3RlZF9waXhlbHNf c2l6ZSwgcGl4ZWxzMi5zaXplKCkpOworICAgICBFWFBFQ1RfRVEoMHUsIGp4bDo6dGVzdDo6Q29t cGFyZVBpeGVscyhwaXhlbHMuZGF0YSgpLCBwaXhlbHMyLmRhdGEoKSwgeHNpemUsCisgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHlzaXplLCBmb3JtYXRfb3JpZywg Zm9ybWF0KSk7CisgICB9CitGcm9tIGM0ZWJiN2U3MGVlMDk1OTFhZTAyNjk0MTBlYmU4OTI5ZjQw MDcxM2UgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCitGcm9tOiBMZW8gSXplbiA8bGVvLml6ZW5A Z21haWwuY29tPgorRGF0ZTogTW9uLCAyOSBKYW4gMjAyNCAwOToyMzozNiAtMDUwMAorU3ViamVj dDogW1BBVENIXSBwbHVnaW5zL2dkay1waXhidWY6IGNvbnNpZGVyIHN0cmlkZSB3aGVuIHBhc3Np bmcgYnVmZmVyIHRvCisgbGlianhsCisKK1RoaXMgY2hhbmdlIHVzZXMgZ2RrX3BpeGJ1Zl9nZXRf cGl4ZWxzX3dpdGhfbGVuZ3RoIHRvIGdldCB0aGUgYWN0dWFsCitzaXplIG9mIHRoZSBidWZmZXIs IHdpdGggc3RyaWRlIHRha2VuIGludG8gYWNjb3VudC4gVGhlIHByZXZpb3VzIGNvZGUKK2p1c3Qg bXVsdGlwbGllcyB3aWR0aCBieSBoZWlnaHQgYW5kIGlnbm9yZXMgc3RyaWRlLgorCitTaWduZWQt b2ZmLWJ5OiBMZW8gSXplbiA8bGVvLml6ZW5AZ21haWwuY29tPgorLS0tCisgcGx1Z2lucy9nZGst cGl4YnVmL3BpeGJ1ZmxvYWRlci1qeGwuYyB8IDUgKystLS0KKyAxIGZpbGUgY2hhbmdlZCwgMiBp bnNlcnRpb25zKCspLCAzIGRlbGV0aW9ucygtKQorCitkaWZmIC0tZ2l0IGEvcGx1Z2lucy9nZGst cGl4YnVmL3BpeGJ1ZmxvYWRlci1qeGwuYyBiL3BsdWdpbnMvZ2RrLXBpeGJ1Zi9waXhidWZsb2Fk ZXItanhsLmMKK2luZGV4IGJhZmE1N2IxNjc0Li4wNjY0NjhhNTAzNSAxMDA2NDQKKy0tLSBhL3Bs dWdpbnMvZ2RrLXBpeGJ1Zi9waXhidWZsb2FkZXItanhsLmMKKysrKyBiL3BsdWdpbnMvZ2RrLXBp eGJ1Zi9waXhidWZsb2FkZXItanhsLmMKK0BAIC00OTEsOSArNDkxLDggQEAgc3RhdGljIGdib29s ZWFuIGxvYWRfaW5jcmVtZW50KGdwb2ludGVyIGNvbnRleHQsIGNvbnN0IGd1Y2hhciAqYnVmLCBn dWludCBzaXplLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVjb2Rlcl9zdGF0ZS0+ZnJh bWVzLT5sZW4gLSAxKQorICAgICAgICAgICAgICAgICAuZGF0YTsKKyAgICAgICAgIGRlY29kZXJf c3RhdGUtPnBpeGVsX2Zvcm1hdC5hbGlnbiA9IGdka19waXhidWZfZ2V0X3Jvd3N0cmlkZShvdXRw dXQpOworLSAgICAgICAgZ3VjaGFyICpkc3QgPSBnZGtfcGl4YnVmX2dldF9waXhlbHMob3V0cHV0 KTsKKy0gICAgICAgIHNpemVfdCBudW1fcGl4ZWxzID0gZGVjb2Rlcl9zdGF0ZS0+eHNpemUgKiBk ZWNvZGVyX3N0YXRlLT55c2l6ZTsKKy0gICAgICAgIHNpemVfdCBzaXplID0gbnVtX3BpeGVscyAq IGRlY29kZXJfc3RhdGUtPnBpeGVsX2Zvcm1hdC5udW1fY2hhbm5lbHM7CisrICAgICAgICBndWlu dCBzaXplOworKyAgICAgICAgZ3VjaGFyICpkc3QgPSBnZGtfcGl4YnVmX2dldF9waXhlbHNfd2l0 aF9sZW5ndGgob3V0cHV0LCAmc2l6ZSk7CisgICAgICAgICBpZiAoSlhMX0RFQ19TVUNDRVNTICE9 IEp4bERlY29kZXJTZXRJbWFnZU91dEJ1ZmZlcigKKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIGRlY29kZXJfc3RhdGUtPmRlY29kZXIsCisgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAmZGVjb2Rlcl9zdGF0ZS0+cGl4ZWxfZm9ybWF0LCBkc3QsIHNpemUpKSB7 CmRpZmYgLS1naXQgYS9zcmNwa2dzL2xpYmp4bC90ZW1wbGF0ZSBiL3NyY3BrZ3MvbGlianhsL3Rl bXBsYXRlCmluZGV4IGNiMmEwODgwOWIwNTUuLjI3NGE1NDBiMzZhN2UgMTAwNjQ0Ci0tLSBhL3Ny Y3BrZ3MvbGlianhsL3RlbXBsYXRlCisrKyBiL3NyY3BrZ3MvbGlianhsL3RlbXBsYXRlCkBAIC0x LDE2ICsxLDE2IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdsaWJqeGwnCiBwa2duYW1lPWxpYmp4 bAotdmVyc2lvbj0wLjguMgotcmV2aXNpb249MgotX3Rlc3RkYXRhX2hhc2g9ZDYxNjhmZmI5ZTFj YzI0MDA3ZTY0YjY1ZGQ4NGQ4MjJhZDFmYzc1OQotX3NrY21zX2hhc2g9YjI1YjA3YjRiMDc5OTA4 MTFkZTEyMWMwMzU2MTU1YjJiYTBmNDMxOAordmVyc2lvbj0wLjkuMQorcmV2aXNpb249MQorX3Rl c3RkYXRhX2hhc2g9ZmY4ZDc0M2FhYmEwNWIzMDE0ZjE3ZTU0NzVlNTc2MjQyZmE5NzlmYwogYnVp bGRfc3R5bGU9Y21ha2UKIGJ1aWxkX3dya3NyYz0ibGlianhsLSR7dmVyc2lvbn0iCiBjb25maWd1 cmVfYXJncz0iLURKUEVHWExfRU5BQkxFX0JFTkNITUFSSz1PRkYgLURKUEVHWExfRU5BQkxFX0VY QU1QTEVTPU9GRgotIC1ESlBFR1hMX0VOQUJMRV9TSlBFRz1PRkYgLURKUEVHWExfRU5BQkxFX1BM VUdJTlM9T04gLURKUEVHWExfVkVSU0lPTj0ke3ZlcnNpb259IgorIC1ESlBFR1hMX0VOQUJMRV9T SlBFRz1PRkYgLURKUEVHWExfRU5BQkxFX1BMVUdJTlM9T04gLURKUEVHWExfVkVSU0lPTj0ke3Zl cnNpb259CisgLURKUEVHWExfRU5BQkxFX1NLQ01TPU9GRiIKIGhvc3RtYWtlZGVwZW5kcz0idGFy IHBrZy1jb25maWcgYXNjaWlkb2MiCiBtYWtlZGVwZW5kcz0iYnJvdGxpLWRldmVsIGhpZ2h3YXkg bGlicG5nLWRldmVsIGdpZmxpYi1kZXZlbCBsaWJqcGVnLXR1cmJvLWRldmVsCi0gbGlib3BlbmV4 ci1kZXZlbCBsaWJ3ZWJwLWRldmVsIGdkay1waXhidWYtZGV2ZWwgZ2ltcC1kZXZlbCIKKyBsaWJv cGVuZXhyLWRldmVsIGxpYndlYnAtZGV2ZWwgZ2RrLXBpeGJ1Zi1kZXZlbCBnaW1wLWRldmVsIGxj bXMyLWRldmVsIgogY2hlY2tkZXBlbmRzPSJndGVzdC1kZXZlbCB4ZGctdXRpbHMiCiBzaG9ydF9k ZXNjPSJKUEVHIFhMIGltYWdlIGZvcm1hdCByZWZlcmVuY2UgaW1wbGVtZW50YXRpb24iCiBtYWlu dGFpbmVyPSJKb3NodWEgS3LDpG1lciA8am9zaHVhQGtyYWVtZXIubGluaz4iCkBAIC0xOCwxMiAr MTgsMTAgQEAgbGljZW5zZT0iQlNELTMtQ2xhdXNlLCBjdXN0b206UGF0ZW50IGdyYW50IgogaG9t ZXBhZ2U9Imh0dHBzOi8vanBlZy5vcmcvanBlZ3hsLyIKIGNoYW5nZWxvZz0iaHR0cHM6Ly9yYXcu Z2l0aHVidXNlcmNvbnRlbnQuY29tL2xpYmp4bC9saWJqeGwvbWFpbi9DSEFOR0VMT0cubWQiCiBk aXN0ZmlsZXM9Imh0dHBzOi8vZ2l0aHViLmNvbS9saWJqeGwvbGlianhsL2FyY2hpdmUvdiR7dmVy c2lvbn0udGFyLmd6Ci0gaHR0cHM6Ly9naXRodWIuY29tL2xpYmp4bC90ZXN0ZGF0YS9hcmNoaXZl LyR7X3Rlc3RkYXRhX2hhc2h9LnRhci5nej50ZXN0ZGF0YS0ke190ZXN0ZGF0YV9oYXNofS50YXIu Z3oKLSBodHRwczovL3NraWEuZ29vZ2xlc291cmNlLmNvbS9za2Ntcy8rYXJjaGl2ZS8ke19za2Nt c19oYXNofS50YXIuZ3o+c2tjbXMtJHtfc2tjbXNfaGFzaH0udGFyLmd6IgotY2hlY2tzdW09ImM3 MDkxNmZiM2VkNDM3ODRlYjg0MGY4MmYwNWQzOTAwNTNhNTU4ZTJkYTEwNmU0MDg2MzkxOTIzOGZh N2I0MjAKLSA2NDY1OGQzMzQxYmZmMjk3Njg5OWNiOGIxNDAyNDJmZmE0ZGUxY2Q0MWFlZDUwN2Rm ZWM0YWE5ZTdlMDVjYTI0Ci0gQDhmZWIxZTMzYzM4Y2ExM2Y5MWEwZDViZDhjZTI1Zjk3NmViMjM5 ZWRmMzhmNDllNmRiODg5NWFlOWYxZTgzM2MiCi1za2lwX2V4dHJhY3Rpb249InNrY21zLSR7X3Nr Y21zX2hhc2h9LnRhci5neiIKKyBodHRwczovL2dpdGh1Yi5jb20vbGlianhsL3Rlc3RkYXRhL2Fy Y2hpdmUvJHtfdGVzdGRhdGFfaGFzaH0udGFyLmd6PnRlc3RkYXRhLSR7X3Rlc3RkYXRhX2hhc2h9 LnRhci5neiIKK2NoZWNrc3VtPSJhMGU3MmU5ZWNlMjY4NzgxNDcwNjlhZDQ4ODhhYzMzODIwMjFk NGJiZWU3MWMyZTFiNjg3ZDViZGU3ZmQ3ZTAxCisgOWM0NWExMDhkZjMyYTAwMmE2OTQ2NWRmODk2 ZDMzYWNmNzdkOTdjODhmYjU5ZGZmYTBkZmY1NjI4MzcwZTk2ZiIKK3BhdGNoX2FyZ3M9Ii1OcDEg LS1kaXJlY3Rvcnk9JHtidWlsZF93cmtzcmN9IgogCiBpZiBbIC16ICIkWEJQU19DSEVDS19QS0dT IiBdOyB0aGVuCiAJY29uZmlndXJlX2FyZ3MrPSIgLURCVUlMRF9URVNUSU5HPU9GRiIKQEAgLTMx LDcgKzI5LDYgQEAgZmkKIAogcG9zdF9leHRyYWN0KCkgewogCW12ICJ0ZXN0ZGF0YS0ke190ZXN0 ZGF0YV9oYXNofSIvKiAiJHtidWlsZF93cmtzcmN9L3Rlc3RkYXRhLyIKLQlic2R0YXIgLXhmICIk e1hCUFNfU1JDRElTVERJUn0vJHtwa2duYW1lfS0ke3ZlcnNpb259L3NrY21zLSR7X3NrY21zX2hh c2h9LnRhci5neiIgLUMgIiR7YnVpbGRfd3Jrc3JjfS90aGlyZF9wYXJ0eS9za2NtcyIKIH0KIAog cG9zdF9pbnN0YWxsKCkgewpAQCAtNDQsNyArNDEsNiBAQCBsaWJqeGwtZGV2ZWxfcGFja2FnZSgp IHsKIAlkZXBlbmRzPSIke3NvdXJjZXBrZ30+PSR7dmVyc2lvbn1fJHtyZXZpc2lvbn0gaGlnaHdh eSBicm90bGktZGV2ZWwiCiAJcGtnX2luc3RhbGwoKSB7CiAJCXZtb3ZlIHVzci9pbmNsdWRlCi0J CXZtb3ZlICJ1c3IvbGliLyouYSIKIAkJdm1vdmUgInVzci9saWIvKi5zbyIKIAkJdm1vdmUgdXNy L2xpYi9wa2djb25maWcKIAl9CgpGcm9tIDU2YTVmNzhkOTcyYWQ3MjIxZDQ4Y2ViMjNmNTJmNWU4 YzA5YjEyYWIgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206IG9yZW82MzkgPG9yZW82Mzkx QGdtYWlsLmNvbT4KRGF0ZTogVHVlLCAyIEphbiAyMDI0IDIyOjQwOjAwIC0wODAwClN1YmplY3Q6 IFtQQVRDSCAzLzZdIGtyaXRhOiByZWJ1aWxkIGZvciBsaWJqeGwgMC45CgotLS0KIHNyY3BrZ3Mv a3JpdGEvcGF0Y2hlcy9qeGwwOS5wYXRjaCB8IDcxICsrKysrKysrKysrKysrKysrKysrKysrKysr KysrKysKIHNyY3BrZ3Mva3JpdGEvcGF0Y2hlcy9zaXA2OC5wYXRjaCB8IDIzICsrKysrKysrKysK IHNyY3BrZ3Mva3JpdGEvdGVtcGxhdGUgICAgICAgICAgICB8ICAyICstCiAzIGZpbGVzIGNoYW5n ZWQsIDk1IGluc2VydGlvbnMoKyksIDEgZGVsZXRpb24oLSkKIGNyZWF0ZSBtb2RlIDEwMDY0NCBz cmNwa2dzL2tyaXRhL3BhdGNoZXMvanhsMDkucGF0Y2gKIGNyZWF0ZSBtb2RlIDEwMDY0NCBzcmNw a2dzL2tyaXRhL3BhdGNoZXMvc2lwNjgucGF0Y2gKCmRpZmYgLS1naXQgYS9zcmNwa2dzL2tyaXRh L3BhdGNoZXMvanhsMDkucGF0Y2ggYi9zcmNwa2dzL2tyaXRhL3BhdGNoZXMvanhsMDkucGF0Y2gK bmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMC4uNTBlMmNkNTBiY2M2Ngot LS0gL2Rldi9udWxsCisrKyBiL3NyY3BrZ3Mva3JpdGEvcGF0Y2hlcy9qeGwwOS5wYXRjaApAQCAt MCwwICsxLDcxIEBACitGcm9tIGQ5ZTI1OGJmOWQ2YWY1ZjUzNDY3YmVjZjY1YmIyMWJmNmY5NmEz OGUgTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCitGcm9tOiBUaW1vIEd1cnIgPHRpbW8uZ3VyckBn bWFpbC5jb20+CitEYXRlOiBGcmksIDI5IERlYyAyMDIzIDExOjEwOjI2ICswMTAwCitTdWJqZWN0 OiBbUEFUQ0hdIEZpeCBidWlsZCB3aXRoIGxpYmp4bCAwLjkuMAorCitCVUc6NDc4OTg3CistLS0K KyBwbHVnaW5zL2ltcGV4L2p4bC9KUEVHWExJbXBvcnQuY3BwIHwgMTUgKysrKysrKysrKysrKyst CisgMSBmaWxlIGNoYW5nZWQsIDE0IGluc2VydGlvbnMoKyksIDEgZGVsZXRpb24oLSkKKworZGlm ZiAtLWdpdCBhL3BsdWdpbnMvaW1wZXgvanhsL0pQRUdYTEltcG9ydC5jcHAgYi9wbHVnaW5zL2lt cGV4L2p4bC9KUEVHWExJbXBvcnQuY3BwCitpbmRleCA1NzNiYWU0MTI0Ny4uZjViOTg5YjNiNzAg MTAwNjQ0CistLS0gYS9wbHVnaW5zL2ltcGV4L2p4bC9KUEVHWExJbXBvcnQuY3BwCisrKysgYi9w bHVnaW5zL2ltcGV4L2p4bC9KUEVHWExJbXBvcnQuY3BwCitAQCAtNTExLDcgKzUxMSw5IEBAIEpQ RUdYTEltcG9ydDo6Y29udmVydChLaXNEb2N1bWVudCAqZG9jdW1lbnQsIFFJT0RldmljZSAqaW8s IEtpc1Byb3BlcnRpZXNDb25maWd1CisgICAgICAgICAgICAgSnhsQ29sb3JFbmNvZGluZyBjb2xv ckVuY29kaW5ne307CisgICAgICAgICAgICAgaWYgKEpYTF9ERUNfU1VDQ0VTUworICAgICAgICAg ICAgICAgICA9PSBKeGxEZWNvZGVyR2V0Q29sb3JBc0VuY29kZWRQcm9maWxlKGRlYy5nZXQoKSwK KysjaWYgSlBFR1hMX05VTUVSSUNfVkVSU0lPTiA8IEpQRUdYTF9DT01QVVRFX05VTUVSSUNfVkVS U0lPTigwLCA5LCAwKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIG51bGxwdHIsCisrI2VuZGlmCisgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSlhMX0NPTE9SX1BST0ZJTEVfVEFSR0VUX0RB VEEsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgJmNvbG9yRW5jb2RpbmcpKSB7CisgICAgICAgICAgICAgICAgIGNvbnN0IFRyYW5zZmVyQ2hh cmFjdGVyaXN0aWNzIHRyYW5zZmVyRnVuY3Rpb24gPSBbJl0oKSB7CitAQCAtNjM1LDcgKzYzNywx MiBAQCBKUEVHWExJbXBvcnQ6OmNvbnZlcnQoS2lzRG9jdW1lbnQgKmRvY3VtZW50LCBRSU9EZXZp Y2UgKmlvLCBLaXNQcm9wZXJ0aWVzQ29uZmlndQorICAgICAgICAgICAgICAgICBzaXplX3QgaWNj U2l6ZSA9IDA7CisgICAgICAgICAgICAgICAgIFFCeXRlQXJyYXkgaWNjUHJvZmlsZTsKKyAgICAg ICAgICAgICAgICAgaWYgKEpYTF9ERUNfU1VDQ0VTUworLSAgICAgICAgICAgICAgICAgICAgIT0g SnhsRGVjb2RlckdldElDQ1Byb2ZpbGVTaXplKGRlYy5nZXQoKSwgbnVsbHB0ciwgSlhMX0NPTE9S X1BST0ZJTEVfVEFSR0VUX0RBVEEsICZpY2NTaXplKSkgeworKyAgICAgICAgICAgICAgICAgICAg IT0gSnhsRGVjb2RlckdldElDQ1Byb2ZpbGVTaXplKGRlYy5nZXQoKSwKKysjaWYgSlBFR1hMX05V TUVSSUNfVkVSU0lPTiA8IEpQRUdYTF9DT01QVVRFX05VTUVSSUNfVkVSU0lPTigwLDksMCkKKysg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBudWxscHRy LAorKyNlbmRpZgorKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIEpYTF9DT0xPUl9QUk9GSUxFX1RBUkdFVF9EQVRBLAorKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICZpY2NTaXplKSkgeworICAgICAgICAg ICAgICAgICAgICAgZXJyRmlsZSA8PCAiSUNDIHByb2ZpbGUgc2l6ZSByZXRyaWV2YWwgZmFpbGVk IjsKKyAgICAgICAgICAgICAgICAgICAgIGRvY3VtZW50LT5zZXRFcnJvck1lc3NhZ2UoaTE4bmMo IkpQRUctWEwgZXJyb3JzIiwgIlVuYWJsZSB0byByZWFkIHRoZSBpbWFnZSBwcm9maWxlLiIpKTsK KyAgICAgICAgICAgICAgICAgICAgIHJldHVybiBJbXBvcnRFeHBvcnRDb2Rlczo6RXJyb3JXaGls ZVJlYWRpbmc7CitAQCAtNjQzLDcgKzY1MCw5IEBAIEpQRUdYTEltcG9ydDo6Y29udmVydChLaXNE b2N1bWVudCAqZG9jdW1lbnQsIFFJT0RldmljZSAqaW8sIEtpc1Byb3BlcnRpZXNDb25maWd1Cisg ICAgICAgICAgICAgICAgIGljY1Byb2ZpbGUucmVzaXplKHN0YXRpY19jYXN0PGludD4oaWNjU2l6 ZSkpOworICAgICAgICAgICAgICAgICBpZiAoSlhMX0RFQ19TVUNDRVNTCisgICAgICAgICAgICAg ICAgICAgICAhPSBKeGxEZWNvZGVyR2V0Q29sb3JBc0lDQ1Byb2ZpbGUoZGVjLmdldCgpLAorKyNp ZiBKUEVHWExfTlVNRVJJQ19WRVJTSU9OIDwgSlBFR1hMX0NPTVBVVEVfTlVNRVJJQ19WRVJTSU9O KDAsOSwwKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIG51bGxwdHIsCisrI2VuZGlmCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgSlhMX0NPTE9SX1BST0ZJTEVfVEFSR0VUX0RBVEEsCisg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVp bnRlcnByZXRfY2FzdDx1aW50OF90ICo+KGljY1Byb2ZpbGUuZGF0YSgpKSwKKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGF0aWNfY2FzdDxz aXplX3Q+KGljY1Byb2ZpbGUuc2l6ZSgpKSkpIHsKK0BAIC02NTcsNyArNjY2LDkgQEAgSlBFR1hM SW1wb3J0Ojpjb252ZXJ0KEtpc0RvY3VtZW50ICpkb2N1bWVudCwgUUlPRGV2aWNlICppbywgS2lz UHJvcGVydGllc0NvbmZpZ3UKKyAgICAgICAgICAgICAgICAgaWYgKCFkLm1faW5mby51c2VzX29y aWdpbmFsX3Byb2ZpbGUpIHsKKyAgICAgICAgICAgICAgICAgICAgIGlmIChKWExfREVDX1NVQ0NF U1MKKyAgICAgICAgICAgICAgICAgICAgICAgICAhPSBKeGxEZWNvZGVyR2V0SUNDUHJvZmlsZVNp emUoZGVjLmdldCgpLAorKyNpZiBKUEVHWExfTlVNRVJJQ19WRVJTSU9OIDwgSlBFR1hMX0NPTVBV VEVfTlVNRVJJQ19WRVJTSU9OKDAsOSwwKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBudWxscHRyLAorKyNlbmRpZgorICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBKWExfQ09MT1JfUFJP RklMRV9UQVJHRVRfT1JJR0lOQUwsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICZpY2NUYXJnZXRTaXplKSkgeworICAgICAgICAgICAgICAg ICAgICAgICAgIGVyckZpbGUgPDwgIklDQyBwcm9maWxlIHNpemUgcmV0cmlldmFsIGZhaWxlZCI7 CitAQCAtNjY3LDcgKzY3OCw5IEBAIEpQRUdYTEltcG9ydDo6Y29udmVydChLaXNEb2N1bWVudCAq ZG9jdW1lbnQsIFFJT0RldmljZSAqaW8sIEtpc1Byb3BlcnRpZXNDb25maWd1CisgICAgICAgICAg ICAgICAgICAgICBpY2NUYXJnZXRQcm9maWxlLnJlc2l6ZShzdGF0aWNfY2FzdDxpbnQ+KGljY1Rh cmdldFNpemUpKTsKKyAgICAgICAgICAgICAgICAgICAgIGlmIChKWExfREVDX1NVQ0NFU1MKKyAg ICAgICAgICAgICAgICAgICAgICAgICAhPSBKeGxEZWNvZGVyR2V0Q29sb3JBc0lDQ1Byb2ZpbGUo ZGVjLmdldCgpLAorKyNpZiBKUEVHWExfTlVNRVJJQ19WRVJTSU9OIDwgSlBFR1hMX0NPTVBVVEVf TlVNRVJJQ19WRVJTSU9OKDAsOSwwKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBudWxscHRyLAorKyNlbmRpZgorICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBKWExfQ09MT1Jf UFJPRklMRV9UQVJHRVRfT1JJR0lOQUwsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlaW50ZXJwcmV0X2Nhc3Q8dWludDhfdCAqPihp Y2NUYXJnZXRQcm9maWxlLmRhdGEoKSksCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0YXRpY19jYXN0PHNpemVfdD4oaWNjVGFyZ2V0 UHJvZmlsZS5zaXplKCkpKSkgeworLS0gCitHaXRMYWIKKwpkaWZmIC0tZ2l0IGEvc3JjcGtncy9r cml0YS9wYXRjaGVzL3NpcDY4LnBhdGNoIGIvc3JjcGtncy9rcml0YS9wYXRjaGVzL3NpcDY4LnBh dGNoCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAuLmU5ZTQ1NDRiN2Nj MjcKLS0tIC9kZXYvbnVsbAorKysgYi9zcmNwa2dzL2tyaXRhL3BhdGNoZXMvc2lwNjgucGF0Y2gK QEAgLTAsMCArMSwyMyBAQAorRnJvbSAyZDcxYzQ3NjYxZDQzYTRlM2MxYWIwYzI3ODAzZGU5ODBi ZGYyYmIyIE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQorRnJvbTogQW50b25pbyBSb2phcyA8YXJv amFzQGFyY2hsaW51eC5vcmc+CitEYXRlOiBNb24sIDExIERlYyAyMDIzIDIwOjI2OjEzICswMTAw CitTdWJqZWN0OiBbUEFUQ0hdIEJ1bXAgU0lQIEFCSSB2ZXJzaW9uIHRvIDEyLjgKKworRml4ZXMg YnVpbGQgd2l0aCBTSVAgNi44CistLS0KKyBjbWFrZS9tb2R1bGVzL3B5cHJvamVjdC50b21sLmlu IHwgMiArLQorIDEgZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQor CitkaWZmIC0tZ2l0IGEvY21ha2UvbW9kdWxlcy9weXByb2plY3QudG9tbC5pbiBiL2NtYWtlL21v ZHVsZXMvcHlwcm9qZWN0LnRvbWwuaW4KK2luZGV4IDA5MGIyZDRiMGNiLi4wODVkZGY0MTc5OSAx MDA2NDQKKy0tLSBhL2NtYWtlL21vZHVsZXMvcHlwcm9qZWN0LnRvbWwuaW4KKysrKyBiL2NtYWtl L21vZHVsZXMvcHlwcm9qZWN0LnRvbWwuaW4KK0BAIC05LDcgKzksNyBAQCBuYW1lID0gIkBtb2R1 bGVfbmFtZV90b21sQCIKKyBzaXAtbW9kdWxlID0gIkBzaXBfbmFtZUAiCisgc2lwLWluY2x1ZGUt ZGlycyA9IEBzaXBfaW5jbHVkZV9kaXJzQAorIHNpcC1maWxlcy1kaXIgPSAiQG1vZHVsZV9zcmNz QCIKKy1hYmktdmVyc2lvbiA9ICIxMiIKKythYmktdmVyc2lvbiA9ICIxMi44IgorIAorIFt0b29s LnNpcC5iaW5kaW5ncy5AbW9kdWxlX25hbWVfdG9tbEBdCisgdGFncyA9IEBtb2R1bGVfdGFnc0AK ZGlmZiAtLWdpdCBhL3NyY3BrZ3Mva3JpdGEvdGVtcGxhdGUgYi9zcmNwa2dzL2tyaXRhL3RlbXBs YXRlCmluZGV4IGQ4MDRiNTgxYTg2ODkuLjQ4MzNmOGJkMzNkODYgMTAwNjQ0Ci0tLSBhL3NyY3Br Z3Mva3JpdGEvdGVtcGxhdGUKKysrIGIvc3JjcGtncy9rcml0YS90ZW1wbGF0ZQpAQCAtMSw3ICsx LDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2tyaXRhJwogcGtnbmFtZT1rcml0YQogdmVyc2lv bj01LjIuMQotcmV2aXNpb249MworcmV2aXNpb249NAogYnVpbGRfc3R5bGU9Y21ha2UKIGNvbmZp Z3VyZV9hcmdzPSItV25vLWRldiAtREJVSUxEX1RFU1RJTkc9T0ZGIgogaG9zdG1ha2VkZXBlbmRz PSJleHRyYS1jbWFrZS1tb2R1bGVzIGdldHRleHQgcGtnLWNvbmZpZyBweXRob24zCgpGcm9tIGU1 MGM5ODZmMjk2YzdjNWU5ZTc5ZDQ1OTdmMDkyOWQ1YWM4MDlmODAgTW9uIFNlcCAxNyAwMDowMDow MCAyMDAxCkZyb206IG9yZW82MzkgPG9yZW82MzkxQGdtYWlsLmNvbT4KRGF0ZTogVHVlLCAyIEph biAyMDI0IDIyOjQwOjE5IC0wODAwClN1YmplY3Q6IFtQQVRDSCA0LzZdIGltbGliMjogcmVidWls ZCBmb3IgbGlianhsIDAuOQoKLS0tCiBzcmNwa2dzL2ltbGliMi90ZW1wbGF0ZSB8IDIgKy0KIDEg ZmlsZSBjaGFuZ2VkLCAxIGluc2VydGlvbigrKSwgMSBkZWxldGlvbigtKQoKZGlmZiAtLWdpdCBh L3NyY3BrZ3MvaW1saWIyL3RlbXBsYXRlIGIvc3JjcGtncy9pbWxpYjIvdGVtcGxhdGUKaW5kZXgg YmNiZjYwN2VmYTE0Mi4uOWY0ODViMGIyZjg1OCAxMDA2NDQKLS0tIGEvc3JjcGtncy9pbWxpYjIv dGVtcGxhdGUKKysrIGIvc3JjcGtncy9pbWxpYjIvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAj IFRlbXBsYXRlIGZpbGUgZm9yICdpbWxpYjInCiBwa2duYW1lPWltbGliMgogdmVyc2lvbj0xLjEy LjEKLXJldmlzaW9uPTEKK3JldmlzaW9uPTIKIGJ1aWxkX3N0eWxlPWdudS1jb25maWd1cmUKIGNv bmZpZ3VyZV9hcmdzPSItLWRpc2FibGUtc3RhdGljIC0tc3lzY29uZmRpcj0vZXRjL2ltbGliMiAt LWVuYWJsZS12aXNpYmlsaXR5LWhpZGluZyIKIGhvc3RtYWtlZGVwZW5kcz0icGtnLWNvbmZpZyIK CkZyb20gNDg2ZGJkOTdmYWEyMjAzMzJkNzhiMWFjZmZkNjVkYmZlMjVhZTFhMCBNb24gU2VwIDE3 IDAwOjAwOjAwIDIwMDEKRnJvbTogb3JlbzYzOSA8b3JlbzYzOTFAZ21haWwuY29tPgpEYXRlOiBU dWUsIDIgSmFuIDIwMjQgMjI6NDE6MDEgLTA4MDAKU3ViamVjdDogW1BBVENIIDUvNl0gZGFya3Rh YmxlOiByZWJ1aWxkIGZvciBsaWJqeGwgMC45CgotLS0KIHNyY3BrZ3MvZGFya3RhYmxlL3RlbXBs YXRlIHwgMiArLQogMSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0p CgpkaWZmIC0tZ2l0IGEvc3JjcGtncy9kYXJrdGFibGUvdGVtcGxhdGUgYi9zcmNwa2dzL2Rhcmt0 YWJsZS90ZW1wbGF0ZQppbmRleCA5N2RmYWUzNDcxZTdjLi5hZjI5ZDdjZWMxOGJiIDEwMDY0NAot LS0gYS9zcmNwa2dzL2Rhcmt0YWJsZS90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2Rhcmt0YWJsZS90 ZW1wbGF0ZQpAQCAtMSw3ICsxLDcgQEAKICMgVGVtcGxhdGUgZmlsZSBmb3IgJ2Rhcmt0YWJsZScK IHBrZ25hbWU9ZGFya3RhYmxlCiB2ZXJzaW9uPTQuNC4yCi1yZXZpc2lvbj01CityZXZpc2lvbj02 CiAjIHVwc3RyZWFtIG9ubHkgc3VwcG9ydHMgdGhlc2UgYXJjaHM6CiBhcmNocz0ieDg2XzY0KiBh YXJjaDY0KiBwcGM2NGxlKiIKIGJ1aWxkX3N0eWxlPWNtYWtlCgpGcm9tIDM5ZWE3ZjJlN2I5Y2Ux YjA5ODNlMWRiMWFhODA0NGNjNGJjZTI1ODggTW9uIFNlcCAxNyAwMDowMDowMCAyMDAxCkZyb206 IG9yZW82MzkgPG9yZW82MzkxQGdtYWlsLmNvbT4KRGF0ZTogVHVlLCAyIEphbiAyMDI0IDIyOjQx OjI2IC0wODAwClN1YmplY3Q6IFtQQVRDSCA2LzZdIGtpbWFnZWZvcm1hdHM6IHJlYnVpbGQgZm9y IGxpYmp4bCAwLjkKCi0tLQogc3JjcGtncy9raW1hZ2Vmb3JtYXRzL3RlbXBsYXRlIHwgMiArLQog MSBmaWxlIGNoYW5nZWQsIDEgaW5zZXJ0aW9uKCspLCAxIGRlbGV0aW9uKC0pCgpkaWZmIC0tZ2l0 IGEvc3JjcGtncy9raW1hZ2Vmb3JtYXRzL3RlbXBsYXRlIGIvc3JjcGtncy9raW1hZ2Vmb3JtYXRz L3RlbXBsYXRlCmluZGV4IDlmZjc0Yjk3NmVhYjAuLjlhNmE5YzZkM2JmNDEgMTAwNjQ0Ci0tLSBh L3NyY3BrZ3Mva2ltYWdlZm9ybWF0cy90ZW1wbGF0ZQorKysgYi9zcmNwa2dzL2tpbWFnZWZvcm1h dHMvdGVtcGxhdGUKQEAgLTEsNyArMSw3IEBACiAjIFRlbXBsYXRlIGZpbGUgZm9yICdraW1hZ2Vm b3JtYXRzJwogcGtnbmFtZT1raW1hZ2Vmb3JtYXRzCiB2ZXJzaW9uPTUuMTEzLjAKLXJldmlzaW9u PTEKK3JldmlzaW9uPTIKIGJ1aWxkX3N0eWxlPWNtYWtlCiBjb25maWd1cmVfYXJncz0iLURLSU1B R0VGT1JNQVRTX0hFSUY9T04iCiBob3N0bWFrZWRlcGVuZHM9Imtjb3JlYWRkb25zIGV4dHJhLWNt YWtlLW1vZHVsZXMgcXQ1LXFtYWtlIHF0NS1ob3N0LXRvb2xzCg== --===============8947331456711274725==--